ZGlmZiAtLWdpdCBhLy5jaXJydXMueW1sIGIvLmNpcnJ1cy55bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzJmNWZlMwotLS0gL2Rldi9udWxsCisrKyBiLy5jaXJydXMueW1sCkBAIC0wLDAgKzEsMTUgQEAKK2VudjoKKyAgQ0lSUlVTX0NMT05FX0RFUFRIOiAxCisKK2ZyZWVic2RfMTJfdGFzazoKKyAgZnJlZWJzZF9pbnN0YW5jZToKKyAgICBpbWFnZTogZnJlZWJzZC0xMi0xLXJlbGVhc2UtYW1kNjQKKyAgaW5zdGFsbF9zY3JpcHQ6CisgICAgcGtnIGluc3RhbGwgLXkgZ2V0dGV4dCBnbWFrZSBwZXJsNQorICBjcmVhdGVfdXNlcl9zY3JpcHQ6CisgICAgLSBwdyB1c2VyYWRkIGdpdAorICAgIC0gY2hvd24gLVIgZ2l0OmdpdCAuCisgIGJ1aWxkX3NjcmlwdDoKKyAgICAtIHN1IGdpdCAtYyBnbWFrZQorICB0ZXN0X3NjcmlwdDoKKyAgICAtIHN1IGdpdCAtYyAnZ21ha2UgdGVzdCcKZGlmZiAtLWdpdCBhLy5jbGFuZy1mb3JtYXQgYi8uY2xhbmctZm9ybWF0CmluZGV4IGRlMWM4YjUuLmM1OTJkZGEgMTAwNjQ0Ci0tLSBhLy5jbGFuZy1mb3JtYXQKKysrIGIvLmNsYW5nLWZvcm1hdApAQCAtMTQ4LDggKzE0OCwyMSBAQAogQ3BwMTFCcmFjZWRMaXN0U3R5bGU6IGZhbHNlCiAKICMgQSBsaXN0IG9mIG1hY3JvcyB0aGF0IHNob3VsZCBiZSBpbnRlcnByZXRlZCBhcyBmb3JlYWNoIGxvb3BzIGluc3RlYWQgb2YgYXMKLSMgZnVuY3Rpb24gY2FsbHMuCi1Gb3JFYWNoTWFjcm9zOiBbJ2Zvcl9lYWNoX3N0cmluZ19saXN0X2l0ZW0nXQorIyBmdW5jdGlvbiBjYWxscy4gVGFrZW4gZnJvbToKKyMgICBnaXQgZ3JlcCAtaCAnXiNkZWZpbmUgW15bOnNwYWNlOl1dKmZvcl9lYWNoW15bOnNwYWNlOl1dKignIFwKKyMgICB8IHNlZCAicyxeI2RlZmluZSBcKFteWzpzcGFjZTpdXSpmb3JfZWFjaFteWzpzcGFjZTpdXSpcKSguKiQsICAtICdcMScsIiBcCisjICAgfCBzb3J0IHwgdW5pcQorRm9yRWFjaE1hY3JvczoKKyAgLSAnZm9yX2VhY2hfYWJicmV2JworICAtICdmb3JfZWFjaF9idWlsdGluJworICAtICdmb3JfZWFjaF9zdHJpbmdfbGlzdF9pdGVtJworICAtICdmb3JfZWFjaF91dCcKKyAgLSAnZm9yX2VhY2hfd2FudGVkX2J1aWx0aW4nCisgIC0gJ2xpc3RfZm9yX2VhY2gnCisgIC0gJ2xpc3RfZm9yX2VhY2hfZGlyJworICAtICdsaXN0X2Zvcl9lYWNoX3ByZXYnCisgIC0gJ2xpc3RfZm9yX2VhY2hfcHJldl9zYWZlJworICAtICdsaXN0X2Zvcl9lYWNoX3NhZmUnCiAKICMgVGhlIG1heGltdW0gbnVtYmVyIG9mIGNvbnNlY3V0aXZlIGVtcHR5IGxpbmVzIHRvIGtlZXAuCiBNYXhFbXB0eUxpbmVzVG9LZWVwOiAxCmRpZmYgLS1naXQgYS8uZWRpdG9yY29uZmlnIGIvLmVkaXRvcmNvbmZpZwppbmRleCA0MmNkYzRiLi5mOWQ4MTk2IDEwMDY0NAotLS0gYS8uZWRpdG9yY29uZmlnCisrKyBiLy5lZGl0b3Jjb25maWcKQEAgLTQsNyArNCw3IEBACiAKICMgVGhlIHNldHRpbmdzIGZvciBDICgqLmMgYW5kICouaCkgZmlsZXMgYXJlIG1pcnJvcmVkIGluIC5jbGFuZy1mb3JtYXQuICBLZWVwCiAjIHRoZW0gaW4gc3luYy4KLVsqLntjLGgsc2gscGVybCxwbCxwbX1dCitbKi57YyxoLHNoLHBlcmwscGwscG0sdHh0fV0KIGluZGVudF9zdHlsZSA9IHRhYgogdGFiX3dpZHRoID0gOAogCmRpZmYgLS1naXQgYS8uZ2l0YXR0cmlidXRlcyBiLy5naXRhdHRyaWJ1dGVzCmluZGV4IDlmYTcyYWQuLmIwOGExNDEgMTAwNjQ0Ci0tLSBhLy5naXRhdHRyaWJ1dGVzCisrKyBiLy5naXRhdHRyaWJ1dGVzCkBAIC01LDYgKzUsNyBAQAogKi5wbCBlb2Y9bGYgZGlmZj1wZXJsCiAqLnBtIGVvbD1sZiBkaWZmPXBlcmwKICoucHkgZW9sPWxmIGRpZmY9cHl0aG9uCisqLmJhdCBlb2w9Y3JsZgogL0RvY3VtZW50YXRpb24vKiovKi50eHQgZW9sPWxmCiAvY29tbWFuZC1saXN0LnR4dCBlb2w9bGYKIC9HSVQtVkVSU0lPTi1HRU4gZW9sPWxmCmRpZmYgLS1naXQgYS8uZ2l0aHViL0NPTlRSSUJVVElORy5tZCBiLy5naXRodWIvQ09OVFJJQlVUSU5HLm1kCmluZGV4IDY0ZTYwNWEuLmU3YjRlMmYgMTAwNjQ0Ci0tLSBhLy5naXRodWIvQ09OVFJJQlVUSU5HLm1kCisrKyBiLy5naXRodWIvQ09OVFJJQlVUSU5HLm1kCkBAIC01LDcgKzUsNyBAQAogYSBtYWlsaW5nIGxpc3QgKGdpdEB2Z2VyLmtlcm5lbC5vcmcpIGZvciBjb2RlIHN1Ym1pc3Npb25zLCBjb2RlCiByZXZpZXdzLCBhbmQgYnVnIHJlcG9ydHMuCiAKLU5ldmVydGhlbGVzcywgeW91IGNhbiB1c2UgW3N1Ym1pdEdpdF0oaHR0cDovL3N1Ym1pdGdpdC5oZXJva3VhcHAuY29tLykgdG8KK05ldmVydGhlbGVzcywgeW91IGNhbiB1c2UgW0dpdEdpdEdhZGdldF0oaHR0cHM6Ly9naXRnaXRnYWRnZXQuZ2l0aHViLmlvLykgdG8KIGNvbnZlbmllbnRseSBzZW5kIHlvdXIgUHVsbCBSZXF1ZXN0cyBjb21taXRzIHRvIG91ciBtYWlsaW5nIGxpc3QuCiAKIFBsZWFzZSByZWFkIFsiQSBub3RlIGZyb20gdGhlIG1haW50YWluZXIiXShodHRwczovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vZ2l0L2dpdC5naXQvcGxhaW4vTWFpbnROb3Rlcz9oPXRvZG8pCmRpZmYgLS1naXQgYS8uZ2l0aHViL1BVTExfUkVRVUVTVF9URU1QTEFURS5tZCBiLy5naXRodWIvUFVMTF9SRVFVRVNUX1RFTVBMQVRFLm1kCmluZGV4IGFkYmExM2UuLjk1MmM3YzMgMTAwNjQ0Ci0tLSBhLy5naXRodWIvUFVMTF9SRVFVRVNUX1RFTVBMQVRFLm1kCisrKyBiLy5naXRodWIvUFVMTF9SRVFVRVNUX1RFTVBMQVRFLm1kCkBAIC0xLDcgKzEsNyBAQAogVGhhbmtzIGZvciB0YWtpbmcgdGhlIHRpbWUgdG8gY29udHJpYnV0ZSB0byBHaXQhIFBsZWFzZSBiZSBhZHZpc2VkIHRoYXQgdGhlCiBHaXQgY29tbXVuaXR5IGRvZXMgbm90IHVzZSBnaXRodWIuY29tIGZvciB0aGVpciBjb250cmlidXRpb25zLiBJbnN0ZWFkLCB3ZSB1c2UKIGEgbWFpbGluZyBsaXN0IChnaXRAdmdlci5rZXJuZWwub3JnKSBmb3IgY29kZSBzdWJtaXNzaW9ucywgY29kZSByZXZpZXdzLCBhbmQKLWJ1ZyByZXBvcnRzLiBOZXZlcnRoZWxlc3MsIHlvdSBjYW4gdXNlIHN1Ym1pdEdpdCB0byBjb252ZW5pZW50bHkgc2VuZCB5b3VyIFB1bGwKLVJlcXVlc3RzIGNvbW1pdHMgdG8gb3VyIG1haWxpbmcgbGlzdC4KK2J1ZyByZXBvcnRzLiBOZXZlcnRoZWxlc3MsIHlvdSBjYW4gdXNlIEdpdEdpdEdhZGdldCAoaHR0cHM6Ly9naXRnaXRnYWRnZXQuZ2l0aHViLmlvLykKK3RvIGNvbnZlbmllbnRseSBzZW5kIHlvdXIgUHVsbCBSZXF1ZXN0cyBjb21taXRzIHRvIG91ciBtYWlsaW5nIGxpc3QuCiAKIFBsZWFzZSByZWFkIHRoZSAiZ3VpZGVsaW5lcyBmb3IgY29udHJpYnV0aW5nIiBsaW5rZWQgYWJvdmUhCmRpZmYgLS1naXQgYS8uZ2l0aWdub3JlIGIvLmdpdGlnbm9yZQppbmRleCAwZDc3ZWE1Li5hZWJlN2MwIDEwMDY0NAotLS0gYS8uZ2l0aWdub3JlCisrKyBiLy5naXRpZ25vcmUKQEAgLTEsMyArMSw0IEBACisvZnV6ei1jb21taXQtZ3JhcGgKIC9mdXp6X2NvcnBvcmEKIC9mdXp6LXBhY2staGVhZGVycwogL2Z1enotcGFjay1pZHgKQEAgLTU3LDYgKzU4LDcgQEAKIC9naXQtZGlmZnRvb2wKIC9naXQtZGlmZnRvb2wtLWhlbHBlcgogL2dpdC1kZXNjcmliZQorL2dpdC1lbnYtLWhlbHBlcgogL2dpdC1mYXN0LWV4cG9ydAogL2dpdC1mYXN0LWltcG9ydAogL2dpdC1mZXRjaApAQCAtODEsNyArODMsNyBAQAogL2dpdC1pbml0LWRiCiAvZ2l0LWludGVycHJldC10cmFpbGVycwogL2dpdC1pbnN0YXdlYgotL2dpdC1sZWdhY3ktcmViYXNlCisvZ2l0LWxlZ2FjeS1zdGFzaAogL2dpdC1sb2cKIC9naXQtbHMtZmlsZXMKIC9naXQtbHMtcmVtb3RlCkBAIC0xMjEsMTAgKzEyMyw2IEBACiAvZ2l0LXJhbmdlLWRpZmYKIC9naXQtcmVhZC10cmVlCiAvZ2l0LXJlYmFzZQotL2dpdC1yZWJhc2UtLWFtCi0vZ2l0LXJlYmFzZS0tY29tbW9uCi0vZ2l0LXJlYmFzZS0taW50ZXJhY3RpdmUKLS9naXQtcmViYXNlLS1tZXJnZQogL2dpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcwogL2dpdC1yZWNlaXZlLXBhY2sKIC9naXQtcmVmbG9nCkBAIC0xMzUsNyArMTMzLDYgQEAKIC9naXQtcmVtb3RlLWZ0cHMKIC9naXQtcmVtb3RlLWZkCiAvZ2l0LXJlbW90ZS1leHQKLS9naXQtcmVtb3RlLXRlc3RnaXQKIC9naXQtcmVtb3RlLXRlc3RweQogL2dpdC1yZW1vdGUtdGVzdHN2bgogL2dpdC1yZXBhY2sKQEAgLTE0Myw2ICsxNDAsNyBAQAogL2dpdC1yZXF1ZXN0LXB1bGwKIC9naXQtcmVyZXJlCiAvZ2l0LXJlc2V0CisvZ2l0LXJlc3RvcmUKIC9naXQtcmV2LWxpc3QKIC9naXQtcmV2LXBhcnNlCiAvZ2l0LXJldmVydApAQCAtMTYwLDYgKzE1OCw3IEBACiAvZ2l0LXNob3ctYnJhbmNoCiAvZ2l0LXNob3ctaW5kZXgKIC9naXQtc2hvdy1yZWYKKy9naXQtc3BhcnNlLWNoZWNrb3V0CiAvZ2l0LXN0YWdlCiAvZ2l0LXN0YXNoCiAvZ2l0LXN0YXR1cwpAQCAtMTY3LDYgKzE2Niw3IEBACiAvZ2l0LXN1Ym1vZHVsZQogL2dpdC1zdWJtb2R1bGUtLWhlbHBlcgogL2dpdC1zdm4KKy9naXQtc3dpdGNoCiAvZ2l0LXN5bWJvbGljLXJlZgogL2dpdC10YWcKIC9naXQtdW5wYWNrLWZpbGUKQEAgLTIxNyw2ICsyMTcsNyBAQAogL3RhZ3MKIC9UQUdTCiAvY3Njb3BlKgorKi5oY2MKICoub2JqCiAqLmxpYgogKi5yZXMKQEAgLTIyNyw1ICsyMjgsMTQgQEAKICoudXNlcgogKi5pZGIKICoucGRiCi0vRGVidWcvCi0vUmVsZWFzZS8KKyouaWxrCisqLmlvYmoKKyouaXBkYgorKi5kbGwKKy52cy8KK0RlYnVnLworUmVsZWFzZS8KKy9VcGdyYWRlTG9nKi5odG0KKy9naXQuVkMuVkMub3BlbmRiCisvZ2l0LlZDLmRiCisqLmRTWU0KZGlmZiAtLWdpdCBhLy5tYWlsbWFwIGIvLm1haWxtYXAKaW5kZXggZWI3YjVmYy4uYmRlN2FiYSAxMDA2NDQKLS0tIGEvLm1haWxtYXAKKysrIGIvLm1haWxtYXAKQEAgLTE4LDYgKzE4LDcgQEAKIEFsZXhleSBTaHVta2luIDxhbGV4LmNyZXpvZmZAZ21haWwuY29tPiA8QWxleC5DcmV6b2ZmQGdtYWlsLmNvbT4KIEFuZGVycyBLYXNlb3JnIDxhbmRlcnNrQE1JVC5FRFU+IDxhbmRlcnNrQGtzcGxpY2UuY29tPgogQW5kZXJzIEthc2VvcmcgPGFuZGVyc2tATUlULkVEVT4gPGFuZGVyc2tAbWl0LmVkdT4KK0FuZHJleSBNYXpvIDxhaGlwcG9AeWFuZGV4LmNvbT4gTWF6bywgQW5kcmV5IDxhbWF6b0BjaGVja3ZpZGVvLmNvbT4KIEFuZWVzaCBLdW1hciBLLlYgPGFuZWVzaC5rdW1hckBnbWFpbC5jb20+CiBBbW9zIFdhdGVybGFuZCA8YXB3QGRlYmlhbi5vcmc+IDxhcHdAcm9zc2J5Lm1ldHIub3UuZWR1PgogQW1vcyBXYXRlcmxhbmQgPGFwd0BkZWJpYW4ub3JnPiA8YXB3QHVzLmlibS5jb20+CkBAIC0yNyw4ICsyOCwxMCBAQAogQmVub2l0IFNpZ291cmUgPHRzdW5hbmV0QGdtYWlsLmNvbT4gPHRzdW5hQGxyZGUuZXBpdGEuZnI+CiBCZXJudCBIYW5zZW4gPGJlcm50QG5vcmFuZy5jYT4gPGJlcm50QGFsdW1uaS51d2F0ZXJsb28uY2E+CiBCcmFuZG9uIENhc2V5IDxkcmFmbmVsQGdtYWlsLmNvbT4gPGNhc2V5QG5ybHNzYy5uYXZ5Lm1pbD4KK0JyYW5kb24gV2lsbGlhbXMgPGJ3aWxsaWFtcy5lbmdAZ21haWwuY29tPiA8Ym13aWxsQGdvb2dsZS5jb20+CiBicmlhbiBtLiBjYXJsc29uIDxzYW5kYWxzQGNydXN0eXRvb3RocGFzdGUubmV0PgogYnJpYW4gbS4gY2FybHNvbiA8c2FuZGFsc0BjcnVzdHl0b290aHBhc3RlLm5ldD4gPHNhbmRhbHNAY3J1c3R5dG9vdGhwYXN0ZS5hdGguY3g+CiticmlhbiBtLiBjYXJsc29uIDxzYW5kYWxzQGNydXN0eXRvb3RocGFzdGUubmV0PiA8YmsyMjA0QGdpdGh1Yi5jb20+CiBCcnlhbiBMYXJzZW4gPGJyeWFuQGxhcnNlbi5zdD4gPGJyeWFuLmxhcnNlbkBnbWFpbC5jb20+CiBCcnlhbiBMYXJzZW4gPGJyeWFuQGxhcnNlbi5zdD4gPGJyeWFubGFyc2VuQHlhaG9vLmNvbT4KIENoZW5nIFJlbnF1YW4gPGNycXVhbkBnbWFpbC5jb20+CkBAIC0zOSw2ICs0Miw4IEBACiBDaHJpc3RpYW4gQ291ZGVyIDxjaHJpc2Nvb2xAdHV4ZmFtaWx5Lm9yZz4gPGNocmlzdGlhbi5jb3VkZXJAZ21haWwuY29tPgogQ2hyaXN0aWFuIFN0aW1taW5nIDxzdGltbWluZ0B0dWhoLmRlPiA8Y2hzQGNraXN0ZS5nb2V0aGVhbGxlZT4KIENocmlzdG9waGVyIETDrWF6IFJpdmVyb3MgPGNocmlzYWRyQGdlbnRvby5vcmc+IENocmlzdG9waGVyIERpYXogUml2ZXJvcworQ2xlbWVucyBCdWNoYWNoZXIgPGRyaXp6ZEBnbXgubmV0PiA8ZHJpenpkQGFvbi5hdD4KK0NsZW1lbnMgQnVjaGFjaGVyIDxkcml6emRAZ214Lm5ldD4gPGNsZW1lbnMuYnVjaGFjaGVyQGludGVsLmNvbT4KIENzYWJhIEhlbmsgPGNzYWJhQGdsdXN0ZXIuY29tPiA8Y3NhYmFAbG93bGlmZS5odT4KIERhbiBKb2huc29uIDxjb21wdXRlcmRydWlkQGdtYWlsLmNvbT4KIERhbmEgTC4gSG93IDxkYW5haG93QGdtYWlsLmNvbT4gPGhvd0BkZWF0aHZhbGxleS5jc3dpdGNoLmNvbT4KQEAgLTU1LDcgKzYwLDkgQEAKIERhdmlkIFR1cm5lciA8bm92YWxpc0Bub3ZhbGlzLm9yZz4gPGR0dXJuZXJAdHdvcGVuc291cmNlLmNvbT4KIERhdmlkIFR1cm5lciA8bm92YWxpc0Bub3ZhbGlzLm9yZz4gPGR0dXJuZXJAdHdvc2lnbWEuY29tPgogRGVycmljayBTdG9sZWUgPGRzdG9sZWVAbWljcm9zb2Z0LmNvbT4gPHN0b2xlZUBnbWFpbC5jb20+CitEZXJyaWNrIFN0b2xlZSA8ZHN0b2xlZUBtaWNyb3NvZnQuY29tPiBEZXJyaWNrIFN0b2xlZSB2aWEgR2l0R2l0R2FkZ2V0IDxnaXRnaXRnYWRnZXRAZ21haWwuY29tPgogRGVza2luIE1pbGxlciA8ZGVza2lubUB1bWljaC5lZHU+CivEkG/DoG4gVHLhuqduIEPDtG5nIERhbmggPGNvbmdkYW5ocXhAZ21haWwuY29tPiBEb2FuIFRyYW4gQ29uZyBEYW5oCiBEaXJrIFPDvHNzZXJvdHQgPG5ld3NsZXR0ZXJAZGlyay5teTEuY2M+CiBFcmljIEJsYWtlIDxlYmxha2VAcmVkaGF0LmNvbT4gPGViYjlAYnl1Lm5ldD4KIEVyaWMgSGFuY2hyb3cgPGVyaWMuaGFuY2hyb3dAZ21haWwuY29tPiA8b2ZmYnkxQGJsYXJnLm5ldD4KQEAgLTEwNCw2ICsxMTEsNyBAQAogSm9hY2hpbSBCZXJkYWwgSGFnYSA8Y2poYWdhQGZ5cy51aW8ubm8+CiBKb2FjaGltIEphYmxvbiA8am9hY2hpbS5qYWJsb25AcGVvcGxlLWRvYy5jb20+IDxld2pvYWNoaW1AZ21haWwuY29tPgogSm9oYW5uZXMgU2NoaW5kZWxpbiA8Sm9oYW5uZXMuU2NoaW5kZWxpbkBnbXguZGU+IDxqb2hhbm5lcy5zY2hpbmRlbGluQGdteC5kZT4KK0pvaGFubmVzIFNjaGluZGVsaW4gPEpvaGFubmVzLlNjaGluZGVsaW5AZ214LmRlPiBKb2hhbm5lcyBTY2hpbmRlbGluIHZpYSBHaXRHaXRHYWRnZXQgPGdpdGdpdGdhZGdldEBnbWFpbC5jb20+CiBKb2hhbm5lcyBTaXh0IDxqNnRAa2RiZy5vcmc+IDxKLlNpeHRAZXVkYXB0aWNzLmNvbT4KIEpvaGFubmVzIFNpeHQgPGo2dEBrZGJnLm9yZz4gPGouc2l4dEB2aXNjb3ZlcnkubmV0PgogSm9oYW5uZXMgU2l4dCA8ajZ0QGtkYmcub3JnPiA8am9oYW5uZXMuc2l4dEB0ZWxlY29tLmF0PgpAQCAtMjA3LDYgKzIxNSw3IEBACiBQZXRyIEJhdWRpcyA8cGFza3lAdWN3LmN6PiA8eHBhc2t5QG1hY2hpbmU+CiBQaGlsIEhvcmQgPGhvcmRwQGNpc2NvLmNvbT4gPHBoaWwuaG9yZEBnbWFpbC5jb20+CiBQaGlsaXAgSsOkZ2Vuc3RlZHQgPHBoaWxpcEBmb29saXAub3JnPiA8cGhpbGlwLmphZ2Vuc3RlZHRAZ21haWwuY29tPgorUGhpbGlwIE9ha2xleSA8cGhpbGlwb2FrbGV5QGllZS5lbWFpbD4gPHBoaWxpcG9ha2xleUBpZWUub3JnPiAjIHNlY29uZGFyeSA8cGhpbGlwb2FrbGV5QGR1bmVsbS5vcmcudWs+CiBQaGlsaXBwIEEuIEhhcnRtYW5uIDxwYWhAcW8uY3g+IDxwaEBzb3JnaC5kZT4KIFBoaWxpcHBlIEJydWhhdCA8Ym9va0BjcGFuLm9yZz4KIFJhbGYgVGhpZWxvdyA8cmFsZi50aGllbG93QGdtYWlsLmNvbT4gPHJhbGYudGhpZWxvd0Bnb29nbGVtYWlsLmNvbT4KQEAgLTI4MSw2ICsyOTAsNyBAQAogWU9ORVRBTkkgVG9tb2thenUgPHkwbjN0NG4xQGdtYWlsLmNvbT4gPHFod3QrZ2l0QGxlcy5hdGguY3g+CiBZT05FVEFOSSBUb21va2F6dSA8eTBuM3Q0bjFAZ21haWwuY29tPiA8eTBuZXRhbjFAZHJhZ29uZmx5YnNkLm9yZz4KIFlPU0hJRlVKSSBIaWRlYWtpIDx5b3NoZnVqaUBsaW51eC1pcHY2Lm9yZz4KK1lpLUp5dW4gUGFuIDxwYW45MzQxMkBnbWFpbC5jb20+CiAjIHRoZSB0d28gYW5vbnltb3VzIGNvbnRyaWJ1dG9ycyBhcmUgZGlmZmVyZW50IHBlcnNvbnM6CiBhbm9ueW1vdXMgPGxpbnV4QGhvcml6b24uY29tPgogYW5vbnltb3VzIDxsaW51eEBob3Jpem9uLm5ldD4KZGlmZiAtLWdpdCBhLy50cmF2aXMueW1sIGIvLnRyYXZpcy55bWwKaW5kZXggMDNjOGU0Yy4uZmM1NzMwYiAxMDA2NDQKLS0tIGEvLnRyYXZpcy55bWwKKysrIGIvLnRyYXZpcy55bWwKQEAgLTgsNiArOCw4IEBACiAgIC0gbGludXgKICAgLSBvc3gKIAorb3N4X2ltYWdlOiB4Y29kZTEwLjEKKwogY29tcGlsZXI6CiAgIC0gY2xhbmcKICAgLSBnY2MKQEAgLTE5LDE2ICsyMSwxMCBAQAogICAgICAgY29tcGlsZXI6CiAgICAgICBhZGRvbnM6CiAgICAgICBiZWZvcmVfaW5zdGFsbDoKLSAgICAtIGVudjogam9ibmFtZT1XaW5kb3dzCisgICAgLSBlbnY6IGpvYm5hbWU9bGludXgtZ2NjLTQuOAogICAgICAgb3M6IGxpbnV4CisgICAgICBkaXN0OiB0cnVzdHkKICAgICAgIGNvbXBpbGVyOgotICAgICAgYWRkb25zOgotICAgICAgYmVmb3JlX2luc3RhbGw6Ci0gICAgICBzY3JpcHQ6Ci0gICAgICAgIC0gPgotICAgICAgICAgIHRlc3QgIiRUUkFWSVNfUkVQT19TTFVHIiAhPSAiZ2l0L2dpdCIgfHwKLSAgICAgICAgICBjaS9ydW4td2luZG93cy1idWlsZC5zaCAkVFJBVklTX0JSQU5DSCAkKGdpdCByZXYtcGFyc2UgSEVBRCkKLSAgICAgIGFmdGVyX2ZhaWx1cmU6CiAgICAgLSBlbnY6IGpvYm5hbWU9TGludXgzMgogICAgICAgb3M6IGxpbnV4CiAgICAgICBjb21waWxlcjoKZGlmZiAtLWdpdCBhLy50c2FuLXN1cHByZXNzaW9ucyBiLy50c2FuLXN1cHByZXNzaW9ucwppbmRleCA4Yzg1MDE0Li41YmE4NmQ2IDEwMDY0NAotLS0gYS8udHNhbi1zdXBwcmVzc2lvbnMKKysrIGIvLnRzYW4tc3VwcHJlc3Npb25zCkBAIC04LDMgKzgsOSBAQAogIyBpbiBwcmFjdGljZSBpdCAoaG9wZWZ1bGx5ISkgZG9lc24ndCBtYXR0ZXIuCiByYWNlOl53YW50X2NvbG9yJAogcmFjZTpedHJhbnNmZXJfZGVidWckCisKKyMgQSBib29sZWFuIHZhbHVlLCB3aGljaCB0ZWxscyB3aGV0aGVyIHRoZSByZXBsYWNlX21hcCBoYXMgYmVlbiBpbml0aWFsaXplZCBvcgorIyBub3QsIGlzIHJlYWQgcmFjaWx5IHdpdGggYW4gdXBkYXRlLiBBcyB0aGlzIHZhcmlhYmxlIGlzIHdyaXR0ZW4gdG8gb25seSBvbmNlLAorIyBhbmQgaXQncyBPSyBpZiB0aGUgdmFsdWUgY2hhbmdlIHJpZ2h0IGFmdGVyIHJlYWRpbmcgaXQsIHRoaXMgc2hvdWxkbid0IGJlIGEKKyMgcHJvYmxlbS4KK3JhY2U6Xmxvb2t1cF9yZXBsYWNlX29iamVjdCQKZGlmZiAtLWdpdCBhL0NPREVfT0ZfQ09ORFVDVC5tZCBiL0NPREVfT0ZfQ09ORFVDVC5tZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYzQ2NDVkCi0tLSAvZGV2L251bGwKKysrIGIvQ09ERV9PRl9DT05EVUNULm1kCkBAIC0wLDAgKzEsOTMgQEAKKyMgR2l0IENvZGUgb2YgQ29uZHVjdAorCitUaGlzIGNvZGUgb2YgY29uZHVjdCBvdXRsaW5lcyBvdXIgZXhwZWN0YXRpb25zIGZvciBwYXJ0aWNpcGFudHMgd2l0aGluCit0aGUgR2l0IGNvbW11bml0eSwgYXMgd2VsbCBhcyBzdGVwcyBmb3IgcmVwb3J0aW5nIHVuYWNjZXB0YWJsZSBiZWhhdmlvci4KK1dlIGFyZSBjb21taXR0ZWQgdG8gcHJvdmlkaW5nIGEgd2VsY29taW5nIGFuZCBpbnNwaXJpbmcgY29tbXVuaXR5IGZvcgorYWxsIGFuZCBleHBlY3Qgb3VyIGNvZGUgb2YgY29uZHVjdCB0byBiZSBob25vcmVkLiBBbnlvbmUgd2hvIHZpb2xhdGVzCit0aGlzIGNvZGUgb2YgY29uZHVjdCBtYXkgYmUgYmFubmVkIGZyb20gdGhlIGNvbW11bml0eS4KKworIyMgT3VyIFBsZWRnZQorCitJbiB0aGUgaW50ZXJlc3Qgb2YgZm9zdGVyaW5nIGFuIG9wZW4gYW5kIHdlbGNvbWluZyBlbnZpcm9ubWVudCwgd2UgYXMKK2NvbnRyaWJ1dG9ycyBhbmQgbWFpbnRhaW5lcnMgcGxlZGdlIHRvIG1ha2UgcGFydGljaXBhdGlvbiBpbiBvdXIgcHJvamVjdCBhbmQKK291ciBjb21tdW5pdHkgYSBoYXJhc3NtZW50LWZyZWUgZXhwZXJpZW5jZSBmb3IgZXZlcnlvbmUsIHJlZ2FyZGxlc3Mgb2YgYWdlLAorYm9keSBzaXplLCBkaXNhYmlsaXR5LCBldGhuaWNpdHksIHNleCBjaGFyYWN0ZXJpc3RpY3MsIGdlbmRlciBpZGVudGl0eSBhbmQKK2V4cHJlc3Npb24sIGxldmVsIG9mIGV4cGVyaWVuY2UsIGVkdWNhdGlvbiwgc29jaW8tZWNvbm9taWMgc3RhdHVzLAorbmF0aW9uYWxpdHksIHBlcnNvbmFsIGFwcGVhcmFuY2UsIHJhY2UsIHJlbGlnaW9uLCBvciBzZXh1YWwgaWRlbnRpdHkgYW5kCitvcmllbnRhdGlvbi4KKworIyMgT3VyIFN0YW5kYXJkcworCitFeGFtcGxlcyBvZiBiZWhhdmlvciB0aGF0IGNvbnRyaWJ1dGVzIHRvIGNyZWF0aW5nIGEgcG9zaXRpdmUgZW52aXJvbm1lbnQKK2luY2x1ZGU6CisKKyogVXNpbmcgd2VsY29taW5nIGFuZCBpbmNsdXNpdmUgbGFuZ3VhZ2UKKyogQmVpbmcgcmVzcGVjdGZ1bCBvZiBkaWZmZXJpbmcgdmlld3BvaW50cyBhbmQgZXhwZXJpZW5jZXMKKyogR3JhY2VmdWxseSBhY2NlcHRpbmcgY29uc3RydWN0aXZlIGNyaXRpY2lzbQorKiBGb2N1c2luZyBvbiB3aGF0IGlzIGJlc3QgZm9yIHRoZSBjb21tdW5pdHkKKyogU2hvd2luZyBlbXBhdGh5IHRvd2FyZHMgb3RoZXIgY29tbXVuaXR5IG1lbWJlcnMKKworRXhhbXBsZXMgb2YgdW5hY2NlcHRhYmxlIGJlaGF2aW9yIGJ5IHBhcnRpY2lwYW50cyBpbmNsdWRlOgorCisqIFRoZSB1c2Ugb2Ygc2V4dWFsaXplZCBsYW5ndWFnZSBvciBpbWFnZXJ5IGFuZCB1bndlbGNvbWUgc2V4dWFsIGF0dGVudGlvbiBvcgorICBhZHZhbmNlcworKiBUcm9sbGluZywgaW5zdWx0aW5nL2Rlcm9nYXRvcnkgY29tbWVudHMsIGFuZCBwZXJzb25hbCBvciBwb2xpdGljYWwgYXR0YWNrcworKiBQdWJsaWMgb3IgcHJpdmF0ZSBoYXJhc3NtZW50CisqIFB1Ymxpc2hpbmcgb3RoZXJzJyBwcml2YXRlIGluZm9ybWF0aW9uLCBzdWNoIGFzIGEgcGh5c2ljYWwgb3IgZWxlY3Ryb25pYworICBhZGRyZXNzLCB3aXRob3V0IGV4cGxpY2l0IHBlcm1pc3Npb24KKyogT3RoZXIgY29uZHVjdCB3aGljaCBjb3VsZCByZWFzb25hYmx5IGJlIGNvbnNpZGVyZWQgaW5hcHByb3ByaWF0ZSBpbiBhCisgIHByb2Zlc3Npb25hbCBzZXR0aW5nCisKKyMjIE91ciBSZXNwb25zaWJpbGl0aWVzCisKK1Byb2plY3QgbWFpbnRhaW5lcnMgYXJlIHJlc3BvbnNpYmxlIGZvciBjbGFyaWZ5aW5nIHRoZSBzdGFuZGFyZHMgb2YgYWNjZXB0YWJsZQorYmVoYXZpb3IgYW5kIGFyZSBleHBlY3RlZCB0byB0YWtlIGFwcHJvcHJpYXRlIGFuZCBmYWlyIGNvcnJlY3RpdmUgYWN0aW9uIGluCityZXNwb25zZSB0byBhbnkgaW5zdGFuY2VzIG9mIHVuYWNjZXB0YWJsZSBiZWhhdmlvci4KKworUHJvamVjdCBtYWludGFpbmVycyBoYXZlIHRoZSByaWdodCBhbmQgcmVzcG9uc2liaWxpdHkgdG8gcmVtb3ZlLCBlZGl0LCBvcgorcmVqZWN0IGNvbW1lbnRzLCBjb21taXRzLCBjb2RlLCB3aWtpIGVkaXRzLCBpc3N1ZXMsIGFuZCBvdGhlciBjb250cmlidXRpb25zCit0aGF0IGFyZSBub3QgYWxpZ25lZCB0byB0aGlzIENvZGUgb2YgQ29uZHVjdCwgb3IgdG8gYmFuIHRlbXBvcmFyaWx5IG9yCitwZXJtYW5lbnRseSBhbnkgY29udHJpYnV0b3IgZm9yIG90aGVyIGJlaGF2aW9ycyB0aGF0IHRoZXkgZGVlbSBpbmFwcHJvcHJpYXRlLAordGhyZWF0ZW5pbmcsIG9mZmVuc2l2ZSwgb3IgaGFybWZ1bC4KKworIyMgU2NvcGUKKworVGhpcyBDb2RlIG9mIENvbmR1Y3QgYXBwbGllcyB3aXRoaW4gYWxsIHByb2plY3Qgc3BhY2VzLCBhbmQgaXQgYWxzbyBhcHBsaWVzCit3aGVuIGFuIGluZGl2aWR1YWwgaXMgcmVwcmVzZW50aW5nIHRoZSBwcm9qZWN0IG9yIGl0cyBjb21tdW5pdHkgaW4gcHVibGljCitzcGFjZXMuIEV4YW1wbGVzIG9mIHJlcHJlc2VudGluZyBhIHByb2plY3Qgb3IgY29tbXVuaXR5IGluY2x1ZGUgdXNpbmcgYW4KK29mZmljaWFsIHByb2plY3QgZS1tYWlsIGFkZHJlc3MsIHBvc3RpbmcgdmlhIGFuIG9mZmljaWFsIHNvY2lhbCBtZWRpYSBhY2NvdW50LAorb3IgYWN0aW5nIGFzIGFuIGFwcG9pbnRlZCByZXByZXNlbnRhdGl2ZSBhdCBhbiBvbmxpbmUgb3Igb2ZmbGluZSBldmVudC4KK1JlcHJlc2VudGF0aW9uIG9mIGEgcHJvamVjdCBtYXkgYmUgZnVydGhlciBkZWZpbmVkIGFuZCBjbGFyaWZpZWQgYnkgcHJvamVjdAorbWFpbnRhaW5lcnMuCisKKyMjIEVuZm9yY2VtZW50CisKK0luc3RhbmNlcyBvZiBhYnVzaXZlLCBoYXJhc3NpbmcsIG9yIG90aGVyd2lzZSB1bmFjY2VwdGFibGUgYmVoYXZpb3IgbWF5IGJlCityZXBvcnRlZCBieSBjb250YWN0aW5nIHRoZSBwcm9qZWN0IHRlYW0gYXQgZ2l0QHNmY29uc2VydmFuY3kub3JnLiBBbGwKK2NvbXBsYWludHMgd2lsbCBiZSByZXZpZXdlZCBhbmQgaW52ZXN0aWdhdGVkIGFuZCB3aWxsIHJlc3VsdCBpbiBhIHJlc3BvbnNlCit0aGF0IGlzIGRlZW1lZCBuZWNlc3NhcnkgYW5kIGFwcHJvcHJpYXRlIHRvIHRoZSBjaXJjdW1zdGFuY2VzLiBUaGUgcHJvamVjdAordGVhbSBpcyBvYmxpZ2F0ZWQgdG8gbWFpbnRhaW4gY29uZmlkZW50aWFsaXR5IHdpdGggcmVnYXJkIHRvIHRoZSByZXBvcnRlciBvZgorYW4gaW5jaWRlbnQuIEZ1cnRoZXIgZGV0YWlscyBvZiBzcGVjaWZpYyBlbmZvcmNlbWVudCBwb2xpY2llcyBtYXkgYmUgcG9zdGVkCitzZXBhcmF0ZWx5LgorCitQcm9qZWN0IG1haW50YWluZXJzIHdobyBkbyBub3QgZm9sbG93IG9yIGVuZm9yY2UgdGhlIENvZGUgb2YgQ29uZHVjdCBpbiBnb29kCitmYWl0aCBtYXkgZmFjZSB0ZW1wb3Jhcnkgb3IgcGVybWFuZW50IHJlcGVyY3Vzc2lvbnMgYXMgZGV0ZXJtaW5lZCBieSBvdGhlcgorbWVtYmVycyBvZiB0aGUgcHJvamVjdCdzIGxlYWRlcnNoaXAuCisKK1RoZSBwcm9qZWN0IGxlYWRlcnNoaXAgdGVhbSBjYW4gYmUgY29udGFjdGVkIGJ5IGVtYWlsIGFzIGEgd2hvbGUgYXQKK2dpdEBzZmNvbnNlcnZhbmN5Lm9yZywgb3IgaW5kaXZpZHVhbGx5OgorCisgIC0gw4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24gPGF2YXJhYkBnbWFpbC5jb20+CisgIC0gQ2hyaXN0aWFuIENvdWRlciA8Y2hyaXN0aWFuLmNvdWRlckBnbWFpbC5jb20+CisgIC0gSmVmZiBLaW5nIDxwZWZmQHBlZmYubmV0PgorICAtIEp1bmlvIEMgSGFtYW5vIDxnaXRzdGVyQHBvYm94LmNvbT4KKworIyMgQXR0cmlidXRpb24KKworVGhpcyBDb2RlIG9mIENvbmR1Y3QgaXMgYWRhcHRlZCBmcm9tIHRoZSBbQ29udHJpYnV0b3IgQ292ZW5hbnRdW2hvbWVwYWdlXSwKK3ZlcnNpb24gMS40LCBhdmFpbGFibGUgYXQgaHR0cHM6Ly93d3cuY29udHJpYnV0b3ItY292ZW5hbnQub3JnL3ZlcnNpb24vMS80L2NvZGUtb2YtY29uZHVjdC5odG1sCisKK1tob21lcGFnZV06IGh0dHBzOi8vd3d3LmNvbnRyaWJ1dG9yLWNvdmVuYW50Lm9yZworCitGb3IgYW5zd2VycyB0byBjb21tb24gcXVlc3Rpb25zIGFib3V0IHRoaXMgY29kZSBvZiBjb25kdWN0LCBzZWUKK2h0dHBzOi8vd3d3LmNvbnRyaWJ1dG9yLWNvdmVuYW50Lm9yZy9mYXEKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vLmdpdGlnbm9yZSBiL0RvY3VtZW50YXRpb24vLmdpdGlnbm9yZQppbmRleCAzZWY1NGUwLi45MDIyZDQ4IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uLy5naXRpZ25vcmUKKysrIGIvRG9jdW1lbnRhdGlvbi8uZ2l0aWdub3JlCkBAIC0xMywzICsxMyw1IEBACiBtYW5wYWdlLWJhc2UtdXJsLnhzbAogU3VibWl0dGluZ1BhdGNoZXMudHh0CiB0bXAtZG9jLWRpZmYvCitHSVQtQVNDSUlET0NGTEFHUworL0dJVC1FWENMVURFRC1QUk9HUkFNUwpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9Db2RpbmdHdWlkZWxpbmVzIGIvRG9jdW1lbnRhdGlvbi9Db2RpbmdHdWlkZWxpbmVzCmluZGV4IDg1Nzk1MzAuLmVkNGU0NDMgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vQ29kaW5nR3VpZGVsaW5lcworKysgYi9Eb2N1bWVudGF0aW9uL0NvZGluZ0d1aWRlbGluZXMKQEAgLTc1LDcgKzc1LDcgQEAKIAogIC0gSWYgeW91IHdhbnQgdG8gZmluZCBvdXQgaWYgYSBjb21tYW5kIGlzIGF2YWlsYWJsZSBvbiB0aGUgdXNlcidzCiAgICAkUEFUSCwgeW91IHNob3VsZCB1c2UgJ3R5cGUgPGNvbW1hbmQ+JywgaW5zdGVhZCBvZiAnd2hpY2ggPGNvbW1hbmQ+Jy4KLSAgIFRoZSBvdXRwdXQgb2YgJ3doaWNoJyBpcyBub3QgbWFjaGluZSBwYXJzZWFibGUgYW5kIGl0cyBleGl0IGNvZGUKKyAgIFRoZSBvdXRwdXQgb2YgJ3doaWNoJyBpcyBub3QgbWFjaGluZSBwYXJzYWJsZSBhbmQgaXRzIGV4aXQgY29kZQogICAgaXMgbm90IHJlbGlhYmxlIGFjcm9zcyBwbGF0Zm9ybXMuCiAKICAtIFdlIHVzZSBQT1NJWCBjb21wbGlhbnQgcGFyYW1ldGVyIHN1YnN0aXR1dGlvbnMgYW5kIGF2b2lkIGJhc2hpc21zOwpAQCAtMTk1LDEwICsxOTUsMzAgQEAKICAgIGJ5IGUuZy4gImVjaG8gREVWRUxPUEVSPTEgPj5jb25maWcubWFrIi4KIAogIC0gV2UgdHJ5IHRvIHN1cHBvcnQgYSB3aWRlIHJhbmdlIG9mIEMgY29tcGlsZXJzIHRvIGNvbXBpbGUgR2l0IHdpdGgsCi0gICBpbmNsdWRpbmcgb2xkIG9uZXMuIFRoYXQgbWVhbnMgdGhhdCB5b3Ugc2hvdWxkIG5vdCB1c2UgQzk5Ci0gICBpbml0aWFsaXplcnMsIGV2ZW4gaWYgYSBsb3Qgb2YgY29tcGlsZXJzIGdyb2sgaXQuCisgICBpbmNsdWRpbmcgb2xkIG9uZXMuICBZb3Ugc2hvdWxkIG5vdCB1c2UgZmVhdHVyZXMgZnJvbSBuZXdlciBDCisgICBzdGFuZGFyZCwgZXZlbiBpZiB5b3VyIGNvbXBpbGVyIGdyb2tzIHRoZW0uCiAKLSAtIFZhcmlhYmxlcyBoYXZlIHRvIGJlIGRlY2xhcmVkIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGJsb2NrLgorICAgVGhlcmUgYXJlIGEgZmV3IGV4Y2VwdGlvbnMgdG8gdGhpcyBndWlkZWxpbmU6CisKKyAgIC4gc2luY2UgZWFybHkgMjAxMiB3aXRoIGUxMzI3MDIzZWEsIHdlIGhhdmUgYmVlbiB1c2luZyBhbiBlbnVtCisgICAgIGRlZmluaXRpb24gd2hvc2UgbGFzdCBlbGVtZW50IGlzIGZvbGxvd2VkIGJ5IGEgY29tbWEuICBUaGlzLCBsaWtlCisgICAgIGFuIGFycmF5IGluaXRpYWxpemVyIHRoYXQgZW5kcyB3aXRoIGEgdHJhaWxpbmcgY29tbWEsIGNhbiBiZSB1c2VkCisgICAgIHRvIHJlZHVjZSB0aGUgcGF0Y2ggbm9pc2Ugd2hlbiBhZGRpbmcgYSBuZXcgaWRlbnRpZmllciBhdCB0aGUgZW5kLgorCisgICAuIHNpbmNlIG1pZCAyMDE3IHdpdGggY2JjMGY4MWQsIHdlIGhhdmUgYmVlbiB1c2luZyBkZXNpZ25hdGVkCisgICAgIGluaXRpYWxpemVycyBmb3Igc3RydWN0IChlLmcuICJzdHJ1Y3QgdCB2ID0geyAudmFsID0gJ2EnIH07IikuCisKKyAgIC4gc2luY2UgbWlkIDIwMTcgd2l0aCA1MTJmNDFjZiwgd2UgaGF2ZSBiZWVuIHVzaW5nIGRlc2lnbmF0ZWQKKyAgICAgaW5pdGlhbGl6ZXJzIGZvciBhcnJheSAoZS5nLiAiaW50IGFycmF5WzEwXSA9IHsgWzVdID0gMiB9IikuCisKKyAgIFRoZXNlIHVzZWQgdG8gYmUgZm9yYmlkZGVuLCBidXQgd2UgaGF2ZSBub3QgaGVhcmQgYW55IGJyZWFrYWdlCisgICByZXBvcnQsIGFuZCB0aGV5IGFyZSBhc3N1bWVkIHRvIGJlIHNhZmUuCisKKyAtIFZhcmlhYmxlcyBoYXZlIHRvIGJlIGRlY2xhcmVkIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGJsb2NrLCBiZWZvcmUKKyAgIHRoZSBmaXJzdCBzdGF0ZW1lbnQgKGkuZS4gLVdkZWNsYXJhdGlvbi1hZnRlci1zdGF0ZW1lbnQpLgorCisgLSBEZWNsYXJpbmcgYSB2YXJpYWJsZSBpbiB0aGUgZm9yIGxvb3AgImZvciAoaW50IGkgPSAwOyBpIDwgMTA7IGkrKykiCisgICBpcyBzdGlsbCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvZGViYXNlLgogCiAgLSBOVUxMIHBvaW50ZXJzIHNoYWxsIGJlIHdyaXR0ZW4gYXMgTlVMTCwgbm90IGFzIDAuCiAKQEAgLTQxMiw2ICs0MzIsMTIgQEAKICAgIG11c3QgYmUgZGVjbGFyZWQgd2l0aCAiZXh0ZXJuIiBpbiBoZWFkZXIgZmlsZXMuIEhvd2V2ZXIsIGZ1bmN0aW9uCiAgICBkZWNsYXJhdGlvbnMgc2hvdWxkIG5vdCB1c2UgImV4dGVybiIsIGFzIHRoYXQgaXMgYWxyZWFkeSB0aGUgZGVmYXVsdC4KIAorIC0gWW91IGNhbiBsYXVuY2ggZ2RiIGFyb3VuZCB5b3VyIHByb2dyYW0gdXNpbmcgdGhlIHNob3J0aGFuZCBHSVRfREVCVUdHRVIuCisgICBSdW4gYEdJVF9ERUJVR0dFUj0xIC4vYmluLXdyYXBwZXJzL2dpdCBmb29gIHRvIHNpbXBseSB1c2UgZ2RiIGFzIGlzLCBvcgorICAgcnVuIGBHSVRfREVCVUdHRVI9IjxkZWJ1Z2dlcj4gPGRlYnVnZ2VyLWFyZ3M+IiAuL2Jpbi13cmFwcGVycy9naXQgZm9vYCB0bworICAgdXNlIHlvdXIgb3duIGRlYnVnZ2VyIGFuZCBhcmd1bWVudHMuIEV4YW1wbGU6IGBHSVRfREVCVUdHRVI9ImRkZCAtLWdkYiIKKyAgIC4vYmluLXdyYXBwZXJzL2dpdCBsb2dgIChTZWUgYHdyYXAtZm9yLWJpbi5zaGAuKQorCiBGb3IgUGVybCBwcm9ncmFtczoKIAogIC0gTW9zdCBvZiB0aGUgQyBndWlkZWxpbmVzIGFib3ZlIGFwcGx5LgpAQCAtNTgwLDExICs2MDYsMTQgQEAKICBvciBjb21tYW5kczoKIAogIExpdGVyYWwgZXhhbXBsZXMgKGUuZy4gdXNlIG9mIGNvbW1hbmQtbGluZSBvcHRpb25zLCBjb21tYW5kIG5hbWVzLAotIGJyYW5jaCBuYW1lcywgY29uZmlndXJhdGlvbiBhbmQgZW52aXJvbm1lbnQgdmFyaWFibGVzKSBtdXN0IGJlCi0gdHlwZXNldCBpbiBtb25vc3BhY2UgKGkuZS4gd3JhcHBlZCB3aXRoIGJhY2t0aWNrcyk6CisgYnJhbmNoIG5hbWVzLCBVUkxzLCBwYXRobmFtZXMgKGZpbGVzIGFuZCBkaXJlY3RvcmllcyksIGNvbmZpZ3VyYXRpb24gYW5kCisgZW52aXJvbm1lbnQgdmFyaWFibGVzKSBtdXN0IGJlIHR5cGVzZXQgaW4gbW9ub3NwYWNlIChpLmUuIHdyYXBwZWQgd2l0aAorIGJhY2t0aWNrcyk6CiAgICBgLS1wcmV0dHk9b25lbGluZWAKICAgIGBnaXQgcmV2LWxpc3RgCiAgICBgcmVtb3RlLnB1c2hEZWZhdWx0YAorICAgYGh0dHA6Ly9naXQuZXhhbXBsZS5jb21gCisgICBgLmdpdC9jb25maWdgCiAgICBgR0lUX0RJUmAKICAgIGBIRUFEYAogCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL01ha2VmaWxlIGIvRG9jdW1lbnRhdGlvbi9NYWtlZmlsZQppbmRleCBkNWQ5MzZlLi44ZmU4MjljIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL01ha2VmaWxlCisrKyBiL0RvY3VtZW50YXRpb24vTWFrZWZpbGUKQEAgLTcsMTIgKzcsMTQgQEAKIFNQX0FSVElDTEVTID0KIE9CU09MRVRFX0hUTUwgPQogCistaW5jbHVkZSBHSVQtRVhDTFVERUQtUFJPR1JBTVMKKwogTUFOMV9UWFQgKz0gJChmaWx0ZXItb3V0IFwKKwkJJChwYXRzdWJzdCAlLCUudHh0LCQoRVhDTFVERURfUFJPR1JBTVMpKSBcCiAJCSQoYWRkc3VmZml4IC50eHQsICQoQVJUSUNMRVMpICQoU1BfQVJUSUNMRVMpKSwgXAogCQkkKHdpbGRjYXJkIGdpdC0qLnR4dCkpCiBNQU4xX1RYVCArPSBnaXQudHh0CiBNQU4xX1RYVCArPSBnaXRrLnR4dAotTUFOMV9UWFQgKz0gZ2l0cmVtb3RlLWhlbHBlcnMudHh0CiBNQU4xX1RYVCArPSBnaXR3ZWIudHh0CiAKIE1BTjVfVFhUICs9IGdpdGF0dHJpYnV0ZXMudHh0CkBAIC0zMCwyMCArMzIsMjYgQEAKIE1BTjdfVFhUICs9IGdpdGV2ZXJ5ZGF5LnR4dAogTUFON19UWFQgKz0gZ2l0Z2xvc3NhcnkudHh0CiBNQU43X1RYVCArPSBnaXRuYW1lc3BhY2VzLnR4dAorTUFON19UWFQgKz0gZ2l0cmVtb3RlLWhlbHBlcnMudHh0CiBNQU43X1RYVCArPSBnaXRyZXZpc2lvbnMudHh0CiBNQU43X1RYVCArPSBnaXRzdWJtb2R1bGVzLnR4dAogTUFON19UWFQgKz0gZ2l0dHV0b3JpYWwtMi50eHQKIE1BTjdfVFhUICs9IGdpdHR1dG9yaWFsLnR4dAogTUFON19UWFQgKz0gZ2l0d29ya2Zsb3dzLnR4dAogCitpZmRlZiBNQU5fRklMVEVSCitNQU5fVFhUID0gJChmaWx0ZXIgJChNQU5fRklMVEVSKSwkKE1BTjFfVFhUKSAkKE1BTjVfVFhUKSAkKE1BTjdfVFhUKSkKK2Vsc2UKIE1BTl9UWFQgPSAkKE1BTjFfVFhUKSAkKE1BTjVfVFhUKSAkKE1BTjdfVFhUKQorTUFOX0ZJTFRFUiA9ICQoTUFOX1RYVCkKK2VuZGlmCisKIE1BTl9YTUwgPSAkKHBhdHN1YnN0ICUudHh0LCUueG1sLCQoTUFOX1RYVCkpCiBNQU5fSFRNTCA9ICQocGF0c3Vic3QgJS50eHQsJS5odG1sLCQoTUFOX1RYVCkpCiBHSVRfTUFOX1JFRiA9IG1hc3RlcgogCiBPQlNPTEVURV9IVE1MICs9IGV2ZXJ5ZGF5Lmh0bWwKIE9CU09MRVRFX0hUTUwgKz0gZ2l0LXJlbW90ZS1oZWxwZXJzLmh0bWwKLURPQ19IVE1MID0gJChNQU5fSFRNTCkgJChPQlNPTEVURV9IVE1MKQogCiBBUlRJQ0xFUyArPSBob3d0by1pbmRleAogQVJUSUNMRVMgKz0gZ2l0LXRvb2xzCkBAIC02OCw2ICs3Niw4IEBACiBBUElfRE9DUyA9ICQocGF0c3Vic3QgJS50eHQsJSwkKGZpbHRlci1vdXQgdGVjaG5pY2FsL2FwaS1pbmRleC1za2VsLnR4dCB0ZWNobmljYWwvYXBpLWluZGV4LnR4dCwgJCh3aWxkY2FyZCB0ZWNobmljYWwvYXBpLSoudHh0KSkpCiBTUF9BUlRJQ0xFUyArPSAkKEFQSV9ET0NTKQogCitURUNIX0RPQ1MgKz0gTXlGaXJzdENvbnRyaWJ1dGlvbgorVEVDSF9ET0NTICs9IE15Rmlyc3RPYmplY3RXYWxrCiBURUNIX0RPQ1MgKz0gU3VibWl0dGluZ1BhdGNoZXMKIFRFQ0hfRE9DUyArPSB0ZWNobmljYWwvaGFzaC1mdW5jdGlvbi10cmFuc2l0aW9uCiBURUNIX0RPQ1MgKz0gdGVjaG5pY2FsL2h0dHAtcHJvdG9jb2wKQEAgLTg5LDExICs5OSwxMyBAQAogU1BfQVJUSUNMRVMgKz0gJChURUNIX0RPQ1MpCiBTUF9BUlRJQ0xFUyArPSB0ZWNobmljYWwvYXBpLWluZGV4CiAKLURPQ19IVE1MICs9ICQocGF0c3Vic3QgJSwlLmh0bWwsJChBUlRJQ0xFUykgJChTUF9BUlRJQ0xFUykpCitBUlRJQ0xFU19IVE1MICs9ICQocGF0c3Vic3QgJSwlLmh0bWwsJChBUlRJQ0xFUykgJChTUF9BUlRJQ0xFUykpCitIVE1MX0ZJTFRFUiA/PSAkKEFSVElDTEVTX0hUTUwpICQoT0JTT0xFVEVfSFRNTCkKK0RPQ19IVE1MID0gJChNQU5fSFRNTCkgJChmaWx0ZXIgJChIVE1MX0ZJTFRFUiksJChBUlRJQ0xFU19IVE1MKSAkKE9CU09MRVRFX0hUTUwpKQogCi1ET0NfTUFOMSA9ICQocGF0c3Vic3QgJS50eHQsJS4xLCQoTUFOMV9UWFQpKQotRE9DX01BTjUgPSAkKHBhdHN1YnN0ICUudHh0LCUuNSwkKE1BTjVfVFhUKSkKLURPQ19NQU43ID0gJChwYXRzdWJzdCAlLnR4dCwlLjcsJChNQU43X1RYVCkpCitET0NfTUFOMSA9ICQocGF0c3Vic3QgJS50eHQsJS4xLCQoZmlsdGVyICQoTUFOX0ZJTFRFUiksJChNQU4xX1RYVCkpKQorRE9DX01BTjUgPSAkKHBhdHN1YnN0ICUudHh0LCUuNSwkKGZpbHRlciAkKE1BTl9GSUxURVIpLCQoTUFONV9UWFQpKSkKK0RPQ19NQU43ID0gJChwYXRzdWJzdCAlLnR4dCwlLjcsJChmaWx0ZXIgJChNQU5fRklMVEVSKSwkKE1BTjdfVFhUKSkpCiAKIHByZWZpeCA/PSAkKEhPTUUpCiBiaW5kaXIgPz0gJChwcmVmaXgpL2JpbgpAQCAtMTEyLDcgKzEyNCw4IEBACiBBU0NJSURPQ19ET0NCT09LID0gZG9jYm9vawogQVNDSUlET0NfQ09ORiA9IC1mIGFzY2lpZG9jLmNvbmYKIEFTQ0lJRE9DX0NPTU1PTiA9ICQoQVNDSUlET0MpICQoQVNDSUlET0NfRVhUUkEpICQoQVNDSUlET0NfQ09ORikgXAotCQktYWdpdF92ZXJzaW9uPSQoR0lUX1ZFUlNJT04pCisJCS1hbWFudmVyc2lvbj0kKEdJVF9WRVJTSU9OKSBcCisJCS1hbWFubWFudWFsPSdHaXQgTWFudWFsJyAtYW1hbnNvdXJjZT0nR2l0JwogVFhUX1RPX0hUTUwgPSAkKEFTQ0lJRE9DX0NPTU1PTikgLWIgJChBU0NJSURPQ19IVE1MKQogVFhUX1RPX1hNTCA9ICQoQVNDSUlET0NfQ09NTU9OKSAtYiAkKEFTQ0lJRE9DX0RPQ0JPT0spCiBNQU5QQUdFX1hTTCA9IG1hbnBhZ2Utbm9ybWFsLnhzbApAQCAtMTg2LDExICsxOTksMTMgQEAKIEFTQ0lJRE9DID0gYXNjaWlkb2N0b3IKIEFTQ0lJRE9DX0NPTkYgPQogQVNDSUlET0NfSFRNTCA9IHhodG1sNQotQVNDSUlET0NfRE9DQk9PSyA9IGRvY2Jvb2s0NQorQVNDSUlET0NfRE9DQk9PSyA9IGRvY2Jvb2s1CiBBU0NJSURPQ19FWFRSQSArPSAtYWNvbXBhdC1tb2RlIC1hdGFic2l6ZT04CiBBU0NJSURPQ19FWFRSQSArPSAtSS4gLXJhc2NpaWRvY3Rvci1leHRlbnNpb25zCiBBU0NJSURPQ19FWFRSQSArPSAtYWxpdGRkPScmXCN4MmQ7JlwjeDJkOycKIERCTEFURVhfQ09NTU9OID0KK1hNTFRPX0VYVFJBICs9IC0tc2tpcC12YWxpZGF0aW9uCitYTUxUT19FWFRSQSArPSAteCBtYW5wYWdlLnhzbAogZW5kaWYKIAogU0hFTExfUEFUSCA/PSAkKFNIRUxMKQpAQCAtMzI0LDYgKzMzOSwxNSBAQAogCQlzaG93X3Rvb2xfbmFtZXMgY2FuX21lcmdlICIqICIgfHwgOicgPm1lcmdldG9vbHMtbWVyZ2UudHh0ICYmIFwKIAlkYXRlID4kQAogCitUUkFDS19BU0NJSURPQ0ZMQUdTID0gJChzdWJzdCAnLCdcJycsJChBU0NJSURPQ19DT01NT04pOiQoQVNDSUlET0NfSFRNTCk6JChBU0NJSURPQ19ET0NCT09LKSkKKworR0lULUFTQ0lJRE9DRkxBR1M6IEZPUkNFCisJQEZMQUdTPSckKFRSQUNLX0FTQ0lJRE9DRkxBR1MpJzsgXAorCSAgICBpZiB0ZXN0IHgiJCRGTEFHUyIgIT0geCJgY2F0IEdJVC1BU0NJSURPQ0ZMQUdTIDI+L2Rldi9udWxsYCIgOyB0aGVuIFwKKwkJZWNobyA+JjIgIiAgICAqIG5ldyBhc2NpaWRvYyBmbGFncyI7IFwKKwkJZWNobyAiJCRGTEFHUyIgPkdJVC1BU0NJSURPQ0ZMQUdTOyBcCisgICAgICAgICAgICBmaQorCiBjbGVhbjoKIAkkKFJNKSAqLnhtbCAqLnhtbCsgKi5odG1sICouaHRtbCsgKi4xICouNSAqLjcKIAkkKFJNKSAqLnRleGkgKi50ZXhpKyAqLnRleGkrKyBnaXQuaW5mbyBnaXRtYW4uaW5mbwpAQCAtMzMzLDEzICszNTcsMTQgQEAKIAkkKFJNKSBTdWJtaXR0aW5nUGF0Y2hlcy50eHQKIAkkKFJNKSAkKGNtZHNfdHh0KSAkKG1lcmdldG9vbHNfdHh0KSAqLm1hZGUKIAkkKFJNKSBtYW5wYWdlLWJhc2UtdXJsLnhzbAorCSQoUk0pIEdJVC1BU0NJSURPQ0ZMQUdTCiAKLSQoTUFOX0hUTUwpOiAlLmh0bWwgOiAlLnR4dCBhc2NpaWRvYy5jb25mCiskKE1BTl9IVE1MKTogJS5odG1sIDogJS50eHQgYXNjaWlkb2MuY29uZiBhc2NpaWRvY3Rvci1leHRlbnNpb25zLnJiIEdJVC1BU0NJSURPQ0ZMQUdTCiAJJChRVUlFVF9BU0NJSURPQykkKFJNKSAkQCsgJEAgJiYgXAogCSQoVFhUX1RPX0hUTUwpIC1kIG1hbnBhZ2UgLW8gJEArICQ8ICYmIFwKIAltdiAkQCsgJEAKIAotJChPQlNPTEVURV9IVE1MKTogJS5odG1sIDogJS50eHRvIGFzY2lpZG9jLmNvbmYKKyQoT0JTT0xFVEVfSFRNTCk6ICUuaHRtbCA6ICUudHh0byBhc2NpaWRvYy5jb25mIGFzY2lpZG9jdG9yLWV4dGVuc2lvbnMucmIgR0lULUFTQ0lJRE9DRkxBR1MKIAkkKFFVSUVUX0FTQ0lJRE9DKSQoUk0pICRAKyAkQCAmJiBcCiAJJChUWFRfVE9fSFRNTCkgLW8gJEArICQ8ICYmIFwKIAltdiAkQCsgJEAKQEAgLTM0NywxNiArMzcyLDE2IEBACiBtYW5wYWdlLWJhc2UtdXJsLnhzbDogbWFucGFnZS1iYXNlLXVybC54c2wuaW4KIAkkKFFVSUVUX0dFTilzZWQgInN8QEBNQU5fQkFTRV9VUkxAQHwkKE1BTl9CQVNFX1VSTCl8IiAkPCA+ICRACiAKLSUuMSAlLjUgJS43IDogJS54bWwgbWFucGFnZS1iYXNlLXVybC54c2wKKyUuMSAlLjUgJS43IDogJS54bWwgbWFucGFnZS1iYXNlLXVybC54c2wgJCh3aWxkY2FyZCBtYW5wYWdlKi54c2wpCiAJJChRVUlFVF9YTUxUTykkKFJNKSAkQCAmJiBcCiAJJChYTUxUTykgLW0gJChNQU5QQUdFX1hTTCkgJChYTUxUT19FWFRSQSkgbWFuICQ8CiAKLSUueG1sIDogJS50eHQgYXNjaWlkb2MuY29uZgorJS54bWwgOiAlLnR4dCBhc2NpaWRvYy5jb25mIGFzY2lpZG9jdG9yLWV4dGVuc2lvbnMucmIgR0lULUFTQ0lJRE9DRkxBR1MKIAkkKFFVSUVUX0FTQ0lJRE9DKSQoUk0pICRAKyAkQCAmJiBcCiAJJChUWFRfVE9fWE1MKSAtZCBtYW5wYWdlIC1vICRAKyAkPCAmJiBcCiAJbXYgJEArICRACiAKLXVzZXItbWFudWFsLnhtbDogdXNlci1tYW51YWwudHh0IHVzZXItbWFudWFsLmNvbmYKK3VzZXItbWFudWFsLnhtbDogdXNlci1tYW51YWwudHh0IHVzZXItbWFudWFsLmNvbmYgYXNjaWlkb2N0b3ItZXh0ZW5zaW9ucy5yYiBHSVQtQVNDSUlET0NGTEFHUwogCSQoUVVJRVRfQVNDSUlET0MpJChSTSkgJEArICRAICYmIFwKIAkkKFRYVF9UT19YTUwpIC1kIGJvb2sgLW8gJEArICQ8ICYmIFwKIAltdiAkQCsgJEAKQEAgLTM2Niw3ICszOTEsOCBAQAogCSQoUVVJRVRfR0VOKWNkIHRlY2huaWNhbCAmJiAnJChTSEVMTF9QQVRIX1NRKScgLi9hcGktaW5kZXguc2gKIAogdGVjaG5pY2FsLyUuaHRtbDogQVNDSUlET0NfRVhUUkEgKz0gLWEgZ2l0LXJlbGF0aXZlLWh0bWwtcHJlZml4PS4uLwotJChwYXRzdWJzdCAlLCUuaHRtbCwkKEFQSV9ET0NTKSB0ZWNobmljYWwvYXBpLWluZGV4ICQoVEVDSF9ET0NTKSk6ICUuaHRtbCA6ICUudHh0IGFzY2lpZG9jLmNvbmYKKyQocGF0c3Vic3QgJSwlLmh0bWwsJChBUElfRE9DUykgdGVjaG5pY2FsL2FwaS1pbmRleCAkKFRFQ0hfRE9DUykpOiAlLmh0bWwgOiAlLnR4dCBcCisJYXNjaWlkb2MuY29uZiBHSVQtQVNDSUlET0NGTEFHUwogCSQoUVVJRVRfQVNDSUlET0MpJChUWFRfVE9fSFRNTCkgJCoudHh0CiAKIFN1Ym1pdHRpbmdQYXRjaGVzLnR4dDogU3VibWl0dGluZ1BhdGNoZXMKQEAgLTQyMyw3ICs0NDksNyBAQAogV0VCRE9DX0RFU1QgPSAvcHViL3NvZnR3YXJlL3NjbS9naXQvZG9jcwogCiBob3d0by8lLmh0bWw6IEFTQ0lJRE9DX0VYVFJBICs9IC1hIGdpdC1yZWxhdGl2ZS1odG1sLXByZWZpeD0uLi8KLSQocGF0c3Vic3QgJS50eHQsJS5odG1sLCQod2lsZGNhcmQgaG93dG8vKi50eHQpKTogJS5odG1sIDogJS50eHQKKyQocGF0c3Vic3QgJS50eHQsJS5odG1sLCQod2lsZGNhcmQgaG93dG8vKi50eHQpKTogJS5odG1sIDogJS50eHQgR0lULUFTQ0lJRE9DRkxBR1MKIAkkKFFVSUVUX0FTQ0lJRE9DKSQoUk0pICRAKyAkQCAmJiBcCiAJc2VkIC1lICcxLC9eJCQvZCcgJDwgfCBcCiAJJChUWFRfVE9fSFRNTCkgLSA+JEArICYmIFwKQEAgLTQ1Nyw0ICs0ODMsOSBAQAogbGludC1kb2NzOjoKIAkkKFFVSUVUX0xJTlQpJChQRVJMX1BBVEgpIGxpbnQtZ2l0bGluay5wZXJsCiAKK2lmZXEgKCQod2lsZGNhcmQgcG8vTWFrZWZpbGUpLHBvL01ha2VmaWxlKQorZG9jLWwxMG4gaW5zdGFsbC1sMTBuOjoKKwkkKE1BS0UpIC1DIHBvICRACitlbmRpZgorCiAuUEhPTlk6IEZPUkNFCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL015Rmlyc3RDb250cmlidXRpb24udHh0IGIvRG9jdW1lbnRhdGlvbi9NeUZpcnN0Q29udHJpYnV0aW9uLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MjcyNzRkCi0tLSAvZGV2L251bGwKKysrIGIvRG9jdW1lbnRhdGlvbi9NeUZpcnN0Q29udHJpYnV0aW9uLnR4dApAQCAtMCwwICsxLDEyMTcgQEAKK015IEZpcnN0IENvbnRyaWJ1dGlvbiB0byB0aGUgR2l0IFByb2plY3QKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKzpzZWN0YW5jaG9yczoKKworW1tzdW1tYXJ5XV0KKz09IFN1bW1hcnkKKworVGhpcyBpcyBhIHR1dG9yaWFsIGRlbW9uc3RyYXRpbmcgdGhlIGVuZC10by1lbmQgd29ya2Zsb3cgb2YgY3JlYXRpbmcgYSBjaGFuZ2UgdG8KK3RoZSBHaXQgdHJlZSwgc2VuZGluZyBpdCBmb3IgcmV2aWV3LCBhbmQgbWFraW5nIGNoYW5nZXMgYmFzZWQgb24gY29tbWVudHMuCisKK1tbcHJlcmVxdWlzaXRlc11dCis9PT0gUHJlcmVxdWlzaXRlcworCitUaGlzIHR1dG9yaWFsIGFzc3VtZXMgeW91J3JlIGFscmVhZHkgZmFpcmx5IGZhbWlsaWFyIHdpdGggdXNpbmcgR2l0IHRvIG1hbmFnZQorc291cmNlIGNvZGUuICBUaGUgR2l0IHdvcmtmbG93IHN0ZXBzIHdpbGwgbGFyZ2VseSByZW1haW4gdW5leHBsYWluZWQuCisKK1tbcmVsYXRlZC1yZWFkaW5nXV0KKz09PSBSZWxhdGVkIFJlYWRpbmcKKworVGhpcyB0dXRvcmlhbCBhaW1zIHRvIHN1bW1hcml6ZSB0aGUgZm9sbG93aW5nIGRvY3VtZW50cywgYnV0IHRoZSByZWFkZXIgbWF5IGZpbmQKK3VzZWZ1bCBhZGRpdGlvbmFsIGNvbnRleHQ6CisKKy0gYERvY3VtZW50YXRpb24vU3VibWl0dGluZ1BhdGNoZXNgCistIGBEb2N1bWVudGF0aW9uL2hvd3RvL25ldy1jb21tYW5kLnR4dGAKKworW1tnZXR0aW5nLWhlbHBdXQorPT09IEdldHRpbmcgSGVscAorCitJZiB5b3UgZ2V0IHN0dWNrLCB5b3UgY2FuIHNlZWsgaGVscCBpbiB0aGUgZm9sbG93aW5nIHBsYWNlcy4KKworPT09PSBnaXRAdmdlci5rZXJuZWwub3JnCisKK1RoaXMgaXMgdGhlIG1haW4gR2l0IHByb2plY3QgbWFpbGluZyBsaXN0IHdoZXJlIGNvZGUgcmV2aWV3cywgdmVyc2lvbgorYW5ub3VuY2VtZW50cywgZGVzaWduIGRpc2N1c3Npb25zLCBhbmQgbW9yZSB0YWtlIHBsYWNlLiBUaG9zZSBpbnRlcmVzdGVkIGluCitjb250cmlidXRpbmcgYXJlIHdlbGNvbWUgdG8gcG9zdCBxdWVzdGlvbnMgaGVyZS4gVGhlIEdpdCBsaXN0IHJlcXVpcmVzCitwbGFpbi10ZXh0LW9ubHkgZW1haWxzIGFuZCBwcmVmZXJzIGlubGluZSBhbmQgYm90dG9tLXBvc3Rpbmcgd2hlbiByZXBseWluZyB0bworbWFpbDsgeW91IHdpbGwgYmUgQ0MnZCBpbiBhbGwgcmVwbGllcyB0byB5b3UuIE9wdGlvbmFsbHksIHlvdSBjYW4gc3Vic2NyaWJlIHRvCit0aGUgbGlzdCBieSBzZW5kaW5nIGFuIGVtYWlsIHRvIG1ham9yZG9tb0B2Z2VyLmtlcm5lbC5vcmcgd2l0aCAic3Vic2NyaWJlIGdpdCIKK2luIHRoZSBib2R5LiBUaGUgaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvZ2l0W2FyY2hpdmVdIG9mIHRoaXMgbWFpbGluZyBsaXN0IGlzCithdmFpbGFibGUgdG8gdmlldyBpbiBhIGJyb3dzZXIuCisKKz09PT0gaHR0cHM6Ly9ncm91cHMuZ29vZ2xlLmNvbS9mb3J1bS8jIWZvcnVtL2dpdC1tZW50b3JpbmdbZ2l0LW1lbnRvcmluZ0Bnb29nbGVncm91cHMuY29tXQorCitUaGlzIG1haWxpbmcgbGlzdCBpcyB0YXJnZXRlZCB0byBuZXcgY29udHJpYnV0b3JzIGFuZCB3YXMgY3JlYXRlZCBhcyBhIHBsYWNlIHRvCitwb3N0IHF1ZXN0aW9ucyBhbmQgcmVjZWl2ZSBhbnN3ZXJzIG91dHNpZGUgb2YgdGhlIHB1YmxpYyBleWUgb2YgdGhlIG1haW4gbGlzdC4KK1ZldGVyYW4gY29udHJpYnV0b3JzIHdobyBhcmUgZXNwZWNpYWxseSBpbnRlcmVzdGVkIGluIGhlbHBpbmcgbWVudG9yIG5ld2NvbWVycworYXJlIHByZXNlbnQgb24gdGhlIGxpc3QuIEluIG9yZGVyIHRvIGF2b2lkIHNlYXJjaCBpbmRleGVycywgZ3JvdXAgbWVtYmVyc2hpcCBpcworcmVxdWlyZWQgdG8gdmlldyBtZXNzYWdlczsgYW55b25lIGNhbiBqb2luIGFuZCBubyBhcHByb3ZhbCBpcyByZXF1aXJlZC4KKworPT09PSBodHRwczovL3dlYmNoYXQuZnJlZW5vZGUubmV0LyNnaXQtZGV2ZWxbI2dpdC1kZXZlbF0gb24gRnJlZW5vZGUKKworVGhpcyBJUkMgY2hhbm5lbCBpcyBmb3IgY29udmVyc2F0aW9ucyBiZXR3ZWVuIEdpdCBjb250cmlidXRvcnMuIElmIHNvbWVvbmUgaXMKK2N1cnJlbnRseSBvbmxpbmUgYW5kIGtub3dzIHRoZSBhbnN3ZXIgdG8geW91ciBxdWVzdGlvbiwgeW91IGNhbiByZWNlaXZlIGhlbHAKK2luIHJlYWwgdGltZS4gT3RoZXJ3aXNlLCB5b3UgY2FuIHJlYWQgdGhlCitodHRwczovL2NvbGFidGkub3JnL2lyY2xvZ2dlci9pcmNsb2dnZXJfbG9ncy9naXQtZGV2ZWxbc2Nyb2xsYmFja10gdG8gc2VlCit3aGV0aGVyIHNvbWVvbmUgYW5zd2VyZWQgeW91LiBJUkMgZG9lcyBub3QgYWxsb3cgb2ZmbGluZSBwcml2YXRlIG1lc3NhZ2luZywgc28KK2lmIHlvdSB0cnkgdG8gcHJpdmF0ZSBtZXNzYWdlIHNvbWVvbmUgYW5kIHRoZW4gbG9nIG91dCBvZiBJUkMsIHRoZXkgY2Fubm90CityZXNwb25kIHRvIHlvdS4gSXQncyBiZXR0ZXIgdG8gYXNrIHlvdXIgcXVlc3Rpb25zIGluIHRoZSBjaGFubmVsIHNvIHRoYXQgeW91CitjYW4gYmUgYW5zd2VyZWQgaWYgeW91IGRpc2Nvbm5lY3QgYW5kIHNvIHRoYXQgb3RoZXJzIGNhbiBsZWFybiBmcm9tIHRoZQorY29udmVyc2F0aW9uLgorCitbW2dldHRpbmctc3RhcnRlZF1dCis9PSBHZXR0aW5nIFN0YXJ0ZWQKKworW1tjbG9uaW5nXV0KKz09PSBDbG9uZSB0aGUgR2l0IFJlcG9zaXRvcnkKKworR2l0IGlzIG1pcnJvcmVkIGluIGEgbnVtYmVyIG9mIGxvY2F0aW9ucy4gQ2xvbmUgdGhlIHJlcG9zaXRvcnkgZnJvbSBvbmUgb2YgdGhlbTsKK2h0dHBzOi8vZ2l0LXNjbS5jb20vZG93bmxvYWRzIHN1Z2dlc3RzIG9uZSBvZiB0aGUgYmVzdCBwbGFjZXMgdG8gY2xvbmUgZnJvbSBpcwordGhlIG1pcnJvciBvbiBHaXRIdWIuCisKKy0tLS0KKyQgZ2l0IGNsb25lIGh0dHBzOi8vZ2l0aHViLmNvbS9naXQvZ2l0IGdpdAorJCBjZCBnaXQKKy0tLS0KKworW1tkZXBlbmRlbmNpZXNdXQorPT09IEluc3RhbGxpbmcgRGVwZW5kZW5jaWVzCisKK1RvIGJ1aWxkIEdpdCBmcm9tIHNvdXJjZSwgeW91IG5lZWQgdG8gaGF2ZSBhIGhhbmRmdWwgb2YgZGVwZW5kZW5jaWVzIGluc3RhbGxlZAorb24geW91ciBzeXN0ZW0uIEZvciBhIGhpbnQgb2Ygd2hhdCdzIG5lZWRlZCwgeW91IGNhbiB0YWtlIGEgbG9vayBhdAorYElOU1RBTExgLCBwYXlpbmcgY2xvc2UgYXR0ZW50aW9uIHRvIHRoZSBzZWN0aW9uIGFib3V0IEdpdCdzIGRlcGVuZGVuY2llcyBvbgorZXh0ZXJuYWwgcHJvZ3JhbXMgYW5kIGxpYnJhcmllcy4gVGhhdCBkb2N1bWVudCBtZW50aW9ucyBhIHdheSB0byAidGVzdC1kcml2ZSIKK291ciBmcmVzaGx5IGJ1aWx0IEdpdCB3aXRob3V0IGluc3RhbGxpbmc7IHRoYXQncyB0aGUgbWV0aG9kIHdlJ2xsIGJlIHVzaW5nIGluCit0aGlzIHR1dG9yaWFsLgorCitNYWtlIHN1cmUgdGhhdCB5b3VyIGVudmlyb25tZW50IGhhcyBldmVyeXRoaW5nIHlvdSBuZWVkIGJ5IGJ1aWxkaW5nIHlvdXIgYnJhbmQKK25ldyBjbG9uZSBvZiBHaXQgZnJvbSB0aGUgYWJvdmUgc3RlcDoKKworLS0tLQorJCBtYWtlCistLS0tCisKK05PVEU6IFRoZSBHaXQgYnVpbGQgaXMgcGFyYWxsZWxpemFibGUuIGAtaiNgIGlzIG5vdCBpbmNsdWRlZCBhYm92ZSBidXQgeW91IGNhbgordXNlIGl0IGFzIHlvdSBwcmVmZXIsIGhlcmUgYW5kIGVsc2V3aGVyZS4KKworW1tpZGVudGlmeS1wcm9ibGVtXV0KKz09PSBJZGVudGlmeSBQcm9ibGVtIHRvIFNvbHZlCisKKy8vLy8KK1VzZSArIHRvIGluZGljYXRlIGZpeGVkLXdpZHRoIGhlcmU7IGNvdWxkbid0IGdldCBgIHRvIHdvcmsgbmljZWx5IHdpdGggdGhlCitxdW90ZXMgYXJvdW5kICJQb255IFNheWluZyAnVW0sIEhlbGxvJyIuCisvLy8vCitJbiB0aGlzIHR1dG9yaWFsLCB3ZSB3aWxsIGFkZCBhIG5ldyBjb21tYW5kLCArZ2l0IHBzdWgrLCBzaG9ydCBmb3IgYGBQb255IFNheWluZworYFVtLCBIZWxsbycnJyAtIGEgZmVhdHVyZSB3aGljaCBoYXMgZ29uZSB1bmltcGxlbWVudGVkIGRlc3BpdGUgYSBoaWdoIGZyZXF1ZW5jeQorb2YgaW52b2NhdGlvbiBkdXJpbmcgdXNlcnMnIHR5cGljYWwgZGFpbHkgd29ya2Zsb3cuCisKKyhXZSd2ZSBzZWVuIHNvbWUgb3RoZXIgZWZmb3J0IGluIHRoaXMgc3BhY2Ugd2l0aCB0aGUgaW1wbGVtZW50YXRpb24gb2YgcG9wdWxhcgorY29tbWFuZHMgc3VjaCBhcyBgc2xgLikKKworW1tzZXR1cC13b3Jrc3BhY2VdXQorPT09IFNldCBVcCBZb3VyIFdvcmtzcGFjZQorCitMZXQncyBzdGFydCBieSBtYWtpbmcgYSBkZXZlbG9wbWVudCBicmFuY2ggdG8gd29yayBvbiBvdXIgY2hhbmdlcy4gUGVyCitgRG9jdW1lbnRhdGlvbi9TdWJtaXR0aW5nUGF0Y2hlc2AsIHNpbmNlIGEgYnJhbmQgbmV3IGNvbW1hbmQgaXMgYSBuZXcgZmVhdHVyZSwKK2l0J3MgZmluZSB0byBiYXNlIHlvdXIgd29yayBvbiBgbWFzdGVyYC4gSG93ZXZlciwgaW4gdGhlIGZ1dHVyZSBmb3IgYnVnZml4ZXMsCitldGMuLCB5b3Ugc2hvdWxkIGNoZWNrIHRoYXQgZG9jdW1lbnQgYW5kIGJhc2UgaXQgb24gdGhlIGFwcHJvcHJpYXRlIGJyYW5jaC4KKworRm9yIHRoZSBwdXJwb3NlcyBvZiB0aGlzIGRvY3VtZW50LCB3ZSB3aWxsIGJhc2UgYWxsIG91ciB3b3JrIG9uIHRoZSBgbWFzdGVyYAorYnJhbmNoIG9mIHRoZSB1cHN0cmVhbSBwcm9qZWN0LiBDcmVhdGUgdGhlIGBwc3VoYCBicmFuY2ggeW91IHdpbGwgdXNlIGZvcgorZGV2ZWxvcG1lbnQgbGlrZSBzbzoKKworLS0tLQorJCBnaXQgY2hlY2tvdXQgLWIgcHN1aCBvcmlnaW4vbWFzdGVyCistLS0tCisKK1dlJ2xsIG1ha2UgYSBudW1iZXIgb2YgY29tbWl0cyBoZXJlIGluIG9yZGVyIHRvIGRlbW9uc3RyYXRlIGhvdyB0byBzZW5kIGEgdG9waWMKK3dpdGggbXVsdGlwbGUgcGF0Y2hlcyB1cCBmb3IgcmV2aWV3IHNpbXVsdGFuZW91c2x5LgorCitbW2NvZGUtaXQtdXBdXQorPT0gQ29kZSBJdCBVcCEKKworTk9URTogQSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gY2FuIGJlIGZvdW5kIGF0CitodHRwczovL2dpdGh1Yi5jb20vbmFzYW11ZmZpbi9naXQvdHJlZS9wc3VoLgorCitbW2FkZC1uZXctY29tbWFuZF1dCis9PT0gQWRkaW5nIGEgTmV3IENvbW1hbmQKKworTG90cyBvZiB0aGUgc3ViY29tbWFuZHMgYXJlIHdyaXR0ZW4gYXMgYnVpbHRpbnMsIHdoaWNoIG1lYW5zIHRoZXkgYXJlCitpbXBsZW1lbnRlZCBpbiBDIGFuZCBjb21waWxlZCBpbnRvIHRoZSBtYWluIGBnaXRgIGV4ZWN1dGFibGUuIEltcGxlbWVudGluZyB0aGUKK3Zlcnkgc2ltcGxlIGBwc3VoYCBjb21tYW5kIGFzIGEgYnVpbHQtaW4gd2lsbCBkZW1vbnN0cmF0ZSB0aGUgc3RydWN0dXJlIG9mIHRoZQorY29kZWJhc2UsIHRoZSBpbnRlcm5hbCBBUEksIGFuZCB0aGUgcHJvY2VzcyBvZiB3b3JraW5nIHRvZ2V0aGVyIGFzIGEgY29udHJpYnV0b3IKK3dpdGggdGhlIHJldmlld2VycyBhbmQgbWFpbnRhaW5lciB0byBpbnRlZ3JhdGUgdGhpcyBjaGFuZ2UgaW50byB0aGUgc3lzdGVtLgorCitCdWlsdC1pbiBzdWJjb21tYW5kcyBhcmUgdHlwaWNhbGx5IGltcGxlbWVudGVkIGluIGEgZnVuY3Rpb24gbmFtZWQgImNtZF8iCitmb2xsb3dlZCBieSB0aGUgbmFtZSBvZiB0aGUgc3ViY29tbWFuZCwgaW4gYSBzb3VyY2UgZmlsZSBuYW1lZCBhZnRlciB0aGUKK3N1YmNvbW1hbmQgYW5kIGNvbnRhaW5lZCB3aXRoaW4gYGJ1aWx0aW4vYC4gU28gaXQgbWFrZXMgc2Vuc2UgdG8gaW1wbGVtZW50IHlvdXIKK2NvbW1hbmQgaW4gYGJ1aWx0aW4vcHN1aC5jYC4gQ3JlYXRlIHRoYXQgZmlsZSwgYW5kIHdpdGhpbiBpdCwgd3JpdGUgdGhlIGVudHJ5Citwb2ludCBmb3IgeW91ciBjb21tYW5kIGluIGEgZnVuY3Rpb24gbWF0Y2hpbmcgdGhlIHN0eWxlIGFuZCBzaWduYXR1cmU6CisKKy0tLS0KK2ludCBjbWRfcHN1aChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKKy0tLS0KKworV2UnbGwgYWxzbyBuZWVkIHRvIGFkZCB0aGUgZGVjbGFyYXRpb24gb2YgcHN1aDsgb3BlbiB1cCBgYnVpbHRpbi5oYCwgZmluZCB0aGUKK2RlY2xhcmF0aW9uIGZvciBgY21kX3B1bGxgLCBhbmQgYWRkIGEgbmV3IGxpbmUgZm9yIGBwc3VoYCBpbW1lZGlhdGVseSBiZWZvcmUgaXQsCitpbiBvcmRlciB0byBrZWVwIHRoZSBkZWNsYXJhdGlvbnMgYWxwaGFiZXRpY2FsbHkgc29ydGVkOgorCistLS0tCitpbnQgY21kX3BzdWgoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworLS0tLQorCitCZSBzdXJlIHRvIGAjaW5jbHVkZSAiYnVpbHRpbi5oImAgaW4geW91ciBgcHN1aC5jYC4KKworR28gYWhlYWQgYW5kIGFkZCBzb21lIHRocm93YXdheSBwcmludGYgdG8gdGhhdCBmdW5jdGlvbi4gVGhpcyBpcyBhIGRlY2VudAorc3RhcnRpbmcgcG9pbnQgYXMgd2UgY2FuIG5vdyBhZGQgYnVpbGQgcnVsZXMgYW5kIHJlZ2lzdGVyIHRoZSBjb21tYW5kLgorCitOT1RFOiBZb3VyIHRocm93YXdheSB0ZXh0LCBhcyB3ZWxsIGFzIG11Y2ggb2YgdGhlIHRleHQgeW91IHdpbGwgYmUgYWRkaW5nIG92ZXIKK3RoZSBjb3Vyc2Ugb2YgdGhpcyB0dXRvcmlhbCwgaXMgdXNlci1mYWNpbmcuIFRoYXQgbWVhbnMgaXQgbmVlZHMgdG8gYmUKK2xvY2FsaXphYmxlLiBUYWtlIGEgbG9vayBhdCBgcG8vUkVBRE1FYCB1bmRlciAiTWFya2luZyBzdHJpbmdzIGZvciB0cmFuc2xhdGlvbiIuCitUaHJvdWdob3V0IHRoZSB0dXRvcmlhbCwgd2Ugd2lsbCBtYXJrIHN0cmluZ3MgZm9yIHRyYW5zbGF0aW9uIGFzIG5lY2Vzc2FyeTsgeW91CitzaG91bGQgYWxzbyBkbyBzbyB3aGVuIHdyaXRpbmcgeW91ciB1c2VyLWZhY2luZyBjb21tYW5kcyBpbiB0aGUgZnV0dXJlLgorCistLS0tCitpbnQgY21kX3BzdWgoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCit7CisJcHJpbnRmKF8oIlBvbnkgc2F5aW5nIGhlbGxvIGdvZXMgaGVyZS5cbiIpKTsKKwlyZXR1cm4gMDsKK30KKy0tLS0KKworTGV0J3MgdHJ5IHRvIGJ1aWxkIGl0LiAgT3BlbiBgTWFrZWZpbGVgLCBmaW5kIHdoZXJlIGBidWlsdGluL3B1bGwub2AgaXMgYWRkZWQKK3RvIGBCVUlMVElOX09CSlNgLCBhbmQgYWRkIGBidWlsdGluL3BzdWgub2AgaW4gdGhlIHNhbWUgd2F5IG5leHQgdG8gaXQgaW4KK2FscGhhYmV0aWNhbCBvcmRlci4gT25jZSB5b3UndmUgZG9uZSBzbywgbW92ZSB0byB0aGUgdG9wLWxldmVsIGRpcmVjdG9yeSBhbmQKK2J1aWxkIHNpbXBseSB3aXRoIGBtYWtlYC4gQWxzbyBhZGQgdGhlIGBERVZFTE9QRVI9MWAgdmFyaWFibGUgdG8gdHVybiBvbgorc29tZSBhZGRpdGlvbmFsIHdhcm5pbmdzOgorCistLS0tCiskIGVjaG8gREVWRUxPUEVSPTEgPmNvbmZpZy5tYWsKKyQgbWFrZQorLS0tLQorCitOT1RFOiBXaGVuIHlvdSBhcmUgZGV2ZWxvcGluZyB0aGUgR2l0IHByb2plY3QsIGl0J3MgcHJlZmVycmVkIHRoYXQgeW91IHVzZSB0aGUKK2BERVZFTE9QRVJgIGZsYWc7IGlmIHRoZXJlJ3Mgc29tZSByZWFzb24gaXQgZG9lc24ndCB3b3JrIGZvciB5b3UsIHlvdSBjYW4gdHVybgoraXQgb2ZmLCBidXQgaXQncyBhIGdvb2QgaWRlYSB0byBtZW50aW9uIHRoZSBwcm9ibGVtIHRvIHRoZSBtYWlsaW5nIGxpc3QuCisKK0dyZWF0LCBub3cgeW91ciBuZXcgY29tbWFuZCBidWlsZHMgaGFwcGlseSBvbiBpdHMgb3duLiBCdXQgbm9ib2R5IGludm9rZXMgaXQuCitMZXQncyBjaGFuZ2UgdGhhdC4KKworVGhlIGxpc3Qgb2YgY29tbWFuZHMgbGl2ZXMgaW4gYGdpdC5jYC4gV2UgY2FuIHJlZ2lzdGVyIGEgbmV3IGNvbW1hbmQgYnkgYWRkaW5nCithIGBjbWRfc3RydWN0YCB0byB0aGUgYGNvbW1hbmRzW11gIGFycmF5LiBgc3RydWN0IGNtZF9zdHJ1Y3RgIHRha2VzIGEgc3RyaW5nCit3aXRoIHRoZSBjb21tYW5kIG5hbWUsIGEgZnVuY3Rpb24gcG9pbnRlciB0byB0aGUgY29tbWFuZCBpbXBsZW1lbnRhdGlvbiwgYW5kIGEKK3NldHVwIG9wdGlvbiBmbGFnLiBGb3Igbm93LCBsZXQncyBrZWVwIG1pbWlja2luZyBgcHVzaGAuIEZpbmQgdGhlIGxpbmUgd2hlcmUKK2BjbWRfcHVzaGAgaXMgcmVnaXN0ZXJlZCwgY29weSBpdCwgYW5kIG1vZGlmeSBpdCBmb3IgYGNtZF9wc3VoYCwgcGxhY2luZyB0aGUgbmV3CitsaW5lIGluIGFscGhhYmV0aWNhbCBvcmRlciAoaW1tZWRpYXRlbHkgYmVmb3JlIGBjbWRfcHVsbGApLgorCitUaGUgb3B0aW9ucyBhcmUgZG9jdW1lbnRlZCBpbiBgYnVpbHRpbi5oYCB1bmRlciAiQWRkaW5nIGEgbmV3IGJ1aWx0LWluLiIgU2luY2UKK3dlIGhvcGUgdG8gcHJpbnQgc29tZSBkYXRhIGFib3V0IHRoZSB1c2VyJ3MgY3VycmVudCB3b3Jrc3BhY2UgY29udGV4dCBsYXRlciwKK3dlIG5lZWQgYSBHaXQgZGlyZWN0b3J5LCBzbyBjaG9vc2UgYFJVTl9TRVRVUGAgYXMgeW91ciBvbmx5IG9wdGlvbi4KKworR28gYWhlYWQgYW5kIGJ1aWxkIGFnYWluLiBZb3Ugc2hvdWxkIHNlZSBhIGNsZWFuIGJ1aWxkLCBzbyBsZXQncyBraWNrIHRoZSB0aXJlcworYW5kIHNlZSBpZiBpdCB3b3Jrcy4gVGhlcmUncyBhIGJpbmFyeSB5b3UgY2FuIHVzZSB0byB0ZXN0IHdpdGggaW4gdGhlCitgYmluLXdyYXBwZXJzYCBkaXJlY3RvcnkuCisKKy0tLS0KKyQgLi9iaW4td3JhcHBlcnMvZ2l0IHBzdWgKKy0tLS0KKworQ2hlY2sgaXQgb3V0ISBZb3UndmUgZ290IGEgY29tbWFuZCEgTmljZSB3b3JrISBMZXQncyBjb21taXQgdGhpcy4KKworYGdpdCBzdGF0dXNgIHJldmVhbHMgbW9kaWZpZWQgYE1ha2VmaWxlYCwgYGJ1aWx0aW4uaGAsIGFuZCBgZ2l0LmNgIGFzIHdlbGwgYXMKK3VudHJhY2tlZCBgYnVpbHRpbi9wc3VoLmNgIGFuZCBgZ2l0LXBzdWhgLiBGaXJzdCwgbGV0J3MgdGFrZSBjYXJlIG9mIHRoZSBiaW5hcnksCit3aGljaCBzaG91bGQgYmUgaWdub3JlZC4gT3BlbiBgLmdpdGlnbm9yZWAgaW4geW91ciBlZGl0b3IsIGZpbmQgYC9naXQtcHVsbGAsIGFuZAorYWRkIGFuIGVudHJ5IGZvciB5b3VyIG5ldyBjb21tYW5kIGluIGFscGhhYmV0aWNhbCBvcmRlcjoKKworLS0tLQorLi4uCisvZ2l0LXBydW5lLXBhY2tlZAorL2dpdC1wc3VoCisvZ2l0LXB1bGwKKy9naXQtcHVzaAorL2dpdC1xdWlsdGltcG9ydAorL2dpdC1yYW5nZS1kaWZmCisuLi4KKy0tLS0KKworQ2hlY2tpbmcgYGdpdCBzdGF0dXNgIGFnYWluIHNob3VsZCBzaG93IHRoYXQgYGdpdC1wc3VoYCBoYXMgYmVlbiByZW1vdmVkIGZyb20KK3RoZSB1bnRyYWNrZWQgbGlzdCBhbmQgYC5naXRpZ25vcmVgIGhhcyBiZWVuIGFkZGVkIHRvIHRoZSBtb2RpZmllZCBsaXN0LiBOb3cgd2UKK2NhbiBzdGFnZSBhbmQgY29tbWl0OgorCistLS0tCiskIGdpdCBhZGQgTWFrZWZpbGUgYnVpbHRpbi5oIGJ1aWx0aW4vcHN1aC5jIGdpdC5jIC5naXRpZ25vcmUKKyQgZ2l0IGNvbW1pdCAtcworLS0tLQorCitZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCB5b3VyIGVkaXRvciBpbiBvcmRlciB0byB3cml0ZSBhIGNvbW1pdCBtZXNzYWdlLiBTdGFydAordGhlIGNvbW1pdCB3aXRoIGEgNTAtY29sdW1uIG9yIGxlc3Mgc3ViamVjdCBsaW5lLCBpbmNsdWRpbmcgdGhlIG5hbWUgb2YgdGhlCitjb21wb25lbnQgeW91J3JlIHdvcmtpbmcgb24sIGZvbGxvd2VkIGJ5IGEgYmxhbmsgbGluZSAoYWx3YXlzIHJlcXVpcmVkKSBhbmQgdGhlbgordGhlIGJvZHkgb2YgeW91ciBjb21taXQgbWVzc2FnZSwgd2hpY2ggc2hvdWxkIHByb3ZpZGUgdGhlIGJ1bGsgb2YgdGhlIGNvbnRleHQuCitSZW1lbWJlciB0byBiZSBleHBsaWNpdCBhbmQgcHJvdmlkZSB0aGUgIldoeSIgb2YgeW91ciBjaGFuZ2UsIGVzcGVjaWFsbHkgaWYgaXQKK2NvdWxkbid0IGVhc2lseSBiZSB1bmRlcnN0b29kIGZyb20geW91ciBkaWZmLiBXaGVuIGVkaXRpbmcgeW91ciBjb21taXQgbWVzc2FnZSwKK2Rvbid0IHJlbW92ZSB0aGUgU2lnbmVkLW9mZi1ieSBsaW5lIHdoaWNoIHdhcyBhZGRlZCBieSBgLXNgIGFib3ZlLgorCistLS0tCitwc3VoOiBhZGQgYSBidWlsdC1pbiBieSBwb3B1bGFyIGRlbWFuZAorCitJbnRlcm5hbCBtZXRyaWNzIGluZGljYXRlIHRoaXMgaXMgYSBjb21tYW5kIG1hbnkgdXNlcnMgZXhwZWN0IHRvIGJlCitwcmVzZW50LiBTbyBoZXJlJ3MgYW4gaW1wbGVtZW50YXRpb24gdG8gaGVscCBkcml2ZSBjdXN0b21lcgorc2F0aXNmYWN0aW9uIGFuZCBlbmdhZ2VtZW50OiBhIHBvbnkgd2hpY2ggZG91YnRmdWxseSBncmVldHMgdGhlIHVzZXIsCitvciwgYSBQb255IFNheWluZyAiVW0sIEhlbGxvIiAoUFNVSCkuCisKK1RoaXMgY29tbWl0IG1lc3NhZ2UgaXMgaW50ZW50aW9uYWxseSBmb3JtYXR0ZWQgdG8gNzIgY29sdW1ucyBwZXIgbGluZSwKK3N0YXJ0cyB3aXRoIGEgc2luZ2xlIGxpbmUgYXMgImNvbW1pdCBtZXNzYWdlIHN1YmplY3QiIHRoYXQgaXMgd3JpdHRlbiBhcworaWYgdG8gY29tbWFuZCB0aGUgY29kZWJhc2UgdG8gZG8gc29tZXRoaW5nIChhZGQgdGhpcywgdGVhY2ggYSBjb21tYW5kCit0aGF0KS4gVGhlIGJvZHkgb2YgdGhlIG1lc3NhZ2UgaXMgZGVzaWduZWQgdG8gYWRkIGluZm9ybWF0aW9uIGFib3V0IHRoZQorY29tbWl0IHRoYXQgaXMgbm90IHJlYWRpbHkgZGVkdWNlZCBmcm9tIHJlYWRpbmcgdGhlIGFzc29jaWF0ZWQgZGlmZiwKK3N1Y2ggYXMgYW5zd2VyaW5nIHRoZSBxdWVzdGlvbiAid2h5PyIuCisKK1NpZ25lZC1vZmYtYnk6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CistLS0tCisKK0dvIGFoZWFkIGFuZCBpbnNwZWN0IHlvdXIgbmV3IGNvbW1pdCB3aXRoIGBnaXQgc2hvd2AuICJwc3VoOiIgaW5kaWNhdGVzIHlvdQoraGF2ZSBtb2RpZmllZCBtYWlubHkgdGhlIGBwc3VoYCBjb21tYW5kLiBUaGUgc3ViamVjdCBsaW5lIGdpdmVzIHJlYWRlcnMgYW4gaWRlYQorb2Ygd2hhdCB5b3UndmUgY2hhbmdlZC4gVGhlIHNpZ24tb2ZmIGxpbmUgKGAtc2ApIGluZGljYXRlcyB0aGF0IHlvdSBhZ3JlZSB0bwordGhlIERldmVsb3BlcidzIENlcnRpZmljYXRlIG9mIE9yaWdpbiAxLjEgKHNlZSB0aGUKK2BEb2N1bWVudGF0aW9uL1N1Ym1pdHRpbmdQYXRjaGVzYCArKytbW2Rjb11dKysrIGhlYWRlcikuCisKK0ZvciB0aGUgcmVtYWluZGVyIG9mIHRoZSB0dXRvcmlhbCwgdGhlIHN1YmplY3QgbGluZSBvbmx5IHdpbGwgYmUgbGlzdGVkIGZvciB0aGUKK3Nha2Ugb2YgYnJldml0eS4gSG93ZXZlciwgZnVsbHktZmxlc2hlZCBleGFtcGxlIGNvbW1pdCBtZXNzYWdlcyBhcmUgYXZhaWxhYmxlCitvbiB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGxpbmtlZCBhdCB0aGUgdG9wIG9mIHRoaXMgZG9jdW1lbnQuCisKK1tbaW1wbGVtZW50YXRpb25dXQorPT09IEltcGxlbWVudGF0aW9uCisKK0l0J3MgcHJvYmFibHkgdXNlZnVsIHRvIGRvIGF0IGxlYXN0IHNvbWV0aGluZyBiZXNpZGVzIHByaW50aW5nIG91dCBhIHN0cmluZy4KK0xldCdzIHN0YXJ0IGJ5IGhhdmluZyBhIGxvb2sgYXQgZXZlcnl0aGluZyB3ZSBnZXQuCisKK01vZGlmeSB5b3VyIGBjbWRfcHN1aGAgaW1wbGVtZW50YXRpb24gdG8gZHVtcCB0aGUgYXJncyB5b3UncmUgcGFzc2VkLCBrZWVwaW5nCitleGlzdGluZyBgcHJpbnRmKClgIGNhbGxzIGluIHBsYWNlOgorCistLS0tCisJaW50IGk7CisKKwkuLi4KKworCXByaW50ZihRXygiWW91ciBhcmdzICh0aGVyZSBpcyAlZCk6XG4iLAorCQkgICJZb3VyIGFyZ3MgKHRoZXJlIGFyZSAlZCk6XG4iLAorCQkgIGFyZ2MpLAorCSAgICAgICBhcmdjKTsKKwlmb3IgKGkgPSAwOyBpIDwgYXJnYzsgaSsrKQorCQlwcmludGYoIiVkOiAlc1xuIiwgaSwgYXJndltpXSk7CisKKwlwcmludGYoXygiWW91ciBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5OlxuPHRvcC1sZXZlbD4lcyVzXG4iKSwKKwkgICAgICAgcHJlZml4ID8gIi8iIDogIiIsIHByZWZpeCA/IHByZWZpeCA6ICIiKTsKKworLS0tLQorCitCdWlsZCBhbmQgdHJ5IGl0LiBBcyB5b3UgbWF5IGV4cGVjdCwgdGhlcmUncyBwcmV0dHkgbXVjaCBqdXN0IHdoYXRldmVyIHdlIGdpdmUKK29uIHRoZSBjb21tYW5kIGxpbmUsIGluY2x1ZGluZyB0aGUgbmFtZSBvZiBvdXIgY29tbWFuZC4gKElmIGBwcmVmaXhgIGlzIGVtcHR5Citmb3IgeW91LCB0cnkgYGNkIERvY3VtZW50YXRpb24vICYmIC4uL2Jpbi13cmFwcGVycy9naXQgcHN1aGApLiBUaGF0J3Mgbm90IHNvCitoZWxwZnVsLiBTbyB3aGF0IG90aGVyIGNvbnRleHQgY2FuIHdlIGdldD8KKworQWRkIGEgbGluZSB0byBgI2luY2x1ZGUgImNvbmZpZy5oImAuIFRoZW4sIGFkZCB0aGUgZm9sbG93aW5nIGJpdHMgdG8gdGhlCitmdW5jdGlvbiBib2R5OgorCistLS0tCisJY29uc3QgY2hhciAqY2ZnX25hbWU7CisKKy4uLgorCisJZ2l0X2NvbmZpZyhnaXRfZGVmYXVsdF9jb25maWcsIE5VTEwpOworCWlmIChnaXRfY29uZmlnX2dldF9zdHJpbmdfY29uc3QoInVzZXIubmFtZSIsICZjZmdfbmFtZSkgPiAwKQorCQlwcmludGYoXygiTm8gbmFtZSBpcyBmb3VuZCBpbiBjb25maWdcbiIpKTsKKwllbHNlCisJCXByaW50ZihfKCJZb3VyIG5hbWU6ICVzXG4iKSwgY2ZnX25hbWUpOworLS0tLQorCitgZ2l0X2NvbmZpZygpYCB3aWxsIGdyYWIgdGhlIGNvbmZpZ3VyYXRpb24gZnJvbSBjb25maWcgZmlsZXMga25vd24gdG8gR2l0IGFuZAorYXBwbHkgc3RhbmRhcmQgcHJlY2VkZW5jZSBydWxlcy4gYGdpdF9jb25maWdfZ2V0X3N0cmluZ19jb25zdCgpYCB3aWxsIGxvb2sgdXAKK2Egc3BlY2lmaWMga2V5ICgidXNlci5uYW1lIikgYW5kIGdpdmUgeW91IHRoZSB2YWx1ZS4gVGhlcmUgYXJlIGEgbnVtYmVyIG9mCitzaW5nbGUta2V5IGxvb2t1cCBmdW5jdGlvbnMgbGlrZSB0aGlzIG9uZTsgeW91IGNhbiBzZWUgdGhlbSBhbGwgKGFuZCBtb3JlIGluZm8KK2Fib3V0IGhvdyB0byB1c2UgYGdpdF9jb25maWcoKWApIGluIGBEb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktY29uZmlnLnR4dGAuCisKK1lvdSBzaG91bGQgc2VlIHRoYXQgdGhlIG5hbWUgcHJpbnRlZCBtYXRjaGVzIHRoZSBvbmUgeW91IHNlZSB3aGVuIHlvdSBydW46CisKKy0tLS0KKyQgZ2l0IGNvbmZpZyAtLWdldCB1c2VyLm5hbWUKKy0tLS0KKworR3JlYXQhIE5vdyB3ZSBrbm93IGhvdyB0byBjaGVjayBmb3IgdmFsdWVzIGluIHRoZSBHaXQgY29uZmlnLiBMZXQncyBjb21taXQgdGhpcwordG9vLCBzbyB3ZSBkb24ndCBsb3NlIG91ciBwcm9ncmVzcy4KKworLS0tLQorJCBnaXQgYWRkIGJ1aWx0aW4vcHN1aC5jCiskIGdpdCBjb21taXQgLXNtICJwc3VoOiBzaG93IHBhcmFtZXRlcnMgJiBjb25maWcgb3B0cyIKKy0tLS0KKworTk9URTogQWdhaW4sIHRoZSBhYm92ZSBpcyBmb3Igc2FrZSBvZiBicmV2aXR5IGluIHRoaXMgdHV0b3JpYWwuIEluIGEgcmVhbCBjaGFuZ2UKK3lvdSBzaG91bGQgbm90IHVzZSBgLW1gIGJ1dCBpbnN0ZWFkIHVzZSB0aGUgZWRpdG9yIHRvIHdyaXRlIGEgbWVhbmluZ2Z1bAorbWVzc2FnZS4KKworU3RpbGwsIGl0J2QgYmUgbmljZSB0byBrbm93IHdoYXQgdGhlIHVzZXIncyB3b3JraW5nIGNvbnRleHQgaXMgbGlrZS4gTGV0J3Mgc2VlCitpZiB3ZSBjYW4gcHJpbnQgdGhlIG5hbWUgb2YgdGhlIHVzZXIncyBjdXJyZW50IGJyYW5jaC4gV2UgY2FuIG1pbWljIHRoZQorYGdpdCBzdGF0dXNgIGltcGxlbWVudGF0aW9uOyB0aGUgcHJpbnRlciBpcyBsb2NhdGVkIGluIGB3dC1zdGF0dXMuY2AgYW5kIHdlIGNhbgorc2VlIHRoYXQgdGhlIGJyYW5jaCBpcyBoZWxkIGluIGEgYHN0cnVjdCB3dF9zdGF0dXNgLgorCitgd3Rfc3RhdHVzX3ByaW50KClgIGdldHMgaW52b2tlZCBieSBgY21kX3N0YXR1cygpYCBpbiBgYnVpbHRpbi9jb21taXQuY2AuCitMb29raW5nIGF0IHRoYXQgaW1wbGVtZW50YXRpb24gd2Ugc2VlIHRoZSBzdGF0dXMgY29uZmlnIGJlaW5nIHBvcHVsYXRlZCBsaWtlIHNvOgorCistLS0tCitzdGF0dXNfaW5pdF9jb25maWcoJnMsIGdpdF9zdGF0dXNfY29uZmlnKTsKKy0tLS0KKworQnV0IGFzIHdlIGRyaWxsIGRvd24sIHdlIGNhbiBmaW5kIHRoYXQgYHN0YXR1c19pbml0X2NvbmZpZygpYCB3cmFwcyBhIGNhbGwKK3RvIGBnaXRfY29uZmlnKClgLiBMZXQncyBtb2RpZnkgdGhlIGNvZGUgd2Ugd3JvdGUgaW4gdGhlIHByZXZpb3VzIGNvbW1pdC4KKworQmUgc3VyZSB0byBpbmNsdWRlIHRoZSBoZWFkZXIgdG8gYWxsb3cgeW91IHRvIHVzZSBgc3RydWN0IHd0X3N0YXR1c2A6CistLS0tCisjaW5jbHVkZSAid3Qtc3RhdHVzLmgiCistLS0tCisKK1RoZW4gbW9kaWZ5IHlvdXIgYGNtZF9wc3VoYCBpbXBsZW1lbnRhdGlvbiB0byBkZWNsYXJlIHlvdXIgYHN0cnVjdCB3dF9zdGF0dXNgLAorcHJlcGFyZSBpdCwgYW5kIHByaW50IGl0cyBjb250ZW50czoKKworLS0tLQorCXN0cnVjdCB3dF9zdGF0dXMgc3RhdHVzOworCisuLi4KKworCXd0X3N0YXR1c19wcmVwYXJlKHRoZV9yZXBvc2l0b3J5LCAmc3RhdHVzKTsKKwlnaXRfY29uZmlnKGdpdF9kZWZhdWx0X2NvbmZpZywgJnN0YXR1cyk7CisKKy4uLgorCisJcHJpbnRmKF8oIllvdXIgY3VycmVudCBicmFuY2g6ICVzXG4iKSwgc3RhdHVzLmJyYW5jaCk7CistLS0tCisKK1J1biBpdCBhZ2Fpbi4gQ2hlY2sgaXQgb3V0IC0gaGVyZSdzIHRoZSAodmVyYm9zZSkgbmFtZSBvZiB5b3VyIGN1cnJlbnQgYnJhbmNoIQorCitMZXQncyBjb21taXQgdGhpcyBhcyB3ZWxsLgorCistLS0tCiskIGdpdCBhZGQgYnVpbHRpbi9wc3VoLmMKKyQgZ2l0IGNvbW1pdCAtc20gInBzdWg6IHByaW50IHRoZSBjdXJyZW50IGJyYW5jaCIKKy0tLS0KKworTm93IGxldCdzIHNlZSBpZiB3ZSBjYW4gZ2V0IHNvbWUgaW5mbyBhYm91dCBhIHNwZWNpZmljIGNvbW1pdC4KKworTHVja2lseSwgdGhlcmUgYXJlIHNvbWUgaGVscGVycyBmb3IgdXMgaGVyZS4gYGNvbW1pdC5oYCBoYXMgYSBmdW5jdGlvbiBjYWxsZWQKK2Bsb29rdXBfY29tbWl0X3JlZmVyZW5jZV9ieV9uYW1lYCB0byB3aGljaCB3ZSBjYW4gc2ltcGx5IHByb3ZpZGUgYSBoYXJkY29kZWQKK3N0cmluZzsgYHByZXR0eS5oYCBoYXMgYW4gZXh0cmVtZWx5IGhhbmR5IGBwcF9jb21taXRfZWFzeSgpYCBjYWxsIHdoaWNoIGRvZXNuJ3QKK3JlcXVpcmUgYSBmdWxsIGZvcm1hdCBvYmplY3QgdG8gYmUgcGFzc2VkLgorCitBZGQgdGhlIGZvbGxvd2luZyBpbmNsdWRlczoKKworLS0tLQorI2luY2x1ZGUgImNvbW1pdC5oIgorI2luY2x1ZGUgInByZXR0eS5oIgorLS0tLQorCitUaGVuLCBhZGQgdGhlIGZvbGxvd2luZyBsaW5lcyB3aXRoaW4geW91ciBpbXBsZW1lbnRhdGlvbiBvZiBgY21kX3BzdWgoKWAgbmVhcgordGhlIGRlY2xhcmF0aW9ucyBhbmQgdGhlIGxvZ2ljLCByZXNwZWN0aXZlbHkuCisKKy0tLS0KKwlzdHJ1Y3QgY29tbWl0ICpjID0gTlVMTDsKKwlzdHJ1Y3Qgc3RyYnVmIGNvbW1pdGxpbmUgPSBTVFJCVUZfSU5JVDsKKworLi4uCisKKwljID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfYnlfbmFtZSgib3JpZ2luL21hc3RlciIpOworCisJaWYgKGMgIT0gTlVMTCkgeworCQlwcF9jb21taXRfZWFzeShDTUlUX0ZNVF9PTkVMSU5FLCBjLCAmY29tbWl0bGluZSk7CisJCXByaW50ZihfKCJDdXJyZW50IGNvbW1pdDogJXNcbiIpLCBjb21taXRsaW5lLmJ1Zik7CisJfQorLS0tLQorCitUaGUgYHN0cnVjdCBzdHJidWZgIHByb3ZpZGVzIHNvbWUgc2FmZXR5IGJlbHRzIHRvIHlvdXIgYmFzaWMgYGNoYXIqYCwgb25lIG9mCit3aGljaCBpcyBhIGxlbmd0aCBtZW1iZXIgdG8gcHJldmVudCBidWZmZXIgb3ZlcnJ1bnMuIEl0IG5lZWRzIHRvIGJlIGluaXRpYWxpemVkCituaWNlbHkgd2l0aCBgU1RSQlVGX0lOSVRgLiBLZWVwIGl0IGluIG1pbmQgd2hlbiB5b3UgbmVlZCB0byBwYXNzIGFyb3VuZCBgY2hhcipgLgorCitgbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfYnlfbmFtZWAgcmVzb2x2ZXMgdGhlIG5hbWUgeW91IHBhc3MgaXQsIHNvIHlvdSBjYW4gcGxheQord2l0aCB0aGUgdmFsdWUgdGhlcmUgYW5kIHNlZSB3aGF0IGtpbmQgb2YgdGhpbmdzIHlvdSBjYW4gY29tZSB1cCB3aXRoLgorCitgcHBfY29tbWl0X2Vhc3lgIGlzIGEgY29udmVuaWVuY2Ugd3JhcHBlciBpbiBgcHJldHR5LmhgIHRoYXQgdGFrZXMgYSBzaW5nbGUKK2Zvcm1hdCBlbnVtIHNob3J0aGFuZCwgcmF0aGVyIHRoYW4gYW4gZW50aXJlIGZvcm1hdCBzdHJ1Y3QuIEl0IHRoZW4KK3ByZXR0eS1wcmludHMgdGhlIGNvbW1pdCBhY2NvcmRpbmcgdG8gdGhhdCBzaG9ydGhhbmQuIFRoZXNlIGFyZSBzaW1pbGFyIHRvIHRoZQorZm9ybWF0cyBhdmFpbGFibGUgd2l0aCBgLS1wcmV0dHk9Rk9PYCBpbiBtYW55IEdpdCBjb21tYW5kcy4KKworQnVpbGQgaXQgYW5kIHJ1biwgYW5kIGlmIHlvdSdyZSB1c2luZyB0aGUgc2FtZSBuYW1lIGluIHRoZSBleGFtcGxlLCB5b3Ugc2hvdWxkCitzZWUgdGhlIHN1YmplY3QgbGluZSBvZiB0aGUgbW9zdCByZWNlbnQgY29tbWl0IGluIGBvcmlnaW4vbWFzdGVyYCB0aGF0IHlvdSBrbm93CithYm91dC4gTmVhdCEgTGV0J3MgY29tbWl0IHRoYXQgYXMgd2VsbC4KKworLS0tLQorJCBnaXQgYWRkIGJ1aWx0aW4vcHN1aC5jCiskIGdpdCBjb21taXQgLXNtICJwc3VoOiBkaXNwbGF5IHRoZSB0b3Agb2Ygb3JpZ2luL21hc3RlciIKKy0tLS0KKworW1thZGQtZG9jdW1lbnRhdGlvbl1dCis9PT0gQWRkaW5nIERvY3VtZW50YXRpb24KKworQXdlc29tZSEgWW91J3ZlIGdvdCBhIGZhbnRhc3RpYyBuZXcgY29tbWFuZCB0aGF0IHlvdSdyZSByZWFkeSB0byBzaGFyZSB3aXRoIHRoZQorY29tbXVuaXR5LiBCdXQgaGFuZyBvbiBqdXN0IGEgbWludXRlIC0gdGhpcyBpc24ndCB2ZXJ5IHVzZXItZnJpZW5kbHkuIFJ1biB0aGUKK2ZvbGxvd2luZzoKKworLS0tLQorJCAuL2Jpbi13cmFwcGVycy9naXQgaGVscCBwc3VoCistLS0tCisKK1lvdXIgbmV3IGNvbW1hbmQgaXMgdW5kb2N1bWVudGVkISBMZXQncyBmaXggdGhhdC4KKworVGFrZSBhIGxvb2sgYXQgYERvY3VtZW50YXRpb24vZ2l0LSoudHh0YC4gVGhlc2UgYXJlIHRoZSBtYW5wYWdlcyBmb3IgdGhlCitzdWJjb21tYW5kcyB0aGF0IEdpdCBrbm93cyBhYm91dC4gWW91IGNhbiBvcGVuIHRoZXNlIHVwIGFuZCB0YWtlIGEgbG9vayB0byBnZXQKK2FjcXVhaW50ZWQgd2l0aCB0aGUgZm9ybWF0LCBidXQgdGhlbiBnbyBhaGVhZCBhbmQgbWFrZSBhIG5ldyBmaWxlCitgRG9jdW1lbnRhdGlvbi9naXQtcHN1aC50eHRgLiBMaWtlIHdpdGggbW9zdCBvZiB0aGUgZG9jdW1lbnRhdGlvbiBpbiB0aGUgR2l0Citwcm9qZWN0LCBoZWxwIHBhZ2VzIGFyZSB3cml0dGVuIHdpdGggQXNjaWlEb2MgKHNlZSBDb2RpbmdHdWlkZWxpbmVzLCAiV3JpdGluZworRG9jdW1lbnRhdGlvbiIgc2VjdGlvbikuIFVzZSB0aGUgZm9sbG93aW5nIHRlbXBsYXRlIHRvIGZpbGwgb3V0IHlvdXIgb3duCittYW5wYWdlOgorCisvLyBTdXJwcmlzaW5nbHkgZGlmZmljdWx0IHRvIGVtYmVkIEFzY2lpRG9jIHNvdXJjZSB3aXRoaW4gQXNjaWlEb2MuCitbbGlzdGluZ10KKy4uLi4KK2dpdC1wc3VoKDEpCis9PT09PT09PT09PQorCitOQU1FCistLS0tCitnaXQtcHN1aCAtIERlbGlnaHQgdXNlcnMnIHR5cG8gd2l0aCBhIHNoeSBob3JzZQorCisKK1NZTk9QU0lTCistLS0tLS0tLQorW3ZlcnNlXQorJ2dpdC1wc3VoIFs8YXJnPi4uLl0nCisKK0RFU0NSSVBUSU9OCistLS0tLS0tLS0tLQorLi4uCisKK09QVElPTlNbW09QVElPTlNdXQorLS0tLS0tLS0tLS0tLS0tLS0tCisuLi4KKworT1VUUFVUCistLS0tLS0KKy4uLgorCitHSVQKKy0tLQorUGFydCBvZiB0aGUgbGlua2dpdDpnaXRbMV0gc3VpdGUKKy4uLi4KKworVGhlIG1vc3QgaW1wb3J0YW50IHBpZWNlcyBvZiB0aGlzIHRvIG5vdGUgYXJlIHRoZSBmaWxlIGhlYWRlciwgdW5kZXJsaW5lZCBieSA9LAordGhlIE5BTUUgc2VjdGlvbiwgYW5kIHRoZSBTWU5PUFNJUywgd2hpY2ggd291bGQgbm9ybWFsbHkgY29udGFpbiB0aGUgZ3JhbW1hciBpZgoreW91ciBjb21tYW5kIHRvb2sgYXJndW1lbnRzLiBUcnkgdG8gdXNlIHdlbGwtZXN0YWJsaXNoZWQgbWFucGFnZSBoZWFkZXJzIHNvIHlvdXIKK2RvY3VtZW50YXRpb24gaXMgY29uc2lzdGVudCB3aXRoIG90aGVyIEdpdCBhbmQgVU5JWCBtYW5wYWdlczsgdGhpcyBtYWtlcyBsaWZlCitlYXNpZXIgZm9yIHlvdXIgdXNlciwgd2hvIGNhbiBza2lwIHRvIHRoZSBzZWN0aW9uIHRoZXkga25vdyBjb250YWlucyB0aGUKK2luZm9ybWF0aW9uIHRoZXkgbmVlZC4KKworTm93IHRoYXQgeW91J3ZlIHdyaXR0ZW4geW91ciBtYW5wYWdlLCB5b3UnbGwgbmVlZCB0byBidWlsZCBpdCBleHBsaWNpdGx5LiBXZQorY29udmVydCB5b3VyIEFzY2lpRG9jIHRvIHRyb2ZmIHdoaWNoIGlzIG1hbi1yZWFkYWJsZSBsaWtlIHNvOgorCistLS0tCiskIG1ha2UgYWxsIGRvYworJCBtYW4gRG9jdW1lbnRhdGlvbi9naXQtcHN1aC4xCistLS0tCisKK29yCisKKy0tLS0KKyQgbWFrZSAtQyBEb2N1bWVudGF0aW9uLyBnaXQtcHN1aC4xCiskIG1hbiBEb2N1bWVudGF0aW9uL2dpdC1wc3VoLjEKKy0tLS0KKworTk9URTogWW91IG1heSBuZWVkIHRvIGluc3RhbGwgdGhlIHBhY2thZ2UgYGFzY2lpZG9jYCB0byBnZXQgdGhpcyB0byB3b3JrLgorCitXaGlsZSB0aGlzIGlzbid0IGFzIHNhdGlzZnlpbmcgYXMgcnVubmluZyB0aHJvdWdoIGBnaXQgaGVscGAsIHlvdSBjYW4gYXQgbGVhc3QKK2NoZWNrIHRoYXQgeW91ciBoZWxwIHBhZ2UgbG9va3MgcmlnaHQuCisKK1lvdSBjYW4gYWxzbyBjaGVjayB0aGF0IHRoZSBkb2N1bWVudGF0aW9uIGNvdmVyYWdlIGlzIGdvb2QgKHRoYXQgaXMsIHRoZSBwcm9qZWN0CitzZWVzIHRoYXQgeW91ciBjb21tYW5kIGhhcyBiZWVuIGltcGxlbWVudGVkIGFzIHdlbGwgYXMgZG9jdW1lbnRlZCkgYnkgcnVubmluZworYG1ha2UgY2hlY2stZG9jc2AgZnJvbSB0aGUgdG9wLWxldmVsLgorCitHbyBhaGVhZCBhbmQgY29tbWl0IHlvdXIgbmV3IGRvY3VtZW50YXRpb24gY2hhbmdlLgorCitbW2FkZC11c2FnZV1dCis9PT0gQWRkaW5nIFVzYWdlIFRleHQKKworVHJ5IGFuZCBydW4gYC4vYmluLXdyYXBwZXJzL2dpdCBwc3VoIC1oYC4gWW91ciBjb21tYW5kIHNob3VsZCBjcmFzaCBhdCB0aGUgZW5kLgorVGhhdCdzIGJlY2F1c2UgYC1oYCBpcyBhIHNwZWNpYWwgY2FzZSB3aGljaCB5b3VyIGNvbW1hbmQgc2hvdWxkIGhhbmRsZSBieQorcHJpbnRpbmcgdXNhZ2UuCisKK1Rha2UgYSBsb29rIGF0IGBEb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktcGFyc2Utb3B0aW9ucy50eHRgLiBUaGlzIGlzIGEgaGFuZHkKK3Rvb2wgZm9yIHB1bGxpbmcgb3V0IG9wdGlvbnMgeW91IG5lZWQgdG8gYmUgYWJsZSB0byBoYW5kbGUsIGFuZCBpdCB0YWtlcyBhCit1c2FnZSBzdHJpbmcuCisKK0luIG9yZGVyIHRvIHVzZSBpdCwgd2UnbGwgbmVlZCB0byBwcmVwYXJlIGEgTlVMTC10ZXJtaW5hdGVkIGFycmF5IG9mIHVzYWdlCitzdHJpbmdzIGFuZCBhIGBidWlsdGluX3BzdWhfb3B0aW9uc2AgYXJyYXkuCisKK0FkZCBhIGxpbmUgdG8gYCNpbmNsdWRlICJwYXJzZS1vcHRpb25zLmgiYC4KKworQXQgZ2xvYmFsIHNjb3BlLCBhZGQgeW91ciBhcnJheSBvZiB1c2FnZSBzdHJpbmdzOgorCistLS0tCitzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IHBzdWhfdXNhZ2VbXSA9IHsKKwlOXygiZ2l0IHBzdWggWzxhcmc+Li4uXSIpLAorCU5VTEwsCit9OworLS0tLQorCitUaGVuLCB3aXRoaW4geW91ciBgY21kX3BzdWgoKWAgaW1wbGVtZW50YXRpb24sIHdlIGNhbiBkZWNsYXJlIGFuZCBwb3B1bGF0ZSBvdXIKK2BvcHRpb25gIHN0cnVjdC4gT3VycyBpcyBwcmV0dHkgYm9yaW5nIGJ1dCB5b3UgY2FuIGFkZCBtb3JlIHRvIGl0IGlmIHlvdSB3YW50IHRvCitleHBsb3JlIGBwYXJzZV9vcHRpb25zKClgIGluIG1vcmUgZGV0YWlsOgorCistLS0tCisJc3RydWN0IG9wdGlvbiBvcHRpb25zW10gPSB7CisJCU9QVF9FTkQoKQorCX07CistLS0tCisKK0ZpbmFsbHksIGJlZm9yZSB5b3UgcHJpbnQgeW91ciBhcmdzIGFuZCBwcmVmaXgsIGFkZCB0aGUgY2FsbCB0bworYHBhcnNlLW9wdGlvbnMoKWA6CisKKy0tLS0KKwlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsIG9wdGlvbnMsIHBzdWhfdXNhZ2UsIDApOworLS0tLQorCitUaGlzIGNhbGwgd2lsbCBtb2RpZnkgeW91ciBgYXJndmAgcGFyYW1ldGVyLiBJdCB3aWxsIHN0cmlwIHRoZSBvcHRpb25zIHlvdQorc3BlY2lmaWVkIGluIGBvcHRpb25zYCBmcm9tIGBhcmd2YCBhbmQgdGhlIGxvY2F0aW9ucyBwb2ludGVkIHRvIGZyb20gYG9wdGlvbnNgCitlbnRyaWVzIHdpbGwgYmUgdXBkYXRlZC4gQmUgc3VyZSB0byByZXBsYWNlIHlvdXIgYGFyZ2NgIHdpdGggdGhlIHJlc3VsdCBmcm9tCitgcGFyc2Vfb3B0aW9ucygpYCwgb3IgeW91IHdpbGwgYmUgY29uZnVzZWQgaWYgeW91IHRyeSB0byBwYXJzZSBgYXJndmAgbGF0ZXIuCisKK0l0J3Mgd29ydGggbm90aW5nIHRoZSBzcGVjaWFsIGFyZ3VtZW50IGAtLWAuIEFzIHlvdSBtYXkgYmUgYXdhcmUsIG1hbnkgVW5peAorY29tbWFuZHMgdXNlIGAtLWAgdG8gaW5kaWNhdGUgImVuZCBvZiBuYW1lZCBwYXJhbWV0ZXJzIiAtIGFsbCBwYXJhbWV0ZXJzIGFmdGVyCit0aGUgYC0tYCBhcmUgaW50ZXJwcmV0ZWQgbWVyZWx5IGFzIHBvc2l0aW9uYWwgYXJndW1lbnRzLiAoVGhpcyBjYW4gYmUgaGFuZHkgaWYKK3lvdSB3YW50IHRvIHBhc3MgYXMgYSBwYXJhbWV0ZXIgc29tZXRoaW5nIHdoaWNoIHdvdWxkIHVzdWFsbHkgYmUgaW50ZXJwcmV0ZWQgYXMKK2EgZmxhZy4pIGBwYXJzZV9vcHRpb25zKClgIHdpbGwgdGVybWluYXRlIHBhcnNpbmcgd2hlbiBpdCByZWFjaGVzIGAtLWAgYW5kIGdpdmUKK3lvdSB0aGUgcmVzdCBvZiB0aGUgb3B0aW9ucyBhZnRlcndhcmRzLCB1bnRvdWNoZWQuCisKK05vdyB0aGF0IHlvdSBoYXZlIGEgdXNhZ2UgaGludCwgeW91IGNhbiB0ZWFjaCBHaXQgaG93IHRvIHNob3cgaXQgaW4gdGhlIGdlbmVyYWwKK2NvbW1hbmQgbGlzdCBzaG93biBieSBgZ2l0IGhlbHAgZ2l0YCBvciBgZ2l0IGhlbHAgLWFgLCB3aGljaCBpcyBnZW5lcmF0ZWQgZnJvbQorYGNvbW1hbmQtbGlzdC50eHRgLiBGaW5kIHRoZSBsaW5lIGZvciAnZ2l0LXB1bGwnIHNvIHlvdSBjYW4gYWRkIHlvdXIgJ2dpdC1wc3VoJworbGluZSBhYm92ZSBpdCBpbiBhbHBoYWJldGljYWwgb3JkZXIuIE5vdywgd2UgY2FuIGFkZCBzb21lIGF0dHJpYnV0ZXMgYWJvdXQgdGhlCitjb21tYW5kIHdoaWNoIGltcGFjdHMgd2hlcmUgaXQgc2hvd3MgdXAgaW4gdGhlIGFmb3JlbWVudGlvbmVkIGhlbHAgY29tbWFuZHMuIFRoZQordG9wIG9mIGBjb21tYW5kLWxpc3QudHh0YCBzaGFyZXMgc29tZSBpbmZvcm1hdGlvbiBhYm91dCB3aGF0IGVhY2ggYXR0cmlidXRlCittZWFuczsgaW4gdGhvc2UgaGVscCBwYWdlcywgdGhlIGNvbW1hbmRzIGFyZSBzb3J0ZWQgYWNjb3JkaW5nIHRvIHRoZXNlCithdHRyaWJ1dGVzLiBgZ2l0IHBzdWhgIGlzIHVzZXItZmFjaW5nLCBvciBwb3JjZWxhaW4gLSBzbyB3ZSB3aWxsIG1hcmsgaXQgYXMKKyJtYWlucG9yY2VsYWluIi4gRm9yICJtYWlucG9yY2VsYWluIiBjb21tYW5kcywgdGhlIGNvbW1lbnRzIGF0IHRoZSB0b3Agb2YKK2Bjb21tYW5kLWxpc3QudHh0YCBpbmRpY2F0ZSB3ZSBjYW4gYWxzbyBvcHRpb25hbGx5IGFkZCBhbiBhdHRyaWJ1dGUgZnJvbSBhbm90aGVyCitsaXN0OyBzaW5jZSBgZ2l0IHBzdWhgIHNob3dzIHNvbWUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHVzZXIncyB3b3Jrc3BhY2UgYnV0Citkb2Vzbid0IG1vZGlmeSBhbnl0aGluZywgbGV0J3MgbWFyayBpdCBhcyAiaW5mbyIuIE1ha2Ugc3VyZSB0byBrZWVwIHlvdXIKK2F0dHJpYnV0ZXMgaW4gdGhlIHNhbWUgc3R5bGUgYXMgdGhlIHJlc3Qgb2YgYGNvbW1hbmQtbGlzdC50eHRgIHVzaW5nIHNwYWNlcyB0bworYWxpZ24gYW5kIGRlbGluZWF0ZSB0aGVtOgorCistLS0tCitnaXQtcHJ1bmUtcGFja2VkICAgICAgICAgICAgICAgICAgICAgICAgcGx1bWJpbmdtYW5pcHVsYXRvcnMKK2dpdC1wc3VoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWlucG9yY2VsYWluCQlpbmZvCitnaXQtcHVsbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFpbnBvcmNlbGFpbiAgICAgICAgICAgcmVtb3RlCitnaXQtcHVzaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFpbnBvcmNlbGFpbiAgICAgICAgICAgcmVtb3RlCistLS0tCisKK0J1aWxkIGFnYWluLiBOb3csIHdoZW4geW91IHJ1biB3aXRoIGAtaGAsIHlvdSBzaG91bGQgc2VlIHlvdXIgdXNhZ2UgcHJpbnRlZCBhbmQKK3lvdXIgY29tbWFuZCB0ZXJtaW5hdGVkIGJlZm9yZSBhbnl0aGluZyBlbHNlIGludGVyZXN0aW5nIGhhcHBlbnMuIEdyZWF0IQorCitHbyBhaGVhZCBhbmQgY29tbWl0IHRoaXMgb25lLCB0b28uCisKK1tbdGVzdGluZ11dCis9PSBUZXN0aW5nCisKK0l0J3MgaW1wb3J0YW50IHRvIHRlc3QgeW91ciBjb2RlIC0gZXZlbiBmb3IgYSBsaXR0bGUgdG95IGNvbW1hbmQgbGlrZSB0aGlzIG9uZS4KK01vcmVvdmVyLCB5b3VyIHBhdGNoIHdvbid0IGJlIGFjY2VwdGVkIGludG8gdGhlIEdpdCB0cmVlIHdpdGhvdXQgdGVzdHMuIFlvdXIKK3Rlc3RzIHNob3VsZDoKKworKiBJbGx1c3RyYXRlIHRoZSBjdXJyZW50IGJlaGF2aW9yIG9mIHRoZSBmZWF0dXJlCisqIFByb3ZlIHRoZSBjdXJyZW50IGJlaGF2aW9yIG1hdGNoZXMgdGhlIGV4cGVjdGVkIGJlaGF2aW9yCisqIEVuc3VyZSB0aGUgZXh0ZXJuYWxseS12aXNpYmxlIGJlaGF2aW9yIGlzbid0IGJyb2tlbiBpbiBsYXRlciBjaGFuZ2VzCisKK1NvIGxldCdzIHdyaXRlIHNvbWUgdGVzdHMuCisKK1JlbGF0ZWQgcmVhZGluZzogYHQvUkVBRE1FYAorCitbW292ZXJ2aWV3LXRlc3Qtc3RydWN0dXJlXV0KKz09PSBPdmVydmlldyBvZiBUZXN0aW5nIFN0cnVjdHVyZQorCitUaGUgdGVzdHMgaW4gR2l0IGxpdmUgaW4gYHQvYCBhbmQgYXJlIG5hbWVkIHdpdGggYSA0LWRpZ2l0IGRlY2ltYWwgbnVtYmVyIHVzaW5nCit0aGUgc2NoZW1hIHNob3duIGluIHRoZSBOYW1pbmcgVGVzdHMgc2VjdGlvbiBvZiBgdC9SRUFETUVgLgorCitbW3dyaXRlLW5ldy10ZXN0XV0KKz09PSBXcml0aW5nIFlvdXIgVGVzdAorCitTaW5jZSB0aGlzIGEgdG95IGNvbW1hbmQsIGxldCdzIGdvIGFoZWFkIGFuZCBuYW1lIHRoZSB0ZXN0IHdpdGggdDk5OTkuIEhvd2V2ZXIsCithcyBtYW55IG9mIHRoZSBmYW1pbHkvc3ViY21kIGNvbWJpbmF0aW9ucyBhcmUgZnVsbCwgYmVzdCBwcmFjdGljZSBzZWVtcyB0byBiZQordG8gZmluZCBhIGNvbW1hbmQgY2xvc2UgZW5vdWdoIHRvIHRoZSBvbmUgeW91J3ZlIGFkZGVkIGFuZCBzaGFyZSBpdHMgbmFtaW5nCitzcGFjZS4KKworQ3JlYXRlIGEgbmV3IGZpbGUgYHQvdDk5OTktcHN1aC10dXRvcmlhbC5zaGAuIEJlZ2luIHdpdGggdGhlIGhlYWRlciBhcyBzbyAoc2VlCisiV3JpdGluZyBUZXN0cyIgYW5kICJTb3VyY2UgJ3Rlc3QtbGliLnNoJyIgaW4gYHQvUkVBRE1FYCk6CisKKy0tLS0KKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdnaXQtcHN1aCB0ZXN0CisKK1RoaXMgdGVzdCBydW5zIGdpdC1wc3VoIGFuZCBtYWtlcyBzdXJlIGl0IGRvZXMgbm90IGNyYXNoLicKKworLiAuL3Rlc3QtbGliLnNoCistLS0tCisKK1Rlc3RzIGFyZSBmcmFtZWQgaW5zaWRlIG9mIGEgYHRlc3RfZXhwZWN0X3N1Y2Nlc3NgIGluIG9yZGVyIHRvIG91dHB1dCBUQVAKK2Zvcm1hdHRlZCByZXN1bHRzLiBMZXQncyBtYWtlIHN1cmUgdGhhdCBgZ2l0IHBzdWhgIGRvZXNuJ3QgZXhpdCBwb29ybHkgYW5kIGRvZXMKK21lbnRpb24gdGhlIHJpZ2h0IGFuaW1hbCBzb21ld2hlcmU6CisKKy0tLS0KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3J1bnMgY29ycmVjdGx5IHdpdGggbm8gYXJncyBhbmQgZ29vZCBvdXRwdXQnICcKKwlnaXQgcHN1aCA+YWN0dWFsICYmCisJdGVzdF9pMThuZ3JlcCBQb255IGFjdHVhbAorJworLS0tLQorCitJbmRpY2F0ZSB0aGF0IHlvdSd2ZSBydW4gZXZlcnl0aGluZyB5b3Ugd2FudGVkIGJ5IGFkZGluZyB0aGUgZm9sbG93aW5nIGF0IHRoZQorYm90dG9tIG9mIHlvdXIgc2NyaXB0OgorCistLS0tCit0ZXN0X2RvbmUKKy0tLS0KKworTWFrZSBzdXJlIHlvdSBtYXJrIHlvdXIgdGVzdCBzY3JpcHQgZXhlY3V0YWJsZToKKworLS0tLQorJCBjaG1vZCAreCB0L3Q5OTk5LXBzdWgtdHV0b3JpYWwuc2gKKy0tLS0KKworWW91IGNhbiBnZXQgYW4gaWRlYSBvZiB3aGV0aGVyIHlvdSBjcmVhdGVkIHlvdXIgbmV3IHRlc3Qgc2NyaXB0IHN1Y2Nlc3NmdWxseQorYnkgcnVubmluZyBgbWFrZSAtQyB0IHRlc3QtbGludGAsIHdoaWNoIHdpbGwgY2hlY2sgZm9yIHRoaW5ncyBsaWtlIHRlc3QgbnVtYmVyCit1bmlxdWVuZXNzLCBleGVjdXRhYmxlIGJpdCwgYW5kIHNvIG9uLgorCitbW2xvY2FsLXRlc3RdXQorPT09IFJ1bm5pbmcgTG9jYWxseQorCitMZXQncyB0cnkgYW5kIHJ1biBsb2NhbGx5OgorCistLS0tCiskIG1ha2UKKyQgY2QgdC8gJiYgcHJvdmUgdDk5OTktcHN1aC10dXRvcmlhbC5zaAorLS0tLQorCitZb3UgY2FuIHJ1biB0aGUgZnVsbCB0ZXN0IHN1aXRlIGFuZCBlbnN1cmUgYGdpdC1wc3VoYCBkaWRuJ3QgYnJlYWsgYW55dGhpbmc6CisKKy0tLS0KKyQgY2QgdC8KKyQgcHJvdmUgLWokKG5wcm9jKSAtLXNodWZmbGUgdFswLTldKi5zaAorLS0tLQorCitOT1RFOiBZb3UgY2FuIGFsc28gZG8gdGhpcyB3aXRoIGBtYWtlIHRlc3RgIG9yIHVzZSBhbnkgdGVzdGluZyBoYXJuZXNzIHdoaWNoIGNhbgorc3BlYWsgVEFQLiBgcHJvdmVgIGNhbiBydW4gY29uY3VycmVudGx5LiBgc2h1ZmZsZWAgcmFuZG9taXplcyB0aGUgb3JkZXIgdGhlCit0ZXN0cyBhcmUgcnVuIGluLCB3aGljaCBtYWtlcyB0aGVtIHJlc2lsaWVudCBhZ2FpbnN0IHVud2FudGVkIGludGVyLXRlc3QKK2RlcGVuZGVuY2llcy4gYHByb3ZlYCBhbHNvIG1ha2VzIHRoZSBvdXRwdXQgbmljZXIuCisKK0dvIGFoZWFkIGFuZCBjb21taXQgdGhpcyBjaGFuZ2UsIGFzIHdlbGwuCisKK1tbcmVhZHktdG8tc2hhcmVdXQorPT0gR2V0dGluZyBSZWFkeSB0byBTaGFyZQorCitZb3UgbWF5IGhhdmUgbm90aWNlZCBhbHJlYWR5IHRoYXQgdGhlIEdpdCBwcm9qZWN0IHBlcmZvcm1zIGl0cyBjb2RlIHJldmlld3MgdmlhCitlbWFpbGVkIHBhdGNoZXMsIHdoaWNoIGFyZSB0aGVuIGFwcGxpZWQgYnkgdGhlIG1haW50YWluZXIgd2hlbiB0aGV5IGFyZSByZWFkeQorYW5kIGFwcHJvdmVkIGJ5IHRoZSBjb21tdW5pdHkuIFRoZSBHaXQgcHJvamVjdCBkb2VzIG5vdCBhY2NlcHQgcGF0Y2hlcyBmcm9tCitwdWxsIHJlcXVlc3RzLCBhbmQgdGhlIHBhdGNoZXMgZW1haWxlZCBmb3IgcmV2aWV3IG5lZWQgdG8gYmUgZm9ybWF0dGVkIGEKK3NwZWNpZmljIHdheS4gQXQgdGhpcyBwb2ludCB0aGUgdHV0b3JpYWwgZGl2ZXJnZXMsIGluIG9yZGVyIHRvIGRlbW9uc3RyYXRlIHR3bworZGlmZmVyZW50IG1ldGhvZHMgb2YgZm9ybWF0dGluZyB5b3VyIHBhdGNoc2V0IGFuZCBnZXR0aW5nIGl0IHJldmlld2VkLgorCitUaGUgZmlyc3QgbWV0aG9kIHRvIGJlIGNvdmVyZWQgaXMgR2l0R2l0R2FkZ2V0LCB3aGljaCBpcyB1c2VmdWwgZm9yIHRob3NlCithbHJlYWR5IGZhbWlsaWFyIHdpdGggR2l0SHViJ3MgY29tbW9uIHB1bGwgcmVxdWVzdCB3b3JrZmxvdy4gVGhpcyBtZXRob2QKK3JlcXVpcmVzIGEgR2l0SHViIGFjY291bnQuCisKK1RoZSBzZWNvbmQgbWV0aG9kIHRvIGJlIGNvdmVyZWQgaXMgYGdpdCBzZW5kLWVtYWlsYCwgd2hpY2ggY2FuIGdpdmUgc2xpZ2h0bHkKK21vcmUgZmluZS1ncmFpbmVkIGNvbnRyb2wgb3ZlciB0aGUgZW1haWxzIHRvIGJlIHNlbnQuIFRoaXMgbWV0aG9kIHJlcXVpcmVzIHNvbWUKK3NldHVwIHdoaWNoIGNhbiBjaGFuZ2UgZGVwZW5kaW5nIG9uIHlvdXIgc3lzdGVtIGFuZCB3aWxsIG5vdCBiZSBjb3ZlcmVkIGluIHRoaXMKK3R1dG9yaWFsLgorCitSZWdhcmRsZXNzIG9mIHdoaWNoIG1ldGhvZCB5b3UgY2hvb3NlLCB5b3VyIGVuZ2FnZW1lbnQgd2l0aCByZXZpZXdlcnMgd2lsbCBiZQordGhlIHNhbWU7IHRoZSByZXZpZXcgcHJvY2VzcyB3aWxsIGJlIGNvdmVyZWQgYWZ0ZXIgdGhlIHNlY3Rpb25zIG9uIEdpdEdpdEdhZGdldAorYW5kIGBnaXQgc2VuZC1lbWFpbGAuCisKK1tbaG93dG8tZ2dnXV0KKz09IFNlbmRpbmcgUGF0Y2hlcyB2aWEgR2l0R2l0R2FkZ2V0CisKK09uZSBvcHRpb24gZm9yIHNlbmRpbmcgcGF0Y2hlcyBpcyB0byBmb2xsb3cgYSB0eXBpY2FsIHB1bGwgcmVxdWVzdCB3b3JrZmxvdyBhbmQKK3NlbmQgeW91ciBwYXRjaGVzIG91dCB2aWEgR2l0R2l0R2FkZ2V0LiBHaXRHaXRHYWRnZXQgaXMgYSB0b29sIGNyZWF0ZWQgYnkKK0pvaGFubmVzIFNjaGluZGVsaW4gdG8gbWFrZSBsaWZlIGFzIGEgR2l0IGNvbnRyaWJ1dG9yIGVhc2llciBmb3IgdGhvc2UgdXNlZCB0bwordGhlIEdpdEh1YiBQUiB3b3JrZmxvdy4gSXQgYWxsb3dzIGNvbnRyaWJ1dG9ycyB0byBvcGVuIHB1bGwgcmVxdWVzdHMgYWdhaW5zdCBpdHMKK21pcnJvciBvZiB0aGUgR2l0IHByb2plY3QsIGFuZCBkb2VzIHNvbWUgbWFnaWMgdG8gdHVybiB0aGUgUFIgaW50byBhIHNldCBvZgorZW1haWxzIGFuZCBzZW5kIHRoZW0gb3V0IGZvciB5b3UuIEl0IGFsc28gcnVucyB0aGUgR2l0IGNvbnRpbnVvdXMgaW50ZWdyYXRpb24KK3N1aXRlIGZvciB5b3UuIEl0J3MgZG9jdW1lbnRlZCBhdCBodHRwOi8vZ2l0Z2l0Z2FkZ2V0LmdpdGh1Yi5pby4KKworW1tjcmVhdGUtZm9ya11dCis9PT0gRm9ya2luZyBgZ2l0L2dpdGAgb24gR2l0SHViCisKK0JlZm9yZSB5b3UgY2FuIHNlbmQgeW91ciBwYXRjaCBvZmYgdG8gYmUgcmV2aWV3ZWQgdXNpbmcgR2l0R2l0R2FkZ2V0LCB5b3Ugd2lsbAorbmVlZCB0byBmb3JrIHRoZSBHaXQgcHJvamVjdCBhbmQgdXBsb2FkIHlvdXIgY2hhbmdlcy4gRmlyc3QgdGhpbmcgLSBtYWtlIHN1cmUKK3lvdSBoYXZlIGEgR2l0SHViIGFjY291bnQuCisKK0hlYWQgdG8gdGhlIGh0dHBzOi8vZ2l0aHViLmNvbS9naXQvZ2l0W0dpdEh1YiBtaXJyb3JdIGFuZCBsb29rIGZvciB0aGUgRm9yaworYnV0dG9uLiBQbGFjZSB5b3VyIGZvcmsgd2hlcmV2ZXIgeW91IGRlZW0gYXBwcm9wcmlhdGUgYW5kIGNyZWF0ZSBpdC4KKworW1t1cGxvYWQtdG8tZm9ya11dCis9PT0gVXBsb2FkaW5nIHRvIFlvdXIgT3duIEZvcmsKKworVG8gdXBsb2FkIHlvdXIgYnJhbmNoIHRvIHlvdXIgb3duIGZvcmssIHlvdSdsbCBuZWVkIHRvIGFkZCB0aGUgbmV3IGZvcmsgYXMgYQorcmVtb3RlLiBZb3UgY2FuIHVzZSBgZ2l0IHJlbW90ZSAtdmAgdG8gc2hvdyB0aGUgcmVtb3RlcyB5b3UgaGF2ZSBhZGRlZCBhbHJlYWR5LgorRnJvbSB5b3VyIG5ldyBmb3JrJ3MgcGFnZSBvbiBHaXRIdWIsIHlvdSBjYW4gcHJlc3MgIkNsb25lIG9yIGRvd25sb2FkIiB0byBnZXQKK3RoZSBVUkw7IHRoZW4geW91IG5lZWQgdG8gcnVuIHRoZSBmb2xsb3dpbmcgdG8gYWRkLCByZXBsYWNpbmcgeW91ciBvd24gVVJMIGFuZAorcmVtb3RlIG5hbWUgZm9yIHRoZSBleGFtcGxlcyBwcm92aWRlZDoKKworLS0tLQorJCBnaXQgcmVtb3RlIGFkZCByZW1vdGVuYW1lIGdpdEBnaXRodWIuY29tOnJlbW90ZW5hbWUvZ2l0LmdpdAorLS0tLQorCitvciB0byB1c2UgdGhlIEhUVFBTIFVSTDoKKworLS0tLQorJCBnaXQgcmVtb3RlIGFkZCByZW1vdGVuYW1lIGh0dHBzOi8vZ2l0aHViLmNvbS9yZW1vdGVuYW1lL2dpdC8uZ2l0CistLS0tCisKK1J1biBgZ2l0IHJlbW90ZSAtdmAgYWdhaW4gYW5kIHlvdSBzaG91bGQgc2VlIHRoZSBuZXcgcmVtb3RlIHNob3dpbmcgdXAuCitgZ2l0IGZldGNoIHJlbW90ZW5hbWVgICh3aXRoIHRoZSByZWFsIG5hbWUgb2YgeW91ciByZW1vdGUgcmVwbGFjZWQpIGluIG9yZGVyIHRvCitnZXQgcmVhZHkgdG8gcHVzaC4KKworTmV4dCwgZG91YmxlLWNoZWNrIHRoYXQgeW91J3ZlIGJlZW4gZG9pbmcgYWxsIHlvdXIgZGV2ZWxvcG1lbnQgaW4gYSBuZXcgYnJhbmNoCitieSBydW5uaW5nIGBnaXQgYnJhbmNoYC4gSWYgeW91IGRpZG4ndCwgbm93IGlzIGEgZ29vZCB0aW1lIHRvIG1vdmUgeW91ciBuZXcKK2NvbW1pdHMgdG8gdGhlaXIgb3duIGJyYW5jaC4KKworQXMgbWVudGlvbmVkIGJyaWVmbHkgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGlzIGRvY3VtZW50LCB3ZSBhcmUgYmFzaW5nIG91ciB3b3JrCitvbiBgbWFzdGVyYCwgc28gZ28gYWhlYWQgYW5kIHVwZGF0ZSBhcyBzaG93biBiZWxvdywgb3IgdXNpbmcgeW91ciBwcmVmZXJyZWQKK3dvcmtmbG93LgorCistLS0tCiskIGdpdCBjaGVja291dCBtYXN0ZXIKKyQgZ2l0IHB1bGwgLXIKKyQgZ2l0IHJlYmFzZSBtYXN0ZXIgcHN1aAorLS0tLQorCitGaW5hbGx5LCB5b3UncmUgcmVhZHkgdG8gcHVzaCB5b3VyIG5ldyB0b3BpYyBicmFuY2ghIChEdWUgdG8gb3VyIGJyYW5jaCBhbmQKK2NvbW1hbmQgbmFtZSBjaG9pY2VzLCBiZSBjYXJlZnVsIHdoZW4geW91IHR5cGUgdGhlIGNvbW1hbmQgYmVsb3cuKQorCistLS0tCiskIGdpdCBwdXNoIHJlbW90ZW5hbWUgcHN1aAorLS0tLQorCitOb3cgeW91IHNob3VsZCBiZSBhYmxlIHRvIGdvIGFuZCBjaGVjayBvdXQgeW91ciBuZXdseSBjcmVhdGVkIGJyYW5jaCBvbiBHaXRIdWIuCisKK1tbc2VuZC1wci1nZ2ddXQorPT09IFNlbmRpbmcgYSBQUiB0byBHaXRHaXRHYWRnZXQKKworSW4gb3JkZXIgdG8gaGF2ZSB5b3VyIGNvZGUgdGVzdGVkIGFuZCBmb3JtYXR0ZWQgZm9yIHJldmlldywgeW91IG5lZWQgdG8gc3RhcnQgYnkKK29wZW5pbmcgYSBQdWxsIFJlcXVlc3QgYWdhaW5zdCBgZ2l0Z2l0Z2FkZ2V0L2dpdGAuIEhlYWQgdG8KK2h0dHBzOi8vZ2l0aHViLmNvbS9naXRnaXRnYWRnZXQvZ2l0IGFuZCBvcGVuIGEgUFIgZWl0aGVyIHdpdGggdGhlICJOZXcgcHVsbAorcmVxdWVzdCIgYnV0dG9uIG9yIHRoZSBjb252ZW5pZW50ICJDb21wYXJlICYgcHVsbCByZXF1ZXN0IiBidXR0b24gdGhhdCBtYXkKK2FwcGVhciB3aXRoIHRoZSBuYW1lIG9mIHlvdXIgbmV3bHkgcHVzaGVkIGJyYW5jaC4KKworUmV2aWV3IHRoZSBQUidzIHRpdGxlIGFuZCBkZXNjcmlwdGlvbiwgYXMgaXQncyB1c2VkIGJ5IEdpdEdpdEdhZGdldCBhcyB0aGUgY292ZXIKK2xldHRlciBmb3IgeW91ciBjaGFuZ2UuIFdoZW4geW91J3JlIGhhcHB5LCBzdWJtaXQgeW91ciBwdWxsIHJlcXVlc3QuCisKK1tbcnVuLWNpLWdnZ11dCis9PT0gUnVubmluZyBDSSBhbmQgR2V0dGluZyBSZWFkeSB0byBTZW5kCisKK0lmIGl0J3MgeW91ciBmaXJzdCB0aW1lIHVzaW5nIEdpdEdpdEdhZGdldCAod2hpY2ggaXMgbGlrZWx5LCBhcyB5b3UncmUgdXNpbmcKK3RoaXMgdHV0b3JpYWwpIHRoZW4gc29tZW9uZSB3aWxsIG5lZWQgdG8gZ2l2ZSB5b3UgcGVybWlzc2lvbiB0byB1c2UgdGhlIHRvb2wuCitBcyBtZW50aW9uZWQgaW4gdGhlIEdpdEdpdEdhZGdldCBkb2N1bWVudGF0aW9uLCB5b3UganVzdCBuZWVkIHNvbWVvbmUgd2hvCithbHJlYWR5IHVzZXMgaXQgdG8gY29tbWVudCBvbiB5b3VyIFBSIHdpdGggYC9hbGxvdyA8dXNlcm5hbWU+YC4gR2l0R2l0R2FkZ2V0Cit3aWxsIGF1dG9tYXRpY2FsbHkgcnVuIHlvdXIgUFJzIHRocm91Z2ggdGhlIENJIGV2ZW4gd2l0aG91dCB0aGUgcGVybWlzc2lvbiBnaXZlbgorYnV0IHlvdSB3aWxsIG5vdCBiZSBhYmxlIHRvIGAvc3VibWl0YCB5b3VyIGNoYW5nZXMgdW50aWwgc29tZW9uZSBhbGxvd3MgeW91IHRvCit1c2UgdGhlIHRvb2wuCisKK05PVEU6IFlvdSBjYW4gdHlwaWNhbGx5IGZpbmQgc29tZW9uZSB3aG8gY2FuIGAvYWxsb3dgIHlvdSBvbiBHaXRHaXRHYWRnZXQgYnkKK2VpdGhlciBleGFtaW5pbmcgcmVjZW50IHB1bGwgcmVxdWVzdHMgd2hlcmUgc29tZW9uZSBoYXMgYmVlbiBncmFudGVkIGAvYWxsb3dgCisoaHR0cHM6Ly9naXRodWIuY29tL2dpdGdpdGdhZGdldC9naXQvcHVsbHM/dXRmOD0lRTIlOUMlOTMmcT1pcyUzQXByK2lzJTNBb3BlbislMjIlMkZhbGxvdyUyMltTZWFyY2g6CitpczpwciBpczpvcGVuICIvYWxsb3ciXSksIGluIHdoaWNoIGNhc2UgYm90aCB0aGUgYXV0aG9yIGFuZCB0aGUgcGVyc29uIHdobworZ3JhbnRlZCB0aGUgYC9hbGxvd2AgY2FuIG5vdyBgL2FsbG93YCB5b3UsIG9yIGJ5IGlucXVpcmluZyBvbiB0aGUKK2h0dHBzOi8vd2ViY2hhdC5mcmVlbm9kZS5uZXQvI2dpdC1kZXZlbFsjZ2l0LWRldmVsXSBJUkMgY2hhbm5lbCBvbiBGcmVlbm9kZQorbGlua2luZyB5b3VyIHB1bGwgcmVxdWVzdCBhbmQgYXNraW5nIGZvciBzb21lb25lIHRvIGAvYWxsb3dgIHlvdS4KKworSWYgdGhlIENJIGZhaWxzLCB5b3UgY2FuIHVwZGF0ZSB5b3VyIGNoYW5nZXMgd2l0aCBgZ2l0IHJlYmFzZSAtaWAgYW5kIHB1c2ggeW91cgorYnJhbmNoIGFnYWluOgorCistLS0tCiskIGdpdCBwdXNoIC1mIHJlbW90ZW5hbWUgcHN1aAorLS0tLQorCitJbiBmYWN0LCB5b3Ugc2hvdWxkIGNvbnRpbnVlIHRvIG1ha2UgY2hhbmdlcyB0aGlzIHdheSB1cCB1bnRpbCB0aGUgcG9pbnQgd2hlbgoreW91ciBwYXRjaCBpcyBhY2NlcHRlZCBpbnRvIGBuZXh0YC4KKworLy8vLworVE9ETyBodHRwczovL2dpdGh1Yi5jb20vZ2l0Z2l0Z2FkZ2V0L2dpdGdpdGdhZGdldC9pc3N1ZXMvODMKK0l0J2QgYmUgbmljZSB0byBiZSBhYmxlIHRvIHZlcmlmeSB0aGF0IHRoZSBwYXRjaCBsb29rcyBnb29kIGJlZm9yZSBzZW5kaW5nIGl0Cit0byBldmVyeW9uZSBvbiBHaXQgbWFpbGluZyBsaXN0LgorW1tjaGVjay13b3JrLWdnZ11dCis9PT0gQ2hlY2sgWW91ciBXb3JrCisvLy8vCisKK1tbc2VuZC1tYWlsLWdnZ11dCis9PT0gU2VuZGluZyBZb3VyIFBhdGNoZXMKKworTm93IHRoYXQgeW91ciBDSSBpcyBwYXNzaW5nIGFuZCBzb21lb25lIGhhcyBncmFudGVkIHlvdSBwZXJtaXNzaW9uIHRvIHVzZQorR2l0R2l0R2FkZ2V0IHdpdGggdGhlIGAvYWxsb3dgIGNvbW1hbmQsIHNlbmRpbmcgb3V0IGZvciByZXZpZXcgaXMgYXMgc2ltcGxlIGFzCitjb21tZW50aW5nIG9uIHlvdXIgUFIgd2l0aCBgL3N1Ym1pdGAuCisKK1tbcmVzcG9uZGluZy1nZ2ddXQorPT09IFVwZGF0aW5nIFdpdGggQ29tbWVudHMKKworU2tpcCBhaGVhZCB0byA8PHJldmlld2luZyxSZXNwb25kaW5nIHRvIFJldmlld3M+PiBmb3IgaW5mb3JtYXRpb24gb24gaG93IHRvCityZXBseSB0byByZXZpZXcgY29tbWVudHMgeW91IHdpbGwgcmVjZWl2ZSBvbiB0aGUgbWFpbGluZyBsaXN0LgorCitPbmNlIHlvdSBoYXZlIHlvdXIgYnJhbmNoIGFnYWluIGluIHRoZSBzaGFwZSB5b3Ugd2FudCBmb2xsb3dpbmcgYWxsIHJldmlldworY29tbWVudHMsIHlvdSBjYW4gc3VibWl0IGFnYWluOgorCistLS0tCiskIGdpdCBwdXNoIC1mIHJlbW90ZW5hbWUgcHN1aAorLS0tLQorCitOZXh0LCBnbyBsb29rIGF0IHlvdXIgcHVsbCByZXF1ZXN0IGFnYWluc3QgR2l0R2l0R2FkZ2V0OyB5b3Ugc2hvdWxkIHNlZSB0aGUgQ0kKK2hhcyBiZWVuIGtpY2tlZCBvZmYgYWdhaW4uIE5vdyB3aGlsZSB0aGUgQ0kgaXMgcnVubmluZyBpcyBhIGdvb2QgdGltZSBmb3IgeW91Cit0byBtb2RpZnkgeW91ciBkZXNjcmlwdGlvbiBhdCB0aGUgdG9wIG9mIHRoZSBwdWxsIHJlcXVlc3QgdGhyZWFkOyBpdCB3aWxsIGJlCit1c2VkIGFnYWluIGFzIHRoZSBjb3ZlciBsZXR0ZXIuIFlvdSBzaG91bGQgdXNlIHRoaXMgc3BhY2UgdG8gZGVzY3JpYmUgd2hhdAoraGFzIGNoYW5nZWQgc2luY2UgeW91ciBwcmV2aW91cyB2ZXJzaW9uLCBzbyB0aGF0IHlvdXIgcmV2aWV3ZXJzIGhhdmUgc29tZSBpZGVhCitvZiB3aGF0IHRoZXkncmUgbG9va2luZyBhdC4gV2hlbiB0aGUgQ0kgaXMgZG9uZSBydW5uaW5nLCB5b3UgY2FuIGNvbW1lbnQgb25jZQorbW9yZSB3aXRoIGAvc3VibWl0YCAtIEdpdEdpdEdhZGdldCB3aWxsIGF1dG9tYXRpY2FsbHkgYWRkIGEgdjIgbWFyayB0byB5b3VyCitjaGFuZ2VzLgorCitbW2hvd3RvLWdpdC1zZW5kLWVtYWlsXV0KKz09IFNlbmRpbmcgUGF0Y2hlcyB3aXRoIGBnaXQgc2VuZC1lbWFpbGAKKworSWYgeW91IGRvbid0IHdhbnQgdG8gdXNlIEdpdEdpdEdhZGdldCwgeW91IGNhbiBhbHNvIHVzZSBHaXQgaXRzZWxmIHRvIG1haWwgeW91cgorcGF0Y2hlcy4gU29tZSBiZW5lZml0cyBvZiB1c2luZyBHaXQgdGhpcyB3YXkgaW5jbHVkZSBmaW5lciBncmFpbmVkIGNvbnRyb2wgb2YKK3N1YmplY3QgbGluZSAoZm9yIGV4YW1wbGUsIGJlaW5nIGFibGUgdG8gdXNlIHRoZSB0YWcgW1JGQyBQQVRDSF0gaW4gdGhlIHN1YmplY3QpCithbmQgYmVpbmcgYWJsZSB0byBzZW5kIGEgYGBkcnkgcnVuJycgbWFpbCB0byB5b3Vyc2VsZiB0byBlbnN1cmUgaXQgYWxsIGxvb2tzCitnb29kIGJlZm9yZSBnb2luZyBvdXQgdG8gdGhlIGxpc3QuCisKK1tbc2V0dXAtZ2l0LXNlbmQtZW1haWxdXQorPT09IFByZXJlcXVpc2l0ZTogU2V0dGluZyBVcCBgZ2l0IHNlbmQtZW1haWxgCisKK0NvbmZpZ3VyYXRpb24gZm9yIGBzZW5kLWVtYWlsYCBjYW4gdmFyeSBiYXNlZCBvbiB5b3VyIG9wZXJhdGluZyBzeXN0ZW0gYW5kIGVtYWlsCitwcm92aWRlciwgYW5kIHNvIHdpbGwgbm90IGJlIGNvdmVyZWQgaW4gdGhpcyB0dXRvcmlhbCwgYmV5b25kIHN0YXRpbmcgdGhhdCBpbgorbWFueSBkaXN0cmlidXRpb25zIG9mIExpbnV4LCBgZ2l0LXNlbmQtZW1haWxgIGlzIG5vdCBwYWNrYWdlZCBhbG9uZ3NpZGUgdGhlCit0eXBpY2FsIGBnaXRgIGluc3RhbGwuIFlvdSBtYXkgbmVlZCB0byBpbnN0YWxsIHRoaXMgYWRkaXRpb25hbCBwYWNrYWdlOyB0aGVyZQorYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBvbmxpbmUgdG8gaGVscCB5b3UgZG8gc28uIFlvdSB3aWxsIGFsc28gbmVlZCB0bworZGV0ZXJtaW5lIHRoZSByaWdodCB3YXkgdG8gY29uZmlndXJlIGl0IHRvIHVzZSB5b3VyIFNNVFAgc2VydmVyOyBhZ2FpbiwgYXMgdGhpcworY29uZmlndXJhdGlvbiBjYW4gY2hhbmdlIHNpZ25pZmljYW50bHkgYmFzZWQgb24geW91ciBzeXN0ZW0gYW5kIGVtYWlsIHNldHVwLCBpdAoraXMgb3V0IG9mIHNjb3BlIGZvciB0aGUgY29udGV4dCBvZiB0aGlzIHR1dG9yaWFsLgorCitbW2Zvcm1hdC1wYXRjaF1dCis9PT0gUHJlcGFyaW5nIEluaXRpYWwgUGF0Y2hzZXQKKworU2VuZGluZyBlbWFpbHMgd2l0aCBHaXQgaXMgYSB0d28tcGFydCBwcm9jZXNzOyBiZWZvcmUgeW91IGNhbiBwcmVwYXJlIHRoZSBlbWFpbHMKK3RoZW1zZWx2ZXMsIHlvdSdsbCBuZWVkIHRvIHByZXBhcmUgdGhlIHBhdGNoZXMuIEx1Y2tpbHksIHRoaXMgaXMgcHJldHR5IHNpbXBsZToKKworLS0tLQorJCBnaXQgZm9ybWF0LXBhdGNoIC0tY292ZXItbGV0dGVyIC1vIHBzdWgvIG1hc3Rlci4ucHN1aAorLS0tLQorCitUaGUgYC0tY292ZXItbGV0dGVyYCBwYXJhbWV0ZXIgdGVsbHMgYGZvcm1hdC1wYXRjaGAgdG8gY3JlYXRlIGEgY292ZXIgbGV0dGVyCit0ZW1wbGF0ZSBmb3IgeW91LiBZb3Ugd2lsbCBuZWVkIHRvIGZpbGwgaW4gdGhlIHRlbXBsYXRlIGJlZm9yZSB5b3UncmUgcmVhZHkKK3RvIHNlbmQgLSBidXQgZm9yIG5vdywgdGhlIHRlbXBsYXRlIHdpbGwgYmUgbmV4dCB0byB5b3VyIG90aGVyIHBhdGNoZXMuCisKK1RoZSBgLW8gcHN1aC9gIHBhcmFtZXRlciB0ZWxscyBgZm9ybWF0LXBhdGNoYCB0byBwbGFjZSB0aGUgcGF0Y2ggZmlsZXMgaW50byBhCitkaXJlY3RvcnkuIFRoaXMgaXMgdXNlZnVsIGJlY2F1c2UgYGdpdCBzZW5kLWVtYWlsYCBjYW4gdGFrZSBhIGRpcmVjdG9yeSBhbmQKK3NlbmQgb3V0IGFsbCB0aGUgcGF0Y2hlcyBmcm9tIHRoZXJlLgorCitgbWFzdGVyLi5wc3VoYCB0ZWxscyBgZm9ybWF0LXBhdGNoYCB0byBnZW5lcmF0ZSBwYXRjaGVzIGZvciB0aGUgZGlmZmVyZW5jZQorYmV0d2VlbiBgbWFzdGVyYCBhbmQgYHBzdWhgLiBJdCB3aWxsIG1ha2Ugb25lIHBhdGNoIGZpbGUgcGVyIGNvbW1pdC4gQWZ0ZXIgeW91CitydW4sIHlvdSBjYW4gZ28gaGF2ZSBhIGxvb2sgYXQgZWFjaCBvZiB0aGUgcGF0Y2hlcyB3aXRoIHlvdXIgZmF2b3JpdGUgdGV4dAorZWRpdG9yIGFuZCBtYWtlIHN1cmUgZXZlcnl0aGluZyBsb29rcyBhbHJpZ2h0OyBob3dldmVyLCBpdCdzIG5vdCByZWNvbW1lbmRlZCB0bworbWFrZSBjb2RlIGZpeHVwcyB2aWEgdGhlIHBhdGNoIGZpbGUuIEl0J3MgYSBiZXR0ZXIgaWRlYSB0byBtYWtlIHRoZSBjaGFuZ2UgdGhlCitub3JtYWwgd2F5IHVzaW5nIGBnaXQgcmViYXNlIC1pYCBvciBieSBhZGRpbmcgYSBuZXcgY29tbWl0IHRoYW4gYnkgbW9kaWZ5aW5nIGEKK3BhdGNoLgorCitOT1RFOiBPcHRpb25hbGx5LCB5b3UgY2FuIGFsc28gdXNlIHRoZSBgLS1yZmNgIGZsYWcgdG8gcHJlZml4IHlvdXIgcGF0Y2ggc3ViamVjdAord2l0aCBgYFtSRkMgUEFUQ0hdJycgaW5zdGVhZCBvZiBgYFtQQVRDSF0nJy4gUkZDIHN0YW5kcyBmb3IgYGByZXF1ZXN0IGZvcgorY29tbWVudHMnJyBhbmQgaW5kaWNhdGVzIHRoYXQgd2hpbGUgeW91ciBjb2RlIGlzbid0IHF1aXRlIHJlYWR5IGZvciBzdWJtaXNzaW9uLAoreW91J2QgbGlrZSB0byBiZWdpbiB0aGUgY29kZSByZXZpZXcgcHJvY2Vzcy4gVGhpcyBjYW4gYWxzbyBiZSB1c2VkIHdoZW4geW91cgorcGF0Y2ggaXMgYSBwcm9wb3NhbCwgYnV0IHlvdSBhcmVuJ3Qgc3VyZSB3aGV0aGVyIHRoZSBjb21tdW5pdHkgd2FudHMgdG8gc29sdmUKK3RoZSBwcm9ibGVtIHdpdGggdGhhdCBhcHByb2FjaCBvciBub3QgLSB0byBjb25kdWN0IGEgc29ydCBvZiBkZXNpZ24gcmV2aWV3LiBZb3UKK21heSBhbHNvIHNlZSBvbiB0aGUgbGlzdCBwYXRjaGVzIG1hcmtlZCBgYFdJUCcnIC0gdGhpcyBtZWFucyB0aGV5IGFyZSBpbmNvbXBsZXRlCitidXQgd2FudCByZXZpZXdlcnMgdG8gbG9vayBhdCB3aGF0IHRoZXkgaGF2ZSBzbyBmYXIuIFlvdSBjYW4gYWRkIHRoaXMgZmxhZyB3aXRoCitgLS1zdWJqZWN0LXByZWZpeD1XSVBgLgorCitDaGVjayBhbmQgbWFrZSBzdXJlIHRoYXQgeW91ciBwYXRjaGVzIGFuZCBjb3ZlciBsZXR0ZXIgdGVtcGxhdGUgZXhpc3QgaW4gdGhlCitkaXJlY3RvcnkgeW91IHNwZWNpZmllZCAtIHlvdSdyZSBuZWFybHkgcmVhZHkgdG8gc2VuZCBvdXQgeW91ciByZXZpZXchCisKK1tbY292ZXItbGV0dGVyXV0KKz09PSBQcmVwYXJpbmcgRW1haWwKKworSW4gYWRkaXRpb24gdG8gYW4gZW1haWwgcGVyIHBhdGNoLCB0aGUgR2l0IGNvbW11bml0eSBhbHNvIGV4cGVjdHMgeW91ciBwYXRjaGVzCit0byBjb21lIHdpdGggYSBjb3ZlciBsZXR0ZXIsIHR5cGljYWxseSB3aXRoIGEgc3ViamVjdCBsaW5lIFtQQVRDSCAwL3hdICh3aGVyZQoreCBpcyB0aGUgbnVtYmVyIG9mIHBhdGNoZXMgeW91J3JlIHNlbmRpbmcpLiBTaW5jZSB5b3UgaW52b2tlZCBgZm9ybWF0LXBhdGNoYAord2l0aCBgLS1jb3Zlci1sZXR0ZXJgLCB5b3UndmUgYWxyZWFkeSBnb3QgYSB0ZW1wbGF0ZSByZWFkeS4gT3BlbiBpdCB1cCBpbiB5b3VyCitmYXZvcml0ZSBlZGl0b3IuCisKK1lvdSBzaG91bGQgc2VlIGEgbnVtYmVyIG9mIGhlYWRlcnMgcHJlc2VudCBhbHJlYWR5LiBDaGVjayB0aGF0IHlvdXIgYEZyb206YAoraGVhZGVyIGlzIGNvcnJlY3QuIFRoZW4gbW9kaWZ5IHlvdXIgYFN1YmplY3Q6YCB0byBzb21ldGhpbmcgd2hpY2ggc3VjY2luY3RseQorY292ZXJzIHRoZSBwdXJwb3NlIG9mIHlvdXIgZW50aXJlIHRvcGljIGJyYW5jaCwgZm9yIGV4YW1wbGU6CisKKy0tLS0KK1N1YmplY3Q6IFtQQVRDSCAwLzddIGFkZGluZyB0aGUgJ3BzdWgnIGNvbW1hbmQKKy0tLS0KKworTWFrZSBzdXJlIHlvdSByZXRhaW4gdGhlIGBgW1BBVENIIDAvWF0nJyBwYXJ0OyB0aGF0J3Mgd2hhdCBpbmRpY2F0ZXMgdG8gdGhlIEdpdAorY29tbXVuaXR5IHRoYXQgdGhpcyBlbWFpbCBpcyB0aGUgYmVnaW5uaW5nIG9mIGEgcmV2aWV3LCBhbmQgbWFueSByZXZpZXdlcnMKK2ZpbHRlciB0aGVpciBlbWFpbCBmb3IgdGhpcyB0eXBlIG9mIGZsYWcuCisKK1lvdSdsbCBuZWVkIHRvIGFkZCBzb21lIGV4dHJhIHBhcmFtZXRlcnMgd2hlbiB5b3UgaW52b2tlIGBnaXQgc2VuZC1lbWFpbGAgdG8gYWRkCit0aGUgY292ZXIgbGV0dGVyLgorCitOZXh0IHlvdSdsbCBoYXZlIHRvIGZpbGwgb3V0IHRoZSBib2R5IG9mIHlvdXIgY292ZXIgbGV0dGVyLiBUaGlzIGlzIGFuIGltcG9ydGFudAorY29tcG9uZW50IG9mIGNoYW5nZSBzdWJtaXNzaW9uIGFzIGl0IGV4cGxhaW5zIHRvIHRoZSBjb21tdW5pdHkgZnJvbSBhIGhpZ2ggbGV2ZWwKK3doYXQgeW91J3JlIHRyeWluZyB0byBkbywgYW5kIHdoeSwgaW4gYSB3YXkgdGhhdCdzIG1vcmUgYXBwYXJlbnQgdGhhbiBqdXN0Citsb29raW5nIGF0IHlvdXIgZGlmZi4gQmUgc3VyZSB0byBleHBsYWluIGFueXRoaW5nIHlvdXIgZGlmZiBkb2Vzbid0IG1ha2UgY2xlYXIKK29uIGl0cyBvd24uCisKK0hlcmUncyBhbiBleGFtcGxlIGJvZHkgZm9yIGBwc3VoYDoKKworLS0tLQorT3VyIGludGVybmFsIG1ldHJpY3MgaW5kaWNhdGUgd2lkZXNwcmVhZCBpbnRlcmVzdCBpbiB0aGUgY29tbWFuZAorZ2l0LXBzdWggLSB0aGF0IGlzLCBtYW55IHVzZXJzIGFyZSB0cnlpbmcgdG8gdXNlIGl0LCBidXQgZmluZGluZyBpdCBpcwordW5hdmFpbGFibGUsIHVzaW5nIHNvbWUgdW5rbm93biB3b3JrYXJvdW5kIGluc3RlYWQuCisKK1RoZSBmb2xsb3dpbmcgaGFuZGZ1bCBvZiBwYXRjaGVzIGFkZCB0aGUgcHN1aCBjb21tYW5kIGFuZCBpbXBsZW1lbnQgc29tZQoraGFuZHkgZmVhdHVyZXMgb24gdG9wIG9mIGl0LgorCitUaGlzIHBhdGNoc2V0IGlzIHBhcnQgb2YgdGhlIE15Rmlyc3RDb250cmlidXRpb24gdHV0b3JpYWwgYW5kIHNob3VsZCBub3QKK2JlIG1lcmdlZC4KKy0tLS0KKworVGhlIHRlbXBsYXRlIGNyZWF0ZWQgYnkgYGdpdCBmb3JtYXQtcGF0Y2ggLS1jb3Zlci1sZXR0ZXJgIGluY2x1ZGVzIGEgZGlmZnN0YXQuCitUaGlzIGdpdmVzIHJldmlld2VycyBhIHN1bW1hcnkgb2Ygd2hhdCB0aGV5J3JlIGluIGZvciB3aGVuIHJldmlld2luZyB5b3VyIHRvcGljLgorVGhlIG9uZSBnZW5lcmF0ZWQgZm9yIGBwc3VoYCBmcm9tIHRoZSBzYW1wbGUgaW1wbGVtZW50YXRpb24gbG9va3MgbGlrZSB0aGlzOgorCistLS0tCisgRG9jdW1lbnRhdGlvbi9naXQtcHN1aC50eHQgfCA0MCArKysrKysrKysrKysrKysrKysrKysKKyBNYWtlZmlsZSAgICAgICAgICAgICAgICAgICB8ICAxICsKKyBidWlsdGluLmggICAgICAgICAgICAgICAgICB8ICAxICsKKyBidWlsdGluL3BzdWguYyAgICAgICAgICAgICB8IDczICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgZ2l0LmMgICAgICAgICAgICAgICAgICAgICAgfCAgMSArCisgdC90OTk5OS1wc3VoLXR1dG9yaWFsLnNoICAgfCAxMiArKysrKysrCisgNiBmaWxlcyBjaGFuZ2VkLCAxMjggaW5zZXJ0aW9ucygrKQorIGNyZWF0ZSBtb2RlIDEwMDY0NCBEb2N1bWVudGF0aW9uL2dpdC1wc3VoLnR4dAorIGNyZWF0ZSBtb2RlIDEwMDY0NCBidWlsdGluL3BzdWguYworIGNyZWF0ZSBtb2RlIDEwMDc1NSB0L3Q5OTk5LXBzdWgtdHV0b3JpYWwuc2gKKy0tLS0KKworRmluYWxseSwgdGhlIGxldHRlciB3aWxsIGluY2x1ZGUgdGhlIHZlcnNpb24gb2YgR2l0IHVzZWQgdG8gZ2VuZXJhdGUgdGhlCitwYXRjaGVzLiBZb3UgY2FuIGxlYXZlIHRoYXQgc3RyaW5nIGFsb25lLgorCitbW3NlbmRpbmctZ2l0LXNlbmQtZW1haWxdXQorPT09IFNlbmRpbmcgRW1haWwKKworQXQgdGhpcyBwb2ludCB5b3Ugc2hvdWxkIGhhdmUgYSBkaXJlY3RvcnkgYHBzdWgvYCB3aGljaCBpcyBmaWxsZWQgd2l0aCB5b3VyCitwYXRjaGVzIGFuZCBhIGNvdmVyIGxldHRlci4gVGltZSB0byBtYWlsIGl0IG91dCEgWW91IGNhbiBzZW5kIGl0IGxpa2UgdGhpczoKKworLS0tLQorJCBnaXQgc2VuZC1lbWFpbCAtLXRvPXRhcmdldEBleGFtcGxlLmNvbSBwc3VoLyoucGF0Y2gKKy0tLS0KKworTk9URTogQ2hlY2sgYGdpdCBoZWxwIHNlbmQtZW1haWxgIGZvciBzb21lIG90aGVyIG9wdGlvbnMgd2hpY2ggeW91IG1heSBmaW5kCit2YWx1YWJsZSwgc3VjaCBhcyBjaGFuZ2luZyB0aGUgUmVwbHktdG8gYWRkcmVzcyBvciBhZGRpbmcgbW9yZSBDQyBhbmQgQkNDIGxpbmVzLgorCitOT1RFOiBXaGVuIHlvdSBhcmUgc2VuZGluZyBhIHJlYWwgcGF0Y2gsIGl0IHdpbGwgZ28gdG8gZ2l0QHZnZXIua2VybmVsLm9yZyAtIGJ1dAorcGxlYXNlIGRvbid0IHNlbmQgeW91ciBwYXRjaHNldCBmcm9tIHRoZSB0dXRvcmlhbCB0byB0aGUgcmVhbCBtYWlsaW5nIGxpc3QhIEZvcgorbm93LCB5b3UgY2FuIHNlbmQgaXQgdG8geW91cnNlbGYsIHRvIG1ha2Ugc3VyZSB5b3UgdW5kZXJzdGFuZCBob3cgaXQgd2lsbCBsb29rLgorCitBZnRlciB5b3UgcnVuIHRoZSBjb21tYW5kIGFib3ZlLCB5b3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhbiBpbnRlcmFjdGl2ZQorcHJvbXB0IGZvciBlYWNoIHBhdGNoIHRoYXQncyBhYm91dCB0byBnbyBvdXQuIFRoaXMgZ2l2ZXMgeW91IG9uZSBsYXN0IGNoYW5jZSB0bworZWRpdCBvciBxdWl0IHNlbmRpbmcgc29tZXRoaW5nIChidXQgYWdhaW4sIGRvbid0IGVkaXQgY29kZSB0aGlzIHdheSkuIE9uY2UgeW91CitwcmVzcyBgeWAgb3IgYGFgIGF0IHRoZXNlIHByb21wdHMgeW91ciBlbWFpbHMgd2lsbCBiZSBzZW50ISBDb25ncmF0dWxhdGlvbnMhCisKK0F3ZXNvbWUsIG5vdyB0aGUgY29tbXVuaXR5IHdpbGwgZHJvcCBldmVyeXRoaW5nIGFuZCByZXZpZXcgeW91ciBjaGFuZ2VzLiAoSnVzdAora2lkZGluZyAtIGJlIHBhdGllbnQhKQorCitbW3YyLWdpdC1zZW5kLWVtYWlsXV0KKz09PSBTZW5kaW5nIHYyCisKK1NraXAgYWhlYWQgdG8gPDxyZXZpZXdpbmcsUmVzcG9uZGluZyB0byBSZXZpZXdzPj4gZm9yIGluZm9ybWF0aW9uIG9uIGhvdyB0bworaGFuZGxlIGNvbW1lbnRzIGZyb20gcmV2aWV3ZXJzLiBDb250aW51ZSB0aGlzIHNlY3Rpb24gd2hlbiB5b3VyIHRvcGljIGJyYW5jaCBpcworc2hhcGVkIHRoZSB3YXkgeW91IHdhbnQgaXQgdG8gbG9vayBmb3IgeW91ciBwYXRjaHNldCB2Mi4KKworV2hlbiB5b3UncmUgcmVhZHkgd2l0aCB0aGUgbmV4dCBpdGVyYXRpb24gb2YgeW91ciBwYXRjaCwgdGhlIHByb2Nlc3MgaXMgZmFpcmx5CitzaW1pbGFyLgorCitGaXJzdCwgZ2VuZXJhdGUgeW91ciB2MiBwYXRjaGVzIGFnYWluOgorCistLS0tCiskIGdpdCBmb3JtYXQtcGF0Y2ggLXYyIC0tY292ZXItbGV0dGVyIC1vIHBzdWgvIG1hc3Rlci4ucHN1aAorLS0tLQorCitUaGlzIHdpbGwgYWRkIHlvdXIgdjIgcGF0Y2hlcywgYWxsIG5hbWVkIGxpa2UgYHYyLTAwMG4tbXktY29tbWl0LXN1YmplY3QucGF0Y2hgLAordG8gdGhlIGBwc3VoL2AgZGlyZWN0b3J5LiBZb3UgbWF5IG5vdGljZSB0aGF0IHRoZXkgYXJlIHNpdHRpbmcgYWxvbmdzaWRlIHRoZSB2MQorcGF0Y2hlczsgdGhhdCdzIGZpbmUsIGJ1dCBiZSBjYXJlZnVsIHdoZW4geW91IGFyZSByZWFkeSB0byBzZW5kIHRoZW0uCisKK0VkaXQgeW91ciBjb3ZlciBsZXR0ZXIgYWdhaW4uIE5vdyBpcyBhIGdvb2QgdGltZSB0byBtZW50aW9uIHdoYXQncyBkaWZmZXJlbnQKK2JldHdlZW4geW91ciBsYXN0IHZlcnNpb24gYW5kIG5vdywgaWYgaXQncyBzb21ldGhpbmcgc2lnbmlmaWNhbnQuIFlvdSBkbyBub3QKK25lZWQgdGhlIGV4YWN0IHNhbWUgYm9keSBpbiB5b3VyIHNlY29uZCBjb3ZlciBsZXR0ZXI7IGZvY3VzIG9uIGV4cGxhaW5pbmcgdG8KK3Jldmlld2VycyB0aGUgY2hhbmdlcyB5b3UndmUgbWFkZSB0aGF0IG1heSBub3QgYmUgYXMgdmlzaWJsZS4KKworWW91IHdpbGwgYWxzbyBuZWVkIHRvIGdvIGFuZCBmaW5kIHRoZSBNZXNzYWdlLUlkIG9mIHlvdXIgcHJldmlvdXMgY292ZXIgbGV0dGVyLgorWW91IGNhbiBlaXRoZXIgbm90ZSBpdCB3aGVuIHlvdSBzZW5kIHRoZSBmaXJzdCBzZXJpZXMsIGZyb20gdGhlIG91dHB1dCBvZiBgZ2l0CitzZW5kLWVtYWlsYCwgb3IgeW91IGNhbiBsb29rIGl0IHVwIG9uIHRoZQoraHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvZ2l0W21haWxpbmcgbGlzdF0uIEZpbmQgeW91ciBjb3ZlciBsZXR0ZXIgaW4gdGhlCithcmNoaXZlcywgY2xpY2sgb24gaXQsIHRoZW4gY2xpY2sgInBlcm1hbGluayIgb3IgInJhdyIgdG8gcmV2ZWFsIHRoZSBNZXNzYWdlLUlkCitoZWFkZXIuIEl0IHNob3VsZCBtYXRjaDoKKworLS0tLQorTWVzc2FnZS1JZDogPGZvby4xMjM0NS5hdXRob3JAZXhhbXBsZS5jb20+CistLS0tCisKK1lvdXIgTWVzc2FnZS1JZCBpcyBgPGZvby4xMjM0NS5hdXRob3JAZXhhbXBsZS5jb20+YC4gVGhpcyBleGFtcGxlIHdpbGwgYmUgdXNlZAorYmVsb3cgYXMgd2VsbDsgbWFrZSBzdXJlIHRvIHJlcGxhY2UgaXQgd2l0aCB0aGUgY29ycmVjdCBNZXNzYWdlLUlkIGZvciB5b3VyCisqKnByZXZpb3VzIGNvdmVyIGxldHRlcioqIC0gdGhhdCBpcywgaWYgeW91J3JlIHNlbmRpbmcgdjIsIHVzZSB0aGUgTWVzc2FnZS1JZAorZnJvbSB2MTsgaWYgeW91J3JlIHNlbmRpbmcgdjMsIHVzZSB0aGUgTWVzc2FnZS1JZCBmcm9tIHYyLgorCitXaGlsZSB5b3UncmUgbG9va2luZyBhdCB0aGUgZW1haWwsIHlvdSBzaG91bGQgYWxzbyBub3RlIHdobyBpcyBDQydkLCBhcyBpdCdzCitjb21tb24gcHJhY3RpY2UgaW4gdGhlIG1haWxpbmcgbGlzdCB0byBrZWVwIGFsbCBDQ3Mgb24gYSB0aHJlYWQuIFlvdSBjYW4gYWRkCit0aGVzZSBDQyBsaW5lcyBkaXJlY3RseSB0byB5b3VyIGNvdmVyIGxldHRlciB3aXRoIGEgbGluZSBsaWtlIHNvIGluIHRoZSBoZWFkZXIKKyhiZWZvcmUgdGhlIFN1YmplY3QgbGluZSk6CisKKy0tLS0KK0NDOiBhdXRob3JAZXhhbXBsZS5jb20sIE90aGUgUiA8b3RoZXJAZXhhbXBsZS5jb20+CistLS0tCisKK05vdyBzZW5kIHRoZSBlbWFpbHMgYWdhaW4sIHBheWluZyBjbG9zZSBhdHRlbnRpb24gdG8gd2hpY2ggbWVzc2FnZXMgeW91IHBhc3MgaW4KK3RvIHRoZSBjb21tYW5kOgorCistLS0tCiskIGdpdCBzZW5kLWVtYWlsIC0tdG89dGFyZ2V0QGV4YW1wbGUuY29tCisJCSAtLWluLXJlcGx5LXRvPSI8Zm9vLjEyMzQ1LmF1dGhvckBleGFtcGxlLmNvbT4iCisJCSBwc3VoL3YyKgorLS0tLQorCitbW3NpbmdsZS1wYXRjaF1dCis9PT0gQm9udXMgQ2hhcHRlcjogT25lLVBhdGNoIENoYW5nZXMKKworSW4gc29tZSBjYXNlcywgeW91ciB2ZXJ5IHNtYWxsIGNoYW5nZSBtYXkgY29uc2lzdCBvZiBvbmx5IG9uZSBwYXRjaC4gV2hlbiB0aGF0CitoYXBwZW5zLCB5b3Ugb25seSBuZWVkIHRvIHNlbmQgb25lIGVtYWlsLiBZb3VyIGNvbW1pdCBtZXNzYWdlIHNob3VsZCBhbHJlYWR5IGJlCittZWFuaW5nZnVsIGFuZCBleHBsYWluIGF0IGEgaGlnaCBsZXZlbCB0aGUgcHVycG9zZSAod2hhdCBpcyBoYXBwZW5pbmcgYW5kIHdoeSkKK29mIHlvdXIgcGF0Y2gsIGJ1dCBpZiB5b3UgbmVlZCB0byBzdXBwbHkgZXZlbiBtb3JlIGNvbnRleHQsIHlvdSBjYW4gZG8gc28gYmVsb3cKK3RoZSBgLS0tYCBpbiB5b3VyIHBhdGNoLiBUYWtlIHRoZSBleGFtcGxlIGJlbG93LCB3aGljaCB3YXMgZ2VuZXJhdGVkIHdpdGggYGdpdAorZm9ybWF0LXBhdGNoYCBvbiBhIHNpbmdsZSBjb21taXQsIGFuZCB0aGVuIGVkaXRlZCB0byBhZGQgdGhlIGNvbnRlbnQgYmV0d2VlbgordGhlIGAtLS1gIGFuZCB0aGUgZGlmZnN0YXQuCisKKy0tLS0KK0Zyb20gMTM0NWJiYjNmN2FjNzRhYmRlMDQwYzEyZTczNzIwNDY4OWE3MjcyMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CitEYXRlOiBUaHUsIDE4IEFwciAyMDE5IDE1OjExOjAyIC0wNzAwCitTdWJqZWN0OiBbUEFUQ0hdIFJFQURNRTogY2hhbmdlIHRoZSBncmFtbWFyCisKK0kgdGhpbmsgaXQgbG9va3MgYmV0dGVyIHRoaXMgd2F5LiBUaGlzIHBhcnQgb2YgdGhlIGNvbW1pdCBtZXNzYWdlIHdpbGwKK2VuZCB1cCBpbiB0aGUgY29tbWl0LWxvZy4KKworU2lnbmVkLW9mZi1ieTogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KKy0tLQorTGV0J3MgaGF2ZSBhIHdpbGQgZGlzY3Vzc2lvbiBhYm91dCBncmFtbWFyIG9uIHRoZSBtYWlsaW5nIGxpc3QuIFRoaXMKK3BhcnQgb2YgbXkgZW1haWwgd2lsbCBuZXZlciBlbmQgdXAgaW4gdGhlIGNvbW1pdCBsb2cuIEhlcmUgaXMgd2hlcmUgSQorY2FuIGFkZCBhZGRpdGlvbmFsIGNvbnRleHQgdG8gdGhlIG1haWxpbmcgbGlzdCBhYm91dCBteSBpbnRlbnQsIG91dHNpZGUKK29mIHRoZSBjb250ZXh0IG9mIHRoZSBjb21taXQgbG9nLiBUaGlzIHNlY3Rpb24gd2FzIGFkZGVkIGFmdGVyIGBnaXQKK2Zvcm1hdC1wYXRjaGAgd2FzIHJ1biwgYnkgZWRpdGluZyB0aGUgcGF0Y2ggZmlsZSBpbiBhIHRleHQgZWRpdG9yLgorCisgUkVBRE1FLm1kIHwgMiArLQorIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQorCitkaWZmIC0tZ2l0IGEvUkVBRE1FLm1kIGIvUkVBRE1FLm1kCitpbmRleCA4OGYxMjYxODRjLi4zOGRhNTkzYTYwIDEwMDY0NAorLS0tIGEvUkVBRE1FLm1kCisrKysgYi9SRUFETUUubWQKK0BAIC0zLDcgKzMsNyBAQAorIEdpdCAtIGZhc3QsIHNjYWxhYmxlLCBkaXN0cmlidXRlZCByZXZpc2lvbiBjb250cm9sIHN5c3RlbQorID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCistR2l0IGlzIGEgZmFzdCwgc2NhbGFibGUsIGRpc3RyaWJ1dGVkIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtIHdpdGggYW4KKytHaXQgaXMgYSBmYXN0LCBzY2FsYWJsZSwgYW5kIGRpc3RyaWJ1dGVkIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtIHdpdGggYW4KKyB1bnVzdWFsbHkgcmljaCBjb21tYW5kIHNldCB0aGF0IHByb3ZpZGVzIGJvdGggaGlnaC1sZXZlbCBvcGVyYXRpb25zCisgYW5kIGZ1bGwgYWNjZXNzIHRvIGludGVybmFscy4KKworLS0KKzIuMjEuMC4zOTIuZ2Y4ZjY3ODcxNTllLWdvb2cKKy0tLS0KKworW1tub3ctd2hhdF1dCis9PSBNeSBQYXRjaCBHb3QgRW1haWxlZCAtIE5vdyBXaGF0PworCitbW3Jldmlld2luZ11dCis9PT0gUmVzcG9uZGluZyB0byBSZXZpZXdzCisKK0FmdGVyIGEgZmV3IGRheXMsIHlvdSB3aWxsIGhvcGVmdWxseSByZWNlaXZlIGEgcmVwbHkgdG8geW91ciBwYXRjaHNldCB3aXRoIHNvbWUKK2NvbW1lbnRzLiBXb29ob28hIE5vdyB5b3UgY2FuIGdldCBiYWNrIHRvIHdvcmsuCisKK0l0J3MgZ29vZCBtYW5uZXJzIHRvIHJlcGx5IHRvIGVhY2ggY29tbWVudCwgbm90aWZ5aW5nIHRoZSByZXZpZXdlciB0aGF0IHlvdSBoYXZlCittYWRlIHRoZSBjaGFuZ2UgcmVxdWVzdGVkLCBmZWVsIHRoZSBvcmlnaW5hbCBpcyBiZXR0ZXIsIG9yIHRoYXQgdGhlIGNvbW1lbnQKK2luc3BpcmVkIHlvdSB0byBkbyBzb21ldGhpbmcgYSBuZXcgd2F5IHdoaWNoIGlzIHN1cGVyaW9yIHRvIGJvdGggdGhlIG9yaWdpbmFsCithbmQgdGhlIHN1Z2dlc3RlZCBjaGFuZ2UuIFRoaXMgd2F5IHJldmlld2VycyBkb24ndCBuZWVkIHRvIGluc3BlY3QgeW91ciB2MiB0bworZmlndXJlIG91dCB3aGV0aGVyIHlvdSBpbXBsZW1lbnRlZCB0aGVpciBjb21tZW50IG9yIG5vdC4KKworSWYgeW91IGFyZSBnb2luZyB0byBwdXNoIGJhY2sgb24gYSBjb21tZW50LCBiZSBwb2xpdGUgYW5kIGV4cGxhaW4gd2h5IHlvdSBmZWVsCit5b3VyIG9yaWdpbmFsIGlzIGJldHRlcjsgYmUgcHJlcGFyZWQgdGhhdCB0aGUgcmV2aWV3ZXIgbWF5IHN0aWxsIGRpc2FncmVlIHdpdGgKK3lvdSwgYW5kIHRoZSByZXN0IG9mIHRoZSBjb21tdW5pdHkgbWF5IHdlaWdoIGluIG9uIG9uZSBzaWRlIG9yIHRoZSBvdGhlci4gQXMKK3dpdGggYWxsIGNvZGUgcmV2aWV3cywgaXQncyBpbXBvcnRhbnQgdG8ga2VlcCBhbiBvcGVuIG1pbmQgdG8gZG9pbmcgc29tZXRoaW5nIGEKK2RpZmZlcmVudCB3YXkgdGhhbiB5b3Ugb3JpZ2luYWxseSBwbGFubmVkOyBvdGhlciByZXZpZXdlcnMgaGF2ZSBhIGRpZmZlcmVudAorcGVyc3BlY3RpdmUgb24gdGhlIHByb2plY3QgdGhhbiB5b3UgZG8sIGFuZCBtYXkgYmUgdGhpbmtpbmcgb2YgYSB2YWxpZCBzaWRlCitlZmZlY3Qgd2hpY2ggaGFkIG5vdCBvY2N1cnJlZCB0byB5b3UuIEl0IGlzIGFsd2F5cyBva2F5IHRvIGFzayBmb3IgY2xhcmlmaWNhdGlvbgoraWYgeW91IGFyZW4ndCBzdXJlIHdoeSBhIGNoYW5nZSB3YXMgc3VnZ2VzdGVkLCBvciB3aGF0IHRoZSByZXZpZXdlciBpcyBhc2tpbmcKK3lvdSB0byBkby4KKworTWFrZSBzdXJlIHlvdXIgZW1haWwgY2xpZW50IGhhcyBhIHBsYWludGV4dCBlbWFpbCBtb2RlIGFuZCBpdCBpcyB0dXJuZWQgb247IHRoZQorR2l0IGxpc3QgcmVqZWN0cyBIVE1MIGVtYWlsLiBQbGVhc2UgYWxzbyBmb2xsb3cgdGhlIG1haWxpbmcgbGlzdCBldGlxdWV0dGUKK291dGxpbmVkIGluIHRoZQoraHR0cHM6Ly9rZXJuZWwuZ29vZ2xlc291cmNlLmNvbS9wdWIvc2NtL2dpdC9naXQvKy90b2RvL01haW50Tm90ZXNbTWFpbnRhaW5lcidzCitOb3RlXSwgd2hpY2ggYXJlIHNpbWlsYXIgdG8gZXRpcXVldHRlIHJ1bGVzIGluIG1vc3Qgb3BlbiBzb3VyY2UgY29tbXVuaXRpZXMKK3N1cnJvdW5kaW5nIGJvdHRvbS1wb3N0aW5nIGFuZCBpbmxpbmUgcmVwbGllcy4KKworV2hlbiB5b3UncmUgbWFraW5nIGNoYW5nZXMgdG8geW91ciBjb2RlLCBpdCBpcyBjbGVhbmVzdCAtIHRoYXQgaXMsIHRoZSByZXN1bHRpbmcKK2NvbW1pdHMgYXJlIGVhc2llc3QgdG8gbG9vayBhdCAtIGlmIHlvdSB1c2UgYGdpdCByZWJhc2UgLWlgIChpbnRlcmFjdGl2ZQorcmViYXNlKS4gVGFrZSBhIGxvb2sgYXQgdGhpcworaHR0cHM6Ly93d3cub3JlaWxseS5jb20vbGlicmFyeS92aWV3L2dpdC1wb2NrZXQtZ3VpZGUvOTc4MTQ0OTMyNzUwNy9jaDEwLmh0bWxbb3ZlcnZpZXddCitmcm9tIE8nUmVpbGx5LiBUaGUgZ2VuZXJhbCBpZGVhIGlzIHRvIG1vZGlmeSBlYWNoIGNvbW1pdCB3aGljaCByZXF1aXJlcyBjaGFuZ2VzOwordGhpcyB3YXksIGluc3RlYWQgb2YgaGF2aW5nIGEgcGF0Y2ggQSB3aXRoIGEgbWlzdGFrZSwgYSBwYXRjaCBCIHdoaWNoIHdhcyBmaW5lCithbmQgcmVxdWlyZWQgbm8gdXBzdHJlYW0gcmV2aWV3cyBpbiB2MSwgYW5kIGEgcGF0Y2ggQyB3aGljaCBmaXhlcyBwYXRjaCBBIGZvcgordjIsIHlvdSBjYW4ganVzdCBzaGlwIGEgdjIgd2l0aCBhIGNvcnJlY3QgcGF0Y2ggQSBhbmQgY29ycmVjdCBwYXRjaCBCLiBUaGlzIGlzCitjaGFuZ2luZyBoaXN0b3J5LCBidXQgc2luY2UgaXQncyBsb2NhbCBoaXN0b3J5IHdoaWNoIHlvdSBoYXZlbid0IHNoYXJlZCB3aXRoCithbnlvbmUsIHRoYXQgaXMgb2theSBmb3Igbm93ISAoTGF0ZXIsIGl0IG1heSBub3QgbWFrZSBzZW5zZSB0byBkbyB0aGlzOyB0YWtlIGEKK2xvb2sgYXQgdGhlIHNlY3Rpb24gYmVsb3cgdGhpcyBvbmUgZm9yIHNvbWUgY29udGV4dC4pCisKK1tbYWZ0ZXItYXBwcm92YWxdXQorPT09IEFmdGVyIFJldmlldyBBcHByb3ZhbAorCitUaGUgR2l0IHByb2plY3QgaGFzIGZvdXIgaW50ZWdyYXRpb24gYnJhbmNoZXM6IGBwdWAsIGBuZXh0YCwgYG1hc3RlcmAsIGFuZAorYG1haW50YC4gWW91ciBjaGFuZ2Ugd2lsbCBiZSBwbGFjZWQgaW50byBgcHVgIGZhaXJseSBlYXJseSBvbiBieSB0aGUgbWFpbnRhaW5lcgord2hpbGUgaXQgaXMgc3RpbGwgaW4gdGhlIHJldmlldyBwcm9jZXNzOyBmcm9tIHRoZXJlLCB3aGVuIGl0IGlzIHJlYWR5IGZvciB3aWRlcgordGVzdGluZywgaXQgd2lsbCBiZSBtZXJnZWQgaW50byBgbmV4dGAuIFBsZW50eSBvZiBlYXJseSB0ZXN0ZXJzIHVzZSBgbmV4dGAgYW5kCittYXkgcmVwb3J0IGlzc3Vlcy4gRXZlbnR1YWxseSwgY2hhbmdlcyBpbiBgbmV4dGAgd2lsbCBtYWtlIGl0IHRvIGBtYXN0ZXJgLAord2hpY2ggaXMgdHlwaWNhbGx5IGNvbnNpZGVyZWQgc3RhYmxlLiBGaW5hbGx5LCB3aGVuIGEgbmV3IHJlbGVhc2UgaXMgY3V0LAorYG1haW50YCBpcyB1c2VkIHRvIGJhc2UgYnVnZml4ZXMgb250by4gQXMgbWVudGlvbmVkIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhpcworZG9jdW1lbnQsIHlvdSBjYW4gcmVhZCBgRG9jdW1lbnRzL1N1Ym1pdHRpbmdQYXRjaGVzYCBmb3Igc29tZSBtb3JlIGluZm8gYWJvdXQKK3RoZSB1c2Ugb2YgdGhlIHZhcmlvdXMgaW50ZWdyYXRpb24gYnJhbmNoZXMuCisKK0JhY2sgdG8gbm93OiB5b3VyIGNvZGUgaGFzIGJlZW4gbGF1ZGVkIGJ5IHRoZSB1cHN0cmVhbSByZXZpZXdlcnMuIEl0IGlzIHBlcmZlY3QuCitJdCBpcyByZWFkeSB0byBiZSBhY2NlcHRlZC4gWW91IGRvbid0IG5lZWQgdG8gZG8gYW55dGhpbmcgZWxzZTsgdGhlIG1haW50YWluZXIKK3dpbGwgbWVyZ2UgeW91ciB0b3BpYyBicmFuY2ggdG8gYG5leHRgIGFuZCBsaWZlIGlzIGdvb2QuCisKK0hvd2V2ZXIsIGlmIHlvdSBkaXNjb3ZlciBpdCBpc24ndCBzbyBwZXJmZWN0IGFmdGVyIHRoaXMgcG9pbnQsIHlvdSBtYXkgbmVlZCB0bwordGFrZSBzb21lIHNwZWNpYWwgc3RlcHMgZGVwZW5kaW5nIG9uIHdoZXJlIHlvdSBhcmUgaW4gdGhlIHByb2Nlc3MuCisKK0lmIHRoZSBtYWludGFpbmVyIGhhcyBhbm5vdW5jZWQgaW4gdGhlICJXaGF0J3MgY29va2luZyBpbiBnaXQuZ2l0IiBlbWFpbCB0aGF0Cit5b3VyIHRvcGljIGlzIG1hcmtlZCBmb3IgYG5leHRgIC0gdGhhdCBpcywgdGhhdCB0aGV5IHBsYW4gdG8gbWVyZ2UgaXQgdG8gYG5leHRgCitidXQgaGF2ZSBub3QgeWV0IGRvbmUgc28gLSB5b3Ugc2hvdWxkIHNlbmQgYW4gZW1haWwgYXNraW5nIHRoZSBtYWludGFpbmVyIHRvCit3YWl0IGEgbGl0dGxlIGxvbmdlcjogIkkndmUgc2VudCB2NCBvZiBteSBzZXJpZXMgYW5kIHlvdSBtYXJrZWQgaXQgZm9yIGBuZXh0YCwKK2J1dCBJIG5lZWQgdG8gY2hhbmdlIHRoaXMgYW5kIHRoYXQgLSBwbGVhc2Ugd2FpdCBmb3IgdjUgYmVmb3JlIHlvdSBtZXJnZSBpdC4iCisKK0lmIHRoZSB0b3BpYyBoYXMgYWxyZWFkeSBiZWVuIG1lcmdlZCB0byBgbmV4dGAsIHJhdGhlciB0aGFuIG1vZGlmeWluZyB5b3VyCitwYXRjaGVzIHdpdGggYGdpdCByZWJhc2UgLWlgLCB5b3Ugc2hvdWxkIG1ha2UgZnVydGhlciBjaGFuZ2VzIGluY3JlbWVudGFsbHkgLQordGhhdCBpcywgd2l0aCBhbm90aGVyIGNvbW1pdCwgYmFzZWQgb24gdG9wIG9mIHRoZSBtYWludGFpbmVyJ3MgdG9waWMgYnJhbmNoIGFzCitkZXRhaWxlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vZ2l0c3Rlci9naXQuIFlvdXIgd29yayBpcyBzdGlsbCBpbiB0aGUgc2FtZSB0b3BpYworYnV0IGlzIG5vdyBpbmNyZW1lbnRhbCwgcmF0aGVyIHRoYW4gYSB3aG9sZXNhbGUgcmV3cml0ZSBvZiB0aGUgdG9waWMgYnJhbmNoLgorCitUaGUgdG9waWMgYnJhbmNoZXMgaW4gdGhlIG1haW50YWluZXIncyBHaXRIdWIgYXJlIG1pcnJvcmVkIGluIEdpdEdpdEdhZGdldCwgc28KK2lmIHlvdSdyZSBzZW5kaW5nIHlvdXIgcmV2aWV3cyBvdXQgdGhhdCB3YXksIHlvdSBzaG91bGQgYmUgc3VyZSB0byBvcGVuIHlvdXIgUFIKK2FnYWluc3QgdGhlIGFwcHJvcHJpYXRlIEdpdEdpdEdhZGdldC9HaXQgYnJhbmNoLgorCitJZiB5b3UncmUgdXNpbmcgYGdpdCBzZW5kLWVtYWlsYCwgeW91IGNhbiB1c2UgaXQgdGhlIHNhbWUgd2F5IGFzIGJlZm9yZSwgYnV0IHlvdQorc2hvdWxkIGdlbmVyYXRlIHlvdXIgZGlmZnMgZnJvbSBgPHRvcGljPi4uPG15YnJhbmNoPmAgYW5kIGJhc2UgeW91ciB3b3JrIG9uCitgPHRvcGljPmAgaW5zdGVhZCBvZiBgbWFzdGVyYC4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vTXlGaXJzdE9iamVjdFdhbGsudHh0IGIvRG9jdW1lbnRhdGlvbi9NeUZpcnN0T2JqZWN0V2Fsay50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWE4MjhkZgotLS0gL2Rldi9udWxsCisrKyBiL0RvY3VtZW50YXRpb24vTXlGaXJzdE9iamVjdFdhbGsudHh0CkBAIC0wLDAgKzEsOTA1IEBACis9IE15IEZpcnN0IE9iamVjdCBXYWxrCisKKz09IFdoYXQncyBhbiBPYmplY3QgV2Fsaz8KKworVGhlIG9iamVjdCB3YWxrIGlzIGEga2V5IGNvbmNlcHQgaW4gR2l0IC0gdGhpcyBpcyB0aGUgcHJvY2VzcyB0aGF0IHVuZGVycGlucworb3BlcmF0aW9ucyBsaWtlIG9iamVjdCB0cmFuc2ZlciBhbmQgZnNjay4gQmVnaW5uaW5nIGZyb20gYSBnaXZlbiBjb21taXQsIHRoZQorbGlzdCBvZiBvYmplY3RzIGlzIGZvdW5kIGJ5IHdhbGtpbmcgcGFyZW50IHJlbGF0aW9uc2hpcHMgYmV0d2VlbiBjb21taXRzIChjb21taXQKK1ggYmFzZWQgb24gY29tbWl0IFcpIGFuZCBjb250YWlubWVudCByZWxhdGlvbnNoaXBzIGJldHdlZW4gb2JqZWN0cyAodHJlZSBZIGlzCitjb250YWluZWQgd2l0aGluIGNvbW1pdCBYLCBhbmQgYmxvYiBaIGlzIGxvY2F0ZWQgd2l0aGluIHRyZWUgWSwgZ2l2aW5nIG91cgord29ya2luZyB0cmVlIGZvciBjb21taXQgWCBzb21ldGhpbmcgbGlrZSBgeS96LnR4dGApLgorCitBIHJlbGF0ZWQgY29uY2VwdCBpcyB0aGUgcmV2aXNpb24gd2Fsaywgd2hpY2ggaXMgZm9jdXNlZCBvbiBjb21taXQgb2JqZWN0cyBhbmQKK3RoZWlyIHBhcmVudCByZWxhdGlvbnNoaXBzIGFuZCBkb2VzIG5vdCBkZWx2ZSBpbnRvIG90aGVyIG9iamVjdCB0eXBlcy4gVGhlCityZXZpc2lvbiB3YWxrIGlzIHVzZWQgZm9yIG9wZXJhdGlvbnMgbGlrZSBgZ2l0IGxvZ2AuCisKKz09PSBSZWxhdGVkIFJlYWRpbmcKKworLSBgRG9jdW1lbnRhdGlvbi91c2VyLW1hbnVhbC50eHRgIHVuZGVyICJIYWNraW5nIEdpdCIgY29udGFpbnMgc29tZSBjb3ZlcmFnZSBvZgorICB0aGUgcmV2aXNpb24gd2Fsa2VyIGluIGl0cyB2YXJpb3VzIGluY2FybmF0aW9ucy4KKy0gYHJldmlzaW9uLmhgCistIGh0dHBzOi8vZWFnYWluLm5ldC9hcnRpY2xlcy9naXQtZm9yLWNvbXB1dGVyLXNjaWVudGlzdHMvW0dpdCBmb3IgQ29tcHV0ZXIgU2NpZW50aXN0c10KKyAgZ2l2ZXMgYSBnb29kIG92ZXJ2aWV3IG9mIHRoZSB0eXBlcyBvZiBvYmplY3RzIGluIEdpdCBhbmQgd2hhdCB5b3VyIG9iamVjdAorICB3YWxrIGlzIHJlYWxseSBkZXNjcmliaW5nLgorCis9PSBTZXR0aW5nIFVwCisKK0NyZWF0ZSBhIG5ldyBicmFuY2ggZnJvbSBgbWFzdGVyYC4KKworLS0tLQorZ2l0IGNoZWNrb3V0IC1iIHJldndhbGsgb3JpZ2luL21hc3RlcgorLS0tLQorCitXZSdsbCBwdXQgb3VyIGZpZGRsaW5nIGludG8gYSBuZXcgY29tbWFuZC4gRm9yIGZ1biwgbGV0J3MgbmFtZSBpdCBgZ2l0IHdhbGtlbmAuCitPcGVuIHVwIGEgbmV3IGZpbGUgYGJ1aWx0aW4vd2Fsa2VuLmNgIGFuZCBzZXQgdXAgdGhlIGNvbW1hbmQgaGFuZGxlcjoKKworLS0tLQorLyoKKyAqICJnaXQgd2Fsa2VuIgorICoKKyAqIFBhcnQgb2YgdGhlICJNeSBGaXJzdCBPYmplY3QgV2FsayIgdHV0b3JpYWwuCisgKi8KKworI2luY2x1ZGUgImJ1aWx0aW4uaCIKKworaW50IGNtZF93YWxrZW4oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCit7CisJdHJhY2VfcHJpbnRmKF8oImNtZF93YWxrZW4gaW5jb21pbmcuLi5cbiIpKTsKKwlyZXR1cm4gMDsKK30KKy0tLS0KKworTk9URTogYHRyYWNlX3ByaW50ZigpYCBkaWZmZXJzIGZyb20gYHByaW50ZigpYCBpbiB0aGF0IGl0IGNhbiBiZSB0dXJuZWQgb24gb3IKK29mZiBhdCBydW50aW1lLiBGb3IgdGhlIHB1cnBvc2VzIG9mIHRoaXMgdHV0b3JpYWwsIHdlIHdpbGwgd3JpdGUgYHdhbGtlbmAgYXMKK3Rob3VnaCBpdCBpcyBpbnRlbmRlZCBmb3IgdXNlIGFzIGEgInBsdW1iaW5nIiBjb21tYW5kOiB0aGF0IGlzLCBhIGNvbW1hbmQgd2hpY2gKK2lzIHVzZWQgcHJpbWFyaWx5IGluIHNjcmlwdHMsIHJhdGhlciB0aGFuIGludGVyYWN0aXZlbHkgYnkgaHVtYW5zIChhICJwb3JjZWxhaW4iCitjb21tYW5kKS4gU28gd2Ugd2lsbCBzZW5kIG91ciBkZWJ1ZyBvdXRwdXQgdG8gYHRyYWNlX3ByaW50ZigpYCBpbnN0ZWFkLiBXaGVuCitydW5uaW5nLCBlbmFibGUgdHJhY2Ugb3V0cHV0IGJ5IHNldHRpbmcgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIGBHSVRfVFJBQ0VgLgorCitBZGQgdXNhZ2UgdGV4dCBhbmQgYC1oYCBoYW5kbGluZywgbGlrZSBhbGwgc3ViY29tbWFuZHMgc2hvdWxkIGNvbnNpc3RlbnRseSBkbworKG91ciB0ZXN0IHN1aXRlIHdpbGwgbm90aWNlIGFuZCBjb21wbGFpbiBpZiB5b3UgZmFpbCB0byBkbyBzbykuCisKKy0tLS0KK2ludCBjbWRfd2Fsa2VuKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KQoreworCWNvbnN0IGNoYXIgKiBjb25zdCB3YWxrZW5fdXNhZ2VbXSA9IHsKKwkJTl8oImdpdCB3YWxrZW4iKSwKKwkJTlVMTCwKKwl9CisJc3RydWN0IG9wdGlvbiBvcHRpb25zW10gPSB7CisJCU9QVF9FTkQoKQorCX07CisKKwlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsIG9wdGlvbnMsIHdhbGtlbl91c2FnZSwgMCk7CisKKwkuLi4KK30KKy0tLS0KKworQWxzbyBhZGQgdGhlIHJlbGV2YW50IGxpbmUgaW4gYGJ1aWx0aW4uaGAgbmVhciBgY21kX3doYXRjaGFuZ2VkKClgOgorCistLS0tCitpbnQgY21kX3dhbGtlbihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CistLS0tCisKK0luY2x1ZGUgdGhlIGNvbW1hbmQgaW4gYGdpdC5jYCBpbiBgY29tbWFuZHNbXWAgbmVhciB0aGUgZW50cnkgZm9yIGB3aGF0Y2hhbmdlZGAsCittYWludGFpbmluZyBhbHBoYWJldGljYWwgb3JkZXJpbmc6CisKKy0tLS0KK3sgIndhbGtlbiIsIGNtZF93YWxrZW4sIFJVTl9TRVRVUCB9LAorLS0tLQorCitBZGQgaXQgdG8gdGhlIGBNYWtlZmlsZWAgbmVhciB0aGUgbGluZSBmb3IgYGJ1aWx0aW4vd29ya3RyZWUub2A6CisKKy0tLS0KK0JVSUxUSU5fT0JKUyArPSBidWlsdGluL3dhbGtlbi5vCistLS0tCisKK0J1aWxkIGFuZCB0ZXN0IG91dCB5b3VyIGNvbW1hbmQsIHdpdGhvdXQgZm9yZ2V0dGluZyB0byBlbnN1cmUgdGhlIGBERVZFTE9QRVJgCitmbGFnIGlzIHNldCwgYW5kIHdpdGggYEdJVF9UUkFDRWAgZW5hYmxlZCBzbyB0aGUgZGVidWcgb3V0cHV0IGNhbiBiZSBzZWVuOgorCistLS0tCiskIGVjaG8gREVWRUxPUEVSPTEgPj5jb25maWcubWFrCiskIG1ha2UKKyQgR0lUX1RSQUNFPTEgLi9iaW4td3JhcHBlcnMvZ2l0IHdhbGtlbgorLS0tLQorCitOT1RFOiBGb3IgYSBtb3JlIGV4aGF1c3RpdmUgb3ZlcnZpZXcgb2YgdGhlIG5ldyBjb21tYW5kIHByb2Nlc3MsIHRha2UgYSBsb29rIGF0CitgRG9jdW1lbnRhdGlvbi9NeUZpcnN0Q29udHJpYnV0aW9uLnR4dGAuCisKK05PVEU6IEEgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIGNhbiBiZSBmb3VuZCBhdAoraHR0cHM6Ly9naXRodWIuY29tL25hc2FtdWZmaW4vZ2l0L3RyZWUvcmV2d2Fsay4KKworPT09IGBzdHJ1Y3QgcmV2X2NtZGxpbmVfaW5mb2AKKworVGhlIGRlZmluaXRpb24gb2YgYHN0cnVjdCByZXZfY21kbGluZV9pbmZvYCBjYW4gYmUgZm91bmQgaW4gYHJldmlzaW9uLmhgLgorCitUaGlzIHN0cnVjdCBpcyBjb250YWluZWQgd2l0aGluIHRoZSBgcmV2X2luZm9gIHN0cnVjdCBhbmQgaXMgdXNlZCB0byByZWZsZWN0CitwYXJhbWV0ZXJzIHByb3ZpZGVkIGJ5IHRoZSB1c2VyIG92ZXIgdGhlIENMSS4KKworYG5yYCByZXByZXNlbnRzIHRoZSBudW1iZXIgb2YgYHJldl9jbWRsaW5lX2VudHJ5YCBwcmVzZW50IGluIHRoZSBhcnJheS4KKworYGFsbG9jYCBpcyB1c2VkIGJ5IHRoZSBgQUxMT0NfR1JPV2AgbWFjcm8uIENoZWNrIGBjYWNoZS5oYCAtIHRoaXMgdmFyaWFibGUgaXMKK3VzZWQgdG8gdHJhY2sgdGhlIGFsbG9jYXRlZCBzaXplIG9mIHRoZSBsaXN0LgorCitQZXIgZW50cnksIHdlIGZpbmQ6CisKK2BpdGVtYCBpcyB0aGUgb2JqZWN0IHByb3ZpZGVkIHVwb24gd2hpY2ggdG8gYmFzZSB0aGUgb2JqZWN0IHdhbGsuIEl0ZW1zIGluIEdpdAorY2FuIGJlIGJsb2JzLCB0cmVlcywgY29tbWl0cywgb3IgdGFncy4gKFNlZSBgRG9jdW1lbnRhdGlvbi9naXR0dXRvcmlhbC0yLnR4dGAuKQorCitgbmFtZWAgaXMgdGhlIG9iamVjdCBJRCAoT0lEKSBvZiB0aGUgb2JqZWN0IC0gYSBoZXggc3RyaW5nIHlvdSBtYXkgYmUgZmFtaWxpYXIKK3dpdGggZnJvbSB1c2luZyBHaXQgdG8gb3JnYW5pemUgeW91ciBzb3VyY2UgaW4gdGhlIHBhc3QuIENoZWNrIHRoZSB0dXRvcmlhbAorbWVudGlvbmVkIGFib3ZlIHRvd2FyZHMgdGhlIHRvcCBmb3IgYSBkaXNjdXNzaW9uIG9mIHdoZXJlIHRoZSBPSUQgY2FuIGNvbWUKK2Zyb20uCisKK2B3aGVuY2VgIGluZGljYXRlcyBzb21lIGluZm9ybWF0aW9uIGFib3V0IHdoYXQgdG8gZG8gd2l0aCB0aGUgcGFyZW50cyBvZiB0aGUKK3NwZWNpZmllZCBvYmplY3QuIFdlJ2xsIGV4cGxvcmUgdGhpcyBmbGFnIG1vcmUgbGF0ZXIgb247IHRha2UgYSBsb29rIGF0CitgRG9jdW1lbnRhdGlvbi9yZXZpc2lvbnMudHh0YCB0byBnZXQgYW4gaWRlYSBvZiB3aGF0IGNvdWxkIHNldCB0aGUgYHdoZW5jZWAKK3ZhbHVlLgorCitgZmxhZ3NgIGFyZSB1c2VkIHRvIGhpbnQgdGhlIGJlZ2lubmluZyBvZiB0aGUgcmV2aXNpb24gd2FsayBhbmQgYXJlIHRoZSBmaXJzdAorYmxvY2sgdW5kZXIgdGhlIGAjaW5jbHVkZWBzIGluIGByZXZpc2lvbi5oYC4gVGhlIG1vc3QgbGlrZWx5IG9uZXMgdG8gYmUgc2V0IGluCit0aGUgYHJldl9jbWRsaW5lX2luZm9gIGFyZSBgVU5JTlRFUkVTVElOR2AgYW5kIGBCT1RUT01gLCBidXQgdGhlc2Ugc2FtZSBmbGFncworY2FuIGJlIHVzZWQgZHVyaW5nIHRoZSB3YWxrLCBhcyB3ZWxsLgorCis9PT0gYHN0cnVjdCByZXZfaW5mb2AKKworVGhpcyBvbmUgaXMgcXVpdGUgYSBiaXQgbG9uZ2VyLCBhbmQgbWFueSBmaWVsZHMgYXJlIG9ubHkgdXNlZCBkdXJpbmcgdGhlIHdhbGsKK2J5IGByZXZpc2lvbi5jYCAtIG5vdCBjb25maWd1cmF0aW9uIG9wdGlvbnMuIE1vc3Qgb2YgdGhlIGNvbmZpZ3VyYWJsZSBmbGFncyBpbgorYHN0cnVjdCByZXZfaW5mb2AgaGF2ZSBhIG1pcnJvciBpbiBgRG9jdW1lbnRhdGlvbi9yZXYtbGlzdC1vcHRpb25zLnR4dGAuIEl0J3MgYQorZ29vZCBpZGVhIHRvIHRha2Ugc29tZSB0aW1lIGFuZCByZWFkIHRocm91Z2ggdGhhdCBkb2N1bWVudC4KKworPT0gQmFzaWMgQ29tbWl0IFdhbGsKKworRmlyc3QsIGxldCdzIHNlZSBpZiB3ZSBjYW4gcmVwbGljYXRlIHRoZSBvdXRwdXQgb2YgYGdpdCBsb2cgLS1vbmVsaW5lYC4gV2UnbGwKK3JlZmVyIGJhY2sgdG8gdGhlIGltcGxlbWVudGF0aW9uIGZyZXF1ZW50bHkgdG8gZGlzY292ZXIgbm9ybXMgd2hlbiBwZXJmb3JtaW5nCithbiBvYmplY3Qgd2FsayBvZiBvdXIgb3duLgorCitUbyBkbyBzbywgd2UnbGwgZmlyc3QgZmluZCBhbGwgdGhlIGNvbW1pdHMsIGluIG9yZGVyLCB3aGljaCBwcmVjZWRlZCB0aGUgY3VycmVudAorY29tbWl0LiBXZSdsbCBleHRyYWN0IHRoZSBuYW1lIGFuZCBzdWJqZWN0IG9mIHRoZSBjb21taXQgZnJvbSBlYWNoLgorCitJZGVhbGx5LCB3ZSB3aWxsIGFsc28gYmUgYWJsZSB0byBmaW5kIG91dCB3aGljaCBvbmVzIGFyZSBjdXJyZW50bHkgYXQgdGhlIHRpcCBvZgordmFyaW91cyBicmFuY2hlcy4KKworPT09IFNldHRpbmcgVXAKKworUHJlcGFyaW5nIGZvciB5b3VyIG9iamVjdCB3YWxrIGhhcyBzb21lIGRpc3RpbmN0IHN0YWdlcy4KKworMS4gUGVyZm9ybSBkZWZhdWx0IHNldHVwIGZvciB0aGlzIG1vZGUsIGFuZCBvdGhlcnMgd2hpY2ggbWF5IGJlIGludm9rZWQuCisyLiBDaGVjayBjb25maWd1cmF0aW9uIGZpbGVzIGZvciByZWxldmFudCBzZXR0aW5ncy4KKzMuIFNldCB1cCB0aGUgYHJldl9pbmZvYCBzdHJ1Y3QuCis0LiBUd2VhayB0aGUgaW5pdGlhbGl6ZWQgYHJldl9pbmZvYCB0byBzdWl0IHRoZSBjdXJyZW50IHdhbGsuCis1LiBQcmVwYXJlIHRoZSBgcmV2X2luZm9gIGZvciB0aGUgd2Fsay4KKzYuIEl0ZXJhdGUgb3ZlciB0aGUgb2JqZWN0cywgcHJvY2Vzc2luZyBlYWNoIG9uZS4KKworPT09PSBEZWZhdWx0IFNldHVwcworCitCZWZvcmUgZXhhbWluaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgd2hpY2ggbWF5IG1vZGlmeSBjb21tYW5kIGJlaGF2aW9yLCBzZXQgdXAKK2RlZmF1bHQgc3RhdGUgZm9yIHN3aXRjaGVzIG9yIG9wdGlvbnMgeW91ciBjb21tYW5kIG1heSBoYXZlLiBJZiB5b3VyIGNvbW1hbmQKK3V0aWxpemVzIG90aGVyIEdpdCBjb21wb25lbnRzLCBhc2sgdGhlbSB0byBzZXQgdXAgdGhlaXIgZGVmYXVsdCBzdGF0ZXMgYXMgd2VsbC4KK0ZvciBpbnN0YW5jZSwgYGdpdCBsb2dgIHRha2VzIGFkdmFudGFnZSBvZiBgZ3JlcGAgYW5kIGBkaWZmYCBmdW5jdGlvbmFsaXR5LCBzbworaXRzIGBpbml0X2xvZ19kZWZhdWx0cygpYCBzZXRzIGl0cyBvd24gc3RhdGUgKGBkZWNvcmF0aW9uX3N0eWxlYCkgYW5kIGFza3MKK2BncmVwYCBhbmQgYGRpZmZgIHRvIGluaXRpYWxpemUgdGhlbXNlbHZlcyBieSBjYWxsaW5nIGVhY2ggb2YgdGhlaXIKK2luaXRpYWxpemF0aW9uIGZ1bmN0aW9ucy4KKworRm9yIG91ciBmaXJzdCBleGFtcGxlIHdpdGhpbiBgZ2l0IHdhbGtlbmAsIHdlIGRvbid0IGludGVuZCB0byB1c2UgYW55IG90aGVyCitjb21wb25lbnRzIHdpdGhpbiBHaXQsIGFuZCB3ZSBkb24ndCBoYXZlIGFueSBjb25maWd1cmF0aW9uIHRvIGRvLiAgSG93ZXZlciwgd2UKK21heSB3YW50IHRvIGFkZCBzb21lIGxhdGVyLCBzbyBmb3Igbm93LCB3ZSBjYW4gYWRkIGFuIGVtcHR5IHBsYWNlaG9sZGVyLiBDcmVhdGUKK2EgbmV3IGZ1bmN0aW9uIGluIGBidWlsdGluL3dhbGtlbi5jYDoKKworLS0tLQorc3RhdGljIHZvaWQgaW5pdF93YWxrZW5fZGVmYXVsdHModm9pZCkKK3sKKwkvKgorCSAqIFdlIGRvbid0IGFjdHVhbGx5IG5lZWQgdGhlIHNhbWUgY29tcG9uZW50cyBgZ2l0IGxvZ2AgZG9lczsgbGVhdmUgdGhpcworCSAqIGVtcHR5IGZvciBub3cuCisJICovCit9CistLS0tCisKK01ha2Ugc3VyZSB0byBhZGQgYSBsaW5lIGludm9raW5nIGl0IGluc2lkZSBvZiBgY21kX3dhbGtlbigpYC4KKworLS0tLQoraW50IGNtZF93YWxrZW4oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCit7CisJaW5pdF93YWxrZW5fZGVmYXVsdHMoKTsKK30KKy0tLS0KKworPT09PSBDb25maWd1cmluZyBGcm9tIGAuZ2l0Y29uZmlnYAorCitOZXh0LCB3ZSBzaG91bGQgaGF2ZSBhIGxvb2sgYXQgYW55IHJlbGV2YW50IGNvbmZpZ3VyYXRpb24gc2V0dGluZ3MgKGkuZS4sCitzZXR0aW5ncyByZWFkYWJsZSBhbmQgc2V0dGFibGUgZnJvbSBgZ2l0IGNvbmZpZ2ApLiBUaGlzIGlzIGRvbmUgYnkgcHJvdmlkaW5nIGEKK2NhbGxiYWNrIHRvIGBnaXRfY29uZmlnKClgOyB3aXRoaW4gdGhhdCBjYWxsYmFjaywgeW91IGNhbiBhbHNvIGludm9rZSBtZXRob2RzCitmcm9tIG90aGVyIGNvbXBvbmVudHMgeW91IG1heSBuZWVkIHRoYXQgbmVlZCB0byBpbnRlcmNlcHQgdGhlc2Ugb3B0aW9ucy4gWW91cgorY2FsbGJhY2sgd2lsbCBiZSBpbnZva2VkIG9uY2UgcGVyIGVhY2ggY29uZmlndXJhdGlvbiB2YWx1ZSB3aGljaCBHaXQga25vd3MgYWJvdXQKKyhnbG9iYWwsIGxvY2FsLCB3b3JrdHJlZSwgZXRjLikuCisKK1NpbWlsYXJseSB0byB0aGUgZGVmYXVsdCB2YWx1ZXMsIHdlIGRvbid0IGhhdmUgYW55dGhpbmcgdG8gZG8gaGVyZSB5ZXQKK291cnNlbHZlczsgaG93ZXZlciwgd2Ugc2hvdWxkIGNhbGwgYGdpdF9kZWZhdWx0X2NvbmZpZygpYCBpZiB3ZSBhcmVuJ3QgY2FsbGluZworYW55IG90aGVyIGV4aXN0aW5nIGNvbmZpZyBjYWxsYmFja3MuCisKK0FkZCBhIG5ldyBmdW5jdGlvbiB0byBgYnVpbHRpbi93YWxrZW4uY2A6CisKKy0tLS0KK3N0YXRpYyBpbnQgZ2l0X3dhbGtlbl9jb25maWcoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqY2IpCit7CisJLyoKKwkgKiBGb3Igbm93LCB3ZSBkb24ndCBoYXZlIGFueSBjdXN0b20gY29uZmlndXJhdGlvbiwgc28gZmFsbCBiYWNrIHRvCisJICogdGhlIGRlZmF1bHQgY29uZmlnLgorCSAqLworCXJldHVybiBnaXRfZGVmYXVsdF9jb25maWcodmFyLCB2YWx1ZSwgY2IpOworfQorLS0tLQorCitNYWtlIHN1cmUgdG8gaW52b2tlIGBnaXRfY29uZmlnKClgIHdpdGggaXQgaW4geW91ciBgY21kX3dhbGtlbigpYDoKKworLS0tLQoraW50IGNtZF93YWxrZW4oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCit7CisJLi4uCisKKwlnaXRfY29uZmlnKGdpdF93YWxrZW5fY29uZmlnLCBOVUxMKTsKKworCS4uLgorfQorLS0tLQorCis9PT09IFNldHRpbmcgVXAgYHJldl9pbmZvYAorCitOb3cgdGhhdCB3ZSd2ZSBnYXRoZXJlZCBleHRlcm5hbCBjb25maWd1cmF0aW9uIGFuZCBvcHRpb25zLCBpdCdzIHRpbWUgdG8KK2luaXRpYWxpemUgdGhlIGByZXZfaW5mb2Agb2JqZWN0IHdoaWNoIHdlIHdpbGwgdXNlIHRvIHBlcmZvcm0gdGhlIHdhbGsuIFRoaXMgaXMKK3R5cGljYWxseSBkb25lIGJ5IGNhbGxpbmcgYHJlcG9faW5pdF9yZXZpc2lvbnMoKWAgd2l0aCB0aGUgcmVwb3NpdG9yeSB5b3UgaW50ZW5kCit0byB0YXJnZXQsIGFzIHdlbGwgYXMgdGhlIGBwcmVmaXhgIGFyZ3VtZW50IG9mIGBjbWRfd2Fsa2VuYCBhbmQgeW91ciBgcmV2X2luZm9gCitzdHJ1Y3QuCisKK0FkZCB0aGUgYHN0cnVjdCByZXZfaW5mb2AgYW5kIHRoZSBgcmVwb19pbml0X3JldmlzaW9ucygpYCBjYWxsOgorLS0tLQoraW50IGNtZF93YWxrZW4oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCit7CisJLyogVGhpcyBjYW4gZ28gd2hlcmV2ZXIgeW91IGxpa2UgaW4geW91ciBkZWNsYXJhdGlvbnMuKi8KKwlzdHJ1Y3QgcmV2X2luZm8gcmV2OworCS4uLgorCisJLyogVGhpcyBzaG91bGQgZ28gYWZ0ZXIgdGhlIGdpdF9jb25maWcoKSBjYWxsLiAqLworCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksICZyZXYsIHByZWZpeCk7CisKKwkuLi4KK30KKy0tLS0KKworPT09PSBUd2Vha2luZyBgcmV2X2luZm9gIEZvciB0aGUgV2FsaworCitXZSdyZSBnZXR0aW5nIGNsb3NlLCBidXQgd2UncmUgc3RpbGwgbm90IHF1aXRlIHJlYWR5IHRvIGdvLiBOb3cgdGhhdCBgcmV2YCBpcworaW5pdGlhbGl6ZWQsIHdlIGNhbiBtb2RpZnkgaXQgdG8gZml0IG91ciBuZWVkcy4gVGhpcyBpcyB1c3VhbGx5IGRvbmUgd2l0aGluIGEKK2hlbHBlciBmb3IgY2xhcml0eSwgc28gbGV0J3MgYWRkIG9uZToKKworLS0tLQorc3RhdGljIHZvaWQgZmluYWxfcmV2X2luZm9fc2V0dXAoc3RydWN0IHJldl9pbmZvICpyZXYpCit7CisJLyoKKwkgKiBXZSB3YW50IHRvIG1pbWljIHRoZSBhcHBlYXJhbmNlIG9mIGBnaXQgbG9nIC0tb25lbGluZWAsIHNvIGxldCdzCisJICogZm9yY2Ugb25lbGluZSBmb3JtYXQuCisJICovCisJZ2V0X2NvbW1pdF9mb3JtYXQoIm9uZWxpbmUiLCByZXYpOworCisJLyogU3RhcnQgb3VyIG9iamVjdCB3YWxrIGF0IEhFQUQuICovCisJYWRkX2hlYWRfdG9fcGVuZGluZyhyZXYpOworfQorLS0tLQorCitbTk9URV0KKz09PT0KK0luc3RlYWQgb2YgdXNpbmcgdGhlIHNob3J0aGFuZCBgYWRkX2hlYWRfdG9fcGVuZGluZygpYCwgeW91IGNvdWxkIGRvCitzb21ldGhpbmcgbGlrZSB0aGlzOgorLS0tLQorCXN0cnVjdCBzZXR1cF9yZXZpc2lvbl9vcHQgb3B0OworCisJbWVtc2V0KCZvcHQsIDAsIHNpemVvZihvcHQpKTsKKwlvcHQuZGVmID0gIkhFQUQiOworCW9wdC5yZXZhcmdfb3B0ID0gUkVWQVJHX0NPTU1JVFRJU0g7CisJc2V0dXBfcmV2aXNpb25zKGFyZ2MsIGFyZ3YsIHJldiwgJm9wdCk7CistLS0tCitVc2luZyBhIGBzZXR1cF9yZXZpc2lvbl9vcHRgIGdpdmVzIHlvdSBmaW5lciBjb250cm9sIG92ZXIgeW91ciB3YWxrJ3Mgc3RhcnRpbmcKK3BvaW50LgorPT09PQorCitUaGVuIGxldCdzIGludm9rZSBgZmluYWxfcmV2X2luZm9fc2V0dXAoKWAgYWZ0ZXIgdGhlIGNhbGwgdG8KK2ByZXBvX2luaXRfcmV2aXNpb25zKClgOgorCistLS0tCitpbnQgY21kX3dhbGtlbihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKK3sKKwkuLi4KKworCWZpbmFsX3Jldl9pbmZvX3NldHVwKCZyZXYpOworCisJLi4uCit9CistLS0tCisKK0xhdGVyLCB3ZSBtYXkgd2lzaCB0byBhZGQgbW9yZSBhcmd1bWVudHMgdG8gYGZpbmFsX3Jldl9pbmZvX3NldHVwKClgLiBCdXQgZm9yCitub3csIHRoaXMgaXMgYWxsIHdlIG5lZWQuCisKKz09PT0gUHJlcGFyaW5nIGByZXZfaW5mb2AgRm9yIHRoZSBXYWxrCisKK05vdyB0aGF0IGByZXZgIGlzIGFsbCBpbml0aWFsaXplZCBhbmQgY29uZmlndXJlZCwgd2UndmUgZ290IG9uZSBtb3JlIHNldHVwIHN0ZXAKK2JlZm9yZSB3ZSBnZXQgcm9sbGluZy4gV2UgY2FuIGRvIHRoaXMgaW4gYSBoZWxwZXIsIHdoaWNoIHdpbGwgYm90aCBwcmVwYXJlIHRoZQorYHJldl9pbmZvYCBmb3IgdGhlIHdhbGssIGFuZCBwZXJmb3JtIHRoZSB3YWxrIGl0c2VsZi4gTGV0J3Mgc3RhcnQgdGhlIGhlbHBlcgord2l0aCB0aGUgY2FsbCB0byBgcHJlcGFyZV9yZXZpc2lvbl93YWxrKClgLCB3aGljaCBjYW4gcmV0dXJuIGFuIGVycm9yIHdpdGhvdXQKK2R5aW5nIG9uIGl0cyBvd246CisKKy0tLS0KK3N0YXRpYyB2b2lkIHdhbGtlbl9jb21taXRfd2FsayhzdHJ1Y3QgcmV2X2luZm8gKnJldikKK3sKKwlpZiAocHJlcGFyZV9yZXZpc2lvbl93YWxrKHJldikpCisJCWRpZShfKCJyZXZpc2lvbiB3YWxrIHNldHVwIGZhaWxlZCIpKTsKK30KKy0tLS0KKworTk9URTogYGRpZSgpYCBwcmludHMgdG8gYHN0ZGVycmAgYW5kIGV4aXRzIHRoZSBwcm9ncmFtLiBTaW5jZSBpdCB3aWxsIHByaW50IHRvCitgc3RkZXJyYCBpdCdzIGxpa2VseSB0byBiZSBzZWVuIGJ5IGEgaHVtYW4sIHNvIHdlIHdpbGwgbG9jYWxpemUgaXQuCisKKz09PT0gUGVyZm9ybWluZyB0aGUgV2FsayEKKworRmluYWxseSEgV2UgYXJlIHJlYWR5IHRvIGJlZ2luIHRoZSB3YWxrIGl0c2VsZi4gTm93IHdlIGNhbiBzZWUgdGhhdCBgcmV2X2luZm9gCitjYW4gYWxzbyBiZSB1c2VkIGFzIGFuIGl0ZXJhdG9yOyB3ZSBtb3ZlIHRvIHRoZSBuZXh0IGl0ZW0gaW4gdGhlIHdhbGsgYnkgdXNpbmcKK2BnZXRfcmV2aXNpb24oKWAgcmVwZWF0ZWRseS4gQWRkIHRoZSBsaXN0ZWQgdmFyaWFibGUgZGVjbGFyYXRpb25zIGF0IHRoZSB0b3AgYW5kCit0aGUgd2FsayBsb29wIGJlbG93IHRoZSBgcHJlcGFyZV9yZXZpc2lvbl93YWxrKClgIGNhbGwgd2l0aGluIHlvdXIKK2B3YWxrZW5fY29tbWl0X3dhbGsoKWA6CisKKy0tLS0KK3N0YXRpYyB2b2lkIHdhbGtlbl9jb21taXRfd2FsayhzdHJ1Y3QgcmV2X2luZm8gKnJldikKK3sKKwlzdHJ1Y3QgY29tbWl0ICpjb21taXQ7CisJc3RydWN0IHN0cmJ1ZiBwcmV0dHlidWYgPSBTVFJCVUZfSU5JVDsKKworCS4uLgorCisJd2hpbGUgKChjb21taXQgPSBnZXRfcmV2aXNpb24ocmV2KSkpIHsKKwkJaWYgKCFjb21taXQpCisJCQljb250aW51ZTsKKworCQlzdHJidWZfcmVzZXQoJnByZXR0eWJ1Zik7CisJCXBwX2NvbW1pdF9lYXN5KENNSVRfRk1UX09ORUxJTkUsIGNvbW1pdCwgJnByZXR0eWJ1Zik7CisJCXB1dHMocHJldHR5YnVmLmJ1Zik7CisJfQorCXN0cmJ1Zl9yZWxlYXNlKCZwcmV0dHlidWYpOworfQorLS0tLQorCitOT1RFOiBgcHV0cygpYCBwcmludHMgYSBgY2hhcipgIHRvIGBzdGRvdXRgLiBTaW5jZSB0aGlzIGlzIHRoZSBwYXJ0IG9mIHRoZQorY29tbWFuZCB3ZSBleHBlY3QgdG8gYmUgbWFjaGluZS1wYXJzZWQsIHdlJ3JlIHNlbmRpbmcgaXQgZGlyZWN0bHkgdG8gc3Rkb3V0LgorCitHaXZlIGl0IGEgc2hvdC4KKworLS0tLQorJCBtYWtlCiskIC4vYmluLXdyYXBwZXJzL2dpdCB3YWxrZW4KKy0tLS0KKworWW91IHNob3VsZCBzZWUgYWxsIG9mIHRoZSBzdWJqZWN0IGxpbmVzIG9mIGFsbCB0aGUgY29tbWl0cyBpbgoreW91ciB0cmVlJ3MgaGlzdG9yeSwgaW4gb3JkZXIsIGVuZGluZyB3aXRoIHRoZSBpbml0aWFsIGNvbW1pdCwgIkluaXRpYWwgcmV2aXNpb24KK29mICJnaXQiLCB0aGUgaW5mb3JtYXRpb24gbWFuYWdlciBmcm9tIGhlbGwiLiBDb25ncmF0dWxhdGlvbnMhIFlvdSd2ZSB3cml0dGVuCit5b3VyIGZpcnN0IHJldmlzaW9uIHdhbGsuIFlvdSBjYW4gcGxheSB3aXRoIHByaW50aW5nIHNvbWUgYWRkaXRpb25hbCBmaWVsZHMKK2Zyb20gZWFjaCBjb21taXQgaWYgeW91J3JlIGN1cmlvdXM7IGhhdmUgYSBsb29rIGF0IHRoZSBmdW5jdGlvbnMgYXZhaWxhYmxlIGluCitgY29tbWl0LmhgLgorCis9PT0gQWRkaW5nIGEgRmlsdGVyCisKK05leHQsIGxldCdzIHRyeSB0byBmaWx0ZXIgdGhlIGNvbW1pdHMgd2Ugc2VlIGJhc2VkIG9uIHRoZWlyIGF1dGhvci4gVGhpcyBpcworZXF1aXZhbGVudCB0byBydW5uaW5nIGBnaXQgbG9nIC0tYXV0aG9yPTxwYXR0ZXJuPmAuIFdlIGNhbiBhZGQgYSBmaWx0ZXIgYnkKK21vZGlmeWluZyBgcmV2X2luZm8uZ3JlcF9maWx0ZXJgLCB3aGljaCBpcyBhIGBzdHJ1Y3QgZ3JlcF9vcHRgLgorCitGaXJzdCBzb21lIHNldHVwLiBBZGQgYGluaXRfZ3JlcF9kZWZhdWx0cygpYCB0byBgaW5pdF93YWxrZW5fZGVmYXVsdHMoKWAgYW5kIGFkZAorYGdyZXBfY29uZmlnKClgIHRvIGBnaXRfd2Fsa2VuX2NvbmZpZygpYDoKKworLS0tLQorc3RhdGljIHZvaWQgaW5pdF93YWxrZW5fZGVmYXVsdHModm9pZCkKK3sKKwlpbml0X2dyZXBfZGVmYXVsdHModGhlX3JlcG9zaXRvcnkpOworfQorCisuLi4KKworc3RhdGljIGludCBnaXRfd2Fsa2VuX2NvbmZpZyhjb25zdCBjaGFyICp2YXIsIGNvbnN0IGNoYXIgKnZhbHVlLCB2b2lkICpjYikKK3sKKwlncmVwX2NvbmZpZyh2YXIsIHZhbHVlLCBjYik7CisJcmV0dXJuIGdpdF9kZWZhdWx0X2NvbmZpZyh2YXIsIHZhbHVlLCBjYik7Cit9CistLS0tCisKK05leHQsIHdlIGNhbiBtb2RpZnkgdGhlIGBncmVwX2ZpbHRlcmAuIFRoaXMgaXMgZG9uZSB3aXRoIGNvbnZlbmllbmNlIGZ1bmN0aW9ucworZm91bmQgaW4gYGdyZXAuaGAuIEZvciBmdW4sIHdlJ3JlIGZpbHRlcmluZyB0byBvbmx5IGNvbW1pdHMgZnJvbSBmb2xrcyB1c2luZyBhCitgZ21haWwuY29tYCBlbWFpbCBhZGRyZXNzIC0gYSBub3QtdmVyeS1wcmVjaXNlIGd1ZXNzIGF0IHdobyBtYXkgYmUgd29ya2luZyBvbgorR2l0IGFzIGEgaG9iYnkuIFNpbmNlIHdlJ3JlIGNoZWNraW5nIHRoZSBhdXRob3IsIHdoaWNoIGlzIGEgc3BlY2lmaWMgbGluZSBpbiB0aGUKK2hlYWRlciwgd2UnbGwgdXNlIHRoZSBgYXBwZW5kX2hlYWRlcl9ncmVwX3BhdHRlcm4oKWAgaGVscGVyLiBXZSBjYW4gdXNlCit0aGUgYGVudW0gZ3JlcF9oZWFkZXJfZmllbGRgIHRvIGluZGljYXRlIHdoaWNoIHBhcnQgb2YgdGhlIGNvbW1pdCBoZWFkZXIgd2Ugd2FudAordG8gc2VhcmNoLgorCitJbiBgZmluYWxfcmV2X2luZm9fc2V0dXAoKWAsIGFkZCB5b3VyIGZpbHRlciBsaW5lOgorCistLS0tCitzdGF0aWMgdm9pZCBmaW5hbF9yZXZfaW5mb19zZXR1cChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsCisJCWNvbnN0IGNoYXIgKnByZWZpeCwgc3RydWN0IHJldl9pbmZvICpyZXYpCit7CisJLi4uCisKKwlhcHBlbmRfaGVhZGVyX2dyZXBfcGF0dGVybigmcmV2LT5ncmVwX2ZpbHRlciwgR1JFUF9IRUFERVJfQVVUSE9SLAorCQkiZ21haWwiKTsKKwljb21waWxlX2dyZXBfcGF0dGVybnMoJnJldi0+Z3JlcF9maWx0ZXIpOworCisJLi4uCit9CistLS0tCisKK2BhcHBlbmRfaGVhZGVyX2dyZXBfcGF0dGVybigpYCBhZGRzIHlvdXIgbmV3ICJnbWFpbCIgcGF0dGVybiB0byBgcmV2X2luZm9gLCBidXQKK2l0IHdvbid0IHdvcmsgdW5sZXNzIHdlIGNvbXBpbGUgaXQgd2l0aCBgY29tcGlsZV9ncmVwX3BhdHRlcm5zKClgLgorCitOT1RFOiBJZiB5b3UgYXJlIHVzaW5nIGBzZXR1cF9yZXZpc2lvbnMoKWAgKGZvciBleGFtcGxlLCBpZiB5b3UgYXJlIHBhc3NpbmcgYQorYHNldHVwX3JldmlzaW9uX29wdGAgaW5zdGVhZCBvZiB1c2luZyBgYWRkX2hlYWRfdG9fcGVuZGluZygpYCksIHlvdSBkb24ndCBuZWVkCit0byBjYWxsIGBjb21waWxlX2dyZXBfcGF0dGVybnMoKWAgYmVjYXVzZSBgc2V0dXBfcmV2aXNpb25zKClgIGNhbGxzIGl0IGZvciB5b3UuCisKK05PVEU6IFdlIGNvdWxkIGFkZCB0aGUgc2FtZSBmaWx0ZXIgdmlhIHRoZSBgYXBwZW5kX2dyZXBfcGF0dGVybigpYCBoZWxwZXIgaWYgd2UKK3dhbnRlZCB0bywgYnV0IGBhcHBlbmRfaGVhZGVyX2dyZXBfcGF0dGVybigpYCBhZGRzIHRoZSBgZW51bSBncmVwX2NvbnRleHRgIGFuZAorYGVudW0gZ3JlcF9wYXRfdG9rZW5gIGZvciB1cy4KKworPT09IENoYW5naW5nIHRoZSBPcmRlcgorCitUaGVyZSBhcmUgYSBmZXcgd2F5cyB0aGF0IHdlIGNhbiBjaGFuZ2UgdGhlIG9yZGVyIG9mIHRoZSBjb21taXRzIGR1cmluZyBhCityZXZpc2lvbiB3YWxrLiBGaXJzdGx5LCB3ZSBjYW4gdXNlIHRoZSBgZW51bSByZXZfc29ydF9vcmRlcmAgdG8gY2hvb3NlIGZyb20gc29tZQordHlwaWNhbCBvcmRlcmluZ3MuCisKK2B0b3BvX29yZGVyYCBpcyB0aGUgc2FtZSBhcyBgZ2l0IGxvZyAtLXRvcG8tb3JkZXJgOiB3ZSBhdm9pZCBzaG93aW5nIGEgcGFyZW50CitiZWZvcmUgYWxsIG9mIGl0cyBjaGlsZHJlbiBoYXZlIGJlZW4gc2hvd24sIGFuZCB3ZSBhdm9pZCBtaXhpbmcgY29tbWl0cyB3aGljaAorYXJlIGluIGRpZmZlcmVudCBsaW5lcyBvZiBoaXN0b3J5LiAoYGdpdCBoZWxwIGxvZ2AncyBzZWN0aW9uIG9uIGAtLXRvcG8tb3JkZXJgCitoYXMgYSB2ZXJ5IG5pY2UgZGlhZ3JhbSB0byBpbGx1c3RyYXRlIHRoaXMuKQorCitMZXQncyBzZWUgd2hhdCBoYXBwZW5zIHdoZW4gd2UgcnVuIHdpdGggYFJFVl9TT1JUX0JZX0NPTU1JVF9EQVRFYCBhcyBvcHBvc2VkIHRvCitgUkVWX1NPUlRfQllfQVVUSE9SX0RBVEVgLiBBZGQgdGhlIGZvbGxvd2luZzoKKworLS0tLQorc3RhdGljIHZvaWQgZmluYWxfcmV2X2luZm9fc2V0dXAoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LAorCQljb25zdCBjaGFyICpwcmVmaXgsIHN0cnVjdCByZXZfaW5mbyAqcmV2KQoreworCS4uLgorCisJcmV2LT50b3BvX29yZGVyID0gMTsKKwlyZXYtPnNvcnRfb3JkZXIgPSBSRVZfU09SVF9CWV9DT01NSVRfREFURTsKKworCS4uLgorfQorLS0tLQorCitMZXQncyBvdXRwdXQgdGhpcyBpbnRvIGEgZmlsZSBzbyB3ZSBjYW4gZWFzaWx5IGRpZmYgaXQgd2l0aCB0aGUgd2FsayBzb3J0ZWQgYnkKK2F1dGhvciBkYXRlLgorCistLS0tCiskIG1ha2UKKyQgLi9iaW4td3JhcHBlcnMvZ2l0IHdhbGtlbiA+IGNvbW1pdC1kYXRlLnR4dAorLS0tLQorCitUaGVuLCBsZXQncyBzb3J0IGJ5IGF1dGhvciBkYXRlIGFuZCBydW4gaXQgYWdhaW4uCisKKy0tLS0KK3N0YXRpYyB2b2lkIGZpbmFsX3Jldl9pbmZvX3NldHVwKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwKKwkJY29uc3QgY2hhciAqcHJlZml4LCBzdHJ1Y3QgcmV2X2luZm8gKnJldikKK3sKKwkuLi4KKworCXJldi0+dG9wb19vcmRlciA9IDE7CisJcmV2LT5zb3J0X29yZGVyID0gUkVWX1NPUlRfQllfQVVUSE9SX0RBVEU7CisKKwkuLi4KK30KKy0tLS0KKworLS0tLQorJCBtYWtlCiskIC4vYmluLXdyYXBwZXJzL2dpdCB3YWxrZW4gPiBhdXRob3ItZGF0ZS50eHQKKy0tLS0KKworRmluYWxseSwgY29tcGFyZSB0aGUgdHdvLiBUaGlzIGlzIGEgbGl0dGxlIGxlc3MgaGVscGZ1bCB3aXRob3V0IG9iamVjdCBuYW1lcyBvcgorZGF0ZXMsIGJ1dCBob3BlZnVsbHkgd2UgZ2V0IHRoZSBpZGVhLgorCistLS0tCiskIGRpZmYgLXUgY29tbWl0LWRhdGUudHh0IGF1dGhvci1kYXRlLnR4dAorLS0tLQorCitUaGlzIGRpc3BsYXkgaW5kaWNhdGVzIHRoYXQgY29tbWl0cyBjYW4gYmUgcmVvcmRlcmVkIGFmdGVyIHRoZXkncmUgd3JpdHRlbiwgZm9yCitleGFtcGxlIHdpdGggYGdpdCByZWJhc2VgLgorCitMZXQncyB0cnkgb25lIG1vcmUgcmVvcmRlcmluZyBvZiBjb21taXRzLiBgcmV2X2luZm9gIGV4cG9zZXMgYSBgcmV2ZXJzZWAgZmxhZy4KK1NldCB0aGF0IGZsYWcgc29tZXdoZXJlIGluc2lkZSBvZiBgZmluYWxfcmV2X2luZm9fc2V0dXAoKWA6CisKKy0tLS0KK3N0YXRpYyB2b2lkIGZpbmFsX3Jldl9pbmZvX3NldHVwKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4LAorCQlzdHJ1Y3QgcmV2X2luZm8gKnJldikKK3sKKwkuLi4KKworCXJldi0+cmV2ZXJzZSA9IDE7CisKKwkuLi4KK30KKy0tLS0KKworUnVuIHlvdXIgd2FsayBhZ2FpbiBhbmQgbm90ZSB0aGUgZGlmZmVyZW5jZSBpbiBvcmRlci4gKElmIHlvdSByZW1vdmUgdGhlIGdyZXAKK3BhdHRlcm4sIHlvdSBzaG91bGQgc2VlIHRoZSBsYXN0IGNvbW1pdCB0aGlzIGNhbGwgZ2l2ZXMgeW91IGFzIHlvdXIgY3VycmVudAorSEVBRC4pCisKKz09IEJhc2ljIE9iamVjdCBXYWxrCisKK1NvIGZhciB3ZSd2ZSBiZWVuIHdhbGtpbmcgb25seSBjb21taXRzLiBCdXQgR2l0IGhhcyBtb3JlIHR5cGVzIG9mIG9iamVjdHMgdGhhbgordGhhdCEgTGV0J3Mgc2VlIGlmIHdlIGNhbiB3YWxrIF9hbGxfIG9iamVjdHMsIGFuZCBmaW5kIG91dCBzb21lIGluZm9ybWF0aW9uCithYm91dCBlYWNoIG9uZS4KKworV2UgY2FuIGJhc2Ugb3VyIHdvcmsgb24gYW4gZXhhbXBsZS4gYGdpdCBwYWNrLW9iamVjdHNgIHByZXBhcmVzIGFsbCBraW5kcyBvZgorb2JqZWN0cyBmb3IgcGFja2luZyBpbnRvIGEgYml0bWFwIG9yIHBhY2tmaWxlLiBUaGUgd29yayB3ZSBhcmUgaW50ZXJlc3RlZCBpbgorcmVzaWRlcyBpbiBgYnVpbHRpbnMvcGFjay1vYmplY3RzLmM6Z2V0X29iamVjdF9saXN0KClgOyBleGFtaW5hdGlvbiBvZiB0aGF0CitmdW5jdGlvbiBzaG93cyB0aGF0IHRoZSBhbGwtb2JqZWN0IHdhbGsgaXMgYmVpbmcgcGVyZm9ybWVkIGJ5CitgdHJhdmVyc2VfY29tbWl0X2xpc3QoKWAgb3IgYHRyYXZlcnNlX2NvbW1pdF9saXN0X2ZpbHRlcmVkKClgLiBUaG9zZSB0d28KK2Z1bmN0aW9ucyByZXNpZGUgaW4gYGxpc3Qtb2JqZWN0cy5jYDsgZXhhbWluaW5nIHRoZSBzb3VyY2Ugc2hvd3MgdGhhdCwgZGVzcGl0ZQordGhlIG5hbWUsIHRoZXNlIGZ1bmN0aW9ucyB0cmF2ZXJzZSBhbGwga2luZHMgb2Ygb2JqZWN0cy4gTGV0J3MgaGF2ZSBhIGxvb2sgYXQKK3RoZSBhcmd1bWVudHMgdG8gYHRyYXZlcnNlX2NvbW1pdF9saXN0X2ZpbHRlcmVkKClgLCB3aGljaCBhcmUgYSBzdXBlcnNldCBvZiB0aGUKK2FyZ3VtZW50cyB0byB0aGUgdW5maWx0ZXJlZCB2ZXJzaW9uLgorCistIGBzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXJfb3B0aW9uc2A6IFRoaXMgaXMgYSBzdHJ1Y3Qgd2hpY2gKKyAgc3RvcmVzIGEgZmlsdGVyLXNwZWMgYXMgb3V0bGluZWQgaW4gYERvY3VtZW50YXRpb24vcmV2LWxpc3Qtb3B0aW9ucy50eHRgLgorLSBgc3RydWN0IHJldl9pbmZvICpyZXZzYDogVGhpcyBpcyB0aGUgYHJldl9pbmZvYCB1c2VkIGZvciB0aGUgd2Fsay4KKy0gYHNob3dfY29tbWl0X2ZuIHNob3dfY29tbWl0YDogQSBjYWxsYmFjayB3aGljaCB3aWxsIGJlIHVzZWQgdG8gaGFuZGxlIGVhY2gKKyAgaW5kaXZpZHVhbCBjb21taXQgb2JqZWN0LgorLSBgc2hvd19vYmplY3RfZm4gc2hvd19vYmplY3RgOiBBIGNhbGxiYWNrIHdoaWNoIHdpbGwgYmUgdXNlZCB0byBoYW5kbGUgZWFjaAorICBub24tY29tbWl0IG9iamVjdCAoc28gZWFjaCBibG9iLCB0cmVlLCBvciB0YWcpLgorLSBgdm9pZCAqc2hvd19kYXRhYDogQSBjb250ZXh0IGJ1ZmZlciB3aGljaCBpcyBwYXNzZWQgaW4gdHVybiB0byBgc2hvd19jb21taXRgCisgIGFuZCBgc2hvd19vYmplY3RgLgorLSBgc3RydWN0IG9pZHNldCAqb21pdHRlZGA6IEEgbGlua2VkLWxpc3Qgb2Ygb2JqZWN0IElEcyB3aGljaCB0aGUgcHJvdmlkZWQKKyAgZmlsdGVyIGNhdXNlZCB0byBiZSBvbWl0dGVkLgorCitJdCBsb29rcyBsaWtlIHRoaXMgYHRyYXZlcnNlX2NvbW1pdF9saXN0X2ZpbHRlcmVkKClgIHVzZXMgY2FsbGJhY2tzIHdlIHByb3ZpZGUKK2luc3RlYWQgb2YgbmVlZGluZyB1cyB0byBjYWxsIGl0IHJlcGVhdGVkbHkgb3Vyc2VsdmVzLiBDb29sISBMZXQncyBhZGQgdGhlCitjYWxsYmFja3MgZmlyc3QuCisKK0ZvciB0aGUgc2FrZSBvZiB0aGlzIHR1dG9yaWFsLCB3ZSdsbCBzaW1wbHkga2VlcCB0cmFjayBvZiBob3cgbWFueSBvZiBlYWNoIGtpbmQKK29mIG9iamVjdCB3ZSBmaW5kLiBBdCBmaWxlIHNjb3BlIGluIGBidWlsdGluL3dhbGtlbi5jYCBhZGQgdGhlIGZvbGxvd2luZwordHJhY2tpbmcgdmFyaWFibGVzOgorCistLS0tCitzdGF0aWMgaW50IGNvbW1pdF9jb3VudDsKK3N0YXRpYyBpbnQgdGFnX2NvdW50Oworc3RhdGljIGludCBibG9iX2NvdW50Oworc3RhdGljIGludCB0cmVlX2NvdW50OworLS0tLQorCitDb21taXRzIGFyZSBoYW5kbGVkIGJ5IGEgZGlmZmVyZW50IGNhbGxiYWNrIHRoYW4gb3RoZXIgb2JqZWN0czsgbGV0J3MgZG8gdGhhdAorb25lIGZpcnN0OgorCistLS0tCitzdGF0aWMgdm9pZCB3YWxrZW5fc2hvd19jb21taXQoc3RydWN0IGNvbW1pdCAqY210LCB2b2lkICpidWYpCit7CisJY29tbWl0X2NvdW50Kys7Cit9CistLS0tCisKK1RoZSBgY210YCBhcmd1bWVudCBpcyBmYWlybHkgc2VsZi1leHBsYW5hdG9yeS4gQnV0IGl0J3Mgd29ydGggbWVudGlvbmluZyB0aGF0Cit0aGUgYGJ1ZmAgYXJndW1lbnQgaXMgYWN0dWFsbHkgdGhlIGNvbnRleHQgYnVmZmVyIHRoYXQgd2UgY2FuIHByb3ZpZGUgdG8gdGhlCit0cmF2ZXJzYWwgY2FsbHMgLSBgc2hvd19kYXRhYCwgd2hpY2ggd2UgbWVudGlvbmVkIGEgbW9tZW50IGFnby4KKworU2luY2Ugd2UgaGF2ZSB0aGUgYHN0cnVjdCBjb21taXRgIG9iamVjdCwgd2UgY2FuIGxvb2sgYXQgYWxsIHRoZSBzYW1lIHBhcnRzIHRoYXQKK3dlIGxvb2tlZCBhdCBpbiBvdXIgZWFybGllciBjb21taXQtb25seSB3YWxrLiBGb3IgdGhlIHNha2Ugb2YgdGhpcyB0dXRvcmlhbCwKK3Rob3VnaCwgd2UnbGwganVzdCBpbmNyZW1lbnQgdGhlIGNvbW1pdCBjb3VudGVyIGFuZCBtb3ZlIG9uLgorCitUaGUgY2FsbGJhY2sgZm9yIG5vbi1jb21taXRzIGlzIGEgbGl0dGxlIGRpZmZlcmVudCwgYXMgd2UnbGwgbmVlZCB0byBjaGVjaword2hpY2gga2luZCBvZiBvYmplY3Qgd2UncmUgZGVhbGluZyB3aXRoOgorCistLS0tCitzdGF0aWMgdm9pZCB3YWxrZW5fc2hvd19vYmplY3Qoc3RydWN0IG9iamVjdCAqb2JqLCBjb25zdCBjaGFyICpzdHIsIHZvaWQgKmJ1ZikKK3sKKwlzd2l0Y2ggKG9iai0+dHlwZSkgeworCWNhc2UgT0JKX1RSRUU6CisJCXRyZWVfY291bnQrKzsKKwkJYnJlYWs7CisJY2FzZSBPQkpfQkxPQjoKKwkJYmxvYl9jb3VudCsrOworCQlicmVhazsKKwljYXNlIE9CSl9UQUc6CisJCXRhZ19jb3VudCsrOworCQlicmVhazsKKwljYXNlIE9CSl9DT01NSVQ6CisJCUJVRygidW5leHBlY3RlZCBjb21taXQgb2JqZWN0IGluIHdhbGtlbl9zaG93X29iamVjdFxuIik7CisJZGVmYXVsdDoKKwkJQlVHKCJ1bmV4cGVjdGVkIG9iamVjdCB0eXBlICVzIGluIHdhbGtlbl9zaG93X29iamVjdFxuIiwKKwkJCXR5cGVfbmFtZShvYmotPnR5cGUpKTsKKwl9Cit9CistLS0tCisKK0FnYWluLCBgb2JqYCBpcyBmYWlybHkgc2VsZi1leHBsYW5hdG9yeSwgYW5kIHdlIGNhbiBndWVzcyB0aGF0IGBidWZgIGlzIHRoZSBzYW1lCitjb250ZXh0IHBvaW50ZXIgdGhhdCBgd2Fsa2VuX3Nob3dfY29tbWl0KClgIHJlY2VpdmVzOiB0aGUgYHNob3dfZGF0YWAgYXJndW1lbnQKK3RvIGB0cmF2ZXJzZV9jb21taXRfbGlzdCgpYCBhbmQgYHRyYXZlcnNlX2NvbW1pdF9saXN0X2ZpbHRlcmVkKClgLiBGaW5hbGx5LAorYHN0cmAgY29udGFpbnMgdGhlIG5hbWUgb2YgdGhlIG9iamVjdCwgd2hpY2ggZW5kcyB1cCBiZWluZyBzb21ldGhpbmcgbGlrZQorYGZvby50eHRgIChibG9iKSwgYGJhci9iYXpgICh0cmVlKSwgb3IgYHYxLjIuM2AgKHRhZykuCisKK1RvIGhlbHAgYXNzdXJlIHVzIHRoYXQgd2UgYXJlbid0IGRvdWJsZS1jb3VudGluZyBjb21taXRzLCB3ZSdsbCBpbmNsdWRlIHNvbWUKK2NvbXBsYWluaW5nIGlmIGEgY29tbWl0IG9iamVjdCBpcyByb3V0ZWQgdGhyb3VnaCBvdXIgbm9uLWNvbW1pdCBjYWxsYmFjazsgd2UnbGwKK2Fsc28gY29tcGxhaW4gaWYgd2Ugc2VlIGFuIGludmFsaWQgb2JqZWN0IHR5cGUuIFNpbmNlIHRob3NlIHR3byBjYXNlcyBzaG91bGQgYmUKK3VucmVhY2hhYmxlLCBhbmQgd291bGQgb25seSBjaGFuZ2UgaW4gdGhlIGV2ZW50IG9mIGEgc2VtYW50aWMgY2hhbmdlIHRvIHRoZSBHaXQKK2NvZGViYXNlLCB3ZSBjb21wbGFpbiBieSB1c2luZyBgQlVHKClgIC0gd2hpY2ggaXMgYSBzaWduYWwgdG8gYSBkZXZlbG9wZXIgdGhhdAordGhlIGNoYW5nZSB0aGV5IG1hZGUgY2F1c2VkIHVuaW50ZW5kZWQgY29uc2VxdWVuY2VzLCBhbmQgdGhlIHJlc3Qgb2YgdGhlCitjb2RlYmFzZSBuZWVkcyB0byBiZSB1cGRhdGVkIHRvIHVuZGVyc3RhbmQgdGhhdCBjaGFuZ2UuIGBCVUcoKWAgaXMgbm90IGludGVuZGVkCit0byBiZSBzZWVuIGJ5IHRoZSBwdWJsaWMsIHNvIGl0IGlzIG5vdCBsb2NhbGl6ZWQuCisKK091ciBtYWluIG9iamVjdCB3YWxrIGltcGxlbWVudGF0aW9uIGlzIHN1YnN0YW50aWFsbHkgZGlmZmVyZW50IGZyb20gb3VyIGNvbW1pdAord2FsayBpbXBsZW1lbnRhdGlvbiwgc28gbGV0J3MgbWFrZSBhIG5ldyBmdW5jdGlvbiB0byBwZXJmb3JtIHRoZSBvYmplY3Qgd2Fsay4gV2UKK2NhbiBwZXJmb3JtIHNldHVwIHdoaWNoIGlzIGFwcGxpY2FibGUgdG8gYWxsIG9iamVjdHMgaGVyZSwgdG9vLCB0byBrZWVwIHNlcGFyYXRlCitmcm9tIHNldHVwIHdoaWNoIGlzIGFwcGxpY2FibGUgdG8gY29tbWl0LW9ubHkgd2Fsa3MuCisKK1dlJ2xsIHN0YXJ0IGJ5IGVuYWJsaW5nIGFsbCB0eXBlcyBvZiBvYmplY3RzIGluIHRoZSBgc3RydWN0IHJldl9pbmZvYC4gIFdlJ2xsCithbHNvIHR1cm4gb24gYHRyZWVfYmxvYnNfaW5fY29tbWl0X29yZGVyYCwgd2hpY2ggbWVhbnMgdGhhdCB3ZSB3aWxsIHdhbGsgYQorY29tbWl0J3MgdHJlZSBhbmQgZXZlcnl0aGluZyBpdCBwb2ludHMgdG8gaW1tZWRpYXRlbHkgYWZ0ZXIgd2UgZmluZCBlYWNoIGNvbW1pdCwKK2FzIG9wcG9zZWQgdG8gd2FpdGluZyBmb3IgdGhlIGVuZCBhbmQgd2Fsa2luZyB0aHJvdWdoIGFsbCB0cmVlcyBhZnRlciB0aGUgY29tbWl0CitoaXN0b3J5IGhhcyBiZWVuIGRpc2NvdmVyZWQuIFdpdGggdGhlIGFwcHJvcHJpYXRlIHNldHRpbmdzIGNvbmZpZ3VyZWQsIHdlIGFyZQorcmVhZHkgdG8gY2FsbCBgcHJlcGFyZV9yZXZpc2lvbl93YWxrKClgLgorCistLS0tCitzdGF0aWMgdm9pZCB3YWxrZW5fb2JqZWN0X3dhbGsoc3RydWN0IHJldl9pbmZvICpyZXYpCit7CisJcmV2LT50cmVlX29iamVjdHMgPSAxOworCXJldi0+YmxvYl9vYmplY3RzID0gMTsKKwlyZXYtPnRhZ19vYmplY3RzID0gMTsKKwlyZXYtPnRyZWVfYmxvYnNfaW5fY29tbWl0X29yZGVyID0gMTsKKworCWlmIChwcmVwYXJlX3JldmlzaW9uX3dhbGsocmV2KSkKKwkJZGllKF8oInJldmlzaW9uIHdhbGsgc2V0dXAgZmFpbGVkIikpOworCisJY29tbWl0X2NvdW50ID0gMDsKKwl0YWdfY291bnQgPSAwOworCWJsb2JfY291bnQgPSAwOworCXRyZWVfY291bnQgPSAwOworLS0tLQorCitMZXQncyBzdGFydCBieSBjYWxsaW5nIGp1c3QgdGhlIHVuZmlsdGVyZWQgd2FsayBhbmQgcmVwb3J0aW5nIG91ciBjb3VudHMuCitDb21wbGV0ZSB5b3VyIGltcGxlbWVudGF0aW9uIG9mIGB3YWxrZW5fb2JqZWN0X3dhbGsoKWA6CisKKy0tLS0KKwl0cmF2ZXJzZV9jb21taXRfbGlzdChyZXYsIHdhbGtlbl9zaG93X2NvbW1pdCwgd2Fsa2VuX3Nob3dfb2JqZWN0LCBOVUxMKTsKKworCXByaW50ZigiY29tbWl0cyAlZFxuYmxvYnMgJWRcbnRhZ3MgJWRcbnRyZWVzICVkXG4iLCBjb21taXRfY291bnQsCisJCWJsb2JfY291bnQsIHRhZ19jb3VudCwgdHJlZV9jb3VudCk7Cit9CistLS0tCisKK05PVEU6IFRoaXMgb3V0cHV0IGlzIGludGVuZGVkIHRvIGJlIG1hY2hpbmUtcGFyc2VkLiBUaGVyZWZvcmUsIHdlIGFyZSBub3QKK3NlbmRpbmcgaXQgdG8gYHRyYWNlX3ByaW50ZigpYCwgYW5kIHdlIGFyZSBub3QgbG9jYWxpemluZyBpdCAtIHdlIG5lZWQgc2NyaXB0cwordG8gYmUgYWJsZSB0byBjb3VudCBvbiB0aGUgZm9ybWF0dGluZyB0byBiZSBleGFjdGx5IHRoZSB3YXkgaXQgaXMgc2hvd24gaGVyZS4KK0lmIHdlIHdlcmUgaW50ZW5kaW5nIHRoaXMgb3V0cHV0IHRvIGJlIHJlYWQgYnkgaHVtYW5zLCB3ZSB3b3VsZCBuZWVkIHRvIGxvY2FsaXplCitpdCB3aXRoIGBfKClgLgorCitGaW5hbGx5LCB3ZSdsbCBhc2sgYGNtZF93YWxrZW4oKWAgdG8gdXNlIHRoZSBvYmplY3Qgd2FsayBpbnN0ZWFkLiBEaXNjdXNzaW5nCitjb21tYW5kIGxpbmUgb3B0aW9ucyBpcyBvdXQgb2Ygc2NvcGUgZm9yIHRoaXMgdHV0b3JpYWwsIHNvIHdlJ2xsIGp1c3QgaGFyZGNvZGUKK2EgYnJhbmNoIHdlIGNhbiBjaGFuZ2UgYXQgY29tcGlsZSB0aW1lLiBXaGVyZSB5b3UgY2FsbCBgZmluYWxfcmV2X2luZm9fc2V0dXAoKWAKK2FuZCBgd2Fsa2VuX2NvbW1pdF93YWxrKClgLCBpbnN0ZWFkIGJyYW5jaCBsaWtlIHNvOgorCistLS0tCisJaWYgKDEpIHsKKwkJYWRkX2hlYWRfdG9fcGVuZGluZygmcmV2KTsKKwkJd2Fsa2VuX29iamVjdF93YWxrKCZyZXYpOworCX0gZWxzZSB7CisJCWZpbmFsX3Jldl9pbmZvX3NldHVwKGFyZ2MsIGFyZ3YsIHByZWZpeCwgJnJldik7CisJCXdhbGtlbl9jb21taXRfd2FsaygmcmV2KTsKKwl9CistLS0tCisKK05PVEU6IEZvciBzaW1wbGljaXR5LCB3ZSd2ZSBhdm9pZGVkIGFsbCB0aGUgZmlsdGVycyBhbmQgc29ydHMgd2UgYXBwbGllZCBpbgorYGZpbmFsX3Jldl9pbmZvX3NldHVwKClgIGFuZCBzaW1wbHkgYWRkZWQgYEhFQURgIHRvIG91ciBwZW5kaW5nIHF1ZXVlLiBJZiB5b3UKK3dhbnQsIHlvdSBjYW4gY2VydGFpbmx5IHVzZSB0aGUgZmlsdGVycyB3ZSBhZGRlZCBiZWZvcmUgYnkgbW92aW5nCitgZmluYWxfcmV2X2luZm9fc2V0dXAoKWAgb3V0IG9mIHRoZSBjb25kaXRpb25hbCBhbmQgcmVtb3ZpbmcgdGhlIGNhbGwgdG8KK2BhZGRfaGVhZF90b19wZW5kaW5nKClgLgorCitOb3cgd2UgY2FuIHRyeSB0byBydW4gb3VyIGNvbW1hbmQhIEl0IHNob3VsZCB0YWtlIG5vdGljZWFibHkgbG9uZ2VyIHRoYW4gdGhlCitjb21taXQgd2FsaywgYnV0IGFuIGV4YW1pbmF0aW9uIG9mIHRoZSBvdXRwdXQgd2lsbCBnaXZlIHlvdSBhbiBpZGVhIHdoeS4gWW91cgorb3V0cHV0IHNob3VsZCBsb29rIHNpbWlsYXIgdG8gdGhpcyBleGFtcGxlLCBidXQgd2l0aCBkaWZmZXJlbnQgY291bnRzOgorCistLS0tCitPYmplY3Qgd2FsayBjb21wbGV0ZWQuIEZvdW5kIDU1NzMzIGNvbW1pdHMsIDEwMDI3NCBibG9icywgMCB0YWdzLCBhbmQgMTA0MjEwIHRyZWVzLgorLS0tLQorCitUaGlzIG1ha2VzIHNlbnNlLiBXZSBoYXZlIG1vcmUgdHJlZXMgdGhhbiBjb21taXRzIGJlY2F1c2UgdGhlIEdpdCBwcm9qZWN0IGhhcworbG90cyBvZiBzdWJkaXJlY3RvcmllcyB3aGljaCBjYW4gY2hhbmdlLCBwbHVzIGF0IGxlYXN0IG9uZSB0cmVlIHBlciBjb21taXQuIFdlCitoYXZlIG5vIHRhZ3MgYmVjYXVzZSB3ZSBzdGFydGVkIG9uIGEgY29tbWl0IChgSEVBRGApIGFuZCB3aGlsZSB0YWdzIGNhbiBwb2ludCB0bworY29tbWl0cywgY29tbWl0cyBjYW4ndCBwb2ludCB0byB0YWdzLgorCitOT1RFOiBZb3Ugd2lsbCBoYXZlIGRpZmZlcmVudCBjb3VudHMgd2hlbiB5b3UgcnVuIHRoaXMgeW91cnNlbGYhIFRoZSBudW1iZXIgb2YKK29iamVjdHMgZ3Jvd3MgYWxvbmcgd2l0aCB0aGUgR2l0IHByb2plY3QuCisKKz09PSBBZGRpbmcgYSBGaWx0ZXIKKworVGhlcmUgYXJlIGEgaGFuZGZ1bCBvZiBmaWx0ZXJzIHRoYXQgd2UgY2FuIGFwcGx5IHRvIHRoZSBvYmplY3Qgd2FsayBsYWlkIG91dCBpbgorYERvY3VtZW50YXRpb24vcmV2LWxpc3Qtb3B0aW9ucy50eHRgLiBUaGVzZSBmaWx0ZXJzIGFyZSB0eXBpY2FsbHkgdXNlZnVsIGZvcgorb3BlcmF0aW9ucyBzdWNoIGFzIGNyZWF0aW5nIHBhY2tmaWxlcyBvciBwZXJmb3JtaW5nIGEgcGFydGlhbCBjbG9uZS4gVGhleSBhcmUKK2RlZmluZWQgaW4gYGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oYC4gRm9yIHRoZSBwdXJwb3NlcyBvZiB0aGlzIHR1dG9yaWFsIHdlCit3aWxsIHVzZSB0aGUgInRyZWU6MSIgZmlsdGVyLCB3aGljaCBjYXVzZXMgdGhlIHdhbGsgdG8gb21pdCBhbGwgdHJlZXMgYW5kIGJsb2JzCit3aGljaCBhcmUgbm90IGRpcmVjdGx5IHJlZmVyZW5jZWQgYnkgY29tbWl0cyByZWFjaGFibGUgZnJvbSB0aGUgY29tbWl0IGluCitgcGVuZGluZ2Agd2hlbiB0aGUgd2FsayBiZWdpbnMuIChgcGVuZGluZ2AgaXMgdGhlIGxpc3Qgb2Ygb2JqZWN0cyB3aGljaCBuZWVkIHRvCitiZSB0cmF2ZXJzZWQgZHVyaW5nIGEgd2FsazsgeW91IGNhbiBpbWFnaW5lIGEgYnJlYWR0aC1maXJzdCB0cmVlIHRyYXZlcnNhbCB0bworaGVscCB1bmRlcnN0YW5kLiBJbiBvdXIgY2FzZSwgdGhhdCBtZWFucyB3ZSBvbWl0IHRyZWVzIGFuZCBibG9icyBub3QgZGlyZWN0bHkKK3JlZmVyZW5jZWQgYnkgYEhFQURgIG9yIGBIRUFEYCdzIGhpc3RvcnksIGJlY2F1c2Ugd2UgYmVnaW4gdGhlIHdhbGsgd2l0aCBvbmx5CitgSEVBRGAgaW4gdGhlIGBwZW5kaW5nYCBsaXN0LikKKworRmlyc3QsIHdlJ2xsIG5lZWQgdG8gYCNpbmNsdWRlICJsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaGAiIGFuZCBzZXQgdXAgdGhlCitgc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9uc2AgYXQgdGhlIHRvcCBvZiB0aGUgZnVuY3Rpb24uCisKKy0tLS0KK3N0YXRpYyB2b2lkIHdhbGtlbl9vYmplY3Rfd2FsayhzdHJ1Y3QgcmV2X2luZm8gKnJldikKK3sKKwlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zIGZpbHRlcl9vcHRpb25zID0ge307CisKKwkuLi4KKy0tLS0KKworRm9yIG5vdywgd2UgYXJlIG5vdCBnb2luZyB0byB0cmFjayB0aGUgb21pdHRlZCBvYmplY3RzLCBzbyB3ZSdsbCByZXBsYWNlIHRob3NlCitwYXJhbWV0ZXJzIHdpdGggYE5VTExgLiBGb3IgdGhlIHNha2Ugb2Ygc2ltcGxpY2l0eSwgd2UnbGwgYWRkIGEgc2ltcGxlCitidWlsZC10aW1lIGJyYW5jaCB0byB1c2Ugb3VyIGZpbHRlciBvciBub3QuIFJlcGxhY2UgdGhlIGxpbmUgY2FsbGluZworYHRyYXZlcnNlX2NvbW1pdF9saXN0KClgIHdpdGggdGhlIGZvbGxvd2luZywgd2hpY2ggd2lsbCByZW1pbmQgdXMgd2hpY2gga2luZCBvZgord2FsayB3ZSd2ZSBqdXN0IHBlcmZvcm1lZDoKKworLS0tLQorCWlmICgwKSB7CisJCS8qIFVuZmlsdGVyZWQ6ICovCisJCXRyYWNlX3ByaW50ZihfKCJVbmZpbHRlcmVkIG9iamVjdCB3YWxrLlxuIikpOworCQl0cmF2ZXJzZV9jb21taXRfbGlzdChyZXYsIHdhbGtlbl9zaG93X2NvbW1pdCwKKwkJCQl3YWxrZW5fc2hvd19vYmplY3QsIE5VTEwpOworCX0gZWxzZSB7CisJCXRyYWNlX3ByaW50ZigKKwkJCV8oIkZpbHRlcmVkIG9iamVjdCB3YWxrIHdpdGggZmlsdGVyc3BlYyAndHJlZToxJy5cbiIpKTsKKwkJcGFyc2VfbGlzdF9vYmplY3RzX2ZpbHRlcigmZmlsdGVyX29wdGlvbnMsICJ0cmVlOjEiKTsKKworCQl0cmF2ZXJzZV9jb21taXRfbGlzdF9maWx0ZXJlZCgmZmlsdGVyX29wdGlvbnMsIHJldiwKKwkJCXdhbGtlbl9zaG93X2NvbW1pdCwgd2Fsa2VuX3Nob3dfb2JqZWN0LCBOVUxMLCBOVUxMKTsKKwl9CistLS0tCisKK2BzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zYCBpcyB1c3VhbGx5IGJ1aWx0IGRpcmVjdGx5IGZyb20gYSBjb21tYW5kCitsaW5lIGFyZ3VtZW50LCBzbyB0aGUgbW9kdWxlIHByb3ZpZGVzIGFuIGVhc3kgd2F5IHRvIGJ1aWxkIG9uZSBmcm9tIGEgc3RyaW5nLgorRXZlbiB0aG91Z2ggd2UgYXJlbid0IHRha2luZyB1c2VyIGlucHV0IHJpZ2h0IG5vdywgd2UgY2FuIHN0aWxsIGJ1aWxkIG9uZSB3aXRoCithIGhhcmRjb2RlZCBzdHJpbmcgdXNpbmcgYHBhcnNlX2xpc3Rfb2JqZWN0c19maWx0ZXIoKWAuCisKK1dpdGggdGhlIGZpbHRlciBzcGVjICJ0cmVlOjEiLCB3ZSBhcmUgZXhwZWN0aW5nIHRvIHNlZSBfb25seV8gdGhlIHJvb3QgdHJlZSBmb3IKK2VhY2ggY29tbWl0OyB0aGVyZWZvcmUsIHRoZSB0cmVlIG9iamVjdCBjb3VudCBzaG91bGQgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvCit0aGUgbnVtYmVyIG9mIGNvbW1pdHMuIChGb3IgYW4gZXhhbXBsZSBvZiB3aHkgdGhhdCdzIHRydWU6IGBnaXQgY29tbWl0IC0tcmV2ZXJ0YAorcG9pbnRzIHRvIHRoZSBzYW1lIHRyZWUgb2JqZWN0IGFzIGl0cyBncmFuZHBhcmVudC4pCisKKz09PSBDb3VudGluZyBPbWl0dGVkIE9iamVjdHMKKworV2UgYWxzbyBoYXZlIHRoZSBjYXBhYmlsaXR5IHRvIGVudW1lcmF0ZSBhbGwgb2JqZWN0cyB3aGljaCB3ZXJlIG9taXR0ZWQgYnkgYQorZmlsdGVyLCBsaWtlIHdpdGggYGdpdCBsb2cgLS1maWx0ZXI9PHNwZWM+IC0tZmlsdGVyLXByaW50LW9taXR0ZWRgLiBBc2tpbmcKK2B0cmF2ZXJzZV9jb21taXRfbGlzdF9maWx0ZXJlZCgpYCB0byBwb3B1bGF0ZSB0aGUgYG9taXR0ZWRgIGxpc3QgbWVhbnMgdGhhdCBvdXIKK29iamVjdCB3YWxrIGRvZXMgbm90IHBlcmZvcm0gYW55IGJldHRlciB0aGFuIGFuIHVuZmlsdGVyZWQgb2JqZWN0IHdhbGs7IGFsbAorcmVhY2hhYmxlIG9iamVjdHMgYXJlIHdhbGtlZCBpbiBvcmRlciB0byBwb3B1bGF0ZSB0aGUgbGlzdC4KKworRmlyc3QsIGFkZCB0aGUgYHN0cnVjdCBvaWRzZXRgIGFuZCByZWxhdGVkIGl0ZW1zIHdlIHdpbGwgdXNlIHRvIGl0ZXJhdGUgaXQ6CisKKy0tLS0KK3N0YXRpYyB2b2lkIHdhbGtlbl9vYmplY3Rfd2FsaygKKwkuLi4KKworCXN0cnVjdCBvaWRzZXQgb21pdHRlZDsKKwlzdHJ1Y3Qgb2lkc2V0X2l0ZXIgb2l0OworCXN0cnVjdCBvYmplY3RfaWQgKm9pZCA9IE5VTEw7CisJaW50IG9taXR0ZWRfY291bnQgPSAwOworCW9pZHNldF9pbml0KCZvbWl0dGVkLCAwKTsKKworCS4uLgorLS0tLQorCitNb2RpZnkgdGhlIGNhbGwgdG8gYHRyYXZlcnNlX2NvbW1pdF9saXN0X2ZpbHRlcmVkKClgIHRvIGluY2x1ZGUgeW91ciBgb21pdHRlZGAKK29iamVjdDoKKworLS0tLQorCS4uLgorCisJCXRyYXZlcnNlX2NvbW1pdF9saXN0X2ZpbHRlcmVkKCZmaWx0ZXJfb3B0aW9ucywgcmV2LAorCQkJd2Fsa2VuX3Nob3dfY29tbWl0LCB3YWxrZW5fc2hvd19vYmplY3QsIE5VTEwsICZvbWl0dGVkKTsKKworCS4uLgorLS0tLQorCitUaGVuLCBhZnRlciB5b3VyIHRyYXZlcnNhbCwgdGhlIGBvaWRzZXRgIHRyYXZlcnNhbCBpcyBwcmV0dHkgc3RyYWlnaHRmb3J3YXJkLgorQ291bnQgYWxsIHRoZSBvYmplY3RzIHdpdGhpbiBhbmQgbW9kaWZ5IHRoZSBwcmludCBzdGF0ZW1lbnQ6CisKKy0tLS0KKwkvKiBDb3VudCB0aGUgb21pdHRlZCBvYmplY3RzLiAqLworCW9pZHNldF9pdGVyX2luaXQoJm9taXR0ZWQsICZvaXQpOworCisJd2hpbGUgKChvaWQgPSBvaWRzZXRfaXRlcl9uZXh0KCZvaXQpKSkKKwkJb21pdHRlZF9jb3VudCsrOworCisJcHJpbnRmKCJjb21taXRzICVkXG5ibG9icyAlZFxudGFncyAlZFxudHJlZXMlZFxub21pdHRlZCAlZFxuIiwKKwkJY29tbWl0X2NvdW50LCBibG9iX2NvdW50LCB0YWdfY291bnQsIHRyZWVfY291bnQsIG9taXR0ZWRfY291bnQpOworLS0tLQorCitCeSBydW5uaW5nIHlvdXIgd2FsayB3aXRoIGFuZCB3aXRob3V0IHRoZSBmaWx0ZXIsIHlvdSBzaG91bGQgZmluZCB0aGF0IHRoZSB0b3RhbAorb2JqZWN0IGNvdW50IGluIGVhY2ggY2FzZSBpcyBpZGVudGljYWwuIFlvdSBjYW4gYWxzbyB0aW1lIGVhY2ggaW52b2NhdGlvbiBvZgordGhlIGB3YWxrZW5gIHN1YmNvbW1hbmQsIHdpdGggYW5kIHdpdGhvdXQgYG9taXR0ZWRgIGJlaW5nIHBhc3NlZCBpbiwgdG8gY29uZmlybQordG8geW91cnNlbGYgdGhlIHJ1bnRpbWUgaW1wYWN0IG9mIHRyYWNraW5nIGFsbCBvbWl0dGVkIG9iamVjdHMuCisKKz09PSBDaGFuZ2luZyB0aGUgT3JkZXIKKworRmluYWxseSwgbGV0J3MgZGVtb25zdHJhdGUgdGhhdCB5b3UgY2FuIGFsc28gcmVvcmRlciB3YWxrcyBvZiBhbGwgb2JqZWN0cywgbm90CitqdXN0IHdhbGtzIG9mIGNvbW1pdHMuIEZpcnN0LCB3ZSdsbCBtYWtlIG91ciBoYW5kbGVycyBjaGF0dGllciAtIG1vZGlmeQorYHdhbGtlbl9zaG93X2NvbW1pdCgpYCBhbmQgYHdhbGtlbl9zaG93X29iamVjdCgpYCB0byBwcmludCB0aGUgb2JqZWN0IGFzIHRoZXkKK2dvOgorCistLS0tCitzdGF0aWMgdm9pZCB3YWxrZW5fc2hvd19jb21taXQoc3RydWN0IGNvbW1pdCAqY210LCB2b2lkICpidWYpCit7CisJdHJhY2VfcHJpbnRmKCJjb21taXQ6ICVzXG4iLCBvaWRfdG9faGV4KCZjbXQtPm9iamVjdC5vaWQpKTsKKwljb21taXRfY291bnQrKzsKK30KKworc3RhdGljIHZvaWQgd2Fsa2VuX3Nob3dfb2JqZWN0KHN0cnVjdCBvYmplY3QgKm9iaiwgY29uc3QgY2hhciAqc3RyLCB2b2lkICpidWYpCit7CisJdHJhY2VfcHJpbnRmKCIlczogJXNcbiIsIHR5cGVfbmFtZShvYmotPnR5cGUpLCBvaWRfdG9faGV4KCZvYmotPm9pZCkpOworCisJLi4uCit9CistLS0tCisKK05PVEU6IFNpbmNlIHdlIHdpbGwgYmUgZXhhbWluaW5nIHRoaXMgb3V0cHV0IGRpcmVjdGx5IGFzIGh1bWFucywgd2UnbGwgdXNlCitgdHJhY2VfcHJpbnRmKClgIGhlcmUuIEFkZGl0aW9uYWxseSwgc2luY2UgdGhpcyBjaGFuZ2UgaW50cm9kdWNlcyBhIHNpZ25pZmljYW50CitudW1iZXIgb2YgcHJpbnRlZCBsaW5lcywgdXNpbmcgYHRyYWNlX3ByaW50ZigpYCB3aWxsIGFsbG93IHVzIHRvIGVhc2lseSBzaWxlbmNlCit0aG9zZSBsaW5lcyB3aXRob3V0IGhhdmluZyB0byByZWNvbXBpbGUuCisKKyhMZWF2ZSB0aGUgY291bnRlciBpbmNyZW1lbnQgbG9naWMgaW4gcGxhY2UuKQorCitXaXRoIG9ubHkgdGhhdCBjaGFuZ2UsIHJ1biBhZ2FpbiAoYnV0IHNhdmUgeW91cnNlbGYgc29tZSBzY3JvbGxiYWNrKToKKworLS0tLQorJCBHSVRfVFJBQ0U9MSAuL2Jpbi13cmFwcGVycy9naXQgd2Fsa2VuIHwgaGVhZCAtbiAxMAorLS0tLQorCitUYWtlIGEgbG9vayBhdCB0aGUgdG9wIGNvbW1pdCB3aXRoIGBnaXQgc2hvd2AgYW5kIHRoZSBvYmplY3QgSUQgeW91IHByaW50ZWQ7IGl0CitzaG91bGQgYmUgdGhlIHNhbWUgYXMgdGhlIG91dHB1dCBvZiBgZ2l0IHNob3cgSEVBRGAuCisKK05leHQsIGxldCdzIGNoYW5nZSBhIHNldHRpbmcgb24gb3VyIGBzdHJ1Y3QgcmV2X2luZm9gIHdpdGhpbgorYHdhbGtlbl9vYmplY3Rfd2FsaygpYC4gRmluZCB3aGVyZSB5b3UncmUgY2hhbmdpbmcgdGhlIG90aGVyIHNldHRpbmdzIG9uIGByZXZgLAorc3VjaCBhcyBgcmV2LT50cmVlX29iamVjdHNgIGFuZCBgcmV2LT50cmVlX2Jsb2JzX2luX2NvbW1pdF9vcmRlcmAsIGFuZCBhZGQgdGhlCitgcmV2ZXJzZWAgc2V0dGluZyBhdCB0aGUgYm90dG9tOgorCistLS0tCisJLi4uCisKKwlyZXYtPnRyZWVfb2JqZWN0cyA9IDE7CisJcmV2LT5ibG9iX29iamVjdHMgPSAxOworCXJldi0+dGFnX29iamVjdHMgPSAxOworCXJldi0+dHJlZV9ibG9ic19pbl9jb21taXRfb3JkZXIgPSAxOworCXJldi0+cmV2ZXJzZSA9IDE7CisKKwkuLi4KKy0tLS0KKworTm93LCBydW4gYWdhaW4sIGJ1dCB0aGlzIHRpbWUsIGxldCdzIGdyYWIgdGhlIGxhc3QgaGFuZGZ1bCBvZiBvYmplY3RzIGluc3RlYWQKK29mIHRoZSBmaXJzdCBoYW5kZnVsOgorCistLS0tCiskIG1ha2UKKyQgR0lUX1RSQUNFPTEgLi9iaW4td3JhcHBlcnMgZ2l0IHdhbGtlbiB8IHRhaWwgLW4gMTAKKy0tLS0KKworVGhlIGxhc3QgY29tbWl0IG9iamVjdCBnaXZlbiBzaG91bGQgaGF2ZSB0aGUgc2FtZSBPSUQgYXMgdGhlIG9uZSB3ZSBzYXcgYXQgdGhlCit0b3AgYmVmb3JlLCBhbmQgcnVubmluZyBgZ2l0IHNob3cgPG9pZD5gIHdpdGggdGhhdCBPSUQgc2hvdWxkIGdpdmUgeW91IGFnYWluCit0aGUgc2FtZSByZXN1bHRzIGFzIGBnaXQgc2hvdyBIRUFEYC4gRnVydGhlcm1vcmUsIGlmIHlvdSBydW4gYW5kIGV4YW1pbmUgdGhlCitmaXJzdCB0ZW4gbGluZXMgYWdhaW4gKHdpdGggYGhlYWRgIGluc3RlYWQgb2YgYHRhaWxgIGxpa2Ugd2UgZGlkIGJlZm9yZSBhcHBseWluZwordGhlIGByZXZlcnNlYCBzZXR0aW5nKSwgeW91IHNob3VsZCBzZWUgdGhhdCBub3cgdGhlIGZpcnN0IGNvbW1pdCBwcmludGVkIGlzIHRoZQoraW5pdGlhbCBjb21taXQsIGBlODNjNTE2M2AuCisKKz09IFdyYXBwaW5nIFVwCisKK0xldCdzIHJldmlldy4gSW4gdGhpcyB0dXRvcmlhbCwgd2U6CisKKy0gQnVpbHQgYSBjb21taXQgd2FsayBmcm9tIHRoZSBncm91bmQgdXAKKy0gRW5hYmxlZCBhIGdyZXAgZmlsdGVyIGZvciB0aGF0IGNvbW1pdCB3YWxrCistIENoYW5nZWQgdGhlIHNvcnQgb3JkZXIgb2YgdGhhdCBmaWx0ZXJlZCBjb21taXQgd2FsaworLSBCdWlsdCBhbiBvYmplY3Qgd2FsayAodGFncywgY29tbWl0cywgdHJlZXMsIGFuZCBibG9icykgZnJvbSB0aGUgZ3JvdW5kIHVwCistIExlYXJuZWQgaG93IHRvIGFkZCBhIGZpbHRlci1zcGVjIHRvIGFuIG9iamVjdCB3YWxrCistIENoYW5nZWQgdGhlIGRpc3BsYXkgb3JkZXIgb2YgdGhlIGZpbHRlcmVkIG9iamVjdCB3YWxrCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNS4wLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS41LjAudHh0CmluZGV4IGRhZjRiZGIuLmQ2ZDQyZjMgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS41LjAudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS41LjAudHh0CkBAIC0yNTEsNyArMjUxLDcgQEAKICAgIHRoZSByZXBvc2l0b3J5IHdoZW4gdGhhdCBoYXBwZW5zLgogCiAKLSogQ3J1ZnRzIHJlbW92YWwKKyogQ3J1ZnQgcmVtb3ZhbAogCiAgLSBXZSB1c2VkIHRvIHNheSAib2xkIGNvbW1pdHMgYXJlIHJldHJpZXZhYmxlIHVzaW5nIHJlZmxvZyBhbmQKICAgICdtYXN0ZXJAe3llc3RlcmRheX0nIHN5bnRheCBhcyBsb25nIGFzIHlvdSBoYXZlbid0IHJ1bgpAQCAtMzc5LDcgKzM3OSw3IEBACiAgLSBUaGUgdmFsdWUgb2YgaTE4bi5jb21taXRlbmNvZGluZyBpbiB0aGUgb3JpZ2luYXRpbmcKICAgIHJlcG9zaXRvcnkgaXMgcmVjb3JkZWQgaW4gdGhlIGNvbW1pdCBvYmplY3Qgb24gdGhlICJlbmNvZGluZyIKICAgIGhlYWRlciwgaWYgaXQgaXMgbm90IFVURi04LiAgZ2l0LWxvZyBhbmQgZnJpZW5kcyBub3RpY2UgdGhpcywKLSAgIGFuZCByZWVuY29kZXMgdGhlIG1lc3NhZ2UgdG8gdGhlIGxvZyBvdXRwdXQgZW5jb2Rpbmcgd2hlbgorICAgYW5kIHJlLWVuY29kZXMgdGhlIG1lc3NhZ2UgdG8gdGhlIGxvZyBvdXRwdXQgZW5jb2Rpbmcgd2hlbgogICAgZGlzcGxheWluZywgaWYgdGhleSBhcmUgZGlmZmVyZW50LiAgVGhlIGxvZyBvdXRwdXQgZW5jb2RpbmcKICAgIGlzIGRldGVybWluZWQgYnkgImdpdCBsb2cgLS1lbmNvZGluZz08ZW5jb2Rpbmc+IiwKICAgIGkxOG4ubG9nb3V0cHV0ZW5jb2RpbmcgY29uZmlndXJhdGlvbiwgb3IgaTE4bi5jb21taXRlbmNvZGluZwpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjYuMi50eHQgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNi4yLnR4dAppbmRleCBhZDA2MGY0Li45ODBhZGZiIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNi4yLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNi4yLnR4dApAQCAtMTEsNyArMTEsNyBAQAogY29uZmlndXJhdGlvbiB2YXJpYWJsZSBpcyBtaXNzaW5nLiAgUGxlYXNlIHJlZmVyIHRvOgogCiAgIGh0dHA6Ly9naXQub3IuY3ovZ2l0d2lraS9HaXRGYXEjbm9uLWJhcmUKLSAgaHR0cDovL3RocmVhZC5nbWFuZS5vcmcvZ21hbmUuY29tcC52ZXJzaW9uLWNvbnRyb2wuZ2l0LzEwNzc1OC9mb2N1cz0xMDgwMDcKKyAgaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvZ2l0Lzd2YnB0bHN1eXYuZnNmQGdpdHN0ZXIuc2lhbWVzZS5keW5kbnMub3JnLwogCiBmb3IgbW9yZSBkZXRhaWxzIG9uIHRoZSByZWFzb24gd2h5IHRoaXMgY2hhbmdlIGlzIG5lZWRlZCBhbmQgdGhlCiB0cmFuc2l0aW9uIHBsYW4uCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNi4zLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS42LjMudHh0CmluZGV4IDQxOGM2ODUuLjRiY2ZmOTQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS42LjMudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS42LjMudHh0CkBAIC0xMSw3ICsxMSw3IEBACiBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGlzIG1pc3NpbmcuICBQbGVhc2UgcmVmZXIgdG86CiAKICAgaHR0cDovL2dpdC5vci5jei9naXR3aWtpL0dpdEZhcSNub24tYmFyZQotICBodHRwOi8vdGhyZWFkLmdtYW5lLm9yZy9nbWFuZS5jb21wLnZlcnNpb24tY29udHJvbC5naXQvMTA3NzU4L2ZvY3VzPTEwODAwNworICBodHRwczovL2xvcmUua2VybmVsLm9yZy9naXQvN3ZicHRsc3V5di5mc2ZAZ2l0c3Rlci5zaWFtZXNlLmR5bmRucy5vcmcvCiAKIGZvciBtb3JlIGRldGFpbHMgb24gdGhlIHJlYXNvbiB3aHkgdGhpcyBjaGFuZ2UgaXMgbmVlZGVkIGFuZCB0aGUKIHRyYW5zaXRpb24gcGxhbi4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS42LjQudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjYuNC50eHQKaW5kZXggN2E5MDQ0MS4uYTJhMzRiNCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjYuNC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjYuNC50eHQKQEAgLTExLDcgKzExLDcgQEAKIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgaXMgbWlzc2luZy4gIFBsZWFzZSByZWZlciB0bzoKIAogICBodHRwOi8vZ2l0Lm9yLmN6L2dpdHdpa2kvR2l0RmFxI25vbi1iYXJlCi0gIGh0dHA6Ly90aHJlYWQuZ21hbmUub3JnL2dtYW5lLmNvbXAudmVyc2lvbi1jb250cm9sLmdpdC8xMDc3NTgvZm9jdXM9MTA4MDA3CisgIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC83dmJwdGxzdXl2LmZzZkBnaXRzdGVyLnNpYW1lc2UuZHluZG5zLm9yZy8KIAogZm9yIG1vcmUgZGV0YWlscyBvbiB0aGUgcmVhc29uIHdoeSB0aGlzIGNoYW5nZSBpcyBuZWVkZWQgYW5kIHRoZQogdHJhbnNpdGlvbiBwbGFuLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjYuNS40LnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS42LjUuNC50eHQKaW5kZXggZDNhMmEzZS4uMzQ0MzMzZCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjYuNS40LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNi41LjQudHh0CkBAIC0xMCw3ICsxMCw3IEBACiAKICAqICJnaXQgcHJ1bmUtcGFja2VkIiBnYXZlIHByb2dyZXNzIG91dHB1dCBldmVuIHdoZW4gaXRzIHN0YW5kYXJkIGVycm9yIGlzCiAgICBub3QgY29ubmVjdGVkIHRvIGEgdGVybWluYWw7IHRoaXMgY2F1c2VkIGNyb24gam9icyB0aGF0IHJ1biBpdCB0bwotICAgcHJvZHVjZSBjcnVmdHMuCisgICBwcm9kdWNlIGNydWZ0LgogCiAgKiAiZ2l0IHBhY2stb2JqZWN0cyAtLWFsbC1wcm9ncmVzcyIgaXMgYW4gb3B0aW9uIHRvIGFzayBwcm9ncmVzcyBvdXRwdXQKICAgIGZyb20gd3JpdGUtb2JqZWN0IHBoYXNlIF9pZl8gcHJvZ3Jlc3Mgb3V0cHV0IHdlcmUgdG8gYmUgcHJvZHVjZWQsIGFuZApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjYuNS50eHQgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNi41LnR4dAppbmRleCBlZTE0MWMxLi42YzdmN2RhIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNi41LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNi41LnR4dApAQCAtMjIsNyArMjIsNyBAQAogY29uZmlndXJhdGlvbiB2YXJpYWJsZSBpcyBtaXNzaW5nLiAgUGxlYXNlIHJlZmVyIHRvOgogCiAgIGh0dHA6Ly9naXQub3IuY3ovZ2l0d2lraS9HaXRGYXEjbm9uLWJhcmUKLSAgaHR0cDovL3RocmVhZC5nbWFuZS5vcmcvZ21hbmUuY29tcC52ZXJzaW9uLWNvbnRyb2wuZ2l0LzEwNzc1OC9mb2N1cz0xMDgwMDcKKyAgaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvZ2l0Lzd2YnB0bHN1eXYuZnNmQGdpdHN0ZXIuc2lhbWVzZS5keW5kbnMub3JnLwogCiBmb3IgbW9yZSBkZXRhaWxzIG9uIHRoZSByZWFzb24gd2h5IHRoaXMgY2hhbmdlIGlzIG5lZWRlZCBhbmQgdGhlCiB0cmFuc2l0aW9uIHBsYW4uCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNi42LnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS42LjYudHh0CmluZGV4IGM1MGI1OWMuLjNlZDFlMDEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS42LjYudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS42LjYudHh0CkBAIC02NCw3ICs2NCw3IEBACiAgICBQbGVhc2UgcmVmZXIgdG86CiAKICAgIGh0dHA6Ly9naXQub3IuY3ovZ2l0d2lraS9HaXRGYXEjbm9uLWJhcmUKLSAgIGh0dHA6Ly90aHJlYWQuZ21hbmUub3JnL2dtYW5lLmNvbXAudmVyc2lvbi1jb250cm9sLmdpdC8xMDc3NTgvZm9jdXM9MTA4MDA3CisgICBodHRwczovL2xvcmUua2VybmVsLm9yZy9naXQvN3ZicHRsc3V5di5mc2ZAZ2l0c3Rlci5zaWFtZXNlLmR5bmRucy5vcmcvCiAKICAgIGZvciBtb3JlIGRldGFpbHMgb24gdGhlIHJlYXNvbiB3aHkgdGhpcyBjaGFuZ2UgaXMgbmVlZGVkIGFuZCB0aGUKICAgIHRyYW5zaXRpb24gcHJvY2VzcyB0aGF0IGFscmVhZHkgdG9vayBwbGFjZSBzbyBmYXIuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNy4wLjIudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjcuMC4yLnR4dAppbmRleCBmY2I0NmNhLi43M2VkMmI1IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNy4wLjIudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS43LjAuMi50eHQKQEAgLTM0LDcgKzM0LDcgQEAKICAqICJnaXQgc3RhdHVzIiBpbiAxLjcuMCBsYWNrZWQgdGhlIG9wdGltaXphdGlvbiB3ZSB1c2VkIHRvIGhhdmUgaW4gMS42Llggc2VyaWVzCiAgICB0byBzcGVlZCB1cCBzY2FubmluZyBvZiBsYXJnZSB3b3JraW5nIHRyZWUuCiAKLSAqICJnaXR3ZWIiIGRpZCBub3QgZGlhZ25vc2UgcGFyc2luZyBlcnJvcnMgcHJvcGVybHkgd2hpbGUgcmVhZGluZyB0aXMgY29uZmlndXJhdGlvbgorICogImdpdHdlYiIgZGlkIG5vdCBkaWFnbm9zZSBwYXJzaW5nIGVycm9ycyBwcm9wZXJseSB3aGlsZSByZWFkaW5nIGl0cyBjb25maWd1cmF0aW9uCiAgICBmaWxlLgogCiBBbmQgb3RoZXIgbWlub3IgZml4ZXMgYW5kIGRvY3VtZW50YXRpb24gdXBkYXRlcy4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS43LjEwLjQudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjcuMTAuNC50eHQKaW5kZXggMzI2NjcwZC4uNTc1OTdmMiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjcuMTAuNC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjcuMTAuNC50eHQKQEAgLTcsNyArNyw3IEBACiAgKiBUaGUgbWVzc2FnZSBmaWxlIGZvciBTd2VkaXNoIHRyYW5zbGF0aW9uIGhhcyBiZWVuIHVwZGF0ZWQgYSBiaXQuCiAKICAqIEEgbmFtZSB0YWtlbiBmcm9tIG1haWxtYXAgd2FzIGNvcGllZCBpbnRvIGFuIGludGVybmFsIGJ1ZmZlcgotICAgaW5jb3JyZWN0bHkgYW5kIGNvdWxkIG92ZXJ1biB0aGUgYnVmZmVyIGlmIGl0IGlzIHRvbyBsb25nLgorICAgaW5jb3JyZWN0bHkgYW5kIGNvdWxkIG92ZXJydW4gdGhlIGJ1ZmZlciBpZiBpdCBpcyB0b28gbG9uZy4KIAogICogQSBtYWxmb3JtZWQgY29tbWl0IG9iamVjdCB0aGF0IGhhcyBhIGhlYWRlciBsaW5lIGNob21wZWQgaW4gdGhlCiAgICBtaWRkbGUgY291bGQga2lsbCBnaXQgd2l0aCBhIE5VTEwgcG9pbnRlciBkZXJlZmVyZW5jZS4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS43LjEyLjMudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjcuMTIuMy50eHQKaW5kZXggZWNkYTQyNy4uNGI4MjI5NyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjcuMTIuMy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjcuMTIuMy50eHQKQEAgLTI1LDcgKzI1LDcgQEAKICAgIGl0cyBBY2NlcHQtRW5jb2RpbmcgaGVhZGVyLgogCiAgKiAiZ2l0IHJlY2VpdmUtcGFjayIgKHRoZSBjb3VudGVycGFydCB0byAiZ2l0IHB1c2giKSBkaWQgbm90IGdpdmUKLSAgIHByb2dyZXNzIG91dHB1dCB3aGlsZSBwcm9jZXNzaW5nIG9iamVjdHMgaXQgcmVjZWl2ZWQgdG8gdGhlIHB1c2VyCisgICBwcm9ncmVzcyBvdXRwdXQgd2hpbGUgcHJvY2Vzc2luZyBvYmplY3RzIGl0IHJlY2VpdmVkIHRvIHRoZSB1c2VyCiAgICB3aGVuIHJ1biBvdmVyIHRoZSBzbWFydC1odHRwIHByb3RvY29sLgogCiAgKiAiZ2l0IHN0YXR1cyIgaG9ub3JlZCB0aGUgaWdub3JlPWRpcnR5IHNldHRpbmdzIGluIC5naXRtb2R1bGVzIGJ1dApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjcuNS4zLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS43LjUuMy50eHQKaW5kZXggOWMwMzM1My4uMWQyNGVkYyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjcuNS4zLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuNy41LjMudHh0CkBAIC0yMiw3ICsyMiw3IEBACiAgKiAiZ2l0IGxvZyAtLXN0ZGluIHBhdGgiIHdpdGggYW4gaW5wdXQgdGhhdCBoYXMgYWRkaXRpb25hbCBwYXRoc3BlYwogICAgdXNlZCB0byBjb3JydXB0IG1lbW9yeS4KIAotICogImdpdCBzZW5kLXBhY2siIChoZW5jZSAiZ2l0IHB1c2giKSBvdmVyIHNtYWx0LUhUVFAgcHJvdG9jb2wgY291bGQKKyAqICJnaXQgc2VuZC1wYWNrIiAoaGVuY2UgImdpdCBwdXNoIikgb3ZlciBzbWFydC1IVFRQIHByb3RvY29sIGNvdWxkCiAgICBkZWFkbG9jayB3aGVuIHRoZSBjbGllbnQgc2lkZSBwYWNrLW9iamVjdCBkaWVkIGVhcmx5LgogCiAgKiBDb21wcmVzc2VkIHRhcmJhbGwgZ2l0d2ViIGdlbmVyYXRlcyB1c2VkIHRvIGJlIG1hZGUgd2l0aCB0aGUgdGltZXN0YW1wCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuOC4wLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS44LjAudHh0CmluZGV4IDQzODgzYzEuLjYzZDZlNGEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS44LjAudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS44LjAudHh0CkBAIC0yMzMsNyArMjMzLDcgQEAKICAgIHRvZ2V0aGVyLCBtaXNkZXRlY3RlZCBicmFuY2hlcy4KIAogICogImdpdCByZWNlaXZlLXBhY2siICh0aGUgY291bnRlcnBhcnQgdG8gImdpdCBwdXNoIikgZGlkIG5vdCBnaXZlCi0gICBwcm9ncmVzcyBvdXRwdXQgd2hpbGUgcHJvY2Vzc2luZyBvYmplY3RzIGl0IHJlY2VpdmVkIHRvIHRoZSBwdXNlcgorICAgcHJvZ3Jlc3Mgb3V0cHV0IHdoaWxlIHByb2Nlc3Npbmcgb2JqZWN0cyBpdCByZWNlaXZlZCB0byB0aGUgdXNlcgogICAgd2hlbiBydW4gb3ZlciB0aGUgc21hcnQtaHR0cCBwcm90b2NvbC4KIAogICogV2hlbiB5b3UgbWlzc3BlbGwgdGhlIGNvbW1hbmQgbmFtZSB5b3UgZ2l2ZSB0byB0aGUgImV4ZWMiIGFjdGlvbiBpbgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjguNC4xLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS44LjQuMS50eHQKaW5kZXggOTYwOTBlZi4uYzI1N2JlYiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjguNC4xLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzEuOC40LjEudHh0CkBAIC0xNSw3ICsxNSw3IEBACiAgICBpbiAxLjguNC1yYzEpLgogCiAgKiAiZ2l0IHJlYmFzZSAtaSIgYW5kIG90aGVyIHNjcmlwdGVkIGNvbW1hbmRzIHdlcmUgZmVlZGluZyBhCi0gICByYW5kb20sIGRhdGEgZGVwZW5kYW50IGVycm9yIG1lc3NhZ2UgdG8gJ2VjaG8nIGFuZCBleHBlY3RpbmcgaXQKKyAgIHJhbmRvbSwgZGF0YSBkZXBlbmRlbnQgZXJyb3IgbWVzc2FnZSB0byAnZWNobycgYW5kIGV4cGVjdGluZyBpdAogICAgdG8gY29tZSBvdXQgbGl0ZXJhbGx5LgogCiAgKiBTZXR0aW5nIHRoZSAic3VibW9kdWxlLjxuYW1lPi5wYXRoIiB2YXJpYWJsZSB0byB0aGUgZW1wdHkKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMS44LjQudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjguNC50eHQKaW5kZXggMDJmNjgxYi4uMjU1ZTE4NSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjguNC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8xLjguNC50eHQKQEAgLTU4LDcgKzU4LDcgQEAKICAgIGNyZWRlbnRpYWwgaGVscGVyIGludGVyZmFjZSBmcm9tIEdpdC5wbS4KIAogICogVXBkYXRlIGJ1aWxkIGZvciBDeWd3aW4gMS5bNTddLiAgVG9yc3RlbiBCw7ZnZXJzaGF1c2VuIHJlcG9ydHMgdGhhdAotICAgdGhpcyBpcyBmaW5lIHdpdGggQ3lnd2luIDEuNyAoJGdtYW5lLzIyNTgyNCkgc28gbGV0J3MgdHJ5IG1vdmluZyBpdAorICAgdGhpcyBpcyBmaW5lIHdpdGggQ3lnd2luIDEuNyAoY2YuIDw1MUE2MDZBMC41MDYwMTAxQHdlYi5kZT4pIHNvIGxldCdzIHRyeSBtb3ZpbmcgaXQKICAgIGFoZWFkLgogCiAgKiBUaGUgY3JlZGVudGlhbCBoZWxwZXIgdG8gdGFsayB0byBrZXljaGFpbiBvbiBPUyBYIChpbiBjb250cmliLykgaGFzCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMS4zLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xLjMudHh0CmluZGV4IGFjYzllYmIuLjBkZmIxN2MgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xLjMudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xLjMudHh0CkBAIC0xMyw3ICsxMyw3IEBACiAgICB0aGV5IGFyZSBuZXcgZW5vdWdoIHRvIHN1cHBvcnQgdGhlIGAtLW91dHB1dGAgb3B0aW9uLgogCiAgKiAiZ2l0IHBhY2stb2JqZWN0cyIgZm9yZ290IHRvIGRpc2FibGUgdGhlIGNvZGVwYXRoIHRvIGdlbmVyYXRlCi0gICBvYmplY3QgcmVjaGVhYmlsaXR5IGJpdG1hcCB3aGVuIGl0IG5lZWRzIHRvIHNwbGl0IHRoZSByZXN1bHRpbmcKKyAgIG9iamVjdCByZWFjaGFiaWxpdHkgYml0bWFwIHdoZW4gaXQgbmVlZHMgdG8gc3BsaXQgdGhlIHJlc3VsdGluZwogICAgcGFjay4KIAogICogImdpdHdlYiIgdXNlZCBkZXByZWNhdGVkIENHSTo6c3RhcnRmcm9tLCB3aGljaCB3YXMgcmVtb3ZlZCBmcm9tCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTAuMC50eHQgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTAuMC50eHQKaW5kZXggZjRkYTI4YS4uMzc5MmI3ZCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjEwLjAudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xMC4wLnR4dApAQCAtNDc4LDcgKzQ3OCw3IEBACiAgKiBPbmUgcGFydCBvZiAiZ2l0IGFtIiBoYWQgYW4gb2RkYmFsbCBoZWxwZXIgZnVuY3Rpb24gdGhhdCBjYWxsZWQKICAgIHN0dWZmIGZyb20gb3V0c2lkZSAiaGlzIiBhcyBvcHBvc2VkIHRvIGNhbGxpbmcgd2hhdCB3ZSBoYXZlICJvdXJzIiwKICAgIHdoaWNoIHdhcyBub3QgZ2VuZGVyLW5ldXRyYWwgYW5kIGFsc28gaW5jb25zaXN0ZW50IHdpdGggdGhlIHJlc3Qgb2YKLSAgIHRoZSBzeXN0ZW0gd2hlcmUgb3V0c2lkZSBzdHVmZiBpcyB1c3VhbGwgY2FsbGVkICJ0aGVpcnMiIGluCisgICB0aGUgc3lzdGVtIHdoZXJlIG91dHNpZGUgc3R1ZmYgaXMgdXN1YWxseSBjYWxsZWQgInRoZWlycyIgaW4KICAgIGNvbnRyYXN0IHRvICJvdXJzIi4KIAogICogImdpdCBibGFtZSBmaWxlIiBhbGxvd2VkIHRoZSBsaW5lYWdlIG9mIGxpbmVzIGluIHRoZSB1bmNvbW1pdHRlZCwKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xMC4yLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xMC4yLnR4dAppbmRleCBjNGQ0Mzk3Li5hYmJkMzMxIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTAuMi50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjEwLjIudHh0CkBAIC04Niw3ICs4Niw3IEBACiAgICBieSByZWZ1c2luZyB0byBjaGVjayBvdXQgYSBicmFuY2ggdGhhdCBpcyBhbHJlYWR5IGNoZWNrZWQgb3V0IGluCiAgICBhbm90aGVyIHdvcmt0cmVlLiAgSG93ZXZlciwgdGhpcyBhbHNvIHByZXZlbnRlZCBjaGVja2luZyBvdXQgYQogICAgYnJhbmNoLCB3aGljaCBpcyBkZXNpZ25hdGVkIGFzIHRoZSBwcmltYXJ5IGJyYW5jaCBvZiBhIGJhcmUKLSAgIHJlb3BzaXRvcnksIGluIGEgd29ya3RyZWUgdGhhdCBpcyBjb25uZWN0ZWQgdG8gdGhlIGJhcmUKKyAgIHJlcG9zaXRvcnksIGluIGEgd29ya3RyZWUgdGhhdCBpcyBjb25uZWN0ZWQgdG8gdGhlIGJhcmUKICAgIHJlcG9zaXRvcnkuICBUaGUgY2hlY2sgaGFzIGJlZW4gY29ycmVjdGVkIHRvIGFsbG93IGl0LgogCiAgKiAiZ2l0IHJlYmFzZSIgaW1tZWRpYXRlbHkgYWZ0ZXIgImdpdCBjbG9uZSIgZmFpbGVkIHRvIGZpbmQgdGhlIGZvcmsKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xMS4xLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xMS4xLnR4dAppbmRleCA5Y2QxNGM4Li43ZDM1Y2YxIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTEuMS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjExLjEudHh0CkBAIC0xMDQsNyArMTA0LDcgQEAKICAgICJnaXQgZGlmZnRvb2wgLS1kaXItZGlmZiIgZnJvbSBhIHN1YmRpcmVjdG9yeSBuZXZlciB3b3JrZWQuIFRoaXMKICAgIGhhcyBiZWVuIGZpeGVkLgogCi0gKiAiZ2l0IHA0IiB0aGF0IHRyYWNrcyBtdWx0aWxlIHA0IHBhdGhzIGltcG9ydGVkIGEgc2luZ2xlIGNoYW5nZWxpc3QKKyAqICJnaXQgcDQiIHRoYXQgdHJhY2tzIG11bHRpcGxlIHA0IHBhdGhzIGltcG9ydGVkIGEgc2luZ2xlIGNoYW5nZWxpc3QKICAgIHRoYXQgdG91Y2hlcyBmaWxlcyBpbiB0aGVzZSBtdWx0aXBsZSBwYXRocyBhcyBvbmUgY29tbWl0LCBmb2xsb3dlZAogICAgYnkgbWFueSBlbXB0eSBjb21taXRzLiAgVGhpcyBoYXMgYmVlbiBmaXhlZC4KIApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjEyLjAudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjEyLjAudHh0CmluZGV4IGVmOGI5N2QuLmQyZjZhODMgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xMi4wLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTIuMC50eHQKQEAgLTMxNSw3ICszMTUsNyBAQAogICAgImdpdCBkaWZmdG9vbCAtLWRpci1kaWZmIiBmcm9tIGEgc3ViZGlyZWN0b3J5IG5ldmVyIHdvcmtlZC4gVGhpcwogICAgaGFzIGJlZW4gZml4ZWQuCiAKLSAqICJnaXQgcDQiIHRoYXQgdHJhY2tzIG11bHRpbGUgcDQgcGF0aHMgaW1wb3J0ZWQgYSBzaW5nbGUgY2hhbmdlbGlzdAorICogImdpdCBwNCIgdGhhdCB0cmFja3MgbXVsdGlwbGUgcDQgcGF0aHMgaW1wb3J0ZWQgYSBzaW5nbGUgY2hhbmdlbGlzdAogICAgdGhhdCB0b3VjaGVzIGZpbGVzIGluIHRoZXNlIG11bHRpcGxlIHBhdGhzIGFzIG9uZSBjb21taXQsIGZvbGxvd2VkCiAgICBieSBtYW55IGVtcHR5IGNvbW1pdHMuICBUaGlzIGhhcyBiZWVuIGZpeGVkLgogCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTMuMC50eHQgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTMuMC50eHQKaW5kZXggYWE5OWQ0Yi4uMmE0N2I0YyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjEzLjAudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xMy4wLnR4dApAQCAtMTc3LDcgKzE3Nyw3IEBACiAgICBiZWVuIGNoYW5nZWQgdG8gZW5hYmxlICItLWRlY29yYXRlIi4KIAogICogVGhlIG91dHB1dCBmcm9tICJnaXQgc3RhdHVzIC0tc2hvcnQiIGhhcyBiZWVuIGV4dGVuZGVkIHRvIHNob3cKLSAgIHZhcmlvdXMga2luZHMgb2YgZGlydHluZXNzIGluIHN1Ym1vZHVsZXMgZGlmZmVyZW50bHk7IGluc3RlYWQgb2YgdG8KKyAgIHZhcmlvdXMga2luZHMgb2YgZGlydGluZXNzIGluIHN1Ym1vZHVsZXMgZGlmZmVyZW50bHk7IGluc3RlYWQgb2YgdG8KICAgICJNIiBmb3IgbW9kaWZpZWQsICdtJyBhbmQgJz8nIGNhbiBiZSBzaG93biB0byBzaWduYWwgY2hhbmdlcyBvbmx5CiAgICB0byB0aGUgd29ya2luZyB0cmVlIG9mIHRoZSBzdWJtb2R1bGUgYnV0IG5vdCB0aGUgY29tbWl0IHRoYXQgaXMKICAgIGNoZWNrZWQgb3V0LgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjEzLjMudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjEzLjMudHh0CmluZGV4IDVkNzZhZDUuLjM4NGU0ZGUgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xMy4zLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTMuMy50eHQKQEAgLTI1LDcgKzI1LDcgQEAKICAqIFRoZSBjb2RlIHRvIHBpY2sgdXAgYW5kIGV4ZWN1dGUgY29tbWFuZCBhbGlhcyBkZWZpbml0aW9uIGZyb20gdGhlCiAgICBjb25maWd1cmF0aW9uIHVzZWQgdG8gc3dpdGNoIHRvIHRoZSB0b3Agb2YgdGhlIHdvcmtpbmcgdHJlZSBhbmQKICAgIHRoZW4gY29tZSBiYWNrIHdoZW4gdGhlIGV4cGFuZGVkIGFsaWFzIHdhcyBleGVjdXRlZCwgd2hpY2ggd2FzCi0gICB1bm5lY2Vzc2FyaWx5bCBjb21wbGV4LiAgQXR0ZW1wdCB0byBzaW1wbGlmeSB0aGUgbG9naWMgYnkgdXNpbmcgdGhlCisgICB1bm5lY2Vzc2FyaWx5IGNvbXBsZXguICBBdHRlbXB0IHRvIHNpbXBsaWZ5IHRoZSBsb2dpYyBieSB1c2luZyB0aGUKICAgIGVhcmx5LWNvbmZpZyBtZWNoYW5pc20gdGhhdCBkb2VzIG5vdCBjaGRpciBhcm91bmQuCiAKICAqICJnaXQgYWRkIC1wIiB3ZXJlIHVwZGF0ZWQgaW4gMi4xMiB0aW1lZnJhbWUgdG8gY29wZSB3aXRoIGN1c3RvbQpAQCAtMzUsNyArMzUsNyBAQAogICogRml4IGEgcmVjZW50IHJlZ3Jlc3Npb24gdG8gImdpdCByZWJhc2UgLWkiIGFuZCBhZGQgdGVzdHMgdGhhdCB3b3VsZAogICAgaGF2ZSBjYXVnaHQgaXQgYW5kIG90aGVycy4KIAotICogQW4gdW5hbGlnbmVkIDMyLWJpdCBhY2Nlc3MgaW4gcGFjay1iaXRtYXAgY29kZSBhaHMgYmVlbiBjb3JyZWN0ZWQuCisgKiBBbiB1bmFsaWduZWQgMzItYml0IGFjY2VzcyBpbiBwYWNrLWJpdG1hcCBjb2RlIGhhcyBiZWVuIGNvcnJlY3RlZC4KIAogICogVGlnaHRlbiBlcnJvciBjaGVja3MgZm9yIGludmFsaWQgImdpdCBhcHBseSIgaW5wdXQuCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xNC4wLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xNC4wLnR4dAppbmRleCA0MjQ2YzY4Li4yNzExYTI1IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTQuMC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjE0LjAudHh0CkBAIC0xNDEsNyArMTQxLDcgQEAKICAqIFNvbWUgcGxhdGZvcm1zIGhhdmUgdWxvbmcgdGhhdCBpcyBzbWFsbGVyIHRoYW4gdGltZV90LCBhbmQgb3VyCiAgICBoaXN0b3JpY2FsIHVzZSBvZiB1bG9uZyBmb3IgdGltZXN0YW1wIHdvdWxkIG1lYW4gdGhleSBjYW5ub3QKICAgIHJlcHJlc2VudCBzb21lIHRpbWVzdGFtcCB0aGF0IHRoZSBwbGF0Zm9ybSBhbGxvd3MuICBJbnZlbnQgYQotICAgc2VwYXJhdGUgYW5kIGRlZGljYXRlZCB0aW1lc3RhbXBfdCAoc28gdGhhdCB3ZSBjYW4gZGlzdGluZ2l1aXNoCisgICBzZXBhcmF0ZSBhbmQgZGVkaWNhdGVkIHRpbWVzdGFtcF90IChzbyB0aGF0IHdlIGNhbiBkaXN0aW5ndWlzaAogICAgdGltZXN0YW1wcyBhbmQgYSB2YW5pbGxhIHVsb25ncywgd2hpY2ggYWxvbmcgaXMgYWxyZWFkeSBhIGdvb2QKICAgIG1vdmUpLCBhbmQgdGhlbiBkZWNsYXJlIHVpbnRtYXhfdCBpcyB0aGUgdHlwZSB0byBiZSB1c2VkIGFzIHRoZQogICAgdGltZXN0YW1wX3QuCkBAIC00NDIsNyArNDQyLDcgQEAKICAqIFRoZSBjb2RlIHRvIHBpY2sgdXAgYW5kIGV4ZWN1dGUgY29tbWFuZCBhbGlhcyBkZWZpbml0aW9uIGZyb20gdGhlCiAgICBjb25maWd1cmF0aW9uIHVzZWQgdG8gc3dpdGNoIHRvIHRoZSB0b3Agb2YgdGhlIHdvcmtpbmcgdHJlZSBhbmQKICAgIHRoZW4gY29tZSBiYWNrIHdoZW4gdGhlIGV4cGFuZGVkIGFsaWFzIHdhcyBleGVjdXRlZCwgd2hpY2ggd2FzCi0gICB1bm5lY2Vzc2FyaWx5bCBjb21wbGV4LiAgQXR0ZW1wdCB0byBzaW1wbGlmeSB0aGUgbG9naWMgYnkgdXNpbmcgdGhlCisgICB1bm5lY2Vzc2FyaWx5IGNvbXBsZXguICBBdHRlbXB0IHRvIHNpbXBsaWZ5IHRoZSBsb2dpYyBieSB1c2luZyB0aGUKICAgIGVhcmx5LWNvbmZpZyBtZWNoYW5pc20gdGhhdCBkb2VzIG5vdCBjaGRpciBhcm91bmQuCiAKICAqIEZpeCBjb25maWd1cmF0aW9uIGNvZGVwYXRoIHRvIHBheSBwcm9wZXIgYXR0ZW50aW9uIHRvIGNvbW1vbmRpcgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjE2LjAudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjE2LjAudHh0CmluZGV4IDBjODFjNTkuLmI0NzQ3ODEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xNi4wLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTYuMC50eHQKQEAgLTQwNyw3ICs0MDcsNyBAQAogICAgKG1lcmdlIGVlZjNkZjVhOTMgYncvcGF0aHNwZWMtbWF0Y2gtc3VibW9kdWxlLWJvdW5kYXJ5IGxhdGVyIHRvIG1haW50KS4KIAogICogQW1lbmRpbmcgY29tbWl0cyBpbiBnaXQtZ3VpIGJyb2tlIHRoZSBhdXRob3IgbmFtZSB0aGF0IGlzIG5vbi1hc2NpaQotICAgZHVlIHRvIGluY29ycmVjdCBlbmNvbmRpbmcgY29udmVyc2lvbi4KKyAgIGR1ZSB0byBpbmNvcnJlY3QgZW5jb2RpbmcgY29udmVyc2lvbi4KIAogICogUmVjZW50IHVwZGF0ZSB0byB0aGUgc3VibW9kdWxlIGNvbmZpZ3VyYXRpb24gY29kZSBicm9rZSAiZGlmZi10cmVlIgogICAgYnkgYWNjaWRlbnRhbGx5IHN0b3BwaW5nIHRvIHJlYWQgZnJvbSB0aGUgaW5kZXggdXBmcm9udC4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xNi4zLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xNi4zLnR4dAppbmRleCA2NGEwYmNiLi5mMDEyMWE4IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTYuMy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjE2LjMudHh0CkBAIC0yNCw3ICsyNCw3IEBACiAKICAqIFRoZSBodHRwIHRyYWNpbmcgY29kZSwgb2Z0ZW4gdXNlZCB0byBkZWJ1ZyBjb25uZWN0aW9uIGlzc3VlcywKICAgIGxlYXJuZWQgdG8gcmVkYWN0IHBvdGVudGlhbGx5IHNlbnNpdGl2ZSBpbmZvcm1hdGlvbiBmcm9tIGl0cyBvdXRwdXQKLSAgIHNvIHRoYXQgaXQgY2FuIGJlIG1vcmUgc2FmZWx5IHNoYXJhYmxlLgorICAgc28gdGhhdCBpdCBjYW4gYmUgbW9yZSBzYWZlbHkgc2hhcmVhYmxlLgogCiAgKiBDcmFzaCBmaXggZm9yIGEgY29ybmVyIGNhc2Ugd2hlcmUgYW4gZXJyb3IgY29kZXBhdGggdHJpZWQgdG8gdW5sb2NrCiAgICB3aGF0IGl0IGRpZCBub3QgYWNxdWlyZSBsb2NrIG9uLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjE3LjAudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjE3LjAudHh0CmluZGV4IGMyY2Y4OTEuLjhiMTdjMjYgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xNy4wLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTcuMC50eHQKQEAgLTIxNiw3ICsyMTYsNyBAQAogCiAgKiBUaGUgaHR0cCB0cmFjaW5nIGNvZGUsIG9mdGVuIHVzZWQgdG8gZGVidWcgY29ubmVjdGlvbiBpc3N1ZXMsCiAgICBsZWFybmVkIHRvIHJlZGFjdCBwb3RlbnRpYWxseSBzZW5zaXRpdmUgaW5mb3JtYXRpb24gZnJvbSBpdHMgb3V0cHV0Ci0gICBzbyB0aGF0IGl0IGNhbiBiZSBtb3JlIHNhZmVseSBzaGFyYWJsZS4KKyAgIHNvIHRoYXQgaXQgY2FuIGJlIG1vcmUgc2FmZWx5IHNoYXJlYWJsZS4KICAgIChtZXJnZSA4YmExOGU2ZmE0IGp0L2h0dHAtcmVkYWN0LWNvb2tpZXMgbGF0ZXIgdG8gbWFpbnQpLgogCiAgKiBDcmFzaCBmaXggZm9yIGEgY29ybmVyIGNhc2Ugd2hlcmUgYW4gZXJyb3IgY29kZXBhdGggdHJpZWQgdG8gdW5sb2NrCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTguMC50eHQgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTguMC50eHQKaW5kZXggM2VhMjgwYy4uNmM4YTBlOSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjE4LjAudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xOC4wLnR4dApAQCAtMTc5LDcgKzE3OSw3IEBACiAgICAobWVyZ2UgMDBhM2RhMmExMyBuZC9yZW1vdmUtaWdub3JlLWVudi1maWVsZCBsYXRlciB0byBtYWludCkuCiAKICAqIENvZGUgdG8gZmluZCB0aGUgbGVuZ3RoIHRvIHVuaXF1ZWx5IGFiYnJldmlhdGUgb2JqZWN0IG5hbWVzIGJhc2VkCi0gICBvbiBwYWNrZmlsZSBjb250ZW50LCB3aGljaCBpcyBhIHJlbGF0aXZlbHkgcmVjZW50IGFkZHRpb24sIGhhcyBiZWVuCisgICBvbiBwYWNrZmlsZSBjb250ZW50LCB3aGljaCBpcyBhIHJlbGF0aXZlbHkgcmVjZW50IGFkZGl0aW9uLCBoYXMgYmVlbgogICAgb3B0aW1pemVkIHRvIHVzZSB0aGUgc2FtZSBmYW4tb3V0IHRhYmxlLgogCiAgKiBUaGUgbWVjaGFuaXNtIHRvIHVzZSBwYXJzZS1vcHRpb25zIEFQSSB0byBhdXRvbWF0ZSB0aGUgY29tbWFuZCBsaW5lCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTkuMC50eHQgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMTkuMC50eHQKaW5kZXggYTA2Y2NmNi4uODkxYzc5YiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjE5LjAudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4xOS4wLnR4dApAQCAtMTA2LDcgKzEwNiw3IEBACiAgKiBUaGUgY29udmVyc2lvbiB0byBwYXNzICJ0aGVfcmVwb3NpdG9yeSIgYW5kIHRoZW4gImFfcmVwb3NpdG9yeSIKICAgIHRocm91Z2hvdXQgdGhlIG9iamVjdCBhY2Nlc3MgQVBJIGNvbnRpbnVlcy4KIAotICogQ29udGludWluZyB3aXRoIHRoZSBpZGVhIHRvIHByb2dyYW1hdGljYWxseSBlbnVtZXJhdGUgdmFyaW91cworICogQ29udGludWluZyB3aXRoIHRoZSBpZGVhIHRvIHByb2dyYW1tYXRpY2FsbHkgZW51bWVyYXRlIHZhcmlvdXMKICAgIHBpZWNlcyBvZiBkYXRhIHJlcXVpcmVkIGZvciBjb21tYW5kIGxpbmUgY29tcGxldGlvbiwgdGVhY2ggdGhlCiAgICBjb2RlYmFzZSB0byByZXBvcnQgdGhlIGxpc3Qgb2YgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMKICAgIHN1YmNvbW1hbmRzIGNhcmUgYWJvdXQgdG8gaGVscCBjb21wbGV0ZSB0aGVtLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjIwLjAudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjIwLjAudHh0CmluZGV4IGU3MWZlM2QuLjNkZDdlNmUgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yMC4wLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMjAuMC50eHQKQEAgLTExOSw3ICsxMTksNyBAQAogICAgYWxpYXMgZXhwYW5zaW9uLgogCiAgKiBUaGUgZG9jdW1lbnRhdGlvbiBvZiAiZ2l0IGdjIiBoYXMgYmVlbiB1cGRhdGVkIHRvIG1lbnRpb24gdGhhdCBpdAotICAgaXMgbm8gbG9uZ2VyIGxpbWl0ZWQgdG8gInBydW5pbmcgYXdheSBjcnVmdHMiIGJ1dCBhbHNvIHVwZGF0ZXMKKyAgIGlzIG5vIGxvbmdlciBsaW1pdGVkIHRvICJwcnVuaW5nIGF3YXkgY3J1ZnQiIGJ1dCBhbHNvIHVwZGF0ZXMKICAgIGFuY2lsbGFyeSBmaWxlcyBsaWtlIGNvbW1pdC1ncmFwaCBhcyBhIHBhcnQgb2YgcmVwb3NpdG9yeQogICAgb3B0aW1pemF0aW9uLgogCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMjEuMC50eHQgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMjEuMC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2E0OWRlZAotLS0gL2Rldi9udWxsCisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yMS4wLnR4dApAQCAtMCwwICsxLDQ1MSBAQAorR2l0IDIuMjEgUmVsZWFzZSBOb3RlcworPT09PT09PT09PT09PT09PT09PT09PQorCitCYWNrd2FyZCBDb21wYXRpYmlsaXR5IE5vdGVzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAqIEhpc3RvcmljYWxseSwgdGhlICItbSIgKG1haW5saW5lKSBvcHRpb24gY2FuIG9ubHkgYmUgdXNlZCBmb3IgImdpdAorICAgY2hlcnJ5LXBpY2siIGFuZCAiZ2l0IHJldmVydCIgd2hlbiB3b3JraW5nIHdpdGggYSBtZXJnZSBjb21taXQuCisgICBUaGlzIHZlcnNpb24gb2YgR2l0IG5vIGxvbmdlciB3YXJucyBvciBlcnJvcnMgb3V0IHdoZW4gd29ya2luZyB3aXRoCisgICBhIHNpbmdsZS1wYXJlbnQgY29tbWl0LCBhcyBsb25nIGFzIHRoZSBhcmd1bWVudCB0byB0aGUgIi1tIiBvcHRpb24KKyAgIGlzIDEgKGkuZS4gaXQgaGFzIG9ubHkgb25lIHBhcmVudCwgYW5kIHRoZSByZXF1ZXN0IGlzIHRvIHBpY2sgb3IKKyAgIHJldmVydCByZWxhdGl2ZSB0byB0aGF0IGZpcnN0IHBhcmVudCkuICBTY3JpcHRzIHRoYXQgcmVsaWVkIG9uIHRoZQorICAgYmVoYXZpb3VyIG1heSBnZXQgYnJva2VuIHdpdGggdGhpcyBjaGFuZ2UuCisKKworVXBkYXRlcyBzaW5jZSB2Mi4yMAorLS0tLS0tLS0tLS0tLS0tLS0tLQorCitVSSwgV29ya2Zsb3dzICYgRmVhdHVyZXMKKworICogVGhlICJodHRwLnZlcnNpb24iIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgY2FuIGJlIHVzZWQgd2l0aCByZWNlbnQKKyAgIGVub3VnaCB2ZXJzaW9ucyBvZiBjVVJMIGxpYnJhcnkgdG8gZm9yY2UgdGhlIHZlcnNpb24gb2YgSFRUUCB1c2VkCisgICB0byB0YWxrIHdoZW4gZmV0Y2hpbmcgYW5kIHB1c2hpbmcuCisKKyAqIFNtYWxsIGZpeGVzIGFuZCBmZWF0dXJlcyBmb3IgZmFzdC1leHBvcnQgYW5kIGZhc3QtaW1wb3J0LCBtb3N0bHkgb24KKyAgIHRoZSBmYXN0LWV4cG9ydCBzaWRlIGhhcyBiZWVuIG1hZGUuCisKKyAqICJnaXQgcHVzaCAkdGhlcmUgJHNyYzokZHN0IiByZWplY3RzIHdoZW4gJGRzdCBpcyBub3QgYSBmdWxseQorICAgcXVhbGlmaWVkIHJlZm5hbWUgYW5kIGl0IGlzIG5vdCBjbGVhciB3aGF0IHRoZSBlbmQgdXNlciBtZWFudC4gIFRoZQorICAgY29kZXBhdGggaGFzIGJlZW4gdGF1Z2h0IHRvIGdpdmUgYSBjbGVhcmVyIGVycm9yIG1lc3NhZ2UsIGFuZCBhbHNvCisgICBndWVzcyB3aGVyZSB0aGUgcHVzaCBzaG91bGQgZ28gYnkgdGFraW5nIHRoZSB0eXBlIG9mIHRoZSBwdXNoZWQKKyAgIG9iamVjdCBpbnRvIGFjY291bnQgKGUuZy4gYSB0YWcgb2JqZWN0IHdvdWxkIHdhbnQgdG8gZ28gdW5kZXIKKyAgIHJlZnMvdGFncy8pLgorCisgKiAiZ2l0IGNoZWNrb3V0IFs8dHJlZS1pc2g+XSBwYXRoLi4uIiBsZWFybmVkIHRvIHJlcG9ydCB0aGUgbnVtYmVyIG9mCisgICBwYXRocyB0aGF0IGhhdmUgYmVlbiBjaGVja2VkIG91dCBvZiB0aGUgaW5kZXggb3IgdGhlIHRyZWUtaXNoLAorICAgd2hpY2ggZ2l2ZXMgaXQgdGhlIHNhbWUgZGVncmVlIG9mIG5vaXN5LW5lc3MgYXMgdGhlIGNhc2UgaW4gd2hpY2gKKyAgIHRoZSBjb21tYW5kIGNoZWNrcyBvdXQgYSBicmFuY2guICAiZ2l0IGNoZWNrb3V0IC1tIDxwYXRoc3BlYz4iIHRvCisgICB1bmRvIGNvbmZsaWN0IHJlc29sdXRpb24gZ2l2ZXMgYSBzaW1pbGFyIG1lc3NhZ2UuCisKKyAqICJnaXQgcXVpbHRpbXBvcnQiIGxlYXJuZWQgIi0ta2VlcC1ub24tcGF0Y2giIG9wdGlvbi4KKworICogImdpdCB3b3JrdHJlZSByZW1vdmUiIGFuZCAiZ2l0IHdvcmt0cmVlIG1vdmUiIHJlZnVzZWQgdG8gd29yayB3aGVuCisgICB0aGVyZSBpcyBhIHN1Ym1vZHVsZSBpbnZvbHZlZC4gIFRoaXMgaGFzIGJlZW4gbG9vc2VuZWQgdG8gaWdub3JlCisgICB1bmluaXRpYWxpemVkIHN1Ym1vZHVsZXMuCisKKyAqICJnaXQgY2hlcnJ5LXBpY2sgLW0xIiB3YXMgZm9yYmlkZGVuIHdoZW4gcGlja2luZyBhIG5vbi1tZXJnZQorICAgY29tbWl0LCBldmVuIHRob3VnaCB0aGVyZSBfaXNfIHBhcmVudCBudW1iZXIgMSBmb3Igc3VjaCBhIGNvbW1pdC4KKyAgIFRoaXMgd2FzIGRvbmUgdG8gYXZvaWQgbWlzdGFrZXMgYmFjayB3aGVuICJjaGVycnktcGljayIgd2FzIGFib3V0CisgICBwaWNraW5nIGEgc2luZ2xlIGNvbW1pdCwgYnV0IGlzIG5vIGxvbmdlciB1c2VmdWwgd2l0aCAiY2hlcnJ5LXBpY2siCisgICB0aGF0IGNhbiBwaWNrIGEgcmFuZ2Ugb2YgY29tbWl0cy4gIE5vdyB0aGUgIi1tJG51bSIgb3B0aW9uIGlzCisgICBhbGxvd2VkIHdoZW4gcGlja2luZyBhbnkgY29tbWl0LCBhcyBsb25nIGFzICRudW0gbmFtZXMgYW4gZXhpc3RpbmcKKyAgIHBhcmVudCBvZiB0aGUgY29tbWl0LgorCisgKiBVcGRhdGUgImdpdCBtdWx0aW1haWwiIGZyb20gdGhlIHVwc3RyZWFtLgorCisgKiAiZ2l0IHA0IiB1cGRhdGUuCisKKyAqIFRoZSAiLS1mb3JtYXQ9PHBsYWNlaG9sZGVyPiIgb3B0aW9uIG9mIGZvci1lYWNoLXJlZiwgYnJhbmNoIGFuZCB0YWcKKyAgIGxlYXJuZWQgdG8gc2hvdyBhIGZldyBtb3JlIHRyYWl0cyBvZiBvYmplY3RzIHRoYXQgY2FuIGJlIGxlYXJuZWQgYnkKKyAgIHRoZSBvYmplY3RfaW5mbyBBUEkuCisKKyAqICJnaXQgcmViYXNlIC1pIiBsZWFybmVkIHRvIHJlLWV4ZWN1dGUgYSBjb21tYW5kIGdpdmVuIHdpdGggJ2V4ZWMnCisgICB0byBydW4gYWZ0ZXIgaXQgZmFpbGVkIHRoZSBsYXN0IHRpbWUuCisKKyAqICJnaXQgZGlmZiAtLWNvbG9yLW1vdmVkLXdzIiB1cGRhdGVzLgorCisgKiBDdXN0b20gdXNlcmZvcm1hdCAibG9nIC0tZm9ybWF0IiBsZWFybmVkICVTIGF0b20gdGhhdCBzdGFuZHMgZm9yCisgICB0aGUgdGlwIHRoZSB0cmF2ZXJzYWwgcmVhY2hlZCB0aGUgY29tbWl0IGZyb20sIGkuZS4gLS1zb3VyY2UuCisKKyAqICJnaXQgaW5zdGF3ZWIiIGxlYXJuZWQgdG8gZHJpdmUgaHR0cC5zZXJ2ZXIgdGhhdCBjb21lcyB3aXRoCisgICAiYmF0dGVyaWVzIGluY2x1ZGVkIiBQeXRob24gaW5zdGFsbGF0aW9uIChib3RoIFB5dGhvbjIgJiAzKS4KKworICogQSBuZXcgZW5jb2RpbmcgVVRGLTE2TEUtQk9NIGhhcyBiZWVuIGludmVudGVkIHRvIGZvcmNlIGVuY29kaW5nIHRvCisgICBVVEYtMTYgd2l0aCBCT00gaW4gbGl0dGxlIGVuZGlhbiBieXRlIG9yZGVyLCB3aGljaCBjYW5ub3QgYmUgZGlyZWN0bHkKKyAgIGdlbmVyYXRlZCBieSB1c2luZyBpY29udi4KKworICogQSBuZXcgZGF0ZSBmb3JtYXQgIi0tZGF0ZT1odW1hbiIgdGhhdCBtb3JwaHMgaXRzIG91dHB1dCBkZXBlbmRpbmcKKyAgIG9uIGhvdyBmYXIgdGhlIHRpbWUgaXMgZnJvbSB0aGUgY3VycmVudCB0aW1lIGhhcyBiZWVuIGludHJvZHVjZWQuCisgICAiLS1kYXRlPWF1dG86aHVtYW4iIGNhbiBiZSB1c2VkIHRvIHVzZSB0aGlzIG5ldyBmb3JtYXQgKG9yIGFueQorICAgZXhpc3RpbmcgZm9ybWF0KSB3aGVuIHRoZSBvdXRwdXQgaXMgZ29pbmcgdG8gdGhlIHBhZ2VyIG9yIHRvIHRoZQorICAgdGVybWluYWwsIGFuZCBvdGhlcndpc2UgdGhlIGRlZmF1bHQgZm9ybWF0LgorCisKK1BlcmZvcm1hbmNlLCBJbnRlcm5hbCBJbXBsZW1lbnRhdGlvbiwgRGV2ZWxvcG1lbnQgU3VwcG9ydCBldGMuCisKKyAqIENvZGUgY2xlYW4tdXAgd2l0aCBvcHRpbWl6YXRpb24gZm9yIHRoZSBjb2RlcGF0aCB0aGF0IGNoZWNrcworICAgKG5vbi0pZXhpc3RlbmNlIG9mIGxvb3NlIG9iamVjdHMuCisKKyAqIE1vcmUgY29kZXBhdGhzIGhhdmUgYmVjb21lIGF3YXJlIG9mIHdvcmtpbmcgd2l0aCBpbi1jb3JlIHJlcG9zaXRvcnkKKyAgIGluc3RhbmNlcyBvdGhlciB0aGFuIHRoZSBkZWZhdWx0ICJ0aGVfcmVwb3NpdG9yeSIuCisKKyAqIFRoZSAic3RybmNhdCgpIiBmdW5jdGlvbiBpcyBub3cgYW1vbmcgdGhlIGJhbm5lZCBmdW5jdGlvbnMuCisKKyAqIFBvcnRhYmlsaXR5IHVwZGF0ZXMgZm9yIHRoZSBIUEUgTm9uU3RvcCBwbGF0Zm9ybS4KKworICogRWFybGllciB3ZSBhZGRlZCAiLVdmb3JtYXQtc2VjdXJpdHkiIHRvIGRldmVsb3BlciBidWlsZHMsIGFzc3VtaW5nCisgICB0aGF0ICItV2FsbCIgKHdoaWNoIGluY2x1ZGVzICItV2Zvcm1hdCIgd2hpY2ggaW4gdHVybiBpcyByZXF1aXJlZAorICAgdG8gdXNlICItV2Zvcm1hdC1zZWN1cml0eSIpIGlzIGFsd2F5cyBpbiBlZmZlY3QuICBUaGlzIGlzIG5vdCB0cnVlCisgICB3aGVuIGNvbmZpZy5tYWsuYXV0b2dlbiBpcyBpbiB1c2UsIHVuZm9ydHVuYXRlbHkuICBUaGlzIGhhcyBiZWVuCisgICBmaXhlZCBieSB1bmNvbmRpdGlvbmFsbHkgYWRkaW5nICItV2FsbCIgdG8gZGV2ZWxvcGVyIGJ1aWxkcy4KKworICogVGhlIGxvb3NlIG9iamVjdCBjYWNoZSB1c2VkIHRvIG9wdGltaXplIGV4aXN0ZW5jZSBsb29rLXVwIGhhcyBiZWVuCisgICB1cGRhdGVkLgorCisgKiBGbGFreSB0ZXN0cyBjYW4gbm93IGJlIHJlcGVhdGVkbHkgcnVuIHVuZGVyIGxvYWQgd2l0aCB0aGUKKyAgICItLXN0cmVzcyIgb3B0aW9uLgorCisgKiBEb2N1bWVudGF0aW9uL01ha2VmaWxlIGlzIGdldHRpbmcgcHJlcGFyZWQgZm9yIG1hbnBhZ2UKKyAgIGxvY2FsaXphdGlvbi4KKworICogImdpdCBmZXRjaC1wYWNrIiBub3cgY2FuIHRhbGsgdGhlIHZlcnNpb24gMiBwcm90b2NvbC4KKworICogc2hhLTI1NiBoYXNoIGhhcyBiZWVuIGFkZGVkIGFuZCBwbHVtYmVkIHRocm91Z2ggdGhlIGNvZGUgdG8gYWxsb3cKKyAgIGJ1aWxkaW5nIEdpdCB3aXRoIHRoZSAiTmV3SGFzaCIuCisKKyAqIERlYnVnZ2luZyBoZWxwIGZvciBodHRwIHRyYW5zcG9ydC4KKworICogImdpdCBmZXRjaCAtLWRlZXBlbj08bW9yZT4iIGhhcyBiZWVuIGNvcnJlY3RlZCB0byB3b3JrIG92ZXIgdjIKKyAgIHByb3RvY29sLgorCisgKiBUaGUgY29kZSB0byB3YWxrIHRyZWUgb2JqZWN0cyBoYXMgYmVlbiB0YXVnaHQgdGhhdCB3ZSBtYXkgYmUKKyAgIHdvcmtpbmcgd2l0aCBvYmplY3QgbmFtZXMgdGhhdCBhcmUgbm90IGNvbXB1dGVkIHdpdGggU0hBLTEuCisKKyAqIFRoZSBpbi1jb3JlIHJlcG9zaXRvcnkgaW5zdGFuY2VzIGFyZSBwYXNzZWQgdGhyb3VnaCBtb3JlIGNvZGVwYXRocy4KKworICogVXBkYXRlIHRoZSBwcm90b2NvbCBtZXNzYWdlIHNwZWNpZmljYXRpb24gdG8gYWxsb3cgb25seSB0aGUgbGltaXRlZAorICAgdXNlIG9mIHNjYWxlZCBxdWFudGl0aWVzLiAgVGhpcyBpcyB0byBlbnN1cmUgcG90ZW50aWFsIGNvbXBhdGliaWxpdHkKKyAgIGlzc3VlcyB3aWxsIG5vdCBnZXQgb3V0IG9mIGhhbmQuCisKKyAqIE1pY3JvLW9wdGltaXplIHRoZSBjb2RlIHRoYXQgcHJlcGFyZXMgY29tbWl0IG9iamVjdHMgdG8gYmUgd2Fsa2VkCisgICBieSAiZ2l0IHJldi1saXN0IiB3aGVuIHRoZSBjb21taXQtZ3JhcGggaXMgYXZhaWxhYmxlLgorCisgKiAiZ2l0IGZldGNoIiBhbmQgImdpdCB1cGxvYWQtcGFjayIgbGVhcm5lZCB0byBzZW5kIGFsbCBleGNoYW5nZXMgb3ZlcgorICAgdGhlIHNpZGViYW5kIGNoYW5uZWwgd2hpbGUgdGFsa2luZyB0aGUgdjIgcHJvdG9jb2wuCisKKyAqIFRoZSBjb2RlcGF0aCB0byB3cml0ZSBvdXQgY29tbWl0LWdyYXBoIGhhcyBiZWVuIG9wdGltaXplZCBieQorICAgZm9sbG93aW5nIHRoZSB1c3VhbCBwYXR0ZXJuIG9mIHZpc2l0aW5nIG9iamVjdHMgaW4gaW4tcGFjayBvcmRlci4KKworICogVGhlIGNvZGVwYXRoIHRvIHNob3cgcHJvZ3Jlc3MgbWV0ZXIgd2hpbGUgd3JpdGluZyBvdXQgY29tbWl0LWdyYXBoCisgICBmaWxlIGhhcyBiZWVuIGltcHJvdmVkLgorCisgKiBDb2NjaSBydWxlcyBoYXZlIGJlZW4gdXBkYXRlZCB0byBlbmNvdXJhZ2UgdXNlIG9mIHN0cmJ1Zl9hZGRidWYoKS4KKworICogImdpdCByZWJhc2UgLS1tZXJnZSIgaGFzIGJlZW4gcmVpbXBsZW1lbnRlZCBieSByZXVzaW5nIHRoZSBpbnRlcm5hbAorICAgbWFjaGluZXJ5IHVzZWQgZm9yICJnaXQgcmViYXNlIC1pIi4KKworICogTW9yZSBjb2RlIGluICJnaXQgYmlzZWN0IiBoYXMgYmVlbiByZXdyaXR0ZW4gaW4gQy4KKworICogSW5zdGVhZCBvZiBnb2luZyB0aHJvdWdoICJnaXQtcmViYXNlLS1hbSIgc2NyaXB0bGV0IHRvIHVzZSB0aGUgImFtIgorICAgYmFja2VuZCwgdGhlIGJ1aWx0LWluIHZlcnNpb24gb2YgImdpdCByZWJhc2UiIGxlYXJuZWQgdG8gZHJpdmUgdGhlCisgICAiYW0iIGJhY2tlbmQgZGlyZWN0bHkuCisKKyAqIFRoZSBhc3N1bXB0aW9uIHRvIHdvcmsgb24gdGhlIHNpbmdsZSAiaW4tY29yZSBpbmRleCIgaW5zdGFuY2UgaGFzCisgICBiZWVuIHJlZHVjZWQgZnJvbSB0aGUgbGlicmFyeS1pc2ggcGFydCBvZiB0aGUgY29kZWJhc2UuCisKKyAqIFRoZSB0ZXN0IGxpbnQgbGVhcm5lZCB0byBjYXRjaCBub24tcG9ydGFibGUgInNlZCIgb3B0aW9ucy4KKworICogImdpdCBwYWNrLW9iamVjdHMiIGxlYXJuZWQgYW5vdGhlciBhbGdvcml0aG0gdG8gY29tcHV0ZSB0aGUgc2V0IG9mCisgICBvYmplY3RzIHRvIHNlbmQsIHRoYXQgdHJhZGVzIHRoZSByZXN1bHRpbmcgcGFja2ZpbGUgb2ZmIHRvIHNhdmUKKyAgIHRyYXZlcnNhbCBjb3N0IHRvIGZhdm9yIHNtYWxsIHB1c2hlcy4KKworICogVGhlIHRyYXZpcyBDSSBzY3JpcHRzIGhhdmUgYmVlbiBjb3JyZWN0ZWQgdG8gYnVpbGQgR2l0IHdpdGggdGhlCisgICBjb21waWxlcihzKSBvZiBvdXIgY2hvaWNlLgorCisgKiAiZ2l0IHN1Ym1vZHVsZSB1cGRhdGUiIGxlYXJuZWQgdG8gYWJvcnQgZWFybHkgd2hlbiBjb3JlLndvcmt0cmVlCisgICBmb3IgdGhlIHN1Ym1vZHVsZSBpcyBub3Qgc2V0IGNvcnJlY3RseSB0byBwcmV2ZW50IHNwcmVhZGluZyBkYW1hZ2UuCisKKyAqIFRlc3Qgc3VpdGUgaGFzIGJlZW4gYWRqdXN0ZWQgdG8gcnVuIG9uIEF6dXJlIFBpcGVsaW5lLgorCisgKiBSdW5uaW5nICJEb2N1bWVudGF0aW9uL2RvYy1kaWZmIHgiIGZyb20gYW55d2hlcmUgb3RoZXIgdGhhbiB0aGUKKyAgIHRvcC1sZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIGRpZCBub3Qgc2hvdyB0aGUgdXNhZ2Ugc3RyaW5nCisgICBjb3JyZWN0bHksIHdoaWNoIGhhcyBiZWVuIGZpeGVkLgorCisgKiBVc2Ugb2YgdGhlIHNwYXJzZSB0b29sIGdvdCBlYXNpZXIgdG8gY3VzdG9taXplIGZyb20gdGhlIGNvbW1hbmQKKyAgIGxpbmUgdG8gaGVscCBkZXZlbG9wZXJzLgorCisgKiBBIG5ldyB0YXJnZXQgImNvdmVyYWdlLXByb3ZlIiB0byBydW4gdGhlIGNvdmVyYWdlIHRlc3QgdW5kZXIKKyAgICJwcm92ZSIgaGFzIGJlZW4gYWRkZWQuCisKKyAqIEEgZmxha2V5ICJwNCIgdGVzdCBoYXMgYmVlbiByZW1vdmVkLgorCisgKiBUaGUgY29kZSBhbmQgdGVzdHMgYXNzdW1lIHRoYXQgdGhlIHN5c3RlbSBzdXBwbGllZCBpY29udigpIHdvdWxkCisgICBhbHdheXMgdXNlIEJPTSBpbiBpdHMgb3V0cHV0IHdoZW4gYXNrZWQgdG8gZW5jb2RlIHRvIFVURi0xNiAob3IKKyAgIFVURi0zMiksIGJ1dCBhcHBhcmVudGx5IHNvbWUgaW1wbGVtZW50YXRpb25zIG91dHB1dCBiaWctZW5kaWFuCisgICB3aXRob3V0IEJPTS4gIEEgY29tcGlsZS10aW1lIGtub2IgaGFzIGJlZW4gYWRkZWQgdG8gaGVscCBzdWNoCisgICBzeXN0ZW1zIChlLmcuIE5vblN0b3ApIHRvIGFkZCBCT00gdG8gdGhlIG91dHB1dCB0byBpbmNyZWFzZQorICAgcG9ydGFiaWxpdHkuCisKKworRml4ZXMgc2luY2UgdjIuMjAKKy0tLS0tLS0tLS0tLS0tLS0tCisKKyAqIFVwZGF0ZXMgZm9yIGNvcm5lciBjYXNlcyBpbiBtZXJnZS1yZWN1cnNpdmUuCisgICAobWVyZ2UgY2M0Y2IwOTAyYyBlbi9tZXJnZS1wYXRoLWNvbGxpc2lvbiBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgY2hlY2tvdXQgZnJvdHoiICh3aXRob3V0IGFueSBkb3VibGUtZGFzaCkgYXZvaWRzIGFtYmlndWl0eSBieQorICAgbWFraW5nIHN1cmUgJ2Zyb3R6JyBjYW5ub3QgYmUgaW50ZXJwcmV0ZWQgYXMgYSByZXZpc2lvbiBhbmQgYXMgYQorICAgcGF0aCBhdCB0aGUgc2FtZSB0aW1lLiAgVGhpcyBzYWZldHkgaGFzIGJlZW4gdXBkYXRlZCB0byBjaGVjayBhbHNvCisgICBhIHVuaXF1ZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICdmcm90eicgaW4gYSByZW1vdGUsIHdoZW4gZHdpbW1pbmcKKyAgIHRvIGNyZWF0ZSBhIGxvY2FsIGJyYW5jaCAnZnJvdHonIG91dCBvZiBhIHJlbW90ZS10cmFja2luZyBicmFuY2gKKyAgICdmcm90eicgZnJvbSBhIHJlbW90ZS4KKyAgIChtZXJnZSBiZTQ5MDhmMTAzIG5kL2NoZWNrb3V0LWR3aW0tZml4IGxhdGVyIHRvIG1haW50KS4KKworICogUmVmc3BlY3MgY29uZmlndXJlZCB3aXRoICJnaXQgLWMgdmFyPXZhbCBjbG9uZSIgZGlkIG5vdCBwcm9wYWdhdGUKKyAgIHRvIHRoZSByZXN1bHRpbmcgcmVwb3NpdG9yeSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIDdlYWU0YTNhYzQgc2cvY2xvbmUtaW5pdGlhbC1mZXRjaC1jb25maWd1cmF0aW9uIGxhdGVyIHRvIG1haW50KS4KKworICogQSBwcm9wZXJseSBjb25maWd1cmVkIHVzZXJuYW1lL2VtYWlsIGlzIHJlcXVpcmVkIHVuZGVyCisgICB1c2VyLnVzZUNvbmZpZ09ubHkgaW4gb3JkZXIgdG8gY3JlYXRlIGNvbW1pdHM7IG5vdyAiZ2l0IHN0YXNoIgorICAgKGV2ZW4gdGhvdWdoIGl0IGNyZWF0ZXMgY29tbWl0IG9iamVjdHMgdG8gcmVwcmVzZW50IHN0YXNoIGVudHJpZXMpCisgICBjb21tYW5kIGlzIGV4ZW1wdCBmcm9tIHRoZSByZXF1aXJlbWVudC4KKyAgIChtZXJnZSAzYmMyMTExZmMyIHNkL3N0YXNoLXdvLXVzZXItbmFtZSBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBodHRwLWJhY2tlbmQgQ0dJIHByb2Nlc3MgZGlkIG5vdCBjb3JyZWN0bHkgY2xlYW4gdXAgdGhlIGNoaWxkCisgICBwcm9jZXNzZXMgaXQgc3Bhd25zIHRvIHJ1biB1cGxvYWQtcGFjayBldGMuIHdoZW4gaXQgZGllcyBpdHNlbGYsCisgICB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgMDI4MThhOThkNyBtay9odHRwLWJhY2tlbmQta2lsbC1jaGlsZHJlbi1iZWZvcmUtZXhpdCBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgcmV2LWxpc3QgLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMiIGhhZCB0byB0YWtlIGFuIG9iamVjdAorICAgdGhhdCBkb2VzIG5vdCBleGlzdCBsb2NhbGx5IChhbmQgaXMgbGF6aWx5IGF2YWlsYWJsZSkgZnJvbSB0aGUKKyAgIGNvbW1hbmQgbGluZSB3aXRob3V0IGJhcmZpbmcsIGJ1dCB0aGUgY29kZSBkZXJlZmVyZW5jZWQgTlVMTC4KKyAgIChtZXJnZSA0Y2Y2Nzg2OWIyIG1kL2xpc3QtbGF6eS1vYmplY3RzLWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSB0cmF2ZXJzYWwgb3ZlciB0cmVlIG9iamVjdHMgaGFzIGxlYXJuZWQgdG8gaG9ub3IKKyAgICI6KGF0dHI6bGFiZWwpIiBwYXRoc3BlYyBtYXRjaCwgd2hpY2ggaGFzIGJlZW4gaW1wbGVtZW50ZWQgb25seSBmb3IKKyAgIGVudW1lcmF0aW5nIHBhdGhzIG9uIHRoZSBmaWxlc3lzdGVtLgorICAgKG1lcmdlIDVhMGI5N2IzNGMgbmQvYXR0ci1wYXRoc3BlYy1pbi10cmVlLXdhbGsgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBCU0QgcG9ydCB1cGRhdGVzLgorICAgKG1lcmdlIDRlM2VjYmQ0MzkgY2Ivb3BlbmJzZC1hbGxvd3MtcmVhZGluZy1kaXJlY3RvcnkgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGI2YmRjMmEwZjUgY2IvdDUwMDQtZW1wdHktdGFyLWFyY2hpdmUtZml4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA4MmNiYzhjZGUyIGNiL3Rlc3QtbGludC1jcC1hIGxhdGVyIHRvIG1haW50KS4KKworICogTGluZXMgdGhhdCBiZWdpbiB3aXRoIGEgY2VydGFpbiBrZXl3b3JkIHRoYXQgY29tZSBvdmVyIHRoZSB3aXJlLCBhcworICAgd2VsbCBhcyBsaW5lcyB0aGF0IGNvbnNpc3Qgb25seSBvZiBvbmUgb2YgdGhlc2Uga2V5d29yZHMsIG91Z2h0IHRvCisgICBiZSBwYWludGVkIGluIGNvbG9yIGZvciBlYXNpZXIgZXllYmFsbGluZywgYnV0IHRoZSBsYXR0ZXIgd2FzCisgICBicm9rZW4gZXZlciBzaW5jZSB0aGUgZmVhdHVyZSB3YXMgaW50cm9kdWNlZCBpbiAyLjE5LCB3aGljaCBoYXMKKyAgIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIDFmNjcyOTA0NTAgaG4vaGlnaGxpZ2h0LXNpZGViYW5kLWtleXdvcmRzIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBsb2cgLUc8cmVnZXg+IiBsb29rZWQgZm9yIGEgaHVuayBpbiB0aGUgImdpdCBsb2cgLXAiIHBhdGNoCisgICBvdXRwdXQgdGhhdCBjb250YWluZWQgYSBzdHJpbmcgdGhhdCBtYXRjaGVzIHRoZSBnaXZlbiBwYXR0ZXJuLgorICAgT3B0aW1pemUgdGhpcyBjb2RlIHRvIGlnbm9yZSBiaW5hcnkgZmlsZXMsIHdoaWNoIGJ5IGRlZmF1bHQgd2lsbAorICAgbm90IHNob3cgYW55IGh1bmsgdGhhdCB3b3VsZCBtYXRjaCBhbnkgcGF0dGVybiAodW5sZXNzIHRleHRjb252IG9yCisgICB0aGUgLS10ZXh0IG9wdGlvbiBpcyBpbiBlZmZlY3QsIHRoYXQgaXMpLgorICAgKG1lcmdlIGUwZTdjYjgwODAgdGIvbG9nLUctYmluYXJ5IGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBzdWJtb2R1bGUgdXBkYXRlIiBvdWdodCB0byB1c2UgYSBzaW5nbGUgam9iIHVubGVzcyBhc2tlZCwgYnV0CisgICBieSBtaXN0YWtlIHVzZWQgbXVsdGlwbGUgam9icywgd2hpY2ggaGFzIGJlZW4gZml4ZWQuCisgICAobWVyZ2UgZTNhOWQxYWNhOSBzYi9zdWJtb2R1bGUtZmV0Y2hqb2JzLWRlZmF1bHQtdG8tb25lIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBzdHJpcHNwYWNlIiBzaG91bGQgYmUgdXNhYmxlIG91dHNpZGUgYSBnaXQgcmVwb3NpdG9yeSwgYnV0CisgICB1bmRlciB0aGUgIi1zIiBvciAiLWMiIG1vZGUsIGl0IGRpZG4ndC4KKyAgIChtZXJnZSA5NTdkYTc1ODAyIGpuL3N0cmlwc3BhY2Utd28tcmVwb3NpdG9yeSBsYXRlciB0byBtYWludCkuCisKKyAqIFNvbWUgb2YgdGhlIGRvY3VtZW50YXRpb24gcGFnZXMgZm9ybWF0dGVkIGluY29ycmVjdGx5IHdpdGgKKyAgIEFzY2lpZG9jdG9yLCB3aGljaCBoYXZlIGJlZW4gZml4ZWQuCisgICAobWVyZ2UgYjYyZWIxZDJmNCBtYS9hc2NpaWRvY3RvciBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBjb3JlLndvcmt0cmVlIHNldHRpbmcgaW4gYSBzdWJtb2R1bGUgcmVwb3NpdG9yeSBzaG91bGQgbm90IGJlCisgICBwb2ludGluZyBhdCBhIGRpcmVjdG9yeSB3aGVuIHRoZSBzdWJtb2R1bGUgbG9zZXMgaXRzIHdvcmtpbmcgdHJlZQorICAgKGUuZy4gZ2V0dGluZyBkZWluaXQnZWQpLCBidXQgdGhlIGNvZGUgZGlkIG5vdCBwcm9wZXJseSBtYWludGFpbgorICAgdGhpcyBpbnZhcmlhbnQuCisKKyAqIFdpdGggenNoLCAiZ2l0IGNtZCBwYXRoPFRBQj4iIHdhcyBjb21wbGV0ZWQgdG8gImdpdCBjbWQgcGF0aCBuYW1lIgorICAgd2hlbiB0aGUgY29tcGxldGVkIHBhdGggaGFzIGEgc3BlY2lhbCBjaGFyYWN0ZXIgbGlrZSBTUCBpbiBpdCwKKyAgIHdpdGhvdXQgYW55IGF0dGVtcHQgdG8ga2VlcCAicGF0aCBuYW1lIiBhIHNpbmdsZSBmaWxlbmFtZS4gIFRoaXMKKyAgIGhhcyBiZWVuIGZpeGVkIHRvIGNvbXBsZXRlIGl0IHRvICJnaXQgY21kIHBhdGhcIG5hbWUiIGp1c3QgbGlrZQorICAgQmFzaCBjb21wbGV0aW9uIGRvZXMuCisKKyAqIFRoZSB0ZXN0IHN1aXRlIHRyaWVkIHRvIHNlZSBpZiBpdCBpcyBydW4gdW5kZXIgYmFzaCwgYnV0IHRoZSBjaGVjaworICAgaXRzZWxmIGZhaWxlZCB1bmRlciBzb21lIG90aGVyIGltcGxlbWVudGF0aW9ucyBvZiBzaGVsbCAobm90YWJseQorICAgdW5kZXIgTmV0QlNEKS4gIFRoaXMgaGFzIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIDU0ZWE3MmYwOWMgc2cvdGVzdC1iYXNoLXZlcnNpb24tZml4IGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBnYyIgYW5kICJnaXQgcmVwYWNrIiBkaWQgbm90IGNsb3NlIHRoZSBvcGVuIHBhY2tmaWxlcyB0aGF0CisgICB0aGV5IGZvdW5kIHVubmVlZGVkIGJlZm9yZSByZW1vdmluZyB0aGVtLCB3aGljaCBkaWRuJ3Qgd29yayBvbiBhCisgICBwbGF0Zm9ybSBpbmNhcGFibGUgb2YgcmVtb3ZpbmcgYW4gb3BlbiBmaWxlLiAgVGhpcyBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorICAgKG1lcmdlIDViZGVjZTBkNzAganMvZ2MtcmVwYWNrLWNsb3NlLWJlZm9yZS1yZW1vdmUgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBUaGUgY29kZSB0byBkcml2ZSBHSVRfRVhURVJOQUxfRElGRiBjb21tYW5kIHJlbGllZCBvbiB0aGUgc3RyaW5nCisgICByZXR1cm5lZCBmcm9tIGdldGVudigpIHRvIGJlIG5vbi12b2xhdGlsZSwgd2hpY2ggaXMgbm90IHRydWUsIHRoYXQKKyAgIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSA2Nzc2YTg0ZGFlIGtnL2V4dGVybmFsLWRpZmYtc2F2ZS1lbnYgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBUaGVyZSB3ZXJlIG1hbnkgcGxhY2VzIHRoZSBjb2RlIHJlbGllZCBvbiB0aGUgc3RyaW5nIHJldHVybmVkIGZyb20KKyAgIGdldGVudigpIHRvIGJlIG5vbi12b2xhdGlsZSwgd2hpY2ggaXMgbm90IHRydWUsIHRoYXQgaGF2ZSBiZWVuCisgICBjb3JyZWN0ZWQuCisgICAobWVyZ2UgMGRhMGU5MjY4YiBqay9zYXZlLWdldGVudi1yZXN1bHQgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBUaGUgdjIgdXBsb2FkLXBhY2sgcHJvdG9jb2wgaW1wbGVtZW50YXRpb24gZmFpbGVkIHRvIGhvbm9yCisgICBoaWRkZW4tcmVmIGNvbmZpZ3VyYXRpb24sIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSBlMjBiNDE5MmEzIGprL3Byb3RvLXYyLWhpZGRlbi1yZWZzLWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgZmV0Y2ggLS1yZWN1cnNlLXN1Ym1vZHVsZXMiIG1heSBub3QgZmV0Y2ggdGhlIG5lY2Vzc2FyeSBjb21taXQKKyAgIHRoYXQgaXMgYm91bmQgdG8gdGhlIHN1cGVycHJvamVjdCwgd2hpY2ggaXMgZ2V0dGluZyBjb3JyZWN0ZWQuCisgICAobWVyZ2UgYmU3NmMyMTI4MiBzYi9zdWJtb2R1bGUtcmVjdXJzaXZlLWZldGNoLWdldHMtdGhlLXRpcCBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgcmViYXNlIiBpbnRlcm5hbGx5IHJ1bnMgImNoZWNrb3V0IiB0byBzd2l0Y2ggYmV0d2VlbiBicmFuY2hlcywKKyAgIGFuZCB0aGUgY29tbWFuZCB1c2VkIHRvIGNhbGwgdGhlIHBvc3QtY2hlY2tvdXQgaG9vaywgYnV0IHRoZQorICAgcmVpbXBsZW1lbnRhdGlvbiBzdG9wcGVkIGRvaW5nIHNvLCB3aGljaCBpcyBnZXR0aW5nIGZpeGVkLgorCisgKiAiZ2l0IGFkZCAtZSIgZ290IGNvbmZ1c2VkIHdoZW4gdGhlIGNoYW5nZSBpdCB3YW50cyB0byBsZXQgdGhlIHVzZXIKKyAgIGVkaXQgaXMgc21hbGxlciB0aGFuIHRoZSBwcmV2aW91cyBjaGFuZ2UgdGhhdCB3YXMgbGVmdCBvdmVyIGluIGEKKyAgIHRlbXBvcmFyeSBmaWxlLgorICAgKG1lcmdlIGZhNmYyMjVlMDEganMvYWRkLWUtY2xlYXItcGF0Y2gtYmVmb3JlLXN0YXRpbmcgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZ2l0IHA0IiBmYWlsZWQgdG8gdXBkYXRlIGEgc2hlbHZlZCBjaGFuZ2Ugd2hlbiB0aGVyZSB3ZXJlIG1vdmVkCisgICBmaWxlcywgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIDdhMTA5NDZhYjkgbGQvZ2l0LXA0LXNoZWx2ZS11cGRhdGUtZml4IGxhdGVyIHRvIG1haW50KS4KKworICogVGhlIGNvZGVwYXRoIHRvIHJlYWQgZnJvbSB0aGUgY29tbWl0LWdyYXBoIGZpbGUgYXR0ZW1wdGVkIHRvIHJlYWQKKyAgIHBhc3QgdGhlIGVuZCBvZiBpdCB3aGVuIHRoZSBmaWxlJ3MgdGFibGUtb2YtY29udGVudHMgd2FzIGNvcnJ1cHQuCisKKyAqIFRoZSBjb21wYXQvb2JzdGFjayBjb2RlIGhhZCBjYXN0cyB0aGF0IC1XY2FzdC1mdW5jdGlvbi10eXBlCisgICBjb21waWxhdGlvbiBvcHRpb24gZm91bmQgcXVlc3Rpb25hYmxlLgorICAgKG1lcmdlIDc2NDQ3M2QyNTcgc2cvb2JzdGFjay1jYXN0LWZ1bmN0aW9uLXR5cGUtZml4IGxhdGVyIHRvIG1haW50KS4KKworICogQW4gb2J2aW91cyB0eXBvIGluIGFuIGFzc2VydGlvbiBlcnJvciBtZXNzYWdlIGhhcyBiZWVuIGZpeGVkLgorICAgKG1lcmdlIDNjMjdlMmUwNTkgY2MvdGVzdC1yZWYtc3RvcmUtdHlwb2ZpeCBsYXRlciB0byBtYWludCkuCisKKyAqIEluIEdpdCBmb3IgV2luZG93cywgImdpdCBjbG9uZSBcXHNlcnZlclxzaGFyZVxwYXRoIiBldGMuIHRoYXQgdXNlcworICAgVU5DIHBhdGhzIGZyb20gY29tbWFuZCBsaW5lIGhhZCBiYWQgaW50ZXJhY3Rpb24gd2l0aCBpdHMgc2hlbGwKKyAgIGVtdWxhdGlvbi4KKworICogImdpdCBhZGQgLS1pZ25vcmUtZXJyb3JzIiBkaWQgbm90IHdvcmsgYXMgYWR2ZXJ0aXNlZCBhbmQgaW5zdGVhZAorICAgd29ya2VkIGFzIGFuIHVuaW50ZW5kZWQgc3lub255bSBmb3IgImdpdCBhZGQgLS1yZW5vcm1hbGl6ZSIsIHdoaWNoCisgICBoYXMgYmVlbiBmaXhlZC4KKyAgIChtZXJnZSBlMmMyYTM3NTQ1IGprL2FkZC1pZ25vcmUtZXJyb3JzLWJpdC1hc3NpZ25tZW50LWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqIE9uIGEgY2FzZS1pbnNlbnNpdGl2ZSBmaWxlc3lzdGVtLCB3ZSBmYWlsZWQgdG8gY29tcGFyZSB0aGUgcGFydCBvZgorICAgdGhlIHBhdGggdGhhdCBpcyBhYm92ZSB0aGUgd29ya3RyZWUgZGlyZWN0b3J5IGluIGFuIGFic29sdXRlCisgICBwYXRobmFtZSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBBc2tpbmcgImdpdCBjaGVjay1hdHRyIiBhYm91dCBhIG1hY3JvIChlLmcuICJiaW5hcnkiKSBvbiBhIHNwZWNpZmljCisgICBwYXRoIGRpZCBub3Qgd29yayBjb3JyZWN0bHksIGV2ZW4gdGhvdWdoICJnaXQgY2hlY2stYXR0ciAtYSIgbGlzdGVkCisgICBzdWNoIGEgbWFjcm8gY29ycmVjdGx5LiAgVGhpcyBoYXMgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgN2I5NTg0OWJlNCBqay9hdHRyLW1hY3JvLWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgcGFjay1vYmplY3RzIiBpbmNvcnJlY3RseSB1c2VkIHVuaW5pdGlhbGl6ZWQgbXV0ZXgsIHdoaWNoIGhhcworICAgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgZWRiNjczY2YxMCBwaC9wYWNrLW9iamVjdHMtbXV0ZXgtZml4IGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBjaGVja291dCAtYiA8bmV3PiBbSEVBRF0iIHRvIGNyZWF0ZSBhIG5ldyBicmFuY2ggZnJvbSB0aGUKKyAgIGN1cnJlbnQgY29tbWl0IGFuZCBjaGVjayBpdCBvdXQgb3VnaHQgdG8gYmUgYSBuby1vcCBpbiB0aGUgaW5kZXgKKyAgIGFuZCB0aGUgd29ya2luZyB0cmVlIGluIG5vcm1hbCBjYXNlcywgYnV0IHRoZXJlIGFyZSBjb3JuZXIgY2FzZXMKKyAgIHRoYXQgZG8gcmVxdWlyZSB1cGRhdGVzIHRvIHRoZSBpbmRleCBhbmQgdGhlIHdvcmtpbmcgdHJlZS4gIFJ1bm5pbmcKKyAgIGl0IGltbWVkaWF0ZWx5IGFmdGVyICJnaXQgY2xvbmUgLS1uby1jaGVja291dCIgaXMgb25lIG9mIHRoZXNlCisgICBjYXNlcyB0aGF0IGFuIGVhcmxpZXIgb3B0aW1pemF0aW9uIGtpY2tlZCBpbiBpbmNvcnJlY3RseSwgd2hpY2ggaGFzCisgICBiZWVuIGZpeGVkLgorICAgKG1lcmdlIDg0MjRiZmQ0NWIgYnAvY2hlY2tvdXQtbmV3LWJyYW5jaC1vcHRpbSBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgZGlmZiAtLWNvbG9yLW1vdmVkIC0tY2MgLS1zdGF0IC1wIiBkaWQgbm90IHdvcmsgd2VsbCBkdWUgdG8KKyAgIGZ1bm55IGludGVyYWN0aW9uIGJldHdlZW4gYSBidWcgaW4gY29sb3ItbW92ZWQgYW5kIHRoZSByZXN0LCB3aGljaAorICAgaGFzIGJlZW4gZml4ZWQuCisgICAobWVyZ2UgZGFjMDNiNTUxOCBqay9kaWZmLWNjLXN0YXQtZml4ZXMgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBXaGVuIEdJVF9TRVFVRU5DRV9FRElUT1IgaXMgc2V0LCB0aGUgY29tbWFuZCB3YXMgaW5jb3JyZWN0bHkKKyAgIHN0YXJ0ZWQgd2hlbiBtb2RlcyBvZiAiZ2l0IHJlYmFzZSIgdGhhdCBpbXBsaWNpdGx5IHVzZXMgdGhlCisgICBtYWNoaW5lcnkgZm9yIHRoZSBpbnRlcmFjdGl2ZSByZWJhc2UgYXJlIHJ1biwgd2hpY2ggaGFzIGJlZW4KKyAgIGNvcnJlY3RlZC4KKyAgIChtZXJnZSA4OTFkNGEwMzEzIHB3L25vLWVkaXRvci1pbi1yZWJhc2UtaS1pbXBsaWNpdCBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBjb21taXQtZ3JhcGggZmFjaWxpdHkgZGlkIG5vdCB3b3JrIHdoZW4gaW4tY29yZSBvYmplY3RzIHRoYXQKKyAgIGFyZSBwcm9tb3RlZCBmcm9tIHVua25vd24gdHlwZSB0byBjb21taXQgKGUuZy4gYSBjb21taXQgdGhhdCBpcworICAgYWNjZXNzZWQgdmlhIGEgdGFnIHRoYXQgcmVmZXJzIHRvIGl0KSB3ZXJlIGludm9sdmVkLCB3aGljaCBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorICAgKG1lcmdlIDQ0NjhkNDQzNWMgc2cvb2JqZWN0LWFzLXR5cGUtY29tbWl0LWdyYXBoLWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgZmV0Y2giIG91dHB1dCBjbGVhbnVwLgorICAgKG1lcmdlIGRjNDBiMjRkZjQgbmQvZmV0Y2gtY29tcGFjdC11cGRhdGUgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZ2l0IGNhdC1maWxlIC0tYmF0Y2giIHJlcG9ydGVkIGEgZGFuZ2xpbmcgc3ltYm9saWMgbGluayBieQorICAgbWlzdGFrZSwgd2hlbiBpdCB3YW50ZWQgdG8gcmVwb3J0IHRoYXQgYSBnaXZlbiBuYW1lIGlzIGFtYmlndW91cy4KKworICogRG9jdW1lbnRhdGlvbiBhcm91bmQgY29yZS5jcmxmIGhhcyBiZWVuIHVwZGF0ZWQuCisgICAobWVyZ2UgYzk0NDZmMDUwNCBqay9hdXRvY3JsZi1vdmVycmlkZXMtZW9sLWRvYyBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBkb2N1bWVudGF0aW9uIG9mICJnaXQgY29tbWl0LXRyZWUiIHNhaWQgdGhhdCB0aGUgY29tbWFuZAorICAgdW5kZXJzdGFuZHMgIi0tZ3BnLXNpZ24iIGluIGFkZGl0aW9uIHRvICItUyIsIGJ1dCB0aGUgY29tbWFuZCBsaW5lCisgICBwYXJzZXIgZGlkIG5vdCBrbm93IGFib3V0IHRoZSBsb25naGFuZCwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiAiZ2l0IHJlYmFzZSAteCAkY21kIiBkaWQgbm90IHJlamVjdCBtdWx0aS1saW5lIGNvbW1hbmQsIGV2ZW4gdGhvdWdoCisgICB0aGUgY29tbWFuZCBpcyBpbmNhcGFibGUgb2YgaGFuZGxpbmcgc3VjaCBhIGNvbW1hbmQuICBJdCBub3cgaXMKKyAgIHJlamVjdGVkIHVwZnJvbnQuCisgICAobWVyZ2UgYzc2MmFhZGExYSBwdy9yZWJhc2UteC1zYW5pdHktY2hlY2sgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBPdXRwdXQgZnJvbSAiZ2l0IGhlbHAiIHdhcyBub3QgY29ycmVjdGx5IGFsaWduZWQsIHdoaWNoIGhhcyBiZWVuCisgICBmaXhlZC4KKyAgIChtZXJnZSA2MTk1YTc2ZGE0IG5kL2hlbHAtYWxpZ24tY29tbWFuZC1kZXNjIGxhdGVyIHRvIG1haW50KS4KKworICogVGhlICJnaXQgc3VibW9kdWxlIHN1bW1hcnkiIHN1YmNvbW1hbmQgc2hvd2VkIHNob3J0ZW5lZCBjb21taXQKKyAgIG9iamVjdCBuYW1lcyBieSBtZWNoYW5pY2FsbHkgdHJ1bmNhdGluZyB0aGVtIGF0IDctaGV4ZGlnaXQsIHdoaWNoCisgICBoYXMgYmVlbiBpbXByb3ZlZCB0byBsZXQgInJldi1wYXJzZSAtLXNob3J0IiBzY2FsZSB0aGUgbGVuZ3RoIG9mCisgICB0aGUgYWJicmV2aWF0aW9uIHdpdGggdGhlIHNpemUgb2YgdGhlIHJlcG9zaXRvcnkuCisgICAobWVyZ2UgMDU4NmE0MzhmNiBzaC9zdWJtb2R1bGUtc3VtbWFyeS1hYmJyZXYtZml4IGxhdGVyIHRvIG1haW50KS4KKworICogVGhlIHdheSB0aGUgT1NYIGJ1aWxkIGpvYnMgdXBkYXRlcyBpdHMgYnVpbGQgZW52aXJvbm1lbnQgdXNlZCB0aGUKKyAgICItLXF1aWV0IiBvcHRpb24gdG8gImJyZXcgdXBkYXRlIiBjb21tYW5kLCBidXQgaXQgd2Fzbid0IGFsbCB0aGF0CisgICBxdWlldCB0byBiZSB1c2VmdWwuICBUaGUgdXNlIG9mIHRoZSBvcHRpb24gaGFzIGJlZW4gcmVwbGFjZWQgd2l0aAorICAgYW4gZXhwbGljaXQgcmVkaXJlY3Rpb24gdG8gdGhlIC9kZXYvbnVsbCAod2hpY2ggaW5jaWRlbnRhbGx5IHdvdWxkCisgICBoYXZlIHdvcmtlZCBhcm91bmQgYSBicmVha2FnZSBieSByZWNlbnQgdXBkYXRlcyB0byBob21lYnJldywgd2hpY2gKKyAgIGhhcyBmaXhlZCBpdHNlbGYgYWxyZWFkeSkuCisgICAobWVyZ2UgYTFjY2FlZGQ2MiBzZy90cmF2aXMtb3N4LWJyZXctYnJlYWthZ2Utd29ya2Fyb3VuZCBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgLS13b3JrLXRyZWU9JHRoZXJlIC0tZ2l0LWRpcj0kaGVyZSBkZXNjcmliZSAtLWRpcnR5IiBkaWQgbm90CisgICB3b3JrIGNvcnJlY3RseSBhcyBpdCBkaWQgbm90IHBheSBhdHRlbnRpb24gdG8gdGhlIGxvY2F0aW9uIG9mIHRoZQorICAgd29ya3RyZWUgc3BlY2lmaWVkIGJ5IHRoZSB1c2VyIGJ5IG1pc3Rha2UsIHdoaWNoIGhhcyBiZWVuCisgICBjb3JyZWN0ZWQuCisgICAobWVyZ2UgYzgwMTE3MGIwYyBzcy9kZXNjcmliZS1kaXJ0eS1pbi10aGUtcmlnaHQtZGlyZWN0b3J5IGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBmZXRjaCIgb3ZlciBwcm90b2NvbCB2MiB0aGF0IG5lZWRzIHRvIG1ha2UgYSBzZWNvbmQgY29ubmVjdGlvbgorICAgdG8gYmFja2ZpbGwgdGFncyBkaWQgbm90IGNsZWFyIGEgdmFyaWFibGUgdGhhdCBob2xkcyBzaGFsbG93CisgICByZXBvc2l0b3J5IGluZm9ybWF0aW9uIGNvcnJlY3RseSwgbGVhZGluZyB0byBhbiBhY2Nlc3Mgb2YgZnJlZWQKKyAgIHBpZWNlIG9mIG1lbW9yeS4KKworICogU29tZSBlcnJvcnMgZnJvbSB0aGUgb3RoZXIgc2lkZSBjb21pbmcgb3ZlciBzbWFydCBIVFRQIHRyYW5zcG9ydAorICAgd2VyZSBub3Qgbm90aWNlZCwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBDb2RlIGNsZWFudXAsIGRvY2ZpeCwgYnVpbGQgZml4LCBldGMuCisgICAobWVyZ2UgODliYTlhNzlhZSBoYi90MDA2MS1kb3QtaW4tcGF0aC1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGQxNzNlNzk5ZWEgc2IvZGlmZi1jb2xvci1tb3ZlZC1jb25maWctb3B0aW9uLWZpeHVwIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBhOGY1YTU5MDY3IGVuL2RpcmVjdG9yeS1yZW5hbWVzLW5vdGhhbmtzLWRvYy11cGRhdGUgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGVjMzZjNDJhNjMgbmQvaW5kZW50YXRpb24tZml4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBmMTE2ZWUyMWNkIGRvL2dpdHdlYi1zdHJpY3QtZXhwb3J0LWNvbmYtZG9jIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSAxMTJlYTQyNjYzIGZkL2dpdHdlYi1zbmFwc2hvdC1jb25mLWRvYy1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDFjYWRhZDZmNjUgdGIvdXNlLWNvbW1vbi13aW4zMi1wYXRoZnVuY3Mtb24tY3lnd2luIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA1N2U5ZGNhYTY1IGttL3JlYmFzZS1kb2MtdHlwb2ZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYjhiNGNiMjdlNiBkcy9nYy1kb2MtdHlwb2ZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgM2IzMzU3NjI2ZSBuZC9zdHlsZS1vcGVuaW5nLWJyYWNlIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBiNDU4M2Q1NTk1IGVzL2RvYy13b3JrdHJlZS1ndWVzc3JlbW90ZS1jb25maWcgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGNjZTk5Y2Q4YzYgZHMvY29tbWl0LWdyYXBoLWFzc2VydC1taXNzaW5nLXBhcmVudHMgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDA2NTA2MTQ5ODIgY3kvY29tcGxldGlvbi10eXBvZml4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA2ODgxOTI1ZWY1IHJzL3NoYTEtZmlsZS1jbG9zZS1tYXBwZWQtZmlsZS1vbi1lcnJvciBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYmQ4ZDZmMGRlZiBlbi9zaG93LXJlZi1kb2MtZml4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSAxNzQ3MTI1ZTJjIGNjL3BhcnRpYWwtY2xvbmUtZG9jLXR5cG9maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGUwMTM3ODc1M2QgY2MvZmV0Y2gtZXJyb3ItbWVzc2FnZS1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDU0ZThjMTEyMTUgamsvcmVtb3RlLWluc3RlYWRvZi1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBkNjA5NjE1ZjQ4IGpzL3Rlc3QtZ2l0LWluc3RhbGxlZCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYmExNzA1MTdiZSBqYS9kb2Mtc3R5bGUtZml4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA4NmZiMWM0ZTc3IGttL2luaXQtZG9jLXR5cG9maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDVjZmQ0YTlkMTAgbmQvY29tbWl0LWRvYyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgOWZjZTE5YTQzMSBhYi9kaWZmLXRyZWUtZG9jLWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMmUyODVlNzgwMyB0ei9ncGctdGVzdC1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDU0MjdkZTk2MGIga2wvcHJldHR5LWRvYy1tYXJrdXAtZml4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSAzODE1ZjY0YjBkIGpzL21pbmd3LWhvc3QtY3B1IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA1ZmU4MTQzOGI1IHJqL3NlcXVlbmNlci1zaWduLW9mZi1oZWFkZXItc3RhdGljIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSAxOGE0ZjZiZTZiIG5kL2ZpbGVuby1tYXktYmUtbWFjcm8gbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDk5ZTlhYjU0YWIga2QvdDAwMjgtb2N0YWwtZGVsLWlzLTM3Ny1ub3QtNzc3IGxhdGVyIHRvIG1haW50KS4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yMS4xLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yMS4xLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNzU5NDE1Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjIxLjEudHh0CkBAIC0wLDAgKzEsMTIgQEAKK0dpdCB2Mi4yMS4xIFJlbGVhc2UgTm90ZXMKKz09PT09PT09PT09PT09PT09PT09PT09PT0KKworVGhpcyByZWxlYXNlIG1lcmdlcyB1cCB0aGUgZml4ZXMgdGhhdCBhcHBlYXIgaW4gdjIuMTQuNiwgdjIuMTUuNCwKK3YyLjE3LjMgYW5kIGluIHYyLjIwLjIsIGFkZHJlc3NpbmcgdGhlIHNlY3VyaXR5IGlzc3VlcyBDVkUtMjAxOS0xMzQ4LAorQ1ZFLTIwMTktMTM0OSwgQ1ZFLTIwMTktMTM1MCwgQ1ZFLTIwMTktMTM1MSwgQ1ZFLTIwMTktMTM1MiwKK0NWRS0yMDE5LTEzNTMsIENWRS0yMDE5LTEzNTQsIENWRS0yMDE5LTEzODcsIGFuZCBDVkUtMjAxOS0xOTYwNDsKK3NlZSB0aGUgcmVsZWFzZSBub3RlcyBmb3IgdGhvc2UgdmVyc2lvbnMgZm9yIGRldGFpbHMuCisKK0FkZGl0aW9uYWxseSwgdGhpcyB2ZXJzaW9uIGFsc28gaW5jbHVkZXMgYSBjb3VwbGUgb2YgZml4ZXMgZm9yIHRoZQorV2luZG93cy1zcGVjaWZpYyBxdW90aW5nIG9mIGNvbW1hbmQtbGluZSBhcmd1bWVudHMgd2hlbiBHaXQgZXhlY3V0ZXMKK2EgVW5peCBzaGVsbCBvbiBXaW5kb3dzLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjIyLjAudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjIyLjAudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkxZTZhZTkKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMjIuMC50eHQKQEAgLTAsMCArMSw1OTcgQEAKK0dpdCAyLjIyIFJlbGVhc2UgTm90ZXMKKz09PT09PT09PT09PT09PT09PT09PT0KKworVXBkYXRlcyBzaW5jZSB2Mi4yMQorLS0tLS0tLS0tLS0tLS0tLS0tLQorCitCYWNrd2FyZCBjb21wYXRpYmlsaXR5IG5vdGUKKworICogVGhlIGZpbHRlciBzcGVjaWZpY2F0aW9uICItLWZpbHRlcj1zcGFyc2U6cGF0aD08cGF0aD4iIHVzZWQgdG8KKyAgIGNyZWF0ZSBhIGxhenkvcGFydGlhbCBjbG9uZSBoYXMgYmVlbiByZW1vdmVkLiAgVXNpbmcgYSBibG9iIHRoYXQgaXMKKyAgIHBhcnQgb2YgdGhlIHByb2plY3QgYXMgc3BhcnNlIHNwZWNpZmljYXRpb24gaXMgc3RpbGwgc3VwcG9ydGVkIHdpdGgKKyAgIHRoZSAiLS1maWx0ZXI9c3BhcnNlOm9pZD08YmxvYj4iIG9wdGlvbi4KKworVUksIFdvcmtmbG93cyAmIEZlYXR1cmVzCisKKyAqICJnaXQgY2hlY2tvdXQgLS1uby1vdmVybGF5IiBjYW4gYmUgdXNlZCB0byB0cmlnZ2VyIGEgbmV3IG1vZGUgb2YKKyAgIGNoZWNraW5nIG91dCBwYXRocyBvdXQgb2YgdGhlIHRyZWUtaXNoLCB0aGF0IGFsbG93cyBwYXRocyB0aGF0CisgICBtYXRjaCB0aGUgcGF0aHNwZWMgdGhhdCBhcmUgaW4gdGhlIGN1cnJlbnQgaW5kZXggYW5kIHdvcmtpbmcgdHJlZQorICAgYW5kIGFyZSBub3QgaW4gdGhlIHRyZWUtaXNoLgorCisgKiBUaGUgJSh0cmFpbGVycykgZm9ybWF0dGVyIGluICJnaXQgbG9nIC0tZm9ybWF0PS4uLiIgIG5vdyBhbGxvd3MgdG8KKyAgIG9wdGlvbmFsbHkgcGljayB0cmFpbGVycyBzZWxlY3RpdmVseSBieSBrZXl3b3JkLCBzaG93IG9ubHkgdmFsdWVzLAorICAgZXRjLgorCisgKiBGb3VyIG5ldyBjb25maWd1cmF0aW9uIHZhcmlhYmxlcyB7YXV0aG9yLGNvbW1pdHRlcn0ue25hbWUsZW1haWx9CisgICBoYXZlIGJlZW4gaW50cm9kdWNlZCB0byBvdmVycmlkZSB1c2VyLntuYW1lLGVtYWlsfSBpbiBtb3JlIHNwZWNpZmljCisgICBjYXNlcy4KKworICogQ29tbWFuZC1saW5lIGNvbXBsZXRpb24gKGluIGNvbnRyaWIvKSBsZWFybmVkIHRvIHRhYi1jb21wbGV0ZSB0aGUKKyAgICJnaXQgc3VibW9kdWxlIGFic29yYmdpdGRpcnMiIHN1YmNvbW1hbmQuCisKKyAqICJnaXQgYnJhbmNoIiBsZWFybmVkIGEgbmV3IHN1YmNvbW1hbmQgIi0tc2hvdy1jdXJyZW50Ii4KKworICogT3V0cHV0IGZyb20gImRpZmYgLS1jYyIgZGlkIG5vdCBzaG93IHRoZSBvcmlnaW5hbCBwYXRocyB3aGVuIHRoZQorICAgbWVyZ2UgaW52b2x2ZWQgcmVuYW1lcy4gIEEgbmV3IG9wdGlvbiBhZGRzIHRoZSBwYXRocyBpbiB0aGUKKyAgIG9yaWdpbmFsIHRyZWVzIHRvIHRoZSBvdXRwdXQuCisKKyAqIFRoZSBjb21tYW5kIGxpbmUgY29tcGxldGlvbiAoaW4gY29udHJpYi8pIGhhcyBiZWVuIHRhdWdodCB0bworICAgY29tcGxldGUgbW9yZSBzdWJjb21tYW5kIHBhcmFtZXRlcnMuCisKKyAqIFRoZSBmaW5hbCByZXBvcnQgZnJvbSAiZ2l0IGJpc2VjdCIgdXNlZCB0byBzaG93IHRoZSBzdXNwZWN0ZWQKKyAgIGN1bHByaXQgdXNpbmcgYSByYXcgImRpZmYtdHJlZSIsIHdpdGggd2hpY2ggdGhlcmUgaXMgbm8gb3V0cHV0IGZvcgorICAgYSBtZXJnZSBjb21taXQuICBUaGlzIGhhcyBiZWVuIHVwZGF0ZWQgdG8gdXNlIGEgbW9yZSBtb2Rlcm4gYW5kCisgICBodW1hbiByZWFkYWJsZSBvdXRwdXQgdGhhdCBzdGlsbCBpcyBjb25jaXNlIGVub3VnaC4KKworICogImdpdCByZWJhc2UgLS1yZWJhc2UtbWVyZ2VzIiByZXBsYWNlcyBpdHMgb2xkICItLXByZXNlcnZlLW1lcmdlcyIKKyAgIG9wdGlvbjsgdGhlIGxhdHRlciBpcyBub3cgbWFya2VkIGFzIGRlcHJlY2F0ZWQuCisKKyAqIEVycm9yIG1lc3NhZ2UgZ2l2ZW4gd2hpbGUgY2xvbmluZyB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIGhhcworICAgYmVlbiB1cGRhdGVkLgorCisgKiBUaGUgY29tcGxldGlvbiBoZWxwZXIgY29kZSBub3cgcGF5cyBhdHRlbnRpb24gdG8gcmVwb3NpdG9yeS1sb2NhbAorICAgY29uZmlndXJhdGlvbiAod2hlbiBhdmFpbGFibGUpLCB3aGljaCBhbGxvd3MgLS1saXN0LWNtZHMgdG8gaG9ub3VyCisgICBhIHJlcG9zaXRvcnkgc3BlY2lmaWMgc2V0dGluZyBvZiBjb21wbGV0aW9uLmNvbW1hbmRzLCBmb3IgZXhhbXBsZS4KKworICogImdpdCBtZXJnZXRvb2wiIGxlYXJuZWQgdG8gb2ZmZXIgU3VibGltZSBNZXJnZSAoc21lcmdlKSBhcyBvbmUgb2YKKyAgIGl0cyBiYWNrZW5kcy4KKworICogQSBuZXcgaG9vayAicG9zdC1pbmRleC1jaGFuZ2UiIGlzIGNhbGxlZCB3aGVuIHRoZSBvbi1kaXNrIGluZGV4CisgICBmaWxlIGNoYW5nZXMsIHdoaWNoIGNhbiBoZWxwIGUuZy4gYSB2aXJ0dWFsaXplZCB3b3JraW5nIHRyZWUKKyAgIGltcGxlbWVudGF0aW9uLgorCisgKiAiZ2l0IGRpZmZ0b29sIiBjYW4gbm93IHJ1biBvdXRzaWRlIGEgcmVwb3NpdG9yeS4KKworICogImdpdCBjaGVja291dCAtbSA8b3RoZXI+IiB3YXMgYWJvdXQgY2FycnlpbmcgdGhlIGRpZmZlcmVuY2VzCisgICBiZXR3ZWVuIEhFQUQgYW5kIHRoZSB3b3JraW5nLXRyZWUgZmlsZXMgZm9yd2FyZCB3aGlsZSBjaGVja2luZyBvdXQKKyAgIGFub3RoZXIgYnJhbmNoLCBhbmQgaWdub3JlZCB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiBIRUFEIGFuZCB0aGUKKyAgIGluZGV4LiAgVGhlIGNvbW1hbmQgaGFzIGJlZW4gdGF1Z2h0IHRvIGFib3J0IHdoZW4gdGhlIGluZGV4IGFuZCB0aGUKKyAgIEhFQUQgYXJlIGRpZmZlcmVudC4KKworICogQSBwcm9ncmVzcyBpbmRpY2F0b3IgaGFzIGJlZW4gYWRkZWQgdG8gdGhlICJpbmRleC1wYWNrIiBzdGVwLCB3aGljaAorICAgb2Z0ZW4gbWFrZXMgdXNlcnMgd2FpdCBmb3IgY29tcGxldGlvbiBkdXJpbmcgImdpdCBjbG9uZSIuCisKKyAqICJnaXQgc3VibW9kdWxlIiBsZWFybnMgInNldC1icmFuY2giIHN1YmNvbW1hbmQgdGhhdCBhbGxvd3MgdGhlCisgICBzdWJtb2R1bGUuKi5icmFuY2ggc2V0dGluZ3MgdG8gYmUgbW9kaWZpZWQuCisKKyAqICJnaXQgbWVyZ2UtcmVjdXJzaXZlIiBiYWNrZW5kIHJlY2VudGx5IGxlYXJuZWQgYSBuZXcgaGV1cmlzdGljcyB0bworICAgaW5mZXIgZmlsZSBtb3ZlbWVudCBiYXNlZCBvbiBob3cgb3RoZXIgZmlsZXMgaW4gdGhlIHNhbWUgZGlyZWN0b3J5CisgICBtb3ZlZC4gIEFzIHRoaXMgaXMgaW5oZXJlbnRseSBsZXNzIHJvYnVzdCBoZXVyaXN0aWNzIHRoYW4gdGhlIG9uZQorICAgYmFzZWQgb24gdGhlIGNvbnRlbnQgc2ltaWxhcml0eSBvZiB0aGUgZmlsZSBpdHNlbGYgKHJhdGhlciB0aGFuCisgICBiYXNlZCBvbiB3aGF0IGl0cyBuZWlnaGJvdXJzIGFyZSBkb2luZyksIGl0IHNvbWV0aW1lcyBnaXZlcyBhbgorICAgb3V0Y29tZSB1bmV4cGVjdGVkIGJ5IHRoZSBlbmQgdXNlcnMuICBUaGlzIGhhcyBiZWVuIHRvbmVkIGRvd24gdG8KKyAgIGxlYXZlIHRoZSByZW5hbWVkIHBhdGhzIGluIGhpZ2hlci9jb25mbGljdGVkIHN0YWdlcyBpbiB0aGUgaW5kZXggc28KKyAgIHRoYXQgdGhlIHVzZXIgY2FuIGV4YW1pbmUgYW5kIGNvbmZpcm0gdGhlIHJlc3VsdC4KKworICogImdpdCB0YWciIGxlYXJuZWQgdG8gZ2l2ZSBhbiBhZHZpY2Ugc3VnZ2VzdGluZyBpdCBtaWdodCBiZSBhCisgICBtaXN0YWtlIHdoZW4gY3JlYXRpbmcgYW4gYW5ub3RhdGVkIG9yIHNpZ25lZCB0YWcgdGhhdCBwb2ludHMgYXQKKyAgIGFub3RoZXIgdGFnLgorCisgKiBUaGUgImdpdCBwYWNrLW9iamVjdHMiIGNvbW1hbmQgbGVhcm5lZCB0byByZXBvcnQgdGhlIG51bWJlciBvZgorICAgb2JqZWN0cyBpdCBwYWNrZWQgdmlhIHRoZSB0cmFjZTIgbWVjaGFuaXNtLgorCisgKiBUaGUgbGlzdCBvZiBjb25mbGljdGVkIHBhdGhzIHNob3duIGluIHRoZSBlZGl0b3Igd2hpbGUgY29uY2x1ZGluZyBhCisgICBjb25mbGljdGVkIG1lcmdlIHdhcyBzaG93biBhYm92ZSB0aGUgc2Npc3NvcnMgbGluZSB3aGVuIHRoZQorICAgY2xlYW4tdXAgbW9kZSBpcyBzZXQgdG8gInNjaXNzb3JzIiwgZXZlbiB0aG91Z2ggaXQgd2FzIGNvbW1lbnRlZAorICAgb3V0IGp1c3QgbGlrZSB0aGUgbGlzdCBvZiB1cGRhdGVkIHBhdGhzIGFuZCBvdGhlciBpbmZvcm1hdGlvbiB0bworICAgaGVscCB0aGUgdXNlciBleHBsYWluIHRoZSBtZXJnZSBiZXR0ZXIuCisKKyAqIFRoZSB0cmFjZTIgdHJhY2luZyBmYWNpbGl0eSBsZWFybmVkIHRvIGF1dG8tZ2VuZXJhdGUgYSBmaWxlbmFtZQorICAgd2hlbiB0b2xkIHRvIGxvZyB0byBhIGRpcmVjdG9yeS4KKworICogImdpdCBjbG9uZSIgbGVhcm5lZCBhIG5ldyAtLXNlcnZlci1vcHRpb24gb3B0aW9uIHdoZW4gdGFsa2luZyBvdmVyCisgICB0aGUgcHJvdG9jb2wgdmVyc2lvbiAyLgorCisgKiBUaGUgY29ubmVjdGl2aXR5IGJpdG1hcHMgYXJlIGNyZWF0ZWQgYnkgZGVmYXVsdCBpbiBiYXJlCisgICByZXBvc2l0b3JpZXMgbm93OyBhbHNvIHRoZSBwYXRobmFtZSBoYXNoLWNhY2hlIGlzIGNyZWF0ZWQgYnkKKyAgIGRlZmF1bHQgdG8gYXZvaWQgbWFraW5nIGNyYXBweSBkZWx0YXMgd2hlbiByZXBhY2tpbmcuCisKKyAqICJnaXQgYnJhbmNoIG5ldyBBLi4uQiIgYW5kICJnaXQgY2hlY2tvdXQgLWIgbmV3IEEuLi5CIiBoYXZlIGJlZW4KKyAgIHRhdWdodCB0aGF0IGluIHRoZWlyIGNvbnRleHRzLCB0aGUgbm90YXRpb24gQS4uLkIgbWVhbnMgInRoZSBtZXJnZQorICAgYmFzZSBiZXR3ZWVuIHRoZXNlIHR3byBjb21taXRzIiwganVzdCBsaWtlICJnaXQgY2hlY2tvdXQgQS4uLkIiCisgICBkZXRhY2hlcyBIRUFEIGF0IHRoYXQgY29tbWl0LgorCisgKiBVcGRhdGUgImdpdCBkaWZmdG9vbCIgYW5kICJnaXQgbWVyZ2V0b29sIiBzbyB0aGF0IHRoZSBjb21iaW5hdGlvbnMKKyAgIG9mIHtkaWZmLG1lcmdlfS57dG9vbCxndWl0b29sfSBjb25maWd1cmF0aW9uIHZhcmlhYmxlcyBzZXJ2ZSBhcworICAgZmFsbGJhY2sgc2V0dGluZ3Mgb2YgZWFjaCBvdGhlciBpbiBhIHNlbnNpYmxlIG9yZGVyLgorCisgKiBUaGUgIi0tZGlyLWRpZmYiIG1vZGUgb2YgImdpdCBkaWZmdG9vbCIgaXMgbm90IHVzZWZ1bCBpbiAiLS1uby1pbmRleCIKKyAgIG1vZGU7IHRoZXkgYXJlIG5vdyBleHBsaWNpdGx5IG1hcmtlZCBhcyBtdXR1YWxseSBpbmNvbXBhdGlibGUuCisKKworUGVyZm9ybWFuY2UsIEludGVybmFsIEltcGxlbWVudGF0aW9uLCBEZXZlbG9wbWVudCBTdXBwb3J0IGV0Yy4KKworICogVGhlIGRpZmYgbWFjaGluZXJ5LCBvbmUgb2YgdGhlIG9sZGVzdCBwYXJ0cyBvZiB0aGUgc3lzdGVtLCB3aGljaAorICAgbG9uZyBwcmVkYXRlcyB0aGUgcGFyc2Utb3B0aW9ucyBBUEksIHVzZXMgZmFpcmx5IGxvbmcgYW5kIGNvbXBsZXgKKyAgIGhhbmRjcmFmdGVkIG9wdGlvbiBwYXJzZXIuICBUaGlzIGlzIGJlaW5nIHJld3JpdHRlbiB0byB1c2UgdGhlCisgICBwYXJzZS1vcHRpb25zIEFQSS4KKworICogVGhlIGltcGxlbWVudGF0aW9uIG9mIHBhY2stcmVkdW5kYW50IGhhcyBiZWVuIHVwZGF0ZWQgZm9yCisgICBwZXJmb3JtYW5jZSBpbiBhIHJlcG9zaXRvcnkgd2l0aCBtYW55IHBhY2tmaWxlcy4KKworICogQSBtb3JlIHN0cnVjdHVyZWQgd2F5IHRvIG9idGFpbiBleGVjdXRpb24gdHJhY2UgaGFzIGJlZW4gYWRkZWQuCisKKyAqICJnaXQgcHJ1bmUiIGhhcyBiZWVuIHRhdWdodCB0byB0YWtlIGFkdmFudGFnZSBvZiByZWFjaGFiaWxpdHkKKyAgIGJpdG1hcCB3aGVuIGFibGUuCisKKyAqIFRoZSBjb21tYW5kIGxpbmUgcGFyc2VyIG9mICJnaXQgY29tbWl0LXRyZWUiIGhhcyBiZWVuIHJld3JpdHRlbiB0bworICAgdXNlIHRoZSBwYXJzZS1vcHRpb25zIEFQSS4KKworICogU3VnZ2VzdCBHaXRHaXRHYWRnZXQgaW5zdGVhZCBvZiBzdWJtaXRHaXQgYXMgYSB3YXkgdG8gc3VibWl0CisgICBwYXRjaGVzIGJhc2VkIG9uIEdpdEh1YiBQUiB0byB1cy4KKworICogVGhlIHRlc3QgZnJhbWV3b3JrIGhhcyBiZWVuIHVwZGF0ZWQgdG8gaGVscCBkZXZlbG9wZXJzIGJ5IG1ha2luZyBpdAorICAgZWFzaWVyIHRvIHJ1biBtb3N0IG9mIHRoZSB0ZXN0cyB1bmRlciBkaWZmZXJlbnQgdmVyc2lvbnMgb2YKKyAgIG92ZXItdGhlLXdpcmUgcHJvdG9jb2xzLgorCisgKiBEZXYgc3VwcG9ydCB1cGRhdGUgdG8gbWFrZSBpdCBlYXNpZXIgdG8gY29tcGFyZSB0d28gZm9ybWF0dGVkCisgICByZXN1bHRzIGZyb20gb3VyIGRvY3VtZW50YXRpb24uCisKKyAqIFRoZSBzY3JpcHRlZCAiZ2l0IHJlYmFzZSIgaW1wbGVtZW50YXRpb24gaGFzIGJlZW4gcmV0aXJlZC4KKworICogImdpdCBtdWx0aS1wYWNrLWluZGV4IHZlcmlmeSIgZGlkIG5vdCBzY2FsZSB3ZWxsIHdpdGggdGhlIG51bWJlciBvZgorICAgcGFja2ZpbGVzLCB3aGljaCBpcyBiZWluZyBpbXByb3ZlZC4KKworICogImdpdCBzdGFzaCIgaGFzIGJlZW4gcmV3cml0dGVuIGluIEMuCisKKyAqIFRoZSAiY2hlY2stZG9jcyIgTWFrZWZpbGUgdGFyZ2V0IHRvIHN1cHBvcnQgZGV2ZWxvcGVycyBoYXMgYmVlbgorICAgdXBkYXRlZC4KKworICogVGhlIHRlc3RzIGhhdmUgYmVlbiB1cGRhdGVkIG5vdCB0byByZWx5IG9uIHRoZSBhYmJyZXZpYXRlZCBvcHRpb24KKyAgIG5hbWVzIHRoZSBwYXJzZS1vcHRpb25zIEFQSSBvZmZlcnMsIHRvIHByb3RlY3QgdXMgZnJvbSBhbgorICAgYWJicmV2aWF0ZWQgZm9ybSBvZiBhbiBvcHRpb24gdGhhdCB1c2VkIHRvIGJlIHVuaXF1ZSB3aXRoaW4gdGhlCisgICBjb21tYW5kIGdldHRpbmcgbm9uLXVuaXF1ZSB3aGVuIGEgbmV3IG9wdGlvbiB0aGF0IHNoYXJlIHRoZSBzYW1lCisgICBwcmVmaXggaXMgYWRkZWQuCisKKyAqIFRoZSBzY3JpcHRlZCB2ZXJzaW9uIG9mICJnaXQgcmViYXNlIC1pIiB3cm90ZSBhbmQgcmV3cm90ZSB0aGUgdG9kbworICAgbGlzdCBtYW55IHRpbWVzIGR1cmluZyBhIHNpbmdsZSBzdGVwIG9mIGl0cyBvcGVyYXRpb24sIGFuZCB0aGUKKyAgIHJlY2VudCBDLXJld3JpdGUgbWFkZSBhIGZhaXRoZnVsIGNvbnZlcnNpb24gb2YgdGhlIGxvZ2ljIHRvIEMuICBUaGUKKyAgIGltcGxlbWVudGF0aW9uIGhhcyBiZWVuIHVwZGF0ZWQgdG8gY2FycnkgbmVjZXNzYXJ5IGluZm9ybWF0aW9uCisgICBhcm91bmQgaW4tY29yZSB0byBhdm9pZCByZXdyaXRpbmcgdGhlIHNhbWUgZmlsZSBvdmVyIGFuZCBvdmVyCisgICB1bm5lY2Vzc2FyaWx5LgorCisgKiBUZXN0IGZyYW1ld29yayB1cGRhdGUgdG8gbW9yZSByb2J1c3RseSBjbGVhbiB1cCBsZWZ0b3ZlciBmaWxlcyBhbmQKKyAgIHByb2Nlc3NlcyBhZnRlciB0ZXN0cyBhcmUgZG9uZS4KKworICogQ29udmVyc2lvbiBmcm9tIHVuc2lnbmVkIGNoYXJbMjBdIHRvIHN0cnVjdCBvYmplY3RfaWQgY29udGludWVzLgorCisgKiBXaGlsZSBydW5uaW5nICJnaXQgZGlmZiIgaW4gYSBsYXp5IGNsb25lLCB3ZSBjYW4gdXBmcm9udCBrbm93IHdoaWNoCisgICBtaXNzaW5nIGJsb2JzIHdlIHdpbGwgbmVlZCwgaW5zdGVhZCBvZiB3YWl0aW5nIGZvciB0aGUgb24tZGVtYW5kCisgICBtYWNoaW5lcnkgdG8gZGlzY292ZXIgdGhlbSBvbmUgYnkgb25lLiAgVGhlIGNvZGUgbGVhcm5lZCB0byBhaW0gdG8KKyAgIGFjaGlldmUgYmV0dGVyIHBlcmZvcm1hbmNlIGJ5IGJhdGNoaW5nIHRoZSByZXF1ZXN0IGZvciB0aGVzZQorICAgcHJvbWlzZWQgYmxvYnMuCisKKyAqIER1cmluZyBhbiBpbml0aWFsICJnaXQgY2xvbmUgLS1kZXB0aD0uLi4iIHBhcnRpYWwgY2xvbmUsIGl0IGlzCisgICBwb2ludGxlc3MgdG8gc3BlbmQgY3ljbGVzIGZvciBhIGxhcmdlIHBvcnRpb24gb2YgdGhlIGNvbm5lY3Rpdml0eQorICAgY2hlY2sgdGhhdCBlbnVtZXJhdGVzIGFuZCBza2lwcyBwcm9taXNvciBvYmplY3RzICh3aGljaCBieQorICAgZGVmaW5pdGlvbiBpcyBhbGwgb2JqZWN0cyBmZXRjaGVkIGZyb20gdGhlIG90aGVyIHNpZGUpLiAgVGhpcyBoYXMKKyAgIGJlZW4gb3B0aW1pemVkIG91dC4KKworICogTWVjaGFuaWNhbGx5IGFuZCBzeXN0ZW1hdGljYWxseSBkcm9wICJleHRlcm4iIGZyb20gZnVuY3Rpb24KKyAgIGRlY2xhcmF0aW9uLgorCisgKiBUaGUgc2NyaXB0IHRvIGFnZ3JlZ2F0ZSBwZXJmIHJlc3VsdCB1bmNvbmRpdGlvbmFsbHkgZGVwZW5kZWQgb24KKyAgIGxpYmpzb24tcGVybCBldmVuIHRob3VnaCBpdCBkaWQgbm90IGhhdmUgdG8sIHdoaWNoIGhhcyBiZWVuCisgICBjb3JyZWN0ZWQuCisKKyAqIFRoZSBpbnRlcm5hbCBpbXBsZW1lbnRhdGlvbiBvZiAiZ2l0IHJlYmFzZSAtaSIgaGFzIGJlZW4gdXBkYXRlZCB0bworICAgYXZvaWQgZm9ya2luZyBhIHNlcGFyYXRlICJyZWJhc2UtLWludGVyYWN0aXZlIiBwcm9jZXNzLgorCisgKiBBbGxvdyBERVAgYW5kIEFTTFIgZm9yIFdpbmRvd3MgYnVpbGQgdG8gZm9yIHNlY3VyaXR5IGhhcmRlbmluZy4KKworICogUGVyZm9ybWFuY2UgdGVzdCBmcmFtZXdvcmsgaGFzIGJlZW4gYnJva2VuIGFuZCBtZWFzdXJlZCB0aGUgdmVyc2lvbgorICAgb2YgR2l0IHRoYXQgaGFwcGVucyB0byBiZSBvbiAkUEFUSCwgbm90IHRoZSBzcGVjaWZpZWQgb25lIHRvCisgICBtZWFzdXJlLCBmb3IgYSB3aGlsZSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBPcHRpb25hbGx5ICJtYWtlIGNvY2NpY2hlY2siIGNhbiBmZWVkIG11bHRpcGxlIHNvdXJjZSBmaWxlcyB0bworICAgc3BhdGNoLCBnYWluaW5nIHBlcmZvcm1hbmNlIHdoaWxlIHNwZW5kaW5nIG1vcmUgbWVtb3J5LgorCisgKiBBdHRlbXB0IHRvIHVzZSBhbiBhYmJyZXZpYXRlZCBvcHRpb24gaW4gImdpdCBjbG9uZSAtLXJlY3VycyIgaXMKKyAgIHJlc3BvbmRlZCBieSBhIHJlcXVlc3QgdG8gZGlzYW1iaWd1YXRlIGJldHdlZW4gLS1yZWN1cnNpdmUgYW5kCisgICAtLXJlY3Vyc2Utc3VibW9kdWxlcywgd2hpY2ggaXMgYmFkIGJlY2F1c2UgdGhlc2UgdHdvIGFyZSBzeW5vbnltcy4KKyAgIFRoZSBwYXJzZS1vcHRpb25zIEFQSSBoYXMgYmVlbiBleHRlbmRlZCB0byBkZWZpbmUgc3VjaCBzeW5vbnltcworICAgbW9yZSBlYXNpbHkgYW5kIG5vdCBwcm9kdWNlIGFuIHVubmVjZXNzYXJ5IGZhaWx1cmUuCisKKyAqIEEgcGFpciBvZiBwcml2YXRlIGZ1bmN0aW9ucyBpbiBodHRwLmMgdGhhdCBoYWQgbmFtZXMgc2ltaWxhciB0bworICAgZnJlYWQvZndyaXRlIGRpZCBub3QgcmV0dXJuIHRoZSBudW1iZXIgb2YgZWxlbWVudHMsIHdoaWNoIHdhcyBmb3VuZAorICAgdG8gYmUgY29uZnVzaW5nLgorCisgKiBVcGRhdGUgY29sbGlzaW9uLWRldGVjdGluZyBTSEEtMSBjb2RlIHRvIGJ1aWxkIHByb3Blcmx5IG9uIEhQLVVYLgorCisKK0ZpeGVzIHNpbmNlIHYyLjIxCistLS0tLS0tLS0tLS0tLS0tLQorCisgKiAiZ2l0IHBydW5lLXBhY2tlZCIgZGlkIG5vdCBub3RpY2UgYW5kIGNvbXBsYWluIGFnYWluc3QgZXhjZXNzCisgICBhcmd1bWVudHMgZ2l2ZW4gZnJvbSB0aGUgY29tbWFuZCBsaW5lLCB3aGljaCBub3cgaXQgZG9lcy4KKyAgIChtZXJnZSA5YjBiZDg3ZWQyIHJqL3BydW5lLXBhY2tlZC1leGNlc3MtYXJncyBsYXRlciB0byBtYWludCkuCisKKyAqIFNwbGl0LWluZGV4IGZpeC4KKyAgIChtZXJnZSA2ZTM3YzhlZDNjIG5kL3NwbGl0LWluZGV4LW51bGwtYmFzZS1maXggbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZ2l0IGRpZmYgLS1uby1pbmRleCIgbWF5IHN0aWxsIHdhbnQgdG8gYWNjZXNzIEdpdCBnb29kaWVzIGxpa2UKKyAgIC0tZXh0LWRpZmYgYW5kIC0tdGV4dGNvbnYsIGJ1dCBzbyBmYXIgdGhlc2UgaGF2ZSBiZWVuIGlnbm9yZWQsCisgICB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgMjg3YWIyOGJmYSBqay9kaWZmLW5vLWluZGV4LWluaXRpYWxpemUgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBVbmlmeSBSUEMgY29kZSBmb3Igc21hcnQgaHR0cCBpbiBwcm90b2NvbCB2MC92MSBhbmQgdjIsIHdoaWNoIGZpeGVzCisgICBhIGJ1ZyBpbiB0aGUgbGF0dGVyIChsYWNrIG9mIGF1dGhlbnRpY2F0aW9uIHJldHJ5KSBhbmQgZ2VuZXJhbGx5CisgICBpbXByb3ZlcyB0aGUgY29kZSBiYXNlLgorICAgKG1lcmdlIGE5N2QwMDc5OWEganQvaHR0cC1hdXRoLXByb3RvLXYyLWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBpbmNsdWRlIGZpbGUgY29tcGF0L2Jzd2FwLmggaGFzIGJlZW4gdXBkYXRlZCBzbyB0aGF0IGl0IGlzIHNhZmUKKyAgIHRvIChhY2NpZGVudGFsbHkpIGluY2x1ZGUgaXQgbW9yZSB0aGFuIG9uY2UuCisgICAobWVyZ2UgMzNhYTU3OWE1NSBqay9ndWFyZC1ic3dhcC1oZWFkZXIgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBUaGUgc2V0IG9mIGhlYWRlciBmaWxlcyB1c2VkIGJ5ICJtYWtlIGhkci1jaGVjayIgdW5jb25kaXRpb25hbGx5CisgICBpbmNsdWRlZCBzaGEyNTYvZ2NyeXB0LmgsIGV2ZW4gd2hlbiBpdCBpcyBub3QgdXNlZCwgY2F1c2luZyB0aGUKKyAgIG1ha2UgdGFyZ2V0IHRvIGZhaWwuICBXZSBub3cgc2tpcCBpdCB3aGVuIEdDUllQVF9TSEEyNTYgaXMgbm90IGluCisgICB1c2UuCisgICAobWVyZ2UgZjIzYWExOGU3ZiByai9oZHItY2hlY2stZ2NyeXB0LWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBNYWtlZmlsZSB1c2VzICdmaW5kJyB1dGlsaXR5IHRvIGVudW1lcmF0ZSBhbGwgdGhlICouaCBoZWFkZXIKKyAgIGZpbGVzLCB3aGljaCBpcyBleHBlbnNpdmUgb24gcGxhdGZvcm1zIHdpdGggc2xvdyBmaWxlc3lzdGVtczsgaXQKKyAgIG5vdyBvcHRpb25hbGx5IHVzZXMgImxzLWZpbGVzIiBpZiB3b3JraW5nIHdpdGhpbiBhIHJlcG9zaXRvcnksCisgICB3aGljaCBpcyBhIHRyaWNrIHNpbWlsYXIgdG8gaG93IGFsbCBzb3VyY2VzIGFyZSBlbnVtZXJhdGVkIHRvIHJ1bgorICAgRVRBR1Mgb24uCisgICAobWVyZ2UgOTJiODhlYmE5ZiBqcy9maW5kLWxpYi1oLXdpdGgtbHMtZmlsZXMtd2hlbi1wb3NzaWJsZSBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgcmViYXNlIiB0aGF0IHdhcyByZWltcGxlbWVudGVkIGluIEMgZGlkIG5vdCBzZXQgT1JJR19IRUFECisgICBjb3JyZWN0bHksIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSBjYmQyOWVhZDkyIGpzL3JlYmFzZS1vcmlnLWhlYWQtZml4IGxhdGVyIHRvIG1haW50KS4KKworICogRGV2IHN1cHBvcnQuCisgICAobWVyZ2UgZjU0NTczNzE0NCBqcy9zdHJlc3MtdGVzdC11aS10d2VhayBsYXRlciB0byBtYWludCkuCisKKyAqIENGTEFHUyBub3cgY2FuIGJlIHR3ZWFrZWQgd2hlbiBpbnZva2luZyBNYWtlIHdoaWxlIHVzaW5nCisgICBERVZFTE9QRVI9WWVzUGxlYXNlOyB0aGlzIGRpZCBub3Qgd29yayB3ZWxsIGJlZm9yZS4KKyAgIChtZXJnZSA2ZDVkNGI0ZTkzIGFiL21ha2VmaWxlLWhlbHAtZGV2cy1tb3JlIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBmc2NrIC0tY29ubmVjdGl2aXR5LW9ubHkiIG9taXRzIGNvbXB1dGF0aW9uIG5lY2Vzc2FyeSB0byBzaWZ0CisgICB0aGUgb2JqZWN0cyB0aGF0IGFyZSBub3QgcmVhY2hhYmxlIGZyb20gYW55IG9mIHRoZSByZWZzIGludG8KKyAgIHVucmVhY2hhYmxlIGFuZCBkYW5nbGluZy4gIFRoaXMgaXMgbm93IGVuYWJsZWQgd2hlbiBkYW5nbGluZworICAgb2JqZWN0cyBhcmUgcmVxdWVzdGVkICh3aGljaCBpcyBkb25lIGJ5IGRlZmF1bHQsIGJ1dCBjYW4gYmUKKyAgIG92ZXJyaWRkZW4gd2l0aCB0aGUgIi0tbm8tZGFuZ2xpbmciIG9wdGlvbikuCisgICAobWVyZ2UgOGQ4YzJhNWFlZiBqay9mc2NrLWRvYyBsYXRlciB0byBtYWludCkuCisKKyAqIE9uIHBsYXRmb3JtcyB3aGVyZSAiZ2l0IGZldGNoIiBpcyBraWxsZWQgd2l0aCBTSUdQSVBFIChlLmcuIE9TWCksCisgICB0aGUgdXBsb2FkLXBhY2sgdGhhdCBydW5zIG9uIHRoZSBvdGhlciBlbmQgdGhhdCBoYW5ncyB1cCBhZnRlcgorICAgZGV0ZWN0aW5nIGFuIGVycm9yIGNvdWxkIGNhdXNlICJnaXQgZmV0Y2giIHRvIGRpZSB3aXRoIGEgc2lnbmFsLAorICAgd2hpY2ggbGVkIHRvIGEgZmxha3kgdGVzdC4gICJnaXQgZmV0Y2giIG5vdyBpZ25vcmVzIFNJR1BJUEUgZHVyaW5nCisgICB0aGUgbmV0d29yayBwb3J0aW9uIG9mIGl0cyBvcGVyYXRpb24gKHRoaXMgaXMgbm90IGEgcHJvYmxlbSBhcyB3ZQorICAgY2hlY2sgdGhlIHJldHVybiBzdGF0dXMgZnJvbSBvdXIgd3JpdGUoMilzKS4KKyAgIChtZXJnZSAxNDM1ODg5NDljIGprL25vLXNpZ3BpcGUtZHVyaW5nLW5ldHdvcmstdHJhbnNwb3J0IGxhdGVyIHRvIG1haW50KS4KKworICogQSByZWNlbnQgdXBkYXRlIGJyb2tlICJpcyB0aGlzIG9iamVjdCBhdmFpbGFibGUgdG8gdXM/IiBjaGVjayBmb3IKKyAgIHdlbGwta25vd24gb2JqZWN0cyBsaWtlIGFuIGVtcHR5IHRyZWUgKHdoaWNoIHNob3VsZCB5aWVsZCAieWVzIiwKKyAgIGV2ZW4gd2hlbiB0aGVyZSBpcyBubyBvbi1kaXNrIG9iamVjdCBmb3IgYW4gZW1wdHkgdHJlZSksIHdoaWNoIGhhcworICAgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgZjA2YWIwMjdlZiBqay92aXJ0dWFsLW9iamVjdHMtZG8tZXhpc3QgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBUaGUgc2V0dXAgY29kZSBoYXMgYmVlbiBjbGVhbmVkIHVwIHRvIGF2b2lkIGxlYWtzIGFyb3VuZCB0aGUKKyAgIHJlcG9zaXRvcnlfZm9ybWF0IHN0cnVjdHVyZS4KKyAgIChtZXJnZSBlODgwNWFmMWMzIG1hL2NsZWFyLXJlcG9zaXRvcnktZm9ybWF0IGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBjb25maWcgLS10eXBlPWNvbG9yIC4uLiIgaXMgbWVhbnQgdG8gcmVwbGFjZSAiZ2l0IGNvbmZpZyAtLWdldC1jb2xvciIKKyAgIGJ1dCB0aGVyZSBpcyBhIHNsaWdodCBkaWZmZXJlbmNlIHRoYXQgd2Fzbid0IGRvY3VtZW50ZWQsIHdoaWNoIGlzCisgICBub3cgZml4ZWQuCisgICAobWVyZ2UgY2Q4ZTc1OTNiOSBqay9jb25maWctdHlwZS1jb2xvci1lbmRzLXdpdGgtbGYgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBXaGVuIHRoZSAiY2xlYW4iIGZpbHRlciBjYW4gcmVkdWNlIHRoZSBzaXplIG9mIGEgaHVnZSBmaWxlIGluIHRoZQorICAgd29ya2luZyB0cmVlIGRvd24gdG8gYSBzbWFsbCAidG9rZW4iIChhIGxhIEdpdCBMRlMpLCB0aGVyZSBpcyBubworICAgcG9pbnQgaW4gYWxsb2NhdGluZyBhIGh1Z2Ugc2NyYXRjaCBhcmVhIHVwZnJvbnQsIGJ1dCB0aGUgYnVmZmVyIGlzCisgICBzaXplZCBiYXNlZCBvbiB0aGUgb3JpZ2luYWwgZmlsZSBzaXplLiAgVGhlIGNvbnZlcnQgbWVjaGFuaXNtIG5vdworICAgYWxsb2NhdGVzIHZlcnkgbWluaW11bSBhbmQgcmVhbGxvY2F0ZXMgYXMgaXQgcmVjZWl2ZXMgdGhlIG91dHB1dAorICAgZnJvbSB0aGUgY2xlYW4gZmlsdGVyIHByb2Nlc3MuCisgICAobWVyZ2UgMDIxNTZhYjAzMSBqaC9yZXNpemUtY29udmVydC1zY3JhdGNoLWJ1ZmZlciBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgcmViYXNlIiB1c2VzIHRoZSByZWZzL3Jld3JpdHRlbi8gaGllcmFyY2h5IHRvIHN0b3JlIGl0cworICAgaW50ZXJtZWRpYXRlIHN0YXRlcywgd2hpY2ggaW5oZXJlbnRseSBtYWtlcyB0aGUgaGllcmFyY2h5IHBlcgorICAgd29ya3RyZWUsIGJ1dCBpdCBkaWRuJ3QgcXVpdGUgd29yayB3ZWxsLgorICAgKG1lcmdlIGI5MzE3ZDU1YTMgbmQvcmV3cml0dGVuLXJlZi1pcy1wZXItd29ya3RyZWUgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZ2l0IGxvZyAtTDxmcm9tPiw8dG8+OjxwYXRoPiIgd2l0aCAiLXMiIGRpZCBub3Qgc3VwcHJlc3MgdGhlIHBhdGNoCisgICBvdXRwdXQgYXMgaXQgc2hvdWxkLiAgVGhpcyBoYXMgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgMDUzMTRlZmFlYSBqay9saW5lLWxvZy13aXRoLXBhdGNoIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCB3b3JrdHJlZSBhZGQiIHVzZWQgdG8gZG8gYSAiZmluZCBhbiBhdmFpbGFibGUgbmFtZSB3aXRoIHN0YXQKKyAgIGFuZCB0aGVuIG1rZGlyIiwgd2hpY2ggaXMgcmFjZS1wcm9uZS4gIFRoaXMgaGFzIGJlZW4gZml4ZWQgYnkgdXNpbmcKKyAgIG1rZGlyIGFuZCByZWFjdGluZyB0byBFRVhJU1QgaW4gYSBsb29wLgorICAgKG1lcmdlIDdhZjAxZjIzNjcgbXMvd29ya3RyZWUtYWRkLWF0b21pYy1ta2RpciBsYXRlciB0byBtYWludCkuCisKKyAqIEJ1aWxkIHVwZGF0ZSBmb3IgU0hBLTEgd2l0aCBjb2xsaXNpb24gZGV0ZWN0aW9uLgorICAgKG1lcmdlIDA3YTIwZjU2OWIgamsvc2hhMWRjIGxhdGVyIHRvIG1haW50KS4KKworICogQnVpbGQgcHJvY2VkdXJlIGhhcyBiZWVuIGZpeGVkIGFyb3VuZCB1c2Ugb2YgYXNjaWlkb2N0b3IgaW5zdGVhZCBvZgorICAgYXNjaWlkb2MuCisgICAobWVyZ2UgMTg1ZjlhMGVhMCBtYS9hc2NpaWRvY3Rvci1maXhlcyBsYXRlciB0byBtYWludCkuCisKKyAqIHJlbW90ZS1odHRwIHRyYW5zcG9ydCBkaWQgbm90IGFub255bWl6ZSBVUkxzIHJlcG9ydGVkIGluIGl0cyBlcnJvcgorICAgbWVzc2FnZXMgYXQgcGxhY2VzLgorICAgKG1lcmdlIGMxMjg0YjIxZjIganMvYW5vbnltaXplLXJlbW90ZS1jdXJsLWRpYWcgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBFcnJvciBtZXNzYWdlcyBnaXZlbiBmcm9tIHRoZSBodHRwIHRyYW5zcG9ydCBoYXZlIGJlZW4gdXBkYXRlZCBzbworICAgdGhhdCB0aGV5IGNhbiBiZSBsb2NhbGl6ZWQuCisgICAobWVyZ2UgZWQ4YjQxMzJjOCBqcy9yZW1vdGUtY3VybC1pMThuIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBpbml0IiBmb3Jnb3QgdG8gcmVhZCBwbGF0Zm9ybS1zcGVjaWZpYyByZXBvc2l0b3J5CisgICBjb25maWd1cmF0aW9uLCB3aGljaCBtYWRlIFdpbmRvd3MgcG9ydCB0byBpZ25vcmUgc2V0dGluZ3Mgb2YKKyAgIGNvcmUuaGlkZWRvdGZpbGVzLCBmb3IgZXhhbXBsZS4KKworICogQSBjb3JuZXItY2FzZSBvYmplY3QgbmFtZSBhbWJpZ3VpdHkgd2hpbGUgdGhlIHNlcXVlbmNlciBtYWNoaW5lcnkKKyAgIGlzIHdvcmtpbmcgKGUuZy4gInJlYmFzZSAtaSAteCIpIGhhcyBiZWVuIGZpeGVkLgorCisgKiAiZ2l0IGZvcm1hdC1wYXRjaCIgZGlkIG5vdCBkaWFnbm9zZSBhbiBlcnJvciB3aGlsZSBvcGVuaW5nIHRoZQorICAgb3V0cHV0IGZpbGUgZm9yIHRoZSBjb3Zlci1sZXR0ZXIsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSAyZmU5NWY0OTRjIGpjL2Zvcm1hdC1wYXRjaC1lcnJvci1jaGVjayBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgY2hlY2tvdXQgLWYgPGJyYW5jaD4iIHdoaWxlIHRoZSBpbmRleCBoYXMgYW4gdW5tZXJnZWQgcGF0aAorICAgaW5jb3JyZWN0bHkgbGVmdCBzb21lIHBhdGhzIGluIGFuIHVubWVyZ2VkIHN0YXRlLCB3aGljaCBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorCisgKiBBIGNvcm5lciBjYXNlIGJ1ZyBpbiB0aGUgcmVmcyBBUEkgaGFzIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIGQzMzIyZWIyOGIgamsvcmVmcy1kb3VibGUtYWJvcnQgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBVbmljb2RlIHVwZGF0ZS4KKyAgIChtZXJnZSA1ODRiNjJjMzdiIGJiL3VuaWNvZGUtMTIgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBkdW1iLWh0dHAgd2Fsa2VyIGhhcyBiZWVuIHVwZGF0ZWQgdG8gc2hhcmUgbW9yZSBlcnJvciByZWNvdmVyeQorICAgc3RyYXRlZ3kgd2l0aCB0aGUgbm9ybWFsIGNvZGVwYXRoLgorCisgKiBBIGJ1Z2xldCBpbiBjb25maWd1cmF0aW9uIHBhcnNlciBoYXMgYmVlbiBmaXhlZC4KKyAgIChtZXJnZSAxOWU3ZmRhYTU4IG5kL2luY2x1ZGUtaWYtd2lsZG1hdGNoIGxhdGVyIHRvIG1haW50KS4KKworICogVGhlIGRvY3VtZW50YXRpb24gZm9yICJnaXQgcmVhZC10cmVlIC0tcmVzZXQgLXUiIGhhcyBiZWVuIHVwZGF0ZWQuCisgICAobWVyZ2UgYjVhMGJkNjk0YyBuZC9yZWFkLXRyZWUtcmVzZXQtZG9jIGxhdGVyIHRvIG1haW50KS4KKworICogQ29kZSBjbGVhbi11cCBhcm91bmQgYSBtdWNoLWxlc3MtaW1wb3J0YW50LXRoYW4taXQtdXNlZC10by1iZQorICAgdXBkYXRlX3NlcnZlcl9pbmZvKCkgZnVuY3Rpb24uCisgICAobWVyZ2UgYjMyMjM3NjFjOCBqay9zZXJ2ZXItaW5mby1yYWJiaXQtaG9sZSBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBtZXNzYWdlIGdpdmVuIHdoZW4gImdpdCBjb21taXQgLWEgPHBhdGhzPiIgZXJyb3JzIG91dCBoYXMgYmVlbgorICAgdXBkYXRlZC4KKyAgIChtZXJnZSA1YTFkYmQ0OGJjIG5kL2NvbW1pdC1hLXdpdGgtcGF0aHMtbXNnLXVwZGF0ZSBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgY2hlcnJ5LXBpY2sgLS1vcHRpb25zIEEuLkIiLCBhZnRlciBnaXZpbmcgY29udHJvbCBiYWNrIHRvIHRoZQorICAgdXNlciB0byBhc2sgaGVscCByZXNvbHZpbmcgYSBjb25mbGljdGVkIHN0ZXAsIGRpZCBub3QgaG9ub3IgdGhlCisgICBvcHRpb25zIGl0IG9yaWdpbmFsbHkgcmVjZWl2ZWQsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogVmFyaW91cyBnbGl0Y2hlcyBpbiAiZ2l0IGdjIiBhcm91bmQgcmVmbG9nIGhhbmRsaW5nIGhhdmUgYmVlbiBmaXhlZC4KKworICogVGhlIGNvZGUgdG8gcmVhZCBmcm9tIGNvbW1pdC1ncmFwaCBmaWxlIGhhcyBiZWVuIGNsZWFudXAgd2l0aCBtb3JlCisgICBjYXJlZnVsIGVycm9yIGNoZWNraW5nIGJlZm9yZSB1c2luZyBkYXRhIHJlYWQgZnJvbSBpdC4KKworICogUGVyZm9ybWFuY2UgZml4IGFyb3VuZCAiZ2l0IGZldGNoIiB0aGF0IGdyYWJzIG1hbnkgcmVmcy4KKyAgIChtZXJnZSBiNzY0MzAwOTEyIGp0L2ZldGNoLXBhY2std2FudGVkLXJlZnMtb3B0aW0gbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBQcm90b2NvbCB2MiBzdXBwb3J0IGluICJnaXQgZmV0Y2gtcGFjayIgb2Ygc2hhbGxvdyBjbG9uZXMgaGFzIGJlZW4KKyAgIGNvcnJlY3RlZC4KKworICogUGVyZm9ybWFuY2UgZml4IGFyb3VuZCAiZ2l0IGJsYW1lIiwgZXNwZWNpYWxseSBpbiBhIGxpbmVhciBoaXN0b3J5CisgICAod2hpY2ggaXMgdGhlIG5vcm0gd2Ugc2hvdWxkIG9wdGltaXplIGZvcikuCisgICAobWVyZ2UgZjg5MjAxNDk0MyBkay9ibGFtZS1rZWVwLW9yaWdpbi1ibG9iIGxhdGVyIHRvIG1haW50KS4KKworICogUGVyZm9ybWFuY2UgZml4IGZvciAicmV2LWxpc3QgLS1wYXJlbnRzIC0tIHBhdGhzcGVjIi4KKyAgIChtZXJnZSA4MzIwYjFkYmU3IGprL3JldmlzaW9uLXJld3JpdHRlbi1wYXJlbnRzLWluLXByaW8tcXVldWUgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBVcGRhdGluZyB0aGUgZGlzcGxheSB3aXRoIHByb2dyZXNzIG1lc3NhZ2UgaGFzIGJlZW4gY2xlYW5lZCB1cCB0bworICAgZGVhbCBiZXR0ZXIgd2l0aCBvdmVybG9uZyBtZXNzYWdlcy4KKyAgIChtZXJnZSA1NDVkYzM0NWViIHNnL292ZXJsb25nLXByb2dyZXNzLWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgYmxhbWUgLS0gcGF0aCIgaW4gYSBub24tYmFyZSByZXBvc2l0b3J5IHN0YXJ0cyBibGFtaW5nIGZyb20KKyAgIHRoZSB3b3JraW5nIHRyZWUsIGFuZCB0aGUgc2FtZSBjb21tYW5kIGluIGEgYmFyZSByZXBvc2l0b3J5IGVycm9ycworICAgb3V0IGJlY2F1c2UgdGhlcmUgaXMgbm8gd29ya2luZyB0cmVlIGJ5IGRlZmluaXRpb24uICBUaGUgY29tbWFuZAorICAgaGFzIGJlZW4gdGF1Z2h0IHRvIGluc3RlYWQgc3RhcnQgYmxhbWluZyBmcm9tIHRoZSBjb21taXQgYXQgSEVBRCwKKyAgIHdoaWNoIGlzIG1vcmUgdXNlZnVsLgorICAgKG1lcmdlIGE1NDRmYjA4Zjggc2cvYmxhbWUtaW4tYmFyZS1zdGFydC1hdC1oZWFkIGxhdGVyIHRvIG1haW50KS4KKworICogQW4gdW5kZXJhbGxvY2F0aW9uIGluIHRoZSBjb2RlIHRvIHJlYWQgdGhlIHVudHJhY2tlZCBjYWNoZQorICAgZXh0ZW5zaW9uIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSAzYTdiNDVhNjIzIGpzL3VudHJhY2tlZC1jYWNoZS1hbGxvY2ZpeCBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBjb2RlIGlzIHVwZGF0ZWQgdG8gY2hlY2sgdGhlIHJlc3VsdCBvZiBtZW1vcnkgYWxsb2NhdGlvbiBiZWZvcmUKKyAgIGl0IGlzIHVzZWQgaW4gbW9yZSBwbGFjZXMsIGJ5IHVzaW5nIHhtYWxsb2MgYW5kL29yIHhjYWxsb2MgY2FsbHMuCisgICAobWVyZ2UgOTk5Yjk1MWIyOCBqay94bWFsbG9jIGxhdGVyIHRvIG1haW50KS4KKworICogVGhlIEdFVFRFWFRfUE9JU09OIHRlc3Qgb3B0aW9uIGhhcyBiZWVuIHF1aXRlIGJyb2tlbiBldmVyIHNpbmNlIGl0CisgICB3YXMgbWFkZSBydW50aW1lLXR1bmFibGUsIHdoaWNoIGhhcyBiZWVuIGZpeGVkLgorICAgKG1lcmdlIGY4OGI5Y2I2MDMgamMvZ2V0dGV4dC10ZXN0LWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqIFRlc3QgZml4IG9uIEFQRlMgdGhhdCBpcyBpbmNhcGFibGUgb2Ygc3RvcmUgcGF0aHMgaW4gTGF0aW4tMS4KKyAgIChtZXJnZSAzODg5MTQ5NjE5IGpzL2lzbzg4OTUtdGVzdC1vbi1hcGZzIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBzdWJtb2R1bGUgZm9yZWFjaCA8Y29tbWFuZD4gLS1xdWlldCIgZGlkIG5vdCBwYXNzIHRoZSBvcHRpb24KKyAgIGRvd24gY29ycmVjdGx5LCB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgYTI4MmY1YTkwNiBuZC9zdWJtb2R1bGUtZm9yZWFjaC1xdWlldCBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgc2VuZC1lbWFpbCIgaGFzIGJlZW4gdGF1Z2h0IHRvIHVzZSBxdW90ZWQtcHJpbnRhYmxlIHdoZW4gdGhlCisgICBwYXlsb2FkIGNvbnRhaW5zIGNhcnJpYWdlLXJldHVybi4gIFRoZSB1c2Ugb2YgdGhlIG1lY2hhbmlzbSBpcyBpbgorICAgbGluZSB3aXRoIHRoZSBkZXNpZ24gb3JpZ2luYWxseSBhZGRlZCB0aGUgY29kZXBhdGggdGhhdCBjaG9vc2VzIFFQCisgICB3aGVuIHRoZSBwYXlsb2FkIGhhcyBvdmVybHkgbG9uZyBsaW5lcy4KKyAgIChtZXJnZSA3NGQ3NmExNzAxIGJjL3NlbmQtZW1haWwtcXAtY3IgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBUaGUgcmVjZW50bHkgYWRkZWQgZmVhdHVyZSB0byBhZGQgYWRkcmVzc2VzIHRoYXQgYXJlIG9uCisgICBhbnl0aGluZy1ieTogdHJhaWxlcnMgaW4gJ2dpdCBzZW5kLWVtYWlsJyB3YXMgZm91bmQgdG8gYmUgd2F5IHRvbworICAgZWFnZXIgYW5kIGNvbnNpZGVyZWQgbm9uc2Vuc2Ugc3RyaW5ncyBhcyBpZiB0aGV5IGNhbiBiZSBsZWdpdGltYXRlCisgICBiZWdpbm5pbmcgb2YgKi1ieTogdHJhaWxlci4gIFRoaXMgaGFzIGJlZW4gdGlnaHRlbmVkLgorCisgKiBCdWlsZHMgd2l0aCBnZXR0ZXh0IGJyb2tlIG9uIHJlY2VudCBtYWNPUyB3LyBIb21lYnJldywgd2hpY2gKKyAgIHNlZW1zIHRvIGhhdmUgc3RvcHBlZCBpbmNsdWRpbmcgZnJvbSAvdXNyL2xvY2FsL2luY2x1ZGU7IHRoaXMKKyAgIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSA5MmExMzc3YTJhIGpzL21hY29zLWdldHRleHQtYnVpbGQgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBSdW5uaW5nICJnaXQgYWRkIiBvbiBhIHJlcG9zaXRvcnkgY3JlYXRlZCBpbnNpZGUgdGhlIGN1cnJlbnQKKyAgIHJlcG9zaXRvcnkgaXMgYW4gZXhwbGljaXQgaW5kaWNhdGlvbiB0aGF0IHRoZSB1c2VyIHdhbnRzIHRvIGFkZCBpdAorICAgYXMgYSBzdWJtb2R1bGUsIGJ1dCB3aGVuIHRoZSBIRUFEIG9mIHRoZSBpbm5lciByZXBvc2l0b3J5IGlzIG9uIGFuCisgICB1bmJvcm4gYnJhbmNoLCBpdCBjYW5ub3QgYmUgYWRkZWQgYXMgYSBzdWJtb2R1bGUuICBXb3JzZSwgdGhlIGZpbGVzCisgICBpbiBpdHMgd29ya2luZyB0cmVlIGNhbiBiZSBhZGRlZCBhcyBpZiB0aGV5IGFyZSBhIHBhcnQgb2YgdGhlIG91dGVyCisgICByZXBvc2l0b3J5LCB3aGljaCBpcyBub3Qgd2hhdCB0aGUgdXNlciB3YW50cy4gIFRoZXNlIHByb2JsZW1zIGFyZQorICAgYmVpbmcgYWRkcmVzc2VkLgorICAgKG1lcmdlIGY5MzdiYzJmODYga20vZW1wdHktcmVwby1pcy1zdGlsbC1hLXJlcG8gbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZ2l0IGNoZXJyeS1waWNrIiBydW4gd2l0aCB0aGUgIi14IiBvciB0aGUgIi0tc2lnbm9mZiIgb3B0aW9uIHVzZWQKKyAgIHRvIChhbmQgbW9yZSBpbXBvcnRhbnRseSwgb3VnaHQgdG8pIGNsZWFuIHVwIHRoZSBjb21taXQgbG9nIG1lc3NhZ2UKKyAgIHdpdGggdGhlIC0tY2xlYW51cD1zcGFjZSBvcHRpb24gYnkgZGVmYXVsdCwgYnV0IHRoaXMgaGFzIGJlZW4KKyAgIGJyb2tlbiBzaW5jZSBsYXRlIDIwMTcuICBUaGlzIGhhcyBiZWVuIGZpeGVkLgorCisgKiBXaGVuIGdpdmVuIGEgdGFnIHRoYXQgcG9pbnRzIGF0IGEgY29tbWl0LWlzaCwgImdpdCByZXBsYWNlIC0tZ3JhZnQiCisgICBmYWlsZWQgdG8gcGVlbCB0aGUgdGFnIGJlZm9yZSB3cml0aW5nIGEgcmVwbGFjZSByZWYsIHdoaWNoIGRpZCBub3QKKyAgIG1ha2Ugc2Vuc2UgYmVjYXVzZSB0aGUgb2xkIGdyYWZ0IG1lY2hhbmlzbSB0aGUgZmVhdHVyZSB3YW50cyB0bworICAgbWltaWMgb25seSBhbGxvd2VkIHRvIHJlcGxhY2Ugb25lIGNvbW1pdCBvYmplY3Qgd2l0aCBhbm90aGVyLgorICAgVGhpcyBoYXMgYmVlbiBmaXhlZC4KKyAgIChtZXJnZSBlZTUyMWVjNGNiIGNjL3JlcGxhY2UtZ3JhZnQtcGVlbC10YWdzIGxhdGVyIHRvIG1haW50KS4KKworICogQ29kZSB0aWdodGVuaW5nIGFnYWluc3QgYSAid3JvbmciIG9iamVjdCBhcHBlYXJpbmcgd2hlcmUgYW4gb2JqZWN0CisgICBvZiBhIGRpZmZlcmVudCB0eXBlIGlzIGV4cGVjdGVkLCBpbnN0ZWFkIG9mIGJsaW5kbHkgYXNzdW1pbmcgdGhhdAorICAgdGhlIGNvbm5lY3Rpb24gYmV0d2VlbiBvYmplY3RzIGFyZSBjb3JyZWN0bHkgbWFkZS4KKyAgIChtZXJnZSA5N2RkNTEyYWY3IHRiL3VuZXhwZWN0ZWQgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBBbiBlYXJsaWVyIHVwZGF0ZSBmb3IgTWluR1cgYW5kIEN5Z3dpbiBhY2NpZGVudGFsbHkgYnJva2UgTVNWQyBidWlsZCwKKyAgIHdoaWNoIGhhcyBiZWVuIGZpeGVkLgorICAgKG1lcmdlIDIyYzM2MzRjMGYgc3MvbXN2Yy1wYXRoLXV0aWxzLWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqICUocHVzaDp0cmFjaykgdG9rZW4gdXNlZCBpbiB0aGUgLS1mb3JtYXQgb3B0aW9uIHRvICJnaXQKKyAgIGZvci1lYWNoLXJlZiIgYW5kIGZyaWVuZHMgd2FzIG5vdCBzaG93aW5nIHRoZSByaWdodCBicmFuY2gsIHdoaWNoCisgICBoYXMgYmVlbiBmaXhlZC4KKyAgIChtZXJnZSBjNjQ2ZDA5MzRlIGRyL3JlZi1maWx0ZXItcHVzaC10cmFjay1maXggbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAibWFrZSBjaGVjay1kb2NzIiwgImdpdCBoZWxwIC1hIiwgZXRjLiBkaWQgbm90IGFjY291bnQgZm9yIGNhc2VzCisgICB3aGVyZSBhIHBhcnRpY3VsYXIgYnVpbGQgbWF5IGRlbGliZXJhdGVseSBvbWl0IHNvbWUgc3ViY29tbWFuZHMsCisgICB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqIFRoZSBsb2dpYyB0byB0ZWxsIGlmIGEgR2l0IHJlcG9zaXRvcnkgaGFzIGEgd29ya2luZyB0cmVlIHByb3RlY3RzCisgICAiZ2l0IGJyYW5jaCAtRCIgZnJvbSByZW1vdmluZyB0aGUgYnJhbmNoIHRoYXQgaXMgY3VycmVudGx5IGNoZWNrZWQKKyAgIG91dCBieSBtaXN0YWtlLiAgVGhlIGltcGxlbWVudGF0aW9uIG9mIHRoaXMgbG9naWMgd2FzIGJyb2tlbiBmb3IKKyAgIHJlcG9zaXRvcmllcyB3aXRoIHVudXN1YWwgbmFtZSwgd2hpY2ggdW5mb3J0dW5hdGVseSBpcyB0aGUgbm9ybSBmb3IKKyAgIHN1Ym1vZHVsZXMgdGhlc2UgZGF5cy4gIFRoaXMgaGFzIGJlZW4gZml4ZWQuCisgICAobWVyZ2UgZjM1MzRjOThlNCBqdC9zdWJtb2R1bGUtcmVwby1pcy13aXRoLXdvcmt0cmVlIGxhdGVyIHRvIG1haW50KS4KKworICogQUlYIHNoYXJlZCB0aGUgc2FtZSBidWlsZCBpc3N1ZXMgd2l0aCBvdGhlciBCU0RzIGFyb3VuZCBmaWxlbm8oZnApLAorICAgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIGVlNjYyYmY1YzYgY2MvYWl4LWhhcy1maWxlbm8tYXMtYS1tYWNybyBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBhdXRvY29uZiBnZW5lcmF0ZWQgY29uZmlndXJlIHNjcmlwdCBmYWlsZWQgdG8gdXNlIHRoZSByaWdodAorICAgZ2V0dGV4dCgpIGltcGxlbWVudGF0aW9ucyBmcm9tIC1saWJpbnRsIGJ5IGlnbm9yaW5nIHVzZWxlc3Mgc3R1YgorICAgaW1wbGVtZW50YXRpb25zIHNoaXBwZWQgaW4gc29tZSBDIGxpYnJhcnksIHdoaWNoIGhhcyBiZWVuCisgICBjb3JyZWN0ZWQuCisgICAobWVyZ2UgYjcxZTU2YTY4MyB2ay9hdXRvY29uZi1nZXR0ZXh0IGxhdGVyIHRvIG1haW50KS4KKworICogRml4IGluZGV4LXBhY2sgcGVyZiB0ZXN0IHNvIHRoYXQgdGhlIHJlcGVhdGVkIGludm9jYXRpb25zIGFsd2F5cworICAgcnVuIGluIGFuIGVtcHR5IHJlcG9zaXRvcnksIHdoaWNoIGVtdWxhdGVzIHRoZSBpbml0aWFsIGNsb25lCisgICBzaXR1YXRpb24gYmV0dGVyLgorICAgKG1lcmdlIDc3NWM3MWUxNmQgamsvcDUzMDItYXZvaWQtY29sbGlzaW9uLWNoZWNrLWNvc3QgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBBICJscy1maWxlcyIgdGhhdCBlbXVsYXRlcyAiZmluZCIgdG8gZW51bWVyYXRlIGZpbGVzIGluIHRoZSB3b3JraW5nCisgICB0cmVlIHJlc3VsdGVkIGluIGR1cGxpY2F0ZWQgTWFrZWZpbGUgcnVsZXMgdGhhdCBjYXVzZWQgdGhlIGJ1aWxkIHRvCisgICBpc3N1ZSBhbiB1bm5lY2Vzc2FyeSB3YXJuaW5nIGR1cmluZyBhIHRyaWFsIGJ1aWxkIGFmdGVyIG1lcmdlCisgICBjb25mbGljdHMgYXJlIHJlc29sdmVkIGluIHdvcmtpbmcgdHJlZSAqLmggZmlsZXMgYnV0IGJlZm9yZSB0aGUKKyAgIHJlc29sdmVkIHJlc3VsdHMgYXJlIGFkZGVkIHRvIHRoZSBpbmRleC4gIFRoaXMgaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiAiZ2l0IGNoZXJyeS1waWNrIiAoYW5kICJyZXZlcnQiIHRoYXQgc2hhcmVzIHRoZSBzYW1lIHJ1bnRpbWUgZW5naW5lKQorICAgdGhhdCBkZWFscyB3aXRoIG11bHRpcGxlIGNvbW1pdHMgZ290IGNvbmZ1c2VkIHdoZW4gdGhlIGZpbmFsIHN0ZXAKKyAgIGdldHMgc3RvcHBlZCB3aXRoIGEgY29uZmxpY3QgYW5kIHRoZSB1c2VyIGNvbmNsdWRlZCB0aGUgc2VxdWVuY2UKKyAgIHdpdGggImdpdCBjb21taXQiLiAgQXR0ZW1wdCB0byBmaXggaXQgYnkgY2xlYW5pbmcgdXAgdGhlIHN0YXRlCisgICBmaWxlcyB1c2VkIGJ5IHRoZXNlIGNvbW1hbmRzIGluIHN1Y2ggYSBzaXR1YXRpb24uCisgICAobWVyZ2UgNGE3MjQ4NmRlOSBwdy9jbGVhbi1zZXF1ZW5jZXItc3RhdGUtdXBvbi1maW5hbC1jb21taXQgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBPbiBhIGZpbGVzeXN0ZW0gbGlrZSBIRlMrLCB0aGUgbmFtZXMgb2YgdGhlIHJlZnMgc3RvcmVkIGFzIGZpbGVzeXN0ZW0KKyAgIGVudGl0aWVzIG1heSBiZWNvbWUgZGlmZmVyZW50IGZyb20gd2hhdCB0aGUgZW5kLXVzZXIgZXhwZWN0cywganVzdAorICAgbGlrZSBmaWxlcyBpbiB0aGUgd29ya2luZyB0cmVlIGdldCAicmVuYW1lZCIuICBXb3JrIGFyb3VuZCB0aGUKKyAgIG1pc21hdGNoIGJ5IHBheWluZyBhdHRlbnRpb24gdG8gdGhlIGNvcmUucHJlY29tcG9zZVVuaWNvZGUKKyAgIGNvbmZpZ3VyYXRpb24uCisgICAobWVyZ2UgOGU3MTJlZjZmYyBlbi91bmljb2RlLWluLXJlZm5hbWVzIGxhdGVyIHRvIG1haW50KS4KKworICogVGhlIGNvZGUgdG8gZ2VuZXJhdGUgdGhlIG11bHRpLXBhY2sgaWR4IGZpbGUgd2FzIG5vdCBwcmVwYXJlZCB0bworICAgc2VlIHRvbyBtYW55IHBhY2tmaWxlcyBhbmQgcmFuIG91dCBvZiBvcGVuIGZpbGUgZGVzY3JpcHRvciwgd2hpY2gKKyAgIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogVG8gcnVuIHRlc3RzIGZvciBHaXQgU1ZOLCBvdXIgc2NyaXB0cyBmb3IgQ0kgdXNlZCB0byBpbnN0YWxsIHRoZQorICAgZ2l0LXN2biBwYWNrYWdlIChpbiB0aGUgaG9wZSB0aGF0IGl0IHdvdWxkIGJyaW5nIGluIHRoZSByaWdodAorICAgZGVwZW5kZW5jaWVzKS4gIFRoaXMgaGFzIGJlZW4gdXBkYXRlZCB0byBpbnN0YWxsIHRoZSBtb3JlIGRpcmVjdAorICAgZGVwZW5kZW5jeSwgbmFtZWx5LCBsaWJzdm4tcGVybC4KKyAgIChtZXJnZSBkYjg2NDMwNmNmIHNnL2NpLWxpYnN2bi1wZXJsIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBjdnNleHBvcnRjb21taXQiIHJ1bm5pbmcgb24gbXN5cyBkaWQgbm90IGV4cGVjdCBjdnNudCBzaG93ZWQKKyAgICJjdnMgc3RhdHVzIiBvdXRwdXQgd2l0aCBDUkxGIGxpbmUgZW5kaW5ncy4KKworICogVGhlIGZzbW9uaXRvciBpbnRlcmZhY2UgZ290IG91dCBvZiBzeW5jIGFmdGVyIHRoZSBpbi1jb3JlIGluZGV4CisgICBmaWxlIGdldHMgZGlzY2FyZGVkLCB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgMzk4YTNiMDg5OSBqcy9mc21vbml0b3ItcmVmcmVzaC1hZnRlci1kaXNjYXJkaW5nLWluZGV4IGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBzdGF0dXMiIGRpZCBub3Qga25vdyB0aGF0IHRoZSAibGFiZWwiIGluc3RydWN0aW9uIGluIHRoZQorICAgdG9kby1saXN0ICJyZWJhc2UgLWkgLXIiIHVzZXMgc2hvdWxkIG5vdCBiZSBzaG93biBhcyBhIGhleCBvYmplY3QKKyAgIG5hbWUuCisKKyAqIEEgcHJlcmVxdWlzaXRlIGNoZWNrIGluIHRoZSB0ZXN0IHN1aXRlIHRvIHNlZSBpZiBhIHdvcmtpbmcgamdpdCBpcworICAgYXZhaWxhYmxlIHdhcyBtYWRlIG1vcmUgcm9idXN0LgorICAgKG1lcmdlIGFiZDBmMjg5ODMgdHovdGVzdC1saWItY2hlY2std29ya2luZy1qZ2l0IGxhdGVyIHRvIG1haW50KS4KKworICogVGhlIGNvZGVwYXRoIHRvIHBhcnNlIDo8cGF0aD4gdGhhdCBvYnRhaW5zIHRoZSBvYmplY3QgbmFtZSBmb3IgYW4KKyAgIGluZGV4ZWQgb2JqZWN0IGhhcyBiZWVuIG1hZGUgbW9yZSByb2J1c3QuCisKKyAqIENvZGUgY2xlYW51cCwgZG9jZml4LCBidWlsZCBmaXgsIGV0Yy4KKyAgIChtZXJnZSAxMWY0NzBhZWU3IGpjL3Rlc3QteWVzLWRvYyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgOTA1MDNhMjQwYiBqcy9kb2Mtc3ltcmVmLWluLXByb3RvLXYxIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA1YzMyNmQxMjUyIGprL3VudXNlZC1wYXJhbXMgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDY4Y2FiYmZkYTMgZGwvZG9jLXN1Ym1vZHVsZS13by1zdWJjb21tYW5kIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA5OTAzNjIzNzYxIGFiL3JlY2VpdmUtcGFjay11c2UtYWZ0ZXItZnJlZS1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDFlZGU0NWU0NGIgZW4vbWVyZ2Utb3B0aW9ucy1kb2MgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDNlMTRkZDJjOGUgcmQvZG9jLWhvb2stdXNlZC1pbi1zYW1wbGUgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGMyNzFkYzI4ZmQgbmQvbm8tbW9yZS1jaGVjay1yYWN5IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBlNmUxNTE5NGE4IHliL3V0Zi0xNmxlLWJvbS1zcGVsbGZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYmIxMDFhYWYwYyByZC9hdHRyLmMtY29tbWVudC10eXBvZml4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA3MTZhNWFmODEyIHJkL2djLXBydW5lLWRvYy1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDUwYjIwNjM3MWQganMvdW50cmF2aXMtd2luZG93cyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgZGJmNDcyMTVlMyBqcy9yZWJhc2UtcmVjcmVhdGUtbWVyZ2UgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDU2Y2IyZDMwZjggZGwvcmVzZXQtZG9jLW5vLXdydC1hYmJyZXYgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDY0ZWNhMzA2YTIgamEvZGlyLXJlbmFtZS1kb2MtbWFya3VwLWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYWY5MWIwMjMwYyBkbC9pZ25vcmUtZG9jcyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNTlhMDZlOTQ3YiByYS90MzYwMC10ZXN0LXBhdGgtZnVuY3MgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGUwNDFkMDc4MWIgYXIvdDQxNTAtcmVtb3ZlLWNydWZ0IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA4ZDc1YTFkMTgzIG1hL2FzY2lpZG9jdG9yLWZpeGVzLW1vcmUgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDc0Y2M1NDdiMGYgbWgvcGFjay1wcm90b2NvbC1kb2MtZml4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBlZDMxODUxZmE2IGFiL2RvYy1taXNjLXR5cG9maXhlcyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYTcyNTZkZWJkNCBuZC9jaGVja291dC1tLWRvYy11cGRhdGUgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDNhOWUxYWQ3OGQganQvdDU1NTEtcHJvdG9jb2wtdjItZG9lcy1ub3QtaGF2ZS1oYWxmLWF1dGggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDBiOTE4Yjc1YWYgc2cvdDUzMTgtY2xlYW51cCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNjhlZDcxYjUzYyBjYi9kb2NvLW1vbm8gbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGEzNGRjYTI0NTEgbmQvaW50ZXJwcmV0LXRyYWlsZXJzLWRvY2ZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgY2Y3Yjg1N2E3NyBlbi9mYXN0LWltcG9ydC1wYXJzaW5nLWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgZmU2MWNjYmMzNSBwby9yZXJlcmUtZG9jLWZtdCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgZmZlYTAyNDhiZiBwby9kZXNjcmliZS1ub3QtbmVjZXNzYXJpbHktNyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgN2NiNzI4M2FkYiB0Zy9scy1maWxlcy1kZWJ1Zy1mb3JtYXQtZml4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBmNjRhMjFiZDgyIHR6L2RvYy1hcG9zdHJvcGhlLW5vLWxvbmdlci1uZWVkZWQgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGRiZTdiNDEwMTkganMvdDMzMDEtdW5icmVhay1ub3Rlcy10ZXN0IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBkODA4M2U0MTgwIGttL3QzMDAwLXJldGl0bGUgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDllNGNiY2NiZDcgdHovZ2l0LXN2bi1kb2MtbWFya3VwLWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgZGE5Y2E5NTVhNyBqay9scy1maWxlcy1kb2MtbWFya3VwLWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNjgwNGJhM2E1OCBjdy9kaWZmLWhpZ2hsaWdodCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMWE4Nzg3MTQ0ZCBuZC9zdWJtb2R1bGUtaGVscGVyLWluY29tcGxldGUtbGluZS1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGQ5ZWY1NzM4MzcgamsvYXBhY2hlLWxzYW4gbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGM4NzFmYmVlMmIganMvdDY1MDAtdXNlLXdpbmRvd3MtcGlkLW9uLW1pbmd3IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBjZTRjN2JmYzkwIGJsL3Q0MjUzLWV4aXQtY29kZS1mcm9tLWZvcm1hdC1wYXRjaCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMzk3YTQ2ZGI3OCBqcy90NTU4MC11bmMtYWx0ZXJuYXRlLXRlc3QgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGQ0OTA3NzIwYTIgY20vbm90ZXMtY29tbWVudC1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDlkZGUwNmRlMTMgY2IvaHR0cC1wdXNoLW51bGwtaW4tbWVzc2FnZS1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDRjNzg1YzBlZGMganMvcmViYXNlLWNvbmZpZy1iaXRmaXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDhlOWZlMTZjODcgZXMvZG9jLWdpdHN1Ym1vZHVsZXMtbWFya3VwIGxhdGVyIHRvIG1haW50KS4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yMi4xLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yMi4xLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MzI3NjJmCi0tLSAvZGV2L251bGwKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjIyLjEudHh0CkBAIC0wLDAgKzEsMTUwIEBACitHaXQgMi4yMi4xIFJlbGVhc2UgTm90ZXMKKz09PT09PT09PT09PT09PT09PT09PT09PQorCitGaXhlcyBzaW5jZSB2Mi4yMgorLS0tLS0tLS0tLS0tLS0tLS0KKworICogQSByZWxhdGl2ZSBwYXRobmFtZSBnaXZlbiB0byAiZ2l0IGluaXQgLS10ZW1wbGF0ZT08cGF0aD4gPHJlcG8+IgorICAgb3VnaHQgdG8gYmUgcmVsYXRpdmUgdG8gdGhlIGRpcmVjdG9yeSAiZ2l0IGluaXQiIGdldHMgaW52b2tlZCBpbiwKKyAgIGJ1dCBpdCBpbnN0ZWFkIHdhcyBtYWRlIHJlbGF0aXZlIHRvIHRoZSByZXBvc2l0b3J5LCB3aGljaCBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorCisgKiAiZ2l0IHdvcmt0cmVlIGFkZCIgdXNlZCB0byBmYWlsIHdoZW4gYW5vdGhlciB3b3JrdHJlZSBjb25uZWN0ZWQgdG8KKyAgIHRoZSBzYW1lIHJlcG9zaXRvcnkgd2FzIGNvcnJ1cHQsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogVGhlIG93bmVyc2hpcCBydWxlIGZvciB0aGUgZmlsZSBkZXNjcmlwdG9yIHRvIGZhc3QtaW1wb3J0IHJlbW90ZQorICAgYmFja2VuZCB3YXMgbWl4ZWQgdXAsIGxlYWRpbmcgdG8gdW5yZWxhdGVkIGZpbGUgZGVzY3JpcHRvciBnZXR0aW5nCisgICBjbG9zZWQsIHdoaWNoIGhhcyBiZWVuIGZpeGVkLgorCisgKiAiZ2l0IHVwZGF0ZS1zZXJ2ZXItaW5mbyIgdXNlZCB0byBsZWF2ZSBzdGFsZSBwYWNrZmlsZXMgaW4gaXRzCisgICBvdXRwdXQsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogVGhlIHNlcnZlciBzaWRlIHN1cHBvcnQgZm9yICJnaXQgZmV0Y2giIHVzZWQgdG8gc2hvdyBpbmNvcnJlY3QKKyAgIHZhbHVlIGZvciB0aGUgSEVBRCBzeW1ib2xpYyByZWYgd2hlbiB0aGUgbmFtZXNwYWNlIGZlYXR1cmUgaXMgaW4KKyAgIHVzZSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiAiZ2l0IGFtIC1pIC0tcmVzb2x2ZWQiIHNlZ2ZhdWx0ZWQgYWZ0ZXIgdHJ5aW5nIHRvIHNlZSBhIGNvbW1pdCBhcworICAgaWYgaXQgd2VyZSBhIHRyZWUsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogImdpdCBidW5kbGUgdmVyaWZ5IiBuZWVkcyB0byBzZWUgaWYgcHJlcmVxdWlzaXRlIG9iamVjdHMgZXhpc3QgaW4KKyAgIHRoZSByZWNlaXZpbmcgcmVwb3NpdG9yeSwgYnV0IHRoZSBjb21tYW5kIGRpZCBub3QgY2hlY2sgaWYgd2UgYXJlCisgICBpbiBhIHJlcG9zaXRvcnkgdXBmcm9udCwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiAiZ2l0IG1lcmdlIC0tc3F1YXNoIiBpcyBkZXNpZ25lZCB0byB1cGRhdGUgdGhlIHdvcmtpbmcgdHJlZSBhbmQgdGhlCisgICBpbmRleCB3aXRob3V0IGNyZWF0aW5nIHRoZSBjb21taXQsIGFuZCB0aGlzIGNhbm5vdCBiZSBjb3VudGVybWFuZGVkCisgICBieSBhZGRpbmcgdGhlICItLWNvbW1pdCIgb3B0aW9uOyB0aGUgY29tbWFuZCBub3cgcmVmdXNlcyB0byB3b3JrCisgICB3aGVuIGJvdGggb3B0aW9ucyBhcmUgZ2l2ZW4uCisKKyAqIFRoZSBkYXRhIGNvbGxlY3RlZCBieSBmc21vbml0b3Igd2FzIG5vdCBwcm9wZXJseSB3cml0dGVuIGJhY2sgdG8KKyAgIHRoZSBvbi1kaXNrIGluZGV4IGZpbGUsIGJyZWFraW5nIHQ3NTE5IHRlc3RzIG9jY2FzaW9uYWxseSwgd2hpY2gKKyAgIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogVXBkYXRlIHRvIFVuaWNvZGUgMTIuMSB3aWR0aCB0YWJsZS4KKworICogVGhlIGNvbW1hbmQgbGluZSB0byBpbnZva2UgYSAiZ2l0IGNhdC1maWxlIiBjb21tYW5kIGZyb20gaW5zaWRlCisgICAiZ2l0IHA0IiB3YXMgbm90IHByb3Blcmx5IHF1b3RlZCB0byBwcm90ZWN0IGEgY2FyZXQgYW5kIHJ1bm5pbmcgYQorICAgYnJva2VuIGNvbW1hbmQgb24gV2luZG93cywgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiAiZ2l0IHJlcXVlc3QtcHVsbCIgbGVhcm5lZCB0byB3YXJuIHdoZW4gdGhlIHJlZiB3ZSBhc2sgdGhlbSB0byBwdWxsCisgICBmcm9tIGluIHRoZSBsb2NhbCByZXBvc2l0b3J5IGFuZCBpbiB0aGUgcHVibGlzaGVkIHJlcG9zaXRvcnkgYXJlCisgICBkaWZmZXJlbnQuCisKKyAqIFdoZW4gY3JlYXRpbmcgYSBwYXJ0aWFsIGNsb25lLCB0aGUgb2JqZWN0IGZpbHRlcmluZyBjcml0ZXJpYSBpcworICAgcmVjb3JkZWQgZm9yIHRoZSBvcmlnaW4gb2YgdGhlIGNsb25lLCBidXQgdGhpcyBpbmNvcnJlY3RseSB1c2VkIGEKKyAgIGhhcmRjb2RlZCBuYW1lICJvcmlnaW4iIHRvIG5hbWUgdGhhdCByZW1vdGU7IGl0IGhhcyBiZWVuIGNvcnJlY3RlZAorICAgdG8gaG9ub3IgdGhlICItLW9yaWdpbiA8bmFtZT4iIG9wdGlvbi4KKworICogImdpdCBmZXRjaCIgaW50byBhIGxhenkgY2xvbmUgZm9yZ290IHRvIGZldGNoIGJhc2Ugb2JqZWN0cyB0aGF0IGFyZQorICAgbmVjZXNzYXJ5IHRvIGNvbXBsZXRlIGRlbHRhIGluIGEgdGhpbiBwYWNrZmlsZSwgd2hpY2ggaGFzIGJlZW4KKyAgIGNvcnJlY3RlZC4KKworICogVGhlIGZpbHRlcl9kYXRhIHVzZWQgaW4gdGhlIGxpc3Qtb2JqZWN0cy1maWx0ZXIgKHdoaWNoIG1hbmFnZXMgYQorICAgbGF6aWx5IHNwYXJzZSBjbG9uZSByZXBvc2l0b3J5KSBkaWQgbm90IHVzZSB0aGUgZHluYW1pYyBhcnJheSBBUEkKKyAgIGNvcnJlY3RseS0tLSducicgaXMgc3VwcG9zZWQgdG8gcG9pbnQgYXQgb25lIHBhc3QgdGhlIGxhc3QgZWxlbWVudAorICAgb2YgdGhlIGFycmF5IGluIHVzZS4gIFRoaXMgaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBUaGUgZGVzY3JpcHRpb24gYWJvdXQgc2xhc2hlcyBpbiBnaXRpZ25vcmUgcGF0dGVybnMgKHVzZWQgdG8KKyAgIGluZGljYXRlIHRoaW5ncyBsaWtlICJhbmNob3JlZCB0byB0aGlzIGxldmVsIG9ubHkiIGFuZCAib25seQorICAgbWF0Y2hlcyBkaXJlY3RvcmllcyIpIGhhcyBiZWVuIHJldmFtcGVkLgorCisgKiBUaGUgVVJMIGRlY29kaW5nIGNvZGUgaGFzIGJlZW4gdXBkYXRlZCB0byBhdm9pZCBnb2luZyBwYXN0IHRoZSBlbmQKKyAgIG9mIHRoZSBzdHJpbmcgd2hpbGUgcGFyc2luZyAlLTxoZXg+LTxoZXg+IHNlcXVlbmNlLgorCisgKiBUaGUgbGlzdCBvZiBmb3ItZWFjaCBsaWtlIG1hY3JvcyB1c2VkIGJ5IGNsYW5nLWZvcm1hdCBoYXMgYmVlbgorICAgdXBkYXRlZC4KKworICogImdpdCBwdXNoIC0tYXRvbWljIiB0aGF0IGdvZXMgb3ZlciB0aGUgdHJhbnNwb3J0LWhlbHBlciAobmFtZWx5LAorICAgdGhlIHNtYXJ0IGh0dHAgdHJhbnNwb3J0KSBmYWlsZWQgdG8gcHJldmVudCByZWZzIHRvIGJlIHB1c2hlZCB3aGVuCisgICBpdCBjYW4gbG9jYWxseSB0ZWxsIHRoYXQgb25lIG9mIHRoZSByZWYgdXBkYXRlIHdpbGwgZmFpbCB3aXRob3V0CisgICBoYXZpbmcgdG8gY29uc3VsdCB0aGUgb3RoZXIgZW5kLCB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqICJnaXQgY2xlYW4iIHNpbGVudGx5IHNraXBwZWQgYSBwYXRoIHdoZW4gaXQgY2Fubm90IGxzdGF0KCkgaXQ7IG5vdworICAgaXQgZ2l2ZXMgYSB3YXJuaW5nLgorCisgKiBBIGNvZGVwYXRoIHRoYXQgcmVhZHMgZnJvbSBHUEcgZm9yIHNpZ25lZCBvYmplY3QgdmVyaWZpY2F0aW9uIHJlYWQKKyAgIHBhc3QgdGhlIGVuZCBvZiBhbGxvY2F0ZWQgYnVmZmVyLCB3aGljaCBoYXMgYmVlbiBmaXhlZC4KKworICogImdpdCBybSIgdG8gcmVzb2x2ZSBhIGNvbmZsaWN0ZWQgcGF0aCBsZWFrZWQgYW4gaW50ZXJuYWwgbWVzc2FnZQorICAgIm5lZWRzIG1lcmdlIiBiZWZvcmUgYWN0dWFsbHkgcmVtb3ZpbmcgdGhlIHBhdGgsIHdoaWNoIHdhcworICAgY29uZnVzaW5nLiAgVGhpcyBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqIFRoZSAiZ2l0IGNsb25lIiBkb2N1bWVudGF0aW9uIHJlZmVycyB0byBjb21tYW5kIGxpbmUgb3B0aW9ucyBpbiBpdHMKKyAgIGRlc2NyaXB0aW9uIGluIHRoZSBzaG9ydCBmb3JtOyB0aGV5IGhhdmUgYmVlbiByZXBsYWNlZCB3aXRoIGxvbmcKKyAgIGZvcm1zIHRvIG1ha2UgdGhlbSBtb3JlIHJlY29nbmlzYWJsZS4KKworICogVGhlIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgcmViYXNlLnJlc2NoZWR1bGVGYWlsZWRFeGVjIHNob3VsZCBiZQorICAgZWZmZWN0aXZlIG9ubHkgd2hpbGUgcnVubmluZyBhbiBpbnRlcmFjdGl2ZSByZWJhc2UgYW5kIHNob3VsZCBub3QKKyAgIGFmZmVjdCBhbnl0aGluZyB3aGVuIHJ1bm5pbmcgYSBub24taW50ZXJhY3RpdmUgb25lLCB3aGljaCB3YXMgbm90CisgICB0aGUgY2FzZS4gIFRoaXMgaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiAiZ2l0IHN1Ym1vZHVsZSBmb3JlYWNoIiBkaWQgbm90IHByb3RlY3QgY29tbWFuZCBsaW5lIG9wdGlvbnMgcGFzc2VkCisgICB0byB0aGUgY29tbWFuZCB0byBiZSBydW4gaW4gZWFjaCBzdWJtb2R1bGUgY29ycmVjdGx5LCB3aGVuIHRoZQorICAgIi0tcmVjdXJzaXZlIiBvcHRpb24gd2FzIGluIHVzZS4KKworICogVXNlICJFcmFzZSBpbiBMaW5lIiBDU0kgc2VxdWVuY2UgdGhhdCBpcyBhbHJlYWR5IHVzZWQgaW4gdGhlIGVkaXRvcgorICAgc3VwcG9ydCB0byBjbGVhciBjcnVmdCBpbiB0aGUgcHJvZ3Jlc3Mgb3V0cHV0LgorCisgKiBUaGUgY29kZXBhdGggdG8gY29tcHV0ZSBkZWx0YSBpc2xhbmRzIHVzZWQgdG8gc3BldyBwcm9ncmVzcyBvdXRwdXQKKyAgIHdpdGhvdXQgZ2l2aW5nIHRoZSBjYWxsZXJzIGFueSB3YXkgdG8gc3F1ZWxjaCBpdCwgd2hpY2ggaGFzIGJlZW4KKyAgIGZpeGVkLgorCisgKiBUaGUgY29kZSB0byBwYXJzZSBzY2FsZWQgbnVtYmVycyBvdXQgb2YgY29uZmlndXJhdGlvbiBmaWxlcyBoYXMKKyAgIGJlZW4gbWFkZSBtb3JlIHJvYnVzdCBhbmQgYWxzbyBlYXNpZXIgdG8gZm9sbG93LgorCisgKiBBbiBpbmNvcnJlY3QgbGlzdCBvZiBvcHRpb25zIHdhcyBjYWNoZWQgYWZ0ZXIgY29tbWFuZCBsaW5lCisgICBjb21wbGV0aW9uIGZhaWxlZCAoZS5nLiB0cnlpbmcgdG8gY29tcGxldGUgYSBjb21tYW5kIHRoYXQgcmVxdWlyZXMKKyAgIGEgcmVwb3NpdG9yeSBvdXRzaWRlIG9uZSksIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogImdpdCByZWJhc2UgLS1hYm9ydCIgdXNlZCB0byBsZWF2ZSByZWZzL3Jld3JpdHRlbi8gd2hlbiBjb25jbHVkaW5nCisgICAiZ2l0IHJlYmFzZSAtciIsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogImdpdCBzdGFzaCBzaG93IDIzIiB1c2VkIHRvIHdvcmssIGJ1dCBubyBtb3JlIGFmdGVyIGdldHRpbmcKKyAgIHJld3JpdHRlbiBpbiBDOyB0aGlzIHJlZ3Jlc3Npb24gaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiAiZ2l0IGludGVycHJldC10cmFpbGVycyIgYWx3YXlzIHRyZWF0ZWQgJyMnIGFzIHRoZSBjb21tZW50CisgICBjaGFyYWN0ZXIsIHJlZ2FyZGxlc3Mgb2YgY29yZS5jb21tZW50Q2hhciBzZXR0aW5nLCB3aGljaCBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorCisgKiBDb2RlIGNsZWFuLXVwIHRvIGF2b2lkIHNpZ25lZCBpbnRlZ2VyIG92ZXJsYXBzIGR1cmluZyBiaW5hcnkgc2VhcmNoLgorCisgKiAiZ2l0IGNoZWNrb3V0IC1wIiBuZWVkcyB0byBzZWxlY3RpdmVseSBhcHBseSBhIHBhdGNoIGluIHJldmVyc2UsCisgICB3aGljaCBkaWQgbm90IHdvcmsgd2VsbC4KKworICogVGhlIGNvbW1pdC1ncmFwaCBmaWxlIGlzIG5vdyBwYXJ0IG9mIHRoZSAiZmlsZXMgdGhhdCB0aGUgcnVudGltZQorICAgbWF5IGtlZXAgb3BlbiBmaWxlIGRlc2NyaXB0b3JzIG9uLCBhbGwgb2Ygd2hpY2ggd291bGQgbmVlZCB0byBiZQorICAgY2xvc2VkIHdoZW4gZG9uZSB3aXRoIHRoZSBvYmplY3Qgc3RvcmUiLCBhbmQgdGhlIGZpbGUgZGVzY3JpcHRvciB0bworICAgYW4gZXhpc3RpbmcgY29tbWl0LWdyYXBoIGZpbGUgbm93IGlzIGNsb3NlZCBiZWZvcmUgImdjIiBmaW5hbGl6ZXMgYQorICAgbmV3IGluc3RhbmNlIHRvIHJlcGxhY2UgaXQuCisKKyAqIENvZGUgcmVzdHJ1Y3R1cmluZyBkdXJpbmcgMi4yMCBwZXJpb2QgYnJva2UgZmV0Y2hpbmcgdGFncyB2aWEKKyAgICJpbXBvcnQiIGJhc2VkIHRyYW5zcG9ydHMuCisKKyAqIFdlIGhhdmUgYmVlbiB0cnlpbmcgb3V0IGEgZmV3IGxhbmd1YWdlIGZlYXR1cmVzIG91dHNpZGUgYzg5OyB0aGUKKyAgIGNvZGluZyBndWlkZWxpbmVzIGRvY3VtZW50IGRpZCBub3QgdGFsayBhYm91dCB0aGVtIGFuZCBpbnN0ZWFkIGhhZAorICAgYSBibGFua2V0IGJhbiBhZ2FpbnN0IHRoZW0uCisKKyAqIFRoZSBpbnRlcm5hbCBkaWZmIG1hY2hpbmVyeSBjYW4gYmUgbWFkZSB0byByZWFkIG91dCBvZiBib3VuZHMgd2hpbGUKKyAgIGxvb2tpbmcgZm9yIC0tZnVuY2lvbi1jb250ZXh0IGxpbmUgaW4gYSBjb3JuZXIgY2FzZSwgd2hpY2ggaGFzIGJlZW4KKyAgIGNvcnJlY3RlZC4KKworQWxzbyBjb250YWlucyB2YXJpb3VzIGRvY3VtZW50YXRpb24gdXBkYXRlcywgY29kZSBjbGVhbi11cHMgYW5kIG1pbm9yIGZpeHVwcy4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yMi4yLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yMi4yLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NDBhMjNmCi0tLSAvZGV2L251bGwKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjIyLjIudHh0CkBAIC0wLDAgKzEsOCBAQAorR2l0IHYyLjIyLjIgUmVsZWFzZSBOb3RlcworPT09PT09PT09PT09PT09PT09PT09PT09PQorCitUaGlzIHJlbGVhc2UgbWVyZ2VzIHVwIHRoZSBmaXhlcyB0aGF0IGFwcGVhciBpbiB2Mi4xNC42LCB2Mi4xNS40LAordjIuMTcuMywgdjIuMjAuMiBhbmQgaW4gdjIuMjEuMSwgYWRkcmVzc2luZyB0aGUgc2VjdXJpdHkgaXNzdWVzCitDVkUtMjAxOS0xMzQ4LCBDVkUtMjAxOS0xMzQ5LCBDVkUtMjAxOS0xMzUwLCBDVkUtMjAxOS0xMzUxLAorQ1ZFLTIwMTktMTM1MiwgQ1ZFLTIwMTktMTM1MywgQ1ZFLTIwMTktMTM1NCwgQ1ZFLTIwMTktMTM4NywgYW5kCitDVkUtMjAxOS0xOTYwNDsgc2VlIHRoZSByZWxlYXNlIG5vdGVzIGZvciB0aG9zZSB2ZXJzaW9ucyBmb3IgZGV0YWlscy4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yMy4wLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yMy4wLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lM2M0ZTc4Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjIzLjAudHh0CkBAIC0wLDAgKzEsMzQ4IEBACitHaXQgMi4yMyBSZWxlYXNlIE5vdGVzCis9PT09PT09PT09PT09PT09PT09PT09CisKK1VwZGF0ZXMgc2luY2UgdjIuMjIKKy0tLS0tLS0tLS0tLS0tLS0tLS0KKworQmFja3dhcmQgY29tcGF0aWJpbGl0eSBub3RlCisKKyAqIFRoZSAiLS1iYXNlIiBvcHRpb24gb2YgImZvcm1hdC1wYXRjaCIgY29tcHV0ZWQgdGhlIHBhdGNoLWlkcyBmb3IKKyAgIHByZXJlcXVpc2l0ZSBwYXRjaGVzIGluIGFuIHVuc3RhYmxlIHdheSwgd2hpY2ggaGFzIGJlZW4gdXBkYXRlZCB0bworICAgY29tcHV0ZSBpbiBhIHdheSB0aGF0IGlzIGNvbXBhdGlibGUgd2l0aCAiZ2l0IHBhdGNoLWlkIC0tc3RhYmxlIi4KKworICogVGhlICJnaXQgbG9nIiBjb21tYW5kIGJ5IGRlZmF1bHQgYmVoYXZlcyBhcyBpZiB0aGUgLS1tYWlsbWFwIG9wdGlvbgorICAgd2FzIGdpdmVuLgorCisKK1VJLCBXb3JrZmxvd3MgJiBGZWF0dXJlcworCisgKiBUaGUgImdpdCBmYXN0LWV4cG9ydC9pbXBvcnQiIHBhaXIgaGFzIGJlZW4gdGF1Z2h0IHRvIGhhbmRsZSBjb21taXRzCisgICB3aXRoIGxvZyBtZXNzYWdlcyBpbiBlbmNvZGluZyBvdGhlciB0aGFuIFVURi04IGJldHRlci4KKworICogSW4gcmVjZW50IHZlcnNpb25zIG9mIEdpdCwgcGVyLXdvcmt0cmVlIHJlZnMgYXJlIGV4cG9zZWQgaW4KKyAgIHJlZnMvd29ya3RyZWVzLzx3dG5hbWU+LyBoaWVyYXJjaHksIHdoaWNoIG1lYW5zIHRoYXQgd29ya3RyZWUgbmFtZXMKKyAgIG11c3QgYmUgYSB2YWxpZCByZWZuYW1lIGNvbXBvbmVudC4gIFRoZSBjb2RlIG5vdyBzYW5pdGl6ZXMgdGhlIG5hbWVzCisgICBnaXZlbiB0byB3b3JrdHJlZXMsIHRvIG1ha2Ugc3VyZSB0aGVzZSByZWZzIGFyZSB3ZWxsLWZvcm1lZC4KKworICogImdpdCBtZXJnZSIgbGVhcm5lZCAiLS1xdWl0IiBvcHRpb24gdGhhdCBjbGVhbnMgdXAgdGhlIGluLXByb2dyZXNzCisgICBtZXJnZSB3aGlsZSBsZWF2aW5nIHRoZSB3b3JraW5nIHRyZWUgYW5kIHRoZSBpbmRleCBzdGlsbCBpbiBhIG1lc3MuCisKKyAqICJnaXQgZm9ybWF0LXBhdGNoIiBsZWFybnMgYSBjb25maWd1cmF0aW9uIHRvIHNldCB0aGUgZGVmYXVsdCBmb3IKKyAgIGl0cyAtLW5vdGVzPTxyZWY+IG9wdGlvbi4KKworICogVGhlIGNvZGUgdG8gc2hvdyBhcmdzIHdpdGggcG90ZW50aWFsIHR5cG8gdGhhdCBjYW5ub3QgYmUKKyAgIGludGVycHJldGVkIGFzIGEgY29tbWl0LWlzaCBoYXMgYmVlbiBpbXByb3ZlZC4KKworICogImdpdCBjbG9uZSAtLXJlY3Vyc2Utc3VibW9kdWxlcyIgbGVhcm5lZCB0byBzZXQgdXAgdGhlIHN1Ym1vZHVsZXMKKyAgIHRvIGlnbm9yZSBjb21taXQgb2JqZWN0IG5hbWVzIHJlY29yZGVkIGluIHRoZSBzdXBlcnByb2plY3QgZ2l0bGluaworICAgYW5kIGluc3RlYWQgdXNlIHRoZSBjb21taXRzIHRoYXQgaGFwcGVuIHRvIGJlIGF0IHRoZSB0aXAgb2YgdGhlCisgICByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMgZnJvbSB0aGUgZ2V0LWdvLCBieSBwYXNzaW5nIHRoZSBuZXcKKyAgICItLXJlbW90ZS1zdWJtb2R1bGVzIiBvcHRpb24uCisKKyAqIFRoZSBwYXR0ZXJuICJnaXQgZGlmZi9ncmVwIiB1c2UgdG8gZXh0cmFjdCBmdW5jbmFtZSBhbmQgd29yZHMKKyAgIGJvdW5kYXJ5IGZvciBNYXRsYWIgaGFzIGJlZW4gZXh0ZW5kIHRvIGNvdmVyIE9jdGF2ZSwgd2hpY2ggaXMgbW9yZQorICAgb3IgbGVzcyBlcXVpdmFsZW50LgorCisgKiAiZ2l0IGhlbHAgZ2l0IiB3YXMgaGFyZCB0byBkaXNjb3ZlciAod2VsbCwgYXQgbGVhc3QgZm9yIHNvbWUKKyAgIHBlb3BsZSkuCisKKyAqIFRoZSBwYXR0ZXJuICJnaXQgZGlmZi9ncmVwIiB1c2UgdG8gZXh0cmFjdCBmdW5jbmFtZSBhbmQgd29yZHMKKyAgIGJvdW5kYXJ5IGZvciBSdXN0IGhhcyBiZWVuIGFkZGVkLgorCisgKiAiZ2l0IHN0YXR1cyIgY2FuIGJlIHRvbGQgYSBub24tc3RhbmRhcmQgZGVmYXVsdCB2YWx1ZSBmb3IgdGhlCisgICAiLS1bbm8tXWFoZWFkLWJlaGluZCIgb3B0aW9uIHdpdGggYSBuZXcgY29uZmlndXJhdGlvbiB2YXJpYWJsZQorICAgc3RhdHVzLmFoZWFkQmVoaW5kLgorCisgKiAiZ2l0IGZldGNoIiBhbmQgImdpdCBwdWxsIiByZXBvcnRzIHdoZW4gYSBmZXRjaCByZXN1bHRzIGluCisgICBub24tZmFzdC1mb3J3YXJkIHVwZGF0ZXMgdG8gbGV0IHRoZSB1c2VyIG5vdGljZSB1bnVzdWFsIHNpdHVhdGlvbi4KKyAgIFRoZSBjb21tYW5kcyBsZWFybmVkICItLW5vLXNob3ctZm9yY2VkLXVwZGF0ZXMiIG9wdGlvbiB0byBkaXNhYmxlCisgICB0aGlzIHNhZmV0eSBmZWF0dXJlLgorCisgKiBUd28gbmV3IGNvbW1hbmRzICJnaXQgc3dpdGNoIiBhbmQgImdpdCByZXN0b3JlIiBhcmUgaW50cm9kdWNlZCB0bworICAgc3BsaXQgImNoZWNraW5nIG91dCBhIGJyYW5jaCB0byB3b3JrIG9uIGFkdmFuY2luZyBpdHMgaGlzdG9yeSIgYW5kCisgICAiY2hlY2tpbmcgb3V0IHBhdGhzIG91dCBvZiB0aGUgaW5kZXggYW5kL29yIGEgdHJlZS1pc2ggdG8gd29yayBvbgorICAgYWR2YW5jaW5nIHRoZSBjdXJyZW50IGhpc3RvcnkiIG91dCBvZiB0aGUgc2luZ2xlICJnaXQgY2hlY2tvdXQiCisgICBjb21tYW5kLgorCisgKiAiZ2l0IGJyYW5jaCAtLWxpc3QiIGxlYXJuZWQgdG8gYWx3YXlzIG91dHB1dCB0aGUgZGV0YWNoZWQgSEVBRCBhcworICAgdGhlIGZpcnN0IGl0ZW0gKHdoZW4gdGhlIEhFQUQgaXMgZGV0YWNoZWQsIG9mIGNvdXJzZSksIHJlZ2FyZGxlc3MKKyAgIG9mIHRoZSBsb2NhbGUuCisKKyAqIFRoZSBjb25kaXRpb25hbCBpbmNsdXNpb24gbWVjaGFuaXNtIGxlYXJuZWQgdG8gYmFzZSB0aGUgY2hvaWNlIG9uCisgICB0aGUgYnJhbmNoIHRoZSBIRUFEIGN1cnJlbnRseSBpcyBvbi4KKworICogImdpdCByZXYtbGlzdCAtLW9iamVjdHMiIGxlYXJuZWQgdGhlICItLW5vLW9iamVjdC1uYW1lcyIgb3B0aW9uIHRvCisgICBzcXVlbGNoIHRoZSBwYXRoIHRvIHRoZSBvYmplY3QgdGhhdCBpcyB1c2VkIGFzIGEgZ3JvdXBpbmcgaGludCBmb3IKKyAgIHBhY2stb2JqZWN0cy4KKworICogQSBuZXcgdGFnLmdwZ1NpZ24gY29uZmlndXJhdGlvbiB2YXJpYWJsZSB0dXJucyAiZ2l0IHRhZyAtYSIgaW50bworICAgImdpdCB0YWcgLXMiLgorCisgKiAiZ2l0IG11bHRpLXBhY2staW5kZXgiIGxlYXJuZWQgZXhwaXJlIGFuZCByZXBhY2sgc3ViY29tbWFuZHMuCisKKyAqICJnaXQgYmxhbWUiIGxlYXJuZWQgdG8gImlnbm9yZSIgY29tbWl0cyBpbiB0aGUgaGlzdG9yeSwgd2hvc2UKKyAgIGVmZmVjdHMgKGFzIHdlbGwgYXMgdGhlaXIgcHJlc2VuY2UpIGdldCBpZ25vcmVkLgorCisgKiAiZ2l0IGNoZXJyeS1waWNrL3JldmVydCIgbGVhcm5lZCBhIG5ldyAiLS1za2lwIiBhY3Rpb24uCisKKyAqIFRoZSB0aXBzIG9mIHJlZnMgZnJvbSB0aGUgYWx0ZXJuYXRlIG9iamVjdCBzdG9yZSBjYW4gYmUgdXNlZCBhcworICAgc3RhcnRpbmcgcG9pbnQgZm9yIHJlYWNoYWJpbGl0eSBjb21wdXRhdGlvbiBub3cuCisKKyAqIEV4dHJhIGJsYW5rIGxpbmVzIGluICJnaXQgc3RhdHVzIiBvdXRwdXQgaGF2ZSBiZWVuIHJlZHVjZWQuCisKKyAqIFRoZSBjb21taXRzIGluIGEgcmVwb3NpdG9yeSBjYW4gYmUgZGVzY3JpYmVkIGJ5IG11bHRpcGxlCisgICBjb21taXQtZ3JhcGggZmlsZXMgbm93LCB3aGljaCBhbGxvd3MgdGhlIGNvbW1pdC1ncmFwaCBmaWxlcyB0byBiZQorICAgdXBkYXRlZCBpbmNyZW1lbnRhbGx5LgorCisgKiAiZ2l0IHJhbmdlLWRpZmYiIG91dHB1dCBoYXMgYmVlbiB0d2Vha2VkIGZvciBlYXNpZXIgaWRlbnRpZmljYXRpb24KKyAgIG9mIHdoaWNoIHBhcnQgb2Ygd2hhdCBmaWxlIHRoZSBwYXRjaCBzaG93biBpcyBhYm91dC4KKworCitQZXJmb3JtYW5jZSwgSW50ZXJuYWwgSW1wbGVtZW50YXRpb24sIERldmVsb3BtZW50IFN1cHBvcnQgZXRjLgorCisgKiBVcGRhdGUgc3VwcG9ydGluZyBwYXJ0cyBvZiAiZ2l0IHJlYmFzZSIgdG8gcmVtb3ZlIGNvZGUgdGhhdCBzaG91bGQKKyAgIG5vIGxvbmdlciBiZSB1c2VkLgorCisgKiBEZXZlbG9wZXIgc3VwcG9ydCB0byBlbXVsYXRlIHVuc2F0aXNmaWVkIHByZXJlcXVpc2l0ZXMgaW4gdGVzdHMgdG8KKyAgIGVuc3VyZSB0aGF0IHRoZSByZW1haW5kZXIgb2YgdGhlIHRlc3RzIHN0aWxsIHN1Y2NlZWRzIHdoZW4gdGVzdHMKKyAgIHdpdGggcHJlcmVxdWlzaXRlcyBhcmUgc2tpcHBlZC4KKworICogImdpdCB1cGRhdGUtc2VydmVyLWluZm8iIGxlYXJuZWQgbm90IHRvIHJld3JpdGUgdGhlIGZpbGUgd2l0aCB0aGUKKyAgIHNhbWUgY29udGVudHMuCisKKyAqIFRoZSB3YXkgb2Ygc3BlY2lmeWluZyB0aGUgcGF0aCB0byBmaW5kIGR5bmFtaWMgbGlicmFyaWVzIGF0IHJ1bnRpbWUKKyAgIGhhcyBiZWVuIHNpbXBsaWZpZWQuICBUaGUgb2xkIGRlZmF1bHQgdG8gcGFzcyAtUi9wYXRoL3RvL2RpciBoYXMgYmVlbgorICAgcmVwbGFjZWQgd2l0aCB0aGUgbmV3IGRlZmF1bHQgdG8gcGFzcyAtV2wsLXJwYXRoLC9wYXRoL3RvL2RpciwKKyAgIHdoaWNoIGlzIHRoZSBtb3JlIHJlY2VudCBHQ0MgdXNlcy4gIFRob3NlIHdobyBuZWVkIHRvIGJ1aWxkIHdpdGggYW4KKyAgIG9sZCBHQ0MgY2FuIHN0aWxsIHVzZSAiQ0NfTERfRFlOUEFUSD0tUiIKKworICogUHJlcGFyZSB1c2Ugb2YgcmVhY2hhYmlsaXR5IGluZGV4IGluIHRvcG9sb2dpY2FsIHdhbGtlciB0aGF0IHdvcmtzCisgICBvbiBhIHJhbmdlIChBLi5CKS4KKworICogQSBuZXcgdHV0b3JpYWwgdGFyZ2V0aW5nIHNwZWNpZmljYWxseSBhc3BpcmluZyBnaXQtY29yZQorICAgZGV2ZWxvcGVycyBoYXMgYmVlbiBhZGRlZC4KKworICogQXV0by1kZXRlY3QgaG93IHRvIHRlbGwgSFAtVVggYUNDIHdoZXJlIHRvIHVzZSBkeW5hbWljYWxseSBsaW5rZWQKKyAgIGxpYnJhcmllcyBmcm9tIGF0IHJ1bnRpbWUuCisKKyAqICJnaXQgbWVyZ2V0b29sIiBhbmQgaXRzIHRlc3RzIG5vdyBzcGF3biBmZXdlciBzdWJwcm9jZXNzZXMuCisKKyAqIERldiBzdXBwb3J0IHVwZGF0ZSB0byBoZWxwIHRyYWNpbmcgb3V0IHRlc3RzLgorCisgKiBTdXBwb3J0IHRvIGJ1aWxkIHdpdGggTVNWQyBoYXMgYmVlbiB1cGRhdGVkLgorCisgKiAiZ2l0IGZldGNoIiB0aGF0IGdyYWJzIGZyb20gYSBncm91cCBvZiByZW1vdGVzIGxlYXJuZWQgdG8gcnVuIHRoZQorICAgYXV0by1nYyBvbmx5IG9uY2UgYXQgdGhlIHZlcnkgZW5kLgorCisgKiBBIGhhbmRmdWwgb2YgV2luZG93cyBidWlsZCBwYXRjaGVzIGhhdmUgYmVlbiB1cHN0cmVhbWVkLgorCisgKiBUaGUgY29kZSB0byByZWFkIHN0YXRlIGZpbGVzIHVzZWQgYnkgdGhlIHNlcXVlbmNlciBtYWNoaW5lcnkgZm9yCisgICAiZ2l0IHN0YXR1cyIgaGFzIGJlZW4gbWFkZSBtb3JlIHJvYnVzdCBhZ2FpbnN0IGEgY29ycnVwdCBvciBzdGFsZQorICAgc3RhdGUgZmlsZXMuCisKKyAqICJnaXQgZm9yLWVhY2gtcmVmIiB3aXRoIG11bHRpcGxlIHBhdHRlcm5zIGhhdmUgYmVlbiBvcHRpbWl6ZWQuCisKKyAqIFRoZSB0cmVlLXdhbGsgQVBJIGxlYXJuZWQgdG8gcGFzcyBhbiBpbi1jb3JlIHJlcG9zaXRvcnkKKyAgIGluc3RhbmNlIHRocm91Z2hvdXQgbW9yZSBjb2RlcGF0aHMuCisKKyAqIFdoZW4gb25lIHN0ZXAgaW4gbXVsdGkgc3RlcCBjaGVycnktcGljayBvciByZXZlcnQgaXMgcmVzZXQgb3IKKyAgIGNvbW1pdHRlZCwgdGhlIGNvbW1hbmQgbGluZSBwcm9tcHQgc2NyaXB0IGZhaWxlZCB0byBub3RpY2UgdGhlCisgICBjdXJyZW50IHN0YXR1cywgd2hpY2ggaGFzIGJlZW4gaW1wcm92ZWQuCisKKyAqIE1hbnkgR0lUX1RFU1RfKiBlbnZpcm9ubWVudCB2YXJpYWJsZXMgY29udHJvbCB2YXJpb3VzIGFzcGVjdHMgb2YKKyAgIGhvdyBvdXIgdGVzdHMgYXJlIHJ1biwgYnV0IGEgZmV3IGZvbGxvd2VkICJub24tZW1wdHkgaXMgdHJ1ZSwgZW1wdHkKKyAgIG9yIHVuc2V0IGlzIGZhbHNlIiB3aGlsZSBvdGhlcnMgZm9sbG93ZWQgdGhlIHVzdWFsICJ0aGVyZSBhcmUgYSBmZXcKKyAgIHdheXMgdG8gc3BlbGwgdHJ1ZSwgbGlrZSB5ZXMsIG9uLCBldGMuLCBhbmQgYWxzbyB3YXlzIHRvIHNwZWxsCisgICBmYWxzZSwgbGlrZSBubywgb2ZmLCBldGMuIiBjb252ZW50aW9uLgorCisgKiBBZGp1c3QgdGhlIGRpci1pdGVyYXRvciBBUEkgYW5kIGFwcGx5IGl0IHRvIHRoZSBsb2NhbCBjbG9uZQorICAgb3B0aW1pemF0aW9uIGNvZGVwYXRoLgorCisgKiBXZSBoYXZlIGJlZW4gdHJ5aW5nIG91dCBhIGZldyBsYW5ndWFnZSBmZWF0dXJlcyBvdXRzaWRlIGM4OTsgdGhlCisgICBjb2RpbmcgZ3VpZGVsaW5lcyBkb2N1bWVudCBkaWQgbm90IHRhbGsgYWJvdXQgdGhlbSBhbmQgaW5zdGVhZCBoYWQKKyAgIGEgYmxhbmtldCBiYW4gYWdhaW5zdCB0aGVtLgorCisgKiBBIHRlc3QgaGVscGVyIGhhcyBiZWVuIGludHJvZHVjZWQgdG8gb3B0aW1pemUgcHJlcGFyYXRpb24gb2YgdGVzdAorICAgcmVwb3NpdG9yaWVzIHdpdGggbWFueSBzaW1wbGUgY29tbWl0cywgYW5kIGEgaGFuZGZ1bCBvZiB0ZXN0CisgICBzY3JpcHRzIGhhdmUgYmVlbiB1cGRhdGVkIHRvIHVzZSBpdC4KKworCitGaXhlcyBzaW5jZSB2Mi4yMgorLS0tLS0tLS0tLS0tLS0tLS0KKworICogQSByZWxhdGl2ZSBwYXRobmFtZSBnaXZlbiB0byAiZ2l0IGluaXQgLS10ZW1wbGF0ZT08cGF0aD4gPHJlcG8+IgorICAgb3VnaHQgdG8gYmUgcmVsYXRpdmUgdG8gdGhlIGRpcmVjdG9yeSAiZ2l0IGluaXQiIGdldHMgaW52b2tlZCBpbiwKKyAgIGJ1dCBpdCBpbnN0ZWFkIHdhcyBtYWRlIHJlbGF0aXZlIHRvIHRoZSByZXBvc2l0b3J5LCB3aGljaCBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorCisgKiAiZ2l0IHdvcmt0cmVlIGFkZCIgdXNlZCB0byBmYWlsIHdoZW4gYW5vdGhlciB3b3JrdHJlZSBjb25uZWN0ZWQgdG8KKyAgIHRoZSBzYW1lIHJlcG9zaXRvcnkgd2FzIGNvcnJ1cHQsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogVGhlIG93bmVyc2hpcCBydWxlIGZvciB0aGUgZmlsZSBkZXNjcmlwdG9yIHRvIGZhc3QtaW1wb3J0IHJlbW90ZQorICAgYmFja2VuZCB3YXMgbWl4ZWQgdXAsIGxlYWRpbmcgdG8gYW4gdW5yZWxhdGVkIGZpbGUgZGVzY3JpcHRvciBnZXR0aW5nCisgICBjbG9zZWQsIHdoaWNoIGhhcyBiZWVuIGZpeGVkLgorCisgKiBBICJtZXJnZSAtYyIgaW5zdHJ1Y3Rpb24gZHVyaW5nICJnaXQgcmViYXNlIC0tcmViYXNlLW1lcmdlcyIgc2hvdWxkCisgICBnaXZlIHRoZSB1c2VyIGEgY2hhbmNlIHRvIGVkaXQgdGhlIGxvZyBtZXNzYWdlLCBldmVuIHdoZW4gdGhlcmUgaXMKKyAgIG90aGVyd2lzZSBubyBuZWVkIHRvIGNyZWF0ZSBhIG5ldyBtZXJnZSBhbmQgcmVwbGFjZSB0aGUgZXhpc3RpbmcKKyAgIG9uZSAoaS5lLiBmYXN0LWZvcndhcmQgaW5zdGVhZCksIGJ1dCBkaWQgbm90LiAgV2hpY2ggaGFzIGJlZW4KKyAgIGNvcnJlY3RlZC4KKworICogQ29kZSBjbGVhbnVwIGFuZCBmdXR1cmVwcm9vZi4KKworICogTW9yZSBwYXJhbWV0ZXIgdmFsaWRhdGlvbi4KKworICogImdpdCB1cGRhdGUtc2VydmVyLWluZm8iIHVzZWQgdG8gbGVhdmUgc3RhbGUgcGFja2ZpbGVzIGluIGl0cworICAgb3V0cHV0LCB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqIFRoZSBzZXJ2ZXIgc2lkZSBzdXBwb3J0IGZvciAiZ2l0IGZldGNoIiB1c2VkIHRvIHNob3cgaW5jb3JyZWN0CisgICB2YWx1ZSBmb3IgdGhlIEhFQUQgc3ltYm9saWMgcmVmIHdoZW4gdGhlIG5hbWVzcGFjZSBmZWF0dXJlIGlzIGluCisgICB1c2UsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogImdpdCBhbSAtaSAtLXJlc29sdmVkIiBzZWdmYXVsdGVkIGFmdGVyIHRyeWluZyB0byBzZWUgYSBjb21taXQgYXMKKyAgIGlmIGl0IHdlcmUgYSB0cmVlLCB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqICJnaXQgYnVuZGxlIHZlcmlmeSIgbmVlZHMgdG8gc2VlIGlmIHByZXJlcXVpc2l0ZSBvYmplY3RzIGV4aXN0IGluCisgICB0aGUgcmVjZWl2aW5nIHJlcG9zaXRvcnksIGJ1dCB0aGUgY29tbWFuZCBkaWQgbm90IGNoZWNrIGlmIHdlIGFyZQorICAgaW4gYSByZXBvc2l0b3J5IHVwZnJvbnQsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogImdpdCBtZXJnZSAtLXNxdWFzaCIgaXMgZGVzaWduZWQgdG8gdXBkYXRlIHRoZSB3b3JraW5nIHRyZWUgYW5kIHRoZQorICAgaW5kZXggd2l0aG91dCBjcmVhdGluZyB0aGUgY29tbWl0LCBhbmQgdGhpcyBjYW5ub3QgYmUgY291bnRlcm1hbmRlZAorICAgYnkgYWRkaW5nIHRoZSAiLS1jb21taXQiIG9wdGlvbjsgdGhlIGNvbW1hbmQgbm93IHJlZnVzZXMgdG8gd29yaworICAgd2hlbiBib3RoIG9wdGlvbnMgYXJlIGdpdmVuLgorCisgKiBUaGUgZGF0YSBjb2xsZWN0ZWQgYnkgZnNtb25pdG9yIHdhcyBub3QgcHJvcGVybHkgd3JpdHRlbiBiYWNrIHRvCisgICB0aGUgb24tZGlzayBpbmRleCBmaWxlLCBicmVha2luZyB0NzUxOSB0ZXN0cyBvY2Nhc2lvbmFsbHksIHdoaWNoCisgICBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqIFVwZGF0ZSB0byBVbmljb2RlIDEyLjEgd2lkdGggdGFibGUuCisKKyAqIFRoZSBjb21tYW5kIGxpbmUgdG8gaW52b2tlIGEgImdpdCBjYXQtZmlsZSIgY29tbWFuZCBmcm9tIGluc2lkZQorICAgImdpdCBwNCIgd2FzIG5vdCBwcm9wZXJseSBxdW90ZWQgdG8gcHJvdGVjdCBhIGNhcmV0IGFuZCBydW5uaW5nIGEKKyAgIGJyb2tlbiBjb21tYW5kIG9uIFdpbmRvd3MsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogImdpdCByZXF1ZXN0LXB1bGwiIGxlYXJuZWQgdG8gd2FybiB3aGVuIHRoZSByZWYgd2UgYXNrIHRoZW0gdG8gcHVsbAorICAgZnJvbSBpbiB0aGUgbG9jYWwgcmVwb3NpdG9yeSBhbmQgaW4gdGhlIHB1Ymxpc2hlZCByZXBvc2l0b3J5IGFyZQorICAgZGlmZmVyZW50LgorCisgKiBXaGVuIGNyZWF0aW5nIGEgcGFydGlhbCBjbG9uZSwgdGhlIG9iamVjdCBmaWx0ZXJpbmcgY3JpdGVyaWEgaXMKKyAgIHJlY29yZGVkIGZvciB0aGUgb3JpZ2luIG9mIHRoZSBjbG9uZSwgYnV0IHRoaXMgaW5jb3JyZWN0bHkgdXNlZCBhCisgICBoYXJkY29kZWQgbmFtZSAib3JpZ2luIiB0byBuYW1lIHRoYXQgcmVtb3RlOyBpdCBoYXMgYmVlbiBjb3JyZWN0ZWQKKyAgIHRvIGhvbm9yIHRoZSAiLS1vcmlnaW4gPG5hbWU+IiBvcHRpb24uCisKKyAqICJnaXQgZmV0Y2giIGludG8gYSBsYXp5IGNsb25lIGZvcmdvdCB0byBmZXRjaCBiYXNlIG9iamVjdHMgdGhhdCBhcmUKKyAgIG5lY2Vzc2FyeSB0byBjb21wbGV0ZSBkZWx0YSBpbiBhIHRoaW4gcGFja2ZpbGUsIHdoaWNoIGhhcyBiZWVuCisgICBjb3JyZWN0ZWQuCisKKyAqIFRoZSBmaWx0ZXJfZGF0YSB1c2VkIGluIHRoZSBsaXN0LW9iamVjdHMtZmlsdGVyICh3aGljaCBtYW5hZ2VzIGEKKyAgIGxhemlseSBzcGFyc2UgY2xvbmUgcmVwb3NpdG9yeSkgZGlkIG5vdCB1c2UgdGhlIGR5bmFtaWMgYXJyYXkgQVBJCisgICBjb3JyZWN0bHktLS0nbnInIGlzIHN1cHBvc2VkIHRvIHBvaW50IGF0IG9uZSBwYXN0IHRoZSBsYXN0IGVsZW1lbnQKKyAgIG9mIHRoZSBhcnJheSBpbiB1c2UuICBUaGlzIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogVGhlIGRlc2NyaXB0aW9uIGFib3V0IHNsYXNoZXMgaW4gZ2l0aWdub3JlIHBhdHRlcm5zICh1c2VkIHRvCisgICBpbmRpY2F0ZSB0aGluZ3MgbGlrZSAiYW5jaG9yZWQgdG8gdGhpcyBsZXZlbCBvbmx5IiBhbmQgIm9ubHkKKyAgIG1hdGNoZXMgZGlyZWN0b3JpZXMiKSBoYXMgYmVlbiByZXZhbXBlZC4KKworICogVGhlIFVSTCBkZWNvZGluZyBjb2RlIGhhcyBiZWVuIHVwZGF0ZWQgdG8gYXZvaWQgZ29pbmcgcGFzdCB0aGUgZW5kCisgICBvZiB0aGUgc3RyaW5nIHdoaWxlIHBhcnNpbmcgJS08aGV4Pi08aGV4PiBzZXF1ZW5jZS4KKworICogVGhlIGxpc3Qgb2YgZm9yLWVhY2ggbGlrZSBtYWNyb3MgdXNlZCBieSBjbGFuZy1mb3JtYXQgaGFzIGJlZW4KKyAgIHVwZGF0ZWQuCisKKyAqICJnaXQgYnJhbmNoIC0tbGlzdCIgbGVhcm5lZCB0byBzaG93IGJyYW5jaGVzIHRoYXQgYXJlIGNoZWNrZWQgb3V0CisgICBpbiBvdGhlciB3b3JrdHJlZXMgY29ubmVjdGVkIHRvIHRoZSBzYW1lIHJlcG9zaXRvcnkgcHJlZml4ZWQgd2l0aAorICAgJysnLCBzaW1pbGFyIHRvIHRoZSB3YXkgdGhlIGN1cnJlbnRseSBjaGVja2VkIG91dCBicmFuY2ggaXMgc2hvd24KKyAgIHdpdGggJyonIGluIGZyb250LgorICAgKG1lcmdlIDZlOTM4MTQ2OWUgbmIvYnJhbmNoLXNob3ctb3RoZXItd29ya3RyZWVzLWhlYWQgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBDb2RlIHJlc3RydWN0dXJpbmcgZHVyaW5nIDIuMjAgcGVyaW9kIGJyb2tlIGZldGNoaW5nIHRhZ3MgdmlhCisgICAiaW1wb3J0IiBiYXNlZCB0cmFuc3BvcnRzLgorCisgKiBUaGUgY29tbWl0LWdyYXBoIGZpbGUgaXMgbm93IHBhcnQgb2YgdGhlICJmaWxlcyB0aGF0IHRoZSBydW50aW1lCisgICBtYXkga2VlcCBvcGVuIGZpbGUgZGVzY3JpcHRvcnMgb24sIGFsbCBvZiB3aGljaCB3b3VsZCBuZWVkIHRvIGJlCisgICBjbG9zZWQgd2hlbiBkb25lIHdpdGggdGhlIG9iamVjdCBzdG9yZSIsIGFuZCB0aGUgZmlsZSBkZXNjcmlwdG9yIHRvCisgICBhbiBleGlzdGluZyBjb21taXQtZ3JhcGggZmlsZSBub3cgaXMgY2xvc2VkIGJlZm9yZSAiZ2MiIGZpbmFsaXplcyBhCisgICBuZXcgaW5zdGFuY2UgdG8gcmVwbGFjZSBpdC4KKworICogImdpdCBjaGVja291dCAtcCIgbmVlZHMgdG8gc2VsZWN0aXZlbHkgYXBwbHkgYSBwYXRjaCBpbiByZXZlcnNlLAorICAgd2hpY2ggZGlkIG5vdCB3b3JrIHdlbGwuCisKKyAqIENvZGUgY2xlYW4tdXAgdG8gYXZvaWQgc2lnbmVkIGludGVnZXIgd3JhcGFyb3VuZHMgZHVyaW5nIGJpbmFyeSBzZWFyY2guCisKKyAqICJnaXQgaW50ZXJwcmV0LXRyYWlsZXJzIiBhbHdheXMgdHJlYXRlZCAnIycgYXMgdGhlIGNvbW1lbnQKKyAgIGNoYXJhY3RlciwgcmVnYXJkbGVzcyBvZiBjb3JlLmNvbW1lbnRDaGFyIHNldHRpbmcsIHdoaWNoIGhhcyBiZWVuCisgICBjb3JyZWN0ZWQuCisKKyAqICJnaXQgc3Rhc2ggc2hvdyAyMyIgdXNlZCB0byB3b3JrLCBidXQgbm8gbW9yZSBhZnRlciBnZXR0aW5nCisgICByZXdyaXR0ZW4gaW4gQzsgdGhpcyByZWdyZXNzaW9uIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogImdpdCByZWJhc2UgLS1hYm9ydCIgdXNlZCB0byBsZWF2ZSByZWZzL3Jld3JpdHRlbi8gd2hlbiBjb25jbHVkaW5nCisgICAiZ2l0IHJlYmFzZSAtciIsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogQW4gaW5jb3JyZWN0IGxpc3Qgb2Ygb3B0aW9ucyB3YXMgY2FjaGVkIGFmdGVyIGNvbW1hbmQgbGluZQorICAgY29tcGxldGlvbiBmYWlsZWQgKGUuZy4gdHJ5aW5nIHRvIGNvbXBsZXRlIGEgY29tbWFuZCB0aGF0IHJlcXVpcmVzCisgICBhIHJlcG9zaXRvcnkgb3V0c2lkZSBvbmUpLCB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqIFRoZSBjb2RlIHRvIHBhcnNlIHNjYWxlZCBudW1iZXJzIG91dCBvZiBjb25maWd1cmF0aW9uIGZpbGVzIGhhcworICAgYmVlbiBtYWRlIG1vcmUgcm9idXN0IGFuZCBhbHNvIGVhc2llciB0byBmb2xsb3cuCisKKyAqIFRoZSBjb2RlcGF0aCB0byBjb21wdXRlIGRlbHRhIGlzbGFuZHMgdXNlZCB0byBzcGV3IHByb2dyZXNzIG91dHB1dAorICAgd2l0aG91dCBnaXZpbmcgdGhlIGNhbGxlcnMgYW55IHdheSB0byBzcXVlbGNoIGl0LCB3aGljaCBoYXMgYmVlbgorICAgZml4ZWQuCisKKyAqIFByb3RvY29sIGNhcGFiaWxpdGllcyB0aGF0IGdvIG92ZXIgd2lyZSBzaG91bGQgbmV2ZXIgYmUgdHJhbnNsYXRlZCwKKyAgIGJ1dCBpdCB3YXMgaW5jb3JyZWN0bHkgbWFya2VkIGZvciB0cmFuc2xhdGlvbiwgd2hpY2ggaGFzIGJlZW4KKyAgIGNvcnJlY3RlZC4gIFRoZSBvdXRwdXQgb2YgcHJvdG9jb2wgY2FwYWJpbGl0aWVzIGZvciBkZWJ1Z2dpbmcgaGFzCisgICBiZWVuIHR3ZWFrZWQgYSBiaXQuCisKKyAqIFVzZSAiRXJhc2UgaW4gTGluZSIgQ1NJIHNlcXVlbmNlIHRoYXQgaXMgYWxyZWFkeSB1c2VkIGluIHRoZSBlZGl0b3IKKyAgIHN1cHBvcnQgdG8gY2xlYXIgY3J1ZnQgaW4gdGhlIHByb2dyZXNzIG91dHB1dC4KKworICogImdpdCBzdWJtb2R1bGUgZm9yZWFjaCIgZGlkIG5vdCBwcm90ZWN0IGNvbW1hbmQgbGluZSBvcHRpb25zIHBhc3NlZAorICAgdG8gdGhlIGNvbW1hbmQgdG8gYmUgcnVuIGluIGVhY2ggc3VibW9kdWxlIGNvcnJlY3RseSwgd2hlbiB0aGUKKyAgICItLXJlY3Vyc2l2ZSIgb3B0aW9uIHdhcyBpbiB1c2UuCisKKyAqIFRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIHJlYmFzZS5yZXNjaGVkdWxlRmFpbGVkRXhlYyBzaG91bGQgYmUKKyAgIGVmZmVjdGl2ZSBvbmx5IHdoaWxlIHJ1bm5pbmcgYW4gaW50ZXJhY3RpdmUgcmViYXNlIGFuZCBzaG91bGQgbm90CisgICBhZmZlY3QgYW55dGhpbmcgd2hlbiBydW5uaW5nIGEgbm9uLWludGVyYWN0aXZlIG9uZSwgd2hpY2ggd2FzIG5vdAorICAgdGhlIGNhc2UuICBUaGlzIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogVGhlICJnaXQgY2xvbmUiIGRvY3VtZW50YXRpb24gcmVmZXJzIHRvIGNvbW1hbmQgbGluZSBvcHRpb25zIGluIGl0cworICAgZGVzY3JpcHRpb24gaW4gdGhlIHNob3J0IGZvcm07IHRoZXkgaGF2ZSBiZWVuIHJlcGxhY2VkIHdpdGggbG9uZworICAgZm9ybXMgdG8gbWFrZSB0aGVtIG1vcmUgcmVjb2duaXNhYmxlLgorCisgKiBHZW5lcmF0aW9uIG9mIHBhY2sgYml0bWFwcyBhcmUgbm93IGRpc2FibGVkIHdoZW4gLmtlZXAgZmlsZXMgZXhpc3QsCisgICBhcyB0aGVzZSBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIGZlYXR1cmVzLgorICAgKG1lcmdlIDczMjg0ODIyNTMgZXcvcmVwYWNrLXdpdGgtYml0bWFwcy1ieS1kZWZhdWx0IGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBybSIgdG8gcmVzb2x2ZSBhIGNvbmZsaWN0ZWQgcGF0aCBsZWFrZWQgYW4gaW50ZXJuYWwgbWVzc2FnZQorICAgIm5lZWRzIG1lcmdlIiBiZWZvcmUgYWN0dWFsbHkgcmVtb3ZpbmcgdGhlIHBhdGgsIHdoaWNoIHdhcworICAgY29uZnVzaW5nLiAgVGhpcyBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqICJnaXQgc3Rhc2ggLS1rZWVwLWluZGV4IiBkaWQgbm90IHdvcmsgY29ycmVjdGx5IG9uIHBhdGhzIHRoYXQgaGF2ZQorICAgYmVlbiByZW1vdmVkLCB3aGljaCBoYXMgYmVlbiBmaXhlZC4KKyAgIChtZXJnZSBiOTMyZjZhNWU4IHRnL3N0YXNoLWtlZXAtaW5kZXgtd2l0aC1yZW1vdmVkLXBhdGhzIGxhdGVyIHRvIG1haW50KS4KKworICogV2luZG93IDcgdXBkYXRlIDstKQorCisgKiBBIGNvZGVwYXRoIHRoYXQgcmVhZHMgZnJvbSBHUEcgZm9yIHNpZ25lZCBvYmplY3QgdmVyaWZpY2F0aW9uIHJlYWQKKyAgIHBhc3QgdGhlIGVuZCBvZiBhbGxvY2F0ZWQgYnVmZmVyLCB3aGljaCBoYXMgYmVlbiBmaXhlZC4KKworICogImdpdCBjbGVhbiIgc2lsZW50bHkgc2tpcHBlZCBhIHBhdGggd2hlbiBpdCBjYW5ub3QgbHN0YXQoKSBpdDsgbm93CisgICBpdCBnaXZlcyBhIHdhcm5pbmcuCisKKyAqICJnaXQgcHVzaCAtLWF0b21pYyIgdGhhdCBnb2VzIG92ZXIgdGhlIHRyYW5zcG9ydC1oZWxwZXIgKG5hbWVseSwKKyAgIHRoZSBzbWFydCBodHRwIHRyYW5zcG9ydCkgZmFpbGVkIHRvIHByZXZlbnQgcmVmcyB0byBiZSBwdXNoZWQgd2hlbgorICAgaXQgY2FuIGxvY2FsbHkgdGVsbCB0aGF0IG9uZSBvZiB0aGUgcmVmIHVwZGF0ZSB3aWxsIGZhaWwgd2l0aG91dAorICAgaGF2aW5nIHRvIGNvbnN1bHQgdGhlIG90aGVyIGVuZCwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBUaGUgaW50ZXJuYWwgZGlmZiBtYWNoaW5lcnkgY2FuIGJlIG1hZGUgdG8gcmVhZCBvdXQgb2YgYm91bmRzIHdoaWxlCisgICBsb29raW5nIGZvciAtLWZ1bmN0aW9uLWNvbnRleHQgbGluZSBpbiBhIGNvcm5lciBjYXNlLCB3aGljaCBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorICAgKG1lcmdlIGI3NzdmM2ZkNjEgamsveGRpZmYtY2xhbXAtZnVuY25hbWUtY29udGV4dC1pbmRleCBsYXRlciB0byBtYWludCkuCisKKyAqIE90aGVyIGNvZGUgY2xlYW51cCwgZG9jZml4LCBidWlsZCBmaXgsIGV0Yy4KKyAgIChtZXJnZSBmYmVjMDVjMjEwIGNjL3Rlc3Qtb2lkbWFwIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA3YTA2ZmIwMzhjIGprL25vLXN5c3RlbS1pbmNsdWRlcy1pbi1kb3QtYyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgODFlZDJiNDA1YyBjYi94ZGlmZi1uby1zeXN0ZW0taW5jbHVkZXMtaW4tZG90LWMgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGQ2MWU2Y2UxZGQgc2cvZnNjay1jb25maWctaW4tZG9jIGxhdGVyIHRvIG1haW50KS4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yMy4xLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yMy4xLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDgzYjQ5Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjIzLjEudHh0CkBAIC0wLDAgKzEsOCBAQAorR2l0IHYyLjIzLjEgUmVsZWFzZSBOb3RlcworPT09PT09PT09PT09PT09PT09PT09PT09PQorCitUaGlzIHJlbGVhc2UgbWVyZ2VzIHVwIHRoZSBmaXhlcyB0aGF0IGFwcGVhciBpbiB2Mi4xNC42LCB2Mi4xNS40LAordjIuMTcuMywgdjIuMjAuMiBhbmQgaW4gdjIuMjEuMSwgYWRkcmVzc2luZyB0aGUgc2VjdXJpdHkgaXNzdWVzCitDVkUtMjAxOS0xMzQ4LCBDVkUtMjAxOS0xMzQ5LCBDVkUtMjAxOS0xMzUwLCBDVkUtMjAxOS0xMzUxLAorQ1ZFLTIwMTktMTM1MiwgQ1ZFLTIwMTktMTM1MywgQ1ZFLTIwMTktMTM1NCwgQ1ZFLTIwMTktMTM4NywgYW5kCitDVkUtMjAxOS0xOTYwNDsgc2VlIHRoZSByZWxlYXNlIG5vdGVzIGZvciB0aG9zZSB2ZXJzaW9ucyBmb3IgZGV0YWlscy4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yNC4wLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yNC4wLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZGUxNTQxCi0tLSAvZGV2L251bGwKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjI0LjAudHh0CkBAIC0wLDAgKzEsMzk4IEBACitHaXQgMi4yNCBSZWxlYXNlIE5vdGVzCis9PT09PT09PT09PT09PT09PT09PT09CisKK1VwZGF0ZXMgc2luY2UgdjIuMjMKKy0tLS0tLS0tLS0tLS0tLS0tLS0KKworQmFja3dhcmQgY29tcGF0aWJpbGl0eSBub3RlCisKKyAqICJmaWx0ZXItYnJhbmNoIiBpcyBzaG93aW5nIGl0cyBhZ2UgYW5kIGFsdGVybmF0aXZlcyBhcmUgYXZhaWxhYmxlLgorICAgRnJvbSB0aGlzIHJlbGVhc2UsIHdlIHN0YXJ0ZWQgdG8gZGlzY291cmFnZSBpdHMgdXNlIGFuZCBoaW50CisgICBwZW9wbGUgYWJvdXQgZmlsdGVyLXJlcG8uCisKK1VJLCBXb3JrZmxvd3MgJiBGZWF0dXJlcworCisgKiBXZSBub3cgaGF2ZSBhbiBhY3RpdmUgaW50ZXJpbSBtYWludGFpbmVyIGZvciB0aGUgR2l0LUd1aSBwYXJ0IG9mCisgICB0aGUgc3lzdGVtLiAgUHJhaXNlIGFuZCB0aGFuayBQcmF0eXVzaCBZYWRhdiBmb3Igdm9sdW50ZWVyaW5nLgorCisgKiBUaGUgY29tbWFuZCBsaW5lIHBhcnNlciBsZWFybmVkICItLWVuZC1vZi1vcHRpb25zIiBub3RhdGlvbjsgdGhlCisgICBzdGFuZGFyZCBjb252ZW50aW9uIGZvciBzY3JpcHRlcnMgdG8gaGF2ZSBoYXJkY29kZWQgc2V0IG9mIG9wdGlvbnMKKyAgIGZpcnN0IG9uIHRoZSBjb21tYW5kIGxpbmUsIGFuZCBmb3JjZSB0aGUgY29tbWFuZCB0byB0cmVhdCBlbmQtdXNlcgorICAgaW5wdXQgYXMgbm9uLW9wdGlvbnMsIGhhcyBiZWVuIHRvIHVzZSAiLS0iIGFzIHRoZSBkZWxpbWl0ZXIsIGJ1dAorICAgdGhhdCB3b3VsZCBub3Qgd29yayBmb3IgY29tbWFuZHMgdGhhdCB1c2UgIi0tIiBhcyBhIGRlbGltaXRlcgorICAgYmV0d2VlbiByZXZzIGFuZCBwYXRoc3BlYy4KKworICogQSBtZWNoYW5pc20gdG8gYWZmZWN0IHRoZSBkZWZhdWx0IHNldHRpbmcgZm9yIGEgKHJlbGF0ZWQpIGdyb3VwIG9mCisgICBjb25maWd1cmF0aW9uIHZhcmlhYmxlcyBpcyBpbnRyb2R1Y2VkLgorCisgKiAiZ2l0IGZldGNoIiBsZWFybmVkICItLXNldC11cHN0cmVhbSIgb3B0aW9uIHRvIGhlbHAgdGhvc2Ugd2hvIGZpcnN0CisgICBjbG9uZSBmcm9tIHRoZWlyIHByaXZhdGUgZm9yayB0aGV5IGludGVuZCB0byBwdXNoIHRvLCBhZGQgdGhlIHRydWUKKyAgIHVwc3RyZWFtIHZpYSAiZ2l0IHJlbW90ZSBhZGQiIGFuZCB0aGVuICJnaXQgZmV0Y2giIGZyb20gaXQuCisKKyAqIERldmljZS10cmVlIGZpbGVzIGxlYXJuZWQgdGhlaXIgb3duIHVzZXJkaWZmIHBhdHRlcm5zLgorICAgKG1lcmdlIDNjODE3NjBiYzYgc2IvdXNlcmRpZmYtZHRzIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCByZWJhc2UgLS1yZWJhc2UtbWVyZ2VzIiBsZWFybmVkIHRvIGRyaXZlIGRpZmZlcmVudCBtZXJnZQorICAgc3RyYXRlZ2llcyBhbmQgcGFzcyBzdHJhdGVneSBzcGVjaWZpYyBvcHRpb25zIHRvIHRoZW0uCisKKyAqIEEgbmV3ICJwcmUtbWVyZ2UtY29tbWl0IiBob29rIGhhcyBiZWVuIGludHJvZHVjZWQuCisKKyAqIENvbW1hbmQgbGluZSBjb21wbGV0aW9uIHVwZGF0ZXMgZm9yICJnaXQgLWMgdmFyLm5hbWU9dmFsIiBoYXZlIGJlZW4KKyAgIGFkZGVkLgorCisgKiBUaGUgbGF6eSBjbG9uZSBtYWNoaW5lcnkgaGFzIGJlZW4gdGF1Z2h0IHRoYXQgdGhlcmUgY2FuIGJlIG1vcmUKKyAgIHRoYW4gb25lIHByb21pc29yIHJlbW90ZSBhbmQgY29uc3VsdCB0aGVtIGluIG9yZGVyIHdoZW4gZG93bmxvYWRpbmcKKyAgIG1pc3Npbmcgb2JqZWN0cyBvbiBkZW1hbmQuCisKKyAqIFRoZSBsaXN0LW9iamVjdHMtZmlsdGVyIEFQSSAodXNlZCB0byBjcmVhdGUgYSBzcGFyc2UvbGF6eSBjbG9uZSkKKyAgIGxlYXJuZWQgdG8gdGFrZSBhIGNvbWJpbmVkIGZpbHRlciBzcGVjaWZpY2F0aW9uLgorCisgKiBUaGUgZG9jdW1lbnRhdGlvbiBhbmQgdGVzdHMgZm9yICJnaXQgZm9ybWF0LXBhdGNoIiBoYXZlIGJlZW4KKyAgIGNsZWFuZWQgdXAuCisKKyAqIE9uIFdpbmRvd3MsIHRoZSByb290IGxldmVsIG9mIFVOQyBzaGFyZSBpcyBub3cgYWxsb3dlZCB0byBiZSB1c2VkCisgICBqdXN0IGxpa2UgYW55IG90aGVyIGRpcmVjdG9yeS4KKworICogVGhlIGNvbW1hbmQgbGluZSBjb21wbGV0aW9uIHN1cHBvcnQgKGluIGNvbnRyaWIvKSBsZWFybmVkIGFib3V0IHRoZQorICAgIi0tc2tpcCIgb3B0aW9uIG9mICJnaXQgcmV2ZXJ0IiBhbmQgImdpdCBjaGVycnktcGljayIuCisKKyAqICJnaXQgcmViYXNlIC0ta2VlcC1iYXNlIDx1cHN0cmVhbT4iIHRyaWVzIHRvIGZpbmQgdGhlIG9yaWdpbmFsIGJhc2UKKyAgIG9mIHRoZSB0b3BpYyBiZWluZyByZWJhc2VkIGFuZCByZWJhc2Ugb24gdG9wIG9mIHRoYXQgc2FtZSBiYXNlLAorICAgd2hpY2ggaXMgdXNlZnVsIHdoZW4gcnVubmluZyB0aGUgImdpdCByZWJhc2UgLWkiIChhbmQgaXRzIGxpbWl0ZWQKKyAgIHZhcmlhbnQgImdpdCByZWJhc2UgLXgiKS4KKworICAgVGhlIGNvbW1hbmQgYWxzbyBoYXMgbGVhcm5lZCB0byBmYXN0LWZvcndhcmQgaW4gbW9yZSBjYXNlcyB3aGVyZSBpdAorICAgY2FuIGluc3RlYWQgb2YgcmVwbGF5aW5nIHRvIHJlY3JlYXRlIGlkZW50aWNhbCBjb21taXRzLgorCisgKiBBIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgdGVsbHMgImdpdCBmZXRjaCIgdG8gd3JpdGUgdGhlIGNvbW1pdAorICAgZ3JhcGggYWZ0ZXIgZmluaXNoaW5nLgorCisgKiAiZ2l0IGFkZCAtaSIgaGFzIGJlZW4gdGF1Z2h0IHRvIHNob3cgdGhlIHRvdGFsIG51bWJlciBvZiBodW5rcyBhbmQKKyAgIHRoZSBodW5rcyB0aGF0IGhhcyBiZWVuIHByb2Nlc3NlZCBzbyBmYXIgd2hlbiBzaG93aW5nIHByb21wdHMuCisKKyAqICJnaXQgZmV0Y2ggLS1qb2JzPTxuPiIgYWxsb3dlZCA8bj4gcGFyYWxsZWwgam9icyB3aGVuIGZldGNoaW5nCisgICBzdWJtb2R1bGVzLCBidXQgdGhpcyBkaWQgbm90IGFwcGx5IHRvICJnaXQgZmV0Y2ggLS1tdWx0aXBsZSIgdGhhdAorICAgZmV0Y2hlcyBmcm9tIG11bHRpcGxlIHJlbW90ZSByZXBvc2l0b3JpZXMuICBJdCBub3cgZG9lcy4KKworICogVGhlIGluc3RhbGxhdGlvbiBpbnN0cnVjdGlvbiBmb3IgenNoIGNvbXBsZXRpb24gc2NyaXB0IChpbgorICAgY29udHJpYi8pIGhhcyBiZWVuIGEgYml0IGltcHJvdmVkLgorCisKK1BlcmZvcm1hbmNlLCBJbnRlcm5hbCBJbXBsZW1lbnRhdGlvbiwgRGV2ZWxvcG1lbnQgU3VwcG9ydCBldGMuCisKKyAqIFRoZSBjb2RlIHRvIHdyaXRlIGNvbW1pdC1ncmFwaCBvdmVyIGdpdmVuIGNvbW1pdCBvYmplY3QgbmFtZXMgaGFzCisgICBiZWVuIG1hZGUgYSBiaXQgbW9yZSByb2J1c3QuCisKKyAqIFRoZSBmaXJzdCBsaW5lIG9mIHZlcmJvc2Ugb3V0cHV0IGZyb20gZWFjaCB0ZXN0IHBpZWNlIG5vdyBjYXJyaWVzCisgICB0aGUgdGVzdCBuYW1lIGFuZCBudW1iZXIgdG8gaGVscCBzY2FubmluZyB3aXRoIGV5ZWJhbGxzLgorCisgKiBGdXJ0aGVyIGNsZWFuLXVwIG9mIHRoZSBpbml0aWFsaXphdGlvbiBjb2RlLgorCisgKiB4bWFsbG9jKCkgdXNlZCB0byBoYXZlIGEgbWVjaGFuaXNtIHRvIGRpdGNoIG1lbW9yeSBhbmQgYWRkcmVzcworICAgc3BhY2UgcmVzb3VyY2VzIGFzIHRoZSBsYXN0IHJlc29ydCB1cG9uIHNlZWluZyBhbiBhbGxvY2F0aW9uCisgICBmYWlsdXJlIGZyb20gdGhlIHVuZGVybHlpbmcgbWFsbG9jKCksIHdoaWNoIG1hZGUgdGhlIGNvZGUgY29tcGxleAorICAgYW5kIHRocmVhZC11bnNhZmUgd2l0aCBkdWJpb3VzIGJlbmVmaXQsIGFzIG1ham9yIG1lbW9yeSByZXNvdXJjZQorICAgdXNlcnMgYWxyZWFkeSBkbyBsaW1pdCB0aGVpciB1c2VzIHdpdGggdmFyaW91cyBvdGhlciBtZWNoYW5pc21zLgorICAgSXQgaGFzIGJlZW4gc2ltcGxpZmllZCBhd2F5LgorCisgKiBVbm5lY2Vzc2FyeSBmdWxsLXRyZWUgZGlmZiBpbiAiZ2l0IGxvZyAtTCIgbWFjaGluZXJ5IGhhcyBiZWVuCisgICBvcHRpbWl6ZWQgYXdheS4KKworICogVGhlIGh0dHAgdHJhbnNwb3J0IGxhY2tlZCBzb21lIG9wdGltaXphdGlvbiB0aGUgbmF0aXZlIHRyYW5zcG9ydHMKKyAgIGxlYXJuZWQgdG8gYXZvaWQgdW5uZWNlc3NhcnkgcmVmIGFkdmVydGlzZW1lbnQsIHdoaWNoIGhhcyBiZWVuCisgICBjb3JyZWN0ZWQuCisKKyAqIFByZXBhcmF0aW9uIGZvciBTSEEtMjU2IHVwZ3JhZGUgY29udGludWVzIGluIHRoZSB0ZXN0IGRlcGFydG1lbnQuCisgICAobWVyZ2UgMGMzN2M0MWQxMyBiYy9oYXNoLWluZGVwZW5kZW50LXRlc3RzLXBhcnQtNSBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBtZW1vcnkgb3duZXJzaGlwIG1vZGVsIG9mIHRoZSAiZ2l0IGZhc3QtaW1wb3J0IiBnb3QKKyAgIHN0cmFpZ2h0ZW5lZCBvdXQuCisKKyAqIE91dHB1dCBmcm9tIHRyYWNlMiBzdWJzeXN0ZW0gaXMgZm9ybWF0dGVkIG1vcmUgcHJldHRpbHkgbm93LgorCisgKiBUaGUgaW50ZXJuYWwgY29kZSBvcmlnaW5hbGx5IGludmVudGVkIGZvciAiLmdpdGlnbm9yZSIgcHJvY2Vzc2luZworICAgZ290IHJlc2h1ZmZsZWQgYW5kIHJlbmFtZWQgdG8gbWFrZSBpdCBsZXNzIHRpZWQgdG8gImV4Y2x1ZGluZyIgYW5kCisgICBzdHJlc3MgbW9yZSB0aGF0IGl0IGlzIGFib3V0ICJtYXRjaGluZyIsIGFzIGl0IGhhcyBiZWVuIHJldXNlZCBmb3IKKyAgIHRoaW5ncyBsaWtlIHNwYXJzZSBjaGVja291dCBzcGVjaWZpY2F0aW9uIHRoYXQgd2FudCB0byBjaGVjayBpZiBhCisgICBwYXRoIGlzICJpbmNsdWRlZCIuCisKKyAqICJnaXQgc3Rhc2giIGxlYXJuZWQgdG8gd3JpdGUgcmVmcmVzaGVkIGluZGV4IGJhY2sgdG8gZGlzay4KKworICogQ29jY2luZWxsZSBjaGVja3MgYXJlIGRvbmUgb24gbW9yZSBzb3VyY2UgZmlsZXMgdGhhbiBiZWZvcmUgbm93LgorCisgKiBUaGUgY2FjaGUtdHJlZSBjb2RlIGhhcyBiZWVuIHRhdWdodCB0byBiZSBsZXNzIGFnZ3Jlc3NpdmUgaW4KKyAgIGF0dGVtcHRpbmcgdG8gc2VlIGlmIGEgdHJlZSBvYmplY3QgaXQgY29tcHV0ZWQgYWxyZWFkeSBleGlzdHMgaW4KKyAgIHRoZSByZXBvc2l0b3J5LgorCisgKiBUaGUgY29kZSB0byBwYXJzZSBhbmQgdXNlIHRoZSBjb21taXQtZ3JhcGggZmlsZSBoYXMgYmVlbiBtYWRlIG1vcmUKKyAgIHJvYnVzdCBhZ2FpbnN0IGNvcnJ1cHRlZCBpbnB1dC4KKworICogVGhlIGhnLXRvLWdpdCBzY3JpcHQgKGluIGNvbnRyaWIvKSBoYXMgYmVlbiB1cGRhdGVkIHRvIHdvcmsgd2l0aAorICAgUHl0aG9uIDMuCisKKyAqIFVwZGF0ZSB0aGUgd2F5IGJ1aWxkIGFydGlmYWN0cyBpbiB0L2hlbHBlci8gZGlyZWN0b3J5IGFyZSBpZ25vcmVkLgorCisgKiBQcmVwYXJhdGlvbiBmb3IgU0hBLTI1NiB1cGdyYWRlIGNvbnRpbnVlcy4KKworICogImdpdCBsb2cgLS1ncmFwaCIgZm9yIGFuIG9jdG9wdXMgbWVyZ2UgaXMgc29tZXRpbWVzIGNvbG9yZWQKKyAgIGluY29ycmVjdGx5LCB3aGljaCBpcyBkZW1vbnN0cmF0ZWQgYW5kIGRvY3VtZW50ZWQgYnV0IG5vdCB5ZXQKKyAgIGZpeGVkLgorCisgKiBUaGUgdHJhY2UyIG91dHB1dCwgd2hlbiBzZW5kaW5nIHRoZW0gdG8gZmlsZXMgaW4gYSBkZXNpZ25hdGVkCisgICBkaXJlY3RvcnksIGNhbiBwb3B1bGF0ZSB0aGUgZGlyZWN0b3J5IHdpdGggdG9vIG1hbnkgZmlsZXM7IGEKKyAgIG1lY2hhbmlzbSBpcyBpbnRyb2R1Y2VkIHRvIHNldCB0aGUgbWF4aW11bSBudW1iZXIgb2YgZmlsZXMgYW5kCisgICBkaXNjYXJkIGZ1cnRoZXIgbG9ncyB3aGVuIHRoZSBtYXhpbXVtIGlzIHJlYWNoZWQuCisKKyAqIFdlIGhhdmUgYWRvcHRlZCBhIENvZGUtb2YtY29uZHVjdCBkb2N1bWVudC4KKyAgIChtZXJnZSAzZjllZjg3NGE3IGprL2NvYyBsYXRlciB0byBtYWludCkuCisKKworRml4ZXMgc2luY2UgdjIuMjMKKy0tLS0tLS0tLS0tLS0tLS0tCisKKyAqICJnaXQgZ3JlcCAtLXJlY3Vyc2Utc3VibW9kdWxlcyIgdGhhdCBsb29rcyBhdCB0aGUgd29ya2luZyB0cmVlCisgICBmaWxlcyBsb29rZWQgYXQgdGhlIGNvbnRlbnRzIGluIHRoZSBpbmRleCBpbiBzdWJtb2R1bGVzLCBpbnN0ZWFkIG9mCisgICBmaWxlcyBpbiB0aGUgd29ya2luZyB0cmVlLgorICAgKG1lcmdlIDZhMjg5ZDQ1YzAgbXQvZ3JlcC1zdWJtb2R1bGVzLXdvcmtpbmctdHJlZSBsYXRlciB0byBtYWludCkuCisKKyAqIENvZGVwYXRocyB0byB3YWxrIHRyZWUgb2JqZWN0cyBoYXZlIGJlZW4gYXVkaXRlZCBmb3IgaW50ZWdlcgorICAgb3ZlcmZsb3dzIGFuZCBoYXJkZW5lZC4KKyAgIChtZXJnZSA1YWEwMmY5ODY4IGprL3RyZWUtd2Fsay1vdmVyZmxvdyBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgcGFjay1yZWZzIiBjYW4gbG9zZSByZWZzIHRoYXQgYXJlIGNyZWF0ZWQgd2hpbGUgcnVubmluZywgd2hpY2gKKyAgIGlzIGdldHRpbmcgY29ycmVjdGVkLgorICAgKG1lcmdlIGE2MTNkNGY4MTcgc2MvcGFjay1yZWZzLWRlbGV0aW9uLXJhY2VmaXggbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZ2l0IGNoZWNrb3V0IiBhbmQgImdpdCByZXN0b3JlIiB0byByZS1wb3B1bGF0ZSB0aGUgaW5kZXggZnJvbSBhCisgICB0cmVlLWlzaCAodHlwaWNhbGx5IEhFQUQpIGRpZCBub3Qgd29yayBjb3JyZWN0bHkgZm9yIGEgcGF0aCB0aGF0CisgICB3YXMgcmVtb3ZlZCBhbmQgdGhlbiBhZGRlZCBhZ2FpbiB3aXRoIHRoZSBpbnRlbnQtdG8tYWRkIGJpdCwgd2hlbgorICAgdGhlIGNvcnJlc3BvbmRpbmcgd29ya2luZyB0cmVlIGZpbGUgd2FzIGVtcHR5LiAgVGhpcyBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorCisgKiBDb21waWxhdGlvbiBmaXguCisgICAobWVyZ2UgNzA1OTdlODM4NiBycy9uZWRhbGxvYy1maXhsZXRzIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBndWkiIGxlYXJuZWQgdG8gY2FsbCB0aGUgY2xlYW4tdXAgcHJvY2VkdXJlIGJlZm9yZSBleGl0aW5nLgorICAgKG1lcmdlIDBkODhmM2QyYzUgcHkvZ2l0LWd1aS1kby1xdWl0IGxhdGVyIHRvIG1haW50KS4KKworICogV2UgcHJvbW90ZWQgdGhlICJpbmRlbnQgaGV1cmlzdGljcyIgdGhhdCBkZWNpZGVzIHdoZXJlIHRvIHNwbGl0CisgICBkaWZmIGh1bmtzIGZyb20gZXhwZXJpbWVudGFsIHRvIHRoZSBkZWZhdWx0IGEgZmV3IHllYXJzIGFnbywgYnV0CisgICBzb21lIHN0YWxlIGRvY3VtZW50YXRpb24gc3RpbGwgbWFya2VkIGl0IGFzIGV4cGVyaW1lbnRhbCwgd2hpY2ggaGFzCisgICBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSA2NGU1ZTFmYmExIHNnL2RpZmYtaW5kZW50LWhldXJpc3RpYy1ub24tZXhwZXJpbWVudGFsIGxhdGVyIHRvIG1haW50KS4KKworICogRml4IGEgbWlzbWVyZ2UgdGhhdCBoYXBwZW5lZCBpbiAyLjIyIHRpbWVmcmFtZS4KKyAgIChtZXJnZSBhY2I3ZGEwNWFjIGVuL2NoZWNrb3V0LW1pc21lcmdlLWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgYXJjaGl2ZSIgcmVjb3JkZWQgaW5jb3JyZWN0IGxlbmd0aCBpbiBleHRlbmRlZCBwYXggaGVhZGVyIGluCisgICBzb21lIGNvcm5lciBjYXNlcywgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIDcxZDQxZmY2NTEgcnMvcGF4LWV4dGVuZGVkLWhlYWRlci1sZW5ndGgtZml4IGxhdGVyIHRvIG1haW50KS4KKworICogT24tZGVtYW5kIG9iamVjdCBmZXRjaGluZyBpbiBsYXp5IGNsb25lIGluY29ycmVjdGx5IHRyaWVkIHRvIGZldGNoCisgICBjb21taXRzIGZyb20gc3VibW9kdWxlIHByb2plY3RzLCB3aGlsZSBzdGlsbCB3b3JraW5nIGluIHRoZQorICAgc3VwZXJwcm9qZWN0LCB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgYTYzNjk0ZjUyMyBqdC9kaWZmLWxhenktZmV0Y2gtc3VibW9kdWxlLWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqIFByZXBhcmUgZ2V0X3Nob3J0X29pZCgpIGNvZGVwYXRoIHRvIGJlIHRocmVhZC1zYWZlLgorICAgKG1lcmdlIDdjZmNiMTZiMGUgcnMvc29ydC1vaWQtYXJyYXktdGhyZWFkLXNhZmUgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZm9yLWVhY2gtcmVmIiBhbmQgZnJpZW5kcyB0aGF0IHNob3cgcmVmcyBkaWQgbm90IHByb3RlY3QgdGhlbXNlbHZlcworICAgYWdhaW5zdCBhbmNpZW50IHRhZ3MgdGhhdCBkaWQgbm90IHJlY29yZCB0YWdnZXIgbmFtZXMgd2hlbiBhc2tlZCB0bworICAgc2hvdyAiJSh0YWdnZXJuYW1lKSIsIHdoaWNoIGhhdmUgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgOGIzZjMzZWYxMSBtcC9mb3ItZWFjaC1yZWYtbWlzc2luZy1uYW1lLW9yLWVtYWlsIGxhdGVyIHRvIG1haW50KS4KKworICogVGhlICJnaXQgYW0iIGJhc2VkIGJhY2tlbmQgb2YgImdpdCByZWJhc2UiIGlnbm9yZWQgdGhlIHJlc3VsdCBvZgorICAgdXBkYXRpbmcgIi5naXRhdHRyaWJ1dGVzIiBkb25lIGluIG9uZSBzdGVwIHdoZW4gcmVwbGF5aW5nCisgICBzdWJzZXF1ZW50IHN0ZXBzLgorICAgKG1lcmdlIDJjNjVkOTBmNzUgYmMvcmVyZWFkLWF0dHJpYnV0ZXMtZHVyaW5nLXJlYmFzZSBsYXRlciB0byBtYWludCkuCisKKyAqIFRlbGwgY1VSTCBsaWJyYXJ5IHRvIHVzZSB0aGUgc2FtZSBtYWxsb2MoKSBpbXBsZW1lbnRhdGlvbiwgd2l0aCB0aGUKKyAgIHhtYWxsb2MoKSB3cmFwcGVyLCBhcyB0aGUgcmVzdCBvZiB0aGUgc3lzdGVtLCBmb3IgY29uc2lzdGVuY3kuCisgICAobWVyZ2UgOTNiOTgwZTU4ZiBjYi9jdXJsLXVzZS14bWFsbG9jIGxhdGVyIHRvIG1haW50KS4KKworICogQnVpbGQgZml4IHRvIGFkanVzdCAuZ2l0aWdub3JlIHRvIHVuaWdub3JlIGEgcGF0aCB0aGF0IHdlIHN0YXJ0ZWQgdG8gdHJhY2suCisgICAobWVyZ2UgYWFjNmZmN2I1YiBqcy92aXN1YWwtc3R1ZGlvIGxhdGVyIHRvIG1haW50KS4KKworICogQSBmZXcgaW1wbGVtZW50YXRpb24gZml4ZXMgaW4gdGhlIG5vdGVzIEFQSS4KKyAgIChtZXJnZSA2MGZlNDc3YTBiIG1oL25vdGVzLWR1cGxpY2F0ZS1lbnRyaWVzIGxhdGVyIHRvIG1haW50KS4KKworICogRml4IGFuIGVhcmxpZXIgcmVncmVzc2lvbiB0byAiZ2l0IHB1c2ggLS1hbGwiIHdoaWNoIHNob3VsZCBoYXZlCisgICBiZWVuIGZvcmJpZGRlbiB3aGVuIHRoZSB0YXJnZXQgcmVtb3RlIHJlcG9zaXRvcnkgaXMgc2V0IHRvIGJlIGEKKyAgIG1pcnJvci4KKyAgIChtZXJnZSA4ZTRjOGFmMDU4IHRnL3B1c2gtYWxsLWluLW1pcnJvci1mb3JiaWRkZW4gbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBGaXggYW4gZWFybGllciByZWdyZXNzaW9uIGluIHRoZSB0ZXN0IHN1aXRlLCB3aGljaCBtaXN0YWtlbmx5CisgICBzdG9wcGVkIHJ1bm5pbmcgSFRUUEQgdGVzdHMuCisgICAobWVyZ2UgMzk2MDI5MDY3NSBzZy9naXQtdGVzdC1ib29sZWFuIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCByZWJhc2UgLS1hdXRvc3Rhc2ggPHVwc3RyZWFtPiA8YnJhbmNoPiIsIHdoZW4gPGJyYW5jaD4gaXMKKyAgIGRpZmZlcmVudCBmcm9tIHRoZSBjdXJyZW50IGJyYW5jaCwgaW5jb3JyZWN0bHkgbW92ZWQgdGhlIHRpcCBvZiB0aGUKKyAgIGN1cnJlbnQgYnJhbmNoLCB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgYmYxZTI4ZTBhZCBidy9yZWJhc2UtYXV0b3N0YXNoLWtlZXAtY3VycmVudC1icmFuY2ggbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBVcGRhdGUgc3VwcG9ydCBmb3IgQXNjaWlkb2N0b3IgZG9jdW1lbnRhdGlvbiB0b29sY2hhaW4uCisgICAobWVyZ2UgODNiMGI4OTUzZSBtYS9hc2NpaWRvY3Rvci1yZWZtaXNjaW5mbyBsYXRlciB0byBtYWludCkuCisKKyAqIFN0YXJ0IHVzaW5nIERvY0Jvb2sgNSAoaW5zdGVhZCBvZiBEb2NCb29rIDQuNSkgYXMgQXNjaWlkb2N0b3IgMi4wCisgICBubyBsb25nZXIgd29ya3Mgd2l0aCB0aGUgb2xkZXIgb25lLgorICAgKG1lcmdlIGY2NDYxYjgyYjkgYmMvZG9jLXVzZS1kb2Nib29rLTUgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBUaGUgbWFya3VwIHVzZWQgaW4gdXNlci1tYW51YWwgaGFzIGJlZW4gdXBkYXRlZCB0byB3b3JrIGJldHRlciB3aXRoCisgICBhc2NpaWRvY3Rvci4KKyAgIChtZXJnZSBjNGQyZjYxNDNhIG1hL3VzZXItbWFudWFsLW1hcmt1cC11cGRhdGUgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBNYWtlIHN1cmUgdGhlIGdyZXAgbWFjaGluZXJ5IGRvZXMgbm90IGFib3J0IHdoZW4gc2VlaW5nIGEgcGF5bG9hZAorICAgdGhhdCBpcyBub3QgVVRGLTggZXZlbiB3aGVuIEpJVCBpcyBub3QgaW4gdXNlIHdpdGggUENSRTEuCisgICAobWVyZ2UgYWQ3YzU0M2UzYiBjYi9za2lwLXV0ZjgtY2hlY2std2l0aC1wY3JlMSBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBuYW1lIG9mIHRoZSBibG9iIG9iamVjdCB0aGF0IHN0b3JlcyB0aGUgZmlsdGVyIHNwZWNpZmljYXRpb24KKyAgIGZvciBzcGFyc2UgY2xvbmluZy9mZXRjaGluZyB3YXMgaW50ZXJwcmV0ZWQgaW4gYSB3cm9uZyBwbGFjZSBpbiB0aGUKKyAgIGNvZGUsIGNhdXNpbmcgR2l0IHRvIGFib3J0LgorCisgKiAiZ2l0IGxvZyAtLWRlY29yYXRlLXJlZnMtZXhjbHVkZT08cGF0dGVybj4iIHdhcyBpbmNvcnJlY3RseQorICAgb3ZlcnJ1bGVkIHdoZW4gdGhlICItLXNpbXBsaWZ5LWJ5LWRlY29yYXRpb24iIG9wdGlvbiBpcyB1c2VkLCB3aGljaAorICAgaGFzIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIDBjYzczODBkODggcnMvc2ltcGxpZnktYnktZGVjby13aXRoLWRlY28tcmVmcy1leGNsdWRlIGxhdGVyIHRvIG1haW50KS4KKworICogVGhlICJ1cGxvYWQtcGFjayIgKHRoZSBjb3VudGVycGFydCBvZiAiZ2l0IGZldGNoIikgbmVlZHMgdG8gZGlzYWJsZQorICAgY29tbWl0LWdyYXBoIHdoZW4gcmVzcG9uZGluZyB0byBhIHNoYWxsb3cgY2xvbmUvZmV0Y2ggcmVxdWVzdCwgYnV0CisgICB0aGUgd2F5IHRoaXMgd2FzIGRvbmUgbWFkZSBHaXQgcGFuaWMsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogVGhlIG9iamVjdCB0cmF2ZXJzYWwgbWFjaGluZXJ5IGhhcyBiZWVuIG9wdGltaXplZCBub3QgdG8gbG9hZCB0cmVlCisgICBvYmplY3RzIHdoZW4gd2UgYXJlIG9ubHkgaW50ZXJlc3RlZCBpbiBjb21taXQgaGlzdG9yeS4KKyAgIChtZXJnZSA3MmVkODBjNzg0IGprL2xpc3Qtb2JqZWN0cy1vcHRpbS13by10cmVlcyBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBvYmplY3QgbmFtZSBwYXJzZXIgZm9yICJOdGggcGFyZW50IiBzeW50YXggaGFzIGJlZW4gbWFkZSBtb3JlCisgICByb2J1c3QgYWdhaW5zdCBpbnRlZ2VyIG92ZXJmbG93cy4KKyAgIChtZXJnZSA1OWZhNWY1YTI1IHJzL250aC1wYXJlbnQtcGFyc2UgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBUaGUgY29kZSB1c2VkIGluIGZvbGxvd2luZyB0YWdzIGluICJnaXQgZmV0Y2giIGhhcyBiZWVuIG9wdGltaXplZC4KKyAgIChtZXJnZSBiN2UyZDhiY2E1IG1zL2ZldGNoLWZvbGxvdy10YWctb3B0aW0gbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBSZWdyZXNzaW9uIGZpeCBmb3IgcHJvZ3Jlc3Mgb3V0cHV0LgorICAgKG1lcmdlIDJiYjc0YjUzYTQgc2cvcHJvZ3Jlc3MtZml4IGxhdGVyIHRvIG1haW50KS4KKworICogQSBidWcgaW4gbWVyZ2UtcmVjdXJzaXZlIGNvZGUgdGhhdCB0cmlnZ2VycyB3aGVuIGEgYnJhbmNoIHdpdGggYQorICAgc3ltYm9saWMgbGluayBpcyBtZXJnZWQgd2l0aCBhIGJyYW5jaCB0aGF0IHJlcGxhY2VzIGl0IHdpdGggYQorICAgZGlyZWN0b3J5IGhhcyBiZWVuIGZpeGVkLgorICAgKG1lcmdlIDgzZTNhZDNiMTIganQvbWVyZ2UtcmVjdXJzaXZlLXN5bWxpbmstaXMtbm90LWEtZGlyLWluLXdheSBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSByZW5hbWUgZGV0ZWN0aW9uIGxvZ2ljIHNvcnRzIGEgbGlzdCBvZiByZW5hbWUgc291cmNlIGNhbmRpZGF0ZXMKKyAgIGJ5IHNpbWlsYXJpdHkgdG8gcGljayB0aGUgYmVzdCBjYW5kaWRhdGUsIHdoaWNoIG1lYW5zIHRoYXQgYSB0aWUKKyAgIGJldHdlZW4gc291cmNlcyB3aXRoIHRoZSBzYW1lIHNpbWlsYXJpdHkgaXMgYnJva2VuIGJ5IHRoZSBvcmlnaW5hbAorICAgbG9jYXRpb24gaW4gdGhlIG9yaWdpbmFsIGNhbmRpZGF0ZSBsaXN0ICh3aGljaCBpcyBzb3J0ZWQgYnkgcGF0aCkuCisgICBGb3JjZSB0aGUgc29ydGluZyBieSBzaW1pbGFyaXR5IGRvbmUgd2l0aCBhIHN0YWJsZSBzb3J0LCB3aGljaCBpcworICAgbm90IHByb21pc2VkIGJ5IHN5c3RlbSBzdXBwbGllZCBxc29ydCgzKSwgdG8gZW5zdXJlIGNvbnNpc3RlbnQKKyAgIHJlc3VsdHMgYWNyb3NzIHBsYXRmb3Jtcy4KKyAgIChtZXJnZSAyMDQ5YjhkYzY1IGpzL2RpZmYtcmVuYW1lLWZvcmNlLXN0YWJsZS1zb3J0IGxhdGVyIHRvIG1haW50KS4KKworICogVGhlIGNvZGUgdG8gc2tpcCAiVVRGIiBhbmQgIlVURi0iIHByZWZpeCwgd2hlbiBjb21wdXRpbmcgYW4gYWR2aWNlCisgICBtZXNzYWdlLCBkaWQgbm90IHdvcmsgY29ycmVjdGx5IHdoZW4gdGhlIHByZWZpeCB3YXMgIlVURiIsIHdoaWNoCisgICBoYXMgYmVlbiBmaXhlZC4KKyAgIChtZXJnZSBiMTgxNjc2Y2U5IHJzL2NvbnZlcnQtZml4LXV0Zi13aXRob3V0LWRhc2ggbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBUaGUgYXV0aG9yIG5hbWVzIHRha2VuIGZyb20gU1ZOIHJlcG9zaXRvcmllcyBtYXkgaGF2ZSBleHRyYSBsZWFkaW5nCisgICBvciB0cmFpbGluZyB3aGl0ZXNwYWNlcywgd2hpY2ggYXJlIG5vdyBtdW5nZWQgYXdheS4KKyAgIChtZXJnZSA0ZGRkNGJkZGIxIHRrL2dpdC1zdm4tdHJpbS1hdXRob3ItbmFtZSBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgcmViYXNlIC1pIiBzaG93ZWQgYSB3cm9uZyBIRUFEIHdoaWxlICJyZXdvcmQiIG9wZW4gdGhlIGVkaXRvci4KKyAgIChtZXJnZSBiMGEzMTg2MTQwIHB3L3JlYmFzZS1pLXNob3ctSEVBRC10by1yZXdvcmQgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBBIGZldyBzaW1wbGlmaWNhdGlvbiBhbmQgYnVnZml4ZXMgdG8gUENSRSBpbnRlcmZhY2UuCisgICAobWVyZ2UgYzU4MWU0YTc0OSBhYi9wY3JlLWppdC1maXhlcyBsYXRlciB0byBtYWludCkuCisKKyAqIFBDUkUgZml4ZXMuCisgICAobWVyZ2UgZmY2MTY4MWI0NiBjYi9wY3JlMS1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCByYW5nZS1kaWZmIiBzZWdmYXVsdGVkIHdoZW4gZGlmZi5ub3ByZWZpeCBjb25maWd1cmF0aW9uIHdhcworICAgdXNlZCwgYXMgaXQgYmxpbmRseSBleHBlY3RlZCB0aGUgcGF0Y2ggaXQgaW50ZXJuYWxseSBnZW5lcmF0ZXMgdG8KKyAgIGhhdmUgdGhlIHN0YW5kYXJkIGEvIGFuZCBiLyBwcmVmaXhlcy4gIFRoZSBjb21tYW5kIG5vdyBmb3JjZXMgdGhlCisgICBpbnRlcm5hbCBwYXRjaCB0byBiZSBidWlsdCB3aXRob3V0IGFueSBwcmVmaXgsIG5vdCB0byBiZSBhZmZlY3RlZAorICAgYnkgYW55IGVuZC11c2VyIGNvbmZpZ3VyYXRpb24uCisgICAobWVyZ2UgOTM3Yjc2ZWQ0OSBqcy9yYW5nZS1kaWZmLW5vcHJlZml4IGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBzdGFzaCBhcHBseSIgaW4gYSBzdWJkaXJlY3Rvcnkgb2YgYSBzZWNvbmRhcnkgd29ya3RyZWUgZmFpbGVkCisgICB0byBhY2Nlc3MgdGhlIHdvcmt0cmVlIGNvcnJlY3RseSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIGRmZDU1N2M5NzgganMvc3Rhc2gtYXBwbHktaW4tc2Vjb25kYXJ5LXdvcmt0cmVlIGxhdGVyIHRvIG1haW50KS4KKworICogVGhlIG1lcmdlLXJlY3Vyc2l2ZSBtYWNoaW5lcnkgaXMgb25lIG9mIHRoZSBtb3N0IGNvbXBsZXggcGFydHMgb2YKKyAgIHRoZSBzeXN0ZW0gdGhhdCBhY2N1bXVsYXRlZCBjcnVmdCBvdmVyIHRpbWUuICBUaGlzIGxhcmdlIHNlcmllcworICAgY2xlYW5zIHVwIHRoZSBpbXBsZW1lbnRhdGlvbiBxdWl0ZSBhIGJpdC4KKyAgIChtZXJnZSBiNjU3MDQ3NzE5IGVuL21lcmdlLXJlY3Vyc2l2ZS1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KKworICogUHJldHR5LXByaW50ZWQgY29tbWFuZCBsaW5lIGZvcm1hdHRlciAodXNlZCBpbiBlLmcuIHJlcG9ydGluZyB0aGUKKyAgIGNvbW1hbmQgYmVpbmcgcnVuIGJ5IHRoZSB0cmFjaW5nIEFQSSkgaGFkIGEgYnVnIHRoYXQgbG9zdCBhbgorICAgYXJndW1lbnQgdGhhdCBpcyBhbiBlbXB0eSBzdHJpbmcsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSBjZTJkN2VkMmZkIGdzL3NxLXF1b3RlLWJ1Zi1wcmV0dHkgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZ2l0IHJhbmdlLWRpZmYiIGZhaWxlZCB0byBoYW5kbGUgbW9kZS1vbmx5IGNoYW5nZSwgd2hpY2ggaGFzIGJlZW4KKyAgIGNvcnJlY3RlZC4KKyAgIChtZXJnZSAyYjZhOWIxM2NhIHRnL3JhbmdlLWRpZmYtb3V0cHV0LXVwZGF0ZSBsYXRlciB0byBtYWludCkuCisKKyAqIERldiBzdXBwb3J0IHVwZGF0ZS4KKyAgIChtZXJnZSA0ZjNjMWRjNWQ2IGRsL2FsbG93LXJ1bm5pbmctY29jY2ktdmVyYm9zZWx5IGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBmb3JtYXQtcGF0Y2ggLW8gPG91dGRpcj4iIGRpZCBhbiBlcXVpdmFsZW50IG9mICJta2RpciA8b3V0ZGlyPiIKKyAgIG5vdCAibWtkaXIgLXAgPG91dGRpcj4iLCB3aGljaCB3YXMgY29ycmVjdGVkLgorCisgKiAiZ2l0IHN0YXNoIHNhdmUiIGxvc3QgbG9jYWwgY2hhbmdlcyB0byBzdWJtb2R1bGVzLCB3aGljaCBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorICAgKG1lcmdlIDU1Njg5NWQwYzggamovc3Rhc2gtcmVzZXQtb25seS10b3BsZXZlbCBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBhdG9taWMgcHVzaCBvdmVyIHNtYXJ0IEhUVFAgdHJhbnNwb3J0IGRpZCBub3Qgd29yaywgd2hpY2ggaGFzCisgICBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSA2ZjExOTQyNDZhIGJjL3NtYXJ0LWh0dHAtYXRvbWljLXB1c2ggbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBPdGhlciBjb2RlIGNsZWFudXAsIGRvY2ZpeCwgYnVpbGQgZml4LCBldGMuCisgICAobWVyZ2UgZDEzODdkMzg5NSBlbi9mYXN0LWltcG9ydC1tZXJnZS1kb2MgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDFjMjRhNTRlYTQgYm0vcmVwb3NpdG9yeS1sYXlvdXQtdHlwb2ZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNDE1Yjc3MGI4OCBkcy9taWR4LWV4cGlyZS1yZXBhY2sgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDE5ODAwYmRjM2YgbmQvZGlmZi1wYXJzZW9wdCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNTgxNjZjMmU5ZCB0Zy90MDAyMS1yYWNlZml4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA3MDI3ZjUwOGM3IGRsL2NvbXBhdC1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBlNzcwZmJmZWZmIGpjL3Rlc3QtY2xlYW51cCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMWZkODgxZDQwNCBycy90cmFjZTItZHN0LXdhcm5pbmcgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDdlOTI3NTY3NTEgbWgvaHR0cC11cmxtYXRjaC1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA5Nzg0Zjk3MzIxIG1oL3JlbGVhc2UtY29tbWl0LW1lbW9yeS1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDYwZDE5OGQwMjIgdGIvYmFubmVkLXZzcHJpbnRmLW5hbWVmaXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDgwZTM2NTg2NDcgcnMvaGVscC11bmtub3duLXJlZi1kb2VzLW5vdC1yZXR1cm4gbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDBhOGJjNzA2OGYgZHQvcmVtb3RlLWhlbHBlci1kb2MtcmUtbG9jay1vcHRpb24gbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDI3ZmQxZTRlYTcgZW4vbWVyZ2Utb3B0aW9ucy1mZi1hbmQtZnJpZW5kcyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNTAyYzM4NmZmOSBzZy9jbGVhbi1uZXN0ZWQtcmVwby13aXRoLWlnbm9yZWQgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDI2ZTNkMWNiZWEgYW0vbWFpbG1hcC1hbmRyZXktbWF6byBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNDdiMjdjOTZmYSBzcy9nZXQtdGltZS1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBkZDJlNTBhODRlIGprL2NvbW1pdC1ncmFwaC1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA0ZmQzOWM3NmU2IGNzL3ByZXR0eS1mb3JtYXRzLWRvYy10eXBvZml4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA0MGU3NDdlODlkIGRsL3N1Ym1vZHVsZS1zZXQtYnJhbmNoIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA2ODlhMTQ2YzkxIHJzL2NvbW1pdC1ncmFwaC11c2UtbGlzdC1jb3VudCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMGViN2MzN2E4YSBqcy9kb2MtcGF0Y2gtdGV4dCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNGIzYWExNzBkMSBycy9udGgtc3dpdGNoLWNvZGUtc2ltcGxpZmljYXRpb24gbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDBkNDMwNGMxMjQgYWgvZG9jLXN1Ym1vZHVsZS1pZ25vcmUtc3VibW9kdWxlcyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYWY3ODI0OTQ2MyBjYy9zdm4tZmUtcHktc2hlYmFuZyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgN2JkOTdkNmRmZiBycy9hbGlhcy11c2UtY29weS1hcnJheSBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYzQ2ZWJjMjQ5NiBzZy90cmF2aXMtaGVscC1kZWJ1ZyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMjRjNjgxNzk0ZiBwcy9teS1maXJzdC1jb250cmlidXRpb24tYWxwaGFzb3J0IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA3NWIyYzE1NDM1IGNiL2RvLW5vdC11c2UtdGVzdC1jbXAtd2l0aC1hIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBjZGEwZDQ5N2UzIGJ3L3N1Ym1vZHVsZS1oZWxwZXItdXNhZ2UtZml4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBmZTBlZDVkNWU5IGFtL3Zpc3VhbC1zdHVkaW8tY29uZmlnLWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMmUwOWMwMTIzMiBzZy9uYW1lLXJldi1jdXRvZmYtdW5kZXJmbG93LWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgZGRiM2M4NTZmMyBhcy9zaGFsbG93LXNsYWItdXNlLWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNzFmNDk2MGI5MSBqcy9taW5ndy1zcGF3bi13aXRoLXNwYWNlcy1pbi1wYXRoIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA1M2Q2ODdiZjVmIGFoL2NsZWFudXBzIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBmNTM3NDg1ZmE1IHJzL3Rlc3QtcmVtb3ZlLXVzZWxlc3MtZGVidWdnaW5nLWNhdCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMTFhM2QzYWFkZCBkbC9yZXYtbGlzdC1kb2MtY2xlYW51cCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgZDkyOGE4Mzg4YSBhbS90MDAyOC11dGYxNi10ZXN0cyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYjA1YjQwOTMwZSBkbC90MDAwMC1za2lwLXRlc3QtdGVzdCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMDNkM2IxMjk3YyBqcy94ZGlmZmktY29tbWVudC11cGRhdGVzIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA1N2Q4ZjRiNGM3IGpzL2RvYy1zdGFzaC1zYXZlIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA4YzFjZmQ1OGUzIHRhL3QxMzA4LXR5cG9maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGZhMzY0YWQ3OTAgYmIvdXRmOC13Y3dpZHRoLWNsZWFudXAgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDY4YjY5MjExYjIgYmIvY29tcGF0LXV0aWwtY29tbWVudC1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDVjYzZhNGJlMTEgcnMvaHR0cC1wdXNoLXNpbXBsaWZ5IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBhODFlNDJkMjM1IHJzL2NvbHVtbi11c2UtdXRmOC1zdHJud2lkdGggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDA2MmEzMDlkMzYgcnMvcmVtb3RlLWN1cmwtdXNlLWFyZ3YtYXJyYXkgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDNiM2M3OWY2YzkgbnIvZGlmZi1oaWdobGlnaHQtaW5kZW50LWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMzQ0NGVjMmViMiB3Yi9mc21vbml0b3ItYml0bWFwLWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMTBkYTAzMGFiNyBjYi9wY3JlMi1jaGFydGFibGVzLWxlYWtmaXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDYwZTY1NjlhMTIganMvbWluZ3ctbmVlZHMtaGlkaW5nLWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNTJiZDNlNDY1NyBybC9naXR3ZWItYmxhbWUtcHJldi1maXggbGF0ZXIgdG8gbWFpbnQpLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjI0LjEudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjI0LjEudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE4MTA0ODUKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMjQuMS50eHQKQEAgLTAsMCArMSw4IEBACitHaXQgdjIuMjQuMSBSZWxlYXNlIE5vdGVzCis9PT09PT09PT09PT09PT09PT09PT09PT09CisKK1RoaXMgcmVsZWFzZSBtZXJnZXMgdXAgdGhlIGZpeGVzIHRoYXQgYXBwZWFyIGluIHYyLjE0LjYsIHYyLjE1LjQsCit2Mi4xNy4zLCB2Mi4yMC4yIGFuZCBpbiB2Mi4yMS4xLCBhZGRyZXNzaW5nIHRoZSBzZWN1cml0eSBpc3N1ZXMKK0NWRS0yMDE5LTEzNDgsIENWRS0yMDE5LTEzNDksIENWRS0yMDE5LTEzNTAsIENWRS0yMDE5LTEzNTEsCitDVkUtMjAxOS0xMzUyLCBDVkUtMjAxOS0xMzUzLCBDVkUtMjAxOS0xMzU0LCBDVkUtMjAxOS0xMzg3LCBhbmQKK0NWRS0yMDE5LTE5NjA0OyBzZWUgdGhlIHJlbGVhc2Ugbm90ZXMgZm9yIHRob3NlIHZlcnNpb25zIGZvciBkZXRhaWxzLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjI1LjAudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjI1LjAudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkxY2ViMzQKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMjUuMC50eHQKQEAgLTAsMCArMSwzNzAgQEAKK0dpdCAyLjI1IFJlbGVhc2UgTm90ZXMKKz09PT09PT09PT09PT09PT09PT09PT0KKworVXBkYXRlcyBzaW5jZSB2Mi4yNAorLS0tLS0tLS0tLS0tLS0tLS0tLQorCitCYWNrd2FyZCBjb21wYXRpYmlsaXR5IG5vdGVzCisKKworVUksIFdvcmtmbG93cyAmIEZlYXR1cmVzCisKKyAqIEEgdHV0b3JpYWwgb24gb2JqZWN0IGVudW1lcmF0aW9uIGhhcyBiZWVuIGFkZGVkLgorCisgKiBUaGUgYnJhbmNoIGRlc2NyaXB0aW9uICgiZ2l0IGJyYW5jaCAtLWVkaXQtZGVzY3JpcHRpb24iKSBoYXMgYmVlbgorICAgdXNlZCB0byBmaWxsIHRoZSBib2R5IG9mIHRoZSBjb3ZlciBsZXR0ZXJzIGJ5IHRoZSBmb3JtYXQtcGF0Y2gKKyAgIGNvbW1hbmQ7IHRoaXMgaGFzIGJlZW4gZW5oYW5jZWQgc28gdGhhdCB0aGUgc3ViamVjdCBjYW4gYWxzbyBiZQorICAgZmlsbGVkLgorCisgKiAiZ2l0IHJlYmFzZSAtLXByZXNlcnZlLW1lcmdlcyIgaGFzIGJlZW4gbWFya2VkIGFzIGRlcHJlY2F0ZWQ7IHRoaXMKKyAgIHJlbGVhc2Ugc3RvcHMgYWR2ZXJ0aXNpbmcgaXQgaW4gdGhlICJnaXQgcmViYXNlIC1oIiBvdXRwdXQuCisKKyAqIFRoZSBjb2RlIHRvIGdlbmVyYXRlIG11bHRpLXBhY2sgaW5kZXggbGVhcm5lZCB0byBzaG93IChvciBub3QgdG8KKyAgIHNob3cpIHByb2dyZXNzIGluZGljYXRvcnMuCisKKyAqICJnaXQgYXBwbHkgLS0zd2F5IiBsZWFybmVkIHRvIGhvbm9yIG1lcmdlLmNvbmZsaWN0U3R5bGUKKyAgIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUsIGxpa2UgbWVyZ2VzIHdvdWxkLgorCisgKiBUaGUgY3VzdG9tIGZvcm1hdCBmb3IgImdpdCBsb2cgLS1mb3JtYXQ9PGZvcm1hdD4iIGxlYXJuZWQgdGhlIGwvTAorICAgcGxhY2Vob2xkZXIgdGhhdCBpcyBzaW1pbGFyIHRvIGUvRSB0aGF0IGZpbGxzIGluIHRoZSBlLW1haWwKKyAgIGFkZHJlc3MsIGJ1dCBvbmx5IHRoZSBsb2NhbCBwYXJ0IG9uIHRoZSBsZWZ0IHNpZGUgb2YgJ0AnLgorCisgKiBEb2N1bWVudGF0aW9uIHBhZ2VzIGZvciAiZ2l0IHNob3J0bG9nIiBub3cgbGlzdCBjb21taXQgbGltaXRpbmcKKyAgIG9wdGlvbnMgZXhwbGljaXRseS4KKworICogVGhlIHBhdHRlcm5zIHRvIGRldGVjdCBmdW5jdGlvbiBib3VuZGFyeSBmb3IgRWxpeGlyIGxhbmd1YWdlIGhhcworICAgYmVlbiBhZGRlZC4KKworICogVGhlIGNvbXBsZXRpb24gc2NyaXB0IChpbiBjb250cmliLykgbGVhcm5lZCB0aGF0IHRoZSAiLS1vbnRvIgorICAgb3B0aW9uIG9mICJnaXQgcmViYXNlIiBjYW4gdGFrZSBpdHMgYXJndW1lbnQgYXMgdGhlIHZhbHVlIG9mIHRoZQorICAgb3B0aW9uLgorCisgKiBUaGUgdXNlcmRpZmYgbWFjaGluZXJ5IGhhcyBiZWVuIHRhdWdodCB0aGF0ICJhc3luYyBkZWYiIGlzIGFub3RoZXIKKyAgIHdheSB0byBiZWdpbiBhICJmdW5jdGlvbiIgaW4gUHl0aG9uLgorCisgKiAiZ2l0IHJhbmdlLWRpZmYiIGxlYXJuZWQgdG8gdGFrZSB0aGUgIi0tbm90ZXM9PHJlZj4iIGFuZCB0aGUKKyAgICItLW5vLW5vdGVzIiBvcHRpb25zIHRvIGNvbnRyb2wgdGhlIGNvbW1pdCBub3RlcyBpbmNsdWRlZCBpbiB0aGUKKyAgIGxvZyBtZXNzYWdlIHRoYXQgZ2V0cyBjb21wYXJlZC4KKworICogImdpdCByZXYtcGFyc2UgLS1zaG93LXRvcGxldmVsIiBydW4gb3V0c2lkZSBvZiBhbnkgd29ya2luZyB0cmVlIGRpZAorICAgbm90IGVycm9yIG91dCwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBBIGZldyBjb21tYW5kcyBsZWFybmVkIHRvIHRha2UgdGhlIHBhdGhzcGVjIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0CisgICBvciBhIG5hbWVkIGZpbGUsIGluc3RlYWQgb2YgdGFraW5nIGl0IGFzIHRoZSBjb21tYW5kIGxpbmUKKyAgIGFyZ3VtZW50cywgd2l0aCB0aGUgIi0tcGF0aHNwZWMtZnJvbS1maWxlIiBvcHRpb24uCisKKyAqICJnaXQgc3VibW9kdWxlIiBsZWFybmVkIGEgc3ViY29tbWFuZCAic2V0LXVybCIuCisKKyAqICJnaXQgbG9nIiBmYW1pbHkgbGVhcm5lZCAiLS1wcmV0dHk9cmVmZXJlbmNlIiB0aGF0IGdpdmVzIHRoZSBuYW1lCisgICBvZiBhIGNvbW1pdCBpbiB0aGUgZm9ybWF0IHRoYXQgaXMgb2Z0ZW4gdXNlZCB0byByZWZlciB0byBpdCBpbiBsb2cKKyAgIG1lc3NhZ2VzLgorCisgKiBUaGUgaW50ZXJhY3Rpb24gYmV0d2VlbiAiZ2l0IGNsb25lIC0tcmVjdXJzZS1zdWJtb2R1bGVzIiBhbmQKKyAgIGFsdGVybmF0ZSBvYmplY3Qgc3RvcmUgd2FzIGlsbC1kZXNpZ25lZC4gIFRoZSBkb2N1bWVudGF0aW9uIGFuZAorICAgY29kZSBoYXZlIGJlZW4gdGF1Z2h0IHRvIG1ha2UgbW9yZSBjbGVhciByZWNvbW1lbmRhdGlvbnMgd2hlbiB0aGUKKyAgIHVzZXJzIHNlZSBmYWlsdXJlcy4KKworICogTWFuYWdlbWVudCBvZiBzcGFyc2VseSBjaGVja2VkLW91dCB3b3JraW5nIHRyZWUgaGFzIGdhaW5lZCBhCisgICBkZWRpY2F0ZWQgInNwYXJzZS1jaGVja291dCIgY29tbWFuZC4KKworICogTWlzY2VsbGFuZW91cyBzbWFsbCBVWCBpbXByb3ZlbWVudHMgb24gImdpdC1wNCIuCisKKyAqICJnaXQgc3BhcnNlLWNoZWNrb3V0IGxpc3QiIHN1YmNvbW1hbmQgbGVhcm5lZCB0byBnaXZlIGl0cyBvdXRwdXQgaW4KKyAgIGEgbW9yZSBjb25jaXNlIGZvcm0gd2hlbiB0aGUgImNvbmUiIG1vZGUgaXMgaW4gZWZmZWN0LgorCisKK1BlcmZvcm1hbmNlLCBJbnRlcm5hbCBJbXBsZW1lbnRhdGlvbiwgRGV2ZWxvcG1lbnQgU3VwcG9ydCBldGMuCisKKyAqIERlYnVnZ2luZyBzdXBwb3J0IGZvciBsYXp5IGNsb25pbmcgaGFzIGJlZW4gYSBiaXQgaW1wcm92ZWQuCisKKyAqIE1vdmUgdGhlIGRlZmluaXRpb24gb2YgYSBzZXQgb2YgYml0bWFzayBjb25zdGFudHMgZnJvbSAwY3RhbAorICAgbGl0ZXJhbCB0byAoMVU8PGNvdW50KSBub3RhdGlvbi4KKworICogVGVzdCB1cGRhdGVzIHRvIHByZXBhcmUgZm9yIFNIQS0yIHRyYW5zaXRpb24gY29udGludWVzLgorCisgKiBDcnVmdHkgY29kZSBhbmQgbG9naWMgYWNjdW11bGF0ZWQgb3ZlciB0aW1lIGFyb3VuZCB0aGUgb2JqZWN0CisgICBwYXJzaW5nIGFuZCBsb3ctbGV2ZWwgb2JqZWN0IGFjY2VzcyB1c2VkIGluICJnaXQgZnNjayIgaGF2ZSBiZWVuCisgICBjbGVhbmVkIHVwLgorCisgKiBUaGUgaW1wbGVtZW50YXRpb24gb2YgImdpdCBsb2cgLS1ncmFwaCIgZ290IHJlZmFjdG9yZWQgYW5kIHRoZW4gaXRzCisgICBvdXRwdXQgZ290IHNpbXBsaWZpZWQuCisKKyAqIEZvbGxvdyByZWNlbnQgcHVzaCB0byBtb3ZlIEFQSSBkb2NzIGZyb20gRG9jdW1lbnRhdGlvbi8gdG8gaGVhZGVyCisgICBmaWxlcyBhbmQgdXBkYXRlIGNvbmZpZy5oCisKKyAqICJnaXQgYnVuZGxlIiBoYXMgYmVlbiB0YXVnaHQgdG8gdXNlIHRoZSBwYXJzZSBvcHRpb25zIEFQSS4gICJnaXQKKyAgIGJ1bmRsZSB2ZXJpZnkiIGxlYXJuZWQgIi0tcXVpZXQiIGFuZCAiZ2l0IGJ1bmRsZSBjcmVhdGUiIGxlYXJuZWQKKyAgIG9wdGlvbnMgdG8gY29udHJvbCB0aGUgcHJvZ3Jlc3Mgb3V0cHV0LgorCisgKiBIYW5kbGluZyBvZiBjb21taXQgb2JqZWN0cyB0aGF0IHVzZSBub24gVVRGLTggZW5jb2RpbmcgZHVyaW5nCisgICAicmViYXNlIC1pIiBoYXMgYmVlbiBpbXByb3ZlZC4KKworICogVGhlIGJlZ2lubmluZyBvZiByZXdyaXRpbmcgImdpdCBhZGQgLWkiIGluIEMuCisKKyAqIEEgbGFiZWwgdXNlZCBpbiB0aGUgdG9kbyBsaXN0IHRoYXQgYXJlIGdlbmVyYXRlZCBieSAiZ2l0IHJlYmFzZQorICAgLS1yZWJhc2UtbWVyZ2VzIiBpcyB1c2VkIGFzIGEgcGFydCBvZiBhIHJlZm5hbWU7IHRoZSBsb2dpYyB0byBjb21lCisgICB1cCB3aXRoIHRoZSBsYWJlbCBoYXMgYmVlbiB0aWdodGVuZWQgdG8gYXZvaWQgbmFtZXMgdGhhdCBjYW5ub3QgYmUKKyAgIHVzZWQgYXMgc3VjaC4KKworICogVGhlIGxvZ2ljIHRvIGF2b2lkIGR1cGxpY2F0ZSBsYWJlbCBuYW1lcyBnZW5lcmF0ZWQgYnkgImdpdCByZWJhc2UKKyAgIC0tcmViYXNlLW1lcmdlcyIgZm9yZ290IHRoYXQgdGhlIG1hY2hpbmVyeSBpdHNlbGYgdXNlcyAib250byIgYXMgYQorICAgbGFiZWwgbmFtZSwgd2hpY2ggbXVzdCBiZSBhdm9pZGVkIGJ5IGF1dG8tZ2VuZXJhdGVkIGxhYmVscywgd2hpY2gKKyAgIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogV2UgaGF2ZSBoYWQgY29tcGF0aWJpbGl0eSBmYWxsYmFjayBtYWNybyBkZWZpbml0aW9ucyBmb3IgIlBSSXVNQVgiLAorICAgIlBSSXUzMiIsIGV0Yy4gYnV0IGRpZCBub3QgZm9yICJQUklkTUFYIiwgd2hpbGUgdGhlIGNvZGUgdXNlZCB0aGUKKyAgIGxhc3Qgb25lIGFwcGFyZW50bHkgd2l0aG91dCBhbnkgaGljY3VwIHJlcG9ydGVkIHJlY2VudGx5LiAgVGhlCisgICBmYWxsYmFjayBtYWNybyBkZWZpbml0aW9ucyBmb3IgdGhlc2UgPGludHR5cGVzLmg+IG1hY3JvcyB0aGF0IG11c3QKKyAgIGFwcGVhciBpbiBDOTkgc3lzdGVtcyBoYXZlIGJlZW4gcmVtb3ZlZC4KKworICogUmVjZW50bHkgd2UgaGF2ZSBkZWNsYXJlZCB0aGF0IEdJVF9URVNUXyogdmFyaWFibGVzIHRha2UgdGhlCisgICB1c3VhbCBib29sZWFuIHZhbHVlcyAoaXQgdXNlZCB0byBiZSB0aGF0IHNvbWUgdXNlZCAibm9uLWVtcHR5CisgICBtZWFucyB0cnVlIiBhbmQgdGFraW5nIEdJVF9URVNUX1ZBUj1ZZXNQbGVhc2UgYXMgdHJ1ZSk7IG1ha2UKKyAgIHN1cmUgd2Ugbm90aWNlIGFuZCBmYWlsIHdoZW4gbm9uLWJvb2wgc3RyaW5ncyBhcmUgZ2l2ZW4gdG8KKyAgIHRoZXNlIHZhcmlhYmxlcy4KKworICogVXNlcnMgb2Ygb25ld2F5X21lcmdlKCkgKGxpa2UgInJlc2V0IC0taGFyZCIpIGxlYXJuZWQgdG8gdGFrZQorICAgYWR2YW50YWdlIG9mIGZzbW9uaXRvciB0byBhdm9pZCB1bm5lY2Vzc2FyeSBsc3RhdCgyKSBjYWxscy4KKworICogUGVyZm9ybWFuY2UgdHdlYWsgb24gImdpdCBwdXNoIiBpbnRvIGEgcmVwb3NpdG9yeSB3aXRoIG1hbnkgcmVmcworICAgdGhhdCBwb2ludCBhdCBvYmplY3RzIHdlIGhhdmUgbmV2ZXIgaGVhcmQgb2YuCisKKyAqIFBlcmZUZXN0IGZpeCB0byBhdm9pZCBzdGFsZSByZXN1bHQgbWl4ZWQgdXAgd2l0aCB0aGUgbGF0ZXN0IHJvdW5kCisgICBvZiB0ZXN0IHJlc3VsdHMuCisKKyAqIEhpZGUgbG93ZXItbGV2ZWwgdmVyaWZ5X3NpZ25lZC1idWZmZXIoKSBBUEkgYXMgYSBwdXJlIGhlbHBlciB0bworICAgaW1wbGVtZW50IHRoZSBwdWJsaWMgY2hlY2tfc2lnbmF0dXJlKCkgZnVuY3Rpb24sIGluIG9yZGVyIHRvCisgICBlbmNvdXJhZ2UgbmV3IGNhbGxlcnMgdG8gdXNlIHRoZSBjb3JyZWN0IGFuZCBtb3JlIHN0cmljdAorICAgdmFsaWRhdGlvbi4KKworICogVW5uZWNlc3NhcnkgcmVhZGluZyBvZiBzdGF0ZSB2YXJpYWJsZXMgYmFjayBmcm9tIHRoZSBkaXNrIGR1cmluZworICAgc2VxdWVuY2VyIG9wZXJhdGlvbiBoYXMgYmVlbiByZWR1Y2VkLgorCisgKiBUaGUgY29kZSBoYXMgYmVlbiBtYWRlIHRvIGF2b2lkIGdtdGltZSgpIGFuZCBsb2NhbHRpbWUoKSBhbmQgcHJlZmVyCisgICB0aGVpciByZWVudHJhbnQgY291bnRlcnBhcnRzLgorCisgKiBJbiBhIHJlcG9zaXRvcnkgd2l0aCBtYW55IHBhY2tmaWxlcywgdGhlIGNvc3Qgb2YgdGhlIHByb2NlZHVyZSB0aGF0CisgICBhdm9pZHMgcmVnaXN0ZXJpbmcgdGhlIHNhbWUgcGFja2ZpbGUgdHdpY2Ugd2FzIHVubmVjZXNzYXJpbHkgaGlnaAorICAgYnkgdXNpbmcgYW4gaW5lZmZpY2llbnQgc2VhcmNoIGFsZ29yaXRobSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBSZWRvICJnaXQgbmFtZS1yZXYiIHRvIGF2b2lkIHJlY3Vyc2l2ZSBjYWxscy4KKworICogRnJlZUJTRCBDSSBzdXBwb3J0IHZpYSBDaXJydXMtQ0kgaGFzIGJlZW4gYWRkZWQuCisKKworRml4ZXMgc2luY2UgdjIuMjQKKy0tLS0tLS0tLS0tLS0tLS0tCisKKyAqICJyZWJhc2UgLWkiIGNlYXNlZCB0byBydW4gcG9zdC1jb21taXQgaG9vayBieSBtaXN0YWtlIGluIGFuIGVhcmxpZXIKKyAgIHVwZGF0ZSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiAiZ2l0IG5vdGVzIGNvcHkgJG9yaWdpbmFsIiBvdWdodCB0byBjb3B5IHRoZSBub3RlcyBhdHRhY2hlZCB0byB0aGUKKyAgIG9yaWdpbmFsIG9iamVjdCB0byBIRUFELCBidXQgYSBtaXN0YWtlbiB0aWdodGVuaW5nIHRvIGNvbW1hbmQgbGluZQorICAgcGFyYW1ldGVyIHZhbGlkYXRpb24gbWFkZSBlYXJsaWVyIGRpc2FibGVkIHRoYXQgZmVhdHVyZSBieSBtaXN0YWtlLgorCisgKiBXaGVuIGFsbCBmaWxlcyBmcm9tIHNvbWUgc3ViZGlyZWN0b3J5IHdlcmUgcmVuYW1lZCB0byB0aGUgcm9vdAorICAgZGlyZWN0b3J5LCB0aGUgZGlyZWN0b3J5IHJlbmFtZSBoZXVyaXN0aWNzIHdvdWxkIGZhaWwgdG8gZGV0ZWN0IHRoYXQKKyAgIGFzIGEgcmVuYW1lL21lcmdlIG9mIHRoZSBzdWJkaXJlY3RvcnkgdG8gdGhlIHJvb3QgZGlyZWN0b3J5LCB3aGljaCBoYXMKKyAgIGJlZW4gY29ycmVjdGVkLgorCisgKiBDb2RlIGNsZWFuLXVwIGFuZCBhIGJ1Z2ZpeCBpbiB0aGUgbG9naWMgdXNlZCB0byB0ZWxsIHdvcmt0cmVlIGxvY2FsCisgICBhbmQgcmVwb3NpdG9yeSBnbG9iYWwgcmVmcyBhcGFydC4KKyAgIChtZXJnZSBmNDVmODhiMmU0IHNnL2Rpci10cmllLWZpeGVzIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBzdGFzaCBzYXZlIiBpbiBhIHdvcmtpbmcgdHJlZSB0aGF0IGlzIHNwYXJzZWx5IGNoZWNrZWQgb3V0CisgICBtaXN0YWtlbmx5IHJlbW92ZWQgcGF0aHMgdGhhdCBhcmUgb3V0c2lkZSB0aGUgYXJlYSBvZiBpbnRlcmVzdC4KKyAgIChtZXJnZSA0YTU4YzNkN2Y3IGpzL3VwZGF0ZS1pbmRleC1pZ25vcmUtcmVtb3ZhbC1mb3Itc2tpcC13b3JrdHJlZSBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgcmV2LXBhcnNlIC0tZ2l0LXBhdGggSEVBRC5sb2NrIiBkaWQgbm90IGdpdmUgdGhlIHJpZ2h0IHBhdGgKKyAgIHdoZW4gcnVuIGluIGEgc2Vjb25kYXJ5IHdvcmt0cmVlLgorICAgKG1lcmdlIDc2YTUzZDY0MGYganMvZ2l0LXBhdGgtaGVhZC1kb3QtbG9jay1maXggbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZ2l0IG1lcmdlIC0tbm8tY29tbWl0IiBuZWVkcyAiLS1uby1mZiIgaWYgeW91IGRvIG5vdCB3YW50IHRvIG1vdmUKKyAgIEhFQUQsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZCBpbiB0aGUgbWFudWFsIHBhZ2UgZm9yICJnaXQgYmlzZWN0Ii4KKyAgIChtZXJnZSA4ZGQzMjdiMjQ2IG1hL2Jpc2VjdC1kb2Mtc2FtcGxlLXVwZGF0ZSBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgd29ya3RyZWUgYWRkIiBpbnRlcm5hbGx5IGNhbGxzICJyZXNldCAtLWhhcmQiIHRoYXQgc2hvdWxkIG5vdAorICAgZGVzY2VuZCBpbnRvIHN1Ym1vZHVsZXMsIGV2ZW4gd2hlbiBzdWJtb2R1bGUucmVjdXJzZSBjb25maWd1cmF0aW9uCisgICBpcyBzZXQsIGJ1dCBpdCB3YXMgYWZmZWN0ZWQuICBUaGlzIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSA0NzgyY2YyYWI2IHBiL25vLXJlY3Vyc2l2ZS1yZXNldC1oYXJkLWluLXdvcmt0cmVlLWFkZCBsYXRlciB0byBtYWludCkuCisKKyAqIE1lc3NhZ2VzIGZyb20gZGllKCkgZXRjLiBjYW4gYmUgbWl4ZWQgdXAgZnJvbSBtdWx0aXBsZSBwcm9jZXNzZXMKKyAgIHdpdGhvdXQgZXZlbiBsaW5lIGJ1ZmZlcmluZyBvbiBXaW5kb3dzLCB3aGljaCBoYXMgYmVlbiB3b3JrZWQKKyAgIGFyb3VuZC4KKyAgIChtZXJnZSAxMTZkMWZhNmM2IGpzL3ZyZXBvcnRmLXdvLWJ1ZmZlcmluZyBsYXRlciB0byBtYWludCkuCisKKyAqIEhUVFAgdHJhbnNwb3J0IGhhZCBwb3NzaWJsZSBhbGxvY2F0b3IvZGVhbGxvY2F0b3IgbWlzbWF0Y2gsIHdoaWNoCisgICBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqIFRoZSB3YXRjaG1hbiBpbnRlZ3JhdGlvbiBmb3IgZnNtb25pdG9yIHdhcyByYWN5LCB3aGljaCBoYXMgYmVlbgorICAgY29ycmVjdGVkIHRvIGJlIG1vcmUgY29uc2VydmF0aXZlLgorICAgKG1lcmdlIGRkMGI2MWY1Nzcga3cvZnNtb25pdG9yLXdhdGNobWFuLWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqIEZldGNoaW5nIGZyb20gbXVsdGlwbGUgcmVtb3RlcyBpbnRvIHRoZSBzYW1lIHJlcG9zaXRvcnkgaW4gcGFyYWxsZWwKKyAgIGhhZCBhIGJhZCBpbnRlcmFjdGlvbiB3aXRoIHRoZSByZWNlbnQgY2hhbmdlIHRvIChvcHRpb25hbGx5KSB1cGRhdGUKKyAgIHRoZSBjb21taXQtZ3JhcGggYWZ0ZXIgYSBmZXRjaCBqb2IgZmluaXNoZXMsIGFzIHRoZXNlIHBhcmFsbGVsCisgICBmZXRjaGVzIGNvbXBldGUgd2l0aCBlYWNoIG90aGVyLiAgV2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBSZWNlbnQgdXBkYXRlIHRvICJnaXQgc3Rhc2ggcG9wIiBtYWRlIHRoZSBjb21tYW5kIGVtcHR5IHRoZSBpbmRleAorICAgd2hlbiBydW4gd2l0aCB0aGUgIi0tcXVpZXQiIG9wdGlvbiwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiAiZ2l0IGZldGNoIiBjb2RlcGF0aCBoYWQgYSBiaWcgImRvIG5vdCBsYXppbHkgZmV0Y2ggbWlzc2luZyBvYmplY3RzCisgICB3aGVuIEkgYXNrIGlmIHNvbWV0aGluZyBleGlzdHMiIHN3aXRjaC4gIFRoaXMgaGFzIGJlZW4gY29ycmVjdGVkIGJ5CisgICBtYXJraW5nIHRoZSAiZG9lcyB0aGlzIHRoaW5nIGV4aXN0PyIgY2FsbHMgd2l0aCAiaWYgbm90IHBsZWFzZSBkbyBub3QKKyAgIGxhemlseSBmZXRjaCBpdCIgZmxhZy4KKworICogVGVzdCB1cGRhdGUgdG8gYXZvaWQgd2FzdGVkIGN5Y2xlcy4KKyAgIChtZXJnZSBlMDMxNjY5NWVjIHNnL3NraXAtc2tpcHBlZC1wcmVyZXEgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBFcnJvciBoYW5kbGluZyBhZnRlciAiZ2l0IHB1c2giIGZpbmlzaGVzIHNlbmRpbmcgdGhlIHBhY2tkYXRhIGFuZAorICAgd2FpdHMgZm9yIHRoZSByZXNwb25zZSB0byB0aGUgcmVtb3RlIHNpZGUgaGFzIGJlZW4gaW1wcm92ZWQuCisgICAobWVyZ2UgYWQ3YTQwMzI2OCBqay9zZW5kLXBhY2stcmVtb3RlLWZhaWx1cmUgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBTb21lIGNvZGVwYXRocyBpbiAiZ2l0d2ViIiB0aGF0IGZvcmdvdCB0byBlc2NhcGUgVVJMcyBnZW5lcmF0ZWQKKyAgIGJhc2VkIG9uIGVuZC11c2VyIGlucHV0IGhhdmUgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgYTM3NmUzN2IyYyBqay9naXR3ZWItYW50aS14c3MgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBDSSBqb2JzIGZvciBtYWNPUyBoYXMgYmVlbiBtYWRlIGxlc3MgY2hhdHR5IHdoZW4gdXBkYXRpbmcgcGVyZm9yY2UKKyAgIHBhY2thZ2UgdXNlZCBkdXJpbmcgdGVzdGluZy4KKyAgIChtZXJnZSAwZGJjNGEwZWRmIGpjL2F6dXJlLWNpLW9zeC1maXgtZml4IGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCB1bnBhY2stb2JqZWN0cyIgdXNlZCB0byBzaG93IHByb2dyZXNzIGJhc2VkIG9ubHkgb24gdGhlIG51bWJlcgorICAgb2YgcmVjZWl2ZWQgYW5kIHVucGFja2VkIG9iamVjdHMsIHdoaWNoIHN0YWxsZWQgd2hlbiBpdCBoYXMgdG8KKyAgIGhhbmRsZSBhbiB1bnVzdWFsbHkgbGFyZ2Ugb2JqZWN0LiAgSXQgbm93IHNob3dzIHRoZSB0aHJvdWdocHV0IGFzCisgICB3ZWxsLgorICAgKG1lcmdlIGJhZTYwYmE3ZTkgc2cvdW5wYWNrLXByb2dyZXNzLXRocm91Z2hwdXQgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBUaGUgc2VxdWVuY2VyIG1hY2hpbmVyeSBjb21wYXJlZCB0aGUgSEVBRCBhbmQgdGhlIHN0YXRlIGl0IGlzCisgICBhdHRlbXB0aW5nIHRvIGNvbW1pdCB0byBkZWNpZGUgaWYgdGhlIHJlc3VsdCB3b3VsZCBiZSBhIG5vLW9wCisgICBjb21taXQsIGV2ZW4gd2hlbiBhbWVuZGluZyBhIGNvbW1pdCwgd2hpY2ggd2FzIGluY29ycmVjdCwgYW5kCisgICBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqIFRoZSBjb2RlIHRvIHBhcnNlIEdQRyBvdXRwdXQgdXNlZCB0byBhc3N1bWUgaW5jb3JyZWN0bHkgdGhhdCB0aGUKKyAgIGZpbnRlcnByaW50IGZvciB0aGUgcHJpbWFyeSBrZXkgd291bGQgYWx3YXlzIGJlIHByZXNlbnQgZm9yIGEgdmFsaWQKKyAgIHNpZ25hdHVyZSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIDY3YTZlYTYzMDAgaGkvZ3BnLW9wdGlvbmFsLXBrZnAtZml4IGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBzdWJtb2R1bGUgc3RhdHVzIiBhbmQgImdpdCBzdWJtb2R1bGUgc3RhdHVzIC0tY2FjaGVkIiBzaG93CisgICBkaWZmZXJlbnQgdGhpbmdzLCBidXQgdGhlIGRvY3VtZW50YXRpb24gZGlkIG5vdCBjb3ZlciB0aGVtCisgICBjb3JyZWN0bHksIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSA4ZDQ4M2M4NDA4IG1nL2RvYy1zdWJtb2R1bGUtc3RhdHVzLWNhY2hlZCBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgcmVzZXQgLS1wYXRjaCAkb2JqZWN0IiB3aXRob3V0IGFueSBwYXRoc3BlYyBzaG91bGQgYWxsb3cgYQorICAgdHJlZSBvYmplY3QgdG8gYmUgZ2l2ZW4sIGJ1dCBpbmNvcnJlY3RseSByZXF1aXJlZCBhIGNvbW1pdHRpc2gsCisgICB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqICJnaXQgc3VibW9kdWxlIHN0YXR1cyIgdGhhdCBpcyBydW4gZnJvbSBhIHN1YmRpcmVjdG9yeSBvZiB0aGUKKyAgIHN1cGVycHJvamVjdCBkaWQgbm90IHdvcmsgd2VsbCwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIDFmM2FlYTIyYzcgbWcvc3VibW9kdWxlLXN0YXR1cy1mcm9tLWEtc3ViZGlyZWN0b3J5IGxhdGVyIHRvIG1haW50KS4KKworICogVGhlIHJldmlzaW9uIHdhbGtpbmcgbWFjaGluZXJ5IHVzZXMgcmVzb3VyY2VzIGxpa2UgcGVyLW9iamVjdCBmbGFnCisgICBiaXRzIHRoYXQgbmVlZCB0byBiZSByZXNldCBiZWZvcmUgYSBuZXcgaXRlcmF0aW9uIG9mIHdhbGtpbmcKKyAgIGJlZ2lucywgYnV0IHRoZSByZXNvdXJjZXMgcmVsYXRlZCB0byB0b3BvbG9naWNhbCB3YWxrIHdlcmUgbm90CisgICBjbGVhcmVkIGNvcnJlY3RseSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIDBhYTBjMmIyZWMgbWgvY2xlYXItdG9wby13YWxrLXVwb24tcmVzZXQgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBUcmF2aXNDSSB1cGRhdGUuCisgICAobWVyZ2UgMTc2NDQxYmZiNSBzZy9vc3gtZm9yY2UtZ2NjLTkgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBXaGlsZSBydW5uaW5nICJyZXZlcnQiIG9yICJjaGVycnktcGljayAtLWVkaXQiIGZvciBtdWx0aXBsZQorICAgY29tbWl0cywgYSByZWNlbnQgcmVncmVzc2lvbiBpbmNvcnJlY3RseSBkZXRlY3RlZCAibm90aGluZyB0bworICAgY29tbWl0LCB3b3JraW5nIHRyZWUgY2xlYW4iLCBpbnN0ZWFkIG9mIHJlcGxheWluZyB0aGUgY29tbWl0cywKKyAgIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSBiZWZkNGY2YTgxIHNnL2Fzc3VtZS1uby10b2RvLXVwZGF0ZS1pbi1jaGVycnktcGljayBsYXRlciB0byBtYWludCkuCisKKyAqIFdvcmsgYXJvdW5kIGEgaXNzdWUgd2hlcmUgYSBGRCB0aGF0IGlzIGxlZnQgb3BlbiB3aGVuIHNwYXduaW5nIGEKKyAgIGNoaWxkIHByb2Nlc3MgYW5kIGlzIGtlcHQgb3BlbiBpbiB0aGUgY2hpbGQgY2FuIGludGVyZmVyZSB3aXRoIHRoZQorICAgb3BlcmF0aW9uIGluIHRoZSBwYXJlbnQgcHJvY2VzcyBvbiBXaW5kb3dzLgorCisgKiBPbmUga2luZCBvZiBwcm9ncmVzcyBtZXNzYWdlcyB3ZXJlIGFsd2F5cyBnaXZlbiBkdXJpbmcgY29tbWl0LWdyYXBoCisgICBnZW5lcmF0aW9uLCBpbnN0ZWFkIG9mIGZvbGxvd2luZyB0aGUgImlmIGl0IHRha2VzIG1vcmUgdGhhbiB0d28KKyAgIHNlY29uZHMsIHNob3cgcHJvZ3Jlc3MiIHBhdHRlcm4sIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogImdpdCByZWJhc2UiIGRpZCBub3Qgd29yayB3ZWxsIHdoZW4gZm9ybWF0LnVzZUF1dG9CYXNlCisgICBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGlzIHNldCwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBUaGUgImRpZmYiIG1hY2hpbmVyeSBsZWFybmVkIG5vdCB0byBsb3NlIGFkZGVkL3JlbW92ZWQgYmxhbmsgbGluZXMKKyAgIGluIHRoZSBjb250ZXh0IHdoZW4gLS1pZ25vcmUtYmxhbmstbGluZXMgYW5kIC0tZnVuY3Rpb24tY29udGV4dCBhcmUKKyAgIHVzZWQgYXQgdGhlIHNhbWUgdGltZS4KKyAgIChtZXJnZSAwYmIzMTNhNTUyIHJzL3hkaWZmLWlnbm9yZS13cy13LWZ1bmMtY29udGV4dCBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSB0ZXN0IG9uICJmYXN0LWltcG9ydCIgdXNlZCB0byBnZXQgc3R1Y2sgd2hlbiAiZmFzdC1pbXBvcnQiIGRpZWQKKyAgIGluIHRoZSBtaWRkbGUuCisgICAobWVyZ2UgMGQ5YjBkNzg4NSBzZy90OTMwMC1yb2J1c3RpZnkgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZ2l0IGZvcm1hdC1wYXRjaCIgY2FuIHRha2UgYSBzZXQgb2YgY29uZmlndXJlZCBmb3JtYXQubm90ZXMgdmFsdWVzCisgICB0byBzcGVjaWZ5IHdoaWNoIG5vdGVzIHJlZnMgdG8gdXNlIGluIHRoZSBsb2cgbWVzc2FnZSBwYXJ0IG9mIHRoZQorICAgb3V0cHV0LiAgVGhlIGJlaGF2aW91ciBvZiB0aGlzIHdhcyBub3QgY29uc2lzdGVudCB3aXRoIG11bHRpcGxlCisgICAtLW5vdGVzIGNvbW1hbmQgbGluZSBvcHRpb25zLCB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgZTBmOTA5NWFhYSBkbC9mb3JtYXQtcGF0Y2gtbm90ZXMtY29uZmlnLWZpeHVwIGxhdGVyIHRvIG1haW50KS4KKworICogImdpdCBwNCIgdXNlZCB0byBpZ25vcmUgbGZzLnN0b3JhZ2UgY29uZmlndXJhdGlvbiB2YXJpYWJsZSwgd2hpY2gKKyAgIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSBlYTk0YjE2ZmI4IHJiL3A0LWxmcyBsYXRlciB0byBtYWludCkuCisKKyAqIEFzc29ydGVkIGZpeGVzIHRvIHRoZSBkaXJlY3RvcnkgdHJhdmVyc2FsIEFQSS4KKyAgIChtZXJnZSA2ODM2ZDJmZTA2IGVuL2ZpbGwtZGlyZWN0b3J5LWZpeGVzIGxhdGVyIHRvIG1haW50KS4KKworICogRm9yYmlkIHBhdGhuYW1lcyB0aGF0IHRoZSBwbGF0Zm9ybSdzIGZpbGVzeXN0ZW0gY2Fubm90IHJlcHJlc2VudCBvbgorICAgTWluR1cuCisgICAobWVyZ2UgNGRjNDJjNmMxOCBqcy9taW5ndy1yZXNlcnZlZC1maWxlbmFtZXMgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZ2l0IHJlYmFzZSAtLXNpZ25vZmYiIHN0b3BwZWQgd29ya2luZyB3aGVuIHRoZSBjb21tYW5kIHdhcyB3cml0dGVuCisgICBpbiBDLCB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgNGZlN2U0M2M1MyBlbi9yZWJhc2Utc2lnbm9mZi1maXggbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBBbiBlYXJsaWVyIHVwZGF0ZSB0byBHaXQgZm9yIFdpbmRvd3MgZGVjbGFyZWQgdGhhdCBhIHRyZWUgb2JqZWN0IGlzCisgICBpbnZhbGlkIGlmIGl0IGhhcyBhIHBhdGggY29tcG9uZW50IHdpdGggYmFja3NsYXNoIGluIGl0LCB3aGljaCB3YXMKKyAgIG92ZXJseSBzdHJpY3QsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4gIFRoZSBvbmx5IHByb3RlY3Rpb24gdGhlCisgICBXaW5kb3dzIHVzZXJzIG5lZWQgaXMgdG8gcHJldmVudCBzdWNoIHBhdGggKG9yIGFueSBwYXRoIHRoYXQgdGhlaXIKKyAgIGZpbGVzeXN0ZW0gY2Fubm90IGNoZWNrIG91dCkgZnJvbSBlbnRlcmluZyB0aGUgaW5kZXguCisgICAobWVyZ2UgMjI0YzdkNzBmYSBqcy9taW5ndy1sb29zZW4tb3ZlcnN0cmljdC10cmVlLWVudHJ5LWNoZWNrcyBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSBjb2RlIHRvIHdyaXRlIHNwbGl0IGNvbW1pdC1ncmFwaCBmaWxlKHMpIHVwb24gZmV0Y2hpbmcgY29tcHV0ZWQKKyAgIGJvZ3VzIHZhbHVlIGZvciB0aGUgcGFyYW1ldGVyIHVzZWQgaW4gc3BsaXR0aW5nIHRoZSByZXN1bHRpbmcKKyAgIGZpbGVzLCB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgNjMwMjBmMTc1ZiBkcy9jb21taXQtZ3JhcGgtc2V0LXNpemUtbXVsdCBsYXRlciB0byBtYWludCkuCisKKyAqIE90aGVyIGNvZGUgY2xlYW51cCwgZG9jZml4LCBidWlsZCBmaXgsIGV0Yy4KKyAgIChtZXJnZSA4MDczNmQ3YzVlIGpjL2FtLXNob3ctY3VycmVudC1wYXRjaC1kb2NmaXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDhiNjU2NTcyY2Egc2cvY29tbWl0LWdyYXBoLXVzYWdlLWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNmMwMjA0MjEzOSBtci9jbG9uZS1kaXItZXhpc3RzLXRvLXBhdGgtZXhpc3RzIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA0NGFlMTMxZTM4IHNnL2JsYW1lLWluZGVudC1oZXVyaXN0aWNzLWlzLW5vdy10aGUtZGVmYXVsdCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMDExNWU1ZDkyOSBkbC9kb2MtZGlmZi1uby1pbmRleC1pbXBsaWVzLWV4aXQtY29kZSBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMjcwZGU2YWNiZSBlbi90NjAyNC1zdHlsZSBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMTRjNDc3NmQ3NSBucy90ZXN0LWRlc2MtdHlwb2ZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNjhkNDBmMzBjNCBkai90eXBvZml4LW1lcmdlLXN0cmF0IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBmNjZlMDQwMWFiIGprL29wdGltLWluLXBhY2staWR4LWNvbnZlcnNpb24gbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDE2OWJlZDc0MjEgcnMvcGFyc2Utb3B0aW9ucy1kdXAtbnVsbC1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDUxYmQ2YmUzMmQgcnMvdXNlLWNvcHktYXJyYXktaW4tbWluZ3ctc2hlbGwtY29tbWFuZC1wcmVwYXJhdGlvbiBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYjAxODcxOTkyNyBtYS90NzAwNCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgOTMyNzU3YjBjYyBhci9pbnN0YWxsLWRvYy11cGRhdGUtY21kcy1uZWVkaW5nLXRoZS1zaGVsbCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNDZlZmQyOGJlMSBlcC9ndWFyZC1rc2V0LXRhci1oZWFkZXJzIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA5ZTVhZmRmOTk3IGVjL2ZldGNoLW1hcmstY29tbW9uLXJlZnMtdHJhY2UyIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBmMGU1OGIzZmU4IHBiL3N1Ym1vZHVsZS11cGRhdGUtZmV0Y2hlcyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMmEwMjI2MjA3OCBkbC90NTUyMC1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBhNGZiMDE2YmExIGpzL3BrdC1saW5lLWgtdHlwb2ZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNTRhN2E2NDYxMyBycy9zaW1wbGlmeS1wcmVwYXJlLWNtZCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgM2VhZTMwZTQ2NCBqay9sb3JlLWlzLXRoZS1hcmNoaXZlIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSAxNGI3NjY0ZGY4IGRsL2xvcmUtaXMtdGhlLWFyY2hpdmUgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDBlNDBhNzNhNGMgcG8vYnVuZGxlLWRvYy1jbG9uYWJsZSBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgZTcxNGI4OThjNiBhcy90NzgxMi1taXNzaW5nLXJlZGlyZWN0cy1maXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDUyOGQ5ZTZkMDEgamsvcGVyZi13by1naXQtZG90LXBtIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBmYzQyZjIwZTI0IHNnL3Rlc3Qtc3F1ZWxjaC1ub2lzZS1pbi1jb21taXQtYnVsayBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYzY0MzY4ZTNhMiBiYy90OTAwMS16c2gtaW4tcG9zaXgtZW11bGF0aW9uLW1vZGUgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDExZGU4ZGQ3ZWYgZHIvYnJhbmNoLXVzYWdlLWNhc2VmaXggbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGUwNWU4Y2YwNzQgcnMvYXJjaGl2ZS16aXAtY29kZS1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSAxNDdlZTM1NTU4IHJzL2NvbW1pdC1leHBvcnQtZW52LXNpbXBsaWZ5IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA0NTA3ZWNjNzcxIHJzL3BhdGNoLWlkLXVzZS1vaWQtdG8taGV4IGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA1MWEwYTRlZDk1IG1yL2Jpc2VjdC11c2UtYWZ0ZXItZnJlZSBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgY2MyYmQ1YzQ1ZCBwYi9zdWJtb2R1bGUtZG9jLXhyZWYgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGRmNWJlMDE2NjkgamEvZG9jLW1hcmt1cC1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA3YzVjZWE3MjQyIG1yL2Jpc2VjdC1zYXZlLXBvaW50ZXItdG8tY29uc3Qtc3RyaW5nIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSAyMGE2N2U4Y2U5IGpzL3VzZS10ZXN0LXRvb2wtb24tcGF0aCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNGU2MWIyMjE0ZCBldy9wYWNrZmlsZS1zeXNjYWxsLW9wdGltIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBhY2UwZjg2YzdmIHBiL2NsYXJpZnktbGluZS1sb2ctZG9jIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA3NjNhNTllNzFjIGVuL21lcmdlLXJlY3Vyc2l2ZS1vaWQtZXEtc2ltcGxpZnkgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDRlMmM0YzBkNGYgZG8vZ2l0d2ViLXR5cG9maXgtaW4tY29tbWVudHMgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDQyMWMwZmZiMDIgamIvZG9jLW11bHRpLXBhY2staWR4LWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgZjg3NDBjNTg2YiBwbS9hbS1pbi1ib2R5LWhlYWRlci1kb2MtdXBkYXRlIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSA1ODE0ZDQ0ZDliIHRtL2RvYy1zdWJtb2R1bGUtYWJzb3JiLWZpeCBsYXRlciB0byBtYWludCkuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMjUuMS50eHQgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMjUuMS50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2Q4NjliMAotLS0gL2Rldi9udWxsCisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yNS4xLnR4dApAQCAtMCwwICsxLDU1IEBACitHaXQgMi4yNS4xIFJlbGVhc2UgTm90ZXMKKz09PT09PT09PT09PT09PT09PT09PT09PQorCitGaXhlcyBzaW5jZSB2Mi4yNQorLS0tLS0tLS0tLS0tLS0tLS0KKworICogImdpdCBjb21taXQiIGdpdmVzIG91dHB1dCBzaW1pbGFyIHRvICJnaXQgc3RhdHVzIiB3aGVuIHRoZXJlIGlzCisgICBub3RoaW5nIHRvIGNvbW1pdCwgYnV0IHdpdGhvdXQgaG9ub3JpbmcgdGhlIGFkdmlzZS5zdGF0dXNIaW50cworICAgY29uZmlndXJhdGlvbiB2YXJpYWJsZSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBoYXNfb2JqZWN0X2ZpbGUoKSBzYWlkICJubyIgZ2l2ZW4gYW4gb2JqZWN0IHJlZ2lzdGVyZWQgdG8gdGhlCisgICBzeXN0ZW0gdmlhIHByZXRlbmRfb2JqZWN0X2ZpbGUoKSwgbWFraW5nIGl0IGluY29uc2lzdGVudCB3aXRoCisgICByZWFkX29iamVjdF9maWxlKCksIGNhdXNpbmcgbGF6eSBmZXRjaCB0byBhdHRlbXB0IGZldGNoaW5nIGFuCisgICBlbXB0eSB0cmVlIGZyb20gcHJvbWlzb3IgcmVtb3Rlcy4KKworICogVGhlIGNvZGUgdGhhdCB0cmllcyB0byBza2lwIG92ZXIgdGhlIGVudHJpZXMgZm9yIHRoZSBwYXRocyBpbiBhCisgICBzaW5nbGUgZGlyZWN0b3J5IHVzaW5nIHRoZSBjYWNoZS10cmVlIHdhcyBub3QgY2FyZWZ1bCBlbm91Z2gKKyAgIGFnYWluc3QgY29ycnVwdCBpbmRleCBmaWxlLgorCisgKiBDb21wbGV0ZSBhbiB1cGRhdGUgdG8gdHV0b3JpYWwgdGhhdCBlbmNvdXJhZ2VzICJnaXQgc3dpdGNoIiBvdmVyCisgICAiZ2l0IGNoZWNrb3V0IiB0aGF0IHdhcyBkb25lIG9ubHkgaGFsZi13YXkuCisKKyAqIFJlZHVjZSB1bm5lY2Vzc2FyeSByb3VuZC10cmlwIHdoZW4gcnVubmluZyAibHMtcmVtb3RlIiBvdmVyIHRoZQorICAgc3RhdGVsZXNzIFJQQyBtZWNoYW5pc20uCisKKyAqICJnaXQgcmVzdG9yZSAtLXN0YWdlZCIgZGlkIG5vdCBjb3JyZWN0bHkgdXBkYXRlIHRoZSBjYWNoZS10cmVlCisgICBzdHJ1Y3R1cmUsIHJlc3VsdGluZyBpbiBib2d1cyB0cmVlcyB0byBiZSB3cml0dGVuIGFmdGVyd2FyZHMsIHdoaWNoCisgICBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqIFRoZSBjb2RlIHJlY2VudGx5IGFkZGVkIHRvIG1vdmUgdG8gdGhlIGVudHJ5IGJleW9uZCB0aGUgb25lcyBpbiB0aGUKKyAgIHNhbWUgZGlyZWN0b3J5IGluIHRoZSBpbmRleCBpbiB0aGUgc3BhcnNlLWNvbmUgbW9kZSBkaWQgbm90IGNvdW50CisgICB0aGUgbnVtYmVyIG9mIGVudHJpZXMgdG8gc2tpcCBvdmVyIGluY29ycmVjdGx5LCB3aGljaCBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorCisgKiBXb3JrIGFyb3VuZCB0ZXN0IGJyZWFrYWdlcyBjYXVzZWQgYnkgY3VzdG9tIHJlZ2V4IGVuZ2luZSB1c2VkIGluCisgICBsaWJhc2FuLCB3aGVuIGFkZHJlc3Mgc2FuaXRpemVyIGlzIHVzZWQgd2l0aCBtb3JlIHJlY2VudCB2ZXJzaW9ucworICAgb2YgZ2NjIGFuZCBjbGFuZy4KKworICogImdpdCBmZXRjaCAtLXJlZm1hcD0iIG9wdGlvbiBoYXMgZ290IGEgYmV0dGVyIGRvY3VtZW50YXRpb24uCisKKyAqIENvcm5lciBjYXNlIGJ1Z3MgaW4gImdpdCBjbGVhbiIgdGhhdCBzdGVtcyBmcm9tIGEgKG5lY2Vzc2FyaWx5IGZvcgorICAgcGVyZm9ybWFuY2UgcmVhc29ucykgYXdrd2FyZCBjYWxsaW5nIGNvbnZlbnRpb24gaW4gdGhlIGRpcmVjdG9yeQorICAgZW51bWVyYXRpb24gQVBJIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogImdpdCBncmVwIC0tbm8taW5kZXgiIHNob3VsZCBub3QgZ2V0IGFmZmVjdGVkIGJ5IHRoZSBjb250ZW50cyBvZgorICAgdGhlIC5naXRtb2R1bGVzIGZpbGUgYnV0IHdoZW4gIi0tcmVjdXJzZS1zdWJtb2R1bGVzIiBpcyBnaXZlbiBvcgorICAgdGhlICJzdWJtb2R1bGUucmVjdXJzZSIgdmFyaWFibGUgaXMgc2V0LCBpdCBkaWQuICBOb3cgdGhlc2UKKyAgIHNldHRpbmdzIGFyZSBpZ25vcmVkIGluIHRoZSAiLS1uby1pbmRleCIgbW9kZS4KKworICogVGVjaG5pY2FsIGRldGFpbHMgb2YgdGhlIGJ1bmRsZSBmb3JtYXQgaGFzIGJlZW4gZG9jdW1lbnRlZC4KKworICogVW5oZWxwZnVsIHdhcm5pbmcgbWVzc2FnZXMgZHVyaW5nIGRvY3VtZW50YXRpb24gYnVpbGQgaGF2ZSBiZWVuCisgICBzcXVlbGNoZWQuCisKK0Fsc28gY29udGFpbnMgdmFyaW91cyBkb2N1bWVudGF0aW9uIHVwZGF0ZXMsIGNvZGUgY2xlYW4tdXBzIGFuZCBtaW5vciBmaXh1cHMuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMjUuMi50eHQgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMjUuMi50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzAzYzUzYQotLS0gL2Rldi9udWxsCisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4yNS4yLnR4dApAQCAtMCwwICsxLDYwIEBACitHaXQgMi4yNS4yIFJlbGVhc2UgTm90ZXMKKz09PT09PT09PT09PT09PT09PT09PT09PQorCitGaXhlcyBzaW5jZSB2Mi4yNS4xCistLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAqIE1pbm9yIGJ1Z2ZpeGVzIHRvICJnaXQgYWRkIC1pIiB0aGF0IGhhcyByZWNlbnRseSBiZWVuIHJld3JpdHRlbiBpbiBDLgorCisgKiBBbiBlYXJsaWVyIHVwZGF0ZSB0byBzaG93IHRoZSBsb2NhdGlvbiBvZiB3b3JraW5nIHRyZWUgaW4gdGhlIGVycm9yCisgICBtZXNzYWdlIGRpZCBub3QgY29uc2lkZXIgdGhlIHBvc3NpYmlsaXR5IHRoYXQgYSBnaXQgY29tbWFuZCBtYXkgYmUKKyAgIHJ1biBpbiBhIGJhcmUgcmVwb3NpdG9yeSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBUaGUgIi0tcmVjdXJzZS1zdWJtb2R1bGVzIiBvcHRpb24gb2YgdmFyaW91cyBzdWJjb21tYW5kcyBkaWQgbm90CisgICB3b3JrIHdlbGwgd2hlbiBydW4gaW4gYW4gYWx0ZXJuYXRlIHdvcmt0cmVlLCB3aGljaCBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorCisgKiBSdW5uaW5nICJnaXQgcm0iIG9uIGEgc3VibW9kdWxlIGZhaWxlZCB1bm5lY2Vzc2FyaWx5IHdoZW4KKyAgIC5naXRtb2R1bGVzIGlzIG9ubHkgY2FjaGUtZGlydHksIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKworICogImdpdCByZWJhc2UgLWkiIGlkZW50aWZpZXMgZXhpc3RpbmcgY29tbWl0cyBpbiBpdHMgdG9kbyBmaWxlIHdpdGgKKyAgIHRoZWlyIGFiYnJldmlhdGVkIG9iamVjdCBuYW1lLCB3aGljaCBjb3VsZCBiZWNvbWUgYW1iaWdvdXMgYXMgaXQKKyAgIGdvZXMgdG8gY3JlYXRlIG5ldyBjb21taXRzLCBhbmQgaGFzIGEgbWVjaGFuaXNtIHRvIGF2b2lkIGFtYmlndWl0eQorICAgaW4gdGhlIG1haW4gcGFydCBvZiBpdHMgZXhlY3V0aW9uLiAgQSBmZXcgb3RoZXIgY2FzZXMgaG93ZXZlciB3ZXJlCisgICBub3QgY292ZXJlZCBieSB0aGUgcHJvdGVjdGlvbiBhZ2FpbnN0IGFtYmlndWl0eSwgd2hpY2ggaGFzIGJlZW4KKyAgIGNvcnJlY3RlZC4KKworICogVGhlIGluZGV4LXBhY2sgY29kZSBub3cgZGlhZ25vc2VzIGEgYmFkIGlucHV0IHBhY2tzdHJlYW0gdGhhdAorICAgcmVjb3JkcyB0aGUgc2FtZSBvYmplY3QgdHdpY2Ugd2hlbiBpdCBpcyB1c2VkIGFzIGRlbHRhIGJhc2U7IHRoZQorICAgY29kZSB1c2VkIHRvIGRlY2xhcmUgYSBzb2Z0d2FyZSBidWcgd2hlbiBlbmNvdW50ZXJpbmcgc3VjaCBhbgorICAgaW5wdXQsIGJ1dCBpdCBpcyBhbiBpbnB1dCBlcnJvci4KKworICogVGhlIGNvZGUgdG8gYXV0b21hdGljYWxseSBzaHJpbmsgdGhlIGZhbi1vdXQgaW4gdGhlIG5vdGVzIHRyZWUgaGFkCisgICBhbiBvZmYtYnktb25lIGJ1Zywgd2hpY2ggaGFzIGJlZW4ga2lsbGVkLgorCisgKiAiZ2l0IGNoZWNrLWlnbm9yZSIgZGlkIG5vdCB3b3JrIHdoZW4gdGhlIGdpdmVuIHBhdGggaXMgZXhwbGljaXRseQorICAgbWFya2VkIGFzIG5vdCBpZ25vcmVkIHdpdGggYSBuZWdhdGl2ZSBlbnRyeSBpbiB0aGUgLmdpdGlnbm9yZSBmaWxlLgorCisgKiBUaGUgbWVyZ2UtcmVjdXJzaXZlIG1hY2hpbmVyeSBmYWlsZWQgdG8gcmVmcmVzaCB0aGUgY2FjaGUgZW50cnkgZm9yCisgICBhIG1lcmdlIHJlc3VsdCBpbiBhIGNvdXBsZSBvZiBwbGFjZXMsIHJlc3VsdGluZyBpbiBhbiB1bm5lY2Vzc2FyeQorICAgbWVyZ2UgZmFpbHVyZSwgd2hpY2ggaGFzIGJlZW4gZml4ZWQuCisKKyAqIEZpeCBmb3IgYSBidWcgcmV2ZWFsZWQgYnkgYSByZWNlbnQgY2hhbmdlIHRvIG1ha2UgdGhlIHByb3RvY29sIHYyCisgICB0aGUgZGVmYXVsdC4KKworICogImdpdCBtZXJnZSBzaWduZWQtdGFnIiB3aGlsZSBsYWNraW5nIHRoZSBwdWJsaWMga2V5IHN0YXJ0ZWQgdG8gc2F5CisgICAiTm8gc2lnbmF0dXJlIiwgd2hpY2ggd2FzIHV0dGVybHkgd3JvbmcuICBUaGlzIHJlZ3Jlc3Npb24gaGFzIGJlZW4KKyAgIHJldmVydGVkLgorCisgKiBNaW5HVydzIHBvbGwoKSBlbXVsYXRpb24gaGFzIGJlZW4gaW1wcm92ZWQuCisKKyAqICJnaXQgc2hvdyIgYW5kIG90aGVycyBnYXZlIGFuIG9iamVjdCBuYW1lIGluIHJhdyBmb3JtYXQgaW4gaXRzCisgICBlcnJvciBvdXRwdXQsIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZCB0byBnaXZlIGl0IGluIGhleC4KKworICogQm90aCAiZ2l0IGxzLXJlbW90ZSAtaCIgYW5kICJnaXQgZ3JlcCAtaCIgZ2l2ZSBzaG9ydCB1c2FnZSBoZWxwLAorICAgbGlrZSBhbnkgb3RoZXIgR2l0IHN1YmNvbW1hbmQsIGJ1dCBpdCBpcyBub3QgdW5yZWFzb25hYmxlIHRvIGV4cGVjdAorICAgdGhhdCB0aGUgZm9ybWVyIHdvdWxkIGJlaGF2ZSB0aGUgc2FtZSBhcyAiZ2l0IGxzLXJlbW90ZSAtLWhlYWQiCisgICAodGhlcmUgaXMgbm8gb3RoZXIgc2Vuc2libGUgYmVoYXZpb3VyIGZvciB0aGUgbGF0dGVyKS4gIFRoZQorICAgZG9jdW1lbnRhdGlvbiBoYXMgYmVlbiB1cGRhdGVkIGluIGFuIGF0dGVtcHQgdG8gY2xhcmlmeSB0aGlzLgorCitBbHNvIGNvbnRhaW5zIHZhcmlvdXMgZG9jdW1lbnRhdGlvbiB1cGRhdGVzLCBjb2RlIGNsZWFuLXVwcyBhbmQgbWlub3IgZml4dXBzLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjI2LjAudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjI2LjAudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNhN2E3MzQKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMjYuMC50eHQKQEAgLTAsMCArMSwzNDEgQEAKK0dpdCAyLjI2IFJlbGVhc2UgTm90ZXMKKz09PT09PT09PT09PT09PT09PT09PT0KKworVXBkYXRlcyBzaW5jZSB2Mi4yNQorLS0tLS0tLS0tLS0tLS0tLS0tLQorCitCYWNrd2FyZCBjb21wYXRpYmlsaXR5IG5vdGVzCisKKyAqICJnaXQgcmViYXNlIiB1c2VzIGEgZGlmZmVyZW50IGJhY2tlbmQgdGhhdCBpcyBiYXNlZCBvbiB0aGUgJ21lcmdlJworICAgbWFjaGluZXJ5IGJ5IGRlZmF1bHQuICBUaGVyZSBhcmUgYSBmZXcga25vd24gZGlmZmVyZW5jZXMgaW4gdGhlCisgICBiZWhhdmlvdXIgZnJvbSB0aGUgdHJhZGl0aW9uYWwgbWFjaGluZXJ5IGJhc2VkIG9uIHBhdGNoK2FwcGx5LgorCisgICBJZiB5b3VyIHdvcmtmbG93IGlzIG5lZ2F0aXZlbHkgYWZmZWN0ZWQgYnkgdGhpcyBjaGFuZ2UsIHBsZWFzZQorICAgcmVwb3J0IGl0IHRvIGdpdEB2Z2VyLmtlcm5lbC5vcmcgc28gdGhhdCB3ZSBjYW4gdGFrZSBhIGxvb2sgaW50bworICAgaXQuICBBZnRlciBkb2luZyBzbywgeW91IGNhbiBzZXQgdGhlICdyZWJhc2UuYmFja2VuZCcgY29uZmlndXJhdGlvbgorICAgdmFyaWFibGUgdG8gJ2FwcGx5JywgaW4gb3JkZXIgdG8gdXNlIHRoZSBvbGQgZGVmYXVsdCBiZWhhdmlvdXIgaW4KKyAgIHRoZSBtZWFudGltZS4KKworCitVSSwgV29ya2Zsb3dzICYgRmVhdHVyZXMKKworICogU2FtcGxlIGNyZWRlbnRpYWwgaGVscGVyIGZvciB1c2luZyAubmV0cmMgaGFzIGJlZW4gdXBkYXRlZCB0byB3b3JrCisgICBvdXQgb2YgdGhlIGJveC4KKworICogZ3BnLm1pblRydXN0TGV2ZWwgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBoYXMgYmVlbiBpbnRyb2R1Y2VkIHRvCisgICB0ZWxsIHZhcmlvdXMgc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiBjb2RlcGF0aHMgdGhlIHJlcXVpcmVkIG1pbmltdW0KKyAgIHRydXN0IGxldmVsLgorCisgKiBUaGUgY29tbWFuZCBsaW5lIGNvbXBsZXRpb24gKGluIGNvbnRyaWIvKSBsZWFybmVkIHRvIGNvbXBsZXRlCisgICBzdWJjb21tYW5kcyBhbmQgYXJndW1lbnRzIHRvICJnaXQgd29ya3RyZWUiLgorCisgKiBEaXNhbWJpZ3VhdGlvbiBsb2dpYyB0byB0ZWxsIHJldmlzaW9ucyBhbmQgcGF0aHNwZWMgYXBhcnQgaGFzIGJlZW4KKyAgIHR3ZWFrZWQgc28gdGhhdCBiYWNrc2xhc2gtZXNjYXBlZCBnbG9iIHNwZWNpYWwgY2hhcmFjdGVycyBkbyBub3QKKyAgIGNvdW50IGluIHRoZSAid2lsZGNhcmRzIGFyZSBwYXRoc3BlYyIgcnVsZS4KKworICogT25lIGVmZmVjdCBvZiBzcGVjaWZ5aW5nIHdoZXJlIHRoZSBHSVRfRElSIGlzIChlaXRoZXIgd2l0aCB0aGUKKyAgIGVudmlyb25tZW50IHZhcmlhYmxlLCBvciB3aXRoIHRoZSAiZ2l0IC0tZ2l0LWRpcj08d2hlcmU+IGNtZCIKKyAgIG9wdGlvbikgaXMgdG8gZGlzYWJsZSB0aGUgcmVwb3NpdG9yeSBkaXNjb3ZlcnkuICBUaGlzIGhhcyBiZWVuCisgICBwbGFjZWQgYSBiaXQgbW9yZSBzdHJlc3MgaW4gdGhlIGRvY3VtZW50YXRpb24sIGFzIG5ldyB1c2VycyBvZnRlbgorICAgZ2V0IGNvbmZ1c2VkLgorCisgKiBUd28gaGVscCBtZXNzYWdlcyBnaXZlbiB3aGVuICJnaXQgYWRkIiBub3RpY2VzIHRoZSB1c2VyIGdhdmUgaXQKKyAgIG5vdGhpbmcgdG8gYWRkIGhhdmUgYmVlbiB1cGRhdGVkIHRvIHVzZSBhZHZpc2UoKSBBUEkuCisKKyAqIEEgbmV3IHZlcnNpb24gb2YgZnNtb25pdG9yLXdhdGNobWFuIGhvb2sgaGFzIGJlZW4gaW50cm9kdWNlZCwgdG8KKyAgIGF2b2lkIHJhY2VzLgorCisgKiAiZ2l0IGNvbmZpZyIgbGVhcm5lZCB0byBzaG93IGluIHdoaWNoICJzY29wZSIsIGluIGFkZGl0aW9uIHRvIGluCisgICB3aGljaCBmaWxlLCBlYWNoIGNvbmZpZyBzZXR0aW5nIGNvbWVzIGZyb20uCisKKyAqIFRoZSBiYXNpYyA3IGNvbG9ycyBsZWFybmVkIHRoZSBicmlnaHRlciBjb3VudGVycGFydHMKKyAgIChlLmcuICJicmlnaHRyZWQiKS4KKworICogImdpdCBzcGFyc2UtY2hlY2tvdXQiIGxlYXJuZWQgYSBuZXcgImFkZCIgc3ViY29tbWFuZC4KKworICogQSBjb25maWd1cmF0aW9uIGVsZW1lbnQgdXNlZCBmb3IgY3JlZGVudGlhbCBzdWJzeXN0ZW0gY2FuIG5vdyB1c2UKKyAgIHdpbGRjYXJkIHBhdHRlcm4gdG8gc3BlY2lmeSBmb3Igd2hpY2ggc2V0IG9mIFVSTHMgdGhlIGVudHJ5CisgICBhcHBsaWVzLgorCisgKiAiZ2l0IGNsb25lIC0tcmVjdXJzZS1zdWJtb2R1bGVzIC0tc2luZ2xlLWJyYW5jaCIgbm93IHVzZXMgdGhlIHNhbWUKKyAgIHNpbmdsZS1icmFuY2ggb3B0aW9uIHdoZW4gY2xvbmluZyB0aGUgc3VibW9kdWxlcy4KKworICogImdpdCBybSIgYW5kICJnaXQgc3Rhc2giIGxlYXJucyB0aGUgbmV3ICItLXBhdGhzcGVjLWZyb20tZmlsZSIKKyAgIG9wdGlvbi4KKworICogImdpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaCIgaXMgYSB3YXkgdG8gc2hvdyB0aGUgcGllY2Ugb2YgZS1tYWlsCisgICBmb3IgdGhlIHN0b3BwZWQgc3RlcCwgd2hpY2ggaXMgbm90IHN1aXRhYmxlIHRvIGRpcmVjdGx5IGZlZWQgImdpdAorICAgYXBwbHkiIChpdCBpcyBkZXNpZ25lZCB0byBiZSBhIGdvb2QgImdpdCBhbSIgaW5wdXQpLiAgSXQgbGVhcm5lZCBhCisgICBuZXcgb3B0aW9uIHRvIHNob3cgb25seSB0aGUgcGF0Y2ggcGFydC4KKworICogSGFuZGxpbmcgb2YgY29uZmxpY3RpbmcgcmVuYW1lcyBpbiBtZXJnZS1yZWN1cnNpdmUgaGF2ZSBmdXJ0aGVyCisgICBiZWVuIG1hZGUgY29uc2lzdGVudCB3aXRoIGhvdyBleGlzdGluZyBjb2RlcGF0aHMgdHJ5IHRvIG1pbWljIHdoYXQKKyAgIGlzIGRvbmUgdG8gYWRkL2FkZCBjb25mbGljdHMuCisKKworUGVyZm9ybWFuY2UsIEludGVybmFsIEltcGxlbWVudGF0aW9uLCBEZXZlbG9wbWVudCBTdXBwb3J0IGV0Yy4KKworICogVGVsbCAuZWRpdG9yY29uZmlnIHRoYXQgaW4gdGhpcyBwcm9qZWN0LCAqLnR4dCBmaWxlcyBhcmUgaW5kZW50ZWQKKyAgIHdpdGggdGFicy4KKworICogVGhlIHRlc3QtbGludCBtYWNoaW5lcnkga25ldyB0byBjaGVjayAiVkFSPVZBTCBzaGVsbF9mdW5jdGlvbiIKKyAgIGNvbnN0cnVjdCwgYnV0IGRpZCBub3QgY2hlY2sgIlZBUj0gc2hlbGxfZnVuY3Rpb24iLCB3aGljaCBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorCisgKiBSZXBsYWNlICJnaXQgY29uZmlnIC0tYm9vbCIgY2FsbHMgd2l0aCAiZ2l0IGNvbmZpZyAtLXR5cGU9Ym9vbCIgaW4KKyAgIHNhbXBsZSB0ZW1wbGF0ZXMuCisKKyAqIFRoZSBlZmZvcnQgdG8gbW92ZSAiZ2l0LWFkZC0taW50ZXJhY3RpdmUiIHRvIEMgY29udGludWVzLgorCisgKiBJbXByb3ZlIGVycm9yIG1lc3NhZ2UgZ2VuZXJhdGlvbiBmb3IgImdpdCBzdWJtb2R1bGUgYWRkIi4KKworICogUHJlcGFyYXRpb24gb2YgdGVzdCBzY3JpcHRzIGZvciB0aGUgZGF5IHdoZW4gdGhlIG9iamVjdCBuYW1lcyB3aWxsCisgICB1c2UgU0hBLTI1NiBjb250aW51ZXMuCisKKyAqIFdhcm4gcHJvZ3JhbW1lcnMgYWJvdXQgcHJldGVuZF9vYmplY3RfZmlsZSgpIHRoYXQgYWxsb3dzIHRoZSBjb2RlCisgICB0byB0ZW50YXRpdmVseSB1c2UgaW4tY29yZSBvYmplY3RzLgorCisgKiBUaGUgd2F5ICJnaXQgcGFjay1vYmplY3RzIiByZXVzZXMgb2JqZWN0cyBzdG9yZWQgaW4gZXhpc3RpbmcgcGFjaworICAgdG8gZ2VuZXJhdGUgaXRzIHJlc3VsdCBoYXMgYmVlbiBpbXByb3ZlZC4KKworICogVGhlIHRyYW5zcG9ydCBwcm90b2NvbCB2ZXJzaW9uIDIgYmVjb21lcyB0aGUgZGVmYXVsdCBvbmUuCisKKyAqIFRyYWRpdGlvbmFsbHksIHdlIGF2b2lkZWQgdGhyZWFkZWQgZ3JlcCB3aGlsZSBzZWFyY2hpbmcgaW4gb2JqZWN0cworICAgKGFzIG9wcG9zZWQgdG8gZmlsZXMgaW4gdGhlIHdvcmtpbmcgdHJlZSkgYXMgYWNjZXNzZXMgdG8gdGhlIG9iamVjdAorICAgbGF5ZXIgaXMgbm90IHRocmVhZC1zYWZlLiAgVGhpcyBsaW1pdGF0aW9uIGlzIGdldHRpbmcgbGlmdGVkLgorCisgKiAiZ2l0IHJlYmFzZSAtaSIgKGFuZCBmcmllbmRzKSB1c2VkIHRvIHVubmVjZXNzYXJpbHkgY2hlY2sgb3V0IHRoZQorICAgdGlwIG9mIHRoZSBicmFuY2ggdG8gYmUgcmViYXNlZCwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBBIGxvdy1sZXZlbCBBUEkgZnVuY3Rpb24gZ2V0X29pZCgpLCB0aGF0IGFjY2VwdHMgdmFyaW91cyB3YXlzIHRvCisgICBuYW1lIGFuIG9iamVjdCwgdXNlZCB0byBpc3N1ZSBlbmQtdXNlciBmYWNpbmcgZXJyb3IgbWVzc2FnZXMKKyAgIHdpdGhvdXQgbDEwbiwgd2hpY2ggaGFzIGJlZW4gdXBkYXRlZCB0byBiZSB0cmFuc2xhdGFibGUuCisKKyAqIFVubmVlZGVkIGNvbm5lY3Rpdml0eSBjaGVjayBpcyBub3cgZGlzYWJsZWQgaW4gYSBwYXJ0aWFsIGNsb25lIHdoZW4KKyAgIGZldGNoaW5nIGludG8gaXQuCisKKyAqIFNvbWUgcm91Z2ggZWRnZXMgaW4gdGhlIHNwYXJzZS1jaGVja291dCBmZWF0dXJlLCBlc3BlY2lhbGx5IGFyb3VuZAorICAgdGhlIGNvbmUgbW9kZSwgaGF2ZSBiZWVuIGNsZWFuZWQgdXAuCisKKyAqIFRoZSBkaWZmLSogcGx1bWJpbmcgZmFtaWx5IG9mIHN1YmNvbW1hbmRzIG5vdyBwYXkgYXR0ZW50aW9uIHRvIHRoZQorICAgZGlmZi53c0Vycm9ySGlnaGxpZ2h0IGNvbmZpZ3VyYXRpb24sIHdoaWNoIGhhcyBiZWVuIGlnbm9yZWQgYmVmb3JlOworICAgdGhpcyBhbGxvd3MgImdpdCBhZGQgLXAiIHRvIGFsc28gc2hvdyB0aGUgd2hpdGVzcGFjZSBwcm9ibGVtcyB0bworICAgdGhlIGVuZCB1c2VyLgorCisgKiBTb21lIGNvZGVwYXRocyB3ZXJlIGdpdmVuIGEgcmVwb3NpdG9yeSBpbnN0YW5jZSBhcyBhIHBhcmFtZXRlciB0bworICAgd29yayBpbiB0aGUgcmVwb3NpdG9yeSwgYnV0IHBhc3NlZCB0aGVfcmVwb3NpdG9yeSBpbnN0YW5jZSB0byBpdHMKKyAgIGNhbGxlZXMsIHdoaWNoIGhhcyBiZWVuIGNsZWFuZWQgdXAgKHNvbWV3aGF0KS4KKworICogTWVtb3J5IGZvb3RwcmludCBhbmQgcGVyZm9ybWFuY2Ugb2YgImdpdCBuYW1lLXJldiIgaGFzIGJlZW4KKyAgIGltcHJvdmVkLgorCisgKiBUaGUgb2JqZWN0IHJlYWNoYWJpbGl0eSBiaXRtYXAgbWFjaGluZXJ5IGFuZCB0aGUgcGFydGlhbCBjbG9uaW5nCisgICBtYWNoaW5lcnkgd2VyZSBub3QgcHJlcGFyZWQgdG8gd29yayB3ZWxsIHRvZ2V0aGVyLCBiZWNhdXNlIHNvbWUKKyAgIG9iamVjdC1maWx0ZXJpbmcgY3JpdGVyaWEgdGhhdCBwYXJ0aWFsIGNsb25lcyB1c2UgaW5oZXJlbnRseSByZWx5CisgICBvbiBvYmplY3QgdHJhdmVyc2FsLCBidXQgdGhlIGJpdG1hcCBtYWNoaW5lcnkgaXMgYW4gb3B0aW1pemF0aW9uCisgICB0byBieXBhc3MgdGhhdCBvYmplY3QgdHJhdmVyc2FsLiAgVGhlcmUgaG93ZXZlciBhcmUgc29tZSBjYXNlcworICAgd2hlcmUgdGhleSBjYW4gd29yayB0b2dldGhlciwgYW5kIHRoZXkgd2VyZSB0YXVnaHQgYWJvdXQgdGhlbS4KKworICogImdpdCByZWJhc2UiIGhhcyBsZWFybmVkIHRvIHVzZSB0aGUgbWVyZ2UgYmFja2VuZCAoaS5lLiB0aGUKKyAgIG1hY2hpbmVyeSB0aGF0IGRyaXZlcyAicmViYXNlIC1pIikgYnkgZGVmYXVsdCwgd2hpbGUgYWxsb3dpbmcKKyAgICItLWFwcGx5IiBvcHRpb24gdG8gdXNlIHRoZSAiYXBwbHkiIGJhY2tlbmQgKGUuZy4gdGhlIG1vcmFsCisgICBlcXVpdmFsZW50IG9mICJmb3JtYXQtcGF0Y2ggcGlwZWQgdG8gYW0iKS4gIFRoZSByZWJhc2UuYmFja2VuZAorICAgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBjYW4gYmUgc2V0IHRvIGN1c3RvbWl6ZS4KKworICogVW5kZXJseWluZyBtYWNoaW5lcnkgb2YgImdpdCBiaXNlY3QtLWhlbHBlciIgaXMgYmVpbmcgcmVmYWN0b3JlZAorICAgaW50byBwaWVjZXMgdGhhdCBhcmUgbW9yZSBlYXNpbHkgcmV1c2VkLgorCisKK0ZpeGVzIHNpbmNlIHYyLjI1CistLS0tLS0tLS0tLS0tLS0tLQorCisgKiAiZ2l0IGNvbW1pdCIgZ2l2ZXMgb3V0cHV0IHNpbWlsYXIgdG8gImdpdCBzdGF0dXMiIHdoZW4gdGhlcmUgaXMKKyAgIG5vdGhpbmcgdG8gY29tbWl0LCBidXQgd2l0aG91dCBob25vcmluZyB0aGUgYWR2aXNlLnN0YXR1c0hpbnRzCisgICBjb25maWd1cmF0aW9uIHZhcmlhYmxlLCB3aGljaCBoYXMgYmVlbiBjb3JyZWN0ZWQuCisKKyAqIGhhc19vYmplY3RfZmlsZSgpIHNhaWQgIm5vIiBnaXZlbiBhbiBvYmplY3QgcmVnaXN0ZXJlZCB0byB0aGUKKyAgIHN5c3RlbSB2aWEgcHJldGVuZF9vYmplY3RfZmlsZSgpLCBtYWtpbmcgaXQgaW5jb25zaXN0ZW50IHdpdGgKKyAgIHJlYWRfb2JqZWN0X2ZpbGUoKSwgY2F1c2luZyBsYXp5IGZldGNoIHRvIGF0dGVtcHQgZmV0Y2hpbmcgYW4KKyAgIGVtcHR5IHRyZWUgZnJvbSBwcm9taXNvciByZW1vdGVzLgorCisgKiBDb21wbGV0ZSBhbiB1cGRhdGUgdG8gdHV0b3JpYWwgdGhhdCBlbmNvdXJhZ2VzICJnaXQgc3dpdGNoIiBvdmVyCisgICAiZ2l0IGNoZWNrb3V0IiB0aGF0IHdhcyBkb25lIG9ubHkgaGFsZi13YXkuCisKKyAqIEMgcGVkYW50cnkgOy0pIGZpeC4KKworICogVGhlIGNvZGUgdGhhdCB0cmllcyB0byBza2lwIG92ZXIgdGhlIGVudHJpZXMgZm9yIHRoZSBwYXRocyBpbiBhCisgICBzaW5nbGUgZGlyZWN0b3J5IHVzaW5nIHRoZSBjYWNoZS10cmVlIHdhcyBub3QgY2FyZWZ1bCBlbm91Z2gKKyAgIGFnYWluc3QgY29ycnVwdCBpbmRleCBmaWxlLgorCisgKiBSZWR1Y2UgdW5uZWNlc3Nhcnkgcm91bmQtdHJpcCB3aGVuIHJ1bm5pbmcgImxzLXJlbW90ZSIgb3ZlciB0aGUKKyAgIHN0YXRlbGVzcyBSUEMgbWVjaGFuaXNtLgorCisgKiAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQiIGRpZCBub3QgY29ycmVjdGx5IHVwZGF0ZSB0aGUgY2FjaGUtdHJlZQorICAgc3RydWN0dXJlLCByZXN1bHRpbmcgaW4gYm9ndXMgdHJlZXMgdG8gYmUgd3JpdHRlbiBhZnRlcndhcmRzLCB3aGljaAorICAgaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBUaGUgY29kZSByZWNlbnRseSBhZGRlZCB0byBtb3ZlIHRvIHRoZSBlbnRyeSBiZXlvbmQgdGhlIG9uZXMgaW4gdGhlCisgICBzYW1lIGRpcmVjdG9yeSBpbiB0aGUgaW5kZXggaW4gdGhlIHNwYXJzZS1jb25lIG1vZGUgZGlkIG5vdCBjb3VudAorICAgdGhlIG51bWJlciBvZiBlbnRyaWVzIHRvIHNraXAgb3ZlciBpbmNvcnJlY3RseSwgd2hpY2ggaGFzIGJlZW4KKyAgIGNvcnJlY3RlZC4KKworICogUmVuZGVyaW5nIGJ5ICJnaXQgbG9nIC0tZ3JhcGgiIG9mIGFuY2VzdHJ5IGxpbmVzIGxlYWRpbmcgdG8gYSBtZXJnZQorICAgY29tbWl0IHdlcmUgbWFkZSBzdWJvcHRpbWFsIHRvIHdhc3RlIHZlcnRpY2FsIHNwYWNlIGEgYml0IHdpdGggYQorICAgcmVjZW50IHVwZGF0ZSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBXb3JrIGFyb3VuZCB0ZXN0IGJyZWFrYWdlcyBjYXVzZWQgYnkgY3VzdG9tIHJlZ2V4IGVuZ2luZSB1c2VkIGluCisgICBsaWJhc2FuLCB3aGVuIGFkZHJlc3Mgc2FuaXRpemVyIGlzIHVzZWQgd2l0aCBtb3JlIHJlY2VudCB2ZXJzaW9ucworICAgb2YgZ2NjIGFuZCBjbGFuZy4KKworICogTWlub3IgYnVnZml4ZXMgdG8gImdpdCBhZGQgLWkiIHRoYXQgaGFzIHJlY2VudGx5IGJlZW4gcmV3cml0dGVuIGluIEMuCisKKyAqICJnaXQgZmV0Y2ggLS1yZWZtYXA9IiBvcHRpb24gaGFzIGdvdCBhIGJldHRlciBkb2N1bWVudGF0aW9uLgorCisgKiAiZ2l0IGNoZWNrb3V0IFgiIGRpZCBub3QgY29ycmVjdGx5IGZhaWwgd2hlbiBYIGlzIG5vdCBhIGxvY2FsCisgICBicmFuY2ggYnV0IGNvdWxkIG5hbWUgbW9yZSB0aGFuIG9uZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMKKyAgIChpLmUuIHRvIGJlIGR3aW1tZWQgYXMgdGhlIHN0YXJ0aW5nIHBvaW50IHRvIGNyZWF0ZSBhIGNvcnJlc3BvbmRpbmcKKyAgIGxvY2FsIGJyYW5jaCksIHdoaWNoIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSBmYTc0MTgwZDA4IGFtL2NoZWNrb3V0LWZpbGUtYW5kLXJlZi1yZWYtYW1iaWd1aXR5IGxhdGVyIHRvIG1haW50KS4KKworICogQ29ybmVyIGNhc2UgYnVncyBpbiAiZ2l0IGNsZWFuIiB0aGF0IHN0ZW1zIGZyb20gYSAobmVjZXNzYXJpbHkgZm9yCisgICBwZXJmb3JtYW5jZSByZWFzb25zKSBhd2t3YXJkIGNhbGxpbmcgY29udmVudGlvbiBpbiB0aGUgZGlyZWN0b3J5CisgICBlbnVtZXJhdGlvbiBBUEkgaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBBIGZldGNoIHRoYXQgaXMgdG9sZCB0byByZWN1cnNpdmVseSBmZXRjaCB1cGRhdGVzIGluIHN1Ym1vZHVsZXMKKyAgIGluZXZpdGFibHkgcHJvZHVjZXMgcmVhbXMgb2Ygb3V0cHV0LCBhbmQgaXQgYmVjb21lcyBoYXJkIHRvIHNwb3QKKyAgIGVycm9yIG1lc3NhZ2VzLiAgVGhlIGNvbW1hbmQgaGFzIGJlZW4gdGF1Z2h0IHRvIGVudW1lcmF0ZQorICAgc3VibW9kdWxlcyB0aGF0IGhhZCBlcnJvcnMgYXQgdGhlIGVuZCBvZiB0aGUgb3BlcmF0aW9uLgorICAgKG1lcmdlIDAyMjI1NDA4MjcgZXMvZmV0Y2gtc2hvdy1mYWlsZWQtc3VibW9kdWxlcy1hdGVuZCBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSAiLS1yZWN1cnNlLXN1Ym1vZHVsZXMiIG9wdGlvbiBvZiB2YXJpb3VzIHN1YmNvbW1hbmRzIGRpZCBub3QKKyAgIHdvcmsgd2VsbCB3aGVuIHJ1biBpbiBhbiBhbHRlcm5hdGUgd29ya3RyZWUsIHdoaWNoIGhhcyBiZWVuCisgICBjb3JyZWN0ZWQuCisKKyAqIEZ1dHVyZXByb29maW5nIGEgdGVzdCBub3QgdG8gZGVwZW5kIG9uIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uCisgICBkZXRhaWwuCisKKyAqIFJ1bm5pbmcgImdpdCBybSIgb24gYSBzdWJtb2R1bGUgZmFpbGVkIHVubmVjZXNzYXJpbHkgd2hlbgorICAgLmdpdG1vZHVsZXMgaXMgb25seSBjYWNoZS1kaXJ0eSwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkLgorCisgKiBDIHBlZGFudHJ5IDstKSBmaXguCisKKyAqICJnaXQgZ3JlcCAtLW5vLWluZGV4IiBzaG91bGQgbm90IGdldCBhZmZlY3RlZCBieSB0aGUgY29udGVudHMgb2YKKyAgIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIGJ1dCB3aGVuICItLXJlY3Vyc2Utc3VibW9kdWxlcyIgaXMgZ2l2ZW4gb3IKKyAgIHRoZSAic3VibW9kdWxlLnJlY3Vyc2UiIHZhcmlhYmxlIGlzIHNldCwgaXQgZGlkLiAgTm93IHRoZXNlCisgICBzZXR0aW5ncyBhcmUgaWdub3JlZCBpbiB0aGUgIi0tbm8taW5kZXgiIG1vZGUuCisKKyAqIFRlY2huaWNhbCBkZXRhaWxzIG9mIHRoZSBidW5kbGUgZm9ybWF0IGhhcyBiZWVuIGRvY3VtZW50ZWQuCisKKyAqIFVuaGVscGZ1bCB3YXJuaW5nIG1lc3NhZ2VzIGR1cmluZyBkb2N1bWVudGF0aW9uIGJ1aWxkIGhhdmUgYmVlbiBzcXVlbGNoZWQuCisKKyAqICJnaXQgcmViYXNlIC1pIiBpZGVudGlmaWVzIGV4aXN0aW5nIGNvbW1pdHMgaW4gaXRzIHRvZG8gZmlsZSB3aXRoCisgICB0aGVpciBhYmJyZXZpYXRlZCBvYmplY3QgbmFtZSwgd2hpY2ggY291bGQgYmVjb21lIGFtYmlndW91cyBhcyBpdAorICAgZ29lcyB0byBjcmVhdGUgbmV3IGNvbW1pdHMsIGFuZCBoYXMgYSBtZWNoYW5pc20gdG8gYXZvaWQgYW1iaWd1aXR5CisgICBpbiB0aGUgbWFpbiBwYXJ0IG9mIGl0cyBleGVjdXRpb24uICBBIGZldyBvdGhlciBjYXNlcyBob3dldmVyIHdlcmUKKyAgIG5vdCBjb3ZlcmVkIGJ5IHRoZSBwcm90ZWN0aW9uIGFnYWluc3QgYW1iaWd1aXR5LCB3aGljaCBoYXMgYmVlbgorICAgY29ycmVjdGVkLgorCisgKiBBbGxvdyB0aGUgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2sgY29uZmlndXJhdGlvbiB0byBraWNrIGluIHdoZW4KKyAgICJyZWJhc2UgLS1lZGl0LXRvZG8iIGFuZCAicmViYXNlIC0tY29udGludWUiIHJlc3RhcnRzIHRoZSBwcm9jZWR1cmUuCisgICAobWVyZ2UgNWE1NDQ1ZDg3OCBhZy9lZGl0LXRvZG8tZHJvcC1jaGVjayBsYXRlciB0byBtYWludCkuCisKKyAqIFRoZSB3YXkgImdpdCBzdWJtb2R1bGUgc3RhdHVzIiByZXBvcnRzIGFuIGluaXRpYWxpemVkIGJ1dCBub3QgeWV0CisgICBwb3B1bGF0ZWQgc3VibW9kdWxlIGhhcyBub3QgYmVlbiByZWltcGxlbWVudGVkIGNvcnJlY3RseSB3aGVuIGEKKyAgIHBhcnQgb2YgdGhlICJnaXQgc3VibW9kdWxlIiBjb21tYW5kIHdhcyByZXdyaXR0ZW4gaW4gQywgd2hpY2ggaGFzCisgICBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSBmMzhjOTI0NTJkIHBrL3N0YXR1cy1vZi11bmNsb25lZC1zdWJtb2R1bGUgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiBUaGUgY29kZSB0byBhdXRvbWF0aWNhbGx5IHNocmluayB0aGUgZmFuLW91dCBpbiB0aGUgbm90ZXMgdHJlZSBoYWQKKyAgIGFuIG9mZi1ieS1vbmUgYnVnLCB3aGljaCBoYXMgYmVlbiBraWxsZWQuCisKKyAqIFRoZSBpbmRleC1wYWNrIGNvZGUgbm93IGRpYWdub3NlcyBhIGJhZCBpbnB1dCBwYWNrc3RyZWFtIHRoYXQKKyAgIHJlY29yZHMgdGhlIHNhbWUgb2JqZWN0IHR3aWNlIHdoZW4gaXQgaXMgdXNlZCBhcyBkZWx0YSBiYXNlOyB0aGUKKyAgIGNvZGUgdXNlZCB0byBkZWNsYXJlIGEgc29mdHdhcmUgYnVnIHdoZW4gZW5jb3VudGVyaW5nIHN1Y2ggYW4KKyAgIGlucHV0LCBidXQgaXQgaXMgYW4gaW5wdXQgZXJyb3IuCisKKworICogVGhlIGNvZGUgdG8gY29tcHV0ZSB0aGUgY29tbWl0LWdyYXBoIGhhcyBiZWVuIHRhdWdodCB0byB1c2UgYSBtb3JlCisgICByb2J1c3Qgd2F5IHRvIHRlbGwgaWYgdHdvIG9iamVjdCBkaXJlY3RvcmllcyByZWZlciB0byB0aGUgc2FtZQorICAgdGhpbmcuCisgICAobWVyZ2UgYTdkZjYwY2FjOCB0Yi9jb21taXQtZ3JhcGgtb2JqZWN0LWRpciBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgcmVtb3RlIHJlbmFtZSBYIFkiIG5lZWRzIHRvIGFkanVzdCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcworICAgKGUuZy4gYnJhbmNoLjxuYW1lPi5yZW1vdGUpIHdob3NlIHZhbHVlIHVzZWQgdG8gYmUgWCB0byBZLgorICAgYnJhbmNoLjxuYW1lPi5wdXNoUmVtb3RlIGlzIG5vdyBhbHNvIHVwZGF0ZWQuCisKKyAqIFVwZGF0ZSB0byBkb2MtZGlmZi4KKworICogRG9jIG1hcmt1cCBmaXguCisKKyAqICJnaXQgY2hlY2staWdub3JlIiBkaWQgbm90IHdvcmsgd2hlbiB0aGUgZ2l2ZW4gcGF0aCBpcyBleHBsaWNpdGx5CisgICBtYXJrZWQgYXMgbm90IGlnbm9yZWQgd2l0aCBhIG5lZ2F0aXZlIGVudHJ5IGluIHRoZSAuZ2l0aWdub3JlIGZpbGUuCisKKyAqIFRoZSBtZXJnZS1yZWN1cnNpdmUgbWFjaGluZXJ5IGZhaWxlZCB0byByZWZyZXNoIHRoZSBjYWNoZSBlbnRyeSBmb3IKKyAgIGEgbWVyZ2UgcmVzdWx0IGluIGEgY291cGxlIG9mIHBsYWNlcywgcmVzdWx0aW5nIGluIGFuIHVubmVjZXNzYXJ5CisgICBtZXJnZSBmYWlsdXJlLCB3aGljaCBoYXMgYmVlbiBmaXhlZC4KKworICogRml4IGZvciBhIGJ1ZyByZXZlYWxlZCBieSBhIHJlY2VudCBjaGFuZ2UgdG8gbWFrZSB0aGUgcHJvdG9jb2wgdjIKKyAgIHRoZSBkZWZhdWx0LgorCisgKiBJbiByYXJlIGNhc2VzICJnaXQgd29ya3RyZWUgYWRkIDxwYXRoPiIgY291bGQgdGhpbmsgdGhhdCA8cGF0aD4KKyAgIHdhcyBhbHJlYWR5IGEgcmVnaXN0ZXJlZCB3b3JrdHJlZSBldmVuIHdoZW4gaXQgd2Fzbid0IGFuZCByZWZ1c2UKKyAgIHRvIGFkZCB0aGUgbmV3IHdvcmt0cmVlLiBUaGlzIGhhcyBiZWVuIGNvcnJlY3RlZC4KKyAgIChtZXJnZSBiYjY5YjNiMDA5IGVzL3dvcmt0cmVlLWF2b2lkLWR1cGxpY2F0aW9uLWZpeCBsYXRlciB0byBtYWludCkuCisKKyAqICJnaXQgcHVzaCIgc2hvdWxkIHN0b3AgZnJvbSB1cGRhdGluZyBhIGJyYW5jaCB0aGF0IGlzIGNoZWNrZWQgb3V0CisgICB3aGVuIHJlY2VpdmUuZGVueUN1cnJlbnRCcmFuY2ggY29uZmlndXJhdGlvbiBpcyBzZXQsIGJ1dCBpdCBmYWlsZWQKKyAgIHRvIHBheSBhdHRlbnRpb24gdG8gY2hlY2tvdXRzIGluIHNlY29uZGFyeSB3b3JrdHJlZXMuICBUaGlzIGhhcworICAgYmVlbiBjb3JyZWN0ZWQuCisgICAobWVyZ2UgNGQ4NjQ4OTVhMiBodi9yZWNlaXZlLWRlbnljdXJyZW50LWV2ZXJ5d2hlcmUgbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZ2l0IHJlYmFzZSBCQVNFIEJSQU5DSCIgcmViYXNlZC91cGRhdGVkIHRoZSB0aXAgb2YgQlJBTkNIIGFuZAorICAgY2hlY2tlZCBpdCBvdXQsIGV2ZW4gd2hlbiB0aGUgQlJBTkNIIGlzIGNoZWNrZWQgb3V0IGluIGEgZGlmZmVyZW50CisgICB3b3JrdHJlZS4gIFRoaXMgaGFzIGJlZW4gY29ycmVjdGVkLgorICAgKG1lcmdlIGI1Y2FiYjRhOTYgZXMvZG8tbm90LWxldC1yZWJhc2Utc3dpdGNoLXRvLXByb3RlY3RlZC1icmFuY2ggbGF0ZXIgdG8gbWFpbnQpLgorCisgKiAiZ2l0IGRlc2NyaWJlIiBpbiBhIHJlcG9zaXRvcnkgd2l0aCBtdWx0aXBsZSByb290IGNvbW1pdHMgc29tZXRpbWVzCisgICBnYXZlIHVwIGxvb2tpbmcgZm9yIHRoZSBiZXN0IHRhZyB0byBkZXNjcmliZSBhIGdpdmVuIGNvbW1pdCB3aXRoCisgICB0b28gZWFybHksIHdoaWNoIGhhcyBiZWVuIGFkanVzdGVkLgorCisgKiAiZ2l0IG1lcmdlIHNpZ25lZC10YWciIHdoaWxlIGxhY2tpbmcgdGhlIHB1YmxpYyBrZXkgc3RhcnRlZCB0byBzYXkKKyAgICJObyBzaWduYXR1cmUiLCB3aGljaCB3YXMgdXR0ZXJseSB3cm9uZy4gIFRoaXMgcmVncmVzc2lvbiBoYXMgYmVlbgorICAgcmV2ZXJ0ZWQuCisKKyAqIE1pbkdXJ3MgcG9sbCgpIGVtdWxhdGlvbiBoYXMgYmVlbiBpbXByb3ZlZC4KKworICogImdpdCBzaG93IiBhbmQgb3RoZXJzIGdhdmUgYW4gb2JqZWN0IG5hbWUgaW4gcmF3IGZvcm1hdCBpbiBpdHMKKyAgIGVycm9yIG91dHB1dCwgd2hpY2ggaGFzIGJlZW4gY29ycmVjdGVkIHRvIGdpdmUgaXQgaW4gaGV4LgorCisgKiAiZ2l0IGZldGNoIiBvdmVyIEhUVFAgd2Fsa2VyIHByb3RvY29sIGRpZCBub3Qgc2hvdyBhbnkgcHJvZ3Jlc3MKKyAgIG91dHB1dC4gIFdlIGluaGVyZW50bHkgZG8gbm90IGtub3cgaG93IG11Y2ggd29yayByZW1haW5zLCBidXQgc3RpbGwKKyAgIHdlIGNhbiBzaG93IHNvbWV0aGluZyBub3QgdG8gYm9yZSB1c2Vycy4KKyAgIChtZXJnZSA3NjU1YjQxMTlkIHJzL3Nob3ctcHJvZ3Jlc3MtaW4tZHVtYi1odHRwLWZldGNoIGxhdGVyIHRvIG1haW50KS4KKworICogQm90aCAiZ2l0IGxzLXJlbW90ZSAtaCIgYW5kICJnaXQgZ3JlcCAtaCIgZ2l2ZSBzaG9ydCB1c2FnZSBoZWxwLAorICAgbGlrZSBhbnkgb3RoZXIgR2l0IHN1YmNvbW1hbmQsIGJ1dCBpdCBpcyBub3QgdW5yZWFzb25hYmxlIHRvIGV4cGVjdAorICAgdGhhdCB0aGUgZm9ybWVyIHdvdWxkIGJlaGF2ZSB0aGUgc2FtZSBhcyAiZ2l0IGxzLXJlbW90ZSAtLWhlYWQiCisgICAodGhlcmUgaXMgbm8gb3RoZXIgc2Vuc2libGUgYmVoYXZpb3VyIGZvciB0aGUgbGF0dGVyKS4gIFRoZQorICAgZG9jdW1lbnRhdGlvbiBoYXMgYmVlbiB1cGRhdGVkIGluIGFuIGF0dGVtcHQgdG8gY2xhcmlmeSB0aGlzLgorCisgKiBPdGhlciBjb2RlIGNsZWFudXAsIGRvY2ZpeCwgYnVpbGQgZml4LCBldGMuCisgICAobWVyZ2UgZDBkMGEzNTdhMSBhbS91cGRhdGUtcGF0aHNwZWMtZi1mLXRlc3RzIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBmOTRmN2JkMDBkIGFtL3Rlc3QtcGF0aHNwZWMtZi1mLWVycm9yLWNhc2VzIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBjNTEzYTk1OGI2IHNzL3Q2MDI1LW1vZGVybml6ZSBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYjQ0MTcxNzI1NiBkbC90ZXN0LW11c3QtZmFpbC1maXhlcyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgZDAzMTA0OWRhMyBtdC9zcGFyc2UtY2hlY2tvdXQtZG9jLXVwZGF0ZSBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgMTQ1MTM2YTk1YSBqYy9za2lwLXByZWZpeCBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgNTI5MGQ0NTEzNCBqay9hbGxvYy1jbGVhbnVwcyBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgN2E5ZjhjYTgwNSBycy9wYXJzZS1vcHRpb25zLWNvbmNhdC1kdXAgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDUxN2I2MDU2NGUgcnMvc3RyYnVmLWluc2VydHN0ciBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgZjY5NmEyYjFjOCBqay9tYWlsaW5mby1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBkZTI2ZjAyZGIxIGpzL3Rlc3QtYXZvaWQtcGlwZSBsYXRlciB0byBtYWludCkuCisgICAobWVyZ2UgYTJkYzQzNDE0YyBlcy9kb2MtbWVudG9yaW5nIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSAwMmJiYmU5ZGY5IGVzL3dvcmt0cmVlLWNsZWFudXAgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDJjZTZkMDc1ZmEgcnMvbWljcm8tY2xlYW51cHMgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDI3ZjE4MmIzZmMgcnMvYmxhbWUtdHlwZWZpeC1mb3ItZmluZ2VycHJpbnQgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDNjMjllMjFlYjAgbWEvdGVzdC1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSAyNDBmYzA0ZjgxIGFnL3JlYmFzZS1yZW1vdmUtcmVkdW5kYW50LWNvZGUgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGQ2OGNlOTA2YzcgcnMvY29tbWl0LWdyYXBoLWNvZGUtc2ltcGxpZmljYXRpb24gbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIGE1MWQ5ZThmMDcgcmovdDEwNTAtdXNlLXRlc3QtcGF0aC1pcy1maWxlIGxhdGVyIHRvIG1haW50KS4KKyAgIChtZXJnZSBmZDBiYzE3NTU3IGtrL2NvbXBsZXRlLWRpZmYtY29sb3ItbW92ZWQgbGF0ZXIgdG8gbWFpbnQpLgorICAgKG1lcmdlIDY1YmY4MjBkMGUgZW4vdGVzdC1jbGVhbnVwIGxhdGVyIHRvIG1haW50KS4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4zLjMudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjMuMy50eHQKaW5kZXggNWVmMTI2NC4uODUwZGM2OCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjMuMy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjMuMy50eHQKQEAgLTEyLDcgKzEyLDcgQEAKICAqIERlc2NyaXB0aW9uIGdpdmVuIGJ5ICJncmVwIC1oIiBmb3IgaXRzIC0tZXhjbHVkZS1zdGFuZGFyZCBvcHRpb24KICAgIHdhcyBwaHJhc2VkIHBvb3JseS4KIAotICogRG9jdW1lbnRhdG9uIGZvciAiZ2l0IHJlbW90ZSBhZGQiIG1lbnRpb25lZCAiLS10YWdzIiBhbmQKKyAqIERvY3VtZW50YXRpb24gZm9yICJnaXQgcmVtb3RlIGFkZCIgbWVudGlvbmVkICItLXRhZ3MiIGFuZAogICAgIi0tbm8tdGFncyIgYW5kIGl0IHdhcyBub3QgY2xlYXIgdGhhdCBmZXRjaCBmcm9tIHRoZSByZW1vdGUgaW4KICAgIHRoZSBmdXR1cmUgd2lsbCB1c2UgdGhlIGRlZmF1bHQgYmVoYXZpb3VyIHdoZW4gbmVpdGhlciBpcyBnaXZlbgogICAgdG8gb3ZlcnJpZGUgaXQuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuMy43LnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4zLjcudHh0CmluZGV4IGZjOTU4MTIuLjU3NjkxODQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4zLjcudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi4zLjcudHh0CkBAIC00LDcgKzQsNyBAQAogRml4ZXMgc2luY2UgdjIuMy42CiAtLS0tLS0tLS0tLS0tLS0tLS0KIAotICogQW4gZWFybGllciB1cGRhdGUgdG8gdGhlIHBhcnNlciB0aGF0IGRpc2VjdHMgYSBVUkwgYnJva2UgYW4KKyAqIEFuIGVhcmxpZXIgdXBkYXRlIHRvIHRoZSBwYXJzZXIgdGhhdCBkaXNzZWN0cyBhIFVSTCBicm9rZSBhbgogICAgYWRkcmVzcywgZm9sbG93ZWQgYnkgYSBjb2xvbiwgZm9sbG93ZWQgYnkgYW4gZW1wdHkgc3RyaW5nIChpbnN0ZWFkCiAgICBvZiB0aGUgcG9ydCBudW1iZXIpLCBlLmcuIHNzaDovL2V4YW1wbGUuY29tOi9wYXRoL3RvL3JlcG8uCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi40LjMudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjQuMy50eHQKaW5kZXggOTE0ZDJjMS4uNDIyZTkzMCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjQuMy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjQuMy50eHQKQEAgLTY2LDcgKzY2LDcgQEAKICAqIFNvbWUgdGltZSBhZ28sICJnaXQgYmxhbWUiIChpbmNvcnJlY3RseSkgbG9zdCB0aGUgY29udmVydF90b19naXQoKQogICAgY2FsbCB3aGVuIHN5bnRoZXNpemluZyBhIGZha2UgInRpcCIgY29tbWl0IHRoYXQgcmVwcmVzZW50cyB0aGUKICAgIHN0YXRlIGluIHRoZSB3b3JraW5nIHRyZWUsIHdoaWNoIGJyb2tlIGZvbGtzIHdobyByZWNvcmQgdGhlIGhpc3RvcnkKLSAgIHdpdGggTEYgbGluZSBlbmRpbmcgdG8gbWFrZSB0aGVpciBwcm9qZWN0IHBvcnRhYmlsZSBhY3Jvc3MKKyAgIHdpdGggTEYgbGluZSBlbmRpbmcgdG8gbWFrZSB0aGVpciBwcm9qZWN0IHBvcnRhYmxlIGFjcm9zcwogICAgcGxhdGZvcm1zIHdoaWxlIHRlcm1pbmF0aW5nIGxpbmVzIGluIHRoZWlyIHdvcmtpbmcgdHJlZSBmaWxlcyB3aXRoCiAgICBDUkxGIGZvciB0aGVpciBwbGF0Zm9ybS4KIApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjUuMC50eHQgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuNS4wLnR4dAppbmRleCA4NzA0NDUwLi44NDcyM2Y5IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuNS4wLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuNS4wLnR4dApAQCAtMTcyLDcgKzE3Miw4IEBACiAgICBpbmNvcnJlY3QgcGF0Y2ggdGV4dCB0byAiZ2l0IGFwcGx5Ii4gIEFkZCB0ZXN0cyB0byBkZW1vbnN0cmF0ZQogICAgdGhpcy4KIAotICAgSSBoYXZlIGEgc2xpZ2h0IHN1c3BpY2lvbiB0aGF0IHRoaXMgbWF5IGJlICRnbWFuZS84NzIwMiBjb21pbmcgYmFjaworICAgSSBoYXZlIGEgc2xpZ2h0IHN1c3BpY2lvbiB0aGF0IHRoaXMgbWF5IGJlCisgICBjZi4gPDd2dHpmNzd3anAuZnNmQGdpdHN0ZXIuc2lhbWVzZS5keW5kbnMub3JnPiBjb21pbmcgYmFjawogICAgYW5kIGJpdGluZyB1cyAoSSBzZWVtIHRvIGhhdmUgc2FpZCAibGV0J3MgcnVuIHdpdGggdGhpcyBhbmQgc2VlCiAgICB3aGF0IGhhcHBlbnMiIGJhY2sgdGhlbikuCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi43LjAudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjcuMC50eHQKaW5kZXggNTYzZGFkYy4uZTNjYmYzYSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjcuMC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjcuMC50eHQKQEAgLTQwLDcgKzQwLDcgQEAKIAogICogImdpdCBpbnRlcnByZXQtdHJhaWxlcnMiIGNhbiBub3cgcnVuIG91dHNpZGUgb2YgYSBHaXQgcmVwb3NpdG9yeS4KIAotICogImdpdCBwNCIgbGVhcm5lZCB0byByZWVuY29kZSB0aGUgcGF0aG5hbWUgaXQgdXNlcyB0byBjb21tdW5pY2F0ZQorICogImdpdCBwNCIgbGVhcm5lZCB0byByZS1lbmNvZGUgdGhlIHBhdGhuYW1lIGl0IHVzZXMgdG8gY29tbXVuaWNhdGUKICAgIHdpdGggdGhlIHA0IGRlcG90IHdpdGggYSBuZXcgb3B0aW9uLgogCiAgKiBHaXZlIHByb2dyZXNzIG1ldGVyIHRvICJnaXQgZmlsdGVyLWJyYW5jaCIuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuNy4xLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi43LjEudHh0CmluZGV4IDY1NTNkNjkuLjYzMjNmZWEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi43LjEudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi43LjEudHh0CkBAIC0xMCw3ICsxMCw3IEBACiAgICBzZXR0aW5nIEdJVF9XT1JLX1RSRUUgZW52aXJvbm1lbnQgdGhlbXNlbHZlcy4KIAogICogVGhlICJleGNsdWRlX2xpc3QiIHN0cnVjdHVyZSBoYXMgdGhlIHVzdWFsICJhbGxvYywgbnIiIHBhaXIgb2YKLSAgIGZpZWxkcyB0byBiZSB1c2VkIGJ5IEFMTE9DX0dST1coKSwgYnV0IGNsZWFyX2V4Y2x1ZGVfbGlzdCgpIGZvcmdvdAorICAgZmllbGRzIHRvIGJlIHVzZWQgYnkgQUxMT0NfR1JPVygpLCBidXQgY2xlYXJfcGF0dGVybl9saXN0KCkgZm9yZ290CiAgICB0byByZXNldCAnYWxsb2MnIHRvIDAgd2hlbiBpdCBjbGVhcmVkICducicgdG8gZGlzY2FyZCB0aGUgbWFuYWdlZAogICAgYXJyYXkuCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi43LjMudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjcuMy50eHQKaW5kZXggNmFkZjAzOC4uZjYxOGQ3MSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjcuMy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjcuMy50eHQKQEAgLTIwLDcgKzIwLDcgQEAKICAgIHRlc3RzLgogCiAgKiAiZ2l0IHNob3cgJ0hFQUQ6Rm9vW0JBUl1CYXonIiBkaWQgbm90IGludGVycHJldCB0aGUgYXJndW1lbnQgYXMgYQotICAgcmV2LCBpLmUuIHRoZSBvYmplY3QgbmFtZWQgYnkgdGhlIHRoZSBwYXRobmFtZSB3aXRoIHdpbGRjYXJkCisgICByZXYsIGkuZS4gdGhlIG9iamVjdCBuYW1lZCBieSB0aGUgcGF0aG5hbWUgd2l0aCB3aWxkY2FyZAogICAgY2hhcmFjdGVycyBpbiBhIHRyZWUgb2JqZWN0LgogCiAgKiAiZ2l0IHJldi1wYXJzZSAtLWdpdC1jb21tb24tZGlyIiB1c2VkIGluIHRoZSB3b3JrdHJlZSBmZWF0dXJlCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL1JlbE5vdGVzLzIuOC4wLnR4dCBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi44LjAudHh0CmluZGV4IDI1MDc5NzEuLjI3MzIwYjYgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi44LjAudHh0CisrKyBiL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi44LjAudHh0CkBAIC0xODksNyArMTg5LDcgQEAKICAqIFNvbWUgY2FsbHMgdG8gc3RyY3B5KDMpIHRyaWdnZXJzIGEgZmFsc2Ugd2FybmluZyBmcm9tIHN0YXRpYwogICAgYW5hbHl6ZXJzIHRoYXQgYXJlIGxlc3MgaW50ZWxsaWdlbnQgdGhhbiBodW1hbnMsIGFuZCByZWR1Y2luZyB0aGUKICAgIG51bWJlciBvZiB0aGVzZSBmYWxzZSBoaXRzIGhlbHBzIHVzIG5vdGljZSByZWFsIGlzc3Vlcy4gIEEgZmV3Ci0gICBjYWxscyB0byBzdHJjcHkoMykgaW4gYSBjb3VwbGUgb2YgcHJvdHJhbXMgdGhhdCBhcmUgYWxyZWFkeSBzYWZlCisgICBjYWxscyB0byBzdHJjcHkoMykgaW4gYSBjb3VwbGUgb2YgcHJvZ3JhbXMgdGhhdCBhcmUgYWxyZWFkeSBzYWZlCiAgICBoYXMgYmVlbiByZXdyaXR0ZW4gdG8gYXZvaWQgZmFsc2Ugd2FybmluZ3MuCiAKICAqIFRoZSAibmFtZV9wYXRoIiBBUEkgd2FzIGFuIGF0dGVtcHQgdG8gcmVkdWNlIHRoZSBuZWVkIHRvIGNvbnN0cnVjdApAQCAtMjcwLDcgKzI3MCw3IEBACiAgICBzZXR0aW5nIEdJVF9XT1JLX1RSRUUgZW52aXJvbm1lbnQgdGhlbXNlbHZlcy4KIAogICogVGhlICJleGNsdWRlX2xpc3QiIHN0cnVjdHVyZSBoYXMgdGhlIHVzdWFsICJhbGxvYywgbnIiIHBhaXIgb2YKLSAgIGZpZWxkcyB0byBiZSB1c2VkIGJ5IEFMTE9DX0dST1coKSwgYnV0IGNsZWFyX2V4Y2x1ZGVfbGlzdCgpIGZvcmdvdAorICAgZmllbGRzIHRvIGJlIHVzZWQgYnkgQUxMT0NfR1JPVygpLCBidXQgY2xlYXJfcGF0dGVybl9saXN0KCkgZm9yZ290CiAgICB0byByZXNldCAnYWxsb2MnIHRvIDAgd2hlbiBpdCBjbGVhcmVkICducicgdG8gZGlzY2FyZCB0aGUgbWFuYWdlZAogICAgYXJyYXkuCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi44LjMudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjguMy50eHQKaW5kZXggZmVkZDk5Ni4uYTYzODI1ZSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjguMy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjguMy50eHQKQEAgLTU1LDggKzU1LDggQEAKICAgIFRoaXMgaXMgbmVjZXNzYXJ5IHRvIHVzZSBHaXQgb24gV2luZG93cyBzaGFyZWQgZGlyZWN0b3JpZXMsIGFuZCBpcwogICAgYWxyZWFkeSBlbmFibGVkIGZvciB0aGUgTWluR1cgYW5kIHBsYWluIFdpbmRvd3MgYnVpbGRzLiAgSXQgYWxzbwogICAgaGFzIGJlZW4gdXNlZCBpbiBDeWd3aW4gcGFja2FnZWQgdmVyc2lvbnMgb2YgR2l0IGZvciBxdWl0ZSBhIHdoaWxlLgotICAgU2VlIGh0dHA6Ly90aHJlYWQuZ21hbmUub3JnL2dtYW5lLmNvbXAudmVyc2lvbi1jb250cm9sLmdpdC8yOTE4NTMKLSAgIGFuZCBodHRwOi8vdGhyZWFkLmdtYW5lLm9yZy9nbWFuZS5jb21wLnZlcnNpb24tY29udHJvbC5naXQvMjc1NjgwLgorICAgU2VlIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC8yMDE2MDQxOTA5MTA1NS5HRjIzNDVAZGlud29vZGllLm9yZy8KKyAgIGFuZCBodHRwczovL2xvcmUua2VybmVsLm9yZy9naXQvMjAxNTA4MTExMDA1MjcuR1cxNDQ2NkBkaW53b29kaWUub3JnLy4KIAogICogImdpdCByZXBsYWNlIC1lIiBkaWQgbm90IGhvbm91ciAiY29yZS5lZGl0b3IiIGNvbmZpZ3VyYXRpb24uCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi45LjAudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjkuMC50eHQKaW5kZXggYjYxZDM2Ny4uOTkxNjQwMSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjkuMC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjkuMC50eHQKQEAgLTM2OCw3ICszNjgsNyBAQAogICAgVGhpcyBpcyBuZWNlc3NhcnkgdG8gdXNlIEdpdCBvbiBXaW5kb3dzIHNoYXJlZCBkaXJlY3RvcmllcywgYW5kIGlzCiAgICBhbHJlYWR5IGVuYWJsZWQgZm9yIHRoZSBNaW5HVyBhbmQgcGxhaW4gV2luZG93cyBidWlsZHMuICBJdCBhbHNvCiAgICBoYXMgYmVlbiB1c2VkIGluIEN5Z3dpbiBwYWNrYWdlZCB2ZXJzaW9ucyBvZiBHaXQgZm9yIHF1aXRlIGEgd2hpbGUuCi0gICBTZWUgaHR0cDovL3RocmVhZC5nbWFuZS5vcmcvZ21hbmUuY29tcC52ZXJzaW9uLWNvbnRyb2wuZ2l0LzI5MTg1MworICAgU2VlIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC8yMDE2MDQxOTA5MTA1NS5HRjIzNDVAZGlud29vZGllLm9yZy8KIAogICogIm1lcmdlLW9jdG9wdXMiIHN0cmF0ZWd5IGRpZCBub3QgZW5zdXJlIHRoYXQgdGhlIGluZGV4IGlzIGNsZWFuCiAgICB3aGVuIG1lcmdlIGJlZ2lucy4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vUmVsTm90ZXMvMi45LjMudHh0IGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjkuMy50eHQKaW5kZXggNjk1Yjg2Zi4uMzA1ZTA4MCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjkuMy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjkuMy50eHQKQEAgLTM2LDcgKzM2LDcgQEAKICAqIE9uZSBwYXJ0IG9mICJnaXQgYW0iIGhhZCBhbiBvZGRiYWxsIGhlbHBlciBmdW5jdGlvbiB0aGF0IGNhbGxlZAogICAgc3R1ZmYgZnJvbSBvdXRzaWRlICJoaXMiIGFzIG9wcG9zZWQgdG8gY2FsbGluZyB3aGF0IHdlIGhhdmUgIm91cnMiLAogICAgd2hpY2ggd2FzIG5vdCBnZW5kZXItbmV1dHJhbCBhbmQgYWxzbyBpbmNvbnNpc3RlbnQgd2l0aCB0aGUgcmVzdCBvZgotICAgdGhlIHN5c3RlbSB3aGVyZSBvdXRzaWRlIHN0dWZmIGlzIHVzdWFsbCBjYWxsZWQgInRoZWlycyIgaW4KKyAgIHRoZSBzeXN0ZW0gd2hlcmUgb3V0c2lkZSBzdHVmZiBpcyB1c3VhbGx5IGNhbGxlZCAidGhlaXJzIiBpbgogICAgY29udHJhc3QgdG8gIm91cnMiLgogCiAgKiBUaGUgdGVzdCBmcmFtZXdvcmsgbGVhcm5lZCBhIG5ldyBoZWxwZXIgdGVzdF9tYXRjaF9zaWduYWwgdG8KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vU3VibWl0dGluZ1BhdGNoZXMgYi9Eb2N1bWVudGF0aW9uL1N1Ym1pdHRpbmdQYXRjaGVzCmluZGV4IGVjOGIyMDUuLjQ1MTVjYWIgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vU3VibWl0dGluZ1BhdGNoZXMKKysrIGIvRG9jdW1lbnRhdGlvbi9TdWJtaXR0aW5nUGF0Y2hlcwpAQCAtMTQyLDE5ICsxNDIsMjUgQEAKIAogW1tjb21taXQtcmVmZXJlbmNlXV0KIElmIHlvdSB3YW50IHRvIHJlZmVyZW5jZSBhIHByZXZpb3VzIGNvbW1pdCBpbiB0aGUgaGlzdG9yeSBvZiBhIHN0YWJsZQotYnJhbmNoLCB1c2UgdGhlIGZvcm1hdCAiYWJicmV2aWF0ZWQgc2hhMSAoc3ViamVjdCwgZGF0ZSkiLAotd2l0aCB0aGUgc3ViamVjdCBlbmNsb3NlZCBpbiBhIHBhaXIgb2YgZG91YmxlLXF1b3RlcywgbGlrZSB0aGlzOgorYnJhbmNoLCB1c2UgdGhlIGZvcm1hdCAiYWJicmV2aWF0ZWQgaGFzaCAoc3ViamVjdCwgZGF0ZSkiLCBsaWtlIHRoaXM6CiAKIC4uLi4KLQlDb21taXQgZjg2YTM3NCAoInBhY2stYml0bWFwLmM6IGZpeCBhIG1lbWxlYWsiLCAyMDE1LTAzLTMwKQorCUNvbW1pdCBmODZhMzc0IChwYWNrLWJpdG1hcC5jOiBmaXggYSBtZW1sZWFrLCAyMDE1LTAzLTMwKQogCW5vdGljZWQgdGhhdCAuLi4KIC4uLi4KIAogVGhlICJDb3B5IGNvbW1pdCBzdW1tYXJ5IiBjb21tYW5kIG9mIGdpdGsgY2FuIGJlIHVzZWQgdG8gb2J0YWluIHRoaXMKLWZvcm1hdCwgb3IgdGhpcyBpbnZvY2F0aW9uIG9mIGBnaXQgc2hvd2A6Citmb3JtYXQgKHdpdGggdGhlIHN1YmplY3QgZW5jbG9zZWQgaW4gYSBwYWlyIG9mIGRvdWJsZS1xdW90ZXMpLCBvciB0aGlzCitpbnZvY2F0aW9uIG9mIGBnaXQgc2hvd2A6CiAKIC4uLi4KLQlnaXQgc2hvdyAtcyAtLWRhdGU9c2hvcnQgLS1wcmV0dHk9J2Zvcm1hdDolaCAoIiVzIiwgJWFkKScgPGNvbW1pdD4KKwlnaXQgc2hvdyAtcyAtLXByZXR0eT1yZWZlcmVuY2UgPGNvbW1pdD4KKy4uLi4KKworb3IsIG9uIGFuIG9sZGVyIHZlcnNpb24gb2YgR2l0IHdpdGhvdXQgc3VwcG9ydCBmb3IgLS1wcmV0dHk9cmVmZXJlbmNlOgorCisuLi4uCisJZ2l0IHNob3cgLXMgLS1kYXRlPXNob3J0IC0tcHJldHR5PSdmb3JtYXQ6JWggKCVzLCAlYWQpJyA8Y29tbWl0PgogLi4uLgogCiBbW2dpdC10b29sc11dCkBAIC0zNzIsMTUgKzM3OCwxNSBAQAogU29tZSBwYXJ0cyBvZiB0aGUgc3lzdGVtIGhhdmUgZGVkaWNhdGVkIG1haW50YWluZXJzIHdpdGggdGhlaXIgb3duCiByZXBvc2l0b3JpZXMuCiAKLS0gJ2dpdC1ndWkvJyBjb21lcyBmcm9tIGdpdC1ndWkgcHJvamVjdCwgbWFpbnRhaW5lZCBieSBQYXQgVGhveXRzOgorLSBgZ2l0LWd1aS9gIGNvbWVzIGZyb20gZ2l0LWd1aSBwcm9qZWN0LCBtYWludGFpbmVkIGJ5IFByYXR5dXNoIFlhZGF2OgogCi0JZ2l0Oi8vcmVwby5vci5jei9naXQtZ3VpLmdpdAorCWh0dHBzOi8vZ2l0aHViLmNvbS9wcmF0aTAxMDAvZ2l0LWd1aS5naXQKIAotLSAnZ2l0ay1naXQvJyBjb21lcyBmcm9tIFBhdWwgTWFja2VycmFzJ3MgZ2l0ayBwcm9qZWN0OgorLSBgZ2l0ay1naXQvYCBjb21lcyBmcm9tIFBhdWwgTWFja2VycmFzJ3MgZ2l0ayBwcm9qZWN0OgogCiAJZ2l0Oi8vb3psYWJzLm9yZy9+cGF1bHVzL2dpdGsKIAotLSAncG8vJyBjb21lcyBmcm9tIHRoZSBsb2NhbGl6YXRpb24gY29vcmRpbmF0b3IsIEppYW5nIFhpbjoKKy0gYHBvL2AgY29tZXMgZnJvbSB0aGUgbG9jYWxpemF0aW9uIGNvb3JkaW5hdG9yLCBKaWFuZyBYaW46CiAKIAlodHRwczovL2dpdGh1Yi5jb20vZ2l0LWwxMG4vZ2l0LXBvLwogCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2FzY2lpZG9jLmNvbmYgYi9Eb2N1bWVudGF0aW9uL2FzY2lpZG9jLmNvbmYKaW5kZXggMmMxNmM1My4uOGZjNGI2NyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9hc2NpaWRvYy5jb25mCisrKyBiL0RvY3VtZW50YXRpb24vYXNjaWlkb2MuY29uZgpAQCAtNzgsOSArNzgsOSBAQAogPHJlZm1ldGE+CiA8cmVmZW50cnl0aXRsZT57bWFudGl0bGV9PC9yZWZlbnRyeXRpdGxlPgogPG1hbnZvbG51bT57bWFudm9sbnVtfTwvbWFudm9sbnVtPgotPHJlZm1pc2NpbmZvIGNsYXNzPSJzb3VyY2UiPkdpdDwvcmVmbWlzY2luZm8+Ci08cmVmbWlzY2luZm8gY2xhc3M9InZlcnNpb24iPntnaXRfdmVyc2lvbn08L3JlZm1pc2NpbmZvPgotPHJlZm1pc2NpbmZvIGNsYXNzPSJtYW51YWwiPkdpdCBNYW51YWw8L3JlZm1pc2NpbmZvPgorPHJlZm1pc2NpbmZvIGNsYXNzPSJzb3VyY2UiPnttYW5zb3VyY2V9PC9yZWZtaXNjaW5mbz4KKzxyZWZtaXNjaW5mbyBjbGFzcz0idmVyc2lvbiI+e21hbnZlcnNpb259PC9yZWZtaXNjaW5mbz4KKzxyZWZtaXNjaW5mbyBjbGFzcz0ibWFudWFsIj57bWFubWFudWFsfTwvcmVmbWlzY2luZm8+CiA8L3JlZm1ldGE+CiA8cmVmbmFtZWRpdj4KICAgPHJlZm5hbWU+e21hbm5hbWV9PC9yZWZuYW1lPgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9hc2NpaWRvY3Rvci1leHRlbnNpb25zLnJiIGIvRG9jdW1lbnRhdGlvbi9hc2NpaWRvY3Rvci1leHRlbnNpb25zLnJiCmluZGV4IGVjODNiNDkuLmQ5MDZhMDAgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vYXNjaWlkb2N0b3ItZXh0ZW5zaW9ucy5yYgorKysgYi9Eb2N1bWVudGF0aW9uL2FzY2lpZG9jdG9yLWV4dGVuc2lvbnMucmIKQEAgLTksMjAgKzksNDAgQEAKICAgICAgIG5hbWVkIDpjaHJvbWUKIAogICAgICAgZGVmIHByb2Nlc3MocGFyZW50LCB0YXJnZXQsIGF0dHJzKQotICAgICAgICBpZiBwYXJlbnQuZG9jdW1lbnQuYmFzZWJhY2tlbmQ/ICdodG1sJwotICAgICAgICAgIHByZWZpeCA9IHBhcmVudC5kb2N1bWVudC5hdHRyKCdnaXQtcmVsYXRpdmUtaHRtbC1wcmVmaXgnKQotICAgICAgICAgICUoPGEgaHJlZj0iI3twcmVmaXh9I3t0YXJnZXR9Lmh0bWwiPiN7dGFyZ2V0fSgje2F0dHJzWzFdfSk8L2E+XG4pCisgICAgICAgIHByZWZpeCA9IHBhcmVudC5kb2N1bWVudC5hdHRyKCdnaXQtcmVsYXRpdmUtaHRtbC1wcmVmaXgnKQorICAgICAgICBpZiBwYXJlbnQuZG9jdW1lbnQuZG9jdHlwZSA9PSAnYm9vaycKKyAgICAgICAgICAiPHVsaW5rIHVybD1cIiN7cHJlZml4fSN7dGFyZ2V0fS5odG1sXCI+IiBcCisgICAgICAgICAgIiN7dGFyZ2V0fSgje2F0dHJzWzFdfSk8L3VsaW5rPiIKKyAgICAgICAgZWxzaWYgcGFyZW50LmRvY3VtZW50LmJhc2ViYWNrZW5kPyAnaHRtbCcKKyAgICAgICAgICAlKDxhIGhyZWY9IiN7cHJlZml4fSN7dGFyZ2V0fS5odG1sIj4je3RhcmdldH0oI3thdHRyc1sxXX0pPC9hPikKICAgICAgICAgZWxzaWYgcGFyZW50LmRvY3VtZW50LmJhc2ViYWNrZW5kPyAnZG9jYm9vaycKICAgICAgICAgICAiPGNpdGVyZWZlbnRyeT5cbiIgXAogICAgICAgICAgICAgIjxyZWZlbnRyeXRpdGxlPiN7dGFyZ2V0fTwvcmVmZW50cnl0aXRsZT4iIFwKICAgICAgICAgICAgICI8bWFudm9sbnVtPiN7YXR0cnNbMV19PC9tYW52b2xudW0+XG4iIFwKLSAgICAgICAgICAiPC9jaXRlcmVmZW50cnk+XG4iCisgICAgICAgICAgIjwvY2l0ZXJlZmVudHJ5PiIKICAgICAgICAgZW5kCiAgICAgICBlbmQKICAgICBlbmQKKworICAgIGNsYXNzIERvY3VtZW50UG9zdFByb2Nlc3NvciA8IEFzY2lpZG9jdG9yOjpFeHRlbnNpb25zOjpQb3N0cHJvY2Vzc29yCisgICAgICBkZWYgcHJvY2VzcyBkb2N1bWVudCwgb3V0cHV0CisgICAgICAgIGlmIGRvY3VtZW50LmJhc2ViYWNrZW5kPyAnZG9jYm9vaycKKyAgICAgICAgICBtYW5zb3VyY2UgPSBkb2N1bWVudC5hdHRyaWJ1dGVzWydtYW5zb3VyY2UnXQorICAgICAgICAgIG1hbnZlcnNpb24gPSBkb2N1bWVudC5hdHRyaWJ1dGVzWydtYW52ZXJzaW9uJ10KKyAgICAgICAgICBtYW5tYW51YWwgPSBkb2N1bWVudC5hdHRyaWJ1dGVzWydtYW5tYW51YWwnXQorICAgICAgICAgIG5ld190YWdzID0gIiIgXAorICAgICAgICAgICAgIjxyZWZtaXNjaW5mbyBjbGFzcz1cInNvdXJjZVwiPiN7bWFuc291cmNlfTwvcmVmbWlzY2luZm8+XG4iIFwKKyAgICAgICAgICAgICI8cmVmbWlzY2luZm8gY2xhc3M9XCJ2ZXJzaW9uXCI+I3ttYW52ZXJzaW9ufTwvcmVmbWlzY2luZm8+XG4iIFwKKyAgICAgICAgICAgICI8cmVmbWlzY2luZm8gY2xhc3M9XCJtYW51YWxcIj4je21hbm1hbnVhbH08L3JlZm1pc2NpbmZvPlxuIgorICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5zdWIoLzxcL3JlZm1ldGE+LywgbmV3X3RhZ3MgKyAiPC9yZWZtZXRhPiIpCisgICAgICAgIGVuZAorICAgICAgICBvdXRwdXQKKyAgICAgIGVuZAorICAgIGVuZAogICBlbmQKIGVuZAogCiBBc2NpaWRvY3Rvcjo6RXh0ZW5zaW9ucy5yZWdpc3RlciBkbwogICBpbmxpbmVfbWFjcm8gR2l0OjpEb2N1bWVudGF0aW9uOjpMaW5rR2l0UHJvY2Vzc29yLCA6bGlua2dpdAorICBwb3N0cHJvY2Vzc29yIEdpdDo6RG9jdW1lbnRhdGlvbjo6RG9jdW1lbnRQb3N0UHJvY2Vzc29yCiBlbmQKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vYmxhbWUtb3B0aW9ucy50eHQgYi9Eb2N1bWVudGF0aW9uL2JsYW1lLW9wdGlvbnMudHh0CmluZGV4IGRjNDE5NTcuLjVkMTIyZGIgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vYmxhbWUtb3B0aW9ucy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9ibGFtZS1vcHRpb25zLnR4dApAQCAtMTEwLDUgKzExMCwyNCBAQAogYC1DYCBvcHRpb25zIGdpdmVuLCB0aGUgPG51bT4gYXJndW1lbnQgb2YgdGhlIGxhc3QgYC1DYCB3aWxsCiB0YWtlIGVmZmVjdC4KIAorLS1pZ25vcmUtcmV2IDxyZXY+OjoKKwlJZ25vcmUgY2hhbmdlcyBtYWRlIGJ5IHRoZSByZXZpc2lvbiB3aGVuIGFzc2lnbmluZyBibGFtZSwgYXMgaWYgdGhlCisJY2hhbmdlIG5ldmVyIGhhcHBlbmVkLiAgTGluZXMgdGhhdCB3ZXJlIGNoYW5nZWQgb3IgYWRkZWQgYnkgYW4gaWdub3JlZAorCWNvbW1pdCB3aWxsIGJlIGJsYW1lZCBvbiB0aGUgcHJldmlvdXMgY29tbWl0IHRoYXQgY2hhbmdlZCB0aGF0IGxpbmUgb3IKKwluZWFyYnkgbGluZXMuICBUaGlzIG9wdGlvbiBtYXkgYmUgc3BlY2lmaWVkIG11bHRpcGxlIHRpbWVzIHRvIGlnbm9yZQorCW1vcmUgdGhhbiBvbmUgcmV2aXNpb24uICBJZiB0aGUgYGJsYW1lLm1hcmtJZ25vcmVkTGluZXNgIGNvbmZpZyBvcHRpb24KKwlpcyBzZXQsIHRoZW4gbGluZXMgdGhhdCB3ZXJlIGNoYW5nZWQgYnkgYW4gaWdub3JlZCBjb21taXQgYW5kIGF0dHJpYnV0ZWQgdG8KKwlhbm90aGVyIGNvbW1pdCB3aWxsIGJlIG1hcmtlZCB3aXRoIGEgYD9gIGluIHRoZSBibGFtZSBvdXRwdXQuICBJZiB0aGUKKwlgYmxhbWUubWFya1VuYmxhbWFibGVMaW5lc2AgY29uZmlnIG9wdGlvbiBpcyBzZXQsIHRoZW4gdGhvc2UgbGluZXMgdG91Y2hlZAorCWJ5IGFuIGlnbm9yZWQgY29tbWl0IHRoYXQgd2UgY291bGQgbm90IGF0dHJpYnV0ZSB0byBhbm90aGVyIHJldmlzaW9uIGFyZQorCW1hcmtlZCB3aXRoIGEgJyonLgorCistLWlnbm9yZS1yZXZzLWZpbGUgPGZpbGU+OjoKKwlJZ25vcmUgcmV2aXNpb25zIGxpc3RlZCBpbiBgZmlsZWAsIHdoaWNoIG11c3QgYmUgaW4gdGhlIHNhbWUgZm9ybWF0IGFzIGFuCisJYGZzY2suc2tpcExpc3RgLiAgVGhpcyBvcHRpb24gbWF5IGJlIHJlcGVhdGVkLCBhbmQgdGhlc2UgZmlsZXMgd2lsbCBiZQorCXByb2Nlc3NlZCBhZnRlciBhbnkgZmlsZXMgc3BlY2lmaWVkIHdpdGggdGhlIGBibGFtZS5pZ25vcmVSZXZzRmlsZWAgY29uZmlnCisJb3B0aW9uLiAgQW4gZW1wdHkgZmlsZSBuYW1lLCBgIiJgLCB3aWxsIGNsZWFyIHRoZSBsaXN0IG9mIHJldnMgZnJvbQorCXByZXZpb3VzbHkgcHJvY2Vzc2VkIGZpbGVzLgorCiAtaDo6CiAJU2hvdyBoZWxwIG1lc3NhZ2UuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy50eHQKaW5kZXggZDg3ODQ2Zi4uMDhiMTNiYSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9jb25maWcudHh0CisrKyBiL0RvY3VtZW50YXRpb24vY29uZmlnLnR4dApAQCAtMTQyLDcgKzE0MiwyMSBAQAogCiBgZ2l0ZGlyL2lgOjoKIAlUaGlzIGlzIHRoZSBzYW1lIGFzIGBnaXRkaXJgIGV4Y2VwdCB0aGF0IG1hdGNoaW5nIGlzIGRvbmUKLQljYXNlLWluc2Vuc2l0aXZlbHkgKGUuZy4gb24gY2FzZS1pbnNlbnNpdGl2ZSBmaWxlIHN5dGVtcykKKwljYXNlLWluc2Vuc2l0aXZlbHkgKGUuZy4gb24gY2FzZS1pbnNlbnNpdGl2ZSBmaWxlIHN5c3RlbXMpCisKK2BvbmJyYW5jaGA6OgorCVRoZSBkYXRhIHRoYXQgZm9sbG93cyB0aGUga2V5d29yZCBgb25icmFuY2g6YCBpcyB0YWtlbiB0byBiZSBhCisJcGF0dGVybiB3aXRoIHN0YW5kYXJkIGdsb2JiaW5nIHdpbGRjYXJkcyBhbmQgdHdvIGFkZGl0aW9uYWwKKwlvbmVzLCBgKiovYCBhbmQgYC8qKmAsIHRoYXQgY2FuIG1hdGNoIG11bHRpcGxlIHBhdGggY29tcG9uZW50cy4KKwlJZiB3ZSBhcmUgaW4gYSB3b3JrdHJlZSB3aGVyZSB0aGUgbmFtZSBvZiB0aGUgYnJhbmNoIHRoYXQgaXMKKwljdXJyZW50bHkgY2hlY2tlZCBvdXQgbWF0Y2hlcyB0aGUgcGF0dGVybiwgdGhlIGluY2x1ZGUgY29uZGl0aW9uCisJaXMgbWV0LgorKworSWYgdGhlIHBhdHRlcm4gZW5kcyB3aXRoIGAvYCwgYCoqYCB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgYWRkZWQuIEZvcgorZXhhbXBsZSwgdGhlIHBhdHRlcm4gYGZvby9gIGJlY29tZXMgYGZvby8qKmAuIEluIG90aGVyIHdvcmRzLCBpdCBtYXRjaGVzCithbGwgYnJhbmNoZXMgdGhhdCBiZWdpbiB3aXRoIGBmb28vYC4gVGhpcyBpcyB1c2VmdWwgaWYgeW91ciBicmFuY2hlcyBhcmUKK29yZ2FuaXplZCBoaWVyYXJjaGljYWxseSBhbmQgeW91IHdvdWxkIGxpa2UgdG8gYXBwbHkgYSBjb25maWd1cmF0aW9uIHRvCithbGwgdGhlIGJyYW5jaGVzIGluIHRoYXQgaGllcmFyY2h5LgogCiBBIGZldyBtb3JlIG5vdGVzIG9uIG1hdGNoaW5nIHZpYSBgZ2l0ZGlyYCBhbmQgYGdpdGRpci9pYDoKIApAQCAtMTY0LDQ2ICsxNzgsNTMgQEAKIEV4YW1wbGUKIH5+fn5+fn4KIAotCSMgQ29yZSB2YXJpYWJsZXMKLQlbY29yZV0KLQkJOyBEb24ndCB0cnVzdCBmaWxlIG1vZGVzCi0JCWZpbGVtb2RlID0gZmFsc2UKKy0tLS0KKyMgQ29yZSB2YXJpYWJsZXMKK1tjb3JlXQorCTsgRG9uJ3QgdHJ1c3QgZmlsZSBtb2RlcworCWZpbGVtb2RlID0gZmFsc2UKIAotCSMgT3VyIGRpZmYgYWxnb3JpdGhtCi0JW2RpZmZdCi0JCWV4dGVybmFsID0gL3Vzci9sb2NhbC9iaW4vZGlmZi13cmFwcGVyCi0JCXJlbmFtZXMgPSB0cnVlCisjIE91ciBkaWZmIGFsZ29yaXRobQorW2RpZmZdCisJZXh0ZXJuYWwgPSAvdXNyL2xvY2FsL2Jpbi9kaWZmLXdyYXBwZXIKKwlyZW5hbWVzID0gdHJ1ZQogCi0JW2JyYW5jaCAiZGV2ZWwiXQotCQlyZW1vdGUgPSBvcmlnaW4KLQkJbWVyZ2UgPSByZWZzL2hlYWRzL2RldmVsCitbYnJhbmNoICJkZXZlbCJdCisJcmVtb3RlID0gb3JpZ2luCisJbWVyZ2UgPSByZWZzL2hlYWRzL2RldmVsCiAKLQkjIFByb3h5IHNldHRpbmdzCi0JW2NvcmVdCi0JCWdpdFByb3h5PSJzc2giIGZvciAia2VybmVsLm9yZyIKLQkJZ2l0UHJveHk9ZGVmYXVsdC1wcm94eSA7IGZvciB0aGUgcmVzdAorIyBQcm94eSBzZXR0aW5ncworW2NvcmVdCisJZ2l0UHJveHk9InNzaCIgZm9yICJrZXJuZWwub3JnIgorCWdpdFByb3h5PWRlZmF1bHQtcHJveHkgOyBmb3IgdGhlIHJlc3QKIAotCVtpbmNsdWRlXQotCQlwYXRoID0gL3BhdGgvdG8vZm9vLmluYyA7IGluY2x1ZGUgYnkgYWJzb2x1dGUgcGF0aAotCQlwYXRoID0gZm9vLmluYyA7IGZpbmQgImZvby5pbmMiIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IGZpbGUKLQkJcGF0aCA9IH4vZm9vLmluYyA7IGZpbmQgImZvby5pbmMiIGluIHlvdXIgYCRIT01FYCBkaXJlY3RvcnkKK1tpbmNsdWRlXQorCXBhdGggPSAvcGF0aC90by9mb28uaW5jIDsgaW5jbHVkZSBieSBhYnNvbHV0ZSBwYXRoCisJcGF0aCA9IGZvby5pbmMgOyBmaW5kICJmb28uaW5jIiByZWxhdGl2ZSB0byB0aGUgY3VycmVudCBmaWxlCisJcGF0aCA9IH4vZm9vLmluYyA7IGZpbmQgImZvby5pbmMiIGluIHlvdXIgYCRIT01FYCBkaXJlY3RvcnkKIAotCTsgaW5jbHVkZSBpZiAkR0lUX0RJUiBpcyAvcGF0aC90by9mb28vLmdpdAotCVtpbmNsdWRlSWYgImdpdGRpcjovcGF0aC90by9mb28vLmdpdCJdCi0JCXBhdGggPSAvcGF0aC90by9mb28uaW5jCis7IGluY2x1ZGUgaWYgJEdJVF9ESVIgaXMgL3BhdGgvdG8vZm9vLy5naXQKK1tpbmNsdWRlSWYgImdpdGRpcjovcGF0aC90by9mb28vLmdpdCJdCisJcGF0aCA9IC9wYXRoL3RvL2Zvby5pbmMKIAotCTsgaW5jbHVkZSBmb3IgYWxsIHJlcG9zaXRvcmllcyBpbnNpZGUgL3BhdGgvdG8vZ3JvdXAKLQlbaW5jbHVkZUlmICJnaXRkaXI6L3BhdGgvdG8vZ3JvdXAvIl0KLQkJcGF0aCA9IC9wYXRoL3RvL2Zvby5pbmMKKzsgaW5jbHVkZSBmb3IgYWxsIHJlcG9zaXRvcmllcyBpbnNpZGUgL3BhdGgvdG8vZ3JvdXAKK1tpbmNsdWRlSWYgImdpdGRpcjovcGF0aC90by9ncm91cC8iXQorCXBhdGggPSAvcGF0aC90by9mb28uaW5jCiAKLQk7IGluY2x1ZGUgZm9yIGFsbCByZXBvc2l0b3JpZXMgaW5zaWRlICRIT01FL3RvL2dyb3VwCi0JW2luY2x1ZGVJZiAiZ2l0ZGlyOn4vdG8vZ3JvdXAvIl0KLQkJcGF0aCA9IC9wYXRoL3RvL2Zvby5pbmMKKzsgaW5jbHVkZSBmb3IgYWxsIHJlcG9zaXRvcmllcyBpbnNpZGUgJEhPTUUvdG8vZ3JvdXAKK1tpbmNsdWRlSWYgImdpdGRpcjp+L3RvL2dyb3VwLyJdCisJcGF0aCA9IC9wYXRoL3RvL2Zvby5pbmMKIAotCTsgcmVsYXRpdmUgcGF0aHMgYXJlIGFsd2F5cyByZWxhdGl2ZSB0byB0aGUgaW5jbHVkaW5nCi0JOyBmaWxlIChpZiB0aGUgY29uZGl0aW9uIGlzIHRydWUpOyB0aGVpciBsb2NhdGlvbiBpcyBub3QKLQk7IGFmZmVjdGVkIGJ5IHRoZSBjb25kaXRpb24KLQlbaW5jbHVkZUlmICJnaXRkaXI6L3BhdGgvdG8vZ3JvdXAvIl0KKzsgcmVsYXRpdmUgcGF0aHMgYXJlIGFsd2F5cyByZWxhdGl2ZSB0byB0aGUgaW5jbHVkaW5nCis7IGZpbGUgKGlmIHRoZSBjb25kaXRpb24gaXMgdHJ1ZSk7IHRoZWlyIGxvY2F0aW9uIGlzIG5vdAorOyBhZmZlY3RlZCBieSB0aGUgY29uZGl0aW9uCitbaW5jbHVkZUlmICJnaXRkaXI6L3BhdGgvdG8vZ3JvdXAvIl0KKwlwYXRoID0gZm9vLmluYworLS0tLQorCisJOyBpbmNsdWRlIG9ubHkgaWYgd2UgYXJlIGluIGEgd29ya3RyZWUgd2hlcmUgZm9vLWJyYW5jaCBpcworCTsgY3VycmVudGx5IGNoZWNrZWQgb3V0CisJW2luY2x1ZGVJZiAib25icmFuY2g6Zm9vLWJyYW5jaCJdCiAJCXBhdGggPSBmb28uaW5jCiAKIFZhbHVlcwpAQCAtMjQyLDcgKzI2Myw5IEBACiArCiBUaGUgYmFzaWMgY29sb3JzIGFjY2VwdGVkIGFyZSBgbm9ybWFsYCwgYGJsYWNrYCwgYHJlZGAsIGBncmVlbmAsIGB5ZWxsb3dgLAogYGJsdWVgLCBgbWFnZW50YWAsIGBjeWFuYCBhbmQgYHdoaXRlYC4gIFRoZSBmaXJzdCBjb2xvciBnaXZlbiBpcyB0aGUKLWZvcmVncm91bmQ7IHRoZSBzZWNvbmQgaXMgdGhlIGJhY2tncm91bmQuCitmb3JlZ3JvdW5kOyB0aGUgc2Vjb25kIGlzIHRoZSBiYWNrZ3JvdW5kLiAgQWxsIHRoZSBiYXNpYyBjb2xvcnMgZXhjZXB0Citgbm9ybWFsYCBoYXZlIGEgYnJpZ2h0IHZhcmlhbnQgdGhhdCBjYW4gYmUgc3BlZmljaWVkIGJ5IHByZWZpeGluZyB0aGUKK2NvbG9yIHdpdGggYGJyaWdodGAsIGxpa2UgYGJyaWdodHJlZGAuCiArCiBDb2xvcnMgbWF5IGFsc28gYmUgZ2l2ZW4gYXMgbnVtYmVycyBiZXR3ZWVuIDAgYW5kIDI1NTsgdGhlc2UgdXNlIEFOU0kKIDI1Ni1jb2xvciBtb2RlIChidXQgbm90ZSB0aGF0IG5vdCBhbGwgdGVybWluYWxzIG1heSBzdXBwb3J0IHRoaXMpLiAgSWYKQEAgLTMyNiw2ICszNDksOCBAQAogCiBpbmNsdWRlOjpjb25maWcvZmFzdGltcG9ydC50eHRbXQogCitpbmNsdWRlOjpjb25maWcvZmVhdHVyZS50eHRbXQorCiBpbmNsdWRlOjpjb25maWcvZmV0Y2gudHh0W10KIAogaW5jbHVkZTo6Y29uZmlnL2Zvcm1hdC50eHRbXQpAQCAtNDIyLDYgKzQ0Nyw4IEBACiAKIGluY2x1ZGU6OmNvbmZpZy90YWcudHh0W10KIAoraW5jbHVkZTo6Y29uZmlnL3RyYWNlMi50eHRbXQorCiBpbmNsdWRlOjpjb25maWcvdHJhbnNmZXIudHh0W10KIAogaW5jbHVkZTo6Y29uZmlnL3VwbG9hZGFyY2hpdmUudHh0W10KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL2FkZC50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9hZGQudHh0CmluZGV4IDRkNzUzZjAuLmM5Zjc0OGYgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL2FkZC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9jb25maWcvYWRkLnR4dApAQCAtNSwzICs1LDggQEAKIAlvcHRpb24gb2YgbGlua2dpdDpnaXQtYWRkWzFdLiAgYGFkZC5pZ25vcmUtZXJyb3JzYCBpcyBkZXByZWNhdGVkLAogCWFzIGl0IGRvZXMgbm90IGZvbGxvdyB0aGUgdXN1YWwgbmFtaW5nIGNvbnZlbnRpb24gZm9yIGNvbmZpZ3VyYXRpb24KIAl2YXJpYWJsZXMuCisKK2FkZC5pbnRlcmFjdGl2ZS51c2VCdWlsdGluOjoKKwlbRVhQRVJJTUVOVEFMXSBTZXQgdG8gYHRydWVgIHRvIHVzZSB0aGUgZXhwZXJpbWVudGFsIGJ1aWx0LWluCisJaW1wbGVtZW50YXRpb24gb2YgdGhlIGludGVyYWN0aXZlIHZlcnNpb24gb2YgbGlua2dpdDpnaXQtYWRkWzFdCisJaW5zdGVhZCBvZiB0aGUgUGVybCBzY3JpcHQgdmVyc2lvbi4gSXMgYGZhbHNlYCBieSBkZWZhdWx0LgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvYWR2aWNlLnR4dCBiL0RvY3VtZW50YXRpb24vY29uZmlnL2FkdmljZS50eHQKaW5kZXggNTdmY2Q0Yy4uYmRkMzdjMyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9jb25maWcvYWR2aWNlLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9hZHZpY2UudHh0CkBAIC00LDYgKzQsMTAgQEAKIAljYW4gdGVsbCBHaXQgdGhhdCB5b3UgZG8gbm90IG5lZWQgaGVscCBieSBzZXR0aW5nIHRoZXNlIHRvICdmYWxzZSc6CiArCiAtLQorCWZldGNoU2hvd0ZvcmNlZFVwZGF0ZXM6OgorCQlBZHZpY2Ugc2hvd24gd2hlbiBsaW5rZ2l0OmdpdC1mZXRjaFsxXSB0YWtlcyBhIGxvbmcgdGltZQorCQl0byBjYWxjdWxhdGUgZm9yY2VkIHVwZGF0ZXMgYWZ0ZXIgcmVmIHVwZGF0ZXMsIG9yIHRvIHdhcm4KKwkJdGhhdCB0aGUgY2hlY2sgaXMgZGlzYWJsZWQuCiAJcHVzaFVwZGF0ZVJlamVjdGVkOjoKIAkJU2V0IHRoaXMgdmFyaWFibGUgdG8gJ2ZhbHNlJyBpZiB5b3Ugd2FudCB0byBkaXNhYmxlCiAJCSdwdXNoTm9uRkZDdXJyZW50JywKQEAgLTMwLDEyICszNCwyNiBAQAogCQl0cmllcyB0byBvdmVyd3JpdGUgYSByZW1vdGUgcmVmIHRoYXQgcG9pbnRzIGF0IGFuCiAJCW9iamVjdCB0aGF0IGlzIG5vdCBhIGNvbW1pdC1pc2gsIG9yIG1ha2UgdGhlIHJlbW90ZQogCQlyZWYgcG9pbnQgYXQgYW4gb2JqZWN0IHRoYXQgaXMgbm90IGEgY29tbWl0LWlzaC4KKwlwdXNoVW5xdWFsaWZpZWRSZWZuYW1lOjoKKwkJU2hvd24gd2hlbiBsaW5rZ2l0OmdpdC1wdXNoWzFdIGdpdmVzIHVwIHRyeWluZyB0bworCQlndWVzcyBiYXNlZCBvbiB0aGUgc291cmNlIGFuZCBkZXN0aW5hdGlvbiByZWZzIHdoYXQKKwkJcmVtb3RlIHJlZiBuYW1lc3BhY2UgdGhlIHNvdXJjZSBiZWxvbmdzIGluLCBidXQgd2hlcmUKKwkJd2UgY2FuIHN0aWxsIHN1Z2dlc3QgdGhhdCB0aGUgdXNlciBwdXNoIHRvIGVpdGhlcgorCQlyZWZzL2hlYWRzLyogb3IgcmVmcy90YWdzLyogYmFzZWQgb24gdGhlIHR5cGUgb2YgdGhlCisJCXNvdXJjZSBvYmplY3QuCisJc3RhdHVzQWhlYWRCZWhpbmQ6OgorCQlTaG93biB3aGVuIGxpbmtnaXQ6Z2l0LXN0YXR1c1sxXSBjb21wdXRlcyB0aGUgYWhlYWQvYmVoaW5kCisJCWNvdW50cyBmb3IgYSBsb2NhbCByZWYgY29tcGFyZWQgdG8gaXRzIHJlbW90ZSB0cmFja2luZyByZWYsCisJCWFuZCB0aGF0IGNhbGN1bGF0aW9uIHRha2VzIGxvbmdlciB0aGFuIGV4cGVjdGVkLiBXaWxsIG5vdAorCQlhcHBlYXIgaWYgYHN0YXR1cy5haGVhZEJlaGluZGAgaXMgZmFsc2Ugb3IgdGhlIG9wdGlvbgorCQlgLS1uby1haGVhZC1iZWhpbmRgIGlzIGdpdmVuLgogCXN0YXR1c0hpbnRzOjoKIAkJU2hvdyBkaXJlY3Rpb25zIG9uIGhvdyB0byBwcm9jZWVkIGZyb20gdGhlIGN1cnJlbnQKIAkJc3RhdGUgaW4gdGhlIG91dHB1dCBvZiBsaW5rZ2l0OmdpdC1zdGF0dXNbMV0sIGluCiAJCXRoZSB0ZW1wbGF0ZSBzaG93biB3aGVuIHdyaXRpbmcgY29tbWl0IG1lc3NhZ2VzIGluCiAJCWxpbmtnaXQ6Z2l0LWNvbW1pdFsxXSwgYW5kIGluIHRoZSBoZWxwIG1lc3NhZ2Ugc2hvd24KLQkJYnkgbGlua2dpdDpnaXQtY2hlY2tvdXRbMV0gd2hlbiBzd2l0Y2hpbmcgYnJhbmNoLgorCQlieSBsaW5rZ2l0OmdpdC1zd2l0Y2hbMV0gb3IKKwkJbGlua2dpdDpnaXQtY2hlY2tvdXRbMV0gd2hlbiBzd2l0Y2hpbmcgYnJhbmNoLgogCXN0YXR1c1VvcHRpb246OgogCQlBZHZpc2UgdG8gY29uc2lkZXIgdXNpbmcgdGhlIGAtdWAgb3B0aW9uIHRvIGxpbmtnaXQ6Z2l0LXN0YXR1c1sxXQogCQl3aGVuIHRoZSBjb21tYW5kIHRha2VzIG1vcmUgdGhhbiAyIHNlY29uZHMgdG8gZW51bWVyYXRlIHVudHJhY2tlZApAQCAtNTAsMTcgKzY4LDIxIEBACiAJcmVzb2x2ZUNvbmZsaWN0OjoKIAkJQWR2aWNlIHNob3duIGJ5IHZhcmlvdXMgY29tbWFuZHMgd2hlbiBjb25mbGljdHMKIAkJcHJldmVudCB0aGUgb3BlcmF0aW9uIGZyb20gYmVpbmcgcGVyZm9ybWVkLgorCXNlcXVlbmNlckluVXNlOjoKKwkJQWR2aWNlIHNob3duIHdoZW4gYSBzZXF1ZW5jZXIgY29tbWFuZCBpcyBhbHJlYWR5IGluIHByb2dyZXNzLgogCWltcGxpY2l0SWRlbnRpdHk6OgogCQlBZHZpY2Ugb24gaG93IHRvIHNldCB5b3VyIGlkZW50aXR5IGNvbmZpZ3VyYXRpb24gd2hlbgogCQl5b3VyIGluZm9ybWF0aW9uIGlzIGd1ZXNzZWQgZnJvbSB0aGUgc3lzdGVtIHVzZXJuYW1lIGFuZAogCQlkb21haW4gbmFtZS4KIAlkZXRhY2hlZEhlYWQ6OgotCQlBZHZpY2Ugc2hvd24gd2hlbiB5b3UgdXNlZCBsaW5rZ2l0OmdpdC1jaGVja291dFsxXSB0bwotCQltb3ZlIHRvIHRoZSBkZXRhY2ggSEVBRCBzdGF0ZSwgdG8gaW5zdHJ1Y3QgaG93IHRvIGNyZWF0ZQotCQlhIGxvY2FsIGJyYW5jaCBhZnRlciB0aGUgZmFjdC4KKwkJQWR2aWNlIHNob3duIHdoZW4geW91IHVzZWQKKwkJbGlua2dpdDpnaXQtc3dpdGNoWzFdIG9yIGxpbmtnaXQ6Z2l0LWNoZWNrb3V0WzFdCisJCXRvIG1vdmUgdG8gdGhlIGRldGFjaCBIRUFEIHN0YXRlLCB0byBpbnN0cnVjdCBob3cgdG8KKwkJY3JlYXRlIGEgbG9jYWwgYnJhbmNoIGFmdGVyIHRoZSBmYWN0LgogCWNoZWNrb3V0QW1iaWd1b3VzUmVtb3RlQnJhbmNoTmFtZTo6CiAJCUFkdmljZSBzaG93biB3aGVuIHRoZSBhcmd1bWVudCB0bwotCQlsaW5rZ2l0OmdpdC1jaGVja291dFsxXSBhbWJpZ3VvdXNseSByZXNvbHZlcyB0byBhCisJCWxpbmtnaXQ6Z2l0LWNoZWNrb3V0WzFdIGFuZCBsaW5rZ2l0OmdpdC1zd2l0Y2hbMV0KKwkJYW1iaWd1b3VzbHkgcmVzb2x2ZXMgdG8gYQogCQlyZW1vdGUgdHJhY2tpbmcgYnJhbmNoIG9uIG1vcmUgdGhhbiBvbmUgcmVtb3RlIGluCiAJCXNpdHVhdGlvbnMgd2hlcmUgYW4gdW5hbWJpZ3VvdXMgYXJndW1lbnQgd291bGQgaGF2ZQogCQlvdGhlcndpc2UgY2F1c2VkIGEgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCB0byBiZQpAQCAtODMsNCArMTA1LDE1IEBACiAJd2FpdGluZ0ZvckVkaXRvcjo6CiAJCVByaW50IGEgbWVzc2FnZSB0byB0aGUgdGVybWluYWwgd2hlbmV2ZXIgR2l0IGlzIHdhaXRpbmcgZm9yCiAJCWVkaXRvciBpbnB1dCBmcm9tIHRoZSB1c2VyLgorCW5lc3RlZFRhZzo6CisJCUFkdmljZSBzaG93biBpZiBhIHVzZXIgYXR0ZW1wdHMgdG8gcmVjdXJzaXZlbHkgdGFnIGEgdGFnIG9iamVjdC4KKwlzdWJtb2R1bGVBbHRlcm5hdGVFcnJvclN0cmF0ZWd5RGllOjoKKwkJQWR2aWNlIHNob3duIHdoZW4gYSBzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSBvcHRpb24KKwkJY29uZmlndXJlZCB0byAiZGllIiBjYXVzZXMgYSBmYXRhbCBlcnJvci4KKwlhZGRJZ25vcmVkRmlsZTo6CisJCUFkdmljZSBzaG93biBpZiBhIHVzZXIgYXR0ZW1wdHMgdG8gYWRkIGFuIGlnbm9yZWQgZmlsZSB0bworCQl0aGUgaW5kZXguCisJYWRkRW1wdHlQYXRoc3BlYzo6CisJCUFkdmljZSBzaG93biBpZiBhIHVzZXIgcnVucyB0aGUgYWRkIGNvbW1hbmQgd2l0aG91dCBwcm92aWRpbmcKKwkJdGhlIHBhdGhzcGVjIHBhcmFtZXRlci4KIC0tCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9hbGlhcy50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9hbGlhcy50eHQKaW5kZXggMGIxNDE3OC4uZjFjYTczOSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9jb25maWcvYWxpYXMudHh0CisrKyBiL0RvY3VtZW50YXRpb24vY29uZmlnL2FsaWFzLnR4dApAQCAtMSwxOCArMSwyOCBAQAogYWxpYXMuKjo6CiAJQ29tbWFuZCBhbGlhc2VzIGZvciB0aGUgbGlua2dpdDpnaXRbMV0gY29tbWFuZCB3cmFwcGVyIC0gZS5nLgotCWFmdGVyIGRlZmluaW5nICJhbGlhcy5sYXN0ID0gY2F0LWZpbGUgY29tbWl0IEhFQUQiLCB0aGUgaW52b2NhdGlvbgotCSJnaXQgbGFzdCIgaXMgZXF1aXZhbGVudCB0byAiZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEIi4gVG8gYXZvaWQKKwlhZnRlciBkZWZpbmluZyBgYWxpYXMubGFzdCA9IGNhdC1maWxlIGNvbW1pdCBIRUFEYCwgdGhlIGludm9jYXRpb24KKwlgZ2l0IGxhc3RgIGlzIGVxdWl2YWxlbnQgdG8gYGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRGAuIFRvIGF2b2lkCiAJY29uZnVzaW9uIGFuZCB0cm91YmxlcyB3aXRoIHNjcmlwdCB1c2FnZSwgYWxpYXNlcyB0aGF0CiAJaGlkZSBleGlzdGluZyBHaXQgY29tbWFuZHMgYXJlIGlnbm9yZWQuIEFyZ3VtZW50cyBhcmUgc3BsaXQgYnkKIAlzcGFjZXMsIHRoZSB1c3VhbCBzaGVsbCBxdW90aW5nIGFuZCBlc2NhcGluZyBpcyBzdXBwb3J0ZWQuCiAJQSBxdW90ZSBwYWlyIG9yIGEgYmFja3NsYXNoIGNhbiBiZSB1c2VkIHRvIHF1b3RlIHRoZW0uCiArCitOb3RlIHRoYXQgdGhlIGZpcnN0IHdvcmQgb2YgYW4gYWxpYXMgZG9lcyBub3QgbmVjZXNzYXJpbHkgaGF2ZSB0byBiZSBhCitjb21tYW5kLiBJdCBjYW4gYmUgYSBjb21tYW5kLWxpbmUgb3B0aW9uIHRoYXQgd2lsbCBiZSBwYXNzZWQgaW50byB0aGUKK2ludm9jYXRpb24gb2YgYGdpdGAuIEluIHBhcnRpY3VsYXIsIHRoaXMgaXMgdXNlZnVsIHdoZW4gdXNlZCB3aXRoIGAtY2AKK3RvIHBhc3MgaW4gb25lLXRpbWUgY29uZmlndXJhdGlvbnMgb3IgYC1wYCB0byBmb3JjZSBwYWdpbmF0aW9uLiBGb3IgZXhhbXBsZSwKK2Bsb3VkLXJlYmFzZSA9IC1jIGNvbW1pdC52ZXJib3NlPXRydWUgcmViYXNlYCBjYW4gYmUgZGVmaW5lZCBzdWNoIHRoYXQKK3J1bm5pbmcgYGdpdCBsb3VkLXJlYmFzZWAgd291bGQgYmUgZXF1aXZhbGVudCB0bworYGdpdCAtYyBjb21taXQudmVyYm9zZT10cnVlIHJlYmFzZWAuIEFsc28sIGBwcyA9IC1wIHN0YXR1c2Agd291bGQgYmUgYQoraGVscGZ1bCBhbGlhcyBzaW5jZSBgZ2l0IHBzYCB3b3VsZCBwYWdpbmF0ZSB0aGUgb3V0cHV0IG9mIGBnaXQgc3RhdHVzYAord2hlcmUgdGhlIG9yaWdpbmFsIGNvbW1hbmQgZG9lcyBub3QuCisrCiBJZiB0aGUgYWxpYXMgZXhwYW5zaW9uIGlzIHByZWZpeGVkIHdpdGggYW4gZXhjbGFtYXRpb24gcG9pbnQsCiBpdCB3aWxsIGJlIHRyZWF0ZWQgYXMgYSBzaGVsbCBjb21tYW5kLiAgRm9yIGV4YW1wbGUsIGRlZmluaW5nCi0iYWxpYXMubmV3ID0gIWdpdGsgLS1hbGwgLS1ub3QgT1JJR19IRUFEIiwgdGhlIGludm9jYXRpb24KLSJnaXQgbmV3IiBpcyBlcXVpdmFsZW50IHRvIHJ1bm5pbmcgdGhlIHNoZWxsIGNvbW1hbmQKLSJnaXRrIC0tYWxsIC0tbm90IE9SSUdfSEVBRCIuICBOb3RlIHRoYXQgc2hlbGwgY29tbWFuZHMgd2lsbCBiZQorYGFsaWFzLm5ldyA9ICFnaXRrIC0tYWxsIC0tbm90IE9SSUdfSEVBRGAsIHRoZSBpbnZvY2F0aW9uCitgZ2l0IG5ld2AgaXMgZXF1aXZhbGVudCB0byBydW5uaW5nIHRoZSBzaGVsbCBjb21tYW5kCitgZ2l0ayAtLWFsbCAtLW5vdCBPUklHX0hFQURgLiAgTm90ZSB0aGF0IHNoZWxsIGNvbW1hbmRzIHdpbGwgYmUKIGV4ZWN1dGVkIGZyb20gdGhlIHRvcC1sZXZlbCBkaXJlY3Rvcnkgb2YgYSByZXBvc2l0b3J5LCB3aGljaCBtYXkKIG5vdCBuZWNlc3NhcmlseSBiZSB0aGUgY3VycmVudCBkaXJlY3RvcnkuCi1gR0lUX1BSRUZJWGAgaXMgc2V0IGFzIHJldHVybmVkIGJ5IHJ1bm5pbmcgJ2dpdCByZXYtcGFyc2UgLS1zaG93LXByZWZpeCcKK2BHSVRfUFJFRklYYCBpcyBzZXQgYXMgcmV0dXJuZWQgYnkgcnVubmluZyBgZ2l0IHJldi1wYXJzZSAtLXNob3ctcHJlZml4YAogZnJvbSB0aGUgb3JpZ2luYWwgY3VycmVudCBkaXJlY3RvcnkuIFNlZSBsaW5rZ2l0OmdpdC1yZXYtcGFyc2VbMV0uCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9ibGFtZS50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9ibGFtZS50eHQKaW5kZXggNjdiNWMxZC4uOTQ2OGU4NSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9jb25maWcvYmxhbWUudHh0CisrKyBiL0RvY3VtZW50YXRpb24vY29uZmlnL2JsYW1lLnR4dApAQCAtMTksMyArMTksMTkgQEAKIGJsYW1lLnNob3dSb290OjoKIAlEbyBub3QgdHJlYXQgcm9vdCBjb21taXRzIGFzIGJvdW5kYXJpZXMgaW4gbGlua2dpdDpnaXQtYmxhbWVbMV0uCiAJVGhpcyBvcHRpb24gZGVmYXVsdHMgdG8gZmFsc2UuCisKK2JsYW1lLmlnbm9yZVJldnNGaWxlOjoKKwlJZ25vcmUgcmV2aXNpb25zIGxpc3RlZCBpbiB0aGUgZmlsZSwgb25lIHVuYWJicmV2aWF0ZWQgb2JqZWN0IG5hbWUgcGVyCisJbGluZSwgaW4gbGlua2dpdDpnaXQtYmxhbWVbMV0uICBXaGl0ZXNwYWNlIGFuZCBjb21tZW50cyBiZWdpbm5pbmcgd2l0aAorCWAjYCBhcmUgaWdub3JlZC4gIFRoaXMgb3B0aW9uIG1heSBiZSByZXBlYXRlZCBtdWx0aXBsZSB0aW1lcy4gIEVtcHR5CisJZmlsZSBuYW1lcyB3aWxsIHJlc2V0IHRoZSBsaXN0IG9mIGlnbm9yZWQgcmV2aXNpb25zLiAgVGhpcyBvcHRpb24gd2lsbAorCWJlIGhhbmRsZWQgYmVmb3JlIHRoZSBjb21tYW5kIGxpbmUgb3B0aW9uIGAtLWlnbm9yZS1yZXZzLWZpbGVgLgorCitibGFtZS5tYXJrVW5ibGFtYWJsZXM6OgorCU1hcmsgbGluZXMgdGhhdCB3ZXJlIGNoYW5nZWQgYnkgYW4gaWdub3JlZCByZXZpc2lvbiB0aGF0IHdlIGNvdWxkIG5vdAorCWF0dHJpYnV0ZSB0byBhbm90aGVyIGNvbW1pdCB3aXRoIGEgJyonIGluIHRoZSBvdXRwdXQgb2YKKwlsaW5rZ2l0OmdpdC1ibGFtZVsxXS4KKworYmxhbWUubWFya0lnbm9yZWRMaW5lczo6CisJTWFyayBsaW5lcyB0aGF0IHdlcmUgY2hhbmdlZCBieSBhbiBpZ25vcmVkIHJldmlzaW9uIHRoYXQgd2UgYXR0cmlidXRlZCB0bworCWFub3RoZXIgY29tbWl0IHdpdGggYSAnPycgaW4gdGhlIG91dHB1dCBvZiBsaW5rZ2l0OmdpdC1ibGFtZVsxXS4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL2JyYW5jaC50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9icmFuY2gudHh0CmluZGV4IDAxOWQ2MGUuLmNjNWYzMjQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL2JyYW5jaC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9jb25maWcvYnJhbmNoLnR4dApAQCAtMSw1ICsxLDUgQEAKIGJyYW5jaC5hdXRvU2V0dXBNZXJnZTo6Ci0JVGVsbHMgJ2dpdCBicmFuY2gnIGFuZCAnZ2l0IGNoZWNrb3V0JyB0byBzZXQgdXAgbmV3IGJyYW5jaGVzCisJVGVsbHMgJ2dpdCBicmFuY2gnLCAnZ2l0IHN3aXRjaCcgYW5kICdnaXQgY2hlY2tvdXQnIHRvIHNldCB1cCBuZXcgYnJhbmNoZXMKIAlzbyB0aGF0IGxpbmtnaXQ6Z2l0LXB1bGxbMV0gd2lsbCBhcHByb3ByaWF0ZWx5IG1lcmdlIGZyb20gdGhlCiAJc3RhcnRpbmcgcG9pbnQgYnJhbmNoLiBOb3RlIHRoYXQgZXZlbiBpZiB0aGlzIG9wdGlvbiBpcyBub3Qgc2V0LAogCXRoaXMgYmVoYXZpb3IgY2FuIGJlIGNob3NlbiBwZXItYnJhbmNoIHVzaW5nIHRoZSBgLS10cmFja2AKQEAgLTExLDcgKzExLDcgQEAKIAlicmFuY2guIFRoaXMgb3B0aW9uIGRlZmF1bHRzIHRvIHRydWUuCiAKIGJyYW5jaC5hdXRvU2V0dXBSZWJhc2U6OgotCVdoZW4gYSBuZXcgYnJhbmNoIGlzIGNyZWF0ZWQgd2l0aCAnZ2l0IGJyYW5jaCcgb3IgJ2dpdCBjaGVja291dCcKKwlXaGVuIGEgbmV3IGJyYW5jaCBpcyBjcmVhdGVkIHdpdGggJ2dpdCBicmFuY2gnLCAnZ2l0IHN3aXRjaCcgb3IgJ2dpdCBjaGVja291dCcKIAl0aGF0IHRyYWNrcyBhbm90aGVyIGJyYW5jaCwgdGhpcyB2YXJpYWJsZSB0ZWxscyBHaXQgdG8gc2V0CiAJdXAgcHVsbCB0byByZWJhc2UgaW5zdGVhZCBvZiBtZXJnZSAoc2VlICJicmFuY2guPG5hbWU+LnJlYmFzZSIpLgogCVdoZW4gYG5ldmVyYCwgcmViYXNlIGlzIG5ldmVyIGF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUuCkBAIC04MSwxNSArODEsMTYgQEAKIAkiZ2l0IHB1bGwiIGlzIHJ1bi4gU2VlICJwdWxsLnJlYmFzZSIgZm9yIGRvaW5nIHRoaXMgaW4gYSBub24KIAlicmFuY2gtc3BlY2lmaWMgbWFubmVyLgogKwotV2hlbiBgbWVyZ2VzYCwgcGFzcyB0aGUgYC0tcmViYXNlLW1lcmdlc2Agb3B0aW9uIHRvICdnaXQgcmViYXNlJworV2hlbiBgbWVyZ2VzYCAob3IganVzdCAnbScpLCBwYXNzIHRoZSBgLS1yZWJhc2UtbWVyZ2VzYCBvcHRpb24gdG8gJ2dpdCByZWJhc2UnCiBzbyB0aGF0IHRoZSBsb2NhbCBtZXJnZSBjb21taXRzIGFyZSBpbmNsdWRlZCBpbiB0aGUgcmViYXNlIChzZWUKIGxpbmtnaXQ6Z2l0LXJlYmFzZVsxXSBmb3IgZGV0YWlscykuCiArCi1XaGVuIHByZXNlcnZlLCBhbHNvIHBhc3MgYC0tcHJlc2VydmUtbWVyZ2VzYCBhbG9uZyB0byAnZ2l0IHJlYmFzZScKLXNvIHRoYXQgbG9jYWxseSBjb21taXR0ZWQgbWVyZ2UgY29tbWl0cyB3aWxsIG5vdCBiZSBmbGF0dGVuZWQKLWJ5IHJ1bm5pbmcgJ2dpdCBwdWxsJy4KK1doZW4gYHByZXNlcnZlYCAob3IganVzdCAncCcsIGRlcHJlY2F0ZWQgaW4gZmF2b3Igb2YgYG1lcmdlc2ApLCBhbHNvIHBhc3MKK2AtLXByZXNlcnZlLW1lcmdlc2AgYWxvbmcgdG8gJ2dpdCByZWJhc2UnIHNvIHRoYXQgbG9jYWxseSBjb21taXR0ZWQgbWVyZ2UKK2NvbW1pdHMgd2lsbCBub3QgYmUgZmxhdHRlbmVkIGJ5IHJ1bm5pbmcgJ2dpdCBwdWxsJy4KICsKLVdoZW4gdGhlIHZhbHVlIGlzIGBpbnRlcmFjdGl2ZWAsIHRoZSByZWJhc2UgaXMgcnVuIGluIGludGVyYWN0aXZlIG1vZGUuCitXaGVuIHRoZSB2YWx1ZSBpcyBgaW50ZXJhY3RpdmVgIChvciBqdXN0ICdpJyksIHRoZSByZWJhc2UgaXMgcnVuIGluIGludGVyYWN0aXZlCittb2RlLgogKwogKk5PVEUqOiB0aGlzIGlzIGEgcG9zc2libHkgZGFuZ2Vyb3VzIG9wZXJhdGlvbjsgZG8gKm5vdCogdXNlCiBpdCB1bmxlc3MgeW91IHVuZGVyc3RhbmQgdGhlIGltcGxpY2F0aW9ucyAoc2VlIGxpbmtnaXQ6Z2l0LXJlYmFzZVsxXQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvY2hlY2tvdXQudHh0IGIvRG9jdW1lbnRhdGlvbi9jb25maWcvY2hlY2tvdXQudHh0CmluZGV4IGM0MTE4ZmEuLjZiNjQ2ODEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL2NoZWNrb3V0LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9jaGVja291dC50eHQKQEAgLTEsNSArMSw2IEBACiBjaGVja291dC5kZWZhdWx0UmVtb3RlOjoKLQlXaGVuIHlvdSBydW4gJ2dpdCBjaGVja291dCA8c29tZXRoaW5nPicgYW5kIG9ubHkgaGF2ZSBvbmUKKwlXaGVuIHlvdSBydW4gJ2dpdCBjaGVja291dCA8c29tZXRoaW5nPicKKwlvciAnZ2l0IHN3aXRjaCA8c29tZXRoaW5nPicgYW5kIG9ubHkgaGF2ZSBvbmUKIAlyZW1vdGUsIGl0IG1heSBpbXBsaWNpdGx5IGZhbGwgYmFjayBvbiBjaGVja2luZyBvdXQgYW5kCiAJdHJhY2tpbmcgZS5nLiAnb3JpZ2luLzxzb21ldGhpbmc+Jy4gVGhpcyBzdG9wcyB3b3JraW5nIGFzIHNvb24KIAlhcyB5b3UgaGF2ZSBtb3JlIHRoYW4gb25lIHJlbW90ZSB3aXRoIGEgJzxzb21ldGhpbmc+JwpAQCAtOCwxNiArOSwxMCBAQAogCWRpc2FtYmlndWF0aW9uLiBUaGUgdHlwaWNhbCB1c2UtY2FzZSBpcyB0byBzZXQgdGhpcyB0bwogCWBvcmlnaW5gLgogKwotQ3VycmVudGx5IHRoaXMgaXMgdXNlZCBieSBsaW5rZ2l0OmdpdC1jaGVja291dFsxXSB3aGVuICdnaXQgY2hlY2tvdXQKLTxzb21ldGhpbmc+JyB3aWxsIGNoZWNrb3V0IHRoZSAnPHNvbWV0aGluZz4nIGJyYW5jaCBvbiBhbm90aGVyIHJlbW90ZSwKK0N1cnJlbnRseSB0aGlzIGlzIHVzZWQgYnkgbGlua2dpdDpnaXQtc3dpdGNoWzFdIGFuZAorbGlua2dpdDpnaXQtY2hlY2tvdXRbMV0gd2hlbiAnZ2l0IGNoZWNrb3V0IDxzb21ldGhpbmc+Jworb3IgJ2dpdCBzd2l0Y2ggPHNvbWV0aGluZz4nCit3aWxsIGNoZWNrb3V0IHRoZSAnPHNvbWV0aGluZz4nIGJyYW5jaCBvbiBhbm90aGVyIHJlbW90ZSwKIGFuZCBieSBsaW5rZ2l0OmdpdC13b3JrdHJlZVsxXSB3aGVuICdnaXQgd29ya3RyZWUgYWRkJyByZWZlcnMgdG8gYQogcmVtb3RlIGJyYW5jaC4gVGhpcyBzZXR0aW5nIG1pZ2h0IGJlIHVzZWQgZm9yIG90aGVyIGNoZWNrb3V0LWxpa2UKIGNvbW1hbmRzIG9yIGZ1bmN0aW9uYWxpdHkgaW4gdGhlIGZ1dHVyZS4KLQotY2hlY2tvdXQub3B0aW1pemVOZXdCcmFuY2g6OgotCU9wdGltaXplcyB0aGUgcGVyZm9ybWFuY2Ugb2YgImdpdCBjaGVja291dCAtYiA8bmV3X2JyYW5jaD4iIHdoZW4KLQl1c2luZyBzcGFyc2UtY2hlY2tvdXQuICBXaGVuIHNldCB0byB0cnVlLCBnaXQgd2lsbCBub3QgdXBkYXRlIHRoZQotCXJlcG8gYmFzZWQgb24gdGhlIGN1cnJlbnQgc3BhcnNlLWNoZWNrb3V0IHNldHRpbmdzLiAgVGhpcyBtZWFucyBpdAotCXdpbGwgbm90IHVwZGF0ZSB0aGUgc2tpcC13b3JrdHJlZSBiaXQgaW4gdGhlIGluZGV4IG5vciBhZGQvcmVtb3ZlCi0JZmlsZXMgaW4gdGhlIHdvcmtpbmcgZGlyZWN0b3J5IHRvIHJlZmxlY3QgdGhlIGN1cnJlbnQgc3BhcnNlIGNoZWNrb3V0Ci0Jc2V0dGluZ3Mgbm9yIHdpbGwgaXQgc2hvdyB0aGUgbG9jYWwgY2hhbmdlcy4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL2NvbG9yLnR4dCBiL0RvY3VtZW50YXRpb24vY29uZmlnL2NvbG9yLnR4dAppbmRleCA4Mzc1NTk2Li5kNWRhYWNiIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9jb2xvci50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9jb25maWcvY29sb3IudHh0CkBAIC0xNCw3ICsxNCw3IEBACiArCiBUaGlzIHNldHRpbmcgc2hvdWxkIGJlIHNldCB0byBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIGNvbG9yIGFuZCBkYXRlIHNldHRpbmdzLAogc3RhcnRpbmcgYW5kIGVuZGluZyB3aXRoIGEgY29sb3IsIHRoZSBkYXRlcyBzaG91bGQgYmUgc2V0IGZyb20gb2xkZXN0IHRvIG5ld2VzdC4KLVRoZSBtZXRhZGF0YSB3aWxsIGJlIGNvbG9yZWQgZ2l2ZW4gdGhlIGNvbG9ycyBpZiB0aGUgdGhlIGxpbmUgd2FzIGludHJvZHVjZWQKK1RoZSBtZXRhZGF0YSB3aWxsIGJlIGNvbG9yZWQgZ2l2ZW4gdGhlIGNvbG9ycyBpZiB0aGUgbGluZSB3YXMgaW50cm9kdWNlZAogYmVmb3JlIHRoZSBnaXZlbiB0aW1lc3RhbXAsIG92ZXJ3cml0aW5nIG9sZGVyIHRpbWVzdGFtcGVkIGNvbG9ycy4KICsKIEluc3RlYWQgb2YgYW4gYWJzb2x1dGUgdGltZXN0YW1wIHJlbGF0aXZlIHRpbWVzdGFtcHMgd29yayBhcyB3ZWxsLCBlLmcuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9jb3JlLnR4dCBiL0RvY3VtZW50YXRpb24vY29uZmlnL2NvcmUudHh0CmluZGV4IGQwZTY2MzUuLjc0NjE5YTkgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL2NvcmUudHh0CisrKyBiL0RvY3VtZW50YXRpb24vY29uZmlnL2NvcmUudHh0CkBAIC02OCw2ICs2OCwxNyBAQAogCWF2b2lkaW5nIHVubmVjZXNzYXJ5IHByb2Nlc3Npbmcgb2YgZmlsZXMgdGhhdCBoYXZlIG5vdCBjaGFuZ2VkLgogCVNlZSB0aGUgImZzbW9uaXRvci13YXRjaG1hbiIgc2VjdGlvbiBvZiBsaW5rZ2l0OmdpdGhvb2tzWzVdLgogCitjb3JlLmZzbW9uaXRvckhvb2tWZXJzaW9uOjoKKwlTZXRzIHRoZSB2ZXJzaW9uIG9mIGhvb2sgdGhhdCBpcyB0byBiZSB1c2VkIHdoZW4gY2FsbGluZyBmc21vbml0b3IuCisJVGhlcmUgYXJlIGN1cnJlbnRseSB2ZXJzaW9ucyAxIGFuZCAyLiBXaGVuIHRoaXMgaXMgbm90IHNldCwKKwl2ZXJzaW9uIDIgd2lsbCBiZSB0cmllZCBmaXJzdCBhbmQgaWYgaXQgZmFpbHMgdGhlbiB2ZXJzaW9uIDEKKwl3aWxsIGJlIHRyaWVkLiBWZXJzaW9uIDEgdXNlcyBhIHRpbWVzdGFtcCBhcyBpbnB1dCB0byBkZXRlcm1pbmUKKwl3aGljaCBmaWxlcyBoYXZlIGNoYW5nZXMgc2luY2UgdGhhdCB0aW1lIGJ1dCBzb21lIG1vbml0b3JzCisJbGlrZSB3YXRjaG1hbiBoYXZlIHJhY2UgY29uZGl0aW9ucyB3aGVuIHVzZWQgd2l0aCBhIHRpbWVzdGFtcC4KKwlWZXJzaW9uIDIgdXNlcyBhbiBvcGFxdWUgc3RyaW5nIHNvIHRoYXQgdGhlIG1vbml0b3IgY2FuIHJldHVybgorCXNvbWV0aGluZyB0aGF0IGNhbiBiZSB1c2VkIHRvIGRldGVybWluZSB3aGF0IGZpbGVzIGhhdmUgY2hhbmdlZAorCXdpdGhvdXQgcmFjZSBjb25kaXRpb25zLgorCiBjb3JlLnRydXN0Y3RpbWU6OgogCUlmIGZhbHNlLCB0aGUgY3RpbWUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgaW5kZXggYW5kIHRoZQogCXdvcmtpbmcgdHJlZSBhcmUgaWdub3JlZDsgdXNlZnVsIHdoZW4gdGhlIGlub2RlIGNoYW5nZSB0aW1lCkBAIC04Niw3ICs5Nyw5IEBACiAJaXQgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIHJlbW92ZWQsIGlmIHNldCB0byBgZmFsc2VgLiBCZWZvcmUKIAlzZXR0aW5nIGl0IHRvIGB0cnVlYCwgeW91IHNob3VsZCBjaGVjayB0aGF0IG10aW1lIGlzIHdvcmtpbmcKIAlwcm9wZXJseSBvbiB5b3VyIHN5c3RlbS4KLQlTZWUgbGlua2dpdDpnaXQtdXBkYXRlLWluZGV4WzFdLiBga2VlcGAgYnkgZGVmYXVsdC4KKwlTZWUgbGlua2dpdDpnaXQtdXBkYXRlLWluZGV4WzFdLiBga2VlcGAgYnkgZGVmYXVsdCwgdW5sZXNzCisJYGZlYXR1cmUubWFueUZpbGVzYCBpcyBlbmFibGVkIHdoaWNoIHNldHMgdGhpcyBzZXR0aW5nIHRvCisJYHRydWVgIGJ5IGRlZmF1bHQuCiAKIGNvcmUuY2hlY2tTdGF0OjoKIAlXaGVuIG1pc3Npbmcgb3IgaXMgc2V0IHRvIGBkZWZhdWx0YCwgbWFueSBmaWVsZHMgaW4gdGhlIHN0YXQKQEAgLTEyMSwxMSArMTM0LDE0IEBACiAKIGNvcmUuZW9sOjoKIAlTZXRzIHRoZSBsaW5lIGVuZGluZyB0eXBlIHRvIHVzZSBpbiB0aGUgd29ya2luZyBkaXJlY3RvcnkgZm9yCi0JZmlsZXMgdGhhdCBoYXZlIHRoZSBgdGV4dGAgcHJvcGVydHkgc2V0IHdoZW4gY29yZS5hdXRvY3JsZiBpcyBmYWxzZS4KKwlmaWxlcyB0aGF0IGFyZSBtYXJrZWQgYXMgdGV4dCAoZWl0aGVyIGJ5IGhhdmluZyB0aGUgYHRleHRgCisJYXR0cmlidXRlIHNldCwgb3IgYnkgaGF2aW5nIGB0ZXh0PWF1dG9gIGFuZCBHaXQgYXV0by1kZXRlY3RpbmcKKwl0aGUgY29udGVudHMgYXMgdGV4dCkuCiAJQWx0ZXJuYXRpdmVzIGFyZSAnbGYnLCAnY3JsZicgYW5kICduYXRpdmUnLCB3aGljaCB1c2VzIHRoZSBwbGF0Zm9ybSdzCiAJbmF0aXZlIGxpbmUgZW5kaW5nLiAgVGhlIGRlZmF1bHQgdmFsdWUgaXMgYG5hdGl2ZWAuICBTZWUKIAlsaW5rZ2l0OmdpdGF0dHJpYnV0ZXNbNV0gZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gZW5kLW9mLWxpbmUKLQljb252ZXJzaW9uLgorCWNvbnZlcnNpb24uIE5vdGUgdGhhdCB0aGlzIHZhbHVlIGlzIGlnbm9yZWQgaWYgYGNvcmUuYXV0b2NybGZgCisJaXMgc2V0IHRvIGB0cnVlYCBvciBgaW5wdXRgLgogCiBjb3JlLnNhZmVjcmxmOjoKIAlJZiB0cnVlLCBtYWtlcyBHaXQgY2hlY2sgaWYgY29udmVydGluZyBgQ1JMRmAgaXMgcmV2ZXJzaWJsZSB3aGVuCkBAIC00MTEsNyArNDI3LDcgQEAKIGNvcmUuZXhjbHVkZXNGaWxlOjoKIAlTcGVjaWZpZXMgdGhlIHBhdGhuYW1lIHRvIHRoZSBmaWxlIHRoYXQgY29udGFpbnMgcGF0dGVybnMgdG8KIAlkZXNjcmliZSBwYXRocyB0aGF0IGFyZSBub3QgbWVhbnQgdG8gYmUgdHJhY2tlZCwgaW4gYWRkaXRpb24KLQl0byAnLmdpdGlnbm9yZScgKHBlci1kaXJlY3RvcnkpIGFuZCAnLmdpdC9pbmZvL2V4Y2x1ZGUnLgorCXRvIGAuZ2l0aWdub3JlYCAocGVyLWRpcmVjdG9yeSkgYW5kIGAuZ2l0L2luZm8vZXhjbHVkZWAuCiAJRGVmYXVsdHMgdG8gYCRYREdfQ09ORklHX0hPTUUvZ2l0L2lnbm9yZWAuCiAJSWYgYCRYREdfQ09ORklHX0hPTUVgIGlzIGVpdGhlciBub3Qgc2V0IG9yIGVtcHR5LCBgJEhPTUUvLmNvbmZpZy9naXQvaWdub3JlYAogCWlzIHVzZWQgaW5zdGVhZC4gU2VlIGxpbmtnaXQ6Z2l0aWdub3JlWzVdLgpAQCAtNDI2LDggKzQ0Miw4IEBACiAJY29tbWFuZC1saW5lIGFyZ3VtZW50IGFuZCB3cml0ZSB0aGUgcGFzc3dvcmQgb24gaXRzIFNURE9VVC4KIAogY29yZS5hdHRyaWJ1dGVzRmlsZTo6Ci0JSW4gYWRkaXRpb24gdG8gJy5naXRhdHRyaWJ1dGVzJyAocGVyLWRpcmVjdG9yeSkgYW5kCi0JJy5naXQvaW5mby9hdHRyaWJ1dGVzJywgR2l0IGxvb2tzIGludG8gdGhpcyBmaWxlIGZvciBhdHRyaWJ1dGVzCisJSW4gYWRkaXRpb24gdG8gYC5naXRhdHRyaWJ1dGVzYCAocGVyLWRpcmVjdG9yeSkgYW5kCisJYC5naXQvaW5mby9hdHRyaWJ1dGVzYCwgR2l0IGxvb2tzIGludG8gdGhpcyBmaWxlIGZvciBhdHRyaWJ1dGVzCiAJKHNlZSBsaW5rZ2l0OmdpdGF0dHJpYnV0ZXNbNV0pLiBQYXRoIGV4cGFuc2lvbnMgYXJlIG1hZGUgdGhlIHNhbWUKIAl3YXkgYXMgZm9yIGBjb3JlLmV4Y2x1ZGVzRmlsZWAuIEl0cyBkZWZhdWx0IHZhbHVlIGlzCiAJYCRYREdfQ09ORklHX0hPTUUvZ2l0L2F0dHJpYnV0ZXNgLiBJZiBgJFhER19DT05GSUdfSE9NRWAgaXMgZWl0aGVyIG5vdApAQCAtNDM1LDEwICs0NTEsMTAgQEAKIAogY29yZS5ob29rc1BhdGg6OgogCUJ5IGRlZmF1bHQgR2l0IHdpbGwgbG9vayBmb3IgeW91ciBob29rcyBpbiB0aGUKLQknJEdJVF9ESVIvaG9va3MnIGRpcmVjdG9yeS4gU2V0IHRoaXMgdG8gZGlmZmVyZW50IHBhdGgsCi0JZS5nLiAnL2V0Yy9naXQvaG9va3MnLCBhbmQgR2l0IHdpbGwgdHJ5IHRvIGZpbmQgeW91ciBob29rcyBpbgotCXRoYXQgZGlyZWN0b3J5LCBlLmcuICcvZXRjL2dpdC9ob29rcy9wcmUtcmVjZWl2ZScgaW5zdGVhZCBvZgotCWluICckR0lUX0RJUi9ob29rcy9wcmUtcmVjZWl2ZScuCisJYCRHSVRfRElSL2hvb2tzYCBkaXJlY3RvcnkuIFNldCB0aGlzIHRvIGRpZmZlcmVudCBwYXRoLAorCWUuZy4gYC9ldGMvZ2l0L2hvb2tzYCwgYW5kIEdpdCB3aWxsIHRyeSB0byBmaW5kIHlvdXIgaG9va3MgaW4KKwl0aGF0IGRpcmVjdG9yeSwgZS5nLiBgL2V0Yy9naXQvaG9va3MvcHJlLXJlY2VpdmVgIGluc3RlYWQgb2YKKwlpbiBgJEdJVF9ESVIvaG9va3MvcHJlLXJlY2VpdmVgLgogKwogVGhlIHBhdGggY2FuIGJlIGVpdGhlciBhYnNvbHV0ZSBvciByZWxhdGl2ZS4gQSByZWxhdGl2ZSBwYXRoIGlzCiB0YWtlbiBhcyByZWxhdGl2ZSB0byB0aGUgZGlyZWN0b3J5IHdoZXJlIHRoZSBob29rcyBhcmUgcnVuIChzZWUKQEAgLTU1NCw2ICs1NzAsMTIgQEAKIAlEZWZhdWx0cyB0byBgUEVSTDVMSUJgIHRvIGFjY291bnQgZm9yIHRoZSBmYWN0IHRoYXQgR2l0IGZvcgogCVdpbmRvd3MgaW5zaXN0cyBvbiB1c2luZyBpdHMgb3duIFBlcmwgaW50ZXJwcmV0ZXIuCiAKK2NvcmUucmVzdHJpY3Rpbmhlcml0ZWRoYW5kbGVzOjoKKwlXaW5kb3dzLW9ubHk6IG92ZXJyaWRlIHdoZXRoZXIgc3Bhd25lZCBwcm9jZXNzZXMgaW5oZXJpdCBvbmx5IHN0YW5kYXJkCisJZmlsZSBoYW5kbGVzIChgc3RkaW5gLCBgc3Rkb3V0YCBhbmQgYHN0ZGVycmApIG9yIGFsbCBoYW5kbGVzLiBDYW4gYmUKKwlgYXV0b2AsIGB0cnVlYCBvciBgZmFsc2VgLiBEZWZhdWx0cyB0byBgYXV0b2AsIHdoaWNoIG1lYW5zIGB0cnVlYCBvbgorCVdpbmRvd3MgNyBhbmQgbGF0ZXIsIGFuZCBgZmFsc2VgIG9uIG9sZGVyIFdpbmRvd3MgdmVyc2lvbnMuCisKIGNvcmUuY3JlYXRlT2JqZWN0OjoKIAlZb3UgY2FuIHNldCB0aGlzIHRvICdsaW5rJywgaW4gd2hpY2ggY2FzZSBhIGhhcmRsaW5rIGZvbGxvd2VkIGJ5CiAJYSBkZWxldGUgb2YgdGhlIHNvdXJjZSBhcmUgdXNlZCB0byBtYWtlIHN1cmUgdGhhdCBvYmplY3QgY3JlYXRpb24KQEAgLTU3NCw3ICs1OTYsNyBAQAogCiBjb3JlLmNvbW1pdEdyYXBoOjoKIAlJZiB0cnVlLCB0aGVuIGdpdCB3aWxsIHJlYWQgdGhlIGNvbW1pdC1ncmFwaCBmaWxlIChpZiBpdCBleGlzdHMpCi0JdG8gcGFyc2UgdGhlIGdyYXBoIHN0cnVjdHVyZSBvZiBjb21taXRzLiBEZWZhdWx0cyB0byBmYWxzZS4gU2VlCisJdG8gcGFyc2UgdGhlIGdyYXBoIHN0cnVjdHVyZSBvZiBjb21taXRzLiBEZWZhdWx0cyB0byB0cnVlLiBTZWUKIAlsaW5rZ2l0OmdpdC1jb21taXQtZ3JhcGhbMV0gZm9yIG1vcmUgaW5mb3JtYXRpb24uCiAKIGNvcmUudXNlUmVwbGFjZVJlZnM6OgpAQCAtNTg4LDggKzYxMCwxNCBAQAogCW11bHRpLXBhY2staW5kZXggZGVzaWduIGRvY3VtZW50XS4KIAogY29yZS5zcGFyc2VDaGVja291dDo6Ci0JRW5hYmxlICJzcGFyc2UgY2hlY2tvdXQiIGZlYXR1cmUuIFNlZSBzZWN0aW9uICJTcGFyc2UgY2hlY2tvdXQiIGluCi0JbGlua2dpdDpnaXQtcmVhZC10cmVlWzFdIGZvciBtb3JlIGluZm9ybWF0aW9uLgorCUVuYWJsZSAic3BhcnNlIGNoZWNrb3V0IiBmZWF0dXJlLiBTZWUgbGlua2dpdDpnaXQtc3BhcnNlLWNoZWNrb3V0WzFdCisJZm9yIG1vcmUgaW5mb3JtYXRpb24uCisKK2NvcmUuc3BhcnNlQ2hlY2tvdXRDb25lOjoKKwlFbmFibGVzIHRoZSAiY29uZSBtb2RlIiBvZiB0aGUgc3BhcnNlIGNoZWNrb3V0IGZlYXR1cmUuIFdoZW4gdGhlCisJc3BhcnNlLWNoZWNrb3V0IGZpbGUgY29udGFpbnMgYSBsaW1pdGVkIHNldCBvZiBwYXR0ZXJucywgdGhlbiB0aGlzCisJbW9kZSBwcm92aWRlcyBzaWduaWZpY2FudCBwZXJmb3JtYW5jZSBhZHZhbnRhZ2VzLiBTZWUKKwlsaW5rZ2l0OmdpdC1zcGFyc2UtY2hlY2tvdXRbMV0gZm9yIG1vcmUgaW5mb3JtYXRpb24uCiAKIGNvcmUuYWJicmV2OjoKIAlTZXQgdGhlIGxlbmd0aCBvYmplY3QgbmFtZXMgYXJlIGFiYnJldmlhdGVkIHRvLiAgSWYKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL2RpZmYudHh0IGIvRG9jdW1lbnRhdGlvbi9jb25maWcvZGlmZi50eHQKaW5kZXggZTQ4YmI5OC4uZmYwOWYxYyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9jb25maWcvZGlmZi50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9jb25maWcvZGlmZi50eHQKQEAgLTEwLDcgKzEwLDcgQEAKIAogZGlmZi5kaXJzdGF0OjoKIAlBIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGAtLWRpcnN0YXRgIHBhcmFtZXRlcnMgc3BlY2lmeWluZyB0aGUKLQlkZWZhdWx0IGJlaGF2aW9yIG9mIHRoZSBgLS1kaXJzdGF0YCBvcHRpb24gdG8gbGlua2dpdDpnaXQtZGlmZlsxXWAKKwlkZWZhdWx0IGJlaGF2aW9yIG9mIHRoZSBgLS1kaXJzdGF0YCBvcHRpb24gdG8gbGlua2dpdDpnaXQtZGlmZlsxXQogCWFuZCBmcmllbmRzLiBUaGUgZGVmYXVsdHMgY2FuIGJlIG92ZXJyaWRkZW4gb24gdGhlIGNvbW1hbmQgbGluZQogCSh1c2luZyBgLS1kaXJzdGF0PTxwYXJhbTEscGFyYW0yLC4uLj5gKS4gVGhlIGZhbGxiYWNrIGRlZmF1bHRzCiAJKHdoZW4gbm90IGNoYW5nZWQgYnkgYGRpZmYuZGlyc3RhdGApIGFyZSBgY2hhbmdlcyxub25jdW11bGF0aXZlLDNgLgpAQCAtNzMsMTIgKzczLDEzIEBACiAJZW52aXJvbm1lbnQgdmFyaWFibGUuICBUaGUgY29tbWFuZCBpcyBjYWxsZWQgd2l0aCBwYXJhbWV0ZXJzCiAJYXMgZGVzY3JpYmVkIHVuZGVyICJnaXQgRGlmZnMiIGluIGxpbmtnaXQ6Z2l0WzFdLiAgTm90ZTogaWYKIAl5b3Ugd2FudCB0byB1c2UgYW4gZXh0ZXJuYWwgZGlmZiBwcm9ncmFtIG9ubHkgb24gYSBzdWJzZXQgb2YKLQl5b3VyIGZpbGVzLCB5b3UJbWlnaHQgd2FudCB0byB1c2UgbGlua2dpdDpnaXRhdHRyaWJ1dGVzWzVdIGluc3RlYWQuCisJeW91ciBmaWxlcywgeW91IG1pZ2h0IHdhbnQgdG8gdXNlIGxpbmtnaXQ6Z2l0YXR0cmlidXRlc1s1XSBpbnN0ZWFkLgogCiBkaWZmLmlnbm9yZVN1Ym1vZHVsZXM6OgogCVNldHMgdGhlIGRlZmF1bHQgdmFsdWUgb2YgLS1pZ25vcmUtc3VibW9kdWxlcy4gTm90ZSB0aGF0IHRoaXMKIAlhZmZlY3RzIG9ubHkgJ2dpdCBkaWZmJyBQb3JjZWxhaW4sIGFuZCBub3QgbG93ZXIgbGV2ZWwgJ2RpZmYnCi0JY29tbWFuZHMgc3VjaCBhcyAnZ2l0IGRpZmYtZmlsZXMnLiAnZ2l0IGNoZWNrb3V0JyBhbHNvIGhvbm9ycworCWNvbW1hbmRzIHN1Y2ggYXMgJ2dpdCBkaWZmLWZpbGVzJy4gJ2dpdCBjaGVja291dCcKKwlhbmQgJ2dpdCBzd2l0Y2gnIGFsc28gaG9ub3IKIAl0aGlzIHNldHRpbmcgd2hlbiByZXBvcnRpbmcgdW5jb21taXR0ZWQgY2hhbmdlcy4gU2V0dGluZyBpdCB0bwogCSdhbGwnIGRpc2FibGVzIHRoZSBzdWJtb2R1bGUgc3VtbWFyeSBub3JtYWxseSBzaG93biBieSAnZ2l0IGNvbW1pdCcKIAlhbmQgJ2dpdCBzdGF0dXMnIHdoZW4gYHN0YXR1cy5zdWJtb2R1bGVTdW1tYXJ5YCBpcyBzZXQgdW5sZXNzIGl0IGlzCkBAIC0xODgsNyArMTg5LDcgQEAKIGluY2x1ZGU6Oi4uL21lcmdldG9vbHMtZGlmZi50eHRbXQogCiBkaWZmLmluZGVudEhldXJpc3RpYzo6Ci0JU2V0IHRoaXMgb3B0aW9uIHRvIGB0cnVlYCB0byBlbmFibGUgZXhwZXJpbWVudGFsIGhldXJpc3RpY3MKKwlTZXQgdGhpcyBvcHRpb24gdG8gYGZhbHNlYCB0byBkaXNhYmxlIHRoZSBkZWZhdWx0IGhldXJpc3RpY3MKIAl0aGF0IHNoaWZ0IGRpZmYgaHVuayBib3VuZGFyaWVzIHRvIG1ha2UgcGF0Y2hlcyBlYXNpZXIgdG8gcmVhZC4KIAogZGlmZi5hbGdvcml0aG06OgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvZmVhdHVyZS50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9mZWF0dXJlLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NzVmOGM4Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jdW1lbnRhdGlvbi9jb25maWcvZmVhdHVyZS50eHQKQEAgLTAsMCArMSwzNyBAQAorZmVhdHVyZS4qOjoKKwlUaGUgY29uZmlnIHNldHRpbmdzIHRoYXQgc3RhcnQgd2l0aCBgZmVhdHVyZS5gIG1vZGlmeSB0aGUgZGVmYXVsdHMgb2YKKwlhIGdyb3VwIG9mIG90aGVyIGNvbmZpZyBzZXR0aW5ncy4gVGhlc2UgZ3JvdXBzIGFyZSBjcmVhdGVkIGJ5IHRoZSBHaXQKKwlkZXZlbG9wZXIgY29tbXVuaXR5IGFzIHJlY29tbWVuZGVkIGRlZmF1bHRzIGFuZCBhcmUgc3ViamVjdCB0byBjaGFuZ2UuCisJSW4gcGFydGljdWxhciwgbmV3IGNvbmZpZyBvcHRpb25zIG1heSBiZSBhZGRlZCB3aXRoIGRpZmZlcmVudCBkZWZhdWx0cy4KKworZmVhdHVyZS5leHBlcmltZW50YWw6OgorCUVuYWJsZSBjb25maWcgb3B0aW9ucyB0aGF0IGFyZSBuZXcgdG8gR2l0LCBhbmQgYXJlIGJlaW5nIGNvbnNpZGVyZWQgZm9yCisJZnV0dXJlIGRlZmF1bHRzLiBDb25maWcgc2V0dGluZ3MgaW5jbHVkZWQgaGVyZSBtYXkgYmUgYWRkZWQgb3IgcmVtb3ZlZAorCXdpdGggZWFjaCByZWxlYXNlLCBpbmNsdWRpbmcgbWlub3IgdmVyc2lvbiB1cGRhdGVzLiBUaGVzZSBzZXR0aW5ncyBtYXkKKwloYXZlIHVuaW50ZW5kZWQgaW50ZXJhY3Rpb25zIHNpbmNlIHRoZXkgYXJlIHNvIG5ldy4gUGxlYXNlIGVuYWJsZSB0aGlzCisJc2V0dGluZyBpZiB5b3UgYXJlIGludGVyZXN0ZWQgaW4gcHJvdmlkaW5nIGZlZWRiYWNrIG9uIGV4cGVyaW1lbnRhbAorCWZlYXR1cmVzLiBUaGUgbmV3IGRlZmF1bHQgdmFsdWVzIGFyZToKKysKKyogYHBhY2sudXNlU3BhcnNlPXRydWVgIHVzZXMgYSBuZXcgYWxnb3JpdGhtIHdoZW4gY29uc3RydWN0aW5nIGEgcGFjay1maWxlCit3aGljaCBjYW4gaW1wcm92ZSBgZ2l0IHB1c2hgIHBlcmZvcm1hbmNlIGluIHJlcG9zIHdpdGggbWFueSBmaWxlcy4KKysKKyogYGZldGNoLm5lZ290aWF0aW9uQWxnb3JpdGhtPXNraXBwaW5nYCBtYXkgaW1wcm92ZSBmZXRjaCBuZWdvdGlhdGlvbiB0aW1lcyBieQorc2tpcHBpbmcgbW9yZSBjb21taXRzIGF0IGEgdGltZSwgcmVkdWNpbmcgdGhlIG51bWJlciBvZiByb3VuZCB0cmlwcy4KKysKKyogYGZldGNoLndyaXRlQ29tbWl0R3JhcGg9dHJ1ZWAgd3JpdGVzIGEgY29tbWl0LWdyYXBoIGFmdGVyIGV2ZXJ5IGBnaXQgZmV0Y2hgCitjb21tYW5kIHRoYXQgZG93bmxvYWRzIGEgcGFjay1maWxlIGZyb20gYSByZW1vdGUuIFVzaW5nIHRoZSBgLS1zcGxpdGAgb3B0aW9uLAorbW9zdCBleGVjdXRpb25zIHdpbGwgY3JlYXRlIGEgdmVyeSBzbWFsbCBjb21taXQtZ3JhcGggZmlsZSBvbiB0b3Agb2YgdGhlCitleGlzdGluZyBjb21taXQtZ3JhcGggZmlsZShzKS4gT2NjYXNpb25hbGx5LCB0aGVzZSBmaWxlcyB3aWxsIG1lcmdlIGFuZCB0aGUKK3dyaXRlIG1heSB0YWtlIGxvbmdlci4gSGF2aW5nIGFuIHVwZGF0ZWQgY29tbWl0LWdyYXBoIGZpbGUgaGVscHMgcGVyZm9ybWFuY2UKK29mIG1hbnkgR2l0IGNvbW1hbmRzLCBpbmNsdWRpbmcgYGdpdCBtZXJnZS1iYXNlYCwgYGdpdCBwdXNoIC1mYCwgYW5kCitgZ2l0IGxvZyAtLWdyYXBoYC4KKworZmVhdHVyZS5tYW55RmlsZXM6OgorCUVuYWJsZSBjb25maWcgb3B0aW9ucyB0aGF0IG9wdGltaXplIGZvciByZXBvcyB3aXRoIG1hbnkgZmlsZXMgaW4gdGhlCisJd29ya2luZyBkaXJlY3RvcnkuIFdpdGggbWFueSBmaWxlcywgY29tbWFuZHMgc3VjaCBhcyBgZ2l0IHN0YXR1c2AgYW5kCisJYGdpdCBjaGVja291dGAgbWF5IGJlIHNsb3cgYW5kIHRoZXNlIG5ldyBkZWZhdWx0cyBpbXByb3ZlIHBlcmZvcm1hbmNlOgorKworKiBgaW5kZXgudmVyc2lvbj00YCBlbmFibGVzIHBhdGgtcHJlZml4IGNvbXByZXNzaW9uIGluIHRoZSBpbmRleC4KKysKKyogYGNvcmUudW50cmFja2VkQ2FjaGU9dHJ1ZWAgZW5hYmxlcyB0aGUgdW50cmFja2VkIGNhY2hlLiBUaGlzIHNldHRpbmcgYXNzdW1lcwordGhhdCBtdGltZSBpcyB3b3JraW5nIG9uIHlvdXIgbWFjaGluZS4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL2ZldGNoLnR4dCBiL0RvY3VtZW50YXRpb24vY29uZmlnL2ZldGNoLnR4dAppbmRleCBjYmZhZDZjLi5mMTE5NDAyIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9mZXRjaC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9jb25maWcvZmV0Y2gudHh0CkBAIC01OSw3ICs1OSwzMyBAQAogCWVmZm9ydCB0byBjb252ZXJnZSBmYXN0ZXIsIGJ1dCBtYXkgcmVzdWx0IGluIGEgbGFyZ2VyLXRoYW4tbmVjZXNzYXJ5CiAJcGFja2ZpbGU7IFRoZSBkZWZhdWx0IGlzICJkZWZhdWx0IiB3aGljaCBpbnN0cnVjdHMgR2l0IHRvIHVzZSB0aGUgZGVmYXVsdCBhbGdvcml0aG0KIAl0aGF0IG5ldmVyIHNraXBzIGNvbW1pdHMgKHVubGVzcyB0aGUgc2VydmVyIGhhcyBhY2tub3dsZWRnZWQgaXQgb3Igb25lCi0Jb2YgaXRzIGRlc2NlbmRhbnRzKS4KKwlvZiBpdHMgZGVzY2VuZGFudHMpLiBJZiBgZmVhdHVyZS5leHBlcmltZW50YWxgIGlzIGVuYWJsZWQsIHRoZW4gdGhpcworCXNldHRpbmcgZGVmYXVsdHMgdG8gInNraXBwaW5nIi4KIAlVbmtub3duIHZhbHVlcyB3aWxsIGNhdXNlICdnaXQgZmV0Y2gnIHRvIGVycm9yIG91dC4KICsKIFNlZSBhbHNvIHRoZSBgLS1uZWdvdGlhdGlvbi10aXBgIG9wdGlvbiBmb3IgbGlua2dpdDpnaXQtZmV0Y2hbMV0uCisKK2ZldGNoLnNob3dGb3JjZWRVcGRhdGVzOjoKKwlTZXQgdG8gZmFsc2UgdG8gZW5hYmxlIGAtLW5vLXNob3ctZm9yY2VkLXVwZGF0ZXNgIGluCisJbGlua2dpdDpnaXQtZmV0Y2hbMV0gYW5kIGxpbmtnaXQ6Z2l0LXB1bGxbMV0gY29tbWFuZHMuCisJRGVmYXVsdHMgdG8gdHJ1ZS4KKworZmV0Y2gucGFyYWxsZWw6OgorCVNwZWNpZmllcyB0aGUgbWF4aW1hbCBudW1iZXIgb2YgZmV0Y2ggb3BlcmF0aW9ucyB0byBiZSBydW4gaW4gcGFyYWxsZWwKKwlhdCBhIHRpbWUgKHN1Ym1vZHVsZXMsIG9yIHJlbW90ZXMgd2hlbiB0aGUgYC0tbXVsdGlwbGVgIG9wdGlvbiBvZgorCWxpbmtnaXQ6Z2l0LWZldGNoWzFdIGlzIGluIGVmZmVjdCkuCisrCitBIHZhbHVlIG9mIDAgd2lsbCBnaXZlIHNvbWUgcmVhc29uYWJsZSBkZWZhdWx0LiBJZiB1bnNldCwgaXQgZGVmYXVsdHMgdG8gMS4KKysKK0ZvciBzdWJtb2R1bGVzLCB0aGlzIHNldHRpbmcgY2FuIGJlIG92ZXJyaWRkZW4gdXNpbmcgdGhlIGBzdWJtb2R1bGUuZmV0Y2hKb2JzYAorY29uZmlnIHNldHRpbmcuCisKK2ZldGNoLndyaXRlQ29tbWl0R3JhcGg6OgorCVNldCB0byB0cnVlIHRvIHdyaXRlIGEgY29tbWl0LWdyYXBoIGFmdGVyIGV2ZXJ5IGBnaXQgZmV0Y2hgIGNvbW1hbmQKKwl0aGF0IGRvd25sb2FkcyBhIHBhY2stZmlsZSBmcm9tIGEgcmVtb3RlLiBVc2luZyB0aGUgYC0tc3BsaXRgIG9wdGlvbiwKKwltb3N0IGV4ZWN1dGlvbnMgd2lsbCBjcmVhdGUgYSB2ZXJ5IHNtYWxsIGNvbW1pdC1ncmFwaCBmaWxlIG9uIHRvcCBvZgorCXRoZSBleGlzdGluZyBjb21taXQtZ3JhcGggZmlsZShzKS4gT2NjYXNpb25hbGx5LCB0aGVzZSBmaWxlcyB3aWxsCisJbWVyZ2UgYW5kIHRoZSB3cml0ZSBtYXkgdGFrZSBsb25nZXIuIEhhdmluZyBhbiB1cGRhdGVkIGNvbW1pdC1ncmFwaAorCWZpbGUgaGVscHMgcGVyZm9ybWFuY2Ugb2YgbWFueSBHaXQgY29tbWFuZHMsIGluY2x1ZGluZyBgZ2l0IG1lcmdlLWJhc2VgLAorCWBnaXQgcHVzaCAtZmAsIGFuZCBgZ2l0IGxvZyAtLWdyYXBoYC4gRGVmYXVsdHMgdG8gZmFsc2UsIHVubGVzcworCWBmZWF0dXJlLmV4cGVyaW1lbnRhbGAgaXMgdHJ1ZS4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL2Zvcm1hdC50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9mb3JtYXQudHh0CmluZGV4IGRjNzc5NDEuLjQ1YzdiZDUgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL2Zvcm1hdC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9jb25maWcvZm9ybWF0LnR4dApAQCAtMzYsNiArMzYsMTIgQEAKIAlUaGUgZGVmYXVsdCBmb3IgZm9ybWF0LXBhdGNoIGlzIHRvIG91dHB1dCBmaWxlcyB3aXRoIHRoZSAnW1BBVENIXScKIAlzdWJqZWN0IHByZWZpeC4gVXNlIHRoaXMgdmFyaWFibGUgdG8gY2hhbmdlIHRoYXQgcHJlZml4LgogCitmb3JtYXQuY292ZXJGcm9tRGVzY3JpcHRpb246OgorCVRoZSBkZWZhdWx0IG1vZGUgZm9yIGZvcm1hdC1wYXRjaCB0byBkZXRlcm1pbmUgd2hpY2ggcGFydHMgb2YKKwl0aGUgY292ZXIgbGV0dGVyIHdpbGwgYmUgcG9wdWxhdGVkIHVzaW5nIHRoZSBicmFuY2gncworCWRlc2NyaXB0aW9uLiBTZWUgdGhlIGAtLWNvdmVyLWZyb20tZGVzY3JpcHRpb25gIG9wdGlvbiBpbgorCWxpbmtnaXQ6Z2l0LWZvcm1hdC1wYXRjaFsxXS4KKwogZm9ybWF0LnNpZ25hdHVyZTo6CiAJVGhlIGRlZmF1bHQgZm9yIGZvcm1hdC1wYXRjaCBpcyB0byBvdXRwdXQgYSBzaWduYXR1cmUgY29udGFpbmluZwogCXRoZSBHaXQgdmVyc2lvbiBudW1iZXIuIFVzZSB0aGlzIHZhcmlhYmxlIHRvIGNoYW5nZSB0aGF0IGRlZmF1bHQuCkBAIC03NywxMSArODMsNDMgQEAKIAlBIGJvb2xlYW4gdGhhdCBjb250cm9scyB3aGV0aGVyIHRvIGdlbmVyYXRlIGEgY292ZXItbGV0dGVyIHdoZW4KIAlmb3JtYXQtcGF0Y2ggaXMgaW52b2tlZCwgYnV0IGluIGFkZGl0aW9uIGNhbiBiZSBzZXQgdG8gImF1dG8iLCB0bwogCWdlbmVyYXRlIGEgY292ZXItbGV0dGVyIG9ubHkgd2hlbiB0aGVyZSdzIG1vcmUgdGhhbiBvbmUgcGF0Y2guCisJRGVmYXVsdCBpcyBmYWxzZS4KIAogZm9ybWF0Lm91dHB1dERpcmVjdG9yeTo6CiAJU2V0IGEgY3VzdG9tIGRpcmVjdG9yeSB0byBzdG9yZSB0aGUgcmVzdWx0aW5nIGZpbGVzIGluc3RlYWQgb2YgdGhlCi0JY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KKwljdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiBBbGwgZGlyZWN0b3J5IGNvbXBvbmVudHMgd2lsbCBiZSBjcmVhdGVkLgogCiBmb3JtYXQudXNlQXV0b0Jhc2U6OgogCUEgYm9vbGVhbiB2YWx1ZSB3aGljaCBsZXRzIHlvdSBlbmFibGUgdGhlIGAtLWJhc2U9YXV0b2Agb3B0aW9uIG9mCiAJZm9ybWF0LXBhdGNoIGJ5IGRlZmF1bHQuCisKK2Zvcm1hdC5ub3Rlczo6CisJUHJvdmlkZXMgdGhlIGRlZmF1bHQgdmFsdWUgZm9yIHRoZSBgLS1ub3Rlc2Agb3B0aW9uIHRvCisJZm9ybWF0LXBhdGNoLiBBY2NlcHRzIGEgYm9vbGVhbiB2YWx1ZSwgb3IgYSByZWYgd2hpY2ggc3BlY2lmaWVzCisJd2hlcmUgdG8gZ2V0IG5vdGVzLiBJZiBmYWxzZSwgZm9ybWF0LXBhdGNoIGRlZmF1bHRzIHRvCisJYC0tbm8tbm90ZXNgLiBJZiB0cnVlLCBmb3JtYXQtcGF0Y2ggZGVmYXVsdHMgdG8gYC0tbm90ZXNgLiBJZgorCXNldCB0byBhIG5vbi1ib29sZWFuIHZhbHVlLCBmb3JtYXQtcGF0Y2ggZGVmYXVsdHMgdG8KKwlgLS1ub3Rlcz08cmVmPmAsIHdoZXJlIGByZWZgIGlzIHRoZSBub24tYm9vbGVhbiB2YWx1ZS4gRGVmYXVsdHMKKwl0byBmYWxzZS4KKysKK0lmIG9uZSB3aXNoZXMgdG8gdXNlIHRoZSByZWYgYHJlZi9ub3Rlcy90cnVlYCwgcGxlYXNlIHVzZSB0aGF0IGxpdGVyYWwKK2luc3RlYWQuCisrCitUaGlzIGNvbmZpZ3VyYXRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcyBpbiBvcmRlciB0byBhbGxvdworbXVsdGlwbGUgbm90ZXMgcmVmcyB0byBiZSBpbmNsdWRlZC4gSW4gdGhhdCBjYXNlLCBpdCB3aWxsIGJlaGF2ZQorc2ltaWxhcmx5IHRvIG11bHRpcGxlIGAtLVtuby1dbm90ZXNbPV1gIG9wdGlvbnMgcGFzc2VkIGluLiBUaGF0IGlzLCBhCit2YWx1ZSBvZiBgdHJ1ZWAgd2lsbCBzaG93IHRoZSBkZWZhdWx0IG5vdGVzLCBhIHZhbHVlIG9mIGA8cmVmPmAgd2lsbAorYWxzbyBzaG93IG5vdGVzIGZyb20gdGhhdCBub3RlcyByZWYgYW5kIGEgdmFsdWUgb2YgYGZhbHNlYCB3aWxsIG5lZ2F0ZQorcHJldmlvdXMgY29uZmlndXJhdGlvbnMgYW5kIG5vdCBzaG93IG5vdGVzLgorKworRm9yIGV4YW1wbGUsCisrCistLS0tLS0tLS0tLS0KK1tmb3JtYXRdCisJbm90ZXMgPSB0cnVlCisJbm90ZXMgPSBmb28KKwlub3RlcyA9IGZhbHNlCisJbm90ZXMgPSBiYXIKKy0tLS0tLS0tLS0tLQorKword2lsbCBvbmx5IHNob3cgbm90ZXMgZnJvbSBgcmVmcy9ub3Rlcy9iYXJgLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvZnNjay50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9mc2NrLnR4dAppbmRleCA4NzljNWEyLi40NTBlOGMzIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9mc2NrLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9mc2NrLnR4dApAQCAtMjMsOSArMjMsOSBAQAogdmljZSB2ZXJzYSBieSBjb25maWd1cmluZyB0aGUgYGZzY2suPG1zZy1pZD5gIHNldHRpbmcgd2hlcmUgdGhlCiBgPG1zZy1pZD5gIGlzIHRoZSBmc2NrIG1lc3NhZ2UgSUQgYW5kIHRoZSB2YWx1ZSBpcyBvbmUgb2YgYGVycm9yYCwKIGB3YXJuYCBvciBgaWdub3JlYC4gRm9yIGNvbnZlbmllbmNlLCBmc2NrIHByZWZpeGVzIHRoZSBlcnJvci93YXJuaW5nCi13aXRoIHRoZSBtZXNzYWdlIElELCBlLmcuICJtaXNzaW5nRW1haWw6IGludmFsaWQgYXV0aG9yL2NvbW1pdHRlciBsaW5lCi0tIG1pc3NpbmcgZW1haWwiIG1lYW5zIHRoYXQgc2V0dGluZyBgZnNjay5taXNzaW5nRW1haWwgPSBpZ25vcmVgIHdpbGwKLWhpZGUgdGhhdCBpc3N1ZS4KK3dpdGggdGhlIG1lc3NhZ2UgSUQsIGUuZy4gIm1pc3NpbmdFbWFpbDogaW52YWxpZCBhdXRob3IvY29tbWl0dGVyCitsaW5lIC0gbWlzc2luZyBlbWFpbCIgbWVhbnMgdGhhdCBzZXR0aW5nIGBmc2NrLm1pc3NpbmdFbWFpbCA9IGlnbm9yZWAKK3dpbGwgaGlkZSB0aGF0IGlzc3VlLgogKwogSW4gZ2VuZXJhbCwgaXQgaXMgYmV0dGVyIHRvIGVudW1lcmF0ZSBleGlzdGluZyBvYmplY3RzIHdpdGggcHJvYmxlbXMKIHdpdGggYGZzY2suc2tpcExpc3RgLCBpbnN0ZWFkIG9mIGxpc3RpbmcgdGhlIGtpbmQgb2YgYnJlYWthZ2VzIHRoZXNlCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9nYy50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9nYy50eHQKaW5kZXggYzZmYmI4YS4uMDBlYTBhNiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9jb25maWcvZ2MudHh0CisrKyBiL0RvY3VtZW50YXRpb24vY29uZmlnL2djLnR4dApAQCAtMSwyNSArMSw0MiBAQAogZ2MuYWdncmVzc2l2ZURlcHRoOjoKIAlUaGUgZGVwdGggcGFyYW1ldGVyIHVzZWQgaW4gdGhlIGRlbHRhIGNvbXByZXNzaW9uCiAJYWxnb3JpdGhtIHVzZWQgYnkgJ2dpdCBnYyAtLWFnZ3Jlc3NpdmUnLiAgVGhpcyBkZWZhdWx0cwotCXRvIDUwLgorCXRvIDUwLCB3aGljaCBpcyB0aGUgZGVmYXVsdCBmb3IgdGhlIGAtLWRlcHRoYCBvcHRpb24gd2hlbgorCWAtLWFnZ3Jlc3NpdmVgIGlzbid0IGluIHVzZS4KKysKK1NlZSB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGAtLWRlcHRoYCBvcHRpb24gaW4KK2xpbmtnaXQ6Z2l0LXJlcGFja1sxXSBmb3IgbW9yZSBkZXRhaWxzLgogCiBnYy5hZ2dyZXNzaXZlV2luZG93OjoKIAlUaGUgd2luZG93IHNpemUgcGFyYW1ldGVyIHVzZWQgaW4gdGhlIGRlbHRhIGNvbXByZXNzaW9uCiAJYWxnb3JpdGhtIHVzZWQgYnkgJ2dpdCBnYyAtLWFnZ3Jlc3NpdmUnLiAgVGhpcyBkZWZhdWx0cwotCXRvIDI1MC4KKwl0byAyNTAsIHdoaWNoIGlzIGEgbXVjaCBtb3JlIGFnZ3Jlc3NpdmUgd2luZG93IHNpemUgdGhhbgorCXRoZSBkZWZhdWx0IGAtLXdpbmRvd2Agb2YgMTAuCisrCitTZWUgdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgLS13aW5kb3dgIG9wdGlvbiBpbgorbGlua2dpdDpnaXQtcmVwYWNrWzFdIGZvciBtb3JlIGRldGFpbHMuCiAKIGdjLmF1dG86OgogCVdoZW4gdGhlcmUgYXJlIGFwcHJveGltYXRlbHkgbW9yZSB0aGFuIHRoaXMgbWFueSBsb29zZQogCW9iamVjdHMgaW4gdGhlIHJlcG9zaXRvcnksIGBnaXQgZ2MgLS1hdXRvYCB3aWxsIHBhY2sgdGhlbS4KIAlTb21lIFBvcmNlbGFpbiBjb21tYW5kcyB1c2UgdGhpcyBjb21tYW5kIHRvIHBlcmZvcm0gYQogCWxpZ2h0LXdlaWdodCBnYXJiYWdlIGNvbGxlY3Rpb24gZnJvbSB0aW1lIHRvIHRpbWUuICBUaGUKLQlkZWZhdWx0IHZhbHVlIGlzIDY3MDAuICBTZXR0aW5nIHRoaXMgdG8gMCBkaXNhYmxlcyBpdC4KKwlkZWZhdWx0IHZhbHVlIGlzIDY3MDAuCisrCitTZXR0aW5nIHRoaXMgdG8gMCBkaXNhYmxlcyBub3Qgb25seSBhdXRvbWF0aWMgcGFja2luZyBiYXNlZCBvbiB0aGUKK251bWJlciBvZiBsb29zZSBvYmplY3RzLCBidXQgYW55IG90aGVyIGhldXJpc3RpYyBgZ2l0IGdjIC0tYXV0b2Agd2lsbAorb3RoZXJ3aXNlIHVzZSB0byBkZXRlcm1pbmUgaWYgdGhlcmUncyB3b3JrIHRvIGRvLCBzdWNoIGFzCitgZ2MuYXV0b1BhY2tMaW1pdGAuCiAKIGdjLmF1dG9QYWNrTGltaXQ6OgogCVdoZW4gdGhlcmUgYXJlIG1vcmUgdGhhbiB0aGlzIG1hbnkgcGFja3MgdGhhdCBhcmUgbm90CiAJbWFya2VkIHdpdGggYCoua2VlcGAgZmlsZSBpbiB0aGUgcmVwb3NpdG9yeSwgYGdpdCBnYwogCS0tYXV0b2AgY29uc29saWRhdGVzIHRoZW0gaW50byBvbmUgbGFyZ2VyIHBhY2suICBUaGUKLQlkZWZhdWx0CXZhbHVlIGlzIDUwLiAgU2V0dGluZyB0aGlzIHRvIDAgZGlzYWJsZXMgaXQuCisJZGVmYXVsdCB2YWx1ZSBpcyA1MC4gIFNldHRpbmcgdGhpcyB0byAwIGRpc2FibGVzIGl0LgorCVNldHRpbmcgYGdjLmF1dG9gIHRvIDAgd2lsbCBhbHNvIGRpc2FibGUgdGhpcy4KKysKK1NlZSB0aGUgYGdjLmJpZ1BhY2tUaHJlc2hvbGRgIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYmVsb3cuIFdoZW4gaW4KK3VzZSwgaXQnbGwgYWZmZWN0IGhvdyB0aGUgYXV0byBwYWNrIGxpbWl0IHdvcmtzLgogCiBnYy5hdXRvRGV0YWNoOjoKIAlNYWtlIGBnaXQgZ2MgLS1hdXRvYCByZXR1cm4gaW1tZWRpYXRlbHkgYW5kIHJ1biBpbiBiYWNrZ3JvdW5kCkBAIC0zNiwxMiArNTMsMTcgQEAKIHRoaXMgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBpcyBpZ25vcmVkLCBhbGwgcGFja3MgZXhjZXB0IHRoZSBiYXNlIHBhY2sKIHdpbGwgYmUgcmVwYWNrZWQuIEFmdGVyIHRoaXMgdGhlIG51bWJlciBvZiBwYWNrcyBzaG91bGQgZ28gYmVsb3cKIGdjLmF1dG9QYWNrTGltaXQgYW5kIGdjLmJpZ1BhY2tUaHJlc2hvbGQgc2hvdWxkIGJlIHJlc3BlY3RlZCBhZ2Fpbi4KKysKK0lmIHRoZSBhbW91bnQgb2YgbWVtb3J5IGVzdGltYXRlZCBmb3IgYGdpdCByZXBhY2tgIHRvIHJ1biBzbW9vdGhseSBpcworbm90IGF2YWlsYWJsZSBhbmQgYGdjLmJpZ1BhY2tUaHJlc2hvbGRgIGlzIG5vdCBzZXQsIHRoZSBsYXJnZXN0IHBhY2sKK3dpbGwgYWxzbyBiZSBleGNsdWRlZCAodGhpcyBpcyB0aGUgZXF1aXZhbGVudCBvZiBydW5uaW5nIGBnaXQgZ2NgIHdpdGgKK2AtLWtlZXAtYmFzZS1wYWNrYCkuCiAKIGdjLndyaXRlQ29tbWl0R3JhcGg6OgogCUlmIHRydWUsIHRoZW4gZ2Mgd2lsbCByZXdyaXRlIHRoZSBjb21taXQtZ3JhcGggZmlsZSB3aGVuCi0JbGlua2dpdDpnaXQtZ2NbMV0gaXMgcnVuLiBXaGVuIHVzaW5nIGxpbmtnaXQ6Z2l0LWdjWzFdCi0JJy0tYXV0bycgdGhlIGNvbW1pdC1ncmFwaCB3aWxsIGJlIHVwZGF0ZWQgaWYgaG91c2VrZWVwaW5nIGlzCi0JcmVxdWlyZWQuIERlZmF1bHQgaXMgZmFsc2UuIFNlZSBsaW5rZ2l0OmdpdC1jb21taXQtZ3JhcGhbMV0KKwlsaW5rZ2l0OmdpdC1nY1sxXSBpcyBydW4uIFdoZW4gdXNpbmcgYGdpdCBnYyAtLWF1dG9gCisJdGhlIGNvbW1pdC1ncmFwaCB3aWxsIGJlIHVwZGF0ZWQgaWYgaG91c2VrZWVwaW5nIGlzCisJcmVxdWlyZWQuIERlZmF1bHQgaXMgdHJ1ZS4gU2VlIGxpbmtnaXQ6Z2l0LWNvbW1pdC1ncmFwaFsxXQogCWZvciBkZXRhaWxzLgogCiBnYy5sb2dFeHBpcnk6OgpAQCAtOTQsNiArMTE2LDEyIEBACiAJV2l0aCAiPHBhdHRlcm4+IiAoZS5nLiAicmVmcy9zdGFzaCIpCiAJaW4gdGhlIG1pZGRsZSwgdGhlIHNldHRpbmcgYXBwbGllcyBvbmx5IHRvIHRoZSByZWZzIHRoYXQKIAltYXRjaCB0aGUgPHBhdHRlcm4+LgorKworVGhlc2UgdHlwZXMgb2YgZW50cmllcyBhcmUgZ2VuZXJhbGx5IGNyZWF0ZWQgYXMgYSByZXN1bHQgb2YgdXNpbmcgYGdpdAorY29tbWl0IC0tYW1lbmRgIG9yIGBnaXQgcmViYXNlYCBhbmQgYXJlIHRoZSBjb21taXRzIHByaW9yIHRvIHRoZSBhbWVuZAorb3IgcmViYXNlIG9jY3VycmluZy4gIFNpbmNlIHRoZXNlIGNoYW5nZXMgYXJlIG5vdCBwYXJ0IG9mIHRoZSBjdXJyZW50Citwcm9qZWN0IG1vc3QgdXNlcnMgd2lsbCB3YW50IHRvIGV4cGlyZSB0aGVtIHNvb25lciwgd2hpY2ggaXMgd2h5IHRoZQorZGVmYXVsdCBpcyBtb3JlIGFnZ3Jlc3NpdmUgdGhhbiBgZ2MucmVmbG9nRXhwaXJlYC4KIAogZ2MucmVyZXJlUmVzb2x2ZWQ6OgogCVJlY29yZHMgb2YgY29uZmxpY3RlZCBtZXJnZSB5b3UgcmVzb2x2ZWQgZWFybGllciBhcmUKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL2dwZy50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9ncGcudHh0CmluZGV4IDU5MGZlMGQuLmQ5NDAyNWMgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL2dwZy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9jb25maWcvZ3BnLnR4dApAQCAtMiw3ICsyLDcgQEAKIAlVc2UgdGhpcyBjdXN0b20gcHJvZ3JhbSBpbnN0ZWFkIG9mICJgZ3BnYCIgZm91bmQgb24gYCRQQVRIYCB3aGVuCiAJbWFraW5nIG9yIHZlcmlmeWluZyBhIFBHUCBzaWduYXR1cmUuIFRoZSBwcm9ncmFtIG11c3Qgc3VwcG9ydCB0aGUKIAlzYW1lIGNvbW1hbmQtbGluZSBpbnRlcmZhY2UgYXMgR1BHLCBuYW1lbHksIHRvIHZlcmlmeSBhIGRldGFjaGVkCi0Jc2lnbmF0dXJlLCAiYGdwZyAtLXZlcmlmeSAkZmlsZSAtIDwkc2lnbmF0dXJlYCIgaXMgcnVuLCBhbmQgdGhlCisJc2lnbmF0dXJlLCAiYGdwZyAtLXZlcmlmeSAkc2lnbmF0dXJlIC0gPCRmaWxlYCIgaXMgcnVuLCBhbmQgdGhlCiAJcHJvZ3JhbSBpcyBleHBlY3RlZCB0byBzaWduYWwgYSBnb29kIHNpZ25hdHVyZSBieSBleGl0aW5nIHdpdGgKIAljb2RlIDAsIGFuZCB0byBnZW5lcmF0ZSBhbiBBU0NJSS1hcm1vcmVkIGRldGFjaGVkIHNpZ25hdHVyZSwgdGhlCiAJc3RhbmRhcmQgaW5wdXQgb2YgImBncGcgLWJzYXUgJGtleWAiIGlzIGZlZCB3aXRoIHRoZSBjb250ZW50cyB0byBiZQpAQCAtMTYsNSArMTYsMjAgQEAKIGdwZy48Zm9ybWF0Pi5wcm9ncmFtOjoKIAlVc2UgdGhpcyB0byBjdXN0b21pemUgdGhlIHByb2dyYW0gdXNlZCBmb3IgdGhlIHNpZ25pbmcgZm9ybWF0IHlvdQogCWNob3NlLiAoc2VlIGBncGcucHJvZ3JhbWAgYW5kIGBncGcuZm9ybWF0YCkgYGdwZy5wcm9ncmFtYCBjYW4gc3RpbGwKLQliZSB1c2VkIGFzIGEgbGVnYWN5IHN5bm9ueW0gZm9yCWBncGcub3BlbnBncC5wcm9ncmFtYC4gVGhlIGRlZmF1bHQKKwliZSB1c2VkIGFzIGEgbGVnYWN5IHN5bm9ueW0gZm9yIGBncGcub3BlbnBncC5wcm9ncmFtYC4gVGhlIGRlZmF1bHQKIAl2YWx1ZSBmb3IgYGdwZy54NTA5LnByb2dyYW1gIGlzICJncGdzbSIuCisKK2dwZy5taW5UcnVzdExldmVsOjoKKwlTcGVjaWZpZXMgYSBtaW5pbXVtIHRydXN0IGxldmVsIGZvciBzaWduYXR1cmUgdmVyaWZpY2F0aW9uLiAgSWYKKwl0aGlzIG9wdGlvbiBpcyB1bnNldCwgdGhlbiBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIGZvciBtZXJnZQorCW9wZXJhdGlvbnMgcmVxdWlyZSBhIGtleSB3aXRoIGF0IGxlYXN0IGBtYXJnaW5hbGAgdHJ1c3QuICBPdGhlcgorCW9wZXJhdGlvbnMgdGhhdCBwZXJmb3JtIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24gcmVxdWlyZSBhIGtleQorCXdpdGggYXQgbGVhc3QgYHVuZGVmaW5lZGAgdHJ1c3QuICBTZXR0aW5nIHRoaXMgb3B0aW9uIG92ZXJyaWRlcworCXRoZSByZXF1aXJlZCB0cnVzdC1sZXZlbCBmb3IgYWxsIG9wZXJhdGlvbnMuICBTdXBwb3J0ZWQgdmFsdWVzLAorCWluIGluY3JlYXNpbmcgb3JkZXIgb2Ygc2lnbmlmaWNhbmNlOgorKworKiBgdW5kZWZpbmVkYAorKiBgbmV2ZXJgCisqIGBtYXJnaW5hbGAKKyogYGZ1bGx5YAorKiBgdWx0aW1hdGVgCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9odHRwLnR4dCBiL0RvY3VtZW50YXRpb24vY29uZmlnL2h0dHAudHh0CmluZGV4IGE1NmQ4NDguLjM5NjhmYmIgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL2h0dHAudHh0CisrKyBiL0RvY3VtZW50YXRpb24vY29uZmlnL2h0dHAudHh0CkBAIC0yOSw2ICsyOSwyNyBAQAogKiBgbnRsbWAgLSBOVExNIGF1dGhlbnRpY2F0aW9uIChjb21wYXJlIHRoZSAtLW50bG0gb3B0aW9uIG9mIGBjdXJsKDEpYCkKIC0tCiAKK2h0dHAucHJveHlTU0xDZXJ0OjoKKwlUaGUgcGF0aG5hbWUgb2YgYSBmaWxlIHRoYXQgc3RvcmVzIGEgY2xpZW50IGNlcnRpZmljYXRlIHRvIHVzZSB0byBhdXRoZW50aWNhdGUKKwl3aXRoIGFuIEhUVFBTIHByb3h5LiBDYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgYEdJVF9QUk9YWV9TU0xfQ0VSVGAgZW52aXJvbm1lbnQKKwl2YXJpYWJsZS4KKworaHR0cC5wcm94eVNTTEtleTo6CisJVGhlIHBhdGhuYW1lIG9mIGEgZmlsZSB0aGF0IHN0b3JlcyBhIHByaXZhdGUga2V5IHRvIHVzZSB0byBhdXRoZW50aWNhdGUgd2l0aAorCWFuIEhUVFBTIHByb3h5LiBDYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgYEdJVF9QUk9YWV9TU0xfS0VZYCBlbnZpcm9ubWVudAorCXZhcmlhYmxlLgorCitodHRwLnByb3h5U1NMQ2VydFBhc3N3b3JkUHJvdGVjdGVkOjoKKwlFbmFibGUgR2l0J3MgcGFzc3dvcmQgcHJvbXB0IGZvciB0aGUgcHJveHkgU1NMIGNlcnRpZmljYXRlLiAgT3RoZXJ3aXNlIE9wZW5TU0wKKwl3aWxsIHByb21wdCB0aGUgdXNlciwgcG9zc2libHkgbWFueSB0aW1lcywgaWYgdGhlIGNlcnRpZmljYXRlIG9yIHByaXZhdGUga2V5CisJaXMgZW5jcnlwdGVkLiBDYW4gYmUgb3ZlcnJpZGVuIGJ5IHRoZSBgR0lUX1BST1hZX1NTTF9DRVJUX1BBU1NXT1JEX1BST1RFQ1RFRGAKKwllbnZpcm9ubWVudCB2YXJpYWJsZS4KKworaHR0cC5wcm94eVNTTENBSW5mbzo6CisJUGF0aG5hbWUgdG8gdGhlIGZpbGUgY29udGFpbmluZyB0aGUgY2VydGlmaWNhdGUgYnVuZGxlIHRoYXQgc2hvdWxkIGJlIHVzZWQgdG8KKwl2ZXJpZnkgdGhlIHByb3h5IHdpdGggd2hlbiB1c2luZyBhbiBIVFRQUyBwcm94eS4gQ2FuIGJlIG92ZXJyaWRlbiBieSB0aGUKKwlgR0lUX1BST1hZX1NTTF9DQUlORk9gIGVudmlyb25tZW50IHZhcmlhYmxlLgorCiBodHRwLmVtcHR5QXV0aDo6CiAJQXR0ZW1wdCBhdXRoZW50aWNhdGlvbiB3aXRob3V0IHNlZWtpbmcgYSB1c2VybmFtZSBvciBwYXNzd29yZC4gIFRoaXMKIAljYW4gYmUgdXNlZCB0byBhdHRlbXB0IEdTUy1OZWdvdGlhdGUgYXV0aGVudGljYXRpb24gd2l0aG91dCBzcGVjaWZ5aW5nCkBAIC02OCw2ICs4OSwxNSBAQAogCUlmIHNldCwgc3RvcmUgY29va2llcyByZWNlaXZlZCBkdXJpbmcgcmVxdWVzdHMgdG8gdGhlIGZpbGUgc3BlY2lmaWVkIGJ5CiAJaHR0cC5jb29raWVGaWxlLiBIYXMgbm8gZWZmZWN0IGlmIGh0dHAuY29va2llRmlsZSBpcyB1bnNldC4KIAoraHR0cC52ZXJzaW9uOjoKKwlVc2UgdGhlIHNwZWNpZmllZCBIVFRQIHByb3RvY29sIHZlcnNpb24gd2hlbiBjb21tdW5pY2F0aW5nIHdpdGggYSBzZXJ2ZXIuCisJSWYgeW91IHdhbnQgdG8gZm9yY2UgdGhlIGRlZmF1bHQuIFRoZSBhdmFpbGFibGUgYW5kIGRlZmF1bHQgdmVyc2lvbiBkZXBlbmQKKwlvbiBsaWJjdXJsLiBDdXJyZW50bHkgdGhlIHBvc3NpYmxlIHZhbHVlcyBvZgorCXRoaXMgb3B0aW9uIGFyZToKKworCS0gSFRUUC8yCisJLSBIVFRQLzEuMQorCiBodHRwLnNzbFZlcnNpb246OgogCVRoZSBTU0wgdmVyc2lvbiB0byB1c2Ugd2hlbiBuZWdvdGlhdGluZyBhbiBTU0wgY29ubmVjdGlvbiwgaWYgeW91CiAJd2FudCB0byBmb3JjZSB0aGUgZGVmYXVsdC4gIFRoZSBhdmFpbGFibGUgYW5kIGRlZmF1bHQgdmVyc2lvbgpAQCAtNzUsNyArMTA1LDcgQEAKIAlwYXJ0aWN1bGFyIGNvbmZpZ3VyYXRpb24gb2YgdGhlIGNyeXB0byBsaWJyYXJ5IGluIHVzZS4gSW50ZXJuYWxseQogCXRoaXMgc2V0cyB0aGUgJ0NVUkxPUFRfU1NMX1ZFUlNJT04nIG9wdGlvbjsgc2VlIHRoZSBsaWJjdXJsCiAJZG9jdW1lbnRhdGlvbiBmb3IgbW9yZSBkZXRhaWxzIG9uIHRoZSBmb3JtYXQgb2YgdGhpcyBvcHRpb24gYW5kCi0JZm9yIHRoZSBzc2wgdmVyc2lvbiBzdXBwb3J0ZWQuIEFjdHVhbGx5IHRoZSBwb3NzaWJsZSB2YWx1ZXMgb2YKKwlmb3IgdGhlIHNzbCB2ZXJzaW9uIHN1cHBvcnRlZC4gQ3VycmVudGx5IHRoZSBwb3NzaWJsZSB2YWx1ZXMgb2YKIAl0aGlzIG9wdGlvbiBhcmU6CiAKIAktIHNzbHYyCkBAIC0xOTAsNiArMjIwLDE0IEBACiAJVHJhbnNmZXItRW5jb2Rpbmc6IGNodW5rZWQgaXMgdXNlZCB0byBhdm9pZCBjcmVhdGluZyBhCiAJbWFzc2l2ZSBwYWNrIGZpbGUgbG9jYWxseS4gIERlZmF1bHQgaXMgMSBNaUIsIHdoaWNoIGlzCiAJc3VmZmljaWVudCBmb3IgbW9zdCByZXF1ZXN0cy4KKysKK05vdGUgdGhhdCByYWlzaW5nIHRoaXMgbGltaXQgaXMgb25seSBlZmZlY3RpdmUgZm9yIGRpc2FibGluZyBjaHVua2VkCit0cmFuc2ZlciBlbmNvZGluZyBhbmQgdGhlcmVmb3JlIHNob3VsZCBiZSB1c2VkIG9ubHkgd2hlcmUgdGhlIHJlbW90ZQorc2VydmVyIG9yIGEgcHJveHkgb25seSBzdXBwb3J0cyBIVFRQLzEuMCBvciBpcyBub25jb21wbGlhbnQgd2l0aCB0aGUKK0hUVFAgc3RhbmRhcmQuICBSYWlzaW5nIHRoaXMgaXMgbm90LCBpbiBnZW5lcmFsLCBhbiBlZmZlY3RpdmUgc29sdXRpb24KK2ZvciBtb3N0IHB1c2ggcHJvYmxlbXMsIGJ1dCBjYW4gaW5jcmVhc2UgbWVtb3J5IGNvbnN1bXB0aW9uCitzaWduaWZpY2FudGx5IHNpbmNlIHRoZSBlbnRpcmUgYnVmZmVyIGlzIGFsbG9jYXRlZCBldmVuIGZvciBzbWFsbAorcHVzaGVzLgogCiBodHRwLmxvd1NwZWVkTGltaXQsIGh0dHAubG93U3BlZWRUaW1lOjoKIAlJZiB0aGUgSFRUUCB0cmFuc2ZlciBzcGVlZCBpcyBsZXNzIHRoYW4gJ2h0dHAubG93U3BlZWRMaW1pdCcKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL2luZGV4LnR4dCBiL0RvY3VtZW50YXRpb24vY29uZmlnL2luZGV4LnR4dAppbmRleCBmMTgxNTAzLi43Y2I1MGIzIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9pbmRleC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9jb25maWcvaW5kZXgudHh0CkBAIC0yNCwzICsyNCw0IEBACiBpbmRleC52ZXJzaW9uOjoKIAlTcGVjaWZ5IHRoZSB2ZXJzaW9uIHdpdGggd2hpY2ggbmV3IGluZGV4IGZpbGVzIHNob3VsZCBiZQogCWluaXRpYWxpemVkLiAgVGhpcyBkb2VzIG5vdCBhZmZlY3QgZXhpc3RpbmcgcmVwb3NpdG9yaWVzLgorCUlmIGBmZWF0dXJlLm1hbnlGaWxlc2AgaXMgZW5hYmxlZCwgdGhlbiB0aGUgZGVmYXVsdCBpcyA0LgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvaW50ZXJhY3RpdmUudHh0IGIvRG9jdW1lbnRhdGlvbi9jb25maWcvaW50ZXJhY3RpdmUudHh0CmluZGV4IGFkODQ2ZGQuLmEyZDNjN2UgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL2ludGVyYWN0aXZlLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9pbnRlcmFjdGl2ZS50eHQKQEAgLTIsNyArMiw4IEBACiAJSW4gaW50ZXJhY3RpdmUgY29tbWFuZHMsIGFsbG93IHRoZSB1c2VyIHRvIHByb3ZpZGUgb25lLWxldHRlcgogCWlucHV0IHdpdGggYSBzaW5nbGUga2V5IChpLmUuLCB3aXRob3V0IGhpdHRpbmcgZW50ZXIpLgogCUN1cnJlbnRseSB0aGlzIGlzIHVzZWQgYnkgdGhlIGAtLXBhdGNoYCBtb2RlIG9mCi0JbGlua2dpdDpnaXQtYWRkWzFdLCBsaW5rZ2l0OmdpdC1jaGVja291dFsxXSwgbGlua2dpdDpnaXQtY29tbWl0WzFdLAorCWxpbmtnaXQ6Z2l0LWFkZFsxXSwgbGlua2dpdDpnaXQtY2hlY2tvdXRbMV0sCisJbGlua2dpdDpnaXQtcmVzdG9yZVsxXSwgbGlua2dpdDpnaXQtY29tbWl0WzFdLAogCWxpbmtnaXQ6Z2l0LXJlc2V0WzFdLCBhbmQgbGlua2dpdDpnaXQtc3Rhc2hbMV0uIE5vdGUgdGhhdCB0aGlzCiAJc2V0dGluZyBpcyBzaWxlbnRseSBpZ25vcmVkIGlmIHBvcnRhYmxlIGtleXN0cm9rZSBpbnB1dAogCWlzIG5vdCBhdmFpbGFibGU7IHJlcXVpcmVzIHRoZSBQZXJsIG1vZHVsZSBUZXJtOjpSZWFkS2V5LgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvbG9nLnR4dCBiL0RvY3VtZW50YXRpb24vY29uZmlnL2xvZy50eHQKaW5kZXggNzhkOWU0NC4uZTllMWUzOSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9jb25maWcvbG9nLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9sb2cudHh0CkBAIC00MCw0ICs0MCw1IEBACiAKIGxvZy5tYWlsbWFwOjoKIAlJZiB0cnVlLCBtYWtlcyBsaW5rZ2l0OmdpdC1sb2dbMV0sIGxpbmtnaXQ6Z2l0LXNob3dbMV0sIGFuZAotCWxpbmtnaXQ6Z2l0LXdoYXRjaGFuZ2VkWzFdIGFzc3VtZSBgLS11c2UtbWFpbG1hcGAuCisJbGlua2dpdDpnaXQtd2hhdGNoYW5nZWRbMV0gYXNzdW1lIGAtLXVzZS1tYWlsbWFwYCwgb3RoZXJ3aXNlCisJYXNzdW1lIGAtLW5vLXVzZS1tYWlsbWFwYC4gVHJ1ZSBieSBkZWZhdWx0LgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvbWVyZ2UudHh0IGIvRG9jdW1lbnRhdGlvbi9jb25maWcvbWVyZ2UudHh0CmluZGV4IGQzODljNzMuLjZhMzEzOTMgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL21lcmdlLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9tZXJnZS50eHQKQEAgLTM5LDkgKzM5LDIyIEBACiAJaXMgdHVybmVkIG9mZi4KIAogbWVyZ2UucmVuYW1lczo6Ci0JV2hldGhlciBhbmQgaG93IEdpdCBkZXRlY3RzIHJlbmFtZXMuICBJZiBzZXQgdG8gImZhbHNlIiwKLQlyZW5hbWUgZGV0ZWN0aW9uIGlzIGRpc2FibGVkLiBJZiBzZXQgdG8gInRydWUiLCBiYXNpYyByZW5hbWUKLQlkZXRlY3Rpb24gaXMgZW5hYmxlZC4gIERlZmF1bHRzIHRvIHRoZSB2YWx1ZSBvZiBkaWZmLnJlbmFtZXMuCisJV2hldGhlciBHaXQgZGV0ZWN0cyByZW5hbWVzLiAgSWYgc2V0IHRvICJmYWxzZSIsIHJlbmFtZSBkZXRlY3Rpb24KKwlpcyBkaXNhYmxlZC4gSWYgc2V0IHRvICJ0cnVlIiwgYmFzaWMgcmVuYW1lIGRldGVjdGlvbiBpcyBlbmFibGVkLgorCURlZmF1bHRzIHRvIHRoZSB2YWx1ZSBvZiBkaWZmLnJlbmFtZXMuCisKK21lcmdlLmRpcmVjdG9yeVJlbmFtZXM6OgorCVdoZXRoZXIgR2l0IGRldGVjdHMgZGlyZWN0b3J5IHJlbmFtZXMsIGFmZmVjdGluZyB3aGF0IGhhcHBlbnMgYXQKKwltZXJnZSB0aW1lIHRvIG5ldyBmaWxlcyBhZGRlZCB0byBhIGRpcmVjdG9yeSBvbiBvbmUgc2lkZSBvZgorCWhpc3Rvcnkgd2hlbiB0aGF0IGRpcmVjdG9yeSB3YXMgcmVuYW1lZCBvbiB0aGUgb3RoZXIgc2lkZSBvZgorCWhpc3RvcnkuICBJZiBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzIGlzIHNldCB0byAiZmFsc2UiLCBkaXJlY3RvcnkKKwlyZW5hbWUgZGV0ZWN0aW9uIGlzIGRpc2FibGVkLCBtZWFuaW5nIHRoYXQgc3VjaCBuZXcgZmlsZXMgd2lsbCBiZQorCWxlZnQgYmVoaW5kIGluIHRoZSBvbGQgZGlyZWN0b3J5LiAgSWYgc2V0IHRvICJ0cnVlIiwgZGlyZWN0b3J5CisJcmVuYW1lIGRldGVjdGlvbiBpcyBlbmFibGVkLCBtZWFuaW5nIHRoYXQgc3VjaCBuZXcgZmlsZXMgd2lsbCBiZQorCW1vdmVkIGludG8gdGhlIG5ldyBkaXJlY3RvcnkuICBJZiBzZXQgdG8gImNvbmZsaWN0IiwgYSBjb25mbGljdAorCXdpbGwgYmUgcmVwb3J0ZWQgZm9yIHN1Y2ggcGF0aHMuICBJZiBtZXJnZS5yZW5hbWVzIGlzIGZhbHNlLAorCW1lcmdlLmRpcmVjdG9yeVJlbmFtZXMgaXMgaWdub3JlZCBhbmQgdHJlYXRlZCBhcyBmYWxzZS4gIERlZmF1bHRzCisJdG8gImNvbmZsaWN0Ii4KIAogbWVyZ2UucmVub3JtYWxpemU6OgogCVRlbGwgR2l0IHRoYXQgY2Fub25pY2FsIHJlcHJlc2VudGF0aW9uIG9mIGZpbGVzIGluIHRoZQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvcGFjay50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9wYWNrLnR4dAppbmRleCBlZGFjNzVjLi4wZGFjNTgwIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9wYWNrLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9wYWNrLnR4dApAQCAtMjcsNiArMjcsMTMgQEAKIGFsbCBleGlzdGluZyBvYmplY3RzLiBZb3UgY2FuIGZvcmNlIHJlY29tcHJlc3Npb24gYnkgcGFzc2luZyB0aGUgLUYgb3B0aW9uCiB0byBsaW5rZ2l0OmdpdC1yZXBhY2tbMV0uCiAKK3BhY2suYWxsb3dQYWNrUmV1c2U6OgorCVdoZW4gdHJ1ZSwgYW5kIHdoZW4gcmVhY2hhYmlsaXR5IGJpdG1hcHMgYXJlIGVuYWJsZWQsCisJcGFjay1vYmplY3RzIHdpbGwgdHJ5IHRvIHNlbmQgcGFydHMgb2YgdGhlIGJpdG1hcHBlZCBwYWNrZmlsZQorCXZlcmJhdGltLiBUaGlzIGNhbiByZWR1Y2UgbWVtb3J5IGFuZCBDUFUgdXNhZ2UgdG8gc2VydmUgZmV0Y2hlcywKKwlidXQgbWlnaHQgcmVzdWx0IGluIHNlbmRpbmcgYSBzbGlnaHRseSBsYXJnZXIgcGFjay4gRGVmYXVsdHMgdG8KKwl0cnVlLgorCiBwYWNrLmlzbGFuZDo6CiAJQW4gZXh0ZW5kZWQgcmVndWxhciBleHByZXNzaW9uIGNvbmZpZ3VyaW5nIGEgc2V0IG9mIGRlbHRhCiAJaXNsYW5kcy4gU2VlICJERUxUQSBJU0xBTkRTIiBpbiBsaW5rZ2l0OmdpdC1wYWNrLW9iamVjdHNbMV0KQEAgLTEwNSw2ICsxMTIsMTYgQEAKIAl0cnVlLiBZb3Ugc2hvdWxkIG5vdCBnZW5lcmFsbHkgbmVlZCB0byB0dXJuIHRoaXMgb2ZmIHVubGVzcwogCXlvdSBhcmUgZGVidWdnaW5nIHBhY2sgYml0bWFwcy4KIAorcGFjay51c2VTcGFyc2U6OgorCVdoZW4gdHJ1ZSwgZ2l0IHdpbGwgZGVmYXVsdCB0byB1c2luZyB0aGUgJy0tc3BhcnNlJyBvcHRpb24gaW4KKwknZ2l0IHBhY2stb2JqZWN0cycgd2hlbiB0aGUgJy0tcmV2cycgb3B0aW9uIGlzIHByZXNlbnQuIFRoaXMKKwlhbGdvcml0aG0gb25seSB3YWxrcyB0cmVlcyB0aGF0IGFwcGVhciBpbiBwYXRocyB0aGF0IGludHJvZHVjZSBuZXcKKwlvYmplY3RzLiBUaGlzIGNhbiBoYXZlIHNpZ25pZmljYW50IHBlcmZvcm1hbmNlIGJlbmVmaXRzIHdoZW4KKwljb21wdXRpbmcgYSBwYWNrIHRvIHNlbmQgYSBzbWFsbCBjaGFuZ2UuIEhvd2V2ZXIsIGl0IGlzIHBvc3NpYmxlCisJdGhhdCBleHRyYSBvYmplY3RzIGFyZSBhZGRlZCB0byB0aGUgcGFjay1maWxlIGlmIHRoZSBpbmNsdWRlZAorCWNvbW1pdHMgY29udGFpbiBjZXJ0YWluIHR5cGVzIG9mIGRpcmVjdCByZW5hbWVzLiBEZWZhdWx0IGlzIGBmYWxzZWAKKwl1bmxlc3MgYGZlYXR1cmUuZXhwZXJpbWVudGFsYCBpcyBlbmFibGVkLgorCiBwYWNrLndyaXRlQml0bWFwcyAoZGVwcmVjYXRlZCk6OgogCVRoaXMgaXMgYSBkZXByZWNhdGVkIHN5bm9ueW0gZm9yIGByZXBhY2sud3JpdGVCaXRtYXBzYC4KIApAQCAtMTE1LDYgKzEzMiw0IEBACiAJYml0bWFwcGVkIGFuZCBub24tYml0bWFwcGVkIG9iamVjdHMgKGUuZy4sIHdoZW4gc2VydmluZyBhIGZldGNoCiAJYmV0d2VlbiBhbiBvbGRlciwgYml0bWFwcGVkIHBhY2sgYW5kIG9iamVjdHMgdGhhdCBoYXZlIGJlZW4KIAlwdXNoZWQgc2luY2UgdGhlIGxhc3QgZ2MpLiBUaGUgZG93bnNpZGUgaXMgdGhhdCBpdCBjb25zdW1lcyA0Ci0JYnl0ZXMgcGVyIG9iamVjdCBvZiBkaXNrIHNwYWNlLCBhbmQgdGhhdCBKR2l0J3MgYml0bWFwCi0JaW1wbGVtZW50YXRpb24gZG9lcyBub3QgdW5kZXJzdGFuZCBpdCwgY2F1c2luZyBpdCB0byBjb21wbGFpbiBpZgotCUdpdCBhbmQgSkdpdCBhcmUgdXNlZCBvbiB0aGUgc2FtZSByZXBvc2l0b3J5LiBEZWZhdWx0cyB0byBmYWxzZS4KKwlieXRlcyBwZXIgb2JqZWN0IG9mIGRpc2sgc3BhY2UuIERlZmF1bHRzIHRvIHRydWUuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9wcm90b2NvbC50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9wcm90b2NvbC50eHQKaW5kZXggYmZjY2MwNy4uNzU2NTkxZCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9jb25maWcvcHJvdG9jb2wudHh0CisrKyBiL0RvY3VtZW50YXRpb24vY29uZmlnL3Byb3RvY29sLnR4dApAQCAtNDUsMTEgKzQ1LDEwIEBACiAtLQogCiBwcm90b2NvbC52ZXJzaW9uOjoKLQlFeHBlcmltZW50YWwuIElmIHNldCwgY2xpZW50cyB3aWxsIGF0dGVtcHQgdG8gY29tbXVuaWNhdGUgd2l0aCBhCi0Jc2VydmVyIHVzaW5nIHRoZSBzcGVjaWZpZWQgcHJvdG9jb2wgdmVyc2lvbi4gIElmIHVuc2V0LCBubwotCWF0dGVtcHQgd2lsbCBiZSBtYWRlIGJ5IHRoZSBjbGllbnQgdG8gY29tbXVuaWNhdGUgdXNpbmcgYQotCXBhcnRpY3VsYXIgcHJvdG9jb2wgdmVyc2lvbiwgdGhpcyByZXN1bHRzIGluIHByb3RvY29sIHZlcnNpb24gMAotCWJlaW5nIHVzZWQuCisJSWYgc2V0LCBjbGllbnRzIHdpbGwgYXR0ZW1wdCB0byBjb21tdW5pY2F0ZSB3aXRoIGEgc2VydmVyCisJdXNpbmcgdGhlIHNwZWNpZmllZCBwcm90b2NvbCB2ZXJzaW9uLiAgSWYgdGhlIHNlcnZlciBkb2VzCisJbm90IHN1cHBvcnQgaXQsIGNvbW11bmljYXRpb24gZmFsbHMgYmFjayB0byB2ZXJzaW9uIDAuCisJSWYgdW5zZXQsIHRoZSBkZWZhdWx0IGlzIGAyYC4KIAlTdXBwb3J0ZWQgdmVyc2lvbnM6CiArCiAtLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvcHVsbC50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9wdWxsLnR4dAppbmRleCBiYjIzYTk5Li41NDA0ODMwIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9wdWxsLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9wdWxsLnR4dApAQCAtMTQsMTUgKzE0LDE2IEBACiAJcHVsbCIgaXMgcnVuLiBTZWUgImJyYW5jaC48bmFtZT4ucmViYXNlIiBmb3Igc2V0dGluZyB0aGlzIG9uIGEKIAlwZXItYnJhbmNoIGJhc2lzLgogKwotV2hlbiBgbWVyZ2VzYCwgcGFzcyB0aGUgYC0tcmViYXNlLW1lcmdlc2Agb3B0aW9uIHRvICdnaXQgcmViYXNlJworV2hlbiBgbWVyZ2VzYCAob3IganVzdCAnbScpLCBwYXNzIHRoZSBgLS1yZWJhc2UtbWVyZ2VzYCBvcHRpb24gdG8gJ2dpdCByZWJhc2UnCiBzbyB0aGF0IHRoZSBsb2NhbCBtZXJnZSBjb21taXRzIGFyZSBpbmNsdWRlZCBpbiB0aGUgcmViYXNlIChzZWUKIGxpbmtnaXQ6Z2l0LXJlYmFzZVsxXSBmb3IgZGV0YWlscykuCiArCi1XaGVuIHByZXNlcnZlLCBhbHNvIHBhc3MgYC0tcHJlc2VydmUtbWVyZ2VzYCBhbG9uZyB0byAnZ2l0IHJlYmFzZScKLXNvIHRoYXQgbG9jYWxseSBjb21taXR0ZWQgbWVyZ2UgY29tbWl0cyB3aWxsIG5vdCBiZSBmbGF0dGVuZWQKLWJ5IHJ1bm5pbmcgJ2dpdCBwdWxsJy4KK1doZW4gYHByZXNlcnZlYCAob3IganVzdCAncCcsIGRlcHJlY2F0ZWQgaW4gZmF2b3Igb2YgYG1lcmdlc2ApLCBhbHNvIHBhc3MKK2AtLXByZXNlcnZlLW1lcmdlc2AgYWxvbmcgdG8gJ2dpdCByZWJhc2UnIHNvIHRoYXQgbG9jYWxseSBjb21taXR0ZWQgbWVyZ2UKK2NvbW1pdHMgd2lsbCBub3QgYmUgZmxhdHRlbmVkIGJ5IHJ1bm5pbmcgJ2dpdCBwdWxsJy4KICsKLVdoZW4gdGhlIHZhbHVlIGlzIGBpbnRlcmFjdGl2ZWAsIHRoZSByZWJhc2UgaXMgcnVuIGluIGludGVyYWN0aXZlIG1vZGUuCitXaGVuIHRoZSB2YWx1ZSBpcyBgaW50ZXJhY3RpdmVgIChvciBqdXN0ICdpJyksIHRoZSByZWJhc2UgaXMgcnVuIGluIGludGVyYWN0aXZlCittb2RlLgogKwogKk5PVEUqOiB0aGlzIGlzIGEgcG9zc2libHkgZGFuZ2Vyb3VzIG9wZXJhdGlvbjsgZG8gKm5vdCogdXNlCiBpdCB1bmxlc3MgeW91IHVuZGVyc3RhbmQgdGhlIGltcGxpY2F0aW9ucyAoc2VlIGxpbmtnaXQ6Z2l0LXJlYmFzZVsxXQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvcHVzaC50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9wdXNoLnR4dAppbmRleCAwYTBlMDAwLi4wYTdhYTMyIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9wdXNoLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9wdXNoLnR4dApAQCAtMSw2ICsxLDcgQEAKIHB1c2guZGVmYXVsdDo6CiAJRGVmaW5lcyB0aGUgYWN0aW9uIGBnaXQgcHVzaGAgc2hvdWxkIHRha2UgaWYgbm8gcmVmc3BlYyBpcwotCWV4cGxpY2l0bHkgZ2l2ZW4uICBEaWZmZXJlbnQgdmFsdWVzIGFyZSB3ZWxsLXN1aXRlZCBmb3IKKwlnaXZlbiAod2hldGhlciBmcm9tIHRoZSBjb21tYW5kLWxpbmUsIGNvbmZpZywgb3IgZWxzZXdoZXJlKS4KKwlEaWZmZXJlbnQgdmFsdWVzIGFyZSB3ZWxsLXN1aXRlZCBmb3IKIAlzcGVjaWZpYyB3b3JrZmxvd3M7IGZvciBpbnN0YW5jZSwgaW4gYSBwdXJlbHkgY2VudHJhbCB3b3JrZmxvdwogCShpLmUuIHRoZSBmZXRjaCBzb3VyY2UgaXMgZXF1YWwgdG8gdGhlIHB1c2ggZGVzdGluYXRpb24pLAogCWB1cHN0cmVhbWAgaXMgcHJvYmFibHkgd2hhdCB5b3Ugd2FudC4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6CkBAIC04LDcgKzksNyBAQAogLS0KIAogKiBgbm90aGluZ2AgLSBkbyBub3QgcHVzaCBhbnl0aGluZyAoZXJyb3Igb3V0KSB1bmxlc3MgYSByZWZzcGVjIGlzCi0gIGV4cGxpY2l0bHkgZ2l2ZW4uIFRoaXMgaXMgcHJpbWFyaWx5IG1lYW50IGZvciBwZW9wbGUgd2hvIHdhbnQgdG8KKyAgZ2l2ZW4uIFRoaXMgaXMgcHJpbWFyaWx5IG1lYW50IGZvciBwZW9wbGUgd2hvIHdhbnQgdG8KICAgYXZvaWQgbWlzdGFrZXMgYnkgYWx3YXlzIGJlaW5nIGV4cGxpY2l0LgogCiAqIGBjdXJyZW50YCAtIHB1c2ggdGhlIGN1cnJlbnQgYnJhbmNoIHRvIHVwZGF0ZSBhIGJyYW5jaCB3aXRoIHRoZSBzYW1lCkBAIC03OSw3ICs4MCw3IEBACiByZXBvc2l0b3J5KSB0byBjbGVhciB0aGUgdmFsdWVzIGluaGVyaXRlZCBmcm9tIGEgbG93ZXIgcHJpb3JpdHkKIGNvbmZpZ3VyYXRpb24gZmlsZXMgKGUuZy4gYCRIT01FLy5naXRjb25maWdgKS4KICsKLS0tCistLS0tCiAKIEV4YW1wbGU6CiAKQEAgLTk2LDcgKzk3LDcgQEAKIAogVGhpcyB3aWxsIHJlc3VsdCBpbiBvbmx5IGIgKGEgYW5kIGMgYXJlIGNsZWFyZWQpLgogCi0tLQorLS0tLQogCiBwdXNoLnJlY3Vyc2VTdWJtb2R1bGVzOjoKIAlNYWtlIHN1cmUgYWxsIHN1Ym1vZHVsZSBjb21taXRzIHVzZWQgYnkgdGhlIHJldmlzaW9ucyB0byBiZSBwdXNoZWQKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL3JlYmFzZS50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9yZWJhc2UudHh0CmluZGV4IGYwNzliZjYuLjdmN2EwN2QgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL3JlYmFzZS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9jb25maWcvcmViYXNlLnR4dApAQCAtMSwxNiArMSwxNSBAQAogcmViYXNlLnVzZUJ1aWx0aW46OgotCVNldCB0byBgZmFsc2VgIHRvIHVzZSB0aGUgbGVnYWN5IHNoZWxsc2NyaXB0IGltcGxlbWVudGF0aW9uIG9mCi0JbGlua2dpdDpnaXQtcmViYXNlWzFdLiBJcyBgdHJ1ZWAgYnkgZGVmYXVsdCwgd2hpY2ggbWVhbnMgdXNlCi0JdGhlIGJ1aWx0LWluIHJld3JpdGUgb2YgaXQgaW4gQy4KLSsKLVRoZSBDIHJld3JpdGUgaXMgZmlyc3QgaW5jbHVkZWQgd2l0aCBHaXQgdmVyc2lvbiAyLjIwLiBUaGlzIG9wdGlvbgotc2VydmVzIGFuIGFuIGVzY2FwZSBoYXRjaCB0byByZS1lbmFibGUgdGhlIGxlZ2FjeSB2ZXJzaW9uIGluIGNhc2UgYW55Ci1idWdzIGFyZSBmb3VuZCBpbiB0aGUgcmV3cml0ZS4gVGhpcyBvcHRpb24gYW5kIHRoZSBzaGVsbHNjcmlwdCB2ZXJzaW9uCi1vZiBsaW5rZ2l0OmdpdC1yZWJhc2VbMV0gd2lsbCBiZSByZW1vdmVkIGluIHNvbWUgZnV0dXJlIHJlbGVhc2UuCi0rCi1JZiB5b3UgZmluZCBzb21lIHJlYXNvbiB0byBzZXQgdGhpcyBvcHRpb24gdG8gYGZhbHNlYCBvdGhlciB0aGFuCi1vbmUtb2ZmIHRlc3RpbmcgeW91IHNob3VsZCByZXBvcnQgdGhlIGJlaGF2aW9yIGRpZmZlcmVuY2UgYXMgYSBidWcgaW4KLWdpdC4KKwlVbnVzZWQgY29uZmlndXJhdGlvbiB2YXJpYWJsZS4gVXNlZCBpbiBHaXQgdmVyc2lvbnMgMi4yMCBhbmQKKwkyLjIxIGFzIGFuIGVzY2FwZSBoYXRjaCB0byBlbmFibGUgdGhlIGxlZ2FjeSBzaGVsbHNjcmlwdAorCWltcGxlbWVudGF0aW9uIG9mIHJlYmFzZS4gTm93IHRoZSBidWlsdC1pbiByZXdyaXRlIG9mIGl0IGluIEMKKwlpcyBhbHdheXMgdXNlZC4gU2V0dGluZyB0aGlzIHdpbGwgZW1pdCBhIHdhcm5pbmcsIHRvIGFsZXJ0IGFueQorCXJlbWFpbmluZyB1c2VycyB0aGF0IHNldHRpbmcgdGhpcyBub3cgZG9lcyBub3RoaW5nLgorCityZWJhc2UuYmFja2VuZDo6CisJRGVmYXVsdCBiYWNrZW5kIHRvIHVzZSBmb3IgcmViYXNpbmcuICBQb3NzaWJsZSBjaG9pY2VzIGFyZQorCSdhcHBseScgb3IgJ21lcmdlJy4gIEluIHRoZSBmdXR1cmUsIGlmIHRoZSBtZXJnZSBiYWNrZW5kIGdhaW5zCisJYWxsIHJlbWFpbmluZyBjYXBhYmlsaXRpZXMgb2YgdGhlIGFwcGx5IGJhY2tlbmQsIHRoaXMgc2V0dGluZworCW1heSBiZWNvbWUgdW51c2VkLgogCiByZWJhc2Uuc3RhdDo6CiAJV2hldGhlciB0byBzaG93IGEgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtIHNpbmNlIHRoZSBsYXN0CkBAIC02NCwzICs2Myw4IEBACiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiArCiBEZWZhdWx0cyB0byBmYWxzZS4KKworcmViYXNlLnJlc2NoZWR1bGVGYWlsZWRFeGVjOjoKKwlBdXRvbWF0aWNhbGx5IHJlc2NoZWR1bGUgYGV4ZWNgIGNvbW1hbmRzIHRoYXQgZmFpbGVkLiBUaGlzIG9ubHkgbWFrZXMKKwlzZW5zZSBpbiBpbnRlcmFjdGl2ZSBtb2RlIChvciB3aGVuIGFuIGAtLWV4ZWNgIG9wdGlvbiB3YXMgcHJvdmlkZWQpLgorCVRoaXMgaXMgdGhlIHNhbWUgYXMgc3BlY2lmeWluZyB0aGUgYC0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlY2Agb3B0aW9uLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvcmVtb3RlLnR4dCBiL0RvY3VtZW50YXRpb24vY29uZmlnL3JlbW90ZS50eHQKaW5kZXggNmM0Y2FkOC4uYThlNjQzNyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9jb25maWcvcmVtb3RlLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9yZW1vdGUudHh0CkBAIC03NiwzICs3NiwxMSBAQAogKwogU2VlIGFsc28gYHJlbW90ZS48bmFtZT4ucHJ1bmVgIGFuZCB0aGUgUFJVTklORyBzZWN0aW9uIG9mCiBsaW5rZ2l0OmdpdC1mZXRjaFsxXS4KKworcmVtb3RlLjxuYW1lPi5wcm9taXNvcjo6CisJV2hlbiBzZXQgdG8gdHJ1ZSwgdGhpcyByZW1vdGUgd2lsbCBiZSB1c2VkIHRvIGZldGNoIHByb21pc29yCisJb2JqZWN0cy4KKworcmVtb3RlLjxuYW1lPi5wYXJ0aWFsY2xvbmVmaWx0ZXI6OgorCVRoZSBmaWx0ZXIgdGhhdCB3aWxsIGJlIGFwcGxpZWQgd2hlbiBmZXRjaGluZyBmcm9tIHRoaXMKKwlwcm9taXNvciByZW1vdGUuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9yZXBhY2sudHh0IGIvRG9jdW1lbnRhdGlvbi9jb25maWcvcmVwYWNrLnR4dAppbmRleCBhNWMzNzgxLi45YzQxM2UxIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9yZXBhY2sudHh0CisrKyBiL0RvY3VtZW50YXRpb24vY29uZmlnL3JlcGFjay50eHQKQEAgLTI0LDQgKzI0LDQgQEAKIAlwYWNrcyBjcmVhdGVkIGZvciBjbG9uZXMgYW5kIGZldGNoZXMsIGF0IHRoZSBjb3N0IG9mIHNvbWUgZGlzawogCXNwYWNlIGFuZCBleHRyYSB0aW1lIHNwZW50IG9uIHRoZSBpbml0aWFsIHJlcGFjay4gIFRoaXMgaGFzCiAJbm8gZWZmZWN0IGlmIG11bHRpcGxlIHBhY2tmaWxlcyBhcmUgY3JlYXRlZC4KLQlEZWZhdWx0cyB0byBmYWxzZS4KKwlEZWZhdWx0cyB0byB0cnVlIG9uIGJhcmUgcmVwb3MsIGZhbHNlIG90aGVyd2lzZS4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL3N0YXNoLnR4dCBiL0RvY3VtZW50YXRpb24vY29uZmlnL3N0YXNoLnR4dAppbmRleCBjNTgzZDQ2Li5hYmM3ZWY0IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9zdGFzaC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9jb25maWcvc3Rhc2gudHh0CkBAIC0xLDMgKzEsMTggQEAKK3N0YXNoLnVzZUJ1aWx0aW46OgorICAgICAgIFNldCB0byBgZmFsc2VgIHRvIHVzZSB0aGUgbGVnYWN5IHNoZWxsIHNjcmlwdCBpbXBsZW1lbnRhdGlvbiBvZgorICAgICAgIGxpbmtnaXQ6Z2l0LXN0YXNoWzFdLiBJcyBgdHJ1ZWAgYnkgZGVmYXVsdCwgd2hpY2ggbWVhbnMgdXNlCisgICAgICAgdGhlIGJ1aWx0LWluIHJld3JpdGUgb2YgaXQgaW4gQy4KKysKK1RoZSBDIHJld3JpdGUgaXMgZmlyc3QgaW5jbHVkZWQgd2l0aCBHaXQgdmVyc2lvbiAyLjIyIChhbmQgR2l0IGZvciBXaW5kb3dzCit2ZXJzaW9uIDIuMTkpLiBUaGlzIG9wdGlvbiBzZXJ2ZXMgYXMgYW4gZXNjYXBlIGhhdGNoIHRvIHJlLWVuYWJsZSB0aGUKK2xlZ2FjeSB2ZXJzaW9uIGluIGNhc2UgYW55IGJ1Z3MgYXJlIGZvdW5kIGluIHRoZSByZXdyaXRlLiBUaGlzIG9wdGlvbiBhbmQKK3RoZSBzaGVsbCBzY3JpcHQgdmVyc2lvbiBvZiBsaW5rZ2l0OmdpdC1zdGFzaFsxXSB3aWxsIGJlIHJlbW92ZWQgaW4gc29tZQorZnV0dXJlIHJlbGVhc2UuCisrCitJZiB5b3UgZmluZCBzb21lIHJlYXNvbiB0byBzZXQgdGhpcyBvcHRpb24gdG8gYGZhbHNlYCwgb3RoZXIgdGhhbgorb25lLW9mZiB0ZXN0aW5nLCB5b3Ugc2hvdWxkIHJlcG9ydCB0aGUgYmVoYXZpb3IgZGlmZmVyZW5jZSBhcyBhIGJ1ZyBpbgorR2l0IChzZWUgaHR0cHM6Ly9naXQtc2NtLmNvbS9jb21tdW5pdHkgZm9yIGRldGFpbHMpLgorCiBzdGFzaC5zaG93UGF0Y2g6OgogCUlmIHRoaXMgaXMgc2V0IHRvIHRydWUsIHRoZSBgZ2l0IHN0YXNoIHNob3dgIGNvbW1hbmQgd2l0aG91dCBhbgogCW9wdGlvbiB3aWxsIHNob3cgdGhlIHN0YXNoIGVudHJ5IGluIHBhdGNoIGZvcm0uICBEZWZhdWx0cyB0byBmYWxzZS4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL3N0YXR1cy50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9zdGF0dXMudHh0CmluZGV4IGVkNzJmYTdkLi4wZmM3MDRhIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy9zdGF0dXMudHh0CisrKyBiL0RvY3VtZW50YXRpb24vY29uZmlnL3N0YXR1cy50eHQKQEAgLTEyLDYgKzEyLDExIEBACiAJU2V0IHRvIHRydWUgdG8gZW5hYmxlIC0tYnJhbmNoIGJ5IGRlZmF1bHQgaW4gbGlua2dpdDpnaXQtc3RhdHVzWzFdLgogCVRoZSBvcHRpb24gLS1uby1icmFuY2ggdGFrZXMgcHJlY2VkZW5jZSBvdmVyIHRoaXMgdmFyaWFibGUuCiAKK3N0YXR1cy5haGVhZEJlaGluZDo6CisJU2V0IHRvIHRydWUgdG8gZW5hYmxlIGAtLWFoZWFkLWJlaGluZGAgYW5kIGZhbHNlIHRvIGVuYWJsZQorCWAtLW5vLWFoZWFkLWJlaGluZGAgYnkgZGVmYXVsdCBpbiBsaW5rZ2l0OmdpdC1zdGF0dXNbMV0gZm9yCisJbm9uLXBvcmNlbGFpbiBzdGF0dXMgZm9ybWF0cy4gIERlZmF1bHRzIHRvIHRydWUuCisKIHN0YXR1cy5kaXNwbGF5Q29tbWVudFByZWZpeDo6CiAJSWYgc2V0IHRvIHRydWUsIGxpbmtnaXQ6Z2l0LXN0YXR1c1sxXSB3aWxsIGluc2VydCBhIGNvbW1lbnQKIAlwcmVmaXggYmVmb3JlIGVhY2ggb3V0cHV0IGxpbmUgKHN0YXJ0aW5nIHdpdGgKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL3N1Ym1vZHVsZS50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy9zdWJtb2R1bGUudHh0CmluZGV4IDBhMTI5M2IuLmIzMzE3NzEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL3N1Ym1vZHVsZS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9jb25maWcvc3VibW9kdWxlLnR4dApAQCAtNzksNCArNzksNiBAQAogc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3k6OgogCVNwZWNpZmllcyBob3cgdG8gdHJlYXQgZXJyb3JzIHdpdGggdGhlIGFsdGVybmF0ZXMgZm9yIGEgc3VibW9kdWxlCiAJYXMgY29tcHV0ZWQgdmlhIGBzdWJtb2R1bGUuYWx0ZXJuYXRlTG9jYXRpb25gLiBQb3NzaWJsZSB2YWx1ZXMgYXJlCi0JYGlnbm9yZWAsIGBpbmZvYCwgYGRpZWAuIERlZmF1bHQgaXMgYGRpZWAuCisJYGlnbm9yZWAsIGBpbmZvYCwgYGRpZWAuIERlZmF1bHQgaXMgYGRpZWAuIE5vdGUgdGhhdCBpZiBzZXQgdG8gYGlnbm9yZWAKKwlvciBgaW5mb2AsIGFuZCBpZiB0aGVyZSBpcyBhbiBlcnJvciB3aXRoIHRoZSBjb21wdXRlZCBhbHRlcm5hdGUsIHRoZQorCWNsb25lIHByb2NlZWRzIGFzIGlmIG5vIGFsdGVybmF0ZSB3YXMgc3BlY2lmaWVkLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvdGFnLnR4dCBiL0RvY3VtZW50YXRpb24vY29uZmlnL3RhZy50eHQKaW5kZXggNjYzNjYzYi4uNmQ5MTEwZCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9jb25maWcvdGFnLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy90YWcudHh0CkBAIC04LDYgKzgsMTQgQEAKIAlsaW5rZ2l0OmdpdC10YWdbMV0uIFdpdGhvdXQgdGhlICItLXNvcnQ9PHZhbHVlPiIgb3B0aW9uIHByb3ZpZGVkLCB0aGUKIAl2YWx1ZSBvZiB0aGlzIHZhcmlhYmxlIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdC4KIAordGFnLmdwZ1NpZ246OgorCUEgYm9vbGVhbiB0byBzcGVjaWZ5IHdoZXRoZXIgYWxsIHRhZ3Mgc2hvdWxkIGJlIEdQRyBzaWduZWQuCisJVXNlIG9mIHRoaXMgb3B0aW9uIHdoZW4gcnVubmluZyBpbiBhbiBhdXRvbWF0ZWQgc2NyaXB0IGNhbgorCXJlc3VsdCBpbiBhIGxhcmdlIG51bWJlciBvZiB0YWdzIGJlaW5nIHNpZ25lZC4gSXQgaXMgdGhlcmVmb3JlCisJY29udmVuaWVudCB0byB1c2UgYW4gYWdlbnQgdG8gYXZvaWQgdHlwaW5nIHlvdXIgZ3BnIHBhc3NwaHJhc2UKKwlzZXZlcmFsIHRpbWVzLiBOb3RlIHRoYXQgdGhpcyBvcHRpb24gZG9lc24ndCBhZmZlY3QgdGFnIHNpZ25pbmcKKwliZWhhdmlvciBlbmFibGVkIGJ5ICItdSA8a2V5aWQ+IiBvciAiLS1sb2NhbC11c2VyPTxrZXlpZD4iIG9wdGlvbnMuCisKIHRhci51bWFzazo6CiAJVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byByZXN0cmljdCB0aGUgcGVybWlzc2lvbiBiaXRzIG9mCiAJdGFyIGFyY2hpdmUgZW50cmllcy4gIFRoZSBkZWZhdWx0IGlzIDAwMDIsIHdoaWNoIHR1cm5zIG9mZiB0aGUKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vY29uZmlnL3RyYWNlMi50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy90cmFjZTIudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRjZTBiOWEKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy90cmFjZTIudHh0CkBAIC0wLDAgKzEsNjIgQEAKK1RyYWNlMiBjb25maWcgc2V0dGluZ3MgYXJlIG9ubHkgcmVhZCBmcm9tIHRoZSBzeXN0ZW0gYW5kIGdsb2JhbAorY29uZmlnIGZpbGVzOyByZXBvc2l0b3J5IGxvY2FsIGFuZCB3b3JrdHJlZSBjb25maWcgZmlsZXMgYW5kIGAtY2AKK2NvbW1hbmQgbGluZSBhcmd1bWVudHMgYXJlIG5vdCByZXNwZWN0ZWQuCisKK3RyYWNlMi5ub3JtYWxUYXJnZXQ6OgorCVRoaXMgdmFyaWFibGUgY29udHJvbHMgdGhlIG5vcm1hbCB0YXJnZXQgZGVzdGluYXRpb24uCisJSXQgbWF5IGJlIG92ZXJyaWRkZW4gYnkgdGhlIGBHSVRfVFJBQ0UyYCBlbnZpcm9ubWVudCB2YXJpYWJsZS4KKwlUaGUgZm9sbG93aW5nIHRhYmxlIHNob3dzIHBvc3NpYmxlIHZhbHVlcy4KKwordHJhY2UyLnBlcmZUYXJnZXQ6OgorCVRoaXMgdmFyaWFibGUgY29udHJvbHMgdGhlIHBlcmZvcm1hbmNlIHRhcmdldCBkZXN0aW5hdGlvbi4KKwlJdCBtYXkgYmUgb3ZlcnJpZGRlbiBieSB0aGUgYEdJVF9UUkFDRTJfUEVSRmAgZW52aXJvbm1lbnQgdmFyaWFibGUuCisJVGhlIGZvbGxvd2luZyB0YWJsZSBzaG93cyBwb3NzaWJsZSB2YWx1ZXMuCisKK3RyYWNlMi5ldmVudFRhcmdldDo6CisJVGhpcyB2YXJpYWJsZSBjb250cm9scyB0aGUgZXZlbnQgdGFyZ2V0IGRlc3RpbmF0aW9uLgorCUl0IG1heSBiZSBvdmVycmlkZGVuIGJ5IHRoZSBgR0lUX1RSQUNFMl9FVkVOVGAgZW52aXJvbm1lbnQgdmFyaWFibGUuCisJVGhlIGZvbGxvd2luZyB0YWJsZSBzaG93cyBwb3NzaWJsZSB2YWx1ZXMuCisrCitpbmNsdWRlOjouLi90cmFjZTItdGFyZ2V0LXZhbHVlcy50eHRbXQorCit0cmFjZTIubm9ybWFsQnJpZWY6OgorCUJvb2xlYW4uICBXaGVuIHRydWUgYHRpbWVgLCBgZmlsZW5hbWVgLCBhbmQgYGxpbmVgIGZpZWxkcyBhcmUKKwlvbWl0dGVkIGZyb20gbm9ybWFsIG91dHB1dC4gIE1heSBiZSBvdmVycmlkZGVuIGJ5IHRoZQorCWBHSVRfVFJBQ0UyX0JSSUVGYCBlbnZpcm9ubWVudCB2YXJpYWJsZS4gIERlZmF1bHRzIHRvIGZhbHNlLgorCit0cmFjZTIucGVyZkJyaWVmOjoKKwlCb29sZWFuLiAgV2hlbiB0cnVlIGB0aW1lYCwgYGZpbGVuYW1lYCwgYW5kIGBsaW5lYCBmaWVsZHMgYXJlCisJb21pdHRlZCBmcm9tIFBFUkYgb3V0cHV0LiAgTWF5IGJlIG92ZXJyaWRkZW4gYnkgdGhlCisJYEdJVF9UUkFDRTJfUEVSRl9CUklFRmAgZW52aXJvbm1lbnQgdmFyaWFibGUuICBEZWZhdWx0cyB0byBmYWxzZS4KKwordHJhY2UyLmV2ZW50QnJpZWY6OgorCUJvb2xlYW4uICBXaGVuIHRydWUgYHRpbWVgLCBgZmlsZW5hbWVgLCBhbmQgYGxpbmVgIGZpZWxkcyBhcmUKKwlvbWl0dGVkIGZyb20gZXZlbnQgb3V0cHV0LiAgTWF5IGJlIG92ZXJyaWRkZW4gYnkgdGhlCisJYEdJVF9UUkFDRTJfRVZFTlRfQlJJRUZgIGVudmlyb25tZW50IHZhcmlhYmxlLiAgRGVmYXVsdHMgdG8gZmFsc2UuCisKK3RyYWNlMi5ldmVudE5lc3Rpbmc6OgorCUludGVnZXIuICBTcGVjaWZpZXMgZGVzaXJlZCBkZXB0aCBvZiBuZXN0ZWQgcmVnaW9ucyBpbiB0aGUKKwlldmVudCBvdXRwdXQuICBSZWdpb25zIGRlZXBlciB0aGFuIHRoaXMgdmFsdWUgd2lsbCBiZQorCW9taXR0ZWQuICBNYXkgYmUgb3ZlcnJpZGRlbiBieSB0aGUgYEdJVF9UUkFDRTJfRVZFTlRfTkVTVElOR2AKKwllbnZpcm9ubWVudCB2YXJpYWJsZS4gIERlZmF1bHRzIHRvIDIuCisKK3RyYWNlMi5jb25maWdQYXJhbXM6OgorCUEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgcGF0dGVybnMgb2YgImltcG9ydGFudCIgY29uZmlnCisJc2V0dGluZ3MgdGhhdCBzaG91bGQgYmUgcmVjb3JkZWQgaW4gdGhlIHRyYWNlMiBvdXRwdXQuCisJRm9yIGV4YW1wbGUsIGBjb3JlLioscmVtb3RlLioudXJsYCB3b3VsZCBjYXVzZSB0aGUgdHJhY2UyCisJb3V0cHV0IHRvIGNvbnRhaW4gZXZlbnRzIGxpc3RpbmcgZWFjaCBjb25maWd1cmVkIHJlbW90ZS4KKwlNYXkgYmUgb3ZlcnJpZGRlbiBieSB0aGUgYEdJVF9UUkFDRTJfQ09ORklHX1BBUkFNU2AgZW52aXJvbm1lbnQKKwl2YXJpYWJsZS4gIFVuc2V0IGJ5IGRlZmF1bHQuCisKK3RyYWNlMi5kZXN0aW5hdGlvbkRlYnVnOjoKKwlCb29sZWFuLiAgV2hlbiB0cnVlIEdpdCB3aWxsIHByaW50IGVycm9yIG1lc3NhZ2VzIHdoZW4gYQorCXRyYWNlIHRhcmdldCBkZXN0aW5hdGlvbiBjYW5ub3QgYmUgb3BlbmVkIGZvciB3cml0aW5nLgorCUJ5IGRlZmF1bHQsIHRoZXNlIGVycm9ycyBhcmUgc3VwcHJlc3NlZCBhbmQgdHJhY2luZyBpcworCXNpbGVudGx5IGRpc2FibGVkLiAgTWF5IGJlIG92ZXJyaWRkZW4gYnkgdGhlCisJYEdJVF9UUkFDRTJfRFNUX0RFQlVHYCBlbnZpcm9ubWVudCB2YXJpYWJsZS4KKwordHJhY2UyLm1heEZpbGVzOjoKKwlJbnRlZ2VyLiAgV2hlbiB3cml0aW5nIHRyYWNlIGZpbGVzIHRvIGEgdGFyZ2V0IGRpcmVjdG9yeSwgZG8gbm90CisJd3JpdGUgYWRkaXRpb25hbCB0cmFjZXMgaWYgd2Ugd291bGQgZXhjZWVkIHRoaXMgbWFueSBmaWxlcy4gSW5zdGVhZCwKKwl3cml0ZSBhIHNlbnRpbmVsIGZpbGUgdGhhdCB3aWxsIGJsb2NrIGZ1cnRoZXIgdHJhY2luZyB0byB0aGlzCisJZGlyZWN0b3J5LiBEZWZhdWx0cyB0byAwLCB3aGljaCBkaXNhYmxlcyB0aGlzIGNoZWNrLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9jb25maWcvdHJhbnNmZXIudHh0IGIvRG9jdW1lbnRhdGlvbi9jb25maWcvdHJhbnNmZXIudHh0CmluZGV4IDRhNWRmZTIuLmY1YjYyNDUgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL3RyYW5zZmVyLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy90cmFuc2Zlci50eHQKQEAgLTE3LDcgKzE3LDcgQEAKIGluc3RlYWQgYmUgbGVmdCB1bnJlZmVyZW5jZWQgaW4gdGhlIHJlcG9zaXRvcnkuCiArCiBEdWUgdG8gdGhlIG5vbi1xdWFyYW50aW5lIG5hdHVyZSBvZiB0aGUgYGZldGNoLmZzY2tPYmplY3RzYAotaW1wbGVtZW50YXRpb24gaXQgY2FuIG5vdCBiZSByZWxpZWQgdXBvbiB0byBsZWF2ZSB0aGUgb2JqZWN0IHN0b3JlCitpbXBsZW1lbnRhdGlvbiBpdCBjYW5ub3QgYmUgcmVsaWVkIHVwb24gdG8gbGVhdmUgdGhlIG9iamVjdCBzdG9yZQogY2xlYW4gbGlrZSBgcmVjZWl2ZS5mc2NrT2JqZWN0c2AgY2FuLgogKwogQXMgb2JqZWN0cyBhcmUgdW5wYWNrZWQgdGhleSdyZSB3cml0dGVuIHRvIHRoZSBvYmplY3Qgc3RvcmUsIHNvIHRoZXJlCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy91c2VyLnR4dCBiL0RvY3VtZW50YXRpb24vY29uZmlnL3VzZXIudHh0CmluZGV4IGI1YjJiYTEuLjU5YWVjN2MgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vY29uZmlnL3VzZXIudHh0CisrKyBiL0RvY3VtZW50YXRpb24vY29uZmlnL3VzZXIudHh0CkBAIC0xLDEyICsxLDI0IEBACi11c2VyLmVtYWlsOjoKLQlZb3VyIGVtYWlsIGFkZHJlc3MgdG8gYmUgcmVjb3JkZWQgaW4gYW55IG5ld2x5IGNyZWF0ZWQgY29tbWl0cy4KLQlDYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgYEdJVF9BVVRIT1JfRU1BSUxgLCBgR0lUX0NPTU1JVFRFUl9FTUFJTGAsIGFuZAotCWBFTUFJTGAgZW52aXJvbm1lbnQgdmFyaWFibGVzLiAgU2VlIGxpbmtnaXQ6Z2l0LWNvbW1pdC10cmVlWzFdLgotCiB1c2VyLm5hbWU6OgotCVlvdXIgZnVsbCBuYW1lIHRvIGJlIHJlY29yZGVkIGluIGFueSBuZXdseSBjcmVhdGVkIGNvbW1pdHMuCi0JQ2FuIGJlIG92ZXJyaWRkZW4gYnkgdGhlIGBHSVRfQVVUSE9SX05BTUVgIGFuZCBgR0lUX0NPTU1JVFRFUl9OQU1FYAotCWVudmlyb25tZW50IHZhcmlhYmxlcy4gIFNlZSBsaW5rZ2l0OmdpdC1jb21taXQtdHJlZVsxXS4KK3VzZXIuZW1haWw6OgorYXV0aG9yLm5hbWU6OgorYXV0aG9yLmVtYWlsOjoKK2NvbW1pdHRlci5uYW1lOjoKK2NvbW1pdHRlci5lbWFpbDo6CisJVGhlIGB1c2VyLm5hbWVgIGFuZCBgdXNlci5lbWFpbGAgdmFyaWFibGVzIGRldGVybWluZSB3aGF0IGVuZHMKKwl1cCBpbiB0aGUgYGF1dGhvcmAgYW5kIGBjb21taXR0ZXJgIGZpZWxkIG9mIGNvbW1pdAorCW9iamVjdHMuCisJSWYgeW91IG5lZWQgdGhlIGBhdXRob3JgIG9yIGBjb21taXR0ZXJgIHRvIGJlIGRpZmZlcmVudCwgdGhlCisJYGF1dGhvci5uYW1lYCwgYGF1dGhvci5lbWFpbGAsIGBjb21taXR0ZXIubmFtZWAgb3IKKwlgY29tbWl0dGVyLmVtYWlsYCB2YXJpYWJsZXMgY2FuIGJlIHNldC4KKwlBbHNvLCBhbGwgb2YgdGhlc2UgY2FuIGJlIG92ZXJyaWRkZW4gYnkgdGhlIGBHSVRfQVVUSE9SX05BTUVgLAorCWBHSVRfQVVUSE9SX0VNQUlMYCwgYEdJVF9DT01NSVRURVJfTkFNRWAsCisJYEdJVF9DT01NSVRURVJfRU1BSUxgIGFuZCBgRU1BSUxgIGVudmlyb25tZW50IHZhcmlhYmxlcy4KKysKK05vdGUgdGhhdCB0aGUgYG5hbWVgIGZvcm1zIG9mIHRoZXNlIHZhcmlhYmxlcyBjb252ZW50aW9uYWxseSByZWZlciB0bworc29tZSBmb3JtIG9mIGEgcGVyc29uYWwgbmFtZS4gIFNlZSBsaW5rZ2l0OmdpdC1jb21taXRbMV0gYW5kIHRoZQorZW52aXJvbm1lbnQgdmFyaWFibGVzIHNlY3Rpb24gb2YgbGlua2dpdDpnaXRbMV0gZm9yIG1vcmUgaW5mb3JtYXRpb24gb24KK3RoZXNlIHNldHRpbmdzIGFuZCB0aGUgYGNyZWRlbnRpYWwudXNlcm5hbWVgIG9wdGlvbiBpZiB5b3UncmUgbG9va2luZworZm9yIGF1dGhlbnRpY2F0aW9uIGNyZWRlbnRpYWxzIGluc3RlYWQuCiAKIHVzZXIudXNlQ29uZmlnT25seTo6CiAJSW5zdHJ1Y3QgR2l0IHRvIGF2b2lkIHRyeWluZyB0byBndWVzcyBkZWZhdWx0cyBmb3IgYHVzZXIuZW1haWxgCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2NvbmZpZy93b3JrdHJlZS50eHQgYi9Eb2N1bWVudGF0aW9uL2NvbmZpZy93b3JrdHJlZS50eHQKaW5kZXggYjg1Mzc5OC4uMDQ4ZTM0OSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9jb25maWcvd29ya3RyZWUudHh0CisrKyBiL0RvY3VtZW50YXRpb24vY29uZmlnL3dvcmt0cmVlLnR4dApAQCAtMSw2ICsxLDYgQEAKIHdvcmt0cmVlLmd1ZXNzUmVtb3RlOjoKLQlXaXRoIGBhZGRgLCBpZiBubyBicmFuY2ggYXJndW1lbnQsIGFuZCBuZWl0aGVyIG9mIGAtYmAgbm9yCi0JYC1CYCBub3IgYC0tZGV0YWNoYCBhcmUgZ2l2ZW4sIHRoZSBjb21tYW5kIGRlZmF1bHRzIHRvCisJSWYgbm8gYnJhbmNoIGlzIHNwZWNpZmllZCBhbmQgbmVpdGhlciBgLWJgIG5vciBgLUJgIG5vcgorCWAtLWRldGFjaGAgaXMgdXNlZCwgdGhlbiBgZ2l0IHdvcmt0cmVlIGFkZGAgZGVmYXVsdHMgdG8KIAljcmVhdGluZyBhIG5ldyBicmFuY2ggZnJvbSBIRUFELiAgSWYgYHdvcmt0cmVlLmd1ZXNzUmVtb3RlYCBpcwogCXNldCB0byB0cnVlLCBgd29ya3RyZWUgYWRkYCB0cmllcyB0byBmaW5kIGEgcmVtb3RlLXRyYWNraW5nCiAJYnJhbmNoIHdob3NlIG5hbWUgdW5pcXVlbHkgbWF0Y2hlcyB0aGUgbmV3IGJyYW5jaCBuYW1lLiAgSWYKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZGlmZi1mb3JtYXQudHh0IGIvRG9jdW1lbnRhdGlvbi9kaWZmLWZvcm1hdC50eHQKaW5kZXggY2RjYzE3Zi4uZmJiZDQxMCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9kaWZmLWZvcm1hdC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9kaWZmLWZvcm1hdC50eHQKQEAgLTYxLDcgKzYxLDcgQEAKIC0gUjogcmVuYW1pbmcgb2YgYSBmaWxlCiAtIFQ6IGNoYW5nZSBpbiB0aGUgdHlwZSBvZiB0aGUgZmlsZQogLSBVOiBmaWxlIGlzIHVubWVyZ2VkICh5b3UgbXVzdCBjb21wbGV0ZSB0aGUgbWVyZ2UgYmVmb3JlIGl0IGNhbgotYmUgY29tbWl0dGVkKQorICBiZSBjb21taXR0ZWQpCiAtIFg6ICJ1bmtub3duIiBjaGFuZ2UgdHlwZSAobW9zdCBwcm9iYWJseSBhIGJ1ZywgcGxlYXNlIHJlcG9ydCBpdCkKIAogU3RhdHVzIGxldHRlcnMgQyBhbmQgUiBhcmUgYWx3YXlzIGZvbGxvd2VkIGJ5IGEgc2NvcmUgKGRlbm90aW5nIHRoZQpAQCAtOTUsMTIgKzk1LDI2IEBACiAuIHRoZXJlIGFyZSBtb3JlICJzcmMiIG1vZGVzIGFuZCAic3JjIiBzaGExCiAuIHN0YXR1cyBpcyBjb25jYXRlbmF0ZWQgc3RhdHVzIGNoYXJhY3RlcnMgZm9yIGVhY2ggcGFyZW50CiAuIG5vIG9wdGlvbmFsICJzY29yZSIgbnVtYmVyCi0uIHNpbmdsZSBwYXRoLCBvbmx5IGZvciAiZHN0IgorLiB0YWItc2VwYXJhdGVkIHBhdGhuYW1lKHMpIG9mIHRoZSBmaWxlCiAKLUV4YW1wbGU6CitGb3IgYC1jYCBhbmQgYC0tY2NgLCBvbmx5IHRoZSBkZXN0aW5hdGlvbiBvciBmaW5hbCBwYXRoIGlzIHNob3duIGV2ZW4KK2lmIHRoZSBmaWxlIHdhcyByZW5hbWVkIG9uIGFueSBzaWRlIG9mIGhpc3RvcnkuICBXaXRoCitgLS1jb21iaW5lZC1hbGwtcGF0aHNgLCB0aGUgbmFtZSBvZiB0aGUgcGF0aCBpbiBlYWNoIHBhcmVudCBpcyBzaG93bgorZm9sbG93ZWQgYnkgdGhlIG5hbWUgb2YgdGhlIHBhdGggaW4gdGhlIG1lcmdlIGNvbW1pdC4KKworRXhhbXBsZXMgZm9yIGAtY2AgYW5kIGAtLWNjYCB3aXRob3V0IGAtLWNvbWJpbmVkLWFsbC1wYXRoc2A6CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKzo6MTAwNjQ0IDEwMDY0NCAxMDA2NDQgZmFiYWRiOCBjYzk1ZWIwIDQ4NjY1MTAgTU0JZGVzYy5jCis6OjEwMDc1NSAxMDA3NTUgMTAwNzU1IDUyYjdhMmQgNmQxYWMwNCBkMmFjN2Q3IFJNCWJhci5zaAorOjoxMDA2NDQgMTAwNjQ0IDEwMDY0NCBlMDdkNmM1IDkwNDJlODIgZWU5MTg4MSBSUglwaG9vZXkuYworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0V4YW1wbGVzIHdoZW4gYC0tY29tYmluZWQtYWxsLXBhdGhzYCBhZGRlZCB0byBlaXRoZXIgYC1jYCBvciBgLS1jY2A6CiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotOjoxMDA2NDQgMTAwNjQ0IDEwMDY0NCBmYWJhZGI4IGNjOTVlYjAgNDg2NjUxMCBNTQlkZXNjcmliZS5jCis6OjEwMDY0NCAxMDA2NDQgMTAwNjQ0IGZhYmFkYjggY2M5NWViMCA0ODY2NTEwIE1NCWRlc2MuYwlkZXNjLmMJZGVzYy5jCis6OjEwMDc1NSAxMDA3NTUgMTAwNzU1IDUyYjdhMmQgNmQxYWMwNCBkMmFjN2Q3IFJNCWZvby5zaAliYXIuc2gJYmFyLnNoCis6OjEwMDY0NCAxMDA2NDQgMTAwNjQ0IGUwN2Q2YzUgOTA0MmU4MiBlZTkxODgxIFJSCWZvb2V5LmMJZnVleS5jCXBob29leS5jCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogTm90ZSB0aGF0ICdjb21iaW5lZCBkaWZmJyBsaXN0cyBvbmx5IGZpbGVzIHdoaWNoIHdlcmUgbW9kaWZpZWQgZnJvbQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9kaWZmLWdlbmVyYXRlLXBhdGNoLnR4dCBiL0RvY3VtZW50YXRpb24vZGlmZi1nZW5lcmF0ZS1wYXRjaC50eHQKaW5kZXggMjMxMTA1Yy4uZThlZDY0NyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9kaWZmLWdlbmVyYXRlLXBhdGNoLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2RpZmYtZ2VuZXJhdGUtcGF0Y2gudHh0CkBAIC0xLDExICsxLDE1IEBACi1HZW5lcmF0aW5nIHBhdGNoZXMgd2l0aCAtcAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0dlbmVyYXRpbmcgcGF0Y2ggdGV4dCB3aXRoIC1wCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1XaGVuICJnaXQtZGlmZi1pbmRleCIsICJnaXQtZGlmZi10cmVlIiwgb3IgImdpdC1kaWZmLWZpbGVzIiBhcmUgcnVuCi13aXRoIGEgYC1wYCBvcHRpb24sICJnaXQgZGlmZiIgd2l0aG91dCB0aGUgYC0tcmF3YCBvcHRpb24sIG9yCi0iZ2l0IGxvZyIgd2l0aCB0aGUgIi1wIiBvcHRpb24sIHRoZXkKLWRvIG5vdCBwcm9kdWNlIHRoZSBvdXRwdXQgZGVzY3JpYmVkIGFib3ZlOyBpbnN0ZWFkIHRoZXkgcHJvZHVjZSBhCi1wYXRjaCBmaWxlLiAgWW91IGNhbiBjdXN0b21pemUgdGhlIGNyZWF0aW9uIG9mIHN1Y2ggcGF0Y2hlcyB2aWEgdGhlCitSdW5uaW5nCitsaW5rZ2l0OmdpdC1kaWZmWzFdLAorbGlua2dpdDpnaXQtbG9nWzFdLAorbGlua2dpdDpnaXQtc2hvd1sxXSwKK2xpbmtnaXQ6Z2l0LWRpZmYtaW5kZXhbMV0sCitsaW5rZ2l0OmdpdC1kaWZmLXRyZWVbMV0sIG9yCitsaW5rZ2l0OmdpdC1kaWZmLWZpbGVzWzFdCit3aXRoIHRoZSBgLXBgIG9wdGlvbiBwcm9kdWNlcyBwYXRjaCB0ZXh0LgorWW91IGNhbiBjdXN0b21pemUgdGhlIGNyZWF0aW9uIG9mIHBhdGNoIHRleHQgdmlhIHRoZQogYEdJVF9FWFRFUk5BTF9ESUZGYCBhbmQgdGhlIGBHSVRfRElGRl9PUFRTYCBlbnZpcm9ubWVudCB2YXJpYWJsZXMuCiAKIFdoYXQgdGhlIC1wIG9wdGlvbiBwcm9kdWNlcyBpcyBzbGlnaHRseSBkaWZmZXJlbnQgZnJvbSB0aGUgdHJhZGl0aW9uYWwKQEAgLTQ5LDcgKzUzLDcgQEAKIGZpbGVzLCB3aGlsZSAxMDAlIGRpc3NpbWlsYXJpdHkgbWVhbnMgdGhhdCBubyBsaW5lIGZyb20gdGhlIG9sZAogZmlsZSBtYWRlIGl0IGludG8gdGhlIG5ldyBvbmUuCiArCi1UaGUgaW5kZXggbGluZSBpbmNsdWRlcyB0aGUgU0hBLTEgY2hlY2tzdW0gYmVmb3JlIGFuZCBhZnRlciB0aGUgY2hhbmdlLgorVGhlIGluZGV4IGxpbmUgaW5jbHVkZXMgdGhlIGJsb2Igb2JqZWN0IG5hbWVzIGJlZm9yZSBhbmQgYWZ0ZXIgdGhlIGNoYW5nZS4KIFRoZSA8bW9kZT4gaXMgaW5jbHVkZWQgaWYgdGhlIGZpbGUgbW9kZSBkb2VzIG5vdCBjaGFuZ2U7IG90aGVyd2lzZSwKIHNlcGFyYXRlIGxpbmVzIGluZGljYXRlIHRoZSBvbGQgYW5kIHRoZSBuZXcgbW9kZS4KIApAQCAtNzAsNyArNzQsNyBAQAogICAgICAgcmVuYW1lIHRvIGEKIAogCi1jb21iaW5lZCBkaWZmIGZvcm1hdAorQ29tYmluZWQgZGlmZiBmb3JtYXQKIC0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIEFueSBkaWZmLWdlbmVyYXRpbmcgY29tbWFuZCBjYW4gdGFrZSB0aGUgYC1jYCBvciBgLS1jY2Agb3B0aW9uIHRvCkBAIC04MCw3ICs4NCw3IEBACiBvZiB0aGVzZSBjb21tYW5kcyB0byBmb3JjZSBnZW5lcmF0aW9uIG9mIGRpZmZzIHdpdGggaW5kaXZpZHVhbCBwYXJlbnRzCiBvZiBhIG1lcmdlLgogCi1BICdjb21iaW5lZCBkaWZmJyBmb3JtYXQgbG9va3MgbGlrZSB0aGlzOgorQSAiY29tYmluZWQgZGlmZiIgZm9ybWF0IGxvb2tzIGxpa2UgdGhpczoKIAogLS0tLS0tLS0tLS0tCiBkaWZmIC0tY29tYmluZWQgZGVzY3JpYmUuYwpAQCAtMTEzLDExICsxMTcsMTEgQEAKIC0tLS0tLS0tLS0tLQogCiAxLiAgIEl0IGlzIHByZWNlZGVkIHdpdGggYSAiZ2l0IGRpZmYiIGhlYWRlciwgdGhhdCBsb29rcyBsaWtlCi0gICAgIHRoaXMgKHdoZW4gYC1jYCBvcHRpb24gaXMgdXNlZCk6CisgICAgIHRoaXMgKHdoZW4gdGhlIGAtY2Agb3B0aW9uIGlzIHVzZWQpOgogCiAgICAgICAgZGlmZiAtLWNvbWJpbmVkIGZpbGUKICsKLW9yIGxpa2UgdGhpcyAod2hlbiBgLS1jY2Agb3B0aW9uIGlzIHVzZWQpOgorb3IgbGlrZSB0aGlzICh3aGVuIHRoZSBgLS1jY2Agb3B0aW9uIGlzIHVzZWQpOgogCiAgICAgICAgZGlmZiAtLWNjIGZpbGUKIApAQCAtMTQzLDExICsxNDcsMjQgQEAKIFNpbWlsYXIgdG8gdHdvLWxpbmUgaGVhZGVyIGZvciB0cmFkaXRpb25hbCAndW5pZmllZCcgZGlmZgogZm9ybWF0LCBgL2Rldi9udWxsYCBpcyB1c2VkIHRvIHNpZ25hbCBjcmVhdGVkIG9yIGRlbGV0ZWQKIGZpbGVzLgorKworSG93ZXZlciwgaWYgdGhlIC0tY29tYmluZWQtYWxsLXBhdGhzIG9wdGlvbiBpcyBwcm92aWRlZCwgaW5zdGVhZCBvZiBhCit0d28tbGluZSBmcm9tLWZpbGUvdG8tZmlsZSB5b3UgZ2V0IGEgTisxIGxpbmUgZnJvbS1maWxlL3RvLWZpbGUgaGVhZGVyLAord2hlcmUgTiBpcyB0aGUgbnVtYmVyIG9mIHBhcmVudHMgaW4gdGhlIG1lcmdlIGNvbW1pdAorCisgICAgICAgLS0tIGEvZmlsZQorICAgICAgIC0tLSBhL2ZpbGUKKyAgICAgICAtLS0gYS9maWxlCisgICAgICAgKysrIGIvZmlsZQorKworVGhpcyBleHRlbmRlZCBmb3JtYXQgY2FuIGJlIHVzZWZ1bCBpZiByZW5hbWUgb3IgY29weSBkZXRlY3Rpb24gaXMKK2FjdGl2ZSwgdG8gYWxsb3cgeW91IHRvIHNlZSB0aGUgb3JpZ2luYWwgbmFtZSBvZiB0aGUgZmlsZSBpbiBkaWZmZXJlbnQKK3BhcmVudHMuCiAKIDQuICAgQ2h1bmsgaGVhZGVyIGZvcm1hdCBpcyBtb2RpZmllZCB0byBwcmV2ZW50IHBlb3BsZSBmcm9tCiAgICAgIGFjY2lkZW50YWxseSBmZWVkaW5nIGl0IHRvIGBwYXRjaCAtcDFgLiBDb21iaW5lZCBkaWZmIGZvcm1hdAogICAgICB3YXMgY3JlYXRlZCBmb3IgcmV2aWV3IG9mIG1lcmdlIGNvbW1pdCBjaGFuZ2VzLCBhbmQgd2FzIG5vdAotICAgICBtZWFudCBmb3IgYXBwbHkuIFRoZSBjaGFuZ2UgaXMgc2ltaWxhciB0byB0aGUgY2hhbmdlIGluIHRoZQorICAgICBtZWFudCB0byBiZSBhcHBsaWVkLiBUaGUgY2hhbmdlIGlzIHNpbWlsYXIgdG8gdGhlIGNoYW5nZSBpbiB0aGUKICAgICAgZXh0ZW5kZWQgJ2luZGV4JyBoZWFkZXI6CiAKICAgICAgICBAQEAgPGZyb20tZmlsZS1yYW5nZT4gPGZyb20tZmlsZS1yYW5nZT4gPHRvLWZpbGUtcmFuZ2U+IEBAQApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9kaWZmLW9wdGlvbnMudHh0IGIvRG9jdW1lbnRhdGlvbi9kaWZmLW9wdGlvbnMudHh0CmluZGV4IDAzNzhjZDUuLmJiMzFmMGMgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZGlmZi1vcHRpb25zLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2RpZmYtb3B0aW9ucy50eHQKQEAgLTM2LDExICszNiwyMSBAQAogLVU8bj46OgogLS11bmlmaWVkPTxuPjo6CiAJR2VuZXJhdGUgZGlmZnMgd2l0aCA8bj4gbGluZXMgb2YgY29udGV4dCBpbnN0ZWFkIG9mCi0JdGhlIHVzdWFsIHRocmVlLgorCXRoZSB1c3VhbCB0aHJlZS4gSW1wbGllcyBgLS1wYXRjaGAuCiBpZm5kZWY6OmdpdC1mb3JtYXQtcGF0Y2hbXQogCUltcGxpZXMgYC1wYC4KIGVuZGlmOjpnaXQtZm9ybWF0LXBhdGNoW10KIAorLS1vdXRwdXQ9PGZpbGU+OjoKKwlPdXRwdXQgdG8gYSBzcGVjaWZpYyBmaWxlIGluc3RlYWQgb2Ygc3Rkb3V0LgorCistLW91dHB1dC1pbmRpY2F0b3ItbmV3PTxjaGFyPjo6CistLW91dHB1dC1pbmRpY2F0b3Itb2xkPTxjaGFyPjo6CistLW91dHB1dC1pbmRpY2F0b3ItY29udGV4dD08Y2hhcj46OgorCVNwZWNpZnkgdGhlIGNoYXJhY3RlciB1c2VkIHRvIGluZGljYXRlIG5ldywgb2xkIG9yIGNvbnRleHQKKwlsaW5lcyBpbiB0aGUgZ2VuZXJhdGVkIHBhdGNoLiBOb3JtYWxseSB0aGV5IGFyZSAnKycsICctJyBhbmQKKwknICcgcmVzcGVjdGl2ZWx5LgorCiBpZm5kZWY6OmdpdC1mb3JtYXQtcGF0Y2hbXQogLS1yYXc6OgogaWZuZGVmOjpnaXQtbG9nW10KQEAgLTE0OCw2ICsxNTgsNyBAQAogCW51bWJlciBvZiBtb2RpZmllZCBmaWxlcywgYXMgd2VsbCBhcyBudW1iZXIgb2YgYWRkZWQgYW5kIGRlbGV0ZWQKIAlsaW5lcy4KIAorLVhbPHBhcmFtMSxwYXJhbTIsLi4uPl06OgogLS1kaXJzdGF0Wz08cGFyYW0xLHBhcmFtMiwuLi4+XTo6CiAJT3V0cHV0IHRoZSBkaXN0cmlidXRpb24gb2YgcmVsYXRpdmUgYW1vdW50IG9mIGNoYW5nZXMgZm9yIGVhY2gKIAlzdWItZGlyZWN0b3J5LiBUaGUgYmVoYXZpb3Igb2YgYC0tZGlyc3RhdGAgY2FuIGJlIGN1c3RvbWl6ZWQgYnkKQEAgLTE5Miw2ICsyMDMsMTIgQEAKIGFuZCBhY2N1bXVsYXRpbmcgY2hpbGQgZGlyZWN0b3J5IGNvdW50cyBpbiB0aGUgcGFyZW50IGRpcmVjdG9yaWVzOgogYC0tZGlyc3RhdD1maWxlcywxMCxjdW11bGF0aXZlYC4KIAorLS1jdW11bGF0aXZlOjoKKwlTeW5vbnltIGZvciAtLWRpcnN0YXQ9Y3VtdWxhdGl2ZQorCistLWRpcnN0YXQtYnktZmlsZVs9PHBhcmFtMSxwYXJhbTI+Li4uXTo6CisJU3lub255bSBmb3IgLS1kaXJzdGF0PWZpbGVzLHBhcmFtMSxwYXJhbTIuLi4KKwogLS1zdW1tYXJ5OjoKIAlPdXRwdXQgYSBjb25kZW5zZWQgc3VtbWFyeSBvZiBleHRlbmRlZCBoZWFkZXIgaW5mb3JtYXRpb24KIAlzdWNoIGFzIGNyZWF0aW9ucywgcmVuYW1lcyBhbmQgbW9kZSBjaGFuZ2VzLgpAQCAtMjkzLDggKzMxMCwxMiBAQAogCWBkaW1tZWRfemVicmFgIGlzIGEgZGVwcmVjYXRlZCBzeW5vbnltLgogLS0KIAorLS1uby1jb2xvci1tb3ZlZDo6CisJVHVybiBvZmYgbW92ZSBkZXRlY3Rpb24uIFRoaXMgY2FuIGJlIHVzZWQgdG8gb3ZlcnJpZGUgY29uZmlndXJhdGlvbgorCXNldHRpbmdzLiBJdCBpcyB0aGUgc2FtZSBhcyBgLS1jb2xvci1tb3ZlZD1ub2AuCisKIC0tY29sb3ItbW92ZWQtd3M9PG1vZGVzPjo6Ci0JVGhpcyBjb25maWd1cmVzIGhvdyB3aGl0ZSBzcGFjZXMgYXJlIGlnbm9yZWQgd2hlbiBwZXJmb3JtaW5nIHRoZQorCVRoaXMgY29uZmlndXJlcyBob3cgd2hpdGVzcGFjZSBpcyBpZ25vcmVkIHdoZW4gcGVyZm9ybWluZyB0aGUKIAltb3ZlIGRldGVjdGlvbiBmb3IgYC0tY29sb3ItbW92ZWRgLgogaWZkZWY6OmdpdC1kaWZmW10KIAlJdCBjYW4gYmUgc2V0IGJ5IHRoZSBgZGlmZi5jb2xvck1vdmVkV1NgIGNvbmZpZ3VyYXRpb24gc2V0dGluZy4KQEAgLTMwMiw2ICszMjMsOCBAQAogCVRoZXNlIG1vZGVzIGNhbiBiZSBnaXZlbiBhcyBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0OgogKwogLS0KK25vOjoKKwlEbyBub3QgaWdub3JlIHdoaXRlc3BhY2Ugd2hlbiBwZXJmb3JtaW5nIG1vdmUgZGV0ZWN0aW9uLgogaWdub3JlLXNwYWNlLWF0LWVvbDo6CiAJSWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSBhdCBFT0wuCiBpZ25vcmUtc3BhY2UtY2hhbmdlOjoKQEAgLTMxMiwxMiArMzM1LDE3IEBACiAJSWdub3JlIHdoaXRlc3BhY2Ugd2hlbiBjb21wYXJpbmcgbGluZXMuIFRoaXMgaWdub3JlcyBkaWZmZXJlbmNlcwogCWV2ZW4gaWYgb25lIGxpbmUgaGFzIHdoaXRlc3BhY2Ugd2hlcmUgdGhlIG90aGVyIGxpbmUgaGFzIG5vbmUuCiBhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2U6OgotCUluaXRpYWxseSBpZ25vcmUgYW55IHdoaXRlIHNwYWNlcyBpbiB0aGUgbW92ZSBkZXRlY3Rpb24sIHRoZW4KKwlJbml0aWFsbHkgaWdub3JlIGFueSB3aGl0ZXNwYWNlIGluIHRoZSBtb3ZlIGRldGVjdGlvbiwgdGhlbgogCWdyb3VwIHRoZSBtb3ZlZCBjb2RlIGJsb2NrcyBvbmx5IGludG8gYSBibG9jayBpZiB0aGUgY2hhbmdlIGluCiAJd2hpdGVzcGFjZSBpcyB0aGUgc2FtZSBwZXIgbGluZS4gVGhpcyBpcyBpbmNvbXBhdGlibGUgd2l0aCB0aGUKIAlvdGhlciBtb2Rlcy4KIC0tCiAKKy0tbm8tY29sb3ItbW92ZWQtd3M6OgorCURvIG5vdCBpZ25vcmUgd2hpdGVzcGFjZSB3aGVuIHBlcmZvcm1pbmcgbW92ZSBkZXRlY3Rpb24uIFRoaXMgY2FuIGJlCisJdXNlZCB0byBvdmVycmlkZSBjb25maWd1cmF0aW9uIHNldHRpbmdzLiBJdCBpcyB0aGUgc2FtZSBhcworCWAtLWNvbG9yLW1vdmVkLXdzPW5vYC4KKwogLS13b3JkLWRpZmZbPTxtb2RlPl06OgogCVNob3cgYSB3b3JkIGRpZmYsIHVzaW5nIHRoZSA8bW9kZT4gdG8gZGVsaW1pdCBjaGFuZ2VkIHdvcmRzLgogCUJ5IGRlZmF1bHQsIHdvcmRzIGFyZSBkZWxpbWl0ZWQgYnkgd2hpdGVzcGFjZTsgc2VlCkBAIC0zNzUsNiArNDAzLDkgQEAKIAlUdXJuIG9mZiByZW5hbWUgZGV0ZWN0aW9uLCBldmVuIHdoZW4gdGhlIGNvbmZpZ3VyYXRpb24KIAlmaWxlIGdpdmVzIHRoZSBkZWZhdWx0IHRvIGRvIHNvLgogCistLVtuby1dcmVuYW1lLWVtcHR5OjoKKwlXaGV0aGVyIHRvIHVzZSBlbXB0eSBibG9icyBhcyByZW5hbWUgc291cmNlLgorCiBpZm5kZWY6OmdpdC1mb3JtYXQtcGF0Y2hbXQogLS1jaGVjazo6CiAJV2FybiBpZiBjaGFuZ2VzIGludHJvZHVjZSBjb25mbGljdCBtYXJrZXJzIG9yIHdoaXRlc3BhY2UgZXJyb3JzLgpAQCAtNDA1LDcgKzQzNiw3IEBACiAKIC0tYmluYXJ5OjoKIAlJbiBhZGRpdGlvbiB0byBgLS1mdWxsLWluZGV4YCwgb3V0cHV0IGEgYmluYXJ5IGRpZmYgdGhhdAotCWNhbiBiZSBhcHBsaWVkIHdpdGggYGdpdC1hcHBseWAuCisJY2FuIGJlIGFwcGxpZWQgd2l0aCBgZ2l0LWFwcGx5YC4gSW1wbGllcyBgLS1wYXRjaGAuCiAKIC0tYWJicmV2Wz08bj5dOjoKIAlJbnN0ZWFkIG9mIHNob3dpbmcgdGhlIGZ1bGwgNDAtYnl0ZSBoZXhhZGVjaW1hbCBvYmplY3QKQEAgLTUyNCw2ICs1NTUsOCBAQAogY2FtZSBpbnRvIGJlaW5nOiB1c2UgdGhlIGZlYXR1cmUgaXRlcmF0aXZlbHkgdG8gZmVlZCB0aGUgaW50ZXJlc3RpbmcKIGJsb2NrIGluIHRoZSBwcmVpbWFnZSBiYWNrIGludG8gYC1TYCwgYW5kIGtlZXAgZ29pbmcgdW50aWwgeW91IGdldCB0aGUKIHZlcnkgZmlyc3QgdmVyc2lvbiBvZiB0aGUgYmxvY2suCisrCitCaW5hcnkgZmlsZXMgYXJlIHNlYXJjaGVkIGFzIHdlbGwuCiAKIC1HPHJlZ2V4Pjo6CiAJTG9vayBmb3IgZGlmZmVyZW5jZXMgd2hvc2UgcGF0Y2ggdGV4dCBjb250YWlucyBhZGRlZC9yZW1vdmVkCkBAIC01MzQsMTUgKzU2NywxOCBAQAogZmlsZToKICsKIC0tLS0KLSsgICAgcmV0dXJuICFyZWdleGVjKHJlZ2V4cCwgdHdvLT5wdHIsIDEsICZyZWdtYXRjaCwgMCk7CisrICAgIHJldHVybiBmcm90eihuaXRmb2wsIHR3by0+cHRyLCAxLCAwKTsKIC4uLgotLSAgICBoaXQgPSAhcmVnZXhlYyhyZWdleHAsIG1mMi5wdHIsIDEsICZyZWdtYXRjaCwgMCk7CistICAgIGhpdCA9IGZyb3R6KG5pdGZvbCwgbWYyLnB0ciwgMSwgMCk7CiAtLS0tCiArCi1XaGlsZSBgZ2l0IGxvZyAtRyJyZWdleGVjXChyZWdleHAiYCB3aWxsIHNob3cgdGhpcyBjb21taXQsIGBnaXQgbG9nCi0tUyJyZWdleGVjXChyZWdleHAiIC0tcGlja2F4ZS1yZWdleGAgd2lsbCBub3QgKGJlY2F1c2UgdGhlIG51bWJlciBvZgorV2hpbGUgYGdpdCBsb2cgLUciZnJvdHpcKG5pdGZvbCJgIHdpbGwgc2hvdyB0aGlzIGNvbW1pdCwgYGdpdCBsb2cKKy1TImZyb3R6XChuaXRmb2wiIC0tcGlja2F4ZS1yZWdleGAgd2lsbCBub3QgKGJlY2F1c2UgdGhlIG51bWJlciBvZgogb2NjdXJyZW5jZXMgb2YgdGhhdCBzdHJpbmcgZGlkIG5vdCBjaGFuZ2UpLgogKworVW5sZXNzIGAtLXRleHRgIGlzIHN1cHBsaWVkIHBhdGNoZXMgb2YgYmluYXJ5IGZpbGVzIHdpdGhvdXQgYSB0ZXh0Y29udgorZmlsdGVyIHdpbGwgYmUgaWdub3JlZC4KKysKIFNlZSB0aGUgJ3BpY2theGUnIGVudHJ5IGluIGxpbmtnaXQ6Z2l0ZGlmZmNvcmVbN10gZm9yIG1vcmUKIGluZm9ybWF0aW9uLgogCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2RvYy1kaWZmIGIvRG9jdW1lbnRhdGlvbi9kb2MtZGlmZgppbmRleCBkZmQ5NDE4Li4xNjk0MzAwIDEwMDc1NQotLS0gYS9Eb2N1bWVudGF0aW9uL2RvYy1kaWZmCisrKyBiL0RvY3VtZW50YXRpb24vZG9jLWRpZmYKQEAgLTEyLDkgKzEyLDE2IEBACiBkb2MtZGlmZiBbb3B0aW9uc10gPGZyb20+IDx0bz4gWy0tIDxkaWZmLW9wdGlvbnM+XQogZG9jLWRpZmYgKC1jfC0tY2xlYW4pCiAtLQotaj1uCXBhcmFsbGVsIGFyZ3VtZW50IHRvIHBhc3MgdG8gbWFrZQotZglmb3JjZSByZWJ1aWxkOyBkbyBub3QgcmVseSBvbiBjYWNoZWQgcmVzdWx0cwotYyxjbGVhbgljbGVhbnVwIHRlbXBvcmFyeSB3b3JraW5nIGZpbGVzCitqPW4JCQlwYXJhbGxlbCBhcmd1bWVudCB0byBwYXNzIHRvIG1ha2UKK2YJCQlmb3JjZSByZWJ1aWxkOyBkbyBub3QgcmVseSBvbiBjYWNoZWQgcmVzdWx0cworYyxjbGVhbgkJCWNsZWFudXAgdGVtcG9yYXJ5IHdvcmtpbmcgZmlsZXMKK2Zyb20tYXNjaWlkb2MJCXVzZSBhc2NpaWRvYyB3aXRoIHRoZSAnZnJvbSctY29tbWl0Citmcm9tLWFzY2lpZG9jdG9yCXVzZSBhc2NpaWRvY3RvciB3aXRoIHRoZSAnZnJvbSctY29tbWl0Cithc2NpaWRvYwkJdXNlIGFzY2lpZG9jIHdpdGggYm90aCBjb21taXRzCit0by1hc2NpaWRvYwkJdXNlIGFzY2lpZG9jIHdpdGggdGhlICd0byctY29tbWl0Cit0by1hc2NpaWRvY3RvcgkJdXNlIGFzY2lpZG9jdG9yIHdpdGggdGhlICd0byctY29tbWl0Cithc2NpaWRvY3RvcgkJdXNlIGFzY2lpZG9jdG9yIHdpdGggYm90aCBjb21taXRzCitjdXQtZm9vdGVyCQljdXQgYXdheSBmb290ZXIKICIKIFNVQkRJUkVDVE9SWV9PSz0xCiAuICIkKGdpdCAtLWV4ZWMtcGF0aCkvZ2l0LXNoLXNldHVwIgpAQCAtMjIsNiArMjksOSBAQAogcGFyYWxsZWw9CiBmb3JjZT0KIGNsZWFuPQorZnJvbV9wcm9ncmFtPQordG9fcHJvZ3JhbT0KK2N1dF9mb290ZXI9CiB3aGlsZSB0ZXN0ICQjIC1ndCAwCiBkbwogCWNhc2UgIiQxIiBpbgpAQCAtMzEsNiArNDEsMjIgQEAKIAkJY2xlYW49dCA7OwogCS1mKQogCQlmb3JjZT10IDs7CisJLS1mcm9tLWFzY2lpZG9jdG9yKQorCQlmcm9tX3Byb2dyYW09LWFzY2lpZG9jdG9yIDs7CisJLS10by1hc2NpaWRvY3RvcikKKwkJdG9fcHJvZ3JhbT0tYXNjaWlkb2N0b3IgOzsKKwktLWFzY2lpZG9jdG9yKQorCQlmcm9tX3Byb2dyYW09LWFzY2lpZG9jdG9yCisJCXRvX3Byb2dyYW09LWFzY2lpZG9jdG9yIDs7CisJLS1mcm9tLWFzY2lpZG9jKQorCQlmcm9tX3Byb2dyYW09LWFzY2lpZG9jIDs7CisJLS10by1hc2NpaWRvYykKKwkJdG9fcHJvZ3JhbT0tYXNjaWlkb2MgOzsKKwktLWFzY2lpZG9jKQorCQlmcm9tX3Byb2dyYW09LWFzY2lpZG9jCisJCXRvX3Byb2dyYW09LWFzY2lpZG9jIDs7CisJLS1jdXQtZm9vdGVyKQorCQljdXRfZm9vdGVyPS1jdXQtZm9vdGVyIDs7CiAJLS0pCiAJCXNoaWZ0OyBicmVhayA7OwogCSopCkBAIC0zOSw4ICs2NSw3IEBACiAJc2hpZnQKIGRvbmUKIAotY2RfdG9fdG9wbGV2ZWwKLXRtcD1Eb2N1bWVudGF0aW9uL3RtcC1kb2MtZGlmZgordG1wPSIkKGdpdCByZXYtcGFyc2UgLS1zaG93LXRvcGxldmVsKS9Eb2N1bWVudGF0aW9uL3RtcC1kb2MtZGlmZiIgfHwgZXhpdCAxCiAKIGlmIHRlc3QgLW4gIiRjbGVhbiIKIHRoZW4KQEAgLTgwLDEzICsxMDUsMjkgQEAKIAlsbiAtcyAiJGRvdHMvY29uZmlnLm1hayIgIiR0bXAvd29ya3RyZWUvY29uZmlnLm1hayIKIGZpCiAKK2NvbnN0cnVjdF9tYWtlbWFuZmxhZ3MgKCkgeworCWlmIHRlc3QgIiQxIiA9ICItYXNjaWlkb2MiCisJdGhlbgorCQllY2hvIFVTRV9BU0NJSURPQ1RPUj0KKwllbGlmIHRlc3QgIiQxIiA9ICItYXNjaWlkb2N0b3IiCisJdGhlbgorCQllY2hvIFVTRV9BU0NJSURPQ1RPUj1ZZXNQbGVhc2UKKwlmaQorfQorCitmcm9tX21ha2VtYW5mbGFncz0kKGNvbnN0cnVjdF9tYWtlbWFuZmxhZ3MgIiRmcm9tX3Byb2dyYW0iKSAmJgordG9fbWFrZW1hbmZsYWdzPSQoY29uc3RydWN0X21ha2VtYW5mbGFncyAiJHRvX3Byb2dyYW0iKSAmJgorCitmcm9tX2Rpcj0kZnJvbV9vaWQkZnJvbV9wcm9ncmFtJGN1dF9mb290ZXIgJiYKK3RvX2Rpcj0kdG9fb2lkJHRvX3Byb2dyYW0kY3V0X2Zvb3RlciAmJgorCiAjIGdlbmVyYXRlX3JlbmRlcl9tYWtlZmlsZSA8c3JjZGlyPiA8ZHN0ZGlyPgogZ2VuZXJhdGVfcmVuZGVyX21ha2VmaWxlICgpIHsKIAlmaW5kICIkMSIgLXR5cGUgZiB8CiAJd2hpbGUgcmVhZCBzcmMKIAlkbwogCQlkc3Q9JDIvJHtzcmMjJDEvfQotCQlwcmludGYgJ2FsbDo6ICVzXG4nICIkZHN0IgorCQlwcmludGYgJ2FsbDogJXNcbicgIiRkc3QiCiAJCXByaW50ZiAnJXM6ICVzXG4nICIkZHN0IiAiJHNyYyIKIAkJcHJpbnRmICdcdEBlY2hvID4mMiAiICBSRU5ERVIgJChub3RkaXIgJEApIiAmJiBcXFxuJwogCQlwcmludGYgJ1x0bWtkaXIgLXAgJChkaXIgJEApICYmIFxcXG4nCkBAIC05NSw3ICsxMzYsNyBAQAogCWRvbmUKIH0KIAotIyByZW5kZXJfdHJlZSA8Y29tbWl0dGlzaF9vaWQ+CisjIHJlbmRlcl90cmVlIDxjb21taXR0aXNoX29pZD4gPGRpcmVjdG9yeV9uYW1lPiA8bWFrZW1hbmZsYWdzPgogcmVuZGVyX3RyZWUgKCkgewogCSMgU2tpcCBpbnN0YWxsLW1hbiBlbnRpcmVseSBpZiB3ZSBhbHJlYWR5IGhhdmUgYW4gaW5zdGFsbGVkIGRpcmVjdG9yeS4KIAkjIFdlIGNhbid0IHJlbHkgb24gbWFrZSBoZXJlLCBzaW5jZSAiaW5zdGFsbC1tYW4iIHVuY29uZGl0aW9uYWxseQpAQCAtMTAzLDI4ICsxNDQsNDMgQEAKIAkjIHdlIHRoZW4gY2FuJ3QgcmVseSBvbiBkdXJpbmcgdGhlIHJlbmRlciBzdGVwKS4gV2UgdXNlICJtdiIgdG8gbWFrZQogCSMgc3VyZSB3ZSBkb24ndCBnZXQgY29uZnVzZWQgYnkgYSBwcmV2aW91cyBydW4gdGhhdCBmYWlsZWQgcGFydHdheQogCSMgdGhyb3VnaC4KLQlpZiAhIHRlc3QgLWQgIiR0bXAvaW5zdGFsbGVkLyQxIgorCW9pZD0kMSAmJgorCWRuYW1lPSQyICYmCisJbWFrZW1hbmZsYWdzPSQzICYmCisJaWYgISB0ZXN0IC1kICIkdG1wL2luc3RhbGxlZC8kZG5hbWUiCiAJdGhlbgotCQlnaXQgLUMgIiR0bXAvd29ya3RyZWUiIGNoZWNrb3V0IC0tZGV0YWNoICIkMSIgJiYKKwkJZ2l0IC1DICIkdG1wL3dvcmt0cmVlIiBjaGVja291dCAtLWRldGFjaCAiJG9pZCIgJiYKIAkJbWFrZSAtaiRwYXJhbGxlbCAtQyAiJHRtcC93b3JrdHJlZSIgXAorCQkJJG1ha2VtYW5mbGFncyBcCiAJCQlHSVRfVkVSU0lPTj1vbWl0dGVkIFwKIAkJCVNPVVJDRV9EQVRFX0VQT0NIPTAgXAotCQkJREVTVERJUj0iJFBXRC8kdG1wL2luc3RhbGxlZC8kMSsiIFwKKwkJCURFU1RESVI9IiR0bXAvaW5zdGFsbGVkLyRkbmFtZSsiIFwKIAkJCWluc3RhbGwtbWFuICYmCi0JCW12ICIkdG1wL2luc3RhbGxlZC8kMSsiICIkdG1wL2luc3RhbGxlZC8kMSIKKwkJbXYgIiR0bXAvaW5zdGFsbGVkLyRkbmFtZSsiICIkdG1wL2luc3RhbGxlZC8kZG5hbWUiCiAJZmkgJiYKIAogCSMgQXMgd2l0aCAiaW5zdGFsbGVkIiBhYm92ZSwgd2Ugc2tpcCB0aGUgcmVuZGVyIGlmIGl0J3MgYWxyZWFkeSBiZWVuCiAJIyBkb25lLiAgU28gdXNpbmcgbWFrZSBoZXJlIGlzIHByaW1hcmlseSBqdXN0IGFib3V0IHJ1bm5pbmcgaW4KIAkjIHBhcmFsbGVsLgotCWlmICEgdGVzdCAtZCAiJHRtcC9yZW5kZXJlZC8kMSIKKwlpZiAhIHRlc3QgLWQgIiR0bXAvcmVuZGVyZWQvJGRuYW1lIgogCXRoZW4KLQkJZ2VuZXJhdGVfcmVuZGVyX21ha2VmaWxlICIkdG1wL2luc3RhbGxlZC8kMSIgIiR0bXAvcmVuZGVyZWQvJDErIiB8CisJCWdlbmVyYXRlX3JlbmRlcl9tYWtlZmlsZSAiJHRtcC9pbnN0YWxsZWQvJGRuYW1lIiBcCisJCQkiJHRtcC9yZW5kZXJlZC8kZG5hbWUrIiB8CiAJCW1ha2UgLWokcGFyYWxsZWwgLWYgLSAmJgotCQltdiAiJHRtcC9yZW5kZXJlZC8kMSsiICIkdG1wL3JlbmRlcmVkLyQxIgorCQltdiAiJHRtcC9yZW5kZXJlZC8kZG5hbWUrIiAiJHRtcC9yZW5kZXJlZC8kZG5hbWUiCisKKwkJaWYgdGVzdCAiJGN1dF9mb290ZXIiID0gIi1jdXQtZm9vdGVyIgorCQl0aGVuCisJCQlmb3IgZiBpbiAkKGZpbmQgIiR0bXAvcmVuZGVyZWQvJGRuYW1lIiAtdHlwZSBmKQorCQkJZG8KKwkJCQloZWFkIC1uIC0yICIkZiIgfCBzZWQgLWUgJyR7L14kL2R9JyA+IiRmKyIgJiYKKwkJCQltdiAiJGYrIiAiJGYiIHx8CisJCQkJcmV0dXJuIDEKKwkJCWRvbmUKKwkJZmkKIAlmaQogfQogCi1yZW5kZXJfdHJlZSAkZnJvbV9vaWQgJiYKLXJlbmRlcl90cmVlICR0b19vaWQgJiYKLWdpdCAtQyAkdG1wL3JlbmRlcmVkIGRpZmYgLS1uby1pbmRleCAiJEAiICRmcm9tX29pZCAkdG9fb2lkCityZW5kZXJfdHJlZSAkZnJvbV9vaWQgJGZyb21fZGlyICRmcm9tX21ha2VtYW5mbGFncyAmJgorcmVuZGVyX3RyZWUgJHRvX29pZCAkdG9fZGlyICR0b19tYWtlbWFuZmxhZ3MgJiYKK2dpdCAtQyAkdG1wL3JlbmRlcmVkIGRpZmYgLS1uby1pbmRleCAiJEAiICRmcm9tX2RpciAkdG9fZGlyCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2ZldGNoLW9wdGlvbnMudHh0IGIvRG9jdW1lbnRhdGlvbi9mZXRjaC1vcHRpb25zLnR4dAppbmRleCBmYTBhMzE1Li4wMGQwM2VjIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2ZldGNoLW9wdGlvbnMudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZmV0Y2gtb3B0aW9ucy50eHQKQEAgLTYxLDEwICs2MSw4IEBACiBTZWUgYWxzbyB0aGUgYGZldGNoLm5lZ290aWF0aW9uQWxnb3JpdGhtYCBjb25maWd1cmF0aW9uIHZhcmlhYmxlCiBkb2N1bWVudGVkIGluIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXS4KIAotaWZuZGVmOjpnaXQtcHVsbFtdCiAtLWRyeS1ydW46OgogCVNob3cgd2hhdCB3b3VsZCBiZSBkb25lLCB3aXRob3V0IG1ha2luZyBhbnkgY2hhbmdlcy4KLWVuZGlmOjpnaXQtcHVsbFtdCiAKIC1mOjoKIC0tZm9yY2U6OgpAQCAtODgsNiArODYsMTUgQEAKIAlBbGxvdyBzZXZlcmFsIDxyZXBvc2l0b3J5PiBhbmQgPGdyb3VwPiBhcmd1bWVudHMgdG8gYmUKIAlzcGVjaWZpZWQuIE5vIDxyZWZzcGVjPnMgbWF5IGJlIHNwZWNpZmllZC4KIAorLS1bbm8tXWF1dG8tZ2M6OgorCVJ1biBgZ2l0IGdjIC0tYXV0b2AgYXQgdGhlIGVuZCB0byBwZXJmb3JtIGdhcmJhZ2UgY29sbGVjdGlvbgorCWlmIG5lZWRlZC4gVGhpcyBpcyBlbmFibGVkIGJ5IGRlZmF1bHQuCisKKy0tW25vLV13cml0ZS1jb21taXQtZ3JhcGg6OgorCVdyaXRlIGEgY29tbWl0LWdyYXBoIGFmdGVyIGZldGNoaW5nLiBUaGlzIG92ZXJyaWRlcyB0aGUgY29uZmlnCisJc2V0dGluZyBgZmV0Y2gud3JpdGVDb21taXRHcmFwaGAuCitlbmRpZjo6Z2l0LXB1bGxbXQorCiAtcDo6CiAtLXBydW5lOjoKIAlCZWZvcmUgZmV0Y2hpbmcsIHJlbW92ZSBhbnkgcmVtb3RlLXRyYWNraW5nIHJlZmVyZW5jZXMgdGhhdCBubwpAQCAtOTksNiArMTA2LDcgQEAKIAl3YXMgY2xvbmVkIHdpdGggdGhlIC0tbWlycm9yIG9wdGlvbiksIHRoZW4gdGhleSBhcmUgYWxzbwogCXN1YmplY3QgdG8gcHJ1bmluZy4gU3VwcGx5aW5nIGAtLXBydW5lLXRhZ3NgIGlzIGEgc2hvcnRoYW5kIGZvcgogCXByb3ZpZGluZyB0aGUgdGFnIHJlZnNwZWMuCitpZm5kZWY6OmdpdC1wdWxsW10KICsKIFNlZSB0aGUgUFJVTklORyBzZWN0aW9uIGJlbG93IGZvciBtb3JlIGRldGFpbHMuCiAKQEAgLTEyNSwxMyArMTMzLDE1IEBACiAJYmVoYXZpb3IgZm9yIGEgcmVtb3RlIG1heSBiZSBzcGVjaWZpZWQgd2l0aCB0aGUgcmVtb3RlLjxuYW1lPi50YWdPcHQKIAlzZXR0aW5nLiBTZWUgbGlua2dpdDpnaXQtY29uZmlnWzFdLgogCi1pZm5kZWY6OmdpdC1wdWxsW10KIC0tcmVmbWFwPTxyZWZzcGVjPjo6CiAJV2hlbiBmZXRjaGluZyByZWZzIGxpc3RlZCBvbiB0aGUgY29tbWFuZCBsaW5lLCB1c2UgdGhlCiAJc3BlY2lmaWVkIHJlZnNwZWMgKGNhbiBiZSBnaXZlbiBtb3JlIHRoYW4gb25jZSkgdG8gbWFwIHRoZQogCXJlZnMgdG8gcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzLCBpbnN0ZWFkIG9mIHRoZSB2YWx1ZXMgb2YKIAlgcmVtb3RlLiouZmV0Y2hgIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzIGZvciB0aGUgcmVtb3RlCi0JcmVwb3NpdG9yeS4gIFNlZSBzZWN0aW9uIG9uICJDb25maWd1cmVkIFJlbW90ZS10cmFja2luZworCXJlcG9zaXRvcnkuICBQcm92aWRpbmcgYW4gZW1wdHkgYDxyZWZzcGVjPmAgdG8gdGhlCisJYC0tcmVmbWFwYCBvcHRpb24gY2F1c2VzIEdpdCB0byBpZ25vcmUgdGhlIGNvbmZpZ3VyZWQKKwlyZWZzcGVjcyBhbmQgcmVseSBlbnRpcmVseSBvbiB0aGUgcmVmc3BlY3Mgc3VwcGxpZWQgYXMKKwljb21tYW5kLWxpbmUgYXJndW1lbnRzLiBTZWUgc2VjdGlvbiBvbiAiQ29uZmlndXJlZCBSZW1vdGUtdHJhY2tpbmcKIAlCcmFuY2hlcyIgZm9yIGRldGFpbHMuCiAKIC10OjoKQEAgLTE0Myw2ICsxNTMsNyBAQAogCWlzIHVzZWQgKHRob3VnaCB0YWdzIG1heSBiZSBwcnVuZWQgYW55d2F5IGlmIHRoZXkgYXJlIGFsc28gdGhlCiAJZGVzdGluYXRpb24gb2YgYW4gZXhwbGljaXQgcmVmc3BlYzsgc2VlIGAtLXBydW5lYCkuCiAKK2lmbmRlZjo6Z2l0LXB1bGxbXQogLS1yZWN1cnNlLXN1Ym1vZHVsZXNbPXllc3xvbi1kZW1hbmR8bm9dOjoKIAlUaGlzIG9wdGlvbiBjb250cm9scyBpZiBhbmQgdW5kZXIgd2hhdCBjb25kaXRpb25zIG5ldyBjb21taXRzIG9mCiAJcG9wdWxhdGVkIHN1Ym1vZHVsZXMgc2hvdWxkIGJlIGZldGNoZWQgdG9vLiBJdCBjYW4gYmUgdXNlZCBhcyBhCkBAIC0xNTMsMTggKzE2NCwzNCBAQAogCXdoZW4gdGhlIHN1cGVycHJvamVjdCByZXRyaWV2ZXMgYSBjb21taXQgdGhhdCB1cGRhdGVzIHRoZSBzdWJtb2R1bGUncwogCXJlZmVyZW5jZSB0byBhIGNvbW1pdCB0aGF0IGlzbid0IGFscmVhZHkgaW4gdGhlIGxvY2FsIHN1Ym1vZHVsZQogCWNsb25lLgorZW5kaWY6OmdpdC1wdWxsW10KIAogLWo6OgogLS1qb2JzPTxuPjo6Ci0JTnVtYmVyIG9mIHBhcmFsbGVsIGNoaWxkcmVuIHRvIGJlIHVzZWQgZm9yIGZldGNoaW5nIHN1Ym1vZHVsZXMuCi0JRWFjaCB3aWxsIGZldGNoIGZyb20gZGlmZmVyZW50IHN1Ym1vZHVsZXMsIHN1Y2ggdGhhdCBmZXRjaGluZyBtYW55Ci0Jc3VibW9kdWxlcyB3aWxsIGJlIGZhc3Rlci4gQnkgZGVmYXVsdCBzdWJtb2R1bGVzIHdpbGwgYmUgZmV0Y2hlZAotCW9uZSBhdCBhIHRpbWUuCisJTnVtYmVyIG9mIHBhcmFsbGVsIGNoaWxkcmVuIHRvIGJlIHVzZWQgZm9yIGFsbCBmb3JtcyBvZiBmZXRjaGluZy4KKysKK0lmIHRoZSBgLS1tdWx0aXBsZWAgb3B0aW9uIHdhcyBzcGVjaWZpZWQsIHRoZSBkaWZmZXJlbnQgcmVtb3RlcyB3aWxsIGJlIGZldGNoZWQKK2luIHBhcmFsbGVsLiBJZiBtdWx0aXBsZSBzdWJtb2R1bGVzIGFyZSBmZXRjaGVkLCB0aGV5IHdpbGwgYmUgZmV0Y2hlZCBpbgorcGFyYWxsZWwuIFRvIGNvbnRyb2wgdGhlbSBpbmRlcGVuZGVudGx5LCB1c2UgdGhlIGNvbmZpZyBzZXR0aW5ncworYGZldGNoLnBhcmFsbGVsYCBhbmQgYHN1Ym1vZHVsZS5mZXRjaEpvYnNgIChzZWUgbGlua2dpdDpnaXQtY29uZmlnWzFdKS4KKysKK1R5cGljYWxseSwgcGFyYWxsZWwgcmVjdXJzaXZlIGFuZCBtdWx0aS1yZW1vdGUgZmV0Y2hlcyB3aWxsIGJlIGZhc3Rlci4gQnkKK2RlZmF1bHQgZmV0Y2hlcyBhcmUgcGVyZm9ybWVkIHNlcXVlbnRpYWxseSwgbm90IGluIHBhcmFsbGVsLgogCitpZm5kZWY6OmdpdC1wdWxsW10KIC0tbm8tcmVjdXJzZS1zdWJtb2R1bGVzOjoKIAlEaXNhYmxlIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzICh0aGlzIGhhcyB0aGUgc2FtZSBlZmZlY3QgYXMKIAl1c2luZyB0aGUgYC0tcmVjdXJzZS1zdWJtb2R1bGVzPW5vYCBvcHRpb24pLgorZW5kaWY6OmdpdC1wdWxsW10KIAorLS1zZXQtdXBzdHJlYW06OgorCUlmIHRoZSByZW1vdGUgaXMgZmV0Y2hlZCBzdWNjZXNzZnVsbHksIHB1bGwgYW5kIGFkZCB1cHN0cmVhbQorCSh0cmFja2luZykgcmVmZXJlbmNlLCB1c2VkIGJ5IGFyZ3VtZW50LWxlc3MKKwlsaW5rZ2l0OmdpdC1wdWxsWzFdIGFuZCBvdGhlciBjb21tYW5kcy4gRm9yIG1vcmUgaW5mb3JtYXRpb24sCisJc2VlIGBicmFuY2guPG5hbWU+Lm1lcmdlYCBhbmQgYGJyYW5jaC48bmFtZT4ucmVtb3RlYCBpbgorCWxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXS4KKworaWZuZGVmOjpnaXQtcHVsbFtdCiAtLXN1Ym1vZHVsZS1wcmVmaXg9PHBhdGg+OjoKIAlQcmVwZW5kIDxwYXRoPiB0byBwYXRocyBwcmludGVkIGluIGluZm9ybWF0aXZlIG1lc3NhZ2VzCiAJc3VjaCBhcyAiRmV0Y2hpbmcgc3VibW9kdWxlIGZvbyIuICBUaGlzIG9wdGlvbiBpcyB1c2VkCkBAIC0yMTYsMTAgKzI0MywyNCBAQAogLS1zZXJ2ZXItb3B0aW9uPTxvcHRpb24+OjoKIAlUcmFuc21pdCB0aGUgZ2l2ZW4gc3RyaW5nIHRvIHRoZSBzZXJ2ZXIgd2hlbiBjb21tdW5pY2F0aW5nIHVzaW5nCiAJcHJvdG9jb2wgdmVyc2lvbiAyLiAgVGhlIGdpdmVuIHN0cmluZyBtdXN0IG5vdCBjb250YWluIGEgTlVMIG9yIExGCi0JY2hhcmFjdGVyLgorCWNoYXJhY3Rlci4gIFRoZSBzZXJ2ZXIncyBoYW5kbGluZyBvZiBzZXJ2ZXIgb3B0aW9ucywgaW5jbHVkaW5nCisJdW5rbm93biBvbmVzLCBpcyBzZXJ2ZXItc3BlY2lmaWMuCiAJV2hlbiBtdWx0aXBsZSBgLS1zZXJ2ZXItb3B0aW9uPTxvcHRpb24+YCBhcmUgZ2l2ZW4sIHRoZXkgYXJlIGFsbAogCXNlbnQgdG8gdGhlIG90aGVyIHNpZGUgaW4gdGhlIG9yZGVyIGxpc3RlZCBvbiB0aGUgY29tbWFuZCBsaW5lLgogCistLXNob3ctZm9yY2VkLXVwZGF0ZXM6OgorCUJ5IGRlZmF1bHQsIGdpdCBjaGVja3MgaWYgYSBicmFuY2ggaXMgZm9yY2UtdXBkYXRlZCBkdXJpbmcKKwlmZXRjaC4gVGhpcyBjYW4gYmUgZGlzYWJsZWQgdGhyb3VnaCBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcywgYnV0CisJdGhlIC0tc2hvdy1mb3JjZWQtdXBkYXRlcyBvcHRpb24gZ3VhcmFudGVlcyB0aGlzIGNoZWNrIG9jY3Vycy4KKwlTZWUgbGlua2dpdDpnaXQtY29uZmlnWzFdLgorCistLW5vLXNob3ctZm9yY2VkLXVwZGF0ZXM6OgorCUJ5IGRlZmF1bHQsIGdpdCBjaGVja3MgaWYgYSBicmFuY2ggaXMgZm9yY2UtdXBkYXRlZCBkdXJpbmcKKwlmZXRjaC4gUGFzcyAtLW5vLXNob3ctZm9yY2VkLXVwZGF0ZXMgb3Igc2V0IGZldGNoLnNob3dGb3JjZWRVcGRhdGVzCisJdG8gZmFsc2UgdG8gc2tpcCB0aGlzIGNoZWNrIGZvciBwZXJmb3JtYW5jZSByZWFzb25zLiBJZiB1c2VkIGR1cmluZworCSdnaXQtcHVsbCcgdGhlIC0tZmYtb25seSBvcHRpb24gd2lsbCBzdGlsbCBjaGVjayBmb3IgZm9yY2VkIHVwZGF0ZXMKKwliZWZvcmUgYXR0ZW1wdGluZyBhIGZhc3QtZm9yd2FyZCB1cGRhdGUuIFNlZSBsaW5rZ2l0OmdpdC1jb25maWdbMV0uCisKIC00OjoKIC0taXB2NDo6CiAJVXNlIElQdjQgYWRkcmVzc2VzIG9ubHksIGlnbm9yaW5nIElQdjYgYWRkcmVzc2VzLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtYWRkLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWFkZC50eHQKaW5kZXggNDU2NTJmZS4uYmU1ZTNhYyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtYWRkLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1hZGQudHh0CkBAIC0xMSw3ICsxMSw4IEBACiAnZ2l0IGFkZCcgWy0tdmVyYm9zZSB8IC12XSBbLS1kcnktcnVuIHwgLW5dIFstLWZvcmNlIHwgLWZdIFstLWludGVyYWN0aXZlIHwgLWldIFstLXBhdGNoIHwgLXBdCiAJICBbLS1lZGl0IHwgLWVdIFstLVtuby1dYWxsIHwgLS1bbm8tXWlnbm9yZS1yZW1vdmFsIHwgWy0tdXBkYXRlIHwgLXVdXQogCSAgWy0taW50ZW50LXRvLWFkZCB8IC1OXSBbLS1yZWZyZXNoXSBbLS1pZ25vcmUtZXJyb3JzXSBbLS1pZ25vcmUtbWlzc2luZ10gWy0tcmVub3JtYWxpemVdCi0JICBbLS1jaG1vZD0oK3wtKXhdIFstLV0gWzxwYXRoc3BlYz4uLi5dCisJICBbLS1jaG1vZD0oK3wtKXhdIFstLXBhdGhzcGVjLWZyb20tZmlsZT08ZmlsZT4gWy0tcGF0aHNwZWMtZmlsZS1udWxdXQorCSAgWy0tXSBbPHBhdGhzcGVjPi4uLl0KIAogREVTQ1JJUFRJT04KIC0tLS0tLS0tLS0tCkBAIC01OCw5ICs1OSw5IEBACiAJc3BlY2lmeWluZyBgZGlyYCB3aWxsIHJlY29yZCBub3QganVzdCBhIGZpbGUgYGRpci9maWxlMWAKIAltb2RpZmllZCBpbiB0aGUgd29ya2luZyB0cmVlLCBhIGZpbGUgYGRpci9maWxlMmAgYWRkZWQgdG8KIAl0aGUgd29ya2luZyB0cmVlLCBidXQgYWxzbyBhIGZpbGUgYGRpci9maWxlM2AgcmVtb3ZlZCBmcm9tCi0JdGhlIHdvcmtpbmcgdHJlZS4gIE5vdGUgdGhhdCBvbGRlciB2ZXJzaW9ucyBvZiBHaXQgdXNlZAorCXRoZSB3b3JraW5nIHRyZWUpLiBOb3RlIHRoYXQgb2xkZXIgdmVyc2lvbnMgb2YgR2l0IHVzZWQKIAl0byBpZ25vcmUgcmVtb3ZlZCBmaWxlczsgdXNlIGAtLW5vLWFsbGAgb3B0aW9uIGlmIHlvdSB3YW50Ci0JdG8gYWRkIG1vZGlmaWVkIG9yIG5ldyBmaWxlcyBidXQgaWdub3JlIHJlbW92ZWQJb25lcy4KKwl0byBhZGQgbW9kaWZpZWQgb3IgbmV3IGZpbGVzIGJ1dCBpZ25vcmUgcmVtb3ZlZCBvbmVzLgogKwogRm9yIG1vcmUgZGV0YWlscyBhYm91dCB0aGUgPHBhdGhzcGVjPiBzeW50YXgsIHNlZSB0aGUgJ3BhdGhzcGVjJyBlbnRyeQogaW4gbGlua2dpdDpnaXRnbG9zc2FyeVs3XS4KQEAgLTEyNCw3ICsxMjUsNyBAQAogLS1uby1pZ25vcmUtcmVtb3ZhbDo6CiAJVXBkYXRlIHRoZSBpbmRleCBub3Qgb25seSB3aGVyZSB0aGUgd29ya2luZyB0cmVlIGhhcyBhIGZpbGUKIAltYXRjaGluZyA8cGF0aHNwZWM+IGJ1dCBhbHNvIHdoZXJlIHRoZSBpbmRleCBhbHJlYWR5IGhhcyBhbgotCWVudHJ5LglUaGlzIGFkZHMsIG1vZGlmaWVzLCBhbmQgcmVtb3ZlcyBpbmRleCBlbnRyaWVzIHRvCisJZW50cnkuIFRoaXMgYWRkcywgbW9kaWZpZXMsIGFuZCByZW1vdmVzIGluZGV4IGVudHJpZXMgdG8KIAltYXRjaCB0aGUgd29ya2luZyB0cmVlLgogKwogSWYgbm8gPHBhdGhzcGVjPiBpcyBnaXZlbiB3aGVuIGAtQWAgb3B0aW9uIGlzIHVzZWQsIGFsbApAQCAtMTg3LDI2ICsxODgsMzAgQEAKIAliaXQgaXMgb25seSBjaGFuZ2VkIGluIHRoZSBpbmRleCwgdGhlIGZpbGVzIG9uIGRpc2sgYXJlIGxlZnQKIAl1bmNoYW5nZWQuCiAKKy0tcGF0aHNwZWMtZnJvbS1maWxlPTxmaWxlPjo6CisJUGF0aHNwZWMgaXMgcGFzc2VkIGluIGA8ZmlsZT5gIGluc3RlYWQgb2YgY29tbWFuZGxpbmUgYXJncy4gSWYKKwlgPGZpbGU+YCBpcyBleGFjdGx5IGAtYCB0aGVuIHN0YW5kYXJkIGlucHV0IGlzIHVzZWQuIFBhdGhzcGVjCisJZWxlbWVudHMgYXJlIHNlcGFyYXRlZCBieSBMRiBvciBDUi9MRi4gUGF0aHNwZWMgZWxlbWVudHMgY2FuIGJlCisJcXVvdGVkIGFzIGV4cGxhaW5lZCBmb3IgdGhlIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYGNvcmUucXVvdGVQYXRoYAorCShzZWUgbGlua2dpdDpnaXQtY29uZmlnWzFdKS4gU2VlIGFsc28gYC0tcGF0aHNwZWMtZmlsZS1udWxgIGFuZAorCWdsb2JhbCBgLS1saXRlcmFsLXBhdGhzcGVjc2AuCisKKy0tcGF0aHNwZWMtZmlsZS1udWw6OgorCU9ubHkgbWVhbmluZ2Z1bCB3aXRoIGAtLXBhdGhzcGVjLWZyb20tZmlsZWAuIFBhdGhzcGVjIGVsZW1lbnRzIGFyZQorCXNlcGFyYXRlZCB3aXRoIE5VTCBjaGFyYWN0ZXIgYW5kIGFsbCBvdGhlciBjaGFyYWN0ZXJzIGFyZSB0YWtlbgorCWxpdGVyYWxseSAoaW5jbHVkaW5nIG5ld2xpbmVzIGFuZCBxdW90ZXMpLgorCiBcLS06OgogCVRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIHRvIHNlcGFyYXRlIGNvbW1hbmQtbGluZSBvcHRpb25zIGZyb20KIAl0aGUgbGlzdCBvZiBmaWxlcywgKHVzZWZ1bCB3aGVuIGZpbGVuYW1lcyBtaWdodCBiZSBtaXN0YWtlbgogCWZvciBjb21tYW5kLWxpbmUgb3B0aW9ucykuCiAKIAotQ09ORklHVVJBVElPTgotLS0tLS0tLS0tLS0tLQotCi1UaGUgb3B0aW9uYWwgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBgY29yZS5leGNsdWRlc0ZpbGVgIGluZGljYXRlcyBhIHBhdGggdG8gYQotZmlsZSBjb250YWluaW5nIHBhdHRlcm5zIG9mIGZpbGUgbmFtZXMgdG8gZXhjbHVkZSBmcm9tIGdpdC1hZGQsIHNpbWlsYXIgdG8KLSRHSVRfRElSL2luZm8vZXhjbHVkZS4gIFBhdHRlcm5zIGluIHRoZSBleGNsdWRlIGZpbGUgYXJlIHVzZWQgaW4gYWRkaXRpb24gdG8KLXRob3NlIGluIGluZm8vZXhjbHVkZS4gIFNlZSBsaW5rZ2l0OmdpdGlnbm9yZVs1XS4KLQotCiBFWEFNUExFUwogLS0tLS0tLS0KIAogKiBBZGRzIGNvbnRlbnQgZnJvbSBhbGwgYCoudHh0YCBmaWxlcyB1bmRlciBgRG9jdW1lbnRhdGlvbmAgZGlyZWN0b3J5Ci1hbmQgaXRzIHN1YmRpcmVjdG9yaWVzOgorICBhbmQgaXRzIHN1YmRpcmVjdG9yaWVzOgogKwogLS0tLS0tLS0tLS0tCiAkIGdpdCBhZGQgRG9jdW1lbnRhdGlvbi9cKi50eHQKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWFtLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWFtLnR4dAppbmRleCA2ZjZjMzRiLi5hYjU3NTRlIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1hbS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtYW0udHh0CkBAIC0xNiw3ICsxNiw3IEBACiAJIFstLWV4Y2x1ZGU9PHBhdGg+XSBbLS1pbmNsdWRlPTxwYXRoPl0gWy0tcmVqZWN0XSBbLXEgfCAtLXF1aWV0XQogCSBbLS1bbm8tXXNjaXNzb3JzXSBbLVNbPGtleWlkPl1dIFstLXBhdGNoLWZvcm1hdD08Zm9ybWF0Pl0KIAkgWyg8bWJveD4gfCA8TWFpbGRpcj4pLi4uXQotJ2dpdCBhbScgKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0IHwgLS1xdWl0IHwgLS1zaG93LWN1cnJlbnQtcGF0Y2gpCisnZ2l0IGFtJyAoLS1jb250aW51ZSB8IC0tc2tpcCB8IC0tYWJvcnQgfCAtLXF1aXQgfCAtLXNob3ctY3VycmVudC1wYXRjaFs9KGRpZmZ8cmF3KV0pCiAKIERFU0NSSVBUSU9OCiAtLS0tLS0tLS0tLQpAQCAtOTksNiArOTksMTEgQEAKIAlhbS50aHJlZVdheSBjb25maWd1cmF0aW9uIHZhcmlhYmxlLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwKIAlzZWUgYW0udGhyZWVXYXkgaW4gbGlua2dpdDpnaXQtY29uZmlnWzFdLgogCistLXJlcmVyZS1hdXRvdXBkYXRlOjoKKy0tbm8tcmVyZXJlLWF1dG91cGRhdGU6OgorCUFsbG93IHRoZSByZXJlcmUgbWVjaGFuaXNtIHRvIHVwZGF0ZSB0aGUgaW5kZXggd2l0aCB0aGUKKwlyZXN1bHQgb2YgYXV0by1jb25mbGljdCByZXNvbHV0aW9uIGlmIHBvc3NpYmxlLgorCiAtLWlnbm9yZS1zcGFjZS1jaGFuZ2U6OgogLS1pZ25vcmUtd2hpdGVzcGFjZTo6CiAtLXdoaXRlc3BhY2U9PG9wdGlvbj46OgpAQCAtMTcxLDkgKzE3NiwxMSBAQAogCUFib3J0IHRoZSBwYXRjaGluZyBvcGVyYXRpb24gYnV0IGtlZXAgSEVBRCBhbmQgdGhlIGluZGV4CiAJdW50b3VjaGVkLgogCi0tLXNob3ctY3VycmVudC1wYXRjaDo6Ci0JU2hvdyB0aGUgcGF0Y2ggYmVpbmcgYXBwbGllZCB3aGVuICJnaXQgYW0iIGlzIHN0b3BwZWQgYmVjYXVzZQotCW9mIGNvbmZsaWN0cy4KKy0tc2hvdy1jdXJyZW50LXBhdGNoWz0oZGlmZnxyYXcpXTo6CisJU2hvdyB0aGUgbWVzc2FnZSBhdCB3aGljaCBgZ2l0IGFtYCBoYXMgc3RvcHBlZCBkdWUgdG8KKwljb25mbGljdHMuICBJZiBgcmF3YCBpcyBzcGVjaWZpZWQsIHNob3cgdGhlIHJhdyBjb250ZW50cyBvZgorCXRoZSBlLW1haWwgbWVzc2FnZTsgaWYgYGRpZmZgLCBzaG93IHRoZSBkaWZmIHBvcnRpb24gb25seS4KKwlEZWZhdWx0cyB0byBgcmF3YC4KIAogRElTQ1VTU0lPTgogLS0tLS0tLS0tLQpAQCAtMTg1LDggKzE5Miw4IEBACiBUaGUgIlN1YmplY3Q6ICIgbGluZSBpcyBzdXBwb3NlZCB0byBjb25jaXNlbHkgZGVzY3JpYmUgd2hhdCB0aGUKIGNvbW1pdCBpcyBhYm91dCBpbiBvbmUgbGluZSBvZiB0ZXh0LgogCi0iRnJvbTogIiBhbmQgIlN1YmplY3Q6ICIgbGluZXMgc3RhcnRpbmcgdGhlIGJvZHkgb3ZlcnJpZGUgdGhlIHJlc3BlY3RpdmUKLWNvbW1pdCBhdXRob3IgbmFtZSBhbmQgdGl0bGUgdmFsdWVzIHRha2VuIGZyb20gdGhlIGhlYWRlcnMuCisiRnJvbTogIiwgIkRhdGU6ICIsIGFuZCAiU3ViamVjdDogIiBsaW5lcyBzdGFydGluZyB0aGUgYm9keSBvdmVycmlkZSB0aGUKK3Jlc3BlY3RpdmUgY29tbWl0IGF1dGhvciBuYW1lIGFuZCB0aXRsZSB2YWx1ZXMgdGFrZW4gZnJvbSB0aGUgaGVhZGVycy4KIAogVGhlIGNvbW1pdCBtZXNzYWdlIGlzIGZvcm1lZCBieSB0aGUgdGl0bGUgdGFrZW4gZnJvbSB0aGUKICJTdWJqZWN0OiAiLCBhIGJsYW5rIGxpbmUgYW5kIHRoZSBib2R5IG9mIHRoZSBtZXNzYWdlIHVwIHRvCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1iaXNlY3QtbGsyMDA5LnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWJpc2VjdC1sazIwMDkudHh0CmluZGV4IGU5OTkyNTEuLjNiYTQ5ZTggMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWJpc2VjdC1sazIwMDkudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWJpc2VjdC1sazIwMDkudHh0CkBAIC0xNTgsNyArMTU4LDcgQEAKIHN1cHBvc2VkIHRvIGJlIHVzZWQgc28gdGhhdCBhbGwgdGhlIHRlc3RzIGFyZSBjaGVja2VkIGFmdGVyIGVhY2gKIGNvbW1pdC4gVGhpcyBtZWFucyB0aGF0IHRoZXkgYXJlIG5vdCB2ZXJ5IGVmZmljaWVudCwgYmVjYXVzZSBtYW55CiB0ZXN0cyBhcmUgcnVuIGZvciBubyBpbnRlcmVzdGluZyByZXN1bHQsIGFuZCB0aGV5IHN1ZmZlciBmcm9tCi1jb21iaW5hdGlvbmFsIGV4cGxvc2lvbi4KK2NvbWJpbmF0b3JpYWwgZXhwbG9zaW9uLgogCiBJbiBmYWN0IHRoZSBwcm9ibGVtIGlzIHRoYXQgYmlnIHNvZnR3YXJlIG9mdGVuIGhhcyBtYW55IGRpZmZlcmVudAogY29uZmlndXJhdGlvbiBvcHRpb25zIGFuZCB0aGF0IGVhY2ggdGVzdCBjYXNlIHNob3VsZCBwYXNzIGZvciBlYWNoCkBAIC0xMzUwLDkgKzEzNTAsOSBAQAogLSBbW1sxXV1dIGh0dHBzOi8vd3d3Lm5pc3QuZ292L3NpdGVzL2RlZmF1bHQvZmlsZXMvZG9jdW1lbnRzL2RpcmVjdG9yL3BsYW5uaW5nL3JlcG9ydDAyLTMucGRmWydUaGUgRWNvbm9taWMgSW1wYWN0cyBvZiBJbmFkZXF1YXRlIEluZnJhdHJ1Y3R1cmUgZm9yIFNvZnR3YXJlIFRlc3RpbmcnLiAgTmlzdCBQbGFubmluZyBSZXBvcnQgMDItM10sIHNlZSBFeGVjdXRpdmUgU3VtbWFyeSBhbmQgQ2hhcHRlciA4LgogLSBbW1syXV1dIGh0dHA6Ly93d3cub3JhY2xlLmNvbS90ZWNobmV0d29yay9qYXZhL2NvZGVjb252dG9jLTEzNjA1Ny5odG1sWydDb2RlIENvbnZlbnRpb25zIGZvciB0aGUgSmF2YSBQcm9ncmFtbWluZyBMYW5ndWFnZScuIFN1biBNaWNyb3N5c3RlbXMuXQogLSBbW1szXV1dIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1NvZnR3YXJlX21haW50ZW5hbmNlWydTb2Z0d2FyZSBtYWludGVuYW5jZScuIFdpa2lwZWRpYS5dCi0tIFtbWzRdXV0gaHR0cHM6Ly9wdWJsaWMtaW5ib3gub3JnL2dpdC83dnBzNXhzYndwLmZzZl8tX0Bhc3NpZ25lZC1ieS1kaGNwLmNveC5uZXQvW0p1bmlvIEMgSGFtYW5vLiAnQXV0b21hdGVkIGJpc2VjdCBzdWNjZXNzIHN0b3J5Jy5dCistIFtbWzRdXV0gaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvZ2l0Lzd2cHM1eHNid3AuZnNmXy1fQGFzc2lnbmVkLWJ5LWRoY3AuY294Lm5ldC9bSnVuaW8gQyBIYW1hbm8uICdBdXRvbWF0ZWQgYmlzZWN0IHN1Y2Nlc3Mgc3RvcnknLl0KIC0gW1tbNV1dXSBodHRwczovL2x3bi5uZXQvQXJ0aWNsZXMvMzE3MTU0L1tDaHJpc3RpYW4gQ291ZGVyLiAnRnVsbHkgYXV0b21hdGVkIGJpc2VjdGluZyB3aXRoICJnaXQgYmlzZWN0IHJ1biInLiBMV04ubmV0Ll0KIC0gW1tbNl1dXSBodHRwczovL2x3bi5uZXQvQXJ0aWNsZXMvMjc3ODcyL1tKb25hdGhhbiBDb3JiZXQuICdCaXNlY3Rpb24gZGl2aWRlcyB1c2VycyBhbmQgZGV2ZWxvcGVycycuIExXTi5uZXQuXQotLSBbW1s3XV1dIGh0dHA6Ly9tYXJjLmluZm8vP2w9bGludXgta2VybmVsJm09MTE5NzAyNzUzNDExNjgwJnc9MltJbmdvIE1vbG5hci4gJ1JlOiBCVUcgMi42LjIzLXJjMyBjYW4ndCBzZWUgc2QgcGFydGl0aW9ucyBvbiBBbHBoYScuIExpbnV4LWtlcm5lbCBtYWlsaW5nIGxpc3QuXQorLSBbW1s3XV1dIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2xrbWwvMjAwNzEyMDcxMTM3MzQuR0ExNDU5OEBlbHRlLmh1L1tJbmdvIE1vbG5hci4gJ1JlOiBCVUcgMi42LjIzLXJjMyBjYW4ndCBzZWUgc2QgcGFydGl0aW9ucyBvbiBBbHBoYScuIExpbnV4LWtlcm5lbCBtYWlsaW5nIGxpc3QuXQogLSBbW1s4XV1dIGh0dHBzOi8vd3d3Lmtlcm5lbC5vcmcvcHViL3NvZnR3YXJlL3NjbS9naXQvZG9jcy9naXQtYmlzZWN0Lmh0bWxbSnVuaW8gQyBIYW1hbm8gYW5kIHRoZSBnaXQtbGlzdC4gJ2dpdC1iaXNlY3QoMSkgTWFudWFsIFBhZ2UnLiBMaW51eCBLZXJuZWwgQXJjaGl2ZXMuXQogLSBbW1s5XV1dIGh0dHBzOi8vZ2l0aHViLmNvbS9FYWxkd3VsZi9iYmNob3BbRWFsZHd1bGYuICdiYmNob3AnLiBHaXRIdWIuXQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtYmlzZWN0LnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWJpc2VjdC50eHQKaW5kZXggNGI0NWQ4My4uNzU4NmM1YSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtYmlzZWN0LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1iaXNlY3QudHh0CkBAIC00MTMsNyArNDEzLDcgQEAKIAogIyB0d2VhayB0aGUgd29ya2luZyB0cmVlIGJ5IG1lcmdpbmcgdGhlIGhvdC1maXggYnJhbmNoCiAjIGFuZCB0aGVuIGF0dGVtcHQgYSBidWlsZAotaWYJZ2l0IG1lcmdlIC0tbm8tY29tbWl0IGhvdC1maXggJiYKK2lmCWdpdCBtZXJnZSAtLW5vLWNvbW1pdCAtLW5vLWZmIGhvdC1maXggJiYKIAltYWtlCiB0aGVuCiAJIyBydW4gcHJvamVjdCBzcGVjaWZpYyB0ZXN0IGFuZCByZXBvcnQgaXRzIHN0YXR1cwpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtYmxhbWUudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtYmxhbWUudHh0CmluZGV4IDE2MzIzZWIuLjdlODE1NDEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWJsYW1lLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1ibGFtZS50eHQKQEAgLTEwLDYgKzEwLDcgQEAKIFt2ZXJzZV0KICdnaXQgYmxhbWUnIFstY10gWy1iXSBbLWxdIFstLXJvb3RdIFstdF0gWy1mXSBbLW5dIFstc10gWy1lXSBbLXBdIFstd10gWy0taW5jcmVtZW50YWxdCiAJICAgIFstTCA8cmFuZ2U+XSBbLVMgPHJldnMtZmlsZT5dIFstTV0gWy1DXSBbLUNdIFstQ10gWy0tc2luY2U9PGRhdGU+XQorCSAgICBbLS1pZ25vcmUtcmV2IDxyZXY+XSBbLS1pZ25vcmUtcmV2cy1maWxlIDxmaWxlPl0KIAkgICAgWy0tcHJvZ3Jlc3NdIFstLWFiYnJldj08bj5dIFs8cmV2PiB8IC0tY29udGVudHMgPGZpbGU+IHwgLS1yZXZlcnNlIDxyZXY+Li48cmV2Pl0KIAkgICAgWy0tXSA8ZmlsZT4KIApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtYnJhbmNoLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWJyYW5jaC50eHQKaW5kZXggYmY1MzE2Zi4uMTM1MjA2ZiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtYnJhbmNoLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1icmFuY2gudHh0CkBAIC04LDEyICs4LDE0IEBACiBTWU5PUFNJUwogLS0tLS0tLS0KIFt2ZXJzZV0KLSdnaXQgYnJhbmNoJyBbLS1jb2xvcls9PHdoZW4+XSB8IC0tbm8tY29sb3JdIFstciB8IC1hXQotCVstLWxpc3RdIFstdiBbLS1hYmJyZXY9PGxlbmd0aD4gfCAtLW5vLWFiYnJldl1dCisnZ2l0IGJyYW5jaCcgWy0tY29sb3JbPTx3aGVuPl0gfCAtLW5vLWNvbG9yXSBbLS1zaG93LWN1cnJlbnRdCisJWy12IFstLWFiYnJldj08bGVuZ3RoPiB8IC0tbm8tYWJicmV2XV0KIAlbLS1jb2x1bW5bPTxvcHRpb25zPl0gfCAtLW5vLWNvbHVtbl0gWy0tc29ydD08a2V5Pl0KIAlbKC0tbWVyZ2VkIHwgLS1uby1tZXJnZWQpIFs8Y29tbWl0Pl1dCiAJWy0tY29udGFpbnMgWzxjb21taXRdXSBbLS1uby1jb250YWlucyBbPGNvbW1pdD5dXQotCVstLXBvaW50cy1hdCA8b2JqZWN0Pl0gWy0tZm9ybWF0PTxmb3JtYXQ+XSBbPHBhdHRlcm4+Li4uXQorCVstLXBvaW50cy1hdCA8b2JqZWN0Pl0gWy0tZm9ybWF0PTxmb3JtYXQ+XQorCVsoLXIgfCAtLXJlbW90ZXMpIHwgKC1hIHwgLS1hbGwpXQorCVstLWxpc3RdIFs8cGF0dGVybj4uLi5dCiAnZ2l0IGJyYW5jaCcgWy0tdHJhY2sgfCAtLW5vLXRyYWNrXSBbLWZdIDxicmFuY2huYW1lPiBbPHN0YXJ0LXBvaW50Pl0KICdnaXQgYnJhbmNoJyAoLS1zZXQtdXBzdHJlYW0tdG89PHVwc3RyZWFtPiB8IC11IDx1cHN0cmVhbT4pIFs8YnJhbmNobmFtZT5dCiAnZ2l0IGJyYW5jaCcgLS11bnNldC11cHN0cmVhbSBbPGJyYW5jaG5hbWU+XQpAQCAtMjYsMTMgKzI4LDE5IEBACiAtLS0tLS0tLS0tLQogCiBJZiBgLS1saXN0YCBpcyBnaXZlbiwgb3IgaWYgdGhlcmUgYXJlIG5vIG5vbi1vcHRpb24gYXJndW1lbnRzLCBleGlzdGluZwotYnJhbmNoZXMgYXJlIGxpc3RlZDsgdGhlIGN1cnJlbnQgYnJhbmNoIHdpbGwgYmUgaGlnaGxpZ2h0ZWQgd2l0aCBhbgotYXN0ZXJpc2suICBPcHRpb24gYC1yYCBjYXVzZXMgdGhlIHJlbW90ZS10cmFja2luZyBicmFuY2hlcyB0byBiZSBsaXN0ZWQsCi1hbmQgb3B0aW9uIGAtYWAgc2hvd3MgYm90aCBsb2NhbCBhbmQgcmVtb3RlIGJyYW5jaGVzLiBJZiBhIGA8cGF0dGVybj5gCiticmFuY2hlcyBhcmUgbGlzdGVkOyB0aGUgY3VycmVudCBicmFuY2ggd2lsbCBiZSBoaWdobGlnaHRlZCBpbiBncmVlbiBhbmQKK21hcmtlZCB3aXRoIGFuIGFzdGVyaXNrLiAgQW55IGJyYW5jaGVzIGNoZWNrZWQgb3V0IGluIGxpbmtlZCB3b3JrdHJlZXMgd2lsbAorYmUgaGlnaGxpZ2h0ZWQgaW4gY3lhbiBhbmQgbWFya2VkIHdpdGggYSBwbHVzIHNpZ24uIE9wdGlvbiBgLXJgIGNhdXNlcyB0aGUKK3JlbW90ZS10cmFja2luZyBicmFuY2hlcyB0byBiZSBsaXN0ZWQsCithbmQgb3B0aW9uIGAtYWAgc2hvd3MgYm90aCBsb2NhbCBhbmQgcmVtb3RlIGJyYW5jaGVzLgorCitJZiBhIGA8cGF0dGVybj5gCiBpcyBnaXZlbiwgaXQgaXMgdXNlZCBhcyBhIHNoZWxsIHdpbGRjYXJkIHRvIHJlc3RyaWN0IHRoZSBvdXRwdXQgdG8KIG1hdGNoaW5nIGJyYW5jaGVzLiBJZiBtdWx0aXBsZSBwYXR0ZXJucyBhcmUgZ2l2ZW4sIGEgYnJhbmNoIGlzIHNob3duIGlmCi1pdCBtYXRjaGVzIGFueSBvZiB0aGUgcGF0dGVybnMuICBOb3RlIHRoYXQgd2hlbiBwcm92aWRpbmcgYQotYDxwYXR0ZXJuPmAsIHlvdSBtdXN0IHVzZSBgLS1saXN0YDsgb3RoZXJ3aXNlIHRoZSBjb21tYW5kIGlzIGludGVycHJldGVkCitpdCBtYXRjaGVzIGFueSBvZiB0aGUgcGF0dGVybnMuCisKK05vdGUgdGhhdCB3aGVuIHByb3ZpZGluZyBhCitgPHBhdHRlcm4+YCwgeW91IG11c3QgdXNlIGAtLWxpc3RgOyBvdGhlcndpc2UgdGhlIGNvbW1hbmQgbWF5IGJlIGludGVycHJldGVkCiBhcyBicmFuY2ggY3JlYXRpb24uCiAKIFdpdGggYC0tY29udGFpbnNgLCBzaG93cyBvbmx5IHRoZSBicmFuY2hlcyB0aGF0IGNvbnRhaW4gdGhlIG5hbWVkIGNvbW1pdApAQCAtNDUsMTAgKzUzLDE0IEBACiBicmFuY2gpLgogCiBUaGUgY29tbWFuZCdzIHNlY29uZCBmb3JtIGNyZWF0ZXMgYSBuZXcgYnJhbmNoIGhlYWQgbmFtZWQgPGJyYW5jaG5hbWU+Ci13aGljaCBwb2ludHMgdG8gdGhlIGN1cnJlbnQgYEhFQURgLCBvciA8c3RhcnQtcG9pbnQ+IGlmIGdpdmVuLgord2hpY2ggcG9pbnRzIHRvIHRoZSBjdXJyZW50IGBIRUFEYCwgb3IgPHN0YXJ0LXBvaW50PiBpZiBnaXZlbi4gQXMgYQorc3BlY2lhbCBjYXNlLCBmb3IgPHN0YXJ0LXBvaW50PiwgeW91IG1heSB1c2UgYCJBLi4uQiJgIGFzIGEgc2hvcnRjdXQgZm9yCit0aGUgbWVyZ2UgYmFzZSBvZiBgQWAgYW5kIGBCYCBpZiB0aGVyZSBpcyBleGFjdGx5IG9uZSBtZXJnZSBiYXNlLiBZb3UKK2NhbiBsZWF2ZSBvdXQgYXQgbW9zdCBvbmUgb2YgYEFgIGFuZCBgQmAsIGluIHdoaWNoIGNhc2UgaXQgZGVmYXVsdHMgdG8KK2BIRUFEYC4KIAogTm90ZSB0aGF0IHRoaXMgd2lsbCBjcmVhdGUgdGhlIG5ldyBicmFuY2gsIGJ1dCBpdCB3aWxsIG5vdCBzd2l0Y2ggdGhlCi13b3JraW5nIHRyZWUgdG8gaXQ7IHVzZSAiZ2l0IGNoZWNrb3V0IDxuZXdicmFuY2g+IiB0byBzd2l0Y2ggdG8gdGhlCit3b3JraW5nIHRyZWUgdG8gaXQ7IHVzZSAiZ2l0IHN3aXRjaCA8bmV3YnJhbmNoPiIgdG8gc3dpdGNoIHRvIHRoZQogbmV3IGJyYW5jaC4KIAogV2hlbiBhIGxvY2FsIGJyYW5jaCBpcyBzdGFydGVkIG9mZiBhIHJlbW90ZS10cmFja2luZyBicmFuY2gsIEdpdCBzZXRzIHVwIHRoZQpAQCAtMTQ5LDEwICsxNjEsMTIgQEAKIC1yOjoKIC0tcmVtb3Rlczo6CiAJTGlzdCBvciBkZWxldGUgKGlmIHVzZWQgd2l0aCAtZCkgdGhlIHJlbW90ZS10cmFja2luZyBicmFuY2hlcy4KKwlDb21iaW5lIHdpdGggYC0tbGlzdGAgdG8gbWF0Y2ggdGhlIG9wdGlvbmFsIHBhdHRlcm4ocykuCiAKIC1hOjoKIC0tYWxsOjoKIAlMaXN0IGJvdGggcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIGFuZCBsb2NhbCBicmFuY2hlcy4KKwlDb21iaW5lIHdpdGggYC0tbGlzdGAgdG8gbWF0Y2ggb3B0aW9uYWwgcGF0dGVybihzKS4KIAogLWw6OgogLS1saXN0OjoKQEAgLTE2MCwxNCArMTc0LDIwIEBACiAJYnJhbmNoIC0tbGlzdCAnbWFpbnQtKidgLCBsaXN0IG9ubHkgdGhlIGJyYW5jaGVzIHRoYXQgbWF0Y2gKIAl0aGUgcGF0dGVybihzKS4KIAorLS1zaG93LWN1cnJlbnQ6OgorCVByaW50IHRoZSBuYW1lIG9mIHRoZSBjdXJyZW50IGJyYW5jaC4gSW4gZGV0YWNoZWQgSEVBRCBzdGF0ZSwKKwlub3RoaW5nIGlzIHByaW50ZWQuCisKIC12OjoKIC12djo6CiAtLXZlcmJvc2U6OgogCVdoZW4gaW4gbGlzdCBtb2RlLAogCXNob3cgc2hhMSBhbmQgY29tbWl0IHN1YmplY3QgbGluZSBmb3IgZWFjaCBoZWFkLCBhbG9uZyB3aXRoCiAJcmVsYXRpb25zaGlwIHRvIHVwc3RyZWFtIGJyYW5jaCAoaWYgYW55KS4gSWYgZ2l2ZW4gdHdpY2UsIHByaW50Ci0JdGhlIG5hbWUgb2YgdGhlIHVwc3RyZWFtIGJyYW5jaCwgYXMgd2VsbCAoc2VlIGFsc28gYGdpdCByZW1vdGUKLQlzaG93IDxyZW1vdGU+YCkuCisJdGhlIHBhdGggb2YgdGhlIGxpbmtlZCB3b3JrdHJlZSAoaWYgYW55KSBhbmQgdGhlIG5hbWUgb2YgdGhlIHVwc3RyZWFtCisJYnJhbmNoLCBhcyB3ZWxsIChzZWUgYWxzbyBgZ2l0IHJlbW90ZSBzaG93IDxyZW1vdGU+YCkuICBOb3RlIHRoYXQgdGhlCisJY3VycmVudCB3b3JrdHJlZSdzIEhFQUQgd2lsbCBub3QgaGF2ZSBpdHMgcGF0aCBwcmludGVkIChpdCB3aWxsIGFsd2F5cworCWJlIHlvdXIgY3VycmVudCBkaXJlY3RvcnkpLgogCiAtcTo6CiAtLXF1aWV0OjoKQEAgLTE5NCw3ICsyMTQsNyBAQAogKwogVGhpcyBiZWhhdmlvciBpcyB0aGUgZGVmYXVsdCB3aGVuIHRoZSBzdGFydCBwb2ludCBpcyBhIHJlbW90ZS10cmFja2luZyBicmFuY2guCiBTZXQgdGhlIGJyYW5jaC5hdXRvU2V0dXBNZXJnZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIHRvIGBmYWxzZWAgaWYgeW91Ci13YW50IGBnaXQgY2hlY2tvdXRgIGFuZCBgZ2l0IGJyYW5jaGAgdG8gYWx3YXlzIGJlaGF2ZSBhcyBpZiBgLS1uby10cmFja2AKK3dhbnQgYGdpdCBzd2l0Y2hgLCBgZ2l0IGNoZWNrb3V0YCBhbmQgYGdpdCBicmFuY2hgIHRvIGFsd2F5cyBiZWhhdmUgYXMgaWYgYC0tbm8tdHJhY2tgCiB3ZXJlIGdpdmVuLiBTZXQgaXQgdG8gYGFsd2F5c2AgaWYgeW91IHdhbnQgdGhpcyBiZWhhdmlvciB3aGVuIHRoZQogc3RhcnQtcG9pbnQgaXMgZWl0aGVyIGEgbG9jYWwgb3IgcmVtb3RlLXRyYWNraW5nIGJyYW5jaC4KIApAQCAtMjkzLDExICszMTMsMTEgQEAKICQgZ2l0IGNsb25lIGdpdDovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vLi4uL2xpbnV4LTIuNiBteTIuNgogJCBjZCBteTIuNgogJCBnaXQgYnJhbmNoIG15Mi42LjE0IHYyLjYuMTQgICA8MT4KLSQgZ2l0IGNoZWNrb3V0IG15Mi42LjE0CiskIGdpdCBzd2l0Y2ggbXkyLjYuMTQKIC0tLS0tLS0tLS0tLQogKwogPDE+IFRoaXMgc3RlcCBhbmQgdGhlIG5leHQgb25lIGNvdWxkIGJlIGNvbWJpbmVkIGludG8gYSBzaW5nbGUgc3RlcCB3aXRoCi0iY2hlY2tvdXQgLWIgbXkyLjYuMTQgdjIuNi4xNCIuCisgICAgImNoZWNrb3V0IC1iIG15Mi42LjE0IHYyLjYuMTQiLgogCiBEZWxldGUgYW4gdW5uZWVkZWQgYnJhbmNoOjoKICsKQEAgLTMwOSwxOCArMzI5LDMwIEBACiAtLS0tLS0tLS0tLS0KICsKIDwxPiBEZWxldGUgdGhlIHJlbW90ZS10cmFja2luZyBicmFuY2hlcyAidG9kbyIsICJodG1sIiBhbmQgIm1hbiIuIFRoZSBuZXh0Ci0nZmV0Y2gnIG9yICdwdWxsJyB3aWxsIGNyZWF0ZSB0aGVtIGFnYWluIHVubGVzcyB5b3UgY29uZmlndXJlIHRoZW0gbm90IHRvLgotU2VlIGxpbmtnaXQ6Z2l0LWZldGNoWzFdLgorICAgICdmZXRjaCcgb3IgJ3B1bGwnIHdpbGwgY3JlYXRlIHRoZW0gYWdhaW4gdW5sZXNzIHlvdSBjb25maWd1cmUgdGhlbSBub3QgdG8uCisgICAgU2VlIGxpbmtnaXQ6Z2l0LWZldGNoWzFdLgogPDI+IERlbGV0ZSB0aGUgInRlc3QiIGJyYW5jaCBldmVuIGlmIHRoZSAibWFzdGVyIiBicmFuY2ggKG9yIHdoaWNoZXZlciBicmFuY2gKLWlzIGN1cnJlbnRseSBjaGVja2VkIG91dCkgZG9lcyBub3QgaGF2ZSBhbGwgY29tbWl0cyBmcm9tIHRoZSB0ZXN0IGJyYW5jaC4KKyAgICBpcyBjdXJyZW50bHkgY2hlY2tlZCBvdXQpIGRvZXMgbm90IGhhdmUgYWxsIGNvbW1pdHMgZnJvbSB0aGUgdGVzdCBicmFuY2guCiAKK0xpc3RpbmcgYnJhbmNoZXMgZnJvbSBhIHNwZWNpZmljIHJlbW90ZTo6CisrCistLS0tLS0tLS0tLS0KKyQgZ2l0IGJyYW5jaCAtciAtbCAnPHJlbW90ZT4vPHBhdHRlcm4+JyAgICAgICAgICAgICAgICAgPDE+CiskIGdpdCBmb3ItZWFjaC1yZWYgJ3JlZnMvcmVtb3Rlcy88cmVtb3RlPi88cGF0dGVybj4nICAgIDwyPgorLS0tLS0tLS0tLS0tCisrCis8MT4gVXNpbmcgYC1hYCB3b3VsZCBjb25mbGF0ZSA8cmVtb3RlPiB3aXRoIGFueSBsb2NhbCBicmFuY2hlcyB5b3UgaGFwcGVuIHRvCisgICAgaGF2ZSBiZWVuIHByZWZpeGVkIHdpdGggdGhlIHNhbWUgPHJlbW90ZT4gcGF0dGVybi4KKzwyPiBgZm9yLWVhY2gtcmVmYCBjYW4gdGFrZSBhIHdpZGUgcmFuZ2Ugb2Ygb3B0aW9ucy4gU2VlIGxpbmtnaXQ6Z2l0LWZvci1lYWNoLXJlZlsxXQorCitQYXR0ZXJucyB3aWxsIG5vcm1hbGx5IG5lZWQgcXVvdGluZy4KIAogTk9URVMKIC0tLS0tCiAKLUlmIHlvdSBhcmUgY3JlYXRpbmcgYSBicmFuY2ggdGhhdCB5b3Ugd2FudCB0byBjaGVja291dCBpbW1lZGlhdGVseSwgaXQgaXMKLWVhc2llciB0byB1c2UgdGhlIGdpdCBjaGVja291dCBjb21tYW5kIHdpdGggaXRzIGAtYmAgb3B0aW9uIHRvIGNyZWF0ZQotYSBicmFuY2ggYW5kIGNoZWNrIGl0IG91dCB3aXRoIGEgc2luZ2xlIGNvbW1hbmQuCitJZiB5b3UgYXJlIGNyZWF0aW5nIGEgYnJhbmNoIHRoYXQgeW91IHdhbnQgdG8gc3dpdGNoIHRvIGltbWVkaWF0ZWx5LAoraXQgaXMgZWFzaWVyIHRvIHVzZSB0aGUgImdpdCBzd2l0Y2giIGNvbW1hbmQgd2l0aCBpdHMgYC1jYCBvcHRpb24gdG8KK2RvIHRoZSBzYW1lIHRoaW5nIHdpdGggYSBzaW5nbGUgY29tbWFuZC4KIAogVGhlIG9wdGlvbnMgYC0tY29udGFpbnNgLCBgLS1uby1jb250YWluc2AsIGAtLW1lcmdlZGAgYW5kIGAtLW5vLW1lcmdlZGAKIHNlcnZlIGZvdXIgcmVsYXRlZCBidXQgZGlmZmVyZW50IHB1cnBvc2VzOgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtYnVuZGxlLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWJ1bmRsZS50eHQKaW5kZXggN2Q2YzlkYy4uZDM0YjA5NiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtYnVuZGxlLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1idW5kbGUudHh0CkBAIC05LDggKzksOCBAQAogU1lOT1BTSVMKIC0tLS0tLS0tCiBbdmVyc2VdCi0nZ2l0IGJ1bmRsZScgY3JlYXRlIDxmaWxlPiA8Z2l0LXJldi1saXN0LWFyZ3M+Ci0nZ2l0IGJ1bmRsZScgdmVyaWZ5IDxmaWxlPgorJ2dpdCBidW5kbGUnIGNyZWF0ZSBbLXEgfCAtLXF1aWV0IHwgLS1wcm9ncmVzcyB8IC0tYWxsLXByb2dyZXNzXSBbLS1hbGwtcHJvZ3Jlc3MtaW1wbGllZF0gPGZpbGU+IDxnaXQtcmV2LWxpc3QtYXJncz4KKydnaXQgYnVuZGxlJyB2ZXJpZnkgWy1xIHwgLS1xdWlldF0gPGZpbGU+CiAnZ2l0IGJ1bmRsZScgbGlzdC1oZWFkcyA8ZmlsZT4gWzxyZWZuYW1lPi4uLl0KICdnaXQgYnVuZGxlJyB1bmJ1bmRsZSA8ZmlsZT4gWzxyZWZuYW1lPi4uLl0KIApAQCAtMjAsMTEgKzIwLDE0IEBACiBTb21lIHdvcmtmbG93cyByZXF1aXJlIHRoYXQgb25lIG9yIG1vcmUgYnJhbmNoZXMgb2YgZGV2ZWxvcG1lbnQgb24gb25lCiBtYWNoaW5lIGJlIHJlcGxpY2F0ZWQgb24gYW5vdGhlciBtYWNoaW5lLCBidXQgdGhlIHR3byBtYWNoaW5lcyBjYW5ub3QKIGJlIGRpcmVjdGx5IGNvbm5lY3RlZCwgYW5kIHRoZXJlZm9yZSB0aGUgaW50ZXJhY3RpdmUgR2l0IHByb3RvY29scyAoZ2l0LAotc3NoLCBodHRwKSBjYW5ub3QgYmUgdXNlZC4gIFRoaXMgY29tbWFuZCBwcm92aWRlcyBzdXBwb3J0IGZvcgotJ2dpdCBmZXRjaCcgYW5kICdnaXQgcHVsbCcgdG8gb3BlcmF0ZSBieSBwYWNrYWdpbmcgb2JqZWN0cyBhbmQgcmVmZXJlbmNlcwotaW4gYW4gYXJjaGl2ZSBhdCB0aGUgb3JpZ2luYXRpbmcgbWFjaGluZSwgdGhlbiBpbXBvcnRpbmcgdGhvc2UgaW50bwotYW5vdGhlciByZXBvc2l0b3J5IHVzaW5nICdnaXQgZmV0Y2gnIGFuZCAnZ2l0IHB1bGwnCi1hZnRlciBtb3ZpbmcgdGhlIGFyY2hpdmUgYnkgc29tZSBtZWFucyAoZS5nLiwgYnkgc25lYWtlcm5ldCkuICBBcyBubworc3NoLCBodHRwKSBjYW5ub3QgYmUgdXNlZC4KKworVGhlICdnaXQgYnVuZGxlJyBjb21tYW5kIHBhY2thZ2VzIG9iamVjdHMgYW5kIHJlZmVyZW5jZXMgaW4gYW4gYXJjaGl2ZQorYXQgdGhlIG9yaWdpbmF0aW5nIG1hY2hpbmUsIHdoaWNoIGNhbiB0aGVuIGJlIGltcG9ydGVkIGludG8gYW5vdGhlcgorcmVwb3NpdG9yeSB1c2luZyAnZ2l0IGZldGNoJywgJ2dpdCBwdWxsJywgb3IgJ2dpdCBjbG9uZScsCithZnRlciBtb3ZpbmcgdGhlIGFyY2hpdmUgYnkgc29tZSBtZWFucyAoZS5nLiwgYnkgc25lYWtlcm5ldCkuCisKK0FzIG5vCiBkaXJlY3QgY29ubmVjdGlvbiBiZXR3ZWVuIHRoZSByZXBvc2l0b3JpZXMgZXhpc3RzLCB0aGUgdXNlciBtdXN0IHNwZWNpZnkgYQogYmFzaXMgZm9yIHRoZSBidW5kbGUgdGhhdCBpcyBoZWxkIGJ5IHRoZSBkZXN0aW5hdGlvbiByZXBvc2l0b3J5OiB0aGUKIGJ1bmRsZSBhc3N1bWVzIHRoYXQgYWxsIG9iamVjdHMgaW4gdGhlIGJhc2lzIGFyZSBhbHJlYWR5IGluIHRoZQpAQCAtMzMsOSArMzYsMTEgQEAKIE9QVElPTlMKIC0tLS0tLS0KIAotY3JlYXRlIDxmaWxlPjo6CitjcmVhdGUgW29wdGlvbnNdIDxmaWxlPiA8Z2l0LXJldi1saXN0LWFyZ3M+OjoKIAlVc2VkIHRvIGNyZWF0ZSBhIGJ1bmRsZSBuYW1lZCAnZmlsZScuICBUaGlzIHJlcXVpcmVzIHRoZQotCSdnaXQtcmV2LWxpc3QtYXJncycgYXJndW1lbnRzIHRvIGRlZmluZSB0aGUgYnVuZGxlIGNvbnRlbnRzLgorCSc8Z2l0LXJldi1saXN0LWFyZ3M+JyBhcmd1bWVudHMgdG8gZGVmaW5lIHRoZSBidW5kbGUgY29udGVudHMuCisJJ29wdGlvbnMnIGNvbnRhaW5zIHRoZSBvcHRpb25zIHNwZWNpZmljIHRvIHRoZSAnZ2l0IGJ1bmRsZSBjcmVhdGUnCisJc3ViY29tbWFuZC4KIAogdmVyaWZ5IDxmaWxlPjo6CiAJVXNlZCB0byBjaGVjayB0aGF0IGEgYnVuZGxlIGZpbGUgaXMgdmFsaWQgYW5kIHdpbGwgYXBwbHkKQEAgLTc1LDYgKzgwLDMzIEBACiAJbmVjZXNzYXJpbHkgZXZlcnl0aGluZyBpbiB0aGUgcGFjayAoaW4gdGhpcyBjYXNlLCAnZ2l0IGJ1bmRsZScgYWN0cwogCWxpa2UgJ2dpdCBmZXRjaC1wYWNrJykuCiAKKy0tcHJvZ3Jlc3M6OgorCVByb2dyZXNzIHN0YXR1cyBpcyByZXBvcnRlZCBvbiB0aGUgc3RhbmRhcmQgZXJyb3Igc3RyZWFtCisJYnkgZGVmYXVsdCB3aGVuIGl0IGlzIGF0dGFjaGVkIHRvIGEgdGVybWluYWwsIHVubGVzcyAtcQorCWlzIHNwZWNpZmllZC4gVGhpcyBmbGFnIGZvcmNlcyBwcm9ncmVzcyBzdGF0dXMgZXZlbiBpZgorCXRoZSBzdGFuZGFyZCBlcnJvciBzdHJlYW0gaXMgbm90IGRpcmVjdGVkIHRvIGEgdGVybWluYWwuCisKKy0tYWxsLXByb2dyZXNzOjoKKwlXaGVuIC0tc3Rkb3V0IGlzIHNwZWNpZmllZCB0aGVuIHByb2dyZXNzIHJlcG9ydCBpcworCWRpc3BsYXllZCBkdXJpbmcgdGhlIG9iamVjdCBjb3VudCBhbmQgY29tcHJlc3Npb24gcGhhc2VzCisJYnV0IGluaGliaXRlZCBkdXJpbmcgdGhlIHdyaXRlLW91dCBwaGFzZS4gVGhlIHJlYXNvbiBpcworCXRoYXQgaW4gc29tZSBjYXNlcyB0aGUgb3V0cHV0IHN0cmVhbSBpcyBkaXJlY3RseSBsaW5rZWQKKwl0byBhbm90aGVyIGNvbW1hbmQgd2hpY2ggbWF5IHdpc2ggdG8gZGlzcGxheSBwcm9ncmVzcworCXN0YXR1cyBvZiBpdHMgb3duIGFzIGl0IHByb2Nlc3NlcyBpbmNvbWluZyBwYWNrIGRhdGEuCisJVGhpcyBmbGFnIGlzIGxpa2UgLS1wcm9ncmVzcyBleGNlcHQgdGhhdCBpdCBmb3JjZXMgcHJvZ3Jlc3MKKwlyZXBvcnQgZm9yIHRoZSB3cml0ZS1vdXQgcGhhc2UgYXMgd2VsbCBldmVuIGlmIC0tc3Rkb3V0IGlzCisJdXNlZC4KKworLS1hbGwtcHJvZ3Jlc3MtaW1wbGllZDo6CisJVGhpcyBpcyB1c2VkIHRvIGltcGx5IC0tYWxsLXByb2dyZXNzIHdoZW5ldmVyIHByb2dyZXNzIGRpc3BsYXkKKwlpcyBhY3RpdmF0ZWQuICBVbmxpa2UgLS1hbGwtcHJvZ3Jlc3MgdGhpcyBmbGFnIGRvZXNuJ3QgYWN0dWFsbHkKKwlmb3JjZSBhbnkgcHJvZ3Jlc3MgZGlzcGxheSBieSBpdHNlbGYuCisKKy1xOjoKKy0tcXVpZXQ6OgorCVRoaXMgZmxhZyBtYWtlcyB0aGUgY29tbWFuZCBub3QgdG8gcmVwb3J0IGl0cyBwcm9ncmVzcworCW9uIHRoZSBzdGFuZGFyZCBlcnJvciBzdHJlYW0uCisKIFNQRUNJRllJTkcgUkVGRVJFTkNFUwogLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKQEAgLTkyLDYgKzEyNCwxNCBAQAogdG8gY29udGFpbiBvYmplY3RzIGFscmVhZHkgaW4gdGhlIGRlc3RpbmF0aW9uLCBhcyB0aGVzZSBhcmUgaWdub3JlZAogd2hlbiB1bnBhY2tpbmcgYXQgdGhlIGRlc3RpbmF0aW9uLgogCitgZ2l0IGNsb25lYCBjYW4gdXNlIGFueSBidW5kbGUgY3JlYXRlZCB3aXRob3V0IG5lZ2F0aXZlIHJlZnNwZWNzCisoZS5nLiwgYG5ld2AsIGJ1dCBub3QgYG9sZC4ubmV3YCkuCitJZiB5b3Ugd2FudCB0byBtYXRjaCBgZ2l0IGNsb25lIC0tbWlycm9yYCwgd2hpY2ggd291bGQgaW5jbHVkZSB5b3VyCityZWZzIHN1Y2ggYXMgYHJlZnMvcmVtb3Rlcy8qYCwgdXNlIGAtLWFsbGAuCitJZiB5b3Ugd2FudCB0byBwcm92aWRlIHRoZSBzYW1lIHNldCBvZiByZWZzIHRoYXQgYSBjbG9uZSBkaXJlY3RseQorZnJvbSB0aGUgc291cmNlIHJlcG9zaXRvcnkgd291bGQgZ2V0LCB1c2UgYC0tYnJhbmNoZXMgLS10YWdzYCBmb3IKK3RoZSBgPGdpdC1yZXYtbGlzdC1hcmdzPmAuCisKIEVYQU1QTEVTCiAtLS0tLS0tLQogCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1jYXQtZmlsZS50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1jYXQtZmlsZS50eHQKaW5kZXggNzQwMTMzMy4uOGVjYTY3MSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtY2F0LWZpbGUudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWNhdC1maWxlLnR4dApAQCAtMjMsOCArMjMsOCBAQAogc3RkaW4sIGFuZCB0aGUgU0hBLTEsIHR5cGUsIGFuZCBzaXplIG9mIGVhY2ggb2JqZWN0IGlzIHByaW50ZWQgb24gc3Rkb3V0LiBUaGUKIG91dHB1dCBmb3JtYXQgY2FuIGJlIG92ZXJyaWRkZW4gdXNpbmcgdGhlIG9wdGlvbmFsIGA8Zm9ybWF0PmAgYXJndW1lbnQuIElmCiBlaXRoZXIgYC0tdGV4dGNvbnZgIG9yIGAtLWZpbHRlcnNgIHdhcyBzcGVjaWZpZWQsIHRoZSBpbnB1dCBpcyBleHBlY3RlZCB0bwotbGlzdCB0aGUgb2JqZWN0IG5hbWVzIGZvbGxvd2VkIGJ5IHRoZSBwYXRoIG5hbWUsIHNlcGFyYXRlZCBieSBhIHNpbmdsZSB3aGl0ZQotc3BhY2UsIHNvIHRoYXQgdGhlIGFwcHJvcHJpYXRlIGRyaXZlcnMgY2FuIGJlIGRldGVybWluZWQuCitsaXN0IHRoZSBvYmplY3QgbmFtZXMgZm9sbG93ZWQgYnkgdGhlIHBhdGggbmFtZSwgc2VwYXJhdGVkIGJ5IGEgc2luZ2xlCit3aGl0ZXNwYWNlLCBzbyB0aGF0IHRoZSBhcHByb3ByaWF0ZSBkcml2ZXJzIGNhbiBiZSBkZXRlcm1pbmVkLgogCiBPUFRJT05TCiAtLS0tLS0tCkBAIC03OSw3ICs3OSw3IEBACiAJUHJpbnQgb2JqZWN0IGluZm9ybWF0aW9uIGFuZCBjb250ZW50cyBmb3IgZWFjaCBvYmplY3QgcHJvdmlkZWQKIAlvbiBzdGRpbi4gIE1heSBub3QgYmUgY29tYmluZWQgd2l0aCBhbnkgb3RoZXIgb3B0aW9ucyBvciBhcmd1bWVudHMKIAlleGNlcHQgYC0tdGV4dGNvbnZgIG9yIGAtLWZpbHRlcnNgLCBpbiB3aGljaCBjYXNlIHRoZSBpbnB1dCBsaW5lcwotCWFsc28gbmVlZCB0byBzcGVjaWZ5IHRoZSBwYXRoLCBzZXBhcmF0ZWQgYnkgd2hpdGUgc3BhY2UuICBTZWUgdGhlCisJYWxzbyBuZWVkIHRvIHNwZWNpZnkgdGhlIHBhdGgsIHNlcGFyYXRlZCBieSB3aGl0ZXNwYWNlLiAgU2VlIHRoZQogCXNlY3Rpb24gYEJBVENIIE9VVFBVVGAgYmVsb3cgZm9yIGRldGFpbHMuCiAKIC0tYmF0Y2gtY2hlY2s6OgpAQCAtODcsNyArODcsNyBAQAogCVByaW50IG9iamVjdCBpbmZvcm1hdGlvbiBmb3IgZWFjaCBvYmplY3QgcHJvdmlkZWQgb24gc3RkaW4uICBNYXkKIAlub3QgYmUgY29tYmluZWQgd2l0aCBhbnkgb3RoZXIgb3B0aW9ucyBvciBhcmd1bWVudHMgZXhjZXB0CiAJYC0tdGV4dGNvbnZgIG9yIGAtLWZpbHRlcnNgLCBpbiB3aGljaCBjYXNlIHRoZSBpbnB1dCBsaW5lcyBhbHNvCi0JbmVlZCB0byBzcGVjaWZ5IHRoZSBwYXRoLCBzZXBhcmF0ZWQgYnkgd2hpdGUgc3BhY2UuICBTZWUgdGhlCisJbmVlZCB0byBzcGVjaWZ5IHRoZSBwYXRoLCBzZXBhcmF0ZWQgYnkgd2hpdGVzcGFjZS4gIFNlZSB0aGUKIAlzZWN0aW9uIGBCQVRDSCBPVVRQVVRgIGJlbG93IGZvciBkZXRhaWxzLgogCiAtLWJhdGNoLWFsbC1vYmplY3RzOjoKQEAgLTI1Miw2ICsyNTIsMTIgQEAKIDxvYmplY3Q+IFNQIG1pc3NpbmcgTEYKIC0tLS0tLS0tLS0tLQogCitJZiBhIG5hbWUgaXMgc3BlY2lmaWVkIHRoYXQgbWlnaHQgcmVmZXIgdG8gbW9yZSB0aGFuIG9uZSBvYmplY3QgKGFuIGFtYmlndW91cyBzaG9ydCBzaGEpLCB0aGVuIGBjYXQtZmlsZWAgd2lsbCBpZ25vcmUgYW55IGN1c3RvbSBmb3JtYXQgYW5kIHByaW50OgorCistLS0tLS0tLS0tLS0KKzxvYmplY3Q+IFNQIGFtYmlndW91cyBMRgorLS0tLS0tLS0tLS0tCisKIElmIC0tZm9sbG93LXN5bWxpbmtzIGlzIHVzZWQsIGFuZCBhIHN5bWxpbmsgaW4gdGhlIHJlcG9zaXRvcnkgcG9pbnRzCiBvdXRzaWRlIHRoZSByZXBvc2l0b3J5LCB0aGVuIGBjYXQtZmlsZWAgd2lsbCBpZ25vcmUgYW55IGN1c3RvbSBmb3JtYXQKIGFuZCBwcmludDoKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWNoZWNrLWF0dHIudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtY2hlY2stYXR0ci50eHQKaW5kZXggM2MwNTc4Mi4uODRmNDFhOCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtY2hlY2stYXR0ci50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtY2hlY2stYXR0ci50eHQKQEAgLTMyLDcgKzMyLDcgQEAKIAlpbnN0ZWFkIG9mIGZyb20gdGhlIGNvbW1hbmQtbGluZS4KIAogLXo6OgotCVRoZSBvdXRwdXQgZm9ybWF0IGlzIG1vZGlmaWVkIHRvIGJlIG1hY2hpbmUtcGFyc2VhYmxlLgorCVRoZSBvdXRwdXQgZm9ybWF0IGlzIG1vZGlmaWVkIHRvIGJlIG1hY2hpbmUtcGFyc2FibGUuCiAJSWYgYC0tc3RkaW5gIGlzIGFsc28gZ2l2ZW4sIGlucHV0IHBhdGhzIGFyZSBzZXBhcmF0ZWQKIAl3aXRoIGEgTlVMIGNoYXJhY3RlciBpbnN0ZWFkIG9mIGEgbGluZWZlZWQgY2hhcmFjdGVyLgogCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1jaGVjay1pZ25vcmUudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtY2hlY2staWdub3JlLnR4dAppbmRleCA4YjQyY2IzLi4wYzM5MjRhIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1jaGVjay1pZ25vcmUudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWNoZWNrLWlnbm9yZS50eHQKQEAgLTMwLDE2ICszMCwyMiBAQAogCXZhbGlkIHdpdGggYSBzaW5nbGUgcGF0aG5hbWUuCiAKIC12LCAtLXZlcmJvc2U6OgotCUFsc28gb3V0cHV0IGRldGFpbHMgYWJvdXQgdGhlIG1hdGNoaW5nIHBhdHRlcm4gKGlmIGFueSkKLQlmb3IgZWFjaCBnaXZlbiBwYXRobmFtZS4gRm9yIHByZWNlZGVuY2UgcnVsZXMgd2l0aGluIGFuZAotCWJldHdlZW4gZXhjbHVkZSBzb3VyY2VzLCBzZWUgbGlua2dpdDpnaXRpZ25vcmVbNV0uCisJSW5zdGVhZCBvZiBwcmludGluZyB0aGUgcGF0aHMgdGhhdCBhcmUgZXhjbHVkZWQsIGZvciBlYWNoIHBhdGgKKwl0aGF0IG1hdGNoZXMgYW4gZXhjbHVkZSBwYXR0ZXJuLCBwcmludCB0aGUgZXhjbHVkZSBwYXR0ZXJuCisJdG9nZXRoZXIgd2l0aCB0aGUgcGF0aC4gIChNYXRjaGluZyBhbiBleGNsdWRlIHBhdHRlcm4gdXN1YWxseQorCW1lYW5zIHRoZSBwYXRoIGlzIGV4Y2x1ZGVkLCBidXQgaWYgdGhlIHBhdHRlcm4gYmVnaW5zIHdpdGggJyEnCisJdGhlbiBpdCBpcyBhIG5lZ2F0ZWQgcGF0dGVybiBhbmQgbWF0Y2hpbmcgaXQgbWVhbnMgdGhlIHBhdGggaXMKKwlOT1QgZXhjbHVkZWQuKQorKworRm9yIHByZWNlZGVuY2UgcnVsZXMgd2l0aGluIGFuZCBiZXR3ZWVuIGV4Y2x1ZGUgc291cmNlcywgc2VlCitsaW5rZ2l0OmdpdGlnbm9yZVs1XS4KIAogLS1zdGRpbjo6CiAJUmVhZCBwYXRobmFtZXMgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQsIG9uZSBwZXIgbGluZSwKIAlpbnN0ZWFkIG9mIGZyb20gdGhlIGNvbW1hbmQtbGluZS4KIAogLXo6OgotCVRoZSBvdXRwdXQgZm9ybWF0IGlzIG1vZGlmaWVkIHRvIGJlIG1hY2hpbmUtcGFyc2VhYmxlIChzZWUKKwlUaGUgb3V0cHV0IGZvcm1hdCBpcyBtb2RpZmllZCB0byBiZSBtYWNoaW5lLXBhcnNhYmxlIChzZWUKIAliZWxvdykuICBJZiBgLS1zdGRpbmAgaXMgYWxzbyBnaXZlbiwgaW5wdXQgcGF0aHMgYXJlIHNlcGFyYXRlZAogCXdpdGggYSBOVUwgY2hhcmFjdGVyIGluc3RlYWQgb2YgYSBsaW5lZmVlZCBjaGFyYWN0ZXIuCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWNoZWNrLXJlZi1mb3JtYXQudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtY2hlY2stcmVmLWZvcm1hdC50eHQKaW5kZXggZDlkZTk5Mi4uZWU2YTQxNCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtY2hlY2stcmVmLWZvcm1hdC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtY2hlY2stcmVmLWZvcm1hdC50eHQKQEAgLTg4LDcgKzg4LDggQEAKIFdoZW4gcnVuIHdpdGggYC0tYnJhbmNoYCBvcHRpb24gaW4gYSByZXBvc2l0b3J5LCB0aGUgaW5wdXQgaXMgZmlyc3QKIGV4cGFuZGVkIGZvciB0aGUgYGBwcmV2aW91cyBjaGVja291dCBzeW50YXgnJwogYEB7LW59YC4gIEZvciBleGFtcGxlLCBgQHstMX1gIGlzIGEgd2F5IHRvIHJlZmVyIHRoZSBsYXN0IHRoaW5nIHRoYXQKLXdhcyBjaGVja2VkIG91dCB1c2luZyAiZ2l0IGNoZWNrb3V0IiBvcGVyYXRpb24uIFRoaXMgb3B0aW9uIHNob3VsZCBiZQord2FzIGNoZWNrZWQgb3V0IHVzaW5nICJnaXQgc3dpdGNoIiBvciAiZ2l0IGNoZWNrb3V0IiBvcGVyYXRpb24uCitUaGlzIG9wdGlvbiBzaG91bGQgYmUKIHVzZWQgYnkgcG9yY2VsYWlucyB0byBhY2NlcHQgdGhpcyBzeW50YXggYW55d2hlcmUgYSBicmFuY2ggbmFtZSBpcwogZXhwZWN0ZWQsIHNvIHRoZXkgY2FuIGFjdCBhcyBpZiB5b3UgdHlwZWQgdGhlIGJyYW5jaCBuYW1lLiBBcyBhbgogZXhjZXB0aW9uIG5vdGUgdGhhdCwgdGhlIGBgcHJldmlvdXMgY2hlY2tvdXQgb3BlcmF0aW9uJycgbWlnaHQgcmVzdWx0CmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1jaGVja291dC50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1jaGVja291dC50eHQKaW5kZXggODAxZGUyZi4uYzhmYjk5NSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtY2hlY2tvdXQudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWNoZWNrb3V0LnR4dApAQCAtMTIsNDIgKzEyLDMzIEBACiAnZ2l0IGNoZWNrb3V0JyBbLXFdIFstZl0gWy1tXSAtLWRldGFjaCBbPGJyYW5jaD5dCiAnZ2l0IGNoZWNrb3V0JyBbLXFdIFstZl0gWy1tXSBbLS1kZXRhY2hdIDxjb21taXQ+CiAnZ2l0IGNoZWNrb3V0JyBbLXFdIFstZl0gWy1tXSBbWy1ifC1CfC0tb3JwaGFuXSA8bmV3X2JyYW5jaD5dIFs8c3RhcnRfcG9pbnQ+XQotJ2dpdCBjaGVja291dCcgWy1mfC0tb3Vyc3wtLXRoZWlyc3wtbXwtLWNvbmZsaWN0PTxzdHlsZT5dIFs8dHJlZS1pc2g+XSBbLS1dIDxwYXRocz4uLi4KLSdnaXQgY2hlY2tvdXQnIFs8dHJlZS1pc2g+XSBbLS1dIDxwYXRoc3BlYz4uLi4KLSdnaXQgY2hlY2tvdXQnICgtcHwtLXBhdGNoKSBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzPi4uLl0KKydnaXQgY2hlY2tvdXQnIFstZnwtLW91cnN8LS10aGVpcnN8LW18LS1jb25mbGljdD08c3R5bGU+XSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHNwZWM+Li4uCisnZ2l0IGNoZWNrb3V0JyBbLWZ8LS1vdXJzfC0tdGhlaXJzfC1tfC0tY29uZmxpY3Q9PHN0eWxlPl0gWzx0cmVlLWlzaD5dIC0tcGF0aHNwZWMtZnJvbS1maWxlPTxmaWxlPiBbLS1wYXRoc3BlYy1maWxlLW51bF0KKydnaXQgY2hlY2tvdXQnICgtcHwtLXBhdGNoKSBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzcGVjPi4uLl0KIAogREVTQ1JJUFRJT04KIC0tLS0tLS0tLS0tCiBVcGRhdGVzIGZpbGVzIGluIHRoZSB3b3JraW5nIHRyZWUgdG8gbWF0Y2ggdGhlIHZlcnNpb24gaW4gdGhlIGluZGV4Ci1vciB0aGUgc3BlY2lmaWVkIHRyZWUuICBJZiBubyBwYXRocyBhcmUgZ2l2ZW4sICdnaXQgY2hlY2tvdXQnIHdpbGwKK29yIHRoZSBzcGVjaWZpZWQgdHJlZS4gIElmIG5vIHBhdGhzcGVjIHdhcyBnaXZlbiwgJ2dpdCBjaGVja291dCcgd2lsbAogYWxzbyB1cGRhdGUgYEhFQURgIHRvIHNldCB0aGUgc3BlY2lmaWVkIGJyYW5jaCBhcyB0aGUgY3VycmVudAogYnJhbmNoLgogCi0nZ2l0IGNoZWNrb3V0JyA8YnJhbmNoPjo6Ci0JVG8gcHJlcGFyZSBmb3Igd29ya2luZyBvbiA8YnJhbmNoPiwgc3dpdGNoIHRvIGl0IGJ5IHVwZGF0aW5nCisnZ2l0IGNoZWNrb3V0JyBbPGJyYW5jaD5dOjoKKwlUbyBwcmVwYXJlIGZvciB3b3JraW5nIG9uIGA8YnJhbmNoPmAsIHN3aXRjaCB0byBpdCBieSB1cGRhdGluZwogCXRoZSBpbmRleCBhbmQgdGhlIGZpbGVzIGluIHRoZSB3b3JraW5nIHRyZWUsIGFuZCBieSBwb2ludGluZwotCUhFQUQgYXQgdGhlIGJyYW5jaC4gTG9jYWwgbW9kaWZpY2F0aW9ucyB0byB0aGUgZmlsZXMgaW4gdGhlCisJYEhFQURgIGF0IHRoZSBicmFuY2guIExvY2FsIG1vZGlmaWNhdGlvbnMgdG8gdGhlIGZpbGVzIGluIHRoZQogCXdvcmtpbmcgdHJlZSBhcmUga2VwdCwgc28gdGhhdCB0aGV5IGNhbiBiZSBjb21taXR0ZWQgdG8gdGhlCi0JPGJyYW5jaD4uCisJYDxicmFuY2g+YC4KICsKLUlmIDxicmFuY2g+IGlzIG5vdCBmb3VuZCBidXQgdGhlcmUgZG9lcyBleGlzdCBhIHRyYWNraW5nIGJyYW5jaCBpbgotZXhhY3RseSBvbmUgcmVtb3RlIChjYWxsIGl0IDxyZW1vdGU+KSB3aXRoIGEgbWF0Y2hpbmcgbmFtZSwgdHJlYXQgYXMKLWVxdWl2YWxlbnQgdG8KK0lmIGA8YnJhbmNoPmAgaXMgbm90IGZvdW5kIGJ1dCB0aGVyZSBkb2VzIGV4aXN0IGEgdHJhY2tpbmcgYnJhbmNoIGluCitleGFjdGx5IG9uZSByZW1vdGUgKGNhbGwgaXQgYDxyZW1vdGU+YCkgd2l0aCBhIG1hdGNoaW5nIG5hbWUgYW5kCitgLS1uby1ndWVzc2AgaXMgbm90IHNwZWNpZmllZCwgdHJlYXQgYXMgZXF1aXZhbGVudCB0bwogKwogLS0tLS0tLS0tLS0tCiAkIGdpdCBjaGVja291dCAtYiA8YnJhbmNoPiAtLXRyYWNrIDxyZW1vdGU+LzxicmFuY2g+CiAtLS0tLS0tLS0tLS0KICsKLUlmIHRoZSBicmFuY2ggZXhpc3RzIGluIG11bHRpcGxlIHJlbW90ZXMgYW5kIG9uZSBvZiB0aGVtIGlzIG5hbWVkIGJ5Ci10aGUgYGNoZWNrb3V0LmRlZmF1bHRSZW1vdGVgIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUsIHdlJ2xsIHVzZSB0aGF0Ci1vbmUgZm9yIHRoZSBwdXJwb3NlcyBvZiBkaXNhbWJpZ3VhdGlvbiwgZXZlbiBpZiB0aGUgYDxicmFuY2g+YCBpc24ndAotdW5pcXVlIGFjcm9zcyBhbGwgcmVtb3Rlcy4gU2V0IGl0IHRvCi1lLmcuIGBjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbmAgdG8gYWx3YXlzIGNoZWNrb3V0IHJlbW90ZQotYnJhbmNoZXMgZnJvbSB0aGVyZSBpZiBgPGJyYW5jaD5gIGlzIGFtYmlndW91cyBidXQgZXhpc3RzIG9uIHRoZQotJ29yaWdpbicgcmVtb3RlLiBTZWUgYWxzbyBgY2hlY2tvdXQuZGVmYXVsdFJlbW90ZWAgaW4KLWxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXS4KLSsKLVlvdSBjb3VsZCBvbWl0IDxicmFuY2g+LCBpbiB3aGljaCBjYXNlIHRoZSBjb21tYW5kIGRlZ2VuZXJhdGVzIHRvCitZb3UgY291bGQgb21pdCBgPGJyYW5jaD5gLCBpbiB3aGljaCBjYXNlIHRoZSBjb21tYW5kIGRlZ2VuZXJhdGVzIHRvCiAiY2hlY2sgb3V0IHRoZSBjdXJyZW50IGJyYW5jaCIsIHdoaWNoIGlzIGEgZ2xvcmlmaWVkIG5vLW9wIHdpdGgKIHJhdGhlciBleHBlbnNpdmUgc2lkZS1lZmZlY3RzIHRvIHNob3cgb25seSB0aGUgdHJhY2tpbmcgaW5mb3JtYXRpb24sCiBpZiBleGlzdHMsIGZvciB0aGUgY3VycmVudCBicmFuY2guCkBAIC02MSw3ICs1Miw3IEBACiAJYC0tdHJhY2tgIHdpdGhvdXQgYC1iYCBpbXBsaWVzIGJyYW5jaCBjcmVhdGlvbjsgc2VlIHRoZQogCWRlc2NyaXB0aW9uIG9mIGAtLXRyYWNrYCBiZWxvdy4KICsKLUlmIGAtQmAgaXMgZ2l2ZW4sIDxuZXdfYnJhbmNoPiBpcyBjcmVhdGVkIGlmIGl0IGRvZXNuJ3QgZXhpc3Q7IG90aGVyd2lzZSwgaXQKK0lmIGAtQmAgaXMgZ2l2ZW4sIGA8bmV3X2JyYW5jaD5gIGlzIGNyZWF0ZWQgaWYgaXQgZG9lc24ndCBleGlzdDsgb3RoZXJ3aXNlLCBpdAogaXMgcmVzZXQuIFRoaXMgaXMgdGhlIHRyYW5zYWN0aW9uYWwgZXF1aXZhbGVudCBvZgogKwogLS0tLS0tLS0tLS0tCkBAIC03NSwyNiArNjYsMjcgQEAKICdnaXQgY2hlY2tvdXQnIC0tZGV0YWNoIFs8YnJhbmNoPl06OgogJ2dpdCBjaGVja291dCcgWy0tZGV0YWNoXSA8Y29tbWl0Pjo6CiAKLQlQcmVwYXJlIHRvIHdvcmsgb24gdG9wIG9mIDxjb21taXQ+LCBieSBkZXRhY2hpbmcgSEVBRCBhdCBpdAorCVByZXBhcmUgdG8gd29yayBvbiB0b3Agb2YgYDxjb21taXQ+YCwgYnkgZGV0YWNoaW5nIGBIRUFEYCBhdCBpdAogCShzZWUgIkRFVEFDSEVEIEhFQUQiIHNlY3Rpb24pLCBhbmQgdXBkYXRpbmcgdGhlIGluZGV4IGFuZCB0aGUKIAlmaWxlcyBpbiB0aGUgd29ya2luZyB0cmVlLiAgTG9jYWwgbW9kaWZpY2F0aW9ucyB0byB0aGUgZmlsZXMKIAlpbiB0aGUgd29ya2luZyB0cmVlIGFyZSBrZXB0LCBzbyB0aGF0IHRoZSByZXN1bHRpbmcgd29ya2luZwogCXRyZWUgd2lsbCBiZSB0aGUgc3RhdGUgcmVjb3JkZWQgaW4gdGhlIGNvbW1pdCBwbHVzIHRoZSBsb2NhbAogCW1vZGlmaWNhdGlvbnMuCiArCi1XaGVuIHRoZSA8Y29tbWl0PiBhcmd1bWVudCBpcyBhIGJyYW5jaCBuYW1lLCB0aGUgYC0tZGV0YWNoYCBvcHRpb24gY2FuCi1iZSB1c2VkIHRvIGRldGFjaCBIRUFEIGF0IHRoZSB0aXAgb2YgdGhlIGJyYW5jaCAoYGdpdCBjaGVja291dAotPGJyYW5jaD5gIHdvdWxkIGNoZWNrIG91dCB0aGF0IGJyYW5jaCB3aXRob3V0IGRldGFjaGluZyBIRUFEKS4KK1doZW4gdGhlIGA8Y29tbWl0PmAgYXJndW1lbnQgaXMgYSBicmFuY2ggbmFtZSwgdGhlIGAtLWRldGFjaGAgb3B0aW9uIGNhbgorYmUgdXNlZCB0byBkZXRhY2ggYEhFQURgIGF0IHRoZSB0aXAgb2YgdGhlIGJyYW5jaCAoYGdpdCBjaGVja291dAorPGJyYW5jaD5gIHdvdWxkIGNoZWNrIG91dCB0aGF0IGJyYW5jaCB3aXRob3V0IGRldGFjaGluZyBgSEVBRGApLgogKwotT21pdHRpbmcgPGJyYW5jaD4gZGV0YWNoZXMgSEVBRCBhdCB0aGUgdGlwIG9mIHRoZSBjdXJyZW50IGJyYW5jaC4KK09taXR0aW5nIGA8YnJhbmNoPmAgZGV0YWNoZXMgYEhFQURgIGF0IHRoZSB0aXAgb2YgdGhlIGN1cnJlbnQgYnJhbmNoLgogCi0nZ2l0IGNoZWNrb3V0JyBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHNwZWM+Li4uOjoKKydnaXQgY2hlY2tvdXQnIFstZnwtLW91cnN8LS10aGVpcnN8LW18LS1jb25mbGljdD08c3R5bGU+XSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHNwZWM+Li4uOjoKKydnaXQgY2hlY2tvdXQnIFstZnwtLW91cnN8LS10aGVpcnN8LW18LS1jb25mbGljdD08c3R5bGU+XSBbPHRyZWUtaXNoPl0gLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+IFstLXBhdGhzcGVjLWZpbGUtbnVsXTo6CiAKLQlPdmVyd3JpdGUgcGF0aHMgaW4gdGhlIHdvcmtpbmcgdHJlZSBieSByZXBsYWNpbmcgd2l0aCB0aGUKLQljb250ZW50cyBpbiB0aGUgaW5kZXggb3IgaW4gdGhlIDx0cmVlLWlzaD4gKG1vc3Qgb2Z0ZW4gYQotCWNvbW1pdCkuICBXaGVuIGEgPHRyZWUtaXNoPiBpcyBnaXZlbiwgdGhlIHBhdGhzIHRoYXQKLQltYXRjaCB0aGUgPHBhdGhzcGVjPiBhcmUgdXBkYXRlZCBib3RoIGluIHRoZSBpbmRleCBhbmQgaW4KLQl0aGUgd29ya2luZyB0cmVlLgorCU92ZXJ3cml0ZSB0aGUgY29udGVudHMgb2YgdGhlIGZpbGVzIHRoYXQgbWF0Y2ggdGhlIHBhdGhzcGVjLgorCVdoZW4gdGhlIGA8dHJlZS1pc2g+YCAobW9zdCBvZnRlbiBhIGNvbW1pdCkgaXMgbm90IGdpdmVuLAorCW92ZXJ3cml0ZSB3b3JraW5nIHRyZWUgd2l0aCB0aGUgY29udGVudHMgaW4gdGhlIGluZGV4LgorCVdoZW4gdGhlIGA8dHJlZS1pc2g+YCBpcyBnaXZlbiwgb3ZlcndyaXRlIGJvdGggdGhlIGluZGV4IGFuZAorCXRoZSB3b3JraW5nIHRyZWUgd2l0aCB0aGUgY29udGVudHMgYXQgdGhlIGA8dHJlZS1pc2g+YC4KICsKIFRoZSBpbmRleCBtYXkgY29udGFpbiB1bm1lcmdlZCBlbnRyaWVzIGJlY2F1c2Ugb2YgYSBwcmV2aW91cyBmYWlsZWQgbWVyZ2UuCiBCeSBkZWZhdWx0LCBpZiB5b3UgdHJ5IHRvIGNoZWNrIG91dCBzdWNoIGFuIGVudHJ5IGZyb20gdGhlIGluZGV4LCB0aGUKQEAgLTEwNSwxMiArOTcsMTAgQEAKIGZpbGUgY2FuIGJlIGRpc2NhcmRlZCB0byByZS1jcmVhdGUgdGhlIG9yaWdpbmFsIGNvbmZsaWN0ZWQgbWVyZ2UgcmVzdWx0LgogCiAnZ2l0IGNoZWNrb3V0JyAoLXB8LS1wYXRjaCkgWzx0cmVlLWlzaD5dIFstLV0gWzxwYXRoc3BlYz4uLi5dOjoKLQlUaGlzIGlzIHNpbWlsYXIgdG8gdGhlICJjaGVjayBvdXQgcGF0aHMgdG8gdGhlIHdvcmtpbmcgdHJlZQotCWZyb20gZWl0aGVyIHRoZSBpbmRleCBvciBmcm9tIGEgdHJlZS1pc2giIG1vZGUgZGVzY3JpYmVkCi0JYWJvdmUsIGJ1dCBsZXRzIHlvdSB1c2UgdGhlIGludGVyYWN0aXZlIGludGVyZmFjZSB0byBzaG93Ci0JdGhlICJkaWZmIiBvdXRwdXQgYW5kIGNob29zZSB3aGljaCBodW5rcyB0byB1c2UgaW4gdGhlCi0JcmVzdWx0LiAgU2VlIGJlbG93IGZvciB0aGUgZGVzY3JpcHRpb24gb2YgYC0tcGF0Y2hgIG9wdGlvbi4KLQorCVRoaXMgaXMgc2ltaWxhciB0byB0aGUgcHJldmlvdXMgbW9kZSwgYnV0IGxldHMgeW91IHVzZSB0aGUKKwlpbnRlcmFjdGl2ZSBpbnRlcmZhY2UgdG8gc2hvdyB0aGUgImRpZmYiIG91dHB1dCBhbmQgY2hvb3NlIHdoaWNoCisJaHVua3MgdG8gdXNlIGluIHRoZSByZXN1bHQuICBTZWUgYmVsb3cgZm9yIHRoZSBkZXNjcmlwdGlvbiBvZgorCWAtLXBhdGNoYCBvcHRpb24uCiAKIE9QVElPTlMKIC0tLS0tLS0KQEAgLTExOCw3ICsxMDgsOCBAQAogLS1xdWlldDo6CiAJUXVpZXQsIHN1cHByZXNzIGZlZWRiYWNrIG1lc3NhZ2VzLgogCi0tLVtuby1dcHJvZ3Jlc3M6OgorLS1wcm9ncmVzczo6CistLW5vLXByb2dyZXNzOjoKIAlQcm9ncmVzcyBzdGF0dXMgaXMgcmVwb3J0ZWQgb24gdGhlIHN0YW5kYXJkIGVycm9yIHN0cmVhbQogCWJ5IGRlZmF1bHQgd2hlbiBpdCBpcyBhdHRhY2hlZCB0byBhIHRlcm1pbmFsLCB1bmxlc3MgYC0tcXVpZXRgCiAJaXMgc3BlY2lmaWVkLiBUaGlzIGZsYWcgZW5hYmxlcyBwcm9ncmVzcyByZXBvcnRpbmcgZXZlbiBpZiBub3QKQEAgLTEyNyw3ICsxMTgsNyBAQAogLWY6OgogLS1mb3JjZTo6CiAJV2hlbiBzd2l0Y2hpbmcgYnJhbmNoZXMsIHByb2NlZWQgZXZlbiBpZiB0aGUgaW5kZXggb3IgdGhlCi0Jd29ya2luZyB0cmVlIGRpZmZlcnMgZnJvbSBIRUFELiAgVGhpcyBpcyB1c2VkIHRvIHRocm93IGF3YXkKKwl3b3JraW5nIHRyZWUgZGlmZmVycyBmcm9tIGBIRUFEYC4gIFRoaXMgaXMgdXNlZCB0byB0aHJvdyBhd2F5CiAJbG9jYWwgY2hhbmdlcy4KICsKIFdoZW4gY2hlY2tpbmcgb3V0IHBhdGhzIGZyb20gdGhlIGluZGV4LCBkbyBub3QgZmFpbCB1cG9uIHVubWVyZ2VkCkBAIC0xNTQsMTIgKzE0NSwxMiBAQAogb2YgaXQiKS4KIAogLWIgPG5ld19icmFuY2g+OjoKLQlDcmVhdGUgYSBuZXcgYnJhbmNoIG5hbWVkIDxuZXdfYnJhbmNoPiBhbmQgc3RhcnQgaXQgYXQKLQk8c3RhcnRfcG9pbnQ+OyBzZWUgbGlua2dpdDpnaXQtYnJhbmNoWzFdIGZvciBkZXRhaWxzLgorCUNyZWF0ZSBhIG5ldyBicmFuY2ggbmFtZWQgYDxuZXdfYnJhbmNoPmAgYW5kIHN0YXJ0IGl0IGF0CisJYDxzdGFydF9wb2ludD5gOyBzZWUgbGlua2dpdDpnaXQtYnJhbmNoWzFdIGZvciBkZXRhaWxzLgogCiAtQiA8bmV3X2JyYW5jaD46OgotCUNyZWF0ZXMgdGhlIGJyYW5jaCA8bmV3X2JyYW5jaD4gYW5kIHN0YXJ0IGl0IGF0IDxzdGFydF9wb2ludD47Ci0JaWYgaXQgYWxyZWFkeSBleGlzdHMsIHRoZW4gcmVzZXQgaXQgdG8gPHN0YXJ0X3BvaW50Pi4gVGhpcyBpcworCUNyZWF0ZXMgdGhlIGJyYW5jaCBgPG5ld19icmFuY2g+YCBhbmQgc3RhcnQgaXQgYXQgYDxzdGFydF9wb2ludD5gOworCWlmIGl0IGFscmVhZHkgZXhpc3RzLCB0aGVuIHJlc2V0IGl0IHRvIGA8c3RhcnRfcG9pbnQ+YC4gVGhpcyBpcwogCWVxdWl2YWxlbnQgdG8gcnVubmluZyAiZ2l0IGJyYW5jaCIgd2l0aCAiLWYiOyBzZWUKIAlsaW5rZ2l0OmdpdC1icmFuY2hbMV0gZm9yIGRldGFpbHMuCiAKQEAgLTE3MiwxNSArMTYzLDM2IEBACiBkZXJpdmVkIGZyb20gdGhlIHJlbW90ZS10cmFja2luZyBicmFuY2gsIGJ5IGxvb2tpbmcgYXQgdGhlIGxvY2FsIHBhcnQgb2YKIHRoZSByZWZzcGVjIGNvbmZpZ3VyZWQgZm9yIHRoZSBjb3JyZXNwb25kaW5nIHJlbW90ZSwgYW5kIHRoZW4gc3RyaXBwaW5nCiB0aGUgaW5pdGlhbCBwYXJ0IHVwIHRvIHRoZSAiKiIuCi1UaGlzIHdvdWxkIHRlbGwgdXMgdG8gdXNlICJoYWNrIiBhcyB0aGUgbG9jYWwgYnJhbmNoIHdoZW4gYnJhbmNoaW5nCi1vZmYgb2YgIm9yaWdpbi9oYWNrIiAob3IgInJlbW90ZXMvb3JpZ2luL2hhY2siLCBvciBldmVuCi0icmVmcy9yZW1vdGVzL29yaWdpbi9oYWNrIikuICBJZiB0aGUgZ2l2ZW4gbmFtZSBoYXMgbm8gc2xhc2gsIG9yIHRoZSBhYm92ZQorVGhpcyB3b3VsZCB0ZWxsIHVzIHRvIHVzZSBgaGFja2AgYXMgdGhlIGxvY2FsIGJyYW5jaCB3aGVuIGJyYW5jaGluZworb2ZmIG9mIGBvcmlnaW4vaGFja2AgKG9yIGByZW1vdGVzL29yaWdpbi9oYWNrYCwgb3IgZXZlbgorYHJlZnMvcmVtb3Rlcy9vcmlnaW4vaGFja2ApLiAgSWYgdGhlIGdpdmVuIG5hbWUgaGFzIG5vIHNsYXNoLCBvciB0aGUgYWJvdmUKIGd1ZXNzaW5nIHJlc3VsdHMgaW4gYW4gZW1wdHkgbmFtZSwgdGhlIGd1ZXNzaW5nIGlzIGFib3J0ZWQuICBZb3UgY2FuCiBleHBsaWNpdGx5IGdpdmUgYSBuYW1lIHdpdGggYC1iYCBpbiBzdWNoIGEgY2FzZS4KIAogLS1uby10cmFjazo6CiAJRG8gbm90IHNldCB1cCAidXBzdHJlYW0iIGNvbmZpZ3VyYXRpb24sIGV2ZW4gaWYgdGhlCi0JYnJhbmNoLmF1dG9TZXR1cE1lcmdlIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgaXMgdHJ1ZS4KKwlgYnJhbmNoLmF1dG9TZXR1cE1lcmdlYCBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGlzIHRydWUuCisKKy0tZ3Vlc3M6OgorLS1uby1ndWVzczo6CisJSWYgYDxicmFuY2g+YCBpcyBub3QgZm91bmQgYnV0IHRoZXJlIGRvZXMgZXhpc3QgYSB0cmFja2luZworCWJyYW5jaCBpbiBleGFjdGx5IG9uZSByZW1vdGUgKGNhbGwgaXQgYDxyZW1vdGU+YCkgd2l0aCBhCisJbWF0Y2hpbmcgbmFtZSwgdHJlYXQgYXMgZXF1aXZhbGVudCB0bworKworLS0tLS0tLS0tLS0tCiskIGdpdCBjaGVja291dCAtYiA8YnJhbmNoPiAtLXRyYWNrIDxyZW1vdGU+LzxicmFuY2g+CistLS0tLS0tLS0tLS0KKysKK0lmIHRoZSBicmFuY2ggZXhpc3RzIGluIG11bHRpcGxlIHJlbW90ZXMgYW5kIG9uZSBvZiB0aGVtIGlzIG5hbWVkIGJ5Cit0aGUgYGNoZWNrb3V0LmRlZmF1bHRSZW1vdGVgIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUsIHdlJ2xsIHVzZSB0aGF0CitvbmUgZm9yIHRoZSBwdXJwb3NlcyBvZiBkaXNhbWJpZ3VhdGlvbiwgZXZlbiBpZiB0aGUgYDxicmFuY2g+YCBpc24ndAordW5pcXVlIGFjcm9zcyBhbGwgcmVtb3Rlcy4gU2V0IGl0IHRvCitlLmcuIGBjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbmAgdG8gYWx3YXlzIGNoZWNrb3V0IHJlbW90ZQorYnJhbmNoZXMgZnJvbSB0aGVyZSBpZiBgPGJyYW5jaD5gIGlzIGFtYmlndW91cyBidXQgZXhpc3RzIG9uIHRoZQorJ29yaWdpbicgcmVtb3RlLiBTZWUgYWxzbyBgY2hlY2tvdXQuZGVmYXVsdFJlbW90ZWAgaW4KK2xpbmtnaXQ6Z2l0LWNvbmZpZ1sxXS4KKysKK1VzZSBgLS1uby1ndWVzc2AgdG8gZGlzYWJsZSB0aGlzLgogCiAtbDo6CiAJQ3JlYXRlIHRoZSBuZXcgYnJhbmNoJ3MgcmVmbG9nOyBzZWUgbGlua2dpdDpnaXQtYnJhbmNoWzFdIGZvcgpAQCAtMTg5LDIxICsyMDEsMjEgQEAKIC0tZGV0YWNoOjoKIAlSYXRoZXIgdGhhbiBjaGVja2luZyBvdXQgYSBicmFuY2ggdG8gd29yayBvbiBpdCwgY2hlY2sgb3V0IGEKIAljb21taXQgZm9yIGluc3BlY3Rpb24gYW5kIGRpc2NhcmRhYmxlIGV4cGVyaW1lbnRzLgotCVRoaXMgaXMgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgImdpdCBjaGVja291dCA8Y29tbWl0PiIgd2hlbgotCTxjb21taXQ+IGlzIG5vdCBhIGJyYW5jaCBuYW1lLiAgU2VlIHRoZSAiREVUQUNIRUQgSEVBRCIgc2VjdGlvbgorCVRoaXMgaXMgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgYGdpdCBjaGVja291dCA8Y29tbWl0PmAgd2hlbgorCWA8Y29tbWl0PmAgaXMgbm90IGEgYnJhbmNoIG5hbWUuICBTZWUgdGhlICJERVRBQ0hFRCBIRUFEIiBzZWN0aW9uCiAJYmVsb3cgZm9yIGRldGFpbHMuCiAKIC0tb3JwaGFuIDxuZXdfYnJhbmNoPjo6Ci0JQ3JlYXRlIGEgbmV3ICdvcnBoYW4nIGJyYW5jaCwgbmFtZWQgPG5ld19icmFuY2g+LCBzdGFydGVkIGZyb20KLQk8c3RhcnRfcG9pbnQ+IGFuZCBzd2l0Y2ggdG8gaXQuICBUaGUgZmlyc3QgY29tbWl0IG1hZGUgb24gdGhpcworCUNyZWF0ZSBhIG5ldyAnb3JwaGFuJyBicmFuY2gsIG5hbWVkIGA8bmV3X2JyYW5jaD5gLCBzdGFydGVkIGZyb20KKwlgPHN0YXJ0X3BvaW50PmAgYW5kIHN3aXRjaCB0byBpdC4gIFRoZSBmaXJzdCBjb21taXQgbWFkZSBvbiB0aGlzCiAJbmV3IGJyYW5jaCB3aWxsIGhhdmUgbm8gcGFyZW50cyBhbmQgaXQgd2lsbCBiZSB0aGUgcm9vdCBvZiBhIG5ldwogCWhpc3RvcnkgdG90YWxseSBkaXNjb25uZWN0ZWQgZnJvbSBhbGwgdGhlIG90aGVyIGJyYW5jaGVzIGFuZAogCWNvbW1pdHMuCiArCiBUaGUgaW5kZXggYW5kIHRoZSB3b3JraW5nIHRyZWUgYXJlIGFkanVzdGVkIGFzIGlmIHlvdSBoYWQgcHJldmlvdXNseSBydW4KLSJnaXQgY2hlY2tvdXQgPHN0YXJ0X3BvaW50PiIuICBUaGlzIGFsbG93cyB5b3UgdG8gc3RhcnQgYSBuZXcgaGlzdG9yeQotdGhhdCByZWNvcmRzIGEgc2V0IG9mIHBhdGhzIHNpbWlsYXIgdG8gPHN0YXJ0X3BvaW50PiBieSBlYXNpbHkgcnVubmluZwotImdpdCBjb21taXQgLWEiIHRvIG1ha2UgdGhlIHJvb3QgY29tbWl0LgorYGdpdCBjaGVja291dCA8c3RhcnRfcG9pbnQ+YC4gIFRoaXMgYWxsb3dzIHlvdSB0byBzdGFydCBhIG5ldyBoaXN0b3J5Cit0aGF0IHJlY29yZHMgYSBzZXQgb2YgcGF0aHMgc2ltaWxhciB0byBgPHN0YXJ0X3BvaW50PmAgYnkgZWFzaWx5IHJ1bm5pbmcKK2BnaXQgY29tbWl0IC1hYCB0byBtYWtlIHRoZSByb290IGNvbW1pdC4KICsKIFRoaXMgY2FuIGJlIHVzZWZ1bCB3aGVuIHlvdSB3YW50IHRvIHB1Ymxpc2ggdGhlIHRyZWUgZnJvbSBhIGNvbW1pdAogd2l0aG91dCBleHBvc2luZyBpdHMgZnVsbCBoaXN0b3J5LiBZb3UgbWlnaHQgd2FudCB0byBkbyB0aGlzIHRvIHB1Ymxpc2gKQEAgLTIxMiwxNyArMjI0LDE3IEBACiBjb2RlLgogKwogSWYgeW91IHdhbnQgdG8gc3RhcnQgYSBkaXNjb25uZWN0ZWQgaGlzdG9yeSB0aGF0IHJlY29yZHMgYSBzZXQgb2YgcGF0aHMKLXRoYXQgaXMgdG90YWxseSBkaWZmZXJlbnQgZnJvbSB0aGUgb25lIG9mIDxzdGFydF9wb2ludD4sIHRoZW4geW91IHNob3VsZAordGhhdCBpcyB0b3RhbGx5IGRpZmZlcmVudCBmcm9tIHRoZSBvbmUgb2YgYDxzdGFydF9wb2ludD5gLCB0aGVuIHlvdSBzaG91bGQKIGNsZWFyIHRoZSBpbmRleCBhbmQgdGhlIHdvcmtpbmcgdHJlZSByaWdodCBhZnRlciBjcmVhdGluZyB0aGUgb3JwaGFuCi1icmFuY2ggYnkgcnVubmluZyAiZ2l0IHJtIC1yZiAuIiBmcm9tIHRoZSB0b3AgbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZS4KK2JyYW5jaCBieSBydW5uaW5nIGBnaXQgcm0gLXJmIC5gIGZyb20gdGhlIHRvcCBsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlLgogQWZ0ZXJ3YXJkcyB5b3Ugd2lsbCBiZSByZWFkeSB0byBwcmVwYXJlIHlvdXIgbmV3IGZpbGVzLCByZXBvcHVsYXRpbmcgdGhlCiB3b3JraW5nIHRyZWUsIGJ5IGNvcHlpbmcgdGhlbSBmcm9tIGVsc2V3aGVyZSwgZXh0cmFjdGluZyBhIHRhcmJhbGwsIGV0Yy4KIAogLS1pZ25vcmUtc2tpcC13b3JrdHJlZS1iaXRzOjoKIAlJbiBzcGFyc2UgY2hlY2tvdXQgbW9kZSwgYGdpdCBjaGVja291dCAtLSA8cGF0aHM+YCB3b3VsZAotCXVwZGF0ZSBvbmx5IGVudHJpZXMgbWF0Y2hlZCBieSA8cGF0aHM+IGFuZCBzcGFyc2UgcGF0dGVybnMKLQlpbiAkR0lUX0RJUi9pbmZvL3NwYXJzZS1jaGVja291dC4gVGhpcyBvcHRpb24gaWdub3JlcwotCXRoZSBzcGFyc2UgcGF0dGVybnMgYW5kIGFkZHMgYmFjayBhbnkgZmlsZXMgaW4gPHBhdGhzPi4KKwl1cGRhdGUgb25seSBlbnRyaWVzIG1hdGNoZWQgYnkgYDxwYXRocz5gIGFuZCBzcGFyc2UgcGF0dGVybnMKKwlpbiBgJEdJVF9ESVIvaW5mby9zcGFyc2UtY2hlY2tvdXRgLiBUaGlzIG9wdGlvbiBpZ25vcmVzCisJdGhlIHNwYXJzZSBwYXR0ZXJucyBhbmQgYWRkcyBiYWNrIGFueSBmaWxlcyBpbiBgPHBhdGhzPmAuCiAKIC1tOjoKIC0tbWVyZ2U6OgpAQCAtMjQyLDI0ICsyNTQsMjkgQEAKICsKIFdoZW4gY2hlY2tpbmcgb3V0IHBhdGhzIGZyb20gdGhlIGluZGV4LCB0aGlzIG9wdGlvbiBsZXRzIHlvdSByZWNyZWF0ZQogdGhlIGNvbmZsaWN0ZWQgbWVyZ2UgaW4gdGhlIHNwZWNpZmllZCBwYXRocy4KKysKK1doZW4gc3dpdGNoaW5nIGJyYW5jaGVzIHdpdGggYC0tbWVyZ2VgLCBzdGFnZWQgY2hhbmdlcyBtYXkgYmUgbG9zdC4KIAogLS1jb25mbGljdD08c3R5bGU+OjoKLQlUaGUgc2FtZSBhcyAtLW1lcmdlIG9wdGlvbiBhYm92ZSwgYnV0IGNoYW5nZXMgdGhlIHdheSB0aGUKKwlUaGUgc2FtZSBhcyBgLS1tZXJnZWAgb3B0aW9uIGFib3ZlLCBidXQgY2hhbmdlcyB0aGUgd2F5IHRoZQogCWNvbmZsaWN0aW5nIGh1bmtzIGFyZSBwcmVzZW50ZWQsIG92ZXJyaWRpbmcgdGhlCi0JbWVyZ2UuY29uZmxpY3RTdHlsZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlLiAgUG9zc2libGUgdmFsdWVzIGFyZQorCWBtZXJnZS5jb25mbGljdFN0eWxlYCBjb25maWd1cmF0aW9uIHZhcmlhYmxlLiAgUG9zc2libGUgdmFsdWVzIGFyZQogCSJtZXJnZSIgKGRlZmF1bHQpIGFuZCAiZGlmZjMiIChpbiBhZGRpdGlvbiB0byB3aGF0IGlzIHNob3duIGJ5CiAJIm1lcmdlIiBzdHlsZSwgc2hvd3MgdGhlIG9yaWdpbmFsIGNvbnRlbnRzKS4KIAogLXA6OgogLS1wYXRjaDo6CiAJSW50ZXJhY3RpdmVseSBzZWxlY3QgaHVua3MgaW4gdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUKLQk8dHJlZS1pc2g+IChvciB0aGUgaW5kZXgsIGlmIHVuc3BlY2lmaWVkKSBhbmQgdGhlIHdvcmtpbmcKKwlgPHRyZWUtaXNoPmAgKG9yIHRoZSBpbmRleCwgaWYgdW5zcGVjaWZpZWQpIGFuZCB0aGUgd29ya2luZwogCXRyZWUuICBUaGUgY2hvc2VuIGh1bmtzIGFyZSB0aGVuIGFwcGxpZWQgaW4gcmV2ZXJzZSB0byB0aGUKLQl3b3JraW5nIHRyZWUgKGFuZCBpZiBhIDx0cmVlLWlzaD4gd2FzIHNwZWNpZmllZCwgdGhlIGluZGV4KS4KKwl3b3JraW5nIHRyZWUgKGFuZCBpZiBhIGA8dHJlZS1pc2g+YCB3YXMgc3BlY2lmaWVkLCB0aGUgaW5kZXgpLgogKwogVGhpcyBtZWFucyB0aGF0IHlvdSBjYW4gdXNlIGBnaXQgY2hlY2tvdXQgLXBgIHRvIHNlbGVjdGl2ZWx5IGRpc2NhcmQKIGVkaXRzIGZyb20geW91ciBjdXJyZW50IHdvcmtpbmcgdHJlZS4gU2VlIHRoZSBgYEludGVyYWN0aXZlIE1vZGUnJwogc2VjdGlvbiBvZiBsaW5rZ2l0OmdpdC1hZGRbMV0gdG8gbGVhcm4gaG93IHRvIG9wZXJhdGUgdGhlIGAtLXBhdGNoYCBtb2RlLgorKworTm90ZSB0aGF0IHRoaXMgb3B0aW9uIHVzZXMgdGhlIG5vIG92ZXJsYXkgbW9kZSBieSBkZWZhdWx0IChzZWUgYWxzbworYC0tb3ZlcmxheWApLCBhbmQgY3VycmVudGx5IGRvZXNuJ3Qgc3VwcG9ydCBvdmVybGF5IG1vZGUuCiAKIC0taWdub3JlLW90aGVyLXdvcmt0cmVlczo6CiAJYGdpdCBjaGVja291dGAgcmVmdXNlcyB3aGVuIHRoZSB3YW50ZWQgcmVmIGlzIGFscmVhZHkgY2hlY2tlZApAQCAtMjY3LDI3ICsyODQsNTUgQEAKIAlvdXQgYW55d2F5LiBJbiBvdGhlciB3b3JkcywgdGhlIHJlZiBjYW4gYmUgaGVsZCBieSBtb3JlIHRoYW4gb25lCiAJd29ya3RyZWUuCiAKLS0tW25vLV1yZWN1cnNlLXN1Ym1vZHVsZXM6OgotCVVzaW5nIC0tcmVjdXJzZS1zdWJtb2R1bGVzIHdpbGwgdXBkYXRlIHRoZSBjb250ZW50IG9mIGFsbCBpbml0aWFsaXplZAorLS1vdmVyd3JpdGUtaWdub3JlOjoKKy0tbm8tb3ZlcndyaXRlLWlnbm9yZTo6CisJU2lsZW50bHkgb3ZlcndyaXRlIGlnbm9yZWQgZmlsZXMgd2hlbiBzd2l0Y2hpbmcgYnJhbmNoZXMuIFRoaXMKKwlpcyB0aGUgZGVmYXVsdCBiZWhhdmlvci4gVXNlIGAtLW5vLW92ZXJ3cml0ZS1pZ25vcmVgIHRvIGFib3J0CisJdGhlIG9wZXJhdGlvbiB3aGVuIHRoZSBuZXcgYnJhbmNoIGNvbnRhaW5zIGlnbm9yZWQgZmlsZXMuCisKKy0tcmVjdXJzZS1zdWJtb2R1bGVzOjoKKy0tbm8tcmVjdXJzZS1zdWJtb2R1bGVzOjoKKwlVc2luZyBgLS1yZWN1cnNlLXN1Ym1vZHVsZXNgIHdpbGwgdXBkYXRlIHRoZSBjb250ZW50IG9mIGFsbCBpbml0aWFsaXplZAogCXN1Ym1vZHVsZXMgYWNjb3JkaW5nIHRvIHRoZSBjb21taXQgcmVjb3JkZWQgaW4gdGhlIHN1cGVycHJvamVjdC4gSWYKIAlsb2NhbCBtb2RpZmljYXRpb25zIGluIGEgc3VibW9kdWxlIHdvdWxkIGJlIG92ZXJ3cml0dGVuIHRoZSBjaGVja291dAotCXdpbGwgZmFpbCB1bmxlc3MgYC1mYCBpcyB1c2VkLiBJZiBub3RoaW5nIChvciAtLW5vLXJlY3Vyc2Utc3VibW9kdWxlcykKKwl3aWxsIGZhaWwgdW5sZXNzIGAtZmAgaXMgdXNlZC4gSWYgbm90aGluZyAob3IgYC0tbm8tcmVjdXJzZS1zdWJtb2R1bGVzYCkKIAlpcyB1c2VkLCB0aGUgd29yayB0cmVlcyBvZiBzdWJtb2R1bGVzIHdpbGwgbm90IGJlIHVwZGF0ZWQuCi0JSnVzdCBsaWtlIGxpbmtnaXQ6Z2l0LXN1Ym1vZHVsZVsxXSwgdGhpcyB3aWxsIGRldGFjaCB0aGUKLQlzdWJtb2R1bGVzIEhFQUQuCisJSnVzdCBsaWtlIGxpbmtnaXQ6Z2l0LXN1Ym1vZHVsZVsxXSwgdGhpcyB3aWxsIGRldGFjaCBgSEVBRGAgb2YgdGhlCisJc3VibW9kdWxlLgorCistLW92ZXJsYXk6OgorLS1uby1vdmVybGF5OjoKKwlJbiB0aGUgZGVmYXVsdCBvdmVybGF5IG1vZGUsIGBnaXQgY2hlY2tvdXRgIG5ldmVyCisJcmVtb3ZlcyBmaWxlcyBmcm9tIHRoZSBpbmRleCBvciB0aGUgd29ya2luZyB0cmVlLiAgV2hlbgorCXNwZWNpZnlpbmcgYC0tbm8tb3ZlcmxheWAsIGZpbGVzIHRoYXQgYXBwZWFyIGluIHRoZSBpbmRleCBhbmQKKwl3b3JraW5nIHRyZWUsIGJ1dCBub3QgaW4gYDx0cmVlLWlzaD5gIGFyZSByZW1vdmVkLCB0byBtYWtlIHRoZW0KKwltYXRjaCBgPHRyZWUtaXNoPmAgZXhhY3RseS4KKworLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+OjoKKwlQYXRoc3BlYyBpcyBwYXNzZWQgaW4gYDxmaWxlPmAgaW5zdGVhZCBvZiBjb21tYW5kbGluZSBhcmdzLiBJZgorCWA8ZmlsZT5gIGlzIGV4YWN0bHkgYC1gIHRoZW4gc3RhbmRhcmQgaW5wdXQgaXMgdXNlZC4gUGF0aHNwZWMKKwllbGVtZW50cyBhcmUgc2VwYXJhdGVkIGJ5IExGIG9yIENSL0xGLiBQYXRoc3BlYyBlbGVtZW50cyBjYW4gYmUKKwlxdW90ZWQgYXMgZXhwbGFpbmVkIGZvciB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBgY29yZS5xdW90ZVBhdGhgCisJKHNlZSBsaW5rZ2l0OmdpdC1jb25maWdbMV0pLiBTZWUgYWxzbyBgLS1wYXRoc3BlYy1maWxlLW51bGAgYW5kCisJZ2xvYmFsIGAtLWxpdGVyYWwtcGF0aHNwZWNzYC4KKworLS1wYXRoc3BlYy1maWxlLW51bDo6CisJT25seSBtZWFuaW5nZnVsIHdpdGggYC0tcGF0aHNwZWMtZnJvbS1maWxlYC4gUGF0aHNwZWMgZWxlbWVudHMgYXJlCisJc2VwYXJhdGVkIHdpdGggTlVMIGNoYXJhY3RlciBhbmQgYWxsIG90aGVyIGNoYXJhY3RlcnMgYXJlIHRha2VuCisJbGl0ZXJhbGx5IChpbmNsdWRpbmcgbmV3bGluZXMgYW5kIHF1b3RlcykuCiAKIDxicmFuY2g+OjoKIAlCcmFuY2ggdG8gY2hlY2tvdXQ7IGlmIGl0IHJlZmVycyB0byBhIGJyYW5jaCAoaS5lLiwgYSBuYW1lIHRoYXQsCiAJd2hlbiBwcmVwZW5kZWQgd2l0aCAicmVmcy9oZWFkcy8iLCBpcyBhIHZhbGlkIHJlZiksIHRoZW4gdGhhdAogCWJyYW5jaCBpcyBjaGVja2VkIG91dC4gT3RoZXJ3aXNlLCBpZiBpdCByZWZlcnMgdG8gYSB2YWxpZAotCWNvbW1pdCwgeW91ciBIRUFEIGJlY29tZXMgImRldGFjaGVkIiBhbmQgeW91IGFyZSBubyBsb25nZXIgb24KKwljb21taXQsIHlvdXIgYEhFQURgIGJlY29tZXMgImRldGFjaGVkIiBhbmQgeW91IGFyZSBubyBsb25nZXIgb24KIAlhbnkgYnJhbmNoIChzZWUgYmVsb3cgZm9yIGRldGFpbHMpLgogKwotWW91IGNhbiB1c2UgdGhlIGAiQHstTn0iYCBzeW50YXggdG8gcmVmZXIgdG8gdGhlIE4tdGggbGFzdAorWW91IGNhbiB1c2UgdGhlIGBAey1OfWAgc3ludGF4IHRvIHJlZmVyIHRvIHRoZSBOLXRoIGxhc3QKIGJyYW5jaC9jb21taXQgY2hlY2tlZCBvdXQgdXNpbmcgImdpdCBjaGVja291dCIgb3BlcmF0aW9uLiBZb3UgbWF5Ci1hbHNvIHNwZWNpZnkgYC1gIHdoaWNoIGlzIHN5bm9ueW1vdXMgdG8gYCJAey0xfWAuCithbHNvIHNwZWNpZnkgYC1gIHdoaWNoIGlzIHN5bm9ueW1vdXMgdG8gYEB7LTF9YC4KICsKLUFzIGEgc3BlY2lhbCBjYXNlLCB5b3UgbWF5IHVzZSBgIkEuLi5CImAgYXMgYSBzaG9ydGN1dCBmb3IgdGhlCitBcyBhIHNwZWNpYWwgY2FzZSwgeW91IG1heSB1c2UgYEEuLi5CYCBhcyBhIHNob3J0Y3V0IGZvciB0aGUKIG1lcmdlIGJhc2Ugb2YgYEFgIGFuZCBgQmAgaWYgdGhlcmUgaXMgZXhhY3RseSBvbmUgbWVyZ2UgYmFzZS4gWW91IGNhbgogbGVhdmUgb3V0IGF0IG1vc3Qgb25lIG9mIGBBYCBhbmQgYEJgLCBpbiB3aGljaCBjYXNlIGl0IGRlZmF1bHRzIHRvIGBIRUFEYC4KIApAQCAtMjk2LDE5ICszNDEsMjkgQEAKIAogPHN0YXJ0X3BvaW50Pjo6CiAJVGhlIG5hbWUgb2YgYSBjb21taXQgYXQgd2hpY2ggdG8gc3RhcnQgdGhlIG5ldyBicmFuY2g7IHNlZQotCWxpbmtnaXQ6Z2l0LWJyYW5jaFsxXSBmb3IgZGV0YWlscy4gRGVmYXVsdHMgdG8gSEVBRC4KKwlsaW5rZ2l0OmdpdC1icmFuY2hbMV0gZm9yIGRldGFpbHMuIERlZmF1bHRzIHRvIGBIRUFEYC4KKysKK0FzIGEgc3BlY2lhbCBjYXNlLCB5b3UgbWF5IHVzZSBgIkEuLi5CImAgYXMgYSBzaG9ydGN1dCBmb3IgdGhlCittZXJnZSBiYXNlIG9mIGBBYCBhbmQgYEJgIGlmIHRoZXJlIGlzIGV4YWN0bHkgb25lIG1lcmdlIGJhc2UuIFlvdSBjYW4KK2xlYXZlIG91dCBhdCBtb3N0IG9uZSBvZiBgQWAgYW5kIGBCYCwgaW4gd2hpY2ggY2FzZSBpdCBkZWZhdWx0cyB0byBgSEVBRGAuCiAKIDx0cmVlLWlzaD46OgogCVRyZWUgdG8gY2hlY2tvdXQgZnJvbSAod2hlbiBwYXRocyBhcmUgZ2l2ZW4pLiBJZiBub3Qgc3BlY2lmaWVkLAogCXRoZSBpbmRleCB3aWxsIGJlIHVzZWQuCiAKK1wtLTo6CisJRG8gbm90IGludGVycHJldCBhbnkgbW9yZSBhcmd1bWVudHMgYXMgb3B0aW9ucy4KIAorPHBhdGhzcGVjPi4uLjo6CisJTGltaXRzIHRoZSBwYXRocyBhZmZlY3RlZCBieSB0aGUgb3BlcmF0aW9uLgorKworRm9yIG1vcmUgZGV0YWlscywgc2VlIHRoZSAncGF0aHNwZWMnIGVudHJ5IGluIGxpbmtnaXQ6Z2l0Z2xvc3NhcnlbN10uCiAKIERFVEFDSEVEIEhFQUQKIC0tLS0tLS0tLS0tLS0KLUhFQUQgbm9ybWFsbHkgcmVmZXJzIHRvIGEgbmFtZWQgYnJhbmNoIChlLmcuICdtYXN0ZXInKS4gTWVhbndoaWxlLCBlYWNoCitgSEVBRGAgbm9ybWFsbHkgcmVmZXJzIHRvIGEgbmFtZWQgYnJhbmNoIChlLmcuIGBtYXN0ZXJgKS4gTWVhbndoaWxlLCBlYWNoCiBicmFuY2ggcmVmZXJzIHRvIGEgc3BlY2lmaWMgY29tbWl0LiBMZXQncyBsb29rIGF0IGEgcmVwbyB3aXRoIHRocmVlCi1jb21taXRzLCBvbmUgb2YgdGhlbSB0YWdnZWQsIGFuZCB3aXRoIGJyYW5jaCAnbWFzdGVyJyBjaGVja2VkIG91dDoKK2NvbW1pdHMsIG9uZSBvZiB0aGVtIHRhZ2dlZCwgYW5kIHdpdGggYnJhbmNoIGBtYXN0ZXJgIGNoZWNrZWQgb3V0OgogCiAtLS0tLS0tLS0tLS0KICAgICAgICAgICAgSEVBRCAocmVmZXJzIHRvIGJyYW5jaCAnbWFzdGVyJykKQEAgLTMyMSwxMCArMzc2LDEwIEBACiAtLS0tLS0tLS0tLS0KIAogV2hlbiBhIGNvbW1pdCBpcyBjcmVhdGVkIGluIHRoaXMgc3RhdGUsIHRoZSBicmFuY2ggaXMgdXBkYXRlZCB0byByZWZlciB0bwotdGhlIG5ldyBjb21taXQuIFNwZWNpZmljYWxseSwgJ2dpdCBjb21taXQnIGNyZWF0ZXMgYSBuZXcgY29tbWl0ICdkJywgd2hvc2UKLXBhcmVudCBpcyBjb21taXQgJ2MnLCBhbmQgdGhlbiB1cGRhdGVzIGJyYW5jaCAnbWFzdGVyJyB0byByZWZlciB0byBuZXcKLWNvbW1pdCAnZCcuIEhFQUQgc3RpbGwgcmVmZXJzIHRvIGJyYW5jaCAnbWFzdGVyJyBhbmQgc28gaW5kaXJlY3RseSBub3cgcmVmZXJzCi10byBjb21taXQgJ2QnOgordGhlIG5ldyBjb21taXQuIFNwZWNpZmljYWxseSwgJ2dpdCBjb21taXQnIGNyZWF0ZXMgYSBuZXcgY29tbWl0IGBkYCwgd2hvc2UKK3BhcmVudCBpcyBjb21taXQgYGNgLCBhbmQgdGhlbiB1cGRhdGVzIGJyYW5jaCBgbWFzdGVyYCB0byByZWZlciB0byBuZXcKK2NvbW1pdCBgZGAuIGBIRUFEYCBzdGlsbCByZWZlcnMgdG8gYnJhbmNoIGBtYXN0ZXJgIGFuZCBzbyBpbmRpcmVjdGx5IG5vdyByZWZlcnMKK3RvIGNvbW1pdCBgZGA6CiAKIC0tLS0tLS0tLS0tLQogJCBlZGl0OyBnaXQgYWRkOyBnaXQgY29tbWl0CkBAIC0zNDEsNyArMzk2LDcgQEAKIEl0IGlzIHNvbWV0aW1lcyB1c2VmdWwgdG8gYmUgYWJsZSB0byBjaGVja291dCBhIGNvbW1pdCB0aGF0IGlzIG5vdCBhdAogdGhlIHRpcCBvZiBhbnkgbmFtZWQgYnJhbmNoLCBvciBldmVuIHRvIGNyZWF0ZSBhIG5ldyBjb21taXQgdGhhdCBpcyBub3QKIHJlZmVyZW5jZWQgYnkgYSBuYW1lZCBicmFuY2guIExldCdzIGxvb2sgYXQgd2hhdCBoYXBwZW5zIHdoZW4gd2UKLWNoZWNrb3V0IGNvbW1pdCAnYicgKGhlcmUgd2Ugc2hvdyB0d28gd2F5cyB0aGlzIG1heSBiZSBkb25lKToKK2NoZWNrb3V0IGNvbW1pdCBgYmAgKGhlcmUgd2Ugc2hvdyB0d28gd2F5cyB0aGlzIG1heSBiZSBkb25lKToKIAogLS0tLS0tLS0tLS0tCiAkIGdpdCBjaGVja291dCB2Mi4wICAjIG9yCkBAIC0zNTYsOSArNDExLDkgQEAKICAgdGFnICd2Mi4wJyAocmVmZXJzIHRvIGNvbW1pdCAnYicpCiAtLS0tLS0tLS0tLS0KIAotTm90aWNlIHRoYXQgcmVnYXJkbGVzcyBvZiB3aGljaCBjaGVja291dCBjb21tYW5kIHdlIHVzZSwgSEVBRCBub3cgcmVmZXJzCi1kaXJlY3RseSB0byBjb21taXQgJ2InLiBUaGlzIGlzIGtub3duIGFzIGJlaW5nIGluIGRldGFjaGVkIEhFQUQgc3RhdGUuCi1JdCBtZWFucyBzaW1wbHkgdGhhdCBIRUFEIHJlZmVycyB0byBhIHNwZWNpZmljIGNvbW1pdCwgYXMgb3Bwb3NlZCB0bworTm90aWNlIHRoYXQgcmVnYXJkbGVzcyBvZiB3aGljaCBjaGVja291dCBjb21tYW5kIHdlIHVzZSwgYEhFQURgIG5vdyByZWZlcnMKK2RpcmVjdGx5IHRvIGNvbW1pdCBgYmAuIFRoaXMgaXMga25vd24gYXMgYmVpbmcgaW4gZGV0YWNoZWQgYEhFQURgIHN0YXRlLgorSXQgbWVhbnMgc2ltcGx5IHRoYXQgYEhFQURgIHJlZmVycyB0byBhIHNwZWNpZmljIGNvbW1pdCwgYXMgb3Bwb3NlZCB0bwogcmVmZXJyaW5nIHRvIGEgbmFtZWQgYnJhbmNoLiBMZXQncyBzZWUgd2hhdCBoYXBwZW5zIHdoZW4gd2UgY3JlYXRlIGEgY29tbWl0OgogCiAtLS0tLS0tLS0tLS0KQEAgLTM3NSw3ICs0MzAsNyBAQAogICB0YWcgJ3YyLjAnIChyZWZlcnMgdG8gY29tbWl0ICdiJykKIC0tLS0tLS0tLS0tLQogCi1UaGVyZSBpcyBub3cgYSBuZXcgY29tbWl0ICdlJywgYnV0IGl0IGlzIHJlZmVyZW5jZWQgb25seSBieSBIRUFELiBXZSBjYW4KK1RoZXJlIGlzIG5vdyBhIG5ldyBjb21taXQgYGVgLCBidXQgaXQgaXMgcmVmZXJlbmNlZCBvbmx5IGJ5IGBIRUFEYC4gV2UgY2FuCiBvZiBjb3Vyc2UgYWRkIHlldCBhbm90aGVyIGNvbW1pdCBpbiB0aGlzIHN0YXRlOgogCiAtLS0tLS0tLS0tLS0KQEAgLTM5Myw3ICs0NDgsNyBAQAogLS0tLS0tLS0tLS0tCiAKIEluIGZhY3QsIHdlIGNhbiBwZXJmb3JtIGFsbCB0aGUgbm9ybWFsIEdpdCBvcGVyYXRpb25zLiBCdXQsIGxldCdzIGxvb2sKLWF0IHdoYXQgaGFwcGVucyB3aGVuIHdlIHRoZW4gY2hlY2tvdXQgbWFzdGVyOgorYXQgd2hhdCBoYXBwZW5zIHdoZW4gd2UgdGhlbiBjaGVja291dCBgbWFzdGVyYDoKIAogLS0tLS0tLS0tLS0tCiAkIGdpdCBjaGVja291dCBtYXN0ZXIKQEAgLTQwOCw5ICs0NjMsOSBAQAogLS0tLS0tLS0tLS0tCiAKIEl0IGlzIGltcG9ydGFudCB0byByZWFsaXplIHRoYXQgYXQgdGhpcyBwb2ludCBub3RoaW5nIHJlZmVycyB0byBjb21taXQKLSdmJy4gRXZlbnR1YWxseSBjb21taXQgJ2YnIChhbmQgYnkgZXh0ZW5zaW9uIGNvbW1pdCAnZScpIHdpbGwgYmUgZGVsZXRlZAorYGZgLiBFdmVudHVhbGx5IGNvbW1pdCBgZmAgKGFuZCBieSBleHRlbnNpb24gY29tbWl0IGBlYCkgd2lsbCBiZSBkZWxldGVkCiBieSB0aGUgcm91dGluZSBHaXQgZ2FyYmFnZSBjb2xsZWN0aW9uIHByb2Nlc3MsIHVubGVzcyB3ZSBjcmVhdGUgYSByZWZlcmVuY2UKLWJlZm9yZSB0aGF0IGhhcHBlbnMuIElmIHdlIGhhdmUgbm90IHlldCBtb3ZlZCBhd2F5IGZyb20gY29tbWl0ICdmJywKK2JlZm9yZSB0aGF0IGhhcHBlbnMuIElmIHdlIGhhdmUgbm90IHlldCBtb3ZlZCBhd2F5IGZyb20gY29tbWl0IGBmYCwKIGFueSBvZiB0aGVzZSB3aWxsIGNyZWF0ZSBhIHJlZmVyZW5jZSB0byBpdDoKIAogLS0tLS0tLS0tLS0tCkBAIC00MTksMTkgKzQ3NCwxOSBAQAogJCBnaXQgdGFnIGZvbyAgICAgICAgICAgPDM+CiAtLS0tLS0tLS0tLS0KIAotPDE+IGNyZWF0ZXMgYSBuZXcgYnJhbmNoICdmb28nLCB3aGljaCByZWZlcnMgdG8gY29tbWl0ICdmJywgYW5kIHRoZW4KLXVwZGF0ZXMgSEVBRCB0byByZWZlciB0byBicmFuY2ggJ2ZvbycuIEluIG90aGVyIHdvcmRzLCB3ZSdsbCBubyBsb25nZXIKLWJlIGluIGRldGFjaGVkIEhFQUQgc3RhdGUgYWZ0ZXIgdGhpcyBjb21tYW5kLgorPDE+IGNyZWF0ZXMgYSBuZXcgYnJhbmNoIGBmb29gLCB3aGljaCByZWZlcnMgdG8gY29tbWl0IGBmYCwgYW5kIHRoZW4KKyAgICB1cGRhdGVzIGBIRUFEYCB0byByZWZlciB0byBicmFuY2ggYGZvb2AuIEluIG90aGVyIHdvcmRzLCB3ZSdsbCBubyBsb25nZXIKKyAgICBiZSBpbiBkZXRhY2hlZCBgSEVBRGAgc3RhdGUgYWZ0ZXIgdGhpcyBjb21tYW5kLgogCi08Mj4gc2ltaWxhcmx5IGNyZWF0ZXMgYSBuZXcgYnJhbmNoICdmb28nLCB3aGljaCByZWZlcnMgdG8gY29tbWl0ICdmJywKLWJ1dCBsZWF2ZXMgSEVBRCBkZXRhY2hlZC4KKzwyPiBzaW1pbGFybHkgY3JlYXRlcyBhIG5ldyBicmFuY2ggYGZvb2AsIHdoaWNoIHJlZmVycyB0byBjb21taXQgYGZgLAorICAgIGJ1dCBsZWF2ZXMgYEhFQURgIGRldGFjaGVkLgogCi08Mz4gY3JlYXRlcyBhIG5ldyB0YWcgJ2ZvbycsIHdoaWNoIHJlZmVycyB0byBjb21taXQgJ2YnLAotbGVhdmluZyBIRUFEIGRldGFjaGVkLgorPDM+IGNyZWF0ZXMgYSBuZXcgdGFnIGBmb29gLCB3aGljaCByZWZlcnMgdG8gY29tbWl0IGBmYCwKKyAgICBsZWF2aW5nIGBIRUFEYCBkZXRhY2hlZC4KIAotSWYgd2UgaGF2ZSBtb3ZlZCBhd2F5IGZyb20gY29tbWl0ICdmJywgdGhlbiB3ZSBtdXN0IGZpcnN0IHJlY292ZXIgaXRzIG9iamVjdAorSWYgd2UgaGF2ZSBtb3ZlZCBhd2F5IGZyb20gY29tbWl0IGBmYCwgdGhlbiB3ZSBtdXN0IGZpcnN0IHJlY292ZXIgaXRzIG9iamVjdAogbmFtZSAodHlwaWNhbGx5IGJ5IHVzaW5nIGdpdCByZWZsb2cpLCBhbmQgdGhlbiB3ZSBjYW4gY3JlYXRlIGEgcmVmZXJlbmNlIHRvCi1pdC4gRm9yIGV4YW1wbGUsIHRvIHNlZSB0aGUgbGFzdCB0d28gY29tbWl0cyB0byB3aGljaCBIRUFEIHJlZmVycmVkLCB3ZQoraXQuIEZvciBleGFtcGxlLCB0byBzZWUgdGhlIGxhc3QgdHdvIGNvbW1pdHMgdG8gd2hpY2ggYEhFQURgIHJlZmVycmVkLCB3ZQogY2FuIHVzZSBlaXRoZXIgb2YgdGhlc2UgY29tbWFuZHM6CiAKIC0tLS0tLS0tLS0tLQpAQCAtNDQyLDEyICs0OTcsMTIgQEAKIEFSR1VNRU5UIERJU0FNQklHVUFUSU9OCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1XaGVuIHRoZXJlIGlzIG9ubHkgb25lIGFyZ3VtZW50IGdpdmVuIGFuZCBpdCBpcyBub3QgYC0tYCAoZS5nLiAiZ2l0Ci1jaGVja291dCBhYmMiKSwgYW5kIHdoZW4gdGhlIGFyZ3VtZW50IGlzIGJvdGggYSB2YWxpZCBgPHRyZWUtaXNoPmAKLShlLmcuIGEgYnJhbmNoICJhYmMiIGV4aXN0cykgYW5kIGEgdmFsaWQgYDxwYXRoc3BlYz5gIChlLmcuIGEgZmlsZQorV2hlbiB0aGVyZSBpcyBvbmx5IG9uZSBhcmd1bWVudCBnaXZlbiBhbmQgaXQgaXMgbm90IGAtLWAgKGUuZy4gYGdpdAorY2hlY2tvdXQgYWJjYCksIGFuZCB3aGVuIHRoZSBhcmd1bWVudCBpcyBib3RoIGEgdmFsaWQgYDx0cmVlLWlzaD5gCisoZS5nLiBhIGJyYW5jaCBgYWJjYCBleGlzdHMpIGFuZCBhIHZhbGlkIGA8cGF0aHNwZWM+YCAoZS5nLiBhIGZpbGUKIG9yIGEgZGlyZWN0b3J5IHdob3NlIG5hbWUgaXMgImFiYyIgZXhpc3RzKSwgR2l0IHdvdWxkIHVzdWFsbHkgYXNrCiB5b3UgdG8gZGlzYW1iaWd1YXRlLiAgQmVjYXVzZSBjaGVja2luZyBvdXQgYSBicmFuY2ggaXMgc28gY29tbW9uIGFuCi1vcGVyYXRpb24sIGhvd2V2ZXIsICJnaXQgY2hlY2tvdXQgYWJjIiB0YWtlcyAiYWJjIiBhcyBhIGA8dHJlZS1pc2g+YAorb3BlcmF0aW9uLCBob3dldmVyLCBgZ2l0IGNoZWNrb3V0IGFiY2AgdGFrZXMgImFiYyIgYXMgYSBgPHRyZWUtaXNoPmAKIGluIHN1Y2ggYSBzaXR1YXRpb24uICBVc2UgYGdpdCBjaGVja291dCAtLSA8cGF0aHNwZWM+YCBpZiB5b3Ugd2FudAogdG8gY2hlY2tvdXQgdGhlc2UgcGF0aHMgb3V0IG9mIHRoZSBpbmRleC4KIApAQCAtNDU1LDggKzUxMCw4IEBACiAtLS0tLS0tLQogCiAuIFRoZSBmb2xsb3dpbmcgc2VxdWVuY2UgY2hlY2tzIG91dCB0aGUgYG1hc3RlcmAgYnJhbmNoLCByZXZlcnRzCi10aGUgYE1ha2VmaWxlYCB0byB0d28gcmV2aXNpb25zIGJhY2ssIGRlbGV0ZXMgaGVsbG8uYyBieQotbWlzdGFrZSwgYW5kIGdldHMgaXQgYmFjayBmcm9tIHRoZSBpbmRleC4KKyAgdGhlIGBNYWtlZmlsZWAgdG8gdHdvIHJldmlzaW9ucyBiYWNrLCBkZWxldGVzIGBoZWxsby5jYCBieQorICBtaXN0YWtlLCBhbmQgZ2V0cyBpdCBiYWNrIGZyb20gdGhlIGluZGV4LgogKwogLS0tLS0tLS0tLS0tCiAkIGdpdCBjaGVja291dCBtYXN0ZXIgICAgICAgICAgICAgPDE+CkBAIC00NjcsNyArNTIyLDcgQEAKICsKIDwxPiBzd2l0Y2ggYnJhbmNoCiA8Mj4gdGFrZSBhIGZpbGUgb3V0IG9mIGFub3RoZXIgY29tbWl0Ci08Mz4gcmVzdG9yZSBoZWxsby5jIGZyb20gdGhlIGluZGV4Cis8Mz4gcmVzdG9yZSBgaGVsbG8uY2AgZnJvbSB0aGUgaW5kZXgKICsKIElmIHlvdSB3YW50IHRvIGNoZWNrIG91dCBfYWxsXyBDIHNvdXJjZSBmaWxlcyBvdXQgb2YgdGhlIGluZGV4LAogeW91IGNhbiBzYXkKQEAgLTQ5MCwxMyArNTQ1LDEzIEBACiAtLS0tLS0tLS0tLS0KIAogLiBBZnRlciB3b3JraW5nIGluIHRoZSB3cm9uZyBicmFuY2gsIHN3aXRjaGluZyB0byB0aGUgY29ycmVjdAotYnJhbmNoIHdvdWxkIGJlIGRvbmUgdXNpbmc6CisgIGJyYW5jaCB3b3VsZCBiZSBkb25lIHVzaW5nOgogKwogLS0tLS0tLS0tLS0tCiAkIGdpdCBjaGVja291dCBteXRvcGljCiAtLS0tLS0tLS0tLS0KICsKLUhvd2V2ZXIsIHlvdXIgIndyb25nIiBicmFuY2ggYW5kIGNvcnJlY3QgIm15dG9waWMiIGJyYW5jaCBtYXkKK0hvd2V2ZXIsIHlvdXIgIndyb25nIiBicmFuY2ggYW5kIGNvcnJlY3QgYG15dG9waWNgIGJyYW5jaCBtYXkKIGRpZmZlciBpbiBmaWxlcyB0aGF0IHlvdSBoYXZlIG1vZGlmaWVkIGxvY2FsbHksIGluIHdoaWNoIGNhc2UKIHRoZSBhYm92ZSBjaGVja291dCB3b3VsZCBmYWlsIGxpa2UgdGhpczoKICsKQEAgLTUxOCw3ICs1NzMsNyBAQAogY2hhbmdlcyB5b3UgbWFkZSBzaW5jZSB0aGUgdGlwIG9mIHRoZSBuZXcgYnJhbmNoLgogCiAuIFdoZW4gYSBtZXJnZSBjb25mbGljdCBoYXBwZW5zIGR1cmluZyBzd2l0Y2hpbmcgYnJhbmNoZXMgd2l0aAotdGhlIGAtbWAgb3B0aW9uLCB5b3Ugd291bGQgc2VlIHNvbWV0aGluZyBsaWtlIHRoaXM6CisgIHRoZSBgLW1gIG9wdGlvbiwgeW91IHdvdWxkIHNlZSBzb21ldGhpbmcgbGlrZSB0aGlzOgogKwogLS0tLS0tLS0tLS0tCiAkIGdpdCBjaGVja291dCAtbSBteXRvcGljCkBAIC01MzcsNiArNTkyLDExIEBACiAkIGdpdCBhZGQgZnJvdHoKIC0tLS0tLS0tLS0tLQogCitTRUUgQUxTTworLS0tLS0tLS0KK2xpbmtnaXQ6Z2l0LXN3aXRjaFsxXSwKK2xpbmtnaXQ6Z2l0LXJlc3RvcmVbMV0KKwogR0lUCiAtLS0KIFBhcnQgb2YgdGhlIGxpbmtnaXQ6Z2l0WzFdIHN1aXRlCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1jaGVycnktcGljay50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1jaGVycnktcGljay50eHQKaW5kZXggZDM1ZDc3MS4uODNjZTUxYSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtY2hlcnJ5LXBpY2sudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWNoZXJyeS1waWNrLnR4dApAQCAtMTAsOSArMTAsNyBAQAogW3ZlcnNlXQogJ2dpdCBjaGVycnktcGljaycgWy0tZWRpdF0gWy1uXSBbLW0gcGFyZW50LW51bWJlcl0gWy1zXSBbLXhdIFstLWZmXQogCQkgIFstU1s8a2V5aWQ+XV0gPGNvbW1pdD4uLi4KLSdnaXQgY2hlcnJ5LXBpY2snIC0tY29udGludWUKLSdnaXQgY2hlcnJ5LXBpY2snIC0tcXVpdAotJ2dpdCBjaGVycnktcGljaycgLS1hYm9ydAorJ2dpdCBjaGVycnktcGljaycgKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0IHwgLS1xdWl0KQogCiBERVNDUklQVElPTgogLS0tLS0tLS0tLS0KQEAgLTU3LDYgKzU1LDEzIEBACiAJV2l0aCB0aGlzIG9wdGlvbiwgJ2dpdCBjaGVycnktcGljaycgd2lsbCBsZXQgeW91IGVkaXQgdGhlIGNvbW1pdAogCW1lc3NhZ2UgcHJpb3IgdG8gY29tbWl0dGluZy4KIAorLS1jbGVhbnVwPTxtb2RlPjo6CisJVGhpcyBvcHRpb24gZGV0ZXJtaW5lcyBob3cgdGhlIGNvbW1pdCBtZXNzYWdlIHdpbGwgYmUgY2xlYW5lZCB1cCBiZWZvcmUKKwliZWluZyBwYXNzZWQgb24gdG8gdGhlIGNvbW1pdCBtYWNoaW5lcnkuIFNlZSBsaW5rZ2l0OmdpdC1jb21taXRbMV0gZm9yIG1vcmUKKwlkZXRhaWxzLiBJbiBwYXJ0aWN1bGFyLCBpZiB0aGUgJzxtb2RlPicgaXMgZ2l2ZW4gYSB2YWx1ZSBvZiBgc2Npc3NvcnNgLAorCXNjaXNzb3JzIHdpbGwgYmUgYXBwZW5kZWQgdG8gYE1FUkdFX01TR2AgYmVmb3JlIGJlaW5nIHBhc3NlZCBvbiBpbiB0aGUgY2FzZQorCW9mIGEgY29uZmxpY3QuCisKIC14OjoKIAlXaGVuIHJlY29yZGluZyB0aGUgY29tbWl0LCBhcHBlbmQgYSBsaW5lIHRoYXQgc2F5cwogCSIoY2hlcnJ5IHBpY2tlZCBmcm9tIGNvbW1pdCAuLi4pIiB0byB0aGUgb3JpZ2luYWwgY29tbWl0CkBAIC0xNDgsNiArMTUzLDExIEBACiAJUGFzcyB0aGUgbWVyZ2Ugc3RyYXRlZ3ktc3BlY2lmaWMgb3B0aW9uIHRocm91Z2ggdG8gdGhlCiAJbWVyZ2Ugc3RyYXRlZ3kuICBTZWUgbGlua2dpdDpnaXQtbWVyZ2VbMV0gZm9yIGRldGFpbHMuCiAKKy0tcmVyZXJlLWF1dG91cGRhdGU6OgorLS1uby1yZXJlcmUtYXV0b3VwZGF0ZTo6CisJQWxsb3cgdGhlIHJlcmVyZSBtZWNoYW5pc20gdG8gdXBkYXRlIHRoZSBpbmRleCB3aXRoIHRoZQorCXJlc3VsdCBvZiBhdXRvLWNvbmZsaWN0IHJlc29sdXRpb24gaWYgcG9zc2libGUuCisKIFNFUVVFTkNFUiBTVUJDT01NQU5EUwogLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBpbmNsdWRlOjpzZXF1ZW5jZXIudHh0W10KQEAgLTIxMywxNiArMjIzLDE2IEBACiAkIGdpdCBjaGVycnktcGljayAtWHBhdGllbmNlIHRvcGljXiAgPDQ+CiAtLS0tLS0tLS0tLS0KIDwxPiBhcHBseSB0aGUgY2hhbmdlIHRoYXQgd291bGQgYmUgc2hvd24gYnkgYGdpdCBzaG93IHRvcGljXmAuCi1JbiB0aGlzIGV4YW1wbGUsIHRoZSBwYXRjaCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCBzbwotaW5mb3JtYXRpb24gYWJvdXQgdGhlIGNvbmZsaWN0IGlzIHdyaXR0ZW4gdG8gdGhlIGluZGV4IGFuZAotd29ya2luZyB0cmVlIGFuZCBubyBuZXcgY29tbWl0IHJlc3VsdHMuCisgICAgSW4gdGhpcyBleGFtcGxlLCB0aGUgcGF0Y2ggZG9lcyBub3QgYXBwbHkgY2xlYW5seSwgc28KKyAgICBpbmZvcm1hdGlvbiBhYm91dCB0aGUgY29uZmxpY3QgaXMgd3JpdHRlbiB0byB0aGUgaW5kZXggYW5kCisgICAgd29ya2luZyB0cmVlIGFuZCBubyBuZXcgY29tbWl0IHJlc3VsdHMuCiA8Mj4gc3VtbWFyaXplIGNoYW5nZXMgdG8gYmUgcmVjb25jaWxlZAogPDM+IGNhbmNlbCB0aGUgY2hlcnJ5LXBpY2suICBJbiBvdGhlciB3b3JkcywgcmV0dXJuIHRvIHRoZQotcHJlLWNoZXJyeS1waWNrIHN0YXRlLCBwcmVzZXJ2aW5nIGFueSBsb2NhbCBtb2RpZmljYXRpb25zIHlvdSBoYWQgaW4KLXRoZSB3b3JraW5nIHRyZWUuCisgICAgcHJlLWNoZXJyeS1waWNrIHN0YXRlLCBwcmVzZXJ2aW5nIGFueSBsb2NhbCBtb2RpZmljYXRpb25zCisgICAgeW91IGhhZCBpbiB0aGUgd29ya2luZyB0cmVlLgogPDQ+IHRyeSB0byBhcHBseSB0aGUgY2hhbmdlIGludHJvZHVjZWQgYnkgYHRvcGljXmAgYWdhaW4sCi1zcGVuZGluZyBleHRyYSB0aW1lIHRvIGF2b2lkIG1pc3Rha2VzIGJhc2VkIG9uIGluY29ycmVjdGx5IG1hdGNoaW5nCi1jb250ZXh0IGxpbmVzLgorICAgIHNwZW5kaW5nIGV4dHJhIHRpbWUgdG8gYXZvaWQgbWlzdGFrZXMgYmFzZWQgb24gaW5jb3JyZWN0bHkKKyAgICBtYXRjaGluZyBjb250ZXh0IGxpbmVzLgogCiBTRUUgQUxTTwogLS0tLS0tLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWNsZWFuLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWNsZWFuLnR4dAppbmRleCAwMzA1NmRhLi5hN2YzMDlkIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1jbGVhbi50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtY2xlYW4udHh0CkBAIC0yNiwxOCArMjYsMjAgQEAKIE9QVElPTlMKIC0tLS0tLS0KIC1kOjoKLQlSZW1vdmUgdW50cmFja2VkIGRpcmVjdG9yaWVzIGluIGFkZGl0aW9uIHRvIHVudHJhY2tlZCBmaWxlcy4KLQlJZiBhbiB1bnRyYWNrZWQgZGlyZWN0b3J5IGlzIG1hbmFnZWQgYnkgYSBkaWZmZXJlbnQgR2l0Ci0JcmVwb3NpdG9yeSwgaXQgaXMgbm90IHJlbW92ZWQgYnkgZGVmYXVsdC4gIFVzZSAtZiBvcHRpb24gdHdpY2UKLQlpZiB5b3UgcmVhbGx5IHdhbnQgdG8gcmVtb3ZlIHN1Y2ggYSBkaXJlY3RvcnkuCisJTm9ybWFsbHksIHdoZW4gbm8gPHBhdGg+IGlzIHNwZWNpZmllZCwgZ2l0IGNsZWFuIHdpbGwgbm90CisJcmVjdXJzZSBpbnRvIHVudHJhY2tlZCBkaXJlY3RvcmllcyB0byBhdm9pZCByZW1vdmluZyB0b28gbXVjaC4KKwlTcGVjaWZ5IC1kIHRvIGhhdmUgaXQgcmVjdXJzZSBpbnRvIHN1Y2ggZGlyZWN0b3JpZXMgYXMgd2VsbC4KKwlJZiBhbnkgcGF0aHMgYXJlIHNwZWNpZmllZCwgLWQgaXMgaXJyZWxldmFudDsgYWxsIHVudHJhY2tlZAorCWZpbGVzIG1hdGNoaW5nIHRoZSBzcGVjaWZpZWQgcGF0aHMgKHdpdGggZXhjZXB0aW9ucyBmb3IgbmVzdGVkCisJZ2l0IGRpcmVjdG9yaWVzIG1lbnRpb25lZCB1bmRlciBgLS1mb3JjZWApIHdpbGwgYmUgcmVtb3ZlZC4KIAogLWY6OgogLS1mb3JjZTo6CiAJSWYgdGhlIEdpdCBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGNsZWFuLnJlcXVpcmVGb3JjZSBpcyBub3Qgc2V0CiAJdG8gZmFsc2UsICdnaXQgY2xlYW4nIHdpbGwgcmVmdXNlIHRvIGRlbGV0ZSBmaWxlcyBvciBkaXJlY3RvcmllcwotCXVubGVzcyBnaXZlbiAtZiwgLW4gb3IgLWkuIEdpdCB3aWxsIHJlZnVzZSB0byBkZWxldGUgZGlyZWN0b3JpZXMKLQl3aXRoIC5naXQgc3ViIGRpcmVjdG9yeSBvciBmaWxlIHVubGVzcyBhIHNlY29uZCAtZgotCWlzIGdpdmVuLgorCXVubGVzcyBnaXZlbiAtZiBvciAtaS4gIEdpdCB3aWxsIHJlZnVzZSB0byBtb2RpZnkgdW50cmFja2VkCisJbmVzdGVkIGdpdCByZXBvc2l0b3JpZXMgKGRpcmVjdG9yaWVzIHdpdGggYSAuZ2l0IHN1YmRpcmVjdG9yeSkKKwl1bmxlc3MgYSBzZWNvbmQgLWYgaXMgZ2l2ZW4uCiAKIC1pOjoKIC0taW50ZXJhY3RpdmU6OgpAQCAtNTUsMTYgKzU3LDE1IEBACiAKIC1lIDxwYXR0ZXJuPjo6CiAtLWV4Y2x1ZGU9PHBhdHRlcm4+OjoKLQlJbiBhZGRpdGlvbiB0byB0aG9zZSBmb3VuZCBpbiAuZ2l0aWdub3JlIChwZXIgZGlyZWN0b3J5KSBhbmQKLQkkR0lUX0RJUi9pbmZvL2V4Y2x1ZGUsIGFsc28gY29uc2lkZXIgdGhlc2UgcGF0dGVybnMgdG8gYmUgaW4gdGhlCi0Jc2V0IG9mIHRoZSBpZ25vcmUgcnVsZXMgaW4gZWZmZWN0LgorCVVzZSB0aGUgZ2l2ZW4gZXhjbHVkZSBwYXR0ZXJuIGluIGFkZGl0aW9uIHRvIHRoZSBzdGFuZGFyZCBpZ25vcmUgcnVsZXMKKwkoc2VlIGxpbmtnaXQ6Z2l0aWdub3JlWzVdKS4KIAogLXg6OgotCURvbid0IHVzZSB0aGUgc3RhbmRhcmQgaWdub3JlIHJ1bGVzIHJlYWQgZnJvbSAuZ2l0aWdub3JlIChwZXIKLQlkaXJlY3RvcnkpIGFuZCAkR0lUX0RJUi9pbmZvL2V4Y2x1ZGUsIGJ1dCBkbyBzdGlsbCB1c2UgdGhlIGlnbm9yZQotCXJ1bGVzIGdpdmVuIHdpdGggYC1lYCBvcHRpb25zLiAgVGhpcyBhbGxvd3MgcmVtb3ZpbmcgYWxsIHVudHJhY2tlZAorCURvbid0IHVzZSB0aGUgc3RhbmRhcmQgaWdub3JlIHJ1bGVzIChzZWUgbGlua2dpdDpnaXRpZ25vcmVbNV0pLCBidXQKKwlzdGlsbCB1c2UgdGhlIGlnbm9yZSBydWxlcyBnaXZlbiB3aXRoIGAtZWAgb3B0aW9ucyBmcm9tIHRoZSBjb21tYW5kCisJbGluZS4gIFRoaXMgYWxsb3dzIHJlbW92aW5nIGFsbCB1bnRyYWNrZWQKIAlmaWxlcywgaW5jbHVkaW5nIGJ1aWxkIHByb2R1Y3RzLiAgVGhpcyBjYW4gYmUgdXNlZCAocG9zc2libHkgaW4KLQljb25qdW5jdGlvbiB3aXRoICdnaXQgcmVzZXQnKSB0byBjcmVhdGUgYSBwcmlzdGluZQorCWNvbmp1bmN0aW9uIHdpdGggJ2dpdCByZXN0b3JlJyBvciAnZ2l0IHJlc2V0JykgdG8gY3JlYXRlIGEgcHJpc3RpbmUKIAl3b3JraW5nIGRpcmVjdG9yeSB0byB0ZXN0IGEgY2xlYW4gYnVpbGQuCiAKIC1YOjoKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWNsb25lLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWNsb25lLnR4dAppbmRleCBhNTU1MzZmLi5iZjI0ZjE4IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1jbG9uZS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtY2xvbmUudHh0CkBAIC0xNSwxNCArMTUsMTUgQEAKIAkgIFstLWRpc3NvY2lhdGVdIFstLXNlcGFyYXRlLWdpdC1kaXIgPGdpdCBkaXI+XQogCSAgWy0tZGVwdGggPGRlcHRoPl0gWy0tW25vLV1zaW5nbGUtYnJhbmNoXSBbLS1uby10YWdzXQogCSAgWy0tcmVjdXJzZS1zdWJtb2R1bGVzWz08cGF0aHNwZWM+XV0gWy0tW25vLV1zaGFsbG93LXN1Ym1vZHVsZXNdCi0JICBbLS1qb2JzIDxuPl0gWy0tXSA8cmVwb3NpdG9yeT4gWzxkaXJlY3Rvcnk+XQorCSAgWy0tW25vLV1yZW1vdGUtc3VibW9kdWxlc10gWy0tam9icyA8bj5dIFstLXNwYXJzZV0gWy0tXSA8cmVwb3NpdG9yeT4KKwkgIFs8ZGlyZWN0b3J5Pl0KIAogREVTQ1JJUFRJT04KIC0tLS0tLS0tLS0tCiAKIENsb25lcyBhIHJlcG9zaXRvcnkgaW50byBhIG5ld2x5IGNyZWF0ZWQgZGlyZWN0b3J5LCBjcmVhdGVzCiByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMgZm9yIGVhY2ggYnJhbmNoIGluIHRoZSBjbG9uZWQgcmVwb3NpdG9yeQotKHZpc2libGUgdXNpbmcgYGdpdCBicmFuY2ggLXJgKSwgYW5kIGNyZWF0ZXMgYW5kIGNoZWNrcyBvdXQgYW4KKyh2aXNpYmxlIHVzaW5nIGBnaXQgYnJhbmNoIC0tcmVtb3Rlc2ApLCBhbmQgY3JlYXRlcyBhbmQgY2hlY2tzIG91dCBhbgogaW5pdGlhbCBicmFuY2ggdGhhdCBpcyBmb3JrZWQgZnJvbSB0aGUgY2xvbmVkIHJlcG9zaXRvcnkncwogY3VycmVudGx5IGFjdGl2ZSBicmFuY2guCiAKQEAgLTQwLDggKzQxLDggQEAKIAogT1BUSU9OUwogLS0tLS0tLQotLS1sb2NhbDo6CiAtbDo6CistLWxvY2FsOjoKIAlXaGVuIHRoZSByZXBvc2l0b3J5IHRvIGNsb25lIGZyb20gaXMgb24gYSBsb2NhbCBtYWNoaW5lLAogCXRoaXMgZmxhZyBieXBhc3NlcyB0aGUgbm9ybWFsICJHaXQgYXdhcmUiIHRyYW5zcG9ydAogCW1lY2hhbmlzbSBhbmQgY2xvbmVzIHRoZSByZXBvc2l0b3J5IGJ5IG1ha2luZyBhIGNvcHkgb2YKQEAgLTYyLDggKzYzLDggQEAKIAlkaXJlY3RvcnkgaW5zdGVhZCBvZiB1c2luZyBoYXJkbGlua3MuIFRoaXMgbWF5IGJlIGRlc2lyYWJsZQogCWlmIHlvdSBhcmUgdHJ5aW5nIHRvIG1ha2UgYSBiYWNrLXVwIG9mIHlvdXIgcmVwb3NpdG9yeS4KIAotLS1zaGFyZWQ6OgogLXM6OgorLS1zaGFyZWQ6OgogCVdoZW4gdGhlIHJlcG9zaXRvcnkgdG8gY2xvbmUgaXMgb24gdGhlIGxvY2FsIG1hY2hpbmUsCiAJaW5zdGVhZCBvZiB1c2luZyBoYXJkIGxpbmtzLCBhdXRvbWF0aWNhbGx5IHNldHVwCiAJYC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXNgIHRvIHNoYXJlIHRoZSBvYmplY3RzCkBAIC04MCwxMyArODEsMTMgQEAKIElmIHRoZXNlIG9iamVjdHMgYXJlIHJlbW92ZWQgYW5kIHdlcmUgcmVmZXJlbmNlZCBieSB0aGUgY2xvbmVkIHJlcG9zaXRvcnksCiB0aGVuIHRoZSBjbG9uZWQgcmVwb3NpdG9yeSB3aWxsIGJlY29tZSBjb3JydXB0LgogKwotTm90ZSB0aGF0IHJ1bm5pbmcgYGdpdCByZXBhY2tgIHdpdGhvdXQgdGhlIGAtbGAgb3B0aW9uIGluIGEgcmVwb3NpdG9yeQotY2xvbmVkIHdpdGggYC1zYCB3aWxsIGNvcHkgb2JqZWN0cyBmcm9tIHRoZSBzb3VyY2UgcmVwb3NpdG9yeSBpbnRvIGEgcGFjawotaW4gdGhlIGNsb25lZCByZXBvc2l0b3J5LCByZW1vdmluZyB0aGUgZGlzayBzcGFjZSBzYXZpbmdzIG9mIGBjbG9uZSAtc2AuCi1JdCBpcyBzYWZlLCBob3dldmVyLCB0byBydW4gYGdpdCBnY2AsIHdoaWNoIHVzZXMgdGhlIGAtbGAgb3B0aW9uIGJ5CitOb3RlIHRoYXQgcnVubmluZyBgZ2l0IHJlcGFja2Agd2l0aG91dCB0aGUgYC0tbG9jYWxgIG9wdGlvbiBpbiBhIHJlcG9zaXRvcnkKK2Nsb25lZCB3aXRoIGAtLXNoYXJlZGAgd2lsbCBjb3B5IG9iamVjdHMgZnJvbSB0aGUgc291cmNlIHJlcG9zaXRvcnkgaW50byBhIHBhY2sKK2luIHRoZSBjbG9uZWQgcmVwb3NpdG9yeSwgcmVtb3ZpbmcgdGhlIGRpc2sgc3BhY2Ugc2F2aW5ncyBvZiBgY2xvbmUgLS1zaGFyZWRgLgorSXQgaXMgc2FmZSwgaG93ZXZlciwgdG8gcnVuIGBnaXQgZ2NgLCB3aGljaCB1c2VzIHRoZSBgLS1sb2NhbGAgb3B0aW9uIGJ5CiBkZWZhdWx0LgogKwotSWYgeW91IHdhbnQgdG8gYnJlYWsgdGhlIGRlcGVuZGVuY3kgb2YgYSByZXBvc2l0b3J5IGNsb25lZCB3aXRoIGAtc2Agb24KK0lmIHlvdSB3YW50IHRvIGJyZWFrIHRoZSBkZXBlbmRlbmN5IG9mIGEgcmVwb3NpdG9yeSBjbG9uZWQgd2l0aCBgLS1zaGFyZWRgIG9uCiBpdHMgc291cmNlIHJlcG9zaXRvcnksIHlvdSBjYW4gc2ltcGx5IHJ1biBgZ2l0IHJlcGFjayAtYWAgdG8gY29weSBhbGwKIG9iamVjdHMgZnJvbSB0aGUgc291cmNlIHJlcG9zaXRvcnkgaW50byBhIHBhY2sgaW4gdGhlIGNsb25lZCByZXBvc2l0b3J5LgogCkBAIC0xMTUsMzEgKzExNiwzOSBAQAogCXNhbWUgcmVwb3NpdG9yeSwgYW5kIHRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIHRvIHN0b3AgdGhlCiAJYm9ycm93aW5nLgogCi0tLXF1aWV0OjoKIC1xOjoKKy0tcXVpZXQ6OgogCU9wZXJhdGUgcXVpZXRseS4gIFByb2dyZXNzIGlzIG5vdCByZXBvcnRlZCB0byB0aGUgc3RhbmRhcmQKIAllcnJvciBzdHJlYW0uCiAKLS0tdmVyYm9zZTo6CiAtdjo6CistLXZlcmJvc2U6OgogCVJ1biB2ZXJib3NlbHkuIERvZXMgbm90IGFmZmVjdCB0aGUgcmVwb3J0aW5nIG9mIHByb2dyZXNzIHN0YXR1cwogCXRvIHRoZSBzdGFuZGFyZCBlcnJvciBzdHJlYW0uCiAKIC0tcHJvZ3Jlc3M6OgogCVByb2dyZXNzIHN0YXR1cyBpcyByZXBvcnRlZCBvbiB0aGUgc3RhbmRhcmQgZXJyb3Igc3RyZWFtCi0JYnkgZGVmYXVsdCB3aGVuIGl0IGlzIGF0dGFjaGVkIHRvIGEgdGVybWluYWwsIHVubGVzcyAtcQorCWJ5IGRlZmF1bHQgd2hlbiBpdCBpcyBhdHRhY2hlZCB0byBhIHRlcm1pbmFsLCB1bmxlc3MgYC0tcXVpZXRgCiAJaXMgc3BlY2lmaWVkLiBUaGlzIGZsYWcgZm9yY2VzIHByb2dyZXNzIHN0YXR1cyBldmVuIGlmIHRoZQogCXN0YW5kYXJkIGVycm9yIHN0cmVhbSBpcyBub3QgZGlyZWN0ZWQgdG8gYSB0ZXJtaW5hbC4KIAotLS1uby1jaGVja291dDo6CistLXNlcnZlci1vcHRpb249PG9wdGlvbj46OgorCVRyYW5zbWl0IHRoZSBnaXZlbiBzdHJpbmcgdG8gdGhlIHNlcnZlciB3aGVuIGNvbW11bmljYXRpbmcgdXNpbmcKKwlwcm90b2NvbCB2ZXJzaW9uIDIuICBUaGUgZ2l2ZW4gc3RyaW5nIG11c3Qgbm90IGNvbnRhaW4gYSBOVUwgb3IgTEYKKwljaGFyYWN0ZXIuICBUaGUgc2VydmVyJ3MgaGFuZGxpbmcgb2Ygc2VydmVyIG9wdGlvbnMsIGluY2x1ZGluZworCXVua25vd24gb25lcywgaXMgc2VydmVyLXNwZWNpZmljLgorCVdoZW4gbXVsdGlwbGUgYC0tc2VydmVyLW9wdGlvbj08b3B0aW9uPmAgYXJlIGdpdmVuLCB0aGV5IGFyZSBhbGwKKwlzZW50IHRvIHRoZSBvdGhlciBzaWRlIGluIHRoZSBvcmRlciBsaXN0ZWQgb24gdGhlIGNvbW1hbmQgbGluZS4KKwogLW46OgorLS1uby1jaGVja291dDo6CiAJTm8gY2hlY2tvdXQgb2YgSEVBRCBpcyBwZXJmb3JtZWQgYWZ0ZXIgdGhlIGNsb25lIGlzIGNvbXBsZXRlLgogCiAtLWJhcmU6OgogCU1ha2UgYSAnYmFyZScgR2l0IHJlcG9zaXRvcnkuICBUaGF0IGlzLCBpbnN0ZWFkIG9mCiAJY3JlYXRpbmcgYDxkaXJlY3Rvcnk+YCBhbmQgcGxhY2luZyB0aGUgYWRtaW5pc3RyYXRpdmUKIAlmaWxlcyBpbiBgPGRpcmVjdG9yeT4vLmdpdGAsIG1ha2UgdGhlIGA8ZGlyZWN0b3J5PmAKLQlpdHNlbGYgdGhlIGAkR0lUX0RJUmAuIFRoaXMgb2J2aW91c2x5IGltcGxpZXMgdGhlIGAtbmAKKwlpdHNlbGYgdGhlIGAkR0lUX0RJUmAuIFRoaXMgb2J2aW91c2x5IGltcGxpZXMgdGhlIGAtLW5vLWNoZWNrb3V0YAogCWJlY2F1c2UgdGhlcmUgaXMgbm93aGVyZSB0byBjaGVjayBvdXQgdGhlIHdvcmtpbmcgdHJlZS4KIAlBbHNvIHRoZSBicmFuY2ggaGVhZHMgYXQgdGhlIHJlbW90ZSBhcmUgY29waWVkIGRpcmVjdGx5CiAJdG8gY29ycmVzcG9uZGluZyBsb2NhbCBicmFuY2ggaGVhZHMsIHdpdGhvdXQgbWFwcGluZwpAQCAtMTQ3LDYgKzE1NiwxMiBAQAogCXVzZWQsIG5laXRoZXIgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIG5vciB0aGUgcmVsYXRlZAogCWNvbmZpZ3VyYXRpb24gdmFyaWFibGVzIGFyZSBjcmVhdGVkLgogCistLXNwYXJzZTo6CisJSW5pdGlhbGl6ZSB0aGUgc3BhcnNlLWNoZWNrb3V0IGZpbGUgc28gdGhlIHdvcmtpbmcKKwlkaXJlY3Rvcnkgc3RhcnRzIHdpdGggb25seSB0aGUgZmlsZXMgaW4gdGhlIHJvb3QKKwlvZiB0aGUgcmVwb3NpdG9yeS4gVGhlIHNwYXJzZS1jaGVja291dCBmaWxlIGNhbiBiZQorCW1vZGlmaWVkIHRvIGdyb3cgdGhlIHdvcmtpbmcgZGlyZWN0b3J5IGFzIG5lZWRlZC4KKwogLS1taXJyb3I6OgogCVNldCB1cCBhIG1pcnJvciBvZiB0aGUgc291cmNlIHJlcG9zaXRvcnkuICBUaGlzIGltcGxpZXMgYC0tYmFyZWAuCiAJQ29tcGFyZWQgdG8gYC0tYmFyZWAsIGAtLW1pcnJvcmAgbm90IG9ubHkgbWFwcyBsb2NhbCBicmFuY2hlcyBvZiB0aGUKQEAgLTE1NSwxMyArMTcwLDEzIEBACiAJdGhhdCBhbGwgdGhlc2UgcmVmcyBhcmUgb3ZlcndyaXR0ZW4gYnkgYSBgZ2l0IHJlbW90ZSB1cGRhdGVgIGluIHRoZQogCXRhcmdldCByZXBvc2l0b3J5LgogCi0tLW9yaWdpbiA8bmFtZT46OgogLW8gPG5hbWU+OjoKKy0tb3JpZ2luIDxuYW1lPjo6CiAJSW5zdGVhZCBvZiB1c2luZyB0aGUgcmVtb3RlIG5hbWUgYG9yaWdpbmAgdG8ga2VlcCB0cmFjawogCW9mIHRoZSB1cHN0cmVhbSByZXBvc2l0b3J5LCB1c2UgYDxuYW1lPmAuCiAKLS0tYnJhbmNoIDxuYW1lPjo6CiAtYiA8bmFtZT46OgorLS1icmFuY2ggPG5hbWU+OjoKIAlJbnN0ZWFkIG9mIHBvaW50aW5nIHRoZSBuZXdseSBjcmVhdGVkIEhFQUQgdG8gdGhlIGJyYW5jaCBwb2ludGVkCiAJdG8gYnkgdGhlIGNsb25lZCByZXBvc2l0b3J5J3MgSEVBRCwgcG9pbnQgdG8gYDxuYW1lPmAgYnJhbmNoCiAJaW5zdGVhZC4gSW4gYSBub24tYmFyZSByZXBvc2l0b3J5LCB0aGlzIGlzIHRoZSBicmFuY2ggdGhhdCB3aWxsCkBAIC0xNjksOCArMTg0LDggQEAKIAlgLS1icmFuY2hgIGNhbiBhbHNvIHRha2UgdGFncyBhbmQgZGV0YWNoZXMgdGhlIEhFQUQgYXQgdGhhdCBjb21taXQKIAlpbiB0aGUgcmVzdWx0aW5nIHJlcG9zaXRvcnkuCiAKLS0tdXBsb2FkLXBhY2sgPHVwbG9hZC1wYWNrPjo6CiAtdSA8dXBsb2FkLXBhY2s+OjoKKy0tdXBsb2FkLXBhY2sgPHVwbG9hZC1wYWNrPjo6CiAJV2hlbiBnaXZlbiwgYW5kIHRoZSByZXBvc2l0b3J5IHRvIGNsb25lIGZyb20gaXMgYWNjZXNzZWQKIAl2aWEgc3NoLCB0aGlzIHNwZWNpZmllcyBhIG5vbi1kZWZhdWx0IHBhdGggZm9yIHRoZSBjb21tYW5kCiAJcnVuIG9uIHRoZSBvdGhlciBlbmQuCkBAIC0xNzksOCArMTk0LDggQEAKIAlTcGVjaWZ5IHRoZSBkaXJlY3RvcnkgZnJvbSB3aGljaCB0ZW1wbGF0ZXMgd2lsbCBiZSB1c2VkOwogCShTZWUgdGhlICJURU1QTEFURSBESVJFQ1RPUlkiIHNlY3Rpb24gb2YgbGlua2dpdDpnaXQtaW5pdFsxXS4pCiAKLS0tY29uZmlnIDxrZXk+PTx2YWx1ZT46OgogLWMgPGtleT49PHZhbHVlPjo6CistLWNvbmZpZyA8a2V5Pj08dmFsdWU+OjoKIAlTZXQgYSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGluIHRoZSBuZXdseS1jcmVhdGVkIHJlcG9zaXRvcnk7CiAJdGhpcyB0YWtlcyBlZmZlY3QgaW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIHJlcG9zaXRvcnkgaXMKIAlpbml0aWFsaXplZCwgYnV0IGJlZm9yZSB0aGUgcmVtb3RlIGhpc3RvcnkgaXMgZmV0Y2hlZCBvciBhbnkKQEAgLTE4OSw2ICsyMDQsMTIgQEAKIAl2YWx1ZXMgYXJlIGdpdmVuIGZvciB0aGUgc2FtZSBrZXksIGVhY2ggdmFsdWUgd2lsbCBiZSB3cml0dGVuIHRvCiAJdGhlIGNvbmZpZyBmaWxlLiBUaGlzIG1ha2VzIGl0IHNhZmUsIGZvciBleGFtcGxlLCB0byBhZGQKIAlhZGRpdGlvbmFsIGZldGNoIHJlZnNwZWNzIHRvIHRoZSBvcmlnaW4gcmVtb3RlLgorKworRHVlIHRvIGxpbWl0YXRpb25zIG9mIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uLCBzb21lIGNvbmZpZ3VyYXRpb24KK3ZhcmlhYmxlcyBkbyBub3QgdGFrZSBlZmZlY3QgdW50aWwgYWZ0ZXIgdGhlIGluaXRpYWwgZmV0Y2ggYW5kIGNoZWNrb3V0LgorQ29uZmlndXJhdGlvbiB2YXJpYWJsZXMga25vd24gdG8gbm90IHRha2UgZWZmZWN0IGFyZToKK2ByZW1vdGUuPG5hbWU+Lm1pcnJvcmAgYW5kIGByZW1vdGUuPG5hbWU+LnRhZ09wdGAuICBVc2UgdGhlCitjb3JyZXNwb25kaW5nIGAtLW1pcnJvcmAgYW5kIGAtLW5vLXRhZ3NgIG9wdGlvbnMgaW5zdGVhZC4KIAogLS1kZXB0aCA8ZGVwdGg+OjoKIAlDcmVhdGUgYSAnc2hhbGxvdycgY2xvbmUgd2l0aCBhIGhpc3RvcnkgdHJ1bmNhdGVkIHRvIHRoZQpAQCAtMjQ2LDYgKzI2NywxMiBAQAogLS1bbm8tXXNoYWxsb3ctc3VibW9kdWxlczo6CiAJQWxsIHN1Ym1vZHVsZXMgd2hpY2ggYXJlIGNsb25lZCB3aWxsIGJlIHNoYWxsb3cgd2l0aCBhIGRlcHRoIG9mIDEuCiAKKy0tW25vLV1yZW1vdGUtc3VibW9kdWxlczo6CisJQWxsIHN1Ym1vZHVsZXMgd2hpY2ggYXJlIGNsb25lZCB3aWxsIHVzZSB0aGUgc3RhdHVzIG9mIHRoZSBzdWJtb2R1bGUncworCXJlbW90ZS10cmFja2luZyBicmFuY2ggdG8gdXBkYXRlIHRoZSBzdWJtb2R1bGUsIHJhdGhlciB0aGFuIHRoZQorCXN1cGVycHJvamVjdCdzIHJlY29yZGVkIFNIQS0xLiBFcXVpdmFsZW50IHRvIHBhc3NpbmcgYC0tcmVtb3RlYCB0bworCWBnaXQgc3VibW9kdWxlIHVwZGF0ZWAuCisKIC0tc2VwYXJhdGUtZ2l0LWRpcj08Z2l0IGRpcj46OgogCUluc3RlYWQgb2YgcGxhY2luZyB0aGUgY2xvbmVkIHJlcG9zaXRvcnkgd2hlcmUgaXQgaXMgc3VwcG9zZWQKIAl0byBiZSwgcGxhY2UgdGhlIGNsb25lZCByZXBvc2l0b3J5IGF0IHRoZSBzcGVjaWZpZWQgZGlyZWN0b3J5LApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtY29sdW1uLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWNvbHVtbi50eHQKaW5kZXggNzYzYWZhYi4uZjU4ZTljNCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtY29sdW1uLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1jb2x1bW4udHh0CkBAIC00Nyw3ICs0Nyw3IEBACiAJVGhlIG51bWJlciBvZiBzcGFjZXMgYmV0d2VlbiBjb2x1bW5zLiBPbmUgc3BhY2UgYnkgZGVmYXVsdC4KIAogRVhBTVBMRVMKLS0tLS0tLQorLS0tLS0tLS0KIAogRm9ybWF0IGRhdGEgYnkgY29sdW1uczoKIC0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtY29tbWl0LWdyYXBoLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWNvbW1pdC1ncmFwaC50eHQKaW5kZXggNjI0NDcwZS4uMjhkMWZlZSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtY29tbWl0LWdyYXBoLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1jb21taXQtZ3JhcGgudHh0CkBAIC05LDkgKzksOCBAQAogU1lOT1BTSVMKIC0tLS0tLS0tCiBbdmVyc2VdCi0nZ2l0IGNvbW1pdC1ncmFwaCByZWFkJyBbLS1vYmplY3QtZGlyIDxkaXI+XQotJ2dpdCBjb21taXQtZ3JhcGggdmVyaWZ5JyBbLS1vYmplY3QtZGlyIDxkaXI+XQotJ2dpdCBjb21taXQtZ3JhcGggd3JpdGUnIDxvcHRpb25zPiBbLS1vYmplY3QtZGlyIDxkaXI+XQorJ2dpdCBjb21taXQtZ3JhcGggdmVyaWZ5JyBbLS1vYmplY3QtZGlyIDxkaXI+XSBbLS1zaGFsbG93XSBbLS1bbm8tXXByb2dyZXNzXQorJ2dpdCBjb21taXQtZ3JhcGggd3JpdGUnIDxvcHRpb25zPiBbLS1vYmplY3QtZGlyIDxkaXI+XSBbLS1bbm8tXXByb2dyZXNzXQogCiAKIERFU0NSSVBUSU9OCkBAIC0yNiw5ICsyNSwxNSBAQAogCVVzZSBnaXZlbiBkaXJlY3RvcnkgZm9yIHRoZSBsb2NhdGlvbiBvZiBwYWNrZmlsZXMgYW5kIGNvbW1pdC1ncmFwaAogCWZpbGUuIFRoaXMgcGFyYW1ldGVyIGV4aXN0cyB0byBzcGVjaWZ5IHRoZSBsb2NhdGlvbiBvZiBhbiBhbHRlcm5hdGUKIAl0aGF0IG9ubHkgaGFzIHRoZSBvYmplY3RzIGRpcmVjdG9yeSwgbm90IGEgZnVsbCBgLmdpdGAgZGlyZWN0b3J5LiBUaGUKLQljb21taXQtZ3JhcGggZmlsZSBpcyBleHBlY3RlZCB0byBiZSBhdCBgPGRpcj4vaW5mby9jb21taXQtZ3JhcGhgIGFuZAotCXRoZSBwYWNrZmlsZXMgYXJlIGV4cGVjdGVkIHRvIGJlIGluIGA8ZGlyPi9wYWNrYC4KKwljb21taXQtZ3JhcGggZmlsZSBpcyBleHBlY3RlZCB0byBiZSBpbiB0aGUgYDxkaXI+L2luZm9gIGRpcmVjdG9yeSBhbmQKKwl0aGUgcGFja2ZpbGVzIGFyZSBleHBlY3RlZCB0byBiZSBpbiBgPGRpcj4vcGFja2AuIElmIHRoZSBkaXJlY3RvcnkKKwljb3VsZCBub3QgYmUgbWFkZSBpbnRvIGFuIGFic29sdXRlIHBhdGgsIG9yIGRvZXMgbm90IG1hdGNoIGFueSBrbm93bgorCW9iamVjdCBkaXJlY3RvcnksIGBnaXQgY29tbWl0LWdyYXBoIC4uLmAgd2lsbCBleGl0IHdpdGggbm9uLXplcm8KKwlzdGF0dXMuCiAKKy0tW25vLV1wcm9ncmVzczo6CisJVHVybiBwcm9ncmVzcyBvbi9vZmYgZXhwbGljaXRseS4gSWYgbmVpdGhlciBpcyBzcGVjaWZpZWQsIHByb2dyZXNzIGlzCisJc2hvd24gaWYgc3RhbmRhcmQgZXJyb3IgaXMgY29ubmVjdGVkIHRvIGEgdGVybWluYWwuCiAKIENPTU1BTkRTCiAtLS0tLS0tLQpAQCAtNTEsMTYgKzU2LDMzIEBACiArCiBXaXRoIHRoZSBgLS1hcHBlbmRgIG9wdGlvbiwgaW5jbHVkZSBhbGwgY29tbWl0cyB0aGF0IGFyZSBwcmVzZW50IGluIHRoZQogZXhpc3RpbmcgY29tbWl0LWdyYXBoIGZpbGUuCi0KLSdyZWFkJzo6Ci0KLVJlYWQgdGhlIGNvbW1pdC1ncmFwaCBmaWxlIGFuZCBvdXRwdXQgYmFzaWMgZGV0YWlscyBhYm91dCBpdC4KLVVzZWQgZm9yIGRlYnVnZ2luZyBwdXJwb3Nlcy4KKysKK1dpdGggdGhlIGAtLXNwbGl0YCBvcHRpb24sIHdyaXRlIHRoZSBjb21taXQtZ3JhcGggYXMgYSBjaGFpbiBvZiBtdWx0aXBsZQorY29tbWl0LWdyYXBoIGZpbGVzIHN0b3JlZCBpbiBgPGRpcj4vaW5mby9jb21taXQtZ3JhcGhzYC4gVGhlIG5ldyBjb21taXRzCitub3QgYWxyZWFkeSBpbiB0aGUgY29tbWl0LWdyYXBoIGFyZSBhZGRlZCBpbiBhIG5ldyAidGlwIiBmaWxlLiBUaGlzIGZpbGUKK2lzIG1lcmdlZCB3aXRoIHRoZSBleGlzdGluZyBmaWxlIGlmIHRoZSBmb2xsb3dpbmcgbWVyZ2UgY29uZGl0aW9ucyBhcmUKK21ldDoKKysKKyogSWYgYC0tc2l6ZS1tdWx0aXBsZT08WD5gIGlzIG5vdCBzcGVjaWZpZWQsIGxldCBgWGAgZXF1YWwgMi4gSWYgdGhlIG5ldwordGlwIGZpbGUgd291bGQgaGF2ZSBgTmAgY29tbWl0cyBhbmQgdGhlIHByZXZpb3VzIHRpcCBoYXMgYE1gIGNvbW1pdHMgYW5kCitgWGAgdGltZXMgYE5gIGlzIGdyZWF0ZXIgdGhhbiAgYE1gLCBpbnN0ZWFkIG1lcmdlIHRoZSB0d28gZmlsZXMgaW50byBhCitzaW5nbGUgZmlsZS4KKysKKyogSWYgYC0tbWF4LWNvbW1pdHM9PE0+YCBpcyBzcGVjaWZpZWQgd2l0aCBgTWAgYSBwb3NpdGl2ZSBpbnRlZ2VyLCBhbmQgdGhlCituZXcgdGlwIGZpbGUgd291bGQgaGF2ZSBtb3JlIHRoYW4gYE1gIGNvbW1pdHMsIHRoZW4gaW5zdGVhZCBtZXJnZSB0aGUgbmV3Cit0aXAgd2l0aCB0aGUgcHJldmlvdXMgdGlwLgorKworRmluYWxseSwgaWYgYC0tZXhwaXJlLXRpbWU9PGRhdGV0aW1lPmAgaXMgbm90IHNwZWNpZmllZCwgbGV0IGBkYXRldGltZWAKK2JlIHRoZSBjdXJyZW50IHRpbWUuIEFmdGVyIHdyaXRpbmcgdGhlIHNwbGl0IGNvbW1pdC1ncmFwaCwgZGVsZXRlIGFsbAordW51c2VkIGNvbW1pdC1ncmFwaCB3aG9zZSBtb2RpZmllZCB0aW1lcyBhcmUgb2xkZXIgdGhhbiBgZGF0ZXRpbWVgLgogCiAndmVyaWZ5Jzo6CiAKIFJlYWQgdGhlIGNvbW1pdC1ncmFwaCBmaWxlIGFuZCB2ZXJpZnkgaXRzIGNvbnRlbnRzIGFnYWluc3QgdGhlIG9iamVjdAogZGF0YWJhc2UuIFVzZWQgdG8gY2hlY2sgZm9yIGNvcnJ1cHRlZCBkYXRhLgorKworV2l0aCB0aGUgYC0tc2hhbGxvd2Agb3B0aW9uLCBvbmx5IGNoZWNrIHRoZSB0aXAgY29tbWl0LWdyYXBoIGZpbGUgaW4KK2EgY2hhaW4gb2Ygc3BsaXQgY29tbWl0LWdyYXBocy4KIAogCiBFWEFNUExFUwpAQCAtOTMsMTIgKzExNSw2IEBACiAkIGdpdCByZXYtcGFyc2UgSEVBRCB8IGdpdCBjb21taXQtZ3JhcGggd3JpdGUgLS1zdGRpbi1jb21taXRzIC0tYXBwZW5kCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotKiBSZWFkIGJhc2ljIGluZm9ybWF0aW9uIGZyb20gdGhlIGNvbW1pdC1ncmFwaCBmaWxlLgotKwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0kIGdpdCBjb21taXQtZ3JhcGggcmVhZAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KIAogR0lUCiAtLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWNvbW1pdC10cmVlLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWNvbW1pdC10cmVlLnR4dAppbmRleCAwMDJkYWU2Li5lYzE1ZWU4IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1jb21taXQtdHJlZS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtY29tbWl0LXRyZWUudHh0CkBAIC0yMyw2ICsyMywxMCBAQAogZW1pdHMgdGhlIG5ldyBjb21taXQgb2JqZWN0IGlkIG9uIHN0ZG91dC4gVGhlIGxvZyBtZXNzYWdlIGlzIHJlYWQKIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0LCB1bmxlc3MgYC1tYCBvciBgLUZgIG9wdGlvbnMgYXJlIGdpdmVuLgogCitUaGUgYC1tYCBhbmQgYC1GYCBvcHRpb25zIGNhbiBiZSBnaXZlbiBhbnkgbnVtYmVyIG9mIHRpbWVzLCBpbiBhbnkKK29yZGVyLiBUaGUgY29tbWl0IGxvZyBtZXNzYWdlIHdpbGwgYmUgY29tcG9zZWQgaW4gdGhlIG9yZGVyIGluIHdoaWNoCit0aGUgb3B0aW9ucyBhcmUgZ2l2ZW4uCisKIEEgY29tbWl0IG9iamVjdCBtYXkgaGF2ZSBhbnkgbnVtYmVyIG9mIHBhcmVudHMuIFdpdGggZXhhY3RseSBvbmUKIHBhcmVudCwgaXQgaXMgYW4gb3JkaW5hcnkgY29tbWl0LiBIYXZpbmcgbW9yZSB0aGFuIG9uZSBwYXJlbnQgbWFrZXMKIHRoZSBjb21taXQgYSBtZXJnZSBiZXR3ZWVuIHNldmVyYWwgbGluZXMgb2YgaGlzdG9yeS4gSW5pdGlhbCAocm9vdCkKQEAgLTQxLDcgKzQ1LDcgQEAKIE9QVElPTlMKIC0tLS0tLS0KIDx0cmVlPjo6Ci0JQW4gZXhpc3RpbmcgdHJlZSBvYmplY3QKKwlBbiBleGlzdGluZyB0cmVlIG9iamVjdC4KIAogLXAgPHBhcmVudD46OgogCUVhY2ggYC1wYCBpbmRpY2F0ZXMgdGhlIGlkIG9mIGEgcGFyZW50IGNvbW1pdCBvYmplY3QuCkBAIC01Miw3ICs1Niw4IEBACiAKIC1GIDxmaWxlPjo6CiAJUmVhZCB0aGUgY29tbWl0IGxvZyBtZXNzYWdlIGZyb20gdGhlIGdpdmVuIGZpbGUuIFVzZSBgLWAgdG8gcmVhZAotCWZyb20gdGhlIHN0YW5kYXJkIGlucHV0LgorCWZyb20gdGhlIHN0YW5kYXJkIGlucHV0LiBUaGlzIGNhbiBiZSBnaXZlbiBtb3JlIHRoYW4gb25jZSBhbmQgdGhlCisJY29udGVudCBvZiBlYWNoIGZpbGUgYmVjb21lcyBpdHMgb3duIHBhcmFncmFwaC4KIAogLVNbPGtleWlkPl06OgogLS1ncGctc2lnbls9PGtleWlkPl06OgpAQCAtNjQsNyArNjksNiBAQAogCURvIG5vdCBHUEctc2lnbiBjb21taXQsIHRvIGNvdW50ZXJtYW5kIGEgYC0tZ3BnLXNpZ25gIG9wdGlvbgogCWdpdmVuIGVhcmxpZXIgb24gdGhlIGNvbW1hbmQgbGluZS4KIAotCiBDb21taXQgSW5mb3JtYXRpb24KIC0tLS0tLS0tLS0tLS0tLS0tLQogCkBAIC03NCwyNiArNzgsNiBAQAogLSBhdXRob3IgbmFtZSwgZW1haWwgYW5kIGRhdGUKIC0gY29tbWl0dGVyIG5hbWUgYW5kIGVtYWlsIGFuZCB0aGUgY29tbWl0IHRpbWUuCiAKLVdoaWxlIHBhcmVudCBvYmplY3QgaWRzIGFyZSBwcm92aWRlZCBvbiB0aGUgY29tbWFuZCBsaW5lLCBhdXRob3IgYW5kCi1jb21taXR0ZXIgaW5mb3JtYXRpb24gaXMgdGFrZW4gZnJvbSB0aGUgZm9sbG93aW5nIGVudmlyb25tZW50IHZhcmlhYmxlcywKLWlmIHNldDoKLQotCUdJVF9BVVRIT1JfTkFNRQotCUdJVF9BVVRIT1JfRU1BSUwKLQlHSVRfQVVUSE9SX0RBVEUKLQlHSVRfQ09NTUlUVEVSX05BTUUKLQlHSVRfQ09NTUlUVEVSX0VNQUlMCi0JR0lUX0NPTU1JVFRFUl9EQVRFCi0KLShuYiAiPCIsICI+IiBhbmQgIlxuInMgYXJlIHN0cmlwcGVkKQotCi1JbiBjYXNlIChzb21lIG9mKSB0aGVzZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgYXJlIG5vdCBzZXQsIHRoZSBpbmZvcm1hdGlvbgotaXMgdGFrZW4gZnJvbSB0aGUgY29uZmlndXJhdGlvbiBpdGVtcyB1c2VyLm5hbWUgYW5kIHVzZXIuZW1haWwsIG9yLCBpZiBub3QKLXByZXNlbnQsIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBFTUFJTCwgb3IsIGlmIHRoYXQgaXMgbm90IHNldCwKLXN5c3RlbSB1c2VyIG5hbWUgYW5kIHRoZSBob3N0bmFtZSB1c2VkIGZvciBvdXRnb2luZyBtYWlsICh0YWtlbgotZnJvbSBgL2V0Yy9tYWlsbmFtZWAgYW5kIGZhbGxpbmcgYmFjayB0byB0aGUgZnVsbHkgcXVhbGlmaWVkIGhvc3RuYW1lIHdoZW4KLXRoYXQgZmlsZSBkb2VzIG5vdCBleGlzdCkuCi0KIEEgY29tbWl0IGNvbW1lbnQgaXMgcmVhZCBmcm9tIHN0ZGluLiBJZiBhIGNoYW5nZWxvZwogZW50cnkgaXMgbm90IHByb3ZpZGVkIHZpYSAiPCIgcmVkaXJlY3Rpb24sICdnaXQgY29tbWl0LXRyZWUnIHdpbGwganVzdCB3YWl0CiBmb3Igb25lIHRvIGJlIGVudGVyZWQgYW5kIHRlcm1pbmF0ZWQgd2l0aCBeRC4KQEAgLTExMiw2ICs5Niw3IEBACiBTRUUgQUxTTwogLS0tLS0tLS0KIGxpbmtnaXQ6Z2l0LXdyaXRlLXRyZWVbMV0KK2xpbmtnaXQ6Z2l0LWNvbW1pdFsxXQogCiBHSVQKIC0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtY29tbWl0LnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWNvbW1pdC50eHQKaW5kZXggZjk3MGE0My4uMTNmNjUzOSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtY29tbWl0LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1jb21taXQudHh0CkBAIC0xMywyMCArMTMsMjUgQEAKIAkgICBbLUYgPGZpbGU+IHwgLW0gPG1zZz5dIFstLXJlc2V0LWF1dGhvcl0gWy0tYWxsb3ctZW1wdHldCiAJICAgWy0tYWxsb3ctZW1wdHktbWVzc2FnZV0gWy0tbm8tdmVyaWZ5XSBbLWVdIFstLWF1dGhvcj08YXV0aG9yPl0KIAkgICBbLS1kYXRlPTxkYXRlPl0gWy0tY2xlYW51cD08bW9kZT5dIFstLVtuby1dc3RhdHVzXQotCSAgIFstaSB8IC1vXSBbLVNbPGtleWlkPl1dIFstLV0gWzxmaWxlPi4uLl0KKwkgICBbLWkgfCAtb10gWy0tcGF0aHNwZWMtZnJvbS1maWxlPTxmaWxlPiBbLS1wYXRoc3BlYy1maWxlLW51bF1dCisJICAgWy1TWzxrZXlpZD5dXSBbLS1dIFs8cGF0aHNwZWM+Li4uXQogCiBERVNDUklQVElPTgogLS0tLS0tLS0tLS0KLVN0b3JlcyB0aGUgY3VycmVudCBjb250ZW50cyBvZiB0aGUgaW5kZXggaW4gYSBuZXcgY29tbWl0IGFsb25nCi13aXRoIGEgbG9nIG1lc3NhZ2UgZnJvbSB0aGUgdXNlciBkZXNjcmliaW5nIHRoZSBjaGFuZ2VzLgorQ3JlYXRlIGEgbmV3IGNvbW1pdCBjb250YWluaW5nIHRoZSBjdXJyZW50IGNvbnRlbnRzIG9mIHRoZSBpbmRleCBhbmQKK3RoZSBnaXZlbiBsb2cgbWVzc2FnZSBkZXNjcmliaW5nIHRoZSBjaGFuZ2VzLiBUaGUgbmV3IGNvbW1pdCBpcyBhCitkaXJlY3QgY2hpbGQgb2YgSEVBRCwgdXN1YWxseSB0aGUgdGlwIG9mIHRoZSBjdXJyZW50IGJyYW5jaCwgYW5kIHRoZQorYnJhbmNoIGlzIHVwZGF0ZWQgdG8gcG9pbnQgdG8gaXQgKHVubGVzcyBubyBicmFuY2ggaXMgYXNzb2NpYXRlZCB3aXRoCit0aGUgd29ya2luZyB0cmVlLCBpbiB3aGljaCBjYXNlIEhFQUQgaXMgImRldGFjaGVkIiBhcyBkZXNjcmliZWQgaW4KK2xpbmtnaXQ6Z2l0LWNoZWNrb3V0WzFdKS4KIAotVGhlIGNvbnRlbnQgdG8gYmUgYWRkZWQgY2FuIGJlIHNwZWNpZmllZCBpbiBzZXZlcmFsIHdheXM6CitUaGUgY29udGVudCB0byBiZSBjb21taXR0ZWQgY2FuIGJlIHNwZWNpZmllZCBpbiBzZXZlcmFsIHdheXM6CiAKLTEuIGJ5IHVzaW5nICdnaXQgYWRkJyB0byBpbmNyZW1lbnRhbGx5ICJhZGQiIGNoYW5nZXMgdG8gdGhlCi0gICBpbmRleCBiZWZvcmUgdXNpbmcgdGhlICdjb21taXQnIGNvbW1hbmQgKE5vdGU6IGV2ZW4gbW9kaWZpZWQKLSAgIGZpbGVzIG11c3QgYmUgImFkZGVkIik7CisxLiBieSB1c2luZyBsaW5rZ2l0OmdpdC1hZGRbMV0gdG8gaW5jcmVtZW50YWxseSAiYWRkIiBjaGFuZ2VzIHRvIHRoZQorICAgaW5kZXggYmVmb3JlIHVzaW5nIHRoZSAnY29tbWl0JyBjb21tYW5kIChOb3RlOiBldmVuIG1vZGlmaWVkIGZpbGVzCisgICBtdXN0IGJlICJhZGRlZCIpOwogCi0yLiBieSB1c2luZyAnZ2l0IHJtJyB0byByZW1vdmUgZmlsZXMgZnJvbSB0aGUgd29ya2luZyB0cmVlCisyLiBieSB1c2luZyBsaW5rZ2l0OmdpdC1ybVsxXSB0byByZW1vdmUgZmlsZXMgZnJvbSB0aGUgd29ya2luZyB0cmVlCiAgICBhbmQgdGhlIGluZGV4LCBhZ2FpbiBiZWZvcmUgdXNpbmcgdGhlICdjb21taXQnIGNvbW1hbmQ7CiAKIDMuIGJ5IGxpc3RpbmcgZmlsZXMgYXMgYXJndW1lbnRzIHRvIHRoZSAnY29tbWl0JyBjb21tYW5kCkBAIC0yNzQsMjIgKzI3OSwzNyBAQAogCWFscmVhZHkgYmVlbiBzdGFnZWQuIElmIHVzZWQgdG9nZXRoZXIgd2l0aCBgLS1hbGxvdy1lbXB0eWAKIAlwYXRocyBhcmUgYWxzbyBub3QgcmVxdWlyZWQsIGFuZCBhbiBlbXB0eSBjb21taXQgd2lsbCBiZSBjcmVhdGVkLgogCistLXBhdGhzcGVjLWZyb20tZmlsZT08ZmlsZT46OgorCVBhdGhzcGVjIGlzIHBhc3NlZCBpbiBgPGZpbGU+YCBpbnN0ZWFkIG9mIGNvbW1hbmRsaW5lIGFyZ3MuIElmCisJYDxmaWxlPmAgaXMgZXhhY3RseSBgLWAgdGhlbiBzdGFuZGFyZCBpbnB1dCBpcyB1c2VkLiBQYXRoc3BlYworCWVsZW1lbnRzIGFyZSBzZXBhcmF0ZWQgYnkgTEYgb3IgQ1IvTEYuIFBhdGhzcGVjIGVsZW1lbnRzIGNhbiBiZQorCXF1b3RlZCBhcyBleHBsYWluZWQgZm9yIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBjb3JlLnF1b3RlUGF0aGAKKwkoc2VlIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXSkuIFNlZSBhbHNvIGAtLXBhdGhzcGVjLWZpbGUtbnVsYCBhbmQKKwlnbG9iYWwgYC0tbGl0ZXJhbC1wYXRoc3BlY3NgLgorCistLXBhdGhzcGVjLWZpbGUtbnVsOjoKKwlPbmx5IG1lYW5pbmdmdWwgd2l0aCBgLS1wYXRoc3BlYy1mcm9tLWZpbGVgLiBQYXRoc3BlYyBlbGVtZW50cyBhcmUKKwlzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIGFuZCBhbGwgb3RoZXIgY2hhcmFjdGVycyBhcmUgdGFrZW4KKwlsaXRlcmFsbHkgKGluY2x1ZGluZyBuZXdsaW5lcyBhbmQgcXVvdGVzKS4KKwogLXVbPG1vZGU+XTo6CiAtLXVudHJhY2tlZC1maWxlc1s9PG1vZGU+XTo6CiAJU2hvdyB1bnRyYWNrZWQgZmlsZXMuCiArCistLQogVGhlIG1vZGUgcGFyYW1ldGVyIGlzIG9wdGlvbmFsIChkZWZhdWx0cyB0byAnYWxsJyksIGFuZCBpcyB1c2VkIHRvCiBzcGVjaWZ5IHRoZSBoYW5kbGluZyBvZiB1bnRyYWNrZWQgZmlsZXM7IHdoZW4gLXUgaXMgbm90IHVzZWQsIHRoZQogZGVmYXVsdCBpcyAnbm9ybWFsJywgaS5lLiBzaG93IHVudHJhY2tlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMuCi0rCisKIFRoZSBwb3NzaWJsZSBvcHRpb25zIGFyZToKLSsKKwogCS0gJ25vJyAgICAgLSBTaG93IG5vIHVudHJhY2tlZCBmaWxlcwogCS0gJ25vcm1hbCcgLSBTaG93cyB1bnRyYWNrZWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzCiAJLSAnYWxsJyAgICAtIEFsc28gc2hvd3MgaW5kaXZpZHVhbCBmaWxlcyBpbiB1bnRyYWNrZWQgZGlyZWN0b3JpZXMuCi0rCisKIFRoZSBkZWZhdWx0IGNhbiBiZSBjaGFuZ2VkIHVzaW5nIHRoZSBzdGF0dXMuc2hvd1VudHJhY2tlZEZpbGVzCiBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGRvY3VtZW50ZWQgaW4gbGlua2dpdDpnaXQtY29uZmlnWzFdLgorLS0KIAogLXY6OgogLS12ZXJib3NlOjoKQEAgLTMzOSwxNSArMzU5LDEzIEBACiBcLS06OgogCURvIG5vdCBpbnRlcnByZXQgYW55IG1vcmUgYXJndW1lbnRzIGFzIG9wdGlvbnMuCiAKLTxmaWxlPi4uLjo6Ci0JV2hlbiBmaWxlcyBhcmUgZ2l2ZW4gb24gdGhlIGNvbW1hbmQgbGluZSwgdGhlIGNvbW1hbmQKLQljb21taXRzIHRoZSBjb250ZW50cyBvZiB0aGUgbmFtZWQgZmlsZXMsIHdpdGhvdXQKLQlyZWNvcmRpbmcgdGhlIGNoYW5nZXMgYWxyZWFkeSBzdGFnZWQuICBUaGUgY29udGVudHMgb2YKLQl0aGVzZSBmaWxlcyBhcmUgYWxzbyBzdGFnZWQgZm9yIHRoZSBuZXh0IGNvbW1pdCBvbiB0b3AKLQlvZiB3aGF0IGhhdmUgYmVlbiBzdGFnZWQgYmVmb3JlLgotCi06Z2l0LWNvbW1pdDogMQotaW5jbHVkZTo6ZGF0ZS1mb3JtYXRzLnR4dFtdCis8cGF0aHNwZWM+Li4uOjoKKwlXaGVuIHBhdGhzcGVjIGlzIGdpdmVuIG9uIHRoZSBjb21tYW5kIGxpbmUsIGNvbW1pdCB0aGUgY29udGVudHMgb2YKKwl0aGUgZmlsZXMgdGhhdCBtYXRjaCB0aGUgcGF0aHNwZWMgd2l0aG91dCByZWNvcmRpbmcgdGhlIGNoYW5nZXMKKwlhbHJlYWR5IGFkZGVkIHRvIHRoZSBpbmRleC4gVGhlIGNvbnRlbnRzIG9mIHRoZXNlIGZpbGVzIGFyZSBhbHNvCisJc3RhZ2VkIGZvciB0aGUgbmV4dCBjb21taXQgb24gdG9wIG9mIHdoYXQgaGF2ZSBiZWVuIHN0YWdlZCBiZWZvcmUuCisrCitGb3IgbW9yZSBkZXRhaWxzLCBzZWUgdGhlICdwYXRoc3BlYycgZW50cnkgaW4gbGlua2dpdDpnaXRnbG9zc2FyeVs3XS4KIAogRVhBTVBMRVMKIC0tLS0tLS0tCkBAIC0zNTUsNyArMzczLDcgQEAKIHlvdXIgd29ya2luZyB0cmVlIGFyZSB0ZW1wb3JhcmlseSBzdG9yZWQgdG8gYSBzdGFnaW5nIGFyZWEKIGNhbGxlZCB0aGUgImluZGV4IiB3aXRoICdnaXQgYWRkJy4gIEEgZmlsZSBjYW4gYmUKIHJldmVydGVkIGJhY2ssIG9ubHkgaW4gdGhlIGluZGV4IGJ1dCBub3QgaW4gdGhlIHdvcmtpbmcgdHJlZSwKLXRvIHRoYXQgb2YgdGhlIGxhc3QgY29tbWl0IHdpdGggYGdpdCByZXNldCBIRUFEIC0tIDxmaWxlPmAsCit0byB0aGF0IG9mIHRoZSBsYXN0IGNvbW1pdCB3aXRoIGBnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT5gLAogd2hpY2ggZWZmZWN0aXZlbHkgcmV2ZXJ0cyAnZ2l0IGFkZCcgYW5kIHByZXZlbnRzIHRoZSBjaGFuZ2VzIHRvCiB0aGlzIGZpbGUgZnJvbSBwYXJ0aWNpcGF0aW5nIGluIHRoZSBuZXh0IGNvbW1pdC4gIEFmdGVyIGJ1aWxkaW5nCiB0aGUgc3RhdGUgdG8gYmUgY29tbWl0dGVkIGluY3JlbWVudGFsbHkgd2l0aCB0aGVzZSBjb21tYW5kcywKQEAgLTQ0Miw2ICs0NjAsNDMgQEAKIHNob3VsZCBiZSByZWNvcmRlZCBhcyBhIHNpbmdsZSBjb21taXQuICBJbiBmYWN0LCB0aGUgY29tbWFuZAogcmVmdXNlcyB0byBydW4gd2hlbiBnaXZlbiBwYXRobmFtZXMgKGJ1dCBzZWUgYC1pYCBvcHRpb24pLgogCitDT01NSVQgSU5GT1JNQVRJT04KKy0tLS0tLS0tLS0tLS0tLS0tLQorCitBdXRob3IgYW5kIGNvbW1pdHRlciBpbmZvcm1hdGlvbiBpcyB0YWtlbiBmcm9tIHRoZSBmb2xsb3dpbmcgZW52aXJvbm1lbnQKK3ZhcmlhYmxlcywgaWYgc2V0OgorCisJR0lUX0FVVEhPUl9OQU1FCisJR0lUX0FVVEhPUl9FTUFJTAorCUdJVF9BVVRIT1JfREFURQorCUdJVF9DT01NSVRURVJfTkFNRQorCUdJVF9DT01NSVRURVJfRU1BSUwKKwlHSVRfQ09NTUlUVEVSX0RBVEUKKworKG5iICI8IiwgIj4iIGFuZCAiXG4icyBhcmUgc3RyaXBwZWQpCisKK1RoZSBhdXRob3IgYW5kIGNvbW1pdHRlciBuYW1lcyBhcmUgYnkgY29udmVudGlvbiBzb21lIGZvcm0gb2YgYSBwZXJzb25hbCBuYW1lCisodGhhdCBpcywgdGhlIG5hbWUgYnkgd2hpY2ggb3RoZXIgaHVtYW5zIHJlZmVyIHRvIHlvdSksIGFsdGhvdWdoIEdpdCBkb2VzIG5vdAorZW5mb3JjZSBvciByZXF1aXJlIGFueSBwYXJ0aWN1bGFyIGZvcm0uIEFyYml0cmFyeSBVbmljb2RlIG1heSBiZSB1c2VkLCBzdWJqZWN0Cit0byB0aGUgY29uc3RyYWludHMgbGlzdGVkIGFib3ZlLiBUaGlzIG5hbWUgaGFzIG5vIGVmZmVjdCBvbiBhdXRoZW50aWNhdGlvbjsgZm9yCit0aGF0LCBzZWUgdGhlIGBjcmVkZW50aWFsLnVzZXJuYW1lYCB2YXJpYWJsZSBpbiBsaW5rZ2l0OmdpdC1jb25maWdbMV0uCisKK0luIGNhc2UgKHNvbWUgb2YpIHRoZXNlIGVudmlyb25tZW50IHZhcmlhYmxlcyBhcmUgbm90IHNldCwgdGhlIGluZm9ybWF0aW9uCitpcyB0YWtlbiBmcm9tIHRoZSBjb25maWd1cmF0aW9uIGl0ZW1zIGB1c2VyLm5hbWVgIGFuZCBgdXNlci5lbWFpbGAsIG9yLCBpZiBub3QKK3ByZXNlbnQsIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBFTUFJTCwgb3IsIGlmIHRoYXQgaXMgbm90IHNldCwKK3N5c3RlbSB1c2VyIG5hbWUgYW5kIHRoZSBob3N0bmFtZSB1c2VkIGZvciBvdXRnb2luZyBtYWlsICh0YWtlbgorZnJvbSBgL2V0Yy9tYWlsbmFtZWAgYW5kIGZhbGxpbmcgYmFjayB0byB0aGUgZnVsbHkgcXVhbGlmaWVkIGhvc3RuYW1lIHdoZW4KK3RoYXQgZmlsZSBkb2VzIG5vdCBleGlzdCkuCisKK1RoZSBgYXV0aG9yLm5hbWVgIGFuZCBgY29tbWl0dGVyLm5hbWVgIGFuZCB0aGVpciBjb3JyZXNwb25kaW5nIGVtYWlsIG9wdGlvbnMKK292ZXJyaWRlIGB1c2VyLm5hbWVgIGFuZCBgdXNlci5lbWFpbGAgaWYgc2V0IGFuZCBhcmUgb3ZlcnJpZGRlbiB0aGVtc2VsdmVzIGJ5Cit0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzLgorCitUaGUgdHlwaWNhbCB1c2FnZSBpcyB0byBzZXQganVzdCB0aGUgYHVzZXIubmFtZWAgYW5kIGB1c2VyLmVtYWlsYCB2YXJpYWJsZXM7Cit0aGUgb3RoZXIgb3B0aW9ucyBhcmUgcHJvdmlkZWQgZm9yIG1vcmUgY29tcGxleCB1c2UgY2FzZXMuCisKKzpnaXQtY29tbWl0OiAxCitpbmNsdWRlOjpkYXRlLWZvcm1hdHMudHh0W10KIAogRElTQ1VTU0lPTgogLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtY29uZmlnLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWNvbmZpZy50eHQKaW5kZXggMWJmZTlmNS4uNzU3MzE2MCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtY29uZmlnLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1jb25maWcudHh0CkBAIC05LDE4ICs5LDE4IEBACiBTWU5PUFNJUwogLS0tLS0tLS0KIFt2ZXJzZV0KLSdnaXQgY29uZmlnJyBbPGZpbGUtb3B0aW9uPl0gWy0tdHlwZT08dHlwZT5dIFstLXNob3ctb3JpZ2luXSBbLXp8LS1udWxsXSBuYW1lIFt2YWx1ZSBbdmFsdWVfcmVnZXhdXQorJ2dpdCBjb25maWcnIFs8ZmlsZS1vcHRpb24+XSBbLS10eXBlPTx0eXBlPl0gWy0tc2hvdy1vcmlnaW5dIFstLXNob3ctc2NvcGVdIFstenwtLW51bGxdIG5hbWUgW3ZhbHVlIFt2YWx1ZV9yZWdleF1dCiAnZ2l0IGNvbmZpZycgWzxmaWxlLW9wdGlvbj5dIFstLXR5cGU9PHR5cGU+XSAtLWFkZCBuYW1lIHZhbHVlCiAnZ2l0IGNvbmZpZycgWzxmaWxlLW9wdGlvbj5dIFstLXR5cGU9PHR5cGU+XSAtLXJlcGxhY2UtYWxsIG5hbWUgdmFsdWUgW3ZhbHVlX3JlZ2V4XQotJ2dpdCBjb25maWcnIFs8ZmlsZS1vcHRpb24+XSBbLS10eXBlPTx0eXBlPl0gWy0tc2hvdy1vcmlnaW5dIFstenwtLW51bGxdIC0tZ2V0IG5hbWUgW3ZhbHVlX3JlZ2V4XQotJ2dpdCBjb25maWcnIFs8ZmlsZS1vcHRpb24+XSBbLS10eXBlPTx0eXBlPl0gWy0tc2hvdy1vcmlnaW5dIFstenwtLW51bGxdIC0tZ2V0LWFsbCBuYW1lIFt2YWx1ZV9yZWdleF0KLSdnaXQgY29uZmlnJyBbPGZpbGUtb3B0aW9uPl0gWy0tdHlwZT08dHlwZT5dIFstLXNob3ctb3JpZ2luXSBbLXp8LS1udWxsXSBbLS1uYW1lLW9ubHldIC0tZ2V0LXJlZ2V4cCBuYW1lX3JlZ2V4IFt2YWx1ZV9yZWdleF0KKydnaXQgY29uZmlnJyBbPGZpbGUtb3B0aW9uPl0gWy0tdHlwZT08dHlwZT5dIFstLXNob3ctb3JpZ2luXSBbLS1zaG93LXNjb3BlXSBbLXp8LS1udWxsXSAtLWdldCBuYW1lIFt2YWx1ZV9yZWdleF0KKydnaXQgY29uZmlnJyBbPGZpbGUtb3B0aW9uPl0gWy0tdHlwZT08dHlwZT5dIFstLXNob3ctb3JpZ2luXSBbLS1zaG93LXNjb3BlXSBbLXp8LS1udWxsXSAtLWdldC1hbGwgbmFtZSBbdmFsdWVfcmVnZXhdCisnZ2l0IGNvbmZpZycgWzxmaWxlLW9wdGlvbj5dIFstLXR5cGU9PHR5cGU+XSBbLS1zaG93LW9yaWdpbl0gWy0tc2hvdy1zY29wZV0gWy16fC0tbnVsbF0gWy0tbmFtZS1vbmx5XSAtLWdldC1yZWdleHAgbmFtZV9yZWdleCBbdmFsdWVfcmVnZXhdCiAnZ2l0IGNvbmZpZycgWzxmaWxlLW9wdGlvbj5dIFstLXR5cGU9PHR5cGU+XSBbLXp8LS1udWxsXSAtLWdldC11cmxtYXRjaCBuYW1lIFVSTAogJ2dpdCBjb25maWcnIFs8ZmlsZS1vcHRpb24+XSAtLXVuc2V0IG5hbWUgW3ZhbHVlX3JlZ2V4XQogJ2dpdCBjb25maWcnIFs8ZmlsZS1vcHRpb24+XSAtLXVuc2V0LWFsbCBuYW1lIFt2YWx1ZV9yZWdleF0KICdnaXQgY29uZmlnJyBbPGZpbGUtb3B0aW9uPl0gLS1yZW5hbWUtc2VjdGlvbiBvbGRfbmFtZSBuZXdfbmFtZQogJ2dpdCBjb25maWcnIFs8ZmlsZS1vcHRpb24+XSAtLXJlbW92ZS1zZWN0aW9uIG5hbWUKLSdnaXQgY29uZmlnJyBbPGZpbGUtb3B0aW9uPl0gWy0tc2hvdy1vcmlnaW5dIFstenwtLW51bGxdIFstLW5hbWUtb25seV0gLWwgfCAtLWxpc3QKKydnaXQgY29uZmlnJyBbPGZpbGUtb3B0aW9uPl0gWy0tc2hvdy1vcmlnaW5dIFstLXNob3ctc2NvcGVdIFstenwtLW51bGxdIFstLW5hbWUtb25seV0gLWwgfCAtLWxpc3QKICdnaXQgY29uZmlnJyBbPGZpbGUtb3B0aW9uPl0gLS1nZXQtY29sb3IgbmFtZSBbZGVmYXVsdF0KICdnaXQgY29uZmlnJyBbPGZpbGUtb3B0aW9uPl0gLS1nZXQtY29sb3Jib29sIG5hbWUgW3N0ZG91dC1pcy10dHldCiAnZ2l0IGNvbmZpZycgWzxmaWxlLW9wdGlvbj5dIC1lIHwgLS1lZGl0CkBAIC0xMjYsNyArMTI2LDcgQEAKIAogLS1sb2NhbDo6CiAJRm9yIHdyaXRpbmcgb3B0aW9uczogd3JpdGUgdG8gdGhlIHJlcG9zaXRvcnkgYC5naXQvY29uZmlnYCBmaWxlLgotCVRoaXMgaXMJdGhlIGRlZmF1bHQgYmVoYXZpb3IuCisJVGhpcyBpcyB0aGUgZGVmYXVsdCBiZWhhdmlvci4KICsKIEZvciByZWFkaW5nIG9wdGlvbnM6IHJlYWQgb25seSBmcm9tIHRoZSByZXBvc2l0b3J5IGAuZ2l0L2NvbmZpZ2AgcmF0aGVyIHRoYW4KIGZyb20gYWxsIGF2YWlsYWJsZSBmaWxlcy4KQEAgLTIyMiw2ICsyMjIsMTEgQEAKIAl0aGUgYWN0dWFsIG9yaWdpbiAoY29uZmlnIGZpbGUgcGF0aCwgcmVmLCBvciBibG9iIGlkIGlmCiAJYXBwbGljYWJsZSkuCiAKKy0tc2hvdy1zY29wZTo6CisJU2ltaWxhciB0byBgLS1zaG93LW9yaWdpbmAgaW4gdGhhdCBpdCBhdWdtZW50cyB0aGUgb3V0cHV0IG9mCisJYWxsIHF1ZXJpZWQgY29uZmlnIG9wdGlvbnMgd2l0aCB0aGUgc2NvcGUgb2YgdGhhdCB2YWx1ZQorCShsb2NhbCwgZ2xvYmFsLCBzeXN0ZW0sIGNvbW1hbmQpLgorCiAtLWdldC1jb2xvcmJvb2wgbmFtZSBbc3Rkb3V0LWlzLXR0eV06OgogCiAJRmluZCB0aGUgY29sb3Igc2V0dGluZyBmb3IgYG5hbWVgIChlLmcuIGBjb2xvci5kaWZmYCkgYW5kIG91dHB1dApAQCAtMjQwLDcgKzI0NSw5IEBACiAJb3V0cHV0LiAgVGhlIG9wdGlvbmFsIGBkZWZhdWx0YCBwYXJhbWV0ZXIgaXMgdXNlZCBpbnN0ZWFkLCBpZgogCXRoZXJlIGlzIG5vIGNvbG9yIGNvbmZpZ3VyZWQgZm9yIGBuYW1lYC4KICsKLWAtLXR5cGU9Y29sb3IgWy0tZGVmYXVsdD08ZGVmYXVsdD5dYCBpcyBwcmVmZXJyZWQgb3ZlciBgLS1nZXQtY29sb3JgLgorYC0tdHlwZT1jb2xvciBbLS1kZWZhdWx0PTxkZWZhdWx0Pl1gIGlzIHByZWZlcnJlZCBvdmVyIGAtLWdldC1jb2xvcmAKKyhidXQgbm90ZSB0aGF0IGAtLWdldC1jb2xvcmAgd2lsbCBvbWl0IHRoZSB0cmFpbGluZyBuZXdsaW5lIHByaW50ZWQgYnkKK2AtLXR5cGU9Y29sb3JgKS4KIAogLWU6OgogLS1lZGl0OjoKQEAgLTMzNywzMyArMzQ0LDM1IEBACiAKIEdpdmVuIGEgLmdpdC9jb25maWcgbGlrZSB0aGlzOgogCi0JIwotCSMgVGhpcyBpcyB0aGUgY29uZmlnIGZpbGUsIGFuZAotCSMgYSAnIycgb3IgJzsnIGNoYXJhY3RlciBpbmRpY2F0ZXMKLQkjIGEgY29tbWVudAotCSMKKy0tLS0tLS0tLS0tLQorIworIyBUaGlzIGlzIHRoZSBjb25maWcgZmlsZSwgYW5kCisjIGEgJyMnIG9yICc7JyBjaGFyYWN0ZXIgaW5kaWNhdGVzCisjIGEgY29tbWVudAorIwogCi0JOyBjb3JlIHZhcmlhYmxlcwotCVtjb3JlXQotCQk7IERvbid0IHRydXN0IGZpbGUgbW9kZXMKLQkJZmlsZW1vZGUgPSBmYWxzZQorOyBjb3JlIHZhcmlhYmxlcworW2NvcmVdCisJOyBEb24ndCB0cnVzdCBmaWxlIG1vZGVzCisJZmlsZW1vZGUgPSBmYWxzZQogCi0JOyBPdXIgZGlmZiBhbGdvcml0aG0KLQlbZGlmZl0KLQkJZXh0ZXJuYWwgPSAvdXNyL2xvY2FsL2Jpbi9kaWZmLXdyYXBwZXIKLQkJcmVuYW1lcyA9IHRydWUKKzsgT3VyIGRpZmYgYWxnb3JpdGhtCitbZGlmZl0KKwlleHRlcm5hbCA9IC91c3IvbG9jYWwvYmluL2RpZmYtd3JhcHBlcgorCXJlbmFtZXMgPSB0cnVlCiAKLQk7IFByb3h5IHNldHRpbmdzCi0JW2NvcmVdCi0JCWdpdHByb3h5PXByb3h5LWNvbW1hbmQgZm9yIGtlcm5lbC5vcmcKLQkJZ2l0cHJveHk9ZGVmYXVsdC1wcm94eSA7IGZvciBhbGwgdGhlIHJlc3QKKzsgUHJveHkgc2V0dGluZ3MKK1tjb3JlXQorCWdpdHByb3h5PXByb3h5LWNvbW1hbmQgZm9yIGtlcm5lbC5vcmcKKwlnaXRwcm94eT1kZWZhdWx0LXByb3h5IDsgZm9yIGFsbCB0aGUgcmVzdAogCi0JOyBIVFRQCi0JW2h0dHBdCi0JCXNzbFZlcmlmeQotCVtodHRwICJodHRwczovL3dlYWsuZXhhbXBsZS5jb20iXQotCQlzc2xWZXJpZnkgPSBmYWxzZQotCQljb29raWVGaWxlID0gL3RtcC9jb29raWUudHh0Cis7IEhUVFAKK1todHRwXQorCXNzbFZlcmlmeQorW2h0dHAgImh0dHBzOi8vd2Vhay5leGFtcGxlLmNvbSJdCisJc3NsVmVyaWZ5ID0gZmFsc2UKKwljb29raWVGaWxlID0gL3RtcC9jb29raWUudHh0CistLS0tLS0tLS0tLS0KIAogeW91IGNhbiBzZXQgdGhlIGZpbGVtb2RlIHRvIHRydWUgd2l0aAogCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1jcmVkZW50aWFsLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWNyZWRlbnRpYWwudHh0CmluZGV4IGIyMTE0NDAuLjZmMGM3Y2EgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWNyZWRlbnRpYWwudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWNyZWRlbnRpYWwudHh0CkBAIC0xOSw4ICsxOSw3IEBACiB1c2VybmFtZXMgYW5kIHBhc3N3b3Jkcy4gVGhlIGdpdC1jcmVkZW50aWFsIGNvbW1hbmQgZXhwb3NlcyB0aGlzCiBpbnRlcmZhY2UgdG8gc2NyaXB0cyB3aGljaCBtYXkgd2FudCB0byByZXRyaWV2ZSwgc3RvcmUsIG9yIHByb21wdCBmb3IKIGNyZWRlbnRpYWxzIGluIHRoZSBzYW1lIG1hbm5lciBhcyBHaXQuIFRoZSBkZXNpZ24gb2YgdGhpcyBzY3JpcHRhYmxlCi1pbnRlcmZhY2UgbW9kZWxzIHRoZSBpbnRlcm5hbCBDIEFQSTsgc2VlCi1saW5rOnRlY2huaWNhbC9hcGktY3JlZGVudGlhbHMuaHRtbFt0aGUgR2l0IGNyZWRlbnRpYWwgQVBJXSBmb3IgbW9yZQoraW50ZXJmYWNlIG1vZGVscyB0aGUgaW50ZXJuYWwgQyBBUEk7IHNlZSBjcmVkZW50aWFsLmggZm9yIG1vcmUKIGJhY2tncm91bmQgb24gdGhlIGNvbmNlcHRzLgogCiBnaXQtY3JlZGVudGlhbCB0YWtlcyBhbiAiYWN0aW9uIiBvcHRpb24gb24gdGhlIGNvbW1hbmQtbGluZSAob25lIG9mCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1jdnNzZXJ2ZXIudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtY3Zzc2VydmVyLnR4dAppbmRleCBmOThiN2M2Li4xYjFjNzFhIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1jdnNzZXJ2ZXIudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWN2c3NlcnZlci50eHQKQEAgLTIzMiw3ICsyMzIsNyBAQAogJ2dpdC1jdnNzZXJ2ZXInIHdyaXRlIGFjY2VzcyB0byB0aGUgZGF0YWJhc2UgZmlsZSB3aXRob3V0IGdyYW50aW5nCiB0aGVtIHdyaXRlIGFjY2VzcyB0byB0aGUgZGlyZWN0b3J5LCB0b28uCiAKLVRoZSBkYXRhYmFzZSBjYW4gbm90IGJlIHJlbGlhYmx5IHJlZ2VuZXJhdGVkIGluIGEKK1RoZSBkYXRhYmFzZSBjYW5ub3QgYmUgcmVsaWFibHkgcmVnZW5lcmF0ZWQgaW4gYQogY29uc2lzdGVudCBmb3JtIGFmdGVyIHRoZSBicmFuY2ggaXQgaXMgdHJhY2tpbmcgaGFzIGNoYW5nZWQuCiBFeGFtcGxlOiBGb3IgbWVyZ2VkIGJyYW5jaGVzLCAnZ2l0LWN2c3NlcnZlcicgb25seSB0cmFja3MKIG9uZSBicmFuY2ggb2YgZGV2ZWxvcG1lbnQsIGFuZCBhZnRlciBhICdnaXQgbWVyZ2UnIGFuCkBAIC0yOTQsNyArMjk0LDcgQEAKIAlHaXQgZGlyZWN0b3J5IG5hbWUKICVnOjoKIAlHaXQgZGlyZWN0b3J5IG5hbWUsIHdoZXJlIGFsbCBjaGFyYWN0ZXJzIGV4Y2VwdCBmb3IKLQlhbHBoYS1udW1lcmljIG9uZXMsIGAuYCwgYW5kIGAtYCBhcmUgcmVwbGFjZWQgd2l0aAorCWFscGhhbnVtZXJpYyBvbmVzLCBgLmAsIGFuZCBgLWAgYXJlIHJlcGxhY2VkIHdpdGgKIAlgX2AgKHRoaXMgc2hvdWxkIG1ha2UgaXQgZWFzaWVyIHRvIHVzZSB0aGUgZGlyZWN0b3J5CiAJbmFtZSBpbiBhIGZpbGVuYW1lIGlmIHdhbnRlZCkKICVtOjoKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWRhZW1vbi50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1kYWVtb24udHh0CmluZGV4IDU2ZDU0YTQuLmZkYzI4YzAgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWRhZW1vbi50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtZGFlbW9uLnR4dApAQCAtNTcsNyArNTcsNyBAQAogCVRoaXMgaXMgc29ydCBvZiAiR2l0IHJvb3QiIC0gaWYgeW91IHJ1biAnZ2l0IGRhZW1vbicgd2l0aAogCSctLWJhc2UtcGF0aD0vc3J2L2dpdCcgb24gZXhhbXBsZS5jb20sIHRoZW4gaWYgeW91IGxhdGVyIHRyeSB0byBwdWxsCiAJJ2dpdDovL2V4YW1wbGUuY29tL2hlbGxvLmdpdCcsICdnaXQgZGFlbW9uJyB3aWxsIGludGVycHJldCB0aGUgcGF0aAotCWFzICcvc3J2L2dpdC9oZWxsby5naXQnLgorCWFzIGAvc3J2L2dpdC9oZWxsby5naXRgLgogCiAtLWJhc2UtcGF0aC1yZWxheGVkOjoKIAlJZiAtLWJhc2UtcGF0aCBpcyBlbmFibGVkIGFuZCByZXBvIGxvb2t1cCBmYWlscywgd2l0aCB0aGlzIG9wdGlvbgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtZGVzY3JpYmUudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtZGVzY3JpYmUudHh0CmluZGV4IGNjZGM1ZjguLmE4OGY2YWUgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWRlc2NyaWJlLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1kZXNjcmliZS50eHQKQEAgLTEzOSw3ICsxMzksNyBAQAogCiBUaGUgbnVtYmVyIG9mIGFkZGl0aW9uYWwgY29tbWl0cyBpcyB0aGUgbnVtYmVyCiBvZiBjb21taXRzIHdoaWNoIHdvdWxkIGJlIGRpc3BsYXllZCBieSAiZ2l0IGxvZyB2MS4wLjQuLnBhcmVudCIuCi1UaGUgaGFzaCBzdWZmaXggaXMgIi1nIiArIDctY2hhciBhYmJyZXZpYXRpb24gZm9yIHRoZSB0aXAgY29tbWl0CitUaGUgaGFzaCBzdWZmaXggaXMgIi1nIiArIHVuYW1iaWd1b3VzIGFiYnJldmlhdGlvbiBmb3IgdGhlIHRpcCBjb21taXQKIG9mIHBhcmVudCAod2hpY2ggd2FzIGAyNDE0NzIxYjE5NDQ1M2YwNTgwNzlkODk3ZDEzYzRlMzc3ZjkyZGM2YCkuCiBUaGUgImciIHByZWZpeCBzdGFuZHMgZm9yICJnaXQiIGFuZCBpcyB1c2VkIHRvIGFsbG93IGRlc2NyaWJpbmcgdGhlIHZlcnNpb24gb2YKIGEgc29mdHdhcmUgZGVwZW5kaW5nIG9uIHRoZSBTQ00gdGhlIHNvZnR3YXJlIGlzIG1hbmFnZWQgd2l0aC4gVGhpcyBpcyB1c2VmdWwKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWRpZmYtdHJlZS50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1kaWZmLXRyZWUudHh0CmluZGV4IDIzMTliMmIuLjVjOGEyYTUgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWRpZmYtdHJlZS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtZGlmZi10cmVlLnR4dApAQCAtMTAsOCArMTAsOCBAQAogLS0tLS0tLS0KIFt2ZXJzZV0KICdnaXQgZGlmZi10cmVlJyBbLS1zdGRpbl0gWy1tXSBbLXNdIFstdl0gWy0tbm8tY29tbWl0LWlkXSBbLS1wcmV0dHldCi0JICAgICAgWy10XSBbLXJdIFstYyB8IC0tY2NdIFstLXJvb3RdIFs8Y29tbW9uIGRpZmYgb3B0aW9ucz5dCi0JICAgICAgPHRyZWUtaXNoPiBbPHRyZWUtaXNoPl0gWzxwYXRoPi4uLl0KKwkgICAgICBbLXRdIFstcl0gWy1jIHwgLS1jY10gWy0tY29tYmluZWQtYWxsLXBhdGhzXSBbLS1yb290XQorCSAgICAgIFs8Y29tbW9uIGRpZmYgb3B0aW9ucz5dIDx0cmVlLWlzaD4gWzx0cmVlLWlzaD5dIFs8cGF0aD4uLi5dCiAKIERFU0NSSVBUSU9OCiAtLS0tLS0tLS0tLQpAQCAtMzEsMTAgKzMxLDcgQEAKIAogPHBhdGg+Li4uOjoKIAlJZiBwcm92aWRlZCwgdGhlIHJlc3VsdHMgYXJlIGxpbWl0ZWQgdG8gYSBzdWJzZXQgb2YgZmlsZXMKLQltYXRjaGluZyBvbmUgb2YgdGhlc2UgcHJlZml4IHN0cmluZ3MuCi0JaS5lLiwgZmlsZSBtYXRjaGVzIGAvXjxwYXR0ZXJuMT58PHBhdHRlcm4yPnwuLi4vYAotCU5vdGUgdGhhdCB0aGlzIHBhcmFtZXRlciBkb2VzIG5vdCBwcm92aWRlIGFueSB3aWxkY2FyZCBvciByZWdleHAKLQlmZWF0dXJlcy4KKwltYXRjaGluZyBvbmUgb2YgdGhlIHByb3ZpZGVkIHBhdGhzcGVjcy4KIAogLXI6OgogICAgICAgICByZWN1cnNlIGludG8gc3ViLXRyZWVzCkBAIC0xMDgsNiArMTA1LDEzIEBACiAJaXRzZWxmIGFuZCB0aGUgY29tbWl0IGxvZyBtZXNzYWdlIGlzIG5vdCBzaG93biwganVzdCBsaWtlIGluIGFueSBvdGhlcgogCSJlbXB0eSBkaWZmIiBjYXNlLgogCistLWNvbWJpbmVkLWFsbC1wYXRoczo6CisJVGhpcyBmbGFnIGNhdXNlcyBjb21iaW5lZCBkaWZmcyAodXNlZCBmb3IgbWVyZ2UgY29tbWl0cykgdG8KKwlsaXN0IHRoZSBuYW1lIG9mIHRoZSBmaWxlIGZyb20gYWxsIHBhcmVudHMuICBJdCB0aHVzIG9ubHkgaGFzCisJZWZmZWN0IHdoZW4gLWMgb3IgLS1jYyBhcmUgc3BlY2lmaWVkLCBhbmQgaXMgbGlrZWx5IG9ubHkKKwl1c2VmdWwgaWYgZmlsZW5hbWUgY2hhbmdlcyBhcmUgZGV0ZWN0ZWQgKGkuZS4gd2hlbiBlaXRoZXIKKwlyZW5hbWUgb3IgY29weSBkZXRlY3Rpb24gaGF2ZSBiZWVuIHJlcXVlc3RlZCkuCisKIC0tYWx3YXlzOjoKIAlTaG93IHRoZSBjb21taXQgaXRzZWxmIGFuZCB0aGUgY29tbWl0IGxvZyBtZXNzYWdlIGV2ZW4KIAlpZiB0aGUgZGlmZiBpdHNlbGYgaXMgZW1wdHkuCkBAIC0xMTUsNTEgKzExOSw2IEBACiAKIGluY2x1ZGU6OnByZXR0eS1mb3JtYXRzLnR4dFtdCiAKLQotTElNSVRJTkcgT1VUUFVUCi0tLS0tLS0tLS0tLS0tLS0KLUlmIHlvdSdyZSBvbmx5IGludGVyZXN0ZWQgaW4gZGlmZmVyZW5jZXMgaW4gYSBzdWJzZXQgb2YgZmlsZXMsIGZvcgotZXhhbXBsZSBzb21lIGFyY2hpdGVjdHVyZS1zcGVjaWZpYyBmaWxlcywgeW91IG1pZ2h0IGRvOgotCi0JZ2l0IGRpZmYtdHJlZSAtciA8dHJlZS1pc2g+IDx0cmVlLWlzaD4gYXJjaC9pYTY0IGluY2x1ZGUvYXNtLWlhNjQKLQotYW5kIGl0IHdpbGwgb25seSBzaG93IHlvdSB3aGF0IGNoYW5nZWQgaW4gdGhvc2UgdHdvIGRpcmVjdG9yaWVzLgotCi1PciBpZiB5b3UgYXJlIHNlYXJjaGluZyBmb3Igd2hhdCBjaGFuZ2VkIGluIGp1c3QgYGtlcm5lbC9zY2hlZC5jYCwganVzdCBkbwotCi0JZ2l0IGRpZmYtdHJlZSAtciA8dHJlZS1pc2g+IDx0cmVlLWlzaD4ga2VybmVsL3NjaGVkLmMKLQotYW5kIGl0IHdpbGwgaWdub3JlIGFsbCBkaWZmZXJlbmNlcyB0byBvdGhlciBmaWxlcy4KLQotVGhlIHBhdHRlcm4gaXMgYWx3YXlzIHRoZSBwcmVmaXgsIGFuZCBpcyBtYXRjaGVkIGV4YWN0bHkuICBUaGVyZSBhcmUgbm8KLXdpbGRjYXJkcy4gIEV2ZW4gc3RyaWN0ZXIsIGl0IGhhcyB0byBtYXRjaCBhIGNvbXBsZXRlIHBhdGggY29tcG9uZW50LgotSS5lLiAiZm9vIiBkb2VzIG5vdCBwaWNrIHVwIGBmb29iYXIuaGAuICAiZm9vIiBkb2VzIG1hdGNoIGBmb28vYmFyLmhgCi1zbyBpdCBjYW4gYmUgdXNlZCB0byBuYW1lIHN1YmRpcmVjdG9yaWVzLgotCi1BbiBleGFtcGxlIG9mIG5vcm1hbCB1c2FnZSBpczoKLQotICB0b3J2YWxkc0BwcGM5NzA6fi9naXQ+IGdpdCBkaWZmLXRyZWUgLS1hYmJyZXYgNTMxOWU0Ci0gIDoxMDA2NjQgMTAwNjY0IGFjMzQ4Yi4uLiBhMDE1MTMuLi4JZ2l0LWZzY2stb2JqZWN0cy5jCi0KLXdoaWNoIHRlbGxzIHlvdSB0aGF0IHRoZSBsYXN0IGNvbW1pdCBjaGFuZ2VkIGp1c3Qgb25lIGZpbGUgKGl0J3MgZnJvbQotdGhpcyBvbmU6Ci0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1jb21taXQgM2M2ZjdjYTE5YWQ0MDQzZTllNzJmYTk0MTA2ZjM1Mjg5N2U2NTFhOAotdHJlZSA1MzE5ZTRkNjA5Y2RkMjgyMDY5Y2M0ZGNlMzNjMWRiNTU5NTM5YjAzCi1wYXJlbnQgYjRlNjI4ZWEzMGQ1YWIzNjA2MTE5ZDJlYTVjYWVhYjE0MWQzOGRmNwotYXV0aG9yIExpbnVzIFRvcnZhbGRzIDx0b3J2YWxkc0BwcGM5NzAub3NkbC5vcmc+IFNhdCBBcHIgOSAxMjowMjozMCAyMDA1Ci1jb21taXR0ZXIgTGludXMgVG9ydmFsZHMgPHRvcnZhbGRzQHBwYzk3MC5vc2RsLm9yZz4gU2F0IEFwciA5IDEyOjAyOjMwIDIwMDUKLQotTWFrZSAiZ2l0LWZzY2stb2JqZWN0cyIgcHJpbnQgb3V0IGFsbCB0aGUgcm9vdCBjb21taXRzIGl0IGZpbmRzLgotCi1PbmNlIEkgZG8gdGhlIHJlZmVyZW5jZSB0cmFja2luZywgSSdsbCBhbHNvIG1ha2UgaXQgcHJpbnQgb3V0IGFsbCB0aGUKLUhFQUQgY29tbWl0cyBpdCBmaW5kcywgd2hpY2ggaXMgZXZlbiBtb3JlIGludGVyZXN0aW5nLgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotaW4gY2FzZSB5b3UgY2FyZSkuCi0KLQogaW5jbHVkZTo6ZGlmZi1mb3JtYXQudHh0W10KIAogR0lUCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1kaWZmLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWRpZmYudHh0CmluZGV4IDAzMGYxNjIuLjM3NzgxY2YgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWRpZmYudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWRpZmYudHh0CkBAIC0zNiw3ICszNiw3IEBACiAJcnVubmluZyB0aGUgY29tbWFuZCBpbiBhIHdvcmtpbmcgdHJlZSBjb250cm9sbGVkIGJ5IEdpdCBhbmQKIAlhdCBsZWFzdCBvbmUgb2YgdGhlIHBhdGhzIHBvaW50cyBvdXRzaWRlIHRoZSB3b3JraW5nIHRyZWUsCiAJb3Igd2hlbiBydW5uaW5nIHRoZSBjb21tYW5kIG91dHNpZGUgYSB3b3JraW5nIHRyZWUKLQljb250cm9sbGVkIGJ5IEdpdC4KKwljb250cm9sbGVkIGJ5IEdpdC4gVGhpcyBmb3JtIGltcGxpZXMgYC0tZXhpdC1jb2RlYC4KIAogJ2dpdCBkaWZmJyBbPG9wdGlvbnM+XSAtLWNhY2hlZCBbPGNvbW1pdD5dIFstLV0gWzxwYXRoPi4uLl06OgogCkBAIC0xMzIsOSArMTMyLDkgQEAKICsKIDwxPiBDaGFuZ2VzIGluIHRoZSB3b3JraW5nIHRyZWUgbm90IHlldCBzdGFnZWQgZm9yIHRoZSBuZXh0IGNvbW1pdC4KIDwyPiBDaGFuZ2VzIGJldHdlZW4gdGhlIGluZGV4IGFuZCB5b3VyIGxhc3QgY29tbWl0OyB3aGF0IHlvdQotd291bGQgYmUgY29tbWl0dGluZyBpZiB5b3UgcnVuICJnaXQgY29tbWl0IiB3aXRob3V0ICItYSIgb3B0aW9uLgorICAgIHdvdWxkIGJlIGNvbW1pdHRpbmcgaWYgeW91IHJ1biAiZ2l0IGNvbW1pdCIgd2l0aG91dCAiLWEiIG9wdGlvbi4KIDwzPiBDaGFuZ2VzIGluIHRoZSB3b3JraW5nIHRyZWUgc2luY2UgeW91ciBsYXN0IGNvbW1pdDsgd2hhdCB5b3UKLXdvdWxkIGJlIGNvbW1pdHRpbmcgaWYgeW91IHJ1biAiZ2l0IGNvbW1pdCAtYSIKKyAgICB3b3VsZCBiZSBjb21taXR0aW5nIGlmIHlvdSBydW4gImdpdCBjb21taXQgLWEiCiAKIENvbXBhcmluZyB3aXRoIGFyYml0cmFyeSBjb21taXRzOjoKICsKQEAgLTE0NSwxMCArMTQ1LDEwIEBACiAtLS0tLS0tLS0tLS0KICsKIDwxPiBJbnN0ZWFkIG9mIHVzaW5nIHRoZSB0aXAgb2YgdGhlIGN1cnJlbnQgYnJhbmNoLCBjb21wYXJlIHdpdGggdGhlCi10aXAgb2YgInRlc3QiIGJyYW5jaC4KKyAgICB0aXAgb2YgInRlc3QiIGJyYW5jaC4KIDwyPiBJbnN0ZWFkIG9mIGNvbXBhcmluZyB3aXRoIHRoZSB0aXAgb2YgInRlc3QiIGJyYW5jaCwgY29tcGFyZSB3aXRoCi10aGUgdGlwIG9mIHRoZSBjdXJyZW50IGJyYW5jaCwgYnV0IGxpbWl0IHRoZSBjb21wYXJpc29uIHRvIHRoZQotZmlsZSAidGVzdCIuCisgICAgdGhlIHRpcCBvZiB0aGUgY3VycmVudCBicmFuY2gsIGJ1dCBsaW1pdCB0aGUgY29tcGFyaXNvbiB0byB0aGUKKyAgICBmaWxlICJ0ZXN0Ii4KIDwzPiBDb21wYXJlIHRoZSB2ZXJzaW9uIGJlZm9yZSB0aGUgbGFzdCBjb21taXQgYW5kIHRoZSBsYXN0IGNvbW1pdC4KIAogQ29tcGFyaW5nIGJyYW5jaGVzOjoKQEAgLTE2Miw3ICsxNjIsNyBAQAogPDE+IENoYW5nZXMgYmV0d2VlbiB0aGUgdGlwcyBvZiB0aGUgdG9waWMgYW5kIHRoZSBtYXN0ZXIgYnJhbmNoZXMuCiA8Mj4gU2FtZSBhcyBhYm92ZS4KIDwzPiBDaGFuZ2VzIHRoYXQgb2NjdXJyZWQgb24gdGhlIG1hc3RlciBicmFuY2ggc2luY2Ugd2hlbiB0aGUgdG9waWMKLWJyYW5jaCB3YXMgc3RhcnRlZCBvZmYgaXQuCisgICAgYnJhbmNoIHdhcyBzdGFydGVkIG9mZiBpdC4KIAogTGltaXRpbmcgdGhlIGRpZmYgb3V0cHV0OjoKICsKQEAgLTE3Myw5ICsxNzMsOSBAQAogLS0tLS0tLS0tLS0tCiArCiA8MT4gU2hvdyBvbmx5IG1vZGlmaWNhdGlvbiwgcmVuYW1lLCBhbmQgY29weSwgYnV0IG5vdCBhZGRpdGlvbgotb3IgZGVsZXRpb24uCisgICAgb3IgZGVsZXRpb24uCiA8Mj4gU2hvdyBvbmx5IG5hbWVzIGFuZCB0aGUgbmF0dXJlIG9mIGNoYW5nZSwgYnV0IG5vdCBhY3R1YWwKLWRpZmYgb3V0cHV0LgorICAgIGRpZmYgb3V0cHV0LgogPDM+IExpbWl0IGRpZmYgb3V0cHV0IHRvIG5hbWVkIHN1YnRyZWVzLgogCiBNdW5naW5nIHRoZSBkaWZmIG91dHB1dDo6CkBAIC0xODYsNyArMTg2LDcgQEAKIC0tLS0tLS0tLS0tLQogKwogPDE+IFNwZW5kIGV4dHJhIGN5Y2xlcyB0byBmaW5kIHJlbmFtZXMsIGNvcGllcyBhbmQgY29tcGxldGUKLXJld3JpdGVzICh2ZXJ5IGV4cGVuc2l2ZSkuCisgICAgcmV3cml0ZXMgKHZlcnkgZXhwZW5zaXZlKS4KIDwyPiBPdXRwdXQgZGlmZiBpbiByZXZlcnNlLgogCiBTRUUgQUxTTwpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtZGlmZnRvb2wudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtZGlmZnRvb2wudHh0CmluZGV4IDk2YzI2ZTYuLjQ4NGM0ODUgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWRpZmZ0b29sLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1kaWZmdG9vbC50eHQKQEAgLTkwLDcgKzkwLDkgQEAKIAlXaGVuICdnaXQtZGlmZnRvb2wnIGlzIGludm9rZWQgd2l0aCB0aGUgYC1nYCBvciBgLS1ndWlgIG9wdGlvbgogCXRoZSBkZWZhdWx0IGRpZmYgdG9vbCB3aWxsIGJlIHJlYWQgZnJvbSB0aGUgY29uZmlndXJlZAogCWBkaWZmLmd1aXRvb2xgIHZhcmlhYmxlIGluc3RlYWQgb2YgYGRpZmYudG9vbGAuIFRoZSBgLS1uby1ndWlgCi0Jb3B0aW9uIGNhbiBiZSB1c2VkIHRvIG92ZXJyaWRlIHRoaXMgc2V0dGluZy4KKwlvcHRpb24gY2FuIGJlIHVzZWQgdG8gb3ZlcnJpZGUgdGhpcyBzZXR0aW5nLiBJZiBgZGlmZi5ndWl0b29sYAorCWlzIG5vdCBzZXQsIHdlIHdpbGwgZmFsbGJhY2sgaW4gdGhlIG9yZGVyIG9mIGBtZXJnZS5ndWl0b29sYCwKKwlgZGlmZi50b29sYCwgYG1lcmdlLnRvb2xgIHVudGlsIGEgdG9vbCBpcyBmb3VuZC4KIAogLS1bbm8tXXRydXN0LWV4aXQtY29kZTo6CiAJJ2dpdC1kaWZmdG9vbCcgaW52b2tlcyBhIGRpZmYgdG9vbCBpbmRpdmlkdWFsbHkgb24gZWFjaCBmaWxlLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtZmFzdC1leHBvcnQudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtZmFzdC1leHBvcnQudHh0CmluZGV4IGNlOTU0YmUuLmU4OTUwZGUgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWZhc3QtZXhwb3J0LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1mYXN0LWV4cG9ydC50eHQKQEAgLTE3LDkgKzE3LDkgQEAKIGludG8gJ2dpdCBmYXN0LWltcG9ydCcuCiAKIFlvdSBjYW4gdXNlIGl0IGFzIGEgaHVtYW4tcmVhZGFibGUgYnVuZGxlIHJlcGxhY2VtZW50IChzZWUKLWxpbmtnaXQ6Z2l0LWJ1bmRsZVsxXSksIG9yIGFzIGEga2luZCBvZiBhbiBpbnRlcmFjdGl2ZQotJ2dpdCBmaWx0ZXItYnJhbmNoJy4KLQorbGlua2dpdDpnaXQtYnVuZGxlWzFdKSwgb3IgYXMgYSBmb3JtYXQgdGhhdCBjYW4gYmUgZWRpdGVkIGJlZm9yZSBiZWluZworZmVkIHRvICdnaXQgZmFzdC1pbXBvcnQnIGluIG9yZGVyIHRvIGRvIGhpc3RvcnkgcmV3cml0ZXMgKGFuIGFiaWxpdHkKK3JlbGllZCBvbiBieSB0b29scyBsaWtlICdnaXQgZmlsdGVyLXJlcG8nKS4KIAogT1BUSU9OUwogLS0tLS0tLQpAQCAtNzUsMTEgKzc1LDIwIEBACiAJQmVmb3JlIHByb2Nlc3NpbmcgYW55IGlucHV0LCBsb2FkIHRoZSBtYXJrcyBzcGVjaWZpZWQgaW4KIAk8ZmlsZT4uICBUaGUgaW5wdXQgZmlsZSBtdXN0IGV4aXN0LCBtdXN0IGJlIHJlYWRhYmxlLCBhbmQKIAltdXN0IHVzZSB0aGUgc2FtZSBmb3JtYXQgYXMgcHJvZHVjZWQgYnkgLS1leHBvcnQtbWFya3MuCisKKy0tbWFyay10YWdzOjoKKwlJbiBhZGRpdGlvbiB0byBsYWJlbGxpbmcgYmxvYnMgYW5kIGNvbW1pdHMgd2l0aCBtYXJrIGlkcywgYWxzbworCWxhYmVsIHRhZ3MuICBUaGlzIGlzIHVzZWZ1bCBpbiBjb25qdW5jdGlvbiB3aXRoCisJYC0tZXhwb3J0LW1hcmtzYCBhbmQgYC0taW1wb3J0LW1hcmtzYCwgYW5kIGlzIGFsc28gdXNlZnVsIChhbmQKKwluZWNlc3NhcnkpIGZvciBleHBvcnRpbmcgb2YgbmVzdGVkIHRhZ3MuICBJdCBkb2VzIG5vdCBodXJ0CisJb3RoZXIgY2FzZXMgYW5kIHdvdWxkIGJlIHRoZSBkZWZhdWx0LCBidXQgbWFueSBmYXN0LWltcG9ydAorCWZyb250ZW5kcyBhcmUgbm90IHByZXBhcmVkIHRvIGFjY2VwdCB0YWdzIHdpdGggbWFyaworCWlkZW50aWZpZXJzLgogKwotQW55IGNvbW1pdHMgdGhhdCBoYXZlIGFscmVhZHkgYmVlbiBtYXJrZWQgd2lsbCBub3QgYmUgZXhwb3J0ZWQgYWdhaW4uCi1JZiB0aGUgYmFja2VuZCB1c2VzIGEgc2ltaWxhciAtLWltcG9ydC1tYXJrcyBmaWxlLCB0aGlzIGFsbG93cyBmb3IKLWluY3JlbWVudGFsIGJpZGlyZWN0aW9uYWwgZXhwb3J0aW5nIG9mIHRoZSByZXBvc2l0b3J5IGJ5IGtlZXBpbmcgdGhlCi1tYXJrcyB0aGUgc2FtZSBhY3Jvc3MgcnVucy4KK0FueSBjb21taXRzIChvciB0YWdzKSB0aGF0IGhhdmUgYWxyZWFkeSBiZWVuIG1hcmtlZCB3aWxsIG5vdCBiZQorZXhwb3J0ZWQgYWdhaW4uICBJZiB0aGUgYmFja2VuZCB1c2VzIGEgc2ltaWxhciAtLWltcG9ydC1tYXJrcyBmaWxlLAordGhpcyBhbGxvd3MgZm9yIGluY3JlbWVudGFsIGJpZGlyZWN0aW9uYWwgZXhwb3J0aW5nIG9mIHRoZSByZXBvc2l0b3J5CitieSBrZWVwaW5nIHRoZSBtYXJrcyB0aGUgc2FtZSBhY3Jvc3MgcnVucy4KIAogLS1mYWtlLW1pc3NpbmctdGFnZ2VyOjoKIAlTb21lIG9sZCByZXBvc2l0b3JpZXMgaGF2ZSB0YWdzIHdpdGhvdXQgYSB0YWdnZXIuICBUaGUKQEAgLTExMCw2ICsxMTksMzIgQEAKIAl0aGUgc2hhcGUgb2YgdGhlIGhpc3RvcnkgYW5kIHN0b3JlZCB0cmVlLiAgU2VlIHRoZSBzZWN0aW9uIG9uCiAJYEFOT05ZTUlaSU5HYCBiZWxvdy4KIAorLS1yZWZlcmVuY2UtZXhjbHVkZWQtcGFyZW50czo6CisJQnkgZGVmYXVsdCwgcnVubmluZyBhIGNvbW1hbmQgc3VjaCBhcyBgZ2l0IGZhc3QtZXhwb3J0CisJbWFzdGVyfjUuLm1hc3RlcmAgd2lsbCBub3QgaW5jbHVkZSB0aGUgY29tbWl0IG1hc3Rlcnt0aWxkZX01CisJYW5kIHdpbGwgbWFrZSBtYXN0ZXJ7dGlsZGV9NCBubyBsb25nZXIgaGF2ZSBtYXN0ZXJ7dGlsZGV9NSBhcworCWEgcGFyZW50ICh0aG91Z2ggYm90aCB0aGUgb2xkIG1hc3Rlcnt0aWxkZX00IGFuZCBuZXcKKwltYXN0ZXJ7dGlsZGV9NCB3aWxsIGhhdmUgYWxsIHRoZSBzYW1lIGZpbGVzKS4gIFVzZQorCS0tcmVmZXJlbmNlLWV4Y2x1ZGVkLXBhcmVudHMgdG8gaW5zdGVhZCBoYXZlIHRoZSBzdHJlYW0KKwlyZWZlciB0byBjb21taXRzIGluIHRoZSBleGNsdWRlZCByYW5nZSBvZiBoaXN0b3J5IGJ5IHRoZWlyCisJc2hhMXN1bS4gIE5vdGUgdGhhdCB0aGUgcmVzdWx0aW5nIHN0cmVhbSBjYW4gb25seSBiZSB1c2VkIGJ5IGEKKwlyZXBvc2l0b3J5IHdoaWNoIGFscmVhZHkgY29udGFpbnMgdGhlIG5lY2Vzc2FyeSBwYXJlbnQKKwljb21taXRzLgorCistLXNob3ctb3JpZ2luYWwtaWRzOjoKKwlBZGQgYW4gZXh0cmEgZGlyZWN0aXZlIHRvIHRoZSBvdXRwdXQgZm9yIGNvbW1pdHMgYW5kIGJsb2JzLAorCWBvcmlnaW5hbC1vaWQgPFNIQTFTVU0+YC4gIFdoaWxlIHN1Y2ggZGlyZWN0aXZlcyB3aWxsIGxpa2VseSBiZQorCWlnbm9yZWQgYnkgaW1wb3J0ZXJzIHN1Y2ggYXMgZ2l0LWZhc3QtaW1wb3J0LCBpdCBtYXkgYmUgdXNlZnVsCisJZm9yIGludGVybWVkaWFyeSBmaWx0ZXJzIChlLmcuIGZvciByZXdyaXRpbmcgY29tbWl0IG1lc3NhZ2VzCisJd2hpY2ggcmVmZXIgdG8gb2xkZXIgY29tbWl0cywgb3IgZm9yIHN0cmlwcGluZyBibG9icyBieSBpZCkuCisKKy0tcmVlbmNvZGU9KHllc3xub3xhYm9ydCk6OgorCVNwZWNpZnkgaG93IHRvIGhhbmRsZSBgZW5jb2RpbmdgIGhlYWRlciBpbiBjb21taXQgb2JqZWN0cy4gIFdoZW4KKwlhc2tpbmcgdG8gJ2Fib3J0JyAod2hpY2ggaXMgdGhlIGRlZmF1bHQpLCB0aGlzIHByb2dyYW0gd2lsbCBkaWUKKwl3aGVuIGVuY291bnRlcmluZyBzdWNoIGEgY29tbWl0IG9iamVjdC4gIFdpdGggJ3llcycsIHRoZSBjb21taXQKKwltZXNzYWdlIHdpbGwgYmUgcmUtZW5jb2RlZCBpbnRvIFVURi04LiAgV2l0aCAnbm8nLCB0aGUgb3JpZ2luYWwKKwllbmNvZGluZyB3aWxsIGJlIHByZXNlcnZlZC4KKwogLS1yZWZzcGVjOjoKIAlBcHBseSB0aGUgc3BlY2lmaWVkIHJlZnNwZWMgdG8gZWFjaCByZWYgZXhwb3J0ZWQuIE11bHRpcGxlIG9mIHRoZW0gY2FuCiAJYmUgc3BlY2lmaWVkLgpAQCAtMTE5LDcgKzE1NCw5IEBACiAJJ2dpdCByZXYtbGlzdCcsIHRoYXQgc3BlY2lmaWVzIHRoZSBzcGVjaWZpYyBvYmplY3RzIGFuZCByZWZlcmVuY2VzCiAJdG8gZXhwb3J0LiAgRm9yIGV4YW1wbGUsIGBtYXN0ZXJ+MTAuLm1hc3RlcmAgY2F1c2VzIHRoZQogCWN1cnJlbnQgbWFzdGVyIHJlZmVyZW5jZSB0byBiZSBleHBvcnRlZCBhbG9uZyB3aXRoIGFsbCBvYmplY3RzCi0JYWRkZWQgc2luY2UgaXRzIDEwdGggYW5jZXN0b3IgY29tbWl0LgorCWFkZGVkIHNpbmNlIGl0cyAxMHRoIGFuY2VzdG9yIGNvbW1pdCBhbmQgKHVubGVzcyB0aGUKKwktLXJlZmVyZW5jZS1leGNsdWRlZC1wYXJlbnRzIG9wdGlvbiBpcyBzcGVjaWZpZWQpIGFsbCBmaWxlcworCWNvbW1vbiB0byBtYXN0ZXJ7dGlsZGV9OSBhbmQgbWFzdGVye3RpbGRlfTEwLgogCiBFWEFNUExFUwogLS0tLS0tLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWZhc3QtaW1wb3J0LnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWZhc3QtaW1wb3J0LnR4dAppbmRleCA5ZTNiOTU4Li43ODg5Zjk1IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1mYXN0LWltcG9ydC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtZmFzdC1pbXBvcnQudHh0CkBAIC00MCw5ICs0MCwxMCBAQAogCW5vdCBjb250YWluIHRoZSBvbGQgY29tbWl0KS4KIAogLS1xdWlldDo6Ci0JRGlzYWJsZSBhbGwgbm9uLWZhdGFsIG91dHB1dCwgbWFraW5nIGZhc3QtaW1wb3J0IHNpbGVudCB3aGVuIGl0Ci0JaXMgc3VjY2Vzc2Z1bC4gIFRoaXMgb3B0aW9uIGRpc2FibGVzIHRoZSBvdXRwdXQgc2hvd24gYnkKLQktLXN0YXRzLgorCURpc2FibGUgdGhlIG91dHB1dCBzaG93biBieSAtLXN0YXRzLCBtYWtpbmcgZmFzdC1pbXBvcnQgdXN1YWxseQorCWJlIHNpbGVudCB3aGVuIGl0IGlzIHN1Y2Nlc3NmdWwuICBIb3dldmVyLCBpZiB0aGUgaW1wb3J0IHN0cmVhbQorCWhhcyBkaXJlY3RpdmVzIGludGVuZGVkIHRvIHNob3cgdXNlciBvdXRwdXQgKGUuZy4gYHByb2dyZXNzYAorCWRpcmVjdGl2ZXMpLCB0aGUgY29ycmVzcG9uZGluZyBtZXNzYWdlcyB3aWxsIHN0aWxsIGJlIHNob3duLgogCiAtLXN0YXRzOjoKIAlEaXNwbGF5IHNvbWUgYmFzaWMgc3RhdGlzdGljcyBhYm91dCB0aGUgb2JqZWN0cyBmYXN0LWltcG9ydCBoYXMKQEAgLTM1MSw2ICszNTIsMTMgQEAKIAlgY29tbWl0YCBjb21tYW5kLiAgVGhpcyBjb21tYW5kIGlzIG9wdGlvbmFsIGFuZCBpcyBub3QKIAluZWVkZWQgdG8gcGVyZm9ybSBhbiBpbXBvcnQuCiAKK2BhbGlhc2A6OgorCVJlY29yZCB0aGF0IGEgbWFyayByZWZlcnMgdG8gYSBnaXZlbiBvYmplY3Qgd2l0aG91dCBmaXJzdAorCWNyZWF0aW5nIGFueSBuZXcgb2JqZWN0LiAgVXNpbmcgLS1pbXBvcnQtbWFya3MgYW5kIHJlZmVycmluZworCXRvIG1pc3NpbmcgbWFya3Mgd2lsbCBjYXVzZSBmYXN0LWltcG9ydCB0byBmYWlsLCBzbyBhbGlhc2VzCisJY2FuIHByb3ZpZGUgYSB3YXkgdG8gc2V0IG90aGVyd2lzZSBwcnVuZWQgY29tbWl0cyB0byBhIHZhbGlkCisJdmFsdWUgKGUuZy4gdGhlIG5lYXJlc3Qgbm9uLXBydW5lZCBhbmNlc3RvcikuCisKIGBjaGVja3BvaW50YDo6CiAJRm9yY2VzIGZhc3QtaW1wb3J0IHRvIGNsb3NlIHRoZSBjdXJyZW50IHBhY2tmaWxlLCBnZW5lcmF0ZSBpdHMKIAl1bmlxdWUgU0hBLTEgY2hlY2tzdW0gYW5kIGluZGV4LCBhbmQgc3RhcnQgYSBuZXcgcGFja2ZpbGUuCkBAIC0zOTksMTEgKzQwNywxMyBAQAogLi4uLgogCSdjb21taXQnIFNQIDxyZWY+IExGCiAJbWFyaz8KKwlvcmlnaW5hbC1vaWQ/CiAJKCdhdXRob3InIChTUCA8bmFtZT4pPyBTUCBMVCA8ZW1haWw+IEdUIFNQIDx3aGVuPiBMRik/CiAJJ2NvbW1pdHRlcicgKFNQIDxuYW1lPik/IFNQIExUIDxlbWFpbD4gR1QgU1AgPHdoZW4+IExGCisJKCdlbmNvZGluZycgU1AgPGVuY29kaW5nPik/CiAJZGF0YQogCSgnZnJvbScgU1AgPGNvbW1pdC1pc2g+IExGKT8KLQkoJ21lcmdlJyBTUCA8Y29tbWl0LWlzaD4gTEYpPworCSgnbWVyZ2UnIFNQIDxjb21taXQtaXNoPiBMRikqCiAJKGZpbGVtb2RpZnkgfCBmaWxlZGVsZXRlIHwgZmlsZWNvcHkgfCBmaWxlcmVuYW1lIHwgZmlsZWRlbGV0ZWFsbCB8IG5vdGVtb2RpZnkpKgogCUxGPwogLi4uLgpAQCAtNDM1LDcgKzQ0NSwxMiBAQAogYWxsIGBmaWxlbW9kaWZ5YCwgYGZpbGVjb3B5YCwgYGZpbGVyZW5hbWVgIGFuZCBgbm90ZW1vZGlmeWAgY29tbWFuZHMgaW4KIHRoZSBzYW1lIGNvbW1pdCwgYXMgYGZpbGVkZWxldGVhbGxgIHdpcGVzIHRoZSBicmFuY2ggY2xlYW4gKHNlZSBiZWxvdykuCiAKLVRoZSBgTEZgIGFmdGVyIHRoZSBjb21tYW5kIGlzIG9wdGlvbmFsIChpdCB1c2VkIHRvIGJlIHJlcXVpcmVkKS4KK1RoZSBgTEZgIGFmdGVyIHRoZSBjb21tYW5kIGlzIG9wdGlvbmFsIChpdCB1c2VkIHRvIGJlIHJlcXVpcmVkKS4gIE5vdGUKK3RoYXQgZm9yIHJlYXNvbnMgb2YgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgaWYgdGhlIGNvbW1pdCBlbmRzIHdpdGggYQorYGRhdGFgIGNvbW1hbmQgKGkuZS4gaXQgaGFzIG5vIGBmcm9tYCwgYG1lcmdlYCwgYGZpbGVtb2RpZnlgLAorYGZpbGVkZWxldGVgLCBgZmlsZWNvcHlgLCBgZmlsZXJlbmFtZWAsIGBmaWxlZGVsZXRlYWxsYCBvcgorYG5vdGVtb2RpZnlgIGNvbW1hbmRzKSB0aGVuIHR3byBgTEZgIGNvbW1hbmRzIG1heSBhcHBlYXIgYXQgdGhlIGVuZCBvZgordGhlIGNvbW1hbmQgaW5zdGVhZCBvZiBqdXN0IG9uZS4KIAogYGF1dGhvcmAKIF5eXl5eXl5eCkBAIC00NjMsNiArNDc4LDEyIEBACiBTZWUgYGBEYXRlIEZvcm1hdHMnJyBhYm92ZSBmb3IgdGhlIHNldCBvZiBzdXBwb3J0ZWQgZm9ybWF0cywgYW5kCiB0aGVpciBzeW50YXguCiAKK2BlbmNvZGluZ2AKK15eXl5eXl5eXl4KK1RoZSBvcHRpb25hbCBgZW5jb2RpbmdgIGNvbW1hbmQgaW5kaWNhdGVzIHRoZSBlbmNvZGluZyBvZiB0aGUgY29tbWl0CittZXNzYWdlLiAgTW9zdCBjb21taXRzIGFyZSBVVEYtOCBhbmQgdGhlIGVuY29kaW5nIGlzIG9taXR0ZWQsIGJ1dCB0aGlzCithbGxvd3MgaW1wb3J0aW5nIGNvbW1pdCBtZXNzYWdlcyBpbnRvIGdpdCB3aXRob3V0IGZpcnN0IHJlZW5jb2RpbmcgdGhlbS4KKwogYGZyb21gCiBeXl5eXl4KIFRoZSBgZnJvbWAgY29tbWFuZCBpcyB1c2VkIHRvIHNwZWNpZnkgdGhlIGNvbW1pdCB0byBpbml0aWFsaXplCkBAIC03NTUsNiArNzc2LDE5IEBACiB0byBhbm90aGVyIG9iamVjdCBzaW1wbHkgYnkgcmV1c2luZyB0aGUgc2FtZSBgPGlkbnVtPmAgaW4gYW5vdGhlcgogYG1hcmtgIGNvbW1hbmQuCiAKK2BvcmlnaW5hbC1vaWRgCit+fn5+fn5+fn5+fn5+fgorUHJvdmlkZXMgdGhlIG5hbWUgb2YgdGhlIG9iamVjdCBpbiB0aGUgb3JpZ2luYWwgc291cmNlIGNvbnRyb2wgc3lzdGVtLgorZmFzdC1pbXBvcnQgd2lsbCBzaW1wbHkgaWdub3JlIHRoaXMgZGlyZWN0aXZlLCBidXQgZmlsdGVyIHByb2Nlc3Nlcword2hpY2ggb3BlcmF0ZSBvbiBhbmQgbW9kaWZ5IHRoZSBzdHJlYW0gYmVmb3JlIGZlZWRpbmcgdG8gZmFzdC1pbXBvcnQKK21heSBoYXZlIHVzZXMgZm9yIHRoaXMgaW5mb3JtYXRpb24KKworLi4uLgorCSdvcmlnaW5hbC1vaWQnIFNQIDxvYmplY3QtaWRlbnRpZmllcj4gTEYKKy4uLi4KKword2hlcmUgYDxvYmplY3QtaWRlbnRpZmVyPmAgaXMgYW55IHN0cmluZyBub3QgY29udGFpbmluZyBMRi4KKwogYHRhZ2AKIH5+fn5+CiBDcmVhdGVzIGFuIGFubm90YXRlZCB0YWcgcmVmZXJyaW5nIHRvIGEgc3BlY2lmaWMgY29tbWl0LiAgVG8gY3JlYXRlCkBAIC03NjIsNyArNzk2LDkgQEAKIAogLi4uLgogCSd0YWcnIFNQIDxuYW1lPiBMRgorCW1hcms/CiAJJ2Zyb20nIFNQIDxjb21taXQtaXNoPiBMRgorCW9yaWdpbmFsLW9pZD8KIAkndGFnZ2VyJyAoU1AgPG5hbWU+KT8gU1AgTFQgPGVtYWlsPiBHVCBTUCA8d2hlbj4gTEYKIAlkYXRhCiAuLi4uCkBAIC04MzcsNiArODczLDcgQEAKIC4uLi4KIAknYmxvYicgTEYKIAltYXJrPworCW9yaWdpbmFsLW9pZD8KIAlkYXRhCiAuLi4uCiAKQEAgLTg5OSw2ICs5MzYsMjEgQEAKICsKIFRoZSBgTEZgIGFmdGVyIGA8ZGVsaW0+IExGYCBpcyBvcHRpb25hbCAoaXQgdXNlZCB0byBiZSByZXF1aXJlZCkuCiAKK2BhbGlhc2AKK35+fn5+fn4KK1JlY29yZCB0aGF0IGEgbWFyayByZWZlcnMgdG8gYSBnaXZlbiBvYmplY3Qgd2l0aG91dCBmaXJzdCBjcmVhdGluZyBhbnkKK25ldyBvYmplY3QuCisKKy4uLi4KKwknYWxpYXMnIExGCisJbWFyaworCSd0bycgU1AgPGNvbW1pdC1pc2g+IExGCisJTEY/CisuLi4uCisKK0ZvciBhIGRldGFpbGVkIGRlc2NyaXB0aW9uIG9mIGA8Y29tbWl0LWlzaD5gIHNlZSBhYm92ZSB1bmRlciBgZnJvbWAuCisKKwogYGNoZWNrcG9pbnRgCiB+fn5+fn5+fn5+fn4KIEZvcmNlcyBmYXN0LWltcG9ydCB0byBjbG9zZSB0aGUgY3VycmVudCBwYWNrZmlsZSwgc3RhcnQgYSBuZXcgb25lLCBhbmQgdG8KQEAgLTk2NCwxMCArMTAxNiw2IEBACiAJJ2dldC1tYXJrJyBTUCAnOicgPGlkbnVtPiBMRgogLi4uLgogCi1UaGlzIGNvbW1hbmQgY2FuIGJlIHVzZWQgYW55d2hlcmUgaW4gdGhlIHN0cmVhbSB0aGF0IGNvbW1lbnRzIGFyZQotYWNjZXB0ZWQuICBJbiBwYXJ0aWN1bGFyLCB0aGUgYGdldC1tYXJrYCBjb21tYW5kIGNhbiBiZSB1c2VkIGluIHRoZQotbWlkZGxlIG9mIGEgY29tbWl0IGJ1dCBub3QgaW4gdGhlIG1pZGRsZSBvZiBhIGBkYXRhYCBjb21tYW5kLgotCiBTZWUgYGBSZXNwb25zZXMgVG8gQ29tbWFuZHMnJyBiZWxvdyBmb3IgZGV0YWlscyBhYm91dCBob3cgdG8gcmVhZAogdGhpcyBvdXRwdXQgc2FmZWx5LgogCkBAIC05OTQsOSArMTA0MiwxMCBAQAogCTxjb250ZW50cz4gTEYKID09PT0KIAotVGhpcyBjb21tYW5kIGNhbiBiZSB1c2VkIGFueXdoZXJlIGluIHRoZSBzdHJlYW0gdGhhdCBjb21tZW50cyBhcmUKLWFjY2VwdGVkLiAgSW4gcGFydGljdWxhciwgdGhlIGBjYXQtYmxvYmAgY29tbWFuZCBjYW4gYmUgdXNlZCBpbiB0aGUKLW1pZGRsZSBvZiBhIGNvbW1pdCBidXQgbm90IGluIHRoZSBtaWRkbGUgb2YgYSBgZGF0YWAgY29tbWFuZC4KK1RoaXMgY29tbWFuZCBjYW4gYmUgdXNlZCB3aGVyZSBhIGBmaWxlbW9kaWZ5YCBkaXJlY3RpdmUgY2FuIGFwcGVhciwKK2FsbG93aW5nIGl0IHRvIGJlIHVzZWQgaW4gdGhlIG1pZGRsZSBvZiBhIGNvbW1pdC4gIEZvciBhIGBmaWxlbW9kaWZ5YAordXNpbmcgYW4gaW5saW5lIGRpcmVjdGl2ZSwgaXQgY2FuIGFsc28gYXBwZWFyIHJpZ2h0IGJlZm9yZSB0aGUgYGRhdGFgCitkaXJlY3RpdmUuCiAKIFNlZSBgYFJlc3BvbnNlcyBUbyBDb21tYW5kcycnIGJlbG93IGZvciBkZXRhaWxzIGFib3V0IGhvdyB0byByZWFkCiB0aGlzIG91dHB1dCBzYWZlbHkuCkBAIC0xMDA5LDggKzEwNTgsOCBAQAogYmxvYiBvciB0cmVlIGZyb20gYSBwcmV2aW91cyBjb21taXQgZm9yIHVzZSBpbiB0aGUgY3VycmVudCBvbmUgKHdpdGgKIGBmaWxlbW9kaWZ5YCkuCiAKLVRoZSBgbHNgIGNvbW1hbmQgY2FuIGJlIHVzZWQgYW55d2hlcmUgaW4gdGhlIHN0cmVhbSB0aGF0IGNvbW1lbnRzIGFyZQotYWNjZXB0ZWQsIGluY2x1ZGluZyB0aGUgbWlkZGxlIG9mIGEgY29tbWl0LgorVGhlIGBsc2AgY29tbWFuZCBjYW4gYWxzbyBiZSB1c2VkIHdoZXJlIGEgYGZpbGVtb2RpZnlgIGRpcmVjdGl2ZSBjYW4KK2FwcGVhciwgYWxsb3dpbmcgaXQgdG8gYmUgdXNlZCBpbiB0aGUgbWlkZGxlIG9mIGEgY29tbWl0LgogCiBSZWFkaW5nIGZyb20gdGhlIGFjdGl2ZSBjb21taXQ6OgogCVRoaXMgZm9ybSBjYW4gb25seSBiZSB1c2VkIGluIHRoZSBtaWRkbGUgb2YgYSBgY29tbWl0YC4KQEAgLTEzOTQsNiArMTQ0MywxMyBAQAogdG8gZm9yY2UgcmVjb21wdXRhdGlvbiBvZiBhbGwgZGVsdGFzIGNhbiBzaWduaWZpY2FudGx5IHJlZHVjZSB0aGUKIGZpbmFsIHBhY2tmaWxlIHNpemUgKDMwLTUwJSBzbWFsbGVyIGNhbiBiZSBxdWl0ZSB0eXBpY2FsKS4KIAorSW5zdGVhZCBvZiBydW5uaW5nIGBnaXQgcmVwYWNrYCB5b3UgY2FuIGFsc28gcnVuIGBnaXQgZ2MKKy0tYWdncmVzc2l2ZWAsIHdoaWNoIHdpbGwgYWxzbyBvcHRpbWl6ZSBvdGhlciB0aGluZ3MgYWZ0ZXIgYW4gaW1wb3J0CisoZS5nLiBwYWNrIGxvb3NlIHJlZnMpLiBBcyBub3RlZCBpbiB0aGUgIkFHR1JFU1NJVkUiIHNlY3Rpb24gaW4KK2xpbmtnaXQ6Z2l0LWdjWzFdIHRoZSBgLS1hZ2dyZXNzaXZlYCBvcHRpb24gd2lsbCBmaW5kIG5ldyBkZWx0YXMgd2l0aAordGhlIGAtZmAgb3B0aW9uIHRvIGxpbmtnaXQ6Z2l0LXJlcGFja1sxXS4gRm9yIHRoZSByZWFzb25zIGVsYWJvcmF0ZWQKK29uIGFib3ZlIHVzaW5nIGAtLWFnZ3Jlc3NpdmVgIGFmdGVyIGEgZmFzdC1pbXBvcnQgaXMgb25lIG9mIHRoZSBmZXcKK2Nhc2VzIHdoZXJlIGl0J3Mga25vd24gdG8gYmUgd29ydGh3aGlsZS4KIAogTUVNT1JZIFVUSUxJWkFUSU9OCiAtLS0tLS0tLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWZldGNoLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWZldGNoLnR4dAppbmRleCBlMzE5OTM1Li41YjE5MDlmIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1mZXRjaC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtZmV0Y2gudHh0CkBAIC0yNjIsMTEgKzI2MiwxMSBAQAogdGhlIGxvY2FsIHJlcG9zaXRvcnkgYnkgZmV0Y2hpbmcgZnJvbSB0aGUgYnJhbmNoZXMgKHJlc3BlY3RpdmVseSkKIGBwdWAgYW5kIGBtYWludGAgZnJvbSB0aGUgcmVtb3RlIHJlcG9zaXRvcnkuCiArCi1UaGUgYHB1YCBicmFuY2ggd2lsbCBiZSB1cGRhdGVkIGV2ZW4gaWYgaXQgaXMgZG9lcyBub3QgZmFzdC1mb3J3YXJkLAorVGhlIGBwdWAgYnJhbmNoIHdpbGwgYmUgdXBkYXRlZCBldmVuIGlmIGl0IGRvZXMgbm90IGZhc3QtZm9yd2FyZCwKIGJlY2F1c2UgaXQgaXMgcHJlZml4ZWQgd2l0aCBhIHBsdXMgc2lnbjsgYHRtcGAgd2lsbCBub3QgYmUuCiAKICogUGVlayBhdCBhIHJlbW90ZSdzIGJyYW5jaCwgd2l0aG91dCBjb25maWd1cmluZyB0aGUgcmVtb3RlIGluIHlvdXIgbG9jYWwKLXJlcG9zaXRvcnk6CisgIHJlcG9zaXRvcnk6CiArCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICQgZ2l0IGZldGNoIGdpdDovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vZ2l0L2dpdC5naXQgbWFpbnQKQEAgLTI4NSw3ICsyODUsNyBAQAogLS0tLQogVXNpbmcgLS1yZWN1cnNlLXN1Ym1vZHVsZXMgY2FuIG9ubHkgZmV0Y2ggbmV3IGNvbW1pdHMgaW4gYWxyZWFkeSBjaGVja2VkCiBvdXQgc3VibW9kdWxlcyByaWdodCBub3cuIFdoZW4gZS5nLiB1cHN0cmVhbSBhZGRlZCBhIG5ldyBzdWJtb2R1bGUgaW4gdGhlCi1qdXN0IGZldGNoZWQgY29tbWl0cyBvZiB0aGUgc3VwZXJwcm9qZWN0IHRoZSBzdWJtb2R1bGUgaXRzZWxmIGNhbiBub3QgYmUKK2p1c3QgZmV0Y2hlZCBjb21taXRzIG9mIHRoZSBzdXBlcnByb2plY3QgdGhlIHN1Ym1vZHVsZSBpdHNlbGYgY2Fubm90IGJlCiBmZXRjaGVkLCBtYWtpbmcgaXQgaW1wb3NzaWJsZSB0byBjaGVjayBvdXQgdGhhdCBzdWJtb2R1bGUgbGF0ZXIgd2l0aG91dAogaGF2aW5nIHRvIGRvIGEgZmV0Y2ggYWdhaW4uIFRoaXMgaXMgZXhwZWN0ZWQgdG8gYmUgZml4ZWQgaW4gYSBmdXR1cmUgR2l0CiB2ZXJzaW9uLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtZmlsdGVyLWJyYW5jaC50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1maWx0ZXItYnJhbmNoLnR4dAppbmRleCBlNmYwOGFiLi40MGJhNGFhIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1maWx0ZXItYnJhbmNoLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1maWx0ZXItYnJhbmNoLnR4dApAQCAtMTYsNiArMTYsMTkgQEAKIAlbLS1vcmlnaW5hbCA8bmFtZXNwYWNlPl0gWy1kIDxkaXJlY3Rvcnk+XSBbLWYgfCAtLWZvcmNlXQogCVstLXN0YXRlLWJyYW5jaCA8YnJhbmNoPl0gWy0tXSBbPHJldi1saXN0IG9wdGlvbnM+Li4uXQogCitXQVJOSU5HCistLS0tLS0tCisnZ2l0IGZpbHRlci1icmFuY2gnIGhhcyBhIHBsZXRob3JhIG9mIHBpdGZhbGxzIHRoYXQgY2FuIHByb2R1Y2Ugbm9uLW9idmlvdXMKK21hbmdsaW5ncyBvZiB0aGUgaW50ZW5kZWQgaGlzdG9yeSByZXdyaXRlIChhbmQgY2FuIGxlYXZlIHlvdSB3aXRoIGxpdHRsZQordGltZSB0byBpbnZlc3RpZ2F0ZSBzdWNoIHByb2JsZW1zIHNpbmNlIGl0IGhhcyBzdWNoIGFieXNtYWwgcGVyZm9ybWFuY2UpLgorVGhlc2Ugc2FmZXR5IGFuZCBwZXJmb3JtYW5jZSBpc3N1ZXMgY2Fubm90IGJlIGJhY2t3YXJkIGNvbXBhdGlibHkgZml4ZWQgYW5kCithcyBzdWNoLCBpdHMgdXNlIGlzIG5vdCByZWNvbW1lbmRlZC4gIFBsZWFzZSB1c2UgYW4gYWx0ZXJuYXRpdmUgaGlzdG9yeQorZmlsdGVyaW5nIHRvb2wgc3VjaCBhcyBodHRwczovL2dpdGh1Yi5jb20vbmV3cmVuL2dpdC1maWx0ZXItcmVwby9bZ2l0CitmaWx0ZXItcmVwb10uICBJZiB5b3Ugc3RpbGwgbmVlZCB0byB1c2UgJ2dpdCBmaWx0ZXItYnJhbmNoJywgcGxlYXNlCitjYXJlZnVsbHkgcmVhZCA8PFNBRkVUWT4+IChhbmQgPDxQRVJGT1JNQU5DRT4+KSB0byBsZWFybiBhYm91dCB0aGUgbGFuZAorbWluZXMgb2YgZmlsdGVyLWJyYW5jaCwgYW5kIHRoZW4gdmlnaWxhbnRseSBhdm9pZCBhcyBtYW55IG9mIHRoZSBoYXphcmRzCitsaXN0ZWQgdGhlcmUgYXMgcmVhc29uYWJseSBwb3NzaWJsZS4KKwogREVTQ1JJUFRJT04KIC0tLS0tLS0tLS0tCiBMZXRzIHlvdSByZXdyaXRlIEdpdCByZXZpc2lvbiBoaXN0b3J5IGJ5IHJld3JpdGluZyB0aGUgYnJhbmNoZXMgbWVudGlvbmVkCkBAIC0xODksNyArMjAyLDcgQEAKIAlyZXdyaXRpbmcuICBXaGVuIGFwcGx5aW5nIGEgdHJlZSBmaWx0ZXIsIHRoZSBjb21tYW5kIG5lZWRzIHRvCiAJdGVtcG9yYXJpbHkgY2hlY2sgb3V0IHRoZSB0cmVlIHRvIHNvbWUgZGlyZWN0b3J5LCB3aGljaCBtYXkgY29uc3VtZQogCWNvbnNpZGVyYWJsZSBzcGFjZSBpbiBjYXNlIG9mIGxhcmdlIHByb2plY3RzLiAgQnkgZGVmYXVsdCBpdAotCWRvZXMgdGhpcyBpbiB0aGUgJy5naXQtcmV3cml0ZS8nIGRpcmVjdG9yeSBidXQgeW91IGNhbiBvdmVycmlkZQorCWRvZXMgdGhpcyBpbiB0aGUgYC5naXQtcmV3cml0ZS9gIGRpcmVjdG9yeSBidXQgeW91IGNhbiBvdmVycmlkZQogCXRoYXQgY2hvaWNlIGJ5IHRoaXMgcGFyYW1ldGVyLgogCiAtZjo6CkBAIC00NDUsMzYgKzQ1OCwyNDUgQEAKICAgKG9yIGlmIHlvdXIgZ2l0LWdjIGlzIG5vdCBuZXcgZW5vdWdoIHRvIHN1cHBvcnQgYXJndW1lbnRzIHRvCiAgIGAtLXBydW5lYCwgdXNlIGBnaXQgcmVwYWNrIC1hZDsgZ2l0IHBydW5lYCBpbnN0ZWFkKS4KIAotTk9URVMKLS0tLS0tCitbW1BFUkZPUk1BTkNFXV0KK1BFUkZPUk1BTkNFCistLS0tLS0tLS0tLQogCi1naXQtZmlsdGVyLWJyYW5jaCBhbGxvd3MgeW91IHRvIG1ha2UgY29tcGxleCBzaGVsbC1zY3JpcHRlZCByZXdyaXRlcwotb2YgeW91ciBHaXQgaGlzdG9yeSwgYnV0IHlvdSBwcm9iYWJseSBkb24ndCBuZWVkIHRoaXMgZmxleGliaWxpdHkgaWYKLXlvdSdyZSBzaW1wbHkgX3JlbW92aW5nIHVud2FudGVkIGRhdGFfIGxpa2UgbGFyZ2UgZmlsZXMgb3IgcGFzc3dvcmRzLgotRm9yIHRob3NlIG9wZXJhdGlvbnMgeW91IG1heSB3YW50IHRvIGNvbnNpZGVyCi1odHRwOi8vcnR5bGV5LmdpdGh1Yi5pby9iZmctcmVwby1jbGVhbmVyL1tUaGUgQkZHIFJlcG8tQ2xlYW5lcl0sCi1hIEpWTS1iYXNlZCBhbHRlcm5hdGl2ZSB0byBnaXQtZmlsdGVyLWJyYW5jaCwgdHlwaWNhbGx5IGF0IGxlYXN0Ci0xMC01MHggZmFzdGVyIGZvciB0aG9zZSB1c2UtY2FzZXMsIGFuZCB3aXRoIHF1aXRlIGRpZmZlcmVudAotY2hhcmFjdGVyaXN0aWNzOgorVGhlIHBlcmZvcm1hbmNlIG9mIGdpdC1maWx0ZXItYnJhbmNoIGlzIGdsYWNpYWxseSBzbG93OyBpdHMgZGVzaWduIG1ha2VzIGl0CitpbXBvc3NpYmxlIGZvciBhIGJhY2t3YXJkLWNvbXBhdGlibGUgaW1wbGVtZW50YXRpb24gdG8gZXZlciBiZSBmYXN0OgogCi0qIEFueSBwYXJ0aWN1bGFyIHZlcnNpb24gb2YgYSBmaWxlIGlzIGNsZWFuZWQgZXhhY3RseSBfb25jZV8uIFRoZSBCRkcsCi0gIHVubGlrZSBnaXQtZmlsdGVyLWJyYW5jaCwgZG9lcyBub3QgZ2l2ZSB5b3UgdGhlIG9wcG9ydHVuaXR5IHRvCi0gIGhhbmRsZSBhIGZpbGUgZGlmZmVyZW50bHkgYmFzZWQgb24gd2hlcmUgb3Igd2hlbiBpdCB3YXMgY29tbWl0dGVkCi0gIHdpdGhpbiB5b3VyIGhpc3RvcnkuIFRoaXMgY29uc3RyYWludCBnaXZlcyB0aGUgY29yZSBwZXJmb3JtYW5jZQotICBiZW5lZml0IG9mIFRoZSBCRkcsIGFuZCBpcyB3ZWxsLXN1aXRlZCB0byB0aGUgdGFzayBvZiBjbGVhbnNpbmcgYmFkCi0gIGRhdGEgLSB5b3UgZG9uJ3QgY2FyZSBfd2hlcmVfIHRoZSBiYWQgZGF0YSBpcywgeW91IGp1c3Qgd2FudCBpdAotICBfZ29uZV8uCisqIEluIGVkaXRpbmcgZmlsZXMsIGdpdC1maWx0ZXItYnJhbmNoIGJ5IGRlc2lnbiBjaGVja3Mgb3V0IGVhY2ggYW5kCisgIGV2ZXJ5IGNvbW1pdCBhcyBpdCBleGlzdGVkIGluIHRoZSBvcmlnaW5hbCByZXBvLiAgSWYgeW91ciByZXBvIGhhcworICBgMTBeNWAgZmlsZXMgYW5kIGAxMF41YCBjb21taXRzLCBidXQgZWFjaCBjb21taXQgb25seSBtb2RpZmllcyBmaXZlCisgIGZpbGVzLCB0aGVuIGdpdC1maWx0ZXItYnJhbmNoIHdpbGwgbWFrZSB5b3UgZG8gYDEwXjEwYCBtb2RpZmljYXRpb25zLAorICBkZXNwaXRlIG9ubHkgaGF2aW5nIChhdCBtb3N0KSBgNSoxMF41YCB1bmlxdWUgYmxvYnMuCiAKLSogQnkgZGVmYXVsdCBUaGUgQkZHIHRha2VzIGZ1bGwgYWR2YW50YWdlIG9mIG11bHRpLWNvcmUgbWFjaGluZXMsCi0gIGNsZWFuc2luZyBjb21taXQgZmlsZS10cmVlcyBpbiBwYXJhbGxlbC4gZ2l0LWZpbHRlci1icmFuY2ggY2xlYW5zCi0gIGNvbW1pdHMgc2VxdWVudGlhbGx5IChpLmUuIGluIGEgc2luZ2xlLXRocmVhZGVkIG1hbm5lciksIHRob3VnaCBpdAotICBfaXNfIHBvc3NpYmxlIHRvIHdyaXRlIGZpbHRlcnMgdGhhdCBpbmNsdWRlIHRoZWlyIG93biBwYXJhbGxlbGlzbSwKLSAgaW4gdGhlIHNjcmlwdHMgZXhlY3V0ZWQgYWdhaW5zdCBlYWNoIGNvbW1pdC4KKyogSWYgeW91IHRyeSBhbmQgY2hlYXQgYW5kIHRyeSB0byBtYWtlIGdpdC1maWx0ZXItYnJhbmNoIG9ubHkgd29yayBvbgorICBmaWxlcyBtb2RpZmllZCBpbiBhIGNvbW1pdCwgdGhlbiB0d28gdGhpbmdzIGhhcHBlbgogCi0qIFRoZSBodHRwOi8vcnR5bGV5LmdpdGh1Yi5pby9iZmctcmVwby1jbGVhbmVyLyNleGFtcGxlc1tjb21tYW5kIG9wdGlvbnNdCi0gIGFyZSBtdWNoIG1vcmUgcmVzdHJpY3RpdmUgdGhhbiBnaXQtZmlsdGVyIGJyYW5jaCwgYW5kIGRlZGljYXRlZCBqdXN0Ci0gIHRvIHRoZSB0YXNrcyBvZiByZW1vdmluZyB1bndhbnRlZCBkYXRhLSBlLmc6Ci0gIGAtLXN0cmlwLWJsb2JzLWJpZ2dlci10aGFuIDFNYC4KKyAgKiogeW91IHJ1biBpbnRvIHByb2JsZW1zIHdpdGggZGVsZXRpb25zIHdoZW5ldmVyIHRoZSB1c2VyIGlzIHNpbXBseQorICAgICB0cnlpbmcgdG8gcmVuYW1lIGZpbGVzIChiZWNhdXNlIGF0dGVtcHRpbmcgdG8gZGVsZXRlIGZpbGVzIHRoYXQKKyAgICAgZG9uJ3QgZXhpc3QgbG9va3MgbGlrZSBhIG5vLW9wOyBpdCB0YWtlcyBzb21lIGNoaWNhbmVyeSB0byByZW1hcAorICAgICBkZWxldGVzIGFjcm9zcyBmaWxlIHJlbmFtZXMgd2hlbiB0aGUgcmVuYW1lcyBoYXBwZW4gdmlhIGFyYml0cmFyeQorICAgICB1c2VyLXByb3ZpZGVkIHNoZWxsKQorCisgICoqIGV2ZW4gaWYgeW91IHN1Y2NlZWQgYXQgdGhlIG1hcC1kZWxldGVzLWZvci1yZW5hbWVzIGNoaWNhbmVyeSwgeW91CisgICAgIHN0aWxsIHRlY2huaWNhbGx5IHZpb2xhdGUgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBiZWNhdXNlIHVzZXJzCisgICAgIGFyZSBhbGxvd2VkIHRvIGZpbHRlciBmaWxlcyBpbiB3YXlzIHRoYXQgZGVwZW5kIHVwb24gdG9wb2xvZ3kgb2YKKyAgICAgY29tbWl0cyBpbnN0ZWFkIG9mIGZpbHRlcmluZyBzb2xlbHkgYmFzZWQgb24gZmlsZSBjb250ZW50cyBvcgorICAgICBuYW1lcyAodGhvdWdoIHRoaXMgaGFzIG5vdCBiZWVuIG9ic2VydmVkIGluIHRoZSB3aWxkKS4KKworKiBFdmVuIGlmIHlvdSBkb24ndCBuZWVkIHRvIGVkaXQgZmlsZXMgYnV0IG9ubHkgd2FudCB0byBlLmcuIHJlbmFtZSBvcgorICByZW1vdmUgc29tZSBhbmQgdGh1cyBjYW4gYXZvaWQgY2hlY2tpbmcgb3V0IGVhY2ggZmlsZSAoaS5lLiB5b3UgY2FuCisgIHVzZSAtLWluZGV4LWZpbHRlciksIHlvdSBzdGlsbCBhcmUgcGFzc2luZyBzaGVsbCBzbmlwcGV0cyBmb3IgeW91cgorICBmaWx0ZXJzLiAgVGhpcyBtZWFucyB0aGF0IGZvciBldmVyeSBjb21taXQsIHlvdSBoYXZlIHRvIGhhdmUgYQorICBwcmVwYXJlZCBnaXQgcmVwbyB3aGVyZSB0aG9zZSBmaWx0ZXJzIGNhbiBiZSBydW4uICBUaGF0J3MgYQorICBzaWduaWZpY2FudCBzZXR1cC4KKworKiBGdXJ0aGVyLCBzZXZlcmFsIGFkZGl0aW9uYWwgZmlsZXMgYXJlIGNyZWF0ZWQgb3IgdXBkYXRlZCBwZXIgY29tbWl0CisgIGJ5IGdpdC1maWx0ZXItYnJhbmNoLiAgU29tZSBvZiB0aGVzZSBhcmUgZm9yIHN1cHBvcnRpbmcgdGhlCisgIGNvbnZlbmllbmNlIGZ1bmN0aW9ucyBwcm92aWRlZCBieSBnaXQtZmlsdGVyLWJyYW5jaCAoc3VjaCBhcyBtYXAoKSksCisgIHdoaWxlIG90aGVycyBhcmUgZm9yIGtlZXBpbmcgdHJhY2sgb2YgaW50ZXJuYWwgc3RhdGUgKGJ1dCBjb3VsZCBoYXZlCisgIGFsc28gYmVlbiBhY2Nlc3NlZCBieSB1c2VyIGZpbHRlcnM7IG9uZSBvZiBnaXQtZmlsdGVyLWJyYW5jaCdzCisgIHJlZ3Jlc3Npb24gdGVzdHMgZG9lcyBzbykuICBUaGlzIGVzc2VudGlhbGx5IGFtb3VudHMgdG8gdXNpbmcgdGhlCisgIGZpbGVzeXN0ZW0gYXMgYW4gSVBDIG1lY2hhbmlzbSBiZXR3ZWVuIGdpdC1maWx0ZXItYnJhbmNoIGFuZCB0aGUKKyAgdXNlci1wcm92aWRlZCBmaWx0ZXJzLiAgRGlza3MgdGVuZCB0byBiZSBhIHNsb3cgSVBDIG1lY2hhbmlzbSwgYW5kCisgIHdyaXRpbmcgdGhlc2UgZmlsZXMgYWxzbyBlZmZlY3RpdmVseSByZXByZXNlbnRzIGEgZm9yY2VkCisgIHN5bmNocm9uaXphdGlvbiBwb2ludCBiZXR3ZWVuIHNlcGFyYXRlIHByb2Nlc3NlcyB0aGF0IHdlIGhpdCB3aXRoCisgIGV2ZXJ5IGNvbW1pdC4KKworKiBUaGUgdXNlci1wcm92aWRlZCBzaGVsbCBjb21tYW5kcyB3aWxsIGxpa2VseSBpbnZvbHZlIGEgcGlwZWxpbmUgb2YKKyAgY29tbWFuZHMsIHJlc3VsdGluZyBpbiB0aGUgY3JlYXRpb24gb2YgbWFueSBwcm9jZXNzZXMgcGVyIGNvbW1pdC4KKyAgQ3JlYXRpbmcgYW5kIHJ1bm5pbmcgYW5vdGhlciBwcm9jZXNzIHRha2VzIGEgd2lkZWx5IHZhcnlpbmcgYW1vdW50CisgIG9mIHRpbWUgYmV0d2VlbiBvcGVyYXRpbmcgc3lzdGVtcywgYnV0IG9uIGFueSBwbGF0Zm9ybSBpdCBpcyB2ZXJ5CisgIHNsb3cgcmVsYXRpdmUgdG8gaW52b2tpbmcgYSBmdW5jdGlvbi4KKworKiBnaXQtZmlsdGVyLWJyYW5jaCBpdHNlbGYgaXMgd3JpdHRlbiBpbiBzaGVsbCwgd2hpY2ggaXMga2luZCBvZiBzbG93LgorICBUaGlzIGlzIHRoZSBvbmUgcGVyZm9ybWFuY2UgaXNzdWUgdGhhdCBjb3VsZCBiZSBiYWNrd2FyZC1jb21wYXRpYmx5CisgIGZpeGVkLCBidXQgY29tcGFyZWQgdG8gdGhlIGFib3ZlIHByb2JsZW1zIHRoYXQgYXJlIGludHJpbnNpYyB0byB0aGUKKyAgZGVzaWduIG9mIGdpdC1maWx0ZXItYnJhbmNoLCB0aGUgbGFuZ3VhZ2Ugb2YgdGhlIHRvb2wgaXRzZWxmIGlzIGEKKyAgcmVsYXRpdmVseSBtaW5vciBpc3N1ZS4KKworICAqKiBTaWRlIG5vdGU6IFVuZm9ydHVuYXRlbHksIHBlb3BsZSB0ZW5kIHRvIGZpeGF0ZSBvbiB0aGUKKyAgICAgd3JpdHRlbi1pbi1zaGVsbCBhc3BlY3QgYW5kIHBlcmlvZGljYWxseSBhc2sgaWYgZ2l0LWZpbHRlci1icmFuY2gKKyAgICAgY291bGQgYmUgcmV3cml0dGVuIGluIGFub3RoZXIgbGFuZ3VhZ2UgdG8gZml4IHRoZSBwZXJmb3JtYW5jZQorICAgICBpc3N1ZXMuICBOb3Qgb25seSBkb2VzIHRoYXQgaWdub3JlIHRoZSBiaWdnZXIgaW50cmluc2ljIHByb2JsZW1zCisgICAgIHdpdGggdGhlIGRlc2lnbiwgaXQnZCBoZWxwIGxlc3MgdGhhbiB5b3UnZCBleHBlY3Q6IGlmCisgICAgIGdpdC1maWx0ZXItYnJhbmNoIGl0c2VsZiB3ZXJlIG5vdCBzaGVsbCwgdGhlbiB0aGUgY29udmVuaWVuY2UKKyAgICAgZnVuY3Rpb25zIChtYXAoKSwgc2tpcF9jb21taXQoKSwgZXRjKSBhbmQgdGhlIGAtLXNldHVwYCBhcmd1bWVudAorICAgICBjb3VsZCBubyBsb25nZXIgYmUgZXhlY3V0ZWQgb25jZSBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBwcm9ncmFtCisgICAgIGJ1dCB3b3VsZCBpbnN0ZWFkIG5lZWQgdG8gYmUgcHJlcGVuZGVkIHRvIGV2ZXJ5IHVzZXIgZmlsdGVyIChhbmQKKyAgICAgdGh1cyByZS1leGVjdXRlZCB3aXRoIGV2ZXJ5IGNvbW1pdCkuCisKK1RoZSBodHRwczovL2dpdGh1Yi5jb20vbmV3cmVuL2dpdC1maWx0ZXItcmVwby9bZ2l0IGZpbHRlci1yZXBvXSB0b29sIGlzCithbiBhbHRlcm5hdGl2ZSB0byBnaXQtZmlsdGVyLWJyYW5jaCB3aGljaCBkb2VzIG5vdCBzdWZmZXIgZnJvbSB0aGVzZQorcGVyZm9ybWFuY2UgcHJvYmxlbXMgb3IgdGhlIHNhZmV0eSBwcm9ibGVtcyAobWVudGlvbmVkIGJlbG93KS4gRm9yIHRob3NlCit3aXRoIGV4aXN0aW5nIHRvb2xpbmcgd2hpY2ggcmVsaWVzIHVwb24gZ2l0LWZpbHRlci1icmFuY2gsICdnaXQKK3JlcG8tZmlsdGVyJyBhbHNvIHByb3ZpZGVzCitodHRwczovL2dpdGh1Yi5jb20vbmV3cmVuL2dpdC1maWx0ZXItcmVwby9ibG9iL21hc3Rlci9jb250cmliL2ZpbHRlci1yZXBvLWRlbW9zL2ZpbHRlci1sYW1lbHlbZmlsdGVyLWxhbWVseV0sCithIGRyb3AtaW4gZ2l0LWZpbHRlci1icmFuY2ggcmVwbGFjZW1lbnQgKHdpdGggYSBmZXcgY2F2ZWF0cykuICBXaGlsZQorZmlsdGVyLWxhbWVseSBzdWZmZXJzIGZyb20gYWxsIHRoZSBzYW1lIHNhZmV0eSBpc3N1ZXMgYXMKK2dpdC1maWx0ZXItYnJhbmNoLCBpdCBhdCBsZWFzdCBhbWVsaW9yYXRlcyB0aGUgcGVyZm9ybWFuY2UgaXNzdWVzIGEKK2xpdHRsZS4KKworW1tTQUZFVFldXQorU0FGRVRZCistLS0tLS0KKworZ2l0LWZpbHRlci1icmFuY2ggaXMgcmlkZGxlZCB3aXRoIGdvdGNoYXMgcmVzdWx0aW5nIGluIHZhcmlvdXMgd2F5cyB0bworZWFzaWx5IGNvcnJ1cHQgcmVwb3Mgb3IgZW5kIHVwIHdpdGggYSBtZXNzIHdvcnNlIHRoYW4gd2hhdCB5b3Ugc3RhcnRlZAord2l0aDoKKworKiBTb21lb25lIGNhbiBoYXZlIGEgc2V0IG9mICJ3b3JraW5nIGFuZCB0ZXN0ZWQgZmlsdGVycyIgd2hpY2ggdGhleQorICBkb2N1bWVudCBvciBwcm92aWRlIHRvIGEgY293b3JrZXIsIHdobyB0aGVuIHJ1bnMgdGhlbSBvbiBhIGRpZmZlcmVudAorICBPUyB3aGVyZSB0aGUgc2FtZSBjb21tYW5kcyBhcmUgbm90IHdvcmtpbmcvdGVzdGVkIChzb21lIGV4YW1wbGVzIGluCisgIHRoZSBnaXQtZmlsdGVyLWJyYW5jaCBtYW5wYWdlIGFyZSBhbHNvIGFmZmVjdGVkIGJ5IHRoaXMpLgorICBCU0QgdnMuIEdOVSB1c2VybGFuZCBkaWZmZXJlbmNlcyBjYW4gcmVhbGx5IGJpdGUuICBJZiBsdWNreSwgZXJyb3IKKyAgbWVzc2FnZXMgYXJlIHNwZXdlZC4gIEJ1dCBqdXN0IGFzIGxpa2VseSwgdGhlIGNvbW1hbmRzIGVpdGhlciBkb24ndAorICBkbyB0aGUgZmlsdGVyaW5nIHJlcXVlc3RlZCwgb3Igc2lsZW50bHkgY29ycnVwdCBieSBtYWtpbmcgc29tZQorICB1bndhbnRlZCBjaGFuZ2UuICBUaGUgdW53YW50ZWQgY2hhbmdlIG1heSBvbmx5IGFmZmVjdCBhIGZldyBjb21taXRzLAorICBzbyBpdCdzIG5vdCBuZWNlc3NhcmlseSBvYnZpb3VzIGVpdGhlci4gIChUaGUgZmFjdCB0aGF0IHByb2JsZW1zCisgIHdvbid0IG5lY2Vzc2FyaWx5IGJlIG9idmlvdXMgbWVhbnMgdGhleSBhcmUgbGlrZWx5IHRvIGdvIHVubm90aWNlZAorICB1bnRpbCB0aGUgcmV3cml0dGVuIGhpc3RvcnkgaXMgaW4gdXNlIGZvciBxdWl0ZSBhIHdoaWxlLCBhdCB3aGljaAorICBwb2ludCBpdCdzIHJlYWxseSBoYXJkIHRvIGp1c3RpZnkgYW5vdGhlciBmbGFnLWRheSBmb3IgYW5vdGhlcgorICByZXdyaXRlLikKKworKiBGaWxlbmFtZXMgd2l0aCBzcGFjZXMgYXJlIG9mdGVuIG1pc2hhbmRsZWQgYnkgc2hlbGwgc25pcHBldHMgc2luY2UKKyAgdGhleSBjYXVzZSBwcm9ibGVtcyBmb3Igc2hlbGwgcGlwZWxpbmVzLiAgTm90IGV2ZXJ5b25lIGlzIGZhbWlsaWFyCisgIHdpdGggZmluZCAtcHJpbnQwLCB4YXJncyAtMCwgZ2l0LWxzLWZpbGVzIC16LCBldGMuICBFdmVuIHBlb3BsZSB3aG8KKyAgYXJlIGZhbWlsaWFyIHdpdGggdGhlc2UgbWF5IGFzc3VtZSBzdWNoIGZsYWdzIGFyZSBub3QgcmVsZXZhbnQKKyAgYmVjYXVzZSBzb21lb25lIGVsc2UgcmVuYW1lZCBhbnkgc3VjaCBmaWxlcyBpbiB0aGVpciByZXBvIGJhY2sKKyAgYmVmb3JlIHRoZSBwZXJzb24gZG9pbmcgdGhlIGZpbHRlcmluZyBqb2luZWQgdGhlIHByb2plY3QuICBBbmQKKyAgb2Z0ZW4sIGV2ZW4gdGhvc2UgZmFtaWxpYXIgd2l0aCBoYW5kbGluZyBhcmd1bWVudHMgd2l0aCBzcGFjZXMgbWF5CisgIG5vdCBkbyBzbyBqdXN0IGJlY2F1c2UgdGhleSBhcmVuJ3QgaW4gdGhlIG1pbmRzZXQgb2YgdGhpbmtpbmcgYWJvdXQKKyAgZXZlcnl0aGluZyB0aGF0IGNvdWxkIHBvc3NpYmx5IGdvIHdyb25nLgorCisqIE5vbi1hc2NpaSBmaWxlbmFtZXMgY2FuIGJlIHNpbGVudGx5IHJlbW92ZWQgZGVzcGl0ZSBiZWluZyBpbiBhCisgIGRlc2lyZWQgZGlyZWN0b3J5LiAgS2VlcGluZyBvbmx5IHdhbnRlZCBwYXRocyBpcyBvZnRlbiBkb25lIHVzaW5nCisgIHBpcGVsaW5lcyBsaWtlIGBnaXQgbHMtZmlsZXMgfCBncmVwIC12IF5XQU5URURfRElSLyB8IHhhcmdzIGdpdCBybWAuCisgIGxzLWZpbGVzIHdpbGwgb25seSBxdW90ZSBmaWxlbmFtZXMgaWYgbmVlZGVkLCBzbyBmb2xrcyBtYXkgbm90CisgIG5vdGljZSB0aGF0IG9uZSBvZiB0aGUgZmlsZXMgZGlkbid0IG1hdGNoIHRoZSByZWdleCAoYXQgbGVhc3Qgbm90CisgIHVudGlsIGl0J3MgbXVjaCB0b28gbGF0ZSkuICBZZXMsIHNvbWVvbmUgd2hvIGtub3dzIGFib3V0CisgIGNvcmUucXVvdGVQYXRoIGNhbiBhdm9pZCB0aGlzICh1bmxlc3MgdGhleSBoYXZlIG90aGVyIHNwZWNpYWwKKyAgY2hhcmFjdGVycyBsaWtlIFx0LCBcbiwgb3IgIiksIGFuZCBwZW9wbGUgd2hvIHVzZSBscy1maWxlcyAteiB3aXRoCisgIHNvbWV0aGluZyBvdGhlciB0aGFuIGdyZXAgY2FuIGF2b2lkIHRoaXMsIGJ1dCB0aGF0IGRvZXNuJ3QgbWVhbiB0aGV5CisgIHdpbGwuCisKKyogU2ltaWxhcmx5LCB3aGVuIG1vdmluZyBmaWxlcyBhcm91bmQsIG9uZSBjYW4gZmluZCB0aGF0IGZpbGVuYW1lcworICB3aXRoIG5vbi1hc2NpaSBvciBzcGVjaWFsIGNoYXJhY3RlcnMgZW5kIHVwIGluIGEgZGlmZmVyZW50CisgIGRpcmVjdG9yeSwgb25lIHRoYXQgaW5jbHVkZXMgYSBkb3VibGUgcXVvdGUgY2hhcmFjdGVyLiAgKFRoaXMgaXMKKyAgdGVjaG5pY2FsbHkgdGhlIHNhbWUgaXNzdWUgYXMgYWJvdmUgd2l0aCBxdW90aW5nLCBidXQgcGVyaGFwcyBhbgorICBpbnRlcmVzdGluZyBkaWZmZXJlbnQgd2F5IHRoYXQgaXQgY2FuIGFuZCBoYXMgbWFuaWZlc3RlZCBhcyBhCisgIHByb2JsZW0uKQorCisqIEl0J3MgZmFyIHRvbyBlYXN5IHRvIGFjY2lkZW50YWxseSBtaXggdXAgb2xkIGFuZCBuZXcgaGlzdG9yeS4gIEl0J3MKKyAgc3RpbGwgcG9zc2libGUgd2l0aCBhbnkgdG9vbCwgYnV0IGdpdC1maWx0ZXItYnJhbmNoIGFsbW9zdAorICBpbnZpdGVzIGl0LiAgSWYgbHVja3ksIHRoZSBvbmx5IGRvd25zaWRlIGlzIHVzZXJzIGdldHRpbmcgZnJ1c3RyYXRlZAorICB0aGF0IHRoZXkgZG9uJ3Qga25vdyBob3cgdG8gc2hyaW5rIHRoZWlyIHJlcG8gYW5kIHJlbW92ZSB0aGUgb2xkCisgIHN0dWZmLiAgSWYgdW5sdWNreSwgdGhleSBtZXJnZSBvbGQgYW5kIG5ldyBoaXN0b3J5IGFuZCBlbmQgdXAgd2l0aAorICBtdWx0aXBsZSAiY29waWVzIiBvZiBlYWNoIGNvbW1pdCwgc29tZSBvZiB3aGljaCBoYXZlIHVud2FudGVkIG9yCisgIHNlbnNpdGl2ZSBmaWxlcyBhbmQgb3RoZXJzIHdoaWNoIGRvbid0LiAgVGhpcyBjb21lcyBhYm91dCBpbgorICBtdWx0aXBsZSBkaWZmZXJlbnQgd2F5czoKKworICAqKiB0aGUgZGVmYXVsdCB0byBvbmx5IGRvaW5nIGEgcGFydGlhbCBoaXN0b3J5IHJld3JpdGUgKCctLWFsbCcgaXMgbm90CisgICAgIHRoZSBkZWZhdWx0IGFuZCBmZXcgZXhhbXBsZXMgc2hvdyBpdCkKKworICAqKiB0aGUgZmFjdCB0aGF0IHRoZXJlJ3Mgbm8gYXV0b21hdGljIHBvc3QtcnVuIGNsZWFudXAKKworICAqKiB0aGUgZmFjdCB0aGF0IC0tdGFnLW5hbWUtZmlsdGVyICh3aGVuIHVzZWQgdG8gcmVuYW1lIHRhZ3MpIGRvZXNuJ3QKKyAgICAgcmVtb3ZlIHRoZSBvbGQgdGFncyBidXQganVzdCBhZGRzIG5ldyBvbmVzIHdpdGggdGhlIG5ldyBuYW1lCisKKyAgKiogdGhlIGZhY3QgdGhhdCBsaXR0bGUgZWR1Y2F0aW9uYWwgaW5mb3JtYXRpb24gaXMgcHJvdmlkZWQgdG8gaW5mb3JtCisgICAgIHVzZXJzIG9mIHRoZSByYW1pZmljYXRpb25zIG9mIGEgcmV3cml0ZSBhbmQgaG93IHRvIGF2b2lkIG1peGluZyBvbGQKKyAgICAgYW5kIG5ldyBoaXN0b3J5LiAgRm9yIGV4YW1wbGUsIHRoaXMgbWFuIHBhZ2UgZGlzY3Vzc2VzIGhvdyB1c2VycworICAgICBuZWVkIHRvIHVuZGVyc3RhbmQgdGhhdCB0aGV5IG5lZWQgdG8gcmViYXNlIHRoZWlyIGNoYW5nZXMgZm9yIGFsbAorICAgICB0aGVpciBicmFuY2hlcyBvbiB0b3Agb2YgbmV3IGhpc3RvcnkgKG9yIGRlbGV0ZSBhbmQgcmVjbG9uZSksIGJ1dAorICAgICB0aGF0J3Mgb25seSBvbmUgb2YgbXVsdGlwbGUgY29uY2VybnMgdG8gY29uc2lkZXIuICBTZWUgdGhlCisgICAgICJESVNDVVNTSU9OIiBzZWN0aW9uIG9mIHRoZSBnaXQgZmlsdGVyLXJlcG8gbWFudWFsIHBhZ2UgZm9yIG1vcmUKKyAgICAgZGV0YWlscy4KKworKiBBbm5vdGF0ZWQgdGFncyBjYW4gYmUgYWNjaWRlbnRhbGx5IGNvbnZlcnRlZCB0byBsaWdodHdlaWdodCB0YWdzLAorICBkdWUgdG8gZWl0aGVyIG9mIHR3byBpc3N1ZXM6CisKKyAgKiogU29tZW9uZSBjYW4gZG8gYSBoaXN0b3J5IHJld3JpdGUsIHJlYWxpemUgdGhleSBtZXNzZWQgdXAsIHJlc3RvcmUKKyAgICAgZnJvbSB0aGUgYmFja3VwcyBpbiByZWZzL29yaWdpbmFsLywgYW5kIHRoZW4gcmVkbyB0aGVpcgorICAgICBnaXQtZmlsdGVyLWJyYW5jaCBjb21tYW5kLiAgKFRoZSBiYWNrdXAgaW4gcmVmcy9vcmlnaW5hbC8gaXMgbm90IGEKKyAgICAgcmVhbCBiYWNrdXA7IGl0IGRlcmVmZXJlbmNlcyB0YWdzIGZpcnN0LikKKworICAqKiBSdW5uaW5nIGdpdC1maWx0ZXItYnJhbmNoIHdpdGggZWl0aGVyIC0tdGFncyBvciAtLWFsbCBpbiB5b3VyCisgICAgIDxyZXYtbGlzdCBvcHRpb25zPi4gIEluIG9yZGVyIHRvIHJldGFpbiBhbm5vdGF0ZWQgdGFncyBhcworICAgICBhbm5vdGF0ZWQsIHlvdSBtdXN0IHVzZSAtLXRhZy1uYW1lLWZpbHRlciAoYW5kIG11c3Qgbm90IGhhdmUKKyAgICAgcmVzdG9yZWQgZnJvbSByZWZzL29yaWdpbmFsLyBpbiBhIHByZXZpb3VzbHkgYm90Y2hlZCByZXdyaXRlKS4KKworKiBBbnkgY29tbWl0IG1lc3NhZ2VzIHRoYXQgc3BlY2lmeSBhbiBlbmNvZGluZyB3aWxsIGJlY29tZSBjb3JydXB0ZWQKKyAgYnkgdGhlIHJld3JpdGU7IGdpdC1maWx0ZXItYnJhbmNoIGlnbm9yZXMgdGhlIGVuY29kaW5nLCB0YWtlcyB0aGUKKyAgb3JpZ2luYWwgYnl0ZXMsIGFuZCBmZWVkcyBpdCB0byBjb21taXQtdHJlZSB3aXRob3V0IHRlbGxpbmcgaXQgdGhlCisgIHByb3BlciBlbmNvZGluZy4gIChUaGlzIGhhcHBlbnMgd2hldGhlciBvciBub3QgLS1tc2ctZmlsdGVyIGlzCisgIHVzZWQuKQorCisqIENvbW1pdCBtZXNzYWdlcyAoZXZlbiBpZiB0aGV5IGFyZSBhbGwgVVRGLTgpIGJ5IGRlZmF1bHQgYmVjb21lCisgIGNvcnJ1cHRlZCBkdWUgdG8gbm90IGJlaW5nIHVwZGF0ZWQgLS0gYW55IHJlZmVyZW5jZXMgdG8gb3RoZXIgY29tbWl0CisgIGhhc2hlcyBpbiBjb21taXQgbWVzc2FnZXMgd2lsbCBub3cgcmVmZXIgdG8gbm8tbG9uZ2VyLWV4dGFudAorICBjb21taXRzLgorCisqIFRoZXJlIGFyZSBubyBmYWNpbGl0aWVzIGZvciBoZWxwaW5nIHVzZXJzIGZpbmQgd2hhdCB1bndhbnRlZCBjcnVkCisgIHRoZXkgc2hvdWxkIGRlbGV0ZSwgd2hpY2ggbWVhbnMgdGhleSBhcmUgbXVjaCBtb3JlIGxpa2VseSB0byBoYXZlCisgIGluY29tcGxldGUgb3IgcGFydGlhbCBjbGVhbnVwcyB0aGF0IHNvbWV0aW1lcyByZXN1bHQgaW4gY29uZnVzaW9uCisgIGFuZCBwZW9wbGUgd2FzdGluZyB0aW1lIHRyeWluZyB0byB1bmRlcnN0YW5kLiAgKEZvciBleGFtcGxlLCBmb2xrcworICB0ZW5kIHRvIGp1c3QgbG9vayBmb3IgYmlnIGZpbGVzIHRvIGRlbGV0ZSBpbnN0ZWFkIG9mIGJpZyBkaXJlY3RvcmllcworICBvciBleHRlbnNpb25zLCBhbmQgb25jZSB0aGV5IGRvIHNvLCB0aGVuIHNvbWV0aW1lIGxhdGVyIGZvbGtzIHVzaW5nCisgIHRoZSBuZXcgcmVwb3NpdG9yeSB3aG8gYXJlIGdvaW5nIHRocm91Z2ggaGlzdG9yeSB3aWxsIG5vdGljZSBhIGJ1aWxkCisgIGFydGlmYWN0IGRpcmVjdG9yeSB0aGF0IGhhcyBzb21lIGZpbGVzIGJ1dCBub3Qgb3RoZXJzLCBvciBhIGNhY2hlIG9mCisgIGRlcGVuZGVuY2llcyAobm9kZV9tb2R1bGVzIG9yIHNpbWlsYXIpIHdoaWNoIGNvdWxkbid0IGhhdmUgZXZlciBiZWVuCisgIGZ1bmN0aW9uYWwgc2luY2UgaXQncyBtaXNzaW5nIHNvbWUgZmlsZXMuKQorCisqIElmIC0tcHJ1bmUtZW1wdHkgaXNuJ3Qgc3BlY2lmaWVkLCB0aGVuIHRoZSBmaWx0ZXJpbmcgcHJvY2VzcyBjYW4KKyAgY3JlYXRlIGhvYXJkcyBvZiBjb25mdXNpbmcgZW1wdHkgY29tbWl0cworCisqIElmIC0tcHJ1bmUtZW1wdHkgaXMgc3BlY2lmaWVkLCB0aGVuIGludGVudGlvbmFsbHkgcGxhY2VkIGVtcHR5CisgIGNvbW1pdHMgZnJvbSBiZWZvcmUgdGhlIGZpbHRlcmluZyBvcGVyYXRpb24gYXJlIGFsc28gcHJ1bmVkIGluc3RlYWQKKyAgb2YganVzdCBwcnVuaW5nIGNvbW1pdHMgdGhhdCBiZWNhbWUgZW1wdHkgZHVlIHRvIGZpbHRlcmluZyBydWxlcy4KKworKiBJZiAtLXBydW5lLWVtcHR5IGlzIHNwZWNpZmllZCwgc29tZXRpbWVzIGVtcHR5IGNvbW1pdHMgYXJlIG1pc3NlZAorICBhbmQgbGVmdCBhcm91bmQgYW55d2F5IChhIHNvbWV3aGF0IHJhcmUgYnVnLCBidXQgaXQgaGFwcGVucy4uLikKKworKiBBIG1pbm9yIGlzc3VlLCBidXQgdXNlcnMgd2hvIGhhdmUgYSBnb2FsIHRvIHVwZGF0ZSBhbGwgbmFtZXMgYW5kCisgIGVtYWlscyBpbiBhIHJlcG9zaXRvcnkgbWF5IGJlIGxlZCB0byAtLWVudi1maWx0ZXIgd2hpY2ggd2lsbCBvbmx5CisgIHVwZGF0ZSBhdXRob3JzIGFuZCBjb21taXR0ZXJzLCBtaXNzaW5nIHRhZ2dlcnMuCisKKyogSWYgdGhlIHVzZXIgcHJvdmlkZXMgYSAtLXRhZy1uYW1lLWZpbHRlciB0aGF0IG1hcHMgbXVsdGlwbGUgdGFncyB0bworICB0aGUgc2FtZSBuYW1lLCBubyB3YXJuaW5nIG9yIGVycm9yIGlzIHByb3ZpZGVkOyBnaXQtZmlsdGVyLWJyYW5jaAorICBzaW1wbHkgb3ZlcndyaXRlcyBlYWNoIHRhZyBpbiBzb21lIHVuZG9jdW1lbnRlZCBwcmUtZGVmaW5lZCBvcmRlcgorICByZXN1bHRpbmcgaW4gb25seSBvbmUgdGFnIGF0IHRoZSBlbmQuICAoQSBnaXQtZmlsdGVyLWJyYW5jaAorICByZWdyZXNzaW9uIHRlc3QgcmVxdWlyZXMgdGhpcyBzdXJwcmlzaW5nIGJlaGF2aW9yLikKKworQWxzbywgdGhlIHBvb3IgcGVyZm9ybWFuY2Ugb2YgZ2l0LWZpbHRlci1icmFuY2ggb2Z0ZW4gbGVhZHMgdG8gc2FmZXR5Citpc3N1ZXM6CisKKyogQ29taW5nIHVwIHdpdGggdGhlIGNvcnJlY3Qgc2hlbGwgc25pcHBldCB0byBkbyB0aGUgZmlsdGVyaW5nIHlvdQorICB3YW50IGlzIHNvbWV0aW1lcyBkaWZmaWN1bHQgdW5sZXNzIHlvdSdyZSBqdXN0IGRvaW5nIGEgdHJpdmlhbAorICBtb2RpZmljYXRpb24gc3VjaCBhcyBkZWxldGluZyBhIGNvdXBsZSBmaWxlcy4gIFVuZm9ydHVuYXRlbHksIHBlb3BsZQorICBvZnRlbiBsZWFybiBpZiB0aGUgc25pcHBldCBpcyByaWdodCBvciB3cm9uZyBieSB0cnlpbmcgaXQgb3V0LCBidXQKKyAgdGhlIHJpZ2h0bmVzcyBvciB3cm9uZ25lc3MgY2FuIHZhcnkgZGVwZW5kaW5nIG9uIHNwZWNpYWwKKyAgY2lyY3Vtc3RhbmNlcyAoc3BhY2VzIGluIGZpbGVuYW1lcywgbm9uLWFzY2lpIGZpbGVuYW1lcywgZnVubnkKKyAgYXV0aG9yIG5hbWVzIG9yIGVtYWlscywgaW52YWxpZCB0aW1lem9uZXMsIHByZXNlbmNlIG9mIGdyYWZ0cyBvcgorICByZXBsYWNlIG9iamVjdHMsIGV0Yy4pLCBtZWFuaW5nIHRoZXkgbWF5IGhhdmUgdG8gd2FpdCBhIGxvbmcgdGltZSwKKyAgaGl0IGFuIGVycm9yLCB0aGVuIHJlc3RhcnQuICBUaGUgcGVyZm9ybWFuY2Ugb2YgZ2l0LWZpbHRlci1icmFuY2ggaXMKKyAgc28gYmFkIHRoYXQgdGhpcyBjeWNsZSBpcyBwYWluZnVsLCByZWR1Y2luZyB0aGUgdGltZSBhdmFpbGFibGUgdG8KKyAgY2FyZWZ1bGx5IHJlLWNoZWNrICh0byBzYXkgbm90aGluZyBhYm91dCB3aGF0IGl0IGRvZXMgdG8gdGhlCisgIHBhdGllbmNlIG9mIHRoZSBwZXJzb24gZG9pbmcgdGhlIHJld3JpdGUgZXZlbiBpZiB0aGV5IGRvIHRlY2huaWNhbGx5CisgIGhhdmUgbW9yZSB0aW1lIGF2YWlsYWJsZSkuICBUaGlzIHByb2JsZW0gaXMgZXh0cmEgY29tcG91bmRlZCBiZWNhdXNlCisgIGVycm9ycyBmcm9tIGJyb2tlbiBmaWx0ZXJzIG1heSBub3QgYmUgc2hvd24gZm9yIGEgbG9uZyB0aW1lIGFuZC9vcgorICBnZXQgbG9zdCBpbiBhIHNlYSBvZiBvdXRwdXQuICBFdmVuIHdvcnNlLCBicm9rZW4gZmlsdGVycyBvZnRlbiBqdXN0CisgIHJlc3VsdCBpbiBzaWxlbnQgaW5jb3JyZWN0IHJld3JpdGVzLgorCisqIFRvIHRvcCBpdCBhbGwgb2ZmLCBldmVuIHdoZW4gdXNlcnMgZmluYWxseSBmaW5kIHdvcmtpbmcgY29tbWFuZHMsCisgIHRoZXkgbmF0dXJhbGx5IHdhbnQgdG8gc2hhcmUgdGhlbS4gIEJ1dCB0aGV5IG1heSBiZSB1bmF3YXJlIHRoYXQKKyAgdGhlaXIgcmVwbyBkaWRuJ3QgaGF2ZSBzb21lIHNwZWNpYWwgY2FzZXMgdGhhdCBzb21lb25lIGVsc2UncyBkb2VzLgorICBTbywgd2hlbiBzb21lb25lIGVsc2Ugd2l0aCBhIGRpZmZlcmVudCByZXBvc2l0b3J5IHJ1bnMgdGhlIHNhbWUKKyAgY29tbWFuZHMsIHRoZXkgZ2V0IGhpdCBieSB0aGUgcHJvYmxlbXMgYWJvdmUuICBPciwgdGhlIHVzZXIganVzdAorICBydW5zIGNvbW1hbmRzIHRoYXQgcmVhbGx5IHdlcmUgdmV0dGVkIGZvciBzcGVjaWFsIGNhc2VzLCBidXQgdGhleQorICBydW4gaXQgb24gYSBkaWZmZXJlbnQgT1Mgd2hlcmUgaXQgZG9lc24ndCB3b3JrLCBhcyBub3RlZCBhYm92ZS4KIAogR0lUCiAtLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWZvci1lYWNoLXJlZi50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1mb3ItZWFjaC1yZWYudHh0CmluZGV4IDkwMWZhZWYuLjZkY2QzOWYgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWZvci1lYWNoLXJlZi50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtZm9yLWVhY2gtcmVmLnR4dApAQCAtMTI4LDEzICsxMjgsMTggQEAKIAogb2JqZWN0c2l6ZTo6CiAJVGhlIHNpemUgb2YgdGhlIG9iamVjdCAodGhlIHNhbWUgYXMgJ2dpdCBjYXQtZmlsZSAtcycgcmVwb3J0cykuCi0KKwlBcHBlbmQgYDpkaXNrYCB0byBnZXQgdGhlIHNpemUsIGluIGJ5dGVzLCB0aGF0IHRoZSBvYmplY3QgdGFrZXMgdXAgb24KKwlkaXNrLiBTZWUgdGhlIG5vdGUgYWJvdXQgb24tZGlzayBzaXplcyBpbiB0aGUgYENBVkVBVFNgIHNlY3Rpb24gYmVsb3cuCiBvYmplY3RuYW1lOjoKIAlUaGUgb2JqZWN0IG5hbWUgKGFrYSBTSEEtMSkuCiAJRm9yIGEgbm9uLWFtYmlndW91cyBhYmJyZXZpYXRpb24gb2YgdGhlIG9iamVjdCBuYW1lIGFwcGVuZCBgOnNob3J0YC4KIAlGb3IgYW4gYWJicmV2aWF0aW9uIG9mIHRoZSBvYmplY3QgbmFtZSB3aXRoIGRlc2lyZWQgbGVuZ3RoIGFwcGVuZAogCWA6c2hvcnQ9PGxlbmd0aD5gLCB3aGVyZSB0aGUgbWluaW11bSBsZW5ndGggaXMgTUlOSU1VTV9BQkJSRVYuIFRoZQogCWxlbmd0aCBtYXkgYmUgZXhjZWVkZWQgdG8gZW5zdXJlIHVuaXF1ZSBvYmplY3QgbmFtZXMuCitkZWx0YWJhc2U6OgorCVRoaXMgZXhwYW5kcyB0byB0aGUgb2JqZWN0IG5hbWUgb2YgdGhlIGRlbHRhIGJhc2UgZm9yIHRoZQorCWdpdmVuIG9iamVjdCwgaWYgaXQgaXMgc3RvcmVkIGFzIGEgZGVsdGEuICBPdGhlcndpc2UgaXQKKwlleHBhbmRzIHRvIHRoZSBudWxsIG9iamVjdCBuYW1lIChhbGwgemVyb2VzKS4KIAogdXBzdHJlYW06OgogCVRoZSBuYW1lIG9mIGEgbG9jYWwgcmVmIHdoaWNoIGNhbiBiZSBjb25zaWRlcmVkIGBgdXBzdHJlYW0nJwpAQCAtMjA5LDYgKzIxNCwxMSBAQAogCWA6bHN0cmlwYCBhbmQgYDpyc3RyaXBgIG9wdGlvbnMgaW4gdGhlIHNhbWUgd2F5IGFzIGByZWZuYW1lYAogCWFib3ZlLgogCit3b3JrdHJlZXBhdGg6OgorCVRoZSBhYnNvbHV0ZSBwYXRoIHRvIHRoZSB3b3JrdHJlZSBpbiB3aGljaCB0aGUgcmVmIGlzIGNoZWNrZWQKKwlvdXQsIGlmIGl0IGlzIGNoZWNrZWQgb3V0IGluIGFueSBsaW5rZWQgd29ya3RyZWUuIEVtcHR5IHN0cmluZworCW90aGVyd2lzZS4KKwogSW4gYWRkaXRpb24gdG8gdGhlIGFib3ZlLCBmb3IgY29tbWl0IGFuZCB0YWcgb2JqZWN0cywgdGhlIGhlYWRlcgogZmllbGQgbmFtZXMgKGB0cmVlYCwgYHBhcmVudGAsIGBvYmplY3RgLCBgdHlwZWAsIGFuZCBgdGFnYCkgY2FuCiBiZSB1c2VkIHRvIHNwZWNpZnkgdGhlIHZhbHVlIGluIHRoZSBoZWFkZXIgZmllbGQuCkBAIC0zNjEsNiArMzcxLDIwIEBACiBnaXQgZm9yLWVhY2gtcmVmIC0tZm9ybWF0PSIlKHJlZm5hbWUpJShpZiklKGF1dGhvcm5hbWUpJSh0aGVuKSBBdXRob3JlZCBieTogJShhdXRob3JuYW1lKSUoZW5kKSIKIC0tLS0tLS0tLS0tLQogCitDQVZFQVRTCistLS0tLS0tCisKK05vdGUgdGhhdCB0aGUgc2l6ZXMgb2Ygb2JqZWN0cyBvbiBkaXNrIGFyZSByZXBvcnRlZCBhY2N1cmF0ZWx5LCBidXQgY2FyZQorc2hvdWxkIGJlIHRha2VuIGluIGRyYXdpbmcgY29uY2x1c2lvbnMgYWJvdXQgd2hpY2ggcmVmcyBvciBvYmplY3RzIGFyZQorcmVzcG9uc2libGUgZm9yIGRpc2sgdXNhZ2UuIFRoZSBzaXplIG9mIGEgcGFja2VkIG5vbi1kZWx0YSBvYmplY3QgbWF5IGJlCittdWNoIGxhcmdlciB0aGFuIHRoZSBzaXplIG9mIG9iamVjdHMgd2hpY2ggZGVsdGEgYWdhaW5zdCBpdCwgYnV0IHRoZQorY2hvaWNlIG9mIHdoaWNoIG9iamVjdCBpcyB0aGUgYmFzZSBhbmQgd2hpY2ggaXMgdGhlIGRlbHRhIGlzIGFyYml0cmFyeQorYW5kIGlzIHN1YmplY3QgdG8gY2hhbmdlIGR1cmluZyBhIHJlcGFjay4KKworTm90ZSBhbHNvIHRoYXQgbXVsdGlwbGUgY29waWVzIG9mIGFuIG9iamVjdCBtYXkgYmUgcHJlc2VudCBpbiB0aGUgb2JqZWN0CitkYXRhYmFzZTsgaW4gdGhpcyBjYXNlLCBpdCBpcyB1bmRlZmluZWQgd2hpY2ggY29weSdzIHNpemUgb3IgZGVsdGEgYmFzZQord2lsbCBiZSByZXBvcnRlZC4KKwogU0VFIEFMU08KIC0tLS0tLS0tCiBsaW5rZ2l0OmdpdC1zaG93LXJlZlsxXQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtZm9ybWF0LXBhdGNoLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWZvcm1hdC1wYXRjaC50eHQKaW5kZXggMjczMDQ0Mi4uMGQ0Zjg5NSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtZm9ybWF0LXBhdGNoLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1mb3JtYXQtcGF0Y2gudHh0CkBAIC0xNywxMiArMTcsMTQgQEAKIAkJICAgWy0tc2lnbmF0dXJlLWZpbGU9PGZpbGU+XQogCQkgICBbLW4gfCAtLW51bWJlcmVkIHwgLU4gfCAtLW5vLW51bWJlcmVkXQogCQkgICBbLS1zdGFydC1udW1iZXIgPG4+XSBbLS1udW1iZXJlZC1maWxlc10KLQkJICAgWy0taW4tcmVwbHktdG89TWVzc2FnZS1JZF0gWy0tc3VmZml4PS48c2Z4Pl0KKwkJICAgWy0taW4tcmVwbHktdG89PG1lc3NhZ2UgaWQ+XSBbLS1zdWZmaXg9LjxzZng+XQogCQkgICBbLS1pZ25vcmUtaWYtaW4tdXBzdHJlYW1dCi0JCSAgIFstLXJmY10gWy0tc3ViamVjdC1wcmVmaXg9U3ViamVjdC1QcmVmaXhdCisJCSAgIFstLWNvdmVyLWZyb20tZGVzY3JpcHRpb249PG1vZGU+XQorCQkgICBbLS1yZmNdIFstLXN1YmplY3QtcHJlZml4PTxzdWJqZWN0IHByZWZpeD5dCiAJCSAgIFsoLS1yZXJvbGwtY291bnR8LXYpIDxuPl0KIAkJICAgWy0tdG89PGVtYWlsPl0gWy0tY2M9PGVtYWlsPl0KLQkJICAgWy0tW25vLV1jb3Zlci1sZXR0ZXJdIFstLXF1aWV0XSBbLS1ub3Rlc1s9PHJlZj5dXQorCQkgICBbLS1bbm8tXWNvdmVyLWxldHRlcl0gWy0tcXVpZXRdCisJCSAgIFstLW5vLW5vdGVzIHwgLS1ub3Rlc1s9PHJlZj5dXQogCQkgICBbLS1pbnRlcmRpZmY9PHByZXZpb3VzPl0KIAkJICAgWy0tcmFuZ2UtZGlmZj08cHJldmlvdXM+IFstLWNyZWF0aW9uLWZhY3Rvcj08cGVyY2VudD5dXQogCQkgICBbLS1wcm9ncmVzc10KQEAgLTY1LDcgKzY3LDggQEAKIGNhbiBiZSBzZXQgd2l0aCB0aGUgYGZvcm1hdC5vdXRwdXREaXJlY3RvcnlgIGNvbmZpZ3VyYXRpb24gb3B0aW9uLgogVGhlIGAtb2Agb3B0aW9uIHRha2VzIHByZWNlZGVuY2Ugb3ZlciBgZm9ybWF0Lm91dHB1dERpcmVjdG9yeWAuCiBUbyBzdG9yZSBwYXRjaGVzIGluIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IGV2ZW4gd2hlbgotYGZvcm1hdC5vdXRwdXREaXJlY3RvcnlgIHBvaW50cyBlbHNld2hlcmUsIHVzZSBgLW8gLmAuCitgZm9ybWF0Lm91dHB1dERpcmVjdG9yeWAgcG9pbnRzIGVsc2V3aGVyZSwgdXNlIGAtbyAuYC4gQWxsIGRpcmVjdG9yeQorY29tcG9uZW50cyB3aWxsIGJlIGNyZWF0ZWQuCiAKIEJ5IGRlZmF1bHQsIHRoZSBzdWJqZWN0IG9mIGEgc2luZ2xlIHBhdGNoIGlzICJbUEFUQ0hdICIgZm9sbG93ZWQgYnkKIHRoZSBjb25jYXRlbmF0aW9uIG9mIGxpbmVzIGZyb20gdGhlIGNvbW1pdCBtZXNzYWdlIHVwIHRvIHRoZSBmaXJzdCBibGFuawpAQCAtMTU4LDkgKzE2MSw5IEBACiBpdHNlbGYuICBJZiB5b3Ugd2FudCBgZ2l0IGZvcm1hdC1wYXRjaGAgdG8gdGFrZSBjYXJlIG9mIHRocmVhZGluZywgeW91CiB3aWxsIHdhbnQgdG8gZW5zdXJlIHRoYXQgdGhyZWFkaW5nIGlzIGRpc2FibGVkIGZvciBgZ2l0IHNlbmQtZW1haWxgLgogCi0tLWluLXJlcGx5LXRvPU1lc3NhZ2UtSWQ6OgorLS1pbi1yZXBseS10bz08bWVzc2FnZSBpZD46OgogCU1ha2UgdGhlIGZpcnN0IG1haWwgKG9yIGFsbCB0aGUgbWFpbHMgd2l0aCBgLS1uby10aHJlYWRgKSBhcHBlYXIgYXMgYQotCXJlcGx5IHRvIHRoZSBnaXZlbiBNZXNzYWdlLUlkLCB3aGljaCBhdm9pZHMgYnJlYWtpbmcgdGhyZWFkcyB0bworCXJlcGx5IHRvIHRoZSBnaXZlbiA8bWVzc2FnZSBpZD4sIHdoaWNoIGF2b2lkcyBicmVha2luZyB0aHJlYWRzIHRvCiAJcHJvdmlkZSBhIG5ldyBwYXRjaCBzZXJpZXMuCiAKIC0taWdub3JlLWlmLWluLXVwc3RyZWFtOjoKQEAgLTE3MCw5ICsxNzMsMjkgQEAKIAlwYXRjaGVzIGJlaW5nIGdlbmVyYXRlZCwgYW5kIGFueSBwYXRjaCB0aGF0IG1hdGNoZXMgaXMKIAlpZ25vcmVkLgogCi0tLXN1YmplY3QtcHJlZml4PTxTdWJqZWN0LVByZWZpeD46OgorLS1jb3Zlci1mcm9tLWRlc2NyaXB0aW9uPTxtb2RlPjo6CisJQ29udHJvbHMgd2hpY2ggcGFydHMgb2YgdGhlIGNvdmVyIGxldHRlciB3aWxsIGJlIGF1dG9tYXRpY2FsbHkKKwlwb3B1bGF0ZWQgdXNpbmcgdGhlIGJyYW5jaCdzIGRlc2NyaXB0aW9uLgorKworSWYgYDxtb2RlPmAgaXMgYG1lc3NhZ2VgIG9yIGBkZWZhdWx0YCwgdGhlIGNvdmVyIGxldHRlciBzdWJqZWN0IHdpbGwgYmUKK3BvcHVsYXRlZCB3aXRoIHBsYWNlaG9sZGVyIHRleHQuIFRoZSBib2R5IG9mIHRoZSBjb3ZlciBsZXR0ZXIgd2lsbCBiZQorcG9wdWxhdGVkIHdpdGggdGhlIGJyYW5jaCdzIGRlc2NyaXB0aW9uLiBUaGlzIGlzIHRoZSBkZWZhdWx0IG1vZGUgd2hlbgorbm8gY29uZmlndXJhdGlvbiBub3IgY29tbWFuZCBsaW5lIG9wdGlvbiBpcyBzcGVjaWZpZWQuCisrCitJZiBgPG1vZGU+YCBpcyBgc3ViamVjdGAsIHRoZSBmaXJzdCBwYXJhZ3JhcGggb2YgdGhlIGJyYW5jaCBkZXNjcmlwdGlvbiB3aWxsCitwb3B1bGF0ZSB0aGUgY292ZXIgbGV0dGVyIHN1YmplY3QuIFRoZSByZW1haW5kZXIgb2YgdGhlIGRlc2NyaXB0aW9uIHdpbGwKK3BvcHVsYXRlIHRoZSBib2R5IG9mIHRoZSBjb3ZlciBsZXR0ZXIuCisrCitJZiBgPG1vZGU+YCBpcyBgYXV0b2AsIGlmIHRoZSBmaXJzdCBwYXJhZ3JhcGggb2YgdGhlIGJyYW5jaCBkZXNjcmlwdGlvbgoraXMgZ3JlYXRlciB0aGFuIDEwMCBieXRlcywgdGhlbiB0aGUgbW9kZSB3aWxsIGJlIGBtZXNzYWdlYCwgb3RoZXJ3aXNlCitgc3ViamVjdGAgd2lsbCBiZSB1c2VkLgorKworSWYgYDxtb2RlPmAgaXMgYG5vbmVgLCBib3RoIHRoZSBjb3ZlciBsZXR0ZXIgc3ViamVjdCBhbmQgYm9keSB3aWxsIGJlCitwb3B1bGF0ZWQgd2l0aCBwbGFjZWhvbGRlciB0ZXh0LgorCistLXN1YmplY3QtcHJlZml4PTxzdWJqZWN0IHByZWZpeD46OgogCUluc3RlYWQgb2YgdGhlIHN0YW5kYXJkICdbUEFUQ0hdJyBwcmVmaXggaW4gdGhlIHN1YmplY3QKLQlsaW5lLCBpbnN0ZWFkIHVzZSAnWzxTdWJqZWN0LVByZWZpeD5dJy4gVGhpcworCWxpbmUsIGluc3RlYWQgdXNlICdbPHN1YmplY3QgcHJlZml4Pl0nLiBUaGlzCiAJYWxsb3dzIGZvciB1c2VmdWwgbmFtaW5nIG9mIGEgcGF0Y2ggc2VyaWVzLCBhbmQgY2FuIGJlCiAJY29tYmluZWQgd2l0aCB0aGUgYC0tbnVtYmVyZWRgIG9wdGlvbi4KIApAQCAtMjYzLDYgKzI4Niw3IEBACiAJZm9yIGRldGFpbHMuCiAKIC0tbm90ZXNbPTxyZWY+XTo6CistLW5vLW5vdGVzOjoKIAlBcHBlbmQgdGhlIG5vdGVzIChzZWUgbGlua2dpdDpnaXQtbm90ZXNbMV0pIGZvciB0aGUgY29tbWl0CiAJYWZ0ZXIgdGhlIHRocmVlLWRhc2ggbGluZS4KICsKQEAgLTI3Myw2ICsyOTcsOSBAQAoga2VlcGluZyB0aGVtIGFzIEdpdCBub3RlcyBhbGxvd3MgdGhlbSB0byBiZSBtYWludGFpbmVkIGJldHdlZW4gdmVyc2lvbnMKIG9mIHRoZSBwYXRjaCBzZXJpZXMgKGJ1dCBzZWUgdGhlIGRpc2N1c3Npb24gb2YgdGhlIGBub3Rlcy5yZXdyaXRlYAogY29uZmlndXJhdGlvbiBvcHRpb25zIGluIGxpbmtnaXQ6Z2l0LW5vdGVzWzFdIHRvIHVzZSB0aGlzIHdvcmtmbG93KS4KKysKK1RoZSBkZWZhdWx0IGlzIGAtLW5vLW5vdGVzYCwgdW5sZXNzIHRoZSBgZm9ybWF0Lm5vdGVzYCBjb25maWd1cmF0aW9uIGlzCitzZXQuCiAKIC0tW25vLV1zaWduYXR1cmU9PHNpZ25hdHVyZT46OgogCUFkZCBhIHNpZ25hdHVyZSB0byBlYWNoIG1lc3NhZ2UgcHJvZHVjZWQuIFBlciBSRkMgMzY3NiB0aGUgc2lnbmF0dXJlCkBAIC0zMDYsMTAgKzMzMywxMiBAQAogICBPdXRwdXQgYW4gYWxsLXplcm8gaGFzaCBpbiBlYWNoIHBhdGNoJ3MgRnJvbSBoZWFkZXIgaW5zdGVhZAogICBvZiB0aGUgaGFzaCBvZiB0aGUgY29tbWl0LgogCi0tLWJhc2U9PGNvbW1pdD46OgorLS1bbm8tXWJhc2VbPTxjb21taXQ+XTo6CiAJUmVjb3JkIHRoZSBiYXNlIHRyZWUgaW5mb3JtYXRpb24gdG8gaWRlbnRpZnkgdGhlIHN0YXRlIHRoZQogCXBhdGNoIHNlcmllcyBhcHBsaWVzIHRvLiAgU2VlIHRoZSBCQVNFIFRSRUUgSU5GT1JNQVRJT04gc2VjdGlvbgotCWJlbG93IGZvciBkZXRhaWxzLgorCWJlbG93IGZvciBkZXRhaWxzLiBJZiA8Y29tbWl0PiBpcyAiYXV0byIsIGEgYmFzZSBjb21taXQgaXMKKwlhdXRvbWF0aWNhbGx5IGNob3Nlbi4gVGhlIGAtLW5vLWJhc2VgIG9wdGlvbiBvdmVycmlkZXMgYQorCWBmb3JtYXQudXNlQXV0b0Jhc2VgIGNvbmZpZ3VyYXRpb24uCiAKIC0tcm9vdDo6CiAJVHJlYXQgdGhlIHJldmlzaW9uIGFyZ3VtZW50IGFzIGEgPHJldmlzaW9uIHJhbmdlPiwgZXZlbiBpZiBpdApAQCAtMzI1LDggKzM1NCw5IEBACiAtLS0tLS0tLS0tLS0tCiBZb3UgY2FuIHNwZWNpZnkgZXh0cmEgbWFpbCBoZWFkZXIgbGluZXMgdG8gYmUgYWRkZWQgdG8gZWFjaCBtZXNzYWdlLAogZGVmYXVsdHMgZm9yIHRoZSBzdWJqZWN0IHByZWZpeCBhbmQgZmlsZSBzdWZmaXgsIG51bWJlciBwYXRjaGVzIHdoZW4KLW91dHB1dHRpbmcgbW9yZSB0aGFuIG9uZSBwYXRjaCwgYWRkICJUbyIgb3IgIkNjOiIgaGVhZGVycywgY29uZmlndXJlCi1hdHRhY2htZW50cywgYW5kIHNpZ24gb2ZmIHBhdGNoZXMgd2l0aCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4KK291dHB1dHRpbmcgbW9yZSB0aGFuIG9uZSBwYXRjaCwgYWRkICJUbzoiIG9yICJDYzoiIGhlYWRlcnMsIGNvbmZpZ3VyZQorYXR0YWNobWVudHMsIGNoYW5nZSB0aGUgcGF0Y2ggb3V0cHV0IGRpcmVjdG9yeSwgYW5kIHNpZ24gb2ZmIHBhdGNoZXMKK3dpdGggY29uZmlndXJhdGlvbiB2YXJpYWJsZXMuCiAKIC0tLS0tLS0tLS0tLQogW2Zvcm1hdF0KQEAgLTMzOCw3ICszNjgsOSBAQAogCWNjID0gPGVtYWlsPgogCWF0dGFjaCBbID0gbWltZS1ib3VuZGFyeS1zdHJpbmcgXQogCXNpZ25PZmYgPSB0cnVlCi0JY292ZXJsZXR0ZXIgPSBhdXRvCisJb3V0cHV0RGlyZWN0b3J5ID0gPGRpcmVjdG9yeT4KKwljb3ZlckxldHRlciA9IGF1dG8KKwljb3ZlckZyb21EZXNjcmlwdGlvbiA9IGF1dG8KIC0tLS0tLS0tLS0tLQogCiAKQEAgLTQyMSw4ICs0NTMsOCBAQAogKiBBcHBseSBpdDoKIAogICAgICQgZ2l0IGZldGNoIDxwcm9qZWN0PiBtYXN0ZXI6dGVzdC1hcHBseQotICAgICQgZ2l0IGNoZWNrb3V0IHRlc3QtYXBwbHkKLSAgICAkIGdpdCByZXNldCAtLWhhcmQKKyAgICAkIGdpdCBzd2l0Y2ggdGVzdC1hcHBseQorICAgICQgZ2l0IHJlc3RvcmUgLS1zb3VyY2U9SEVBRCAtLXN0YWdlZCAtLXdvcmt0cmVlIDovCiAgICAgJCBnaXQgYW0gYS5wYXRjaAogCiBJZiBpdCBkb2VzIG5vdCBhcHBseSBjb3JyZWN0bHksIHRoZXJlIGNhbiBiZSB2YXJpb3VzIHJlYXNvbnMuCkBAIC01MDQsOSArNTM2LDkgQEAKICJtYWlsbmV3cy53cmFwbGVuZ3RoIiBhbmQgc2V0IHRoZSB2YWx1ZSB0byAwLgogCiAzLiBEaXNhYmxlIHRoZSB1c2Ugb2YgZm9ybWF0PWZsb3dlZDoKLUVkaXQuLlByZWZlcmVuY2VzLi5BZHZhbmNlZC4uQ29uZmlnIEVkaXRvci4gIFNlYXJjaCBmb3IKLSJtYWlsbmV3cy5zZW5kX3BsYWludGV4dF9mbG93ZWQiLgotVG9nZ2xlIGl0IHRvIG1ha2Ugc3VyZSBpdCBpcyBzZXQgdG8gYGZhbHNlYC4KKyAgIEVkaXQuLlByZWZlcmVuY2VzLi5BZHZhbmNlZC4uQ29uZmlnIEVkaXRvci4gIFNlYXJjaCBmb3IKKyAgICJtYWlsbmV3cy5zZW5kX3BsYWludGV4dF9mbG93ZWQiLgorICAgVG9nZ2xlIGl0IHRvIG1ha2Ugc3VyZSBpdCBpcyBzZXQgdG8gYGZhbHNlYC4KIAogQWZ0ZXIgdGhhdCBpcyBkb25lLCB5b3Ugc2hvdWxkIGJlIGFibGUgdG8gY29tcG9zZSBlbWFpbCBhcyB5b3UKIG90aGVyd2lzZSB3b3VsZCAoY3V0ICsgcGFzdGUsICdnaXQgZm9ybWF0LXBhdGNoJyB8ICdnaXQgaW1hcC1zZW5kJywgZXRjKSwKQEAgLTYyOSwxNCArNjYxLDE0IEBACiAtLS0tLS0tLQogCiAqIEV4dHJhY3QgY29tbWl0cyBiZXR3ZWVuIHJldmlzaW9ucyBSMSBhbmQgUjIsIGFuZCBhcHBseSB0aGVtIG9uIHRvcCBvZgotdGhlIGN1cnJlbnQgYnJhbmNoIHVzaW5nICdnaXQgYW0nIHRvIGNoZXJyeS1waWNrIHRoZW06CisgIHRoZSBjdXJyZW50IGJyYW5jaCB1c2luZyAnZ2l0IGFtJyB0byBjaGVycnktcGljayB0aGVtOgogKwogLS0tLS0tLS0tLS0tCiAkIGdpdCBmb3JtYXQtcGF0Y2ggLWsgLS1zdGRvdXQgUjEuLlIyIHwgZ2l0IGFtIC0zIC1rCiAtLS0tLS0tLS0tLS0KIAogKiBFeHRyYWN0IGFsbCBjb21taXRzIHdoaWNoIGFyZSBpbiB0aGUgY3VycmVudCBicmFuY2ggYnV0IG5vdCBpbiB0aGUKLW9yaWdpbiBicmFuY2g6CisgIG9yaWdpbiBicmFuY2g6CiArCiAtLS0tLS0tLS0tLS0KICQgZ2l0IGZvcm1hdC1wYXRjaCBvcmlnaW4KQEAgLTY0NSw3ICs2NzcsNyBAQAogRm9yIGVhY2ggY29tbWl0IGEgc2VwYXJhdGUgZmlsZSBpcyBjcmVhdGVkIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4KIAogKiBFeHRyYWN0IGFsbCBjb21taXRzIHRoYXQgbGVhZCB0byAnb3JpZ2luJyBzaW5jZSB0aGUgaW5jZXB0aW9uIG9mIHRoZQotcHJvamVjdDoKKyAgcHJvamVjdDoKICsKIC0tLS0tLS0tLS0tLQogJCBnaXQgZm9ybWF0LXBhdGNoIC0tcm9vdCBvcmlnaW4KQEAgLTY2NCw3ICs2OTYsNyBAQAogdXNlIGl0IG9ubHkgd2hlbiB5b3Uga25vdyB0aGUgcmVjaXBpZW50IHVzZXMgR2l0IHRvIGFwcGx5IHlvdXIgcGF0Y2guCiAKICogRXh0cmFjdCB0aHJlZSB0b3Btb3N0IGNvbW1pdHMgZnJvbSB0aGUgY3VycmVudCBicmFuY2ggYW5kIGZvcm1hdCB0aGVtCi1hcyBlLW1haWxhYmxlIHBhdGNoZXM6CisgIGFzIGUtbWFpbGFibGUgcGF0Y2hlczoKICsKIC0tLS0tLS0tLS0tLQogJCBnaXQgZm9ybWF0LXBhdGNoIC0zCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1mc2NrLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWZzY2sudHh0CmluZGV4IGFiOWE5M2YuLmQ3MmQxNWIgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWZzY2sudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWZzY2sudHh0CkBAIC02Miw5ICs2MiwxNyBAQAogCXdpdGggLS1uby1mdWxsLgogCiAtLWNvbm5lY3Rpdml0eS1vbmx5OjoKLQlDaGVjayBvbmx5IHRoZSBjb25uZWN0aXZpdHkgb2YgdGFncywgY29tbWl0cyBhbmQgdHJlZSBvYmplY3RzLiBCeQotCWF2b2lkaW5nIHRvIHVucGFjayBibG9icywgdGhpcyBzcGVlZHMgdXAgdGhlIG9wZXJhdGlvbiwgYXQgdGhlCi0JZXhwZW5zZSBvZiBtaXNzaW5nIGNvcnJ1cHQgb2JqZWN0cyBvciBvdGhlciBwcm9ibGVtYXRpYyBpc3N1ZXMuCisJQ2hlY2sgb25seSB0aGUgY29ubmVjdGl2aXR5IG9mIHJlYWNoYWJsZSBvYmplY3RzLCBtYWtpbmcgc3VyZQorCXRoYXQgYW55IG9iamVjdHMgcmVmZXJlbmNlZCBieSBhIHJlYWNoYWJsZSB0YWcsIGNvbW1pdCwgb3IgdHJlZQorCWlzIHByZXNlbnQuIFRoaXMgc3BlZWRzIHVwIHRoZSBvcGVyYXRpb24gYnkgYXZvaWRpbmcgcmVhZGluZworCWJsb2JzIGVudGlyZWx5ICh0aG91Z2ggaXQgZG9lcyBzdGlsbCBjaGVjayB0aGF0IHJlZmVyZW5jZWQgYmxvYnMKKwlleGlzdCkuIFRoaXMgd2lsbCBkZXRlY3QgY29ycnVwdGlvbiBpbiBjb21taXRzIGFuZCB0cmVlcywgYnV0CisJbm90IGRvIGFueSBzZW1hbnRpYyBjaGVja3MgKGUuZy4sIGZvciBmb3JtYXQgZXJyb3JzKS4gQ29ycnVwdGlvbgorCWluIGJsb2Igb2JqZWN0cyB3aWxsIG5vdCBiZSBkZXRlY3RlZCBhdCBhbGwuCisrCitVbnJlYWNoYWJsZSB0YWdzLCBjb21taXRzLCBhbmQgdHJlZXMgd2lsbCBhbHNvIGJlIGFjY2Vzc2VkIHRvIGZpbmQgdGhlCit0aXBzIG9mIGRhbmdsaW5nIHNlZ21lbnRzIG9mIGhpc3RvcnkuIFVzZSBgLS1uby1kYW5nbGluZ2AgaWYgeW91IGRvbid0CitjYXJlIGFib3V0IHRoaXMgb3V0cHV0IGFuZCB3YW50IHRvIHNwZWVkIGl0IHVwIGZ1cnRoZXIuCiAKIC0tc3RyaWN0OjoKIAlFbmFibGUgbW9yZSBzdHJpY3QgY2hlY2tpbmcsIG5hbWVseSB0byBjYXRjaCBhIGZpbGUgbW9kZQpAQCAtOTYsNiArMTA0LDExIEBACiAJcHJvZ3Jlc3Mgc3RhdHVzIGV2ZW4gaWYgdGhlIHN0YW5kYXJkIGVycm9yIHN0cmVhbSBpcyBub3QKIAlkaXJlY3RlZCB0byBhIHRlcm1pbmFsLgogCitDT05GSUdVUkFUSU9OCistLS0tLS0tLS0tLS0tCisKK2luY2x1ZGU6OmNvbmZpZy9mc2NrLnR4dFtdCisKIERJU0NVU1NJT04KIC0tLS0tLS0tLS0KIApAQCAtMTQwLDkgKzE1Myw5IEBACiAJVGhlIDx0eXBlPiBvYmplY3QgPG9iamVjdD4sIGlzIHByZXNlbnQgaW4gdGhlIGRhdGFiYXNlIGJ1dCBuZXZlcgogCSdkaXJlY3RseScgdXNlZC4gQSBkYW5nbGluZyBjb21taXQgY291bGQgYmUgYSByb290IG5vZGUuCiAKLXNoYTEgbWlzbWF0Y2ggPG9iamVjdD46OgotCVRoZSBkYXRhYmFzZSBoYXMgYW4gb2JqZWN0IHdobydzIHNoYTEgZG9lc24ndCBtYXRjaCB0aGUKLQlkYXRhYmFzZSB2YWx1ZS4KK2hhc2ggbWlzbWF0Y2ggPG9iamVjdD46OgorCVRoZSBkYXRhYmFzZSBoYXMgYW4gb2JqZWN0IHdob3NlIGhhc2ggZG9lc24ndCBtYXRjaCB0aGUKKwlvYmplY3QgZGF0YWJhc2UgdmFsdWUuCiAJVGhpcyBpbmRpY2F0ZXMgYSBzZXJpb3VzIGRhdGEgaW50ZWdyaXR5IHByb2JsZW0uCiAKIEVudmlyb25tZW50IFZhcmlhYmxlcwpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtZ2MudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtZ2MudHh0CmluZGV4IGMyMGVlNmMuLjBjMTE0YWQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWdjLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1nYy50eHQKQEAgLTIwLDE3ICsyMCwxNiBAQAogcmVmbG9nLCByZXJlcmUgbWV0YWRhdGEgb3Igc3RhbGUgd29ya2luZyB0cmVlcy4gTWF5IGFsc28gdXBkYXRlIGFuY2lsbGFyeQogaW5kZXhlcyBzdWNoIGFzIHRoZSBjb21taXQtZ3JhcGguCiAKLVVzZXJzIGFyZSBlbmNvdXJhZ2VkIHRvIHJ1biB0aGlzIHRhc2sgb24gYSByZWd1bGFyIGJhc2lzIHdpdGhpbgotZWFjaCByZXBvc2l0b3J5IHRvIG1haW50YWluIGdvb2QgZGlzayBzcGFjZSB1dGlsaXphdGlvbiBhbmQgZ29vZAotb3BlcmF0aW5nIHBlcmZvcm1hbmNlLgorV2hlbiBjb21tb24gcG9yY2VsYWluIG9wZXJhdGlvbnMgdGhhdCBjcmVhdGUgb2JqZWN0cyBhcmUgcnVuLCB0aGV5Cit3aWxsIGNoZWNrIHdoZXRoZXIgdGhlIHJlcG9zaXRvcnkgaGFzIGdyb3duIHN1YnN0YW50aWFsbHkgc2luY2UgdGhlCitsYXN0IG1haW50ZW5hbmNlLCBhbmQgaWYgc28gcnVuIGBnaXQgZ2NgIGF1dG9tYXRpY2FsbHkuIFNlZSBgZ2MuYXV0b2AKK2JlbG93IGZvciBob3cgdG8gZGlzYWJsZSB0aGlzIGJlaGF2aW9yLgogCi1Tb21lIGdpdCBjb21tYW5kcyBtYXkgYXV0b21hdGljYWxseSBydW4gJ2dpdCBnYyc7IHNlZSB0aGUgYC0tYXV0b2AgZmxhZwotYmVsb3cgZm9yIGRldGFpbHMuIElmIHlvdSBrbm93IHdoYXQgeW91J3JlIGRvaW5nIGFuZCBhbGwgeW91IHdhbnQgaXMgdG8KLWRpc2FibGUgdGhpcyBiZWhhdmlvciBwZXJtYW5lbnRseSB3aXRob3V0IGZ1cnRoZXIgY29uc2lkZXJhdGlvbnMsIGp1c3QgZG86Ci0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSQgZ2l0IGNvbmZpZyAtLWdsb2JhbCBnYy5hdXRvIDAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK1J1bm5pbmcgYGdpdCBnY2AgbWFudWFsbHkgc2hvdWxkIG9ubHkgYmUgbmVlZGVkIHdoZW4gYWRkaW5nIG9iamVjdHMgdG8KK2EgcmVwb3NpdG9yeSB3aXRob3V0IHJlZ3VsYXJseSBydW5uaW5nIHN1Y2ggcG9yY2VsYWluIGNvbW1hbmRzLCB0byBkbworYSBvbmUtb2ZmIHJlcG9zaXRvcnkgb3B0aW1pemF0aW9uLCBvciBlLmcuIHRvIGNsZWFuIHVwIGEgc3Vib3B0aW1hbAorbWFzcy1pbXBvcnQuIFNlZSB0aGUgIlBBQ0tGSUxFIE9QVElNSVpBVElPTiIgc2VjdGlvbiBpbgorbGlua2dpdDpnaXQtZmFzdC1pbXBvcnRbMV0gZm9yIG1vcmUgZGV0YWlscyBvbiB0aGUgaW1wb3J0IGNhc2UuCiAKIE9QVElPTlMKIC0tLS0tLS0KQEAgLTQwLDM1ICszOSwxNyBAQAogCXNwYWNlIHV0aWxpemF0aW9uIGFuZCBwZXJmb3JtYW5jZS4gIFRoaXMgb3B0aW9uIHdpbGwgY2F1c2UKIAknZ2l0IGdjJyB0byBtb3JlIGFnZ3Jlc3NpdmVseSBvcHRpbWl6ZSB0aGUgcmVwb3NpdG9yeSBhdCB0aGUgZXhwZW5zZQogCW9mIHRha2luZyBtdWNoIG1vcmUgdGltZS4gIFRoZSBlZmZlY3RzIG9mIHRoaXMgb3B0aW1pemF0aW9uIGFyZQotCXBlcnNpc3RlbnQsIHNvIHRoaXMgb3B0aW9uIG9ubHkgbmVlZHMgdG8gYmUgdXNlZCBvY2Nhc2lvbmFsbHk7IGV2ZXJ5Ci0JZmV3IGh1bmRyZWQgY2hhbmdlc2V0cyBvciBzby4KKwltb3N0bHkgcGVyc2lzdGVudC4gU2VlIHRoZSAiQUdHUkVTU0lWRSIgc2VjdGlvbiBiZWxvdyBmb3IgZGV0YWlscy4KIAogLS1hdXRvOjoKIAlXaXRoIHRoaXMgb3B0aW9uLCAnZ2l0IGdjJyBjaGVja3Mgd2hldGhlciBhbnkgaG91c2VrZWVwaW5nIGlzCiAJcmVxdWlyZWQ7IGlmIG5vdCwgaXQgZXhpdHMgd2l0aG91dCBwZXJmb3JtaW5nIGFueSB3b3JrLgotCVNvbWUgZ2l0IGNvbW1hbmRzIHJ1biBgZ2l0IGdjIC0tYXV0b2AgYWZ0ZXIgcGVyZm9ybWluZwotCW9wZXJhdGlvbnMgdGhhdCBjb3VsZCBjcmVhdGUgbWFueSBsb29zZSBvYmplY3RzLiBIb3VzZWtlZXBpbmcKLQlpcyByZXF1aXJlZCBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgbG9vc2Ugb2JqZWN0cyBvciB0b28gbWFueQotCXBhY2tzIGluIHRoZSByZXBvc2l0b3J5LgogKwotSWYgdGhlIG51bWJlciBvZiBsb29zZSBvYmplY3RzIGV4Y2VlZHMgdGhlIHZhbHVlIG9mIHRoZSBgZ2MuYXV0b2AKLWNvbmZpZ3VyYXRpb24gdmFyaWFibGUsIHRoZW4gYWxsIGxvb3NlIG9iamVjdHMgYXJlIGNvbWJpbmVkIGludG8gYQotc2luZ2xlIHBhY2sgdXNpbmcgYGdpdCByZXBhY2sgLWQgLWxgLiAgU2V0dGluZyB0aGUgdmFsdWUgb2YgYGdjLmF1dG9gCi10byAwIGRpc2FibGVzIGF1dG9tYXRpYyBwYWNraW5nIG9mIGxvb3NlIG9iamVjdHMuCitTZWUgdGhlIGBnYy5hdXRvYCBvcHRpb24gaW4gdGhlICJDT05GSUdVUkFUSU9OIiBzZWN0aW9uIGJlbG93IGZvciBob3cKK3RoaXMgaGV1cmlzdGljIHdvcmtzLgogKwotSWYgdGhlIG51bWJlciBvZiBwYWNrcyBleGNlZWRzIHRoZSB2YWx1ZSBvZiBgZ2MuYXV0b1BhY2tMaW1pdGAsCi10aGVuIGV4aXN0aW5nIHBhY2tzIChleGNlcHQgdGhvc2UgbWFya2VkIHdpdGggYSBgLmtlZXBgIGZpbGUKLW9yIG92ZXIgYGdjLmJpZ1BhY2tUaHJlc2hvbGRgIGxpbWl0KQotYXJlIGNvbnNvbGlkYXRlZCBpbnRvIGEgc2luZ2xlIHBhY2sgYnkgdXNpbmcgdGhlIGAtQWAgb3B0aW9uIG9mCi0nZ2l0IHJlcGFjaycuCi1JZiB0aGUgYW1vdW50IG9mIG1lbW9yeSBpcyBlc3RpbWF0ZWQgbm90IGVub3VnaCBmb3IgYGdpdCByZXBhY2tgIHRvCi1ydW4gc21vb3RobHkgYW5kIGBnYy5iaWdQYWNrVGhyZXNob2xkYCBpcyBub3Qgc2V0LCB0aGUgbGFyZ2VzdAotcGFjayB3aWxsIGFsc28gYmUgZXhjbHVkZWQgKHRoaXMgaXMgdGhlIGVxdWl2YWxlbnQgb2YgcnVubmluZyBgZ2l0IGdjYAotd2l0aCBgLS1rZWVwLWJhc2UtcGFja2ApLgotU2V0dGluZyBgZ2MuYXV0b1BhY2tMaW1pdGAgdG8gMCBkaXNhYmxlcyBhdXRvbWF0aWMgY29uc29saWRhdGlvbiBvZgotcGFja3MuCi0rCi1JZiBob3Vza2VlcGluZyBpcyByZXF1aXJlZCBkdWUgdG8gbWFueSBsb29zZSBvYmplY3RzIG9yIHBhY2tzLCBhbGwKK09uY2UgaG91c2VrZWVwaW5nIGlzIHRyaWdnZXJlZCBieSBleGNlZWRpbmcgdGhlIGxpbWl0cyBvZgorY29uZmlndXJhdGlvbiBvcHRpb25zIHN1Y2ggYXMgYGdjLmF1dG9gIGFuZCBgZ2MuYXV0b1BhY2tMaW1pdGAsIGFsbAogb3RoZXIgaG91c2VrZWVwaW5nIHRhc2tzIChlLmcuIHJlcmVyZSwgd29ya2luZyB0cmVlcywgcmVmbG9nLi4uKSB3aWxsCiBiZSBwZXJmb3JtZWQgYXMgd2VsbC4KIApAQCAtNzYsNyArNTcsNyBAQAogLS1wcnVuZT08ZGF0ZT46OgogCVBydW5lIGxvb3NlIG9iamVjdHMgb2xkZXIgdGhhbiBkYXRlIChkZWZhdWx0IGlzIDIgd2Vla3MgYWdvLAogCW92ZXJyaWRhYmxlIGJ5IHRoZSBjb25maWcgdmFyaWFibGUgYGdjLnBydW5lRXhwaXJlYCkuCi0JLS1wcnVuZT1hbGwgcHJ1bmVzIGxvb3NlIG9iamVjdHMgcmVnYXJkbGVzcyBvZiB0aGVpciBhZ2UgYW5kCisJLS1wcnVuZT1ub3cgcHJ1bmVzIGxvb3NlIG9iamVjdHMgcmVnYXJkbGVzcyBvZiB0aGVpciBhZ2UgYW5kCiAJaW5jcmVhc2VzIHRoZSByaXNrIG9mIGNvcnJ1cHRpb24gaWYgYW5vdGhlciBwcm9jZXNzIGlzIHdyaXRpbmcgdG8KIAl0aGUgcmVwb3NpdG9yeSBjb25jdXJyZW50bHk7IHNlZSAiTk9URVMiIGJlbG93LiAtLXBydW5lIGlzIG9uIGJ5CiAJZGVmYXVsdC4KQEAgLTk2LDgzICs3Nyw1MiBAQAogCWAua2VlcGAgZmlsZXMgYXJlIGNvbnNvbGlkYXRlZCBpbnRvIGEgc2luZ2xlIHBhY2suIFdoZW4gdGhpcwogCW9wdGlvbiBpcyB1c2VkLCBgZ2MuYmlnUGFja1RocmVzaG9sZGAgaXMgaWdub3JlZC4KIAorQUdHUkVTU0lWRQorLS0tLS0tLS0tLQorCitXaGVuIHRoZSBgLS1hZ2dyZXNzaXZlYCBvcHRpb24gaXMgc3VwcGxpZWQsIGxpbmtnaXQ6Z2l0LXJlcGFja1sxXSB3aWxsCitiZSBpbnZva2VkIHdpdGggdGhlIGAtZmAgZmxhZywgd2hpY2ggaW4gdHVybiB3aWxsIHBhc3MKK2AtLW5vLXJldXNlLWRlbHRhYCB0byBsaW5rZ2l0OmdpdC1wYWNrLW9iamVjdHNbMV0uIFRoaXMgd2lsbCB0aHJvdworYXdheSBhbnkgZXhpc3RpbmcgZGVsdGFzIGFuZCByZS1jb21wdXRlIHRoZW0sIGF0IHRoZSBleHBlbnNlIG9mCitzcGVuZGluZyBtdWNoIG1vcmUgdGltZSBvbiB0aGUgcmVwYWNraW5nLgorCitUaGUgZWZmZWN0cyBvZiB0aGlzIGFyZSBtb3N0bHkgcGVyc2lzdGVudCwgZS5nLiB3aGVuIHBhY2tzIGFuZCBsb29zZQorb2JqZWN0cyBhcmUgY29hbGVzY2VkIGludG8gb25lIGFub3RoZXIgcGFjayB0aGUgZXhpc3RpbmcgZGVsdGFzIGluCit0aGF0IHBhY2sgbWlnaHQgZ2V0IHJlLXVzZWQsIGJ1dCB0aGVyZSBhcmUgYWxzbyB2YXJpb3VzIGNhc2VzIHdoZXJlIHdlCittaWdodCBwaWNrIGEgc3ViLW9wdGltYWwgZGVsdGEgZnJvbSBhIG5ld2VyIHBhY2sgaW5zdGVhZC4KKworRnVydGhlcm1vcmUsIHN1cHBseWluZyBgLS1hZ2dyZXNzaXZlYCB3aWxsIHR3ZWFrIHRoZSBgLS1kZXB0aGAgYW5kCitgLS13aW5kb3dgIG9wdGlvbnMgcGFzc2VkIHRvIGxpbmtnaXQ6Z2l0LXJlcGFja1sxXS4gU2VlIHRoZQorYGdjLmFnZ3Jlc3NpdmVEZXB0aGAgYW5kIGBnYy5hZ2dyZXNzaXZlV2luZG93YCBzZXR0aW5ncyBiZWxvdy4gQnkKK3VzaW5nIGEgbGFyZ2VyIHdpbmRvdyBzaXplIHdlJ3JlIG1vcmUgbGlrZWx5IHRvIGZpbmQgbW9yZSBvcHRpbWFsCitkZWx0YXMuCisKK0l0J3MgcHJvYmFibHkgbm90IHdvcnRoIGl0IHRvIHVzZSB0aGlzIG9wdGlvbiBvbiBhIGdpdmVuIHJlcG9zaXRvcnkKK3dpdGhvdXQgcnVubmluZyB0YWlsb3JlZCBwZXJmb3JtYW5jZSBiZW5jaG1hcmtzIG9uIGl0LiBJdCB0YWtlcyBhIGxvdAorbW9yZSB0aW1lLCBhbmQgdGhlIHJlc3VsdGluZyBzcGFjZS9kZWx0YSBvcHRpbWl6YXRpb24gbWF5IG9yIG1heSBub3QKK2JlIHdvcnRoIGl0LiBOb3QgdXNpbmcgdGhpcyBhdCBhbGwgaXMgdGhlIHJpZ2h0IHRyYWRlLW9mZiBmb3IgbW9zdAordXNlcnMgYW5kIHRoZWlyIHJlcG9zaXRvcmllcy4KKwogQ09ORklHVVJBVElPTgogLS0tLS0tLS0tLS0tLQogCi1UaGUgb3B0aW9uYWwgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBgZ2MucmVmbG9nRXhwaXJlYCBjYW4gYmUKLXNldCB0byBpbmRpY2F0ZSBob3cgbG9uZyBoaXN0b3JpY2FsIGVudHJpZXMgd2l0aGluIGVhY2ggYnJhbmNoJ3MKLXJlZmxvZyBzaG91bGQgcmVtYWluIGF2YWlsYWJsZSBpbiB0aGlzIHJlcG9zaXRvcnkuICBUaGUgc2V0dGluZyBpcwotZXhwcmVzc2VkIGFzIGEgbGVuZ3RoIG9mIHRpbWUsIGZvciBleGFtcGxlICc5MCBkYXlzJyBvciAnMyBtb250aHMnLgotSXQgZGVmYXVsdHMgdG8gJzkwIGRheXMnLgorVGhlIGJlbG93IGRvY3VtZW50YXRpb24gaXMgdGhlIHNhbWUgYXMgd2hhdCdzIGZvdW5kIGluCitsaW5rZ2l0OmdpdC1jb25maWdbMV06CiAKLVRoZSBvcHRpb25hbCBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBnYy5yZWZsb2dFeHBpcmVVbnJlYWNoYWJsZWAKLWNhbiBiZSBzZXQgdG8gaW5kaWNhdGUgaG93IGxvbmcgaGlzdG9yaWNhbCByZWZsb2cgZW50cmllcyB3aGljaAotYXJlIG5vdCBwYXJ0IG9mIHRoZSBjdXJyZW50IGJyYW5jaCBzaG91bGQgcmVtYWluIGF2YWlsYWJsZSBpbgotdGhpcyByZXBvc2l0b3J5LiAgVGhlc2UgdHlwZXMgb2YgZW50cmllcyBhcmUgZ2VuZXJhbGx5IGNyZWF0ZWQgYXMKLWEgcmVzdWx0IG9mIHVzaW5nIGBnaXQgY29tbWl0IC0tYW1lbmRgIG9yIGBnaXQgcmViYXNlYCBhbmQgYXJlIHRoZQotY29tbWl0cyBwcmlvciB0byB0aGUgYW1lbmQgb3IgcmViYXNlIG9jY3VycmluZy4gIFNpbmNlIHRoZXNlIGNoYW5nZXMKLWFyZSBub3QgcGFydCBvZiB0aGUgY3VycmVudCBwcm9qZWN0IG1vc3QgdXNlcnMgd2lsbCB3YW50IHRvIGV4cGlyZQotdGhlbSBzb29uZXIuICBUaGlzIG9wdGlvbiBkZWZhdWx0cyB0byAnMzAgZGF5cycuCi0KLVRoZSBhYm92ZSB0d28gY29uZmlndXJhdGlvbiB2YXJpYWJsZXMgY2FuIGJlIGdpdmVuIHRvIGEgcGF0dGVybi4gIEZvcgotZXhhbXBsZSwgdGhpcyBzZXRzIG5vbi1kZWZhdWx0IGV4cGlyeSB2YWx1ZXMgb25seSB0byByZW1vdGUtdHJhY2tpbmcKLWJyYW5jaGVzOgotCi0tLS0tLS0tLS0tLS0KLVtnYyAicmVmcy9yZW1vdGVzLyoiXQotCXJlZmxvZ0V4cGlyZSA9IG5ldmVyCi0JcmVmbG9nRXhwaXJlVW5yZWFjaGFibGUgPSAzIGRheXMKLS0tLS0tLS0tLS0tLQotCi1UaGUgb3B0aW9uYWwgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBgZ2MucmVyZXJlUmVzb2x2ZWRgIGluZGljYXRlcwotaG93IGxvbmcgcmVjb3JkcyBvZiBjb25mbGljdGVkIG1lcmdlIHlvdSByZXNvbHZlZCBlYXJsaWVyIGFyZQota2VwdC4gIFRoaXMgZGVmYXVsdHMgdG8gNjAgZGF5cy4KLQotVGhlIG9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYGdjLnJlcmVyZVVucmVzb2x2ZWRgIGluZGljYXRlcwotaG93IGxvbmcgcmVjb3JkcyBvZiBjb25mbGljdGVkIG1lcmdlIHlvdSBoYXZlIG5vdCByZXNvbHZlZCBhcmUKLWtlcHQuICBUaGlzIGRlZmF1bHRzIHRvIDE1IGRheXMuCi0KLVRoZSBvcHRpb25hbCBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBnYy5wYWNrUmVmc2AgZGV0ZXJtaW5lcyBpZgotJ2dpdCBnYycgcnVucyAnZ2l0IHBhY2stcmVmcycuIFRoaXMgY2FuIGJlIHNldCB0byAibm90YmFyZSIgdG8gZW5hYmxlCi1pdCB3aXRoaW4gYWxsIG5vbi1iYXJlIHJlcG9zIG9yIGl0IGNhbiBiZSBzZXQgdG8gYSBib29sZWFuIHZhbHVlLgotVGhpcyBkZWZhdWx0cyB0byB0cnVlLgotCi1UaGUgb3B0aW9uYWwgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBgZ2MuY29tbWl0R3JhcGhgIGRldGVybWluZXMgaWYKLSdnaXQgZ2MnIHNob3VsZCBydW4gJ2dpdCBjb21taXQtZ3JhcGggd3JpdGUnLiBUaGlzIGNhbiBiZSBzZXQgdG8gYQotYm9vbGVhbiB2YWx1ZS4gVGhpcyBkZWZhdWx0cyB0byBmYWxzZS4KLQotVGhlIG9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYGdjLmFnZ3Jlc3NpdmVXaW5kb3dgIGNvbnRyb2xzIGhvdwotbXVjaCB0aW1lIGlzIHNwZW50IG9wdGltaXppbmcgdGhlIGRlbHRhIGNvbXByZXNzaW9uIG9mIHRoZSBvYmplY3RzIGluCi10aGUgcmVwb3NpdG9yeSB3aGVuIHRoZSAtLWFnZ3Jlc3NpdmUgb3B0aW9uIGlzIHNwZWNpZmllZC4gIFRoZSBsYXJnZXIKLXRoZSB2YWx1ZSwgdGhlIG1vcmUgdGltZSBpcyBzcGVudCBvcHRpbWl6aW5nIHRoZSBkZWx0YSBjb21wcmVzc2lvbi4gIFNlZQotdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSAtLXdpbmRvdyBvcHRpb24gaW4gbGlua2dpdDpnaXQtcmVwYWNrWzFdIGZvcgotbW9yZSBkZXRhaWxzLiAgVGhpcyBkZWZhdWx0cyB0byAyNTAuCi0KLVNpbWlsYXJseSwgdGhlIG9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYGdjLmFnZ3Jlc3NpdmVEZXB0aGAKLWNvbnRyb2xzIC0tZGVwdGggb3B0aW9uIGluIGxpbmtnaXQ6Z2l0LXJlcGFja1sxXS4gVGhpcyBkZWZhdWx0cyB0byA1MC4KLQotVGhlIG9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYGdjLnBydW5lRXhwaXJlYCBjb250cm9scyBob3cgb2xkCi10aGUgdW5yZWZlcmVuY2VkIGxvb3NlIG9iamVjdHMgaGF2ZSB0byBiZSBiZWZvcmUgdGhleSBhcmUgcHJ1bmVkLiAgVGhlCi1kZWZhdWx0IGlzICIyIHdlZWtzIGFnbyIuCi0KLU9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYGdjLndvcmt0cmVlUHJ1bmVFeHBpcmVgIGNvbnRyb2xzIGhvdwotb2xkIGEgc3RhbGUgd29ya2luZyB0cmVlIHNob3VsZCBiZSBiZWZvcmUgYGdpdCB3b3JrdHJlZSBwcnVuZWAgZGVsZXRlcwotaXQuIERlZmF1bHQgaXMgIjMgbW9udGhzIGFnbyIuCi0KK2luY2x1ZGU6OmNvbmZpZy9nYy50eHRbXQogCiBOT1RFUwogLS0tLS0KIAogJ2dpdCBnYycgdHJpZXMgdmVyeSBoYXJkIG5vdCB0byBkZWxldGUgb2JqZWN0cyB0aGF0IGFyZSByZWZlcmVuY2VkCi1hbnl3aGVyZSBpbiB5b3VyIHJlcG9zaXRvcnkuIEluCi1wYXJ0aWN1bGFyLCBpdCB3aWxsIGtlZXAgbm90IG9ubHkgb2JqZWN0cyByZWZlcmVuY2VkIGJ5IHlvdXIgY3VycmVudCBzZXQKLW9mIGJyYW5jaGVzIGFuZCB0YWdzLCBidXQgYWxzbyBvYmplY3RzIHJlZmVyZW5jZWQgYnkgdGhlIGluZGV4LAotcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzLCByZWZzIHNhdmVkIGJ5ICdnaXQgZmlsdGVyLWJyYW5jaCcgaW4KLXJlZnMvb3JpZ2luYWwvLCBvciByZWZsb2dzICh3aGljaCBtYXkgcmVmZXJlbmNlIGNvbW1pdHMgaW4gYnJhbmNoZXMKLXRoYXQgd2VyZSBsYXRlciBhbWVuZGVkIG9yIHJld291bmQpLgotSWYgeW91IGFyZSBleHBlY3Rpbmcgc29tZSBvYmplY3RzIHRvIGJlIGRlbGV0ZWQgYW5kIHRoZXkgYXJlbid0LCBjaGVjawotYWxsIG9mIHRob3NlIGxvY2F0aW9ucyBhbmQgZGVjaWRlIHdoZXRoZXIgaXQgbWFrZXMgc2Vuc2UgaW4geW91ciBjYXNlIHRvCi1yZW1vdmUgdGhvc2UgcmVmZXJlbmNlcy4KK2FueXdoZXJlIGluIHlvdXIgcmVwb3NpdG9yeS4gSW4gcGFydGljdWxhciwgaXQgd2lsbCBrZWVwIG5vdCBvbmx5CitvYmplY3RzIHJlZmVyZW5jZWQgYnkgeW91ciBjdXJyZW50IHNldCBvZiBicmFuY2hlcyBhbmQgdGFncywgYnV0IGFsc28KK29iamVjdHMgcmVmZXJlbmNlZCBieSB0aGUgaW5kZXgsIHJlbW90ZS10cmFja2luZyBicmFuY2hlcywgbm90ZXMgc2F2ZWQKK2J5ICdnaXQgbm90ZXMnIHVuZGVyIHJlZnMvbm90ZXMvLCByZWZsb2dzICh3aGljaCBtYXkgcmVmZXJlbmNlIGNvbW1pdHMKK2luIGJyYW5jaGVzIHRoYXQgd2VyZSBsYXRlciBhbWVuZGVkIG9yIHJld291bmQpLCBhbmQgYW55dGhpbmcgZWxzZSBpbgordGhlIHJlZnMvKiBuYW1lc3BhY2UuICBJZiB5b3UgYXJlIGV4cGVjdGluZyBzb21lIG9iamVjdHMgdG8gYmUgZGVsZXRlZAorYW5kIHRoZXkgYXJlbid0LCBjaGVjayBhbGwgb2YgdGhvc2UgbG9jYXRpb25zIGFuZCBkZWNpZGUgd2hldGhlciBpdAorbWFrZXMgc2Vuc2UgaW4geW91ciBjYXNlIHRvIHJlbW92ZSB0aG9zZSByZWZlcmVuY2VzLgogCiBPbiB0aGUgb3RoZXIgaGFuZCwgd2hlbiAnZ2l0IGdjJyBydW5zIGNvbmN1cnJlbnRseSB3aXRoIGFub3RoZXIgcHJvY2VzcywKIHRoZXJlIGlzIGEgcmlzayBvZiBpdCBkZWxldGluZyBhbiBvYmplY3QgdGhhdCB0aGUgb3RoZXIgcHJvY2VzcyBpcyB1c2luZwpAQCAtMTkwLDggKzE0MCw3IEBACiAKIEhvd2V2ZXIsIHRoZXNlIGZlYXR1cmVzIGZhbGwgc2hvcnQgb2YgYSBjb21wbGV0ZSBzb2x1dGlvbiwgc28gdXNlcnMgd2hvCiBydW4gY29tbWFuZHMgY29uY3VycmVudGx5IGhhdmUgdG8gbGl2ZSB3aXRoIHNvbWUgcmlzayBvZiBjb3JydXB0aW9uICh3aGljaAotc2VlbXMgdG8gYmUgbG93IGluIHByYWN0aWNlKSB1bmxlc3MgdGhleSB0dXJuIG9mZiBhdXRvbWF0aWMgZ2FyYmFnZQotY29sbGVjdGlvbiB3aXRoICdnaXQgY29uZmlnIGdjLmF1dG8gMCcuCitzZWVtcyB0byBiZSBsb3cgaW4gcHJhY3RpY2UpLgogCiBIT09LUwogLS0tLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWdyZXAudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtZ3JlcC50eHQKaW5kZXggODRmZTIzNi4uZGRiNmFjYyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtZ3JlcC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtZ3JlcC50eHQKQEAgLTU5LDggKzU5LDggQEAKIAlvdGhlciB0aGFuICdkZWZhdWx0Jy4KIAogZ3JlcC50aHJlYWRzOjoKLQlOdW1iZXIgb2YgZ3JlcCB3b3JrZXIgdGhyZWFkcyB0byB1c2UuICBJZiB1bnNldCAob3Igc2V0IHRvIDApLAotCTggdGhyZWFkcyBhcmUgdXNlZCBieSBkZWZhdWx0IChmb3Igbm93KS4KKwlOdW1iZXIgb2YgZ3JlcCB3b3JrZXIgdGhyZWFkcyB0byB1c2UuIElmIHVuc2V0IChvciBzZXQgdG8gMCksIEdpdCB3aWxsCisJdXNlIGFzIG1hbnkgdGhyZWFkcyBhcyB0aGUgbnVtYmVyIG9mIGxvZ2ljYWwgY29yZXMgYXZhaWxhYmxlLgogCiBncmVwLmZ1bGxOYW1lOjoKIAlJZiBzZXQgdG8gdHJ1ZSwgZW5hYmxlIGAtLWZ1bGwtbmFtZWAgb3B0aW9uIGJ5IGRlZmF1bHQuCkBAIC04OCw3ICs4OCw3IEBACiAJbWVjaGFuaXNtLiBPbmx5IHVzZWZ1bCB3aXRoIGAtLXVudHJhY2tlZGAuCiAKIC0tZXhjbHVkZS1zdGFuZGFyZDo6Ci0JRG8gbm90IHBheSBhdHRlbnRpb24gdG8gaWdub3JlZCBmaWxlcyBzcGVjaWZpZWQgdmlhIHRoZQlgLmdpdGlnbm9yZWAKKwlEbyBub3QgcGF5IGF0dGVudGlvbiB0byBpZ25vcmVkIGZpbGVzIHNwZWNpZmllZCB2aWEgdGhlIGAuZ2l0aWdub3JlYAogCW1lY2hhbmlzbS4gIE9ubHkgdXNlZnVsIHdoZW4gc2VhcmNoaW5nIGZpbGVzIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeQogCXdpdGggYC0tbm8taW5kZXhgLgogCkBAIC05Niw3ICs5Niw4IEBACiAJUmVjdXJzaXZlbHkgc2VhcmNoIGluIGVhY2ggc3VibW9kdWxlIHRoYXQgaGFzIGJlZW4gaW5pdGlhbGl6ZWQgYW5kCiAJY2hlY2tlZCBvdXQgaW4gdGhlIHJlcG9zaXRvcnkuICBXaGVuIHVzZWQgaW4gY29tYmluYXRpb24gd2l0aCB0aGUKIAk8dHJlZT4gb3B0aW9uIHRoZSBwcmVmaXggb2YgYWxsIHN1Ym1vZHVsZSBvdXRwdXQgd2lsbCBiZSB0aGUgbmFtZSBvZgotCXRoZSBwYXJlbnQgcHJvamVjdCdzIDx0cmVlPiBvYmplY3QuCisJdGhlIHBhcmVudCBwcm9qZWN0J3MgPHRyZWU+IG9iamVjdC4gVGhpcyBvcHRpb24gaGFzIG5vIGVmZmVjdAorCWlmIGAtLW5vLWluZGV4YCBpcyBnaXZlbi4KIAogLWE6OgogLS10ZXh0OjoKQEAgLTI3MSw2ICsyNzIsMjMgQEAKIAogLWYgPGZpbGU+OjoKIAlSZWFkIHBhdHRlcm5zIGZyb20gPGZpbGU+LCBvbmUgcGVyIGxpbmUuCisrCitQYXNzaW5nIHRoZSBwYXR0ZXJuIHZpYSA8ZmlsZT4gYWxsb3dzIGZvciBwcm92aWRpbmcgYSBzZWFyY2ggcGF0dGVybgorY29udGFpbmluZyBhIFwwLgorKworTm90IGFsbCBwYXR0ZXJuIHR5cGVzIHN1cHBvcnQgcGF0dGVybnMgY29udGFpbmluZyBcMC4gR2l0IHdpbGwgZXJyb3IKK291dCBpZiBhIGdpdmVuIHBhdHRlcm4gdHlwZSBjYW4ndCBzdXBwb3J0IHN1Y2ggYSBwYXR0ZXJuLiBUaGUKK2AtLXBlcmwtcmVnZXhwYCBwYXR0ZXJuIHR5cGUgd2hlbiBjb21waWxlZCBhZ2FpbnN0IHRoZSBQQ1JFIHYyIGJhY2tlbmQKK2hhcyB0aGUgd2lkZXN0IHN1cHBvcnQgZm9yIHRoZXNlIHR5cGVzIG9mIHBhdHRlcm5zLgorKworSW4gdmVyc2lvbnMgb2YgR2l0IGJlZm9yZSAyLjIzLjAgcGF0dGVybnMgY29udGFpbmluZyBcMCB3b3VsZCBiZQorc2lsZW50bHkgY29uc2lkZXJlZCBmaXhlZC4gVGhpcyB3YXMgbmV2ZXIgZG9jdW1lbnRlZCwgdGhlcmUgd2VyZSBhbHNvCitvZGQgYW5kIHVuZG9jdW1lbnRlZCBpbnRlcmFjdGlvbnMgYmV0d2VlbiBlLmcuIG5vbi1BU0NJSSBwYXR0ZXJucworY29udGFpbmluZyBcMCBhbmQgYC0taWdub3JlLWNhc2VgLgorKworSW4gZnV0dXJlIHZlcnNpb25zIHdlIG1heSBsZWFybiB0byBzdXBwb3J0IHBhdHRlcm5zIGNvbnRhaW5pbmcgXDAgZm9yCittb3JlIHNlYXJjaCBiYWNrZW5kcywgdW50aWwgdGhlbiB3ZSdsbCBkaWUgd2hlbiB0aGUgcGF0dGVybiB0eXBlIGluCitxdWVzdGlvbiBkb2Vzbid0IHN1cHBvcnQgdGhlbS4KIAogLWU6OgogCVRoZSBuZXh0IHBhcmFtZXRlciBpcyB0aGUgcGF0dGVybi4gVGhpcyBvcHRpb24gaGFzIHRvIGJlCkBAIC0zMzAsNiArMzQ4LDE3IEBACiBgZ2l0IGdyZXAgc29sdXRpb24gLS0gOl5Eb2N1bWVudGF0aW9uYDo6CiAJTG9va3MgZm9yIGBzb2x1dGlvbmAsIGV4Y2x1ZGluZyBmaWxlcyBpbiBgRG9jdW1lbnRhdGlvbmAuCiAKK05PVEVTIE9OIFRIUkVBRFMKKy0tLS0tLS0tLS0tLS0tLS0KKworVGhlIGAtLXRocmVhZHNgIG9wdGlvbiAoYW5kIHRoZSBncmVwLnRocmVhZHMgY29uZmlndXJhdGlvbikgd2lsbCBiZSBpZ25vcmVkIHdoZW4KK2AtLW9wZW4tZmlsZXMtaW4tcGFnZXJgIGlzIHVzZWQsIGZvcmNpbmcgYSBzaW5nbGUtdGhyZWFkZWQgZXhlY3V0aW9uLgorCitXaGVuIGdyZXBwaW5nIHRoZSBvYmplY3Qgc3RvcmUgKHdpdGggYC0tY2FjaGVkYCBvciBnaXZpbmcgdHJlZSBvYmplY3RzKSwgcnVubmluZword2l0aCBtdWx0aXBsZSB0aHJlYWRzIG1pZ2h0IHBlcmZvcm0gc2xvd2VyIHRoYW4gc2luZ2xlIHRocmVhZGVkIGlmIGAtLXRleHRjb252YAoraXMgZ2l2ZW4gYW5kIHRoZXJlJ3JlIHRvbyBtYW55IHRleHQgY29udmVyc2lvbnMuIFNvIGlmIHlvdSBleHBlcmllbmNlIGxvdworcGVyZm9ybWFuY2UgaW4gdGhpcyBjYXNlLCBpdCBtaWdodCBiZSBkZXNpcmFibGUgdG8gdXNlIGAtLXRocmVhZHM9MWAuCisKIEdJVAogLS0tCiBQYXJ0IG9mIHRoZSBsaW5rZ2l0OmdpdFsxXSBzdWl0ZQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtZ3VpLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWd1aS50eHQKaW5kZXggNWY5M2Y4MC4uYzlkN2U5NiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtZ3VpLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1ndWkudHh0CkBAIC0xMTIsMTUgKzExMiw5IEBACiB2ZXJzaW9ucyBhcmUgZGlzdHJpYnV0ZWQgYXMgcGFydCBvZiB0aGUgR2l0IHN1aXRlIGZvciB0aGUgY29udmVuaWVuY2UKIG9mIGVuZCB1c2Vycy4KIAotQSAnZ2l0IGd1aScgZGV2ZWxvcG1lbnQgcmVwb3NpdG9yeSBjYW4gYmUgb2J0YWluZWQgZnJvbToKK1RoZSBvZmZpY2lhbCByZXBvc2l0b3J5IG9mIHRoZSAnZ2l0IGd1aScgcHJvamVjdCBjYW4gYmUgZm91bmQgYXQ6CiAKLSAgZ2l0IGNsb25lIGdpdDovL3JlcG8ub3IuY3ovZ2l0LWd1aS5naXQKLQotb3IKLQotICBnaXQgY2xvbmUgaHR0cDovL3JlcG8ub3IuY3ovci9naXQtZ3VpLmdpdAotCi1vciBicm93c2VkIG9ubGluZSBhdCBodHRwOi8vcmVwby5vci5jei93L2dpdC1ndWkuZ2l0L1tdLgorICBodHRwczovL2dpdGh1Yi5jb20vcHJhdGkwMTAwL2dpdC1ndWkuZ2l0LwogCiBHSVQKIC0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtaGFzaC1vYmplY3QudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtaGFzaC1vYmplY3QudHh0CmluZGV4IDgxNGU3NDQuLmRmOWUyYzUgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWhhc2gtb2JqZWN0LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1oYXNoLW9iamVjdC50eHQKQEAgLTE4LDkgKzE4LDcgQEAKIHdpdGggdGhlIGNvbnRlbnRzIG9mIHRoZSBuYW1lZCBmaWxlICh3aGljaCBjYW4gYmUgb3V0c2lkZSBvZiB0aGUKIHdvcmsgdHJlZSksIGFuZCBvcHRpb25hbGx5IHdyaXRlcyB0aGUgcmVzdWx0aW5nIG9iamVjdCBpbnRvIHRoZQogb2JqZWN0IGRhdGFiYXNlLiAgUmVwb3J0cyBpdHMgb2JqZWN0IElEIHRvIGl0cyBzdGFuZGFyZCBvdXRwdXQuCi1UaGlzIGlzIHVzZWQgYnkgJ2dpdCBjdnNpbXBvcnQnIHRvIHVwZGF0ZSB0aGUgaW5kZXgKLXdpdGhvdXQgbW9kaWZ5aW5nIGZpbGVzIGluIHRoZSB3b3JrIHRyZWUuICBXaGVuIDx0eXBlPiBpcyBub3QKLXNwZWNpZmllZCwgaXQgZGVmYXVsdHMgdG8gImJsb2IiLgorV2hlbiA8dHlwZT4gaXMgbm90IHNwZWNpZmllZCwgaXQgZGVmYXVsdHMgdG8gImJsb2IiLgogCiBPUFRJT05TCiAtLS0tLS0tCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1oZWxwLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWhlbHAudHh0CmluZGV4IGFhYjU0NTMuLmY3MWRiMGQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWhlbHAudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWhlbHAudHh0CkBAIC0xMTgsOSArMTE4LDkgQEAKIAogKiAibWFuIjogdXNlIHRoZSAnbWFuJyBwcm9ncmFtIGFzIHVzdWFsLAogKiAid29tYW4iOiB1c2UgJ2VtYWNzY2xpZW50JyB0byBsYXVuY2ggdGhlICJ3b21hbiIgbW9kZSBpbiBlbWFjcwotKHRoaXMgb25seSB3b3JrcyBzdGFydGluZyB3aXRoIGVtYWNzY2xpZW50IHZlcnNpb25zIDIyKSwKKyAgKHRoaXMgb25seSB3b3JrcyBzdGFydGluZyB3aXRoIGVtYWNzY2xpZW50IHZlcnNpb25zIDIyKSwKICogImtvbnF1ZXJvciI6IHVzZSAna2ZtY2xpZW50JyB0byBvcGVuIHRoZSBtYW4gcGFnZSBpbiBhIG5ldyBrb25xdWVyb3IKLXRhYiAoc2VlICdOb3RlIGFib3V0IGtvbnF1ZXJvcicgYmVsb3cpLgorICB0YWIgKHNlZSAnTm90ZSBhYm91dCBrb25xdWVyb3InIGJlbG93KS4KIAogVmFsdWVzIGZvciBvdGhlciB0b29scyBjYW4gYmUgdXNlZCBpZiB0aGVyZSBpcyBhIGNvcnJlc3BvbmRpbmcKIGBtYW4uPHRvb2w+LmNtZGAgY29uZmlndXJhdGlvbiBlbnRyeSAoc2VlIGJlbG93KS4KQEAgLTE3MSw4ICsxNzEsOCBAQAogYWxyZWFkeSBvcGVuZWQga29ucXVlcm9yIGluIGEgbmV3IHRhYiBpZiBwb3NzaWJsZS4KIAogRm9yIGNvbnNpc3RlbmN5LCB3ZSBhbHNvIHRyeSBzdWNoIGEgdHJpY2sgaWYgJ21hbi5rb25xdWVyb3IucGF0aCcgaXMKLXNldCB0byBzb21ldGhpbmcgbGlrZSAnQV9QQVRIX1RPL2tvbnF1ZXJvcicuIFRoYXQgbWVhbnMgd2Ugd2lsbCB0cnkgdG8KLWxhdW5jaCAnQV9QQVRIX1RPL2tmbWNsaWVudCcgaW5zdGVhZC4KK3NldCB0byBzb21ldGhpbmcgbGlrZSBgQV9QQVRIX1RPL2tvbnF1ZXJvcmAuIFRoYXQgbWVhbnMgd2Ugd2lsbCB0cnkgdG8KK2xhdW5jaCBgQV9QQVRIX1RPL2tmbWNsaWVudGAgaW5zdGVhZC4KIAogSWYgeW91IHJlYWxseSB3YW50IHRvIHVzZSAna29ucXVlcm9yJywgdGhlbiB5b3UgY2FuIHVzZSBzb21ldGhpbmcgbGlrZQogdGhlIGZvbGxvd2luZzoKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWh0dHAtYmFja2VuZC50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1odHRwLWJhY2tlbmQudHh0CmluZGV4IGJiMGRiMTkuLjU1ODk2NmEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWh0dHAtYmFja2VuZC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtaHR0cC1iYWNrZW5kLnR4dApAQCAtMTYyLDcgKzE2Miw3IEBACiAKIEFjY2VsZXJhdGVkIHN0YXRpYyBBcGFjaGUgMi54OjoKIAlTaW1pbGFyIHRvIHRoZSBhYm92ZSwgYnV0IEFwYWNoZSBjYW4gYmUgdXNlZCB0byByZXR1cm4gc3RhdGljCi0JZmlsZXMgdGhhdCBhcmUgc3RvcmVkIG9uIGRpc2suCU9uIG1hbnkgc3lzdGVtcyB0aGlzIG1heQorCWZpbGVzIHRoYXQgYXJlIHN0b3JlZCBvbiBkaXNrLiAgT24gbWFueSBzeXN0ZW1zIHRoaXMgbWF5CiAJYmUgbW9yZSBlZmZpY2llbnQgYXMgQXBhY2hlIGNhbiBhc2sgdGhlIGtlcm5lbCB0byBjb3B5IHRoZQogCWZpbGUgY29udGVudHMgZnJvbSB0aGUgZmlsZSBzeXN0ZW0gZGlyZWN0bHkgdG8gdGhlIG5ldHdvcms6CiArCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1pbml0LnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWluaXQudHh0CmluZGV4IDNjNWE2N2YuLjMyODgwYWEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWluaXQudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWluaXQudHh0CkBAIC0zOCw4ICszOCw2IEBACiBPUFRJT05TCiAtLS0tLS0tCiAKLS0tCi0KIC1xOjoKIC0tcXVpZXQ6OgogCkBAIC0xMTEsOCArMTA5LDYgQEAKIElmIHlvdSBwcm92aWRlIGEgJ2RpcmVjdG9yeScsIHRoZSBjb21tYW5kIGlzIHJ1biBpbnNpZGUgaXQuIElmIHRoaXMgZGlyZWN0b3J5CiBkb2VzIG5vdCBleGlzdCwgaXQgd2lsbCBiZSBjcmVhdGVkLgogCi0tLQotCiBURU1QTEFURSBESVJFQ1RPUlkKIC0tLS0tLS0tLS0tLS0tLS0tLQogCkBAIC0xMzIsNyArMTI4LDcgQEAKIFRoZSBkZWZhdWx0IHRlbXBsYXRlIGRpcmVjdG9yeSBpbmNsdWRlcyBzb21lIGRpcmVjdG9yeSBzdHJ1Y3R1cmUsIHN1Z2dlc3RlZAogImV4Y2x1ZGUgcGF0dGVybnMiIChzZWUgbGlua2dpdDpnaXRpZ25vcmVbNV0pLCBhbmQgc2FtcGxlIGhvb2sgZmlsZXMuCiAKLVRoZSBzYW1wbGUgaG9va3MgYXJlIGFsbCBkaXNhYmxlZCBieSBkZWZhdWx0LCBUbyBlbmFibGUgb25lIG9mIHRoZQorVGhlIHNhbXBsZSBob29rcyBhcmUgYWxsIGRpc2FibGVkIGJ5IGRlZmF1bHQuIFRvIGVuYWJsZSBvbmUgb2YgdGhlCiBzYW1wbGUgaG9va3MgcmVuYW1lIGl0IGJ5IHJlbW92aW5nIGl0cyBgLnNhbXBsZWAgc3VmZml4LgogCiBTZWUgbGlua2dpdDpnaXRob29rc1s1XSBmb3IgbW9yZSBnZW5lcmFsIGluZm8gb24gaG9vayBleGVjdXRpb24uCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1pbnN0YXdlYi50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1pbnN0YXdlYi50eHQKaW5kZXggZThlY2RiZi4uYTU0ZmU0NCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtaW5zdGF3ZWIudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWluc3Rhd2ViLnR4dApAQCAtMjksNyArMjksOCBAQAogCVRoZSBIVFRQIGRhZW1vbiBjb21tYW5kLWxpbmUgdGhhdCB3aWxsIGJlIGV4ZWN1dGVkLgogCUNvbW1hbmQtbGluZSBvcHRpb25zIG1heSBiZSBzcGVjaWZpZWQgaGVyZSwgYW5kIHRoZQogCWNvbmZpZ3VyYXRpb24gZmlsZSB3aWxsIGJlIGFkZGVkIGF0IHRoZSBlbmQgb2YgdGhlIGNvbW1hbmQtbGluZS4KLQlDdXJyZW50bHkgYXBhY2hlMiwgbGlnaHR0cGQsIG1vbmdvb3NlLCBwbGFja3VwIGFuZCB3ZWJyaWNrIGFyZSBzdXBwb3J0ZWQuCisJQ3VycmVudGx5IGFwYWNoZTIsIGxpZ2h0dHBkLCBtb25nb29zZSwgcGxhY2t1cCwgcHl0aG9uIGFuZAorCXdlYnJpY2sgYXJlIHN1cHBvcnRlZC4KIAkoRGVmYXVsdDogbGlnaHR0cGQpCiAKIC1tOjoKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWludGVycHJldC10cmFpbGVycy50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1pbnRlcnByZXQtdHJhaWxlcnMudHh0CmluZGV4IGE1ZThiMzYuLjk2ZWM2NDkgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWludGVycHJldC10cmFpbGVycy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtaW50ZXJwcmV0LXRyYWlsZXJzLnR4dApAQCAtMyw3ICszLDcgQEAKIAogTkFNRQogLS0tLQotZ2l0LWludGVycHJldC10cmFpbGVycyAtIGFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcworZ2l0LWludGVycHJldC10cmFpbGVycyAtIEFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcwogCiBTWU5PUFNJUwogLS0tLS0tLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWxvZy50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1sb2cudHh0CmluZGV4IDkwNzYxZjEuLmJlZDA5YmIgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LWxvZy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtbG9nLnR4dApAQCAtNDksNyArNDksNyBAQAogCVByaW50IG91dCB0aGUgcmVmIG5hbWUgZ2l2ZW4gb24gdGhlIGNvbW1hbmQgbGluZSBieSB3aGljaCBlYWNoCiAJY29tbWl0IHdhcyByZWFjaGVkLgogCi0tLXVzZS1tYWlsbWFwOjoKKy0tW25vLV11c2UtbWFpbG1hcDo6CiAJVXNlIG1haWxtYXAgZmlsZSB0byBtYXAgYXV0aG9yIGFuZCBjb21taXR0ZXIgbmFtZXMgYW5kIGVtYWlsCiAJYWRkcmVzc2VzIHRvIGNhbm9uaWNhbCByZWFsIG5hbWVzIGFuZCBlbWFpbCBhZGRyZXNzZXMuIFNlZQogCWxpbmtnaXQ6Z2l0LXNob3J0bG9nWzFdLgpAQCAtNzYsOCArNzYsMTIgQEAKIAkob3IgdGhlIGZ1bmN0aW9uIG5hbWUgcmVnZXggPGZ1bmNuYW1lPikgd2l0aGluIHRoZSA8ZmlsZT4uICBZb3UgbWF5CiAJbm90IGdpdmUgYW55IHBhdGhzcGVjIGxpbWl0ZXJzLiAgVGhpcyBpcyBjdXJyZW50bHkgbGltaXRlZCB0bwogCWEgd2FsayBzdGFydGluZyBmcm9tIGEgc2luZ2xlIHJldmlzaW9uLCBpLmUuLCB5b3UgbWF5IG9ubHkKLQlnaXZlIHplcm8gb3Igb25lIHBvc2l0aXZlIHJldmlzaW9uIGFyZ3VtZW50cy4KLQlZb3UgY2FuIHNwZWNpZnkgdGhpcyBvcHRpb24gbW9yZSB0aGFuIG9uY2UuCisJZ2l2ZSB6ZXJvIG9yIG9uZSBwb3NpdGl2ZSByZXZpc2lvbiBhcmd1bWVudHMsIGFuZAorCTxzdGFydD4gYW5kIDxlbmQ+IChvciA8ZnVuY25hbWU+KSBtdXN0IGV4aXN0IGluIHRoZSBzdGFydGluZyByZXZpc2lvbi4KKwlZb3UgY2FuIHNwZWNpZnkgdGhpcyBvcHRpb24gbW9yZSB0aGFuIG9uY2UuIEltcGxpZXMgYC0tcGF0Y2hgLgorCVBhdGNoIG91dHB1dCBjYW4gYmUgc3VwcHJlc3NlZCB1c2luZyBgLS1uby1wYXRjaGAsIGJ1dCBvdGhlciBkaWZmIGZvcm1hdHMKKwkobmFtZWx5IGAtLXJhd2AsIGAtLW51bXN0YXRgLCBgLS1zaG9ydHN0YXRgLCBgLS1kaXJzdGF0YCwgYC0tc3VtbWFyeWAsCisJYC0tbmFtZS1vbmx5YCwgYC0tbmFtZS1zdGF0dXNgLCBgLS1jaGVja2ApIGFyZSBub3QgY3VycmVudGx5IGltcGxlbWVudGVkLgogKwogaW5jbHVkZTo6bGluZS1yYW5nZS1mb3JtYXQudHh0W10KIApAQCAtMTkyLDYgKzE5NiwxMCBAQAogCURlZmF1bHQgZm9ybWF0IGZvciBodW1hbi1yZWFkYWJsZSBkYXRlcy4gIChDb21wYXJlIHRoZQogCWAtLWRhdGVgIG9wdGlvbi4pICBEZWZhdWx0cyB0byAiZGVmYXVsdCIsIHdoaWNoIG1lYW5zIHRvIHdyaXRlCiAJZGF0ZXMgbGlrZSBgU2F0IE1heSA4IDE5OjM1OjM0IDIwMTAgLTA1MDBgLgorKworSWYgdGhlIGZvcm1hdCBpcyBzZXQgdG8gImF1dG86Zm9vIiBhbmQgdGhlIHBhZ2VyIGlzIGluIHVzZSwgZm9ybWF0CisiZm9vIiB3aWxsIGJlIHRoZSB1c2VkIGZvciB0aGUgZGF0ZSBmb3JtYXQuIE90aGVyd2lzZSAiZGVmYXVsdCIgd2lsbAorYmUgdXNlZC4KIAogbG9nLmZvbGxvdzo6CiAJSWYgYHRydWVgLCBgZ2l0IGxvZ2Agd2lsbCBhY3QgYXMgaWYgdGhlIGAtLWZvbGxvd2Agb3B0aW9uIHdhcyB1c2VkIHdoZW4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LWxzLWZpbGVzLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LWxzLWZpbGVzLnR4dAppbmRleCA1Mjk4ZjFiLi44NDYxYzBlIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1scy1maWxlcy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtbHMtZmlsZXMudHh0CkBAIC0xMTgsNiArMTE4LDcgQEAKIAlsaW5rZ2l0OmdpdC1zdGF0dXNbMV0gYC0tc2hvcnRgIG9yIGxpbmtnaXQ6Z2l0LWRpZmZbMV0KIAlgLS1uYW1lLXN0YXR1c2AgZm9yIG1vcmUgdXNlci1mcmllbmRseSBhbHRlcm5hdGl2ZXMuCiArCistLQogVGhpcyBvcHRpb24gaWRlbnRpZmllcyB0aGUgZmlsZSBzdGF0dXMgd2l0aCB0aGUgZm9sbG93aW5nIHRhZ3MgKGZvbGxvd2VkIGJ5CiBhIHNwYWNlKSBhdCB0aGUgc3RhcnQgb2YgZWFjaCBsaW5lOgogCkBAIC0xMjgsNiArMTI5LDcgQEAKIAlDOjoJbW9kaWZpZWQvY2hhbmdlZAogCUs6Ogl0byBiZSBraWxsZWQKIAk/OjoJb3RoZXIKKy0tCiAKIC12OjoKIAlTaW1pbGFyIHRvIGAtdGAsIGJ1dCB1c2UgbG93ZXJjYXNlIGxldHRlcnMgZm9yIGZpbGVzCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1scy1yZW1vdGUudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtbHMtcmVtb3RlLnR4dAppbmRleCBiOWZkMzc3Li4wYTVjOGI3IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1scy1yZW1vdGUudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LWxzLXJlbW90ZS50eHQKQEAgLTI4LDEwICsyOCwxMiBAQAogCUxpbWl0IHRvIG9ubHkgcmVmcy9oZWFkcyBhbmQgcmVmcy90YWdzLCByZXNwZWN0aXZlbHkuCiAJVGhlc2Ugb3B0aW9ucyBhcmUgX25vdF8gbXV0dWFsbHkgZXhjbHVzaXZlOyB3aGVuIGdpdmVuCiAJYm90aCwgcmVmZXJlbmNlcyBzdG9yZWQgaW4gcmVmcy9oZWFkcyBhbmQgcmVmcy90YWdzIGFyZQotCWRpc3BsYXllZC4KKwlkaXNwbGF5ZWQuICBOb3RlIHRoYXQgYGdpdCBscy1yZW1vdGUgLWhgIHVzZWQgd2l0aG91dAorCWFueXRoaW5nIGVsc2Ugb24gdGhlIGNvbW1hbmQgbGluZSBnaXZlcyBoZWxwLCBjb25zaXN0ZW50CisJd2l0aCBvdGhlciBnaXQgc3ViY29tbWFuZHMuCiAKIC0tcmVmczo6Ci0JRG8gbm90IHNob3cgcGVlbGVkIHRhZ3Mgb3IgcHNldWRvcmVmcyBsaWtlIEhFQUQJaW4gdGhlIG91dHB1dC4KKwlEbyBub3Qgc2hvdyBwZWVsZWQgdGFncyBvciBwc2V1ZG9yZWZzIGxpa2UgYEhFQURgIGluIHRoZSBvdXRwdXQuCiAKIC1xOjoKIC0tcXVpZXQ6OgpAQCAtOTIsMjEgKzk0LDIzIEBACiBFWEFNUExFUwogLS0tLS0tLS0KIAotCSQgZ2l0IGxzLXJlbW90ZSAtLXRhZ3MgLi8uCi0JZDY2MDJlYzUxOTRjODdiMGZjODcxMDNjYTRkNjcyNTFjNzZmMjMzYQlyZWZzL3RhZ3MvdjAuOTkKLQlmMjVhMjY1YTM0MmFlZDYwNDFhYjBjYzQ4NDIyNGQ5Y2E1NGI2ZjQxCXJlZnMvdGFncy92MC45OS4xCi0JN2NlY2EyNzVkMDQ3YzkwYzBjN2Q1YWZiMTNhYjk3ZWZkZjUxYmQ2ZQlyZWZzL3RhZ3MvdjAuOTkuMwotCWM1ZGI1NDU2YWUzYjA4NzNmYzY1OWMxOWZhZmRkZTIyMzEzY2M0NDEJcmVmcy90YWdzL3YwLjk5LjIKLQkwOTE4Mzg1ZGJkOTY1NmNhYjBkMWQ4MWJhNzQ1M2Q0OWJiYzE2MjUwCXJlZnMvdGFncy9qdW5pby1ncGctcHViCi0JJCBnaXQgbHMtcmVtb3RlIGh0dHA6Ly93d3cua2VybmVsLm9yZy9wdWIvc2NtL2dpdC9naXQuZ2l0IG1hc3RlciBwdSByYwotCTVmZTk3OGE1MzgxZjFmYmFkMjZhODBlNjgyZGRkMmE0MDE5NjY3NDAJcmVmcy9oZWFkcy9tYXN0ZXIKLQljNzgxYTg0YjUyMDRmYjI5NGM5Y2NjNzlmOGIzYmFjZWViMzJjMDYxCXJlZnMvaGVhZHMvcHUKLQkkIGdpdCByZW1vdGUgYWRkIGtvcmcgaHR0cDovL3d3dy5rZXJuZWwub3JnL3B1Yi9zY20vZ2l0L2dpdC5naXQKLQkkIGdpdCBscy1yZW1vdGUgLS10YWdzIGtvcmcgdlwqCi0JZDY2MDJlYzUxOTRjODdiMGZjODcxMDNjYTRkNjcyNTFjNzZmMjMzYQlyZWZzL3RhZ3MvdjAuOTkKLQlmMjVhMjY1YTM0MmFlZDYwNDFhYjBjYzQ4NDIyNGQ5Y2E1NGI2ZjQxCXJlZnMvdGFncy92MC45OS4xCi0JYzVkYjU0NTZhZTNiMDg3M2ZjNjU5YzE5ZmFmZGRlMjIzMTNjYzQ0MQlyZWZzL3RhZ3MvdjAuOTkuMgotCTdjZWNhMjc1ZDA0N2M5MGMwYzdkNWFmYjEzYWI5N2VmZGY1MWJkNmUJcmVmcy90YWdzL3YwLjk5LjMKKy0tLS0KKyQgZ2l0IGxzLXJlbW90ZSAtLXRhZ3MgLi8uCitkNjYwMmVjNTE5NGM4N2IwZmM4NzEwM2NhNGQ2NzI1MWM3NmYyMzNhCXJlZnMvdGFncy92MC45OQorZjI1YTI2NWEzNDJhZWQ2MDQxYWIwY2M0ODQyMjRkOWNhNTRiNmY0MQlyZWZzL3RhZ3MvdjAuOTkuMQorN2NlY2EyNzVkMDQ3YzkwYzBjN2Q1YWZiMTNhYjk3ZWZkZjUxYmQ2ZQlyZWZzL3RhZ3MvdjAuOTkuMworYzVkYjU0NTZhZTNiMDg3M2ZjNjU5YzE5ZmFmZGRlMjIzMTNjYzQ0MQlyZWZzL3RhZ3MvdjAuOTkuMgorMDkxODM4NWRiZDk2NTZjYWIwZDFkODFiYTc0NTNkNDliYmMxNjI1MAlyZWZzL3RhZ3MvanVuaW8tZ3BnLXB1YgorJCBnaXQgbHMtcmVtb3RlIGh0dHA6Ly93d3cua2VybmVsLm9yZy9wdWIvc2NtL2dpdC9naXQuZ2l0IG1hc3RlciBwdSByYworNWZlOTc4YTUzODFmMWZiYWQyNmE4MGU2ODJkZGQyYTQwMTk2Njc0MAlyZWZzL2hlYWRzL21hc3RlcgorYzc4MWE4NGI1MjA0ZmIyOTRjOWNjYzc5ZjhiM2JhY2VlYjMyYzA2MQlyZWZzL2hlYWRzL3B1CiskIGdpdCByZW1vdGUgYWRkIGtvcmcgaHR0cDovL3d3dy5rZXJuZWwub3JnL3B1Yi9zY20vZ2l0L2dpdC5naXQKKyQgZ2l0IGxzLXJlbW90ZSAtLXRhZ3Mga29yZyB2XCoKK2Q2NjAyZWM1MTk0Yzg3YjBmYzg3MTAzY2E0ZDY3MjUxYzc2ZjIzM2EJcmVmcy90YWdzL3YwLjk5CitmMjVhMjY1YTM0MmFlZDYwNDFhYjBjYzQ4NDIyNGQ5Y2E1NGI2ZjQxCXJlZnMvdGFncy92MC45OS4xCitjNWRiNTQ1NmFlM2IwODczZmM2NTljMTlmYWZkZGUyMjMxM2NjNDQxCXJlZnMvdGFncy92MC45OS4yCis3Y2VjYTI3NWQwNDdjOTBjMGM3ZDVhZmIxM2FiOTdlZmRmNTFiZDZlCXJlZnMvdGFncy92MC45OS4zCistLS0tCiAKIFNFRSBBTFNPCiAtLS0tLS0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtbHMtdHJlZS50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1scy10cmVlLnR4dAppbmRleCA5ZGVlN2JlLi5hNzUxNTcxIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1scy10cmVlLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1scy10cmVlLnR4dApAQCAtMjcsOSArMjcsOSBAQAogICAgdGFrZW4gYXMgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuICBFLmcuIHdoZW4geW91IGFyZQogICAgaW4gYSBkaXJlY3RvcnkgJ3N1YicgdGhhdCBoYXMgYSBkaXJlY3RvcnkgJ2RpcicsIHlvdSBjYW4gcnVuICdnaXQKICAgIGxzLXRyZWUgLXIgSEVBRCBkaXInIHRvIGxpc3QgdGhlIGNvbnRlbnRzIG9mIHRoZSB0cmVlICh0aGF0IGlzCi0gICAnc3ViL2RpcicgaW4gYEhFQURgKS4gIFlvdSBkb24ndCB3YW50IHRvIGdpdmUgYSB0cmVlIHRoYXQgaXMgbm90IGF0IHRoZQorICAgYHN1Yi9kaXJgIGluIGBIRUFEYCkuICBZb3UgZG9uJ3Qgd2FudCB0byBnaXZlIGEgdHJlZSB0aGF0IGlzIG5vdCBhdCB0aGUKICAgIHJvb3QgbGV2ZWwgKGUuZy4gYGdpdCBscy10cmVlIC1yIEhFQUQ6c3ViIGRpcmApIGluIHRoaXMgY2FzZSwgYXMgdGhhdAotICAgd291bGQgcmVzdWx0IGluIGFza2luZyBmb3IgJ3N1Yi9zdWIvZGlyJyBpbiB0aGUgYEhFQURgIGNvbW1pdC4KKyAgIHdvdWxkIHJlc3VsdCBpbiBhc2tpbmcgZm9yIGBzdWIvc3ViL2RpcmAgaW4gdGhlIGBIRUFEYCBjb21taXQuCiAgICBIb3dldmVyLCB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSBjYW4gYmUgaWdub3JlZCBieSBwYXNzaW5nCiAgICAtLWZ1bGwtdHJlZSBvcHRpb24uCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LW1lcmdlLWJhc2UudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtbWVyZ2UtYmFzZS50eHQKaW5kZXggOWYwN2Y0Zi4uMmQ5NDRlMCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtbWVyZ2UtYmFzZS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtbWVyZ2UtYmFzZS50eHQKQEAgLTgwLDkgKzgwLDExIEBACiAKIEZvciBleGFtcGxlLCB3aXRoIHRoaXMgdG9wb2xvZ3k6CiAKLQkgICAgICAgICBvLS0tby0tLW8tLS1CCi0JICAgICAgICAvCi0JLS0tby0tLTEtLS1vLS0tby0tLW8tLS1BCisuLi4uCisJIG8tLS1vLS0tby0tLUIKKwkvCistLS1vLS0tMS0tLW8tLS1vLS0tby0tLUEKKy4uLi4KIAogdGhlIG1lcmdlIGJhc2UgYmV0d2VlbiAnQScgYW5kICdCJyBpcyAnMScuCiAKQEAgLTkwLDIxICs5MiwyNSBAQAogbWVyZ2UgYmFzZSBiZXR3ZWVuICdBJyBhbmQgYSBoeXBvdGhldGljYWwgY29tbWl0ICdNJywgd2hpY2ggaXMgYSBtZXJnZQogYmV0d2VlbiAnQicgYW5kICdDJy4gIEZvciBleGFtcGxlLCB3aXRoIHRoaXMgdG9wb2xvZ3k6CiAKLQkgICAgICAgby0tLW8tLS1vLS0tby0tLUMKLQkgICAgICAvCi0JICAgICAvICAgby0tLW8tLS1vLS0tQgotCSAgICAvICAgLwotCS0tLTItLS0xLS0tby0tLW8tLS1vLS0tQQorLi4uLgorICAgICAgIG8tLS1vLS0tby0tLW8tLS1DCisgICAgICAvCisgICAgIC8gICBvLS0tby0tLW8tLS1CCisgICAgLyAgIC8KKy0tLTItLS0xLS0tby0tLW8tLS1vLS0tQQorLi4uLgogCiB0aGUgcmVzdWx0IG9mIGBnaXQgbWVyZ2UtYmFzZSBBIEIgQ2AgaXMgJzEnLiAgVGhpcyBpcyBiZWNhdXNlIHRoZQogZXF1aXZhbGVudCB0b3BvbG9neSB3aXRoIGEgbWVyZ2UgY29tbWl0ICdNJyBiZXR3ZWVuICdCJyBhbmQgJ0MnIGlzOgogCiAKLQkgICAgICAgby0tLW8tLS1vLS0tby0tLW8KLQkgICAgICAvICAgICAgICAgICAgICAgICBcCi0JICAgICAvICAgby0tLW8tLS1vLS0tby0tLU0KLQkgICAgLyAgIC8KLQktLS0yLS0tMS0tLW8tLS1vLS0tby0tLUEKKy4uLi4KKyAgICAgICBvLS0tby0tLW8tLS1vLS0tbworICAgICAgLyAgICAgICAgICAgICAgICAgXAorICAgICAvICAgby0tLW8tLS1vLS0tby0tLU0KKyAgICAvICAgLworLS0tMi0tLTEtLS1vLS0tby0tLW8tLS1BCisuLi4uCiAKIGFuZCB0aGUgcmVzdWx0IG9mIGBnaXQgbWVyZ2UtYmFzZSBBIE1gIGlzICcxJy4gIENvbW1pdCAnMicgaXMgYWxzbyBhCiBjb21tb24gYW5jZXN0b3IgYmV0d2VlbiAnQScgYW5kICdNJywgYnV0ICcxJyBpcyBhIGJldHRlciBjb21tb24gYW5jZXN0b3IsCkBAIC0xMTYsMTEgKzEyMiwxMyBAQAogV2hlbiB0aGUgaGlzdG9yeSBpbnZvbHZlcyBjcmlzcy1jcm9zcyBtZXJnZXMsIHRoZXJlIGNhbiBiZSBtb3JlIHRoYW4gb25lCiAnYmVzdCcgY29tbW9uIGFuY2VzdG9yIGZvciB0d28gY29tbWl0cy4gIEZvciBleGFtcGxlLCB3aXRoIHRoaXMgdG9wb2xvZ3k6CiAKLQktLS0xLS0tby0tLUEKLQkgICAgXCAvCi0JICAgICBYCi0JICAgIC8gXAotCS0tLTItLS1vLS0tby0tLUIKKy4uLi4KKy0tLTEtLS1vLS0tQQorICAgIFwgLworICAgICBYCisgICAgLyBcCistLS0yLS0tby0tLW8tLS1CCisuLi4uCiAKIGJvdGggJzEnIGFuZCAnMicgYXJlIG1lcmdlLWJhc2VzIG9mIEEgYW5kIEIuICBOZWl0aGVyIG9uZSBpcyBiZXR0ZXIgdGhhbgogdGhlIG90aGVyIChib3RoIGFyZSAnYmVzdCcgbWVyZ2UgYmFzZXMpLiAgV2hlbiB0aGUgYC0tYWxsYCBvcHRpb24gaXMgbm90IGdpdmVuLApAQCAtMTMxLDM2ICsxMzksNDIgQEAKIEEgYW5kIEIsIGFuZCBjaGVjayBpZiBpdCBpcyB0aGUgc2FtZSBhcyBBLCBpbiB3aGljaCBjYXNlLCBBIGlzIGFuCiBhbmNlc3RvciBvZiBCLiAgWW91IHdpbGwgc2VlIHRoaXMgaWRpb20gdXNlZCBvZnRlbiBpbiBvbGRlciBzY3JpcHRzLgogCi0JQT0kKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgQSkKLQlpZiB0ZXN0ICIkQSIgPSAiJChnaXQgbWVyZ2UtYmFzZSBBIEIpIgotCXRoZW4KLQkJLi4uIEEgaXMgYW4gYW5jZXN0b3Igb2YgQiAuLi4KLQlmaQorLi4uLgorQT0kKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgQSkKK2lmIHRlc3QgIiRBIiA9ICIkKGdpdCBtZXJnZS1iYXNlIEEgQikiCit0aGVuCisJLi4uIEEgaXMgYW4gYW5jZXN0b3Igb2YgQiAuLi4KK2ZpCisuLi4uCiAKIEluIG1vZGVybiBnaXQsIHlvdSBjYW4gc2F5IHRoaXMgaW4gYSBtb3JlIGRpcmVjdCB3YXk6CiAKLQlpZiBnaXQgbWVyZ2UtYmFzZSAtLWlzLWFuY2VzdG9yIEEgQgotCXRoZW4KLQkJLi4uIEEgaXMgYW4gYW5jZXN0b3Igb2YgQiAuLi4KLQlmaQorLi4uLgoraWYgZ2l0IG1lcmdlLWJhc2UgLS1pcy1hbmNlc3RvciBBIEIKK3RoZW4KKwkuLi4gQSBpcyBhbiBhbmNlc3RvciBvZiBCIC4uLgorZmkKKy4uLi4KIAogaW5zdGVhZC4KIAogRGlzY3Vzc2lvbiBvbiBmb3JrLXBvaW50IG1vZGUKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLUFmdGVyIHdvcmtpbmcgb24gdGhlIGB0b3BpY2AgYnJhbmNoIGNyZWF0ZWQgd2l0aCBgZ2l0IGNoZWNrb3V0IC1iCitBZnRlciB3b3JraW5nIG9uIHRoZSBgdG9waWNgIGJyYW5jaCBjcmVhdGVkIHdpdGggYGdpdCBzd2l0Y2ggLWMKIHRvcGljIG9yaWdpbi9tYXN0ZXJgLCB0aGUgaGlzdG9yeSBvZiByZW1vdGUtdHJhY2tpbmcgYnJhbmNoCiBgb3JpZ2luL21hc3RlcmAgbWF5IGhhdmUgYmVlbiByZXdvdW5kIGFuZCByZWJ1aWx0LCBsZWFkaW5nIHRvIGEKIGhpc3Rvcnkgb2YgdGhpcyBzaGFwZToKIAotCSAgICAgICAgICAgICAgICAgby0tLUIyCi0JICAgICAgICAgICAgICAgIC8KLQktLS1vLS0tby0tLUIxLS1vLS0tby0tLW8tLS1CIChvcmlnaW4vbWFzdGVyKQotCSAgICAgICAgXAotCSAgICAgICAgIEIwCi0JICAgICAgICAgIFwKLQkgICAgICAgICAgIEQwLS0tRDEtLS1EICh0b3BpYykKKy4uLi4KKwkJIG8tLS1CMgorCQkvCistLS1vLS0tby0tLUIxLS1vLS0tby0tLW8tLS1CIChvcmlnaW4vbWFzdGVyKQorCVwKKwkgQjAKKwkgIFwKKwkgICBEMC0tLUQxLS0tRCAodG9waWMpCisuLi4uCiAKIHdoZXJlIGBvcmlnaW4vbWFzdGVyYCB1c2VkIHRvIHBvaW50IGF0IGNvbW1pdHMgQjAsIEIxLCBCMiBhbmQgbm93IGl0CiBwb2ludHMgYXQgQiwgYW5kIHlvdXIgYHRvcGljYCBicmFuY2ggd2FzIHN0YXJ0ZWQgb24gdG9wIG9mIGl0IGJhY2sKQEAgLTE5MywxMyArMjA3LDE1IEBACiB3aWxsIHJlcGxheSBEMCwgRDEgYW5kIEQgb24gdG9wIG9mIEIgdG8gY3JlYXRlIGEgbmV3IGhpc3Rvcnkgb2YgdGhpcwogc2hhcGU6CiAKLQkJCSBvLS0tQjIKLQkJCS8KLQktLS1vLS0tby0tLUIxLS1vLS0tby0tLW8tLS1CIChvcmlnaW4vbWFzdGVyKQotCQlcICAgICAgICAgICAgICAgICAgIFwKLQkJIEIwICAgICAgICAgICAgICAgICAgRDAnLS1EMSctLUQnICh0b3BpYyAtIHVwZGF0ZWQpCi0JCSAgXAotCQkgICBEMC0tLUQxLS0tRCAodG9waWMgLSBvbGQpCisuLi4uCisJCSBvLS0tQjIKKwkJLworLS0tby0tLW8tLS1CMS0tby0tLW8tLS1vLS0tQiAob3JpZ2luL21hc3RlcikKKwlcICAgICAgICAgICAgICAgICAgIFwKKwkgQjAgICAgICAgICAgICAgICAgICBEMCctLUQxJy0tRCcgKHRvcGljIC0gdXBkYXRlZCkKKwkgIFwKKwkgICBEMC0tLUQxLS0tRCAodG9waWMgLSBvbGQpCisuLi4uCiAKIEEgY2F2ZWF0IGlzIHRoYXQgb2xkZXIgcmVmbG9nIGVudHJpZXMgaW4geW91ciByZXBvc2l0b3J5IG1heSBiZQogZXhwaXJlZCBieSBgZ2l0IGdjYC4gIElmIEIwIG5vIGxvbmdlciBhcHBlYXJzIGluIHRoZSByZWZsb2cgb2YgdGhlCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1tZXJnZS1pbmRleC50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1tZXJnZS1pbmRleC50eHQKaW5kZXggMDI2NzZmYi4uMmFiODRhOSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtbWVyZ2UtaW5kZXgudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LW1lcmdlLWluZGV4LnR4dApAQCAtNTQsMjAgKzU0LDI0IEBACiAKIEV4YW1wbGVzOgogCi0gIHRvcnZhbGRzQHBwYzk3MDp+L21lcmdlLXRlc3Q+IGdpdCBtZXJnZS1pbmRleCBjYXQgTU0KLSAgVGhpcyBpcyBNTSBmcm9tIHRoZSBvcmlnaW5hbCB0cmVlLgkJCSMgb3JpZ2luYWwKLSAgVGhpcyBpcyBtb2RpZmllZCBNTSBpbiB0aGUgYnJhbmNoIEEuCQkJIyBtZXJnZTEKLSAgVGhpcyBpcyBtb2RpZmllZCBNTSBpbiB0aGUgYnJhbmNoIEIuCQkJIyBtZXJnZTIKLSAgVGhpcyBpcyBtb2RpZmllZCBNTSBpbiB0aGUgYnJhbmNoIEIuCQkJIyBjdXJyZW50IGNvbnRlbnRzCistLS0tCit0b3J2YWxkc0BwcGM5NzA6fi9tZXJnZS10ZXN0PiBnaXQgbWVyZ2UtaW5kZXggY2F0IE1NCitUaGlzIGlzIE1NIGZyb20gdGhlIG9yaWdpbmFsIHRyZWUuCQkjIG9yaWdpbmFsCitUaGlzIGlzIG1vZGlmaWVkIE1NIGluIHRoZSBicmFuY2ggQS4JCSMgbWVyZ2UxCitUaGlzIGlzIG1vZGlmaWVkIE1NIGluIHRoZSBicmFuY2ggQi4JCSMgbWVyZ2UyCitUaGlzIGlzIG1vZGlmaWVkIE1NIGluIHRoZSBicmFuY2ggQi4JCSMgY3VycmVudCBjb250ZW50cworLS0tLQogCiBvcgogCi0gIHRvcnZhbGRzQHBwYzk3MDp+L21lcmdlLXRlc3Q+IGdpdCBtZXJnZS1pbmRleCBjYXQgQUEgTU0KLSAgY2F0OiA6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKLSAgVGhpcyBpcyBhZGRlZCBBQSBpbiB0aGUgYnJhbmNoIEEuCi0gIFRoaXMgaXMgYWRkZWQgQUEgaW4gdGhlIGJyYW5jaCBCLgotICBUaGlzIGlzIGFkZGVkIEFBIGluIHRoZSBicmFuY2ggQi4KLSAgZmF0YWw6IG1lcmdlIHByb2dyYW0gZmFpbGVkCistLS0tCit0b3J2YWxkc0BwcGM5NzA6fi9tZXJnZS10ZXN0PiBnaXQgbWVyZ2UtaW5kZXggY2F0IEFBIE1NCitjYXQ6IDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQorVGhpcyBpcyBhZGRlZCBBQSBpbiB0aGUgYnJhbmNoIEEuCitUaGlzIGlzIGFkZGVkIEFBIGluIHRoZSBicmFuY2ggQi4KK1RoaXMgaXMgYWRkZWQgQUEgaW4gdGhlIGJyYW5jaCBCLgorZmF0YWw6IG1lcmdlIHByb2dyYW0gZmFpbGVkCistLS0tCiAKIHdoZXJlIHRoZSBsYXR0ZXIgZXhhbXBsZSBzaG93cyBob3cgJ2dpdCBtZXJnZS1pbmRleCcgd2lsbCBzdG9wIHRyeWluZyB0bwogbWVyZ2Ugb25jZSBhbnl0aGluZyBoYXMgcmV0dXJuZWQgYW4gZXJyb3IgKGkuZS4sIGBjYXRgIHJldHVybmVkIGFuIGVycm9yCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1tZXJnZS50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1tZXJnZS50eHQKaW5kZXggNGNjODY0Ni4uMDkyNTI5YyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtbWVyZ2UudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LW1lcmdlLnR4dApAQCAtMTAsMTEgKzEwLDEwIEBACiAtLS0tLS0tLQogW3ZlcnNlXQogJ2dpdCBtZXJnZScgWy1uXSBbLS1zdGF0XSBbLS1uby1jb21taXRdIFstLXNxdWFzaF0gWy0tW25vLV1lZGl0XQotCVstcyA8c3RyYXRlZ3k+XSBbLVggPHN0cmF0ZWd5LW9wdGlvbj5dIFstU1s8a2V5aWQ+XV0KKwlbLS1uby12ZXJpZnldIFstcyA8c3RyYXRlZ3k+XSBbLVggPHN0cmF0ZWd5LW9wdGlvbj5dIFstU1s8a2V5aWQ+XV0KIAlbLS1bbm8tXWFsbG93LXVucmVsYXRlZC1oaXN0b3JpZXNdCiAJWy0tW25vLV1yZXJlcmUtYXV0b3VwZGF0ZV0gWy1tIDxtc2c+XSBbLUYgPGZpbGU+XSBbPGNvbW1pdD4uLi5dCi0nZ2l0IG1lcmdlJyAtLWFib3J0Ci0nZ2l0IG1lcmdlJyAtLWNvbnRpbnVlCisnZ2l0IG1lcmdlJyAoLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXF1aXQpCiAKIERFU0NSSVBUSU9OCiAtLS0tLS0tLS0tLQpAQCAtODMsMTAgKzgyLDE2IEBACiBJZiBgLS1sb2dgIGlzIHNwZWNpZmllZCwgYSBzaG9ydGxvZyBvZiB0aGUgY29tbWl0cyBiZWluZyBtZXJnZWQKIHdpbGwgYmUgYXBwZW5kZWQgdG8gdGhlIHNwZWNpZmllZCBtZXNzYWdlLgogCi0tLVtuby1dcmVyZXJlLWF1dG91cGRhdGU6OgorLS1yZXJlcmUtYXV0b3VwZGF0ZTo6CistLW5vLXJlcmVyZS1hdXRvdXBkYXRlOjoKIAlBbGxvdyB0aGUgcmVyZXJlIG1lY2hhbmlzbSB0byB1cGRhdGUgdGhlIGluZGV4IHdpdGggdGhlCiAJcmVzdWx0IG9mIGF1dG8tY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZS4KIAorLS1vdmVyd3JpdGUtaWdub3JlOjoKKy0tbm8tb3ZlcndyaXRlLWlnbm9yZTo6CisJU2lsZW50bHkgb3ZlcndyaXRlIGlnbm9yZWQgZmlsZXMgZnJvbSB0aGUgbWVyZ2UgcmVzdWx0LiBUaGlzCisJaXMgdGhlIGRlZmF1bHQgYmVoYXZpb3IuIFVzZSBgLS1uby1vdmVyd3JpdGUtaWdub3JlYCB0byBhYm9ydC4KKwogLS1hYm9ydDo6CiAJQWJvcnQgdGhlIGN1cnJlbnQgY29uZmxpY3QgcmVzb2x1dGlvbiBwcm9jZXNzLCBhbmQKIAl0cnkgdG8gcmVjb25zdHJ1Y3QgdGhlIHByZS1tZXJnZSBzdGF0ZS4KQEAgLTk5LDYgKzEwNCwxMCBAQAogJ2dpdCBtZXJnZSAtLWFib3J0JyBpcyBlcXVpdmFsZW50IHRvICdnaXQgcmVzZXQgLS1tZXJnZScgd2hlbgogYE1FUkdFX0hFQURgIGlzIHByZXNlbnQuCiAKKy0tcXVpdDo6CisJRm9yZ2V0IGFib3V0IHRoZSBjdXJyZW50IG1lcmdlIGluIHByb2dyZXNzLiBMZWF2ZSB0aGUgaW5kZXgKKwlhbmQgdGhlIHdvcmtpbmcgdHJlZSBhcy1pcy4KKwogLS1jb250aW51ZTo6CiAJQWZ0ZXIgYSAnZ2l0IG1lcmdlJyBzdG9wcyBkdWUgdG8gY29uZmxpY3RzIHlvdSBjYW4gY29uY2x1ZGUgdGhlCiAJbWVyZ2UgYnkgcnVubmluZyAnZ2l0IG1lcmdlIC0tY29udGludWUnIChzZWUgIkhPVyBUTyBSRVNPTFZFCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1tZXJnZXRvb2wtLWxpYi50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1tZXJnZXRvb2wtLWxpYi50eHQKaW5kZXggMDU1NTUwYi4uNGRhOWQyNCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtbWVyZ2V0b29sLS1saWIudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LW1lcmdldG9vbC0tbGliLnR4dApAQCAtMjgsNyArMjgsOSBAQAogRlVOQ1RJT05TCiAtLS0tLS0tLS0KIGdldF9tZXJnZV90b29sOjoKLQlyZXR1cm5zIGEgbWVyZ2UgdG9vbC4KKwlyZXR1cm5zIGEgbWVyZ2UgdG9vbC4gdGhlIHJldHVybiBjb2RlIGlzIDEgaWYgd2UgcmV0dXJuZWQgYSBndWVzc2VkCisJbWVyZ2UgdG9vbCwgZWxzZSAwLiAnJEdJVF9NRVJHRVRPT0xfR1VJJyBtYXkgYmUgc2V0IHRvICd0cnVlJyB0bworCXNlYXJjaCBmb3IgdGhlIGFwcHJvcHJpYXRlIGd1aXRvb2wuCiAKIGdldF9tZXJnZV90b29sX2NtZDo6CiAJcmV0dXJucyB0aGUgY3VzdG9tIGNvbW1hbmQgZm9yIGEgbWVyZ2UgdG9vbC4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LW1lcmdldG9vbC50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1tZXJnZXRvb2wudHh0CmluZGV4IDBjNzk3NWEuLjZiMTQ3MDIgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LW1lcmdldG9vbC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtbWVyZ2V0b29sLnR4dApAQCAtODMsNyArODMsOSBAQAogLS1ndWk6OgogCVdoZW4gJ2dpdC1tZXJnZXRvb2wnIGlzIGludm9rZWQgd2l0aCB0aGUgYC1nYCBvciBgLS1ndWlgIG9wdGlvbgogCXRoZSBkZWZhdWx0IG1lcmdlIHRvb2wgd2lsbCBiZSByZWFkIGZyb20gdGhlIGNvbmZpZ3VyZWQKLQlgbWVyZ2UuZ3VpdG9vbGAgdmFyaWFibGUgaW5zdGVhZCBvZiBgbWVyZ2UudG9vbGAuCisJYG1lcmdlLmd1aXRvb2xgIHZhcmlhYmxlIGluc3RlYWQgb2YgYG1lcmdlLnRvb2xgLiBJZgorCWBtZXJnZS5ndWl0b29sYCBpcyBub3Qgc2V0LCB3ZSB3aWxsIGZhbGxiYWNrIHRvIHRoZSB0b29sCisJY29uZmlndXJlZCB1bmRlciBgbWVyZ2UudG9vbGAuCiAKIC0tbm8tZ3VpOjoKIAlUaGlzIG92ZXJyaWRlcyBhIHByZXZpb3VzIGAtZ2Agb3IgYC0tZ3VpYCBzZXR0aW5nIGFuZCByZWFkcyB0aGUKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LW11bHRpLXBhY2staW5kZXgudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtbXVsdGktcGFjay1pbmRleC50eHQKaW5kZXggZjc3NzhhMi4uNjQyZDlhYyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtbXVsdGktcGFjay1pbmRleC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtbXVsdGktcGFjay1pbmRleC50eHQKQEAgLTksNyArOSw3IEBACiBTWU5PUFNJUwogLS0tLS0tLS0KIFt2ZXJzZV0KLSdnaXQgbXVsdGktcGFjay1pbmRleCcgWy0tb2JqZWN0LWRpcj08ZGlyPl0gPHZlcmI+CisnZ2l0IG11bHRpLXBhY2staW5kZXgnIFstLW9iamVjdC1kaXI9PGRpcj5dIFstLVtuby1dcHJvZ3Jlc3NdIDxzdWJjb21tYW5kPgogCiBERVNDUklQVElPTgogLS0tLS0tLS0tLS0KQEAgLTIzLDEzICsyMywzOSBAQAogCWA8ZGlyPi9wYWNrcy9tdWx0aS1wYWNrLWluZGV4YCBmb3IgdGhlIGN1cnJlbnQgTUlEWCBmaWxlLCBhbmQKIAlgPGRpcj4vcGFja3NgIGZvciB0aGUgcGFjay1maWxlcyB0byBpbmRleC4KIAorLS1bbm8tXXByb2dyZXNzOjoKKwlUdXJuIHByb2dyZXNzIG9uL29mZiBleHBsaWNpdGx5LiBJZiBuZWl0aGVyIGlzIHNwZWNpZmllZCwgcHJvZ3Jlc3MgaXMKKwlzaG93biBpZiBzdGFuZGFyZCBlcnJvciBpcyBjb25uZWN0ZWQgdG8gYSB0ZXJtaW5hbC4KKworVGhlIGZvbGxvd2luZyBzdWJjb21tYW5kcyBhcmUgYXZhaWxhYmxlOgorCiB3cml0ZTo6Ci0JV2hlbiBnaXZlbiBhcyB0aGUgdmVyYiwgd3JpdGUgYSBuZXcgTUlEWCBmaWxlIHRvCi0JYDxkaXI+L3BhY2tzL211bHRpLXBhY2staW5kZXhgLgorCVdyaXRlIGEgbmV3IE1JRFggZmlsZS4KIAogdmVyaWZ5OjoKLQlXaGVuIGdpdmVuIGFzIHRoZSB2ZXJiLCB2ZXJpZnkgdGhlIGNvbnRlbnRzIG9mIHRoZSBNSURYIGZpbGUKLQlhdCBgPGRpcj4vcGFja3MvbXVsdGktcGFjay1pbmRleGAuCisJVmVyaWZ5IHRoZSBjb250ZW50cyBvZiB0aGUgTUlEWCBmaWxlLgorCitleHBpcmU6OgorCURlbGV0ZSB0aGUgcGFjay1maWxlcyB0aGF0IGFyZSB0cmFja2VkIAlieSB0aGUgTUlEWCBmaWxlLCBidXQKKwloYXZlIG5vIG9iamVjdHMgcmVmZXJlbmNlZCBieSB0aGUgTUlEWC4gUmV3cml0ZSB0aGUgTUlEWCBmaWxlCisJYWZ0ZXJ3YXJkIHRvIHJlbW92ZSBhbGwgcmVmZXJlbmNlcyB0byB0aGVzZSBwYWNrLWZpbGVzLgorCityZXBhY2s6OgorCUNyZWF0ZSBhIG5ldyBwYWNrLWZpbGUgY29udGFpbmluZyBvYmplY3RzIGluIHNtYWxsIHBhY2stZmlsZXMKKwlyZWZlcmVuY2VkIGJ5IHRoZSBtdWx0aS1wYWNrLWluZGV4LiBJZiB0aGUgc2l6ZSBnaXZlbiBieSB0aGUKKwlgLS1iYXRjaC1zaXplPTxzaXplPmAgYXJndW1lbnQgaXMgemVybywgdGhlbiBjcmVhdGUgYSBwYWNrCisJY29udGFpbmluZyBhbGwgb2JqZWN0cyByZWZlcmVuY2VkIGJ5IHRoZSBtdWx0aS1wYWNrLWluZGV4LiBGb3IKKwlhIG5vbi16ZXJvIGJhdGNoIHNpemUsIFNlbGVjdCB0aGUgcGFjay1maWxlcyBieSBleGFtaW5pbmcgcGFja3MKKwlmcm9tIG9sZGVzdC10by1uZXdlc3QsIGNvbXB1dGluZyB0aGUgImV4cGVjdGVkIHNpemUiIGJ5IGNvdW50aW5nCisJdGhlIG51bWJlciBvZiBvYmplY3RzIGluIHRoZSBwYWNrIHJlZmVyZW5jZWQgYnkgdGhlCisJbXVsdGktcGFjay1pbmRleCwgdGhlbiBkaXZpZGUgYnkgdGhlIHRvdGFsIG51bWJlciBvZiBvYmplY3RzIGluCisJdGhlIHBhY2sgYW5kIG11bHRpcGx5IGJ5IHRoZSBwYWNrIHNpemUuIFdlIHNlbGVjdCBwYWNrcyB3aXRoCisJZXhwZWN0ZWQgc2l6ZSBiZWxvdyB0aGUgYmF0Y2ggc2l6ZSB1bnRpbCB0aGUgc2V0IG9mIHBhY2tzIGhhdmUKKwl0b3RhbCBleHBlY3RlZCBzaXplIGF0IGxlYXN0IHRoZSBiYXRjaCBzaXplLiBJZiB0aGUgdG90YWwgc2l6ZQorCWRvZXMgbm90IHJlYWNoIHRoZSBiYXRjaCBzaXplLCB0aGVuIGRvIG5vdGhpbmcuIElmIGEgbmV3IHBhY2stCisJZmlsZSBpcyBjcmVhdGVkLCByZXdyaXRlIHRoZSBtdWx0aS1wYWNrLWluZGV4IHRvIHJlZmVyZW5jZSB0aGUKKwluZXcgcGFjay1maWxlLiBBIGxhdGVyIHJ1biBvZiAnZ2l0IG11bHRpLXBhY2staW5kZXggZXhwaXJlJyB3aWxsCisJZGVsZXRlIHRoZSBwYWNrLWZpbGVzIHRoYXQgd2VyZSBwYXJ0IG9mIHRoaXMgYmF0Y2guCiAKIAogRVhBTVBMRVMKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LW5vdGVzLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LW5vdGVzLnR4dAppbmRleCBkZjJiNjRkLi5jZWQyZTgyIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1ub3Rlcy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtbm90ZXMudHh0CkBAIC0xMCw3ICsxMCw3IEBACiBbdmVyc2VdCiAnZ2l0IG5vdGVzJyBbbGlzdCBbPG9iamVjdD5dXQogJ2dpdCBub3RlcycgYWRkIFstZl0gWy0tYWxsb3ctZW1wdHldIFstRiA8ZmlsZT4gfCAtbSA8bXNnPiB8ICgtYyB8IC1DKSA8b2JqZWN0Pl0gWzxvYmplY3Q+XQotJ2dpdCBub3RlcycgY29weSBbLWZdICggLS1zdGRpbiB8IDxmcm9tLW9iamVjdD4gPHRvLW9iamVjdD4gKQorJ2dpdCBub3RlcycgY29weSBbLWZdICggLS1zdGRpbiB8IDxmcm9tLW9iamVjdD4gWzx0by1vYmplY3Q+XSApCiAnZ2l0IG5vdGVzJyBhcHBlbmQgWy0tYWxsb3ctZW1wdHldIFstRiA8ZmlsZT4gfCAtbSA8bXNnPiB8ICgtYyB8IC1DKSA8b2JqZWN0Pl0gWzxvYmplY3Q+XQogJ2dpdCBub3RlcycgZWRpdCBbLS1hbGxvdy1lbXB0eV0gWzxvYmplY3Q+XQogJ2dpdCBub3Rlcycgc2hvdyBbPG9iamVjdD5dCkBAIC02OCw4ICs2OCw4IEBACiAJc3ViY29tbWFuZCkuCiAKIGNvcHk6OgotCUNvcHkgdGhlIG5vdGVzIGZvciB0aGUgZmlyc3Qgb2JqZWN0IG9udG8gdGhlIHNlY29uZCBvYmplY3QuCi0JQWJvcnQgaWYgdGhlIHNlY29uZCBvYmplY3QgYWxyZWFkeSBoYXMgbm90ZXMsIG9yIGlmIHRoZSBmaXJzdAorCUNvcHkgdGhlIG5vdGVzIGZvciB0aGUgZmlyc3Qgb2JqZWN0IG9udG8gdGhlIHNlY29uZCBvYmplY3QgKGRlZmF1bHRzIHRvCisJSEVBRCkuIEFib3J0IGlmIHRoZSBzZWNvbmQgb2JqZWN0IGFscmVhZHkgaGFzIG5vdGVzLCBvciBpZiB0aGUgZmlyc3QKIAlvYmplY3QgaGFzIG5vbmUgKHVzZSAtZiB0byBvdmVyd3JpdGUgZXhpc3Rpbmcgbm90ZXMgdG8gdGhlCiAJc2Vjb25kIG9iamVjdCkuIFRoaXMgc3ViY29tbWFuZCBpcyBlcXVpdmFsZW50IHRvOgogCWBnaXQgbm90ZXMgYWRkIFstZl0gLUMgJChnaXQgbm90ZXMgbGlzdCA8ZnJvbS1vYmplY3Q+KSA8dG8tb2JqZWN0PmAKQEAgLTE0Niw3ICsxNDYsNyBAQAogCiAtQyA8b2JqZWN0Pjo6CiAtLXJldXNlLW1lc3NhZ2U9PG9iamVjdD46OgotCVRha2UgdGhlIGdpdmVuIGJsb2Igb2JqZWN0IChmb3IJZXhhbXBsZSwgYW5vdGhlciBub3RlKSBhcyB0aGUKKwlUYWtlIHRoZSBnaXZlbiBibG9iIG9iamVjdCAoZm9yIGV4YW1wbGUsIGFub3RoZXIgbm90ZSkgYXMgdGhlCiAJbm90ZSBtZXNzYWdlLiAoVXNlIGBnaXQgbm90ZXMgY29weSA8b2JqZWN0PmAgaW5zdGVhZCB0bwogCWNvcHkgbm90ZXMgYmV0d2VlbiBvYmplY3RzLikKIApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtcDQudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtcDQudHh0CmluZGV4IGYwYTAyODAuLjM0OTRhMWQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXA0LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1wNC50eHQKQEAgLTcxLDEyICs3MSwxMiBAQAogLS0tLS0tLS0tLS0tCiBUaGlzOgogCi0xLiAgIENyZWF0ZXMgYW4gZW1wdHkgR2l0IHJlcG9zaXRvcnkgaW4gYSBzdWJkaXJlY3RvcnkgY2FsbGVkICdwcm9qZWN0Jy4KKzEuIENyZWF0ZXMgYW4gZW1wdHkgR2l0IHJlcG9zaXRvcnkgaW4gYSBzdWJkaXJlY3RvcnkgY2FsbGVkICdwcm9qZWN0Jy4KICsKLTIuICAgSW1wb3J0cyB0aGUgZnVsbCBjb250ZW50cyBvZiB0aGUgaGVhZCByZXZpc2lvbiBmcm9tIHRoZSBnaXZlbiBwNAotZGVwb3QgcGF0aCBpbnRvIGEgc2luZ2xlIGNvbW1pdCBpbiB0aGUgR2l0IGJyYW5jaCAncmVmcy9yZW1vdGVzL3A0L21hc3RlcicuCisyLiBJbXBvcnRzIHRoZSBmdWxsIGNvbnRlbnRzIG9mIHRoZSBoZWFkIHJldmlzaW9uIGZyb20gdGhlIGdpdmVuIHA0CisgICBkZXBvdCBwYXRoIGludG8gYSBzaW5nbGUgY29tbWl0IGluIHRoZSBHaXQgYnJhbmNoICdyZWZzL3JlbW90ZXMvcDQvbWFzdGVyJy4KICsKLTMuICAgQ3JlYXRlcyBhIGxvY2FsIGJyYW5jaCwgJ21hc3RlcicgZnJvbSB0aGlzIHJlbW90ZSBhbmQgY2hlY2tzIGl0IG91dC4KKzMuIENyZWF0ZXMgYSBsb2NhbCBicmFuY2gsICdtYXN0ZXInIGZyb20gdGhpcyByZW1vdGUgYW5kIGNoZWNrcyBpdCBvdXQuCiAKIFRvIHJlcHJvZHVjZSB0aGUgZW50aXJlIHA0IGhpc3RvcnkgaW4gR2l0LCB1c2UgdGhlICdAYWxsJyBtb2RpZmllciBvbgogdGhlIGRlcG90IHBhdGg6CmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1wYWNrLW9iamVjdHMudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtcGFjay1vYmplY3RzLnR4dAppbmRleCA0MGM4MjVjLi5mZWNkZjI2IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1wYWNrLW9iamVjdHMudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LXBhY2stb2JqZWN0cy50eHQKQEAgLTE0LDcgKzE0LDcgQEAKIAlbLS1sb2NhbF0gWy0taW5jcmVtZW50YWxdIFstLXdpbmRvdz08bj5dIFstLWRlcHRoPTxuPl0KIAlbLS1yZXZzIFstLXVucGFja2VkIHwgLS1hbGxdXSBbLS1rZWVwLXBhY2s9PHBhY2stbmFtZT5dCiAJWy0tc3Rkb3V0IFstLWZpbHRlcj08ZmlsdGVyLXNwZWM+XSB8IGJhc2UtbmFtZV0KLQlbLS1zaGFsbG93XSBbLS1rZWVwLXRydWUtcGFyZW50c10gPCBvYmplY3QtbGlzdAorCVstLXNoYWxsb3ddIFstLWtlZXAtdHJ1ZS1wYXJlbnRzXSBbLS1zcGFyc2VdIDwgb2JqZWN0LWxpc3QKIAogCiBERVNDUklQVElPTgpAQCAtMTMxLDcgKzEzMSw3IEBACiAtLWtlZXAtcGFjaz08cGFjay1uYW1lPjo6CiAJVGhpcyBmbGFnIGNhdXNlcyBhbiBvYmplY3QgYWxyZWFkeSBpbiB0aGUgZ2l2ZW4gcGFjayB0byBiZQogCWlnbm9yZWQsIGV2ZW4gaWYgaXQgd291bGQgaGF2ZSBvdGhlcndpc2UgYmVlbgotCXBhY2tlZC4gYDxwYWNrLW5hbWU+YCBpcyB0aGUgdGhlIHBhY2sgZmlsZSBuYW1lIHdpdGhvdXQKKwlwYWNrZWQuIGA8cGFjay1uYW1lPmAgaXMgdGhlIHBhY2sgZmlsZSBuYW1lIHdpdGhvdXQKIAlsZWFkaW5nIGRpcmVjdG9yeSAoZS5nLiBgcGFjay0xMjMucGFja2ApLiBUaGUgb3B0aW9uIGNvdWxkIGJlCiAJc3BlY2lmaWVkIG11bHRpcGxlIHRpbWVzIHRvIGtlZXAgbXVsdGlwbGUgcGFja3MuCiAKQEAgLTE5Niw2ICsxOTYsMTUgQEAKIAlBZGQgLS1uby1yZXVzZS1vYmplY3QgaWYgeW91IHdhbnQgdG8gZm9yY2UgYSB1bmlmb3JtIGNvbXByZXNzaW9uCiAJbGV2ZWwgb24gYWxsIGRhdGEgbm8gbWF0dGVyIHRoZSBzb3VyY2UuCiAKKy0tc3BhcnNlOjoKKwlVc2UgdGhlICJzcGFyc2UiIGFsZ29yaXRobSB0byBkZXRlcm1pbmUgd2hpY2ggb2JqZWN0cyB0byBpbmNsdWRlIGluCisJdGhlIHBhY2ssIHdoZW4gY29tYmluZWQgd2l0aCB0aGUgIi0tcmV2cyIgb3B0aW9uLiBUaGlzIGFsZ29yaXRobQorCW9ubHkgd2Fsa3MgdHJlZXMgdGhhdCBhcHBlYXIgaW4gcGF0aHMgdGhhdCBpbnRyb2R1Y2UgbmV3IG9iamVjdHMuCisJVGhpcyBjYW4gaGF2ZSBzaWduaWZpY2FudCBwZXJmb3JtYW5jZSBiZW5lZml0cyB3aGVuIGNvbXB1dGluZworCWEgcGFjayB0byBzZW5kIGEgc21hbGwgY2hhbmdlLiBIb3dldmVyLCBpdCBpcyBwb3NzaWJsZSB0aGF0IGV4dHJhCisJb2JqZWN0cyBhcmUgYWRkZWQgdG8gdGhlIHBhY2stZmlsZSBpZiB0aGUgaW5jbHVkZWQgY29tbWl0cyBjb250YWluCisJY2VydGFpbiB0eXBlcyBvZiBkaXJlY3QgcmVuYW1lcy4KKwogLS10aGluOjoKIAlDcmVhdGUgYSAidGhpbiIgcGFjayBieSBvbWl0dGluZyB0aGUgY29tbW9uIG9iamVjdHMgYmV0d2VlbiBhCiAJc2VuZGVyIGFuZCBhIHJlY2VpdmVyIGluIG9yZGVyIHRvIHJlZHVjZSBuZXR3b3JrIHRyYW5zZmVyLiBUaGlzCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1wdWxsLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXB1bGwudHh0CmluZGV4IDExOGQ5ZDguLmRmYjkwMWYgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXB1bGwudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LXB1bGwudHh0CkBAIC0xMTIsOCArMTEyLDkgQEAKIHRoZSBsb2NhbCBtZXJnZSBjb21taXRzIGFyZSBpbmNsdWRlZCBpbiB0aGUgcmViYXNlIChzZWUKIGxpbmtnaXQ6Z2l0LXJlYmFzZVsxXSBmb3IgZGV0YWlscykuCiArCi1XaGVuIHNldCB0byBwcmVzZXJ2ZSwgcmViYXNlIHdpdGggdGhlIGAtLXByZXNlcnZlLW1lcmdlc2Agb3B0aW9uIHBhc3NlZAotdG8gYGdpdCByZWJhc2VgIHNvIHRoYXQgbG9jYWxseSBjcmVhdGVkIG1lcmdlIGNvbW1pdHMgd2lsbCBub3QgYmUgZmxhdHRlbmVkLgorV2hlbiBzZXQgdG8gYHByZXNlcnZlYCAoZGVwcmVjYXRlZCBpbiBmYXZvciBvZiBgbWVyZ2VzYCksIHJlYmFzZSB3aXRoIHRoZQorYC0tcHJlc2VydmUtbWVyZ2VzYCBvcHRpb24gcGFzc2VkIHRvIGBnaXQgcmViYXNlYCBzbyB0aGF0IGxvY2FsbHkgY3JlYXRlZAorbWVyZ2UgY29tbWl0cyB3aWxsIG5vdCBiZSBmbGF0dGVuZWQuCiArCiBXaGVuIGZhbHNlLCBtZXJnZSB0aGUgY3VycmVudCBicmFuY2ggaW50byB0aGUgdXBzdHJlYW0gYnJhbmNoLgogKwpAQCAtMjQ4LDcgKzI0OSw3IEBACiAtLS0tCiBVc2luZyAtLXJlY3Vyc2Utc3VibW9kdWxlcyBjYW4gb25seSBmZXRjaCBuZXcgY29tbWl0cyBpbiBhbHJlYWR5IGNoZWNrZWQKIG91dCBzdWJtb2R1bGVzIHJpZ2h0IG5vdy4gV2hlbiBlLmcuIHVwc3RyZWFtIGFkZGVkIGEgbmV3IHN1Ym1vZHVsZSBpbiB0aGUKLWp1c3QgZmV0Y2hlZCBjb21taXRzIG9mIHRoZSBzdXBlcnByb2plY3QgdGhlIHN1Ym1vZHVsZSBpdHNlbGYgY2FuIG5vdCBiZQoranVzdCBmZXRjaGVkIGNvbW1pdHMgb2YgdGhlIHN1cGVycHJvamVjdCB0aGUgc3VibW9kdWxlIGl0c2VsZiBjYW5ub3QgYmUKIGZldGNoZWQsIG1ha2luZyBpdCBpbXBvc3NpYmxlIHRvIGNoZWNrIG91dCB0aGF0IHN1Ym1vZHVsZSBsYXRlciB3aXRob3V0CiBoYXZpbmcgdG8gZG8gYSBmZXRjaCBhZ2Fpbi4gVGhpcyBpcyBleHBlY3RlZCB0byBiZSBmaXhlZCBpbiBhIGZ1dHVyZSBHaXQKIHZlcnNpb24uCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1wdXNoLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXB1c2gudHh0CmluZGV4IGE1ZmM1NGEuLjNiODA1MzQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXB1c2gudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LXB1c2gudHh0CkBAIC03Myw2ICs3MywyNiBAQAogd2l0aG91dCBhbnkgYDxyZWZzcGVjPmAgb24gdGhlIGNvbW1hbmQgbGluZS4gIE90aGVyd2lzZSwgbWlzc2luZwogYDo8ZHN0PmAgbWVhbnMgdG8gdXBkYXRlIHRoZSBzYW1lIHJlZiBhcyB0aGUgYDxzcmM+YC4KICsKK0lmIDxkc3Q+IGRvZXNuJ3Qgc3RhcnQgd2l0aCBgcmVmcy9gIChlLmcuIGByZWZzL2hlYWRzL21hc3RlcmApIHdlIHdpbGwKK3RyeSB0byBpbmZlciB3aGVyZSBpbiBgcmVmcy8qYCBvbiB0aGUgZGVzdGluYXRpb24gPHJlcG9zaXRvcnk+IGl0CitiZWxvbmdzIGJhc2VkIG9uIHRoZSB0eXBlIG9mIDxzcmM+IGJlaW5nIHB1c2hlZCBhbmQgd2hldGhlciA8ZHN0PgoraXMgYW1iaWd1b3VzLgorKworLS0KKyogSWYgPGRzdD4gdW5hbWJpZ3VvdXNseSByZWZlcnMgdG8gYSByZWYgb24gdGhlIDxyZXBvc2l0b3J5PiByZW1vdGUsCisgIHRoZW4gcHVzaCB0byB0aGF0IHJlZi4KKworKiBJZiA8c3JjPiByZXNvbHZlcyB0byBhIHJlZiBzdGFydGluZyB3aXRoIHJlZnMvaGVhZHMvIG9yIHJlZnMvdGFncy8sCisgIHRoZW4gcHJlcGVuZCB0aGF0IHRvIDxkc3Q+LgorCisqIE90aGVyIGFtYmlndWl0eSByZXNvbHV0aW9ucyBtaWdodCBiZSBhZGRlZCBpbiB0aGUgZnV0dXJlLCBidXQgZm9yCisgIG5vdyBhbnkgb3RoZXIgY2FzZXMgd2lsbCBlcnJvciBvdXQgd2l0aCBhbiBlcnJvciBpbmRpY2F0aW5nIHdoYXQgd2UKKyAgdHJpZWQsIGFuZCBkZXBlbmRpbmcgb24gdGhlIGBhZHZpY2UucHVzaFVucXVhbGlmaWVkUmVmbmFtZWAKKyAgY29uZmlndXJhdGlvbiAoc2VlIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXSkgc3VnZ2VzdCB3aGF0IHJlZnMvCisgIG5hbWVzcGFjZSB5b3UgbWF5IGhhdmUgd2FudGVkIHRvIHB1c2ggdG8uCisKKy0tCisrCiBUaGUgb2JqZWN0IHJlZmVyZW5jZWQgYnkgPHNyYz4gaXMgdXNlZCB0byB1cGRhdGUgdGhlIDxkc3Q+IHJlZmVyZW5jZQogb24gdGhlIHJlbW90ZSBzaWRlLiBXaGV0aGVyIHRoaXMgaXMgYWxsb3dlZCBkZXBlbmRzIG9uIHdoZXJlIGluCiBgcmVmcy8qYCB0aGUgPGRzdD4gcmVmZXJlbmNlIGxpdmVzIGFzIGRlc2NyaWJlZCBpbiBkZXRhaWwgYmVsb3csIGluCkBAIC01OTEsNiArNjExLDkgQEAKIAlgcmVmcy9yZW1vdGVzL3NhdGVsbGl0ZS9tYXN0ZXJgKSBpbiB0aGUgYG1vdGhlcnNoaXBgIHJlcG9zaXRvcnk7CiAJZG8gdGhlIHNhbWUgZm9yIGBkZXZgIGFuZCBgc2F0ZWxsaXRlL2RldmAuCiArCitTZWUgdGhlIHNlY3Rpb24gZGVzY3JpYmluZyBgPHJlZnNwZWM+Li4uYCBhYm92ZSBmb3IgYSBkaXNjdXNzaW9uIG9mCit0aGUgbWF0Y2hpbmcgc2VtYW50aWNzLgorKwogVGhpcyBpcyB0byBlbXVsYXRlIGBnaXQgZmV0Y2hgIHJ1biBvbiB0aGUgYG1vdGhlcnNoaXBgIHVzaW5nIGBnaXQKIHB1c2hgIHRoYXQgaXMgcnVuIGluIHRoZSBvcHBvc2l0ZSBkaXJlY3Rpb24gaW4gb3JkZXIgdG8gaW50ZWdyYXRlCiB0aGUgd29yayBkb25lIG9uIGBzYXRlbGxpdGVgLCBhbmQgaXMgb2Z0ZW4gbmVjZXNzYXJ5IHdoZW4geW91IGNhbgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtcXVpbHRpbXBvcnQudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtcXVpbHRpbXBvcnQudHh0CmluZGV4IDhjZjk1MmIuLjcwNTYyZGMgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXF1aWx0aW1wb3J0LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1xdWlsdGltcG9ydC50eHQKQEAgLTEwLDcgKzEwLDcgQEAKIC0tLS0tLS0tCiBbdmVyc2VdCiAnZ2l0IHF1aWx0aW1wb3J0JyBbLS1kcnktcnVuIHwgLW5dIFstLWF1dGhvciA8YXV0aG9yPl0gWy0tcGF0Y2hlcyA8ZGlyPl0KLQkJWy0tc2VyaWVzIDxmaWxlPl0KKwkJWy0tc2VyaWVzIDxmaWxlPl0gWy0ta2VlcC1ub24tcGF0Y2hdCiAKIAogREVTQ1JJUFRJT04KQEAgLTU2LDYgKzU2LDkgQEAKIG9yIHRoZSB2YWx1ZSBvZiB0aGUgYCRRVUlMVF9TRVJJRVNgIGVudmlyb25tZW50CiB2YXJpYWJsZS4KIAorLS1rZWVwLW5vbi1wYXRjaDo6CisJUGFzcyBgLWJgIGZsYWcgdG8gJ2dpdCBtYWlsaW5mbycgKHNlZSBsaW5rZ2l0OmdpdC1tYWlsaW5mb1sxXSkuCisKIEdJVAogLS0tCiBQYXJ0IG9mIHRoZSBsaW5rZ2l0OmdpdFsxXSBzdWl0ZQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtcmFuZ2UtZGlmZi50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1yYW5nZS1kaWZmLnR4dAppbmRleCA4YTZlYTJjLi45NzAxYzFlIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1yYW5nZS1kaWZmLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1yYW5nZS1kaWZmLnR4dApAQCAtNTcsNiArNTcsMTAgQEAKIAlTZWUgdGhlIGBgQWxnb3JpdGhtYGAgc2VjdGlvbiBiZWxvdyBmb3IgYW4gZXhwbGFuYXRpb24gd2h5IHRoaXMgaXMKIAluZWVkZWQuCiAKKy0tW25vLV1ub3Rlc1s9PHJlZj5dOjoKKwlUaGlzIGZsYWcgaXMgcGFzc2VkIHRvIHRoZSBgZ2l0IGxvZ2AgcHJvZ3JhbQorCShzZWUgbGlua2dpdDpnaXQtbG9nWzFdKSB0aGF0IGdlbmVyYXRlcyB0aGUgcGF0Y2hlcy4KKwogPHJhbmdlMT4gPHJhbmdlMj46OgogCUNvbXBhcmUgdGhlIGNvbW1pdHMgc3BlY2lmaWVkIGJ5IHRoZSB0d28gcmFuZ2VzLCB3aGVyZQogCWA8cmFuZ2UxPmAgaXMgY29uc2lkZXJlZCBhbiBvbGRlciB2ZXJzaW9uIG9mIGA8cmFuZ2UyPmAuCkBAIC03NSw3ICs3OSw3IEBACiBsaW5rZ2l0OmdpdC1kaWZmWzFdKSwgbW9zdCBub3RhYmx5IHRoZSBgLS1jb2xvcj1bPHdoZW4+XWAgYW5kCiBgLS1uby1jb2xvcmAgb3B0aW9ucy4gVGhlc2Ugb3B0aW9ucyBhcmUgdXNlZCB3aGVuIGdlbmVyYXRpbmcgdGhlICJkaWZmCiBiZXR3ZWVuIHBhdGNoZXMiLCBpLmUuIHRvIGNvbXBhcmUgdGhlIGF1dGhvciwgY29tbWl0IG1lc3NhZ2UgYW5kIGRpZmYgb2YKLWNvcnJlc3BvbmRpbmcgb2xkL25ldyBjb21taXRzLiBUaGVyZSBpcyBjdXJyZW50bHkgbm8gbWVhbnMgdG8gdHdlYWsgdGhlCitjb3JyZXNwb25kaW5nIG9sZC9uZXcgY29tbWl0cy4gVGhlcmUgaXMgY3VycmVudGx5IG5vIG1lYW5zIHRvIHR3ZWFrIG1vc3Qgb2YgdGhlCiBkaWZmIG9wdGlvbnMgcGFzc2VkIHRvIGBnaXQgbG9nYCB3aGVuIGdlbmVyYXRpbmcgdGhvc2UgcGF0Y2hlcy4KIAogT1VUUFVUIFNUQUJJTElUWQpAQCAtMjQyLDcgKzI0Niw3IEBACiAKIFRoZSBvdmVyYWxsIHRpbWUgbmVlZGVkIHRvIGNvbXB1dGUgdGhpcyBhbGdvcml0aG0gaXMgdGhlIHRpbWUgbmVlZGVkIHRvCiBjb21wdXRlIG4rbSBjb21taXQgZGlmZnMgYW5kIHRoZW4gbiptIGRpZmZzIG9mIHBhdGNoZXMsIHBsdXMgdGhlIHRpbWUKLW5lZWRlZCB0byBjb21wdXRlIHRoZSBsZWFzdC1jb3N0IGFzc2lnbWVudCBiZXR3ZWVuIG4gYW5kIG0gZGlmZnMuIEdpdAorbmVlZGVkIHRvIGNvbXB1dGUgdGhlIGxlYXN0LWNvc3QgYXNzaWdubWVudCBiZXR3ZWVuIG4gYW5kIG0gZGlmZnMuIEdpdAogdXNlcyBhbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgSm9ua2VyLVZvbGdlbmFudCBhbGdvcml0aG0gdG8gc29sdmUgdGhlCiBhc3NpZ25tZW50IHByb2JsZW0sIHdoaWNoIGhhcyBjdWJpYyBydW50aW1lIGNvbXBsZXhpdHkuIFRoZSBtYXRjaGluZwogZm91bmQgaW4gdGhpcyBjYXNlIHdpbGwgbG9vayBsaWtlIHRoaXM6CmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1yZWFkLXRyZWUudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtcmVhZC10cmVlLnR4dAppbmRleCA1YzcwYmMyLi5kYTMzZjg0IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1yZWFkLXRyZWUudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LXJlYWQtdHJlZS50eHQKQEAgLTM4LDggKzM4LDkgQEAKIAlzdGFydGVkLgogCiAtLXJlc2V0OjoKLSAgICAgICAgU2FtZSBhcyAtbSwgZXhjZXB0IHRoYXQgdW5tZXJnZWQgZW50cmllcyBhcmUgZGlzY2FyZGVkCi0gICAgICAgIGluc3RlYWQgb2YgZmFpbGluZy4KKwlTYW1lIGFzIC1tLCBleGNlcHQgdGhhdCB1bm1lcmdlZCBlbnRyaWVzIGFyZSBkaXNjYXJkZWQgaW5zdGVhZAorCW9mIGZhaWxpbmcuIFdoZW4gdXNlZCB3aXRoIGAtdWAsIHVwZGF0ZXMgbGVhZGluZyB0byBsb3NzIG9mCisJd29ya2luZyB0cmVlIGNoYW5nZXMgd2lsbCBub3QgYWJvcnQgdGhlIG9wZXJhdGlvbi4KIAogLXU6OgogCUFmdGVyIGEgc3VjY2Vzc2Z1bCBtZXJnZSwgdXBkYXRlIHRoZSBmaWxlcyBpbiB0aGUgd29yawpAQCAtMTI4LDYgKzEyOSwxMCBAQAogCUluc3RlYWQgb2YgcmVhZGluZyB0cmVlIG9iamVjdChzKSBpbnRvIHRoZSBpbmRleCwganVzdCBlbXB0eQogCWl0LgogCistcTo6CistLXF1aWV0OjoKKwlRdWlldCwgc3VwcHJlc3MgZmVlZGJhY2sgbWVzc2FnZXMuCisKIDx0cmVlLWlzaCM+OjoKIAlUaGUgaWQgb2YgdGhlIHRyZWUgb2JqZWN0KHMpIHRvIGJlIHJlYWQvbWVyZ2VkLgogCkBAIC00MzEsNyArNDM2LDcgQEAKIFNFRSBBTFNPCiAtLS0tLS0tLQogbGlua2dpdDpnaXQtd3JpdGUtdHJlZVsxXTsgbGlua2dpdDpnaXQtbHMtZmlsZXNbMV07Ci1saW5rZ2l0OmdpdGlnbm9yZVs1XQorbGlua2dpdDpnaXRpZ25vcmVbNV07IGxpbmtnaXQ6Z2l0LXNwYXJzZS1jaGVja291dFsxXTsKIAogR0lUCiAtLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXJlYmFzZS50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZWJhc2UudHh0CmluZGV4IGRmZjE3YjMuLmY3YTYwMzMgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXJlYmFzZS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtcmViYXNlLnR4dApAQCAtOCwxNiArOCwxNiBAQAogU1lOT1BTSVMKIC0tLS0tLS0tCiBbdmVyc2VdCi0nZ2l0IHJlYmFzZScgWy1pIHwgLS1pbnRlcmFjdGl2ZV0gWzxvcHRpb25zPl0gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dCi0JWzx1cHN0cmVhbT4gWzxicmFuY2g+XV0KKydnaXQgcmViYXNlJyBbLWkgfCAtLWludGVyYWN0aXZlXSBbPG9wdGlvbnM+XSBbLS1leGVjIDxjbWQ+XQorCVstLW9udG8gPG5ld2Jhc2U+IHwgLS1rZWVwLWJhc2VdIFs8dXBzdHJlYW0+IFs8YnJhbmNoPl1dCiAnZ2l0IHJlYmFzZScgWy1pIHwgLS1pbnRlcmFjdGl2ZV0gWzxvcHRpb25zPl0gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dCiAJLS1yb290IFs8YnJhbmNoPl0KLSdnaXQgcmViYXNlJyAtLWNvbnRpbnVlIHwgLS1za2lwIHwgLS1hYm9ydCB8IC0tcXVpdCB8IC0tZWRpdC10b2RvIHwgLS1zaG93LWN1cnJlbnQtcGF0Y2gKKydnaXQgcmViYXNlJyAoLS1jb250aW51ZSB8IC0tc2tpcCB8IC0tYWJvcnQgfCAtLXF1aXQgfCAtLWVkaXQtdG9kbyB8IC0tc2hvdy1jdXJyZW50LXBhdGNoKQogCiBERVNDUklQVElPTgogLS0tLS0tLS0tLS0KIElmIDxicmFuY2g+IGlzIHNwZWNpZmllZCwgJ2dpdCByZWJhc2UnIHdpbGwgcGVyZm9ybSBhbiBhdXRvbWF0aWMKLWBnaXQgY2hlY2tvdXQgPGJyYW5jaD5gIGJlZm9yZSBkb2luZyBhbnl0aGluZyBlbHNlLiAgT3RoZXJ3aXNlCitgZ2l0IHN3aXRjaCA8YnJhbmNoPmAgYmVmb3JlIGRvaW5nIGFueXRoaW5nIGVsc2UuICBPdGhlcndpc2UKIGl0IHJlbWFpbnMgb24gdGhlIGN1cnJlbnQgYnJhbmNoLgogCiBJZiA8dXBzdHJlYW0+IGlzIG5vdCBzcGVjaWZpZWQsIHRoZSB1cHN0cmVhbSBjb25maWd1cmVkIGluCkBAIC0yMTcsNiArMjE3LDI0IEBACiBtZXJnZSBiYXNlIG9mIEEgYW5kIEIgaWYgdGhlcmUgaXMgZXhhY3RseSBvbmUgbWVyZ2UgYmFzZS4gWW91IGNhbgogbGVhdmUgb3V0IGF0IG1vc3Qgb25lIG9mIEEgYW5kIEIsIGluIHdoaWNoIGNhc2UgaXQgZGVmYXVsdHMgdG8gSEVBRC4KIAorLS1rZWVwLWJhc2U6OgorCVNldCB0aGUgc3RhcnRpbmcgcG9pbnQgYXQgd2hpY2ggdG8gY3JlYXRlIHRoZSBuZXcgY29tbWl0cyB0byB0aGUKKwltZXJnZSBiYXNlIG9mIDx1cHN0cmVhbT4gPGJyYW5jaD4uIFJ1bm5pbmcKKwknZ2l0IHJlYmFzZSAtLWtlZXAtYmFzZSA8dXBzdHJlYW0+IDxicmFuY2g+JyBpcyBlcXVpdmFsZW50IHRvCisJcnVubmluZyAnZ2l0IHJlYmFzZSAtLW9udG8gPHVwc3RyZWFtPi4uLiA8dXBzdHJlYW0+Jy4KKysKK1RoaXMgb3B0aW9uIGlzIHVzZWZ1bCBpbiB0aGUgY2FzZSB3aGVyZSBvbmUgaXMgZGV2ZWxvcGluZyBhIGZlYXR1cmUgb24KK3RvcCBvZiBhbiB1cHN0cmVhbSBicmFuY2guIFdoaWxlIHRoZSBmZWF0dXJlIGlzIGJlaW5nIHdvcmtlZCBvbiwgdGhlCit1cHN0cmVhbSBicmFuY2ggbWF5IGFkdmFuY2UgYW5kIGl0IG1heSBub3QgYmUgdGhlIGJlc3QgaWRlYSB0byBrZWVwCityZWJhc2luZyBvbiB0b3Agb2YgdGhlIHVwc3RyZWFtIGJ1dCB0byBrZWVwIHRoZSBiYXNlIGNvbW1pdCBhcy1pcy4KKysKK0FsdGhvdWdoIGJvdGggdGhpcyBvcHRpb24gYW5kIC0tZm9yay1wb2ludCBmaW5kIHRoZSBtZXJnZSBiYXNlIGJldHdlZW4KKzx1cHN0cmVhbT4gYW5kIDxicmFuY2g+LCB0aGlzIG9wdGlvbiB1c2VzIHRoZSBtZXJnZSBiYXNlIGFzIHRoZSBfc3RhcnRpbmcKK3BvaW50XyBvbiB3aGljaCBuZXcgY29tbWl0cyB3aWxsIGJlIGNyZWF0ZWQsIHdoZXJlYXMgLS1mb3JrLXBvaW50IHVzZXMKK3RoZSBtZXJnZSBiYXNlIHRvIGRldGVybWluZSB0aGUgX3NldCBvZiBjb21taXRzXyB3aGljaCB3aWxsIGJlIHJlYmFzZWQuCisrCitTZWUgYWxzbyBJTkNPTVBBVElCTEUgT1BUSU9OUyBiZWxvdy4KKwogPHVwc3RyZWFtPjo6CiAJVXBzdHJlYW0gYnJhbmNoIHRvIGNvbXBhcmUgYWdhaW5zdC4gIE1heSBiZSBhbnkgdmFsaWQgY29tbWl0LAogCW5vdCBqdXN0IGFuIGV4aXN0aW5nIGJyYW5jaCBuYW1lLiBEZWZhdWx0cyB0byB0aGUgY29uZmlndXJlZApAQCAtMjQwLDE2ICsyNTgsNDUgQEAKIAlvcmlnaW5hbCBicmFuY2guIFRoZSBpbmRleCBhbmQgd29ya2luZyB0cmVlIGFyZSBhbHNvIGxlZnQKIAl1bmNoYW5nZWQgYXMgYSByZXN1bHQuCiAKLS0ta2VlcC1lbXB0eTo6Ci0JS2VlcCB0aGUgY29tbWl0cyB0aGF0IGRvIG5vdCBjaGFuZ2UgYW55dGhpbmcgZnJvbSBpdHMKLQlwYXJlbnRzIGluIHRoZSByZXN1bHQuCistLWFwcGx5OgorCVVzZSBhcHBseWluZyBzdHJhdGVnaWVzIHRvIHJlYmFzZSAoY2FsbGluZyBgZ2l0LWFtYAorCWludGVybmFsbHkpLiAgVGhpcyBvcHRpb24gbWF5IGJlY29tZSBhIG5vLW9wIGluIHRoZSBmdXR1cmUKKwlvbmNlIHRoZSBtZXJnZSBiYWNrZW5kIGhhbmRsZXMgZXZlcnl0aGluZyB0aGUgYXBwbHkgb25lIGRvZXMuCiArCiBTZWUgYWxzbyBJTkNPTVBBVElCTEUgT1BUSU9OUyBiZWxvdy4KIAorLS1lbXB0eT17ZHJvcCxrZWVwLGFza306OgorCUhvdyB0byBoYW5kbGUgY29tbWl0cyB0aGF0IGFyZSBub3QgZW1wdHkgdG8gc3RhcnQgYW5kIGFyZSBub3QKKwljbGVhbiBjaGVycnktcGlja3Mgb2YgYW55IHVwc3RyZWFtIGNvbW1pdCwgYnV0IHdoaWNoIGJlY29tZQorCWVtcHR5IGFmdGVyIHJlYmFzaW5nIChiZWNhdXNlIHRoZXkgY29udGFpbiBhIHN1YnNldCBvZiBhbHJlYWR5CisJdXBzdHJlYW0gY2hhbmdlcykuICBXaXRoIGRyb3AgKHRoZSBkZWZhdWx0KSwgY29tbWl0cyB0aGF0CisJYmVjb21lIGVtcHR5IGFyZSBkcm9wcGVkLiAgV2l0aCBrZWVwLCBzdWNoIGNvbW1pdHMgYXJlIGtlcHQuCisJV2l0aCBhc2sgKGltcGxpZWQgYnkgLS1pbnRlcmFjdGl2ZSksIHRoZSByZWJhc2Ugd2lsbCBoYWx0IHdoZW4KKwlhbiBlbXB0eSBjb21taXQgaXMgYXBwbGllZCBhbGxvd2luZyB5b3UgdG8gY2hvb3NlIHdoZXRoZXIgdG8KKwlkcm9wIGl0LCBlZGl0IGZpbGVzIG1vcmUsIG9yIGp1c3QgY29tbWl0IHRoZSBlbXB0eSBjaGFuZ2VzLgorCU90aGVyIG9wdGlvbnMsIGxpa2UgLS1leGVjLCB3aWxsIHVzZSB0aGUgZGVmYXVsdCBvZiBkcm9wIHVubGVzcworCS1pLy0taW50ZXJhY3RpdmUgaXMgZXhwbGljaXRseSBzcGVjaWZpZWQuCisrCitOb3RlIHRoYXQgY29tbWl0cyB3aGljaCBzdGFydCBlbXB0eSBhcmUga2VwdCwgYW5kIGNvbW1pdHMgd2hpY2ggYXJlCitjbGVhbiBjaGVycnktcGlja3MgKGFzIGRldGVybWluZWQgYnkgYGdpdCBsb2cgLS1jaGVycnktbWFyayAuLi5gKSBhcmUKK2Fsd2F5cyBkcm9wcGVkLgorKworU2VlIGFsc28gSU5DT01QQVRJQkxFIE9QVElPTlMgYmVsb3cuCisKKy0ta2VlcC1lbXB0eTo6CisJTm8tb3AuICBSZWJhc2luZyBjb21taXRzIHRoYXQgc3RhcnRlZCBlbXB0eSAoaGFkIG5vIGNoYW5nZQorCXJlbGF0aXZlIHRvIHRoZWlyIHBhcmVudCkgdXNlZCB0byBmYWlsIGFuZCB0aGlzIG9wdGlvbiB3b3VsZAorCW92ZXJyaWRlIHRoYXQgYmVoYXZpb3IsIGFsbG93aW5nIGNvbW1pdHMgd2l0aCBlbXB0eSBjaGFuZ2VzIHRvCisJYmUgcmViYXNlZC4gIE5vdyBjb21taXRzIHdpdGggbm8gY2hhbmdlcyBkbyBub3QgY2F1c2UgcmViYXNpbmcKKwl0byBoYWx0LgorKworU2VlIGFsc28gQkVIQVZJT1JBTCBESUZGRVJFTkNFUyBhbmQgSU5DT01QQVRJQkxFIE9QVElPTlMgYmVsb3cuCisKIC0tYWxsb3ctZW1wdHktbWVzc2FnZTo6Ci0JQnkgZGVmYXVsdCwgcmViYXNpbmcgY29tbWl0cyB3aXRoIGFuIGVtcHR5IG1lc3NhZ2Ugd2lsbCBmYWlsLgotCVRoaXMgb3B0aW9uIG92ZXJyaWRlcyB0aGF0IGJlaGF2aW9yLCBhbGxvd2luZyBjb21taXRzIHdpdGggZW1wdHkKLQltZXNzYWdlcyB0byBiZSByZWJhc2VkLgorCU5vLW9wLiAgUmViYXNpbmcgY29tbWl0cyB3aXRoIGFuIGVtcHR5IG1lc3NhZ2UgdXNlZCB0byBmYWlsCisJYW5kIHRoaXMgb3B0aW9uIHdvdWxkIG92ZXJyaWRlIHRoYXQgYmVoYXZpb3IsIGFsbG93aW5nIGNvbW1pdHMKKwl3aXRoIGVtcHR5IG1lc3NhZ2VzIHRvIGJlIHJlYmFzZWQuICBOb3cgY29tbWl0cyB3aXRoIGFuIGVtcHR5CisJbWVzc2FnZSBkbyBub3QgY2F1c2UgcmViYXNpbmcgdG8gaGFsdC4KICsKIFNlZSBhbHNvIElOQ09NUEFUSUJMRSBPUFRJT05TIGJlbG93LgogCkBAIC0yNjgsNyArMzE1LDcgQEAKIC0tbWVyZ2U6OgogCVVzZSBtZXJnaW5nIHN0cmF0ZWdpZXMgdG8gcmViYXNlLiAgV2hlbiB0aGUgcmVjdXJzaXZlIChkZWZhdWx0KSBtZXJnZQogCXN0cmF0ZWd5IGlzIHVzZWQsIHRoaXMgYWxsb3dzIHJlYmFzZSB0byBiZSBhd2FyZSBvZiByZW5hbWVzIG9uIHRoZQotCXVwc3RyZWFtIHNpZGUuCisJdXBzdHJlYW0gc2lkZS4gIFRoaXMgaXMgdGhlIGRlZmF1bHQuCiArCiBOb3RlIHRoYXQgYSByZWJhc2UgbWVyZ2Ugd29ya3MgYnkgcmVwbGF5aW5nIGVhY2ggY29tbWl0IGZyb20gdGhlIHdvcmtpbmcKIGJyYW5jaCBvbiB0b3Agb2YgdGhlIDx1cHN0cmVhbT4gYnJhbmNoLiAgQmVjYXVzZSBvZiB0aGlzLCB3aGVuIGEgbWVyZ2UKQEAgLTMwMCw2ICszNDcsMTEgQEAKICsKIFNlZSBhbHNvIElOQ09NUEFUSUJMRSBPUFRJT05TIGJlbG93LgogCistLXJlcmVyZS1hdXRvdXBkYXRlOjoKKy0tbm8tcmVyZXJlLWF1dG91cGRhdGU6OgorCUFsbG93IHRoZSByZXJlcmUgbWVjaGFuaXNtIHRvIHVwZGF0ZSB0aGUgaW5kZXggd2l0aCB0aGUKKwlyZXN1bHQgb2YgYXV0by1jb25mbGljdCByZXNvbHV0aW9uIGlmIHBvc3NpYmxlLgorCiAtU1s8a2V5aWQ+XTo6CiAtLWdwZy1zaWduWz08a2V5aWQ+XTo6CiAJR1BHLXNpZ24gY29tbWl0cy4gVGhlIGBrZXlpZGAgYXJndW1lbnQgaXMgb3B0aW9uYWwgYW5kCkBAIC0zMzMsNyArMzg1LDcgQEAKIAlFbnN1cmUgYXQgbGVhc3QgPG4+IGxpbmVzIG9mIHN1cnJvdW5kaW5nIGNvbnRleHQgbWF0Y2ggYmVmb3JlCiAJYW5kIGFmdGVyIGVhY2ggY2hhbmdlLiAgV2hlbiBmZXdlciBsaW5lcyBvZiBzdXJyb3VuZGluZwogCWNvbnRleHQgZXhpc3QgdGhleSBhbGwgbXVzdCBtYXRjaC4gIEJ5IGRlZmF1bHQgbm8gY29udGV4dCBpcwotCWV2ZXIgaWdub3JlZC4KKwlldmVyIGlnbm9yZWQuICBJbXBsaWVzIC0tYXBwbHkuCiArCiBTZWUgYWxzbyBJTkNPTVBBVElCTEUgT1BUSU9OUyBiZWxvdy4KIApAQCAtMzY0LDExICs0MTYsMTYgQEAKICsKIElmIGVpdGhlciA8dXBzdHJlYW0+IG9yIC0tcm9vdCBpcyBnaXZlbiBvbiB0aGUgY29tbWFuZCBsaW5lLCB0aGVuIHRoZQogZGVmYXVsdCBpcyBgLS1uby1mb3JrLXBvaW50YCwgb3RoZXJ3aXNlIHRoZSBkZWZhdWx0IGlzIGAtLWZvcmstcG9pbnRgLgorKworSWYgeW91ciBicmFuY2ggd2FzIGJhc2VkIG9uIDx1cHN0cmVhbT4gYnV0IDx1cHN0cmVhbT4gd2FzIHJld291bmQgYW5kCit5b3VyIGJyYW5jaCBjb250YWlucyBjb21taXRzIHdoaWNoIHdlcmUgZHJvcHBlZCwgdGhpcyBvcHRpb24gY2FuIGJlIHVzZWQKK3dpdGggYC0ta2VlcC1iYXNlYCBpbiBvcmRlciB0byBkcm9wIHRob3NlIGNvbW1pdHMgZnJvbSB5b3VyIGJyYW5jaC4KIAogLS1pZ25vcmUtd2hpdGVzcGFjZTo6CiAtLXdoaXRlc3BhY2U9PG9wdGlvbj46OgotCVRoZXNlIGZsYWcgYXJlIHBhc3NlZCB0byB0aGUgJ2dpdCBhcHBseScgcHJvZ3JhbQorCVRoZXNlIGZsYWdzIGFyZSBwYXNzZWQgdG8gdGhlICdnaXQgYXBwbHknIHByb2dyYW0KIAkoc2VlIGxpbmtnaXQ6Z2l0LWFwcGx5WzFdKSB0aGF0IGFwcGxpZXMgdGhlIHBhdGNoLgorCUltcGxpZXMgLS1hcHBseS4KICsKIFNlZSBhbHNvIElOQ09NUEFUSUJMRSBPUFRJT05TIGJlbG93LgogCkBAIC00MTAsMTQgKzQ2NywxNCBAQAogKwogQnkgZGVmYXVsdCwgb3Igd2hlbiBgbm8tcmViYXNlLWNvdXNpbnNgIHdhcyBzcGVjaWZpZWQsIGNvbW1pdHMgd2hpY2ggZG8gbm90CiBoYXZlIGA8dXBzdHJlYW0+YCBhcyBkaXJlY3QgYW5jZXN0b3Igd2lsbCBrZWVwIHRoZWlyIG9yaWdpbmFsIGJyYW5jaCBwb2ludCwKLWkuZS4gY29tbWl0cyB0aGF0IHdvdWxkIGJlIGV4Y2x1ZGVkIGJ5IGdpdGxpbms6Z2l0LWxvZ1sxXSdzCitpLmUuIGNvbW1pdHMgdGhhdCB3b3VsZCBiZSBleGNsdWRlZCBieSBsaW5rZ2l0OmdpdC1sb2dbMV0ncwogYC0tYW5jZXN0cnktcGF0aGAgb3B0aW9uIHdpbGwga2VlcCB0aGVpciBvcmlnaW5hbCBhbmNlc3RyeSBieSBkZWZhdWx0LiBJZgogdGhlIGByZWJhc2UtY291c2luc2AgbW9kZSBpcyB0dXJuZWQgb24sIHN1Y2ggY29tbWl0cyBhcmUgaW5zdGVhZCByZWJhc2VkCiBvbnRvIGA8dXBzdHJlYW0+YCAob3IgYDxvbnRvPmAsIGlmIHNwZWNpZmllZCkuCiArCi1UaGUgYC0tcmViYXNlLW1lcmdlc2AgbW9kZSBpcyBzaW1pbGFyIGluIHNwaXJpdCB0byBgLS1wcmVzZXJ2ZS1tZXJnZXNgLCBidXQKLWluIGNvbnRyYXN0IHRvIHRoYXQgb3B0aW9uIHdvcmtzIHdlbGwgaW4gaW50ZXJhY3RpdmUgcmViYXNlczogY29tbWl0cyBjYW4gYmUKLXJlb3JkZXJlZCwgaW5zZXJ0ZWQgYW5kIGRyb3BwZWQgYXQgd2lsbC4KK1RoZSBgLS1yZWJhc2UtbWVyZ2VzYCBtb2RlIGlzIHNpbWlsYXIgaW4gc3Bpcml0IHRvIHRoZSBkZXByZWNhdGVkCitgLS1wcmVzZXJ2ZS1tZXJnZXNgIGJ1dCB3b3JrcyB3aXRoIGludGVyYWN0aXZlIHJlYmFzZXMsCit3aGVyZSBjb21taXRzIGNhbiBiZSByZW9yZGVyZWQsIGluc2VydGVkIGFuZCBkcm9wcGVkIGF0IHdpbGwuCiArCiBJdCBpcyBjdXJyZW50bHkgb25seSBwb3NzaWJsZSB0byByZWNyZWF0ZSB0aGUgbWVyZ2UgY29tbWl0cyB1c2luZyB0aGUKIGByZWN1cnNpdmVgIG1lcmdlIHN0cmF0ZWd5OyBEaWZmZXJlbnQgbWVyZ2Ugc3RyYXRlZ2llcyBjYW4gYmUgdXNlZCBvbmx5IHZpYQpAQCAtNDI3LDkgKzQ4NCwxMCBAQAogCiAtcDo6CiAtLXByZXNlcnZlLW1lcmdlczo6Ci0JUmVjcmVhdGUgbWVyZ2UgY29tbWl0cyBpbnN0ZWFkIG9mIGZsYXR0ZW5pbmcgdGhlIGhpc3RvcnkgYnkgcmVwbGF5aW5nCi0JY29tbWl0cyBhIG1lcmdlIGNvbW1pdCBpbnRyb2R1Y2VzLiBNZXJnZSBjb25mbGljdCByZXNvbHV0aW9ucyBvciBtYW51YWwKLQlhbWVuZG1lbnRzIHRvIG1lcmdlIGNvbW1pdHMgYXJlIG5vdCBwcmVzZXJ2ZWQuCisJW0RFUFJFQ0FURUQ6IHVzZSBgLS1yZWJhc2UtbWVyZ2VzYCBpbnN0ZWFkXSBSZWNyZWF0ZSBtZXJnZSBjb21taXRzCisJaW5zdGVhZCBvZiBmbGF0dGVuaW5nIHRoZSBoaXN0b3J5IGJ5IHJlcGxheWluZyBjb21taXRzIGEgbWVyZ2UgY29tbWl0CisJaW50cm9kdWNlcy4gTWVyZ2UgY29uZmxpY3QgcmVzb2x1dGlvbnMgb3IgbWFudWFsIGFtZW5kbWVudHMgdG8gbWVyZ2UKKwljb21taXRzIGFyZSBub3QgcHJlc2VydmVkLgogKwogVGhpcyB1c2VzIHRoZSBgLS1pbnRlcmFjdGl2ZWAgbWFjaGluZXJ5IGludGVybmFsbHksIGJ1dCBjb21iaW5pbmcgaXQKIHdpdGggdGhlIGAtLWludGVyYWN0aXZlYCBvcHRpb24gZXhwbGljaXRseSBpcyBnZW5lcmFsbHkgbm90IGEgZ29vZApAQCAtNTAxLDc3ICs1NTksMTc1IEBACiAJd2l0aCBjYXJlOiB0aGUgZmluYWwgc3Rhc2ggYXBwbGljYXRpb24gYWZ0ZXIgYSBzdWNjZXNzZnVsCiAJcmViYXNlIG1pZ2h0IHJlc3VsdCBpbiBub24tdHJpdmlhbCBjb25mbGljdHMuCiAKKy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYzo6CistLW5vLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWM6OgorCUF1dG9tYXRpY2FsbHkgcmVzY2hlZHVsZSBgZXhlY2AgY29tbWFuZHMgdGhhdCBmYWlsZWQuIFRoaXMgb25seSBtYWtlcworCXNlbnNlIGluIGludGVyYWN0aXZlIG1vZGUgKG9yIHdoZW4gYW4gYC0tZXhlY2Agb3B0aW9uIHdhcyBwcm92aWRlZCkuCisKIElOQ09NUEFUSUJMRSBPUFRJT05TCiAtLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1naXQtcmViYXNlIGhhcyBtYW55IGZsYWdzIHRoYXQgYXJlIGluY29tcGF0aWJsZSB3aXRoIGVhY2ggb3RoZXIsCi1wcmVkb21pbmFudGx5IGR1ZSB0byB0aGUgZmFjdCB0aGF0IGl0IGhhcyB0aHJlZSBkaWZmZXJlbnQgdW5kZXJseWluZwotaW1wbGVtZW50YXRpb25zOgorVGhlIGZvbGxvd2luZyBvcHRpb25zOgogCi0gKiBvbmUgYmFzZWQgb24gbGlua2dpdDpnaXQtYW1bMV0gKHRoZSBkZWZhdWx0KQotICogb25lIGJhc2VkIG9uIGdpdC1tZXJnZS1yZWN1cnNpdmUgKG1lcmdlIGJhY2tlbmQpCi0gKiBvbmUgYmFzZWQgb24gbGlua2dpdDpnaXQtY2hlcnJ5LXBpY2tbMV0gKGludGVyYWN0aXZlIGJhY2tlbmQpCi0KLUZsYWdzIG9ubHkgdW5kZXJzdG9vZCBieSB0aGUgYW0gYmFja2VuZDoKLQorICogLS1hcHBseQogICogLS1jb21taXR0ZXItZGF0ZS1pcy1hdXRob3ItZGF0ZQogICogLS1pZ25vcmUtZGF0ZQotICogLS13aGl0ZXNwYWNlCiAgKiAtLWlnbm9yZS13aGl0ZXNwYWNlCisgKiAtLXdoaXRlc3BhY2UKICAqIC1DCiAKLUZsYWdzIHVuZGVyc3Rvb2QgYnkgYm90aCBtZXJnZSBhbmQgaW50ZXJhY3RpdmUgYmFja2VuZHM6CithcmUgaW5jb21wYXRpYmxlIHdpdGggdGhlIGZvbGxvd2luZyBvcHRpb25zOgogCiAgKiAtLW1lcmdlCiAgKiAtLXN0cmF0ZWd5CiAgKiAtLXN0cmF0ZWd5LW9wdGlvbgogICogLS1hbGxvdy1lbXB0eS1tZXNzYWdlCi0KLUZsYWdzIG9ubHkgdW5kZXJzdG9vZCBieSB0aGUgaW50ZXJhY3RpdmUgYmFja2VuZDoKLQogICogLS1bbm8tXWF1dG9zcXVhc2gKICAqIC0tcmViYXNlLW1lcmdlcwogICogLS1wcmVzZXJ2ZS1tZXJnZXMKICAqIC0taW50ZXJhY3RpdmUKICAqIC0tZXhlYwogICogLS1rZWVwLWVtcHR5Ci0gKiAtLWF1dG9zcXVhc2gKKyAqIC0tZW1wdHk9CiAgKiAtLWVkaXQtdG9kbwogICogLS1yb290IHdoZW4gdXNlZCBpbiBjb21iaW5hdGlvbiB3aXRoIC0tb250bwogCi1PdGhlciBpbmNvbXBhdGlibGUgZmxhZyBwYWlyczoKK0luIGFkZGl0aW9uLCB0aGUgZm9sbG93aW5nIHBhaXJzIG9mIG9wdGlvbnMgYXJlIGluY29tcGF0aWJsZToKIAogICogLS1wcmVzZXJ2ZS1tZXJnZXMgYW5kIC0taW50ZXJhY3RpdmUKICAqIC0tcHJlc2VydmUtbWVyZ2VzIGFuZCAtLXNpZ25vZmYKICAqIC0tcHJlc2VydmUtbWVyZ2VzIGFuZCAtLXJlYmFzZS1tZXJnZXMKLSAqIC0tcmViYXNlLW1lcmdlcyBhbmQgLS1zdHJhdGVneQotICogLS1yZWJhc2UtbWVyZ2VzIGFuZCAtLXN0cmF0ZWd5LW9wdGlvbgorICogLS1wcmVzZXJ2ZS1tZXJnZXMgYW5kIC0tZW1wdHk9CisgKiAtLWtlZXAtYmFzZSBhbmQgLS1vbnRvCisgKiAtLWtlZXAtYmFzZSBhbmQgLS1yb290CiAKIEJFSEFWSU9SQUwgRElGRkVSRU5DRVMKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLVRoZXJlIGFyZSBzb21lIHN1YnRsZSBkaWZmZXJlbmNlcyBob3cgdGhlIGJhY2tlbmRzIGJlaGF2ZS4KK2dpdCByZWJhc2UgaGFzIHR3byBwcmltYXJ5IGJhY2tlbmRzOiBhcHBseSBhbmQgbWVyZ2UuICAoVGhlIGFwcGx5CitiYWNrZW5kIHVzZWQgdG8ga25vd24gYXMgdGhlICdhbScgYmFja2VuZCwgYnV0IHRoZSBuYW1lIGxlZCB0bworY29uZnVzaW9uIGFzIGl0IGxvb2tzIGxpa2UgYSB2ZXJiIGluc3RlYWQgb2YgYSBub3VuLiAgQWxzbywgdGhlIG1lcmdlCitiYWNrZW5kIHVzZWQgdG8gYmUga25vd24gYXMgdGhlIGludGVyYWN0aXZlIGJhY2tlbmQsIGJ1dCBpdCBpcyBub3cKK3VzZWQgZm9yIG5vbi1pbnRlcmFjdGl2ZSBjYXNlcyBhcyB3ZWxsLiAgQm90aCB3ZXJlIHJlbmFtZWQgYmFzZWQgb24KK2xvd2VyLWxldmVsIGZ1bmN0aW9uYWxpdHkgdGhhdCB1bmRlcnBpbm5lZCBlYWNoLikgVGhlcmUgYXJlIHNvbWUKK3N1YnRsZSBkaWZmZXJlbmNlcyBpbiBob3cgdGhlc2UgdHdvIGJhY2tlbmRzIGJlaGF2ZToKIAogRW1wdHkgY29tbWl0cwogfn5+fn5+fn5+fn5+fgogCi1UaGUgYW0gYmFja2VuZCBkcm9wcyBhbnkgImVtcHR5IiBjb21taXRzLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlCi1jb21taXQgc3RhcnRlZCBlbXB0eSAoaGFkIG5vIGNoYW5nZXMgcmVsYXRpdmUgdG8gaXRzIHBhcmVudCB0bwotc3RhcnQgd2l0aCkgb3IgZW5kZWQgZW1wdHkgKGFsbCBjaGFuZ2VzIHdlcmUgYWxyZWFkeSBhcHBsaWVkCi11cHN0cmVhbSBpbiBvdGhlciBjb21taXRzKS4KK1RoZSBhcHBseSBiYWNrZW5kIHVuZm9ydHVuYXRlbHkgZHJvcHMgaW50ZW50aW9uYWxseSBlbXB0eSBjb21taXRzLCBpLmUuCitjb21taXRzIHRoYXQgc3RhcnRlZCBlbXB0eSwgdGhvdWdoIHRoZXNlIGFyZSByYXJlIGluIHByYWN0aWNlLiAgSXQKK2Fsc28gZHJvcHMgY29tbWl0cyB0aGF0IGJlY29tZSBlbXB0eSBhbmQgaGFzIG5vIG9wdGlvbiBmb3IgY29udHJvbGxpbmcKK3RoaXMgYmVoYXZpb3IuCiAKLVRoZSBtZXJnZSBiYWNrZW5kIGRvZXMgdGhlIHNhbWUuCi0KLVRoZSBpbnRlcmFjdGl2ZSBiYWNrZW5kIGRyb3BzIGNvbW1pdHMgYnkgZGVmYXVsdCB0aGF0Ci1zdGFydGVkIGVtcHR5IGFuZCBoYWx0cyBpZiBpdCBoaXRzIGEgY29tbWl0IHRoYXQgZW5kZWQgdXAgZW1wdHkuCi1UaGUgYC0ta2VlcC1lbXB0eWAgb3B0aW9uIGV4aXN0cyBmb3IgdGhlIGludGVyYWN0aXZlIGJhY2tlbmQgdG8gYWxsb3cKLWl0IHRvIGtlZXAgY29tbWl0cyB0aGF0IHN0YXJ0ZWQgZW1wdHkuCitUaGUgbWVyZ2UgYmFja2VuZCBrZWVwcyBpbnRlbnRpb25hbGx5IGVtcHR5IGNvbW1pdHMuICBTaW1pbGFyIHRvIHRoZQorYXBwbHkgYmFja2VuZCwgYnkgZGVmYXVsdCB0aGUgbWVyZ2UgYmFja2VuZCBkcm9wcyBjb21taXRzIHRoYXQgYmVjb21lCitlbXB0eSB1bmxlc3MgLWkvLS1pbnRlcmFjdGl2ZSBpcyBzcGVjaWZpZWQgKGluIHdoaWNoIGNhc2UgaXQgc3RvcHMgYW5kCithc2tzIHRoZSB1c2VyIHdoYXQgdG8gZG8pLiAgVGhlIG1lcmdlIGJhY2tlbmQgYWxzbyBoYXMgYW4KKy0tZW1wdHk9e2Ryb3Asa2VlcCxhc2t9IG9wdGlvbiBmb3IgY2hhbmdpbmcgdGhlIGJlaGF2aW9yIG9mIGhhbmRsaW5nCitjb21taXRzIHRoYXQgYmVjb21lIGVtcHR5LgogCiBEaXJlY3RvcnkgcmVuYW1lIGRldGVjdGlvbgogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIAotVGhlIG1lcmdlIGFuZCBpbnRlcmFjdGl2ZSBiYWNrZW5kcyB3b3JrIGZpbmUgd2l0aAotZGlyZWN0b3J5IHJlbmFtZSBkZXRlY3Rpb24uICBUaGUgYW0gYmFja2VuZCBzb21ldGltZXMgZG9lcyBub3QuCitEdWUgdG8gdGhlIGxhY2sgb2YgYWNjdXJhdGUgdHJlZSBpbmZvcm1hdGlvbiAoYXJpc2luZyBmcm9tCitjb25zdHJ1Y3RpbmcgZmFrZSBhbmNlc3RvcnMgd2l0aCB0aGUgbGltaXRlZCBpbmZvcm1hdGlvbiBhdmFpbGFibGUgaW4KK3BhdGNoZXMpLCBkaXJlY3RvcnkgcmVuYW1lIGRldGVjdGlvbiBpcyBkaXNhYmxlZCBpbiB0aGUgYXBwbHkgYmFja2VuZC4KK0Rpc2FibGVkIGRpcmVjdG9yeSByZW5hbWUgZGV0ZWN0aW9uIG1lYW5zIHRoYXQgaWYgb25lIHNpZGUgb2YgaGlzdG9yeQorcmVuYW1lcyBhIGRpcmVjdG9yeSBhbmQgdGhlIG90aGVyIGFkZHMgbmV3IGZpbGVzIHRvIHRoZSBvbGQgZGlyZWN0b3J5LAordGhlbiB0aGUgbmV3IGZpbGVzIHdpbGwgYmUgbGVmdCBiZWhpbmQgaW4gdGhlIG9sZCBkaXJlY3Rvcnkgd2l0aG91dAorYW55IHdhcm5pbmcgYXQgdGhlIHRpbWUgb2YgcmViYXNpbmcgdGhhdCB5b3UgbWF5IHdhbnQgdG8gbW92ZSB0aGVzZQorZmlsZXMgaW50byB0aGUgbmV3IGRpcmVjdG9yeS4KKworRGlyZWN0b3J5IHJlbmFtZSBkZXRlY3Rpb24gd29ya3Mgd2l0aCB0aGUgbWVyZ2UgYmFja2VuZCB0byBwcm92aWRlIHlvdQord2FybmluZ3MgaW4gc3VjaCBjYXNlcy4KKworQ29udGV4dAorfn5+fn5+fgorCitUaGUgYXBwbHkgYmFja2VuZCB3b3JrcyBieSBjcmVhdGluZyBhIHNlcXVlbmNlIG9mIHBhdGNoZXMgKGJ5IGNhbGxpbmcKK2Bmb3JtYXQtcGF0Y2hgIGludGVybmFsbHkpLCBhbmQgdGhlbiBhcHBseWluZyB0aGUgcGF0Y2hlcyBpbiBzZXF1ZW5jZQorKGNhbGxpbmcgYGFtYCBpbnRlcm5hbGx5KS4gIFBhdGNoZXMgYXJlIGNvbXBvc2VkIG9mIG11bHRpcGxlIGh1bmtzLAorZWFjaCB3aXRoIGxpbmUgbnVtYmVycywgYSBjb250ZXh0IHJlZ2lvbiwgYW5kIHRoZSBhY3R1YWwgY2hhbmdlcy4gIFRoZQorbGluZSBudW1iZXJzIGhhdmUgdG8gYmUgdGFrZW4gd2l0aCBzb21lIGZ1enosIHNpbmNlIHRoZSBvdGhlciBzaWRlCit3aWxsIGxpa2VseSBoYXZlIGluc2VydGVkIG9yIGRlbGV0ZWQgbGluZXMgZWFybGllciBpbiB0aGUgZmlsZS4gIFRoZQorY29udGV4dCByZWdpb24gaXMgbWVhbnQgdG8gaGVscCBmaW5kIGhvdyB0byBhZGp1c3QgdGhlIGxpbmUgbnVtYmVycyBpbgorb3JkZXIgdG8gYXBwbHkgdGhlIGNoYW5nZXMgdG8gdGhlIHJpZ2h0IGxpbmVzLiAgSG93ZXZlciwgaWYgbXVsdGlwbGUKK2FyZWFzIG9mIHRoZSBjb2RlIGhhdmUgdGhlIHNhbWUgc3Vycm91bmRpbmcgbGluZXMgb2YgY29udGV4dCwgdGhlCit3cm9uZyBvbmUgY2FuIGJlIHBpY2tlZC4gIFRoZXJlIGFyZSByZWFsLXdvcmxkIGNhc2VzIHdoZXJlIHRoaXMgaGFzCitjYXVzZWQgY29tbWl0cyB0byBiZSByZWFwcGxpZWQgaW5jb3JyZWN0bHkgd2l0aCBubyBjb25mbGljdHMgcmVwb3J0ZWQuCitTZXR0aW5nIGRpZmYuY29udGV4dCB0byBhIGxhcmdlciB2YWx1ZSBtYXkgcHJldmVudCBzdWNoIHR5cGVzIG9mCitwcm9ibGVtcywgYnV0IGluY3JlYXNlcyB0aGUgY2hhbmNlIG9mIHNwdXJpb3VzIGNvbmZsaWN0cyAoc2luY2UgaXQKK3dpbGwgcmVxdWlyZSBtb3JlIGxpbmVzIG9mIG1hdGNoaW5nIGNvbnRleHQgdG8gYXBwbHkpLgorCitUaGUgbWVyZ2UgYmFja2VuZCB3b3JrcyB3aXRoIGEgZnVsbCBjb3B5IG9mIGVhY2ggcmVsZXZhbnQgZmlsZSwKK2luc3VsYXRpbmcgaXQgZnJvbSB0aGVzZSB0eXBlcyBvZiBwcm9ibGVtcy4KKworTGFiZWxsaW5nIG9mIGNvbmZsaWN0cyBtYXJrZXJzCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKworV2hlbiB0aGVyZSBhcmUgY29udGVudCBjb25mbGljdHMsIHRoZSBtZXJnZSBtYWNoaW5lcnkgdHJpZXMgdG8KK2Fubm90YXRlIGVhY2ggc2lkZSdzIGNvbmZsaWN0IG1hcmtlcnMgd2l0aCB0aGUgY29tbWl0cyB3aGVyZSB0aGUKK2NvbnRlbnQgY2FtZSBmcm9tLiAgU2luY2UgdGhlIGFwcGx5IGJhY2tlbmQgZHJvcHMgdGhlIG9yaWdpbmFsCitpbmZvcm1hdGlvbiBhYm91dCB0aGUgcmViYXNlZCBjb21taXRzIGFuZCB0aGVpciBwYXJlbnRzIChhbmQgaW5zdGVhZAorZ2VuZXJhdGVzIG5ldyBmYWtlIGNvbW1pdHMgYmFzZWQgb2ZmIGxpbWl0ZWQgaW5mb3JtYXRpb24gaW4gdGhlCitnZW5lcmF0ZWQgcGF0Y2hlcyksIHRob3NlIGNvbW1pdHMgY2Fubm90IGJlIGlkZW50aWZpZWQ7IGluc3RlYWQgaXQgaGFzCit0byBmYWxsIGJhY2sgdG8gYSBjb21taXQgc3VtbWFyeS4gIEFsc28sIHdoZW4gbWVyZ2UuY29uZmxpY3RTdHlsZSBpcworc2V0IHRvIGRpZmYzLCB0aGUgYXBwbHkgYmFja2VuZCB3aWxsIHVzZSAiY29uc3RydWN0ZWQgbWVyZ2UgYmFzZSIgdG8KK2xhYmVsIHRoZSBjb250ZW50IGZyb20gdGhlIG1lcmdlIGJhc2UsIGFuZCB0aHVzIHByb3ZpZGUgbm8gaW5mb3JtYXRpb24KK2Fib3V0IHRoZSBtZXJnZSBiYXNlIGNvbW1pdCB3aGF0c29ldmVyLgorCitUaGUgbWVyZ2UgYmFja2VuZCB3b3JrcyB3aXRoIHRoZSBmdWxsIGNvbW1pdHMgb24gYm90aCBzaWRlcyBvZiBoaXN0b3J5CithbmQgdGh1cyBoYXMgbm8gc3VjaCBsaW1pdGF0aW9ucy4KKworSG9va3MKK35+fn5+CisKK1RoZSBhcHBseSBiYWNrZW5kIGhhcyBub3QgdHJhZGl0aW9uYWxseSBjYWxsZWQgdGhlIHBvc3QtY29tbWl0IGhvb2ssCit3aGlsZSB0aGUgbWVyZ2UgYmFja2VuZCBoYXMuICBIb3dldmVyLCB0aGlzIHdhcyBieSBhY2NpZGVudCBvZgoraW1wbGVtZW50YXRpb24gcmF0aGVyIHRoYW4gYnkgZGVzaWduLiAgQm90aCBiYWNrZW5kcyBzaG91bGQgaGF2ZSB0aGUKK3NhbWUgYmVoYXZpb3IsIHRob3VnaCBpdCBpcyBub3QgY2xlYXIgd2hpY2ggb25lIGlzIGNvcnJlY3QuCisKK0ludGVycnVwdGFiaWxpdHkKK35+fn5+fn5+fn5+fn5+fn4KKworVGhlIGFwcGx5IGJhY2tlbmQgaGFzIHNhZmV0eSBwcm9ibGVtcyB3aXRoIGFuIGlsbC10aW1lZCBpbnRlcnJ1cHQ7IGlmCit0aGUgdXNlciBwcmVzc2VzIEN0cmwtQyBhdCB0aGUgd3JvbmcgdGltZSB0byB0cnkgdG8gYWJvcnQgdGhlIHJlYmFzZSwKK3RoZSByZWJhc2UgY2FuIGVudGVyIGEgc3RhdGUgd2hlcmUgaXQgY2Fubm90IGJlIGFib3J0ZWQgd2l0aCBhCitzdWJzZXF1ZW50IGBnaXQgcmViYXNlIC0tYWJvcnRgLiAgVGhlIG1lcmdlIGJhY2tlbmQgZG9lcyBub3QgYXBwZWFyIHRvCitzdWZmZXIgZnJvbSB0aGUgc2FtZSBzaG9ydGNvbWluZy4gIChTZWUKK2h0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC8yMDIwMDIwNzEzMjE1Mi5HQzI4NjhAc3plZGVyLmRldi8gZm9yCitkZXRhaWxzLikKKworQ29tbWl0IFJld29yZGluZworfn5+fn5+fn5+fn5+fn5+fgorCitXaGVuIGEgY29uZmxpY3Qgb2NjdXJzIHdoaWxlIHJlYmFzaW5nLCByZWJhc2Ugc3RvcHMgYW5kIGFza3MgdGhlIHVzZXIKK3RvIHJlc29sdmUuICBTaW5jZSB0aGUgdXNlciBtYXkgbmVlZCB0byBtYWtlIG5vdGFibGUgY2hhbmdlcyB3aGlsZQorcmVzb2x2aW5nIGNvbmZsaWN0cywgYWZ0ZXIgY29uZmxpY3RzIGFyZSByZXNvbHZlZCBhbmQgdGhlIHVzZXIgaGFzIHJ1bgorYGdpdCByZWJhc2UgLS1jb250aW51ZWAsIHRoZSByZWJhc2Ugc2hvdWxkIG9wZW4gYW4gZWRpdG9yIGFuZCBhc2sgdGhlCit1c2VyIHRvIHVwZGF0ZSB0aGUgY29tbWl0IG1lc3NhZ2UuICBUaGUgbWVyZ2UgYmFja2VuZCBkb2VzIHRoaXMsIHdoaWxlCit0aGUgYXBwbHkgYmFja2VuZCBibGluZGx5IGFwcGxpZXMgdGhlIG9yaWdpbmFsIGNvbW1pdCBtZXNzYWdlLgorCitNaXNjZWxsYW5lb3VzIGRpZmZlcmVuY2VzCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisKK1RoZXJlIGFyZSBhIGZldyBtb3JlIGJlaGF2aW9yYWwgZGlmZmVyZW5jZXMgdGhhdCBtb3N0IGZvbGtzIHdvdWxkCitwcm9iYWJseSBjb25zaWRlciBpbmNvbnNlcXVlbnRpYWwgYnV0IHdoaWNoIGFyZSBtZW50aW9uZWQgZm9yCitjb21wbGV0ZW5lc3M6CisKKyogUmVmbG9nOiBUaGUgdHdvIGJhY2tlbmRzIHdpbGwgdXNlIGRpZmZlcmVudCB3b3JkaW5nIHdoZW4gZGVzY3JpYmluZworICB0aGUgY2hhbmdlcyBtYWRlIGluIHRoZSByZWZsb2csIHRob3VnaCBib3RoIHdpbGwgbWFrZSB1c2Ugb2YgdGhlCisgIHdvcmQgInJlYmFzZSIuCisKKyogUHJvZ3Jlc3MsIGluZm9ybWF0aW9uYWwsIGFuZCBlcnJvciBtZXNzYWdlczogVGhlIHR3byBiYWNrZW5kcworICBwcm92aWRlIHNsaWdodGx5IGRpZmZlcmVudCBwcm9ncmVzcyBhbmQgaW5mb3JtYXRpb25hbCBtZXNzYWdlcy4KKyAgQWxzbywgdGhlIGFwcGx5IGJhY2tlbmQgd3JpdGVzIGVycm9yIG1lc3NhZ2VzIChzdWNoIGFzICJZb3VyIGZpbGVzCisgIHdvdWxkIGJlIG92ZXJ3cml0dGVuLi4uIikgdG8gc3Rkb3V0LCB3aGlsZSB0aGUgbWVyZ2UgYmFja2VuZCB3cml0ZXMKKyAgdGhlbSB0byBzdGRlcnIuCisKKyogU3RhdGUgZGlyZWN0b3JpZXM6IFRoZSB0d28gYmFja2VuZHMga2VlcCB0aGVpciBzdGF0ZSBpbiBkaWZmZXJlbnQKKyAgZGlyZWN0b3JpZXMgdW5kZXIgLmdpdC8KIAogaW5jbHVkZTo6bWVyZ2Utc3RyYXRlZ2llcy50eHRbXQogCkBAIC02NzcsNyArODMzLDggQEAKIAogQW5kIG1vdmUgdGhlIGZpcnN0IHBhdGNoIHRvIHRoZSBlbmQgb2YgdGhlIGxpc3QuCiAKLVlvdSBtaWdodCB3YW50IHRvIHByZXNlcnZlIG1lcmdlcywgaWYgeW91IGhhdmUgYSBoaXN0b3J5IGxpa2UgdGhpczoKK1lvdSBtaWdodCB3YW50IHRvIHJlY3JlYXRlIG1lcmdlIGNvbW1pdHMsIGUuZy4gaWYgeW91IGhhdmUgYSBoaXN0b3J5CitsaWtlIHRoaXM6CiAKIC0tLS0tLS0tLS0tLS0tLS0tLQogICAgICAgICAgICBYCkBAIC02OTEsNyArODQ4LDcgQEAKIHN1cmUgdGhhdCB0aGUgY3VycmVudCBIRUFEIGlzICJCIiwgYW5kIGNhbGwKIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSQgZ2l0IHJlYmFzZSAtaSAtcCAtLW9udG8gUSBPCiskIGdpdCByZWJhc2UgLWkgLXIgLS1vbnRvIFEgTwogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogUmVvcmRlcmluZyBhbmQgZWRpdGluZyBjb21taXRzIHVzdWFsbHkgY3JlYXRlcyB1bnRlc3RlZCBpbnRlcm1lZGlhdGUKQEAgLTgzMyw3ICs5OTAsOCBAQAogCVRoaXMgaGFwcGVucyBpZiB0aGUgJ3N1YnN5c3RlbScgcmViYXNlIGhhZCBjb25mbGljdHMsIG9yIHVzZWQKIAlgLS1pbnRlcmFjdGl2ZWAgdG8gb21pdCwgZWRpdCwgc3F1YXNoLCBvciBmaXh1cCBjb21taXRzOyBvcgogCWlmIHRoZSB1cHN0cmVhbSB1c2VkIG9uZSBvZiBgY29tbWl0IC0tYW1lbmRgLCBgcmVzZXRgLCBvcgotCWBmaWx0ZXItYnJhbmNoYC4KKwlhIGZ1bGwgaGlzdG9yeSByZXdyaXRpbmcgY29tbWFuZCBsaWtlCisJaHR0cHM6Ly9naXRodWIuY29tL25ld3Jlbi9naXQtZmlsdGVyLXJlcG9bYGZpbHRlci1yZXBvYF0uCiAKIAogVGhlIGVhc3kgY2FzZQpAQCAtODcxLDcgKzEwMjksNyBAQAogICAgICAgLS1pbnRlcmFjdGl2ZWAgd2lsbCBiZSAqKnJlc3VycmVjdGVkKiohCiAKIFRoZSBpZGVhIGlzIHRvIG1hbnVhbGx5IHRlbGwgJ2dpdCByZWJhc2UnICJ3aGVyZSB0aGUgb2xkICdzdWJzeXN0ZW0nCi1lbmRlZCBhbmQgeW91ciAndG9waWMnIGJlZ2FuIiwgdGhhdCBpcywgd2hhdCB0aGUgb2xkIG1lcmdlLWJhc2UKK2VuZGVkIGFuZCB5b3VyICd0b3BpYycgYmVnYW4iLCB0aGF0IGlzLCB3aGF0IHRoZSBvbGQgbWVyZ2UgYmFzZQogYmV0d2VlbiB0aGVtIHdhcy4gIFlvdSB3aWxsIGhhdmUgdG8gZmluZCBhIHdheSB0byBuYW1lIHRoZSBsYXN0IGNvbW1pdAogb2YgdGhlIG9sZCAnc3Vic3lzdGVtJywgZm9yIGV4YW1wbGU6CiAKQEAgLTk3OSw3ICsxMTM3LDcgQEAKIAogQXQgdGhpcyB0aW1lLCB0aGUgYG1lcmdlYCBjb21tYW5kIHdpbGwgKmFsd2F5cyogdXNlIHRoZSBgcmVjdXJzaXZlYAogbWVyZ2Ugc3RyYXRlZ3kgZm9yIHJlZ3VsYXIgbWVyZ2VzLCBhbmQgYG9jdG9wdXNgIGZvciBvY3RvcHVzIG1lcmdlcywKLXN0cmF0ZWd5LCB3aXRoIG5vIHdheSB0byBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLiBUbyB3b3JrIGFyb3VuZAord2l0aCBubyB3YXkgdG8gY2hvb3NlIGEgZGlmZmVyZW50IG9uZS4gVG8gd29yayBhcm91bmQKIHRoaXMsIGFuIGBleGVjYCBjb21tYW5kIGNhbiBiZSB1c2VkIHRvIGNhbGwgYGdpdCBtZXJnZWAgZXhwbGljaXRseSwKIHVzaW5nIHRoZSBmYWN0IHRoYXQgdGhlIGxhYmVscyBhcmUgd29ya3RyZWUtbG9jYWwgcmVmcyAodGhlIHJlZgogYHJlZnMvcmV3cml0dGVuL29udG9gIHdvdWxkIGNvcnJlc3BvbmQgdG8gdGhlIGxhYmVsIGBvbnRvYCwgZm9yIGV4YW1wbGUpLgpAQCAtMTAyOCwxMSArMTE4NiwxMSBAQAogCiBCVUdTCiAtLS0tCi1UaGUgdG9kbyBsaXN0IHByZXNlbnRlZCBieSBgLS1wcmVzZXJ2ZS1tZXJnZXMgLS1pbnRlcmFjdGl2ZWAgZG9lcyBub3QKLXJlcHJlc2VudCB0aGUgdG9wb2xvZ3kgb2YgdGhlIHJldmlzaW9uIGdyYXBoLiAgRWRpdGluZyBjb21taXRzIGFuZAotcmV3b3JkaW5nIHRoZWlyIGNvbW1pdCBtZXNzYWdlcyBzaG91bGQgd29yayBmaW5lLCBidXQgYXR0ZW1wdHMgdG8KLXJlb3JkZXIgY29tbWl0cyB0ZW5kIHRvIHByb2R1Y2UgY291bnRlcmludHVpdGl2ZSByZXN1bHRzLiBVc2UKLWAtLXJlYmFzZS1tZXJnZXNgIGluIHN1Y2ggc2NlbmFyaW9zIGluc3RlYWQuCitUaGUgdG9kbyBsaXN0IHByZXNlbnRlZCBieSB0aGUgZGVwcmVjYXRlZCBgLS1wcmVzZXJ2ZS1tZXJnZXMgLS1pbnRlcmFjdGl2ZWAKK2RvZXMgbm90IHJlcHJlc2VudCB0aGUgdG9wb2xvZ3kgb2YgdGhlIHJldmlzaW9uIGdyYXBoICh1c2UgYC0tcmViYXNlLW1lcmdlc2AKK2luc3RlYWQpLiAgRWRpdGluZyBjb21taXRzIGFuZCByZXdvcmRpbmcgdGhlaXIgY29tbWl0IG1lc3NhZ2VzIHNob3VsZCB3b3JrCitmaW5lLCBidXQgYXR0ZW1wdHMgdG8gcmVvcmRlciBjb21taXRzIHRlbmQgdG8gcHJvZHVjZSBjb3VudGVyaW50dWl0aXZlIHJlc3VsdHMuCitVc2UgYC0tcmViYXNlLW1lcmdlc2AgaW4gc3VjaCBzY2VuYXJpb3MgaW5zdGVhZC4KIAogRm9yIGV4YW1wbGUsIGFuIGF0dGVtcHQgdG8gcmVhcnJhbmdlCiAtLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXJlY2VpdmUtcGFjay50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZWNlaXZlLXBhY2sudHh0CmluZGV4IGRlZGY5N2UuLjI1NzAyZWQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXJlY2VpdmUtcGFjay50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtcmVjZWl2ZS1wYWNrLnR4dApAQCAtMTY1LDI5ICsxNjUsMzEgQEAKIGNlcnRpZmljYXRlcyBvZiBzaWduZWQgcHVzaGVzIHdpdGggZ29vZCBzaWduYXR1cmVzIHRvIGEgbG9nZ2VyCiBzZXJ2aWNlOgogCi0JIyEvYmluL3NoCi0JIyBtYWlsIG91dCBjb21taXQgdXBkYXRlIGluZm9ybWF0aW9uLgotCXdoaWxlIHJlYWQgb3ZhbCBudmFsIHJlZgotCWRvCi0JCWlmIGV4cHIgIiRvdmFsIiA6ICcwKiQnID4vZGV2L251bGwKLQkJdGhlbgotCQkJZWNobyAiQ3JlYXRlZCBhIG5ldyByZWYsIHdpdGggdGhlIGZvbGxvd2luZyBjb21taXRzOiIKLQkJCWdpdCByZXYtbGlzdCAtLXByZXR0eSAiJG52YWwiCi0JCWVsc2UKLQkJCWVjaG8gIk5ldyBjb21taXRzOiIKLQkJCWdpdCByZXYtbGlzdCAtLXByZXR0eSAiJG52YWwiICJeJG92YWwiCi0JCWZpIHwKLQkJbWFpbCAtcyAiQ2hhbmdlcyB0byByZWYgJHJlZiIgY29tbWl0LWxpc3RAbXlkb21haW4KLQlkb25lCi0JIyBsb2cgc2lnbmVkIHB1c2ggY2VydGlmaWNhdGUsIGlmIGFueQotCWlmIHRlc3QgLW4gIiR7R0lUX1BVU0hfQ0VSVC19IiAmJiB0ZXN0ICR7R0lUX1BVU0hfQ0VSVF9TVEFUVVN9ID0gRworLS0tLQorIyEvYmluL3NoCisjIG1haWwgb3V0IGNvbW1pdCB1cGRhdGUgaW5mb3JtYXRpb24uCit3aGlsZSByZWFkIG92YWwgbnZhbCByZWYKK2RvCisJaWYgZXhwciAiJG92YWwiIDogJzAqJCcgPi9kZXYvbnVsbAogCXRoZW4KLQkJKAotCQkJZWNobyBleHBlY3RlZCBub25jZSBpcyAke0dJVF9QVVNIX05PTkNFfQotCQkJZ2l0IGNhdC1maWxlIGJsb2IgJHtHSVRfUFVTSF9DRVJUfQotCQkpIHwgbWFpbCAtcyAicHVzaCBjZXJ0aWZpY2F0ZSBmcm9tICRHSVRfUFVTSF9DRVJUX1NJR05FUiIgcHVzaC1sb2dAbXlkb21haW4KLQlmaQotCWV4aXQgMAorCQllY2hvICJDcmVhdGVkIGEgbmV3IHJlZiwgd2l0aCB0aGUgZm9sbG93aW5nIGNvbW1pdHM6IgorCQlnaXQgcmV2LWxpc3QgLS1wcmV0dHkgIiRudmFsIgorCWVsc2UKKwkJZWNobyAiTmV3IGNvbW1pdHM6IgorCQlnaXQgcmV2LWxpc3QgLS1wcmV0dHkgIiRudmFsIiAiXiRvdmFsIgorCWZpIHwKKwltYWlsIC1zICJDaGFuZ2VzIHRvIHJlZiAkcmVmIiBjb21taXQtbGlzdEBteWRvbWFpbgorZG9uZQorIyBsb2cgc2lnbmVkIHB1c2ggY2VydGlmaWNhdGUsIGlmIGFueQoraWYgdGVzdCAtbiAiJHtHSVRfUFVTSF9DRVJULX0iICYmIHRlc3QgJHtHSVRfUFVTSF9DRVJUX1NUQVRVU30gPSBHCit0aGVuCisJKAorCQllY2hvIGV4cGVjdGVkIG5vbmNlIGlzICR7R0lUX1BVU0hfTk9OQ0V9CisJCWdpdCBjYXQtZmlsZSBibG9iICR7R0lUX1BVU0hfQ0VSVH0KKwkpIHwgbWFpbCAtcyAicHVzaCBjZXJ0aWZpY2F0ZSBmcm9tICRHSVRfUFVTSF9DRVJUX1NJR05FUiIgcHVzaC1sb2dAbXlkb21haW4KK2ZpCitleGl0IDAKKy0tLS0KIAogVGhlIGV4aXQgY29kZSBmcm9tIHRoaXMgaG9vayBpbnZvY2F0aW9uIGlzIGlnbm9yZWQsIGhvd2V2ZXIgYQogbm9uLXplcm8gZXhpdCBjb2RlIHdpbGwgZ2VuZXJhdGUgYW4gZXJyb3IgbWVzc2FnZS4KQEAgLTIxMiw4ICsyMTQsMTAgQEAKIFRoaXMgaG9vayBjYW4gYmUgdXNlZCwgZm9yIGV4YW1wbGUsIHRvIHJ1biBgZ2l0IHVwZGF0ZS1zZXJ2ZXItaW5mb2AKIGlmIHRoZSByZXBvc2l0b3J5IGlzIHBhY2tlZCBhbmQgaXMgc2VydmVkIHZpYSBhIGR1bWIgdHJhbnNwb3J0LgogCi0JIyEvYmluL3NoCi0JZXhlYyBnaXQgdXBkYXRlLXNlcnZlci1pbmZvCistLS0tCisjIS9iaW4vc2gKK2V4ZWMgZ2l0IHVwZGF0ZS1zZXJ2ZXItaW5mbworLS0tLQogCiAKIFFVQVJBTlRJTkUgRU5WSVJPTk1FTlQKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXJlbW90ZS1leHQudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtcmVtb3RlLWV4dC50eHQKaW5kZXggM2ZjNWQ5NC4uODhlYTdlMSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtcmVtb3RlLWV4dC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtcmVtb3RlLWV4dC50eHQKQEAgLTEwNCw3ICsxMDQsNyBAQAogCWxpbmstbGV2ZWwgYWRkcmVzcykuCiAKICJleHQ6OmdpdC1zZXJ2ZXItYWxpYXMgZm9vICVHL3JlcG8lIHdpdGglIHNwYWNlcyAlVmZvbyI6OgotCVJlcHJlc2VudHMgYSByZXBvc2l0b3J5IHdpdGggcGF0aCAnL3JlcG8gd2l0aCBzcGFjZXMnIGFjY2Vzc2VkCisJUmVwcmVzZW50cyBhIHJlcG9zaXRvcnkgd2l0aCBwYXRoIGAvcmVwbyB3aXRoIHNwYWNlc2AgYWNjZXNzZWQKIAl1c2luZyB0aGUgaGVscGVyIHByb2dyYW0gImdpdC1zZXJ2ZXItYWxpYXMgZm9vIi4gIFRoZSBob3N0bmFtZSBmb3IKIAl0aGUgcmVtb3RlIHNlcnZlciBwYXNzZWQgaW4gdGhlIHByb3RvY29sIHN0cmVhbSB3aWxsIGJlICJmb28iCiAJKHRoaXMgYWxsb3dzIG11bHRpcGxlIHZpcnR1YWwgR2l0IHNlcnZlcnMgdG8gc2hhcmUgYQpAQCAtMTE4LDcgKzExOCw3IEBACiAKIFNFRSBBTFNPCiAtLS0tLS0tLQotbGlua2dpdDpnaXRyZW1vdGUtaGVscGVyc1sxXQorbGlua2dpdDpnaXRyZW1vdGUtaGVscGVyc1s3XQogCiBHSVQKIC0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtcmVtb3RlLWZkLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXJlbW90ZS1mZC50eHQKaW5kZXggODBhZmNhOC4uMDQ1MWNlYiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtcmVtb3RlLWZkLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZW1vdGUtZmQudHh0CkBAIC01Miw3ICs1Miw3IEBACiAKIFNFRSBBTFNPCiAtLS0tLS0tLQotbGlua2dpdDpnaXRyZW1vdGUtaGVscGVyc1sxXQorbGlua2dpdDpnaXRyZW1vdGUtaGVscGVyc1s3XQogCiBHSVQKIC0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtcmVtb3RlLWhlbHBlcnMudHh0byBiL0RvY3VtZW50YXRpb24vZ2l0LXJlbW90ZS1oZWxwZXJzLnR4dG8KaW5kZXggNDkyMzNmNS4uNmYzNTNlYiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtcmVtb3RlLWhlbHBlcnMudHh0bworKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZW1vdGUtaGVscGVycy50eHRvCkBAIC0xLDcgKzEsNyBAQAogZ2l0LXJlbW90ZS1oZWxwZXJzCiA9PT09PT09PT09PT09PT09PT0KIAotVGhpcyBkb2N1bWVudCBoYXMgYmVlbiBtb3ZlZCB0byBsaW5rZ2l0OmdpdHJlbW90ZS1oZWxwZXJzWzFdLgorVGhpcyBkb2N1bWVudCBoYXMgYmVlbiBtb3ZlZCB0byBsaW5rZ2l0OmdpdHJlbW90ZS1oZWxwZXJzWzddLgogCiBQbGVhc2UgbGV0IHRoZSBvd25lcnMgb2YgdGhlIHJlZmVycmluZyBzaXRlIGtub3cgc28gdGhhdCB0aGV5IGNhbiB1cGRhdGUgdGhlCiBsaW5rIHlvdSBjbGlja2VkIHRvIGdldCBoZXJlLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtcmVtb3RlLXRlc3RnaXQudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtcmVtb3RlLXRlc3RnaXQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmNzkxZDczLi4wMDAwMDAwCi0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXJlbW90ZS10ZXN0Z2l0LnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDMwICswLDAgQEAKLWdpdC1yZW1vdGUtdGVzdGdpdCgxKQotPT09PT09PT09PT09PT09PT09PT09Ci0KLU5BTUUKLS0tLS0KLWdpdC1yZW1vdGUtdGVzdGdpdCAtIEV4YW1wbGUgcmVtb3RlLWhlbHBlcgotCi0KLVNZTk9QU0lTCi0tLS0tLS0tLQotW3ZlcnNlXQotZ2l0IGNsb25lIHRlc3RnaXQ6Ojxzb3VyY2UtcmVwbz4gWzxkZXN0aW5hdGlvbj5dCi0KLURFU0NSSVBUSU9OCi0tLS0tLS0tLS0tLQotCi1UaGlzIGNvbW1hbmQgaXMgYSBzaW1wbGUgcmVtb3RlLWhlbHBlciwgdGhhdCBpcyB1c2VkIGJvdGggYXMgYQotdGVzdGNhc2UgZm9yIHRoZSByZW1vdGUtaGVscGVyIGZ1bmN0aW9uYWxpdHksIGFuZCBhcyBhbiBleGFtcGxlIHRvCi1zaG93IHJlbW90ZS1oZWxwZXIgYXV0aG9ycyBvbmUgcG9zc2libGUgaW1wbGVtZW50YXRpb24uCi0KLVRoZSBiZXN0IHdheSB0byBsZWFybiBtb3JlIGlzIHRvIHJlYWQgdGhlIGNvbW1lbnRzIGFuZCBzb3VyY2UgY29kZSBpbgotJ2dpdC1yZW1vdGUtdGVzdGdpdCcuCi0KLVNFRSBBTFNPCi0tLS0tLS0tLQotbGlua2dpdDpnaXRyZW1vdGUtaGVscGVyc1sxXQotCi1HSVQKLS0tLQotUGFydCBvZiB0aGUgbGlua2dpdDpnaXRbMV0gc3VpdGUKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXJlbW90ZS50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZW1vdGUudHh0CmluZGV4IDBjYWQzN2YuLjk2NTlhYmIgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXJlbW90ZS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtcmVtb3RlLnR4dApAQCAtMjMwLDcgKzIzMCw3IEBACiAgIHN0YWdpbmcvbWFzdGVyCiAgIHN0YWdpbmcvc3RhZ2luZy1saW51cwogICBzdGFnaW5nL3N0YWdpbmctbmV4dAotJCBnaXQgY2hlY2tvdXQgLWIgc3RhZ2luZyBzdGFnaW5nL21hc3RlcgorJCBnaXQgc3dpdGNoIC1jIHN0YWdpbmcgc3RhZ2luZy9tYXN0ZXIKIC4uLgogLS0tLS0tLS0tLS0tCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXJlcGFjay50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZXBhY2sudHh0CmluZGV4IGFhMGNjOGIuLjkyZjE0NmQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXJlcGFjay50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtcmVwYWNrLnR4dApAQCAtMTQyLDcgKzE0Miw3IEBACiAKIC0ta2VlcC1wYWNrPTxwYWNrLW5hbWU+OjoKIAlFeGNsdWRlIHRoZSBnaXZlbiBwYWNrIGZyb20gcmVwYWNraW5nLiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50Ci0Jb2YgaGF2aW5nIGAua2VlcGAgZmlsZSBvbiB0aGUgcGFjay4gYDxwYWNrLW5hbWU+YCBpcyB0aGUgdGhlCisJb2YgaGF2aW5nIGAua2VlcGAgZmlsZSBvbiB0aGUgcGFjay4gYDxwYWNrLW5hbWU+YCBpcyB0aGUKIAlwYWNrIGZpbGUgbmFtZSB3aXRob3V0IGxlYWRpbmcgZGlyZWN0b3J5IChlLmcuIGBwYWNrLTEyMy5wYWNrYCkuCiAJVGhlIG9wdGlvbiBjb3VsZCBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMgdG8ga2VlcCBtdWx0aXBsZQogCXBhY2tzLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtcmVwbGFjZS50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZXBsYWNlLnR4dAppbmRleCAyNDZkYzk5Li5mMjcxZDc1IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1yZXBsYWNlLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZXBsYWNlLnR4dApAQCAtMTIzLDEwICsxMjMsMTAgQEAKIENSRUFUSU5HIFJFUExBQ0VNRU5UIE9CSkVDVFMKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotbGlua2dpdDpnaXQtZmlsdGVyLWJyYW5jaFsxXSwgbGlua2dpdDpnaXQtaGFzaC1vYmplY3RbMV0gYW5kCi1saW5rZ2l0OmdpdC1yZWJhc2VbMV0sIGFtb25nIG90aGVyIGdpdCBjb21tYW5kcywgY2FuIGJlIHVzZWQgdG8gY3JlYXRlCi1yZXBsYWNlbWVudCBvYmplY3RzIGZyb20gZXhpc3Rpbmcgb2JqZWN0cy4gVGhlIGAtLWVkaXRgIG9wdGlvbiBjYW4KLWFsc28gYmUgdXNlZCB3aXRoICdnaXQgcmVwbGFjZScgdG8gY3JlYXRlIGEgcmVwbGFjZW1lbnQgb2JqZWN0IGJ5CitsaW5rZ2l0OmdpdC1oYXNoLW9iamVjdFsxXSwgbGlua2dpdDpnaXQtcmViYXNlWzFdLCBhbmQKK2h0dHBzOi8vZ2l0aHViLmNvbS9uZXdyZW4vZ2l0LWZpbHRlci1yZXBvW2dpdC1maWx0ZXItcmVwb10sIGFtb25nIG90aGVyIGdpdCBjb21tYW5kcywgY2FuIGJlIHVzZWQgdG8KK2NyZWF0ZSByZXBsYWNlbWVudCBvYmplY3RzIGZyb20gZXhpc3Rpbmcgb2JqZWN0cy4gVGhlIGAtLWVkaXRgIG9wdGlvbgorY2FuIGFsc28gYmUgdXNlZCB3aXRoICdnaXQgcmVwbGFjZScgdG8gY3JlYXRlIGEgcmVwbGFjZW1lbnQgb2JqZWN0IGJ5CiBlZGl0aW5nIGFuIGV4aXN0aW5nIG9iamVjdC4KIAogSWYgeW91IHdhbnQgdG8gcmVwbGFjZSBtYW55IGJsb2JzLCB0cmVlcyBvciBjb21taXRzIHRoYXQgYXJlIHBhcnQgb2YgYQpAQCAtMTQ4LDEzICsxNDgsMTMgQEAKIFNFRSBBTFNPCiAtLS0tLS0tLQogbGlua2dpdDpnaXQtaGFzaC1vYmplY3RbMV0KLWxpbmtnaXQ6Z2l0LWZpbHRlci1icmFuY2hbMV0KIGxpbmtnaXQ6Z2l0LXJlYmFzZVsxXQogbGlua2dpdDpnaXQtdGFnWzFdCiBsaW5rZ2l0OmdpdC1icmFuY2hbMV0KIGxpbmtnaXQ6Z2l0LWNvbW1pdFsxXQogbGlua2dpdDpnaXQtdmFyWzFdCiBsaW5rZ2l0OmdpdFsxXQoraHR0cHM6Ly9naXRodWIuY29tL25ld3Jlbi9naXQtZmlsdGVyLXJlcG9bZ2l0LWZpbHRlci1yZXBvXQogCiBHSVQKIC0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtcmVyZXJlLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXJlcmVyZS50eHQKaW5kZXggZGYzMTBkMi4uNGNmYzg4MyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtcmVyZXJlLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZXJlcmUudHh0CkBAIC0yNCw3ICsyNCw3IEBACiBoYW5kIHJlc29sdXRpb25zIHRvIHRoZWlyIGNvcnJlc3BvbmRpbmcgYXV0b21lcmdlIHJlc3VsdHMuCiAKIFtOT1RFXQotWW91IG5lZWQgdG8gc2V0IHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIHJlcmVyZS5lbmFibGVkIGluIG9yZGVyIHRvCitZb3UgbmVlZCB0byBzZXQgdGhlIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYHJlcmVyZS5lbmFibGVkYCBpbiBvcmRlciB0bwogZW5hYmxlIHRoaXMgY29tbWFuZC4KIAogCkBAIC05MSw3ICs5MSw3IEBACiBPbmUgd2F5IHRvIGRvIGl0IGlzIHRvIHB1bGwgbWFzdGVyIGludG8gdGhlIHRvcGljIGJyYW5jaDoKIAogLS0tLS0tLS0tLS0tCi0JJCBnaXQgY2hlY2tvdXQgdG9waWMKKwkkIGdpdCBzd2l0Y2ggdG9waWMKIAkkIGdpdCBtZXJnZSBtYXN0ZXIKIAogICAgICAgICAgICAgICBvLS0tKi0tLW8tLS0rIHRvcGljCkBAIC0xMTMsMTAgKzExMywxMCBAQAogaW4gd2hpY2ggY2FzZSB0aGUgZmluYWwgY29tbWl0IGdyYXBoIHdvdWxkIGxvb2sgbGlrZSB0aGlzOgogCiAtLS0tLS0tLS0tLS0KLQkkIGdpdCBjaGVja291dCB0b3BpYworCSQgZ2l0IHN3aXRjaCB0b3BpYwogCSQgZ2l0IG1lcmdlIG1hc3RlcgogCSQgLi4uIHdvcmsgb24gYm90aCB0b3BpYyBhbmQgbWFzdGVyIGJyYW5jaGVzCi0JJCBnaXQgY2hlY2tvdXQgbWFzdGVyCisJJCBnaXQgc3dpdGNoIG1hc3RlcgogCSQgZ2l0IG1lcmdlIHRvcGljCiAKICAgICAgICAgICAgICAgby0tLSotLS1vLS0tKy0tLW8tLS1vIHRvcGljCkBAIC0xMzYsMTEgKzEzNiwxMSBAQAogdG9wIG9mIHRoZSB0aXAgYmVmb3JlIHRoZSB0ZXN0IG1lcmdlOgogCiAtLS0tLS0tLS0tLS0KLQkkIGdpdCBjaGVja291dCB0b3BpYworCSQgZ2l0IHN3aXRjaCB0b3BpYwogCSQgZ2l0IG1lcmdlIG1hc3RlcgogCSQgZ2l0IHJlc2V0IC0taGFyZCBIRUFEXiA7IyByZXdpbmQgdGhlIHRlc3QgbWVyZ2UKIAkkIC4uLiB3b3JrIG9uIGJvdGggdG9waWMgYW5kIG1hc3RlciBicmFuY2hlcwotCSQgZ2l0IGNoZWNrb3V0IG1hc3RlcgorCSQgZ2l0IHN3aXRjaCBtYXN0ZXIKIAkkIGdpdCBtZXJnZSB0b3BpYwogCiAgICAgICAgICAgICAgIG8tLS0qLS0tby0tLS0tLS1vLS0tbyB0b3BpYwpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtcmVzZXQudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtcmVzZXQudHh0CmluZGV4IDlmNjlhZTguLjkzMjA4MGMgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXJlc2V0LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZXNldC50eHQKQEAgLTgsMzMgKzgsMzYgQEAKIFNZTk9QU0lTCiAtLS0tLS0tLQogW3ZlcnNlXQotJ2dpdCByZXNldCcgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHM+Li4uCi0nZ2l0IHJlc2V0JyAoLS1wYXRjaCB8IC1wKSBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzPi4uLl0KKydnaXQgcmVzZXQnIFstcV0gWzx0cmVlLWlzaD5dIFstLV0gPHBhdGhzcGVjPi4uLgorJ2dpdCByZXNldCcgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV0gWzx0cmVlLWlzaD5dCisnZ2l0IHJlc2V0JyAoLS1wYXRjaCB8IC1wKSBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzcGVjPi4uLl0KICdnaXQgcmVzZXQnIFstLXNvZnQgfCAtLW1peGVkIFstTl0gfCAtLWhhcmQgfCAtLW1lcmdlIHwgLS1rZWVwXSBbLXFdIFs8Y29tbWl0Pl0KIAogREVTQ1JJUFRJT04KIC0tLS0tLS0tLS0tCi1JbiB0aGUgZmlyc3QgYW5kIHNlY29uZCBmb3JtLCBjb3B5IGVudHJpZXMgZnJvbSBgPHRyZWUtaXNoPmAgdG8gdGhlIGluZGV4LgotSW4gdGhlIHRoaXJkIGZvcm0sIHNldCB0aGUgY3VycmVudCBicmFuY2ggaGVhZCAoYEhFQURgKSB0byBgPGNvbW1pdD5gLAorSW4gdGhlIGZpcnN0IHRocmVlIGZvcm1zLCBjb3B5IGVudHJpZXMgZnJvbSBgPHRyZWUtaXNoPmAgdG8gdGhlIGluZGV4LgorSW4gdGhlIGxhc3QgZm9ybSwgc2V0IHRoZSBjdXJyZW50IGJyYW5jaCBoZWFkIChgSEVBRGApIHRvIGA8Y29tbWl0PmAsCiBvcHRpb25hbGx5IG1vZGlmeWluZyBpbmRleCBhbmQgd29ya2luZyB0cmVlIHRvIG1hdGNoLgogVGhlIGA8dHJlZS1pc2g+YC9gPGNvbW1pdD5gIGRlZmF1bHRzIHRvIGBIRUFEYCBpbiBhbGwgZm9ybXMuCiAKLSdnaXQgcmVzZXQnIFstcV0gWzx0cmVlLWlzaD5dIFstLV0gPHBhdGhzPi4uLjo6Ci0JVGhpcyBmb3JtIHJlc2V0cyB0aGUgaW5kZXggZW50cmllcyBmb3IgYWxsIGA8cGF0aHM+YCB0byB0aGVpcgotCXN0YXRlIGF0IGA8dHJlZS1pc2g+YC4gIChJdCBkb2VzIG5vdCBhZmZlY3QgdGhlIHdvcmtpbmcgdHJlZSBvcgotCXRoZSBjdXJyZW50IGJyYW5jaC4pCisnZ2l0IHJlc2V0JyBbLXFdIFs8dHJlZS1pc2g+XSBbLS1dIDxwYXRoc3BlYz4uLi46OgorJ2dpdCByZXNldCcgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV0gWzx0cmVlLWlzaD5dOjoKKwlUaGVzZSBmb3JtcyByZXNldCB0aGUgaW5kZXggZW50cmllcyBmb3IgYWxsIHBhdGhzIHRoYXQgbWF0Y2ggdGhlCisJYDxwYXRoc3BlYz5gIHRvIHRoZWlyIHN0YXRlIGF0IGA8dHJlZS1pc2g+YC4gIChJdCBkb2VzIG5vdCBhZmZlY3QKKwl0aGUgd29ya2luZyB0cmVlIG9yIHRoZSBjdXJyZW50IGJyYW5jaC4pCiArCi1UaGlzIG1lYW5zIHRoYXQgYGdpdCByZXNldCA8cGF0aHM+YCBpcyB0aGUgb3Bwb3NpdGUgb2YgYGdpdCBhZGQKLTxwYXRocz5gLgorVGhpcyBtZWFucyB0aGF0IGBnaXQgcmVzZXQgPHBhdGhzcGVjPmAgaXMgdGhlIG9wcG9zaXRlIG9mIGBnaXQgYWRkCis8cGF0aHNwZWM+YC4gVGhpcyBjb21tYW5kIGlzIGVxdWl2YWxlbnQgdG8KK2BnaXQgcmVzdG9yZSBbLS1zb3VyY2U9PHRyZWUtaXNoPl0gLS1zdGFnZWQgPHBhdGhzcGVjPi4uLmAuCiArCi1BZnRlciBydW5uaW5nIGBnaXQgcmVzZXQgPHBhdGhzPmAgdG8gdXBkYXRlIHRoZSBpbmRleCBlbnRyeSwgeW91IGNhbgotdXNlIGxpbmtnaXQ6Z2l0LWNoZWNrb3V0WzFdIHRvIGNoZWNrIHRoZSBjb250ZW50cyBvdXQgb2YgdGhlIGluZGV4IHRvCi10aGUgd29ya2luZyB0cmVlLgotQWx0ZXJuYXRpdmVseSwgdXNpbmcgbGlua2dpdDpnaXQtY2hlY2tvdXRbMV0gYW5kIHNwZWNpZnlpbmcgYSBjb21taXQsIHlvdQorQWZ0ZXIgcnVubmluZyBgZ2l0IHJlc2V0IDxwYXRoc3BlYz5gIHRvIHVwZGF0ZSB0aGUgaW5kZXggZW50cnksIHlvdSBjYW4KK3VzZSBsaW5rZ2l0OmdpdC1yZXN0b3JlWzFdIHRvIGNoZWNrIHRoZSBjb250ZW50cyBvdXQgb2YgdGhlIGluZGV4IHRvCit0aGUgd29ya2luZyB0cmVlLiBBbHRlcm5hdGl2ZWx5LCB1c2luZyBsaW5rZ2l0OmdpdC1yZXN0b3JlWzFdCithbmQgc3BlY2lmeWluZyBhIGNvbW1pdCB3aXRoIGAtLXNvdXJjZWAsIHlvdQogY2FuIGNvcHkgdGhlIGNvbnRlbnRzIG9mIGEgcGF0aCBvdXQgb2YgYSBjb21taXQgdG8gdGhlIGluZGV4IGFuZCB0byB0aGUKIHdvcmtpbmcgdHJlZSBpbiBvbmUgZ28uCiAKLSdnaXQgcmVzZXQnICgtLXBhdGNoIHwgLXApIFs8dHJlZS1pc2g+XSBbLS1dIFs8cGF0aHM+Li4uXTo6CisnZ2l0IHJlc2V0JyAoLS1wYXRjaCB8IC1wKSBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzcGVjPi4uLl06OgogCUludGVyYWN0aXZlbHkgc2VsZWN0IGh1bmtzIGluIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIGluZGV4CiAJYW5kIGA8dHJlZS1pc2g+YCAoZGVmYXVsdHMgdG8gYEhFQURgKS4gIFRoZSBjaG9zZW4gaHVua3MgYXJlIGFwcGxpZWQKIAlpbiByZXZlcnNlIHRvIHRoZSBpbmRleC4KQEAgLTg2LDggKzg5LDggQEAKIAljaGFuZ2VzLCByZXNldCBpcyBhYm9ydGVkLgogLS0KIAotSWYgeW91IHdhbnQgdG8gdW5kbyBhIGNvbW1pdCBvdGhlciB0aGFuIHRoZSBsYXRlc3Qgb24gYSBicmFuY2gsCi1saW5rZ2l0OmdpdC1yZXZlcnRbMV0gaXMgeW91ciBmcmllbmQuCitTZWUgIlJlc2V0LCByZXN0b3JlIGFuZCByZXZlcnQiIGluIGxpbmtnaXQ6Z2l0WzFdIGZvciB0aGUgZGlmZmVyZW5jZXMKK2JldHdlZW4gdGhlIHRocmVlIGNvbW1hbmRzLgogCiAKIE9QVElPTlMKQEAgLTEwMCw2ICsxMDMsMjYgQEAKIAlgcmVzZXQucXVpZXRgIGNvbmZpZyBvcHRpb24uIGAtLXF1aWV0YCBhbmQgYC0tbm8tcXVpZXRgIHdpbGwKIAlvdmVycmlkZSB0aGUgZGVmYXVsdCBiZWhhdmlvci4KIAorLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+OjoKKwlQYXRoc3BlYyBpcyBwYXNzZWQgaW4gYDxmaWxlPmAgaW5zdGVhZCBvZiBjb21tYW5kbGluZSBhcmdzLiBJZgorCWA8ZmlsZT5gIGlzIGV4YWN0bHkgYC1gIHRoZW4gc3RhbmRhcmQgaW5wdXQgaXMgdXNlZC4gUGF0aHNwZWMKKwllbGVtZW50cyBhcmUgc2VwYXJhdGVkIGJ5IExGIG9yIENSL0xGLiBQYXRoc3BlYyBlbGVtZW50cyBjYW4gYmUKKwlxdW90ZWQgYXMgZXhwbGFpbmVkIGZvciB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBgY29yZS5xdW90ZVBhdGhgCisJKHNlZSBsaW5rZ2l0OmdpdC1jb25maWdbMV0pLiBTZWUgYWxzbyBgLS1wYXRoc3BlYy1maWxlLW51bGAgYW5kCisJZ2xvYmFsIGAtLWxpdGVyYWwtcGF0aHNwZWNzYC4KKworLS1wYXRoc3BlYy1maWxlLW51bDo6CisJT25seSBtZWFuaW5nZnVsIHdpdGggYC0tcGF0aHNwZWMtZnJvbS1maWxlYC4gUGF0aHNwZWMgZWxlbWVudHMgYXJlCisJc2VwYXJhdGVkIHdpdGggTlVMIGNoYXJhY3RlciBhbmQgYWxsIG90aGVyIGNoYXJhY3RlcnMgYXJlIHRha2VuCisJbGl0ZXJhbGx5IChpbmNsdWRpbmcgbmV3bGluZXMgYW5kIHF1b3RlcykuCisKK1wtLTo6CisJRG8gbm90IGludGVycHJldCBhbnkgbW9yZSBhcmd1bWVudHMgYXMgb3B0aW9ucy4KKworPHBhdGhzcGVjPi4uLjo6CisJTGltaXRzIHRoZSBwYXRocyBhZmZlY3RlZCBieSB0aGUgb3BlcmF0aW9uLgorKworRm9yIG1vcmUgZGV0YWlscywgc2VlIHRoZSAncGF0aHNwZWMnIGVudHJ5IGluIGxpbmtnaXQ6Z2l0Z2xvc3NhcnlbN10uCiAKIEVYQU1QTEVTCiAtLS0tLS0tLQpAQCAtMTE1LDE3ICsxMzgsMTcgQEAKIC0tLS0tLS0tLS0tLQogKwogPDE+IFlvdSBhcmUgaGFwcGlseSB3b3JraW5nIG9uIHNvbWV0aGluZywgYW5kIGZpbmQgdGhlIGNoYW5nZXMKLWluIHRoZXNlIGZpbGVzIGFyZSBpbiBnb29kIG9yZGVyLiAgWW91IGRvIG5vdCB3YW50IHRvIHNlZSB0aGVtCi13aGVuIHlvdSBydW4gYGdpdCBkaWZmYCwgYmVjYXVzZSB5b3UgcGxhbiB0byB3b3JrIG9uIG90aGVyIGZpbGVzCi1hbmQgY2hhbmdlcyB3aXRoIHRoZXNlIGZpbGVzIGFyZSBkaXN0cmFjdGluZy4KKyAgICBpbiB0aGVzZSBmaWxlcyBhcmUgaW4gZ29vZCBvcmRlci4gIFlvdSBkbyBub3Qgd2FudCB0byBzZWUgdGhlbQorICAgIHdoZW4geW91IHJ1biBgZ2l0IGRpZmZgLCBiZWNhdXNlIHlvdSBwbGFuIHRvIHdvcmsgb24gb3RoZXIgZmlsZXMKKyAgICBhbmQgY2hhbmdlcyB3aXRoIHRoZXNlIGZpbGVzIGFyZSBkaXN0cmFjdGluZy4KIDwyPiBTb21lYm9keSBhc2tzIHlvdSB0byBwdWxsLCBhbmQgdGhlIGNoYW5nZXMgc291bmQgd29ydGh5IG9mIG1lcmdpbmcuCiA8Mz4gSG93ZXZlciwgeW91IGFscmVhZHkgZGlydGllZCB0aGUgaW5kZXggKGkuZS4geW91ciBpbmRleCBkb2VzCi1ub3QgbWF0Y2ggdGhlIGBIRUFEYCBjb21taXQpLiAgQnV0IHlvdSBrbm93IHRoZSBwdWxsIHlvdSBhcmUgZ29pbmcKLXRvIG1ha2UgZG9lcyBub3QgYWZmZWN0IGBmcm90ei5jYCBvciBgZmlsZnJlLmNgLCBzbyB5b3UgcmV2ZXJ0IHRoZQotaW5kZXggY2hhbmdlcyBmb3IgdGhlc2UgdHdvIGZpbGVzLiAgWW91ciBjaGFuZ2VzIGluIHdvcmtpbmcgdHJlZQotcmVtYWluIHRoZXJlLgorICAgIG5vdCBtYXRjaCB0aGUgYEhFQURgIGNvbW1pdCkuICBCdXQgeW91IGtub3cgdGhlIHB1bGwgeW91IGFyZSBnb2luZworICAgIHRvIG1ha2UgZG9lcyBub3QgYWZmZWN0IGBmcm90ei5jYCBvciBgZmlsZnJlLmNgLCBzbyB5b3UgcmV2ZXJ0IHRoZQorICAgIGluZGV4IGNoYW5nZXMgZm9yIHRoZXNlIHR3byBmaWxlcy4gIFlvdXIgY2hhbmdlcyBpbiB3b3JraW5nIHRyZWUKKyAgICByZW1haW4gdGhlcmUuCiA8ND4gVGhlbiB5b3UgY2FuIHB1bGwgYW5kIG1lcmdlLCBsZWF2aW5nIGBmcm90ei5jYCBhbmQgYGZpbGZyZS5jYAotY2hhbmdlcyBzdGlsbCBpbiB0aGUgd29ya2luZyB0cmVlLgorICAgIGNoYW5nZXMgc3RpbGwgaW4gdGhlIHdvcmtpbmcgdHJlZS4KIAogVW5kbyBhIGNvbW1pdCBhbmQgcmVkbzo6CiArCkBAIC0xMzcsMjcgKzE2MCwyNyBAQAogLS0tLS0tLS0tLS0tCiArCiA8MT4gVGhpcyBpcyBtb3N0IG9mdGVuIGRvbmUgd2hlbiB5b3UgcmVtZW1iZXJlZCB3aGF0IHlvdQotanVzdCBjb21taXR0ZWQgaXMgaW5jb21wbGV0ZSwgb3IgeW91IG1pc3NwZWxsZWQgeW91ciBjb21taXQKLW1lc3NhZ2UsIG9yIGJvdGguICBMZWF2ZXMgd29ya2luZyB0cmVlIGFzIGl0IHdhcyBiZWZvcmUgInJlc2V0Ii4KKyAgICBqdXN0IGNvbW1pdHRlZCBpcyBpbmNvbXBsZXRlLCBvciB5b3UgbWlzc3BlbGxlZCB5b3VyIGNvbW1pdAorICAgIG1lc3NhZ2UsIG9yIGJvdGguICBMZWF2ZXMgd29ya2luZyB0cmVlIGFzIGl0IHdhcyBiZWZvcmUgInJlc2V0Ii4KIDwyPiBNYWtlIGNvcnJlY3Rpb25zIHRvIHdvcmtpbmcgdHJlZSBmaWxlcy4KIDwzPiAicmVzZXQiIGNvcGllcyB0aGUgb2xkIGhlYWQgdG8gYC5naXQvT1JJR19IRUFEYDsgcmVkbyB0aGUKLWNvbW1pdCBieSBzdGFydGluZyB3aXRoIGl0cyBsb2cgbWVzc2FnZS4gIElmIHlvdSBkbyBub3QgbmVlZCB0bwotZWRpdCB0aGUgbWVzc2FnZSBmdXJ0aGVyLCB5b3UgY2FuIGdpdmUgYC1DYCBvcHRpb24gaW5zdGVhZC4KKyAgICBjb21taXQgYnkgc3RhcnRpbmcgd2l0aCBpdHMgbG9nIG1lc3NhZ2UuICBJZiB5b3UgZG8gbm90IG5lZWQgdG8KKyAgICBlZGl0IHRoZSBtZXNzYWdlIGZ1cnRoZXIsIHlvdSBjYW4gZ2l2ZSBgLUNgIG9wdGlvbiBpbnN0ZWFkLgogKwogU2VlIGFsc28gdGhlIGAtLWFtZW5kYCBvcHRpb24gdG8gbGlua2dpdDpnaXQtY29tbWl0WzFdLgogCiBVbmRvIGEgY29tbWl0LCBtYWtpbmcgaXQgYSB0b3BpYyBicmFuY2g6OgogKwogLS0tLS0tLS0tLS0tCi0kIGdpdCBicmFuY2ggdG9waWMvd2lwICAgICA8MT4KLSQgZ2l0IHJlc2V0IC0taGFyZCBIRUFEfjMgIDwyPgotJCBnaXQgY2hlY2tvdXQgdG9waWMvd2lwICAgPDM+CiskIGdpdCBicmFuY2ggdG9waWMvd2lwICAgICAgICAgIDwxPgorJCBnaXQgcmVzZXQgLS1oYXJkIEhFQUR+MyAgICAgICA8Mj4KKyQgZ2l0IHN3aXRjaCB0b3BpYy93aXAgICAgICAgICAgPDM+CiAtLS0tLS0tLS0tLS0KICsKIDwxPiBZb3UgaGF2ZSBtYWRlIHNvbWUgY29tbWl0cywgYnV0IHJlYWxpemUgdGhleSB3ZXJlIHByZW1hdHVyZQotdG8gYmUgaW4gdGhlIGBtYXN0ZXJgIGJyYW5jaC4gIFlvdSB3YW50IHRvIGNvbnRpbnVlIHBvbGlzaGluZwotdGhlbSBpbiBhIHRvcGljIGJyYW5jaCwgc28gY3JlYXRlIGB0b3BpYy93aXBgIGJyYW5jaCBvZmYgb2YgdGhlCi1jdXJyZW50IGBIRUFEYC4KKyAgICB0byBiZSBpbiB0aGUgYG1hc3RlcmAgYnJhbmNoLiAgWW91IHdhbnQgdG8gY29udGludWUgcG9saXNoaW5nCisgICAgdGhlbSBpbiBhIHRvcGljIGJyYW5jaCwgc28gY3JlYXRlIGB0b3BpYy93aXBgIGJyYW5jaCBvZmYgb2YgdGhlCisgICAgY3VycmVudCBgSEVBRGAuCiA8Mj4gUmV3aW5kIHRoZSBtYXN0ZXIgYnJhbmNoIHRvIGdldCByaWQgb2YgdGhvc2UgdGhyZWUgY29tbWl0cy4KIDwzPiBTd2l0Y2ggdG8gYHRvcGljL3dpcGAgYnJhbmNoIGFuZCBrZWVwIHdvcmtpbmcuCiAKQEAgLTE2OSwxMCArMTkyLDEwIEBACiAtLS0tLS0tLS0tLS0KICsKIDwxPiBUaGUgbGFzdCB0aHJlZSBjb21taXRzIChgSEVBRGAsIGBIRUFEXmAsIGFuZCBgSEVBRH4yYCkgd2VyZSBiYWQKLWFuZCB5b3UgZG8gbm90IHdhbnQgdG8gZXZlciBzZWUgdGhlbSBhZ2Fpbi4gIERvICpub3QqIGRvIHRoaXMgaWYKLXlvdSBoYXZlIGFscmVhZHkgZ2l2ZW4gdGhlc2UgY29tbWl0cyB0byBzb21lYm9keSBlbHNlLiAgKFNlZSB0aGUKLSJSRUNPVkVSSU5HIEZST00gVVBTVFJFQU0gUkVCQVNFIiBzZWN0aW9uIGluIGxpbmtnaXQ6Z2l0LXJlYmFzZVsxXSBmb3IKLXRoZSBpbXBsaWNhdGlvbnMgb2YgZG9pbmcgc28uKQorICAgIGFuZCB5b3UgZG8gbm90IHdhbnQgdG8gZXZlciBzZWUgdGhlbSBhZ2Fpbi4gIERvICpub3QqIGRvIHRoaXMgaWYKKyAgICB5b3UgaGF2ZSBhbHJlYWR5IGdpdmVuIHRoZXNlIGNvbW1pdHMgdG8gc29tZWJvZHkgZWxzZS4gIChTZWUgdGhlCisgICAgIlJFQ09WRVJJTkcgRlJPTSBVUFNUUkVBTSBSRUJBU0UiIHNlY3Rpb24gaW4gbGlua2dpdDpnaXQtcmViYXNlWzFdCisgICAgZm9yIHRoZSBpbXBsaWNhdGlvbnMgb2YgZG9pbmcgc28uKQogCiBVbmRvIGEgbWVyZ2Ugb3IgcHVsbDo6CiArCkBAIC0xODksMTggKzIxMiwxOCBAQAogLS0tLS0tLS0tLS0tCiArCiA8MT4gVHJ5IHRvIHVwZGF0ZSBmcm9tIHRoZSB1cHN0cmVhbSByZXN1bHRlZCBpbiBhIGxvdCBvZgotY29uZmxpY3RzOyB5b3Ugd2VyZSBub3QgcmVhZHkgdG8gc3BlbmQgYSBsb3Qgb2YgdGltZSBtZXJnaW5nCi1yaWdodCBub3csIHNvIHlvdSBkZWNpZGUgdG8gZG8gdGhhdCBsYXRlci4KKyAgICBjb25mbGljdHM7IHlvdSB3ZXJlIG5vdCByZWFkeSB0byBzcGVuZCBhIGxvdCBvZiB0aW1lIG1lcmdpbmcKKyAgICByaWdodCBub3csIHNvIHlvdSBkZWNpZGUgdG8gZG8gdGhhdCBsYXRlci4KIDwyPiAicHVsbCIgaGFzIG5vdCBtYWRlIG1lcmdlIGNvbW1pdCwgc28gYGdpdCByZXNldCAtLWhhcmRgCi13aGljaCBpcyBhIHN5bm9ueW0gZm9yIGBnaXQgcmVzZXQgLS1oYXJkIEhFQURgIGNsZWFycyB0aGUgbWVzcwotZnJvbSB0aGUgaW5kZXggZmlsZSBhbmQgdGhlIHdvcmtpbmcgdHJlZS4KKyAgICB3aGljaCBpcyBhIHN5bm9ueW0gZm9yIGBnaXQgcmVzZXQgLS1oYXJkIEhFQURgIGNsZWFycyB0aGUgbWVzcworICAgIGZyb20gdGhlIGluZGV4IGZpbGUgYW5kIHRoZSB3b3JraW5nIHRyZWUuCiA8Mz4gTWVyZ2UgYSB0b3BpYyBicmFuY2ggaW50byB0aGUgY3VycmVudCBicmFuY2gsIHdoaWNoIHJlc3VsdGVkCi1pbiBhIGZhc3QtZm9yd2FyZC4KKyAgICBpbiBhIGZhc3QtZm9yd2FyZC4KIDw0PiBCdXQgeW91IGRlY2lkZWQgdGhhdCB0aGUgdG9waWMgYnJhbmNoIGlzIG5vdCByZWFkeSBmb3IgcHVibGljCi1jb25zdW1wdGlvbiB5ZXQuICAicHVsbCIgb3IgIm1lcmdlIiBhbHdheXMgbGVhdmVzIHRoZSBvcmlnaW5hbAotdGlwIG9mIHRoZSBjdXJyZW50IGJyYW5jaCBpbiBgT1JJR19IRUFEYCwgc28gcmVzZXR0aW5nIGhhcmQgdG8gaXQKLWJyaW5ncyB5b3VyIGluZGV4IGZpbGUgYW5kIHRoZSB3b3JraW5nIHRyZWUgYmFjayB0byB0aGF0IHN0YXRlLAotYW5kIHJlc2V0cyB0aGUgdGlwIG9mIHRoZSBicmFuY2ggdG8gdGhhdCBjb21taXQuCisgICAgY29uc3VtcHRpb24geWV0LiAgInB1bGwiIG9yICJtZXJnZSIgYWx3YXlzIGxlYXZlcyB0aGUgb3JpZ2luYWwKKyAgICB0aXAgb2YgdGhlIGN1cnJlbnQgYnJhbmNoIGluIGBPUklHX0hFQURgLCBzbyByZXNldHRpbmcgaGFyZCB0byBpdAorICAgIGJyaW5ncyB5b3VyIGluZGV4IGZpbGUgYW5kIHRoZSB3b3JraW5nIHRyZWUgYmFjayB0byB0aGF0IHN0YXRlLAorICAgIGFuZCByZXNldHMgdGhlIHRpcCBvZiB0aGUgYnJhbmNoIHRvIHRoYXQgY29tbWl0LgogCiBVbmRvIGEgbWVyZ2Ugb3IgcHVsbCBpbnNpZGUgYSBkaXJ0eSB3b3JraW5nIHRyZWU6OgogKwpAQCAtMjE0LDE0ICsyMzcsMTQgQEAKIC0tLS0tLS0tLS0tLQogKwogPDE+IEV2ZW4gaWYgeW91IG1heSBoYXZlIGxvY2FsIG1vZGlmaWNhdGlvbnMgaW4geW91cgotd29ya2luZyB0cmVlLCB5b3UgY2FuIHNhZmVseSBzYXkgYGdpdCBwdWxsYCB3aGVuIHlvdSBrbm93Ci10aGF0IHRoZSBjaGFuZ2UgaW4gdGhlIG90aGVyIGJyYW5jaCBkb2VzIG5vdCBvdmVybGFwIHdpdGgKLXRoZW0uCisgICAgd29ya2luZyB0cmVlLCB5b3UgY2FuIHNhZmVseSBzYXkgYGdpdCBwdWxsYCB3aGVuIHlvdSBrbm93CisgICAgdGhhdCB0aGUgY2hhbmdlIGluIHRoZSBvdGhlciBicmFuY2ggZG9lcyBub3Qgb3ZlcmxhcCB3aXRoCisgICAgdGhlbS4KIDwyPiBBZnRlciBpbnNwZWN0aW5nIHRoZSByZXN1bHQgb2YgdGhlIG1lcmdlLCB5b3UgbWF5IGZpbmQKLXRoYXQgdGhlIGNoYW5nZSBpbiB0aGUgb3RoZXIgYnJhbmNoIGlzIHVuc2F0aXNmYWN0b3J5LiAgUnVubmluZwotYGdpdCByZXNldCAtLWhhcmQgT1JJR19IRUFEYCB3aWxsIGxldCB5b3UgZ28gYmFjayB0byB3aGVyZSB5b3UKLXdlcmUsIGJ1dCBpdCB3aWxsIGRpc2NhcmQgeW91ciBsb2NhbCBjaGFuZ2VzLCB3aGljaCB5b3UgZG8gbm90Ci13YW50LiAgYGdpdCByZXNldCAtLW1lcmdlYCBrZWVwcyB5b3VyIGxvY2FsIGNoYW5nZXMuCisgICAgdGhhdCB0aGUgY2hhbmdlIGluIHRoZSBvdGhlciBicmFuY2ggaXMgdW5zYXRpc2ZhY3RvcnkuICBSdW5uaW5nCisgICAgYGdpdCByZXNldCAtLWhhcmQgT1JJR19IRUFEYCB3aWxsIGxldCB5b3UgZ28gYmFjayB0byB3aGVyZSB5b3UKKyAgICB3ZXJlLCBidXQgaXQgd2lsbCBkaXNjYXJkIHlvdXIgbG9jYWwgY2hhbmdlcywgd2hpY2ggeW91IGRvIG5vdAorICAgIHdhbnQuICBgZ2l0IHJlc2V0IC0tbWVyZ2VgIGtlZXBzIHlvdXIgbG9jYWwgY2hhbmdlcy4KIAogCiBJbnRlcnJ1cHRlZCB3b3JrZmxvdzo6CkBAIC0yMzIsMTMgKzI1NSwxMyBAQAogbmVlZCB0byBnZXQgdG8gdGhlIG90aGVyIGJyYW5jaCBmb3IgYSBxdWljayBidWdmaXguCiArCiAtLS0tLS0tLS0tLS0KLSQgZ2l0IGNoZWNrb3V0IGZlYXR1cmUgOyMgeW91IHdlcmUgd29ya2luZyBpbiAiZmVhdHVyZSIgYnJhbmNoIGFuZAotJCB3b3JrIHdvcmsgd29yayAgICAgICA7IyBnb3QgaW50ZXJydXB0ZWQKKyQgZ2l0IHN3aXRjaCBmZWF0dXJlICA7IyB5b3Ugd2VyZSB3b3JraW5nIGluICJmZWF0dXJlIiBicmFuY2ggYW5kCiskIHdvcmsgd29yayB3b3JrICAgICAgOyMgZ290IGludGVycnVwdGVkCiAkIGdpdCBjb21taXQgLWEgLW0gInNuYXBzaG90IFdJUCIgICAgICAgICAgICAgICAgIDwxPgotJCBnaXQgY2hlY2tvdXQgbWFzdGVyCiskIGdpdCBzd2l0Y2ggbWFzdGVyCiAkIGZpeCBmaXggZml4CiAkIGdpdCBjb21taXQgOyMgY29tbWl0IHdpdGggcmVhbCBsb2cKLSQgZ2l0IGNoZWNrb3V0IGZlYXR1cmUKKyQgZ2l0IHN3aXRjaCBmZWF0dXJlCiAkIGdpdCByZXNldCAtLXNvZnQgSEVBRF4gOyMgZ28gYmFjayB0byBXSVAgc3RhdGUgIDwyPgogJCBnaXQgcmVzZXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Mz4KIC0tLS0tLS0tLS0tLQpAQCAtMjc5LDE4ICszMDIsMTggQEAKICsKIC0tLS0tLS0tLS0tLQogJCBnaXQgdGFnIHN0YXJ0Ci0kIGdpdCBjaGVja291dCAtYiBicmFuY2gxCiskIGdpdCBzd2l0Y2ggLWMgYnJhbmNoMQogJCBlZGl0CiAkIGdpdCBjb21taXQgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwxPgogJCBlZGl0Ci0kIGdpdCBjaGVja291dCAtYiBicmFuY2gyICAgICAgICAgICAgICAgICAgIDwyPgorJCBnaXQgc3dpdGNoIC1jIGJyYW5jaDIgICAgICAgICAgICAgICAgICAgICA8Mj4KICQgZ2l0IHJlc2V0IC0ta2VlcCBzdGFydCAgICAgICAgICAgICAgICAgICAgPDM+CiAtLS0tLS0tLS0tLS0KICsKIDwxPiBUaGlzIGNvbW1pdHMgeW91ciBmaXJzdCBlZGl0cyBpbiBgYnJhbmNoMWAuCiA8Mj4gSW4gdGhlIGlkZWFsIHdvcmxkLCB5b3UgY291bGQgaGF2ZSByZWFsaXplZCB0aGF0IHRoZSBlYXJsaWVyCiAgICAgY29tbWl0IGRpZCBub3QgYmVsb25nIHRvIHRoZSBuZXcgdG9waWMgd2hlbiB5b3UgY3JlYXRlZCBhbmQgc3dpdGNoZWQKLSAgICB0byBgYnJhbmNoMmAgKGkuZS4gYGdpdCBjaGVja291dCAtYiBicmFuY2gyIHN0YXJ0YCksIGJ1dCBub2JvZHkgaXMKKyAgICB0byBgYnJhbmNoMmAgKGkuZS4gYGdpdCBzd2l0Y2ggLWMgYnJhbmNoMiBzdGFydGApLCBidXQgbm9ib2R5IGlzCiAgICAgcGVyZmVjdC4KIDwzPiBCdXQgeW91IGNhbiB1c2UgYHJlc2V0IC0ta2VlcGAgdG8gcmVtb3ZlIHRoZSB1bndhbnRlZCBjb21taXQgYWZ0ZXIKICAgICB5b3Ugc3dpdGNoZWQgdG8gYGJyYW5jaDJgLgpAQCAtNDI4LDggKzQ1MSw4IEBACiAKIGByZXNldCAtLW1lcmdlYCBpcyBtZWFudCB0byBiZSB1c2VkIHdoZW4gcmVzZXR0aW5nIG91dCBvZiBhIGNvbmZsaWN0ZWQKIG1lcmdlLiBBbnkgbWVyZ3kgb3BlcmF0aW9uIGd1YXJhbnRlZXMgdGhhdCB0aGUgd29ya2luZyB0cmVlIGZpbGUgdGhhdCBpcwotaW52b2x2ZWQgaW4gdGhlIG1lcmdlIGRvZXMgbm90IGhhdmUgbG9jYWwgY2hhbmdlIHdydCB0aGUgaW5kZXggYmVmb3JlCi1pdCBzdGFydHMsIGFuZCB0aGF0IGl0IHdyaXRlcyB0aGUgcmVzdWx0IG91dCB0byB0aGUgd29ya2luZyB0cmVlLiBTbyBpZgoraW52b2x2ZWQgaW4gdGhlIG1lcmdlIGRvZXMgbm90IGhhdmUgYSBsb2NhbCBjaGFuZ2Ugd2l0aCByZXNwZWN0IHRvIHRoZSBpbmRleAorYmVmb3JlIGl0IHN0YXJ0cywgYW5kIHRoYXQgaXQgd3JpdGVzIHRoZSByZXN1bHQgb3V0IHRvIHRoZSB3b3JraW5nIHRyZWUuIFNvIGlmCiB3ZSBzZWUgc29tZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIGluZGV4IGFuZCB0aGUgdGFyZ2V0IGFuZCBhbHNvCiBiZXR3ZWVuIHRoZSBpbmRleCBhbmQgdGhlIHdvcmtpbmcgdHJlZSwgdGhlbiBpdCBtZWFucyB0aGF0IHdlIGFyZSBub3QKIHJlc2V0dGluZyBvdXQgZnJvbSBhIHN0YXRlIHRoYXQgYSBtZXJneSBvcGVyYXRpb24gbGVmdCBhZnRlciBmYWlsaW5nCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1yZXN0b3JlLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXJlc3RvcmUudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjViZjYwZDQKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZXN0b3JlLnR4dApAQCAtMCwwICsxLDIwNyBAQAorZ2l0LXJlc3RvcmUoMSkKKz09PT09PT09PT09PT09CisKK05BTUUKKy0tLS0KK2dpdC1yZXN0b3JlIC0gUmVzdG9yZSB3b3JraW5nIHRyZWUgZmlsZXMKKworU1lOT1BTSVMKKy0tLS0tLS0tCitbdmVyc2VdCisnZ2l0IHJlc3RvcmUnIFs8b3B0aW9ucz5dIFstLXNvdXJjZT08dHJlZT5dIFstLXN0YWdlZF0gWy0td29ya3RyZWVdIFstLV0gPHBhdGhzcGVjPi4uLgorJ2dpdCByZXN0b3JlJyBbPG9wdGlvbnM+XSBbLS1zb3VyY2U9PHRyZWU+XSBbLS1zdGFnZWRdIFstLXdvcmt0cmVlXSAtLXBhdGhzcGVjLWZyb20tZmlsZT08ZmlsZT4gWy0tcGF0aHNwZWMtZmlsZS1udWxdCisnZ2l0IHJlc3RvcmUnICgtcHwtLXBhdGNoKSBbPG9wdGlvbnM+XSBbLS1zb3VyY2U9PHRyZWU+XSBbLS1zdGFnZWRdIFstLXdvcmt0cmVlXSBbLS1dIFs8cGF0aHNwZWM+Li4uXQorCitERVNDUklQVElPTgorLS0tLS0tLS0tLS0KK1Jlc3RvcmUgc3BlY2lmaWVkIHBhdGhzIGluIHRoZSB3b3JraW5nIHRyZWUgd2l0aCBzb21lIGNvbnRlbnRzIGZyb20gYQorcmVzdG9yZSBzb3VyY2UuIElmIGEgcGF0aCBpcyB0cmFja2VkIGJ1dCBkb2VzIG5vdCBleGlzdCBpbiB0aGUgcmVzdG9yZQorc291cmNlLCBpdCB3aWxsIGJlIHJlbW92ZWQgdG8gbWF0Y2ggdGhlIHNvdXJjZS4KKworVGhlIGNvbW1hbmQgY2FuIGFsc28gYmUgdXNlZCB0byByZXN0b3JlIHRoZSBjb250ZW50IGluIHRoZSBpbmRleCB3aXRoCitgLS1zdGFnZWRgLCBvciByZXN0b3JlIGJvdGggdGhlIHdvcmtpbmcgdHJlZSBhbmQgdGhlIGluZGV4IHdpdGgKK2AtLXN0YWdlZCAtLXdvcmt0cmVlYC4KKworQnkgZGVmYXVsdCwgdGhlIHJlc3RvcmUgc291cmNlcyBmb3Igd29ya2luZyB0cmVlIGFuZCB0aGUgaW5kZXggYXJlIHRoZQoraW5kZXggYW5kIGBIRUFEYCByZXNwZWN0aXZlbHkuIGAtLXNvdXJjZWAgY291bGQgYmUgdXNlZCB0byBzcGVjaWZ5IGEKK2NvbW1pdCBhcyB0aGUgcmVzdG9yZSBzb3VyY2UuCisKK1NlZSAiUmVzZXQsIHJlc3RvcmUgYW5kIHJldmVydCIgaW4gbGlua2dpdDpnaXRbMV0gZm9yIHRoZSBkaWZmZXJlbmNlcworYmV0d2VlbiB0aGUgdGhyZWUgY29tbWFuZHMuCisKK1RISVMgQ09NTUFORCBJUyBFWFBFUklNRU5UQUwuIFRIRSBCRUhBVklPUiBNQVkgQ0hBTkdFLgorCitPUFRJT05TCistLS0tLS0tCistcyA8dHJlZT46OgorLS1zb3VyY2U9PHRyZWU+OjoKKwlSZXN0b3JlIHRoZSB3b3JraW5nIHRyZWUgZmlsZXMgd2l0aCB0aGUgY29udGVudCBmcm9tIHRoZSBnaXZlbgorCXRyZWUuIEl0IGlzIGNvbW1vbiB0byBzcGVjaWZ5IHRoZSBzb3VyY2UgdHJlZSBieSBuYW1pbmcgYQorCWNvbW1pdCwgYnJhbmNoIG9yIHRhZyBhc3NvY2lhdGVkIHdpdGggaXQuCisrCitJZiBub3Qgc3BlY2lmaWVkLCB0aGUgZGVmYXVsdCByZXN0b3JlIHNvdXJjZSBmb3IgdGhlIHdvcmtpbmcgdHJlZSBpcwordGhlIGluZGV4LCBhbmQgdGhlIGRlZmF1bHQgcmVzdG9yZSBzb3VyY2UgZm9yIHRoZSBpbmRleCBpcworYEhFQURgLiBXaGVuIGJvdGggYC0tc3RhZ2VkYCBhbmQgYC0td29ya3RyZWVgIGFyZSBzcGVjaWZpZWQsCitgLS1zb3VyY2VgIG11c3QgYWxzbyBiZSBzcGVjaWZpZWQuCisKKy1wOjoKKy0tcGF0Y2g6OgorCUludGVyYWN0aXZlbHkgc2VsZWN0IGh1bmtzIGluIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlCisJcmVzdG9yZSBzb3VyY2UgYW5kIHRoZSByZXN0b3JlIGxvY2F0aW9uLiBTZWUgdGhlIGBgSW50ZXJhY3RpdmUKKwlNb2RlJycgc2VjdGlvbiBvZiBsaW5rZ2l0OmdpdC1hZGRbMV0gdG8gbGVhcm4gaG93IHRvIG9wZXJhdGUKKwl0aGUgYC0tcGF0Y2hgIG1vZGUuCisrCitOb3RlIHRoYXQgYC0tcGF0Y2hgIGNhbiBhY2NlcHQgbm8gcGF0aHNwZWMgYW5kIHdpbGwgcHJvbXB0IHRvIHJlc3RvcmUKK2FsbCBtb2RpZmllZCBwYXRocy4KKworLVc6OgorLS13b3JrdHJlZTo6CistUzo6CistLXN0YWdlZDo6CisJU3BlY2lmeSB0aGUgcmVzdG9yZSBsb2NhdGlvbi4gSWYgbmVpdGhlciBvcHRpb24gaXMgc3BlY2lmaWVkLAorCWJ5IGRlZmF1bHQgdGhlIHdvcmtpbmcgdHJlZSBpcyByZXN0b3JlZC4gU3BlY2lmeWluZyBgLS1zdGFnZWRgCisJd2lsbCBvbmx5IHJlc3RvcmUgdGhlIGluZGV4LiBTcGVjaWZ5aW5nIGJvdGggcmVzdG9yZXMgYm90aC4KKworLXE6OgorLS1xdWlldDo6CisJUXVpZXQsIHN1cHByZXNzIGZlZWRiYWNrIG1lc3NhZ2VzLiBJbXBsaWVzIGAtLW5vLXByb2dyZXNzYC4KKworLS1wcm9ncmVzczo6CistLW5vLXByb2dyZXNzOjoKKwlQcm9ncmVzcyBzdGF0dXMgaXMgcmVwb3J0ZWQgb24gdGhlIHN0YW5kYXJkIGVycm9yIHN0cmVhbQorCWJ5IGRlZmF1bHQgd2hlbiBpdCBpcyBhdHRhY2hlZCB0byBhIHRlcm1pbmFsLCB1bmxlc3MgYC0tcXVpZXRgCisJaXMgc3BlY2lmaWVkLiBUaGlzIGZsYWcgZW5hYmxlcyBwcm9ncmVzcyByZXBvcnRpbmcgZXZlbiBpZiBub3QKKwlhdHRhY2hlZCB0byBhIHRlcm1pbmFsLCByZWdhcmRsZXNzIG9mIGAtLXF1aWV0YC4KKworLS1vdXJzOjoKKy0tdGhlaXJzOjoKKwlXaGVuIHJlc3RvcmluZyBmaWxlcyBpbiB0aGUgd29ya2luZyB0cmVlIGZyb20gdGhlIGluZGV4LCB1c2UKKwlzdGFnZSAjMiAoJ291cnMnKSBvciAjMyAoJ3RoZWlycycpIGZvciB1bm1lcmdlZCBwYXRocy4KKysKK05vdGUgdGhhdCBkdXJpbmcgYGdpdCByZWJhc2VgIGFuZCBgZ2l0IHB1bGwgLS1yZWJhc2VgLCAnb3VycycgYW5kCisndGhlaXJzJyBtYXkgYXBwZWFyIHN3YXBwZWQuIFNlZSB0aGUgZXhwbGFuYXRpb24gb2YgdGhlIHNhbWUgb3B0aW9ucworaW4gbGlua2dpdDpnaXQtY2hlY2tvdXRbMV0gZm9yIGRldGFpbHMuCisKKy1tOjoKKy0tbWVyZ2U6OgorCVdoZW4gcmVzdG9yaW5nIGZpbGVzIG9uIHRoZSB3b3JraW5nIHRyZWUgZnJvbSB0aGUgaW5kZXgsCisJcmVjcmVhdGUgdGhlIGNvbmZsaWN0ZWQgbWVyZ2UgaW4gdGhlIHVubWVyZ2VkIHBhdGhzLgorCistLWNvbmZsaWN0PTxzdHlsZT46OgorCVRoZSBzYW1lIGFzIGAtLW1lcmdlYCBvcHRpb24gYWJvdmUsIGJ1dCBjaGFuZ2VzIHRoZSB3YXkgdGhlCisJY29uZmxpY3RpbmcgaHVua3MgYXJlIHByZXNlbnRlZCwgb3ZlcnJpZGluZyB0aGUKKwlgbWVyZ2UuY29uZmxpY3RTdHlsZWAgY29uZmlndXJhdGlvbiB2YXJpYWJsZS4gIFBvc3NpYmxlIHZhbHVlcworCWFyZSAibWVyZ2UiIChkZWZhdWx0KSBhbmQgImRpZmYzIiAoaW4gYWRkaXRpb24gdG8gd2hhdCBpcworCXNob3duIGJ5ICJtZXJnZSIgc3R5bGUsIHNob3dzIHRoZSBvcmlnaW5hbCBjb250ZW50cykuCisKKy0taWdub3JlLXVubWVyZ2VkOjoKKwlXaGVuIHJlc3RvcmluZyBmaWxlcyBvbiB0aGUgd29ya2luZyB0cmVlIGZyb20gdGhlIGluZGV4LCBkbworCW5vdCBhYm9ydCB0aGUgb3BlcmF0aW9uIGlmIHRoZXJlIGFyZSB1bm1lcmdlZCBlbnRyaWVzIGFuZAorCW5laXRoZXIgYC0tb3Vyc2AsIGAtLXRoZWlyc2AsIGAtLW1lcmdlYCBvciBgLS1jb25mbGljdGAgaXMKKwlzcGVjaWZpZWQuIFVubWVyZ2VkIHBhdGhzIG9uIHRoZSB3b3JraW5nIHRyZWUgYXJlIGxlZnQgYWxvbmUuCisKKy0taWdub3JlLXNraXAtd29ya3RyZWUtYml0czo6CisJSW4gc3BhcnNlIGNoZWNrb3V0IG1vZGUsIGJ5IGRlZmF1bHQgaXMgdG8gb25seSB1cGRhdGUgZW50cmllcworCW1hdGNoZWQgYnkgYDxwYXRoc3BlYz5gIGFuZCBzcGFyc2UgcGF0dGVybnMgaW4KKwkkR0lUX0RJUi9pbmZvL3NwYXJzZS1jaGVja291dC4gVGhpcyBvcHRpb24gaWdub3JlcyB0aGUgc3BhcnNlCisJcGF0dGVybnMgYW5kIHVuY29uZGl0aW9uYWxseSByZXN0b3JlcyBhbnkgZmlsZXMgaW4KKwlgPHBhdGhzcGVjPmAuCisKKy0tb3ZlcmxheTo6CistLW5vLW92ZXJsYXk6OgorCUluIG92ZXJsYXkgbW9kZSwgdGhlIGNvbW1hbmQgbmV2ZXIgcmVtb3ZlcyBmaWxlcyB3aGVuCisJcmVzdG9yaW5nLiBJbiBuby1vdmVybGF5IG1vZGUsIHRyYWNrZWQgZmlsZXMgdGhhdCBkbyBub3QKKwlhcHBlYXIgaW4gdGhlIGAtLXNvdXJjZWAgdHJlZSBhcmUgcmVtb3ZlZCwgdG8gbWFrZSB0aGVtIG1hdGNoCisJYDx0cmVlPmAgZXhhY3RseS4gVGhlIGRlZmF1bHQgaXMgbm8tb3ZlcmxheSBtb2RlLgorCistLXBhdGhzcGVjLWZyb20tZmlsZT08ZmlsZT46OgorCVBhdGhzcGVjIGlzIHBhc3NlZCBpbiBgPGZpbGU+YCBpbnN0ZWFkIG9mIGNvbW1hbmRsaW5lIGFyZ3MuIElmCisJYDxmaWxlPmAgaXMgZXhhY3RseSBgLWAgdGhlbiBzdGFuZGFyZCBpbnB1dCBpcyB1c2VkLiBQYXRoc3BlYworCWVsZW1lbnRzIGFyZSBzZXBhcmF0ZWQgYnkgTEYgb3IgQ1IvTEYuIFBhdGhzcGVjIGVsZW1lbnRzIGNhbiBiZQorCXF1b3RlZCBhcyBleHBsYWluZWQgZm9yIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBjb3JlLnF1b3RlUGF0aGAKKwkoc2VlIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXSkuIFNlZSBhbHNvIGAtLXBhdGhzcGVjLWZpbGUtbnVsYCBhbmQKKwlnbG9iYWwgYC0tbGl0ZXJhbC1wYXRoc3BlY3NgLgorCistLXBhdGhzcGVjLWZpbGUtbnVsOjoKKwlPbmx5IG1lYW5pbmdmdWwgd2l0aCBgLS1wYXRoc3BlYy1mcm9tLWZpbGVgLiBQYXRoc3BlYyBlbGVtZW50cyBhcmUKKwlzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIGFuZCBhbGwgb3RoZXIgY2hhcmFjdGVycyBhcmUgdGFrZW4KKwlsaXRlcmFsbHkgKGluY2x1ZGluZyBuZXdsaW5lcyBhbmQgcXVvdGVzKS4KKworXC0tOjoKKwlEbyBub3QgaW50ZXJwcmV0IGFueSBtb3JlIGFyZ3VtZW50cyBhcyBvcHRpb25zLgorCis8cGF0aHNwZWM+Li4uOjoKKwlMaW1pdHMgdGhlIHBhdGhzIGFmZmVjdGVkIGJ5IHRoZSBvcGVyYXRpb24uCisrCitGb3IgbW9yZSBkZXRhaWxzLCBzZWUgdGhlICdwYXRoc3BlYycgZW50cnkgaW4gbGlua2dpdDpnaXRnbG9zc2FyeVs3XS4KKworRVhBTVBMRVMKKy0tLS0tLS0tCisKK1RoZSBmb2xsb3dpbmcgc2VxdWVuY2Ugc3dpdGNoZXMgdG8gdGhlIGBtYXN0ZXJgIGJyYW5jaCwgcmV2ZXJ0cyB0aGUKK2BNYWtlZmlsZWAgdG8gdHdvIHJldmlzaW9ucyBiYWNrLCBkZWxldGVzIGhlbGxvLmMgYnkgbWlzdGFrZSwgYW5kIGdldHMKK2l0IGJhY2sgZnJvbSB0aGUgaW5kZXguCisKKy0tLS0tLS0tLS0tLQorJCBnaXQgc3dpdGNoIG1hc3RlcgorJCBnaXQgcmVzdG9yZSAtLXNvdXJjZSBtYXN0ZXJ+MiBNYWtlZmlsZSAgPDE+CiskIHJtIC1mIGhlbGxvLmMKKyQgZ2l0IHJlc3RvcmUgaGVsbG8uYyAgICAgICAgICAgICAgICAgICAgIDwyPgorLS0tLS0tLS0tLS0tCisKKzwxPiB0YWtlIGEgZmlsZSBvdXQgb2YgYW5vdGhlciBjb21taXQKKzwyPiByZXN0b3JlIGhlbGxvLmMgZnJvbSB0aGUgaW5kZXgKKworSWYgeW91IHdhbnQgdG8gcmVzdG9yZSBfYWxsXyBDIHNvdXJjZSBmaWxlcyB0byBtYXRjaCB0aGUgdmVyc2lvbiBpbgordGhlIGluZGV4LCB5b3UgY2FuIHNheQorCistLS0tLS0tLS0tLS0KKyQgZ2l0IHJlc3RvcmUgJyouYycKKy0tLS0tLS0tLS0tLQorCitOb3RlIHRoZSBxdW90ZXMgYXJvdW5kIGAqLmNgLiAgVGhlIGZpbGUgYGhlbGxvLmNgIHdpbGwgYWxzbyBiZQorcmVzdG9yZWQsIGV2ZW4gdGhvdWdoIGl0IGlzIG5vIGxvbmdlciBpbiB0aGUgd29ya2luZyB0cmVlLCBiZWNhdXNlIHRoZQorZmlsZSBnbG9iYmluZyBpcyB1c2VkIHRvIG1hdGNoIGVudHJpZXMgaW4gdGhlIGluZGV4IChub3QgaW4gdGhlCit3b3JraW5nIHRyZWUgYnkgdGhlIHNoZWxsKS4KKworVG8gcmVzdG9yZSBhbGwgZmlsZXMgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5CisKKy0tLS0tLS0tLS0tLQorJCBnaXQgcmVzdG9yZSAuCistLS0tLS0tLS0tLS0KKworb3IgdG8gcmVzdG9yZSBhbGwgd29ya2luZyB0cmVlIGZpbGVzIHdpdGggJ3RvcCcgcGF0aHNwZWMgbWFnaWMgKHNlZQorbGlua2dpdDpnaXRnbG9zc2FyeVs3XSkKKworLS0tLS0tLS0tLS0tCiskIGdpdCByZXN0b3JlIDovCistLS0tLS0tLS0tLS0KKworVG8gcmVzdG9yZSBhIGZpbGUgaW4gdGhlIGluZGV4IHRvIG1hdGNoIHRoZSB2ZXJzaW9uIGluIGBIRUFEYCAodGhpcyBpcwordGhlIHNhbWUgYXMgdXNpbmcgbGlua2dpdDpnaXQtcmVzZXRbMV0pCisKKy0tLS0tLS0tLS0tLQorJCBnaXQgcmVzdG9yZSAtLXN0YWdlZCBoZWxsby5jCistLS0tLS0tLS0tLS0KKworb3IgeW91IGNhbiByZXN0b3JlIGJvdGggdGhlIGluZGV4IGFuZCB0aGUgd29ya2luZyB0cmVlICh0aGlzIHRoZSBzYW1lCithcyB1c2luZyBsaW5rZ2l0OmdpdC1jaGVja291dFsxXSkKKworLS0tLS0tLS0tLS0tCiskIGdpdCByZXN0b3JlIC0tc291cmNlPUhFQUQgLS1zdGFnZWQgLS13b3JrdHJlZSBoZWxsby5jCistLS0tLS0tLS0tLS0KKworb3IgdGhlIHNob3J0IGZvcm0gd2hpY2ggaXMgbW9yZSBwcmFjdGljYWwgYnV0IGxlc3MgcmVhZGFibGU6CisKKy0tLS0tLS0tLS0tLQorJCBnaXQgcmVzdG9yZSAtc0AgLVNXIGhlbGxvLmMKKy0tLS0tLS0tLS0tLQorCitTRUUgQUxTTworLS0tLS0tLS0KK2xpbmtnaXQ6Z2l0LWNoZWNrb3V0WzFdLAorbGlua2dpdDpnaXQtcmVzZXRbMV0KKworR0lUCistLS0KK1BhcnQgb2YgdGhlIGxpbmtnaXQ6Z2l0WzFdIHN1aXRlCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1yZXYtbGlzdC50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZXYtbGlzdC50eHQKaW5kZXggODg2MDlmZi4uMDI1YzkxMSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtcmV2LWxpc3QudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LXJldi1saXN0LnR4dApAQCAtOSw1OCArOSw3IEBACiBTWU5PUFNJUwogLS0tLS0tLS0KIFt2ZXJzZV0KLSdnaXQgcmV2LWxpc3QnIFsgLS1tYXgtY291bnQ9PG51bWJlcj4gXQotCSAgICAgWyAtLXNraXA9PG51bWJlcj4gXQotCSAgICAgWyAtLW1heC1hZ2U9PHRpbWVzdGFtcD4gXQotCSAgICAgWyAtLW1pbi1hZ2U9PHRpbWVzdGFtcD4gXQotCSAgICAgWyAtLXNwYXJzZSBdCi0JICAgICBbIC0tbWVyZ2VzIF0KLQkgICAgIFsgLS1uby1tZXJnZXMgXQotCSAgICAgWyAtLW1pbi1wYXJlbnRzPTxudW1iZXI+IF0KLQkgICAgIFsgLS1uby1taW4tcGFyZW50cyBdCi0JICAgICBbIC0tbWF4LXBhcmVudHM9PG51bWJlcj4gXQotCSAgICAgWyAtLW5vLW1heC1wYXJlbnRzIF0KLQkgICAgIFsgLS1maXJzdC1wYXJlbnQgXQotCSAgICAgWyAtLXJlbW92ZS1lbXB0eSBdCi0JICAgICBbIC0tZnVsbC1oaXN0b3J5IF0KLQkgICAgIFsgLS1ub3QgXQotCSAgICAgWyAtLWFsbCBdCi0JICAgICBbIC0tYnJhbmNoZXNbPTxwYXR0ZXJuPl0gXQotCSAgICAgWyAtLXRhZ3NbPTxwYXR0ZXJuPl0gXQotCSAgICAgWyAtLXJlbW90ZXNbPTxwYXR0ZXJuPl0gXQotCSAgICAgWyAtLWdsb2I9PGdsb2ItcGF0dGVybj4gXQotCSAgICAgWyAtLWlnbm9yZS1taXNzaW5nIF0KLQkgICAgIFsgLS1zdGRpbiBdCi0JICAgICBbIC0tcXVpZXQgXQotCSAgICAgWyAtLXRvcG8tb3JkZXIgXQotCSAgICAgWyAtLXBhcmVudHMgXQotCSAgICAgWyAtLXRpbWVzdGFtcCBdCi0JICAgICBbIC0tbGVmdC1yaWdodCBdCi0JICAgICBbIC0tbGVmdC1vbmx5IF0KLQkgICAgIFsgLS1yaWdodC1vbmx5IF0KLQkgICAgIFsgLS1jaGVycnktbWFyayBdCi0JICAgICBbIC0tY2hlcnJ5LXBpY2sgXQotCSAgICAgWyAtLWVuY29kaW5nPTxlbmNvZGluZz4gXQotCSAgICAgWyAtLShhdXRob3J8Y29tbWl0dGVyfGdyZXApPTxwYXR0ZXJuPiBdCi0JICAgICBbIC0tcmVnZXhwLWlnbm9yZS1jYXNlIHwgLWkgXQotCSAgICAgWyAtLWV4dGVuZGVkLXJlZ2V4cCB8IC1FIF0KLQkgICAgIFsgLS1maXhlZC1zdHJpbmdzIHwgLUYgXQotCSAgICAgWyAtLWRhdGU9PGZvcm1hdD5dCi0JICAgICBbIFsgLS1vYmplY3RzIHwgLS1vYmplY3RzLWVkZ2UgfCAtLW9iamVjdHMtZWRnZS1hZ2dyZXNzaXZlIF0KLQkgICAgICAgWyAtLXVucGFja2VkIF0KLQkgICAgICAgWyAtLWZpbHRlcj08ZmlsdGVyLXNwZWM+IFsgLS1maWx0ZXItcHJpbnQtb21pdHRlZCBdIF0gXQotCSAgICAgWyAtLW1pc3Npbmc9PG1pc3NpbmctYWN0aW9uPiBdCi0JICAgICBbIC0tcHJldHR5IHwgLS1oZWFkZXIgXQotCSAgICAgWyAtLWJpc2VjdCBdCi0JICAgICBbIC0tYmlzZWN0LXZhcnMgXQotCSAgICAgWyAtLWJpc2VjdC1hbGwgXQotCSAgICAgWyAtLW1lcmdlIF0KLQkgICAgIFsgLS1yZXZlcnNlIF0KLQkgICAgIFsgLS13YWxrLXJlZmxvZ3MgXQotCSAgICAgWyAtLW5vLXdhbGsgXSBbIC0tZG8td2FsayBdCi0JICAgICBbIC0tY291bnQgXQotCSAgICAgWyAtLXVzZS1iaXRtYXAtaW5kZXggXQotCSAgICAgPGNvbW1pdD4uLi4gWyBcLS0gPHBhdGhzPi4uLiBdCisnZ2l0IHJldi1saXN0JyBbPG9wdGlvbnM+XSA8Y29tbWl0Pi4uLiBbWy0tXSA8cGF0aD4uLi5dCiAKIERFU0NSSVBUSU9OCiAtLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtcmV2LXBhcnNlLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXJldi1wYXJzZS50eHQKaW5kZXggZTcyZDMzMi4uMTliMTJiNiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtcmV2LXBhcnNlLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZXYtcGFyc2UudHh0CkBAIC0yNjIsNyArMjYyLDggQEAKIAlkaXJlY3RvcnkuCiAKIC0tc2hvdy10b3BsZXZlbDo6Ci0JU2hvdyB0aGUgYWJzb2x1dGUgcGF0aCBvZiB0aGUgdG9wLWxldmVsIGRpcmVjdG9yeS4KKwlTaG93IHRoZSBhYnNvbHV0ZSBwYXRoIG9mIHRoZSB0b3AtbGV2ZWwgZGlyZWN0b3J5IG9mIHRoZSB3b3JraW5nCisJdHJlZS4gSWYgdGhlcmUgaXMgbm8gd29ya2luZyB0cmVlLCByZXBvcnQgYW4gZXJyb3IuCiAKIC0tc2hvdy1zdXBlcnByb2plY3Qtd29ya2luZy10cmVlOjoKIAlTaG93IHRoZSBhYnNvbHV0ZSBwYXRoIG9mIHRoZSByb290IG9mIHRoZSBzdXBlcnByb2plY3QncwpAQCAtMjc0LDYgKzI3NSwxMyBAQAogCVNob3cgdGhlIHBhdGggdG8gdGhlIHNoYXJlZCBpbmRleCBmaWxlIGluIHNwbGl0IGluZGV4IG1vZGUsIG9yCiAJZW1wdHkgaWYgbm90IGluIHNwbGl0LWluZGV4IG1vZGUuCiAKKy0tc2hvdy1vYmplY3QtZm9ybWF0Wz0oc3RvcmFnZXxpbnB1dHxvdXRwdXQpXTo6CisJU2hvdyB0aGUgb2JqZWN0IGZvcm1hdCAoaGFzaCBhbGdvcml0aG0pIHVzZWQgZm9yIHRoZSByZXBvc2l0b3J5CisJZm9yIHN0b3JhZ2UgaW5zaWRlIHRoZSBgLmdpdGAgZGlyZWN0b3J5LCBpbnB1dCwgb3Igb3V0cHV0LiBGb3IKKwlpbnB1dCwgbXVsdGlwbGUgYWxnb3JpdGhtcyBtYXkgYmUgcHJpbnRlZCwgc3BhY2Utc2VwYXJhdGVkLgorCUlmIG5vdCBzcGVjaWZpZWQsIHRoZSBkZWZhdWx0IGlzICJzdG9yYWdlIi4KKworCiBPdGhlciBPcHRpb25zCiB+fn5+fn5+fn5+fn5+CiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXJldmVydC50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1yZXZlcnQudHh0CmluZGV4IDgzNzcwN2EuLjlkMjIyNzAgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXJldmVydC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtcmV2ZXJ0LnR4dApAQCAtOSw5ICs5LDcgQEAKIC0tLS0tLS0tCiBbdmVyc2VdCiAnZ2l0IHJldmVydCcgWy0tW25vLV1lZGl0XSBbLW5dIFstbSBwYXJlbnQtbnVtYmVyXSBbLXNdIFstU1s8a2V5aWQ+XV0gPGNvbW1pdD4uLi4KLSdnaXQgcmV2ZXJ0JyAtLWNvbnRpbnVlCi0nZ2l0IHJldmVydCcgLS1xdWl0Ci0nZ2l0IHJldmVydCcgLS1hYm9ydAorJ2dpdCByZXZlcnQnICgtLWNvbnRpbnVlIHwgLS1za2lwIHwgLS1hYm9ydCB8IC0tcXVpdCkKIAogREVTQ1JJUFRJT04KIC0tLS0tLS0tLS0tCkBAIC0yNiwxMCArMjQsMTMgQEAKIHRocm93IGF3YXkgYWxsIHVuY29tbWl0dGVkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIGRpcmVjdG9yeSwgeW91CiBzaG91bGQgc2VlIGxpbmtnaXQ6Z2l0LXJlc2V0WzFdLCBwYXJ0aWN1bGFybHkgdGhlIGAtLWhhcmRgIG9wdGlvbi4gIElmCiB5b3Ugd2FudCB0byBleHRyYWN0IHNwZWNpZmljIGZpbGVzIGFzIHRoZXkgd2VyZSBpbiBhbm90aGVyIGNvbW1pdCwgeW91Ci1zaG91bGQgc2VlIGxpbmtnaXQ6Z2l0LWNoZWNrb3V0WzFdLCBzcGVjaWZpY2FsbHkgdGhlIGBnaXQgY2hlY2tvdXQKLTxjb21taXQ+IC0tIDxmaWxlbmFtZT5gIHN5bnRheC4gIFRha2UgY2FyZSB3aXRoIHRoZXNlIGFsdGVybmF0aXZlcyBhcworc2hvdWxkIHNlZSBsaW5rZ2l0OmdpdC1yZXN0b3JlWzFdLCBzcGVjaWZpY2FsbHkgdGhlIGAtLXNvdXJjZWAKK29wdGlvbi4gVGFrZSBjYXJlIHdpdGggdGhlc2UgYWx0ZXJuYXRpdmVzIGFzCiBib3RoIHdpbGwgZGlzY2FyZCB1bmNvbW1pdHRlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyBkaXJlY3RvcnkuCiAKK1NlZSAiUmVzZXQsIHJlc3RvcmUgYW5kIHJldmVydCIgaW4gbGlua2dpdDpnaXRbMV0gZm9yIHRoZSBkaWZmZXJlbmNlcworYmV0d2VlbiB0aGUgdGhyZWUgY29tbWFuZHMuCisKIE9QVElPTlMKIC0tLS0tLS0KIDxjb21taXQ+Li4uOjoKQEAgLTY2LDYgKzY3LDEzIEBACiAJV2l0aCB0aGlzIG9wdGlvbiwgJ2dpdCByZXZlcnQnIHdpbGwgbm90IHN0YXJ0IHRoZSBjb21taXQKIAltZXNzYWdlIGVkaXRvci4KIAorLS1jbGVhbnVwPTxtb2RlPjo6CisJVGhpcyBvcHRpb24gZGV0ZXJtaW5lcyBob3cgdGhlIGNvbW1pdCBtZXNzYWdlIHdpbGwgYmUgY2xlYW5lZCB1cCBiZWZvcmUKKwliZWluZyBwYXNzZWQgb24gdG8gdGhlIGNvbW1pdCBtYWNoaW5lcnkuIFNlZSBsaW5rZ2l0OmdpdC1jb21taXRbMV0gZm9yIG1vcmUKKwlkZXRhaWxzLiBJbiBwYXJ0aWN1bGFyLCBpZiB0aGUgJzxtb2RlPicgaXMgZ2l2ZW4gYSB2YWx1ZSBvZiBgc2Npc3NvcnNgLAorCXNjaXNzb3JzIHdpbGwgYmUgYXBwZW5kZWQgdG8gYE1FUkdFX01TR2AgYmVmb3JlIGJlaW5nIHBhc3NlZCBvbiBpbiB0aGUgY2FzZQorCW9mIGEgY29uZmxpY3QuCisKIC1uOjoKIC0tbm8tY29tbWl0OjoKIAlVc3VhbGx5IHRoZSBjb21tYW5kIGF1dG9tYXRpY2FsbHkgY3JlYXRlcyBzb21lIGNvbW1pdHMgd2l0aApAQCAtMTAxLDYgKzEwOSwxMSBAQAogCVBhc3MgdGhlIG1lcmdlIHN0cmF0ZWd5LXNwZWNpZmljIG9wdGlvbiB0aHJvdWdoIHRvIHRoZQogCW1lcmdlIHN0cmF0ZWd5LiAgU2VlIGxpbmtnaXQ6Z2l0LW1lcmdlWzFdIGZvciBkZXRhaWxzLgogCistLXJlcmVyZS1hdXRvdXBkYXRlOjoKKy0tbm8tcmVyZXJlLWF1dG91cGRhdGU6OgorCUFsbG93IHRoZSByZXJlcmUgbWVjaGFuaXNtIHRvIHVwZGF0ZSB0aGUgaW5kZXggd2l0aCB0aGUKKwlyZXN1bHQgb2YgYXV0by1jb25mbGljdCByZXNvbHV0aW9uIGlmIHBvc3NpYmxlLgorCiBTRVFVRU5DRVIgU1VCQ09NTUFORFMKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQogaW5jbHVkZTo6c2VxdWVuY2VyLnR4dFtdCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1ybS50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1ybS50eHQKaW5kZXggYjVjNDYyMi4uYWI3NTAzNiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtcm0udHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LXJtLnR4dApAQCAtOCwxNiArOCwxOCBAQAogU1lOT1BTSVMKIC0tLS0tLS0tCiBbdmVyc2VdCi0nZ2l0IHJtJyBbLWYgfCAtLWZvcmNlXSBbLW5dIFstcl0gWy0tY2FjaGVkXSBbLS1pZ25vcmUtdW5tYXRjaF0gWy0tcXVpZXRdIFstLV0gPGZpbGU+Li4uCisnZ2l0IHJtJyBbLWYgfCAtLWZvcmNlXSBbLW5dIFstcl0gWy0tY2FjaGVkXSBbLS1pZ25vcmUtdW5tYXRjaF0KKwkgIFstLXF1aWV0XSBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV0KKwkgIFstLV0gWzxwYXRoc3BlYz4uLi5dCiAKIERFU0NSSVBUSU9OCiAtLS0tLS0tLS0tLQotUmVtb3ZlIGZpbGVzIGZyb20gdGhlIGluZGV4LCBvciBmcm9tIHRoZSB3b3JraW5nIHRyZWUgYW5kIHRoZSBpbmRleC4KLWBnaXQgcm1gIHdpbGwgbm90IHJlbW92ZSBhIGZpbGUgZnJvbSBqdXN0IHlvdXIgd29ya2luZyBkaXJlY3RvcnkuCi0oVGhlcmUgaXMgbm8gb3B0aW9uIHRvIHJlbW92ZSBhIGZpbGUgb25seSBmcm9tIHRoZSB3b3JraW5nIHRyZWUKLWFuZCB5ZXQga2VlcCBpdCBpbiB0aGUgaW5kZXg7IHVzZSBgL2Jpbi9ybWAgaWYgeW91IHdhbnQgdG8gZG8gdGhhdC4pCi1UaGUgZmlsZXMgYmVpbmcgcmVtb3ZlZCBoYXZlIHRvIGJlIGlkZW50aWNhbCB0byB0aGUgdGlwIG9mIHRoZSBicmFuY2gsCi1hbmQgbm8gdXBkYXRlcyB0byB0aGVpciBjb250ZW50cyBjYW4gYmUgc3RhZ2VkIGluIHRoZSBpbmRleCwKK1JlbW92ZSBmaWxlcyBtYXRjaGluZyBwYXRoc3BlYyBmcm9tIHRoZSBpbmRleCwgb3IgZnJvbSB0aGUgd29ya2luZyB0cmVlCithbmQgdGhlIGluZGV4LiBgZ2l0IHJtYCB3aWxsIG5vdCByZW1vdmUgYSBmaWxlIGZyb20ganVzdCB5b3VyIHdvcmtpbmcKK2RpcmVjdG9yeS4gKFRoZXJlIGlzIG5vIG9wdGlvbiB0byByZW1vdmUgYSBmaWxlIG9ubHkgZnJvbSB0aGUgd29ya2luZwordHJlZSBhbmQgeWV0IGtlZXAgaXQgaW4gdGhlIGluZGV4OyB1c2UgYC9iaW4vcm1gIGlmIHlvdSB3YW50IHRvIGRvCit0aGF0LikgVGhlIGZpbGVzIGJlaW5nIHJlbW92ZWQgaGF2ZSB0byBiZSBpZGVudGljYWwgdG8gdGhlIHRpcCBvZiB0aGUKK2JyYW5jaCwgYW5kIG5vIHVwZGF0ZXMgdG8gdGhlaXIgY29udGVudHMgY2FuIGJlIHN0YWdlZCBpbiB0aGUgaW5kZXgsCiB0aG91Z2ggdGhhdCBkZWZhdWx0IGJlaGF2aW9yIGNhbiBiZSBvdmVycmlkZGVuIHdpdGggdGhlIGAtZmAgb3B0aW9uLgogV2hlbiBgLS1jYWNoZWRgIGlzIGdpdmVuLCB0aGUgc3RhZ2VkIGNvbnRlbnQgaGFzIHRvCiBtYXRjaCBlaXRoZXIgdGhlIHRpcCBvZiB0aGUgYnJhbmNoIG9yIHRoZSBmaWxlIG9uIGRpc2ssCkBAIC0yNiwxNSArMjgsMjAgQEAKIAogT1BUSU9OUwogLS0tLS0tLQotPGZpbGU+Li4uOjoKLQlGaWxlcyB0byByZW1vdmUuICBGaWxlZ2xvYnMgKGUuZy4gYCouY2ApIGNhbiBiZSBnaXZlbiB0bwotCXJlbW92ZSBhbGwgbWF0Y2hpbmcgZmlsZXMuICBJZiB5b3Ugd2FudCBHaXQgdG8gZXhwYW5kCi0JZmlsZSBnbG9iIGNoYXJhY3RlcnMsIHlvdSBtYXkgbmVlZCB0byBzaGVsbC1lc2NhcGUgdGhlbS4KLQlBIGxlYWRpbmcgZGlyZWN0b3J5IG5hbWUKLQkoZS5nLiBgZGlyYCB0byByZW1vdmUgYGRpci9maWxlMWAgYW5kIGBkaXIvZmlsZTJgKSBjYW4gYmUKLQlnaXZlbiB0byByZW1vdmUgYWxsIGZpbGVzIGluIHRoZSBkaXJlY3RvcnksIGFuZCByZWN1cnNpdmVseQotCWFsbCBzdWItZGlyZWN0b3JpZXMsCi0JYnV0IHRoaXMgcmVxdWlyZXMgdGhlIGAtcmAgb3B0aW9uIHRvIGJlIGV4cGxpY2l0bHkgZ2l2ZW4uCis8cGF0aHNwZWM+Li4uOjoKKwlGaWxlcyB0byByZW1vdmUuICBBIGxlYWRpbmcgZGlyZWN0b3J5IG5hbWUgKGUuZy4gYGRpcmAgdG8gcmVtb3ZlCisJYGRpci9maWxlMWAgYW5kIGBkaXIvZmlsZTJgKSBjYW4gYmUgZ2l2ZW4gdG8gcmVtb3ZlIGFsbCBmaWxlcyBpbgorCXRoZSBkaXJlY3RvcnksIGFuZCByZWN1cnNpdmVseSBhbGwgc3ViLWRpcmVjdG9yaWVzLCBidXQgdGhpcworCXJlcXVpcmVzIHRoZSBgLXJgIG9wdGlvbiB0byBiZSBleHBsaWNpdGx5IGdpdmVuLgorKworVGhlIGNvbW1hbmQgcmVtb3ZlcyBvbmx5IHRoZSBwYXRocyB0aGF0IGFyZSBrbm93biB0byBHaXQuCisrCitGaWxlIGdsb2JiaW5nIG1hdGNoZXMgYWNyb3NzIGRpcmVjdG9yeSBib3VuZGFyaWVzLiAgVGh1cywgZ2l2ZW4gdHdvCitkaXJlY3RvcmllcyBgZGAgYW5kIGBkMmAsIHRoZXJlIGlzIGEgZGlmZmVyZW5jZSBiZXR3ZWVuIHVzaW5nCitgZ2l0IHJtICdkKidgIGFuZCBgZ2l0IHJtICdkLyonYCwgYXMgdGhlIGZvcm1lciB3aWxsIGFsc28gcmVtb3ZlIGFsbAorb2YgZGlyZWN0b3J5IGBkMmAuCisrCitGb3IgbW9yZSBkZXRhaWxzLCBzZWUgdGhlICdwYXRoc3BlYycgZW50cnkgaW4gbGlua2dpdDpnaXRnbG9zc2FyeVs3XS4KIAogLWY6OgogLS1mb3JjZTo6CkBAIC02OCwxOSArNzUsMTkgQEAKIAlgZ2l0IHJtYCBub3JtYWxseSBvdXRwdXRzIG9uZSBsaW5lIChpbiB0aGUgZm9ybSBvZiBhbiBgcm1gIGNvbW1hbmQpCiAJZm9yIGVhY2ggZmlsZSByZW1vdmVkLiBUaGlzIG9wdGlvbiBzdXBwcmVzc2VzIHRoYXQgb3V0cHV0LgogCistLXBhdGhzcGVjLWZyb20tZmlsZT08ZmlsZT46OgorCVBhdGhzcGVjIGlzIHBhc3NlZCBpbiBgPGZpbGU+YCBpbnN0ZWFkIG9mIGNvbW1hbmRsaW5lIGFyZ3MuIElmCisJYDxmaWxlPmAgaXMgZXhhY3RseSBgLWAgdGhlbiBzdGFuZGFyZCBpbnB1dCBpcyB1c2VkLiBQYXRoc3BlYworCWVsZW1lbnRzIGFyZSBzZXBhcmF0ZWQgYnkgTEYgb3IgQ1IvTEYuIFBhdGhzcGVjIGVsZW1lbnRzIGNhbiBiZQorCXF1b3RlZCBhcyBleHBsYWluZWQgZm9yIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBjb3JlLnF1b3RlUGF0aGAKKwkoc2VlIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXSkuIFNlZSBhbHNvIGAtLXBhdGhzcGVjLWZpbGUtbnVsYCBhbmQKKwlnbG9iYWwgYC0tbGl0ZXJhbC1wYXRoc3BlY3NgLgogCi1ESVNDVVNTSU9OCi0tLS0tLS0tLS0tCistLXBhdGhzcGVjLWZpbGUtbnVsOjoKKwlPbmx5IG1lYW5pbmdmdWwgd2l0aCBgLS1wYXRoc3BlYy1mcm9tLWZpbGVgLiBQYXRoc3BlYyBlbGVtZW50cyBhcmUKKwlzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIGFuZCBhbGwgb3RoZXIgY2hhcmFjdGVycyBhcmUgdGFrZW4KKwlsaXRlcmFsbHkgKGluY2x1ZGluZyBuZXdsaW5lcyBhbmQgcXVvdGVzKS4KIAotVGhlIDxmaWxlPiBsaXN0IGdpdmVuIHRvIHRoZSBjb21tYW5kIGNhbiBiZSBleGFjdCBwYXRobmFtZXMsCi1maWxlIGdsb2IgcGF0dGVybnMsIG9yIGxlYWRpbmcgZGlyZWN0b3J5IG5hbWVzLiAgVGhlIGNvbW1hbmQKLXJlbW92ZXMgb25seSB0aGUgcGF0aHMgdGhhdCBhcmUga25vd24gdG8gR2l0LiAgR2l2aW5nIHRoZSBuYW1lIG9mCi1hIGZpbGUgdGhhdCB5b3UgaGF2ZSBub3QgdG9sZCBHaXQgYWJvdXQgZG9lcyBub3QgcmVtb3ZlIHRoYXQgZmlsZS4KLQotRmlsZSBnbG9iYmluZyBtYXRjaGVzIGFjcm9zcyBkaXJlY3RvcnkgYm91bmRhcmllcy4gIFRodXMsIGdpdmVuCi10d28gZGlyZWN0b3JpZXMgYGRgIGFuZCBgZDJgLCB0aGVyZSBpcyBhIGRpZmZlcmVuY2UgYmV0d2VlbgotdXNpbmcgYGdpdCBybSAnZConYCBhbmQgYGdpdCBybSAnZC8qJ2AsIGFzIHRoZSBmb3JtZXIgd2lsbAotYWxzbyByZW1vdmUgYWxsIG9mIGRpcmVjdG9yeSBgZDJgLgogCiBSRU1PVklORyBGSUxFUyBUSEFUIEhBVkUgRElTQVBQRUFSRUQgRlJPTSBUSEUgRklMRVNZU1RFTQogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXNlbmQtZW1haWwudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtc2VuZC1lbWFpbC50eHQKaW5kZXggNjJjNmM3Ni4uMGE2OTgxMCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtc2VuZC1lbWFpbC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtc2VuZC1lbWFpbC50eHQKQEAgLTMzLDcgKzMzLDcgQEAKIGZvcm1hdHRpbmcgYXJlIGlnbm9yZWQuCiAKIDIuIFRoZSBvcmlnaW5hbCBmb3JtYXQgdXNlZCBieSBHcmVnIEtyb2FoLUhhcnRtYW4ncyAnc2VuZF9sb3RzX29mX2VtYWlsLnBsJwotc2NyaXB0CisgICBzY3JpcHQKICsKIFRoaXMgZm9ybWF0IGV4cGVjdHMgdGhlIGZpcnN0IGxpbmUgb2YgdGhlIGZpbGUgdG8gY29udGFpbiB0aGUgIkNjOiIgdmFsdWUKIGFuZCB0aGUgIlN1YmplY3Q6IiBvZiB0aGUgbWVzc2FnZSBhcyB0aGUgc2Vjb25kIGxpbmUuCkBAIC0yNzgsNiArMjc4LDE0IEBACiBBdXRvbWF0aW5nCiB+fn5+fn5+fn5+CiAKKy0tbm8tW3RvfGNjfGJjY106OgorCUNsZWFycyBhbnkgbGlzdCBvZiAiVG86IiwgIkNjOiIsICJCY2M6IiBhZGRyZXNzZXMgcHJldmlvdXNseQorCXNldCB2aWEgY29uZmlnLgorCistLW5vLWlkZW50aXR5OjoKKwlDbGVhcnMgdGhlIHByZXZpb3VzbHkgcmVhZCB2YWx1ZSBvZiBgc2VuZGVtYWlsLmlkZW50aXR5YCBzZXQKKwl2aWEgY29uZmlnLCBpZiBhbnkuCisKIC0tdG8tY21kPTxjb21tYW5kPjo6CiAJU3BlY2lmeSBhIGNvbW1hbmQgdG8gZXhlY3V0ZSBvbmNlIHBlciBwYXRjaCBmaWxlIHdoaWNoCiAJc2hvdWxkIGdlbmVyYXRlIHBhdGNoIGZpbGUgc3BlY2lmaWMgIlRvOiIgZW50cmllcy4KQEAgLTQ3OCwxMSArNDg2LDEzIEBACiBUbyB1c2UgJ2dpdCBzZW5kLWVtYWlsJyB0byBzZW5kIHlvdXIgcGF0Y2hlcyB0aHJvdWdoIHRoZSBHTWFpbCBTTVRQIHNlcnZlciwKIGVkaXQgfi8uZ2l0Y29uZmlnIHRvIHNwZWNpZnkgeW91ciBhY2NvdW50IHNldHRpbmdzOgogCi0JW3NlbmRlbWFpbF0KLQkJc210cEVuY3J5cHRpb24gPSB0bHMKLQkJc210cFNlcnZlciA9IHNtdHAuZ21haWwuY29tCi0JCXNtdHBVc2VyID0geW91cm5hbWVAZ21haWwuY29tCi0JCXNtdHBTZXJ2ZXJQb3J0ID0gNTg3CistLS0tCitbc2VuZGVtYWlsXQorCXNtdHBFbmNyeXB0aW9uID0gdGxzCisJc210cFNlcnZlciA9IHNtdHAuZ21haWwuY29tCisJc210cFVzZXIgPSB5b3VybmFtZUBnbWFpbC5jb20KKwlzbXRwU2VydmVyUG9ydCA9IDU4NworLS0tLQogCiBJZiB5b3UgaGF2ZSBtdWx0aWZhY3RvciBhdXRoZW50aWNhdGlvbiBzZXR1cCBvbiB5b3VyIGdtYWlsIGFjY291bnQsIHlvdSB3aWxsCiBuZWVkIHRvIGdlbmVyYXRlIGFuIGFwcC1zcGVjaWZpYyBwYXNzd29yZCBmb3IgdXNlIHdpdGggJ2dpdCBzZW5kLWVtYWlsJy4gVmlzaXQKQEAgLTUwMCw4ICs1MTAsMTIgQEAKIGhlbHBlciBjb25maWd1cmVkIChzZWUgbGlua2dpdDpnaXQtY3JlZGVudGlhbFsxXSksIHRoZSBwYXNzd29yZCB3aWxsIGJlIHNhdmVkIGluCiB0aGUgY3JlZGVudGlhbCBzdG9yZSBzbyB5b3Ugd29uJ3QgaGF2ZSB0byB0eXBlIGl0IHRoZSBuZXh0IHRpbWUuCiAKLU5vdGU6IHRoZSBmb2xsb3dpbmcgcGVybCBtb2R1bGVzIGFyZSByZXF1aXJlZAotICAgICAgTmV0OjpTTVRQOjpTU0wsIE1JTUU6OkJhc2U2NCBhbmQgQXV0aGVuOjpTQVNMCitOb3RlOiB0aGUgZm9sbG93aW5nIGNvcmUgUGVybCBtb2R1bGVzIHRoYXQgbWF5IGJlIGluc3RhbGxlZCB3aXRoIHlvdXIKK2Rpc3RyaWJ1dGlvbiBvZiBQZXJsIGFyZSByZXF1aXJlZDoKK01JTUU6OkJhc2U2NCwgTUlNRTo6UXVvdGVkUHJpbnQsIE5ldDo6RG9tYWluIGFuZCBOZXQ6OlNNVFAuCitUaGVzZSBhZGRpdGlvbmFsIFBlcmwgbW9kdWxlcyBhcmUgYWxzbyByZXF1aXJlZDoKK0F1dGhlbjo6U0FTTCBhbmQgTWFpbDo6QWRkcmVzcy4KKwogCiBTRUUgQUxTTwogLS0tLS0tLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXNob3J0bG9nLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXNob3J0bG9nLnR4dAppbmRleCBiYzgwOTA1Li5hNzJlYTdmIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1zaG9ydGxvZy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtc2hvcnRsb2cudHh0CkBAIC03Niw2ICs3Niw5IEBACiBQYXRocyBtYXkgbmVlZCB0byBiZSBwcmVmaXhlZCB3aXRoIGAtLWAgdG8gc2VwYXJhdGUgdGhlbSBmcm9tCiBvcHRpb25zIG9yIHRoZSByZXZpc2lvbiByYW5nZSwgd2hlbiBjb25mdXNpb24gYXJpc2VzLgogCis6Z2l0LXNob3J0bG9nOiAxCitpbmNsdWRlOjpyZXYtbGlzdC1vcHRpb25zLnR4dFtdCisKIE1BUFBJTkcgQVVUSE9SUwogLS0tLS0tLS0tLS0tLS0tCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXNob3ctYnJhbmNoLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXNob3ctYnJhbmNoLnR4dAppbmRleCA0YTAxMzcxLi41Y2MyZmNlIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC1zaG93LWJyYW5jaC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtc2hvdy1icmFuY2gudHh0CkBAIC0xNjcsNyArMTY3LDcgQEAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBUaGVzZSB0aHJlZSBicmFuY2hlcyBhbGwgZm9ya2VkIGZyb20gYSBjb21tb24gY29tbWl0LCBbbWFzdGVyXSwKLXdob3NlIGNvbW1pdCBtZXNzYWdlIGlzICJBZGQge2Fwb3N0cm9waGV9Z2l0IHNob3ctYnJhbmNoe2Fwb3N0cm9waGV9Ii4KK3dob3NlIGNvbW1pdCBtZXNzYWdlIGlzICJBZGQgXCdnaXQgc2hvdy1icmFuY2gnIi4KIFRoZSAiZml4ZXMiIGJyYW5jaCBhZGRzIG9uZSBjb21taXQgIkludHJvZHVjZSAicmVzZXQgdHlwZSIgZmxhZyB0bwogImdpdCByZXNldCIiLiBUaGUgIm1oZiIgYnJhbmNoIGFkZHMgbWFueSBvdGhlciBjb21taXRzLgogVGhlIGN1cnJlbnQgYnJhbmNoIGlzICJtYXN0ZXIiLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtc2hvdy1yZWYudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtc2hvdy1yZWYudHh0CmluZGV4IGQyOGU2MTUuLmFiNGQyNzEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXNob3ctcmVmLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1zaG93LXJlZi50eHQKQEAgLTM3LDggKzM3LDggQEAKIAogCVNob3cgdGhlIEhFQUQgcmVmZXJlbmNlLCBldmVuIGlmIGl0IHdvdWxkIG5vcm1hbGx5IGJlIGZpbHRlcmVkIG91dC4KIAotLS10YWdzOjoKIC0taGVhZHM6OgorLS10YWdzOjoKIAogCUxpbWl0IHRvICJyZWZzL2hlYWRzIiBhbmQgInJlZnMvdGFncyIsIHJlc3BlY3RpdmVseS4gIFRoZXNlIG9wdGlvbnMKIAlhcmUgbm90IG11dHVhbGx5IGV4Y2x1c2l2ZTsgd2hlbiBnaXZlbiBib3RoLCByZWZlcmVuY2VzIHN0b3JlZCBpbgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtc3BhcnNlLWNoZWNrb3V0LnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXNwYXJzZS1jaGVja291dC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzAzNDJlNQotLS0gL2Rldi9udWxsCisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LXNwYXJzZS1jaGVja291dC50eHQKQEAgLTAsMCArMSwyMDcgQEAKK2dpdC1zcGFyc2UtY2hlY2tvdXQoMSkKKz09PT09PT09PT09PT09PT09PT09PT0KKworTkFNRQorLS0tLQorZ2l0LXNwYXJzZS1jaGVja291dCAtIEluaXRpYWxpemUgYW5kIG1vZGlmeSB0aGUgc3BhcnNlLWNoZWNrb3V0Citjb25maWd1cmF0aW9uLCB3aGljaCByZWR1Y2VzIHRoZSBjaGVja291dCB0byBhIHNldCBvZiBwYXRocworZ2l2ZW4gYnkgYSBsaXN0IG9mIHBhdHRlcm5zLgorCisKK1NZTk9QU0lTCistLS0tLS0tLQorW3ZlcnNlXQorJ2dpdCBzcGFyc2UtY2hlY2tvdXQgPHN1YmNvbW1hbmQ+IFtvcHRpb25zXScKKworCitERVNDUklQVElPTgorLS0tLS0tLS0tLS0KKworSW5pdGlhbGl6ZSBhbmQgbW9kaWZ5IHRoZSBzcGFyc2UtY2hlY2tvdXQgY29uZmlndXJhdGlvbiwgd2hpY2ggcmVkdWNlcwordGhlIGNoZWNrb3V0IHRvIGEgc2V0IG9mIHBhdGhzIGdpdmVuIGJ5IGEgbGlzdCBvZiBwYXR0ZXJucy4KKworVEhJUyBDT01NQU5EIElTIEVYUEVSSU1FTlRBTC4gSVRTIEJFSEFWSU9SLCBBTkQgVEhFIEJFSEFWSU9SIE9GIE9USEVSCitDT01NQU5EUyBJTiBUSEUgUFJFU0VOQ0UgT0YgU1BBUlNFLUNIRUNLT1VUUywgV0lMTCBMSUtFTFkgQ0hBTkdFIElOCitUSEUgRlVUVVJFLgorCisKK0NPTU1BTkRTCistLS0tLS0tLQorJ2xpc3QnOjoKKwlEZXNjcmliZSB0aGUgcGF0dGVybnMgaW4gdGhlIHNwYXJzZS1jaGVja291dCBmaWxlLgorCisnaW5pdCc6OgorCUVuYWJsZSB0aGUgYGNvcmUuc3BhcnNlQ2hlY2tvdXRgIHNldHRpbmcuIElmIHRoZQorCXNwYXJzZS1jaGVja291dCBmaWxlIGRvZXMgbm90IGV4aXN0LCB0aGVuIHBvcHVsYXRlIGl0IHdpdGgKKwlwYXR0ZXJucyB0aGF0IG1hdGNoIGV2ZXJ5IGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IGFuZAorCW5vIG90aGVyIGRpcmVjdG9yaWVzLCB0aGVuIHdpbGwgcmVtb3ZlIGFsbCBkaXJlY3RvcmllcyB0cmFja2VkCisJYnkgR2l0LiBBZGQgcGF0dGVybnMgdG8gdGhlIHNwYXJzZS1jaGVja291dCBmaWxlIHRvCisJcmVwb3B1bGF0ZSB0aGUgd29ya2luZyBkaXJlY3RvcnkuCisrCitUbyBhdm9pZCBpbnRlcmZlcmluZyB3aXRoIG90aGVyIHdvcmt0cmVlcywgaXQgZmlyc3QgZW5hYmxlcyB0aGUKK2BleHRlbnNpb25zLndvcmt0cmVlQ29uZmlnYCBzZXR0aW5nIGFuZCBtYWtlcyBzdXJlIHRvIHNldCB0aGUKK2Bjb3JlLnNwYXJzZUNoZWNrb3V0YCBzZXR0aW5nIGluIHRoZSB3b3JrdHJlZS1zcGVjaWZpYyBjb25maWcgZmlsZS4KKysKK1doZW4gYC0tY29uZWAgaXMgcHJvdmlkZWQsIHRoZSBgY29yZS5zcGFyc2VDaGVja291dENvbmVgIHNldHRpbmcgaXMKK2Fsc28gc2V0LCBhbGxvd2luZyBmb3IgYmV0dGVyIHBlcmZvcm1hbmNlIHdpdGggYSBsaW1pdGVkIHNldCBvZgorcGF0dGVybnMgKHNlZSAnQ09ORSBQQVRURVJOIFNFVCcgYmVsb3cpLgorCisnc2V0Jzo6CisJV3JpdGUgYSBzZXQgb2YgcGF0dGVybnMgdG8gdGhlIHNwYXJzZS1jaGVja291dCBmaWxlLCBhcyBnaXZlbiBhcworCWEgbGlzdCBvZiBhcmd1bWVudHMgZm9sbG93aW5nIHRoZSAnc2V0JyBzdWJjb21tYW5kLiBVcGRhdGUgdGhlCisJd29ya2luZyBkaXJlY3RvcnkgdG8gbWF0Y2ggdGhlIG5ldyBwYXR0ZXJucy4gRW5hYmxlIHRoZQorCWNvcmUuc3BhcnNlQ2hlY2tvdXQgY29uZmlnIHNldHRpbmcgaWYgaXQgaXMgbm90IGFscmVhZHkgZW5hYmxlZC4KKysKK1doZW4gdGhlIGAtLXN0ZGluYCBvcHRpb24gaXMgcHJvdmlkZWQsIHRoZSBwYXR0ZXJucyBhcmUgcmVhZCBmcm9tCitzdGFuZGFyZCBpbiBhcyBhIG5ld2xpbmUtZGVsaW1pdGVkIGxpc3QgaW5zdGVhZCBvZiBmcm9tIHRoZSBhcmd1bWVudHMuCisrCitXaGVuIGBjb3JlLnNwYXJzZUNoZWNrb3V0Q29uZWAgaXMgZW5hYmxlZCwgdGhlIGlucHV0IGxpc3QgaXMgY29uc2lkZXJlZCBhCitsaXN0IG9mIGRpcmVjdG9yaWVzIGluc3RlYWQgb2Ygc3BhcnNlLWNoZWNrb3V0IHBhdHRlcm5zLiBUaGUgY29tbWFuZCB3cml0ZXMKK3BhdHRlcm5zIHRvIHRoZSBzcGFyc2UtY2hlY2tvdXQgZmlsZSB0byBpbmNsdWRlIGFsbCBmaWxlcyBjb250YWluZWQgaW4gdGhvc2UKK2RpcmVjdG9yaWVzIChyZWN1cnNpdmVseSkgYXMgd2VsbCBhcyBmaWxlcyB0aGF0IGFyZSBzaWJsaW5ncyBvZiBhbmNlc3RvcgorZGlyZWN0b3JpZXMuIFRoZSBpbnB1dCBmb3JtYXQgbWF0Y2hlcyB0aGUgb3V0cHV0IG9mIGBnaXQgbHMtdHJlZSAtLW5hbWUtb25seWAuCitUaGlzIGluY2x1ZGVzIGludGVycHJldGluZyBwYXRobmFtZXMgdGhhdCBiZWdpbiB3aXRoIGEgZG91YmxlIHF1b3RlICgiKSBhcworQy1zdHlsZSBxdW90ZWQgc3RyaW5ncy4KKworJ2FkZCc6OgorCVVwZGF0ZSB0aGUgc3BhcnNlLWNoZWNrb3V0IGZpbGUgdG8gaW5jbHVkZSBhZGRpdGlvbmFsIHBhdHRlcm5zLgorCUJ5IGRlZmF1bHQsIHRoZXNlIHBhdHRlcm5zIGFyZSByZWFkIGZyb20gdGhlIGNvbW1hbmQtbGluZSBhcmd1bWVudHMsCisJYnV0IHRoZXkgY2FuIGJlIHJlYWQgZnJvbSBzdGRpbiB1c2luZyB0aGUgYC0tc3RkaW5gIG9wdGlvbi4gV2hlbgorCWBjb3JlLnNwYXJzZUNoZWNrb3V0Q29uZWAgaXMgZW5hYmxlZCwgdGhlIGdpdmVuIHBhdHRlcm5zIGFyZSBpbnRlcnByZXRlZAorCWFzIGRpcmVjdG9yeSBuYW1lcyBhcyBpbiB0aGUgJ3NldCcgc3ViY29tbWFuZC4KKworJ2Rpc2FibGUnOjoKKwlEaXNhYmxlIHRoZSBgY29yZS5zcGFyc2VDaGVja291dGAgY29uZmlnIHNldHRpbmcsIGFuZCByZXN0b3JlIHRoZQorCXdvcmtpbmcgZGlyZWN0b3J5IHRvIGluY2x1ZGUgYWxsIGZpbGVzLiBMZWF2ZXMgdGhlIHNwYXJzZS1jaGVja291dAorCWZpbGUgaW50YWN0IHNvIGEgbGF0ZXIgJ2dpdCBzcGFyc2UtY2hlY2tvdXQgaW5pdCcgY29tbWFuZCBtYXkKKwlyZXR1cm4gdGhlIHdvcmtpbmcgZGlyZWN0b3J5IHRvIHRoZSBzYW1lIHN0YXRlLgorCitTUEFSU0UgQ0hFQ0tPVVQKKy0tLS0tLS0tLS0tLS0tLQorCisiU3BhcnNlIGNoZWNrb3V0IiBhbGxvd3MgcG9wdWxhdGluZyB0aGUgd29ya2luZyBkaXJlY3Rvcnkgc3BhcnNlbHkuCitJdCB1c2VzIHRoZSBza2lwLXdvcmt0cmVlIGJpdCAoc2VlIGxpbmtnaXQ6Z2l0LXVwZGF0ZS1pbmRleFsxXSkgdG8gdGVsbAorR2l0IHdoZXRoZXIgYSBmaWxlIGluIHRoZSB3b3JraW5nIGRpcmVjdG9yeSBpcyB3b3J0aCBsb29raW5nIGF0LiBJZgordGhlIHNraXAtd29ya3RyZWUgYml0IGlzIHNldCwgdGhlbiB0aGUgZmlsZSBpcyBpZ25vcmVkIGluIHRoZSB3b3JraW5nCitkaXJlY3RvcnkuIEdpdCB3aWxsIG5vdCBwb3B1bGF0ZSB0aGUgY29udGVudHMgb2YgdGhvc2UgZmlsZXMsIHdoaWNoCittYWtlcyBhIHNwYXJzZSBjaGVja291dCBoZWxwZnVsIHdoZW4gd29ya2luZyBpbiBhIHJlcG9zaXRvcnkgd2l0aCBtYW55CitmaWxlcywgYnV0IG9ubHkgYSBmZXcgYXJlIGltcG9ydGFudCB0byB0aGUgY3VycmVudCB1c2VyLgorCitUaGUgYCRHSVRfRElSL2luZm8vc3BhcnNlLWNoZWNrb3V0YCBmaWxlIGlzIHVzZWQgdG8gZGVmaW5lIHRoZQorc2tpcC13b3JrdHJlZSByZWZlcmVuY2UgYml0bWFwLiBXaGVuIEdpdCB1cGRhdGVzIHRoZSB3b3JraW5nCitkaXJlY3RvcnksIGl0IHVwZGF0ZXMgdGhlIHNraXAtd29ya3RyZWUgYml0cyBpbiB0aGUgaW5kZXggYmFzZWQKK29uIHRoaXMgZmlsZS4gVGhlIGZpbGVzIG1hdGNoaW5nIHRoZSBwYXR0ZXJucyBpbiB0aGUgZmlsZSB3aWxsCithcHBlYXIgaW4gdGhlIHdvcmtpbmcgZGlyZWN0b3J5LCBhbmQgdGhlIHJlc3Qgd2lsbCBub3QuCisKK1RvIGVuYWJsZSB0aGUgc3BhcnNlLWNoZWNrb3V0IGZlYXR1cmUsIHJ1biBgZ2l0IHNwYXJzZS1jaGVja291dCBpbml0YCB0bworaW5pdGlhbGl6ZSBhIHNpbXBsZSBzcGFyc2UtY2hlY2tvdXQgZmlsZSBhbmQgZW5hYmxlIHRoZSBgY29yZS5zcGFyc2VDaGVja291dGAKK2NvbmZpZyBzZXR0aW5nLiBUaGVuLCBydW4gYGdpdCBzcGFyc2UtY2hlY2tvdXQgc2V0YCB0byBtb2RpZnkgdGhlIHBhdHRlcm5zIGluCit0aGUgc3BhcnNlLWNoZWNrb3V0IGZpbGUuCisKK1RvIHJlcG9wdWxhdGUgdGhlIHdvcmtpbmcgZGlyZWN0b3J5IHdpdGggYWxsIGZpbGVzLCB1c2UgdGhlCitgZ2l0IHNwYXJzZS1jaGVja291dCBkaXNhYmxlYCBjb21tYW5kLgorCisKK0ZVTEwgUEFUVEVSTiBTRVQKKy0tLS0tLS0tLS0tLS0tLS0KKworQnkgZGVmYXVsdCwgdGhlIHNwYXJzZS1jaGVja291dCBmaWxlIHVzZXMgdGhlIHNhbWUgc3ludGF4IGFzIGAuZ2l0aWdub3JlYAorZmlsZXMuCisKK1doaWxlIGAkR0lUX0RJUi9pbmZvL3NwYXJzZS1jaGVja291dGAgaXMgdXN1YWxseSB1c2VkIHRvIHNwZWNpZnkgd2hhdAorZmlsZXMgYXJlIGluY2x1ZGVkLCB5b3UgY2FuIGFsc28gc3BlY2lmeSB3aGF0IGZpbGVzIGFyZSBfbm90XyBpbmNsdWRlZCwKK3VzaW5nIG5lZ2F0aXZlIHBhdHRlcm5zLiBGb3IgZXhhbXBsZSwgdG8gcmVtb3ZlIHRoZSBmaWxlIGB1bndhbnRlZGA6CisKKy0tLS0tLS0tLS0tLS0tLS0KKy8qCishdW53YW50ZWQKKy0tLS0tLS0tLS0tLS0tLS0KKworCitDT05FIFBBVFRFUk4gU0VUCistLS0tLS0tLS0tLS0tLS0tCisKK1RoZSBmdWxsIHBhdHRlcm4gc2V0IGFsbG93cyBmb3IgYXJiaXRyYXJ5IHBhdHRlcm4gbWF0Y2hlcyBhbmQgY29tcGxpY2F0ZWQKK2luY2x1c2lvbi9leGNsdXNpb24gcnVsZXMuIFRoZXNlIGNhbiByZXN1bHQgaW4gTyhOKk0pIHBhdHRlcm4gbWF0Y2hlcyB3aGVuCit1cGRhdGluZyB0aGUgaW5kZXgsIHdoZXJlIE4gaXMgdGhlIG51bWJlciBvZiBwYXR0ZXJucyBhbmQgTSBpcyB0aGUgbnVtYmVyCitvZiBwYXRocyBpbiB0aGUgaW5kZXguIFRvIGNvbWJhdCB0aGlzIHBlcmZvcm1hbmNlIGlzc3VlLCBhIG1vcmUgcmVzdHJpY3RlZAorcGF0dGVybiBzZXQgaXMgYWxsb3dlZCB3aGVuIGBjb3JlLnNwYXJzZUNoZWNrb3V0Q29uZWAgaXMgZW5hYmxlZC4KKworVGhlIGFjY2VwdGVkIHBhdHRlcm5zIGluIHRoZSBjb25lIHBhdHRlcm4gc2V0IGFyZToKKworMS4gKlJlY3Vyc2l2ZToqIEFsbCBwYXRocyBpbnNpZGUgYSBkaXJlY3RvcnkgYXJlIGluY2x1ZGVkLgorCisyLiAqUGFyZW50OiogQWxsIGZpbGVzIGltbWVkaWF0ZWx5IGluc2lkZSBhIGRpcmVjdG9yeSBhcmUgaW5jbHVkZWQuCisKK0luIGFkZGl0aW9uIHRvIHRoZSBhYm92ZSB0d28gcGF0dGVybnMsIHdlIGFsc28gZXhwZWN0IHRoYXQgYWxsIGZpbGVzIGluIHRoZQorcm9vdCBkaXJlY3RvcnkgYXJlIGluY2x1ZGVkLiBJZiBhIHJlY3Vyc2l2ZSBwYXR0ZXJuIGlzIGFkZGVkLCB0aGVuIGFsbAorbGVhZGluZyBkaXJlY3RvcmllcyBhcmUgYWRkZWQgYXMgcGFyZW50IHBhdHRlcm5zLgorCitCeSBkZWZhdWx0LCB3aGVuIHJ1bm5pbmcgYGdpdCBzcGFyc2UtY2hlY2tvdXQgaW5pdGAsIHRoZSByb290IGRpcmVjdG9yeSBpcworYWRkZWQgYXMgYSBwYXJlbnQgcGF0dGVybi4gQXQgdGhpcyBwb2ludCwgdGhlIHNwYXJzZS1jaGVja291dCBmaWxlIGNvbnRhaW5zCit0aGUgZm9sbG93aW5nIHBhdHRlcm5zOgorCistLS0tLS0tLS0tLS0tLS0tCisvKgorIS8qLworLS0tLS0tLS0tLS0tLS0tLQorCitUaGlzIHNheXMgImluY2x1ZGUgZXZlcnl0aGluZyBpbiByb290LCBidXQgbm90aGluZyB0d28gbGV2ZWxzIGJlbG93IHJvb3QuIgorCitXaGVuIGluIGNvbmUgbW9kZSwgdGhlIGBnaXQgc3BhcnNlLWNoZWNrb3V0IHNldGAgc3ViY29tbWFuZCB0YWtlcyBhIGxpc3Qgb2YKK2RpcmVjdG9yaWVzIGluc3RlYWQgb2YgYSBsaXN0IG9mIHNwYXJzZS1jaGVja291dCBwYXR0ZXJucy4gSW4gdGhpcyBtb2RlLAordGhlIGNvbW1hbmQgYGdpdCBzcGFyc2UtY2hlY2tvdXQgc2V0IEEvQi9DYCBzZXRzIHRoZSBkaXJlY3RvcnkgYEEvQi9DYCBhcworYSByZWN1cnNpdmUgcGF0dGVybiwgdGhlIGRpcmVjdG9yaWVzIGBBYCBhbmQgYEEvQmAgYXJlIGFkZGVkIGFzIHBhcmVudAorcGF0dGVybnMuIFRoZSByZXN1bHRpbmcgc3BhcnNlLWNoZWNrb3V0IGZpbGUgaXMgbm93CisKKy0tLS0tLS0tLS0tLS0tLS0KKy8qCishLyovCisvQS8KKyEvQS8qLworL0EvQi8KKyEvQS9CLyovCisvQS9CL0MvCistLS0tLS0tLS0tLS0tLS0tCisKK0hlcmUsIG9yZGVyIG1hdHRlcnMsIHNvIHRoZSBuZWdhdGl2ZSBwYXR0ZXJucyBhcmUgb3ZlcnJpZGRlbiBieSB0aGUgcG9zaXRpdmUKK3BhdHRlcm5zIHRoYXQgYXBwZWFyIGxvd2VyIGluIHRoZSBmaWxlLgorCitJZiBgY29yZS5zcGFyc2VDaGVja291dENvbmU9dHJ1ZWAsIHRoZW4gR2l0IHdpbGwgcGFyc2UgdGhlIHNwYXJzZS1jaGVja291dCBmaWxlCitleHBlY3RpbmcgcGF0dGVybnMgb2YgdGhlc2UgdHlwZXMuIEdpdCB3aWxsIHdhcm4gaWYgdGhlIHBhdHRlcm5zIGRvIG5vdCBtYXRjaC4KK0lmIHRoZSBwYXR0ZXJucyBkbyBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LCB0aGVuIEdpdCB3aWxsIHVzZSBmYXN0ZXIgaGFzaC0KK2Jhc2VkIGFsZ29yaXRobXMgdG8gY29tcHV0ZSBpbmNsdXNpb24gaW4gdGhlIHNwYXJzZS1jaGVja291dC4KKworSW4gdGhlIGNvbmUgbW9kZSBjYXNlLCB0aGUgYGdpdCBzcGFyc2UtY2hlY2tvdXQgbGlzdGAgc3ViY29tbWFuZCB3aWxsIGxpc3QgdGhlCitkaXJlY3RvcmllcyB0aGF0IGRlZmluZSB0aGUgcmVjdXJzaXZlIHBhdHRlcm5zLiBGb3IgdGhlIGV4YW1wbGUgc3BhcnNlLWNoZWNrb3V0CitmaWxlIGFib3ZlLCB0aGUgb3V0cHV0IGlzIGFzIGZvbGxvd3M6CisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiskIGdpdCBzcGFyc2UtY2hlY2tvdXQgbGlzdAorQS9CL0MKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0lmIGBjb3JlLmlnbm9yZUNhc2U9dHJ1ZWAsIHRoZW4gdGhlIHBhdHRlcm4tbWF0Y2hpbmcgYWxnb3JpdGhtIHdpbGwgdXNlIGEKK2Nhc2UtaW5zZW5zaXRpdmUgY2hlY2suIFRoaXMgY29ycmVjdHMgZm9yIGNhc2UgbWlzbWF0Y2hlZCBmaWxlbmFtZXMgaW4gdGhlCisnZ2l0IHNwYXJzZS1jaGVja291dCBzZXQnIGNvbW1hbmQgdG8gcmVmbGVjdCB0aGUgZXhwZWN0ZWQgY29uZSBpbiB0aGUgd29ya2luZworZGlyZWN0b3J5LgorCisKK1NVQk1PRFVMRVMKKy0tLS0tLS0tLS0KKworSWYgeW91ciByZXBvc2l0b3J5IGNvbnRhaW5zIG9uZSBvciBtb3JlIHN1Ym1vZHVsZXMsIHRoZW4gdGhvc2Ugc3VibW9kdWxlcyB3aWxsCithcHBlYXIgYmFzZWQgb24gd2hpY2ggeW91IGluaXRpYWxpemVkIHdpdGggdGhlIGBnaXQgc3VibW9kdWxlYCBjb21tYW5kLiBJZgoreW91ciBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMgZXhjbHVkZSBhbiBpbml0aWFsaXplZCBzdWJtb2R1bGUsIHRoZW4gdGhhdAorc3VibW9kdWxlIHdpbGwgc3RpbGwgYXBwZWFyIGluIHlvdXIgd29ya2luZyBkaXJlY3RvcnkuCisKKworU0VFIEFMU08KKy0tLS0tLS0tCisKK2xpbmtnaXQ6Z2l0LXJlYWQtdHJlZVsxXQorbGlua2dpdDpnaXRpZ25vcmVbNV0KKworR0lUCistLS0KK1BhcnQgb2YgdGhlIGxpbmtnaXQ6Z2l0WzFdIHN1aXRlCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC1zdGFzaC50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1zdGFzaC50eHQKaW5kZXggN2VmOGM0Ny4uMzFmMWJlYiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtc3Rhc2gudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LXN0YXNoLnR4dApAQCAtOSwxMiArOSwxMyBAQAogLS0tLS0tLS0KIFt2ZXJzZV0KICdnaXQgc3Rhc2gnIGxpc3QgWzxvcHRpb25zPl0KLSdnaXQgc3Rhc2gnIHNob3cgWzxzdGFzaD5dCisnZ2l0IHN0YXNoJyBzaG93IFs8b3B0aW9ucz5dIFs8c3Rhc2g+XQogJ2dpdCBzdGFzaCcgZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dCiAnZ2l0IHN0YXNoJyAoIHBvcCB8IGFwcGx5ICkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0KICdnaXQgc3Rhc2gnIGJyYW5jaCA8YnJhbmNobmFtZT4gWzxzdGFzaD5dCiAnZ2l0IHN0YXNoJyBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF0KIAkgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XQorCSAgICAgWy0tcGF0aHNwZWMtZnJvbS1maWxlPTxmaWxlPiBbLS1wYXRoc3BlYy1maWxlLW51bF1dCiAJICAgICBbLS1dIFs8cGF0aHNwZWM+Li4uXV0KICdnaXQgc3Rhc2gnIGNsZWFyCiAnZ2l0IHN0YXNoJyBjcmVhdGUgWzxtZXNzYWdlPl0KQEAgLTQzLDEwICs0NCwxMCBAQAogaXMgYWxzbyBwb3NzaWJsZSkuIFN0YXNoZXMgbWF5IGFsc28gYmUgcmVmZXJlbmNlZCBieSBzcGVjaWZ5aW5nIGp1c3QgdGhlCiBzdGFzaCBpbmRleCAoZS5nLiB0aGUgaW50ZWdlciBgbmAgaXMgZXF1aXZhbGVudCB0byBgc3Rhc2hAe259YCkuCiAKLU9QVElPTlMKLS0tLS0tLS0KK0NPTU1BTkRTCistLS0tLS0tLQogCi1wdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstcXwtLXF1aWV0XSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl0gWy0tXSBbPHBhdGhzcGVjPi4uLl06OgorcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLXF8LS1xdWlldF0gWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dIFstLXBhdGhzcGVjLWZyb20tZmlsZT08ZmlsZT4gWy0tcGF0aHNwZWMtZmlsZS1udWxdXSBbLS1dIFs8cGF0aHNwZWM+Li4uXTo6CiAKIAlTYXZlIHlvdXIgbG9jYWwgbW9kaWZpY2F0aW9ucyB0byBhIG5ldyAnc3Rhc2ggZW50cnknIGFuZCByb2xsIHRoZW0KIAliYWNrIHRvIEhFQUQgKGluIHRoZSB3b3JraW5nIHRyZWUgYW5kIGluIHRoZSBpbmRleCkuCkBAIC01NiwzOSArNTcsMTUgQEAKIEZvciBxdWlja2x5IG1ha2luZyBhIHNuYXBzaG90LCB5b3UgY2FuIG9taXQgInB1c2giLiAgSW4gdGhpcyBtb2RlLAogbm9uLW9wdGlvbiBhcmd1bWVudHMgYXJlIG5vdCBhbGxvd2VkIHRvIHByZXZlbnQgYSBtaXNzcGVsbGVkCiBzdWJjb21tYW5kIGZyb20gbWFraW5nIGFuIHVud2FudGVkIHN0YXNoIGVudHJ5LiAgVGhlIHR3byBleGNlcHRpb25zIHRvIHRoaXMKLWFyZSBgc3Rhc2ggLXBgIHdoaWNoIGFjdHMgYXMgYWxpYXMgZm9yIGBzdGFzaCBwdXNoIC1wYCBhbmQgcGF0aHNwZWNzLAorYXJlIGBzdGFzaCAtcGAgd2hpY2ggYWN0cyBhcyBhbGlhcyBmb3IgYHN0YXNoIHB1c2ggLXBgIGFuZCBwYXRoc3BlYyBlbGVtZW50cywKIHdoaWNoIGFyZSBhbGxvd2VkIGFmdGVyIGEgZG91YmxlIGh5cGhlbiBgLS1gIGZvciBkaXNhbWJpZ3VhdGlvbi4KLSsKLVdoZW4gcGF0aHNwZWMgaXMgZ2l2ZW4gdG8gJ2dpdCBzdGFzaCBwdXNoJywgdGhlIG5ldyBzdGFzaCBlbnRyeSByZWNvcmRzIHRoZQotbW9kaWZpZWQgc3RhdGVzIG9ubHkgZm9yIHRoZSBmaWxlcyB0aGF0IG1hdGNoIHRoZSBwYXRoc3BlYy4gIFRoZSBpbmRleAotZW50cmllcyBhbmQgd29ya2luZyB0cmVlIGZpbGVzIGFyZSB0aGVuIHJvbGxlZCBiYWNrIHRvIHRoZSBzdGF0ZSBpbgotSEVBRCBvbmx5IGZvciB0aGVzZSBmaWxlcywgdG9vLCBsZWF2aW5nIGZpbGVzIHRoYXQgZG8gbm90IG1hdGNoIHRoZQotcGF0aHNwZWMgaW50YWN0LgotKwotSWYgdGhlIGAtLWtlZXAtaW5kZXhgIG9wdGlvbiBpcyB1c2VkLCBhbGwgY2hhbmdlcyBhbHJlYWR5IGFkZGVkIHRvIHRoZQotaW5kZXggYXJlIGxlZnQgaW50YWN0LgotKwotSWYgdGhlIGAtLWluY2x1ZGUtdW50cmFja2VkYCBvcHRpb24gaXMgdXNlZCwgYWxsIHVudHJhY2tlZCBmaWxlcyBhcmUgYWxzbwotc3Rhc2hlZCBhbmQgdGhlbiBjbGVhbmVkIHVwIHdpdGggYGdpdCBjbGVhbmAsIGxlYXZpbmcgdGhlIHdvcmtpbmcgZGlyZWN0b3J5Ci1pbiBhIHZlcnkgY2xlYW4gc3RhdGUuIElmIHRoZSBgLS1hbGxgIG9wdGlvbiBpcyB1c2VkIGluc3RlYWQgdGhlbiB0aGUKLWlnbm9yZWQgZmlsZXMgYXJlIHN0YXNoZWQgYW5kIGNsZWFuZWQgaW4gYWRkaXRpb24gdG8gdGhlIHVudHJhY2tlZCBmaWxlcy4KLSsKLVdpdGggYC0tcGF0Y2hgLCB5b3UgY2FuIGludGVyYWN0aXZlbHkgc2VsZWN0IGh1bmtzIGZyb20gdGhlIGRpZmYKLWJldHdlZW4gSEVBRCBhbmQgdGhlIHdvcmtpbmcgdHJlZSB0byBiZSBzdGFzaGVkLiAgVGhlIHN0YXNoIGVudHJ5IGlzCi1jb25zdHJ1Y3RlZCBzdWNoIHRoYXQgaXRzIGluZGV4IHN0YXRlIGlzIHRoZSBzYW1lIGFzIHRoZSBpbmRleCBzdGF0ZQotb2YgeW91ciByZXBvc2l0b3J5LCBhbmQgaXRzIHdvcmt0cmVlIGNvbnRhaW5zIG9ubHkgdGhlIGNoYW5nZXMgeW91Ci1zZWxlY3RlZCBpbnRlcmFjdGl2ZWx5LiAgVGhlIHNlbGVjdGVkIGNoYW5nZXMgYXJlIHRoZW4gcm9sbGVkIGJhY2sKLWZyb20geW91ciB3b3JrdHJlZS4gU2VlIHRoZSBgYEludGVyYWN0aXZlIE1vZGUnJyBzZWN0aW9uIG9mCi1saW5rZ2l0OmdpdC1hZGRbMV0gdG8gbGVhcm4gaG93IHRvIG9wZXJhdGUgdGhlIGAtLXBhdGNoYCBtb2RlLgotKwotVGhlIGAtLXBhdGNoYCBvcHRpb24gaW1wbGllcyBgLS1rZWVwLWluZGV4YC4gIFlvdSBjYW4gdXNlCi1gLS1uby1rZWVwLWluZGV4YCB0byBvdmVycmlkZSB0aGlzLgogCiBzYXZlIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstcXwtLXF1aWV0XSBbPG1lc3NhZ2U+XTo6CiAKIAlUaGlzIG9wdGlvbiBpcyBkZXByZWNhdGVkIGluIGZhdm91ciBvZiAnZ2l0IHN0YXNoIHB1c2gnLiAgSXQKLQlkaWZmZXJzIGZyb20gInN0YXNoIHB1c2giIGluIHRoYXQgaXQgY2Fubm90IHRha2UgcGF0aHNwZWNzLAotCWFuZCBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMgZm9ybSB0aGUgbWVzc2FnZS4KKwlkaWZmZXJzIGZyb20gInN0YXNoIHB1c2giIGluIHRoYXQgaXQgY2Fubm90IHRha2UgcGF0aHNwZWMuCisJSW5zdGVhZCwgYWxsIG5vbi1vcHRpb24gYXJndW1lbnRzIGFyZSBjb25jYXRlbmF0ZWQgdG8gZm9ybSB0aGUgc3Rhc2gKKwltZXNzYWdlLgogCiBsaXN0IFs8b3B0aW9ucz5dOjoKIApAQCAtMTA2LDExICs4MywxMSBAQAogVGhlIGNvbW1hbmQgdGFrZXMgb3B0aW9ucyBhcHBsaWNhYmxlIHRvIHRoZSAnZ2l0IGxvZycKIGNvbW1hbmQgdG8gY29udHJvbCB3aGF0IGlzIHNob3duIGFuZCBob3cuIFNlZSBsaW5rZ2l0OmdpdC1sb2dbMV0uCiAKLXNob3cgWzxzdGFzaD5dOjoKK3Nob3cgWzxvcHRpb25zPl0gWzxzdGFzaD5dOjoKIAogCVNob3cgdGhlIGNoYW5nZXMgcmVjb3JkZWQgaW4gdGhlIHN0YXNoIGVudHJ5IGFzIGEgZGlmZiBiZXR3ZWVuIHRoZQogCXN0YXNoZWQgY29udGVudHMgYW5kIHRoZSBjb21taXQgYmFjayB3aGVuIHRoZSBzdGFzaCBlbnRyeSB3YXMgZmlyc3QKLQljcmVhdGVkLiBXaGVuIG5vIGA8c3Rhc2g+YCBpcyBnaXZlbiwgaXQgc2hvd3MgdGhlIGxhdGVzdCBvbmUuCisJY3JlYXRlZC4KIAlCeSBkZWZhdWx0LCB0aGUgY29tbWFuZCBzaG93cyB0aGUgZGlmZnN0YXQsIGJ1dCBpdCB3aWxsIGFjY2VwdCBhbnkKIAlmb3JtYXQga25vd24gdG8gJ2dpdCBkaWZmJyAoZS5nLiwgYGdpdCBzdGFzaCBzaG93IC1wIHN0YXNoQHsxfWAKIAl0byB2aWV3IHRoZSBzZWNvbmQgbW9zdCByZWNlbnQgZW50cnkgaW4gcGF0Y2ggZm9ybSkuCkBAIC0xMjcsMTQgKzEwNCw2IEBACiBBcHBseWluZyB0aGUgc3RhdGUgY2FuIGZhaWwgd2l0aCBjb25mbGljdHM7IGluIHRoaXMgY2FzZSwgaXQgaXMgbm90CiByZW1vdmVkIGZyb20gdGhlIHN0YXNoIGxpc3QuIFlvdSBuZWVkIHRvIHJlc29sdmUgdGhlIGNvbmZsaWN0cyBieSBoYW5kCiBhbmQgY2FsbCBgZ2l0IHN0YXNoIGRyb3BgIG1hbnVhbGx5IGFmdGVyd2FyZHMuCi0rCi1JZiB0aGUgYC0taW5kZXhgIG9wdGlvbiBpcyB1c2VkLCB0aGVuIHRyaWVzIHRvIHJlaW5zdGF0ZSBub3Qgb25seSB0aGUgd29ya2luZwotdHJlZSdzIGNoYW5nZXMsIGJ1dCBhbHNvIHRoZSBpbmRleCdzIG9uZXMuIEhvd2V2ZXIsIHRoaXMgY2FuIGZhaWwsIHdoZW4geW91Ci1oYXZlIGNvbmZsaWN0cyAod2hpY2ggYXJlIHN0b3JlZCBpbiB0aGUgaW5kZXgsIHdoZXJlIHlvdSB0aGVyZWZvcmUgY2FuIG5vCi1sb25nZXIgYXBwbHkgdGhlIGNoYW5nZXMgYXMgdGhleSB3ZXJlIG9yaWdpbmFsbHkpLgotKwotV2hlbiBubyBgPHN0YXNoPmAgaXMgZ2l2ZW4sIGBzdGFzaEB7MH1gIGlzIGFzc3VtZWQsIG90aGVyd2lzZSBgPHN0YXNoPmAgbXVzdAotYmUgYSByZWZlcmVuY2Ugb2YgdGhlIGZvcm0gYHN0YXNoQHs8cmV2aXNpb24+fWAuCiAKIGFwcGx5IFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dOjoKIApAQCAtMTQ4LDggKzExNyw3IEBACiAJdGhlIGNvbW1pdCBhdCB3aGljaCB0aGUgYDxzdGFzaD5gIHdhcyBvcmlnaW5hbGx5IGNyZWF0ZWQsIGFwcGxpZXMgdGhlCiAJY2hhbmdlcyByZWNvcmRlZCBpbiBgPHN0YXNoPmAgdG8gdGhlIG5ldyB3b3JraW5nIHRyZWUgYW5kIGluZGV4LgogCUlmIHRoYXQgc3VjY2VlZHMsIGFuZCBgPHN0YXNoPmAgaXMgYSByZWZlcmVuY2Ugb2YgdGhlIGZvcm0KLQlgc3Rhc2hAezxyZXZpc2lvbj59YCwgaXQgdGhlbiBkcm9wcyB0aGUgYDxzdGFzaD5gLiBXaGVuIG5vIGA8c3Rhc2g+YAotCWlzIGdpdmVuLCBhcHBsaWVzIHRoZSBsYXRlc3Qgb25lLgorCWBzdGFzaEB7PHJldmlzaW9uPn1gLCBpdCB0aGVuIGRyb3BzIHRoZSBgPHN0YXNoPmAuCiArCiBUaGlzIGlzIHVzZWZ1bCBpZiB0aGUgYnJhbmNoIG9uIHdoaWNoIHlvdSByYW4gYGdpdCBzdGFzaCBwdXNoYCBoYXMKIGNoYW5nZWQgZW5vdWdoIHRoYXQgYGdpdCBzdGFzaCBhcHBseWAgZmFpbHMgZHVlIHRvIGNvbmZsaWN0cy4gU2luY2UKQEAgLTE2NSw5ICsxMzMsNiBAQAogZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dOjoKIAogCVJlbW92ZSBhIHNpbmdsZSBzdGFzaCBlbnRyeSBmcm9tIHRoZSBsaXN0IG9mIHN0YXNoIGVudHJpZXMuCi0JV2hlbiBubyBgPHN0YXNoPmAgaXMgZ2l2ZW4sIGl0IHJlbW92ZXMgdGhlIGxhdGVzdCBvbmUuCi0JaS5lLiBgc3Rhc2hAezB9YCwgb3RoZXJ3aXNlIGA8c3Rhc2g+YCBtdXN0IGJlIGEgdmFsaWQgc3Rhc2gKLQlsb2cgcmVmZXJlbmNlIG9mIHRoZSBmb3JtIGBzdGFzaEB7PHJldmlzaW9uPn1gLgogCiBjcmVhdGU6OgogCkBAIC0xODQsNiArMTQ5LDk4IEBACiAJcmVmbG9nLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBiZSB1c2VmdWwgZm9yIHNjcmlwdHMuICBJdCBpcwogCXByb2JhYmx5IG5vdCB0aGUgY29tbWFuZCB5b3Ugd2FudCB0byB1c2U7IHNlZSAicHVzaCIgYWJvdmUuCiAKK09QVElPTlMKKy0tLS0tLS0KKy1hOjoKKy0tYWxsOjoKKwlUaGlzIG9wdGlvbiBpcyBvbmx5IHZhbGlkIGZvciBgcHVzaGAgYW5kIGBzYXZlYCBjb21tYW5kcy4KKysKK0FsbCBpZ25vcmVkIGFuZCB1bnRyYWNrZWQgZmlsZXMgYXJlIGFsc28gc3Rhc2hlZCBhbmQgdGhlbiBjbGVhbmVkCit1cCB3aXRoIGBnaXQgY2xlYW5gLgorCistdTo6CistLWluY2x1ZGUtdW50cmFja2VkOjoKKwlUaGlzIG9wdGlvbiBpcyBvbmx5IHZhbGlkIGZvciBgcHVzaGAgYW5kIGBzYXZlYCBjb21tYW5kcy4KKysKK0FsbCB1bnRyYWNrZWQgZmlsZXMgYXJlIGFsc28gc3Rhc2hlZCBhbmQgdGhlbiBjbGVhbmVkIHVwIHdpdGgKK2BnaXQgY2xlYW5gLgorCistLWluZGV4OjoKKwlUaGlzIG9wdGlvbiBpcyBvbmx5IHZhbGlkIGZvciBgcG9wYCBhbmQgYGFwcGx5YCBjb21tYW5kcy4KKysKK1RyaWVzIHRvIHJlaW5zdGF0ZSBub3Qgb25seSB0aGUgd29ya2luZyB0cmVlJ3MgY2hhbmdlcywgYnV0IGFsc28KK3RoZSBpbmRleCdzIG9uZXMuIEhvd2V2ZXIsIHRoaXMgY2FuIGZhaWwsIHdoZW4geW91IGhhdmUgY29uZmxpY3RzCisod2hpY2ggYXJlIHN0b3JlZCBpbiB0aGUgaW5kZXgsIHdoZXJlIHlvdSB0aGVyZWZvcmUgY2FuIG5vIGxvbmdlcgorYXBwbHkgdGhlIGNoYW5nZXMgYXMgdGhleSB3ZXJlIG9yaWdpbmFsbHkpLgorCistazo6CistLWtlZXAtaW5kZXg6OgorLS1uby1rZWVwLWluZGV4OjoKKwlUaGlzIG9wdGlvbiBpcyBvbmx5IHZhbGlkIGZvciBgcHVzaGAgYW5kIGBzYXZlYCBjb21tYW5kcy4KKysKK0FsbCBjaGFuZ2VzIGFscmVhZHkgYWRkZWQgdG8gdGhlIGluZGV4IGFyZSBsZWZ0IGludGFjdC4KKworLXA6OgorLS1wYXRjaDo6CisJVGhpcyBvcHRpb24gaXMgb25seSB2YWxpZCBmb3IgYHB1c2hgIGFuZCBgc2F2ZWAgY29tbWFuZHMuCisrCitJbnRlcmFjdGl2ZWx5IHNlbGVjdCBodW5rcyBmcm9tIHRoZSBkaWZmIGJldHdlZW4gSEVBRCBhbmQgdGhlCit3b3JraW5nIHRyZWUgdG8gYmUgc3Rhc2hlZC4gIFRoZSBzdGFzaCBlbnRyeSBpcyBjb25zdHJ1Y3RlZCBzdWNoCit0aGF0IGl0cyBpbmRleCBzdGF0ZSBpcyB0aGUgc2FtZSBhcyB0aGUgaW5kZXggc3RhdGUgb2YgeW91cgorcmVwb3NpdG9yeSwgYW5kIGl0cyB3b3JrdHJlZSBjb250YWlucyBvbmx5IHRoZSBjaGFuZ2VzIHlvdSBzZWxlY3RlZAoraW50ZXJhY3RpdmVseS4gIFRoZSBzZWxlY3RlZCBjaGFuZ2VzIGFyZSB0aGVuIHJvbGxlZCBiYWNrIGZyb20geW91cgord29ya3RyZWUuIFNlZSB0aGUgYGBJbnRlcmFjdGl2ZSBNb2RlJycgc2VjdGlvbiBvZiBsaW5rZ2l0OmdpdC1hZGRbMV0KK3RvIGxlYXJuIGhvdyB0byBvcGVyYXRlIHRoZSBgLS1wYXRjaGAgbW9kZS4KKysKK1RoZSBgLS1wYXRjaGAgb3B0aW9uIGltcGxpZXMgYC0ta2VlcC1pbmRleGAuICBZb3UgY2FuIHVzZQorYC0tbm8ta2VlcC1pbmRleGAgdG8gb3ZlcnJpZGUgdGhpcy4KKworLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+OjoKKwlUaGlzIG9wdGlvbiBpcyBvbmx5IHZhbGlkIGZvciBgcHVzaGAgY29tbWFuZC4KKysKK1BhdGhzcGVjIGlzIHBhc3NlZCBpbiBgPGZpbGU+YCBpbnN0ZWFkIG9mIGNvbW1hbmRsaW5lIGFyZ3MuIElmCitgPGZpbGU+YCBpcyBleGFjdGx5IGAtYCB0aGVuIHN0YW5kYXJkIGlucHV0IGlzIHVzZWQuIFBhdGhzcGVjCitlbGVtZW50cyBhcmUgc2VwYXJhdGVkIGJ5IExGIG9yIENSL0xGLiBQYXRoc3BlYyBlbGVtZW50cyBjYW4gYmUKK3F1b3RlZCBhcyBleHBsYWluZWQgZm9yIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBjb3JlLnF1b3RlUGF0aGAKKyhzZWUgbGlua2dpdDpnaXQtY29uZmlnWzFdKS4gU2VlIGFsc28gYC0tcGF0aHNwZWMtZmlsZS1udWxgIGFuZAorZ2xvYmFsIGAtLWxpdGVyYWwtcGF0aHNwZWNzYC4KKworLS1wYXRoc3BlYy1maWxlLW51bDo6CisJVGhpcyBvcHRpb24gaXMgb25seSB2YWxpZCBmb3IgYHB1c2hgIGNvbW1hbmQuCisrCitPbmx5IG1lYW5pbmdmdWwgd2l0aCBgLS1wYXRoc3BlYy1mcm9tLWZpbGVgLiBQYXRoc3BlYyBlbGVtZW50cyBhcmUKK3NlcGFyYXRlZCB3aXRoIE5VTCBjaGFyYWN0ZXIgYW5kIGFsbCBvdGhlciBjaGFyYWN0ZXJzIGFyZSB0YWtlbgorbGl0ZXJhbGx5IChpbmNsdWRpbmcgbmV3bGluZXMgYW5kIHF1b3RlcykuCisKKy1xOjoKKy0tcXVpZXQ6OgorCVRoaXMgb3B0aW9uIGlzIG9ubHkgdmFsaWQgZm9yIGBhcHBseWAsIGBkcm9wYCwgYHBvcGAsIGBwdXNoYCwKKwlgc2F2ZWAsIGBzdG9yZWAgY29tbWFuZHMuCisrCitRdWlldCwgc3VwcHJlc3MgZmVlZGJhY2sgbWVzc2FnZXMuCisKK1wtLTo6CisJVGhpcyBvcHRpb24gaXMgb25seSB2YWxpZCBmb3IgYHB1c2hgIGNvbW1hbmQuCisrCitTZXBhcmF0ZXMgcGF0aHNwZWMgZnJvbSBvcHRpb25zIGZvciBkaXNhbWJpZ3VhdGlvbiBwdXJwb3Nlcy4KKworPHBhdGhzcGVjPi4uLjo6CisJVGhpcyBvcHRpb24gaXMgb25seSB2YWxpZCBmb3IgYHB1c2hgIGNvbW1hbmQuCisrCitUaGUgbmV3IHN0YXNoIGVudHJ5IHJlY29yZHMgdGhlIG1vZGlmaWVkIHN0YXRlcyBvbmx5IGZvciB0aGUgZmlsZXMKK3RoYXQgbWF0Y2ggdGhlIHBhdGhzcGVjLiAgVGhlIGluZGV4IGVudHJpZXMgYW5kIHdvcmtpbmcgdHJlZSBmaWxlcworYXJlIHRoZW4gcm9sbGVkIGJhY2sgdG8gdGhlIHN0YXRlIGluIEhFQUQgb25seSBmb3IgdGhlc2UgZmlsZXMsCit0b28sIGxlYXZpbmcgZmlsZXMgdGhhdCBkbyBub3QgbWF0Y2ggdGhlIHBhdGhzcGVjIGludGFjdC4KKysKK0ZvciBtb3JlIGRldGFpbHMsIHNlZSB0aGUgJ3BhdGhzcGVjJyBlbnRyeSBpbiBsaW5rZ2l0OmdpdGdsb3NzYXJ5WzddLgorCis8c3Rhc2g+OjoKKwlUaGlzIG9wdGlvbiBpcyBvbmx5IHZhbGlkIGZvciBgYXBwbHlgLCBgYnJhbmNoYCwgYGRyb3BgLCBgcG9wYCwKKwlgc2hvd2AgY29tbWFuZHMuCisrCitBIHJlZmVyZW5jZSBvZiB0aGUgZm9ybSBgc3Rhc2hAezxyZXZpc2lvbj59YC4gV2hlbiBubyBgPHN0YXNoPmAgaXMKK2dpdmVuLCB0aGUgbGF0ZXN0IHN0YXNoIGlzIGFzc3VtZWQgKHRoYXQgaXMsIGBzdGFzaEB7MH1gKS4KKwogRElTQ1VTU0lPTgogLS0tLS0tLS0tLQogCkBAIC0yMzUsMTIgKzI5MiwxMiBAQAogKwogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIyAuLi4gaGFjayBoYWNrIGhhY2sgLi4uCi0kIGdpdCBjaGVja291dCAtYiBteV93aXAKKyQgZ2l0IHN3aXRjaCAtYyBteV93aXAKICQgZ2l0IGNvbW1pdCAtYSAtbSAiV0lQIgotJCBnaXQgY2hlY2tvdXQgbWFzdGVyCiskIGdpdCBzd2l0Y2ggbWFzdGVyCiAkIGVkaXQgZW1lcmdlbmN5IGZpeAogJCBnaXQgY29tbWl0IC1hIC1tICJGaXggaW4gYSBodXJyeSIKLSQgZ2l0IGNoZWNrb3V0IG15X3dpcAorJCBnaXQgc3dpdGNoIG15X3dpcAogJCBnaXQgcmVzZXQgLS1zb2Z0IEhFQUReCiAjIC4uLiBjb250aW51ZSBoYWNraW5nIC4uLgogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtMjkzLDcgKzM1MCw4IEBACiBsaW5rZ2l0OmdpdC1jaGVja291dFsxXSwKIGxpbmtnaXQ6Z2l0LWNvbW1pdFsxXSwKIGxpbmtnaXQ6Z2l0LXJlZmxvZ1sxXSwKLWxpbmtnaXQ6Z2l0LXJlc2V0WzFdCitsaW5rZ2l0OmdpdC1yZXNldFsxXSwKK2xpbmtnaXQ6Z2l0LXN3aXRjaFsxXQogCiBHSVQKIC0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtc3RhdHVzLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXN0YXR1cy50eHQKaW5kZXggZDlmNDIyZC4uNzczMWI0NSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtc3RhdHVzLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC1zdGF0dXMudHh0CkBAIC01OSwxNiArNTksMTcgQEAKIC0tdW50cmFja2VkLWZpbGVzWz08bW9kZT5dOjoKIAlTaG93IHVudHJhY2tlZCBmaWxlcy4KICsKKy0tCiBUaGUgbW9kZSBwYXJhbWV0ZXIgaXMgdXNlZCB0byBzcGVjaWZ5IHRoZSBoYW5kbGluZyBvZiB1bnRyYWNrZWQgZmlsZXMuCiBJdCBpcyBvcHRpb25hbDogaXQgZGVmYXVsdHMgdG8gJ2FsbCcsIGFuZCBpZiBzcGVjaWZpZWQsIGl0IG11c3QgYmUKIHN0dWNrIHRvIHRoZSBvcHRpb24gKGUuZy4gYC11bm9gLCBidXQgbm90IGAtdSBub2ApLgotKworCiBUaGUgcG9zc2libGUgb3B0aW9ucyBhcmU6Ci0rCisKIAktICdubycgICAgIC0gU2hvdyBubyB1bnRyYWNrZWQgZmlsZXMuCiAJLSAnbm9ybWFsJyAtIFNob3dzIHVudHJhY2tlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMuCiAJLSAnYWxsJyAgICAtIEFsc28gc2hvd3MgaW5kaXZpZHVhbCBmaWxlcyBpbiB1bnRyYWNrZWQgZGlyZWN0b3JpZXMuCi0rCisKIFdoZW4gYC11YCBvcHRpb24gaXMgbm90IHVzZWQsIHVudHJhY2tlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgYXJlCiBzaG93biAoaS5lLiB0aGUgc2FtZSBhcyBzcGVjaWZ5aW5nIGBub3JtYWxgKSwgdG8gaGVscCB5b3UgYXZvaWQKIGZvcmdldHRpbmcgdG8gYWRkIG5ld2x5IGNyZWF0ZWQgZmlsZXMuICBCZWNhdXNlIGl0IHRha2VzIGV4dHJhIHdvcmsKQEAgLTc4LDkgKzc5LDEwIEBACiBgZ2l0IHVwZGF0ZS1pbmRleCAtLXVudHJhY2tlZC1jYWNoZWAgYW5kIGBnaXQgdXBkYXRlLWluZGV4CiAtLXNwbGl0LWluZGV4YCksIE90aGVyd2lzZSB5b3UgY2FuIHVzZSBgbm9gIHRvIGhhdmUgYGdpdCBzdGF0dXNgCiByZXR1cm4gbW9yZSBxdWlja2x5IHdpdGhvdXQgc2hvd2luZyB1bnRyYWNrZWQgZmlsZXMuCi0rCisKIFRoZSBkZWZhdWx0IGNhbiBiZSBjaGFuZ2VkIHVzaW5nIHRoZSBzdGF0dXMuc2hvd1VudHJhY2tlZEZpbGVzCiBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGRvY3VtZW50ZWQgaW4gbGlua2dpdDpnaXQtY29uZmlnWzFdLgorLS0KIAogLS1pZ25vcmUtc3VibW9kdWxlc1s9PHdoZW4+XTo6CiAJSWdub3JlIGNoYW5nZXMgdG8gc3VibW9kdWxlcyB3aGVuIGxvb2tpbmcgZm9yIGNoYW5nZXMuIDx3aGVuPiBjYW4gYmUKQEAgLTEwMCwxMSArMTAyLDEyIEBACiAtLWlnbm9yZWRbPTxtb2RlPl06OgogCVNob3cgaWdub3JlZCBmaWxlcyBhcyB3ZWxsLgogKworLS0KIFRoZSBtb2RlIHBhcmFtZXRlciBpcyB1c2VkIHRvIHNwZWNpZnkgdGhlIGhhbmRsaW5nIG9mIGlnbm9yZWQgZmlsZXMuCiBJdCBpcyBvcHRpb25hbDogaXQgZGVmYXVsdHMgdG8gJ3RyYWRpdGlvbmFsJy4KLSsKKwogVGhlIHBvc3NpYmxlIG9wdGlvbnMgYXJlOgotKworCiAJLSAndHJhZGl0aW9uYWwnIC0gU2hvd3MgaWdub3JlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMsIHVubGVzcwogCQkJICAtLXVudHJhY2tlZC1maWxlcz1hbGwgaXMgc3BlY2lmaWVkLCBpbiB3aGljaCBjYXNlCiAJCQkgIGluZGl2aWR1YWwgZmlsZXMgaW4gaWdub3JlZCBkaXJlY3RvcmllcyBhcmUKQEAgLTExMiwxMiArMTE1LDEzIEBACiAJLSAnbm8nCSAgICAgICAgLSBTaG93IG5vIGlnbm9yZWQgZmlsZXMuCiAJLSAnbWF0Y2hpbmcnICAgIC0gU2hvd3MgaWdub3JlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgbWF0Y2hpbmcgYW4KIAkJCSAgaWdub3JlIHBhdHRlcm4uCi0rCisKIFdoZW4gJ21hdGNoaW5nJyBtb2RlIGlzIHNwZWNpZmllZCwgcGF0aHMgdGhhdCBleHBsaWNpdGx5IG1hdGNoIGFuCiBpZ25vcmVkIHBhdHRlcm4gYXJlIHNob3duLiBJZiBhIGRpcmVjdG9yeSBtYXRjaGVzIGFuIGlnbm9yZSBwYXR0ZXJuLAogdGhlbiBpdCBpcyBzaG93biwgYnV0IG5vdCBwYXRocyBjb250YWluZWQgaW4gdGhlIGlnbm9yZWQgZGlyZWN0b3J5LiBJZgogYSBkaXJlY3RvcnkgZG9lcyBub3QgbWF0Y2ggYW4gaWdub3JlIHBhdHRlcm4sIGJ1dCBhbGwgY29udGVudHMgYXJlCiBpZ25vcmVkLCB0aGVuIHRoZSBkaXJlY3RvcnkgaXMgbm90IHNob3duLCBidXQgYWxsIGNvbnRlbnRzIGFyZSBzaG93bi4KKy0tCiAKIC16OjoKIAlUZXJtaW5hdGUgZW50cmllcyB3aXRoIE5VTCwgaW5zdGVhZCBvZiBMRi4gIFRoaXMgaW1wbGllcwpAQCAtMTk3LDMxICsyMDEsMzMgQEAKIElnbm9yZWQgZmlsZXMgYXJlIG5vdCBsaXN0ZWQsIHVubGVzcyBgLS1pZ25vcmVkYCBvcHRpb24gaXMgaW4gZWZmZWN0LAogaW4gd2hpY2ggY2FzZSBgWFlgIGFyZSBgISFgLgogCi0gICAgWCAgICAgICAgICBZICAgICBNZWFuaW5nCi0gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCSAgICAgW0FNRF0gICBub3QgdXBkYXRlZAotICAgIE0gICAgICAgIFsgTURdICAgdXBkYXRlZCBpbiBpbmRleAotICAgIEEgICAgICAgIFsgTURdICAgYWRkZWQgdG8gaW5kZXgKLSAgICBEICAgICAgICAgICAgICAgIGRlbGV0ZWQgZnJvbSBpbmRleAotICAgIFIgICAgICAgIFsgTURdICAgcmVuYW1lZCBpbiBpbmRleAotICAgIEMgICAgICAgIFsgTURdICAgY29waWVkIGluIGluZGV4Ci0gICAgW01BUkNdICAgICAgICAgICBpbmRleCBhbmQgd29yayB0cmVlIG1hdGNoZXMKLSAgICBbIE1BUkNdICAgICBNICAgIHdvcmsgdHJlZSBjaGFuZ2VkIHNpbmNlIGluZGV4Ci0gICAgWyBNQVJDXSAgICAgRCAgICBkZWxldGVkIGluIHdvcmsgdHJlZQotICAgIFsgRF0gICAgICAgIFIgICAgcmVuYW1lZCBpbiB3b3JrIHRyZWUKLSAgICBbIERdICAgICAgICBDICAgIGNvcGllZCBpbiB3b3JrIHRyZWUKLSAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gICAgRCAgICAgICAgICAgRCAgICB1bm1lcmdlZCwgYm90aCBkZWxldGVkCi0gICAgQSAgICAgICAgICAgVSAgICB1bm1lcmdlZCwgYWRkZWQgYnkgdXMKLSAgICBVICAgICAgICAgICBEICAgIHVubWVyZ2VkLCBkZWxldGVkIGJ5IHRoZW0KLSAgICBVICAgICAgICAgICBBICAgIHVubWVyZ2VkLCBhZGRlZCBieSB0aGVtCi0gICAgRCAgICAgICAgICAgVSAgICB1bm1lcmdlZCwgZGVsZXRlZCBieSB1cwotICAgIEEgICAgICAgICAgIEEgICAgdW5tZXJnZWQsIGJvdGggYWRkZWQKLSAgICBVICAgICAgICAgICBVICAgIHVubWVyZ2VkLCBib3RoIG1vZGlmaWVkCi0gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotICAgID8gICAgICAgICAgID8gICAgdW50cmFja2VkCi0gICAgISAgICAgICAgICAgISAgICBpZ25vcmVkCi0gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLi4uLgorWCAgICAgICAgICBZICAgICBNZWFuaW5nCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisJIFtBTURdICAgbm90IHVwZGF0ZWQKK00gICAgICAgIFsgTURdICAgdXBkYXRlZCBpbiBpbmRleAorQSAgICAgICAgWyBNRF0gICBhZGRlZCB0byBpbmRleAorRCAgICAgICAgICAgICAgICBkZWxldGVkIGZyb20gaW5kZXgKK1IgICAgICAgIFsgTURdICAgcmVuYW1lZCBpbiBpbmRleAorQyAgICAgICAgWyBNRF0gICBjb3BpZWQgaW4gaW5kZXgKK1tNQVJDXSAgICAgICAgICAgaW5kZXggYW5kIHdvcmsgdHJlZSBtYXRjaGVzCitbIE1BUkNdICAgICBNICAgIHdvcmsgdHJlZSBjaGFuZ2VkIHNpbmNlIGluZGV4CitbIE1BUkNdICAgICBEICAgIGRlbGV0ZWQgaW4gd29yayB0cmVlCitbIERdICAgICAgICBSICAgIHJlbmFtZWQgaW4gd29yayB0cmVlCitbIERdICAgICAgICBDICAgIGNvcGllZCBpbiB3b3JrIHRyZWUKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0QgICAgICAgICAgIEQgICAgdW5tZXJnZWQsIGJvdGggZGVsZXRlZAorQSAgICAgICAgICAgVSAgICB1bm1lcmdlZCwgYWRkZWQgYnkgdXMKK1UgICAgICAgICAgIEQgICAgdW5tZXJnZWQsIGRlbGV0ZWQgYnkgdGhlbQorVSAgICAgICAgICAgQSAgICB1bm1lcmdlZCwgYWRkZWQgYnkgdGhlbQorRCAgICAgICAgICAgVSAgICB1bm1lcmdlZCwgZGVsZXRlZCBieSB1cworQSAgICAgICAgICAgQSAgICB1bm1lcmdlZCwgYm90aCBhZGRlZAorVSAgICAgICAgICAgVSAgICB1bm1lcmdlZCwgYm90aCBtb2RpZmllZAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPyAgICAgICAgICAgPyAgICB1bnRyYWNrZWQKKyEgICAgICAgICAgICEgICAgaWdub3JlZAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLi4uLgogCiBTdWJtb2R1bGVzIGhhdmUgbW9yZSBzdGF0ZSBhbmQgaW5zdGVhZCByZXBvcnQKIAkJTSAgICB0aGUgc3VibW9kdWxlIGhhcyBhIGRpZmZlcmVudCBIRUFEIHRoYW4KQEAgLTI3NiwyMSArMjgyLDI1IEBACiBjb21tYW5kIGxpbmUgYXJndW1lbnRzLiAgUGFyc2VycyBzaG91bGQgaWdub3JlIGhlYWRlcnMgdGhleQogZG9uJ3QgcmVjb2duaXplLgogCi0jIyMgQnJhbmNoIEhlYWRlcnMKK0JyYW5jaCBIZWFkZXJzCiteXl5eXl5eXl5eXl5eXgogCiBJZiBgLS1icmFuY2hgIGlzIGdpdmVuLCBhIHNlcmllcyBvZiBoZWFkZXIgbGluZXMgYXJlIHByaW50ZWQgd2l0aAogaW5mb3JtYXRpb24gYWJvdXQgdGhlIGN1cnJlbnQgYnJhbmNoLgogCi0gICAgTGluZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOb3RlcwotICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotICAgICMgYnJhbmNoLm9pZCA8Y29tbWl0PiB8IChpbml0aWFsKSAgICAgICAgQ3VycmVudCBjb21taXQuCi0gICAgIyBicmFuY2guaGVhZCA8YnJhbmNoPiB8IChkZXRhY2hlZCkgICAgICBDdXJyZW50IGJyYW5jaC4KLSAgICAjIGJyYW5jaC51cHN0cmVhbSA8dXBzdHJlYW1fYnJhbmNoPiAgICAgIElmIHVwc3RyZWFtIGlzIHNldC4KLSAgICAjIGJyYW5jaC5hYiArPGFoZWFkPiAtPGJlaGluZD4gICAgICAgICAgIElmIHVwc3RyZWFtIGlzIHNldCBhbmQKLQkJCQkJICAgICB0aGUgY29tbWl0IGlzIHByZXNlbnQuCi0gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisuLi4uCitMaW5lICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vdGVzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgYnJhbmNoLm9pZCA8Y29tbWl0PiB8IChpbml0aWFsKSAgICAgICAgQ3VycmVudCBjb21taXQuCisjIGJyYW5jaC5oZWFkIDxicmFuY2g+IHwgKGRldGFjaGVkKSAgICAgIEN1cnJlbnQgYnJhbmNoLgorIyBicmFuY2gudXBzdHJlYW0gPHVwc3RyZWFtX2JyYW5jaD4gICAgICBJZiB1cHN0cmVhbSBpcyBzZXQuCisjIGJyYW5jaC5hYiArPGFoZWFkPiAtPGJlaGluZD4gICAgICAgICAgIElmIHVwc3RyZWFtIGlzIHNldCBhbmQKKwkJCQkJIHRoZSBjb21taXQgaXMgcHJlc2VudC4KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLi4uLgogCi0jIyMgQ2hhbmdlZCBUcmFja2VkIEVudHJpZXMKK0NoYW5nZWQgVHJhY2tlZCBFbnRyaWVzCiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgogCiBGb2xsb3dpbmcgdGhlIGhlYWRlcnMsIGEgc2VyaWVzIG9mIGxpbmVzIGFyZSBwcmludGVkIGZvciB0cmFja2VkCiBlbnRyaWVzLiAgT25lIG9mIHRocmVlIGRpZmZlcmVudCBsaW5lIGZvcm1hdHMgbWF5IGJlIHVzZWQgdG8gZGVzY3JpYmUKQEAgLTMwNiw1OCArMzE2LDYzIEBACiAKICAgICAyIDxYWT4gPHN1Yj4gPG1IPiA8bUk+IDxtVz4gPGhIPiA8aEk+IDxYPjxzY29yZT4gPHBhdGg+PHNlcD48b3JpZ1BhdGg+CiAKLSAgICBGaWVsZCAgICAgICBNZWFuaW5nCi0gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSAgICA8WFk+ICAgICAgICBBIDIgY2hhcmFjdGVyIGZpZWxkIGNvbnRhaW5pbmcgdGhlIHN0YWdlZCBhbmQKLQkJdW5zdGFnZWQgWFkgdmFsdWVzIGRlc2NyaWJlZCBpbiB0aGUgc2hvcnQgZm9ybWF0LAotCQl3aXRoIHVuY2hhbmdlZCBpbmRpY2F0ZWQgYnkgYSAiLiIgcmF0aGVyIHRoYW4KLQkJYSBzcGFjZS4KLSAgICA8c3ViPiAgICAgICBBIDQgY2hhcmFjdGVyIGZpZWxkIGRlc2NyaWJpbmcgdGhlIHN1Ym1vZHVsZSBzdGF0ZS4KLQkJIk4uLi4iIHdoZW4gdGhlIGVudHJ5IGlzIG5vdCBhIHN1Ym1vZHVsZS4KLQkJIlM8Yz48bT48dT4iIHdoZW4gdGhlIGVudHJ5IGlzIGEgc3VibW9kdWxlLgotCQk8Yz4gaXMgIkMiIGlmIHRoZSBjb21taXQgY2hhbmdlZDsgb3RoZXJ3aXNlICIuIi4KLQkJPG0+IGlzICJNIiBpZiBpdCBoYXMgdHJhY2tlZCBjaGFuZ2VzOyBvdGhlcndpc2UgIi4iLgotCQk8dT4gaXMgIlUiIGlmIHRoZXJlIGFyZSB1bnRyYWNrZWQgY2hhbmdlczsgb3RoZXJ3aXNlICIuIi4KLSAgICA8bUg+ICAgICAgICBUaGUgb2N0YWwgZmlsZSBtb2RlIGluIEhFQUQuCi0gICAgPG1JPiAgICAgICAgVGhlIG9jdGFsIGZpbGUgbW9kZSBpbiB0aGUgaW5kZXguCi0gICAgPG1XPiAgICAgICAgVGhlIG9jdGFsIGZpbGUgbW9kZSBpbiB0aGUgd29ya3RyZWUuCi0gICAgPGhIPiAgICAgICAgVGhlIG9iamVjdCBuYW1lIGluIEhFQUQuCi0gICAgPGhJPiAgICAgICAgVGhlIG9iamVjdCBuYW1lIGluIHRoZSBpbmRleC4KLSAgICA8WD48c2NvcmU+ICBUaGUgcmVuYW1lIG9yIGNvcHkgc2NvcmUgKGRlbm90aW5nIHRoZSBwZXJjZW50YWdlCi0JCW9mIHNpbWlsYXJpdHkgYmV0d2VlbiB0aGUgc291cmNlIGFuZCB0YXJnZXQgb2YgdGhlCi0JCW1vdmUgb3IgY29weSkuIEZvciBleGFtcGxlICJSMTAwIiBvciAiQzc1Ii4KLSAgICA8cGF0aD4gICAgICBUaGUgcGF0aG5hbWUuICBJbiBhIHJlbmFtZWQvY29waWVkIGVudHJ5LCB0aGlzCi0JCWlzIHRoZSB0YXJnZXQgcGF0aC4KLSAgICA8c2VwPiAgICAgICBXaGVuIHRoZSBgLXpgIG9wdGlvbiBpcyB1c2VkLCB0aGUgMiBwYXRobmFtZXMgYXJlIHNlcGFyYXRlZAotCQl3aXRoIGEgTlVMIChBU0NJSSAweDAwKSBieXRlOyBvdGhlcndpc2UsIGEgdGFiIChBU0NJSSAweDA5KQotCQlieXRlIHNlcGFyYXRlcyB0aGVtLgotICAgIDxvcmlnUGF0aD4gIFRoZSBwYXRobmFtZSBpbiB0aGUgY29tbWl0IGF0IEhFQUQgb3IgaW4gdGhlIGluZGV4LgotCQlUaGlzIGlzIG9ubHkgcHJlc2VudCBpbiBhIHJlbmFtZWQvY29waWVkIGVudHJ5LCBhbmQKLQkJdGVsbHMgd2hlcmUgdGhlIHJlbmFtZWQvY29waWVkIGNvbnRlbnRzIGNhbWUgZnJvbS4KLSAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLi4uLgorRmllbGQgICAgICAgTWVhbmluZworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKzxYWT4gICAgICAgIEEgMiBjaGFyYWN0ZXIgZmllbGQgY29udGFpbmluZyB0aGUgc3RhZ2VkIGFuZAorCSAgICB1bnN0YWdlZCBYWSB2YWx1ZXMgZGVzY3JpYmVkIGluIHRoZSBzaG9ydCBmb3JtYXQsCisJICAgIHdpdGggdW5jaGFuZ2VkIGluZGljYXRlZCBieSBhICIuIiByYXRoZXIgdGhhbgorCSAgICBhIHNwYWNlLgorPHN1Yj4gICAgICAgQSA0IGNoYXJhY3RlciBmaWVsZCBkZXNjcmliaW5nIHRoZSBzdWJtb2R1bGUgc3RhdGUuCisJICAgICJOLi4uIiB3aGVuIHRoZSBlbnRyeSBpcyBub3QgYSBzdWJtb2R1bGUuCisJICAgICJTPGM+PG0+PHU+IiB3aGVuIHRoZSBlbnRyeSBpcyBhIHN1Ym1vZHVsZS4KKwkgICAgPGM+IGlzICJDIiBpZiB0aGUgY29tbWl0IGNoYW5nZWQ7IG90aGVyd2lzZSAiLiIuCisJICAgIDxtPiBpcyAiTSIgaWYgaXQgaGFzIHRyYWNrZWQgY2hhbmdlczsgb3RoZXJ3aXNlICIuIi4KKwkgICAgPHU+IGlzICJVIiBpZiB0aGVyZSBhcmUgdW50cmFja2VkIGNoYW5nZXM7IG90aGVyd2lzZSAiLiIuCis8bUg+ICAgICAgICBUaGUgb2N0YWwgZmlsZSBtb2RlIGluIEhFQUQuCis8bUk+ICAgICAgICBUaGUgb2N0YWwgZmlsZSBtb2RlIGluIHRoZSBpbmRleC4KKzxtVz4gICAgICAgIFRoZSBvY3RhbCBmaWxlIG1vZGUgaW4gdGhlIHdvcmt0cmVlLgorPGhIPiAgICAgICAgVGhlIG9iamVjdCBuYW1lIGluIEhFQUQuCis8aEk+ICAgICAgICBUaGUgb2JqZWN0IG5hbWUgaW4gdGhlIGluZGV4LgorPFg+PHNjb3JlPiAgVGhlIHJlbmFtZSBvciBjb3B5IHNjb3JlIChkZW5vdGluZyB0aGUgcGVyY2VudGFnZQorCSAgICBvZiBzaW1pbGFyaXR5IGJldHdlZW4gdGhlIHNvdXJjZSBhbmQgdGFyZ2V0IG9mIHRoZQorCSAgICBtb3ZlIG9yIGNvcHkpLiBGb3IgZXhhbXBsZSAiUjEwMCIgb3IgIkM3NSIuCis8cGF0aD4gICAgICBUaGUgcGF0aG5hbWUuICBJbiBhIHJlbmFtZWQvY29waWVkIGVudHJ5LCB0aGlzCisJICAgIGlzIHRoZSB0YXJnZXQgcGF0aC4KKzxzZXA+ICAgICAgIFdoZW4gdGhlIGAtemAgb3B0aW9uIGlzIHVzZWQsIHRoZSAyIHBhdGhuYW1lcyBhcmUgc2VwYXJhdGVkCisJICAgIHdpdGggYSBOVUwgKEFTQ0lJIDB4MDApIGJ5dGU7IG90aGVyd2lzZSwgYSB0YWIgKEFTQ0lJIDB4MDkpCisJICAgIGJ5dGUgc2VwYXJhdGVzIHRoZW0uCis8b3JpZ1BhdGg+ICBUaGUgcGF0aG5hbWUgaW4gdGhlIGNvbW1pdCBhdCBIRUFEIG9yIGluIHRoZSBpbmRleC4KKwkgICAgVGhpcyBpcyBvbmx5IHByZXNlbnQgaW4gYSByZW5hbWVkL2NvcGllZCBlbnRyeSwgYW5kCisJICAgIHRlbGxzIHdoZXJlIHRoZSByZW5hbWVkL2NvcGllZCBjb250ZW50cyBjYW1lIGZyb20uCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLi4uLgogCiBVbm1lcmdlZCBlbnRyaWVzIGhhdmUgdGhlIGZvbGxvd2luZyBmb3JtYXQ7IHRoZSBmaXJzdCBjaGFyYWN0ZXIgaXMKIGEgInUiIHRvIGRpc3Rpbmd1aXNoIGZyb20gb3JkaW5hcnkgY2hhbmdlZCBlbnRyaWVzLgogCiAgICAgdSA8eHk+IDxzdWI+IDxtMT4gPG0yPiA8bTM+IDxtVz4gPGgxPiA8aDI+IDxoMz4gPHBhdGg+CiAKLSAgICBGaWVsZCAgICAgICBNZWFuaW5nCi0gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSAgICA8WFk+ICAgICAgICBBIDIgY2hhcmFjdGVyIGZpZWxkIGRlc2NyaWJpbmcgdGhlIGNvbmZsaWN0IHR5cGUKLQkJYXMgZGVzY3JpYmVkIGluIHRoZSBzaG9ydCBmb3JtYXQuCi0gICAgPHN1Yj4gICAgICAgQSA0IGNoYXJhY3RlciBmaWVsZCBkZXNjcmliaW5nIHRoZSBzdWJtb2R1bGUgc3RhdGUKLQkJYXMgZGVzY3JpYmVkIGFib3ZlLgotICAgIDxtMT4gICAgICAgIFRoZSBvY3RhbCBmaWxlIG1vZGUgaW4gc3RhZ2UgMS4KLSAgICA8bTI+ICAgICAgICBUaGUgb2N0YWwgZmlsZSBtb2RlIGluIHN0YWdlIDIuCi0gICAgPG0zPiAgICAgICAgVGhlIG9jdGFsIGZpbGUgbW9kZSBpbiBzdGFnZSAzLgotICAgIDxtVz4gICAgICAgIFRoZSBvY3RhbCBmaWxlIG1vZGUgaW4gdGhlIHdvcmt0cmVlLgotICAgIDxoMT4gICAgICAgIFRoZSBvYmplY3QgbmFtZSBpbiBzdGFnZSAxLgotICAgIDxoMj4gICAgICAgIFRoZSBvYmplY3QgbmFtZSBpbiBzdGFnZSAyLgotICAgIDxoMz4gICAgICAgIFRoZSBvYmplY3QgbmFtZSBpbiBzdGFnZSAzLgotICAgIDxwYXRoPiAgICAgIFRoZSBwYXRobmFtZS4KLSAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLi4uLgorRmllbGQgICAgICAgTWVhbmluZworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKzxYWT4gICAgICAgIEEgMiBjaGFyYWN0ZXIgZmllbGQgZGVzY3JpYmluZyB0aGUgY29uZmxpY3QgdHlwZQorCSAgICBhcyBkZXNjcmliZWQgaW4gdGhlIHNob3J0IGZvcm1hdC4KKzxzdWI+ICAgICAgIEEgNCBjaGFyYWN0ZXIgZmllbGQgZGVzY3JpYmluZyB0aGUgc3VibW9kdWxlIHN0YXRlCisJICAgIGFzIGRlc2NyaWJlZCBhYm92ZS4KKzxtMT4gICAgICAgIFRoZSBvY3RhbCBmaWxlIG1vZGUgaW4gc3RhZ2UgMS4KKzxtMj4gICAgICAgIFRoZSBvY3RhbCBmaWxlIG1vZGUgaW4gc3RhZ2UgMi4KKzxtMz4gICAgICAgIFRoZSBvY3RhbCBmaWxlIG1vZGUgaW4gc3RhZ2UgMy4KKzxtVz4gICAgICAgIFRoZSBvY3RhbCBmaWxlIG1vZGUgaW4gdGhlIHdvcmt0cmVlLgorPGgxPiAgICAgICAgVGhlIG9iamVjdCBuYW1lIGluIHN0YWdlIDEuCis8aDI+ICAgICAgICBUaGUgb2JqZWN0IG5hbWUgaW4gc3RhZ2UgMi4KKzxoMz4gICAgICAgIFRoZSBvYmplY3QgbmFtZSBpbiBzdGFnZSAzLgorPHBhdGg+ICAgICAgVGhlIHBhdGhuYW1lLgorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy4uLi4KIAotIyMjIE90aGVyIEl0ZW1zCitPdGhlciBJdGVtcworXl5eXl5eXl5eXl4KIAogRm9sbG93aW5nIHRoZSB0cmFja2VkIGVudHJpZXMgKGFuZCBpZiByZXF1ZXN0ZWQpLCBhIHNlcmllcyBvZgogbGluZXMgd2lsbCBiZSBwcmludGVkIGZvciB1bnRyYWNrZWQgYW5kIHRoZW4gaWdub3JlZCBpdGVtcwpAQCAtMzcxLDcgKzM4Niw4IEBACiAKICAgICAhIDxwYXRoPgogCi0jIyMgUGF0aG5hbWUgRm9ybWF0IE5vdGVzIGFuZCAtegorUGF0aG5hbWUgRm9ybWF0IE5vdGVzIGFuZCAtegorXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgogCiBXaGVuIHRoZSBgLXpgIG9wdGlvbiBpcyBnaXZlbiwgcGF0aG5hbWVzIGFyZSBwcmludGVkIGFzIGlzIGFuZAogd2l0aG91dCBhbnkgcXVvdGluZyBhbmQgbGluZXMgYXJlIHRlcm1pbmF0ZWQgd2l0aCBhIE5VTCAoQVNDSUkgMHgwMCkKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXN1Ym1vZHVsZS50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1zdWJtb2R1bGUudHh0CmluZGV4IGJhM2M0ZGYuLmM5ZWQyYmYgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXN1Ym1vZHVsZS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtc3VibW9kdWxlLnR4dApAQCAtOSwxMSArOSwxNCBAQAogU1lOT1BTSVMKIC0tLS0tLS0tCiBbdmVyc2VdCisnZ2l0IHN1Ym1vZHVsZScgWy0tcXVpZXRdIFstLWNhY2hlZF0KICdnaXQgc3VibW9kdWxlJyBbLS1xdWlldF0gYWRkIFs8b3B0aW9ucz5dIFstLV0gPHJlcG9zaXRvcnk+IFs8cGF0aD5dCiAnZ2l0IHN1Ym1vZHVsZScgWy0tcXVpZXRdIHN0YXR1cyBbLS1jYWNoZWRdIFstLXJlY3Vyc2l2ZV0gWy0tXSBbPHBhdGg+Li4uXQogJ2dpdCBzdWJtb2R1bGUnIFstLXF1aWV0XSBpbml0IFstLV0gWzxwYXRoPi4uLl0KICdnaXQgc3VibW9kdWxlJyBbLS1xdWlldF0gZGVpbml0IFstZnwtLWZvcmNlXSAoLS1hbGx8Wy0tXSA8cGF0aD4uLi4pCiAnZ2l0IHN1Ym1vZHVsZScgWy0tcXVpZXRdIHVwZGF0ZSBbPG9wdGlvbnM+XSBbLS1dIFs8cGF0aD4uLi5dCisnZ2l0IHN1Ym1vZHVsZScgWy0tcXVpZXRdIHNldC1icmFuY2ggWzxvcHRpb25zPl0gWy0tXSA8cGF0aD4KKydnaXQgc3VibW9kdWxlJyBbLS1xdWlldF0gc2V0LXVybCBbLS1dIDxwYXRoPiA8bmV3dXJsPgogJ2dpdCBzdWJtb2R1bGUnIFstLXF1aWV0XSBzdW1tYXJ5IFs8b3B0aW9ucz5dIFstLV0gWzxwYXRoPi4uLl0KICdnaXQgc3VibW9kdWxlJyBbLS1xdWlldF0gZm9yZWFjaCBbLS1yZWN1cnNpdmVdIDxjb21tYW5kPgogJ2dpdCBzdWJtb2R1bGUnIFstLXF1aWV0XSBzeW5jIFstLXJlY3Vyc2l2ZV0gWy0tXSBbPHBhdGg+Li4uXQpAQCAtMjgsNiArMzEsOSBAQAogCiBDT01NQU5EUwogLS0tLS0tLS0KK1dpdGggbm8gYXJndW1lbnRzLCBzaG93cyB0aGUgc3RhdHVzIG9mIGV4aXN0aW5nIHN1Ym1vZHVsZXMuICBTZXZlcmFsCitzdWJjb21tYW5kcyBhcmUgYXZhaWxhYmxlIHRvIHBlcmZvcm0gb3BlcmF0aW9ucyBvbiB0aGUgc3VibW9kdWxlcy4KKwogYWRkIFstYiA8YnJhbmNoPl0gWy1mfC0tZm9yY2VdIFstLW5hbWUgPG5hbWU+XSBbLS1yZWZlcmVuY2UgPHJlcG9zaXRvcnk+XSBbLS1kZXB0aCA8ZGVwdGg+XSBbLS1dIDxyZXBvc2l0b3J5PiBbPHBhdGg+XTo6CiAJQWRkIHRoZSBnaXZlbiByZXBvc2l0b3J5IGFzIGEgc3VibW9kdWxlIGF0IHRoZSBnaXZlbiBwYXRoCiAJdG8gdGhlIGNoYW5nZXNldCB0byBiZSBjb21taXR0ZWQgbmV4dCB0byB0aGUgY3VycmVudApAQCAtMzgsNyArNDQsNyBAQAogb3IgLi4vKSwgdGhlIGxvY2F0aW9uIHJlbGF0aXZlIHRvIHRoZSBzdXBlcnByb2plY3QncyBkZWZhdWx0IHJlbW90ZQogcmVwb3NpdG9yeSAoUGxlYXNlIG5vdGUgdGhhdCB0byBzcGVjaWZ5IGEgcmVwb3NpdG9yeSAnZm9vLmdpdCcKIHdoaWNoIGlzIGxvY2F0ZWQgcmlnaHQgbmV4dCB0byBhIHN1cGVycHJvamVjdCAnYmFyLmdpdCcsIHlvdSdsbAotaGF2ZSB0byB1c2UgJy4uL2Zvby5naXQnIGluc3RlYWQgb2YgJy4vZm9vLmdpdCcgLSBhcyBvbmUgbWlnaHQgZXhwZWN0CitoYXZlIHRvIHVzZSBgLi4vZm9vLmdpdGAgaW5zdGVhZCBvZiBgLi9mb28uZ2l0YCAtIGFzIG9uZSBtaWdodCBleHBlY3QKIHdoZW4gZm9sbG93aW5nIHRoZSBydWxlcyBmb3IgcmVsYXRpdmUgVVJMcyAtIGJlY2F1c2UgdGhlIGV2YWx1YXRpb24KIG9mIHJlbGF0aXZlIFVSTHMgaW4gR2l0IGlzIGlkZW50aWNhbCB0byB0aGF0IG9mIHJlbGF0aXZlIGRpcmVjdG9yaWVzKS4KICsKQEAgLTc1LDYgKzgxLDkgQEAKIAlkb2VzIG5vdCBtYXRjaCB0aGUgU0hBLTEgZm91bmQgaW4gdGhlIGluZGV4IG9mIHRoZSBjb250YWluaW5nCiAJcmVwb3NpdG9yeSBhbmQgYFVgIGlmIHRoZSBzdWJtb2R1bGUgaGFzIG1lcmdlIGNvbmZsaWN0cy4KICsKK0lmIGAtLWNhY2hlZGAgaXMgc3BlY2lmaWVkLCB0aGlzIGNvbW1hbmQgd2lsbCBpbnN0ZWFkIHByaW50IHRoZSBTSEEtMQorcmVjb3JkZWQgaW4gdGhlIHN1cGVycHJvamVjdCBmb3IgZWFjaCBzdWJtb2R1bGUuCisrCiBJZiBgLS1yZWN1cnNpdmVgIGlzIHNwZWNpZmllZCwgdGhpcyBjb21tYW5kIHdpbGwgcmVjdXJzZSBpbnRvIG5lc3RlZAogc3VibW9kdWxlcywgYW5kIHNob3cgdGhlaXIgc3RhdHVzIGFzIHdlbGwuCiArCkBAIC0xMjQsMTEgKzEzMywxMiBAQAogdGhhdCB1c2UgbGlua2dpdDpnaXQtcm1bMV0gaW5zdGVhZC4gU2VlIGxpbmtnaXQ6Z2l0c3VibW9kdWxlc1s3XSBmb3IgcmVtb3ZhbAogb3B0aW9ucy4KIAotdXBkYXRlIFstLWluaXRdIFstLXJlbW90ZV0gWy1OfC0tbm8tZmV0Y2hdIFstLVtuby1dcmVjb21tZW5kLXNoYWxsb3ddIFstZnwtLWZvcmNlXSBbLS1jaGVja291dHwtLXJlYmFzZXwtLW1lcmdlXSBbLS1yZWZlcmVuY2UgPHJlcG9zaXRvcnk+XSBbLS1kZXB0aCA8ZGVwdGg+XSBbLS1yZWN1cnNpdmVdIFstLWpvYnMgPG4+XSBbLS1dIFs8cGF0aD4uLi5dOjoKK3VwZGF0ZSBbLS1pbml0XSBbLS1yZW1vdGVdIFstTnwtLW5vLWZldGNoXSBbLS1bbm8tXXJlY29tbWVuZC1zaGFsbG93XSBbLWZ8LS1mb3JjZV0gWy0tY2hlY2tvdXR8LS1yZWJhc2V8LS1tZXJnZV0gWy0tcmVmZXJlbmNlIDxyZXBvc2l0b3J5Pl0gWy0tZGVwdGggPGRlcHRoPl0gWy0tcmVjdXJzaXZlXSBbLS1qb2JzIDxuPl0gWy0tW25vLV1zaW5nbGUtYnJhbmNoXSBbLS1dIFs8cGF0aD4uLi5dOjoKICsKIC0tCiBVcGRhdGUgdGhlIHJlZ2lzdGVyZWQgc3VibW9kdWxlcyB0byBtYXRjaCB3aGF0IHRoZSBzdXBlcnByb2plY3QKLWV4cGVjdHMgYnkgY2xvbmluZyBtaXNzaW5nIHN1Ym1vZHVsZXMgYW5kIHVwZGF0aW5nIHRoZSB3b3JraW5nIHRyZWUgb2YKK2V4cGVjdHMgYnkgY2xvbmluZyBtaXNzaW5nIHN1Ym1vZHVsZXMsIGZldGNoaW5nIG1pc3NpbmcgY29tbWl0cworaW4gc3VibW9kdWxlcyBhbmQgdXBkYXRpbmcgdGhlIHdvcmtpbmcgdHJlZSBvZgogdGhlIHN1Ym1vZHVsZXMuIFRoZSAidXBkYXRpbmciIGNhbiBiZSBkb25lIGluIHNldmVyYWwgd2F5cyBkZXBlbmRpbmcKIG9uIGNvbW1hbmQgbGluZSBvcHRpb25zIGFuZCB0aGUgdmFsdWUgb2YgYHN1Ym1vZHVsZS48bmFtZT4udXBkYXRlYAogY29uZmlndXJhdGlvbiB2YXJpYWJsZS4gVGhlIGNvbW1hbmQgbGluZSBvcHRpb24gdGFrZXMgcHJlY2VkZW5jZSBvdmVyCkBAIC0xNjgsNiArMTc4LDE4IEBACiBJZiBgLS1yZWN1cnNpdmVgIGlzIHNwZWNpZmllZCwgdGhpcyBjb21tYW5kIHdpbGwgcmVjdXJzZSBpbnRvIHRoZQogcmVnaXN0ZXJlZCBzdWJtb2R1bGVzLCBhbmQgdXBkYXRlIGFueSBuZXN0ZWQgc3VibW9kdWxlcyB3aXRoaW4uCiAtLQorc2V0LWJyYW5jaCAoLWJ8LS1icmFuY2gpIDxicmFuY2g+IFstLV0gPHBhdGg+OjoKK3NldC1icmFuY2ggKC1kfC0tZGVmYXVsdCkgWy0tXSA8cGF0aD46OgorCVNldHMgdGhlIGRlZmF1bHQgcmVtb3RlIHRyYWNraW5nIGJyYW5jaCBmb3IgdGhlIHN1Ym1vZHVsZS4gVGhlCisJYC0tYnJhbmNoYCBvcHRpb24gYWxsb3dzIHRoZSByZW1vdGUgYnJhbmNoIHRvIGJlIHNwZWNpZmllZC4gVGhlCisJYC0tZGVmYXVsdGAgb3B0aW9uIHJlbW92ZXMgdGhlIHN1Ym1vZHVsZS48bmFtZT4uYnJhbmNoIGNvbmZpZ3VyYXRpb24KKwlrZXksIHdoaWNoIGNhdXNlcyB0aGUgdHJhY2tpbmcgYnJhbmNoIHRvIGRlZmF1bHQgdG8gJ21hc3RlcicuCisKK3NldC11cmwgWy0tXSA8cGF0aD4gPG5ld3VybD46OgorCVNldHMgdGhlIFVSTCBvZiB0aGUgc3BlY2lmaWVkIHN1Ym1vZHVsZSB0byA8bmV3dXJsPi4gVGhlbiwgaXQgd2lsbAorCWF1dG9tYXRpY2FsbHkgc3luY2hyb25pemUgdGhlIHN1Ym1vZHVsZSdzIG5ldyByZW1vdGUgVVJMCisJY29uZmlndXJhdGlvbi4KKwogc3VtbWFyeSBbLS1jYWNoZWR8LS1maWxlc10gWygtbnwtLXN1bW1hcnktbGltaXQpIDxuPl0gW2NvbW1pdF0gWy0tXSBbPHBhdGg+Li4uXTo6CiAJU2hvdyBjb21taXQgc3VtbWFyeSBiZXR3ZWVuIHRoZSBnaXZlbiBjb21taXQgKGRlZmF1bHRzIHRvIEhFQUQpIGFuZAogCXdvcmtpbmcgdHJlZS9pbmRleC4gRm9yIGEgc3VibW9kdWxlIGluIHF1ZXN0aW9uLCBhIHNlcmllcyBvZiBjb21taXRzCkBAIC0yMDcsNyArMjI5LDcgQEAKIGNoZWNrZWQgb3V0IGNvbW1pdCBmb3IgZWFjaCBzdWJtb2R1bGU6CiArCiAtLS0tLS0tLS0tLS0tLQotZ2l0IHN1Ym1vZHVsZSBmb3JlYWNoICdlY2hvICRwYXRoIGBnaXQgcmV2LXBhcnNlIEhFQURgJworZ2l0IHN1Ym1vZHVsZSBmb3JlYWNoICdlY2hvICRzbV9wYXRoIGBnaXQgcmV2LXBhcnNlIEhFQURgJwogLS0tLS0tLS0tLS0tLS0KIAogc3luYyBbLS1yZWN1cnNpdmVdIFstLV0gWzxwYXRoPi4uLl06OgpAQCAtMjI2LDcgKzI0OCw3IEBACiAKIGFic29yYmdpdGRpcnM6OgogCUlmIGEgZ2l0IGRpcmVjdG9yeSBvZiBhIHN1Ym1vZHVsZSBpcyBpbnNpZGUgdGhlIHN1Ym1vZHVsZSwKLQltb3ZlIHRoZSBnaXQgZGlyZWN0b3J5IG9mIHRoZSBzdWJtb2R1bGUgaW50byBpdHMgc3VwZXJwcm9qZWN0cworCW1vdmUgdGhlIGdpdCBkaXJlY3Rvcnkgb2YgdGhlIHN1Ym1vZHVsZSBpbnRvIGl0cyBzdXBlcnByb2plY3QncwogCWAkR0lUX0RJUi9tb2R1bGVzYCBwYXRoIGFuZCB0aGVuIGNvbm5lY3QgdGhlIGdpdCBkaXJlY3RvcnkgYW5kCiAJaXRzIHdvcmtpbmcgZGlyZWN0b3J5IGJ5IHNldHRpbmcgdGhlIGBjb3JlLndvcmt0cmVlYCBhbmQgYWRkaW5nCiAJYSAuZ2l0IGZpbGUgcG9pbnRpbmcgdG8gdGhlIGdpdCBkaXJlY3RvcnkgZW1iZWRkZWQgaW4gdGhlCkBAIC0yNTUsMTMgKzI3NywxNCBAQAogCVRoaXMgb3B0aW9uIGlzIG9ubHkgdmFsaWQgZm9yIHRoZSBkZWluaXQgY29tbWFuZC4gVW5yZWdpc3RlciBhbGwKIAlzdWJtb2R1bGVzIGluIHRoZSB3b3JraW5nIHRyZWUuCiAKLS1iOjoKLS0tYnJhbmNoOjoKKy1iIDxicmFuY2g+OjoKKy0tYnJhbmNoIDxicmFuY2g+OjoKIAlCcmFuY2ggb2YgcmVwb3NpdG9yeSB0byBhZGQgYXMgc3VibW9kdWxlLgogCVRoZSBuYW1lIG9mIHRoZSBicmFuY2ggaXMgcmVjb3JkZWQgYXMgYHN1Ym1vZHVsZS48bmFtZT4uYnJhbmNoYCBpbgogCWAuZ2l0bW9kdWxlc2AgZm9yIGB1cGRhdGUgLS1yZW1vdGVgLiAgQSBzcGVjaWFsIHZhbHVlIG9mIGAuYCBpcyB1c2VkIHRvCiAJaW5kaWNhdGUgdGhhdCB0aGUgbmFtZSBvZiB0aGUgYnJhbmNoIGluIHRoZSBzdWJtb2R1bGUgc2hvdWxkIGJlIHRoZQotCXNhbWUgbmFtZSBhcyB0aGUgY3VycmVudCBicmFuY2ggaW4gdGhlIGN1cnJlbnQgcmVwb3NpdG9yeS4KKwlzYW1lIG5hbWUgYXMgdGhlIGN1cnJlbnQgYnJhbmNoIGluIHRoZSBjdXJyZW50IHJlcG9zaXRvcnkuICBJZiB0aGUKKwlvcHRpb24gaXMgbm90IHNwZWNpZmllZCwgaXQgZGVmYXVsdHMgdG8gJ21hc3RlcicuCiAKIC1mOjoKIC0tZm9yY2U6OgpAQCAtNDA3LDYgKzQzMCwxMCBAQAogCUNsb25lIG5ldyBzdWJtb2R1bGVzIGluIHBhcmFsbGVsIHdpdGggYXMgbWFueSBqb2JzLgogCURlZmF1bHRzIHRvIHRoZSBgc3VibW9kdWxlLmZldGNoSm9ic2Agb3B0aW9uLgogCistLVtuby1dc2luZ2xlLWJyYW5jaDo6CisJVGhpcyBvcHRpb24gaXMgb25seSB2YWxpZCBmb3IgdGhlIHVwZGF0ZSBjb21tYW5kLgorCUNsb25lIG9ubHkgb25lIGJyYW5jaCBkdXJpbmcgdXBkYXRlOiBIRUFEIG9yIG9uZSBzcGVjaWZpZWQgYnkgLS1icmFuY2guCisKIDxwYXRoPi4uLjo6CiAJUGF0aHMgdG8gc3VibW9kdWxlKHMpLiBXaGVuIHNwZWNpZmllZCB0aGlzIHdpbGwgcmVzdHJpY3QgdGhlIGNvbW1hbmQKIAl0byBvbmx5IG9wZXJhdGUgb24gdGhlIHN1Ym1vZHVsZXMgZm91bmQgYXQgdGhlIHNwZWNpZmllZCBwYXRocy4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXN2bi50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC1zdm4udHh0CmluZGV4IGI5OTAyOTUuLjY2MjRhMTQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXN2bi50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtc3ZuLnR4dApAQCAtMTI2LDcgKzEyNiw3IEBACiAJY29tbWFuZC1saW5lIGFyZ3VtZW50LgogKwogVGhpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZXMgdGhlIHJldl9tYXAgaWYgbmVlZGVkIChzZWUKLSckR0lUX0RJUi9zdm4vXCpcKi8ucmV2X21hcC4qJyBpbiB0aGUgRklMRVMgc2VjdGlvbiBiZWxvdyBmb3IgZGV0YWlscykuCisnJEdJVF9ESVIvc3ZuL1wqKi8ucmV2X21hcC4qJyBpbiB0aGUgRklMRVMgc2VjdGlvbiBiZWxvdyBmb3IgZGV0YWlscykuCiAKIC0tbG9jYWx0aW1lOzsKIAlTdG9yZSBHaXQgY29tbWl0IHRpbWVzIGluIHRoZSBsb2NhbCB0aW1lIHpvbmUgaW5zdGVhZCBvZiBVVEMuICBUaGlzCkBAIC0yMzksNyArMjM5LDcgQEAKIGFuZCBoYXZlIG5vIHVuY29tbWl0dGVkIGNoYW5nZXMuCiArCiBUaGlzIGF1dG9tYXRpY2FsbHkgdXBkYXRlcyB0aGUgcmV2X21hcCBpZiBuZWVkZWQgKHNlZQotJyRHSVRfRElSL3N2bi9cKlwqLy5yZXZfbWFwLionIGluIHRoZSBGSUxFUyBzZWN0aW9uIGJlbG93IGZvciBkZXRhaWxzKS4KKyckR0lUX0RJUi9zdm4vXCoqLy5yZXZfbWFwLionIGluIHRoZSBGSUxFUyBzZWN0aW9uIGJlbG93IGZvciBkZXRhaWxzKS4KIAogLWw7OwogLS1sb2NhbDs7CkBAIC01MjQsNyArNTI0LDcgQEAKIAl3YXkgdG8gcmVwYWlyIHRoZSByZXBvIGlzIHRvIHVzZSAncmVzZXQnLgogKwogT25seSB0aGUgcmV2X21hcCBhbmQgcmVmcy9yZW1vdGVzL2dpdC1zdm4gYXJlIGNoYW5nZWQgKHNlZQotJyRHSVRfRElSL3N2bi9cKlwqLy5yZXZfbWFwLionIGluIHRoZSBGSUxFUyBzZWN0aW9uIGJlbG93IGZvciBkZXRhaWxzKS4KKyckR0lUX0RJUi9zdm4vXCoqLy5yZXZfbWFwLionIGluIHRoZSBGSUxFUyBzZWN0aW9uIGJlbG93IGZvciBkZXRhaWxzKS4KIEZvbGxvdyAncmVzZXQnIHdpdGggYSAnZmV0Y2gnIGFuZCB0aGVuICdnaXQgcmVzZXQnIG9yICdnaXQgcmViYXNlJyB0bwogbW92ZSBsb2NhbCBicmFuY2hlcyBvbnRvIHRoZSBuZXcgdHJlZS4KIApAQCAtNjc3LDcgKzY3Nyw4IEBACiAtczxzdHJhdGVneT46OgogLS1zdHJhdGVneT08c3RyYXRlZ3k+OjoKIC1wOjoKLS0tcHJlc2VydmUtbWVyZ2VzOjoKKy0tcmViYXNlLW1lcmdlczo6CistLXByZXNlcnZlLW1lcmdlcyAoREVQUkVDQVRFRCk6OgogCVRoZXNlIGFyZSBvbmx5IHVzZWQgd2l0aCB0aGUgJ2Rjb21taXQnIGFuZCAncmViYXNlJyBjb21tYW5kcy4KICsKIFBhc3NlZCBkaXJlY3RseSB0byAnZ2l0IHJlYmFzZScgd2hlbiB1c2luZyAnZGNvbW1pdCcgaWYgYQpAQCAtNzYwLDcgKzc2MSw3IEBACiArCiBUaGlzIG9wdGlvbiBjYW4gb25seSBiZSB1c2VkIGZvciBvbmUtc2hvdCBpbXBvcnRzIGFzICdnaXQgc3ZuJwogd2lsbCBub3QgYmUgYWJsZSB0byBmZXRjaCBhZ2FpbiB3aXRob3V0IG1ldGFkYXRhLiBBZGRpdGlvbmFsbHksCi1pZiB5b3UgbG9zZSB5b3VyICckR0lUX0RJUi9zdm4vXCpcKi8ucmV2X21hcC4qJyBmaWxlcywgJ2dpdCBzdm4nIHdpbGwgbm90CitpZiB5b3UgbG9zZSB5b3VyICckR0lUX0RJUi9zdm4vXCoqLy5yZXZfbWFwLionIGZpbGVzLCAnZ2l0IHN2bicgd2lsbCBub3QKIGJlIGFibGUgdG8gcmVidWlsZCB0aGVtLgogKwogVGhlICdnaXQgc3ZuIGxvZycgY29tbWFuZCB3aWxsIG5vdCB3b3JrIG9uIHJlcG9zaXRvcmllcyB1c2luZwpAQCAtNzY5LDExICs3NzAsMTEgQEAKICsKIFRoaXMgb3B0aW9uIGlzIE5PVCByZWNvbW1lbmRlZCBhcyBpdCBtYWtlcyBpdCBkaWZmaWN1bHQgdG8gdHJhY2sgZG93bgogb2xkIHJlZmVyZW5jZXMgdG8gU1ZOIHJldmlzaW9uIG51bWJlcnMgaW4gZXhpc3RpbmcgZG9jdW1lbnRhdGlvbiwgYnVnCi1yZXBvcnRzIGFuZCBhcmNoaXZlcy4gIElmIHlvdSBwbGFuIHRvIGV2ZW50dWFsbHkgbWlncmF0ZSBmcm9tIFNWTiB0byBHaXQKLWFuZCBhcmUgY2VydGFpbiBhYm91dCBkcm9wcGluZyBTVk4gaGlzdG9yeSwgY29uc2lkZXIKLWxpbmtnaXQ6Z2l0LWZpbHRlci1icmFuY2hbMV0gaW5zdGVhZC4gIGZpbHRlci1icmFuY2ggYWxzbyBhbGxvd3MKLXJlZm9ybWF0dGluZyBvZiBtZXRhZGF0YSBmb3IgZWFzZS1vZi1yZWFkaW5nIGFuZCByZXdyaXRpbmcgYXV0aG9yc2hpcAotaW5mbyBmb3Igbm9uLSJzdm4uYXV0aG9yc0ZpbGUiIHVzZXJzLgorcmVwb3J0cywgYW5kIGFyY2hpdmVzLiAgSWYgeW91IHBsYW4gdG8gZXZlbnR1YWxseSBtaWdyYXRlIGZyb20gU1ZOIHRvCitHaXQgYW5kIGFyZSBjZXJ0YWluIGFib3V0IGRyb3BwaW5nIFNWTiBoaXN0b3J5LCBjb25zaWRlcgoraHR0cHM6Ly9naXRodWIuY29tL25ld3Jlbi9naXQtZmlsdGVyLXJlcG9bZ2l0LWZpbHRlci1yZXBvXSBpbnN0ZWFkLgorZmlsdGVyLXJlcG8gYWxzbyBhbGxvd3MgcmVmb3JtYXR0aW5nIG9mIG1ldGFkYXRhIGZvciBlYXNlLW9mLXJlYWRpbmcKK2FuZCByZXdyaXRpbmcgYXV0aG9yc2hpcCBpbmZvIGZvciBub24tInN2bi5hdXRob3JzRmlsZSIgdXNlcnMuCiAKIHN2bi51c2VTdm1Qcm9wczo6CiBzdm4tcmVtb3RlLjxuYW1lPi51c2VTdm1Qcm9wczo6CkBAIC0xMTAwLDEwICsxMTAxLDEwIEBACiAJdGFncyA9IHRhZ3MvKi9wcm9qZWN0LWE6cmVmcy9yZW1vdGVzL3Byb2plY3QtYS90YWdzLyoKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1LZWVwIGluIG1pbmQgdGhhdCB0aGUgJ1wqJyAoYXN0ZXJpc2spIHdpbGRjYXJkIG9mIHRoZSBsb2NhbCByZWYKLShyaWdodCBvZiB0aGUgJzonKSAqbXVzdCogYmUgdGhlIGZhcnRoZXN0IHJpZ2h0IHBhdGggY29tcG9uZW50OworS2VlcCBpbiBtaW5kIHRoYXQgdGhlIGAqYCAoYXN0ZXJpc2spIHdpbGRjYXJkIG9mIHRoZSBsb2NhbCByZWYKKyhyaWdodCBvZiB0aGUgYDpgKSAqbXVzdCogYmUgdGhlIGZhcnRoZXN0IHJpZ2h0IHBhdGggY29tcG9uZW50OwogaG93ZXZlciB0aGUgcmVtb3RlIHdpbGRjYXJkIG1heSBiZSBhbnl3aGVyZSBhcyBsb25nIGFzIGl0J3MgYW4KLWluZGVwZW5kZW50IHBhdGggY29tcG9uZW50IChzdXJyb3VuZGVkIGJ5ICcvJyBvciBFT0wpLiAgIFRoaXMKK2luZGVwZW5kZW50IHBhdGggY29tcG9uZW50IChzdXJyb3VuZGVkIGJ5IGAvYCBvciBFT0wpLiAgIFRoaXMKIHR5cGUgb2YgY29uZmlndXJhdGlvbiBpcyBub3QgYXV0b21hdGljYWxseSBjcmVhdGVkIGJ5ICdpbml0JyBhbmQKIHNob3VsZCBiZSBtYW51YWxseSBlbnRlcmVkIHdpdGggYSB0ZXh0LWVkaXRvciBvciB1c2luZyAnZ2l0IGNvbmZpZycuCiAKQEAgLTExNTQsNyArMTE1NSw3IEBACiAKIEZJTEVTCiAtLS0tLQotJEdJVF9ESVIvc3ZuL1wqXCovLnJldl9tYXAuKjo6CiskR0lUX0RJUi9zdm4vXCoqLy5yZXZfbWFwLio6OgogCU1hcHBpbmcgYmV0d2VlbiBTdWJ2ZXJzaW9uIHJldmlzaW9uIG51bWJlcnMgYW5kIEdpdCBjb21taXQKIAluYW1lcy4gIEluIGEgcmVwb3NpdG9yeSB3aGVyZSB0aGUgbm9NZXRhZGF0YSBvcHRpb24gaXMgbm90IHNldCwKIAl0aGlzIGNhbiBiZSByZWJ1aWx0IGZyb20gdGhlIGdpdC1zdm4taWQ6IGxpbmVzIHRoYXQgYXJlIGF0IHRoZQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtc3dpdGNoLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXN3aXRjaC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTk3OTAwMwotLS0gL2Rldi9udWxsCisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LXN3aXRjaC50eHQKQEAgLTAsMCArMSwyNzMgQEAKK2dpdC1zd2l0Y2goMSkKKz09PT09PT09PT09PT0KKworTkFNRQorLS0tLQorZ2l0LXN3aXRjaCAtIFN3aXRjaCBicmFuY2hlcworCitTWU5PUFNJUworLS0tLS0tLS0KK1t2ZXJzZV0KKydnaXQgc3dpdGNoJyBbPG9wdGlvbnM+XSBbLS1uby1ndWVzc10gPGJyYW5jaD4KKydnaXQgc3dpdGNoJyBbPG9wdGlvbnM+XSAtLWRldGFjaCBbPHN0YXJ0LXBvaW50Pl0KKydnaXQgc3dpdGNoJyBbPG9wdGlvbnM+XSAoLWN8LUMpIDxuZXctYnJhbmNoPiBbPHN0YXJ0LXBvaW50Pl0KKydnaXQgc3dpdGNoJyBbPG9wdGlvbnM+XSAtLW9ycGhhbiA8bmV3LWJyYW5jaD4KKworREVTQ1JJUFRJT04KKy0tLS0tLS0tLS0tCitTd2l0Y2ggdG8gYSBzcGVjaWZpZWQgYnJhbmNoLiBUaGUgd29ya2luZyB0cmVlIGFuZCB0aGUgaW5kZXggYXJlCit1cGRhdGVkIHRvIG1hdGNoIHRoZSBicmFuY2guIEFsbCBuZXcgY29tbWl0cyB3aWxsIGJlIGFkZGVkIHRvIHRoZSB0aXAKK29mIHRoaXMgYnJhbmNoLgorCitPcHRpb25hbGx5IGEgbmV3IGJyYW5jaCBjb3VsZCBiZSBjcmVhdGVkIHdpdGggZWl0aGVyIGAtY2AsIGAtQ2AsCithdXRvbWF0aWNhbGx5IGZyb20gYSByZW1vdGUgYnJhbmNoIG9mIHNhbWUgbmFtZSAoc2VlIGAtLWd1ZXNzYCksIG9yCitkZXRhY2ggdGhlIHdvcmtpbmcgdHJlZSBmcm9tIGFueSBicmFuY2ggd2l0aCBgLS1kZXRhY2hgLCBhbG9uZyB3aXRoCitzd2l0Y2hpbmcuCisKK1N3aXRjaGluZyBicmFuY2hlcyBkb2VzIG5vdCByZXF1aXJlIGEgY2xlYW4gaW5kZXggYW5kIHdvcmtpbmcgdHJlZQorKGkuZS4gbm8gZGlmZmVyZW5jZXMgY29tcGFyZWQgdG8gYEhFQURgKS4gVGhlIG9wZXJhdGlvbiBpcyBhYm9ydGVkCitob3dldmVyIGlmIHRoZSBvcGVyYXRpb24gbGVhZHMgdG8gbG9zcyBvZiBsb2NhbCBjaGFuZ2VzLCB1bmxlc3MgdG9sZAorb3RoZXJ3aXNlIHdpdGggYC0tZGlzY2FyZC1jaGFuZ2VzYCBvciBgLS1tZXJnZWAuCisKK1RISVMgQ09NTUFORCBJUyBFWFBFUklNRU5UQUwuIFRIRSBCRUhBVklPUiBNQVkgQ0hBTkdFLgorCitPUFRJT05TCistLS0tLS0tCis8YnJhbmNoPjo6CisJQnJhbmNoIHRvIHN3aXRjaCB0by4KKworPG5ldy1icmFuY2g+OjoKKwlOYW1lIGZvciB0aGUgbmV3IGJyYW5jaC4KKworPHN0YXJ0LXBvaW50Pjo6CisJVGhlIHN0YXJ0aW5nIHBvaW50IGZvciB0aGUgbmV3IGJyYW5jaC4gU3BlY2lmeWluZyBhCisJYDxzdGFydC1wb2ludD5gIGFsbG93cyB5b3UgdG8gY3JlYXRlIGEgYnJhbmNoIGJhc2VkIG9uIHNvbWUKKwlvdGhlciBwb2ludCBpbiBoaXN0b3J5IHRoYW4gd2hlcmUgSEVBRCBjdXJyZW50bHkgcG9pbnRzLiAoT3IsCisJaW4gdGhlIGNhc2Ugb2YgYC0tZGV0YWNoYCwgYWxsb3dzIHlvdSB0byBpbnNwZWN0IGFuZCBkZXRhY2gKKwlmcm9tIHNvbWUgb3RoZXIgcG9pbnQuKQorKworWW91IGNhbiB1c2UgdGhlIGBAey1OfWAgc3ludGF4IHRvIHJlZmVyIHRvIHRoZSBOLXRoIGxhc3QKK2JyYW5jaC9jb21taXQgc3dpdGNoZWQgdG8gdXNpbmcgImdpdCBzd2l0Y2giIG9yICJnaXQgY2hlY2tvdXQiCitvcGVyYXRpb24uIFlvdSBtYXkgYWxzbyBzcGVjaWZ5IGAtYCB3aGljaCBpcyBzeW5vbnltb3VzIHRvIGBAey0xfWAuCitUaGlzIGlzIG9mdGVuIHVzZWQgdG8gc3dpdGNoIHF1aWNrbHkgYmV0d2VlbiB0d28gYnJhbmNoZXMsIG9yIHRvIHVuZG8KK2EgYnJhbmNoIHN3aXRjaCBieSBtaXN0YWtlLgorKworQXMgYSBzcGVjaWFsIGNhc2UsIHlvdSBtYXkgdXNlIGBBLi4uQmAgYXMgYSBzaG9ydGN1dCBmb3IgdGhlIG1lcmdlCitiYXNlIG9mIGBBYCBhbmQgYEJgIGlmIHRoZXJlIGlzIGV4YWN0bHkgb25lIG1lcmdlIGJhc2UuIFlvdSBjYW4gbGVhdmUKK291dCBhdCBtb3N0IG9uZSBvZiBgQWAgYW5kIGBCYCwgaW4gd2hpY2ggY2FzZSBpdCBkZWZhdWx0cyB0byBgSEVBRGAuCisKKy1jIDxuZXctYnJhbmNoPjo6CistLWNyZWF0ZSA8bmV3LWJyYW5jaD46OgorCUNyZWF0ZSBhIG5ldyBicmFuY2ggbmFtZWQgYDxuZXctYnJhbmNoPmAgc3RhcnRpbmcgYXQKKwlgPHN0YXJ0LXBvaW50PmAgYmVmb3JlIHN3aXRjaGluZyB0byB0aGUgYnJhbmNoLiBUaGlzIGlzIGEKKwljb252ZW5pZW50IHNob3J0Y3V0IGZvcjoKKysKKy0tLS0tLS0tLS0tLQorJCBnaXQgYnJhbmNoIDxuZXctYnJhbmNoPgorJCBnaXQgc3dpdGNoIDxuZXctYnJhbmNoPgorLS0tLS0tLS0tLS0tCisKKy1DIDxuZXctYnJhbmNoPjo6CistLWZvcmNlLWNyZWF0ZSA8bmV3LWJyYW5jaD46OgorCVNpbWlsYXIgdG8gYC0tY3JlYXRlYCBleGNlcHQgdGhhdCBpZiBgPG5ldy1icmFuY2g+YCBhbHJlYWR5CisJZXhpc3RzLCBpdCB3aWxsIGJlIHJlc2V0IHRvIGA8c3RhcnQtcG9pbnQ+YC4gVGhpcyBpcyBhCisJY29udmVuaWVudCBzaG9ydGN1dCBmb3I6CisrCistLS0tLS0tLS0tLS0KKyQgZ2l0IGJyYW5jaCAtZiA8bmV3LWJyYW5jaD4KKyQgZ2l0IHN3aXRjaCA8bmV3LWJyYW5jaD4KKy0tLS0tLS0tLS0tLQorCistZDo6CistLWRldGFjaDo6CisJU3dpdGNoIHRvIGEgY29tbWl0IGZvciBpbnNwZWN0aW9uIGFuZCBkaXNjYXJkYWJsZQorCWV4cGVyaW1lbnRzLiBTZWUgdGhlICJERVRBQ0hFRCBIRUFEIiBzZWN0aW9uIGluCisJbGlua2dpdDpnaXQtY2hlY2tvdXRbMV0gZm9yIGRldGFpbHMuCisKKy0tZ3Vlc3M6OgorLS1uby1ndWVzczo6CisJSWYgYDxicmFuY2g+YCBpcyBub3QgZm91bmQgYnV0IHRoZXJlIGRvZXMgZXhpc3QgYSB0cmFja2luZworCWJyYW5jaCBpbiBleGFjdGx5IG9uZSByZW1vdGUgKGNhbGwgaXQgYDxyZW1vdGU+YCkgd2l0aCBhCisJbWF0Y2hpbmcgbmFtZSwgdHJlYXQgYXMgZXF1aXZhbGVudCB0bworKworLS0tLS0tLS0tLS0tCiskIGdpdCBzd2l0Y2ggLWMgPGJyYW5jaD4gLS10cmFjayA8cmVtb3RlPi88YnJhbmNoPgorLS0tLS0tLS0tLS0tCisrCitJZiB0aGUgYnJhbmNoIGV4aXN0cyBpbiBtdWx0aXBsZSByZW1vdGVzIGFuZCBvbmUgb2YgdGhlbSBpcyBuYW1lZCBieQordGhlIGBjaGVja291dC5kZWZhdWx0UmVtb3RlYCBjb25maWd1cmF0aW9uIHZhcmlhYmxlLCB3ZSdsbCB1c2UgdGhhdAorb25lIGZvciB0aGUgcHVycG9zZXMgb2YgZGlzYW1iaWd1YXRpb24sIGV2ZW4gaWYgdGhlIGA8YnJhbmNoPmAgaXNuJ3QKK3VuaXF1ZSBhY3Jvc3MgYWxsIHJlbW90ZXMuIFNldCBpdCB0byBlLmcuIGBjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbmAKK3RvIGFsd2F5cyBjaGVja291dCByZW1vdGUgYnJhbmNoZXMgZnJvbSB0aGVyZSBpZiBgPGJyYW5jaD5gIGlzCithbWJpZ3VvdXMgYnV0IGV4aXN0cyBvbiB0aGUgJ29yaWdpbicgcmVtb3RlLiBTZWUgYWxzbworYGNoZWNrb3V0LmRlZmF1bHRSZW1vdGVgIGluIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXS4KKysKK2AtLWd1ZXNzYCBpcyB0aGUgZGVmYXVsdCBiZWhhdmlvci4gVXNlIGAtLW5vLWd1ZXNzYCB0byBkaXNhYmxlIGl0LgorCistZjo6CistLWZvcmNlOjoKKwlBbiBhbGlhcyBmb3IgYC0tZGlzY2FyZC1jaGFuZ2VzYC4KKworLS1kaXNjYXJkLWNoYW5nZXM6OgorCVByb2NlZWQgZXZlbiBpZiB0aGUgaW5kZXggb3IgdGhlIHdvcmtpbmcgdHJlZSBkaWZmZXJzIGZyb20KKwlgSEVBRGAuIEJvdGggdGhlIGluZGV4IGFuZCB3b3JraW5nIHRyZWUgYXJlIHJlc3RvcmVkIHRvIG1hdGNoCisJdGhlIHN3aXRjaGluZyB0YXJnZXQuIElmIGAtLXJlY3Vyc2Utc3VibW9kdWxlc2AgaXMgc3BlY2lmaWVkLAorCXN1Ym1vZHVsZSBjb250ZW50IGlzIGFsc28gcmVzdG9yZWQgdG8gbWF0Y2ggdGhlIHN3aXRjaGluZworCXRhcmdldC4gVGhpcyBpcyB1c2VkIHRvIHRocm93IGF3YXkgbG9jYWwgY2hhbmdlcy4KKworLW06OgorLS1tZXJnZTo6CisJSWYgeW91IGhhdmUgbG9jYWwgbW9kaWZpY2F0aW9ucyB0byBvbmUgb3IgbW9yZSBmaWxlcyB0aGF0IGFyZQorCWRpZmZlcmVudCBiZXR3ZWVuIHRoZSBjdXJyZW50IGJyYW5jaCBhbmQgdGhlIGJyYW5jaCB0byB3aGljaAorCXlvdSBhcmUgc3dpdGNoaW5nLCB0aGUgY29tbWFuZCByZWZ1c2VzIHRvIHN3aXRjaCBicmFuY2hlcyBpbgorCW9yZGVyIHRvIHByZXNlcnZlIHlvdXIgbW9kaWZpY2F0aW9ucyBpbiBjb250ZXh0LiAgSG93ZXZlciwKKwl3aXRoIHRoaXMgb3B0aW9uLCBhIHRocmVlLXdheSBtZXJnZSBiZXR3ZWVuIHRoZSBjdXJyZW50CisJYnJhbmNoLCB5b3VyIHdvcmtpbmcgdHJlZSBjb250ZW50cywgYW5kIHRoZSBuZXcgYnJhbmNoIGlzCisJZG9uZSwgYW5kIHlvdSB3aWxsIGJlIG9uIHRoZSBuZXcgYnJhbmNoLgorKworV2hlbiBhIG1lcmdlIGNvbmZsaWN0IGhhcHBlbnMsIHRoZSBpbmRleCBlbnRyaWVzIGZvciBjb25mbGljdGluZworcGF0aHMgYXJlIGxlZnQgdW5tZXJnZWQsIGFuZCB5b3UgbmVlZCB0byByZXNvbHZlIHRoZSBjb25mbGljdHMKK2FuZCBtYXJrIHRoZSByZXNvbHZlZCBwYXRocyB3aXRoIGBnaXQgYWRkYCAob3IgYGdpdCBybWAgaWYgdGhlIG1lcmdlCitzaG91bGQgcmVzdWx0IGluIGRlbGV0aW9uIG9mIHRoZSBwYXRoKS4KKworLS1jb25mbGljdD08c3R5bGU+OjoKKwlUaGUgc2FtZSBhcyBgLS1tZXJnZWAgb3B0aW9uIGFib3ZlLCBidXQgY2hhbmdlcyB0aGUgd2F5IHRoZQorCWNvbmZsaWN0aW5nIGh1bmtzIGFyZSBwcmVzZW50ZWQsIG92ZXJyaWRpbmcgdGhlCisJYG1lcmdlLmNvbmZsaWN0U3R5bGVgIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUuICBQb3NzaWJsZSB2YWx1ZXMgYXJlCisJIm1lcmdlIiAoZGVmYXVsdCkgYW5kICJkaWZmMyIgKGluIGFkZGl0aW9uIHRvIHdoYXQgaXMgc2hvd24gYnkKKwkibWVyZ2UiIHN0eWxlLCBzaG93cyB0aGUgb3JpZ2luYWwgY29udGVudHMpLgorCistcTo6CistLXF1aWV0OjoKKwlRdWlldCwgc3VwcHJlc3MgZmVlZGJhY2sgbWVzc2FnZXMuCisKKy0tcHJvZ3Jlc3M6OgorLS1uby1wcm9ncmVzczo6CisJUHJvZ3Jlc3Mgc3RhdHVzIGlzIHJlcG9ydGVkIG9uIHRoZSBzdGFuZGFyZCBlcnJvciBzdHJlYW0KKwlieSBkZWZhdWx0IHdoZW4gaXQgaXMgYXR0YWNoZWQgdG8gYSB0ZXJtaW5hbCwgdW5sZXNzIGAtLXF1aWV0YAorCWlzIHNwZWNpZmllZC4gVGhpcyBmbGFnIGVuYWJsZXMgcHJvZ3Jlc3MgcmVwb3J0aW5nIGV2ZW4gaWYgbm90CisJYXR0YWNoZWQgdG8gYSB0ZXJtaW5hbCwgcmVnYXJkbGVzcyBvZiBgLS1xdWlldGAuCisKKy10OjoKKy0tdHJhY2s6OgorCVdoZW4gY3JlYXRpbmcgYSBuZXcgYnJhbmNoLCBzZXQgdXAgInVwc3RyZWFtIiBjb25maWd1cmF0aW9uLgorCWAtY2AgaXMgaW1wbGllZC4gU2VlIGAtLXRyYWNrYCBpbiBsaW5rZ2l0OmdpdC1icmFuY2hbMV0gZm9yCisJZGV0YWlscy4KKysKK0lmIG5vIGAtY2Agb3B0aW9uIGlzIGdpdmVuLCB0aGUgbmFtZSBvZiB0aGUgbmV3IGJyYW5jaCB3aWxsIGJlIGRlcml2ZWQKK2Zyb20gdGhlIHJlbW90ZS10cmFja2luZyBicmFuY2gsIGJ5IGxvb2tpbmcgYXQgdGhlIGxvY2FsIHBhcnQgb2YgdGhlCityZWZzcGVjIGNvbmZpZ3VyZWQgZm9yIHRoZSBjb3JyZXNwb25kaW5nIHJlbW90ZSwgYW5kIHRoZW4gc3RyaXBwaW5nCit0aGUgaW5pdGlhbCBwYXJ0IHVwIHRvIHRoZSAiKiIuICBUaGlzIHdvdWxkIHRlbGwgdXMgdG8gdXNlIGBoYWNrYCBhcwordGhlIGxvY2FsIGJyYW5jaCB3aGVuIGJyYW5jaGluZyBvZmYgb2YgYG9yaWdpbi9oYWNrYCAob3IKK2ByZW1vdGVzL29yaWdpbi9oYWNrYCwgb3IgZXZlbiBgcmVmcy9yZW1vdGVzL29yaWdpbi9oYWNrYCkuICBJZiB0aGUKK2dpdmVuIG5hbWUgaGFzIG5vIHNsYXNoLCBvciB0aGUgYWJvdmUgZ3Vlc3NpbmcgcmVzdWx0cyBpbiBhbiBlbXB0eQorbmFtZSwgdGhlIGd1ZXNzaW5nIGlzIGFib3J0ZWQuICBZb3UgY2FuIGV4cGxpY2l0bHkgZ2l2ZSBhIG5hbWUgd2l0aAorYC1jYCBpbiBzdWNoIGEgY2FzZS4KKworLS1uby10cmFjazo6CisJRG8gbm90IHNldCB1cCAidXBzdHJlYW0iIGNvbmZpZ3VyYXRpb24sIGV2ZW4gaWYgdGhlCisJYGJyYW5jaC5hdXRvU2V0dXBNZXJnZWAgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBpcyB0cnVlLgorCistLW9ycGhhbiA8bmV3LWJyYW5jaD46OgorCUNyZWF0ZSBhIG5ldyAnb3JwaGFuJyBicmFuY2gsIG5hbWVkIGA8bmV3LWJyYW5jaD5gLiBBbGwKKwl0cmFja2VkIGZpbGVzIGFyZSByZW1vdmVkLgorCistLWlnbm9yZS1vdGhlci13b3JrdHJlZXM6OgorCWBnaXQgc3dpdGNoYCByZWZ1c2VzIHdoZW4gdGhlIHdhbnRlZCByZWYgaXMgYWxyZWFkeQorCWNoZWNrZWQgb3V0IGJ5IGFub3RoZXIgd29ya3RyZWUuIFRoaXMgb3B0aW9uIG1ha2VzIGl0IGNoZWNrCisJdGhlIHJlZiBvdXQgYW55d2F5LiBJbiBvdGhlciB3b3JkcywgdGhlIHJlZiBjYW4gYmUgaGVsZCBieQorCW1vcmUgdGhhbiBvbmUgd29ya3RyZWUuCisKKy0tcmVjdXJzZS1zdWJtb2R1bGVzOjoKKy0tbm8tcmVjdXJzZS1zdWJtb2R1bGVzOjoKKwlVc2luZyBgLS1yZWN1cnNlLXN1Ym1vZHVsZXNgIHdpbGwgdXBkYXRlIHRoZSBjb250ZW50IG9mIGFsbAorCWluaXRpYWxpemVkIHN1Ym1vZHVsZXMgYWNjb3JkaW5nIHRvIHRoZSBjb21taXQgcmVjb3JkZWQgaW4gdGhlCisJc3VwZXJwcm9qZWN0LiBJZiBub3RoaW5nIChvciBgLS1uby1yZWN1cnNlLXN1Ym1vZHVsZXNgKSBpcworCXVzZWQsIHRoZSB3b3JrIHRyZWVzIG9mIHN1Ym1vZHVsZXMgd2lsbCBub3QgYmUgdXBkYXRlZC4gSnVzdAorCWxpa2UgbGlua2dpdDpnaXQtc3VibW9kdWxlWzFdLCB0aGlzIHdpbGwgZGV0YWNoIGBIRUFEYCBvZiB0aGUKKwlzdWJtb2R1bGVzLgorCitFWEFNUExFUworLS0tLS0tLS0KKworVGhlIGZvbGxvd2luZyBjb21tYW5kIHN3aXRjaGVzIHRvIHRoZSAibWFzdGVyIiBicmFuY2g6CisKKy0tLS0tLS0tLS0tLQorJCBnaXQgc3dpdGNoIG1hc3RlcgorLS0tLS0tLS0tLS0tCisKK0FmdGVyIHdvcmtpbmcgaW4gdGhlIHdyb25nIGJyYW5jaCwgc3dpdGNoaW5nIHRvIHRoZSBjb3JyZWN0IGJyYW5jaAord291bGQgYmUgZG9uZSB1c2luZzoKKworLS0tLS0tLS0tLS0tCiskIGdpdCBzd2l0Y2ggbXl0b3BpYworLS0tLS0tLS0tLS0tCisKK0hvd2V2ZXIsIHlvdXIgIndyb25nIiBicmFuY2ggYW5kIGNvcnJlY3QgIm15dG9waWMiIGJyYW5jaCBtYXkgZGlmZmVyCitpbiBmaWxlcyB0aGF0IHlvdSBoYXZlIG1vZGlmaWVkIGxvY2FsbHksIGluIHdoaWNoIGNhc2UgdGhlIGFib3ZlCitzd2l0Y2ggd291bGQgZmFpbCBsaWtlIHRoaXM6CisKKy0tLS0tLS0tLS0tLQorJCBnaXQgc3dpdGNoIG15dG9waWMKK2Vycm9yOiBZb3UgaGF2ZSBsb2NhbCBjaGFuZ2VzIHRvICdmcm90eic7IG5vdCBzd2l0Y2hpbmcgYnJhbmNoZXMuCistLS0tLS0tLS0tLS0KKworWW91IGNhbiBnaXZlIHRoZSBgLW1gIGZsYWcgdG8gdGhlIGNvbW1hbmQsIHdoaWNoIHdvdWxkIHRyeSBhIHRocmVlLXdheQorbWVyZ2U6CisKKy0tLS0tLS0tLS0tLQorJCBnaXQgc3dpdGNoIC1tIG15dG9waWMKK0F1dG8tbWVyZ2luZyBmcm90egorLS0tLS0tLS0tLS0tCisKK0FmdGVyIHRoaXMgdGhyZWUtd2F5IG1lcmdlLCB0aGUgbG9jYWwgbW9kaWZpY2F0aW9ucyBhcmUgX25vdF8KK3JlZ2lzdGVyZWQgaW4geW91ciBpbmRleCBmaWxlLCBzbyBgZ2l0IGRpZmZgIHdvdWxkIHNob3cgeW91IHdoYXQKK2NoYW5nZXMgeW91IG1hZGUgc2luY2UgdGhlIHRpcCBvZiB0aGUgbmV3IGJyYW5jaC4KKworVG8gc3dpdGNoIGJhY2sgdG8gdGhlIHByZXZpb3VzIGJyYW5jaCBiZWZvcmUgd2Ugc3dpdGNoZWQgdG8gbXl0b3BpYworKGkuZS4gIm1hc3RlciIgYnJhbmNoKToKKworLS0tLS0tLS0tLS0tCiskIGdpdCBzd2l0Y2ggLQorLS0tLS0tLS0tLS0tCisKK1lvdSBjYW4gZ3JvdyBhIG5ldyBicmFuY2ggZnJvbSBhbnkgY29tbWl0LiBGb3IgZXhhbXBsZSwgc3dpdGNoIHRvCisiSEVBRH4zIiBhbmQgY3JlYXRlIGJyYW5jaCAiZml4dXAiOgorCistLS0tLS0tLS0tLS0KKyQgZ2l0IHN3aXRjaCAtYyBmaXh1cCBIRUFEfjMKK1N3aXRjaGVkIHRvIGEgbmV3IGJyYW5jaCAnZml4dXAnCistLS0tLS0tLS0tLS0KKworSWYgeW91IHdhbnQgdG8gc3RhcnQgYSBuZXcgYnJhbmNoIGZyb20gYSByZW1vdGUgYnJhbmNoIG9mIHRoZSBzYW1lCituYW1lOgorCistLS0tLS0tLS0tLS0KKyQgZ2l0IHN3aXRjaCBuZXctdG9waWMKK0JyYW5jaCAnbmV3LXRvcGljJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIGJyYW5jaCAnbmV3LXRvcGljJyBmcm9tICdvcmlnaW4nCitTd2l0Y2hlZCB0byBhIG5ldyBicmFuY2ggJ25ldy10b3BpYycKKy0tLS0tLS0tLS0tLQorCitUbyBjaGVjayBvdXQgY29tbWl0IGBIRUFEfjNgIGZvciB0ZW1wb3JhcnkgaW5zcGVjdGlvbiBvciBleHBlcmltZW50Cit3aXRob3V0IGNyZWF0aW5nIGEgbmV3IGJyYW5jaDoKKworLS0tLS0tLS0tLS0tCiskIGdpdCBzd2l0Y2ggLS1kZXRhY2ggSEVBRH4zCitIRUFEIGlzIG5vdyBhdCA5ZmM5NTU1MzEyIE1lcmdlIGJyYW5jaCAnY2Mvc2hhcmVkLWluZGV4LXBlcm1iaXRzJworLS0tLS0tLS0tLS0tCisKK0lmIGl0IHR1cm5zIG91dCB3aGF0ZXZlciB5b3UgaGF2ZSBkb25lIGlzIHdvcnRoIGtlZXBpbmcsIHlvdSBjYW4KK2Fsd2F5cyBjcmVhdGUgYSBuZXcgbmFtZSBmb3IgaXQgKHdpdGhvdXQgc3dpdGNoaW5nIGF3YXkpOgorCistLS0tLS0tLS0tLS0KKyQgZ2l0IHN3aXRjaCAtYyBnb29kLXN1cnByaXNlcworLS0tLS0tLS0tLS0tCisKK1NFRSBBTFNPCistLS0tLS0tLQorbGlua2dpdDpnaXQtY2hlY2tvdXRbMV0sCitsaW5rZ2l0OmdpdC1icmFuY2hbMV0KKworR0lUCistLS0KK1BhcnQgb2YgdGhlIGxpbmtnaXQ6Z2l0WzFdIHN1aXRlCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdC10YWcudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtdGFnLnR4dAppbmRleCBmMmQ2NDRlLi5mNmQ5NzkxIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC10YWcudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0LXRhZy50eHQKQEAgLTY0LDYgKzY0LDEzIEBACiAtczo6CiAtLXNpZ246OgogCU1ha2UgYSBHUEctc2lnbmVkIHRhZywgdXNpbmcgdGhlIGRlZmF1bHQgZS1tYWlsIGFkZHJlc3MncyBrZXkuCisJVGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGFnIEdQRy1zaWduaW5nIGlzIGNvbnRyb2xsZWQgYnkgYHRhZy5ncGdTaWduYAorCWNvbmZpZ3VyYXRpb24gdmFyaWFibGUgaWYgaXQgZXhpc3RzLCBvciBkaXNhYmxlZCBvdGhlcndpc2UuCisJU2VlIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXS4KKworLS1uby1zaWduOjoKKwlPdmVycmlkZSBgdGFnLmdwZ1NpZ25gIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgdGhhdCBpcworCXNldCB0byBmb3JjZSBlYWNoIGFuZCBldmVyeSB0YWcgdG8gYmUgc2lnbmVkLgogCiAtdSA8a2V5aWQ+OjoKIC0tbG9jYWwtdXNlcj08a2V5aWQ+OjoKQEAgLTIzNywxNiArMjQ0LDE2IEBACiB0aGUgb2xkIHRhZy4gSW4gdGhhdCBjYXNlIHlvdSBjYW4gZG8gb25lIG9mIHR3byB0aGluZ3M6CiAKIC4gVGhlIHNhbmUgdGhpbmcuCi1KdXN0IGFkbWl0IHlvdSBzY3Jld2VkIHVwLCBhbmQgdXNlIGEgZGlmZmVyZW50IG5hbWUuIE90aGVycyBoYXZlCi1hbHJlYWR5IHNlZW4gb25lIHRhZy1uYW1lLCBhbmQgaWYgeW91IGtlZXAgdGhlIHNhbWUgbmFtZSwgeW91Ci1tYXkgYmUgaW4gdGhlIHNpdHVhdGlvbiB0aGF0IHR3byBwZW9wbGUgYm90aCBoYXZlICJ2ZXJzaW9uIFgiLAotYnV0IHRoZXkgYWN0dWFsbHkgaGF2ZSAnZGlmZmVyZW50JyAiWCIncy4gIFNvIGp1c3QgY2FsbCBpdCAiWC4xIgotYW5kIGJlIGRvbmUgd2l0aCBpdC4KKyAgSnVzdCBhZG1pdCB5b3Ugc2NyZXdlZCB1cCwgYW5kIHVzZSBhIGRpZmZlcmVudCBuYW1lLiBPdGhlcnMgaGF2ZQorICBhbHJlYWR5IHNlZW4gb25lIHRhZy1uYW1lLCBhbmQgaWYgeW91IGtlZXAgdGhlIHNhbWUgbmFtZSwgeW91CisgIG1heSBiZSBpbiB0aGUgc2l0dWF0aW9uIHRoYXQgdHdvIHBlb3BsZSBib3RoIGhhdmUgInZlcnNpb24gWCIsCisgIGJ1dCB0aGV5IGFjdHVhbGx5IGhhdmUgJ2RpZmZlcmVudCcgIlgiJ3MuICBTbyBqdXN0IGNhbGwgaXQgIlguMSIKKyAgYW5kIGJlIGRvbmUgd2l0aCBpdC4KIAogLiBUaGUgaW5zYW5lIHRoaW5nLgotWW91IHJlYWxseSB3YW50IHRvIGNhbGwgdGhlIG5ldyB2ZXJzaW9uICJYIiB0b28sICdldmVuIHRob3VnaCcKLW90aGVycyBoYXZlIGFscmVhZHkgc2VlbiB0aGUgb2xkIG9uZS4gU28ganVzdCB1c2UgJ2dpdCB0YWcgLWYnCi1hZ2FpbiwgYXMgaWYgeW91IGhhZG4ndCBhbHJlYWR5IHB1Ymxpc2hlZCB0aGUgb2xkIG9uZS4KKyAgWW91IHJlYWxseSB3YW50IHRvIGNhbGwgdGhlIG5ldyB2ZXJzaW9uICJYIiB0b28sICdldmVuIHRob3VnaCcKKyAgb3RoZXJzIGhhdmUgYWxyZWFkeSBzZWVuIHRoZSBvbGQgb25lLiBTbyBqdXN0IHVzZSAnZ2l0IHRhZyAtZicKKyAgYWdhaW4sIGFzIGlmIHlvdSBoYWRuJ3QgYWxyZWFkeSBwdWJsaXNoZWQgdGhlIG9sZCBvbmUuCiAKIEhvd2V2ZXIsIEdpdCBkb2VzICpub3QqIChhbmQgaXQgc2hvdWxkIG5vdCkgY2hhbmdlIHRhZ3MgYmVoaW5kCiB1c2VycyBiYWNrLiBTbyBpZiBzb21lYm9keSBhbHJlYWR5IGdvdCB0aGUgb2xkIHRhZywgZG9pbmcgYQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtdXBkYXRlLWluZGV4LnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXVwZGF0ZS1pbmRleC50eHQKaW5kZXggMWM0ZDE0Ni4uMTQ4OWNiMCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXQtdXBkYXRlLWluZGV4LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC11cGRhdGUtaW5kZXgudHh0CkBAIC0xNiw2ICsxNiw3IEBACiAJICAgICBbLS1jaG1vZD0oK3wtKXhdCiAJICAgICBbLS1bbm8tXWFzc3VtZS11bmNoYW5nZWRdCiAJICAgICBbLS1bbm8tXXNraXAtd29ya3RyZWVdCisJICAgICBbLS1bbm8tXWlnbm9yZS1za2lwLXdvcmt0cmVlLWVudHJpZXNdCiAJICAgICBbLS1bbm8tXWZzbW9uaXRvci12YWxpZF0KIAkgICAgIFstLWlnbm9yZS1zdWJtb2R1bGVzXQogCSAgICAgWy0tW25vLV1zcGxpdC1pbmRleF0KQEAgLTExMyw2ICsxMTQsMTEgQEAKIAlzZXQgYW5kIHVuc2V0IHRoZSAic2tpcC13b3JrdHJlZSIgYml0IGZvciB0aGUgcGF0aHMuIFNlZQogCXNlY3Rpb24gIlNraXAtd29ya3RyZWUgYml0IiBiZWxvdyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KIAorCistLVtuby1daWdub3JlLXNraXAtd29ya3RyZWUtZW50cmllczo6CisJRG8gbm90IHJlbW92ZSBza2lwLXdvcmt0cmVlIChBS0EgImluZGV4LW9ubHkiKSBlbnRyaWVzIGV2ZW4gd2hlbgorCXRoZSBgLS1yZW1vdmVgIG9wdGlvbiB3YXMgc3BlY2lmaWVkLgorCiAtLVtuby1dZnNtb25pdG9yLXZhbGlkOjoKIAlXaGVuIG9uZSBvZiB0aGVzZSBmbGFncyBpcyBzcGVjaWZpZWQsIHRoZSBvYmplY3QgbmFtZSByZWNvcmRlZAogCWZvciB0aGUgcGF0aHMgYXJlIG5vdCB1cGRhdGVkLiBJbnN0ZWFkLCB0aGVzZSBvcHRpb25zCkBAIC00MjYsNyArNDMyLDcgQEAKIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXSkuCiAKIFRvIGF2b2lkIGRlbGV0aW5nIGEgc2hhcmVkIGluZGV4IGZpbGUgdGhhdCBpcyBzdGlsbCB1c2VkLCBpdHMKLW1vZGlmaWNhdGlvbiB0aW1lIGlzIHVwZGF0ZWQgdG8gdGhlIGN1cnJlbnQgdGltZSBldmVyeXRpbWUgYSBuZXcgc3BsaXQKK21vZGlmaWNhdGlvbiB0aW1lIGlzIHVwZGF0ZWQgdG8gdGhlIGN1cnJlbnQgdGltZSBldmVyeSB0aW1lIGEgbmV3IHNwbGl0CiBpbmRleCBiYXNlZCBvbiB0aGUgc2hhcmVkIGluZGV4IGZpbGUgaXMgZWl0aGVyIGNyZWF0ZWQgb3IgcmVhZCBmcm9tLgogCiBVTlRSQUNLRUQgQ0FDSEUKQEAgLTU0Myw2ICs1NDksMjIgQEAKIGBjb3JlLnVudHJhY2tlZENhY2hlYCBjb25maWd1cmF0aW9uIHZhcmlhYmxlIChzZWUKIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXSkuCiAKK05PVEVTCistLS0tLQorCitVc2VycyBvZnRlbiB0cnkgdG8gdXNlIHRoZSBhc3N1bWUtdW5jaGFuZ2VkIGFuZCBza2lwLXdvcmt0cmVlIGJpdHMKK3RvIHRlbGwgR2l0IHRvIGlnbm9yZSBjaGFuZ2VzIHRvIGZpbGVzIHRoYXQgYXJlIHRyYWNrZWQuICBUaGlzIGRvZXMgbm90Cit3b3JrIGFzIGV4cGVjdGVkLCBzaW5jZSBHaXQgbWF5IHN0aWxsIGNoZWNrIHdvcmtpbmcgdHJlZSBmaWxlcyBhZ2FpbnN0Cit0aGUgaW5kZXggd2hlbiBwZXJmb3JtaW5nIGNlcnRhaW4gb3BlcmF0aW9ucy4gIEluIGdlbmVyYWwsIEdpdCBkb2VzIG5vdAorcHJvdmlkZSBhIHdheSB0byBpZ25vcmUgY2hhbmdlcyB0byB0cmFja2VkIGZpbGVzLCBzbyBhbHRlcm5hdGUgc29sdXRpb25zCithcmUgcmVjb21tZW5kZWQuCisKK0ZvciBleGFtcGxlLCBpZiB0aGUgZmlsZSB5b3Ugd2FudCB0byBjaGFuZ2UgaXMgc29tZSBzb3J0IG9mIGNvbmZpZyBmaWxlLAordGhlIHJlcG9zaXRvcnkgY2FuIGluY2x1ZGUgYSBzYW1wbGUgY29uZmlnIGZpbGUgdGhhdCBjYW4gdGhlbiBiZSBjb3BpZWQKK2ludG8gdGhlIGlnbm9yZWQgbmFtZSBhbmQgbW9kaWZpZWQuICBUaGUgcmVwb3NpdG9yeSBjYW4gZXZlbiBpbmNsdWRlIGEKK3NjcmlwdCB0byB0cmVhdCB0aGUgc2FtcGxlIGZpbGUgYXMgYSB0ZW1wbGF0ZSwgbW9kaWZ5aW5nIGFuZCBjb3B5aW5nIGl0CithdXRvbWF0aWNhbGx5LgorCiBTRUUgQUxTTwogLS0tLS0tLS0KIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXSwKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXVwZGF0ZS1zZXJ2ZXItaW5mby50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdC11cGRhdGUtc2VydmVyLWluZm8udHh0CmluZGV4IGJkMGUzNjQuLjk2OWJiMmUgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXVwZGF0ZS1zZXJ2ZXItaW5mby50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtdXBkYXRlLXNlcnZlci1pbmZvLnR4dApAQCAtOSw3ICs5LDcgQEAKIFNZTk9QU0lTCiAtLS0tLS0tLQogW3ZlcnNlXQotJ2dpdCB1cGRhdGUtc2VydmVyLWluZm8nIFstLWZvcmNlXQorJ2dpdCB1cGRhdGUtc2VydmVyLWluZm8nCiAKIERFU0NSSVBUSU9OCiAtLS0tLS0tLS0tLQpAQCAtMTksMTUgKzE5LDYgQEAKIHdoYXQgcmVmZXJlbmNlcyBhbmQgcGFja3MgdGhlIHNlcnZlciBoYXMuICBUaGlzIGNvbW1hbmQKIGdlbmVyYXRlcyBzdWNoIGF1eGlsaWFyeSBmaWxlcy4KIAotCi1PUFRJT05TCi0tLS0tLS0tCi0KLS1mOjoKLS0tZm9yY2U6OgotCVVwZGF0ZSB0aGUgaW5mbyBmaWxlcyBmcm9tIHNjcmF0Y2guCi0KLQogT1VUUFVUCiAtLS0tLS0KIApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXQtdXBsb2FkLXBhY2sudHh0IGIvRG9jdW1lbnRhdGlvbi9naXQtdXBsb2FkLXBhY2sudHh0CmluZGV4IDk5OGY1MmQuLjk4MjJjMWUgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0LXVwbG9hZC1wYWNrLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdC11cGxvYWQtcGFjay50eHQKQEAgLTIyLDcgKzIyLDYgQEAKIHByb2dyYW0gcGFpciBpcyBtZWFudCB0byBiZSB1c2VkIHRvIHB1bGwgdXBkYXRlcyBmcm9tIGEgcmVtb3RlCiByZXBvc2l0b3J5LiAgRm9yIHB1c2ggb3BlcmF0aW9ucywgc2VlICdnaXQgc2VuZC1wYWNrJy4KIAotCiBPUFRJT05TCiAtLS0tLS0tCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXdlYi0tYnJvd3NlLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXdlYi0tYnJvd3NlLnR4dAppbmRleCBmZDk1MmE1Li44ZDE2MmI1IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC13ZWItLWJyb3dzZS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtd2ViLS1icm93c2UudHh0CkBAIC05Miw4ICs5Miw4IEBACiBtYW4gcGFnZSBvbiBhbiBhbHJlYWR5IG9wZW5lZCBrb25xdWVyb3IgaW4gYSBuZXcgdGFiIGlmIHBvc3NpYmxlLgogCiBGb3IgY29uc2lzdGVuY3ksIHdlIGFsc28gdHJ5IHN1Y2ggYSB0cmljayBpZiAnYnJvd3Nlci5rb25xdWVyb3IucGF0aCcgaXMKLXNldCB0byBzb21ldGhpbmcgbGlrZSAnQV9QQVRIX1RPL2tvbnF1ZXJvcicuIFRoYXQgbWVhbnMgd2Ugd2lsbCB0cnkgdG8KLWxhdW5jaCAnQV9QQVRIX1RPL2tmbWNsaWVudCcgaW5zdGVhZC4KK3NldCB0byBzb21ldGhpbmcgbGlrZSBgQV9QQVRIX1RPL2tvbnF1ZXJvcmAuIFRoYXQgbWVhbnMgd2Ugd2lsbCB0cnkgdG8KK2xhdW5jaCBgQV9QQVRIX1RPL2tmbWNsaWVudGAgaW5zdGVhZC4KIAogSWYgeW91IHJlYWxseSB3YW50IHRvIHVzZSAna29ucXVlcm9yJywgdGhlbiB5b3UgY2FuIHVzZSBzb21ldGhpbmcgbGlrZQogdGhlIGZvbGxvd2luZzoKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LXdvcmt0cmVlLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LXdvcmt0cmVlLnR4dAppbmRleCBjYjg2MzE4Li44NWQ5MmM5IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC13b3JrdHJlZS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQtd29ya3RyZWUudHh0CkBAIC0yMTMsNyArMjEzLDcgQEAKIAogSW4gZ2VuZXJhbCwgYWxsIHBzZXVkbyByZWZzIGFyZSBwZXIgd29ya2luZyB0cmVlIGFuZCBhbGwgcmVmcyBzdGFydGluZwogd2l0aCAicmVmcy8iIGFyZSBzaGFyZWQuIFBzZXVkbyByZWZzIGFyZSBvbmVzIGxpa2UgSEVBRCB3aGljaCBhcmUKLWRpcmVjdGx5IHVuZGVyIEdJVF9ESVIgaW5zdGVhZCBvZiBpbnNpZGUgR0lUX0RJUi9yZWZzLiBUaGVyZSBhcmUgb25lCitkaXJlY3RseSB1bmRlciBHSVRfRElSIGluc3RlYWQgb2YgaW5zaWRlIEdJVF9ESVIvcmVmcy4gVGhlcmUgaXMgb25lCiBleGNlcHRpb24gdG8gdGhpczogcmVmcyBpbnNpZGUgcmVmcy9iaXNlY3QgYW5kIHJlZnMvd29ya3RyZWUgaXMgbm90CiBzaGFyZWQuCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0LnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0LnR4dAppbmRleCAwMDE1NmQ2Li5iMDY3MmJkIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXQudHh0CkBAIC0zMyw3ICszMyw4IEBACiBtYW51YWwgcGFnZSBnaXZlcyB5b3UgYW4gb3ZlcnZpZXcgb2YgdGhlIGNvbW1hbmQtbGluZSBjb21tYW5kIHN5bnRheC4KIAogQSBmb3JtYXR0ZWQgYW5kIGh5cGVybGlua2VkIGNvcHkgb2YgdGhlIGxhdGVzdCBHaXQgZG9jdW1lbnRhdGlvbgotY2FuIGJlIHZpZXdlZCBhdCBgaHR0cHM6Ly9naXQuZ2l0aHViLmlvL2h0bWxkb2NzL2dpdC5odG1sYC4KK2NhbiBiZSB2aWV3ZWQgYXQgaHR0cHM6Ly9naXQuZ2l0aHViLmlvL2h0bWxkb2NzL2dpdC5odG1sCitvciBodHRwczovL2dpdC1zY20uY29tL2RvY3MuCiAKIAogT1BUSU9OUwpAQCAtNTYsNyArNTcsOCBAQAogCVJ1biBhcyBpZiBnaXQgd2FzIHN0YXJ0ZWQgaW4gJzxwYXRoPicgaW5zdGVhZCBvZiB0aGUgY3VycmVudCB3b3JraW5nCiAJZGlyZWN0b3J5LiAgV2hlbiBtdWx0aXBsZSBgLUNgIG9wdGlvbnMgYXJlIGdpdmVuLCBlYWNoIHN1YnNlcXVlbnQKIAlub24tYWJzb2x1dGUgYC1DIDxwYXRoPmAgaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIHByZWNlZGluZyBgLUMKLQk8cGF0aD5gLgorCTxwYXRoPmAuICBJZiAnPHBhdGg+JyBpcyBwcmVzZW50IGJ1dCBlbXB0eSwgZS5nLiBgLUMgIiJgLCB0aGVuIHRoZQorCWN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkgaXMgbGVmdCB1bmNoYW5nZWQuCiArCiBUaGlzIG9wdGlvbiBhZmZlY3RzIG9wdGlvbnMgdGhhdCBleHBlY3QgcGF0aCBuYW1lIGxpa2UgYC0tZ2l0LWRpcmAgYW5kCiBgLS13b3JrLXRyZWVgIGluIHRoYXQgdGhlaXIgaW50ZXJwcmV0YXRpb25zIG9mIHRoZSBwYXRoIG5hbWVzIHdvdWxkIGJlCkBAIC0xMDgsOSArMTEwLDIzIEBACiAJRG8gbm90IHBpcGUgR2l0IG91dHB1dCBpbnRvIGEgcGFnZXIuCiAKIC0tZ2l0LWRpcj08cGF0aD46OgotCVNldCB0aGUgcGF0aCB0byB0aGUgcmVwb3NpdG9yeS4gVGhpcyBjYW4gYWxzbyBiZSBjb250cm9sbGVkIGJ5Ci0Jc2V0dGluZyB0aGUgYEdJVF9ESVJgIGVudmlyb25tZW50IHZhcmlhYmxlLiBJdCBjYW4gYmUgYW4gYWJzb2x1dGUKLQlwYXRoIG9yIHJlbGF0aXZlIHBhdGggdG8gY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KKwlTZXQgdGhlIHBhdGggdG8gdGhlIHJlcG9zaXRvcnkgKCIuZ2l0IiBkaXJlY3RvcnkpLiBUaGlzIGNhbiBhbHNvIGJlCisJY29udHJvbGxlZCBieSBzZXR0aW5nIHRoZSBgR0lUX0RJUmAgZW52aXJvbm1lbnQgdmFyaWFibGUuIEl0IGNhbiBiZQorCWFuIGFic29sdXRlIHBhdGggb3IgcmVsYXRpdmUgcGF0aCB0byBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgorKworU3BlY2lmeWluZyB0aGUgbG9jYXRpb24gb2YgdGhlICIuZ2l0IiBkaXJlY3RvcnkgdXNpbmcgdGhpcworb3B0aW9uIChvciBgR0lUX0RJUmAgZW52aXJvbm1lbnQgdmFyaWFibGUpIHR1cm5zIG9mZiB0aGUKK3JlcG9zaXRvcnkgZGlzY292ZXJ5IHRoYXQgdHJpZXMgdG8gZmluZCBhIGRpcmVjdG9yeSB3aXRoCisiLmdpdCIgc3ViZGlyZWN0b3J5ICh3aGljaCBpcyBob3cgdGhlIHJlcG9zaXRvcnkgYW5kIHRoZQordG9wLWxldmVsIG9mIHRoZSB3b3JraW5nIHRyZWUgYXJlIGRpc2NvdmVyZWQpLCBhbmQgdGVsbHMgR2l0Cit0aGF0IHlvdSBhcmUgYXQgdGhlIHRvcCBsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlLiAgSWYgeW91CithcmUgbm90IGF0IHRoZSB0b3AtbGV2ZWwgZGlyZWN0b3J5IG9mIHRoZSB3b3JraW5nIHRyZWUsIHlvdQorc2hvdWxkIHRlbGwgR2l0IHdoZXJlIHRoZSB0b3AtbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZSBpcywKK3dpdGggdGhlIGAtLXdvcmstdHJlZT08cGF0aD5gIG9wdGlvbiAob3IgYEdJVF9XT1JLX1RSRUVgCitlbnZpcm9ubWVudCB2YXJpYWJsZSkKKysKK0lmIHlvdSBqdXN0IHdhbnQgdG8gcnVuIGdpdCBhcyBpZiBpdCB3YXMgc3RhcnRlZCBpbiBgPHBhdGg+YCB0aGVuIHVzZQorYGdpdCAtQyA8cGF0aD5gLgogCiAtLXdvcmstdHJlZT08cGF0aD46OgogCVNldCB0aGUgcGF0aCB0byB0aGUgd29ya2luZyB0cmVlLiBJdCBjYW4gYmUgYW4gYWJzb2x1dGUgcGF0aApAQCAtMjEwLDYgKzIyNiwyNiBAQAogCiBpbmNsdWRlOjpjbWRzLWZvcmVpZ25zY21pbnRlcmZhY2UudHh0W10KIAorUmVzZXQsIHJlc3RvcmUgYW5kIHJldmVydAorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorVGhlcmUgYXJlIHRocmVlIGNvbW1hbmRzIHdpdGggc2ltaWxhciBuYW1lczogYGdpdCByZXNldGAsCitgZ2l0IHJlc3RvcmVgIGFuZCBgZ2l0IHJldmVydGAuCisKKyogbGlua2dpdDpnaXQtcmV2ZXJ0WzFdIGlzIGFib3V0IG1ha2luZyBhIG5ldyBjb21taXQgdGhhdCByZXZlcnRzIHRoZQorICBjaGFuZ2VzIG1hZGUgYnkgb3RoZXIgY29tbWl0cy4KKworKiBsaW5rZ2l0OmdpdC1yZXN0b3JlWzFdIGlzIGFib3V0IHJlc3RvcmluZyBmaWxlcyBpbiB0aGUgd29ya2luZyB0cmVlCisgIGZyb20gZWl0aGVyIHRoZSBpbmRleCBvciBhbm90aGVyIGNvbW1pdC4gVGhpcyBjb21tYW5kIGRvZXMgbm90CisgIHVwZGF0ZSB5b3VyIGJyYW5jaC4gVGhlIGNvbW1hbmQgY2FuIGFsc28gYmUgdXNlZCB0byByZXN0b3JlIGZpbGVzIGluCisgIHRoZSBpbmRleCBmcm9tIGFub3RoZXIgY29tbWl0LgorCisqIGxpbmtnaXQ6Z2l0LXJlc2V0WzFdIGlzIGFib3V0IHVwZGF0aW5nIHlvdXIgYnJhbmNoLCBtb3ZpbmcgdGhlIHRpcAorICBpbiBvcmRlciB0byBhZGQgb3IgcmVtb3ZlIGNvbW1pdHMgZnJvbSB0aGUgYnJhbmNoLiBUaGlzIG9wZXJhdGlvbgorICBjaGFuZ2VzIHRoZSBjb21taXQgaGlzdG9yeS4KKysKK2BnaXQgcmVzZXRgIGNhbiBhbHNvIGJlIHVzZWQgdG8gcmVzdG9yZSB0aGUgaW5kZXgsIG92ZXJsYXBwaW5nIHdpdGgKK2BnaXQgcmVzdG9yZWAuCisKIAogTG93LWxldmVsIGNvbW1hbmRzIChwbHVtYmluZykKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkBAIC0yNDksOCArMjg1LDggQEAKIHRoZSB3b3JraW5nIHRyZWUuCiAKIAotU3luY2hpbmcgcmVwb3NpdG9yaWVzCi1+fn5+fn5+fn5+fn5+fn5+fn5+fn4KK1N5bmNpbmcgcmVwb3NpdG9yaWVzCit+fn5+fn5+fn5+fn5+fn5+fn5+fgogCiBpbmNsdWRlOjpjbWRzLXN5bmNoaW5ncmVwb3NpdG9yaWVzLnR4dFtdCiAKQEAgLTQ2MCwxMyArNDk2LDM2IEBACiBHaXQgQ29tbWl0cwogfn5+fn5+fn5+fn4KIGBHSVRfQVVUSE9SX05BTUVgOjoKKwlUaGUgaHVtYW4tcmVhZGFibGUgbmFtZSB1c2VkIGluIHRoZSBhdXRob3IgaWRlbnRpdHkgd2hlbiBjcmVhdGluZyBjb21taXQgb3IKKwl0YWcgb2JqZWN0cywgb3Igd2hlbiB3cml0aW5nIHJlZmxvZ3MuIE92ZXJyaWRlcyB0aGUgYHVzZXIubmFtZWAgYW5kCisJYGF1dGhvci5uYW1lYCBjb25maWd1cmF0aW9uIHNldHRpbmdzLgorCiBgR0lUX0FVVEhPUl9FTUFJTGA6OgorCVRoZSBlbWFpbCBhZGRyZXNzIHVzZWQgaW4gdGhlIGF1dGhvciBpZGVudGl0eSB3aGVuIGNyZWF0aW5nIGNvbW1pdCBvcgorCXRhZyBvYmplY3RzLCBvciB3aGVuIHdyaXRpbmcgcmVmbG9ncy4gT3ZlcnJpZGVzIHRoZSBgdXNlci5lbWFpbGAgYW5kCisJYGF1dGhvci5lbWFpbGAgY29uZmlndXJhdGlvbiBzZXR0aW5ncy4KKwogYEdJVF9BVVRIT1JfREFURWA6OgorCVRoZSBkYXRlIHVzZWQgZm9yIHRoZSBhdXRob3IgaWRlbnRpdHkgd2hlbiBjcmVhdGluZyBjb21taXQgb3IgdGFnIG9iamVjdHMsIG9yCisJd2hlbiB3cml0aW5nIHJlZmxvZ3MuIFNlZSBsaW5rZ2l0OmdpdC1jb21taXRbMV0gZm9yIHZhbGlkIGZvcm1hdHMuCisKIGBHSVRfQ09NTUlUVEVSX05BTUVgOjoKKwlUaGUgaHVtYW4tcmVhZGFibGUgbmFtZSB1c2VkIGluIHRoZSBjb21taXR0ZXIgaWRlbnRpdHkgd2hlbiBjcmVhdGluZyBjb21taXQgb3IKKwl0YWcgb2JqZWN0cywgb3Igd2hlbiB3cml0aW5nIHJlZmxvZ3MuIE92ZXJyaWRlcyB0aGUgYHVzZXIubmFtZWAgYW5kCisJYGNvbW1pdHRlci5uYW1lYCBjb25maWd1cmF0aW9uIHNldHRpbmdzLgorCiBgR0lUX0NPTU1JVFRFUl9FTUFJTGA6OgorCVRoZSBlbWFpbCBhZGRyZXNzIHVzZWQgaW4gdGhlIGF1dGhvciBpZGVudGl0eSB3aGVuIGNyZWF0aW5nIGNvbW1pdCBvcgorCXRhZyBvYmplY3RzLCBvciB3aGVuIHdyaXRpbmcgcmVmbG9ncy4gT3ZlcnJpZGVzIHRoZSBgdXNlci5lbWFpbGAgYW5kCisJYGNvbW1pdHRlci5lbWFpbGAgY29uZmlndXJhdGlvbiBzZXR0aW5ncy4KKwogYEdJVF9DT01NSVRURVJfREFURWA6OgotJ0VNQUlMJzo6Ci0Jc2VlIGxpbmtnaXQ6Z2l0LWNvbW1pdC10cmVlWzFdCisJVGhlIGRhdGUgdXNlZCBmb3IgdGhlIGNvbW1pdHRlciBpZGVudGl0eSB3aGVuIGNyZWF0aW5nIGNvbW1pdCBvciB0YWcgb2JqZWN0cywgb3IKKwl3aGVuIHdyaXRpbmcgcmVmbG9ncy4gU2VlIGxpbmtnaXQ6Z2l0LWNvbW1pdFsxXSBmb3IgdmFsaWQgZm9ybWF0cy4KKworYEVNQUlMYDo6CisJVGhlIGVtYWlsIGFkZHJlc3MgdXNlZCBpbiB0aGUgYXV0aG9yIGFuZCBjb21taXR0ZXIgaWRlbnRpdGllcyBpZiBubyBvdGhlcgorCXJlbGV2YW50IGVudmlyb25tZW50IHZhcmlhYmxlIG9yIGNvbmZpZ3VyYXRpb24gc2V0dGluZyBoYXMgYmVlbiBzZXQuCiAKIEdpdCBEaWZmcwogfn5+fn5+fn5+CkBAIC01MjIsNiArNTgxLDEwIEBACiAJYSBwYWdlci4gIFNlZSBhbHNvIHRoZSBgY29yZS5wYWdlcmAgb3B0aW9uIGluCiAJbGlua2dpdDpnaXQtY29uZmlnWzFdLgogCitgR0lUX1BST0dSRVNTX0RFTEFZYDo6CisJQSBudW1iZXIgY29udHJvbGxpbmcgaG93IG1hbnkgc2Vjb25kcyB0byBkZWxheSBiZWZvcmUgc2hvd2luZworCW9wdGlvbmFsIHByb2dyZXNzIGluZGljYXRvcnMuIERlZmF1bHRzIHRvIDIuCisKIGBHSVRfRURJVE9SYDo6CiAJVGhpcyBlbnZpcm9ubWVudCB2YXJpYWJsZSBvdmVycmlkZXMgYCRFRElUT1JgIGFuZCBgJFZJU1VBTGAuCiAJSXQgaXMgdXNlZCBieSBzZXZlcmFsIEdpdCBjb21tYW5kcyB3aGVuLCBvbiBpbnRlcmFjdGl2ZSBtb2RlLApAQCAtNTM2LDcgKzU5OSw2IEBACiAJVGhlIGNvbW1hbmQtbGluZSBwYXJhbWV0ZXJzIHBhc3NlZCB0byB0aGUgY29uZmlndXJlZCBjb21tYW5kIGFyZQogCWRldGVybWluZWQgYnkgdGhlIHNzaCB2YXJpYW50LiAgU2VlIGBzc2gudmFyaWFudGAgb3B0aW9uIGluCiAJbGlua2dpdDpnaXQtY29uZmlnWzFdIGZvciBkZXRhaWxzLgotCiArCiBgJEdJVF9TU0hfQ09NTUFORGAgdGFrZXMgcHJlY2VkZW5jZSBvdmVyIGAkR0lUX1NTSGAsIGFuZCBpcyBpbnRlcnByZXRlZAogYnkgdGhlIHNoZWxsLCB3aGljaCBhbGxvd3MgYWRkaXRpb25hbCBhcmd1bWVudHMgdG8gYmUgaW5jbHVkZWQuCkBAIC02NjEsNiArNzIzLDU0IEBACiAJV2hlbiBhIGN1cmwgdHJhY2UgaXMgZW5hYmxlZCAoc2VlIGBHSVRfVFJBQ0VfQ1VSTGAgYWJvdmUpLCBkbyBub3QgZHVtcAogCWRhdGEgKHRoYXQgaXMsIG9ubHkgZHVtcCBpbmZvIGxpbmVzIGFuZCBoZWFkZXJzKS4KIAorYEdJVF9UUkFDRTJgOjoKKwlFbmFibGVzIG1vcmUgZGV0YWlsZWQgdHJhY2UgbWVzc2FnZXMgZnJvbSB0aGUgInRyYWNlMiIgbGlicmFyeS4KKwlPdXRwdXQgZnJvbSBgR0lUX1RSQUNFMmAgaXMgYSBzaW1wbGUgdGV4dC1iYXNlZCBmb3JtYXQgZm9yIGh1bWFuCisJcmVhZGFiaWxpdHkuCisrCitJZiB0aGlzIHZhcmlhYmxlIGlzIHNldCB0byAiMSIsICIyIiBvciAidHJ1ZSIgKGNvbXBhcmlzb24KK2lzIGNhc2UgaW5zZW5zaXRpdmUpLCB0cmFjZSBtZXNzYWdlcyB3aWxsIGJlIHByaW50ZWQgdG8KK3N0ZGVyci4KKysKK0lmIHRoZSB2YXJpYWJsZSBpcyBzZXQgdG8gYW4gaW50ZWdlciB2YWx1ZSBncmVhdGVyIHRoYW4gMgorYW5kIGxvd2VyIHRoYW4gMTAgKHN0cmljdGx5KSB0aGVuIEdpdCB3aWxsIGludGVycHJldCB0aGlzCit2YWx1ZSBhcyBhbiBvcGVuIGZpbGUgZGVzY3JpcHRvciBhbmQgd2lsbCB0cnkgdG8gd3JpdGUgdGhlCit0cmFjZSBtZXNzYWdlcyBpbnRvIHRoaXMgZmlsZSBkZXNjcmlwdG9yLgorKworQWx0ZXJuYXRpdmVseSwgaWYgdGhlIHZhcmlhYmxlIGlzIHNldCB0byBhbiBhYnNvbHV0ZSBwYXRoCisoc3RhcnRpbmcgd2l0aCBhICcvJyBjaGFyYWN0ZXIpLCBHaXQgd2lsbCBpbnRlcnByZXQgdGhpcworYXMgYSBmaWxlIHBhdGggYW5kIHdpbGwgdHJ5IHRvIGFwcGVuZCB0aGUgdHJhY2UgbWVzc2FnZXMKK3RvIGl0LiAgSWYgdGhlIHBhdGggYWxyZWFkeSBleGlzdHMgYW5kIGlzIGEgZGlyZWN0b3J5LCB0aGUKK3RyYWNlIG1lc3NhZ2VzIHdpbGwgYmUgd3JpdHRlbiB0byBmaWxlcyAob25lIHBlciBwcm9jZXNzKQoraW4gdGhhdCBkaXJlY3RvcnksIG5hbWVkIGFjY29yZGluZyB0byB0aGUgbGFzdCBjb21wb25lbnQKK29mIHRoZSBTSUQgYW5kIGFuIG9wdGlvbmFsIGNvdW50ZXIgKHRvIGF2b2lkIGZpbGVuYW1lCitjb2xsaXNpb25zKS4KKysKK0luIGFkZGl0aW9uLCBpZiB0aGUgdmFyaWFibGUgaXMgc2V0IHRvCitgYWZfdW5peDpbPHNvY2tldF90eXBlPjpdPGFic29sdXRlLXBhdGhuYW1lPmAsIEdpdCB3aWxsIHRyeQordG8gb3BlbiB0aGUgcGF0aCBhcyBhIFVuaXggRG9tYWluIFNvY2tldC4gIFRoZSBzb2NrZXQgdHlwZQorY2FuIGJlIGVpdGhlciBgc3RyZWFtYCBvciBgZGdyYW1gLgorKworVW5zZXR0aW5nIHRoZSB2YXJpYWJsZSwgb3Igc2V0dGluZyBpdCB0byBlbXB0eSwgIjAiIG9yCisiZmFsc2UiIChjYXNlIGluc2Vuc2l0aXZlKSBkaXNhYmxlcyB0cmFjZSBtZXNzYWdlcy4KKysKK1NlZSBsaW5rOnRlY2huaWNhbC9hcGktdHJhY2UyLmh0bWxbVHJhY2UyIGRvY3VtZW50YXRpb25dCitmb3IgZnVsbCBkZXRhaWxzLgorCisKK2BHSVRfVFJBQ0UyX0VWRU5UYDo6CisJVGhpcyBzZXR0aW5nIHdyaXRlcyBhIEpTT04tYmFzZWQgZm9ybWF0IHRoYXQgaXMgc3VpdGVkIGZvciBtYWNoaW5lCisJaW50ZXJwcmV0YXRpb24uCisJU2VlIGBHSVRfVFJBQ0UyYCBmb3IgYXZhaWxhYmxlIHRyYWNlIG91dHB1dCBvcHRpb25zIGFuZAorCWxpbms6dGVjaG5pY2FsL2FwaS10cmFjZTIuaHRtbFtUcmFjZTIgZG9jdW1lbnRhdGlvbl0gZm9yIGZ1bGwgZGV0YWlscy4KKworYEdJVF9UUkFDRTJfUEVSRmA6OgorCUluIGFkZGl0aW9uIHRvIHRoZSB0ZXh0LWJhc2VkIG1lc3NhZ2VzIGF2YWlsYWJsZSBpbiBgR0lUX1RSQUNFMmAsIHRoaXMKKwlzZXR0aW5nIHdyaXRlcyBhIGNvbHVtbi1iYXNlZCBmb3JtYXQgZm9yIHVuZGVyc3RhbmRpbmcgbmVzdGluZworCXJlZ2lvbnMuCisJU2VlIGBHSVRfVFJBQ0UyYCBmb3IgYXZhaWxhYmxlIHRyYWNlIG91dHB1dCBvcHRpb25zIGFuZAorCWxpbms6dGVjaG5pY2FsL2FwaS10cmFjZTIuaHRtbFtUcmFjZTIgZG9jdW1lbnRhdGlvbl0gZm9yIGZ1bGwgZGV0YWlscy4KKwogYEdJVF9SRURBQ1RfQ09PS0lFU2A6OgogCVRoaXMgY2FuIGJlIHNldCB0byBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIHN0cmluZ3MuIFdoZW4gYSBjdXJsIHRyYWNlCiAJaXMgZW5hYmxlZCAoc2VlIGBHSVRfVFJBQ0VfQ1VSTGAgYWJvdmUpLCB3aGVuZXZlciBhICJDb29raWVzOiIgaGVhZGVyCkBAIC04NTksNyArOTY5LDcgQEAKIFJlcG9ydCBidWdzIHRvIHRoZSBHaXQgbWFpbGluZyBsaXN0IDxnaXRAdmdlci5rZXJuZWwub3JnPiB3aGVyZSB0aGUKIGRldmVsb3BtZW50IGFuZCBtYWludGVuYW5jZSBpcyBwcmltYXJpbHkgZG9uZS4gIFlvdSBkbyBub3QgaGF2ZSB0byBiZQogc3Vic2NyaWJlZCB0byB0aGUgbGlzdCB0byBzZW5kIGEgbWVzc2FnZSB0aGVyZS4gIFNlZSB0aGUgbGlzdCBhcmNoaXZlCi1hdCBodHRwczovL3B1YmxpYy1pbmJveC5vcmcvZ2l0IGZvciBwcmV2aW91cyBidWcgcmVwb3J0cyBhbmQgb3RoZXIKK2F0IGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdCBmb3IgcHJldmlvdXMgYnVnIHJlcG9ydHMgYW5kIG90aGVyCiBkaXNjdXNzaW9ucy4KIAogSXNzdWVzIHdoaWNoIGFyZSBzZWN1cml0eSByZWxldmFudCBzaG91bGQgYmUgZGlzY2xvc2VkIHByaXZhdGVseSB0bwpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXRhdHRyaWJ1dGVzLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0YXR0cmlidXRlcy50eHQKaW5kZXggYjgzOTJmYy4uNTA4ZmU3MSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXRhdHRyaWJ1dGVzLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdGF0dHJpYnV0ZXMudHh0CkBAIC0xOCw3ICsxOCw3IEBACiAKIEVhY2ggbGluZSBpbiBgZ2l0YXR0cmlidXRlc2AgZmlsZSBpcyBvZiBmb3JtOgogCi0JcGF0dGVybglhdHRyMSBhdHRyMiAuLi4KKwlwYXR0ZXJuIGF0dHIxIGF0dHIyIC4uLgogCiBUaGF0IGlzLCBhIHBhdHRlcm4gZm9sbG93ZWQgYnkgYW4gYXR0cmlidXRlcyBsaXN0LAogc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2VzLiBMZWFkaW5nIGFuZCB0cmFpbGluZyB3aGl0ZXNwYWNlcyBhcmUKQEAgLTExMiw3ICsxMTIsOCBAQAogCiBUaGVzZSBhdHRyaWJ1dGVzIGFmZmVjdCBob3cgdGhlIGNvbnRlbnRzIHN0b3JlZCBpbiB0aGUKIHJlcG9zaXRvcnkgYXJlIGNvcGllZCB0byB0aGUgd29ya2luZyB0cmVlIGZpbGVzIHdoZW4gY29tbWFuZHMKLXN1Y2ggYXMgJ2dpdCBjaGVja291dCcgYW5kICdnaXQgbWVyZ2UnIHJ1bi4gIFRoZXkgYWxzbyBhZmZlY3QgaG93CitzdWNoIGFzICdnaXQgc3dpdGNoJywgJ2dpdCBjaGVja291dCcgIGFuZCAnZ2l0IG1lcmdlJyBydW4uCitUaGV5IGFsc28gYWZmZWN0IGhvdwogR2l0IHN0b3JlcyB0aGUgY29udGVudHMgeW91IHByZXBhcmUgaW4gdGhlIHdvcmtpbmcgdHJlZSBpbiB0aGUKIHJlcG9zaXRvcnkgdXBvbiAnZ2l0IGFkZCcgYW5kICdnaXQgY29tbWl0Jy4KIApAQCAtMTI0LDcgKzEyNSw5IEBACiByZXBvc2l0b3J5LiAgVG8gY29udHJvbCB3aGF0IGxpbmUgZW5kaW5nIHN0eWxlIGlzIHVzZWQgaW4gdGhlIHdvcmtpbmcKIGRpcmVjdG9yeSwgdXNlIHRoZSBgZW9sYCBhdHRyaWJ1dGUgZm9yIGEgc2luZ2xlIGZpbGUgYW5kIHRoZQogYGNvcmUuZW9sYCBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGZvciBhbGwgdGV4dCBmaWxlcy4KLU5vdGUgdGhhdCBgY29yZS5hdXRvY3JsZmAgb3ZlcnJpZGVzIGBjb3JlLmVvbGAKK05vdGUgdGhhdCBzZXR0aW5nIGBjb3JlLmF1dG9jcmxmYCB0byBgdHJ1ZWAgb3IgYGlucHV0YCBvdmVycmlkZXMKK2Bjb3JlLmVvbGAgKHNlZSB0aGUgZGVmaW5pdGlvbnMgb2YgdGhvc2Ugb3B0aW9ucyBpbgorbGlua2dpdDpnaXQtY29uZmlnWzFdKS4KIAogU2V0OjoKIApAQCAtMjkwLDEwICsyOTMsMTAgQEAKIAogSW4gdGhlc2UgY2FzZXMgeW91IGNhbiB0ZWxsIEdpdCB0aGUgZW5jb2Rpbmcgb2YgYSBmaWxlIGluIHRoZSB3b3JraW5nCiBkaXJlY3Rvcnkgd2l0aCB0aGUgYHdvcmtpbmctdHJlZS1lbmNvZGluZ2AgYXR0cmlidXRlLiBJZiBhIGZpbGUgd2l0aCB0aGlzCi1hdHRyaWJ1dGUgaXMgYWRkZWQgdG8gR2l0LCB0aGVuIEdpdCByZWVuY29kZXMgdGhlIGNvbnRlbnQgZnJvbSB0aGUKK2F0dHJpYnV0ZSBpcyBhZGRlZCB0byBHaXQsIHRoZW4gR2l0IHJlLWVuY29kZXMgdGhlIGNvbnRlbnQgZnJvbSB0aGUKIHNwZWNpZmllZCBlbmNvZGluZyB0byBVVEYtOC4gRmluYWxseSwgR2l0IHN0b3JlcyB0aGUgVVRGLTggZW5jb2RlZAogY29udGVudCBpbiBpdHMgaW50ZXJuYWwgZGF0YSBzdHJ1Y3R1cmUgKGNhbGxlZCAidGhlIGluZGV4IikuIE9uIGNoZWNrb3V0Ci10aGUgY29udGVudCBpcyByZWVuY29kZWQgYmFjayB0byB0aGUgc3BlY2lmaWVkIGVuY29kaW5nLgordGhlIGNvbnRlbnQgaXMgcmUtZW5jb2RlZCBiYWNrIHRvIHRoZSBzcGVjaWZpZWQgZW5jb2RpbmcuCiAKIFBsZWFzZSBub3RlIHRoYXQgdXNpbmcgdGhlIGB3b3JraW5nLXRyZWUtZW5jb2RpbmdgIGF0dHJpYnV0ZSBtYXkgaGF2ZSBhCiBudW1iZXIgb2YgcGl0ZmFsbHM6CkBAIC0zMTIsOCArMzE1LDggQEAKIHN1cHBvcnQgd2lsbCBjaGVja291dCBgZm9vLnBzMWAgYXMgVVRGLTggZW5jb2RlZCBmaWxlLiBUaGlzIHdpbGwKIHR5cGljYWxseSBjYXVzZSB0cm91YmxlIGZvciB0aGUgdXNlcnMgb2YgdGhpcyBmaWxlLgogKwotSWYgYSBHaXQgY2xpZW50LCB0aGF0IGRvZXMgbm90IHN1cHBvcnQgdGhlIGB3b3JraW5nLXRyZWUtZW5jb2RpbmdgCi1hdHRyaWJ1dGUsIGFkZHMgYSBuZXcgZmlsZSBgYmFyLnBzMWAsIHRoZW4gYGJhci5wczFgIHdpbGwgYmUKK0lmIGEgR2l0IGNsaWVudCB0aGF0IGRvZXMgbm90IHN1cHBvcnQgdGhlIGB3b3JraW5nLXRyZWUtZW5jb2RpbmdgCithdHRyaWJ1dGUgYWRkcyBhIG5ldyBmaWxlIGBiYXIucHMxYCwgdGhlbiBgYmFyLnBzMWAgd2lsbCBiZQogc3RvcmVkICJhcy1pcyIgaW50ZXJuYWxseSAoaW4gdGhpcyBleGFtcGxlIHByb2JhYmx5IGFzIFVURi0xNikuCiBBIGNsaWVudCB3aXRoIGB3b3JraW5nLXRyZWUtZW5jb2RpbmdgIHN1cHBvcnQgd2lsbCBpbnRlcnByZXQgdGhlCiBpbnRlcm5hbCBjb250ZW50cyBhcyBVVEYtOCBhbmQgdHJ5IHRvIGNvbnZlcnQgaXQgdG8gVVRGLTE2IG9uIGNoZWNrb3V0LgpAQCAtMzQ0LDcgKzM0Nyw5IEBACiAKIFVzZSB0aGUgZm9sbG93aW5nIGF0dHJpYnV0ZXMgaWYgeW91ciAnKi5wczEnIGZpbGVzIGFyZSBVVEYtMTYgbGl0dGxlCiBlbmRpYW4gZW5jb2RlZCB3aXRob3V0IEJPTSBhbmQgeW91IHdhbnQgR2l0IHRvIHVzZSBXaW5kb3dzIGxpbmUgZW5kaW5ncwotaW4gdGhlIHdvcmtpbmcgZGlyZWN0b3J5LiBQbGVhc2Ugbm90ZSwgaXQgaXMgaGlnaGx5IHJlY29tbWVuZGVkIHRvCitpbiB0aGUgd29ya2luZyBkaXJlY3RvcnkgKHVzZSBgVVRGLTE2TEUtQk9NYCBpbnN0ZWFkIG9mIGBVVEYtMTZMRWAgaWYKK3lvdSB3YW50IFVURi0xNiBsaXR0bGUgZW5kaWFuIHdpdGggQk9NKS4KK1BsZWFzZSBub3RlLCBpdCBpcyBoaWdobHkgcmVjb21tZW5kZWQgdG8KIGV4cGxpY2l0bHkgZGVmaW5lIHRoZSBsaW5lIGVuZGluZ3Mgd2l0aCBgZW9sYCBpZiB0aGUgYHdvcmtpbmctdHJlZS1lbmNvZGluZ2AKIGF0dHJpYnV0ZSBpcyB1c2VkIHRvIGF2b2lkIGFtYmlndWl0eS4KIApAQCAtNDkzLDcgKzQ5OCw3IEBACiBXaGVuIEdpdCBlbmNvdW50ZXJzIHRoZSBmaXJzdCBmaWxlIHRoYXQgbmVlZHMgdG8gYmUgY2xlYW5lZCBvciBzbXVkZ2VkLAogaXQgc3RhcnRzIHRoZSBmaWx0ZXIgYW5kIHBlcmZvcm1zIHRoZSBoYW5kc2hha2UuIEluIHRoZSBoYW5kc2hha2UsIHRoZQogd2VsY29tZSBtZXNzYWdlIHNlbnQgYnkgR2l0IGlzICJnaXQtZmlsdGVyLWNsaWVudCIsIG9ubHkgdmVyc2lvbiAyIGlzCi1zdXBwcG9ydGVkLCBhbmQgdGhlIHN1cHBvcnRlZCBjYXBhYmlsaXRpZXMgYXJlICJjbGVhbiIsICJzbXVkZ2UiLCBhbmQKK3N1cHBvcnRlZCwgYW5kIHRoZSBzdXBwb3J0ZWQgY2FwYWJpbGl0aWVzIGFyZSAiY2xlYW4iLCAic211ZGdlIiwgYW5kCiAiZGVsYXkiLgogCiBBZnRlcndhcmRzIEdpdCBzZW5kcyBhIGxpc3Qgb2YgImtleT12YWx1ZSIgcGFpcnMgdGVybWluYXRlZCB3aXRoCkBAIC04MDUsNiArODEwLDEwIEBACiAKIC0gYGNzc2Agc3VpdGFibGUgZm9yIGNhc2NhZGluZyBzdHlsZSBzaGVldHMuCiAKKy0gYGR0c2Agc3VpdGFibGUgZm9yIGRldmljZXRyZWUgKERUUykgZmlsZXMuCisKKy0gYGVsaXhpcmAgc3VpdGFibGUgZm9yIHNvdXJjZSBjb2RlIGluIHRoZSBFbGl4aXIgbGFuZ3VhZ2UuCisKIC0gYGZvcnRyYW5gIHN1aXRhYmxlIGZvciBzb3VyY2UgY29kZSBpbiB0aGUgRm9ydHJhbiBsYW5ndWFnZS4KIAogLSBgZm91bnRhaW5gIHN1aXRhYmxlIGZvciBGb3VudGFpbiBkb2N1bWVudHMuCkBAIC04MTUsNyArODI0LDcgQEAKIAogLSBgamF2YWAgc3VpdGFibGUgZm9yIHNvdXJjZSBjb2RlIGluIHRoZSBKYXZhIGxhbmd1YWdlLgogCi0tIGBtYXRsYWJgIHN1aXRhYmxlIGZvciBzb3VyY2UgY29kZSBpbiB0aGUgTUFUTEFCIGxhbmd1YWdlLgorLSBgbWF0bGFiYCBzdWl0YWJsZSBmb3Igc291cmNlIGNvZGUgaW4gdGhlIE1BVExBQiBhbmQgT2N0YXZlIGxhbmd1YWdlcy4KIAogLSBgb2JqY2Agc3VpdGFibGUgZm9yIHNvdXJjZSBjb2RlIGluIHRoZSBPYmplY3RpdmUtQyBsYW5ndWFnZS4KIApAQCAtODI5LDYgKzgzOCw4IEBACiAKIC0gYHJ1YnlgIHN1aXRhYmxlIGZvciBzb3VyY2UgY29kZSBpbiB0aGUgUnVieSBsYW5ndWFnZS4KIAorLSBgcnVzdGAgc3VpdGFibGUgZm9yIHNvdXJjZSBjb2RlIGluIHRoZSBSdXN0IGxhbmd1YWdlLgorCiAtIGB0ZXhgIHN1aXRhYmxlIGZvciBzb3VyY2UgY29kZSBmb3IgTGFUZVggZG9jdW1lbnRzLgogCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0Y2xpLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0Y2xpLnR4dAppbmRleCA1OTJlMDZkLi45MmU0YmE2IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdGNsaS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXRjbGkudHh0CkBAIC0zNyw2ICszNywxMiBAQAogICAgZmlsZSBjYWxsZWQgSEVBRCBpbiB5b3VyIHdvcmsgdHJlZSwgYGdpdCBkaWZmIEhFQURgIGlzIGFtYmlndW91cywgYW5kCiAgICB5b3UgaGF2ZSB0byBzYXkgZWl0aGVyIGBnaXQgZGlmZiBIRUFEIC0tYCBvciBgZ2l0IGRpZmYgLS0gSEVBRGAgdG8KICAgIGRpc2FtYmlndWF0ZS4KKworICogQmVjYXVzZSBgLS1gIGRpc2FtYmlndWF0ZXMgcmV2aXNpb25zIGFuZCBwYXRocyBpbiBzb21lIGNvbW1hbmRzLCBpdAorICAgY2Fubm90IGJlIHVzZWQgZm9yIHRob3NlIGNvbW1hbmRzIHRvIHNlcGFyYXRlIG9wdGlvbnMgYW5kIHJldmlzaW9ucy4KKyAgIFlvdSBjYW4gdXNlIGAtLWVuZC1vZi1vcHRpb25zYCBmb3IgdGhpcyAoaXQgYWxzbyB3b3JrcyBmb3IgY29tbWFuZHMKKyAgIHRoYXQgZG8gbm90IGRpc3Rpbmd1aXNoIGJldHdlZW4gcmV2aXNpb25zIGluIHBhdGhzLCBpbiB3aGljaCBjYXNlIGl0CisgICBpcyBzaW1wbHkgYW4gYWxpYXMgZm9yIGAtLWApLgogKwogV2hlbiB3cml0aW5nIGEgc2NyaXB0IHRoYXQgaXMgZXhwZWN0ZWQgdG8gaGFuZGxlIHJhbmRvbSB1c2VyLWlucHV0LCBpdCBpcwogYSBnb29kIHByYWN0aWNlIHRvIG1ha2UgaXQgZXhwbGljaXQgd2hpY2ggYXJndW1lbnRzIGFyZSB3aGljaCBieSBwbGFjaW5nCkBAIC00Nyw4ICs1Myw4IEBACiAgICB0aGluZ3M6CiArCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotJCBnaXQgY2hlY2tvdXQgLS0gKi5jCi0kIGdpdCBjaGVja291dCAtLSBcKi5jCiskIGdpdCByZXN0b3JlICouYworJCBnaXQgcmVzdG9yZSBcKi5jCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogKwogVGhlIGZvcm1lciBsZXRzIHlvdXIgc2hlbGwgZXhwYW5kIHRoZSBmaWxlZ2xvYiwgYW5kIHlvdSBhcmUgYXNraW5nCkBAIC0xMjAsNiArMTI2LDExIEBACiAgICAgLS1sb25nICAgICAgICAgICAgICAgIGFsd2F5cyB1c2UgbG9uZyBmb3JtYXQKICAgICAtLWFiYnJldls9PG4+XSAgICAgICAgdXNlIDxuPiBkaWdpdHMgdG8gZGlzcGxheSBTSEEtMXMKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorKworTm90ZSB0aGF0IHNvbWUgc3ViY29tbWFuZCAoZS5nLiBgZ2l0IGdyZXBgKSBtYXkgYmVoYXZlIGRpZmZlcmVudGx5Cit3aGVuIHRoZXJlIGFyZSB0aGluZ3Mgb24gdGhlIGNvbW1hbmQgbGluZSBvdGhlciB0aGFuIGAtaGAsIGJ1dCBgZ2l0CitzdWJjbWQgLWhgIHdpdGhvdXQgYW55dGhpbmcgZWxzZSBvbiB0aGUgY29tbWFuZCBsaW5lIGlzIG1lYW50IHRvCitjb25zaXN0ZW50bHkgZ2l2ZSB0aGUgdXNhZ2UuCiAKIC0taGVscC1hbGw6OgogCVNvbWUgR2l0IGNvbW1hbmRzIHRha2Ugb3B0aW9ucyB0aGF0IGFyZSBvbmx5IHVzZWQgZm9yIHBsdW1iaW5nIG9yIHRoYXQKQEAgLTIwNSwxMCArMjE2LDIyIEBACiBlbnRyaWVzLCBhbmQgd2l0aCBgLS1jYWNoZWRgLCBpdCBtb2RpZmllcyBvbmx5IHRoZSBpbmRleAogZW50cmllcy4KIAotU2VlIGFsc28gaHR0cDovL21hcmMuaW5mby8/bD1naXQmbT0xMTY1NjMxMzU2MjAzNTkgYW5kCi1odHRwOi8vbWFyYy5pbmZvLz9sPWdpdCZtPTExOTE1MDM5MzYyMDI3MyBmb3IgZnVydGhlcgorU2VlIGFsc28gaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvZ2l0Lzd2NjRjbGc1dTkuZnNmQGFzc2lnbmVkLWJ5LWRoY3AuY294Lm5ldC8gYW5kCitodHRwczovL2xvcmUua2VybmVsLm9yZy9naXQvN3Z5N2VqOWczOC5mc2ZAZ2l0c3Rlci5zaWFtZXNlLmR5bmRucy5vcmcvIGZvciBmdXJ0aGVyCiBpbmZvcm1hdGlvbi4KIAorU29tZSBvdGhlciBjb21tYW5kcyB0aGF0IGFsc28gd29yayBvbiBmaWxlcyBpbiB0aGUgd29ya2luZyB0cmVlIGFuZC9vcgoraW4gdGhlIGluZGV4IGNhbiB0YWtlIGAtLXN0YWdlZGAgYW5kL29yIGAtLXdvcmt0cmVlYC4KKworKiBgLS1zdGFnZWRgIGlzIGV4YWN0bHkgbGlrZSBgLS1jYWNoZWRgLCB3aGljaCBpcyB1c2VkIHRvIGFzayBhCisgIGNvbW1hbmQgdG8gb25seSB3b3JrIG9uIHRoZSBpbmRleCwgbm90IHRoZSB3b3JraW5nIHRyZWUuCisKKyogYC0td29ya3RyZWVgIGlzIHRoZSBvcHBvc2l0ZSwgdG8gYXNrIGEgY29tbWFuZCB0byB3b3JrIG9uIHRoZQorICB3b3JraW5nIHRyZWUgb25seSwgbm90IHRoZSBpbmRleC4KKworKiBUaGUgdHdvIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCB0b2dldGhlciB0byBhc2sgYSBjb21tYW5kIHRvIHdvcmsKKyAgb24gYm90aCB0aGUgaW5kZXggYW5kIHRoZSB3b3JraW5nIHRyZWUuCisKIEdJVAogLS0tCiBQYXJ0IG9mIHRoZSBsaW5rZ2l0OmdpdFsxXSBzdWl0ZQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXRjb3JlLXR1dG9yaWFsLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0Y29yZS10dXRvcmlhbC50eHQKaW5kZXggZTI5YTllZi4uYzBiOTUyNSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXRjb3JlLXR1dG9yaWFsLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdGNvcmUtdHV0b3JpYWwudHh0CkBAIC03NDEsNyArNzQxLDcgQEAKIHNheWluZyB0aGF0IHlvdSB3YW50IHRvIGNoZWNrIG91dCBhIG5ldyBicmFuY2g6CiAKIC0tLS0tLS0tLS0tLQotJCBnaXQgY2hlY2tvdXQgLWIgbXlicmFuY2gKKyQgZ2l0IHN3aXRjaCAtYyBteWJyYW5jaAogLS0tLS0tLS0tLS0tCiAKIHdpbGwgY3JlYXRlIGEgbmV3IGJyYW5jaCBiYXNlZCBhdCB0aGUgY3VycmVudCBgSEVBRGAgcG9zaXRpb24sIGFuZCBzd2l0Y2gKQEAgLTc1MSwxMSArNzUxLDExIEBACiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIElmIHlvdSBtYWtlIHRoZSBkZWNpc2lvbiB0byBzdGFydCB5b3VyIG5ldyBicmFuY2ggYXQgc29tZQogb3RoZXIgcG9pbnQgaW4gdGhlIGhpc3RvcnkgdGhhbiB0aGUgY3VycmVudCBgSEVBRGAsIHlvdSBjYW4gZG8gc28gYnkKLWp1c3QgdGVsbGluZyAnZ2l0IGNoZWNrb3V0JyB3aGF0IHRoZSBiYXNlIG9mIHRoZSBjaGVja291dCB3b3VsZCBiZS4KK2p1c3QgdGVsbGluZyAnZ2l0IHN3aXRjaCcgd2hhdCB0aGUgYmFzZSBvZiB0aGUgY2hlY2tvdXQgd291bGQgYmUuCiBJbiBvdGhlciB3b3JkcywgaWYgeW91IGhhdmUgYW4gZWFybGllciB0YWcgb3IgYnJhbmNoLCB5b3UnZCBqdXN0IGRvCiAKIC0tLS0tLS0tLS0tLQotJCBnaXQgY2hlY2tvdXQgLWIgbXlicmFuY2ggZWFybGllci1jb21taXQKKyQgZ2l0IHN3aXRjaCAtYyBteWJyYW5jaCBlYXJsaWVyLWNvbW1pdAogLS0tLS0tLS0tLS0tCiAKIGFuZCBpdCB3b3VsZCBjcmVhdGUgdGhlIG5ldyBicmFuY2ggYG15YnJhbmNoYCBhdCB0aGUgZWFybGllciBjb21taXQsCkBAIC03NjUsNyArNzY1LDcgQEAKIFlvdSBjYW4gYWx3YXlzIGp1c3QganVtcCBiYWNrIHRvIHlvdXIgb3JpZ2luYWwgYG1hc3RlcmAgYnJhbmNoIGJ5IGRvaW5nCiAKIC0tLS0tLS0tLS0tLQotJCBnaXQgY2hlY2tvdXQgbWFzdGVyCiskIGdpdCBzd2l0Y2ggbWFzdGVyCiAtLS0tLS0tLS0tLS0KIAogKG9yIGFueSBvdGhlciBicmFuY2gtbmFtZSwgZm9yIHRoYXQgbWF0dGVyKSBhbmQgaWYgeW91IGZvcmdldCB3aGljaApAQCAtNzk0LDcgKzc5NCw3IEBACiAKIHdoaWNoIHdpbGwgc2ltcGx5IF9jcmVhdGVfIHRoZSBicmFuY2gsIGJ1dCB3aWxsIG5vdCBkbyBhbnl0aGluZyBmdXJ0aGVyLgogWW91IGNhbiB0aGVuIGxhdGVyIC0tIG9uY2UgeW91IGRlY2lkZSB0aGF0IHlvdSB3YW50IHRvIGFjdHVhbGx5IGRldmVsb3AKLW9uIHRoYXQgYnJhbmNoIC0tIHN3aXRjaCB0byB0aGF0IGJyYW5jaCB3aXRoIGEgcmVndWxhciAnZ2l0IGNoZWNrb3V0Jworb24gdGhhdCBicmFuY2ggLS0gc3dpdGNoIHRvIHRoYXQgYnJhbmNoIHdpdGggYSByZWd1bGFyICdnaXQgc3dpdGNoJwogd2l0aCB0aGUgYnJhbmNobmFtZSBhcyB0aGUgYXJndW1lbnQuCiAKIApAQCAtODA4LDcgKzgwOCw3IEBACiB0aGF0IGJyYW5jaCwgYW5kIGRvIHNvbWUgd29yayB0aGVyZS4KIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0kIGdpdCBjaGVja291dCBteWJyYW5jaAorJCBnaXQgc3dpdGNoIG15YnJhbmNoCiAkIGVjaG8gIldvcmssIHdvcmssIHdvcmsiID4+aGVsbG8KICQgZ2l0IGNvbW1pdCAtbSAiU29tZSB3b3JrLiIgLWkgaGVsbG8KIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtODI1LDcgKzgyNSw3IEBACiB0byB0aGUgbWFzdGVyIGJyYW5jaCwgYW5kIGVkaXRpbmcgdGhlIHNhbWUgZmlsZSBkaWZmZXJlbnRseSB0aGVyZToKIAogLS0tLS0tLS0tLS0tCi0kIGdpdCBjaGVja291dCBtYXN0ZXIKKyQgZ2l0IHN3aXRjaCBtYXN0ZXIKIC0tLS0tLS0tLS0tLQogCiBIZXJlLCB0YWtlIGEgbW9tZW50IHRvIGxvb2sgYXQgdGhlIGNvbnRlbnRzIG9mIGBoZWxsb2AsIGFuZCBub3RpY2UgaG93IHRoZXkKQEAgLTk1OCw3ICs5NTgsNyBAQAogJ2dpdCBtZXJnZScgdG8gZ2V0IHRoZSAidXBzdHJlYW0gY2hhbmdlcyIgYmFjayB0byB5b3VyIGJyYW5jaC4KIAogLS0tLS0tLS0tLS0tCi0kIGdpdCBjaGVja291dCBteWJyYW5jaAorJCBnaXQgc3dpdGNoIG15YnJhbmNoCiAkIGdpdCBtZXJnZSAtbSAiTWVyZ2UgdXBzdHJlYW0gY2hhbmdlcy4iIG1hc3RlcgogLS0tLS0tLS0tLS0tCiAKQEAgLTExMzMsOSArMTEzMyw4IEBACiB3b3JrLiIgY29tbWl0LgogCiAtLS0tLS0tLS0tLS0KLSQgZ2l0IGNoZWNrb3V0IG15YnJhbmNoCi0kIGdpdCByZXNldCAtLWhhcmQgbWFzdGVyXjIKLSQgZ2l0IGNoZWNrb3V0IG1hc3RlcgorJCBnaXQgc3dpdGNoIC1DIG15YnJhbmNoIG1hc3Rlcl4yCiskIGdpdCBzd2l0Y2ggbWFzdGVyCiAkIGdpdCByZXNldCAtLWhhcmQgbWFzdGVyXgogLS0tLS0tLS0tLS0tCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0Y3JlZGVudGlhbHMudHh0IGIvRG9jdW1lbnRhdGlvbi9naXRjcmVkZW50aWFscy50eHQKaW5kZXggYWRjNzU5Ni4uMTgxNGQyZCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXRjcmVkZW50aWFscy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXRjcmVkZW50aWFscy50eHQKQEAgLTEzMSw3ICsxMzEsOSBAQAogYmVjYXVzZSB0aGUgaG9zdG5hbWVzIGRpZmZlci4gTm9yIHdvdWxkIGl0IG1hdGNoIGBmb28uZXhhbXBsZS5jb21gOyBHaXQKIGNvbXBhcmVzIGhvc3RuYW1lcyBleGFjdGx5LCB3aXRob3V0IGNvbnNpZGVyaW5nIHdoZXRoZXIgdHdvIGhvc3RzIGFyZSBwYXJ0IG9mCiB0aGUgc2FtZSBkb21haW4uIExpa2V3aXNlLCBhIGNvbmZpZyBlbnRyeSBmb3IgYGh0dHA6Ly9leGFtcGxlLmNvbWAgd291bGQgbm90Ci1tYXRjaDogR2l0IGNvbXBhcmVzIHRoZSBwcm90b2NvbHMgZXhhY3RseS4KK21hdGNoOiBHaXQgY29tcGFyZXMgdGhlIHByb3RvY29scyBleGFjdGx5LiAgSG93ZXZlciwgeW91IG1heSB1c2Ugd2lsZGNhcmRzIGluCit0aGUgZG9tYWluIG5hbWUgYW5kIG90aGVyIHBhdHRlcm4gbWF0Y2hpbmcgdGVjaG5pcXVlcyBhcyB3aXRoIHRoZSBgaHR0cC48dXJsPi4qYAorb3B0aW9ucy4KIAogSWYgdGhlICJwYXR0ZXJuIiBVUkwgZG9lcyBpbmNsdWRlIGEgcGF0aCBjb21wb25lbnQsIHRoZW4gdGhpcyB0b28gbXVzdCBtYXRjaAogZXhhY3RseTogdGhlIGNvbnRleHQgYGh0dHBzOi8vZXhhbXBsZS5jb20vYmFyL2Jhei5naXRgIHdpbGwgbWF0Y2ggYSBjb25maWcKQEAgLTE4Niw4ICsxODgsOTQgQEAKIC0tLS0tLS0tLS0tLS0tCiAKIFlvdSBjYW4gd3JpdGUgeW91ciBvd24gY3VzdG9tIGhlbHBlcnMgdG8gaW50ZXJmYWNlIHdpdGggYW55IHN5c3RlbSBpbgotd2hpY2ggeW91IGtlZXAgY3JlZGVudGlhbHMuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgR2l0J3MKLWxpbms6dGVjaG5pY2FsL2FwaS1jcmVkZW50aWFscy5odG1sW2NyZWRlbnRpYWxzIEFQSV0gZm9yIGRldGFpbHMuCit3aGljaCB5b3Uga2VlcCBjcmVkZW50aWFscy4KKworQ3JlZGVudGlhbCBoZWxwZXJzIGFyZSBwcm9ncmFtcyBleGVjdXRlZCBieSBHaXQgdG8gZmV0Y2ggb3Igc2F2ZQorY3JlZGVudGlhbHMgZnJvbSBhbmQgdG8gbG9uZy10ZXJtIHN0b3JhZ2UgKHdoZXJlICJsb25nLXRlcm0iIGlzIHNpbXBseQorbG9uZ2VyIHRoYW4gYSBzaW5nbGUgR2l0IHByb2Nlc3M7IGUuZy4sIGNyZWRlbnRpYWxzIG1heSBiZSBzdG9yZWQKK2luLW1lbW9yeSBmb3IgYSBmZXcgbWludXRlcywgb3IgaW5kZWZpbml0ZWx5IG9uIGRpc2spLgorCitFYWNoIGhlbHBlciBpcyBzcGVjaWZpZWQgYnkgYSBzaW5nbGUgc3RyaW5nIGluIHRoZSBjb25maWd1cmF0aW9uCit2YXJpYWJsZSBgY3JlZGVudGlhbC5oZWxwZXJgIChhbmQgb3RoZXJzLCBzZWUgbGlua2dpdDpnaXQtY29uZmlnWzFdKS4KK1RoZSBzdHJpbmcgaXMgdHJhbnNmb3JtZWQgYnkgR2l0IGludG8gYSBjb21tYW5kIHRvIGJlIGV4ZWN1dGVkIHVzaW5nCit0aGVzZSBydWxlczoKKworICAxLiBJZiB0aGUgaGVscGVyIHN0cmluZyBiZWdpbnMgd2l0aCAiISIsIGl0IGlzIGNvbnNpZGVyZWQgYSBzaGVsbAorICAgICBzbmlwcGV0LCBhbmQgZXZlcnl0aGluZyBhZnRlciB0aGUgIiEiIGJlY29tZXMgdGhlIGNvbW1hbmQuCisKKyAgMi4gT3RoZXJ3aXNlLCBpZiB0aGUgaGVscGVyIHN0cmluZyBiZWdpbnMgd2l0aCBhbiBhYnNvbHV0ZSBwYXRoLCB0aGUKKyAgICAgdmVyYmF0aW0gaGVscGVyIHN0cmluZyBiZWNvbWVzIHRoZSBjb21tYW5kLgorCisgIDMuIE90aGVyd2lzZSwgdGhlIHN0cmluZyAiZ2l0IGNyZWRlbnRpYWwtIiBpcyBwcmVwZW5kZWQgdG8gdGhlIGhlbHBlcgorICAgICBzdHJpbmcsIGFuZCB0aGUgcmVzdWx0IGJlY29tZXMgdGhlIGNvbW1hbmQuCisKK1RoZSByZXN1bHRpbmcgY29tbWFuZCB0aGVuIGhhcyBhbiAib3BlcmF0aW9uIiBhcmd1bWVudCBhcHBlbmRlZCB0byBpdAorKHNlZSBiZWxvdyBmb3IgZGV0YWlscyksIGFuZCB0aGUgcmVzdWx0IGlzIGV4ZWN1dGVkIGJ5IHRoZSBzaGVsbC4KKworSGVyZSBhcmUgc29tZSBleGFtcGxlIHNwZWNpZmljYXRpb25zOgorCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIHJ1biAiZ2l0IGNyZWRlbnRpYWwtZm9vIgorZm9vCisKKyMgc2FtZSBhcyBhYm92ZSwgYnV0IHBhc3MgYW4gYXJndW1lbnQgdG8gdGhlIGhlbHBlcgorZm9vIC0tYmFyPWJhegorCisjIHRoZSBhcmd1bWVudHMgYXJlIHBhcnNlZCBieSB0aGUgc2hlbGwsIHNvIHVzZSBzaGVsbAorIyBxdW90aW5nIGlmIG5lY2Vzc2FyeQorZm9vIC0tYmFyPSJ3aGl0ZXNwYWNlIGFyZyIKKworIyB5b3UgY2FuIGFsc28gdXNlIGFuIGFic29sdXRlIHBhdGgsIHdoaWNoIHdpbGwgbm90IHVzZSB0aGUgZ2l0IHdyYXBwZXIKKy9wYXRoL3RvL215L2hlbHBlciAtLXdpdGgtYXJndW1lbnRzCisKKyMgb3IgeW91IGNhbiBzcGVjaWZ5IHlvdXIgb3duIHNoZWxsIHNuaXBwZXQKKyFmKCkgeyBlY2hvICJwYXNzd29yZD1gY2F0ICRIT01FLy5zZWNyZXRgIjsgfTsgZgorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitHZW5lcmFsbHkgc3BlYWtpbmcsIHJ1bGUgKDMpIGFib3ZlIGlzIHRoZSBzaW1wbGVzdCBmb3IgdXNlcnMgdG8gc3BlY2lmeS4KK0F1dGhvcnMgb2YgY3JlZGVudGlhbCBoZWxwZXJzIHNob3VsZCBtYWtlIGFuIGVmZm9ydCB0byBhc3Npc3QgdGhlaXIKK3VzZXJzIGJ5IG5hbWluZyB0aGVpciBwcm9ncmFtICJnaXQtY3JlZGVudGlhbC0kTkFNRSIsIGFuZCBwdXR0aW5nIGl0IGluCit0aGUgYCRQQVRIYCBvciBgJEdJVF9FWEVDX1BBVEhgIGR1cmluZyBpbnN0YWxsYXRpb24sIHdoaWNoIHdpbGwgYWxsb3cgYQordXNlciB0byBlbmFibGUgaXQgd2l0aCBgZ2l0IGNvbmZpZyBjcmVkZW50aWFsLmhlbHBlciAkTkFNRWAuCisKK1doZW4gYSBoZWxwZXIgaXMgZXhlY3V0ZWQsIGl0IHdpbGwgaGF2ZSBvbmUgIm9wZXJhdGlvbiIgYXJndW1lbnQKK2FwcGVuZGVkIHRvIGl0cyBjb21tYW5kIGxpbmUsIHdoaWNoIGlzIG9uZSBvZjoKKworYGdldGA6OgorCisJUmV0dXJuIGEgbWF0Y2hpbmcgY3JlZGVudGlhbCwgaWYgYW55IGV4aXN0cy4KKworYHN0b3JlYDo6CisKKwlTdG9yZSB0aGUgY3JlZGVudGlhbCwgaWYgYXBwbGljYWJsZSB0byB0aGUgaGVscGVyLgorCitgZXJhc2VgOjoKKworCVJlbW92ZSBhIG1hdGNoaW5nIGNyZWRlbnRpYWwsIGlmIGFueSwgZnJvbSB0aGUgaGVscGVyJ3Mgc3RvcmFnZS4KKworVGhlIGRldGFpbHMgb2YgdGhlIGNyZWRlbnRpYWwgd2lsbCBiZSBwcm92aWRlZCBvbiB0aGUgaGVscGVyJ3Mgc3RkaW4KK3N0cmVhbS4gVGhlIGV4YWN0IGZvcm1hdCBpcyB0aGUgc2FtZSBhcyB0aGUgaW5wdXQvb3V0cHV0IGZvcm1hdCBvZiB0aGUKK2BnaXQgY3JlZGVudGlhbGAgcGx1bWJpbmcgY29tbWFuZCAoc2VlIHRoZSBzZWN0aW9uIGBJTlBVVC9PVVRQVVQKK0ZPUk1BVGAgaW4gbGlua2dpdDpnaXQtY3JlZGVudGlhbFsxXSBmb3IgYSBkZXRhaWxlZCBzcGVjaWZpY2F0aW9uKS4KKworRm9yIGEgYGdldGAgb3BlcmF0aW9uLCB0aGUgaGVscGVyIHNob3VsZCBwcm9kdWNlIGEgbGlzdCBvZiBhdHRyaWJ1dGVzIG9uCitzdGRvdXQgaW4gdGhlIHNhbWUgZm9ybWF0IChzZWUgbGlua2dpdDpnaXQtY3JlZGVudGlhbFsxXSBmb3IgY29tbW9uCithdHRyaWJ1dGVzKS4gQSBoZWxwZXIgaXMgZnJlZSB0byBwcm9kdWNlIGEgc3Vic2V0LCBvciBldmVuIG5vIHZhbHVlcyBhdAorYWxsIGlmIGl0IGhhcyBub3RoaW5nIHVzZWZ1bCB0byBwcm92aWRlLiBBbnkgcHJvdmlkZWQgYXR0cmlidXRlcyB3aWxsCitvdmVyd3JpdGUgdGhvc2UgYWxyZWFkeSBrbm93biBhYm91dCBieSBHaXQuICBJZiBhIGhlbHBlciBvdXRwdXRzIGEKK2BxdWl0YCBhdHRyaWJ1dGUgd2l0aCBhIHZhbHVlIG9mIGB0cnVlYCBvciBgMWAsIG5vIGZ1cnRoZXIgaGVscGVycyB3aWxsCitiZSBjb25zdWx0ZWQsIG5vciB3aWxsIHRoZSB1c2VyIGJlIHByb21wdGVkIChpZiBubyBjcmVkZW50aWFsIGhhcyBiZWVuCitwcm92aWRlZCwgdGhlIG9wZXJhdGlvbiB3aWxsIHRoZW4gZmFpbCkuCisKK0ZvciBhIGBzdG9yZWAgb3IgYGVyYXNlYCBvcGVyYXRpb24sIHRoZSBoZWxwZXIncyBvdXRwdXQgaXMgaWdub3JlZC4KK0lmIGl0IGZhaWxzIHRvIHBlcmZvcm0gdGhlIHJlcXVlc3RlZCBvcGVyYXRpb24sIGl0IG1heSBjb21wbGFpbiB0bworc3RkZXJyIHRvIGluZm9ybSB0aGUgdXNlci4gSWYgaXQgZG9lcyBub3Qgc3VwcG9ydCB0aGUgcmVxdWVzdGVkCitvcGVyYXRpb24gKGUuZy4sIGEgcmVhZC1vbmx5IHN0b3JlKSwgaXQgc2hvdWxkIHNpbGVudGx5IGlnbm9yZSB0aGUKK3JlcXVlc3QuCisKK0lmIGEgaGVscGVyIHJlY2VpdmVzIGFueSBvdGhlciBvcGVyYXRpb24sIGl0IHNob3VsZCBzaWxlbnRseSBpZ25vcmUgdGhlCityZXF1ZXN0LiBUaGlzIGxlYXZlcyByb29tIGZvciBmdXR1cmUgb3BlcmF0aW9ucyB0byBiZSBhZGRlZCAob2xkZXIKK2hlbHBlcnMgd2lsbCBqdXN0IGlnbm9yZSB0aGUgbmV3IHJlcXVlc3RzKS4KIAogR0lUCiAtLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0ZGlmZmNvcmUudHh0IGIvRG9jdW1lbnRhdGlvbi9naXRkaWZmY29yZS50eHQKaW5kZXggYzBhNjBmMy4uYzk3MGQ5ZiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXRkaWZmY29yZS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXRkaWZmY29yZS50eHQKQEAgLTI0Miw3ICsyNDIsOCBAQAogcmVndWxhciBleHByZXNzaW9uLiAgVGhpcyBtZWFucyB0aGF0IGl0IHdpbGwgZGV0ZWN0IGluLWZpbGUgKG9yIHdoYXQKIHJlbmFtZS1kZXRlY3Rpb24gY29uc2lkZXJzIHRoZSBzYW1lIGZpbGUpIG1vdmVzLCB3aGljaCBpcyBub2lzZS4gIFRoZQogaW1wbGVtZW50YXRpb24gcnVucyBkaWZmIHR3aWNlIGFuZCBncmVwcywgYW5kIHRoaXMgY2FuIGJlIHF1aXRlCi1leHBlbnNpdmUuCitleHBlbnNpdmUuICBUbyBzcGVlZCB0aGluZ3MgdXAgYmluYXJ5IGZpbGVzIHdpdGhvdXQgdGV4dGNvbnYgZmlsdGVycword2lsbCBiZSBpZ25vcmVkLgogCiBXaGVuIGAtU2Agb3IgYC1HYCBhcmUgdXNlZCB3aXRob3V0IGAtLXBpY2theGUtYWxsYCwgb25seSBmaWxlcGFpcnMKIHRoYXQgbWF0Y2ggdGhlaXIgcmVzcGVjdGl2ZSBjcml0ZXJpb24gYXJlIGtlcHQgaW4gdGhlIG91dHB1dC4gIFdoZW4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0ZXZlcnlkYXkudHh0IGIvRG9jdW1lbnRhdGlvbi9naXRldmVyeWRheS50eHQKaW5kZXggOWYyNTI4Zi4uMWJkOTE5ZiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXRldmVyeWRheS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXRldmVyeWRheS50eHQKQEAgLTQxLDcgKzQxLDcgQEAKIAogICAqIGxpbmtnaXQ6Z2l0LWxvZ1sxXSB0byBzZWUgd2hhdCBoYXBwZW5lZC4KIAotICAqIGxpbmtnaXQ6Z2l0LWNoZWNrb3V0WzFdIGFuZCBsaW5rZ2l0OmdpdC1icmFuY2hbMV0gdG8gc3dpdGNoCisgICogbGlua2dpdDpnaXQtc3dpdGNoWzFdIGFuZCBsaW5rZ2l0OmdpdC1icmFuY2hbMV0gdG8gc3dpdGNoCiAgICAgYnJhbmNoZXMuCiAKICAgKiBsaW5rZ2l0OmdpdC1hZGRbMV0gdG8gbWFuYWdlIHRoZSBpbmRleCBmaWxlLgpAQCAtNTEsOCArNTEsNyBAQAogCiAgICogbGlua2dpdDpnaXQtY29tbWl0WzFdIHRvIGFkdmFuY2UgdGhlIGN1cnJlbnQgYnJhbmNoLgogCi0gICogbGlua2dpdDpnaXQtcmVzZXRbMV0gYW5kIGxpbmtnaXQ6Z2l0LWNoZWNrb3V0WzFdICh3aXRoCi0gICAgcGF0aG5hbWUgcGFyYW1ldGVycykgdG8gdW5kbyBjaGFuZ2VzLgorICAqIGxpbmtnaXQ6Z2l0LXJlc3RvcmVbMV0gdG8gdW5kbyBjaGFuZ2VzLgogCiAgICogbGlua2dpdDpnaXQtbWVyZ2VbMV0gdG8gbWVyZ2UgYmV0d2VlbiBsb2NhbCBicmFuY2hlcy4KIApAQCAtODAsOSArNzksOSBAQAogQ3JlYXRlIGEgdG9waWMgYnJhbmNoIGFuZCBkZXZlbG9wLjo6CiArCiAtLS0tLS0tLS0tLS0KLSQgZ2l0IGNoZWNrb3V0IC1iIGFsc2EtYXVkaW8gPDE+CiskIGdpdCBzd2l0Y2ggLWMgYWxzYS1hdWRpbyA8MT4KICQgZWRpdC9jb21waWxlL3Rlc3QKLSQgZ2l0IGNoZWNrb3V0IC0tIGN1cnNlcy91eF9hdWRpb19vc3MuYyA8Mj4KKyQgZ2l0IHJlc3RvcmUgY3Vyc2VzL3V4X2F1ZGlvX29zcy5jIDwyPgogJCBnaXQgYWRkIGN1cnNlcy91eF9hdWRpb19hbHNhLmMgPDM+CiAkIGVkaXQvY29tcGlsZS90ZXN0CiAkIGdpdCBkaWZmIEhFQUQgPDQ+CkBAIC05MCw3ICs4OSw3IEBACiAkIGVkaXQvY29tcGlsZS90ZXN0CiAkIGdpdCBkaWZmIEhFQUReIDw2PgogJCBnaXQgY29tbWl0IC1hIC0tYW1lbmQgPDc+Ci0kIGdpdCBjaGVja291dCBtYXN0ZXIgPDg+CiskIGdpdCBzd2l0Y2ggbWFzdGVyIDw4PgogJCBnaXQgbWVyZ2UgYWxzYS1hdWRpbyA8OT4KICQgZ2l0IGxvZyAtLXNpbmNlPSczIGRheXMgYWdvJyA8MTA+CiAkIGdpdCBsb2cgdjIuNDMuLiBjdXJzZXMvIDwxMT4KQEAgLTE0OCwxMSArMTQ3LDExIEBACiAtLS0tLS0tLS0tLS0KICQgZ2l0IGNsb25lIGdpdDovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vLi4uL3RvcnZhbGRzL2xpbnV4LTIuNiBteTIuNgogJCBjZCBteTIuNgotJCBnaXQgY2hlY2tvdXQgLWIgbWluZSBtYXN0ZXIgPDE+CiskIGdpdCBzd2l0Y2ggLWMgbWluZSBtYXN0ZXIgPDE+CiAkIGVkaXQvY29tcGlsZS90ZXN0OyBnaXQgY29tbWl0IC1hIC1zIDwyPgogJCBnaXQgZm9ybWF0LXBhdGNoIG1hc3RlciA8Mz4KICQgZ2l0IHNlbmQtZW1haWwgLS10bz0icGVyc29uIDxlbWFpbEBleGFtcGxlLmNvbT4iIDAwKi5wYXRjaCA8ND4KLSQgZ2l0IGNoZWNrb3V0IG1hc3RlciA8NT4KKyQgZ2l0IHN3aXRjaCBtYXN0ZXIgPDU+CiAkIGdpdCBwdWxsIDw2PgogJCBnaXQgbG9nIC1wIE9SSUdfSEVBRC4uIGFyY2gvaTM4NiBpbmNsdWRlL2FzbS1pMzg2IDw3PgogJCBnaXQgbHMtcmVtb3RlIC0taGVhZHMgaHR0cDovL2dpdC5rZXJuZWwub3JnLy4uLi9qZ2FyemlrL2xpYmF0YS1kZXYuZ2l0IDw4PgpAQCAtMTk0LDcgKzE5Myw3IEBACiBzYXRlbGxpdGUkIGdpdCBwdXNoIG9yaWdpbiA8ND4KIAogbW90aGVyc2hpcCQgY2QgZnJvdHoKLW1vdGhlcnNoaXAkIGdpdCBjaGVja291dCBtYXN0ZXIKK21vdGhlcnNoaXAkIGdpdCBzd2l0Y2ggbWFzdGVyCiBtb3RoZXJzaGlwJCBnaXQgbWVyZ2Ugc2F0ZWxsaXRlL21hc3RlciA8NT4KIC0tLS0tLS0tLS0tLQogKwpAQCAtMjE2LDcgKzIxNSw3IEBACiBCcmFuY2ggb2ZmIG9mIGEgc3BlY2lmaWMgdGFnLjo6CiArCiAtLS0tLS0tLS0tLS0KLSQgZ2l0IGNoZWNrb3V0IC1iIHByaXZhdGUyLjYuMTQgdjIuNi4xNCA8MT4KKyQgZ2l0IHN3aXRjaCAtYyBwcml2YXRlMi42LjE0IHYyLjYuMTQgPDE+CiAkIGVkaXQvY29tcGlsZS90ZXN0OyBnaXQgY29tbWl0IC1hCiAkIGdpdCBjaGVja291dCBtYXN0ZXIKICQgZ2l0IGNoZXJyeS1waWNrIHYyLjYuMTQuLnByaXZhdGUyLjYuMTQgPDI+CkBAIC0yNzQsMTQgKzI3MywxNCBAQAogJiBzIDIgMyA0IDUgLi8rdG8tYXBwbHkKICYgcyA3IDggLi8raG9sZC1saW51cwogJiBxCi0kIGdpdCBjaGVja291dCAtYiB0b3BpYy9vbmUgbWFzdGVyCiskIGdpdCBzd2l0Y2ggLWMgdG9waWMvb25lIG1hc3RlcgogJCBnaXQgYW0gLTMgLWkgLXMgLi8rdG8tYXBwbHkgPDQ+CiAkIGNvbXBpbGUvdGVzdAotJCBnaXQgY2hlY2tvdXQgLWIgaG9sZC9saW51cyAmJiBnaXQgYW0gLTMgLWkgLXMgLi8raG9sZC1saW51cyA8NT4KLSQgZ2l0IGNoZWNrb3V0IHRvcGljL29uZSAmJiBnaXQgcmViYXNlIG1hc3RlciA8Nj4KLSQgZ2l0IGNoZWNrb3V0IHB1ICYmIGdpdCByZXNldCAtLWhhcmQgbmV4dCA8Nz4KKyQgZ2l0IHN3aXRjaCAtYyBob2xkL2xpbnVzICYmIGdpdCBhbSAtMyAtaSAtcyAuLytob2xkLWxpbnVzIDw1PgorJCBnaXQgc3dpdGNoIHRvcGljL29uZSAmJiBnaXQgcmViYXNlIG1hc3RlciA8Nj4KKyQgZ2l0IHN3aXRjaCAtQyBwdSBuZXh0IDw3PgogJCBnaXQgbWVyZ2UgdG9waWMvb25lIHRvcGljL3R3byAmJiBnaXQgbWVyZ2UgaG9sZC9saW51cyA8OD4KLSQgZ2l0IGNoZWNrb3V0IG1haW50CiskIGdpdCBzd2l0Y2ggbWFpbnQKICQgZ2l0IGNoZXJyeS1waWNrIG1hc3Rlcn40IDw5PgogJCBjb21waWxlL3Rlc3QKICQgZ2l0IHRhZyAtcyAtbSAiR0lUIDAuOTkuOXgiIHYwLjk5Ljl4IDwxMD4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0aG9va3MudHh0IGIvRG9jdW1lbnRhdGlvbi9naXRob29rcy50eHQKaW5kZXggOTU5MDQ0My4uM2RjY2FiNSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXRob29rcy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXRob29rcy50eHQKQEAgLTk5LDYgKzk5LDMyIEBACiB2YXJpYWJsZSBgR0lUX0VESVRPUj06YCBpZiB0aGUgY29tbWFuZCB3aWxsIG5vdCBicmluZyB1cCBhbiBlZGl0b3IKIHRvIG1vZGlmeSB0aGUgY29tbWl0IG1lc3NhZ2UuCiAKK1RoZSBkZWZhdWx0ICdwcmUtY29tbWl0JyBob29rLCB3aGVuIGVuYWJsZWQtLWFuZCB3aXRoIHRoZQorYGhvb2tzLmFsbG93bm9uYXNjaWlgIGNvbmZpZyBvcHRpb24gdW5zZXQgb3Igc2V0IHRvIGZhbHNlLS1wcmV2ZW50cwordGhlIHVzZSBvZiBub24tQVNDSUkgZmlsZW5hbWVzLgorCitwcmUtbWVyZ2UtY29tbWl0Cit+fn5+fn5+fn5+fn5+fn5+CisKK1RoaXMgaG9vayBpcyBpbnZva2VkIGJ5IGxpbmtnaXQ6Z2l0LW1lcmdlWzFdLCBhbmQgY2FuIGJlIGJ5cGFzc2VkCit3aXRoIHRoZSBgLS1uby12ZXJpZnlgIG9wdGlvbi4gIEl0IHRha2VzIG5vIHBhcmFtZXRlcnMsIGFuZCBpcworaW52b2tlZCBhZnRlciB0aGUgbWVyZ2UgaGFzIGJlZW4gY2FycmllZCBvdXQgc3VjY2Vzc2Z1bGx5IGFuZCBiZWZvcmUKK29idGFpbmluZyB0aGUgcHJvcG9zZWQgY29tbWl0IGxvZyBtZXNzYWdlIHRvCittYWtlIGEgY29tbWl0LiAgRXhpdGluZyB3aXRoIGEgbm9uLXplcm8gc3RhdHVzIGZyb20gdGhpcyBzY3JpcHQKK2NhdXNlcyB0aGUgYGdpdCBtZXJnZWAgY29tbWFuZCB0byBhYm9ydCBiZWZvcmUgY3JlYXRpbmcgYSBjb21taXQuCisKK1RoZSBkZWZhdWx0ICdwcmUtbWVyZ2UtY29tbWl0JyBob29rLCB3aGVuIGVuYWJsZWQsIHJ1bnMgdGhlCisncHJlLWNvbW1pdCcgaG9vaywgaWYgdGhlIGxhdHRlciBpcyBlbmFibGVkLgorCitUaGlzIGhvb2sgaXMgaW52b2tlZCB3aXRoIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZQorYEdJVF9FRElUT1I9OmAgaWYgdGhlIGNvbW1hbmQgd2lsbCBub3QgYnJpbmcgdXAgYW4gZWRpdG9yCit0byBtb2RpZnkgdGhlIGNvbW1pdCBtZXNzYWdlLgorCitJZiB0aGUgbWVyZ2UgY2Fubm90IGJlIGNhcnJpZWQgb3V0IGF1dG9tYXRpY2FsbHksIHRoZSBjb25mbGljdHMKK25lZWQgdG8gYmUgcmVzb2x2ZWQgYW5kIHRoZSByZXN1bHQgY29tbWl0dGVkIHNlcGFyYXRlbHkgKHNlZQorbGlua2dpdDpnaXQtbWVyZ2VbMV0pLiBBdCB0aGF0IHBvaW50LCB0aGlzIGhvb2sgd2lsbCBub3QgYmUgZXhlY3V0ZWQsCitidXQgdGhlICdwcmUtY29tbWl0JyBob29rIHdpbGwsIGlmIGl0IGlzIGVuYWJsZWQuCisKIHByZXBhcmUtY29tbWl0LW1zZwogfn5+fn5+fn5+fn5+fn5+fn5+CiAKQEAgLTE2MSwxMiArMTg3LDEzIEBACiBwb3N0LWNoZWNrb3V0CiB+fn5+fn5+fn5+fn5+CiAKLVRoaXMgaG9vayBpcyBpbnZva2VkIHdoZW4gYSBsaW5rZ2l0OmdpdC1jaGVja291dFsxXSBpcyBydW4gYWZ0ZXIgaGF2aW5nIHVwZGF0ZWQgdGhlCitUaGlzIGhvb2sgaXMgaW52b2tlZCB3aGVuIGEgbGlua2dpdDpnaXQtY2hlY2tvdXRbMV0gb3IKK2xpbmtnaXQ6Z2l0LXN3aXRjaFsxXSBpcyBydW4gYWZ0ZXIgaGF2aW5nIHVwZGF0ZWQgdGhlCiB3b3JrdHJlZS4gIFRoZSBob29rIGlzIGdpdmVuIHRocmVlIHBhcmFtZXRlcnM6IHRoZSByZWYgb2YgdGhlIHByZXZpb3VzIEhFQUQsCiB0aGUgcmVmIG9mIHRoZSBuZXcgSEVBRCAod2hpY2ggbWF5IG9yIG1heSBub3QgaGF2ZSBjaGFuZ2VkKSwgYW5kIGEgZmxhZwogaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBjaGVja291dCB3YXMgYSBicmFuY2ggY2hlY2tvdXQgKGNoYW5naW5nIGJyYW5jaGVzLAogZmxhZz0xKSBvciBhIGZpbGUgY2hlY2tvdXQgKHJldHJpZXZpbmcgYSBmaWxlIGZyb20gdGhlIGluZGV4LCBmbGFnPTApLgotVGhpcyBob29rIGNhbm5vdCBhZmZlY3QgdGhlIG91dGNvbWUgb2YgYGdpdCBjaGVja291dGAuCitUaGlzIGhvb2sgY2Fubm90IGFmZmVjdCB0aGUgb3V0Y29tZSBvZiBgZ2l0IHN3aXRjaGAgb3IgYGdpdCBjaGVja291dGAuCiAKIEl0IGlzIGFsc28gcnVuIGFmdGVyIGxpbmtnaXQ6Z2l0LWNsb25lWzFdLCB1bmxlc3MgdGhlIGAtLW5vLWNoZWNrb3V0YCAoYC1uYCkgb3B0aW9uIGlzCiB1c2VkLiBUaGUgZmlyc3QgcGFyYW1ldGVyIGdpdmVuIHRvIHRoZSBob29rIGlzIHRoZSBudWxsLXJlZiwgdGhlIHNlY29uZCB0aGUKQEAgLTQwMiw3ICs0MjksOCBAQAogRm9yIGV4YW1wbGUsIHRoZSBob29rIGNhbiBzaW1wbHkgcnVuIGBnaXQgcmVhZC10cmVlIC11IC1tIEhFQUQgIiQxImAKIGluIG9yZGVyIHRvIGVtdWxhdGUgYGdpdCBmZXRjaGAgdGhhdCBpcyBydW4gaW4gdGhlIHJldmVyc2UgZGlyZWN0aW9uCiB3aXRoIGBnaXQgcHVzaGAsIGFzIHRoZSB0d28tdHJlZSBmb3JtIG9mIGBnaXQgcmVhZC10cmVlIC11IC1tYCBpcwotZXNzZW50aWFsbHkgdGhlIHNhbWUgYXMgYGdpdCBjaGVja291dGAgdGhhdCBzd2l0Y2hlcyBicmFuY2hlcyB3aGlsZQorZXNzZW50aWFsbHkgdGhlIHNhbWUgYXMgYGdpdCBzd2l0Y2hgIG9yIGBnaXQgY2hlY2tvdXRgCit0aGF0IHN3aXRjaGVzIGJyYW5jaGVzIHdoaWxlCiBrZWVwaW5nIHRoZSBsb2NhbCBjaGFuZ2VzIGluIHRoZSB3b3JraW5nIHRyZWUgdGhhdCBkbyBub3QgaW50ZXJmZXJlCiB3aXRoIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIGJyYW5jaGVzLgogCkBAIC00MTksMTAgKzQ0NywxMiBAQAogCiBUaGlzIGhvb2sgaXMgaW52b2tlZCBieSBjb21tYW5kcyB0aGF0IHJld3JpdGUgY29tbWl0cwogKGxpbmtnaXQ6Z2l0LWNvbW1pdFsxXSB3aGVuIGNhbGxlZCB3aXRoIGAtLWFtZW5kYCBhbmQKLWxpbmtnaXQ6Z2l0LXJlYmFzZVsxXTsgY3VycmVudGx5IGBnaXQgZmlsdGVyLWJyYW5jaGAgZG9lcyAnbm90JyBjYWxsCi1pdCEpLiAgSXRzIGZpcnN0IGFyZ3VtZW50IGRlbm90ZXMgdGhlIGNvbW1hbmQgaXQgd2FzIGludm9rZWQgYnk6Ci1jdXJyZW50bHkgb25lIG9mIGBhbWVuZGAgb3IgYHJlYmFzZWAuICBGdXJ0aGVyIGNvbW1hbmQtZGVwZW5kZW50Ci1hcmd1bWVudHMgbWF5IGJlIHBhc3NlZCBpbiB0aGUgZnV0dXJlLgorbGlua2dpdDpnaXQtcmViYXNlWzFdOyBob3dldmVyLCBmdWxsLWhpc3RvcnkgKHJlKXdyaXRpbmcgdG9vbHMgbGlrZQorbGlua2dpdDpnaXQtZmFzdC1pbXBvcnRbMV0gb3IKK2h0dHBzOi8vZ2l0aHViLmNvbS9uZXdyZW4vZ2l0LWZpbHRlci1yZXBvW2dpdC1maWx0ZXItcmVwb10gdHlwaWNhbGx5CitkbyBub3QgY2FsbCBpdCEpLiAgSXRzIGZpcnN0IGFyZ3VtZW50IGRlbm90ZXMgdGhlIGNvbW1hbmQgaXQgd2FzCitpbnZva2VkIGJ5OiBjdXJyZW50bHkgb25lIG9mIGBhbWVuZGAgb3IgYHJlYmFzZWAuICBGdXJ0aGVyCitjb21tYW5kLWRlcGVuZGVudCBhcmd1bWVudHMgbWF5IGJlIHBhc3NlZCBpbiB0aGUgZnV0dXJlLgogCiBUaGUgaG9vayByZWNlaXZlcyBhIGxpc3Qgb2YgdGhlIHJld3JpdHRlbiBjb21taXRzIG9uIHN0ZGluLCBpbiB0aGUKIGZvcm1hdApAQCAtNDYwLDkgKzQ5MCwxNiBAQAogfn5+fn5+fn5+fn5+fn5+fn5+CiAKIFRoaXMgaG9vayBpcyBpbnZva2VkIHdoZW4gdGhlIGNvbmZpZ3VyYXRpb24gb3B0aW9uIGBjb3JlLmZzbW9uaXRvcmAgaXMKLXNldCB0byBgLmdpdC9ob29rcy9mc21vbml0b3Itd2F0Y2htYW5gLiAgSXQgdGFrZXMgdHdvIGFyZ3VtZW50cywgYSB2ZXJzaW9uCi0oY3VycmVudGx5IDEpIGFuZCB0aGUgdGltZSBpbiBlbGFwc2VkIG5hbm9zZWNvbmRzIHNpbmNlIG1pZG5pZ2h0LAotSmFudWFyeSAxLCAxOTcwLgorc2V0IHRvIGAuZ2l0L2hvb2tzL2ZzbW9uaXRvci13YXRjaG1hbmAgb3IgYC5naXQvaG9va3MvZnNtb25pdG9yLXdhdGNobWFudjJgCitkZXBlbmRpbmcgb24gdGhlIHZlcnNpb24gb2YgdGhlIGhvb2sgdG8gdXNlLgorCitWZXJzaW9uIDEgdGFrZXMgdHdvIGFyZ3VtZW50cywgYSB2ZXJzaW9uICgxKSBhbmQgdGhlIHRpbWUgaW4gZWxhcHNlZAorbmFub3NlY29uZHMgc2luY2UgbWlkbmlnaHQsIEphbnVhcnkgMSwgMTk3MC4KKworVmVyc2lvbiAyIHRha2VzIHR3byBhcmd1bWVudHMsIGEgdmVyc2lvbiAoMikgYW5kIGEgdG9rZW4gdGhhdCBpcyB1c2VkCitmb3IgaWRlbnRpZnlpbmcgY2hhbmdlcyBzaW5jZSB0aGUgdG9rZW4uIEZvciB3YXRjaG1hbiB0aGlzIHdvdWxkIGJlCithIGNsb2NrIGlkLiBUaGlzIHZlcnNpb24gbXVzdCBvdXRwdXQgdG8gc3Rkb3V0IHRoZSBuZXcgdG9rZW4gZm9sbG93ZWQKK2J5IGEgTlVMIGJlZm9yZSB0aGUgbGlzdCBvZiBmaWxlcy4KIAogVGhlIGhvb2sgc2hvdWxkIG91dHB1dCB0byBzdGRvdXQgdGhlIGxpc3Qgb2YgYWxsIGZpbGVzIGluIHRoZSB3b3JraW5nCiBkaXJlY3RvcnkgdGhhdCBtYXkgaGF2ZSBjaGFuZ2VkIHNpbmNlIHRoZSByZXF1ZXN0ZWQgdGltZS4gIFRoZSBsb2dpYwpAQCAtNDkyLDYgKzUyOSwyNCBAQAogZnJvbSBzdGFuZGFyZCBpbnB1dC4gRXhpdGluZyB3aXRoIG5vbi16ZXJvIHN0YXR1cyBmcm9tIHRoaXMgc2NyaXB0IHByZXZlbnQKIGBnaXQtcDQgc3VibWl0YCBmcm9tIGxhdW5jaGluZy4gUnVuIGBnaXQtcDQgc3VibWl0IC0taGVscGAgZm9yIGRldGFpbHMuCiAKK3Bvc3QtaW5kZXgtY2hhbmdlCit+fn5+fn5+fn5+fn5+fn5+fgorCitUaGlzIGhvb2sgaXMgaW52b2tlZCB3aGVuIHRoZSBpbmRleCBpcyB3cml0dGVuIGluIHJlYWQtY2FjaGUuYworZG9fd3JpdGVfbG9ja2VkX2luZGV4LgorCitUaGUgZmlyc3QgcGFyYW1ldGVyIHBhc3NlZCB0byB0aGUgaG9vayBpcyB0aGUgaW5kaWNhdG9yIGZvciB0aGUKK3dvcmtpbmcgZGlyZWN0b3J5IGJlaW5nIHVwZGF0ZWQuICAiMSIgbWVhbmluZyB3b3JraW5nIGRpcmVjdG9yeQord2FzIHVwZGF0ZWQgb3IgIjAiIHdoZW4gdGhlIHdvcmtpbmcgZGlyZWN0b3J5IHdhcyBub3QgdXBkYXRlZC4KKworVGhlIHNlY29uZCBwYXJhbWV0ZXIgcGFzc2VkIHRvIHRoZSBob29rIGlzIHRoZSBpbmRpY2F0b3IgZm9yIHdoZXRoZXIKK29yIG5vdCB0aGUgaW5kZXggd2FzIHVwZGF0ZWQgYW5kIHRoZSBza2lwLXdvcmt0cmVlIGJpdCBjb3VsZCBoYXZlCitjaGFuZ2VkLiAgIjEiIG1lYW5pbmcgc2tpcC13b3JrdHJlZSBiaXRzIGNvdWxkIGhhdmUgYmVlbiB1cGRhdGVkCithbmQgIjAiIG1lYW5pbmcgdGhleSB3ZXJlIG5vdC4KKworT25seSBvbmUgcGFyYW1ldGVyIHNob3VsZCBiZSBzZXQgdG8gIjEiIHdoZW4gdGhlIGhvb2sgcnVucy4gIFRoZSBob29rCitydW5uaW5nIHBhc3NpbmcgIjEiLCAiMSIgc2hvdWxkIG5vdCBiZSBwb3NzaWJsZS4KKwogR0lUCiAtLS0KIFBhcnQgb2YgdGhlIGxpbmtnaXQ6Z2l0WzFdIHN1aXRlCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdGlnbm9yZS50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdGlnbm9yZS50eHQKaW5kZXggMWM5NGYwOC4uZDQ3YjFhZSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXRpZ25vcmUudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0aWdub3JlLnR4dApAQCAtODksMjggKzg5LDI4IEBACiAgICBQdXQgYSBiYWNrc2xhc2ggKCJgXGAiKSBpbiBmcm9udCBvZiB0aGUgZmlyc3QgImAhYCIgZm9yIHBhdHRlcm5zCiAgICB0aGF0IGJlZ2luIHdpdGggYSBsaXRlcmFsICJgIWAiLCBmb3IgZXhhbXBsZSwgImBcIWltcG9ydGFudCEudHh0YCIuCiAKLSAtIElmIHRoZSBwYXR0ZXJuIGVuZHMgd2l0aCBhIHNsYXNoLCBpdCBpcyByZW1vdmVkIGZvciB0aGUKLSAgIHB1cnBvc2Ugb2YgdGhlIGZvbGxvd2luZyBkZXNjcmlwdGlvbiwgYnV0IGl0IHdvdWxkIG9ubHkgZmluZAotICAgYSBtYXRjaCB3aXRoIGEgZGlyZWN0b3J5LiAgSW4gb3RoZXIgd29yZHMsIGBmb28vYCB3aWxsIG1hdGNoIGEKLSAgIGRpcmVjdG9yeSBgZm9vYCBhbmQgcGF0aHMgdW5kZXJuZWF0aCBpdCwgYnV0IHdpbGwgbm90IG1hdGNoIGEKLSAgIHJlZ3VsYXIgZmlsZSBvciBhIHN5bWJvbGljIGxpbmsgYGZvb2AgKHRoaXMgaXMgY29uc2lzdGVudAotICAgd2l0aCB0aGUgd2F5IGhvdyBwYXRoc3BlYyB3b3JrcyBpbiBnZW5lcmFsIGluIEdpdCkuCisgLSBUaGUgc2xhc2ggJy8nIGlzIHVzZWQgYXMgdGhlIGRpcmVjdG9yeSBzZXBhcmF0b3IuIFNlcGFyYXRvcnMgbWF5CisgICBvY2N1ciBhdCB0aGUgYmVnaW5uaW5nLCBtaWRkbGUgb3IgZW5kIG9mIHRoZSBgLmdpdGlnbm9yZWAgc2VhcmNoIHBhdHRlcm4uCiAKLSAtIElmIHRoZSBwYXR0ZXJuIGRvZXMgbm90IGNvbnRhaW4gYSBzbGFzaCAnLycsIEdpdCB0cmVhdHMgaXQgYXMKLSAgIGEgc2hlbGwgZ2xvYiBwYXR0ZXJuIGFuZCBjaGVja3MgZm9yIGEgbWF0Y2ggYWdhaW5zdCB0aGUKLSAgIHBhdGhuYW1lIHJlbGF0aXZlIHRvIHRoZSBsb2NhdGlvbiBvZiB0aGUgYC5naXRpZ25vcmVgIGZpbGUKLSAgIChyZWxhdGl2ZSB0byB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmsgdHJlZSBpZiBub3QgZnJvbSBhCi0gICBgLmdpdGlnbm9yZWAgZmlsZSkuCisgLSBJZiB0aGVyZSBpcyBhIHNlcGFyYXRvciBhdCB0aGUgYmVnaW5uaW5nIG9yIG1pZGRsZSAob3IgYm90aCkgb2YgdGhlCisgICBwYXR0ZXJuLCB0aGVuIHRoZSBwYXR0ZXJuIGlzIHJlbGF0aXZlIHRvIHRoZSBkaXJlY3RvcnkgbGV2ZWwgb2YgdGhlCisgICBwYXJ0aWN1bGFyIGAuZ2l0aWdub3JlYCBmaWxlIGl0c2VsZi4gT3RoZXJ3aXNlIHRoZSBwYXR0ZXJuIG1heSBhbHNvCisgICBtYXRjaCBhdCBhbnkgbGV2ZWwgYmVsb3cgdGhlIGAuZ2l0aWdub3JlYCBsZXZlbC4KIAotIC0gT3RoZXJ3aXNlLCBHaXQgdHJlYXRzIHRoZSBwYXR0ZXJuIGFzIGEgc2hlbGwgZ2xvYjogImAqYCIgbWF0Y2hlcwotICAgYW55dGhpbmcgZXhjZXB0ICJgL2AiLCAiYD9gIiBtYXRjaGVzIGFueSBvbmUgY2hhcmFjdGVyIGV4Y2VwdCAiYC9gIgotICAgYW5kICJgW11gIiBtYXRjaGVzIG9uZSBjaGFyYWN0ZXIgaW4gYSBzZWxlY3RlZCByYW5nZS4gU2VlCi0gICBmbm1hdGNoKDMpIGFuZCB0aGUgRk5NX1BBVEhOQU1FIGZsYWcgZm9yIGEgbW9yZSBkZXRhaWxlZAotICAgZGVzY3JpcHRpb24uCisgLSBJZiB0aGVyZSBpcyBhIHNlcGFyYXRvciBhdCB0aGUgZW5kIG9mIHRoZSBwYXR0ZXJuIHRoZW4gdGhlIHBhdHRlcm4KKyAgIHdpbGwgb25seSBtYXRjaCBkaXJlY3Rvcmllcywgb3RoZXJ3aXNlIHRoZSBwYXR0ZXJuIGNhbiBtYXRjaCBib3RoCisgICBmaWxlcyBhbmQgZGlyZWN0b3JpZXMuCiAKLSAtIEEgbGVhZGluZyBzbGFzaCBtYXRjaGVzIHRoZSBiZWdpbm5pbmcgb2YgdGhlIHBhdGhuYW1lLgotICAgRm9yIGV4YW1wbGUsICIve2FzdGVyaXNrfS5jIiBtYXRjaGVzICJjYXQtZmlsZS5jIiBidXQgbm90Ci0gICAibW96aWxsYS1zaGExL3NoYTEuYyIuCisgLSBGb3IgZXhhbXBsZSwgYSBwYXR0ZXJuIGBkb2MvZnJvdHovYCBtYXRjaGVzIGBkb2MvZnJvdHpgIGRpcmVjdG9yeSwKKyAgIGJ1dCBub3QgYGEvZG9jL2Zyb3R6YCBkaXJlY3Rvcnk7IGhvd2V2ZXIgYGZyb3R6L2AgbWF0Y2hlcyBgZnJvdHpgCisgICBhbmQgYGEvZnJvdHpgIHRoYXQgaXMgYSBkaXJlY3RvcnkgKGFsbCBwYXRocyBhcmUgcmVsYXRpdmUgZnJvbQorICAgdGhlIGAuZ2l0aWdub3JlYCBmaWxlKS4KKworIC0gQW4gYXN0ZXJpc2sgImAqYCIgbWF0Y2hlcyBhbnl0aGluZyBleGNlcHQgYSBzbGFzaC4KKyAgIFRoZSBjaGFyYWN0ZXIgImA/YCIgbWF0Y2hlcyBhbnkgb25lIGNoYXJhY3RlciBleGNlcHQgImAvYCIuCisgICBUaGUgcmFuZ2Ugbm90YXRpb24sIGUuZy4gYFthLXpBLVpdYCwgY2FuIGJlIHVzZWQgdG8gbWF0Y2gKKyAgIG9uZSBvZiB0aGUgY2hhcmFjdGVycyBpbiBhIHJhbmdlLiBTZWUgZm5tYXRjaCgzKSBhbmQgdGhlCisgICBGTk1fUEFUSE5BTUUgZmxhZyBmb3IgYSBtb3JlIGRldGFpbGVkIGRlc2NyaXB0aW9uLgogCiBUd28gY29uc2VjdXRpdmUgYXN0ZXJpc2tzICgiYCoqYCIpIGluIHBhdHRlcm5zIG1hdGNoZWQgYWdhaW5zdAogZnVsbCBwYXRobmFtZSBtYXkgaGF2ZSBzcGVjaWFsIG1lYW5pbmc6CkBAIC0xMzIsNiArMTMyLDE0IEBACiAgLSBPdGhlciBjb25zZWN1dGl2ZSBhc3Rlcmlza3MgYXJlIGNvbnNpZGVyZWQgcmVndWxhciBhc3Rlcmlza3MgYW5kCiAgICB3aWxsIG1hdGNoIGFjY29yZGluZyB0byB0aGUgcHJldmlvdXMgcnVsZXMuCiAKK0NPTkZJR1VSQVRJT04KKy0tLS0tLS0tLS0tLS0KKworVGhlIG9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYGNvcmUuZXhjbHVkZXNGaWxlYCBpbmRpY2F0ZXMgYSBwYXRoIHRvIGEKK2ZpbGUgY29udGFpbmluZyBwYXR0ZXJucyBvZiBmaWxlIG5hbWVzIHRvIGV4Y2x1ZGUsIHNpbWlsYXIgdG8KK2AkR0lUX0RJUi9pbmZvL2V4Y2x1ZGVgLiAgUGF0dGVybnMgaW4gdGhlIGV4Y2x1ZGUgZmlsZSBhcmUgdXNlZCBpbiBhZGRpdGlvbiB0bwordGhvc2UgaW4gYCRHSVRfRElSL2luZm8vZXhjbHVkZWAuCisKIE5PVEVTCiAtLS0tLQogCkBAIC0xNDQsNiArMTUyLDI4IEBACiBFWEFNUExFUwogLS0tLS0tLS0KIAorIC0gVGhlIHBhdHRlcm4gYGhlbGxvLipgIG1hdGNoZXMgYW55IGZpbGUgb3IgZm9sZGVyCisgICB3aG9zZSBuYW1lIGJlZ2lucyB3aXRoIGBoZWxsb2AuIElmIG9uZSB3YW50cyB0byByZXN0cmljdAorICAgdGhpcyBvbmx5IHRvIHRoZSBkaXJlY3RvcnkgYW5kIG5vdCBpbiBpdHMgc3ViZGlyZWN0b3JpZXMsCisgICBvbmUgY2FuIHByZXBlbmQgdGhlIHBhdHRlcm4gd2l0aCBhIHNsYXNoLCBpLmUuIGAvaGVsbG8uKmA7CisgICB0aGUgcGF0dGVybiBub3cgbWF0Y2hlcyBgaGVsbG8udHh0YCwgYGhlbGxvLmNgIGJ1dCBub3QKKyAgIGBhL2hlbGxvLmphdmFgLgorCisgLSBUaGUgcGF0dGVybiBgZm9vL2Agd2lsbCBtYXRjaCBhIGRpcmVjdG9yeSBgZm9vYCBhbmQKKyAgIHBhdGhzIHVuZGVybmVhdGggaXQsIGJ1dCB3aWxsIG5vdCBtYXRjaCBhIHJlZ3VsYXIgZmlsZQorICAgb3IgYSBzeW1ib2xpYyBsaW5rIGBmb29gICh0aGlzIGlzIGNvbnNpc3RlbnQgd2l0aCB0aGUKKyAgIHdheSBob3cgcGF0aHNwZWMgd29ya3MgaW4gZ2VuZXJhbCBpbiBHaXQpCisKKyAtIFRoZSBwYXR0ZXJuIGBkb2MvZnJvdHpgIGFuZCBgL2RvYy9mcm90emAgaGF2ZSB0aGUgc2FtZSBlZmZlY3QKKyAgIGluIGFueSBgLmdpdGlnbm9yZWAgZmlsZS4gSW4gb3RoZXIgd29yZHMsIGEgbGVhZGluZyBzbGFzaAorICAgaXMgbm90IHJlbGV2YW50ICBpZiB0aGVyZSBpcyBhbHJlYWR5IGEgbWlkZGxlIHNsYXNoIGluCisgICB0aGUgcGF0dGVybi4KKworIC0gVGhlIHBhdHRlcm4gImZvby8qIiwgbWF0Y2hlcyAiZm9vL3Rlc3QuanNvbiIKKyAgIChhIHJlZ3VsYXIgZmlsZSksICJmb28vYmFyIiAoYSBkaXJlY3RvcnkpLCBidXQgaXQgZG9lcyBub3QgbWF0Y2gKKyAgICJmb28vYmFyL2hlbGxvLmMiIChhIHJlZ3VsYXIgZmlsZSksIGFzIHRoZSBhc3RlcmlzayBpbiB0aGUKKyAgIHBhdHRlcm4gZG9lcyBub3QgbWF0Y2ggImJhci9oZWxsby5jIiB3aGljaCBoYXMgYSBzbGFzaCBpbiBpdC4KKwogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICAkIGdpdCBzdGF0dXMKICAgICBbLi4uXQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXRrLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0ay50eHQKaW5kZXggMjQ0Y2QwMS4uYzY1M2ViYiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXRrLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdGsudHh0CkBAIC0xMDUsOCArMTA1LDEyIEBACiAJKG9yIHRoZSBmdW5jdGlvbiBuYW1lIHJlZ2V4IDxmdW5jbmFtZT4pIHdpdGhpbiB0aGUgPGZpbGU+LiAgWW91IG1heQogCW5vdCBnaXZlIGFueSBwYXRoc3BlYyBsaW1pdGVycy4gIFRoaXMgaXMgY3VycmVudGx5IGxpbWl0ZWQgdG8KIAlhIHdhbGsgc3RhcnRpbmcgZnJvbSBhIHNpbmdsZSByZXZpc2lvbiwgaS5lLiwgeW91IG1heSBvbmx5Ci0JZ2l2ZSB6ZXJvIG9yIG9uZSBwb3NpdGl2ZSByZXZpc2lvbiBhcmd1bWVudHMuCi0JWW91IGNhbiBzcGVjaWZ5IHRoaXMgb3B0aW9uIG1vcmUgdGhhbiBvbmNlLgorCWdpdmUgemVybyBvciBvbmUgcG9zaXRpdmUgcmV2aXNpb24gYXJndW1lbnRzLCBhbmQKKwk8c3RhcnQ+IGFuZCA8ZW5kPiAob3IgPGZ1bmNuYW1lPikgbXVzdCBleGlzdCBpbiB0aGUgc3RhcnRpbmcgcmV2aXNpb24uCisJWW91IGNhbiBzcGVjaWZ5IHRoaXMgb3B0aW9uIG1vcmUgdGhhbiBvbmNlLiBJbXBsaWVzIGAtLXBhdGNoYC4KKwlQYXRjaCBvdXRwdXQgY2FuIGJlIHN1cHByZXNzZWQgdXNpbmcgYC0tbm8tcGF0Y2hgLCBidXQgb3RoZXIgZGlmZiBmb3JtYXRzCisJKG5hbWVseSBgLS1yYXdgLCBgLS1udW1zdGF0YCwgYC0tc2hvcnRzdGF0YCwgYC0tZGlyc3RhdGAsIGAtLXN1bW1hcnlgLAorCWAtLW5hbWUtb25seWAsIGAtLW5hbWUtc3RhdHVzYCwgYC0tY2hlY2tgKSBhcmUgbm90IGN1cnJlbnRseSBpbXBsZW1lbnRlZC4KICsKICpOb3RlOiogZ2l0ayAodW5saWtlIGxpbmtnaXQ6Z2l0LWxvZ1sxXSkgY3VycmVudGx5IG9ubHkgdW5kZXJzdGFuZHMKIHRoaXMgb3B0aW9uIGlmIHlvdSBzcGVjaWZ5IGl0ICJnbHVlZCB0b2dldGhlciIgd2l0aCBpdHMgYXJndW1lbnQuICBEbwpAQCAtMTY4LDEyICsxNzIsMTIgQEAKIC0tLS0tCiBVc2VyIGNvbmZpZ3VyYXRpb24gYW5kIHByZWZlcmVuY2VzIGFyZSBzdG9yZWQgYXQ6CiAKLSogJyRYREdfQ09ORklHX0hPTUUvZ2l0L2dpdGsnIGlmIGl0IGV4aXN0cywgb3RoZXJ3aXNlCi0qICckSE9NRS8uZ2l0aycgaWYgaXQgZXhpc3RzCisqIGAkWERHX0NPTkZJR19IT01FL2dpdC9naXRrYCBpZiBpdCBleGlzdHMsIG90aGVyd2lzZQorKiBgJEhPTUUvLmdpdGtgIGlmIGl0IGV4aXN0cwogCi1JZiBuZWl0aGVyIG9mIHRoZSBhYm92ZSBleGlzdCB0aGVuICckWERHX0NPTkZJR19IT01FL2dpdC9naXRrJyBpcyBjcmVhdGVkIGFuZAorSWYgbmVpdGhlciBvZiB0aGUgYWJvdmUgZXhpc3QgdGhlbiBgJFhER19DT05GSUdfSE9NRS9naXQvZ2l0a2AgaXMgY3JlYXRlZCBhbmQKIHVzZWQgYnkgZGVmYXVsdC4gSWYgJyRYREdfQ09ORklHX0hPTUUnIGlzIG5vdCBzZXQgaXQgZGVmYXVsdHMgdG8KLSckSE9NRS8uY29uZmlnJyBpbiBhbGwgY2FzZXMuCitgJEhPTUUvLmNvbmZpZ2AgaW4gYWxsIGNhc2VzLgogCiBIaXN0b3J5CiAtLS0tLS0tCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdG1vZHVsZXMudHh0IGIvRG9jdW1lbnRhdGlvbi9naXRtb2R1bGVzLnR4dAppbmRleCAxNjQ5OTVkLi42NzI3NWZkIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdG1vZHVsZXMudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0bW9kdWxlcy50eHQKQEAgLTgwLDcgKzgwLDcgQEAKIAkgICAgQ29tbWl0dGVkIGRpZmZlcmVuY2VzIGFuZCBtb2RpZmljYXRpb25zIHRvIHRyYWNrZWQgZmlsZXMgd2lsbCBzaG93CiAJICAgIHVwLgogCi0Jbm9uZTs7IE5vIG1vZGlmaWF0aW9ucyB0byBzdWJtb2R1bGVzIGFyZSBpZ25vcmVkLCBhbGwgb2YgY29tbWl0dGVkCisJbm9uZTs7IE5vIG1vZGlmaWNhdGlvbnMgdG8gc3VibW9kdWxlcyBhcmUgaWdub3JlZCwgYWxsIG9mIGNvbW1pdHRlZAogCSAgICBkaWZmZXJlbmNlcywgYW5kIG1vZGlmaWNhdGlvbnMgdG8gdHJhY2tlZCBhbmQgdW50cmFja2VkIGZpbGVzIGFyZQogCSAgICBzaG93bi4gVGhpcyBpcyB0aGUgZGVmYXVsdCBvcHRpb24uCiAKQEAgLTg5LDcgKzg5LDcgQEAKIC5naXRtb2R1bGVzLgogCiBCb3RoIHNldHRpbmdzIGNhbiBiZSBvdmVycmlkZGVuIG9uIHRoZSBjb21tYW5kIGxpbmUgYnkgdXNpbmcgdGhlCi0iLS1pZ25vcmUtc3VibW9kdWxlIiBvcHRpb24uIFRoZSAnZ2l0IHN1Ym1vZHVsZScgY29tbWFuZHMgYXJlIG5vdAorIi0taWdub3JlLXN1Ym1vZHVsZXMiIG9wdGlvbi4gVGhlICdnaXQgc3VibW9kdWxlJyBjb21tYW5kcyBhcmUgbm90CiBhZmZlY3RlZCBieSB0aGlzIHNldHRpbmcuCiAtLQogCkBAIC0xMDQsMjIgKzEwNCwyMyBAQAogCiBDb25zaWRlciB0aGUgZm9sbG93aW5nIC5naXRtb2R1bGVzIGZpbGU6CiAKLQlbc3VibW9kdWxlICJsaWJmb28iXQotCQlwYXRoID0gaW5jbHVkZS9mb28KLQkJdXJsID0gZ2l0Oi8vZm9vLmNvbS9naXQvbGliLmdpdAorLS0tLQorW3N1Ym1vZHVsZSAibGliZm9vIl0KKwlwYXRoID0gaW5jbHVkZS9mb28KKwl1cmwgPSBnaXQ6Ly9mb28uY29tL2dpdC9saWIuZ2l0CiAKLQlbc3VibW9kdWxlICJsaWJiYXIiXQotCQlwYXRoID0gaW5jbHVkZS9iYXIKLQkJdXJsID0gZ2l0Oi8vYmFyLmNvbS9naXQvbGliLmdpdAotCitbc3VibW9kdWxlICJsaWJiYXIiXQorCXBhdGggPSBpbmNsdWRlL2JhcgorCXVybCA9IGdpdDovL2Jhci5jb20vZ2l0L2xpYi5naXQKKy0tLS0KIAogVGhpcyBkZWZpbmVzIHR3byBzdWJtb2R1bGVzLCBgbGliZm9vYCBhbmQgYGxpYmJhcmAuIFRoZXNlIGFyZSBleHBlY3RlZCB0bwotYmUgY2hlY2tlZCBvdXQgaW4gdGhlIHBhdGhzICdpbmNsdWRlL2ZvbycgYW5kICdpbmNsdWRlL2JhcicsIGFuZCBmb3IgYm90aAorYmUgY2hlY2tlZCBvdXQgaW4gdGhlIHBhdGhzIGBpbmNsdWRlL2Zvb2AgYW5kIGBpbmNsdWRlL2JhcmAsIGFuZCBmb3IgYm90aAogc3VibW9kdWxlcyBhIFVSTCBpcyBzcGVjaWZpZWQgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGNsb25pbmcgdGhlIHN1Ym1vZHVsZXMuCiAKIFNFRSBBTFNPCiAtLS0tLS0tLQotbGlua2dpdDpnaXQtc3VibW9kdWxlWzFdIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXQorbGlua2dpdDpnaXQtc3VibW9kdWxlWzFdLCBsaW5rZ2l0OmdpdHN1Ym1vZHVsZXNbN10sIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXQogCiBHSVQKIC0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXRyZW1vdGUtaGVscGVycy50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdHJlbW90ZS1oZWxwZXJzLnR4dAppbmRleCA5ZDE0NTlhLi5mNDhhMDMxIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdHJlbW90ZS1oZWxwZXJzLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdHJlbW90ZS1oZWxwZXJzLnR4dApAQCAtMSw0ICsxLDQgQEAKLWdpdHJlbW90ZS1oZWxwZXJzKDEpCitnaXRyZW1vdGUtaGVscGVycyg3KQogPT09PT09PT09PT09PT09PT09PT0KIAogTkFNRQpAQCAtMjk3LDkgKzI5NywxMyBAQAogCXNhbWUgYmF0Y2ggYXJlIGNvbXBsZXRlLiBPbmx5IG9iamVjdHMgd2hpY2ggd2VyZSByZXBvcnRlZAogCWluIHRoZSBvdXRwdXQgb2YgJ2xpc3QnIHdpdGggYSBzaGExIG1heSBiZSBmZXRjaGVkIHRoaXMgd2F5LgogKwotT3B0aW9uYWxseSBtYXkgb3V0cHV0IGEgJ2xvY2sgPGZpbGU+JyBsaW5lIGluZGljYXRpbmcgYSBmaWxlIHVuZGVyCi1HSVRfRElSL29iamVjdHMvcGFjayB3aGljaCBpcyBrZWVwaW5nIGEgcGFjayB1bnRpbCByZWZzIGNhbiBiZQotc3VpdGFibHkgdXBkYXRlZC4KK09wdGlvbmFsbHkgbWF5IG91dHB1dCBhICdsb2NrIDxmaWxlPicgbGluZSBpbmRpY2F0aW5nIHRoZSBmdWxsIHBhdGggb2YKK2EgZmlsZSB1bmRlciBgJEdJVF9ESVIvb2JqZWN0cy9wYWNrYCB3aGljaCBpcyBrZWVwaW5nIGEgcGFjayB1bnRpbAorcmVmcyBjYW4gYmUgc3VpdGFibHkgdXBkYXRlZC4gIFRoZSBwYXRoIG11c3QgZW5kIHdpdGggYC5rZWVwYC4gVGhpcyBpcworYSBtZWNoYW5pc20gdG8gbmFtZSBhIDxwYWNrLGlkeCxrZWVwPiB0dXBsZSBieSBnaXZpbmcgb25seSB0aGUga2VlcAorY29tcG9uZW50LiAgVGhlIGtlcHQgcGFjayB3aWxsIG5vdCBiZSBkZWxldGVkIGJ5IGEgY29uY3VycmVudCByZXBhY2ssCitldmVuIHRob3VnaCBpdHMgb2JqZWN0cyBtYXkgbm90IGJlIHJlZmVyZW5jZWQgdW50aWwgdGhlIGZldGNoIGNvbXBsZXRlcy4KK1RoZSBgLmtlZXBgIGZpbGUgd2lsbCBiZSBkZWxldGVkIGF0IHRoZSBjb25jbHVzaW9uIG9mIHRoZSBmZXRjaC4KICsKIElmIG9wdGlvbiAnY2hlY2stY29ubmVjdGl2aXR5JyBpcyByZXF1ZXN0ZWQsIHRoZSBoZWxwZXIgbXVzdCBvdXRwdXQKICdjb25uZWN0aXZpdHktb2snIGlmIHRoZSBjbG9uZSBpcyBzZWxmLWNvbnRhaW5lZCBhbmQgY29ubmVjdGVkLgpAQCAtNDY4LDcgKzQ3Miw3IEBACiAKICdvcHRpb24gZHJ5LXJ1bicgeyd0cnVlJ3wnZmFsc2UnfToKIAlJZiB0cnVlLCBwcmV0ZW5kIHRoZSBvcGVyYXRpb24gY29tcGxldGVkIHN1Y2Nlc3NmdWxseSwKLQlidXQgZG9uJ3QgYWN0dWFsbHkgY2hhbmdlIGFueSByZXBvc2l0b3J5IGRhdGEuCUZvciBtb3N0CisJYnV0IGRvbid0IGFjdHVhbGx5IGNoYW5nZSBhbnkgcmVwb3NpdG9yeSBkYXRhLiAgRm9yIG1vc3QKIAloZWxwZXJzIHRoaXMgb25seSBhcHBsaWVzIHRvIHRoZSAncHVzaCcsIGlmIHN1cHBvcnRlZC4KIAogJ29wdGlvbiBzZXJ2cGF0aCA8Yy1zdHlsZS1xdW90ZWQtcGF0aD4nOjoKQEAgLTUwNSw2ICs1MDksMTEgQEAKIAlJbmRpY2F0ZSB0aGF0IG9ubHkgdGhlIG9iamVjdHMgd2FudGVkIG5lZWQgdG8gYmUgZmV0Y2hlZCwgbm90CiAJdGhlaXIgZGVwZW5kZW50cy4KIAorJ29wdGlvbiBhdG9taWMnIHsndHJ1ZSd8J2ZhbHNlJ306OgorCVdoZW4gcHVzaGluZywgcmVxdWVzdCB0aGUgcmVtb3RlIHNlcnZlciB0byB1cGRhdGUgcmVmcyBpbiBhIHNpbmdsZSBhdG9taWMKKwl0cmFuc2FjdGlvbi4gIElmIHN1Y2Nlc3NmdWwsIGFsbCByZWZzIHdpbGwgYmUgdXBkYXRlZCwgb3Igbm9uZSB3aWxsLiAgSWYgdGhlCisJcmVtb3RlIHNpZGUgZG9lcyBub3Qgc3VwcG9ydCB0aGlzIGNhcGFiaWxpdHksIHRoZSBwdXNoIHdpbGwgZmFpbC4KKwogU0VFIEFMU08KIC0tLS0tLS0tCiBsaW5rZ2l0OmdpdC1yZW1vdGVbMV0KQEAgLTUxMyw4ICs1MjIsNiBAQAogCiBsaW5rZ2l0OmdpdC1yZW1vdGUtZmRbMV0KIAotbGlua2dpdDpnaXQtcmVtb3RlLXRlc3RnaXRbMV0KLQogbGlua2dpdDpnaXQtZmFzdC1pbXBvcnRbMV0KIAogR0lUCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdHJlcG9zaXRvcnktbGF5b3V0LnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0cmVwb3NpdG9yeS1sYXlvdXQudHh0CmluZGV4IDM2NmRlZTIuLjFhMmVmNGMgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0cmVwb3NpdG9yeS1sYXlvdXQudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0cmVwb3NpdG9yeS1sYXlvdXQudHh0CkBAIC01OSw3ICs1OSw3IEBACiAJaGVyZSBhcmUgb2Z0ZW4gY2FsbGVkICd1bnBhY2tlZCcgKG9yICdsb29zZScpIG9iamVjdHMuCiAKIG9iamVjdHMvcGFjazo6Ci0JUGFja3MgKGZpbGVzIHRoYXQgc3RvcmUgbWFueSBvYmplY3QgaW4gY29tcHJlc3NlZCBmb3JtLAorCVBhY2tzIChmaWxlcyB0aGF0IHN0b3JlIG1hbnkgb2JqZWN0cyBpbiBjb21wcmVzc2VkIGZvcm0sCiAJYWxvbmcgd2l0aCBpbmRleCBmaWxlcyB0byBhbGxvdyB0aGVtIHRvIGJlIHJhbmRvbWx5CiAJYWNjZXNzZWQpIGFyZSBmb3VuZCBpbiB0aGlzIGRpcmVjdG9yeS4KIApAQCAtODQsNyArODQsNyBAQAogCXRvIHRoZSBvYmplY3QgZGF0YWJhc2UsIG5vdCB0byB0aGUgcmVwb3NpdG9yeSEpIGluIHlvdXIKIAlhbHRlcm5hdGVzIGZpbGUsIGJ1dCBpdCB3aWxsIG5vdCB3b3JrIGlmIHlvdSB1c2UgYWJzb2x1dGUKIAlwYXRocyB1bmxlc3MgdGhlIGFic29sdXRlIHBhdGggaW4gZmlsZXN5c3RlbSBhbmQgd2ViIFVSTAotCWlzIHRoZSBzYW1lLiBTZWUgYWxzbyAnb2JqZWN0cy9pbmZvL2h0dHAtYWx0ZXJuYXRlcycuCisJaXMgdGhlIHNhbWUuIFNlZSBhbHNvIGBvYmplY3RzL2luZm8vaHR0cC1hbHRlcm5hdGVzYC4KIAogb2JqZWN0cy9pbmZvL2h0dHAtYWx0ZXJuYXRlczo6CiAJVGhpcyBmaWxlIHJlY29yZHMgVVJMcyB0byBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlcyB0aGF0CkBAIC05Niw5ICs5Niw5IEBACiAJZGlyZWN0b3J5LiAgVGhlICdnaXQgcHJ1bmUnIGNvbW1hbmQga25vd3MgdG8gcHJlc2VydmUKIAlvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHJlZnMgZm91bmQgaW4gdGhpcyBkaXJlY3RvcnkgYW5kCiAJaXRzIHN1YmRpcmVjdG9yaWVzLgotCVRoaXMgZGlyZWN0b3J5IGlzIGlnbm9yZWQgKGV4Y2VwdCByZWZzL2Jpc2VjdCBhbmQKLQlyZWZzL3dvcmt0cmVlKSBpZiAkR0lUX0NPTU1PTl9ESVIgaXMgc2V0IGFuZAotCSIkR0lUX0NPTU1PTl9ESVIvcmVmcyIgd2lsbCBiZSB1c2VkIGluc3RlYWQuCisJVGhpcyBkaXJlY3RvcnkgaXMgaWdub3JlZCAoZXhjZXB0IHJlZnMvYmlzZWN0LAorCXJlZnMvcmV3cml0dGVuIGFuZCByZWZzL3dvcmt0cmVlKSBpZiAkR0lUX0NPTU1PTl9ESVIgaXMKKwlzZXQgYW5kICIkR0lUX0NPTU1PTl9ESVIvcmVmcyIgd2lsbCBiZSB1c2VkIGluc3RlYWQuCiAKIHJlZnMvaGVhZHMvYG5hbWVgOjoKIAlyZWNvcmRzIHRpcC1vZi10aGUtdHJlZSBjb21taXQgb2JqZWN0cyBvZiBicmFuY2ggYG5hbWVgCkBAIC0yNDAsOCArMjQwLDggQEAKIGxvZ3M6OgogCVJlY29yZHMgb2YgY2hhbmdlcyBtYWRlIHRvIHJlZnMgYXJlIHN0b3JlZCBpbiB0aGlzIGRpcmVjdG9yeS4KIAlTZWUgbGlua2dpdDpnaXQtdXBkYXRlLXJlZlsxXSBmb3IgbW9yZSBpbmZvcm1hdGlvbi4gVGhpcwotCWRpcmVjdG9yeSBpcyBpZ25vcmVkIGlmICRHSVRfQ09NTU9OX0RJUiBpcyBzZXQgYW5kCi0JIiRHSVRfQ09NTU9OX0RJUi9sb2dzIiB3aWxsIGJlIHVzZWQgaW5zdGVhZC4KKwlkaXJlY3RvcnkgaXMgaWdub3JlZCAoZXhjZXB0IGxvZ3MvSEVBRCkgaWYgJEdJVF9DT01NT05fRElSIGlzCisJc2V0IGFuZCAiJEdJVF9DT01NT05fRElSL2xvZ3MiIHdpbGwgYmUgdXNlZCBpbnN0ZWFkLgogCiBsb2dzL3JlZnMvaGVhZHMvYG5hbWVgOjoKIAlSZWNvcmRzIGFsbCBjaGFuZ2VzIG1hZGUgdG8gdGhlIGJyYW5jaCB0aXAgbmFtZWQgYG5hbWVgLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXRzdWJtb2R1bGVzLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0c3VibW9kdWxlcy50eHQKaW5kZXggNTc5OTllOS4uYzQ3NmY4OSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXRzdWJtb2R1bGVzLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdHN1Ym1vZHVsZXMudHh0CkBAIC0zLDcgKzMsNyBAQAogCiBOQU1FCiAtLS0tCi1naXRzdWJtb2R1bGVzIC0gbW91bnRpbmcgb25lIHJlcG9zaXRvcnkgaW5zaWRlIGFub3RoZXIKK2dpdHN1Ym1vZHVsZXMgLSBNb3VudGluZyBvbmUgcmVwb3NpdG9yeSBpbnNpZGUgYW5vdGhlcgogCiBTWU5PUFNJUwogLS0tLS0tLS0KQEAgLTE2OSwxNSArMTY5LDE1IEBACiAKIEEgc3VibW9kdWxlIGlzIGNvbnNpZGVyZWQgYWN0aXZlLAogCi0gIGEuIGlmIGBzdWJtb2R1bGUuPG5hbWU+LmFjdGl2ZWAgaXMgc2V0IHRvIGB0cnVlYAorICAxLiBpZiBgc3VibW9kdWxlLjxuYW1lPi5hY3RpdmVgIGlzIHNldCB0byBgdHJ1ZWAKICsKIG9yCiAKLSAgYi4gaWYgdGhlIHN1Ym1vZHVsZSdzIHBhdGggbWF0Y2hlcyB0aGUgcGF0aHNwZWMgaW4gYHN1Ym1vZHVsZS5hY3RpdmVgCisgIDIuIGlmIHRoZSBzdWJtb2R1bGUncyBwYXRoIG1hdGNoZXMgdGhlIHBhdGhzcGVjIGluIGBzdWJtb2R1bGUuYWN0aXZlYAogKwogb3IKIAotICBjLiBpZiBgc3VibW9kdWxlLjxuYW1lPi51cmxgIGlzIHNldC4KKyAgMy4gaWYgYHN1Ym1vZHVsZS48bmFtZT4udXJsYCBpcyBzZXQuCiAKIGFuZCB0aGVzZSBhcmUgZXZhbHVhdGVkIGluIHRoaXMgb3JkZXIuCiAKQEAgLTE5MywxMSArMTkzLDExIEBACiAgICAgdXJsID0gaHR0cHM6Ly9leGFtcGxlLm9yZy9iYXoKIAogSW4gdGhlIGFib3ZlIGNvbmZpZyBvbmx5IHRoZSBzdWJtb2R1bGUgJ2JhcicgYW5kICdiYXonIGFyZSBhY3RpdmUsCi0nYmFyJyBkdWUgdG8gKGEpIGFuZCAnYmF6JyBkdWUgdG8gKGMpLiAnZm9vJyBpcyBpbmFjdGl2ZSBiZWNhdXNlCi0oYSkgdGFrZXMgcHJlY2VkZW5jZSBvdmVyIChjKQorJ2JhcicgZHVlIHRvICgxKSBhbmQgJ2JheicgZHVlIHRvICgzKS4gJ2ZvbycgaXMgaW5hY3RpdmUgYmVjYXVzZQorKDEpIHRha2VzIHByZWNlZGVuY2Ugb3ZlciAoMykKIAotTm90ZSB0aGF0IChjKSBpcyBhIGhpc3RvcmljYWwgYXJ0ZWZhY3QgYW5kIHdpbGwgYmUgaWdub3JlZCBpZiB0aGUKLShhKSBhbmQgKGIpIHNwZWNpZnkgdGhhdCB0aGUgc3VibW9kdWxlIGlzIG5vdCBhY3RpdmUuIEluIG90aGVyIHdvcmRzLAorTm90ZSB0aGF0ICgzKSBpcyBhIGhpc3RvcmljYWwgYXJ0ZWZhY3QgYW5kIHdpbGwgYmUgaWdub3JlZCBpZiB0aGUKKygxKSBhbmQgKDIpIHNwZWNpZnkgdGhhdCB0aGUgc3VibW9kdWxlIGlzIG5vdCBhY3RpdmUuIEluIG90aGVyIHdvcmRzLAogaWYgd2UgaGF2ZSBhIGBzdWJtb2R1bGUuPG5hbWU+LmFjdGl2ZWAgc2V0IHRvIGBmYWxzZWAgb3IgaWYgdGhlCiBzdWJtb2R1bGUncyBwYXRoIGlzIGV4Y2x1ZGVkIGluIHRoZSBwYXRoc3BlYyBpbiBgc3VibW9kdWxlLmFjdGl2ZWAsIHRoZQogdXJsIGRvZXNuJ3QgbWF0dGVyIHdoZXRoZXIgaXQgaXMgcHJlc2VudCBvciBub3QuIFRoaXMgaXMgaWxsdXN0cmF0ZWQgaW4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0dHV0b3JpYWwtMi50eHQgYi9Eb2N1bWVudGF0aW9uL2dpdHR1dG9yaWFsLTIudHh0CmluZGV4IGUwOTc2ZjYuLjhiZGI3ZDAgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0dHV0b3JpYWwtMi50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXR0dXRvcmlhbC0yLnR4dApAQCAtMzcwLDEzICszNzAsMTMgQEAKICQgZ2l0IHN0YXR1cwogT24gYnJhbmNoIG1hc3RlcgogQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKKyAgKHVzZSAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQogCiAJbmV3IGZpbGU6ICAgY2xvc2luZy50eHQKIAogQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6CiAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLSAgKHVzZSAiZ2l0IGNoZWNrb3V0IC0tIDxmaWxlPi4uLiIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KQorICAodXNlICJnaXQgcmVzdG9yZSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKIAogCW1vZGlmaWVkOiAgIGZpbGUudHh0CiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0dHV0b3JpYWwudHh0IGIvRG9jdW1lbnRhdGlvbi9naXR0dXRvcmlhbC50eHQKaW5kZXggMjQyZGUzMS4uNTllZjVjZSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9naXR0dXRvcmlhbC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXR0dXRvcmlhbC50eHQKQEAgLTExMCw3ICsxMTAsNyBAQAogT24gYnJhbmNoIG1hc3RlcgogQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6CiBZb3VyIGJyYW5jaCBpcyB1cCB0byBkYXRlIHdpdGggJ29yaWdpbi9tYXN0ZXInLgotICAodXNlICJnaXQgcmVzZXQgSEVBRCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCisgICh1c2UgImdpdCByZXN0b3JlIC0tc3RhZ2VkIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKIAogCW1vZGlmaWVkOiAgIGZpbGUxCiAJbW9kaWZpZWQ6ICAgZmlsZTIKQEAgLTIwNyw3ICsyMDcsNyBAQAogdHlwZQogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSQgZ2l0IGNoZWNrb3V0IGV4cGVyaW1lbnRhbAorJCBnaXQgc3dpdGNoIGV4cGVyaW1lbnRhbAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIHRvIHN3aXRjaCB0byB0aGUgZXhwZXJpbWVudGFsIGJyYW5jaC4gIE5vdyBlZGl0IGEgZmlsZSwgY29tbWl0IHRoZQpAQCAtMjE2LDcgKzIxNiw3IEBACiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIChlZGl0IGZpbGUpCiAkIGdpdCBjb21taXQgLWEKLSQgZ2l0IGNoZWNrb3V0IG1hc3RlcgorJCBnaXQgc3dpdGNoIG1hc3RlcgogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIENoZWNrIHRoYXQgdGhlIGNoYW5nZSB5b3UgbWFkZSBpcyBubyBsb25nZXIgdmlzaWJsZSwgc2luY2UgaXQgd2FzCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dpdHdlYi5jb25mLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0d2ViLmNvbmYudHh0CmluZGV4IGMwYTMyNmUuLjc5NjNhNzkgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0d2ViLmNvbmYudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZ2l0d2ViLmNvbmYudHh0CkBAIC01MCwxMSArNTAsMTEgQEAKICAqIGJ1aWx0LWluIHZhbHVlcyAoc29tZSBzZXQgZHVyaW5nIGJ1aWxkIHN0YWdlKSwKIAogICogY29tbW9uIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb24gZmlsZSAoZGVmYXVsdHMgdG8KLSAgICcvZXRjL2dpdHdlYi1jb21tb24uY29uZicpLAorICAgYC9ldGMvZ2l0d2ViLWNvbW1vbi5jb25mYCksCiAKICAqIGVpdGhlciBwZXItaW5zdGFuY2UgY29uZmlndXJhdGlvbiBmaWxlIChkZWZhdWx0cyB0byAnZ2l0d2ViX2NvbmZpZy5wZXJsJwogICAgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IGFzIHRoZSBpbnN0YWxsZWQgZ2l0d2ViKSwgb3IgaWYgaXQgZG9lcyBub3QgZXhpc3RzCi0gICB0aGVuIGZhbGxiYWNrIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb24gZmlsZSAoZGVmYXVsdHMgdG8gJy9ldGMvZ2l0d2ViLmNvbmYnKS4KKyAgIHRoZW4gZmFsbGJhY2sgc3lzdGVtLXdpZGUgY29uZmlndXJhdGlvbiBmaWxlIChkZWZhdWx0cyB0byBgL2V0Yy9naXR3ZWIuY29uZmApLgogCiBWYWx1ZXMgb2J0YWluZWQgaW4gbGF0ZXIgY29uZmlndXJhdGlvbiBmaWxlcyBvdmVycmlkZSB2YWx1ZXMgb2J0YWluZWQgZWFybGllcgogaW4gdGhlIGFib3ZlIHNlcXVlbmNlLgpAQCAtODIsNyArODIsNyBAQAogc3Vicm91dGluZS4gIEZvciBleGFtcGxlLCBvbmUgbWlnaHQgd2FudCB0byBwdXQgZ2l0d2ViIGNvbmZpZ3VyYXRpb24KIHJlbGF0ZWQgdG8gYWNjZXNzIGNvbnRyb2wgZm9yIHZpZXdpbmcgcmVwb3NpdG9yaWVzIHZpYSBHaXRvbGl0ZSAob25lCiBvZiBHaXQgcmVwb3NpdG9yeSBtYW5hZ2VtZW50IHRvb2xzKSBpbiBhIHNlcGFyYXRlIGZpbGUsIGUuZy4gaW4KLScvZXRjL2dpdHdlYi1naXRvbGl0ZS5jb25mJy4gIFRvIGluY2x1ZGUgaXQsIHB1dAorYC9ldGMvZ2l0d2ViLWdpdG9saXRlLmNvbmZgLiAgVG8gaW5jbHVkZSBpdCwgcHV0CiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiByZWFkX2NvbmZpZ19maWxlKCIvZXRjL2dpdHdlYi1naXRvbGl0ZS5jb25mIik7CkBAIC0xNDIsNyArMTQyLDcgQEAKIGh0dHA6Ly9naXQuZXhhbXBsZS5jb20vZ2l0d2ViLmNnaS9mb28vYmFyLmdpdAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiArCi13aWxsIG1hcCB0byB0aGUgcGF0aCAnL3Nydi9naXQvZm9vL2Jhci5naXQnIG9uIHRoZSBmaWxlc3lzdGVtLgord2lsbCBtYXAgdG8gdGhlIHBhdGggYC9zcnYvZ2l0L2Zvby9iYXIuZ2l0YCBvbiB0aGUgZmlsZXN5c3RlbS4KIAogJHByb2plY3RzX2xpc3Q6OgogCU5hbWUgb2YgYSBwbGFpbiB0ZXh0IGZpbGUgbGlzdGluZyBwcm9qZWN0cywgb3IgYSBuYW1lIG9mIGRpcmVjdG9yeQpAQCAtMjA3LDggKzIwNyw4IEBACiAKICRzdHJpY3RfZXhwb3J0OjoKIAlPbmx5IGFsbG93IHZpZXdpbmcgb2YgcmVwb3NpdG9yaWVzIGFsc28gc2hvd24gb24gdGhlIG92ZXJ2aWV3IHBhZ2UuCi0JVGhpcyBmb3IgZXhhbXBsZSBtYWtlcyBgJGdpdHdlYl9leHBvcnRfb2tgIGZpbGUgZGVjaWRlIGlmIHJlcG9zaXRvcnkgaXMKLQlhdmFpbGFibGUgYW5kIG5vdCBvbmx5IGlmIGl0IGlzIHNob3duLiAgSWYgYCRnaXR3ZWJfbGlzdGAgcG9pbnRzIHRvCisJVGhpcyBmb3IgZXhhbXBsZSBtYWtlcyBgJGV4cG9ydF9va2AgZmlsZSBkZWNpZGUgaWYgcmVwb3NpdG9yeSBpcworCWF2YWlsYWJsZSBhbmQgbm90IG9ubHkgaWYgaXQgaXMgc2hvd24uICBJZiBgJHByb2plY3RzX2xpc3RgIHBvaW50cyB0bwogCWZpbGUgd2l0aCBsaXN0IG9mIHByb2plY3QsIG9ubHkgdGhvc2UgcmVwb3NpdG9yaWVzIGxpc3RlZCB3b3VsZCBiZQogCWF2YWlsYWJsZSBmb3IgZ2l0d2ViLiAgQ2FuIGJlIHNldCBkdXJpbmcgYnVpbGRpbmcgZ2l0d2ViIHZpYQogCWBHSVRXRUJfU1RSSUNUX0VYUE9SVGAuICBCeSBkZWZhdWx0IHRoaXMgdmFyaWFibGUgaXMgbm90IHNldCwgd2hpY2gKQEAgLTIzNCw5ICsyMzQsOSBAQAogCiAkbWltZXR5cGVzX2ZpbGU6OgogCUZpbGUgdG8gdXNlIGZvciAoZmlsZW5hbWUgZXh0ZW5zaW9uIGJhc2VkKSBndWVzc2luZyBvZiBNSU1FIHR5cGVzIGJlZm9yZQotCXRyeWluZyAnL2V0Yy9taW1lLnR5cGVzJy4gICpOT1RFKiB0aGF0IHRoaXMgcGF0aCwgaWYgcmVsYXRpdmUsIGlzIHRha2VuCisJdHJ5aW5nIGAvZXRjL21pbWUudHlwZXNgLiAgKk5PVEUqIHRoYXQgdGhpcyBwYXRoLCBpZiByZWxhdGl2ZSwgaXMgdGFrZW4KIAlhcyByZWxhdGl2ZSB0byB0aGUgY3VycmVudCBHaXQgcmVwb3NpdG9yeSwgbm90IHRvIENHSSBzY3JpcHQuICBJZiB1bnNldCwKLQlvbmx5ICcvZXRjL21pbWUudHlwZXMnIGlzIHVzZWQgKGlmIHByZXNlbnQgb24gZmlsZXN5c3RlbSkuICBJZiBubyBtaW1ldHlwZXMKKwlvbmx5IGAvZXRjL21pbWUudHlwZXNgIGlzIHVzZWQgKGlmIHByZXNlbnQgb24gZmlsZXN5c3RlbSkuICBJZiBubyBtaW1ldHlwZXMKIAlmaWxlIGlzIGZvdW5kLCBtaW1ldHlwZSBndWVzc2luZyBiYXNlZCBvbiBleHRlbnNpb24gb2YgZmlsZSBpcyBkaXNhYmxlZC4KIAlVbnNldCBieSBkZWZhdWx0LgogCkBAIC0yOTcsOCArMjk3LDggQEAKICsKIFRoaXMgbGlzdCBzaG91bGQgY29udGFpbiB0aGUgVVJJIG9mIGdpdHdlYidzIHN0YW5kYXJkIHN0eWxlc2hlZXQuICBUaGUgZGVmYXVsdAogVVJJIG9mIGdpdHdlYiBzdHlsZXNoZWV0IGNhbiBiZSBzZXQgYXQgYnVpbGQgdGltZSB1c2luZyB0aGUgYEdJVFdFQl9DU1NgCi1tYWtlZmlsZSB2YXJpYWJsZS4gIEl0cyBkZWZhdWx0IHZhbHVlIGlzICdzdGF0aWMvZ2l0d2ViLmNzcycKLShvciAnc3RhdGljL2dpdHdlYi5taW4uY3NzJyBpZiB0aGUgYENTU01JTmAgdmFyaWFibGUgaXMgZGVmaW5lZCwKK21ha2VmaWxlIHZhcmlhYmxlLiAgSXRzIGRlZmF1bHQgdmFsdWUgaXMgYHN0YXRpYy9naXR3ZWIuY3NzYAorKG9yIGBzdGF0aWMvZ2l0d2ViLm1pbi5jc3NgIGlmIHRoZSBgQ1NTTUlOYCB2YXJpYWJsZSBpcyBkZWZpbmVkLAogaS5lLiBpZiBDU1MgbWluaWZpZXIgaXMgdXNlZCBkdXJpbmcgYnVpbGQpLgogKwogKk5vdGUqOiB0aGVyZSBpcyBhbHNvIGEgbGVnYWN5IGAkc3R5bGVzaGVldGAgY29uZmlndXJhdGlvbiB2YXJpYWJsZSwgd2hpY2ggd2FzCkBAIC0zMTEsNyArMzExLDcgQEAKIAlpcyBkaXNwbGF5ZWQgaW4gdGhlIHRvcCByaWdodCBjb3JuZXIgb2YgZWFjaCBnaXR3ZWIgcGFnZSBhbmQgdXNlZCBhcwogCWEgbG9nbyBmb3IgdGhlIEF0b20gZmVlZC4gIFJlbGF0aXZlIHRvIHRoZSBiYXNlIFVSSSBvZiBnaXR3ZWIgKGFzIGEgcGF0aCkuCiAJQ2FuIGJlIGFkanVzdGVkIHdoZW4gYnVpbGRpbmcgZ2l0d2ViIHVzaW5nIGBHSVRXRUJfTE9HT2AgdmFyaWFibGUKLQlCeSBkZWZhdWx0IHNldCB0byAnc3RhdGljL2dpdC1sb2dvLnBuZycuCisJQnkgZGVmYXVsdCBzZXQgdG8gYHN0YXRpYy9naXQtbG9nby5wbmdgLgogCiAkZmF2aWNvbjo6CiAJUG9pbnRzIHRvIHRoZSBsb2NhdGlvbiB3aGVyZSB5b3UgcHV0ICdnaXQtZmF2aWNvbi5wbmcnIG9uIHlvdXIgd2ViCkBAIC0zMjAsNyArMzIwLDcgQEAKIAltYXkgZGlzcGxheSB0aGVtIGluIHRoZSBicm93c2VyJ3MgVVJMIGJhciBhbmQgbmV4dCB0byB0aGUgc2l0ZSBuYW1lIGluCiAJYm9va21hcmtzLiAgUmVsYXRpdmUgdG8gdGhlIGJhc2UgVVJJIG9mIGdpdHdlYi4gIENhbiBiZSBhZGp1c3RlZCBhdAogCWJ1aWxkIHRpbWUgdXNpbmcgYEdJVFdFQl9GQVZJQ09OYCB2YXJpYWJsZS4KLQlCeSBkZWZhdWx0IHNldCB0byAnc3RhdGljL2dpdC1mYXZpY29uLnBuZycuCisJQnkgZGVmYXVsdCBzZXQgdG8gYHN0YXRpYy9naXQtZmF2aWNvbi5wbmdgLgogCiAkamF2YXNjcmlwdDo6CiAJUG9pbnRzIHRvIHRoZSBsb2NhdGlvbiB3aGVyZSB5b3UgcHV0ICdnaXR3ZWIuanMnIG9uIHlvdXIgd2ViIHNlcnZlciwKQEAgLTMyOCw3ICszMjgsNyBAQAogCVJlbGF0aXZlIHRvIHRoZSBiYXNlIFVSSSBvZiBnaXR3ZWIuICBDYW4gYmUgc2V0IGF0IGJ1aWxkIHRpbWUgdXNpbmcKIAl0aGUgYEdJVFdFQl9KU2AgYnVpbGQtdGltZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlLgogKwotVGhlIGRlZmF1bHQgdmFsdWUgaXMgZWl0aGVyICdzdGF0aWMvZ2l0d2ViLmpzJywgb3IgJ3N0YXRpYy9naXR3ZWIubWluLmpzJyBpZgorVGhlIGRlZmF1bHQgdmFsdWUgaXMgZWl0aGVyIGBzdGF0aWMvZ2l0d2ViLmpzYCwgb3IgYHN0YXRpYy9naXR3ZWIubWluLmpzYCBpZgogdGhlIGBKU01JTmAgYnVpbGQgdmFyaWFibGUgd2FzIGRlZmluZWQsIGkuZS4gaWYgSmF2YVNjcmlwdCBtaW5pZmllciB3YXMgdXNlZAogYXQgYnVpbGQgdGltZS4gICpOb3RlKiB0aGF0IHRoaXMgc2luZ2xlIGZpbGUgaXMgZ2VuZXJhdGVkIGZyb20gbXVsdGlwbGUKIGluZGl2aWR1YWwgSmF2YVNjcmlwdCAibW9kdWxlcyIuCkBAIC00NDQsNyArNDQ0LDcgQEAKIAlkb2Vzbid0IHJlc3VsdCBpbiBzb21lIG90aGVyIHR5cGU7IGJ5IGRlZmF1bHQgInRleHQvcGxhaW4iLgogCUdpdHdlYiBndWVzc2VzIG1pbWV0eXBlIG9mIGEgZmlsZSB0byBkaXNwbGF5IGJhc2VkIG9uIGV4dGVuc2lvbgogCW9mIGl0cyBmaWxlbmFtZSwgdXNpbmcgYCRtaW1ldHlwZXNfZmlsZWAgKGlmIHNldCBhbmQgZmlsZSBleGlzdHMpCi0JYW5kICcvZXRjL21pbWUudHlwZXMnIGZpbGVzIChzZWUgKm1pbWUudHlwZXMqKDUpIG1hbnBhZ2U7IG9ubHkKKwlhbmQgYC9ldGMvbWltZS50eXBlc2AgZmlsZXMgKHNlZSAqbWltZS50eXBlcyooNSkgbWFucGFnZTsgb25seQogCWZpbGVuYW1lIGV4dGVuc2lvbiBydWxlcyBhcmUgc3VwcG9ydGVkIGJ5IGdpdHdlYikuCiAKICRkZWZhdWx0X3RleHRfcGxhaW5fY2hhcnNldDo6CkBAIC00ODYsNyArNDg2LDcgQEAKIAkoZm9yIGV4YW1wbGUgb25lIGZvciBgZ2l0Oi8vYCBwcm90b2NvbCwgYW5kIG9uZSBmb3IgYGh0dHA6Ly9gCiAJcHJvdG9jb2wpLgogKwotTm90ZSB0aGF0IHBlciByZXBvc2l0b3J5IGNvbmZpZ3VyYXRpb24gY2FuIGJlIHNldCBpbiAnJEdJVF9ESVIvY2xvbmV1cmwnCitOb3RlIHRoYXQgcGVyIHJlcG9zaXRvcnkgY29uZmlndXJhdGlvbiBjYW4gYmUgc2V0IGluIGAkR0lUX0RJUi9jbG9uZXVybGAKIGZpbGUsIG9yIGFzIHZhbHVlcyBvZiBtdWx0aS12YWx1ZSBgZ2l0d2ViLnVybGAgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBpbgogcHJvamVjdCBjb25maWcuICBQZXItcmVwb3NpdG9yeSBjb25maWd1cmF0aW9uIHRha2VzIHByZWNlZGVuY2Ugb3ZlciB2YWx1ZQogY29tcG9zZWQgZnJvbSBgQGdpdF9iYXNlX3VybF9saXN0YCBlbGVtZW50cyBhbmQgcHJvamVjdCBuYW1lLgpAQCAtNTIwLDcgKzUyMCw3IEBACiAJSWYgdGhlIHNlcnZlciBsb2FkIGV4Y2VlZHMgdGhpcyB2YWx1ZSB0aGVuIGdpdHdlYiB3aWxsIHJldHVybgogCSI1MDMgU2VydmljZSBVbmF2YWlsYWJsZSIgZXJyb3IuICBUaGUgc2VydmVyIGxvYWQgaXMgdGFrZW4gdG8gYmUgMAogCWlmIGdpdHdlYiBjYW5ub3QgZGV0ZXJtaW5lIGl0cyB2YWx1ZS4gIEN1cnJlbnRseSBpdCB3b3JrcyBvbmx5IG9uIExpbnV4LAotCXdoZXJlIGl0IHVzZXMgJy9wcm9jL2xvYWRhdmcnOyB0aGUgbG9hZCB0aGVyZSBpcyB0aGUgbnVtYmVyIG9mIGFjdGl2ZQorCXdoZXJlIGl0IHVzZXMgYC9wcm9jL2xvYWRhdmdgOyB0aGUgbG9hZCB0aGVyZSBpcyB0aGUgbnVtYmVyIG9mIGFjdGl2ZQogCXRhc2tzIG9uIHRoZSBzeXN0ZW0gLS0gcHJvY2Vzc2VzIHRoYXQgYXJlIGFjdHVhbGx5IHJ1bm5pbmcgLS0gYXZlcmFnZWQKIAlvdmVyIHRoZSBsYXN0IG1pbnV0ZS4KICsKQEAgLTUzNiw3ICs1MzYsNyBAQAogCiAkcGVyX3JlcXVlc3RfY29uZmlnOjoKIAlJZiB0aGlzIGlzIHNldCB0byBjb2RlIHJlZmVyZW5jZSwgaXQgd2lsbCBiZSBydW4gb25jZSBmb3IgZWFjaCByZXF1ZXN0LgotCVlvdSBjYW4Jc2V0IHBhcnRzIG9mIGNvbmZpZ3VyYXRpb24gdGhhdCBjaGFuZ2UgcGVyIHNlc3Npb24gdGhpcyB3YXkuCisJWW91IGNhbiBzZXQgcGFydHMgb2YgY29uZmlndXJhdGlvbiB0aGF0IGNoYW5nZSBwZXIgc2Vzc2lvbiB0aGlzIHdheS4KIAlGb3IgZXhhbXBsZSwgb25lIG1pZ2h0IHVzZSB0aGUgZm9sbG93aW5nIGNvZGUgaW4gYSBnaXR3ZWIgY29uZmlndXJhdGlvbgogCWZpbGUKICsKQEAgLTY4NCw3ICs2ODQsNyBAQAogYSBkZWZpbml0aXZlIGxpc3QuICBCeSBkZWZhdWx0IG9ubHkgInRneiIgaXMgb2ZmZXJlZC4KICsKIFRoaXMgZmVhdHVyZSBjYW4gYmUgY29uZmlndXJlZCBvbiBhIHBlci1yZXBvc2l0b3J5IGJhc2lzIHZpYQotcmVwb3NpdG9yeSdzIGBnaXR3ZWIuYmxhbWVgIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUsIHdoaWNoIGNvbnRhaW5zCityZXBvc2l0b3J5J3MgYGdpdHdlYi5zbmFwc2hvdGAgY29uZmlndXJhdGlvbiB2YXJpYWJsZSwgd2hpY2ggY29udGFpbnMKIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZm9ybWF0cyBvciAibm9uZSIgdG8gZGlzYWJsZSBzbmFwc2hvdHMuCiBVbmtub3duIHZhbHVlcyBhcmUgaWdub3JlZC4KIApAQCAtNzM5LDcgKzczOSw3IEBACiBPbmx5IG9uZSBwcm92aWRlciBhdCBhIHRpbWUgY2FuIGJlIHNlbGVjdGVkICgnZGVmYXVsdCcgaXMgb25lIGVsZW1lbnQgbGlzdCkuCiBJZiBhbiB1bmtub3duIHByb3ZpZGVyIGlzIHNwZWNpZmllZCwgdGhlIGZlYXR1cmUgaXMgZGlzYWJsZWQuCiAqTm90ZSogdGhhdCBzb21lIHByb3ZpZGVycyBtaWdodCByZXF1aXJlIGV4dHJhIFBlcmwgcGFja2FnZXMgdG8gYmUKLWluc3RhbGxlZDsgc2VlICdnaXR3ZWIvSU5TVEFMTCcgZm9yIG1vcmUgZGV0YWlscy4KK2luc3RhbGxlZDsgc2VlIGBnaXR3ZWIvSU5TVEFMTGAgZm9yIG1vcmUgZGV0YWlscy4KICsKIFRoaXMgZmVhdHVyZSBjYW4gYmUgY29uZmlndXJlZCBvbiBhIHBlci1yZXBvc2l0b3J5IGJhc2lzIHZpYQogcmVwb3NpdG9yeSdzIGBnaXR3ZWIuYXZhdGFyYCBjb25maWd1cmF0aW9uIHZhcmlhYmxlLgpAQCAtNzg2LDkgKzc4Niw5IEBACiAJc3ViZGlyZWN0b3JpZXMgb2YgcHJvamVjdCByb290IChiYXNlbmFtZSkgdG8gYmUgZm9ya3Mgb2YgZXhpc3RpbmcKIAlwcm9qZWN0cy4gIEZvciBlYWNoIHByb2plY3QgKyRwcm9qbmFtZS5naXQrLCBwcm9qZWN0cyBpbiB0aGUKIAkrJHByb2puYW1lLysgZGlyZWN0b3J5IGFuZCBpdHMgc3ViZGlyZWN0b3JpZXMgd2lsbCBub3QgYmUKLQlzaG93biBpbiB0aGUgbWFpbiBwcm9qZWN0cyBsaXN0LiAgSW5zdGVhZCwgYSBcJ1wrJyBtYXJrIGlzIHNob3duCi0JbmV4dCB0byArJHByb2puYW1lKywgd2hpY2ggbGlua3MgdG8gYSAiZm9ya3MiIHZpZXcgdGhhdCBsaXN0cyBhbGwKLQl0aGUgZm9ya3MgKGFsbCBwcm9qZWN0cyBpbiArJHByb2puYW1lLysgc3ViZGlyZWN0b3J5KS4gIEFkZGl0aW9uYWxseQorCXNob3duIGluIHRoZSBtYWluIHByb2plY3RzIGxpc3QuICBJbnN0ZWFkLCBhIFwnKycgbWFyayBpcyBzaG93bgorCW5leHQgdG8gYCRwcm9qbmFtZWAsIHdoaWNoIGxpbmtzIHRvIGEgImZvcmtzIiB2aWV3IHRoYXQgbGlzdHMgYWxsCisJdGhlIGZvcmtzIChhbGwgcHJvamVjdHMgaW4gYCRwcm9qbmFtZS9gIHN1YmRpcmVjdG9yeSkuICBBZGRpdGlvbmFsbHkKIAlhICJmb3JrcyIgdmlldyBmb3IgYSBwcm9qZWN0IGlzIGxpbmtlZCBmcm9tIHByb2plY3Qgc3VtbWFyeSBwYWdlLgogKwogSWYgdGhlIHByb2plY3QgbGlzdCBpcyB0YWtlbiBmcm9tIGEgZmlsZSAoKyRwcm9qZWN0c19saXN0KyBwb2ludHMgdG8gYQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9naXR3ZWIudHh0IGIvRG9jdW1lbnRhdGlvbi9naXR3ZWIudHh0CmluZGV4IDg4NDUwNTguLjNjYzliMDMgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2l0d2ViLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2dpdHdlYi50eHQKQEAgLTI4LDE1ICsyOCwxNCBAQAogICByZXZpc2lvbnMgb25lIGF0IGEgdGltZSwgdmlld2luZyB0aGUgaGlzdG9yeSBvZiB0aGUgcmVwb3NpdG9yeS4KICogRmluZGluZyBjb21taXRzIHdoaWNoIGNvbW1pdCBtZXNzYWdlcyBtYXRjaGVzIGdpdmVuIHNlYXJjaCB0ZXJtLgogCi1TZWUgaHR0cDovL2dpdC5rZXJuZWwub3JnLz9wPWdpdC9naXQuZ2l0O2E9dHJlZTtmPWdpdHdlYltdIG9yCi1odHRwOi8vcmVwby5vci5jei93L2dpdC5naXQvdHJlZS9IRUFEOi9naXR3ZWIvW10gZm9yIGdpdHdlYiBzb3VyY2UgY29kZSwKK1NlZSBodHRwOi8vcmVwby5vci5jei93L2dpdC5naXQvdHJlZS9IRUFEOi9naXR3ZWIvW10gZm9yIGdpdHdlYiBzb3VyY2UgY29kZSwKIGJyb3dzZWQgdXNpbmcgZ2l0d2ViIGl0c2VsZi4KIAogCiBDT05GSUdVUkFUSU9OCiAtLS0tLS0tLS0tLS0tCiBWYXJpb3VzIGFzcGVjdHMgb2YgZ2l0d2ViJ3MgYmVoYXZpb3IgY2FuIGJlIGNvbnRyb2xsZWQgdGhyb3VnaCB0aGUgY29uZmlndXJhdGlvbgotZmlsZSAnZ2l0d2ViX2NvbmZpZy5wZXJsJyBvciAnL2V0Yy9naXR3ZWIuY29uZicuICBTZWUgdGhlIGxpbmtnaXQ6Z2l0d2ViLmNvbmZbNV0KK2ZpbGUgYGdpdHdlYl9jb25maWcucGVybGAgb3IgYC9ldGMvZ2l0d2ViLmNvbmZgLiAgU2VlIHRoZSBsaW5rZ2l0OmdpdHdlYi5jb25mWzVdCiBmb3IgZGV0YWlscy4KIAogUmVwb3NpdG9yaWVzCkBAIC01MSw3ICs1MCw3IEBACiBvdXIgJHByb2plY3Ryb290ID0gJy9wYXRoL3RvL3BhcmVudC9kaXJlY3RvcnknOwogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotVGhlIGRlZmF1bHQgdmFsdWUgZm9yIGAkcHJvamVjdHJvb3RgIGlzICcvcHViL2dpdCcuICBZb3UgY2FuIGNoYW5nZSBpdCBkdXJpbmcKK1RoZSBkZWZhdWx0IHZhbHVlIGZvciBgJHByb2plY3Ryb290YCBpcyBgL3B1Yi9naXRgLiAgWW91IGNhbiBjaGFuZ2UgaXQgZHVyaW5nCiBidWlsZGluZyBnaXR3ZWIgdmlhIGBHSVRXRUJfUFJPSkVDVFJPT1RgIGJ1aWxkIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUuCiAKIEJ5IGRlZmF1bHQgYWxsIEdpdCByZXBvc2l0b3JpZXMgdW5kZXIgYCRwcm9qZWN0cm9vdGAgYXJlIHZpc2libGUgYW5kIGF2YWlsYWJsZQpAQCAtMjMxLDcgKzIzMCw3IEBACiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiArCiBmcm9tIHRoZSB0ZW1wbGF0ZSBkdXJpbmcgcmVwb3NpdG9yeSBjcmVhdGlvbiwgdXN1YWxseSBpbnN0YWxsZWQgaW4KLScvdXNyL3NoYXJlL2dpdC1jb3JlL3RlbXBsYXRlcy8nLiAgWW91IGNhbiB1c2UgdGhlIGBnaXR3ZWIuZGVzY3JpcHRpb25gIHJlcG8KK2AvdXNyL3NoYXJlL2dpdC1jb3JlL3RlbXBsYXRlcy9gLiAgWW91IGNhbiB1c2UgdGhlIGBnaXR3ZWIuZGVzY3JpcHRpb25gIHJlcG8KIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUsIGJ1dCB0aGUgZmlsZSB0YWtlcyBwcmVjZWRlbmNlLgogCiBjYXRlZ29yeSAob3IgYGdpdHdlYi5jYXRlZ29yeWApOjoKQEAgLTQwNyw3ICs0MDYsNyBAQAogQXBhY2hlIGFzIENHSQogfn5+fn5+fn5+fn5+fgogQXBhY2hlIG11c3QgYmUgY29uZmlndXJlZCB0byBzdXBwb3J0IENHSSBzY3JpcHRzIGluIHRoZSBkaXJlY3RvcnkgaW4KLXdoaWNoIGdpdHdlYiBpcyBpbnN0YWxsZWQuICBMZXQncyBhc3N1bWUgdGhhdCBpdCBpcyAnL3Zhci93d3cvY2dpLWJpbicKK3doaWNoIGdpdHdlYiBpcyBpbnN0YWxsZWQuICBMZXQncyBhc3N1bWUgdGhhdCBpdCBpcyBgL3Zhci93d3cvY2dpLWJpbmAKIGRpcmVjdG9yeS4KIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQEAgLTQzMSw3ICs0MzAsNyBAQAogKGZvciBtb2RfcGVybCAxLngpIG9yIE1vZFBlcmw6OlJlZ2lzdHJ5IChmb3IgbW9kX3BlcmwgMi54KSB0byBlbmFibGUKIHRoaXMgc3VwcG9ydC4KIAotQXNzdW1pbmcgdGhhdCBnaXR3ZWIgaXMgaW5zdGFsbGVkIHRvICcvdmFyL3d3dy9wZXJsJywgdGhlIGZvbGxvd2luZworQXNzdW1pbmcgdGhhdCBnaXR3ZWIgaXMgaW5zdGFsbGVkIHRvIGAvdmFyL3d3dy9wZXJsYCwgdGhlIGZvbGxvd2luZwogQXBhY2hlIGNvbmZpZ3VyYXRpb24gKGZvciBtb2RfcGVybCAyLngpIGlzIHN1aXRhYmxlLgogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtNDU2LDcgKzQ1NSw3IEBACiB+fn5+fn5+fn5+fn5+fn5+fn5+CiBHaXR3ZWIgd29ya3Mgd2l0aCBBcGFjaGUgYW5kIEZhc3RDR0kuICBGaXJzdCB5b3UgbmVlZCB0byByZW5hbWUsIGNvcHkKIG9yIHN5bWxpbmsgZ2l0d2ViLmNnaSB0byBnaXR3ZWIuZmNnaS4gIExldCdzIGFzc3VtZSB0aGF0IGdpdHdlYiBpcwotaW5zdGFsbGVkIGluICcvdXNyL3NoYXJlL2dpdHdlYicgZGlyZWN0b3J5LiAgVGhlIGZvbGxvd2luZyBBcGFjaGUKK2luc3RhbGxlZCBpbiBgL3Vzci9zaGFyZS9naXR3ZWJgIGRpcmVjdG9yeS4gIFRoZSBmb2xsb3dpbmcgQXBhY2hlCiBjb25maWd1cmF0aW9uIGlzIHN1aXRhYmxlIChVTlRFU1RFRCEpCiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkBAIC01MDMsMjIgKzUwMiwyMiBAQAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogVGhlIGFib3ZlIGNvbmZpZ3VyYXRpb24gZXhwZWN0cyB5b3VyIHB1YmxpYyByZXBvc2l0b3JpZXMgdG8gbGl2ZSB1bmRlcgotJy9wdWIvZ2l0JyBhbmQgd2lsbCBzZXJ2ZSB0aGVtIGFzIGBodHRwOi8vZ2l0LmRvbWFpbi5vcmcvZGlyLXVuZGVyLXB1Yi1naXRgLAorYC9wdWIvZ2l0YCBhbmQgd2lsbCBzZXJ2ZSB0aGVtIGFzIGBodHRwOi8vZ2l0LmRvbWFpbi5vcmcvZGlyLXVuZGVyLXB1Yi1naXRgLAogYm90aCBhcyBjbG9uYWJsZSBHaXQgVVJMIGFuZCBhcyBicm93c2VhYmxlIGdpdHdlYiBpbnRlcmZhY2UuICBJZiB5b3UgdGhlbgogc3RhcnQgeW91ciBsaW5rZ2l0OmdpdC1kYWVtb25bMV0gd2l0aCBgLS1iYXNlLXBhdGg9L3B1Yi9naXQgLS1leHBvcnQtYWxsYAogdGhlbiB5b3UgY2FuIGV2ZW4gdXNlIHRoZSBgZ2l0Oi8vYCBVUkwgd2l0aCBleGFjdGx5IHRoZSBzYW1lIHBhdGguCiAKIFNldHRpbmcgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIGBHSVRXRUJfQ09ORklHYCB3aWxsIHRlbGwgZ2l0d2ViIHRvIHVzZSB0aGUKLW5hbWVkIGZpbGUgKGkuZS4gaW4gdGhpcyBleGFtcGxlICcvZXRjL2dpdHdlYi5jb25mJykgYXMgYSBjb25maWd1cmF0aW9uIGZvcgorbmFtZWQgZmlsZSAoaS5lLiBpbiB0aGlzIGV4YW1wbGUgYC9ldGMvZ2l0d2ViLmNvbmZgKSBhcyBhIGNvbmZpZ3VyYXRpb24gZm9yCiBnaXR3ZWIuICBZb3UgZG9uJ3QgcmVhbGx5IG5lZWQgaXQgaW4gYWJvdmUgZXhhbXBsZTsgaXQgaXMgcmVxdWlyZWQgb25seSBpZgogeW91ciBjb25maWd1cmF0aW9uIGZpbGUgaXMgaW4gZGlmZmVyZW50IHBsYWNlIHRoYW4gYnVpbHQtaW4gKGR1cmluZwotY29tcGlsaW5nIGdpdHdlYikgJ2dpdHdlYl9jb25maWcucGVybCcgb3IgJy9ldGMvZ2l0d2ViLmNvbmYnLiAgU2VlCitjb21waWxpbmcgZ2l0d2ViKSAnZ2l0d2ViX2NvbmZpZy5wZXJsJyBvciBgL2V0Yy9naXR3ZWIuY29uZmAuICBTZWUKIGxpbmtnaXQ6Z2l0d2ViLmNvbmZbNV0gZm9yIGRldGFpbHMsIGVzcGVjaWFsbHkgaW5mb3JtYXRpb24gYWJvdXQgcHJlY2VkZW5jZQogcnVsZXMuCiAKIElmIHlvdSB1c2UgdGhlIHJld3JpdGUgcnVsZXMgZnJvbSB0aGUgZXhhbXBsZSB5b3UgKm1pZ2h0KiBhbHNvIG5lZWQKIHNvbWV0aGluZyBsaWtlIHRoZSBmb2xsb3dpbmcgaW4geW91ciBnaXR3ZWIgY29uZmlndXJhdGlvbiBmaWxlCi0oJy9ldGMvZ2l0d2ViLmNvbmYnIGZvbGxvd2luZyBleGFtcGxlKToKKyhgL2V0Yy9naXR3ZWIuY29uZmAgZm9sbG93aW5nIGV4YW1wbGUpOgogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogQHN0eWxlc2hlZXRzID0gKCIvc29tZS9hYnNvbHV0ZS9wYXRoL2dpdHdlYi5jc3MiKTsKICRteV91cmkgICAgPSAiLyI7CkBAIC01NzUsNyArNTc0LDcgQEAKIAogSGVyZSBhY3R1YWwgcHJvamVjdCByb290IGlzIHBhc3NlZCB0byBnaXR3ZWIgdmlhIGBHSVRXRUJfUFJPSkVDVF9ST09UYAogZW52aXJvbm1lbnQgdmFyaWFibGUgZnJvbSBhIHdlYiBzZXJ2ZXIsIHNvIHlvdSBuZWVkIHRvIHB1dCB0aGUgZm9sbG93aW5nCi1saW5lIGluIGdpdHdlYiBjb25maWd1cmF0aW9uIGZpbGUgKCcvZXRjL2dpdHdlYi5jb25mJyBpbiBhYm92ZSBleGFtcGxlKToKK2xpbmUgaW4gZ2l0d2ViIGNvbmZpZ3VyYXRpb24gZmlsZSAoYC9ldGMvZ2l0d2ViLmNvbmZgIGluIGFib3ZlIGV4YW1wbGUpOgogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICRwcm9qZWN0cm9vdCA9ICRFTlZ7J0dJVFdFQl9QUk9KRUNUUk9PVCd9IHx8ICIvcHViL2dpdCI7CiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtNTg1LDcgKzU4NCw3IEBACiAKIFRoZXNlIGNvbmZpZ3VyYXRpb25zIGVuYWJsZSB0d28gdGhpbmdzLiBGaXJzdCwgZWFjaCB1bml4IHVzZXIgKGA8dXNlcj5gKSBvZgogdGhlIHNlcnZlciB3aWxsIGJlIGFibGUgdG8gYnJvd3NlIHRocm91Z2ggZ2l0d2ViIEdpdCByZXBvc2l0b3JpZXMgZm91bmQgaW4KLSd+L3B1YmxpY19naXQvJyB3aXRoIHRoZSBmb2xsb3dpbmcgdXJsOgorYH4vcHVibGljX2dpdC9gIHdpdGggdGhlIGZvbGxvd2luZyB1cmw6CiAKICAgaHR0cDovL2dpdC5leGFtcGxlLm9yZy9+PHVzZXI+LwogCkBAIC01OTYsNyArNTk1LDcgQEAKIHVzZSB0aGUgXCd+JyBhcyBmaXJzdCBjaGFyYWN0ZXIsIGp1c3QgY29tbWVudCBvciByZW1vdmUgdGhlIHNlY29uZCByZXdyaXRlCiBydWxlLCBhbmQgdW5jb21tZW50IG9uZSBvZiB0aGUgZm9sbG93aW5nIGFjY29yZGluZyB0byB3aGF0IHlvdSB3YW50LgogCi1TZWNvbmQsIHJlcG9zaXRvcmllcyBmb3VuZCBpbiAnL3B1Yi9zY20vJyBhbmQgJy92YXIvZ2l0Lycgd2lsbCBiZSBhY2Nlc3NpYmxlCitTZWNvbmQsIHJlcG9zaXRvcmllcyBmb3VuZCBpbiBgL3B1Yi9zY20vYCBhbmQgYC92YXIvZ2l0L2Agd2lsbCBiZSBhY2Nlc3NpYmxlCiB0aHJvdWdoIGBodHRwOi8vZ2l0LmV4YW1wbGUub3JnL3NjbS9gIGFuZCBgaHR0cDovL2dpdC5leGFtcGxlLm9yZy92YXIvYC4KIFlvdSBjYW4gYWRkIGFzIG1hbnkgcHJvamVjdCByb290cyBhcyB5b3Ugd2FudCBieSBhZGRpbmcgcmV3cml0ZSBydWxlcyBsaWtlCiB0aGUgdGhpcmQgYW5kIHRoZSBmb3VydGguCkBAIC02MTQsNyArNjEzLDcgQEAKICAgaHR0cDovL2dpdC5leGFtcGxlLmNvbS9wcm9qZWN0LmdpdC9zaG9ydGxvZy9zb21ldGFnCiAKIGkuZS4gd2l0aG91dCAnZ2l0d2ViLmNnaScgcGFydCwgYnkgdXNpbmcgYSBjb25maWd1cmF0aW9uIHN1Y2ggYXMgdGhlCi1mb2xsb3dpbmcuICBUaGlzIGNvbmZpZ3VyYXRpb24gYXNzdW1lcyB0aGF0ICcvdmFyL3d3dy9naXR3ZWInIGlzIHRoZQorZm9sbG93aW5nLiAgVGhpcyBjb25maWd1cmF0aW9uIGFzc3VtZXMgdGhhdCBgL3Zhci93d3cvZ2l0d2ViYCBpcyB0aGUKIERvY3VtZW50Um9vdCBvZiB5b3VyIHdlYnNlcnZlciwgY29udGFpbnMgdGhlIGdpdHdlYi5jZ2kgc2NyaXB0IGFuZAogY29tcGxlbWVudGFyeSBzdGF0aWMgZmlsZXMgKHN0eWxlc2hlZXQsIGZhdmljb24sIEphdmFTY3JpcHQpOgogCkBAIC02NDUsOSArNjQ0LDkgQEAKIGBAc3R5bGVzaGVldHNgLCBgJG15X3VyaWAgYW5kIGAkaG9tZV9saW5rYCwgYnV0IHlvdSBsb3NlICJkdW1iIGNsaWVudCIKIGFjY2VzcyB0byB5b3VyIHByb2plY3QgLmdpdCBkaXJzIChkZXNjcmliZWQgaW4gIlNpbmdsZSBVUkwgZm9yIGdpdHdlYiBhbmQKIGZvciBmZXRjaGluZyIgc2VjdGlvbikuICBBIHBvc3NpYmxlIHdvcmthcm91bmQgZm9yIHRoZSBsYXR0ZXIgaXMgdGhlCi1mb2xsb3dpbmc6IGluIHlvdXIgcHJvamVjdCByb290IGRpciAoZS5nLiAnL3B1Yi9naXQnKSBoYXZlIHRoZSBwcm9qZWN0cwotbmFtZWQgKndpdGhvdXQqIGEgLmdpdCBleHRlbnNpb24gKGUuZy4gJy9wdWIvZ2l0L3Byb2plY3QnIGluc3RlYWQgb2YKLScvcHViL2dpdC9wcm9qZWN0LmdpdCcpIGFuZCBjb25maWd1cmUgQXBhY2hlIGFzIGZvbGxvd3M6Citmb2xsb3dpbmc6IGluIHlvdXIgcHJvamVjdCByb290IGRpciAoZS5nLiBgL3B1Yi9naXRgKSBoYXZlIHRoZSBwcm9qZWN0cworbmFtZWQgKndpdGhvdXQqIGEgLmdpdCBleHRlbnNpb24gKGUuZy4gYC9wdWIvZ2l0L3Byb2plY3RgIGluc3RlYWQgb2YKK2AvcHViL2dpdC9wcm9qZWN0LmdpdGApIGFuZCBjb25maWd1cmUgQXBhY2hlIGFzIGZvbGxvd3M6CiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiA8VmlydHVhbEhvc3QgKjo4MD4KIAlTZXJ2ZXJBbGlhcyBnaXQuZXhhbXBsZS5jb20KQEAgLTY4MSw3ICs2ODAsNyBAQAogd2lsbCBwcm92aWRlIGh1bWFuLWZyaWVuZGx5IGdpdHdlYiBhY2Nlc3MuCiAKIFRoaXMgc29sdXRpb24gaXMgbm90IDEwMCUgYnVsbGV0cHJvb2YsIGluIHRoZSBzZW5zZSB0aGF0IGlmIHNvbWUgcHJvamVjdCBoYXMKLWEgbmFtZWQgcmVmIChicmFuY2gsIHRhZykgc3RhcnRpbmcgd2l0aCAnZ2l0LycsIHRoZW4gcGF0aHMgc3VjaCBhcworYSBuYW1lZCByZWYgKGJyYW5jaCwgdGFnKSBzdGFydGluZyB3aXRoIGBnaXQvYCwgdGhlbiBwYXRocyBzdWNoIGFzCiAKICAgaHR0cDovL2dpdC5leGFtcGxlLmNvbS9wcm9qZWN0L2NvbW1hbmQvYWJyYW5jaC4uZ2l0L2FicmFuY2gKIApAQCAtNjk3LDcgKzY5Niw3IEBACiAtLS0tLS0tLQogbGlua2dpdDpnaXR3ZWIuY29uZls1XSwgbGlua2dpdDpnaXQtaW5zdGF3ZWJbMV0KIAotJ2dpdHdlYi9SRUFETUUnLCAnZ2l0d2ViL0lOU1RBTEwnCitgZ2l0d2ViL1JFQURNRWAsIGBnaXR3ZWIvSU5TVEFMTGAKIAogR0lUCiAtLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2l0d29ya2Zsb3dzLnR4dCBiL0RvY3VtZW50YXRpb24vZ2l0d29ya2Zsb3dzLnR4dAppbmRleCBjYTExYzdiLi5hYmMwZGM2IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2dpdHdvcmtmbG93cy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9naXR3b3JrZmxvd3MudHh0CkBAIC0zMDEsOCArMzAxLDcgQEAKIC5SZXdpbmQgYW5kIHJlYnVpbGQgbmV4dAogW2NhcHRpb249IlJlY2lwZTogIl0KID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSogYGdpdCBjaGVja291dCBuZXh0YAotKiBgZ2l0IHJlc2V0IC0taGFyZCBtYXN0ZXJgCisqIGBnaXQgc3dpdGNoIC1DIG5leHQgbWFzdGVyYAogKiBgZ2l0IG1lcmdlIGFpL3RvcGljX2luX25leHQxYAogKiBgZ2l0IG1lcmdlIGFpL3RvcGljX2luX25leHQyYAogKiAuLi4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ2xvc3NhcnktY29udGVudC50eHQgYi9Eb2N1bWVudGF0aW9uL2dsb3NzYXJ5LWNvbnRlbnQudHh0CmluZGV4IDBkMmFhNDguLjA5MGM4ODggMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZ2xvc3NhcnktY29udGVudC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9nbG9zc2FyeS1jb250ZW50LnR4dApAQCAtMjU1LDcgKzI1NSw3IEBACiBbW2RlZl9vYmplY3RdXW9iamVjdDo6CiAJVGhlIHVuaXQgb2Ygc3RvcmFnZSBpbiBHaXQuIEl0IGlzIHVuaXF1ZWx5IGlkZW50aWZpZWQgYnkgdGhlCiAJPDxkZWZfU0hBMSxTSEEtMT4+IG9mIGl0cyBjb250ZW50cy4gQ29uc2VxdWVudGx5LCBhbgotCW9iamVjdCBjYW4gbm90IGJlIGNoYW5nZWQuCisJb2JqZWN0IGNhbm5vdCBiZSBjaGFuZ2VkLgogCiBbW2RlZl9vYmplY3RfZGF0YWJhc2VdXW9iamVjdCBkYXRhYmFzZTo6CiAJU3RvcmVzIGEgc2V0IG9mICJvYmplY3RzIiwgYW5kIGFuIGluZGl2aWR1YWwgPDxkZWZfb2JqZWN0LG9iamVjdD4+IGlzCkBAIC0yODcsNiArMjg3LDE1IEBACiAJb3JpZ2luL25hbWUtb2YtdXBzdHJlYW0tYnJhbmNoLCB3aGljaCB5b3UgY2FuIHNlZSB1c2luZwogCWBnaXQgYnJhbmNoIC1yYC4KIAorW1tkZWZfb3ZlcmxheV1db3ZlcmxheTo6CisJT25seSB1cGRhdGUgYW5kIGFkZCBmaWxlcyB0byB0aGUgd29ya2luZyBkaXJlY3RvcnksIGJ1dCBkb24ndAorCWRlbGV0ZSB0aGVtLCBzaW1pbGFyIHRvIGhvdyAnY3AgLVInIHdvdWxkIHVwZGF0ZSB0aGUgY29udGVudHMKKwlpbiB0aGUgZGVzdGluYXRpb24gZGlyZWN0b3J5LiAgVGhpcyBpcyB0aGUgZGVmYXVsdCBtb2RlIGluIGEKKwk8PGRlZl9jaGVja291dCxjaGVja291dD4+IHdoZW4gY2hlY2tpbmcgb3V0IGZpbGVzIGZyb20gdGhlCisJPDxkZWZfaW5kZXgsaW5kZXg+PiBvciBhIDw8ZGVmX3RyZWUtaXNoLHRyZWUtaXNoPj4uICBJbgorCWNvbnRyYXN0LCBuby1vdmVybGF5IG1vZGUgYWxzbyBkZWxldGVzIHRyYWNrZWQgZmlsZXMgbm90CisJcHJlc2VudCBpbiB0aGUgc291cmNlLCBzaW1pbGFyIHRvICdyc3luYyAtLWRlbGV0ZScuCisKIFtbZGVmX3BhY2tdXXBhY2s6OgogCUEgc2V0IG9mIG9iamVjdHMgd2hpY2ggaGF2ZSBiZWVuIGNvbXByZXNzZWQgaW50byBvbmUgZmlsZSAodG8gc2F2ZSBzcGFjZQogCW9yIHRvIHRyYW5zbWl0IHRoZW0gZWZmaWNpZW50bHkpLgpAQCAtNDA0LDYgKzQxMyw4IEBACiAtICJgIUFUVFJgIiByZXF1aXJlcyB0aGF0IHRoZSBhdHRyaWJ1dGUgYEFUVFJgIGJlCiAgIHVuc3BlY2lmaWVkLgogKworTm90ZSB0aGF0IHdoZW4gbWF0Y2hpbmcgYWdhaW5zdCBhIHRyZWUgb2JqZWN0LCBhdHRyaWJ1dGVzIGFyZSBzdGlsbAorb2J0YWluZWQgZnJvbSB3b3JraW5nIHRyZWUsIG5vdCBmcm9tIHRoZSBnaXZlbiB0cmVlIG9iamVjdC4KIAogZXhjbHVkZTs7CiAJQWZ0ZXIgYSBwYXRoIG1hdGNoZXMgYW55IG5vbi1leGNsdWRlIHBhdGhzcGVjLCBpdCB3aWxsIGJlIHJ1bgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9ob3d0by9tYWludGFpbi1naXQudHh0IGIvRG9jdW1lbnRhdGlvbi9ob3d0by9tYWludGFpbi1naXQudHh0CmluZGV4IGNhNDM3ODcuLjczYmU4YjQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vaG93dG8vbWFpbnRhaW4tZ2l0LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2hvd3RvL21haW50YWluLWdpdC50eHQKQEAgLTE1NCwxNSArMTU0LDE3IEBACiAgICAtIEFueXRoaW5nIHVub2J2aW91cyB0aGF0IGlzIGFwcGxpY2FibGUgdG8gJ21hc3RlcicgKGluIG90aGVyCiAgICAgIHdvcmRzLCBkb2VzIG5vdCBkZXBlbmQgb24gYW55dGhpbmcgdGhhdCBpcyBzdGlsbCBpbiAnbmV4dCcKICAgICAgYW5kIG5vdCBpbiAnbWFzdGVyJykgaXMgYXBwbGllZCB0byBhIG5ldyB0b3BpYyBicmFuY2ggdGhhdAotICAgICBpcyBmb3JrZWQgZnJvbSB0aGUgdGlwIG9mICdtYXN0ZXInLiAgVGhpcyBpbmNsdWRlcyBib3RoCisgICAgIGlzIGZvcmtlZCBmcm9tIHRoZSB0aXAgb2YgJ21hc3RlcicgKG9yIHRoZSBsYXN0IGZlYXR1cmUgcmVsZWFzZSwKKyAgICAgd2hpY2ggaXMgYSBiaXQgb2xkZXIgdGhhbiAnbWFzdGVyJykuICBUaGlzIGluY2x1ZGVzIGJvdGgKICAgICAgZW5oYW5jZW1lbnRzIGFuZCB1bm9idmlvdXMgZml4ZXMgdG8gJ21hc3RlcicuICBBIHRvcGljCiAgICAgIGJyYW5jaCBpcyBuYW1lZCBhcyBhaS90b3BpYyB3aGVyZSAiYWkiIGlzIHR3by1sZXR0ZXIgc3RyaW5nCiAgICAgIG5hbWVkIGFmdGVyIGF1dGhvcidzIGluaXRpYWwgYW5kICJ0b3BpYyIgaXMgYSBkZXNjcmlwdGl2ZSBuYW1lCiAgICAgIG9mIHRoZSB0b3BpYyAoaW4gb3RoZXIgd29yZHMsICJ3aGF0J3MgdGhlIHNlcmllcyBpcyBhYm91dCIpLgogCiAgICAtIEFuIHVub2J2aW91cyBmaXggbWVhbnQgZm9yICdtYWludCcgaXMgYXBwbGllZCB0byBhIG5ldwotICAgICB0b3BpYyBicmFuY2ggdGhhdCBpcyBmb3JrZWQgZnJvbSB0aGUgdGlwIG9mICdtYWludCcuICBUaGUKLSAgICAgdG9waWMgaXMgbmFtZWQgYXMgYWkvbWFpbnQtdG9waWMuCisgICAgIHRvcGljIGJyYW5jaCB0aGF0IGlzIGZvcmtlZCBmcm9tIHRoZSB0aXAgb2YgJ21haW50JyAob3IgdGhlCisgICAgIG9sZGVzdCBhbmQgc3RpbGwgcmVsZXZhbnQgbWFpbnRlbmFuY2UgYnJhbmNoKS4gIFRoZQorICAgICB0b3BpYyBtYXkgYmUgbmFtZWQgYXMgYWkvbWFpbnQtdG9waWMuCiAKICAgIC0gQ2hhbmdlcyB0aGF0IHBlcnRhaW4gdG8gYW4gZXhpc3RpbmcgdG9waWMgYXJlIGFwcGxpZWQgdG8KICAgICAgdGhlIGJyYW5jaCwgYnV0OgpAQCAtMTc0LDI0ICsxNzYsNDAgQEAKICAgIC0gUmVwbGFjZW1lbnQgcGF0Y2hlcyB0byBhbiBleGlzdGluZyB0b3BpYyBhcmUgYWNjZXB0ZWQgb25seQogICAgICBmb3IgY29tbWl0cyBub3QgaW4gJ25leHQnLgogCi0gICBUaGUgYWJvdmUgZXhjZXB0IHRoZSAicmVwbGFjZW1lbnQiIGFyZSBhbGwgZG9uZSB3aXRoOgorICAgVGhlIGluaXRpYWwgcm91bmQgaXMgZG9uZSB3aXRoOgogCiAgICAgICQgZ2l0IGNoZWNrb3V0IGFpL3RvcGljIDsjIG9yICJnaXQgY2hlY2tvdXQgLWIgYWkvdG9waWMgbWFzdGVyIgogICAgICAkIGdpdCBhbSAtc2MzIG1haWxib3gKIAotICAgd2hpbGUgcGF0Y2ggcmVwbGFjZW1lbnQgaXMgb2Z0ZW4gZG9uZSBieToKKyAgIGFuZCByZXBsYWNpbmcgYW4gZXhpc3RpbmcgdG9waWMgd2l0aCBzdWJzZXF1ZW50IHJvdW5kIGlzIGRvbmUgd2l0aDoKIAotICAgICAkIGdpdCBmb3JtYXQtcGF0Y2ggYWkvdG9waWN+JG4uLmFpL3RvcGljIDsjIGV4cG9ydCBleGlzdGluZworICAgICAkIGdpdCBjaGVja291dCBtYXN0ZXIuLi5haS90b3BpYyA7IyB0cnkgdG8gcmVhcHBseSB0byB0aGUgc2FtZSBiYXNlCisgICAgICQgZ2l0IGFtIC1zYzMgbWFpbGJveAogCi0gICB0aGVuIHJlcGxhY2Ugc29tZSBwYXJ0cyB3aXRoIHRoZSBuZXcgcGF0Y2gsIGFuZCByZWFwcGx5aW5nOgorICAgdG8gcHJlcGFyZSB0aGUgbmV3IHJvdW5kIG9uIGEgZGV0YWNoZWQgSEVBRCwgYW5kIHRoZW4KIAotICAgICAkIGdpdCBjaGVja291dCBhaS90b3BpYwotICAgICAkIGdpdCByZXNldCAtLWhhcmQgYWkvdG9waWN+JG4KLSAgICAgJCBnaXQgYW0gLXNjMyAtcyAwMDAqLnR4dAorICAgICAkIGdpdCByYW5nZS1kaWZmIEB7LTF9Li4uCisgICAgICQgZ2l0IGRpZmYgQHstMX0KIAotICAgVGhlIGZ1bGwgdGVzdCBzdWl0ZSBpcyBhbHdheXMgcnVuIGZvciAnbWFpbnQnIGFuZCAnbWFzdGVyJwotICAgYWZ0ZXIgcGF0Y2ggYXBwbGljYXRpb247IGZvciB0b3BpYyBicmFuY2hlcyB0aGUgdGVzdHMgYXJlIHJ1bgotICAgYXMgdGltZSBwZXJtaXRzLgorICAgdG8gZG91YmxlIGNoZWNrIHdoYXQgY2hhbmdlZCBzaW5jZSB0aGUgbGFzdCByb3VuZCwgYW5kIGZpbmFsbHkKKworICAgICAkIGdpdCBjaGVja291dCAtQiBAey0xfQorCisgICB0byBjb25jbHVkZSAodGhlIGxhc3Qgc3RlcCBpcyB3aHkgYSB0b3BpYyBhbHJlYWR5IGluICduZXh0JyBpcworICAgbm90IHJlcGxhY2VkIGJ1dCB1cGRhdGVkIGluY3JlbWVudGFsbHkpLgorCisgICBXaGV0aGVyIGl0IGlzIHRoZSBpbml0aWFsIHJvdW5kIG9yIGEgc3Vic2VxdWVudCByb3VuZCwgdGhlIHRvcGljCisgICBtYXkgbm90IGJ1aWxkIGV2ZW4gaW4gaXNvbGF0aW9uLCBvciBtYXkgYnJlYWsgdGhlIGJ1aWxkIHdoZW4KKyAgIG1lcmdlZCB0byBpbnRlZ3JhdGlvbiBicmFuY2hlcyBkdWUgdG8gYnVncy4gIFRoZXJlIG1heSBhbHJlYWR5CisgICBiZSBvYnZpb3VzIGFuZCB0cml2aWFsIGltcHJvdmVtZW50cyBzdWdnZXN0ZWQgb24gdGhlIGxpc3QuICBUaGUKKyAgIG1haW50YWluZXIgb2Z0ZW4gYWRkcyBhbiBleHRyYSBjb21taXQsIHdpdGggIlNRVUFTSD8/PyIgaW4gaXRzCisgICB0aXRsZSwgdG8gZml4IHRoaW5ncyB1cCwgYmVmb3JlIHB1Ymxpc2hpbmcgdGhlIGludGVncmF0aW9uCisgICBicmFuY2hlcyB0byBtYWtlIGl0IHVzYWJsZSBieSBvdGhlciBkZXZlbG9wZXJzIGZvciB0ZXN0aW5nLgorICAgVGhlc2UgY2hhbmdlcyBhcmUgd2hhdCB0aGUgbWFpbnRhaW5lciBpcyBub3QgMTAwJSBjb21taXR0ZWQgdG8KKyAgICh0cml2aWFsIHR5cG9maXhlcyBldGMuIGFyZSBvZnRlbiBzcXVhc2hlZCBkaXJlY3RseSBpbnRvIHRoZQorICAgcGF0Y2hlcyB0aGF0IG5lZWQgZml4aW5nLCB3aXRob3V0IGJlaW5nIGFwcGxpZWQgYXMgYSBzZXBhcmF0ZQorICAgIlNRVUFTSD8/PyIgY29tbWl0KSwgc28gdGhhdCB0aGV5IGNhbiBiZSByZW1vdmVkIGVhc2lseSBhcyBuZWVkZWQuCisKIAogIC0gTWVyZ2UgbWFpbnQgdG8gbWFzdGVyIGFzIG5lZWRlZDoKIApAQCAtMzcxLDYgKzM4OSwxNCBAQAogICAgYmUgaW5jbHVkZWQgaW4gdGhlIG5leHQgZmVhdHVyZSByZWxlYXNlLiAgQmVpbmcgaW4gdGhlCiAgICAnbWFzdGVyJyBicmFuY2ggdHlwaWNhbGx5IGlzLgogCisgKiBEdWUgdG8gdGhlIG5hdHVyZSBvZiAiU1FVQVNIPz8/IiBmaXgtdXBzLCBpZiB0aGUgb3JpZ2luYWwgYXV0aG9yCisgICBhZ3JlZXMgd2l0aCB0aGUgc3VnZ2VzdGVkIGNoYW5nZXMsIGl0IGlzIE9LIHRvIHNxdWFzaCB0aGVtIHRvCisgICBhcHByb3ByaWF0ZSBwYXRjaGVzIGluIHRoZSBuZXh0IHJvdW5kICh3aGVuIHRoZSBzdWdnZXN0ZWQgY2hhbmdlCisgICBpcyBzbWFsbCBlbm91Z2gsIHRoZSBhdXRob3Igc2hvdWxkIG5vdCBldmVuIGJvdGhlciB3aXRoCisgICAiSGVscGVkLWJ5IikuICBJdCBpcyBhbHNvIE9LIHRvIGRyb3AgdGhlbSBmcm9tIHRoZSBuZXh0IHJvdW5kCisgICB3aGVuIHRoZSBvcmlnaW5hbCBhdXRob3IgZG9lcyBub3QgYWdyZWUgd2l0aCB0aGUgc3VnZ2VzdGlvbiwgYnV0CisgICB0aGUgYXV0aG9yIGlzIGV4cGVjdGVkIHRvIHNheSB3aHkgc29tZXdoZXJlIGluIHRoZSBkaXNjdXNzaW9uLgorCiAKIEFwcGVuZGl4CiAtLS0tLS0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9ob3d0by9zZXBhcmF0aW5nLXRvcGljLWJyYW5jaGVzLnR4dCBiL0RvY3VtZW50YXRpb24vaG93dG8vc2VwYXJhdGluZy10b3BpYy1icmFuY2hlcy50eHQKaW5kZXggYmQxMDI3NC4uODFiZTBkNiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9ob3d0by9zZXBhcmF0aW5nLXRvcGljLWJyYW5jaGVzLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2hvd3RvL3NlcGFyYXRpbmctdG9waWMtYnJhbmNoZXMudHh0CkBAIC04MSw3ICs4MSw3IEBACiAgICAgICAgICAgICAgIG8tLS1vLS0tby0tLW8tLS1vLS0tbwogCiBUaGUgbGFzdCBkaWZmIGJldHRlciBub3QgdG8gc2hvdyBhbnl0aGluZyBvdGhlciB0aGFuIGNsZWFudXBzCi1mb3IgY3J1ZnRzLiAgVGhlbiBJIGNhbiBmaW5hbGx5IGNsZWFuIHRoaW5ncyB1cDoKK2ZvciBjcnVmdC4gIFRoZW4gSSBjYW4gZmluYWxseSBjbGVhbiB0aGluZ3MgdXA6CiAKICAgICAgICAgJCBnaXQgYnJhbmNoIC1EIHRvcGljCiAgICAgICAgICQgZ2l0IHJlc2V0IC0taGFyZCBIRUFEXiA7IyBudWtlIHByZXRlbmQgbWVyZ2UKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vaG93dG8vc2V0dXAtZ2l0LXNlcnZlci1vdmVyLWh0dHAudHh0IGIvRG9jdW1lbnRhdGlvbi9ob3d0by9zZXR1cC1naXQtc2VydmVyLW92ZXItaHR0cC50eHQKaW5kZXggZjQ0ZTVlOS4uYmZlNmY5YiAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9ob3d0by9zZXR1cC1naXQtc2VydmVyLW92ZXItaHR0cC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9ob3d0by9zZXR1cC1naXQtc2VydmVyLW92ZXItaHR0cC50eHQKQEAgLTI0NCw4ICsyNDQsOCBAQAogLS0tLS0tLS0tLS0tLS0KIAogSWYgeW91IGhhdmUgdG8gYWNjZXNzIHRoZSBXZWJEQVYgc2VydmVyIGZyb20gYmVoaW5kIGFuIEhUVFAoUykgcHJveHksCi1zZXQgdGhlIHZhcmlhYmxlICdhbGxfcHJveHknIHRvICdodHRwOi8vcHJveHktaG9zdC5jb206cG9ydCcsIG9yCi0naHR0cDovL2xvZ2luLW9uLXByb3h5OnBhc3N3ZC1vbi1wcm94eUBwcm94eS1ob3N0LmNvbTpwb3J0Jy4gU2VlICdtYW4KK3NldCB0aGUgdmFyaWFibGUgJ2FsbF9wcm94eScgdG8gYGh0dHA6Ly9wcm94eS1ob3N0LmNvbTpwb3J0YCwgb3IKK2BodHRwOi8vbG9naW4tb24tcHJveHk6cGFzc3dkLW9uLXByb3h5QHByb3h5LWhvc3QuY29tOnBvcnRgLiBTZWUgJ21hbgogY3VybCcgZm9yIGRldGFpbHMuCiAKIApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9tYW5wYWdlLWJvbGQtbGl0ZXJhbC54c2wgYi9Eb2N1bWVudGF0aW9uL21hbnBhZ2UtYm9sZC1saXRlcmFsLnhzbAppbmRleCA2MDhlYjVkLi45NGQ2YzFiIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL21hbnBhZ2UtYm9sZC1saXRlcmFsLnhzbAorKysgYi9Eb2N1bWVudGF0aW9uL21hbnBhZ2UtYm9sZC1saXRlcmFsLnhzbApAQCAtMSwxMiArMSwxMyBAQAogPCEtLSBtYW5wYWdlLWJvbGQtbGl0ZXJhbC54c2w6CiAgICAgIHNwZWNpYWwgZm9ybWF0dGluZyBmb3IgbWFucGFnZXMgcmVuZGVyZWQgZnJvbSBhc2NpaWRvYytkb2Nib29rIC0tPgogPHhzbDpzdHlsZXNoZWV0IHhtbG5zOnhzbD0iaHR0cDovL3d3dy53My5vcmcvMTk5OS9YU0wvVHJhbnNmb3JtIgorCQl4bWxuczpkPSJodHRwOi8vZG9jYm9vay5vcmcvbnMvZG9jYm9vayIKIAkJdmVyc2lvbj0iMS4wIj4KIAogPCEtLSByZW5kZXIgbGl0ZXJhbCB0ZXh0IGFzIGJvbGQgKGluc3RlYWQgb2YgcGxhaW4gb3IgbW9ub3NwYWNlKTsKICAgICAgdGhpcyBtYWtlcyBsaXRlcmFsIHRleHQgZWFzaWVyIHRvIGRpc3Rpbmd1aXNoIGluIG1hbnBhZ2VzCiAgICAgIHZpZXdlZCBvbiBhIHR0eSAtLT4KLTx4c2w6dGVtcGxhdGUgbWF0Y2g9ImxpdGVyYWwiPgorPHhzbDp0ZW1wbGF0ZSBtYXRjaD0ibGl0ZXJhbHxkOmxpdGVyYWwiPgogCTx4c2w6dmFsdWUtb2Ygc2VsZWN0PSIkZ2l0LmRvY2Jvb2suYmFja3NsYXNoIi8+CiAJPHhzbDp0ZXh0PmZCPC94c2w6dGV4dD4KIAk8eHNsOmFwcGx5LXRlbXBsYXRlcy8+CmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL21hbnBhZ2UueHNsIGIvRG9jdW1lbnRhdGlvbi9tYW5wYWdlLnhzbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZjY0YmFiCi0tLSAvZGV2L251bGwKKysrIGIvRG9jdW1lbnRhdGlvbi9tYW5wYWdlLnhzbApAQCAtMCwwICsxLDMgQEAKKzx4c2w6c3R5bGVzaGVldCB4bWxuczp4c2w9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvWFNML1RyYW5zZm9ybSIgdmVyc2lvbj0iMS4wIj4KKwk8eHNsOmltcG9ydCBocmVmPSJodHRwOi8vZG9jYm9vay5zb3VyY2Vmb3JnZS5uZXQvcmVsZWFzZS94c2wtbnMvY3VycmVudC9tYW5wYWdlcy9kb2Nib29rLnhzbCIgLz4KKzwveHNsOnN0eWxlc2hlZXQ+CmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL21lcmdlLW9wdGlvbnMudHh0IGIvRG9jdW1lbnRhdGlvbi9tZXJnZS1vcHRpb25zLnR4dAppbmRleCA2M2EzZmMwLi40MGRjNGY1IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL21lcmdlLW9wdGlvbnMudHh0CisrKyBiL0RvY3VtZW50YXRpb24vbWVyZ2Utb3B0aW9ucy50eHQKQEAgLTMsOSArMywxNCBAQAogCVBlcmZvcm0gdGhlIG1lcmdlIGFuZCBjb21taXQgdGhlIHJlc3VsdC4gVGhpcyBvcHRpb24gY2FuCiAJYmUgdXNlZCB0byBvdmVycmlkZSAtLW5vLWNvbW1pdC4KICsKLVdpdGggLS1uby1jb21taXQgcGVyZm9ybSB0aGUgbWVyZ2UgYnV0IHByZXRlbmQgdGhlIG1lcmdlCi1mYWlsZWQgYW5kIGRvIG5vdCBhdXRvY29tbWl0LCB0byBnaXZlIHRoZSB1c2VyIGEgY2hhbmNlIHRvCi1pbnNwZWN0IGFuZCBmdXJ0aGVyIHR3ZWFrIHRoZSBtZXJnZSByZXN1bHQgYmVmb3JlIGNvbW1pdHRpbmcuCitXaXRoIC0tbm8tY29tbWl0IHBlcmZvcm0gdGhlIG1lcmdlIGFuZCBzdG9wIGp1c3QgYmVmb3JlIGNyZWF0aW5nCithIG1lcmdlIGNvbW1pdCwgdG8gZ2l2ZSB0aGUgdXNlciBhIGNoYW5jZSB0byBpbnNwZWN0IGFuZCBmdXJ0aGVyCit0d2VhayB0aGUgbWVyZ2UgcmVzdWx0IGJlZm9yZSBjb21taXR0aW5nLgorKworTm90ZSB0aGF0IGZhc3QtZm9yd2FyZCB1cGRhdGVzIGRvIG5vdCBjcmVhdGUgYSBtZXJnZSBjb21taXQgYW5kCit0aGVyZWZvcmUgdGhlcmUgaXMgbm8gd2F5IHRvIHN0b3AgdGhvc2UgbWVyZ2VzIHdpdGggLS1uby1jb21taXQuCitUaHVzLCBpZiB5b3Ugd2FudCB0byBlbnN1cmUgeW91ciBicmFuY2ggaXMgbm90IGNoYW5nZWQgb3IgdXBkYXRlZAorYnkgdGhlIG1lcmdlIGNvbW1hbmQsIHVzZSAtLW5vLWZmIHdpdGggLS1uby1jb21taXQuCiAKIC0tZWRpdDo6CiAtZTo6CkBAIC0yNywyMSArMzIsMzIgQEAKIHVwZGF0ZWQgYmVoYXZpb3VyLCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgYEdJVF9NRVJHRV9BVVRPRURJVGAgY2FuIGJlCiBzZXQgdG8gYG5vYCBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZW0uCiAKKy0tY2xlYW51cD08bW9kZT46OgorCVRoaXMgb3B0aW9uIGRldGVybWluZXMgaG93IHRoZSBtZXJnZSBtZXNzYWdlIHdpbGwgYmUgY2xlYW5lZCB1cCBiZWZvcmUKKwljb21taXR0aW5nLiBTZWUgbGlua2dpdDpnaXQtY29tbWl0WzFdIGZvciBtb3JlIGRldGFpbHMuIEluIGFkZGl0aW9uLCBpZgorCXRoZSAnPG1vZGU+JyBpcyBnaXZlbiBhIHZhbHVlIG9mIGBzY2lzc29yc2AsIHNjaXNzb3JzIHdpbGwgYmUgYXBwZW5kZWQKKwl0byBgTUVSR0VfTVNHYCBiZWZvcmUgYmVpbmcgcGFzc2VkIG9uIHRvIHRoZSBjb21taXQgbWFjaGluZXJ5IGluIHRoZQorCWNhc2Ugb2YgYSBtZXJnZSBjb25mbGljdC4KKwogLS1mZjo6Ci0JV2hlbiB0aGUgbWVyZ2UgcmVzb2x2ZXMgYXMgYSBmYXN0LWZvcndhcmQsIG9ubHkgdXBkYXRlIHRoZSBicmFuY2gKLQlwb2ludGVyLCB3aXRob3V0IGNyZWF0aW5nIGEgbWVyZ2UgY29tbWl0LiAgVGhpcyBpcyB0aGUgZGVmYXVsdAotCWJlaGF2aW9yLgotCiAtLW5vLWZmOjoKLQlDcmVhdGUgYSBtZXJnZSBjb21taXQgZXZlbiB3aGVuIHRoZSBtZXJnZSByZXNvbHZlcyBhcyBhCi0JZmFzdC1mb3J3YXJkLiAgVGhpcyBpcyB0aGUgZGVmYXVsdCBiZWhhdmlvdXIgd2hlbiBtZXJnaW5nIGFuCi0JYW5ub3RhdGVkIChhbmQgcG9zc2libHkgc2lnbmVkKSB0YWcgdGhhdCBpcyBub3Qgc3RvcmVkIGluCi0JaXRzIG5hdHVyYWwgcGxhY2UgaW4gJ3JlZnMvdGFncy8nIGhpZXJhcmNoeS4KLQogLS1mZi1vbmx5OjoKLQlSZWZ1c2UgdG8gbWVyZ2UgYW5kIGV4aXQgd2l0aCBhIG5vbi16ZXJvIHN0YXR1cyB1bmxlc3MgdGhlCi0JY3VycmVudCBgSEVBRGAgaXMgYWxyZWFkeSB1cCB0byBkYXRlIG9yIHRoZSBtZXJnZSBjYW4gYmUKLQlyZXNvbHZlZCBhcyBhIGZhc3QtZm9yd2FyZC4KKwlTcGVjaWZpZXMgaG93IGEgbWVyZ2UgaXMgaGFuZGxlZCB3aGVuIHRoZSBtZXJnZWQtaW4gaGlzdG9yeSBpcworCWFscmVhZHkgYSBkZXNjZW5kYW50IG9mIHRoZSBjdXJyZW50IGhpc3RvcnkuICBgLS1mZmAgaXMgdGhlCisJZGVmYXVsdCB1bmxlc3MgbWVyZ2luZyBhbiBhbm5vdGF0ZWQgKGFuZCBwb3NzaWJseSBzaWduZWQpIHRhZworCXRoYXQgaXMgbm90IHN0b3JlZCBpbiBpdHMgbmF0dXJhbCBwbGFjZSBpbiB0aGUgYHJlZnMvdGFncy9gCisJaGllcmFyY2h5LCBpbiB3aGljaCBjYXNlIGAtLW5vLWZmYCBpcyBhc3N1bWVkLgorKworV2l0aCBgLS1mZmAsIHdoZW4gcG9zc2libGUgcmVzb2x2ZSB0aGUgbWVyZ2UgYXMgYSBmYXN0LWZvcndhcmQgKG9ubHkKK3VwZGF0ZSB0aGUgYnJhbmNoIHBvaW50ZXIgdG8gbWF0Y2ggdGhlIG1lcmdlZCBicmFuY2g7IGRvIG5vdCBjcmVhdGUgYQorbWVyZ2UgY29tbWl0KS4gIFdoZW4gbm90IHBvc3NpYmxlICh3aGVuIHRoZSBtZXJnZWQtaW4gaGlzdG9yeSBpcyBub3QgYQorZGVzY2VuZGFudCBvZiB0aGUgY3VycmVudCBoaXN0b3J5KSwgY3JlYXRlIGEgbWVyZ2UgY29tbWl0LgorKworV2l0aCBgLS1uby1mZmAsIGNyZWF0ZSBhIG1lcmdlIGNvbW1pdCBpbiBhbGwgY2FzZXMsIGV2ZW4gd2hlbiB0aGUgbWVyZ2UKK2NvdWxkIGluc3RlYWQgYmUgcmVzb2x2ZWQgYXMgYSBmYXN0LWZvcndhcmQuCisrCitXaXRoIGAtLWZmLW9ubHlgLCByZXNvbHZlIHRoZSBtZXJnZSBhcyBhIGZhc3QtZm9yd2FyZCB3aGVuIHBvc3NpYmxlLgorV2hlbiBub3QgcG9zc2libGUsIHJlZnVzZSB0byBtZXJnZSBhbmQgZXhpdCB3aXRoIGEgbm9uLXplcm8gc3RhdHVzLgogCiAtU1s8a2V5aWQ+XTo6CiAtLWdwZy1zaWduWz08a2V5aWQ+XTo6CkBAIC05MCw2ICsxMDYsMTIgQEAKICsKIFdpdGggLS1uby1zcXVhc2ggcGVyZm9ybSB0aGUgbWVyZ2UgYW5kIGNvbW1pdCB0aGUgcmVzdWx0LiBUaGlzCiBvcHRpb24gY2FuIGJlIHVzZWQgdG8gb3ZlcnJpZGUgLS1zcXVhc2guCisrCitXaXRoIC0tc3F1YXNoLCAtLWNvbW1pdCBpcyBub3QgYWxsb3dlZCwgYW5kIHdpbGwgZmFpbC4KKworLS1uby12ZXJpZnk6OgorCVRoaXMgb3B0aW9uIGJ5cGFzc2VzIHRoZSBwcmUtbWVyZ2UgYW5kIGNvbW1pdC1tc2cgaG9va3MuCisJU2VlIGFsc28gbGlua2dpdDpnaXRob29rc1s1XS4KIAogLXMgPHN0cmF0ZWd5Pjo6CiAtLXN0cmF0ZWd5PTxzdHJhdGVneT46OgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9tZXJnZS1zdHJhdGVnaWVzLnR4dCBiL0RvY3VtZW50YXRpb24vbWVyZ2Utc3RyYXRlZ2llcy50eHQKaW5kZXggYWE2NmNiZS4uMjkxMmRlNyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9tZXJnZS1zdHJhdGVnaWVzLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL21lcmdlLXN0cmF0ZWdpZXMudHh0CkBAIC0zMiw3ICszMiw3IEBACiBvdXJzOzsKIAlUaGlzIG9wdGlvbiBmb3JjZXMgY29uZmxpY3RpbmcgaHVua3MgdG8gYmUgYXV0by1yZXNvbHZlZCBjbGVhbmx5IGJ5CiAJZmF2b3JpbmcgJ291cicgdmVyc2lvbi4gIENoYW5nZXMgZnJvbSB0aGUgb3RoZXIgdHJlZSB0aGF0IGRvIG5vdAotCWNvbmZsaWN0IHdpdGggb3VyIHNpZGUgYXJlIHJlZmxlY3RlZCB0byB0aGUgbWVyZ2UgcmVzdWx0LgorCWNvbmZsaWN0IHdpdGggb3VyIHNpZGUgYXJlIHJlZmxlY3RlZCBpbiB0aGUgbWVyZ2UgcmVzdWx0LgogCUZvciBhIGJpbmFyeSBmaWxlLCB0aGUgZW50aXJlIGNvbnRlbnRzIGFyZSB0YWtlbiBmcm9tIG91ciBzaWRlLgogKwogVGhpcyBzaG91bGQgbm90IGJlIGNvbmZ1c2VkIHdpdGggdGhlICdvdXJzJyBtZXJnZSBzdHJhdGVneSwgd2hpY2ggZG9lcyBub3QKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vcHJldHR5LWZvcm1hdHMudHh0IGIvRG9jdW1lbnRhdGlvbi9wcmV0dHktZm9ybWF0cy50eHQKaW5kZXggNDE3YjYzOC4uYTRiNmY0OSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9wcmV0dHktZm9ybWF0cy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9wcmV0dHktZm9ybWF0cy50eHQKQEAgLTQsNyArNCw3IEBACiBJZiB0aGUgY29tbWl0IGlzIGEgbWVyZ2UsIGFuZCBpZiB0aGUgcHJldHR5LWZvcm1hdAogaXMgbm90ICdvbmVsaW5lJywgJ2VtYWlsJyBvciAncmF3JywgYW4gYWRkaXRpb25hbCBsaW5lIGlzCiBpbnNlcnRlZCBiZWZvcmUgdGhlICdBdXRob3I6JyBsaW5lLiAgVGhpcyBsaW5lIGJlZ2lucyB3aXRoCi0iTWVyZ2U6ICIgYW5kIHRoZSBzaGExcyBvZiBhbmNlc3RyYWwgY29tbWl0cyBhcmUgcHJpbnRlZCwKKyJNZXJnZTogIiBhbmQgdGhlIGhhc2hlcyBvZiBhbmNlc3RyYWwgY29tbWl0cyBhcmUgcHJpbnRlZCwKIHNlcGFyYXRlZCBieSBzcGFjZXMuICBOb3RlIHRoYXQgdGhlIGxpc3RlZCBjb21taXRzIG1heSBub3QKIG5lY2Vzc2FyaWx5IGJlIHRoZSBsaXN0IG9mIHRoZSAqZGlyZWN0KiBwYXJlbnQgY29tbWl0cyBpZiB5b3UKIGhhdmUgbGltaXRlZCB5b3VyIHZpZXcgb2YgaGlzdG9yeTogZm9yIGV4YW1wbGUsIGlmIHlvdSBhcmUKQEAgLTIwLDIwICsyMCwyMCBAQAogCiAqICdvbmVsaW5lJwogCi0JICA8c2hhMT4gPHRpdGxlIGxpbmU+CisJICA8aGFzaD4gPHRpdGxlIGxpbmU+CiArCiBUaGlzIGlzIGRlc2lnbmVkIHRvIGJlIGFzIGNvbXBhY3QgYXMgcG9zc2libGUuCiAKICogJ3Nob3J0JwogCi0JICBjb21taXQgPHNoYTE+CisJICBjb21taXQgPGhhc2g+CiAJICBBdXRob3I6IDxhdXRob3I+CiAKIAkgICAgICA8dGl0bGUgbGluZT4KIAogKiAnbWVkaXVtJwogCi0JICBjb21taXQgPHNoYTE+CisJICBjb21taXQgPGhhc2g+CiAJICBBdXRob3I6IDxhdXRob3I+CiAJICBEYXRlOiAgIDxhdXRob3IgZGF0ZT4KIApAQCAtNDMsNyArNDMsNyBAQAogCiAqICdmdWxsJwogCi0JICBjb21taXQgPHNoYTE+CisJICBjb21taXQgPGhhc2g+CiAJICBBdXRob3I6IDxhdXRob3I+CiAJICBDb21taXQ6IDxjb21taXR0ZXI+CiAKQEAgLTUzLDcgKzUzLDcgQEAKIAogKiAnZnVsbGVyJwogCi0JICBjb21taXQgPHNoYTE+CisJICBjb21taXQgPGhhc2g+CiAJICBBdXRob3I6ICAgICA8YXV0aG9yPgogCSAgQXV0aG9yRGF0ZTogPGF1dGhvciBkYXRlPgogCSAgQ29tbWl0OiAgICAgPGNvbW1pdHRlcj4KQEAgLTYzLDkgKzYzLDIwIEBACiAKIAkgICAgICAgPGZ1bGwgY29tbWl0IG1lc3NhZ2U+CiAKKyogJ3JlZmVyZW5jZScKKworCSAgPGFiYnJldiBoYXNoPiAoPHRpdGxlIGxpbmU+LCA8c2hvcnQgYXV0aG9yIGRhdGU+KQorKworVGhpcyBmb3JtYXQgaXMgdXNlZCB0byByZWZlciB0byBhbm90aGVyIGNvbW1pdCBpbiBhIGNvbW1pdCBtZXNzYWdlIGFuZAoraXMgdGhlIHNhbWUgYXMgYC0tcHJldHR5PSdmb3JtYXQ6JUMoYXV0byklaCAoJXMsICVhZCknYC4gIEJ5IGRlZmF1bHQsCit0aGUgZGF0ZSBpcyBmb3JtYXR0ZWQgd2l0aCBgLS1kYXRlPXNob3J0YCB1bmxlc3MgYW5vdGhlciBgLS1kYXRlYCBvcHRpb24KK2lzIGV4cGxpY2l0bHkgc3BlY2lmaWVkLiAgQXMgd2l0aCBhbnkgYGZvcm1hdDpgIHdpdGggZm9ybWF0CitwbGFjZWhvbGRlcnMsIGl0cyBvdXRwdXQgaXMgbm90IGFmZmVjdGVkIGJ5IG90aGVyIG9wdGlvbnMgbGlrZQorYC0tZGVjb3JhdGVgIGFuZCBgLS13YWxrLXJlZmxvZ3NgLgorCiAqICdlbWFpbCcKIAotCSAgRnJvbSA8c2hhMT4gPGRhdGU+CisJICBGcm9tIDxoYXNoPiA8ZGF0ZT4KIAkgIEZyb206IDxhdXRob3I+CiAJICBEYXRlOiA8YXV0aG9yIGRhdGU+CiAJICBTdWJqZWN0OiBbUEFUQ0hdIDx0aXRsZSBsaW5lPgpAQCAtNzUsNyArODYsNyBAQAogKiAncmF3JwogKwogVGhlICdyYXcnIGZvcm1hdCBzaG93cyB0aGUgZW50aXJlIGNvbW1pdCBleGFjdGx5IGFzCi1zdG9yZWQgaW4gdGhlIGNvbW1pdCBvYmplY3QuICBOb3RhYmx5LCB0aGUgU0hBLTFzIGFyZQorc3RvcmVkIGluIHRoZSBjb21taXQgb2JqZWN0LiAgTm90YWJseSwgdGhlIGhhc2hlcyBhcmUKIGRpc3BsYXllZCBpbiBmdWxsLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgLS1hYmJyZXYgb3IKIC0tbm8tYWJicmV2IGFyZSB1c2VkLCBhbmQgJ3BhcmVudHMnIGluZm9ybWF0aW9uIHNob3cgdGhlCiB0cnVlIHBhcmVudCBjb21taXRzLCB3aXRob3V0IHRha2luZyBncmFmdHMgb3IgaGlzdG9yeQpAQCAtMTAyLDExOCArMTEzLDE2OSBAQAogKwogVGhlIHBsYWNlaG9sZGVycyBhcmU6CiAKLS0gJyVIJzogY29tbWl0IGhhc2gKLS0gJyVoJzogYWJicmV2aWF0ZWQgY29tbWl0IGhhc2gKLS0gJyVUJzogdHJlZSBoYXNoCi0tICcldCc6IGFiYnJldmlhdGVkIHRyZWUgaGFzaAotLSAnJVAnOiBwYXJlbnQgaGFzaGVzCi0tICclcCc6IGFiYnJldmlhdGVkIHBhcmVudCBoYXNoZXMKLS0gJyVhbic6IGF1dGhvciBuYW1lCi0tICclYU4nOiBhdXRob3IgbmFtZSAocmVzcGVjdGluZyAubWFpbG1hcCwgc2VlIGxpbmtnaXQ6Z2l0LXNob3J0bG9nWzFdCi0gIG9yIGxpbmtnaXQ6Z2l0LWJsYW1lWzFdKQotLSAnJWFlJzogYXV0aG9yIGVtYWlsCi0tICclYUUnOiBhdXRob3IgZW1haWwgKHJlc3BlY3RpbmcgLm1haWxtYXAsIHNlZQotICBsaW5rZ2l0OmdpdC1zaG9ydGxvZ1sxXSBvciBsaW5rZ2l0OmdpdC1ibGFtZVsxXSkKLS0gJyVhZCc6IGF1dGhvciBkYXRlIChmb3JtYXQgcmVzcGVjdHMgLS1kYXRlPSBvcHRpb24pCi0tICclYUQnOiBhdXRob3IgZGF0ZSwgUkZDMjgyMiBzdHlsZQotLSAnJWFyJzogYXV0aG9yIGRhdGUsIHJlbGF0aXZlCi0tICclYXQnOiBhdXRob3IgZGF0ZSwgVU5JWCB0aW1lc3RhbXAKLS0gJyVhaSc6IGF1dGhvciBkYXRlLCBJU08gODYwMS1saWtlIGZvcm1hdAotLSAnJWFJJzogYXV0aG9yIGRhdGUsIHN0cmljdCBJU08gODYwMSBmb3JtYXQKLS0gJyVjbic6IGNvbW1pdHRlciBuYW1lCi0tICclY04nOiBjb21taXR0ZXIgbmFtZSAocmVzcGVjdGluZyAubWFpbG1hcCwgc2VlCi0gIGxpbmtnaXQ6Z2l0LXNob3J0bG9nWzFdIG9yIGxpbmtnaXQ6Z2l0LWJsYW1lWzFdKQotLSAnJWNlJzogY29tbWl0dGVyIGVtYWlsCi0tICclY0UnOiBjb21taXR0ZXIgZW1haWwgKHJlc3BlY3RpbmcgLm1haWxtYXAsIHNlZQotICBsaW5rZ2l0OmdpdC1zaG9ydGxvZ1sxXSBvciBsaW5rZ2l0OmdpdC1ibGFtZVsxXSkKLS0gJyVjZCc6IGNvbW1pdHRlciBkYXRlIChmb3JtYXQgcmVzcGVjdHMgLS1kYXRlPSBvcHRpb24pCi0tICclY0QnOiBjb21taXR0ZXIgZGF0ZSwgUkZDMjgyMiBzdHlsZQotLSAnJWNyJzogY29tbWl0dGVyIGRhdGUsIHJlbGF0aXZlCi0tICclY3QnOiBjb21taXR0ZXIgZGF0ZSwgVU5JWCB0aW1lc3RhbXAKLS0gJyVjaSc6IGNvbW1pdHRlciBkYXRlLCBJU08gODYwMS1saWtlIGZvcm1hdAotLSAnJWNJJzogY29tbWl0dGVyIGRhdGUsIHN0cmljdCBJU08gODYwMSBmb3JtYXQKLS0gJyVkJzogcmVmIG5hbWVzLCBsaWtlIHRoZSAtLWRlY29yYXRlIG9wdGlvbiBvZiBsaW5rZ2l0OmdpdC1sb2dbMV0KLS0gJyVEJzogcmVmIG5hbWVzIHdpdGhvdXQgdGhlICIgKCIsICIpIiB3cmFwcGluZy4KLS0gJyVlJzogZW5jb2RpbmcKLS0gJyVzJzogc3ViamVjdAotLSAnJWYnOiBzYW5pdGl6ZWQgc3ViamVjdCBsaW5lLCBzdWl0YWJsZSBmb3IgYSBmaWxlbmFtZQotLSAnJWInOiBib2R5Ci0tICclQic6IHJhdyBib2R5ICh1bndyYXBwZWQgc3ViamVjdCBhbmQgYm9keSkKKy0gUGxhY2Vob2xkZXJzIHRoYXQgZXhwYW5kIHRvIGEgc2luZ2xlIGxpdGVyYWwgY2hhcmFjdGVyOgorJyVuJzo6IG5ld2xpbmUKKyclJSc6OiBhIHJhdyAnJScKKycleDAwJzo6IHByaW50IGEgYnl0ZSBmcm9tIGEgaGV4IGNvZGUKKworLSBQbGFjZWhvbGRlcnMgdGhhdCBhZmZlY3QgZm9ybWF0dGluZyBvZiBsYXRlciBwbGFjZWhvbGRlcnM6CisnJUNyZWQnOjogc3dpdGNoIGNvbG9yIHRvIHJlZAorJyVDZ3JlZW4nOjogc3dpdGNoIGNvbG9yIHRvIGdyZWVuCisnJUNibHVlJzo6IHN3aXRjaCBjb2xvciB0byBibHVlCisnJUNyZXNldCc6OiByZXNldCBjb2xvcgorJyVDKC4uLiknOjogY29sb3Igc3BlY2lmaWNhdGlvbiwgYXMgZGVzY3JpYmVkIHVuZGVyIFZhbHVlcyBpbiB0aGUKKwkgICAgIkNPTkZJR1VSQVRJT04gRklMRSIgc2VjdGlvbiBvZiBsaW5rZ2l0OmdpdC1jb25maWdbMV0uICBCeQorCSAgICBkZWZhdWx0LCBjb2xvcnMgYXJlIHNob3duIG9ubHkgd2hlbiBlbmFibGVkIGZvciBsb2cgb3V0cHV0CisJICAgIChieSBgY29sb3IuZGlmZmAsIGBjb2xvci51aWAsIG9yIGAtLWNvbG9yYCwgYW5kIHJlc3BlY3RpbmcKKwkgICAgdGhlIGBhdXRvYCBzZXR0aW5ncyBvZiB0aGUgZm9ybWVyIGlmIHdlIGFyZSBnb2luZyB0byBhCisJICAgIHRlcm1pbmFsKS4gYCVDKGF1dG8sLi4uKWAgaXMgYWNjZXB0ZWQgYXMgYSBoaXN0b3JpY2FsCisJICAgIHN5bm9ueW0gZm9yIHRoZSBkZWZhdWx0IChlLmcuLCBgJUMoYXV0byxyZWQpYCkuIFNwZWNpZnlpbmcKKwkgICAgYCVDKGFsd2F5cywuLi4pYCB3aWxsIHNob3cgdGhlIGNvbG9ycyBldmVuIHdoZW4gY29sb3IgaXMKKwkgICAgbm90IG90aGVyd2lzZSBlbmFibGVkICh0aG91Z2ggY29uc2lkZXIganVzdCB1c2luZworCSAgICBgLS1jb2xvcj1hbHdheXNgIHRvIGVuYWJsZSBjb2xvciBmb3IgdGhlIHdob2xlIG91dHB1dCwKKwkgICAgaW5jbHVkaW5nIHRoaXMgZm9ybWF0IGFuZCBhbnl0aGluZyBlbHNlIGdpdCBtaWdodCBjb2xvcikuCisJICAgIGBhdXRvYCBhbG9uZSAoaS5lLiBgJUMoYXV0bylgKSB3aWxsIHR1cm4gb24gYXV0byBjb2xvcmluZworCSAgICBvbiB0aGUgbmV4dCBwbGFjZWhvbGRlcnMgdW50aWwgdGhlIGNvbG9yIGlzIHN3aXRjaGVkCisJICAgIGFnYWluLgorJyVtJzo6IGxlZnQgKGA8YCksIHJpZ2h0IChgPmApIG9yIGJvdW5kYXJ5IChgLWApIG1hcmsKKycldyhbPHc+Wyw8aTE+Wyw8aTI+XV1dKSc6OiBzd2l0Y2ggbGluZSB3cmFwcGluZywgbGlrZSB0aGUgLXcgb3B0aW9uIG9mCisJCQkgICAgbGlua2dpdDpnaXQtc2hvcnRsb2dbMV0uCisnJTwoPE4+Wyx0cnVuY3xsdHJ1bmN8bXRydW5jXSknOjogbWFrZSB0aGUgbmV4dCBwbGFjZWhvbGRlciB0YWtlIGF0CisJCQkJICBsZWFzdCBOIGNvbHVtbnMsIHBhZGRpbmcgc3BhY2VzIG9uCisJCQkJICB0aGUgcmlnaHQgaWYgbmVjZXNzYXJ5LiAgT3B0aW9uYWxseQorCQkJCSAgdHJ1bmNhdGUgYXQgdGhlIGJlZ2lubmluZyAobHRydW5jKSwKKwkJCQkgIHRoZSBtaWRkbGUgKG10cnVuYykgb3IgdGhlIGVuZAorCQkJCSAgKHRydW5jKSBpZiB0aGUgb3V0cHV0IGlzIGxvbmdlciB0aGFuCisJCQkJICBOIGNvbHVtbnMuICBOb3RlIHRoYXQgdHJ1bmNhdGluZworCQkJCSAgb25seSB3b3JrcyBjb3JyZWN0bHkgd2l0aCBOID49IDIuCisnJTx8KDxOPiknOjogbWFrZSB0aGUgbmV4dCBwbGFjZWhvbGRlciB0YWtlIGF0IGxlYXN0IHVudGlsIE50aAorCSAgICAgY29sdW1ucywgcGFkZGluZyBzcGFjZXMgb24gdGhlIHJpZ2h0IGlmIG5lY2Vzc2FyeQorJyU+KDxOPiknLCAnJT58KDxOPiknOjogc2ltaWxhciB0byAnJTwoPE4+KScsICclPHwoPE4+KScgcmVzcGVjdGl2ZWx5LAorCQkJYnV0IHBhZGRpbmcgc3BhY2VzIG9uIHRoZSBsZWZ0CisnJT4+KDxOPiknLCAnJT4+fCg8Tj4pJzo6IHNpbWlsYXIgdG8gJyU+KDxOPiknLCAnJT58KDxOPiknCisJCQkgIHJlc3BlY3RpdmVseSwgZXhjZXB0IHRoYXQgaWYgdGhlIG5leHQKKwkJCSAgcGxhY2Vob2xkZXIgdGFrZXMgbW9yZSBzcGFjZXMgdGhhbiBnaXZlbiBhbmQKKwkJCSAgdGhlcmUgYXJlIHNwYWNlcyBvbiBpdHMgbGVmdCwgdXNlIHRob3NlCisJCQkgIHNwYWNlcworJyU+PCg8Tj4pJywgJyU+PHwoPE4+KSc6OiBzaW1pbGFyIHRvICclPCg8Tj4pJywgJyU8fCg8Tj4pJworCQkJICByZXNwZWN0aXZlbHksIGJ1dCBwYWRkaW5nIGJvdGggc2lkZXMKKwkJCSAgKGkuZS4gdGhlIHRleHQgaXMgY2VudGVyZWQpCisKKy0gUGxhY2Vob2xkZXJzIHRoYXQgZXhwYW5kIHRvIGluZm9ybWF0aW9uIGV4dHJhY3RlZCBmcm9tIHRoZSBjb21taXQ6CisnJUgnOjogY29tbWl0IGhhc2gKKyclaCc6OiBhYmJyZXZpYXRlZCBjb21taXQgaGFzaAorJyVUJzo6IHRyZWUgaGFzaAorJyV0Jzo6IGFiYnJldmlhdGVkIHRyZWUgaGFzaAorJyVQJzo6IHBhcmVudCBoYXNoZXMKKyclcCc6OiBhYmJyZXZpYXRlZCBwYXJlbnQgaGFzaGVzCisnJWFuJzo6IGF1dGhvciBuYW1lCisnJWFOJzo6IGF1dGhvciBuYW1lIChyZXNwZWN0aW5nIC5tYWlsbWFwLCBzZWUgbGlua2dpdDpnaXQtc2hvcnRsb2dbMV0KKwlvciBsaW5rZ2l0OmdpdC1ibGFtZVsxXSkKKyclYWUnOjogYXV0aG9yIGVtYWlsCisnJWFFJzo6IGF1dGhvciBlbWFpbCAocmVzcGVjdGluZyAubWFpbG1hcCwgc2VlIGxpbmtnaXQ6Z2l0LXNob3J0bG9nWzFdCisJb3IgbGlua2dpdDpnaXQtYmxhbWVbMV0pCisnJWFsJzo6IGF1dGhvciBlbWFpbCBsb2NhbC1wYXJ0ICh0aGUgcGFydCBiZWZvcmUgdGhlICdAJyBzaWduKQorJyVhTCc6OiBhdXRob3IgbG9jYWwtcGFydCAoc2VlICclYWwnKSByZXNwZWN0aW5nIC5tYWlsbWFwLCBzZWUKKwlsaW5rZ2l0OmdpdC1zaG9ydGxvZ1sxXSBvciBsaW5rZ2l0OmdpdC1ibGFtZVsxXSkKKyclYWQnOjogYXV0aG9yIGRhdGUgKGZvcm1hdCByZXNwZWN0cyAtLWRhdGU9IG9wdGlvbikKKyclYUQnOjogYXV0aG9yIGRhdGUsIFJGQzI4MjIgc3R5bGUKKyclYXInOjogYXV0aG9yIGRhdGUsIHJlbGF0aXZlCisnJWF0Jzo6IGF1dGhvciBkYXRlLCBVTklYIHRpbWVzdGFtcAorJyVhaSc6OiBhdXRob3IgZGF0ZSwgSVNPIDg2MDEtbGlrZSBmb3JtYXQKKyclYUknOjogYXV0aG9yIGRhdGUsIHN0cmljdCBJU08gODYwMSBmb3JtYXQKKyclYXMnOjogYXV0aG9yIGRhdGUsIHNob3J0IGZvcm1hdCAoYFlZWVktTU0tRERgKQorJyVjbic6OiBjb21taXR0ZXIgbmFtZQorJyVjTic6OiBjb21taXR0ZXIgbmFtZSAocmVzcGVjdGluZyAubWFpbG1hcCwgc2VlCisJbGlua2dpdDpnaXQtc2hvcnRsb2dbMV0gb3IgbGlua2dpdDpnaXQtYmxhbWVbMV0pCisnJWNlJzo6IGNvbW1pdHRlciBlbWFpbAorJyVjRSc6OiBjb21taXR0ZXIgZW1haWwgKHJlc3BlY3RpbmcgLm1haWxtYXAsIHNlZQorCWxpbmtnaXQ6Z2l0LXNob3J0bG9nWzFdIG9yIGxpbmtnaXQ6Z2l0LWJsYW1lWzFdKQorJyVjbCc6OiBhdXRob3IgZW1haWwgbG9jYWwtcGFydCAodGhlIHBhcnQgYmVmb3JlIHRoZSAnQCcgc2lnbikKKyclY0wnOjogYXV0aG9yIGxvY2FsLXBhcnQgKHNlZSAnJWNsJykgcmVzcGVjdGluZyAubWFpbG1hcCwgc2VlCisJbGlua2dpdDpnaXQtc2hvcnRsb2dbMV0gb3IgbGlua2dpdDpnaXQtYmxhbWVbMV0pCisnJWNkJzo6IGNvbW1pdHRlciBkYXRlIChmb3JtYXQgcmVzcGVjdHMgLS1kYXRlPSBvcHRpb24pCisnJWNEJzo6IGNvbW1pdHRlciBkYXRlLCBSRkMyODIyIHN0eWxlCisnJWNyJzo6IGNvbW1pdHRlciBkYXRlLCByZWxhdGl2ZQorJyVjdCc6OiBjb21taXR0ZXIgZGF0ZSwgVU5JWCB0aW1lc3RhbXAKKyclY2knOjogY29tbWl0dGVyIGRhdGUsIElTTyA4NjAxLWxpa2UgZm9ybWF0CisnJWNJJzo6IGNvbW1pdHRlciBkYXRlLCBzdHJpY3QgSVNPIDg2MDEgZm9ybWF0CisnJWNzJzo6IGNvbW1pdHRlciBkYXRlLCBzaG9ydCBmb3JtYXQgKGBZWVlZLU1NLUREYCkKKyclZCc6OiByZWYgbmFtZXMsIGxpa2UgdGhlIC0tZGVjb3JhdGUgb3B0aW9uIG9mIGxpbmtnaXQ6Z2l0LWxvZ1sxXQorJyVEJzo6IHJlZiBuYW1lcyB3aXRob3V0IHRoZSAiICgiLCAiKSIgd3JhcHBpbmcuCisnJVMnOjogcmVmIG5hbWUgZ2l2ZW4gb24gdGhlIGNvbW1hbmQgbGluZSBieSB3aGljaCB0aGUgY29tbWl0IHdhcyByZWFjaGVkCisgICAgICAgKGxpa2UgYGdpdCBsb2cgLS1zb3VyY2VgKSwgb25seSB3b3JrcyB3aXRoIGBnaXQgbG9nYAorJyVlJzo6IGVuY29kaW5nCisnJXMnOjogc3ViamVjdAorJyVmJzo6IHNhbml0aXplZCBzdWJqZWN0IGxpbmUsIHN1aXRhYmxlIGZvciBhIGZpbGVuYW1lCisnJWInOjogYm9keQorJyVCJzo6IHJhdyBib2R5ICh1bndyYXBwZWQgc3ViamVjdCBhbmQgYm9keSkKIGlmbmRlZjo6Z2l0LXJldi1saXN0W10KLS0gJyVOJzogY29tbWl0IG5vdGVzCisnJU4nOjogY29tbWl0IG5vdGVzCiBlbmRpZjo6Z2l0LXJldi1saXN0W10KLS0gJyVHRyc6IHJhdyB2ZXJpZmljYXRpb24gbWVzc2FnZSBmcm9tIEdQRyBmb3IgYSBzaWduZWQgY29tbWl0Ci0tICclRz8nOiBzaG93ICJHIiBmb3IgYSBnb29kICh2YWxpZCkgc2lnbmF0dXJlLAotICAiQiIgZm9yIGEgYmFkIHNpZ25hdHVyZSwKLSAgIlUiIGZvciBhIGdvb2Qgc2lnbmF0dXJlIHdpdGggdW5rbm93biB2YWxpZGl0eSwKLSAgIlgiIGZvciBhIGdvb2Qgc2lnbmF0dXJlIHRoYXQgaGFzIGV4cGlyZWQsCi0gICJZIiBmb3IgYSBnb29kIHNpZ25hdHVyZSBtYWRlIGJ5IGFuIGV4cGlyZWQga2V5LAotICAiUiIgZm9yIGEgZ29vZCBzaWduYXR1cmUgbWFkZSBieSBhIHJldm9rZWQga2V5LAotICAiRSIgaWYgdGhlIHNpZ25hdHVyZSBjYW5ub3QgYmUgY2hlY2tlZCAoZS5nLiBtaXNzaW5nIGtleSkKLSAgYW5kICJOIiBmb3Igbm8gc2lnbmF0dXJlCi0tICclR1MnOiBzaG93IHRoZSBuYW1lIG9mIHRoZSBzaWduZXIgZm9yIGEgc2lnbmVkIGNvbW1pdAotLSAnJUdLJzogc2hvdyB0aGUga2V5IHVzZWQgdG8gc2lnbiBhIHNpZ25lZCBjb21taXQKLS0gJyVHRic6IHNob3cgdGhlIGZpbmdlcnByaW50IG9mIHRoZSBrZXkgdXNlZCB0byBzaWduIGEgc2lnbmVkIGNvbW1pdAotLSAnJUdQJzogc2hvdyB0aGUgZmluZ2VycHJpbnQgb2YgdGhlIHByaW1hcnkga2V5IHdob3NlIHN1YmtleSB3YXMgdXNlZAotICB0byBzaWduIGEgc2lnbmVkIGNvbW1pdAotLSAnJWdEJzogcmVmbG9nIHNlbGVjdG9yLCBlLmcuLCBgcmVmcy9zdGFzaEB7MX1gIG9yCi0gIGByZWZzL3N0YXNoQHsyIG1pbnV0ZXMgYWdvYH07IHRoZSBmb3JtYXQgZm9sbG93cyB0aGUgcnVsZXMgZGVzY3JpYmVkCi0gIGZvciB0aGUgYC1nYCBvcHRpb24uIFRoZSBwb3J0aW9uIGJlZm9yZSB0aGUgYEBgIGlzIHRoZSByZWZuYW1lIGFzCi0gIGdpdmVuIG9uIHRoZSBjb21tYW5kIGxpbmUgKHNvIGBnaXQgbG9nIC1nIHJlZnMvaGVhZHMvbWFzdGVyYCB3b3VsZAotICB5aWVsZCBgcmVmcy9oZWFkcy9tYXN0ZXJAezB9YCkuCi0tICclZ2QnOiBzaG9ydGVuZWQgcmVmbG9nIHNlbGVjdG9yOyBzYW1lIGFzIGAlZ0RgLCBidXQgdGhlIHJlZm5hbWUKLSAgcG9ydGlvbiBpcyBzaG9ydGVuZWQgZm9yIGh1bWFuIHJlYWRhYmlsaXR5IChzbyBgcmVmcy9oZWFkcy9tYXN0ZXJgCi0gIGJlY29tZXMganVzdCBgbWFzdGVyYCkuCi0tICclZ24nOiByZWZsb2cgaWRlbnRpdHkgbmFtZQotLSAnJWdOJzogcmVmbG9nIGlkZW50aXR5IG5hbWUgKHJlc3BlY3RpbmcgLm1haWxtYXAsIHNlZQotICBsaW5rZ2l0OmdpdC1zaG9ydGxvZ1sxXSBvciBsaW5rZ2l0OmdpdC1ibGFtZVsxXSkKLS0gJyVnZSc6IHJlZmxvZyBpZGVudGl0eSBlbWFpbAotLSAnJWdFJzogcmVmbG9nIGlkZW50aXR5IGVtYWlsIChyZXNwZWN0aW5nIC5tYWlsbWFwLCBzZWUKLSAgbGlua2dpdDpnaXQtc2hvcnRsb2dbMV0gb3IgbGlua2dpdDpnaXQtYmxhbWVbMV0pCi0tICclZ3MnOiByZWZsb2cgc3ViamVjdAotLSAnJUNyZWQnOiBzd2l0Y2ggY29sb3IgdG8gcmVkCi0tICclQ2dyZWVuJzogc3dpdGNoIGNvbG9yIHRvIGdyZWVuCi0tICclQ2JsdWUnOiBzd2l0Y2ggY29sb3IgdG8gYmx1ZQotLSAnJUNyZXNldCc6IHJlc2V0IGNvbG9yCi0tICclQyguLi4pJzogY29sb3Igc3BlY2lmaWNhdGlvbiwgYXMgZGVzY3JpYmVkIHVuZGVyIFZhbHVlcyBpbiB0aGUKLSAgIkNPTkZJR1VSQVRJT04gRklMRSIgc2VjdGlvbiBvZiBsaW5rZ2l0OmdpdC1jb25maWdbMV0uCi0gIEJ5IGRlZmF1bHQsIGNvbG9ycyBhcmUgc2hvd24gb25seSB3aGVuIGVuYWJsZWQgZm9yIGxvZyBvdXRwdXQgKGJ5Ci0gIGBjb2xvci5kaWZmYCwgYGNvbG9yLnVpYCwgb3IgYC0tY29sb3JgLCBhbmQgcmVzcGVjdGluZyB0aGUgYGF1dG9gCi0gIHNldHRpbmdzIG9mIHRoZSBmb3JtZXIgaWYgd2UgYXJlIGdvaW5nIHRvIGEgdGVybWluYWwpLiBgJUMoYXV0bywuLi4pYAotICBpcyBhY2NlcHRlZCBhcyBhIGhpc3RvcmljYWwgc3lub255bSBmb3IgdGhlIGRlZmF1bHQgKGUuZy4sCi0gIGAlQyhhdXRvLHJlZClgKS4gU3BlY2lmeWluZyBgJUMoYWx3YXlzLC4uLikgd2lsbCBzaG93IHRoZSBjb2xvcnMKLSAgZXZlbiB3aGVuIGNvbG9yIGlzIG5vdCBvdGhlcndpc2UgZW5hYmxlZCAodGhvdWdoIGNvbnNpZGVyCi0gIGp1c3QgdXNpbmcgYC0tY29sb3I9YWx3YXlzYCB0byBlbmFibGUgY29sb3IgZm9yIHRoZSB3aG9sZSBvdXRwdXQsCi0gIGluY2x1ZGluZyB0aGlzIGZvcm1hdCBhbmQgYW55dGhpbmcgZWxzZSBnaXQgbWlnaHQgY29sb3IpLiAgYGF1dG9gCi0gIGFsb25lIChpLmUuIGAlQyhhdXRvKWApIHdpbGwgdHVybiBvbiBhdXRvIGNvbG9yaW5nIG9uIHRoZSBuZXh0Ci0gIHBsYWNlaG9sZGVycyB1bnRpbCB0aGUgY29sb3IgaXMgc3dpdGNoZWQgYWdhaW4uCi0tICclbSc6IGxlZnQgKGA8YCksIHJpZ2h0IChgPmApIG9yIGJvdW5kYXJ5IChgLWApIG1hcmsKLS0gJyVuJzogbmV3bGluZQotLSAnJSUnOiBhIHJhdyAnJScKLS0gJyV4MDAnOiBwcmludCBhIGJ5dGUgZnJvbSBhIGhleCBjb2RlCi0tICcldyhbPHc+Wyw8aTE+Wyw8aTI+XV1dKSc6IHN3aXRjaCBsaW5lIHdyYXBwaW5nLCBsaWtlIHRoZSAtdyBvcHRpb24gb2YKLSAgbGlua2dpdDpnaXQtc2hvcnRsb2dbMV0uCi0tICclPCg8Tj5bLHRydW5jfGx0cnVuY3xtdHJ1bmNdKSc6IG1ha2UgdGhlIG5leHQgcGxhY2Vob2xkZXIgdGFrZSBhdAotICBsZWFzdCBOIGNvbHVtbnMsIHBhZGRpbmcgc3BhY2VzIG9uIHRoZSByaWdodCBpZiBuZWNlc3NhcnkuCi0gIE9wdGlvbmFsbHkgdHJ1bmNhdGUgYXQgdGhlIGJlZ2lubmluZyAobHRydW5jKSwgdGhlIG1pZGRsZSAobXRydW5jKQotICBvciB0aGUgZW5kICh0cnVuYykgaWYgdGhlIG91dHB1dCBpcyBsb25nZXIgdGhhbiBOIGNvbHVtbnMuCi0gIE5vdGUgdGhhdCB0cnVuY2F0aW5nIG9ubHkgd29ya3MgY29ycmVjdGx5IHdpdGggTiA+PSAyLgotLSAnJTx8KDxOPiknOiBtYWtlIHRoZSBuZXh0IHBsYWNlaG9sZGVyIHRha2UgYXQgbGVhc3QgdW50aWwgTnRoCi0gIGNvbHVtbnMsIHBhZGRpbmcgc3BhY2VzIG9uIHRoZSByaWdodCBpZiBuZWNlc3NhcnkKLS0gJyU+KDxOPiknLCAnJT58KDxOPiknOiBzaW1pbGFyIHRvICclPCg8Tj4pJywgJyU8fCg8Tj4pJwotICByZXNwZWN0aXZlbHksIGJ1dCBwYWRkaW5nIHNwYWNlcyBvbiB0aGUgbGVmdAotLSAnJT4+KDxOPiknLCAnJT4+fCg8Tj4pJzogc2ltaWxhciB0byAnJT4oPE4+KScsICclPnwoPE4+KScKLSAgcmVzcGVjdGl2ZWx5LCBleGNlcHQgdGhhdCBpZiB0aGUgbmV4dCBwbGFjZWhvbGRlciB0YWtlcyBtb3JlIHNwYWNlcwotICB0aGFuIGdpdmVuIGFuZCB0aGVyZSBhcmUgc3BhY2VzIG9uIGl0cyBsZWZ0LCB1c2UgdGhvc2Ugc3BhY2VzCi0tICclPjwoPE4+KScsICclPjx8KDxOPiknOiBzaW1pbGFyIHRvICclPCg8Tj4pJywgJyU8fCg8Tj4pJwotICByZXNwZWN0aXZlbHksIGJ1dCBwYWRkaW5nIGJvdGggc2lkZXMgKGkuZS4gdGhlIHRleHQgaXMgY2VudGVyZWQpCi0tICUodHJhaWxlcnNbOm9wdGlvbnNdKTogZGlzcGxheSB0aGUgdHJhaWxlcnMgb2YgdGhlIGJvZHkgYXMgaW50ZXJwcmV0ZWQKLSAgYnkgbGlua2dpdDpnaXQtaW50ZXJwcmV0LXRyYWlsZXJzWzFdLiBUaGUgYHRyYWlsZXJzYCBzdHJpbmcgbWF5IGJlCi0gIGZvbGxvd2VkIGJ5IGEgY29sb24gYW5kIHplcm8gb3IgbW9yZSBjb21tYS1zZXBhcmF0ZWQgb3B0aW9ucy4gSWYgdGhlCi0gIGBvbmx5YCBvcHRpb24gaXMgZ2l2ZW4sIG9taXQgbm9uLXRyYWlsZXIgbGluZXMgZnJvbSB0aGUgdHJhaWxlciBibG9jay4KLSAgSWYgdGhlIGB1bmZvbGRgIG9wdGlvbiBpcyBnaXZlbiwgYmVoYXZlIGFzIGlmIGludGVycHJldC10cmFpbGVyJ3MKLSAgYC0tdW5mb2xkYCBvcHRpb24gd2FzIGdpdmVuLiAgRS5nLiwgYCUodHJhaWxlcnM6b25seSx1bmZvbGQpYCB0byBkbwotICBib3RoLgorJyVHRyc6OiByYXcgdmVyaWZpY2F0aW9uIG1lc3NhZ2UgZnJvbSBHUEcgZm9yIGEgc2lnbmVkIGNvbW1pdAorJyVHPyc6OiBzaG93ICJHIiBmb3IgYSBnb29kICh2YWxpZCkgc2lnbmF0dXJlLAorCSJCIiBmb3IgYSBiYWQgc2lnbmF0dXJlLAorCSJVIiBmb3IgYSBnb29kIHNpZ25hdHVyZSB3aXRoIHVua25vd24gdmFsaWRpdHksCisJIlgiIGZvciBhIGdvb2Qgc2lnbmF0dXJlIHRoYXQgaGFzIGV4cGlyZWQsCisJIlkiIGZvciBhIGdvb2Qgc2lnbmF0dXJlIG1hZGUgYnkgYW4gZXhwaXJlZCBrZXksCisJIlIiIGZvciBhIGdvb2Qgc2lnbmF0dXJlIG1hZGUgYnkgYSByZXZva2VkIGtleSwKKwkiRSIgaWYgdGhlIHNpZ25hdHVyZSBjYW5ub3QgYmUgY2hlY2tlZCAoZS5nLiBtaXNzaW5nIGtleSkKKwlhbmQgIk4iIGZvciBubyBzaWduYXR1cmUKKyclR1MnOjogc2hvdyB0aGUgbmFtZSBvZiB0aGUgc2lnbmVyIGZvciBhIHNpZ25lZCBjb21taXQKKyclR0snOjogc2hvdyB0aGUga2V5IHVzZWQgdG8gc2lnbiBhIHNpZ25lZCBjb21taXQKKyclR0YnOjogc2hvdyB0aGUgZmluZ2VycHJpbnQgb2YgdGhlIGtleSB1c2VkIHRvIHNpZ24gYSBzaWduZWQgY29tbWl0CisnJUdQJzo6IHNob3cgdGhlIGZpbmdlcnByaW50IG9mIHRoZSBwcmltYXJ5IGtleSB3aG9zZSBzdWJrZXkgd2FzIHVzZWQKKwl0byBzaWduIGEgc2lnbmVkIGNvbW1pdAorJyVHVCc6OiBzaG93IHRoZSB0cnVzdCBsZXZlbCBmb3IgdGhlIGtleSB1c2VkIHRvIHNpZ24gYSBzaWduZWQgY29tbWl0CisnJWdEJzo6IHJlZmxvZyBzZWxlY3RvciwgZS5nLiwgYHJlZnMvc3Rhc2hAezF9YCBvciBgcmVmcy9zdGFzaEB7MgorCW1pbnV0ZXMgYWdvfWA7IHRoZSBmb3JtYXQgZm9sbG93cyB0aGUgcnVsZXMgZGVzY3JpYmVkIGZvciB0aGUKKwlgLWdgIG9wdGlvbi4gVGhlIHBvcnRpb24gYmVmb3JlIHRoZSBgQGAgaXMgdGhlIHJlZm5hbWUgYXMKKwlnaXZlbiBvbiB0aGUgY29tbWFuZCBsaW5lIChzbyBgZ2l0IGxvZyAtZyByZWZzL2hlYWRzL21hc3RlcmAKKwl3b3VsZCB5aWVsZCBgcmVmcy9oZWFkcy9tYXN0ZXJAezB9YCkuCisnJWdkJzo6IHNob3J0ZW5lZCByZWZsb2cgc2VsZWN0b3I7IHNhbWUgYXMgYCVnRGAsIGJ1dCB0aGUgcmVmbmFtZQorCXBvcnRpb24gaXMgc2hvcnRlbmVkIGZvciBodW1hbiByZWFkYWJpbGl0eSAoc28KKwlgcmVmcy9oZWFkcy9tYXN0ZXJgIGJlY29tZXMganVzdCBgbWFzdGVyYCkuCisnJWduJzo6IHJlZmxvZyBpZGVudGl0eSBuYW1lCisnJWdOJzo6IHJlZmxvZyBpZGVudGl0eSBuYW1lIChyZXNwZWN0aW5nIC5tYWlsbWFwLCBzZWUKKwlsaW5rZ2l0OmdpdC1zaG9ydGxvZ1sxXSBvciBsaW5rZ2l0OmdpdC1ibGFtZVsxXSkKKyclZ2UnOjogcmVmbG9nIGlkZW50aXR5IGVtYWlsCisnJWdFJzo6IHJlZmxvZyBpZGVudGl0eSBlbWFpbCAocmVzcGVjdGluZyAubWFpbG1hcCwgc2VlCisJbGlua2dpdDpnaXQtc2hvcnRsb2dbMV0gb3IgbGlua2dpdDpnaXQtYmxhbWVbMV0pCisnJWdzJzo6IHJlZmxvZyBzdWJqZWN0CisnJSh0cmFpbGVyc1s6b3B0aW9uc10pJzo6IGRpc3BsYXkgdGhlIHRyYWlsZXJzIG9mIHRoZSBib2R5IGFzCisJCQkgIGludGVycHJldGVkIGJ5CisJCQkgIGxpbmtnaXQ6Z2l0LWludGVycHJldC10cmFpbGVyc1sxXS4gVGhlCisJCQkgIGB0cmFpbGVyc2Agc3RyaW5nIG1heSBiZSBmb2xsb3dlZCBieSBhIGNvbG9uCisJCQkgIGFuZCB6ZXJvIG9yIG1vcmUgY29tbWEtc2VwYXJhdGVkIG9wdGlvbnM6CisqKiAna2V5PTxLPic6IG9ubHkgc2hvdyB0cmFpbGVycyB3aXRoIHNwZWNpZmllZCBrZXkuIE1hdGNoaW5nIGlzIGRvbmUKKyAgIGNhc2UtaW5zZW5zaXRpdmVseSBhbmQgdHJhaWxpbmcgY29sb24gaXMgb3B0aW9uYWwuIElmIG9wdGlvbiBpcworICAgZ2l2ZW4gbXVsdGlwbGUgdGltZXMgdHJhaWxlciBsaW5lcyBtYXRjaGluZyBhbnkgb2YgdGhlIGtleXMgYXJlCisgICBzaG93bi4gVGhpcyBvcHRpb24gYXV0b21hdGljYWxseSBlbmFibGVzIHRoZSBgb25seWAgb3B0aW9uIHNvIHRoYXQKKyAgIG5vbi10cmFpbGVyIGxpbmVzIGluIHRoZSB0cmFpbGVyIGJsb2NrIGFyZSBoaWRkZW4uIElmIHRoYXQgaXMgbm90CisgICBkZXNpcmVkIGl0IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBvbmx5PWZhbHNlYC4gIEUuZy4sCisgICBgJSh0cmFpbGVyczprZXk9UmV2aWV3ZWQtYnkpYCBzaG93cyB0cmFpbGVyIGxpbmVzIHdpdGgga2V5CisgICBgUmV2aWV3ZWQtYnlgLgorKiogJ29ubHlbPXZhbF0nOiBzZWxlY3Qgd2hldGhlciBub24tdHJhaWxlciBsaW5lcyBmcm9tIHRoZSB0cmFpbGVyCisgICBibG9jayBzaG91bGQgYmUgaW5jbHVkZWQuIFRoZSBgb25seWAga2V5d29yZCBtYXkgb3B0aW9uYWxseSBiZQorICAgZm9sbG93ZWQgYnkgYW4gZXF1YWwgc2lnbiBhbmQgb25lIG9mIGB0cnVlYCwgYG9uYCwgYHllc2AgdG8gb21pdCBvcgorICAgYGZhbHNlYCwgYG9mZmAsIGBub2AgdG8gc2hvdyB0aGUgbm9uLXRyYWlsZXIgbGluZXMuIElmIG9wdGlvbiBpcworICAgZ2l2ZW4gd2l0aG91dCB2YWx1ZSBpdCBpcyBlbmFibGVkLiBJZiBnaXZlbiBtdWx0aXBsZSB0aW1lcyB0aGUgbGFzdAorICAgdmFsdWUgaXMgdXNlZC4KKyoqICdzZXBhcmF0b3I9PFNFUD4nOiBzcGVjaWZ5IGEgc2VwYXJhdG9yIGluc2VydGVkIGJldHdlZW4gdHJhaWxlcgorICAgbGluZXMuIFdoZW4gdGhpcyBvcHRpb24gaXMgbm90IGdpdmVuIGVhY2ggdHJhaWxlciBsaW5lIGlzCisgICB0ZXJtaW5hdGVkIHdpdGggYSBsaW5lIGZlZWQgY2hhcmFjdGVyLiBUaGUgc3RyaW5nIFNFUCBtYXkgY29udGFpbgorICAgdGhlIGxpdGVyYWwgZm9ybWF0dGluZyBjb2RlcyBkZXNjcmliZWQgYWJvdmUuIFRvIHVzZSBjb21tYSBhcworICAgc2VwYXJhdG9yIG9uZSBtdXN0IHVzZSBgJXgyQ2AgYXMgaXQgd291bGQgb3RoZXJ3aXNlIGJlIHBhcnNlZCBhcworICAgbmV4dCBvcHRpb24uIElmIHNlcGFyYXRvciBvcHRpb24gaXMgZ2l2ZW4gbXVsdGlwbGUgdGltZXMgb25seSB0aGUKKyAgIGxhc3Qgb25lIGlzIHVzZWQuIEUuZy4sIGAlKHRyYWlsZXJzOmtleT1UaWNrZXQsc2VwYXJhdG9yPSV4MkMgKWAKKyAgIHNob3dzIGFsbCB0cmFpbGVyIGxpbmVzIHdob3NlIGtleSBpcyAiVGlja2V0IiBzZXBhcmF0ZWQgYnkgYSBjb21tYQorICAgYW5kIGEgc3BhY2UuCisqKiAndW5mb2xkWz12YWxdJzogbWFrZSBpdCBiZWhhdmUgYXMgaWYgaW50ZXJwcmV0LXRyYWlsZXIncyBgLS11bmZvbGRgCisgICBvcHRpb24gd2FzIGdpdmVuLiBJbiBzYW1lIHdheSBhcyB0byBmb3IgYG9ubHlgIGl0IGNhbiBiZSBmb2xsb3dlZAorICAgYnkgYW4gZXF1YWwgc2lnbiBhbmQgZXhwbGljaXQgdmFsdWUuIEUuZy4sCisgICBgJSh0cmFpbGVyczpvbmx5LHVuZm9sZD10cnVlKWAgdW5mb2xkcyBhbmQgc2hvd3MgYWxsIHRyYWlsZXIgbGluZXMuCisqKiAndmFsdWVvbmx5Wz12YWxdJzogc2tpcCBvdmVyIHRoZSBrZXkgcGFydCBvZiB0aGUgdHJhaWxlciBsaW5lIGFuZCBvbmx5CisgICBzaG93IHRoZSB2YWx1ZSBwYXJ0LiBBbHNvIHRoaXMgb3B0aW9uYWxseSBhbGxvd3MgZXhwbGljaXQgdmFsdWUuCiAKIE5PVEU6IFNvbWUgcGxhY2Vob2xkZXJzIG1heSBkZXBlbmQgb24gb3RoZXIgb3B0aW9ucyBnaXZlbiB0byB0aGUKIHJldmlzaW9uIHRyYXZlcnNhbCBlbmdpbmUuIEZvciBleGFtcGxlLCB0aGUgYCVnKmAgcmVmbG9nIG9wdGlvbnMgd2lsbApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9wcmV0dHktb3B0aW9ucy50eHQgYi9Eb2N1bWVudGF0aW9uL3ByZXR0eS1vcHRpb25zLnR4dAppbmRleCBlNDRmYzhmLi43YTZkYTZkIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL3ByZXR0eS1vcHRpb25zLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL3ByZXR0eS1vcHRpb25zLnR4dApAQCAtMyw3ICszLDcgQEAKIAogCVByZXR0eS1wcmludCB0aGUgY29udGVudHMgb2YgdGhlIGNvbW1pdCBsb2dzIGluIGEgZ2l2ZW4gZm9ybWF0LAogCXdoZXJlICc8Zm9ybWF0PicgY2FuIGJlIG9uZSBvZiAnb25lbGluZScsICdzaG9ydCcsICdtZWRpdW0nLAotCSdmdWxsJywgJ2Z1bGxlcicsICdlbWFpbCcsICdyYXcnLCAnZm9ybWF0OjxzdHJpbmc+JworCSdmdWxsJywgJ2Z1bGxlcicsICdyZWZlcmVuY2UnLCAnZW1haWwnLCAncmF3JywgJ2Zvcm1hdDo8c3RyaW5nPicKIAlhbmQgJ3Rmb3JtYXQ6PHN0cmluZz4nLiAgV2hlbiAnPGZvcm1hdD4nIGlzIG5vbmUgb2YgdGhlIGFib3ZlLAogCWFuZCBoYXMgJyVwbGFjZWhvbGRlcicgaW4gaXQsIGl0IGFjdHMgYXMgaWYKIAknLS1wcmV0dHk9dGZvcm1hdDo8Zm9ybWF0Picgd2VyZSBnaXZlbi4KQEAgLTU3LDcgKzU3LDcgQEAKIGFuZCAnZnVsbGVyJykuCiAKIGlmbmRlZjo6Z2l0LXJldi1saXN0W10KLS0tbm90ZXNbPTx0cmVlaXNoPl06OgorLS1ub3Rlc1s9PHJlZj5dOjoKIAlTaG93IHRoZSBub3RlcyAoc2VlIGxpbmtnaXQ6Z2l0LW5vdGVzWzFdKSB0aGF0IGFubm90YXRlIHRoZQogCWNvbW1pdCwgd2hlbiBzaG93aW5nIHRoZSBjb21taXQgbG9nIG1lc3NhZ2UuICBUaGlzIGlzIHRoZSBkZWZhdWx0CiAJZm9yIGBnaXQgbG9nYCwgYGdpdCBzaG93YCBhbmQgYGdpdCB3aGF0Y2hhbmdlZGAgY29tbWFuZHMgd2hlbgpAQCAtNjgsOCArNjgsOCBAQAogYGNvcmUubm90ZXNSZWZgIGFuZCBgbm90ZXMuZGlzcGxheVJlZmAgdmFyaWFibGVzIChvciBjb3JyZXNwb25kaW5nCiBlbnZpcm9ubWVudCBvdmVycmlkZXMpLiBTZWUgbGlua2dpdDpnaXQtY29uZmlnWzFdIGZvciBtb3JlIGRldGFpbHMuCiArCi1XaXRoIGFuIG9wdGlvbmFsICc8dHJlZWlzaD4nIGFyZ3VtZW50LCB1c2UgdGhlIHRyZWVpc2ggdG8gZmluZCB0aGUgbm90ZXMKLXRvIGRpc3BsYXkuICBUaGUgdHJlZWlzaCBjYW4gc3BlY2lmeSB0aGUgZnVsbCByZWZuYW1lIHdoZW4gaXQgYmVnaW5zCitXaXRoIGFuIG9wdGlvbmFsICc8cmVmPicgYXJndW1lbnQsIHVzZSB0aGUgcmVmIHRvIGZpbmQgdGhlIG5vdGVzCit0byBkaXNwbGF5LiAgVGhlIHJlZiBjYW4gc3BlY2lmeSB0aGUgZnVsbCByZWZuYW1lIHdoZW4gaXQgYmVnaW5zCiB3aXRoIGByZWZzL25vdGVzL2A7IHdoZW4gaXQgYmVnaW5zIHdpdGggYG5vdGVzL2AsIGByZWZzL2AgYW5kIG90aGVyd2lzZQogYHJlZnMvbm90ZXMvYCBpcyBwcmVmaXhlZCB0byBmb3JtIGEgZnVsbCBuYW1lIG9mIHRoZSByZWYuCiArCkBAIC04NSw3ICs4NSw3IEBACiAJIi0tbm90ZXMgLS1ub3Rlcz1mb28gLS1uby1ub3RlcyAtLW5vdGVzPWJhciIgd2lsbCBvbmx5IHNob3cgbm90ZXMKIAlmcm9tICJyZWZzL25vdGVzL2JhciIuCiAKLS0tc2hvdy1ub3Rlc1s9PHRyZWVpc2g+XTo6CistLXNob3ctbm90ZXNbPTxyZWY+XTo6CiAtLVtuby1dc3RhbmRhcmQtbm90ZXM6OgogCVRoZXNlIG9wdGlvbnMgYXJlIGRlcHJlY2F0ZWQuIFVzZSB0aGUgYWJvdmUgLS1ub3Rlcy8tLW5vLW5vdGVzCiAJb3B0aW9ucyBpbnN0ZWFkLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9yZXYtbGlzdC1vcHRpb25zLnR4dCBiL0RvY3VtZW50YXRpb24vcmV2LWxpc3Qtb3B0aW9ucy50eHQKaW5kZXggYmFiNWY1MC4uYmZkMDJhZCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9yZXYtbGlzdC1vcHRpb25zLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL3Jldi1saXN0LW9wdGlvbnMudHh0CkBAIC0xMyw4ICsxMyw2IEBACiBOb3RlIHRoYXQgdGhlc2UgYXJlIGFwcGxpZWQgYmVmb3JlIGNvbW1pdAogb3JkZXJpbmcgYW5kIGZvcm1hdHRpbmcgb3B0aW9ucywgc3VjaCBhcyBgLS1yZXZlcnNlYC4KIAotLS0KLQogLTxudW1iZXI+OjoKIC1uIDxudW1iZXI+OjoKIC0tbWF4LWNvdW50PTxudW1iZXI+OjoKQEAgLTYwLDcgKzU4LDcgQEAKIAlgLS1hbGwtbWF0Y2hgKS4KIGlmbmRlZjo6Z2l0LXJldi1saXN0W10KICsKLVdoZW4gYC0tc2hvdy1ub3Rlc2AgaXMgaW4gZWZmZWN0LCB0aGUgbWVzc2FnZSBmcm9tIHRoZSBub3RlcyBpcworV2hlbiBgLS1ub3Rlc2AgaXMgaW4gZWZmZWN0LCB0aGUgbWVzc2FnZSBmcm9tIHRoZSBub3RlcyBpcwogbWF0Y2hlZCBhcyBpZiBpdCB3ZXJlIHBhcnQgb2YgdGhlIGxvZyBtZXNzYWdlLgogZW5kaWY6OmdpdC1yZXYtbGlzdFtdCiAKQEAgLTE4NCw2ICsxODIsMTQgQEAKIAlQcmV0ZW5kIGFzIGlmIGFsbCBvYmplY3RzIG1lbnRpb25lZCBieSByZWZsb2dzIGFyZSBsaXN0ZWQgb24gdGhlCiAJY29tbWFuZCBsaW5lIGFzIGA8Y29tbWl0PmAuCiAKKy0tYWx0ZXJuYXRlLXJlZnM6OgorCVByZXRlbmQgYXMgaWYgYWxsIG9iamVjdHMgbWVudGlvbmVkIGFzIHJlZiB0aXBzIG9mIGFsdGVybmF0ZQorCXJlcG9zaXRvcmllcyB3ZXJlIGxpc3RlZCBvbiB0aGUgY29tbWFuZCBsaW5lLiBBbiBhbHRlcm5hdGUKKwlyZXBvc2l0b3J5IGlzIGFueSByZXBvc2l0b3J5IHdob3NlIG9iamVjdCBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkCisJaW4gYG9iamVjdHMvaW5mby9hbHRlcm5hdGVzYC4gIFRoZSBzZXQgb2YgaW5jbHVkZWQgb2JqZWN0cyBtYXkKKwliZSBtb2RpZmllZCBieSBgY29yZS5hbHRlcm5hdGVSZWZzQ29tbWFuZGAsIGV0Yy4gU2VlCisJbGlua2dpdDpnaXQtY29uZmlnWzFdLgorCiAtLXNpbmdsZS13b3JrdHJlZTo6CiAJQnkgZGVmYXVsdCwgYWxsIHdvcmtpbmcgdHJlZXMgd2lsbCBiZSBleGFtaW5lZCBieSB0aGUKIAlmb2xsb3dpbmcgb3B0aW9ucyB3aGVuIHRoZXJlIGFyZSBtb3JlIHRoYW4gb25lIChzZWUKQEAgLTI2Myw3ICsyNjksNyBAQAogCWV4Y2x1ZGUgKHRoYXQgaXMsICd7Y2FyZXR9Y29tbWl0JywgJ2NvbW1pdDEuLmNvbW1pdDInLAogCWFuZCAnY29tbWl0MVwuLi5jb21taXQyJyBub3RhdGlvbnMgY2Fubm90IGJlIHVzZWQpLgogKwotV2l0aCBgLS1wcmV0dHlgIGZvcm1hdCBvdGhlciB0aGFuIGBvbmVsaW5lYCAoZm9yIG9idmlvdXMgcmVhc29ucyksCitXaXRoIGAtLXByZXR0eWAgZm9ybWF0IG90aGVyIHRoYW4gYG9uZWxpbmVgIGFuZCBgcmVmZXJlbmNlYCAoZm9yIG9idmlvdXMgcmVhc29ucyksCiB0aGlzIGNhdXNlcyB0aGUgb3V0cHV0IHRvIGhhdmUgdHdvIGV4dHJhIGxpbmVzIG9mIGluZm9ybWF0aW9uCiB0YWtlbiBmcm9tIHRoZSByZWZsb2cuICBUaGUgcmVmbG9nIGRlc2lnbmF0b3IgaW4gdGhlIG91dHB1dCBtYXkgYmUgc2hvd24KIGFzIGByZWZAe050aH1gICh3aGVyZSBgTnRoYCBpcyB0aGUgcmV2ZXJzZS1jaHJvbm9sb2dpY2FsIGluZGV4IGluIHRoZQpAQCAtMjcyLDEzICsyNzgsMTMgQEAKICsKIC0tCiAxLiBJZiB0aGUgc3RhcnRpbmcgcG9pbnQgaXMgc3BlY2lmaWVkIGFzIGByZWZAe050aH1gLCBzaG93IHRoZSBpbmRleAotZm9ybWF0LgorICAgZm9ybWF0LgogKwogMi4gSWYgdGhlIHN0YXJ0aW5nIHBvaW50IHdhcyBzcGVjaWZpZWQgYXMgYHJlZkB7bm93fWAsIHNob3cgdGhlCi10aW1lc3RhbXAgZm9ybWF0LgorICAgdGltZXN0YW1wIGZvcm1hdC4KICsKIDMuIElmIG5laXRoZXIgd2FzIHVzZWQsIGJ1dCBgLS1kYXRlYCB3YXMgZ2l2ZW4gb24gdGhlIGNvbW1hbmQgbGluZSwgc2hvdwotdGhlIHRpbWVzdGFtcCBpbiB0aGUgZm9ybWF0IHJlcXVlc3RlZCBieSBgLS1kYXRlYC4KKyAgIHRoZSB0aW1lc3RhbXAgaW4gdGhlIGZvcm1hdCByZXF1ZXN0ZWQgYnkgYC0tZGF0ZWAuCiArCiA0LiBPdGhlcndpc2UsIHNob3cgdGhlIGluZGV4IGZvcm1hdC4KIC0tCkBAIC0yODcsNiArMjkzLDggQEAKIHByZWZpeGVkIHdpdGggdGhpcyBpbmZvcm1hdGlvbiBvbiB0aGUgc2FtZSBsaW5lLgogVGhpcyBvcHRpb24gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggYC0tcmV2ZXJzZWAuCiBTZWUgYWxzbyBsaW5rZ2l0OmdpdC1yZWZsb2dbMV0uCisrCitVbmRlciBgLS1wcmV0dHk9cmVmZXJlbmNlYCwgdGhpcyBpbmZvcm1hdGlvbiB3aWxsIG5vdCBiZSBzaG93biBhdCBhbGwuCiAKIC0tbWVyZ2U6OgogCUFmdGVyIGEgZmFpbGVkIG1lcmdlLCBzaG93IHJlZnMgdGhhdCB0b3VjaCBmaWxlcyBoYXZpbmcgYQpAQCAtMzA4LDggKzMxNiw2IEBACiAJYDxoZWFkZXI+YCB0ZXh0IHdpbGwgYmUgcHJpbnRlZCB3aXRoIGVhY2ggcHJvZ3Jlc3MgdXBkYXRlLgogZW5kaWY6OmdpdC1yZXYtbGlzdFtdCiAKLS0tCi0KIEhpc3RvcnkgU2ltcGxpZmljYXRpb24KIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIApAQCAtNTc1LDYgKzU4MSw3IEBACiBjb250ZW50cyBvZiB0aGUgcGF0aHMgZ2l2ZW4gb24gdGhlIGNvbW1hbmQgbGluZS4gIEFsbCBvdGhlcgogY29tbWl0cyBhcmUgbWFya2VkIGFzIFRSRUVTQU1FIChzdWJqZWN0IHRvIGJlIHNpbXBsaWZpZWQgYXdheSkuCiAKK2lmbmRlZjo6Z2l0LXNob3J0bG9nW10KIGlmZGVmOjpnaXQtcmV2LWxpc3RbXQogQmlzZWN0aW9uIEhlbHBlcnMKIH5+fn5+fn5+fn5+fn5+fn5+CkBAIC02MzAsOCArNjM3LDkgQEAKIGFmdGVyIGFsbCB0aGUgc29ydGVkIGNvbW1pdCBvYmplY3RzLCB0aGVyZSB3aWxsIGJlIHRoZSBzYW1lIHRleHQgYXMgaWYKIGAtLWJpc2VjdC12YXJzYCBoYWQgYmVlbiB1c2VkIGFsb25lLgogZW5kaWY6OmdpdC1yZXYtbGlzdFtdCitlbmRpZjo6Z2l0LXNob3J0bG9nW10KIAotCitpZm5kZWY6OmdpdC1zaG9ydGxvZ1tdCiBDb21taXQgT3JkZXJpbmcKIH5+fn5+fn5+fn5+fn5+fgogCkBAIC02NzMsNyArNjgxLDkgQEAKIAlPdXRwdXQgdGhlIGNvbW1pdHMgY2hvc2VuIHRvIGJlIHNob3duIChzZWUgQ29tbWl0IExpbWl0aW5nCiAJc2VjdGlvbiBhYm92ZSkgaW4gcmV2ZXJzZSBvcmRlci4gQ2Fubm90IGJlIGNvbWJpbmVkIHdpdGgKIAlgLS13YWxrLXJlZmxvZ3NgLgorZW5kaWY6OmdpdC1zaG9ydGxvZ1tdCiAKK2lmbmRlZjo6Z2l0LXNob3J0bG9nW10KIE9iamVjdCBUcmF2ZXJzYWwKIH5+fn5+fn5+fn5+fn5+fn4KIApAQCAtNzEyLDYgKzcyMiwxNiBAQAogCU9ubHkgdXNlZnVsIHdpdGggYC0tb2JqZWN0c2A7IHByaW50IHRoZSBvYmplY3QgSURzIHRoYXQgYXJlIG5vdAogCWluIHBhY2tzLgogCistLW9iamVjdC1uYW1lczo6CisJT25seSB1c2VmdWwgd2l0aCBgLS1vYmplY3RzYDsgcHJpbnQgdGhlIG5hbWVzIG9mIHRoZSBvYmplY3QgSURzCisJdGhhdCBhcmUgZm91bmQuIFRoaXMgaXMgdGhlIGRlZmF1bHQgYmVoYXZpb3IuCisKKy0tbm8tb2JqZWN0LW5hbWVzOjoKKwlPbmx5IHVzZWZ1bCB3aXRoIGAtLW9iamVjdHNgOyBkb2VzIG5vdCBwcmludCB0aGUgbmFtZXMgb2YgdGhlIG9iamVjdAorCUlEcyB0aGF0IGFyZSBmb3VuZC4gVGhpcyBpbnZlcnRzIGAtLW9iamVjdC1uYW1lc2AuIFRoaXMgZmxhZyBhbGxvd3MKKwl0aGUgb3V0cHV0IHRvIGJlIG1vcmUgZWFzaWx5IHBhcnNlZCBieSBjb21tYW5kcyBzdWNoIGFzCisJbGlua2dpdDpnaXQtY2F0LWZpbGVbMV0uCisKIC0tZmlsdGVyPTxmaWx0ZXItc3BlYz46OgogCU9ubHkgdXNlZnVsIHdpdGggb25lIG9mIHRoZSBgLS1vYmplY3RzKmA7IG9taXRzIG9iamVjdHMgKHVzdWFsbHkKIAlibG9icykgZnJvbSB0aGUgbGlzdCBvZiBwcmludGVkIG9iamVjdHMuICBUaGUgJzxmaWx0ZXItc3BlYz4nCkBAIC03MjksMjAgKzc0OSw0MiBAQAogdG8gb21pdCBibG9icyB0aGF0IHdvdWxkIG5vdCBiZSBub3QgcmVxdWlyZWQgZm9yIGEgc3BhcnNlIGNoZWNrb3V0IG9uCiB0aGUgcmVxdWVzdGVkIHJlZnMuCiArCi1UaGUgZm9ybSAnLS1maWx0ZXI9c3BhcnNlOnBhdGg9PHBhdGg+JyBzaW1pbGFybHkgdXNlcyBhIHNwYXJzZS1jaGVja291dAotc3BlY2lmaWNhdGlvbiBjb250YWluZWQgaW4gPHBhdGg+LgotKwogVGhlIGZvcm0gJy0tZmlsdGVyPXRyZWU6PGRlcHRoPicgb21pdHMgYWxsIGJsb2JzIGFuZCB0cmVlcyB3aG9zZSBkZXB0aAogZnJvbSB0aGUgcm9vdCB0cmVlIGlzID49IDxkZXB0aD4gKG1pbmltdW0gZGVwdGggaWYgYW4gb2JqZWN0IGlzIGxvY2F0ZWQKLWF0IG11bHRpcGxlIGRlcHRocyBpbiB0aGUgY29tbWl0cyB0cmF2ZXJzZWQpLiBDdXJyZW50bHksIG9ubHkgPGRlcHRoPj0wCi1pcyBzdXBwb3J0ZWQsIHdoaWNoIG9taXRzIGFsbCBibG9icyBhbmQgdHJlZXMuCithdCBtdWx0aXBsZSBkZXB0aHMgaW4gdGhlIGNvbW1pdHMgdHJhdmVyc2VkKS4gPGRlcHRoPj0wIHdpbGwgbm90IGluY2x1ZGUKK2FueSB0cmVlcyBvciBibG9icyB1bmxlc3MgaW5jbHVkZWQgZXhwbGljaXRseSBpbiB0aGUgY29tbWFuZC1saW5lIChvcgorc3RhbmRhcmQgaW5wdXQgd2hlbiAtLXN0ZGluIGlzIHVzZWQpLiA8ZGVwdGg+PTEgd2lsbCBpbmNsdWRlIG9ubHkgdGhlCit0cmVlIGFuZCBibG9icyB3aGljaCBhcmUgcmVmZXJlbmNlZCBkaXJlY3RseSBieSBhIGNvbW1pdCByZWFjaGFibGUgZnJvbQorPGNvbW1pdD4gb3IgYW4gZXhwbGljaXRseS1naXZlbiBvYmplY3QuIDxkZXB0aD49MiBpcyBsaWtlIDxkZXB0aD49MQord2hpbGUgYWxzbyBpbmNsdWRpbmcgdHJlZXMgYW5kIGJsb2JzIG9uZSBtb3JlIGxldmVsIHJlbW92ZWQgZnJvbSBhbgorZXhwbGljaXRseS1naXZlbiBjb21taXQgb3IgdHJlZS4KKysKK05vdGUgdGhhdCB0aGUgZm9ybSAnLS1maWx0ZXI9c3BhcnNlOnBhdGg9PHBhdGg+JyB0aGF0IHdhbnRzIHRvIHJlYWQKK2Zyb20gYW4gYXJiaXRyYXJ5IHBhdGggb24gdGhlIGZpbGVzeXN0ZW0gaGFzIGJlZW4gZHJvcHBlZCBmb3Igc2VjdXJpdHkKK3JlYXNvbnMuCisrCitNdWx0aXBsZSAnLS1maWx0ZXI9JyBmbGFncyBjYW4gYmUgc3BlY2lmaWVkIHRvIGNvbWJpbmUgZmlsdGVycy4gT25seQorb2JqZWN0cyB3aGljaCBhcmUgYWNjZXB0ZWQgYnkgZXZlcnkgZmlsdGVyIGFyZSBpbmNsdWRlZC4KKysKK1RoZSBmb3JtICctLWZpbHRlcj1jb21iaW5lOjxmaWx0ZXIxPis8ZmlsdGVyMj4rLi4uPGZpbHRlck4+JyBjYW4gYWxzbyBiZQordXNlZCB0byBjb21iaW5lZCBzZXZlcmFsIGZpbHRlcnMsIGJ1dCB0aGlzIGlzIGhhcmRlciB0aGFuIGp1c3QgcmVwZWF0aW5nCit0aGUgJy0tZmlsdGVyJyBmbGFnIGFuZCBpcyB1c3VhbGx5IG5vdCBuZWNlc3NhcnkuIEZpbHRlcnMgYXJlIGpvaW5lZCBieQorJ3twbHVzfScgYW5kIGluZGl2aWR1YWwgZmlsdGVycyBhcmUgJS1lbmNvZGVkIChpLmUuIFVSTC1lbmNvZGVkKS4KK0Jlc2lkZXMgdGhlICd7cGx1c30nIGFuZCAnJScgY2hhcmFjdGVycywgdGhlIGZvbGxvd2luZyBjaGFyYWN0ZXJzIGFyZQorcmVzZXJ2ZWQgYW5kIGFsc28gbXVzdCBiZSBlbmNvZGVkOiBgfiFAIyReJiooKVtde31cOyIsPD4/YCsmIzM5OyYjOTY7KworYXMgd2VsbCBhcyBhbGwgY2hhcmFjdGVycyB3aXRoIEFTQ0lJIGNvZGUgJmx0Oz0gYDB4MjBgLCB3aGljaCBpbmNsdWRlcworc3BhY2UgYW5kIG5ld2xpbmUuCisrCitPdGhlciBhcmJpdHJhcnkgY2hhcmFjdGVycyBjYW4gYWxzbyBiZSBlbmNvZGVkLiBGb3IgaW5zdGFuY2UsCisnY29tYmluZTp0cmVlOjMrYmxvYjpub25lJyBhbmQgJ2NvbWJpbmU6dHJlZSUzQTMrYmxvYiUzQW5vbmUnIGFyZQorZXF1aXZhbGVudC4KIAogLS1uby1maWx0ZXI6OgogCVR1cm4gb2ZmIGFueSBwcmV2aW91cyBgLS1maWx0ZXI9YCBhcmd1bWVudC4KIAogLS1maWx0ZXItcHJpbnQtb21pdHRlZDo6CiAJT25seSB1c2VmdWwgd2l0aCBgLS1maWx0ZXI9YDsgcHJpbnRzIGEgbGlzdCBvZiB0aGUgb2JqZWN0cyBvbWl0dGVkCi0JYnkgdGhlIGZpbHRlci4JT2JqZWN0IElEcyBhcmUgcHJlZml4ZWQgd2l0aCBhIGBgficnIGNoYXJhY3Rlci4KKwlieSB0aGUgZmlsdGVyLiAgT2JqZWN0IElEcyBhcmUgcHJlZml4ZWQgd2l0aCBhIGBgficnIGNoYXJhY3Rlci4KIAogLS1taXNzaW5nPTxtaXNzaW5nLWFjdGlvbj46OgogCUEgZGVidWcgb3B0aW9uIHRvIGhlbHAgd2l0aCBmdXR1cmUgInBhcnRpYWwgY2xvbmUiIGRldmVsb3BtZW50LgpAQCAtNzgxLDcgKzgyMyw5IEBACiAKIC0tZG8td2Fsazo6CiAJT3ZlcnJpZGVzIGEgcHJldmlvdXMgYC0tbm8td2Fsa2AuCitlbmRpZjo6Z2l0LXNob3J0bG9nW10KIAoraWZuZGVmOjpnaXQtc2hvcnRsb2dbXQogQ29tbWl0IEZvcm1hdHRpbmcKIH5+fn5+fn5+fn5+fn5+fn5+CiAKQEAgLTgwNCwxMiArODQ4LDEzIEBACiAJYXV0aG9yJ3MpLiBJZiBgLWxvY2FsYCBpcyBhcHBlbmRlZCB0byB0aGUgZm9ybWF0IChlLmcuLAogCWBpc28tbG9jYWxgKSwgdGhlIHVzZXIncyBsb2NhbCB0aW1lIHpvbmUgaXMgdXNlZCBpbnN0ZWFkLgogKworLS0KIGAtLWRhdGU9cmVsYXRpdmVgIHNob3dzIGRhdGVzIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHRpbWUsCiBlLmcuIGBgMiBob3VycyBhZ28nJy4gVGhlIGAtbG9jYWxgIG9wdGlvbiBoYXMgbm8gZWZmZWN0IGZvcgogYC0tZGF0ZT1yZWxhdGl2ZWAuCi0rCisKIGAtLWRhdGU9bG9jYWxgIGlzIGFuIGFsaWFzIGZvciBgLS1kYXRlPWRlZmF1bHQtbG9jYWxgLgotKworCiBgLS1kYXRlPWlzb2AgKG9yIGAtLWRhdGU9aXNvODYwMWApIHNob3dzIHRpbWVzdGFtcHMgaW4gYSBJU08gODYwMS1saWtlIGZvcm1hdC4KIFRoZSBkaWZmZXJlbmNlcyB0byB0aGUgc3RyaWN0IElTTyA4NjAxIGZvcm1hdCBhcmU6CiAKQEAgLTgxNywxNSArODYyLDE0IEBACiAJLSBhIHNwYWNlIGJldHdlZW4gdGltZSBhbmQgdGltZSB6b25lCiAJLSBubyBjb2xvbiBiZXR3ZWVuIGhvdXJzIGFuZCBtaW51dGVzIG9mIHRoZSB0aW1lIHpvbmUKIAotKwogYC0tZGF0ZT1pc28tc3RyaWN0YCAob3IgYC0tZGF0ZT1pc284NjAxLXN0cmljdGApIHNob3dzIHRpbWVzdGFtcHMgaW4gc3RyaWN0CiBJU08gODYwMSBmb3JtYXQuCi0rCisKIGAtLWRhdGU9cmZjYCAob3IgYC0tZGF0ZT1yZmMyODIyYCkgc2hvd3MgdGltZXN0YW1wcyBpbiBSRkMgMjgyMgogZm9ybWF0LCBvZnRlbiBmb3VuZCBpbiBlbWFpbCBtZXNzYWdlcy4KLSsKKwogYC0tZGF0ZT1zaG9ydGAgc2hvd3Mgb25seSB0aGUgZGF0ZSwgYnV0IG5vdCB0aGUgdGltZSwgaW4gYFlZWVktTU0tRERgIGZvcm1hdC4KLSsKKwogYC0tZGF0ZT1yYXdgIHNob3dzIHRoZSBkYXRlIGFzIHNlY29uZHMgc2luY2UgdGhlIGVwb2NoICgxOTcwLTAxLTAxCiAwMDowMDowMCBVVEMpLCBmb2xsb3dlZCBieSBhIHNwYWNlLCBhbmQgdGhlbiB0aGUgdGltZXpvbmUgYXMgYW4gb2Zmc2V0CiBmcm9tIFVUQyAoYSBgK2Agb3IgYC1gIHdpdGggZm91ciBkaWdpdHM7IHRoZSBmaXJzdCB0d28gYXJlIGhvdXJzLCBhbmQKQEAgLTgzNCwyMSArODc4LDI4IEBACiBOb3RlIHRoYXQgdGhlIGAtbG9jYWxgIG9wdGlvbiBkb2VzIG5vdCBhZmZlY3QgdGhlIHNlY29uZHMtc2luY2UtZXBvY2gKIHZhbHVlICh3aGljaCBpcyBhbHdheXMgbWVhc3VyZWQgaW4gVVRDKSwgYnV0IGRvZXMgc3dpdGNoIHRoZSBhY2NvbXBhbnlpbmcKIHRpbWV6b25lIHZhbHVlLgotKworCitgLS1kYXRlPWh1bWFuYCBzaG93cyB0aGUgdGltZXpvbmUgaWYgdGhlIHRpbWV6b25lIGRvZXMgbm90IG1hdGNoIHRoZQorY3VycmVudCB0aW1lLXpvbmUsIGFuZCBkb2Vzbid0IHByaW50IHRoZSB3aG9sZSBkYXRlIGlmIHRoYXQgbWF0Y2hlcworKGllIHNraXAgcHJpbnRpbmcgeWVhciBmb3IgZGF0ZXMgdGhhdCBhcmUgInRoaXMgeWVhciIsIGJ1dCBhbHNvIHNraXAKK3RoZSB3aG9sZSBkYXRlIGl0c2VsZiBpZiBpdCdzIGluIHRoZSBsYXN0IGZldyBkYXlzIGFuZCB3ZSBjYW4ganVzdCBzYXkKK3doYXQgd2Vla2RheSBpdCB3YXMpLiAgRm9yIG9sZGVyIGRhdGVzIHRoZSBob3VyIGFuZCBtaW51dGUgaXMgYWxzbworb21pdHRlZC4KKwogYC0tZGF0ZT11bml4YCBzaG93cyB0aGUgZGF0ZSBhcyBhIFVuaXggZXBvY2ggdGltZXN0YW1wIChzZWNvbmRzIHNpbmNlCiAxOTcwKS4gIEFzIHdpdGggYC0tcmF3YCwgdGhpcyBpcyBhbHdheXMgaW4gVVRDIGFuZCB0aGVyZWZvcmUgYC1sb2NhbGAKIGhhcyBubyBlZmZlY3QuCi0rCisKIGAtLWRhdGU9Zm9ybWF0Oi4uLmAgZmVlZHMgdGhlIGZvcm1hdCBgLi4uYCB0byB5b3VyIHN5c3RlbSBgc3RyZnRpbWVgLAogZXhjZXB0IGZvciAleiBhbmQgJVosIHdoaWNoIGFyZSBoYW5kbGVkIGludGVybmFsbHkuCiBVc2UgYC0tZGF0ZT1mb3JtYXQ6JWNgIHRvIHNob3cgdGhlIGRhdGUgaW4geW91ciBzeXN0ZW0gbG9jYWxlJ3MKIHByZWZlcnJlZCBmb3JtYXQuICBTZWUgdGhlIGBzdHJmdGltZWAgbWFudWFsIGZvciBhIGNvbXBsZXRlIGxpc3Qgb2YKIGZvcm1hdCBwbGFjZWhvbGRlcnMuIFdoZW4gdXNpbmcgYC1sb2NhbGAsIHRoZSBjb3JyZWN0IHN5bnRheCBpcwogYC0tZGF0ZT1mb3JtYXQtbG9jYWw6Li4uYC4KLSsKKwogYC0tZGF0ZT1kZWZhdWx0YCBpcyB0aGUgZGVmYXVsdCBmb3JtYXQsIGFuZCBpcyBzaW1pbGFyIHRvCiBgLS1kYXRlPXJmYzI4MjJgLCB3aXRoIGEgZmV3IGV4Y2VwdGlvbnM6Ci0KKy0tCiAJLSB0aGVyZSBpcyBubyBjb21tYSBhZnRlciB0aGUgZGF5LW9mLXdlZWsKIAogCS0gdGhlIHRpbWUgem9uZSBpcyBvbWl0dGVkIHdoZW4gdGhlIGxvY2FsIHRpbWUgem9uZSBpcyB1c2VkCkBAIC05MzAsNyArOTgxLDkgQEAKIAljb3VudHMgYW5kIHByaW50IHRoZSBjb3VudCBmb3IgZXF1aXZhbGVudCBjb21taXRzIHNlcGFyYXRlZAogCWJ5IGEgdGFiLgogZW5kaWY6OmdpdC1yZXYtbGlzdFtdCitlbmRpZjo6Z2l0LXNob3J0bG9nW10KIAoraWZuZGVmOjpnaXQtc2hvcnRsb2dbXQogaWZuZGVmOjpnaXQtcmV2LWxpc3RbXQogRGlmZiBGb3JtYXR0aW5nCiB+fn5+fn5+fn5+fn5+fn4KQEAgLTk1Miw2ICsxMDA1LDEzIEBACiAJdGhlIHBhcmVudHMgaGF2ZSBvbmx5IHR3byB2YXJpYW50cyBhbmQgdGhlIG1lcmdlIHJlc3VsdCBwaWNrcwogCW9uZSBvZiB0aGVtIHdpdGhvdXQgbW9kaWZpY2F0aW9uLgogCistLWNvbWJpbmVkLWFsbC1wYXRoczo6CisJVGhpcyBmbGFnIGNhdXNlcyBjb21iaW5lZCBkaWZmcyAodXNlZCBmb3IgbWVyZ2UgY29tbWl0cykgdG8KKwlsaXN0IHRoZSBuYW1lIG9mIHRoZSBmaWxlIGZyb20gYWxsIHBhcmVudHMuICBJdCB0aHVzIG9ubHkgaGFzCisJZWZmZWN0IHdoZW4gLWMgb3IgLS1jYyBhcmUgc3BlY2lmaWVkLCBhbmQgaXMgbGlrZWx5IG9ubHkKKwl1c2VmdWwgaWYgZmlsZW5hbWUgY2hhbmdlcyBhcmUgZGV0ZWN0ZWQgKGkuZS4gd2hlbiBlaXRoZXIKKwlyZW5hbWUgb3IgY29weSBkZXRlY3Rpb24gaGF2ZSBiZWVuIHJlcXVlc3RlZCkuCisKIC1tOjoKIAlUaGlzIGZsYWcgbWFrZXMgdGhlIG1lcmdlIGNvbW1pdHMgc2hvdyB0aGUgZnVsbCBkaWZmIGxpa2UKIAlyZWd1bGFyIGNvbW1pdHM7IGZvciBlYWNoIG1lcmdlIHBhcmVudCwgYSBzZXBhcmF0ZSBsb2cgZW50cnkKQEAgLTk2NiwzICsxMDI2LDQgQEAKIC10OjoKIAlTaG93IHRoZSB0cmVlIG9iamVjdHMgaW4gdGhlIGRpZmYgb3V0cHV0LiBUaGlzIGltcGxpZXMgYC1yYC4KIGVuZGlmOjpnaXQtcmV2LWxpc3RbXQorZW5kaWY6OmdpdC1zaG9ydGxvZ1tdCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3JldmlzaW9ucy50eHQgYi9Eb2N1bWVudGF0aW9uL3JldmlzaW9ucy50eHQKaW5kZXggNzJkYWEyMC4uOTdmOTk1ZSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9yZXZpc2lvbnMudHh0CisrKyBiL0RvY3VtZW50YXRpb24vcmV2aXNpb25zLnR4dApAQCAtNTgsMTQgKzU4LDE0IEBACiB3aGVuIHlvdSBydW4gYGdpdCBjaGVycnktcGlja2AuCiArCiBOb3RlIHRoYXQgYW55IG9mIHRoZSAncmVmcy8qJyBjYXNlcyBhYm92ZSBtYXkgY29tZSBlaXRoZXIgZnJvbQotdGhlICckR0lUX0RJUi9yZWZzJyBkaXJlY3Rvcnkgb3IgZnJvbSB0aGUgJyRHSVRfRElSL3BhY2tlZC1yZWZzJyBmaWxlLgordGhlIGAkR0lUX0RJUi9yZWZzYCBkaXJlY3Rvcnkgb3IgZnJvbSB0aGUgYCRHSVRfRElSL3BhY2tlZC1yZWZzYCBmaWxlLgogV2hpbGUgdGhlIHJlZiBuYW1lIGVuY29kaW5nIGlzIHVuc3BlY2lmaWVkLCBVVEYtOCBpcyBwcmVmZXJyZWQgYXMKIHNvbWUgb3V0cHV0IHByb2Nlc3NpbmcgbWF5IGFzc3VtZSByZWYgbmFtZXMgaW4gVVRGLTguCiAKICdAJzo6CiAgICdAJyBhbG9uZSBpcyBhIHNob3J0Y3V0IGZvciBgSEVBRGAuCiAKLSc8cmVmbmFtZT5AezxkYXRlPn0nLCBlLmcuICdtYXN0ZXJAXHt5ZXN0ZXJkYXlcfScsICdIRUFEQHs1IG1pbnV0ZXMgYWdvfSc6OgorJ1s8cmVmbmFtZT5dQHs8ZGF0ZT59JywgZS5nLiAnbWFzdGVyQFx7eWVzdGVyZGF5XH0nLCAnSEVBREB7NSBtaW51dGVzIGFnb30nOjoKICAgQSByZWYgZm9sbG93ZWQgYnkgdGhlIHN1ZmZpeCAnQCcgd2l0aCBhIGRhdGUgc3BlY2lmaWNhdGlvbgogICBlbmNsb3NlZCBpbiBhIGJyYWNlCiAgIHBhaXIgKGUuZy4gJ1x7eWVzdGVyZGF5XH0nLCAnezEgbW9udGggMiB3ZWVrcyAzIGRheXMgMSBob3VyIDEKQEAgLTk1LDcgKzk1LDcgQEAKICAgVGhlIGNvbnN0cnVjdCAnQHstPG4+fScgbWVhbnMgdGhlIDxuPnRoIGJyYW5jaC9jb21taXQgY2hlY2tlZCBvdXQKICAgYmVmb3JlIHRoZSBjdXJyZW50IG9uZS4KIAotJzxicmFuY2huYW1lPkBce3Vwc3RyZWFtXH0nLCBlLmcuICdtYXN0ZXJAXHt1cHN0cmVhbVx9JywgJ0Bce3VcfSc6OgorJ1s8YnJhbmNobmFtZT5dQFx7dXBzdHJlYW1cfScsIGUuZy4gJ21hc3RlckBce3Vwc3RyZWFtXH0nLCAnQFx7dVx9Jzo6CiAgIFRoZSBzdWZmaXggJ0Bce3Vwc3RyZWFtXH0nIHRvIGEgYnJhbmNobmFtZSAoc2hvcnQgZm9ybSAnPGJyYW5jaG5hbWU+QFx7dVx9JykKICAgcmVmZXJzIHRvIHRoZSBicmFuY2ggdGhhdCB0aGUgYnJhbmNoIHNwZWNpZmllZCBieSBicmFuY2huYW1lIGlzIHNldCB0byBidWlsZCBvbgogICB0b3Agb2YgKGNvbmZpZ3VyZWQgd2l0aCBgYnJhbmNoLjxuYW1lPi5yZW1vdGVgIGFuZApAQCAtMTAzLDE5ICsxMDMsMTkgQEAKICAgY3VycmVudCBvbmUuIFRoZXNlIHN1ZmZpeGVzIGFyZSBhbHNvIGFjY2VwdGVkIHdoZW4gc3BlbGxlZCBpbiB1cHBlcmNhc2UsIGFuZAogICB0aGV5IG1lYW4gdGhlIHNhbWUgdGhpbmcgbm8gbWF0dGVyIHRoZSBjYXNlLgogCi0nPGJyYW5jaG5hbWU+QFx7cHVzaFx9JywgZS5nLiAnbWFzdGVyQFx7cHVzaFx9JywgJ0Bce3B1c2hcfSc6OgorJ1s8YnJhbmNobmFtZT5dQFx7cHVzaFx9JywgZS5nLiAnbWFzdGVyQFx7cHVzaFx9JywgJ0Bce3B1c2hcfSc6OgogICBUaGUgc3VmZml4ICdAXHtwdXNofScgcmVwb3J0cyB0aGUgYnJhbmNoICJ3aGVyZSB3ZSB3b3VsZCBwdXNoIHRvIiBpZgogICBgZ2l0IHB1c2hgIHdlcmUgcnVuIHdoaWxlIGBicmFuY2huYW1lYCB3YXMgY2hlY2tlZCBvdXQgKG9yIHRoZSBjdXJyZW50CiAgIGBIRUFEYCBpZiBubyBicmFuY2huYW1lIGlzIHNwZWNpZmllZCkuIFNpbmNlIG91ciBwdXNoIGRlc3RpbmF0aW9uIGlzCiAgIGluIGEgcmVtb3RlIHJlcG9zaXRvcnksIG9mIGNvdXJzZSwgd2UgcmVwb3J0IHRoZSBsb2NhbCB0cmFja2luZyBicmFuY2gKLSAgdGhhdCBjb3JyZXNwb25kcyB0byB0aGF0IGJyYW5jaCAoaS5lLiwgc29tZXRoaW5nIGluICdyZWZzL3JlbW90ZXMvJykuCisgIHRoYXQgY29ycmVzcG9uZHMgdG8gdGhhdCBicmFuY2ggKGkuZS4sIHNvbWV0aGluZyBpbiBgcmVmcy9yZW1vdGVzL2ApLgogKwogSGVyZSdzIGFuIGV4YW1wbGUgdG8gbWFrZSBpdCBtb3JlIGNsZWFyOgogKwogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAkIGdpdCBjb25maWcgcHVzaC5kZWZhdWx0IGN1cnJlbnQKICQgZ2l0IGNvbmZpZyByZW1vdGUucHVzaGRlZmF1bHQgbXlmb3JrCi0kIGdpdCBjaGVja291dCAtYiBteWJyYW5jaCBvcmlnaW4vbWFzdGVyCiskIGdpdCBzd2l0Y2ggLWMgbXlicmFuY2ggb3JpZ2luL21hc3RlcgogCiAkIGdpdCByZXYtcGFyc2UgLS1zeW1ib2xpYy1mdWxsLW5hbWUgQHt1cHN0cmVhbX0KIHJlZnMvcmVtb3Rlcy9vcmlnaW4vbWFzdGVyCkBAIC0xMzEsNyArMTMxLDcgQEAKIFRoaXMgc3VmZml4IGlzIGFsc28gYWNjZXB0ZWQgd2hlbiBzcGVsbGVkIGluIHVwcGVyY2FzZSwgYW5kIG1lYW5zIHRoZSBzYW1lCiB0aGluZyBubyBtYXR0ZXIgdGhlIGNhc2UuCiAKLSc8cmV2PntjYXJldH0nLCBlLmcuICdIRUFEe2NhcmV0fSwgdjEuNS4xe2NhcmV0fTAnOjoKKyc8cmV2PntjYXJldH1bPG4+XScsIGUuZy4gJ0hFQUR7Y2FyZXR9LCB2MS41LjF7Y2FyZXR9MCc6OgogICBBIHN1ZmZpeCAne2NhcmV0fScgdG8gYSByZXZpc2lvbiBwYXJhbWV0ZXIgbWVhbnMgdGhlIGZpcnN0IHBhcmVudCBvZgogICB0aGF0IGNvbW1pdCBvYmplY3QuICAne2NhcmV0fTxuPicgbWVhbnMgdGhlIDxuPnRoIHBhcmVudCAoaS5lLgogICAnPHJldj57Y2FyZXR9JwpAQCAtMTM5LDcgKzEzOSw5IEBACiAgICc8cmV2PntjYXJldH0wJyBtZWFucyB0aGUgY29tbWl0IGl0c2VsZiBhbmQgaXMgdXNlZCB3aGVuICc8cmV2PicgaXMgdGhlCiAgIG9iamVjdCBuYW1lIG9mIGEgdGFnIG9iamVjdCB0aGF0IHJlZmVycyB0byBhIGNvbW1pdCBvYmplY3QuCiAKLSc8cmV2Pnt0aWxkZX08bj4nLCBlLmcuICdtYXN0ZXJ7dGlsZGV9Myc6OgorJzxyZXY+e3RpbGRlfVs8bj5dJywgZS5nLiAnSEVBRHt0aWxkZX0sIG1hc3Rlcnt0aWxkZX0zJzo6CisgIEEgc3VmZml4ICd7dGlsZGV9JyB0byBhIHJldmlzaW9uIHBhcmFtZXRlciBtZWFucyB0aGUgZmlyc3QgcGFyZW50IG9mCisgIHRoYXQgY29tbWl0IG9iamVjdC4KICAgQSBzdWZmaXggJ3t0aWxkZX08bj4nIHRvIGEgcmV2aXNpb24gcGFyYW1ldGVyIG1lYW5zIHRoZSBjb21taXQKICAgb2JqZWN0IHRoYXQgaXMgdGhlIDxuPnRoIGdlbmVyYXRpb24gYW5jZXN0b3Igb2YgdGhlIG5hbWVkCiAgIGNvbW1pdCBvYmplY3QsIGZvbGxvd2luZyBvbmx5IHRoZSBmaXJzdCBwYXJlbnRzLiAgSS5lLiAnPHJldj57dGlsZGV9MycgaXMKQEAgLTE1OSwxMiArMTYxLDEyIEBACiAgICc8cmV2PntjYXJldH0wJwogICBpcyBhIHNob3J0LWhhbmQgZm9yICc8cmV2PntjYXJldH1ce2NvbW1pdFx9Jy4KICsKLSdyZXZ7Y2FyZXR9XHtvYmplY3RcfScgY2FuIGJlIHVzZWQgdG8gbWFrZSBzdXJlICdyZXYnIG5hbWVzIGFuCi1vYmplY3QgdGhhdCBleGlzdHMsIHdpdGhvdXQgcmVxdWlyaW5nICdyZXYnIHRvIGJlIGEgdGFnLCBhbmQKLXdpdGhvdXQgZGVyZWZlcmVuY2luZyAncmV2JzsgYmVjYXVzZSBhIHRhZyBpcyBhbHJlYWR5IGFuIG9iamVjdCwKKyc8cmV2PntjYXJldH1ce29iamVjdFx9JyBjYW4gYmUgdXNlZCB0byBtYWtlIHN1cmUgJzxyZXY+JyBuYW1lcyBhbgorb2JqZWN0IHRoYXQgZXhpc3RzLCB3aXRob3V0IHJlcXVpcmluZyAnPHJldj4nIHRvIGJlIGEgdGFnLCBhbmQKK3dpdGhvdXQgZGVyZWZlcmVuY2luZyAnPHJldj4nOyBiZWNhdXNlIGEgdGFnIGlzIGFscmVhZHkgYW4gb2JqZWN0LAogaXQgZG9lcyBub3QgaGF2ZSB0byBiZSBkZXJlZmVyZW5jZWQgZXZlbiBvbmNlIHRvIGdldCB0byBhbiBvYmplY3QuCiArCi0ncmV2e2NhcmV0fVx7dGFnXH0nIGNhbiBiZSB1c2VkIHRvIGVuc3VyZSB0aGF0ICdyZXYnIGlkZW50aWZpZXMgYW4KKyc8cmV2PntjYXJldH1ce3RhZ1x9JyBjYW4gYmUgdXNlZCB0byBlbnN1cmUgdGhhdCAnPHJldj4nIGlkZW50aWZpZXMgYW4KIGV4aXN0aW5nIHRhZyBvYmplY3QuCiAKICc8cmV2PntjYXJldH17fScsIGUuZy4gJ3YwLjk5Ljh7Y2FyZXR9e30nOjoKQEAgLTE5NCwxOSArMTk2LDE2IEBACiAgIERlcGVuZGluZyBvbiB0aGUgZ2l2ZW4gdGV4dCwgdGhlIHNoZWxsJ3Mgd29yZCBzcGxpdHRpbmcgcnVsZXMgbWlnaHQKICAgcmVxdWlyZSBhZGRpdGlvbmFsIHF1b3RpbmcuCiAKLSc8cmV2Pjo8cGF0aD4nLCBlLmcuICdIRUFEOlJFQURNRScsICc6UkVBRE1FJywgJ21hc3RlcjouL1JFQURNRSc6OgorJzxyZXY+OjxwYXRoPicsIGUuZy4gJ0hFQUQ6UkVBRE1FJywgJ21hc3RlcjouL1JFQURNRSc6OgogICBBIHN1ZmZpeCAnOicgZm9sbG93ZWQgYnkgYSBwYXRoIG5hbWVzIHRoZSBibG9iIG9yIHRyZWUKICAgYXQgdGhlIGdpdmVuIHBhdGggaW4gdGhlIHRyZWUtaXNoIG9iamVjdCBuYW1lZCBieSB0aGUgcGFydAogICBiZWZvcmUgdGhlIGNvbG9uLgotICAnOnBhdGgnICh3aXRoIGFuIGVtcHR5IHBhcnQgYmVmb3JlIHRoZSBjb2xvbikKLSAgaXMgYSBzcGVjaWFsIGNhc2Ugb2YgdGhlIHN5bnRheCBkZXNjcmliZWQgbmV4dDogY29udGVudAotICByZWNvcmRlZCBpbiB0aGUgaW5kZXggYXQgdGhlIGdpdmVuIHBhdGguCiAgIEEgcGF0aCBzdGFydGluZyB3aXRoICcuLycgb3IgJy4uLycgaXMgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuCiAgIFRoZSBnaXZlbiBwYXRoIHdpbGwgYmUgY29udmVydGVkIHRvIGJlIHJlbGF0aXZlIHRvIHRoZSB3b3JraW5nIHRyZWUncyByb290IGRpcmVjdG9yeS4KICAgVGhpcyBpcyBtb3N0IHVzZWZ1bCB0byBhZGRyZXNzIGEgYmxvYiBvciB0cmVlIGZyb20gYSBjb21taXQgb3IgdHJlZSB0aGF0IGhhcwogICB0aGUgc2FtZSB0cmVlIHN0cnVjdHVyZSBhcyB0aGUgd29ya2luZyB0cmVlLgogCi0nOjxuPjo8cGF0aD4nLCBlLmcuICc6MDpSRUFETUUnLCAnOlJFQURNRSc6OgorJzpbPG4+Ol08cGF0aD4nLCBlLmcuICc6MDpSRUFETUUnLCAnOlJFQURNRSc6OgogICBBIGNvbG9uLCBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgc3RhZ2UgbnVtYmVyICgwIHRvIDMpIGFuZCBhCiAgIGNvbG9uLCBmb2xsb3dlZCBieSBhIHBhdGgsIG5hbWVzIGEgYmxvYiBvYmplY3QgaW4gdGhlCiAgIGluZGV4IGF0IHRoZSBnaXZlbiBwYXRoLiBBIG1pc3Npbmcgc3RhZ2UgbnVtYmVyIChhbmQgdGhlIGNvbG9uCkBAIC0zMDIsNyArMzAxLDcgQEAKIFRoZSAncjF7Y2FyZXR9IScgbm90YXRpb24gaW5jbHVkZXMgY29tbWl0ICdyMScgYnV0IGV4Y2x1ZGVzIGFsbCBvZiBpdHMgcGFyZW50cy4KIEJ5IGl0c2VsZiwgdGhpcyBub3RhdGlvbiBkZW5vdGVzIHRoZSBzaW5nbGUgY29tbWl0ICdyMScuCiAKLVRoZSAnPHJldj57Y2FyZXR9LTxuPicgbm90YXRpb24gaW5jbHVkZXMgJzxyZXY+JyBidXQgZXhjbHVkZXMgdGhlIDxuPnRoCitUaGUgJzxyZXY+e2NhcmV0fS1bPG4+XScgbm90YXRpb24gaW5jbHVkZXMgJzxyZXY+JyBidXQgZXhjbHVkZXMgdGhlIDxuPnRoCiBwYXJlbnQgKGkuZS4gYSBzaG9ydGhhbmQgZm9yICc8cmV2PntjYXJldH08bj4uLjxyZXY+JyksIHdpdGggJzxuPicgPSAxIGlmCiBub3QgZ2l2ZW4uIFRoaXMgaXMgdHlwaWNhbGx5IHVzZWZ1bCBmb3IgbWVyZ2UgY29tbWl0cyB3aGVyZSB5b3UKIGNhbiBqdXN0IHBhc3MgJzxjb21taXQ+e2NhcmV0fS0nIHRvIGdldCBhbGwgdGhlIGNvbW1pdHMgaW4gdGhlIGJyYW5jaApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9zZXF1ZW5jZXIudHh0IGIvRG9jdW1lbnRhdGlvbi9zZXF1ZW5jZXIudHh0CmluZGV4IDU3NDdmNDQuLjNiY2ViNTYgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vc2VxdWVuY2VyLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL3NlcXVlbmNlci50eHQKQEAgLTEsOCArMSwxMiBAQAogLS1jb250aW51ZTo6CiAJQ29udGludWUgdGhlIG9wZXJhdGlvbiBpbiBwcm9ncmVzcyB1c2luZyB0aGUgaW5mb3JtYXRpb24gaW4KLQknLmdpdC9zZXF1ZW5jZXInLiAgQ2FuIGJlIHVzZWQgdG8gY29udGludWUgYWZ0ZXIgcmVzb2x2aW5nCisJYC5naXQvc2VxdWVuY2VyYC4gIENhbiBiZSB1c2VkIHRvIGNvbnRpbnVlIGFmdGVyIHJlc29sdmluZwogCWNvbmZsaWN0cyBpbiBhIGZhaWxlZCBjaGVycnktcGljayBvciByZXZlcnQuCiAKKy0tc2tpcDo6CisJU2tpcCB0aGUgY3VycmVudCBjb21taXQgYW5kIGNvbnRpbnVlIHdpdGggdGhlIHJlc3Qgb2YgdGhlCisJc2VxdWVuY2UuCisKIC0tcXVpdDo6CiAJRm9yZ2V0IGFib3V0IHRoZSBjdXJyZW50IG9wZXJhdGlvbiBpbiBwcm9ncmVzcy4gIENhbiBiZSB1c2VkCiAJdG8gY2xlYXIgdGhlIHNlcXVlbmNlciBzdGF0ZSBhZnRlciBhIGZhaWxlZCBjaGVycnktcGljayBvcgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLWFsbG9jYXRpb24tZ3Jvd2luZy50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktYWxsb2NhdGlvbi1ncm93aW5nLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWE1OWI1NC4uMDAwMDAwMAotLS0gYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktYWxsb2NhdGlvbi1ncm93aW5nLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDM5ICswLDAgQEAKLWFsbG9jYXRpb24gZ3Jvd2luZyBBUEkKLT09PT09PT09PT09PT09PT09PT09PT0KLQotRHluYW1pY2FsbHkgZ3Jvd2luZyBhbiBhcnJheSB1c2luZyByZWFsbG9jKCkgaXMgZXJyb3IgcHJvbmUgYW5kIGJvcmluZy4KLQotRGVmaW5lIHlvdXIgYXJyYXkgd2l0aDoKLQotKiBhIHBvaW50ZXIgKGBpdGVtYCkgdGhhdCBwb2ludHMgYXQgdGhlIGFycmF5LCBpbml0aWFsaXplZCB0byBgTlVMTGAKLSAgKGFsdGhvdWdoIHBsZWFzZSBuYW1lIHRoZSB2YXJpYWJsZSBiYXNlZCBvbiBpdHMgY29udGVudHMsIG5vdCBvbiBpdHMKLSAgdHlwZSk7Ci0KLSogYW4gaW50ZWdlciB2YXJpYWJsZSAoYGFsbG9jYCkgdGhhdCBrZWVwcyB0cmFjayBvZiBob3cgYmlnIHRoZSBjdXJyZW50Ci0gIGFsbG9jYXRpb24gaXMsIGluaXRpYWxpemVkIHRvIGAwYDsKLQotKiBhbm90aGVyIGludGVnZXIgdmFyaWFibGUgKGBucmApIHRvIGtlZXAgdHJhY2sgb2YgaG93IG1hbnkgZWxlbWVudHMgdGhlCi0gIGFycmF5IGN1cnJlbnRseSBoYXMsIGluaXRpYWxpemVkIHRvIGAwYC4KLQotVGhlbiBiZWZvcmUgYWRkaW5nIGBuYHRoIGVsZW1lbnQgdG8gdGhlIGl0ZW0sIGNhbGwgYEFMTE9DX0dST1coaXRlbSwgbiwKLWFsbG9jKWAuICBUaGlzIGVuc3VyZXMgdGhhdCB0aGUgYXJyYXkgY2FuIGhvbGQgYXQgbGVhc3QgYG5gIGVsZW1lbnRzIGJ5Ci1jYWxsaW5nIGByZWFsbG9jKDMpYCBhbmQgYWRqdXN0aW5nIGBhbGxvY2AgdmFyaWFibGUuCi0KLS0tLS0tLS0tLS0tLQotc29tZXR5cGUgKml0ZW07Ci1zaXplX3QgbnI7Ci1zaXplX3QgYWxsb2MKLQotZm9yIChpID0gMDsgaSA8IG5yOyBpKyspCi0JaWYgKHdlIGxpa2UgaXRlbVtpXSBhbHJlYWR5KQotCQlyZXR1cm47Ci0KLS8qIHdlIGRpZCBub3QgbGlrZSBhbnkgZXhpc3Rpbmcgb25lLCBzbyBhZGQgb25lICovCi1BTExPQ19HUk9XKGl0ZW0sIG5yICsgMSwgYWxsb2MpOwotaXRlbVtucisrXSA9IHZhbHVlIHlvdSBsaWtlOwotLS0tLS0tLS0tLS0tCi0KLVlvdSBhcmUgcmVzcG9uc2libGUgZm9yIHVwZGF0aW5nIHRoZSBgbnJgIHZhcmlhYmxlLgotCi1JZiB5b3UgbmVlZCB0byBzcGVjaWZ5IHRoZSBudW1iZXIgb2YgZWxlbWVudHMgdG8gYWxsb2NhdGUgZXhwbGljaXRseQotdGhlbiB1c2UgdGhlIG1hY3JvIGBSRUFMTE9DX0FSUkFZKGl0ZW0sIGFsbG9jKWAgaW5zdGVhZCBvZiBgQUxMT0NfR1JPV2AuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktYXJndi1hcnJheS50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktYXJndi1hcnJheS50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg3MGM4ZWQuLjAwMDAwMDAKLS0tIGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLWFyZ3YtYXJyYXkudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNjUgKzAsMCBAQAotYXJndi1hcnJheSBBUEkKLT09PT09PT09PT09PT09Ci0KLVRoZSBhcmd2LWFycmF5IEFQSSBhbGxvd3Mgb25lIHRvIGR5bmFtaWNhbGx5IGJ1aWxkIGFuZCBzdG9yZQotTlVMTC10ZXJtaW5hdGVkIGxpc3RzLiAgQW4gYXJndi1hcnJheSBtYWludGFpbnMgdGhlIGludmFyaWFudCB0aGF0IHRoZQotYGFyZ3ZgIG1lbWJlciBhbHdheXMgcG9pbnRzIHRvIGEgbm9uLU5VTEwgYXJyYXksIGFuZCB0aGF0IHRoZSBhcnJheSBpcwotYWx3YXlzIE5VTEwtdGVybWluYXRlZCBhdCB0aGUgZWxlbWVudCBwb2ludGVkIHRvIGJ5IGBhcmd2W2FyZ2NdYC4gVGhpcwotbWFrZXMgdGhlIHJlc3VsdCBzdWl0YWJsZSBmb3IgcGFzc2luZyB0byBmdW5jdGlvbnMgZXhwZWN0aW5nIHRvIHJlY2VpdmUKLWFyZ3YgZnJvbSBtYWluKCksIG9yIHRoZSBsaW5rOmFwaS1ydW4tY29tbWFuZC5odG1sW3J1bi1jb21tYW5kIEFQSV0uCi0KLVRoZSBzdHJpbmctbGlzdCBBUEkgKGRvY3VtZW50ZWQgaW4gc3RyaW5nLWxpc3QuaCkgaXMgc2ltaWxhciwgYnV0IGNhbm5vdCBiZQotdXNlZCBmb3IgdGhlc2UgcHVycG9zZXM7IGluc3RlYWQgb2Ygc3RvcmluZyBhIHN0cmFpZ2h0IHN0cmluZyBwb2ludGVyLAotaXQgY29udGFpbnMgYW4gaXRlbSBzdHJ1Y3R1cmUgd2l0aCBhIGB1dGlsYCBmaWVsZCB0aGF0IGlzIG5vdCBjb21wYXRpYmxlCi13aXRoIHRoZSB0cmFkaXRpb25hbCBhcmd2IGludGVyZmFjZS4KLQotRWFjaCBgYXJndl9hcnJheWAgbWFuYWdlcyBpdHMgb3duIG1lbW9yeS4gQW55IHN0cmluZ3MgcHVzaGVkIGludG8gdGhlCi1hcnJheSBhcmUgZHVwbGljYXRlZCwgYW5kIGFsbCBtZW1vcnkgaXMgZnJlZWQgYnkgYXJndl9hcnJheV9jbGVhcigpLgotCi1EYXRhIFN0cnVjdHVyZXMKLS0tLS0tLS0tLS0tLS0tLQotCi1gc3RydWN0IGFyZ3ZfYXJyYXlgOjoKLQotCUEgc2luZ2xlIGFycmF5LiBUaGlzIHNob3VsZCBiZSBpbml0aWFsaXplZCBieSBhc3NpZ25tZW50IGZyb20KLQlgQVJHVl9BUlJBWV9JTklUYCwgb3IgYnkgY2FsbGluZyBgYXJndl9hcnJheV9pbml0YC4gVGhlIGBhcmd2YAotCW1lbWJlciBjb250YWlucyB0aGUgYWN0dWFsIGFycmF5OyB0aGUgYGFyZ2NgIG1lbWJlciBjb250YWlucyB0aGUKLQludW1iZXIgb2YgZWxlbWVudHMgaW4gdGhlIGFycmF5LCBub3QgaW5jbHVkaW5nIHRoZSB0ZXJtaW5hdGluZwotCU5VTEwuCi0KLUZ1bmN0aW9ucwotLS0tLS0tLS0tCi0KLWBhcmd2X2FycmF5X2luaXRgOjoKLQlJbml0aWFsaXplIGFuIGFycmF5LiBUaGlzIGlzIG5vIGRpZmZlcmVudCB0aGFuIGFzc2lnbmluZyBmcm9tCi0JYEFSR1ZfQVJSQVlfSU5JVGAuCi0KLWBhcmd2X2FycmF5X3B1c2hgOjoKLQlQdXNoIGEgY29weSBvZiBhIHN0cmluZyBvbnRvIHRoZSBlbmQgb2YgdGhlIGFycmF5LgotCi1gYXJndl9hcnJheV9wdXNobGA6OgotCVB1c2ggYSBsaXN0IG9mIHN0cmluZ3Mgb250byB0aGUgZW5kIG9mIHRoZSBhcnJheS4gVGhlIGFyZ3VtZW50cwotCXNob3VsZCBiZSBhIGxpc3Qgb2YgYGNvbnN0IGNoYXIgKmAgc3RyaW5ncywgdGVybWluYXRlZCBieSBhIE5VTEwKLQlhcmd1bWVudC4KLQotYGFyZ3ZfYXJyYXlfcHVzaGZgOjoKLQlGb3JtYXQgYSBzdHJpbmcgYW5kIHB1c2ggaXQgb250byB0aGUgZW5kIG9mIHRoZSBhcnJheS4gVGhpcyBpcyBhCi0JY29udmVuaWVuY2Ugd3JhcHBlciBjb21iaW5pbmcgYHN0cmJ1Zl9hZGRmYCBhbmQgYGFyZ3ZfYXJyYXlfcHVzaGAuCi0KLWBhcmd2X2FycmF5X3B1c2h2YDo6Ci0JUHVzaCBhIG51bGwtdGVybWluYXRlZCBhcnJheSBvZiBzdHJpbmdzIG9udG8gdGhlIGVuZCBvZiB0aGUgYXJyYXkuCi0KLWBhcmd2X2FycmF5X3BvcGA6OgotCVJlbW92ZSB0aGUgZmluYWwgZWxlbWVudCBmcm9tIHRoZSBhcnJheS4gSWYgdGhlcmUgYXJlIG5vCi0JZWxlbWVudHMgaW4gdGhlIGFycmF5LCBkbyBub3RoaW5nLgotCi1gYXJndl9hcnJheV9jbGVhcmA6OgotCUZyZWUgYWxsIG1lbW9yeSBhc3NvY2lhdGVkIHdpdGggdGhlIGFycmF5IGFuZCByZXR1cm4gaXQgdG8gdGhlCi0JaW5pdGlhbCwgZW1wdHkgc3RhdGUuCi0KLWBhcmd2X2FycmF5X2RldGFjaGA6OgotCURpc2Nvbm5lY3QgdGhlIGBhcmd2YCBtZW1iZXIgZnJvbSB0aGUgYGFyZ3ZfYXJyYXlgIHN0cnVjdCBhbmQKLQlyZXR1cm4gaXQuIFRoZSBjYWxsZXIgaXMgcmVzcG9uc2libGUgZm9yIGZyZWVpbmcgdGhlIG1lbW9yeSB1c2VkCi0JYnkgdGhlIGFycmF5LCBhbmQgYnkgdGhlIHN0cmluZ3MgaXQgcmVmZXJlbmNlcy4gQWZ0ZXIgZGV0YWNoaW5nLAotCXRoZSBgYXJndl9hcnJheWAgaXMgaW4gYSByZWluaXRpYWxpemVkIHN0YXRlIGFuZCBjYW4gYmUgcHVzaGVkCi0JaW50byBhZ2Fpbi4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1jb25maWcudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLWNvbmZpZy50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZhMzlhYzkuLjAwMDAwMDAKLS0tIGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLWNvbmZpZy50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwzMTkgKzAsMCBAQAotY29uZmlnIEFQSQotPT09PT09PT09PQotCi1UaGUgY29uZmlnIEFQSSBnaXZlcyBjYWxsZXJzIGEgd2F5IHRvIGFjY2VzcyBHaXQgY29uZmlndXJhdGlvbiBmaWxlcwotKGFuZCBmaWxlcyB3aGljaCBoYXZlIHRoZSBzYW1lIHN5bnRheCkuIFNlZSBsaW5rZ2l0OmdpdC1jb25maWdbMV0gZm9yIGEKLWRpc2N1c3Npb24gb2YgdGhlIGNvbmZpZyBmaWxlIHN5bnRheC4KLQotR2VuZXJhbCBVc2FnZQotLS0tLS0tLS0tLS0tLQotCi1Db25maWcgZmlsZXMgYXJlIHBhcnNlZCBsaW5lYXJseSwgYW5kIGVhY2ggdmFyaWFibGUgZm91bmQgaXMgcGFzc2VkIHRvIGEKLWNhbGxlci1wcm92aWRlZCBjYWxsYmFjayBmdW5jdGlvbi4gVGhlIGNhbGxiYWNrIGZ1bmN0aW9uIGlzIHJlc3BvbnNpYmxlCi1mb3IgYW55IGFjdGlvbnMgdG8gYmUgdGFrZW4gb24gdGhlIGNvbmZpZyBvcHRpb24sIGFuZCBpcyBmcmVlIHRvIGlnbm9yZQotc29tZSBvcHRpb25zLiBJdCBpcyBub3QgdW5jb21tb24gZm9yIHRoZSBjb25maWd1cmF0aW9uIHRvIGJlIHBhcnNlZAotc2V2ZXJhbCB0aW1lcyBkdXJpbmcgdGhlIHJ1biBvZiBhIEdpdCBwcm9ncmFtLCB3aXRoIGRpZmZlcmVudCBjYWxsYmFja3MKLXBpY2tpbmcgb3V0IGRpZmZlcmVudCB2YXJpYWJsZXMgdXNlZnVsIHRvIHRoZW1zZWx2ZXMuCi0KLUEgY29uZmlnIGNhbGxiYWNrIGZ1bmN0aW9uIHRha2VzIHRocmVlIHBhcmFtZXRlcnM6Ci0KLS0gdGhlIG5hbWUgb2YgdGhlIHBhcnNlZCB2YXJpYWJsZS4gVGhpcyBpcyBpbiBjYW5vbmljYWwgImZsYXQiIGZvcm06IHRoZQotICBzZWN0aW9uLCBzdWJzZWN0aW9uLCBhbmQgdmFyaWFibGUgc2VnbWVudHMgd2lsbCBiZSBzZXBhcmF0ZWQgYnkgZG90cywKLSAgYW5kIHRoZSBzZWN0aW9uIGFuZCB2YXJpYWJsZSBzZWdtZW50cyB3aWxsIGJlIGFsbCBsb3dlcmNhc2UuIEUuZy4sCi0gIGBjb3JlLmlnbm9yZWNhc2VgLCBgZGlmZi5Tb21lVHlwZS50ZXh0Y29udmAuCi0KLS0gdGhlIHZhbHVlIG9mIHRoZSBmb3VuZCB2YXJpYWJsZSwgYXMgYSBzdHJpbmcuIElmIHRoZSB2YXJpYWJsZSBoYWQgbm8KLSAgdmFsdWUgc3BlY2lmaWVkLCB0aGUgdmFsdWUgd2lsbCBiZSBOVUxMICh0eXBpY2FsbHkgdGhpcyBtZWFucyBpdAotICBzaG91bGQgYmUgaW50ZXJwcmV0ZWQgYXMgYm9vbGVhbiB0cnVlKS4KLQotLSBhIHZvaWQgcG9pbnRlciBwYXNzZWQgaW4gYnkgdGhlIGNhbGxlciBvZiB0aGUgY29uZmlnIEFQSTsgdGhpcyBjYW4KLSAgY29udGFpbiBjYWxsYmFjay1zcGVjaWZpYyBkYXRhCi0KLUEgY29uZmlnIGNhbGxiYWNrIHNob3VsZCByZXR1cm4gMCBmb3Igc3VjY2Vzcywgb3IgLTEgaWYgdGhlIHZhcmlhYmxlCi1jb3VsZCBub3QgYmUgcGFyc2VkIHByb3Blcmx5LgotCi1CYXNpYyBDb25maWcgUXVlcnlpbmcKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1Nb3N0IHByb2dyYW1zIHdpbGwgc2ltcGx5IHdhbnQgdG8gbG9vayB1cCB2YXJpYWJsZXMgaW4gYWxsIGNvbmZpZyBmaWxlcwotdGhhdCBHaXQga25vd3MgYWJvdXQsIHVzaW5nIHRoZSBub3JtYWwgcHJlY2VkZW5jZSBydWxlcy4gVG8gZG8gdGhpcywKLWNhbGwgYGdpdF9jb25maWdgIHdpdGggYSBjYWxsYmFjayBmdW5jdGlvbiBhbmQgdm9pZCBkYXRhIHBvaW50ZXIuCi0KLWBnaXRfY29uZmlnYCB3aWxsIHJlYWQgYWxsIGNvbmZpZyBzb3VyY2VzIGluIG9yZGVyIG9mIGluY3JlYXNpbmcKLXByaW9yaXR5LiBUaHVzIGEgY2FsbGJhY2sgc2hvdWxkIHR5cGljYWxseSBvdmVyd3JpdGUgcHJldmlvdXNseS1zZWVuCi1lbnRyaWVzIHdpdGggbmV3IG9uZXMgKGUuZy4sIGlmIGJvdGggdGhlIHVzZXItd2lkZSBgfi8uZ2l0Y29uZmlnYCBhbmQKLXJlcG8tc3BlY2lmaWMgYC5naXQvY29uZmlnYCBjb250YWluIGBjb2xvci51aWAsIHRoZSBjb25maWcgbWFjaGluZXJ5Ci13aWxsIGZpcnN0IGZlZWQgdGhlIHVzZXItd2lkZSBvbmUgdG8gdGhlIGNhbGxiYWNrLCBhbmQgdGhlbiB0aGUKLXJlcG8tc3BlY2lmaWMgb25lOyBieSBvdmVyd3JpdGluZywgdGhlIGhpZ2hlci1wcmlvcml0eSByZXBvLXNwZWNpZmljCi12YWx1ZSBpcyBsZWZ0IGF0IHRoZSBlbmQpLgotCi1UaGUgYGNvbmZpZ193aXRoX29wdGlvbnNgIGZ1bmN0aW9uIGxldHMgdGhlIGNhbGxlciBleGFtaW5lIGNvbmZpZwotd2hpbGUgYWRqdXN0aW5nIHNvbWUgb2YgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgYGdpdF9jb25maWdgLiBJdCBzaG91bGQKLWFsbW9zdCBuZXZlciBiZSB1c2VkIGJ5ICJyZWd1bGFyIiBHaXQgY29kZSB0aGF0IGlzIGxvb2tpbmcgdXAKLWNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLiBJdCBpcyBpbnRlbmRlZCBmb3IgYWR2YW5jZWQgY2FsbGVycyBsaWtlCi1gZ2l0LWNvbmZpZ2AsIHdoaWNoIGFyZSBpbnRlbnRpb25hbGx5IHR3ZWFraW5nIHRoZSBub3JtYWwgY29uZmlnLWxvb2t1cAotcHJvY2Vzcy4gSXQgdGFrZXMgdHdvIGV4dHJhIHBhcmFtZXRlcnM6Ci0KLWBjb25maWdfc291cmNlYDo6Ci1JZiB0aGlzIHBhcmFtZXRlciBpcyBub24tTlVMTCwgaXQgc3BlY2lmaWVzIHRoZSBzb3VyY2UgdG8gcGFyc2UgZm9yCi1jb25maWd1cmF0aW9uLCByYXRoZXIgdGhhbiBsb29raW5nIGluIHRoZSB1c3VhbCBmaWxlcy4gU2VlIGBzdHJ1Y3QKLWdpdF9jb25maWdfc291cmNlYCBpbiBgY29uZmlnLmhgIGZvciBkZXRhaWxzLiBSZWd1bGFyIGBnaXRfY29uZmlnYCBkZWZhdWx0cwotdG8gYE5VTExgLgotCi1gb3B0c2A6OgotU3BlY2lmeSBvcHRpb25zIHRvIGFkanVzdCB0aGUgYmVoYXZpb3Igb2YgcGFyc2luZyBjb25maWcgZmlsZXMuIFNlZSBgc3RydWN0Ci1jb25maWdfb3B0aW9uc2AgaW4gYGNvbmZpZy5oYCBmb3IgZGV0YWlscy4gQXMgYW4gZXhhbXBsZTogcmVndWxhciBgZ2l0X2NvbmZpZ2AKLXNldHMgYG9wdHMucmVzcGVjdF9pbmNsdWRlc2AgdG8gYDFgIGJ5IGRlZmF1bHQuCi0KLVJlYWRpbmcgU3BlY2lmaWMgRmlsZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotVG8gcmVhZCBhIHNwZWNpZmljIGZpbGUgaW4gZ2l0LWNvbmZpZyBmb3JtYXQsIHVzZQotYGdpdF9jb25maWdfZnJvbV9maWxlYC4gVGhpcyB0YWtlcyB0aGUgc2FtZSBjYWxsYmFjayBhbmQgZGF0YSBwYXJhbWV0ZXJzCi1hcyBgZ2l0X2NvbmZpZ2AuCi0KLVF1ZXJ5aW5nIEZvciBTcGVjaWZpYyBWYXJpYWJsZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotRm9yIHByb2dyYW1zIHdhbnRpbmcgdG8gcXVlcnkgZm9yIHNwZWNpZmljIHZhcmlhYmxlcyBpbiBhIG5vbi1jYWxsYmFjawotbWFubmVyLCB0aGUgY29uZmlnIEFQSSBwcm92aWRlcyB0d28gZnVuY3Rpb25zIGBnaXRfY29uZmlnX2dldF92YWx1ZWAKLWFuZCBgZ2l0X2NvbmZpZ19nZXRfdmFsdWVfbXVsdGlgLiBUaGV5IGJvdGggcmVhZCB2YWx1ZXMgZnJvbSBhbiBpbnRlcm5hbAotY2FjaGUgZ2VuZXJhdGVkIHByZXZpb3VzbHkgZnJvbSByZWFkaW5nIHRoZSBjb25maWcgZmlsZXMuCi0KLWBpbnQgZ2l0X2NvbmZpZ19nZXRfdmFsdWUoY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICoqdmFsdWUpYDo6Ci0KLQlGaW5kcyB0aGUgaGlnaGVzdC1wcmlvcml0eSB2YWx1ZSBmb3IgdGhlIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYGtleWAsCi0Jc3RvcmVzIHRoZSBwb2ludGVyIHRvIGl0IGluIGB2YWx1ZWAgYW5kIHJldHVybnMgMC4gV2hlbiB0aGUKLQljb25maWd1cmF0aW9uIHZhcmlhYmxlIGBrZXlgIGlzIG5vdCBmb3VuZCwgcmV0dXJucyAxIHdpdGhvdXQgdG91Y2hpbmcKLQlgdmFsdWVgLiBUaGUgY2FsbGVyIHNob3VsZCBub3QgZnJlZSBvciBtb2RpZnkgYHZhbHVlYCwgYXMgaXQgaXMgb3duZWQKLQlieSB0aGUgY2FjaGUuCi0KLWBjb25zdCBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmdpdF9jb25maWdfZ2V0X3ZhbHVlX211bHRpKGNvbnN0IGNoYXIgKmtleSlgOjoKLQotCUZpbmRzIGFuZCByZXR1cm5zIHRoZSB2YWx1ZSBsaXN0LCBzb3J0ZWQgaW4gb3JkZXIgb2YgaW5jcmVhc2luZyBwcmlvcml0eQotCWZvciB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBga2V5YC4gV2hlbiB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZQotCWBrZXlgIGlzIG5vdCBmb3VuZCwgcmV0dXJucyBOVUxMLiBUaGUgY2FsbGVyIHNob3VsZCBub3QgZnJlZSBvciBtb2RpZnkKLQl0aGUgcmV0dXJuZWQgcG9pbnRlciwgYXMgaXQgaXMgb3duZWQgYnkgdGhlIGNhY2hlLgotCi1gdm9pZCBnaXRfY29uZmlnX2NsZWFyKHZvaWQpYDo6Ci0KLQlSZXNldHMgYW5kIGludmFsaWRhdGVzIHRoZSBjb25maWcgY2FjaGUuCi0KLVRoZSBjb25maWcgQVBJIGFsc28gcHJvdmlkZXMgdHlwZSBzcGVjaWZpYyBBUEkgZnVuY3Rpb25zIHdoaWNoIGRvIGNvbnZlcnNpb24KLWFzIHdlbGwgYXMgcmV0cmlldmFsIGZvciB0aGUgcXVlcmllZCB2YXJpYWJsZSwgaW5jbHVkaW5nOgotCi1gaW50IGdpdF9jb25maWdfZ2V0X2ludChjb25zdCBjaGFyICprZXksIGludCAqZGVzdClgOjoKLQotCUZpbmRzIGFuZCBwYXJzZXMgdGhlIHZhbHVlIHRvIGFuIGludGVnZXIgZm9yIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlCi0JYGtleWAuIERpZXMgb24gZXJyb3I7IG90aGVyd2lzZSwgc3RvcmVzIHRoZSB2YWx1ZSBvZiB0aGUgcGFyc2VkIGludGVnZXIgaW4KLQlgZGVzdGAgYW5kIHJldHVybnMgMC4gV2hlbiB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBga2V5YCBpcyBub3QgZm91bmQsCi0JcmV0dXJucyAxIHdpdGhvdXQgdG91Y2hpbmcgYGRlc3RgLgotCi1gaW50IGdpdF9jb25maWdfZ2V0X3Vsb25nKGNvbnN0IGNoYXIgKmtleSwgdW5zaWduZWQgbG9uZyAqZGVzdClgOjoKLQotCVNpbWlsYXIgdG8gYGdpdF9jb25maWdfZ2V0X2ludGAgYnV0IGZvciB1bnNpZ25lZCBsb25ncy4KLQotYGludCBnaXRfY29uZmlnX2dldF9ib29sKGNvbnN0IGNoYXIgKmtleSwgaW50ICpkZXN0KWA6OgotCi0JRmluZHMgYW5kIHBhcnNlcyB0aGUgdmFsdWUgaW50byBhIGJvb2xlYW4gdmFsdWUsIGZvciB0aGUgY29uZmlndXJhdGlvbgotCXZhcmlhYmxlIGBrZXlgIHJlc3BlY3Rpbmcga2V5d29yZHMgbGlrZSAidHJ1ZSIgYW5kICJmYWxzZSIuIEludGVnZXIKLQl2YWx1ZXMgYXJlIGNvbnZlcnRlZCBpbnRvIHRydWUvZmFsc2UgdmFsdWVzICh3aGVuIHRoZXkgYXJlIG5vbi16ZXJvIG9yCi0JemVybywgcmVzcGVjdGl2ZWx5KS4gT3RoZXIgdmFsdWVzIGNhdXNlIGEgZGllKCkuIElmIHBhcnNpbmcgaXMgc3VjY2Vzc2Z1bCwKLQlzdG9yZXMgdGhlIHZhbHVlIG9mIHRoZSBwYXJzZWQgcmVzdWx0IGluIGBkZXN0YCBhbmQgcmV0dXJucyAwLiBXaGVuIHRoZQotCWNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYGtleWAgaXMgbm90IGZvdW5kLCByZXR1cm5zIDEgd2l0aG91dCB0b3VjaGluZwotCWBkZXN0YC4KLQotYGludCBnaXRfY29uZmlnX2dldF9ib29sX29yX2ludChjb25zdCBjaGFyICprZXksIGludCAqaXNfYm9vbCwgaW50ICpkZXN0KWA6OgotCi0JU2ltaWxhciB0byBgZ2l0X2NvbmZpZ19nZXRfYm9vbGAsIGV4Y2VwdCB0aGF0IGludGVnZXJzIGFyZSBjb3BpZWQgYXMtaXMsCi0JYW5kIGBpc19ib29sYCBmbGFnIGlzIHVuc2V0LgotCi1gaW50IGdpdF9jb25maWdfZ2V0X21heWJlX2Jvb2woY29uc3QgY2hhciAqa2V5LCBpbnQgKmRlc3QpYDo6Ci0KLQlTaW1pbGFyIHRvIGBnaXRfY29uZmlnX2dldF9ib29sYCwgZXhjZXB0IHRoYXQgaXQgcmV0dXJucyAtMSBvbiBlcnJvcgotCXJhdGhlciB0aGFuIGR5aW5nLgotCi1gaW50IGdpdF9jb25maWdfZ2V0X3N0cmluZ19jb25zdChjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKipkZXN0KWA6OgotCi0JQWxsb2NhdGVzIGFuZCBjb3BpZXMgdGhlIHJldHJpZXZlZCBzdHJpbmcgaW50byB0aGUgYGRlc3RgIHBhcmFtZXRlciBmb3IKLQl0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBga2V5YDsgaWYgTlVMTCBzdHJpbmcgaXMgZ2l2ZW4sIHByaW50cyBhbgotCWVycm9yIG1lc3NhZ2UgYW5kIHJldHVybnMgLTEuIFdoZW4gdGhlIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYGtleWAgaXMKLQlub3QgZm91bmQsIHJldHVybnMgMSB3aXRob3V0IHRvdWNoaW5nIGBkZXN0YC4KLQotYGludCBnaXRfY29uZmlnX2dldF9zdHJpbmcoY29uc3QgY2hhciAqa2V5LCBjaGFyICoqZGVzdClgOjoKLQotCVNpbWlsYXIgdG8gYGdpdF9jb25maWdfZ2V0X3N0cmluZ19jb25zdGAsIGV4Y2VwdCB0aGF0IHJldHJpZXZlZCB2YWx1ZQotCWNvcGllZCBpbnRvIHRoZSBgZGVzdGAgcGFyYW1ldGVyIGlzIGEgbXV0YWJsZSBzdHJpbmcuCi0KLWBpbnQgZ2l0X2NvbmZpZ19nZXRfcGF0aG5hbWUoY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICoqZGVzdClgOjoKLQotCVNpbWlsYXIgdG8gYGdpdF9jb25maWdfZ2V0X3N0cmluZ2AsIGJ1dCBleHBhbmRzIGB+YCBvciBgfnVzZXJgIGludG8KLQl0aGUgdXNlcidzIGhvbWUgZGlyZWN0b3J5IHdoZW4gZm91bmQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgcGF0aC4KLQotYGdpdF9kaWVfY29uZmlnKGNvbnN0IGNoYXIgKmtleSwgY29uc3QgY2hhciAqZXJyLCAuLi4pYDo6Ci0KLQlGaXJzdCBwcmludHMgdGhlIGVycm9yIG1lc3NhZ2Ugc3BlY2lmaWVkIGJ5IHRoZSBjYWxsZXIgaW4gYGVycmAgYW5kIHRoZW4KLQlkaWVzIHByaW50aW5nIHRoZSBsaW5lIG51bWJlciBhbmQgdGhlIGZpbGUgbmFtZSBvZiB0aGUgaGlnaGVzdCBwcmlvcml0eQotCXZhbHVlIGZvciB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBga2V5YC4KLQotYHZvaWQgZ2l0X2RpZV9jb25maWdfbGluZW5yKGNvbnN0IGNoYXIgKmtleSwgY29uc3QgY2hhciAqZmlsZW5hbWUsIGludCBsaW5lbnIpYDo6Ci0KLQlIZWxwZXIgZnVuY3Rpb24gd2hpY2ggZm9ybWF0cyB0aGUgZGllIGVycm9yIG1lc3NhZ2UgYWNjb3JkaW5nIHRvIHRoZQotCXBhcmFtZXRlcnMgZW50ZXJlZC4gVXNlZCBieSBgZ2l0X2RpZV9jb25maWcoKWAuIEl0IGNhbiBiZSB1c2VkIGJ5IGNhbGxlcnMKLQloYW5kbGluZyBgZ2l0X2NvbmZpZ19nZXRfdmFsdWVfbXVsdGkoKWAgdG8gcHJpbnQgdGhlIGNvcnJlY3QgZXJyb3IgbWVzc2FnZQotCWZvciB0aGUgZGVzaXJlZCB2YWx1ZS4KLQotU2VlIHRlc3QtY29uZmlnLmMgZm9yIHVzYWdlIGV4YW1wbGVzLgotCi1WYWx1ZSBQYXJzaW5nIEhlbHBlcnMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1UbyBhaWQgaW4gcGFyc2luZyBzdHJpbmcgdmFsdWVzLCB0aGUgY29uZmlnIEFQSSBwcm92aWRlcyBjYWxsYmFja3Mgd2l0aAotYSBudW1iZXIgb2YgaGVscGVyIGZ1bmN0aW9ucywgaW5jbHVkaW5nOgotCi1gZ2l0X2NvbmZpZ19pbnRgOjoKLVBhcnNlIHRoZSBzdHJpbmcgdG8gYW4gaW50ZWdlciwgaW5jbHVkaW5nIHVuaXQgZmFjdG9ycy4gRGllcyBvbiBlcnJvcjsKLW90aGVyd2lzZSwgcmV0dXJucyB0aGUgcGFyc2VkIHJlc3VsdC4KLQotYGdpdF9jb25maWdfdWxvbmdgOjoKLUlkZW50aWNhbCB0byBgZ2l0X2NvbmZpZ19pbnRgLCBidXQgZm9yIHVuc2lnbmVkIGxvbmdzLgotCi1gZ2l0X2NvbmZpZ19ib29sYDo6Ci1QYXJzZSBhIHN0cmluZyBpbnRvIGEgYm9vbGVhbiB2YWx1ZSwgcmVzcGVjdGluZyBrZXl3b3JkcyBsaWtlICJ0cnVlIiBhbmQKLSJmYWxzZSIuIEludGVnZXIgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgaW50byB0cnVlL2ZhbHNlIHZhbHVlcyAod2hlbiB0aGV5Ci1hcmUgbm9uLXplcm8gb3IgemVybywgcmVzcGVjdGl2ZWx5KS4gT3RoZXIgdmFsdWVzIGNhdXNlIGEgZGllKCkuIElmCi1wYXJzaW5nIGlzIHN1Y2Nlc3NmdWwsIHRoZSByZXR1cm4gdmFsdWUgaXMgdGhlIHJlc3VsdC4KLQotYGdpdF9jb25maWdfYm9vbF9vcl9pbnRgOjoKLVNhbWUgYXMgYGdpdF9jb25maWdfYm9vbGAsIGV4Y2VwdCB0aGF0IGludGVnZXJzIGFyZSByZXR1cm5lZCBhcy1pcywgYW5kCi1hbiBgaXNfYm9vbGAgZmxhZyBpcyB1bnNldC4KLQotYGdpdF9wYXJzZV9tYXliZV9ib29sYDo6Ci1TYW1lIGFzIGBnaXRfY29uZmlnX2Jvb2xgLCBleGNlcHQgdGhhdCBpdCByZXR1cm5zIC0xIG9uIGVycm9yIHJhdGhlcgotdGhhbiBkeWluZy4KLQotYGdpdF9jb25maWdfc3RyaW5nYDo6Ci1BbGxvY2F0ZXMgYW5kIGNvcGllcyB0aGUgdmFsdWUgc3RyaW5nIGludG8gdGhlIGBkZXN0YCBwYXJhbWV0ZXI7IGlmIG5vCi1zdHJpbmcgaXMgZ2l2ZW4sIHByaW50cyBhbiBlcnJvciBtZXNzYWdlIGFuZCByZXR1cm5zIC0xLgotCi1gZ2l0X2NvbmZpZ19wYXRobmFtZWA6OgotU2ltaWxhciB0byBgZ2l0X2NvbmZpZ19zdHJpbmdgLCBidXQgZXhwYW5kcyBgfmAgb3IgYH51c2VyYCBpbnRvIHRoZQotdXNlcidzIGhvbWUgZGlyZWN0b3J5IHdoZW4gZm91bmQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgcGF0aC4KLQotSW5jbHVkZSBEaXJlY3RpdmVzCi0tLS0tLS0tLS0tLS0tLS0tLS0KLQotQnkgZGVmYXVsdCwgdGhlIGNvbmZpZyBwYXJzZXIgZG9lcyBub3QgcmVzcGVjdCBpbmNsdWRlIGRpcmVjdGl2ZXMuCi1Ib3dldmVyLCBhIGNhbGxlciBjYW4gdXNlIHRoZSBzcGVjaWFsIGBnaXRfY29uZmlnX2luY2x1ZGVgIHdyYXBwZXIKLWNhbGxiYWNrIHRvIHN1cHBvcnQgdGhlbS4gVG8gZG8gc28sIHlvdSBzaW1wbHkgd3JhcCB5b3VyICJyZWFsIiBjYWxsYmFjawotZnVuY3Rpb24gYW5kIGRhdGEgcG9pbnRlciBpbiBhIGBzdHJ1Y3QgY29uZmlnX2luY2x1ZGVfZGF0YWAsIGFuZCBwYXNzCi10aGUgd3JhcHBlciB0byB0aGUgcmVndWxhciBjb25maWctcmVhZGluZyBmdW5jdGlvbnMuIEZvciBleGFtcGxlOgotCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1pbnQgcmVhZF9maWxlX3dpdGhfaW5jbHVkZShjb25zdCBjaGFyICpmaWxlLCBjb25maWdfZm5fdCBmbiwgdm9pZCAqZGF0YSkKLXsKLQlzdHJ1Y3QgY29uZmlnX2luY2x1ZGVfZGF0YSBpbmMgPSBDT05GSUdfSU5DTFVERV9JTklUOwotCWluYy5mbiA9IGZuOwotCWluYy5kYXRhID0gZGF0YTsKLQlyZXR1cm4gZ2l0X2NvbmZpZ19mcm9tX2ZpbGUoZ2l0X2NvbmZpZ19pbmNsdWRlLCBmaWxlLCAmaW5jKTsKLX0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotYGdpdF9jb25maWdgIHJlc3BlY3RzIGluY2x1ZGVzIGF1dG9tYXRpY2FsbHkuIFRoZSBsb3dlci1sZXZlbAotYGdpdF9jb25maWdfZnJvbV9maWxlYCBkb2VzIG5vdC4KLQotQ3VzdG9tIENvbmZpZ3NldHMKLS0tLS0tLS0tLS0tLS0tLS0tCi0KLUEgYGNvbmZpZ19zZXRgIGNhbiBiZSB1c2VkIHRvIGNvbnN0cnVjdCBhbiBpbi1tZW1vcnkgY2FjaGUgZm9yCi1jb25maWctbGlrZSBmaWxlcyB0aGF0IHRoZSBjYWxsZXIgc3BlY2lmaWVzIChpLmUuLCBmaWxlcyBsaWtlIGAuZ2l0bW9kdWxlc2AsCi1gfi8uZ2l0Y29uZmlnYCBldGMuKS4gRm9yIGV4YW1wbGUsCi0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotc3RydWN0IGNvbmZpZ19zZXQgZ21fY29uZmlnOwotZ2l0X2NvbmZpZ3NldF9pbml0KCZnbV9jb25maWcpOwotaW50IGI7Ci0vKiB3ZSBhZGQgY29uZmlnIGZpbGVzIHRvIHRoZSBjb25maWdfc2V0ICovCi1naXRfY29uZmlnc2V0X2FkZF9maWxlKCZnbV9jb25maWcsICIuZ2l0bW9kdWxlcyIpOwotZ2l0X2NvbmZpZ3NldF9hZGRfZmlsZSgmZ21fY29uZmlnLCAiLmdpdG1vZHVsZXNfYWx0Iik7Ci0KLWlmICghZ2l0X2NvbmZpZ3NldF9nZXRfYm9vbChnbV9jb25maWcsICJzdWJtb2R1bGUuZnJvdHouaWdub3JlIiwgJmIpKSB7Ci0JLyogaGFjayBoYWNrIGhhY2sgKi8KLX0KLQotLyogd2hlbiB3ZSBhcmUgZG9uZSB3aXRoIHRoZSBjb25maWdzZXQgKi8KLWdpdF9jb25maWdzZXRfY2xlYXIoJmdtX2NvbmZpZyk7Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLUNvbmZpZ3NldCBBUEkgcHJvdmlkZXMgZnVuY3Rpb25zIGZvciB0aGUgYWJvdmUgbWVudGlvbmVkIHdvcmsgZmxvdywgaW5jbHVkaW5nOgotCi1gdm9pZCBnaXRfY29uZmlnc2V0X2luaXQoc3RydWN0IGNvbmZpZ19zZXQgKmNzKWA6OgotCi0JSW5pdGlhbGl6ZXMgdGhlIGNvbmZpZ19zZXQgYGNzYC4KLQotYGludCBnaXRfY29uZmlnc2V0X2FkZF9maWxlKHN0cnVjdCBjb25maWdfc2V0ICpjcywgY29uc3QgY2hhciAqZmlsZW5hbWUpYDo6Ci0KLQlQYXJzZXMgdGhlIGZpbGUgYW5kIGFkZHMgdGhlIHZhcmlhYmxlLXZhbHVlIHBhaXJzIHRvIHRoZSBgY29uZmlnX3NldGAsCi0JZGllcyBpZiB0aGVyZSBpcyBhbiBlcnJvciBpbiBwYXJzaW5nIHRoZSBmaWxlLiBSZXR1cm5zIDAgb24gc3VjY2Vzcywgb3IKLQktMSBpZiB0aGUgZmlsZSBkb2VzIG5vdCBleGlzdCBvciBpcyBpbmFjY2Vzc2libGUuIFRoZSB1c2VyIGhhcyB0byBkZWNpZGUKLQlpZiBoZSB3YW50cyB0byBmcmVlIHRoZSBpbmNvbXBsZXRlIGNvbmZpZ3NldCBvciBjb250aW51ZSB1c2luZyBpdCB3aGVuCi0JdGhlIGZ1bmN0aW9uIHJldHVybnMgLTEuCi0KLWBpbnQgZ2l0X2NvbmZpZ3NldF9nZXRfdmFsdWUoc3RydWN0IGNvbmZpZ19zZXQgKmNzLCBjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKip2YWx1ZSlgOjoKLQotCUZpbmRzIHRoZSBoaWdoZXN0LXByaW9yaXR5IHZhbHVlIGZvciB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBga2V5YAotCWFuZCBjb25maWcgc2V0IGBjc2AsIHN0b3JlcyB0aGUgcG9pbnRlciB0byBpdCBpbiBgdmFsdWVgIGFuZCByZXR1cm5zIDAuCi0JV2hlbiB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBga2V5YCBpcyBub3QgZm91bmQsIHJldHVybnMgMSB3aXRob3V0Ci0JdG91Y2hpbmcgYHZhbHVlYC4gVGhlIGNhbGxlciBzaG91bGQgbm90IGZyZWUgb3IgbW9kaWZ5IGB2YWx1ZWAsIGFzIGl0Ci0JaXMgb3duZWQgYnkgdGhlIGNhY2hlLgotCi1gY29uc3Qgc3RydWN0IHN0cmluZ19saXN0ICpnaXRfY29uZmlnc2V0X2dldF92YWx1ZV9tdWx0aShzdHJ1Y3QgY29uZmlnX3NldCAqY3MsIGNvbnN0IGNoYXIgKmtleSlgOjoKLQotCUZpbmRzIGFuZCByZXR1cm5zIHRoZSB2YWx1ZSBsaXN0LCBzb3J0ZWQgaW4gb3JkZXIgb2YgaW5jcmVhc2luZyBwcmlvcml0eQotCWZvciB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBga2V5YCBhbmQgY29uZmlnIHNldCBgY3NgLiBXaGVuIHRoZQotCWNvbmZpZ3VyYXRpb24gdmFyaWFibGUgYGtleWAgaXMgbm90IGZvdW5kLCByZXR1cm5zIE5VTEwuIFRoZSBjYWxsZXIKLQlzaG91bGQgbm90IGZyZWUgb3IgbW9kaWZ5IHRoZSByZXR1cm5lZCBwb2ludGVyLCBhcyBpdCBpcyBvd25lZCBieSB0aGUgY2FjaGUuCi0KLWB2b2lkIGdpdF9jb25maWdzZXRfY2xlYXIoc3RydWN0IGNvbmZpZ19zZXQgKmNzKWA6OgotCi0JQ2xlYXJzIGBjb25maWdfc2V0YCBzdHJ1Y3R1cmUsIHJlbW92ZXMgYWxsIHNhdmVkIHZhcmlhYmxlLXZhbHVlIHBhaXJzLgotCi1JbiBhZGRpdGlvbiB0byBhYm92ZSBmdW5jdGlvbnMsIHRoZSBgY29uZmlnX3NldGAgQVBJIHByb3ZpZGVzIHR5cGUgc3BlY2lmaWMKLWZ1bmN0aW9ucyBpbiB0aGUgdmVpbiBvZiBgZ2l0X2NvbmZpZ19nZXRfaW50YCBhbmQgZmFtaWx5IGJ1dCB3aXRoIGFuIGV4dHJhCi1wYXJhbWV0ZXIsIHBvaW50ZXIgdG8gc3RydWN0IGBjb25maWdfc2V0YC4KLVRoZXkgYWxsIGJlaGF2ZSBzaW1pbGFybHkgdG8gdGhlIGBnaXRfY29uZmlnX2dldCooKWAgZmFtaWx5IGRlc2NyaWJlZCBpbgotIlF1ZXJ5aW5nIEZvciBTcGVjaWZpYyBWYXJpYWJsZXMiIGFib3ZlLgotCi1Xcml0aW5nIENvbmZpZyBGaWxlcwotLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotR2l0IGdpdmVzIG11bHRpcGxlIGVudHJ5IHBvaW50cyBpbiB0aGUgQ29uZmlnIEFQSSB0byB3cml0ZSBjb25maWcgdmFsdWVzIHRvCi1maWxlcyBuYW1lbHkgYGdpdF9jb25maWdfc2V0X2luX2ZpbGVgIGFuZCBgZ2l0X2NvbmZpZ19zZXRgLCB3aGljaCB3cml0ZSB0bwotYSBzcGVjaWZpYyBjb25maWcgZmlsZSBvciB0byBgLmdpdC9jb25maWdgIHJlc3BlY3RpdmVseS4gVGhleSBib3RoIHRha2UgYQota2V5L3ZhbHVlIHBhaXIgYXMgcGFyYW1ldGVyLgotSW4gdGhlIGVuZCB0aGV5IGJvdGggY2FsbCBgZ2l0X2NvbmZpZ19zZXRfbXVsdGl2YXJfaW5fZmlsZWAgd2hpY2ggdGFrZXMgZm91cgotcGFyYW1ldGVyczoKLQotLSB0aGUgbmFtZSBvZiB0aGUgZmlsZSwgYXMgYSBzdHJpbmcsIHRvIHdoaWNoIGtleS92YWx1ZSBwYWlycyB3aWxsIGJlIHdyaXR0ZW4uCi0KLS0gdGhlIG5hbWUgb2Yga2V5LCBhcyBhIHN0cmluZy4gVGhpcyBpcyBpbiBjYW5vbmljYWwgImZsYXQiIGZvcm06IHRoZSBzZWN0aW9uLAotICBzdWJzZWN0aW9uLCBhbmQgdmFyaWFibGUgc2VnbWVudHMgd2lsbCBiZSBzZXBhcmF0ZWQgYnkgZG90cywgYW5kIHRoZSBzZWN0aW9uCi0gIGFuZCB2YXJpYWJsZSBzZWdtZW50cyB3aWxsIGJlIGFsbCBsb3dlcmNhc2UuCi0gIEUuZy4sIGBjb3JlLmlnbm9yZWNhc2VgLCBgZGlmZi5Tb21lVHlwZS50ZXh0Y29udmAuCi0KLS0gdGhlIHZhbHVlIG9mIHRoZSB2YXJpYWJsZSwgYXMgYSBzdHJpbmcuIElmIHZhbHVlIGlzIGVxdWFsIHRvIE5VTEwsIGl0IHdpbGwKLSAgcmVtb3ZlIHRoZSBtYXRjaGluZyBrZXkgZnJvbSB0aGUgY29uZmlnIGZpbGUuCi0KLS0gdGhlIHZhbHVlIHJlZ2V4LCBhcyBhIHN0cmluZy4gSXQgd2lsbCBkaXNyZWdhcmQga2V5L3ZhbHVlIHBhaXJzIHdoZXJlIHZhbHVlCi0gIGRvZXMgbm90IG1hdGNoLgotCi0tIGEgbXVsdGlfcmVwbGFjZSB2YWx1ZSwgYXMgYW4gaW50LiBJZiB2YWx1ZSBpcyBlcXVhbCB0byB6ZXJvLCBub3RoaW5nIG9yIG9ubHkKLSAgb25lIG1hdGNoaW5nIGtleS92YWx1ZSBpcyByZXBsYWNlZCwgZWxzZSBhbGwgbWF0Y2hpbmcga2V5L3ZhbHVlcyAocmVnYXJkbGVzcwotICBob3cgbWFueSkgYXJlIHJlbW92ZWQsIGJlZm9yZSB0aGUgbmV3IHBhaXIgaXMgd3JpdHRlbi4KLQotSXQgcmV0dXJucyAwIG9uIHN1Y2Nlc3MuCi0KLUFsc28sIHRoZXJlIGFyZSBmdW5jdGlvbnMgYGdpdF9jb25maWdfcmVuYW1lX3NlY3Rpb25gIGFuZAotYGdpdF9jb25maWdfcmVuYW1lX3NlY3Rpb25faW5fZmlsZWAgd2l0aCBwYXJhbWV0ZXJzIGBvbGRfbmFtZWAgYW5kIGBuZXdfbmFtZWAKLWZvciByZW5hbWluZyBvciByZW1vdmluZyBzZWN0aW9ucyBpbiB0aGUgY29uZmlnIGZpbGVzLiBJZiBOVUxMIGlzIHBhc3NlZAotdGhyb3VnaCBgbmV3X25hbWVgIHBhcmFtZXRlciwgdGhlIHNlY3Rpb24gd2lsbCBiZSByZW1vdmVkIGZyb20gdGhlIGNvbmZpZyBmaWxlLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLWNyZWRlbnRpYWxzLnR4dCBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1jcmVkZW50aWFscy50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc1MzY4ZjIuLjAwMDAwMDAKLS0tIGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLWNyZWRlbnRpYWxzLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDI3MSArMCwwIEBACi1jcmVkZW50aWFscyBBUEkKLT09PT09PT09PT09PT09PQotCi1UaGUgY3JlZGVudGlhbHMgQVBJIHByb3ZpZGVzIGFuIGFic3RyYWN0ZWQgd2F5IG9mIGdhdGhlcmluZyB1c2VybmFtZSBhbmQKLXBhc3N3b3JkIGNyZWRlbnRpYWxzIGZyb20gdGhlIHVzZXIgKGV2ZW4gdGhvdWdoIGNyZWRlbnRpYWxzIGluIHRoZSB3aWRlcgotd29ybGQgY2FuIHRha2UgbWFueSBmb3JtcywgaW4gdGhpcyBkb2N1bWVudCB0aGUgd29yZCAiY3JlZGVudGlhbCIgYWx3YXlzCi1yZWZlcnMgdG8gYSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgcGFpcikuCi0KLVRoaXMgZG9jdW1lbnQgZGVzY3JpYmVzIHR3byBpbnRlcmZhY2VzOiB0aGUgQyBBUEkgdGhhdCB0aGUgY3JlZGVudGlhbAotc3Vic3lzdGVtIHByb3ZpZGVzIHRvIHRoZSByZXN0IG9mIEdpdCwgYW5kIHRoZSBwcm90b2NvbCB0aGF0IEdpdCB1c2VzIHRvCi1jb21tdW5pY2F0ZSB3aXRoIHN5c3RlbS1zcGVjaWZpYyAiY3JlZGVudGlhbCBoZWxwZXJzIi4gSWYgeW91IGFyZQotd3JpdGluZyBHaXQgY29kZSB0aGF0IHdhbnRzIHRvIGxvb2sgdXAgb3IgcHJvbXB0IGZvciBjcmVkZW50aWFscywgc2VlCi10aGUgc2VjdGlvbiAiQyBBUEkiIGJlbG93LiBJZiB5b3Ugd2FudCB0byB3cml0ZSB5b3VyIG93biBoZWxwZXIsIHNlZQotdGhlIHNlY3Rpb24gb24gIkNyZWRlbnRpYWwgSGVscGVycyIgYmVsb3cuCi0KLVR5cGljYWwgc2V0dXAKLS0tLS0tLS0tLS0tLS0KLQotLS0tLS0tLS0tLS0tCi0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCi18IEdpdCBjb2RlIChDKSAgICAgICAgICB8LS0tIHRvIHNlcnZlciByZXF1aXJpbmcgLS0tPgotfCAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgYXV0aGVudGljYXRpb24KLXwuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLnwKLXwgQyBjcmVkZW50aWFsIEFQSSAgICAgIHwtLS0gcHJvbXB0IC0tLT4gVXNlcgotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotCV4gICAgICB8Ci0JfCBwaXBlIHwKLQl8ICAgICAgdgotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotfCBHaXQgY3JlZGVudGlhbCBoZWxwZXIgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotLS0tLS0tLS0tLS0tCi0KLVRoZSBHaXQgY29kZSAodHlwaWNhbGx5IGEgcmVtb3RlLWhlbHBlcikgd2lsbCBjYWxsIHRoZSBDIEFQSSB0byBvYnRhaW4KLWNyZWRlbnRpYWwgZGF0YSBsaWtlIGEgbG9naW4vcGFzc3dvcmQgcGFpciAoY3JlZGVudGlhbF9maWxsKS4gVGhlCi1BUEkgd2lsbCBpdHNlbGYgY2FsbCBhIHJlbW90ZSBoZWxwZXIgKGUuZy4gImdpdCBjcmVkZW50aWFsLWNhY2hlIiBvcgotImdpdCBjcmVkZW50aWFsLXN0b3JlIikgdGhhdCBtYXkgcmV0cmlldmUgY3JlZGVudGlhbCBkYXRhIGZyb20gYQotc3RvcmUuIElmIHRoZSBjcmVkZW50aWFsIGhlbHBlciBjYW5ub3QgZmluZCB0aGUgaW5mb3JtYXRpb24sIHRoZSBDIEFQSQotd2lsbCBwcm9tcHQgdGhlIHVzZXIuIFRoZW4sIHRoZSBjYWxsZXIgb2YgdGhlIEFQSSB0YWtlcyBjYXJlIG9mCi1jb250YWN0aW5nIHRoZSBzZXJ2ZXIsIGFuZCBkb2VzIHRoZSBhY3R1YWwgYXV0aGVudGljYXRpb24uCi0KLUMgQVBJCi0tLS0tLQotCi1UaGUgY3JlZGVudGlhbCBDIEFQSSBpcyBtZWFudCB0byBiZSBjYWxsZWQgYnkgR2l0IGNvZGUgd2hpY2ggbmVlZHMgdG8KLWFjcXVpcmUgb3Igc3RvcmUgYSBjcmVkZW50aWFsLiBJdCBpcyBjZW50ZXJlZCBhcm91bmQgYW4gb2JqZWN0Ci1yZXByZXNlbnRpbmcgYSBzaW5nbGUgY3JlZGVudGlhbCBhbmQgcHJvdmlkZXMgdGhyZWUgYmFzaWMgb3BlcmF0aW9uczoKLWZpbGwgKGFjcXVpcmUgY3JlZGVudGlhbHMgYnkgY2FsbGluZyBoZWxwZXJzIGFuZC9vciBwcm9tcHRpbmcgdGhlIHVzZXIpLAotYXBwcm92ZSAobWFyayBhIGNyZWRlbnRpYWwgYXMgc3VjY2Vzc2Z1bGx5IHVzZWQgc28gdGhhdCBpdCBjYW4gYmUgc3RvcmVkCi1mb3IgbGF0ZXIgdXNlKSwgYW5kIHJlamVjdCAobWFyayBhIGNyZWRlbnRpYWwgYXMgdW5zdWNjZXNzZnVsIHNvIHRoYXQgaXQKLWNhbiBiZSBlcmFzZWQgZnJvbSBhbnkgcGVyc2lzdGVudCBzdG9yYWdlKS4KLQotRGF0YSBTdHJ1Y3R1cmVzCi1+fn5+fn5+fn5+fn5+fn4KLQotYHN0cnVjdCBjcmVkZW50aWFsYDo6Ci0KLQlUaGlzIHN0cnVjdCByZXByZXNlbnRzIGEgc2luZ2xlIHVzZXJuYW1lL3Bhc3N3b3JkIGNvbWJpbmF0aW9uCi0JYWxvbmcgd2l0aCBhbnkgYXNzb2NpYXRlZCBjb250ZXh0LiBBbGwgc3RyaW5nIGZpZWxkcyBzaG91bGQgYmUKLQloZWFwLWFsbG9jYXRlZCAob3IgTlVMTCBpZiB0aGV5IGFyZSBub3Qga25vd24gb3Igbm90IGFwcGxpY2FibGUpLgotCVRoZSBtZWFuaW5nIG9mIHRoZSBpbmRpdmlkdWFsIGNvbnRleHQgZmllbGRzIGlzIHRoZSBzYW1lIGFzCi0JdGhlaXIgY291bnRlcnBhcnRzIGluIHRoZSBoZWxwZXIgcHJvdG9jb2w7IHNlZSB0aGUgc2VjdGlvbiBiZWxvdwotCWZvciBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggZmllbGQuCi0rCi1UaGUgYGhlbHBlcnNgIG1lbWJlciBvZiB0aGUgc3RydWN0IGlzIGEgYHN0cmluZ19saXN0YCBvZiBoZWxwZXJzLiAgRWFjaAotc3RyaW5nIHNwZWNpZmllcyBhbiBleHRlcm5hbCBoZWxwZXIgd2hpY2ggd2lsbCBiZSBydW4sIGluIG9yZGVyLCB0bwotZWl0aGVyIGFjcXVpcmUgb3Igc3RvcmUgY3JlZGVudGlhbHMuIFNlZSB0aGUgc2VjdGlvbiBvbiBjcmVkZW50aWFsCi1oZWxwZXJzIGJlbG93LiBUaGlzIGxpc3QgaXMgZmlsbGVkLWluIGJ5IHRoZSBBUEkgZnVuY3Rpb25zCi1hY2NvcmRpbmcgdG8gdGhlIGNvcnJlc3BvbmRpbmcgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMgYmVmb3JlCi1jb25zdWx0aW5nIGhlbHBlcnMsIHNvIHRoZXJlIHVzdWFsbHkgaXMgbm8gbmVlZCBmb3IgYSBjYWxsZXIgdG8KLW1vZGlmeSB0aGUgaGVscGVycyBmaWVsZCBhdCBhbGwuCi0rCi1UaGlzIHN0cnVjdCBzaG91bGQgYWx3YXlzIGJlIGluaXRpYWxpemVkIHdpdGggYENSRURFTlRJQUxfSU5JVGAgb3IKLWBjcmVkZW50aWFsX2luaXRgLgotCi0KLUZ1bmN0aW9ucwotfn5+fn5+fn5+Ci0KLWBjcmVkZW50aWFsX2luaXRgOjoKLQotCUluaXRpYWxpemUgYSBjcmVkZW50aWFsIHN0cnVjdHVyZSwgc2V0dGluZyBhbGwgZmllbGRzIHRvIGVtcHR5LgotCi1gY3JlZGVudGlhbF9jbGVhcmA6OgotCi0JRnJlZSBhbnkgcmVzb3VyY2VzIGFzc29jaWF0ZWQgd2l0aCB0aGUgY3JlZGVudGlhbCBzdHJ1Y3R1cmUsCi0JcmV0dXJuaW5nIGl0IHRvIGEgcHJpc3RpbmUgaW5pdGlhbGl6ZWQgc3RhdGUuCi0KLWBjcmVkZW50aWFsX2ZpbGxgOjoKLQotCUluc3RydWN0IHRoZSBjcmVkZW50aWFsIHN1YnN5c3RlbSB0byBmaWxsIHRoZSB1c2VybmFtZSBhbmQKLQlwYXNzd29yZCBmaWVsZHMgb2YgdGhlIHBhc3NlZCBjcmVkZW50aWFsIHN0cnVjdCBieSBmaXJzdAotCWNvbnN1bHRpbmcgaGVscGVycywgdGhlbiBhc2tpbmcgdGhlIHVzZXIuIEFmdGVyIHRoaXMgZnVuY3Rpb24KLQlyZXR1cm5zLCB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIGZpZWxkcyBvZiB0aGUgY3JlZGVudGlhbCBhcmUKLQlndWFyYW50ZWVkIHRvIGJlIG5vbi1OVUxMLiBJZiBhbiBlcnJvciBvY2N1cnMsIHRoZSBmdW5jdGlvbiB3aWxsCi0JZGllKCkuCi0KLWBjcmVkZW50aWFsX3JlamVjdGA6OgotCi0JSW5mb3JtIHRoZSBjcmVkZW50aWFsIHN1YnN5c3RlbSB0aGF0IHRoZSBwcm92aWRlZCBjcmVkZW50aWFscwotCWhhdmUgYmVlbiByZWplY3RlZC4gVGhpcyB3aWxsIGNhdXNlIHRoZSBjcmVkZW50aWFsIHN1YnN5c3RlbSB0bwotCW5vdGlmeSBhbnkgaGVscGVycyBvZiB0aGUgcmVqZWN0aW9uICh3aGljaCBhbGxvd3MgdGhlbSwgZm9yCi0JZXhhbXBsZSwgdG8gcHVyZ2UgdGhlIGludmFsaWQgY3JlZGVudGlhbHMgZnJvbSBzdG9yYWdlKS4gIEl0Ci0Jd2lsbCBhbHNvIGZyZWUoKSB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIGZpZWxkcyBvZiB0aGUKLQljcmVkZW50aWFsIGFuZCBzZXQgdGhlbSB0byBOVUxMIChyZWFkeWluZyB0aGUgY3JlZGVudGlhbCBmb3IKLQlhbm90aGVyIGNhbGwgdG8gYGNyZWRlbnRpYWxfZmlsbGApLiBBbnkgZXJyb3JzIGZyb20gaGVscGVycyBhcmUKLQlpZ25vcmVkLgotCi1gY3JlZGVudGlhbF9hcHByb3ZlYDo6Ci0KLQlJbmZvcm0gdGhlIGNyZWRlbnRpYWwgc3Vic3lzdGVtIHRoYXQgdGhlIHByb3ZpZGVkIGNyZWRlbnRpYWxzCi0Jd2VyZSBzdWNjZXNzZnVsbHkgdXNlZCBmb3IgYXV0aGVudGljYXRpb24uICBUaGlzIHdpbGwgY2F1c2UgdGhlCi0JY3JlZGVudGlhbCBzdWJzeXN0ZW0gdG8gbm90aWZ5IGFueSBoZWxwZXJzIG9mIHRoZSBhcHByb3ZhbCwgc28KLQl0aGF0IHRoZXkgbWF5IHN0b3JlIHRoZSByZXN1bHQgdG8gYmUgdXNlZCBhZ2Fpbi4gIEFueSBlcnJvcnMKLQlmcm9tIGhlbHBlcnMgYXJlIGlnbm9yZWQuCi0KLWBjcmVkZW50aWFsX2Zyb21fdXJsYDo6Ci0KLQlQYXJzZSBhIFVSTCBpbnRvIGJyb2tlbi1kb3duIGNyZWRlbnRpYWwgZmllbGRzLgotCi1FeGFtcGxlCi1+fn5+fn5+Ci0KLVRoZSBleGFtcGxlIGJlbG93IHNob3dzIGhvdyB0aGUgZnVuY3Rpb25zIG9mIHRoZSBjcmVkZW50aWFsIEFQSSBjb3VsZCBiZQotdXNlZCB0byBsb2dpbiB0byBhIGZpY3RpdGlvdXMgImZvbyIgc2VydmljZSBvbiBhIHJlbW90ZSBob3N0OgotCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotaW50IGZvb19sb2dpbihzdHJ1Y3QgZm9vX2Nvbm5lY3Rpb24gKmYpCi17Ci0JaW50IHN0YXR1czsKLQkvKgotCSAqIENyZWF0ZSBhIGNyZWRlbnRpYWwgd2l0aCBzb21lIGNvbnRleHQ7IHdlIGRvbid0IHlldCBrbm93IHRoZQotCSAqIHVzZXJuYW1lIG9yIHBhc3N3b3JkLgotCSAqLwotCi0Jc3RydWN0IGNyZWRlbnRpYWwgYyA9IENSRURFTlRJQUxfSU5JVDsKLQljLnByb3RvY29sID0geHN0cmR1cCgiZm9vIik7Ci0JYy5ob3N0ID0geHN0cmR1cChmLT5ob3N0bmFtZSk7Ci0KLQkvKgotCSAqIEZpbGwgaW4gdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZHMgYnkgY29udGFjdGluZwotCSAqIGhlbHBlcnMgYW5kL29yIGFza2luZyB0aGUgdXNlci4gVGhlIGZ1bmN0aW9uIHdpbGwgZGllIGlmIGl0Ci0JICogZmFpbHMuCi0JICovCi0JY3JlZGVudGlhbF9maWxsKCZjKTsKLQotCS8qCi0JICogT3RoZXJ3aXNlLCB3ZSBoYXZlIGEgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLiBUcnkgdG8gdXNlIGl0LgotCSAqLwotCXN0YXR1cyA9IHNlbmRfZm9vX2xvZ2luKGYsIGMudXNlcm5hbWUsIGMucGFzc3dvcmQpOwotCXN3aXRjaCAoc3RhdHVzKSB7Ci0JY2FzZSBGT09fT0s6Ci0JCS8qIEl0IHdvcmtlZC4gU3RvcmUgdGhlIGNyZWRlbnRpYWwgZm9yIGxhdGVyIHVzZS4gKi8KLQkJY3JlZGVudGlhbF9hY2NlcHQoJmMpOwotCQlicmVhazsKLQljYXNlIEZPT19CQURfTE9HSU46Ci0JCS8qIEVyYXNlIHRoZSBjcmVkZW50aWFsIGZyb20gc3RvcmFnZSBzbyB3ZSBkb24ndCB0cnkgaXQKLQkJICogYWdhaW4uICovCi0JCWNyZWRlbnRpYWxfcmVqZWN0KCZjKTsKLQkJYnJlYWs7Ci0JZGVmYXVsdDoKLQkJLyoKLQkJICogU29tZSBvdGhlciBlcnJvciBvY2N1cnJlZC4gV2UgZG9uJ3Qga25vdyBpZiB0aGUKLQkJICogY3JlZGVudGlhbCBpcyBnb29kIG9yIGJhZCwgc28gcmVwb3J0IG5vdGhpbmcgdG8gdGhlCi0JCSAqIGNyZWRlbnRpYWwgc3Vic3lzdGVtLgotCQkgKi8KLQl9Ci0KLQkvKiBGcmVlIGFueSBhc3NvY2lhdGVkIHJlc291cmNlcy4gKi8KLQljcmVkZW50aWFsX2NsZWFyKCZjKTsKLQotCXJldHVybiBzdGF0dXM7Ci19Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi0KLUNyZWRlbnRpYWwgSGVscGVycwotLS0tLS0tLS0tLS0tLS0tLS0tCi0KLUNyZWRlbnRpYWwgaGVscGVycyBhcmUgcHJvZ3JhbXMgZXhlY3V0ZWQgYnkgR2l0IHRvIGZldGNoIG9yIHNhdmUKLWNyZWRlbnRpYWxzIGZyb20gYW5kIHRvIGxvbmctdGVybSBzdG9yYWdlICh3aGVyZSAibG9uZy10ZXJtIiBpcyBzaW1wbHkKLWxvbmdlciB0aGFuIGEgc2luZ2xlIEdpdCBwcm9jZXNzOyBlLmcuLCBjcmVkZW50aWFscyBtYXkgYmUgc3RvcmVkCi1pbi1tZW1vcnkgZm9yIGEgZmV3IG1pbnV0ZXMsIG9yIGluZGVmaW5pdGVseSBvbiBkaXNrKS4KLQotRWFjaCBoZWxwZXIgaXMgc3BlY2lmaWVkIGJ5IGEgc2luZ2xlIHN0cmluZyBpbiB0aGUgY29uZmlndXJhdGlvbgotdmFyaWFibGUgYGNyZWRlbnRpYWwuaGVscGVyYCAoYW5kIG90aGVycywgc2VlIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXSkuCi1UaGUgc3RyaW5nIGlzIHRyYW5zZm9ybWVkIGJ5IEdpdCBpbnRvIGEgY29tbWFuZCB0byBiZSBleGVjdXRlZCB1c2luZwotdGhlc2UgcnVsZXM6Ci0KLSAgMS4gSWYgdGhlIGhlbHBlciBzdHJpbmcgYmVnaW5zIHdpdGggIiEiLCBpdCBpcyBjb25zaWRlcmVkIGEgc2hlbGwKLSAgICAgc25pcHBldCwgYW5kIGV2ZXJ5dGhpbmcgYWZ0ZXIgdGhlICIhIiBiZWNvbWVzIHRoZSBjb21tYW5kLgotCi0gIDIuIE90aGVyd2lzZSwgaWYgdGhlIGhlbHBlciBzdHJpbmcgYmVnaW5zIHdpdGggYW4gYWJzb2x1dGUgcGF0aCwgdGhlCi0gICAgIHZlcmJhdGltIGhlbHBlciBzdHJpbmcgYmVjb21lcyB0aGUgY29tbWFuZC4KLQotICAzLiBPdGhlcndpc2UsIHRoZSBzdHJpbmcgImdpdCBjcmVkZW50aWFsLSIgaXMgcHJlcGVuZGVkIHRvIHRoZSBoZWxwZXIKLSAgICAgc3RyaW5nLCBhbmQgdGhlIHJlc3VsdCBiZWNvbWVzIHRoZSBjb21tYW5kLgotCi1UaGUgcmVzdWx0aW5nIGNvbW1hbmQgdGhlbiBoYXMgYW4gIm9wZXJhdGlvbiIgYXJndW1lbnQgYXBwZW5kZWQgdG8gaXQKLShzZWUgYmVsb3cgZm9yIGRldGFpbHMpLCBhbmQgdGhlIHJlc3VsdCBpcyBleGVjdXRlZCBieSB0aGUgc2hlbGwuCi0KLUhlcmUgYXJlIHNvbWUgZXhhbXBsZSBzcGVjaWZpY2F0aW9uczoKLQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIyBydW4gImdpdCBjcmVkZW50aWFsLWZvbyIKLWZvbwotCi0jIHNhbWUgYXMgYWJvdmUsIGJ1dCBwYXNzIGFuIGFyZ3VtZW50IHRvIHRoZSBoZWxwZXIKLWZvbyAtLWJhcj1iYXoKLQotIyB0aGUgYXJndW1lbnRzIGFyZSBwYXJzZWQgYnkgdGhlIHNoZWxsLCBzbyB1c2Ugc2hlbGwKLSMgcXVvdGluZyBpZiBuZWNlc3NhcnkKLWZvbyAtLWJhcj0id2hpdGVzcGFjZSBhcmciCi0KLSMgeW91IGNhbiBhbHNvIHVzZSBhbiBhYnNvbHV0ZSBwYXRoLCB3aGljaCB3aWxsIG5vdCB1c2UgdGhlIGdpdCB3cmFwcGVyCi0vcGF0aC90by9teS9oZWxwZXIgLS13aXRoLWFyZ3VtZW50cwotCi0jIG9yIHlvdSBjYW4gc3BlY2lmeSB5b3VyIG93biBzaGVsbCBzbmlwcGV0Ci0hZigpIHsgZWNobyAicGFzc3dvcmQ9YGNhdCAkSE9NRS8uc2VjcmV0YCI7IH07IGYKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotR2VuZXJhbGx5IHNwZWFraW5nLCBydWxlICgzKSBhYm92ZSBpcyB0aGUgc2ltcGxlc3QgZm9yIHVzZXJzIHRvIHNwZWNpZnkuCi1BdXRob3JzIG9mIGNyZWRlbnRpYWwgaGVscGVycyBzaG91bGQgbWFrZSBhbiBlZmZvcnQgdG8gYXNzaXN0IHRoZWlyCi11c2VycyBieSBuYW1pbmcgdGhlaXIgcHJvZ3JhbSAiZ2l0LWNyZWRlbnRpYWwtJE5BTUUiLCBhbmQgcHV0dGluZyBpdCBpbgotdGhlICRQQVRIIG9yICRHSVRfRVhFQ19QQVRIIGR1cmluZyBpbnN0YWxsYXRpb24sIHdoaWNoIHdpbGwgYWxsb3cgYSB1c2VyCi10byBlbmFibGUgaXQgd2l0aCBgZ2l0IGNvbmZpZyBjcmVkZW50aWFsLmhlbHBlciAkTkFNRWAuCi0KLVdoZW4gYSBoZWxwZXIgaXMgZXhlY3V0ZWQsIGl0IHdpbGwgaGF2ZSBvbmUgIm9wZXJhdGlvbiIgYXJndW1lbnQKLWFwcGVuZGVkIHRvIGl0cyBjb21tYW5kIGxpbmUsIHdoaWNoIGlzIG9uZSBvZjoKLQotYGdldGA6OgotCi0JUmV0dXJuIGEgbWF0Y2hpbmcgY3JlZGVudGlhbCwgaWYgYW55IGV4aXN0cy4KLQotYHN0b3JlYDo6Ci0KLQlTdG9yZSB0aGUgY3JlZGVudGlhbCwgaWYgYXBwbGljYWJsZSB0byB0aGUgaGVscGVyLgotCi1gZXJhc2VgOjoKLQotCVJlbW92ZSBhIG1hdGNoaW5nIGNyZWRlbnRpYWwsIGlmIGFueSwgZnJvbSB0aGUgaGVscGVyJ3Mgc3RvcmFnZS4KLQotVGhlIGRldGFpbHMgb2YgdGhlIGNyZWRlbnRpYWwgd2lsbCBiZSBwcm92aWRlZCBvbiB0aGUgaGVscGVyJ3Mgc3RkaW4KLXN0cmVhbS4gVGhlIGV4YWN0IGZvcm1hdCBpcyB0aGUgc2FtZSBhcyB0aGUgaW5wdXQvb3V0cHV0IGZvcm1hdCBvZiB0aGUKLWBnaXQgY3JlZGVudGlhbGAgcGx1bWJpbmcgY29tbWFuZCAoc2VlIHRoZSBzZWN0aW9uIGBJTlBVVC9PVVRQVVQKLUZPUk1BVGAgaW4gbGlua2dpdDpnaXQtY3JlZGVudGlhbFsxXSBmb3IgYSBkZXRhaWxlZCBzcGVjaWZpY2F0aW9uKS4KLQotRm9yIGEgYGdldGAgb3BlcmF0aW9uLCB0aGUgaGVscGVyIHNob3VsZCBwcm9kdWNlIGEgbGlzdCBvZiBhdHRyaWJ1dGVzCi1vbiBzdGRvdXQgaW4gdGhlIHNhbWUgZm9ybWF0LiBBIGhlbHBlciBpcyBmcmVlIHRvIHByb2R1Y2UgYSBzdWJzZXQsIG9yCi1ldmVuIG5vIHZhbHVlcyBhdCBhbGwgaWYgaXQgaGFzIG5vdGhpbmcgdXNlZnVsIHRvIHByb3ZpZGUuIEFueSBwcm92aWRlZAotYXR0cmlidXRlcyB3aWxsIG92ZXJ3cml0ZSB0aG9zZSBhbHJlYWR5IGtub3duIGFib3V0IGJ5IEdpdC4gIElmIGEgaGVscGVyCi1vdXRwdXRzIGEgYHF1aXRgIGF0dHJpYnV0ZSB3aXRoIGEgdmFsdWUgb2YgYHRydWVgIG9yIGAxYCwgbm8gZnVydGhlcgotaGVscGVycyB3aWxsIGJlIGNvbnN1bHRlZCwgbm9yIHdpbGwgdGhlIHVzZXIgYmUgcHJvbXB0ZWQgKGlmIG5vCi1jcmVkZW50aWFsIGhhcyBiZWVuIHByb3ZpZGVkLCB0aGUgb3BlcmF0aW9uIHdpbGwgdGhlbiBmYWlsKS4KLQotRm9yIGEgYHN0b3JlYCBvciBgZXJhc2VgIG9wZXJhdGlvbiwgdGhlIGhlbHBlcidzIG91dHB1dCBpcyBpZ25vcmVkLgotSWYgaXQgZmFpbHMgdG8gcGVyZm9ybSB0aGUgcmVxdWVzdGVkIG9wZXJhdGlvbiwgaXQgbWF5IGNvbXBsYWluIHRvCi1zdGRlcnIgdG8gaW5mb3JtIHRoZSB1c2VyLiBJZiBpdCBkb2VzIG5vdCBzdXBwb3J0IHRoZSByZXF1ZXN0ZWQKLW9wZXJhdGlvbiAoZS5nLiwgYSByZWFkLW9ubHkgc3RvcmUpLCBpdCBzaG91bGQgc2lsZW50bHkgaWdub3JlIHRoZQotcmVxdWVzdC4KLQotSWYgYSBoZWxwZXIgcmVjZWl2ZXMgYW55IG90aGVyIG9wZXJhdGlvbiwgaXQgc2hvdWxkIHNpbGVudGx5IGlnbm9yZSB0aGUKLXJlcXVlc3QuIFRoaXMgbGVhdmVzIHJvb20gZm9yIGZ1dHVyZSBvcGVyYXRpb25zIHRvIGJlIGFkZGVkIChvbGRlcgotaGVscGVycyB3aWxsIGp1c3QgaWdub3JlIHRoZSBuZXcgcmVxdWVzdHMpLgotCi1TZWUgYWxzbwotLS0tLS0tLS0KLQotbGlua2dpdDpnaXRjcmVkZW50aWFsc1s3XQotCi1saW5rZ2l0OmdpdC1jb25maWdbMV0gKFNlZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlcyBgY3JlZGVudGlhbC4qYCkKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1kaWZmLnR4dCBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1kaWZmLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzBmYzBlOS4uMDAwMDAwMAotLS0gYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktZGlmZi50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNzQgKzAsMCBAQAotZGlmZiBBUEkKLT09PT09PT09Ci0KLVRoZSBkaWZmIEFQSSBpcyBmb3IgcHJvZ3JhbXMgdGhhdCBjb21wYXJlIHR3byBzZXRzIG9mIGZpbGVzIChlLmcuIHR3bwotdHJlZXMsIG9uZSB0cmVlIGFuZCB0aGUgaW5kZXgpIGFuZCBwcmVzZW50IHRoZSBmb3VuZCBkaWZmZXJlbmNlIGluCi12YXJpb3VzIHdheXMuICBUaGUgY2FsbGluZyBwcm9ncmFtIGlzIHJlc3BvbnNpYmxlIGZvciBmZWVkaW5nIHRoZSBBUEkKLXBhaXJzIG9mIGZpbGVzLCBvbmUgZnJvbSB0aGUgIm9sZCIgc2V0IGFuZCB0aGUgY29ycmVzcG9uZGluZyBvbmUgZnJvbQotIm5ldyIgc2V0LCB0aGF0IGFyZSBkaWZmZXJlbnQuICBUaGUgbGlicmFyeSBjYWxsZWQgdGhyb3VnaCB0aGlzIEFQSSBpcwotY2FsbGVkIGRpZmZjb3JlLCBhbmQgaXMgcmVzcG9uc2libGUgZm9yIHR3byB0aGluZ3MuCi0KLSogZmluZGluZyB0b3RhbCByZXdyaXRlcyAoYC1CYCksIHJlbmFtZXMgKGAtTWApIGFuZCBjb3BpZXMgKGAtQ2ApLCBhbmQKLSAgY2hhbmdlcyB0aGF0IHRvdWNoIGEgc3RyaW5nIChgLVNgKSwgYXMgc3BlY2lmaWVkIGJ5IHRoZSBjYWxsZXIuCi0KLSogb3V0cHV0dGluZyB0aGUgZGlmZmVyZW5jZXMgaW4gdmFyaW91cyBmb3JtYXRzLCBhcyBzcGVjaWZpZWQgYnkgdGhlCi0gIGNhbGxlci4KLQotQ2FsbGluZyBzZXF1ZW5jZQotLS0tLS0tLS0tLS0tLS0tLQotCi0qIFByZXBhcmUgYHN0cnVjdCBkaWZmX29wdGlvbnNgIHRvIHJlY29yZCB0aGUgc2V0IG9mIGRpZmYgb3B0aW9ucywgYW5kCi0gIHRoZW4gY2FsbCBgcmVwb19kaWZmX3NldHVwKClgIHRvIGluaXRpYWxpemUgdGhpcyBzdHJ1Y3R1cmUuICBUaGlzCi0gIHNldHMgdXAgdGhlIHZhbmlsbGEgZGVmYXVsdC4KLQotKiBGaWxsIGluIHRoZSBvcHRpb25zIHN0cnVjdHVyZSB0byBzcGVjaWZ5IGRlc2lyZWQgb3V0cHV0IGZvcm1hdCwgcmVuYW1lCi0gIGRldGVjdGlvbiwgZXRjLiAgYGRpZmZfb3B0X3BhcnNlKClgIGNhbiBiZSB1c2VkIHRvIHBhcnNlIG9wdGlvbnMgZ2l2ZW4KLSAgZnJvbSB0aGUgY29tbWFuZCBsaW5lIGluIGEgd2F5IGNvbnNpc3RlbnQgd2l0aCBleGlzdGluZyBnaXQtZGlmZgotICBmYW1pbHkgb2YgcHJvZ3JhbXMuCi0KLSogQ2FsbCBgZGlmZl9zZXR1cF9kb25lKClgOyB0aGlzIGluc3BlY3RzIHRoZSBvcHRpb25zIHNldCB1cCBzbyBmYXIgZm9yCi0gIGludGVybmFsIGNvbnNpc3RlbmN5IGFuZCBtYWtlIG5lY2Vzc2FyeSB0d2Vha2luZyB0byBpdCAoZS5nLiBpZgotICB0ZXh0dWFsIHBhdGNoIG91dHB1dCB3YXMgYXNrZWQsIHJlY3Vyc2l2ZSBiZWhhdmlvdXIgaXMgdHVybmVkIG9uKTsKLSAgdGhlIGNhbGxiYWNrIHNldF9kZWZhdWx0IGluIGRpZmZfb3B0aW9ucyBjYW4gYmUgdXNlZCB0byB0d2VhayB0aGlzIG1vcmUuCi0KLSogQXMgeW91IGZpbmQgZGlmZmVyZW50IHBhaXJzIG9mIGZpbGVzLCBjYWxsIGBkaWZmX2NoYW5nZSgpYCB0byBmZWVkCi0gIG1vZGlmaWVkIGZpbGVzLCBgZGlmZl9hZGRyZW1vdmUoKWAgdG8gZmVlZCBjcmVhdGVkIG9yIGRlbGV0ZWQgZmlsZXMsCi0gIG9yIGBkaWZmX3VubWVyZ2UoKWAgdG8gZmVlZCBhIGZpbGUgd2hvc2Ugc3RhdGUgaXMgJ3VubWVyZ2VkJyB0byB0aGUKLSAgQVBJLiAgVGhlc2UgYXJlIHRoaW4gd3JhcHBlcnMgdG8gYSBsb3dlci1sZXZlbCBgZGlmZl9xdWV1ZSgpYCBmdW5jdGlvbgotICB0aGF0IGlzIGZsZXhpYmxlIGVub3VnaCB0byByZWNvcmQgYW55IG9mIHRoZXNlIGtpbmRzIG9mIGNoYW5nZXMuCi0KLSogT25jZSB5b3UgZmluaXNoIGZlZWRpbmcgdGhlIHBhaXJzIG9mIGZpbGVzLCBjYWxsIGBkaWZmY29yZV9zdGQoKWAuCi0gIFRoaXMgd2lsbCB0ZWxsIHRoZSBkaWZmY29yZSBsaWJyYXJ5IHRvIGdvIGFoZWFkIGFuZCBkbyBpdHMgd29yay4KLQotKiBDYWxsaW5nIGBkaWZmX2ZsdXNoKClgIHdpbGwgcHJvZHVjZSB0aGUgb3V0cHV0LgotCi0KLURhdGEgc3RydWN0dXJlcwotLS0tLS0tLS0tLS0tLS0tCi0KLSogYHN0cnVjdCBkaWZmX2ZpbGVzcGVjYAotCi1UaGlzIGlzIHRoZSBpbnRlcm5hbCByZXByZXNlbnRhdGlvbiBmb3IgYSBzaW5nbGUgZmlsZSAoYmxvYikuICBJdAotcmVjb3JkcyB0aGUgYmxvYiBvYmplY3QgbmFtZSAoaWYga25vd24gLS0gZm9yIGEgd29yayB0cmVlIGZpbGUgaXQKLXR5cGljYWxseSBpcyBhIE5VTCBTSEEtMSksIGZpbGVtb2RlIGFuZCBwYXRobmFtZS4gIFRoaXMgaXMgd2hhdCB0aGUKLWBkaWZmX2FkZHJlbW92ZSgpYCwgYGRpZmZfY2hhbmdlKClgIGFuZCBgZGlmZl91bm1lcmdlKClgIHN5bnRoZXNpemUgYW5kCi1mZWVkIGBkaWZmX3F1ZXVlKClgIGZ1bmN0aW9uIHdpdGguCi0KLSogYHN0cnVjdCBkaWZmX2ZpbGVwYWlyYAotCi1UaGlzIHJlY29yZHMgYSBwYWlyIG9mIGBzdHJ1Y3QgZGlmZl9maWxlc3BlY2A7IHRoZSBmaWxlc3BlYyBmb3IgYSBmaWxlCi1pbiB0aGUgIm9sZCIgc2V0IChpLmUuIHByZWltYWdlKSBpcyBjYWxsZWQgYG9uZWAsIGFuZCB0aGUgZmlsZXNwZWMgZm9yIGEKLWZpbGUgaW4gdGhlICJuZXciIHNldCAoaS5lLiBwb3N0aW1hZ2UpIGlzIGNhbGxlZCBgdHdvYC4gIEEgY2hhbmdlIHRoYXQKLXJlcHJlc2VudHMgZmlsZSBjcmVhdGlvbiBoYXMgTlVMTCBpbiBgb25lYCwgYW5kIGZpbGUgZGVsZXRpb24gaGFzIE5VTEwKLWluIGB0d29gLgotCi1BIGBmaWxlcGFpcmAgc3RhcnRzIHBvaW50aW5nIGF0IGBvbmVgIGFuZCBgdHdvYCB0aGF0IGFyZSBmcm9tIHRoZSBzYW1lCi1maWxlbmFtZSwgYnV0IGBkaWZmY29yZV9zdGQoKWAgY2FuIGJyZWFrIHBhaXJzIGFuZCBtYXRjaCBjb21wb25lbnQKLWZpbGVzcGVjcyB3aXRoIG90aGVyIGZpbGVzcGVjcyBmcm9tIGEgZGlmZmVyZW50IGZpbGVwYWlyIHRvIGZvcm0gbmV3Ci1maWxlcGFpci4gIFRoaXMgaXMgY2FsbGVkICdyZW5hbWUgZGV0ZWN0aW9uJy4KLQotKiBgc3RydWN0IGRpZmZfcXVldWVgCi0KLVRoaXMgaXMgYSBjb2xsZWN0aW9uIG9mIGZpbGVwYWlycy4gIE5vdGFibGUgbWVtYmVycyBhcmU6Ci0KLWBxdWV1ZWA6OgotCi0JQW4gYXJyYXkgb2YgcG9pbnRlcnMgdG8gYHN0cnVjdCBkaWZmX2ZpbGVwYWlyYC4gIFRoaXMKLQlkeW5hbWljYWxseSBncm93cyBhcyB5b3UgYWRkIGZpbGVwYWlyczsKLQotYGFsbG9jYDo6Ci0KLQlUaGUgYWxsb2NhdGVkIHNpemUgb2YgdGhlIGBxdWV1ZWAgYXJyYXk7Ci0KLWBucmA6OgotCi0JVGhlIG51bWJlciBvZiBlbGVtZW50cyBpbiB0aGUgYHF1ZXVlYCBhcnJheS4KLQotCi0qIGBzdHJ1Y3QgZGlmZl9vcHRpb25zYAotCi1UaGlzIGRlc2NyaWJlcyB0aGUgc2V0IG9mIG9wdGlvbnMgdGhlIGNhbGxpbmcgcHJvZ3JhbSB3YW50cyB0byBhZmZlY3QKLXRoZSBvcGVyYXRpb24gb2YgZGlmZmNvcmUgbGlicmFyeSB3aXRoLgotCi1Ob3RhYmxlIG1lbWJlcnMgYXJlOgotCi1gb3V0cHV0X2Zvcm1hdGA6OgotCVRoZSBvdXRwdXQgZm9ybWF0IHVzZWQgd2hlbiBgZGlmZl9mbHVzaCgpYCBpcyBydW4uCi0KLWBjb250ZXh0YDo6Ci0JTnVtYmVyIG9mIGNvbnRleHQgbGluZXMgdG8gZ2VuZXJhdGUgaW4gcGF0Y2ggb3V0cHV0LgotCi1gYnJlYWtfb3B0YCwgYGRldGVjdF9yZW5hbWVgLCBgcmVuYW1lLXNjb3JlYCwgYHJlbmFtZV9saW1pdGA6OgotCUFmZmVjdHMgdGhlIHdheSBkZXRlY3Rpb24gbG9naWMgZm9yIGNvbXBsZXRlIHJld3JpdGVzLCByZW5hbWVzCi0JYW5kIGNvcGllcy4KLQotYGFiYnJldmA6OgotCU51bWJlciBvZiBoZXhkaWdpdHMgdG8gYWJicmV2aWF0ZSByYXcgZm9ybWF0IG91dHB1dCB0by4KLQotYHBpY2theGVgOjoKLQlBIGNvbnN0YW50IHN0cmluZyAoY2FuIGFuZCB0eXBpY2FsbHkgZG9lcyBjb250YWluIG5ld2xpbmVzIHRvCi0JbG9vayBmb3IgYSBibG9jayBvZiB0ZXh0LCBub3QganVzdCBhIHNpbmdsZSBsaW5lKSB0byBmaWx0ZXIgb3V0Ci0JdGhlIGZpbGVwYWlycyB0aGF0IGRvIG5vdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBzdHJpbmdzIGNvbnRhaW5lZAotCWluIGl0cyBwcmVpbWFnZSBhbmQgcG9zdGltYWdlIG9mIHRoZSBkaWZmX3F1ZXVlLgotCi1gZmxhZ3NgOjoKLQlUaGlzIGlzIG1vc3RseSBhIGNvbGxlY3Rpb24gb2YgYm9vbGVhbiBvcHRpb25zIHRoYXQgYWZmZWN0cyB0aGUKLQlvcGVyYXRpb24sIGJ1dCBzb21lIGRvIG5vdCBoYXZlIGFueXRoaW5nIHRvIGRvIHdpdGggdGhlIGRpZmZjb3JlCi0JbGlicmFyeS4KLQotYHRvdWNoZWRfZmxhZ3NgOjoKLQlSZWNvcmRzIHdoZXRoZXIgYSBmbGFnIGhhcyBiZWVuIGNoYW5nZWQgZHVlIHRvIHVzZXIgcmVxdWVzdAotCShyYXRoZXIgdGhhbiBqdXN0IHNldC91bnNldCBieSBkZWZhdWx0KS4KLQotYHNldF9kZWZhdWx0YDo6Ci0JQ2FsbGJhY2sgd2hpY2ggYWxsb3dzIHR3ZWFraW5nIHRoZSBvcHRpb25zIGluIGRpZmZfc2V0dXBfZG9uZSgpLgotCi1CSU5BUlksIFRFWFQ7OwotCUFmZmVjdHMgdGhlIHdheSBob3cgYSBmaWxlIHRoYXQgaXMgc2VlbWluZ2x5IGJpbmFyeSBpcyB0cmVhdGVkLgotCi1GVUxMX0lOREVYOzsKLQlUZWxscyB0aGUgcGF0Y2ggb3V0cHV0IGZvcm1hdCBub3QgdG8gdXNlIGFiYnJldmlhdGVkIG9iamVjdAotCW5hbWVzIG9uIHRoZSAiaW5kZXgiIGxpbmVzLgotCi1GSU5EX0NPUElFU19IQVJERVI7OwotCVRlbGxzIHRoZSBkaWZmY29yZSBsaWJyYXJ5IHRoYXQgdGhlIGNhbGxlciBpcyBmZWVkaW5nIHVuY2hhbmdlZAotCWZpbGVwYWlycyB0byBhbGxvdyBjb3BpZXMgZnJvbSB1bm1vZGlmaWVkIGZpbGVzIGJlIGRldGVjdGVkLgotCi1DT0xPUl9ESUZGOzsKLQlPdXRwdXQgc2hvdWxkIGJlIGNvbG9yZWQuCi0KLUNPTE9SX0RJRkZfV09SRFM7OwotCU91dHB1dCBpcyBhIGNvbG9yZWQgd29yZC1kaWZmLgotCi1OT19JTkRFWDs7Ci0JVGVsbHMgZGlmZi1maWxlcyB0aGF0IHRoZSBpbnB1dCBpcyBub3QgdHJhY2tlZCBmaWxlcyBidXQgZmlsZXMKLQlpbiByYW5kb20gbG9jYXRpb25zIG9uIHRoZSBmaWxlc3lzdGVtLgotCi1BTExPV19FWFRFUk5BTDs7Ci0JVGVsbHMgb3V0cHV0IHJvdXRpbmUgdGhhdCBpdCBpcyBPayB0byBjYWxsIHVzZXIgc3BlY2lmaWVkIHBhdGNoCi0Jb3V0cHV0IHJvdXRpbmUuICBQbHVtYmluZyBkaXNhYmxlcyB0aGlzIHRvIGVuc3VyZSBzdGFibGUgb3V0cHV0LgotCi1RVUlFVDs7Ci0JRG8gbm90IHNob3cgYW55IG91dHB1dC4KLQotUkVWRVJTRV9ESUZGOzsKLQlUZWxscyB0aGUgbGlicmFyeSB0aGF0IHRoZSBjYWxsaW5nIHByb2dyYW0gaXMgZmVlZGluZyB0aGUKLQlmaWxlcGFpcnMgcmV2ZXJzZWQ7IGBvbmVgIGlzIHR3bywgYW5kIGB0d29gIGlzIG9uZS4KLQotRVhJVF9XSVRIX1NUQVRVUzs7Ci0JRm9yIGNvbW11bmljYXRpb24gYmV0d2VlbiB0aGUgY2FsbGluZyBwcm9ncmFtIGFuZCB0aGUgb3B0aW9ucwotCXBhcnNlcjsgdGVsbCB0aGUgY2FsbGluZyBwcm9ncmFtIHRvIHNpZ25hbCB0aGUgcHJlc2VuY2Ugb2YKLQlkaWZmZXJlbmNlIHVzaW5nIHByb2dyYW0gZXhpdCBjb2RlLgotCi1IQVNfQ0hBTkdFUzs7Ci0JSW50ZXJuYWw7IHVzZWQgZm9yIG9wdGltaXphdGlvbiB0byBzZWUgaWYgdGhlcmUgaXMgYW55IGNoYW5nZS4KLQotU0lMRU5UX09OX1JFTU9WRTs7Ci0JQWZmZWN0cyBpZiBkaWZmLWZpbGVzIHNob3dzIHJlbW92ZWQgZmlsZXMuCi0KLVJFQ1VSU0lWRSwgVFJFRV9JTl9SRUNVUlNJVkU7OwotCVRlbGxzIGlmIHRyZWUgdHJhdmVyc2FsIGRvbmUgYnkgdHJlZS1kaWZmIHNob3VsZCByZWN1cnNpdmVseQotCWRlc2NlbmQgaW50byBhIHRyZWUgb2JqZWN0IHBhaXIgdGhhdCBhcmUgZGlmZmVyZW50IGluIHByZWltYWdlCi0JYW5kIHBvc3RpbWFnZSBzZXQuCi0KLShKQykKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1kaXJlY3RvcnktbGlzdGluZy50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktZGlyZWN0b3J5LWxpc3RpbmcudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1YWJiOGU4Li4wMDAwMDAwCi0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1kaXJlY3RvcnktbGlzdGluZy50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMzAgKzAsMCBAQAotZGlyZWN0b3J5IGxpc3RpbmcgQVBJCi09PT09PT09PT09PT09PT09PT09PT0KLQotVGhlIGRpcmVjdG9yeSBsaXN0aW5nIEFQSSBpcyB1c2VkIHRvIGVudW1lcmF0ZSBwYXRocyBpbiB0aGUgd29yayB0cmVlLAotb3B0aW9uYWxseSB0YWtpbmcgYC5naXQvaW5mby9leGNsdWRlYCBhbmQgYC5naXRpZ25vcmVgIGZpbGVzIHBlcgotZGlyZWN0b3J5IGludG8gYWNjb3VudC4KLQotRGF0YSBzdHJ1Y3R1cmUKLS0tLS0tLS0tLS0tLS0tCi0KLWBzdHJ1Y3QgZGlyX3N0cnVjdGAgc3RydWN0dXJlIGlzIHVzZWQgdG8gcGFzcyBkaXJlY3RvcnkgdHJhdmVyc2FsCi1vcHRpb25zIHRvIHRoZSBsaWJyYXJ5IGFuZCB0byByZWNvcmQgdGhlIHBhdGhzIGRpc2NvdmVyZWQuICBBIHNpbmdsZQotYHN0cnVjdCBkaXJfc3RydWN0YCBpcyB1c2VkIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciBvciBub3QgdGhlIHRyYXZlcnNhbAotcmVjdXJzaXZlbHkgZGVzY2VuZHMgaW50byBzdWJkaXJlY3Rvcmllcy4KLQotVGhlIG5vdGFibGUgb3B0aW9ucyBhcmU6Ci0KLWBleGNsdWRlX3Blcl9kaXJgOjoKLQotCVRoZSBuYW1lIG9mIHRoZSBmaWxlIHRvIGJlIHJlYWQgaW4gZWFjaCBkaXJlY3RvcnkgZm9yIGV4Y2x1ZGVkCi0JZmlsZXMgKHR5cGljYWxseSBgLmdpdGlnbm9yZWApLgotCi1gZmxhZ3NgOjoKLQotCUEgYml0LWZpZWxkIG9mIG9wdGlvbnM6Ci0KLWBESVJfU0hPV19JR05PUkVEYDo6OgotCi0JUmV0dXJuIGp1c3QgaWdub3JlZCBmaWxlcyBpbiBgZW50cmllc1tdYCwgbm90IHVudHJhY2tlZAotCWZpbGVzLiBUaGlzIGZsYWcgaXMgbXV0dWFsbHkgZXhjbHVzaXZlIHdpdGgKLQlgRElSX1NIT1dfSUdOT1JFRF9UT09gLgotCi1gRElSX1NIT1dfSUdOT1JFRF9UT09gOjo6Ci0KLQlTaW1pbGFyIHRvIGBESVJfU0hPV19JR05PUkVEYCwgYnV0IHJldHVybiBpZ25vcmVkIGZpbGVzIGluCi0JYGlnbm9yZWRbXWAgaW4gYWRkaXRpb24gdG8gdW50cmFja2VkIGZpbGVzIGluCi0JYGVudHJpZXNbXWAuIFRoaXMgZmxhZyBpcyBtdXR1YWxseSBleGNsdXNpdmUgd2l0aAotCWBESVJfU0hPV19JR05PUkVEYC4KLQotYERJUl9LRUVQX1VOVFJBQ0tFRF9DT05URU5UU2A6OjoKLQotCU9ubHkgaGFzIG1lYW5pbmcgaWYgYERJUl9TSE9XX0lHTk9SRURfVE9PYCBpcyBhbHNvIHNldDsgaWYgdGhpcyBpcyBzZXQsIHRoZQotCXVudHJhY2tlZCBjb250ZW50cyBvZiB1bnRyYWNrZWQgZGlyZWN0b3JpZXMgYXJlIGFsc28gcmV0dXJuZWQgaW4KLQlgZW50cmllc1tdYC4KLQotYERJUl9TSE9XX0lHTk9SRURfVE9PX01PREVfTUFUQ0hJTkdgOjo6Ci0KLQlPbmx5IGhhcyBtZWFuaW5nIGlmIGBESVJfU0hPV19JR05PUkVEX1RPT2AgaXMgYWxzbyBzZXQ7IGlmCi0JdGhpcyBpcyBzZXQsIHJldHVybnMgaWdub3JlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgdGhhdCBtYXRjaAotCWFuIGV4Y2x1ZGUgcGF0dGVybi4gSWYgYSBkaXJlY3RvcnkgbWF0Y2hlcyBhbiBleGNsdWRlIHBhdHRlcm4sCi0JdGhlbiB0aGUgZGlyZWN0b3J5IGlzIHJldHVybmVkIGFuZCB0aGUgY29udGFpbmVkIHBhdGhzIGFyZQotCW5vdC4gQSBkaXJlY3RvcnkgdGhhdCBkb2VzIG5vdCBtYXRjaCBhbiBleGNsdWRlIHBhdHRlcm4gd2lsbAotCW5vdCBiZSByZXR1cm5lZCBldmVuIGlmIGFsbCBvZiBpdHMgY29udGVudHMgYXJlIGlnbm9yZWQuIEluCi0JdGhpcyBjYXNlLCB0aGUgY29udGVudHMgYXJlIHJldHVybmVkIGFzIGluZGl2aWR1YWwgZW50cmllcy4KLSsKLUlmIHRoaXMgaXMgc2V0LCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgdGhhdCBleHBsaWNpdGx5IG1hdGNoIGFuIGlnbm9yZQotcGF0dGVybiBhcmUgcmVwb3J0ZWQuIEltcGxpY2l0bHkgaWdub3JlZCBkaXJlY3RvcmllcyAoZGlyZWN0b3JpZXMgdGhhdAotZG8gbm90IG1hdGNoIGFuIGlnbm9yZSBwYXR0ZXJuLCBidXQgd2hvc2UgY29udGVudHMgYXJlIGFsbCBpZ25vcmVkKQotYXJlIG5vdCByZXBvcnRlZCwgaW5zdGVhZCBhbGwgb2YgdGhlIGNvbnRlbnRzIGFyZSByZXBvcnRlZC4KLQotYERJUl9DT0xMRUNUX0lHTk9SRURgOjo6Ci0KLQlTcGVjaWFsIG1vZGUgZm9yIGdpdC1hZGQuIFJldHVybiBpZ25vcmVkIGZpbGVzIGluIGBpZ25vcmVkW11gIGFuZAotCXVudHJhY2tlZCBmaWxlcyBpbiBgZW50cmllc1tdYC4gT25seSByZXR1cm5zIGlnbm9yZWQgZmlsZXMgdGhhdCBtYXRjaAotCXBhdGhzcGVjIGV4YWN0bHkgKG5vIHdpbGRjYXJkcykuIERvZXMgbm90IHJlY3Vyc2UgaW50byBpZ25vcmVkCi0JZGlyZWN0b3JpZXMuCi0KLWBESVJfU0hPV19PVEhFUl9ESVJFQ1RPUklFU2A6OjoKLQotCUluY2x1ZGUgYSBkaXJlY3RvcnkgdGhhdCBpcyBub3QgdHJhY2tlZC4KLQotYERJUl9ISURFX0VNUFRZX0RJUkVDVE9SSUVTYDo6OgotCi0JRG8gbm90IGluY2x1ZGUgYSBkaXJlY3RvcnkgdGhhdCBpcyBub3QgdHJhY2tlZCBhbmQgaXMgZW1wdHkuCi0KLWBESVJfTk9fR0lUTElOS1NgOjo6Ci0KLQlJZiBzZXQsIHJlY3Vyc2UgaW50byBhIGRpcmVjdG9yeSB0aGF0IGxvb2tzIGxpa2UgYSBHaXQKLQlkaXJlY3RvcnkuICBPdGhlcndpc2UgaXQgaXMgc2hvd24gYXMgYSBkaXJlY3RvcnkuCi0KLVRoZSByZXN1bHQgb2YgdGhlIGVudW1lcmF0aW9uIGlzIGxlZnQgaW4gdGhlc2UgZmllbGRzOgotCi1gZW50cmllc1tdYDo6Ci0KLQlBbiBhcnJheSBvZiBgc3RydWN0IGRpcl9lbnRyeWAsIGVhY2ggZWxlbWVudCBvZiB3aGljaCBkZXNjcmliZXMKLQlhIHBhdGguCi0KLWBucmA6OgotCi0JVGhlIG51bWJlciBvZiBtZW1iZXJzIGluIGBlbnRyaWVzW11gIGFycmF5LgotCi1gYWxsb2NgOjoKLQotCUludGVybmFsIHVzZTsga2VlcHMgdHJhY2sgb2YgYWxsb2NhdGlvbiBvZiBgZW50cmllc1tdYCBhcnJheS4KLQotYGlnbm9yZWRbXWA6OgotCi0JQW4gYXJyYXkgb2YgYHN0cnVjdCBkaXJfZW50cnlgLCB1c2VkIGZvciBpZ25vcmVkIHBhdGhzIHdpdGggdGhlCi0JYERJUl9TSE9XX0lHTk9SRURfVE9PYCBhbmQgYERJUl9DT0xMRUNUX0lHTk9SRURgIGZsYWdzLgotCi1gaWdub3JlZF9ucmA6OgotCi0JVGhlIG51bWJlciBvZiBtZW1iZXJzIGluIGBpZ25vcmVkW11gIGFycmF5LgotCi1DYWxsaW5nIHNlcXVlbmNlCi0tLS0tLS0tLS0tLS0tLS0tCi0KLU5vdGU6IGluZGV4IG1heSBiZSBsb29rZWQgYXQgZm9yIC5naXRpZ25vcmUgZmlsZXMgdGhhdCBhcmUgQ0VfU0tJUF9XT1JLVFJFRQotbWFya2VkLiBJZiB5b3UgdG8gZXhjbHVkZSBmaWxlcywgbWFrZSBzdXJlIHlvdSBoYXZlIGxvYWRlZCBpbmRleCBmaXJzdC4KLQotKiBQcmVwYXJlIGBzdHJ1Y3QgZGlyX3N0cnVjdCBkaXJgIGFuZCBjbGVhciBpdCB3aXRoIGBtZW1zZXQoJmRpciwgMCwKLSAgc2l6ZW9mKGRpcikpYC4KLQotKiBUbyBhZGQgc2luZ2xlIGV4Y2x1ZGUgcGF0dGVybiwgY2FsbCBgYWRkX2V4Y2x1ZGVfbGlzdCgpYCBhbmQgdGhlbgotICBgYWRkX2V4Y2x1ZGUoKWAuCi0KLSogVG8gYWRkIHBhdHRlcm5zIGZyb20gYSBmaWxlIChlLmcuIGAuZ2l0L2luZm8vZXhjbHVkZWApLCBjYWxsCi0gIGBhZGRfZXhjbHVkZXNfZnJvbV9maWxlKClgICwgYW5kL29yIHNldCBgZGlyLmV4Y2x1ZGVfcGVyX2RpcmAuICBBCi0gIHNob3J0LWhhbmQgZnVuY3Rpb24gYHNldHVwX3N0YW5kYXJkX2V4Y2x1ZGVzKClgIGNhbiBiZSB1c2VkIHRvIHNldAotICB1cCB0aGUgc3RhbmRhcmQgc2V0IG9mIGV4Y2x1ZGUgc2V0dGluZ3MuCi0KLSogU2V0IG9wdGlvbnMgZGVzY3JpYmVkIGluIHRoZSBEYXRhIFN0cnVjdHVyZSBzZWN0aW9uIGFib3ZlLgotCi0qIENhbGwgYHJlYWRfZGlyZWN0b3J5KClgLgotCi0qIFVzZSBgZGlyLmVudHJpZXNbXWAuCi0KLSogQ2FsbCBgY2xlYXJfZGlyZWN0b3J5KClgIHdoZW4gbm9uZSBvZiB0aGUgY29udGFpbmVkIGVsZW1lbnRzIGFyZSBubyBsb25nZXIgaW4gdXNlLgotCi0oSkMpCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktZ2l0YXR0cmlidXRlcy50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktZ2l0YXR0cmlidXRlcy50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQ1ZjBkZjYuLjAwMDAwMDAKLS0tIGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLWdpdGF0dHJpYnV0ZXMudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTU0ICswLDAgQEAKLWdpdGF0dHJpYnV0ZXMgQVBJCi09PT09PT09PT09PT09PT09PQotCi1naXRhdHRyaWJ1dGVzIG1lY2hhbmlzbSBnaXZlcyBhIHVuaWZvcm0gd2F5IHRvIGFzc29jaWF0ZSB2YXJpb3VzCi1hdHRyaWJ1dGVzIHRvIHNldCBvZiBwYXRocy4KLQotCi1EYXRhIFN0cnVjdHVyZQotLS0tLS0tLS0tLS0tLS0KLQotYHN0cnVjdCBnaXRfYXR0cmA6OgotCi0JQW4gYXR0cmlidXRlIGlzIGFuIG9wYXF1ZSBvYmplY3QgdGhhdCBpcyBpZGVudGlmaWVkIGJ5IGl0cyBuYW1lLgotCVBhc3MgdGhlIG5hbWUgdG8gYGdpdF9hdHRyKClgIGZ1bmN0aW9uIHRvIG9idGFpbiB0aGUgb2JqZWN0IG9mCi0JdGhpcyB0eXBlLiAgVGhlIGludGVybmFsIHJlcHJlc2VudGF0aW9uIG9mIHRoaXMgc3RydWN0dXJlIGlzCi0Jb2Ygbm8gaW50ZXJlc3QgdG8gdGhlIGNhbGxpbmcgcHJvZ3JhbXMuICBUaGUgbmFtZSBvZiB0aGUKLQlhdHRyaWJ1dGUgY2FuIGJlIHJldHJpZXZlZCBieSBjYWxsaW5nIGBnaXRfYXR0cl9uYW1lKClgLgotCi1gc3RydWN0IGF0dHJfY2hlY2tfaXRlbWA6OgotCi0JVGhpcyBzdHJ1Y3R1cmUgcmVwcmVzZW50cyBvbmUgYXR0cmlidXRlIGFuZCBpdHMgdmFsdWUuCi0KLWBzdHJ1Y3QgYXR0cl9jaGVja2A6OgotCi0JVGhpcyBzdHJ1Y3R1cmUgcmVwcmVzZW50cyBhIGNvbGxlY3Rpb24gb2YgYGF0dHJfY2hlY2tfaXRlbWAuCi0JSXQgaXMgcGFzc2VkIHRvIGBnaXRfY2hlY2tfYXR0cigpYCBmdW5jdGlvbiwgc3BlY2lmeWluZyB0aGUKLQlhdHRyaWJ1dGVzIHRvIGNoZWNrLCBhbmQgcmVjZWl2ZXMgdGhlaXIgdmFsdWVzLgotCi0KLUF0dHJpYnV0ZSBWYWx1ZXMKLS0tLS0tLS0tLS0tLS0tLS0KLQotQW4gYXR0cmlidXRlIGZvciBhIHBhdGggY2FuIGJlIGluIG9uZSBvZiBmb3VyIHN0YXRlczogU2V0LCBVbnNldCwKLVVuc3BlY2lmaWVkIG9yIHNldCB0byBhIHN0cmluZywgYW5kIGAudmFsdWVgIG1lbWJlciBvZiBgc3RydWN0Ci1hdHRyX2NoZWNrX2l0ZW1gIHJlY29yZHMgaXQuICBUaGVyZSBhcmUgdGhyZWUgbWFjcm9zIHRvIGNoZWNrIHRoZXNlOgotCi1gQVRUUl9UUlVFKClgOjoKLQotCVJldHVybnMgdHJ1ZSBpZiB0aGUgYXR0cmlidXRlIGlzIFNldCBmb3IgdGhlIHBhdGguCi0KLWBBVFRSX0ZBTFNFKClgOjoKLQotCVJldHVybnMgdHJ1ZSBpZiB0aGUgYXR0cmlidXRlIGlzIFVuc2V0IGZvciB0aGUgcGF0aC4KLQotYEFUVFJfVU5TRVQoKWA6OgotCi0JUmV0dXJucyB0cnVlIGlmIHRoZSBhdHRyaWJ1dGUgaXMgVW5zcGVjaWZpZWQgZm9yIHRoZSBwYXRoLgotCi1JZiBub25lIG9mIHRoZSBhYm92ZSByZXR1cm5zIHRydWUsIGAudmFsdWVgIG1lbWJlciBwb2ludHMgYXQgYSBzdHJpbmcKLXZhbHVlIG9mIHRoZSBhdHRyaWJ1dGUgZm9yIHRoZSBwYXRoLgotCi0KLVF1ZXJ5aW5nIFNwZWNpZmljIEF0dHJpYnV0ZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotKiBQcmVwYXJlIGBzdHJ1Y3QgYXR0cl9jaGVja2AgdXNpbmcgYXR0cl9jaGVja19pbml0bCgpCi0gIGZ1bmN0aW9uLCBlbnVtZXJhdGluZyB0aGUgbmFtZXMgb2YgYXR0cmlidXRlcyB3aG9zZSB2YWx1ZXMgeW91IGFyZQotICBpbnRlcmVzdGVkIGluLCB0ZXJtaW5hdGVkIHdpdGggYSBOVUxMIHBvaW50ZXIuICBBbHRlcm5hdGl2ZWx5LCBhbgotICBlbXB0eSBgc3RydWN0IGF0dHJfY2hlY2tgIGNhbiBiZSBwcmVwYXJlZCBieSBjYWxsaW5nCi0gIGBhdHRyX2NoZWNrX2FsbG9jKClgIGZ1bmN0aW9uIGFuZCB0aGVuIGF0dHJpYnV0ZXMgeW91IHdhbnQgdG8KLSAgYXNrIGFib3V0IGNhbiBiZSBhZGRlZCB0byBpdCB3aXRoIGBhdHRyX2NoZWNrX2FwcGVuZCgpYAotICBmdW5jdGlvbi4KLQotKiBDYWxsIGBnaXRfY2hlY2tfYXR0cigpYCB0byBjaGVjayB0aGUgYXR0cmlidXRlcyBmb3IgdGhlIHBhdGguCi0KLSogSW5zcGVjdCBgYXR0cl9jaGVja2Agc3RydWN0dXJlIHRvIHNlZSBob3cgZWFjaCBvZiB0aGUKLSAgYXR0cmlidXRlIGluIHRoZSBhcnJheSBpcyBkZWZpbmVkIGZvciB0aGUgcGF0aC4KLQotCi1FeGFtcGxlCi0tLS0tLS0tCi0KLVRvIHNlZSBob3cgYXR0cmlidXRlcyAiY3JsZiIgYW5kICJpZGVudCIgYXJlIHNldCBmb3IgZGlmZmVyZW50IHBhdGhzLgotCi0uIFByZXBhcmUgYSBgc3RydWN0IGF0dHJfY2hlY2tgIHdpdGggdHdvIGVsZW1lbnRzIChiZWNhdXNlCi0gIHdlIGFyZSBjaGVja2luZyB0d28gYXR0cmlidXRlcyk6Ci0KLS0tLS0tLS0tLS0tLQotc3RhdGljIHN0cnVjdCBhdHRyX2NoZWNrICpjaGVjazsKLXN0YXRpYyB2b2lkIHNldHVwX2NoZWNrKHZvaWQpCi17Ci0JaWYgKGNoZWNrKQotCQlyZXR1cm47IC8qIGFscmVhZHkgZG9uZSAqLwotCWNoZWNrID0gYXR0cl9jaGVja19pbml0bCgiY3JsZiIsICJpZGVudCIsIE5VTEwpOwotfQotLS0tLS0tLS0tLS0tCi0KLS4gQ2FsbCBgZ2l0X2NoZWNrX2F0dHIoKWAgd2l0aCB0aGUgcHJlcGFyZWQgYHN0cnVjdCBhdHRyX2NoZWNrYDoKLQotLS0tLS0tLS0tLS0tCi0JY29uc3QgY2hhciAqcGF0aDsKLQotCXNldHVwX2NoZWNrKCk7Ci0JZ2l0X2NoZWNrX2F0dHIocGF0aCwgY2hlY2spOwotLS0tLS0tLS0tLS0tCi0KLS4gQWN0IG9uIGAudmFsdWVgIG1lbWJlciBvZiB0aGUgcmVzdWx0LCBsZWZ0IGluIGBjaGVjay0+aXRlbXNbXWA6Ci0KLS0tLS0tLS0tLS0tLQotCWNvbnN0IGNoYXIgKnZhbHVlID0gY2hlY2stPml0ZW1zWzBdLnZhbHVlOwotCi0JaWYgKEFUVFJfVFJVRSh2YWx1ZSkpIHsKLQkJVGhlIGF0dHJpYnV0ZSBpcyBTZXQsIGJ5IGxpc3Rpbmcgb25seSB0aGUgbmFtZSBvZiB0aGUKLQkJYXR0cmlidXRlIGluIHRoZSBnaXRhdHRyaWJ1dGVzIGZpbGUgZm9yIHRoZSBwYXRoLgotCX0gZWxzZSBpZiAoQVRUUl9GQUxTRSh2YWx1ZSkpIHsKLQkJVGhlIGF0dHJpYnV0ZSBpcyBVbnNldCwgYnkgbGlzdGluZyB0aGUgbmFtZSBvZiB0aGUKLQkJYXR0cmlidXRlIHByZWZpeGVkIHdpdGggYSBkYXNoIC0gZm9yIHRoZSBwYXRoLgotCX0gZWxzZSBpZiAoQVRUUl9VTlNFVCh2YWx1ZSkpIHsKLQkJVGhlIGF0dHJpYnV0ZSBpcyBuZWl0aGVyIHNldCBub3IgdW5zZXQgZm9yIHRoZSBwYXRoLgotCX0gZWxzZSBpZiAoIXN0cmNtcCh2YWx1ZSwgImlucHV0IikpIHsKLQkJSWYgbm9uZSBvZiBBVFRSX1RSVUUoKSwgQVRUUl9GQUxTRSgpLCBvciBBVFRSX1VOU0VUKCkgaXMKLQkJdHJ1ZSwgdGhlIHZhbHVlIGlzIGEgc3RyaW5nIHNldCBpbiB0aGUgZ2l0YXR0cmlidXRlcwotCQlmaWxlIGZvciB0aGUgcGF0aCBieSBzYXlpbmcgImF0dHI9dmFsdWUiLgotCX0gZWxzZSBpZiAoLi4uIG90aGVyIGNoZWNrIHVzaW5nIHZhbHVlIGFzIHN0cmluZyAuLi4pIHsKLQkJLi4uCi0JfQotLS0tLS0tLS0tLS0tCi0KLVRvIHNlZSBob3cgYXR0cmlidXRlcyBpbiBhcmd2W10gYXJlIHNldCBmb3IgZGlmZmVyZW50IHBhdGhzLCBvbmx5Ci10aGUgZmlyc3Qgc3RlcCBpbiB0aGUgYWJvdmUgd291bGQgYmUgZGlmZmVyZW50LgotCi0tLS0tLS0tLS0tLS0KLXN0YXRpYyBzdHJ1Y3QgYXR0cl9jaGVjayAqY2hlY2s7Ci1zdGF0aWMgdm9pZCBzZXR1cF9jaGVjayhjb25zdCBjaGFyICoqYXJndikKLXsKLQljaGVjayA9IGF0dHJfY2hlY2tfYWxsb2MoKTsKLQl3aGlsZSAoKmFyZ3YpIHsKLQkJc3RydWN0IGdpdF9hdHRyICphdHRyID0gZ2l0X2F0dHIoKmFyZ3YpOwotCQlhdHRyX2NoZWNrX2FwcGVuZChjaGVjaywgYXR0cik7Ci0JCWFyZ3YrKzsKLQl9Ci19Ci0tLS0tLS0tLS0tLS0KLQotCi1RdWVyeWluZyBBbGwgQXR0cmlidXRlcwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotVG8gZ2V0IHRoZSB2YWx1ZXMgb2YgYWxsIGF0dHJpYnV0ZXMgYXNzb2NpYXRlZCB3aXRoIGEgZmlsZToKLQotKiBQcmVwYXJlIGFuIGVtcHR5IGBhdHRyX2NoZWNrYCBzdHJ1Y3R1cmUgYnkgY2FsbGluZwotICBgYXR0cl9jaGVja19hbGxvYygpYC4KLQotKiBDYWxsIGBnaXRfYWxsX2F0dHJzKClgLCB3aGljaCBwb3B1bGF0ZXMgdGhlIGBhdHRyX2NoZWNrYAotICB3aXRoIHRoZSBhdHRyaWJ1dGVzIGF0dGFjaGVkIHRvIHRoZSBwYXRoLgotCi0qIEl0ZXJhdGUgb3ZlciB0aGUgYGF0dHJfY2hlY2suaXRlbXNbXWAgYXJyYXkgdG8gZXhhbWluZQotICB0aGUgYXR0cmlidXRlIG5hbWVzIGFuZCB2YWx1ZXMuICBUaGUgbmFtZSBvZiB0aGUgYXR0cmlidXRlCi0gIGRlc2NyaWJlZCBieSBhbiBgYXR0cl9jaGVjay5pdGVtc1tdYCBvYmplY3QgY2FuIGJlIHJldHJpZXZlZCB2aWEKLSAgYGdpdF9hdHRyX25hbWUoY2hlY2stPml0ZW1zW2ldLmF0dHIpYC4gIChQbGVhc2Ugbm90ZSB0aGF0IG5vIGl0ZW1zCi0gIHdpbGwgYmUgcmV0dXJuZWQgZm9yIHVuc2V0IGF0dHJpYnV0ZXMsIHNvIGBBVFRSX1VOU0VUKClgIHdpbGwgcmV0dXJuCi0gIGZhbHNlIGZvciBhbGwgcmV0dXJuZWQgYGF0dHJfY2hlY2suaXRlbXNbXWAgb2JqZWN0cy4pCi0KLSogRnJlZSB0aGUgYGF0dHJfY2hlY2tgIHN0cnVjdCBieSBjYWxsaW5nIGBhdHRyX2NoZWNrX2ZyZWUoKWAuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktZ3JlcC50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktZ3JlcC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE2OWNjODkuLjAwMDAwMDAKLS0tIGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLWdyZXAudHh0CisrKyAvZGV2L251bGwKQEAgLTEsOCArMCwwIEBACi1ncmVwIEFQSQotPT09PT09PT0KLQotVGFsayBhYm91dCA8Z3JlcC5oPiwgdGhpbmdzIGxpa2U6Ci0KLSogZ3JlcF9idWZmZXIoKQotCi0oSkMpCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktaGlzdG9yeS1ncmFwaC50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktaGlzdG9yeS1ncmFwaC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQwZDE3MDcuLjAwMDAwMDAKLS0tIGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLWhpc3RvcnktZ3JhcGgudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTczICswLDAgQEAKLWhpc3RvcnkgZ3JhcGggQVBJCi09PT09PT09PT09PT09PT09PQotCi1UaGUgZ3JhcGggQVBJIGlzIHVzZWQgdG8gZHJhdyBhIHRleHQtYmFzZWQgcmVwcmVzZW50YXRpb24gb2YgdGhlIGNvbW1pdAotaGlzdG9yeS4gIFRoZSBBUEkgZ2VuZXJhdGVzIHRoZSBncmFwaCBpbiBhIGxpbmUtYnktbGluZSBmYXNoaW9uLgotCi1GdW5jdGlvbnMKLS0tLS0tLS0tLQotCi1Db3JlIGZ1bmN0aW9uczoKLQotKiBgZ3JhcGhfaW5pdCgpYCBjcmVhdGVzIGEgbmV3IGBzdHJ1Y3QgZ2l0X2dyYXBoYAotCi0qIGBncmFwaF91cGRhdGUoKWAgbW92ZXMgdGhlIGdyYXBoIHRvIGEgbmV3IGNvbW1pdC4KLQotKiBgZ3JhcGhfbmV4dF9saW5lKClgIG91dHB1dHMgdGhlIG5leHQgbGluZSBvZiB0aGUgZ3JhcGggaW50byBhIHN0cmJ1Zi4gIEl0Ci0gIGRvZXMgbm90IGFkZCBhIHRlcm1pbmF0aW5nIG5ld2xpbmUuCi0KLSogYGdyYXBoX3BhZGRpbmdfbGluZSgpYCBvdXRwdXRzIGEgbGluZSBvZiB2ZXJ0aWNhbCBwYWRkaW5nIGluIHRoZSBncmFwaC4gIEl0Ci0gIGlzIHNpbWlsYXIgdG8gYGdyYXBoX25leHRfbGluZSgpYCwgYnV0IGlzIGd1YXJhbnRlZWQgdG8gbmV2ZXIgcHJpbnQgdGhlIGxpbmUKLSAgY29udGFpbmluZyB0aGUgY3VycmVudCBjb21taXQuICBXaGVyZSBgZ3JhcGhfbmV4dF9saW5lKClgIHdvdWxkIHByaW50IHRoZQotICBjb21taXQgbGluZSBuZXh0LCBgZ3JhcGhfcGFkZGluZ19saW5lKClgIHByaW50cyBhIGxpbmUgdGhhdCBzaW1wbHkgZXh0ZW5kcwotICBhbGwgYnJhbmNoIGxpbmVzIGRvd253YXJkcyBvbmUgcm93LCBsZWF2aW5nIHRoZWlyIHBvc2l0aW9ucyB1bmNoYW5nZWQuCi0KLSogYGdyYXBoX2lzX2NvbW1pdF9maW5pc2hlZCgpYCBkZXRlcm1pbmVzIGlmIHRoZSBncmFwaCBoYXMgb3V0cHV0IGFsbCBsaW5lcwotICBuZWNlc3NhcnkgZm9yIHRoZSBjdXJyZW50IGNvbW1pdC4gIElmIGBncmFwaF91cGRhdGUoKWAgaXMgY2FsbGVkIGJlZm9yZSBhbGwKLSAgbGluZXMgZm9yIHRoZSBjdXJyZW50IGNvbW1pdCBoYXZlIGJlZW4gcHJpbnRlZCwgdGhlIG5leHQgY2FsbCB0bwotICBgZ3JhcGhfbmV4dF9saW5lKClgIHdpbGwgb3V0cHV0IGFuIGVsbGlwc2lzLCB0byBpbmRpY2F0ZSB0aGF0IGEgcG9ydGlvbiBvZgotICB0aGUgZ3JhcGggd2FzIG9taXR0ZWQuCi0KLVRoZSBmb2xsb3dpbmcgdXRpbGl0eSBmdW5jdGlvbnMgYXJlIHdyYXBwZXJzIGFyb3VuZCBgZ3JhcGhfbmV4dF9saW5lKClgIGFuZAotYGdyYXBoX2lzX2NvbW1pdF9maW5pc2hlZCgpYC4gIFRoZXkgYWx3YXlzIHByaW50IHRoZSBvdXRwdXQgdG8gc3Rkb3V0LgotVGhleSBjYW4gYWxsIGJlIGNhbGxlZCB3aXRoIGEgTlVMTCBncmFwaCBhcmd1bWVudCwgaW4gd2hpY2ggY2FzZSBubyBncmFwaAotb3V0cHV0IHdpbGwgYmUgcHJpbnRlZC4KLQotKiBgZ3JhcGhfc2hvd19jb21taXQoKWAgY2FsbHMgYGdyYXBoX25leHRfbGluZSgpYCBhbmQKLSAgYGdyYXBoX2lzX2NvbW1pdF9maW5pc2hlZCgpYCB1bnRpbCBvbmUgb2YgdGhlbSByZXR1cm4gbm9uLXplcm8uICBUaGlzIHByaW50cwotICBhbGwgZ3JhcGggbGluZXMgdXAgdG8sIGFuZCBpbmNsdWRpbmcsIHRoZSBsaW5lIGNvbnRhaW5pbmcgdGhpcyBjb21taXQuCi0gIE91dHB1dCBpcyBwcmludGVkIHRvIHN0ZG91dC4gIFRoZSBsYXN0IGxpbmUgcHJpbnRlZCBkb2VzIG5vdCBjb250YWluIGEKLSAgdGVybWluYXRpbmcgbmV3bGluZS4KLQotKiBgZ3JhcGhfc2hvd19vbmVsaW5lKClgIGNhbGxzIGBncmFwaF9uZXh0X2xpbmUoKWAgYW5kIHByaW50cyB0aGUgcmVzdWx0IHRvCi0gIHN0ZG91dC4gIFRoZSBsaW5lIHByaW50ZWQgZG9lcyBub3QgY29udGFpbiBhIHRlcm1pbmF0aW5nIG5ld2xpbmUuCi0KLSogYGdyYXBoX3Nob3dfcGFkZGluZygpYCBjYWxscyBgZ3JhcGhfcGFkZGluZ19saW5lKClgIGFuZCBwcmludHMgdGhlIHJlc3VsdCB0bwotICBzdGRvdXQuICBUaGUgbGluZSBwcmludGVkIGRvZXMgbm90IGNvbnRhaW4gYSB0ZXJtaW5hdGluZyBuZXdsaW5lLgotCi0qIGBncmFwaF9zaG93X3JlbWFpbmRlcigpYCBjYWxscyBgZ3JhcGhfbmV4dF9saW5lKClgIHVudGlsCi0gIGBncmFwaF9pc19jb21taXRfZmluaXNoZWQoKWAgcmV0dXJucyBub24temVyby4gIE91dHB1dCBpcyBwcmludGVkIHRvIHN0ZG91dC4KLSAgVGhlIGxhc3QgbGluZSBwcmludGVkIGRvZXMgbm90IGNvbnRhaW4gYSB0ZXJtaW5hdGluZyBuZXdsaW5lLiAgUmV0dXJucyAxIGlmCi0gIG91dHB1dCB3YXMgcHJpbnRlZCwgYW5kIDAgaWYgbm8gb3V0cHV0IHdhcyBuZWNlc3NhcnkuCi0KLSogYGdyYXBoX3Nob3dfc3RyYnVmKClgIHByaW50cyB0aGUgc3BlY2lmaWVkIHN0cmJ1ZiB0byBzdGRvdXQsIHByZWZpeGluZyBhbGwKLSAgbGluZXMgYnV0IHRoZSBmaXJzdCB3aXRoIGEgZ3JhcGggbGluZS4gIFRoZSBjYWxsZXIgaXMgcmVzcG9uc2libGUgZm9yCi0gIGVuc3VyaW5nIGdyYXBoIG91dHB1dCBmb3IgdGhlIGZpcnN0IGxpbmUgaGFzIGFscmVhZHkgYmVlbiBwcmludGVkIHRvIHN0ZG91dC4KLSAgKFRoaXMgY2FuIGJlIGRvbmUgd2l0aCBgZ3JhcGhfc2hvd19jb21taXQoKWAgb3IgYGdyYXBoX3Nob3dfb25lbGluZSgpYC4pICBJZgotICBhIE5VTEwgZ3JhcGggaXMgc3VwcGxpZWQsIHRoZSBzdHJidWYgaXMgcHJpbnRlZCBhcy1pcy4KLQotKiBgZ3JhcGhfc2hvd19jb21taXRfbXNnKClgIGlzIHNpbWlsYXIgdG8gYGdyYXBoX3Nob3dfc3RyYnVmKClgLCBidXQgaXQgYWxzbwotICBwcmludHMgdGhlIHJlbWFpbmRlciBvZiB0aGUgZ3JhcGgsIGlmIG1vcmUgbGluZXMgYXJlIG5lZWRlZCBhZnRlciB0aGUgc3RyYnVmCi0gIGVuZHMuICBJdCBpcyBiZXR0ZXIgdGhhbiBkaXJlY3RseSBjYWxsaW5nIGBncmFwaF9zaG93X3N0cmJ1ZigpYCBmb2xsb3dlZCBieQotICBgZ3JhcGhfc2hvd19yZW1haW5kZXIoKWAgc2luY2UgaXQgcHJvcGVybHkgaGFuZGxlcyBidWZmZXJzIHRoYXQgZG8gbm90IGVuZCBpbgotICBhIHRlcm1pbmF0aW5nIG5ld2xpbmUuICBUaGUgb3V0cHV0IHByaW50ZWQgYnkgYGdyYXBoX3Nob3dfY29tbWl0X21zZygpYCB3aWxsCi0gIGVuZCBpbiBhIG5ld2xpbmUgaWYgYW5kIG9ubHkgaWYgdGhlIHN0cmJ1ZiBlbmRzIGluIGEgbmV3bGluZS4KLQotRGF0YSBzdHJ1Y3R1cmUKLS0tLS0tLS0tLS0tLS0tCi1gc3RydWN0IGdpdF9ncmFwaGAgaXMgYW4gb3BhcXVlIGRhdGEgdHlwZSB1c2VkIHRvIHN0b3JlIHRoZSBjdXJyZW50IGdyYXBoCi1zdGF0ZS4KLQotQ2FsbGluZyBzZXF1ZW5jZQotLS0tLS0tLS0tLS0tLS0tLQotCi0qIENyZWF0ZSBhIGBzdHJ1Y3QgZ2l0X2dyYXBoYCBieSBjYWxsaW5nIGBncmFwaF9pbml0KClgLiAgV2hlbiB1c2luZyB0aGUKLSAgcmV2aXNpb24gd2Fsa2luZyBBUEksIHRoaXMgaXMgZG9uZSBhdXRvbWF0aWNhbGx5IGJ5IGBzZXR1cF9yZXZpc2lvbnMoKWAgaWYKLSAgdGhlICctLWdyYXBoJyBvcHRpb24gaXMgc3VwcGxpZWQuCi0KLSogVXNlIHRoZSByZXZpc2lvbiB3YWxraW5nIEFQSSB0byB3YWxrIHRocm91Z2ggYSBncm91cCBvZiBjb250aWd1b3VzIGNvbW1pdHMuCi0gIFRoZSBgZ2V0X3JldmlzaW9uKClgIGZ1bmN0aW9uIGF1dG9tYXRpY2FsbHkgY2FsbHMgYGdyYXBoX3VwZGF0ZSgpYCBlYWNoIHRpbWUKLSAgaXQgaXMgaW52b2tlZC4KLQotKiBGb3IgZWFjaCBjb21taXQsIGNhbGwgYGdyYXBoX25leHRfbGluZSgpYCByZXBlYXRlZGx5LCB1bnRpbAotICBgZ3JhcGhfaXNfY29tbWl0X2ZpbmlzaGVkKClgIHJldHVybnMgbm9uLXplcm8uICBFYWNoIGNhbGwgdG8KLSAgYGdyYXBoX25leHRfbGluZSgpYCB3aWxsIG91dHB1dCBhIHNpbmdsZSBsaW5lIG9mIHRoZSBncmFwaC4gIFRoZSByZXN1bHRpbmcKLSAgbGluZXMgd2lsbCBub3QgY29udGFpbiBhbnkgbmV3bGluZXMuICBgZ3JhcGhfbmV4dF9saW5lKClgIHJldHVybnMgMSBpZiB0aGUKLSAgcmVzdWx0aW5nIGxpbmUgY29udGFpbnMgdGhlIGN1cnJlbnQgY29tbWl0LCBvciAwIGlmIHRoaXMgaXMgbWVyZWx5IGEgbGluZQotICBuZWVkZWQgdG8gYWRqdXN0IHRoZSBncmFwaCBiZWZvcmUgb3IgYWZ0ZXIgdGhlIGN1cnJlbnQgY29tbWl0LiAgVGhpcyByZXR1cm4KLSAgdmFsdWUgY2FuIGJlIHVzZWQgdG8gZGV0ZXJtaW5lIHdoZXJlIHRvIHByaW50IHRoZSBjb21taXQgc3VtbWFyeSBpbmZvcm1hdGlvbgotICBhbG9uZ3NpZGUgdGhlIGdyYXBoIG91dHB1dC4KLQotTGltaXRhdGlvbnMKLS0tLS0tLS0tLS0tCi0KLSogYGdyYXBoX3VwZGF0ZSgpYCBtdXN0IGJlIGNhbGxlZCB3aXRoIGNvbW1pdHMgaW4gdG9wb2xvZ2ljYWwgb3JkZXIuICBJdCBzaG91bGQKLSAgbm90IGJlIGNhbGxlZCBvbiBhIGNvbW1pdCBpZiBpdCBoYXMgYWxyZWFkeSBiZWVuIGludm9rZWQgd2l0aCBhbiBhbmNlc3RvciBvZgotICB0aGF0IGNvbW1pdCwgb3IgdGhlIGdyYXBoIG91dHB1dCB3aWxsIGJlIGluY29ycmVjdC4KLQotKiBgZ3JhcGhfdXBkYXRlKClgIG11c3QgYmUgY2FsbGVkIG9uIGEgY29udGlndW91cyBncm91cCBvZiBjb21taXRzLiAgSWYKLSAgYGdyYXBoX3VwZGF0ZSgpYCBpcyBjYWxsZWQgb24gYSBwYXJ0aWN1bGFyIGNvbW1pdCwgaXQgc2hvdWxkIGxhdGVyIGJlIGNhbGxlZAotICBvbiBhbGwgcGFyZW50cyBvZiB0aGF0IGNvbW1pdC4gIFBhcmVudHMgbXVzdCBub3QgYmUgc2tpcHBlZCwgb3IgdGhlIGdyYXBoCi0gIG91dHB1dCB3aWxsIGFwcGVhciBpbmNvcnJlY3QuCi0rCi1gZ3JhcGhfdXBkYXRlKClgIG1heSBiZSB1c2VkIG9uIGEgcHJ1bmVkIHNldCBvZiBjb21taXRzIG9ubHkgaWYgdGhlIHBhcmVudCBsaXN0Ci1oYXMgYmVlbiByZXdyaXR0ZW4gc28gYXMgdG8gaW5jbHVkZSBvbmx5IGFuY2VzdG9ycyBmcm9tIHRoZSBwcnVuZWQgc2V0LgotCi0qIFRoZSBncmFwaCBBUEkgZG9lcyBub3QgY3VycmVudGx5IHN1cHBvcnQgcmV2ZXJzZSBjb21taXQgb3JkZXJpbmcuICBJbgotICBvcmRlciB0byBpbXBsZW1lbnQgcmV2ZXJzZSBvcmRlcmluZywgdGhlIGdyYXBoaW5nIEFQSSBuZWVkcyBhbgotICAoZWZmaWNpZW50KSBtZWNoYW5pc20gdG8gZmluZCB0aGUgY2hpbGRyZW4gb2YgYSBjb21taXQuCi0KLVNhbXBsZSB1c2FnZQotLS0tLS0tLS0tLS0tCi0KLS0tLS0tLS0tLS0tLQotc3RydWN0IGNvbW1pdCAqY29tbWl0Owotc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGggPSBncmFwaF9pbml0KG9wdHMpOwotCi13aGlsZSAoKGNvbW1pdCA9IGdldF9yZXZpc2lvbihvcHRzKSkgIT0gTlVMTCkgewotCXdoaWxlICghZ3JhcGhfaXNfY29tbWl0X2ZpbmlzaGVkKGdyYXBoKSkKLQl7Ci0JCXN0cnVjdCBzdHJidWYgc2I7Ci0JCWludCBpc19jb21taXRfbGluZTsKLQotCQlzdHJidWZfaW5pdCgmc2IsIDApOwotCQlpc19jb21taXRfbGluZSA9IGdyYXBoX25leHRfbGluZShncmFwaCwgJnNiKTsKLQkJZnB1dHMoc2IuYnVmLCBzdGRvdXQpOwotCi0JCWlmIChpc19jb21taXRfbGluZSkKLQkJCWxvZ190cmVlX2NvbW1pdChvcHRzLCBjb21taXQpOwotCQllbHNlCi0JCQlwdXRjaGFyKG9wdHMtPmRpZmZvcHQubGluZV90ZXJtaW5hdGlvbik7Ci0JfQotfQotLS0tLS0tLS0tLS0tCi0KLVNhbXBsZSBvdXRwdXQKLS0tLS0tLS0tLS0tLS0KLQotVGhlIGZvbGxvd2luZyBpcyBhbiBleGFtcGxlIG9mIHRoZSBvdXRwdXQgZnJvbSB0aGUgZ3JhcGggQVBJLiAgVGhpcyBvdXRwdXQgZG9lcwotbm90IGluY2x1ZGUgYW55IGNvbW1pdCBzdW1tYXJ5IGluZm9ybWF0aW9uLS1jYWxsZXJzIGFyZSByZXNwb25zaWJsZSBmb3IKLW91dHB1dHRpbmcgdGhhdCBpbmZvcm1hdGlvbiwgaWYgZGVzaXJlZC4KLQotLS0tLS0tLS0tLS0tCi0qCi0qCi0qCi18XAotKiB8Ci18IHwgKgotfCBcIFwKLXwgIFwgXAotKi0uIFwgXAotfFwgXCBcIFwKLXwgfCAqIHwgfAotfCB8IHwgfCB8ICoKLXwgfCB8IHwgfCAqCi18IHwgfCB8IHwgKgotfCB8IHwgfCB8IHxcCi18IHwgfCB8IHwgfCAqCi18ICogfCB8IHwgfCB8Ci18IHwgfCB8IHwgKiAgXAotfCB8IHwgfCB8IHxcICB8Ci18IHwgfCB8ICogfCB8IHwKLXwgfCB8IHwgKiB8IHwgfAotKiB8IHwgfCB8IHwgfCB8Ci18IHwvIC8gLyAvIC8gLwotfC98IC8gLyAvIC8gLwotKiB8IHwgfCB8IHwgfAotfC8gLyAvIC8gLyAvCi0qIHwgfCB8IHwgfAotfCB8IHwgfCB8ICoKLXwgfCB8IHwgfC8KLXwgfCB8IHwgKgotLS0tLS0tLS0tLS0tCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktbWVyZ2UudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLW1lcmdlLnR4dAppbmRleCA5ZGMxYmVkLi40ODdkNGQ4IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktbWVyZ2UudHh0CisrKyBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1tZXJnZS50eHQKQEAgLTI4LDc3ICsyOCw5IEBACiAKICogYHN0cnVjdCBsbF9tZXJnZV9vcHRpb25zYAogCi1UaGlzIGRlc2NyaWJlcyB0aGUgc2V0IG9mIG9wdGlvbnMgdGhlIGNhbGxpbmcgcHJvZ3JhbSB3YW50cyB0byBhZmZlY3QKLXRoZSBvcGVyYXRpb24gb2YgYSBsb3ctbGV2ZWwgKHNpbmdsZSBmaWxlKSBtZXJnZS4gIFNvbWUgb3B0aW9uczoKLQotYHZpcnR1YWxfYW5jZXN0b3JgOjoKLQlCZWhhdmUgYXMgdGhvdWdoIHRoaXMgd2VyZSBwYXJ0IG9mIGEgbWVyZ2UgYmV0d2VlbiBjb21tb24KLQlhbmNlc3RvcnMgaW4gYSByZWN1cnNpdmUgbWVyZ2UuCi0JSWYgYSBoZWxwZXIgcHJvZ3JhbSBpcyBzcGVjaWZpZWQgYnkgdGhlCi0JYFttZXJnZSAiPGRyaXZlcj4iXSByZWN1cnNpdmVgIGNvbmZpZ3VyYXRpb24sIGl0IHdpbGwKLQliZSB1c2VkIChzZWUgbGlua2dpdDpnaXRhdHRyaWJ1dGVzWzVdKS4KLQotYHZhcmlhbnRgOjoKLQlSZXNvbHZlIGxvY2FsIGNvbmZsaWN0cyBhdXRvbWF0aWNhbGx5IGluIGZhdm9yCi0Jb2Ygb25lIHNpZGUgb3IgdGhlIG90aGVyIChhcyBpbiAnZ2l0IG1lcmdlLWZpbGUnCi0JYC0tb3Vyc2AvYC0tdGhlaXJzYC9gLS11bmlvbmApLiAgQ2FuIGJlIGAwYCwKLQlgWERMX01FUkdFX0ZBVk9SX09VUlNgLCBgWERMX01FUkdFX0ZBVk9SX1RIRUlSU2AsIG9yCi0JYFhETF9NRVJHRV9GQVZPUl9VTklPTmAuCi0KLWByZW5vcm1hbGl6ZWA6OgotCVJlc211ZGdlIGFuZCBjbGVhbiB0aGUgImJhc2UiLCAidGhlaXJzIiBhbmQgIm91cnMiIGZpbGVzCi0JYmVmb3JlIG1lcmdpbmcuICBVc2UgdGhpcyB3aGVuIHRoZSBtZXJnZSBpcyBsaWtlbHkgdG8gaGF2ZQotCW92ZXJsYXBwZWQgd2l0aCBhIGNoYW5nZSBpbiBzbXVkZ2UvY2xlYW4gb3IgZW5kLW9mLWxpbmUKLQlub3JtYWxpemF0aW9uIHJ1bGVzLgorQ2hlY2sgbGwtbWVyZ2UuaCBmb3IgZGV0YWlscy4KIAogTG93LWxldmVsIChzaW5nbGUgZmlsZSkgbWVyZ2UKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWBsbF9tZXJnZWA6OgotCi0JUGVyZm9ybSBhIHRocmVlLXdheSBzaW5nbGUtZmlsZSBtZXJnZSBpbiBjb3JlLiAgVGhpcyBpcwotCWEgdGhpbiB3cmFwcGVyIGFyb3VuZCBgeGRsX21lcmdlYCB0aGF0IHRha2VzIHRoZSBwYXRoIGFuZAotCWFueSBtZXJnZSBiYWNrZW5kIHNwZWNpZmllZCBpbiBgLmdpdGF0dHJpYnV0ZXNgIG9yCi0JYC5naXQvaW5mby9hdHRyaWJ1dGVzYCBpbnRvIGFjY291bnQuICBSZXR1cm5zIDAgZm9yIGEKLQljbGVhbiBtZXJnZS4KLQotQ2FsbGluZyBzZXF1ZW5jZToKLQotKiBQcmVwYXJlIGEgYHN0cnVjdCBsbF9tZXJnZV9vcHRpb25zYCB0byByZWNvcmQgb3B0aW9ucy4KLSAgSWYgeW91IGhhdmUgbm8gc3BlY2lhbCByZXF1ZXN0cywgc2tpcCB0aGlzIGFuZCBwYXNzIGBOVUxMYAotICBhcyB0aGUgYG9wdHNgIHBhcmFtZXRlciB0byB1c2UgdGhlIGRlZmF1bHQgb3B0aW9ucy4KLQotKiBBbGxvY2F0ZSBhbiBtbWJ1ZmZlcl90IHZhcmlhYmxlIGZvciB0aGUgcmVzdWx0LgotCi0qIEFsbG9jYXRlIGFuZCBmaWxsIHZhcmlhYmxlcyB3aXRoIHRoZSBmaWxlJ3Mgb3JpZ2luYWwgY29udGVudAotICBhbmQgdHdvIG1vZGlmaWVkIHZlcnNpb25zICh1c2luZyBgcmVhZF9tbWZpbGVgLCBmb3IgZXhhbXBsZSkuCi0KLSogQ2FsbCBgbGxfbWVyZ2UoKWAuCi0KLSogUmVhZCB0aGUgbWVyZ2VkIGNvbnRlbnQgZnJvbSBgcmVzdWx0X2J1Zi5wdHJgIGFuZCBgcmVzdWx0X2J1Zi5zaXplYC4KLQotKiBSZWxlYXNlIGJ1ZmZlcnMgd2hlbiBmaW5pc2hlZC4gIEEgc2ltcGxlCi0gIGBmcmVlKGFuY2VzdG9yLnB0cik7IGZyZWUob3Vycy5wdHIpOyBmcmVlKHRoZWlycy5wdHIpOwotICBmcmVlKHJlc3VsdF9idWYucHRyKTtgIHdpbGwgZG8uCi0KLUlmIHRoZSBtb2RpZmljYXRpb25zIGRvIG5vdCBtZXJnZSBjbGVhbmx5LCBgbGxfbWVyZ2VgIHdpbGwgcmV0dXJuIGEKLW5vbnplcm8gdmFsdWUgYW5kIGByZXN1bHRfYnVmYCB3aWxsIGdlbmVyYWxseSBpbmNsdWRlIGEgZGVzY3JpcHRpb24gb2YKLXRoZSBjb25mbGljdCBicmFja2V0ZWQgYnkgbWFya2VycyBzdWNoIGFzIHRoZSB0cmFkaXRpb25hbCBgPDw8PDw8PGAKLWFuZCBgPj4+Pj4+PmAuCi0KLVRoZSBgYW5jZXN0b3JfbGFiZWxgLCBgb3VyX2xhYmVsYCwgYW5kIGB0aGVpcl9sYWJlbGAgcGFyYW1ldGVycyBhcmUKLXVzZWQgdG8gbGFiZWwgdGhlIGRpZmZlcmVudCBzaWRlcyBvZiBhIGNvbmZsaWN0IGlmIHRoZSBtZXJnZSBkcml2ZXIKLXN1cHBvcnRzIHRoaXMuCi0KLUV2ZXJ5dGhpbmcgZWxzZQotLS0tLS0tLS0tLS0tLS0tCi0KLVRhbGsgYWJvdXQgPG1lcmdlLXJlY3Vyc2l2ZS5oPiBhbmQgbWVyZ2VfZmlsZSgpOgotCi0gLSBtZXJnZV90cmVlcygpIHRvIG1lcmdlIHdpdGggcmVuYW1lIGRldGVjdGlvbgotIC0gbWVyZ2VfcmVjdXJzaXZlKCkgZm9yIGFuY2VzdG9yIGNvbnNvbGlkYXRpb24KLSAtIHRyeV9tZXJnZV9jb21tYW5kKCkgZm9yIG90aGVyIHN0cmF0ZWdpZXMKLSAtIGNvbmZsaWN0IGZvcm1hdAotIC0gbWVyZ2Ugb3B0aW9ucwotCi0oRGFuaWVsLCBNaWtsb3MsIFN0ZXBoYW4sIEpDKQorQ2hlY2sgbGwtbWVyZ2UuaCBmb3IgZGV0YWlscy4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1vYmplY3QtYWNjZXNzLnR4dCBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1vYmplY3QtYWNjZXNzLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWIyOTYyMi4uMDAwMDAwMAotLS0gYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktb2JqZWN0LWFjY2Vzcy50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi1vYmplY3QgYWNjZXNzIEFQSQotPT09PT09PT09PT09PT09PT0KLQotVGFsayBhYm91dCA8c2hhMS1maWxlLmM+IGFuZCA8b2JqZWN0Lmg+IGZhbWlseSwgdGhpbmdzIGxpa2UKLQotKiByZWFkX3NoYTFfZmlsZSgpCi0qIHJlYWRfb2JqZWN0X3dpdGhfcmVmZXJlbmNlKCkKLSogaGFzX3NoYTFfZmlsZSgpCi0qIHdyaXRlX3NoYTFfZmlsZSgpCi0qIHByZXRlbmRfb2JqZWN0X2ZpbGUoKQotKiBsb29rdXBfe29iamVjdCxjb21taXQsdGFnLGJsb2IsdHJlZX0KLSogcGFyc2Vfe29iamVjdCxjb21taXQsdGFnLGJsb2IsdHJlZX0KLSogVXNlIG9mIG9iamVjdCBmbGFncwotCi0oSkMsIFNoYXduLCBEYW5pZWwsIERzY2hvLCBMaW51cykKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1vaWQtYXJyYXkudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLW9pZC1hcnJheS50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlmZWJmYjEuLjAwMDAwMDAKLS0tIGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLW9pZC1hcnJheS50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw4NSArMCwwIEBACi1vaWQtYXJyYXkgQVBJCi09PT09PT09PT09PT09PQotCi1UaGUgb2lkLWFycmF5IEFQSSBwcm92aWRlcyBzdG9yYWdlIGFuZCBtYW5pcHVsYXRpb24gb2Ygc2V0cyBvZiBvYmplY3QKLWlkZW50aWZpZXJzLiBUaGUgZW1waGFzaXMgaXMgb24gc3RvcmFnZSBhbmQgcHJvY2Vzc2luZyBlZmZpY2llbmN5LAotbWFraW5nIHRoZW0gc3VpdGFibGUgZm9yIGxhcmdlIGxpc3RzLiBOb3RlIHRoYXQgdGhlIG9yZGVyaW5nIG9mIGl0ZW1zIGlzCi1ub3QgcHJlc2VydmVkIG92ZXIgc29tZSBvcGVyYXRpb25zLgotCi1EYXRhIFN0cnVjdHVyZXMKLS0tLS0tLS0tLS0tLS0tLQotCi1gc3RydWN0IG9pZF9hcnJheWA6OgotCi0JQSBzaW5nbGUgYXJyYXkgb2Ygb2JqZWN0IElEcy4gVGhpcyBzaG91bGQgYmUgaW5pdGlhbGl6ZWQgYnkKLQlhc3NpZ25tZW50IGZyb20gYE9JRF9BUlJBWV9JTklUYC4gIFRoZSBgb2lkYCBtZW1iZXIgY29udGFpbnMKLQl0aGUgYWN0dWFsIGRhdGEuIFRoZSBgbnJgIG1lbWJlciBjb250YWlucyB0aGUgbnVtYmVyIG9mIGl0ZW1zIGluCi0JdGhlIHNldC4gIFRoZSBgYWxsb2NgIGFuZCBgc29ydGVkYCBtZW1iZXJzIGFyZSB1c2VkIGludGVybmFsbHksCi0JYW5kIHNob3VsZCBub3QgYmUgbmVlZGVkIGJ5IEFQSSBjYWxsZXJzLgotCi1GdW5jdGlvbnMKLS0tLS0tLS0tLQotCi1gb2lkX2FycmF5X2FwcGVuZGA6OgotCUFkZCBhbiBpdGVtIHRvIHRoZSBzZXQuIFRoZSBvYmplY3QgSUQgd2lsbCBiZSBwbGFjZWQgYXQgdGhlIGVuZCBvZgotCXRoZSBhcnJheSAoYnV0IG5vdGUgdGhhdCBzb21lIG9wZXJhdGlvbnMgYmVsb3cgbWF5IGxvc2UgdGhpcwotCW9yZGVyaW5nKS4KLQotYG9pZF9hcnJheV9sb29rdXBgOjoKLQlQZXJmb3JtIGEgYmluYXJ5IHNlYXJjaCBvZiB0aGUgYXJyYXkgZm9yIGEgc3BlY2lmaWMgb2JqZWN0IElELgotCUlmIGZvdW5kLCByZXR1cm5zIHRoZSBvZmZzZXQgKGluIG51bWJlciBvZiBlbGVtZW50cykgb2YgdGhlCi0Jb2JqZWN0IElELiBJZiBub3QgZm91bmQsIHJldHVybnMgYSBuZWdhdGl2ZSBpbnRlZ2VyLiBJZiB0aGUgYXJyYXkKLQlpcyBub3Qgc29ydGVkLCB0aGlzIGZ1bmN0aW9uIGhhcyB0aGUgc2lkZSBlZmZlY3Qgb2Ygc29ydGluZyBpdC4KLQotYG9pZF9hcnJheV9jbGVhcmA6OgotCUZyZWUgYWxsIG1lbW9yeSBhc3NvY2lhdGVkIHdpdGggdGhlIGFycmF5IGFuZCByZXR1cm4gaXQgdG8gdGhlCi0JaW5pdGlhbCwgZW1wdHkgc3RhdGUuCi0KLWBvaWRfYXJyYXlfZm9yX2VhY2hgOjoKLQlJdGVyYXRlIG92ZXIgZWFjaCBlbGVtZW50IG9mIHRoZSBsaXN0LCBleGVjdXRpbmcgdGhlIGNhbGxiYWNrCi0JZnVuY3Rpb24gZm9yIGVhY2ggb25lLiBEb2VzIG5vdCBzb3J0IHRoZSBsaXN0LCBzbyBhbnkgY3VzdG9tCi0JaGFzaCBvcmRlciBpcyByZXRhaW5lZC4gSWYgdGhlIGNhbGxiYWNrIHJldHVybnMgYSBub24temVybwotCXZhbHVlLCB0aGUgaXRlcmF0aW9uIGVuZHMgaW1tZWRpYXRlbHkgYW5kIHRoZSBjYWxsYmFjaydzCi0JcmV0dXJuIGlzIHByb3BhZ2F0ZWQ7IG90aGVyd2lzZSwgMCBpcyByZXR1cm5lZC4KLQotYG9pZF9hcnJheV9mb3JfZWFjaF91bmlxdWVgOjoKLQlJdGVyYXRlIG92ZXIgZWFjaCB1bmlxdWUgZWxlbWVudCBvZiB0aGUgbGlzdCBpbiBzb3J0ZWQgb3JkZXIsCi0JYnV0IG90aGVyd2lzZSBiZWhhdmUgbGlrZSBgb2lkX2FycmF5X2Zvcl9lYWNoYC4gSWYgdGhlIGFycmF5Ci0JaXMgbm90IHNvcnRlZCwgdGhpcyBmdW5jdGlvbiBoYXMgdGhlIHNpZGUgZWZmZWN0IG9mIHNvcnRpbmcKLQlpdC4KLQotRXhhbXBsZXMKLS0tLS0tLS0tCi0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1pbnQgcHJpbnRfY2FsbGJhY2soY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAotCQkgICAgdm9pZCAqZGF0YSkKLXsKLQlwcmludGYoIiVzXG4iLCBvaWRfdG9faGV4KG9pZCkpOwotCXJldHVybiAwOyAvKiBhbHdheXMgY29udGludWUgKi8KLX0KLQotdm9pZCBzb21lX2Z1bmModm9pZCkKLXsKLQlzdHJ1Y3Qgc2hhMV9hcnJheSBoYXNoZXMgPSBPSURfQVJSQVlfSU5JVDsKLQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKLQotCS8qIFJlYWQgb2JqZWN0cyBpbnRvIG91ciBzZXQgKi8KLQl3aGlsZSAocmVhZF9vYmplY3RfZnJvbV9zdGRpbihvaWQuaGFzaCkpCi0JCW9pZF9hcnJheV9hcHBlbmQoJmhhc2hlcywgJm9pZCk7Ci0KLQkvKiBDaGVjayBpZiBzb21lIG9iamVjdHMgYXJlIGluIG91ciBzZXQgKi8KLQl3aGlsZSAocmVhZF9vYmplY3RfZnJvbV9zdGRpbihvaWQuaGFzaCkpIHsKLQkJaWYgKG9pZF9hcnJheV9sb29rdXAoJmhhc2hlcywgJm9pZCkgPj0gMCkKLQkJCXByaW50ZigiaXQncyBpbiB0aGVyZSFcbiIpOwotCi0JLyoKLQkgKiBQcmludCB0aGUgdW5pcXVlIHNldCBvZiBvYmplY3RzLiBXZSBjb3VsZCBhbHNvIGhhdmUKLQkgKiBhdm9pZGVkIGFkZGluZyBkdXBsaWNhdGUgb2JqZWN0cyBpbiB0aGUgZmlyc3QgcGxhY2UsCi0JICogYnV0IHdlIHdvdWxkIGVuZCB1cCByZS1zb3J0aW5nIHRoZSBhcnJheSByZXBlYXRlZGx5LgotCSAqIEluc3RlYWQsIHRoaXMgd2lsbCBzb3J0IG9uY2UgYW5kIHRoZW4gc2tpcCBkdXBsaWNhdGVzCi0JICogaW4gbGluZWFyIHRpbWUuCi0JICovCi0Jb2lkX2FycmF5X2Zvcl9lYWNoX3VuaXF1ZSgmaGFzaGVzLCBwcmludF9jYWxsYmFjaywgTlVMTCk7Ci19Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXBhcnNlLW9wdGlvbnMudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXBhcnNlLW9wdGlvbnMudHh0CmluZGV4IDJiMDM2ZDcuLjJlMmU3YzEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1wYXJzZS1vcHRpb25zLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktcGFyc2Utb3B0aW9ucy50eHQKQEAgLTE5OCw4ICsxOTgsMTAgQEAKIAlUaGUgZmlsZW5hbWUgd2lsbCBiZSBwcmVmaXhlZCBieSBwYXNzaW5nIHRoZSBmaWxlbmFtZSBhbG9uZyB3aXRoCiAJdGhlIHByZWZpeCBhcmd1bWVudCBvZiBgcGFyc2Vfb3B0aW9ucygpYCB0byBgcHJlZml4X2ZpbGVuYW1lKClgLgogCi1gT1BUX0FSR1VNRU5UKGxvbmcsIGRlc2NyaXB0aW9uKWA6OgorYE9QVF9BUkdVTUVOVChsb25nLCAmaW50X3ZhciwgZGVzY3JpcHRpb24pYDo6CiAJSW50cm9kdWNlIGEgbG9uZy1vcHRpb24gYXJndW1lbnQgdGhhdCB3aWxsIGJlIGtlcHQgaW4gYGFyZ3ZbXWAuCisJSWYgdGhpcyBvcHRpb24gd2FzIHNlZW4sIGBpbnRfdmFyYCB3aWxsIGJlIHNldCB0byBvbmUgKGV4Y2VwdAorCWlmIGEgYE5VTExgIHBvaW50ZXIgd2FzIHBhc3NlZCkuCiAKIGBPUFRfTlVNQkVSX0NBTExCQUNLKCZ2YXIsIGRlc2NyaXB0aW9uLCBmdW5jX3B0cilgOjoKIAlSZWNvZ25pemUgbnVtZXJpY2FsIG9wdGlvbnMgbGlrZSAtMTIzIGFuZCBmZWVkIHRoZSBpbnRlZ2VyIGFzCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktcXVvdGUudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXF1b3RlLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZThhMWJjZS4uMDAwMDAwMAotLS0gYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktcXVvdGUudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTAgKzAsMCBAQAotcXVvdGUgQVBJCi09PT09PT09PT0KLQotVGFsayBhYm91dCA8cXVvdGUuaD4sIHRoaW5ncyBsaWtlCi0KLSogc3FfcXVvdGUgYW5kIHVucXVvdGUKLSogY19zdHlsZSBxdW90ZSBhbmQgdW5xdW90ZQotKiBxdW90aW5nIGZvciBmb3JlaWduIGxhbmd1YWdlcwotCi0oSkMpCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktcmVmLWl0ZXJhdGlvbi50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktcmVmLWl0ZXJhdGlvbi50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQ2YzNkNWMuLjAwMDAwMDAKLS0tIGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXJlZi1pdGVyYXRpb24udHh0CisrKyAvZGV2L251bGwKQEAgLTEsNzggKzAsMCBAQAotcmVmIGl0ZXJhdGlvbiBBUEkKLT09PT09PT09PT09PT09PT09Ci0KLQotSXRlcmF0aW9uIG9mIHJlZnMgaXMgZG9uZSBieSB1c2luZyBhbiBpdGVyYXRlIGZ1bmN0aW9uIHdoaWNoIHdpbGwgY2FsbCBhCi1jYWxsYmFjayBmdW5jdGlvbiBmb3IgZXZlcnkgcmVmLiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gaGFzIHRoaXMKLXNpZ25hdHVyZToKLQotCWludCBoYW5kbGVfb25lX3JlZihjb25zdCBjaGFyICpyZWZuYW1lLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCi0JCQkgICBpbnQgZmxhZ3MsIHZvaWQgKmNiX2RhdGEpOwotCi1UaGVyZSBhcmUgZGlmZmVyZW50IGtpbmRzIG9mIGl0ZXJhdGUgZnVuY3Rpb25zIHdoaWNoIGFsbCB0YWtlIGEKLWNhbGxiYWNrIG9mIHRoaXMgdHlwZS4gVGhlIGNhbGxiYWNrIGlzIHRoZW4gY2FsbGVkIGZvciBlYWNoIGZvdW5kIHJlZgotdW50aWwgdGhlIGNhbGxiYWNrIHJldHVybnMgbm9uemVyby4gVGhlIHJldHVybmVkIHZhbHVlIGlzIHRoZW4gYWxzbwotcmV0dXJuZWQgYnkgdGhlIGl0ZXJhdGUgZnVuY3Rpb24uCi0KLUl0ZXJhdGlvbiBmdW5jdGlvbnMKLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotKiBgaGVhZF9yZWYoKWAganVzdCBpdGVyYXRlcyB0aGUgaGVhZCByZWYuCi0KLSogYGZvcl9lYWNoX3JlZigpYCBpdGVyYXRlcyBhbGwgcmVmcy4KLQotKiBgZm9yX2VhY2hfcmVmX2luKClgIGl0ZXJhdGVzIGFsbCByZWZzIHdoaWNoIGhhdmUgYSBkZWZpbmVkIHByZWZpeCBhbmQKLSAgc3RyaXBzIHRoYXQgcHJlZml4IGZyb20gdGhlIHBhc3NlZCB2YXJpYWJsZSByZWZuYW1lLgotCi0qIGBmb3JfZWFjaF90YWdfcmVmKClgLCBgZm9yX2VhY2hfYnJhbmNoX3JlZigpYCwgYGZvcl9lYWNoX3JlbW90ZV9yZWYoKWAsCi0gIGBmb3JfZWFjaF9yZXBsYWNlX3JlZigpYCBpdGVyYXRlIHJlZnMgZnJvbSB0aGUgcmVzcGVjdGl2ZSBhcmVhLgotCi0qIGBmb3JfZWFjaF9nbG9iX3JlZigpYCBpdGVyYXRlcyBhbGwgcmVmcyB0aGF0IG1hdGNoIHRoZSBzcGVjaWZpZWQgZ2xvYgotICBwYXR0ZXJuLgotCi0qIGBmb3JfZWFjaF9nbG9iX3JlZl9pbigpYCB0aGUgcHJldmlvdXMgYW5kIGBmb3JfZWFjaF9yZWZfaW4oKWAgY29tYmluZWQuCi0KLSogVXNlIGByZWZzX2AgQVBJIGZvciBhY2Nlc3Npbmcgc3VibW9kdWxlcy4gVGhlIHN1Ym1vZHVsZSByZWYgc3RvcmUgY291bGQKLSAgYmUgb2J0YWluZWQgd2l0aCBgZ2V0X3N1Ym1vZHVsZV9yZWZfc3RvcmUoKWAuCi0KLSogYGZvcl9lYWNoX3Jhd3JlZigpYCBjYW4gYmUgdXNlZCB0byBsZWFybiBhYm91dCBicm9rZW4gcmVmIGFuZCBzeW1yZWYuCi0KLSogYGZvcl9lYWNoX3JlZmxvZygpYCBpdGVyYXRlcyBlYWNoIHJlZmxvZyBmaWxlLgotCi1TdWJtb2R1bGVzCi0tLS0tLS0tLS0tCi0KLUlmIHlvdSB3YW50IHRvIGl0ZXJhdGUgdGhlIHJlZnMgb2YgYSBzdWJtb2R1bGUgeW91IGZpcnN0IG5lZWQgdG8gYWRkIHRoZQotc3VibW9kdWxlcyBvYmplY3QgZGF0YWJhc2UuIFlvdSBjYW4gZG8gdGhpcyBieSBhIGNvZGUtc25pcHBldCBsaWtlCi10aGlzOgotCi0JY29uc3QgY2hhciAqcGF0aCA9ICJwYXRoL3RvL3N1Ym1vZHVsZSIKLQlpZiAoYWRkX3N1Ym1vZHVsZV9vZGIocGF0aCkpCi0JCWRpZSgiRXJyb3Igc3VibW9kdWxlICclcycgbm90IHBvcHVsYXRlZC4iLCBwYXRoKTsKLQotYGFkZF9zdWJtb2R1bGVfb2RiKClgIHdpbGwgcmV0dXJuIHplcm8gb24gc3VjY2Vzcy4gSWYgeW91Ci1kbyBub3QgZG8gdGhpcyB5b3Ugd2lsbCBnZXQgYW4gZXJyb3IgZm9yIGVhY2ggcmVmIHRoYXQgaXQgZG9lcyBub3QgcG9pbnQKLXRvIGEgdmFsaWQgb2JqZWN0LgotCi1Ob3RlOiBBcyBhIHNpZGUtZWZmZWN0IG9mIHRoaXMgeW91IGNhbiBub3Qgc2FmZWx5IGFzc3VtZSB0aGF0IGFsbAotb2JqZWN0cyB5b3UgbG9va3VwIGFyZSBhdmFpbGFibGUgaW4gc3VwZXJwcm9qZWN0LiBBbGwgc3VibW9kdWxlIG9iamVjdHMKLXdpbGwgYmUgYXZhaWxhYmxlIHRoZSBzYW1lIHdheSBhcyB0aGUgc3VwZXJwcm9qZWN0cyBvYmplY3RzLgotCi1FeGFtcGxlOgotLS0tLS0tLS0KLQotLS0tLQotc3RhdGljIGludCBoYW5kbGVfcmVtb3RlX3JlZihjb25zdCBjaGFyICpyZWZuYW1lLAotCQljb25zdCB1bnNpZ25lZCBjaGFyICpzaGExLCBpbnQgZmxhZ3MsIHZvaWQgKmNiX2RhdGEpCi17Ci0Jc3RydWN0IHN0cmJ1ZiAqb3V0cHV0ID0gY2JfZGF0YTsKLQlzdHJidWZfYWRkZihvdXRwdXQsICIlc1xuIiwgcmVmbmFtZSk7Ci0JcmV0dXJuIDA7Ci19Ci0KLS4uLgotCi0Jc3RydWN0IHN0cmJ1ZiBvdXRwdXQgPSBTVFJCVUZfSU5JVDsKLQlmb3JfZWFjaF9yZW1vdGVfcmVmKGhhbmRsZV9yZW1vdGVfcmVmLCAmb3V0cHV0KTsKLQlwcmludGYoIiVzIiwgb3V0cHV0LmJ1Zik7Ci0tLS0tCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktcmVtb3RlLnR4dCBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1yZW1vdGUudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMTA5NDFiLi4wMDAwMDAwCi0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1yZW1vdGUudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTI3ICswLDAgQEAKLVJlbW90ZXMgY29uZmlndXJhdGlvbiBBUEkKLT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotVGhlIEFQSSBpbiByZW1vdGUuaCBnaXZlcyBhY2Nlc3MgdG8gdGhlIGNvbmZpZ3VyYXRpb24gcmVsYXRlZCB0bwotcmVtb3Rlcy4gSXQgaGFuZGxlcyBhbGwgdGhyZWUgY29uZmlndXJhdGlvbiBtZWNoYW5pc21zIGhpc3RvcmljYWxseQotYW5kIGN1cnJlbnRseSB1c2VkIGJ5IEdpdCwgYW5kIHByZXNlbnRzIHRoZSBpbmZvcm1hdGlvbiBpbiBhIHVuaWZvcm0KLWZhc2hpb24uIE5vdGUgdGhhdCB0aGUgY29kZSBhbHNvIGhhbmRsZXMgcGxhaW4gVVJMcyB3aXRob3V0IGFueQotY29uZmlndXJhdGlvbiwgZ2l2aW5nIHRoZW0ganVzdCB0aGUgZGVmYXVsdCBpbmZvcm1hdGlvbi4KLQotc3RydWN0IHJlbW90ZQotLS0tLS0tLS0tLS0tLQotCi1gbmFtZWA6OgotCi0JVGhlIHVzZXIncyBuaWNrbmFtZSBmb3IgdGhlIHJlbW90ZQotCi1gdXJsYDo6Ci0KLQlBbiBhcnJheSBvZiBhbGwgb2YgdGhlIHVybF9uciBVUkxzIGNvbmZpZ3VyZWQgZm9yIHRoZSByZW1vdGUKLQotYHB1c2h1cmxgOjoKLQotCUFuIGFycmF5IG9mIGFsbCBvZiB0aGUgcHVzaHVybF9uciBwdXNoIFVSTHMgY29uZmlndXJlZCBmb3IgdGhlIHJlbW90ZQotCi1gcHVzaGA6OgotCi0JIEFuIGFycmF5IG9mIHJlZnNwZWNzIGNvbmZpZ3VyZWQgZm9yIHB1c2hpbmcsIHdpdGgKLQkgcHVzaF9yZWZzcGVjIGJlaW5nIHRoZSBsaXRlcmFsIHN0cmluZ3MsIGFuZCBwdXNoX3JlZnNwZWNfbnIKLQkgYmVpbmcgdGhlIHF1YW50aXR5LgotCi1gZmV0Y2hgOjoKLQotCUFuIGFycmF5IG9mIHJlZnNwZWNzIGNvbmZpZ3VyZWQgZm9yIGZldGNoaW5nLCB3aXRoCi0JZmV0Y2hfcmVmc3BlYyBiZWluZyB0aGUgbGl0ZXJhbCBzdHJpbmdzLCBhbmQgZmV0Y2hfcmVmc3BlY19ucgotCWJlaW5nIHRoZSBxdWFudGl0eS4KLQotYGZldGNoX3RhZ3NgOjoKLQotCVRoZSBzZXR0aW5nIGZvciB3aGV0aGVyIHRvIGZldGNoIHRhZ3MgKGFzIGEgc2VwYXJhdGUgcnVsZSBmcm9tCi0JdGhlIGNvbmZpZ3VyZWQgcmVmc3BlY3MpOyAtMSBtZWFucyBuZXZlciB0byBmZXRjaCB0YWdzLCAwCi0JbWVhbnMgdG8gYXV0by1mb2xsb3cgdGFncyBiYXNlZCBvbiB0aGUgZGVmYXVsdCBoZXVyaXN0aWMsIDEKLQltZWFucyB0byBhbHdheXMgYXV0by1mb2xsb3cgdGFncywgYW5kIDIgbWVhbnMgdG8gZmV0Y2ggYWxsCi0JdGFncy4KLQotYHJlY2VpdmVwYWNrYCwgYHVwbG9hZHBhY2tgOjoKLQotCVRoZSBjb25maWd1cmVkIGhlbHBlciBwcm9ncmFtcyB0byBydW4gb24gdGhlIHJlbW90ZSBzaWRlLCBmb3IKLQlHaXQtbmF0aXZlIHByb3RvY29scy4KLQotYGh0dHBfcHJveHlgOjoKLQotCVRoZSBwcm94eSB0byB1c2UgZm9yIGN1cmwgKGh0dHAsIGh0dHBzLCBmdHAsIGV0Yy4pIFVSTHMuCi0KLWBodHRwX3Byb3h5X2F1dGhtZXRob2RgOjoKLQotCVRoZSBtZXRob2QgdXNlZCBmb3IgYXV0aGVudGljYXRpbmcgYWdhaW5zdCBgaHR0cF9wcm94eWAuCi0KLXN0cnVjdCByZW1vdGVzIGNhbiBiZSBmb3VuZCBieSBuYW1lIHdpdGggcmVtb3RlX2dldCgpLCBhbmQgaXRlcmF0ZWQKLXRocm91Z2ggd2l0aCBmb3JfZWFjaF9yZW1vdGUoKS4gcmVtb3RlX2dldChOVUxMKSB3aWxsIHJldHVybiB0aGUKLWRlZmF1bHQgcmVtb3RlLCBnaXZlbiB0aGUgY3VycmVudCBicmFuY2ggYW5kIGNvbmZpZ3VyYXRpb24uCi0KLXN0cnVjdCByZWZzcGVjCi0tLS0tLS0tLS0tLS0tLQotCi1BIHN0cnVjdCByZWZzcGVjIGhvbGRzIHRoZSBwYXJzZWQgaW50ZXJwcmV0YXRpb24gb2YgYSByZWZzcGVjLiAgSWYgaXQKLXdpbGwgZm9yY2UgdXBkYXRlcyAoc3RhcnRzIHdpdGggYSAnKycpLCBmb3JjZSBpcyB0cnVlLiAgSWYgaXQgaXMgYQotcGF0dGVybiAoc2lkZXMgZW5kIHdpdGggJyonKSBwYXR0ZXJuIGlzIHRydWUuICBzcmMgYW5kIGRlc3QgYXJlIHRoZQotdHdvIHNpZGVzIChpbmNsdWRpbmcgJyonIGNoYXJhY3RlcnMgaWYgcHJlc2VudCk7IGlmIHRoZXJlIGlzIG9ubHkgb25lCi1zaWRlLCBpdCBpcyBzcmMsIGFuZCBkc3QgaXMgTlVMTDsgaWYgc2lkZXMgZXhpc3QgYnV0IGFyZSBlbXB0eSAoaS5lLiwKLXRoZSByZWZzcGVjIGVpdGhlciBzdGFydHMgb3IgZW5kcyB3aXRoICc6JyksIHRoZSBjb3JyZXNwb25kaW5nIHNpZGUgaXMKLSIiLgotCi1BbiBhcnJheSBvZiBzdHJpbmdzIGNhbiBiZSBwYXJzZWQgaW50byBhbiBhcnJheSBvZiBzdHJ1Y3QgcmVmc3BlY3MKLXVzaW5nIHBhcnNlX2ZldGNoX3JlZnNwZWMoKSBvciBwYXJzZV9wdXNoX3JlZnNwZWMoKS4KLQotcmVtb3RlX2ZpbmRfdHJhY2tpbmcoKSwgZ2l2ZW4gYSByZW1vdGUgYW5kIGEgc3RydWN0IHJlZnNwZWMgd2l0aAotZWl0aGVyIHNyYyBvciBkc3QgZmlsbGVkIG91dCwgd2lsbCBmaWxsIG91dCB0aGUgb3RoZXIgc3VjaCB0aGF0IHRoZQotcmVzdWx0IGlzIGluIHRoZSAiZmV0Y2giIHNwZWNpZmljYXRpb24gZm9yIHRoZSByZW1vdGUgKG5vdGUgdGhhdCB0aGlzCi1ldmFsdWF0ZXMgcGF0dGVybnMgYW5kIHJldHVybnMgYSBzaW5nbGUgcmVzdWx0KS4KLQotc3RydWN0IGJyYW5jaAotLS0tLS0tLS0tLS0tLQotCi1Ob3RlIHRoYXQgdGhpcyBtYXkgZW5kIHVwIG1vdmluZyB0byBicmFuY2guaAotCi1zdHJ1Y3QgYnJhbmNoIGhvbGRzIHRoZSBjb25maWd1cmF0aW9uIGZvciBhIGJyYW5jaC4gSXQgY2FuIGJlIGxvb2tlZAotdXAgd2l0aCBicmFuY2hfZ2V0KG5hbWUpIGZvciAicmVmcy9oZWFkcy97bmFtZX0iLCBvciB3aXRoCi1icmFuY2hfZ2V0KE5VTEwpIGZvciBIRUFELgotCi1JdCBjb250YWluczoKLQotYG5hbWVgOjoKLQotCVRoZSBzaG9ydCBuYW1lIG9mIHRoZSBicmFuY2guCi0KLWByZWZuYW1lYDo6Ci0KLQlUaGUgZnVsbCBwYXRoIGZvciB0aGUgYnJhbmNoIHJlZi4KLQotYHJlbW90ZV9uYW1lYDo6Ci0KLQlUaGUgbmFtZSBvZiB0aGUgcmVtb3RlIGxpc3RlZCBpbiB0aGUgY29uZmlndXJhdGlvbi4KLQotYG1lcmdlX25hbWVgOjoKLQotCUFuIGFycmF5IG9mIHRoZSAibWVyZ2UiIGxpbmVzIGluIHRoZSBjb25maWd1cmF0aW9uLgotCi1gbWVyZ2VgOjoKLQotCUFuIGFycmF5IG9mIHRoZSBzdHJ1Y3QgcmVmc3BlY3MgdXNlZCBmb3IgdGhlIG1lcmdlIGxpbmVzLiBUaGF0Ci0JaXMsIG1lcmdlW2ldLT5kc3QgaXMgYSBsb2NhbCB0cmFja2luZyByZWYgd2hpY2ggc2hvdWxkIGJlCi0JbWVyZ2VkIGludG8gdGhpcyBicmFuY2ggYnkgZGVmYXVsdC4KLQotYG1lcmdlX25yYDo6Ci0KLQlUaGUgbnVtYmVyIG9mIG1lcmdlIGNvbmZpZ3VyYXRpb25zCi0KLWJyYW5jaF9oYXNfbWVyZ2VfY29uZmlnKCkgcmV0dXJucyB0cnVlIGlmIHRoZSBnaXZlbiBicmFuY2ggaGFzIG1lcmdlCi1jb25maWd1cmF0aW9uIGdpdmVuLgotCi1PdGhlciBzdHVmZgotLS0tLS0tLS0tLS0KLQotVGhlcmUgaXMgb3RoZXIgc3R1ZmYgaW4gcmVtb3RlLmggdGhhdCBpcyByZWxhdGVkLCBpbiBnZW5lcmFsLCB0byB0aGUKLXByb2Nlc3Mgb2YgaW50ZXJhY3Rpbmcgd2l0aCByZW1vdGVzLgotCi0oRGFuaWVsIEJhcmthbG93KQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXJldmlzaW9uLXdhbGtpbmcudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXJldmlzaW9uLXdhbGtpbmcudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwM2Y5ZWE2Li4wMDAwMDAwCi0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1yZXZpc2lvbi13YWxraW5nLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDcyICswLDAgQEAKLXJldmlzaW9uIHdhbGtpbmcgQVBJCi09PT09PT09PT09PT09PT09PT09PQotCi1UaGUgcmV2aXNpb24gd2Fsa2luZyBBUEkgb2ZmZXJzIGZ1bmN0aW9ucyB0byBidWlsZCBhIGxpc3Qgb2YgcmV2aXNpb25zCi1hbmQgdGhlbiBpdGVyYXRlIG92ZXIgdGhhdCBsaXN0LgotCi1DYWxsaW5nIHNlcXVlbmNlCi0tLS0tLS0tLS0tLS0tLS0tCi0KLVRoZSB3YWxraW5nIEFQSSBoYXMgYSBnaXZlbiBjYWxsaW5nIHNlcXVlbmNlOiBmaXJzdCB5b3UgbmVlZCB0bwotaW5pdGlhbGl6ZSBhIHJldl9pbmZvIHN0cnVjdHVyZSwgdGhlbiBhZGQgcmV2aXNpb25zIHRvIGNvbnRyb2wgd2hhdCBraW5kCi1vZiByZXZpc2lvbiBsaXN0IGRvIHlvdSB3YW50IHRvIGdldCwgZmluYWxseSB5b3UgY2FuIGl0ZXJhdGUgb3ZlciB0aGUKLXJldmlzaW9uIGxpc3QuCi0KLUZ1bmN0aW9ucwotLS0tLS0tLS0tCi0KLWByZXBvX2luaXRfcmV2aXNpb25zYDo6Ci0KLQlJbml0aWFsaXplIGEgcmV2X2luZm8gc3RydWN0dXJlIHdpdGggZGVmYXVsdCB2YWx1ZXMuIFRoZSB0aGlyZAotCXBhcmFtZXRlciBtYXkgYmUgTlVMTCBvciBjYW4gYmUgcHJlZml4IHBhdGgsIGFuZCB0aGVuIHRoZSBgLnByZWZpeGAKLQl2YXJpYWJsZSB3aWxsIGJlIHNldCB0byBpdC4gVGhpcyBpcyB0eXBpY2FsbHkgdGhlIGZpcnN0IGZ1bmN0aW9uIHlvdQotCXdhbnQgdG8gY2FsbCB3aGVuIHlvdSB3YW50IHRvIGRlYWwgd2l0aCBhIHJldmlzaW9uIGxpc3QuIEFmdGVyIGNhbGxpbmcKLQl0aGlzIGZ1bmN0aW9uLCB5b3UgYXJlIGZyZWUgdG8gY3VzdG9taXplIG9wdGlvbnMsIGxpa2Ugc2V0Ci0JYC5pZ25vcmVfbWVyZ2VzYCB0byAwIGlmIHlvdSBkb24ndCB3YW50IHRvIGlnbm9yZSBtZXJnZXMsIGFuZCBzbyBvbi4gU2VlCi0JYHJldmlzaW9uLmhgIGZvciBhIGNvbXBsZXRlIGxpc3Qgb2YgYXZhaWxhYmxlIG9wdGlvbnMuCi0KLWBhZGRfcGVuZGluZ19vYmplY3RgOjoKLQotCVRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgaWYgeW91IHdhbnQgdG8gYWRkIGNvbW1pdCBvYmplY3RzIGFzIHJldmlzaW9uCi0JaW5mb3JtYXRpb24uIFlvdSBjYW4gdXNlIHRoZSBgVU5JTlRFUkVTVElOR2Agb2JqZWN0IGZsYWcgdG8gaW5kaWNhdGUgaWYKLQl5b3Ugd2FudCB0byBpbmNsdWRlIG9yIGV4Y2x1ZGUgdGhlIGdpdmVuIGNvbW1pdCAoYW5kIGNvbW1pdHMgcmVhY2hhYmxlCi0JZnJvbSB0aGUgZ2l2ZW4gY29tbWl0KSBmcm9tIHRoZSByZXZpc2lvbiBsaXN0LgotKwotTk9URTogSWYgeW91IGhhdmUgdGhlIGNvbW1pdHMgYXMgYSBzdHJpbmcgbGlzdCB0aGVuIHlvdSBwcm9iYWJseSB3YW50IHRvCi11c2Ugc2V0dXBfcmV2aXNpb25zKCksIGluc3RlYWQgb2YgcGFyc2luZyBlYWNoIHN0cmluZyBhbmQgdXNpbmcgdGhpcwotZnVuY3Rpb24uCi0KLWBzZXR1cF9yZXZpc2lvbnNgOjoKLQotCVBhcnNlIHJldmlzaW9uIGluZm9ybWF0aW9uLCBmaWxsaW5nIGluIHRoZSBgcmV2X2luZm9gIHN0cnVjdHVyZSwgYW5kCi0JcmVtb3ZpbmcgdGhlIHVzZWQgYXJndW1lbnRzIGZyb20gdGhlIGFyZ3VtZW50IGxpc3QuIFJldHVybnMgdGhlIG51bWJlcgotCW9mIGFyZ3VtZW50cyBsZWZ0IHRoYXQgd2VyZW4ndCByZWNvZ25pemVkLCB3aGljaCBhcmUgYWxzbyBtb3ZlZCB0byB0aGUKLQloZWFkIG9mIHRoZSBhcmd1bWVudCBsaXN0LiBUaGUgbGFzdCBwYXJhbWV0ZXIgaXMgdXNlZCBpbiBjYXNlIG5vCi0JcGFyYW1ldGVyIGdpdmVuIGJ5IHRoZSBmaXJzdCB0d28gYXJndW1lbnRzLgotCi1gcHJlcGFyZV9yZXZpc2lvbl93YWxrYDo6Ci0KLQlQcmVwYXJlcyB0aGUgcmV2X2luZm8gc3RydWN0dXJlIGZvciBhIHdhbGsuIFlvdSBzaG91bGQgY2hlY2sgaWYgaXQKLQlyZXR1cm5zIGFueSBlcnJvciAobm9uLXplcm8gcmV0dXJuIGNvZGUpIGFuZCBpZiBpdCBkb2VzIG5vdCwgeW91IGNhbgotCXN0YXJ0IHVzaW5nIGdldF9yZXZpc2lvbigpIHRvIGRvIHRoZSBpdGVyYXRpb24uCi0KLWBnZXRfcmV2aXNpb25gOjoKLQotCVRha2VzIGEgcG9pbnRlciB0byBhIGByZXZfaW5mb2Agc3RydWN0dXJlIGFuZCBpdGVyYXRlcyBvdmVyIGl0LAotCXJldHVybmluZyBhIGBzdHJ1Y3QgY29tbWl0ICpgIGVhY2ggdGltZSB5b3UgY2FsbCBpdC4gVGhlIGVuZCBvZiB0aGUKLQlyZXZpc2lvbiBsaXN0IGlzIGluZGljYXRlZCBieSByZXR1cm5pbmcgYSBOVUxMIHBvaW50ZXIuCi0KLWByZXNldF9yZXZpc2lvbl93YWxrYDo6Ci0KLQlSZXNldCB0aGUgZmxhZ3MgdXNlZCBieSB0aGUgcmV2aXNpb24gd2Fsa2luZyBhcGkuIFlvdSBjYW4gdXNlCi0JdGhpcyB0byBkbyBtdWx0aXBsZSBzZXF1ZW50aWFsIHJldmlzaW9uIHdhbGtzLgotCi1EYXRhIHN0cnVjdHVyZXMKLS0tLS0tLS0tLS0tLS0tLQotCi1UYWxrIGFib3V0IDxyZXZpc2lvbi5oPiwgdGhpbmdzIGxpa2U6Ci0KLSogdHdvIGRpZmZfb3B0aW9ucywgb25lIGZvciBwYXRoIGxpbWl0aW5nLCBhbm90aGVyIGZvciBvdXRwdXQ7Ci0qIHJlbWFpbmluZyBmdW5jdGlvbnM7Ci0KLShMaW51cywgSkMsIERzY2hvKQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXJ1bi1jb21tYW5kLnR4dCBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1ydW4tY29tbWFuZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiZjNlMzcuLjAwMDAwMDAKLS0tIGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXJ1bi1jb21tYW5kLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDI2NCArMCwwIEBACi1ydW4tY29tbWFuZCBBUEkKLT09PT09PT09PT09PT09PQotCi1UaGUgcnVuLWNvbW1hbmQgQVBJIG9mZmVycyBhIHZlcnNhdGlsZSB0b29sIHRvIHJ1biBzdWItcHJvY2Vzc2VzIHdpdGgKLXJlZGlyZWN0ZWQgaW5wdXQgYW5kIG91dHB1dCBhcyB3ZWxsIGFzIHdpdGggYSBtb2RpZmllZCBlbnZpcm9ubWVudAotYW5kIGFuIGFsdGVybmF0ZSBjdXJyZW50IGRpcmVjdG9yeS4KLQotQSBzaW1pbGFyIEFQSSBvZmZlcnMgdGhlIGNhcGFiaWxpdHkgdG8gcnVuIGEgZnVuY3Rpb24gYXN5bmNocm9ub3VzbHksCi13aGljaCBpcyBwcmltYXJpbHkgdXNlZCB0byBjYXB0dXJlIHRoZSBvdXRwdXQgdGhhdCB0aGUgZnVuY3Rpb24KLXByb2R1Y2VzIGluIHRoZSBjYWxsZXIgaW4gb3JkZXIgdG8gcHJvY2VzcyBpdC4KLQotCi1GdW5jdGlvbnMKLS0tLS0tLS0tLQotCi1gY2hpbGRfcHJvY2Vzc19pbml0YDo6Ci0KLQlJbml0aWFsaXplIGEgc3RydWN0IGNoaWxkX3Byb2Nlc3MgdmFyaWFibGUuCi0KLWBzdGFydF9jb21tYW5kYDo6Ci0KLQlTdGFydCBhIHN1Yi1wcm9jZXNzLiBUYWtlcyBhIHBvaW50ZXIgdG8gYSBgc3RydWN0IGNoaWxkX3Byb2Nlc3NgCi0JdGhhdCBzcGVjaWZpZXMgdGhlIGRldGFpbHMgYW5kIHJldHVybnMgcGlwZSBGRHMgKGlmIHJlcXVlc3RlZCkuCi0JU2VlIGJlbG93IGZvciBkZXRhaWxzLgotCi1gZmluaXNoX2NvbW1hbmRgOjoKLQotCVdhaXQgZm9yIHRoZSBjb21wbGV0aW9uIG9mIGEgc3ViLXByb2Nlc3MgdGhhdCB3YXMgc3RhcnRlZCB3aXRoCi0Jc3RhcnRfY29tbWFuZCgpLgotCi1gcnVuX2NvbW1hbmRgOjoKLQotCUEgY29udmVuaWVuY2UgZnVuY3Rpb24gdGhhdCBlbmNhcHN1bGF0ZXMgYSBzZXF1ZW5jZSBvZgotCXN0YXJ0X2NvbW1hbmQoKSBmb2xsb3dlZCBieSBmaW5pc2hfY29tbWFuZCgpLiBUYWtlcyBhIHBvaW50ZXIKLQl0byBhIGBzdHJ1Y3QgY2hpbGRfcHJvY2Vzc2AgdGhhdCBzcGVjaWZpZXMgdGhlIGRldGFpbHMuCi0KLWBydW5fY29tbWFuZF92X29wdGAsIGBydW5fY29tbWFuZF92X29wdF9jZF9lbnZgOjoKLQotCUNvbnZlbmllbmNlIGZ1bmN0aW9ucyB0aGF0IGVuY2Fwc3VsYXRlIGEgc2VxdWVuY2Ugb2YKLQlzdGFydF9jb21tYW5kKCkgZm9sbG93ZWQgYnkgZmluaXNoX2NvbW1hbmQoKS4gVGhlIGFyZ3VtZW50IGFyZ3YKLQlzcGVjaWZpZXMgdGhlIHByb2dyYW0gYW5kIGl0cyBhcmd1bWVudHMuIFRoZSBhcmd1bWVudCBvcHQgaXMgemVybwotCW9yIG1vcmUgb2YgdGhlIGZsYWdzIGBSVU5fQ09NTUFORF9OT19TVERJTmAsIGBSVU5fR0lUX0NNRGAsCi0JYFJVTl9DT01NQU5EX1NURE9VVF9UT19TVERFUlJgLCBvciBgUlVOX1NJTEVOVF9FWEVDX0ZBSUxVUkVgCi0JdGhhdCBjb3JyZXNwb25kIHRvIHRoZSBtZW1iZXJzIC5ub19zdGRpbiwgLmdpdF9jbWQsCi0JLnN0ZG91dF90b19zdGRlcnIsIC5zaWxlbnRfZXhlY19mYWlsdXJlIG9mIGBzdHJ1Y3QgY2hpbGRfcHJvY2Vzc2AuCi0JVGhlIGFyZ3VtZW50IGRpciBjb3JyZXNwb25kcyB0aGUgbWVtYmVyIC5kaXIuIFRoZSBhcmd1bWVudCBlbnYKLQljb3JyZXNwb25kcyB0byB0aGUgbWVtYmVyIC5lbnYuCi0KLWBjaGlsZF9wcm9jZXNzX2NsZWFyYDo6Ci0KLQlSZWxlYXNlIHRoZSBtZW1vcnkgYXNzb2NpYXRlZCB3aXRoIHRoZSBzdHJ1Y3QgY2hpbGRfcHJvY2Vzcy4KLQlNb3N0IHVzZXJzIG9mIHRoZSBydW4tY29tbWFuZCBBUEkgZG9uJ3QgbmVlZCB0byBjYWxsIHRoaXMKLQlmdW5jdGlvbiBleHBsaWNpdGx5IGJlY2F1c2UgYHN0YXJ0X2NvbW1hbmRgIGludm9rZXMgaXQgb24KLQlmYWlsdXJlIGFuZCBgZmluaXNoX2NvbW1hbmRgIGNhbGxzIGl0IGF1dG9tYXRpY2FsbHkgYWxyZWFkeS4KLQotVGhlIGZ1bmN0aW9ucyBhYm92ZSBkbyB0aGUgZm9sbG93aW5nOgotCi0uIElmIGEgc3lzdGVtIGNhbGwgZmFpbGVkLCBlcnJubyBpcyBzZXQgYW5kIC0xIGlzIHJldHVybmVkLiBBIGRpYWdub3N0aWMKLSAgaXMgcHJpbnRlZC4KLQotLiBJZiB0aGUgcHJvZ3JhbSB3YXMgbm90IGZvdW5kLCB0aGVuIC0xIGlzIHJldHVybmVkIGFuZCBlcnJubyBpcyBzZXQgdG8KLSAgRU5PRU5UOyBhIGRpYWdub3N0aWMgaXMgcHJpbnRlZCBvbmx5IGlmIC5zaWxlbnRfZXhlY19mYWlsdXJlIGlzIDAuCi0KLS4gT3RoZXJ3aXNlLCB0aGUgcHJvZ3JhbSBpcyBydW4uIElmIGl0IHRlcm1pbmF0ZXMgcmVndWxhcmx5LCBpdHMgZXhpdAotICBjb2RlIGlzIHJldHVybmVkLiBObyBkaWFnbm9zdGljIGlzIHByaW50ZWQsIGV2ZW4gaWYgdGhlIGV4aXQgY29kZSBpcwotICBub24temVyby4KLQotLiBJZiB0aGUgcHJvZ3JhbSB0ZXJtaW5hdGVkIGR1ZSB0byBhIHNpZ25hbCwgdGhlbiB0aGUgcmV0dXJuIHZhbHVlIGlzIHRoZQotICBzaWduYWwgbnVtYmVyICsgMTI4LCBpZS4gdGhlIHNhbWUgdmFsdWUgdGhhdCBhIFBPU0lYIHNoZWxsJ3MgJD8gd291bGQKLSAgcmVwb3J0LiAgQSBkaWFnbm9zdGljIGlzIHByaW50ZWQuCi0KLQotYHN0YXJ0X2FzeW5jYDo6Ci0KLQlSdW4gYSBmdW5jdGlvbiBhc3luY2hyb25vdXNseS4gVGFrZXMgYSBwb2ludGVyIHRvIGEgYHN0cnVjdAotCWFzeW5jYCB0aGF0IHNwZWNpZmllcyB0aGUgZGV0YWlscyBhbmQgcmV0dXJucyBhIHNldCBvZiBwaXBlIEZEcwotCWZvciBjb21tdW5pY2F0aW9uIHdpdGggdGhlIGZ1bmN0aW9uLiBTZWUgYmVsb3cgZm9yIGRldGFpbHMuCi0KLWBmaW5pc2hfYXN5bmNgOjoKLQotCVdhaXQgZm9yIHRoZSBjb21wbGV0aW9uIG9mIGFuIGFzeW5jaHJvbm91cyBmdW5jdGlvbiB0aGF0IHdhcwotCXN0YXJ0ZWQgd2l0aCBzdGFydF9hc3luYygpLgotCi1gcnVuX2hvb2tgOjoKLQotCVJ1biBhIGhvb2suCi0JVGhlIGZpcnN0IGFyZ3VtZW50IGlzIGEgcGF0aG5hbWUgdG8gYW4gaW5kZXggZmlsZSwgb3IgTlVMTAotCWlmIHRoZSBob29rIHVzZXMgdGhlIGRlZmF1bHQgaW5kZXggZmlsZSBvciBubyBpbmRleCBpcyBuZWVkZWQuCi0JVGhlIHNlY29uZCBhcmd1bWVudCBpcyB0aGUgbmFtZSBvZiB0aGUgaG9vay4KLQlUaGUgZnVydGhlciBhcmd1bWVudHMgY29ycmVzcG9uZCB0byB0aGUgaG9vayBhcmd1bWVudHMuCi0JVGhlIGxhc3QgYXJndW1lbnQgaGFzIHRvIGJlIE5VTEwgdG8gdGVybWluYXRlIHRoZSBhcmd1bWVudHMgbGlzdC4KLQlJZiB0aGUgaG9vayBkb2VzIG5vdCBleGlzdCBvciBpcyBub3QgZXhlY3V0YWJsZSwgdGhlIHJldHVybgotCXZhbHVlIHdpbGwgYmUgemVyby4KLQlJZiBpdCBpcyBleGVjdXRhYmxlLCB0aGUgaG9vayB3aWxsIGJlIGV4ZWN1dGVkIGFuZCB0aGUgZXhpdAotCXN0YXR1cyBvZiB0aGUgaG9vayBpcyByZXR1cm5lZC4KLQlPbiBleGVjdXRpb24sIC5zdGRvdXRfdG9fc3RkZXJyIGFuZCAubm9fc3RkaW4gd2lsbCBiZSBzZXQuCi0JKFNlZSBiZWxvdy4pCi0KLQotRGF0YSBzdHJ1Y3R1cmVzCi0tLS0tLS0tLS0tLS0tLS0KLQotKiBgc3RydWN0IGNoaWxkX3Byb2Nlc3NgCi0KLVRoaXMgZGVzY3JpYmVzIHRoZSBhcmd1bWVudHMsIHJlZGlyZWN0aW9ucywgYW5kIGVudmlyb25tZW50IG9mIGEKLWNvbW1hbmQgdG8gcnVuIGluIGEgc3ViLXByb2Nlc3MuCi0KLVRoZSBjYWxsZXI6Ci0KLTEuIGFsbG9jYXRlcyBhbmQgY2xlYXJzICh1c2luZyBjaGlsZF9wcm9jZXNzX2luaXQoKSBvcgotICAgQ0hJTERfUFJPQ0VTU19JTklUKSBhIHN0cnVjdCBjaGlsZF9wcm9jZXNzIHZhcmlhYmxlOwotMi4gaW5pdGlhbGl6ZXMgdGhlIG1lbWJlcnM7Ci0zLiBjYWxscyBzdGFydF9jb21tYW5kKCk7Ci00LiBwcm9jZXNzZXMgdGhlIGRhdGE7Ci01LiBjbG9zZXMgZmlsZSBkZXNjcmlwdG9ycyAoaWYgbmVjZXNzYXJ5OyBzZWUgYmVsb3cpOwotNi4gY2FsbHMgZmluaXNoX2NvbW1hbmQoKS4KLQotVGhlIC5hcmd2IG1lbWJlciBpcyBzZXQgdXAgYXMgYW4gYXJyYXkgb2Ygc3RyaW5nIHBvaW50ZXJzIChOVUxMCi10ZXJtaW5hdGVkKSwgb2Ygd2hpY2ggLmFyZ3ZbMF0gaXMgdGhlIHByb2dyYW0gbmFtZSB0byBydW4gKHVzdWFsbHkKLXdpdGhvdXQgYSBwYXRoKS4gSWYgdGhlIGNvbW1hbmQgdG8gcnVuIGlzIGEgZ2l0IGNvbW1hbmQsIHNldCBhcmd2WzBdIHRvCi10aGUgY29tbWFuZCBuYW1lIHdpdGhvdXQgdGhlICdnaXQtJyBwcmVmaXggYW5kIHNldCAuZ2l0X2NtZCA9IDEuCi0KLU5vdGUgdGhhdCB0aGUgb3duZXJzaGlwIG9mIHRoZSBtZW1vcnkgcG9pbnRlZCB0byBieSAuYXJndiBzdGF5cyB3aXRoIHRoZQotY2FsbGVyLCBidXQgaXQgc2hvdWxkIHN1cnZpdmUgdW50aWwgYGZpbmlzaF9jb21tYW5kYCBjb21wbGV0ZXMuIElmIHRoZQotLmFyZ3YgbWVtYmVyIGlzIE5VTEwsIGBzdGFydF9jb21tYW5kYCB3aWxsIHBvaW50IGl0IGF0IHRoZSAuYXJncwotYGFyZ3ZfYXJyYXlgIChzbyB5b3UgbWF5IHVzZSBvbmUgb3IgdGhlIG90aGVyLCBidXQgeW91IG11c3QgdXNlIGV4YWN0bHkKLW9uZSkuIFRoZSBtZW1vcnkgaW4gLmFyZ3Mgd2lsbCBiZSBjbGVhbmVkIHVwIGF1dG9tYXRpY2FsbHkgZHVyaW5nCi1gZmluaXNoX2NvbW1hbmRgIChvciBkdXJpbmcgYHN0YXJ0X2NvbW1hbmRgIHdoZW4gaXQgaXMgdW5zdWNjZXNzZnVsKS4KLQotVGhlIG1lbWJlcnMgLmluLCAub3V0LCAuZXJyIGFyZSB1c2VkIHRvIHJlZGlyZWN0IHN0ZGluLCBzdGRvdXQsCi1zdGRlcnIgYXMgZm9sbG93czoKLQotLiBTcGVjaWZ5IDAgdG8gcmVxdWVzdCBubyBzcGVjaWFsIHJlZGlyZWN0aW9uLiBObyBuZXcgZmlsZSBkZXNjcmlwdG9yCi0gIGlzIGFsbG9jYXRlZC4gVGhlIGNoaWxkIHByb2Nlc3Mgc2ltcGx5IGluaGVyaXRzIHRoZSBjaGFubmVsIGZyb20gdGhlCi0gIHBhcmVudC4KLQotLiBTcGVjaWZ5IC0xIHRvIGhhdmUgYSBwaXBlIGFsbG9jYXRlZDsgc3RhcnRfY29tbWFuZCgpIHJlcGxhY2VzIC0xCi0gIGJ5IHRoZSBwaXBlIEZEIGluIHRoZSBmb2xsb3dpbmcgd2F5OgotCi0JLmluOiBSZXR1cm5zIHRoZSB3cml0YWJsZSBwaXBlIGVuZCBpbnRvIHdoaWNoIHRoZSBjYWxsZXIgd3JpdGVzOwotCQl0aGUgcmVhZGFibGUgZW5kIG9mIHRoZSBwaXBlIGJlY29tZXMgdGhlIGNoaWxkJ3Mgc3RkaW4uCi0KLQkub3V0LCAuZXJyOiBSZXR1cm5zIHRoZSByZWFkYWJsZSBwaXBlIGVuZCBmcm9tIHdoaWNoIHRoZSBjYWxsZXIKLQkJcmVhZHM7IHRoZSB3cml0YWJsZSBlbmQgb2YgdGhlIHBpcGUgZW5kIGJlY29tZXMgY2hpbGQncwotCQlzdGRvdXQvc3RkZXJyLgotCi0gIFRoZSBjYWxsZXIgb2Ygc3RhcnRfY29tbWFuZCgpIG11c3QgY2xvc2UgdGhlIHNvIHJldHVybmVkIEZEcwotICBhZnRlciBpdCBoYXMgY29tcGxldGVkIHJlYWRpbmcgZnJvbS93cml0aW5nIHRvIGl0IQotCi0uIFNwZWNpZnkgYSBmaWxlIGRlc2NyaXB0b3IgPiAwIHRvIGJlIHVzZWQgYnkgdGhlIGNoaWxkOgotCi0JLmluOiBUaGUgRkQgbXVzdCBiZSByZWFkYWJsZTsgaXQgYmVjb21lcyBjaGlsZCdzIHN0ZGluLgotCS5vdXQ6IFRoZSBGRCBtdXN0IGJlIHdyaXRhYmxlOyBpdCBiZWNvbWVzIGNoaWxkJ3Mgc3Rkb3V0LgotCS5lcnI6IFRoZSBGRCBtdXN0IGJlIHdyaXRhYmxlOyBpdCBiZWNvbWVzIGNoaWxkJ3Mgc3RkZXJyLgotCi0gIFRoZSBzcGVjaWZpZWQgRkQgaXMgY2xvc2VkIGJ5IHN0YXJ0X2NvbW1hbmQoKSwgZXZlbiBpZiBpdCBmYWlscyB0bwotICBydW4gdGhlIHN1Yi1wcm9jZXNzIQotCi0uIFNwZWNpYWwgZm9ybXMgb2YgcmVkaXJlY3Rpb24gYXJlIGF2YWlsYWJsZSBieSBzZXR0aW5nIHRoZXNlIG1lbWJlcnMKLSAgdG8gMToKLQotCS5ub19zdGRpbiwgLm5vX3N0ZG91dCwgLm5vX3N0ZGVycjogVGhlIHJlc3BlY3RpdmUgY2hhbm5lbCBpcwotCQlyZWRpcmVjdGVkIHRvIC9kZXYvbnVsbC4KLQotCS5zdGRvdXRfdG9fc3RkZXJyOiBzdGRvdXQgb2YgdGhlIGNoaWxkIGlzIHJlZGlyZWN0ZWQgdG8gaXRzCi0JCXN0ZGVyci4gVGhpcyBoYXBwZW5zIGFmdGVyIHN0ZGVyciBpcyBpdHNlbGYgcmVkaXJlY3RlZC4KLQkJU28gc3Rkb3V0IHdpbGwgZm9sbG93IHN0ZGVyciB0byB3aGVyZXZlciBpdCBpcwotCQlyZWRpcmVjdGVkLgotCi1UbyBtb2RpZnkgdGhlIGVudmlyb25tZW50IG9mIHRoZSBzdWItcHJvY2Vzcywgc3BlY2lmeSBhbiBhcnJheSBvZgotc3RyaW5nIHBvaW50ZXJzIChOVUxMIHRlcm1pbmF0ZWQpIGluIC5lbnY6Ci0KLS4gSWYgdGhlIHN0cmluZyBpcyBvZiB0aGUgZm9ybSAiVkFSPXZhbHVlIiwgaS5lLiBpdCBjb250YWlucyAnPScKLSAgdGhlIHZhcmlhYmxlIGlzIGFkZGVkIHRvIHRoZSBjaGlsZCBwcm9jZXNzJ3MgZW52aXJvbm1lbnQuCi0KLS4gSWYgdGhlIHN0cmluZyBkb2VzIG5vdCBjb250YWluICc9JywgaXQgbmFtZXMgYW4gZW52aXJvbm1lbnQKLSAgdmFyaWFibGUgdGhhdCB3aWxsIGJlIHJlbW92ZWQgZnJvbSB0aGUgY2hpbGQgcHJvY2VzcydzIGVudmlyb25tZW50LgotCi1JZiB0aGUgLmVudiBtZW1iZXIgaXMgTlVMTCwgYHN0YXJ0X2NvbW1hbmRgIHdpbGwgcG9pbnQgaXQgYXQgdGhlCi0uZW52X2FycmF5IGBhcmd2X2FycmF5YCAoc28geW91IG1heSB1c2Ugb25lIG9yIHRoZSBvdGhlciwgYnV0IG5vdCBib3RoKS4KLVRoZSBtZW1vcnkgaW4gLmVudl9hcnJheSB3aWxsIGJlIGNsZWFuZWQgdXAgYXV0b21hdGljYWxseSBkdXJpbmcKLWBmaW5pc2hfY29tbWFuZGAgKG9yIGR1cmluZyBgc3RhcnRfY29tbWFuZGAgd2hlbiBpdCBpcyB1bnN1Y2Nlc3NmdWwpLgotCi1UbyBzcGVjaWZ5IGEgbmV3IGluaXRpYWwgd29ya2luZyBkaXJlY3RvcnkgZm9yIHRoZSBzdWItcHJvY2VzcywKLXNwZWNpZnkgaXQgaW4gdGhlIC5kaXIgbWVtYmVyLgotCi1JZiB0aGUgcHJvZ3JhbSBjYW5ub3QgYmUgZm91bmQsIHRoZSBmdW5jdGlvbnMgcmV0dXJuIC0xIGFuZCBzZXQKLWVycm5vIHRvIEVOT0VOVC4gTm9ybWFsbHksIGFuIGVycm9yIG1lc3NhZ2UgaXMgcHJpbnRlZCwgYnV0IGlmCi0uc2lsZW50X2V4ZWNfZmFpbHVyZSBpcyBzZXQgdG8gMSwgbm8gbWVzc2FnZSBpcyBwcmludGVkIGZvciB0aGlzCi1zcGVjaWFsIGVycm9yIGNvbmRpdGlvbi4KLQotCi0qIGBzdHJ1Y3QgYXN5bmNgCi0KLVRoaXMgZGVzY3JpYmVzIGEgZnVuY3Rpb24gdG8gcnVuIGFzeW5jaHJvbm91c2x5LCB3aG9zZSBwdXJwb3NlIGlzCi10byBwcm9kdWNlIG91dHB1dCB0aGF0IHRoZSBjYWxsZXIgcmVhZHMuCi0KLVRoZSBjYWxsZXI6Ci0KLTEuIGFsbG9jYXRlcyBhbmQgY2xlYXJzIChtZW1zZXQoJmFzeSwgMCwgc2l6ZW9mKGFzeSkpOykgYQotICAgc3RydWN0IGFzeW5jIHZhcmlhYmxlOwotMi4gaW5pdGlhbGl6ZXMgLnByb2MgYW5kIC5kYXRhOwotMy4gY2FsbHMgc3RhcnRfYXN5bmMoKTsKLTQuIHByb2Nlc3NlcyBjb21tdW5pY2F0ZXMgd2l0aCBwcm9jIHRocm91Z2ggLmluIGFuZCAub3V0OwotNS4gY2xvc2VzIC5pbiBhbmQgLm91dDsKLTYuIGNhbGxzIGZpbmlzaF9hc3luYygpLgotCi1UaGUgbWVtYmVycyAuaW4sIC5vdXQgYXJlIHVzZWQgdG8gcHJvdmlkZSBhIHNldCBvZiBmZCdzIGZvcgotY29tbXVuaWNhdGlvbiBiZXR3ZWVuIHRoZSBjYWxsZXIgYW5kIHRoZSBjYWxsZWUgYXMgZm9sbG93czoKLQotLiBTcGVjaWZ5IDAgdG8gaGF2ZSBubyBmaWxlIGRlc2NyaXB0b3IgcGFzc2VkLiAgVGhlIGNhbGxlZSB3aWxsCi0gIHJlY2VpdmUgLTEgaW4gdGhlIGNvcnJlc3BvbmRpbmcgYXJndW1lbnQuCi0KLS4gU3BlY2lmeSA8IDAgdG8gaGF2ZSBhIHBpcGUgYWxsb2NhdGVkOyBzdGFydF9hc3luYygpIHJlcGxhY2VzCi0gIHdpdGggdGhlIHBpcGUgRkQgaW4gdGhlIGZvbGxvd2luZyB3YXk6Ci0KLQkuaW46IFJldHVybnMgdGhlIHdyaXRhYmxlIHBpcGUgZW5kIGludG8gd2hpY2ggdGhlIGNhbGxlcgotCXdyaXRlczsgdGhlIHJlYWRhYmxlIGVuZCBvZiB0aGUgcGlwZSBiZWNvbWVzIHRoZSBmdW5jdGlvbidzCi0JaW4gYXJndW1lbnQuCi0KLQkub3V0OiBSZXR1cm5zIHRoZSByZWFkYWJsZSBwaXBlIGVuZCBmcm9tIHdoaWNoIHRoZSBjYWxsZXIKLQlyZWFkczsgdGhlIHdyaXRhYmxlIGVuZCBvZiB0aGUgcGlwZSBiZWNvbWVzIHRoZSBmdW5jdGlvbidzCi0Jb3V0IGFyZ3VtZW50LgotCi0gIFRoZSBjYWxsZXIgb2Ygc3RhcnRfYXN5bmMoKSBtdXN0IGNsb3NlIHRoZSByZXR1cm5lZCBGRHMgYWZ0ZXIgaXQKLSAgaGFzIGNvbXBsZXRlZCByZWFkaW5nIGZyb20vd3JpdGluZyBmcm9tIHRoZW0uCi0KLS4gU3BlY2lmeSBhIGZpbGUgZGVzY3JpcHRvciA+IDAgdG8gYmUgdXNlZCBieSB0aGUgZnVuY3Rpb246Ci0KLQkuaW46IFRoZSBGRCBtdXN0IGJlIHJlYWRhYmxlOyBpdCBiZWNvbWVzIHRoZSBmdW5jdGlvbidzIGluLgotCS5vdXQ6IFRoZSBGRCBtdXN0IGJlIHdyaXRhYmxlOyBpdCBiZWNvbWVzIHRoZSBmdW5jdGlvbidzIG91dC4KLQotICBUaGUgc3BlY2lmaWVkIEZEIGlzIGNsb3NlZCBieSBzdGFydF9hc3luYygpLCBldmVuIGlmIGl0IGZhaWxzIHRvCi0gIHJ1biB0aGUgZnVuY3Rpb24uCi0KLVRoZSBmdW5jdGlvbiBwb2ludGVyIGluIC5wcm9jIGhhcyB0aGUgZm9sbG93aW5nIHNpZ25hdHVyZToKLQotCWludCBwcm9jKGludCBpbiwgaW50IG91dCwgdm9pZCAqZGF0YSk7Ci0KLS4gaW4sIG91dCBzcGVjaWZpZXMgYSBzZXQgb2YgZmlsZSBkZXNjcmlwdG9ycyB0byB3aGljaCB0aGUgZnVuY3Rpb24KLSAgbXVzdCByZWFkL3dyaXRlIHRoZSBkYXRhIHRoYXQgaXQgbmVlZHMvcHJvZHVjZXMuICBUaGUgZnVuY3Rpb24KLSAgKm11c3QqIGNsb3NlIHRoZXNlIGRlc2NyaXB0b3JzIGJlZm9yZSBpdCByZXR1cm5zLiAgQSBkZXNjcmlwdG9yCi0gIG1heSBiZSAtMSBpZiB0aGUgY2FsbGVyIGRpZCBub3QgY29uZmlndXJlIGEgZGVzY3JpcHRvciBmb3IgdGhhdAotICBkaXJlY3Rpb24uCi0KLS4gZGF0YSBpcyB0aGUgdmFsdWUgdGhhdCB0aGUgY2FsbGVyIGhhcyBzcGVjaWZpZWQgaW4gdGhlIC5kYXRhIG1lbWJlcgotICBvZiBzdHJ1Y3QgYXN5bmMuCi0KLS4gVGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgZnVuY3Rpb24gaXMgMCBvbiBzdWNjZXNzIGFuZCBub24temVybwotICBvbiBmYWlsdXJlLiBJZiB0aGUgZnVuY3Rpb24gaW5kaWNhdGVzIGZhaWx1cmUsIGZpbmlzaF9hc3luYygpIHdpbGwKLSAgcmVwb3J0IGZhaWx1cmUgYXMgd2VsbC4KLQotCi1UaGVyZSBhcmUgc2VyaW91cyByZXN0cmljdGlvbnMgb24gd2hhdCB0aGUgYXN5bmNocm9ub3VzIGZ1bmN0aW9uIGNhbiBkbwotYmVjYXVzZSB0aGlzIGZhY2lsaXR5IGlzIGltcGxlbWVudGVkIGJ5IGEgdGhyZWFkIGluIHRoZSBzYW1lIGFkZHJlc3MKLXNwYWNlIG9uIG1vc3QgcGxhdGZvcm1zICh3aGVuIHB0aHJlYWRzIGlzIGF2YWlsYWJsZSksIGJ1dCBieSBhIHBpcGUgdG8KLWEgZm9ya2VkIHByb2Nlc3Mgb3RoZXJ3aXNlOgotCi0uIEl0IGNhbm5vdCBjaGFuZ2UgdGhlIHByb2dyYW0ncyBzdGF0ZSAoZ2xvYmFsIHZhcmlhYmxlcywgZW52aXJvbm1lbnQsCi0gIGV0Yy4pIGluIGEgd2F5IHRoYXQgdGhlIGNhbGxlciBub3RpY2VzOyBpbiBvdGhlciB3b3JkcywgLmluIGFuZCAub3V0Ci0gIGFyZSB0aGUgb25seSBjb21tdW5pY2F0aW9uIGNoYW5uZWxzIHRvIHRoZSBjYWxsZXIuCi0KLS4gSXQgbXVzdCBub3QgY2hhbmdlIHRoZSBwcm9ncmFtJ3Mgc3RhdGUgdGhhdCB0aGUgY2FsbGVyIG9mIHRoZQotICBmYWNpbGl0eSBhbHNvIHVzZXMuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktc2V0dXAudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXNldHVwLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZWIxZmE5OC4uMDAwMDAwMAotLS0gYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktc2V0dXAudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNDcgKzAsMCBAQAotc2V0dXAgQVBJCi09PT09PT09PT0KLQotVGFsayBhYm91dAotCi0qIHNldHVwX2dpdF9kaXJlY3RvcnkoKQotKiBzZXR1cF9naXRfZGlyZWN0b3J5X2dlbnRseSgpCi0qIGlzX2luc2lkZV9naXRfZGlyKCkKLSogaXNfaW5zaWRlX3dvcmtfdHJlZSgpCi0qIHNldHVwX3dvcmtfdHJlZSgpCi0KLShEc2NobykKLQotUGF0aHNwZWMKLS0tLS0tLS0tCi0KLVNlZSBnbG9zc2FyeS1jb250ZXh0LnR4dCBmb3IgdGhlIHN5bnRheCBvZiBwYXRoc3BlYy4gSW4gbWVtb3J5LCBhCi1wYXRoc3BlYyBzZXQgaXMgcmVwcmVzZW50ZWQgYnkgInN0cnVjdCBwYXRoc3BlYyIgYW5kIGlzIHByZXBhcmVkIGJ5Ci1wYXJzZV9wYXRoc3BlYygpLiBUaGlzIGZ1bmN0aW9uIHRha2VzIHNldmVyYWwgYXJndW1lbnRzOgotCi0tIG1hZ2ljX21hc2sgc3BlY2lmaWVzIHdoYXQgZmVhdHVyZXMgdGhhdCBhcmUgTk9UIHN1cHBvcnRlZCBieSB0aGUKLSAgZm9sbG93aW5nIGNvZGUuIElmIGEgdXNlciBhdHRlbXB0cyB0byB1c2Ugc3VjaCBhIGZlYXR1cmUsCi0gIHBhcnNlX3BhdGhzcGVjKCkgY2FuIHJlamVjdCBpdCBlYXJseS4KLQotLSBmbGFncyBzcGVjaWZpZXMgb3RoZXIgdGhpbmdzIHRoYXQgdGhlIGNhbGxlciB3YW50cyBwYXJzZV9wYXRoc3BlYyB0bwotICBwZXJmb3JtLgotCi0tIHByZWZpeCBhbmQgYXJncyBjb21lIGZyb20gY21kXyogZnVuY3Rpb25zCi0KLXBhcnNlX3BhdGhzcGVjKCkgaGVscHMgY2F0Y2ggdW5zdXBwb3J0ZWQgZmVhdHVyZXMgYW5kIHJlamVjdCB0aGVtCi1wb2xpdGVseS4gQXQgYSBsb3dlciBsZXZlbCwgZGlmZmVyZW50IHBhdGhzcGVjLXJlbGF0ZWQgZnVuY3Rpb25zIG1heQotbm90IHN1cHBvcnQgdGhlIHNhbWUgc2V0IG9mIGZlYXR1cmVzLiBTdWNoIHBhdGhzcGVjLXNlbnNpdGl2ZQotZnVuY3Rpb25zIGFyZSBndWFyZGVkIHdpdGggR1VBUkRfUEFUSFNQRUMoKSwgd2hpY2ggd2lsbCBkaWUgaW4gYW4KLXVuZnJpZW5kbHkgd2F5IHdoZW4gYW4gdW5zdXBwb3J0ZWQgZmVhdHVyZSBpcyByZXF1ZXN0ZWQuCi0KLVRoZSBjb21tYW5kIGRlc2lnbmVycyBhcmUgc3VwcG9zZWQgdG8gbWFrZSBzdXJlIHRoYXQgR1VBUkRfUEFUSFNQRUMoKQotbmV2ZXIgZGllcy4gVGhleSBoYXZlIHRvIG1ha2Ugc3VyZSBhbGwgdW5zdXBwb3J0ZWQgZmVhdHVyZXMgYXJlIGNhdWdodAotYnkgcGFyc2VfcGF0aHNwZWMoKSwgbm90IGJ5IEdVQVJEX1BBVEhTUEVDLiBncmVwcGluZyBHVUFSRF9QQVRIU1BFQygpCi1zaG91bGQgZ2l2ZSB0aGUgZGVzaWduZXJzIGFsbCBwYXRoc3BlYy1zZW5zaXRpdmUgY29kZXBhdGhzIGFuZCB3aGF0Ci1mZWF0dXJlcyB0aGV5IHN1cHBvcnQuCi0KLUEgc2ltaWxhciBwcm9jZXNzIGlzIGFwcGxpZWQgd2hlbiBhIG5ldyBwYXRoc3BlYyBtYWdpYyBpcyBhZGRlZC4gVGhlCi1kZXNpZ25lciBsaWZ0cyB0aGUgR1VBUkRfUEFUSFNQRUMgcmVzdHJpY3Rpb24gaW4gdGhlIGZ1bmN0aW9ucyB0aGF0Ci1zdXBwb3J0IHRoZSBuZXcgbWFnaWMuIEF0IHRoZSBzYW1lIHRpbWUgKHMpaGUgaGFzIHRvIG1ha2Ugc3VyZSB0aGlzCi1uZXcgZmVhdHVyZSB3aWxsIGJlIGNhdWdodCBhdCBwYXJzZV9wYXRoc3BlYygpIGluIGNvbW1hbmRzIHRoYXQgY2Fubm90Ci1oYW5kbGUgdGhlIG5ldyBtYWdpYyBpbiBzb21lIGNhc2VzLiBncmVwcGluZyBwYXJzZV9wYXRoc3BlYygpIHNob3VsZAotaGVscC4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1zaWdjaGFpbi50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktc2lnY2hhaW4udHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5ZTExODllLi4wMDAwMDAwCi0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1zaWdjaGFpbi50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw0MSArMCwwIEBACi1zaWdjaGFpbiBBUEkKLT09PT09PT09PT09PQotCi1Db2RlIG9mdGVuIHdhbnRzIHRvIHNldCBhIHNpZ25hbCBoYW5kbGVyIHRvIGNsZWFuIHVwIHRlbXBvcmFyeSBmaWxlcyBvcgotb3RoZXIgd29yay1pbi1wcm9ncmVzcyB3aGVuIHdlIGRpZSB1bmV4cGVjdGVkbHkuIEZvciBtdWx0aXBsZSBwaWVjZXMgb2YKLWNvZGUgdG8gZG8gdGhpcyB3aXRob3V0IGNvbmZsaWN0aW5nLCBlYWNoIHBpZWNlIG9mIGNvZGUgbXVzdCByZW1lbWJlcgotdGhlIG9sZCB2YWx1ZSBvZiB0aGUgaGFuZGxlciBhbmQgcmVzdG9yZSBpdCBlaXRoZXIgd2hlbjoKLQotICAxLiBUaGUgd29yay1pbi1wcm9ncmVzcyBpcyBmaW5pc2hlZCwgYW5kIHRoZSBoYW5kbGVyIGlzIG5vIGxvbmdlcgotICAgICBuZWNlc3NhcnkuIFRoZSBoYW5kbGVyIHNob3VsZCByZXZlcnQgdG8gdGhlIG9yaWdpbmFsIGJlaGF2aW9yCi0gICAgIChlaXRoZXIgYW5vdGhlciBoYW5kbGVyLCBTSUdfREZMLCBvciBTSUdfSUdOKS4KLQotICAyLiBUaGUgc2lnbmFsIGlzIHJlY2VpdmVkLiBXZSBzaG91bGQgdGhlbiBkbyBvdXIgY2xlYW51cCwgdGhlbiBjaGFpbgotICAgICB0byB0aGUgbmV4dCBoYW5kbGVyIChvciBkaWUgaWYgaXQgaXMgU0lHX0RGTCkuCi0KLVNpZ2NoYWluIGlzIGEgdGlueSBsaWJyYXJ5IGZvciBrZWVwaW5nIGEgc3RhY2sgb2YgaGFuZGxlcnMuIFlvdXIgaGFuZGxlcgotYW5kIGluc3RhbGxhdGlvbiBjb2RlIHNob3VsZCBsb29rIHNvbWV0aGluZyBsaWtlOgotCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSAgdm9pZCBjbGVhbl9mb29fb25fc2lnbmFsKGludCBzaWcpCi0gIHsKLQkgIGNsZWFuX2ZvbygpOwotCSAgc2lnY2hhaW5fcG9wKHNpZyk7Ci0JICByYWlzZShzaWcpOwotICB9Ci0KLSAgdm9pZCBvdGhlcl9mdW5jKCkKLSAgewotCSAgc2lnY2hhaW5fcHVzaF9jb21tb24oY2xlYW5fZm9vX29uX3NpZ25hbCk7Ci0JICBtZXNzX3VwX2ZvbygpOwotCSAgY2xlYW5fZm9vKCk7Ci0gIH0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1IYW5kbGVycyBhcmUgZ2l2ZW4gdGhlIHR5cGVkZWYgb2Ygc2lnY2hhaW5fZnVuLiBUaGlzIGlzIHRoZSBzYW1lIHR5cGUKLXRoYXQgaXMgZ2l2ZW4gdG8gc2lnbmFsKCkgb3Igc2lnYWN0aW9uKCkuIEl0IGlzIHBlcmZlY3RseSByZWFzb25hYmxlIHRvCi1wdXNoIFNJR19ERkwgb3IgU0lHX0lHTiBvbnRvIHRoZSBzdGFjay4KLQotWW91IGNhbiBzaWdjaGFpbl9wdXNoIGFuZCBzaWdjaGFpbl9wb3AgaW5kaXZpZHVhbCBzaWduYWxzLiBGb3IKLWNvbnZlbmllbmNlLCBzaWdjaGFpbl9wdXNoX2NvbW1vbiB3aWxsIHB1c2ggdGhlIGhhbmRsZXIgb250byB0aGUgc3RhY2sKLWZvciBtYW55IGNvbW1vbiBzaWduYWxzLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXN1Ym1vZHVsZS1jb25maWcudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXN1Ym1vZHVsZS1jb25maWcudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmYjA2MDg5Li4wMDAwMDAwCi0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1zdWJtb2R1bGUtY29uZmlnLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDY2ICswLDAgQEAKLXN1Ym1vZHVsZSBjb25maWcgY2FjaGUgQVBJCi09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1UaGUgc3VibW9kdWxlIGNvbmZpZyBjYWNoZSBBUEkgYWxsb3dzIHRvIHJlYWQgc3VibW9kdWxlCi1jb25maWd1cmF0aW9ucy9pbmZvcm1hdGlvbiBmcm9tIHNwZWNpZmllZCByZXZpc2lvbnMuIEludGVybmFsbHkKLWluZm9ybWF0aW9uIGlzIGxhemlseSByZWFkIGludG8gYSBjYWNoZSB0aGF0IGlzIHVzZWQgdG8gYXZvaWQKLXVubmVjZXNzYXJ5IHBhcnNpbmcgb2YgdGhlIHNhbWUgLmdpdG1vZHVsZXMgZmlsZXMuIExvb2t1cHMgY2FuIGJlIGRvbmUgYnkKLXN1Ym1vZHVsZSBwYXRoIG9yIG5hbWUuCi0KLVVzYWdlCi0tLS0tLQotCi1UbyBpbml0aWFsaXplIHRoZSBjYWNoZSB3aXRoIGNvbmZpZ3VyYXRpb25zIGZyb20gdGhlIHdvcmt0cmVlIHRoZSBjYWxsZXIKLXR5cGljYWxseSBmaXJzdCBjYWxscyBgZ2l0bW9kdWxlc19jb25maWcoKWAgdG8gcmVhZCB2YWx1ZXMgZnJvbSB0aGUKLXdvcmt0cmVlIC5naXRtb2R1bGVzIGFuZCB0aGVuIHRvIG92ZXJsYXkgdGhlIGxvY2FsIGdpdCBjb25maWcgdmFsdWVzCi1gcGFyc2Vfc3VibW9kdWxlX2NvbmZpZ19vcHRpb24oKWAgZnJvbSB0aGUgY29uZmlnIHBhcnNpbmcKLWluZnJhc3RydWN0dXJlLgotCi1UaGUgY2FsbGVyIGNhbiBsb29rIHVwIGluZm9ybWF0aW9uIGFib3V0IHN1Ym1vZHVsZXMgYnkgdXNpbmcgdGhlCi1gc3VibW9kdWxlX2Zyb21fcGF0aCgpYCBvciBgc3VibW9kdWxlX2Zyb21fbmFtZSgpYCBmdW5jdGlvbnMuIFRoZXkgcmV0dXJuCi1hIGBzdHJ1Y3Qgc3VibW9kdWxlYCB3aGljaCBjb250YWlucyB0aGUgdmFsdWVzLiBUaGUgQVBJIGF1dG9tYXRpY2FsbHkKLWluaXRpYWxpemVzIGFuZCBhbGxvY2F0ZXMgdGhlIG5lZWRlZCBpbmZyYXN0cnVjdHVyZSBvbi1kZW1hbmQuIElmIHRoZQotY2FsbGVyIGRvZXMgb25seSB3YW50IHRvIGxvb2t1cCB2YWx1ZXMgZnJvbSByZXZpc2lvbnMgdGhlIGluaXRpYWxpemF0aW9uCi1jYW4gYmUgc2tpcHBlZC4KLQotSWYgdGhlIGludGVybmFsIGNhY2hlIG1pZ2h0IGdyb3cgdG9vIGJpZyBvciB3aGVuIHRoZSBjYWxsZXIgaXMgZG9uZSB3aXRoCi10aGUgQVBJLCBhbGwgaW50ZXJuYWxseSBjYWNoZWQgdmFsdWVzIGNhbiBiZSBmcmVlZCB3aXRoIHN1Ym1vZHVsZV9mcmVlKCkuCi0KLURhdGEgU3RydWN0dXJlcwotLS0tLS0tLS0tLS0tLS0tCi0KLWBzdHJ1Y3Qgc3VibW9kdWxlYDo6Ci0KLQlUaGlzIHN0cnVjdHVyZSBpcyB1c2VkIHRvIHJldHVybiB0aGUgaW5mb3JtYXRpb24gYWJvdXQgb25lCi0Jc3VibW9kdWxlIGZvciBhIGNlcnRhaW4gcmV2aXNpb24uIEl0IGlzIHJldHVybmVkIGJ5IHRoZSBsb29rdXAKLQlmdW5jdGlvbnMuCi0KLUZ1bmN0aW9ucwotLS0tLS0tLS0tCi0KLWB2b2lkIHN1Ym1vZHVsZV9mcmVlKHN0cnVjdCByZXBvc2l0b3J5ICpyKWA6OgotCi0JVXNlIHRoZXNlIHRvIGZyZWUgdGhlIGludGVybmFsbHkgY2FjaGVkIHZhbHVlcy4KLQotYGludCBwYXJzZV9zdWJtb2R1bGVfY29uZmlnX29wdGlvbihjb25zdCBjaGFyICp2YXIsIGNvbnN0IGNoYXIgKnZhbHVlKWA6OgotCi0JQ2FuIGJlIHBhc3NlZCB0byB0aGUgY29uZmlnIHBhcnNpbmcgaW5mcmFzdHJ1Y3R1cmUgdG8gcGFyc2UKLQlsb2NhbCAod29ya3RyZWUpIHN1Ym1vZHVsZSBjb25maWd1cmF0aW9ucy4KLQotYGNvbnN0IHN0cnVjdCBzdWJtb2R1bGUgKnN1Ym1vZHVsZV9mcm9tX3BhdGgoY29uc3QgdW5zaWduZWQgY2hhciAqdHJlZWlzaF9uYW1lLCBjb25zdCBjaGFyICpwYXRoKWA6OgotCi0JR2l2ZW4gYSB0cmVlLWlzaCBpbiB0aGUgc3VwZXJwcm9qZWN0IGFuZCBhIHBhdGgsIHJldHVybiB0aGUKLQlzdWJtb2R1bGUgdGhhdCBpcyBib3VuZCBhdCB0aGUgcGF0aCBpbiB0aGUgbmFtZWQgdHJlZS4KLQotYGNvbnN0IHN0cnVjdCBzdWJtb2R1bGUgKnN1Ym1vZHVsZV9mcm9tX25hbWUoY29uc3QgdW5zaWduZWQgY2hhciAqdHJlZWlzaF9uYW1lLCBjb25zdCBjaGFyICpuYW1lKWA6OgotCi0JVGhlIHNhbWUgYXMgYWJvdmUgYnV0IGxvb2t1cCBieSBuYW1lLgotCi1XaGVuZXZlciBhIHN1Ym1vZHVsZSBjb25maWd1cmF0aW9uIGlzIHBhcnNlZCBpbiBgcGFyc2Vfc3VibW9kdWxlX2NvbmZpZ19vcHRpb25gCi12aWEgZS5nLiBgZ2l0bW9kdWxlc19jb25maWcoKWAsIGl0IHdpbGwgb3ZlcndyaXRlIHRoZSBudWxsX3NoYTEgZW50cnkuCi1TbyBpbiB0aGUgbm9ybWFsIGNhc2UsIHdoZW4gSEVBRDouZ2l0bW9kdWxlcyBpcyBwYXJzZWQgZmlyc3QgYW5kIHRoZW4gb3ZlcmxheWVkCi13aXRoIHRoZSByZXBvc2l0b3J5IGNvbmZpZ3VyYXRpb24sIHRoZSBudWxsX3NoYTEgZW50cnkgY29udGFpbnMgdGhlIGxvY2FsCi1jb25maWd1cmF0aW9uIG9mIGEgc3VibW9kdWxlIChlLmcuIGNvbnNvbGlkYXRlZCB2YWx1ZXMgZnJvbSBsb2NhbCBnaXQKLWNvbmZpZ3VyYXRpb24gYW5kIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIGluIHRoZSB3b3JrdHJlZSkuCi0KLUZvciBhbiBleGFtcGxlIHVzYWdlIHNlZSB0ZXN0LXN1Ym1vZHVsZS1jb25maWcuYy4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS10cmFjZS50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktdHJhY2UudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmYWRiNTk3Li4wMDAwMDAwCi0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS10cmFjZS50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNDAgKzAsMCBAQAotdHJhY2UgQVBJCi09PT09PT09PT0KLQotVGhlIHRyYWNlIEFQSSBjYW4gYmUgdXNlZCB0byBwcmludCBkZWJ1ZyBtZXNzYWdlcyB0byBzdGRlcnIgb3IgYSBmaWxlLiBUcmFjZQotY29kZSBpcyBpbmFjdGl2ZSB1bmxlc3MgZXhwbGljaXRseSBlbmFibGVkIGJ5IHNldHRpbmcgYEdJVF9UUkFDRSpgIGVudmlyb25tZW50Ci12YXJpYWJsZXMuCi0KLVRoZSB0cmFjZSBpbXBsZW1lbnRhdGlvbiBhdXRvbWF0aWNhbGx5IGFkZHMgYHRpbWVzdGFtcCBmaWxlOmxpbmUgLi4uIFxuYCB0bwotYWxsIHRyYWNlIG1lc3NhZ2VzLiBFLmcuOgotCi0tLS0tLS0tLS0tLS0KLTIzOjU5OjU5LjEyMzQ1NiBnaXQuYzozMTIgICAgICAgICAgICAgICB0cmFjZTogYnVpbHQtaW46IGdpdCAnZm9vJwotMDA6MDA6MDAuMDAwMDAxIGJ1aWx0aW4vZm9vLmM6OTkgICAgICAgIGZvbzogc29tZSBtZXNzYWdlCi0tLS0tLS0tLS0tLS0KLQotRGF0YSBTdHJ1Y3R1cmVzCi0tLS0tLS0tLS0tLS0tLS0KLQotYHN0cnVjdCB0cmFjZV9rZXlgOjoKLQotCURlZmluZXMgYSB0cmFjZSBrZXkgKG9yIGNhdGVnb3J5KS4gVGhlIGRlZmF1bHQgKGZvciBBUEkgZnVuY3Rpb25zIHRoYXQKLQlkb24ndCB0YWtlIGEga2V5KSBpcyBgR0lUX1RSQUNFYC4KLSsKLUUuZy4gdG8gZGVmaW5lIGEgdHJhY2Uga2V5IGNvbnRyb2xsZWQgYnkgZW52aXJvbm1lbnQgdmFyaWFibGUgYEdJVF9UUkFDRV9GT09gOgotKwotLS0tLS0tLS0tLS0tCi1zdGF0aWMgc3RydWN0IHRyYWNlX2tleSB0cmFjZV9mb28gPSBUUkFDRV9LRVlfSU5JVChGT08pOwotCi1zdGF0aWMgdm9pZCB0cmFjZV9wcmludF9mb28oY29uc3QgY2hhciAqbWVzc2FnZSkKLXsKLQl0cmFjZV9wcmludGZfa2V5KCZ0cmFjZV9mb28sICIlcyIsIG1lc3NhZ2UpOwotfQotLS0tLS0tLS0tLS0tCi0rCi1Ob3RlOiBkb24ndCB1c2UgYGNvbnN0YCBhcyB0aGUgdHJhY2UgaW1wbGVtZW50YXRpb24gc3RvcmVzIGludGVybmFsIHN0YXRlIGluCi10aGUgYHRyYWNlX2tleWAgc3RydWN0dXJlLgotCi1GdW5jdGlvbnMKLS0tLS0tLS0tLQotCi1gaW50IHRyYWNlX3dhbnQoc3RydWN0IHRyYWNlX2tleSAqa2V5KWA6OgotCi0JQ2hlY2tzIHdoZXRoZXIgdGhlIHRyYWNlIGtleSBpcyBlbmFibGVkLiBVc2VkIHRvIHByZXZlbnQgZXhwZW5zaXZlCi0Jc3RyaW5nIGZvcm1hdHRpbmcgYmVmb3JlIGNhbGxpbmcgb25lIG9mIHRoZSBwcmludGluZyBBUElzLgotCi1gdm9pZCB0cmFjZV9kaXNhYmxlKHN0cnVjdCB0cmFjZV9rZXkgKmtleSlgOjoKLQotCURpc2FibGVzIHRyYWNpbmcgZm9yIHRoZSBzcGVjaWZpZWQga2V5LCBldmVuIGlmIHRoZSBlbnZpcm9ubWVudAotCXZhcmlhYmxlIHdhcyBzZXQuCi0KLWB2b2lkIHRyYWNlX3ByaW50Zihjb25zdCBjaGFyICpmb3JtYXQsIC4uLilgOjoKLWB2b2lkIHRyYWNlX3ByaW50Zl9rZXkoc3RydWN0IHRyYWNlX2tleSAqa2V5LCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLilgOjoKLQotCVByaW50cyBhIGZvcm1hdHRlZCBtZXNzYWdlLCBzaW1pbGFyIHRvIHByaW50Zi4KLQotYHZvaWQgdHJhY2VfYXJndl9wcmludGYoY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKWBgOjoKLQotCVByaW50cyBhIGZvcm1hdHRlZCBtZXNzYWdlLCBmb2xsb3dlZCBieSBhIHF1b3RlZCBsaXN0IG9mIGFyZ3VtZW50cy4KLQotYHZvaWQgdHJhY2Vfc3RyYnVmKHN0cnVjdCB0cmFjZV9rZXkgKmtleSwgY29uc3Qgc3RydWN0IHN0cmJ1ZiAqZGF0YSlgOjoKLQotCVByaW50cyB0aGUgc3RyYnVmLCB3aXRob3V0IGFkZGl0aW9uYWwgZm9ybWF0dGluZyAoaS5lLiBkb2Vzbid0Ci0JY2hva2Ugb24gYCVgIG9yIGV2ZW4gYFwwYCkuCi0KLWB1aW50NjRfdCBnZXRuYW5vdGltZSh2b2lkKWA6OgotCi0JUmV0dXJucyBuYW5vc2Vjb25kcyBzaW5jZSB0aGUgZXBvY2ggKDAxLzAxLzE5NzApLCB0eXBpY2FsbHkgdXNlZAotCWZvciBwZXJmb3JtYW5jZSBtZWFzdXJlbWVudHMuCi0rCi1DdXJyZW50bHkgdGhlcmUgYXJlIGhpZ2ggcHJlY2lzaW9uIHRpbWVyIGltcGxlbWVudGF0aW9ucyBmb3IgTGludXggKHVzaW5nCi1gY2xvY2tfZ2V0dGltZShDTE9DS19NT05PVE9OSUMpYCkgYW5kIFdpbmRvd3MgKGBRdWVyeVBlcmZvcm1hbmNlQ291bnRlcmApLgotT3RoZXIgcGxhdGZvcm1zIHVzZSBgZ2V0dGltZW9mZGF5YCBhcyB0aW1lIHNvdXJjZS4KLQotYHZvaWQgdHJhY2VfcGVyZm9ybWFuY2UodWludDY0X3QgbmFub3MsIGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKWA6OgotYHZvaWQgdHJhY2VfcGVyZm9ybWFuY2Vfc2luY2UodWludDY0X3Qgc3RhcnQsIGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKWA6OgotCi0JUHJpbnRzIHRoZSBlbGFwc2VkIHRpbWUgKGluIG5hbm9zZWNvbmRzKSwgb3IgZWxhcHNlZCB0aW1lIHNpbmNlCi0JYHN0YXJ0YCwgZm9sbG93ZWQgYnkgYSBmb3JtYXR0ZWQgbWVzc2FnZS4gRW5hYmxlZCB2aWEgZW52aXJvbm1lbnQKLQl2YXJpYWJsZSBgR0lUX1RSQUNFX1BFUkZPUk1BTkNFYC4gVXNlZCBmb3IgbWFudWFsIHByb2ZpbGluZywgZS5nLjoKLSsKLS0tLS0tLS0tLS0tLQotdWludDY0X3Qgc3RhcnQgPSBnZXRuYW5vdGltZSgpOwotLyogY29kZSBzZWN0aW9uIHRvIG1lYXN1cmUgKi8KLXRyYWNlX3BlcmZvcm1hbmNlX3NpbmNlKHN0YXJ0LCAiZm9vYmFyIik7Ci0tLS0tLS0tLS0tLS0KLSsKLS0tLS0tLS0tLS0tLQotdWludDY0X3QgdCA9IDA7Ci1mb3IgKDs7KSB7Ci0JLyogaWdub3JlICovCi0JdCAtPSBnZXRuYW5vdGltZSgpOwotCS8qIGNvZGUgc2VjdGlvbiB0byBtZWFzdXJlICovCi0JdCArPSBnZXRuYW5vdGltZSgpOwotCS8qIGlnbm9yZSAqLwotfQotdHJhY2VfcGVyZm9ybWFuY2UodCwgImZyb3R6Iik7Ci0tLS0tLS0tLS0tLS0KLQotQnVncyAmIENhdmVhdHMKLS0tLS0tLS0tLS0tLS0tCi0KLUdJVF9UUkFDRV8qIGVudmlyb25tZW50IHZhcmlhYmxlcyBjYW4gYmUgdXNlZCB0byB0ZWxsIEdpdCB0byBzaG93Ci10cmFjZSBvdXRwdXQgdG8gaXRzIHN0YW5kYXJkIGVycm9yIHN0cmVhbS4gR2l0IGNhbiBvZnRlbiBzcGF3biBhIHBhZ2VyCi1pbnRlcm5hbGx5IHRvIHJ1biBpdHMgc3ViY29tbWFuZCBhbmQgc2VuZCBpdHMgc3RhbmRhcmQgb3V0cHV0IGFuZAotc3RhbmRhcmQgZXJyb3IgdG8gaXQuCi0KLUJlY2F1c2UgR0lUX1RSQUNFX1BFUkZPUk1BTkNFIHRyYWNlIGlzIGdlbmVyYXRlZCBvbmx5IGF0IHRoZSB2ZXJ5IGVuZAotb2YgdGhlIHByb2dyYW0gd2l0aCBhdGV4aXQoKSwgd2hpY2ggaGFwcGVucyBhZnRlciB0aGUgcGFnZXIgZXhpdHMsIGl0Ci13b3VsZCBub3Qgd29yayB3ZWxsIGlmIHlvdSBzZW5kIGl0cyBsb2cgdG8gdGhlIHN0YW5kYXJkIGVycm9yIG91dHB1dAotYW5kIGxldCBHaXQgc3Bhd24gdGhlIHBhZ2VyIGF0IHRoZSBzYW1lIHRpbWUuCi0KLUFzIGEgd29yayBhcm91bmQsIHlvdSBjYW4gZm9yIGV4YW1wbGUgdXNlICctLW5vLXBhZ2VyJywgb3Igc2V0Ci1HSVRfVFJBQ0VfUEVSRk9STUFOQ0UgdG8gYW5vdGhlciBmaWxlIGRlc2NyaXB0b3Igd2hpY2ggaXMgcmVkaXJlY3RlZAotdG8gc3RkZXJyLCBvciBzZXQgR0lUX1RSQUNFX1BFUkZPUk1BTkNFIHRvIGEgZmlsZSBzcGVjaWZpZWQgYnkgaXRzCi1hYnNvbHV0ZSBwYXRoLgotCi1Gb3IgZXhhbXBsZSBpbnN0ZWFkIG9mIHRoZSBmb2xsb3dpbmcgY29tbWFuZCB3aGljaCBieSBkZWZhdWx0IG1heSBub3QKLXByaW50IGFueSBwZXJmb3JtYW5jZSBpbmZvcm1hdGlvbjoKLQotLS0tLS0tLS0tLS0tCi1HSVRfVFJBQ0VfUEVSRk9STUFOQ0U9MiBnaXQgbG9nIC0xCi0tLS0tLS0tLS0tLS0KLQoteW91IG1heSB3YW50IHRvIHVzZToKLQotLS0tLS0tLS0tLS0tCi1HSVRfVFJBQ0VfUEVSRk9STUFOQ0U9MiBnaXQgLS1uby1wYWdlciBsb2cgLTEKLS0tLS0tLS0tLS0tLQotCi1vcjoKLQotLS0tLS0tLS0tLS0tCi1HSVRfVFJBQ0VfUEVSRk9STUFOQ0U9MyAzPiYyIGdpdCBsb2cgLTEKLS0tLS0tLS0tLS0tLQotCi1vcjoKLQotLS0tLS0tLS0tLS0tCi1HSVRfVFJBQ0VfUEVSRk9STUFOQ0U9L3BhdGgvdG8vbG9nL2ZpbGUgZ2l0IGxvZyAtMQotLS0tLS0tLS0tLS0tCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktdHJhY2UyLnR4dCBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS10cmFjZTIudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRmMDdjZWEKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktdHJhY2UyLnR4dApAQCAtMCwwICsxLDExNzAgQEAKKz0gVHJhY2UyIEFQSQorCitUaGUgVHJhY2UyIEFQSSBjYW4gYmUgdXNlZCB0byBwcmludCBkZWJ1ZywgcGVyZm9ybWFuY2UsIGFuZCB0ZWxlbWV0cnkKK2luZm9ybWF0aW9uIHRvIHN0ZGVyciBvciBhIGZpbGUuICBUaGUgVHJhY2UyIGZlYXR1cmUgaXMgaW5hY3RpdmUgdW5sZXNzCitleHBsaWNpdGx5IGVuYWJsZWQgYnkgZW5hYmxpbmcgb25lIG9yIG1vcmUgVHJhY2UyIFRhcmdldHMuCisKK1RoZSBUcmFjZTIgQVBJIGlzIGludGVuZGVkIHRvIHJlcGxhY2UgdGhlIGV4aXN0aW5nIChUcmFjZTEpCitwcmludGYtc3R5bGUgdHJhY2luZyBwcm92aWRlZCBieSB0aGUgZXhpc3RpbmcgYEdJVF9UUkFDRWAgYW5kCitgR0lUX1RSQUNFX1BFUkZPUk1BTkNFYCBmYWNpbGl0aWVzLiAgRHVyaW5nIGluaXRpYWwgaW1wbGVtZW50YXRpb24sCitUcmFjZTIgYW5kIFRyYWNlMSBtYXkgb3BlcmF0ZSBpbiBwYXJhbGxlbC4KKworVGhlIFRyYWNlMiBBUEkgZGVmaW5lcyBhIHNldCBvZiBoaWdoLWxldmVsIG1lc3NhZ2VzIHdpdGgga25vd24gZmllbGRzLAorc3VjaCBhcyAoYHN0YXJ0YDogYGFyZ3ZgKSBhbmQgKGBleGl0YDoge2BleGl0LWNvZGVgLCBgZWxhcHNlZC10aW1lYH0pLgorCitUcmFjZTIgaW5zdHJ1bWVudGF0aW9uIHRocm91Z2hvdXQgdGhlIEdpdCBjb2RlIGJhc2Ugc2VuZHMgVHJhY2UyCittZXNzYWdlcyB0byB0aGUgZW5hYmxlZCBUcmFjZTIgVGFyZ2V0cy4gIFRhcmdldHMgdHJhbnNmb3JtIHRoZXNlCittZXNzYWdlcyBjb250ZW50IGludG8gcHVycG9zZS1zcGVjaWZpYyBmb3JtYXRzIGFuZCB3cml0ZSBldmVudHMgdG8KK3RoZWlyIGRhdGEgc3RyZWFtcy4gIEluIHRoaXMgbWFubmVyLCB0aGUgVHJhY2UyIEFQSSBjYW4gZHJpdmUKK21hbnkgZGlmZmVyZW50IHR5cGVzIG9mIGFuYWx5c2lzLgorCitUYXJnZXRzIGFyZSBkZWZpbmVkIHVzaW5nIGEgVlRhYmxlIGFsbG93aW5nIGVhc3kgZXh0ZW5zaW9uIHRvIG90aGVyCitmb3JtYXRzIGluIHRoZSBmdXR1cmUuICBUaGlzIG1pZ2h0IGJlIHVzZWQgdG8gZGVmaW5lIGEgYmluYXJ5IGZvcm1hdCwKK2ZvciBleGFtcGxlLgorCitUcmFjZTIgaXMgY29udHJvbGxlZCB1c2luZyBgdHJhY2UyLipgIGNvbmZpZyB2YWx1ZXMgaW4gdGhlIHN5c3RlbSBhbmQKK2dsb2JhbCBjb25maWcgZmlsZXMgYW5kIGBHSVRfVFJBQ0UyKmAgZW52aXJvbm1lbnQgdmFyaWFibGVzLiAgVHJhY2UyIGRvZXMKK25vdCByZWFkIGZyb20gcmVwbyBsb2NhbCBvciB3b3JrdHJlZSBjb25maWcgZmlsZXMgb3IgcmVzcGVjdCBgLWNgCitjb21tYW5kIGxpbmUgY29uZmlnIHNldHRpbmdzLgorCis9PSBUcmFjZTIgVGFyZ2V0cworCitUcmFjZTIgZGVmaW5lcyB0aGUgZm9sbG93aW5nIHNldCBvZiBUcmFjZTIgVGFyZ2V0cy4KK0Zvcm1hdCBkZXRhaWxzIGFyZSBnaXZlbiBpbiBhIGxhdGVyIHNlY3Rpb24uCisKKz09PSBUaGUgTm9ybWFsIEZvcm1hdCBUYXJnZXQKKworVGhlIG5vcm1hbCBmb3JtYXQgdGFyZ2V0IGlzIGEgdHJhZGl0aW9uIHByaW50ZiBmb3JtYXQgYW5kIHNpbWlsYXIKK3RvIEdJVF9UUkFDRSBmb3JtYXQuICBUaGlzIGZvcm1hdCBpcyBlbmFibGVkIHdpdGggdGhlIGBHSVRfVFJBQ0UyYAorZW52aXJvbm1lbnQgdmFyaWFibGUgb3IgdGhlIGB0cmFjZTIubm9ybWFsVGFyZ2V0YCBzeXN0ZW0gb3IgZ2xvYmFsCitjb25maWcgc2V0dGluZy4KKworRm9yIGV4YW1wbGUKKworLS0tLS0tLS0tLS0tCiskIGV4cG9ydCBHSVRfVFJBQ0UyPX4vbG9nLm5vcm1hbAorJCBnaXQgdmVyc2lvbgorZ2l0IHZlcnNpb24gMi4yMC4xLjE1NS5nNDI2Yzk2ZmNkYgorLS0tLS0tLS0tLS0tCisKK29yCisKKy0tLS0tLS0tLS0tLQorJCBnaXQgY29uZmlnIC0tZ2xvYmFsIHRyYWNlMi5ub3JtYWxUYXJnZXQgfi9sb2cubm9ybWFsCiskIGdpdCB2ZXJzaW9uCitnaXQgdmVyc2lvbiAyLjIwLjEuMTU1Lmc0MjZjOTZmY2RiCistLS0tLS0tLS0tLS0KKworeWllbGRzCisKKy0tLS0tLS0tLS0tLQorJCBjYXQgfi9sb2cubm9ybWFsCisxMjoyODo0Mi42MjAwMDkgY29tbW9uLW1haW4uYzozOCAgICAgICAgICAgICAgICAgIHZlcnNpb24gMi4yMC4xLjE1NS5nNDI2Yzk2ZmNkYgorMTI6Mjg6NDIuNjIwOTg5IGNvbW1vbi1tYWluLmM6MzkgICAgICAgICAgICAgICAgICBzdGFydCBnaXQgdmVyc2lvbgorMTI6Mjg6NDIuNjIxMTAxIGdpdC5jOjQzMiAgICAgICAgICAgICAgICAgICAgICAgICBjbWRfbmFtZSB2ZXJzaW9uICh2ZXJzaW9uKQorMTI6Mjg6NDIuNjIxMjE1IGdpdC5jOjY2MiAgICAgICAgICAgICAgICAgICAgICAgICBleGl0IGVsYXBzZWQ6MC4wMDEyMjcgY29kZTowCisxMjoyODo0Mi42MjEyNTAgdHJhY2UyL3RyMl90Z3Rfbm9ybWFsLmM6MTI0ICAgICAgIGF0ZXhpdCBlbGFwc2VkOjAuMDAxMjY1IGNvZGU6MAorLS0tLS0tLS0tLS0tCisKKz09PSBUaGUgUGVyZm9ybWFuY2UgRm9ybWF0IFRhcmdldAorCitUaGUgcGVyZm9ybWFuY2UgZm9ybWF0IHRhcmdldCAoUEVSRikgaXMgYSBjb2x1bW4tYmFzZWQgZm9ybWF0IHRvCityZXBsYWNlIEdJVF9UUkFDRV9QRVJGT1JNQU5DRSBhbmQgaXMgc3VpdGFibGUgZm9yIGRldmVsb3BtZW50IGFuZAordGVzdGluZywgcG9zc2libHkgdG8gY29tcGxlbWVudCB0b29scyBsaWtlIGdwcm9mLiAgVGhpcyBmb3JtYXQgaXMKK2VuYWJsZWQgd2l0aCB0aGUgYEdJVF9UUkFDRTJfUEVSRmAgZW52aXJvbm1lbnQgdmFyaWFibGUgb3IgdGhlCitgdHJhY2UyLnBlcmZUYXJnZXRgIHN5c3RlbSBvciBnbG9iYWwgY29uZmlnIHNldHRpbmcuCisKK0ZvciBleGFtcGxlCisKKy0tLS0tLS0tLS0tLQorJCBleHBvcnQgR0lUX1RSQUNFMl9QRVJGPX4vbG9nLnBlcmYKKyQgZ2l0IHZlcnNpb24KK2dpdCB2ZXJzaW9uIDIuMjAuMS4xNTUuZzQyNmM5NmZjZGIKKy0tLS0tLS0tLS0tLQorCitvcgorCistLS0tLS0tLS0tLS0KKyQgZ2l0IGNvbmZpZyAtLWdsb2JhbCB0cmFjZTIucGVyZlRhcmdldCB+L2xvZy5wZXJmCiskIGdpdCB2ZXJzaW9uCitnaXQgdmVyc2lvbiAyLjIwLjEuMTU1Lmc0MjZjOTZmY2RiCistLS0tLS0tLS0tLS0KKworeWllbGRzCisKKy0tLS0tLS0tLS0tLQorJCBjYXQgfi9sb2cucGVyZgorMTI6Mjg6NDIuNjIwNjc1IGNvbW1vbi1tYWluLmM6MzggICAgICAgICAgICAgICAgICB8IGQwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgdmVyc2lvbiAgICAgIHwgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgICB8IDIuMjAuMS4xNTUuZzQyNmM5NmZjZGIKKzEyOjI4OjQyLjYyMTAwMSBjb21tb24tbWFpbi5jOjM5ICAgICAgICAgICAgICAgICAgfCBkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHN0YXJ0ICAgICAgICB8ICAgICB8ICAwLjAwMTE3MyB8ICAgICAgICAgICB8ICAgICAgICAgICAgfCBnaXQgdmVyc2lvbgorMTI6Mjg6NDIuNjIxMTExIGdpdC5jOjQzMiAgICAgICAgICAgICAgICAgICAgICAgICB8IGQwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgY21kX25hbWUgICAgIHwgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgICB8IHZlcnNpb24gKHZlcnNpb24pCisxMjoyODo0Mi42MjEyMjUgZ2l0LmM6NjYyICAgICAgICAgICAgICAgICAgICAgICAgIHwgZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCBleGl0ICAgICAgICAgfCAgICAgfCAgMC4wMDEyMjcgfCAgICAgICAgICAgfCAgICAgICAgICAgIHwgY29kZTowCisxMjoyODo0Mi42MjEyNTkgdHJhY2UyL3RyMl90Z3RfcGVyZi5jOjIxMSAgICAgICAgIHwgZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCBhdGV4aXQgICAgICAgfCAgICAgfCAgMC4wMDEyNjUgfCAgICAgICAgICAgfCAgICAgICAgICAgIHwgY29kZTowCistLS0tLS0tLS0tLS0KKworPT09IFRoZSBFdmVudCBGb3JtYXQgVGFyZ2V0CisKK1RoZSBldmVudCBmb3JtYXQgdGFyZ2V0IGlzIGEgSlNPTi1iYXNlZCBmb3JtYXQgb2YgZXZlbnQgZGF0YSBzdWl0YWJsZQorZm9yIHRlbGVtZXRyeSBhbmFseXNpcy4gIFRoaXMgZm9ybWF0IGlzIGVuYWJsZWQgd2l0aCB0aGUgYEdJVF9UUkFDRTJfRVZFTlRgCitlbnZpcm9ubWVudCB2YXJpYWJsZSBvciB0aGUgYHRyYWNlMi5ldmVudFRhcmdldGAgc3lzdGVtIG9yIGdsb2JhbCBjb25maWcKK3NldHRpbmcuCisKK0ZvciBleGFtcGxlCisKKy0tLS0tLS0tLS0tLQorJCBleHBvcnQgR0lUX1RSQUNFMl9FVkVOVD1+L2xvZy5ldmVudAorJCBnaXQgdmVyc2lvbgorZ2l0IHZlcnNpb24gMi4yMC4xLjE1NS5nNDI2Yzk2ZmNkYgorLS0tLS0tLS0tLS0tCisKK29yCisKKy0tLS0tLS0tLS0tLQorJCBnaXQgY29uZmlnIC0tZ2xvYmFsIHRyYWNlMi5ldmVudFRhcmdldCB+L2xvZy5ldmVudAorJCBnaXQgdmVyc2lvbgorZ2l0IHZlcnNpb24gMi4yMC4xLjE1NS5nNDI2Yzk2ZmNkYgorLS0tLS0tLS0tLS0tCisKK3lpZWxkcworCistLS0tLS0tLS0tLS0KKyQgY2F0IH4vbG9nLmV2ZW50Cit7ImV2ZW50IjoidmVyc2lvbiIsInNpZCI6InNpZCI6IjIwMTkwNDA4VDE5MTYxMC41MDcwMThaLUg5YjY4YzM1Zi1QMDAwMDU5YTgiLCJ0aHJlYWQiOiJtYWluIiwidGltZSI6IjIwMTktMDEtMTZUMTc6Mjg6NDIuNjIwNzEzWiIsImZpbGUiOiJjb21tb24tbWFpbi5jIiwibGluZSI6MzgsImV2dCI6IjIiLCJleGUiOiIyLjIwLjEuMTU1Lmc0MjZjOTZmY2RiIn0KK3siZXZlbnQiOiJzdGFydCIsInNpZCI6IjIwMTkwNDA4VDE5MTYxMC41MDcwMThaLUg5YjY4YzM1Zi1QMDAwMDU5YTgiLCJ0aHJlYWQiOiJtYWluIiwidGltZSI6IjIwMTktMDEtMTZUMTc6Mjg6NDIuNjIxMDI3WiIsImZpbGUiOiJjb21tb24tbWFpbi5jIiwibGluZSI6MzksInRfYWJzIjowLjAwMTE3MywiYXJndiI6WyJnaXQiLCJ2ZXJzaW9uIl19Cit7ImV2ZW50IjoiY21kX25hbWUiLCJzaWQiOiIyMDE5MDQwOFQxOTE2MTAuNTA3MDE4Wi1IOWI2OGMzNWYtUDAwMDA1OWE4IiwidGhyZWFkIjoibWFpbiIsInRpbWUiOiIyMDE5LTAxLTE2VDE3OjI4OjQyLjYyMTEyMloiLCJmaWxlIjoiZ2l0LmMiLCJsaW5lIjo0MzIsIm5hbWUiOiJ2ZXJzaW9uIiwiaGllcmFyY2h5IjoidmVyc2lvbiJ9Cit7ImV2ZW50IjoiZXhpdCIsInNpZCI6IjIwMTkwNDA4VDE5MTYxMC41MDcwMThaLUg5YjY4YzM1Zi1QMDAwMDU5YTgiLCJ0aHJlYWQiOiJtYWluIiwidGltZSI6IjIwMTktMDEtMTZUMTc6Mjg6NDIuNjIxMjM2WiIsImZpbGUiOiJnaXQuYyIsImxpbmUiOjY2MiwidF9hYnMiOjAuMDAxMjI3LCJjb2RlIjowfQoreyJldmVudCI6ImF0ZXhpdCIsInNpZCI6IjIwMTkwNDA4VDE5MTYxMC41MDcwMThaLUg5YjY4YzM1Zi1QMDAwMDU5YTgiLCJ0aHJlYWQiOiJtYWluIiwidGltZSI6IjIwMTktMDEtMTZUMTc6Mjg6NDIuNjIxMjY4WiIsImZpbGUiOiJ0cmFjZTIvdHIyX3RndF9ldmVudC5jIiwibGluZSI6MTYzLCJ0X2FicyI6MC4wMDEyNjUsImNvZGUiOjB9CistLS0tLS0tLS0tLS0KKworPT09IEVuYWJsaW5nIGEgVGFyZ2V0CisKK1RvIGVuYWJsZSBhIHRhcmdldCwgc2V0IHRoZSBjb3JyZXNwb25kaW5nIGVudmlyb25tZW50IHZhcmlhYmxlIG9yCitzeXN0ZW0gb3IgZ2xvYmFsIGNvbmZpZyB2YWx1ZSB0byBvbmUgb2YgdGhlIGZvbGxvd2luZzoKKworaW5jbHVkZTo6Li4vdHJhY2UyLXRhcmdldC12YWx1ZXMudHh0W10KKworV2hlbiB0cmFjZSBmaWxlcyBhcmUgd3JpdHRlbiB0byBhIHRhcmdldCBkaXJlY3RvcnksIHRoZXkgd2lsbCBiZSBuYW1lZCBhY2NvcmRpbmcKK3RvIHRoZSBsYXN0IGNvbXBvbmVudCBvZiB0aGUgU0lEIChvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgY291bnRlciB0byBhdm9pZAorZmlsZW5hbWUgY29sbGlzaW9ucykuCisKKz09IFRyYWNlMiBBUEkKKworQWxsIHB1YmxpYyBUcmFjZTIgZnVuY3Rpb25zIGFuZCBtYWNyb3MgYXJlIGRlZmluZWQgaW4gYHRyYWNlMi5oYCBhbmQKK2B0cmFjZTIuY2AuICBBbGwgcHVibGljIHN5bWJvbHMgYXJlIHByZWZpeGVkIHdpdGggYHRyYWNlMl9gLgorCitUaGVyZSBhcmUgbm8gcHVibGljIFRyYWNlMiBkYXRhIHN0cnVjdHVyZXMuCisKK1RoZSBUcmFjZTIgY29kZSBhbHNvIGRlZmluZXMgYSBzZXQgb2YgcHJpdmF0ZSBmdW5jdGlvbnMgYW5kIGRhdGEgdHlwZXMKK2luIHRoZSBgdHJhY2UyL2AgZGlyZWN0b3J5LiAgVGhlc2Ugc3ltYm9scyBhcmUgcHJlZml4ZWQgd2l0aCBgdHIyX2AKK2FuZCBzaG91bGQgb25seSBiZSB1c2VkIGJ5IGZ1bmN0aW9ucyBpbiBgdHJhY2UyLmNgLgorCis9PSBDb252ZW50aW9ucyBmb3IgUHVibGljIEZ1bmN0aW9ucyBhbmQgTWFjcm9zCisKK1RoZSBmdW5jdGlvbnMgZGVmaW5lZCBieSB0aGUgVHJhY2UyIEFQSSBhcmUgZGVjbGFyZWQgYW5kIGRvY3VtZW50ZWQKK2luIGB0cmFjZTIuaGAuICBJdCBkZWZpbmVzIHRoZSBBUEkgZnVuY3Rpb25zIGFuZCB3cmFwcGVyIG1hY3JvcyBmb3IKK1RyYWNlMi4KKworU29tZSBmdW5jdGlvbnMgaGF2ZSBhIGBfZmwoKWAgc3VmZml4IHRvIGluZGljYXRlIHRoYXQgdGhleSB0YWtlIGBmaWxlYAorYW5kIGBsaW5lLW51bWJlcmAgYXJndW1lbnRzLgorCitTb21lIGZ1bmN0aW9ucyBoYXZlIGEgYF92YV9mbCgpYCBzdWZmaXggdG8gaW5kaWNhdGUgdGhhdCB0aGV5IGFsc28KK3Rha2UgYSBgdmFfbGlzdGAgYXJndW1lbnQuCisKK1NvbWUgZnVuY3Rpb25zIGhhdmUgYSBgX3ByaW50Zl9mbCgpYCBzdWZmaXggdG8gaW5kaWNhdGUgdGhhdCB0aGV5IGFsc28KK3Rha2UgYSB2YXJhcmdzIGFyZ3VtZW50LgorCitUaGVyZSBhcmUgQ1BQIHdyYXBwZXIgbWFjcm9zIGFuZCBpZmRlZnMgdG8gaGlkZSBtb3N0IG9mIHRoZXNlIGRldGFpbHMuCitTZWUgYHRyYWNlMi5oYCBmb3IgbW9yZSBkZXRhaWxzLiAgVGhlIGZvbGxvd2luZyBkaXNjdXNzaW9uIHdpbGwgb25seQorZGVzY3JpYmUgdGhlIHNpbXBsaWZpZWQgZm9ybXMuCisKKz09IFB1YmxpYyBBUEkKKworQWxsIFRyYWNlMiBBUEkgZnVuY3Rpb25zIHNlbmQgYSBtZXNzYWdlIHRvIGFsbCBvZiB0aGUgYWN0aXZlCitUcmFjZTIgVGFyZ2V0cy4gIFRoaXMgc2VjdGlvbiBkZXNjcmliZXMgdGhlIHNldCBvZiBhdmFpbGFibGUKK21lc3NhZ2VzLgorCitJdCBoZWxwcyB0byBkaXZpZGUgdGhlc2UgZnVuY3Rpb25zIGludG8gZ3JvdXBzIGZvciBkaXNjdXNzaW9uCitwdXJwb3Nlcy4KKworPT09IEJhc2ljIENvbW1hbmQgTWVzc2FnZXMKKworVGhlc2UgYXJlIGNvbmNlcm5lZCB3aXRoIHRoZSBsaWZldGltZSBvZiB0aGUgb3ZlcmFsbCBnaXQgcHJvY2Vzcy4KK2UuZzogYHZvaWQgdHJhY2UyX2luaXRpYWxpemVfY2xvY2soKWAsIGB2b2lkIHRyYWNlMl9pbml0aWFsaXplKClgLAorYGludCB0cmFjZTJfaXNfZW5hYmxlZCgpYCwgYHZvaWQgdHJhY2UyX2NtZF9zdGFydChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpYC4KKworPT09IENvbW1hbmQgRGV0YWlsIE1lc3NhZ2VzCisKK1RoZXNlIGFyZSBjb25jZXJuZWQgd2l0aCBkZXNjcmliaW5nIHRoZSBzcGVjaWZpYyBHaXQgY29tbWFuZAorYWZ0ZXIgdGhlIGNvbW1hbmQgbGluZSwgY29uZmlnLCBhbmQgZW52aXJvbm1lbnQgYXJlIGluc3BlY3RlZC4KK2UuZzogYHZvaWQgdHJhY2UyX2NtZF9uYW1lKGNvbnN0IGNoYXIgKm5hbWUpYCwKK2B2b2lkIHRyYWNlMl9jbWRfbW9kZShjb25zdCBjaGFyICptb2RlKWAuCisKKz09PSBDaGlsZCBQcm9jZXNzIE1lc3NhZ2VzCisKK1RoZXNlIGFyZSBjb25jZXJuZWQgd2l0aCB0aGUgdmFyaW91cyBzcGF3bmVkIGNoaWxkIHByb2Nlc3NlcywKK2luY2x1ZGluZyBzaGVsbCBzY3JpcHRzLCBnaXQgY29tbWFuZHMsIGVkaXRvcnMsIHBhZ2VycywgYW5kIGhvb2tzLgorCitlLmc6IGB2b2lkIHRyYWNlMl9jaGlsZF9zdGFydChzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqY21kKWAuCisKKz09PSBHaXQgVGhyZWFkIE1lc3NhZ2VzCisKK1RoZXNlIG1lc3NhZ2VzIGFyZSBjb25jZXJuZWQgd2l0aCBHaXQgdGhyZWFkIHVzYWdlLgorCitlLmc6IGB2b2lkIHRyYWNlMl90aHJlYWRfc3RhcnQoY29uc3QgY2hhciAqdGhyZWFkX25hbWUpYC4KKworPT09IFJlZ2lvbiBhbmQgRGF0YSBNZXNzYWdlcworCitUaGVzZSBhcmUgY29uY2VybmVkIHdpdGggcmVjb3JkaW5nIHBlcmZvcm1hbmNlIGRhdGEKK292ZXIgcmVnaW9ucyBvciBzcGFucyBvZiBjb2RlLiBlLmc6Citgdm9pZCB0cmFjZTJfcmVnaW9uX2VudGVyKGNvbnN0IGNoYXIgKmNhdGVnb3J5LCBjb25zdCBjaGFyICpsYWJlbCwgY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8pYC4KKworUmVmZXIgdG8gdHJhY2UyLmggZm9yIGRldGFpbHMgYWJvdXQgYWxsIHRyYWNlMiBmdW5jdGlvbnMuCisKKz09IFRyYWNlMiBUYXJnZXQgRm9ybWF0cworCis9PT0gTk9STUFMIEZvcm1hdAorCitFdmVudHMgYXJlIHdyaXR0ZW4gYXMgbGluZXMgb2YgdGhlIGZvcm06CisKKy0tLS0tLS0tLS0tLQorWzx0aW1lPiBTUCA8ZmlsZW5hbWU+OjxsaW5lPiBTUCtdIDxldmVudC1uYW1lPiBbW1NQXSA8ZXZlbnQtbWVzc2FnZT5dIExGCistLS0tLS0tLS0tLS0KKworYDxldmVudC1uYW1lPmA6OgorCisJaXMgdGhlIGV2ZW50IG5hbWUuCisKK2A8ZXZlbnQtbWVzc2FnZT5gOjoKKwlpcyBhIGZyZWUtZm9ybSBwcmludGYgbWVzc2FnZSBpbnRlbmRlZCBmb3IgaHVtYW4gY29uc3VtcHRpb24uCisrCitOb3RlIHRoYXQgdGhpcyBtYXkgY29udGFpbiBlbWJlZGRlZCBMRiBvciBDUkxGIGNoYXJhY3RlcnMgdGhhdCBhcmUKK25vdCBlc2NhcGVkLCBzbyB0aGUgZXZlbnQgbWF5IHNwaWxsIGFjcm9zcyBtdWx0aXBsZSBsaW5lcy4KKworSWYgYEdJVF9UUkFDRTJfQlJJRUZgIG9yIGB0cmFjZTIubm9ybWFsQnJpZWZgIGlzIHRydWUsIHRoZSBgdGltZWAsIGBmaWxlbmFtZWAsCithbmQgYGxpbmVgIGZpZWxkcyBhcmUgb21pdHRlZC4KKworVGhpcyB0YXJnZXQgaXMgaW50ZW5kZWQgdG8gYmUgbW9yZSBvZiBhIHN1bW1hcnkgKGxpa2UgR0lUX1RSQUNFKSBhbmQKK2xlc3MgZGV0YWlsZWQgdGhhbiB0aGUgb3RoZXIgdGFyZ2V0cy4gIEl0IGlnbm9yZXMgdGhyZWFkLCByZWdpb24sIGFuZAorZGF0YSBtZXNzYWdlcywgZm9yIGV4YW1wbGUuCisKKz09PSBQRVJGIEZvcm1hdAorCitFdmVudHMgYXJlIHdyaXR0ZW4gYXMgbGluZXMgb2YgdGhlIGZvcm06CisKKy0tLS0tLS0tLS0tLQorWzx0aW1lPiBTUCA8ZmlsZW5hbWU+OjxsaW5lPiBTUCsKKyAgICBCQVIgU1BdIGQ8ZGVwdGg+IFNQCisgICAgQkFSIFNQIDx0aHJlYWQtbmFtZT4gU1ArCisgICAgQkFSIFNQIDxldmVudC1uYW1lPiBTUCsKKyAgICBCQVIgU1AgW3I8cmVwby1pZD5dIFNQKworICAgIEJBUiBTUCBbPHRfYWJzPl0gU1ArCisgICAgQkFSIFNQIFs8dF9yZWw+XSBTUCsKKyAgICBCQVIgU1AgWzxjYXRlZ29yeT5dIFNQKworICAgIEJBUiBTUCBET1RTKiA8cGVyZi1ldmVudC1tZXNzYWdlPgorICAgIExGCistLS0tLS0tLS0tLS0KKworYDxkZXB0aD5gOjoKKwlpcyB0aGUgZ2l0IHByb2Nlc3MgZGVwdGguICBUaGlzIGlzIHRoZSBudW1iZXIgb2YgcGFyZW50CisJZ2l0IHByb2Nlc3Nlcy4gIEEgdG9wLWxldmVsIGdpdCBjb21tYW5kIGhhcyBkZXB0aCB2YWx1ZSAiZDAiLgorCUEgY2hpbGQgb2YgaXQgaGFzIGRlcHRoIHZhbHVlICJkMSIuICBBIHNlY29uZCBsZXZlbCBjaGlsZAorCWhhcyBkZXB0aCB2YWx1ZSAiZDIiIGFuZCBzbyBvbi4KKworYDx0aHJlYWQtbmFtZT5gOjoKKwlpcyBhIHVuaXF1ZSBuYW1lIGZvciB0aGUgdGhyZWFkLiAgVGhlIHByaW1hcnkgdGhyZWFkCisJaXMgY2FsbGVkICJtYWluIi4gIE90aGVyIHRocmVhZCBuYW1lcyBhcmUgb2YgdGhlIGZvcm0gInRoJWQ6JXMiCisJYW5kIGluY2x1ZGUgYSB1bmlxdWUgbnVtYmVyIGFuZCB0aGUgbmFtZSBvZiB0aGUgdGhyZWFkLXByb2MuCisKK2A8ZXZlbnQtbmFtZT5gOjoKKwlpcyB0aGUgZXZlbnQgbmFtZS4KKworYDxyZXBvLWlkPmA6OgorCXdoZW4gcHJlc2VudCwgaXMgYSBudW1iZXIgaW5kaWNhdGluZyB0aGUgcmVwb3NpdG9yeQorCWluIHVzZS4gIEEgYGRlZl9yZXBvYCBldmVudCBpcyBlbWl0dGVkIHdoZW4gYSByZXBvc2l0b3J5IGlzCisJb3BlbmVkLiAgVGhpcyBkZWZpbmVzIHRoZSByZXBvLWlkIGFuZCBhc3NvY2lhdGVkIHdvcmt0cmVlLgorCVN1YnNlcXVlbnQgcmVwby1zcGVjaWZpYyBldmVudHMgd2lsbCByZWZlcmVuY2UgdGhpcyByZXBvLWlkLgorKworQ3VycmVudGx5LCB0aGlzIGlzIGFsd2F5cyAicjEiIGZvciB0aGUgbWFpbiByZXBvc2l0b3J5LgorVGhpcyBmaWVsZCBpcyBpbiBhbnRpY2lwYXRpb24gb2YgaW4tcHJvYyBzdWJtb2R1bGVzIGluIHRoZSBmdXR1cmUuCisKK2A8dF9hYnM+YDo6CisJd2hlbiBwcmVzZW50LCBpcyB0aGUgYWJzb2x1dGUgdGltZSBpbiBzZWNvbmRzIHNpbmNlIHRoZQorCXByb2dyYW0gc3RhcnRlZC4KKworYDx0X3JlbD5gOjoKKwl3aGVuIHByZXNlbnQsIGlzIHRpbWUgaW4gc2Vjb25kcyByZWxhdGl2ZSB0byB0aGUgc3RhcnQgb2YKKwl0aGUgY3VycmVudCByZWdpb24uICBGb3IgYSB0aHJlYWQtZXhpdCBldmVudCwgaXQgaXMgdGhlIGVsYXBzZWQKKwl0aW1lIG9mIHRoZSB0aHJlYWQuCisKK2A8Y2F0ZWdvcnk+YDo6CisJaXMgcHJlc2VudCBvbiByZWdpb24gYW5kIGRhdGEgZXZlbnRzIGFuZCBpcyB1c2VkIHRvCisJaW5kaWNhdGUgYSBicm9hZCBjYXRlZ29yeSwgc3VjaCBhcyAiaW5kZXgiIG9yICJzdGF0dXMiLgorCitgPHBlcmYtZXZlbnQtbWVzc2FnZT5gOjoKKwlpcyBhIGZyZWUtZm9ybSBwcmludGYgbWVzc2FnZSBpbnRlbmRlZCBmb3IgaHVtYW4gY29uc3VtcHRpb24uCisKKy0tLS0tLS0tLS0tLQorMTU6MzM6MzMuNTMyNzEyIHd0LXN0YXR1cy5jOjIzMTAgICAgICAgICAgICAgICAgICB8IGQwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgcmVnaW9uX2VudGVyIHwgcjEgIHwgIDAuMTI2MDY0IHwgICAgICAgICAgIHwgc3RhdHVzICAgICB8IGxhYmVsOnByaW50CisxNTozMzozMy41MzI3MTIgd3Qtc3RhdHVzLmM6MjMzMSAgICAgICAgICAgICAgICAgIHwgZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCByZWdpb25fbGVhdmUgfCByMSAgfCAgMC4xMjc1NjggfCAgMC4wMDE1MDQgfCBzdGF0dXMgICAgIHwgbGFiZWw6cHJpbnQKKy0tLS0tLS0tLS0tLQorCitJZiBgR0lUX1RSQUNFMl9QRVJGX0JSSUVGYCBvciBgdHJhY2UyLnBlcmZCcmllZmAgaXMgdHJ1ZSwgdGhlIGB0aW1lYCwgYGZpbGVgLAorYW5kIGBsaW5lYCBmaWVsZHMgYXJlIG9taXR0ZWQuCisKKy0tLS0tLS0tLS0tLQorZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCByZWdpb25fbGVhdmUgfCByMSAgfCAgMC4wMTE3MTcgfCAgMC4wMDkxMjIgfCBpbmRleCAgICAgIHwgbGFiZWw6cHJlbG9hZAorLS0tLS0tLS0tLS0tCisKK1RoZSBQRVJGIHRhcmdldCBpcyBpbnRlbmRlZCBmb3IgaW50ZXJhY3RpdmUgcGVyZm9ybWFuY2UgYW5hbHlzaXMKK2R1cmluZyBkZXZlbG9wbWVudCBhbmQgaXMgcXVpdGUgbm9pc3kuCisKKz09PSBFVkVOVCBGb3JtYXQKKworRWFjaCBldmVudCBpcyBhIEpTT04tb2JqZWN0IGNvbnRhaW5pbmcgbXVsdGlwbGUga2V5L3ZhbHVlIHBhaXJzCit3cml0dGVuIGFzIGEgc2luZ2xlIGxpbmUgYW5kIGZvbGxvd2VkIGJ5IGEgTEYuCisKKy0tLS0tLS0tLS0tLQorJ3snIDxrZXk+ICc6JyA8dmFsdWU+IFsnLCcgPGtleT4gJzonIDx2YWx1ZT5dKiAnfScgTEYKKy0tLS0tLS0tLS0tLQorCitTb21lIGtleS92YWx1ZSBwYWlycyBhcmUgY29tbW9uIHRvIGFsbCBldmVudHMgYW5kIHNvbWUgYXJlCitldmVudC1zcGVjaWZpYy4KKworPT09PSBDb21tb24gS2V5L1ZhbHVlIFBhaXJzCisKK1RoZSBmb2xsb3dpbmcga2V5L3ZhbHVlIHBhaXJzIGFyZSBjb21tb24gdG8gYWxsIGV2ZW50czoKKworLS0tLS0tLS0tLS0tCit7CisJImV2ZW50IjoidmVyc2lvbiIsCisJInNpZCI6IjIwMTkwNDA4VDE5MTgyNy4yNzI3NTlaLUg5YjY4YzM1Zi1QMDAwMDM1MTAiLAorCSJ0aHJlYWQiOiJtYWluIiwKKwkidGltZSI6IjIwMTktMDQtMDhUMTk6MTg6MjcuMjgyNzYxWiIsCisJImZpbGUiOiJjb21tb24tbWFpbi5jIiwKKwkibGluZSI6NDIsCisJLi4uCit9CistLS0tLS0tLS0tLS0KKworYCJldmVudCI6PGV2ZW50PmA6OgorCWlzIHRoZSBldmVudCBuYW1lLgorCitgInNpZCI6PHNpZD5gOjoKKwlpcyB0aGUgc2Vzc2lvbi1pZC4gIFRoaXMgaXMgYSB1bmlxdWUgc3RyaW5nIHRvIGlkZW50aWZ5IHRoZQorCXByb2Nlc3MgaW5zdGFuY2UgdG8gYWxsb3cgYWxsIGV2ZW50cyBlbWl0dGVkIGJ5IGEgcHJvY2VzcyB0bworCWJlIGlkZW50aWZpZWQuICBBIHNlc3Npb24taWQgaXMgdXNlZCBpbnN0ZWFkIG9mIGEgUElEIGJlY2F1c2UKKwlQSURzIGFyZSByZWN5Y2xlZCBieSB0aGUgT1MuICBGb3IgY2hpbGQgZ2l0IHByb2Nlc3NlcywgdGhlCisJc2Vzc2lvbi1pZCBpcyBwcmVwZW5kZWQgd2l0aCB0aGUgc2Vzc2lvbi1pZCBvZiB0aGUgcGFyZW50IGdpdAorCXByb2Nlc3MgdG8gYWxsb3cgcGFyZW50LWNoaWxkIHJlbGF0aW9uc2hpcHMgdG8gYmUgaWRlbnRpZmllZAorCWR1cmluZyBwb3N0LXByb2Nlc3NpbmcuCisKK2AidGhyZWFkIjo8dGhyZWFkPmA6OgorCWlzIHRoZSB0aHJlYWQgbmFtZS4KKworYCJ0aW1lIjo8dGltZT5gOjoKKwlpcyB0aGUgVVRDIHRpbWUgb2YgdGhlIGV2ZW50LgorCitgImZpbGUiOjxmaWxlbmFtZT5gOjoKKwlpcyBzb3VyY2UgZmlsZSBnZW5lcmF0aW5nIHRoZSBldmVudC4KKworYCJsaW5lIjo8bGluZS1udW1iZXI+YDo6CisJaXMgdGhlIGludGVnZXIgc291cmNlIGxpbmUgbnVtYmVyIGdlbmVyYXRpbmcgdGhlIGV2ZW50LgorCitgInJlcG8iOjxyZXBvLWlkPmA6OgorCXdoZW4gcHJlc2VudCwgaXMgdGhlIGludGVnZXIgcmVwby1pZCBhcyBkZXNjcmliZWQgcHJldmlvdXNseS4KKworSWYgYEdJVF9UUkFDRTJfRVZFTlRfQlJJRUZgIG9yIGB0cmFjZTIuZXZlbnRCcmllZmAgaXMgdHJ1ZSwgdGhlIGBmaWxlYAorYW5kIGBsaW5lYCBmaWVsZHMgYXJlIG9taXR0ZWQgZnJvbSBhbGwgZXZlbnRzIGFuZCB0aGUgYHRpbWVgIGZpZWxkIGlzCitvbmx5IHByZXNlbnQgb24gdGhlICJzdGFydCIgYW5kICJhdGV4aXQiIGV2ZW50cy4KKworPT09PSBFdmVudC1TcGVjaWZpYyBLZXkvVmFsdWUgUGFpcnMKKworYCJ2ZXJzaW9uImA6OgorCVRoaXMgZXZlbnQgZ2l2ZXMgdGhlIHZlcnNpb24gb2YgdGhlIGV4ZWN1dGFibGUgYW5kIHRoZSBFVkVOVCBmb3JtYXQuIEl0CisJc2hvdWxkIGFsd2F5cyBiZSB0aGUgZmlyc3QgZXZlbnQgaW4gYSB0cmFjZSBzZXNzaW9uLiBUaGUgRVZFTlQgZm9ybWF0CisJdmVyc2lvbiB3aWxsIGJlIGluY3JlbWVudGVkIGlmIG5ldyBldmVudCB0eXBlcyBhcmUgYWRkZWQsIGlmIGV4aXN0aW5nCisJZmllbGRzIGFyZSByZW1vdmVkLCBvciBpZiB0aGVyZSBhcmUgc2lnbmlmaWNhbnQgY2hhbmdlcyBpbgorCWludGVycHJldGF0aW9uIG9mIGV4aXN0aW5nIGV2ZW50cyBvciBmaWVsZHMuIFNtYWxsZXIgY2hhbmdlcywgc3VjaCBhcworCWFkZGluZyBhIG5ldyBmaWVsZCB0byBhbiBleGlzdGluZyBldmVudCwgd2lsbCBub3QgcmVxdWlyZSBhbiBpbmNyZW1lbnQKKwl0byB0aGUgRVZFTlQgZm9ybWF0IHZlcnNpb24uCisrCistLS0tLS0tLS0tLS0KK3sKKwkiZXZlbnQiOiJ2ZXJzaW9uIiwKKwkuLi4KKwkiZXZ0IjoiMiIsCQkgICAgICAgIyBFVkVOVCBmb3JtYXQgdmVyc2lvbgorCSJleGUiOiIyLjIwLjEuMTU1Lmc0MjZjOTZmY2RiIiAjIGdpdCB2ZXJzaW9uCit9CistLS0tLS0tLS0tLS0KKworYCJkaXNjYXJkImA6OgorCVRoaXMgZXZlbnQgaXMgd3JpdHRlbiB0byB0aGUgZ2l0LXRyYWNlMi1kaXNjYXJkIHNlbnRpbmVsIGZpbGUgaWYgdGhlcmUKKwlhcmUgdG9vIG1hbnkgZmlsZXMgaW4gdGhlIHRhcmdldCB0cmFjZSBkaXJlY3RvcnkgKHNlZSB0aGUKKwl0cmFjZTIubWF4RmlsZXMgY29uZmlnIG9wdGlvbikuCisrCistLS0tLS0tLS0tLS0KK3sKKwkiZXZlbnQiOiJkaXNjYXJkIiwKKwkuLi4KK30KKy0tLS0tLS0tLS0tLQorCitgInN0YXJ0ImA6OgorCVRoaXMgZXZlbnQgY29udGFpbnMgdGhlIGNvbXBsZXRlIGFyZ3YgcmVjZWl2ZWQgYnkgbWFpbigpLgorKworLS0tLS0tLS0tLS0tCit7CisJImV2ZW50Ijoic3RhcnQiLAorCS4uLgorCSJ0X2FicyI6MC4wMDEyMjcsICMgZWxhcHNlZCB0aW1lIGluIHNlY29uZHMKKwkiYXJndiI6WyJnaXQiLCJ2ZXJzaW9uIl0KK30KKy0tLS0tLS0tLS0tLQorCitgImV4aXQiYDo6CisJVGhpcyBldmVudCBpcyBlbWl0dGVkIHdoZW4gZ2l0IGNhbGxzIGBleGl0KClgLgorKworLS0tLS0tLS0tLS0tCit7CisJImV2ZW50IjoiZXhpdCIsCisJLi4uCisJInRfYWJzIjowLjAwMTIyNywgIyBlbGFwc2VkIHRpbWUgaW4gc2Vjb25kcworCSJjb2RlIjowCSAgIyBleGl0IGNvZGUKK30KKy0tLS0tLS0tLS0tLQorCitgImF0ZXhpdCJgOjoKKwlUaGlzIGV2ZW50IGlzIGVtaXR0ZWQgYnkgdGhlIFRyYWNlMiBgYXRleGl0YCByb3V0aW5lIGR1cmluZworCWZpbmFsIHNodXRkb3duLiAgSXQgc2hvdWxkIGJlIHRoZSBsYXN0IGV2ZW50IGVtaXR0ZWQgYnkgdGhlCisJcHJvY2Vzcy4KKysKKyhUaGUgZWxhcHNlZCB0aW1lIHJlcG9ydGVkIGhlcmUgaXMgZ3JlYXRlciB0aGFuIHRoZSB0aW1lIHJlcG9ydGVkIGluCit0aGUgImV4aXQiIGV2ZW50IGJlY2F1c2UgaXQgcnVucyBhZnRlciBhbGwgb3RoZXIgYXRleGl0IHRhc2tzIGhhdmUKK2NvbXBsZXRlZC4pCisrCistLS0tLS0tLS0tLS0KK3sKKwkiZXZlbnQiOiJhdGV4aXQiLAorCS4uLgorCSJ0X2FicyI6MC4wMDEyMjcsICMgZWxhcHNlZCB0aW1lIGluIHNlY29uZHMKKwkiY29kZSI6MCAgICAgICAgICAjIGV4aXQgY29kZQorfQorLS0tLS0tLS0tLS0tCisKK2Aic2lnbmFsImA6OgorCVRoaXMgZXZlbnQgaXMgZW1pdHRlZCB3aGVuIHRoZSBwcm9ncmFtIGlzIHRlcm1pbmF0ZWQgYnkgYSB1c2VyCisJc2lnbmFsLiAgRGVwZW5kaW5nIG9uIHRoZSBwbGF0Zm9ybSwgdGhlIHNpZ25hbCBldmVudCBtYXkKKwlwcmV2ZW50IHRoZSAiYXRleGl0IiBldmVudCBmcm9tIGJlaW5nIGdlbmVyYXRlZC4KKysKKy0tLS0tLS0tLS0tLQoreworCSJldmVudCI6InNpZ25hbCIsCisJLi4uCisJInRfYWJzIjowLjAwMTIyNywgICMgZWxhcHNlZCB0aW1lIGluIHNlY29uZHMKKwkic2lnbm8iOjEzICAgICAgICAgIyBTSUdURVJNLCBTSUdJTlQsIGV0Yy4KK30KKy0tLS0tLS0tLS0tLQorCitgImVycm9yImA6OgorCVRoaXMgZXZlbnQgaXMgZW1pdHRlZCB3aGVuIG9uZSBvZiB0aGUgYGVycm9yKClgLCBgZGllKClgLAorCW9yIGB1c2FnZSgpYCBmdW5jdGlvbnMgYXJlIGNhbGxlZC4KKysKKy0tLS0tLS0tLS0tLQoreworCSJldmVudCI6ImVycm9yIiwKKwkuLi4KKwkibXNnIjoiaW52YWxpZCBvcHRpb246IC0tY2FoY2VkIiwgIyBmb3JtYXR0ZWQgZXJyb3IgbWVzc2FnZQorCSJmbXQiOiJpbnZhbGlkIG9wdGlvbjogJXMiCSAgIyBlcnJvciBmb3JtYXQgc3RyaW5nCit9CistLS0tLS0tLS0tLS0KKysKK1RoZSBlcnJvciBldmVudCBtYXkgYmUgZW1pdHRlZCBtb3JlIHRoYW4gb25jZS4gIFRoZSBmb3JtYXQgc3RyaW5nCithbGxvd3MgcG9zdC1wcm9jZXNzb3JzIHRvIGdyb3VwIGVycm9ycyBieSB0eXBlIHdpdGhvdXQgd29ycnlpbmcKK2Fib3V0IHNwZWNpZmljIGVycm9yIGFyZ3VtZW50cy4KKworYCJjbWRfcGF0aCJgOjoKKwlUaGlzIGV2ZW50IGNvbnRhaW5zIHRoZSBkaXNjb3ZlcmVkIGZ1bGwgcGF0aCBvZiB0aGUgZ2l0CisJZXhlY3V0YWJsZSAob24gcGxhdGZvcm1zIHRoYXQgYXJlIGNvbmZpZ3VyZWQgdG8gcmVzb2x2ZSBpdCkuCisrCistLS0tLS0tLS0tLS0KK3sKKwkiZXZlbnQiOiJjbWRfcGF0aCIsCisJLi4uCisJInBhdGgiOiJDOi93b3JrL2dmdy9naXQuZXhlIgorfQorLS0tLS0tLS0tLS0tCisKK2AiY21kX25hbWUiYDo6CisJVGhpcyBldmVudCBjb250YWlucyB0aGUgY29tbWFuZCBuYW1lIGZvciB0aGlzIGdpdCBwcm9jZXNzCisJYW5kIHRoZSBoaWVyYXJjaHkgb2YgY29tbWFuZHMgZnJvbSBwYXJlbnQgZ2l0IHByb2Nlc3Nlcy4KKysKKy0tLS0tLS0tLS0tLQoreworCSJldmVudCI6ImNtZF9uYW1lIiwKKwkuLi4KKwkibmFtZSI6InBhY2stb2JqZWN0cyIsCisJImhpZXJhcmNoeSI6InB1c2gvcGFjay1vYmplY3RzIgorfQorLS0tLS0tLS0tLS0tCisrCitOb3JtYWxseSwgdGhlICJuYW1lIiBmaWVsZCBjb250YWlucyB0aGUgY2Fub25pY2FsIG5hbWUgb2YgdGhlCitjb21tYW5kLiAgV2hlbiBhIGNhbm9uaWNhbCBuYW1lIGlzIG5vdCBhdmFpbGFibGUsIG9uZSBvZgordGhlc2Ugc3BlY2lhbCB2YWx1ZXMgYXJlIHVzZWQ6CisrCistLS0tLS0tLS0tLS0KKyJfcXVlcnlfIiAgICAgICAgICAgICMgImdpdCAtLWh0bWwtcGF0aCIKKyJfcnVuX2Rhc2hlZF8iICAgICAgICMgd2hlbiAiZ2l0IGZvbyIgdHJpZXMgdG8gcnVuICJnaXQtZm9vIgorIl9ydW5fc2hlbGxfYWxpYXNfIiAgIyBhbGlhcyBleHBhbnNpb24gdG8gYSBzaGVsbCBjb21tYW5kCisiX3J1bl9naXRfYWxpYXNfIiAgICAjIGFsaWFzIGV4cGFuc2lvbiB0byBhIGdpdCBjb21tYW5kCisiX3VzYWdlXyIgICAgICAgICAgICAjIHVzYWdlIGVycm9yCistLS0tLS0tLS0tLS0KKworYCJjbWRfbW9kZSJgOjoKKwlUaGlzIGV2ZW50LCB3aGVuIHByZXNlbnQsIGRlc2NyaWJlcyB0aGUgY29tbWFuZCB2YXJpYW50IFRoaXMKKwlldmVudCBtYXkgYmUgZW1pdHRlZCBtb3JlIHRoYW4gb25jZS4KKysKKy0tLS0tLS0tLS0tLQoreworCSJldmVudCI6ImNtZF9tb2RlIiwKKwkuLi4KKwkibmFtZSI6ImJyYW5jaCIKK30KKy0tLS0tLS0tLS0tLQorKworVGhlICJuYW1lIiBmaWVsZCBpcyBhbiBhcmJpdHJhcnkgc3RyaW5nIHRvIGRlc2NyaWJlIHRoZSBjb21tYW5kIG1vZGUuCitGb3IgZXhhbXBsZSwgY2hlY2tvdXQgY2FuIGNoZWNrb3V0IGEgYnJhbmNoIG9yIGFuIGluZGl2aWR1YWwgZmlsZS4KK0FuZCB0aGVzZSB2YXJpYXRpb25zIHR5cGljYWxseSBoYXZlIGRpZmZlcmVudCBwZXJmb3JtYW5jZQorY2hhcmFjdGVyaXN0aWNzIHRoYXQgYXJlIG5vdCBjb21wYXJhYmxlLgorCitgImFsaWFzImA6OgorCVRoaXMgZXZlbnQgaXMgcHJlc2VudCB3aGVuIGFuIGFsaWFzIGlzIGV4cGFuZGVkLgorKworLS0tLS0tLS0tLS0tCit7CisJImV2ZW50IjoiYWxpYXMiLAorCS4uLgorCSJhbGlhcyI6ImwiLAkJICMgcmVnaXN0ZXJlZCBhbGlhcworCSJhcmd2IjpbImxvZyIsIi0tZ3JhcGgiXSAjIGFsaWFzIGV4cGFuc2lvbgorfQorLS0tLS0tLS0tLS0tCisKK2AiY2hpbGRfc3RhcnQiYDo6CisJVGhpcyBldmVudCBkZXNjcmliZXMgYSBjaGlsZCBwcm9jZXNzIHRoYXQgaXMgYWJvdXQgdG8gYmUKKwlzcGF3bmVkLgorKworLS0tLS0tLS0tLS0tCit7CisJImV2ZW50IjoiY2hpbGRfc3RhcnQiLAorCS4uLgorCSJjaGlsZF9pZCI6MiwKKwkiY2hpbGRfY2xhc3MiOiI/IiwKKwkidXNlX3NoZWxsIjpmYWxzZSwKKwkiYXJndiI6WyJnaXQiLCJyZXYtbGlzdCIsIi0tb2JqZWN0cyIsIi0tc3RkaW4iLCItLW5vdCIsIi0tYWxsIiwiLS1xdWlldCJdCisKKwkiaG9va19uYW1lIjoiPGhvb2tfbmFtZT4iICAjIHByZXNlbnQgd2hlbiBjaGlsZF9jbGFzcyBpcyAiaG9vayIKKwkiY2QiOiI8cGF0aD4iCQkgICAjIHByZXNlbnQgd2hlbiBjZCBpcyByZXF1aXJlZAorfQorLS0tLS0tLS0tLS0tCisrCitUaGUgImNoaWxkX2lkIiBmaWVsZCBjYW4gYmUgdXNlZCB0byBtYXRjaCB0aGlzIGNoaWxkX3N0YXJ0IHdpdGggdGhlCitjb3JyZXNwb25kaW5nIGNoaWxkX2V4aXQgZXZlbnQuCisrCitUaGUgImNoaWxkX2NsYXNzIiBmaWVsZCBpcyBhIHJvdWdoIGNsYXNzaWZpY2F0aW9uLCBzdWNoIGFzICJlZGl0b3IiLAorInBhZ2VyIiwgInRyYW5zcG9ydC8qIiwgYW5kICJob29rIi4gIFVuY2xhc3NpZmllZCBjaGlsZHJlbiBhcmUgY2xhc3NpZmllZAord2l0aCAiPyIuCisKK2AiY2hpbGRfZXhpdCJgOjoKKwlUaGlzIGV2ZW50IGlzIGdlbmVyYXRlZCBhZnRlciB0aGUgY3VycmVudCBwcm9jZXNzIGhhcyByZXR1cm5lZAorCWZyb20gdGhlIHdhaXRwaWQoKSBhbmQgY29sbGVjdGVkIHRoZSBleGl0IGluZm9ybWF0aW9uIGZyb20gdGhlCisJY2hpbGQuCisrCistLS0tLS0tLS0tLS0KK3sKKwkiZXZlbnQiOiJjaGlsZF9leGl0IiwKKwkuLi4KKwkiY2hpbGRfaWQiOjIsCisJInBpZCI6MTQ3MDgsCSAjIGNoaWxkIFBJRAorCSJjb2RlIjowLAkgIyBjaGlsZCBleGl0LWNvZGUKKwkidF9yZWwiOjAuMTEwNjA1ICMgb2JzZXJ2ZWQgcnVuLXRpbWUgb2YgY2hpbGQgcHJvY2VzcworfQorLS0tLS0tLS0tLS0tCisrCitOb3RlIHRoYXQgdGhlIHNlc3Npb24taWQgb2YgdGhlIGNoaWxkIHByb2Nlc3MgaXMgbm90IGF2YWlsYWJsZSB0bwordGhlIGN1cnJlbnQvc3Bhd25pbmcgcHJvY2Vzcywgc28gdGhlIGNoaWxkJ3MgUElEIGlzIHJlcG9ydGVkIGhlcmUgYXMKK2EgaGludCBmb3IgcG9zdC1wcm9jZXNzaW5nLiAgKEJ1dCBpdCBpcyBvbmx5IGEgaGludCBiZWNhdXNlIHRoZSBjaGlsZAorcHJvY2VzcyBtYXkgYmUgYSBzaGVsbCBzY3JpcHQgd2hpY2ggZG9lc24ndCBoYXZlIGEgc2Vzc2lvbi1pZC4pCisrCitOb3RlIHRoYXQgdGhlIGB0X3JlbGAgZmllbGQgY29udGFpbnMgdGhlIG9ic2VydmVkIHJ1biB0aW1lIGluIHNlY29uZHMKK2ZvciB0aGUgY2hpbGQgcHJvY2VzcyAoc3RhcnRpbmcgYmVmb3JlIHRoZSBmb3JrL2V4ZWMvc3Bhd24gYW5kCitzdG9wcGluZyBhZnRlciB0aGUgd2FpdHBpZCgpIGFuZCBpbmNsdWRlcyBPUyBwcm9jZXNzIGNyZWF0aW9uIG92ZXJoZWFkKS4KK1NvIHRoaXMgdGltZSB3aWxsIGJlIHNsaWdodGx5IGxhcmdlciB0aGFuIHRoZSBhdGV4aXQgdGltZSByZXBvcnRlZCBieQordGhlIGNoaWxkIHByb2Nlc3MgaXRzZWxmLgorCitgImV4ZWMiYDo6CisJVGhpcyBldmVudCBpcyBnZW5lcmF0ZWQgYmVmb3JlIGdpdCBhdHRlbXB0cyB0byBgZXhlYygpYAorCWFub3RoZXIgY29tbWFuZCByYXRoZXIgdGhhbiBzdGFydGluZyBhIGNoaWxkIHByb2Nlc3MuCisrCistLS0tLS0tLS0tLS0KK3sKKwkiZXZlbnQiOiJleGVjIiwKKwkuLi4KKwkiZXhlY19pZCI6MCwKKwkiZXhlIjoiZ2l0IiwKKwkiYXJndiI6WyJmb28iLCAiYmFyIl0KK30KKy0tLS0tLS0tLS0tLQorKworVGhlICJleGVjX2lkIiBmaWVsZCBpcyBhIGNvbW1hbmQtdW5pcXVlIGlkIGFuZCBpcyBvbmx5IHVzZWZ1bCBpZiB0aGUKK2BleGVjKClgIGZhaWxzIGFuZCBhIGNvcnJlc3BvbmRpbmcgZXhlY19yZXN1bHQgZXZlbnQgaXMgZ2VuZXJhdGVkLgorCitgImV4ZWNfcmVzdWx0ImA6OgorCVRoaXMgZXZlbnQgaXMgZ2VuZXJhdGVkIGlmIHRoZSBgZXhlYygpYCBmYWlscyBhbmQgY29udHJvbAorCXJldHVybnMgdG8gdGhlIGN1cnJlbnQgZ2l0IGNvbW1hbmQuCisrCistLS0tLS0tLS0tLS0KK3sKKwkiZXZlbnQiOiJleGVjX3Jlc3VsdCIsCisJLi4uCisJImV4ZWNfaWQiOjAsCisJImNvZGUiOjEgICAgICAjIGVycm9yIGNvZGUgKGVycm5vKSBmcm9tIGV4ZWMoKQorfQorLS0tLS0tLS0tLS0tCisKK2AidGhyZWFkX3N0YXJ0ImA6OgorCVRoaXMgZXZlbnQgaXMgZ2VuZXJhdGVkIHdoZW4gYSB0aHJlYWQgaXMgc3RhcnRlZC4gIEl0IGlzCisJZ2VuZXJhdGVkIGZyb20gKndpdGhpbiogdGhlIG5ldyB0aHJlYWQncyB0aHJlYWQtcHJvYyAoZm9yIFRMUworCXJlYXNvbnMpLgorKworLS0tLS0tLS0tLS0tCit7CisJImV2ZW50IjoidGhyZWFkX3N0YXJ0IiwKKwkuLi4KKwkidGhyZWFkIjoidGgwMjpwcmVsb2FkX3RocmVhZCIgIyB0aHJlYWQgbmFtZQorfQorLS0tLS0tLS0tLS0tCisKK2AidGhyZWFkX2V4aXQiYDo6CisJVGhpcyBldmVudCBpcyBnZW5lcmF0ZWQgd2hlbiBhIHRocmVhZCBleGl0cy4gIEl0IGlzIGdlbmVyYXRlZAorCWZyb20gKndpdGhpbiogdGhlIHRocmVhZCdzIHRocmVhZC1wcm9jIChmb3IgVExTIHJlYXNvbnMpLgorKworLS0tLS0tLS0tLS0tCit7CisJImV2ZW50IjoidGhyZWFkX2V4aXQiLAorCS4uLgorCSJ0aHJlYWQiOiJ0aDAyOnByZWxvYWRfdGhyZWFkIiwgIyB0aHJlYWQgbmFtZQorCSJ0X3JlbCI6MC4wMDczMjggICAgICAgICAgICAgICAgIyB0aHJlYWQgZWxhcHNlZCB0aW1lCit9CistLS0tLS0tLS0tLS0KKworYCJkZWZfcGFyYW0iYDo6CisJVGhpcyBldmVudCBpcyBnZW5lcmF0ZWQgdG8gbG9nIGEgZ2xvYmFsIHBhcmFtZXRlci4KKysKKy0tLS0tLS0tLS0tLQoreworCSJldmVudCI6ImRlZl9wYXJhbSIsCisJLi4uCisJInBhcmFtIjoiY29yZS5hYmJyZXYiLAorCSJ2YWx1ZSI6IjciCit9CistLS0tLS0tLS0tLS0KKworYCJkZWZfcmVwbyJgOjoKKwlUaGlzIGV2ZW50IGRlZmluZXMgYSByZXBvLWlkIGFuZCBhc3NvY2lhdGVzIGl0IHdpdGggdGhlIHJvb3QKKwlvZiB0aGUgd29ya3RyZWUuCisrCistLS0tLS0tLS0tLS0KK3sKKwkiZXZlbnQiOiJkZWZfcmVwbyIsCisJLi4uCisJInJlcG8iOjEsCisJIndvcmt0cmVlIjoiL1VzZXJzL2plZmZob3N0L3dvcmsvZ2Z3IgorfQorLS0tLS0tLS0tLS0tCisrCitBcyBzdGF0ZWQgZWFybGllciwgdGhlIHJlcG8taWQgaXMgY3VycmVudGx5IGFsd2F5cyAxLCBzbyB0aGVyZSB3aWxsCitvbmx5IGJlIG9uZSBkZWZfcmVwbyBldmVudC4gIExhdGVyLCBpZiBpbi1wcm9jIHN1Ym1vZHVsZXMgYXJlCitzdXBwb3J0ZWQsIGEgZGVmX3JlcG8gZXZlbnQgc2hvdWxkIGJlIGVtaXR0ZWQgZm9yIGVhY2ggc3VibW9kdWxlCit2aXNpdGVkLgorCitgInJlZ2lvbl9lbnRlciJgOjoKKwlUaGlzIGV2ZW50IGlzIGdlbmVyYXRlZCB3aGVuIGVudGVyaW5nIGEgcmVnaW9uLgorKworLS0tLS0tLS0tLS0tCit7CisJImV2ZW50IjoicmVnaW9uX2VudGVyIiwKKwkuLi4KKwkicmVwbyI6MSwgICAgICAgICAgICAgICAgIyBvcHRpb25hbAorCSJuZXN0aW5nIjoxLCAgICAgICAgICAgICAjIGN1cnJlbnQgcmVnaW9uIHN0YWNrIGRlcHRoCisJImNhdGVnb3J5IjoiaW5kZXgiLCAgICAgICMgb3B0aW9uYWwKKwkibGFiZWwiOiJkb19yZWFkX2luZGV4IiwgIyBvcHRpb25hbAorCSJtc2ciOiIuZ2l0L2luZGV4IiAgICAgICAjIG9wdGlvbmFsCit9CistLS0tLS0tLS0tLS0KKysKK1RoZSBgY2F0ZWdvcnlgIGZpZWxkIG1heSBiZSB1c2VkIGluIGEgZnV0dXJlIGVuaGFuY2VtZW50IHRvCitkbyBjYXRlZ29yeS1iYXNlZCBmaWx0ZXJpbmcuCisrCitgR0lUX1RSQUNFMl9FVkVOVF9ORVNUSU5HYCBvciBgdHJhY2UyLmV2ZW50TmVzdGluZ2AgY2FuIGJlIHVzZWQgdG8KK2ZpbHRlciBkZWVwbHkgbmVzdGVkIHJlZ2lvbnMgYW5kIGRhdGEgZXZlbnRzLiAgSXQgZGVmYXVsdHMgdG8gIjIiLgorCitgInJlZ2lvbl9sZWF2ZSJgOjoKKwlUaGlzIGV2ZW50IGlzIGdlbmVyYXRlZCB3aGVuIGxlYXZpbmcgYSByZWdpb24uCisrCistLS0tLS0tLS0tLS0KK3sKKwkiZXZlbnQiOiJyZWdpb25fbGVhdmUiLAorCS4uLgorCSJyZXBvIjoxLCAgICAgICAgICAgICAgICAjIG9wdGlvbmFsCisJInRfcmVsIjowLjAwMjg3NiwgICAgICAgICMgdGltZSBzcGVudCBpbiByZWdpb24gaW4gc2Vjb25kcworCSJuZXN0aW5nIjoxLCAgICAgICAgICAgICAjIHJlZ2lvbiBzdGFjayBkZXB0aAorCSJjYXRlZ29yeSI6ImluZGV4IiwgICAgICAjIG9wdGlvbmFsCisJImxhYmVsIjoiZG9fcmVhZF9pbmRleCIsICMgb3B0aW9uYWwKKwkibXNnIjoiLmdpdC9pbmRleCIgICAgICAgIyBvcHRpb25hbAorfQorLS0tLS0tLS0tLS0tCisKK2AiZGF0YSJgOjoKKwlUaGlzIGV2ZW50IGlzIGdlbmVyYXRlZCB0byBsb2cgYSB0aHJlYWQtIGFuZCByZWdpb24tbG9jYWwKKwlrZXkvdmFsdWUgcGFpci4KKysKKy0tLS0tLS0tLS0tLQoreworCSJldmVudCI6ImRhdGEiLAorCS4uLgorCSJyZXBvIjoxLCAgICAgICAgICAgICAgIyBvcHRpb25hbAorCSJ0X2FicyI6MC4wMjQxMDcsICAgICAgIyBhYnNvbHV0ZSBlbGFwc2VkIHRpbWUKKwkidF9yZWwiOjAuMDAxMDMxLCAgICAgICMgZWxhcHNlZCB0aW1lIGluIHJlZ2lvbi90aHJlYWQKKwkibmVzdGluZyI6MiwgICAgICAgICAgICMgcmVnaW9uIHN0YWNrIGRlcHRoCisJImNhdGVnb3J5IjoiaW5kZXgiLAorCSJrZXkiOiJyZWFkL2NhY2hlX25yIiwKKwkidmFsdWUiOiIzNTUyIgorfQorLS0tLS0tLS0tLS0tCisrCitUaGUgInZhbHVlIiBmaWVsZCBtYXkgYmUgYW4gaW50ZWdlciBvciBhIHN0cmluZy4KKworYCJkYXRhLWpzb24iYDo6CisJVGhpcyBldmVudCBpcyBnZW5lcmF0ZWQgdG8gbG9nIGEgcHJlLWZvcm1hdHRlZCBKU09OIHN0cmluZworCWNvbnRhaW5pbmcgc3RydWN0dXJlZCBkYXRhLgorKworLS0tLS0tLS0tLS0tCit7CisJImV2ZW50IjoiZGF0YV9qc29uIiwKKwkuLi4KKwkicmVwbyI6MSwgICAgICAgICAgICAgICMgb3B0aW9uYWwKKwkidF9hYnMiOjAuMDE1OTA1LAorCSJ0X3JlbCI6MC4wMTU5MDUsCisJIm5lc3RpbmciOjEsCisJImNhdGVnb3J5IjoicHJvY2VzcyIsCisJImtleSI6IndpbmRvd3MvYW5jZXN0cnkiLAorCSJ2YWx1ZSI6WyJiYXNoLmV4ZSIsImJhc2guZXhlIl0KK30KKy0tLS0tLS0tLS0tLQorCis9PSBFeGFtcGxlIFRyYWNlMiBBUEkgVXNhZ2UKKworSGVyZSBpcyBhIGh5cG90aGV0aWNhbCB1c2FnZSBvZiB0aGUgVHJhY2UyIEFQSSBzaG93aW5nIHRoZSBpbnRlbmRlZAordXNhZ2UgKHdpdGhvdXQgd29ycnlpbmcgYWJvdXQgdGhlIGFjdHVhbCBHaXQgZGV0YWlscykuCisKK0luaXRpYWxpemF0aW9uOjoKKworCUluaXRpYWxpemF0aW9uIGhhcHBlbnMgaW4gYG1haW4oKWAuICBCZWhpbmQgdGhlIHNjZW5lcywgYW4KKwlgYXRleGl0YCBhbmQgYHNpZ25hbGAgaGFuZGxlciBhcmUgcmVnaXN0ZXJlZC4KKysKKy0tLS0tLS0tLS0tLS0tLS0KK2ludCBtYWluKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwlpbnQgZXhpdF9jb2RlOworCisJdHJhY2UyX2luaXRpYWxpemUoKTsKKwl0cmFjZTJfY21kX3N0YXJ0KGFyZ3YpOworCisJZXhpdF9jb2RlID0gY21kX21haW4oYXJnYywgYXJndik7CisKKwl0cmFjZTJfY21kX2V4aXQoZXhpdF9jb2RlKTsKKworCXJldHVybiBleGl0X2NvZGU7Cit9CistLS0tLS0tLS0tLS0tLS0tCisKK0NvbW1hbmQgRGV0YWlsczo6CisKKwlBZnRlciB0aGUgYmFzaWNzIGFyZSBlc3RhYmxpc2hlZCwgYWRkaXRpb25hbCBjb21tYW5kCisJaW5mb3JtYXRpb24gY2FuIGJlIHNlbnQgdG8gVHJhY2UyIGFzIGl0IGlzIGRpc2NvdmVyZWQuCisrCistLS0tLS0tLS0tLS0tLS0tCitpbnQgY21kX2NoZWNrb3V0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwl0cmFjZTJfY21kX25hbWUoImNoZWNrb3V0Iik7CisJdHJhY2UyX2NtZF9tb2RlKCJicmFuY2giKTsKKwl0cmFjZTJfZGVmX3JlcG8odGhlX3JlcG9zaXRvcnkpOworCisJLy8gZW1pdCAiZGVmX3BhcmFtIiBtZXNzYWdlcyBmb3IgImludGVyZXN0aW5nIiBjb25maWcgc2V0dGluZ3MuCisJdHJhY2UyX2NtZF9saXN0X2NvbmZpZygpOworCisJaWYgKGRvX3NvbWV0aGluZygpKQorCSAgICB0cmFjZTJfY21kX2Vycm9yKCJQYXRoICclcyc6IGNhbm5vdCBkbyBzb21ldGhpbmciLCBwYXRoKTsKKworCXJldHVybiAwOworfQorLS0tLS0tLS0tLS0tLS0tLQorCitDaGlsZCBQcm9jZXNzZXM6OgorCisJV3JhcCBjb2RlIHNwYXduaW5nIGNoaWxkIHByb2Nlc3Nlcy4KKysKKy0tLS0tLS0tLS0tLS0tLS0KK3ZvaWQgcnVuX2NoaWxkKC4uLikKK3sKKwlpbnQgY2hpbGRfZXhpdF9jb2RlOworCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNtZCA9IENISUxEX1BST0NFU1NfSU5JVDsKKwkuLi4KKwljbWQudHJhY2UyX2NoaWxkX2NsYXNzID0gImVkaXRvciI7CisKKwl0cmFjZTJfY2hpbGRfc3RhcnQoJmNtZCk7CisJY2hpbGRfZXhpdF9jb2RlID0gc3Bhd25fY2hpbGRfYW5kX3dhaXRfZm9yX2l0KCk7CisJdHJhY2UyX2NoaWxkX2V4aXQoJmNtZCwgY2hpbGRfZXhpdF9jb2RlKTsKK30KKy0tLS0tLS0tLS0tLS0tLS0KKysKK0ZvciBleGFtcGxlLCB0aGUgZm9sbG93aW5nIGZldGNoIGNvbW1hbmQgc3Bhd25lZCBzc2gsIGluZGV4LXBhY2ssCityZXYtbGlzdCwgYW5kIGdjLiAgVGhpcyBleGFtcGxlIGFsc28gc2hvd3MgdGhhdCBmZXRjaCB0b29rCis1LjE5OSBzZWNvbmRzIGFuZCBvZiB0aGF0IDQuOTMyIHdhcyBpbiBzc2guCisrCistLS0tLS0tLS0tLS0tLS0tCiskIGV4cG9ydCBHSVRfVFJBQ0UyX0JSSUVGPTEKKyQgZXhwb3J0IEdJVF9UUkFDRTI9fi9sb2cubm9ybWFsCiskIGdpdCBmZXRjaCBvcmlnaW4KKy4uLgorLS0tLS0tLS0tLS0tLS0tLQorKworLS0tLS0tLS0tLS0tLS0tLQorJCBjYXQgfi9sb2cubm9ybWFsCit2ZXJzaW9uIDIuMjAuMS52ZnMuMS4xLjQ3Lmc1MzRkYmUxYWQxCitzdGFydCBnaXQgZmV0Y2ggb3JpZ2luCit3b3JrdHJlZSAvVXNlcnMvamVmZmhvc3Qvd29yay9nZncKK2NtZF9uYW1lIGZldGNoIChmZXRjaCkKK2NoaWxkX3N0YXJ0WzBdIHNzaCBnaXRAZ2l0aHViLmNvbSAuLi4KK2NoaWxkX3N0YXJ0WzFdIGdpdCBpbmRleC1wYWNrIC4uLgorLi4uIChUcmFjZTIgZXZlbnRzIGZyb20gY2hpbGQgcHJvY2Vzc2VzIG9taXR0ZWQpCitjaGlsZF9leGl0WzFdIHBpZDoxNDcwNyBjb2RlOjAgZWxhcHNlZDowLjA3NjM1MworY2hpbGRfZXhpdFswXSBwaWQ6MTQ3MDYgY29kZTowIGVsYXBzZWQ6NC45MzE4NjkKK2NoaWxkX3N0YXJ0WzJdIGdpdCByZXYtbGlzdCAuLi4KKy4uLiAoVHJhY2UyIGV2ZW50cyBmcm9tIGNoaWxkIHByb2Nlc3Mgb21pdHRlZCkKK2NoaWxkX2V4aXRbMl0gcGlkOjE0NzA4IGNvZGU6MCBlbGFwc2VkOjAuMTEwNjA1CitjaGlsZF9zdGFydFszXSBnaXQgZ2MgLS1hdXRvCisuLi4gKFRyYWNlMiBldmVudHMgZnJvbSBjaGlsZCBwcm9jZXNzIG9taXR0ZWQpCitjaGlsZF9leGl0WzNdIHBpZDoxNDcwOSBjb2RlOjAgZWxhcHNlZDowLjAwNjI0MAorZXhpdCBlbGFwc2VkOjUuMTk4NTAzIGNvZGU6MAorYXRleGl0IGVsYXBzZWQ6NS4xOTg1NDEgY29kZTowCistLS0tLS0tLS0tLS0tLS0tCisrCitXaGVuIGEgZ2l0IHByb2Nlc3MgaXMgYSAoZGlyZWN0IG9yIGluZGlyZWN0KSBjaGlsZCBvZiBhbm90aGVyCitnaXQgcHJvY2VzcywgaXQgaW5oZXJpdHMgVHJhY2UyIGNvbnRleHQgaW5mb3JtYXRpb24uICBUaGlzCithbGxvd3MgdGhlIGNoaWxkIHRvIHByaW50IHRoZSBjb21tYW5kIGhpZXJhcmNoeS4gIFRoaXMgZXhhbXBsZQorc2hvd3MgZ2MgYXMgY2hpbGRbM10gb2YgZmV0Y2guICBXaGVuIHRoZSBnYyBwcm9jZXNzIHJlcG9ydHMKK2l0cyBuYW1lIGFzICJnYyIsIGl0IGFsc28gcmVwb3J0cyB0aGUgaGllcmFyY2h5IGFzICJmZXRjaC9nYyIuCisoSW4gdGhpcyBleGFtcGxlLCB0cmFjZTIgbWVzc2FnZXMgZnJvbSB0aGUgY2hpbGQgcHJvY2VzcyBpcworaW5kZW50ZWQgZm9yIGNsYXJpdHkuKQorKworLS0tLS0tLS0tLS0tLS0tLQorJCBleHBvcnQgR0lUX1RSQUNFMl9CUklFRj0xCiskIGV4cG9ydCBHSVRfVFJBQ0UyPX4vbG9nLm5vcm1hbAorJCBnaXQgZmV0Y2ggb3JpZ2luCisuLi4KKy0tLS0tLS0tLS0tLS0tLS0KKysKKy0tLS0tLS0tLS0tLS0tLS0KKyQgY2F0IH4vbG9nLm5vcm1hbAordmVyc2lvbiAyLjIwLjEuMTYwLmc1Njc2MTA3ZWNkLmRpcnR5CitzdGFydCBnaXQgZmV0Y2ggb2ZmaWNpYWwKK3dvcmt0cmVlIC9Vc2Vycy9qZWZmaG9zdC93b3JrL2dmdworY21kX25hbWUgZmV0Y2ggKGZldGNoKQorLi4uCitjaGlsZF9zdGFydFszXSBnaXQgZ2MgLS1hdXRvCisgICAgdmVyc2lvbiAyLjIwLjEuMTYwLmc1Njc2MTA3ZWNkLmRpcnR5CisgICAgc3RhcnQgL1VzZXJzL2plZmZob3N0L3dvcmsvZ2Z3L2dpdCBnYyAtLWF1dG8KKyAgICB3b3JrdHJlZSAvVXNlcnMvamVmZmhvc3Qvd29yay9nZncKKyAgICBjbWRfbmFtZSBnYyAoZmV0Y2gvZ2MpCisgICAgZXhpdCBlbGFwc2VkOjAuMDAxOTU5IGNvZGU6MAorICAgIGF0ZXhpdCBlbGFwc2VkOjAuMDAxOTk3IGNvZGU6MAorY2hpbGRfZXhpdFszXSBwaWQ6MjAzMDMgY29kZTowIGVsYXBzZWQ6MC4wMDc1NjQKK2V4aXQgZWxhcHNlZDozLjg2ODkzOCBjb2RlOjAKK2F0ZXhpdCBlbGFwc2VkOjMuODY4OTcwIGNvZGU6MAorLS0tLS0tLS0tLS0tLS0tLQorCitSZWdpb25zOjoKKworCVJlZ2lvbnMgY2FuIGJlIHVzZSB0byB0aW1lIGFuIGludGVyZXN0aW5nIHNlY3Rpb24gb2YgY29kZS4KKysKKy0tLS0tLS0tLS0tLS0tLS0KK3ZvaWQgd3Rfc3RhdHVzX2NvbGxlY3Qoc3RydWN0IHd0X3N0YXR1cyAqcykKK3sKKwl0cmFjZTJfcmVnaW9uX2VudGVyKCJzdGF0dXMiLCAid29ya3RyZWVzIiwgcy0+cmVwbyk7CisJd3Rfc3RhdHVzX2NvbGxlY3RfY2hhbmdlc193b3JrdHJlZShzKTsKKwl0cmFjZTJfcmVnaW9uX2xlYXZlKCJzdGF0dXMiLCAid29ya3RyZWVzIiwgcy0+cmVwbyk7CisKKwl0cmFjZTJfcmVnaW9uX2VudGVyKCJzdGF0dXMiLCAiaW5kZXgiLCBzLT5yZXBvKTsKKwl3dF9zdGF0dXNfY29sbGVjdF9jaGFuZ2VzX2luZGV4KHMpOworCXRyYWNlMl9yZWdpb25fbGVhdmUoInN0YXR1cyIsICJpbmRleCIsIHMtPnJlcG8pOworCisJdHJhY2UyX3JlZ2lvbl9lbnRlcigic3RhdHVzIiwgInVudHJhY2tlZCIsIHMtPnJlcG8pOworCXd0X3N0YXR1c19jb2xsZWN0X3VudHJhY2tlZChzKTsKKwl0cmFjZTJfcmVnaW9uX2xlYXZlKCJzdGF0dXMiLCAidW50cmFja2VkIiwgcy0+cmVwbyk7Cit9CisKK3ZvaWQgd3Rfc3RhdHVzX3ByaW50KHN0cnVjdCB3dF9zdGF0dXMgKnMpCit7CisJdHJhY2UyX3JlZ2lvbl9lbnRlcigic3RhdHVzIiwgInByaW50Iiwgcy0+cmVwbyk7CisJc3dpdGNoIChzLT5zdGF0dXNfZm9ybWF0KSB7CisJICAgIC4uLgorCX0KKwl0cmFjZTJfcmVnaW9uX2xlYXZlKCJzdGF0dXMiLCAicHJpbnQiLCBzLT5yZXBvKTsKK30KKy0tLS0tLS0tLS0tLS0tLS0KKysKK0luIHRoaXMgZXhhbXBsZSwgc2Nhbm5pbmcgZm9yIHVudHJhY2tlZCBmaWxlcyByYW4gZnJvbSArMC4wMTI1NjggdG8KKyswLjAyNzE0OSAoc2luY2UgdGhlIHByb2Nlc3Mgc3RhcnRlZCkgYW5kIHRvb2sgMC4wMTQ1ODEgc2Vjb25kcy4KKysKKy0tLS0tLS0tLS0tLS0tLS0KKyQgZXhwb3J0IEdJVF9UUkFDRTJfUEVSRl9CUklFRj0xCiskIGV4cG9ydCBHSVRfVFJBQ0UyX1BFUkY9fi9sb2cucGVyZgorJCBnaXQgc3RhdHVzCisuLi4KKworJCBjYXQgfi9sb2cucGVyZgorZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCB2ZXJzaW9uICAgICAgfCAgICAgfCAgICAgICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICAgIHwgMi4yMC4xLjE2MC5nNTY3NjEwN2VjZC5kaXJ0eQorZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCBzdGFydCAgICAgICAgfCAgICAgfCAgMC4wMDExNzMgfCAgICAgICAgICAgfCAgICAgICAgICAgIHwgZ2l0IHN0YXR1cworZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCBkZWZfcmVwbyAgICAgfCByMSAgfCAgICAgICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICAgIHwgd29ya3RyZWU6L1VzZXJzL2plZmZob3N0L3dvcmsvZ2Z3CitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IGNtZF9uYW1lICAgICB8ICAgICB8ICAgICAgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgICAgfCBzdGF0dXMgKHN0YXR1cykKKy4uLgorZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCByZWdpb25fZW50ZXIgfCByMSAgfCAgMC4wMTA5ODggfCAgICAgICAgICAgfCBzdGF0dXMgICAgIHwgbGFiZWw6d29ya3RyZWVzCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9sZWF2ZSB8IHIxICB8ICAwLjAxMTIzNiB8ICAwLjAwMDI0OCB8IHN0YXR1cyAgICAgfCBsYWJlbDp3b3JrdHJlZXMKK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgcmVnaW9uX2VudGVyIHwgcjEgIHwgIDAuMDExMjYwIHwgICAgICAgICAgIHwgc3RhdHVzICAgICB8IGxhYmVsOmluZGV4CitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9sZWF2ZSB8IHIxICB8ICAwLjAxMjU0MiB8ICAwLjAwMTI4MiB8IHN0YXR1cyAgICAgfCBsYWJlbDppbmRleAorZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCByZWdpb25fZW50ZXIgfCByMSAgfCAgMC4wMTI1NjggfCAgICAgICAgICAgfCBzdGF0dXMgICAgIHwgbGFiZWw6dW50cmFja2VkCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9sZWF2ZSB8IHIxICB8ICAwLjAyNzE0OSB8ICAwLjAxNDU4MSB8IHN0YXR1cyAgICAgfCBsYWJlbDp1bnRyYWNrZWQKK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgcmVnaW9uX2VudGVyIHwgcjEgIHwgIDAuMDI3NDExIHwgICAgICAgICAgIHwgc3RhdHVzICAgICB8IGxhYmVsOnByaW50CitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9sZWF2ZSB8IHIxICB8ICAwLjAyODc0MSB8ICAwLjAwMTMzMCB8IHN0YXR1cyAgICAgfCBsYWJlbDpwcmludAorZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCBleGl0ICAgICAgICAgfCAgICAgfCAgMC4wMjg3NzggfCAgICAgICAgICAgfCAgICAgICAgICAgIHwgY29kZTowCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IGF0ZXhpdCAgICAgICB8ICAgICB8ICAwLjAyODgwOSB8ICAgICAgICAgICB8ICAgICAgICAgICAgfCBjb2RlOjAKKy0tLS0tLS0tLS0tLS0tLS0KKysKK1JlZ2lvbnMgbWF5IGJlIG5lc3RlZC4gIFRoaXMgY2F1c2VzIG1lc3NhZ2VzIHRvIGJlIGluZGVudGVkIGluIHRoZQorUEVSRiB0YXJnZXQsIGZvciBleGFtcGxlLgorRWxhcHNlZCB0aW1lcyBhcmUgcmVsYXRpdmUgdG8gdGhlIHN0YXJ0IG9mIHRoZSBjb3JyZXNwb25kaW5nIG5lc3RpbmcKK2xldmVsIGFzIGV4cGVjdGVkLiAgRm9yIGV4YW1wbGUsIGlmIHdlIGFkZCByZWdpb24gbWVzc2FnZSB0bzoKKysKKy0tLS0tLS0tLS0tLS0tLS0KK3N0YXRpYyBlbnVtIHBhdGhfdHJlYXRtZW50IHJlYWRfZGlyZWN0b3J5X3JlY3Vyc2l2ZShzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyLAorCXN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLCBjb25zdCBjaGFyICpiYXNlLCBpbnQgYmFzZWxlbiwKKwlzdHJ1Y3QgdW50cmFja2VkX2NhY2hlX2RpciAqdW50cmFja2VkLCBpbnQgY2hlY2tfb25seSwKKwlpbnQgc3RvcF9hdF9maXJzdF9maWxlLCBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjKQoreworCWVudW0gcGF0aF90cmVhdG1lbnQgc3RhdGUsIHN1YmRpcl9zdGF0ZSwgZGlyX3N0YXRlID0gcGF0aF9ub25lOworCisJdHJhY2UyX3JlZ2lvbl9lbnRlcl9wcmludGYoImRpciIsICJyZWFkX3JlY3Vyc2l2ZSIsIE5VTEwsICIlLipzIiwgYmFzZWxlbiwgYmFzZSk7CisJLi4uCisJdHJhY2UyX3JlZ2lvbl9sZWF2ZV9wcmludGYoImRpciIsICJyZWFkX3JlY3Vyc2l2ZSIsIE5VTEwsICIlLipzIiwgYmFzZWxlbiwgYmFzZSk7CisJcmV0dXJuIGRpcl9zdGF0ZTsKK30KKy0tLS0tLS0tLS0tLS0tLS0KKysKK1dlIGNhbiBmdXJ0aGVyIGludmVzdGlnYXRlIHRoZSB0aW1lIHNwZW50IHNjYW5uaW5nIGZvciB1bnRyYWNrZWQgZmlsZXMuCisrCistLS0tLS0tLS0tLS0tLS0tCiskIGV4cG9ydCBHSVRfVFJBQ0UyX1BFUkZfQlJJRUY9MQorJCBleHBvcnQgR0lUX1RSQUNFMl9QRVJGPX4vbG9nLnBlcmYKKyQgZ2l0IHN0YXR1cworLi4uCiskIGNhdCB+L2xvZy5wZXJmCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHZlcnNpb24gICAgICB8ICAgICB8ICAgICAgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgICAgfCAyLjIwLjEuMTYyLmdiNGNjZWE0NGRiLmRpcnR5CitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHN0YXJ0ICAgICAgICB8ICAgICB8ICAwLjAwMTE3MyB8ICAgICAgICAgICB8ICAgICAgICAgICAgfCBnaXQgc3RhdHVzCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IGRlZl9yZXBvICAgICB8IHIxICB8ICAgICAgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgICAgfCB3b3JrdHJlZTovVXNlcnMvamVmZmhvc3Qvd29yay9nZncKK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgY21kX25hbWUgICAgIHwgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgICB8IHN0YXR1cyAoc3RhdHVzKQorLi4uCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9lbnRlciB8IHIxICB8ICAwLjAxNTA0NyB8ICAgICAgICAgICB8IHN0YXR1cyAgICAgfCBsYWJlbDp1bnRyYWNrZWQKK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgcmVnaW9uX2VudGVyIHwgICAgIHwgIDAuMDE1MTMyIHwgICAgICAgICAgIHwgZGlyICAgICAgICB8IC4ubGFiZWw6cmVhZF9yZWN1cnNpdmUKK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgcmVnaW9uX2VudGVyIHwgICAgIHwgIDAuMDE2MzQxIHwgICAgICAgICAgIHwgZGlyICAgICAgICB8IC4uLi5sYWJlbDpyZWFkX3JlY3Vyc2l2ZSB2Y3Mtc3ZuLworZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCByZWdpb25fbGVhdmUgfCAgICAgfCAgMC4wMTY0MjIgfCAgMC4wMDAwODEgfCBkaXIgICAgICAgIHwgLi4uLmxhYmVsOnJlYWRfcmVjdXJzaXZlIHZjcy1zdm4vCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9lbnRlciB8ICAgICB8ICAwLjAxNjQ0NiB8ICAgICAgICAgICB8IGRpciAgICAgICAgfCAuLi4ubGFiZWw6cmVhZF9yZWN1cnNpdmUgeGRpZmYvCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9sZWF2ZSB8ICAgICB8ICAwLjAxNjUyMiB8ICAwLjAwMDA3NiB8IGRpciAgICAgICAgfCAuLi4ubGFiZWw6cmVhZF9yZWN1cnNpdmUgeGRpZmYvCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9lbnRlciB8ICAgICB8ICAwLjAxNjYxMiB8ICAgICAgICAgICB8IGRpciAgICAgICAgfCAuLi4ubGFiZWw6cmVhZF9yZWN1cnNpdmUgZ2l0LWd1aS8KK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgcmVnaW9uX2VudGVyIHwgICAgIHwgIDAuMDE2Njk4IHwgICAgICAgICAgIHwgZGlyICAgICAgICB8IC4uLi4uLmxhYmVsOnJlYWRfcmVjdXJzaXZlIGdpdC1ndWkvcG8vCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9lbnRlciB8ICAgICB8ICAwLjAxNjgxMCB8ICAgICAgICAgICB8IGRpciAgICAgICAgfCAuLi4uLi4uLmxhYmVsOnJlYWRfcmVjdXJzaXZlIGdpdC1ndWkvcG8vZ2xvc3NhcnkvCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9sZWF2ZSB8ICAgICB8ICAwLjAxNjg2MyB8ICAwLjAwMDA1MyB8IGRpciAgICAgICAgfCAuLi4uLi4uLmxhYmVsOnJlYWRfcmVjdXJzaXZlIGdpdC1ndWkvcG8vZ2xvc3NhcnkvCisuLi4KK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgcmVnaW9uX2VudGVyIHwgICAgIHwgIDAuMDMxODc2IHwgICAgICAgICAgIHwgZGlyICAgICAgICB8IC4uLi5sYWJlbDpyZWFkX3JlY3Vyc2l2ZSBidWlsdGluLworZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCByZWdpb25fbGVhdmUgfCAgICAgfCAgMC4wMzIyNzAgfCAgMC4wMDAzOTQgfCBkaXIgICAgICAgIHwgLi4uLmxhYmVsOnJlYWRfcmVjdXJzaXZlIGJ1aWx0aW4vCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9sZWF2ZSB8ICAgICB8ICAwLjAzMjQxNCB8ICAwLjAxNzI4MiB8IGRpciAgICAgICAgfCAuLmxhYmVsOnJlYWRfcmVjdXJzaXZlCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9sZWF2ZSB8IHIxICB8ICAwLjAzMjQ1NCB8ICAwLjAxNzQwNyB8IHN0YXR1cyAgICAgfCBsYWJlbDp1bnRyYWNrZWQKKy4uLgorZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCBleGl0ICAgICAgICAgfCAgICAgfCAgMC4wMzQyNzkgfCAgICAgICAgICAgfCAgICAgICAgICAgIHwgY29kZTowCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IGF0ZXhpdCAgICAgICB8ICAgICB8ICAwLjAzNDMyMiB8ICAgICAgICAgICB8ICAgICAgICAgICAgfCBjb2RlOjAKKy0tLS0tLS0tLS0tLS0tLS0KKysKK1RyYWNlMiByZWdpb25zIGFyZSBzaW1pbGFyIHRvIHRoZSBleGlzdGluZyB0cmFjZV9wZXJmb3JtYW5jZV9lbnRlcigpCithbmQgdHJhY2VfcGVyZm9ybWFuY2VfbGVhdmUoKSByb3V0aW5lcywgYnV0IGFyZSB0aHJlYWQgc2FmZSBhbmQKK21haW50YWluIHBlci10aHJlYWQgc3RhY2tzIG9mIHRpbWVycy4KKworRGF0YSBNZXNzYWdlczo6CisKKwlEYXRhIG1lc3NhZ2VzIGFkZGVkIHRvIGEgcmVnaW9uLgorKworLS0tLS0tLS0tLS0tLS0tLQoraW50IHJlYWRfaW5kZXhfZnJvbShzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgY29uc3QgY2hhciAqcGF0aCwKKwljb25zdCBjaGFyICpnaXRkaXIpCit7CisJdHJhY2UyX3JlZ2lvbl9lbnRlcl9wcmludGYoImluZGV4IiwgImRvX3JlYWRfaW5kZXgiLCB0aGVfcmVwb3NpdG9yeSwgIiVzIiwgcGF0aCk7CisKKwkuLi4KKworCXRyYWNlMl9kYXRhX2ludG1heCgiaW5kZXgiLCB0aGVfcmVwb3NpdG9yeSwgInJlYWQvdmVyc2lvbiIsIGlzdGF0ZS0+dmVyc2lvbik7CisJdHJhY2UyX2RhdGFfaW50bWF4KCJpbmRleCIsIHRoZV9yZXBvc2l0b3J5LCAicmVhZC9jYWNoZV9uciIsIGlzdGF0ZS0+Y2FjaGVfbnIpOworCisJdHJhY2UyX3JlZ2lvbl9sZWF2ZV9wcmludGYoImluZGV4IiwgImRvX3JlYWRfaW5kZXgiLCB0aGVfcmVwb3NpdG9yeSwgIiVzIiwgcGF0aCk7Cit9CistLS0tLS0tLS0tLS0tLS0tCisrCitUaGlzIGV4YW1wbGUgc2hvd3MgdGhhdCB0aGUgaW5kZXggY29udGFpbmVkIDM1NTIgZW50cmllcy4KKysKKy0tLS0tLS0tLS0tLS0tLS0KKyQgZXhwb3J0IEdJVF9UUkFDRTJfUEVSRl9CUklFRj0xCiskIGV4cG9ydCBHSVRfVFJBQ0UyX1BFUkY9fi9sb2cucGVyZgorJCBnaXQgc3RhdHVzCisuLi4KKyQgY2F0IH4vbG9nLnBlcmYKK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgdmVyc2lvbiAgICAgIHwgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgICB8IDIuMjAuMS4xNTYuZ2Y5OTE2YWUwOTQuZGlydHkKK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgc3RhcnQgICAgICAgIHwgICAgIHwgIDAuMDAxMTczIHwgICAgICAgICAgIHwgICAgICAgICAgICB8IGdpdCBzdGF0dXMKK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgZGVmX3JlcG8gICAgIHwgcjEgIHwgICAgICAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgICB8IHdvcmt0cmVlOi9Vc2Vycy9qZWZmaG9zdC93b3JrL2dmdworZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCBjbWRfbmFtZSAgICAgfCAgICAgfCAgICAgICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICAgIHwgc3RhdHVzIChzdGF0dXMpCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9lbnRlciB8IHIxICB8ICAwLjAwMTc5MSB8ICAgICAgICAgICB8IGluZGV4ICAgICAgfCBsYWJlbDpkb19yZWFkX2luZGV4IC5naXQvaW5kZXgKK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgZGF0YSAgICAgICAgIHwgcjEgIHwgIDAuMDAyNDk0IHwgIDAuMDAwNzAzIHwgaW5kZXggICAgICB8IC4ucmVhZC92ZXJzaW9uOjIKK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgZGF0YSAgICAgICAgIHwgcjEgIHwgIDAuMDAyNTIwIHwgIDAuMDAwNzI5IHwgaW5kZXggICAgICB8IC4ucmVhZC9jYWNoZV9ucjozNTUyCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9sZWF2ZSB8IHIxICB8ICAwLjAwMjUzOSB8ICAwLjAwMDc0OCB8IGluZGV4ICAgICAgfCBsYWJlbDpkb19yZWFkX2luZGV4IC5naXQvaW5kZXgKKy4uLgorLS0tLS0tLS0tLS0tLS0tLQorCitUaHJlYWQgRXZlbnRzOjoKKworCVRocmVhZCBtZXNzYWdlcyBhZGRlZCB0byBhIHRocmVhZC1wcm9jLgorKworRm9yIGV4YW1wbGUsIHRoZSBtdWx0aXRocmVhZGVkIHByZWxvYWQtaW5kZXggY29kZSBjYW4gYmUKK2luc3RydW1lbnRlZCB3aXRoIGEgcmVnaW9uIGFyb3VuZCB0aGUgdGhyZWFkIHBvb2wgYW5kIHRoZW4KK3Blci10aHJlYWQgc3RhcnQgYW5kIGV4aXQgZXZlbnRzIHdpdGhpbiB0aGUgdGhyZWFkcHJvYy4KKysKKy0tLS0tLS0tLS0tLS0tLS0KK3N0YXRpYyB2b2lkICpwcmVsb2FkX3RocmVhZCh2b2lkICpfZGF0YSkKK3sKKwkvLyBzdGFydCB0aGUgcGVyLXRocmVhZCBjbG9jayBhbmQgZW1pdCBhIG1lc3NhZ2UuCisJdHJhY2UyX3RocmVhZF9zdGFydCgicHJlbG9hZF90aHJlYWQiKTsKKworCS8vIHJlcG9ydCB3aGljaCBjaHVuayBvZiB0aGUgYXJyYXkgdGhpcyB0aHJlYWQgd2FzIGFzc2lnbmVkLgorCXRyYWNlMl9kYXRhX2ludG1heCgiaW5kZXgiLCB0aGVfcmVwb3NpdG9yeSwgIm9mZnNldCIsIHAtPm9mZnNldCk7CisJdHJhY2UyX2RhdGFfaW50bWF4KCJpbmRleCIsIHRoZV9yZXBvc2l0b3J5LCAiY291bnQiLCBucik7CisKKwlkbyB7CisJICAgIC4uLgorCX0gd2hpbGUgKC0tbnIgPiAwKTsKKwkuLi4KKworCS8vIHJlcG9ydCBlbGFwc2VkIHRpbWUgdGFrZW4gYnkgdGhpcyB0aHJlYWQuCisJdHJhY2UyX3RocmVhZF9leGl0KCk7CisJcmV0dXJuIE5VTEw7Cit9CisKK3ZvaWQgcHJlbG9hZF9pbmRleChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmluZGV4LAorCWNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCisJdW5zaWduZWQgaW50IHJlZnJlc2hfZmxhZ3MpCit7CisJdHJhY2UyX3JlZ2lvbl9lbnRlcigiaW5kZXgiLCAicHJlbG9hZCIsIHRoZV9yZXBvc2l0b3J5KTsKKworCWZvciAoaSA9IDA7IGkgPCB0aHJlYWRzOyBpKyspIHsKKwkgICAgLi4uIC8qIGNyZWF0ZSB0aHJlYWQgKi8KKwl9CisKKwlmb3IgKGkgPSAwOyBpIDwgdGhyZWFkczsgaSsrKSB7CisJICAgIC4uLiAvKiBqb2luIHRocmVhZCAqLworCX0KKworCXRyYWNlMl9yZWdpb25fbGVhdmUoImluZGV4IiwgInByZWxvYWQiLCB0aGVfcmVwb3NpdG9yeSk7Cit9CistLS0tLS0tLS0tLS0tLS0tCisrCitJbiB0aGlzIGV4YW1wbGUgcHJlbG9hZF9pbmRleCgpIHdhcyBleGVjdXRlZCBieSB0aGUgYG1haW5gIHRocmVhZAorYW5kIHN0YXJ0ZWQgdGhlIGBwcmVsb2FkYCByZWdpb24uICBTZXZlbiB0aHJlYWRzLCBuYW1lZAorYHRoMDE6cHJlbG9hZF90aHJlYWRgIHRocm91Z2ggYHRoMDc6cHJlbG9hZF90aHJlYWRgLCB3ZXJlIHN0YXJ0ZWQuCitFdmVudHMgZnJvbSBlYWNoIHRocmVhZCBhcmUgYXRvbWljYWxseSBhcHBlbmRlZCB0byB0aGUgc2hhcmVkIHRhcmdldAorc3RyZWFtIGFzIHRoZXkgb2NjdXIgc28gdGhleSBtYXkgYXBwZWFyIGluIHJhbmRvbSBvcmRlciB3aXRoIHJlc3BlY3QKK290aGVyIHRocmVhZHMuIEZpbmFsbHksIHRoZSBtYWluIHRocmVhZCB3YWl0cyBmb3IgdGhlIHRocmVhZHMgdG8KK2ZpbmlzaCBhbmQgbGVhdmVzIHRoZSByZWdpb24uCisrCitEYXRhIGV2ZW50cyBhcmUgdGFnZ2VkIHdpdGggdGhlIGFjdGl2ZSB0aHJlYWQgbmFtZS4gIFRoZXkgYXJlIHVzZWQKK3RvIHJlcG9ydCB0aGUgcGVyLXRocmVhZCBwYXJhbWV0ZXJzLgorKworLS0tLS0tLS0tLS0tLS0tLQorJCBleHBvcnQgR0lUX1RSQUNFMl9QRVJGX0JSSUVGPTEKKyQgZXhwb3J0IEdJVF9UUkFDRTJfUEVSRj1+L2xvZy5wZXJmCiskIGdpdCBzdGF0dXMKKy4uLgorJCBjYXQgfi9sb2cucGVyZgorLi4uCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IHJlZ2lvbl9lbnRlciB8IHIxICB8ICAwLjAwMjU5NSB8ICAgICAgICAgICB8IGluZGV4ICAgICAgfCBsYWJlbDpwcmVsb2FkCitkMCB8IHRoMDE6cHJlbG9hZF90aHJlYWQgICAgICB8IHRocmVhZF9zdGFydCB8ICAgICB8ICAwLjAwMjY5OSB8ICAgICAgICAgICB8ICAgICAgICAgICAgfAorZDAgfCB0aDAyOnByZWxvYWRfdGhyZWFkICAgICAgfCB0aHJlYWRfc3RhcnQgfCAgICAgfCAgMC4wMDI3MjEgfCAgICAgICAgICAgfCAgICAgICAgICAgIHwKK2QwIHwgdGgwMTpwcmVsb2FkX3RocmVhZCAgICAgIHwgZGF0YSAgICAgICAgIHwgcjEgIHwgIDAuMDAyNzM2IHwgIDAuMDAwMDM3IHwgaW5kZXggICAgICB8IG9mZnNldDowCitkMCB8IHRoMDI6cHJlbG9hZF90aHJlYWQgICAgICB8IGRhdGEgICAgICAgICB8IHIxICB8ICAwLjAwMjc1MSB8ICAwLjAwMDAzMCB8IGluZGV4ICAgICAgfCBvZmZzZXQ6MjAzMgorZDAgfCB0aDAzOnByZWxvYWRfdGhyZWFkICAgICAgfCB0aHJlYWRfc3RhcnQgfCAgICAgfCAgMC4wMDI3MTEgfCAgICAgICAgICAgfCAgICAgICAgICAgIHwKK2QwIHwgdGgwNjpwcmVsb2FkX3RocmVhZCAgICAgIHwgdGhyZWFkX3N0YXJ0IHwgICAgIHwgIDAuMDAyNzM5IHwgICAgICAgICAgIHwgICAgICAgICAgICB8CitkMCB8IHRoMDE6cHJlbG9hZF90aHJlYWQgICAgICB8IGRhdGEgICAgICAgICB8IHIxICB8ICAwLjAwMjc2NiB8ICAwLjAwMDA2NyB8IGluZGV4ICAgICAgfCBjb3VudDo1MDgKK2QwIHwgdGgwNjpwcmVsb2FkX3RocmVhZCAgICAgIHwgZGF0YSAgICAgICAgIHwgcjEgIHwgIDAuMDAyODU2IHwgIDAuMDAwMTE3IHwgaW5kZXggICAgICB8IG9mZnNldDoyNTQwCitkMCB8IHRoMDM6cHJlbG9hZF90aHJlYWQgICAgICB8IGRhdGEgICAgICAgICB8IHIxICB8ICAwLjAwMjgyNCB8ICAwLjAwMDExMyB8IGluZGV4ICAgICAgfCBvZmZzZXQ6MTAxNgorZDAgfCB0aDA0OnByZWxvYWRfdGhyZWFkICAgICAgfCB0aHJlYWRfc3RhcnQgfCAgICAgfCAgMC4wMDI3MTAgfCAgICAgICAgICAgfCAgICAgICAgICAgIHwKK2QwIHwgdGgwMjpwcmVsb2FkX3RocmVhZCAgICAgIHwgZGF0YSAgICAgICAgIHwgcjEgIHwgIDAuMDAyNzc5IHwgIDAuMDAwMDU4IHwgaW5kZXggICAgICB8IGNvdW50OjUwOAorZDAgfCB0aDA2OnByZWxvYWRfdGhyZWFkICAgICAgfCBkYXRhICAgICAgICAgfCByMSAgfCAgMC4wMDI5NjYgfCAgMC4wMDAyMjcgfCBpbmRleCAgICAgIHwgY291bnQ6NTA4CitkMCB8IHRoMDc6cHJlbG9hZF90aHJlYWQgICAgICB8IHRocmVhZF9zdGFydCB8ICAgICB8ICAwLjAwMjc0MSB8ICAgICAgICAgICB8ICAgICAgICAgICAgfAorZDAgfCB0aDA3OnByZWxvYWRfdGhyZWFkICAgICAgfCBkYXRhICAgICAgICAgfCByMSAgfCAgMC4wMDMwMTcgfCAgMC4wMDAyNzYgfCBpbmRleCAgICAgIHwgb2Zmc2V0OjMwNDgKK2QwIHwgdGgwNTpwcmVsb2FkX3RocmVhZCAgICAgIHwgdGhyZWFkX3N0YXJ0IHwgICAgIHwgIDAuMDAyNzEyIHwgICAgICAgICAgIHwgICAgICAgICAgICB8CitkMCB8IHRoMDU6cHJlbG9hZF90aHJlYWQgICAgICB8IGRhdGEgICAgICAgICB8IHIxICB8ICAwLjAwMzA2NyB8ICAwLjAwMDM1NSB8IGluZGV4ICAgICAgfCBvZmZzZXQ6MTUyNAorZDAgfCB0aDA1OnByZWxvYWRfdGhyZWFkICAgICAgfCBkYXRhICAgICAgICAgfCByMSAgfCAgMC4wMDMwOTAgfCAgMC4wMDAzNzggfCBpbmRleCAgICAgIHwgY291bnQ6NTA4CitkMCB8IHRoMDc6cHJlbG9hZF90aHJlYWQgICAgICB8IGRhdGEgICAgICAgICB8IHIxICB8ICAwLjAwMzAzNyB8ICAwLjAwMDI5NiB8IGluZGV4ICAgICAgfCBjb3VudDo1MDQKK2QwIHwgdGgwMzpwcmVsb2FkX3RocmVhZCAgICAgIHwgZGF0YSAgICAgICAgIHwgcjEgIHwgIDAuMDAyOTcxIHwgIDAuMDAwMjYwIHwgaW5kZXggICAgICB8IGNvdW50OjUwOAorZDAgfCB0aDA0OnByZWxvYWRfdGhyZWFkICAgICAgfCBkYXRhICAgICAgICAgfCByMSAgfCAgMC4wMDI5ODMgfCAgMC4wMDAyNzMgfCBpbmRleCAgICAgIHwgb2Zmc2V0OjUwOAorZDAgfCB0aDA0OnByZWxvYWRfdGhyZWFkICAgICAgfCBkYXRhICAgICAgICAgfCByMSAgfCAgMC4wMDczMTEgfCAgMC4wMDQ2MDEgfCBpbmRleCAgICAgIHwgY291bnQ6NTA4CitkMCB8IHRoMDU6cHJlbG9hZF90aHJlYWQgICAgICB8IHRocmVhZF9leGl0ICB8ICAgICB8ICAwLjAwODc4MSB8ICAwLjAwNjA2OSB8ICAgICAgICAgICAgfAorZDAgfCB0aDAxOnByZWxvYWRfdGhyZWFkICAgICAgfCB0aHJlYWRfZXhpdCAgfCAgICAgfCAgMC4wMDk1NjEgfCAgMC4wMDY4NjIgfCAgICAgICAgICAgIHwKK2QwIHwgdGgwMzpwcmVsb2FkX3RocmVhZCAgICAgIHwgdGhyZWFkX2V4aXQgIHwgICAgIHwgIDAuMDA5NzQyIHwgIDAuMDA3MDMxIHwgICAgICAgICAgICB8CitkMCB8IHRoMDY6cHJlbG9hZF90aHJlYWQgICAgICB8IHRocmVhZF9leGl0ICB8ICAgICB8ICAwLjAwOTgyMCB8ICAwLjAwNzA4MSB8ICAgICAgICAgICAgfAorZDAgfCB0aDAyOnByZWxvYWRfdGhyZWFkICAgICAgfCB0aHJlYWRfZXhpdCAgfCAgICAgfCAgMC4wMTAyNzQgfCAgMC4wMDc1NTMgfCAgICAgICAgICAgIHwKK2QwIHwgdGgwNzpwcmVsb2FkX3RocmVhZCAgICAgIHwgdGhyZWFkX2V4aXQgIHwgICAgIHwgIDAuMDEwNDc3IHwgIDAuMDA3NzM2IHwgICAgICAgICAgICB8CitkMCB8IHRoMDQ6cHJlbG9hZF90aHJlYWQgICAgICB8IHRocmVhZF9leGl0ICB8ICAgICB8ICAwLjAxMTY1NyB8ICAwLjAwODk0NyB8ICAgICAgICAgICAgfAorZDAgfCBtYWluICAgICAgICAgICAgICAgICAgICAgfCByZWdpb25fbGVhdmUgfCByMSAgfCAgMC4wMTE3MTcgfCAgMC4wMDkxMjIgfCBpbmRleCAgICAgIHwgbGFiZWw6cHJlbG9hZAorLi4uCitkMCB8IG1haW4gICAgICAgICAgICAgICAgICAgICB8IGV4aXQgICAgICAgICB8ICAgICB8ICAwLjAyOTk5NiB8ICAgICAgICAgICB8ICAgICAgICAgICAgfCBjb2RlOjAKK2QwIHwgbWFpbiAgICAgICAgICAgICAgICAgICAgIHwgYXRleGl0ICAgICAgIHwgICAgIHwgIDAuMDMwMDI3IHwgICAgICAgICAgIHwgICAgICAgICAgICB8IGNvZGU6MAorLS0tLS0tLS0tLS0tLS0tLQorKworSW4gdGhpcyBleGFtcGxlLCB0aGUgcHJlbG9hZCByZWdpb24gdG9vayAwLjAwOTEyMiBzZWNvbmRzLiAgVGhlIDcgdGhyZWFkcwordG9vayBiZXR3ZWVuIDAuMDA2MDY5IGFuZCAwLjAwODk0NyBzZWNvbmRzIHRvIHdvcmsgb24gdGhlaXIgcG9ydGlvbiBvZgordGhlIGluZGV4LiAgVGhyZWFkICJ0aDAxIiB3b3JrZWQgb24gNTA4IGl0ZW1zIGF0IG9mZnNldCAwLiAgVGhyZWFkICJ0aDAyIgord29ya2VkIG9uIDUwOCBpdGVtcyBhdCBvZmZzZXQgMjAzMi4gIFRocmVhZCAidGgwNCIgd29ya2VkIG9uIDUwOCBpdGVtcworYXQgb2Zmc2V0IDUwOC4KKysKK1RoaXMgZXhhbXBsZSBhbHNvIHNob3dzIHRoYXQgdGhyZWFkIG5hbWVzIGFyZSBhc3NpZ25lZCBpbiBhIHJhY3kgbWFubmVyCithcyBlYWNoIHRocmVhZCBzdGFydHMgYW5kIGFsbG9jYXRlcyBUTFMgc3RvcmFnZS4KKworPT0gRnV0dXJlIFdvcmsKKworPT09IFJlbGF0aW9uc2hpcCB0byB0aGUgRXhpc3RpbmcgVHJhY2UgQXBpIChhcGktdHJhY2UudHh0KQorCitUaGVyZSBhcmUgYSBmZXcgaXNzdWVzIHRvIHJlc29sdmUgYmVmb3JlIHdlIGNhbiBjb21wbGV0ZWx5Citzd2l0Y2ggdG8gVHJhY2UyLgorCisqIFVwZGF0aW5nIGV4aXN0aW5nIHRlc3RzIHRoYXQgYXNzdW1lIEdJVF9UUkFDRSBmb3JtYXQgbWVzc2FnZXMuCisKKyogSG93IHRvIGJlc3QgaGFuZGxlIGN1c3RvbSBHSVRfVFJBQ0VfPGtleT4gbWVzc2FnZXM/CisKKyoqIFRoZSBHSVRfVFJBQ0VfPGtleT4gbWVjaGFuaXNtIGFsbG93cyBlYWNoIDxrZXk+IHRvIHdyaXRlIHRvIGEKK2RpZmZlcmVudCBmaWxlIChpbiBhZGRpdGlvbiB0byBqdXN0IHN0ZGVycikuCisKKyoqIERvIHdlIHdhbnQgdG8gbWFpbnRhaW4gdGhhdCBhYmlsaXR5IG9yIHNpbXBseSB3cml0ZSB0byB0aGUgZXhpc3RpbmcKK1RyYWNlMiB0YXJnZXRzIChhbmQgY29udmVydCA8a2V5PiB0byBhICJjYXRlZ29yeSIpLgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXRyZWUtd2Fsa2luZy50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktdHJlZS13YWxraW5nLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmRlMTg2Mi4uMDAwMDAwMAotLS0gYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktdHJlZS13YWxraW5nLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE0NyArMCwwIEBACi10cmVlIHdhbGtpbmcgQVBJCi09PT09PT09PT09PT09PT09Ci0KLVRoZSB0cmVlIHdhbGtpbmcgQVBJIGlzIHVzZWQgdG8gdHJhdmVyc2UgYW5kIGluc3BlY3QgdHJlZXMuCi0KLURhdGEgU3RydWN0dXJlcwotLS0tLS0tLS0tLS0tLS0tCi0KLWBzdHJ1Y3QgbmFtZV9lbnRyeWA6OgotCi0JQW4gZW50cnkgaW4gYSB0cmVlLiBFYWNoIGVudHJ5IGhhcyBhIHNoYTEgaWRlbnRpZmllciwgcGF0aG5hbWUsIGFuZAotCW1vZGUuCi0KLWBzdHJ1Y3QgdHJlZV9kZXNjYDo6Ci0KLQlBIHNlbWktb3BhcXVlIGRhdGEgc3RydWN0dXJlIHVzZWQgdG8gbWFpbnRhaW4gdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlCi0Jd2Fsay4KLSsKLSogYGJ1ZmZlcmAgaXMgYSBwb2ludGVyIGludG8gdGhlIG1lbW9yeSByZXByZXNlbnRhdGlvbiBvZiB0aGUgdHJlZS4gSXQgYWx3YXlzCi1wb2ludHMgYXQgdGhlIGN1cnJlbnQgZW50cnkgYmVpbmcgdmlzaXRlZC4KLQotKiBgc2l6ZWAgY291bnRzIHRoZSBudW1iZXIgb2YgYnl0ZXMgbGVmdCBpbiB0aGUgYGJ1ZmZlcmAuCi0KLSogYGVudHJ5YCBwb2ludHMgdG8gdGhlIGN1cnJlbnQgZW50cnkgYmVpbmcgdmlzaXRlZC4KLQotYHN0cnVjdCB0cmF2ZXJzZV9pbmZvYDo6Ci0KLQlBIHN0cnVjdHVyZSB1c2VkIHRvIG1haW50YWluIHRoZSBzdGF0ZSBvZiBhIHRyYXZlcnNhbC4KLSsKLSogYHByZXZgIHBvaW50cyB0byB0aGUgdHJhdmVyc2VfaW5mbyB3aGljaCB3YXMgdXNlZCB0byBkZXNjZW5kIGludG8gdGhlCi1jdXJyZW50IHRyZWUuIElmIHRoaXMgaXMgdGhlIHRvcC1sZXZlbCB0cmVlIGBwcmV2YCB3aWxsIHBvaW50IHRvCi1hIGR1bW15IHRyYXZlcnNlX2luZm8uCi0KLSogYG5hbWVgIGlzIHRoZSBlbnRyeSBmb3IgdGhlIGN1cnJlbnQgdHJlZSAoaWYgdGhlIHRyZWUgaXMgYSBzdWJ0cmVlKS4KLQotKiBgcGF0aGxlbmAgaXMgdGhlIGxlbmd0aCBvZiB0aGUgZnVsbCBwYXRoIGZvciB0aGUgY3VycmVudCB0cmVlLgotCi0qIGBjb25mbGljdHNgIGNhbiBiZSB1c2VkIGJ5IGNhbGxiYWNrcyB0byBtYWludGFpbiBkaXJlY3RvcnktZmlsZSBjb25mbGljdHMuCi0KLSogYGZuYCBpcyBhIGNhbGxiYWNrIGNhbGxlZCBmb3IgZWFjaCBlbnRyeSBpbiB0aGUgdHJlZS4gU2VlIFRyYXZlcnNpbmcgZm9yIG1vcmUKLWluZm9ybWF0aW9uLgotCi0qIGBkYXRhYCBjYW4gYmUgYW55dGhpbmcgdGhlIGBmbmAgY2FsbGJhY2sgd291bGQgd2FudCB0byB1c2UuCi0KLSogYHNob3dfYWxsX2Vycm9yc2AgdGVsbHMgd2hldGhlciB0byBzdG9wIGF0IHRoZSBmaXJzdCBlcnJvciBvciBub3QuCi0KLUluaXRpYWxpemluZwotLS0tLS0tLS0tLS0tCi0KLWBpbml0X3RyZWVfZGVzY2A6OgotCi0JSW5pdGlhbGl6ZSBhIGB0cmVlX2Rlc2NgIGFuZCBkZWNvZGUgaXRzIGZpcnN0IGVudHJ5LiBUaGUgYnVmZmVyIGFuZAotCXNpemUgcGFyYW1ldGVycyBhcmUgYXNzdW1lZCB0byBiZSB0aGUgc2FtZSBhcyB0aGUgYnVmZmVyIGFuZCBzaXplCi0JbWVtYmVycyBvZiBgc3RydWN0IHRyZWVgLgotCi1gZmlsbF90cmVlX2Rlc2NyaXB0b3JgOjoKLQotCUluaXRpYWxpemUgYSBgdHJlZV9kZXNjYCBhbmQgZGVjb2RlIGl0cyBmaXJzdCBlbnRyeSBnaXZlbiB0aGUKLQlvYmplY3QgSUQgb2YgYSB0cmVlLiBSZXR1cm5zIHRoZSBgYnVmZmVyYCBtZW1iZXIgaWYgdGhlIGxhdHRlcgotCWlzIGEgdmFsaWQgdHJlZSBpZGVudGlmaWVyIGFuZCBOVUxMIG90aGVyd2lzZS4KLQotYHNldHVwX3RyYXZlcnNlX2luZm9gOjoKLQotCUluaXRpYWxpemUgYSBgdHJhdmVyc2VfaW5mb2AgZ2l2ZW4gdGhlIHBhdGhuYW1lIG9mIHRoZSB0cmVlIHRvIHN0YXJ0Ci0JdHJhdmVyc2luZyBmcm9tLiBUaGUgYGJhc2VgIGFyZ3VtZW50IGlzIGFzc3VtZWQgdG8gYmUgdGhlIGBwYXRoYAotCW1lbWJlciBvZiB0aGUgYG5hbWVfZW50cnlgIGJlaW5nIHJlY3Vyc2VkIGludG8gdW5sZXNzIHRoZSB0cmVlIGlzIGEKLQl0b3AtbGV2ZWwgdHJlZSBpbiB3aGljaCBjYXNlIHRoZSBlbXB0eSBzdHJpbmcgKCIiKSBpcyB1c2VkLgotCi1XYWxraW5nCi0tLS0tLS0tCi0KLWB0cmVlX2VudHJ5YDo6Ci0KLQlWaXNpdCB0aGUgbmV4dCBlbnRyeSBpbiBhIHRyZWUuIFJldHVybnMgMSB3aGVuIHRoZXJlIGFyZSBtb3JlIGVudHJpZXMKLQlsZWZ0IHRvIHZpc2l0IGFuZCAwIHdoZW4gYWxsIGVudHJpZXMgaGF2ZSBiZWVuIHZpc2l0ZWQuIFRoaXMgaXMKLQljb21tb25seSB1c2VkIGluIHRoZSB0ZXN0IG9mIGEgd2hpbGUgbG9vcC4KLQotYHRyZWVfZW50cnlfbGVuYDo6Ci0KLQlDYWxjdWxhdGUgdGhlIGxlbmd0aCBvZiBhIHRyZWUgZW50cnkncyBwYXRobmFtZS4gVGhpcyB1dGlsaXplcyB0aGUKLQltZW1vcnkgc3RydWN0dXJlIG9mIGEgdHJlZSBlbnRyeSB0byBhdm9pZCB0aGUgb3ZlcmhlYWQgb2YgdXNpbmcgYQotCWdlbmVyaWMgc3RybGVuKCkuCi0KLWB1cGRhdGVfdHJlZV9lbnRyeWA6OgotCi0JV2FsayB0byB0aGUgbmV4dCBlbnRyeSBpbiBhIHRyZWUuIFRoaXMgaXMgY29tbW9ubHkgdXNlZCBpbiBjb25qdW5jdGlvbgotCXdpdGggYHRyZWVfZW50cnlfZXh0cmFjdGAgdG8gaW5zcGVjdCB0aGUgY3VycmVudCBlbnRyeS4KLQotYHRyZWVfZW50cnlfZXh0cmFjdGA6OgotCi0JRGVjb2RlIHRoZSBlbnRyeSBjdXJyZW50bHkgYmVpbmcgdmlzaXRlZCAodGhlIG9uZSBwb2ludGVkIHRvIGJ5Ci0JYHRyZWVfZGVzYydzYCBgZW50cnlgIG1lbWJlcikgYW5kIHJldHVybiB0aGUgc2hhMSBvZiB0aGUgZW50cnkuIFRoZQotCWBwYXRocGAgYW5kIGBtb2RlcGAgYXJndW1lbnRzIGFyZSBzZXQgdG8gdGhlIGVudHJ5J3MgcGF0aG5hbWUgYW5kIG1vZGUKLQlyZXNwZWN0aXZlbHkuCi0KLWBnZXRfdHJlZV9lbnRyeWA6OgotCi0JRmluZCBhbiBlbnRyeSBpbiBhIHRyZWUgZ2l2ZW4gYSBwYXRobmFtZSBhbmQgdGhlIHNoYTEgb2YgYSB0cmVlIHRvCi0Jc2VhcmNoLiBSZXR1cm5zIDAgaWYgdGhlIGVudHJ5IGlzIGZvdW5kIGFuZCAtMSBvdGhlcndpc2UuIFRoZSB0aGlyZAotCWFuZCBmb3VydGggcGFyYW1ldGVycyBhcmUgc2V0IHRvIHRoZSBlbnRyeSdzIHNoYTEgYW5kIG1vZGUKLQlyZXNwZWN0aXZlbHkuCi0KLVRyYXZlcnNpbmcKLS0tLS0tLS0tLS0KLQotYHRyYXZlcnNlX3RyZWVzYDo6Ci0KLQlUcmF2ZXJzZSBgbmAgbnVtYmVyIG9mIHRyZWVzIGluIHBhcmFsbGVsLiBUaGUgYGZuYCBjYWxsYmFjayBtZW1iZXIgb2YKLQlgdHJhdmVyc2VfaW5mb2AgaXMgY2FsbGVkIG9uY2UgZm9yIGVhY2ggdHJlZSBlbnRyeS4KLQotYHRyYXZlcnNlX2NhbGxiYWNrX3RgOjoKLQlUaGUgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgdHJhdmVyc2UgY2FsbGJhY2sgYXJlIGFzIGZvbGxvd3M6Ci0rCi0qIGBuYCBjb3VudHMgdGhlIG51bWJlciBvZiB0cmVlcyBiZWluZyB0cmF2ZXJzZWQuCi0KLSogYG1hc2tgIGhhcyBpdHMgbnRoIGJpdCBzZXQgaWYgc29tZXRoaW5nIGV4aXN0cyBpbiB0aGUgbnRoIGVudHJ5LgotCi0qIGBkaXJtYXNrYCBoYXMgaXRzIG50aCBiaXQgc2V0IGlmIHRoZSBudGggdHJlZSdzIGVudHJ5IGlzIGEgZGlyZWN0b3J5LgotCi0qIGBlbnRyeWAgaXMgYW4gYXJyYXkgb2Ygc2l6ZSBgbmAgd2hlcmUgdGhlIG50aCBlbnRyeSBpcyBmcm9tIHRoZSBudGggdHJlZS4KLQotKiBgaW5mb2AgbWFpbnRhaW5zIHRoZSBzdGF0ZSBvZiB0aGUgdHJhdmVyc2FsLgotCi0rCi1SZXR1cm5pbmcgYSBuZWdhdGl2ZSB2YWx1ZSB3aWxsIHRlcm1pbmF0ZSB0aGUgdHJhdmVyc2FsLiBPdGhlcndpc2UgdGhlCi1yZXR1cm4gdmFsdWUgaXMgdHJlYXRlZCBhcyBhbiB1cGRhdGUgbWFzay4gSWYgdGhlIG50aCBiaXQgaXMgc2V0IHRoZSBudGggdHJlZQotd2lsbCBiZSB1cGRhdGVkIGFuZCBpZiB0aGUgYml0IGlzIG5vdCBzZXQgdGhlIG50aCB0cmVlIGVudHJ5IHdpbGwgYmUgdGhlCi1zYW1lIGluIHRoZSBuZXh0IGNhbGxiYWNrIGludm9jYXRpb24uCi0KLWBtYWtlX3RyYXZlcnNlX3BhdGhgOjoKLQotCUdlbmVyYXRlIHRoZSBmdWxsIHBhdGhuYW1lIG9mIGEgdHJlZSBlbnRyeSBiYXNlZCBmcm9tIHRoZSByb290IG9mIHRoZQotCXRyYXZlcnNhbC4gRm9yIGV4YW1wbGUsIGlmIHRoZSB0cmF2ZXJzYWwgaGFzIHJlY3Vyc2VkIGludG8gYW5vdGhlcgotCXRyZWUgbmFtZWQgImJhciIgdGhlIHBhdGhuYW1lIG9mIGFuIGVudHJ5ICJiYXoiIGluIHRoZSAiYmFyIgotCXRyZWUgd291bGQgYmUgImJhci9iYXoiLgotCi1gdHJhdmVyc2VfcGF0aF9sZW5gOjoKLQotCUNhbGN1bGF0ZSB0aGUgbGVuZ3RoIG9mIGEgcGF0aG5hbWUgcmV0dXJuZWQgYnkgYG1ha2VfdHJhdmVyc2VfcGF0aGAuCi0JVGhpcyB1dGlsaXplcyB0aGUgbWVtb3J5IHN0cnVjdHVyZSBvZiBhIHRyZWUgZW50cnkgdG8gYXZvaWQgdGhlCi0Jb3ZlcmhlYWQgb2YgdXNpbmcgYSBnZW5lcmljIHN0cmxlbigpLgotCi1BdXRob3JzCi0tLS0tLS0tCi0KLVdyaXR0ZW4gYnkgSnVuaW8gQyBIYW1hbm8gPGdpdHN0ZXJAcG9ib3guY29tPiBhbmQgTGludXMgVG9ydmFsZHMKLTx0b3J2YWxkc0BsaW51eC1mb3VuZGF0aW9uLm9yZz4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS14ZGlmZi1pbnRlcmZhY2UudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXhkaWZmLWludGVyZmFjZS50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYyOTZlY2EuLjAwMDAwMDAKLS0tIGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXhkaWZmLWludGVyZmFjZS50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLXhkaWZmIGludGVyZmFjZSBBUEkKLT09PT09PT09PT09PT09PT09PT0KLQotVGFsayBhYm91dCBvdXIgY2FsbGluZyBjb252ZW50aW9uIHRvIHhkaWZmIGxpYnJhcnksIGluY2x1ZGluZwoteGRpZmZfZW1pdF9jb25zdW1lX2ZuLgotCi0oRHNjaG8sIEpDKQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYnVuZGxlLWZvcm1hdC50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9idW5kbGUtZm9ybWF0LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZTgyODE1Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYnVuZGxlLWZvcm1hdC50eHQKQEAgLTAsMCArMSw0OCBAQAorPSBHaXQgYnVuZGxlIHYyIGZvcm1hdAorCitUaGUgR2l0IGJ1bmRsZSBmb3JtYXQgaXMgYSBmb3JtYXQgdGhhdCByZXByZXNlbnRzIGJvdGggcmVmcyBhbmQgR2l0IG9iamVjdHMuCisKKz09IEZvcm1hdAorCitXZSB3aWxsIHVzZSBBQk5GIG5vdGF0aW9uIHRvIGRlZmluZSB0aGUgR2l0IGJ1bmRsZSBmb3JtYXQuIFNlZQorcHJvdG9jb2wtY29tbW9uLnR4dCBmb3IgdGhlIGRldGFpbHMuCisKKy0tLS0KK2J1bmRsZSAgICA9IHNpZ25hdHVyZSAqcHJlcmVxdWlzaXRlICpyZWZlcmVuY2UgTEYgcGFjaworc2lnbmF0dXJlID0gIiMgdjIgZ2l0IGJ1bmRsZSIgTEYKKworcHJlcmVxdWlzaXRlID0gIi0iIG9iai1pZCBTUCBjb21tZW50IExGCitjb21tZW50ICAgICAgPSAqQ0hBUgorcmVmZXJlbmNlICAgID0gb2JqLWlkIFNQIHJlZm5hbWUgTEYKKworcGFjayAgICAgICAgID0gLi4uIDsgcGFja2ZpbGUKKy0tLS0KKworPT0gU2VtYW50aWNzCisKK0EgR2l0IGJ1bmRsZSBjb25zaXN0cyBvZiB0aHJlZSBwYXJ0cy4KKworKiAiUHJlcmVxdWlzaXRlcyIgbGlzdHMgdGhlIG9iamVjdHMgdGhhdCBhcmUgTk9UIGluY2x1ZGVkIGluIHRoZSBidW5kbGUgYW5kIHRoZQorICByZWFkZXIgb2YgdGhlIGJ1bmRsZSBNVVNUIGFscmVhZHkgaGF2ZSwgaW4gb3JkZXIgdG8gdXNlIHRoZSBkYXRhIGluIHRoZQorICBidW5kbGUuIFRoZSBvYmplY3RzIHN0b3JlZCBpbiB0aGUgYnVuZGxlIG1heSByZWZlciB0byBwcmVyZXF1aXNpdGUgb2JqZWN0cyBhbmQKKyAgYW55dGhpbmcgcmVhY2hhYmxlIGZyb20gdGhlbSAoZS5nLiBhIHRyZWUgb2JqZWN0IGluIHRoZSBidW5kbGUgY2FuIHJlZmVyZW5jZQorICBhIGJsb2IgdGhhdCBpcyByZWFjaGFibGUgZnJvbSBhIHByZXJlcXVpc2l0ZSkgYW5kL29yIGV4cHJlc3NlZCBhcyBhIGRlbHRhCisgIGFnYWluc3QgcHJlcmVxdWlzaXRlIG9iamVjdHMuCisKKyogIlJlZmVyZW5jZXMiIHJlY29yZCB0aGUgdGlwcyBvZiB0aGUgaGlzdG9yeSBncmFwaCwgaW93LCB3aGF0IHRoZSByZWFkZXIgb2YgdGhlCisgIGJ1bmRsZSBDQU4gImdpdCBmZXRjaCIgZnJvbSBpdC4KKworKiAiUGFjayIgaXMgdGhlIHBhY2sgZGF0YSBzdHJlYW0gImdpdCBmZXRjaCIgd291bGQgc2VuZCwgaWYgeW91IGZldGNoIGZyb20gYQorICByZXBvc2l0b3J5IHRoYXQgaGFzIHRoZSByZWZlcmVuY2VzIHJlY29yZGVkIGluIHRoZSAiUmVmZXJlbmNlcyIgYWJvdmUgaW50byBhCisgIHJlcG9zaXRvcnkgdGhhdCBoYXMgcmVmZXJlbmNlcyBwb2ludGluZyBhdCB0aGUgb2JqZWN0cyBsaXN0ZWQgaW4KKyAgIlByZXJlcXVpc2l0ZXMiIGFib3ZlLgorCitJbiB0aGUgYnVuZGxlIGZvcm1hdCwgdGhlcmUgY2FuIGJlIGEgY29tbWVudCBmb2xsb3dpbmcgYSBwcmVyZXF1aXNpdGUgb2JqLWlkLgorVGhpcyBpcyBhIGNvbW1lbnQgYW5kIGl0IGhhcyBubyBzcGVjaWZpYyBtZWFuaW5nLiBUaGUgd3JpdGVyIG9mIHRoZSBidW5kbGUgTUFZCitwdXQgYW55IHN0cmluZyBoZXJlLiBUaGUgcmVhZGVyIG9mIHRoZSBidW5kbGUgTVVTVCBpZ25vcmUgdGhlIGNvbW1lbnQuCisKKz09PSBOb3RlIG9uIHRoZSBzaGFsbG93IGNsb25lIGFuZCBhIEdpdCBidW5kbGUKKworTm90ZSB0aGF0IHRoZSBwcmVyZXF1aXNpdGVzIGRvZXMgbm90IHJlcHJlc2VudCBhIHNoYWxsb3ctY2xvbmUgYm91bmRhcnkuIFRoZQorc2VtYW50aWNzIG9mIHRoZSBwcmVyZXF1aXNpdGVzIGFuZCB0aGUgc2hhbGxvdy1jbG9uZSBib3VuZGFyaWVzIGFyZSBkaWZmZXJlbnQsCithbmQgdGhlIEdpdCBidW5kbGUgdjIgZm9ybWF0IGNhbm5vdCByZXByZXNlbnQgYSBzaGFsbG93IGNsb25lIHJlcG9zaXRvcnkuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9jb21taXQtZ3JhcGgtZm9ybWF0LnR4dCBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2NvbW1pdC1ncmFwaC1mb3JtYXQudHh0CmluZGV4IGNjMDQ3NGIuLmE0ZjE3NDQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2NvbW1pdC1ncmFwaC1mb3JtYXQudHh0CisrKyBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2NvbW1pdC1ncmFwaC1mb3JtYXQudHh0CkBAIC00NCw4ICs0NCw5IEBACiAKICAgMS1ieXRlIG51bWJlciAoQykgb2YgImNodW5rcyIKIAotICAxLWJ5dGUgKHJlc2VydmVkIGZvciBsYXRlciB1c2UpCi0gICAgIEN1cnJlbnQgY2xpZW50cyBzaG91bGQgaWdub3JlIHRoaXMgdmFsdWUuCisgIDEtYnl0ZSBudW1iZXIgKEIpIG9mIGJhc2UgY29tbWl0LWdyYXBocworICAgICAgV2UgaW5mZXIgdGhlIGxlbmd0aCAoSCpCKSBvZiB0aGUgQmFzZSBHcmFwaHMgY2h1bmsKKyAgICAgIGZyb20gdGhpcyB2YWx1ZS4KIAogQ0hVTksgTE9PS1VQOgogCkBAIC03Niw3ICs3Nyw3IEBACiAgICAgICBvZiB0aGUgaXRoIGNvbW1pdC4gU3RvcmVzIHZhbHVlIDB4NzAwMDAwMCBpZiBubyBwYXJlbnQgaW4gdGhhdAogICAgICAgcG9zaXRpb24uIElmIHRoZXJlIGFyZSBtb3JlIHRoYW4gdHdvIHBhcmVudHMsIHRoZSBzZWNvbmQgdmFsdWUKICAgICAgIGhhcyBpdHMgbW9zdC1zaWduaWZpY2FudCBiaXQgb24gYW5kIHRoZSBvdGhlciBiaXRzIHN0b3JlIGFuIGFycmF5Ci0gICAgICBwb3NpdGlvbiBpbnRvIHRoZSBMYXJnZSBFZGdlIExpc3QgY2h1bmsuCisgICAgICBwb3NpdGlvbiBpbnRvIHRoZSBFeHRyYSBFZGdlIExpc3QgY2h1bmsuCiAgICAgKiBUaGUgbmV4dCA4IGJ5dGVzIHN0b3JlIHRoZSBnZW5lcmF0aW9uIG51bWJlciBvZiB0aGUgY29tbWl0IGFuZAogICAgICAgdGhlIGNvbW1pdCB0aW1lIGluIHNlY29uZHMgc2luY2UgRVBPQ0guIFRoZSBnZW5lcmF0aW9uIG51bWJlcgogICAgICAgdXNlcyB0aGUgaGlnaGVyIDMwIGJpdHMgb2YgdGhlIGZpcnN0IDQgYnl0ZXMsIHdoaWxlIHRoZSBjb21taXQKQEAgLTg0LDcgKzg1LDcgQEAKICAgICAgIDIgYml0cyBvZiB0aGUgbG93ZXN0IGJ5dGUsIHN0b3JpbmcgdGhlIDMzcmQgYW5kIDM0dGggYml0IG9mIHRoZQogICAgICAgY29tbWl0IHRpbWUuCiAKLSAgTGFyZ2UgRWRnZSBMaXN0IChJRDogeydFJywgJ0QnLCAnRycsICdFJ30pIFtPcHRpb25hbF0KKyAgRXh0cmEgRWRnZSBMaXN0IChJRDogeydFJywgJ0QnLCAnRycsICdFJ30pIFtPcHRpb25hbF0KICAgICAgIFRoaXMgbGlzdCBvZiA0LWJ5dGUgdmFsdWVzIHN0b3JlIHRoZSBzZWNvbmQgdGhyb3VnaCBudGggcGFyZW50cyBmb3IKICAgICAgIGFsbCBvY3RvcHVzIG1lcmdlcy4gVGhlIHNlY29uZCBwYXJlbnQgdmFsdWUgaW4gdGhlIGNvbW1pdCBkYXRhIHN0b3JlcwogICAgICAgYW4gYXJyYXkgcG9zaXRpb24gd2l0aGluIHRoaXMgbGlzdCBhbG9uZyB3aXRoIHRoZSBtb3N0LXNpZ25pZmljYW50IGJpdApAQCAtOTIsNiArOTMsMTIgQEAKICAgICAgIHBvc2l0aW9ucyBmb3IgdGhlIHBhcmVudHMgdW50aWwgcmVhY2hpbmcgYSB2YWx1ZSB3aXRoIHRoZSBtb3N0LXNpZ25pZmljYW50CiAgICAgICBiaXQgb24uIFRoZSBvdGhlciBiaXRzIGNvcnJlc3BvbmQgdG8gdGhlIHBvc2l0aW9uIG9mIHRoZSBsYXN0IHBhcmVudC4KIAorICBCYXNlIEdyYXBocyBMaXN0IChJRDogeydCJywgJ0EnLCAnUycsICdFJ30pIFtPcHRpb25hbF0KKyAgICAgIFRoaXMgbGlzdCBvZiBILWJ5dGUgaGFzaGVzIGRlc2NyaWJlIGEgc2V0IG9mIEIgY29tbWl0LWdyYXBoIGZpbGVzIHRoYXQKKyAgICAgIGZvcm0gYSBjb21taXQtZ3JhcGggY2hhaW4uIFRoZSBncmFwaCBwb3NpdGlvbiBmb3IgdGhlIGl0aCBjb21taXQgaW4gdGhpcworICAgICAgZmlsZSdzIE9JRCBMb29rdXAgY2h1bmsgaXMgZXF1YWwgdG8gaSBwbHVzIHRoZSBudW1iZXIgb2YgY29tbWl0cyBpbiBhbGwKKyAgICAgIGJhc2UgZ3JhcGhzLiAgSWYgQiBpcyBub24temVybywgdGhpcyBjaHVuayBtdXN0IGV4aXN0LgorCiBUUkFJTEVSOgogCiAJSC1ieXRlIEhBU0gtY2hlY2tzdW0gb2YgYWxsIG9mIHRoZSBhYm92ZS4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2NvbW1pdC1ncmFwaC50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9jb21taXQtZ3JhcGgudHh0CmluZGV4IDc4MDViMDkuLjgwOGZhMzAgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2NvbW1pdC1ncmFwaC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvY29tbWl0LWdyYXBoLnR4dApAQCAtMjIsMTEgKzIyLDExIEBACiBkaXJlY3Rvcnkgb2YgYW4gYWx0ZXJuYXRlLgogCiBUaGUgY29tbWl0LWdyYXBoIGZpbGUgc3RvcmVzIHRoZSBjb21taXQgZ3JhcGggc3RydWN0dXJlIGFsb25nIHdpdGggc29tZQotZXh0cmEgbWV0YWRhdGEgdG8gc3BlZWQgdXAgZ3JhcGggd2Fsa3MuIEJ5IGxpc3RpbmcgY29tbWl0IE9JRHMgaW4gbGV4aS0KLWNvZ3JhcGhpYyBvcmRlciwgd2UgY2FuIGlkZW50aWZ5IGFuIGludGVnZXIgcG9zaXRpb24gZm9yIGVhY2ggY29tbWl0IGFuZAotcmVmZXIgdG8gdGhlIHBhcmVudHMgb2YgYSBjb21taXQgdXNpbmcgdGhvc2UgaW50ZWdlciBwb3NpdGlvbnMuIFdlIHVzZQotYmluYXJ5IHNlYXJjaCB0byBmaW5kIGluaXRpYWwgY29tbWl0cyBhbmQgdGhlbiB1c2UgdGhlIGludGVnZXIgcG9zaXRpb25zCi1mb3IgZmFzdCBsb29rdXBzIGR1cmluZyB0aGUgd2Fsay4KK2V4dHJhIG1ldGFkYXRhIHRvIHNwZWVkIHVwIGdyYXBoIHdhbGtzLiBCeSBsaXN0aW5nIGNvbW1pdCBPSURzIGluCitsZXhpY29ncmFwaGljIG9yZGVyLCB3ZSBjYW4gaWRlbnRpZnkgYW4gaW50ZWdlciBwb3NpdGlvbiBmb3IgZWFjaCBjb21taXQKK2FuZCByZWZlciB0byB0aGUgcGFyZW50cyBvZiBhIGNvbW1pdCB1c2luZyB0aG9zZSBpbnRlZ2VyIHBvc2l0aW9ucy4gV2UKK3VzZSBiaW5hcnkgc2VhcmNoIHRvIGZpbmQgaW5pdGlhbCBjb21taXRzIGFuZCB0aGVuIHVzZSB0aGUgaW50ZWdlcgorcG9zaXRpb25zIGZvciBmYXN0IGxvb2t1cHMgZHVyaW5nIHRoZSB3YWxrLgogCiBBIGNvbnN1bWVyIG1heSBsb2FkIHRoZSBmb2xsb3dpbmcgaW5mbyBmb3IgYSBjb21taXQgZnJvbSB0aGUgZ3JhcGg6CiAKQEAgLTg1LDcgKzg1LDcgQEAKIFNpbmNlIHRoZSBjb21taXQtZ3JhcGggZmlsZSBpcyBjbG9zZWQgdW5kZXIgcmVhY2hhYmlsaXR5LCB3ZSBjYW4gZ3VhcmFudGVlCiB0aGUgZm9sbG93aW5nIHdlYWtlciBjb25kaXRpb24gb24gYWxsIGNvbW1pdHM6CiAKLSAgICBJZiBBIGFuZCBCIGFyZSBjb21taXRzIHdpdGggZ2VuZXJhdGlvbiBudW1iZXJzIE4gYW1kIE0sIHJlc3BlY3RpdmVseSwKKyAgICBJZiBBIGFuZCBCIGFyZSBjb21taXRzIHdpdGggZ2VuZXJhdGlvbiBudW1iZXJzIE4gYW5kIE0sIHJlc3BlY3RpdmVseSwKICAgICBhbmQgTiA8IE0sIHRoZW4gQSBjYW5ub3QgcmVhY2ggQi4KIAogTm90ZSBob3cgdGhlIHN0cmljdCBpbmVxdWFsaXR5IGRpZmZlcnMgZnJvbSB0aGUgaW5lcXVhbGl0eSB3aGVuIHdlIGhhdmUKQEAgLTEyNywzNiArMTI3LDIxMCBAQAogICBoZWxwZnVsIGZvciB0aGVzZSBjbG9uZXMsIGFueXdheS4gVGhlIGNvbW1pdC1ncmFwaCB3aWxsIG5vdCBiZSByZWFkIG9yCiAgIHdyaXR0ZW4gd2hlbiBzaGFsbG93IGNvbW1pdHMgYXJlIHByZXNlbnQuCiAKLUZ1dHVyZSBXb3JrCi0tLS0tLS0tLS0tLQorQ29tbWl0IEdyYXBocyBDaGFpbnMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLS0gQWZ0ZXIgY29tcHV0aW5nIGFuZCBzdG9yaW5nIGdlbmVyYXRpb24gbnVtYmVycywgd2UgbXVzdCBtYWtlIGdyYXBoCi0gIHdhbGtzIGF3YXJlIG9mIGdlbmVyYXRpb24gbnVtYmVycyB0byBnYWluIHRoZSBwZXJmb3JtYW5jZSBiZW5lZml0cyB0aGV5Ci0gIGVuYWJsZS4gVGhpcyB3aWxsIG1vc3RseSBiZSBhY2NvbXBsaXNoZWQgYnkgc3dhcHBpbmcgYSBjb21taXQtZGF0ZS1vcmRlcmVkCi0gIHByaW9yaXR5IHF1ZXVlIHdpdGggb25lIG9yZGVyZWQgYnkgZ2VuZXJhdGlvbiBudW1iZXIuIFRoZSBmb2xsb3dpbmcKLSAgb3BlcmF0aW9ucyBhcmUgaW1wb3J0YW50IGNhbmRpZGF0ZXM6CitUeXBpY2FsbHksIHJlcG9zIGdyb3cgd2l0aCBuZWFyLWNvbnN0YW50IHZlbG9jaXR5IChjb21taXRzIHBlciBkYXkpLiBPdmVyIHRpbWUsCit0aGUgbnVtYmVyIG9mIGNvbW1pdHMgYWRkZWQgYnkgYSBmZXRjaCBvcGVyYXRpb24gaXMgbXVjaCBzbWFsbGVyIHRoYW4gdGhlCitudW1iZXIgb2YgY29tbWl0cyBpbiB0aGUgZnVsbCBoaXN0b3J5LiBCeSBjcmVhdGluZyBhICJjaGFpbiIgb2YgY29tbWl0LWdyYXBocywKK3dlIGVuYWJsZSBmYXN0IHdyaXRlcyBvZiBuZXcgY29tbWl0IGRhdGEgd2l0aG91dCByZXdyaXRpbmcgdGhlIGVudGlyZSBjb21taXQKK2hpc3RvcnkgLS0gYXQgbGVhc3QsIG1vc3Qgb2YgdGhlIHRpbWUuCiAKLSAgICAtICdsb2cgLS10b3BvLW9yZGVyJwotICAgIC0gJ3RhZyAtLW1lcmdlZCcKKyMjIEZpbGUgTGF5b3V0CiAKLS0gQSBzZXJ2ZXIgY291bGQgcHJvdmlkZSBhIGNvbW1pdC1ncmFwaCBmaWxlIGFzIHBhcnQgb2YgdGhlIG5ldHdvcmsgcHJvdG9jb2wKLSAgdG8gYXZvaWQgZXh0cmEgY2FsY3VsYXRpb25zIGJ5IGNsaWVudHMuIFRoaXMgZmVhdHVyZSBpcyBvbmx5IG9mIGJlbmVmaXQgaWYKLSAgdGhlIHVzZXIgaXMgd2lsbGluZyB0byB0cnVzdCB0aGUgZmlsZSwgYmVjYXVzZSB2ZXJpZnlpbmcgdGhlIGZpbGUgaXMgY29ycmVjdAotICBpcyBhcyBoYXJkIGFzIGNvbXB1dGluZyBpdCBmcm9tIHNjcmF0Y2guCitBIGNvbW1pdC1ncmFwaCBjaGFpbiB1c2VzIG11bHRpcGxlIGZpbGVzLCBhbmQgd2UgdXNlIGEgZml4ZWQgbmFtaW5nIGNvbnZlbnRpb24KK3RvIG9yZ2FuaXplIHRoZXNlIGZpbGVzLiBFYWNoIGNvbW1pdC1ncmFwaCBmaWxlIGhhcyBhIG5hbWUKK2AkT0JKRElSL2luZm8vY29tbWl0LWdyYXBocy9ncmFwaC17aGFzaH0uZ3JhcGhgIHdoZXJlIGB7aGFzaH1gIGlzIHRoZSBoZXgtCit2YWx1ZWQgaGFzaCBzdG9yZWQgaW4gdGhlIGZvb3RlciBvZiB0aGF0IGZpbGUgKHdoaWNoIGlzIGEgaGFzaCBvZiB0aGUgZmlsZSdzCitjb250ZW50cyBiZWZvcmUgdGhhdCBoYXNoKS4gRm9yIGEgY2hhaW4gb2YgY29tbWl0LWdyYXBoIGZpbGVzLCBhIHBsYWluLXRleHQKK2ZpbGUgYXQgYCRPQkpESVIvaW5mby9jb21taXQtZ3JhcGhzL2NvbW1pdC1ncmFwaC1jaGFpbmAgY29udGFpbnMgdGhlCitoYXNoZXMgZm9yIHRoZSBmaWxlcyBpbiBvcmRlciBmcm9tICJsb3dlc3QiIHRvICJoaWdoZXN0Ii4KKworRm9yIGV4YW1wbGUsIGlmIHRoZSBgY29tbWl0LWdyYXBoLWNoYWluYCBmaWxlIGNvbnRhaW5zIHRoZSBsaW5lcworCitgYGAKKwl7aGFzaDB9CisJe2hhc2gxfQorCXtoYXNoMn0KK2BgYAorCit0aGVuIHRoZSBjb21taXQtZ3JhcGggY2hhaW4gbG9va3MgbGlrZSB0aGUgZm9sbG93aW5nIGRpYWdyYW06CisKKyArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgfCAgZ3JhcGgte2hhc2gyfS5ncmFwaCAgfAorICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKwkgIHwKKyArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgfCAgICAgICAgICAgICAgICAgICAgICAgfAorIHwgIGdyYXBoLXtoYXNoMX0uZ3JhcGggIHwKKyB8ICAgICAgICAgICAgICAgICAgICAgICB8CisgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCSAgfAorICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyB8ICAgICAgICAgICAgICAgICAgICAgICB8CisgfCAgICAgICAgICAgICAgICAgICAgICAgfAorIHwgICAgICAgICAgICAgICAgICAgICAgIHwKKyB8ICBncmFwaC17aGFzaDB9LmdyYXBoICB8CisgfCAgICAgICAgICAgICAgICAgICAgICAgfAorIHwgICAgICAgICAgICAgICAgICAgICAgIHwKKyB8ICAgICAgICAgICAgICAgICAgICAgICB8CisgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCitMZXQgWDAgYmUgdGhlIG51bWJlciBvZiBjb21taXRzIGluIGBncmFwaC17aGFzaDB9LmdyYXBoYCwgWDEgYmUgdGhlIG51bWJlciBvZgorY29tbWl0cyBpbiBgZ3JhcGgte2hhc2gxfS5ncmFwaGAsIGFuZCBYMiBiZSB0aGUgbnVtYmVyIG9mIGNvbW1pdHMgaW4KK2BncmFwaC17aGFzaDJ9LmdyYXBoYC4gSWYgYSBjb21taXQgYXBwZWFycyBpbiBwb3NpdGlvbiBpIGluIGBncmFwaC17aGFzaDJ9LmdyYXBoYCwKK3RoZW4gd2UgaW50ZXJwcmV0IHRoaXMgYXMgYmVpbmcgdGhlIGNvbW1pdCBpbiBwb3NpdGlvbiAoWDAgKyBYMSArIGkpLCBhbmQgdGhhdAord2lsbCBiZSB1c2VkIGFzIGl0cyAiZ3JhcGggcG9zaXRpb24iLiBUaGUgY29tbWl0cyBpbiBgZ3JhcGgte2hhc2gyfS5ncmFwaGAgdXNlIHRoZXNlCitwb3NpdGlvbnMgdG8gcmVmZXIgdG8gdGhlaXIgcGFyZW50cywgd2hpY2ggbWF5IGJlIGluIGBncmFwaC17aGFzaDF9LmdyYXBoYCBvcgorYGdyYXBoLXtoYXNoMH0uZ3JhcGhgLiBXZSBjYW4gbmF2aWdhdGUgdG8gYW4gYXJiaXRyYXJ5IGNvbW1pdCBpbiBwb3NpdGlvbiBqIGJ5IGNoZWNraW5nCitpdHMgY29udGFpbm1lbnQgaW4gdGhlIGludGVydmFscyBbMCwgWDApLCBbWDAsIFgwICsgWDEpLCBbWDAgKyBYMSwgWDAgKyBYMSArCitYMikuCisKK0VhY2ggY29tbWl0LWdyYXBoIGZpbGUgKGV4Y2VwdCB0aGUgYmFzZSwgYGdyYXBoLXtoYXNoMH0uZ3JhcGhgKSBjb250YWlucyBkYXRhCitzcGVjaWZ5aW5nIHRoZSBoYXNoZXMgb2YgYWxsIGZpbGVzIGluIHRoZSBsb3dlciBsYXllcnMuIEluIHRoZSBhYm92ZSBleGFtcGxlLAorYGdyYXBoLXtoYXNoMX0uZ3JhcGhgIGNvbnRhaW5zIGB7aGFzaDB9YCB3aGlsZSBgZ3JhcGgte2hhc2gyfS5ncmFwaGAgY29udGFpbnMKK2B7aGFzaDB9YCBhbmQgYHtoYXNoMX1gLgorCisjIyBNZXJnaW5nIGNvbW1pdC1ncmFwaCBmaWxlcworCitJZiB3ZSBvbmx5IGFkZGVkIGEgbmV3IGNvbW1pdC1ncmFwaCBmaWxlIG9uIGV2ZXJ5IHdyaXRlLCB3ZSB3b3VsZCBydW4gaW50byBhCitsaW5lYXIgc2VhcmNoIHByb2JsZW0gdGhyb3VnaCBtYW55IGNvbW1pdC1ncmFwaCBmaWxlcy4gIEluc3RlYWQsIHdlIHVzZSBhIG1lcmdlCitzdHJhdGVneSB0byBkZWNpZGUgd2hlbiB0aGUgc3RhY2sgc2hvdWxkIGNvbGxhcHNlIHNvbWUgbnVtYmVyIG9mIGxldmVscy4KKworVGhlIGRpYWdyYW0gYmVsb3cgc2hvd3Mgc3VjaCBhIGNvbGxhcHNlLiBBcyBhIHNldCBvZiBuZXcgY29tbWl0cyBhcmUgYWRkZWQsIGl0CitpcyBkZXRlcm1pbmVkIGJ5IHRoZSBtZXJnZSBzdHJhdGVneSB0aGF0IHRoZSBmaWxlcyBzaG91bGQgY29sbGFwc2UgdG8KK2BncmFwaC17aGFzaDF9YC4gVGh1cywgdGhlIG5ldyBjb21taXRzLCB0aGUgY29tbWl0cyBpbiBgZ3JhcGgte2hhc2gyfWAgYW5kCit0aGUgY29tbWl0cyBpbiBgZ3JhcGgte2hhc2gxfWAgc2hvdWxkIGJlIGNvbWJpbmVkIGludG8gYSBuZXcgYGdyYXBoLXtoYXNoM31gCitmaWxlLgorCisJCQkgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKwkJCSAgICB8ICAgICAgICAgICAgICAgICAgICAgfAorCQkJICAgIHwgICAgKG5ldyBjb21taXRzKSAgICB8CisJCQkgICAgfCAgICAgICAgICAgICAgICAgICAgIHwKKwkJCSAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCQkJICAgIHwgICAgICAgICAgICAgICAgICAgICB8CisgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKyAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyB8ICBncmFwaC17aGFzaDJ9IHwtPnwgICAgICAgICAgICAgICAgICAgICB8CisgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKyAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKwkgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8CisgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKyAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyB8ICAgICAgICAgICAgICAgICAgICAgICB8ICB8ICAgICAgICAgICAgICAgICAgICAgfAorIHwgIGdyYXBoLXtoYXNoMX0gfC0+fCAgICAgICAgICAgICAgICAgICAgIHwKKyB8ICAgICAgICAgICAgICAgICAgICAgICB8ICB8ICAgICAgICAgICAgICAgICAgICAgfAorICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisJICB8ICAgICAgICAgICAgICAgICAgdG1wX2dyYXBoWFhYCisgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworIHwgICAgICAgICAgICAgICAgICAgICAgIHwKKyB8ICAgICAgICAgICAgICAgICAgICAgICB8CisgfCAgICAgICAgICAgICAgICAgICAgICAgfAorIHwgIGdyYXBoLXtoYXNoMH0gfAorIHwgICAgICAgICAgICAgICAgICAgICAgIHwKKyB8ICAgICAgICAgICAgICAgICAgICAgICB8CisgfCAgICAgICAgICAgICAgICAgICAgICAgfAorICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKworRHVyaW5nIHRoaXMgcHJvY2VzcywgdGhlIGNvbW1pdHMgdG8gd3JpdGUgYXJlIGNvbWJpbmVkLCBzb3J0ZWQgYW5kIHdlIHdyaXRlIHRoZQorY29udGVudHMgdG8gYSB0ZW1wb3JhcnkgZmlsZSwgYWxsIHdoaWxlIGhvbGRpbmcgYSBgY29tbWl0LWdyYXBoLWNoYWluLmxvY2tgCitsb2NrLWZpbGUuICBXaGVuIHRoZSBmaWxlIGlzIGZsdXNoZWQsIHdlIHJlbmFtZSBpdCB0byBgZ3JhcGgte2hhc2gzfWAKK2FjY29yZGluZyB0byB0aGUgY29tcHV0ZWQgYHtoYXNoM31gLiBGaW5hbGx5LCB3ZSB3cml0ZSB0aGUgbmV3IGNoYWluIGRhdGEgdG8KK2Bjb21taXQtZ3JhcGgtY2hhaW4ubG9ja2A6CisKK2BgYAorCXtoYXNoM30KKwl7aGFzaDB9CitgYGAKKworV2UgdGhlbiBjbG9zZSB0aGUgbG9jay1maWxlLgorCisjIyBNZXJnZSBTdHJhdGVneQorCitXaGVuIHdyaXRpbmcgYSBzZXQgb2YgY29tbWl0cyB0aGF0IGRvIG5vdCBleGlzdCBpbiB0aGUgY29tbWl0LWdyYXBoIHN0YWNrIG9mCitoZWlnaHQgTiwgd2UgZGVmYXVsdCB0byBjcmVhdGluZyBhIG5ldyBmaWxlIGF0IGxldmVsIE4gKyAxLiBXZSB0aGVuIGRlY2lkZSB0bworbWVyZ2Ugd2l0aCB0aGUgTnRoIGxldmVsIGlmIG9uZSBvZiB0d28gY29uZGl0aW9ucyBob2xkOgorCisgIDEuIGAtLXNpemUtbXVsdGlwbGU9PFg+YCBpcyBzcGVjaWZpZWQgb3IgWCA9IDIsIGFuZCB0aGUgbnVtYmVyIG9mIGNvbW1pdHMgaW4KKyAgICAgbGV2ZWwgTiBpcyBsZXNzIHRoYW4gWCB0aW1lcyB0aGUgbnVtYmVyIG9mIGNvbW1pdHMgaW4gbGV2ZWwgTiArIDEuCisKKyAgMi4gYC0tbWF4LWNvbW1pdHM9PEM+YCBpcyBzcGVjaWZpZWQgd2l0aCBub24temVybyBDIGFuZCB0aGUgbnVtYmVyIG9mIGNvbW1pdHMKKyAgICAgaW4gbGV2ZWwgTiArIDEgaXMgbW9yZSB0aGFuIEMgY29tbWl0cy4KKworVGhpcyBkZWNpc2lvbiBjYXNjYWRlcyBkb3duIHRoZSBsZXZlbHM6IHdoZW4gd2UgbWVyZ2UgYSBsZXZlbCB3ZSBjcmVhdGUgYSBuZXcKK3NldCBvZiBjb21taXRzIHRoYXQgdGhlbiBjb21wYXJlcyB0byB0aGUgbmV4dCBsZXZlbC4KKworVGhlIGZpcnN0IGNvbmRpdGlvbiBib3VuZHMgdGhlIG51bWJlciBvZiBsZXZlbHMgdG8gYmUgbG9nYXJpdGhtaWMgaW4gdGhlIHRvdGFsCitudW1iZXIgb2YgY29tbWl0cy4gIFRoZSBzZWNvbmQgY29uZGl0aW9uIGJvdW5kcyB0aGUgdG90YWwgbnVtYmVyIG9mIGNvbW1pdHMgaW4KK2EgYGdyYXBoLXtoYXNoTn1gIGZpbGUgYW5kIG5vdCBpbiB0aGUgYGNvbW1pdC1ncmFwaGAgZmlsZSwgcHJldmVudGluZworc2lnbmlmaWNhbnQgcGVyZm9ybWFuY2UgaXNzdWVzIHdoZW4gdGhlIHN0YWNrIG1lcmdlcyBhbmQgYW5vdGhlciBwcm9jZXNzIG9ubHkKK3BhcnRpYWxseSByZWFkcyB0aGUgcHJldmlvdXMgc3RhY2suCisKK1RoZSBtZXJnZSBzdHJhdGVneSB2YWx1ZXMgKDIgZm9yIHRoZSBzaXplIG11bHRpcGxlLCA2NCwwMDAgZm9yIHRoZSBtYXhpbXVtCitudW1iZXIgb2YgY29tbWl0cykgY291bGQgYmUgZXh0cmFjdGVkIGludG8gY29uZmlnIHNldHRpbmdzIGZvciBmdWxsCitmbGV4aWJpbGl0eS4KKworIyMgRGVsZXRpbmcgZ3JhcGgte2hhc2h9IGZpbGVzCisKK0FmdGVyIGEgbmV3IHRpcCBmaWxlIGlzIHdyaXR0ZW4sIHNvbWUgYGdyYXBoLXtoYXNofWAgZmlsZXMgbWF5IG5vIGxvbmdlcgorYmUgcGFydCBvZiBhIGNoYWluLiBJdCBpcyBpbXBvcnRhbnQgdG8gcmVtb3ZlIHRoZXNlIGZpbGVzIGZyb20gZGlzaywgZXZlbnR1YWxseS4KK1RoZSBtYWluIHJlYXNvbiB0byBkZWxheSByZW1vdmFsIGlzIHRoYXQgYW5vdGhlciBwcm9jZXNzIGNvdWxkIHJlYWQgdGhlCitgY29tbWl0LWdyYXBoLWNoYWluYCBmaWxlIGJlZm9yZSBpdCBpcyByZXdyaXR0ZW4sIGJ1dCB0aGVuIGxvb2sgZm9yIHRoZQorYGdyYXBoLXtoYXNofWAgZmlsZXMgYWZ0ZXIgdGhleSBhcmUgZGVsZXRlZC4KKworVG8gYWxsb3cgaG9sZGluZyBvbGQgc3BsaXQgY29tbWl0LWdyYXBocyBmb3IgYSB3aGlsZSBhZnRlciB0aGV5IGFyZSB1bnJlZmVyZW5jZWQsCit3ZSB1cGRhdGUgdGhlIG1vZGlmaWVkIHRpbWVzIG9mIHRoZSBmaWxlcyB3aGVuIHRoZXkgYmVjb21lIHVucmVmZXJlbmNlZC4gVGhlbiwKK3dlIHNjYW4gdGhlIGAkT0JKRElSL2luZm8vY29tbWl0LWdyYXBocy9gIGRpcmVjdG9yeSBmb3IgYGdyYXBoLXtoYXNofWAKK2ZpbGVzIHdob3NlIG1vZGlmaWVkIHRpbWVzIGFyZSBvbGRlciB0aGFuIGEgZ2l2ZW4gZXhwaXJ5IHdpbmRvdy4gVGhpcyB3aW5kb3cKK2RlZmF1bHRzIHRvIHplcm8sIGJ1dCBjYW4gYmUgY2hhbmdlZCB1c2luZyBjb21tYW5kLWxpbmUgYXJndW1lbnRzIG9yIGEgY29uZmlnCitzZXR0aW5nLgorCisjIyBDaGFpbnMgYWNyb3NzIG11bHRpcGxlIG9iamVjdCBkaXJlY3RvcmllcworCitJbiBhIHJlcG8gd2l0aCBhbHRlcm5hdGVzLCB3ZSBsb29rIGZvciB0aGUgYGNvbW1pdC1ncmFwaC1jaGFpbmAgZmlsZSBzdGFydGluZworaW4gdGhlIGxvY2FsIG9iamVjdCBkaXJlY3RvcnkgYW5kIHRoZW4gaW4gZWFjaCBhbHRlcm5hdGUuIFRoZSBmaXJzdCBmaWxlIHRoYXQKK2V4aXN0cyBkZWZpbmVzIG91ciBjaGFpbi4gQXMgd2UgbG9vayBmb3IgdGhlIGBncmFwaC17aGFzaH1gIGZpbGVzIGZvcgorZWFjaCBge2hhc2h9YCBpbiB0aGUgY2hhaW4gZmlsZSwgd2UgZm9sbG93IHRoZSBzYW1lIHBhdHRlcm4gZm9yIHRoZSBob3N0CitkaXJlY3Rvcmllcy4KKworVGhpcyBhbGxvd3MgY29tbWl0LWdyYXBocyB0byBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgZm9ya3MgaW4gYSBmb3JrIG5ldHdvcmsuCitUaGUgdHlwaWNhbCBjYXNlIGlzIGEgbGFyZ2UgImJhc2UiIHJlcG8gd2l0aCBtYW55IHNtYWxsZXIgZm9ya3MuCisKK0FzIHRoZSBiYXNlIHJlcG8gYWR2YW5jZXMsIGl0IHdpbGwgbGlrZWx5IHVwZGF0ZSBhbmQgbWVyZ2UgaXRzIGNvbW1pdC1ncmFwaAorY2hhaW4gbW9yZSBmcmVxdWVudGx5IHRoYW4gdGhlIGZvcmtzLiBJZiBhIGZvcmsgdXBkYXRlcyB0aGVpciBjb21taXQtZ3JhcGggYWZ0ZXIKK3RoZSBiYXNlIHJlcG8sIHRoZW4gaXQgc2hvdWxkICJyZXBhcmVudCIgdGhlIGNvbW1pdC1ncmFwaCBjaGFpbiBvbnRvIHRoZSBuZXcKK2NoYWluIGluIHRoZSBiYXNlIHJlcG8uIFdoZW4gcmVhZGluZyBlYWNoIGBncmFwaC17aGFzaH1gIGZpbGUsIHdlIHRyYWNrCit0aGUgb2JqZWN0IGRpcmVjdG9yeSBjb250YWluaW5nIGl0LiBEdXJpbmcgYSB3cml0ZSBvZiBhIG5ldyBjb21taXQtZ3JhcGggZmlsZSwKK3dlIGNoZWNrIGZvciBhbnkgY2hhbmdlcyBpbiB0aGUgc291cmNlIG9iamVjdCBkaXJlY3RvcnkgYW5kIHJlYWQgdGhlCitgY29tbWl0LWdyYXBoLWNoYWluYCBmaWxlIGZvciB0aGF0IHNvdXJjZSBhbmQgY3JlYXRlIGEgbmV3IGZpbGUgYmFzZWQgb24gdGhvc2UKK2ZpbGVzLiBEdXJpbmcgdGhpcyAicmVwYXJlbnQiIG9wZXJhdGlvbiwgd2UgbmVjZXNzYXJpbHkgbmVlZCB0byBjb2xsYXBzZSBhbGwKK2xldmVscyBpbiB0aGUgZm9yaywgYXMgYWxsIG9mIHRoZSBmaWxlcyBhcmUgaW52YWxpZCBhZ2FpbnN0IHRoZSBuZXcgYmFzZSBmaWxlLgorCitJdCBpcyBjcnVjaWFsIHRvIGJlIGNhcmVmdWwgd2hlbiBjbGVhbmluZyB1cCAidW5yZWZlcmVuY2VkIiBgZ3JhcGgte2hhc2h9LmdyYXBoYAorZmlsZXMgaW4gdGhpcyBzY2VuYXJpby4gSXQgZmFsbHMgdG8gdGhlIHVzZXIgdG8gZGVmaW5lIHRoZSBwcm9wZXIgc2V0dGluZ3MgZm9yCit0aGVpciBjdXN0b20gZW52aXJvbm1lbnQ6CisKKyAxLiBXaGVuIG1lcmdpbmcgbGV2ZWxzIGluIHRoZSBiYXNlIHJlcG8sIHRoZSB1bnJlZmVyZW5jZWQgZmlsZXMgbWF5IHN0aWxsIGJlCisgICAgcmVmZXJlbmNlZCBieSBjaGFpbnMgZnJvbSBmb3JrIHJlcG9zLgorCisgMi4gVGhlIGV4cGlyeSB0aW1lIHNob3VsZCBiZSBzZXQgdG8gYSBsZW5ndGggb2YgdGltZSBzdWNoIHRoYXQgZXZlcnkgZm9yayBoYXMKKyAgICB0aW1lIHRvIHJlY29tcHV0ZSB0aGVpciBjb21taXQtZ3JhcGggY2hhaW4gdG8gInJlcGFyZW50IiBvbnRvIHRoZSBuZXcgYmFzZQorICAgIGZpbGUocykuCisKKyAzLiBJZiB0aGUgY29tbWl0LWdyYXBoIGNoYWluIGlzIHVwZGF0ZWQgaW4gdGhlIGJhc2UsIHRoZSBmb3JrIHdpbGwgbm90IGhhdmUKKyAgICBhY2Nlc3MgdG8gdGhlIG5ldyBjaGFpbiB1bnRpbCBpdHMgY2hhaW4gaXMgdXBkYXRlZCB0byByZWZlcmVuY2UgdGhvc2UgZmlsZXMuCisgICAgKFRoaXMgbWF5IGNoYW5nZSBpbiB0aGUgZnV0dXJlIFs1XS4pCiAKIFJlbGF0ZWQgTGlua3MKIC0tLS0tLS0tLS0tLS0KIFswXSBodHRwczovL2J1Z3MuY2hyb21pdW0ub3JnL3AvZ2l0L2lzc3Vlcy9kZXRhaWw/aWQ9OAogICAgIENocm9taXVtIHdvcmsgaXRlbSBmb3I6IFNlcmlhbGl6ZWQgQ29tbWl0IEdyYXBoCiAKLVsxXSBodHRwczovL3B1YmxpYy1pbmJveC5vcmcvZ2l0LzIwMTEwNzEzMDcwNTE3LkdDMTg1NjZAc2lnaWxsLmludHJhLnBlZmYubmV0LworWzFdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC8yMDExMDcxMzA3MDUxNy5HQzE4NTY2QHNpZ2lsbC5pbnRyYS5wZWZmLm5ldC8KICAgICBBbiBhYmFuZG9uZWQgcGF0Y2ggdGhhdCBpbnRyb2R1Y2VkIGdlbmVyYXRpb24gbnVtYmVycy4KIAotWzJdIGh0dHBzOi8vcHVibGljLWluYm94Lm9yZy9naXQvMjAxNzA5MDgwMzM0MDMucTdlNmRqN2JlbmFzcmplc0BzaWdpbGwuaW50cmEucGVmZi5uZXQvCitbMl0gaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvZ2l0LzIwMTcwOTA4MDMzNDAzLnE3ZTZkajdiZW5hc3JqZXNAc2lnaWxsLmludHJhLnBlZmYubmV0LwogICAgIERpc2N1c3Npb24gYWJvdXQgZ2VuZXJhdGlvbiBudW1iZXJzIG9uIGNvbW1pdHMgYW5kIGhvdyB0aGV5IGludGVyYWN0CiAgICAgd2l0aCBmc2NrLgogCi1bM10gaHR0cHM6Ly9wdWJsaWMtaW5ib3gub3JnL2dpdC8yMDE3MDkwODAzNDczOS40b3AzdzRmMm1hNXM2NWt1QHNpZ2lsbC5pbnRyYS5wZWZmLm5ldC8KK1szXSBodHRwczovL2xvcmUua2VybmVsLm9yZy9naXQvMjAxNzA5MDgwMzQ3MzkuNG9wM3c0ZjJtYTVzNjVrdUBzaWdpbGwuaW50cmEucGVmZi5uZXQvCiAgICAgTW9yZSBkaXNjdXNzaW9uIGFib3V0IGdlbmVyYXRpb24gbnVtYmVycyBhbmQgbm90IHN0b3JpbmcgdGhlbSBpbnNpZGUKICAgICBjb21taXQgb2JqZWN0cy4gQSB2YWx1YWJsZSBxdW90ZToKIApAQCAtMTY4LDUgKzM0Miw5IEBACiAgICAgIGNvbW1pdCBvYmplY3RzIChpLmUuLCBwYWNrdjQgb3Igc29tZXRoaW5nIGxpa2UgdGhlICJtZXRhcGFja3MiIEkKICAgICAgcHJvcG9zZWQgYSBmZXcgeWVhcnMgYWdvKS4iCiAKLVs0XSBodHRwczovL3B1YmxpYy1pbmJveC5vcmcvZ2l0LzIwMTgwMTA4MTU0ODIyLjU0ODI5LTEtZ2l0QGplZmZob3N0ZXRsZXIuY29tL1QvI3UKK1s0XSBodHRwczovL2xvcmUua2VybmVsLm9yZy9naXQvMjAxODAxMDgxNTQ4MjIuNTQ4MjktMS1naXRAamVmZmhvc3RldGxlci5jb20vVC8jdQogICAgIEEgcGF0Y2ggdG8gcmVtb3ZlIHRoZSBhaGVhZC1iZWhpbmQgY2FsY3VsYXRpb24gZnJvbSAnc3RhdHVzJy4KKworWzVdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC9mMjdkYjI4MS1hYmFkLTUwNDMtNmQ3MS1jYmIwODNiMWM4NzdAZ21haWwuY29tLworICAgIEEgZGlzY3Vzc2lvbiBvZiBhICJ0d28tZGltZW5zaW9uYWwgZ3JhcGggcG9zaXRpb24iIHRoYXQgY2FuIGFsbG93IHJlYWRpbmcKKyAgICBtdWx0aXBsZSBjb21taXQtZ3JhcGggY2hhaW5zIGF0IHRoZSBzYW1lIHRpbWUuCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9kaXJlY3RvcnktcmVuYW1lLWRldGVjdGlvbi50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9kaXJlY3RvcnktcmVuYW1lLWRldGVjdGlvbi50eHQKaW5kZXggMWMwMDg2ZS4uODQ0NjI5YyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvZGlyZWN0b3J5LXJlbmFtZS1kZXRlY3Rpb24udHh0CisrKyBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2RpcmVjdG9yeS1yZW5hbWUtZGV0ZWN0aW9uLnR4dApAQCAtMjAsOCArMjAsOCBAQAogICAqIG9uZSBzaWRlIG9mIGhpc3RvcnkgcmVuYW1lcyB4IC0+IHosIGFuZCB0aGUgb3RoZXIgcmVuYW1lcyBzb21lIGZpbGUgdG8KICAgICB4L2UsIGNhdXNpbmcgdGhlIG5lZWQgZm9yIHRoZSBtZXJnZSB0byBkbyBhIHRyYW5zaXRpdmUgcmVuYW1lLgogCi0gICogb25lIHNpZGUgb2YgaGlzdG9yeSByZW5hbWVzIHggLT4geiwgYnV0IGFsc28gcmVuYW1lcyBhbGwgZmlsZXMgd2l0aGluCi0gICAgeC4gIEZvciBleGFtcGxlLCB4L2EgLT4gei9hbHBoYSwgeC9iIC0+IHovYnJhdm8sIGV0Yy4KKyAgKiBvbmUgc2lkZSBvZiBoaXN0b3J5IHJlbmFtZXMgeCAtPiB6LCBidXQgYWxzbyByZW5hbWVzIGFsbCBmaWxlcyB3aXRoaW4geC4KKyAgICBGb3IgZXhhbXBsZSwgeC9hIC0+IHovYWxwaGEsIHgvYiAtPiB6L2JyYXZvLCBldGMuCiAKICAgKiBib3RoICd4JyBhbmQgJ3knIGJlaW5nIG1lcmdlZCBpbnRvIGEgc2luZ2xlIGRpcmVjdG9yeSAneicsIHdpdGggYQogICAgIGRpcmVjdG9yeSByZW5hbWUgYmVpbmcgZGV0ZWN0ZWQgZm9yIGJvdGggeC0+eiBhbmQgeS0+ei4KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2hhc2gtZnVuY3Rpb24tdHJhbnNpdGlvbi50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9oYXNoLWZ1bmN0aW9uLXRyYW5zaXRpb24udHh0CmluZGV4IGJjMmFjZTIuLjViMmRiM2IgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2hhc2gtZnVuY3Rpb24tdHJhbnNpdGlvbi50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvaGFzaC1mdW5jdGlvbi10cmFuc2l0aW9uLnR4dApAQCAtNDU2LDcgKzQ1Niw3IEBACiBiZWxvdykuIFRvIGF2b2lkIHRoZSByYWNlIHdoZW4gd3JpdGluZyBuZXcgb2JqZWN0cyByZWZlcnJpbmcgdG8gYW4KIGFib3V0LXRvLWJlLWRlbGV0ZWQgb2JqZWN0LCBjb2RlIHBhdGhzIHRoYXQgd3JpdGUgbmV3IG9iamVjdHMgd2lsbAogbmVlZCB0byBjb3B5IGFueSBvYmplY3RzIGZyb20gVU5SRUFDSEFCTEVfR0FSQkFHRSBwYWNrcyB0aGF0IHRoZXkKLXJlZmVyIHRvIHRvIG5ldywgbm9uLVVOUkVBQ0hBQkxFX0dBUkJBR0UgcGFja3MgKG9yIGxvb3NlIG9iamVjdHMpLgorcmVmZXIgdG8gbmV3LCBub24tVU5SRUFDSEFCTEVfR0FSQkFHRSBwYWNrcyAob3IgbG9vc2Ugb2JqZWN0cykuCiBVTlJFQUNIQUJMRV9HQVJCQUdFIGFyZSB0aGVuIHNhZmUgdG8gZGVsZXRlIGlmIHRoZWlyIGNyZWF0aW9uIHRpbWUgKGFzCiBpbmRpY2F0ZWQgYnkgdGhlIGZpbGUncyBtdGltZSkgaXMgbG9uZyBlbm91Z2ggYWdvLgogCkBAIC01MzEsNyArNTMxLDcgQEAKIG9uIHB1YmxpYy1mYWNpbmcgR2l0IHNlcnZlcnMgaXMgc3Ryb25nbHkgZGlzY291cmFnZWQuIE9uY2UgR2l0CiBwcm90b2NvbCBnYWlucyBTSEEtMjU2IHN1cHBvcnQsIFNIQS0yNTYgYmFzZWQgc2VydmVycyBhcmUgbGlrZWx5IG5vdAogdG8gc3VwcG9ydCBTSEEtMSBjb21wYXRpYmlsaXR5LCB0byBhdm9pZCB3aGF0IG1heSBiZSBhIHZlcnkgZXhwZW5zaXZlCi1oYXNoIHJlZW5jb2RlIGR1cmluZyBjbG9uZSBhbmQgdG8gZW5jb3VyYWdlIHBlZXJzIHRvIG1vZGVybml6ZS4KK2hhc2ggcmUtZW5jb2RlIGR1cmluZyBjbG9uZSBhbmQgdG8gZW5jb3VyYWdlIHBlZXJzIHRvIG1vZGVybml6ZS4KIAogVGhlIGRlc2lnbiBkZXNjcmliZWQgaGVyZSBhbGxvd3MgZmV0Y2hlcyBieSBTSEEtMSBjbGllbnRzIG9mIGEKIHBlcnNvbmFsIFNIQS0yNTYgcmVwb3NpdG9yeSBiZWNhdXNlIGl0J3Mgbm90IG11Y2ggbW9yZSBkaWZmaWN1bHQgdGhhbgpAQCAtNjAyLDcgKzYwMiw3IEBACiAKIENob2ljZSBvZiBIYXNoCiAtLS0tLS0tLS0tLS0tLQotSW4gZWFybHkgMjAwNSwgYXJvdW5kIHRoZSB0aW1lIHRoYXQgR2l0IHdhcyB3cml0dGVuLCAgWGlhb3l1biBXYW5nLAorSW4gZWFybHkgMjAwNSwgYXJvdW5kIHRoZSB0aW1lIHRoYXQgR2l0IHdhcyB3cml0dGVuLCBYaWFveXVuIFdhbmcsCiBZaXF1biBMaXNhIFlpbiwgYW5kIEhvbmdibyBZdSBhbm5vdW5jZWQgYW4gYXR0YWNrIGZpbmRpbmcgU0hBLTEKIGNvbGxpc2lvbnMgaW4gMl42OSBvcGVyYXRpb25zLiBJbiBBdWd1c3QgdGhleSBwdWJsaXNoZWQgZGV0YWlscy4KIEx1Y2tpbHksIG5vIHByYWN0aWNhbCBkZW1vbnN0cmF0aW9ucyBvZiBhIGNvbGxpc2lvbiBpbiBmdWxsIFNIQS0xIHdlcmUKQEAgLTczMCw3ICs3MzAsNyBAQAogCiBVc2luZyBoYXNoIGZ1bmN0aW9ucyBpbiBwYXJhbGxlbAogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLShlLmcuIGh0dHBzOi8vcHVibGljLWluYm94Lm9yZy9naXQvMjI3MDguODkxMy44NjQwNDkuNDUyMjUyQGNoaWFyay5ncmVlbmVuZC5vcmcudWsvICkKKyhlLmcuIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC8yMjcwOC44OTEzLjg2NDA0OS40NTIyNTJAY2hpYXJrLmdyZWVuZW5kLm9yZy51ay8gKQogT2JqZWN0cyBuZXdseSBjcmVhdGVkIHdvdWxkIGJlIGFkZHJlc3NlZCBieSB0aGUgbmV3IGhhc2gsIGJ1dCBpbnNpZGUKIHN1Y2ggYW4gb2JqZWN0IChlLmcuIGNvbW1pdCkgaXQgaXMgc3RpbGwgcG9zc2libGUgdG8gYWRkcmVzcyBvYmplY3RzCiB1c2luZyB0aGUgb2xkIGhhc2ggZnVuY3Rpb24uCkBAIC03ODMsNyArNzgzLDcgQEAKIHNiZWxsZXJAZ29vZ2xlLmNvbQogCiBJbml0aWFsIHZlcnNpb24gc2VudCB0bwotaHR0cDovL3B1YmxpYy1pbmJveC5vcmcvZ2l0LzIwMTcwMzA0MDExMjUxLkdBMjY3ODlAYWllZGUubXR2LmNvcnAuZ29vZ2xlLmNvbQoraHR0cDovL2xvcmUua2VybmVsLm9yZy9naXQvMjAxNzAzMDQwMTEyNTEuR0EyNjc4OUBhaWVkZS5tdHYuY29ycC5nb29nbGUuY29tCiAKIDIwMTctMDMtMDMganJuaWVkZXJAZ21haWwuY29tCiBJbmNvcnBvcmF0ZWQgc3VnZ2VzdGlvbnMgZnJvbSBqb25hdGhhbnRhbm15IGFuZCBzYmVsbGVyOgpAQCAtODIwLDggKzgyMCw4IEBACiAgZWRpdHMuIFRoaXMgZG9jdW1lbnQgaGlzdG9yeSBpcyBubyBsb25nZXIgYmVpbmcgbWFpbnRhaW5lZCBhcyBpdAogIHdvdWxkIG5vdyBiZSBzdXBlcmZsdW91cyB0byB0aGUgY29tbWl0IGxvZwogCi1bMV0gaHR0cDovL3B1YmxpYy1pbmJveC5vcmcvZ2l0L0NBKzU1YUZ6SnRlamlDalYwZTQzKzlvUjNRdUpLMlBpRmlMUWVteXRvTHB5SldlNlA5d0BtYWlsLmdtYWlsLmNvbS8KLVsyXSBodHRwOi8vcHVibGljLWluYm94Lm9yZy9naXQvQ0ErNTVhRnorZ2tBc0RaMjR6bWVQUXVFczFYUFM5QlBfczhPN1E0d1E3TFY3WDUtb0RBQG1haWwuZ21haWwuY29tLwotWzNdIGh0dHA6Ly9wdWJsaWMtaW5ib3gub3JnL2dpdC8yMDE3MDMwNjA4NDM1My5ucm5zNDU1ZHZrZHNmZ281QHNpZ2lsbC5pbnRyYS5wZWZmLm5ldC8KLVs0XSBodHRwOi8vcHVibGljLWluYm94Lm9yZy9naXQvMjAxNzAzMDQyMjQ5MzYucnFxdGtkdmZqZ3llenNodEBnZW5yZS5jcnVzdHl0b290aHBhc3RlLm5ldAotWzVdIGh0dHBzOi8vcHVibGljLWluYm94Lm9yZy9naXQvQ0FKbz1oSnRvWDk9QXlMSEhwVUpTN2Z1ZVY5Y2laX01OcG5FUEhVejhXaHVpNmc5RjBBQG1haWwuZ21haWwuY29tLworWzFdIGh0dHA6Ly9sb3JlLmtlcm5lbC5vcmcvZ2l0L0NBKzU1YUZ6SnRlamlDalYwZTQzKzlvUjNRdUpLMlBpRmlMUWVteXRvTHB5SldlNlA5d0BtYWlsLmdtYWlsLmNvbS8KK1syXSBodHRwOi8vbG9yZS5rZXJuZWwub3JnL2dpdC9DQSs1NWFGeitna0FzRFoyNHptZVBRdUVzMVhQUzlCUF9zOE83UTR3UTdMVjdYNS1vREFAbWFpbC5nbWFpbC5jb20vCitbM10gaHR0cDovL2xvcmUua2VybmVsLm9yZy9naXQvMjAxNzAzMDYwODQzNTMubnJuczQ1NWR2a2RzZmdvNUBzaWdpbGwuaW50cmEucGVmZi5uZXQvCitbNF0gaHR0cDovL2xvcmUua2VybmVsLm9yZy9naXQvMjAxNzAzMDQyMjQ5MzYucnFxdGtkdmZqZ3llenNodEBnZW5yZS5jcnVzdHl0b290aHBhc3RlLm5ldAorWzVdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC9DQUpvPWhKdG9YOT1BeUxISHBVSlM3ZnVlVjljaVpfTU5wbkVQSFV6OFdodWk2ZzlGMEFAbWFpbC5nbWFpbC5jb20vCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9pbmRleC1mb3JtYXQudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvaW5kZXgtZm9ybWF0LnR4dAppbmRleCA3YzRkNjdhLi5mYWEyNWM1IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9pbmRleC1mb3JtYXQudHh0CisrKyBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL2luZGV4LWZvcm1hdC50eHQKQEAgLTMxOCw3ICszMTgsNyBAQAogPT0gRW5kIG9mIEluZGV4IEVudHJ5CiAKICAgVGhlIEVuZCBvZiBJbmRleCBFbnRyeSAoRU9JRSkgaXMgdXNlZCB0byBsb2NhdGUgdGhlIGVuZCBvZiB0aGUgdmFyaWFibGUKLSAgbGVuZ3RoIGluZGV4IGVudHJpZXMgYW5kIHRoZSBiZWdpbmluZyBvZiB0aGUgZXh0ZW5zaW9ucy4gQ29kZSBjYW4gdGFrZQorICBsZW5ndGggaW5kZXggZW50cmllcyBhbmQgdGhlIGJlZ2lubmluZyBvZiB0aGUgZXh0ZW5zaW9ucy4gQ29kZSBjYW4gdGFrZQogICBhZHZhbnRhZ2Ugb2YgdGhpcyB0byBxdWlja2x5IGxvY2F0ZSB0aGUgaW5kZXggZXh0ZW5zaW9ucyB3aXRob3V0IGhhdmluZwogICB0byBwYXJzZSB0aHJvdWdoIGFsbCBvZiB0aGUgaW5kZXggZW50cmllcy4KIApAQCAtMzUxLDcgKzM1MSw3IEBACiAKICAgLSBBIG51bWJlciBvZiBpbmRleCBvZmZzZXQgZW50cmllcyBlYWNoIGNvbnNpc3Rpbmcgb2Y6CiAKLSAgICAtIDMyLWJpdCBvZmZzZXQgZnJvbSB0aGUgYmVnaW5pbmcgb2YgdGhlIGZpbGUgdG8gdGhlIGZpcnN0IGNhY2hlIGVudHJ5CisgICAgLSAzMi1iaXQgb2Zmc2V0IGZyb20gdGhlIGJlZ2lubmluZyBvZiB0aGUgZmlsZSB0byB0aGUgZmlyc3QgY2FjaGUgZW50cnkKIAlpbiB0aGlzIGJsb2NrIG9mIGVudHJpZXMuCiAKICAgICAtIDMyLWJpdCBjb3VudCBvZiBjYWNoZSBlbnRyaWVzIGluIHRoaXMgYmxvY2sKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL211bHRpLXBhY2staW5kZXgudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvbXVsdGktcGFjay1pbmRleC50eHQKaW5kZXggZDdlNTc2My4uNGU3NjMxNCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvbXVsdGktcGFjay1pbmRleC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvbXVsdGktcGFjay1pbmRleC50eHQKQEAgLTM2LDcgKzM2LDcgQEAKICAgZGlyZWN0b3J5IG9mIGFuIGFsdGVybmF0ZS4gSXQgcmVmZXJzIG9ubHkgdG8gcGFja2ZpbGVzIGluIHRoYXQKICAgc2FtZSBkaXJlY3RvcnkuCiAKLS0gVGhlIHBhY2subXVsdGlJbmRleCBjb25maWcgc2V0dGluZyBtdXN0IGJlIG9uIHRvIGNvbnN1bWUgTUlEWCBmaWxlcy4KKy0gVGhlIGNvcmUubXVsdGlQYWNrSW5kZXggY29uZmlnIHNldHRpbmcgbXVzdCBiZSBvbiB0byBjb25zdW1lIE1JRFggZmlsZXMuCiAKIC0gVGhlIGZpbGUgZm9ybWF0IGluY2x1ZGVzIHBhcmFtZXRlcnMgZm9yIHRoZSBvYmplY3QgSUQgaGFzaAogICBmdW5jdGlvbiwgc28gYSBmdXR1cmUgY2hhbmdlIG9mIGhhc2ggYWxnb3JpdGhtIGRvZXMgbm90IHJlcXVpcmUKQEAgLTEwMiw4ICsxMDIsOCBAQAogWzBdIGh0dHBzOi8vYnVncy5jaHJvbWl1bS5vcmcvcC9naXQvaXNzdWVzL2RldGFpbD9pZD02CiAgICAgQ2hyb21pdW0gd29yayBpdGVtIGZvcjogTXVsdGktUGFjayBJbmRleCAoTUlEWCkKIAotWzFdIGh0dHBzOi8vcHVibGljLWluYm94Lm9yZy9naXQvMjAxODAxMDcxODE0NTkuMjIyOTA5LTEtZHN0b2xlZUBtaWNyb3NvZnQuY29tLworWzFdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC8yMDE4MDEwNzE4MTQ1OS4yMjI5MDktMS1kc3RvbGVlQG1pY3Jvc29mdC5jb20vCiAgICAgQW4gZWFybGllciBSRkMgZm9yIHRoZSBtdWx0aS1wYWNrLWluZGV4IGZlYXR1cmUKIAotWzJdIGh0dHBzOi8vcHVibGljLWluYm94Lm9yZy9naXQvYWxwaW5lLkRFQi4yLjIwLjE4MDMwOTE1NTc1MTAuMjMxMDlAYWxleG12LWxpbnV4LworWzJdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC9hbHBpbmUuREVCLjIuMjAuMTgwMzA5MTU1NzUxMC4yMzEwOUBhbGV4bXYtbGludXgvCiAgICAgR2l0IE1lcmdlIDIwMTggQ29udHJpYnV0b3IncyBzdW1taXQgbm90ZXMgKGluY2x1ZGVzIGRpc2N1c3Npb24gb2YgTUlEWCkKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL3BhY2stZm9ybWF0LnR4dCBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL3BhY2stZm9ybWF0LnR4dAppbmRleCBjYWI1YmRkLi5kM2ExNDJjIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9wYWNrLWZvcm1hdC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvcGFjay1mb3JtYXQudHh0CkBAIC0zMTUsMTAgKzMxNSwxMSBAQAogCSAgICBTdG9yZXMgdHdvIDQtYnl0ZSB2YWx1ZXMgZm9yIGV2ZXJ5IG9iamVjdC4KIAkgICAgMTogVGhlIHBhY2staW50LWlkIGZvciB0aGUgcGFjayBzdG9yaW5nIHRoaXMgb2JqZWN0LgogCSAgICAyOiBUaGUgb2Zmc2V0IHdpdGhpbiB0aGUgcGFjay4KLQkJSWYgYWxsIG9mZnNldHMgYXJlIGxlc3MgdGhhbiAyXjMxLCB0aGVuIHRoZSBsYXJnZSBvZmZzZXQgY2h1bmsKKwkJSWYgYWxsIG9mZnNldHMgYXJlIGxlc3MgdGhhbiAyXjMyLCB0aGVuIHRoZSBsYXJnZSBvZmZzZXQgY2h1bmsKIAkJd2lsbCBub3QgZXhpc3QgYW5kIG9mZnNldHMgYXJlIHN0b3JlZCBhcyBpbiBJRFggdjEuCiAJCUlmIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBvZmZzZXQgdmFsdWUgbGFyZ2VyIHRoYW4gMl4zMi0xLCB0aGVuCi0JCXRoZSBsYXJnZSBvZmZzZXQgY2h1bmsgbXVzdCBleGlzdC4gSWYgdGhlIGxhcmdlIG9mZnNldCBjaHVuaworCQl0aGUgbGFyZ2Ugb2Zmc2V0IGNodW5rIG11c3QgZXhpc3QsIGFuZCBvZmZzZXRzIGxhcmdlciB0aGFuCisJCTJeMzEtMSBtdXN0IGJlIHN0b3JlZCBpbiBpdCBpbnN0ZWFkLiBJZiB0aGUgbGFyZ2Ugb2Zmc2V0IGNodW5rCiAJCWV4aXN0cyBhbmQgdGhlIDMxc3QgYml0IGlzIG9uLCB0aGVuIHJlbW92aW5nIHRoYXQgYml0IHJldmVhbHMKIAkJdGhlIHJvdyBpbiB0aGUgbGFyZ2Ugb2Zmc2V0cyBjb250YWluaW5nIHRoZSA4LWJ5dGUgb2Zmc2V0IG9mCiAJCXRoaXMgb2JqZWN0LgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvcGFjay1wcm90b2NvbC50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9wYWNrLXByb3RvY29sLnR4dAppbmRleCA2YWM3NzRkLi5kNWNlNGVlIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9wYWNrLXByb3RvY29sLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9wYWNrLXByb3RvY29sLnR4dApAQCAtMjIsNiArMjIsMTYgQEAKIG90aGVyd2lzZSBub3RlZCB0aGUgdXN1YWwgcGt0LWxpbmUgTEYgcnVsZXMgYXBwbHk6IHRoZSBzZW5kZXIgU0hPVUxECiBpbmNsdWRlIGEgTEYsIGJ1dCB0aGUgcmVjZWl2ZXIgTVVTVCBOT1QgY29tcGxhaW4gaWYgaXQgaXMgbm90IHByZXNlbnQuCiAKK0FuIGVycm9yIHBhY2tldCBpcyBhIHNwZWNpYWwgcGt0LWxpbmUgdGhhdCBjb250YWlucyBhbiBlcnJvciBzdHJpbmcuCisKKy0tLS0KKyAgZXJyb3ItbGluZSAgICAgPSAgUEtULUxJTkUoIkVSUiIgU1AgZXhwbGFuYXRpb24tdGV4dCkKKy0tLS0KKworVGhyb3VnaG91dCB0aGUgcHJvdG9jb2wsIHdoZXJlIGBQS1QtTElORSguLi4pYCBpcyBleHBlY3RlZCwgYW4gZXJyb3IgcGFja2V0IE1BWQorYmUgc2VudC4gT25jZSB0aGlzIHBhY2tldCBpcyBzZW50IGJ5IGEgY2xpZW50IG9yIGEgc2VydmVyLCB0aGUgZGF0YSB0cmFuc2ZlcgorcHJvY2VzcyBkZWZpbmVkIGluIHRoaXMgcHJvdG9jb2wgaXMgdGVybWluYXRlZC4KKwogVHJhbnNwb3J0cwogLS0tLS0tLS0tLQogVGhlcmUgYXJlIHRocmVlIHRyYW5zcG9ydHMgb3ZlciB3aGljaCB0aGUgcGFja2ZpbGUgcHJvdG9jb2wgaXMKQEAgLTg5LDEzICs5OSw2IEBACiAgICAgICIwMDM5Z2l0LXVwbG9hZC1wYWNrIC9zY2hhY29uL2dpdGJvb2suZ2l0XDBob3N0PWV4YW1wbGUuY29tXDAiIHwKICAgICAgbmMgLXYgZXhhbXBsZS5jb20gOTQxOAogCi1JZiB0aGUgc2VydmVyIHJlZnVzZXMgdGhlIHJlcXVlc3QgZm9yIHNvbWUgcmVhc29ucywgaXQgY291bGQgYWJvcnQKLWdyYWNlZnVsbHkgd2l0aCBhbiBlcnJvciBtZXNzYWdlLgotCi0tLS0tCi0gIGVycm9yLWxpbmUgICAgID0gIFBLVC1MSU5FKCJFUlIiIFNQIGV4cGxhbmF0aW9uLXRleHQpCi0tLS0tCi0KIAogU1NIIFRyYW5zcG9ydAogLS0tLS0tLS0tLS0tLQpAQCAtMzk4LDEyICs0MDEsMTEgQEAKIFRoZW4gdGhlIHNlcnZlciB3aWxsIHN0YXJ0IHNlbmRpbmcgaXRzIHBhY2tmaWxlIGRhdGEuCiAKIC0tLS0KLSAgc2VydmVyLXJlc3BvbnNlID0gKmFja19tdWx0aSBhY2sgLyBuYWsgLyBlcnJvci1saW5lCisgIHNlcnZlci1yZXNwb25zZSA9ICphY2tfbXVsdGkgYWNrIC8gbmFrCiAgIGFja19tdWx0aSAgICAgICA9IFBLVC1MSU5FKCJBQ0siIFNQIG9iai1pZCBhY2tfc3RhdHVzKQogICBhY2tfc3RhdHVzICAgICAgPSAiY29udGludWUiIC8gImNvbW1vbiIgLyAicmVhZHkiCiAgIGFjayAgICAgICAgICAgICA9IFBLVC1MSU5FKCJBQ0siIFNQIG9iai1pZCkKICAgbmFrICAgICAgICAgICAgID0gUEtULUxJTkUoIk5BSyIpCi0gIGVycm9yLWxpbmUgICAgID0gIFBLVC1MSU5FKCJFUlIiIFNQIGV4cGxhbmF0aW9uLXRleHQpCiAtLS0tCiAKIEEgc2ltcGxlIGNsb25lIG1heSBsb29rIGxpa2UgdGhpcyAod2l0aCBubyAnaGF2ZScgbGluZXMpOgpAQCAtNjQyLDcgKzY0NCw3IEBACiAgIGNvbW1hbmQtb2sgICAgICAgID0gUEtULUxJTkUoIm9rIiBTUCByZWZuYW1lKQogICBjb21tYW5kLWZhaWwgICAgICA9IFBLVC1MSU5FKCJuZyIgU1AgcmVmbmFtZSBTUCBlcnJvci1tc2cpCiAKLSAgZXJyb3ItbXNnICAgICAgICAgPSAxKihPQ1RFQ1QpIDsgd2hlcmUgbm90ICJvayIKKyAgZXJyb3ItbXNnICAgICAgICAgPSAxKihPQ1RFVCkgOyB3aGVyZSBub3QgIm9rIgogLS0tLQogCiBVcGRhdGVzIGNhbiBiZSB1bnN1Y2Nlc3NmdWwgZm9yIGEgbnVtYmVyIG9mIHJlYXNvbnMuICBUaGUgcmVmZXJlbmNlIGNhbiBoYXZlCkBAIC02NTUsMTQgKzY1NywxNCBAQAogQW4gZXhhbXBsZSBjbGllbnQvc2VydmVyIGNvbW11bmljYXRpb24gbWlnaHQgbG9vayBsaWtlIHRoaXM6CiAKIC0tLS0KLSAgIFM6IDAwN2M3NDczMGQ0MTBmY2I2NjAzYWNlOTZmMWRjNTVlYTYxOTYxMjI1MzJkIHJlZnMvaGVhZHMvbG9jYWxcMHJlcG9ydC1zdGF0dXMgZGVsZXRlLXJlZnMgb2ZzLWRlbHRhXG4KKyAgIFM6IDAwNjI3NDczMGQ0MTBmY2I2NjAzYWNlOTZmMWRjNTVlYTYxOTYxMjI1MzJkIHJlZnMvaGVhZHMvbG9jYWxcMHJlcG9ydC1zdGF0dXMgZGVsZXRlLXJlZnMgb2ZzLWRlbHRhXG4KICAgIFM6IDAwM2U3ZDE2NjUxNDRhM2E5NzVjMDVmMWY0MzkwMmRkYWYwODRlNzg0ZGJlIHJlZnMvaGVhZHMvZGVidWdcbgogICAgUzogMDAzZjc0NzMwZDQxMGZjYjY2MDNhY2U5NmYxZGM1NWVhNjE5NjEyMjUzMmQgcmVmcy9oZWFkcy9tYXN0ZXJcbgotICAgUzogMDAzZjc0NzMwZDQxMGZjYjY2MDNhY2U5NmYxZGM1NWVhNjE5NjEyMjUzMmQgcmVmcy9oZWFkcy90ZWFtXG4KKyAgIFM6IDAwM2Q3NDczMGQ0MTBmY2I2NjAzYWNlOTZmMWRjNTVlYTYxOTYxMjI1MzJkIHJlZnMvaGVhZHMvdGVhbVxuCiAgICBTOiAwMDAwCiAKLSAgIEM6IDAwM2U3ZDE2NjUxNDRhM2E5NzVjMDVmMWY0MzkwMmRkYWYwODRlNzg0ZGJlIDc0NzMwZDQxMGZjYjY2MDNhY2U5NmYxZGM1NWVhNjE5NjEyMjUzMmQgcmVmcy9oZWFkcy9kZWJ1Z1xuCi0gICBDOiAwMDNlNzQ3MzBkNDEwZmNiNjYwM2FjZTk2ZjFkYzU1ZWE2MTk2MTIyNTMyZCA1YTNmNmJlNzU1YmJiN2RlYWU1MDA2NTk4OGNiZmExZmZhOWFiNjhhIHJlZnMvaGVhZHMvbWFzdGVyXG4KKyAgIEM6IDAwNjc3ZDE2NjUxNDRhM2E5NzVjMDVmMWY0MzkwMmRkYWYwODRlNzg0ZGJlIDc0NzMwZDQxMGZjYjY2MDNhY2U5NmYxZGM1NWVhNjE5NjEyMjUzMmQgcmVmcy9oZWFkcy9kZWJ1Z1xuCisgICBDOiAwMDY4NzQ3MzBkNDEwZmNiNjYwM2FjZTk2ZjFkYzU1ZWE2MTk2MTIyNTMyZCA1YTNmNmJlNzU1YmJiN2RlYWU1MDA2NTk4OGNiZmExZmZhOWFiNjhhIHJlZnMvaGVhZHMvbWFzdGVyXG4KICAgIEM6IDAwMDAKICAgIEM6IFtQQUNLREFUQV0KIApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvcGFydGlhbC1jbG9uZS50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9wYXJ0aWFsLWNsb25lLnR4dAppbmRleCAxZWY2NmJkLi5iOWUxN2U3IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9wYXJ0aWFsLWNsb25lLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9wYXJ0aWFsLWNsb25lLnR4dApAQCAtMzAsMTIgKzMwLDIwIEBACiB0aW1lcyBhbmQgZGlzayB1c2FnZS4gIE1pc3Npbmcgb2JqZWN0cyBjYW4gbGF0ZXIgYmUgImRlbWFuZCBmZXRjaGVkIgogaWYvd2hlbiBuZWVkZWQuCiAKK0EgcmVtb3RlIHRoYXQgY2FuIGxhdGVyIHByb3ZpZGUgdGhlIG1pc3Npbmcgb2JqZWN0cyBpcyBjYWxsZWQgYQorcHJvbWlzb3IgcmVtb3RlLCBhcyBpdCBwcm9taXNlcyB0byBzZW5kIHRoZSBvYmplY3RzIHdoZW4KK3JlcXVlc3RlZC4gSW5pdGlhbGx5IEdpdCBzdXBwb3J0ZWQgb25seSBvbmUgcHJvbWlzb3IgcmVtb3RlLCB0aGUgb3JpZ2luCityZW1vdGUgZnJvbSB3aGljaCB0aGUgdXNlciBjbG9uZWQgYW5kIHRoYXQgd2FzIGNvbmZpZ3VyZWQgaW4gdGhlCisiZXh0ZW5zaW9ucy5wYXJ0aWFsQ2xvbmUiIGNvbmZpZyBvcHRpb24uIExhdGVyIHN1cHBvcnQgZm9yIG1vcmUgdGhhbgorb25lIHByb21pc29yIHJlbW90ZSBoYXMgYmVlbiBpbXBsZW1lbnRlZC4KKwogVXNlIG9mIHBhcnRpYWwgY2xvbmUgcmVxdWlyZXMgdGhhdCB0aGUgdXNlciBiZSBvbmxpbmUgYW5kIHRoZSBvcmlnaW4KLXJlbW90ZSBiZSBhdmFpbGFibGUgZm9yIG9uLWRlbWFuZCBmZXRjaGluZyBvZiBtaXNzaW5nIG9iamVjdHMuICBUaGlzIG1heQotb3IgbWF5IG5vdCBiZSBwcm9ibGVtYXRpYyBmb3IgdGhlIHVzZXIuICBGb3IgZXhhbXBsZSwgaWYgdGhlIHVzZXIgY2FuCi1zdGF5IHdpdGhpbiB0aGUgcHJlLXNlbGVjdGVkIHN1YnNldCBvZiB0aGUgc291cmNlIHRyZWUsIHRoZXkgbWF5IG5vdAotZW5jb3VudGVyIGFueSBtaXNzaW5nIG9iamVjdHMuICBBbHRlcm5hdGl2ZWx5LCB0aGUgdXNlciBjb3VsZCB0cnkgdG8KLXByZS1mZXRjaCB2YXJpb3VzIG9iamVjdHMgaWYgdGhleSBrbm93IHRoYXQgdGhleSBhcmUgZ29pbmcgb2ZmbGluZS4KK3JlbW90ZSBvciBvdGhlciBwcm9taXNvciByZW1vdGVzIGJlIGF2YWlsYWJsZSBmb3Igb24tZGVtYW5kIGZldGNoaW5nCitvZiBtaXNzaW5nIG9iamVjdHMuICBUaGlzIG1heSBvciBtYXkgbm90IGJlIHByb2JsZW1hdGljIGZvciB0aGUgdXNlci4KK0ZvciBleGFtcGxlLCBpZiB0aGUgdXNlciBjYW4gc3RheSB3aXRoaW4gdGhlIHByZS1zZWxlY3RlZCBzdWJzZXQgb2YKK3RoZSBzb3VyY2UgdHJlZSwgdGhleSBtYXkgbm90IGVuY291bnRlciBhbnkgbWlzc2luZyBvYmplY3RzLgorQWx0ZXJuYXRpdmVseSwgdGhlIHVzZXIgY291bGQgdHJ5IHRvIHByZS1mZXRjaCB2YXJpb3VzIG9iamVjdHMgaWYgdGhleQora25vdyB0aGF0IHRoZXkgYXJlIGdvaW5nIG9mZmxpbmUuCiAKIAogTm9uLUdvYWxzCkBAIC0xMDAsMjEgKzEwOCwyMSBAQAogSGFuZGxpbmcgTWlzc2luZyBPYmplY3RzCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotLSBBbiBvYmplY3QgbWF5IGJlIG1pc3NpbmcgZHVlIHRvIGEgcGFydGlhbCBjbG9uZSBvciBmZXRjaCwgb3IgbWlzc2luZyBkdWUKLSAgdG8gcmVwb3NpdG9yeSBjb3JydXB0aW9uLiAgVG8gZGlmZmVyZW50aWF0ZSB0aGVzZSBjYXNlcywgdGhlIGxvY2FsCi0gIHJlcG9zaXRvcnkgc3BlY2lhbGx5IGluZGljYXRlcyBzdWNoIGZpbHRlcmVkIHBhY2tmaWxlcyBvYnRhaW5lZCBmcm9tIHRoZQotICBwcm9taXNvciByZW1vdGUgYXMgInByb21pc29yIHBhY2tmaWxlcyIuCistIEFuIG9iamVjdCBtYXkgYmUgbWlzc2luZyBkdWUgdG8gYSBwYXJ0aWFsIGNsb25lIG9yIGZldGNoLCBvciBtaXNzaW5nCisgIGR1ZSB0byByZXBvc2l0b3J5IGNvcnJ1cHRpb24uICBUbyBkaWZmZXJlbnRpYXRlIHRoZXNlIGNhc2VzLCB0aGUKKyAgbG9jYWwgcmVwb3NpdG9yeSBzcGVjaWFsbHkgaW5kaWNhdGVzIHN1Y2ggZmlsdGVyZWQgcGFja2ZpbGVzCisgIG9idGFpbmVkIGZyb20gcHJvbWlzb3IgcmVtb3RlcyBhcyAicHJvbWlzb3IgcGFja2ZpbGVzIi4KICsKIFRoZXNlIHByb21pc29yIHBhY2tmaWxlcyBjb25zaXN0IG9mIGEgIjxuYW1lPi5wcm9taXNvciIgZmlsZSB3aXRoCiBhcmJpdHJhcnkgY29udGVudHMgKGxpa2UgdGhlICI8bmFtZT4ua2VlcCIgZmlsZXMpLCBpbiBhZGRpdGlvbiB0bwogdGhlaXIgIjxuYW1lPi5wYWNrIiBhbmQgIjxuYW1lPi5pZHgiIGZpbGVzLgogCiAtIFRoZSBsb2NhbCByZXBvc2l0b3J5IGNvbnNpZGVycyBhICJwcm9taXNvciBvYmplY3QiIHRvIGJlIGFuIG9iamVjdCB0aGF0Ci0gIGl0IGtub3dzICh0byB0aGUgYmVzdCBvZiBpdHMgYWJpbGl0eSkgdGhhdCB0aGUgcHJvbWlzb3IgcmVtb3RlIGhhcyBwcm9taXNlZAotICB0aGF0IGl0IGhhcywgZWl0aGVyIGJlY2F1c2UgdGhlIGxvY2FsIHJlcG9zaXRvcnkgaGFzIHRoYXQgb2JqZWN0IGluIG9uZSBvZgorICBpdCBrbm93cyAodG8gdGhlIGJlc3Qgb2YgaXRzIGFiaWxpdHkpIHRoYXQgcHJvbWlzb3IgcmVtb3RlcyBoYXZlIHByb21pc2VkCisgIHRoYXQgdGhleSBoYXZlLCBlaXRoZXIgYmVjYXVzZSB0aGUgbG9jYWwgcmVwb3NpdG9yeSBoYXMgdGhhdCBvYmplY3QgaW4gb25lIG9mCiAgIGl0cyBwcm9taXNvciBwYWNrZmlsZXMsIG9yIGJlY2F1c2UgYW5vdGhlciBwcm9taXNvciBvYmplY3QgcmVmZXJzIHRvIGl0LgogKwotV2hlbiBHaXQgZW5jb3VudGVycyBhIG1pc3Npbmcgb2JqZWN0LCBHaXQgY2FuIHNlZSBpZiBpdCBhIHByb21pc29yIG9iamVjdAorV2hlbiBHaXQgZW5jb3VudGVycyBhIG1pc3Npbmcgb2JqZWN0LCBHaXQgY2FuIHNlZSBpZiBpdCBpcyBhIHByb21pc29yIG9iamVjdAogYW5kIGhhbmRsZSBpdCBhcHByb3ByaWF0ZWx5LiAgSWYgbm90LCBHaXQgY2FuIHJlcG9ydCBhIGNvcnJ1cHRpb24uCiArCiBUaGlzIG1lYW5zIHRoYXQgdGhlcmUgaXMgbm8gbmVlZCBmb3IgdGhlIGNsaWVudCB0byBleHBsaWNpdGx5IG1haW50YWluIGFuCkBAIC0xMjMsMTIgKzEzMSwxMiBAQAogLSBTaW5jZSBhbG1vc3QgYWxsIEdpdCBjb2RlIGN1cnJlbnRseSBleHBlY3RzIGFueSByZWZlcmVuY2VkIG9iamVjdCB0byBiZQogICBwcmVzZW50IGxvY2FsbHkgYW5kIGJlY2F1c2Ugd2UgZG8gbm90IHdhbnQgdG8gZm9yY2UgZXZlcnkgY29tbWFuZCB0byBkbwogICBhIGRyeS1ydW4gZmlyc3QsIGEgZmFsbGJhY2sgbWVjaGFuaXNtIGlzIGFkZGVkIHRvIGFsbG93IEdpdCB0byBhdHRlbXB0Ci0gIHRvIGR5bmFtaWNhbGx5IGZldGNoIG1pc3Npbmcgb2JqZWN0cyBmcm9tIHRoZSBwcm9taXNvciByZW1vdGUuCisgIHRvIGR5bmFtaWNhbGx5IGZldGNoIG1pc3Npbmcgb2JqZWN0cyBmcm9tIHByb21pc29yIHJlbW90ZXMuCiArCiBXaGVuIHRoZSBub3JtYWwgb2JqZWN0IGxvb2t1cCBmYWlscyB0byBmaW5kIGFuIG9iamVjdCwgR2l0IGludm9rZXMKLWZldGNoLW9iamVjdCB0byB0cnkgdG8gZ2V0IHRoZSBvYmplY3QgZnJvbSB0aGUgc2VydmVyIGFuZCB0aGVuIHJldHJ5Ci10aGUgb2JqZWN0IGxvb2t1cC4gIFRoaXMgYWxsb3dzIG9iamVjdHMgdG8gYmUgImZhdWx0ZWQgaW4iIHdpdGhvdXQKLWNvbXBsaWNhdGVkIHByZWRpY3Rpb24gYWxnb3JpdGhtcy4KK3Byb21pc29yX3JlbW90ZV9nZXRfZGlyZWN0KCkgdG8gdHJ5IHRvIGdldCB0aGUgb2JqZWN0IGZyb20gYSBwcm9taXNvcgorcmVtb3RlIGFuZCB0aGVuIHJldHJ5IHRoZSBvYmplY3QgbG9va3VwLiAgVGhpcyBhbGxvd3Mgb2JqZWN0cyB0byBiZQorImZhdWx0ZWQgaW4iIHdpdGhvdXQgY29tcGxpY2F0ZWQgcHJlZGljdGlvbiBhbGdvcml0aG1zLgogKwogRm9yIGVmZmljaWVuY3kgcmVhc29ucywgbm8gY2hlY2sgYXMgdG8gd2hldGhlciB0aGUgbWlzc2luZyBvYmplY3QgaXMKIGFjdHVhbGx5IGEgcHJvbWlzb3Igb2JqZWN0IGlzIHBlcmZvcm1lZC4KQEAgLTE1Nyw4ICsxNjUsNyBAQAogKwogV2UgYXJlIG5vdCBoYXBweSB3aXRoIHRoaXMgZ2xvYmFsIHZhcmlhYmxlIGFuZCB3b3VsZCBsaWtlIHRvIHJlbW92ZSBpdCwKIGJ1dCB0aGF0IHJlcXVpcmVzIHNpZ25pZmljYW50IHJlZmFjdG9yaW5nIG9mIHRoZSBvYmplY3QgY29kZSB0byBwYXNzIGFuCi1hZGRpdGlvbmFsIGZsYWcuICBXZSBob3BlIHRoYXQgY29uY3VycmVudCBlZmZvcnRzIHRvIGFkZCBhbiBPREIgQVBJIGNhbgotZW5jb21wYXNzIHRoaXMuCithZGRpdGlvbmFsIGZsYWcuCiAKIAogRmV0Y2hpbmcgTWlzc2luZyBPYmplY3RzCkBAIC0xODIsMjEgKzE4OSw2MyBAQAogICB0aG91Z2ggdGhleSBhcmUgbm90IG5lY2Vzc2FyeS4KIAogCitVc2luZyBtYW55IHByb21pc29yIHJlbW90ZXMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitNYW55IHByb21pc29yIHJlbW90ZXMgY2FuIGJlIGNvbmZpZ3VyZWQgYW5kIHVzZWQuCisKK1RoaXMgYWxsb3dzIGZvciBleGFtcGxlIGEgdXNlciB0byBoYXZlIG11bHRpcGxlIGdlb2dyYXBoaWNhbGx5LWNsb3NlCitjYWNoZSBzZXJ2ZXJzIGZvciBmZXRjaGluZyBtaXNzaW5nIGJsb2JzIHdoaWxlIGNvbnRpbnVpbmcgdG8gZG8KK2ZpbHRlcmVkIGBnaXQtZmV0Y2hgIGNvbW1hbmRzIGZyb20gdGhlIGNlbnRyYWwgc2VydmVyLgorCitXaGVuIGZldGNoaW5nIG9iamVjdHMsIHByb21pc29yIHJlbW90ZXMgYXJlIHRyaWVkIG9uZSBhZnRlciB0aGUgb3RoZXIKK3VudGlsIGFsbCB0aGUgb2JqZWN0cyBoYXZlIGJlZW4gZmV0Y2hlZC4KKworUmVtb3RlcyB0aGF0IGFyZSBjb25zaWRlcmVkICJwcm9taXNvciIgcmVtb3RlcyBhcmUgdGhvc2Ugc3BlY2lmaWVkIGJ5Cit0aGUgZm9sbG93aW5nIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzOgorCistIGBleHRlbnNpb25zLnBhcnRpYWxDbG9uZSA9IDxuYW1lPmAKKworLSBgcmVtb3RlLjxuYW1lPi5wcm9taXNvciA9IHRydWVgCisKKy0gYHJlbW90ZS48bmFtZT4ucGFydGlhbENsb25lRmlsdGVyID0gLi4uYAorCitPbmx5IG9uZSBwcm9taXNvciByZW1vdGUgY2FuIGJlIGNvbmZpZ3VyZWQgdXNpbmcgdGhlCitgZXh0ZW5zaW9ucy5wYXJ0aWFsQ2xvbmVgIGNvbmZpZyB2YXJpYWJsZS4gVGhpcyBwcm9taXNvciByZW1vdGUgd2lsbAorYmUgdGhlIGxhc3Qgb25lIHRyaWVkIHdoZW4gZmV0Y2hpbmcgb2JqZWN0cy4KKworV2UgZGVjaWRlZCB0byBtYWtlIGl0IHRoZSBsYXN0IG9uZSB3ZSB0cnksIGJlY2F1c2UgaXQgaXMgbGlrZWx5IHRoYXQKK3NvbWVvbmUgdXNpbmcgbWFueSBwcm9taXNvciByZW1vdGVzIGlzIGRvaW5nIHNvIGJlY2F1c2UgdGhlIG90aGVyCitwcm9taXNvciByZW1vdGVzIGFyZSBiZXR0ZXIgZm9yIHNvbWUgcmVhc29uIChtYXliZSB0aGV5IGFyZSBjbG9zZXIgb3IKK2Zhc3RlciBmb3Igc29tZSBraW5kIG9mIG9iamVjdHMpIHRoYW4gdGhlIG9yaWdpbiwgYW5kIHRoZSBvcmlnaW4gaXMKK2xpa2VseSB0byBiZSB0aGUgcmVtb3RlIHNwZWNpZmllZCBieSBleHRlbnNpb25zLnBhcnRpYWxDbG9uZS4KKworVGhpcyBqdXN0aWZpY2F0aW9uIGlzIG5vdCB2ZXJ5IHN0cm9uZywgYnV0IG9uZSBjaG9pY2UgaGFkIHRvIGJlIG1hZGUsCithbmQgYW55d2F5IHRoZSBsb25nIHRlcm0gcGxhbiBzaG91bGQgYmUgdG8gbWFrZSB0aGUgb3JkZXIgc29tZWhvdworZnVsbHkgY29uZmlndXJhYmxlLgorCitGb3Igbm93IHRob3VnaCB0aGUgb3RoZXIgcHJvbWlzb3IgcmVtb3RlcyB3aWxsIGJlIHRyaWVkIGluIHRoZSBvcmRlcgordGhleSBhcHBlYXIgaW4gdGhlIGNvbmZpZyBmaWxlLgorCiBDdXJyZW50IExpbWl0YXRpb25zCiAtLS0tLS0tLS0tLS0tLS0tLS0tCiAKLS0gVGhlIHJlbW90ZSB1c2VkIGZvciBhIHBhcnRpYWwgY2xvbmUgKG9yIHRoZSBmaXJzdCBwYXJ0aWFsIGZldGNoCi0gIGZvbGxvd2luZyBhIHJlZ3VsYXIgY2xvbmUpIGlzIG1hcmtlZCBhcyB0aGUgInByb21pc29yIHJlbW90ZSIuCistIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBzcGVjaWZ5IHRoZSBvcmRlciBpbiB3aGljaCB0aGUgcHJvbWlzb3IKKyAgcmVtb3RlcyBhcmUgdHJpZWQgaW4gb3RoZXIgd2F5cyB0aGFuIHRoZSBvcmRlciBpbiB3aGljaCB0aGV5IGFwcGVhcgorICBpbiB0aGUgY29uZmlnIGZpbGUuCiArCi1XZSBhcmUgY3VycmVudGx5IGxpbWl0ZWQgdG8gYSBzaW5nbGUgcHJvbWlzb3IgcmVtb3RlIGFuZCBvbmx5IHRoYXQKLXJlbW90ZSBtYXkgYmUgdXNlZCBmb3Igc3Vic2VxdWVudCBwYXJ0aWFsIGZldGNoZXMuCi0rCi1XZSBhY2NlcHQgdGhpcyBsaW1pdGF0aW9uIGJlY2F1c2Ugd2UgYmVsaWV2ZSBpbml0aWFsIHVzZXJzIG9mIHRoaXMKLWZlYXR1cmUgd2lsbCBiZSB1c2luZyBpdCBvbiByZXBvc2l0b3JpZXMgd2l0aCBhIHN0cm9uZyBzaW5nbGUgY2VudHJhbAotc2VydmVyLgorSXQgaXMgYWxzbyBub3QgcG9zc2libGUgdG8gc3BlY2lmeSBhbiBvcmRlciB0byBiZSB1c2VkIHdoZW4gZmV0Y2hpbmcKK2Zyb20gb25lIHJlbW90ZSBhbmQgYSBkaWZmZXJlbnQgb3JkZXIgd2hlbiBmZXRjaGluZyBmcm9tIGFub3RoZXIKK3JlbW90ZS4KIAotLSBEeW5hbWljIG9iamVjdCBmZXRjaGluZyB3aWxsIG9ubHkgYXNrIHRoZSBwcm9taXNvciByZW1vdGUgZm9yIG1pc3NpbmcKLSAgb2JqZWN0cy4gIFdlIGFzc3VtZSB0aGF0IHRoZSBwcm9taXNvciByZW1vdGUgaGFzIGEgY29tcGxldGUgdmlldyBvZiB0aGUKKy0gSXQgaXMgbm90IHBvc3NpYmxlIHRvIHB1c2ggb25seSBzcGVjaWZpYyBvYmplY3RzIHRvIGEgcHJvbWlzb3IKKyAgcmVtb3RlLgorKworSXQgaXMgbm90IHBvc3NpYmxlIHRvIHB1c2ggYXQgdGhlIHNhbWUgdGltZSB0byBtdWx0aXBsZSBwcm9taXNvcgorcmVtb3RlIGluIGEgc3BlY2lmaWMgb3JkZXIuCisKKy0gRHluYW1pYyBvYmplY3QgZmV0Y2hpbmcgd2lsbCBvbmx5IGFzayBwcm9taXNvciByZW1vdGVzIGZvciBtaXNzaW5nCisgIG9iamVjdHMuICBXZSBhc3N1bWUgdGhhdCBwcm9taXNvciByZW1vdGVzIGhhdmUgYSBjb21wbGV0ZSB2aWV3IG9mIHRoZQogICByZXBvc2l0b3J5IGFuZCBjYW4gc2F0aXNmeSBhbGwgc3VjaCByZXF1ZXN0cy4KIAogLSBSZXBhY2sgZXNzZW50aWFsbHkgdHJlYXRzIHByb21pc29yIGFuZCBub24tcHJvbWlzb3IgcGFja2ZpbGVzIGFzIDIKQEAgLTIxOCwxNSArMjY3LDE3IEBACiBGdXR1cmUgV29yawogLS0tLS0tLS0tLS0KIAotLSBBbGxvdyBtb3JlIHRoYW4gb25lIHByb21pc29yIHJlbW90ZSBhbmQgZGVmaW5lIGEgc3RyYXRlZ3kgZm9yIGZldGNoaW5nCi0gIG1pc3Npbmcgb2JqZWN0cyBmcm9tIHNwZWNpZmljIHByb21pc29yIHJlbW90ZXMgb3Igb2YgaXRlcmF0aW5nIG92ZXIgdGhlCi0gIHNldCBvZiBwcm9taXNvciByZW1vdGVzIHVudGlsIGEgbWlzc2luZyBvYmplY3QgaXMgZm91bmQuCistIEltcHJvdmUgdGhlIHdheSB0byBzcGVjaWZ5IHRoZSBvcmRlciBpbiB3aGljaCBwcm9taXNvciByZW1vdGVzIGFyZQorICB0cmllZC4KICsKLUEgdXNlciBtaWdodCB3YW50IHRvIGhhdmUgbXVsdGlwbGUgZ2VvZ3JhcGhpY2FsbHktY2xvc2UgY2FjaGUgc2VydmVycwotZm9yIGZldGNoaW5nIG1pc3NpbmcgYmxvYnMgd2hpbGUgY29udGludWluZyB0byBkbyBmaWx0ZXJlZCBgZ2l0LWZldGNoYAotY29tbWFuZHMgZnJvbSB0aGUgY2VudHJhbCBzZXJ2ZXIsIGZvciBleGFtcGxlLgorRm9yIGV4YW1wbGUgdGhpcyBjb3VsZCBhbGxvdyB0byBzcGVjaWZ5IGV4cGxpY2l0bHkgc29tZXRoaW5nIGxpa2U6CisiV2hlbiBmZXRjaGluZyBmcm9tIHRoaXMgcmVtb3RlLCBJIHdhbnQgdG8gdXNlIHRoZXNlIHByb21pc29yIHJlbW90ZXMKK2luIHRoaXMgb3JkZXIsIHRob3VnaCwgd2hlbiBwdXNoaW5nIG9yIGZldGNoaW5nIHRvIHRoYXQgcmVtb3RlLCBJIHdhbnQKK3RvIHVzZSB0aG9zZSBwcm9taXNvciByZW1vdGVzIGluIHRoYXQgb3JkZXIuIgorCistIEFsbG93IHB1c2hpbmcgdG8gcHJvbWlzb3IgcmVtb3Rlcy4KICsKLU9yIHRoZSB1c2VyIG1pZ2h0IHdhbnQgdG8gd29yayBpbiBhIHRyaWFuZ3VsYXIgd29yayBmbG93IHdpdGggbXVsdGlwbGUKK1RoZSB1c2VyIG1pZ2h0IHdhbnQgdG8gd29yayBpbiBhIHRyaWFuZ3VsYXIgd29yayBmbG93IHdpdGggbXVsdGlwbGUKIHByb21pc29yIHJlbW90ZXMgdGhhdCBlYWNoIGhhdmUgYW4gaW5jb21wbGV0ZSB2aWV3IG9mIHRoZSByZXBvc2l0b3J5LgogCiAtIEFsbG93IHJlcGFjayB0byB3b3JrIG9uIHByb21pc29yIHBhY2tmaWxlcyAod2hpbGUga2VlcGluZyB0aGVtIGRpc3RpbmN0CkBAIC0yOTksMjYgKzM1MCwyNiBAQAogWzBdIGh0dHBzOi8vY3JidWcuY29tL2dpdC8yCiAgICAgQnVnIzI6IFBhcnRpYWwgQ2xvbmUKIAotWzFdIGh0dHBzOi8vcHVibGljLWluYm94Lm9yZy9naXQvMjAxNzAxMTMxNTUyNTMuMTY0NC0xLWJlbnBlYXJ0QG1pY3Jvc29mdC5jb20vICsKK1sxXSBodHRwczovL2xvcmUua2VybmVsLm9yZy9naXQvMjAxNzAxMTMxNTUyNTMuMTY0NC0xLWJlbnBlYXJ0QG1pY3Jvc29mdC5jb20vICsKICAgICBTdWJqZWN0OiBbUkZDXSBBZGQgc3VwcG9ydCBmb3IgZG93bmxvYWRpbmcgYmxvYnMgb24gZGVtYW5kICsKICAgICBEYXRlOiBGcmksIDEzIEphbiAyMDE3IDEwOjUyOjUzIC0wNTAwCiAKLVsyXSBodHRwczovL3B1YmxpYy1pbmJveC5vcmcvZ2l0L2NvdmVyLjE1MDY3MTQ5OTkuZ2l0LmpvbmF0aGFudGFubXlAZ29vZ2xlLmNvbS8gKworWzJdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC9jb3Zlci4xNTA2NzE0OTk5LmdpdC5qb25hdGhhbnRhbm15QGdvb2dsZS5jb20vICsKICAgICBTdWJqZWN0OiBbUEFUQ0ggMDAvMThdIFBhcnRpYWwgY2xvbmUgKGZyb20gY2xvbmUgdG8gbGF6eSBmZXRjaCBpbiAxOCBwYXRjaGVzKSArCiAgICAgRGF0ZTogRnJpLCAyOSBTZXAgMjAxNyAxMzoxMTozNiAtMDcwMAogCi1bM10gaHR0cHM6Ly9wdWJsaWMtaW5ib3gub3JnL2dpdC8yMDE3MDQyNjIyMTM0Ni4yNTMzNy0xLWpvbmF0aGFudGFubXlAZ29vZ2xlLmNvbS8gKworWzNdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC8yMDE3MDQyNjIyMTM0Ni4yNTMzNy0xLWpvbmF0aGFudGFubXlAZ29vZ2xlLmNvbS8gKwogICAgIFN1YmplY3Q6IFByb3Bvc2FsIGZvciBtaXNzaW5nIGJsb2Igc3VwcG9ydCBpbiBHaXQgcmVwb3MgKwogICAgIERhdGU6IFdlZCwgMjYgQXByIDIwMTcgMTU6MTM6NDYgLTA3MDAKIAotWzRdIGh0dHBzOi8vcHVibGljLWluYm94Lm9yZy9naXQvMTQ4ODk5OTAzOS0zNzYzMS0xLWdpdC1zZW5kLWVtYWlsLWdpdEBqZWZmaG9zdGV0bGVyLmNvbS8gKworWzRdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC8xNDg4OTk5MDM5LTM3NjMxLTEtZ2l0LXNlbmQtZW1haWwtZ2l0QGplZmZob3N0ZXRsZXIuY29tLyArCiAgICAgU3ViamVjdDogW1BBVENIIDAwLzEwXSBSRkMgUGFydGlhbCBDbG9uZSBhbmQgRmV0Y2ggKwogICAgIERhdGU6IFdlZCwgIDggTWFyIDIwMTcgMTg6NTA6MjkgKzAwMDAKIAotWzVdIGh0dHBzOi8vcHVibGljLWluYm94Lm9yZy9naXQvMjAxNzA1MDUxNTI4MDIuNjcyNC0xLWJlbnBlYXJ0QG1pY3Jvc29mdC5jb20vICsKK1s1XSBodHRwczovL2xvcmUua2VybmVsLm9yZy9naXQvMjAxNzA1MDUxNTI4MDIuNjcyNC0xLWJlbnBlYXJ0QG1pY3Jvc29mdC5jb20vICsKICAgICBTdWJqZWN0OiBbUEFUQ0ggdjcgMDAvMTBdIHJlZmFjdG9yIHRoZSBmaWx0ZXIgcHJvY2VzcyBjb2RlIGludG8gYSByZXVzYWJsZSBtb2R1bGUgKwogICAgIERhdGU6IEZyaSwgIDUgTWF5IDIwMTcgMTE6Mjc6NTIgLTA0MDAKIAotWzZdIGh0dHBzOi8vcHVibGljLWluYm94Lm9yZy9naXQvMjAxNzA3MTQxMzI2NTEuMTcwNzA4LTEtYmVucGVhcnRAbWljcm9zb2Z0LmNvbS8gKworWzZdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC8yMDE3MDcxNDEzMjY1MS4xNzA3MDgtMS1iZW5wZWFydEBtaWNyb3NvZnQuY29tLyArCiAgICAgU3ViamVjdDogW1JGQy9QQVRDSCB2MiAwLzFdIEFkZCBzdXBwb3J0IGZvciBkb3dubG9hZGluZyBibG9icyBvbiBkZW1hbmQgKwogICAgIERhdGU6IEZyaSwgMTQgSnVsIDIwMTcgMDk6MjY6NTAgLTA0MDAKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL3Byb3RvY29sLWNhcGFiaWxpdGllcy50eHQgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9wcm90b2NvbC1jYXBhYmlsaXRpZXMudHh0CmluZGV4IDMzMmQyMDkuLjJiMjY3YzAgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL3Byb3RvY29sLWNhcGFiaWxpdGllcy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvcHJvdG9jb2wtY2FwYWJpbGl0aWVzLnR4dApAQCAtMSw2ICsxLDEwIEBACiBHaXQgUHJvdG9jb2wgQ2FwYWJpbGl0aWVzCiA9PT09PT09PT09PT09PT09PT09PT09PT09CiAKK05PVEU6IHRoaXMgZG9jdW1lbnQgZGVzY3JpYmVzIGNhcGFiaWxpdGllcyBmb3IgdmVyc2lvbnMgMCBhbmQgMSBvZiB0aGUgcGFjaworcHJvdG9jb2wuIEZvciB2ZXJzaW9uIDIsIHBsZWFzZSByZWZlciB0byB0aGUgbGluazpwcm90b2NvbC12Mi5odG1sW3Byb3RvY29sLXYyXQorZG9jLgorCiBTZXJ2ZXJzIFNIT1VMRCBzdXBwb3J0IGFsbCBjYXBhYmlsaXRpZXMgZGVmaW5lZCBpbiB0aGlzIGRvY3VtZW50LgogCiBPbiB0aGUgdmVyeSBmaXJzdCBsaW5lIG9mIHRoZSBpbml0aWFsIHNlcnZlciByZXNwb25zZSBvZiBlaXRoZXIKQEAgLTE3Miw2ICsxNzYsMjAgQEAKIHB1cnBvc2VzLCBhbmQgTVVTVCBOT1QgYmUgdXNlZCB0byBwcm9ncmFtbWF0aWNhbGx5IGFzc3VtZSB0aGUgcHJlc2VuY2UKIG9yIGFic2VuY2Ugb2YgcGFydGljdWxhciBmZWF0dXJlcy4KIAorc3ltcmVmCistLS0tLS0KKworVGhpcyBwYXJhbWV0ZXJpemVkIGNhcGFiaWxpdHkgaXMgdXNlZCB0byBpbmZvcm0gdGhlIHJlY2VpdmVyIHdoaWNoIHN5bWJvbGljIHJlZgorcG9pbnRzIHRvIHdoaWNoIHJlZjsgZm9yIGV4YW1wbGUsICJzeW1yZWY9SEVBRDpyZWZzL2hlYWRzL21hc3RlciIgdGVsbHMgdGhlCityZWNlaXZlciB0aGF0IEhFQUQgcG9pbnRzIHRvIG1hc3Rlci4gVGhpcyBjYXBhYmlsaXR5IGNhbiBiZSByZXBlYXRlZCB0bworcmVwcmVzZW50IG11bHRpcGxlIHN5bXJlZnMuCisKK1NlcnZlcnMgU0hPVUxEIGluY2x1ZGUgdGhpcyBjYXBhYmlsaXR5IGZvciB0aGUgSEVBRCBzeW1yZWYgaWYgaXQgaXMgb25lIG9mIHRoZQorcmVmcyBiZWluZyBzZW50LgorCitDbGllbnRzIE1BWSB1c2UgdGhlIHBhcmFtZXRlcnMgZnJvbSB0aGlzIGNhcGFiaWxpdHkgdG8gc2VsZWN0IHRoZSBwcm9wZXIgaW5pdGlhbAorYnJhbmNoIHdoZW4gY2xvbmluZyBhIHJlcG9zaXRvcnkuCisKIHNoYWxsb3cKIC0tLS0tLS0KIApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvcHJvdG9jb2wtdjIudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvcHJvdG9jb2wtdjIudHh0CmluZGV4IDA5ZTRlMDIuLjdlMzc2NmMgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL3Byb3RvY29sLXYyLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9wcm90b2NvbC12Mi50eHQKQEAgLTEsNSArMSw1IEBACi0gR2l0IFdpcmUgUHJvdG9jb2wsIFZlcnNpb24gMgotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitHaXQgV2lyZSBQcm90b2NvbCwgVmVyc2lvbiAyCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAKIFRoaXMgZG9jdW1lbnQgcHJlc2VudHMgYSBzcGVjaWZpY2F0aW9uIGZvciBhIHZlcnNpb24gMiBvZiBHaXQncyB3aXJlCiBwcm90b2NvbC4gIFByb3RvY29sIHYyIHdpbGwgaW1wcm92ZSB1cG9uIHYxIGluIHRoZSBmb2xsb3dpbmcgd2F5czoKQEAgLTIyLDggKzIyLDggQEAKIGhhcyBjb21wbGV0ZWQsIGEgY2xpZW50IGNhbiByZXVzZSB0aGUgY29ubmVjdGlvbiBhbmQgcmVxdWVzdCB0aGF0IG90aGVyCiBjb21tYW5kcyBiZSBleGVjdXRlZC4KIAotIFBhY2tldC1MaW5lIEZyYW1pbmcKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorUGFja2V0LUxpbmUgRnJhbWluZworLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBBbGwgY29tbXVuaWNhdGlvbiBpcyBkb25lIHVzaW5nIHBhY2tldC1saW5lIGZyYW1pbmcsIGp1c3QgYXMgaW4gdjEuICBTZWUKIGBEb2N1bWVudGF0aW9uL3RlY2huaWNhbC9wYWNrLXByb3RvY29sLnR4dGAgYW5kCkBAIC0zNCw4ICszNCw4IEBACiAgICogJzAwMDAnIEZsdXNoIFBhY2tldCAoZmx1c2gtcGt0KSAtIGluZGljYXRlcyB0aGUgZW5kIG9mIGEgbWVzc2FnZQogICAqICcwMDAxJyBEZWxpbWl0ZXIgUGFja2V0IChkZWxpbS1wa3QpIC0gc2VwYXJhdGVzIHNlY3Rpb25zIG9mIGEgbWVzc2FnZQogCi0gSW5pdGlhbCBDbGllbnQgUmVxdWVzdAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitJbml0aWFsIENsaWVudCBSZXF1ZXN0CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIEluIGdlbmVyYWwgYSBjbGllbnQgY2FuIHJlcXVlc3QgdG8gc3BlYWsgcHJvdG9jb2wgdjIgYnkgc2VuZGluZwogYHZlcnNpb249MmAgdGhyb3VnaCB0aGUgcmVzcGVjdGl2ZSBzaWRlLWNoYW5uZWwgZm9yIHRoZSB0cmFuc3BvcnQgYmVpbmcKQEAgLTQzLDIyICs0MywyMiBAQAogZm91bmQgaW4gYHBhY2stcHJvdG9jb2wudHh0YCBhbmQgYGh0dHAtcHJvdG9jb2wudHh0YC4gIEluIGFsbCBjYXNlcyB0aGUKIHJlc3BvbnNlIGZyb20gdGhlIHNlcnZlciBpcyB0aGUgY2FwYWJpbGl0eSBhZHZlcnRpc2VtZW50LgogCi0gR2l0IFRyYW5zcG9ydAotfn5+fn5+fn5+fn5+fn5+CitHaXQgVHJhbnNwb3J0Cit+fn5+fn5+fn5+fn5+CiAKIFdoZW4gdXNpbmcgdGhlIGdpdDovLyB0cmFuc3BvcnQsIHlvdSBjYW4gcmVxdWVzdCB0byB1c2UgcHJvdG9jb2wgdjIgYnkKIHNlbmRpbmcgInZlcnNpb249MiIgYXMgYW4gZXh0cmEgcGFyYW1ldGVyOgogCiAgICAwMDNlZ2l0LXVwbG9hZC1wYWNrIC9wcm9qZWN0LmdpdFwwaG9zdD1teXNlcnZlci5jb21cMFwwdmVyc2lvbj0yXDAKIAotIFNTSCBhbmQgRmlsZSBUcmFuc3BvcnQKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorU1NIIGFuZCBGaWxlIFRyYW5zcG9ydAorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCiBXaGVuIHVzaW5nIGVpdGhlciB0aGUgc3NoOi8vIG9yIGZpbGU6Ly8gdHJhbnNwb3J0LCB0aGUgR0lUX1BST1RPQ09MCiBlbnZpcm9ubWVudCB2YXJpYWJsZSBtdXN0IGJlIHNldCBleHBsaWNpdGx5IHRvIGluY2x1ZGUgInZlcnNpb249MiIuCiAKLSBIVFRQIFRyYW5zcG9ydAotfn5+fn5+fn5+fn5+fn5+fgorSFRUUCBUcmFuc3BvcnQKK35+fn5+fn5+fn5+fn5+CiAKIFdoZW4gdXNpbmcgdGhlIGh0dHA6Ly8gb3IgaHR0cHM6Ly8gdHJhbnNwb3J0IGEgY2xpZW50IG1ha2VzIGEgInNtYXJ0IgogaW5mby9yZWZzIHJlcXVlc3QgYXMgZGVzY3JpYmVkIGluIGBodHRwLXByb3RvY29sLnR4dGAgYW5kIHJlcXVlc3RzIHRoYXQKQEAgLTc5LDggKzc5LDggQEAKIFN1YnNlcXVlbnQgcmVxdWVzdHMgYXJlIHRoZW4gbWFkZSBkaXJlY3RseSB0byB0aGUgc2VydmljZQogYCRHSVRfVVJML2dpdC11cGxvYWQtcGFja2AuIChUaGlzIHdvcmtzIHRoZSBzYW1lIGZvciBnaXQtcmVjZWl2ZS1wYWNrKS4KIAotIENhcGFiaWxpdHkgQWR2ZXJ0aXNlbWVudAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0NhcGFiaWxpdHkgQWR2ZXJ0aXNlbWVudAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIEEgc2VydmVyIHdoaWNoIGRlY2lkZXMgdG8gY29tbXVuaWNhdGUgKGJhc2VkIG9uIGEgcmVxdWVzdCBmcm9tIGEgY2xpZW50KQogdXNpbmcgcHJvdG9jb2wgdmVyc2lvbiAyLCBub3RpZmllcyB0aGUgY2xpZW50IGJ5IHNlbmRpbmcgYSB2ZXJzaW9uIHN0cmluZwpAQCAtMTAxLDggKzEwMSw4IEBACiAgICAga2V5ID0gMSooQUxQSEEgfCBESUdJVCB8ICItXyIpCiAgICAgdmFsdWUgPSAxKihBTFBIQSB8IERJR0lUIHwgIiAtXy4sP1wve31bXSgpPD4hQCMkJV4mKis9OjsiKQogCi0gQ29tbWFuZCBSZXF1ZXN0Ci0tLS0tLS0tLS0tLS0tLS0tLQorQ29tbWFuZCBSZXF1ZXN0CistLS0tLS0tLS0tLS0tLS0KIAogQWZ0ZXIgcmVjZWl2aW5nIHRoZSBjYXBhYmlsaXR5IGFkdmVydGlzZW1lbnQsIGEgY2xpZW50IGNhbiB0aGVuIGlzc3VlIGEKIHJlcXVlc3QgdG8gc2VsZWN0IHRoZSBjb21tYW5kIGl0IHdhbnRzIHdpdGggYW55IHBhcnRpY3VsYXIgY2FwYWJpbGl0aWVzCkBAIC0xMzcsMTEgKzEzNywxMSBAQAogb3B0aW9uYWxseSBzZW5kIGFuIGVtcHR5IHJlcXVlc3QgY29uc2lzdGluZyBvZiBqdXN0IGEgZmx1c2gtcGt0IHRvCiBpbmRpY2F0ZSB0aGF0IG5vIG1vcmUgcmVxdWVzdHMgd2lsbCBiZSBtYWRlLgogCi0gQ2FwYWJpbGl0aWVzCi0tLS0tLS0tLS0tLS0tLQorQ2FwYWJpbGl0aWVzCistLS0tLS0tLS0tLS0KIAogVGhlcmUgYXJlIHR3byBkaWZmZXJlbnQgdHlwZXMgb2YgY2FwYWJpbGl0aWVzOiBub3JtYWwgY2FwYWJpbGl0aWVzLAotd2hpY2ggY2FuIGJlIHVzZWQgdG8gdG8gY29udmV5IGluZm9ybWF0aW9uIG9yIGFsdGVyIHRoZSBiZWhhdmlvciBvZiBhCit3aGljaCBjYW4gYmUgdXNlZCB0byBjb252ZXkgaW5mb3JtYXRpb24gb3IgYWx0ZXIgdGhlIGJlaGF2aW9yIG9mIGEKIHJlcXVlc3QsIGFuZCBjb21tYW5kcywgd2hpY2ggYXJlIHRoZSBjb3JlIGFjdGlvbnMgdGhhdCBhIGNsaWVudCB3YW50cyB0bwogcGVyZm9ybSAoZmV0Y2gsIHB1c2gsIGV0YykuCiAKQEAgLTE1Myw4ICsxNTMsOCBAQAogcGVybWl0cyBzaW1wbGUgcm91bmQtcm9iaW4gbG9hZC1iYWxhbmNpbmcgb24gdGhlIHNlcnZlciBzaWRlLCB3aXRob3V0CiBuZWVkaW5nIHRvIHdvcnJ5IGFib3V0IHN0YXRlIG1hbmFnZW1lbnQuCiAKLSBhZ2VudAotfn5+fn5+fgorYWdlbnQKK35+fn5+CiAKIFRoZSBzZXJ2ZXIgY2FuIGFkdmVydGlzZSB0aGUgYGFnZW50YCBjYXBhYmlsaXR5IHdpdGggYSB2YWx1ZSBgWGAgKGluIHRoZQogZm9ybSBgYWdlbnQ9WGApIHRvIG5vdGlmeSB0aGUgY2xpZW50IHRoYXQgdGhlIHNlcnZlciBpcyBydW5uaW5nIHZlcnNpb24KQEAgLTE2OCw4ICsxNjgsOCBAQAogYW5kIGRlYnVnZ2luZyBwdXJwb3NlcywgYW5kIE1VU1QgTk9UIGJlIHVzZWQgdG8gcHJvZ3JhbW1hdGljYWxseSBhc3N1bWUKIHRoZSBwcmVzZW5jZSBvciBhYnNlbmNlIG9mIHBhcnRpY3VsYXIgZmVhdHVyZXMuCiAKLSBscy1yZWZzCi1+fn5+fn5+fn4KK2xzLXJlZnMKK35+fn5+fn4KIAogYGxzLXJlZnNgIGlzIHRoZSBjb21tYW5kIHVzZWQgdG8gcmVxdWVzdCBhIHJlZmVyZW5jZSBhZHZlcnRpc2VtZW50IGluIHYyLgogVW5saWtlIHRoZSBjdXJyZW50IHJlZmVyZW5jZSBhZHZlcnRpc2VtZW50LCBscy1yZWZzIHRha2VzIGluIGFyZ3VtZW50cwpAQCAtMTk5LDggKzE5OSw4IEBACiAgICAgc3ltcmVmID0gInN5bXJlZi10YXJnZXQ6IiBzeW1yZWYtdGFyZ2V0CiAgICAgcGVlbGVkID0gInBlZWxlZDoiIG9iai1pZAogCi0gZmV0Y2gKLX5+fn5+fn4KK2ZldGNoCit+fn5+fgogCiBgZmV0Y2hgIGlzIHRoZSBjb21tYW5kIHVzZWQgdG8gZmV0Y2ggYSBwYWNrZmlsZSBpbiB2Mi4gIEl0IGNhbiBiZSBsb29rZWQKIGF0IGFzIGEgbW9kaWZpZWQgdmVyc2lvbiBvZiB0aGUgdjEgZmV0Y2ggd2hlcmUgdGhlIHJlZi1hZHZlcnRpc2VtZW50IGlzCkBAIC0yNTIsNyArMjUyLDcgQEAKICAgICBvZnMtZGVsdGEKIAlJbmRpY2F0ZSB0aGF0IHRoZSBjbGllbnQgdW5kZXJzdGFuZHMgUEFDS3YyIHdpdGggZGVsdGEgcmVmZXJyaW5nCiAJdG8gaXRzIGJhc2UgYnkgcG9zaXRpb24gaW4gcGFjayByYXRoZXIgdGhhbiBieSBhbiBvaWQuICBUaGF0IGlzLAotCXRoZXkgY2FuIHJlYWQgT0JKX09GU19ERUxUQSAoYWtlIHR5cGUgNikgaW4gYSBwYWNrZmlsZS4KKwl0aGV5IGNhbiByZWFkIE9CSl9PRlNfREVMVEEgKGFrYSB0eXBlIDYpIGluIGEgcGFja2ZpbGUuCiAKIElmIHRoZSAnc2hhbGxvdycgZmVhdHVyZSBpcyBhZHZlcnRpc2VkIHRoZSBmb2xsb3dpbmcgYXJndW1lbnRzIGNhbiBiZQogaW5jbHVkZWQgaW4gdGhlIGNsaWVudHMgcmVxdWVzdCBhcyB3ZWxsIGFzIHRoZSBwb3RlbnRpYWwgYWRkaXRpb24gb2YgdGhlCkBAIC0yOTYsNyArMjk2LDEzIEBACiAJUmVxdWVzdCB0aGF0IHZhcmlvdXMgb2JqZWN0cyBmcm9tIHRoZSBwYWNrZmlsZSBiZSBvbWl0dGVkCiAJdXNpbmcgb25lIG9mIHNldmVyYWwgZmlsdGVyaW5nIHRlY2huaXF1ZXMuIFRoZXNlIGFyZSBpbnRlbmRlZAogCWZvciB1c2Ugd2l0aCBwYXJ0aWFsIGNsb25lIGFuZCBwYXJ0aWFsIGZldGNoIG9wZXJhdGlvbnMuIFNlZQotCWByZXYtbGlzdGAgZm9yIHBvc3NpYmxlICJmaWx0ZXItc3BlYyIgdmFsdWVzLgorCWByZXYtbGlzdGAgZm9yIHBvc3NpYmxlICJmaWx0ZXItc3BlYyIgdmFsdWVzLiBXaGVuIGNvbW11bmljYXRpbmcKKwl3aXRoIG90aGVyIHByb2Nlc3Nlcywgc2VuZGVycyBTSE9VTEQgdHJhbnNsYXRlIHNjYWxlZCBpbnRlZ2VycworCShlLmcuICIxayIpIGludG8gYSBmdWxseS1leHBhbmRlZCBmb3JtIChlLmcuICIxMDI0IikgdG8gYWlkCisJaW50ZXJvcGVyYWJpbGl0eSB3aXRoIG9sZGVyIHJlY2VpdmVycyB0aGF0IG1heSBub3QgdW5kZXJzdGFuZAorCW5ld2x5LWludmVudGVkIHNjYWxpbmcgc3VmZml4ZXMuIEhvd2V2ZXIsIHJlY2VpdmVycyBTSE9VTEQKKwlhY2NlcHQgdGhlIGZvbGxvd2luZyBzdWZmaXhlczogJ2snLCAnbScsIGFuZCAnZycgZm9yIDEwMjQsCisJMTA0ODU3NiwgYW5kIDEwNzM3NDE4MjQsIHJlc3BlY3RpdmVseS4KIAogSWYgdGhlICdyZWYtaW4td2FudCcgZmVhdHVyZSBpcyBhZHZlcnRpc2VkLCB0aGUgZm9sbG93aW5nIGFyZ3VtZW50IGNhbgogYmUgaW5jbHVkZWQgaW4gdGhlIGNsaWVudCdzIHJlcXVlc3QgYXMgd2VsbCBhcyB0aGUgcG90ZW50aWFsIGFkZGl0aW9uIG9mCkBAIC0zMDcsNiArMzEzLDE2IEBACiAJcGFydGljdWxhciByZWYsIHdoZXJlIDxyZWY+IGlzIHRoZSBmdWxsIG5hbWUgb2YgYSByZWYgb24gdGhlCiAJc2VydmVyLgogCitJZiB0aGUgJ3NpZGViYW5kLWFsbCcgZmVhdHVyZSBpcyBhZHZlcnRpc2VkLCB0aGUgZm9sbG93aW5nIGFyZ3VtZW50IGNhbiBiZQoraW5jbHVkZWQgaW4gdGhlIGNsaWVudCdzIHJlcXVlc3Q6CisKKyAgICBzaWRlYmFuZC1hbGwKKwlJbnN0cnVjdCB0aGUgc2VydmVyIHRvIHNlbmQgdGhlIHdob2xlIHJlc3BvbnNlIG11bHRpcGxleGVkLCBub3QganVzdAorCXRoZSBwYWNrZmlsZSBzZWN0aW9uLiBBbGwgbm9uLWZsdXNoIGFuZCBub24tZGVsaW0gUEtULUxJTkUgaW4gdGhlCisJcmVzcG9uc2UgKG5vdCBvbmx5IGluIHRoZSBwYWNrZmlsZSBzZWN0aW9uKSB3aWxsIHRoZW4gc3RhcnQgd2l0aCBhIGJ5dGUKKwlpbmRpY2F0aW5nIGl0cyBzaWRlYmFuZCAoMSwgMiwgb3IgMyksIGFuZCB0aGUgc2VydmVyIG1heSBzZW5kICIwMDA1XDIiCisJKGEgUEtULUxJTkUgb2Ygc2lkZWJhbmQgMiB3aXRoIG5vIHBheWxvYWQpIGFzIGEga2VlcGFsaXZlIHBhY2tldC4KKwogVGhlIHJlc3BvbnNlIG9mIGBmZXRjaGAgaXMgYnJva2VuIGludG8gYSBudW1iZXIgb2Ygc2VjdGlvbnMgc2VwYXJhdGVkIGJ5CiBkZWxpbWl0ZXIgcGFja2V0cyAoMDAwMSksIHdpdGggZWFjaCBzZWN0aW9uIGJlZ2lubmluZyB3aXRoIGl0cyBzZWN0aW9uCiBoZWFkZXIuCkBAIC00MjgsOCArNDQ0LDggQEAKIAkJMiAtIHByb2dyZXNzIG1lc3NhZ2VzCiAJCTMgLSBmYXRhbCBlcnJvciBtZXNzYWdlIGp1c3QgYmVmb3JlIHN0cmVhbSBhYm9ydHMKIAotIHNlcnZlci1vcHRpb24KLX5+fn5+fn5+fn5+fn5+fgorc2VydmVyLW9wdGlvbgorfn5+fn5+fn5+fn5+fgogCiBJZiBhZHZlcnRpc2VkLCBpbmRpY2F0ZXMgdGhhdCBhbnkgbnVtYmVyIG9mIHNlcnZlciBzcGVjaWZpYyBvcHRpb25zIGNhbiBiZQogaW5jbHVkZWQgaW4gYSByZXF1ZXN0LiAgVGhpcyBpcyBkb25lIGJ5IHNlbmRpbmcgZWFjaCBvcHRpb24gYXMgYQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvcmFjeS1naXQudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvcmFjeS1naXQudHh0CmluZGV4IDRhOGJlNGQuLmNlZGE0YmIgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL3JhY3ktZ2l0LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9yYWN5LWdpdC50eHQKQEAgLTUxLDcgKzUxLDcgQEAKIG9ubHkgZml4ZXMgdGhlIGlzc3VlIGZvciBmaWxlIHN5c3RlbXMgd2l0aCBleGFjdGx5IDEgbnMgb3IgMSBzCiByZXNvbHV0aW9uLiBPdGhlciBmaWxlIHN5c3RlbXMgYXJlIHN0aWxsIGJyb2tlbiBpbiBjdXJyZW50IExpbnV4CiBrZXJuZWxzIChlLmcuIENFUEgsIENJRlMsIE5URlMsIFVERiksIHNlZQotaHR0cHM6Ly9sa21sLm9yZy9sa21sLzIwMTUvNi85LzcxNAoraHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvbGttbC81NTc3MjQwRC43MDIwMzA5QGdtYWlsLmNvbS8KIAogUmFjeSBHaXQKIC0tLS0tLS0tCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9yZXJlcmUudHh0IGIvRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvcmVyZXJlLnR4dAppbmRleCBhYTIyZDdhLi5hZjVmOWZjIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL3RlY2huaWNhbC9yZXJlcmUudHh0CisrKyBiL0RvY3VtZW50YXRpb24vdGVjaG5pY2FsL3JlcmVyZS50eHQKQEAgLTExNyw3ICsxMTcsNyBAQAogNCBjb21iaW5hdGlvbnMgb2YgKCJCIG9yIEMiLCAiQyBvciBCIikgeCAoIlggb3IgWSIsICJZIG9yIFgiKS4KIAogQnkgc29ydGluZywgdGhlIGNvbmZsaWN0IGlzIGdpdmVuIGl0cyBjYW5vbmljYWwgbmFtZSwgbmFtZWx5LCAiYW4KLWVhcmx5IHBhcnQgYmVjYW1lIEIgb3IgQywgYSBsYXRlIHBhcnQgYmVjYW1lcyBYIG9yIFkiLCBhbmQgd2hlbmV2ZXIKK2Vhcmx5IHBhcnQgYmVjYW1lIEIgb3IgQywgYSBsYXRlIHBhcnQgYmVjYW1lIFggb3IgWSIsIGFuZCB3aGVuZXZlcgogYW55IG9mIHRoZXNlIGZvdXIgcGF0dGVybnMgYXBwZWFyLCBhbmQgd2UgY2FuIGdldCB0byB0aGUgc2FtZSBjb25mbGljdAogYW5kIHJlc29sdXRpb24gdGhhdCB3ZSBzYXcgZWFybGllci4KIApkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90cmFjZTItdGFyZ2V0LXZhbHVlcy50eHQgYi9Eb2N1bWVudGF0aW9uL3RyYWNlMi10YXJnZXQtdmFsdWVzLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zOTg1YjZkCi0tLSAvZGV2L251bGwKKysrIGIvRG9jdW1lbnRhdGlvbi90cmFjZTItdGFyZ2V0LXZhbHVlcy50eHQKQEAgLTAsMCArMSwxMiBAQAorLS0KKyogYDBgIG9yIGBmYWxzZWAgLSBEaXNhYmxlcyB0aGUgdGFyZ2V0LgorKiBgMWAgb3IgYHRydWVgIC0gV3JpdGVzIHRvIGBTVERFUlJgLgorKiBgWzItOV1gIC0gV3JpdGVzIHRvIHRoZSBhbHJlYWR5IG9wZW5lZCBmaWxlIGRlc2NyaXB0b3IuCisqIGA8YWJzb2x1dGUtcGF0aG5hbWU+YCAtIFdyaXRlcyB0byB0aGUgZmlsZSBpbiBhcHBlbmQgbW9kZS4gSWYgdGhlIHRhcmdldAorYWxyZWFkeSBleGlzdHMgYW5kIGlzIGEgZGlyZWN0b3J5LCB0aGUgdHJhY2VzIHdpbGwgYmUgd3JpdHRlbiB0byBmaWxlcyAob25lCitwZXIgcHJvY2VzcykgdW5kZXJuZWF0aCB0aGUgZ2l2ZW4gZGlyZWN0b3J5LgorKiBgYWZfdW5peDpbPHNvY2tldF90eXBlPjpdPGFic29sdXRlLXBhdGhuYW1lPmAgLSBXcml0ZSB0byBhCitVbml4IERvbWFpblNvY2tldCAob24gcGxhdGZvcm1zIHRoYXQgc3VwcG9ydCB0aGVtKS4gIFNvY2tldAordHlwZSBjYW4gYmUgZWl0aGVyIGBzdHJlYW1gIG9yIGBkZ3JhbWA7IGlmIG9taXR0ZWQgR2l0IHdpbGwKK3RyeSBib3RoLgorLS0KZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdXJscy50eHQgYi9Eb2N1bWVudGF0aW9uL3VybHMudHh0CmluZGV4IGIwNWRhOTUuLjFjMjI5ZDcgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vdXJscy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi91cmxzLnR4dApAQCAtNTMsNiArNTMsOSBAQAogLS1sb2NhbCBvcHRpb24uCiBlbmRpZjo6Z2l0LWNsb25lW10KIAorJ2dpdCBjbG9uZScsICdnaXQgZmV0Y2gnIGFuZCAnZ2l0IHB1bGwnLCBidXQgbm90ICdnaXQgcHVzaCcsIHdpbGwgYWxzbworYWNjZXB0IGEgc3VpdGFibGUgYnVuZGxlIGZpbGUuIFNlZSBsaW5rZ2l0OmdpdC1idW5kbGVbMV0uCisKIFdoZW4gR2l0IGRvZXNuJ3Qga25vdyBob3cgdG8gaGFuZGxlIGEgY2VydGFpbiB0cmFuc3BvcnQgcHJvdG9jb2wsIGl0CiBhdHRlbXB0cyB0byB1c2UgdGhlICdyZW1vdGUtPHRyYW5zcG9ydD4nIHJlbW90ZSBoZWxwZXIsIGlmIG9uZQogZXhpc3RzLiBUbyBleHBsaWNpdGx5IHJlcXVlc3QgYSByZW1vdGUgaGVscGVyLCB0aGUgZm9sbG93aW5nIHN5bnRheApAQCAtNjIsNyArNjUsNyBAQAogCiB3aGVyZSA8YWRkcmVzcz4gbWF5IGJlIGEgcGF0aCwgYSBzZXJ2ZXIgYW5kIHBhdGgsIG9yIGFuIGFyYml0cmFyeQogVVJMLWxpa2Ugc3RyaW5nIHJlY29nbml6ZWQgYnkgdGhlIHNwZWNpZmljIHJlbW90ZSBoZWxwZXIgYmVpbmcKLWludm9rZWQuIFNlZSBsaW5rZ2l0OmdpdHJlbW90ZS1oZWxwZXJzWzFdIGZvciBkZXRhaWxzLgoraW52b2tlZC4gU2VlIGxpbmtnaXQ6Z2l0cmVtb3RlLWhlbHBlcnNbN10gZm9yIGRldGFpbHMuCiAKIElmIHRoZXJlIGFyZSBhIGxhcmdlIG51bWJlciBvZiBzaW1pbGFybHktbmFtZWQgcmVtb3RlIHJlcG9zaXRvcmllcyBhbmQKIHlvdSB3YW50IHRvIHVzZSBhIGRpZmZlcmVudCBmb3JtYXQgZm9yIHRoZW0gKHN1Y2ggdGhhdCB0aGUgVVJMcyB5b3UKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdXNlci1tYW51YWwudHh0IGIvRG9jdW1lbnRhdGlvbi91c2VyLW1hbnVhbC50eHQKaW5kZXggZWZmNzg5MC4uODMzNjUyOSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi91c2VyLW1hbnVhbC50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi91c2VyLW1hbnVhbC50eHQKQEAgLTEsNSArMSw0IEBACi1HaXQgVXNlciBNYW51YWwKLT09PT09PT09PT09PT09PQorPSBHaXQgVXNlciBNYW51YWwKIAogR2l0IGlzIGEgZmFzdCBkaXN0cmlidXRlZCByZXZpc2lvbiBjb250cm9sIHN5c3RlbS4KIApAQCAtNDEsMTIgKzQwLDEwIEBACiAKIAogW1tyZXBvc2l0b3JpZXMtYW5kLWJyYW5jaGVzXV0KLVJlcG9zaXRvcmllcyBhbmQgQnJhbmNoZXMKLT09PT09PT09PT09PT09PT09PT09PT09PT0KKz09IFJlcG9zaXRvcmllcyBhbmQgQnJhbmNoZXMKIAogW1tob3ctdG8tZ2V0LWEtZ2l0LXJlcG9zaXRvcnldXQotSG93IHRvIGdldCBhIEdpdCByZXBvc2l0b3J5Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBIb3cgdG8gZ2V0IGEgR2l0IHJlcG9zaXRvcnkKIAogSXQgd2lsbCBiZSB1c2VmdWwgdG8gaGF2ZSBhIEdpdCByZXBvc2l0b3J5IHRvIGV4cGVyaW1lbnQgd2l0aCBhcyB5b3UKIHJlYWQgdGhpcyBtYW51YWwuCkBAIC03Myw4ICs3MCw3IEBACiBhYm91dCB0aGUgaGlzdG9yeSBvZiB0aGUgcHJvamVjdC4KIAogW1tob3ctdG8tY2hlY2stb3V0XV0KLUhvdyB0byBjaGVjayBvdXQgYSBkaWZmZXJlbnQgdmVyc2lvbiBvZiBhIHByb2plY3QKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBIb3cgdG8gY2hlY2sgb3V0IGEgZGlmZmVyZW50IHZlcnNpb24gb2YgYSBwcm9qZWN0CiAKIEdpdCBpcyBiZXN0IHRob3VnaHQgb2YgYXMgYSB0b29sIGZvciBzdG9yaW5nIHRoZSBoaXN0b3J5IG9mIGEgY29sbGVjdGlvbgogb2YgZmlsZXMuICBJdCBzdG9yZXMgdGhlIGhpc3RvcnkgYXMgYSBjb21wcmVzc2VkIGNvbGxlY3Rpb24gb2YKQEAgLTEyMiwxMCArMTE4LDEwIEBACiB3aGlsZSBoZWFkcyBhcmUgZXhwZWN0ZWQgdG8gYWR2YW5jZSBhcyBkZXZlbG9wbWVudCBwcm9ncmVzc2VzLgogCiBDcmVhdGUgYSBuZXcgYnJhbmNoIGhlYWQgcG9pbnRpbmcgdG8gb25lIG9mIHRoZXNlIHZlcnNpb25zIGFuZCBjaGVjayBpdAotb3V0IHVzaW5nIGxpbmtnaXQ6Z2l0LWNoZWNrb3V0WzFdOgorb3V0IHVzaW5nIGxpbmtnaXQ6Z2l0LXN3aXRjaFsxXToKIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0kIGdpdCBjaGVja291dCAtYiBuZXcgdjIuNi4xMworJCBnaXQgc3dpdGNoIC1jIG5ldyB2Mi42LjEzCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogVGhlIHdvcmtpbmcgZGlyZWN0b3J5IHRoZW4gcmVmbGVjdHMgdGhlIGNvbnRlbnRzIHRoYXQgdGhlIHByb2plY3QgaGFkCkBAIC0xNTEsOCArMTQ3LDcgQEAKIGNhcmVmdWxseS4KIAogW1t1bmRlcnN0YW5kaW5nLWNvbW1pdHNdXQotVW5kZXJzdGFuZGluZyBIaXN0b3J5OiBDb21taXRzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBVbmRlcnN0YW5kaW5nIEhpc3Rvcnk6IENvbW1pdHMKIAogRXZlcnkgY2hhbmdlIGluIHRoZSBoaXN0b3J5IG9mIGEgcHJvamVjdCBpcyByZXByZXNlbnRlZCBieSBhIGNvbW1pdC4KIFRoZSBsaW5rZ2l0OmdpdC1zaG93WzFdIGNvbW1hbmQgc2hvd3MgdGhlIG1vc3QgcmVjZW50IGNvbW1pdCBvbiB0aGUKQEAgLTIwMiw4ICsxOTcsNyBAQAogd2l0aCBhIG5hbWUgdGhhdCBpcyBhIGhhc2ggb2YgaXRzIGNvbnRlbnRzLgogCiBbW3VuZGVyc3RhbmRpbmctcmVhY2hhYmlsaXR5XV0KLVVuZGVyc3RhbmRpbmcgaGlzdG9yeTogY29tbWl0cywgcGFyZW50cywgYW5kIHJlYWNoYWJpbGl0eQotfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IFVuZGVyc3RhbmRpbmcgaGlzdG9yeTogY29tbWl0cywgcGFyZW50cywgYW5kIHJlYWNoYWJpbGl0eQogCiBFdmVyeSBjb21taXQgKGV4Y2VwdCB0aGUgdmVyeSBmaXJzdCBjb21taXQgaW4gYSBwcm9qZWN0KSBhbHNvIGhhcyBhCiBwYXJlbnQgY29tbWl0IHdoaWNoIHNob3dzIHdoYXQgaGFwcGVuZWQgYmVmb3JlIHRoaXMgY29tbWl0LgpAQCAtMjI3LDggKzIyMSw3IEBACiBsZWFkaW5nIGZyb20gY29tbWl0IFkgdG8gY29tbWl0IFguCiAKIFtbaGlzdG9yeS1kaWFncmFtc11dCi1VbmRlcnN0YW5kaW5nIGhpc3Rvcnk6IEhpc3RvcnkgZGlhZ3JhbXMKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorPT09PSBVbmRlcnN0YW5kaW5nIGhpc3Rvcnk6IEhpc3RvcnkgZGlhZ3JhbXMKIAogV2Ugd2lsbCBzb21ldGltZXMgcmVwcmVzZW50IEdpdCBoaXN0b3J5IHVzaW5nIGRpYWdyYW1zIGxpa2UgdGhlIG9uZQogYmVsb3cuICBDb21taXRzIGFyZSBzaG93biBhcyAibyIsIGFuZCB0aGUgbGlua3MgYmV0d2VlbiB0aGVtIHdpdGgKQEAgLTI0Nyw4ICsyNDAsNyBAQAogYmUgcmVwbGFjZWQgd2l0aCBhbm90aGVyIGxldHRlciBvciBudW1iZXIuCiAKIFtbd2hhdC1pcy1hLWJyYW5jaF1dCi1VbmRlcnN0YW5kaW5nIGhpc3Rvcnk6IFdoYXQgaXMgYSBicmFuY2g/Ci1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IFVuZGVyc3RhbmRpbmcgaGlzdG9yeTogV2hhdCBpcyBhIGJyYW5jaD8KIAogV2hlbiB3ZSBuZWVkIHRvIGJlIHByZWNpc2UsIHdlIHdpbGwgdXNlIHRoZSB3b3JkICJicmFuY2giIHRvIG1lYW4gYSBsaW5lCiBvZiBkZXZlbG9wbWVudCwgYW5kICJicmFuY2ggaGVhZCIgKG9yIGp1c3QgImhlYWQiKSB0byBtZWFuIGEgcmVmZXJlbmNlCkBAIC0yNjEsOCArMjUzLDcgQEAKICJicmFuY2giIGJvdGggZm9yIGJyYW5jaGVzIGFuZCBmb3IgYnJhbmNoIGhlYWRzLgogCiBbW21hbmlwdWxhdGluZy1icmFuY2hlc11dCi1NYW5pcHVsYXRpbmcgYnJhbmNoZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IE1hbmlwdWxhdGluZyBicmFuY2hlcwogCiBDcmVhdGluZywgZGVsZXRpbmcsIGFuZCBtb2RpZnlpbmcgYnJhbmNoZXMgaXMgcXVpY2sgYW5kIGVhc3k7IGhlcmUncwogYSBzdW1tYXJ5IG9mIHRoZSBjb21tYW5kczoKQEAgLTI4MiwxMCArMjczLDEwIEBACiAJdGhpcyBjb21tYW5kIHdpbGwgZmFpbCB3aXRoIGEgd2FybmluZy4KIGBnaXQgYnJhbmNoIC1EIDxicmFuY2g+YDo6CiAJZGVsZXRlIHRoZSBicmFuY2ggYDxicmFuY2g+YCBpcnJlc3BlY3RpdmUgb2YgaXRzIG1lcmdlZCBzdGF0dXMuCi1gZ2l0IGNoZWNrb3V0IDxicmFuY2g+YDo6CitgZ2l0IHN3aXRjaCA8YnJhbmNoPmA6OgogCW1ha2UgdGhlIGN1cnJlbnQgYnJhbmNoIGA8YnJhbmNoPmAsIHVwZGF0aW5nIHRoZSB3b3JraW5nCiAJZGlyZWN0b3J5IHRvIHJlZmxlY3QgdGhlIHZlcnNpb24gcmVmZXJlbmNlZCBieSBgPGJyYW5jaD5gLgotYGdpdCBjaGVja291dCAtYiA8bmV3PiA8c3RhcnQtcG9pbnQ+YDo6CitgZ2l0IHN3aXRjaCAtYyA8bmV3PiA8c3RhcnQtcG9pbnQ+YDo6CiAJY3JlYXRlIGEgbmV3IGJyYW5jaCBgPG5ldz5gIHJlZmVyZW5jaW5nIGA8c3RhcnQtcG9pbnQ+YCwgYW5kCiAJY2hlY2sgaXQgb3V0LgogCkBAIC0yOTksMjUgKzI5MCwyNCBAQAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIFtbZGV0YWNoZWQtaGVhZF1dCi1FeGFtaW5pbmcgYW4gb2xkIHZlcnNpb24gd2l0aG91dCBjcmVhdGluZyBhIG5ldyBicmFuY2gKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IEV4YW1pbmluZyBhbiBvbGQgdmVyc2lvbiB3aXRob3V0IGNyZWF0aW5nIGEgbmV3IGJyYW5jaAogCi1UaGUgYGdpdCBjaGVja291dGAgY29tbWFuZCBub3JtYWxseSBleHBlY3RzIGEgYnJhbmNoIGhlYWQsIGJ1dCB3aWxsIGFsc28KLWFjY2VwdCBhbiBhcmJpdHJhcnkgY29tbWl0OyBmb3IgZXhhbXBsZSwgeW91IGNhbiBjaGVjayBvdXQgdGhlIGNvbW1pdAotcmVmZXJlbmNlZCBieSBhIHRhZzoKK1RoZSBgZ2l0IHN3aXRjaGAgY29tbWFuZCBub3JtYWxseSBleHBlY3RzIGEgYnJhbmNoIGhlYWQsIGJ1dCB3aWxsIGFsc28KK2FjY2VwdCBhbiBhcmJpdHJhcnkgY29tbWl0IHdoZW4gaW52b2tlZCB3aXRoIC0tZGV0YWNoOyBmb3IgZXhhbXBsZSwKK3lvdSBjYW4gY2hlY2sgb3V0IHRoZSBjb21taXQgcmVmZXJlbmNlZCBieSBhIHRhZzoKIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0kIGdpdCBjaGVja291dCB2Mi42LjE3CiskIGdpdCBzd2l0Y2ggLS1kZXRhY2ggdjIuNi4xNwogTm90ZTogY2hlY2tpbmcgb3V0ICd2Mi42LjE3Jy4KIAogWW91IGFyZSBpbiAnZGV0YWNoZWQgSEVBRCcgc3RhdGUuIFlvdSBjYW4gbG9vayBhcm91bmQsIG1ha2UgZXhwZXJpbWVudGFsCiBjaGFuZ2VzIGFuZCBjb21taXQgdGhlbSwgYW5kIHlvdSBjYW4gZGlzY2FyZCBhbnkgY29tbWl0cyB5b3UgbWFrZSBpbiB0aGlzCi1zdGF0ZSB3aXRob3V0IGltcGFjdGluZyBhbnkgYnJhbmNoZXMgYnkgcGVyZm9ybWluZyBhbm90aGVyIGNoZWNrb3V0Lgorc3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHBlcmZvcm1pbmcgYW5vdGhlciBzd2l0Y2guCiAKIElmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIG5ldyBicmFuY2ggdG8gcmV0YWluIGNvbW1pdHMgeW91IGNyZWF0ZSwgeW91IG1heQotZG8gc28gKG5vdyBvciBsYXRlcikgYnkgdXNpbmcgLWIgd2l0aCB0aGUgY2hlY2tvdXQgY29tbWFuZCBhZ2Fpbi4gRXhhbXBsZToKK2RvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1jIHdpdGggdGhlIHN3aXRjaCBjb21tYW5kIGFnYWluLiBFeGFtcGxlOgogCi0gIGdpdCBjaGVja291dCAtYiBuZXdfYnJhbmNoX25hbWUKKyAgZ2l0IHN3aXRjaCAtYyBuZXdfYnJhbmNoX25hbWUKIAogSEVBRCBpcyBub3cgYXQgNDI3YWJmYSBMaW51eCB2Mi42LjE3CiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQEAgLTM0MCw4ICszMzAsNyBAQAogKG9yIHRhZykgZm9yIHRoaXMgdmVyc2lvbiBsYXRlciBpZiB5b3UgZGVjaWRlIHRvLgogCiBbW2V4YW1pbmluZy1yZW1vdGUtYnJhbmNoZXNdXQotRXhhbWluaW5nIGJyYW5jaGVzIGZyb20gYSByZW1vdGUgcmVwb3NpdG9yeQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IEV4YW1pbmluZyBicmFuY2hlcyBmcm9tIGEgcmVtb3RlIHJlcG9zaXRvcnkKIAogVGhlICJtYXN0ZXIiIGJyYW5jaCB0aGF0IHdhcyBjcmVhdGVkIGF0IHRoZSB0aW1lIHlvdSBjbG9uZWQgaXMgYSBjb3B5CiBvZiB0aGUgSEVBRCBpbiB0aGUgcmVwb3NpdG9yeSB0aGF0IHlvdSBjbG9uZWQgZnJvbS4gIFRoYXQgcmVwb3NpdG9yeQpAQCAtMzczLDcgKzM2Miw3IEBACiBvbiBhIGJyYW5jaCBvZiB5b3VyIG93biwganVzdCBhcyB5b3Ugd291bGQgZm9yIGEgdGFnOgogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSQgZ2l0IGNoZWNrb3V0IC1iIG15LXRvZG8tY29weSBvcmlnaW4vdG9kbworJCBnaXQgc3dpdGNoIC1jIG15LXRvZG8tY29weSBvcmlnaW4vdG9kbwogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIFlvdSBjYW4gYWxzbyBjaGVjayBvdXQgYG9yaWdpbi90b2RvYCBkaXJlY3RseSB0byBleGFtaW5lIGl0IG9yCkBAIC0zODMsOCArMzcyLDcgQEAKIHRvIHJlZmVyIHRvIHRoZSByZXBvc2l0b3J5IHRoYXQgeW91IGNsb25lZCBmcm9tLgogCiBbW2hvdy1naXQtc3RvcmVzLXJlZmVyZW5jZXNdXQotTmFtaW5nIGJyYW5jaGVzLCB0YWdzLCBhbmQgb3RoZXIgcmVmZXJlbmNlcwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IE5hbWluZyBicmFuY2hlcywgdGFncywgYW5kIG90aGVyIHJlZmVyZW5jZXMKIAogQnJhbmNoZXMsIHJlbW90ZS10cmFja2luZyBicmFuY2hlcywgYW5kIHRhZ3MgYXJlIGFsbCByZWZlcmVuY2VzIHRvCiBjb21taXRzLiAgQWxsIHJlZmVyZW5jZXMgYXJlIG5hbWVkIHdpdGggYSBzbGFzaC1zZXBhcmF0ZWQgcGF0aCBuYW1lCkBAIC00MTMsOCArNDAxLDcgQEAKIFJFVklTSU9OUyIgc2VjdGlvbiBvZiBsaW5rZ2l0OmdpdHJldmlzaW9uc1s3XS4KIAogW1tVcGRhdGluZy1hLXJlcG9zaXRvcnktV2l0aC1naXQtZmV0Y2hdXQotVXBkYXRpbmcgYSByZXBvc2l0b3J5IHdpdGggZ2l0IGZldGNoCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBVcGRhdGluZyBhIHJlcG9zaXRvcnkgd2l0aCBnaXQgZmV0Y2gKIAogQWZ0ZXIgeW91IGNsb25lIGEgcmVwb3NpdG9yeSBhbmQgY29tbWl0IGEgZmV3IGNoYW5nZXMgb2YgeW91ciBvd24sIHlvdQogbWF5IHdpc2ggdG8gY2hlY2sgdGhlIG9yaWdpbmFsIHJlcG9zaXRvcnkgZm9yIHVwZGF0ZXMuCkBAIC00MjUsOCArNDEyLDcgQEAKICJtYXN0ZXIiIGJyYW5jaCB0aGF0IHdhcyBjcmVhdGVkIGZvciB5b3Ugb24gY2xvbmUuCiAKIFtbZmV0Y2hpbmctYnJhbmNoZXNdXQotRmV0Y2hpbmcgYnJhbmNoZXMgZnJvbSBvdGhlciByZXBvc2l0b3JpZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCis9PT0gRmV0Y2hpbmcgYnJhbmNoZXMgZnJvbSBvdGhlciByZXBvc2l0b3JpZXMKIAogWW91IGNhbiBhbHNvIHRyYWNrIGJyYW5jaGVzIGZyb20gcmVwb3NpdG9yaWVzIG90aGVyIHRoYW4gdGhlIG9uZSB5b3UKIGNsb25lZCBmcm9tLCB1c2luZyBsaW5rZ2l0OmdpdC1yZW1vdGVbMV06CkBAIC00NzQsOCArNDYwLDcgQEAKIGxpbmtnaXQ6Z2l0LWNvbmZpZ1sxXSBmb3IgZGV0YWlscy4pCiAKIFtbZXhwbG9yaW5nLWdpdC1oaXN0b3J5XV0KLUV4cGxvcmluZyBHaXQgaGlzdG9yeQotPT09PT09PT09PT09PT09PT09PT09Cis9PSBFeHBsb3JpbmcgR2l0IGhpc3RvcnkKIAogR2l0IGlzIGJlc3QgdGhvdWdodCBvZiBhcyBhIHRvb2wgZm9yIHN0b3JpbmcgdGhlIGhpc3Rvcnkgb2YgYQogY29sbGVjdGlvbiBvZiBmaWxlcy4gIEl0IGRvZXMgdGhpcyBieSBzdG9yaW5nIGNvbXByZXNzZWQgc25hcHNob3RzIG9mCkBAIC00ODksOCArNDc0LDcgQEAKIGNvbW1pdCB0aGF0IGludHJvZHVjZWQgYSBidWcgaW50byBhIHByb2plY3QuCiAKIFtbdXNpbmctYmlzZWN0XV0KLUhvdyB0byB1c2UgYmlzZWN0IHRvIGZpbmQgYSByZWdyZXNzaW9uCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IEhvdyB0byB1c2UgYmlzZWN0IHRvIGZpbmQgYSByZWdyZXNzaW9uCiAKIFN1cHBvc2UgdmVyc2lvbiAyLjYuMTggb2YgeW91ciBwcm9qZWN0IHdvcmtlZCwgYnV0IHRoZSB2ZXJzaW9uIGF0CiAibWFzdGVyIiBjcmFzaGVzLiAgU29tZXRpbWVzIHRoZSBiZXN0IHdheSB0byBmaW5kIHRoZSBjYXVzZSBvZiBzdWNoIGEKQEAgLTU3Miw4ICs1NTYsNyBAQAogYmlzZWN0YCBmZWF0dXJlcy4KIAogW1tuYW1pbmctY29tbWl0c11dCi1OYW1pbmcgY29tbWl0cwotLS0tLS0tLS0tLS0tLS0KKz09PSBOYW1pbmcgY29tbWl0cwogCiBXZSBoYXZlIHNlZW4gc2V2ZXJhbCB3YXlzIG9mIG5hbWluZyBjb21taXRzIGFscmVhZHk6CiAKQEAgLTYzNyw4ICs2MjAsNyBAQAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBbW2NyZWF0aW5nLXRhZ3NdXQotQ3JlYXRpbmcgdGFncwotLS0tLS0tLS0tLS0tLQorPT09IENyZWF0aW5nIHRhZ3MKIAogV2UgY2FuIGFsc28gY3JlYXRlIGEgdGFnIHRvIHJlZmVyIHRvIGEgcGFydGljdWxhciBjb21taXQ7IGFmdGVyCiBydW5uaW5nCkBAIC02NTUsOCArNjM3LDcgQEAKIGZvciBkZXRhaWxzLgogCiBbW2Jyb3dzaW5nLXJldmlzaW9uc11dCi1Ccm93c2luZyByZXZpc2lvbnMKLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IEJyb3dzaW5nIHJldmlzaW9ucwogCiBUaGUgbGlua2dpdDpnaXQtbG9nWzFdIGNvbW1hbmQgY2FuIHNob3cgbGlzdHMgb2YgY29tbWl0cy4gIE9uIGl0cwogb3duLCBpdCBzaG93cyBhbGwgY29tbWl0cyByZWFjaGFibGUgZnJvbSB0aGUgcGFyZW50IGNvbW1pdDsgYnV0IHlvdQpAQCAtNjk3LDggKzY3OCw3IEBACiBjb21taXRzIGFyZSBsaXN0ZWQgaW4gbWF5IGJlIHNvbWV3aGF0IGFyYml0cmFyeS4KIAogW1tnZW5lcmF0aW5nLWRpZmZzXV0KLUdlbmVyYXRpbmcgZGlmZnMKLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBHZW5lcmF0aW5nIGRpZmZzCiAKIFlvdSBjYW4gZ2VuZXJhdGUgZGlmZnMgYmV0d2VlbiBhbnkgdHdvIHZlcnNpb25zIHVzaW5nCiBsaW5rZ2l0OmdpdC1kaWZmWzFdOgpAQCAtNzI2LDggKzcwNiw3IEBACiBidXQgbm90IGZyb20gbWFzdGVyLgogCiBbW3ZpZXdpbmctb2xkLWZpbGUtdmVyc2lvbnNdXQotVmlld2luZyBvbGQgZmlsZSB2ZXJzaW9ucwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IFZpZXdpbmcgb2xkIGZpbGUgdmVyc2lvbnMKIAogWW91IGNhbiBhbHdheXMgdmlldyBhbiBvbGQgdmVyc2lvbiBvZiBhIGZpbGUgYnkganVzdCBjaGVja2luZyBvdXQgdGhlCiBjb3JyZWN0IHJldmlzaW9uIGZpcnN0LiAgQnV0IHNvbWV0aW1lcyBpdCBpcyBtb3JlIGNvbnZlbmllbnQgdG8gYmUKQEAgLTc0MiwxMiArNzIxLDEwIEBACiBtYXkgYmUgYW55IHBhdGggdG8gYSBmaWxlIHRyYWNrZWQgYnkgR2l0LgogCiBbW2hpc3RvcnktZXhhbXBsZXNdXQotRXhhbXBsZXMKLS0tLS0tLS0tCis9PT0gRXhhbXBsZXMKIAogW1tjb3VudGluZy1jb21taXRzLW9uLWEtYnJhbmNoXV0KLUNvdW50aW5nIHRoZSBudW1iZXIgb2YgY29tbWl0cyBvbiBhIGJyYW5jaAotfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IENvdW50aW5nIHRoZSBudW1iZXIgb2YgY29tbWl0cyBvbiBhIGJyYW5jaAogCiBTdXBwb3NlIHlvdSB3YW50IHRvIGtub3cgaG93IG1hbnkgY29tbWl0cyB5b3UndmUgbWFkZSBvbiBgbXlicmFuY2hgCiBzaW5jZSBpdCBkaXZlcmdlZCBmcm9tIGBvcmlnaW5gOgpAQCAtNzY1LDggKzc0Miw3IEBACiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIFtbY2hlY2tpbmctZm9yLWVxdWFsLWJyYW5jaGVzXV0KLUNoZWNrIHdoZXRoZXIgdHdvIGJyYW5jaGVzIHBvaW50IGF0IHRoZSBzYW1lIGhpc3RvcnkKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKz09PT0gQ2hlY2sgd2hldGhlciB0d28gYnJhbmNoZXMgcG9pbnQgYXQgdGhlIHNhbWUgaGlzdG9yeQogCiBTdXBwb3NlIHlvdSB3YW50IHRvIGNoZWNrIHdoZXRoZXIgdHdvIGJyYW5jaGVzIHBvaW50IGF0IHRoZSBzYW1lIHBvaW50CiBpbiBoaXN0b3J5LgpAQCAtNzk4LDggKzc3NCw3IEBACiB3aWxsIHJldHVybiBubyBjb21taXRzIHdoZW4gdGhlIHR3byBicmFuY2hlcyBhcmUgZXF1YWwuCiAKIFtbZmluZGluZy10YWdnZWQtZGVzY2VuZGFudHNdXQotRmluZCBmaXJzdCB0YWdnZWQgdmVyc2lvbiBpbmNsdWRpbmcgYSBnaXZlbiBmaXgKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IEZpbmQgZmlyc3QgdGFnZ2VkIHZlcnNpb24gaW5jbHVkaW5nIGEgZ2l2ZW4gZml4CiAKIFN1cHBvc2UgeW91IGtub3cgdGhhdCB0aGUgY29tbWl0IGUwNWRiMGZkIGZpeGVkIGEgY2VydGFpbiBwcm9ibGVtLgogWW91J2QgbGlrZSB0byBmaW5kIHRoZSBlYXJsaWVzdCB0YWdnZWQgcmVsZWFzZSB0aGF0IGNvbnRhaW5zIHRoYXQKQEAgLTg4Myw4ICs4NTgsNyBAQAogYW5kIGZyb20gdjEuNS4wLXJjMiwgYW5kIG5vdCBmcm9tIHYxLjUuMC1yYzAuCiAKIFtbc2hvd2luZy1jb21taXRzLXVuaXF1ZS10by1hLWJyYW5jaF1dCi1TaG93aW5nIGNvbW1pdHMgdW5pcXVlIHRvIGEgZ2l2ZW4gYnJhbmNoCi1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IFNob3dpbmcgY29tbWl0cyB1bmlxdWUgdG8gYSBnaXZlbiBicmFuY2gKIAogU3VwcG9zZSB5b3Ugd291bGQgbGlrZSB0byBzZWUgYWxsIHRoZSBjb21taXRzIHJlYWNoYWJsZSBmcm9tIHRoZSBicmFuY2gKIGhlYWQgbmFtZWQgYG1hc3RlcmAgYnV0IG5vdCBmcm9tIGFueSBvdGhlciBoZWFkIGluIHlvdXIgcmVwb3NpdG9yeS4KQEAgLTkzMSw4ICs5MDUsNyBAQAogc3ludGF4IHN1Y2ggYXMgYC0tbm90YC4pCiAKIFtbbWFraW5nLWEtcmVsZWFzZV1dCi1DcmVhdGluZyBhIGNoYW5nZWxvZyBhbmQgdGFyYmFsbCBmb3IgYSBzb2Z0d2FyZSByZWxlYXNlCi1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IENyZWF0aW5nIGEgY2hhbmdlbG9nIGFuZCB0YXJiYWxsIGZvciBhIHNvZnR3YXJlIHJlbGVhc2UKIAogVGhlIGxpbmtnaXQ6Z2l0LWFyY2hpdmVbMV0gY29tbWFuZCBjYW4gY3JlYXRlIGEgdGFyIG9yIHppcCBhcmNoaXZlIGZyb20KIGFueSB2ZXJzaW9uIG9mIGEgcHJvamVjdDsgZm9yIGV4YW1wbGU6CkBAIC05ODMsOCArOTU2LDcgQEAKIHRoZXkgbG9vayBPSy4KIAogW1tGaW5kaW5nLWNvbW1pdHMtV2l0aC1naXZlbi1Db250ZW50XV0KLUZpbmRpbmcgY29tbWl0cyByZWZlcmVuY2luZyBhIGZpbGUgd2l0aCBnaXZlbiBjb250ZW50Ci1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorPT09PSBGaW5kaW5nIGNvbW1pdHMgcmVmZXJlbmNpbmcgYSBmaWxlIHdpdGggZ2l2ZW4gY29udGVudAogCiBTb21lYm9keSBoYW5kcyB5b3UgYSBjb3B5IG9mIGEgZmlsZSwgYW5kIGFza3Mgd2hpY2ggY29tbWl0cyBtb2RpZmllZCBhCiBmaWxlIHN1Y2ggdGhhdCBpdCBjb250YWluZWQgdGhlIGdpdmVuIGNvbnRlbnQgZWl0aGVyIGJlZm9yZSBvciBhZnRlciB0aGUKQEAgLTEwMDAsMTIgKzk3MiwxMCBAQAogbGlua2dpdDpnaXQtaGFzaC1vYmplY3RbMV0gbWFuIHBhZ2VzIG1heSBwcm92ZSBoZWxwZnVsLgogCiBbW0RldmVsb3BpbmctV2l0aC1naXRdXQotRGV2ZWxvcGluZyB3aXRoIEdpdAotPT09PT09PT09PT09PT09PT09PQorPT0gRGV2ZWxvcGluZyB3aXRoIEdpdAogCiBbW3RlbGxpbmctZ2l0LXlvdXItbmFtZV1dCi1UZWxsaW5nIEdpdCB5b3VyIG5hbWUKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IFRlbGxpbmcgR2l0IHlvdXIgbmFtZQogCiBCZWZvcmUgY3JlYXRpbmcgYW55IGNvbW1pdHMsIHlvdSBzaG91bGQgaW50cm9kdWNlIHlvdXJzZWxmIHRvIEdpdC4KIFRoZSBlYXNpZXN0IHdheSB0byBkbyBzbyBpcyB0byB1c2UgbGlua2dpdDpnaXQtY29uZmlnWzFdOgpAQCAtMTAzMCw4ICsxMDAwLDcgQEAKIAogCiBbW2NyZWF0aW5nLWEtbmV3LXJlcG9zaXRvcnldXQotQ3JlYXRpbmcgYSBuZXcgcmVwb3NpdG9yeQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IENyZWF0aW5nIGEgbmV3IHJlcG9zaXRvcnkKIAogQ3JlYXRpbmcgYSBuZXcgcmVwb3NpdG9yeSBmcm9tIHNjcmF0Y2ggaXMgdmVyeSBlYXN5OgogCkBAIC0xMDUyLDggKzEwMjEsNyBAQAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBbW2hvdy10by1tYWtlLWEtY29tbWl0XV0KLUhvdyB0byBtYWtlIGEgY29tbWl0Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IEhvdyB0byBtYWtlIGEgY29tbWl0CiAKIENyZWF0aW5nIGEgbmV3IGNvbW1pdCB0YWtlcyB0aHJlZSBzdGVwczoKIApAQCAtMTE0OCw4ICsxMTE2LDcgQEAKIGNob29zaW5nICJTdGFnZSBIdW5rIEZvciBDb21taXQiKS4KIAogW1tjcmVhdGluZy1nb29kLWNvbW1pdC1tZXNzYWdlc11dCi1DcmVhdGluZyBnb29kIGNvbW1pdCBtZXNzYWdlcwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBDcmVhdGluZyBnb29kIGNvbW1pdCBtZXNzYWdlcwogCiBUaG91Z2ggbm90IHJlcXVpcmVkLCBpdCdzIGEgZ29vZCBpZGVhIHRvIGJlZ2luIHRoZSBjb21taXQgbWVzc2FnZQogd2l0aCBhIHNpbmdsZSBzaG9ydCAobGVzcyB0aGFuIDUwIGNoYXJhY3RlcikgbGluZSBzdW1tYXJpemluZyB0aGUKQEAgLTExNjIsOCArMTEyOSw3IEBACiAKIAogW1tpZ25vcmluZy1maWxlc11dCi1JZ25vcmluZyBmaWxlcwotLS0tLS0tLS0tLS0tLS0KKz09PSBJZ25vcmluZyBmaWxlcwogCiBBIHByb2plY3Qgd2lsbCBvZnRlbiBnZW5lcmF0ZSBmaWxlcyB0aGF0IHlvdSBkbyAnbm90JyB3YW50IHRvIHRyYWNrIHdpdGggR2l0LgogVGhpcyB0eXBpY2FsbHkgaW5jbHVkZXMgZmlsZXMgZ2VuZXJhdGVkIGJ5IGEgYnVpbGQgcHJvY2VzcyBvciB0ZW1wb3JhcnkKQEAgLTEyMDUsOCArMTE3MSw3IEBACiBjb21tYW5kIGxpbmUuICBTZWUgbGlua2dpdDpnaXRpZ25vcmVbNV0gZm9yIHRoZSBkZXRhaWxzLgogCiBbW2hvdy10by1tZXJnZV1dCi1Ib3cgdG8gbWVyZ2UKLS0tLS0tLS0tLS0tLQorPT09IEhvdyB0byBtZXJnZQogCiBZb3UgY2FuIHJlam9pbiB0d28gZGl2ZXJnaW5nIGJyYW5jaGVzIG9mIGRldmVsb3BtZW50IHVzaW5nCiBsaW5rZ2l0OmdpdC1tZXJnZVsxXToKQEAgLTEyNTQsOCArMTIxOSw3IEBACiBvbmUgdG8gdGhlIHRvcCBvZiB0aGUgb3RoZXIgYnJhbmNoLgogCiBbW3Jlc29sdmluZy1hLW1lcmdlXV0KLVJlc29sdmluZyBhIG1lcmdlCi0tLS0tLS0tLS0tLS0tLS0tLQorPT09IFJlc29sdmluZyBhIG1lcmdlCiAKIFdoZW4gYSBtZXJnZSBpc24ndCByZXNvbHZlZCBhdXRvbWF0aWNhbGx5LCBHaXQgbGVhdmVzIHRoZSBpbmRleCBhbmQKIHRoZSB3b3JraW5nIHRyZWUgaW4gYSBzcGVjaWFsIHN0YXRlIHRoYXQgZ2l2ZXMgeW91IGFsbCB0aGUKQEAgLTEyOTcsOCArMTI2MSw3IEBACiBhbHNvIHByb3ZpZGVzIG1vcmUgaW5mb3JtYXRpb24gdG8gaGVscCByZXNvbHZlIGNvbmZsaWN0czoKIAogW1tjb25mbGljdC1yZXNvbHV0aW9uXV0KLUdldHRpbmcgY29uZmxpY3QtcmVzb2x1dGlvbiBoZWxwIGR1cmluZyBhIG1lcmdlCi1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorPT09PSBHZXR0aW5nIGNvbmZsaWN0LXJlc29sdXRpb24gaGVscCBkdXJpbmcgYSBtZXJnZQogCiBBbGwgb2YgdGhlIGNoYW5nZXMgdGhhdCBHaXQgd2FzIGFibGUgdG8gbWVyZ2UgYXV0b21hdGljYWxseSBhcmUKIGFscmVhZHkgYWRkZWQgdG8gdGhlIGluZGV4IGZpbGUsIHNvIGxpbmtnaXQ6Z2l0LWRpZmZbMV0gc2hvd3Mgb25seQpAQCAtMTQwMSwxNCArMTM2NCwxMyBAQAogYGdpdCBkaWZmYCB3aWxsIChieSBkZWZhdWx0KSBubyBsb25nZXIgc2hvdyBkaWZmcyBmb3IgdGhhdCBmaWxlLgogCiBbW3VuZG9pbmctYS1tZXJnZV1dCi1VbmRvaW5nIGEgbWVyZ2UKLS0tLS0tLS0tLS0tLS0tLQorPT09IFVuZG9pbmcgYSBtZXJnZQogCiBJZiB5b3UgZ2V0IHN0dWNrIGFuZCBkZWNpZGUgdG8ganVzdCBnaXZlIHVwIGFuZCB0aHJvdyB0aGUgd2hvbGUgbWVzcwogYXdheSwgeW91IGNhbiBhbHdheXMgcmV0dXJuIHRvIHRoZSBwcmUtbWVyZ2Ugc3RhdGUgd2l0aAogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0kIGdpdCByZXNldCAtLWhhcmQgSEVBRAorJCBnaXQgbWVyZ2UgLS1hYm9ydAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBPciwgaWYgeW91J3ZlIGFscmVhZHkgY29tbWl0dGVkIHRoZSBtZXJnZSB0aGF0IHlvdSB3YW50IHRvIHRocm93IGF3YXksCkBAIC0xNDIzLDggKzEzODUsNyBAQAogZnVydGhlciBtZXJnZXMuCiAKIFtbZmFzdC1mb3J3YXJkc11dCi1GYXN0LWZvcndhcmQgbWVyZ2VzCi0tLS0tLS0tLS0tLS0tLS0tLS0tCis9PT0gRmFzdC1mb3J3YXJkIG1lcmdlcwogCiBUaGVyZSBpcyBvbmUgc3BlY2lhbCBjYXNlIG5vdCBtZW50aW9uZWQgYWJvdmUsIHdoaWNoIGlzIHRyZWF0ZWQKIGRpZmZlcmVudGx5LiAgTm9ybWFsbHksIGEgbWVyZ2UgcmVzdWx0cyBpbiBhIG1lcmdlIGNvbW1pdCwgd2l0aCB0d28KQEAgLTE0MzgsMTUgKzEzOTksMTQgQEAKIGNyZWF0ZWQuCiAKIFtbZml4aW5nLW1pc3Rha2VzXV0KLUZpeGluZyBtaXN0YWtlcwotLS0tLS0tLS0tLS0tLS0tCis9PT0gRml4aW5nIG1pc3Rha2VzCiAKIElmIHlvdSd2ZSBtZXNzZWQgdXAgdGhlIHdvcmtpbmcgdHJlZSwgYnV0IGhhdmVuJ3QgeWV0IGNvbW1pdHRlZCB5b3VyCiBtaXN0YWtlLCB5b3UgY2FuIHJldHVybiB0aGUgZW50aXJlIHdvcmtpbmcgdHJlZSB0byB0aGUgbGFzdCBjb21taXR0ZWQKIHN0YXRlIHdpdGgKIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotJCBnaXQgcmVzZXQgLS1oYXJkIEhFQUQKKyQgZ2l0IHJlc3RvcmUgLS1zdGFnZWQgLS13b3JrdHJlZSA6LwogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBJZiB5b3UgbWFrZSBhIGNvbW1pdCB0aGF0IHlvdSBsYXRlciB3aXNoIHlvdSBoYWRuJ3QsIHRoZXJlIGFyZSB0d28KQEAgLTE0NjMsOCArMTQyMyw3IEBACiAJYSBicmFuY2ggdGhhdCBoYXMgaGFkIGl0cyBoaXN0b3J5IGNoYW5nZWQuCiAKIFtbcmV2ZXJ0aW5nLWEtY29tbWl0XV0KLUZpeGluZyBhIG1pc3Rha2Ugd2l0aCBhIG5ldyBjb21taXQKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKz09PT0gRml4aW5nIGEgbWlzdGFrZSB3aXRoIGEgbmV3IGNvbW1pdAogCiBDcmVhdGluZyBhIG5ldyBjb21taXQgdGhhdCByZXZlcnRzIGFuIGVhcmxpZXIgY2hhbmdlIGlzIHZlcnkgZWFzeTsKIGp1c3QgcGFzcyB0aGUgbGlua2dpdDpnaXQtcmV2ZXJ0WzFdIGNvbW1hbmQgYSByZWZlcmVuY2UgdG8gdGhlIGJhZApAQCAtMTQ5MCw4ICsxNDQ5LDcgQEAKIHJlc29sdmluZyBhIG1lcmdlPj4uCiAKIFtbZml4aW5nLWEtbWlzdGFrZS1ieS1yZXdyaXRpbmctaGlzdG9yeV1dCi1GaXhpbmcgYSBtaXN0YWtlIGJ5IHJld3JpdGluZyBoaXN0b3J5Ci1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IEZpeGluZyBhIG1pc3Rha2UgYnkgcmV3cml0aW5nIGhpc3RvcnkKIAogSWYgdGhlIHByb2JsZW1hdGljIGNvbW1pdCBpcyB0aGUgbW9zdCByZWNlbnQgY29tbWl0LCBhbmQgeW91IGhhdmUgbm90CiB5ZXQgbWFkZSB0aGF0IGNvbW1pdCBwdWJsaWMsIHRoZW4geW91IG1heSBqdXN0CkBAIC0xNTE4LDE3ICsxNDc2LDE0IEBACiA8PGNsZWFuaW5nLXVwLWhpc3RvcnksYW5vdGhlciBjaGFwdGVyPj4uCiAKIFtbY2hlY2tvdXQtb2YtcGF0aF1dCi1DaGVja2luZyBvdXQgYW4gb2xkIHZlcnNpb24gb2YgYSBmaWxlCi1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IENoZWNraW5nIG91dCBhbiBvbGQgdmVyc2lvbiBvZiBhIGZpbGUKIAogSW4gdGhlIHByb2Nlc3Mgb2YgdW5kb2luZyBhIHByZXZpb3VzIGJhZCBjaGFuZ2UsIHlvdSBtYXkgZmluZCBpdAogdXNlZnVsIHRvIGNoZWNrIG91dCBhbiBvbGRlciB2ZXJzaW9uIG9mIGEgcGFydGljdWxhciBmaWxlIHVzaW5nCi1saW5rZ2l0OmdpdC1jaGVja291dFsxXS4gIFdlJ3ZlIHVzZWQgYGdpdCBjaGVja291dGAgYmVmb3JlIHRvIHN3aXRjaAotYnJhbmNoZXMsIGJ1dCBpdCBoYXMgcXVpdGUgZGlmZmVyZW50IGJlaGF2aW9yIGlmIGl0IGlzIGdpdmVuIGEgcGF0aAotbmFtZTogdGhlIGNvbW1hbmQKK2xpbmtnaXQ6Z2l0LXJlc3RvcmVbMV0uIFRoZSBjb21tYW5kCiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSQgZ2l0IGNoZWNrb3V0IEhFQUReIHBhdGgvdG8vZmlsZQorJCBnaXQgcmVzdG9yZSAtLXNvdXJjZT1IRUFEXiBwYXRoL3RvL2ZpbGUKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogcmVwbGFjZXMgcGF0aC90by9maWxlIGJ5IHRoZSBjb250ZW50cyBpdCBoYWQgaW4gdGhlIGNvbW1pdCBIRUFEXiwgYW5kCkBAIC0xNTQ1LDggKzE1MDAsNyBAQAogd2hpY2ggd2lsbCBkaXNwbGF5IHRoZSBnaXZlbiB2ZXJzaW9uIG9mIHRoZSBmaWxlLgogCiBbW2ludGVycnVwdGVkLXdvcmtdXQotVGVtcG9yYXJpbHkgc2V0dGluZyBhc2lkZSB3b3JrIGluIHByb2dyZXNzCi1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKz09PT0gVGVtcG9yYXJpbHkgc2V0dGluZyBhc2lkZSB3b3JrIGluIHByb2dyZXNzCiAKIFdoaWxlIHlvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiB3b3JraW5nIG9uIHNvbWV0aGluZyBjb21wbGljYXRlZCwgeW91CiBmaW5kIGFuIHVucmVsYXRlZCBidXQgb2J2aW91cyBhbmQgdHJpdmlhbCBidWcuICBZb3Ugd291bGQgbGlrZSB0byBmaXggaXQKQEAgLTE1NzcsOCArMTUzMSw3IEBACiAKIAogW1tlbnN1cmluZy1nb29kLXBlcmZvcm1hbmNlXV0KLUVuc3VyaW5nIGdvb2QgcGVyZm9ybWFuY2UKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBFbnN1cmluZyBnb29kIHBlcmZvcm1hbmNlCiAKIE9uIGxhcmdlIHJlcG9zaXRvcmllcywgR2l0IGRlcGVuZHMgb24gY29tcHJlc3Npb24gdG8ga2VlcCB0aGUgaGlzdG9yeQogaW5mb3JtYXRpb24gZnJvbSB0YWtpbmcgdXAgdG9vIG11Y2ggc3BhY2Ugb24gZGlzayBvciBpbiBtZW1vcnkuICBTb21lCkBAIC0xNTg5LDEyICsxNTQyLDEwIEBACiAKIAogW1tlbnN1cmluZy1yZWxpYWJpbGl0eV1dCi1FbnN1cmluZyByZWxpYWJpbGl0eQotLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBFbnN1cmluZyByZWxpYWJpbGl0eQogCiBbW2NoZWNraW5nLWZvci1jb3JydXB0aW9uXV0KLUNoZWNraW5nIHRoZSByZXBvc2l0b3J5IGZvciBjb3JydXB0aW9uCi1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorPT09PSBDaGVja2luZyB0aGUgcmVwb3NpdG9yeSBmb3IgY29ycnVwdGlvbgogCiBUaGUgbGlua2dpdDpnaXQtZnNja1sxXSBjb21tYW5kIHJ1bnMgYSBudW1iZXIgb2Ygc2VsZi1jb25zaXN0ZW5jeSBjaGVja3MKIG9uIHRoZSByZXBvc2l0b3J5LCBhbmQgcmVwb3J0cyBvbiBhbnkgcHJvYmxlbXMuICBUaGlzIG1heSB0YWtlIHNvbWUKQEAgLTE2MjAsMTIgKzE1NzEsMTAgQEAKIHZpZXcgcmVhbCBlcnJvcnMuCiAKIFtbcmVjb3ZlcmluZy1sb3N0LWNoYW5nZXNdXQotUmVjb3ZlcmluZyBsb3N0IGNoYW5nZXMKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IFJlY292ZXJpbmcgbG9zdCBjaGFuZ2VzCiAKIFtbcmVmbG9nc11dCi1SZWZsb2dzCi1eXl5eXl5eCis9PT09PSBSZWZsb2dzCiAKIFNheSB5b3UgbW9kaWZ5IGEgYnJhbmNoIHdpdGggPDxmaXhpbmctbWlzdGFrZXMsYGdpdCByZXNldCAtLWhhcmRgPj4sCiBhbmQgdGhlbiByZWFsaXplIHRoYXQgdGhlIGJyYW5jaCB3YXMgdGhlIG9ubHkgcmVmZXJlbmNlIHlvdSBoYWQgdG8KQEAgLTE2NzIsOCArMTYyMSw3IEBACiBob3cgdGhlIGJyYW5jaGVzIGluIHlvdXIgbG9jYWwgcmVwb3NpdG9yeSBoYXZlIGNoYW5nZWQgb3ZlciB0aW1lLgogCiBbW2RhbmdsaW5nLW9iamVjdC1yZWNvdmVyeV1dCi1FeGFtaW5pbmcgZGFuZ2xpbmcgb2JqZWN0cwotXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl4KKz09PT09IEV4YW1pbmluZyBkYW5nbGluZyBvYmplY3RzCiAKIEluIHNvbWUgc2l0dWF0aW9ucyB0aGUgcmVmbG9nIG1heSBub3QgYmUgYWJsZSB0byBzYXZlIHlvdS4gIEZvciBleGFtcGxlLAogc3VwcG9zZSB5b3UgZGVsZXRlIGEgYnJhbmNoLCB0aGVuIHJlYWxpemUgeW91IG5lZWQgdGhlIGhpc3RvcnkgaXQKQEAgLTE3MTcsMTIgKzE2NjUsMTAgQEAKIAogCiBbW3NoYXJpbmctZGV2ZWxvcG1lbnRdXQotU2hhcmluZyBkZXZlbG9wbWVudCB3aXRoIG90aGVycwotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorPT0gU2hhcmluZyBkZXZlbG9wbWVudCB3aXRoIG90aGVycwogCiBbW2dldHRpbmctdXBkYXRlcy1XaXRoLWdpdC1wdWxsXV0KLUdldHRpbmcgdXBkYXRlcyB3aXRoIGdpdCBwdWxsCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IEdldHRpbmcgdXBkYXRlcyB3aXRoIGdpdCBwdWxsCiAKIEFmdGVyIHlvdSBjbG9uZSBhIHJlcG9zaXRvcnkgYW5kIGNvbW1pdCBhIGZldyBjaGFuZ2VzIG9mIHlvdXIgb3duLCB5b3UKIG1heSB3aXNoIHRvIGNoZWNrIHRoZSBvcmlnaW5hbCByZXBvc2l0b3J5IGZvciB1cGRhdGVzIGFuZCBtZXJnZSB0aGVtCkBAIC0xNzg1LDggKzE3MzEsNyBAQAogYXJlIHJvdWdobHkgZXF1aXZhbGVudC4KIAogW1tzdWJtaXR0aW5nLXBhdGNoZXNdXQotU3VibWl0dGluZyBwYXRjaGVzIHRvIGEgcHJvamVjdAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IFN1Ym1pdHRpbmcgcGF0Y2hlcyB0byBhIHByb2plY3QKIAogSWYgeW91IGp1c3QgaGF2ZSBhIGZldyBjaGFuZ2VzLCB0aGUgc2ltcGxlc3Qgd2F5IHRvIHN1Ym1pdCB0aGVtIG1heQoganVzdCBiZSB0byBzZW5kIHRoZW0gYXMgcGF0Y2hlcyBpbiBlbWFpbDoKQEAgLTE4MTQsOCArMTc1OSw3IEBACiB0aGVpciByZXF1aXJlbWVudHMgZm9yIHN1Ym1pdHRpbmcgcGF0Y2hlcy4KIAogW1tpbXBvcnRpbmctcGF0Y2hlc11dCi1JbXBvcnRpbmcgcGF0Y2hlcyB0byBhIHByb2plY3QKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IEltcG9ydGluZyBwYXRjaGVzIHRvIGEgcHJvamVjdAogCiBHaXQgYWxzbyBwcm92aWRlcyBhIHRvb2wgY2FsbGVkIGxpbmtnaXQ6Z2l0LWFtWzFdIChhbSBzdGFuZHMgZm9yCiAiYXBwbHkgbWFpbGJveCIpLCBmb3IgaW1wb3J0aW5nIHN1Y2ggYW4gZW1haWxlZCBzZXJpZXMgb2YgcGF0Y2hlcy4KQEAgLTE4NDcsOCArMTc5MSw3IEBACiB0YWtlbiBmcm9tIHRoZSBtZXNzYWdlIGNvbnRhaW5pbmcgZWFjaCBwYXRjaC4KIAogW1twdWJsaWMtcmVwb3NpdG9yaWVzXV0KLVB1YmxpYyBHaXQgcmVwb3NpdG9yaWVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IFB1YmxpYyBHaXQgcmVwb3NpdG9yaWVzCiAKIEFub3RoZXIgd2F5IHRvIHN1Ym1pdCBjaGFuZ2VzIHRvIGEgcHJvamVjdCBpcyB0byB0ZWxsIHRoZSBtYWludGFpbmVyCiBvZiB0aGF0IHByb2plY3QgdG8gcHVsbCB0aGUgY2hhbmdlcyBmcm9tIHlvdXIgcmVwb3NpdG9yeSB1c2luZwpAQCAtMTg4OCwyMSArMTgzMSwyMiBAQAogd2hlcmUgdGhlcmUgaXMgb25lIG90aGVyIGRldmVsb3BlciB3aXRoIGEgcHVibGljIHJlcG9zaXRvcnksIGxvb2tzCiBsaWtlIHRoaXM6CiAKLSAgICAgICAgICAgICAgICAgICAgICAgIHlvdSBwdXNoCi0gIHlvdXIgcGVyc29uYWwgcmVwbyAtLS0tLS0tLS0tLS0tLS0tLS0+IHlvdXIgcHVibGljIHJlcG8KLQleICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLQl8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLQl8IHlvdSBwdWxsICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdGhleSBwdWxsCi0JfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Ci0JfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Ci0gICAgICAgIHwgICAgICAgICAgICAgICB0aGV5IHB1c2ggICAgICAgICAgICAgVgotICB0aGVpciBwdWJsaWMgcmVwbyA8LS0tLS0tLS0tLS0tLS0tLS0tLSB0aGVpciByZXBvCisuLi4uCisJCSAgICAgIHlvdSBwdXNoCit5b3VyIHBlcnNvbmFsIHJlcG8gLS0tLS0tLS0tLS0tLS0tLS0tPiB5b3VyIHB1YmxpYyByZXBvCisgICAgICBeICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICAgfCB5b3UgcHVsbCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHRoZXkgcHVsbAorICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgIHwgICAgICAgICAgICAgICB0aGV5IHB1c2ggICAgICAgICAgICAgVgordGhlaXIgcHVibGljIHJlcG8gPC0tLS0tLS0tLS0tLS0tLS0tLS0gdGhlaXIgcmVwbworLi4uLgogCiBXZSBleHBsYWluIGhvdyB0byBkbyB0aGlzIGluIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnMuCiAKIFtbc2V0dGluZy11cC1hLXB1YmxpYy1yZXBvc2l0b3J5XV0KLVNldHRpbmcgdXAgYSBwdWJsaWMgcmVwb3NpdG9yeQotfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IFNldHRpbmcgdXAgYSBwdWJsaWMgcmVwb3NpdG9yeQogCiBBc3N1bWUgeW91ciBwZXJzb25hbCByZXBvc2l0b3J5IGlzIGluIHRoZSBkaXJlY3RvcnkgYH4vcHJvamAuICBXZQogZmlyc3QgY3JlYXRlIGEgbmV3IGNsb25lIG9mIHRoZSByZXBvc2l0b3J5IGFuZCB0ZWxsIGBnaXQgZGFlbW9uYCB0aGF0IGl0CkBAIC0xOTIyLDggKzE4NjYsNyBAQAogY29udmVuaWVudC4KIAogW1tleHBvcnRpbmctdmlhLWdpdF1dCi1FeHBvcnRpbmcgYSBHaXQgcmVwb3NpdG9yeSB2aWEgdGhlIEdpdCBwcm90b2NvbAotfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKz09PT0gRXhwb3J0aW5nIGEgR2l0IHJlcG9zaXRvcnkgdmlhIHRoZSBHaXQgcHJvdG9jb2wKIAogVGhpcyBpcyB0aGUgcHJlZmVycmVkIG1ldGhvZC4KIApAQCAtMTk0NCw4ICsxODg3LDcgQEAKIGV4YW1wbGVzIHNlY3Rpb24uKQogCiBbW2V4cG9ydGluZy12aWEtaHR0cF1dCi1FeHBvcnRpbmcgYSBnaXQgcmVwb3NpdG9yeSB2aWEgSFRUUAotfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKz09PT0gRXhwb3J0aW5nIGEgZ2l0IHJlcG9zaXRvcnkgdmlhIEhUVFAKIAogVGhlIEdpdCBwcm90b2NvbCBnaXZlcyBiZXR0ZXIgcGVyZm9ybWFuY2UgYW5kIHJlbGlhYmlsaXR5LCBidXQgb24gYQogaG9zdCB3aXRoIGEgd2ViIHNlcnZlciBzZXQgdXAsIEhUVFAgZXhwb3J0cyBtYXkgYmUgc2ltcGxlciB0byBzZXQgdXAuCkBAIC0xOTc3LDggKzE5MTksNyBAQAogYWxsb3dzIHB1c2hpbmcgb3ZlciBIVFRQLikKIAogW1twdXNoaW5nLWNoYW5nZXMtdG8tYS1wdWJsaWMtcmVwb3NpdG9yeV1dCi1QdXNoaW5nIGNoYW5nZXMgdG8gYSBwdWJsaWMgcmVwb3NpdG9yeQotfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKz09PT0gUHVzaGluZyBjaGFuZ2VzIHRvIGEgcHVibGljIHJlcG9zaXRvcnkKIAogTm90ZSB0aGF0IHRoZSB0d28gdGVjaG5pcXVlcyBvdXRsaW5lZCBhYm92ZSAoZXhwb3J0aW5nIHZpYQogPDxleHBvcnRpbmctdmlhLWh0dHAsaHR0cD4+IG9yIDw8ZXhwb3J0aW5nLXZpYS1naXQsZ2l0Pj4pIGFsbG93IG90aGVyCkBAIC0yMDM3LDggKzE5NzgsNyBAQAogbGlua2dpdDpnaXQtY29uZmlnWzFdIGZvciBkZXRhaWxzLgogCiBbW2ZvcmNpbmctcHVzaF1dCi1XaGF0IHRvIGRvIHdoZW4gYSBwdXNoIGZhaWxzCi1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IFdoYXQgdG8gZG8gd2hlbiBhIHB1c2ggZmFpbHMKIAogSWYgYSBwdXNoIHdvdWxkIG5vdCByZXN1bHQgaW4gYSA8PGZhc3QtZm9yd2FyZHMsZmFzdC1mb3J3YXJkPj4gb2YgdGhlCiByZW1vdGUgYnJhbmNoLCB0aGVuIGl0IHdpbGwgZmFpbCB3aXRoIGFuIGVycm9yIGxpa2U6CkBAIC0yMDkyLDggKzIwMzIsNyBAQAogbGlua2dpdDpnaXRjdnMtbWlncmF0aW9uWzddIGZvciBtb3JlLgogCiBbW3NldHRpbmctdXAtYS1zaGFyZWQtcmVwb3NpdG9yeV1dCi1TZXR0aW5nIHVwIGEgc2hhcmVkIHJlcG9zaXRvcnkKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorPT09PSBTZXR0aW5nIHVwIGEgc2hhcmVkIHJlcG9zaXRvcnkKIAogQW5vdGhlciB3YXkgdG8gY29sbGFib3JhdGUgaXMgYnkgdXNpbmcgYSBtb2RlbCBzaW1pbGFyIHRvIHRoYXQKIGNvbW1vbmx5IHVzZWQgaW4gQ1ZTLCB3aGVyZSBzZXZlcmFsIGRldmVsb3BlcnMgd2l0aCBzcGVjaWFsIHJpZ2h0cwpAQCAtMjEyMyw4ICsyMDYyLDcgQEAKIAkgICJvdXQiLgogCiBbW3NldHRpbmctdXAtZ2l0d2ViXV0KLUFsbG93aW5nIHdlYiBicm93c2luZyBvZiBhIHJlcG9zaXRvcnkKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKz09PT0gQWxsb3dpbmcgd2ViIGJyb3dzaW5nIG9mIGEgcmVwb3NpdG9yeQogCiBUaGUgZ2l0d2ViIGNnaSBzY3JpcHQgcHJvdmlkZXMgdXNlcnMgYW4gZWFzeSB3YXkgdG8gYnJvd3NlIHlvdXIKIHByb2plY3QncyByZXZpc2lvbnMsIGZpbGUgY29udGVudHMgYW5kIGxvZ3Mgd2l0aG91dCBoYXZpbmcgdG8gaW5zdGFsbApAQCAtMjE0MCw4ICsyMDc4LDcgQEAKIGluc3RhbGxhdGlvbiB3aXRoIGEgQ0dJIG9yIFBlcmwgY2FwYWJsZSBzZXJ2ZXIuCiAKIFtbaG93LXRvLWdldC1hLWdpdC1yZXBvc2l0b3J5LXdpdGgtbWluaW1hbC1oaXN0b3J5XV0KLUhvdyB0byBnZXQgYSBHaXQgcmVwb3NpdG9yeSB3aXRoIG1pbmltYWwgaGlzdG9yeQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCis9PT0gSG93IHRvIGdldCBhIEdpdCByZXBvc2l0b3J5IHdpdGggbWluaW1hbCBoaXN0b3J5CiAKIEEgPDxkZWZfc2hhbGxvd19jbG9uZSxzaGFsbG93IGNsb25lPj4sIHdpdGggaXRzIHRydW5jYXRlZAogaGlzdG9yeSwgaXMgdXNlZnVsIHdoZW4gb25lIGlzIGludGVyZXN0ZWQgb25seSBpbiByZWNlbnQgaGlzdG9yeQpAQCAtMjE2MCwxMiArMjA5NywxMCBAQAogYSByZXBvc2l0b3J5IHVuc3VpdGFibGUgdG8gYmUgdXNlZCBpbiBtZXJnZSBiYXNlZCB3b3JrZmxvd3MuCiAKIFtbc2hhcmluZy1kZXZlbG9wbWVudC1leGFtcGxlc11dCi1FeGFtcGxlcwotLS0tLS0tLS0KKz09PSBFeGFtcGxlcwogCiBbW21haW50YWluaW5nLXRvcGljLWJyYW5jaGVzXV0KLU1haW50YWluaW5nIHRvcGljIGJyYW5jaGVzIGZvciBhIExpbnV4IHN1YnN5c3RlbSBtYWludGFpbmVyCi1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorPT09PSBNYWludGFpbmluZyB0b3BpYyBicmFuY2hlcyBmb3IgYSBMaW51eCBzdWJzeXN0ZW0gbWFpbnRhaW5lcgogCiBUaGlzIGRlc2NyaWJlcyBob3cgVG9ueSBMdWNrIHVzZXMgR2l0IGluIGhpcyByb2xlIGFzIG1haW50YWluZXIgb2YgdGhlCiBJQTY0IGFyY2hpdGVjdHVyZSBmb3IgdGhlIExpbnV4IGtlcm5lbC4KQEAgLTIyMTEsOCArMjE0Niw4IEBACiBUaGVzZSBjYW4gYmUgZWFzaWx5IGtlcHQgdXAgdG8gZGF0ZSB1c2luZyBsaW5rZ2l0OmdpdC1wdWxsWzFdLgogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0kIGdpdCBjaGVja291dCB0ZXN0ICYmIGdpdCBwdWxsCi0kIGdpdCBjaGVja291dCByZWxlYXNlICYmIGdpdCBwdWxsCiskIGdpdCBzd2l0Y2ggdGVzdCAmJiBnaXQgcHVsbAorJCBnaXQgc3dpdGNoIHJlbGVhc2UgJiYgZ2l0IHB1bGwKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogSW1wb3J0YW50IG5vdGUhICBJZiB5b3UgaGF2ZSBhbnkgbG9jYWwgY2hhbmdlcyBpbiB0aGVzZSBicmFuY2hlcywgdGhlbgpAQCAtMjI2NCw3ICsyMTk5LDcgQEAKIDIpIGhlbHAgZnV0dXJlIGJ1ZyBodW50ZXJzIHRoYXQgdXNlIGBnaXQgYmlzZWN0YCB0byBmaW5kIHByb2JsZW1zCiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSQgZ2l0IGNoZWNrb3V0IC1iIHNwZWVkLXVwLXNwaW5sb2NrcyB2Mi42LjM1CiskIGdpdCBzd2l0Y2ggLWMgc3BlZWQtdXAtc3BpbmxvY2tzIHYyLjYuMzUKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogTm93IHlvdSBhcHBseSB0aGUgcGF0Y2goZXMpLCBydW4gc29tZSB0ZXN0cywgYW5kIGNvbW1pdCB0aGUgY2hhbmdlKHMpLiAgSWYKQEAgLTIyNzksNyArMjIxNCw3IEBACiAidGVzdCIgYnJhbmNoIGluIHByZXBhcmF0aW9uIHRvIG1ha2UgaXQgcHVibGljOgogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0kIGdpdCBjaGVja291dCB0ZXN0ICYmIGdpdCBtZXJnZSBzcGVlZC11cC1zcGlubG9ja3MKKyQgZ2l0IHN3aXRjaCB0ZXN0ICYmIGdpdCBtZXJnZSBzcGVlZC11cC1zcGlubG9ja3MKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogSXQgaXMgdW5saWtlbHkgdGhhdCB5b3Ugd291bGQgaGF2ZSBhbnkgY29uZmxpY3RzIGhlcmUgLi4uIGJ1dCB5b3UgbWlnaHQgaWYgeW91CkBAIC0yMjkxLDcgKzIyMjYsNyBAQAogbWVhbnMgdGhhdCB0aGUgcGF0Y2hlcyBjYW4gYmUgbW92ZWQgaW50byB0aGUgYHJlbGVhc2VgIHRyZWUgaW4gYW55IG9yZGVyLgogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0kIGdpdCBjaGVja291dCByZWxlYXNlICYmIGdpdCBtZXJnZSBzcGVlZC11cC1zcGlubG9ja3MKKyQgZ2l0IHN3aXRjaCByZWxlYXNlICYmIGdpdCBtZXJnZSBzcGVlZC11cC1zcGlubG9ja3MKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogQWZ0ZXIgYSB3aGlsZSwgeW91IHdpbGwgaGF2ZSBhIG51bWJlciBvZiBicmFuY2hlcywgYW5kIGRlc3BpdGUgdGhlCkBAIC0yNDYxLDggKzIzOTYsNyBAQAogCiAKIFtbY2xlYW5pbmctdXAtaGlzdG9yeV1dCi1SZXdyaXRpbmcgaGlzdG9yeSBhbmQgbWFpbnRhaW5pbmcgcGF0Y2ggc2VyaWVzCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cis9PSBSZXdyaXRpbmcgaGlzdG9yeSBhbmQgbWFpbnRhaW5pbmcgcGF0Y2ggc2VyaWVzCiAKIE5vcm1hbGx5IGNvbW1pdHMgYXJlIG9ubHkgYWRkZWQgdG8gYSBwcm9qZWN0LCBuZXZlciB0YWtlbiBhd2F5IG9yCiByZXBsYWNlZC4gIEdpdCBpcyBkZXNpZ25lZCB3aXRoIHRoaXMgYXNzdW1wdGlvbiwgYW5kIHZpb2xhdGluZyBpdCB3aWxsCkBAIC0yNDcyLDggKzI0MDYsNyBAQAogYXNzdW1wdGlvbi4KIAogW1twYXRjaC1zZXJpZXNdXQotQ3JlYXRpbmcgdGhlIHBlcmZlY3QgcGF0Y2ggc2VyaWVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBDcmVhdGluZyB0aGUgcGVyZmVjdCBwYXRjaCBzZXJpZXMKIAogU3VwcG9zZSB5b3UgYXJlIGEgY29udHJpYnV0b3IgdG8gYSBsYXJnZSBwcm9qZWN0LCBhbmQgeW91IHdhbnQgdG8gYWRkIGEKIGNvbXBsaWNhdGVkIGZlYXR1cmUsIGFuZCB0byBwcmVzZW50IGl0IHRvIHRoZSBvdGhlciBkZXZlbG9wZXJzIGluIGEgd2F5CkBAIC0yNTA1LDE0ICsyNDM4LDEzIEBACiB5b3UgYXJlIHJld3JpdGluZyBoaXN0b3J5LgogCiBbW3VzaW5nLWdpdC1yZWJhc2VdXQotS2VlcGluZyBhIHBhdGNoIHNlcmllcyB1cCB0byBkYXRlIHVzaW5nIGdpdCByZWJhc2UKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCis9PT0gS2VlcGluZyBhIHBhdGNoIHNlcmllcyB1cCB0byBkYXRlIHVzaW5nIGdpdCByZWJhc2UKIAogU3VwcG9zZSB0aGF0IHlvdSBjcmVhdGUgYSBicmFuY2ggYG15d29ya2Agb24gYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoCiBgb3JpZ2luYCwgYW5kIGNyZWF0ZSBzb21lIGNvbW1pdHMgb24gdG9wIG9mIGl0OgogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0kIGdpdCBjaGVja291dCAtYiBteXdvcmsgb3JpZ2luCiskIGdpdCBzd2l0Y2ggLWMgbXl3b3JrIG9yaWdpbgogJCB2aSBmaWxlLnR4dAogJCBnaXQgY29tbWl0CiAkIHZpIG90aGVyZmlsZS50eHQKQEAgLTI1NTIsNyArMjQ4NCw3IEBACiBsaW5rZ2l0OmdpdC1yZWJhc2VbMV06CiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSQgZ2l0IGNoZWNrb3V0IG15d29yaworJCBnaXQgc3dpdGNoIG15d29yawogJCBnaXQgcmViYXNlIG9yaWdpbgogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCkBAIC0yNTkzLDggKzI1MjUsNyBAQAogPDxyZW9yZGVyaW5nLXBhdGNoLXNlcmllcz4+IGZvciBhbHRlcm5hdGl2ZXMuCiAKIFtbcmV3cml0aW5nLW9uZS1jb21taXRdXQotUmV3cml0aW5nIGEgc2luZ2xlIGNvbW1pdAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IFJld3JpdGluZyBhIHNpbmdsZSBjb21taXQKIAogV2Ugc2F3IGluIDw8Zml4aW5nLWEtbWlzdGFrZS1ieS1yZXdyaXRpbmctaGlzdG9yeT4+IHRoYXQgeW91IGNhbiByZXBsYWNlIHRoZQogbW9zdCByZWNlbnQgY29tbWl0IHVzaW5nCkBAIC0yNjEyLDggKzI1NDMsNyBAQAogdXNlIDw8aW50ZXJhY3RpdmUtcmViYXNlLGludGVyYWN0aXZlIHJlYmFzZSdzIGBlZGl0YCBpbnN0cnVjdGlvbj4+LgogCiBbW3Jlb3JkZXJpbmctcGF0Y2gtc2VyaWVzXV0KLVJlb3JkZXJpbmcgb3Igc2VsZWN0aW5nIGZyb20gYSBwYXRjaCBzZXJpZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBSZW9yZGVyaW5nIG9yIHNlbGVjdGluZyBmcm9tIGEgcGF0Y2ggc2VyaWVzCiAKIFNvbWV0aW1lcyB5b3Ugd2FudCB0byBlZGl0IGEgY29tbWl0IGRlZXBlciBpbiB5b3VyIGhpc3RvcnkuICBPbmUKIGFwcHJvYWNoIGlzIHRvIHVzZSBgZ2l0IGZvcm1hdC1wYXRjaGAgdG8gY3JlYXRlIGEgc2VyaWVzIG9mIHBhdGNoZXMKQEAgLTI2MzIsOCArMjU2Miw3IEBACiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIFtbaW50ZXJhY3RpdmUtcmViYXNlXV0KLVVzaW5nIGludGVyYWN0aXZlIHJlYmFzZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBVc2luZyBpbnRlcmFjdGl2ZSByZWJhc2VzCiAKIFlvdSBjYW4gYWxzbyBlZGl0IGEgcGF0Y2ggc2VyaWVzIHdpdGggYW4gaW50ZXJhY3RpdmUgcmViYXNlLiAgVGhpcyBpcwogdGhlIHNhbWUgYXMgPDxyZW9yZGVyaW5nLXBhdGNoLXNlcmllcyxyZW9yZGVyaW5nIGEgcGF0Y2ggc2VyaWVzIHVzaW5nCkBAIC0yNjkwLDE2ICsyNjE5LDE0IEBACiBzZWUgdGhlICJJTlRFUkFDVElWRSBNT0RFIiBzZWN0aW9uIG9mIGxpbmtnaXQ6Z2l0LXJlYmFzZVsxXS4KIAogW1twYXRjaC1zZXJpZXMtdG9vbHNdXQotT3RoZXIgdG9vbHMKLS0tLS0tLS0tLS0tCis9PT0gT3RoZXIgdG9vbHMKIAogVGhlcmUgYXJlIG51bWVyb3VzIG90aGVyIHRvb2xzLCBzdWNoIGFzIFN0R2l0LCB3aGljaCBleGlzdCBmb3IgdGhlCiBwdXJwb3NlIG9mIG1haW50YWluaW5nIGEgcGF0Y2ggc2VyaWVzLiAgVGhlc2UgYXJlIG91dHNpZGUgb2YgdGhlIHNjb3BlIG9mCiB0aGlzIG1hbnVhbC4KIAogW1twcm9ibGVtcy1XaXRoLXJld3JpdGluZy1oaXN0b3J5XV0KLVByb2JsZW1zIHdpdGggcmV3cml0aW5nIGhpc3RvcnkKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBQcm9ibGVtcyB3aXRoIHJld3JpdGluZyBoaXN0b3J5CiAKIFRoZSBwcmltYXJ5IHByb2JsZW0gd2l0aCByZXdyaXRpbmcgdGhlIGhpc3Rvcnkgb2YgYSBicmFuY2ggaGFzIHRvIGRvCiB3aXRoIG1lcmdpbmcuICBTdXBwb3NlIHNvbWVib2R5IGZldGNoZXMgeW91ciBicmFuY2ggYW5kIG1lcmdlcyBpdCBpbnRvCkBAIC0yNzQ3LDggKzI2NzQsNyBAQAogcHVibGlzaGVkIGJyYW5jaGVzIHNob3VsZCBuZXZlciBiZSByZXdyaXR0ZW4uCiAKIFtbYmlzZWN0LW1lcmdlc11dCi1XaHkgYmlzZWN0aW5nIG1lcmdlIGNvbW1pdHMgY2FuIGJlIGhhcmRlciB0aGFuIGJpc2VjdGluZyBsaW5lYXIgaGlzdG9yeQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBXaHkgYmlzZWN0aW5nIG1lcmdlIGNvbW1pdHMgY2FuIGJlIGhhcmRlciB0aGFuIGJpc2VjdGluZyBsaW5lYXIgaGlzdG9yeQogCiBUaGUgbGlua2dpdDpnaXQtYmlzZWN0WzFdIGNvbW1hbmQgY29ycmVjdGx5IGhhbmRsZXMgaGlzdG9yeSB0aGF0CiBpbmNsdWRlcyBtZXJnZSBjb21taXRzLiAgSG93ZXZlciwgd2hlbiB0aGUgY29tbWl0IHRoYXQgaXQgZmluZHMgaXMgYQpAQCAtMjgxMywxMiArMjczOSwxMCBAQAogcHVibGlzaGluZy4KIAogW1thZHZhbmNlZC1icmFuY2gtbWFuYWdlbWVudF1dCi1BZHZhbmNlZCBicmFuY2ggbWFuYWdlbWVudAotPT09PT09PT09PT09PT09PT09PT09PT09PT0KKz09IEFkdmFuY2VkIGJyYW5jaCBtYW5hZ2VtZW50CiAKIFtbZmV0Y2hpbmctaW5kaXZpZHVhbC1icmFuY2hlc11dCi1GZXRjaGluZyBpbmRpdmlkdWFsIGJyYW5jaGVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCis9PT0gRmV0Y2hpbmcgaW5kaXZpZHVhbCBicmFuY2hlcwogCiBJbnN0ZWFkIG9mIHVzaW5nIGxpbmtnaXQ6Z2l0LXJlbW90ZVsxXSwgeW91IGNhbiBhbHNvIGNob29zZSBqdXN0CiB0byB1cGRhdGUgb25lIGJyYW5jaCBhdCBhIHRpbWUsIGFuZCB0byBzdG9yZSBpdCBsb2NhbGx5IHVuZGVyIGFuCkBAIC0yODQ2LDggKzI3NzAsNyBAQAogbWFzdGVyIGJyYW5jaC4gIEluIG1vcmUgZGV0YWlsOgogCiBbW2ZldGNoLWZhc3QtZm9yd2FyZHNdXQotZ2l0IGZldGNoIGFuZCBmYXN0LWZvcndhcmRzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBnaXQgZmV0Y2ggYW5kIGZhc3QtZm9yd2FyZHMKIAogSW4gdGhlIHByZXZpb3VzIGV4YW1wbGUsIHdoZW4gdXBkYXRpbmcgYW4gZXhpc3RpbmcgYnJhbmNoLCBgZ2l0IGZldGNoYAogY2hlY2tzIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBtb3N0IHJlY2VudCBjb21taXQgb24gdGhlIHJlbW90ZQpAQCAtMjg4NCw4ICsyODA3LDcgQEAKIHRoZW0uCiAKIFtbZm9yY2luZy1mZXRjaF1dCi1Gb3JjaW5nIGdpdCBmZXRjaCB0byBkbyBub24tZmFzdC1mb3J3YXJkIHVwZGF0ZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IEZvcmNpbmcgZ2l0IGZldGNoIHRvIGRvIG5vbi1mYXN0LWZvcndhcmQgdXBkYXRlcwogCiBJZiBnaXQgZmV0Y2ggZmFpbHMgYmVjYXVzZSB0aGUgbmV3IGhlYWQgb2YgYSBicmFuY2ggaXMgbm90IGEKIGRlc2NlbmRhbnQgb2YgdGhlIG9sZCBoZWFkLCB5b3UgbWF5IGZvcmNlIHRoZSB1cGRhdGUgd2l0aDoKQEAgLTI5MDUsOCArMjgyNyw3IEBACiBtYXkgYmUgbG9zdCwgYXMgd2Ugc2F3IGluIHRoZSBwcmV2aW91cyBzZWN0aW9uLgogCiBbW3JlbW90ZS1icmFuY2gtY29uZmlndXJhdGlvbl1dCi1Db25maWd1cmluZyByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IENvbmZpZ3VyaW5nIHJlbW90ZS10cmFja2luZyBicmFuY2hlcwogCiBXZSBzYXcgYWJvdmUgdGhhdCBgb3JpZ2luYCBpcyBqdXN0IGEgc2hvcnRjdXQgdG8gcmVmZXIgdG8gdGhlCiByZXBvc2l0b3J5IHRoYXQgeW91IG9yaWdpbmFsbHkgY2xvbmVkIGZyb20uICBUaGlzIGluZm9ybWF0aW9uIGlzCkBAIC0yOTU3LDggKzI4NzgsNyBAQAogCiAKIFtbZ2l0LWNvbmNlcHRzXV0KLUdpdCBjb25jZXB0cwotPT09PT09PT09PT09Cis9PSBHaXQgY29uY2VwdHMKIAogR2l0IGlzIGJ1aWx0IG9uIGEgc21hbGwgbnVtYmVyIG9mIHNpbXBsZSBidXQgcG93ZXJmdWwgaWRlYXMuICBXaGlsZSBpdAogaXMgcG9zc2libGUgdG8gZ2V0IHRoaW5ncyBkb25lIHdpdGhvdXQgdW5kZXJzdGFuZGluZyB0aGVtLCB5b3Ugd2lsbCBmaW5kCkBAIC0yOTY4LDggKzI4ODgsNyBAQAogZGF0YWJhc2U+PiBhbmQgdGhlIDw8ZGVmX2luZGV4LGluZGV4Pj4uCiAKIFtbdGhlLW9iamVjdC1kYXRhYmFzZV1dCi1UaGUgT2JqZWN0IERhdGFiYXNlCi0tLS0tLS0tLS0tLS0tLS0tLS0tCis9PT0gVGhlIE9iamVjdCBEYXRhYmFzZQogCiAKIFdlIGFscmVhZHkgc2F3IGluIDw8dW5kZXJzdGFuZGluZy1jb21taXRzPj4gdGhhdCBhbGwgY29tbWl0cyBhcmUgc3RvcmVkCkBAIC0zMDEzLDggKzI5MzIsNyBAQAogVGhlIG9iamVjdCB0eXBlcyBpbiBzb21lIG1vcmUgZGV0YWlsOgogCiBbW2NvbW1pdC1vYmplY3RdXQotQ29tbWl0IE9iamVjdAotfn5+fn5+fn5+fn5+fgorPT09PSBDb21taXQgT2JqZWN0CiAKIFRoZSAiY29tbWl0IiBvYmplY3QgbGlua3MgYSBwaHlzaWNhbCBzdGF0ZSBvZiBhIHRyZWUgd2l0aCBhIGRlc2NyaXB0aW9uCiBvZiBob3cgd2UgZ290IHRoZXJlIGFuZCB3aHkuICBVc2UgdGhlIGAtLXByZXR0eT1yYXdgIG9wdGlvbiB0bwpAQCAtMzA2Niw4ICsyOTg0LDcgQEAKIHRha2VuIGZyb20gdGhlIGNvbnRlbnQgY3VycmVudGx5IHN0b3JlZCBpbiB0aGUgaW5kZXguCiAKIFtbdHJlZS1vYmplY3RdXQotVHJlZSBPYmplY3QKLX5+fn5+fn5+fn5+Cis9PT09IFRyZWUgT2JqZWN0CiAKIFRoZSBldmVyLXZlcnNhdGlsZSBsaW5rZ2l0OmdpdC1zaG93WzFdIGNvbW1hbmQgY2FuIGFsc28gYmUgdXNlZCB0bwogZXhhbWluZSB0cmVlIG9iamVjdHMsIGJ1dCBsaW5rZ2l0OmdpdC1scy10cmVlWzFdIHdpbGwgZ2l2ZSB5b3UgbW9yZQpAQCAtMzEwNiw4ICszMDIzLDcgQEAKIGF0dGVudGlvbiB0byB0aGUgZXhlY3V0YWJsZSBiaXQuCiAKIFtbYmxvYi1vYmplY3RdXQotQmxvYiBPYmplY3QKLX5+fn5+fn5+fn5+Cis9PT09IEJsb2IgT2JqZWN0CiAKIFlvdSBjYW4gdXNlIGxpbmtnaXQ6Z2l0LXNob3dbMV0gdG8gZXhhbWluZSB0aGUgY29udGVudHMgb2YgYSBibG9iOyB0YWtlLAogZm9yIGV4YW1wbGUsIHRoZSBibG9iIGluIHRoZSBlbnRyeSBmb3IgYENPUFlJTkdgIGZyb20gdGhlIHRyZWUgYWJvdmU6CkBAIC0zMTM2LDggKzMwNTIsNyBAQAogY3VycmVudGx5IGNoZWNrZWQgb3V0LgogCiBbW3RydXN0XV0KLVRydXN0Ci1+fn5+fgorPT09PSBUcnVzdAogCiBJZiB5b3UgcmVjZWl2ZSB0aGUgU0hBLTEgbmFtZSBvZiBhIGJsb2IgZnJvbSBvbmUgc291cmNlLCBhbmQgaXRzIGNvbnRlbnRzCiBmcm9tIGFub3RoZXIgKHBvc3NpYmx5IHVudHJ1c3RlZCkgc291cmNlLCB5b3UgY2FuIHN0aWxsIHRydXN0IHRoYXQgdGhvc2UKQEAgLTMxNjYsOCArMzA4MSw3IEBACiBUbyBhc3Npc3QgaW4gdGhpcywgR2l0IGFsc28gcHJvdmlkZXMgdGhlIHRhZyBvYmplY3QuLi4KIAogW1t0YWctb2JqZWN0XV0KLVRhZyBPYmplY3QKLX5+fn5+fn5+fn4KKz09PT0gVGFnIE9iamVjdAogCiBBIHRhZyBvYmplY3QgY29udGFpbnMgYW4gb2JqZWN0LCBvYmplY3QgdHlwZSwgdGFnIG5hbWUsIHRoZSBuYW1lIG9mIHRoZQogcGVyc29uICgidGFnZ2VyIikgd2hvIGNyZWF0ZWQgdGhlIHRhZywgYW5kIGEgbWVzc2FnZSwgd2hpY2ggbWF5IGNvbnRhaW4KQEAgLTMxOTYsOCArMzExMCw3IEBACiByZWZlcmVuY2VzIHdob3NlIG5hbWVzIGJlZ2luIHdpdGggYHJlZnMvdGFncy9gKS4KIAogW1twYWNrLWZpbGVzXV0KLUhvdyBHaXQgc3RvcmVzIG9iamVjdHMgZWZmaWNpZW50bHk6IHBhY2sgZmlsZXMKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKz09PT0gSG93IEdpdCBzdG9yZXMgb2JqZWN0cyBlZmZpY2llbnRseTogcGFjayBmaWxlcwogCiBOZXdseSBjcmVhdGVkIG9iamVjdHMgYXJlIGluaXRpYWxseSBjcmVhdGVkIGluIGEgZmlsZSBuYW1lZCBhZnRlciB0aGUKIG9iamVjdCdzIFNIQS0xIGhhc2ggKHN0b3JlZCBpbiBgLmdpdC9vYmplY3RzYCkuCkBAIC0zMjU1LDggKzMxNjgsNyBAQAogeW91LCBzbyBpcyBub3JtYWxseSB0aGUgb25seSBoaWdoLWxldmVsIGNvbW1hbmQgeW91IG5lZWQuCiAKIFtbZGFuZ2xpbmctb2JqZWN0c11dCi1EYW5nbGluZyBvYmplY3RzCi1+fn5+fn5+fn5+fn5+fn5+Cis9PT09IERhbmdsaW5nIG9iamVjdHMKIAogVGhlIGxpbmtnaXQ6Z2l0LWZzY2tbMV0gY29tbWFuZCB3aWxsIHNvbWV0aW1lcyBjb21wbGFpbiBhYm91dCBkYW5nbGluZwogb2JqZWN0cy4gIFRoZXkgYXJlIG5vdCBhIHByb2JsZW0uCkBAIC0zMzM2LDggKzMyNDgsNyBAQAogYWNjZXNzZXMgdG8gYSByZXBvc2l0b3J5IGJ1dCB5b3UgbWlnaHQgcmVjZWl2ZSBjb25mdXNpbmcgb3Igc2NhcnkgbWVzc2FnZXMuKQogCiBbW3JlY292ZXJpbmctZnJvbS1yZXBvc2l0b3J5LWNvcnJ1cHRpb25dXQotUmVjb3ZlcmluZyBmcm9tIHJlcG9zaXRvcnkgY29ycnVwdGlvbgotfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorPT09PSBSZWNvdmVyaW5nIGZyb20gcmVwb3NpdG9yeSBjb3JydXB0aW9uCiAKIEJ5IGRlc2lnbiwgR2l0IHRyZWF0cyBkYXRhIHRydXN0ZWQgdG8gaXQgd2l0aCBjYXV0aW9uLiAgSG93ZXZlciwgZXZlbiBpbgogdGhlIGFic2VuY2Ugb2YgYnVncyBpbiBHaXQgaXRzZWxmLCBpdCBpcyBzdGlsbCBwb3NzaWJsZSB0aGF0IGhhcmR3YXJlIG9yCkBAIC0zNDU0LDggKzMzNjUsNyBAQAoganVzdCBtaXNzaW5nIG9uZSBwYXJ0aWN1bGFyIGJsb2IgdmVyc2lvbi4KIAogW1t0aGUtaW5kZXhdXQotVGhlIGluZGV4Ci0tLS0tLS0tLS0KKz09PSBUaGUgaW5kZXgKIAogVGhlIGluZGV4IGlzIGEgYmluYXJ5IGZpbGUgKGdlbmVyYWxseSBrZXB0IGluIGAuZ2l0L2luZGV4YCkgY29udGFpbmluZyBhCiBzb3J0ZWQgbGlzdCBvZiBwYXRoIG5hbWVzLCBlYWNoIHdpdGggcGVybWlzc2lvbnMgYW5kIHRoZSBTSEEtMSBvZiBhIGJsb2IKQEAgLTM1MTMsOCArMzQyMyw3IEBACiBpbmZvcm1hdGlvbiBhcyBsb25nIGFzIHlvdSBoYXZlIHRoZSBuYW1lIG9mIHRoZSB0cmVlIHRoYXQgaXQgZGVzY3JpYmVkLgogCiBbW3N1Ym1vZHVsZXNdXQotU3VibW9kdWxlcwotPT09PT09PT09PQorPT0gU3VibW9kdWxlcwogCiBMYXJnZSBwcm9qZWN0cyBhcmUgb2Z0ZW4gY29tcG9zZWQgb2Ygc21hbGxlciwgc2VsZi1jb250YWluZWQgbW9kdWxlcy4gIEZvcgogZXhhbXBsZSwgYW4gZW1iZWRkZWQgTGludXggZGlzdHJpYnV0aW9uJ3Mgc291cmNlIHRyZWUgd291bGQgaW5jbHVkZSBldmVyeQpAQCAtMzY2OCwxMyArMzU3NywxMyBAQAogbmV3IGNvbW1pdDoKIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotJCBnaXQgY2hlY2tvdXQgbWFzdGVyCiskIGdpdCBzd2l0Y2ggbWFzdGVyCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIG9yCiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSQgZ2l0IGNoZWNrb3V0IC1iIGZpeC11cAorJCBnaXQgc3dpdGNoIC1jIGZpeC11cAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiB0aGVuCkBAIC0zNzAwLDggKzM2MDksOCBAQAogWW91IGhhdmUgdG8gcnVuIGBnaXQgc3VibW9kdWxlIHVwZGF0ZWAgYWZ0ZXIgYGdpdCBwdWxsYCBpZiB5b3Ugd2FudCB0byB1cGRhdGUKIHN1Ym1vZHVsZXMsIHRvby4KIAotUGl0ZmFsbHMgd2l0aCBzdWJtb2R1bGVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK1tbcGl0ZmFsbHMtd2l0aC1zdWJtb2R1bGVzXV0KKz09PSBQaXRmYWxscyB3aXRoIHN1Ym1vZHVsZXMKIAogQWx3YXlzIHB1Ymxpc2ggdGhlIHN1Ym1vZHVsZSBjaGFuZ2UgYmVmb3JlIHB1Ymxpc2hpbmcgdGhlIGNoYW5nZSB0byB0aGUKIHN1cGVycHJvamVjdCB0aGF0IHJlZmVyZW5jZXMgaXQuIElmIHlvdSBmb3JnZXQgdG8gcHVibGlzaCB0aGUgc3VibW9kdWxlIGNoYW5nZSwKQEAgLTM3NzAsOCArMzY3OSw3IEBACiB3YXJuaW5nIGFib3V0IG5vdCBiZWluZyBhYmxlIHN3aXRjaCBmcm9tIGEgZGlydHkgYnJhbmNoLgogCiBbW2xvdy1sZXZlbC1vcGVyYXRpb25zXV0KLUxvdy1sZXZlbCBHaXQgb3BlcmF0aW9ucwotPT09PT09PT09PT09PT09PT09PT09PT09Cis9PSBMb3ctbGV2ZWwgR2l0IG9wZXJhdGlvbnMKIAogTWFueSBvZiB0aGUgaGlnaGVyLWxldmVsIGNvbW1hbmRzIHdlcmUgb3JpZ2luYWxseSBpbXBsZW1lbnRlZCBhcyBzaGVsbAogc2NyaXB0cyB1c2luZyBhIHNtYWxsZXIgY29yZSBvZiBsb3ctbGV2ZWwgR2l0IGNvbW1hbmRzLiAgVGhlc2UgY2FuIHN0aWxsCkBAIC0zNzc5LDggKzM2ODcsNyBAQAogdW5kZXJzdGFuZCBpdHMgaW5uZXIgd29ya2luZ3MuCiAKIFtbb2JqZWN0LW1hbmlwdWxhdGlvbl1dCi1PYmplY3QgYWNjZXNzIGFuZCBtYW5pcHVsYXRpb24KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IE9iamVjdCBhY2Nlc3MgYW5kIG1hbmlwdWxhdGlvbgogCiBUaGUgbGlua2dpdDpnaXQtY2F0LWZpbGVbMV0gY29tbWFuZCBjYW4gc2hvdyB0aGUgY29udGVudHMgb2YgYW55IG9iamVjdCwKIHRob3VnaCB0aGUgaGlnaGVyLWxldmVsIGxpbmtnaXQ6Z2l0LXNob3dbMV0gaXMgdXN1YWxseSBtb3JlIHVzZWZ1bC4KQEAgLTM3OTcsMTEgKzM3MDQsMTAgQEAKIHVzZSBsaW5rZ2l0OmdpdC10YWdbMV0gZm9yIGJvdGguCiAKIFtbdGhlLXdvcmtmbG93XV0KLVRoZSBXb3JrZmxvdwotLS0tLS0tLS0tLS0tCis9PT0gVGhlIFdvcmtmbG93CiAKLUhpZ2gtbGV2ZWwgb3BlcmF0aW9ucyBzdWNoIGFzIGxpbmtnaXQ6Z2l0LWNvbW1pdFsxXSwKLWxpbmtnaXQ6Z2l0LWNoZWNrb3V0WzFdIGFuZCBsaW5rZ2l0OmdpdC1yZXNldFsxXSB3b3JrIGJ5IG1vdmluZyBkYXRhCitIaWdoLWxldmVsIG9wZXJhdGlvbnMgc3VjaCBhcyBsaW5rZ2l0OmdpdC1jb21taXRbMV0gYW5kCitsaW5rZ2l0OmdpdC1yZXN0b3JlWzFdIHdvcmsgYnkgbW92aW5nIGRhdGEKIGJldHdlZW4gdGhlIHdvcmtpbmcgdHJlZSwgdGhlIGluZGV4LCBhbmQgdGhlIG9iamVjdCBkYXRhYmFzZS4gIEdpdAogcHJvdmlkZXMgbG93LWxldmVsIG9wZXJhdGlvbnMgd2hpY2ggcGVyZm9ybSBlYWNoIG9mIHRoZXNlIHN0ZXBzCiBpbmRpdmlkdWFsbHkuCkBAIC0zODEzLDggKzM3MTksNyBAQAogY29tYmluYXRpb25zOgogCiBbW3dvcmtpbmctZGlyZWN0b3J5LXRvLWluZGV4XV0KLXdvcmtpbmcgZGlyZWN0b3J5IC0+IGluZGV4Ci1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorPT09PSB3b3JraW5nIGRpcmVjdG9yeSAtPiBpbmRleAogCiBUaGUgbGlua2dpdDpnaXQtdXBkYXRlLWluZGV4WzFdIGNvbW1hbmQgdXBkYXRlcyB0aGUgaW5kZXggd2l0aAogaW5mb3JtYXRpb24gZnJvbSB0aGUgd29ya2luZyBkaXJlY3RvcnkuICBZb3UgZ2VuZXJhbGx5IHVwZGF0ZSB0aGUKQEAgLTM4NTAsOCArMzc1NSw3IEBACiBsaW5rZ2l0OmdpdC11cGRhdGUtaW5kZXhbMV0uCiAKIFtbaW5kZXgtdG8tb2JqZWN0LWRhdGFiYXNlXV0KLWluZGV4IC0+IG9iamVjdCBkYXRhYmFzZQotfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IGluZGV4IC0+IG9iamVjdCBkYXRhYmFzZQogCiBZb3Ugd3JpdGUgeW91ciBjdXJyZW50IGluZGV4IGZpbGUgdG8gYSAidHJlZSIgb2JqZWN0IHdpdGggdGhlIHByb2dyYW0KIApAQCAtMzg2Niw4ICszNzcwLDcgQEAKIG90aGVyIGRpcmVjdGlvbjoKIAogW1tvYmplY3QtZGF0YWJhc2UtdG8taW5kZXhdXQotb2JqZWN0IGRhdGFiYXNlIC0+IGluZGV4Ci1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKz09PT0gb2JqZWN0IGRhdGFiYXNlIC0+IGluZGV4CiAKIFlvdSByZWFkIGEgInRyZWUiIGZpbGUgZnJvbSB0aGUgb2JqZWN0IGRhdGFiYXNlLCBhbmQgdXNlIHRoYXQgdG8KIHBvcHVsYXRlIChhbmQgb3ZlcndyaXRlLS1kb24ndCBkbyB0aGlzIGlmIHlvdXIgaW5kZXggY29udGFpbnMgYW55CkBAIC0zODgzLDggKzM3ODYsNyBAQAogZGlyZWN0b3J5IGNvbnRlbnRzIGhhdmUgbm90IGJlZW4gbW9kaWZpZWQuCiAKIFtbaW5kZXgtdG8td29ya2luZy1kaXJlY3RvcnldXQotaW5kZXggLT4gd29ya2luZyBkaXJlY3RvcnkKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cis9PT09IGluZGV4IC0+IHdvcmtpbmcgZGlyZWN0b3J5CiAKIFlvdSB1cGRhdGUgeW91ciB3b3JraW5nIGRpcmVjdG9yeSBmcm9tIHRoZSBpbmRleCBieSAiY2hlY2tpbmcgb3V0IgogZmlsZXMuIFRoaXMgaXMgbm90IGEgdmVyeSBjb21tb24gb3BlcmF0aW9uLCBzaW5jZSBub3JtYWxseSB5b3UnZCBqdXN0CkBAIC0zOTEzLDggKzM4MTUsNyBAQAogZnJvbSBvbmUgcmVwcmVzZW50YXRpb24gdG8gdGhlIG90aGVyOgogCiBbW3R5aW5nLWl0LWFsbC10b2dldGhlcl1dCi1UeWluZyBpdCBhbGwgdG9nZXRoZXIKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fgorPT09PSBUeWluZyBpdCBhbGwgdG9nZXRoZXIKIAogVG8gY29tbWl0IGEgdHJlZSB5b3UgaGF2ZSBpbnN0YW50aWF0ZWQgd2l0aCBgZ2l0IHdyaXRlLXRyZWVgLCB5b3UnZAogY3JlYXRlIGEgImNvbW1pdCIgb2JqZWN0IHRoYXQgcmVmZXJzIHRvIHRoYXQgdHJlZSBhbmQgdGhlIGhpc3RvcnkKQEAgLTM5ODgsOCArMzg4OSw3IEBACiAKIAogW1tleGFtaW5pbmctdGhlLWRhdGFdXQotRXhhbWluaW5nIHRoZSBkYXRhCi0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBFeGFtaW5pbmcgdGhlIGRhdGEKIAogWW91IGNhbiBleGFtaW5lIHRoZSBkYXRhIHJlcHJlc2VudGVkIGluIHRoZSBvYmplY3QgZGF0YWJhc2UgYW5kIHRoZQogaW5kZXggd2l0aCB2YXJpb3VzIGhlbHBlciB0b29scy4gRm9yIGV2ZXJ5IG9iamVjdCwgeW91IGNhbiB1c2UKQEAgLTQwMjQsOCArMzkyNCw3IEBACiB0byBzZWUgd2hhdCB0aGUgdG9wIGNvbW1pdCB3YXMuCiAKIFtbbWVyZ2luZy1tdWx0aXBsZS10cmVlc11dCi1NZXJnaW5nIG11bHRpcGxlIHRyZWVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCis9PT0gTWVyZ2luZyBtdWx0aXBsZSB0cmVlcwogCiBHaXQgY2FuIGhlbHAgeW91IHBlcmZvcm0gYSB0aHJlZS13YXkgbWVyZ2UsIHdoaWNoIGNhbiBpbiB0dXJuIGJlCiB1c2VkIGZvciBhIG1hbnktd2F5IG1lcmdlIGJ5IHJlcGVhdGluZyB0aGUgbWVyZ2UgcHJvY2VkdXJlIHNldmVyYWwKQEAgLTQwNzUsOCArMzk3NCw3IEBACiAKIAogW1ttZXJnaW5nLW11bHRpcGxlLXRyZWVzLTJdXQotTWVyZ2luZyBtdWx0aXBsZSB0cmVlcywgY29udGludWVkCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBNZXJnaW5nIG11bHRpcGxlIHRyZWVzLCBjb250aW51ZWQKIAogU2FkbHksIG1hbnkgbWVyZ2VzIGFyZW4ndCB0cml2aWFsLiBJZiB0aGVyZSBhcmUgZmlsZXMgdGhhdCBoYXZlCiBiZWVuIGFkZGVkLCBtb3ZlZCBvciByZW1vdmVkLCBvciBpZiBib3RoIGJyYW5jaGVzIGhhdmUgbW9kaWZpZWQgdGhlCkBAIC00MTQ2LDE1ICs0MDQ0LDEzIEBACiBhbmQgdGhhdCBpcyB3aGF0IGhpZ2hlciBsZXZlbCBgZ2l0IG1lcmdlIC1zIHJlc29sdmVgIGlzIGltcGxlbWVudGVkIHdpdGguCiAKIFtbaGFja2luZy1naXRdXQotSGFja2luZyBHaXQKLT09PT09PT09PT09Cis9PSBIYWNraW5nIEdpdAogCiBUaGlzIGNoYXB0ZXIgY292ZXJzIGludGVybmFsIGRldGFpbHMgb2YgdGhlIEdpdCBpbXBsZW1lbnRhdGlvbiB3aGljaAogcHJvYmFibHkgb25seSBHaXQgZGV2ZWxvcGVycyBuZWVkIHRvIHVuZGVyc3RhbmQuCiAKIFtbb2JqZWN0LWRldGFpbHNdXQotT2JqZWN0IHN0b3JhZ2UgZm9ybWF0Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBPYmplY3Qgc3RvcmFnZSBmb3JtYXQKIAogQWxsIG9iamVjdHMgaGF2ZSBhIHN0YXRpY2FsbHkgZGV0ZXJtaW5lZCAidHlwZSIgd2hpY2ggaWRlbnRpZmllcyB0aGUKIGZvcm1hdCBvZiB0aGUgb2JqZWN0IChpLmUuIGhvdyBpdCBpcyB1c2VkLCBhbmQgaG93IGl0IGNhbiByZWZlciB0byBvdGhlcgpAQCAtNDE4NCw4ICs0MDgwLDcgQEAKIHRvIGp1c3QgdmVyaWZ5aW5nIHRoZWlyIHN1cGVyZmljaWFsIGNvbnNpc3RlbmN5IHRocm91Z2ggdGhlIGhhc2gpLgogCiBbW2JpcmR2aWV3LW9uLXRoZS1zb3VyY2UtY29kZV1dCi1BIGJpcmRzLWV5ZSB2aWV3IG9mIEdpdCdzIHNvdXJjZSBjb2RlCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCis9PT0gQSBiaXJkcy1leWUgdmlldyBvZiBHaXQncyBzb3VyY2UgY29kZQogCiBJdCBpcyBub3QgYWx3YXlzIGVhc3kgZm9yIG5ldyBkZXZlbG9wZXJzIHRvIGZpbmQgdGhlaXIgd2F5IHRocm91Z2ggR2l0J3MKIHNvdXJjZSBjb2RlLiAgVGhpcyBzZWN0aW9uIGdpdmVzIHlvdSBhIGxpdHRsZSBndWlkYW5jZSB0byBzaG93IHdoZXJlIHRvCkBAIC00MTk0LDcgKzQwODksNyBAQAogQSBnb29kIHBsYWNlIHRvIHN0YXJ0IGlzIHdpdGggdGhlIGNvbnRlbnRzIG9mIHRoZSBpbml0aWFsIGNvbW1pdCwgd2l0aDoKIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotJCBnaXQgY2hlY2tvdXQgZTgzYzUxNjMKKyQgZ2l0IHN3aXRjaCAtLWRldGFjaCBlODNjNTE2MwogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBUaGUgaW5pdGlhbCByZXZpc2lvbiBsYXlzIHRoZSBmb3VuZGF0aW9uIGZvciBhbG1vc3QgZXZlcnl0aGluZyBHaXQgaGFzCkBAIC00Mzk0LDI1ICs0Mjg5LDIyIEBACiBpdHNlbGYhCiAKIFtbZ2xvc3NhcnldXQotR2l0IEdsb3NzYXJ5Ci09PT09PT09PT09PT0KKz09IEdpdCBHbG9zc2FyeQogCiBbW2dpdC1leHBsYWluZWRdXQotR2l0IGV4cGxhaW5lZAotLS0tLS0tLS0tLS0tLQorPT09IEdpdCBleHBsYWluZWQKIAogaW5jbHVkZTo6Z2xvc3NhcnktY29udGVudC50eHRbXQogCiBbW2dpdC1xdWljay1zdGFydF1dCi1BcHBlbmRpeCBBOiBHaXQgUXVpY2sgUmVmZXJlbmNlCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitbYXBwZW5kaXhdCis9PSBHaXQgUXVpY2sgUmVmZXJlbmNlCiAKIFRoaXMgaXMgYSBxdWljayBzdW1tYXJ5IG9mIHRoZSBtYWpvciBjb21tYW5kczsgdGhlIHByZXZpb3VzIGNoYXB0ZXJzCiBleHBsYWluIGhvdyB0aGVzZSB3b3JrIGluIG1vcmUgZGV0YWlsLgogCiBbW3F1aWNrLWNyZWF0aW5nLWEtbmV3LXJlcG9zaXRvcnldXQotQ3JlYXRpbmcgYSBuZXcgcmVwb3NpdG9yeQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IENyZWF0aW5nIGEgbmV3IHJlcG9zaXRvcnkKIAogRnJvbSBhIHRhcmJhbGw6CiAKQEAgLTQ0MzMsMTQgKzQzMjUsMTMgQEAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIFtbbWFuYWdpbmctYnJhbmNoZXNdXQotTWFuYWdpbmcgYnJhbmNoZXMKLS0tLS0tLS0tLS0tLS0tLS0tCis9PT0gTWFuYWdpbmcgYnJhbmNoZXMKIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSQgZ2l0IGJyYW5jaAkgICAgICMgbGlzdCBhbGwgbG9jYWwgYnJhbmNoZXMgaW4gdGhpcyByZXBvCi0kIGdpdCBjaGVja291dCB0ZXN0ICAjIHN3aXRjaCB3b3JraW5nIGRpcmVjdG9yeSB0byBicmFuY2ggInRlc3QiCi0kIGdpdCBicmFuY2ggbmV3ICAgICAjIGNyZWF0ZSBicmFuY2ggIm5ldyIgc3RhcnRpbmcgYXQgY3VycmVudCBIRUFECi0kIGdpdCBicmFuY2ggLWQgbmV3ICAjIGRlbGV0ZSBicmFuY2ggIm5ldyIKKyQgZ2l0IGJyYW5jaAkJCSMgbGlzdCBhbGwgbG9jYWwgYnJhbmNoZXMgaW4gdGhpcyByZXBvCiskIGdpdCBzd2l0Y2ggdGVzdAkgICAgICAgICMgc3dpdGNoIHdvcmtpbmcgZGlyZWN0b3J5IHRvIGJyYW5jaCAidGVzdCIKKyQgZ2l0IGJyYW5jaCBuZXcJCSMgY3JlYXRlIGJyYW5jaCAibmV3IiBzdGFydGluZyBhdCBjdXJyZW50IEhFQUQKKyQgZ2l0IGJyYW5jaCAtZCBuZXcJCSMgZGVsZXRlIGJyYW5jaCAibmV3IgogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogSW5zdGVhZCBvZiBiYXNpbmcgYSBuZXcgYnJhbmNoIG9uIGN1cnJlbnQgSEVBRCAodGhlIGRlZmF1bHQpLCB1c2U6CkBAIC00NDU2LDcgKzQzNDcsNyBAQAogQ3JlYXRlIGFuZCBzd2l0Y2ggdG8gYSBuZXcgYnJhbmNoIGF0IHRoZSBzYW1lIHRpbWU6CiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0kIGdpdCBjaGVja291dCAtYiBuZXcgdjIuNi4xNQorJCBnaXQgc3dpdGNoIC1jIG5ldyB2Mi42LjE1CiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBVcGRhdGUgYW5kIGV4YW1pbmUgYnJhbmNoZXMgZnJvbSB0aGUgcmVwb3NpdG9yeSB5b3UgY2xvbmVkIGZyb206CkBAIC00NDY3LDcgKzQzNTgsNyBAQAogICBvcmlnaW4vbWFzdGVyCiAgIG9yaWdpbi9uZXh0CiAgIC4uLgotJCBnaXQgY2hlY2tvdXQgLWIgbWFzdGVyd29yayBvcmlnaW4vbWFzdGVyCiskIGdpdCBzd2l0Y2ggLWMgbWFzdGVyd29yayBvcmlnaW4vbWFzdGVyCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBGZXRjaCBhIGJyYW5jaCBmcm9tIGEgZGlmZmVyZW50IHJlcG9zaXRvcnksIGFuZCBnaXZlIGl0IGEgbmV3CkBAIC00NDk4LDggKzQzODksNyBAQAogCiAKIFtbZXhwbG9yaW5nLWhpc3RvcnldXQotRXhwbG9yaW5nIGhpc3RvcnkKLS0tLS0tLS0tLS0tLS0tLS0tCis9PT0gRXhwbG9yaW5nIGhpc3RvcnkKIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICQgZ2l0awkJCSAgICAjIHZpc3VhbGl6ZSBhbmQgYnJvd3NlIGhpc3RvcnkKQEAgLTQ1MzQsOCArNDQyNCw3IEBACiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBbW21ha2luZy1jaGFuZ2VzXV0KLU1ha2luZyBjaGFuZ2VzCi0tLS0tLS0tLS0tLS0tLQorPT09IE1ha2luZyBjaGFuZ2VzCiAKIE1ha2Ugc3VyZSBHaXQga25vd3Mgd2hvIHRvIGJsYW1lOgogCkBAIC00NTY1LDggKzQ0NTQsNyBAQAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogW1ttZXJnaW5nXV0KLU1lcmdpbmcKLS0tLS0tLS0KKz09PSBNZXJnaW5nCiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAkIGdpdCBtZXJnZSB0ZXN0ICAgIyBtZXJnZSBicmFuY2ggInRlc3QiIGludG8gdGhlIGN1cnJlbnQgYnJhbmNoCkBAIC00NTc2LDggKzQ0NjQsNyBAQAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogW1tzaGFyaW5nLXlvdXItY2hhbmdlc11dCi1TaGFyaW5nIHlvdXIgY2hhbmdlcwotLS0tLS0tLS0tLS0tLS0tLS0tLS0KKz09PSBTaGFyaW5nIHlvdXIgY2hhbmdlcwogCiBJbXBvcnRpbmcgb3IgZXhwb3J0aW5nIHBhdGNoZXM6CiAKQEAgLTQ2MjIsOCArNDUwOSw3IEBACiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBbW3JlcG9zaXRvcnktbWFpbnRlbmFuY2VdXQotUmVwb3NpdG9yeSBtYWludGVuYW5jZQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorPT09IFJlcG9zaXRvcnkgbWFpbnRlbmFuY2UKIAogQ2hlY2sgZm9yIGNvcnJ1cHRpb246CiAKQEAgLTQ2MzksMTIgKzQ1MjUsMTEgQEAKIAogCiBbW3RvZG9dXQotQXBwZW5kaXggQjogTm90ZXMgYW5kIHRvZG8gbGlzdCBmb3IgdGhpcyBtYW51YWwKLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitbYXBwZW5kaXhdCis9PSBOb3RlcyBhbmQgdG9kbyBsaXN0IGZvciB0aGlzIG1hbnVhbAogCiBbW3RvZG8tbGlzdF1dCi1Ub2RvIGxpc3QKLS0tLS0tLS0tLQorPT09IFRvZG8gbGlzdAogCiBUaGlzIGlzIGEgd29yayBpbiBwcm9ncmVzcy4KIApAQCAtNDY4OSw1ICs0NTc0LDUgQEAKIEFsdGVybmF0ZXMsIGNsb25lIC1yZWZlcmVuY2UsIGV0Yy4KIAogTW9yZSBvbiByZWNvdmVyeSBmcm9tIHJlcG9zaXRvcnkgY29ycnVwdGlvbi4gIFNlZToKLQlodHRwOi8vbWFyYy5pbmZvLz9sPWdpdCZtPTExNzI2Mzg2NDgyMDc5OSZ3PTIKLQlodHRwOi8vbWFyYy5pbmZvLz9sPWdpdCZtPTExNzE0Nzg1NTUwMzc5OCZ3PTIKKwlodHRwczovL2xvcmUua2VybmVsLm9yZy9naXQvUGluZS5MTlguNC42NC4wNzAyMjcyMDM5NTQwLjEyNDg1QHdvb2R5LmxpbnV4LWZvdW5kYXRpb24ub3JnLworCWh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC9QaW5lLkxOWC40LjY0LjA3MDIxNDEwMzM0MDAuMzYwNEB3b29keS5saW51eC1mb3VuZGF0aW9uLm9yZy8KZGlmZiAtLWdpdCBhL0dJVC1WRVJTSU9OLUdFTiBiL0dJVC1WRVJTSU9OLUdFTgppbmRleCA0OTJmMzQ4Li41ZGI0ODNmIDEwMDc1NQotLS0gYS9HSVQtVkVSU0lPTi1HRU4KKysrIGIvR0lULVZFUlNJT04tR0VOCkBAIC0xLDcgKzEsNyBAQAogIyEvYmluL3NoCiAKIEdWRj1HSVQtVkVSU0lPTi1GSUxFCi1ERUZfVkVSPXYyLjIwLjIKK0RFRl9WRVI9djIuMjYuMAogCiBMRj0nCiAnCmRpZmYgLS1naXQgYS9JTlNUQUxMIGIvSU5TVEFMTAppbmRleCBjMzkwMDZlLi4yMmMzNjRmIDEwMDY0NAotLS0gYS9JTlNUQUxMCisrKyBiL0lOU1RBTEwKQEAgLTEwOSwxNSArMTA5LDE1IEBACiAKICAtIEdpdCBpcyByZWFzb25hYmx5IHNlbGYtc3VmZmljaWVudCwgYnV0IGRvZXMgZGVwZW5kIG9uIGEgZmV3IGV4dGVybmFsCiAgICBwcm9ncmFtcyBhbmQgbGlicmFyaWVzLiAgR2l0IGNhbiBiZSB1c2VkIHdpdGhvdXQgbW9zdCBvZiB0aGVtIGJ5IGFkZGluZwotICAgdGhlIGFwcHJvcmlhdGUgIk5PXzxMSUJSQVJZPj1ZZXNQbGVhc2UiIHRvIHRoZSBtYWtlIGNvbW1hbmQgbGluZSBvcgorICAgdGhlIGFwcHJvcHJpYXRlICJOT188TElCUkFSWT49WWVzUGxlYXNlIiB0byB0aGUgbWFrZSBjb21tYW5kIGxpbmUgb3IKICAgIGNvbmZpZy5tYWsgZmlsZS4KIAogCS0gInpsaWIiLCB0aGUgY29tcHJlc3Npb24gbGlicmFyeS4gR2l0IHdvbid0IGJ1aWxkIHdpdGhvdXQgaXQuCiAKIAktICJzc2giIGlzIHVzZWQgdG8gcHVzaCBhbmQgcHVsbCBvdmVyIHRoZSBuZXQuCiAKLQktIEEgUE9TSVgtY29tcGxpYW50IHNoZWxsIGlzIHJlcXVpcmVkIHRvIHJ1biBtYW55IHNjcmlwdHMgbmVlZGVkCi0JICBmb3IgZXZlcnlkYXkgdXNlIChlLmcuICJiaXNlY3QiLCAicHVsbCIpLgorCS0gQSBQT1NJWC1jb21wbGlhbnQgc2hlbGwgaXMgcmVxdWlyZWQgdG8gcnVuIHNvbWUgc2NyaXB0cyBuZWVkZWQKKwkgIGZvciBldmVyeWRheSB1c2UgKGUuZy4gImJpc2VjdCIsICJyZXF1ZXN0LXB1bGwiKS4KIAogCS0gIlBlcmwiIHZlcnNpb24gNS44IG9yIGxhdGVyIGlzIG5lZWRlZCB0byB1c2Ugc29tZSBvZiB0aGUKIAkgIGZlYXR1cmVzIChlLmcuIHByZXBhcmluZyBhIHBhcnRpYWwgY29tbWl0IHVzaW5nICJnaXQgYWRkIC1pLy1wIiwKZGlmZiAtLWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUKaW5kZXggMWE0NGM4MS4uYTU5NjExMSAxMDA2NDQKLS0tIGEvTWFrZWZpbGUKKysrIGIvTWFrZWZpbGUKQEAgLTM0LDEzICszNCw4IEBACiAjIGxpYnJhcnkuIFN1cHBvcnQgZm9yIHZlcnNpb24gMSB3aWxsIGxpa2VseSBiZSByZW1vdmVkIGluIHNvbWUgZnV0dXJlCiAjIHJlbGVhc2Ugb2YgR2l0LCBhcyB1cHN0cmVhbSBoYXMgYWxsIGJ1dCBhYmFuZG9uZWQgaXQuCiAjCi0jIFdoZW4gdXNpbmcgVVNFX0xJQlBDUkUxLCBkZWZpbmUgTk9fTElCUENSRTFfSklUIGlmIHRoZSBQQ1JFIHYxCi0jIGxpYnJhcnkgaXMgY29tcGlsZWQgd2l0aG91dCAtLWVuYWJsZS1qaXQuIFdlIHdpbGwgYXV0by1kZXRlY3QKLSMgd2hldGhlciB0aGUgdmVyc2lvbiBvZiB0aGUgUENSRSB2MSBsaWJyYXJ5IGluIHVzZSBoYXMgSklUIHN1cHBvcnQgYXQKLSMgYWxsLCBidXQgd2UgdW5mb3J0dW5hdGVseSBjYW4ndCBhdXRvLWRldGVjdCB3aGV0aGVyIEpJVCBzdXBwb3J0Ci0jIGhhc24ndCBiZWVuIGNvbXBpbGVkIGluIGluIGFuIG90aGVyd2lzZSBKSVQtc3VwcG9ydGluZyB2ZXJzaW9uLiBJZgotIyB5b3UgaGF2ZSBsaW5rLXRpbWUgZXJyb3JzIGFib3V0IGEgbWlzc2luZyBgcGNyZV9qaXRfZXhlY2AgZGVmaW5lCi0jIHRoaXMsIG9yIHJlY29tcGlsZSBQQ1JFIHYxIHdpdGggLS1lbmFibGUtaml0LgorIyBXaGVuIHVzaW5nIFVTRV9MSUJQQ1JFMSwgZGVmaW5lIE5PX0xJQlBDUkUxX0pJVCBpZiB5b3Ugd2FudCB0bworIyBkaXNhYmxlIEpJVCBldmVuIGlmIHN1cHBvcnRlZCBieSB5b3VyIGxpYnJhcnkuCiAjCiAjIERlZmluZSBMSUJQQ1JFRElSPS9mb28vYmFyIGlmIHlvdXIgUENSRSBoZWFkZXIgYW5kIGxpYnJhcnkgZmlsZXMgYXJlCiAjIGluIC9mb28vYmFyL2luY2x1ZGUgYW5kIC9mb28vYmFyL2xpYiBkaXJlY3Rvcmllcy4gV2hpY2ggdmVyc2lvbiBvZgpAQCAtMTg2LDYgKzE4MSwxMiBAQAogIyBpbiBvbmUgY2FsbCB0byB0aGUgcGxhdGZvcm0ncyBTSEExX1VwZGF0ZSgpLiBlLmcuIEFQUExFX0NPTU1PTl9DUllQVE8KICMgd2FudHMgJ1NIQTFfTUFYX0JMT0NLX1NJWkU9MTAyNEwqMTAyNEwqMTAyNEwnIGRlZmluZWQuCiAjCisjIERlZmluZSBCTEtfU0hBMjU2IHRvIHVzZSB0aGUgYnVpbHQtaW4gU0hBLTI1NiByb3V0aW5lcy4KKyMKKyMgRGVmaW5lIEdDUllQVF9TSEEyNTYgdG8gdXNlIHRoZSBTSEEtMjU2IHJvdXRpbmVzIGluIGxpYmdjcnlwdC4KKyMKKyMgRGVmaW5lIE9QRU5TU0xfU0hBMjU2IHRvIHVzZSB0aGUgU0hBLTI1NiByb3V0aW5lcyBpbiBPcGVuU1NMLgorIwogIyBEZWZpbmUgTkVFRFNfQ1JZUFRPX1dJVEhfU1NMIGlmIHlvdSBuZWVkIC1sY3J5cHRvIHdoZW4gdXNpbmcgLWxzc2wgKERhcndpbikuCiAjCiAjIERlZmluZSBORUVEU19TU0xfV0lUSF9DUllQVE8gaWYgeW91IG5lZWQgLWxzc2wgd2hlbiB1c2luZyAtbGNyeXB0byAoRGFyd2luKS4KQEAgLTI1MywxMSArMjU0LDExIEBACiAjIERlZmluZSBPTERfSUNPTlYgaWYgeW91ciBsaWJyYXJ5IGhhcyBhbiBvbGQgaWNvbnYoKSwgd2hlcmUgdGhlIHNlY29uZAogIyAoaW5wdXQgYnVmZmVyIHBvaW50ZXIpIHBhcmFtZXRlciBpcyBkZWNsYXJlZCB3aXRoIHR5cGUgKGNvbnN0IGNoYXIgKiopLgogIwotIyBEZWZpbmUgTk9fREVGTEFURV9CT1VORCBpZiB5b3VyIHpsaWIgZG9lcyBub3QgaGF2ZSBkZWZsYXRlQm91bmQuCisjIERlZmluZSBJQ09OVl9PTUlUU19CT00gaWYgeW91ciBpY29udiBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCB3cml0ZSBhCisjIGJ5dGUtb3JkZXIgbWFyayAoQk9NKSB3aGVuIHdyaXRpbmcgVVRGLTE2IG9yIFVURi0zMiBhbmQgYWx3YXlzIHdyaXRlcyBpbgorIyBiaWctZW5kaWFuIGZvcm1hdC4KICMKLSMgRGVmaW5lIE5PX1JfVE9fR0NDX0xJTktFUiBpZiB5b3VyIGdjYyBkb2VzIG5vdCBsaWtlICItUi9wYXRoL2xpYiIKLSMgdGhhdCB0ZWxscyBydW50aW1lIHBhdGhzIHRvIGR5bmFtaWMgbGlicmFyaWVzOwotIyAiLVdsLC1ycGF0aD0vcGF0aC9saWIiIGlzIHVzZWQgaW5zdGVhZC4KKyMgRGVmaW5lIE5PX0RFRkxBVEVfQk9VTkQgaWYgeW91ciB6bGliIGRvZXMgbm90IGhhdmUgZGVmbGF0ZUJvdW5kLgogIwogIyBEZWZpbmUgTk9fTk9SRVRVUk4gaWYgdXNpbmcgYnVnZ3kgdmVyc2lvbnMgb2YgZ2NjIDQuNisgYW5kIHByb2ZpbGUgZmVlZGJhY2ssCiAjIGFzIHRoZSBjb21waWxlciBjYW4gY3Jhc2ggKGh0dHA6Ly9nY2MuZ251Lm9yZy9idWd6aWxsYS9zaG93X2J1Zy5jZ2k/aWQ9NDkyOTkpCkBAIC00MjcsNiArNDI4LDExIEBACiAjCiAjIERlZmluZSBIQVZFX0dFVERFTElNIGlmIHlvdXIgc3lzdGVtIGhhcyB0aGUgZ2V0ZGVsaW0oKSBmdW5jdGlvbi4KICMKKyMgRGVmaW5lIEZJTEVOT19JU19BX01BQ1JPIGlmIGZpbGVubygpIGlzIGEgbWFjcm8sIG5vdCBhIHJlYWwgZnVuY3Rpb24uCisjCisjIERlZmluZSBORUVEX0FDQ0VTU19ST09UX0hBTkRMRVIgaWYgYWNjZXNzKCkgdW5kZXIgcm9vdCBtYXkgc3VjY2VzcyBmb3IgWF9PSworIyBldmVuIGlmIGV4ZWN1dGlvbiBwZXJtaXNzaW9uIGlzbid0IGdyYW50ZWQgZm9yIGFueSB1c2VyLgorIwogIyBEZWZpbmUgUEFHRVJfRU5WIHRvIGEgU1Agc2VwYXJhdGVkIFZBUj1WQUwgcGFpcnMgdG8gZGVmaW5lCiAjIGRlZmF1bHQgZW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIGJlIHBhc3NlZCB3aGVuIGEgcGFnZXIgaXMgc3Bhd25lZCwgZS5nLgogIwpAQCAtNDY3LDExICs0NzMsMTUgQEAKICMKICMgRGVmaW5lIERFVkVMT1BFUiB0byBlbmFibGUgbW9yZSBjb21waWxlciB3YXJuaW5ncy4gQ29tcGlsZXIgdmVyc2lvbgogIyBhbmQgZmFtaWx5IGFyZSBhdXRvIGRldGVjdGVkLCBidXQgY291bGQgYmUgb3ZlcnJpZGRlbiBieSBkZWZpbmluZwotIyBDT01QSUxFUl9GRUFUVVJFUyAoc2VlIGNvbmZpZy5tYWsuZGV2KQorIyBDT01QSUxFUl9GRUFUVVJFUyAoc2VlIGNvbmZpZy5tYWsuZGV2KS4gWW91IGNhbiBzdGlsbCBzZXQKKyMgQ0ZMQUdTPSIuLi4iIGluIGNvbWJpbmF0aW9uIHdpdGggREVWRUxPUEVSIGVuYWJsZXMsIHdoZXRoZXIgdGhhdCdzCisjIGZvciB0d2Vha2luZyBzb21ldGhpbmcgdW5yZWxhdGVkIChlLmcuIG9wdGltaXphdGlvbiBsZXZlbCksIG9yIGZvcgorIyBzZWxlY3RpdmVseSBvdmVycmlkaW5nIHNvbWV0aGluZyBERVZFTE9QRVIgb3Igb25lIG9mIHRoZSBERVZPUFRTCisjIChzZWUganVzdCBiZWxvdykgYnJpbmdzIGluLgogIwogIyBXaGVuIERFVkVMT1BFUiBpcyBzZXQsIERFVk9QVFMgY2FuIGJlIHVzZWQgdG8gY29udHJvbCBjb21waWxlcgogIyBvcHRpb25zLiAgVGhpcyB2YXJpYWJsZSBjb250YWlucyBrZXl3b3JkcyBzZXBhcmF0ZWQgYnkKLSMgd2hpdGVzcGFjZS4gVGhlIGZvbGxvd2luZyBrZXl3b3JkcyBhcmUgYXJlIHJlY29nbml6ZWQ6CisjIHdoaXRlc3BhY2UuIFRoZSBmb2xsb3dpbmcga2V5d29yZHMgYXJlIHJlY29nbml6ZWQ6CiAjCiAjICAgIG5vLWVycm9yOgogIwpAQCAtNDk0LDE3ICs1MDQsOCBAQAogCUAkKFNIRUxMX1BBVEgpIC4vR0lULVZFUlNJT04tR0VOCiAtaW5jbHVkZSBHSVQtVkVSU0lPTi1GSUxFCiAKLSMgQ0ZMQUdTIGFuZCBMREZMQUdTIGFyZSBmb3IgdGhlIHVzZXJzIHRvIG92ZXJyaWRlIGZyb20gdGhlIGNvbW1hbmQgbGluZS4KLQotQ0ZMQUdTID0gLWcgLU8yIC1XYWxsCi1MREZMQUdTID0KLUFMTF9DRkxBR1MgPSAkKENQUEZMQUdTKSAkKENGTEFHUykKLUFMTF9MREZMQUdTID0gJChMREZMQUdTKQotU1RSSVAgPz0gc3RyaXAKLQotIyBDcmVhdGUgYXMgbmVjZXNzYXJ5LCByZXBsYWNlIGV4aXN0aW5nLCBtYWtlIHJhbmxpYiB1bm5lZWRlZC4KLUFSRkxBR1MgPSByY3MKLQorIyBTZXQgb3VyIGRlZmF1bHQgY29uZmlndXJhdGlvbi4KKyMKICMgQW1vbmcgdGhlIHZhcmlhYmxlcyBiZWxvdywgdGhlc2U6CiAjICAgZ2l0ZXhlY2RpcgogIyAgIHRlbXBsYXRlX2RpcgpAQCAtNTQ5LDYgKzU1MCw3IEBACiAKIGV4cG9ydCBwcmVmaXggYmluZGlyIHNoYXJlZGlyIHN5c2NvbmZkaXIgZ2l0d2ViZGlyIHBlcmxsaWJkaXIgbG9jYWxlZGlyCiAKKyMgU2V0IG91ciBkZWZhdWx0IHByb2dyYW1zCiBDQyA9IGNjCiBBUiA9IGFyCiBSTSA9IHJtIC1mCkBAIC01NjEsMjUgKzU2MywxNCBAQAogWEdFVFRFWFQgPSB4Z2V0dGV4dAogTVNHRk1UID0gbXNnZm10CiBDVVJMX0NPTkZJRyA9IGN1cmwtY29uZmlnCi1QVEhSRUFEX0xJQlMgPSAtbHB0aHJlYWQKLVBUSFJFQURfQ0ZMQUdTID0KIEdDT1YgPSBnY292CitTVFJJUCA9IHN0cmlwCiBTUEFUQ0ggPSBzcGF0Y2gKIAogZXhwb3J0IFRDTF9QQVRIIFRDTFRLX1BBVEgKIAotU1BBUlNFX0ZMQUdTID0KLVNQQVRDSF9GTEFHUyA9IC0tYWxsLWluY2x1ZGVzIC0tcGF0Y2ggLgotCi0KLQotIyMjIC0tLSBFTkQgQ09ORklHVVJBVElPTiBTRUNUSU9OIC0tLQotCi0jIFRob3NlIG11c3Qgbm90IGJlIEdOVS1zcGVjaWZpYzsgdGhleSBhcmUgc2hhcmVkIHdpdGggcGVybC8gd2hpY2ggbWF5Ci0jIGJlIGJ1aWx0IGJ5IGEgZGlmZmVyZW50IGNvbXBpbGVyLiAoTm90ZSB0aGF0IHRoaXMgaXMgYW4gYXJ0aWZhY3Qgbm93Ci0jIGJ1dCBpdCBzdGlsbCBtaWdodCBiZSBuaWNlIHRvIGtlZXAgdGhhdCBkaXN0aW5jdGlvbi4pCi1CQVNJQ19DRkxBR1MgPSAtSS4KLUJBU0lDX0xERkxBR1MgPQorIyBTZXQgb3VyIGRlZmF1bHQgTElCUyB2YXJpYWJsZXMKK1BUSFJFQURfTElCUyA9IC1scHRocmVhZAogCiAjIEd1YXJkIGFnYWluc3QgZW52aXJvbm1lbnQgdmFyaWFibGVzCiBCVUlMVElOX09CSlMgPQpAQCAtNTk1LDEyICs1ODYsMTQgQEAKIExJQl9PQkpTID0KIFBST0dSQU1fT0JKUyA9CiBQUk9HUkFNUyA9CitFWENMVURFRF9QUk9HUkFNUyA9CiBTQ1JJUFRfUEVSTCA9CiBTQ1JJUFRfUFlUSE9OID0KIFNDUklQVF9TSCA9CiBTQ1JJUFRfTElCID0KIFRFU1RfQlVJTFRJTlNfT0JKUyA9CiBURVNUX1BST0dSQU1TX05FRURfWCA9CitUSElSRF9QQVJUWV9TT1VSQ0VTID0KIAogIyBIYXZpbmcgdGhpcyB2YXJpYWJsZSBpbiB5b3VyIGVudmlyb25tZW50IHdvdWxkIGJyZWFrIHBpcGVsaW5lcyBiZWNhdXNlCiAjIHlvdSBjYXVzZSAiY2QiIHRvIGVjaG8gaXRzIGRlc3RpbmF0aW9uIHRvIHN0ZG91dC4gIEl0IGNhbiBhbHNvIHRha2UKQEAgLTYxNiwxOSArNjA5LDE0IEBACiBTQ1JJUFRfU0ggKz0gZ2l0LW1lcmdlLXJlc29sdmUuc2gKIFNDUklQVF9TSCArPSBnaXQtbWVyZ2V0b29sLnNoCiBTQ1JJUFRfU0ggKz0gZ2l0LXF1aWx0aW1wb3J0LnNoCi1TQ1JJUFRfU0ggKz0gZ2l0LWxlZ2FjeS1yZWJhc2Uuc2gKLVNDUklQVF9TSCArPSBnaXQtcmVtb3RlLXRlc3RnaXQuc2gKK1NDUklQVF9TSCArPSBnaXQtbGVnYWN5LXN0YXNoLnNoCiBTQ1JJUFRfU0ggKz0gZ2l0LXJlcXVlc3QtcHVsbC5zaAotU0NSSVBUX1NIICs9IGdpdC1zdGFzaC5zaAogU0NSSVBUX1NIICs9IGdpdC1zdWJtb2R1bGUuc2gKIFNDUklQVF9TSCArPSBnaXQtd2ViLS1icm93c2Uuc2gKIAogU0NSSVBUX0xJQiArPSBnaXQtbWVyZ2V0b29sLS1saWIKIFNDUklQVF9MSUIgKz0gZ2l0LXBhcnNlLXJlbW90ZQotU0NSSVBUX0xJQiArPSBnaXQtcmViYXNlLS1hbQotU0NSSVBUX0xJQiArPSBnaXQtcmViYXNlLS1jb21tb24KIFNDUklQVF9MSUIgKz0gZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzCi1TQ1JJUFRfTElCICs9IGdpdC1yZWJhc2UtLW1lcmdlCiBTQ1JJUFRfTElCICs9IGdpdC1zaC1zZXR1cAogU0NSSVBUX0xJQiArPSBnaXQtc2gtaTE4bgogCkBAIC02NDIsMTcgKzYzMCwxMSBAQAogCiBTQ1JJUFRfUFlUSE9OICs9IGdpdC1wNC5weQogCi1OT19JTlNUQUxMICs9IGdpdC1yZW1vdGUtdGVzdGdpdAotCiAjIEdlbmVyYXRlZCBmaWxlcyBmb3Igc2NyaXB0cwogU0NSSVBUX1NIX0dFTiA9ICQocGF0c3Vic3QgJS5zaCwlLCQoU0NSSVBUX1NIKSkKIFNDUklQVF9QRVJMX0dFTiA9ICQocGF0c3Vic3QgJS5wZXJsLCUsJChTQ1JJUFRfUEVSTCkpCiBTQ1JJUFRfUFlUSE9OX0dFTiA9ICQocGF0c3Vic3QgJS5weSwlLCQoU0NSSVBUX1BZVEhPTikpCiAKLVNDUklQVF9TSF9JTlMgPSAkKGZpbHRlci1vdXQgJChOT19JTlNUQUxMKSwkKFNDUklQVF9TSF9HRU4pKQotU0NSSVBUX1BFUkxfSU5TID0gJChmaWx0ZXItb3V0ICQoTk9fSU5TVEFMTCksJChTQ1JJUFRfUEVSTF9HRU4pKQotU0NSSVBUX1BZVEhPTl9JTlMgPSAkKGZpbHRlci1vdXQgJChOT19JTlNUQUxMKSwkKFNDUklQVF9QWVRIT05fR0VOKSkKLQogIyBJbmRpdmlkdWFsIHJ1bGVzIHRvIGFsbG93IGUuZy4KICMgIm1ha2UgLUMgLi4vLi4gU0NSSVBUX1BFUkw9Y29udHJpYi9mb28vYmFyLnBlcmwgYnVpbGQtcGVybC1zY3JpcHQiCiAjIGZyb20gc3ViZGlyZWN0b3JpZXMgbGlrZSBjb250cmliLyovCkBAIC02NjIsMTEgKzY0NCwxMSBAQAogYnVpbGQtcHl0aG9uLXNjcmlwdDogJChTQ1JJUFRfUFlUSE9OX0dFTikKIAogLlBIT05ZOiBpbnN0YWxsLXBlcmwtc2NyaXB0IGluc3RhbGwtc2gtc2NyaXB0IGluc3RhbGwtcHl0aG9uLXNjcmlwdAotaW5zdGFsbC1zaC1zY3JpcHQ6ICQoU0NSSVBUX1NIX0lOUykKK2luc3RhbGwtc2gtc2NyaXB0OiAkKFNDUklQVF9TSF9HRU4pCiAJJChJTlNUQUxMKSAkXiAnJChERVNURElSX1NRKSQoZ2l0ZXhlY19pbnN0ZGlyX1NRKScKLWluc3RhbGwtcGVybC1zY3JpcHQ6ICQoU0NSSVBUX1BFUkxfSU5TKQoraW5zdGFsbC1wZXJsLXNjcmlwdDogJChTQ1JJUFRfUEVSTF9HRU4pCiAJJChJTlNUQUxMKSAkXiAnJChERVNURElSX1NRKSQoZ2l0ZXhlY19pbnN0ZGlyX1NRKScKLWluc3RhbGwtcHl0aG9uLXNjcmlwdDogJChTQ1JJUFRfUFlUSE9OX0lOUykKK2luc3RhbGwtcHl0aG9uLXNjcmlwdDogJChTQ1JJUFRfUFlUSE9OX0dFTikKIAkkKElOU1RBTEwpICReICckKERFU1RESVJfU1EpJChnaXRleGVjX2luc3RkaXJfU1EpJwogCiAuUEhPTlk6IGNsZWFuLXBlcmwtc2NyaXB0IGNsZWFuLXNoLXNjcmlwdCBjbGVhbi1weXRob24tc2NyaXB0CkBAIC02NzcsMTMgKzY1OSwxNCBAQAogY2xlYW4tcHl0aG9uLXNjcmlwdDoKIAkkKFJNKSAkKFNDUklQVF9QWVRIT05fR0VOKQogCi1TQ1JJUFRTID0gJChTQ1JJUFRfU0hfSU5TKSBcCi0JICAkKFNDUklQVF9QRVJMX0lOUykgXAotCSAgJChTQ1JJUFRfUFlUSE9OX0lOUykgXAorU0NSSVBUUyA9ICQoU0NSSVBUX1NIX0dFTikgXAorCSAgJChTQ1JJUFRfUEVSTF9HRU4pIFwKKwkgICQoU0NSSVBUX1BZVEhPTl9HRU4pIFwKIAkgIGdpdC1pbnN0YXdlYgogCiBFVEFHU19UQVJHRVQgPSBUQUdTCiAKK0ZVWlpfT0JKUyArPSBmdXp6LWNvbW1pdC1ncmFwaC5vCiBGVVpaX09CSlMgKz0gZnV6ei1wYWNrLWhlYWRlcnMubwogRlVaWl9PQkpTICs9IGZ1enotcGFjay1pZHgubwogCkBAIC03MTIsMTEgKzY5NSwxMyBAQAogCiBQUk9HUkFNUyArPSAkKHBhdHN1YnN0ICUubyxnaXQtJSRYLCQoUFJPR1JBTV9PQkpTKSkKIAorVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtYWR2aXNlLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LWNobXRpbWUubwogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtY29uZmlnLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LWN0eXBlLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LWRhdGUubwogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtZGVsdGEubworVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtZGlyLWl0ZXJhdG9yLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LWRyb3AtY2FjaGVzLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LWR1bXAtY2FjaGUtdHJlZS5vCiBURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC1kdW1wLWZzbW9uaXRvci5vCkBAIC03MjQsMjAgKzcwOSwyNyBAQAogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtZHVtcC11bnRyYWNrZWQtY2FjaGUubwogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtZXhhbXBsZS1kZWNvcmF0ZS5vCiBURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC1nZW5yYW5kb20ubworVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtZ2VuemVyb3MubworVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtaGFzaC5vCiBURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC1oYXNobWFwLm8KK1RFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LWhhc2gtc3BlZWQubwogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtaW5kZXgtdmVyc2lvbi5vCiBURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC1qc29uLXdyaXRlci5vCiBURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC1sYXp5LWluaXQtbmFtZS1oYXNoLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LW1hdGNoLXRyZWVzLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LW1lcmdlc29ydC5vCiBURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC1ta3RlbXAubworVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3Qtb2lkbWFwLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LW9ubGluZS1jcHVzLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LXBhcnNlLW9wdGlvbnMubworVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtcGFyc2UtcGF0aHNwZWMtZmlsZS5vCiBURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC1wYXRoLXV0aWxzLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LXBrdC1saW5lLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LXByaW8tcXVldWUubworVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtcHJvZ3Jlc3MubwogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtcmVhY2gubwogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtcmVhZC1jYWNoZS5vCitURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC1yZWFkLWdyYXBoLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LXJlYWQtbWlkeC5vCiBURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC1yZWYtc3RvcmUubwogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtcmVnZXgubwpAQCAtNzQ1LDE1ICs3MzcsMTkgQEAKIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LXJldmlzaW9uLXdhbGtpbmcubwogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtcnVuLWNvbW1hbmQubwogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3Qtc2NyYXAtY2FjaGUtdHJlZS5vCitURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC1zZXJ2ZS12Mi5vCiBURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC1zaGExLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LXNoYTEtYXJyYXkubworVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3Qtc2hhMjU2Lm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LXNpZ2NoYWluLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LXN0cmNtcC1vZmZzZXQubwogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3Qtc3RyaW5nLWxpc3QubwogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3Qtc3VibW9kdWxlLWNvbmZpZy5vCiBURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC1zdWJtb2R1bGUtbmVzdGVkLXJlcG8tY29uZmlnLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LXN1YnByb2Nlc3MubworVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QtdHJhY2UyLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LXVybG1hdGNoLW5vcm1hbGl6YXRpb24ubworVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3QteG1sLWVuY29kZS5vCiBURVNUX0JVSUxUSU5TX09CSlMgKz0gdGVzdC13aWxkbWF0Y2gubwogVEVTVF9CVUlMVElOU19PQkpTICs9IHRlc3Qtd2luZG93cy1uYW1lZC1waXBlLm8KIFRFU1RfQlVJTFRJTlNfT0JKUyArPSB0ZXN0LXdyaXRlLWNhY2hlLm8KQEAgLTc3Nyw5ICs3NzMsMTEgQEAKIEJVSUxUX0lOUyArPSBnaXQtZnNjay1vYmplY3RzJFgKIEJVSUxUX0lOUyArPSBnaXQtaW5pdCRYCiBCVUlMVF9JTlMgKz0gZ2l0LW1lcmdlLXN1YnRyZWUkWAorQlVJTFRfSU5TICs9IGdpdC1yZXN0b3JlJFgKIEJVSUxUX0lOUyArPSBnaXQtc2hvdyRYCiBCVUlMVF9JTlMgKz0gZ2l0LXN0YWdlJFgKIEJVSUxUX0lOUyArPSBnaXQtc3RhdHVzJFgKK0JVSUxUX0lOUyArPSBnaXQtc3dpdGNoJFgKIEJVSUxUX0lOUyArPSBnaXQtd2hhdGNoYW5nZWQkWAogCiAjIHdoYXQgJ2FsbCcgd2lsbCBidWlsZCBhbmQgJ2luc3RhbGwnIHdpbGwgaW5zdGFsbCBpbiBnaXRleGVjZGlyLApAQCAtODIwLDEzICs4MTgsMTYgQEAKIAogR0VORVJBVEVEX0ggKz0gY29tbWFuZC1saXN0LmgKIAotTElCX0ggPSAkKHNoZWxsICQoRklORCkgLiBcCitMSUJfSCA6PSAkKHNvcnQgJChwYXRzdWJzdCAuLyUsJSwkKHNoZWxsIGdpdCBscy1maWxlcyAnKi5oJyAnOiF0LycgJzohRG9jdW1lbnRhdGlvbi8nIDI+L2Rldi9udWxsIHx8IFwKKwkkKEZJTkQpIC4gXAogCS1uYW1lIC5naXQgLXBydW5lIC1vIFwKIAktbmFtZSB0IC1wcnVuZSAtbyBcCiAJLW5hbWUgRG9jdW1lbnRhdGlvbiAtcHJ1bmUgLW8gXAotCS1uYW1lICcqLmgnIC1wcmludCkKKwktbmFtZSAnKi5oJyAtcHJpbnQpKSkKIAogTElCX09CSlMgKz0gYWJzcGF0aC5vCitMSUJfT0JKUyArPSBhZGQtaW50ZXJhY3RpdmUubworTElCX09CSlMgKz0gYWRkLXBhdGNoLm8KIExJQl9PQkpTICs9IGFkdmljZS5vCiBMSUJfT0JKUyArPSBhbGlhcy5vCiBMSUJfT0JKUyArPSBhbGxvYy5vCkBAIC04ODUsNyArODg2LDYgQEAKIExJQl9PQkpTICs9IGV3YWgvZXdhaF9ybHcubwogTElCX09CSlMgKz0gZXhlYy1jbWQubwogTElCX09CSlMgKz0gZmV0Y2gtbmVnb3RpYXRvci5vCi1MSUJfT0JKUyArPSBmZXRjaC1vYmplY3QubwogTElCX09CSlMgKz0gZmV0Y2gtcGFjay5vCiBMSUJfT0JKUyArPSBmc2NrLm8KIExJQl9PQkpTICs9IGZzbW9uaXRvci5vCkBAIC05NDksMTIgKzk0OSwxNCBAQAogTElCX09CSlMgKz0gcHJldHR5Lm8KIExJQl9PQkpTICs9IHByaW8tcXVldWUubwogTElCX09CSlMgKz0gcHJvZ3Jlc3MubworTElCX09CSlMgKz0gcHJvbWlzb3ItcmVtb3RlLm8KIExJQl9PQkpTICs9IHByb21wdC5vCiBMSUJfT0JKUyArPSBwcm90b2NvbC5vCiBMSUJfT0JKUyArPSBxdW90ZS5vCiBMSUJfT0JKUyArPSByYW5nZS1kaWZmLm8KIExJQl9PQkpTICs9IHJlYWNoYWJsZS5vCiBMSUJfT0JKUyArPSByZWFkLWNhY2hlLm8KK0xJQl9PQkpTICs9IHJlYmFzZS5vCiBMSUJfT0JKUyArPSByZWJhc2UtaW50ZXJhY3RpdmUubwogTElCX09CSlMgKz0gcmVmbG9nLXdhbGsubwogTElCX09CSlMgKz0gcmVmcy5vCkBAIC05NjYsNiArOTY4LDcgQEAKIExJQl9PQkpTICs9IHJlZi1maWx0ZXIubwogTElCX09CSlMgKz0gcmVtb3RlLm8KIExJQl9PQkpTICs9IHJlcGxhY2Utb2JqZWN0Lm8KK0xJQl9PQkpTICs9IHJlcG8tc2V0dGluZ3MubwogTElCX09CSlMgKz0gcmVwb3NpdG9yeS5vCiBMSUJfT0JKUyArPSByZXJlcmUubwogTElCX09CSlMgKz0gcmVzb2x2ZS11bmRvLm8KQEAgLTk4NCw2ICs5ODcsNyBAQAogTElCX09CSlMgKz0gc2lkZWJhbmQubwogTElCX09CSlMgKz0gc2lnY2hhaW4ubwogTElCX09CSlMgKz0gc3BsaXQtaW5kZXgubworTElCX09CSlMgKz0gc3RhYmxlLXFzb3J0Lm8KIExJQl9PQkpTICs9IHN0cmJ1Zi5vCiBMSUJfT0JKUyArPSBzdHJlYW1pbmcubwogTElCX09CSlMgKz0gc3RyaW5nLWxpc3QubwpAQCAtOTk2LDYgKzEwMDAsMTcgQEAKIExJQl9PQkpTICs9IHRocmVhZC11dGlscy5vCiBMSUJfT0JKUyArPSB0bXAtb2JqZGlyLm8KIExJQl9PQkpTICs9IHRyYWNlLm8KK0xJQl9PQkpTICs9IHRyYWNlMi5vCitMSUJfT0JKUyArPSB0cmFjZTIvdHIyX2NmZy5vCitMSUJfT0JKUyArPSB0cmFjZTIvdHIyX2NtZF9uYW1lLm8KK0xJQl9PQkpTICs9IHRyYWNlMi90cjJfZHN0Lm8KK0xJQl9PQkpTICs9IHRyYWNlMi90cjJfc2lkLm8KK0xJQl9PQkpTICs9IHRyYWNlMi90cjJfc3lzZW52Lm8KK0xJQl9PQkpTICs9IHRyYWNlMi90cjJfdGJ1Zi5vCitMSUJfT0JKUyArPSB0cmFjZTIvdHIyX3RndF9ldmVudC5vCitMSUJfT0JKUyArPSB0cmFjZTIvdHIyX3RndF9ub3JtYWwubworTElCX09CSlMgKz0gdHJhY2UyL3RyMl90Z3RfcGVyZi5vCitMSUJfT0JKUyArPSB0cmFjZTIvdHIyX3Rscy5vCiBMSUJfT0JKUyArPSB0cmFpbGVyLm8KIExJQl9PQkpTICs9IHRyYW5zcG9ydC5vCiBMSUJfT0JKUyArPSB0cmFuc3BvcnQtaGVscGVyLm8KQEAgLTEwNTMsNiArMTA2OCw3IEBACiBCVUlMVElOX09CSlMgKz0gYnVpbHRpbi9kaWZmLXRyZWUubwogQlVJTFRJTl9PQkpTICs9IGJ1aWx0aW4vZGlmZi5vCiBCVUlMVElOX09CSlMgKz0gYnVpbHRpbi9kaWZmdG9vbC5vCitCVUlMVElOX09CSlMgKz0gYnVpbHRpbi9lbnYtLWhlbHBlci5vCiBCVUlMVElOX09CSlMgKz0gYnVpbHRpbi9mYXN0LWV4cG9ydC5vCiBCVUlMVElOX09CSlMgKz0gYnVpbHRpbi9mZXRjaC1wYWNrLm8KIEJVSUxUSU5fT0JKUyArPSBidWlsdGluL2ZldGNoLm8KQEAgLTEwOTcsNyArMTExMyw2IEBACiBCVUlMVElOX09CSlMgKz0gYnVpbHRpbi9yYW5nZS1kaWZmLm8KIEJVSUxUSU5fT0JKUyArPSBidWlsdGluL3JlYWQtdHJlZS5vCiBCVUlMVElOX09CSlMgKz0gYnVpbHRpbi9yZWJhc2UubwotQlVJTFRJTl9PQkpTICs9IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5vCiBCVUlMVElOX09CSlMgKz0gYnVpbHRpbi9yZWNlaXZlLXBhY2subwogQlVJTFRJTl9PQkpTICs9IGJ1aWx0aW4vcmVmbG9nLm8KIEJVSUxUSU5fT0JKUyArPSBidWlsdGluL3JlbW90ZS5vCkBAIC0xMTEyLDExICsxMTI3LDEyIEBACiBCVUlMVElOX09CSlMgKz0gYnVpbHRpbi9yZXZlcnQubwogQlVJTFRJTl9PQkpTICs9IGJ1aWx0aW4vcm0ubwogQlVJTFRJTl9PQkpTICs9IGJ1aWx0aW4vc2VuZC1wYWNrLm8KLUJVSUxUSU5fT0JKUyArPSBidWlsdGluL3NlcnZlLm8KIEJVSUxUSU5fT0JKUyArPSBidWlsdGluL3Nob3J0bG9nLm8KIEJVSUxUSU5fT0JKUyArPSBidWlsdGluL3Nob3ctYnJhbmNoLm8KIEJVSUxUSU5fT0JKUyArPSBidWlsdGluL3Nob3ctaW5kZXgubwogQlVJTFRJTl9PQkpTICs9IGJ1aWx0aW4vc2hvdy1yZWYubworQlVJTFRJTl9PQkpTICs9IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0Lm8KK0JVSUxUSU5fT0JKUyArPSBidWlsdGluL3N0YXNoLm8KIEJVSUxUSU5fT0JKUyArPSBidWlsdGluL3N0cmlwc3BhY2UubwogQlVJTFRJTl9PQkpTICs9IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIubwogQlVJTFRJTl9PQkpTICs9IGJ1aWx0aW4vc3ltYm9saWMtcmVmLm8KQEAgLTExMzUsNiArMTE1MSwyMCBAQAogQlVJTFRJTl9PQkpTICs9IGJ1aWx0aW4vd29ya3RyZWUubwogQlVJTFRJTl9PQkpTICs9IGJ1aWx0aW4vd3JpdGUtdHJlZS5vCiAKKyMgVEhJUkRfUEFSVFlfU09VUkNFUyBpcyBhIGxpc3Qgb2YgcGF0dGVybnMgY29tcGF0aWJsZSB3aXRoIHRoZQorIyAkKGZpbHRlcikgYW5kICQoZmlsdGVyLW91dCkgZmFtaWx5IG9mIGZ1bmN0aW9ucy4gVGhleSBzcGVjaWZ5IHNvdXJjZQorIyBmaWxlcyB3aGljaCBhcmUgdGFrZW4gZnJvbSBzb21lIHRoaXJkLXBhcnR5IHNvdXJjZSB3aGVyZSB3ZSB3YW50IHRvIGJlCisjIGxlc3Mgc3RyaWN0IGFib3V0IGlzc3VlcyBzdWNoIGFzIGNvZGluZyBzdHlsZSBzbyB3ZSBkb24ndCBkaXZlcmdlIGZyb20KKyMgdXBzdHJlYW0gdW5uZWNlc3NhcmlseSAobWFraW5nIG1lcmdpbmcgaW4gZnV0dXJlIGNoYW5nZXMgZWFzaWVyKS4KK1RISVJEX1BBUlRZX1NPVVJDRVMgKz0gY29tcGF0L2luZXRfbnRvcC5jCitUSElSRF9QQVJUWV9TT1VSQ0VTICs9IGNvbXBhdC9pbmV0X3B0b24uYworVEhJUkRfUEFSVFlfU09VUkNFUyArPSBjb21wYXQvbmVkbWFsbG9jLyUKK1RISVJEX1BBUlRZX1NPVVJDRVMgKz0gY29tcGF0L29ic3RhY2suJQorVEhJUkRfUEFSVFlfU09VUkNFUyArPSBjb21wYXQvcG9sbC8lCitUSElSRF9QQVJUWV9TT1VSQ0VTICs9IGNvbXBhdC9yZWdleC8lCitUSElSRF9QQVJUWV9TT1VSQ0VTICs9IHNoYTFjb2xsaXNpb25kZXRlY3Rpb24vJQorVEhJUkRfUEFSVFlfU09VUkNFUyArPSBzaGExZGMvJQorCiBHSVRMSUJTID0gY29tbW9uLW1haW4ubyAkKExJQl9GSUxFKSAkKFhESUZGX0xJQikKIEVYVExJQlMgPQogCkBAIC0xMTQ0LDYgKzExNzQsMjkgQEAKIERDX1NIQTFfU1VCTU9EVUxFID0gYXV0bwogZW5kaWYKIAorIyBTZXQgQ0ZMQUdTLCBMREZMQUdTIGFuZCBvdGhlciAqRkxBR1MgdmFyaWFibGVzLiBUaGVzZSBtaWdodCBiZQorIyB0d2Vha2VkIGJ5IGNvbmZpZy4qIGJlbG93IGFzIHdlbGwgYXMgdGhlIGNvbW1hbmQtbGluZSwgYm90aCBvZgorIyB3aGljaCdsbCBvdmVycmlkZSB0aGVzZSBkZWZhdWx0cy4KK0NGTEFHUyA9IC1nIC1PMiAtV2FsbAorTERGTEFHUyA9CitDQ19MRF9EWU5QQVRIID0gLVdsLC1ycGF0aCwKK0JBU0lDX0NGTEFHUyA9IC1JLgorQkFTSUNfTERGTEFHUyA9CisKKyMgbGlicmFyeSBmbGFncworQVJGTEFHUyA9IHJjcworUFRIUkVBRF9DRkxBR1MgPQorCisjIEZvciB0aGUgJ3NwYXJzZScgdGFyZ2V0CitTUEFSU0VfRkxBR1MgPz0KK1NQX0VYVFJBX0ZMQUdTID0KKworIyBGb3IgdGhlICdjb2NjaWNoZWNrJyB0YXJnZXQ7IHNldHRpbmcgU1BBVENIX0JBVENIX1NJWkUgaGlnaGVyIHdpbGwKKyMgdXN1YWxseSByZXN1bHQgaW4gbGVzcyBDUFUgdXNhZ2UgYXQgdGhlIGNvc3Qgb2YgaGlnaGVyIHBlYWsgbWVtb3J5LgorIyBTZXR0aW5nIGl0IHRvIDAgd2lsbCBmZWVkIGFsbCBmaWxlcyBpbiBhIHNpbmdsZSBzcGF0Y2ggaW52b2NhdGlvbi4KK1NQQVRDSF9GTEFHUyA9IC0tYWxsLWluY2x1ZGVzIC0tcGF0Y2ggLgorU1BBVENIX0JBVENIX1NJWkUgPSAxCisKIGluY2x1ZGUgY29uZmlnLm1hay51bmFtZQogLWluY2x1ZGUgY29uZmlnLm1hay5hdXRvZ2VuCiAtaW5jbHVkZSBjb25maWcubWFrCkBAIC0xMTUyLDYgKzEyMDUsOSBAQAogaW5jbHVkZSBjb25maWcubWFrLmRldgogZW5kaWYKIAorQUxMX0NGTEFHUyA9ICQoREVWRUxPUEVSX0NGTEFHUykgJChDUFBGTEFHUykgJChDRkxBR1MpCitBTExfTERGTEFHUyA9ICQoTERGTEFHUykKKwogY29tbWEgOj0gLAogZW1wdHkgOj0KIHNwYWNlIDo9ICQoZW1wdHkpICQoZW1wdHkpCkBAIC0xMTYyLDEwICsxMjE4LDE0IEBACiBCQVNJQ19DRkxBR1MgKz0gLWZuby1vbWl0LWZyYW1lLXBvaW50ZXIKIGlmbmVxICgkKGZpbHRlciB1bmRlZmluZWQsJChTQU5JVElaRVJTKSksKQogQkFTSUNfQ0ZMQUdTICs9IC1ETk9fVU5BTElHTkVEX0xPQURTCitCQVNJQ19DRkxBR1MgKz0gLURTSEExRENfRk9SQ0VfQUxJR05FRF9BQ0NFU1MKIGVuZGlmCiBpZm5lcSAoJChmaWx0ZXIgbGVhaywkKFNBTklUSVpFUlMpKSwpCiBCQVNJQ19DRkxBR1MgKz0gLURTVVBQUkVTU19BTk5PVEFURURfTEVBS1MKIGVuZGlmCitpZm5lcSAoJChmaWx0ZXIgYWRkcmVzcywkKFNBTklUSVpFUlMpKSwpCitOT19SRUdFWCA9IE5lZWRlZEZvckFTQU4KK2VuZGlmCiBlbmRpZgogCiBpZm5kZWYgc3lzY29uZmRpcgpAQCAtMTIwMyw3ICsxMjYzLDcgQEAKIAogaWZkZWYgU0FORV9UT09MX1BBVEgKIFNBTkVfVE9PTF9QQVRIX1NRID0gJChzdWJzdCAnLCdcJycsJChTQU5FX1RPT0xfUEFUSCkpCi1CUk9LRU5fUEFUSF9GSVggPSAnc3xeXCMgQEBCUk9LRU5fUEFUSF9GSVhAQCQkfGdpdF9icm9rZW5fcGF0aF9maXggJChTQU5FX1RPT0xfUEFUSF9TUSl8JworQlJPS0VOX1BBVEhfRklYID0gJ3N8XlwjIEBAQlJPS0VOX1BBVEhfRklYQEAkJHxnaXRfYnJva2VuX3BhdGhfZml4ICIkKFNBTkVfVE9PTF9QQVRIX1NRKSJ8JwogUEFUSCA6PSAkKFNBTkVfVE9PTF9QQVRIKToke1BBVEh9CiBlbHNlCiBCUk9LRU5fUEFUSF9GSVggPSAnL15cIyBAQEJST0tFTl9QQVRIX0ZJWEBAJCQvZCcKQEAgLTEyNTMsMTYgKzEzMTMsNiBAQAogCVBUSFJFQURfTElCUyA9CiBlbmRpZgogCi1pZm5kZWYgQ0NfTERfRFlOUEFUSAotCWlmZGVmIE5PX1JfVE9fR0NDX0xJTktFUgotCQkjIFNvbWUgZ2NjIGRvZXMgbm90IGFjY2VwdCBhbmQgcGFzcyAtUiB0byB0aGUgbGlua2VyIHRvIHNwZWNpZnkKLQkJIyB0aGUgcnVudGltZSBkeW5hbWljIGxpYnJhcnkgcGF0aC4KLQkJQ0NfTERfRFlOUEFUSCA9IC1XbCwtcnBhdGgsCi0JZWxzZQotCQlDQ19MRF9EWU5QQVRIID0gLVIKLQllbmRpZgotZW5kaWYKLQogaWZkZWYgTk9fTElCR0VOX0gKIAlDT01QQVRfQ0ZMQUdTICs9IC1ETk9fTElCR0VOX0gKIAlDT01QQVRfT0JKUyArPSBjb21wYXQvYmFzZW5hbWUubwpAQCAtMTMwNSw2ICsxMzU1LDcgQEAKIAlSRU1PVEVfQ1VSTF9QUklNQVJZID0KIAlSRU1PVEVfQ1VSTF9BTElBU0VTID0KIAlSRU1PVEVfQ1VSTF9OQU1FUyA9CisJRVhDTFVERURfUFJPR1JBTVMgKz0gZ2l0LWh0dHAtZmV0Y2ggZ2l0LWh0dHAtcHVzaAogZWxzZQogCWlmZGVmIENVUkxESVIKIAkJIyBUcnkgIi1XbCwtcnBhdGg9JChDVVJMRElSKS8kKGxpYikiIGluIHN1Y2ggYSBjYXNlLgpAQCAtMTMyOSw3ICsxMzgwLDExIEBACiAJaWZlcSAiJChjdXJsX2NoZWNrKSIgIjA3MDkwOCIKIAkJaWZuZGVmIE5PX0VYUEFUCiAJCQlQUk9HUkFNX09CSlMgKz0gaHR0cC1wdXNoLm8KKwkJZWxzZQorCQkJRVhDTFVERURfUFJPR1JBTVMgKz0gZ2l0LWh0dHAtcHVzaAogCQllbmRpZgorCWVsc2UKKwkJRVhDTFVERURfUFJPR1JBTVMgKz0gZ2l0LWh0dHAtcHVzaAogCWVuZGlmCiAJY3VybF9jaGVjayA6PSAkKHNoZWxsIChlY2hvIDA3MjIwMDsgJChDVVJMX0NPTkZJRykgLS12ZXJudW0gfCBzZWQgLWUgJy9eNzBbQkNdL3MvXi8wLycpIDI+L2Rldi9udWxsIHwgc29ydCAtciB8IHNlZCAtbmUgMnApCiAJaWZlcSAiJChjdXJsX2NoZWNrKSIgIjA3MjIwMCIKQEAgLTE0MDEsNiArMTQ1Niw5IEBACiAJCUVYVExJQlMgKz0gJChJQ09OVl9MSU5LKSAtbGljb252CiAJZW5kaWYKIGVuZGlmCitpZmRlZiBJQ09OVl9PTUlUU19CT00KKwlCQVNJQ19DRkxBR1MgKz0gLURJQ09OVl9PTUlUU19CT00KK2VuZGlmCiBpZmRlZiBORUVEU19MSUJHRU4KIAlFWFRMSUJTICs9IC1sZ2VuCiBlbmRpZgpAQCAtMTU3Miw3ICsxNjMwLDEwIEBACiAJTElCX09CSlMgKz0gY29tcGF0L2luZXRfcHRvbi5vCiAJQkFTSUNfQ0ZMQUdTICs9IC1ETk9fSU5FVF9QVE9OCiBlbmRpZgotaWZuZGVmIE5PX1VOSVhfU09DS0VUUworaWZkZWYgTk9fVU5JWF9TT0NLRVRTCisJQkFTSUNfQ0ZMQUdTICs9IC1ETk9fVU5JWF9TT0NLRVRTCisJRVhDTFVERURfUFJPR1JBTVMgKz0gZ2l0LWNyZWRlbnRpYWwtY2FjaGUgZ2l0LWNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbgorZWxzZQogCUxJQl9PQkpTICs9IHVuaXgtc29ja2V0Lm8KIAlQUk9HUkFNX09CSlMgKz0gY3JlZGVudGlhbC1jYWNoZS5vCiAJUFJPR1JBTV9PQkpTICs9IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5vCkBAIC0xNjQ2LDYgKzE3MDcsMTkgQEAKIGVuZGlmCiBlbmRpZgogCitpZmRlZiBPUEVOU1NMX1NIQTI1NgorCUVYVExJQlMgKz0gJChMSUJfNF9DUllQVE8pCisJQkFTSUNfQ0ZMQUdTICs9IC1EU0hBMjU2X09QRU5TU0wKK2Vsc2UKK2lmZGVmIEdDUllQVF9TSEEyNTYKKwlCQVNJQ19DRkxBR1MgKz0gLURTSEEyNTZfR0NSWVBUCisJRVhUTElCUyArPSAtbGdjcnlwdAorZWxzZQorCUxJQl9PQkpTICs9IHNoYTI1Ni9ibG9jay9zaGEyNTYubworCUJBU0lDX0NGTEFHUyArPSAtRFNIQTI1Nl9CTEsKK2VuZGlmCitlbmRpZgorCiBpZmRlZiBTSEExX01BWF9CTE9DS19TSVpFCiAJTElCX09CSlMgKz0gY29tcGF0L3NoYTEtY2h1bmtlZC5vCiAJQkFTSUNfQ0ZMQUdTICs9IC1EU0hBMV9NQVhfQkxPQ0tfU0laRT0iJChTSEExX01BWF9CTE9DS19TSVpFKSIKQEAgLTE2NjMsNyArMTczNyw2IEBACiBlbmRpZgogaWZkZWYgSU5URVJOQUxfUVNPUlQKIAlDT01QQVRfQ0ZMQUdTICs9IC1ESU5URVJOQUxfUVNPUlQKLQlDT01QQVRfT0JKUyArPSBjb21wYXQvcXNvcnQubwogZW5kaWYKIGlmZGVmIEhBVkVfSVNPX1FTT1JUX1MKIAlDT01QQVRfQ0ZMQUdTICs9IC1ESEFWRV9JU09fUVNPUlRfUwpAQCAtMTc3Myw2ICsxODQ2LDE2IEBACiAJQkFTSUNfQ0ZMQUdTICs9IC1ESEFWRV9XUEdNUFRSCiBlbmRpZgogCitpZmRlZiBGSUxFTk9fSVNfQV9NQUNSTworCUNPTVBBVF9DRkxBR1MgKz0gLURGSUxFTk9fSVNfQV9NQUNSTworCUNPTVBBVF9PQkpTICs9IGNvbXBhdC9maWxlbm8ubworZW5kaWYKKworaWZkZWYgTkVFRF9BQ0NFU1NfUk9PVF9IQU5ETEVSCisJQ09NUEFUX0NGTEFHUyArPSAtRE5FRURfQUNDRVNTX1JPT1RfSEFORExFUgorCUNPTVBBVF9PQkpTICs9IGNvbXBhdC9hY2Nlc3MubworZW5kaWYKKwogaWZlcSAoJChUQ0xUS19QQVRIKSwpCiBOT19UQ0xUSyA9IE5vVGhhbmtzCiBlbmRpZgpAQCAtMTgxMCw4ICsxODkzLDkgQEAKIAlRVUlFVF9NU0dGTVQgICA9IEBlY2hvICcgICAnIE1TR0ZNVCAkQDsKIAlRVUlFVF9HQ09WICAgICA9IEBlY2hvICcgICAnIEdDT1YgJEA7CiAJUVVJRVRfU1AgICAgICAgPSBAZWNobyAnICAgJyBTUCAkPDsKLQlRVUlFVF9IRFIgICAgICA9IEBlY2hvICcgICAnIEhEUiAkPDsKKwlRVUlFVF9IRFIgICAgICA9IEBlY2hvICcgICAnIEhEUiAkKDw6aGNjPWgpOwogCVFVSUVUX1JDICAgICAgID0gQGVjaG8gJyAgICcgUkMgJEA7CisJUVVJRVRfU1BBVENIICAgPSBAZWNobyAnICAgJyBTUEFUQ0ggJDw7CiAJUVVJRVRfU1VCRElSMCAgPSArQHN1YmRpcj0KIAlRVUlFVF9TVUJESVIxICA9IDskKE5PX1NVQkRJUikgZWNobyAnICAgJyBTVUJESVIgJCRzdWJkaXI7IFwKIAkJCSAkKE1BS0UpICQoUFJJTlRfRElSKSAtQyAkJHN1YmRpcgpAQCAtMjA3Myw3ICsyMTU3LDkgQEAKIGNvbW1hbmQtbGlzdC5oOiBnZW5lcmF0ZS1jbWRsaXN0LnNoIGNvbW1hbmQtbGlzdC50eHQKIAogY29tbWFuZC1saXN0Lmg6ICQod2lsZGNhcmQgRG9jdW1lbnRhdGlvbi9naXQqLnR4dCkgRG9jdW1lbnRhdGlvbi8qY29uZmlnLnR4dCBEb2N1bWVudGF0aW9uL2NvbmZpZy8qLnR4dAotCSQoUVVJRVRfR0VOKSQoU0hFTExfUEFUSCkgLi9nZW5lcmF0ZS1jbWRsaXN0LnNoIGNvbW1hbmQtbGlzdC50eHQgPiRAKyAmJiBtdiAkQCsgJEAKKwkkKFFVSUVUX0dFTikkKFNIRUxMX1BBVEgpIC4vZ2VuZXJhdGUtY21kbGlzdC5zaCBcCisJCSQocGF0c3Vic3QgJSwtLWV4Y2x1ZGUtcHJvZ3JhbSAlLCQoRVhDTFVERURfUFJPR1JBTVMpKSBcCisJCWNvbW1hbmQtbGlzdC50eHQgPiRAKyAmJiBtdiAkQCsgJEAKIAogU0NSSVBUX0RFRklORVMgPSAkKFNIRUxMX1BBVEhfU1EpOiQoRElGRl9TUSk6JChHSVRfVkVSU0lPTik6XAogCSQobG9jYWxlZGlyX1NRKTokKE5PX0NVUkwpOiQoVVNFX0dFVFRFWFRfU0NIRU1FKTokKFNBTkVfVE9PTF9QQVRIX1NRKTpcCkBAIC0yMzIxLDcgKzI0MDcsNyBAQAogIyBzaG91bGQgX25vdF8gYmUgaW5jbHVkZWQgaGVyZSwgc2luY2UgdGhleSBhcmUgbmVjZXNzYXJ5IGV2ZW4gd2hlbgogIyBidWlsZGluZyBhbiBvYmplY3QgZm9yIHRoZSBmaXJzdCB0aW1lLgogCi0kKE9CSkVDVFMpOiAkKExJQl9IKQorJChPQkpFQ1RTKTogJChMSUJfSCkgJChHRU5FUkFURURfSCkKIGVuZGlmCiAKIGV4ZWMtY21kLnNwIGV4ZWMtY21kLnMgZXhlYy1jbWQubzogR0lULVBSRUZJWApAQCAtMjM0NywxMCArMjQzMywxMCBAQAogZ2V0dGV4dC5zcCBnZXR0ZXh0LnMgZ2V0dGV4dC5vOiBFWFRSQV9DUFBGTEFHUyA9IFwKIAktREdJVF9MT0NBTEVfUEFUSD0nIiQobG9jYWxlZGlyX3JlbGF0aXZlX1NRKSInCiAKLWh0dHAtcHVzaC5zcCBodHRwLnNwIGh0dHAtd2Fsa2VyLnNwIHJlbW90ZS1jdXJsLnNwIGltYXAtc2VuZC5zcDogU1BBUlNFX0ZMQUdTICs9IFwKK2h0dHAtcHVzaC5zcCBodHRwLnNwIGh0dHAtd2Fsa2VyLnNwIHJlbW90ZS1jdXJsLnNwIGltYXAtc2VuZC5zcDogU1BfRVhUUkFfRkxBR1MgKz0gXAogCS1EQ1VSTF9ESVNBQkxFX1RZUEVDSEVDSwogCi1wYWNrLXJldmluZGV4LnNwOiBTUEFSU0VfRkxBR1MgKz0gLVduby1tZW1jcHktbWF4LWNvdW50CitwYWNrLXJldmluZGV4LnNwOiBTUF9FWFRSQV9GTEFHUyArPSAtV25vLW1lbWNweS1tYXgtY291bnQKIAogaWZkZWYgTk9fRVhQQVQKIGh0dHAtd2Fsa2VyLnNwIGh0dHAtd2Fsa2VyLnMgaHR0cC13YWxrZXIubzogRVhUUkFfQ1BQRkxBR1MgPSAtRE5PX0VYUEFUCkBAIC0yMzY0LDcgKzI0NTAsNyBAQAogaWZkZWYgVVNFX05FRF9BTExPQ0FUT1IKIGNvbXBhdC9uZWRtYWxsb2MvbmVkbWFsbG9jLnNwIGNvbXBhdC9uZWRtYWxsb2MvbmVkbWFsbG9jLm86IEVYVFJBX0NQUEZMQUdTID0gXAogCS1ETkRFQlVHIC1EUkVQTEFDRV9TWVNURU1fQUxMT0NBVE9SCi1jb21wYXQvbmVkbWFsbG9jL25lZG1hbGxvYy5zcDogU1BBUlNFX0ZMQUdTICs9IC1Xbm8tbm9uLXBvaW50ZXItbnVsbAorY29tcGF0L25lZG1hbGxvYy9uZWRtYWxsb2Muc3A6IFNQX0VYVFJBX0ZMQUdTICs9IC1Xbm8tbm9uLXBvaW50ZXItbnVsbAogZW5kaWYKIAogZ2l0LSUkWDogJS5vIEdJVC1MREZMQUdTICQoR0lUTElCUykKQEAgLTI0MDYsNiArMjQ5MiwxNCBAQAogCiBleHBvcnQgREVGQVVMVF9FRElUT1IgREVGQVVMVF9QQUdFUgogCitEb2N1bWVudGF0aW9uL0dJVC1FWENMVURFRC1QUk9HUkFNUzogRk9SQ0UKKwlARVhDTFVERUQ9J0VYQ0xVREVEX1BST0dSQU1TIDo9ICQoRVhDTFVERURfUFJPR1JBTVMpJzsgXAorCSAgICBpZiB0ZXN0IHgiJCRFWENMVURFRCIgIT0gXAorCQl4ImBjYXQgRG9jdW1lbnRhdGlvbi9HSVQtRVhDTFVERUQtUFJPR1JBTVMgMj4vZGV2L251bGxgIiA7IHRoZW4gXAorCQllY2hvID4mMiAiICAgICogbmV3IGRvY3VtZW50YXRpb24gZmxhZ3MiOyBcCisJCWVjaG8gIiQkRVhDTFVERUQiID5Eb2N1bWVudGF0aW9uL0dJVC1FWENMVURFRC1QUk9HUkFNUzsgXAorICAgICAgICAgICAgZmkKKwogLlBIT05ZOiBkb2MgbWFuIG1hbi1wZXJsIGh0bWwgaW5mbyBwZGYKIGRvYzogbWFuLXBlcmwKIAkkKE1BS0UpIC1DIERvY3VtZW50YXRpb24gYWxsCkBAIC0yNTI4LDYgKzI2MjIsNyBAQAogCQktbyBcKCAtbmFtZSAndHJhc2gqJyAtdHlwZSBkIC1wcnVuZSBcKSBcCiAJCS1vIFwoIC1uYW1lICcqLltoY1NdJyAtdHlwZSBmIC1wcmludCBcKSBcCiAJCS1vIFwoIC1uYW1lICcqLnNoJyAtdHlwZSBmIC1wcmludCBcKSBcCisJCXwgc2VkIC1lICdzfF5cLi98fCcgXAogCSkKIAogJChFVEFHU19UQVJHRVQpOiBGT1JDRQpAQCAtMjY0NCwxMyArMjczOSwxMiBAQAogdGVzdF9iaW5kaXJfcHJvZ3JhbXMgOj0gJChwYXRzdWJzdCAlLGJpbi13cmFwcGVycy8lLCQoQklORElSX1BST0dSQU1TX05FRURfWCkgJChCSU5ESVJfUFJPR1JBTVNfTk9fWCkgJChURVNUX1BST0dSQU1TX05FRURfWCkpCiAKIGFsbDo6ICQoVEVTVF9QUk9HUkFNUykgJCh0ZXN0X2JpbmRpcl9wcm9ncmFtcykKLWFsbDo6ICQoTk9fSU5TVEFMTCkKIAogYmluLXdyYXBwZXJzLyU6IHdyYXAtZm9yLWJpbi5zaAogCUBta2RpciAtcCBiaW4td3JhcHBlcnMKIAkkKFFVSUVUX0dFTilzZWQgLWUgJzFzfCMhLiovc2h8IyEkKFNIRUxMX1BBVEhfU1EpfCcgXAogCSAgICAgLWUgJ3N8QEBCVUlMRF9ESVJAQHwkKHNoZWxsIHB3ZCl8JyBcCi0JICAgICAtZSAnc3xAQFBST0dAQHwkKHBhdHN1YnN0IHRlc3QtJSx0L2hlbHBlci90ZXN0LSUsJChARikpfCcgPCAkPCA+ICRAICYmIFwKKwkgICAgIC1lICdzfEBAUFJPR0BAfCQocGF0c3Vic3QgdGVzdC0lLHQvaGVscGVyL3Rlc3QtJSQoWCksJChARikpJChwYXRzdWJzdCBnaXQlLCQoWCksJChmaWx0ZXIgJChARiksJChCSU5ESVJfUFJPR1JBTVNfTkVFRF9YKSkpfCcgPCAkPCA+ICRAICYmIFwKIAljaG1vZCAreCAkQAogCiAjIEdOVSBtYWtlIHN1cHBvcnRzIGV4cG9ydGluZyBhbGwgdmFyaWFibGVzIGJ5ICJleHBvcnQiIHdpdGhvdXQgcGFyYW1ldGVycy4KQEAgLTI2ODgsMTggKzI3ODIsMjUgQEAKIAogJChTUF9PQkopOiAlLnNwOiAlLmMgR0lULUNGTEFHUyBGT1JDRQogCSQoUVVJRVRfU1ApY2djYyAtbm8tY29tcGlsZSAkKEFMTF9DRkxBR1MpICQoRVhUUkFfQ1BQRkxBR1MpIFwKLQkJJChTUEFSU0VfRkxBR1MpICQ8CisJCSQoU1BBUlNFX0ZMQUdTKSAkKFNQX0VYVFJBX0ZMQUdTKSAkPAogCiAuUEhPTlk6IHNwYXJzZSAkKFNQX09CSikKIHNwYXJzZTogJChTUF9PQkopCiAKLUdFTl9IRFJTIDo9IGNvbW1hbmQtbGlzdC5oIHVuaWNvZGUtd2lkdGguaAotRVhDRVBUX0hEUlMgOj0gJChHRU5fSERSUykgY29tcGF0JSB4ZGlmZiUKLUNIS19IRFJTID0gJChmaWx0ZXItb3V0ICQoRVhDRVBUX0hEUlMpLCQocGF0c3Vic3QgLi8lLCUsJChMSUJfSCkpKQorRVhDRVBUX0hEUlMgOj0gY29tbWFuZC1saXN0LmggdW5pY29kZS13aWR0aC5oIGNvbXBhdC8lIHhkaWZmLyUKK2lmbmRlZiBHQ1JZUFRfU0hBMjU2CisJRVhDRVBUX0hEUlMgKz0gc2hhMjU2L2djcnlwdC5oCitlbmRpZgorQ0hLX0hEUlMgPSAkKGZpbHRlci1vdXQgJChFWENFUFRfSERSUyksJChMSUJfSCkpCiBIQ08gPSAkKHBhdHN1YnN0ICUuaCwlLmhjbywkKENIS19IRFJTKSkKK0hDQyA9ICQoSENPOmhjbz1oY2MpCiAKLSQoSENPKTogJS5oY286ICUuaCBGT1JDRQotCSQoUVVJRVRfSERSKSQoQ0MpIC1pbmNsdWRlIGdpdC1jb21wYXQtdXRpbC5oIC1JLiAtbyAvZGV2L251bGwgLWMgLXhjICQ8CislLmhjYzogJS5oCisJQGVjaG8gJyNpbmNsdWRlICJnaXQtY29tcGF0LXV0aWwuaCInID4kQAorCUBlY2hvICcjaW5jbHVkZSAiJDwiJyA+PiRACisKKyQoSENPKTogJS5oY286ICUuaGNjIEZPUkNFCisJJChRVUlFVF9IRFIpJChDQykgJChBTExfQ0ZMQUdTKSAtbyAvZGV2L251bGwgLWMgLXhjICQ8CiAKIC5QSE9OWTogaGRyLWNoZWNrICQoSENPKQogaGRyLWNoZWNrOiAkKEhDTykKQEAgLTI3MTgsMjEgKzI4MTksMTkgQEAKIAkJZXhpdCAxOyBcCiAJZmkKIAotQ19TT1VSQ0VTID0gJChwYXRzdWJzdCAlLm8sJS5jLCQoQ19PQkopKQotaWZkZWYgRENfU0hBMV9TVUJNT0RVTEUKLUNPQ0NJX1NPVVJDRVMgPSAkKGZpbHRlci1vdXQgc2hhMWNvbGxpc2lvbmRldGVjdGlvbi8lLCQoQ19TT1VSQ0VTKSkKLWVsc2UKLUNPQ0NJX1NPVVJDRVMgPSAkKGZpbHRlci1vdXQgc2hhMWRjLyUsJChDX1NPVVJDRVMpKQotZW5kaWYKK0ZPVU5EX0NfU09VUkNFUyA9ICQoZmlsdGVyICUuYywkKHNoZWxsICQoRklORF9TT1VSQ0VfRklMRVMpKSkKK0NPQ0NJX1NPVVJDRVMgPSAkKGZpbHRlci1vdXQgJChUSElSRF9QQVJUWV9TT1VSQ0VTKSwkKEZPVU5EX0NfU09VUkNFUykpCiAKICUuY29jY2kucGF0Y2g6ICUuY29jY2kgJChDT0NDSV9TT1VSQ0VTKQotCUBlY2hvICcgICAgJyBTUEFUQ0ggJDw7IFwKLQlyZXQ9MDsgXAotCWZvciBmIGluICQoQ09DQ0lfU09VUkNFUyk7IGRvIFwKLQkJJChTUEFUQ0gpIC0tc3AtZmlsZSAkPCAkJGYgJChTUEFUQ0hfRkxBR1MpIHx8IFwKLQkJCXsgcmV0PSQkPzsgYnJlYWs7IH07IFwKLQlkb25lID4kQCsgMj4kQC5sb2c7IFwKLQlpZiB0ZXN0ICQkcmV0ICE9IDA7IFwKKwkkKFFVSUVUX1NQQVRDSCkgXAorCWlmIHRlc3QgJChTUEFUQ0hfQkFUQ0hfU0laRSkgPSAwOyB0aGVuIFwKKwkJbGltaXQ9OyBcCisJZWxzZSBcCisJCWxpbWl0PSctbiAkKFNQQVRDSF9CQVRDSF9TSVpFKSc7IFwKKwlmaTsgXAorCWlmICEgZWNobyAkKENPQ0NJX1NPVVJDRVMpIHwgeGFyZ3MgJCRsaW1pdCBcCisJCSQoU1BBVENIKSAtLXNwLWZpbGUgJDwgJChTUEFUQ0hfRkxBR1MpIFwKKwkJPiRAKyAyPiRALmxvZzsgXAogCXRoZW4gXAogCQljYXQgJEAubG9nOyBcCiAJCWV4aXQgMTsgXApAQCAtMjc4OCw2ICsyODg3LDMzIEBACiAJJChJTlNUQUxMKSAkKEFMTF9QUk9HUkFNUykgJyQoREVTVERJUl9TUSkkKGdpdGV4ZWNfaW5zdGRpcl9TUSknCiAJJChJTlNUQUxMKSAtbSA2NDQgJChTQ1JJUFRfTElCKSAnJChERVNURElSX1NRKSQoZ2l0ZXhlY19pbnN0ZGlyX1NRKScKIAkkKElOU1RBTEwpICQoaW5zdGFsbF9iaW5kaXJfcHJvZ3JhbXMpICckKERFU1RESVJfU1EpJChiaW5kaXJfU1EpJworaWZkZWYgTVNWQworCSMgV2UgRE8gTk9UIGluc3RhbGwgdGhlIGluZGl2aWR1YWwgZm9vLm8ucGRiIGZpbGVzIGJlY2F1c2UgdGhleQorCSMgaGF2ZSBhbHJlYWR5IGJlZW4gcm9sbGVkIHVwIGludG8gdGhlIGV4ZSdzIHBkYiBmaWxlLgorCSMgV2UgRE8gTk9UIGhhdmUgcGRiIGZpbGVzIGZvciB0aGUgYnVpbHRpbiBjb21tYW5kcyAobGlrZSBnaXQtc3RhdHVzLmV4ZSkKKwkjIGJlY2F1c2UgaXQgaXMganVzdCBhIGNvcHkvaGFyZGxpbmsgb2YgZ2l0LmV4ZSwgcmF0aGVyIHRoYW4gYSB1bmlxdWUgYmluYXJ5LgorCSQoSU5TVEFMTCkgZ2l0LnBkYiAnJChERVNURElSX1NRKSQoYmluZGlyX1NRKScKKwkkKElOU1RBTEwpIGdpdC1zaGVsbC5wZGIgJyQoREVTVERJUl9TUSkkKGJpbmRpcl9TUSknCisJJChJTlNUQUxMKSBnaXQtdXBsb2FkLXBhY2sucGRiICckKERFU1RESVJfU1EpJChiaW5kaXJfU1EpJworCSQoSU5TVEFMTCkgZ2l0LWNyZWRlbnRpYWwtc3RvcmUucGRiICckKERFU1RESVJfU1EpJChnaXRleGVjX2luc3RkaXJfU1EpJworCSQoSU5TVEFMTCkgZ2l0LWRhZW1vbi5wZGIgJyQoREVTVERJUl9TUSkkKGdpdGV4ZWNfaW5zdGRpcl9TUSknCisJJChJTlNUQUxMKSBnaXQtZmFzdC1pbXBvcnQucGRiICckKERFU1RESVJfU1EpJChnaXRleGVjX2luc3RkaXJfU1EpJworCSQoSU5TVEFMTCkgZ2l0LWh0dHAtYmFja2VuZC5wZGIgJyQoREVTVERJUl9TUSkkKGdpdGV4ZWNfaW5zdGRpcl9TUSknCisJJChJTlNUQUxMKSBnaXQtaHR0cC1mZXRjaC5wZGIgJyQoREVTVERJUl9TUSkkKGdpdGV4ZWNfaW5zdGRpcl9TUSknCisJJChJTlNUQUxMKSBnaXQtaHR0cC1wdXNoLnBkYiAnJChERVNURElSX1NRKSQoZ2l0ZXhlY19pbnN0ZGlyX1NRKScKKwkkKElOU1RBTEwpIGdpdC1pbWFwLXNlbmQucGRiICckKERFU1RESVJfU1EpJChnaXRleGVjX2luc3RkaXJfU1EpJworCSQoSU5TVEFMTCkgZ2l0LXJlbW90ZS1odHRwLnBkYiAnJChERVNURElSX1NRKSQoZ2l0ZXhlY19pbnN0ZGlyX1NRKScKKwkkKElOU1RBTEwpIGdpdC1yZW1vdGUtdGVzdHN2bi5wZGIgJyQoREVTVERJUl9TUSkkKGdpdGV4ZWNfaW5zdGRpcl9TUSknCisJJChJTlNUQUxMKSBnaXQtc2gtaTE4bi0tZW52c3Vic3QucGRiICckKERFU1RESVJfU1EpJChnaXRleGVjX2luc3RkaXJfU1EpJworCSQoSU5TVEFMTCkgZ2l0LXNob3ctaW5kZXgucGRiICckKERFU1RESVJfU1EpJChnaXRleGVjX2luc3RkaXJfU1EpJworaWZuZGVmIERFQlVHCisJJChJTlNUQUxMKSAkKHZjcGtnX3JlbF9iaW4pLyouZGxsICckKERFU1RESVJfU1EpJChiaW5kaXJfU1EpJworCSQoSU5TVEFMTCkgJCh2Y3BrZ19yZWxfYmluKS8qLnBkYiAnJChERVNURElSX1NRKSQoYmluZGlyX1NRKScKK2Vsc2UKKwkkKElOU1RBTEwpICQodmNwa2dfZGJnX2JpbikvKi5kbGwgJyQoREVTVERJUl9TUSkkKGJpbmRpcl9TUSknCisJJChJTlNUQUxMKSAkKHZjcGtnX2RiZ19iaW4pLyoucGRiICckKERFU1RESVJfU1EpJChiaW5kaXJfU1EpJworZW5kaWYKK2VuZGlmCiAJJChNQUtFKSAtQyB0ZW1wbGF0ZXMgREVTVERJUj0nJChERVNURElSX1NRKScgaW5zdGFsbAogCSQoSU5TVEFMTCkgLWQgLW0gNzU1ICckKERFU1RESVJfU1EpJChtZXJnZXRvb2xzX2luc3RkaXJfU1EpJwogCSQoSU5TVEFMTCkgLW0gNjQ0IG1lcmdldG9vbHMvKiAnJChERVNURElSX1NRKSQobWVyZ2V0b29sc19pbnN0ZGlyX1NRKScKQEAgLTI5MjYsNiArMzA1MiwyMCBAQAogCUBmYWxzZQogLlBIT05ZOiBycG0KIAoraWZuZXEgKCQoSU5DTFVERV9ETExTX0lOX0FSVElGQUNUUyksKQorT1RIRVJfUFJPR1JBTVMgKz0gJChzaGVsbCBlY2hvICouZGxsIHQvaGVscGVyLyouZGxsKQorZW5kaWYKKworYXJ0aWZhY3RzLXRhcjo6ICQoQUxMX1BST0dSQU1TKSAkKFNDUklQVF9MSUIpICQoQlVJTFRfSU5TKSAkKE9USEVSX1BST0dSQU1TKSBcCisJCUdJVC1CVUlMRC1PUFRJT05TICQoVEVTVF9QUk9HUkFNUykgJCh0ZXN0X2JpbmRpcl9wcm9ncmFtcykgXAorCQkkKE1PRklMRVMpCisJJChRVUlFVF9TVUJESVIwKXRlbXBsYXRlcyAkKFFVSUVUX1NVQkRJUjEpIFwKKwkJU0hFTExfUEFUSD0nJChTSEVMTF9QQVRIX1NRKScgUEVSTF9QQVRIPSckKFBFUkxfUEFUSF9TUSknCisJdGVzdCAtbiAiJChBUlRJRkFDVFNfRElSRUNUT1JZKSIKKwlta2RpciAtcCAiJChBUlRJRkFDVFNfRElSRUNUT1JZKSIKKwkkKFRBUikgY3pmICIkKEFSVElGQUNUU19ESVJFQ1RPUlkpL2FydGlmYWN0cy50YXIuZ3oiICReIHRlbXBsYXRlcy9ibHQvCisuUEhPTlk6IGFydGlmYWN0cy10YXIKKwogaHRtbGRvY3MgPSBnaXQtaHRtbGRvY3MtJChHSVRfVkVSU0lPTikKIG1hbnBhZ2VzID0gZ2l0LW1hbnBhZ2VzLSQoR0lUX1ZFUlNJT04pCiAuUEhPTlk6IGRpc3QtZG9jIGRpc3RjbGVhbgpAQCAtMjk2NywxNSArMzEwNywxNyBAQAogCSQoUk0pICQoT0JKRUNUUykKIAkkKFJNKSAkKExJQl9GSUxFKSAkKFhESUZGX0xJQikgJChWQ1NTVk5fTElCKQogCSQoUk0pICQoQUxMX1BST0dSQU1TKSAkKFNDUklQVF9MSUIpICQoQlVJTFRfSU5TKSBnaXQkWAotCSQoUk0pICQoVEVTVF9QUk9HUkFNUykgJChOT19JTlNUQUxMKQorCSQoUk0pICQoVEVTVF9QUk9HUkFNUykKIAkkKFJNKSAkKEZVWlpfUFJPR1JBTVMpCisJJChSTSkgJChIQ0MpCiAJJChSTSkgLXIgYmluLXdyYXBwZXJzICQoZGVwX2RpcnMpCiAJJChSTSkgLXIgcG8vYnVpbGQvCi0JJChSTSkgKi5weWMgKi5weW8gKi8qLnB5YyAqLyoucHlvIGNvbW1hbmQtbGlzdC5oICQoRVRBR1NfVEFSR0VUKSB0YWdzIGNzY29wZSoKKwkkKFJNKSAqLnB5YyAqLnB5byAqLyoucHljICovKi5weW8gJChHRU5FUkFURURfSCkgJChFVEFHU19UQVJHRVQpIHRhZ3MgY3Njb3BlKgogCSQoUk0pIC1yICQoR0lUX1RBUk5BTUUpIC5kb2MtdG1wLWRpcgogCSQoUk0pICQoR0lUX1RBUk5BTUUpLnRhci5neiBnaXQtY29yZV8kKEdJVF9WRVJTSU9OKS0qLnRhci5negogCSQoUk0pICQoaHRtbGRvY3MpLnRhci5neiAkKG1hbnBhZ2VzKS50YXIuZ3oKIAkkKE1BS0UpIC1DIERvY3VtZW50YXRpb24vIGNsZWFuCisJJChSTSkgRG9jdW1lbnRhdGlvbi9HSVQtRVhDTFVERUQtUFJPR1JBTVMKIGlmbmRlZiBOT19QRVJMCiAJJChNQUtFKSAtQyBnaXR3ZWIgY2xlYW4KIAkkKFJNKSAtciBwZXJsL2J1aWxkLwpAQCAtMjk4OSw2ICszMTMxLDE5IEBACiAJJChSTSkgR0lULVZFUlNJT04tRklMRSBHSVQtQ0ZMQUdTIEdJVC1MREZMQUdTIEdJVC1CVUlMRC1PUFRJT05TCiAJJChSTSkgR0lULVVTRVItQUdFTlQgR0lULVBSRUZJWAogCSQoUk0pIEdJVC1TQ1JJUFQtREVGSU5FUyBHSVQtUEVSTC1ERUZJTkVTIEdJVC1QRVJMLUhFQURFUiBHSVQtUFlUSE9OLVZBUlMKK2lmZGVmIE1TVkMKKwkkKFJNKSAkKHBhdHN1YnN0ICUubywlLm8ucGRiLCQoT0JKRUNUUykpCisJJChSTSkgJChwYXRzdWJzdCAlLmV4ZSwlLnBkYiwkKE9USEVSX1BST0dSQU1TKSkKKwkkKFJNKSAkKHBhdHN1YnN0ICUuZXhlLCUuaW9iaiwkKE9USEVSX1BST0dSQU1TKSkKKwkkKFJNKSAkKHBhdHN1YnN0ICUuZXhlLCUuaXBkYiwkKE9USEVSX1BST0dSQU1TKSkKKwkkKFJNKSAkKHBhdHN1YnN0ICUuZXhlLCUucGRiLCQoUFJPR1JBTVMpKQorCSQoUk0pICQocGF0c3Vic3QgJS5leGUsJS5pb2JqLCQoUFJPR1JBTVMpKQorCSQoUk0pICQocGF0c3Vic3QgJS5leGUsJS5pcGRiLCQoUFJPR1JBTVMpKQorCSQoUk0pICQocGF0c3Vic3QgJS5leGUsJS5wZGIsJChURVNUX1BST0dSQU1TKSkKKwkkKFJNKSAkKHBhdHN1YnN0ICUuZXhlLCUuaW9iaiwkKFRFU1RfUFJPR1JBTVMpKQorCSQoUk0pICQocGF0c3Vic3QgJS5leGUsJS5pcGRiLCQoVEVTVF9QUk9HUkFNUykpCisJJChSTSkgY29tcGF0L3ZjYnVpbGQvTVNWQy1ERUZTLUdFTgorZW5kaWYKIAogLlBIT05ZOiBhbGwgaW5zdGFsbCBwcm9maWxlLWNsZWFuIGNvY2NpY2xlYW4gY2xlYW4gc3RyaXAKIC5QSE9OWTogc2hlbGxfY29tcGF0aWJpbGl0eV90ZXN0IHBsZWFzZV9zZXRfU0hFTExfUEFUSF90b19hX21vcmVfbW9kZXJuX3NoZWxsCkBAIC0zMDA1LDEzICszMTYwLDEzIEBACiAuUEhPTlk6IGNoZWNrLWRvY3MKIGNoZWNrLWRvY3M6OgogCSQoTUFLRSkgLUMgRG9jdW1lbnRhdGlvbiBsaW50LWRvY3MKLQlAKGZvciB2IGluICQoQUxMX0NPTU1BTkRTKTsgXAorCUAoZm9yIHYgaW4gJChwYXRzdWJzdCAlJFgsJSwkKEFMTF9DT01NQU5EUykpOyBcCiAJZG8gXAogCQljYXNlICIkJHYiIGluIFwKIAkJZ2l0LW1lcmdlLW9jdG9wdXMgfCBnaXQtbWVyZ2Utb3VycyB8IGdpdC1tZXJnZS1yZWN1cnNpdmUgfCBcCiAJCWdpdC1tZXJnZS1yZXNvbHZlIHwgZ2l0LW1lcmdlLXN1YnRyZWUgfCBcCiAJCWdpdC1mc2NrLW9iamVjdHMgfCBnaXQtaW5pdC1kYiB8IFwKLQkJZ2l0LXJlbW90ZS0qIHwgZ2l0LXN0YWdlIHwgXAorCQlnaXQtcmVtb3RlLSogfCBnaXQtc3RhZ2UgfCBnaXQtbGVnYWN5LSogfCBcCiAJCWdpdC0/Ki0tPyogKSBjb250aW51ZSA7OyBcCiAJCWVzYWMgOyBcCiAJCXRlc3QgLWYgIkRvY3VtZW50YXRpb24vJCR2LnR4dCIgfHwgXApAQCAtMzAyNiwxNSArMzE4MSwxNiBAQAogCSggXAogCQlzZWQgLWUgJzEsL14jIyMgY29tbWFuZCBsaXN0L2QnIFwKIAkJICAgIC1lICcvXiMvZCcgXAorCQkgICAgLWUgJy9ndWlkZSQkL2QnIFwKIAkJICAgIC1lICdzL1sgCV0uKi8vJyBcCiAJCSAgICAtZSAncy9eL2xpc3RlZCAvJyBjb21tYW5kLWxpc3QudHh0OyBcCiAJCSQoTUFLRSkgLUMgRG9jdW1lbnRhdGlvbiBwcmludC1tYW4xIHwgXAogCQlncmVwICdcLnR4dCQkJyB8IFwKLQkJc2VkIC1lICdzfERvY3VtZW50YXRpb24vfGRvY3VtZW50ZWQgfCcgXAorCQlzZWQgLWUgJ3N8Xnxkb2N1bWVudGVkIHwnIFwKIAkJICAgIC1lICdzL1wudHh0Ly8nOyBcCiAJKSB8IHdoaWxlIHJlYWQgaG93IGNtZDsgXAogCWRvIFwKLQkJY2FzZSAiICQoQUxMX0NPTU1BTkRTKSAiIGluIFwKKwkJY2FzZSAiICQocGF0c3Vic3QgJSRYLCUsJChBTExfQ09NTUFORFMpICQoRVhDTFVERURfUFJPR1JBTVMpKSAiIGluIFwKIAkJKiIgJCRjbWQgIiopCTs7IFwKIAkJKikgZWNobyAicmVtb3ZlZCBidXQgJCRob3c6ICQkY21kIiA7OyBcCiAJCWVzYWM7IFwKQEAgLTMwNzcsNiArMzIzMywxMSBAQAogCSQoTUFLRSkgQ0ZMQUdTPSIkKENPVkVSQUdFX0NGTEFHUykiIExERkxBR1M9IiQoQ09WRVJBR0VfTERGTEFHUykiIFwKIAkJREVGQVVMVF9URVNUX1RBUkdFVD10ZXN0IC1qMSB0ZXN0CiAKK2NvdmVyYWdlLXByb3ZlOiBjb3ZlcmFnZS1jbGVhbi1yZXN1bHRzIGNvdmVyYWdlLWNvbXBpbGUKKwkkKE1BS0UpIENGTEFHUz0iJChDT1ZFUkFHRV9DRkxBR1MpIiBMREZMQUdTPSIkKENPVkVSQUdFX0xERkxBR1MpIiBcCisJCURFRkFVTFRfVEVTVF9UQVJHRVQ9cHJvdmUgR0lUX1BST1ZFX09QVFM9IiQoR0lUX1BST1ZFX09QVFMpIC1qMSIgXAorCQktajEgdGVzdAorCiBjb3ZlcmFnZS1yZXBvcnQ6CiAJJChRVUlFVF9HQ09WKWZvciBkaXIgaW4gJChvYmplY3RfZGlycyk7IGRvIFwKIAkJJChHQ09WKSAkKEdDT1ZGTEFHUykgLS1vYmplY3QtZGlyZWN0b3J5PSQkZGlyICQkZGlyKi5jIHx8IGV4aXQ7IFwKQEAgLTMxMDMsNyArMzI2NCw3IEBACiAjIEFuIGV4YW1wbGUgY29tbWFuZCB0byBidWlsZCBhZ2FpbnN0IGxpYkZ1enplciBmcm9tIExMVk0gNC4wLjA6CiAjCiAjIG1ha2UgQ0M9Y2xhbmcgQ1hYPWNsYW5nKysgXAotIyAgICAgIEZVWlpfQ1hYRkxBR1M9Ii1mc2FuaXRpemUtY292ZXJhZ2U9dHJhY2UtcGMtZ3VhcmQgLWZzYW5pdGl6ZT1hZGRyZXNzIiBcCisjICAgICAgQ0ZMQUdTPSItZnNhbml0aXplLWNvdmVyYWdlPXRyYWNlLXBjLWd1YXJkIC1mc2FuaXRpemU9YWRkcmVzcyIgXAogIyAgICAgIExJQl9GVVpaSU5HX0VOR0lORT0vdXNyL2xpYi9sbHZtLTQuMC9saWIvbGliRnV6emVyLmEgXAogIyAgICAgIGZ1enotYWxsCiAjCmRpZmYgLS1naXQgYS9SRUFETUUubWQgYi9SRUFETUUubWQKaW5kZXggZjkyMGE0Mi4uOWQ0NTY0YyAxMDA2NDQKLS0tIGEvUkVBRE1FLm1kCisrKyBiL1JFQURNRS5tZApAQCAtMSwzICsxLDUgQEAKK1shW0J1aWxkIFN0YXR1c10oaHR0cHM6Ly9kZXYuYXp1cmUuY29tL2dpdC9naXQvX2FwaXMvYnVpbGQvc3RhdHVzL2dpdC5naXQpXShodHRwczovL2Rldi5henVyZS5jb20vZ2l0L2dpdC9fYnVpbGQvbGF0ZXN0P2RlZmluaXRpb25JZD0xMSkKKwogR2l0IC0gZmFzdCwgc2NhbGFibGUsIGRpc3RyaWJ1dGVkIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIApAQCAtMTcsNyArMTksNyBAQAogCiBTZWUgW0RvY3VtZW50YXRpb24vZ2l0dHV0b3JpYWwudHh0XVtdIHRvIGdldCBzdGFydGVkLCB0aGVuIHNlZQogW0RvY3VtZW50YXRpb24vZ2l0ZXZlcnlkYXkudHh0XVtdIGZvciBhIHVzZWZ1bCBtaW5pbXVtIHNldCBvZiBjb21tYW5kcywgYW5kCi1Eb2N1bWVudGF0aW9uL2dpdC08Y29tbWFuZG5hbWU+LnR4dCBmb3IgZG9jdW1lbnRhdGlvbiBvZiBlYWNoIGNvbW1hbmQuCitgRG9jdW1lbnRhdGlvbi9naXQtPGNvbW1hbmRuYW1lPi50eHRgIGZvciBkb2N1bWVudGF0aW9uIG9mIGVhY2ggY29tbWFuZC4KIElmIGdpdCBoYXMgYmVlbiBjb3JyZWN0bHkgaW5zdGFsbGVkLCB0aGVuIHRoZSB0dXRvcmlhbCBjYW4gYWxzbyBiZQogcmVhZCB3aXRoIGBtYW4gZ2l0dHV0b3JpYWxgIG9yIGBnaXQgaGVscCB0dXRvcmlhbGAsIGFuZCB0aGUKIGRvY3VtZW50YXRpb24gb2YgZWFjaCBjb21tYW5kIHdpdGggYG1hbiBnaXQtPGNvbW1hbmRuYW1lPmAgb3IgYGdpdCBoZWxwCkBAIC0zMyw3ICszNSw3IEBACiBbRG9jdW1lbnRhdGlvbi9TdWJtaXR0aW5nUGF0Y2hlc11bXSBmb3IgaW5zdHJ1Y3Rpb25zIG9uIHBhdGNoIHN1Ym1pc3Npb24pLgogVG8gc3Vic2NyaWJlIHRvIHRoZSBsaXN0LCBzZW5kIGFuIGVtYWlsIHdpdGgganVzdCAic3Vic2NyaWJlIGdpdCIgaW4KIHRoZSBib2R5IHRvIG1ham9yZG9tb0B2Z2VyLmtlcm5lbC5vcmcuIFRoZSBtYWlsaW5nIGxpc3QgYXJjaGl2ZXMgYXJlCi1hdmFpbGFibGUgYXQgPGh0dHBzOi8vcHVibGljLWluYm94Lm9yZy9naXQvPiwKK2F2YWlsYWJsZSBhdCA8aHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvZ2l0Lz4sCiA8aHR0cDovL21hcmMuaW5mby8/bD1naXQ+IGFuZCBvdGhlciBhcmNoaXZhbCBzaXRlcy4KIAogSXNzdWVzIHdoaWNoIGFyZSBzZWN1cml0eSByZWxldmFudCBzaG91bGQgYmUgZGlzY2xvc2VkIHByaXZhdGVseSB0bwpkaWZmIC0tZ2l0IGEvUmVsTm90ZXMgYi9SZWxOb3RlcwppbmRleCBiNmZlNmM3Li4zNzAyNjlkIDEyMDAwMAotLS0gYS9SZWxOb3RlcworKysgYi9SZWxOb3RlcwpAQCAtMSArMSBAQAotRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjIwLjIudHh0ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorRG9jdW1lbnRhdGlvbi9SZWxOb3Rlcy8yLjI2LjAudHh0ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvYWJzcGF0aC5jIGIvYWJzcGF0aC5jCmluZGV4IDk4NTc5ODUuLjZmMTVhNDEgMTAwNjQ0Ci0tLSBhL2Fic3BhdGguYworKysgYi9hYnNwYXRoLmMKQEAgLTIwMiwyMiArMjAyLDYgQEAKIAlyZXR1cm4gcmV0dmFsOwogfQogCi0vKgotICogUmVzb2x2ZSBgcGF0aGAgaW50byBhbiBhYnNvbHV0ZSwgY2xlYW5lZC11cCBwYXRoLiBUaGUgcmV0dXJuIHZhbHVlCi0gKiBjb21lcyBmcm9tIGEgc2hhcmVkIGJ1ZmZlci4KLSAqLwotY29uc3QgY2hhciAqcmVhbF9wYXRoKGNvbnN0IGNoYXIgKnBhdGgpCi17Ci0Jc3RhdGljIHN0cnVjdCBzdHJidWYgcmVhbHBhdGggPSBTVFJCVUZfSU5JVDsKLQlyZXR1cm4gc3RyYnVmX3JlYWxwYXRoKCZyZWFscGF0aCwgcGF0aCwgMSk7Ci19Ci0KLWNvbnN0IGNoYXIgKnJlYWxfcGF0aF9pZl92YWxpZChjb25zdCBjaGFyICpwYXRoKQotewotCXN0YXRpYyBzdHJ1Y3Qgc3RyYnVmIHJlYWxwYXRoID0gU1RSQlVGX0lOSVQ7Ci0JcmV0dXJuIHN0cmJ1Zl9yZWFscGF0aCgmcmVhbHBhdGgsIHBhdGgsIDApOwotfQotCiBjaGFyICpyZWFsX3BhdGhkdXAoY29uc3QgY2hhciAqcGF0aCwgaW50IGRpZV9vbl9lcnJvcikKIHsKIAlzdHJ1Y3Qgc3RyYnVmIHJlYWxwYXRoID0gU1RSQlVGX0lOSVQ7CkBAIC0yMzMsNyArMjE3LDcgQEAKIAogLyoKICAqIFVzZSB0aGlzIHRvIGdldCBhbiBhYnNvbHV0ZSBwYXRoIGZyb20gYSByZWxhdGl2ZSBvbmUuIElmIHlvdSB3YW50Ci0gKiB0byByZXNvbHZlIGxpbmtzLCB5b3Ugc2hvdWxkIHVzZSByZWFsX3BhdGguCisgKiB0byByZXNvbHZlIGxpbmtzLCB5b3Ugc2hvdWxkIHVzZSBzdHJidWZfcmVhbHBhdGguCiAgKi8KIGNvbnN0IGNoYXIgKmFic29sdXRlX3BhdGgoY29uc3QgY2hhciAqcGF0aCkKIHsKZGlmZiAtLWdpdCBhL2FkZC1pbnRlcmFjdGl2ZS5jIGIvYWRkLWludGVyYWN0aXZlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGE5YmY4NQotLS0gL2Rldi9udWxsCisrKyBiL2FkZC1pbnRlcmFjdGl2ZS5jCkBAIC0wLDAgKzEsMTE3NiBAQAorI2luY2x1ZGUgImNhY2hlLmgiCisjaW5jbHVkZSAiYWRkLWludGVyYWN0aXZlLmgiCisjaW5jbHVkZSAiY29sb3IuaCIKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJkaWZmY29yZS5oIgorI2luY2x1ZGUgInJldmlzaW9uLmgiCisjaW5jbHVkZSAicmVmcy5oIgorI2luY2x1ZGUgInN0cmluZy1saXN0LmgiCisjaW5jbHVkZSAibG9ja2ZpbGUuaCIKKyNpbmNsdWRlICJkaXIuaCIKKyNpbmNsdWRlICJydW4tY29tbWFuZC5oIgorCitzdGF0aWMgdm9pZCBpbml0X2NvbG9yKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgYWRkX2lfc3RhdGUgKnMsCisJCSAgICAgICBjb25zdCBjaGFyICpzbG90X25hbWUsIGNoYXIgKmRzdCwKKwkJICAgICAgIGNvbnN0IGNoYXIgKmRlZmF1bHRfY29sb3IpCit7CisJY2hhciAqa2V5ID0geHN0cmZtdCgiY29sb3IuaW50ZXJhY3RpdmUuJXMiLCBzbG90X25hbWUpOworCWNvbnN0IGNoYXIgKnZhbHVlOworCisJaWYgKCFzLT51c2VfY29sb3IpCisJCWRzdFswXSA9ICdcMCc7CisJZWxzZSBpZiAocmVwb19jb25maWdfZ2V0X3ZhbHVlKHIsIGtleSwgJnZhbHVlKSB8fAorCQkgY29sb3JfcGFyc2UodmFsdWUsIGRzdCkpCisJCXN0cmxjcHkoZHN0LCBkZWZhdWx0X2NvbG9yLCBDT0xPUl9NQVhMRU4pOworCisJZnJlZShrZXkpOworfQorCit2b2lkIGluaXRfYWRkX2lfc3RhdGUoc3RydWN0IGFkZF9pX3N0YXRlICpzLCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcikKK3sKKwljb25zdCBjaGFyICp2YWx1ZTsKKworCXMtPnIgPSByOworCisJaWYgKHJlcG9fY29uZmlnX2dldF92YWx1ZShyLCAiY29sb3IuaW50ZXJhY3RpdmUiLCAmdmFsdWUpKQorCQlzLT51c2VfY29sb3IgPSAtMTsKKwllbHNlCisJCXMtPnVzZV9jb2xvciA9CisJCQlnaXRfY29uZmlnX2NvbG9yYm9vbCgiY29sb3IuaW50ZXJhY3RpdmUiLCB2YWx1ZSk7CisJcy0+dXNlX2NvbG9yID0gd2FudF9jb2xvcihzLT51c2VfY29sb3IpOworCisJaW5pdF9jb2xvcihyLCBzLCAiaGVhZGVyIiwgcy0+aGVhZGVyX2NvbG9yLCBHSVRfQ09MT1JfQk9MRCk7CisJaW5pdF9jb2xvcihyLCBzLCAiaGVscCIsIHMtPmhlbHBfY29sb3IsIEdJVF9DT0xPUl9CT0xEX1JFRCk7CisJaW5pdF9jb2xvcihyLCBzLCAicHJvbXB0Iiwgcy0+cHJvbXB0X2NvbG9yLCBHSVRfQ09MT1JfQk9MRF9CTFVFKTsKKwlpbml0X2NvbG9yKHIsIHMsICJlcnJvciIsIHMtPmVycm9yX2NvbG9yLCBHSVRfQ09MT1JfQk9MRF9SRUQpOworCWluaXRfY29sb3IociwgcywgInJlc2V0Iiwgcy0+cmVzZXRfY29sb3IsIEdJVF9DT0xPUl9SRVNFVCk7CisJaW5pdF9jb2xvcihyLCBzLCAiZnJhZ2luZm8iLCBzLT5mcmFnaW5mb19jb2xvciwKKwkJICAgZGlmZl9nZXRfY29sb3Iocy0+dXNlX2NvbG9yLCBESUZGX0ZSQUdJTkZPKSk7CisJaW5pdF9jb2xvcihyLCBzLCAiY29udGV4dCIsIHMtPmNvbnRleHRfY29sb3IsCisJCWRpZmZfZ2V0X2NvbG9yKHMtPnVzZV9jb2xvciwgRElGRl9DT05URVhUKSk7CisJaW5pdF9jb2xvcihyLCBzLCAib2xkIiwgcy0+ZmlsZV9vbGRfY29sb3IsCisJCWRpZmZfZ2V0X2NvbG9yKHMtPnVzZV9jb2xvciwgRElGRl9GSUxFX09MRCkpOworCWluaXRfY29sb3IociwgcywgIm5ldyIsIHMtPmZpbGVfbmV3X2NvbG9yLAorCQlkaWZmX2dldF9jb2xvcihzLT51c2VfY29sb3IsIERJRkZfRklMRV9ORVcpKTsKKworCUZSRUVfQU5EX05VTEwocy0+aW50ZXJhY3RpdmVfZGlmZl9maWx0ZXIpOworCWdpdF9jb25maWdfZ2V0X3N0cmluZygiaW50ZXJhY3RpdmUuZGlmZmZpbHRlciIsCisJCQkgICAgICAmcy0+aW50ZXJhY3RpdmVfZGlmZl9maWx0ZXIpOworCisJRlJFRV9BTkRfTlVMTChzLT5pbnRlcmFjdGl2ZV9kaWZmX2FsZ29yaXRobSk7CisJZ2l0X2NvbmZpZ19nZXRfc3RyaW5nKCJkaWZmLmFsZ29yaXRobSIsCisJCQkgICAgICAmcy0+aW50ZXJhY3RpdmVfZGlmZl9hbGdvcml0aG0pOworCisJZ2l0X2NvbmZpZ19nZXRfYm9vbCgiaW50ZXJhY3RpdmUuc2luZ2xla2V5IiwgJnMtPnVzZV9zaW5nbGVfa2V5KTsKK30KKwordm9pZCBjbGVhcl9hZGRfaV9zdGF0ZShzdHJ1Y3QgYWRkX2lfc3RhdGUgKnMpCit7CisJRlJFRV9BTkRfTlVMTChzLT5pbnRlcmFjdGl2ZV9kaWZmX2ZpbHRlcik7CisJRlJFRV9BTkRfTlVMTChzLT5pbnRlcmFjdGl2ZV9kaWZmX2FsZ29yaXRobSk7CisJbWVtc2V0KHMsIDAsIHNpemVvZigqcykpOworCXMtPnVzZV9jb2xvciA9IC0xOworfQorCisvKgorICogQSAicHJlZml4IGl0ZW0gbGlzdCIgaXMgYSBsaXN0IG9mIGl0ZW1zIHRoYXQgYXJlIGlkZW50aWZpZWQgYnkgYSBzdHJpbmcsIGFuZAorICogYSB1bmlxdWUgcHJlZml4IChpZiBhbnkpIGlzIGRldGVybWluZWQgZm9yIGVhY2ggaXRlbS4KKyAqCisgKiBJdCBpcyBpbXBsZW1lbnRlZCBpbiB0aGUgZm9ybSBvZiBhIHBhaXIgb2YgYHN0cmluZ19saXN0YHMsIHRoZSBmaXJzdCBvbmUKKyAqIGR1cGxpY2F0aW5nIHRoZSBzdHJpbmdzLCB3aXRoIHRoZSBgdXRpbGAgZmllbGQgcG9pbnRpbmcgYXQgYSBzdHJ1Y3R1cmUgd2hvc2UKKyAqIGZpcnN0IGZpZWxkIG11c3QgYmUgYHNpemVfdCBwcmVmaXhfbGVuZ3RoYC4KKyAqCisgKiBUaGF0IGBwcmVmaXhfbGVuZ3RoYCBmaWVsZCB3aWxsIGJlIGNvbXB1dGVkIGJ5IGBmaW5kX3VuaXF1ZV9wcmVmaXhlcygpYDsgSXQKKyAqIHdpbGwgYmUgc2V0IHRvIHplcm8gaWYgbm8gdmFsaWQsIHVuaXF1ZSBwcmVmaXggY291bGQgYmUgZm91bmQuCisgKgorICogVGhlIHNlY29uZCBgc3RyaW5nX2xpc3RgIGlzIGNhbGxlZCBgc29ydGVkYCBhbmQgZG9lcyBfbm90XyBkdXBsaWNhdGUgdGhlCisgKiBzdHJpbmdzIGJ1dCBzaW1wbHkgcmV1c2VzIHRoZSBmaXJzdCBvbmUncywgd2l0aCB0aGUgYHV0aWxgIGZpZWxkIHBvaW50aW5nIGF0CisgKiB0aGUgYHN0cmluZ19pdGVtX2xpc3RgIG9mIHRoZSBmaXJzdCBgc3RyaW5nX2xpc3RgLiBJdCAgd2lsbCBiZSBwb3B1bGF0ZWQgYW5kCisgKiBzb3J0ZWQgYnkgYGZpbmRfdW5pcXVlX3ByZWZpeGVzKClgLgorICovCitzdHJ1Y3QgcHJlZml4X2l0ZW1fbGlzdCB7CisJc3RydWN0IHN0cmluZ19saXN0IGl0ZW1zOworCXN0cnVjdCBzdHJpbmdfbGlzdCBzb3J0ZWQ7CisJaW50ICpzZWxlY3RlZDsgLyogZm9yIG11bHRpLXNlbGVjdGlvbnMgKi8KKwlzaXplX3QgbWluX2xlbmd0aCwgbWF4X2xlbmd0aDsKK307CisjZGVmaW5lIFBSRUZJWF9JVEVNX0xJU1RfSU5JVCBcCisJeyBTVFJJTkdfTElTVF9JTklUX0RVUCwgU1RSSU5HX0xJU1RfSU5JVF9OT0RVUCwgTlVMTCwgMSwgNCB9CisKK3N0YXRpYyB2b2lkIHByZWZpeF9pdGVtX2xpc3RfY2xlYXIoc3RydWN0IHByZWZpeF9pdGVtX2xpc3QgKmxpc3QpCit7CisJc3RyaW5nX2xpc3RfY2xlYXIoJmxpc3QtPml0ZW1zLCAxKTsKKwlzdHJpbmdfbGlzdF9jbGVhcigmbGlzdC0+c29ydGVkLCAwKTsKKwlGUkVFX0FORF9OVUxMKGxpc3QtPnNlbGVjdGVkKTsKK30KKworc3RhdGljIHZvaWQgZXh0ZW5kX3ByZWZpeF9sZW5ndGgoc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKnAsCisJCQkJIGNvbnN0IGNoYXIgKm90aGVyX3N0cmluZywgc2l6ZV90IG1heF9sZW5ndGgpCit7CisJc2l6ZV90ICpsZW4gPSBwLT51dGlsOworCisJaWYgKCEqbGVuIHx8IG1lbWNtcChwLT5zdHJpbmcsIG90aGVyX3N0cmluZywgKmxlbikpCisJCXJldHVybjsKKworCWZvciAoOzspIHsKKwkJY2hhciBjID0gcC0+c3RyaW5nWypsZW5dOworCisJCS8qCisJCSAqIElzIGBwYCBhIHN0cmljdCBwcmVmaXggb2YgYG90aGVyYD8gT3IgaGF2ZSB3ZSBleGhhdXN0ZWQgdGhlCisJCSAqIG1heGltYWwgbGVuZ3RoIG9mIHRoZSBwcmVmaXg/IE9yIGlzIHRoZSBjdXJyZW50IGNoYXJhY3RlciBhCisJCSAqIG11bHRpLWJ5dGUgVVRGLTggb25lPyBJZiBzbywgdGhlcmUgaXMgbm8gdmFsaWQsIHVuaXF1ZQorCQkgKiBwcmVmaXguCisJCSAqLworCQlpZiAoIWMgfHwgKysqbGVuID4gbWF4X2xlbmd0aCB8fCAhaXNhc2NpaShjKSkgeworCQkJKmxlbiA9IDA7CisJCQlicmVhazsKKwkJfQorCisJCWlmIChjICE9IG90aGVyX3N0cmluZ1sqbGVuIC0gMV0pCisJCQlicmVhazsKKwl9Cit9CisKK3N0YXRpYyB2b2lkIGZpbmRfdW5pcXVlX3ByZWZpeGVzKHN0cnVjdCBwcmVmaXhfaXRlbV9saXN0ICpsaXN0KQoreworCXNpemVfdCBpOworCisJaWYgKGxpc3QtPnNvcnRlZC5uciA9PSBsaXN0LT5pdGVtcy5ucikKKwkJcmV0dXJuOworCisJc3RyaW5nX2xpc3RfY2xlYXIoJmxpc3QtPnNvcnRlZCwgMCk7CisJLyogQXZvaWQgcmVhbGxvY2F0aW5nIGluY3JlbWVudGFsbHkgKi8KKwlsaXN0LT5zb3J0ZWQuaXRlbXMgPSB4bWFsbG9jKHN0X211bHQoc2l6ZW9mKCpsaXN0LT5zb3J0ZWQuaXRlbXMpLAorCQkJCQkgICAgIGxpc3QtPml0ZW1zLm5yKSk7CisJbGlzdC0+c29ydGVkLm5yID0gbGlzdC0+c29ydGVkLmFsbG9jID0gbGlzdC0+aXRlbXMubnI7CisKKwlmb3IgKGkgPSAwOyBpIDwgbGlzdC0+aXRlbXMubnI7IGkrKykgeworCQlsaXN0LT5zb3J0ZWQuaXRlbXNbaV0uc3RyaW5nID0gbGlzdC0+aXRlbXMuaXRlbXNbaV0uc3RyaW5nOworCQlsaXN0LT5zb3J0ZWQuaXRlbXNbaV0udXRpbCA9IGxpc3QtPml0ZW1zLml0ZW1zICsgaTsKKwl9CisKKwlzdHJpbmdfbGlzdF9zb3J0KCZsaXN0LT5zb3J0ZWQpOworCisJZm9yIChpID0gMDsgaSA8IGxpc3QtPnNvcnRlZC5ucjsgaSsrKSB7CisJCXN0cnVjdCBzdHJpbmdfbGlzdF9pdGVtICpzb3J0ZWRfaXRlbSA9IGxpc3QtPnNvcnRlZC5pdGVtcyArIGk7CisJCXN0cnVjdCBzdHJpbmdfbGlzdF9pdGVtICppdGVtID0gc29ydGVkX2l0ZW0tPnV0aWw7CisJCXNpemVfdCAqbGVuID0gaXRlbS0+dXRpbDsKKworCQkqbGVuID0gMDsKKwkJd2hpbGUgKCpsZW4gPCBsaXN0LT5taW5fbGVuZ3RoKSB7CisJCQljaGFyIGMgPSBpdGVtLT5zdHJpbmdbKCpsZW4pKytdOworCisJCQlpZiAoIWMgfHwgIWlzYXNjaWkoYykpIHsKKwkJCQkqbGVuID0gMDsKKwkJCQlicmVhazsKKwkJCX0KKwkJfQorCisJCWlmIChpID4gMCkKKwkJCWV4dGVuZF9wcmVmaXhfbGVuZ3RoKGl0ZW0sIHNvcnRlZF9pdGVtWy0xXS5zdHJpbmcsCisJCQkJCSAgICAgbGlzdC0+bWF4X2xlbmd0aCk7CisJCWlmIChpICsgMSA8IGxpc3QtPnNvcnRlZC5ucikKKwkJCWV4dGVuZF9wcmVmaXhfbGVuZ3RoKGl0ZW0sIHNvcnRlZF9pdGVtWzFdLnN0cmluZywKKwkJCQkJICAgICBsaXN0LT5tYXhfbGVuZ3RoKTsKKwl9Cit9CisKK3N0YXRpYyBzc2l6ZV90IGZpbmRfdW5pcXVlKGNvbnN0IGNoYXIgKnN0cmluZywgc3RydWN0IHByZWZpeF9pdGVtX2xpc3QgKmxpc3QpCit7CisJaW50IGluZGV4ID0gc3RyaW5nX2xpc3RfZmluZF9pbnNlcnRfaW5kZXgoJmxpc3QtPnNvcnRlZCwgc3RyaW5nLCAxKTsKKwlzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqaXRlbTsKKworCWlmIChsaXN0LT5pdGVtcy5uciAhPSBsaXN0LT5zb3J0ZWQubnIpCisJCUJVRygicHJlZml4X2l0ZW1fbGlzdCBpbiBpbmNvbnNpc3RlbnQgc3RhdGUgKCUiUFJJdU1BWAorCQkgICAgIiB2cyAlIlBSSXVNQVgiKSIsCisJCSAgICAodWludG1heF90KWxpc3QtPml0ZW1zLm5yLCAodWludG1heF90KWxpc3QtPnNvcnRlZC5ucik7CisKKwlpZiAoaW5kZXggPCAwKQorCQlpdGVtID0gbGlzdC0+c29ydGVkLml0ZW1zWy0xIC0gaW5kZXhdLnV0aWw7CisJZWxzZSBpZiAoaW5kZXggPiAwICYmCisJCSBzdGFydHNfd2l0aChsaXN0LT5zb3J0ZWQuaXRlbXNbaW5kZXggLSAxXS5zdHJpbmcsIHN0cmluZykpCisJCXJldHVybiAtMTsKKwllbHNlIGlmIChpbmRleCArIDEgPCBsaXN0LT5zb3J0ZWQubnIgJiYKKwkJIHN0YXJ0c193aXRoKGxpc3QtPnNvcnRlZC5pdGVtc1tpbmRleCArIDFdLnN0cmluZywgc3RyaW5nKSkKKwkJcmV0dXJuIC0xOworCWVsc2UgaWYgKGluZGV4IDwgbGlzdC0+c29ydGVkLm5yKQorCQlpdGVtID0gbGlzdC0+c29ydGVkLml0ZW1zW2luZGV4XS51dGlsOworCWVsc2UKKwkJcmV0dXJuIC0xOworCXJldHVybiBpdGVtIC0gbGlzdC0+aXRlbXMuaXRlbXM7Cit9CisKK3N0cnVjdCBsaXN0X29wdGlvbnMgeworCWludCBjb2x1bW5zOworCWNvbnN0IGNoYXIgKmhlYWRlcjsKKwl2b2lkICgqcHJpbnRfaXRlbSkoaW50IGksIGludCBzZWxlY3RlZCwgc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKml0ZW0sCisJCQkgICB2b2lkICpwcmludF9pdGVtX2RhdGEpOworCXZvaWQgKnByaW50X2l0ZW1fZGF0YTsKK307CisKK3N0YXRpYyB2b2lkIGxpc3Qoc3RydWN0IGFkZF9pX3N0YXRlICpzLCBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmxpc3QsIGludCAqc2VsZWN0ZWQsCisJCSBzdHJ1Y3QgbGlzdF9vcHRpb25zICpvcHRzKQoreworCWludCBpLCBsYXN0X2xmID0gMDsKKworCWlmICghbGlzdC0+bnIpCisJCXJldHVybjsKKworCWlmIChvcHRzLT5oZWFkZXIpCisJCWNvbG9yX2ZwcmludGZfbG4oc3Rkb3V0LCBzLT5oZWFkZXJfY29sb3IsCisJCQkJICIlcyIsIG9wdHMtPmhlYWRlcik7CisKKwlmb3IgKGkgPSAwOyBpIDwgbGlzdC0+bnI7IGkrKykgeworCQlvcHRzLT5wcmludF9pdGVtKGksIHNlbGVjdGVkID8gc2VsZWN0ZWRbaV0gOiAwLCBsaXN0LT5pdGVtcyArIGksCisJCQkJIG9wdHMtPnByaW50X2l0ZW1fZGF0YSk7CisKKwkJaWYgKChvcHRzLT5jb2x1bW5zKSAmJiAoKGkgKyAxKSAlIChvcHRzLT5jb2x1bW5zKSkpIHsKKwkJCXB1dGNoYXIoJ1x0Jyk7CisJCQlsYXN0X2xmID0gMDsKKwkJfQorCQllbHNlIHsKKwkJCXB1dGNoYXIoJ1xuJyk7CisJCQlsYXN0X2xmID0gMTsKKwkJfQorCX0KKworCWlmICghbGFzdF9sZikKKwkJcHV0Y2hhcignXG4nKTsKK30KK3N0cnVjdCBsaXN0X2FuZF9jaG9vc2Vfb3B0aW9ucyB7CisJc3RydWN0IGxpc3Rfb3B0aW9ucyBsaXN0X29wdHM7CisKKwljb25zdCBjaGFyICpwcm9tcHQ7CisJZW51bSB7CisJCVNJTkdMRVRPTiA9ICgxPDwwKSwKKwkJSU1NRURJQVRFID0gKDE8PDEpLAorCX0gZmxhZ3M7CisJdm9pZCAoKnByaW50X2hlbHApKHN0cnVjdCBhZGRfaV9zdGF0ZSAqcyk7Cit9OworCisjZGVmaW5lIExJU1RfQU5EX0NIT09TRV9FUlJPUiAoLTEpCisjZGVmaW5lIExJU1RfQU5EX0NIT09TRV9RVUlUICAoLTIpCisKKy8qCisgKiBSZXR1cm5zIHRoZSBzZWxlY3RlZCBpbmRleCBpbiBzaW5nbGV0b24gbW9kZSwgdGhlIG51bWJlciBvZiBzZWxlY3RlZCBpdGVtcworICogb3RoZXJ3aXNlLgorICoKKyAqIElmIGFuIGVycm9yIG9jY3VycmVkLCByZXR1cm5zIGBMSVNUX0FORF9DSE9PU0VfRVJST1JgLiBVcG9uIEVPRiwKKyAqIGBMSVNUX0FORF9DSE9PU0VfUVVJVGAgaXMgcmV0dXJuZWQuCisgKi8KK3N0YXRpYyBzc2l6ZV90IGxpc3RfYW5kX2Nob29zZShzdHJ1Y3QgYWRkX2lfc3RhdGUgKnMsCisJCQkgICAgICAgc3RydWN0IHByZWZpeF9pdGVtX2xpc3QgKml0ZW1zLAorCQkJICAgICAgIHN0cnVjdCBsaXN0X2FuZF9jaG9vc2Vfb3B0aW9ucyAqb3B0cykKK3sKKwlpbnQgc2luZ2xldG9uID0gb3B0cy0+ZmxhZ3MgJiBTSU5HTEVUT047CisJaW50IGltbWVkaWF0ZSA9IG9wdHMtPmZsYWdzICYgSU1NRURJQVRFOworCisJc3RydWN0IHN0cmJ1ZiBpbnB1dCA9IFNUUkJVRl9JTklUOworCXNzaXplX3QgcmVzID0gc2luZ2xldG9uID8gTElTVF9BTkRfQ0hPT1NFX0VSUk9SIDogMDsKKworCWlmICghc2luZ2xldG9uKSB7CisJCWZyZWUoaXRlbXMtPnNlbGVjdGVkKTsKKwkJQ0FMTE9DX0FSUkFZKGl0ZW1zLT5zZWxlY3RlZCwgaXRlbXMtPml0ZW1zLm5yKTsKKwl9CisKKwlpZiAoc2luZ2xldG9uICYmICFpbW1lZGlhdGUpCisJCUJVRygic2luZ2xldG9uIHJlcXVpcmVzIGltbWVkaWF0ZSIpOworCisJZmluZF91bmlxdWVfcHJlZml4ZXMoaXRlbXMpOworCisJZm9yICg7OykgeworCQljaGFyICpwOworCisJCXN0cmJ1Zl9yZXNldCgmaW5wdXQpOworCisJCWxpc3QocywgJml0ZW1zLT5pdGVtcywgaXRlbXMtPnNlbGVjdGVkLCAmb3B0cy0+bGlzdF9vcHRzKTsKKworCQljb2xvcl9mcHJpbnRmKHN0ZG91dCwgcy0+cHJvbXB0X2NvbG9yLCAiJXMiLCBvcHRzLT5wcm9tcHQpOworCQlmcHV0cyhzaW5nbGV0b24gPyAiPiAiIDogIj4+ICIsIHN0ZG91dCk7CisJCWZmbHVzaChzdGRvdXQpOworCisJCWlmIChzdHJidWZfZ2V0bGluZSgmaW5wdXQsIHN0ZGluKSA9PSBFT0YpIHsKKwkJCXB1dGNoYXIoJ1xuJyk7CisJCQlpZiAoaW1tZWRpYXRlKQorCQkJCXJlcyA9IExJU1RfQU5EX0NIT09TRV9RVUlUOworCQkJYnJlYWs7CisJCX0KKwkJc3RyYnVmX3RyaW0oJmlucHV0KTsKKworCQlpZiAoIWlucHV0LmxlbikKKwkJCWJyZWFrOworCisJCWlmICghc3RyY21wKGlucHV0LmJ1ZiwgIj8iKSkgeworCQkJb3B0cy0+cHJpbnRfaGVscChzKTsKKwkJCWNvbnRpbnVlOworCQl9CisKKwkJcCA9IGlucHV0LmJ1ZjsKKwkJZm9yICg7OykgeworCQkJc2l6ZV90IHNlcCA9IHN0cmNzcG4ocCwgIiBcdFxyXG4sIik7CisJCQlpbnQgY2hvb3NlID0gMTsKKwkJCS8qIGBmcm9tYCBpcyBpbmNsdXNpdmUsIGB0b2AgaXMgZXhjbHVzaXZlICovCisJCQlzc2l6ZV90IGZyb20gPSAtMSwgdG8gPSAtMTsKKworCQkJaWYgKCFzZXApIHsKKwkJCQlpZiAoISpwKQorCQkJCQlicmVhazsKKwkJCQlwKys7CisJCQkJY29udGludWU7CisJCQl9CisKKwkJCS8qIElucHV0IHRoYXQgYmVnaW5zIHdpdGggJy0nOyBkZS1zZWxlY3QgKi8KKwkJCWlmICgqcCA9PSAnLScpIHsKKwkJCQljaG9vc2UgPSAwOworCQkJCXArKzsKKwkJCQlzZXAtLTsKKwkJCX0KKworCQkJaWYgKHNlcCA9PSAxICYmICpwID09ICcqJykgeworCQkJCWZyb20gPSAwOworCQkJCXRvID0gaXRlbXMtPml0ZW1zLm5yOworCQkJfSBlbHNlIGlmIChpc2RpZ2l0KCpwKSkgeworCQkJCWNoYXIgKmVuZHA7CisJCQkJLyoKKwkJCQkgKiBBIHJhbmdlIGNhbiBiZSBzcGVjaWZpZWQgbGlrZSA1LTcgb3IgNS0uCisJCQkJICoKKwkJCQkgKiBOb3RlOiBgZnJvbWAgaXMgMC1iYXNlZCB3aGlsZSB0aGUgdXNlciBpbnB1dAorCQkJCSAqIGlzIDEtYmFzZWQsIGhlbmNlIHdlIGhhdmUgdG8gZGVjcmVtZW50IGJ5CisJCQkJICogb25lLiBXZSBkbyBub3QgaGF2ZSB0byBkZWNyZW1lbnQgYHRvYCBldmVuCisJCQkJICogaWYgaXQgaXMgMC1iYXNlZCBiZWNhdXNlIGl0IGlzIGFuIGV4Y2x1c2l2ZQorCQkJCSAqIGJvdW5kYXJ5LgorCQkJCSAqLworCQkJCWZyb20gPSBzdHJ0b3VsKHAsICZlbmRwLCAxMCkgLSAxOworCQkJCWlmIChlbmRwID09IHAgKyBzZXApCisJCQkJCXRvID0gZnJvbSArIDE7CisJCQkJZWxzZSBpZiAoKmVuZHAgPT0gJy0nKSB7CisJCQkJCWlmIChpc2RpZ2l0KCooKytlbmRwKSkpCisJCQkJCQl0byA9IHN0cnRvdWwoZW5kcCwgJmVuZHAsIDEwKTsKKwkJCQkJZWxzZQorCQkJCQkJdG8gPSBpdGVtcy0+aXRlbXMubnI7CisJCQkJCS8qIGV4dHJhIGNoYXJhY3RlcnMgYWZ0ZXIgdGhlIHJhbmdlPyAqLworCQkJCQlpZiAoZW5kcCAhPSBwICsgc2VwKQorCQkJCQkJZnJvbSA9IC0xOworCQkJCX0KKwkJCX0KKworCQkJaWYgKHBbc2VwXSkKKwkJCQlwW3NlcCsrXSA9ICdcMCc7CisJCQlpZiAoZnJvbSA8IDApIHsKKwkJCQlmcm9tID0gZmluZF91bmlxdWUocCwgaXRlbXMpOworCQkJCWlmIChmcm9tID49IDApCisJCQkJCXRvID0gZnJvbSArIDE7CisJCQl9CisKKwkJCWlmIChmcm9tIDwgMCB8fCBmcm9tID49IGl0ZW1zLT5pdGVtcy5uciB8fAorCQkJICAgIChzaW5nbGV0b24gJiYgZnJvbSArIDEgIT0gdG8pKSB7CisJCQkJY29sb3JfZnByaW50Zl9sbihzdGRvdXQsIHMtPmVycm9yX2NvbG9yLAorCQkJCQkJIF8oIkh1aCAoJXMpPyIpLCBwKTsKKwkJCQlicmVhazsKKwkJCX0gZWxzZSBpZiAoc2luZ2xldG9uKSB7CisJCQkJcmVzID0gZnJvbTsKKwkJCQlicmVhazsKKwkJCX0KKworCQkJaWYgKHRvID4gaXRlbXMtPml0ZW1zLm5yKQorCQkJCXRvID0gaXRlbXMtPml0ZW1zLm5yOworCisJCQlmb3IgKDsgZnJvbSA8IHRvOyBmcm9tKyspCisJCQkJaWYgKGl0ZW1zLT5zZWxlY3RlZFtmcm9tXSAhPSBjaG9vc2UpIHsKKwkJCQkJaXRlbXMtPnNlbGVjdGVkW2Zyb21dID0gY2hvb3NlOworCQkJCQlyZXMgKz0gY2hvb3NlID8gKzEgOiAtMTsKKwkJCQl9CisKKwkJCXAgKz0gc2VwOworCQl9CisKKwkJaWYgKChpbW1lZGlhdGUgJiYgcmVzICE9IExJU1RfQU5EX0NIT09TRV9FUlJPUikgfHwKKwkJICAgICFzdHJjbXAoaW5wdXQuYnVmLCAiKiIpKQorCQkJYnJlYWs7CisJfQorCisJc3RyYnVmX3JlbGVhc2UoJmlucHV0KTsKKwlyZXR1cm4gcmVzOworfQorCitzdHJ1Y3QgYWRkZGVsIHsKKwl1aW50bWF4X3QgYWRkLCBkZWw7CisJdW5zaWduZWQgc2VlbjoxLCB1bm1lcmdlZDoxLCBiaW5hcnk6MTsKK307CisKK3N0cnVjdCBmaWxlX2l0ZW0geworCXNpemVfdCBwcmVmaXhfbGVuZ3RoOworCXN0cnVjdCBhZGRkZWwgaW5kZXgsIHdvcmt0cmVlOworfTsKKworc3RhdGljIHZvaWQgYWRkX2ZpbGVfaXRlbShzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmZpbGVzLCBjb25zdCBjaGFyICpuYW1lKQoreworCXN0cnVjdCBmaWxlX2l0ZW0gKml0ZW0gPSB4Y2FsbG9jKHNpemVvZigqaXRlbSksIDEpOworCisJc3RyaW5nX2xpc3RfYXBwZW5kKGZpbGVzLCBuYW1lKS0+dXRpbCA9IGl0ZW07Cit9CisKK3N0cnVjdCBwYXRobmFtZV9lbnRyeSB7CisJc3RydWN0IGhhc2htYXBfZW50cnkgZW50OworCWNvbnN0IGNoYXIgKm5hbWU7CisJc3RydWN0IGZpbGVfaXRlbSAqaXRlbTsKK307CisKK3N0YXRpYyBpbnQgcGF0aG5hbWVfZW50cnlfY21wKGNvbnN0IHZvaWQgKnVudXNlZF9jbXBfZGF0YSwKKwkJCSAgICAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICpoZTEsCisJCQkgICAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqaGUyLAorCQkJICAgICAgY29uc3Qgdm9pZCAqbmFtZSkKK3sKKwljb25zdCBzdHJ1Y3QgcGF0aG5hbWVfZW50cnkgKmUxID0KKwkJY29udGFpbmVyX29mKGhlMSwgY29uc3Qgc3RydWN0IHBhdGhuYW1lX2VudHJ5LCBlbnQpOworCWNvbnN0IHN0cnVjdCBwYXRobmFtZV9lbnRyeSAqZTIgPQorCQljb250YWluZXJfb2YoaGUyLCBjb25zdCBzdHJ1Y3QgcGF0aG5hbWVfZW50cnksIGVudCk7CisKKwlyZXR1cm4gc3RyY21wKGUxLT5uYW1lLCBuYW1lID8gKGNvbnN0IGNoYXIgKiluYW1lIDogZTItPm5hbWUpOworfQorCitzdHJ1Y3QgY29sbGVjdGlvbl9zdGF0dXMgeworCWVudW0geyBGUk9NX1dPUktUUkVFID0gMCwgRlJPTV9JTkRFWCA9IDEgfSBtb2RlOworCisJY29uc3QgY2hhciAqcmVmZXJlbmNlOworCisJdW5zaWduZWQgc2tpcF91bnNlZW46MTsKKwlzaXplX3QgdW5tZXJnZWRfY291bnQsIGJpbmFyeV9jb3VudDsKKwlzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmZpbGVzOworCXN0cnVjdCBoYXNobWFwIGZpbGVfbWFwOworfTsKKworc3RhdGljIHZvaWQgY29sbGVjdF9jaGFuZ2VzX2NiKHN0cnVjdCBkaWZmX3F1ZXVlX3N0cnVjdCAqcSwKKwkJCSAgICAgICBzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zLAorCQkJICAgICAgIHZvaWQgKmRhdGEpCit7CisJc3RydWN0IGNvbGxlY3Rpb25fc3RhdHVzICpzID0gZGF0YTsKKwlzdHJ1Y3QgZGlmZnN0YXRfdCBzdGF0ID0geyAwIH07CisJaW50IGk7CisKKwlpZiAoIXEtPm5yKQorCQlyZXR1cm47CisKKwljb21wdXRlX2RpZmZzdGF0KG9wdGlvbnMsICZzdGF0LCBxKTsKKworCWZvciAoaSA9IDA7IGkgPCBzdGF0Lm5yOyBpKyspIHsKKwkJY29uc3QgY2hhciAqbmFtZSA9IHN0YXQuZmlsZXNbaV0tPm5hbWU7CisJCWludCBoYXNoID0gc3RyaGFzaChuYW1lKTsKKwkJc3RydWN0IHBhdGhuYW1lX2VudHJ5ICplbnRyeTsKKwkJc3RydWN0IGZpbGVfaXRlbSAqZmlsZV9pdGVtOworCQlzdHJ1Y3QgYWRkZGVsICphZGRkZWwsICpvdGhlcl9hZGRkZWw7CisKKwkJZW50cnkgPSBoYXNobWFwX2dldF9lbnRyeV9mcm9tX2hhc2goJnMtPmZpbGVfbWFwLCBoYXNoLCBuYW1lLAorCQkJCQkJICAgIHN0cnVjdCBwYXRobmFtZV9lbnRyeSwgZW50KTsKKwkJaWYgKCFlbnRyeSkgeworCQkJaWYgKHMtPnNraXBfdW5zZWVuKQorCQkJCWNvbnRpbnVlOworCisJCQlhZGRfZmlsZV9pdGVtKHMtPmZpbGVzLCBuYW1lKTsKKworCQkJZW50cnkgPSB4Y2FsbG9jKHNpemVvZigqZW50cnkpLCAxKTsKKwkJCWhhc2htYXBfZW50cnlfaW5pdCgmZW50cnktPmVudCwgaGFzaCk7CisJCQllbnRyeS0+bmFtZSA9IHMtPmZpbGVzLT5pdGVtc1tzLT5maWxlcy0+bnIgLSAxXS5zdHJpbmc7CisJCQllbnRyeS0+aXRlbSA9IHMtPmZpbGVzLT5pdGVtc1tzLT5maWxlcy0+bnIgLSAxXS51dGlsOworCQkJaGFzaG1hcF9hZGQoJnMtPmZpbGVfbWFwLCAmZW50cnktPmVudCk7CisJCX0KKworCQlmaWxlX2l0ZW0gPSBlbnRyeS0+aXRlbTsKKwkJYWRkZGVsID0gcy0+bW9kZSA9PSBGUk9NX0lOREVYID8KKwkJCSZmaWxlX2l0ZW0tPmluZGV4IDogJmZpbGVfaXRlbS0+d29ya3RyZWU7CisJCW90aGVyX2FkZGRlbCA9IHMtPm1vZGUgPT0gRlJPTV9JTkRFWCA/CisJCQkmZmlsZV9pdGVtLT53b3JrdHJlZSA6ICZmaWxlX2l0ZW0tPmluZGV4OworCQlhZGRkZWwtPnNlZW4gPSAxOworCQlhZGRkZWwtPmFkZCA9IHN0YXQuZmlsZXNbaV0tPmFkZGVkOworCQlhZGRkZWwtPmRlbCA9IHN0YXQuZmlsZXNbaV0tPmRlbGV0ZWQ7CisJCWlmIChzdGF0LmZpbGVzW2ldLT5pc19iaW5hcnkpIHsKKwkJCWlmICghb3RoZXJfYWRkZGVsLT5iaW5hcnkpCisJCQkJcy0+YmluYXJ5X2NvdW50Kys7CisJCQlhZGRkZWwtPmJpbmFyeSA9IDE7CisJCX0KKwkJaWYgKHN0YXQuZmlsZXNbaV0tPmlzX3VubWVyZ2VkKSB7CisJCQlpZiAoIW90aGVyX2FkZGRlbC0+dW5tZXJnZWQpCisJCQkJcy0+dW5tZXJnZWRfY291bnQrKzsKKwkJCWFkZGRlbC0+dW5tZXJnZWQgPSAxOworCQl9CisJfQorCWZyZWVfZGlmZnN0YXRfaW5mbygmc3RhdCk7Cit9CisKK2VudW0gbW9kaWZpZWRfZmlsZXNfZmlsdGVyIHsKKwlOT19GSUxURVIgPSAwLAorCVdPUktUUkVFX09OTFkgPSAxLAorCUlOREVYX09OTFkgPSAyLAorfTsKKworc3RhdGljIGludCBnZXRfbW9kaWZpZWRfZmlsZXMoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgICAgICBlbnVtIG1vZGlmaWVkX2ZpbGVzX2ZpbHRlciBmaWx0ZXIsCisJCQkgICAgICBzdHJ1Y3QgcHJlZml4X2l0ZW1fbGlzdCAqZmlsZXMsCisJCQkgICAgICBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBzLAorCQkJICAgICAgc2l6ZV90ICp1bm1lcmdlZF9jb3VudCwKKwkJCSAgICAgIHNpemVfdCAqYmluYXJ5X2NvdW50KQoreworCXN0cnVjdCBvYmplY3RfaWQgaGVhZF9vaWQ7CisJaW50IGlzX2luaXRpYWwgPSAhcmVzb2x2ZV9yZWZfdW5zYWZlKCJIRUFEIiwgUkVTT0xWRV9SRUZfUkVBRElORywKKwkJCQkJICAgICAmaGVhZF9vaWQsIE5VTEwpOworCXN0cnVjdCBjb2xsZWN0aW9uX3N0YXR1cyBzID0geyAwIH07CisJaW50IGk7CisKKwlpZiAoZGlzY2FyZF9pbmRleChyLT5pbmRleCkgPCAwIHx8CisJICAgIHJlcG9fcmVhZF9pbmRleF9wcmVsb2FkKHIsIHBzLCAwKSA8IDApCisJCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3QgcmVhZCBpbmRleCIpKTsKKworCXByZWZpeF9pdGVtX2xpc3RfY2xlYXIoZmlsZXMpOworCXMuZmlsZXMgPSAmZmlsZXMtPml0ZW1zOworCWhhc2htYXBfaW5pdCgmcy5maWxlX21hcCwgcGF0aG5hbWVfZW50cnlfY21wLCBOVUxMLCAwKTsKKworCWZvciAoaSA9IDA7IGkgPCAyOyBpKyspIHsKKwkJc3RydWN0IHJldl9pbmZvIHJldjsKKwkJc3RydWN0IHNldHVwX3JldmlzaW9uX29wdCBvcHQgPSB7IDAgfTsKKworCQlpZiAoZmlsdGVyID09IElOREVYX09OTFkpCisJCQlzLm1vZGUgPSAoaSA9PSAwKSA/IEZST01fSU5ERVggOiBGUk9NX1dPUktUUkVFOworCQllbHNlCisJCQlzLm1vZGUgPSAoaSA9PSAwKSA/IEZST01fV09SS1RSRUUgOiBGUk9NX0lOREVYOworCQlzLnNraXBfdW5zZWVuID0gZmlsdGVyICYmIGk7CisKKwkJb3B0LmRlZiA9IGlzX2luaXRpYWwgPworCQkJZW1wdHlfdHJlZV9vaWRfaGV4KCkgOiBvaWRfdG9faGV4KCZoZWFkX29pZCk7CisKKwkJaW5pdF9yZXZpc2lvbnMoJnJldiwgTlVMTCk7CisJCXNldHVwX3JldmlzaW9ucygwLCBOVUxMLCAmcmV2LCAmb3B0KTsKKworCQlyZXYuZGlmZm9wdC5vdXRwdXRfZm9ybWF0ID0gRElGRl9GT1JNQVRfQ0FMTEJBQ0s7CisJCXJldi5kaWZmb3B0LmZvcm1hdF9jYWxsYmFjayA9IGNvbGxlY3RfY2hhbmdlc19jYjsKKwkJcmV2LmRpZmZvcHQuZm9ybWF0X2NhbGxiYWNrX2RhdGEgPSAmczsKKworCQlpZiAocHMpCisJCQljb3B5X3BhdGhzcGVjKCZyZXYucHJ1bmVfZGF0YSwgcHMpOworCisJCWlmIChzLm1vZGUgPT0gRlJPTV9JTkRFWCkKKwkJCXJ1bl9kaWZmX2luZGV4KCZyZXYsIDEpOworCQllbHNlIHsKKwkJCXJldi5kaWZmb3B0LmZsYWdzLmlnbm9yZV9kaXJ0eV9zdWJtb2R1bGVzID0gMTsKKwkJCXJ1bl9kaWZmX2ZpbGVzKCZyZXYsIDApOworCQl9CisKKwkJaWYgKHBzKQorCQkJY2xlYXJfcGF0aHNwZWMoJnJldi5wcnVuZV9kYXRhKTsKKwl9CisJaGFzaG1hcF9mcmVlX2VudHJpZXMoJnMuZmlsZV9tYXAsIHN0cnVjdCBwYXRobmFtZV9lbnRyeSwgZW50KTsKKwlpZiAodW5tZXJnZWRfY291bnQpCisJCSp1bm1lcmdlZF9jb3VudCA9IHMudW5tZXJnZWRfY291bnQ7CisJaWYgKGJpbmFyeV9jb3VudCkKKwkJKmJpbmFyeV9jb3VudCA9IHMuYmluYXJ5X2NvdW50OworCisJLyogV2hpbGUgdGhlIGRpZmZzIGFyZSBvcmRlcmVkIGFscmVhZHksIHdlIHJhbiAqdHdvKiBkaWZmcy4uLiAqLworCXN0cmluZ19saXN0X3NvcnQoJmZpbGVzLT5pdGVtcyk7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQgcmVuZGVyX2FkZGRlbChzdHJ1Y3Qgc3RyYnVmICpidWYsCisJCQkJc3RydWN0IGFkZGRlbCAqYWQsIGNvbnN0IGNoYXIgKm5vX2NoYW5nZXMpCit7CisJaWYgKGFkLT5iaW5hcnkpCisJCXN0cmJ1Zl9hZGRzdHIoYnVmLCBfKCJiaW5hcnkiKSk7CisJZWxzZSBpZiAoYWQtPnNlZW4pCisJCXN0cmJ1Zl9hZGRmKGJ1ZiwgIislIlBSSXVNQVgiLy0lIlBSSXVNQVgsCisJCQkgICAgKHVpbnRtYXhfdClhZC0+YWRkLCAodWludG1heF90KWFkLT5kZWwpOworCWVsc2UKKwkJc3RyYnVmX2FkZHN0cihidWYsIG5vX2NoYW5nZXMpOworfQorCisvKiBmaWx0ZXJzIG91dCBwcmVmaXhlcyB3aGljaCBoYXZlIHNwZWNpYWwgbWVhbmluZyB0byBsaXN0X2FuZF9jaG9vc2UoKSAqLworc3RhdGljIGludCBpc192YWxpZF9wcmVmaXgoY29uc3QgY2hhciAqcHJlZml4LCBzaXplX3QgcHJlZml4X2xlbikKK3sKKwlyZXR1cm4gcHJlZml4X2xlbiAmJiBwcmVmaXggJiYKKwkJLyoKKwkJICogV2UgZXhwZWN0IGBwcmVmaXhgIHRvIGJlIE5VTCB0ZXJtaW5hdGVkLCB0aGVyZWZvcmUgdGhpcworCQkgKiBgc3RyY3NwbigpYCBjYWxsIGlzIG9rYXksIGV2ZW4gaWYgaXQgbWlnaHQgZG8gbXVjaCBtb3JlCisJCSAqIHdvcmsgdGhhbiBzdHJpY3RseSBuZWNlc3NhcnkuCisJCSAqLworCQlzdHJjc3BuKHByZWZpeCwgIiBcdFxyXG4sIikgPj0gcHJlZml4X2xlbiAmJgkvKiBzZXBhcmF0b3JzICovCisJCSpwcmVmaXggIT0gJy0nICYmCQkJCS8qIGRlc2VsZWN0aW9uICovCisJCSFpc2RpZ2l0KCpwcmVmaXgpICYmCQkJCS8qIHNlbGVjdGlvbiAqLworCQkocHJlZml4X2xlbiAhPSAxIHx8CisJCSAoKnByZWZpeCAhPSAnKicgJiYJCQkJLyogImFsbCIgd2lsZGNhcmQgKi8KKwkJICAqcHJlZml4ICE9ICc/JykpOwkJCQkvKiBwcm9tcHQgaGVscCAqLworfQorCitzdHJ1Y3QgcHJpbnRfZmlsZV9pdGVtX2RhdGEgeworCWNvbnN0IGNoYXIgKm1vZGlmaWVkX2ZtdCwgKmNvbG9yLCAqcmVzZXQ7CisJc3RydWN0IHN0cmJ1ZiBidWYsIG5hbWUsIGluZGV4LCB3b3JrdHJlZTsKKwl1bnNpZ25lZCBvbmx5X25hbWVzOjE7Cit9OworCitzdGF0aWMgdm9pZCBwcmludF9maWxlX2l0ZW0oaW50IGksIGludCBzZWxlY3RlZCwgc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKml0ZW0sCisJCQkgICAgdm9pZCAqcHJpbnRfZmlsZV9pdGVtX2RhdGEpCit7CisJc3RydWN0IGZpbGVfaXRlbSAqYyA9IGl0ZW0tPnV0aWw7CisJc3RydWN0IHByaW50X2ZpbGVfaXRlbV9kYXRhICpkID0gcHJpbnRfZmlsZV9pdGVtX2RhdGE7CisJY29uc3QgY2hhciAqaGlnaGxpZ2h0ZWQgPSBOVUxMOworCisJc3RyYnVmX3Jlc2V0KCZkLT5pbmRleCk7CisJc3RyYnVmX3Jlc2V0KCZkLT53b3JrdHJlZSk7CisJc3RyYnVmX3Jlc2V0KCZkLT5idWYpOworCisJLyogRm9ybWF0IHRoZSBpdGVtIHdpdGggdGhlIHByZWZpeCBoaWdobGlnaHRlZC4gKi8KKwlpZiAoYy0+cHJlZml4X2xlbmd0aCA+IDAgJiYKKwkgICAgaXNfdmFsaWRfcHJlZml4KGl0ZW0tPnN0cmluZywgYy0+cHJlZml4X2xlbmd0aCkpIHsKKwkJc3RyYnVmX3Jlc2V0KCZkLT5uYW1lKTsKKwkJc3RyYnVmX2FkZGYoJmQtPm5hbWUsICIlcyUuKnMlcyVzIiwgZC0+Y29sb3IsCisJCQkgICAgKGludCljLT5wcmVmaXhfbGVuZ3RoLCBpdGVtLT5zdHJpbmcsIGQtPnJlc2V0LAorCQkJICAgIGl0ZW0tPnN0cmluZyArIGMtPnByZWZpeF9sZW5ndGgpOworCQloaWdobGlnaHRlZCA9IGQtPm5hbWUuYnVmOworCX0KKworCWlmIChkLT5vbmx5X25hbWVzKSB7CisJCXByaW50ZigiJWMlMmQ6ICVzIiwgc2VsZWN0ZWQgPyAnKicgOiAnICcsIGkgKyAxLAorCQkgICAgICAgaGlnaGxpZ2h0ZWQgPyBoaWdobGlnaHRlZCA6IGl0ZW0tPnN0cmluZyk7CisJCXJldHVybjsKKwl9CisKKwlyZW5kZXJfYWRkZGVsKCZkLT53b3JrdHJlZSwgJmMtPndvcmt0cmVlLCBfKCJub3RoaW5nIikpOworCXJlbmRlcl9hZGRkZWwoJmQtPmluZGV4LCAmYy0+aW5kZXgsIF8oInVuY2hhbmdlZCIpKTsKKworCXN0cmJ1Zl9hZGRmKCZkLT5idWYsIGQtPm1vZGlmaWVkX2ZtdCwgZC0+aW5kZXguYnVmLCBkLT53b3JrdHJlZS5idWYsCisJCSAgICBoaWdobGlnaHRlZCA/IGhpZ2hsaWdodGVkIDogaXRlbS0+c3RyaW5nKTsKKworCXByaW50ZigiJWMlMmQ6ICVzIiwgc2VsZWN0ZWQgPyAnKicgOiAnICcsIGkgKyAxLCBkLT5idWYuYnVmKTsKK30KKworc3RhdGljIGludCBydW5fc3RhdHVzKHN0cnVjdCBhZGRfaV9zdGF0ZSAqcywgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwcywKKwkJICAgICAgc3RydWN0IHByZWZpeF9pdGVtX2xpc3QgKmZpbGVzLAorCQkgICAgICBzdHJ1Y3QgbGlzdF9hbmRfY2hvb3NlX29wdGlvbnMgKm9wdHMpCit7CisJaWYgKGdldF9tb2RpZmllZF9maWxlcyhzLT5yLCBOT19GSUxURVIsIGZpbGVzLCBwcywgTlVMTCwgTlVMTCkgPCAwKQorCQlyZXR1cm4gLTE7CisKKwlsaXN0KHMsICZmaWxlcy0+aXRlbXMsIE5VTEwsICZvcHRzLT5saXN0X29wdHMpOworCXB1dGNoYXIoJ1xuJyk7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBydW5fdXBkYXRlKHN0cnVjdCBhZGRfaV9zdGF0ZSAqcywgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwcywKKwkJICAgICAgc3RydWN0IHByZWZpeF9pdGVtX2xpc3QgKmZpbGVzLAorCQkgICAgICBzdHJ1Y3QgbGlzdF9hbmRfY2hvb3NlX29wdGlvbnMgKm9wdHMpCit7CisJaW50IHJlcyA9IDAsIGZkOworCXNpemVfdCBjb3VudCwgaTsKKwlzdHJ1Y3QgbG9ja19maWxlIGluZGV4X2xvY2s7CisKKwlpZiAoZ2V0X21vZGlmaWVkX2ZpbGVzKHMtPnIsIFdPUktUUkVFX09OTFksIGZpbGVzLCBwcywgTlVMTCwgTlVMTCkgPCAwKQorCQlyZXR1cm4gLTE7CisKKwlpZiAoIWZpbGVzLT5pdGVtcy5ucikgeworCQlwdXRjaGFyKCdcbicpOworCQlyZXR1cm4gMDsKKwl9CisKKwlvcHRzLT5wcm9tcHQgPSBOXygiVXBkYXRlIik7CisJY291bnQgPSBsaXN0X2FuZF9jaG9vc2UocywgZmlsZXMsIG9wdHMpOworCWlmIChjb3VudCA8PSAwKSB7CisJCXB1dGNoYXIoJ1xuJyk7CisJCXJldHVybiAwOworCX0KKworCWZkID0gcmVwb19ob2xkX2xvY2tlZF9pbmRleChzLT5yLCAmaW5kZXhfbG9jaywgTE9DS19SRVBPUlRfT05fRVJST1IpOworCWlmIChmZCA8IDApIHsKKwkJcHV0Y2hhcignXG4nKTsKKwkJcmV0dXJuIC0xOworCX0KKworCWZvciAoaSA9IDA7IGkgPCBmaWxlcy0+aXRlbXMubnI7IGkrKykgeworCQljb25zdCBjaGFyICpuYW1lID0gZmlsZXMtPml0ZW1zLml0ZW1zW2ldLnN0cmluZzsKKwkJaWYgKGZpbGVzLT5zZWxlY3RlZFtpXSAmJgorCQkgICAgYWRkX2ZpbGVfdG9faW5kZXgocy0+ci0+aW5kZXgsIG5hbWUsIDApIDwgMCkgeworCQkJcmVzID0gZXJyb3IoXygiY291bGQgbm90IHN0YWdlICclcyciKSwgbmFtZSk7CisJCQlicmVhazsKKwkJfQorCX0KKworCWlmICghcmVzICYmIHdyaXRlX2xvY2tlZF9pbmRleChzLT5yLT5pbmRleCwgJmluZGV4X2xvY2ssIENPTU1JVF9MT0NLKSA8IDApCisJCXJlcyA9IGVycm9yKF8oImNvdWxkIG5vdCB3cml0ZSBpbmRleCIpKTsKKworCWlmICghcmVzKQorCQlwcmludGYoUV8oInVwZGF0ZWQgJWQgcGF0aFxuIiwKKwkJCSAgInVwZGF0ZWQgJWQgcGF0aHNcbiIsIGNvdW50KSwgKGludCljb3VudCk7CisKKwlwdXRjaGFyKCdcbicpOworCXJldHVybiByZXM7Cit9CisKK3N0YXRpYyB2b2lkIHJldmVydF9mcm9tX2RpZmYoc3RydWN0IGRpZmZfcXVldWVfc3RydWN0ICpxLAorCQkJICAgICBzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHQsIHZvaWQgKmRhdGEpCit7CisJaW50IGksIGFkZF9mbGFncyA9IEFERF9DQUNIRV9PS19UT19BREQgfCBBRERfQ0FDSEVfT0tfVE9fUkVQTEFDRTsKKworCWZvciAoaSA9IDA7IGkgPCBxLT5ucjsgaSsrKSB7CisJCXN0cnVjdCBkaWZmX2ZpbGVzcGVjICpvbmUgPSBxLT5xdWV1ZVtpXS0+b25lOworCQlzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlOworCisJCWlmICghKG9uZS0+bW9kZSAmJiAhaXNfbnVsbF9vaWQoJm9uZS0+b2lkKSkpIHsKKwkJCXJlbW92ZV9maWxlX2Zyb21faW5kZXgob3B0LT5yZXBvLT5pbmRleCwgb25lLT5wYXRoKTsKKwkJCXByaW50ZihfKCJub3RlOiAlcyBpcyB1bnRyYWNrZWQgbm93LlxuIiksIG9uZS0+cGF0aCk7CisJCX0gZWxzZSB7CisJCQljZSA9IG1ha2VfY2FjaGVfZW50cnkob3B0LT5yZXBvLT5pbmRleCwgb25lLT5tb2RlLAorCQkJCQkgICAgICAmb25lLT5vaWQsIG9uZS0+cGF0aCwgMCwgMCk7CisJCQlpZiAoIWNlKQorCQkJCWRpZShfKCJtYWtlX2NhY2hlX2VudHJ5IGZhaWxlZCBmb3IgcGF0aCAnJXMnIiksCisJCQkJICAgIG9uZS0+cGF0aCk7CisJCQlhZGRfaW5kZXhfZW50cnkob3B0LT5yZXBvLT5pbmRleCwgY2UsIGFkZF9mbGFncyk7CisJCX0KKwl9Cit9CisKK3N0YXRpYyBpbnQgcnVuX3JldmVydChzdHJ1Y3QgYWRkX2lfc3RhdGUgKnMsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcHMsCisJCSAgICAgIHN0cnVjdCBwcmVmaXhfaXRlbV9saXN0ICpmaWxlcywKKwkJICAgICAgc3RydWN0IGxpc3RfYW5kX2Nob29zZV9vcHRpb25zICpvcHRzKQoreworCWludCByZXMgPSAwLCBmZDsKKwlzaXplX3QgY291bnQsIGksIGo7CisKKwlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKKwlpbnQgaXNfaW5pdGlhbCA9ICFyZXNvbHZlX3JlZl91bnNhZmUoIkhFQUQiLCBSRVNPTFZFX1JFRl9SRUFESU5HLCAmb2lkLAorCQkJCQkgICAgIE5VTEwpOworCXN0cnVjdCBsb2NrX2ZpbGUgaW5kZXhfbG9jazsKKwljb25zdCBjaGFyICoqcGF0aHM7CisJc3RydWN0IHRyZWUgKnRyZWU7CisJc3RydWN0IGRpZmZfb3B0aW9ucyBkaWZmb3B0ID0geyBOVUxMIH07CisKKwlpZiAoZ2V0X21vZGlmaWVkX2ZpbGVzKHMtPnIsIElOREVYX09OTFksIGZpbGVzLCBwcywgTlVMTCwgTlVMTCkgPCAwKQorCQlyZXR1cm4gLTE7CisKKwlpZiAoIWZpbGVzLT5pdGVtcy5ucikgeworCQlwdXRjaGFyKCdcbicpOworCQlyZXR1cm4gMDsKKwl9CisKKwlvcHRzLT5wcm9tcHQgPSBOXygiUmV2ZXJ0Iik7CisJY291bnQgPSBsaXN0X2FuZF9jaG9vc2UocywgZmlsZXMsIG9wdHMpOworCWlmIChjb3VudCA8PSAwKQorCQlnb3RvIGZpbmlzaF9yZXZlcnQ7CisKKwlmZCA9IHJlcG9faG9sZF9sb2NrZWRfaW5kZXgocy0+ciwgJmluZGV4X2xvY2ssIExPQ0tfUkVQT1JUX09OX0VSUk9SKTsKKwlpZiAoZmQgPCAwKSB7CisJCXJlcyA9IC0xOworCQlnb3RvIGZpbmlzaF9yZXZlcnQ7CisJfQorCisJaWYgKGlzX2luaXRpYWwpCisJCW9pZGNweSgmb2lkLCBzLT5yLT5oYXNoX2FsZ28tPmVtcHR5X3RyZWUpOworCWVsc2UgeworCQl0cmVlID0gcGFyc2VfdHJlZV9pbmRpcmVjdCgmb2lkKTsKKwkJaWYgKCF0cmVlKSB7CisJCQlyZXMgPSBlcnJvcihfKCJDb3VsZCBub3QgcGFyc2UgSEVBRF57dHJlZX0iKSk7CisJCQlnb3RvIGZpbmlzaF9yZXZlcnQ7CisJCX0KKwkJb2lkY3B5KCZvaWQsICZ0cmVlLT5vYmplY3Qub2lkKTsKKwl9CisKKwlBTExPQ19BUlJBWShwYXRocywgY291bnQgKyAxKTsKKwlmb3IgKGkgPSBqID0gMDsgaSA8IGZpbGVzLT5pdGVtcy5ucjsgaSsrKQorCQlpZiAoZmlsZXMtPnNlbGVjdGVkW2ldKQorCQkJcGF0aHNbaisrXSA9IGZpbGVzLT5pdGVtcy5pdGVtc1tpXS5zdHJpbmc7CisJcGF0aHNbal0gPSBOVUxMOworCisJcGFyc2VfcGF0aHNwZWMoJmRpZmZvcHQucGF0aHNwZWMsIDAsCisJCSAgICAgICBQQVRIU1BFQ19QUkVGRVJfRlVMTCB8IFBBVEhTUEVDX0xJVEVSQUxfUEFUSCwKKwkJICAgICAgIE5VTEwsIHBhdGhzKTsKKworCWRpZmZvcHQub3V0cHV0X2Zvcm1hdCA9IERJRkZfRk9STUFUX0NBTExCQUNLOworCWRpZmZvcHQuZm9ybWF0X2NhbGxiYWNrID0gcmV2ZXJ0X2Zyb21fZGlmZjsKKwlkaWZmb3B0LmZsYWdzLm92ZXJyaWRlX3N1Ym1vZHVsZV9jb25maWcgPSAxOworCWRpZmZvcHQucmVwbyA9IHMtPnI7CisKKwlpZiAoZG9fZGlmZl9jYWNoZSgmb2lkLCAmZGlmZm9wdCkpCisJCXJlcyA9IC0xOworCWVsc2UgeworCQlkaWZmY29yZV9zdGQoJmRpZmZvcHQpOworCQlkaWZmX2ZsdXNoKCZkaWZmb3B0KTsKKwl9CisJZnJlZShwYXRocyk7CisJY2xlYXJfcGF0aHNwZWMoJmRpZmZvcHQucGF0aHNwZWMpOworCisJaWYgKCFyZXMgJiYgd3JpdGVfbG9ja2VkX2luZGV4KHMtPnItPmluZGV4LCAmaW5kZXhfbG9jaywKKwkJCQkgICAgICAgQ09NTUlUX0xPQ0spIDwgMCkKKwkJcmVzID0gLTE7CisJZWxzZQorCQlyZXMgPSByZXBvX3JlZnJlc2hfYW5kX3dyaXRlX2luZGV4KHMtPnIsIFJFRlJFU0hfUVVJRVQsIDAsIDEsCisJCQkJCQkgICBOVUxMLCBOVUxMLCBOVUxMKTsKKworCWlmICghcmVzKQorCQlwcmludGYoUV8oInJldmVydGVkICVkIHBhdGhcbiIsCisJCQkgICJyZXZlcnRlZCAlZCBwYXRoc1xuIiwgY291bnQpLCAoaW50KWNvdW50KTsKKworZmluaXNoX3JldmVydDoKKwlwdXRjaGFyKCdcbicpOworCXJldHVybiByZXM7Cit9CisKK3N0YXRpYyBpbnQgZ2V0X3VudHJhY2tlZF9maWxlcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgICAgICBzdHJ1Y3QgcHJlZml4X2l0ZW1fbGlzdCAqZmlsZXMsCisJCQkgICAgICAgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwcykKK3sKKwlzdHJ1Y3QgZGlyX3N0cnVjdCBkaXIgPSB7IDAgfTsKKwlzaXplX3QgaTsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOworCisJaWYgKHJlcG9fcmVhZF9pbmRleChyKSA8IDApCisJCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3QgcmVhZCBpbmRleCIpKTsKKworCXByZWZpeF9pdGVtX2xpc3RfY2xlYXIoZmlsZXMpOworCXNldHVwX3N0YW5kYXJkX2V4Y2x1ZGVzKCZkaXIpOworCWFkZF9wYXR0ZXJuX2xpc3QoJmRpciwgRVhDX0NNREwsICItLWV4Y2x1ZGUgb3B0aW9uIik7CisJZmlsbF9kaXJlY3RvcnkoJmRpciwgci0+aW5kZXgsIHBzKTsKKworCWZvciAoaSA9IDA7IGkgPCBkaXIubnI7IGkrKykgeworCQlzdHJ1Y3QgZGlyX2VudHJ5ICplbnQgPSBkaXIuZW50cmllc1tpXTsKKworCQlpZiAoaW5kZXhfbmFtZV9pc19vdGhlcihyLT5pbmRleCwgZW50LT5uYW1lLCBlbnQtPmxlbikpIHsKKwkJCXN0cmJ1Zl9yZXNldCgmYnVmKTsKKwkJCXN0cmJ1Zl9hZGQoJmJ1ZiwgZW50LT5uYW1lLCBlbnQtPmxlbik7CisJCQlhZGRfZmlsZV9pdGVtKCZmaWxlcy0+aXRlbXMsIGJ1Zi5idWYpOworCQl9CisJfQorCisJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgcnVuX2FkZF91bnRyYWNrZWQoc3RydWN0IGFkZF9pX3N0YXRlICpzLCBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBzLAorCQkgICAgICBzdHJ1Y3QgcHJlZml4X2l0ZW1fbGlzdCAqZmlsZXMsCisJCSAgICAgIHN0cnVjdCBsaXN0X2FuZF9jaG9vc2Vfb3B0aW9ucyAqb3B0cykKK3sKKwlzdHJ1Y3QgcHJpbnRfZmlsZV9pdGVtX2RhdGEgKmQgPSBvcHRzLT5saXN0X29wdHMucHJpbnRfaXRlbV9kYXRhOworCWludCByZXMgPSAwLCBmZDsKKwlzaXplX3QgY291bnQsIGk7CisJc3RydWN0IGxvY2tfZmlsZSBpbmRleF9sb2NrOworCisJaWYgKGdldF91bnRyYWNrZWRfZmlsZXMocy0+ciwgZmlsZXMsIHBzKSA8IDApCisJCXJldHVybiAtMTsKKworCWlmICghZmlsZXMtPml0ZW1zLm5yKSB7CisJCXByaW50ZihfKCJObyB1bnRyYWNrZWQgZmlsZXMuXG4iKSk7CisJCWdvdG8gZmluaXNoX2FkZF91bnRyYWNrZWQ7CisJfQorCisJb3B0cy0+cHJvbXB0ID0gTl8oIkFkZCB1bnRyYWNrZWQiKTsKKwlkLT5vbmx5X25hbWVzID0gMTsKKwljb3VudCA9IGxpc3RfYW5kX2Nob29zZShzLCBmaWxlcywgb3B0cyk7CisJZC0+b25seV9uYW1lcyA9IDA7CisJaWYgKGNvdW50IDw9IDApCisJCWdvdG8gZmluaXNoX2FkZF91bnRyYWNrZWQ7CisKKwlmZCA9IHJlcG9faG9sZF9sb2NrZWRfaW5kZXgocy0+ciwgJmluZGV4X2xvY2ssIExPQ0tfUkVQT1JUX09OX0VSUk9SKTsKKwlpZiAoZmQgPCAwKSB7CisJCXJlcyA9IC0xOworCQlnb3RvIGZpbmlzaF9hZGRfdW50cmFja2VkOworCX0KKworCWZvciAoaSA9IDA7IGkgPCBmaWxlcy0+aXRlbXMubnI7IGkrKykgeworCQljb25zdCBjaGFyICpuYW1lID0gZmlsZXMtPml0ZW1zLml0ZW1zW2ldLnN0cmluZzsKKwkJaWYgKGZpbGVzLT5zZWxlY3RlZFtpXSAmJgorCQkgICAgYWRkX2ZpbGVfdG9faW5kZXgocy0+ci0+aW5kZXgsIG5hbWUsIDApIDwgMCkgeworCQkJcmVzID0gZXJyb3IoXygiY291bGQgbm90IHN0YWdlICclcyciKSwgbmFtZSk7CisJCQlicmVhazsKKwkJfQorCX0KKworCWlmICghcmVzICYmCisJICAgIHdyaXRlX2xvY2tlZF9pbmRleChzLT5yLT5pbmRleCwgJmluZGV4X2xvY2ssIENPTU1JVF9MT0NLKSA8IDApCisJCXJlcyA9IGVycm9yKF8oImNvdWxkIG5vdCB3cml0ZSBpbmRleCIpKTsKKworCWlmICghcmVzKQorCQlwcmludGYoUV8oImFkZGVkICVkIHBhdGhcbiIsCisJCQkgICJhZGRlZCAlZCBwYXRoc1xuIiwgY291bnQpLCAoaW50KWNvdW50KTsKKworZmluaXNoX2FkZF91bnRyYWNrZWQ6CisJcHV0Y2hhcignXG4nKTsKKwlyZXR1cm4gcmVzOworfQorCitzdGF0aWMgaW50IHJ1bl9wYXRjaChzdHJ1Y3QgYWRkX2lfc3RhdGUgKnMsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcHMsCisJCSAgICAgc3RydWN0IHByZWZpeF9pdGVtX2xpc3QgKmZpbGVzLAorCQkgICAgIHN0cnVjdCBsaXN0X2FuZF9jaG9vc2Vfb3B0aW9ucyAqb3B0cykKK3sKKwlpbnQgcmVzID0gMDsKKwlzc2l6ZV90IGNvdW50LCBpLCBqOworCXNpemVfdCB1bm1lcmdlZF9jb3VudCA9IDAsIGJpbmFyeV9jb3VudCA9IDA7CisKKwlpZiAoZ2V0X21vZGlmaWVkX2ZpbGVzKHMtPnIsIFdPUktUUkVFX09OTFksIGZpbGVzLCBwcywKKwkJCSAgICAgICAmdW5tZXJnZWRfY291bnQsICZiaW5hcnlfY291bnQpIDwgMCkKKwkJcmV0dXJuIC0xOworCisJaWYgKHVubWVyZ2VkX2NvdW50IHx8IGJpbmFyeV9jb3VudCkgeworCQlmb3IgKGkgPSBqID0gMDsgaSA8IGZpbGVzLT5pdGVtcy5ucjsgaSsrKSB7CisJCQlzdHJ1Y3QgZmlsZV9pdGVtICppdGVtID0gZmlsZXMtPml0ZW1zLml0ZW1zW2ldLnV0aWw7CisKKwkJCWlmIChpdGVtLT5pbmRleC5iaW5hcnkgfHwgaXRlbS0+d29ya3RyZWUuYmluYXJ5KSB7CisJCQkJZnJlZShpdGVtKTsKKwkJCQlmcmVlKGZpbGVzLT5pdGVtcy5pdGVtc1tpXS5zdHJpbmcpOworCQkJfSBlbHNlIGlmIChpdGVtLT5pbmRleC51bm1lcmdlZCB8fAorCQkJCSBpdGVtLT53b3JrdHJlZS51bm1lcmdlZCkgeworCQkJCWNvbG9yX2ZwcmludGZfbG4oc3RkZXJyLCBzLT5lcnJvcl9jb2xvciwKKwkJCQkJCSBfKCJpZ25vcmluZyB1bm1lcmdlZDogJXMiKSwKKwkJCQkJCSBmaWxlcy0+aXRlbXMuaXRlbXNbaV0uc3RyaW5nKTsKKwkJCQlmcmVlKGl0ZW0pOworCQkJCWZyZWUoZmlsZXMtPml0ZW1zLml0ZW1zW2ldLnN0cmluZyk7CisJCQl9IGVsc2UKKwkJCQlmaWxlcy0+aXRlbXMuaXRlbXNbaisrXSA9IGZpbGVzLT5pdGVtcy5pdGVtc1tpXTsKKwkJfQorCQlmaWxlcy0+aXRlbXMubnIgPSBqOworCX0KKworCWlmICghZmlsZXMtPml0ZW1zLm5yKSB7CisJCWlmIChiaW5hcnlfY291bnQpCisJCQlmcHJpbnRmKHN0ZGVyciwgXygiT25seSBiaW5hcnkgZmlsZXMgY2hhbmdlZC5cbiIpKTsKKwkJZWxzZQorCQkJZnByaW50ZihzdGRlcnIsIF8oIk5vIGNoYW5nZXMuXG4iKSk7CisJCXJldHVybiAwOworCX0KKworCW9wdHMtPnByb21wdCA9IE5fKCJQYXRjaCB1cGRhdGUiKTsKKwljb3VudCA9IGxpc3RfYW5kX2Nob29zZShzLCBmaWxlcywgb3B0cyk7CisJaWYgKGNvdW50ID4gMCkgeworCQlzdHJ1Y3QgYXJndl9hcnJheSBhcmdzID0gQVJHVl9BUlJBWV9JTklUOworCQlzdHJ1Y3QgcGF0aHNwZWMgcHNfc2VsZWN0ZWQgPSB7IDAgfTsKKworCQlmb3IgKGkgPSAwOyBpIDwgZmlsZXMtPml0ZW1zLm5yOyBpKyspCisJCQlpZiAoZmlsZXMtPnNlbGVjdGVkW2ldKQorCQkJCWFyZ3ZfYXJyYXlfcHVzaCgmYXJncywKKwkJCQkJCWZpbGVzLT5pdGVtcy5pdGVtc1tpXS5zdHJpbmcpOworCQlwYXJzZV9wYXRoc3BlYygmcHNfc2VsZWN0ZWQsCisJCQkgICAgICAgUEFUSFNQRUNfQUxMX01BR0lDICYgflBBVEhTUEVDX0xJVEVSQUwsCisJCQkgICAgICAgUEFUSFNQRUNfTElURVJBTF9QQVRILCAiIiwgYXJncy5hcmd2KTsKKwkJcmVzID0gcnVuX2FkZF9wKHMtPnIsIEFERF9QX0FERCwgTlVMTCwgJnBzX3NlbGVjdGVkKTsKKwkJYXJndl9hcnJheV9jbGVhcigmYXJncyk7CisJCWNsZWFyX3BhdGhzcGVjKCZwc19zZWxlY3RlZCk7CisJfQorCisJcmV0dXJuIHJlczsKK30KKworc3RhdGljIGludCBydW5fZGlmZihzdHJ1Y3QgYWRkX2lfc3RhdGUgKnMsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcHMsCisJCSAgICBzdHJ1Y3QgcHJlZml4X2l0ZW1fbGlzdCAqZmlsZXMsCisJCSAgICBzdHJ1Y3QgbGlzdF9hbmRfY2hvb3NlX29wdGlvbnMgKm9wdHMpCit7CisJaW50IHJlcyA9IDA7CisJc3NpemVfdCBjb3VudCwgaTsKKworCXN0cnVjdCBvYmplY3RfaWQgb2lkOworCWludCBpc19pbml0aWFsID0gIXJlc29sdmVfcmVmX3Vuc2FmZSgiSEVBRCIsIFJFU09MVkVfUkVGX1JFQURJTkcsICZvaWQsCisJCQkJCSAgICAgTlVMTCk7CisJaWYgKGdldF9tb2RpZmllZF9maWxlcyhzLT5yLCBJTkRFWF9PTkxZLCBmaWxlcywgcHMsIE5VTEwsIE5VTEwpIDwgMCkKKwkJcmV0dXJuIC0xOworCisJaWYgKCFmaWxlcy0+aXRlbXMubnIpIHsKKwkJcHV0Y2hhcignXG4nKTsKKwkJcmV0dXJuIDA7CisJfQorCisJb3B0cy0+cHJvbXB0ID0gTl8oIlJldmlldyBkaWZmIik7CisJb3B0cy0+ZmxhZ3MgPSBJTU1FRElBVEU7CisJY291bnQgPSBsaXN0X2FuZF9jaG9vc2UocywgZmlsZXMsIG9wdHMpOworCW9wdHMtPmZsYWdzID0gMDsKKwlpZiAoY291bnQgPiAwKSB7CisJCXN0cnVjdCBhcmd2X2FycmF5IGFyZ3MgPSBBUkdWX0FSUkFZX0lOSVQ7CisKKwkJYXJndl9hcnJheV9wdXNobCgmYXJncywgImdpdCIsICJkaWZmIiwgIi1wIiwgIi0tY2FjaGVkIiwKKwkJCQkgb2lkX3RvX2hleCghaXNfaW5pdGlhbCA/ICZvaWQgOgorCQkJCQkgICAgcy0+ci0+aGFzaF9hbGdvLT5lbXB0eV90cmVlKSwKKwkJCQkgIi0tIiwgTlVMTCk7CisJCWZvciAoaSA9IDA7IGkgPCBmaWxlcy0+aXRlbXMubnI7IGkrKykKKwkJCWlmIChmaWxlcy0+c2VsZWN0ZWRbaV0pCisJCQkJYXJndl9hcnJheV9wdXNoKCZhcmdzLAorCQkJCQkJZmlsZXMtPml0ZW1zLml0ZW1zW2ldLnN0cmluZyk7CisJCXJlcyA9IHJ1bl9jb21tYW5kX3Zfb3B0KGFyZ3MuYXJndiwgMCk7CisJCWFyZ3ZfYXJyYXlfY2xlYXIoJmFyZ3MpOworCX0KKworCXB1dGNoYXIoJ1xuJyk7CisJcmV0dXJuIHJlczsKK30KKworc3RhdGljIGludCBydW5faGVscChzdHJ1Y3QgYWRkX2lfc3RhdGUgKnMsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqdW51c2VkX3BzLAorCQkgICAgc3RydWN0IHByZWZpeF9pdGVtX2xpc3QgKnVudXNlZF9maWxlcywKKwkJICAgIHN0cnVjdCBsaXN0X2FuZF9jaG9vc2Vfb3B0aW9ucyAqdW51c2VkX29wdHMpCit7CisJY29sb3JfZnByaW50Zl9sbihzdGRvdXQsIHMtPmhlbHBfY29sb3IsICJzdGF0dXMgICAgICAgIC0gJXMiLAorCQkJIF8oInNob3cgcGF0aHMgd2l0aCBjaGFuZ2VzIikpOworCWNvbG9yX2ZwcmludGZfbG4oc3Rkb3V0LCBzLT5oZWxwX2NvbG9yLCAidXBkYXRlICAgICAgICAtICVzIiwKKwkJCSBfKCJhZGQgd29ya2luZyB0cmVlIHN0YXRlIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXMiKSk7CisJY29sb3JfZnByaW50Zl9sbihzdGRvdXQsIHMtPmhlbHBfY29sb3IsICJyZXZlcnQgICAgICAgIC0gJXMiLAorCQkJIF8oInJldmVydCBzdGFnZWQgc2V0IG9mIGNoYW5nZXMgYmFjayB0byB0aGUgSEVBRCB2ZXJzaW9uIikpOworCWNvbG9yX2ZwcmludGZfbG4oc3Rkb3V0LCBzLT5oZWxwX2NvbG9yLCAicGF0Y2ggICAgICAgICAtICVzIiwKKwkJCSBfKCJwaWNrIGh1bmtzIGFuZCB1cGRhdGUgc2VsZWN0aXZlbHkiKSk7CisJY29sb3JfZnByaW50Zl9sbihzdGRvdXQsIHMtPmhlbHBfY29sb3IsICJkaWZmICAgICAgICAgIC0gJXMiLAorCQkJIF8oInZpZXcgZGlmZiBiZXR3ZWVuIEhFQUQgYW5kIGluZGV4IikpOworCWNvbG9yX2ZwcmludGZfbG4oc3Rkb3V0LCBzLT5oZWxwX2NvbG9yLCAiYWRkIHVudHJhY2tlZCAtICVzIiwKKwkJCSBfKCJhZGQgY29udGVudHMgb2YgdW50cmFja2VkIGZpbGVzIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXMiKSk7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQgY2hvb3NlX3Byb21wdF9oZWxwKHN0cnVjdCBhZGRfaV9zdGF0ZSAqcykKK3sKKwljb2xvcl9mcHJpbnRmX2xuKHN0ZG91dCwgcy0+aGVscF9jb2xvciwgIiVzIiwKKwkJCSBfKCJQcm9tcHQgaGVscDoiKSk7CisJY29sb3JfZnByaW50Zl9sbihzdGRvdXQsIHMtPmhlbHBfY29sb3IsICIxICAgICAgICAgIC0gJXMiLAorCQkJIF8oInNlbGVjdCBhIHNpbmdsZSBpdGVtIikpOworCWNvbG9yX2ZwcmludGZfbG4oc3Rkb3V0LCBzLT5oZWxwX2NvbG9yLCAiMy01ICAgICAgICAtICVzIiwKKwkJCSBfKCJzZWxlY3QgYSByYW5nZSBvZiBpdGVtcyIpKTsKKwljb2xvcl9mcHJpbnRmX2xuKHN0ZG91dCwgcy0+aGVscF9jb2xvciwgIjItMyw2LTkgICAgLSAlcyIsCisJCQkgXygic2VsZWN0IG11bHRpcGxlIHJhbmdlcyIpKTsKKwljb2xvcl9mcHJpbnRmX2xuKHN0ZG91dCwgcy0+aGVscF9jb2xvciwgImZvbyAgICAgICAgLSAlcyIsCisJCQkgXygic2VsZWN0IGl0ZW0gYmFzZWQgb24gdW5pcXVlIHByZWZpeCIpKTsKKwljb2xvcl9mcHJpbnRmX2xuKHN0ZG91dCwgcy0+aGVscF9jb2xvciwgIi0uLi4gICAgICAgLSAlcyIsCisJCQkgXygidW5zZWxlY3Qgc3BlY2lmaWVkIGl0ZW1zIikpOworCWNvbG9yX2ZwcmludGZfbG4oc3Rkb3V0LCBzLT5oZWxwX2NvbG9yLCAiKiAgICAgICAgICAtICVzIiwKKwkJCSBfKCJjaG9vc2UgYWxsIGl0ZW1zIikpOworCWNvbG9yX2ZwcmludGZfbG4oc3Rkb3V0LCBzLT5oZWxwX2NvbG9yLCAiICAgICAgICAgICAtICVzIiwKKwkJCSBfKCIoZW1wdHkpIGZpbmlzaCBzZWxlY3RpbmciKSk7Cit9CisKK3R5cGVkZWYgaW50ICgqY29tbWFuZF90KShzdHJ1Y3QgYWRkX2lfc3RhdGUgKnMsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcHMsCisJCQkgc3RydWN0IHByZWZpeF9pdGVtX2xpc3QgKmZpbGVzLAorCQkJIHN0cnVjdCBsaXN0X2FuZF9jaG9vc2Vfb3B0aW9ucyAqb3B0cyk7CisKK3N0cnVjdCBjb21tYW5kX2l0ZW0geworCXNpemVfdCBwcmVmaXhfbGVuZ3RoOworCWNvbW1hbmRfdCBjb21tYW5kOworfTsKKworc3RydWN0IHByaW50X2NvbW1hbmRfaXRlbV9kYXRhIHsKKwljb25zdCBjaGFyICpjb2xvciwgKnJlc2V0OworfTsKKworc3RhdGljIHZvaWQgcHJpbnRfY29tbWFuZF9pdGVtKGludCBpLCBpbnQgc2VsZWN0ZWQsCisJCQkgICAgICAgc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKml0ZW0sCisJCQkgICAgICAgdm9pZCAqcHJpbnRfY29tbWFuZF9pdGVtX2RhdGEpCit7CisJc3RydWN0IHByaW50X2NvbW1hbmRfaXRlbV9kYXRhICpkID0gcHJpbnRfY29tbWFuZF9pdGVtX2RhdGE7CisJc3RydWN0IGNvbW1hbmRfaXRlbSAqdXRpbCA9IGl0ZW0tPnV0aWw7CisKKwlpZiAoIXV0aWwtPnByZWZpeF9sZW5ndGggfHwKKwkgICAgIWlzX3ZhbGlkX3ByZWZpeChpdGVtLT5zdHJpbmcsIHV0aWwtPnByZWZpeF9sZW5ndGgpKQorCQlwcmludGYoIiAlMmQ6ICVzIiwgaSArIDEsIGl0ZW0tPnN0cmluZyk7CisJZWxzZQorCQlwcmludGYoIiAlMmQ6ICVzJS4qcyVzJXMiLCBpICsgMSwKKwkJICAgICAgIGQtPmNvbG9yLCAoaW50KXV0aWwtPnByZWZpeF9sZW5ndGgsIGl0ZW0tPnN0cmluZywKKwkJICAgICAgIGQtPnJlc2V0LCBpdGVtLT5zdHJpbmcgKyB1dGlsLT5wcmVmaXhfbGVuZ3RoKTsKK30KKworc3RhdGljIHZvaWQgY29tbWFuZF9wcm9tcHRfaGVscChzdHJ1Y3QgYWRkX2lfc3RhdGUgKnMpCit7CisJY29uc3QgY2hhciAqaGVscF9jb2xvciA9IHMtPmhlbHBfY29sb3I7CisJY29sb3JfZnByaW50Zl9sbihzdGRvdXQsIGhlbHBfY29sb3IsICIlcyIsIF8oIlByb21wdCBoZWxwOiIpKTsKKwljb2xvcl9mcHJpbnRmX2xuKHN0ZG91dCwgaGVscF9jb2xvciwgIjEgICAgICAgICAgLSAlcyIsCisJCQkgXygic2VsZWN0IGEgbnVtYmVyZWQgaXRlbSIpKTsKKwljb2xvcl9mcHJpbnRmX2xuKHN0ZG91dCwgaGVscF9jb2xvciwgImZvbyAgICAgICAgLSAlcyIsCisJCQkgXygic2VsZWN0IGl0ZW0gYmFzZWQgb24gdW5pcXVlIHByZWZpeCIpKTsKKwljb2xvcl9mcHJpbnRmX2xuKHN0ZG91dCwgaGVscF9jb2xvciwgIiAgICAgICAgICAgLSAlcyIsCisJCQkgXygiKGVtcHR5KSBzZWxlY3Qgbm90aGluZyIpKTsKK30KKworaW50IHJ1bl9hZGRfaShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwcykKK3sKKwlzdHJ1Y3QgYWRkX2lfc3RhdGUgcyA9IHsgTlVMTCB9OworCXN0cnVjdCBwcmludF9jb21tYW5kX2l0ZW1fZGF0YSBkYXRhID0geyAiWyIsICJdIiB9OworCXN0cnVjdCBsaXN0X2FuZF9jaG9vc2Vfb3B0aW9ucyBtYWluX2xvb3Bfb3B0cyA9IHsKKwkJeyA0LCBOXygiKioqIENvbW1hbmRzICoqKiIpLCBwcmludF9jb21tYW5kX2l0ZW0sICZkYXRhIH0sCisJCU5fKCJXaGF0IG5vdyIpLCBTSU5HTEVUT04gfCBJTU1FRElBVEUsIGNvbW1hbmRfcHJvbXB0X2hlbHAKKwl9OworCXN0cnVjdCB7CisJCWNvbnN0IGNoYXIgKnN0cmluZzsKKwkJY29tbWFuZF90IGNvbW1hbmQ7CisJfSBjb21tYW5kX2xpc3RbXSA9IHsKKwkJeyAic3RhdHVzIiwgcnVuX3N0YXR1cyB9LAorCQl7ICJ1cGRhdGUiLCBydW5fdXBkYXRlIH0sCisJCXsgInJldmVydCIsIHJ1bl9yZXZlcnQgfSwKKwkJeyAiYWRkIHVudHJhY2tlZCIsIHJ1bl9hZGRfdW50cmFja2VkIH0sCisJCXsgInBhdGNoIiwgcnVuX3BhdGNoIH0sCisJCXsgImRpZmYiLCBydW5fZGlmZiB9LAorCQl7ICJxdWl0IiwgTlVMTCB9LAorCQl7ICJoZWxwIiwgcnVuX2hlbHAgfSwKKwl9OworCXN0cnVjdCBwcmVmaXhfaXRlbV9saXN0IGNvbW1hbmRzID0gUFJFRklYX0lURU1fTElTVF9JTklUOworCisJc3RydWN0IHByaW50X2ZpbGVfaXRlbV9kYXRhIHByaW50X2ZpbGVfaXRlbV9kYXRhID0geworCQkiJTEycyAlMTJzICVzIiwgTlVMTCwgTlVMTCwKKwkJU1RSQlVGX0lOSVQsIFNUUkJVRl9JTklULCBTVFJCVUZfSU5JVCwgU1RSQlVGX0lOSVQKKwl9OworCXN0cnVjdCBsaXN0X2FuZF9jaG9vc2Vfb3B0aW9ucyBvcHRzID0geworCQl7IDAsIE5VTEwsIHByaW50X2ZpbGVfaXRlbSwgJnByaW50X2ZpbGVfaXRlbV9kYXRhIH0sCisJCU5VTEwsIDAsIGNob29zZV9wcm9tcHRfaGVscAorCX07CisJc3RydWN0IHN0cmJ1ZiBoZWFkZXIgPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3QgcHJlZml4X2l0ZW1fbGlzdCBmaWxlcyA9IFBSRUZJWF9JVEVNX0xJU1RfSU5JVDsKKwlzc2l6ZV90IGk7CisJaW50IHJlcyA9IDA7CisKKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShjb21tYW5kX2xpc3QpOyBpKyspIHsKKwkJc3RydWN0IGNvbW1hbmRfaXRlbSAqdXRpbCA9IHhjYWxsb2Moc2l6ZW9mKCp1dGlsKSwgMSk7CisJCXV0aWwtPmNvbW1hbmQgPSBjb21tYW5kX2xpc3RbaV0uY29tbWFuZDsKKwkJc3RyaW5nX2xpc3RfYXBwZW5kKCZjb21tYW5kcy5pdGVtcywgY29tbWFuZF9saXN0W2ldLnN0cmluZykKKwkJCS0+dXRpbCA9IHV0aWw7CisJfQorCisJaW5pdF9hZGRfaV9zdGF0ZSgmcywgcik7CisKKwkvKgorCSAqIFdoZW4gY29sb3Igd2FzIGFza2VkIGZvciwgdXNlIHRoZSBwcm9tcHQgY29sb3IgZm9yCisJICogaGlnaGxpZ2h0aW5nLCBvdGhlcndpc2UgdXNlIHNxdWFyZSBicmFja2V0cy4KKwkgKi8KKwlpZiAocy51c2VfY29sb3IpIHsKKwkJZGF0YS5jb2xvciA9IHMucHJvbXB0X2NvbG9yOworCQlkYXRhLnJlc2V0ID0gcy5yZXNldF9jb2xvcjsKKwl9CisJcHJpbnRfZmlsZV9pdGVtX2RhdGEuY29sb3IgPSBkYXRhLmNvbG9yOworCXByaW50X2ZpbGVfaXRlbV9kYXRhLnJlc2V0ID0gZGF0YS5yZXNldDsKKworCXN0cmJ1Zl9hZGRzdHIoJmhlYWRlciwgIiAgICAgICIpOworCXN0cmJ1Zl9hZGRmKCZoZWFkZXIsIHByaW50X2ZpbGVfaXRlbV9kYXRhLm1vZGlmaWVkX2ZtdCwKKwkJICAgIF8oInN0YWdlZCIpLCBfKCJ1bnN0YWdlZCIpLCBfKCJwYXRoIikpOworCW9wdHMubGlzdF9vcHRzLmhlYWRlciA9IGhlYWRlci5idWY7CisKKwlpZiAoZGlzY2FyZF9pbmRleChyLT5pbmRleCkgPCAwIHx8CisJICAgIHJlcG9fcmVhZF9pbmRleChyKSA8IDAgfHwKKwkgICAgcmVwb19yZWZyZXNoX2FuZF93cml0ZV9pbmRleChyLCBSRUZSRVNIX1FVSUVULCAwLCAxLAorCQkJCQkgTlVMTCwgTlVMTCwgTlVMTCkgPCAwKQorCQl3YXJuaW5nKF8oImNvdWxkIG5vdCByZWZyZXNoIGluZGV4IikpOworCisJcmVzID0gcnVuX3N0YXR1cygmcywgcHMsICZmaWxlcywgJm9wdHMpOworCisJZm9yICg7OykgeworCQlzdHJ1Y3QgY29tbWFuZF9pdGVtICp1dGlsOworCisJCWkgPSBsaXN0X2FuZF9jaG9vc2UoJnMsICZjb21tYW5kcywgJm1haW5fbG9vcF9vcHRzKTsKKwkJaWYgKGkgPCAwIHx8IGkgPj0gY29tbWFuZHMuaXRlbXMubnIpCisJCQl1dGlsID0gTlVMTDsKKwkJZWxzZQorCQkJdXRpbCA9IGNvbW1hbmRzLml0ZW1zLml0ZW1zW2ldLnV0aWw7CisKKwkJaWYgKGkgPT0gTElTVF9BTkRfQ0hPT1NFX1FVSVQgfHwgKHV0aWwgJiYgIXV0aWwtPmNvbW1hbmQpKSB7CisJCQlwcmludGYoXygiQnllLlxuIikpOworCQkJcmVzID0gMDsKKwkJCWJyZWFrOworCQl9CisKKwkJaWYgKHV0aWwpCisJCQlyZXMgPSB1dGlsLT5jb21tYW5kKCZzLCBwcywgJmZpbGVzLCAmb3B0cyk7CisJfQorCisJcHJlZml4X2l0ZW1fbGlzdF9jbGVhcigmZmlsZXMpOworCXN0cmJ1Zl9yZWxlYXNlKCZwcmludF9maWxlX2l0ZW1fZGF0YS5idWYpOworCXN0cmJ1Zl9yZWxlYXNlKCZwcmludF9maWxlX2l0ZW1fZGF0YS5uYW1lKTsKKwlzdHJidWZfcmVsZWFzZSgmcHJpbnRfZmlsZV9pdGVtX2RhdGEuaW5kZXgpOworCXN0cmJ1Zl9yZWxlYXNlKCZwcmludF9maWxlX2l0ZW1fZGF0YS53b3JrdHJlZSk7CisJc3RyYnVmX3JlbGVhc2UoJmhlYWRlcik7CisJcHJlZml4X2l0ZW1fbGlzdF9jbGVhcigmY29tbWFuZHMpOworCWNsZWFyX2FkZF9pX3N0YXRlKCZzKTsKKworCXJldHVybiByZXM7Cit9CmRpZmYgLS1naXQgYS9hZGQtaW50ZXJhY3RpdmUuaCBiL2FkZC1pbnRlcmFjdGl2ZS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY5M2YxMjUKLS0tIC9kZXYvbnVsbAorKysgYi9hZGQtaW50ZXJhY3RpdmUuaApAQCAtMCwwICsxLDQxIEBACisjaWZuZGVmIEFERF9JTlRFUkFDVElWRV9ICisjZGVmaW5lIEFERF9JTlRFUkFDVElWRV9ICisKKyNpbmNsdWRlICJjb2xvci5oIgorCitzdHJ1Y3QgYWRkX2lfc3RhdGUgeworCXN0cnVjdCByZXBvc2l0b3J5ICpyOworCWludCB1c2VfY29sb3I7CisJY2hhciBoZWFkZXJfY29sb3JbQ09MT1JfTUFYTEVOXTsKKwljaGFyIGhlbHBfY29sb3JbQ09MT1JfTUFYTEVOXTsKKwljaGFyIHByb21wdF9jb2xvcltDT0xPUl9NQVhMRU5dOworCWNoYXIgZXJyb3JfY29sb3JbQ09MT1JfTUFYTEVOXTsKKwljaGFyIHJlc2V0X2NvbG9yW0NPTE9SX01BWExFTl07CisJY2hhciBmcmFnaW5mb19jb2xvcltDT0xPUl9NQVhMRU5dOworCWNoYXIgY29udGV4dF9jb2xvcltDT0xPUl9NQVhMRU5dOworCWNoYXIgZmlsZV9vbGRfY29sb3JbQ09MT1JfTUFYTEVOXTsKKwljaGFyIGZpbGVfbmV3X2NvbG9yW0NPTE9SX01BWExFTl07CisKKwlpbnQgdXNlX3NpbmdsZV9rZXk7CisJY2hhciAqaW50ZXJhY3RpdmVfZGlmZl9maWx0ZXIsICppbnRlcmFjdGl2ZV9kaWZmX2FsZ29yaXRobTsKK307CisKK3ZvaWQgaW5pdF9hZGRfaV9zdGF0ZShzdHJ1Y3QgYWRkX2lfc3RhdGUgKnMsIHN0cnVjdCByZXBvc2l0b3J5ICpyKTsKK3ZvaWQgY2xlYXJfYWRkX2lfc3RhdGUoc3RydWN0IGFkZF9pX3N0YXRlICpzKTsKKworc3RydWN0IHJlcG9zaXRvcnk7CitzdHJ1Y3QgcGF0aHNwZWM7CitpbnQgcnVuX2FkZF9pKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBzKTsKKworZW51bSBhZGRfcF9tb2RlIHsKKwlBRERfUF9BREQsCisJQUREX1BfU1RBU0gsCisJQUREX1BfUkVTRVQsCisJQUREX1BfQ0hFQ0tPVVQsCisJQUREX1BfV09SS1RSRUUsCit9OworCitpbnQgcnVuX2FkZF9wKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBlbnVtIGFkZF9wX21vZGUgbW9kZSwKKwkgICAgICBjb25zdCBjaGFyICpyZXZpc2lvbiwgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwcyk7CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvYWRkLXBhdGNoLmMgYi9hZGQtcGF0Y2guYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kOGRhZmE4Ci0tLSAvZGV2L251bGwKKysrIGIvYWRkLXBhdGNoLmMKQEAgLTAsMCArMSwxNjgzIEBACisjaW5jbHVkZSAiY2FjaGUuaCIKKyNpbmNsdWRlICJhZGQtaW50ZXJhY3RpdmUuaCIKKyNpbmNsdWRlICJzdHJidWYuaCIKKyNpbmNsdWRlICJydW4tY29tbWFuZC5oIgorI2luY2x1ZGUgImFyZ3YtYXJyYXkuaCIKKyNpbmNsdWRlICJwYXRoc3BlYy5oIgorI2luY2x1ZGUgImNvbG9yLmgiCisjaW5jbHVkZSAiZGlmZi5oIgorI2luY2x1ZGUgImNvbXBhdC90ZXJtaW5hbC5oIgorCitlbnVtIHByb21wdF9tb2RlX3R5cGUgeworCVBST01QVF9NT0RFX0NIQU5HRSA9IDAsIFBST01QVF9ERUxFVElPTiwgUFJPTVBUX0hVTkssCisJUFJPTVBUX01PREVfTUFYLCAvKiBtdXN0IGJlIGxhc3QgKi8KK307CisKK3N0cnVjdCBwYXRjaF9tb2RlIHsKKwkvKgorCSAqIFRoZSBtYWdpYyBjb25zdGFudCA0IGlzIGNob3NlbiBzdWNoIHRoYXQgYWxsIHBhdGNoIG1vZGVzCisJICogcHJvdmlkZSBlbm91Z2ggc3BhY2UgZm9yIHRocmVlIGNvbW1hbmQtbGluZSBhcmd1bWVudHMgZm9sbG93ZWQgYnkgYQorCSAqIHRyYWlsaW5nIGBOVUxMYC4KKwkgKi8KKwljb25zdCBjaGFyICpkaWZmX2NtZFs0XSwgKmFwcGx5X2FyZ3NbNF0sICphcHBseV9jaGVja19hcmdzWzRdOworCXVuc2lnbmVkIGlzX3JldmVyc2U6MSwgaW5kZXhfb25seToxLCBhcHBseV9mb3JfY2hlY2tvdXQ6MTsKKwljb25zdCBjaGFyICpwcm9tcHRfbW9kZVtQUk9NUFRfTU9ERV9NQVhdOworCWNvbnN0IGNoYXIgKmVkaXRfaHVua19oaW50LCAqaGVscF9wYXRjaF90ZXh0OworfTsKKworc3RhdGljIHN0cnVjdCBwYXRjaF9tb2RlIHBhdGNoX21vZGVfYWRkID0geworCS5kaWZmX2NtZCA9IHsgImRpZmYtZmlsZXMiLCBOVUxMIH0sCisJLmFwcGx5X2FyZ3MgPSB7ICItLWNhY2hlZCIsIE5VTEwgfSwKKwkuYXBwbHlfY2hlY2tfYXJncyA9IHsgIi0tY2FjaGVkIiwgTlVMTCB9LAorCS5wcm9tcHRfbW9kZSA9IHsKKwkJTl8oIlN0YWdlIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIiksCisJCU5fKCJTdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIpLAorCQlOXygiU3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIikKKwl9LAorCS5lZGl0X2h1bmtfaGludCA9IE5fKCJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgIgorCQkJICAgICAid2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yIHN0YWdpbmcuIiksCisJLmhlbHBfcGF0Y2hfdGV4dCA9CisJCU5fKCJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCisJCSAgICJuIC0gZG8gbm90IHN0YWdlIHRoaXMgaHVua1xuIgorCQkgICAicSAtIHF1aXQ7IGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgIgorCQkJIm9uZXNcbiIKKwkJICAgImEgLSBzdGFnZSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorCQkgICAiZCAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiAiCisJCQkidGhlIGZpbGVcbiIpCit9OworCitzdGF0aWMgc3RydWN0IHBhdGNoX21vZGUgcGF0Y2hfbW9kZV9zdGFzaCA9IHsKKwkuZGlmZl9jbWQgPSB7ICJkaWZmLWluZGV4IiwgIkhFQUQiLCBOVUxMIH0sCisJLmFwcGx5X2FyZ3MgPSB7ICItLWNhY2hlZCIsIE5VTEwgfSwKKwkuYXBwbHlfY2hlY2tfYXJncyA9IHsgIi0tY2FjaGVkIiwgTlVMTCB9LAorCS5wcm9tcHRfbW9kZSA9IHsKKwkJTl8oIlN0YXNoIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIiksCisJCU5fKCJTdGFzaCBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIpLAorCQlOXygiU3Rhc2ggdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIiksCisJfSwKKwkuZWRpdF9odW5rX2hpbnQgPSBOXygiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rICIKKwkJCSAgICAgIndpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciBzdGFzaGluZy4iKSwKKwkuaGVscF9wYXRjaF90ZXh0ID0KKwkJTl8oInkgLSBzdGFzaCB0aGlzIGh1bmtcbiIKKwkJICAgIm4gLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rXG4iCisJCSAgICJxIC0gcXVpdDsgZG8gbm90IHN0YXNoIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyAiCisJCQkib25lc1xuIgorCQkgICAiYSAtIHN0YXNoIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisJCSAgICJkIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluICIKKwkJCSJ0aGUgZmlsZVxuIiksCit9OworCitzdGF0aWMgc3RydWN0IHBhdGNoX21vZGUgcGF0Y2hfbW9kZV9yZXNldF9oZWFkID0geworCS5kaWZmX2NtZCA9IHsgImRpZmYtaW5kZXgiLCAiLS1jYWNoZWQiLCBOVUxMIH0sCisJLmFwcGx5X2FyZ3MgPSB7ICItUiIsICItLWNhY2hlZCIsIE5VTEwgfSwKKwkuYXBwbHlfY2hlY2tfYXJncyA9IHsgIi1SIiwgIi0tY2FjaGVkIiwgTlVMTCB9LAorCS5pc19yZXZlcnNlID0gMSwKKwkuaW5kZXhfb25seSA9IDEsCisJLnByb21wdF9tb2RlID0geworCQlOXygiVW5zdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIpLAorCQlOXygiVW5zdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIpLAorCQlOXygiVW5zdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiKSwKKwl9LAorCS5lZGl0X2h1bmtfaGludCA9IE5fKCJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgIgorCQkJICAgICAid2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yIHVuc3RhZ2luZy4iKSwKKwkuaGVscF9wYXRjaF90ZXh0ID0KKwkJTl8oInkgLSB1bnN0YWdlIHRoaXMgaHVua1xuIgorCQkgICAibiAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVua1xuIgorCQkgICAicSAtIHF1aXQ7IGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyAiCisJCQkib25lc1xuIgorCQkgICAiYSAtIHVuc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKwkJICAgImQgLSBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiAiCisJCQkidGhlIGZpbGVcbiIpLAorfTsKKworc3RhdGljIHN0cnVjdCBwYXRjaF9tb2RlIHBhdGNoX21vZGVfcmVzZXRfbm90aGVhZCA9IHsKKwkuZGlmZl9jbWQgPSB7ICJkaWZmLWluZGV4IiwgIi1SIiwgIi0tY2FjaGVkIiwgTlVMTCB9LAorCS5hcHBseV9hcmdzID0geyAiLS1jYWNoZWQiLCBOVUxMIH0sCisJLmFwcGx5X2NoZWNrX2FyZ3MgPSB7ICItLWNhY2hlZCIsIE5VTEwgfSwKKwkuaW5kZXhfb25seSA9IDEsCisJLnByb21wdF9tb2RlID0geworCQlOXygiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiKSwKKwkJTl8oIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIiksCisJCU5fKCJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiKSwKKwl9LAorCS5lZGl0X2h1bmtfaGludCA9IE5fKCJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgIgorCQkJICAgICAid2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yIGFwcGx5aW5nLiIpLAorCS5oZWxwX3BhdGNoX3RleHQgPQorCQlOXygieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorCQkgICAibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKKwkJICAgInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nICIKKwkJCSJvbmVzXG4iCisJCSAgICJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKwkJICAgImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gIgorCQkJInRoZSBmaWxlXG4iKSwKK307CisKK3N0YXRpYyBzdHJ1Y3QgcGF0Y2hfbW9kZSBwYXRjaF9tb2RlX2NoZWNrb3V0X2luZGV4ID0geworCS5kaWZmX2NtZCA9IHsgImRpZmYtZmlsZXMiLCBOVUxMIH0sCisJLmFwcGx5X2FyZ3MgPSB7ICItUiIsIE5VTEwgfSwKKwkuYXBwbHlfY2hlY2tfYXJncyA9IHsgIi1SIiwgTlVMTCB9LAorCS5pc19yZXZlcnNlID0gMSwKKwkucHJvbXB0X21vZGUgPSB7CisJCU5fKCJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiKSwKKwkJTl8oIkRpc2NhcmQgZGVsZXRpb24gZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIpLAorCQlOXygiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIpLAorCX0sCisJLmVkaXRfaHVua19oaW50ID0gTl8oIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayAiCisJCQkgICAgICJ3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgZGlzY2FyZGluZy4iKSwKKwkuaGVscF9wYXRjaF90ZXh0ID0KKwkJTl8oInkgLSBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlXG4iCisJCSAgICJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKwkJICAgInEgLSBxdWl0OyBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgIgorCQkJIm9uZXNcbiIKKwkJICAgImEgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisJCSAgICJkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gIgorCQkJInRoZSBmaWxlXG4iKSwKK307CisKK3N0YXRpYyBzdHJ1Y3QgcGF0Y2hfbW9kZSBwYXRjaF9tb2RlX2NoZWNrb3V0X2hlYWQgPSB7CisJLmRpZmZfY21kID0geyAiZGlmZi1pbmRleCIsIE5VTEwgfSwKKwkuYXBwbHlfZm9yX2NoZWNrb3V0ID0gMSwKKwkuYXBwbHlfY2hlY2tfYXJncyA9IHsgIi1SIiwgTlVMTCB9LAorCS5pc19yZXZlcnNlID0gMSwKKwkucHJvbXB0X21vZGUgPSB7CisJCU5fKCJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIiksCisJCU5fKCJEaXNjYXJkIGRlbGV0aW9uIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIiksCisJCU5fKCJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIpLAorCX0sCisJLmVkaXRfaHVua19oaW50ID0gTl8oIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayAiCisJCQkgICAgICJ3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgZGlzY2FyZGluZy4iKSwKKwkuaGVscF9wYXRjaF90ZXh0ID0KKwkJTl8oInkgLSBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorCQkgICAibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorCQkgICAicSAtIHF1aXQ7IGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyAiCisJCQkib25lc1xuIgorCQkgICAiYSAtIGRpc2NhcmQgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKwkJICAgImQgLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiAiCisJCQkidGhlIGZpbGVcbiIpLAorfTsKKworc3RhdGljIHN0cnVjdCBwYXRjaF9tb2RlIHBhdGNoX21vZGVfY2hlY2tvdXRfbm90aGVhZCA9IHsKKwkuZGlmZl9jbWQgPSB7ICJkaWZmLWluZGV4IiwgIi1SIiwgTlVMTCB9LAorCS5hcHBseV9mb3JfY2hlY2tvdXQgPSAxLAorCS5hcHBseV9jaGVja19hcmdzID0geyBOVUxMIH0sCisJLnByb21wdF9tb2RlID0geworCQlOXygiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIiksCisJCU5fKCJBcHBseSBkZWxldGlvbiB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiKSwKKwkJTl8oIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiKSwKKwl9LAorCS5lZGl0X2h1bmtfaGludCA9IE5fKCJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgIgorCQkJICAgICAid2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yIGFwcGx5aW5nLiIpLAorCS5oZWxwX3BhdGNoX3RleHQgPQorCQlOXygieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKKwkJICAgIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorCQkgICAicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgIgorCQkJIm9uZXNcbiIKKwkJICAgImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorCQkgICAiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiAiCisJCQkidGhlIGZpbGVcbiIpLAorfTsKKworc3RhdGljIHN0cnVjdCBwYXRjaF9tb2RlIHBhdGNoX21vZGVfd29ya3RyZWVfaGVhZCA9IHsKKwkuZGlmZl9jbWQgPSB7ICJkaWZmLWluZGV4IiwgTlVMTCB9LAorCS5hcHBseV9hcmdzID0geyAiLVIiLCBOVUxMIH0sCisJLmFwcGx5X2NoZWNrX2FyZ3MgPSB7ICItUiIsIE5VTEwgfSwKKwkuaXNfcmV2ZXJzZSA9IDEsCisJLnByb21wdF9tb2RlID0geworCQlOXygiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIpLAorCQlOXygiRGlzY2FyZCBkZWxldGlvbiBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIpLAorCQlOXygiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiKSwKKwl9LAorCS5lZGl0X2h1bmtfaGludCA9IE5fKCJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgIgorCQkJICAgICAid2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yIGRpc2NhcmRpbmcuIiksCisJLmhlbHBfcGF0Y2hfdGV4dCA9CisJCU5fKCJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorCQkgICAibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlXG4iCisJCSAgICJxIC0gcXVpdDsgZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nICIKKwkJCSJvbmVzXG4iCisJCSAgICJhIC0gZGlzY2FyZCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorCQkgICAiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluICIKKwkJCSJ0aGUgZmlsZVxuIiksCit9OworCitzdGF0aWMgc3RydWN0IHBhdGNoX21vZGUgcGF0Y2hfbW9kZV93b3JrdHJlZV9ub3RoZWFkID0geworCS5kaWZmX2NtZCA9IHsgImRpZmYtaW5kZXgiLCAiLVIiLCBOVUxMIH0sCisJLmFwcGx5X2FyZ3MgPSB7IE5VTEwgfSwKKwkuYXBwbHlfY2hlY2tfYXJncyA9IHsgTlVMTCB9LAorCS5wcm9tcHRfbW9kZSA9IHsKKwkJTl8oIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIpLAorCQlOXygiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIiksCisJCU5fKCJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIiksCisJfSwKKwkuZWRpdF9odW5rX2hpbnQgPSBOXygiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rICIKKwkJCSAgICAgIndpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciBhcHBseWluZy4iKSwKKwkuaGVscF9wYXRjaF90ZXh0ID0KKwkJTl8oInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKwkJICAgIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisJCSAgICJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyAiCisJCQkib25lc1xuIgorCQkgICAiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisJCSAgICJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluICIKKwkJCSJ0aGUgZmlsZVxuIiksCit9OworCitzdHJ1Y3QgaHVua19oZWFkZXIgeworCXVuc2lnbmVkIGxvbmcgb2xkX29mZnNldCwgb2xkX2NvdW50LCBuZXdfb2Zmc2V0LCBuZXdfY291bnQ7CisJLyoKKwkgKiBTdGFydC9lbmQgb2Zmc2V0cyB0byB0aGUgZXh0cmEgdGV4dCBhZnRlciB0aGUgc2Vjb25kIGBAQGAgaW4gdGhlCisJICogaHVuayBoZWFkZXIsIGUuZy4gdGhlIGZ1bmN0aW9uIHNpZ25hdHVyZS4gVGhpcyBpcyBleHBlY3RlZCB0bworCSAqIGluY2x1ZGUgdGhlIG5ld2xpbmUuCisJICovCisJc2l6ZV90IGV4dHJhX3N0YXJ0LCBleHRyYV9lbmQsIGNvbG9yZWRfZXh0cmFfc3RhcnQsIGNvbG9yZWRfZXh0cmFfZW5kOworfTsKKworc3RydWN0IGh1bmsgeworCXNpemVfdCBzdGFydCwgZW5kLCBjb2xvcmVkX3N0YXJ0LCBjb2xvcmVkX2VuZCwgc3BsaXR0YWJsZV9pbnRvOworCXNzaXplX3QgZGVsdGE7CisJZW51bSB7IFVOREVDSURFRF9IVU5LID0gMCwgU0tJUF9IVU5LLCBVU0VfSFVOSyB9IHVzZTsKKwlzdHJ1Y3QgaHVua19oZWFkZXIgaGVhZGVyOworfTsKKworc3RydWN0IGFkZF9wX3N0YXRlIHsKKwlzdHJ1Y3QgYWRkX2lfc3RhdGUgczsKKwlzdHJ1Y3Qgc3RyYnVmIGFuc3dlciwgYnVmOworCisJLyogcGFyc2VkIGRpZmYgKi8KKwlzdHJ1Y3Qgc3RyYnVmIHBsYWluLCBjb2xvcmVkOworCXN0cnVjdCBmaWxlX2RpZmYgeworCQlzdHJ1Y3QgaHVuayBoZWFkOworCQlzdHJ1Y3QgaHVuayAqaHVuazsKKwkJc2l6ZV90IGh1bmtfbnIsIGh1bmtfYWxsb2M7CisJCXVuc2lnbmVkIGRlbGV0ZWQ6MSwgbW9kZV9jaGFuZ2U6MSxiaW5hcnk6MTsKKwl9ICpmaWxlX2RpZmY7CisJc2l6ZV90IGZpbGVfZGlmZl9ucjsKKworCS8qIHBhdGNoIG1vZGUgKi8KKwlzdHJ1Y3QgcGF0Y2hfbW9kZSAqbW9kZTsKKwljb25zdCBjaGFyICpyZXZpc2lvbjsKK307CisKK3N0YXRpYyB2b2lkIGVycihzdHJ1Y3QgYWRkX3Bfc3RhdGUgKnMsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQoreworCXZhX2xpc3QgYXJnczsKKworCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisJZnB1dHMocy0+cy5lcnJvcl9jb2xvciwgc3RkZXJyKTsKKwl2ZnByaW50ZihzdGRlcnIsIGZtdCwgYXJncyk7CisJZnB1dHMocy0+cy5yZXNldF9jb2xvciwgc3RkZXJyKTsKKwlmcHV0YygnXG4nLCBzdGRlcnIpOworCXZhX2VuZChhcmdzKTsKK30KKworc3RhdGljIHZvaWQgc2V0dXBfY2hpbGRfcHJvY2VzcyhzdHJ1Y3QgYWRkX3Bfc3RhdGUgKnMsCisJCQkJc3RydWN0IGNoaWxkX3Byb2Nlc3MgKmNwLCAuLi4pCit7CisJdmFfbGlzdCBhcDsKKwljb25zdCBjaGFyICphcmc7CisKKwl2YV9zdGFydChhcCwgY3ApOworCXdoaWxlICgoYXJnID0gdmFfYXJnKGFwLCBjb25zdCBjaGFyICopKSkKKwkJYXJndl9hcnJheV9wdXNoKCZjcC0+YXJncywgYXJnKTsKKwl2YV9lbmQoYXApOworCisJY3AtPmdpdF9jbWQgPSAxOworCWFyZ3ZfYXJyYXlfcHVzaGYoJmNwLT5lbnZfYXJyYXksCisJCQkgSU5ERVhfRU5WSVJPTk1FTlQgIj0lcyIsIHMtPnMuci0+aW5kZXhfZmlsZSk7Cit9CisKK3N0YXRpYyBpbnQgcGFyc2VfcmFuZ2UoY29uc3QgY2hhciAqKnAsCisJCSAgICAgICB1bnNpZ25lZCBsb25nICpvZmZzZXQsIHVuc2lnbmVkIGxvbmcgKmNvdW50KQoreworCWNoYXIgKnBlbmQ7CisKKwkqb2Zmc2V0ID0gc3RydG91bCgqcCwgJnBlbmQsIDEwKTsKKwlpZiAocGVuZCA9PSAqcCkKKwkJcmV0dXJuIC0xOworCWlmICgqcGVuZCAhPSAnLCcpIHsKKwkJKmNvdW50ID0gMTsKKwkJKnAgPSBwZW5kOworCQlyZXR1cm4gMDsKKwl9CisJKmNvdW50ID0gc3RydG91bChwZW5kICsgMSwgKGNoYXIgKiopcCwgMTApOworCXJldHVybiAqcCA9PSBwZW5kICsgMSA/IC0xIDogMDsKK30KKworc3RhdGljIGludCBwYXJzZV9odW5rX2hlYWRlcihzdHJ1Y3QgYWRkX3Bfc3RhdGUgKnMsIHN0cnVjdCBodW5rICpodW5rKQoreworCXN0cnVjdCBodW5rX2hlYWRlciAqaGVhZGVyID0gJmh1bmstPmhlYWRlcjsKKwljb25zdCBjaGFyICpsaW5lID0gcy0+cGxhaW4uYnVmICsgaHVuay0+c3RhcnQsICpwID0gbGluZTsKKwljaGFyICplb2wgPSBtZW1jaHIocCwgJ1xuJywgcy0+cGxhaW4ubGVuIC0gaHVuay0+c3RhcnQpOworCisJaWYgKCFlb2wpCisJCWVvbCA9IHMtPnBsYWluLmJ1ZiArIHMtPnBsYWluLmxlbjsKKworCWlmICghc2tpcF9wcmVmaXgocCwgIkBAIC0iLCAmcCkgfHwKKwkgICAgcGFyc2VfcmFuZ2UoJnAsICZoZWFkZXItPm9sZF9vZmZzZXQsICZoZWFkZXItPm9sZF9jb3VudCkgPCAwIHx8CisJICAgICFza2lwX3ByZWZpeChwLCAiICsiLCAmcCkgfHwKKwkgICAgcGFyc2VfcmFuZ2UoJnAsICZoZWFkZXItPm5ld19vZmZzZXQsICZoZWFkZXItPm5ld19jb3VudCkgPCAwIHx8CisJICAgICFza2lwX3ByZWZpeChwLCAiIEBAIiwgJnApKQorCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHBhcnNlIGh1bmsgaGVhZGVyICclLipzJyIpLAorCQkJICAgICAoaW50KShlb2wgLSBsaW5lKSwgbGluZSk7CisKKwlodW5rLT5zdGFydCA9IGVvbCAtIHMtPnBsYWluLmJ1ZiArICgqZW9sID09ICdcbicpOworCWhlYWRlci0+ZXh0cmFfc3RhcnQgPSBwIC0gcy0+cGxhaW4uYnVmOworCWhlYWRlci0+ZXh0cmFfZW5kID0gaHVuay0+c3RhcnQ7CisKKwlpZiAoIXMtPmNvbG9yZWQubGVuKSB7CisJCWhlYWRlci0+Y29sb3JlZF9leHRyYV9zdGFydCA9IGhlYWRlci0+Y29sb3JlZF9leHRyYV9lbmQgPSAwOworCQlyZXR1cm4gMDsKKwl9CisKKwkvKiBOb3cgZmluZCB0aGUgZXh0cmEgdGV4dCBpbiB0aGUgY29sb3JlZCBkaWZmICovCisJbGluZSA9IHMtPmNvbG9yZWQuYnVmICsgaHVuay0+Y29sb3JlZF9zdGFydDsKKwllb2wgPSBtZW1jaHIobGluZSwgJ1xuJywgcy0+Y29sb3JlZC5sZW4gLSBodW5rLT5jb2xvcmVkX3N0YXJ0KTsKKwlpZiAoIWVvbCkKKwkJZW9sID0gcy0+Y29sb3JlZC5idWYgKyBzLT5jb2xvcmVkLmxlbjsKKwlwID0gbWVtbWVtKGxpbmUsIGVvbCAtIGxpbmUsICJAQCAtIiwgNCk7CisJaWYgKCFwKQorCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHBhcnNlIGNvbG9yZWQgaHVuayBoZWFkZXIgJyUuKnMnIiksCisJCQkgICAgIChpbnQpKGVvbCAtIGxpbmUpLCBsaW5lKTsKKwlwID0gbWVtbWVtKHAgKyA0LCBlb2wgLSBwIC0gNCwgIiBAQCIsIDMpOworCWlmICghcCkKKwkJcmV0dXJuIGVycm9yKF8oImNvdWxkIG5vdCBwYXJzZSBjb2xvcmVkIGh1bmsgaGVhZGVyICclLipzJyIpLAorCQkJICAgICAoaW50KShlb2wgLSBsaW5lKSwgbGluZSk7CisJaHVuay0+Y29sb3JlZF9zdGFydCA9IGVvbCAtIHMtPmNvbG9yZWQuYnVmICsgKCplb2wgPT0gJ1xuJyk7CisJaGVhZGVyLT5jb2xvcmVkX2V4dHJhX3N0YXJ0ID0gcCArIDMgLSBzLT5jb2xvcmVkLmJ1ZjsKKwloZWFkZXItPmNvbG9yZWRfZXh0cmFfZW5kID0gaHVuay0+Y29sb3JlZF9zdGFydDsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGlzX29jdGFsKGNvbnN0IGNoYXIgKnAsIHNpemVfdCBsZW4pCit7CisJaWYgKCFsZW4pCisJCXJldHVybiAwOworCisJd2hpbGUgKGxlbi0tKQorCQlpZiAoKnAgPCAnMCcgfHwgKihwKyspID4gJzcnKQorCQkJcmV0dXJuIDA7CisJcmV0dXJuIDE7Cit9CisKK3N0YXRpYyBpbnQgcGFyc2VfZGlmZihzdHJ1Y3QgYWRkX3Bfc3RhdGUgKnMsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcHMpCit7CisJc3RydWN0IGFyZ3ZfYXJyYXkgYXJncyA9IEFSR1ZfQVJSQVlfSU5JVDsKKwljb25zdCBjaGFyICpkaWZmX2FsZ29yaXRobSA9IHMtPnMuaW50ZXJhY3RpdmVfZGlmZl9hbGdvcml0aG07CisJc3RydWN0IHN0cmJ1ZiAqcGxhaW4gPSAmcy0+cGxhaW4sICpjb2xvcmVkID0gTlVMTDsKKwlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjcCA9IENISUxEX1BST0NFU1NfSU5JVDsKKwljaGFyICpwLCAqcGVuZCwgKmNvbG9yZWRfcCA9IE5VTEwsICpjb2xvcmVkX3BlbmQgPSBOVUxMLCBtYXJrZXIgPSAnXDAnOworCXNpemVfdCBmaWxlX2RpZmZfYWxsb2MgPSAwLCBpLCBjb2xvcl9hcmdfaW5kZXg7CisJc3RydWN0IGZpbGVfZGlmZiAqZmlsZV9kaWZmID0gTlVMTDsKKwlzdHJ1Y3QgaHVuayAqaHVuayA9IE5VTEw7CisJaW50IHJlczsKKworCWFyZ3ZfYXJyYXlfcHVzaHYoJmFyZ3MsIHMtPm1vZGUtPmRpZmZfY21kKTsKKwlpZiAoZGlmZl9hbGdvcml0aG0pCisJCWFyZ3ZfYXJyYXlfcHVzaGYoJmFyZ3MsICItLWRpZmYtYWxnb3JpdGhtPSVzIiwgZGlmZl9hbGdvcml0aG0pOworCWlmIChzLT5yZXZpc2lvbikgeworCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKKwkJYXJndl9hcnJheV9wdXNoKCZhcmdzLAorCQkJCS8qIGNvdWxkIGJlIG9uIGFuIHVuYm9ybiBicmFuY2ggKi8KKwkJCQkhc3RyY21wKCJIRUFEIiwgcy0+cmV2aXNpb24pICYmCisJCQkJZ2V0X29pZCgiSEVBRCIsICZvaWQpID8KKwkJCQllbXB0eV90cmVlX29pZF9oZXgoKSA6IHMtPnJldmlzaW9uKTsKKwl9CisJY29sb3JfYXJnX2luZGV4ID0gYXJncy5hcmdjOworCS8qIFVzZSBgLS1uby1jb2xvcmAgZXhwbGljaXRseSwganVzdCBpbiBjYXNlIGBkaWZmLmNvbG9yID0gYWx3YXlzYC4gKi8KKwlhcmd2X2FycmF5X3B1c2hsKCZhcmdzLCAiLS1uby1jb2xvciIsICItcCIsICItLSIsIE5VTEwpOworCWZvciAoaSA9IDA7IGkgPCBwcy0+bnI7IGkrKykKKwkJYXJndl9hcnJheV9wdXNoKCZhcmdzLCBwcy0+aXRlbXNbaV0ub3JpZ2luYWwpOworCisJc2V0dXBfY2hpbGRfcHJvY2VzcyhzLCAmY3AsIE5VTEwpOworCWNwLmFyZ3YgPSBhcmdzLmFyZ3Y7CisJcmVzID0gY2FwdHVyZV9jb21tYW5kKCZjcCwgcGxhaW4sIDApOworCWlmIChyZXMpIHsKKwkJYXJndl9hcnJheV9jbGVhcigmYXJncyk7CisJCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3QgcGFyc2UgZGlmZiIpKTsKKwl9CisJaWYgKCFwbGFpbi0+bGVuKSB7CisJCWFyZ3ZfYXJyYXlfY2xlYXIoJmFyZ3MpOworCQlyZXR1cm4gMDsKKwl9CisJc3RyYnVmX2NvbXBsZXRlX2xpbmUocGxhaW4pOworCisJaWYgKHdhbnRfY29sb3JfZmQoMSwgLTEpKSB7CisJCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNvbG9yZWRfY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisJCWNvbnN0IGNoYXIgKmRpZmZfZmlsdGVyID0gcy0+cy5pbnRlcmFjdGl2ZV9kaWZmX2ZpbHRlcjsKKworCQlzZXR1cF9jaGlsZF9wcm9jZXNzKHMsICZjb2xvcmVkX2NwLCBOVUxMKTsKKwkJeHNucHJpbnRmKChjaGFyICopYXJncy5hcmd2W2NvbG9yX2FyZ19pbmRleF0sIDgsICItLWNvbG9yIik7CisJCWNvbG9yZWRfY3AuYXJndiA9IGFyZ3MuYXJndjsKKwkJY29sb3JlZCA9ICZzLT5jb2xvcmVkOworCQlyZXMgPSBjYXB0dXJlX2NvbW1hbmQoJmNvbG9yZWRfY3AsIGNvbG9yZWQsIDApOworCQlhcmd2X2FycmF5X2NsZWFyKCZhcmdzKTsKKwkJaWYgKHJlcykKKwkJCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3QgcGFyc2UgY29sb3JlZCBkaWZmIikpOworCisJCWlmIChkaWZmX2ZpbHRlcikgeworCQkJc3RydWN0IGNoaWxkX3Byb2Nlc3MgZmlsdGVyX2NwID0gQ0hJTERfUFJPQ0VTU19JTklUOworCisJCQlzZXR1cF9jaGlsZF9wcm9jZXNzKHMsICZmaWx0ZXJfY3AsCisJCQkJCSAgICBkaWZmX2ZpbHRlciwgTlVMTCk7CisJCQlmaWx0ZXJfY3AuZ2l0X2NtZCA9IDA7CisJCQlmaWx0ZXJfY3AudXNlX3NoZWxsID0gMTsKKwkJCXN0cmJ1Zl9yZXNldCgmcy0+YnVmKTsKKwkJCWlmIChwaXBlX2NvbW1hbmQoJmZpbHRlcl9jcCwKKwkJCQkJIGNvbG9yZWQtPmJ1ZiwgY29sb3JlZC0+bGVuLAorCQkJCQkgJnMtPmJ1ZiwgY29sb3JlZC0+bGVuLAorCQkJCQkgTlVMTCwgMCkgPCAwKQorCQkJCXJldHVybiBlcnJvcihfKCJmYWlsZWQgdG8gcnVuICclcyciKSwKKwkJCQkJICAgICBkaWZmX2ZpbHRlcik7CisJCQlzdHJidWZfc3dhcChjb2xvcmVkLCAmcy0+YnVmKTsKKwkJfQorCisJCXN0cmJ1Zl9jb21wbGV0ZV9saW5lKGNvbG9yZWQpOworCQljb2xvcmVkX3AgPSBjb2xvcmVkLT5idWY7CisJCWNvbG9yZWRfcGVuZCA9IGNvbG9yZWRfcCArIGNvbG9yZWQtPmxlbjsKKwl9CisJYXJndl9hcnJheV9jbGVhcigmYXJncyk7CisKKwkvKiBwYXJzZSBmaWxlcyBhbmQgaHVua3MgKi8KKwlwID0gcGxhaW4tPmJ1ZjsKKwlwZW5kID0gcCArIHBsYWluLT5sZW47CisJd2hpbGUgKHAgIT0gcGVuZCkgeworCQljaGFyICplb2wgPSBtZW1jaHIocCwgJ1xuJywgcGVuZCAtIHApOworCQljb25zdCBjaGFyICpkZWxldGVkID0gTlVMTCwgKm1vZGVfY2hhbmdlID0gTlVMTDsKKworCQlpZiAoIWVvbCkKKwkJCWVvbCA9IHBlbmQ7CisKKwkJaWYgKHN0YXJ0c193aXRoKHAsICJkaWZmICIpKSB7CisJCQlzLT5maWxlX2RpZmZfbnIrKzsKKwkJCUFMTE9DX0dST1cocy0+ZmlsZV9kaWZmLCBzLT5maWxlX2RpZmZfbnIsCisJCQkJICAgZmlsZV9kaWZmX2FsbG9jKTsKKwkJCWZpbGVfZGlmZiA9IHMtPmZpbGVfZGlmZiArIHMtPmZpbGVfZGlmZl9uciAtIDE7CisJCQltZW1zZXQoZmlsZV9kaWZmLCAwLCBzaXplb2YoKmZpbGVfZGlmZikpOworCQkJaHVuayA9ICZmaWxlX2RpZmYtPmhlYWQ7CisJCQlodW5rLT5zdGFydCA9IHAgLSBwbGFpbi0+YnVmOworCQkJaWYgKGNvbG9yZWRfcCkKKwkJCQlodW5rLT5jb2xvcmVkX3N0YXJ0ID0gY29sb3JlZF9wIC0gY29sb3JlZC0+YnVmOworCQkJbWFya2VyID0gJ1wwJzsKKwkJfSBlbHNlIGlmIChwID09IHBsYWluLT5idWYpCisJCQlCVUcoImRpZmYgc3RhcnRzIHdpdGggdW5leHBlY3RlZCBsaW5lOlxuIgorCQkJICAgICIlLipzXG4iLCAoaW50KShlb2wgLSBwKSwgcCk7CisJCWVsc2UgaWYgKGZpbGVfZGlmZi0+ZGVsZXRlZCkKKwkJCTsgLyoga2VlcCB0aGUgcmVzdCBvZiB0aGUgZmlsZSBpbiBhIHNpbmdsZSAiaHVuayIgKi8KKwkJZWxzZSBpZiAoc3RhcnRzX3dpdGgocCwgIkBAICIpIHx8CisJCQkgKGh1bmsgPT0gJmZpbGVfZGlmZi0+aGVhZCAmJgorCQkJICBza2lwX3ByZWZpeChwLCAiZGVsZXRlZCBmaWxlIiwgJmRlbGV0ZWQpKSkgeworCQkJaWYgKG1hcmtlciA9PSAnLScgfHwgbWFya2VyID09ICcrJykKKwkJCQkvKgorCQkJCSAqIFNob3VsZCBub3QgaGFwcGVuOyBwcmV2aW91cyBodW5rIGRpZCBub3QgZW5kCisJCQkJICogaW4gYSBjb250ZXh0IGxpbmU/IEhhbmRsZSBpdCBhbnl3YXkuCisJCQkJICovCisJCQkJaHVuay0+c3BsaXR0YWJsZV9pbnRvKys7CisKKwkJCWZpbGVfZGlmZi0+aHVua19ucisrOworCQkJQUxMT0NfR1JPVyhmaWxlX2RpZmYtPmh1bmssIGZpbGVfZGlmZi0+aHVua19uciwKKwkJCQkgICBmaWxlX2RpZmYtPmh1bmtfYWxsb2MpOworCQkJaHVuayA9IGZpbGVfZGlmZi0+aHVuayArIGZpbGVfZGlmZi0+aHVua19uciAtIDE7CisJCQltZW1zZXQoaHVuaywgMCwgc2l6ZW9mKCpodW5rKSk7CisKKwkJCWh1bmstPnN0YXJ0ID0gcCAtIHBsYWluLT5idWY7CisJCQlpZiAoY29sb3JlZCkKKwkJCQlodW5rLT5jb2xvcmVkX3N0YXJ0ID0gY29sb3JlZF9wIC0gY29sb3JlZC0+YnVmOworCisJCQlpZiAoZGVsZXRlZCkKKwkJCQlmaWxlX2RpZmYtPmRlbGV0ZWQgPSAxOworCQkJZWxzZSBpZiAocGFyc2VfaHVua19oZWFkZXIocywgaHVuaykgPCAwKQorCQkJCXJldHVybiAtMTsKKworCQkJLyoKKwkJCSAqIFN0YXJ0IGNvdW50aW5nIGludG8gaG93IG1hbnkgaHVua3MgdGhpcyBvbmUgY2FuIGJlCisJCQkgKiBzcGxpdAorCQkJICovCisJCQltYXJrZXIgPSAqcDsKKwkJfSBlbHNlIGlmIChodW5rID09ICZmaWxlX2RpZmYtPmhlYWQgJiYKKwkJCSAgIHNraXBfcHJlZml4KHAsICJvbGQgbW9kZSAiLCAmbW9kZV9jaGFuZ2UpICYmCisJCQkgICBpc19vY3RhbChtb2RlX2NoYW5nZSwgZW9sIC0gbW9kZV9jaGFuZ2UpKSB7CisJCQlpZiAoZmlsZV9kaWZmLT5tb2RlX2NoYW5nZSkKKwkJCQlCVUcoImRvdWJsZSBtb2RlIGNoYW5nZT9cblxuJS4qcyIsCisJCQkJICAgIChpbnQpKGVvbCAtIHBsYWluLT5idWYpLCBwbGFpbi0+YnVmKTsKKwkJCWlmIChmaWxlX2RpZmYtPmh1bmtfbnIrKykKKwkJCQlCVUcoIm1vZGUgY2hhbmdlIGluIHRoZSBtaWRkbGU/XG5cbiUuKnMiLAorCQkJCSAgICAoaW50KShlb2wgLSBwbGFpbi0+YnVmKSwgcGxhaW4tPmJ1Zik7CisKKwkJCS8qCisJCQkgKiBEbyAqbm90KiBjaGFuZ2UgYGh1bmtgOiB0aGUgbW9kZSBjaGFuZ2UgcHNldWRvLWh1bmsKKwkJCSAqIGlzIF9wYXJ0IG9mXyB0aGUgaGVhZGVyICJodW5rIi4KKwkJCSAqLworCQkJZmlsZV9kaWZmLT5tb2RlX2NoYW5nZSA9IDE7CisJCQlBTExPQ19HUk9XKGZpbGVfZGlmZi0+aHVuaywgZmlsZV9kaWZmLT5odW5rX25yLAorCQkJCSAgIGZpbGVfZGlmZi0+aHVua19hbGxvYyk7CisJCQltZW1zZXQoZmlsZV9kaWZmLT5odW5rLCAwLCBzaXplb2Yoc3RydWN0IGh1bmspKTsKKwkJCWZpbGVfZGlmZi0+aHVuay0+c3RhcnQgPSBwIC0gcGxhaW4tPmJ1ZjsKKwkJCWlmIChjb2xvcmVkX3ApCisJCQkJZmlsZV9kaWZmLT5odW5rLT5jb2xvcmVkX3N0YXJ0ID0KKwkJCQkJY29sb3JlZF9wIC0gY29sb3JlZC0+YnVmOworCQl9IGVsc2UgaWYgKGh1bmsgPT0gJmZpbGVfZGlmZi0+aGVhZCAmJgorCQkJICAgc2tpcF9wcmVmaXgocCwgIm5ldyBtb2RlICIsICZtb2RlX2NoYW5nZSkgJiYKKwkJCSAgIGlzX29jdGFsKG1vZGVfY2hhbmdlLCBlb2wgLSBtb2RlX2NoYW5nZSkpIHsKKworCQkJLyoKKwkJCSAqIEV4dGVuZCB0aGUgIm1vZGUgY2hhbmdlIiBwc2V1ZG8taHVuayB0byBpbmNsdWRlIGFsc28KKwkJCSAqIHRoZSAibmV3IG1vZGUiIGxpbmUuCisJCQkgKi8KKwkJCWlmICghZmlsZV9kaWZmLT5tb2RlX2NoYW5nZSkKKwkJCQlCVUcoIiduZXcgbW9kZScgd2l0aG91dCAnb2xkIG1vZGUnP1xuXG4lLipzIiwKKwkJCQkgICAgKGludCkoZW9sIC0gcGxhaW4tPmJ1ZiksIHBsYWluLT5idWYpOworCQkJaWYgKGZpbGVfZGlmZi0+aHVua19uciAhPSAxKQorCQkJCUJVRygibW9kZSBjaGFuZ2UgaW4gdGhlIG1pZGRsZT9cblxuJS4qcyIsCisJCQkJICAgIChpbnQpKGVvbCAtIHBsYWluLT5idWYpLCBwbGFpbi0+YnVmKTsKKwkJCWlmIChwIC0gcGxhaW4tPmJ1ZiAhPSBmaWxlX2RpZmYtPmh1bmstPmVuZCkKKwkJCQlCVUcoIiduZXcgbW9kZScgZG9lcyBub3QgaW1tZWRpYXRlbHkgZm9sbG93ICIKKwkJCQkgICAgIidvbGQgbW9kZSc/XG5cbiUuKnMiLAorCQkJCSAgICAoaW50KShlb2wgLSBwbGFpbi0+YnVmKSwgcGxhaW4tPmJ1Zik7CisJCX0gZWxzZSBpZiAoaHVuayA9PSAmZmlsZV9kaWZmLT5oZWFkICYmCisJCQkgICBzdGFydHNfd2l0aChwLCAiQmluYXJ5IGZpbGVzICIpKQorCQkJZmlsZV9kaWZmLT5iaW5hcnkgPSAxOworCisJCWlmIChmaWxlX2RpZmYtPmRlbGV0ZWQgJiYgZmlsZV9kaWZmLT5tb2RlX2NoYW5nZSkKKwkJCUJVRygiZGlmZiBjb250YWlucyBkZWxldGUgKmFuZCogYSBtb2RlIGNoYW5nZT8hP1xuJS4qcyIsCisJCQkgICAgKGludCkoZW9sIC0gKHBsYWluLT5idWYgKyBmaWxlX2RpZmYtPmhlYWQuc3RhcnQpKSwKKwkJCSAgICBwbGFpbi0+YnVmICsgZmlsZV9kaWZmLT5oZWFkLnN0YXJ0KTsKKworCQlpZiAoKG1hcmtlciA9PSAnLScgfHwgbWFya2VyID09ICcrJykgJiYgKnAgPT0gJyAnKQorCQkJaHVuay0+c3BsaXR0YWJsZV9pbnRvKys7CisJCWlmIChtYXJrZXIgJiYgKnAgIT0gJ1xcJykKKwkJCW1hcmtlciA9ICpwOworCisJCXAgPSBlb2wgPT0gcGVuZCA/IHBlbmQgOiBlb2wgKyAxOworCQlodW5rLT5lbmQgPSBwIC0gcGxhaW4tPmJ1ZjsKKworCQlpZiAoY29sb3JlZCkgeworCQkJY2hhciAqY29sb3JlZF9lb2wgPSBtZW1jaHIoY29sb3JlZF9wLCAnXG4nLAorCQkJCQkJICAgY29sb3JlZF9wZW5kIC0gY29sb3JlZF9wKTsKKwkJCWlmIChjb2xvcmVkX2VvbCkKKwkJCQljb2xvcmVkX3AgPSBjb2xvcmVkX2VvbCArIDE7CisJCQllbHNlIGlmIChwICE9IHBlbmQpCisJCQkJLyogY29sb3JlZCBzaG9ydGVyIHRoYW4gbm9uLWNvbG9yZWQ/ICovCisJCQkJZ290byBtaXNtYXRjaGVkX291dHB1dDsKKwkJCWVsc2UKKwkJCQljb2xvcmVkX3AgPSBjb2xvcmVkX3BlbmQ7CisKKwkJCWh1bmstPmNvbG9yZWRfZW5kID0gY29sb3JlZF9wIC0gY29sb3JlZC0+YnVmOworCQl9CisKKwkJaWYgKG1vZGVfY2hhbmdlKSB7CisJCQlpZiAoZmlsZV9kaWZmLT5odW5rX25yICE9IDEpCisJCQkJQlVHKCJtb2RlIGNoYW5nZSBpbiBodW5rICMlZD8/PyIsCisJCQkJICAgIChpbnQpZmlsZV9kaWZmLT5odW5rX25yKTsKKwkJCS8qIEFkanVzdCB0aGUgZW5kIG9mIHRoZSAibW9kZSBjaGFuZ2UiIHBzZXVkby1odW5rICovCisJCQlmaWxlX2RpZmYtPmh1bmstPmVuZCA9IGh1bmstPmVuZDsKKwkJCWlmIChjb2xvcmVkKQorCQkJCWZpbGVfZGlmZi0+aHVuay0+Y29sb3JlZF9lbmQgPSBodW5rLT5jb2xvcmVkX2VuZDsKKwkJfQorCX0KKworCWlmIChtYXJrZXIgPT0gJy0nIHx8IG1hcmtlciA9PSAnKycpCisJCS8qCisJCSAqIExhc3QgaHVuayBlbmRlZCBpbiBub24tY29udGV4dCBsaW5lIChpLmUuIGl0IGFwcGVuZGVkIGxpbmVzCisJCSAqIHRvIHRoZSBmaWxlLCBzbyB0aGVyZSBhcmUgbm8gdHJhaWxpbmcgY29udGV4dCBsaW5lcykuCisJCSAqLworCQlodW5rLT5zcGxpdHRhYmxlX2ludG8rKzsKKworCS8qIG5vbi1jb2xvcmVkIHNob3J0ZXIgdGhhbiBjb2xvcmVkPyAqLworCWlmIChjb2xvcmVkX3AgIT0gY29sb3JlZF9wZW5kKSB7CittaXNtYXRjaGVkX291dHB1dDoKKwkJZXJyb3IoXygibWlzbWF0Y2hlZCBvdXRwdXQgZnJvbSBpbnRlcmFjdGl2ZS5kaWZmRmlsdGVyIikpOworCQlhZHZpc2UoXygiWW91ciBmaWx0ZXIgbXVzdCBtYWludGFpbiBhIG9uZS10by1vbmUgY29ycmVzcG9uZGVuY2VcbiIKKwkJCSAiYmV0d2VlbiBpdHMgaW5wdXQgYW5kIG91dHB1dCBsaW5lcy4iKSk7CisJCXJldHVybiAtMTsKKwl9CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHNpemVfdCBmaW5kX25leHRfbGluZShzdHJ1Y3Qgc3RyYnVmICpzYiwgc2l6ZV90IG9mZnNldCkKK3sKKwljaGFyICplb2w7CisKKwlpZiAob2Zmc2V0ID49IHNiLT5sZW4pCisJCUJVRygibG9va2luZyBmb3IgbmV4dCBsaW5lIGJleW9uZCBidWZmZXIgKCVkID49ICVkKVxuJXMiLAorCQkgICAgKGludClvZmZzZXQsIChpbnQpc2ItPmxlbiwgc2ItPmJ1Zik7CisKKwllb2wgPSBtZW1jaHIoc2ItPmJ1ZiArIG9mZnNldCwgJ1xuJywgc2ItPmxlbiAtIG9mZnNldCk7CisJaWYgKCFlb2wpCisJCXJldHVybiBzYi0+bGVuOworCXJldHVybiBlb2wgLSBzYi0+YnVmICsgMTsKK30KKworc3RhdGljIHZvaWQgcmVuZGVyX2h1bmsoc3RydWN0IGFkZF9wX3N0YXRlICpzLCBzdHJ1Y3QgaHVuayAqaHVuaywKKwkJCXNzaXplX3QgZGVsdGEsIGludCBjb2xvcmVkLCBzdHJ1Y3Qgc3RyYnVmICpvdXQpCit7CisJc3RydWN0IGh1bmtfaGVhZGVyICpoZWFkZXIgPSAmaHVuay0+aGVhZGVyOworCisJaWYgKGh1bmstPmhlYWRlci5vbGRfb2Zmc2V0ICE9IDAgfHwgaHVuay0+aGVhZGVyLm5ld19vZmZzZXQgIT0gMCkgeworCQkvKgorCQkgKiBHZW5lcmF0ZSB0aGUgaHVuayBoZWFkZXIgZHluYW1pY2FsbHksIGV4Y2VwdCBmb3Igc3BlY2lhbAorCQkgKiBodW5rcyAoc3VjaCBhcyB0aGUgZGlmZiBoZWFkZXIpLgorCQkgKi8KKwkJY29uc3QgY2hhciAqcDsKKwkJc2l6ZV90IGxlbjsKKwkJdW5zaWduZWQgbG9uZyBvbGRfb2Zmc2V0ID0gaGVhZGVyLT5vbGRfb2Zmc2V0OworCQl1bnNpZ25lZCBsb25nIG5ld19vZmZzZXQgPSBoZWFkZXItPm5ld19vZmZzZXQ7CisKKwkJaWYgKCFjb2xvcmVkKSB7CisJCQlwID0gcy0+cGxhaW4uYnVmICsgaGVhZGVyLT5leHRyYV9zdGFydDsKKwkJCWxlbiA9IGhlYWRlci0+ZXh0cmFfZW5kIC0gaGVhZGVyLT5leHRyYV9zdGFydDsKKwkJfSBlbHNlIHsKKwkJCXN0cmJ1Zl9hZGRzdHIob3V0LCBzLT5zLmZyYWdpbmZvX2NvbG9yKTsKKwkJCXAgPSBzLT5jb2xvcmVkLmJ1ZiArIGhlYWRlci0+Y29sb3JlZF9leHRyYV9zdGFydDsKKwkJCWxlbiA9IGhlYWRlci0+Y29sb3JlZF9leHRyYV9lbmQKKwkJCQktIGhlYWRlci0+Y29sb3JlZF9leHRyYV9zdGFydDsKKwkJfQorCisJCWlmIChzLT5tb2RlLT5pc19yZXZlcnNlKQorCQkJb2xkX29mZnNldCAtPSBkZWx0YTsKKwkJZWxzZQorCQkJbmV3X29mZnNldCArPSBkZWx0YTsKKworCQlzdHJidWZfYWRkZihvdXQsICJAQCAtJWx1LCVsdSArJWx1LCVsdSBAQCIsCisJCQkgICAgb2xkX29mZnNldCwgaGVhZGVyLT5vbGRfY291bnQsCisJCQkgICAgbmV3X29mZnNldCwgaGVhZGVyLT5uZXdfY291bnQpOworCQlpZiAobGVuKQorCQkJc3RyYnVmX2FkZChvdXQsIHAsIGxlbik7CisJCWVsc2UgaWYgKGNvbG9yZWQpCisJCQlzdHJidWZfYWRkZihvdXQsICIlc1xuIiwgR0lUX0NPTE9SX1JFU0VUKTsKKwkJZWxzZQorCQkJc3RyYnVmX2FkZGNoKG91dCwgJ1xuJyk7CisJfQorCisJaWYgKGNvbG9yZWQpCisJCXN0cmJ1Zl9hZGQob3V0LCBzLT5jb2xvcmVkLmJ1ZiArIGh1bmstPmNvbG9yZWRfc3RhcnQsCisJCQkgICBodW5rLT5jb2xvcmVkX2VuZCAtIGh1bmstPmNvbG9yZWRfc3RhcnQpOworCWVsc2UKKwkJc3RyYnVmX2FkZChvdXQsIHMtPnBsYWluLmJ1ZiArIGh1bmstPnN0YXJ0LAorCQkJICAgaHVuay0+ZW5kIC0gaHVuay0+c3RhcnQpOworfQorCitzdGF0aWMgdm9pZCByZW5kZXJfZGlmZl9oZWFkZXIoc3RydWN0IGFkZF9wX3N0YXRlICpzLAorCQkJICAgICAgIHN0cnVjdCBmaWxlX2RpZmYgKmZpbGVfZGlmZiwgaW50IGNvbG9yZWQsCisJCQkgICAgICAgc3RydWN0IHN0cmJ1ZiAqb3V0KQoreworCS8qCisJICogSWYgdGhlcmUgd2FzIGEgbW9kZSBjaGFuZ2UsIHRoZSBmaXJzdCBodW5rIGlzIGEgcHNldWRvIGh1bmsgdGhhdAorCSAqIGNvcnJlc3BvbmRzIHRvIHRoZSBtb2RlIGxpbmUgaW4gdGhlIGhlYWRlci4gSWYgdGhlIHVzZXIgZGlkIG5vdCB3YW50CisJICogdG8gc3RhZ2UgdGhhdCAiaHVuayIsIHdlIGFjdHVhbGx5IGhhdmUgdG8gY3V0IGl0IG91dCBmcm9tIHRoZSBoZWFkZXIuCisJICovCisJaW50IHNraXBfbW9kZV9jaGFuZ2UgPQorCQlmaWxlX2RpZmYtPm1vZGVfY2hhbmdlICYmIGZpbGVfZGlmZi0+aHVuay0+dXNlICE9IFVTRV9IVU5LOworCXN0cnVjdCBodW5rICpoZWFkID0gJmZpbGVfZGlmZi0+aGVhZCwgKmZpcnN0ID0gZmlsZV9kaWZmLT5odW5rOworCisJaWYgKCFza2lwX21vZGVfY2hhbmdlKSB7CisJCXJlbmRlcl9odW5rKHMsIGhlYWQsIDAsIGNvbG9yZWQsIG91dCk7CisJCXJldHVybjsKKwl9CisKKwlpZiAoY29sb3JlZCkgeworCQljb25zdCBjaGFyICpwID0gcy0+Y29sb3JlZC5idWY7CisKKwkJc3RyYnVmX2FkZChvdXQsIHAgKyBoZWFkLT5jb2xvcmVkX3N0YXJ0LAorCQkJICAgIGZpcnN0LT5jb2xvcmVkX3N0YXJ0IC0gaGVhZC0+Y29sb3JlZF9zdGFydCk7CisJCXN0cmJ1Zl9hZGQob3V0LCBwICsgZmlyc3QtPmNvbG9yZWRfZW5kLAorCQkJICAgIGhlYWQtPmNvbG9yZWRfZW5kIC0gZmlyc3QtPmNvbG9yZWRfZW5kKTsKKwl9IGVsc2UgeworCQljb25zdCBjaGFyICpwID0gcy0+cGxhaW4uYnVmOworCisJCXN0cmJ1Zl9hZGQob3V0LCBwICsgaGVhZC0+c3RhcnQsIGZpcnN0LT5zdGFydCAtIGhlYWQtPnN0YXJ0KTsKKwkJc3RyYnVmX2FkZChvdXQsIHAgKyBmaXJzdC0+ZW5kLCBoZWFkLT5lbmQgLSBmaXJzdC0+ZW5kKTsKKwl9Cit9CisKKy8qIENvYWxlc2NlIGh1bmtzIGFnYWluIHRoYXQgd2VyZSBzcGxpdCAqLworc3RhdGljIGludCBtZXJnZV9odW5rcyhzdHJ1Y3QgYWRkX3Bfc3RhdGUgKnMsIHN0cnVjdCBmaWxlX2RpZmYgKmZpbGVfZGlmZiwKKwkJICAgICAgIHNpemVfdCAqaHVua19pbmRleCwgaW50IHVzZV9hbGwsIHN0cnVjdCBodW5rICptZXJnZWQpCit7CisJc2l6ZV90IGkgPSAqaHVua19pbmRleCwgZGVsdGE7CisJc3RydWN0IGh1bmsgKmh1bmsgPSBmaWxlX2RpZmYtPmh1bmsgKyBpOworCS8qIGBoZWFkZXJgIGNvcnJlc3BvbmRzIHRvIHRoZSBtZXJnZWQgaHVuayAqLworCXN0cnVjdCBodW5rX2hlYWRlciAqaGVhZGVyID0gJm1lcmdlZC0+aGVhZGVyLCAqbmV4dDsKKworCWlmICghdXNlX2FsbCAmJiBodW5rLT51c2UgIT0gVVNFX0hVTkspCisJCXJldHVybiAwOworCisJKm1lcmdlZCA9ICpodW5rOworCS8qIFdlIHNpbXBseSBza2lwIHRoZSBjb2xvcmVkIHBhcnQgKGlmIGFueSkgd2hlbiBtZXJnaW5nIGh1bmtzICovCisJbWVyZ2VkLT5jb2xvcmVkX3N0YXJ0ID0gbWVyZ2VkLT5jb2xvcmVkX2VuZCA9IDA7CisKKwlmb3IgKDsgaSArIDEgPCBmaWxlX2RpZmYtPmh1bmtfbnI7IGkrKykgeworCQlodW5rKys7CisJCW5leHQgPSAmaHVuay0+aGVhZGVyOworCisJCS8qCisJCSAqIFN0b3AgbWVyZ2luZyBodW5rcyB3aGVuOgorCQkgKgorCQkgKiAtIHRoZSBodW5rIGlzIG5vdCBzZWxlY3RlZCBmb3IgdXNlLCBvcgorCQkgKiAtIHRoZSBodW5rIGRvZXMgbm90IG92ZXJsYXAgd2l0aCB0aGUgYWxyZWFkeS1tZXJnZWQgaHVuayhzKQorCQkgKi8KKwkJaWYgKCghdXNlX2FsbCAmJiBodW5rLT51c2UgIT0gVVNFX0hVTkspIHx8CisJCSAgICBoZWFkZXItPm5ld19vZmZzZXQgPj0gbmV4dC0+bmV3X29mZnNldCArIG1lcmdlZC0+ZGVsdGEgfHwKKwkJICAgIGhlYWRlci0+bmV3X29mZnNldCArIGhlYWRlci0+bmV3X2NvdW50CisJCSAgICA8IG5leHQtPm5ld19vZmZzZXQgKyBtZXJnZWQtPmRlbHRhKQorCQkJYnJlYWs7CisKKwkJLyoKKwkJICogSWYgdGhlIGh1bmtzIHdlcmUgbm90IGVkaXRlZCwgYW5kIG92ZXJsYXAsIHdlIGNhbiBzaW1wbHkKKwkJICogZXh0ZW5kIHRoZSBsaW5lIHJhbmdlLgorCQkgKi8KKwkJaWYgKG1lcmdlZC0+c3RhcnQgPCBodW5rLT5zdGFydCAmJiBtZXJnZWQtPmVuZCA+IGh1bmstPnN0YXJ0KSB7CisJCQltZXJnZWQtPmVuZCA9IGh1bmstPmVuZDsKKwkJCW1lcmdlZC0+Y29sb3JlZF9lbmQgPSBodW5rLT5jb2xvcmVkX2VuZDsKKwkJCWRlbHRhID0gMDsKKwkJfSBlbHNlIHsKKwkJCWNvbnN0IGNoYXIgKnBsYWluID0gcy0+cGxhaW4uYnVmOworCQkJc2l6ZV90ICBvdmVybGFwcGluZ19saW5lX2NvdW50ID0gaGVhZGVyLT5uZXdfb2Zmc2V0CisJCQkJKyBoZWFkZXItPm5ld19jb3VudCAtIG1lcmdlZC0+ZGVsdGEKKwkJCQktIG5leHQtPm5ld19vZmZzZXQ7CisJCQlzaXplX3Qgb3ZlcmxhcF9lbmQgPSBodW5rLT5zdGFydDsKKwkJCXNpemVfdCBvdmVybGFwX3N0YXJ0ID0gb3ZlcmxhcF9lbmQ7CisJCQlzaXplX3Qgb3ZlcmxhcF9uZXh0LCBsZW4sIGo7CisKKwkJCS8qCisJCQkgKiBPbmUgb2YgdGhlIGh1bmtzIHdhcyBlZGl0ZWQ6IHRoZSBtb2RpZmllZCBodW5rIHdhcworCQkJICogYXBwZW5kZWQgdG8gdGhlIHN0cmJ1ZiBgcy0+cGxhaW5gLgorCQkJICoKKwkJCSAqIExldCdzIGVuc3VyZSB0aGF0IGF0IGxlYXN0IHRoZSBsYXN0IGNvbnRleHQgbGluZSBvZgorCQkJICogdGhlIGZpcnN0IGh1bmsgb3ZlcmxhcHMgd2l0aCB0aGUgY29ycmVzcG9uZGluZyBsaW5lCisJCQkgKiBvZiB0aGUgc2Vjb25kIGh1bmssIGFuZCB0aGVuIG1lcmdlLgorCQkJICovCisJCQlmb3IgKGogPSAwOyBqIDwgb3ZlcmxhcHBpbmdfbGluZV9jb3VudDsgaisrKSB7CisJCQkJb3ZlcmxhcF9uZXh0ID0gZmluZF9uZXh0X2xpbmUoJnMtPnBsYWluLAorCQkJCQkJCSAgICAgIG92ZXJsYXBfZW5kKTsKKworCQkJCWlmIChvdmVybGFwX25leHQgPiBodW5rLT5lbmQpCisJCQkJCUJVRygiZmFpbGVkIHRvIGZpbmQgJWQgY29udGV4dCBsaW5lcyAiCisJCQkJCSAgICAiaW46XG4lLipzIiwKKwkJCQkJICAgIChpbnQpb3ZlcmxhcHBpbmdfbGluZV9jb3VudCwKKwkJCQkJICAgIChpbnQpKGh1bmstPmVuZCAtIGh1bmstPnN0YXJ0KSwKKwkJCQkJICAgIHBsYWluICsgaHVuay0+c3RhcnQpOworCisJCQkJaWYgKHBsYWluW292ZXJsYXBfZW5kXSAhPSAnICcpCisJCQkJCXJldHVybiBlcnJvcihfKCJleHBlY3RlZCBjb250ZXh0IGxpbmUgIgorCQkJCQkJICAgICAgICIjJWQgaW5cbiUuKnMiKSwKKwkJCQkJCSAgICAgKGludCkoaiArIDEpLAorCQkJCQkJICAgICAoaW50KShodW5rLT5lbmQKKwkJCQkJCQkgICAtIGh1bmstPnN0YXJ0KSwKKwkJCQkJCSAgICAgcGxhaW4gKyBodW5rLT5zdGFydCk7CisKKwkJCQlvdmVybGFwX3N0YXJ0ID0gb3ZlcmxhcF9lbmQ7CisJCQkJb3ZlcmxhcF9lbmQgPSBvdmVybGFwX25leHQ7CisJCQl9CisJCQlsZW4gPSBvdmVybGFwX2VuZCAtIG92ZXJsYXBfc3RhcnQ7CisKKwkJCWlmIChsZW4gPiBtZXJnZWQtPmVuZCAtIG1lcmdlZC0+c3RhcnQgfHwKKwkJCSAgICBtZW1jbXAocGxhaW4gKyBtZXJnZWQtPmVuZCAtIGxlbiwKKwkJCQkgICBwbGFpbiArIG92ZXJsYXBfc3RhcnQsIGxlbikpCisJCQkJcmV0dXJuIGVycm9yKF8oImh1bmtzIGRvIG5vdCBvdmVybGFwOlxuJS4qc1xuIgorCQkJCQkgICAgICAgIlx0ZG9lcyBub3QgZW5kIHdpdGg6XG4lLipzIiksCisJCQkJCSAgICAgKGludCkobWVyZ2VkLT5lbmQgLSBtZXJnZWQtPnN0YXJ0KSwKKwkJCQkJICAgICBwbGFpbiArIG1lcmdlZC0+c3RhcnQsCisJCQkJCSAgICAgKGludClsZW4sIHBsYWluICsgb3ZlcmxhcF9zdGFydCk7CisKKwkJCS8qCisJCQkgKiBTaW5jZSB0aGUgc3RhcnQtZW5kIHJhbmdlcyBhcmUgbm90IGFkamFjZW50LCB3ZQorCQkJICogY2Fubm90IHNpbXBseSB0YWtlIHRoZSB1bmlvbiBvZiB0aGUgcmFuZ2VzLiBUbworCQkJICogYWRkcmVzcyB0aGF0LCB3ZSB0ZW1wb3JhcmlseSBhcHBlbmQgdGhlIHVuaW9uIG9mIHRoZQorCQkJICogbGluZXMgdG8gdGhlIGBwbGFpbmAgc3RyYnVmLgorCQkJICovCisJCQlpZiAobWVyZ2VkLT5lbmQgIT0gcy0+cGxhaW4ubGVuKSB7CisJCQkJc2l6ZV90IHN0YXJ0ID0gcy0+cGxhaW4ubGVuOworCisJCQkJc3RyYnVmX2FkZCgmcy0+cGxhaW4sIHBsYWluICsgbWVyZ2VkLT5zdGFydCwKKwkJCQkJICAgbWVyZ2VkLT5lbmQgLSBtZXJnZWQtPnN0YXJ0KTsKKwkJCQlwbGFpbiA9IHMtPnBsYWluLmJ1ZjsKKwkJCQltZXJnZWQtPnN0YXJ0ID0gc3RhcnQ7CisJCQkJbWVyZ2VkLT5lbmQgPSBzLT5wbGFpbi5sZW47CisJCQl9CisKKwkJCXN0cmJ1Zl9hZGQoJnMtPnBsYWluLAorCQkJCSAgIHBsYWluICsgb3ZlcmxhcF9lbmQsCisJCQkJICAgaHVuay0+ZW5kIC0gb3ZlcmxhcF9lbmQpOworCQkJbWVyZ2VkLT5lbmQgPSBzLT5wbGFpbi5sZW47CisJCQltZXJnZWQtPnNwbGl0dGFibGVfaW50byArPSBodW5rLT5zcGxpdHRhYmxlX2ludG87CisJCQlkZWx0YSA9IG1lcmdlZC0+ZGVsdGE7CisJCQltZXJnZWQtPmRlbHRhICs9IGh1bmstPmRlbHRhOworCQl9CisKKwkJaGVhZGVyLT5vbGRfY291bnQgPSBuZXh0LT5vbGRfb2Zmc2V0ICsgbmV4dC0+b2xkX2NvdW50CisJCQktIGhlYWRlci0+b2xkX29mZnNldDsKKwkJaGVhZGVyLT5uZXdfY291bnQgPSBuZXh0LT5uZXdfb2Zmc2V0ICsgZGVsdGEKKwkJCSsgbmV4dC0+bmV3X2NvdW50IC0gaGVhZGVyLT5uZXdfb2Zmc2V0OworCX0KKworCWlmIChpID09ICpodW5rX2luZGV4KQorCQlyZXR1cm4gMDsKKworCSpodW5rX2luZGV4ID0gaTsKKwlyZXR1cm4gMTsKK30KKworc3RhdGljIHZvaWQgcmVhc3NlbWJsZV9wYXRjaChzdHJ1Y3QgYWRkX3Bfc3RhdGUgKnMsCisJCQkgICAgIHN0cnVjdCBmaWxlX2RpZmYgKmZpbGVfZGlmZiwgaW50IHVzZV9hbGwsCisJCQkgICAgIHN0cnVjdCBzdHJidWYgKm91dCkKK3sKKwlzdHJ1Y3QgaHVuayAqaHVuazsKKwlzaXplX3Qgc2F2ZV9sZW4gPSBzLT5wbGFpbi5sZW4sIGk7CisJc3NpemVfdCBkZWx0YSA9IDA7CisKKwlyZW5kZXJfZGlmZl9oZWFkZXIocywgZmlsZV9kaWZmLCAwLCBvdXQpOworCisJZm9yIChpID0gZmlsZV9kaWZmLT5tb2RlX2NoYW5nZTsgaSA8IGZpbGVfZGlmZi0+aHVua19ucjsgaSsrKSB7CisJCXN0cnVjdCBodW5rIG1lcmdlZCA9IHsgMCB9OworCisJCWh1bmsgPSBmaWxlX2RpZmYtPmh1bmsgKyBpOworCQlpZiAoIXVzZV9hbGwgJiYgaHVuay0+dXNlICE9IFVTRV9IVU5LKQorCQkJZGVsdGEgKz0gaHVuay0+aGVhZGVyLm9sZF9jb3VudAorCQkJCS0gaHVuay0+aGVhZGVyLm5ld19jb3VudDsKKwkJZWxzZSB7CisJCQkvKiBtZXJnZSBvdmVybGFwcGluZyBodW5rcyBpbnRvIGEgdGVtcG9yYXJ5IGh1bmsgKi8KKwkJCWlmIChtZXJnZV9odW5rcyhzLCBmaWxlX2RpZmYsICZpLCB1c2VfYWxsLCAmbWVyZ2VkKSkKKwkJCQlodW5rID0gJm1lcmdlZDsKKworCQkJcmVuZGVyX2h1bmsocywgaHVuaywgZGVsdGEsIDAsIG91dCk7CisKKwkJCS8qCisJCQkgKiBJbiBjYXNlIGBtZXJnZV9odW5rcygpYCB1c2VkIGBwbGFpbmAgYXMgYSBzY3JhdGNoCisJCQkgKiBwYWQgKHRoaXMgaGFwcGVucyB3aGVuIGFuIGVkaXRlZCBodW5rIGhhZCB0byBiZQorCQkJICogY29hbGVzY2VkIHdpdGggYW5vdGhlciBodW5rKS4KKwkJCSAqLworCQkJc3RyYnVmX3NldGxlbigmcy0+cGxhaW4sIHNhdmVfbGVuKTsKKworCQkJZGVsdGEgKz0gaHVuay0+ZGVsdGE7CisJCX0KKwl9Cit9CisKK3N0YXRpYyBpbnQgc3BsaXRfaHVuayhzdHJ1Y3QgYWRkX3Bfc3RhdGUgKnMsIHN0cnVjdCBmaWxlX2RpZmYgKmZpbGVfZGlmZiwKKwkJICAgICAgIHNpemVfdCBodW5rX2luZGV4KQoreworCWludCBjb2xvcmVkID0gISFzLT5jb2xvcmVkLmxlbiwgZmlyc3QgPSAxOworCXN0cnVjdCBodW5rICpodW5rID0gZmlsZV9kaWZmLT5odW5rICsgaHVua19pbmRleDsKKwlzaXplX3Qgc3BsaXR0YWJsZV9pbnRvOworCXNpemVfdCBlbmQsIGNvbG9yZWRfZW5kLCBjdXJyZW50LCBjb2xvcmVkX2N1cnJlbnQgPSAwLCBjb250ZXh0X2xpbmVfY291bnQ7CisJc3RydWN0IGh1bmtfaGVhZGVyIHJlbWFpbmluZywgKmhlYWRlcjsKKwljaGFyIG1hcmtlciwgY2g7CisKKwlpZiAoaHVua19pbmRleCA+PSBmaWxlX2RpZmYtPmh1bmtfbnIpCisJCUJVRygiaW52YWxpZCBodW5rIGluZGV4OiAlZCAobXVzdCBiZSA+PSAwIGFuZCA8ICVkKSIsCisJCSAgICAoaW50KWh1bmtfaW5kZXgsIChpbnQpZmlsZV9kaWZmLT5odW5rX25yKTsKKworCWlmIChodW5rLT5zcGxpdHRhYmxlX2ludG8gPCAyKQorCQlyZXR1cm4gMDsKKwlzcGxpdHRhYmxlX2ludG8gPSBodW5rLT5zcGxpdHRhYmxlX2ludG87CisKKwllbmQgPSBodW5rLT5lbmQ7CisJY29sb3JlZF9lbmQgPSBodW5rLT5jb2xvcmVkX2VuZDsKKworCXJlbWFpbmluZyA9IGh1bmstPmhlYWRlcjsKKworCWZpbGVfZGlmZi0+aHVua19uciArPSBzcGxpdHRhYmxlX2ludG8gLSAxOworCUFMTE9DX0dST1coZmlsZV9kaWZmLT5odW5rLCBmaWxlX2RpZmYtPmh1bmtfbnIsIGZpbGVfZGlmZi0+aHVua19hbGxvYyk7CisJaWYgKGh1bmtfaW5kZXggKyBzcGxpdHRhYmxlX2ludG8gPCBmaWxlX2RpZmYtPmh1bmtfbnIpCisJCW1lbW1vdmUoZmlsZV9kaWZmLT5odW5rICsgaHVua19pbmRleCArIHNwbGl0dGFibGVfaW50bywKKwkJCWZpbGVfZGlmZi0+aHVuayArIGh1bmtfaW5kZXggKyAxLAorCQkJKGZpbGVfZGlmZi0+aHVua19uciAtIGh1bmtfaW5kZXggLSBzcGxpdHRhYmxlX2ludG8pCisJCQkqIHNpemVvZigqaHVuaykpOworCWh1bmsgPSBmaWxlX2RpZmYtPmh1bmsgKyBodW5rX2luZGV4OworCWh1bmstPnNwbGl0dGFibGVfaW50byA9IDE7CisJbWVtc2V0KGh1bmsgKyAxLCAwLCAoc3BsaXR0YWJsZV9pbnRvIC0gMSkgKiBzaXplb2YoKmh1bmspKTsKKworCWhlYWRlciA9ICZodW5rLT5oZWFkZXI7CisJaGVhZGVyLT5vbGRfY291bnQgPSBoZWFkZXItPm5ld19jb3VudCA9IDA7CisKKwljdXJyZW50ID0gaHVuay0+c3RhcnQ7CisJaWYgKGNvbG9yZWQpCisJCWNvbG9yZWRfY3VycmVudCA9IGh1bmstPmNvbG9yZWRfc3RhcnQ7CisJbWFya2VyID0gJ1wwJzsKKwljb250ZXh0X2xpbmVfY291bnQgPSAwOworCisJd2hpbGUgKHNwbGl0dGFibGVfaW50byA+IDEpIHsKKwkJY2ggPSBzLT5wbGFpbi5idWZbY3VycmVudF07CisKKwkJaWYgKCFjaCkKKwkJCUJVRygiYnVmZmVyIG92ZXJydW4gd2hpbGUgc3BsaXR0aW5nIGh1bmtzIik7CisKKwkJLyoKKwkJICogSXMgdGhpcyB0aGUgZmlyc3QgY29udGV4dCBsaW5lIGFmdGVyIGEgY2hhaW4gb2YgKy8tIGxpbmVzPworCQkgKiBUaGVuIHJlY29yZCB0aGUgc3RhcnQgb2YgdGhlIG5leHQgc3BsaXQgaHVuay4KKwkJICovCisJCWlmICgobWFya2VyID09ICctJyB8fCBtYXJrZXIgPT0gJysnKSAmJiBjaCA9PSAnICcpIHsKKwkJCWZpcnN0ID0gMDsKKwkJCWh1bmtbMV0uc3RhcnQgPSBjdXJyZW50OworCQkJaWYgKGNvbG9yZWQpCisJCQkJaHVua1sxXS5jb2xvcmVkX3N0YXJ0ID0gY29sb3JlZF9jdXJyZW50OworCQkJY29udGV4dF9saW5lX2NvdW50ID0gMDsKKwkJfQorCisJCS8qCisJCSAqIFdhcyB0aGUgcHJldmlvdXMgbGluZSBhICsvLSBvbmU/IEFsdGVybmF0aXZlbHksIGlzIHRoaXMgdGhlCisJCSAqIGZpcnN0IGxpbmUgKGFuZCBub3QgYSArLy0gb25lKT8KKwkJICoKKwkJICogVGhlbiBqdXN0IGluY3JlbWVudCB0aGUgYXBwcm9wcmlhdGUgY291bnRlciBhbmQgY29udGludWUKKwkJICogd2l0aCB0aGUgbmV4dCBsaW5lLgorCQkgKi8KKwkJaWYgKG1hcmtlciAhPSAnICcgfHwgKGNoICE9ICctJyAmJiBjaCAhPSAnKycpKSB7CituZXh0X2h1bmtfbGluZToKKwkJCS8qIENvbW1lbnQgbGluZXMgYXJlIGF0dGFjaGVkIHRvIHRoZSBwcmV2aW91cyBsaW5lICovCisJCQlpZiAoY2ggPT0gJ1xcJykKKwkJCQljaCA9IG1hcmtlciA/IG1hcmtlciA6ICcgJzsKKworCQkJLyogY3VycmVudCBodW5rIG5vdCBkb25lIHlldCAqLworCQkJaWYgKGNoID09ICcgJykKKwkJCQljb250ZXh0X2xpbmVfY291bnQrKzsKKwkJCWVsc2UgaWYgKGNoID09ICctJykKKwkJCQloZWFkZXItPm9sZF9jb3VudCsrOworCQkJZWxzZSBpZiAoY2ggPT0gJysnKQorCQkJCWhlYWRlci0+bmV3X2NvdW50Kys7CisJCQllbHNlCisJCQkJQlVHKCJ1bmhhbmRsZWQgZGlmZiBtYXJrZXI6ICclYyciLCBjaCk7CisJCQltYXJrZXIgPSBjaDsKKwkJCWN1cnJlbnQgPSBmaW5kX25leHRfbGluZSgmcy0+cGxhaW4sIGN1cnJlbnQpOworCQkJaWYgKGNvbG9yZWQpCisJCQkJY29sb3JlZF9jdXJyZW50ID0KKwkJCQkJZmluZF9uZXh0X2xpbmUoJnMtPmNvbG9yZWQsCisJCQkJCQkgICAgICAgY29sb3JlZF9jdXJyZW50KTsKKwkJCWNvbnRpbnVlOworCQl9CisKKwkJLyoKKwkJICogV2UgZ290IHVzIHRoZSBzdGFydCBvZiBhIG5ldyBodW5rIQorCQkgKgorCQkgKiBUaGlzIGlzIGEgY29udGV4dCBsaW5lLCBzbyBpdCBpcyBzaGFyZWQgd2l0aCB0aGUgcHJldmlvdXMKKwkJICogaHVuaywgaWYgYW55LgorCQkgKi8KKworCQlpZiAoZmlyc3QpIHsKKwkJCWlmIChoZWFkZXItPm9sZF9jb3VudCB8fCBoZWFkZXItPm5ld19jb3VudCkKKwkJCQlCVUcoImNvdW50cyBhcmUgb2ZmOiAlZC8lZCIsCisJCQkJICAgIChpbnQpaGVhZGVyLT5vbGRfY291bnQsCisJCQkJICAgIChpbnQpaGVhZGVyLT5uZXdfY291bnQpOworCisJCQloZWFkZXItPm9sZF9jb3VudCA9IGNvbnRleHRfbGluZV9jb3VudDsKKwkJCWhlYWRlci0+bmV3X2NvdW50ID0gY29udGV4dF9saW5lX2NvdW50OworCQkJY29udGV4dF9saW5lX2NvdW50ID0gMDsKKwkJCWZpcnN0ID0gMDsKKwkJCWdvdG8gbmV4dF9odW5rX2xpbmU7CisJCX0KKworCQlyZW1haW5pbmcub2xkX29mZnNldCArPSBoZWFkZXItPm9sZF9jb3VudDsKKwkJcmVtYWluaW5nLm9sZF9jb3VudCAtPSBoZWFkZXItPm9sZF9jb3VudDsKKwkJcmVtYWluaW5nLm5ld19vZmZzZXQgKz0gaGVhZGVyLT5uZXdfY291bnQ7CisJCXJlbWFpbmluZy5uZXdfY291bnQgLT0gaGVhZGVyLT5uZXdfY291bnQ7CisKKwkJLyogaW5pdGlhbGl6ZSBuZXh0IGh1bmsgaGVhZGVyJ3Mgb2Zmc2V0cyAqLworCQlodW5rWzFdLmhlYWRlci5vbGRfb2Zmc2V0ID0KKwkJCWhlYWRlci0+b2xkX29mZnNldCArIGhlYWRlci0+b2xkX2NvdW50OworCQlodW5rWzFdLmhlYWRlci5uZXdfb2Zmc2V0ID0KKwkJCWhlYWRlci0+bmV3X29mZnNldCArIGhlYWRlci0+bmV3X2NvdW50OworCisJCS8qIGFkZCBvbmUgc3BsaXQgaHVuayAqLworCQloZWFkZXItPm9sZF9jb3VudCArPSBjb250ZXh0X2xpbmVfY291bnQ7CisJCWhlYWRlci0+bmV3X2NvdW50ICs9IGNvbnRleHRfbGluZV9jb3VudDsKKworCQlodW5rLT5lbmQgPSBjdXJyZW50OworCQlpZiAoY29sb3JlZCkKKwkJCWh1bmstPmNvbG9yZWRfZW5kID0gY29sb3JlZF9jdXJyZW50OworCisJCWh1bmsrKzsKKwkJaHVuay0+c3BsaXR0YWJsZV9pbnRvID0gMTsKKwkJaHVuay0+dXNlID0gaHVua1stMV0udXNlOworCQloZWFkZXIgPSAmaHVuay0+aGVhZGVyOworCisJCWhlYWRlci0+b2xkX2NvdW50ID0gaGVhZGVyLT5uZXdfY291bnQgPSBjb250ZXh0X2xpbmVfY291bnQ7CisJCWNvbnRleHRfbGluZV9jb3VudCA9IDA7CisKKwkJc3BsaXR0YWJsZV9pbnRvLS07CisJCW1hcmtlciA9IGNoOworCX0KKworCS8qIGxhc3QgaHVuayBzaW1wbHkgZ2V0cyB0aGUgcmVzdCAqLworCWlmIChoZWFkZXItPm9sZF9vZmZzZXQgIT0gcmVtYWluaW5nLm9sZF9vZmZzZXQpCisJCUJVRygibWlzY291bnRlZCBvbGRfb2Zmc2V0OiAlbHUgIT0gJWx1IiwKKwkJICAgIGhlYWRlci0+b2xkX29mZnNldCwgcmVtYWluaW5nLm9sZF9vZmZzZXQpOworCWlmIChoZWFkZXItPm5ld19vZmZzZXQgIT0gcmVtYWluaW5nLm5ld19vZmZzZXQpCisJCUJVRygibWlzY291bnRlZCBuZXdfb2Zmc2V0OiAlbHUgIT0gJWx1IiwKKwkJICAgIGhlYWRlci0+bmV3X29mZnNldCwgcmVtYWluaW5nLm5ld19vZmZzZXQpOworCWhlYWRlci0+b2xkX2NvdW50ID0gcmVtYWluaW5nLm9sZF9jb3VudDsKKwloZWFkZXItPm5ld19jb3VudCA9IHJlbWFpbmluZy5uZXdfY291bnQ7CisJaHVuay0+ZW5kID0gZW5kOworCWlmIChjb2xvcmVkKQorCQlodW5rLT5jb2xvcmVkX2VuZCA9IGNvbG9yZWRfZW5kOworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyB2b2lkIHJlY29sb3JfaHVuayhzdHJ1Y3QgYWRkX3Bfc3RhdGUgKnMsIHN0cnVjdCBodW5rICpodW5rKQoreworCWNvbnN0IGNoYXIgKnBsYWluID0gcy0+cGxhaW4uYnVmOworCXNpemVfdCBjdXJyZW50LCBlb2wsIG5leHQ7CisKKwlpZiAoIXMtPmNvbG9yZWQubGVuKQorCQlyZXR1cm47CisKKwlodW5rLT5jb2xvcmVkX3N0YXJ0ID0gcy0+Y29sb3JlZC5sZW47CisJZm9yIChjdXJyZW50ID0gaHVuay0+c3RhcnQ7IGN1cnJlbnQgPCBodW5rLT5lbmQ7ICkgeworCQlmb3IgKGVvbCA9IGN1cnJlbnQ7IGVvbCA8IGh1bmstPmVuZDsgZW9sKyspCisJCQlpZiAocGxhaW5bZW9sXSA9PSAnXG4nKQorCQkJCWJyZWFrOworCQluZXh0ID0gZW9sICsgKGVvbCA8IGh1bmstPmVuZCk7CisJCWlmIChlb2wgPiBjdXJyZW50ICYmIHBsYWluW2VvbCAtIDFdID09ICdccicpCisJCQllb2wtLTsKKworCQlzdHJidWZfYWRkc3RyKCZzLT5jb2xvcmVkLAorCQkJICAgICAgcGxhaW5bY3VycmVudF0gPT0gJy0nID8KKwkJCSAgICAgIHMtPnMuZmlsZV9vbGRfY29sb3IgOgorCQkJICAgICAgcGxhaW5bY3VycmVudF0gPT0gJysnID8KKwkJCSAgICAgIHMtPnMuZmlsZV9uZXdfY29sb3IgOgorCQkJICAgICAgcy0+cy5jb250ZXh0X2NvbG9yKTsKKwkJc3RyYnVmX2FkZCgmcy0+Y29sb3JlZCwgcGxhaW4gKyBjdXJyZW50LCBlb2wgLSBjdXJyZW50KTsKKwkJc3RyYnVmX2FkZHN0cigmcy0+Y29sb3JlZCwgR0lUX0NPTE9SX1JFU0VUKTsKKwkJaWYgKG5leHQgPiBlb2wpCisJCQlzdHJidWZfYWRkKCZzLT5jb2xvcmVkLCBwbGFpbiArIGVvbCwgbmV4dCAtIGVvbCk7CisJCWN1cnJlbnQgPSBuZXh0OworCX0KKwlodW5rLT5jb2xvcmVkX2VuZCA9IHMtPmNvbG9yZWQubGVuOworfQorCitzdGF0aWMgaW50IGVkaXRfaHVua19tYW51YWxseShzdHJ1Y3QgYWRkX3Bfc3RhdGUgKnMsIHN0cnVjdCBodW5rICpodW5rKQoreworCXNpemVfdCBpOworCisJc3RyYnVmX3Jlc2V0KCZzLT5idWYpOworCXN0cmJ1Zl9jb21tZW50ZWRfYWRkZigmcy0+YnVmLCBfKCJNYW51YWwgaHVuayBlZGl0IG1vZGUgLS0gc2VlIGJvdHRvbSBmb3IgIgorCQkJCSAgICAgICJhIHF1aWNrIGd1aWRlLlxuIikpOworCXJlbmRlcl9odW5rKHMsIGh1bmssIDAsIDAsICZzLT5idWYpOworCXN0cmJ1Zl9jb21tZW50ZWRfYWRkZigmcy0+YnVmLAorCQkJICAgICAgXygiLS0tXG4iCisJCQkJIlRvIHJlbW92ZSAnJWMnIGxpbmVzLCBtYWtlIHRoZW0gJyAnIGxpbmVzICIKKwkJCQkiKGNvbnRleHQpLlxuIgorCQkJCSJUbyByZW1vdmUgJyVjJyBsaW5lcywgZGVsZXRlIHRoZW0uXG4iCisJCQkJIkxpbmVzIHN0YXJ0aW5nIHdpdGggJWMgd2lsbCBiZSByZW1vdmVkLlxuIiksCisJCQkgICAgICBzLT5tb2RlLT5pc19yZXZlcnNlID8gJysnIDogJy0nLAorCQkJICAgICAgcy0+bW9kZS0+aXNfcmV2ZXJzZSA/ICctJyA6ICcrJywKKwkJCSAgICAgIGNvbW1lbnRfbGluZV9jaGFyKTsKKwlzdHJidWZfY29tbWVudGVkX2FkZGYoJnMtPmJ1ZiwgIiVzIiwgXyhzLT5tb2RlLT5lZGl0X2h1bmtfaGludCkpOworCS8qCisJICogVFJBTlNMQVRPUlM6ICdpdCcgcmVmZXJzIHRvIHRoZSBwYXRjaCBtZW50aW9uZWQgaW4gdGhlIHByZXZpb3VzCisJICogbWVzc2FnZXMuCisJICovCisJc3RyYnVmX2NvbW1lbnRlZF9hZGRmKCZzLT5idWYsCisJCQkgICAgICBfKCJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSAiCisJCQkJImdpdmVuIGFuIG9wcG9ydHVuaXR5IHRvXG4iCisJCQkJImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlICIKKwkJCQkicmVtb3ZlZCwgdGhlbiB0aGUgZWRpdCBpc1xuIgorCQkJCSJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIpKTsKKworCWlmIChzdHJidWZfZWRpdF9pbnRlcmFjdGl2ZWx5KCZzLT5idWYsICJhZGRwLWh1bmstZWRpdC5kaWZmIiwgTlVMTCkgPCAwKQorCQlyZXR1cm4gLTE7CisKKwkvKiBzdHJpcCBvdXQgY29tbWVudGVkIGxpbmVzICovCisJaHVuay0+c3RhcnQgPSBzLT5wbGFpbi5sZW47CisJZm9yIChpID0gMDsgaSA8IHMtPmJ1Zi5sZW47ICkgeworCQlzaXplX3QgbmV4dCA9IGZpbmRfbmV4dF9saW5lKCZzLT5idWYsIGkpOworCisJCWlmIChzLT5idWYuYnVmW2ldICE9IGNvbW1lbnRfbGluZV9jaGFyKQorCQkJc3RyYnVmX2FkZCgmcy0+cGxhaW4sIHMtPmJ1Zi5idWYgKyBpLCBuZXh0IC0gaSk7CisJCWkgPSBuZXh0OworCX0KKworCWh1bmstPmVuZCA9IHMtPnBsYWluLmxlbjsKKwlpZiAoaHVuay0+ZW5kID09IGh1bmstPnN0YXJ0KQorCQkvKiBUaGUgdXNlciBhYm9ydGVkIGVkaXRpbmcgYnkgZGVsZXRpbmcgZXZlcnl0aGluZyAqLworCQlyZXR1cm4gMDsKKworCXJlY29sb3JfaHVuayhzLCBodW5rKTsKKworCS8qCisJICogSWYgdGhlIGh1bmsgaGVhZGVyIGlzIGludGFjdCwgcGFyc2UgaXQsIG90aGVyd2lzZSBzaW1wbHkgdXNlIHRoZQorCSAqIGh1bmsgaGVhZGVyIHByaW9yIHRvIGVkaXRpbmcgKHdoaWNoIHdpbGwgYWRqdXN0IGBodW5rLT5zdGFydGAgdG8KKwkgKiBza2lwIHRoZSBodW5rIGhlYWRlcikuCisJICovCisJaWYgKHMtPnBsYWluLmJ1ZltodW5rLT5zdGFydF0gPT0gJ0AnICYmCisJICAgIHBhcnNlX2h1bmtfaGVhZGVyKHMsIGh1bmspIDwgMCkKKwkJcmV0dXJuIGVycm9yKF8oImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciIpKTsKKworCXJldHVybiAxOworfQorCitzdGF0aWMgc3NpemVfdCByZWNvdW50X2VkaXRlZF9odW5rKHN0cnVjdCBhZGRfcF9zdGF0ZSAqcywgc3RydWN0IGh1bmsgKmh1bmssCisJCQkJICAgc2l6ZV90IG9yaWdfb2xkX2NvdW50LCBzaXplX3Qgb3JpZ19uZXdfY291bnQpCit7CisJc3RydWN0IGh1bmtfaGVhZGVyICpoZWFkZXIgPSAmaHVuay0+aGVhZGVyOworCXNpemVfdCBpOworCisJaGVhZGVyLT5vbGRfY291bnQgPSBoZWFkZXItPm5ld19jb3VudCA9IDA7CisJZm9yIChpID0gaHVuay0+c3RhcnQ7IGkgPCBodW5rLT5lbmQ7ICkgeworCQlzd2l0Y2ggKHMtPnBsYWluLmJ1ZltpXSkgeworCQljYXNlICctJzoKKwkJCWhlYWRlci0+b2xkX2NvdW50Kys7CisJCQlicmVhazsKKwkJY2FzZSAnKyc6CisJCQloZWFkZXItPm5ld19jb3VudCsrOworCQkJYnJlYWs7CisJCWNhc2UgJyAnOiBjYXNlICdccic6IGNhc2UgJ1xuJzoKKwkJCWhlYWRlci0+b2xkX2NvdW50Kys7CisJCQloZWFkZXItPm5ld19jb3VudCsrOworCQkJYnJlYWs7CisJCX0KKworCQlpID0gZmluZF9uZXh0X2xpbmUoJnMtPnBsYWluLCBpKTsKKwl9CisKKwlyZXR1cm4gb3JpZ19vbGRfY291bnQgLSBvcmlnX25ld19jb3VudAorCQktIGhlYWRlci0+b2xkX2NvdW50ICsgaGVhZGVyLT5uZXdfY291bnQ7Cit9CisKK3N0YXRpYyBpbnQgcnVuX2FwcGx5X2NoZWNrKHN0cnVjdCBhZGRfcF9zdGF0ZSAqcywKKwkJCSAgIHN0cnVjdCBmaWxlX2RpZmYgKmZpbGVfZGlmZikKK3sKKwlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjcCA9IENISUxEX1BST0NFU1NfSU5JVDsKKworCXN0cmJ1Zl9yZXNldCgmcy0+YnVmKTsKKwlyZWFzc2VtYmxlX3BhdGNoKHMsIGZpbGVfZGlmZiwgMSwgJnMtPmJ1Zik7CisKKwlzZXR1cF9jaGlsZF9wcm9jZXNzKHMsICZjcCwKKwkJCSAgICAiYXBwbHkiLCAiLS1jaGVjayIsIE5VTEwpOworCWFyZ3ZfYXJyYXlfcHVzaHYoJmNwLmFyZ3MsIHMtPm1vZGUtPmFwcGx5X2NoZWNrX2FyZ3MpOworCWlmIChwaXBlX2NvbW1hbmQoJmNwLCBzLT5idWYuYnVmLCBzLT5idWYubGVuLCBOVUxMLCAwLCBOVUxMLCAwKSkKKwkJcmV0dXJuIGVycm9yKF8oIidnaXQgYXBwbHkgLS1jYWNoZWQnIGZhaWxlZCIpKTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IHJlYWRfc2luZ2xlX2NoYXJhY3RlcihzdHJ1Y3QgYWRkX3Bfc3RhdGUgKnMpCit7CisJaWYgKHMtPnMudXNlX3NpbmdsZV9rZXkpIHsKKwkJaW50IHJlcyA9IHJlYWRfa2V5X3dpdGhvdXRfZWNobygmcy0+YW5zd2VyKTsKKwkJcHJpbnRmKCIlc1xuIiwgcmVzID09IEVPRiA/ICIiIDogcy0+YW5zd2VyLmJ1Zik7CisJCXJldHVybiByZXM7CisJfQorCisJaWYgKHN0cmJ1Zl9nZXRsaW5lKCZzLT5hbnN3ZXIsIHN0ZGluKSA9PSBFT0YpCisJCXJldHVybiBFT0Y7CisJc3RyYnVmX3RyaW1fdHJhaWxpbmdfbmV3bGluZSgmcy0+YW5zd2VyKTsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBwcm9tcHRfeWVzbm8oc3RydWN0IGFkZF9wX3N0YXRlICpzLCBjb25zdCBjaGFyICpwcm9tcHQpCit7CisJZm9yICg7OykgeworCQljb2xvcl9mcHJpbnRmKHN0ZG91dCwgcy0+cy5wcm9tcHRfY29sb3IsICIlcyIsIF8ocHJvbXB0KSk7CisJCWZmbHVzaChzdGRvdXQpOworCQlpZiAocmVhZF9zaW5nbGVfY2hhcmFjdGVyKHMpID09IEVPRikKKwkJCXJldHVybiAtMTsKKwkJc3dpdGNoICh0b2xvd2VyKHMtPmFuc3dlci5idWZbMF0pKSB7CisJCWNhc2UgJ24nOiByZXR1cm4gMDsKKwkJY2FzZSAneSc6IHJldHVybiAxOworCQl9CisJfQorfQorCitzdGF0aWMgaW50IGVkaXRfaHVua19sb29wKHN0cnVjdCBhZGRfcF9zdGF0ZSAqcywKKwkJCSAgc3RydWN0IGZpbGVfZGlmZiAqZmlsZV9kaWZmLCBzdHJ1Y3QgaHVuayAqaHVuaykKK3sKKwlzaXplX3QgcGxhaW5fbGVuID0gcy0+cGxhaW4ubGVuLCBjb2xvcmVkX2xlbiA9IHMtPmNvbG9yZWQubGVuOworCXN0cnVjdCBodW5rIGJhY2t1cDsKKworCWJhY2t1cCA9ICpodW5rOworCisJZm9yICg7OykgeworCQlpbnQgcmVzID0gZWRpdF9odW5rX21hbnVhbGx5KHMsIGh1bmspOworCQlpZiAocmVzID09IDApIHsKKwkJCS8qIGFiYW5kb25kZWQgKi8KKwkJCSpodW5rID0gYmFja3VwOworCQkJcmV0dXJuIC0xOworCQl9CisKKwkJaWYgKHJlcyA+IDApIHsKKwkJCWh1bmstPmRlbHRhICs9CisJCQkJcmVjb3VudF9lZGl0ZWRfaHVuayhzLCBodW5rLAorCQkJCQkJICAgIGJhY2t1cC5oZWFkZXIub2xkX2NvdW50LAorCQkJCQkJICAgIGJhY2t1cC5oZWFkZXIubmV3X2NvdW50KTsKKwkJCWlmICghcnVuX2FwcGx5X2NoZWNrKHMsIGZpbGVfZGlmZikpCisJCQkJcmV0dXJuIDA7CisJCX0KKworCQkvKiBEcm9wIGVkaXRzICh0aGV5IHdlcmUgYXBwZW5kZWQgdG8gcy0+cGxhaW4pICovCisJCXN0cmJ1Zl9zZXRsZW4oJnMtPnBsYWluLCBwbGFpbl9sZW4pOworCQlzdHJidWZfc2V0bGVuKCZzLT5jb2xvcmVkLCBjb2xvcmVkX2xlbik7CisJCSpodW5rID0gYmFja3VwOworCisJCS8qCisJCSAqIFRSQU5TTEFUT1JTOiBkbyBub3QgdHJhbnNsYXRlIFt5L25dCisJCSAqIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dCBhdCB0aGlzIHBvaW50LgorCQkgKiBDb25zaWRlciB0cmFuc2xhdGluZyAoc2F5aW5nICJubyIgZGlzY2FyZHMhKSBhcworCQkgKiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgorCQkgKiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KKwkJICovCisJCXJlcyA9IHByb21wdF95ZXNubyhzLCBfKCJZb3VyIGVkaXRlZCBodW5rIGRvZXMgbm90IGFwcGx5LiAiCisJCQkJCSJFZGl0IGFnYWluIChzYXlpbmcgXCJub1wiIGRpc2NhcmRzISkgIgorCQkJCQkiW3kvbl0/ICIpKTsKKwkJaWYgKHJlcyA8IDEpCisJCQlyZXR1cm4gLTE7CisJfQorfQorCitzdGF0aWMgaW50IGFwcGx5X2Zvcl9jaGVja291dChzdHJ1Y3QgYWRkX3Bfc3RhdGUgKnMsIHN0cnVjdCBzdHJidWYgKmRpZmYsCisJCQkgICAgICBpbnQgaXNfcmV2ZXJzZSkKK3sKKwljb25zdCBjaGFyICpyZXZlcnNlID0gaXNfcmV2ZXJzZSA/ICItUiIgOiBOVUxMOworCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNoZWNrX2luZGV4ID0gQ0hJTERfUFJPQ0VTU19JTklUOworCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNoZWNrX3dvcmt0cmVlID0gQ0hJTERfUFJPQ0VTU19JTklUOworCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGFwcGx5X2luZGV4ID0gQ0hJTERfUFJPQ0VTU19JTklUOworCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGFwcGx5X3dvcmt0cmVlID0gQ0hJTERfUFJPQ0VTU19JTklUOworCWludCBhcHBsaWVzX2luZGV4LCBhcHBsaWVzX3dvcmt0cmVlOworCisJc2V0dXBfY2hpbGRfcHJvY2VzcyhzLCAmY2hlY2tfaW5kZXgsCisJCQkgICAgImFwcGx5IiwgIi0tY2FjaGVkIiwgIi0tY2hlY2siLCByZXZlcnNlLCBOVUxMKTsKKwlhcHBsaWVzX2luZGV4ID0gIXBpcGVfY29tbWFuZCgmY2hlY2tfaW5kZXgsIGRpZmYtPmJ1ZiwgZGlmZi0+bGVuLAorCQkJCSAgICAgIE5VTEwsIDAsIE5VTEwsIDApOworCisJc2V0dXBfY2hpbGRfcHJvY2VzcyhzLCAmY2hlY2tfd29ya3RyZWUsCisJCQkgICAgImFwcGx5IiwgIi0tY2hlY2siLCByZXZlcnNlLCBOVUxMKTsKKwlhcHBsaWVzX3dvcmt0cmVlID0gIXBpcGVfY29tbWFuZCgmY2hlY2tfd29ya3RyZWUsIGRpZmYtPmJ1ZiwgZGlmZi0+bGVuLAorCQkJCQkgTlVMTCwgMCwgTlVMTCwgMCk7CisKKwlpZiAoYXBwbGllc193b3JrdHJlZSAmJiBhcHBsaWVzX2luZGV4KSB7CisJCXNldHVwX2NoaWxkX3Byb2Nlc3MocywgJmFwcGx5X2luZGV4LAorCQkJCSAgICAiYXBwbHkiLCAiLS1jYWNoZWQiLCByZXZlcnNlLCBOVUxMKTsKKwkJcGlwZV9jb21tYW5kKCZhcHBseV9pbmRleCwgZGlmZi0+YnVmLCBkaWZmLT5sZW4sCisJCQkgICAgIE5VTEwsIDAsIE5VTEwsIDApOworCisJCXNldHVwX2NoaWxkX3Byb2Nlc3MocywgJmFwcGx5X3dvcmt0cmVlLAorCQkJCSAgICAiYXBwbHkiLCByZXZlcnNlLCBOVUxMKTsKKwkJcGlwZV9jb21tYW5kKCZhcHBseV93b3JrdHJlZSwgZGlmZi0+YnVmLCBkaWZmLT5sZW4sCisJCQkgICAgIE5VTEwsIDAsIE5VTEwsIDApOworCisJCXJldHVybiAxOworCX0KKworCWlmICghYXBwbGllc19pbmRleCkgeworCQllcnIocywgXygiVGhlIHNlbGVjdGVkIGh1bmtzIGRvIG5vdCBhcHBseSB0byB0aGUgaW5kZXghIikpOworCQlpZiAocHJvbXB0X3llc25vKHMsIF8oIkFwcGx5IHRoZW0gdG8gdGhlIHdvcmt0cmVlICIKKwkJCQkJICAiYW55d2F5PyAiKSkgPiAwKSB7CisJCQlzZXR1cF9jaGlsZF9wcm9jZXNzKHMsICZhcHBseV93b3JrdHJlZSwKKwkJCQkJICAgICJhcHBseSIsIHJldmVyc2UsIE5VTEwpOworCQkJcmV0dXJuIHBpcGVfY29tbWFuZCgmYXBwbHlfd29ya3RyZWUsIGRpZmYtPmJ1ZiwKKwkJCQkJICAgIGRpZmYtPmxlbiwgTlVMTCwgMCwgTlVMTCwgMCk7CisJCX0KKwkJZXJyKHMsIF8oIk5vdGhpbmcgd2FzIGFwcGxpZWQuXG4iKSk7CisJfSBlbHNlCisJCS8qIEFzIGEgbGFzdCByZXNvcnQsIHNob3cgdGhlIGRpZmYgdG8gdGhlIHVzZXIgKi8KKwkJZndyaXRlKGRpZmYtPmJ1ZiwgZGlmZi0+bGVuLCAxLCBzdGRlcnIpOworCisJcmV0dXJuIDA7Cit9CisKKyNkZWZpbmUgU1VNTUFSWV9IRUFERVJfV0lEVEggMjAKKyNkZWZpbmUgU1VNTUFSWV9MSU5FX1dJRFRIIDgwCitzdGF0aWMgdm9pZCBzdW1tYXJpemVfaHVuayhzdHJ1Y3QgYWRkX3Bfc3RhdGUgKnMsIHN0cnVjdCBodW5rICpodW5rLAorCQkJICAgc3RydWN0IHN0cmJ1ZiAqb3V0KQoreworCXN0cnVjdCBodW5rX2hlYWRlciAqaGVhZGVyID0gJmh1bmstPmhlYWRlcjsKKwlzdHJ1Y3Qgc3RyYnVmICpwbGFpbiA9ICZzLT5wbGFpbjsKKwlzaXplX3QgbGVuID0gb3V0LT5sZW4sIGk7CisKKwlzdHJidWZfYWRkZihvdXQsICIgLSVsdSwlbHUgKyVsdSwlbHUgIiwKKwkJICAgIGhlYWRlci0+b2xkX29mZnNldCwgaGVhZGVyLT5vbGRfY291bnQsCisJCSAgICBoZWFkZXItPm5ld19vZmZzZXQsIGhlYWRlci0+bmV3X2NvdW50KTsKKwlpZiAob3V0LT5sZW4gLSBsZW4gPCBTVU1NQVJZX0hFQURFUl9XSURUSCkKKwkJc3RyYnVmX2FkZGNoYXJzKG91dCwgJyAnLAorCQkJCVNVTU1BUllfSEVBREVSX1dJRFRIICsgbGVuIC0gb3V0LT5sZW4pOworCWZvciAoaSA9IGh1bmstPnN0YXJ0OyBpIDwgaHVuay0+ZW5kOyBpID0gZmluZF9uZXh0X2xpbmUocGxhaW4sIGkpKQorCQlpZiAocGxhaW4tPmJ1ZltpXSAhPSAnICcpCisJCQlicmVhazsKKwlpZiAoaSA8IGh1bmstPmVuZCkKKwkJc3RyYnVmX2FkZChvdXQsIHBsYWluLT5idWYgKyBpLCBmaW5kX25leHRfbGluZShwbGFpbiwgaSkgLSBpKTsKKwlpZiAob3V0LT5sZW4gLSBsZW4gPiBTVU1NQVJZX0xJTkVfV0lEVEgpCisJCXN0cmJ1Zl9zZXRsZW4ob3V0LCBsZW4gKyBTVU1NQVJZX0xJTkVfV0lEVEgpOworCXN0cmJ1Zl9jb21wbGV0ZV9saW5lKG91dCk7Cit9CisKKyNkZWZpbmUgRElTUExBWV9IVU5LU19MSU5FUyAyMAorc3RhdGljIHNpemVfdCBkaXNwbGF5X2h1bmtzKHN0cnVjdCBhZGRfcF9zdGF0ZSAqcywKKwkJCSAgICBzdHJ1Y3QgZmlsZV9kaWZmICpmaWxlX2RpZmYsIHNpemVfdCBzdGFydF9pbmRleCkKK3sKKwlzaXplX3QgZW5kX2luZGV4ID0gc3RhcnRfaW5kZXggKyBESVNQTEFZX0hVTktTX0xJTkVTOworCisJaWYgKGVuZF9pbmRleCA+IGZpbGVfZGlmZi0+aHVua19ucikKKwkJZW5kX2luZGV4ID0gZmlsZV9kaWZmLT5odW5rX25yOworCisJd2hpbGUgKHN0YXJ0X2luZGV4IDwgZW5kX2luZGV4KSB7CisJCXN0cnVjdCBodW5rICpodW5rID0gZmlsZV9kaWZmLT5odW5rICsgc3RhcnRfaW5kZXgrKzsKKworCQlzdHJidWZfcmVzZXQoJnMtPmJ1Zik7CisJCXN0cmJ1Zl9hZGRmKCZzLT5idWYsICIlYyUyZDogIiwgaHVuay0+dXNlID09IFVTRV9IVU5LID8gJysnCisJCQkgICAgOiBodW5rLT51c2UgPT0gU0tJUF9IVU5LID8gJy0nIDogJyAnLAorCQkJICAgIChpbnQpc3RhcnRfaW5kZXgpOworCQlzdW1tYXJpemVfaHVuayhzLCBodW5rLCAmcy0+YnVmKTsKKwkJZnB1dHMocy0+YnVmLmJ1Ziwgc3Rkb3V0KTsKKwl9CisKKwlyZXR1cm4gZW5kX2luZGV4OworfQorCitzdGF0aWMgY29uc3QgY2hhciBoZWxwX3BhdGNoX3JlbWFpbmRlcltdID0KK05fKCJqIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIG5leHQgdW5kZWNpZGVkIGh1bmtcbiIKKyAgICJKIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIG5leHQgaHVua1xuIgorICAgImsgLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgcHJldmlvdXMgdW5kZWNpZGVkIGh1bmtcbiIKKyAgICJLIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIHByZXZpb3VzIGh1bmtcbiIKKyAgICJnIC0gc2VsZWN0IGEgaHVuayB0byBnbyB0b1xuIgorICAgIi8gLSBzZWFyY2ggZm9yIGEgaHVuayBtYXRjaGluZyB0aGUgZ2l2ZW4gcmVnZXhcbiIKKyAgICJzIC0gc3BsaXQgdGhlIGN1cnJlbnQgaHVuayBpbnRvIHNtYWxsZXIgaHVua3NcbiIKKyAgICJlIC0gbWFudWFsbHkgZWRpdCB0aGUgY3VycmVudCBodW5rXG4iCisgICAiPyAtIHByaW50IGhlbHBcbiIpOworCitzdGF0aWMgaW50IHBhdGNoX3VwZGF0ZV9maWxlKHN0cnVjdCBhZGRfcF9zdGF0ZSAqcywKKwkJCSAgICAgc3RydWN0IGZpbGVfZGlmZiAqZmlsZV9kaWZmKQoreworCXNpemVfdCBodW5rX2luZGV4ID0gMDsKKwlzc2l6ZV90IGksIHVuZGVjaWRlZF9wcmV2aW91cywgdW5kZWNpZGVkX25leHQ7CisJc3RydWN0IGh1bmsgKmh1bms7CisJY2hhciBjaDsKKwlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjcCA9IENISUxEX1BST0NFU1NfSU5JVDsKKwlpbnQgY29sb3JlZCA9ICEhcy0+Y29sb3JlZC5sZW4sIHF1aXQgPSAwOworCWVudW0gcHJvbXB0X21vZGVfdHlwZSBwcm9tcHRfbW9kZV90eXBlOworCisJaWYgKCFmaWxlX2RpZmYtPmh1bmtfbnIpCisJCXJldHVybiAwOworCisJc3RyYnVmX3Jlc2V0KCZzLT5idWYpOworCXJlbmRlcl9kaWZmX2hlYWRlcihzLCBmaWxlX2RpZmYsIGNvbG9yZWQsICZzLT5idWYpOworCWZwdXRzKHMtPmJ1Zi5idWYsIHN0ZG91dCk7CisJZm9yICg7OykgeworCQlpZiAoaHVua19pbmRleCA+PSBmaWxlX2RpZmYtPmh1bmtfbnIpCisJCQlodW5rX2luZGV4ID0gMDsKKwkJaHVuayA9IGZpbGVfZGlmZi0+aHVuayArIGh1bmtfaW5kZXg7CisKKwkJdW5kZWNpZGVkX3ByZXZpb3VzID0gLTE7CisJCWZvciAoaSA9IGh1bmtfaW5kZXggLSAxOyBpID49IDA7IGktLSkKKwkJCWlmIChmaWxlX2RpZmYtPmh1bmtbaV0udXNlID09IFVOREVDSURFRF9IVU5LKSB7CisJCQkJdW5kZWNpZGVkX3ByZXZpb3VzID0gaTsKKwkJCQlicmVhazsKKwkJCX0KKworCQl1bmRlY2lkZWRfbmV4dCA9IC0xOworCQlmb3IgKGkgPSBodW5rX2luZGV4ICsgMTsgaSA8IGZpbGVfZGlmZi0+aHVua19ucjsgaSsrKQorCQkJaWYgKGZpbGVfZGlmZi0+aHVua1tpXS51c2UgPT0gVU5ERUNJREVEX0hVTkspIHsKKwkJCQl1bmRlY2lkZWRfbmV4dCA9IGk7CisJCQkJYnJlYWs7CisJCQl9CisKKwkJLyogRXZlcnl0aGluZyBkZWNpZGVkPyAqLworCQlpZiAodW5kZWNpZGVkX3ByZXZpb3VzIDwgMCAmJiB1bmRlY2lkZWRfbmV4dCA8IDAgJiYKKwkJICAgIGh1bmstPnVzZSAhPSBVTkRFQ0lERURfSFVOSykKKwkJCWJyZWFrOworCisJCXN0cmJ1Zl9yZXNldCgmcy0+YnVmKTsKKwkJcmVuZGVyX2h1bmsocywgaHVuaywgMCwgY29sb3JlZCwgJnMtPmJ1Zik7CisJCWZwdXRzKHMtPmJ1Zi5idWYsIHN0ZG91dCk7CisKKwkJc3RyYnVmX3Jlc2V0KCZzLT5idWYpOworCQlpZiAodW5kZWNpZGVkX3ByZXZpb3VzID49IDApCisJCQlzdHJidWZfYWRkc3RyKCZzLT5idWYsICIsayIpOworCQlpZiAoaHVua19pbmRleCkKKwkJCXN0cmJ1Zl9hZGRzdHIoJnMtPmJ1ZiwgIixLIik7CisJCWlmICh1bmRlY2lkZWRfbmV4dCA+PSAwKQorCQkJc3RyYnVmX2FkZHN0cigmcy0+YnVmLCAiLGoiKTsKKwkJaWYgKGh1bmtfaW5kZXggKyAxIDwgZmlsZV9kaWZmLT5odW5rX25yKQorCQkJc3RyYnVmX2FkZHN0cigmcy0+YnVmLCAiLEoiKTsKKwkJaWYgKGZpbGVfZGlmZi0+aHVua19uciA+IDEpCisJCQlzdHJidWZfYWRkc3RyKCZzLT5idWYsICIsZywvIik7CisJCWlmIChodW5rLT5zcGxpdHRhYmxlX2ludG8gPiAxKQorCQkJc3RyYnVmX2FkZHN0cigmcy0+YnVmLCAiLHMiKTsKKwkJaWYgKGh1bmtfaW5kZXggKyAxID4gZmlsZV9kaWZmLT5tb2RlX2NoYW5nZSAmJgorCQkgICAgIWZpbGVfZGlmZi0+ZGVsZXRlZCkKKwkJCXN0cmJ1Zl9hZGRzdHIoJnMtPmJ1ZiwgIixlIik7CisKKwkJaWYgKGZpbGVfZGlmZi0+ZGVsZXRlZCkKKwkJCXByb21wdF9tb2RlX3R5cGUgPSBQUk9NUFRfREVMRVRJT047CisJCWVsc2UgaWYgKGZpbGVfZGlmZi0+bW9kZV9jaGFuZ2UgJiYgIWh1bmtfaW5kZXgpCisJCQlwcm9tcHRfbW9kZV90eXBlID0gUFJPTVBUX01PREVfQ0hBTkdFOworCQllbHNlCisJCQlwcm9tcHRfbW9kZV90eXBlID0gUFJPTVBUX0hVTks7CisKKwkJY29sb3JfZnByaW50ZihzdGRvdXQsIHMtPnMucHJvbXB0X2NvbG9yLAorCQkJICAgICAgIiglIlBSSXVNQVgiLyUiUFJJdU1BWCIpICIsCisJCQkgICAgICAodWludG1heF90KWh1bmtfaW5kZXggKyAxLAorCQkJICAgICAgKHVpbnRtYXhfdClmaWxlX2RpZmYtPmh1bmtfbnIpOworCQljb2xvcl9mcHJpbnRmKHN0ZG91dCwgcy0+cy5wcm9tcHRfY29sb3IsCisJCQkgICAgICBfKHMtPm1vZGUtPnByb21wdF9tb2RlW3Byb21wdF9tb2RlX3R5cGVdKSwKKwkJCSAgICAgIHMtPmJ1Zi5idWYpOworCQlmZmx1c2goc3Rkb3V0KTsKKwkJaWYgKHJlYWRfc2luZ2xlX2NoYXJhY3RlcihzKSA9PSBFT0YpCisJCQlicmVhazsKKworCQlpZiAoIXMtPmFuc3dlci5sZW4pCisJCQljb250aW51ZTsKKwkJY2ggPSB0b2xvd2VyKHMtPmFuc3dlci5idWZbMF0pOworCQlpZiAoY2ggPT0gJ3knKSB7CisJCQlodW5rLT51c2UgPSBVU0VfSFVOSzsKK3NvZnRfaW5jcmVtZW50OgorCQkJaHVua19pbmRleCA9IHVuZGVjaWRlZF9uZXh0IDwgMCA/CisJCQkJZmlsZV9kaWZmLT5odW5rX25yIDogdW5kZWNpZGVkX25leHQ7CisJCX0gZWxzZSBpZiAoY2ggPT0gJ24nKSB7CisJCQlodW5rLT51c2UgPSBTS0lQX0hVTks7CisJCQlnb3RvIHNvZnRfaW5jcmVtZW50OworCQl9IGVsc2UgaWYgKGNoID09ICdhJykgeworCQkJZm9yICg7IGh1bmtfaW5kZXggPCBmaWxlX2RpZmYtPmh1bmtfbnI7IGh1bmtfaW5kZXgrKykgeworCQkJCWh1bmsgPSBmaWxlX2RpZmYtPmh1bmsgKyBodW5rX2luZGV4OworCQkJCWlmIChodW5rLT51c2UgPT0gVU5ERUNJREVEX0hVTkspCisJCQkJCWh1bmstPnVzZSA9IFVTRV9IVU5LOworCQkJfQorCQl9IGVsc2UgaWYgKGNoID09ICdkJyB8fCBjaCA9PSAncScpIHsKKwkJCWZvciAoOyBodW5rX2luZGV4IDwgZmlsZV9kaWZmLT5odW5rX25yOyBodW5rX2luZGV4KyspIHsKKwkJCQlodW5rID0gZmlsZV9kaWZmLT5odW5rICsgaHVua19pbmRleDsKKwkJCQlpZiAoaHVuay0+dXNlID09IFVOREVDSURFRF9IVU5LKQorCQkJCQlodW5rLT51c2UgPSBTS0lQX0hVTks7CisJCQl9CisJCQlpZiAoY2ggPT0gJ3EnKSB7CisJCQkJcXVpdCA9IDE7CisJCQkJYnJlYWs7CisJCQl9CisJCX0gZWxzZSBpZiAocy0+YW5zd2VyLmJ1ZlswXSA9PSAnSycpIHsKKwkJCWlmIChodW5rX2luZGV4KQorCQkJCWh1bmtfaW5kZXgtLTsKKwkJCWVsc2UKKwkJCQllcnIocywgXygiTm8gcHJldmlvdXMgaHVuayIpKTsKKwkJfSBlbHNlIGlmIChzLT5hbnN3ZXIuYnVmWzBdID09ICdKJykgeworCQkJaWYgKGh1bmtfaW5kZXggKyAxIDwgZmlsZV9kaWZmLT5odW5rX25yKQorCQkJCWh1bmtfaW5kZXgrKzsKKwkJCWVsc2UKKwkJCQllcnIocywgXygiTm8gbmV4dCBodW5rIikpOworCQl9IGVsc2UgaWYgKHMtPmFuc3dlci5idWZbMF0gPT0gJ2snKSB7CisJCQlpZiAodW5kZWNpZGVkX3ByZXZpb3VzID49IDApCisJCQkJaHVua19pbmRleCA9IHVuZGVjaWRlZF9wcmV2aW91czsKKwkJCWVsc2UKKwkJCQllcnIocywgXygiTm8gcHJldmlvdXMgaHVuayIpKTsKKwkJfSBlbHNlIGlmIChzLT5hbnN3ZXIuYnVmWzBdID09ICdqJykgeworCQkJaWYgKHVuZGVjaWRlZF9uZXh0ID49IDApCisJCQkJaHVua19pbmRleCA9IHVuZGVjaWRlZF9uZXh0OworCQkJZWxzZQorCQkJCWVycihzLCBfKCJObyBuZXh0IGh1bmsiKSk7CisJCX0gZWxzZSBpZiAocy0+YW5zd2VyLmJ1ZlswXSA9PSAnZycpIHsKKwkJCWNoYXIgKnBlbmQ7CisJCQl1bnNpZ25lZCBsb25nIHJlc3BvbnNlOworCisJCQlpZiAoZmlsZV9kaWZmLT5odW5rX25yIDwgMikgeworCQkJCWVycihzLCBfKCJObyBvdGhlciBodW5rcyB0byBnb3RvIikpOworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJc3RyYnVmX3JlbW92ZSgmcy0+YW5zd2VyLCAwLCAxKTsKKwkJCXN0cmJ1Zl90cmltKCZzLT5hbnN3ZXIpOworCQkJaSA9IGh1bmtfaW5kZXggLSBESVNQTEFZX0hVTktTX0xJTkVTIC8gMjsKKwkJCWlmIChpIDwgZmlsZV9kaWZmLT5tb2RlX2NoYW5nZSkKKwkJCQlpID0gZmlsZV9kaWZmLT5tb2RlX2NoYW5nZTsKKwkJCXdoaWxlIChzLT5hbnN3ZXIubGVuID09IDApIHsKKwkJCQlpID0gZGlzcGxheV9odW5rcyhzLCBmaWxlX2RpZmYsIGkpOworCQkJCXByaW50ZigiJXMiLCBpIDwgZmlsZV9kaWZmLT5odW5rX25yID8KKwkJCQkgICAgICAgXygiZ28gdG8gd2hpY2ggaHVuayAoPHJldD4gdG8gc2VlICIKKwkJCQkJICJtb3JlKT8gIikgOiBfKCJnbyB0byB3aGljaCBodW5rPyAiKSk7CisJCQkJZmZsdXNoKHN0ZG91dCk7CisJCQkJaWYgKHN0cmJ1Zl9nZXRsaW5lKCZzLT5hbnN3ZXIsCisJCQkJCQkgICBzdGRpbikgPT0gRU9GKQorCQkJCQlicmVhazsKKwkJCQlzdHJidWZfdHJpbV90cmFpbGluZ19uZXdsaW5lKCZzLT5hbnN3ZXIpOworCQkJfQorCisJCQlzdHJidWZfdHJpbSgmcy0+YW5zd2VyKTsKKwkJCXJlc3BvbnNlID0gc3RydG91bChzLT5hbnN3ZXIuYnVmLCAmcGVuZCwgMTApOworCQkJaWYgKCpwZW5kIHx8IHBlbmQgPT0gcy0+YW5zd2VyLmJ1ZikKKwkJCQllcnIocywgXygiSW52YWxpZCBudW1iZXI6ICclcyciKSwKKwkJCQkgICAgcy0+YW5zd2VyLmJ1Zik7CisJCQllbHNlIGlmICgwIDwgcmVzcG9uc2UgJiYgcmVzcG9uc2UgPD0gZmlsZV9kaWZmLT5odW5rX25yKQorCQkJCWh1bmtfaW5kZXggPSByZXNwb25zZSAtIDE7CisJCQllbHNlCisJCQkJZXJyKHMsIFFfKCJTb3JyeSwgb25seSAlZCBodW5rIGF2YWlsYWJsZS4iLAorCQkJCQkgICJTb3JyeSwgb25seSAlZCBodW5rcyBhdmFpbGFibGUuIiwKKwkJCQkJICBmaWxlX2RpZmYtPmh1bmtfbnIpLAorCQkJCSAgICAoaW50KWZpbGVfZGlmZi0+aHVua19ucik7CisJCX0gZWxzZSBpZiAocy0+YW5zd2VyLmJ1ZlswXSA9PSAnLycpIHsKKwkJCXJlZ2V4X3QgcmVnZXg7CisJCQlpbnQgcmV0OworCisJCQlpZiAoZmlsZV9kaWZmLT5odW5rX25yIDwgMikgeworCQkJCWVycihzLCBfKCJObyBvdGhlciBodW5rcyB0byBzZWFyY2giKSk7CisJCQkJY29udGludWU7CisJCQl9CisJCQlzdHJidWZfcmVtb3ZlKCZzLT5hbnN3ZXIsIDAsIDEpOworCQkJc3RyYnVmX3RyaW1fdHJhaWxpbmdfbmV3bGluZSgmcy0+YW5zd2VyKTsKKwkJCWlmIChzLT5hbnN3ZXIubGVuID09IDApIHsKKwkJCQlwcmludGYoIiVzIiwgXygic2VhcmNoIGZvciByZWdleD8gIikpOworCQkJCWZmbHVzaChzdGRvdXQpOworCQkJCWlmIChzdHJidWZfZ2V0bGluZSgmcy0+YW5zd2VyLAorCQkJCQkJICAgc3RkaW4pID09IEVPRikKKwkJCQkJYnJlYWs7CisJCQkJc3RyYnVmX3RyaW1fdHJhaWxpbmdfbmV3bGluZSgmcy0+YW5zd2VyKTsKKwkJCQlpZiAocy0+YW5zd2VyLmxlbiA9PSAwKQorCQkJCQljb250aW51ZTsKKwkJCX0KKwkJCXJldCA9IHJlZ2NvbXAoJnJlZ2V4LCBzLT5hbnN3ZXIuYnVmLAorCQkJCSAgICAgIFJFR19FWFRFTkRFRCB8IFJFR19OT1NVQiB8IFJFR19ORVdMSU5FKTsKKwkJCWlmIChyZXQpIHsKKwkJCQljaGFyIGVycmJ1ZlsxMDI0XTsKKworCQkJCXJlZ2Vycm9yKHJldCwgJnJlZ2V4LCBlcnJidWYsIHNpemVvZihlcnJidWYpKTsKKwkJCQllcnIocywgXygiTWFsZm9ybWVkIHNlYXJjaCByZWdleHAgJXM6ICVzIiksCisJCQkJICAgIHMtPmFuc3dlci5idWYsIGVycmJ1Zik7CisJCQkJY29udGludWU7CisJCQl9CisJCQlpID0gaHVua19pbmRleDsKKwkJCWZvciAoOzspIHsKKwkJCQkvKiByZW5kZXIgdGhlIGh1bmsgaW50byBhIHNjcmF0Y2ggYnVmZmVyICovCisJCQkJcmVuZGVyX2h1bmsocywgZmlsZV9kaWZmLT5odW5rICsgaSwgMCwgMCwKKwkJCQkJICAgICZzLT5idWYpOworCQkJCWlmIChyZWdleGVjKCZyZWdleCwgcy0+YnVmLmJ1ZiwgMCwgTlVMTCwgMCkKKwkJCQkgICAgIT0gUkVHX05PTUFUQ0gpCisJCQkJCWJyZWFrOworCQkJCWkrKzsKKwkJCQlpZiAoaSA9PSBmaWxlX2RpZmYtPmh1bmtfbnIpCisJCQkJCWkgPSAwOworCQkJCWlmIChpICE9IGh1bmtfaW5kZXgpCisJCQkJCWNvbnRpbnVlOworCQkJCWVycihzLCBfKCJObyBodW5rIG1hdGNoZXMgdGhlIGdpdmVuIHBhdHRlcm4iKSk7CisJCQkJYnJlYWs7CisJCQl9CisJCQlodW5rX2luZGV4ID0gaTsKKwkJfSBlbHNlIGlmIChzLT5hbnN3ZXIuYnVmWzBdID09ICdzJykgeworCQkJc2l6ZV90IHNwbGl0dGFibGVfaW50byA9IGh1bmstPnNwbGl0dGFibGVfaW50bzsKKwkJCWlmIChzcGxpdHRhYmxlX2ludG8gPCAyKQorCQkJCWVycihzLCBfKCJTb3JyeSwgY2Fubm90IHNwbGl0IHRoaXMgaHVuayIpKTsKKwkJCWVsc2UgaWYgKCFzcGxpdF9odW5rKHMsIGZpbGVfZGlmZiwKKwkJCQkJICAgICBodW5rIC0gZmlsZV9kaWZmLT5odW5rKSkKKwkJCQljb2xvcl9mcHJpbnRmX2xuKHN0ZG91dCwgcy0+cy5oZWFkZXJfY29sb3IsCisJCQkJCQkgXygiU3BsaXQgaW50byAlZCBodW5rcy4iKSwKKwkJCQkJCSAoaW50KXNwbGl0dGFibGVfaW50byk7CisJCX0gZWxzZSBpZiAocy0+YW5zd2VyLmJ1ZlswXSA9PSAnZScpIHsKKwkJCWlmIChodW5rX2luZGV4ICsgMSA9PSBmaWxlX2RpZmYtPm1vZGVfY2hhbmdlKQorCQkJCWVycihzLCBfKCJTb3JyeSwgY2Fubm90IGVkaXQgdGhpcyBodW5rIikpOworCQkJZWxzZSBpZiAoZWRpdF9odW5rX2xvb3AocywgZmlsZV9kaWZmLCBodW5rKSA+PSAwKSB7CisJCQkJaHVuay0+dXNlID0gVVNFX0hVTks7CisJCQkJZ290byBzb2Z0X2luY3JlbWVudDsKKwkJCX0KKwkJfSBlbHNlIHsKKwkJCWNvbnN0IGNoYXIgKnAgPSBfKGhlbHBfcGF0Y2hfcmVtYWluZGVyKSwgKmVvbCA9IHA7CisKKwkJCWNvbG9yX2ZwcmludGYoc3Rkb3V0LCBzLT5zLmhlbHBfY29sb3IsICIlcyIsCisJCQkJICAgICAgXyhzLT5tb2RlLT5oZWxwX3BhdGNoX3RleHQpKTsKKworCQkJLyoKKwkJCSAqIFNob3cgb25seSB0aG9zZSBsaW5lcyBvZiB0aGUgcmVtYWluZGVyIHRoYXQgYXJlCisJCQkgKiBhY3R1YWxseSBhcHBsaWNhYmxlIHdpdGggdGhlIGN1cnJlbnQgaHVuay4KKwkJCSAqLworCQkJZm9yICg7ICpwOyBwID0gZW9sICsgKCplb2wgPT0gJ1xuJykpIHsKKwkJCQllb2wgPSBzdHJjaHJudWwocCwgJ1xuJyk7CisKKwkJCQkvKgorCQkJCSAqIGBzLT5idWZgIHN0aWxsIGNvbnRhaW5zIHRoZSBwYXJ0IG9mIHRoZQorCQkJCSAqIGNvbW1hbmRzIHNob3duIGluIHRoZSBwcm9tcHQgdGhhdCBhcmUgbm90CisJCQkJICogYWx3YXlzIGF2YWlsYWJsZS4KKwkJCQkgKi8KKwkJCQlpZiAoKnAgIT0gJz8nICYmICFzdHJjaHIocy0+YnVmLmJ1ZiwgKnApKQorCQkJCQljb250aW51ZTsKKworCQkJCWNvbG9yX2ZwcmludGZfbG4oc3Rkb3V0LCBzLT5zLmhlbHBfY29sb3IsCisJCQkJCQkgIiUuKnMiLCAoaW50KShlb2wgLSBwKSwgcCk7CisJCQl9CisJCX0KKwl9CisKKwkvKiBBbnkgaHVuayB0byBiZSB1c2VkPyAqLworCWZvciAoaSA9IDA7IGkgPCBmaWxlX2RpZmYtPmh1bmtfbnI7IGkrKykKKwkJaWYgKGZpbGVfZGlmZi0+aHVua1tpXS51c2UgPT0gVVNFX0hVTkspCisJCQlicmVhazsKKworCWlmIChpIDwgZmlsZV9kaWZmLT5odW5rX25yKSB7CisJCS8qIEF0IGxlYXN0IG9uZSBodW5rIHNlbGVjdGVkOiBhcHBseSAqLworCQlzdHJidWZfcmVzZXQoJnMtPmJ1Zik7CisJCXJlYXNzZW1ibGVfcGF0Y2gocywgZmlsZV9kaWZmLCAwLCAmcy0+YnVmKTsKKworCQlkaXNjYXJkX2luZGV4KHMtPnMuci0+aW5kZXgpOworCQlpZiAocy0+bW9kZS0+YXBwbHlfZm9yX2NoZWNrb3V0KQorCQkJYXBwbHlfZm9yX2NoZWNrb3V0KHMsICZzLT5idWYsCisJCQkJCSAgIHMtPm1vZGUtPmlzX3JldmVyc2UpOworCQllbHNlIHsKKwkJCXNldHVwX2NoaWxkX3Byb2Nlc3MocywgJmNwLCAiYXBwbHkiLCBOVUxMKTsKKwkJCWFyZ3ZfYXJyYXlfcHVzaHYoJmNwLmFyZ3MsIHMtPm1vZGUtPmFwcGx5X2FyZ3MpOworCQkJaWYgKHBpcGVfY29tbWFuZCgmY3AsIHMtPmJ1Zi5idWYsIHMtPmJ1Zi5sZW4sCisJCQkJCSBOVUxMLCAwLCBOVUxMLCAwKSkKKwkJCQllcnJvcihfKCInZ2l0IGFwcGx5JyBmYWlsZWQiKSk7CisJCX0KKwkJaWYgKCFyZXBvX3JlYWRfaW5kZXgocy0+cy5yKSkKKwkJCXJlcG9fcmVmcmVzaF9hbmRfd3JpdGVfaW5kZXgocy0+cy5yLCBSRUZSRVNIX1FVSUVULCAwLAorCQkJCQkJICAgICAxLCBOVUxMLCBOVUxMLCBOVUxMKTsKKwl9CisKKwlwdXRjaGFyKCdcbicpOworCXJldHVybiBxdWl0OworfQorCitpbnQgcnVuX2FkZF9wKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBlbnVtIGFkZF9wX21vZGUgbW9kZSwKKwkgICAgICBjb25zdCBjaGFyICpyZXZpc2lvbiwgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwcykKK3sKKwlzdHJ1Y3QgYWRkX3Bfc3RhdGUgcyA9IHsKKwkJeyByIH0sIFNUUkJVRl9JTklULCBTVFJCVUZfSU5JVCwgU1RSQlVGX0lOSVQsIFNUUkJVRl9JTklUCisJfTsKKwlzaXplX3QgaSwgYmluYXJ5X2NvdW50ID0gMDsKKworCWluaXRfYWRkX2lfc3RhdGUoJnMucywgcik7CisKKwlpZiAobW9kZSA9PSBBRERfUF9TVEFTSCkKKwkJcy5tb2RlID0gJnBhdGNoX21vZGVfc3Rhc2g7CisJZWxzZSBpZiAobW9kZSA9PSBBRERfUF9SRVNFVCkgeworCQlpZiAoIXJldmlzaW9uIHx8ICFzdHJjbXAocmV2aXNpb24sICJIRUFEIikpCisJCQlzLm1vZGUgPSAmcGF0Y2hfbW9kZV9yZXNldF9oZWFkOworCQllbHNlCisJCQlzLm1vZGUgPSAmcGF0Y2hfbW9kZV9yZXNldF9ub3RoZWFkOworCX0gZWxzZSBpZiAobW9kZSA9PSBBRERfUF9DSEVDS09VVCkgeworCQlpZiAoIXJldmlzaW9uKQorCQkJcy5tb2RlID0gJnBhdGNoX21vZGVfY2hlY2tvdXRfaW5kZXg7CisJCWVsc2UgaWYgKCFzdHJjbXAocmV2aXNpb24sICJIRUFEIikpCisJCQlzLm1vZGUgPSAmcGF0Y2hfbW9kZV9jaGVja291dF9oZWFkOworCQllbHNlCisJCQlzLm1vZGUgPSAmcGF0Y2hfbW9kZV9jaGVja291dF9ub3RoZWFkOworCX0gZWxzZSBpZiAobW9kZSA9PSBBRERfUF9XT1JLVFJFRSkgeworCQlpZiAoIXJldmlzaW9uKQorCQkJcy5tb2RlID0gJnBhdGNoX21vZGVfY2hlY2tvdXRfaW5kZXg7CisJCWVsc2UgaWYgKCFzdHJjbXAocmV2aXNpb24sICJIRUFEIikpCisJCQlzLm1vZGUgPSAmcGF0Y2hfbW9kZV93b3JrdHJlZV9oZWFkOworCQllbHNlCisJCQlzLm1vZGUgPSAmcGF0Y2hfbW9kZV93b3JrdHJlZV9ub3RoZWFkOworCX0gZWxzZQorCQlzLm1vZGUgPSAmcGF0Y2hfbW9kZV9hZGQ7CisJcy5yZXZpc2lvbiA9IHJldmlzaW9uOworCisJaWYgKGRpc2NhcmRfaW5kZXgoci0+aW5kZXgpIDwgMCB8fCByZXBvX3JlYWRfaW5kZXgocikgPCAwIHx8CisJICAgICghcy5tb2RlLT5pbmRleF9vbmx5ICYmCisJICAgICByZXBvX3JlZnJlc2hfYW5kX3dyaXRlX2luZGV4KHIsIFJFRlJFU0hfUVVJRVQsIDAsIDEsCisJCQkJCSAgTlVMTCwgTlVMTCwgTlVMTCkgPCAwKSB8fAorCSAgICBwYXJzZV9kaWZmKCZzLCBwcykgPCAwKSB7CisJCXN0cmJ1Zl9yZWxlYXNlKCZzLnBsYWluKTsKKwkJc3RyYnVmX3JlbGVhc2UoJnMuY29sb3JlZCk7CisJCWNsZWFyX2FkZF9pX3N0YXRlKCZzLnMpOworCQlyZXR1cm4gLTE7CisJfQorCisJZm9yIChpID0gMDsgaSA8IHMuZmlsZV9kaWZmX25yOyBpKyspCisJCWlmIChzLmZpbGVfZGlmZltpXS5iaW5hcnkgJiYgIXMuZmlsZV9kaWZmW2ldLmh1bmtfbnIpCisJCQliaW5hcnlfY291bnQrKzsKKwkJZWxzZSBpZiAocGF0Y2hfdXBkYXRlX2ZpbGUoJnMsIHMuZmlsZV9kaWZmICsgaSkpCisJCQlicmVhazsKKworCWlmIChzLmZpbGVfZGlmZl9uciA9PSAwKQorCQlmcHJpbnRmKHN0ZGVyciwgXygiTm8gY2hhbmdlcy5cbiIpKTsKKwllbHNlIGlmIChiaW5hcnlfY291bnQgPT0gcy5maWxlX2RpZmZfbnIpCisJCWZwcmludGYoc3RkZXJyLCBfKCJPbmx5IGJpbmFyeSBmaWxlcyBjaGFuZ2VkLlxuIikpOworCisJc3RyYnVmX3JlbGVhc2UoJnMuYW5zd2VyKTsKKwlzdHJidWZfcmVsZWFzZSgmcy5idWYpOworCXN0cmJ1Zl9yZWxlYXNlKCZzLnBsYWluKTsKKwlzdHJidWZfcmVsZWFzZSgmcy5jb2xvcmVkKTsKKwljbGVhcl9hZGRfaV9zdGF0ZSgmcy5zKTsKKwlyZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL2FkdmljZS5jIGIvYWR2aWNlLmMKaW5kZXggNWYzNTY1Ni4uZjBhM2QzMiAxMDA2NDQKLS0tIGEvYWR2aWNlLmMKKysrIGIvYWR2aWNlLmMKQEAgLTMsMTcgKzMsMjEgQEAKICNpbmNsdWRlICJjb2xvci5oIgogI2luY2x1ZGUgImhlbHAuaCIKIAoraW50IGFkdmljZV9mZXRjaF9zaG93X2ZvcmNlZF91cGRhdGVzID0gMTsKIGludCBhZHZpY2VfcHVzaF91cGRhdGVfcmVqZWN0ZWQgPSAxOwogaW50IGFkdmljZV9wdXNoX25vbl9mZl9jdXJyZW50ID0gMTsKIGludCBhZHZpY2VfcHVzaF9ub25fZmZfbWF0Y2hpbmcgPSAxOwogaW50IGFkdmljZV9wdXNoX2FscmVhZHlfZXhpc3RzID0gMTsKIGludCBhZHZpY2VfcHVzaF9mZXRjaF9maXJzdCA9IDE7CiBpbnQgYWR2aWNlX3B1c2hfbmVlZHNfZm9yY2UgPSAxOworaW50IGFkdmljZV9wdXNoX3VucXVhbGlmaWVkX3JlZl9uYW1lID0gMTsKIGludCBhZHZpY2Vfc3RhdHVzX2hpbnRzID0gMTsKIGludCBhZHZpY2Vfc3RhdHVzX3Vfb3B0aW9uID0gMTsKK2ludCBhZHZpY2Vfc3RhdHVzX2FoZWFkX2JlaGluZF93YXJuaW5nID0gMTsKIGludCBhZHZpY2VfY29tbWl0X2JlZm9yZV9tZXJnZSA9IDE7CiBpbnQgYWR2aWNlX3Jlc2V0X3F1aWV0X3dhcm5pbmcgPSAxOwogaW50IGFkdmljZV9yZXNvbHZlX2NvbmZsaWN0ID0gMTsKK2ludCBhZHZpY2Vfc2VxdWVuY2VyX2luX3VzZSA9IDE7CiBpbnQgYWR2aWNlX2ltcGxpY2l0X2lkZW50aXR5ID0gMTsKIGludCBhZHZpY2VfZGV0YWNoZWRfaGVhZCA9IDE7CiBpbnQgYWR2aWNlX3NldF91cHN0cmVhbV9mYWlsdXJlID0gMTsKQEAgLTI1LDYgKzI5LDkgQEAKIGludCBhZHZpY2Vfd2FpdGluZ19mb3JfZWRpdG9yID0gMTsKIGludCBhZHZpY2VfZ3JhZnRfZmlsZV9kZXByZWNhdGVkID0gMTsKIGludCBhZHZpY2VfY2hlY2tvdXRfYW1iaWd1b3VzX3JlbW90ZV9icmFuY2hfbmFtZSA9IDE7CitpbnQgYWR2aWNlX3N1Ym1vZHVsZV9hbHRlcm5hdGVfZXJyb3Jfc3RyYXRlZ3lfZGllID0gMTsKK2ludCBhZHZpY2VfYWRkX2lnbm9yZWRfZmlsZSA9IDE7CitpbnQgYWR2aWNlX2FkZF9lbXB0eV9wYXRoc3BlYyA9IDE7CiAKIHN0YXRpYyBpbnQgYWR2aWNlX3VzZV9jb2xvciA9IC0xOwogc3RhdGljIGNoYXIgYWR2aWNlX2NvbG9yc1tdW0NPTE9SX01BWExFTl0gPSB7CkBAIC01NywyMCArNjQsMjQgQEAKIAljb25zdCBjaGFyICpuYW1lOwogCWludCAqcHJlZmVyZW5jZTsKIH0gYWR2aWNlX2NvbmZpZ1tdID0geworCXsgImZldGNoU2hvd0ZvcmNlZFVwZGF0ZXMiLCAmYWR2aWNlX2ZldGNoX3Nob3dfZm9yY2VkX3VwZGF0ZXMgfSwKIAl7ICJwdXNoVXBkYXRlUmVqZWN0ZWQiLCAmYWR2aWNlX3B1c2hfdXBkYXRlX3JlamVjdGVkIH0sCiAJeyAicHVzaE5vbkZGQ3VycmVudCIsICZhZHZpY2VfcHVzaF9ub25fZmZfY3VycmVudCB9LAogCXsgInB1c2hOb25GRk1hdGNoaW5nIiwgJmFkdmljZV9wdXNoX25vbl9mZl9tYXRjaGluZyB9LAogCXsgInB1c2hBbHJlYWR5RXhpc3RzIiwgJmFkdmljZV9wdXNoX2FscmVhZHlfZXhpc3RzIH0sCiAJeyAicHVzaEZldGNoRmlyc3QiLCAmYWR2aWNlX3B1c2hfZmV0Y2hfZmlyc3QgfSwKIAl7ICJwdXNoTmVlZHNGb3JjZSIsICZhZHZpY2VfcHVzaF9uZWVkc19mb3JjZSB9LAorCXsgInB1c2hVbnF1YWxpZmllZFJlZk5hbWUiLCAmYWR2aWNlX3B1c2hfdW5xdWFsaWZpZWRfcmVmX25hbWUgfSwKIAl7ICJzdGF0dXNIaW50cyIsICZhZHZpY2Vfc3RhdHVzX2hpbnRzIH0sCiAJeyAic3RhdHVzVW9wdGlvbiIsICZhZHZpY2Vfc3RhdHVzX3Vfb3B0aW9uIH0sCisJeyAic3RhdHVzQWhlYWRCZWhpbmRXYXJuaW5nIiwgJmFkdmljZV9zdGF0dXNfYWhlYWRfYmVoaW5kX3dhcm5pbmcgfSwKIAl7ICJjb21taXRCZWZvcmVNZXJnZSIsICZhZHZpY2VfY29tbWl0X2JlZm9yZV9tZXJnZSB9LAogCXsgInJlc2V0UXVpZXQiLCAmYWR2aWNlX3Jlc2V0X3F1aWV0X3dhcm5pbmcgfSwKIAl7ICJyZXNvbHZlQ29uZmxpY3QiLCAmYWR2aWNlX3Jlc29sdmVfY29uZmxpY3QgfSwKKwl7ICJzZXF1ZW5jZXJJblVzZSIsICZhZHZpY2Vfc2VxdWVuY2VyX2luX3VzZSB9LAogCXsgImltcGxpY2l0SWRlbnRpdHkiLCAmYWR2aWNlX2ltcGxpY2l0X2lkZW50aXR5IH0sCiAJeyAiZGV0YWNoZWRIZWFkIiwgJmFkdmljZV9kZXRhY2hlZF9oZWFkIH0sCi0JeyAic2V0dXBTdHJlYW1GYWlsdXJlIiwgJmFkdmljZV9zZXRfdXBzdHJlYW1fZmFpbHVyZSB9LAorCXsgInNldFVwc3RyZWFtRmFpbHVyZSIsICZhZHZpY2Vfc2V0X3Vwc3RyZWFtX2ZhaWx1cmUgfSwKIAl7ICJvYmplY3ROYW1lV2FybmluZyIsICZhZHZpY2Vfb2JqZWN0X25hbWVfd2FybmluZyB9LAogCXsgImFtV29ya0RpciIsICZhZHZpY2VfYW13b3JrZGlyIH0sCiAJeyAicm1IaW50cyIsICZhZHZpY2Vfcm1faGludHMgfSwKQEAgLTc5LDIwICs5MCw2NiBAQAogCXsgIndhaXRpbmdGb3JFZGl0b3IiLCAmYWR2aWNlX3dhaXRpbmdfZm9yX2VkaXRvciB9LAogCXsgImdyYWZ0RmlsZURlcHJlY2F0ZWQiLCAmYWR2aWNlX2dyYWZ0X2ZpbGVfZGVwcmVjYXRlZCB9LAogCXsgImNoZWNrb3V0QW1iaWd1b3VzUmVtb3RlQnJhbmNoTmFtZSIsICZhZHZpY2VfY2hlY2tvdXRfYW1iaWd1b3VzX3JlbW90ZV9icmFuY2hfbmFtZSB9LAorCXsgInN1Ym1vZHVsZUFsdGVybmF0ZUVycm9yU3RyYXRlZ3lEaWUiLCAmYWR2aWNlX3N1Ym1vZHVsZV9hbHRlcm5hdGVfZXJyb3Jfc3RyYXRlZ3lfZGllIH0sCisJeyAiYWRkSWdub3JlZEZpbGUiLCAmYWR2aWNlX2FkZF9pZ25vcmVkX2ZpbGUgfSwKKwl7ICJhZGRFbXB0eVBhdGhzcGVjIiwgJmFkdmljZV9hZGRfZW1wdHlfcGF0aHNwZWMgfSwKIAogCS8qIG1ha2UgdGhpcyBhbiBhbGlhcyBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSAqLwogCXsgInB1c2hOb25GYXN0Rm9yd2FyZCIsICZhZHZpY2VfcHVzaF91cGRhdGVfcmVqZWN0ZWQgfQogfTsKIAotdm9pZCBhZHZpc2UoY29uc3QgY2hhciAqYWR2aWNlLCAuLi4pCitzdGF0aWMgc3RydWN0IHsKKwljb25zdCBjaGFyICprZXk7CisJaW50IGVuYWJsZWQ7Cit9IGFkdmljZV9zZXR0aW5nW10gPSB7CisJW0FEVklDRV9BRERfRU1CRURERURfUkVQT10JCQk9IHsgImFkZEVtYmVkZGVkUmVwbyIsIDEgfSwKKwlbQURWSUNFX0FNX1dPUktfRElSXSAJCQkJPSB7ICJhbVdvcmtEaXIiLCAxIH0sCisJW0FEVklDRV9DSEVDS09VVF9BTUJJR1VPVVNfUkVNT1RFX0JSQU5DSF9OQU1FXSAJPSB7ICJjaGVja291dEFtYmlndW91c1JlbW90ZUJyYW5jaE5hbWUiLCAxIH0sCisJW0FEVklDRV9DT01NSVRfQkVGT1JFX01FUkdFXQkJCT0geyAiY29tbWl0QmVmb3JlTWVyZ2UiLCAxIH0sCisJW0FEVklDRV9ERVRBQ0hFRF9IRUFEXQkJCQk9IHsgImRldGFjaGVkSGVhZCIsIDEgfSwKKwlbQURWSUNFX0ZFVENIX1NIT1dfRk9SQ0VEX1VQREFURVNdCQk9IHsgImZldGNoU2hvd0ZvcmNlZFVwZGF0ZXMiLCAxIH0sCisJW0FEVklDRV9HUkFGVF9GSUxFX0RFUFJFQ0FURURdCQkJPSB7ICJncmFmdEZpbGVEZXByZWNhdGVkIiwgMSB9LAorCVtBRFZJQ0VfSUdOT1JFRF9IT09LXQkJCQk9IHsgImlnbm9yZWRIb29rIiwgMSB9LAorCVtBRFZJQ0VfSU1QTElDSVRfSURFTlRJVFldCQkJPSB7ICJpbXBsaWNpdElkZW50aXR5IiwgMSB9LAorCVtBRFZJQ0VfTkVTVEVEX1RBR10JCQkJPSB7ICJuZXN0ZWRUYWciLCAxIH0sCisJW0FEVklDRV9PQkpFQ1RfTkFNRV9XQVJOSU5HXQkJCT0geyAib2JqZWN0TmFtZVdhcm5pbmciLCAxIH0sCisJW0FEVklDRV9QVVNIX0FMUkVBRFlfRVhJU1RTXQkJCT0geyAicHVzaEFscmVhZHlFeGlzdHMiLCAxIH0sCisJW0FEVklDRV9QVVNIX0ZFVENIX0ZJUlNUXQkJCT0geyAicHVzaEZldGNoRmlyc3QiLCAxIH0sCisJW0FEVklDRV9QVVNIX05FRURTX0ZPUkNFXQkJCT0geyAicHVzaE5lZWRzRm9yY2UiLCAxIH0sCisKKwkvKiBtYWtlIHRoaXMgYW4gYWxpYXMgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgKi8KKwlbQURWSUNFX1BVU0hfVVBEQVRFX1JFSkVDVEVEX0FMSUFTXQkJPSB7ICJwdXNoTm9uRmFzdEZvcndhcmQiLCAxIH0sCisKKwlbQURWSUNFX1BVU0hfTk9OX0ZGX0NVUlJFTlRdCQkJPSB7ICJwdXNoTm9uRkZDdXJyZW50IiwgMSB9LAorCVtBRFZJQ0VfUFVTSF9OT05fRkZfTUFUQ0hJTkddCQkJPSB7ICJwdXNoTm9uRkZNYXRjaGluZyIsIDEgfSwKKwlbQURWSUNFX1BVU0hfVU5RVUFMSUZJRURfUkVGX05BTUVdCQk9IHsgInB1c2hVbnF1YWxpZmllZFJlZk5hbWUiLCAxIH0sCisJW0FEVklDRV9QVVNIX1VQREFURV9SRUpFQ1RFRF0JCQk9IHsgInB1c2hVcGRhdGVSZWplY3RlZCIsIDEgfSwKKwlbQURWSUNFX1JFU0VUX1FVSUVUX1dBUk5JTkddCQkJPSB7ICJyZXNldFF1aWV0IiwgMSB9LAorCVtBRFZJQ0VfUkVTT0xWRV9DT05GTElDVF0JCQk9IHsgInJlc29sdmVDb25mbGljdCIsIDEgfSwKKwlbQURWSUNFX1JNX0hJTlRTXQkJCQk9IHsgInJtSGludHMiLCAxIH0sCisJW0FEVklDRV9TRVFVRU5DRVJfSU5fVVNFXQkJCT0geyAic2VxdWVuY2VySW5Vc2UiLCAxIH0sCisJW0FEVklDRV9TRVRfVVBTVFJFQU1fRkFJTFVSRV0JCQk9IHsgInNldFVwc3RyZWFtRmFpbHVyZSIsIDEgfSwKKwlbQURWSUNFX1NUQVRVU19BSEVBRF9CRUhJTkRfV0FSTklOR10JCT0geyAic3RhdHVzQWhlYWRCZWhpbmRXYXJuaW5nIiwgMSB9LAorCVtBRFZJQ0VfU1RBVFVTX0hJTlRTXQkJCQk9IHsgInN0YXR1c0hpbnRzIiwgMSB9LAorCVtBRFZJQ0VfU1RBVFVTX1VfT1BUSU9OXQkJCT0geyAic3RhdHVzVW9wdGlvbiIsIDEgfSwKKwlbQURWSUNFX1NVQk1PRFVMRV9BTFRFUk5BVEVfRVJST1JfU1RSQVRFR1lfRElFXSA9IHsgInN1Ym1vZHVsZUFsdGVybmF0ZUVycm9yU3RyYXRlZ3lEaWUiLCAxIH0sCisJW0FEVklDRV9XQUlUSU5HX0ZPUl9FRElUT1JdCQkJPSB7ICJ3YWl0aW5nRm9yRWRpdG9yIiwgMSB9LAorfTsKKworc3RhdGljIGNvbnN0IGNoYXIgdHVybl9vZmZfaW5zdHJ1Y3Rpb25zW10gPQorTl8oIlxuIgorICAgIkRpc2FibGUgdGhpcyBtZXNzYWdlIHdpdGggXCJnaXQgY29uZmlnIGFkdmljZS4lcyBmYWxzZVwiIik7CisKK3N0YXRpYyB2b2lkIHZhZHZpc2UoY29uc3QgY2hhciAqYWR2aWNlLCBpbnQgZGlzcGxheV9pbnN0cnVjdGlvbnMsCisJCSAgICBjb25zdCBjaGFyICprZXksIHZhX2xpc3QgcGFyYW1zKQogewogCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7Ci0JdmFfbGlzdCBwYXJhbXM7CiAJY29uc3QgY2hhciAqY3AsICpucDsKIAotCXZhX3N0YXJ0KHBhcmFtcywgYWR2aWNlKTsKIAlzdHJidWZfdmFkZGYoJmJ1ZiwgYWR2aWNlLCBwYXJhbXMpOwotCXZhX2VuZChwYXJhbXMpOworCisJaWYgKGRpc3BsYXlfaW5zdHJ1Y3Rpb25zKQorCQlzdHJidWZfYWRkZigmYnVmLCB0dXJuX29mZl9pbnN0cnVjdGlvbnMsIGtleSk7CiAKIAlmb3IgKGNwID0gYnVmLmJ1ZjsgKmNwOyBjcCA9IG5wKSB7CiAJCW5wID0gc3RyY2hybnVsKGNwLCAnXG4nKTsKQEAgLTEwNiw2ICsxNjMsMzcgQEAKIAlzdHJidWZfcmVsZWFzZSgmYnVmKTsKIH0KIAordm9pZCBhZHZpc2UoY29uc3QgY2hhciAqYWR2aWNlLCAuLi4pCit7CisJdmFfbGlzdCBwYXJhbXM7CisJdmFfc3RhcnQocGFyYW1zLCBhZHZpY2UpOworCXZhZHZpc2UoYWR2aWNlLCAwLCAiIiwgcGFyYW1zKTsKKwl2YV9lbmQocGFyYW1zKTsKK30KKworaW50IGFkdmljZV9lbmFibGVkKGVudW0gYWR2aWNlX3R5cGUgdHlwZSkKK3sKKwlzd2l0Y2godHlwZSkgeworCWNhc2UgQURWSUNFX1BVU0hfVVBEQVRFX1JFSkVDVEVEOgorCQlyZXR1cm4gYWR2aWNlX3NldHRpbmdbQURWSUNFX1BVU0hfVVBEQVRFX1JFSkVDVEVEXS5lbmFibGVkICYmCisJCSAgICAgICBhZHZpY2Vfc2V0dGluZ1tBRFZJQ0VfUFVTSF9VUERBVEVfUkVKRUNURURfQUxJQVNdLmVuYWJsZWQ7CisJZGVmYXVsdDoKKwkJcmV0dXJuIGFkdmljZV9zZXR0aW5nW3R5cGVdLmVuYWJsZWQ7CisJfQorfQorCit2b2lkIGFkdmlzZV9pZl9lbmFibGVkKGVudW0gYWR2aWNlX3R5cGUgdHlwZSwgY29uc3QgY2hhciAqYWR2aWNlLCAuLi4pCit7CisJdmFfbGlzdCBwYXJhbXM7CisKKwlpZiAoIWFkdmljZV9lbmFibGVkKHR5cGUpKQorCQlyZXR1cm47CisKKwl2YV9zdGFydChwYXJhbXMsIGFkdmljZSk7CisJdmFkdmlzZShhZHZpY2UsIDEsIGFkdmljZV9zZXR0aW5nW3R5cGVdLmtleSwgcGFyYW1zKTsKKwl2YV9lbmQocGFyYW1zKTsKK30KKwogaW50IGdpdF9kZWZhdWx0X2FkdmljZV9jb25maWcoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSkKIHsKIAljb25zdCBjaGFyICprLCAqc2xvdF9uYW1lOwpAQCAtMTMyLDYgKzIyMCwxMyBAQAogCQlpZiAoc3RyY2FzZWNtcChrLCBhZHZpY2VfY29uZmlnW2ldLm5hbWUpKQogCQkJY29udGludWU7CiAJCSphZHZpY2VfY29uZmlnW2ldLnByZWZlcmVuY2UgPSBnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSk7CisJCWJyZWFrOworCX0KKworCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKGFkdmljZV9zZXR0aW5nKTsgaSsrKSB7CisJCWlmIChzdHJjYXNlY21wKGssIGFkdmljZV9zZXR0aW5nW2ldLmtleSkpCisJCQljb250aW51ZTsKKwkJYWR2aWNlX3NldHRpbmdbaV0uZW5hYmxlZCA9IGdpdF9jb25maWdfYm9vbCh2YXIsIHZhbHVlKTsKIAkJcmV0dXJuIDA7CiAJfQogCkBAIC0xNDIsOCArMjM3LDggQEAKIHsKIAlpbnQgaTsKIAotCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKGFkdmljZV9jb25maWcpOyBpKyspCi0JCWxpc3RfY29uZmlnX2l0ZW0obGlzdCwgcHJlZml4LCBhZHZpY2VfY29uZmlnW2ldLm5hbWUpOworCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKGFkdmljZV9zZXR0aW5nKTsgaSsrKQorCQlsaXN0X2NvbmZpZ19pdGVtKGxpc3QsIHByZWZpeCwgYWR2aWNlX3NldHRpbmdbaV0ua2V5KTsKIH0KIAogaW50IGVycm9yX3Jlc29sdmVfY29uZmxpY3QoY29uc3QgY2hhciAqbWUpCkBAIC0xODksMTMgKzI4NCwyMiBAQAogdm9pZCBkZXRhY2hfYWR2aWNlKGNvbnN0IGNoYXIgKm5ld19uYW1lKQogewogCWNvbnN0IGNoYXIgKmZtdCA9Ci0JXygiTm90ZTogY2hlY2tpbmcgb3V0ICclcycuXG5cbiIKKwlfKCJOb3RlOiBzd2l0Y2hpbmcgdG8gJyVzJy5cbiIKKwkiXG4iCiAJIllvdSBhcmUgaW4gJ2RldGFjaGVkIEhFQUQnIHN0YXRlLiBZb3UgY2FuIGxvb2sgYXJvdW5kLCBtYWtlIGV4cGVyaW1lbnRhbFxuIgogCSJjaGFuZ2VzIGFuZCBjb21taXQgdGhlbSwgYW5kIHlvdSBjYW4gZGlzY2FyZCBhbnkgY29tbWl0cyB5b3UgbWFrZSBpbiB0aGlzXG4iCi0JInN0YXRlIHdpdGhvdXQgaW1wYWN0aW5nIGFueSBicmFuY2hlcyBieSBwZXJmb3JtaW5nIGFub3RoZXIgY2hlY2tvdXQuXG5cbiIKKwkic3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHN3aXRjaGluZyBiYWNrIHRvIGEgYnJhbmNoLlxuIgorCSJcbiIKIAkiSWYgeW91IHdhbnQgdG8gY3JlYXRlIGEgbmV3IGJyYW5jaCB0byByZXRhaW4gY29tbWl0cyB5b3UgY3JlYXRlLCB5b3UgbWF5XG4iCi0JImRvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1iIHdpdGggdGhlIGNoZWNrb3V0IGNvbW1hbmQgYWdhaW4uIEV4YW1wbGU6XG5cbiIKLQkiICBnaXQgY2hlY2tvdXQgLWIgPG5ldy1icmFuY2gtbmFtZT5cblxuIik7CisJImRvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1jIHdpdGggdGhlIHN3aXRjaCBjb21tYW5kLiBFeGFtcGxlOlxuIgorCSJcbiIKKwkiICBnaXQgc3dpdGNoIC1jIDxuZXctYnJhbmNoLW5hbWU+XG4iCisJIlxuIgorCSJPciB1bmRvIHRoaXMgb3BlcmF0aW9uIHdpdGg6XG4iCisJIlxuIgorCSIgIGdpdCBzd2l0Y2ggLVxuIgorCSJcbiIKKwkiVHVybiBvZmYgdGhpcyBhZHZpY2UgYnkgc2V0dGluZyBjb25maWcgdmFyaWFibGUgYWR2aWNlLmRldGFjaGVkSGVhZCB0byBmYWxzZVxuXG4iKTsKIAogCWZwcmludGYoc3RkZXJyLCBmbXQsIG5ld19uYW1lKTsKIH0KZGlmZiAtLWdpdCBhL2FkdmljZS5oIGIvYWR2aWNlLmgKaW5kZXggNjk2YmYwZS4uMTZmMmMxMSAxMDA2NDQKLS0tIGEvYWR2aWNlLmgKKysrIGIvYWR2aWNlLmgKQEAgLTMsMTcgKzMsMjEgQEAKIAogI2luY2x1ZGUgImdpdC1jb21wYXQtdXRpbC5oIgogCitleHRlcm4gaW50IGFkdmljZV9mZXRjaF9zaG93X2ZvcmNlZF91cGRhdGVzOwogZXh0ZXJuIGludCBhZHZpY2VfcHVzaF91cGRhdGVfcmVqZWN0ZWQ7CiBleHRlcm4gaW50IGFkdmljZV9wdXNoX25vbl9mZl9jdXJyZW50OwogZXh0ZXJuIGludCBhZHZpY2VfcHVzaF9ub25fZmZfbWF0Y2hpbmc7CiBleHRlcm4gaW50IGFkdmljZV9wdXNoX2FscmVhZHlfZXhpc3RzOwogZXh0ZXJuIGludCBhZHZpY2VfcHVzaF9mZXRjaF9maXJzdDsKIGV4dGVybiBpbnQgYWR2aWNlX3B1c2hfbmVlZHNfZm9yY2U7CitleHRlcm4gaW50IGFkdmljZV9wdXNoX3VucXVhbGlmaWVkX3JlZl9uYW1lOwogZXh0ZXJuIGludCBhZHZpY2Vfc3RhdHVzX2hpbnRzOwogZXh0ZXJuIGludCBhZHZpY2Vfc3RhdHVzX3Vfb3B0aW9uOworZXh0ZXJuIGludCBhZHZpY2Vfc3RhdHVzX2FoZWFkX2JlaGluZF93YXJuaW5nOwogZXh0ZXJuIGludCBhZHZpY2VfY29tbWl0X2JlZm9yZV9tZXJnZTsKIGV4dGVybiBpbnQgYWR2aWNlX3Jlc2V0X3F1aWV0X3dhcm5pbmc7CiBleHRlcm4gaW50IGFkdmljZV9yZXNvbHZlX2NvbmZsaWN0OworZXh0ZXJuIGludCBhZHZpY2Vfc2VxdWVuY2VyX2luX3VzZTsKIGV4dGVybiBpbnQgYWR2aWNlX2ltcGxpY2l0X2lkZW50aXR5OwogZXh0ZXJuIGludCBhZHZpY2VfZGV0YWNoZWRfaGVhZDsKIGV4dGVybiBpbnQgYWR2aWNlX3NldF91cHN0cmVhbV9mYWlsdXJlOwpAQCAtMjUsMTIgKzI5LDY2IEBACiBleHRlcm4gaW50IGFkdmljZV93YWl0aW5nX2Zvcl9lZGl0b3I7CiBleHRlcm4gaW50IGFkdmljZV9ncmFmdF9maWxlX2RlcHJlY2F0ZWQ7CiBleHRlcm4gaW50IGFkdmljZV9jaGVja291dF9hbWJpZ3VvdXNfcmVtb3RlX2JyYW5jaF9uYW1lOworZXh0ZXJuIGludCBhZHZpY2Vfc3VibW9kdWxlX2FsdGVybmF0ZV9lcnJvcl9zdHJhdGVneV9kaWU7CitleHRlcm4gaW50IGFkdmljZV9hZGRfaWdub3JlZF9maWxlOworZXh0ZXJuIGludCBhZHZpY2VfYWRkX2VtcHR5X3BhdGhzcGVjOworCisvKgorICogVG8gYWRkIGEgbmV3IGFkdmljZSwgeW91IG5lZWQgdG86CisgKiBEZWZpbmUgYSBuZXcgYWR2aWNlX3R5cGUuCisgKiBBZGQgYSBuZXcgZW50cnkgdG8gYWR2aWNlX3NldHRpbmcgYXJyYXkuCisgKiBBZGQgdGhlIG5ldyBjb25maWcgdmFyaWFibGUgdG8gRG9jdW1lbnRhdGlvbi9jb25maWcvYWR2aWNlLnR4dC4KKyAqIENhbGwgYWR2aXNlX2lmX2VuYWJsZWQgdG8gcHJpbnQgeW91ciBhZHZpY2UuCisgKi8KKyBlbnVtIGFkdmljZV90eXBlIHsKKwlBRFZJQ0VfQUREX0VNQkVEREVEX1JFUE8sCisJQURWSUNFX0FNX1dPUktfRElSLAorCUFEVklDRV9DSEVDS09VVF9BTUJJR1VPVVNfUkVNT1RFX0JSQU5DSF9OQU1FLAorCUFEVklDRV9DT01NSVRfQkVGT1JFX01FUkdFLAorCUFEVklDRV9ERVRBQ0hFRF9IRUFELAorCUFEVklDRV9GRVRDSF9TSE9XX0ZPUkNFRF9VUERBVEVTLAorCUFEVklDRV9HUkFGVF9GSUxFX0RFUFJFQ0FURUQsCisJQURWSUNFX0lHTk9SRURfSE9PSywKKwlBRFZJQ0VfSU1QTElDSVRfSURFTlRJVFksCisJQURWSUNFX05FU1RFRF9UQUcsCisJQURWSUNFX09CSkVDVF9OQU1FX1dBUk5JTkcsCisJQURWSUNFX1BVU0hfQUxSRUFEWV9FWElTVFMsCisJQURWSUNFX1BVU0hfRkVUQ0hfRklSU1QsCisJQURWSUNFX1BVU0hfTkVFRFNfRk9SQ0UsCisJQURWSUNFX1BVU0hfTk9OX0ZGX0NVUlJFTlQsCisJQURWSUNFX1BVU0hfTk9OX0ZGX01BVENISU5HLAorCUFEVklDRV9QVVNIX1VOUVVBTElGSUVEX1JFRl9OQU1FLAorCUFEVklDRV9QVVNIX1VQREFURV9SRUpFQ1RFRF9BTElBUywKKwlBRFZJQ0VfUFVTSF9VUERBVEVfUkVKRUNURUQsCisJQURWSUNFX1JFU0VUX1FVSUVUX1dBUk5JTkcsCisJQURWSUNFX1JFU09MVkVfQ09ORkxJQ1QsCisJQURWSUNFX1JNX0hJTlRTLAorCUFEVklDRV9TRVFVRU5DRVJfSU5fVVNFLAorCUFEVklDRV9TRVRfVVBTVFJFQU1fRkFJTFVSRSwKKwlBRFZJQ0VfU1RBVFVTX0FIRUFEX0JFSElORF9XQVJOSU5HLAorCUFEVklDRV9TVEFUVVNfSElOVFMsCisJQURWSUNFX1NUQVRVU19VX09QVElPTiwKKwlBRFZJQ0VfU1VCTU9EVUxFX0FMVEVSTkFURV9FUlJPUl9TVFJBVEVHWV9ESUUsCisJQURWSUNFX1dBSVRJTkdfRk9SX0VESVRPUiwKK307CiAKIGludCBnaXRfZGVmYXVsdF9hZHZpY2VfY29uZmlnKGNvbnN0IGNoYXIgKnZhciwgY29uc3QgY2hhciAqdmFsdWUpOwogX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDEsIDIpKSkKIHZvaWQgYWR2aXNlKGNvbnN0IGNoYXIgKmFkdmljZSwgLi4uKTsKKworLyoqCisgKiBDaGVja3MgaWYgYWR2aWNlIHR5cGUgaXMgZW5hYmxlZCAoY2FuIGJlIHByaW50ZWQgdG8gdGhlIHVzZXIpLgorICogU2hvdWxkIGJlIGNhbGxlZCBiZWZvcmUgYWR2aXNlKCkuCisgKi8KK2ludCBhZHZpY2VfZW5hYmxlZChlbnVtIGFkdmljZV90eXBlIHR5cGUpOworCisvKioKKyAqIENoZWNrcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgYWR2aWNlIGJlZm9yZSBwcmludGluZy4KKyAqLwordm9pZCBhZHZpc2VfaWZfZW5hYmxlZChlbnVtIGFkdmljZV90eXBlIHR5cGUsIGNvbnN0IGNoYXIgKmFkdmljZSwgLi4uKTsKKwogaW50IGVycm9yX3Jlc29sdmVfY29uZmxpY3QoY29uc3QgY2hhciAqbWUpOwotZXh0ZXJuIHZvaWQgTk9SRVRVUk4gZGllX3Jlc29sdmVfY29uZmxpY3QoY29uc3QgY2hhciAqbWUpOwordm9pZCBOT1JFVFVSTiBkaWVfcmVzb2x2ZV9jb25mbGljdChjb25zdCBjaGFyICptZSk7CiB2b2lkIE5PUkVUVVJOIGRpZV9jb25jbHVkZV9tZXJnZSh2b2lkKTsKIHZvaWQgZGV0YWNoX2FkdmljZShjb25zdCBjaGFyICpuZXdfbmFtZSk7CiAKZGlmZiAtLWdpdCBhL2FsaWFzLmMgYi9hbGlhcy5jCmluZGV4IGE3ZTRlNTcuLmM0NzE1MzggMTAwNjQ0Ci0tLSBhL2FsaWFzLmMKKysrIGIvYWxpYXMuYwpAQCAtNDcsOCArNDcsOCBAQAogI2RlZmluZSBTUExJVF9DTURMSU5FX0JBRF9FTkRJTkcgMQogI2RlZmluZSBTUExJVF9DTURMSU5FX1VOQ0xPU0VEX1FVT1RFIDIKIHN0YXRpYyBjb25zdCBjaGFyICpzcGxpdF9jbWRsaW5lX2Vycm9yc1tdID0gewotCSJjbWRsaW5lIGVuZHMgd2l0aCBcXCIsCi0JInVuY2xvc2VkIHF1b3RlIgorCU5fKCJjbWRsaW5lIGVuZHMgd2l0aCBcXCIpLAorCU5fKCJ1bmNsb3NlZCBxdW90ZSIpCiB9OwogCiBpbnQgc3BsaXRfY21kbGluZShjaGFyICpjbWRsaW5lLCBjb25zdCBjaGFyICoqKmFyZ3YpCmRpZmYgLS1naXQgYS9hbGxvYy5jIGIvYWxsb2MuYwppbmRleCBlN2FhODFiLi4xYzY0YzRkIDEwMDY0NAotLS0gYS9hbGxvYy5jCisrKyBiL2FsbG9jLmMKQEAgLTk5LDE4ICs5OSwyMyBAQAogCXJldHVybiBvYmo7CiB9CiAKLXVuc2lnbmVkIGludCBhbGxvY19jb21taXRfaW5kZXgoc3RydWN0IHJlcG9zaXRvcnkgKnIpCitzdGF0aWMgdW5zaWduZWQgaW50IGFsbG9jX2NvbW1pdF9pbmRleChzdHJ1Y3QgcmVwb3NpdG9yeSAqcikKIHsKIAlyZXR1cm4gci0+cGFyc2VkX29iamVjdHMtPmNvbW1pdF9jb3VudCsrOwogfQogCit2b2lkIGluaXRfY29tbWl0X25vZGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBjb21taXQgKmMpCit7CisJYy0+b2JqZWN0LnR5cGUgPSBPQkpfQ09NTUlUOworCWMtPmluZGV4ID0gYWxsb2NfY29tbWl0X2luZGV4KHIpOworCWMtPmdyYXBoX3BvcyA9IENPTU1JVF9OT1RfRlJPTV9HUkFQSDsKKwljLT5nZW5lcmF0aW9uID0gR0VORVJBVElPTl9OVU1CRVJfSU5GSU5JVFk7Cit9CisKIHZvaWQgKmFsbG9jX2NvbW1pdF9ub2RlKHN0cnVjdCByZXBvc2l0b3J5ICpyKQogewogCXN0cnVjdCBjb21taXQgKmMgPSBhbGxvY19ub2RlKHItPnBhcnNlZF9vYmplY3RzLT5jb21taXRfc3RhdGUsIHNpemVvZihzdHJ1Y3QgY29tbWl0KSk7Ci0JYy0+b2JqZWN0LnR5cGUgPSBPQkpfQ09NTUlUOwotCWMtPmluZGV4ID0gYWxsb2NfY29tbWl0X2luZGV4KHIpOwotCWMtPmdyYXBoX3BvcyA9IENPTU1JVF9OT1RfRlJPTV9HUkFQSDsKLQljLT5nZW5lcmF0aW9uID0gR0VORVJBVElPTl9OVU1CRVJfSU5GSU5JVFk7CisJaW5pdF9jb21taXRfbm9kZShyLCBjKTsKIAlyZXR1cm4gYzsKIH0KIApkaWZmIC0tZ2l0IGEvYWxsb2MuaCBiL2FsbG9jLmgKaW5kZXggYmEzNTZlZC4uZWQxMDcxYyAxMDA2NDQKLS0tIGEvYWxsb2MuaAorKysgYi9hbGxvYy5oCkBAIC05LDExICs5LDExIEBACiAKIHZvaWQgKmFsbG9jX2Jsb2Jfbm9kZShzdHJ1Y3QgcmVwb3NpdG9yeSAqcik7CiB2b2lkICphbGxvY190cmVlX25vZGUoc3RydWN0IHJlcG9zaXRvcnkgKnIpOwordm9pZCBpbml0X2NvbW1pdF9ub2RlKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgY29tbWl0ICpjKTsKIHZvaWQgKmFsbG9jX2NvbW1pdF9ub2RlKHN0cnVjdCByZXBvc2l0b3J5ICpyKTsKIHZvaWQgKmFsbG9jX3RhZ19ub2RlKHN0cnVjdCByZXBvc2l0b3J5ICpyKTsKIHZvaWQgKmFsbG9jX29iamVjdF9ub2RlKHN0cnVjdCByZXBvc2l0b3J5ICpyKTsKIHZvaWQgYWxsb2NfcmVwb3J0KHN0cnVjdCByZXBvc2l0b3J5ICpyKTsKLXVuc2lnbmVkIGludCBhbGxvY19jb21taXRfaW5kZXgoc3RydWN0IHJlcG9zaXRvcnkgKnIpOwogCiBzdHJ1Y3QgYWxsb2Nfc3RhdGUgKmFsbG9jYXRlX2FsbG9jX3N0YXRlKHZvaWQpOwogdm9pZCBjbGVhcl9hbGxvY19zdGF0ZShzdHJ1Y3QgYWxsb2Nfc3RhdGUgKnMpOwpkaWZmIC0tZ2l0IGEvYXBwbHkuYyBiL2FwcGx5LmMKaW5kZXggMDE3OTNkNi4uYmRjMDA4ZiAxMDA2NDQKLS0tIGEvYXBwbHkuYworKysgYi9hcHBseS5jCkBAIC0yMiwxMSArMjIsMTcgQEAKICNpbmNsdWRlICJyZXJlcmUuaCIKICNpbmNsdWRlICJhcHBseS5oIgogCitzdHJ1Y3QgZ2l0ZGlmZl9kYXRhIHsKKwlzdHJ1Y3Qgc3RyYnVmICpyb290OworCWludCBsaW5lbnI7CisJaW50IHBfdmFsdWU7Cit9OworCiBzdGF0aWMgdm9pZCBnaXRfYXBwbHlfY29uZmlnKHZvaWQpCiB7CiAJZ2l0X2NvbmZpZ19nZXRfc3RyaW5nX2NvbnN0KCJhcHBseS53aGl0ZXNwYWNlIiwgJmFwcGx5X2RlZmF1bHRfd2hpdGVzcGFjZSk7CiAJZ2l0X2NvbmZpZ19nZXRfc3RyaW5nX2NvbnN0KCJhcHBseS5pZ25vcmV3aGl0ZXNwYWNlIiwgJmFwcGx5X2RlZmF1bHRfaWdub3Jld2hpdGVzcGFjZSk7Ci0JZ2l0X2NvbmZpZyhnaXRfZGVmYXVsdF9jb25maWcsIE5VTEwpOworCWdpdF9jb25maWcoZ2l0X3htZXJnZV9jb25maWcsIE5VTEwpOwogfQogCiBzdGF0aWMgaW50IHBhcnNlX3doaXRlc3BhY2Vfb3B0aW9uKHN0cnVjdCBhcHBseV9zdGF0ZSAqc3RhdGUsIGNvbnN0IGNoYXIgKm9wdGlvbikKQEAgLTU2LDYgKzYyLDEwIEBACiAJCXN0YXRlLT53c19lcnJvcl9hY3Rpb24gPSBjb3JyZWN0X3dzX2Vycm9yOwogCQlyZXR1cm4gMDsKIAl9CisJLyoKKwkgKiBQbGVhc2UgdXBkYXRlICRfX2dpdF93aGl0ZXNwYWNlbGlzdCBpbiBnaXQtY29tcGxldGlvbi5iYXNoCisJICogd2hlbiB5b3UgYWRkIG5ldyBvcHRpb25zLgorCSAqLwogCXJldHVybiBlcnJvcihfKCJ1bnJlY29nbml6ZWQgd2hpdGVzcGFjZSBvcHRpb24gJyVzJyIpLCBvcHRpb24pOwogfQogCkBAIC0xOTcsNDAgKzIwNyw2IEBACiAjZGVmaW5lIEJJTkFSWV9ERUxUQV9ERUZMQVRFRAkxCiAjZGVmaW5lIEJJTkFSWV9MSVRFUkFMX0RFRkxBVEVEIDIKIAotLyoKLSAqIFRoaXMgcmVwcmVzZW50cyBhICJwYXRjaCIgdG8gYSBmaWxlLCBib3RoIG1ldGFpbmZvIGNoYW5nZXMKLSAqIHN1Y2ggYXMgY3JlYXRpb24vZGVsZXRpb24sIGZpbGVtb2RlIGFuZCBjb250ZW50IGNoYW5nZXMgcmVwcmVzZW50ZWQKLSAqIGFzIGEgc2VyaWVzIG9mIGZyYWdtZW50cy4KLSAqLwotc3RydWN0IHBhdGNoIHsKLQljaGFyICpuZXdfbmFtZSwgKm9sZF9uYW1lLCAqZGVmX25hbWU7Ci0JdW5zaWduZWQgaW50IG9sZF9tb2RlLCBuZXdfbW9kZTsKLQlpbnQgaXNfbmV3LCBpc19kZWxldGU7CS8qIC0xID0gdW5rbm93biwgMCA9IGZhbHNlLCAxID0gdHJ1ZSAqLwotCWludCByZWplY3RlZDsKLQl1bnNpZ25lZCB3c19ydWxlOwotCWludCBsaW5lc19hZGRlZCwgbGluZXNfZGVsZXRlZDsKLQlpbnQgc2NvcmU7Ci0JaW50IGV4dGVuc2lvbl9saW5lbnI7IC8qIGZpcnN0IGxpbmUgc3BlY2lmeWluZyBkZWxldGUvbmV3L3JlbmFtZS9jb3B5ICovCi0JdW5zaWduZWQgaW50IGlzX3RvcGxldmVsX3JlbGF0aXZlOjE7Ci0JdW5zaWduZWQgaW50IGluYWNjdXJhdGVfZW9mOjE7Ci0JdW5zaWduZWQgaW50IGlzX2JpbmFyeToxOwotCXVuc2lnbmVkIGludCBpc19jb3B5OjE7Ci0JdW5zaWduZWQgaW50IGlzX3JlbmFtZToxOwotCXVuc2lnbmVkIGludCByZWNvdW50OjE7Ci0JdW5zaWduZWQgaW50IGNvbmZsaWN0ZWRfdGhyZWV3YXk6MTsKLQl1bnNpZ25lZCBpbnQgZGlyZWN0X3RvX3RocmVld2F5OjE7Ci0JdW5zaWduZWQgaW50IGNybGZfaW5fb2xkOjE7Ci0Jc3RydWN0IGZyYWdtZW50ICpmcmFnbWVudHM7Ci0JY2hhciAqcmVzdWx0OwotCXNpemVfdCByZXN1bHRzaXplOwotCWNoYXIgb2xkX29pZF9wcmVmaXhbR0lUX01BWF9IRVhTWiArIDFdOwotCWNoYXIgbmV3X29pZF9wcmVmaXhbR0lUX01BWF9IRVhTWiArIDFdOwotCXN0cnVjdCBwYXRjaCAqbmV4dDsKLQotCS8qIHRocmVlLXdheSBmYWxsYmFjayByZXN1bHQgKi8KLQlzdHJ1Y3Qgb2JqZWN0X2lkIHRocmVld2F5X3N0YWdlWzNdOwotfTsKLQogc3RhdGljIHZvaWQgZnJlZV9mcmFnbWVudF9saXN0KHN0cnVjdCBmcmFnbWVudCAqbGlzdCkKIHsKIAl3aGlsZSAobGlzdCkgewpAQCAtNDY1LDkgKzQ0MSw4IEBACiAJcmV0dXJuIG5hbWU7CiB9CiAKLXN0YXRpYyBjaGFyICpmaW5kX25hbWVfZ251KHN0cnVjdCBhcHBseV9zdGF0ZSAqc3RhdGUsCitzdGF0aWMgY2hhciAqZmluZF9uYW1lX2dudShzdHJ1Y3Qgc3RyYnVmICpyb290LAogCQkJICAgY29uc3QgY2hhciAqbGluZSwKLQkJCSAgIGNvbnN0IGNoYXIgKmRlZiwKIAkJCSAgIGludCBwX3ZhbHVlKQogewogCXN0cnVjdCBzdHJidWYgbmFtZSA9IFNUUkJVRl9JTklUOwpAQCAtNDc1LDcgKzQ1MCw3IEBACiAKIAkvKgogCSAqIFByb3Bvc2VkICJuZXctc3R5bGUiIEdOVSBwYXRjaC9kaWZmIGZvcm1hdDsgc2VlCi0JICogaHR0cDovL21hcmMuaW5mby8/bD1naXQmbT0xMTI5MjczMTY0MDg2OTAmdz0yCisJICogaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvZ2l0Lzd2bGwwd3ZiMmEuZnNmQGFzc2lnbmVkLWJ5LWRoY3AuY294Lm5ldC8KIAkgKi8KIAlpZiAodW5xdW90ZV9jX3N0eWxlKCZuYW1lLCBsaW5lLCBOVUxMKSkgewogCQlzdHJidWZfcmVsZWFzZSgmbmFtZSk7CkBAIC00OTIsOCArNDY3LDggQEAKIAl9CiAKIAlzdHJidWZfcmVtb3ZlKCZuYW1lLCAwLCBjcCAtIG5hbWUuYnVmKTsKLQlpZiAoc3RhdGUtPnJvb3QubGVuKQotCQlzdHJidWZfaW5zZXJ0KCZuYW1lLCAwLCBzdGF0ZS0+cm9vdC5idWYsIHN0YXRlLT5yb290Lmxlbik7CisJaWYgKHJvb3QtPmxlbikKKwkJc3RyYnVmX2luc2VydCgmbmFtZSwgMCwgcm9vdC0+YnVmLCByb290LT5sZW4pOwogCXJldHVybiBzcXVhc2hfc2xhc2goc3RyYnVmX2RldGFjaCgmbmFtZSwgTlVMTCkpOwogfQogCkBAIC02NTYsNyArNjMxLDcgQEAKIAlyZXR1cm4gbGluZSArIGxlbiAtIGVuZDsKIH0KIAotc3RhdGljIGNoYXIgKmZpbmRfbmFtZV9jb21tb24oc3RydWN0IGFwcGx5X3N0YXRlICpzdGF0ZSwKK3N0YXRpYyBjaGFyICpmaW5kX25hbWVfY29tbW9uKHN0cnVjdCBzdHJidWYgKnJvb3QsCiAJCQkgICAgICBjb25zdCBjaGFyICpsaW5lLAogCQkJICAgICAgY29uc3QgY2hhciAqZGVmLAogCQkJICAgICAgaW50IHBfdmFsdWUsCkBAIC02OTksMzAgKzY3NCwzMCBAQAogCQkJcmV0dXJuIHNxdWFzaF9zbGFzaCh4c3RyZHVwKGRlZikpOwogCX0KIAotCWlmIChzdGF0ZS0+cm9vdC5sZW4pIHsKLQkJY2hhciAqcmV0ID0geHN0cmZtdCgiJXMlLipzIiwgc3RhdGUtPnJvb3QuYnVmLCBsZW4sIHN0YXJ0KTsKKwlpZiAocm9vdC0+bGVuKSB7CisJCWNoYXIgKnJldCA9IHhzdHJmbXQoIiVzJS4qcyIsIHJvb3QtPmJ1ZiwgbGVuLCBzdGFydCk7CiAJCXJldHVybiBzcXVhc2hfc2xhc2gocmV0KTsKIAl9CiAKIAlyZXR1cm4gc3F1YXNoX3NsYXNoKHhtZW1kdXB6KHN0YXJ0LCBsZW4pKTsKIH0KIAotc3RhdGljIGNoYXIgKmZpbmRfbmFtZShzdHJ1Y3QgYXBwbHlfc3RhdGUgKnN0YXRlLAorc3RhdGljIGNoYXIgKmZpbmRfbmFtZShzdHJ1Y3Qgc3RyYnVmICpyb290LAogCQkgICAgICAgY29uc3QgY2hhciAqbGluZSwKIAkJICAgICAgIGNoYXIgKmRlZiwKIAkJICAgICAgIGludCBwX3ZhbHVlLAogCQkgICAgICAgaW50IHRlcm1pbmF0ZSkKIHsKIAlpZiAoKmxpbmUgPT0gJyInKSB7Ci0JCWNoYXIgKm5hbWUgPSBmaW5kX25hbWVfZ251KHN0YXRlLCBsaW5lLCBkZWYsIHBfdmFsdWUpOworCQljaGFyICpuYW1lID0gZmluZF9uYW1lX2dudShyb290LCBsaW5lLCBwX3ZhbHVlKTsKIAkJaWYgKG5hbWUpCiAJCQlyZXR1cm4gbmFtZTsKIAl9CiAKLQlyZXR1cm4gZmluZF9uYW1lX2NvbW1vbihzdGF0ZSwgbGluZSwgZGVmLCBwX3ZhbHVlLCBOVUxMLCB0ZXJtaW5hdGUpOworCXJldHVybiBmaW5kX25hbWVfY29tbW9uKHJvb3QsIGxpbmUsIGRlZiwgcF92YWx1ZSwgTlVMTCwgdGVybWluYXRlKTsKIH0KIAotc3RhdGljIGNoYXIgKmZpbmRfbmFtZV90cmFkaXRpb25hbChzdHJ1Y3QgYXBwbHlfc3RhdGUgKnN0YXRlLAorc3RhdGljIGNoYXIgKmZpbmRfbmFtZV90cmFkaXRpb25hbChzdHJ1Y3Qgc3RyYnVmICpyb290LAogCQkJCSAgIGNvbnN0IGNoYXIgKmxpbmUsCiAJCQkJICAgY2hhciAqZGVmLAogCQkJCSAgIGludCBwX3ZhbHVlKQpAQCAtNzMxLDcgKzcwNiw3IEBACiAJc2l6ZV90IGRhdGVfbGVuOwogCiAJaWYgKCpsaW5lID09ICciJykgewotCQljaGFyICpuYW1lID0gZmluZF9uYW1lX2dudShzdGF0ZSwgbGluZSwgZGVmLCBwX3ZhbHVlKTsKKwkJY2hhciAqbmFtZSA9IGZpbmRfbmFtZV9nbnUocm9vdCwgbGluZSwgcF92YWx1ZSk7CiAJCWlmIChuYW1lKQogCQkJcmV0dXJuIG5hbWU7CiAJfQpAQCAtNzM5LDEwICs3MTQsMTAgQEAKIAlsZW4gPSBzdHJjaHJudWwobGluZSwgJ1xuJykgLSBsaW5lOwogCWRhdGVfbGVuID0gZGlmZl90aW1lc3RhbXBfbGVuKGxpbmUsIGxlbik7CiAJaWYgKCFkYXRlX2xlbikKLQkJcmV0dXJuIGZpbmRfbmFtZV9jb21tb24oc3RhdGUsIGxpbmUsIGRlZiwgcF92YWx1ZSwgTlVMTCwgVEVSTV9UQUIpOworCQlyZXR1cm4gZmluZF9uYW1lX2NvbW1vbihyb290LCBsaW5lLCBkZWYsIHBfdmFsdWUsIE5VTEwsIFRFUk1fVEFCKTsKIAlsZW4gLT0gZGF0ZV9sZW47CiAKLQlyZXR1cm4gZmluZF9uYW1lX2NvbW1vbihzdGF0ZSwgbGluZSwgZGVmLCBwX3ZhbHVlLCBsaW5lICsgbGVuLCAwKTsKKwlyZXR1cm4gZmluZF9uYW1lX2NvbW1vbihyb290LCBsaW5lLCBkZWYsIHBfdmFsdWUsIGxpbmUgKyBsZW4sIDApOwogfQogCiAvKgpAQCAtNzU2LDcgKzczMSw3IEBACiAKIAlpZiAoaXNfZGV2X251bGwobmFtZWxpbmUpKQogCQlyZXR1cm4gLTE7Ci0JbmFtZSA9IGZpbmRfbmFtZV90cmFkaXRpb25hbChzdGF0ZSwgbmFtZWxpbmUsIE5VTEwsIDApOworCW5hbWUgPSBmaW5kX25hbWVfdHJhZGl0aW9uYWwoJnN0YXRlLT5yb290LCBuYW1lbGluZSwgTlVMTCwgMCk7CiAJaWYgKCFuYW1lKQogCQlyZXR1cm4gLTE7CiAJY3AgPSBzdHJjaHIobmFtZSwgJy8nKTsKQEAgLTg4MCwxNyArODU1LDE3IEBACiAJaWYgKGlzX2Rldl9udWxsKGZpcnN0KSkgewogCQlwYXRjaC0+aXNfbmV3ID0gMTsKIAkJcGF0Y2gtPmlzX2RlbGV0ZSA9IDA7Ci0JCW5hbWUgPSBmaW5kX25hbWVfdHJhZGl0aW9uYWwoc3RhdGUsIHNlY29uZCwgTlVMTCwgc3RhdGUtPnBfdmFsdWUpOworCQluYW1lID0gZmluZF9uYW1lX3RyYWRpdGlvbmFsKCZzdGF0ZS0+cm9vdCwgc2Vjb25kLCBOVUxMLCBzdGF0ZS0+cF92YWx1ZSk7CiAJCXBhdGNoLT5uZXdfbmFtZSA9IG5hbWU7CiAJfSBlbHNlIGlmIChpc19kZXZfbnVsbChzZWNvbmQpKSB7CiAJCXBhdGNoLT5pc19uZXcgPSAwOwogCQlwYXRjaC0+aXNfZGVsZXRlID0gMTsKLQkJbmFtZSA9IGZpbmRfbmFtZV90cmFkaXRpb25hbChzdGF0ZSwgZmlyc3QsIE5VTEwsIHN0YXRlLT5wX3ZhbHVlKTsKKwkJbmFtZSA9IGZpbmRfbmFtZV90cmFkaXRpb25hbCgmc3RhdGUtPnJvb3QsIGZpcnN0LCBOVUxMLCBzdGF0ZS0+cF92YWx1ZSk7CiAJCXBhdGNoLT5vbGRfbmFtZSA9IG5hbWU7CiAJfSBlbHNlIHsKIAkJY2hhciAqZmlyc3RfbmFtZTsKLQkJZmlyc3RfbmFtZSA9IGZpbmRfbmFtZV90cmFkaXRpb25hbChzdGF0ZSwgZmlyc3QsIE5VTEwsIHN0YXRlLT5wX3ZhbHVlKTsKLQkJbmFtZSA9IGZpbmRfbmFtZV90cmFkaXRpb25hbChzdGF0ZSwgc2Vjb25kLCBmaXJzdF9uYW1lLCBzdGF0ZS0+cF92YWx1ZSk7CisJCWZpcnN0X25hbWUgPSBmaW5kX25hbWVfdHJhZGl0aW9uYWwoJnN0YXRlLT5yb290LCBmaXJzdCwgTlVMTCwgc3RhdGUtPnBfdmFsdWUpOworCQluYW1lID0gZmluZF9uYW1lX3RyYWRpdGlvbmFsKCZzdGF0ZS0+cm9vdCwgc2Vjb25kLCBmaXJzdF9uYW1lLCBzdGF0ZS0+cF92YWx1ZSk7CiAJCWZyZWUoZmlyc3RfbmFtZSk7CiAJCWlmIChoYXNfZXBvY2hfdGltZXN0YW1wKGZpcnN0KSkgewogCQkJcGF0Y2gtPmlzX25ldyA9IDE7CkBAIC05MTEsNyArODg2LDcgQEAKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBnaXRkaWZmX2hkcmVuZChzdHJ1Y3QgYXBwbHlfc3RhdGUgKnN0YXRlLAorc3RhdGljIGludCBnaXRkaWZmX2hkcmVuZChzdHJ1Y3QgZ2l0ZGlmZl9kYXRhICpzdGF0ZSwKIAkJCSAgY29uc3QgY2hhciAqbGluZSwKIAkJCSAgc3RydWN0IHBhdGNoICpwYXRjaCkKIHsKQEAgLTkzMCwxNCArOTA1LDE0IEBACiAjZGVmaW5lIERJRkZfT0xEX05BTUUgMAogI2RlZmluZSBESUZGX05FV19OQU1FIDEKIAotc3RhdGljIGludCBnaXRkaWZmX3ZlcmlmeV9uYW1lKHN0cnVjdCBhcHBseV9zdGF0ZSAqc3RhdGUsCitzdGF0aWMgaW50IGdpdGRpZmZfdmVyaWZ5X25hbWUoc3RydWN0IGdpdGRpZmZfZGF0YSAqc3RhdGUsCiAJCQkgICAgICAgY29uc3QgY2hhciAqbGluZSwKIAkJCSAgICAgICBpbnQgaXNudWxsLAogCQkJICAgICAgIGNoYXIgKipuYW1lLAogCQkJICAgICAgIGludCBzaWRlKQogewogCWlmICghKm5hbWUgJiYgIWlzbnVsbCkgewotCQkqbmFtZSA9IGZpbmRfbmFtZShzdGF0ZSwgbGluZSwgTlVMTCwgc3RhdGUtPnBfdmFsdWUsIFRFUk1fVEFCKTsKKwkJKm5hbWUgPSBmaW5kX25hbWUoc3RhdGUtPnJvb3QsIGxpbmUsIE5VTEwsIHN0YXRlLT5wX3ZhbHVlLCBURVJNX1RBQik7CiAJCXJldHVybiAwOwogCX0KIApAQCAtOTQ2LDcgKzkyMSw3IEBACiAJCWlmIChpc251bGwpCiAJCQlyZXR1cm4gZXJyb3IoXygiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwsIGdvdCAlcyBvbiBsaW5lICVkIiksCiAJCQkJICAgICAqbmFtZSwgc3RhdGUtPmxpbmVucik7Ci0JCWFub3RoZXIgPSBmaW5kX25hbWUoc3RhdGUsIGxpbmUsIE5VTEwsIHN0YXRlLT5wX3ZhbHVlLCBURVJNX1RBQik7CisJCWFub3RoZXIgPSBmaW5kX25hbWUoc3RhdGUtPnJvb3QsIGxpbmUsIE5VTEwsIHN0YXRlLT5wX3ZhbHVlLCBURVJNX1RBQik7CiAJCWlmICghYW5vdGhlciB8fCBzdHJjbXAoYW5vdGhlciwgKm5hbWUpKSB7CiAJCQlmcmVlKGFub3RoZXIpOwogCQkJcmV0dXJuIGVycm9yKChzaWRlID09IERJRkZfTkVXX05BTUUpID8KQEAgLTk2Miw3ICs5MzcsNyBAQAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGdpdGRpZmZfb2xkbmFtZShzdHJ1Y3QgYXBwbHlfc3RhdGUgKnN0YXRlLAorc3RhdGljIGludCBnaXRkaWZmX29sZG5hbWUoc3RydWN0IGdpdGRpZmZfZGF0YSAqc3RhdGUsCiAJCQkgICBjb25zdCBjaGFyICpsaW5lLAogCQkJICAgc3RydWN0IHBhdGNoICpwYXRjaCkKIHsKQEAgLTk3MSw3ICs5NDYsNyBAQAogCQkJCSAgIERJRkZfT0xEX05BTUUpOwogfQogCi1zdGF0aWMgaW50IGdpdGRpZmZfbmV3bmFtZShzdHJ1Y3QgYXBwbHlfc3RhdGUgKnN0YXRlLAorc3RhdGljIGludCBnaXRkaWZmX25ld25hbWUoc3RydWN0IGdpdGRpZmZfZGF0YSAqc3RhdGUsCiAJCQkgICBjb25zdCBjaGFyICpsaW5lLAogCQkJICAgc3RydWN0IHBhdGNoICpwYXRjaCkKIHsKQEAgLTk4OSwyMSArOTY0LDIxIEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgZ2l0ZGlmZl9vbGRtb2RlKHN0cnVjdCBhcHBseV9zdGF0ZSAqc3RhdGUsCitzdGF0aWMgaW50IGdpdGRpZmZfb2xkbW9kZShzdHJ1Y3QgZ2l0ZGlmZl9kYXRhICpzdGF0ZSwKIAkJCSAgIGNvbnN0IGNoYXIgKmxpbmUsCiAJCQkgICBzdHJ1Y3QgcGF0Y2ggKnBhdGNoKQogewogCXJldHVybiBwYXJzZV9tb2RlX2xpbmUobGluZSwgc3RhdGUtPmxpbmVuciwgJnBhdGNoLT5vbGRfbW9kZSk7CiB9CiAKLXN0YXRpYyBpbnQgZ2l0ZGlmZl9uZXdtb2RlKHN0cnVjdCBhcHBseV9zdGF0ZSAqc3RhdGUsCitzdGF0aWMgaW50IGdpdGRpZmZfbmV3bW9kZShzdHJ1Y3QgZ2l0ZGlmZl9kYXRhICpzdGF0ZSwKIAkJCSAgIGNvbnN0IGNoYXIgKmxpbmUsCiAJCQkgICBzdHJ1Y3QgcGF0Y2ggKnBhdGNoKQogewogCXJldHVybiBwYXJzZV9tb2RlX2xpbmUobGluZSwgc3RhdGUtPmxpbmVuciwgJnBhdGNoLT5uZXdfbW9kZSk7CiB9CiAKLXN0YXRpYyBpbnQgZ2l0ZGlmZl9kZWxldGUoc3RydWN0IGFwcGx5X3N0YXRlICpzdGF0ZSwKK3N0YXRpYyBpbnQgZ2l0ZGlmZl9kZWxldGUoc3RydWN0IGdpdGRpZmZfZGF0YSAqc3RhdGUsCiAJCQkgIGNvbnN0IGNoYXIgKmxpbmUsCiAJCQkgIHN0cnVjdCBwYXRjaCAqcGF0Y2gpCiB7CkBAIC0xMDEzLDcgKzk4OCw3IEBACiAJcmV0dXJuIGdpdGRpZmZfb2xkbW9kZShzdGF0ZSwgbGluZSwgcGF0Y2gpOwogfQogCi1zdGF0aWMgaW50IGdpdGRpZmZfbmV3ZmlsZShzdHJ1Y3QgYXBwbHlfc3RhdGUgKnN0YXRlLAorc3RhdGljIGludCBnaXRkaWZmX25ld2ZpbGUoc3RydWN0IGdpdGRpZmZfZGF0YSAqc3RhdGUsCiAJCQkgICBjb25zdCBjaGFyICpsaW5lLAogCQkJICAgc3RydWN0IHBhdGNoICpwYXRjaCkKIHsKQEAgLTEwMjMsNDcgKzk5OCw0NyBAQAogCXJldHVybiBnaXRkaWZmX25ld21vZGUoc3RhdGUsIGxpbmUsIHBhdGNoKTsKIH0KIAotc3RhdGljIGludCBnaXRkaWZmX2NvcHlzcmMoc3RydWN0IGFwcGx5X3N0YXRlICpzdGF0ZSwKK3N0YXRpYyBpbnQgZ2l0ZGlmZl9jb3B5c3JjKHN0cnVjdCBnaXRkaWZmX2RhdGEgKnN0YXRlLAogCQkJICAgY29uc3QgY2hhciAqbGluZSwKIAkJCSAgIHN0cnVjdCBwYXRjaCAqcGF0Y2gpCiB7CiAJcGF0Y2gtPmlzX2NvcHkgPSAxOwogCWZyZWUocGF0Y2gtPm9sZF9uYW1lKTsKLQlwYXRjaC0+b2xkX25hbWUgPSBmaW5kX25hbWUoc3RhdGUsIGxpbmUsIE5VTEwsIHN0YXRlLT5wX3ZhbHVlID8gc3RhdGUtPnBfdmFsdWUgLSAxIDogMCwgMCk7CisJcGF0Y2gtPm9sZF9uYW1lID0gZmluZF9uYW1lKHN0YXRlLT5yb290LCBsaW5lLCBOVUxMLCBzdGF0ZS0+cF92YWx1ZSA/IHN0YXRlLT5wX3ZhbHVlIC0gMSA6IDAsIDApOwogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGdpdGRpZmZfY29weWRzdChzdHJ1Y3QgYXBwbHlfc3RhdGUgKnN0YXRlLAorc3RhdGljIGludCBnaXRkaWZmX2NvcHlkc3Qoc3RydWN0IGdpdGRpZmZfZGF0YSAqc3RhdGUsCiAJCQkgICBjb25zdCBjaGFyICpsaW5lLAogCQkJICAgc3RydWN0IHBhdGNoICpwYXRjaCkKIHsKIAlwYXRjaC0+aXNfY29weSA9IDE7CiAJZnJlZShwYXRjaC0+bmV3X25hbWUpOwotCXBhdGNoLT5uZXdfbmFtZSA9IGZpbmRfbmFtZShzdGF0ZSwgbGluZSwgTlVMTCwgc3RhdGUtPnBfdmFsdWUgPyBzdGF0ZS0+cF92YWx1ZSAtIDEgOiAwLCAwKTsKKwlwYXRjaC0+bmV3X25hbWUgPSBmaW5kX25hbWUoc3RhdGUtPnJvb3QsIGxpbmUsIE5VTEwsIHN0YXRlLT5wX3ZhbHVlID8gc3RhdGUtPnBfdmFsdWUgLSAxIDogMCwgMCk7CiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgZ2l0ZGlmZl9yZW5hbWVzcmMoc3RydWN0IGFwcGx5X3N0YXRlICpzdGF0ZSwKK3N0YXRpYyBpbnQgZ2l0ZGlmZl9yZW5hbWVzcmMoc3RydWN0IGdpdGRpZmZfZGF0YSAqc3RhdGUsCiAJCQkgICAgIGNvbnN0IGNoYXIgKmxpbmUsCiAJCQkgICAgIHN0cnVjdCBwYXRjaCAqcGF0Y2gpCiB7CiAJcGF0Y2gtPmlzX3JlbmFtZSA9IDE7CiAJZnJlZShwYXRjaC0+b2xkX25hbWUpOwotCXBhdGNoLT5vbGRfbmFtZSA9IGZpbmRfbmFtZShzdGF0ZSwgbGluZSwgTlVMTCwgc3RhdGUtPnBfdmFsdWUgPyBzdGF0ZS0+cF92YWx1ZSAtIDEgOiAwLCAwKTsKKwlwYXRjaC0+b2xkX25hbWUgPSBmaW5kX25hbWUoc3RhdGUtPnJvb3QsIGxpbmUsIE5VTEwsIHN0YXRlLT5wX3ZhbHVlID8gc3RhdGUtPnBfdmFsdWUgLSAxIDogMCwgMCk7CiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgZ2l0ZGlmZl9yZW5hbWVkc3Qoc3RydWN0IGFwcGx5X3N0YXRlICpzdGF0ZSwKK3N0YXRpYyBpbnQgZ2l0ZGlmZl9yZW5hbWVkc3Qoc3RydWN0IGdpdGRpZmZfZGF0YSAqc3RhdGUsCiAJCQkgICAgIGNvbnN0IGNoYXIgKmxpbmUsCiAJCQkgICAgIHN0cnVjdCBwYXRjaCAqcGF0Y2gpCiB7CiAJcGF0Y2gtPmlzX3JlbmFtZSA9IDE7CiAJZnJlZShwYXRjaC0+bmV3X25hbWUpOwotCXBhdGNoLT5uZXdfbmFtZSA9IGZpbmRfbmFtZShzdGF0ZSwgbGluZSwgTlVMTCwgc3RhdGUtPnBfdmFsdWUgPyBzdGF0ZS0+cF92YWx1ZSAtIDEgOiAwLCAwKTsKKwlwYXRjaC0+bmV3X25hbWUgPSBmaW5kX25hbWUoc3RhdGUtPnJvb3QsIGxpbmUsIE5VTEwsIHN0YXRlLT5wX3ZhbHVlID8gc3RhdGUtPnBfdmFsdWUgLSAxIDogMCwgMCk7CiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgZ2l0ZGlmZl9zaW1pbGFyaXR5KHN0cnVjdCBhcHBseV9zdGF0ZSAqc3RhdGUsCitzdGF0aWMgaW50IGdpdGRpZmZfc2ltaWxhcml0eShzdHJ1Y3QgZ2l0ZGlmZl9kYXRhICpzdGF0ZSwKIAkJCSAgICAgIGNvbnN0IGNoYXIgKmxpbmUsCiAJCQkgICAgICBzdHJ1Y3QgcGF0Y2ggKnBhdGNoKQogewpAQCAtMTA3Myw3ICsxMDQ4LDcgQEAKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBnaXRkaWZmX2Rpc3NpbWlsYXJpdHkoc3RydWN0IGFwcGx5X3N0YXRlICpzdGF0ZSwKK3N0YXRpYyBpbnQgZ2l0ZGlmZl9kaXNzaW1pbGFyaXR5KHN0cnVjdCBnaXRkaWZmX2RhdGEgKnN0YXRlLAogCQkJCSBjb25zdCBjaGFyICpsaW5lLAogCQkJCSBzdHJ1Y3QgcGF0Y2ggKnBhdGNoKQogewpAQCAtMTA4Myw3ICsxMDU4LDcgQEAKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBnaXRkaWZmX2luZGV4KHN0cnVjdCBhcHBseV9zdGF0ZSAqc3RhdGUsCitzdGF0aWMgaW50IGdpdGRpZmZfaW5kZXgoc3RydWN0IGdpdGRpZmZfZGF0YSAqc3RhdGUsCiAJCQkgY29uc3QgY2hhciAqbGluZSwKIAkJCSBzdHJ1Y3QgcGF0Y2ggKnBhdGNoKQogewpAQCAtMTEyMyw3ICsxMDk4LDcgQEAKICAqIFRoaXMgaXMgbm9ybWFsIGZvciBhIGRpZmYgdGhhdCBkb2Vzbid0IGNoYW5nZSBhbnl0aGluZzogd2UnbGwgZmFsbCB0aHJvdWdoCiAgKiBpbnRvIHRoZSBuZXh0IGRpZmYuIFRlbGwgdGhlIHBhcnNlciB0byBicmVhayBvdXQuCiAgKi8KLXN0YXRpYyBpbnQgZ2l0ZGlmZl91bnJlY29nbml6ZWQoc3RydWN0IGFwcGx5X3N0YXRlICpzdGF0ZSwKK3N0YXRpYyBpbnQgZ2l0ZGlmZl91bnJlY29nbml6ZWQoc3RydWN0IGdpdGRpZmZfZGF0YSAqc3RhdGUsCiAJCQkJY29uc3QgY2hhciAqbGluZSwKIAkJCQlzdHJ1Y3QgcGF0Y2ggKnBhdGNoKQogewpAQCAtMTEzNCwxNyArMTEwOSwxNyBAQAogICogU2tpcCBwX3ZhbHVlIGxlYWRpbmcgY29tcG9uZW50cyBmcm9tICJsaW5lIjsgYXMgd2UgZG8gbm90IGFjY2VwdAogICogYWJzb2x1dGUgcGF0aHMsIHJldHVybiBOVUxMIGluIHRoYXQgY2FzZS4KICAqLwotc3RhdGljIGNvbnN0IGNoYXIgKnNraXBfdHJlZV9wcmVmaXgoc3RydWN0IGFwcGx5X3N0YXRlICpzdGF0ZSwKK3N0YXRpYyBjb25zdCBjaGFyICpza2lwX3RyZWVfcHJlZml4KGludCBwX3ZhbHVlLAogCQkJCSAgICBjb25zdCBjaGFyICpsaW5lLAogCQkJCSAgICBpbnQgbGxlbikKIHsKIAlpbnQgbnNsYXNoOwogCWludCBpOwogCi0JaWYgKCFzdGF0ZS0+cF92YWx1ZSkKKwlpZiAoIXBfdmFsdWUpCiAJCXJldHVybiAobGxlbiAmJiBsaW5lWzBdID09ICcvJykgPyBOVUxMIDogbGluZTsKIAotCW5zbGFzaCA9IHN0YXRlLT5wX3ZhbHVlOworCW5zbGFzaCA9IHBfdmFsdWU7CiAJZm9yIChpID0gMDsgaSA8IGxsZW47IGkrKykgewogCQlpbnQgY2ggPSBsaW5lW2ldOwogCQlpZiAoY2ggPT0gJy8nICYmIC0tbnNsYXNoIDw9IDApCkBAIC0xMTYxLDcgKzExMzYsNyBAQAogICogY3JlYXRpb24gb3IgZGVsZXRpb24gb2YgYW4gZW1wdHkgZmlsZS4gIEluIGFueSBvZiB0aGVzZSBjYXNlcywKICAqIGJvdGggc2lkZXMgYXJlIHRoZSBzYW1lIG5hbWUgdW5kZXIgYS8gYW5kIGIvIHJlc3BlY3RpdmVseS4KICAqLwotc3RhdGljIGNoYXIgKmdpdF9oZWFkZXJfbmFtZShzdHJ1Y3QgYXBwbHlfc3RhdGUgKnN0YXRlLAorc3RhdGljIGNoYXIgKmdpdF9oZWFkZXJfbmFtZShpbnQgcF92YWx1ZSwKIAkJCSAgICAgY29uc3QgY2hhciAqbGluZSwKIAkJCSAgICAgaW50IGxsZW4pCiB7CkBAIC0xMTgxLDcgKzExNTYsNyBAQAogCQkJZ290byBmcmVlX2FuZF9mYWlsMTsKIAogCQkvKiBzdHJpcCB0aGUgYS9iIHByZWZpeCBpbmNsdWRpbmcgdHJhaWxpbmcgc2xhc2ggKi8KLQkJY3AgPSBza2lwX3RyZWVfcHJlZml4KHN0YXRlLCBmaXJzdC5idWYsIGZpcnN0Lmxlbik7CisJCWNwID0gc2tpcF90cmVlX3ByZWZpeChwX3ZhbHVlLCBmaXJzdC5idWYsIGZpcnN0Lmxlbik7CiAJCWlmICghY3ApCiAJCQlnb3RvIGZyZWVfYW5kX2ZhaWwxOwogCQlzdHJidWZfcmVtb3ZlKCZmaXJzdCwgMCwgY3AgLSBmaXJzdC5idWYpOwpAQCAtMTE5OCw3ICsxMTczLDcgQEAKIAkJaWYgKCpzZWNvbmQgPT0gJyInKSB7CiAJCQlpZiAodW5xdW90ZV9jX3N0eWxlKCZzcCwgc2Vjb25kLCBOVUxMKSkKIAkJCQlnb3RvIGZyZWVfYW5kX2ZhaWwxOwotCQkJY3AgPSBza2lwX3RyZWVfcHJlZml4KHN0YXRlLCBzcC5idWYsIHNwLmxlbik7CisJCQljcCA9IHNraXBfdHJlZV9wcmVmaXgocF92YWx1ZSwgc3AuYnVmLCBzcC5sZW4pOwogCQkJaWYgKCFjcCkKIAkJCQlnb3RvIGZyZWVfYW5kX2ZhaWwxOwogCQkJLyogVGhleSBtdXN0IG1hdGNoLCBvdGhlcndpc2UgaWdub3JlICovCkBAIC0xMjA5LDcgKzExODQsNyBAQAogCQl9CiAKIAkJLyogdW5xdW90ZWQgc2Vjb25kICovCi0JCWNwID0gc2tpcF90cmVlX3ByZWZpeChzdGF0ZSwgc2Vjb25kLCBsaW5lICsgbGxlbiAtIHNlY29uZCk7CisJCWNwID0gc2tpcF90cmVlX3ByZWZpeChwX3ZhbHVlLCBzZWNvbmQsIGxpbmUgKyBsbGVuIC0gc2Vjb25kKTsKIAkJaWYgKCFjcCkKIAkJCWdvdG8gZnJlZV9hbmRfZmFpbDE7CiAJCWlmIChsaW5lICsgbGxlbiAtIGNwICE9IGZpcnN0LmxlbiB8fApAQCAtMTIyNCw3ICsxMTk5LDcgQEAKIAl9CiAKIAkvKiB1bnF1b3RlZCBmaXJzdCBuYW1lICovCi0JbmFtZSA9IHNraXBfdHJlZV9wcmVmaXgoc3RhdGUsIGxpbmUsIGxsZW4pOworCW5hbWUgPSBza2lwX3RyZWVfcHJlZml4KHBfdmFsdWUsIGxpbmUsIGxsZW4pOwogCWlmICghbmFtZSkKIAkJcmV0dXJuIE5VTEw7CiAKQEAgLTEyNDAsNyArMTIxNSw3IEBACiAJCQlpZiAodW5xdW90ZV9jX3N0eWxlKCZzcCwgc2Vjb25kLCBOVUxMKSkKIAkJCQlnb3RvIGZyZWVfYW5kX2ZhaWwyOwogCi0JCQlucCA9IHNraXBfdHJlZV9wcmVmaXgoc3RhdGUsIHNwLmJ1Ziwgc3AubGVuKTsKKwkJCW5wID0gc2tpcF90cmVlX3ByZWZpeChwX3ZhbHVlLCBzcC5idWYsIHNwLmxlbik7CiAJCQlpZiAoIW5wKQogCQkJCWdvdG8gZnJlZV9hbmRfZmFpbDI7CiAKQEAgLTEyODQsNyArMTI1OSw3IEBACiAJCQkgKi8KIAkJCWlmICghbmFtZVtsZW4gKyAxXSkKIAkJCQlyZXR1cm4gTlVMTDsgLyogbm8gcG9zdGltYWdlIG5hbWUgKi8KLQkJCXNlY29uZCA9IHNraXBfdHJlZV9wcmVmaXgoc3RhdGUsIG5hbWUgKyBsZW4gKyAxLAorCQkJc2Vjb25kID0gc2tpcF90cmVlX3ByZWZpeChwX3ZhbHVlLCBuYW1lICsgbGVuICsgMSwKIAkJCQkJCSAgbGluZV9sZW4gLSAobGVuICsgMSkpOwogCQkJaWYgKCFzZWNvbmQpCiAJCQkJcmV0dXJuIE5VTEw7CkBAIC0xMjk5LDI2ICsxMjc0LDI4IEBACiAJfQogfQogCi1zdGF0aWMgaW50IGNoZWNrX2hlYWRlcl9saW5lKHN0cnVjdCBhcHBseV9zdGF0ZSAqc3RhdGUsIHN0cnVjdCBwYXRjaCAqcGF0Y2gpCitzdGF0aWMgaW50IGNoZWNrX2hlYWRlcl9saW5lKGludCBsaW5lbnIsIHN0cnVjdCBwYXRjaCAqcGF0Y2gpCiB7CiAJaW50IGV4dGVuc2lvbnMgPSAocGF0Y2gtPmlzX2RlbGV0ZSA9PSAxKSArIChwYXRjaC0+aXNfbmV3ID09IDEpICsKIAkJCSAocGF0Y2gtPmlzX3JlbmFtZSA9PSAxKSArIChwYXRjaC0+aXNfY29weSA9PSAxKTsKIAlpZiAoZXh0ZW5zaW9ucyA+IDEpCiAJCXJldHVybiBlcnJvcihfKCJpbmNvbnNpc3RlbnQgaGVhZGVyIGxpbmVzICVkIGFuZCAlZCIpLAotCQkJICAgICBwYXRjaC0+ZXh0ZW5zaW9uX2xpbmVuciwgc3RhdGUtPmxpbmVucik7CisJCQkgICAgIHBhdGNoLT5leHRlbnNpb25fbGluZW5yLCBsaW5lbnIpOwogCWlmIChleHRlbnNpb25zICYmICFwYXRjaC0+ZXh0ZW5zaW9uX2xpbmVucikKLQkJcGF0Y2gtPmV4dGVuc2lvbl9saW5lbnIgPSBzdGF0ZS0+bGluZW5yOworCQlwYXRjaC0+ZXh0ZW5zaW9uX2xpbmVuciA9IGxpbmVucjsKIAlyZXR1cm4gMDsKIH0KIAotLyogVmVyaWZ5IHRoYXQgd2UgcmVjb2duaXplIHRoZSBsaW5lcyBmb2xsb3dpbmcgYSBnaXQgaGVhZGVyICovCi1zdGF0aWMgaW50IHBhcnNlX2dpdF9oZWFkZXIoc3RydWN0IGFwcGx5X3N0YXRlICpzdGF0ZSwKLQkJCSAgICBjb25zdCBjaGFyICpsaW5lLAotCQkJICAgIGludCBsZW4sCi0JCQkgICAgdW5zaWduZWQgaW50IHNpemUsCi0JCQkgICAgc3RydWN0IHBhdGNoICpwYXRjaCkKK2ludCBwYXJzZV9naXRfZGlmZl9oZWFkZXIoc3RydWN0IHN0cmJ1ZiAqcm9vdCwKKwkJCSAgaW50ICpsaW5lbnIsCisJCQkgIGludCBwX3ZhbHVlLAorCQkJICBjb25zdCBjaGFyICpsaW5lLAorCQkJICBpbnQgbGVuLAorCQkJICB1bnNpZ25lZCBpbnQgc2l6ZSwKKwkJCSAgc3RydWN0IHBhdGNoICpwYXRjaCkKIHsKIAl1bnNpZ25lZCBsb25nIG9mZnNldDsKKwlzdHJ1Y3QgZ2l0ZGlmZl9kYXRhIHBhcnNlX2hkcl9zdGF0ZTsKIAogCS8qIEEgZ2l0IGRpZmYgaGFzIGV4cGxpY2l0IG5ldy9kZWxldGUgaW5mb3JtYXRpb24sIHNvIHdlIGRvbid0IGd1ZXNzICovCiAJcGF0Y2gtPmlzX25ldyA9IDA7CkBAIC0xMzMwLDIwICsxMzA3LDI0IEBACiAJICogb3IgcmVtb3Zpbmcgb3IgYWRkaW5nIGVtcHR5IGZpbGVzKSwgc28gd2UgZ2V0CiAJICogdGhlIGRlZmF1bHQgbmFtZSBmcm9tIHRoZSBoZWFkZXIuCiAJICovCi0JcGF0Y2gtPmRlZl9uYW1lID0gZ2l0X2hlYWRlcl9uYW1lKHN0YXRlLCBsaW5lLCBsZW4pOwotCWlmIChwYXRjaC0+ZGVmX25hbWUgJiYgc3RhdGUtPnJvb3QubGVuKSB7Ci0JCWNoYXIgKnMgPSB4c3RyZm10KCIlcyVzIiwgc3RhdGUtPnJvb3QuYnVmLCBwYXRjaC0+ZGVmX25hbWUpOworCXBhdGNoLT5kZWZfbmFtZSA9IGdpdF9oZWFkZXJfbmFtZShwX3ZhbHVlLCBsaW5lLCBsZW4pOworCWlmIChwYXRjaC0+ZGVmX25hbWUgJiYgcm9vdC0+bGVuKSB7CisJCWNoYXIgKnMgPSB4c3RyZm10KCIlcyVzIiwgcm9vdC0+YnVmLCBwYXRjaC0+ZGVmX25hbWUpOwogCQlmcmVlKHBhdGNoLT5kZWZfbmFtZSk7CiAJCXBhdGNoLT5kZWZfbmFtZSA9IHM7CiAJfQogCiAJbGluZSArPSBsZW47CiAJc2l6ZSAtPSBsZW47Ci0Jc3RhdGUtPmxpbmVucisrOwotCWZvciAob2Zmc2V0ID0gbGVuIDsgc2l6ZSA+IDAgOyBvZmZzZXQgKz0gbGVuLCBzaXplIC09IGxlbiwgbGluZSArPSBsZW4sIHN0YXRlLT5saW5lbnIrKykgeworCSgqbGluZW5yKSsrOworCXBhcnNlX2hkcl9zdGF0ZS5yb290ID0gcm9vdDsKKwlwYXJzZV9oZHJfc3RhdGUubGluZW5yID0gKmxpbmVucjsKKwlwYXJzZV9oZHJfc3RhdGUucF92YWx1ZSA9IHBfdmFsdWU7CisKKwlmb3IgKG9mZnNldCA9IGxlbiA7IHNpemUgPiAwIDsgb2Zmc2V0ICs9IGxlbiwgc2l6ZSAtPSBsZW4sIGxpbmUgKz0gbGVuLCAoKmxpbmVucikrKykgewogCQlzdGF0aWMgY29uc3Qgc3RydWN0IG9wZW50cnkgewogCQkJY29uc3QgY2hhciAqc3RyOwotCQkJaW50ICgqZm4pKHN0cnVjdCBhcHBseV9zdGF0ZSAqLCBjb25zdCBjaGFyICosIHN0cnVjdCBwYXRjaCAqKTsKKwkJCWludCAoKmZuKShzdHJ1Y3QgZ2l0ZGlmZl9kYXRhICosIGNvbnN0IGNoYXIgKiwgc3RydWN0IHBhdGNoICopOwogCQl9IG9wdGFibGVbXSA9IHsKIAkJCXsgIkBAIC0iLCBnaXRkaWZmX2hkcmVuZCB9LAogCQkJeyAiLS0tICIsIGdpdGRpZmZfb2xkbmFtZSB9LApAQCAtMTM3NCwxNyArMTM1NSwzOCBAQAogCQkJaW50IHJlczsKIAkJCWlmIChsZW4gPCBvcGxlbiB8fCBtZW1jbXAocC0+c3RyLCBsaW5lLCBvcGxlbikpCiAJCQkJY29udGludWU7Ci0JCQlyZXMgPSBwLT5mbihzdGF0ZSwgbGluZSArIG9wbGVuLCBwYXRjaCk7CisJCQlyZXMgPSBwLT5mbigmcGFyc2VfaGRyX3N0YXRlLCBsaW5lICsgb3BsZW4sIHBhdGNoKTsKIAkJCWlmIChyZXMgPCAwKQogCQkJCXJldHVybiAtMTsKLQkJCWlmIChjaGVja19oZWFkZXJfbGluZShzdGF0ZSwgcGF0Y2gpKQorCQkJaWYgKGNoZWNrX2hlYWRlcl9saW5lKCpsaW5lbnIsIHBhdGNoKSkKIAkJCQlyZXR1cm4gLTE7CiAJCQlpZiAocmVzID4gMCkKLQkJCQlyZXR1cm4gb2Zmc2V0OworCQkJCWdvdG8gZG9uZTsKIAkJCWJyZWFrOwogCQl9CiAJfQogCitkb25lOgorCWlmICghcGF0Y2gtPm9sZF9uYW1lICYmICFwYXRjaC0+bmV3X25hbWUpIHsKKwkJaWYgKCFwYXRjaC0+ZGVmX25hbWUpIHsKKwkJCWVycm9yKFFfKCJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gd2hlbiByZW1vdmluZyAiCisJCQkJICIlZCBsZWFkaW5nIHBhdGhuYW1lIGNvbXBvbmVudCAobGluZSAlZCkiLAorCQkJCSAiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIHdoZW4gcmVtb3ZpbmcgIgorCQkJCSAiJWQgbGVhZGluZyBwYXRobmFtZSBjb21wb25lbnRzIChsaW5lICVkKSIsCisJCQkJIHBhcnNlX2hkcl9zdGF0ZS5wX3ZhbHVlKSwKKwkJCSAgICAgIHBhcnNlX2hkcl9zdGF0ZS5wX3ZhbHVlLCAqbGluZW5yKTsKKwkJCXJldHVybiAtMTI4OworCQl9CisJCXBhdGNoLT5vbGRfbmFtZSA9IHhzdHJkdXAocGF0Y2gtPmRlZl9uYW1lKTsKKwkJcGF0Y2gtPm5ld19uYW1lID0geHN0cmR1cChwYXRjaC0+ZGVmX25hbWUpOworCX0KKwlpZiAoKCFwYXRjaC0+bmV3X25hbWUgJiYgIXBhdGNoLT5pc19kZWxldGUpIHx8CisJICAgICghcGF0Y2gtPm9sZF9uYW1lICYmICFwYXRjaC0+aXNfbmV3KSkgeworCQllcnJvcihfKCJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gIgorCQkJIihsaW5lICVkKSIpLCAqbGluZW5yKTsKKwkJcmV0dXJuIC0xMjg7CisJfQorCXBhdGNoLT5pc190b3BsZXZlbF9yZWxhdGl2ZSA9IDE7CiAJcmV0dXJuIG9mZnNldDsKIH0KIApAQCAtMTU1OCwzMSArMTU2MCwxMyBAQAogCQkgKiBvciBtb2RlIGNoYW5nZSwgc28gd2UgaGFuZGxlIHRoYXQgc3BlY2lhbGx5CiAJCSAqLwogCQlpZiAoIW1lbWNtcCgiZGlmZiAtLWdpdCAiLCBsaW5lLCAxMSkpIHsKLQkJCWludCBnaXRfaGRyX2xlbiA9IHBhcnNlX2dpdF9oZWFkZXIoc3RhdGUsIGxpbmUsIGxlbiwgc2l6ZSwgcGF0Y2gpOworCQkJaW50IGdpdF9oZHJfbGVuID0gcGFyc2VfZ2l0X2RpZmZfaGVhZGVyKCZzdGF0ZS0+cm9vdCwgJnN0YXRlLT5saW5lbnIsCisJCQkJCQkJCXN0YXRlLT5wX3ZhbHVlLCBsaW5lLCBsZW4sCisJCQkJCQkJCXNpemUsIHBhdGNoKTsKIAkJCWlmIChnaXRfaGRyX2xlbiA8IDApCiAJCQkJcmV0dXJuIC0xMjg7CiAJCQlpZiAoZ2l0X2hkcl9sZW4gPD0gbGVuKQogCQkJCWNvbnRpbnVlOwotCQkJaWYgKCFwYXRjaC0+b2xkX25hbWUgJiYgIXBhdGNoLT5uZXdfbmFtZSkgewotCQkJCWlmICghcGF0Y2gtPmRlZl9uYW1lKSB7Ci0JCQkJCWVycm9yKFFfKCJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gd2hlbiByZW1vdmluZyAiCi0JCQkJCQkJIiVkIGxlYWRpbmcgcGF0aG5hbWUgY29tcG9uZW50IChsaW5lICVkKSIsCi0JCQkJCQkJImdpdCBkaWZmIGhlYWRlciBsYWNrcyBmaWxlbmFtZSBpbmZvcm1hdGlvbiB3aGVuIHJlbW92aW5nICIKLQkJCQkJCQkiJWQgbGVhZGluZyBwYXRobmFtZSBjb21wb25lbnRzIChsaW5lICVkKSIsCi0JCQkJCQkJc3RhdGUtPnBfdmFsdWUpLAotCQkJCQkJICAgICBzdGF0ZS0+cF92YWx1ZSwgc3RhdGUtPmxpbmVucik7Ci0JCQkJCXJldHVybiAtMTI4OwotCQkJCX0KLQkJCQlwYXRjaC0+b2xkX25hbWUgPSB4c3RyZHVwKHBhdGNoLT5kZWZfbmFtZSk7Ci0JCQkJcGF0Y2gtPm5ld19uYW1lID0geHN0cmR1cChwYXRjaC0+ZGVmX25hbWUpOwotCQkJfQotCQkJaWYgKCghcGF0Y2gtPm5ld19uYW1lICYmICFwYXRjaC0+aXNfZGVsZXRlKSB8fAotCQkJICAgICghcGF0Y2gtPm9sZF9uYW1lICYmICFwYXRjaC0+aXNfbmV3KSkgewotCQkJCWVycm9yKF8oImdpdCBkaWZmIGhlYWRlciBsYWNrcyBmaWxlbmFtZSBpbmZvcm1hdGlvbiAiCi0JCQkJCSAgICAgIihsaW5lICVkKSIpLCBzdGF0ZS0+bGluZW5yKTsKLQkJCQlyZXR1cm4gLTEyODsKLQkJCX0KLQkJCXBhdGNoLT5pc190b3BsZXZlbF9yZWxhdGl2ZSA9IDE7CiAJCQkqaGRyc2l6ZSA9IGdpdF9oZHJfbGVuOwogCQkJcmV0dXJuIG9mZnNldDsKIAkJfQpAQCAtMjY3OCw2ICsyNjYyLDE2IEBACiAJaW50IGJhY2t3YXJkc19sbm8sIGZvcndhcmRzX2xubywgY3VycmVudF9sbm87CiAKIAkvKgorCSAqIFdoZW4gcnVubmluZyB3aXRoIC0tYWxsb3ctb3ZlcmxhcCwgaXQgaXMgcG9zc2libGUgdGhhdCBhIGh1bmsgaXMKKwkgKiBzZWVuIHRoYXQgcHJldGVuZHMgdG8gc3RhcnQgYXQgdGhlIGJlZ2lubmluZyAoYnV0IG5vIGxvbmdlciBkb2VzKSwKKwkgKiBhbmQgdGhhdCAqc3RpbGwqIG5lZWRzIHRvIG1hdGNoIHRoZSBlbmQuIFNvIHRydXN0IGBtYXRjaF9lbmRgIG1vcmUKKwkgKiB0aGFuIGBtYXRjaF9iZWdpbm5pbmdgLgorCSAqLworCWlmIChzdGF0ZS0+YWxsb3dfb3ZlcmxhcCAmJiBtYXRjaF9iZWdpbm5pbmcgJiYgbWF0Y2hfZW5kICYmCisJICAgIGltZy0+bnIgLSBwcmVpbWFnZS0+bnIgIT0gMCkKKwkJbWF0Y2hfYmVnaW5uaW5nID0gMDsKKworCS8qCiAJICogSWYgbWF0Y2hfYmVnaW5uaW5nIG9yIG1hdGNoX2VuZCBpcyBzcGVjaWZpZWQsIHRoZXJlIGlzIG5vCiAJICogcG9pbnQgc3RhcnRpbmcgZnJvbSBhIHdyb25nIGxpbmUgdGhhdCB3aWxsIG5ldmVyIG1hdGNoIGFuZAogCSAqIHdhbmRlciBhcm91bmQgYW5kIHdhaXQgZm9yIGEgbWF0Y2ggYXQgdGhlIHNwZWNpZmllZCBlbmQuCkBAIC0zMTYzLDcgKzMxNTcsOCBAQAogCQkgKiBTZWUgaWYgdGhlIG9sZCBvbmUgbWF0Y2hlcyB3aGF0IHRoZSBwYXRjaAogCQkgKiBhcHBsaWVzIHRvLgogCQkgKi8KLQkJaGFzaF9vYmplY3RfZmlsZShpbWctPmJ1ZiwgaW1nLT5sZW4sIGJsb2JfdHlwZSwgJm9pZCk7CisJCWhhc2hfb2JqZWN0X2ZpbGUodGhlX2hhc2hfYWxnbywgaW1nLT5idWYsIGltZy0+bGVuLCBibG9iX3R5cGUsCisJCQkJICZvaWQpOwogCQlpZiAoc3RyY21wKG9pZF90b19oZXgoJm9pZCksIHBhdGNoLT5vbGRfb2lkX3ByZWZpeCkpCiAJCQlyZXR1cm4gZXJyb3IoXygidGhlIHBhdGNoIGFwcGxpZXMgdG8gJyVzJyAoJXMpLCAiCiAJCQkJICAgICAgICJ3aGljaCBkb2VzIG5vdCBtYXRjaCB0aGUgIgpAQCAtMzE4Myw3ICszMTc4LDcgQEAKIAkJcmV0dXJuIDA7IC8qIGRlbGV0aW9uIHBhdGNoICovCiAJfQogCi0JaWYgKGhhc19zaGExX2ZpbGUob2lkLmhhc2gpKSB7CisJaWYgKGhhc19vYmplY3RfZmlsZSgmb2lkKSkgewogCQkvKiBXZSBhbHJlYWR5IGhhdmUgdGhlIHBvc3RpbWFnZSAqLwogCQllbnVtIG9iamVjdF90eXBlIHR5cGU7CiAJCXVuc2lnbmVkIGxvbmcgc2l6ZTsKQEAgLTMyMDgsNyArMzIwMyw4IEBACiAJCQkJICAgICBuYW1lKTsKIAogCQkvKiB2ZXJpZnkgdGhhdCB0aGUgcmVzdWx0IG1hdGNoZXMgKi8KLQkJaGFzaF9vYmplY3RfZmlsZShpbWctPmJ1ZiwgaW1nLT5sZW4sIGJsb2JfdHlwZSwgJm9pZCk7CisJCWhhc2hfb2JqZWN0X2ZpbGUodGhlX2hhc2hfYWxnbywgaW1nLT5idWYsIGltZy0+bGVuLCBibG9iX3R5cGUsCisJCQkJICZvaWQpOwogCQlpZiAoc3RyY21wKG9pZF90b19oZXgoJm9pZCksIHBhdGNoLT5uZXdfb2lkX3ByZWZpeCkpCiAJCQlyZXR1cm4gZXJyb3IoXygiYmluYXJ5IHBhdGNoIHRvICclcycgY3JlYXRlcyBpbmNvcnJlY3QgcmVzdWx0IChleHBlY3RpbmcgJXMsIGdvdCAlcykiKSwKIAkJCQluYW1lLCBwYXRjaC0+bmV3X29pZF9wcmVmaXgsIG9pZF90b19oZXgoJm9pZCkpOwpAQCAtMzM1Miw3ICszMzQ4LDggQEAKIAogCWNvc3RhdGUucmVmcmVzaF9jYWNoZSA9IDE7CiAJY29zdGF0ZS5pc3RhdGUgPSBpc3RhdGU7Ci0JaWYgKGNoZWNrb3V0X2VudHJ5KGNlLCAmY29zdGF0ZSwgTlVMTCkgfHwgbHN0YXQoY2UtPm5hbWUsIHN0KSkKKwlpZiAoY2hlY2tvdXRfZW50cnkoY2UsICZjb3N0YXRlLCBOVUxMLCBOVUxMKSB8fAorCSAgICBsc3RhdChjZS0+bmFtZSwgc3QpKQogCQlyZXR1cm4gZXJyb3IoXygiY2Fubm90IGNoZWNrb3V0ICVzIiksIGNlLT5uYW1lKTsKIAlyZXR1cm4gMDsKIH0KQEAgLTQwMTksNyArNDAxNiw3IEBACiAJCXJldHVybiByZWFkX2luZGV4X2Zyb20oc3RhdGUtPnJlcG8tPmluZGV4LCBzdGF0ZS0+aW5kZXhfZmlsZSwKIAkJCQkgICAgICAgZ2V0X2dpdF9kaXIoKSk7CiAJZWxzZQotCQlyZXR1cm4gcmVhZF9pbmRleChzdGF0ZS0+cmVwby0+aW5kZXgpOworCQlyZXR1cm4gcmVwb19yZWFkX2luZGV4KHN0YXRlLT5yZXBvKTsKIH0KIAogLyogVGhpcyBmdW5jdGlvbiB0cmllcyB0byByZWFkIHRoZSBvYmplY3QgbmFtZSBmcm9tIHRoZSBjdXJyZW50IGluZGV4ICovCkBAIC00MTk4LDggKzQxOTUsOCBAQAogCQlvbGRfbmFtZSA9IHNsYXNoX29sZCArIDE7CiAJCW5ld19uYW1lID0gc2xhc2hfbmV3ICsgMTsKIAl9Ci0JLyogcC0+b2xkX25hbWUgdGhydSBvbGRfbmFtZSBpcyB0aGUgY29tbW9uIHByZWZpeCwgYW5kIG9sZF9uYW1lIGFuZCBuZXdfbmFtZQotCSAqIHRocm91Z2ggdGhlIGVuZCBvZiBuYW1lcyBhcmUgcmVuYW1lcworCS8qIHAtPm9sZF9uYW1lIHRocm91Z2ggb2xkX25hbWUgaXMgdGhlIGNvbW1vbiBwcmVmaXgsIGFuZCBvbGRfbmFtZSBhbmQKKwkgKiBuZXdfbmFtZSB0aHJvdWdoIHRoZSBlbmQgb2YgbmFtZXMgYXJlIHJlbmFtZXMKIAkgKi8KIAlpZiAob2xkX25hbWUgIT0gcC0+b2xkX25hbWUpCiAJCXByaW50ZigiICVzICUuKnN7JXMgPT4gJXN9ICglZCUlKVxuIiwgcmVuYW1lY29weSwKQEAgLTQzMDYsNyArNDMwMyw3IEBACiAJCQkJCQkgICAgICJjcmVhdGVkIGZpbGUgJyVzJyIpLAogCQkJCQkJICAgcGF0aCk7CiAJCQl9Ci0JCQlmaWxsX3N0YXRfY2FjaGVfaW5mbyhjZSwgJnN0KTsKKwkJCWZpbGxfc3RhdF9jYWNoZV9pbmZvKHN0YXRlLT5yZXBvLT5pbmRleCwgY2UsICZzdCk7CiAJCX0KIAkJaWYgKHdyaXRlX29iamVjdF9maWxlKGJ1Ziwgc2l6ZSwgYmxvYl90eXBlLCAmY2UtPm9pZCkgPCAwKSB7CiAJCQlkaXNjYXJkX2NhY2hlX2VudHJ5KGNlKTsKQEAgLTQ2NTksNiArNDY1Niw3IEBACiAJc3RydWN0IHBhdGNoICpsaXN0ID0gTlVMTCwgKipsaXN0cCA9ICZsaXN0OwogCWludCBza2lwcGVkX3BhdGNoID0gMDsKIAlpbnQgcmVzID0gMDsKKwlpbnQgZmx1c2hfYXR0cmlidXRlcyA9IDA7CiAKIAlzdGF0ZS0+cGF0Y2hfaW5wdXRfZmlsZSA9IGZpbGVuYW1lOwogCWlmIChyZWFkX3BhdGNoX2ZpbGUoJmJ1ZiwgZmQpIDwgMCkKQEAgLTQ2ODYsNiArNDY4NCwxNCBAQAogCQkJcGF0Y2hfc3RhdHMoc3RhdGUsIHBhdGNoKTsKIAkJCSpsaXN0cCA9IHBhdGNoOwogCQkJbGlzdHAgPSAmcGF0Y2gtPm5leHQ7CisKKwkJCWlmICgocGF0Y2gtPm5ld19uYW1lICYmCisJCQkgICAgIGVuZHNfd2l0aF9wYXRoX2NvbXBvbmVudHMocGF0Y2gtPm5ld19uYW1lLAorCQkJCQkJICAgICAgIEdJVEFUVFJJQlVURVNfRklMRSkpIHx8CisJCQkgICAgKHBhdGNoLT5vbGRfbmFtZSAmJgorCQkJICAgICBlbmRzX3dpdGhfcGF0aF9jb21wb25lbnRzKHBhdGNoLT5vbGRfbmFtZSwKKwkJCQkJCSAgICAgICBHSVRBVFRSSUJVVEVTX0ZJTEUpKSkKKwkJCQlmbHVzaF9hdHRyaWJ1dGVzID0gMTsKIAkJfQogCQllbHNlIHsKIAkJCWlmIChzdGF0ZS0+YXBwbHlfdmVyYm9zaXR5ID4gdmVyYm9zaXR5X25vcm1hbCkKQEAgLTQ3MTIsNyArNDcxOCw4IEBACiAJCQkJCQkgIHN0YXRlLT5pbmRleF9maWxlLAogCQkJCQkJICBMT0NLX0RJRV9PTl9FUlJPUik7CiAJCWVsc2UKLQkJCWhvbGRfbG9ja2VkX2luZGV4KCZzdGF0ZS0+bG9ja19maWxlLCBMT0NLX0RJRV9PTl9FUlJPUik7CisJCQlyZXBvX2hvbGRfbG9ja2VkX2luZGV4KHN0YXRlLT5yZXBvLCAmc3RhdGUtPmxvY2tfZmlsZSwKKwkJCQkJICAgICAgIExPQ0tfRElFX09OX0VSUk9SKTsKIAl9CiAKIAlpZiAoc3RhdGUtPmNoZWNrX2luZGV4ICYmIHJlYWRfYXBwbHlfY2FjaGUoc3RhdGUpIDwgMCkgewpAQCAtNDc2MSw2ICs0NzY4LDggQEAKIAlpZiAoc3RhdGUtPnN1bW1hcnkgJiYgc3RhdGUtPmFwcGx5X3ZlcmJvc2l0eSA+IHZlcmJvc2l0eV9zaWxlbnQpCiAJCXN1bW1hcnlfcGF0Y2hfbGlzdChsaXN0KTsKIAorCWlmIChmbHVzaF9hdHRyaWJ1dGVzKQorCQlyZXNldF9wYXJzZWRfYXR0cmlidXRlcygpOwogZW5kOgogCWZyZWVfcGF0Y2hfbGlzdChsaXN0KTsKIAlzdHJidWZfcmVsZWFzZSgmYnVmKTsKZGlmZiAtLWdpdCBhL2FwcGx5LmggYi9hcHBseS5oCmluZGV4IDU5NDgzNDguLmRhM2Q5NWYgMTAwNjQ0Ci0tLSBhL2FwcGx5LmgKKysrIGIvYXBwbHkuaApAQCAtMSw2ICsxLDcgQEAKICNpZm5kZWYgQVBQTFlfSAogI2RlZmluZSBBUFBMWV9ICiAKKyNpbmNsdWRlICJoYXNoLmgiCiAjaW5jbHVkZSAibG9ja2ZpbGUuaCIKICNpbmNsdWRlICJzdHJpbmctbGlzdC5oIgogCkBAIC0xMTcsNiArMTE4LDQwIEBACiAJaW50IGFwcGxpZWRfYWZ0ZXJfZml4aW5nX3dzOwogfTsKIAorLyoKKyAqIFRoaXMgcmVwcmVzZW50cyBhICJwYXRjaCIgdG8gYSBmaWxlLCBib3RoIG1ldGFpbmZvIGNoYW5nZXMKKyAqIHN1Y2ggYXMgY3JlYXRpb24vZGVsZXRpb24sIGZpbGVtb2RlIGFuZCBjb250ZW50IGNoYW5nZXMgcmVwcmVzZW50ZWQKKyAqIGFzIGEgc2VyaWVzIG9mIGZyYWdtZW50cy4KKyAqLworc3RydWN0IHBhdGNoIHsKKwljaGFyICpuZXdfbmFtZSwgKm9sZF9uYW1lLCAqZGVmX25hbWU7CisJdW5zaWduZWQgaW50IG9sZF9tb2RlLCBuZXdfbW9kZTsKKwlpbnQgaXNfbmV3LCBpc19kZWxldGU7CS8qIC0xID0gdW5rbm93biwgMCA9IGZhbHNlLCAxID0gdHJ1ZSAqLworCWludCByZWplY3RlZDsKKwl1bnNpZ25lZCB3c19ydWxlOworCWludCBsaW5lc19hZGRlZCwgbGluZXNfZGVsZXRlZDsKKwlpbnQgc2NvcmU7CisJaW50IGV4dGVuc2lvbl9saW5lbnI7IC8qIGZpcnN0IGxpbmUgc3BlY2lmeWluZyBkZWxldGUvbmV3L3JlbmFtZS9jb3B5ICovCisJdW5zaWduZWQgaW50IGlzX3RvcGxldmVsX3JlbGF0aXZlOjE7CisJdW5zaWduZWQgaW50IGluYWNjdXJhdGVfZW9mOjE7CisJdW5zaWduZWQgaW50IGlzX2JpbmFyeToxOworCXVuc2lnbmVkIGludCBpc19jb3B5OjE7CisJdW5zaWduZWQgaW50IGlzX3JlbmFtZToxOworCXVuc2lnbmVkIGludCByZWNvdW50OjE7CisJdW5zaWduZWQgaW50IGNvbmZsaWN0ZWRfdGhyZWV3YXk6MTsKKwl1bnNpZ25lZCBpbnQgZGlyZWN0X3RvX3RocmVld2F5OjE7CisJdW5zaWduZWQgaW50IGNybGZfaW5fb2xkOjE7CisJc3RydWN0IGZyYWdtZW50ICpmcmFnbWVudHM7CisJY2hhciAqcmVzdWx0OworCXNpemVfdCByZXN1bHRzaXplOworCWNoYXIgb2xkX29pZF9wcmVmaXhbR0lUX01BWF9IRVhTWiArIDFdOworCWNoYXIgbmV3X29pZF9wcmVmaXhbR0lUX01BWF9IRVhTWiArIDFdOworCXN0cnVjdCBwYXRjaCAqbmV4dDsKKworCS8qIHRocmVlLXdheSBmYWxsYmFjayByZXN1bHQgKi8KKwlzdHJ1Y3Qgb2JqZWN0X2lkIHRocmVld2F5X3N0YWdlWzNdOworfTsKKwogaW50IGFwcGx5X3BhcnNlX29wdGlvbnMoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LAogCQkJc3RydWN0IGFwcGx5X3N0YXRlICpzdGF0ZSwKIAkJCWludCAqZm9yY2VfYXBwbHksIGludCAqb3B0aW9ucywKQEAgLTEyOCw2ICsxNjMsMjAgQEAKIGludCBjaGVja19hcHBseV9zdGF0ZShzdHJ1Y3QgYXBwbHlfc3RhdGUgKnN0YXRlLCBpbnQgZm9yY2VfYXBwbHkpOwogCiAvKgorICogUGFyc2UgYSBnaXQgZGlmZiBoZWFkZXIsIHN0YXJ0aW5nIGF0IGxpbmUuICBGaWxscyB0aGUgcmVsZXZhbnQKKyAqIG1ldGFkYXRhIGluZm9ybWF0aW9uIGluICdzdHJ1Y3QgcGF0Y2gnLgorICoKKyAqIFJldHVybnMgLTEgb24gZmFpbHVyZSwgdGhlIGxlbmd0aCBvZiB0aGUgcGFyc2VkIGhlYWRlciBvdGhlcndpc2UuCisgKi8KK2ludCBwYXJzZV9naXRfZGlmZl9oZWFkZXIoc3RydWN0IHN0cmJ1ZiAqcm9vdCwKKwkJCSAgaW50ICpsaW5lbnIsCisJCQkgIGludCBwX3ZhbHVlLAorCQkJICBjb25zdCBjaGFyICpsaW5lLAorCQkJICBpbnQgbGVuLAorCQkJICB1bnNpZ25lZCBpbnQgc2l6ZSwKKwkJCSAgc3RydWN0IHBhdGNoICpwYXRjaCk7CisKKy8qCiAgKiBTb21lIGFzcGVjdHMgb2YgdGhlIGFwcGx5IGJlaGF2aW9yIGFyZSBjb250cm9sbGVkIGJ5IHRoZSBmb2xsb3dpbmcKICAqIGJpdHMgaW4gdGhlICJvcHRpb25zIiBwYXJhbWV0ZXIgcGFzc2VkIHRvIGFwcGx5X2FsbF9wYXRjaGVzKCkuCiAgKi8KZGlmZiAtLWdpdCBhL2FyY2hpdmUtdGFyLmMgYi9hcmNoaXZlLXRhci5jCmluZGV4IGE1OGUxYTguLjVhNzc3MDEgMTAwNjQ0Ci0tLSBhL2FyY2hpdmUtdGFyLmMKKysrIGIvYXJjaGl2ZS10YXIuYwpAQCAtMTEyLDcgKzExMiw3IEBACiAgKiBxdWV1ZXMgdXAgd3JpdGVzLCBzbyB0aGF0IGFsbCBvdXIgd3JpdGUoMikgY2FsbHMgd3JpdGUgZXhhY3RseSBvbmUKICAqIGZ1bGwgYmxvY2s7IHBhZHMgd3JpdGVzIHRvIFJFQ09SRFNJWkUKICAqLwotc3RhdGljIGludCBzdHJlYW1fYmxvY2tlZChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCitzdGF0aWMgaW50IHN0cmVhbV9ibG9ja2VkKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7CiAJc3RydWN0IGdpdF9pc3RyZWFtICpzdDsKIAllbnVtIG9iamVjdF90eXBlIHR5cGU7CkBAIC0xMjAsNyArMTIwLDcgQEAKIAljaGFyIGJ1ZltCTE9DS1NJWkVdOwogCXNzaXplX3QgcmVhZGxlbjsKIAotCXN0ID0gb3Blbl9pc3RyZWFtKG9pZCwgJnR5cGUsICZzeiwgTlVMTCk7CisJc3QgPSBvcGVuX2lzdHJlYW0ociwgb2lkLCAmdHlwZSwgJnN6LCBOVUxMKTsKIAlpZiAoIXN0KQogCQlyZXR1cm4gZXJyb3IoXygiY2Fubm90IHN0cmVhbSBibG9iICVzIiksIG9pZF90b19oZXgob2lkKSk7CiAJZm9yICg7OykgewpAQCAtMTQyLDE5ICsxNDIsMjUgQEAKICAqIHN0cmluZyBhbmQgYXBwZW5kcyBpdCB0byBhIHN0cnVjdCBzdHJidWYuCiAgKi8KIHN0YXRpYyB2b2lkIHN0cmJ1Zl9hcHBlbmRfZXh0X2hlYWRlcihzdHJ1Y3Qgc3RyYnVmICpzYiwgY29uc3QgY2hhciAqa2V5d29yZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSwgdW5zaWduZWQgaW50IHZhbHVlbGVuKQorCQkJCSAgICAgY29uc3QgY2hhciAqdmFsdWUsIHNpemVfdCB2YWx1ZWxlbikKIHsKLQlpbnQgbGVuLCB0bXA7CisJc2l6ZV90IG9yaWdfbGVuID0gc2ItPmxlbjsKKwlzaXplX3QgbGVuLCB0bXA7CiAKIAkvKiAiJXUgJXM9JXNcbiIgKi8KIAlsZW4gPSAxICsgMSArIHN0cmxlbihrZXl3b3JkKSArIDEgKyB2YWx1ZWxlbiArIDE7Ci0JZm9yICh0bXAgPSBsZW47IHRtcCA+IDk7IHRtcCAvPSAxMCkKKwlmb3IgKHRtcCA9IDE7IGxlbiAvIDEwID49IHRtcDsgdG1wICo9IDEwKQogCQlsZW4rKzsKIAogCXN0cmJ1Zl9ncm93KHNiLCBsZW4pOwotCXN0cmJ1Zl9hZGRmKHNiLCAiJXUgJXM9IiwgbGVuLCBrZXl3b3JkKTsKKwlzdHJidWZfYWRkZihzYiwgIiUiUFJJdU1BWCIgJXM9IiwgKHVpbnRtYXhfdClsZW4sIGtleXdvcmQpOwogCXN0cmJ1Zl9hZGQoc2IsIHZhbHVlLCB2YWx1ZWxlbik7CiAJc3RyYnVmX2FkZGNoKHNiLCAnXG4nKTsKKworCWlmIChsZW4gIT0gc2ItPmxlbiAtIG9yaWdfbGVuKQorCQlCVUcoInBheCBleHRlbmRlZCBoZWFkZXIgbGVuZ3RoIG1pc2NhbGN1bGF0ZWQgYXMgJSJQUkl1TUFYCisJCSAgICAiLCBzaG91bGQgYmUgJSJQUkl1TUFYLAorCQkgICAgKHVpbnRtYXhfdClsZW4sICh1aW50bWF4X3QpKHNiLT5sZW4gLSBvcmlnX2xlbikpOwogfQogCiAvKgpAQCAtMzE4LDcgKzMyNCw3IEBACiAJCWlmIChidWZmZXIpCiAJCQl3cml0ZV9ibG9ja2VkKGJ1ZmZlciwgc2l6ZSk7CiAJCWVsc2UKLQkJCWVyciA9IHN0cmVhbV9ibG9ja2VkKG9pZCk7CisJCQllcnIgPSBzdHJlYW1fYmxvY2tlZChhcmdzLT5yZXBvLCBvaWQpOwogCX0KIAlmcmVlKGJ1ZmZlcik7CiAJcmV0dXJuIGVycjsKQEAgLTMyNiwxNCArMzMyLDE1IEBACiAKIHN0YXRpYyB2b2lkIHdyaXRlX2dsb2JhbF9leHRlbmRlZF9oZWFkZXIoc3RydWN0IGFyY2hpdmVyX2FyZ3MgKmFyZ3MpCiB7Ci0JY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSA9IGFyZ3MtPmNvbW1pdF9zaGExOworCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCA9IGFyZ3MtPmNvbW1pdF9vaWQ7CiAJc3RydWN0IHN0cmJ1ZiBleHRfaGVhZGVyID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHVzdGFyX2hlYWRlciBoZWFkZXI7CiAJdW5zaWduZWQgaW50IG1vZGU7CiAKLQlpZiAoc2hhMSkKKwlpZiAob2lkKQogCQlzdHJidWZfYXBwZW5kX2V4dF9oZWFkZXIoJmV4dF9oZWFkZXIsICJjb21tZW50IiwKLQkJCQkJIHNoYTFfdG9faGV4KHNoYTEpLCA0MCk7CisJCQkJCSBvaWRfdG9faGV4KG9pZCksCisJCQkJCSB0aGVfaGFzaF9hbGdvLT5oZXhzeik7CiAJaWYgKGFyZ3MtPnRpbWUgPiBVU1RBUl9NQVhfTVRJTUUpIHsKIAkJc3RyYnVmX2FwcGVuZF9leHRfaGVhZGVyX3VpbnQoJmV4dF9oZWFkZXIsICJtdGltZSIsCiAJCQkJCSAgICAgIGFyZ3MtPnRpbWUpOwpkaWZmIC0tZ2l0IGEvYXJjaGl2ZS16aXAuYyBiL2FyY2hpdmUtemlwLmMKaW5kZXggMTU1ZWU0YS4uZTlmNDI2MiAxMDA2NDQKLS0tIGEvYXJjaGl2ZS16aXAuYworKysgYi9hcmNoaXZlLXppcC5jCkBAIC0yNCw2ICsyNCwxMSBAQAogI2RlZmluZSBaSVBfU1RSRUFNCSgxIDw8ICAzKQogI2RlZmluZSBaSVBfVVRGOAkoMSA8PCAxMSkKIAorZW51bSB6aXBfbWV0aG9kIHsKKwlaSVBfTUVUSE9EX1NUT1JFID0gMCwKKwlaSVBfTUVUSE9EX0RFRkxBVEUgPSA4Cit9OworCiBzdHJ1Y3QgemlwX2xvY2FsX2hlYWRlciB7CiAJdW5zaWduZWQgY2hhciBtYWdpY1s0XTsKIAl1bnNpZ25lZCBjaGFyIHZlcnNpb25bMl07CkBAIC0yOTEsNyArMjk2LDcgQEAKIAl1bnNpZ25lZCBsb25nIGF0dHIyOwogCXVuc2lnbmVkIGxvbmcgY29tcHJlc3NlZF9zaXplOwogCXVuc2lnbmVkIGxvbmcgY3JjOwotCWludCBtZXRob2Q7CisJZW51bSB6aXBfbWV0aG9kIG1ldGhvZDsKIAl1bnNpZ25lZCBjaGFyICpvdXQ7CiAJdm9pZCAqZGVmbGF0ZWQgPSBOVUxMOwogCXZvaWQgKmJ1ZmZlcjsKQEAgLTMyMCw3ICszMjUsNyBAQAogCX0KIAogCWlmIChTX0lTRElSKG1vZGUpIHx8IFNfSVNHSVRMSU5LKG1vZGUpKSB7Ci0JCW1ldGhvZCA9IDA7CisJCW1ldGhvZCA9IFpJUF9NRVRIT0RfU1RPUkU7CiAJCWF0dHIyID0gMTY7CiAJCW91dCA9IE5VTEw7CiAJCXNpemUgPSAwOwpAQCAtMzMwLDE3ICszMzUsMTggQEAKIAkJZW51bSBvYmplY3RfdHlwZSB0eXBlID0gb2lkX29iamVjdF9pbmZvKGFyZ3MtPnJlcG8sIG9pZCwKIAkJCQkJCQkmc2l6ZSk7CiAKLQkJbWV0aG9kID0gMDsKKwkJbWV0aG9kID0gWklQX01FVEhPRF9TVE9SRTsKIAkJYXR0cjIgPSBTX0lTTE5LKG1vZGUpID8gKChtb2RlIHwgMDc3NykgPDwgMTYpIDoKIAkJCShtb2RlICYgMDExMSkgPyAoKG1vZGUpIDw8IDE2KSA6IDA7CiAJCWlmIChTX0lTTE5LKG1vZGUpIHx8IChtb2RlICYgMDExMSkpCiAJCQljcmVhdG9yX3ZlcnNpb24gPSAweDAzMTc7CiAJCWlmIChTX0lTUkVHKG1vZGUpICYmIGFyZ3MtPmNvbXByZXNzaW9uX2xldmVsICE9IDAgJiYgc2l6ZSA+IDApCi0JCQltZXRob2QgPSA4OworCQkJbWV0aG9kID0gWklQX01FVEhPRF9ERUZMQVRFOwogCiAJCWlmIChTX0lTUkVHKG1vZGUpICYmIHR5cGUgPT0gT0JKX0JMT0IgJiYgIWFyZ3MtPmNvbnZlcnQgJiYKIAkJICAgIHNpemUgPiBiaWdfZmlsZV90aHJlc2hvbGQpIHsKLQkJCXN0cmVhbSA9IG9wZW5faXN0cmVhbShvaWQsICZ0eXBlLCAmc2l6ZSwgTlVMTCk7CisJCQlzdHJlYW0gPSBvcGVuX2lzdHJlYW0oYXJncy0+cmVwbywgb2lkLCAmdHlwZSwgJnNpemUsCisJCQkJCSAgICAgIE5VTEwpOwogCQkJaWYgKCFzdHJlYW0pCiAJCQkJcmV0dXJuIGVycm9yKF8oImNhbm5vdCBzdHJlYW0gYmxvYiAlcyIpLAogCQkJCQkgICAgIG9pZF90b19oZXgob2lkKSk7CkBAIC0zNTgsNyArMzY0LDcgQEAKIAkJCQkJCSAgICBidWZmZXIsIHNpemUpOwogCQkJb3V0ID0gYnVmZmVyOwogCQl9Ci0JCWNvbXByZXNzZWRfc2l6ZSA9IChtZXRob2QgPT0gMCkgPyBzaXplIDogMDsKKwkJY29tcHJlc3NlZF9zaXplID0gKG1ldGhvZCA9PSBaSVBfTUVUSE9EX1NUT1JFKSA/IHNpemUgOiAwOwogCX0gZWxzZSB7CiAJCXJldHVybiBlcnJvcihfKCJ1bnN1cHBvcnRlZCBmaWxlIG1vZGU6IDAlbyAoU0hBMTogJXMpIiksIG1vZGUsCiAJCQkJb2lkX3RvX2hleChvaWQpKTsKQEAgLTM2NywxMyArMzczLDEzIEBACiAJaWYgKGNyZWF0b3JfdmVyc2lvbiA+IG1heF9jcmVhdG9yX3ZlcnNpb24pCiAJCW1heF9jcmVhdG9yX3ZlcnNpb24gPSBjcmVhdG9yX3ZlcnNpb247CiAKLQlpZiAoYnVmZmVyICYmIG1ldGhvZCA9PSA4KSB7CisJaWYgKGJ1ZmZlciAmJiBtZXRob2QgPT0gWklQX01FVEhPRF9ERUZMQVRFKSB7CiAJCW91dCA9IGRlZmxhdGVkID0gemxpYl9kZWZsYXRlX3JhdyhidWZmZXIsIHNpemUsCiAJCQkJCQkgIGFyZ3MtPmNvbXByZXNzaW9uX2xldmVsLAogCQkJCQkJICAmY29tcHJlc3NlZF9zaXplKTsKIAkJaWYgKCFvdXQgfHwgY29tcHJlc3NlZF9zaXplID49IHNpemUpIHsKIAkJCW91dCA9IGJ1ZmZlcjsKLQkJCW1ldGhvZCA9IDA7CisJCQltZXRob2QgPSBaSVBfTUVUSE9EX1NUT1JFOwogCQkJY29tcHJlc3NlZF9zaXplID0gc2l6ZTsKIAkJfQogCX0KQEAgLTQyMCw3ICs0MjYsNyBAQAogCQl6aXBfb2Zmc2V0ICs9IFpJUDY0X0VYVFJBX1NJWkU7CiAJfQogCi0JaWYgKHN0cmVhbSAmJiBtZXRob2QgPT0gMCkgeworCWlmIChzdHJlYW0gJiYgbWV0aG9kID09IFpJUF9NRVRIT0RfU1RPUkUpIHsKIAkJdW5zaWduZWQgY2hhciBidWZbU1RSRUFNX0JVRkZFUl9TSVpFXTsKIAkJc3NpemVfdCByZWFkbGVuOwogCkBAIC00NDMsNyArNDQ5LDcgQEAKIAkJemlwX29mZnNldCArPSBjb21wcmVzc2VkX3NpemU7CiAKIAkJd3JpdGVfemlwX2RhdGFfZGVzYyhzaXplLCBjb21wcmVzc2VkX3NpemUsIGNyYyk7Ci0JfSBlbHNlIGlmIChzdHJlYW0gJiYgbWV0aG9kID09IDgpIHsKKwl9IGVsc2UgaWYgKHN0cmVhbSAmJiBtZXRob2QgPT0gWklQX01FVEhPRF9ERUZMQVRFKSB7CiAJCXVuc2lnbmVkIGNoYXIgYnVmW1NUUkVBTV9CVUZGRVJfU0laRV07CiAJCXNzaXplX3QgcmVhZGxlbjsKIAkJZ2l0X3pzdHJlYW0genN0cmVhbTsKQEAgLTU3Nyw3ICs1ODMsNyBAQAogCXdyaXRlX29yX2RpZSgxLCAmbG9jYXRvcjY0LCBaSVA2NF9ESVJfVFJBSUxFUl9MT0NBVE9SX1NJWkUpOwogfQogCi1zdGF0aWMgdm9pZCB3cml0ZV96aXBfdHJhaWxlcihjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKQorc3RhdGljIHZvaWQgd3JpdGVfemlwX3RyYWlsZXIoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewogCXN0cnVjdCB6aXBfZGlyX3RyYWlsZXIgdHJhaWxlcjsKIAlpbnQgY2xhbXBlZCA9IDA7CkBAIC01OTAsMzEgKzU5NiwzMSBAQAogCWNvcHlfbGUxNl9jbGFtcCh0cmFpbGVyLmVudHJpZXMsIHppcF9kaXJfZW50cmllcywgJmNsYW1wZWQpOwogCWNvcHlfbGUzMih0cmFpbGVyLnNpemUsIHppcF9kaXIubGVuKTsKIAljb3B5X2xlMzJfY2xhbXAodHJhaWxlci5vZmZzZXQsIHppcF9vZmZzZXQsICZjbGFtcGVkKTsKLQljb3B5X2xlMTYodHJhaWxlci5jb21tZW50X2xlbmd0aCwgc2hhMSA/IEdJVF9TSEExX0hFWFNaIDogMCk7CisJY29weV9sZTE2KHRyYWlsZXIuY29tbWVudF9sZW5ndGgsIG9pZCA/IHRoZV9oYXNoX2FsZ28tPmhleHN6IDogMCk7CiAKIAl3cml0ZV9vcl9kaWUoMSwgemlwX2Rpci5idWYsIHppcF9kaXIubGVuKTsKIAlpZiAoY2xhbXBlZCkKIAkJd3JpdGVfemlwNjRfdHJhaWxlcigpOwogCXdyaXRlX29yX2RpZSgxLCAmdHJhaWxlciwgWklQX0RJUl9UUkFJTEVSX1NJWkUpOwotCWlmIChzaGExKQotCQl3cml0ZV9vcl9kaWUoMSwgc2hhMV90b19oZXgoc2hhMSksIEdJVF9TSEExX0hFWFNaKTsKKwlpZiAob2lkKQorCQl3cml0ZV9vcl9kaWUoMSwgb2lkX3RvX2hleChvaWQpLCB0aGVfaGFzaF9hbGdvLT5oZXhzeik7CiB9CiAKIHN0YXRpYyB2b2lkIGRvc190aW1lKHRpbWVzdGFtcF90ICp0aW1lc3RhbXAsIGludCAqZG9zX2RhdGUsIGludCAqZG9zX3RpbWUpCiB7CiAJdGltZV90IHRpbWU7Ci0Jc3RydWN0IHRtICp0OworCXN0cnVjdCB0bSB0bTsKIAogCWlmIChkYXRlX292ZXJmbG93cygqdGltZXN0YW1wKSkKIAkJZGllKF8oInRpbWVzdGFtcCB0b28gbGFyZ2UgZm9yIHRoaXMgc3lzdGVtOiAlIlBSSXRpbWUpLAogCQkgICAgKnRpbWVzdGFtcCk7CiAJdGltZSA9ICh0aW1lX3QpKnRpbWVzdGFtcDsKLQl0ID0gbG9jYWx0aW1lKCZ0aW1lKTsKKwlsb2NhbHRpbWVfcigmdGltZSwgJnRtKTsKIAkqdGltZXN0YW1wID0gdGltZTsKIAotCSpkb3NfZGF0ZSA9IHQtPnRtX21kYXkgKyAodC0+dG1fbW9uICsgMSkgKiAzMiArCi0JICAgICAgICAgICAgKHQtPnRtX3llYXIgKyAxOTAwIC0gMTk4MCkgKiA1MTI7Ci0JKmRvc190aW1lID0gdC0+dG1fc2VjIC8gMiArIHQtPnRtX21pbiAqIDMyICsgdC0+dG1faG91ciAqIDIwNDg7CisJKmRvc19kYXRlID0gdG0udG1fbWRheSArICh0bS50bV9tb24gKyAxKSAqIDMyICsKKwkJICAgICh0bS50bV95ZWFyICsgMTkwMCAtIDE5ODApICogNTEyOworCSpkb3NfdGltZSA9IHRtLnRtX3NlYyAvIDIgKyB0bS50bV9taW4gKiAzMiArIHRtLnRtX2hvdXIgKiAyMDQ4OwogfQogCiBzdGF0aWMgaW50IGFyY2hpdmVfemlwX2NvbmZpZyhjb25zdCBjaGFyICp2YXIsIGNvbnN0IGNoYXIgKnZhbHVlLCB2b2lkICpkYXRhKQpAQCAtNjM1LDcgKzY0MSw3IEBACiAKIAllcnIgPSB3cml0ZV9hcmNoaXZlX2VudHJpZXMoYXJncywgd3JpdGVfemlwX2VudHJ5KTsKIAlpZiAoIWVycikKLQkJd3JpdGVfemlwX3RyYWlsZXIoYXJncy0+Y29tbWl0X3NoYTEpOworCQl3cml0ZV96aXBfdHJhaWxlcihhcmdzLT5jb21taXRfb2lkKTsKIAogCXN0cmJ1Zl9yZWxlYXNlKCZ6aXBfZGlyKTsKIApkaWZmIC0tZ2l0IGEvYXJjaGl2ZS5jIGIvYXJjaGl2ZS5jCmluZGV4IGZkNTU2YzIuLmE4ZGEwZmMgMTAwNjQ0Ci0tLSBhL2FyY2hpdmUuYworKysgYi9hcmNoaXZlLmMKQEAgLTM2LDggKzM2LDggQEAKIH0KIAogc3RhdGljIHZvaWQgZm9ybWF0X3N1YnN0KGNvbnN0IHN0cnVjdCBjb21taXQgKmNvbW1pdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpzcmMsIHNpemVfdCBsZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHN0cmJ1ZiAqYnVmKQorCQkJIGNvbnN0IGNoYXIgKnNyYywgc2l6ZV90IGxlbiwKKwkJCSBzdHJ1Y3Qgc3RyYnVmICpidWYpCiB7CiAJY2hhciAqdG9fZnJlZSA9IE5VTEw7CiAJc3RydWN0IHN0cmJ1ZiBmbXQgPSBTVFJCVUZfSU5JVDsKQEAgLTI4NSw3ICsyODUsOCBAQAogCQlnaXRfYXR0cl9zZXRfZGlyZWN0aW9uKEdJVF9BVFRSX0lOREVYKTsKIAl9CiAKLQllcnIgPSByZWFkX3RyZWVfcmVjdXJzaXZlKGFyZ3MtPnRyZWUsICIiLCAwLCAwLCAmYXJncy0+cGF0aHNwZWMsCisJZXJyID0gcmVhZF90cmVlX3JlY3Vyc2l2ZShhcmdzLT5yZXBvLCBhcmdzLT50cmVlLCAiIiwKKwkJCQkgIDAsIDAsICZhcmdzLT5wYXRoc3BlYywKIAkJCQkgIHF1ZXVlX29yX3dyaXRlX2FyY2hpdmVfZW50cnksCiAJCQkJICAmY29udGV4dCk7CiAJaWYgKGVyciA9PSBSRUFEX1RSRUVfUkVDVVJTSVZFKQpAQCAtMzQ2LDcgKzM0Nyw4IEBACiAJY3R4LmFyZ3MgPSBhcmdzOwogCXBhcnNlX3BhdGhzcGVjKCZjdHgucGF0aHNwZWMsIDAsIDAsICIiLCBwYXRocyk7CiAJY3R4LnBhdGhzcGVjLnJlY3Vyc2l2ZSA9IDE7Ci0JcmV0ID0gcmVhZF90cmVlX3JlY3Vyc2l2ZShhcmdzLT50cmVlLCAiIiwgMCwgMCwgJmN0eC5wYXRoc3BlYywKKwlyZXQgPSByZWFkX3RyZWVfcmVjdXJzaXZlKGFyZ3MtPnJlcG8sIGFyZ3MtPnRyZWUsICIiLAorCQkJCSAgMCwgMCwgJmN0eC5wYXRoc3BlYywKIAkJCQkgIHJlamVjdF9lbnRyeSwgJmN0eCk7CiAJY2xlYXJfcGF0aHNwZWMoJmN0eC5wYXRoc3BlYyk7CiAJcmV0dXJuIHJldCAhPSAwOwpAQCAtMzc4LDcgKzM4MCw3IEBACiAJCWludCByZW1vdGUpCiB7CiAJY29uc3QgY2hhciAqbmFtZSA9IGFyZ3ZbMF07Ci0JY29uc3QgdW5zaWduZWQgY2hhciAqY29tbWl0X3NoYTE7CisJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqY29tbWl0X29pZDsKIAl0aW1lX3QgYXJjaGl2ZV90aW1lOwogCXN0cnVjdCB0cmVlICp0cmVlOwogCWNvbnN0IHN0cnVjdCBjb21taXQgKmNvbW1pdDsKQEAgLTM5MSw0MCArMzkzLDQyIEBACiAJCWludCByZWZuYW1lbGVuID0gY29sb24gLSBuYW1lOwogCiAJCWlmICghZHdpbV9yZWYobmFtZSwgcmVmbmFtZWxlbiwgJm9pZCwgJnJlZikpCi0JCQlkaWUoIm5vIHN1Y2ggcmVmOiAlLipzIiwgcmVmbmFtZWxlbiwgbmFtZSk7CisJCQlkaWUoXygibm8gc3VjaCByZWY6ICUuKnMiKSwgcmVmbmFtZWxlbiwgbmFtZSk7CiAJCWZyZWUocmVmKTsKIAl9CiAKIAlpZiAoZ2V0X29pZChuYW1lLCAmb2lkKSkKLQkJZGllKCJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZSIpOworCQlkaWUoXygibm90IGEgdmFsaWQgb2JqZWN0IG5hbWU6ICVzIiksIG5hbWUpOwogCiAJY29tbWl0ID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfZ2VudGx5KGFyX2FyZ3MtPnJlcG8sICZvaWQsIDEpOwogCWlmIChjb21taXQpIHsKLQkJY29tbWl0X3NoYTEgPSBjb21taXQtPm9iamVjdC5vaWQuaGFzaDsKKwkJY29tbWl0X29pZCA9ICZjb21taXQtPm9iamVjdC5vaWQ7CiAJCWFyY2hpdmVfdGltZSA9IGNvbW1pdC0+ZGF0ZTsKIAl9IGVsc2UgewotCQljb21taXRfc2hhMSA9IE5VTEw7CisJCWNvbW1pdF9vaWQgPSBOVUxMOwogCQlhcmNoaXZlX3RpbWUgPSB0aW1lKE5VTEwpOwogCX0KIAogCXRyZWUgPSBwYXJzZV90cmVlX2luZGlyZWN0KCZvaWQpOwogCWlmICh0cmVlID09IE5VTEwpCi0JCWRpZSgibm90IGEgdHJlZSBvYmplY3QiKTsKKwkJZGllKF8oIm5vdCBhIHRyZWUgb2JqZWN0OiAlcyIpLCBvaWRfdG9faGV4KCZvaWQpKTsKIAogCWlmIChwcmVmaXgpIHsKIAkJc3RydWN0IG9iamVjdF9pZCB0cmVlX29pZDsKLQkJdW5zaWduZWQgaW50IG1vZGU7CisJCXVuc2lnbmVkIHNob3J0IG1vZGU7CiAJCWludCBlcnI7CiAKLQkJZXJyID0gZ2V0X3RyZWVfZW50cnkoJnRyZWUtPm9iamVjdC5vaWQsIHByZWZpeCwgJnRyZWVfb2lkLAorCQllcnIgPSBnZXRfdHJlZV9lbnRyeShhcl9hcmdzLT5yZXBvLAorCQkJCSAgICAgJnRyZWUtPm9iamVjdC5vaWQsCisJCQkJICAgICBwcmVmaXgsICZ0cmVlX29pZCwKIAkJCQkgICAgICZtb2RlKTsKIAkJaWYgKGVyciB8fCAhU19JU0RJUihtb2RlKSkKLQkJCWRpZSgiY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSBpcyB1bnRyYWNrZWQiKTsKKwkJCWRpZShfKCJjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IGlzIHVudHJhY2tlZCIpKTsKIAogCQl0cmVlID0gcGFyc2VfdHJlZV9pbmRpcmVjdCgmdHJlZV9vaWQpOwogCX0KIAlhcl9hcmdzLT50cmVlID0gdHJlZTsKLQlhcl9hcmdzLT5jb21taXRfc2hhMSA9IGNvbW1pdF9zaGExOworCWFyX2FyZ3MtPmNvbW1pdF9vaWQgPSBjb21taXRfb2lkOwogCWFyX2FyZ3MtPmNvbW1pdCA9IGNvbW1pdDsKIAlhcl9hcmdzLT50aW1lID0gYXJjaGl2ZV90aW1lOwogfQpkaWZmIC0tZ2l0IGEvYXJjaGl2ZS5oIGIvYXJjaGl2ZS5oCmluZGV4IDIxYWMwMTAuLmU2MGUzZGQgMTAwNjQ0Ci0tLSBhL2FyY2hpdmUuaAorKysgYi9hcmNoaXZlLmgKQEAgLTExLDcgKzExLDcgQEAKIAljb25zdCBjaGFyICpiYXNlOwogCXNpemVfdCBiYXNlbGVuOwogCXN0cnVjdCB0cmVlICp0cmVlOwotCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmNvbW1pdF9zaGExOworCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmNvbW1pdF9vaWQ7CiAJY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0OwogCXRpbWVzdGFtcF90IHRpbWU7CiAJc3RydWN0IHBhdGhzcGVjIHBhdGhzcGVjOwpAQCAtMjMsOSArMjMsOSBAQAogCiAvKiBtYWluIGFwaSAqLwogCi1leHRlcm4gaW50IHdyaXRlX2FyY2hpdmUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgsCi0JCQkgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCi0JCQkgY29uc3QgY2hhciAqbmFtZV9oaW50LCBpbnQgcmVtb3RlKTsKK2ludCB3cml0ZV9hcmNoaXZlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4LAorCQkgIHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkgIGNvbnN0IGNoYXIgKm5hbWVfaGludCwgaW50IHJlbW90ZSk7CiAKIGNvbnN0IGNoYXIgKmFyY2hpdmVfZm9ybWF0X2Zyb21fZmlsZW5hbWUoY29uc3QgY2hhciAqZmlsZW5hbWUpOwogCkBAIC0zOSwyMSArMzksMjEgQEAKIAl1bnNpZ25lZCBmbGFnczsKIAl2b2lkICpkYXRhOwogfTsKLWV4dGVybiB2b2lkIHJlZ2lzdGVyX2FyY2hpdmVyKHN0cnVjdCBhcmNoaXZlciAqKTsKK3ZvaWQgcmVnaXN0ZXJfYXJjaGl2ZXIoc3RydWN0IGFyY2hpdmVyICopOwogCi1leHRlcm4gdm9pZCBpbml0X3Rhcl9hcmNoaXZlcih2b2lkKTsKLWV4dGVybiB2b2lkIGluaXRfemlwX2FyY2hpdmVyKHZvaWQpOwotZXh0ZXJuIHZvaWQgaW5pdF9hcmNoaXZlcnModm9pZCk7Cit2b2lkIGluaXRfdGFyX2FyY2hpdmVyKHZvaWQpOwordm9pZCBpbml0X3ppcF9hcmNoaXZlcih2b2lkKTsKK3ZvaWQgaW5pdF9hcmNoaXZlcnModm9pZCk7CiAKIHR5cGVkZWYgaW50ICgqd3JpdGVfYXJjaGl2ZV9lbnRyeV9mbl90KShzdHJ1Y3QgYXJjaGl2ZXJfYXJncyAqYXJncywKIAkJCQkJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAogCQkJCQljb25zdCBjaGFyICpwYXRoLCBzaXplX3QgcGF0aGxlbiwKIAkJCQkJdW5zaWduZWQgaW50IG1vZGUpOwogCi1leHRlcm4gaW50IHdyaXRlX2FyY2hpdmVfZW50cmllcyhzdHJ1Y3QgYXJjaGl2ZXJfYXJncyAqYXJncywgd3JpdGVfYXJjaGl2ZV9lbnRyeV9mbl90IHdyaXRlX2VudHJ5KTsKLWV4dGVybiB2b2lkICpvYmplY3RfZmlsZV90b19hcmNoaXZlKGNvbnN0IHN0cnVjdCBhcmNoaXZlcl9hcmdzICphcmdzLAotCQkJCSAgICBjb25zdCBjaGFyICpwYXRoLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCi0JCQkJICAgIHVuc2lnbmVkIGludCBtb2RlLCBlbnVtIG9iamVjdF90eXBlICp0eXBlLAotCQkJCSAgICB1bnNpZ25lZCBsb25nICpzaXplcCk7CitpbnQgd3JpdGVfYXJjaGl2ZV9lbnRyaWVzKHN0cnVjdCBhcmNoaXZlcl9hcmdzICphcmdzLCB3cml0ZV9hcmNoaXZlX2VudHJ5X2ZuX3Qgd3JpdGVfZW50cnkpOwordm9pZCAqb2JqZWN0X2ZpbGVfdG9fYXJjaGl2ZShjb25zdCBzdHJ1Y3QgYXJjaGl2ZXJfYXJncyAqYXJncywKKwkJCSAgICAgY29uc3QgY2hhciAqcGF0aCwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJICAgICB1bnNpZ25lZCBpbnQgbW9kZSwgZW51bSBvYmplY3RfdHlwZSAqdHlwZSwKKwkJCSAgICAgdW5zaWduZWQgbG9uZyAqc2l6ZXApOwogCiAjZW5kaWYJLyogQVJDSElWRV9IICovCmRpZmYgLS1naXQgYS9hcmd2LWFycmF5LmMgYi9hcmd2LWFycmF5LmMKaW5kZXggZjM1MmVhOS4uNjFlZjhjMCAxMDA2NDQKLS0tIGEvYXJndi1hcnJheS5jCisrKyBiL2FyZ3YtYXJyYXkuYwpAQCAtNDYsNyArNDYsNyBAQAogCWNvbnN0IGNoYXIgKmFyZzsKIAogCXZhX3N0YXJ0KGFwLCBhcnJheSk7Ci0Jd2hpbGUoKGFyZyA9IHZhX2FyZyhhcCwgY29uc3QgY2hhciAqKSkpCisJd2hpbGUgKChhcmcgPSB2YV9hcmcoYXAsIGNvbnN0IGNoYXIgKikpKQogCQlhcmd2X2FycmF5X3B1c2goYXJyYXksIGFyZyk7CiAJdmFfZW5kKGFwKTsKIH0KZGlmZiAtLWdpdCBhL2FyZ3YtYXJyYXkuaCBiL2FyZ3YtYXJyYXkuaAppbmRleCBhMzliYTQzLi5hN2QzYjEwIDEwMDY0NAotLS0gYS9hcmd2LWFycmF5LmgKKysrIGIvYXJndi1hcnJheS5oCkBAIC0xLDggKzEsMzIgQEAKICNpZm5kZWYgQVJHVl9BUlJBWV9ICiAjZGVmaW5lIEFSR1ZfQVJSQVlfSAogCisvKioKKyAqIFRoZSBhcmd2LWFycmF5IEFQSSBhbGxvd3Mgb25lIHRvIGR5bmFtaWNhbGx5IGJ1aWxkIGFuZCBzdG9yZQorICogTlVMTC10ZXJtaW5hdGVkIGxpc3RzLiAgQW4gYXJndi1hcnJheSBtYWludGFpbnMgdGhlIGludmFyaWFudCB0aGF0IHRoZQorICogYGFyZ3ZgIG1lbWJlciBhbHdheXMgcG9pbnRzIHRvIGEgbm9uLU5VTEwgYXJyYXksIGFuZCB0aGF0IHRoZSBhcnJheSBpcworICogYWx3YXlzIE5VTEwtdGVybWluYXRlZCBhdCB0aGUgZWxlbWVudCBwb2ludGVkIHRvIGJ5IGBhcmd2W2FyZ2NdYC4gVGhpcworICogbWFrZXMgdGhlIHJlc3VsdCBzdWl0YWJsZSBmb3IgcGFzc2luZyB0byBmdW5jdGlvbnMgZXhwZWN0aW5nIHRvIHJlY2VpdmUKKyAqIGFyZ3YgZnJvbSBtYWluKCkuCisgKgorICogVGhlIHN0cmluZy1saXN0IEFQSSAoZG9jdW1lbnRlZCBpbiBzdHJpbmctbGlzdC5oKSBpcyBzaW1pbGFyLCBidXQgY2Fubm90IGJlCisgKiB1c2VkIGZvciB0aGVzZSBwdXJwb3NlczsgaW5zdGVhZCBvZiBzdG9yaW5nIGEgc3RyYWlnaHQgc3RyaW5nIHBvaW50ZXIsCisgKiBpdCBjb250YWlucyBhbiBpdGVtIHN0cnVjdHVyZSB3aXRoIGEgYHV0aWxgIGZpZWxkIHRoYXQgaXMgbm90IGNvbXBhdGlibGUKKyAqIHdpdGggdGhlIHRyYWRpdGlvbmFsIGFyZ3YgaW50ZXJmYWNlLgorICoKKyAqIEVhY2ggYGFyZ3ZfYXJyYXlgIG1hbmFnZXMgaXRzIG93biBtZW1vcnkuIEFueSBzdHJpbmdzIHB1c2hlZCBpbnRvIHRoZQorICogYXJyYXkgYXJlIGR1cGxpY2F0ZWQsIGFuZCBhbGwgbWVtb3J5IGlzIGZyZWVkIGJ5IGFyZ3ZfYXJyYXlfY2xlYXIoKS4KKyAqLworCiBleHRlcm4gY29uc3QgY2hhciAqZW1wdHlfYXJndltdOwogCisvKioKKyAqIEEgc2luZ2xlIGFycmF5LiBUaGlzIHNob3VsZCBiZSBpbml0aWFsaXplZCBieSBhc3NpZ25tZW50IGZyb20KKyAqIGBBUkdWX0FSUkFZX0lOSVRgLCBvciBieSBjYWxsaW5nIGBhcmd2X2FycmF5X2luaXRgLiBUaGUgYGFyZ3ZgCisgKiBtZW1iZXIgY29udGFpbnMgdGhlIGFjdHVhbCBhcnJheTsgdGhlIGBhcmdjYCBtZW1iZXIgY29udGFpbnMgdGhlCisgKiBudW1iZXIgb2YgZWxlbWVudHMgaW4gdGhlIGFycmF5LCBub3QgaW5jbHVkaW5nIHRoZSB0ZXJtaW5hdGluZworICogTlVMTC4KKyAqLwogc3RydWN0IGFyZ3ZfYXJyYXkgewogCWNvbnN0IGNoYXIgKiphcmd2OwogCWludCBhcmdjOwpAQCAtMTEsMTcgKzM1LDU1IEBACiAKICNkZWZpbmUgQVJHVl9BUlJBWV9JTklUIHsgZW1wdHlfYXJndiwgMCwgMCB9CiAKKy8qKgorICogSW5pdGlhbGl6ZSBhbiBhcnJheS4gVGhpcyBpcyBubyBkaWZmZXJlbnQgdGhhbiBhc3NpZ25pbmcgZnJvbQorICogYEFSR1ZfQVJSQVlfSU5JVGAuCisgKi8KIHZvaWQgYXJndl9hcnJheV9pbml0KHN0cnVjdCBhcmd2X2FycmF5ICopOworCisvKiBQdXNoIGEgY29weSBvZiBhIHN0cmluZyBvbnRvIHRoZSBlbmQgb2YgdGhlIGFycmF5LiAqLwogY29uc3QgY2hhciAqYXJndl9hcnJheV9wdXNoKHN0cnVjdCBhcmd2X2FycmF5ICosIGNvbnN0IGNoYXIgKik7CisKKy8qKgorICogRm9ybWF0IGEgc3RyaW5nIGFuZCBwdXNoIGl0IG9udG8gdGhlIGVuZCBvZiB0aGUgYXJyYXkuIFRoaXMgaXMgYQorICogY29udmVuaWVuY2Ugd3JhcHBlciBjb21iaW5pbmcgYHN0cmJ1Zl9hZGRmYCBhbmQgYGFyZ3ZfYXJyYXlfcHVzaGAuCisgKi8KIF9fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLDIsMykpKQogY29uc3QgY2hhciAqYXJndl9hcnJheV9wdXNoZihzdHJ1Y3QgYXJndl9hcnJheSAqLCBjb25zdCBjaGFyICpmbXQsIC4uLik7CisKKy8qKgorICogUHVzaCBhIGxpc3Qgb2Ygc3RyaW5ncyBvbnRvIHRoZSBlbmQgb2YgdGhlIGFycmF5LiBUaGUgYXJndW1lbnRzCisgKiBzaG91bGQgYmUgYSBsaXN0IG9mIGBjb25zdCBjaGFyICpgIHN0cmluZ3MsIHRlcm1pbmF0ZWQgYnkgYSBOVUxMCisgKiBhcmd1bWVudC4KKyAqLwogTEFTVF9BUkdfTVVTVF9CRV9OVUxMCiB2b2lkIGFyZ3ZfYXJyYXlfcHVzaGwoc3RydWN0IGFyZ3ZfYXJyYXkgKiwgLi4uKTsKKworLyogUHVzaCBhIG51bGwtdGVybWluYXRlZCBhcnJheSBvZiBzdHJpbmdzIG9udG8gdGhlIGVuZCBvZiB0aGUgYXJyYXkuICovCiB2b2lkIGFyZ3ZfYXJyYXlfcHVzaHYoc3RydWN0IGFyZ3ZfYXJyYXkgKiwgY29uc3QgY2hhciAqKik7CisKKy8qKgorICogUmVtb3ZlIHRoZSBmaW5hbCBlbGVtZW50IGZyb20gdGhlIGFycmF5LiBJZiB0aGVyZSBhcmUgbm8KKyAqIGVsZW1lbnRzIGluIHRoZSBhcnJheSwgZG8gbm90aGluZy4KKyAqLwogdm9pZCBhcmd2X2FycmF5X3BvcChzdHJ1Y3QgYXJndl9hcnJheSAqKTsKKwogLyogU3BsaXRzIGJ5IHdoaXRlc3BhY2U7IGRvZXMgbm90IGhhbmRsZSBxdW90ZWQgYXJndW1lbnRzISAqLwogdm9pZCBhcmd2X2FycmF5X3NwbGl0KHN0cnVjdCBhcmd2X2FycmF5ICosIGNvbnN0IGNoYXIgKik7CisKKy8qKgorICogRnJlZSBhbGwgbWVtb3J5IGFzc29jaWF0ZWQgd2l0aCB0aGUgYXJyYXkgYW5kIHJldHVybiBpdCB0byB0aGUKKyAqIGluaXRpYWwsIGVtcHR5IHN0YXRlLgorICovCiB2b2lkIGFyZ3ZfYXJyYXlfY2xlYXIoc3RydWN0IGFyZ3ZfYXJyYXkgKik7CisKKy8qKgorICogRGlzY29ubmVjdCB0aGUgYGFyZ3ZgIG1lbWJlciBmcm9tIHRoZSBgYXJndl9hcnJheWAgc3RydWN0IGFuZAorICogcmV0dXJuIGl0LiBUaGUgY2FsbGVyIGlzIHJlc3BvbnNpYmxlIGZvciBmcmVlaW5nIHRoZSBtZW1vcnkgdXNlZAorICogYnkgdGhlIGFycmF5LCBhbmQgYnkgdGhlIHN0cmluZ3MgaXQgcmVmZXJlbmNlcy4gQWZ0ZXIgZGV0YWNoaW5nLAorICogdGhlIGBhcmd2X2FycmF5YCBpcyBpbiBhIHJlaW5pdGlhbGl6ZWQgc3RhdGUgYW5kIGNhbiBiZSBwdXNoZWQKKyAqIGludG8gYWdhaW4uCisgKi8KIGNvbnN0IGNoYXIgKiphcmd2X2FycmF5X2RldGFjaChzdHJ1Y3QgYXJndl9hcnJheSAqKTsKIAogI2VuZGlmIC8qIEFSR1ZfQVJSQVlfSCAqLwpkaWZmIC0tZ2l0IGEvYXR0ci5jIGIvYXR0ci5jCmluZGV4IGVhZWNlNjYuLmE4MjZiMmUgMTAwNjQ0Ci0tLSBhL2F0dHIuYworKysgYi9hdHRyLmMKQEAgLTEsMTMgKzEsMTEgQEAKIC8qCiAgKiBIYW5kbGUgZ2l0IGF0dHJpYnV0ZXMuICBTZWUgZ2l0YXR0cmlidXRlcyg1KSBmb3IgYSBkZXNjcmlwdGlvbiBvZgotICogdGhlIGZpbGUgc3ludGF4LCBhbmQgRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLWdpdGF0dHJpYnV0ZXMudHh0Ci0gKiBmb3IgYSBkZXNjcmlwdGlvbiBvZiB0aGUgQVBJLgorICogdGhlIGZpbGUgc3ludGF4LCBhbmQgYXR0ci5oIGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZSBBUEkuCiAgKgogICogT25lIGJhc2ljIGRlc2lnbiBkZWNpc2lvbiBoZXJlIGlzIHRoYXQgd2UgYXJlIG5vdCBnb2luZyB0byBzdXBwb3J0CiAgKiBhbiBpbnNhbmVseSBsYXJnZSBudW1iZXIgb2YgYXR0cmlidXRlcy4KICAqLwogCi0jZGVmaW5lIE5PX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiZXhlYy1jbWQuaCIKQEAgLTYzLDcgKzYxLDcgQEAKIAogLyogVGhlIGNvbnRhaW5lciBmb3Igb2JqZWN0cyBzdG9yZWQgaW4gInN0cnVjdCBhdHRyX2hhc2htYXAiICovCiBzdHJ1Y3QgYXR0cl9oYXNoX2VudHJ5IHsKLQlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSBlbnQ7IC8qIG11c3QgYmUgdGhlIGZpcnN0IG1lbWJlciEgKi8KKwlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSBlbnQ7CiAJY29uc3QgY2hhciAqa2V5OyAvKiB0aGUga2V5OyBtZW1vcnkgc2hvdWxkIGJlIG93bmVkIGJ5IHZhbHVlICovCiAJc2l6ZV90IGtleWxlbjsgLyogbGVuZ3RoIG9mIHRoZSBrZXkgKi8KIAl2b2lkICp2YWx1ZTsgLyogdGhlIHN0b3JlZCB2YWx1ZSAqLwpAQCAtNzEsMTIgKzY5LDE0IEBACiAKIC8qIGF0dHJfaGFzaG1hcCBjb21wYXJpc29uIGZ1bmN0aW9uICovCiBzdGF0aWMgaW50IGF0dHJfaGFzaF9lbnRyeV9jbXAoY29uc3Qgdm9pZCAqdW51c2VkX2NtcF9kYXRhLAotCQkJICAgICAgIGNvbnN0IHZvaWQgKmVudHJ5LAotCQkJICAgICAgIGNvbnN0IHZvaWQgKmVudHJ5X29yX2tleSwKKwkJCSAgICAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJCSAgICAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAogCQkJICAgICAgIGNvbnN0IHZvaWQgKnVudXNlZF9rZXlkYXRhKQogewotCWNvbnN0IHN0cnVjdCBhdHRyX2hhc2hfZW50cnkgKmEgPSBlbnRyeTsKLQljb25zdCBzdHJ1Y3QgYXR0cl9oYXNoX2VudHJ5ICpiID0gZW50cnlfb3Jfa2V5OworCWNvbnN0IHN0cnVjdCBhdHRyX2hhc2hfZW50cnkgKmEsICpiOworCisJYSA9IGNvbnRhaW5lcl9vZihlcHRyLCBjb25zdCBzdHJ1Y3QgYXR0cl9oYXNoX2VudHJ5LCBlbnQpOworCWIgPSBjb250YWluZXJfb2YoZW50cnlfb3Jfa2V5LCBjb25zdCBzdHJ1Y3QgYXR0cl9oYXNoX2VudHJ5LCBlbnQpOwogCXJldHVybiAoYS0+a2V5bGVuICE9IGItPmtleWxlbikgfHwgc3RybmNtcChhLT5rZXksIGItPmtleSwgYS0+a2V5bGVuKTsKIH0KIApAQCAtOTksMTAgKzk5LDEwIEBACiAJaWYgKCFtYXAtPm1hcC50YWJsZXNpemUpCiAJCWF0dHJfaGFzaG1hcF9pbml0KG1hcCk7CiAKLQloYXNobWFwX2VudHJ5X2luaXQoJmssIG1lbWhhc2goa2V5LCBrZXlsZW4pKTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmsuZW50LCBtZW1oYXNoKGtleSwga2V5bGVuKSk7CiAJay5rZXkgPSBrZXk7CiAJay5rZXlsZW4gPSBrZXlsZW47Ci0JZSA9IGhhc2htYXBfZ2V0KCZtYXAtPm1hcCwgJmssIE5VTEwpOworCWUgPSBoYXNobWFwX2dldF9lbnRyeSgmbWFwLT5tYXAsICZrLCBlbnQsIE5VTEwpOwogCiAJcmV0dXJuIGUgPyBlLT52YWx1ZSA6IE5VTEw7CiB9CkBAIC0xMTgsMTIgKzExOCwxMiBAQAogCQlhdHRyX2hhc2htYXBfaW5pdChtYXApOwogCiAJZSA9IHhtYWxsb2Moc2l6ZW9mKHN0cnVjdCBhdHRyX2hhc2hfZW50cnkpKTsKLQloYXNobWFwX2VudHJ5X2luaXQoZSwgbWVtaGFzaChrZXksIGtleWxlbikpOworCWhhc2htYXBfZW50cnlfaW5pdCgmZS0+ZW50LCBtZW1oYXNoKGtleSwga2V5bGVuKSk7CiAJZS0+a2V5ID0ga2V5OwogCWUtPmtleWxlbiA9IGtleWxlbjsKIAllLT52YWx1ZSA9IHZhbHVlOwogCi0JaGFzaG1hcF9hZGQoJm1hcC0+bWFwLCBlKTsKKwloYXNobWFwX2FkZCgmbWFwLT5tYXAsICZlLT5lbnQpOwogfQogCiBzdHJ1Y3QgYWxsX2F0dHJzX2l0ZW0gewpAQCAtMTYyLDEyICsxNjIsMTIgQEAKIAlpZiAoc2l6ZSAhPSBjaGVjay0+YWxsX2F0dHJzX25yKSB7CiAJCXN0cnVjdCBhdHRyX2hhc2hfZW50cnkgKmU7CiAJCXN0cnVjdCBoYXNobWFwX2l0ZXIgaXRlcjsKLQkJaGFzaG1hcF9pdGVyX2luaXQoJm1hcC0+bWFwLCAmaXRlcik7CiAKIAkJUkVBTExPQ19BUlJBWShjaGVjay0+YWxsX2F0dHJzLCBzaXplKTsKIAkJY2hlY2stPmFsbF9hdHRyc19uciA9IHNpemU7CiAKLQkJd2hpbGUgKChlID0gaGFzaG1hcF9pdGVyX25leHQoJml0ZXIpKSkgeworCQloYXNobWFwX2Zvcl9lYWNoX2VudHJ5KCZtYXAtPm1hcCwgJml0ZXIsIGUsCisJCQkJCWVudCAvKiBtZW1iZXIgbmFtZSAqLykgewogCQkJY29uc3Qgc3RydWN0IGdpdF9hdHRyICphID0gZS0+dmFsdWU7CiAJCQljaGVjay0+YWxsX2F0dHJzW2EtPmF0dHJfbnJdLmF0dHIgPSBhOwogCQl9CkBAIC0yNjAsNyArMjYwLDcgQEAKIAljb25zdCBjaGFyICpwYXR0ZXJuOwogCWludCBwYXR0ZXJubGVuOwogCWludCBub3dpbGRjYXJkbGVuOwotCXVuc2lnbmVkIGZsYWdzOwkJLyogRVhDX0ZMQUdfKiAqLworCXVuc2lnbmVkIGZsYWdzOwkJLyogUEFUVEVSTl9GTEFHXyogKi8KIH07CiAKIC8qCkBAIC0zNjYsOCArMzY2LDggQEAKIAlpZiAoc3RybGVuKEFUVFJJQlVURV9NQUNST19QUkVGSVgpIDwgbmFtZWxlbiAmJgogCSAgICBzdGFydHNfd2l0aChuYW1lLCBBVFRSSUJVVEVfTUFDUk9fUFJFRklYKSkgewogCQlpZiAoIW1hY3JvX29rKSB7Ci0JCQlmcHJpbnRmKHN0ZGVyciwgIiVzIG5vdCBhbGxvd2VkOiAlczolZFxuIiwKLQkJCQluYW1lLCBzcmMsIGxpbmVubyk7CisJCQlmcHJpbnRmX2xuKHN0ZGVyciwgXygiJXMgbm90IGFsbG93ZWQ6ICVzOiVkIiksCisJCQkJICAgbmFtZSwgc3JjLCBsaW5lbm8pOwogCQkJZ290byBmYWlsX3JldHVybjsKIAkJfQogCQlpc19tYWNybyA9IDE7CkBAIC00MDEsMTEgKzQwMSwxMSBAQAogCQljaGFyICpwID0gKGNoYXIgKikmKHJlcy0+c3RhdGVbbnVtX2F0dHJdKTsKIAkJbWVtY3B5KHAsIG5hbWUsIG5hbWVsZW4pOwogCQlyZXMtPnUucGF0LnBhdHRlcm4gPSBwOwotCQlwYXJzZV9leGNsdWRlX3BhdHRlcm4oJnJlcy0+dS5wYXQucGF0dGVybiwKKwkJcGFyc2VfcGF0aF9wYXR0ZXJuKCZyZXMtPnUucGF0LnBhdHRlcm4sCiAJCQkJICAgICAgJnJlcy0+dS5wYXQucGF0dGVybmxlbiwKIAkJCQkgICAgICAmcmVzLT51LnBhdC5mbGFncywKIAkJCQkgICAgICAmcmVzLT51LnBhdC5ub3dpbGRjYXJkbGVuKTsKLQkJaWYgKHJlcy0+dS5wYXQuZmxhZ3MgJiBFWENfRkxBR19ORUdBVElWRSkgeworCQlpZiAocmVzLT51LnBhdC5mbGFncyAmIFBBVFRFUk5fRkxBR19ORUdBVElWRSkgewogCQkJd2FybmluZyhfKCJOZWdhdGl2ZSBwYXR0ZXJucyBhcmUgaWdub3JlZCBpbiBnaXQgYXR0cmlidXRlc1xuIgogCQkJCSAgIlVzZSAnXFwhJyBmb3IgbGl0ZXJhbCBsZWFkaW5nIGV4Y2xhbWF0aW9uLiIpKTsKIAkJCWdvdG8gZmFpbF9yZXR1cm47CkBAIC00MzIsMTQgKzQzMiwxNCBAQAogICogTGlrZSBpbmZvL2V4Y2x1ZGUgYW5kIC5naXRpZ25vcmUsIHRoZSBhdHRyaWJ1dGUgaW5mb3JtYXRpb24gY2FuCiAgKiBjb21lIGZyb20gbWFueSBwbGFjZXMuCiAgKgotICogKDEpIC5naXRhdHRyaWJ1dGUgZmlsZSBvZiB0aGUgc2FtZSBkaXJlY3Rvcnk7Ci0gKiAoMikgLmdpdGF0dHJpYnV0ZSBmaWxlIG9mIHRoZSBwYXJlbnQgZGlyZWN0b3J5IGlmICgxKSBkb2VzIG5vdCBoYXZlCisgKiAoMSkgLmdpdGF0dHJpYnV0ZXMgZmlsZSBvZiB0aGUgc2FtZSBkaXJlY3Rvcnk7CisgKiAoMikgLmdpdGF0dHJpYnV0ZXMgZmlsZSBvZiB0aGUgcGFyZW50IGRpcmVjdG9yeSBpZiAoMSkgZG9lcyBub3QgaGF2ZQogICogICAgICBhbnkgbWF0Y2g7IHRoaXMgZ29lcyByZWN1cnNpdmVseSB1cHdhcmRzLCBqdXN0IGxpa2UgLmdpdGlnbm9yZS4KICAqICgzKSAkR0lUX0RJUi9pbmZvL2F0dHJpYnV0ZXMsIHdoaWNoIG92ZXJyaWRlcyBib3RoIG9mIHRoZSBhYm92ZS4KICAqCiAgKiBJbiB0aGUgc2FtZSBmaWxlLCBsYXRlciBlbnRyaWVzIG92ZXJyaWRlIHRoZSBlYXJsaWVyIG1hdGNoLCBzbyBpbiB0aGUKICAqIGdsb2JhbCBsaXN0LCB3ZSB3b3VsZCBoYXZlIGVudHJpZXMgZnJvbSBpbmZvL2F0dHJpYnV0ZXMgdGhlIGVhcmxpZXN0Ci0gKiAocmVhZGluZyB0aGUgZmlsZSBmcm9tIHRvcCB0byBib3R0b20pLCAuZ2l0YXR0cmlidXRlIG9mIHRoZSByb290CisgKiAocmVhZGluZyB0aGUgZmlsZSBmcm9tIHRvcCB0byBib3R0b20pLCAuZ2l0YXR0cmlidXRlcyBvZiB0aGUgcm9vdAogICogZGlyZWN0b3J5IChhZ2FpbiwgcmVhZGluZyB0aGUgZmlsZSBmcm9tIHRvcCB0byBib3R0b20pIGRvd24gdG8gdGhlCiAgKiBjdXJyZW50IGRpcmVjdG9yeSwgYW5kIHRoZW4gc2NhbiB0aGUgbGlzdCBiYWNrd2FyZHMgdG8gZmluZCB0aGUgZmlyc3QgbWF0Y2guCiAgKiBUaGlzIGlzIGV4YWN0bHkgdGhlIHNhbWUgYXMgd2hhdCBpc19leGNsdWRlZCgpIGRvZXMgaW4gZGlyLmMgdG8gZGVhbCB3aXRoCkBAIC05MDAsNyArOTAwLDcgQEAKIAkgKiBzZXQgb2YgYXR0cmlidXRlIGRlZmluaXRpb25zLCBmb2xsb3dlZCBieSB0aGUgY29udGVudHMKIAkgKiBvZiAkKHByZWZpeCkvZXRjL2dpdGF0dHJpYnV0ZXMgYW5kIGEgZmlsZSBzcGVjaWZpZWQgYnkKIAkgKiBjb3JlLmF0dHJpYnV0ZXNmaWxlLiAgVGhlbiwgY29udGVudHMgZnJvbQotCSAqIC5naXRhdHRyaWJ1dGUgZmlsZXMgZnJvbSBkaXJlY3RvcmllcyBjbG9zZXIgdG8gdGhlCisJICogLmdpdGF0dHJpYnV0ZXMgZmlsZXMgZnJvbSBkaXJlY3RvcmllcyBjbG9zZXIgdG8gdGhlCiAJICogcm9vdCB0byB0aGUgb25lcyBpbiBkZWVwZXIgZGlyZWN0b3JpZXMgYXJlIHB1c2hlZAogCSAqIHRvIHRoZSBzdGFjay4gIEZpbmFsbHksIGF0IHRoZSB2ZXJ5IHRvcCBvZiB0aGUgc3RhY2sKIAkgKiB3ZSBhbHdheXMga2VlcCB0aGUgY29udGVudHMgb2YgJEdJVF9ESVIvaW5mby9hdHRyaWJ1dGVzLgpAQCAtOTkyLDEwICs5OTIsMTAgQEAKIAlpbnQgcHJlZml4ID0gcGF0LT5ub3dpbGRjYXJkbGVuOwogCWludCBpc2RpciA9IChwYXRobGVuICYmIHBhdGhuYW1lW3BhdGhsZW4gLSAxXSA9PSAnLycpOwogCi0JaWYgKChwYXQtPmZsYWdzICYgRVhDX0ZMQUdfTVVTVEJFRElSKSAmJiAhaXNkaXIpCisJaWYgKChwYXQtPmZsYWdzICYgUEFUVEVSTl9GTEFHX01VU1RCRURJUikgJiYgIWlzZGlyKQogCQlyZXR1cm4gMDsKIAotCWlmIChwYXQtPmZsYWdzICYgRVhDX0ZMQUdfTk9ESVIpIHsKKwlpZiAocGF0LT5mbGFncyAmIFBBVFRFUk5fRkxBR19OT0RJUikgewogCQlyZXR1cm4gbWF0Y2hfYmFzZW5hbWUocGF0aG5hbWUgKyBiYXNlbmFtZV9vZmZzZXQsCiAJCQkJICAgICAgcGF0aGxlbiAtIGJhc2VuYW1lX29mZnNldCAtIGlzZGlyLAogCQkJCSAgICAgIHBhdHRlcm4sIHByZWZpeCwKQEAgLTEwOTIsNyArMTA5Miw3IEBACiAJCQkgICAgICAgY29uc3QgY2hhciAqcGF0aCwKIAkJCSAgICAgICBzdHJ1Y3QgYXR0cl9jaGVjayAqY2hlY2spCiB7Ci0JaW50IGksIHBhdGhsZW4sIHJlbSwgZGlybGVuOworCWludCBwYXRobGVuLCByZW0sIGRpcmxlbjsKIAljb25zdCBjaGFyICpjcCwgKmxhc3Rfc2xhc2ggPSBOVUxMOwogCWludCBiYXNlbmFtZV9vZmZzZXQ7CiAKQEAgLTExMTMsMjAgKzExMTMsNiBAQAogCWFsbF9hdHRyc19pbml0KCZnX2F0dHJfaGFzaG1hcCwgY2hlY2spOwogCWRldGVybWluZV9tYWNyb3MoY2hlY2stPmFsbF9hdHRycywgY2hlY2stPnN0YWNrKTsKIAotCWlmIChjaGVjay0+bnIpIHsKLQkJcmVtID0gMDsKLQkJZm9yIChpID0gMDsgaSA8IGNoZWNrLT5ucjsgaSsrKSB7Ci0JCQlpbnQgbiA9IGNoZWNrLT5pdGVtc1tpXS5hdHRyLT5hdHRyX25yOwotCQkJc3RydWN0IGFsbF9hdHRyc19pdGVtICppdGVtID0gJmNoZWNrLT5hbGxfYXR0cnNbbl07Ci0JCQlpZiAoaXRlbS0+bWFjcm8pIHsKLQkJCQlpdGVtLT52YWx1ZSA9IEFUVFJfX1VOU0VUOwotCQkJCXJlbSsrOwotCQkJfQotCQl9Ci0JCWlmIChyZW0gPT0gY2hlY2stPm5yKQotCQkJcmV0dXJuOwotCX0KLQogCXJlbSA9IGNoZWNrLT5hbGxfYXR0cnNfbnI7CiAJZmlsbChwYXRoLCBwYXRobGVuLCBiYXNlbmFtZV9vZmZzZXQsIGNoZWNrLT5zdGFjaywgY2hlY2stPmFsbF9hdHRycywgcmVtKTsKIH0KZGlmZiAtLWdpdCBhL2F0dHIuaCBiL2F0dHIuaAppbmRleCBiMDM3OGJmLi40MDQ1NDhmIDEwMDY0NAotLS0gYS9hdHRyLmgKKysrIGIvYXR0ci5oCkBAIC0xLDkgKzEsMTIxIEBACiAjaWZuZGVmIEFUVFJfSAogI2RlZmluZSBBVFRSX0gKIAorLyoqCisgKiBnaXRhdHRyaWJ1dGVzIG1lY2hhbmlzbSBnaXZlcyBhIHVuaWZvcm0gd2F5IHRvIGFzc29jaWF0ZSB2YXJpb3VzIGF0dHJpYnV0ZXMKKyAqIHRvIHNldCBvZiBwYXRocy4KKyAqCisgKgorICogUXVlcnlpbmcgU3BlY2lmaWMgQXR0cmlidXRlcworICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICoKKyAqIC0gUHJlcGFyZSBgc3RydWN0IGF0dHJfY2hlY2tgIHVzaW5nIGF0dHJfY2hlY2tfaW5pdGwoKSBmdW5jdGlvbiwgZW51bWVyYXRpbmcKKyAqICAgdGhlIG5hbWVzIG9mIGF0dHJpYnV0ZXMgd2hvc2UgdmFsdWVzIHlvdSBhcmUgaW50ZXJlc3RlZCBpbiwgdGVybWluYXRlZCB3aXRoCisgKiAgIGEgTlVMTCBwb2ludGVyLiAgQWx0ZXJuYXRpdmVseSwgYW4gZW1wdHkgYHN0cnVjdCBhdHRyX2NoZWNrYCBjYW4gYmUKKyAqICAgcHJlcGFyZWQgYnkgY2FsbGluZyBgYXR0cl9jaGVja19hbGxvYygpYCBmdW5jdGlvbiBhbmQgdGhlbiBhdHRyaWJ1dGVzIHlvdQorICogICB3YW50IHRvIGFzayBhYm91dCBjYW4gYmUgYWRkZWQgdG8gaXQgd2l0aCBgYXR0cl9jaGVja19hcHBlbmQoKWAgZnVuY3Rpb24uCisgKgorICogLSBDYWxsIGBnaXRfY2hlY2tfYXR0cigpYCB0byBjaGVjayB0aGUgYXR0cmlidXRlcyBmb3IgdGhlIHBhdGguCisgKgorICogLSBJbnNwZWN0IGBhdHRyX2NoZWNrYCBzdHJ1Y3R1cmUgdG8gc2VlIGhvdyBlYWNoIG9mIHRoZSBhdHRyaWJ1dGUgaW4gdGhlCisgKiAgIGFycmF5IGlzIGRlZmluZWQgZm9yIHRoZSBwYXRoLgorICoKKyAqCisgKiBFeGFtcGxlCisgKiAtLS0tLS0tCisgKgorICogVG8gc2VlIGhvdyBhdHRyaWJ1dGVzICJjcmxmIiBhbmQgImlkZW50IiBhcmUgc2V0IGZvciBkaWZmZXJlbnQgcGF0aHMuCisgKgorICogLSBQcmVwYXJlIGEgYHN0cnVjdCBhdHRyX2NoZWNrYCB3aXRoIHR3byBlbGVtZW50cyAoYmVjYXVzZSB3ZSBhcmUgY2hlY2tpbmcKKyAqICAgdHdvIGF0dHJpYnV0ZXMpOgorICoKKyAqIC0tLS0tLS0tLS0tLQorICogc3RhdGljIHN0cnVjdCBhdHRyX2NoZWNrICpjaGVjazsKKyAqIHN0YXRpYyB2b2lkIHNldHVwX2NoZWNrKHZvaWQpCisgKiB7CisgKiAJaWYgKGNoZWNrKQorICogCQlyZXR1cm47IC8vIGFscmVhZHkgZG9uZQorICogY2hlY2sgPSBhdHRyX2NoZWNrX2luaXRsKCJjcmxmIiwgImlkZW50IiwgTlVMTCk7CisgKiB9CisgKiAtLS0tLS0tLS0tLS0KKyAqCisgKiAtIENhbGwgYGdpdF9jaGVja19hdHRyKClgIHdpdGggdGhlIHByZXBhcmVkIGBzdHJ1Y3QgYXR0cl9jaGVja2A6CisgKgorICogLS0tLS0tLS0tLS0tCisgKiBjb25zdCBjaGFyICpwYXRoOworICoKKyAqIHNldHVwX2NoZWNrKCk7CisgKiBnaXRfY2hlY2tfYXR0cihwYXRoLCBjaGVjayk7CisgKiAtLS0tLS0tLS0tLS0KKyAqCisgKiAtIEFjdCBvbiBgLnZhbHVlYCBtZW1iZXIgb2YgdGhlIHJlc3VsdCwgbGVmdCBpbiBgY2hlY2stPml0ZW1zW11gOgorICoKKyAqIC0tLS0tLS0tLS0tLQorICogY29uc3QgY2hhciAqdmFsdWUgPSBjaGVjay0+aXRlbXNbMF0udmFsdWU7CisgKgorICogaWYgKEFUVFJfVFJVRSh2YWx1ZSkpIHsKKyAqIFRoZSBhdHRyaWJ1dGUgaXMgU2V0LCBieSBsaXN0aW5nIG9ubHkgdGhlIG5hbWUgb2YgdGhlCisgKiBhdHRyaWJ1dGUgaW4gdGhlIGdpdGF0dHJpYnV0ZXMgZmlsZSBmb3IgdGhlIHBhdGguCisgKiB9IGVsc2UgaWYgKEFUVFJfRkFMU0UodmFsdWUpKSB7CisgKiBUaGUgYXR0cmlidXRlIGlzIFVuc2V0LCBieSBsaXN0aW5nIHRoZSBuYW1lIG9mIHRoZQorICogICAgICAgICBhdHRyaWJ1dGUgcHJlZml4ZWQgd2l0aCBhIGRhc2ggLSBmb3IgdGhlIHBhdGguCisgKiB9IGVsc2UgaWYgKEFUVFJfVU5TRVQodmFsdWUpKSB7CisgKiBUaGUgYXR0cmlidXRlIGlzIG5laXRoZXIgc2V0IG5vciB1bnNldCBmb3IgdGhlIHBhdGguCisgKiB9IGVsc2UgaWYgKCFzdHJjbXAodmFsdWUsICJpbnB1dCIpKSB7CisgKiBJZiBub25lIG9mIEFUVFJfVFJVRSgpLCBBVFRSX0ZBTFNFKCksIG9yIEFUVFJfVU5TRVQoKSBpcworICogICAgICAgICB0cnVlLCB0aGUgdmFsdWUgaXMgYSBzdHJpbmcgc2V0IGluIHRoZSBnaXRhdHRyaWJ1dGVzCisgKiBmaWxlIGZvciB0aGUgcGF0aCBieSBzYXlpbmcgImF0dHI9dmFsdWUiLgorICogfSBlbHNlIGlmICguLi4gb3RoZXIgY2hlY2sgdXNpbmcgdmFsdWUgYXMgc3RyaW5nIC4uLikgeworICogLi4uCisgKiB9CisgKiAtLS0tLS0tLS0tLS0KKyAqCisgKiBUbyBzZWUgaG93IGF0dHJpYnV0ZXMgaW4gYXJndltdIGFyZSBzZXQgZm9yIGRpZmZlcmVudCBwYXRocywgb25seQorICogdGhlIGZpcnN0IHN0ZXAgaW4gdGhlIGFib3ZlIHdvdWxkIGJlIGRpZmZlcmVudC4KKyAqCisgKiAtLS0tLS0tLS0tLS0KKyAqIHN0YXRpYyBzdHJ1Y3QgYXR0cl9jaGVjayAqY2hlY2s7CisgKiBzdGF0aWMgdm9pZCBzZXR1cF9jaGVjayhjb25zdCBjaGFyICoqYXJndikKKyAqIHsKKyAqICAgICBjaGVjayA9IGF0dHJfY2hlY2tfYWxsb2MoKTsKKyAqICAgICB3aGlsZSAoKmFyZ3YpIHsKKyAqICAgICAgICAgc3RydWN0IGdpdF9hdHRyICphdHRyID0gZ2l0X2F0dHIoKmFyZ3YpOworICogICAgICAgICBhdHRyX2NoZWNrX2FwcGVuZChjaGVjaywgYXR0cik7CisgKiAgICAgICAgIGFyZ3YrKzsKKyAqICAgICB9CisgKiB9CisgKiAtLS0tLS0tLS0tLS0KKyAqCisgKgorICogUXVlcnlpbmcgQWxsIEF0dHJpYnV0ZXMKKyAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKgorICogVG8gZ2V0IHRoZSB2YWx1ZXMgb2YgYWxsIGF0dHJpYnV0ZXMgYXNzb2NpYXRlZCB3aXRoIGEgZmlsZToKKyAqCisgKiAtIFByZXBhcmUgYW4gZW1wdHkgYGF0dHJfY2hlY2tgIHN0cnVjdHVyZSBieSBjYWxsaW5nIGBhdHRyX2NoZWNrX2FsbG9jKClgLgorICoKKyAqIC0gQ2FsbCBgZ2l0X2FsbF9hdHRycygpYCwgd2hpY2ggcG9wdWxhdGVzIHRoZSBgYXR0cl9jaGVja2Agd2l0aCB0aGUKKyAqIGF0dHJpYnV0ZXMgYXR0YWNoZWQgdG8gdGhlIHBhdGguCisgKgorICogLSBJdGVyYXRlIG92ZXIgdGhlIGBhdHRyX2NoZWNrLml0ZW1zW11gIGFycmF5IHRvIGV4YW1pbmUgdGhlIGF0dHJpYnV0ZQorICogbmFtZXMgYW5kIHZhbHVlcy4gVGhlIG5hbWUgb2YgdGhlIGF0dHJpYnV0ZSBkZXNjcmliZWQgYnkgYW4KKyAqIGBhdHRyX2NoZWNrLml0ZW1zW11gIG9iamVjdCBjYW4gYmUgcmV0cmlldmVkIHZpYQorICogYGdpdF9hdHRyX25hbWUoY2hlY2stPml0ZW1zW2ldLmF0dHIpYC4gKFBsZWFzZSBub3RlIHRoYXQgbm8gaXRlbXMgd2lsbCBiZQorICogcmV0dXJuZWQgZm9yIHVuc2V0IGF0dHJpYnV0ZXMsIHNvIGBBVFRSX1VOU0VUKClgIHdpbGwgcmV0dXJuIGZhbHNlIGZvciBhbGwKKyAqIHJldHVybmVkIGBhdHRyX2NoZWNrLml0ZW1zW11gIG9iamVjdHMuKQorICoKKyAqIC0gRnJlZSB0aGUgYGF0dHJfY2hlY2tgIHN0cnVjdCBieSBjYWxsaW5nIGBhdHRyX2NoZWNrX2ZyZWUoKWAuCisgKi8KKwogc3RydWN0IGluZGV4X3N0YXRlOwogCi0vKiBBbiBhdHRyaWJ1dGUgaXMgYSBwb2ludGVyIHRvIHRoaXMgb3BhcXVlIHN0cnVjdHVyZSAqLworLyoqCisgKiBBbiBhdHRyaWJ1dGUgaXMgYW4gb3BhcXVlIG9iamVjdCB0aGF0IGlzIGlkZW50aWZpZWQgYnkgaXRzIG5hbWUuIFBhc3MgdGhlCisgKiBuYW1lIHRvIGBnaXRfYXR0cigpYCBmdW5jdGlvbiB0byBvYnRhaW4gdGhlIG9iamVjdCBvZiB0aGlzIHR5cGUuCisgKiBUaGUgaW50ZXJuYWwgcmVwcmVzZW50YXRpb24gb2YgdGhpcyBzdHJ1Y3R1cmUgaXMgb2Ygbm8gaW50ZXJlc3QgdG8gdGhlCisgKiBjYWxsaW5nIHByb2dyYW1zLiBUaGUgbmFtZSBvZiB0aGUgYXR0cmlidXRlIGNhbiBiZSByZXRyaWV2ZWQgYnkgY2FsbGluZworICogYGdpdF9hdHRyX25hbWUoKWAuCisgKi8KIHN0cnVjdCBnaXRfYXR0cjsKIAogLyogb3BhcXVlIHN0cnVjdHVyZXMgdXNlZCBpbnRlcm5hbGx5IGZvciBhdHRyaWJ1dGUgY29sbGVjdGlvbiAqLwpAQCAtMjEsMjEgKzEzMywzNiBAQAogZXh0ZXJuIGNvbnN0IGNoYXIgZ2l0X2F0dHJfX3RydWVbXTsKIGV4dGVybiBjb25zdCBjaGFyIGdpdF9hdHRyX19mYWxzZVtdOwogCi0vKiBGb3IgcHVibGljIHRvIGNoZWNrIGdpdF9hdHRyX2NoZWNrIHJlc3VsdHMgKi8KKy8qKgorICogQXR0cmlidXRlIFZhbHVlcworICogLS0tLS0tLS0tLS0tLS0tLQorICoKKyAqIEFuIGF0dHJpYnV0ZSBmb3IgYSBwYXRoIGNhbiBiZSBpbiBvbmUgb2YgZm91ciBzdGF0ZXM6IFNldCwgVW5zZXQsIFVuc3BlY2lmaWVkCisgKiBvciBzZXQgdG8gYSBzdHJpbmcsIGFuZCBgLnZhbHVlYCBtZW1iZXIgb2YgYHN0cnVjdCBhdHRyX2NoZWNrX2l0ZW1gIHJlY29yZHMKKyAqIGl0LiBUaGUgdGhyZWUgbWFjcm9zIGNoZWNrIHRoZXNlLCBpZiBub25lIG9mIHRoZW0gcmV0dXJucyB0cnVlLCBgLnZhbHVlYAorICogbWVtYmVyIHBvaW50cyBhdCBhIHN0cmluZyB2YWx1ZSBvZiB0aGUgYXR0cmlidXRlIGZvciB0aGUgcGF0aC4KKyAqLworCisvKiBSZXR1cm5zIHRydWUgaWYgdGhlIGF0dHJpYnV0ZSBpcyBTZXQgZm9yIHRoZSBwYXRoLiAqLwogI2RlZmluZSBBVFRSX1RSVUUodikgKCh2KSA9PSBnaXRfYXR0cl9fdHJ1ZSkKKworLyogUmV0dXJucyB0cnVlIGlmIHRoZSBhdHRyaWJ1dGUgaXMgVW5zZXQgZm9yIHRoZSBwYXRoLiAqLwogI2RlZmluZSBBVFRSX0ZBTFNFKHYpICgodikgPT0gZ2l0X2F0dHJfX2ZhbHNlKQorCisvKiBSZXR1cm5zIHRydWUgaWYgdGhlIGF0dHJpYnV0ZSBpcyBVbnNwZWNpZmllZCBmb3IgdGhlIHBhdGguICovCiAjZGVmaW5lIEFUVFJfVU5TRVQodikgKCh2KSA9PSBOVUxMKQogCi0vKgotICogU2VuZCBvbmUgb3IgbW9yZSBnaXRfYXR0cl9jaGVjayB0byBnaXRfY2hlY2tfYXR0cnMoKSwgYW5kCi0gKiBlYWNoICd2YWx1ZScgbWVtYmVyIHRlbGxzIHdoYXQgaXRzIHZhbHVlIGlzLgotICogVW5zZXQgb25lIGlzIHJldHVybmVkIGFzIE5VTEwuCi0gKi8KKy8qIFRoaXMgc3RydWN0dXJlIHJlcHJlc2VudHMgb25lIGF0dHJpYnV0ZSBhbmQgaXRzIHZhbHVlLiAqLwogc3RydWN0IGF0dHJfY2hlY2tfaXRlbSB7CiAJY29uc3Qgc3RydWN0IGdpdF9hdHRyICphdHRyOwogCWNvbnN0IGNoYXIgKnZhbHVlOwogfTsKIAorLyoqCisgKiBUaGlzIHN0cnVjdHVyZSByZXByZXNlbnRzIGEgY29sbGVjdGlvbiBvZiBgYXR0cl9jaGVja19pdGVtYC4gSXQgaXMgcGFzc2VkIHRvCisgKiBgZ2l0X2NoZWNrX2F0dHIoKWAgZnVuY3Rpb24sIHNwZWNpZnlpbmcgdGhlIGF0dHJpYnV0ZXMgdG8gY2hlY2ssIGFuZAorICogcmVjZWl2ZXMgdGhlaXIgdmFsdWVzLgorICovCiBzdHJ1Y3QgYXR0cl9jaGVjayB7CiAJaW50IG5yOwogCWludCBhbGxvYzsKZGlmZiAtLWdpdCBhL2F6dXJlLXBpcGVsaW5lcy55bWwgYi9henVyZS1waXBlbGluZXMueW1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY3NWMzYTQKLS0tIC9kZXYvbnVsbAorKysgYi9henVyZS1waXBlbGluZXMueW1sCkBAIC0wLDAgKzEsNTU4IEBACit2YXJpYWJsZXM6CisgIEFnZW50LlNvdXJjZS5HaXQuU2hhbGxvd0ZldGNoRGVwdGg6IDEKKworam9iczoKKy0gam9iOiB3aW5kb3dzX2J1aWxkCisgIGRpc3BsYXlOYW1lOiBXaW5kb3dzIEJ1aWxkCisgIGNvbmRpdGlvbjogc3VjY2VlZGVkKCkKKyAgcG9vbDoKKyAgICB2bUltYWdlOiB3aW5kb3dzLWxhdGVzdAorICB0aW1lb3V0SW5NaW51dGVzOiAyNDAKKyAgc3RlcHM6CisgIC0gcG93ZXJzaGVsbDogfAorICAgICAgaWYgKCIkR0lURklMRVNIQVJFUFdEIiAtbmUgIiIgLWFuZCAiJEdJVEZJTEVTSEFSRVBXRCIgLW5lICJgJGAoZ2l0ZmlsZXNoYXJlLnB3ZCkiKSB7CisgICAgICAgIG5ldCB1c2UgczogXFxnaXRmaWxlc2hhcmUuZmlsZS5jb3JlLndpbmRvd3MubmV0XHRlc3QtY2FjaGUgIiRHSVRGSUxFU0hBUkVQV0QiIC91c2VyOkFaVVJFXGdpdGZpbGVzaGFyZSAvcGVyc2lzdGVudDpubworICAgICAgICBjbWQgL2MgbWtsaW5rIC9kICIkKEJ1aWxkLlNvdXJjZXNEaXJlY3RvcnkpXHRlc3QtY2FjaGUiIFM6XAorICAgICAgfQorICAgIGRpc3BsYXlOYW1lOiAnTW91bnQgdGVzdC1jYWNoZScKKyAgICBlbnY6CisgICAgICBHSVRGSUxFU0hBUkVQV0Q6ICQoZ2l0ZmlsZXNoYXJlLnB3ZCkKKyAgLSBwb3dlcnNoZWxsOiB8CisgICAgICAkdXJsYmFzZSA9ICJodHRwczovL2Rldi5henVyZS5jb20vZ2l0LWZvci13aW5kb3dzL2dpdC9fYXBpcy9idWlsZC9idWlsZHMiCisgICAgICAkaWQgPSAoKEludm9rZS1XZWJSZXF1ZXN0IC1Vc2VCYXNpY1BhcnNpbmcgIiR7dXJsYmFzZX0/ZGVmaW5pdGlvbnM9MjImc3RhdHVzRmlsdGVyPWNvbXBsZXRlZCZyZXN1bHRGaWx0ZXI9c3VjY2VlZGVkJmAkdG9wPTEiKS5jb250ZW50IHwgQ29udmVydEZyb20tSlNPTikudmFsdWVbMF0uaWQKKyAgICAgICRkb3dubG9hZFVybCA9ICgoSW52b2tlLVdlYlJlcXVlc3QgLVVzZUJhc2ljUGFyc2luZyAiJHt1cmxiYXNlfS8kaWQvYXJ0aWZhY3RzIikuY29udGVudCB8IENvbnZlcnRGcm9tLUpTT04pLnZhbHVlWzFdLnJlc291cmNlLmRvd25sb2FkVXJsCisgICAgICAoTmV3LU9iamVjdCBOZXQuV2ViQ2xpZW50KS5Eb3dubG9hZEZpbGUoJGRvd25sb2FkVXJsLCJnaXQtc2RrLTY0LW1pbmltYWwuemlwIikKKyAgICAgIEV4cGFuZC1BcmNoaXZlIGdpdC1zZGstNjQtbWluaW1hbC56aXAgLURlc3RpbmF0aW9uUGF0aCAuIC1Gb3JjZQorICAgICAgUmVtb3ZlLUl0ZW0gZ2l0LXNkay02NC1taW5pbWFsLnppcAorCisgICAgICAjIExldCBHaXQgaWdub3JlIHRoZSBTREsgYW5kIHRoZSB0ZXN0LWNhY2hlCisgICAgICAiL2dpdC1zZGstNjQtbWluaW1hbC9gbi90ZXN0LWNhY2hlL2BuIiB8IE91dC1GaWxlIC1Ob05ld0xpbmUgLUVuY29kaW5nIGFzY2lpIC1BcHBlbmQgIiQoQnVpbGQuU291cmNlc0RpcmVjdG9yeSlcLmdpdFxpbmZvXGV4Y2x1ZGUiCisgICAgZGlzcGxheU5hbWU6ICdEb3dubG9hZCBnaXQtc2RrLTY0LW1pbmltYWwnCisgIC0gcG93ZXJzaGVsbDogfAorICAgICAgJiBnaXQtc2RrLTY0LW1pbmltYWxcdXNyXGJpblxiYXNoLmV4ZSAtbGMgQCIKKyAgICAgICAgY2kvbWFrZS10ZXN0LWFydGlmYWN0cy5zaCBhcnRpZmFjdHMKKyAgICAgICJACisgICAgICBpZiAoISQ/KSB7IGV4aXQoMSkgfQorICAgIGRpc3BsYXlOYW1lOiBCdWlsZAorICAgIGVudjoKKyAgICAgIEhPTUU6ICQoQnVpbGQuU291cmNlc0RpcmVjdG9yeSkKKyAgICAgIE1TWVNURU06IE1JTkdXNjQKKyAgICAgIERFVkVMT1BFUjogMQorICAgICAgTk9fUEVSTDogMQorICAtIHRhc2s6IFB1Ymxpc2hQaXBlbGluZUFydGlmYWN0QDAKKyAgICBkaXNwbGF5TmFtZTogJ1B1Ymxpc2ggUGlwZWxpbmUgQXJ0aWZhY3Q6IHRlc3QgYXJ0aWZhY3RzJworICAgIGlucHV0czoKKyAgICAgIGFydGlmYWN0TmFtZTogJ3dpbmRvd3MtYXJ0aWZhY3RzJworICAgICAgdGFyZ2V0UGF0aDogJyQoQnVpbGQuU291cmNlc0RpcmVjdG9yeSlcYXJ0aWZhY3RzJworICAtIHRhc2s6IFB1Ymxpc2hQaXBlbGluZUFydGlmYWN0QDAKKyAgICBkaXNwbGF5TmFtZTogJ1B1Ymxpc2ggUGlwZWxpbmUgQXJ0aWZhY3Q6IGdpdC1zZGstNjQtbWluaW1hbCcKKyAgICBpbnB1dHM6CisgICAgICBhcnRpZmFjdE5hbWU6ICdnaXQtc2RrLTY0LW1pbmltYWwnCisgICAgICB0YXJnZXRQYXRoOiAnJChCdWlsZC5Tb3VyY2VzRGlyZWN0b3J5KVxnaXQtc2RrLTY0LW1pbmltYWwnCisgIC0gcG93ZXJzaGVsbDogfAorICAgICAgaWYgKCIkR0lURklMRVNIQVJFUFdEIiAtbmUgIiIgLWFuZCAiJEdJVEZJTEVTSEFSRVBXRCIgLW5lICJgJGAoZ2l0ZmlsZXNoYXJlLnB3ZCkiKSB7CisgICAgICAgIGNtZCAvYyBybWRpciAiJChCdWlsZC5Tb3VyY2VzRGlyZWN0b3J5KVx0ZXN0LWNhY2hlIgorICAgICAgfQorICAgIGRpc3BsYXlOYW1lOiAnVW5tb3VudCB0ZXN0LWNhY2hlJworICAgIGNvbmRpdGlvbjogdHJ1ZQorICAgIGVudjoKKyAgICAgIEdJVEZJTEVTSEFSRVBXRDogJChnaXRmaWxlc2hhcmUucHdkKQorCistIGpvYjogd2luZG93c190ZXN0CisgIGRpc3BsYXlOYW1lOiBXaW5kb3dzIFRlc3QKKyAgZGVwZW5kc09uOiB3aW5kb3dzX2J1aWxkCisgIGNvbmRpdGlvbjogc3VjY2VlZGVkKCkKKyAgcG9vbDoKKyAgICB2bUltYWdlOiB3aW5kb3dzLWxhdGVzdAorICB0aW1lb3V0SW5NaW51dGVzOiAyNDAKKyAgc3RyYXRlZ3k6CisgICAgcGFyYWxsZWw6IDEwCisgIHN0ZXBzOgorICAtIHBvd2Vyc2hlbGw6IHwKKyAgICAgIGlmICgiJEdJVEZJTEVTSEFSRVBXRCIgLW5lICIiIC1hbmQgIiRHSVRGSUxFU0hBUkVQV0QiIC1uZSAiYCRgKGdpdGZpbGVzaGFyZS5wd2QpIikgeworICAgICAgICBuZXQgdXNlIHM6IFxcZ2l0ZmlsZXNoYXJlLmZpbGUuY29yZS53aW5kb3dzLm5ldFx0ZXN0LWNhY2hlICIkR0lURklMRVNIQVJFUFdEIiAvdXNlcjpBWlVSRVxnaXRmaWxlc2hhcmUgL3BlcnNpc3RlbnQ6bm8KKyAgICAgICAgY21kIC9jIG1rbGluayAvZCAiJChCdWlsZC5Tb3VyY2VzRGlyZWN0b3J5KVx0ZXN0LWNhY2hlIiBTOlwKKyAgICAgIH0KKyAgICBkaXNwbGF5TmFtZTogJ01vdW50IHRlc3QtY2FjaGUnCisgICAgZW52OgorICAgICAgR0lURklMRVNIQVJFUFdEOiAkKGdpdGZpbGVzaGFyZS5wd2QpCisgIC0gdGFzazogRG93bmxvYWRQaXBlbGluZUFydGlmYWN0QDAKKyAgICBkaXNwbGF5TmFtZTogJ0Rvd25sb2FkIFBpcGVsaW5lIEFydGlmYWN0OiB0ZXN0IGFydGlmYWN0cycKKyAgICBpbnB1dHM6CisgICAgICBhcnRpZmFjdE5hbWU6ICd3aW5kb3dzLWFydGlmYWN0cycKKyAgICAgIHRhcmdldFBhdGg6ICckKEJ1aWxkLlNvdXJjZXNEaXJlY3RvcnkpJworICAtIHRhc2s6IERvd25sb2FkUGlwZWxpbmVBcnRpZmFjdEAwCisgICAgZGlzcGxheU5hbWU6ICdEb3dubG9hZCBQaXBlbGluZSBBcnRpZmFjdDogZ2l0LXNkay02NC1taW5pbWFsJworICAgIGlucHV0czoKKyAgICAgIGFydGlmYWN0TmFtZTogJ2dpdC1zZGstNjQtbWluaW1hbCcKKyAgICAgIHRhcmdldFBhdGg6ICckKEJ1aWxkLlNvdXJjZXNEaXJlY3RvcnkpXGdpdC1zZGstNjQtbWluaW1hbCcKKyAgLSBwb3dlcnNoZWxsOiB8CisgICAgICAmIGdpdC1zZGstNjQtbWluaW1hbFx1c3JcYmluXGJhc2guZXhlIC1sYyBAIgorICAgICAgICB0ZXN0IC1mIGFydGlmYWN0cy50YXIuZ3ogfHwgeworICAgICAgICAgIGVjaG8gTm8gdGVzdCBhcnRpZmFjdHMgZm91bmRcOyBza2lwcGluZyA+JjIKKyAgICAgICAgICBleGl0IDAKKyAgICAgICAgfQorICAgICAgICB0YXIgeGYgYXJ0aWZhY3RzLnRhci5neiB8fCBleGl0IDEKKworICAgICAgICAjIExldCBHaXQgaWdub3JlIHRoZSBTREsgYW5kIHRoZSB0ZXN0LWNhY2hlCisgICAgICAgIHByaW50ZiAnJXNcbicgL2dpdC1zZGstNjQtbWluaW1hbC8gL3Rlc3QtY2FjaGUvID4+LmdpdC9pbmZvL2V4Y2x1ZGUKKworICAgICAgICBjaS9ydW4tdGVzdC1zbGljZS5zaCBgJFNZU1RFTV9KT0JQT1NJVElPTklOUEhBU0UgYCRTWVNURU1fVE9UQUxKT0JTSU5QSEFTRSB8fCB7CisgICAgICAgICAgY2kvcHJpbnQtdGVzdC1mYWlsdXJlcy5zaAorICAgICAgICAgIGV4aXQgMQorICAgICAgICB9CisgICAgICAiQAorICAgICAgaWYgKCEkPykgeyBleGl0KDEpIH0KKyAgICBkaXNwbGF5TmFtZTogJ1Rlc3QgKHBhcmFsbGVsKScKKyAgICBlbnY6CisgICAgICBIT01FOiAkKEJ1aWxkLlNvdXJjZXNEaXJlY3RvcnkpCisgICAgICBNU1lTVEVNOiBNSU5HVzY0CisgICAgICBOT19TVk5fVEVTVFM6IDEKKyAgICAgIEdJVF9URVNUX1NLSVBfUkVCQVNFX1A6IDEKKyAgLSBwb3dlcnNoZWxsOiB8CisgICAgICBpZiAoIiRHSVRGSUxFU0hBUkVQV0QiIC1uZSAiIiAtYW5kICIkR0lURklMRVNIQVJFUFdEIiAtbmUgImAkYChnaXRmaWxlc2hhcmUucHdkKSIpIHsKKyAgICAgICAgY21kIC9jIHJtZGlyICIkKEJ1aWxkLlNvdXJjZXNEaXJlY3RvcnkpXHRlc3QtY2FjaGUiCisgICAgICB9CisgICAgZGlzcGxheU5hbWU6ICdVbm1vdW50IHRlc3QtY2FjaGUnCisgICAgY29uZGl0aW9uOiB0cnVlCisgICAgZW52OgorICAgICAgR0lURklMRVNIQVJFUFdEOiAkKGdpdGZpbGVzaGFyZS5wd2QpCisgIC0gdGFzazogUHVibGlzaFRlc3RSZXN1bHRzQDIKKyAgICBkaXNwbGF5TmFtZTogJ1B1Ymxpc2ggVGVzdCBSZXN1bHRzICoqL1RFU1QtKi54bWwnCisgICAgaW5wdXRzOgorICAgICAgbWVyZ2VUZXN0UmVzdWx0czogdHJ1ZQorICAgICAgdGVzdFJ1blRpdGxlOiAnd2luZG93cycKKyAgICAgIHBsYXRmb3JtOiBXaW5kb3dzCisgICAgICBwdWJsaXNoUnVuQXR0YWNobWVudHM6IGZhbHNlCisgICAgY29uZGl0aW9uOiBzdWNjZWVkZWRPckZhaWxlZCgpCisgIC0gdGFzazogUHVibGlzaEJ1aWxkQXJ0aWZhY3RzQDEKKyAgICBkaXNwbGF5TmFtZTogJ1B1Ymxpc2ggdHJhc2ggZGlyZWN0b3JpZXMgb2YgZmFpbGVkIHRlc3RzJworICAgIGNvbmRpdGlvbjogZmFpbGVkKCkKKyAgICBpbnB1dHM6CisgICAgICBQYXRodG9QdWJsaXNoOiB0L2ZhaWxlZC10ZXN0LWFydGlmYWN0cworICAgICAgQXJ0aWZhY3ROYW1lOiBmYWlsZWQtdGVzdC1hcnRpZmFjdHMKKworLSBqb2I6IHZzX2J1aWxkCisgIGRpc3BsYXlOYW1lOiBWaXN1YWwgU3R1ZGlvIEJ1aWxkCisgIGNvbmRpdGlvbjogc3VjY2VlZGVkKCkKKyAgcG9vbDoKKyAgICB2bUltYWdlOiB3aW5kb3dzLWxhdGVzdAorICB0aW1lb3V0SW5NaW51dGVzOiAyNDAKKyAgc3RlcHM6CisgIC0gcG93ZXJzaGVsbDogfAorICAgICAgaWYgKCIkR0lURklMRVNIQVJFUFdEIiAtbmUgIiIgLWFuZCAiJEdJVEZJTEVTSEFSRVBXRCIgLW5lICJgJGAoZ2l0ZmlsZXNoYXJlLnB3ZCkiKSB7CisgICAgICAgIG5ldCB1c2UgczogXFxnaXRmaWxlc2hhcmUuZmlsZS5jb3JlLndpbmRvd3MubmV0XHRlc3QtY2FjaGUgIiRHSVRGSUxFU0hBUkVQV0QiIC91c2VyOkFaVVJFXGdpdGZpbGVzaGFyZSAvcGVyc2lzdGVudDpubworICAgICAgICBjbWQgL2MgbWtsaW5rIC9kICIkKEJ1aWxkLlNvdXJjZXNEaXJlY3RvcnkpXHRlc3QtY2FjaGUiIFM6XAorICAgICAgfQorICAgIGRpc3BsYXlOYW1lOiAnTW91bnQgdGVzdC1jYWNoZScKKyAgICBlbnY6CisgICAgICBHSVRGSUxFU0hBUkVQV0Q6ICQoZ2l0ZmlsZXNoYXJlLnB3ZCkKKyAgLSBwb3dlcnNoZWxsOiB8CisgICAgICAkdXJsYmFzZSA9ICJodHRwczovL2Rldi5henVyZS5jb20vZ2l0LWZvci13aW5kb3dzL2dpdC9fYXBpcy9idWlsZC9idWlsZHMiCisgICAgICAkaWQgPSAoKEludm9rZS1XZWJSZXF1ZXN0IC1Vc2VCYXNpY1BhcnNpbmcgIiR7dXJsYmFzZX0/ZGVmaW5pdGlvbnM9MjImc3RhdHVzRmlsdGVyPWNvbXBsZXRlZCZyZXN1bHRGaWx0ZXI9c3VjY2VlZGVkJmAkdG9wPTEiKS5jb250ZW50IHwgQ29udmVydEZyb20tSlNPTikudmFsdWVbMF0uaWQKKyAgICAgICRkb3dubG9hZFVybCA9ICgoSW52b2tlLVdlYlJlcXVlc3QgLVVzZUJhc2ljUGFyc2luZyAiJHt1cmxiYXNlfS8kaWQvYXJ0aWZhY3RzIikuY29udGVudCB8IENvbnZlcnRGcm9tLUpTT04pLnZhbHVlWzFdLnJlc291cmNlLmRvd25sb2FkVXJsCisgICAgICAoTmV3LU9iamVjdCBOZXQuV2ViQ2xpZW50KS5Eb3dubG9hZEZpbGUoJGRvd25sb2FkVXJsLCJnaXQtc2RrLTY0LW1pbmltYWwuemlwIikKKyAgICAgIEV4cGFuZC1BcmNoaXZlIGdpdC1zZGstNjQtbWluaW1hbC56aXAgLURlc3RpbmF0aW9uUGF0aCAuIC1Gb3JjZQorICAgICAgUmVtb3ZlLUl0ZW0gZ2l0LXNkay02NC1taW5pbWFsLnppcAorCisgICAgICAjIExldCBHaXQgaWdub3JlIHRoZSBTREsgYW5kIHRoZSB0ZXN0LWNhY2hlCisgICAgICAiL2dpdC1zZGstNjQtbWluaW1hbC9gbi90ZXN0LWNhY2hlL2BuIiB8IE91dC1GaWxlIC1Ob05ld0xpbmUgLUVuY29kaW5nIGFzY2lpIC1BcHBlbmQgIiQoQnVpbGQuU291cmNlc0RpcmVjdG9yeSlcLmdpdFxpbmZvXGV4Y2x1ZGUiCisgICAgZGlzcGxheU5hbWU6ICdEb3dubG9hZCBnaXQtc2RrLTY0LW1pbmltYWwnCisgIC0gcG93ZXJzaGVsbDogfAorICAgICAgJiBnaXQtc2RrLTY0LW1pbmltYWxcdXNyXGJpblxiYXNoLmV4ZSAtbGMgQCIKKyAgICAgICAgbWFrZSBOREVCVUc9MSBERVZFTE9QRVI9MSB2Y3hwcm9qCisgICAgICAiQAorICAgICAgaWYgKCEkPykgeyBleGl0KDEpIH0KKyAgICBkaXNwbGF5TmFtZTogR2VuZXJhdGUgVmlzdWFsIFN0dWRpbyBTb2x1dGlvbgorICAgIGVudjoKKyAgICAgIEhPTUU6ICQoQnVpbGQuU291cmNlc0RpcmVjdG9yeSkKKyAgICAgIE1TWVNURU06IE1JTkdXNjQKKyAgICAgIERFVkVMT1BFUjogMQorICAgICAgTk9fUEVSTDogMQorICAgICAgR0lUX0NPTkZJR19QQVJBTUVURVJTOiAiJ3VzZXIubmFtZT1DSScgJ3VzZXIuZW1haWw9Y2lAZ2l0JyIKKyAgLSBwb3dlcnNoZWxsOiB8CisgICAgICAkdXJsYmFzZSA9ICJodHRwczovL2Rldi5henVyZS5jb20vZ2l0L2dpdC9fYXBpcy9idWlsZC9idWlsZHMiCisgICAgICAkaWQgPSAoKEludm9rZS1XZWJSZXF1ZXN0IC1Vc2VCYXNpY1BhcnNpbmcgIiR7dXJsYmFzZX0/ZGVmaW5pdGlvbnM9OSZzdGF0dXNGaWx0ZXI9Y29tcGxldGVkJnJlc3VsdEZpbHRlcj1zdWNjZWVkZWQmYCR0b3A9MSIpLmNvbnRlbnQgfCBDb252ZXJ0RnJvbS1KU09OKS52YWx1ZVswXS5pZAorICAgICAgJGRvd25sb2FkVXJsID0gKChJbnZva2UtV2ViUmVxdWVzdCAtVXNlQmFzaWNQYXJzaW5nICIke3VybGJhc2V9LyRpZC9hcnRpZmFjdHMiKS5jb250ZW50IHwgQ29udmVydEZyb20tSlNPTikudmFsdWVbMF0ucmVzb3VyY2UuZG93bmxvYWRVcmwKKyAgICAgIChOZXctT2JqZWN0IE5ldC5XZWJDbGllbnQpLkRvd25sb2FkRmlsZSgkZG93bmxvYWRVcmwsICJjb21wYXQuemlwIikKKyAgICAgIEV4cGFuZC1BcmNoaXZlIGNvbXBhdC56aXAgLURlc3RpbmF0aW9uUGF0aCAuIC1Gb3JjZQorICAgICAgUmVtb3ZlLUl0ZW0gY29tcGF0LnppcAorICAgIGRpc3BsYXlOYW1lOiAnRG93bmxvYWQgdmNwa2cgYXJ0aWZhY3RzJworICAtIHRhc2s6IE1TQnVpbGRAMQorICAgIGlucHV0czoKKyAgICAgIHNvbHV0aW9uOiBnaXQuc2xuCisgICAgICBwbGF0Zm9ybTogeDY0CisgICAgICBjb25maWd1cmF0aW9uOiBSZWxlYXNlCisgICAgICBtYXhpbXVtQ3B1Q291bnQ6IDQKKyAgICAgIG1zYnVpbGRBcmd1bWVudHM6IC9wOlBsYXRmb3JtVG9vbHNldD12MTQyCisgIC0gcG93ZXJzaGVsbDogfAorICAgICAgJiBjb21wYXRcdmNidWlsZFx2Y3BrZ19jb3B5X2RsbHMuYmF0IHJlbGVhc2UKKyAgICAgIGlmICghJD8pIHsgZXhpdCgxKSB9CisgICAgICAmIGdpdC1zZGstNjQtbWluaW1hbFx1c3JcYmluXGJhc2guZXhlIC1sYyBAIgorICAgICAgICBta2RpciAtcCBhcnRpZmFjdHMgJiYKKyAgICAgICAgZXZhbCBcImAkKG1ha2UgLW4gYXJ0aWZhY3RzLXRhciBJTkNMVURFX0RMTFNfSU5fQVJUSUZBQ1RTPVllc1BsZWFzZSBBUlRJRkFDVFNfRElSRUNUT1JZPWFydGlmYWN0cyB8IGdyZXAgXnRhcilcIgorICAgICAgIkAKKyAgICAgIGlmICghJD8pIHsgZXhpdCgxKSB9CisgICAgZGlzcGxheU5hbWU6IEJ1bmRsZSBhcnRpZmFjdCB0YXIKKyAgICBlbnY6CisgICAgICBIT01FOiAkKEJ1aWxkLlNvdXJjZXNEaXJlY3RvcnkpCisgICAgICBNU1lTVEVNOiBNSU5HVzY0CisgICAgICBERVZFTE9QRVI6IDEKKyAgICAgIE5PX1BFUkw6IDEKKyAgICAgIE1TVkM6IDEKKyAgICAgIFZDUEtHX1JPT1Q6ICQoQnVpbGQuU291cmNlc0RpcmVjdG9yeSlcY29tcGF0XHZjYnVpbGRcdmNwa2cKKyAgLSBwb3dlcnNoZWxsOiB8CisgICAgICAkdGFnID0gKEludm9rZS1XZWJSZXF1ZXN0IC1Vc2VCYXNpY1BhcnNpbmcgImh0dHBzOi8vZ2l0Zm9yd2luZG93cy5vcmcvbGF0ZXN0LXRhZy50eHQiKS5jb250ZW50CisgICAgICAkdmVyc2lvbiA9IChJbnZva2UtV2ViUmVxdWVzdCAtVXNlQmFzaWNQYXJzaW5nICJodHRwczovL2dpdGZvcndpbmRvd3Mub3JnL2xhdGVzdC12ZXJzaW9uLnR4dCIpLmNvbnRlbnQKKyAgICAgICR1cmwgPSAiaHR0cHM6Ly9naXRodWIuY29tL2dpdC1mb3Itd2luZG93cy9naXQvcmVsZWFzZXMvZG93bmxvYWQvJHt0YWd9L1BvcnRhYmxlR2l0LSR7dmVyc2lvbn0tNjQtYml0Ljd6LmV4ZSIKKyAgICAgIChOZXctT2JqZWN0IE5ldC5XZWJDbGllbnQpLkRvd25sb2FkRmlsZSgkdXJsLCJQb3J0YWJsZUdpdC5leGUiKQorICAgICAgJiAuXFBvcnRhYmxlR2l0LmV4ZSAteSAtb2FydGlmYWN0c1xQb3J0YWJsZUdpdAorICAgICAgIyBXYWl0IHVudGlsIGl0IGlzIHVucGFja2VkCisgICAgICB3aGlsZSAoLW5vdCBAKFJlbW92ZS1JdGVtIC1FcnJvckFjdGlvbiBTaWxlbnRseUNvbnRpbnVlIFBvcnRhYmxlR2l0LmV4ZTsgJD8pKSB7IHNsZWVwIDEgfQorICAgIGRpc3BsYXlOYW1lOiBEb3dubG9hZCAmIGV4dHJhY3QgcG9ydGFibGUgR2l0CisgIC0gdGFzazogUHVibGlzaFBpcGVsaW5lQXJ0aWZhY3RAMAorICAgIGRpc3BsYXlOYW1lOiAnUHVibGlzaCBQaXBlbGluZSBBcnRpZmFjdDogTVNWQyB0ZXN0IGFydGlmYWN0cycKKyAgICBpbnB1dHM6CisgICAgICBhcnRpZmFjdE5hbWU6ICd2cy1hcnRpZmFjdHMnCisgICAgICB0YXJnZXRQYXRoOiAnJChCdWlsZC5Tb3VyY2VzRGlyZWN0b3J5KVxhcnRpZmFjdHMnCisgIC0gcG93ZXJzaGVsbDogfAorICAgICAgaWYgKCIkR0lURklMRVNIQVJFUFdEIiAtbmUgIiIgLWFuZCAiJEdJVEZJTEVTSEFSRVBXRCIgLW5lICJgJGAoZ2l0ZmlsZXNoYXJlLnB3ZCkiKSB7CisgICAgICAgIGNtZCAvYyBybWRpciAiJChCdWlsZC5Tb3VyY2VzRGlyZWN0b3J5KVx0ZXN0LWNhY2hlIgorICAgICAgfQorICAgIGRpc3BsYXlOYW1lOiAnVW5tb3VudCB0ZXN0LWNhY2hlJworICAgIGNvbmRpdGlvbjogdHJ1ZQorICAgIGVudjoKKyAgICAgIEdJVEZJTEVTSEFSRVBXRDogJChnaXRmaWxlc2hhcmUucHdkKQorCistIGpvYjogdnNfdGVzdAorICBkaXNwbGF5TmFtZTogVmlzdWFsIFN0dWRpbyBUZXN0CisgIGRlcGVuZHNPbjogdnNfYnVpbGQKKyAgY29uZGl0aW9uOiBzdWNjZWVkZWQoKQorICBwb29sOgorICAgIHZtSW1hZ2U6IHdpbmRvd3MtbGF0ZXN0CisgIHRpbWVvdXRJbk1pbnV0ZXM6IDI0MAorICBzdHJhdGVneToKKyAgICBwYXJhbGxlbDogMTAKKyAgc3RlcHM6CisgIC0gcG93ZXJzaGVsbDogfAorICAgICAgaWYgKCIkR0lURklMRVNIQVJFUFdEIiAtbmUgIiIgLWFuZCAiJEdJVEZJTEVTSEFSRVBXRCIgLW5lICJgJGAoZ2l0ZmlsZXNoYXJlLnB3ZCkiKSB7CisgICAgICAgIG5ldCB1c2UgczogXFxnaXRmaWxlc2hhcmUuZmlsZS5jb3JlLndpbmRvd3MubmV0XHRlc3QtY2FjaGUgIiRHSVRGSUxFU0hBUkVQV0QiIC91c2VyOkFaVVJFXGdpdGZpbGVzaGFyZSAvcGVyc2lzdGVudDpubworICAgICAgICBjbWQgL2MgbWtsaW5rIC9kICIkKEJ1aWxkLlNvdXJjZXNEaXJlY3RvcnkpXHRlc3QtY2FjaGUiIFM6XAorICAgICAgfQorICAgIGRpc3BsYXlOYW1lOiAnTW91bnQgdGVzdC1jYWNoZScKKyAgICBlbnY6CisgICAgICBHSVRGSUxFU0hBUkVQV0Q6ICQoZ2l0ZmlsZXNoYXJlLnB3ZCkKKyAgLSB0YXNrOiBEb3dubG9hZFBpcGVsaW5lQXJ0aWZhY3RAMAorICAgIGRpc3BsYXlOYW1lOiAnRG93bmxvYWQgUGlwZWxpbmUgQXJ0aWZhY3Q6IFZTIHRlc3QgYXJ0aWZhY3RzJworICAgIGlucHV0czoKKyAgICAgIGFydGlmYWN0TmFtZTogJ3ZzLWFydGlmYWN0cycKKyAgICAgIHRhcmdldFBhdGg6ICckKEJ1aWxkLlNvdXJjZXNEaXJlY3RvcnkpJworICAtIHBvd2Vyc2hlbGw6IHwKKyAgICAgICYgUG9ydGFibGVHaXRcZ2l0LWNtZC5leGUgLS1jb21tYW5kPXVzclxiaW5cYmFzaC5leGUgLWxjIEAiCisgICAgICAgIHRlc3QgLWYgYXJ0aWZhY3RzLnRhci5neiB8fCB7CisgICAgICAgICAgZWNobyBObyB0ZXN0IGFydGlmYWN0cyBmb3VuZFw7IHNraXBwaW5nID4mMgorICAgICAgICAgIGV4aXQgMAorICAgICAgICB9CisgICAgICAgIHRhciB4ZiBhcnRpZmFjdHMudGFyLmd6IHx8IGV4aXQgMQorCisgICAgICAgICMgTGV0IEdpdCBpZ25vcmUgdGhlIFNESyBhbmQgdGhlIHRlc3QtY2FjaGUKKyAgICAgICAgcHJpbnRmICclc1xuJyAvUG9ydGFibGVHaXQvIC90ZXN0LWNhY2hlLyA+Pi5naXQvaW5mby9leGNsdWRlCisKKyAgICAgICAgY2QgdCAmJgorICAgICAgICBQQVRIPVwiYCRQV0QvaGVscGVyOmAkUEFUSFwiICYmCisgICAgICAgIHRlc3QtdG9vbC5leGUgcnVuLWNvbW1hbmQgdGVzdHN1aXRlIC0tam9icz0xMCAtViAteCAtLXdyaXRlLWp1bml0LXhtbCBcCisgICAgICAgICAgICAgICAgYCQodGVzdC10b29sLmV4ZSBwYXRoLXV0aWxzIHNsaWNlLXRlc3RzIFwKKyAgICAgICAgICAgICAgICAgICAgICAgIGAkU1lTVEVNX0pPQlBPU0lUSU9OSU5QSEFTRSBgJFNZU1RFTV9UT1RBTEpPQlNJTlBIQVNFIHRbMC05XSouc2gpCisgICAgICAiQAorICAgICAgaWYgKCEkPykgeyBleGl0KDEpIH0KKyAgICBkaXNwbGF5TmFtZTogJ1Rlc3QgKHBhcmFsbGVsKScKKyAgICBlbnY6CisgICAgICBIT01FOiAkKEJ1aWxkLlNvdXJjZXNEaXJlY3RvcnkpCisgICAgICBNU1lTVEVNOiBNSU5HVzY0CisgICAgICBOT19TVk5fVEVTVFM6IDEKKyAgICAgIEdJVF9URVNUX1NLSVBfUkVCQVNFX1A6IDEKKyAgLSBwb3dlcnNoZWxsOiB8CisgICAgICBpZiAoIiRHSVRGSUxFU0hBUkVQV0QiIC1uZSAiIiAtYW5kICIkR0lURklMRVNIQVJFUFdEIiAtbmUgImAkYChnaXRmaWxlc2hhcmUucHdkKSIpIHsKKyAgICAgICAgY21kIC9jIHJtZGlyICIkKEJ1aWxkLlNvdXJjZXNEaXJlY3RvcnkpXHRlc3QtY2FjaGUiCisgICAgICB9CisgICAgZGlzcGxheU5hbWU6ICdVbm1vdW50IHRlc3QtY2FjaGUnCisgICAgY29uZGl0aW9uOiB0cnVlCisgICAgZW52OgorICAgICAgR0lURklMRVNIQVJFUFdEOiAkKGdpdGZpbGVzaGFyZS5wd2QpCisgIC0gdGFzazogUHVibGlzaFRlc3RSZXN1bHRzQDIKKyAgICBkaXNwbGF5TmFtZTogJ1B1Ymxpc2ggVGVzdCBSZXN1bHRzICoqL1RFU1QtKi54bWwnCisgICAgaW5wdXRzOgorICAgICAgbWVyZ2VUZXN0UmVzdWx0czogdHJ1ZQorICAgICAgdGVzdFJ1blRpdGxlOiAndnMnCisgICAgICBwbGF0Zm9ybTogV2luZG93cworICAgICAgcHVibGlzaFJ1bkF0dGFjaG1lbnRzOiBmYWxzZQorICAgIGNvbmRpdGlvbjogc3VjY2VlZGVkT3JGYWlsZWQoKQorICAtIHRhc2s6IFB1Ymxpc2hCdWlsZEFydGlmYWN0c0AxCisgICAgZGlzcGxheU5hbWU6ICdQdWJsaXNoIHRyYXNoIGRpcmVjdG9yaWVzIG9mIGZhaWxlZCB0ZXN0cycKKyAgICBjb25kaXRpb246IGZhaWxlZCgpCisgICAgaW5wdXRzOgorICAgICAgUGF0aHRvUHVibGlzaDogdC9mYWlsZWQtdGVzdC1hcnRpZmFjdHMKKyAgICAgIEFydGlmYWN0TmFtZTogZmFpbGVkLXZzLXRlc3QtYXJ0aWZhY3RzCisKKy0gam9iOiBsaW51eF9jbGFuZworICBkaXNwbGF5TmFtZTogbGludXgtY2xhbmcKKyAgY29uZGl0aW9uOiBzdWNjZWVkZWQoKQorICBwb29sOgorICAgIHZtSW1hZ2U6IHVidW50dS1sYXRlc3QKKyAgc3RlcHM6CisgIC0gYmFzaDogfAorICAgICAgIHRlc3QgIiRHSVRGSUxFU0hBUkVQV0QiID0gJyQoZ2l0ZmlsZXNoYXJlLnB3ZCknIHx8IGNpL21vdW50LWZpbGVzaGFyZS5zaCAvL2dpdGZpbGVzaGFyZS5maWxlLmNvcmUud2luZG93cy5uZXQvdGVzdC1jYWNoZSBnaXRmaWxlc2hhcmUgIiRHSVRGSUxFU0hBUkVQV0QiICIkSE9NRS90ZXN0LWNhY2hlIiB8fCBleGl0IDEKKworICAgICAgIHN1ZG8gYXB0LWdldCB1cGRhdGUgJiYKKyAgICAgICBzdWRvIGFwdC1nZXQgLXkgaW5zdGFsbCBnaXQgZ2NjIG1ha2UgbGlic3NsLWRldiBsaWJjdXJsNC1vcGVuc3NsLWRldiBsaWJleHBhdC1kZXYgdGNsIHRrIGdldHRleHQgZ2l0LWVtYWlsIHpsaWIxZy1kZXYgYXBhY2hlMi1iaW4gJiYKKworICAgICAgIGV4cG9ydCBDQz1jbGFuZyB8fCBleGl0IDEKKworICAgICAgIGNpL2luc3RhbGwtZGVwZW5kZW5jaWVzLnNoIHx8IGV4aXQgMQorICAgICAgIGNpL3J1bi1idWlsZC1hbmQtdGVzdHMuc2ggfHwgeworICAgICAgICAgICBjaS9wcmludC10ZXN0LWZhaWx1cmVzLnNoCisgICAgICAgICAgIGV4aXQgMQorICAgICAgIH0KKworICAgICAgIHRlc3QgIiRHSVRGSUxFU0hBUkVQV0QiID0gJyQoZ2l0ZmlsZXNoYXJlLnB3ZCknIHx8IHN1ZG8gdW1vdW50ICIkSE9NRS90ZXN0LWNhY2hlIiB8fCBleGl0IDEKKyAgICBkaXNwbGF5TmFtZTogJ2NpL3J1bi1idWlsZC1hbmQtdGVzdHMuc2gnCisgICAgZW52OgorICAgICAgR0lURklMRVNIQVJFUFdEOiAkKGdpdGZpbGVzaGFyZS5wd2QpCisgIC0gdGFzazogUHVibGlzaFRlc3RSZXN1bHRzQDIKKyAgICBkaXNwbGF5TmFtZTogJ1B1Ymxpc2ggVGVzdCBSZXN1bHRzICoqL1RFU1QtKi54bWwnCisgICAgaW5wdXRzOgorICAgICAgbWVyZ2VUZXN0UmVzdWx0czogdHJ1ZQorICAgICAgdGVzdFJ1blRpdGxlOiAnbGludXgtY2xhbmcnCisgICAgICBwbGF0Zm9ybTogTGludXgKKyAgICAgIHB1Ymxpc2hSdW5BdHRhY2htZW50czogZmFsc2UKKyAgICBjb25kaXRpb246IHN1Y2NlZWRlZE9yRmFpbGVkKCkKKyAgLSB0YXNrOiBQdWJsaXNoQnVpbGRBcnRpZmFjdHNAMQorICAgIGRpc3BsYXlOYW1lOiAnUHVibGlzaCB0cmFzaCBkaXJlY3RvcmllcyBvZiBmYWlsZWQgdGVzdHMnCisgICAgY29uZGl0aW9uOiBmYWlsZWQoKQorICAgIGlucHV0czoKKyAgICAgIFBhdGh0b1B1Ymxpc2g6IHQvZmFpbGVkLXRlc3QtYXJ0aWZhY3RzCisgICAgICBBcnRpZmFjdE5hbWU6IGZhaWxlZC10ZXN0LWFydGlmYWN0cworCistIGpvYjogbGludXhfZ2NjCisgIGRpc3BsYXlOYW1lOiBsaW51eC1nY2MKKyAgY29uZGl0aW9uOiBzdWNjZWVkZWQoKQorICBwb29sOgorICAgIHZtSW1hZ2U6IHVidW50dS1sYXRlc3QKKyAgc3RlcHM6CisgIC0gYmFzaDogfAorICAgICAgIHRlc3QgIiRHSVRGSUxFU0hBUkVQV0QiID0gJyQoZ2l0ZmlsZXNoYXJlLnB3ZCknIHx8IGNpL21vdW50LWZpbGVzaGFyZS5zaCAvL2dpdGZpbGVzaGFyZS5maWxlLmNvcmUud2luZG93cy5uZXQvdGVzdC1jYWNoZSBnaXRmaWxlc2hhcmUgIiRHSVRGSUxFU0hBUkVQV0QiICIkSE9NRS90ZXN0LWNhY2hlIiB8fCBleGl0IDEKKworICAgICAgIHN1ZG8gYWRkLWFwdC1yZXBvc2l0b3J5IHBwYTp1YnVudHUtdG9vbGNoYWluLXIvdGVzdCAmJgorICAgICAgIHN1ZG8gYXB0LWdldCB1cGRhdGUgJiYKKyAgICAgICBzdWRvIGFwdC1nZXQgLXkgaW5zdGFsbCBnaXQgZ2NjIG1ha2UgbGlic3NsLWRldiBsaWJjdXJsNC1vcGVuc3NsLWRldiBsaWJleHBhdC1kZXYgdGNsIHRrIGdldHRleHQgZ2l0LWVtYWlsIHpsaWIxZy1kZXYgYXBhY2hlMiBsYW5ndWFnZS1wYWNrLWlzIGdpdC1zdm4gZ2NjLTggfHwgZXhpdCAxCisKKyAgICAgICBjaS9pbnN0YWxsLWRlcGVuZGVuY2llcy5zaCB8fCBleGl0IDEKKyAgICAgICBjaS9ydW4tYnVpbGQtYW5kLXRlc3RzLnNoIHx8IHsKKyAgICAgICAgICAgY2kvcHJpbnQtdGVzdC1mYWlsdXJlcy5zaAorICAgICAgICAgICBleGl0IDEKKyAgICAgICB9CisKKyAgICAgICB0ZXN0ICIkR0lURklMRVNIQVJFUFdEIiA9ICckKGdpdGZpbGVzaGFyZS5wd2QpJyB8fCBzdWRvIHVtb3VudCAiJEhPTUUvdGVzdC1jYWNoZSIgfHwgZXhpdCAxCisgICAgZGlzcGxheU5hbWU6ICdjaS9ydW4tYnVpbGQtYW5kLXRlc3RzLnNoJworICAgIGVudjoKKyAgICAgIEdJVEZJTEVTSEFSRVBXRDogJChnaXRmaWxlc2hhcmUucHdkKQorICAtIHRhc2s6IFB1Ymxpc2hUZXN0UmVzdWx0c0AyCisgICAgZGlzcGxheU5hbWU6ICdQdWJsaXNoIFRlc3QgUmVzdWx0cyAqKi9URVNULSoueG1sJworICAgIGlucHV0czoKKyAgICAgIG1lcmdlVGVzdFJlc3VsdHM6IHRydWUKKyAgICAgIHRlc3RSdW5UaXRsZTogJ2xpbnV4LWdjYycKKyAgICAgIHBsYXRmb3JtOiBMaW51eAorICAgICAgcHVibGlzaFJ1bkF0dGFjaG1lbnRzOiBmYWxzZQorICAgIGNvbmRpdGlvbjogc3VjY2VlZGVkT3JGYWlsZWQoKQorICAtIHRhc2s6IFB1Ymxpc2hCdWlsZEFydGlmYWN0c0AxCisgICAgZGlzcGxheU5hbWU6ICdQdWJsaXNoIHRyYXNoIGRpcmVjdG9yaWVzIG9mIGZhaWxlZCB0ZXN0cycKKyAgICBjb25kaXRpb246IGZhaWxlZCgpCisgICAgaW5wdXRzOgorICAgICAgUGF0aHRvUHVibGlzaDogdC9mYWlsZWQtdGVzdC1hcnRpZmFjdHMKKyAgICAgIEFydGlmYWN0TmFtZTogZmFpbGVkLXRlc3QtYXJ0aWZhY3RzCisKKy0gam9iOiBvc3hfY2xhbmcKKyAgZGlzcGxheU5hbWU6IG9zeC1jbGFuZworICBjb25kaXRpb246IHN1Y2NlZWRlZCgpCisgIHBvb2w6CisgICAgdm1JbWFnZTogbWFjT1MtbGF0ZXN0CisgIHN0ZXBzOgorICAtIGJhc2g6IHwKKyAgICAgICB0ZXN0ICIkR0lURklMRVNIQVJFUFdEIiA9ICckKGdpdGZpbGVzaGFyZS5wd2QpJyB8fCBjaS9tb3VudC1maWxlc2hhcmUuc2ggLy9naXRmaWxlc2hhcmUuZmlsZS5jb3JlLndpbmRvd3MubmV0L3Rlc3QtY2FjaGUgZ2l0ZmlsZXNoYXJlICIkR0lURklMRVNIQVJFUFdEIiAiJEhPTUUvdGVzdC1jYWNoZSIgfHwgZXhpdCAxCisKKyAgICAgICBleHBvcnQgQ0M9Y2xhbmcKKworICAgICAgIGNpL2luc3RhbGwtZGVwZW5kZW5jaWVzLnNoIHx8IGV4aXQgMQorICAgICAgIGNpL3J1bi1idWlsZC1hbmQtdGVzdHMuc2ggfHwgeworICAgICAgICAgICBjaS9wcmludC10ZXN0LWZhaWx1cmVzLnNoCisgICAgICAgICAgIGV4aXQgMQorICAgICAgIH0KKworICAgICAgIHRlc3QgIiRHSVRGSUxFU0hBUkVQV0QiID0gJyQoZ2l0ZmlsZXNoYXJlLnB3ZCknIHx8IHVtb3VudCAiJEhPTUUvdGVzdC1jYWNoZSIgfHwgZXhpdCAxCisgICAgZGlzcGxheU5hbWU6ICdjaS9ydW4tYnVpbGQtYW5kLXRlc3RzLnNoJworICAgIGVudjoKKyAgICAgIEdJVEZJTEVTSEFSRVBXRDogJChnaXRmaWxlc2hhcmUucHdkKQorICAtIHRhc2s6IFB1Ymxpc2hUZXN0UmVzdWx0c0AyCisgICAgZGlzcGxheU5hbWU6ICdQdWJsaXNoIFRlc3QgUmVzdWx0cyAqKi9URVNULSoueG1sJworICAgIGlucHV0czoKKyAgICAgIG1lcmdlVGVzdFJlc3VsdHM6IHRydWUKKyAgICAgIHRlc3RSdW5UaXRsZTogJ29zeC1jbGFuZycKKyAgICAgIHBsYXRmb3JtOiBtYWNPUworICAgICAgcHVibGlzaFJ1bkF0dGFjaG1lbnRzOiBmYWxzZQorICAgIGNvbmRpdGlvbjogc3VjY2VlZGVkT3JGYWlsZWQoKQorICAtIHRhc2s6IFB1Ymxpc2hCdWlsZEFydGlmYWN0c0AxCisgICAgZGlzcGxheU5hbWU6ICdQdWJsaXNoIHRyYXNoIGRpcmVjdG9yaWVzIG9mIGZhaWxlZCB0ZXN0cycKKyAgICBjb25kaXRpb246IGZhaWxlZCgpCisgICAgaW5wdXRzOgorICAgICAgUGF0aHRvUHVibGlzaDogdC9mYWlsZWQtdGVzdC1hcnRpZmFjdHMKKyAgICAgIEFydGlmYWN0TmFtZTogZmFpbGVkLXRlc3QtYXJ0aWZhY3RzCisKKy0gam9iOiBvc3hfZ2NjCisgIGRpc3BsYXlOYW1lOiBvc3gtZ2NjCisgIGNvbmRpdGlvbjogc3VjY2VlZGVkKCkKKyAgcG9vbDoKKyAgICB2bUltYWdlOiBtYWNPUy1sYXRlc3QKKyAgc3RlcHM6CisgIC0gYmFzaDogfAorICAgICAgIHRlc3QgIiRHSVRGSUxFU0hBUkVQV0QiID0gJyQoZ2l0ZmlsZXNoYXJlLnB3ZCknIHx8IGNpL21vdW50LWZpbGVzaGFyZS5zaCAvL2dpdGZpbGVzaGFyZS5maWxlLmNvcmUud2luZG93cy5uZXQvdGVzdC1jYWNoZSBnaXRmaWxlc2hhcmUgIiRHSVRGSUxFU0hBUkVQV0QiICIkSE9NRS90ZXN0LWNhY2hlIiB8fCBleGl0IDEKKworICAgICAgIGNpL2luc3RhbGwtZGVwZW5kZW5jaWVzLnNoIHx8IGV4aXQgMQorICAgICAgIGNpL3J1bi1idWlsZC1hbmQtdGVzdHMuc2ggfHwgeworICAgICAgICAgICBjaS9wcmludC10ZXN0LWZhaWx1cmVzLnNoCisgICAgICAgICAgIGV4aXQgMQorICAgICAgIH0KKworICAgICAgIHRlc3QgIiRHSVRGSUxFU0hBUkVQV0QiID0gJyQoZ2l0ZmlsZXNoYXJlLnB3ZCknIHx8IHVtb3VudCAiJEhPTUUvdGVzdC1jYWNoZSIgfHwgZXhpdCAxCisgICAgZGlzcGxheU5hbWU6ICdjaS9ydW4tYnVpbGQtYW5kLXRlc3RzLnNoJworICAgIGVudjoKKyAgICAgIEdJVEZJTEVTSEFSRVBXRDogJChnaXRmaWxlc2hhcmUucHdkKQorICAtIHRhc2s6IFB1Ymxpc2hUZXN0UmVzdWx0c0AyCisgICAgZGlzcGxheU5hbWU6ICdQdWJsaXNoIFRlc3QgUmVzdWx0cyAqKi9URVNULSoueG1sJworICAgIGlucHV0czoKKyAgICAgIG1lcmdlVGVzdFJlc3VsdHM6IHRydWUKKyAgICAgIHRlc3RSdW5UaXRsZTogJ29zeC1nY2MnCisgICAgICBwbGF0Zm9ybTogbWFjT1MKKyAgICAgIHB1Ymxpc2hSdW5BdHRhY2htZW50czogZmFsc2UKKyAgICBjb25kaXRpb246IHN1Y2NlZWRlZE9yRmFpbGVkKCkKKyAgLSB0YXNrOiBQdWJsaXNoQnVpbGRBcnRpZmFjdHNAMQorICAgIGRpc3BsYXlOYW1lOiAnUHVibGlzaCB0cmFzaCBkaXJlY3RvcmllcyBvZiBmYWlsZWQgdGVzdHMnCisgICAgY29uZGl0aW9uOiBmYWlsZWQoKQorICAgIGlucHV0czoKKyAgICAgIFBhdGh0b1B1Ymxpc2g6IHQvZmFpbGVkLXRlc3QtYXJ0aWZhY3RzCisgICAgICBBcnRpZmFjdE5hbWU6IGZhaWxlZC10ZXN0LWFydGlmYWN0cworCistIGpvYjogZ2V0dGV4dF9wb2lzb24KKyAgZGlzcGxheU5hbWU6IEdFVFRFWFRfUE9JU09OCisgIGNvbmRpdGlvbjogc3VjY2VlZGVkKCkKKyAgcG9vbDoKKyAgICB2bUltYWdlOiB1YnVudHUtbGF0ZXN0CisgIHN0ZXBzOgorICAtIGJhc2g6IHwKKyAgICAgICB0ZXN0ICIkR0lURklMRVNIQVJFUFdEIiA9ICckKGdpdGZpbGVzaGFyZS5wd2QpJyB8fCBjaS9tb3VudC1maWxlc2hhcmUuc2ggLy9naXRmaWxlc2hhcmUuZmlsZS5jb3JlLndpbmRvd3MubmV0L3Rlc3QtY2FjaGUgZ2l0ZmlsZXNoYXJlICIkR0lURklMRVNIQVJFUFdEIiAiJEhPTUUvdGVzdC1jYWNoZSIgfHwgZXhpdCAxCisKKyAgICAgICBzdWRvIGFwdC1nZXQgdXBkYXRlICYmCisgICAgICAgc3VkbyBhcHQtZ2V0IC15IGluc3RhbGwgZ2l0IGdjYyBtYWtlIGxpYnNzbC1kZXYgbGliY3VybDQtb3BlbnNzbC1kZXYgbGliZXhwYXQtZGV2IHRjbCB0ayBnZXR0ZXh0IGdpdC1lbWFpbCB6bGliMWctZGV2ICYmCisKKyAgICAgICBleHBvcnQgam9ibmFtZT1HRVRURVhUX1BPSVNPTiB8fCBleGl0IDEKKworICAgICAgIGNpL3J1bi1idWlsZC1hbmQtdGVzdHMuc2ggfHwgeworICAgICAgICAgICBjaS9wcmludC10ZXN0LWZhaWx1cmVzLnNoCisgICAgICAgICAgIGV4aXQgMQorICAgICAgIH0KKworICAgICAgIHRlc3QgIiRHSVRGSUxFU0hBUkVQV0QiID0gJyQoZ2l0ZmlsZXNoYXJlLnB3ZCknIHx8IHN1ZG8gdW1vdW50ICIkSE9NRS90ZXN0LWNhY2hlIiB8fCBleGl0IDEKKyAgICBkaXNwbGF5TmFtZTogJ2NpL3J1bi1idWlsZC1hbmQtdGVzdHMuc2gnCisgICAgZW52OgorICAgICAgR0lURklMRVNIQVJFUFdEOiAkKGdpdGZpbGVzaGFyZS5wd2QpCisgIC0gdGFzazogUHVibGlzaFRlc3RSZXN1bHRzQDIKKyAgICBkaXNwbGF5TmFtZTogJ1B1Ymxpc2ggVGVzdCBSZXN1bHRzICoqL1RFU1QtKi54bWwnCisgICAgaW5wdXRzOgorICAgICAgbWVyZ2VUZXN0UmVzdWx0czogdHJ1ZQorICAgICAgdGVzdFJ1blRpdGxlOiAnZ2V0dGV4dC1wb2lzb24nCisgICAgICBwbGF0Zm9ybTogTGludXgKKyAgICAgIHB1Ymxpc2hSdW5BdHRhY2htZW50czogZmFsc2UKKyAgICBjb25kaXRpb246IHN1Y2NlZWRlZE9yRmFpbGVkKCkKKyAgLSB0YXNrOiBQdWJsaXNoQnVpbGRBcnRpZmFjdHNAMQorICAgIGRpc3BsYXlOYW1lOiAnUHVibGlzaCB0cmFzaCBkaXJlY3RvcmllcyBvZiBmYWlsZWQgdGVzdHMnCisgICAgY29uZGl0aW9uOiBmYWlsZWQoKQorICAgIGlucHV0czoKKyAgICAgIFBhdGh0b1B1Ymxpc2g6IHQvZmFpbGVkLXRlc3QtYXJ0aWZhY3RzCisgICAgICBBcnRpZmFjdE5hbWU6IGZhaWxlZC10ZXN0LWFydGlmYWN0cworCistIGpvYjogbGludXgzMgorICBkaXNwbGF5TmFtZTogTGludXgzMgorICBjb25kaXRpb246IHN1Y2NlZWRlZCgpCisgIHBvb2w6CisgICAgdm1JbWFnZTogdWJ1bnR1LWxhdGVzdAorICBzdGVwczoKKyAgLSBiYXNoOiB8CisgICAgICAgdGVzdCAiJEdJVEZJTEVTSEFSRVBXRCIgPSAnJChnaXRmaWxlc2hhcmUucHdkKScgfHwgY2kvbW91bnQtZmlsZXNoYXJlLnNoIC8vZ2l0ZmlsZXNoYXJlLmZpbGUuY29yZS53aW5kb3dzLm5ldC90ZXN0LWNhY2hlIGdpdGZpbGVzaGFyZSAiJEdJVEZJTEVTSEFSRVBXRCIgIiRIT01FL3Rlc3QtY2FjaGUiIHx8IGV4aXQgMQorCisgICAgICAgcmVzPTAKKyAgICAgICBzdWRvIEFHRU5UX09TPSIkQUdFTlRfT1MiIEJVSUxEX0JVSUxETlVNQkVSPSIkQlVJTERfQlVJTEROVU1CRVIiIEJVSUxEX1JFUE9TSVRPUllfVVJJPSIkQlVJTERfUkVQT1NJVE9SWV9VUkkiIEJVSUxEX1NPVVJDRUJSQU5DSD0iJEJVSUxEX1NPVVJDRUJSQU5DSCIgQlVJTERfU09VUkNFVkVSU0lPTj0iJEJVSUxEX1NPVVJDRVZFUlNJT04iIFNZU1RFTV9QSEFTRU5BTUU9IiRTWVNURU1fUEhBU0VOQU1FIiBTWVNURU1fVEFTS0RFRklOSVRJT05TVVJJPSIkU1lTVEVNX1RBU0tERUZJTklUSU9OU1VSSSIgU1lTVEVNX1RFQU1QUk9KRUNUPSIkU1lTVEVNX1RFQU1QUk9KRUNUIiBDQz0kQ0MgTUFLRUZMQUdTPSIkTUFLRUZMQUdTIiBiYXNoIC1seGMgY2kvcnVuLWxpbnV4MzItZG9ja2VyLnNoIHx8IHJlcz0xCisKKyAgICAgICBzdWRvIGNobW9kIGErciB0L291dC9URVNULSoueG1sCisgICAgICAgdGVzdCAhIC1kIHQvZmFpbGVkLXRlc3QtYXJ0aWZhY3RzIHx8IHN1ZG8gY2htb2QgYStyIHQvZmFpbGVkLXRlc3QtYXJ0aWZhY3RzCisKKyAgICAgICB0ZXN0ICIkR0lURklMRVNIQVJFUFdEIiA9ICckKGdpdGZpbGVzaGFyZS5wd2QpJyB8fCBzdWRvIHVtb3VudCAiJEhPTUUvdGVzdC1jYWNoZSIgfHwgcmVzPTEKKyAgICAgICBleGl0ICRyZXMKKyAgICBkaXNwbGF5TmFtZTogJ2NpL3J1bi1saW51eDMyLWRvY2tlci5zaCcKKyAgICBlbnY6CisgICAgICBHSVRGSUxFU0hBUkVQV0Q6ICQoZ2l0ZmlsZXNoYXJlLnB3ZCkKKyAgLSB0YXNrOiBQdWJsaXNoVGVzdFJlc3VsdHNAMgorICAgIGRpc3BsYXlOYW1lOiAnUHVibGlzaCBUZXN0IFJlc3VsdHMgKiovVEVTVC0qLnhtbCcKKyAgICBpbnB1dHM6CisgICAgICBtZXJnZVRlc3RSZXN1bHRzOiB0cnVlCisgICAgICB0ZXN0UnVuVGl0bGU6ICdsaW51eDMyJworICAgICAgcGxhdGZvcm06IExpbnV4CisgICAgICBwdWJsaXNoUnVuQXR0YWNobWVudHM6IGZhbHNlCisgICAgY29uZGl0aW9uOiBzdWNjZWVkZWRPckZhaWxlZCgpCisgIC0gdGFzazogUHVibGlzaEJ1aWxkQXJ0aWZhY3RzQDEKKyAgICBkaXNwbGF5TmFtZTogJ1B1Ymxpc2ggdHJhc2ggZGlyZWN0b3JpZXMgb2YgZmFpbGVkIHRlc3RzJworICAgIGNvbmRpdGlvbjogZmFpbGVkKCkKKyAgICBpbnB1dHM6CisgICAgICBQYXRodG9QdWJsaXNoOiB0L2ZhaWxlZC10ZXN0LWFydGlmYWN0cworICAgICAgQXJ0aWZhY3ROYW1lOiBmYWlsZWQtdGVzdC1hcnRpZmFjdHMKKworLSBqb2I6IHN0YXRpY19hbmFseXNpcworICBkaXNwbGF5TmFtZTogU3RhdGljQW5hbHlzaXMKKyAgY29uZGl0aW9uOiBzdWNjZWVkZWQoKQorICBwb29sOgorICAgIHZtSW1hZ2U6IHVidW50dS1sYXRlc3QKKyAgc3RlcHM6CisgIC0gYmFzaDogfAorICAgICAgIHRlc3QgIiRHSVRGSUxFU0hBUkVQV0QiID0gJyQoZ2l0ZmlsZXNoYXJlLnB3ZCknIHx8IGNpL21vdW50LWZpbGVzaGFyZS5zaCAvL2dpdGZpbGVzaGFyZS5maWxlLmNvcmUud2luZG93cy5uZXQvdGVzdC1jYWNoZSBnaXRmaWxlc2hhcmUgIiRHSVRGSUxFU0hBUkVQV0QiICIkSE9NRS90ZXN0LWNhY2hlIiB8fCBleGl0IDEKKworICAgICAgIHN1ZG8gYXB0LWdldCB1cGRhdGUgJiYKKyAgICAgICBzdWRvIGFwdC1nZXQgaW5zdGFsbCAteSBjb2NjaW5lbGxlIGxpYmN1cmw0LW9wZW5zc2wtZGV2IGxpYnNzbC1kZXYgbGliZXhwYXQtZGV2IGdldHRleHQgJiYKKworICAgICAgIGV4cG9ydCBqb2JuYW1lPVN0YXRpY0FuYWx5c2lzICYmCisKKyAgICAgICBjaS9ydW4tc3RhdGljLWFuYWx5c2lzLnNoIHx8IGV4aXQgMQorCisgICAgICAgdGVzdCAiJEdJVEZJTEVTSEFSRVBXRCIgPSAnJChnaXRmaWxlc2hhcmUucHdkKScgfHwgc3VkbyB1bW91bnQgIiRIT01FL3Rlc3QtY2FjaGUiIHx8IGV4aXQgMQorICAgIGRpc3BsYXlOYW1lOiAnY2kvcnVuLXN0YXRpYy1hbmFseXNpcy5zaCcKKyAgICBlbnY6CisgICAgICBHSVRGSUxFU0hBUkVQV0Q6ICQoZ2l0ZmlsZXNoYXJlLnB3ZCkKKworLSBqb2I6IGRvY3VtZW50YXRpb24KKyAgZGlzcGxheU5hbWU6IERvY3VtZW50YXRpb24KKyAgY29uZGl0aW9uOiBzdWNjZWVkZWQoKQorICBwb29sOgorICAgIHZtSW1hZ2U6IHVidW50dS1sYXRlc3QKKyAgc3RlcHM6CisgIC0gYmFzaDogfAorICAgICAgIHRlc3QgIiRHSVRGSUxFU0hBUkVQV0QiID0gJyQoZ2l0ZmlsZXNoYXJlLnB3ZCknIHx8IGNpL21vdW50LWZpbGVzaGFyZS5zaCAvL2dpdGZpbGVzaGFyZS5maWxlLmNvcmUud2luZG93cy5uZXQvdGVzdC1jYWNoZSBnaXRmaWxlc2hhcmUgIiRHSVRGSUxFU0hBUkVQV0QiICIkSE9NRS90ZXN0LWNhY2hlIiB8fCBleGl0IDEKKworICAgICAgIHN1ZG8gYXB0LWdldCB1cGRhdGUgJiYKKyAgICAgICBzdWRvIGFwdC1nZXQgaW5zdGFsbCAteSBhc2NpaWRvYyB4bWx0byBhc2NpaWRvY3RvciBkb2Nib29rLXhzbC1ucyAmJgorCisgICAgICAgZXhwb3J0IEFMUkVBRFlfSEFWRV9BU0NJSURPQ1RPUj15ZXMuICYmCisgICAgICAgZXhwb3J0IGpvYm5hbWU9RG9jdW1lbnRhdGlvbiAmJgorCisgICAgICAgY2kvdGVzdC1kb2N1bWVudGF0aW9uLnNoIHx8IGV4aXQgMQorCisgICAgICAgdGVzdCAiJEdJVEZJTEVTSEFSRVBXRCIgPSAnJChnaXRmaWxlc2hhcmUucHdkKScgfHwgc3VkbyB1bW91bnQgIiRIT01FL3Rlc3QtY2FjaGUiIHx8IGV4aXQgMQorICAgIGRpc3BsYXlOYW1lOiAnY2kvdGVzdC1kb2N1bWVudGF0aW9uLnNoJworICAgIGVudjoKKyAgICAgIEdJVEZJTEVTSEFSRVBXRDogJChnaXRmaWxlc2hhcmUucHdkKQpkaWZmIC0tZ2l0IGEvYmFubmVkLmggYi9iYW5uZWQuaAppbmRleCAyOGY1OTM3Li42MGExOGQ0IDEwMDY0NAotLS0gYS9iYW5uZWQuaAorKysgYi9iYW5uZWQuaApAQCAtMTYsNiArMTYsOCBAQAogI2RlZmluZSBzdHJjYXQoeCx5KSBCQU5ORUQoc3RyY2F0KQogI3VuZGVmIHN0cm5jcHkKICNkZWZpbmUgc3RybmNweSh4LHksbikgQkFOTkVEKHN0cm5jcHkpCisjdW5kZWYgc3RybmNhdAorI2RlZmluZSBzdHJuY2F0KHgseSxuKSBCQU5ORUQoc3RybmNhdCkKIAogI3VuZGVmIHNwcmludGYKICN1bmRlZiB2c3ByaW50ZgpAQCAtMjQsNyArMjYsNyBAQAogI2RlZmluZSB2c3ByaW50ZiguLi4pIEJBTk5FRCh2c3ByaW50ZikKICNlbHNlCiAjZGVmaW5lIHNwcmludGYoYnVmLGZtdCxhcmcpIEJBTk5FRChzcHJpbnRmKQotI2RlZmluZSB2c3ByaW50ZihidWYsZm10LGFyZykgQkFOTkVEKHNwcmludGYpCisjZGVmaW5lIHZzcHJpbnRmKGJ1ZixmbXQsYXJnKSBCQU5ORUQodnNwcmludGYpCiAjZW5kaWYKIAogI2VuZGlmIC8qIEJBTk5FRF9IICovCmRpZmYgLS1naXQgYS9iaXNlY3QuYyBiL2Jpc2VjdC5jCmluZGV4IDQ4NzY3NWMuLjkxNTRmODEgMTAwNjQ0Ci0tLSBhL2Jpc2VjdC5jCisrKyBiL2Jpc2VjdC5jCkBAIC01NTgsNyArNTU4LDggQEAKICAqIGlzIGluY3JlYXNlZCBieSBvbmUgYmV0d2VlbiBlYWNoIGNhbGwsIGJ1dCB0aGF0IHNob3VsZCBub3QgbWF0dGVyCiAgKiBmb3IgdGhpcyBhcHBsaWNhdGlvbi4KICAqLwotc3RhdGljIHVuc2lnbmVkIGdldF9wcm4odW5zaWduZWQgY291bnQpIHsKK3N0YXRpYyB1bnNpZ25lZCBnZXRfcHJuKHVuc2lnbmVkIGNvdW50KQorewogCWNvdW50ID0gY291bnQgKiAxMTAzNTE1MjQ1ICsgMTIzNDU7CiAJcmV0dXJuIChjb3VudC82NTUzNikgJSBQUk5fTU9EVUxPOwogfQpAQCAtNTcxLDcgKzU3Miw3IEBACiB7CiAJZmxvYXQgZCwgeCA9IHZhbDsKIAotCWlmICh2YWwgPT0gMCkKKwlpZiAoIXZhbCkKIAkJcmV0dXJuIDA7CiAKIAlkbyB7CkBAIC02MjYsMTQgKzYyNywxNSBAQAogCXJldHVybiBza2lwX2F3YXkobGlzdCwgY291bnQpOwogfQogCi1zdGF0aWMgdm9pZCBiaXNlY3RfcmV2X3NldHVwKHN0cnVjdCByZXZfaW5mbyAqcmV2cywgY29uc3QgY2hhciAqcHJlZml4LAorc3RhdGljIHZvaWQgYmlzZWN0X3Jldl9zZXR1cChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHJldl9pbmZvICpyZXZzLAorCQkJICAgICBjb25zdCBjaGFyICpwcmVmaXgsCiAJCQkgICAgIGNvbnN0IGNoYXIgKmJhZF9mb3JtYXQsIGNvbnN0IGNoYXIgKmdvb2RfZm9ybWF0LAogCQkJICAgICBpbnQgcmVhZF9wYXRocykKIHsKIAlzdHJ1Y3QgYXJndl9hcnJheSByZXZfYXJndiA9IEFSR1ZfQVJSQVlfSU5JVDsKIAlpbnQgaTsKIAotCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksIHJldnMsIHByZWZpeCk7CisJcmVwb19pbml0X3JldmlzaW9ucyhyLCByZXZzLCBwcmVmaXgpOwogCXJldnMtPmFiYnJldiA9IDA7CiAJcmV2cy0+Y29tbWl0X2Zvcm1hdCA9IENNSVRfRk1UX1VOU1BFQ0lGSUVEOwogCkBAIC02NTYsMTQgKzY1OCwxNCBAQAogCWlmIChwcmVwYXJlX3JldmlzaW9uX3dhbGsocmV2cykpCiAJCWRpZSgicmV2aXNpb24gd2FsayBzZXR1cCBmYWlsZWQiKTsKIAlpZiAocmV2cy0+dHJlZV9vYmplY3RzKQotCQltYXJrX2VkZ2VzX3VuaW50ZXJlc3RpbmcocmV2cywgTlVMTCk7CisJCW1hcmtfZWRnZXNfdW5pbnRlcmVzdGluZyhyZXZzLCBOVUxMLCAwKTsKIH0KIAotc3RhdGljIHZvaWQgZXhpdF9pZl9za2lwcGVkX2NvbW1pdHMoc3RydWN0IGNvbW1pdF9saXN0ICp0cmllZCwKK3N0YXRpYyBlbnVtIGJpc2VjdF9lcnJvciBlcnJvcl9pZl9za2lwcGVkX2NvbW1pdHMoc3RydWN0IGNvbW1pdF9saXN0ICp0cmllZCwKIAkJCQkgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqYmFkKQogewogCWlmICghdHJpZWQpCi0JCXJldHVybjsKKwkJcmV0dXJuIEJJU0VDVF9PSzsKIAogCXByaW50ZigiVGhlcmUgYXJlIG9ubHkgJ3NraXAncGVkIGNvbW1pdHMgbGVmdCB0byB0ZXN0LlxuIgogCSAgICAgICAiVGhlIGZpcnN0ICVzIGNvbW1pdCBjb3VsZCBiZSBhbnkgb2Y6XG4iLCB0ZXJtX2JhZCk7CkBAIC02NzQsNyArNjc2LDggQEAKIAlpZiAoYmFkKQogCQlwcmludGYoIiVzXG4iLCBvaWRfdG9faGV4KGJhZCkpOwogCXByaW50ZihfKCJXZSBjYW5ub3QgYmlzZWN0IG1vcmUhXG4iKSk7Ci0JZXhpdCgyKTsKKworCXJldHVybiBCSVNFQ1RfT05MWV9TS0lQUEVEX0xFRlQ7CiB9CiAKIHN0YXRpYyBpbnQgaXNfZXhwZWN0ZWRfcmV2KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKQEAgLTcwMSwxMSArNzA0LDEyIEBACiAJcmV0dXJuIHJlczsKIH0KIAotc3RhdGljIGludCBiaXNlY3RfY2hlY2tvdXQoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqYmlzZWN0X3JldiwgaW50IG5vX2NoZWNrb3V0KQorc3RhdGljIGVudW0gYmlzZWN0X2Vycm9yIGJpc2VjdF9jaGVja291dChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpiaXNlY3RfcmV2LCBpbnQgbm9fY2hlY2tvdXQpCiB7CiAJY2hhciBiaXNlY3RfcmV2X2hleFtHSVRfTUFYX0hFWFNaICsgMV07CisJZW51bSBiaXNlY3RfZXJyb3IgcmVzID0gQklTRUNUX09LOwogCi0JbWVtY3B5KGJpc2VjdF9yZXZfaGV4LCBvaWRfdG9faGV4KGJpc2VjdF9yZXYpLCBHSVRfU0hBMV9IRVhTWiArIDEpOworCW1lbWNweShiaXNlY3RfcmV2X2hleCwgb2lkX3RvX2hleChiaXNlY3RfcmV2KSwgdGhlX2hhc2hfYWxnby0+aGV4c3ogKyAxKTsKIAl1cGRhdGVfcmVmKE5VTEwsICJCSVNFQ1RfRVhQRUNURURfUkVWIiwgYmlzZWN0X3JldiwgTlVMTCwgMCwgVVBEQVRFX1JFRlNfRElFX09OX0VSUik7CiAKIAlhcmd2X2NoZWNrb3V0WzJdID0gYmlzZWN0X3Jldl9oZXg7CkBAIC03MTMsMzkgKzcxNyw1MSBAQAogCQl1cGRhdGVfcmVmKE5VTEwsICJCSVNFQ1RfSEVBRCIsIGJpc2VjdF9yZXYsIE5VTEwsIDAsCiAJCQkgICBVUERBVEVfUkVGU19ESUVfT05fRVJSKTsKIAl9IGVsc2UgewotCQlpbnQgcmVzOwogCQlyZXMgPSBydW5fY29tbWFuZF92X29wdChhcmd2X2NoZWNrb3V0LCBSVU5fR0lUX0NNRCk7CiAJCWlmIChyZXMpCi0JCQlleGl0KHJlcyk7CisJCQkvKgorCQkJICogRXJyb3JzIGluIGBydW5fY29tbWFuZCgpYCBpdHNlbGYsIHNpZ25hbGVkIGJ5IHJlcyA8IDAsCisJCQkgKiBhbmQgZXJyb3JzIGluIHRoZSBjaGlsZCBwcm9jZXNzLCBzaWduYWxlZCBieSByZXMgPiAwCisJCQkgKiBjYW4gYm90aCBiZSB0cmVhdGVkIGFzIHJlZ3VsYXIgQklTRUNUX0ZBSUxVUkUgKC0xKS4KKwkJCSAqLworCQkJcmV0dXJuIC1hYnMocmVzKTsKIAl9CiAKIAlhcmd2X3Nob3dfYnJhbmNoWzFdID0gYmlzZWN0X3Jldl9oZXg7Ci0JcmV0dXJuIHJ1bl9jb21tYW5kX3Zfb3B0KGFyZ3Zfc2hvd19icmFuY2gsIFJVTl9HSVRfQ01EKTsKKwlyZXMgPSBydW5fY29tbWFuZF92X29wdChhcmd2X3Nob3dfYnJhbmNoLCBSVU5fR0lUX0NNRCk7CisJLyoKKwkgKiBFcnJvcnMgaW4gYHJ1bl9jb21tYW5kKClgIGl0c2VsZiwgc2lnbmFsZWQgYnkgcmVzIDwgMCwKKwkgKiBhbmQgZXJyb3JzIGluIHRoZSBjaGlsZCBwcm9jZXNzLCBzaWduYWxlZCBieSByZXMgPiAwCisJICogY2FuIGJvdGggYmUgdHJlYXRlZCBhcyByZWd1bGFyIEJJU0VDVF9GQUlMVVJFICgtMSkuCisJICovCisJcmV0dXJuIC1hYnMocmVzKTsKIH0KIAotc3RhdGljIHN0cnVjdCBjb21taXQgKmdldF9jb21taXRfcmVmZXJlbmNlKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKK3N0YXRpYyBzdHJ1Y3QgY29tbWl0ICpnZXRfY29tbWl0X3JlZmVyZW5jZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewotCXN0cnVjdCBjb21taXQgKnIgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZSh0aGVfcmVwb3NpdG9yeSwgb2lkKTsKLQlpZiAoIXIpCisJc3RydWN0IGNvbW1pdCAqYyA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHIsIG9pZCk7CisJaWYgKCFjKQogCQlkaWUoXygiTm90IGEgdmFsaWQgY29tbWl0IG5hbWUgJXMiKSwgb2lkX3RvX2hleChvaWQpKTsKLQlyZXR1cm4gcjsKKwlyZXR1cm4gYzsKIH0KIAotc3RhdGljIHN0cnVjdCBjb21taXQgKipnZXRfYmFkX2FuZF9nb29kX2NvbW1pdHMoaW50ICpyZXZfbnIpCitzdGF0aWMgc3RydWN0IGNvbW1pdCAqKmdldF9iYWRfYW5kX2dvb2RfY29tbWl0cyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJCWludCAqcmV2X25yKQogewogCXN0cnVjdCBjb21taXQgKipyZXY7CiAJaW50IGksIG4gPSAwOwogCiAJQUxMT0NfQVJSQVkocmV2LCAxICsgZ29vZF9yZXZzLm5yKTsKLQlyZXZbbisrXSA9IGdldF9jb21taXRfcmVmZXJlbmNlKGN1cnJlbnRfYmFkX29pZCk7CisJcmV2W24rK10gPSBnZXRfY29tbWl0X3JlZmVyZW5jZShyLCBjdXJyZW50X2JhZF9vaWQpOwogCWZvciAoaSA9IDA7IGkgPCBnb29kX3JldnMubnI7IGkrKykKLQkJcmV2W24rK10gPSBnZXRfY29tbWl0X3JlZmVyZW5jZShnb29kX3JldnMub2lkICsgaSk7CisJCXJldltuKytdID0gZ2V0X2NvbW1pdF9yZWZlcmVuY2UociwgZ29vZF9yZXZzLm9pZCArIGkpOwogCSpyZXZfbnIgPSBuOwogCiAJcmV0dXJuIHJldjsKIH0KIAotc3RhdGljIHZvaWQgaGFuZGxlX2JhZF9tZXJnZV9iYXNlKHZvaWQpCitzdGF0aWMgZW51bSBiaXNlY3RfZXJyb3IgaGFuZGxlX2JhZF9tZXJnZV9iYXNlKHZvaWQpCiB7CiAJaWYgKGlzX2V4cGVjdGVkX3JldihjdXJyZW50X2JhZF9vaWQpKSB7CiAJCWNoYXIgKmJhZF9oZXggPSBvaWRfdG9faGV4KGN1cnJlbnRfYmFkX29pZCk7CkBAIC03NjYsMTQgKzc4MiwxNCBAQAogCQkJCSJiZXR3ZWVuICVzIGFuZCBbJXNdLlxuIiksCiAJCQkJYmFkX2hleCwgdGVybV9iYWQsIHRlcm1fZ29vZCwgYmFkX2hleCwgZ29vZF9oZXgpOwogCQl9Ci0JCWV4aXQoMyk7CisJCXJldHVybiBCSVNFQ1RfTUVSR0VfQkFTRV9DSEVDSzsKIAl9CiAKIAlmcHJpbnRmKHN0ZGVyciwgXygiU29tZSAlcyByZXZzIGFyZSBub3QgYW5jZXN0b3JzIG9mIHRoZSAlcyByZXYuXG4iCiAJCSJnaXQgYmlzZWN0IGNhbm5vdCB3b3JrIHByb3Blcmx5IGluIHRoaXMgY2FzZS5cbiIKIAkJIk1heWJlIHlvdSBtaXN0b29rICVzIGFuZCAlcyByZXZzP1xuIiksCiAJCXRlcm1fZ29vZCwgdGVybV9iYWQsIHRlcm1fZ29vZCwgdGVybV9iYWQpOwotCWV4aXQoMSk7CisJcmV0dXJuIEJJU0VDVF9GQUlMRUQ7CiB9CiAKIHN0YXRpYyB2b2lkIGhhbmRsZV9za2lwcGVkX21lcmdlX2Jhc2UoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqbWIpCkBAIC03OTUsMTMgKzgxMSwxOCBAQAogICogImNoZWNrX21lcmdlX2Jhc2VzIiBjaGVja3MgdGhhdCBtZXJnZSBiYXNlcyBhcmUgbm90ICJiYWQiIChvciAibmV3IikuCiAgKgogICogLSBJZiBvbmUgaXMgImJhZCIgKG9yICJuZXciKSwgaXQgbWVhbnMgdGhlIHVzZXIgYXNzdW1lZCBzb21ldGhpbmcgd3JvbmcKLSAqIGFuZCB3ZSBtdXN0IGV4aXQgd2l0aCBhIG5vbiAwIGVycm9yIGNvZGUuCisgKiBhbmQgd2UgbXVzdCByZXR1cm4gZXJyb3Igd2l0aCBhIG5vbiAwIGVycm9yIGNvZGUuCiAgKiAtIElmIG9uZSBpcyAiZ29vZCIgKG9yICJvbGQiKSwgdGhhdCdzIGdvb2QsIHdlIGhhdmUgbm90aGluZyB0byBkby4KICAqIC0gSWYgb25lIGlzICJza2lwcGVkIiwgd2UgY2FuJ3Qga25vdyBidXQgd2Ugc2hvdWxkIHdhcm4uCiAgKiAtIElmIHdlIGRvbid0IGtub3csIHdlIHNob3VsZCBjaGVjayBpdCBvdXQgYW5kIGFzayB0aGUgdXNlciB0byB0ZXN0LgorICogLSBJZiBhIG1lcmdlIGJhc2UgbXVzdCBiZSB0ZXN0ZWQsIG9uIHN1Y2Nlc3MgcmV0dXJuCisgKiBCSVNFQ1RfSU5URVJOQUxfU1VDQ0VTU19NRVJHRV9CQVNFICgtMTEpIGEgc3BlY2lhbCBjb25kaXRpb24KKyAqIGZvciBlYXJseSBzdWNjZXNzLCB0aGlzIHdpbGwgYmUgY29udmVydGVkIGJhY2sgdG8gMCBpbgorICogY2hlY2tfZ29vZF9hcmVfYW5jZXN0b3JzX29mX2JhZCgpLgogICovCi1zdGF0aWMgdm9pZCBjaGVja19tZXJnZV9iYXNlcyhpbnQgcmV2X25yLCBzdHJ1Y3QgY29tbWl0ICoqcmV2LCBpbnQgbm9fY2hlY2tvdXQpCitzdGF0aWMgZW51bSBiaXNlY3RfZXJyb3IgY2hlY2tfbWVyZ2VfYmFzZXMoaW50IHJldl9uciwgc3RydWN0IGNvbW1pdCAqKnJldiwgaW50IG5vX2NoZWNrb3V0KQogeworCWVudW0gYmlzZWN0X2Vycm9yIHJlcyA9IEJJU0VDVF9PSzsKIAlzdHJ1Y3QgY29tbWl0X2xpc3QgKnJlc3VsdDsKIAogCXJlc3VsdCA9IGdldF9tZXJnZV9iYXNlc19tYW55KHJldlswXSwgcmV2X25yIC0gMSwgcmV2ICsgMSk7CkBAIC04MDksMjYgKzgzMCwzMyBAQAogCWZvciAoOyByZXN1bHQ7IHJlc3VsdCA9IHJlc3VsdC0+bmV4dCkgewogCQljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICptYiA9ICZyZXN1bHQtPml0ZW0tPm9iamVjdC5vaWQ7CiAJCWlmIChvaWRlcShtYiwgY3VycmVudF9iYWRfb2lkKSkgewotCQkJaGFuZGxlX2JhZF9tZXJnZV9iYXNlKCk7CisJCQlyZXMgPSBoYW5kbGVfYmFkX21lcmdlX2Jhc2UoKTsKKwkJCWJyZWFrOwogCQl9IGVsc2UgaWYgKDAgPD0gb2lkX2FycmF5X2xvb2t1cCgmZ29vZF9yZXZzLCBtYikpIHsKIAkJCWNvbnRpbnVlOwogCQl9IGVsc2UgaWYgKDAgPD0gb2lkX2FycmF5X2xvb2t1cCgmc2tpcHBlZF9yZXZzLCBtYikpIHsKIAkJCWhhbmRsZV9za2lwcGVkX21lcmdlX2Jhc2UobWIpOwogCQl9IGVsc2UgewogCQkJcHJpbnRmKF8oIkJpc2VjdGluZzogYSBtZXJnZSBiYXNlIG11c3QgYmUgdGVzdGVkXG4iKSk7Ci0JCQlleGl0KGJpc2VjdF9jaGVja291dChtYiwgbm9fY2hlY2tvdXQpKTsKKwkJCXJlcyA9IGJpc2VjdF9jaGVja291dChtYiwgbm9fY2hlY2tvdXQpOworCQkJaWYgKCFyZXMpCisJCQkJLyogaW5kaWNhdGUgZWFybHkgc3VjY2VzcyAqLworCQkJCXJlcyA9IEJJU0VDVF9JTlRFUk5BTF9TVUNDRVNTX01FUkdFX0JBU0U7CisJCQlicmVhazsKIAkJfQogCX0KIAogCWZyZWVfY29tbWl0X2xpc3QocmVzdWx0KTsKKwlyZXR1cm4gcmVzOwogfQogCi1zdGF0aWMgaW50IGNoZWNrX2FuY2VzdG9ycyhpbnQgcmV2X25yLCBzdHJ1Y3QgY29tbWl0ICoqcmV2LCBjb25zdCBjaGFyICpwcmVmaXgpCitzdGF0aWMgaW50IGNoZWNrX2FuY2VzdG9ycyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgaW50IHJldl9uciwKKwkJCSAgIHN0cnVjdCBjb21taXQgKipyZXYsIGNvbnN0IGNoYXIgKnByZWZpeCkKIHsKIAlzdHJ1Y3QgcmV2X2luZm8gcmV2czsKIAlpbnQgcmVzOwogCi0JYmlzZWN0X3Jldl9zZXR1cCgmcmV2cywgcHJlZml4LCAiXiVzIiwgIiVzIiwgMCk7CisJYmlzZWN0X3Jldl9zZXR1cChyLCAmcmV2cywgcHJlZml4LCAiXiVzIiwgIiVzIiwgMCk7CiAKIAliaXNlY3RfY29tbW9uKCZyZXZzKTsKIAlyZXMgPSAocmV2cy5jb21taXRzICE9IE5VTEwpOwpAQCAtODQ1LDY2ICs4NzMsNzYgQEAKICAqCiAgKiBJZiB0aGF0J3Mgbm90IHRoZSBjYXNlLCB3ZSBuZWVkIHRvIGNoZWNrIHRoZSBtZXJnZSBiYXNlcy4KICAqIElmIGEgbWVyZ2UgYmFzZSBtdXN0IGJlIHRlc3RlZCBieSB0aGUgdXNlciwgaXRzIHNvdXJjZSBjb2RlIHdpbGwgYmUKLSAqIGNoZWNrZWQgb3V0IHRvIGJlIHRlc3RlZCBieSB0aGUgdXNlciBhbmQgd2Ugd2lsbCBleGl0LgorICogY2hlY2tlZCBvdXQgdG8gYmUgdGVzdGVkIGJ5IHRoZSB1c2VyIGFuZCB3ZSB3aWxsIHJldHVybi4KICAqLwotc3RhdGljIHZvaWQgY2hlY2tfZ29vZF9hcmVfYW5jZXN0b3JzX29mX2JhZChjb25zdCBjaGFyICpwcmVmaXgsIGludCBub19jaGVja291dCkKKworc3RhdGljIGVudW0gYmlzZWN0X2Vycm9yIGNoZWNrX2dvb2RfYXJlX2FuY2VzdG9yc19vZl9iYWQoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJCSAgICBjb25zdCBjaGFyICpwcmVmaXgsCisJCQkJCSAgICBpbnQgbm9fY2hlY2tvdXQpCiB7Ci0JY2hhciAqZmlsZW5hbWUgPSBnaXRfcGF0aGR1cCgiQklTRUNUX0FOQ0VTVE9SU19PSyIpOworCWNoYXIgKmZpbGVuYW1lOwogCXN0cnVjdCBzdGF0IHN0OwogCWludCBmZCwgcmV2X25yOworCWVudW0gYmlzZWN0X2Vycm9yIHJlcyA9IEJJU0VDVF9PSzsKIAlzdHJ1Y3QgY29tbWl0ICoqcmV2OwogCiAJaWYgKCFjdXJyZW50X2JhZF9vaWQpCi0JCWRpZShfKCJhICVzIHJldmlzaW9uIGlzIG5lZWRlZCIpLCB0ZXJtX2JhZCk7CisJCXJldHVybiBlcnJvcihfKCJhICVzIHJldmlzaW9uIGlzIG5lZWRlZCIpLCB0ZXJtX2JhZCk7CisKKwlmaWxlbmFtZSA9IGdpdF9wYXRoZHVwKCJCSVNFQ1RfQU5DRVNUT1JTX09LIik7CiAKIAkvKiBDaGVjayBpZiBmaWxlIEJJU0VDVF9BTkNFU1RPUlNfT0sgZXhpc3RzLiAqLwogCWlmICghc3RhdChmaWxlbmFtZSwgJnN0KSAmJiBTX0lTUkVHKHN0LnN0X21vZGUpKQogCQlnb3RvIGRvbmU7CiAKIAkvKiBCaXNlY3Rpbmcgd2l0aCBubyBnb29kIHJldiBpcyBvay4gKi8KLQlpZiAoZ29vZF9yZXZzLm5yID09IDApCisJaWYgKCFnb29kX3JldnMubnIpCiAJCWdvdG8gZG9uZTsKIAogCS8qIENoZWNrIGlmIGFsbCBnb29kIHJldnMgYXJlIGFuY2VzdG9yIG9mIHRoZSBiYWQgcmV2LiAqLwotCXJldiA9IGdldF9iYWRfYW5kX2dvb2RfY29tbWl0cygmcmV2X25yKTsKLQlpZiAoY2hlY2tfYW5jZXN0b3JzKHJldl9uciwgcmV2LCBwcmVmaXgpKQotCQljaGVja19tZXJnZV9iYXNlcyhyZXZfbnIsIHJldiwgbm9fY2hlY2tvdXQpOworCisJcmV2ID0gZ2V0X2JhZF9hbmRfZ29vZF9jb21taXRzKHIsICZyZXZfbnIpOworCWlmIChjaGVja19hbmNlc3RvcnMociwgcmV2X25yLCByZXYsIHByZWZpeCkpCisJCXJlcyA9IGNoZWNrX21lcmdlX2Jhc2VzKHJldl9uciwgcmV2LCBub19jaGVja291dCk7CiAJZnJlZShyZXYpOwogCi0JLyogQ3JlYXRlIGZpbGUgQklTRUNUX0FOQ0VTVE9SU19PSy4gKi8KLQlmZCA9IG9wZW4oZmlsZW5hbWUsIE9fQ1JFQVQgfCBPX1RSVU5DIHwgT19XUk9OTFksIDA2MDApOwotCWlmIChmZCA8IDApCi0JCXdhcm5pbmdfZXJybm8oXygiY291bGQgbm90IGNyZWF0ZSBmaWxlICclcyciKSwKLQkJCSAgICAgIGZpbGVuYW1lKTsKLQllbHNlCi0JCWNsb3NlKGZkKTsKKwlpZiAoIXJlcykgeworCQkvKiBDcmVhdGUgZmlsZSBCSVNFQ1RfQU5DRVNUT1JTX09LLiAqLworCQlmZCA9IG9wZW4oZmlsZW5hbWUsIE9fQ1JFQVQgfCBPX1RSVU5DIHwgT19XUk9OTFksIDA2MDApOworCQlpZiAoZmQgPCAwKQorCQkJLyoKKwkJCSAqIEJJU0VDVF9BTkNFU1RPUlNfT0sgZmlsZSBpcyBub3QgYWJzb2x1dGVseSBuZWNlc3NhcnksCisJCQkgKiB0aGUgYmlzZWN0aW9uIHByb2Nlc3Mgd2lsbCBjb250aW51ZSBhdCB0aGUgbmV4dAorCQkJICogYmlzZWN0aW9uIHN0ZXAuCisJCQkgKiBTbywganVzdCBzaWduYWwgd2l0aCBhIHdhcm5pbmcgdGhhdCBzb21ldGhpbmcKKwkJCSAqIG1pZ2h0IGJlIHdyb25nLgorCQkJICovCisJCQl3YXJuaW5nX2Vycm5vKF8oImNvdWxkIG5vdCBjcmVhdGUgZmlsZSAnJXMnIiksCisJCQkJZmlsZW5hbWUpOworCQllbHNlCisJCQljbG9zZShmZCk7CisJfQogIGRvbmU6CiAJZnJlZShmaWxlbmFtZSk7CisJcmV0dXJuIHJlczsKIH0KIAogLyoKICAqIFRoaXMgZG9lcyAiZ2l0IGRpZmYtdHJlZSAtLXByZXR0eSBDT01NSVQiIHdpdGhvdXQgb25lIGZvcmsrZXhlYy4KICAqLwotc3RhdGljIHZvaWQgc2hvd19kaWZmX3RyZWUoY29uc3QgY2hhciAqcHJlZml4LCBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCitzdGF0aWMgdm9pZCBzaG93X2RpZmZfdHJlZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgIGNvbnN0IGNoYXIgKnByZWZpeCwKKwkJCSAgIHN0cnVjdCBjb21taXQgKmNvbW1pdCkKIHsKKwljb25zdCBjaGFyICphcmd2W10gPSB7CisJCSJkaWZmLXRyZWUiLCAiLS1wcmV0dHkiLCAiLS1zdGF0IiwgIi0tc3VtbWFyeSIsICItLWNjIiwgTlVMTAorCX07CiAJc3RydWN0IHJldl9pbmZvIG9wdDsKIAotCS8qIGRpZmYtdHJlZSBpbml0ICovCi0JcmVwb19pbml0X3JldmlzaW9ucyh0aGVfcmVwb3NpdG9yeSwgJm9wdCwgcHJlZml4KTsKLQlnaXRfY29uZmlnKGdpdF9kaWZmX2Jhc2ljX2NvbmZpZywgTlVMTCk7IC8qIG5vICJkaWZmIiBVSSBvcHRpb25zICovCi0Jb3B0LmFiYnJldiA9IDA7Ci0Jb3B0LmRpZmYgPSAxOworCWdpdF9jb25maWcoZ2l0X2RpZmZfdWlfY29uZmlnLCBOVUxMKTsKKwlyZXBvX2luaXRfcmV2aXNpb25zKHIsICZvcHQsIHByZWZpeCk7CiAKLQkvKiBUaGlzIGlzIHdoYXQgIi0tcHJldHR5IiBkb2VzICovCi0Jb3B0LnZlcmJvc2VfaGVhZGVyID0gMTsKLQlvcHQudXNlX3Rlcm1pbmF0b3IgPSAwOwotCW9wdC5jb21taXRfZm9ybWF0ID0gQ01JVF9GTVRfREVGQVVMVDsKLQotCS8qIGRpZmYtdHJlZSBpbml0ICovCi0JaWYgKCFvcHQuZGlmZm9wdC5vdXRwdXRfZm9ybWF0KQotCQlvcHQuZGlmZm9wdC5vdXRwdXRfZm9ybWF0ID0gRElGRl9GT1JNQVRfUkFXOwotCi0Jc2V0dXBfcmV2aXNpb25zKDAsIE5VTEwsICZvcHQsIE5VTEwpOworCXNldHVwX3JldmlzaW9ucyhBUlJBWV9TSVpFKGFyZ3YpIC0gMSwgYXJndiwgJm9wdCwgTlVMTCk7CiAJbG9nX3RyZWVfY29tbWl0KCZvcHQsIGNvbW1pdCk7CiB9CiAKQEAgLTkzOCwxOCArOTc2LDE5IEBACiB9CiAKIC8qCi0gKiBXZSB1c2UgdGhlIGNvbnZlbnRpb24gdGhhdCBleGl0aW5nIHdpdGggYW4gZXhpdCBjb2RlIDEwIG1lYW5zIHRoYXQKKyAqIFdlIHVzZSB0aGUgY29udmVudGlvbiB0aGF0IHJldHVybiBCSVNFQ1RfSU5URVJOQUxfU1VDQ0VTU18xU1RfQkFEX0ZPVU5EICgtMTApIG1lYW5zCiAgKiB0aGUgYmlzZWN0aW9uIHByb2Nlc3MgZmluaXNoZWQgc3VjY2Vzc2Z1bGx5LgotICogSW4gdGhpcyBjYXNlIHRoZSBjYWxsaW5nIHNoZWxsIHNjcmlwdCBzaG91bGQgZXhpdCAwLgotICoKKyAqIEluIHRoaXMgY2FzZSB0aGUgY2FsbGluZyBmdW5jdGlvbiBvciBjb21tYW5kIHNob3VsZCBub3QgdHVybiBhCisgKiBCSVNFQ1RfSU5URVJOQUxfU1VDQ0VTU18xU1RfQkFEX0ZPVU5EIHJldHVybiBjb2RlIGludG8gYW4gZXJyb3Igb3IgYSBub24gemVybyBleGl0IGNvZGUuCiAgKiBJZiBub19jaGVja291dCBpcyBub24temVybywgdGhlIGJpc2VjdGlvbiBwcm9jZXNzIGRvZXMgbm90CiAgKiBjaGVja291dCB0aGUgdHJpYWwgY29tbWl0IGJ1dCBpbnN0ZWFkIHNpbXBseSB1cGRhdGVzIEJJU0VDVF9IRUFELgogICovCi1pbnQgYmlzZWN0X25leHRfYWxsKGNvbnN0IGNoYXIgKnByZWZpeCwgaW50IG5vX2NoZWNrb3V0KQorZW51bSBiaXNlY3RfZXJyb3IgYmlzZWN0X25leHRfYWxsKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpwcmVmaXgsIGludCBub19jaGVja291dCkKIHsKIAlzdHJ1Y3QgcmV2X2luZm8gcmV2czsKIAlzdHJ1Y3QgY29tbWl0X2xpc3QgKnRyaWVkOwogCWludCByZWFjaGVzID0gMCwgYWxsID0gMCwgbnIsIHN0ZXBzOworCWVudW0gYmlzZWN0X2Vycm9yIHJlcyA9IEJJU0VDVF9PSzsKIAlzdHJ1Y3Qgb2JqZWN0X2lkICpiaXNlY3RfcmV2OwogCWNoYXIgKnN0ZXBzX21zZzsKIApAQCAtOTU3LDkgKzk5NiwxMSBAQAogCWlmIChyZWFkX2Jpc2VjdF9yZWZzKCkpCiAJCWRpZShfKCJyZWFkaW5nIGJpc2VjdCByZWZzIGZhaWxlZCIpKTsKIAotCWNoZWNrX2dvb2RfYXJlX2FuY2VzdG9yc19vZl9iYWQocHJlZml4LCBub19jaGVja291dCk7CisJcmVzID0gY2hlY2tfZ29vZF9hcmVfYW5jZXN0b3JzX29mX2JhZChyLCBwcmVmaXgsIG5vX2NoZWNrb3V0KTsKKwlpZiAocmVzKQorCQlyZXR1cm4gcmVzOwogCi0JYmlzZWN0X3Jldl9zZXR1cCgmcmV2cywgcHJlZml4LCAiJXMiLCAiXiVzIiwgMSk7CisJYmlzZWN0X3Jldl9zZXR1cChyLCAmcmV2cywgcHJlZml4LCAiJXMiLCAiXiVzIiwgMSk7CiAJcmV2cy5saW1pdGVkID0gMTsKIAogCWJpc2VjdF9jb21tb24oJnJldnMpOwpAQCAtOTY5LDMzICsxMDEwLDQ1IEBACiAKIAlpZiAoIXJldnMuY29tbWl0cykgewogCQkvKgotCQkgKiBXZSBzaG91bGQgZXhpdCBoZXJlIG9ubHkgaWYgdGhlICJiYWQiCisJCSAqIFdlIHNob3VsZCByZXR1cm4gZXJyb3IgaGVyZSBvbmx5IGlmIHRoZSAiYmFkIgogCQkgKiBjb21taXQgaXMgYWxzbyBhICJza2lwIiBjb21taXQuCiAJCSAqLwotCQlleGl0X2lmX3NraXBwZWRfY29tbWl0cyh0cmllZCwgTlVMTCk7Ci0KKwkJcmVzID0gZXJyb3JfaWZfc2tpcHBlZF9jb21taXRzKHRyaWVkLCBOVUxMKTsKKwkJaWYgKHJlcyA8IDApCisJCQlyZXR1cm4gcmVzOwogCQlwcmludGYoXygiJXMgd2FzIGJvdGggJXMgYW5kICVzXG4iKSwKIAkJICAgICAgIG9pZF90b19oZXgoY3VycmVudF9iYWRfb2lkKSwKIAkJICAgICAgIHRlcm1fZ29vZCwKIAkJICAgICAgIHRlcm1fYmFkKTsKLQkJZXhpdCgxKTsKKworCQlyZXR1cm4gQklTRUNUX0ZBSUxFRDsKIAl9CiAKIAlpZiAoIWFsbCkgewogCQlmcHJpbnRmKHN0ZGVyciwgXygiTm8gdGVzdGFibGUgY29tbWl0IGZvdW5kLlxuIgogCQkJIk1heWJlIHlvdSBzdGFydGVkIHdpdGggYmFkIHBhdGggcGFyYW1ldGVycz9cbiIpKTsKLQkJZXhpdCg0KTsKKworCQlyZXR1cm4gQklTRUNUX05PX1RFU1RBQkxFX0NPTU1JVDsKIAl9CiAKIAliaXNlY3RfcmV2ID0gJnJldnMuY29tbWl0cy0+aXRlbS0+b2JqZWN0Lm9pZDsKIAogCWlmIChvaWRlcShiaXNlY3RfcmV2LCBjdXJyZW50X2JhZF9vaWQpKSB7Ci0JCWV4aXRfaWZfc2tpcHBlZF9jb21taXRzKHRyaWVkLCBjdXJyZW50X2JhZF9vaWQpOworCQlyZXMgPSBlcnJvcl9pZl9za2lwcGVkX2NvbW1pdHModHJpZWQsIGN1cnJlbnRfYmFkX29pZCk7CisJCWlmIChyZXMpCisJCQlyZXR1cm4gcmVzOwogCQlwcmludGYoIiVzIGlzIHRoZSBmaXJzdCAlcyBjb21taXRcbiIsIG9pZF90b19oZXgoYmlzZWN0X3JldiksCiAJCQl0ZXJtX2JhZCk7Ci0JCXNob3dfZGlmZl90cmVlKHByZWZpeCwgcmV2cy5jb21taXRzLT5pdGVtKTsKLQkJLyogVGhpcyBtZWFucyB0aGUgYmlzZWN0aW9uIHByb2Nlc3Mgc3VjY2VlZGVkLiAqLwotCQlleGl0KDEwKTsKKworCQlzaG93X2RpZmZfdHJlZShyLCBwcmVmaXgsIHJldnMuY29tbWl0cy0+aXRlbSk7CisJCS8qCisJCSAqIFRoaXMgbWVhbnMgdGhlIGJpc2VjdGlvbiBwcm9jZXNzIHN1Y2NlZWRlZC4KKwkJICogVXNpbmcgQklTRUNUX0lOVEVSTkFMX1NVQ0NFU1NfMVNUX0JBRF9GT1VORCAoLTEwKQorCQkgKiBzbyB0aGF0IHRoZSBjYWxsIGNoYWluIGNhbiBzaW1wbHkgY2hlY2sKKwkJICogZm9yIG5lZ2F0aXZlIHJldHVybiB2YWx1ZXMgZm9yIGVhcmx5IHJldHVybnMgdXAKKwkJICogdW50aWwgdGhlIGNtZF9iaXNlY3RfX2hlbHBlcigpIGNhbGxlci4KKwkJICovCisJCXJldHVybiBCSVNFQ1RfSU5URVJOQUxfU1VDQ0VTU18xU1RfQkFEX0ZPVU5EOwogCX0KIAogCW5yID0gYWxsIC0gcmVhY2hlcyAtIDE7CmRpZmYgLS1naXQgYS9iaXNlY3QuaCBiL2Jpc2VjdC5oCmluZGV4IDM0ZGYyMDkuLjhiYWQ4ZDggMTAwNjQ0Ci0tLSBhL2Jpc2VjdC5oCisrKyBiL2Jpc2VjdC5oCkBAIC0yLDYgKzIsNyBAQAogI2RlZmluZSBCSVNFQ1RfSAogCiBzdHJ1Y3QgY29tbWl0X2xpc3Q7CitzdHJ1Y3QgcmVwb3NpdG9yeTsKIAogLyoKICAqIEZpbmQgYmlzZWN0aW9uLiBJZiBzb21ldGhpbmcgaXMgZm91bmQsIGByZWFjaGVzYCB3aWxsIGJlIHRoZSBudW1iZXIgb2YKQEAgLTEwLDE0ICsxMSwxNCBAQAogICogT3RoZXJ3aXNlLCBpdCB3aWxsIGJlIGVpdGhlciBhbGwgbm9uLVNBTUVUUkVFIGNvbW1pdHMgb3IgdGhlIHNpbmdsZQogICogYmVzdCBjb21taXQsIGFzIGNob3NlbiBieSBgZmluZF9hbGxgLgogICovCi1leHRlcm4gdm9pZCBmaW5kX2Jpc2VjdGlvbihzdHJ1Y3QgY29tbWl0X2xpc3QgKipsaXN0LCBpbnQgKnJlYWNoZXMsIGludCAqYWxsLAotCQkJICAgaW50IGZpbmRfYWxsKTsKK3ZvaWQgZmluZF9iaXNlY3Rpb24oc3RydWN0IGNvbW1pdF9saXN0ICoqbGlzdCwgaW50ICpyZWFjaGVzLCBpbnQgKmFsbCwKKwkJICAgIGludCBmaW5kX2FsbCk7CiAKLWV4dGVybiBzdHJ1Y3QgY29tbWl0X2xpc3QgKmZpbHRlcl9za2lwcGVkKHN0cnVjdCBjb21taXRfbGlzdCAqbGlzdCwKLQkJCQkJICBzdHJ1Y3QgY29tbWl0X2xpc3QgKip0cmllZCwKLQkJCQkJICBpbnQgc2hvd19hbGwsCi0JCQkJCSAgaW50ICpjb3VudCwKLQkJCQkJICBpbnQgKnNraXBwZWRfZmlyc3QpOworc3RydWN0IGNvbW1pdF9saXN0ICpmaWx0ZXJfc2tpcHBlZChzdHJ1Y3QgY29tbWl0X2xpc3QgKmxpc3QsCisJCQkJICAgc3RydWN0IGNvbW1pdF9saXN0ICoqdHJpZWQsCisJCQkJICAgaW50IHNob3dfYWxsLAorCQkJCSAgIGludCAqY291bnQsCisJCQkJICAgaW50ICpza2lwcGVkX2ZpcnN0KTsKIAogI2RlZmluZSBCSVNFQ1RfU0hPV19BTEwJCSgxPDwwKQogI2RlZmluZSBSRVZfTElTVF9RVUlFVAkJKDE8PDEpCkBAIC0zMCwxMiArMzEsNDEgQEAKIAljb25zdCBjaGFyICpoZWFkZXJfcHJlZml4OwogfTsKIAotZXh0ZXJuIGludCBiaXNlY3RfbmV4dF9hbGwoY29uc3QgY2hhciAqcHJlZml4LCBpbnQgbm9fY2hlY2tvdXQpOworLyoKKyAqIGVudW0gYmlzZWN0X2Vycm9yIHJlcHJlc2VudHMgdGhlIGZvbGxvd2luZyByZXR1cm4gY29kZXM6CisgKiBCSVNFQ1RfT0s6IHN1Y2Nlc3MgY29kZS4gSW50ZXJuYWxseSwgaXQgbWVhbnMgdGhhdCBuZXh0CisgKiBjb21taXQgaGFzIGJlZW4gZm91bmQgKGFuZCBwb3NzaWJseSBjaGVja2VkIG91dCkgYW5kIGl0CisgKiBzaG91bGQgYmUgdGVzdGVkLgorICogQklTRUNUX0ZBSUxFRCBlcnJvciBjb2RlOiBkZWZhdWx0IGVycm9yIGNvZGUuCisgKiBCSVNFQ1RfT05MWV9TS0lQUEVEX0xFRlQgZXJyb3IgY29kZTogb25seSBza2lwcGVkCisgKiBjb21taXRzIGxlZnQgdG8gYmUgdGVzdGVkLgorICogQklTRUNUX01FUkdFX0JBU0VfQ0hFQ0sgZXJyb3IgY29kZTogbWVyZ2UgYmFzZSBjaGVjayBmYWlsZWQuCisgKiBCSVNFQ1RfTk9fVEVTVEFCTEVfQ09NTUlUIGVycm9yIGNvZGU6IG5vIHRlc3RhYmxlIGNvbW1pdCBmb3VuZC4KKyAqIEJJU0VDVF9JTlRFUk5BTF9TVUNDRVNTXzFTVF9CQURfRk9VTkQgZWFybHkgc3VjY2VzcyBjb2RlOgorICogZmlyc3QgdGVybV9iYWQgY29tbWl0IGZvdW5kLgorICogQklTRUNUX0lOVEVSTkFMX1NVQ0NFU1NfTUVSR0VfQkFTRSBlYXJseSBzdWNjZXNzCisgKiBjb2RlOiBmb3VuZCBtZXJnZSBiYXNlIHRoYXQgc2hvdWxkIGJlIHRlc3RlZC4KKyAqIEVhcmx5IHN1Y2Nlc3MgY29kZXMgQklTRUNUX0lOVEVSTkFMX1NVQ0NFU1NfMVNUX0JBRF9GT1VORCBhbmQKKyAqIEJJU0VDVF9JTlRFUk5BTF9TVUNDRVNTX01FUkdFX0JBU0Ugc2hvdWxkIGJlIG9ubHkgaW50ZXJuYWwgY29kZXMuCisgKi8KK2VudW0gYmlzZWN0X2Vycm9yIHsKKwlCSVNFQ1RfT0sgPSAwLAorCUJJU0VDVF9GQUlMRUQgPSAtMSwKKwlCSVNFQ1RfT05MWV9TS0lQUEVEX0xFRlQgPSAtMiwKKwlCSVNFQ1RfTUVSR0VfQkFTRV9DSEVDSyA9IC0zLAorCUJJU0VDVF9OT19URVNUQUJMRV9DT01NSVQgPSAtNCwKKwlCSVNFQ1RfSU5URVJOQUxfU1VDQ0VTU18xU1RfQkFEX0ZPVU5EID0gLTEwLAorCUJJU0VDVF9JTlRFUk5BTF9TVUNDRVNTX01FUkdFX0JBU0UgPSAtMTEKK307CiAKLWV4dGVybiBpbnQgZXN0aW1hdGVfYmlzZWN0X3N0ZXBzKGludCBhbGwpOworZW51bSBiaXNlY3RfZXJyb3IgYmlzZWN0X25leHRfYWxsKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkgICAgY29uc3QgY2hhciAqcHJlZml4LAorCQkgICAgaW50IG5vX2NoZWNrb3V0KTsKIAotZXh0ZXJuIHZvaWQgcmVhZF9iaXNlY3RfdGVybXMoY29uc3QgY2hhciAqKmJhZCwgY29uc3QgY2hhciAqKmdvb2QpOworaW50IGVzdGltYXRlX2Jpc2VjdF9zdGVwcyhpbnQgYWxsKTsKIAotZXh0ZXJuIGludCBiaXNlY3RfY2xlYW5fc3RhdGUodm9pZCk7Cit2b2lkIHJlYWRfYmlzZWN0X3Rlcm1zKGNvbnN0IGNoYXIgKipiYWQsIGNvbnN0IGNoYXIgKipnb29kKTsKKworaW50IGJpc2VjdF9jbGVhbl9zdGF0ZSh2b2lkKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9ibGFtZS5jIGIvYmxhbWUuYwppbmRleCBkODRjOTM3Li4yOTc3MGU1IDEwMDY0NAotLS0gYS9ibGFtZS5jCisrKyBiL2JsYW1lLmMKQEAgLTk5LDkgKzk5LDkgQEAKIAlmb3IgKHBhcmVudHMgPSB3b3JrX3RyZWUtPnBhcmVudHM7IHBhcmVudHM7IHBhcmVudHMgPSBwYXJlbnRzLT5uZXh0KSB7CiAJCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmNvbW1pdF9vaWQgPSAmcGFyZW50cy0+aXRlbS0+b2JqZWN0Lm9pZDsKIAkJc3RydWN0IG9iamVjdF9pZCBibG9iX29pZDsKLQkJdW5zaWduZWQgbW9kZTsKKwkJdW5zaWduZWQgc2hvcnQgbW9kZTsKIAotCQlpZiAoIWdldF90cmVlX2VudHJ5KGNvbW1pdF9vaWQsIHBhdGgsICZibG9iX29pZCwgJm1vZGUpICYmCisJCWlmICghZ2V0X3RyZWVfZW50cnkociwgY29tbWl0X29pZCwgcGF0aCwgJmJsb2Jfb2lkLCAmbW9kZSkgJiYKIAkJICAgIG9pZF9vYmplY3RfaW5mbyhyLCAmYmxvYl9vaWQsIE5VTEwpID09IE9CSl9CTE9CKQogCQkJcmV0dXJuOwogCX0KQEAgLTExNiwzNSArMTE2LDM4IEBACiAJCWRpZSgibm8gc3VjaCBwYXRoICclcycgaW4gSEVBRCIsIHBhdGgpOwogfQogCi1zdGF0aWMgc3RydWN0IGNvbW1pdF9saXN0ICoqYXBwZW5kX3BhcmVudChzdHJ1Y3QgY29tbWl0X2xpc3QgKip0YWlsLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCitzdGF0aWMgc3RydWN0IGNvbW1pdF9saXN0ICoqYXBwZW5kX3BhcmVudChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJICBzdHJ1Y3QgY29tbWl0X2xpc3QgKip0YWlsLAorCQkJCQkgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAlzdHJ1Y3QgY29tbWl0ICpwYXJlbnQ7CiAKLQlwYXJlbnQgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZSh0aGVfcmVwb3NpdG9yeSwgb2lkKTsKKwlwYXJlbnQgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZShyLCBvaWQpOwogCWlmICghcGFyZW50KQogCQlkaWUoIm5vIHN1Y2ggY29tbWl0ICVzIiwgb2lkX3RvX2hleChvaWQpKTsKIAlyZXR1cm4gJmNvbW1pdF9saXN0X2luc2VydChwYXJlbnQsIHRhaWwpLT5uZXh0OwogfQogCi1zdGF0aWMgdm9pZCBhcHBlbmRfbWVyZ2VfcGFyZW50cyhzdHJ1Y3QgY29tbWl0X2xpc3QgKip0YWlsKQorc3RhdGljIHZvaWQgYXBwZW5kX21lcmdlX3BhcmVudHMoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJIHN0cnVjdCBjb21taXRfbGlzdCAqKnRhaWwpCiB7CiAJaW50IG1lcmdlX2hlYWQ7CiAJc3RydWN0IHN0cmJ1ZiBsaW5lID0gU1RSQlVGX0lOSVQ7CiAKLQltZXJnZV9oZWFkID0gb3BlbihnaXRfcGF0aF9tZXJnZV9oZWFkKHRoZV9yZXBvc2l0b3J5KSwgT19SRE9OTFkpOworCW1lcmdlX2hlYWQgPSBvcGVuKGdpdF9wYXRoX21lcmdlX2hlYWQociksIE9fUkRPTkxZKTsKIAlpZiAobWVyZ2VfaGVhZCA8IDApIHsKIAkJaWYgKGVycm5vID09IEVOT0VOVCkKIAkJCXJldHVybjsKIAkJZGllKCJjYW5ub3Qgb3BlbiAnJXMnIGZvciByZWFkaW5nIiwKLQkJICAgIGdpdF9wYXRoX21lcmdlX2hlYWQodGhlX3JlcG9zaXRvcnkpKTsKKwkJICAgIGdpdF9wYXRoX21lcmdlX2hlYWQocikpOwogCX0KIAogCXdoaWxlICghc3RyYnVmX2dldHdob2xlbGluZV9mZCgmbGluZSwgbWVyZ2VfaGVhZCwgJ1xuJykpIHsKIAkJc3RydWN0IG9iamVjdF9pZCBvaWQ7Ci0JCWlmIChsaW5lLmxlbiA8IEdJVF9TSEExX0hFWFNaIHx8IGdldF9vaWRfaGV4KGxpbmUuYnVmLCAmb2lkKSkKKwkJaWYgKGdldF9vaWRfaGV4KGxpbmUuYnVmLCAmb2lkKSkKIAkJCWRpZSgidW5rbm93biBsaW5lIGluICclcyc6ICVzIiwKLQkJCSAgICBnaXRfcGF0aF9tZXJnZV9oZWFkKHRoZV9yZXBvc2l0b3J5KSwgbGluZS5idWYpOwotCQl0YWlsID0gYXBwZW5kX3BhcmVudCh0YWlsLCAmb2lkKTsKKwkJCSAgICBnaXRfcGF0aF9tZXJnZV9oZWFkKHIpLCBsaW5lLmJ1Zik7CisJCXRhaWwgPSBhcHBlbmRfcGFyZW50KHIsIHRhaWwsICZvaWQpOwogCX0KIAljbG9zZShtZXJnZV9oZWFkKTsKIAlzdHJidWZfcmVsZWFzZSgmbGluZSk7CkBAIC0xNTUsMTEgKzE1OCwxMyBAQAogICogd2FudCB0byB0cmFuc2ZlciBvd25lcnNoaXAgb2YgdGhlIGJ1ZmZlciB0byB0aGUgY29tbWl0IChzbyB3ZQogICogbXVzdCB1c2UgZGV0YWNoKS4KICAqLwotc3RhdGljIHZvaWQgc2V0X2NvbW1pdF9idWZmZXJfZnJvbV9zdHJidWYoc3RydWN0IGNvbW1pdCAqYywgc3RydWN0IHN0cmJ1ZiAqc2IpCitzdGF0aWMgdm9pZCBzZXRfY29tbWl0X2J1ZmZlcl9mcm9tX3N0cmJ1ZihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJICBzdHJ1Y3QgY29tbWl0ICpjLAorCQkJCQkgIHN0cnVjdCBzdHJidWYgKnNiKQogewogCXNpemVfdCBsZW47CiAJdm9pZCAqYnVmID0gc3RyYnVmX2RldGFjaChzYiwgJmxlbik7Ci0Jc2V0X2NvbW1pdF9idWZmZXIodGhlX3JlcG9zaXRvcnksIGMsIGJ1ZiwgbGVuKTsKKwlzZXRfY29tbWl0X2J1ZmZlcihyLCBjLCBidWYsIGxlbik7CiB9CiAKIC8qCkBAIC0xODMsOSArMTg4LDkgQEAKIAl1bnNpZ25lZCBtb2RlOwogCXN0cnVjdCBzdHJidWYgbXNnID0gU1RSQlVGX0lOSVQ7CiAKLQlyZWFkX2luZGV4KHItPmluZGV4KTsKKwlyZXBvX3JlYWRfaW5kZXgocik7CiAJdGltZSgmbm93KTsKLQljb21taXQgPSBhbGxvY19jb21taXRfbm9kZSh0aGVfcmVwb3NpdG9yeSk7CisJY29tbWl0ID0gYWxsb2NfY29tbWl0X25vZGUocik7CiAJY29tbWl0LT5vYmplY3QucGFyc2VkID0gMTsKIAljb21taXQtPmRhdGUgPSBub3c7CiAJcGFyZW50X3RhaWwgPSAmY29tbWl0LT5wYXJlbnRzOwpAQCAtMTkzLDEzICsxOTgsMTQgQEAKIAlpZiAoIXJlc29sdmVfcmVmX3Vuc2FmZSgiSEVBRCIsIFJFU09MVkVfUkVGX1JFQURJTkcsICZoZWFkX29pZCwgTlVMTCkpCiAJCWRpZSgibm8gc3VjaCByZWY6IEhFQUQiKTsKIAotCXBhcmVudF90YWlsID0gYXBwZW5kX3BhcmVudChwYXJlbnRfdGFpbCwgJmhlYWRfb2lkKTsKLQlhcHBlbmRfbWVyZ2VfcGFyZW50cyhwYXJlbnRfdGFpbCk7CisJcGFyZW50X3RhaWwgPSBhcHBlbmRfcGFyZW50KHIsIHBhcmVudF90YWlsLCAmaGVhZF9vaWQpOworCWFwcGVuZF9tZXJnZV9wYXJlbnRzKHIsIHBhcmVudF90YWlsKTsKIAl2ZXJpZnlfd29ya2luZ190cmVlX3BhdGgociwgY29tbWl0LCBwYXRoKTsKIAogCW9yaWdpbiA9IG1ha2Vfb3JpZ2luKGNvbW1pdCwgcGF0aCk7CiAKLQlpZGVudCA9IGZtdF9pZGVudCgiTm90IENvbW1pdHRlZCBZZXQiLCAibm90LmNvbW1pdHRlZC55ZXQiLCBOVUxMLCAwKTsKKwlpZGVudCA9IGZtdF9pZGVudCgiTm90IENvbW1pdHRlZCBZZXQiLCAibm90LmNvbW1pdHRlZC55ZXQiLAorCQkJV0FOVF9CTEFOS19JREVOVCwgTlVMTCwgMCk7CiAJc3RyYnVmX2FkZHN0cigmbXNnLCAidHJlZSAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwXG4iKTsKIAlmb3IgKHBhcmVudCA9IGNvbW1pdC0+cGFyZW50czsgcGFyZW50OyBwYXJlbnQgPSBwYXJlbnQtPm5leHQpCiAJCXN0cmJ1Zl9hZGRmKCZtc2csICJwYXJlbnQgJXNcbiIsCkBAIC0yMTEsNyArMjE3LDcgQEAKIAkJICAgIGlkZW50LCBpZGVudCwgcGF0aCwKIAkJICAgICghY29udGVudHNfZnJvbSA/IHBhdGggOgogCQkgICAgICghc3RyY21wKGNvbnRlbnRzX2Zyb20sICItIikgPyAic3RhbmRhcmQgaW5wdXQiIDogY29udGVudHNfZnJvbSkpKTsKLQlzZXRfY29tbWl0X2J1ZmZlcl9mcm9tX3N0cmJ1Zihjb21taXQsICZtc2cpOworCXNldF9jb21taXRfYnVmZmVyX2Zyb21fc3RyYnVmKHIsIGNvbW1pdCwgJm1zZyk7CiAKIAlpZiAoIWNvbnRlbnRzX2Zyb20gfHwgc3RyY21wKCItIiwgY29udGVudHNfZnJvbSkpIHsKIAkJc3RydWN0IHN0YXQgc3Q7CkBAIC0yNjUsNyArMjcxLDcgQEAKIAkgKiB3YW50IHRvIHJ1biAiZGlmZi1pbmRleCAtLWNhY2hlZCIuCiAJICovCiAJZGlzY2FyZF9pbmRleChyLT5pbmRleCk7Ci0JcmVhZF9pbmRleChyLT5pbmRleCk7CisJcmVwb19yZWFkX2luZGV4KHIpOwogCiAJbGVuID0gc3RybGVuKHBhdGgpOwogCWlmICghbW9kZSkgewpAQCAtMzA1LDEyICszMTEsNzEwIEBACiAJcmV0dXJuIHhkaV9kaWZmKGZpbGVfYSwgZmlsZV9iLCAmeHBwLCAmeGVjZmcsICZlY2IpOwogfQogCitzdGF0aWMgY29uc3QgY2hhciAqZ2V0X25leHRfbGluZShjb25zdCBjaGFyICpzdGFydCwgY29uc3QgY2hhciAqZW5kKQoreworCWNvbnN0IGNoYXIgKm5sID0gbWVtY2hyKHN0YXJ0LCAnXG4nLCBlbmQgLSBzdGFydCk7CisKKwlyZXR1cm4gbmwgPyBubCArIDEgOiBlbmQ7Cit9CisKK3N0YXRpYyBpbnQgZmluZF9saW5lX3N0YXJ0cyhpbnQgKipsaW5lX3N0YXJ0cywgY29uc3QgY2hhciAqYnVmLAorCQkJICAgIHVuc2lnbmVkIGxvbmcgbGVuKQoreworCWNvbnN0IGNoYXIgKmVuZCA9IGJ1ZiArIGxlbjsKKwljb25zdCBjaGFyICpwOworCWludCAqbGluZW5vOworCWludCBudW0gPSAwOworCisJZm9yIChwID0gYnVmOyBwIDwgZW5kOyBwID0gZ2V0X25leHRfbGluZShwLCBlbmQpKQorCQludW0rKzsKKworCUFMTE9DX0FSUkFZKCpsaW5lX3N0YXJ0cywgbnVtICsgMSk7CisJbGluZW5vID0gKmxpbmVfc3RhcnRzOworCisJZm9yIChwID0gYnVmOyBwIDwgZW5kOyBwID0gZ2V0X25leHRfbGluZShwLCBlbmQpKQorCQkqbGluZW5vKysgPSBwIC0gYnVmOworCisJKmxpbmVubyA9IGxlbjsKKworCXJldHVybiBudW07Cit9CisKK3N0cnVjdCBmaW5nZXJwcmludF9lbnRyeTsKKworLyogQSBmaW5nZXJwcmludCBpcyBpbnRlbmRlZCB0byBsb29zZWx5IHJlcHJlc2VudCBhIHN0cmluZywgc3VjaCB0aGF0IHR3bworICogZmluZ2VycHJpbnRzIGNhbiBiZSBxdWlja2x5IGNvbXBhcmVkIHRvIGdpdmUgYW4gaW5kaWNhdGlvbiBvZiB0aGUgc2ltaWxhcml0eQorICogb2YgdGhlIHN0cmluZ3MgdGhhdCB0aGV5IHJlcHJlc2VudC4KKyAqCisgKiBBIGZpbmdlcnByaW50IGlzIHJlcHJlc2VudGVkIGFzIGEgbXVsdGlzZXQgb2YgdGhlIGxvd2VyLWNhc2VkIGJ5dGUgcGFpcnMgaW4KKyAqIHRoZSBzdHJpbmcgdGhhdCBpdCByZXByZXNlbnRzLiBXaGl0ZXNwYWNlIGlzIGFkZGVkIGF0IGVhY2ggZW5kIG9mIHRoZQorICogc3RyaW5nLiBXaGl0ZXNwYWNlIHBhaXJzIGFyZSBpZ25vcmVkLiBXaGl0ZXNwYWNlIGlzIGNvbnZlcnRlZCB0byAnXDAnLgorICogRm9yIGV4YW1wbGUsIHRoZSBzdHJpbmcgIkRhcnRoICAgUmFkYXIiIHdpbGwgYmUgY29udmVydGVkIHRvIHRoZSBmb2xsb3dpbmcKKyAqIGZpbmdlcnByaW50OgorICogeyJcMGQiLCAiZGEiLCAiZGEiLCAiYXIiLCAiYXIiLCAicnQiLCAidGgiLCAiaFwwIiwgIlwwciIsICJyYSIsICJhZCIsICJyXDAifQorICoKKyAqIFRoZSBzaW1pbGFyaXR5IGJldHdlZW4gdHdvIGZpbmdlcnByaW50cyBpcyB0aGUgc2l6ZSBvZiB0aGUgaW50ZXJzZWN0aW9uIG9mCisgKiB0aGVpciBtdWx0aXNldHMsIGluY2x1ZGluZyByZXBlYXRlZCBlbGVtZW50cy4gU2VlIGZpbmdlcnByaW50X3NpbWlsYXJpdHkgZm9yCisgKiBleGFtcGxlcy4KKyAqCisgKiBGb3IgZWFzZSBvZiBpbXBsZW1lbnRhdGlvbiwgdGhlIGZpbmdlcnByaW50IGlzIGltcGxlbWVudGVkIGFzIGEgbWFwCisgKiBvZiBieXRlIHBhaXJzIHRvIHRoZSBjb3VudCBvZiB0aGF0IGJ5dGUgcGFpciBpbiB0aGUgc3RyaW5nLCBpbnN0ZWFkIG9mCisgKiBhbGxvd2luZyByZXBlYXRlZCBlbGVtZW50cyBpbiBhIHNldC4KKyAqLworc3RydWN0IGZpbmdlcnByaW50IHsKKwlzdHJ1Y3QgaGFzaG1hcCBtYXA7CisJLyogQXMgd2Uga25vdyB0aGUgbWF4aW11bSBudW1iZXIgb2YgZW50cmllcyBpbiBhZHZhbmNlLCBpdCdzCisJICogY29udmVuaWVudCB0byBzdG9yZSB0aGUgZW50cmllcyBpbiBhIHNpbmdsZSBhcnJheSBpbnN0ZWFkIG9mIGhhdmluZworCSAqIHRoZSBoYXNobWFwIG1hbmFnZSB0aGUgbWVtb3J5LgorCSAqLworCXN0cnVjdCBmaW5nZXJwcmludF9lbnRyeSAqZW50cmllczsKK307CisKKy8qIEEgYnl0ZSBwYWlyIGluIGEgZmluZ2VycHJpbnQuIFN0b3JlcyB0aGUgbnVtYmVyIG9mIHRpbWVzIHRoZSBieXRlIHBhaXIKKyAqIG9jY3VycyBpbiB0aGUgc3RyaW5nIHRoYXQgdGhlIGZpbmdlcnByaW50IHJlcHJlc2VudHMuCisgKi8KK3N0cnVjdCBmaW5nZXJwcmludF9lbnRyeSB7CisJLyogVGhlIGhhc2htYXAgZW50cnkgLSB0aGUgaGFzaCByZXByZXNlbnRzIHRoZSBieXRlIHBhaXIgaW4gaXRzCisJICogZW50aXJldHkgc28gd2UgZG9uJ3QgbmVlZCB0byBzdG9yZSB0aGUgYnl0ZSBwYWlyIHNlcGFyYXRlbHkuCisJICovCisJc3RydWN0IGhhc2htYXBfZW50cnkgZW50cnk7CisJLyogVGhlIG51bWJlciBvZiB0aW1lcyB0aGUgYnl0ZSBwYWlyIG9jY3VycyBpbiB0aGUgc3RyaW5nIHRoYXQgdGhlCisJICogZmluZ2VycHJpbnQgcmVwcmVzZW50cy4KKwkgKi8KKwlpbnQgY291bnQ7Cit9OworCisvKiBTZWUgYHN0cnVjdCBmaW5nZXJwcmludGAgZm9yIGFuIGV4cGxhbmF0aW9uIG9mIHdoYXQgYSBmaW5nZXJwcmludCBpcy4KKyAqIFxwYXJhbSByZXN1bHQgdGhlIGZpbmdlcnByaW50IG9mIHRoZSBzdHJpbmcgaXMgc3RvcmVkIGhlcmUuIFRoaXMgbXVzdCBiZQorICogCQkgZnJlZWQgbGF0ZXIgdXNpbmcgZnJlZV9maW5nZXJwcmludC4KKyAqIFxwYXJhbSBsaW5lX2JlZ2luIHRoZSBzdGFydCBvZiB0aGUgc3RyaW5nCisgKiBccGFyYW0gbGluZV9lbmQgdGhlIGVuZCBvZiB0aGUgc3RyaW5nCisgKi8KK3N0YXRpYyB2b2lkIGdldF9maW5nZXJwcmludChzdHJ1Y3QgZmluZ2VycHJpbnQgKnJlc3VsdCwKKwkJCSAgICBjb25zdCBjaGFyICpsaW5lX2JlZ2luLAorCQkJICAgIGNvbnN0IGNoYXIgKmxpbmVfZW5kKQoreworCXVuc2lnbmVkIGludCBoYXNoLCBjMCA9IDAsIGMxOworCWNvbnN0IGNoYXIgKnA7CisJaW50IG1heF9tYXBfZW50cnlfY291bnQgPSAxICsgbGluZV9lbmQgLSBsaW5lX2JlZ2luOworCXN0cnVjdCBmaW5nZXJwcmludF9lbnRyeSAqZW50cnkgPSB4Y2FsbG9jKG1heF9tYXBfZW50cnlfY291bnQsCisJCXNpemVvZihzdHJ1Y3QgZmluZ2VycHJpbnRfZW50cnkpKTsKKwlzdHJ1Y3QgZmluZ2VycHJpbnRfZW50cnkgKmZvdW5kX2VudHJ5OworCisJaGFzaG1hcF9pbml0KCZyZXN1bHQtPm1hcCwgTlVMTCwgTlVMTCwgbWF4X21hcF9lbnRyeV9jb3VudCk7CisJcmVzdWx0LT5lbnRyaWVzID0gZW50cnk7CisJZm9yIChwID0gbGluZV9iZWdpbjsgcCA8PSBsaW5lX2VuZDsgKytwLCBjMCA9IGMxKSB7CisJCS8qIEFsd2F5cyB0ZXJtaW5hdGUgdGhlIHN0cmluZyB3aXRoIHdoaXRlc3BhY2UuCisJCSAqIE5vcm1hbGlzZSB3aGl0ZXNwYWNlIHRvIDAsIGFuZCBub3JtYWxpc2UgbGV0dGVycyB0bworCQkgKiBsb3dlciBjYXNlLiBUaGlzIHdvbid0IHdvcmsgZm9yIG11bHRpYnl0ZSBjaGFyYWN0ZXJzIGJ1dCBhdAorCQkgKiB3b3JzdCB3aWxsIG1hdGNoIHNvbWUgdW5yZWxhdGVkIGNoYXJhY3RlcnMuCisJCSAqLworCQlpZiAoKHAgPT0gbGluZV9lbmQpIHx8IGlzc3BhY2UoKnApKQorCQkJYzEgPSAwOworCQllbHNlCisJCQljMSA9IHRvbG93ZXIoKnApOworCQloYXNoID0gYzAgfCAoYzEgPDwgOCk7CisJCS8qIElnbm9yZSB3aGl0ZXNwYWNlIHBhaXJzICovCisJCWlmIChoYXNoID09IDApCisJCQljb250aW51ZTsKKwkJaGFzaG1hcF9lbnRyeV9pbml0KCZlbnRyeS0+ZW50cnksIGhhc2gpOworCisJCWZvdW5kX2VudHJ5ID0gaGFzaG1hcF9nZXRfZW50cnkoJnJlc3VsdC0+bWFwLCBlbnRyeSwKKwkJCQkJCS8qIG1lbWJlciBuYW1lICovIGVudHJ5LCBOVUxMKTsKKwkJaWYgKGZvdW5kX2VudHJ5KSB7CisJCQlmb3VuZF9lbnRyeS0+Y291bnQgKz0gMTsKKwkJfSBlbHNlIHsKKwkJCWVudHJ5LT5jb3VudCA9IDE7CisJCQloYXNobWFwX2FkZCgmcmVzdWx0LT5tYXAsICZlbnRyeS0+ZW50cnkpOworCQkJKytlbnRyeTsKKwkJfQorCX0KK30KKworc3RhdGljIHZvaWQgZnJlZV9maW5nZXJwcmludChzdHJ1Y3QgZmluZ2VycHJpbnQgKmYpCit7CisJaGFzaG1hcF9mcmVlKCZmLT5tYXApOworCWZyZWUoZi0+ZW50cmllcyk7Cit9CisKKy8qIENhbGN1bGF0ZXMgdGhlIHNpbWlsYXJpdHkgYmV0d2VlbiB0d28gZmluZ2VycHJpbnRzIGFzIHRoZSBzaXplIG9mIHRoZQorICogaW50ZXJzZWN0aW9uIG9mIHRoZWlyIG11bHRpc2V0cywgaW5jbHVkaW5nIHJlcGVhdGVkIGVsZW1lbnRzLiBTZWUKKyAqIGBzdHJ1Y3QgZmluZ2VycHJpbnRgIGZvciBhbiBleHBsYW5hdGlvbiBvZiB0aGUgZmluZ2VycHJpbnQgcmVwcmVzZW50YXRpb24uCisgKiBUaGUgc2ltaWxhcml0eSBiZXR3ZWVuICJjYXQgbWF0IiBhbmQgImZhdGhlciByYXRoZXIiIGlzIDIgYmVjYXVzZSAiYXQiIGlzCisgKiBwcmVzZW50IHR3aWNlIGluIGJvdGggc3RyaW5ncyB3aGlsZSB0aGUgc2ltaWxhcml0eSBiZXR3ZWVuICJ0aW0iIGFuZCAibWl0IgorICogaXMgMC4KKyAqLworc3RhdGljIGludCBmaW5nZXJwcmludF9zaW1pbGFyaXR5KHN0cnVjdCBmaW5nZXJwcmludCAqYSwgc3RydWN0IGZpbmdlcnByaW50ICpiKQoreworCWludCBpbnRlcnNlY3Rpb24gPSAwOworCXN0cnVjdCBoYXNobWFwX2l0ZXIgaXRlcjsKKwljb25zdCBzdHJ1Y3QgZmluZ2VycHJpbnRfZW50cnkgKmVudHJ5X2EsICplbnRyeV9iOworCisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeSgmYi0+bWFwLCAmaXRlciwgZW50cnlfYiwKKwkJCQllbnRyeSAvKiBtZW1iZXIgbmFtZSAqLykgeworCQllbnRyeV9hID0gaGFzaG1hcF9nZXRfZW50cnkoJmEtPm1hcCwgZW50cnlfYiwgZW50cnksIE5VTEwpOworCQlpZiAoZW50cnlfYSkgeworCQkJaW50ZXJzZWN0aW9uICs9IGVudHJ5X2EtPmNvdW50IDwgZW50cnlfYi0+Y291bnQgPworCQkJCQllbnRyeV9hLT5jb3VudCA6IGVudHJ5X2ItPmNvdW50OworCQl9CisJfQorCXJldHVybiBpbnRlcnNlY3Rpb247Cit9CisKKy8qIFN1YnRyYWN0cyBieXRlLXBhaXIgZWxlbWVudHMgaW4gQiBmcm9tIEEsIG1vZGlmeWluZyBBIGluIHBsYWNlLgorICovCitzdGF0aWMgdm9pZCBmaW5nZXJwcmludF9zdWJ0cmFjdChzdHJ1Y3QgZmluZ2VycHJpbnQgKmEsIHN0cnVjdCBmaW5nZXJwcmludCAqYikKK3sKKwlzdHJ1Y3QgaGFzaG1hcF9pdGVyIGl0ZXI7CisJc3RydWN0IGZpbmdlcnByaW50X2VudHJ5ICplbnRyeV9hOworCWNvbnN0IHN0cnVjdCBmaW5nZXJwcmludF9lbnRyeSAqZW50cnlfYjsKKworCWhhc2htYXBfaXRlcl9pbml0KCZiLT5tYXAsICZpdGVyKTsKKworCWhhc2htYXBfZm9yX2VhY2hfZW50cnkoJmItPm1hcCwgJml0ZXIsIGVudHJ5X2IsCisJCQkJZW50cnkgLyogbWVtYmVyIG5hbWUgKi8pIHsKKwkJZW50cnlfYSA9IGhhc2htYXBfZ2V0X2VudHJ5KCZhLT5tYXAsIGVudHJ5X2IsIGVudHJ5LCBOVUxMKTsKKwkJaWYgKGVudHJ5X2EpIHsKKwkJCWlmIChlbnRyeV9hLT5jb3VudCA8PSBlbnRyeV9iLT5jb3VudCkKKwkJCQloYXNobWFwX3JlbW92ZSgmYS0+bWFwLCAmZW50cnlfYi0+ZW50cnksIE5VTEwpOworCQkJZWxzZQorCQkJCWVudHJ5X2EtPmNvdW50IC09IGVudHJ5X2ItPmNvdW50OworCQl9CisJfQorfQorCisvKiBDYWxjdWxhdGUgZmluZ2VycHJpbnRzIGZvciBhIHNlcmllcyBvZiBsaW5lcy4KKyAqIFB1dHMgdGhlIGZpbmdlcnByaW50cyBpbiB0aGUgZmluZ2VycHJpbnRzIGFycmF5LCB3aGljaCBtdXN0IGhhdmUgYmVlbgorICogcHJlYWxsb2NhdGVkIHRvIGFsbG93IHN0b3JpbmcgbGluZV9jb3VudCBlbGVtZW50cy4KKyAqLworc3RhdGljIHZvaWQgZ2V0X2xpbmVfZmluZ2VycHJpbnRzKHN0cnVjdCBmaW5nZXJwcmludCAqZmluZ2VycHJpbnRzLAorCQkJCSAgY29uc3QgY2hhciAqY29udGVudCwgY29uc3QgaW50ICpsaW5lX3N0YXJ0cywKKwkJCQkgIGxvbmcgZmlyc3RfbGluZSwgbG9uZyBsaW5lX2NvdW50KQoreworCWludCBpOworCWNvbnN0IGNoYXIgKmxpbmVzdGFydCwgKmxpbmVlbmQ7CisKKwlsaW5lX3N0YXJ0cyArPSBmaXJzdF9saW5lOworCWZvciAoaSA9IDA7IGkgPCBsaW5lX2NvdW50OyArK2kpIHsKKwkJbGluZXN0YXJ0ID0gY29udGVudCArIGxpbmVfc3RhcnRzW2ldOworCQlsaW5lZW5kID0gY29udGVudCArIGxpbmVfc3RhcnRzW2kgKyAxXTsKKwkJZ2V0X2ZpbmdlcnByaW50KGZpbmdlcnByaW50cyArIGksIGxpbmVzdGFydCwgbGluZWVuZCk7CisJfQorfQorCitzdGF0aWMgdm9pZCBmcmVlX2xpbmVfZmluZ2VycHJpbnRzKHN0cnVjdCBmaW5nZXJwcmludCAqZmluZ2VycHJpbnRzLAorCQkJCSAgIGludCBucl9maW5nZXJwcmludHMpCit7CisJaW50IGk7CisKKwlmb3IgKGkgPSAwOyBpIDwgbnJfZmluZ2VycHJpbnRzOyBpKyspCisJCWZyZWVfZmluZ2VycHJpbnQoJmZpbmdlcnByaW50c1tpXSk7Cit9CisKKy8qIFRoaXMgY29udGFpbnMgdGhlIGRhdGEgbmVjZXNzYXJ5IHRvIGxpbmVhcmx5IG1hcCBhIGxpbmUgbnVtYmVyIGluIG9uZSBoYWxmCisgKiBvZiBhIGRpZmYgY2h1bmsgdG8gdGhlIGxpbmUgaW4gdGhlIG90aGVyIGhhbGYgb2YgdGhlIGRpZmYgY2h1bmsgdGhhdCBpcworICogY2xvc2VzdCBpbiB0ZXJtcyBvZiBpdHMgcG9zaXRpb24gYXMgYSBmcmFjdGlvbiBvZiB0aGUgbGVuZ3RoIG9mIHRoZSBjaHVuay4KKyAqLworc3RydWN0IGxpbmVfbnVtYmVyX21hcHBpbmcgeworCWludCBkZXN0aW5hdGlvbl9zdGFydCwgZGVzdGluYXRpb25fbGVuZ3RoLAorCQlzb3VyY2Vfc3RhcnQsIHNvdXJjZV9sZW5ndGg7Cit9OworCisvKiBHaXZlbiBhIGxpbmUgbnVtYmVyIGluIG9uZSByYW5nZSwgb2Zmc2V0IGFuZCBzY2FsZSBpdCB0byBtYXAgaXQgb250byB0aGUKKyAqIG90aGVyIHJhbmdlLgorICogRXNzZW50aWFsbHkgdGhpcyBtYXBwaW5nIGlzIGEgc2ltcGxlIGxpbmVhciBlcXVhdGlvbiBidXQgdGhlIGNhbGN1bGF0aW9uIGlzCisgKiBtb3JlIGNvbXBsaWNhdGVkIHRvIGFsbG93IHBlcmZvcm1pbmcgaXQgd2l0aCBpbnRlZ2VyIG9wZXJhdGlvbnMuCisgKiBBbm90aGVyIGNvbXBsaWNhdGlvbiBpcyB0aGF0IGlmIGEgbGluZSBjb3VsZCBtYXAgb250byBtYW55IGxpbmVzIGluIHRoZQorICogZGVzdGluYXRpb24gcmFuZ2UgdGhlbiB3ZSB3YW50IHRvIGNob29zZSB0aGUgbGluZSBhdCB0aGUgY2VudGVyIG9mIHRob3NlCisgKiBwb3NzaWJpbGl0aWVzLgorICogRXhhbXBsZTogaWYgdGhlIGNodW5rIGlzIDIgbGluZXMgbG9uZyBpbiBBIGFuZCAxMCBsaW5lcyBsb25nIGluIEIgdGhlbiB0aGUKKyAqIGZpcnN0IDUgbGluZXMgaW4gQiB3aWxsIG1hcCBvbnRvIHRoZSBmaXJzdCBsaW5lIGluIHRoZSBBIGNodW5rLCB3aGlsZSB0aGUKKyAqIGxhc3QgNSBsaW5lcyB3aWxsIGFsbCBtYXAgb250byB0aGUgc2Vjb25kIGxpbmUgaW4gdGhlIEEgY2h1bmsuCisgKiBFeGFtcGxlOiBpZiB0aGUgY2h1bmsgaXMgMTAgbGluZXMgbG9uZyBpbiBBIGFuZCAyIGxpbmVzIGxvbmcgaW4gQiB0aGVuIGxpbmUKKyAqIDAgaW4gQiB3aWxsIG1hcCBvbnRvIGxpbmUgMiBpbiBBLCBhbmQgbGluZSAxIGluIEIgd2lsbCBtYXAgb250byBsaW5lIDcgaW4gQS4KKyAqLworc3RhdGljIGludCBtYXBfbGluZV9udW1iZXIoaW50IGxpbmVfbnVtYmVyLAorCWNvbnN0IHN0cnVjdCBsaW5lX251bWJlcl9tYXBwaW5nICptYXBwaW5nKQoreworCXJldHVybiAoKGxpbmVfbnVtYmVyIC0gbWFwcGluZy0+c291cmNlX3N0YXJ0KSAqIDIgKyAxKSAqCisJICAgICAgIG1hcHBpbmctPmRlc3RpbmF0aW9uX2xlbmd0aCAvCisJICAgICAgIChtYXBwaW5nLT5zb3VyY2VfbGVuZ3RoICogMikgKworCSAgICAgICBtYXBwaW5nLT5kZXN0aW5hdGlvbl9zdGFydDsKK30KKworLyogR2V0IGEgcG9pbnRlciB0byB0aGUgZWxlbWVudCBzdG9yaW5nIHRoZSBzaW1pbGFyaXR5IGJldHdlZW4gYSBsaW5lIGluIEEKKyAqIGFuZCBhIGxpbmUgaW4gQi4KKyAqCisgKiBUaGUgc2ltaWxhcml0aWVzIGFyZSBzdG9yZWQgaW4gYSAyLWRpbWVuc2lvbmFsIGFycmF5LiBFYWNoICJyb3ciIGluIHRoZQorICogYXJyYXkgY29udGFpbnMgdGhlIHNpbWlsYXJpdGllcyBmb3IgYSBsaW5lIGluIEIuIFRoZSBzaW1pbGFyaXRpZXMgc3RvcmVkIGluCisgKiBhIHJvdyBhcmUgdGhlIHNpbWlsYXJpdGllcyBiZXR3ZWVuIHRoZSBsaW5lIGluIEIgYW5kIHRoZSBuZWFyYnkgbGluZXMgaW4gQS4KKyAqIFRvIGtlZXAgdGhlIGxlbmd0aCBvZiBlYWNoIHJvdyB0aGUgc2FtZSwgaXQgaXMgcGFkZGVkIG91dCB3aXRoIHZhbHVlcyBvZiAtMQorICogd2hlcmUgdGhlIHNlYXJjaCByYW5nZSBleHRlbmRzIGJleW9uZCB0aGUgbGluZXMgaW4gQS4KKyAqIEZvciBleGFtcGxlLCBpZiBtYXhfc2VhcmNoX2Rpc3RhbmNlX2EgaXMgMiBhbmQgdGhlIHR3byBzaWRlcyBvZiBhIGRpZmYgY2h1bmsKKyAqIGxvb2sgbGlrZSB0aGlzOgorICogYSB8IG0KKyAqIGIgfCBuCisgKiBjIHwgbworICogZCB8IHAKKyAqIGUgfCBxCisgKiBUaGVuIHRoZSBzaW1pbGFyaXR5IGFycmF5IHdpbGwgY29udGFpbjoKKyAqIFstMSwgLTEsIGFtLCBibSwgY20sCisgKiAgLTEsIGFuLCBibiwgY24sIGRuLAorICogIGFvLCBibywgY28sIGRvLCBlbywKKyAqICBicCwgY3AsIGRwLCBlcCwgLTEsCisgKiAgY3EsIGRxLCBlcSwgLTEsIC0xXQorICogV2hlcmUgc2ltaWxhcml0aWVzIGFyZSBkZW5vdGVkIGVpdGhlciBieSAtMSBmb3IgaW52YWxpZCwgb3IgdGhlCisgKiBjb25jYXRlbmF0aW9uIG9mIHRoZSB0d28gbGluZXMgaW4gdGhlIGRpZmYgYmVpbmcgY29tcGFyZWQuCisgKgorICogXHBhcmFtIHNpbWlsYXJpdGllcyBhcnJheSBvZiBzaW1pbGFyaXRpZXMgYmV0d2VlbiBsaW5lcyBpbiBBIGFuZCBCCisgKiBccGFyYW0gbGluZV9hIHRoZSBpbmRleCBvZiB0aGUgbGluZSBpbiBBLCBpbiB0aGUgc2FtZSBmcmFtZSBvZiByZWZlcmVuY2UgYXMKKyAqCWNsb3Nlc3RfbGluZV9hLgorICogXHBhcmFtIGxvY2FsX2xpbmVfYiB0aGUgaW5kZXggb2YgdGhlIGxpbmUgaW4gQiwgcmVsYXRpdmUgdG8gdGhlIGZpcnN0IGxpbmUKKyAqCQkgICAgICAgaW4gQiB0aGF0IHNpbWlsYXJpdGllcyByZXByZXNlbnRzLgorICogXHBhcmFtIGNsb3Nlc3RfbGluZV9hIHRoZSBpbmRleCBvZiB0aGUgbGluZSBpbiBBIHRoYXQgaXMgZGVlbWVkIHRvIGJlCisgKgkJCSBjbG9zZXN0IHRvIGxvY2FsX2xpbmVfYi4gVGhpcyBtdXN0IGJlIGluIHRoZSBzYW1lCisgKgkJCSBmcmFtZSBvZiByZWZlcmVuY2UgYXMgbGluZV9hLiBUaGlzIHZhbHVlIGRlZmluZXMKKyAqCQkJIHdoZXJlIHNpbWlsYXJpdGllcyBpcyBjZW50ZXJlZCBmb3IgdGhlIGxpbmUgaW4gQi4KKyAqIFxwYXJhbSBtYXhfc2VhcmNoX2Rpc3RhbmNlX2EgbWF4aW11bSBkaXN0YW5jZSBpbiBsaW5lcyBmcm9tIHRoZSBjbG9zZXN0IGxpbmUKKyAqIAkJCQlpbiBBIGZvciBvdGhlciBsaW5lcyBpbiBBIGZvciB3aGljaAorICogCQkJCXNpbWlsYXJpdGllcyBtYXkgYmUgY2FsY3VsYXRlZC4KKyAqLworc3RhdGljIGludCAqZ2V0X3NpbWlsYXJpdHkoaW50ICpzaW1pbGFyaXRpZXMsCisJCQkgICBpbnQgbGluZV9hLCBpbnQgbG9jYWxfbGluZV9iLAorCQkJICAgaW50IGNsb3Nlc3RfbGluZV9hLCBpbnQgbWF4X3NlYXJjaF9kaXN0YW5jZV9hKQoreworCWFzc2VydChhYnMobGluZV9hIC0gY2xvc2VzdF9saW5lX2EpIDw9CisJICAgICAgIG1heF9zZWFyY2hfZGlzdGFuY2VfYSk7CisJcmV0dXJuIHNpbWlsYXJpdGllcyArIGxpbmVfYSAtIGNsb3Nlc3RfbGluZV9hICsKKwkgICAgICAgbWF4X3NlYXJjaF9kaXN0YW5jZV9hICsKKwkgICAgICAgbG9jYWxfbGluZV9iICogKG1heF9zZWFyY2hfZGlzdGFuY2VfYSAqIDIgKyAxKTsKK30KKworI2RlZmluZSBDRVJUQUlOX05PVEhJTkdfTUFUQ0hFUyAtMgorI2RlZmluZSBDRVJUQUlOVFlfTk9UX0NBTENVTEFURUQgLTEKKworLyogR2l2ZW4gYSBsaW5lIGluIEIsIGZpcnN0IGNhbGN1bGF0ZSBpdHMgc2ltaWxhcml0aWVzIHdpdGggbmVhcmJ5IGxpbmVzIGluIEEKKyAqIGlmIG5vdCBhbHJlYWR5IGNhbGN1bGF0ZWQsIHRoZW4gaWRlbnRpZnkgdGhlIG1vc3Qgc2ltaWxhciBhbmQgc2Vjb25kIG1vc3QKKyAqIHNpbWlsYXIgbGluZXMuIFRoZSAiY2VydGFpbnR5IiBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRob3NlIHR3bworICogc2ltaWxhcml0aWVzLgorICoKKyAqIFxwYXJhbSBzdGFydF9hIHRoZSBpbmRleCBvZiB0aGUgZmlyc3QgbGluZSBvZiB0aGUgY2h1bmsgaW4gQQorICogXHBhcmFtIGxlbmd0aF9hIHRoZSBsZW5ndGggaW4gbGluZXMgb2YgdGhlIGNodW5rIGluIEEKKyAqIFxwYXJhbSBsb2NhbF9saW5lX2IgdGhlIGluZGV4IG9mIHRoZSBsaW5lIGluIEIsIHJlbGF0aXZlIHRvIHRoZSBmaXJzdCBsaW5lCisgKiAJCSAgICAgICBpbiB0aGUgY2h1bmsuCisgKiBccGFyYW0gZmluZ2VycHJpbnRzX2EgYXJyYXkgb2YgZmluZ2VycHJpbnRzIGZvciB0aGUgY2h1bmsgaW4gQQorICogXHBhcmFtIGZpbmdlcnByaW50c19iIGFycmF5IG9mIGZpbmdlcnByaW50cyBmb3IgdGhlIGNodW5rIGluIEIKKyAqIFxwYXJhbSBzaW1pbGFyaXRpZXMgMi1kaW1lbnNpb25hbCBhcnJheSBvZiBzaW1pbGFyaXRpZXMgYmV0d2VlbiBsaW5lcyBpbiBBCisgKiAJCSAgICAgICBhbmQgQi4gU2VlIGdldF9zaW1pbGFyaXR5KCkgZm9yIG1vcmUgZGV0YWlscy4KKyAqIFxwYXJhbSBjZXJ0YWludGllcyBhcnJheSBvZiB2YWx1ZXMgaW5kaWNhdGluZyBob3cgc3Ryb25nbHkgYSBsaW5lIGluIEIgaXMKKyAqIAkJICAgICAgbWF0Y2hlZCB3aXRoIHNvbWUgbGluZSBpbiBBLgorICogXHBhcmFtIHNlY29uZF9iZXN0X3Jlc3VsdCBhcnJheSBvZiBhYnNvbHV0ZSBpbmRpY2VzIGluIEEgZm9yIHRoZSBzZWNvbmQKKyAqIAkJCSAgICAgY2xvc2VzdCBtYXRjaCBvZiBhIGxpbmUgaW4gQi4KKyAqIFxwYXJhbSByZXN1bHQgYXJyYXkgb2YgYWJzb2x1dGUgaW5kaWNlcyBpbiBBIGZvciB0aGUgY2xvc2VzdCBtYXRjaCBvZiBhIGxpbmUKKyAqIAkJIGluIEIuCisgKiBccGFyYW0gbWF4X3NlYXJjaF9kaXN0YW5jZV9hIG1heGltdW0gZGlzdGFuY2UgaW4gbGluZXMgZnJvbSB0aGUgY2xvc2VzdCBsaW5lCisgKiAJCQkJaW4gQSBmb3Igb3RoZXIgbGluZXMgaW4gQSBmb3Igd2hpY2gKKyAqIAkJCQlzaW1pbGFyaXRpZXMgbWF5IGJlIGNhbGN1bGF0ZWQuCisgKiBccGFyYW0gbWFwX2xpbmVfbnVtYmVyX2luX2JfdG9fYSBwYXJhbWV0ZXIgdG8gbWFwX2xpbmVfbnVtYmVyKCkuCisgKi8KK3N0YXRpYyB2b2lkIGZpbmRfYmVzdF9saW5lX21hdGNoZXMoCisJaW50IHN0YXJ0X2EsCisJaW50IGxlbmd0aF9hLAorCWludCBzdGFydF9iLAorCWludCBsb2NhbF9saW5lX2IsCisJc3RydWN0IGZpbmdlcnByaW50ICpmaW5nZXJwcmludHNfYSwKKwlzdHJ1Y3QgZmluZ2VycHJpbnQgKmZpbmdlcnByaW50c19iLAorCWludCAqc2ltaWxhcml0aWVzLAorCWludCAqY2VydGFpbnRpZXMsCisJaW50ICpzZWNvbmRfYmVzdF9yZXN1bHQsCisJaW50ICpyZXN1bHQsCisJY29uc3QgaW50IG1heF9zZWFyY2hfZGlzdGFuY2VfYSwKKwljb25zdCBzdHJ1Y3QgbGluZV9udW1iZXJfbWFwcGluZyAqbWFwX2xpbmVfbnVtYmVyX2luX2JfdG9fYSkKK3sKKworCWludCBpLCBzZWFyY2hfc3RhcnQsIHNlYXJjaF9lbmQsIGNsb3Nlc3RfbG9jYWxfbGluZV9hLCAqc2ltaWxhcml0eSwKKwkJYmVzdF9zaW1pbGFyaXR5ID0gMCwgc2Vjb25kX2Jlc3Rfc2ltaWxhcml0eSA9IDAsCisJCWJlc3Rfc2ltaWxhcml0eV9pbmRleCA9IDAsIHNlY29uZF9iZXN0X3NpbWlsYXJpdHlfaW5kZXggPSAwOworCisJLyogY2VydGFpbnR5IGhhcyBhbHJlYWR5IGJlZW4gY2FsY3VsYXRlZCBzbyBubyBuZWVkIHRvIHJlZG8gdGhlIHdvcmsgKi8KKwlpZiAoY2VydGFpbnRpZXNbbG9jYWxfbGluZV9iXSAhPSBDRVJUQUlOVFlfTk9UX0NBTENVTEFURUQpCisJCXJldHVybjsKKworCWNsb3Nlc3RfbG9jYWxfbGluZV9hID0gbWFwX2xpbmVfbnVtYmVyKAorCQlsb2NhbF9saW5lX2IgKyBzdGFydF9iLCBtYXBfbGluZV9udW1iZXJfaW5fYl90b19hKSAtIHN0YXJ0X2E7CisKKwlzZWFyY2hfc3RhcnQgPSBjbG9zZXN0X2xvY2FsX2xpbmVfYSAtIG1heF9zZWFyY2hfZGlzdGFuY2VfYTsKKwlpZiAoc2VhcmNoX3N0YXJ0IDwgMCkKKwkJc2VhcmNoX3N0YXJ0ID0gMDsKKworCXNlYXJjaF9lbmQgPSBjbG9zZXN0X2xvY2FsX2xpbmVfYSArIG1heF9zZWFyY2hfZGlzdGFuY2VfYSArIDE7CisJaWYgKHNlYXJjaF9lbmQgPiBsZW5ndGhfYSkKKwkJc2VhcmNoX2VuZCA9IGxlbmd0aF9hOworCisJZm9yIChpID0gc2VhcmNoX3N0YXJ0OyBpIDwgc2VhcmNoX2VuZDsgKytpKSB7CisJCXNpbWlsYXJpdHkgPSBnZXRfc2ltaWxhcml0eShzaW1pbGFyaXRpZXMsCisJCQkJCSAgICBpLCBsb2NhbF9saW5lX2IsCisJCQkJCSAgICBjbG9zZXN0X2xvY2FsX2xpbmVfYSwKKwkJCQkJICAgIG1heF9zZWFyY2hfZGlzdGFuY2VfYSk7CisJCWlmICgqc2ltaWxhcml0eSA9PSAtMSkgeworCQkJLyogVGhpcyB2YWx1ZSB3aWxsIG5ldmVyIGV4Y2VlZCAxMCBidXQgYXNzZXJ0IGp1c3QgaW4KKwkJCSAqIGNhc2UKKwkJCSAqLworCQkJYXNzZXJ0KGFicyhpIC0gY2xvc2VzdF9sb2NhbF9saW5lX2EpIDwgMTAwMCk7CisJCQkvKiBzY2FsZSB0aGUgc2ltaWxhcml0eSBieSAoMTAwMCAtIGRpc3RhbmNlIGZyb20KKwkJCSAqIGNsb3Nlc3QgbGluZSkgdG8gYWN0IGFzIGEgdGllIGJyZWFrIGJldHdlZW4gbGluZXMKKwkJCSAqIHRoYXQgb3RoZXJ3aXNlIGFyZSBlcXVhbGx5IHNpbWlsYXIuCisJCQkgKi8KKwkJCSpzaW1pbGFyaXR5ID0gZmluZ2VycHJpbnRfc2ltaWxhcml0eSgKKwkJCQlmaW5nZXJwcmludHNfYiArIGxvY2FsX2xpbmVfYiwKKwkJCQlmaW5nZXJwcmludHNfYSArIGkpICoKKwkJCQkoMTAwMCAtIGFicyhpIC0gY2xvc2VzdF9sb2NhbF9saW5lX2EpKTsKKwkJfQorCQlpZiAoKnNpbWlsYXJpdHkgPiBiZXN0X3NpbWlsYXJpdHkpIHsKKwkJCXNlY29uZF9iZXN0X3NpbWlsYXJpdHkgPSBiZXN0X3NpbWlsYXJpdHk7CisJCQlzZWNvbmRfYmVzdF9zaW1pbGFyaXR5X2luZGV4ID0gYmVzdF9zaW1pbGFyaXR5X2luZGV4OworCQkJYmVzdF9zaW1pbGFyaXR5ID0gKnNpbWlsYXJpdHk7CisJCQliZXN0X3NpbWlsYXJpdHlfaW5kZXggPSBpOworCQl9IGVsc2UgaWYgKCpzaW1pbGFyaXR5ID4gc2Vjb25kX2Jlc3Rfc2ltaWxhcml0eSkgeworCQkJc2Vjb25kX2Jlc3Rfc2ltaWxhcml0eSA9ICpzaW1pbGFyaXR5OworCQkJc2Vjb25kX2Jlc3Rfc2ltaWxhcml0eV9pbmRleCA9IGk7CisJCX0KKwl9CisKKwlpZiAoYmVzdF9zaW1pbGFyaXR5ID09IDApIHsKKwkJLyogdGhpcyBsaW5lIGRlZmluaXRlbHkgZG9lc24ndCBtYXRjaCB3aXRoIGFueXRoaW5nLiBNYXJrIGl0CisJCSAqIHdpdGggdGhpcyBzcGVjaWFsIHZhbHVlIHNvIGl0IGRvZXNuJ3QgZ2V0IGludmFsaWRhdGVkIGFuZAorCQkgKiB3b24ndCBiZSByZWNhbGN1bGF0ZWQuCisJCSAqLworCQljZXJ0YWludGllc1tsb2NhbF9saW5lX2JdID0gQ0VSVEFJTl9OT1RISU5HX01BVENIRVM7CisJCXJlc3VsdFtsb2NhbF9saW5lX2JdID0gLTE7CisJfSBlbHNlIHsKKwkJLyogQ2FsY3VsYXRlIHRoZSBjZXJ0YWludHkgd2l0aCB3aGljaCB0aGlzIGxpbmUgbWF0Y2hlcy4KKwkJICogSWYgdGhlIGxpbmUgbWF0Y2hlcyB3ZWxsIHdpdGggdHdvIGxpbmVzIHRoZW4gdGhhdCByZWR1Y2VzCisJCSAqIHRoZSBjZXJ0YWludHkuIEhvd2V2ZXIgd2Ugc3RpbGwgd2FudCB0byBwcmlvcml0aXNlIG1hdGNoaW5nCisJCSAqIGEgbGluZSB0aGF0IG1hdGNoZXMgdmVyeSB3ZWxsIHdpdGggdHdvIGxpbmVzIG92ZXIgbWF0Y2hpbmcgYQorCQkgKiBsaW5lIHRoYXQgbWF0Y2hlcyBwb29ybHkgd2l0aCBvbmUgbGluZSwgaGVuY2UgZG91YmxpbmcKKwkJICogYmVzdF9zaW1pbGFyaXR5LgorCQkgKiBUaGlzIG1lYW5zIHRoYXQgaWYgd2UgaGF2ZQorCQkgKiBsaW5lIFggdGhhdCBtYXRjaGVzIG9ubHkgb25lIGxpbmUgd2l0aCBhIHNjb3JlIG9mIDMsCisJCSAqIGxpbmUgWSB0aGF0IG1hdGNoZXMgdHdvIGxpbmVzIGVxdWFsbHkgd2l0aCBhIHNjb3JlIG9mIDUsCisJCSAqIGFuZCBsaW5lIFogdGhhdCBtYXRjaGVzIG9ubHkgb25lIGxpbmUgd2l0aCBhIHNjb3JlIG9yIDIsCisJCSAqIHRoZW4gdGhlIGxpbmVzIGluIG9yZGVyIG9mIGNlcnRhaW50eSBhcmUgWCwgWSwgWi4KKwkJICovCisJCWNlcnRhaW50aWVzW2xvY2FsX2xpbmVfYl0gPSBiZXN0X3NpbWlsYXJpdHkgKiAyIC0KKwkJCXNlY29uZF9iZXN0X3NpbWlsYXJpdHk7CisKKwkJLyogV2Uga2VlcCBib3RoIHRoZSBiZXN0IGFuZCBzZWNvbmQgYmVzdCByZXN1bHRzIHRvIGFsbG93IHVzIHRvCisJCSAqIGNoZWNrIGF0IGEgbGF0ZXIgc3RhZ2Ugb2YgdGhlIG1hdGNoaW5nIHByb2Nlc3Mgd2hldGhlciB0aGUKKwkJICogcmVzdWx0IG5lZWRzIHRvIGJlIGludmFsaWRhdGVkLgorCQkgKi8KKwkJcmVzdWx0W2xvY2FsX2xpbmVfYl0gPSBzdGFydF9hICsgYmVzdF9zaW1pbGFyaXR5X2luZGV4OworCQlzZWNvbmRfYmVzdF9yZXN1bHRbbG9jYWxfbGluZV9iXSA9CisJCQlzdGFydF9hICsgc2Vjb25kX2Jlc3Rfc2ltaWxhcml0eV9pbmRleDsKKwl9Cit9CisKKy8qCisgKiBUaGlzIGZpbmRzIHRoZSBsaW5lIHRoYXQgd2UgY2FuIG1hdGNoIHdpdGggdGhlIG1vc3QgY29uZmlkZW5jZSwgYW5kCisgKiB1c2VzIGl0IGFzIGEgcGFydGl0aW9uLiBJdCB0aGVuIGNhbGxzIGl0c2VsZiBvbiB0aGUgbGluZXMgb24gZWl0aGVyIHNpZGUgb2YKKyAqIHRoYXQgcGFydGl0aW9uLiBJbiB0aGlzIHdheSB3ZSBhdm9pZCBsaW5lcyBhcHBlYXJpbmcgb3V0IG9mIG9yZGVyLCBhbmQKKyAqIHJldGFpbiBhIHNlbnNpYmxlIGxpbmUgb3JkZXJpbmcuCisgKiBccGFyYW0gc3RhcnRfYSBpbmRleCBvZiB0aGUgZmlyc3QgbGluZSBpbiBBIHdpdGggd2hpY2ggbGluZXMgaW4gQiBtYXkgYmUKKyAqIAkJICBjb21wYXJlZC4KKyAqIFxwYXJhbSBzdGFydF9iIGluZGV4IG9mIHRoZSBmaXJzdCBsaW5lIGluIEIgZm9yIHdoaWNoIG1hdGNoaW5nIHNob3VsZCBiZQorICogCQkgIGRvbmUuCisgKiBccGFyYW0gbGVuZ3RoX2EgbnVtYmVyIG9mIGxpbmVzIGluIEEgd2l0aCB3aGljaCBsaW5lcyBpbiBCIG1heSBiZSBjb21wYXJlZC4KKyAqIFxwYXJhbSBsZW5ndGhfYiBudW1iZXIgb2YgbGluZXMgaW4gQiBmb3Igd2hpY2ggbWF0Y2hpbmcgc2hvdWxkIGJlIGRvbmUuCisgKiBccGFyYW0gZmluZ2VycHJpbnRzX2EgbXV0YWJsZSBhcnJheSBvZiBmaW5nZXJwcmludHMgaW4gQS4gVGhlIGZpcnN0IGVsZW1lbnQKKyAqIAkJCSBjb3JyZXNwb25kcyB0byB0aGUgbGluZSBhdCBzdGFydF9hLgorICogXHBhcmFtIGZpbmdlcnByaW50c19iIGFycmF5IG9mIGZpbmdlcnByaW50cyBpbiBCLiBUaGUgZmlyc3QgZWxlbWVudAorICogCQkJIGNvcnJlc3BvbmRzIHRvIHRoZSBsaW5lIGF0IHN0YXJ0X2IuCisgKiBccGFyYW0gc2ltaWxhcml0aWVzIDItZGltZW5zaW9uYWwgYXJyYXkgb2Ygc2ltaWxhcml0aWVzIGJldHdlZW4gbGluZXMgaW4gQQorICogCQkgICAgICAgYW5kIEIuIFNlZSBnZXRfc2ltaWxhcml0eSgpIGZvciBtb3JlIGRldGFpbHMuCisgKiBccGFyYW0gY2VydGFpbnRpZXMgYXJyYXkgb2YgdmFsdWVzIGluZGljYXRpbmcgaG93IHN0cm9uZ2x5IGEgbGluZSBpbiBCIGlzCisgKiAJCSAgICAgIG1hdGNoZWQgd2l0aCBzb21lIGxpbmUgaW4gQS4KKyAqIFxwYXJhbSBzZWNvbmRfYmVzdF9yZXN1bHQgYXJyYXkgb2YgYWJzb2x1dGUgaW5kaWNlcyBpbiBBIGZvciB0aGUgc2Vjb25kCisgKiAJCQkgICAgIGNsb3Nlc3QgbWF0Y2ggb2YgYSBsaW5lIGluIEIuCisgKiBccGFyYW0gcmVzdWx0IGFycmF5IG9mIGFic29sdXRlIGluZGljZXMgaW4gQSBmb3IgdGhlIGNsb3Nlc3QgbWF0Y2ggb2YgYSBsaW5lCisgKiAJCSBpbiBCLgorICogXHBhcmFtIG1heF9zZWFyY2hfZGlzdGFuY2VfYSBtYXhpbXVtIGRpc3RhbmNlIGluIGxpbmVzIGZyb20gdGhlIGNsb3Nlc3QgbGluZQorICogCQkJICAgICAgaW4gQSBmb3Igb3RoZXIgbGluZXMgaW4gQSBmb3Igd2hpY2gKKyAqIAkJCSAgICAgIHNpbWlsYXJpdGllcyBtYXkgYmUgY2FsY3VsYXRlZC4KKyAqIFxwYXJhbSBtYXhfc2VhcmNoX2Rpc3RhbmNlX2IgYW4gdXBwZXIgYm91bmQgb24gdGhlIGdyZWF0ZXN0IHBvc3NpYmxlCisgKiAJCQkgICAgICBkaXN0YW5jZSBiZXR3ZWVuIGxpbmVzIGluIEIgc3VjaCB0aGF0IHRoZXkgd2lsbAorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3RoIGJlIGNvbXBhcmVkIHdpdGggdGhlIHNhbWUgbGluZSBpbiBBCisgKiAJCQkgICAgICBhY2NvcmRpbmcgdG8gbWF4X3NlYXJjaF9kaXN0YW5jZV9hLgorICogXHBhcmFtIG1hcF9saW5lX251bWJlcl9pbl9iX3RvX2EgcGFyYW1ldGVyIHRvIG1hcF9saW5lX251bWJlcigpLgorICovCitzdGF0aWMgdm9pZCBmdXp6eV9maW5kX21hdGNoaW5nX2xpbmVzX3JlY3Vyc2UoCisJaW50IHN0YXJ0X2EsIGludCBzdGFydF9iLAorCWludCBsZW5ndGhfYSwgaW50IGxlbmd0aF9iLAorCXN0cnVjdCBmaW5nZXJwcmludCAqZmluZ2VycHJpbnRzX2EsCisJc3RydWN0IGZpbmdlcnByaW50ICpmaW5nZXJwcmludHNfYiwKKwlpbnQgKnNpbWlsYXJpdGllcywKKwlpbnQgKmNlcnRhaW50aWVzLAorCWludCAqc2Vjb25kX2Jlc3RfcmVzdWx0LAorCWludCAqcmVzdWx0LAorCWludCBtYXhfc2VhcmNoX2Rpc3RhbmNlX2EsCisJaW50IG1heF9zZWFyY2hfZGlzdGFuY2VfYiwKKwljb25zdCBzdHJ1Y3QgbGluZV9udW1iZXJfbWFwcGluZyAqbWFwX2xpbmVfbnVtYmVyX2luX2JfdG9fYSkKK3sKKwlpbnQgaSwgaW52YWxpZGF0ZV9taW4sIGludmFsaWRhdGVfbWF4LCBvZmZzZXRfYiwKKwkJc2Vjb25kX2hhbGZfc3RhcnRfYSwgc2Vjb25kX2hhbGZfc3RhcnRfYiwKKwkJc2Vjb25kX2hhbGZfbGVuZ3RoX2EsIHNlY29uZF9oYWxmX2xlbmd0aF9iLAorCQltb3N0X2NlcnRhaW5fbGluZV9hLCBtb3N0X2NlcnRhaW5fbG9jYWxfbGluZV9iID0gLTEsCisJCW1vc3RfY2VydGFpbl9saW5lX2NlcnRhaW50eSA9IC0xLAorCQljbG9zZXN0X2xvY2FsX2xpbmVfYTsKKworCWZvciAoaSA9IDA7IGkgPCBsZW5ndGhfYjsgKytpKSB7CisJCWZpbmRfYmVzdF9saW5lX21hdGNoZXMoc3RhcnRfYSwKKwkJCQkgICAgICAgbGVuZ3RoX2EsCisJCQkJICAgICAgIHN0YXJ0X2IsCisJCQkJICAgICAgIGksCisJCQkJICAgICAgIGZpbmdlcnByaW50c19hLAorCQkJCSAgICAgICBmaW5nZXJwcmludHNfYiwKKwkJCQkgICAgICAgc2ltaWxhcml0aWVzLAorCQkJCSAgICAgICBjZXJ0YWludGllcywKKwkJCQkgICAgICAgc2Vjb25kX2Jlc3RfcmVzdWx0LAorCQkJCSAgICAgICByZXN1bHQsCisJCQkJICAgICAgIG1heF9zZWFyY2hfZGlzdGFuY2VfYSwKKwkJCQkgICAgICAgbWFwX2xpbmVfbnVtYmVyX2luX2JfdG9fYSk7CisKKwkJaWYgKGNlcnRhaW50aWVzW2ldID4gbW9zdF9jZXJ0YWluX2xpbmVfY2VydGFpbnR5KSB7CisJCQltb3N0X2NlcnRhaW5fbGluZV9jZXJ0YWludHkgPSBjZXJ0YWludGllc1tpXTsKKwkJCW1vc3RfY2VydGFpbl9sb2NhbF9saW5lX2IgPSBpOworCQl9CisJfQorCisJLyogTm8gbWF0Y2hlcy4gKi8KKwlpZiAobW9zdF9jZXJ0YWluX2xvY2FsX2xpbmVfYiA9PSAtMSkKKwkJcmV0dXJuOworCisJbW9zdF9jZXJ0YWluX2xpbmVfYSA9IHJlc3VsdFttb3N0X2NlcnRhaW5fbG9jYWxfbGluZV9iXTsKKworCS8qCisJICogU3VidHJhY3QgdGhlIG1vc3QgY2VydGFpbiBsaW5lJ3MgZmluZ2VycHJpbnQgaW4gQiBmcm9tIHRoZSBtYXRjaGVkCisJICogZmluZ2VycHJpbnQgaW4gQS4gVGhpcyBtZWFucyB0aGF0IG90aGVyIGxpbmVzIGluIEIgY2FuJ3QgYWxzbyBtYXRjaAorCSAqIHRoZSBzYW1lIHBhcnRzIG9mIHRoZSBsaW5lIGluIEEuCisJICovCisJZmluZ2VycHJpbnRfc3VidHJhY3QoZmluZ2VycHJpbnRzX2EgKyBtb3N0X2NlcnRhaW5fbGluZV9hIC0gc3RhcnRfYSwKKwkJCSAgICAgZmluZ2VycHJpbnRzX2IgKyBtb3N0X2NlcnRhaW5fbG9jYWxfbGluZV9iKTsKKworCS8qIEludmFsaWRhdGUgcmVzdWx0cyB0aGF0IG1heSBiZSBhZmZlY3RlZCBieSB0aGUgY2hvaWNlIG9mIG1vc3QKKwkgKiBjZXJ0YWluIGxpbmUuCisJICovCisJaW52YWxpZGF0ZV9taW4gPSBtb3N0X2NlcnRhaW5fbG9jYWxfbGluZV9iIC0gbWF4X3NlYXJjaF9kaXN0YW5jZV9iOworCWludmFsaWRhdGVfbWF4ID0gbW9zdF9jZXJ0YWluX2xvY2FsX2xpbmVfYiArIG1heF9zZWFyY2hfZGlzdGFuY2VfYiArIDE7CisJaWYgKGludmFsaWRhdGVfbWluIDwgMCkKKwkJaW52YWxpZGF0ZV9taW4gPSAwOworCWlmIChpbnZhbGlkYXRlX21heCA+IGxlbmd0aF9iKQorCQlpbnZhbGlkYXRlX21heCA9IGxlbmd0aF9iOworCisJLyogQXMgdGhlIGZpbmdlcnByaW50IGluIEEgaGFzIGNoYW5nZWQsIGRpc2NhcmQgcHJldmlvdXNseSBjYWxjdWxhdGVkCisJICogc2ltaWxhcml0eSB2YWx1ZXMgd2l0aCB0aGF0IGZpbmdlcnByaW50LgorCSAqLworCWZvciAoaSA9IGludmFsaWRhdGVfbWluOyBpIDwgaW52YWxpZGF0ZV9tYXg7ICsraSkgeworCQljbG9zZXN0X2xvY2FsX2xpbmVfYSA9IG1hcF9saW5lX251bWJlcigKKwkJCWkgKyBzdGFydF9iLCBtYXBfbGluZV9udW1iZXJfaW5fYl90b19hKSAtIHN0YXJ0X2E7CisKKwkJLyogQ2hlY2sgdGhhdCB0aGUgbGluZXMgaW4gQSBhbmQgQiBhcmUgY2xvc2UgZW5vdWdoIHRoYXQgdGhlcmUKKwkJICogaXMgYSBzaW1pbGFyaXR5IHZhbHVlIGZvciB0aGVtLgorCQkgKi8KKwkJaWYgKGFicyhtb3N0X2NlcnRhaW5fbGluZV9hIC0gc3RhcnRfYSAtIGNsb3Nlc3RfbG9jYWxfbGluZV9hKSA+CisJCQltYXhfc2VhcmNoX2Rpc3RhbmNlX2EpIHsKKwkJCWNvbnRpbnVlOworCQl9CisKKwkJKmdldF9zaW1pbGFyaXR5KHNpbWlsYXJpdGllcywgbW9zdF9jZXJ0YWluX2xpbmVfYSAtIHN0YXJ0X2EsCisJCQkJaSwgY2xvc2VzdF9sb2NhbF9saW5lX2EsCisJCQkJbWF4X3NlYXJjaF9kaXN0YW5jZV9hKSA9IC0xOworCX0KKworCS8qIE1vcmUgaW52YWxpZGF0aW5nIG9mIHJlc3VsdHMgdGhhdCBtYXkgYmUgYWZmZWN0ZWQgYnkgdGhlIGNob2ljZSBvZgorCSAqIG1vc3QgY2VydGFpbiBsaW5lLgorCSAqIERpc2NhcmQgdGhlIG1hdGNoZXMgZm9yIGxpbmVzIGluIEIgdGhhdCBhcmUgY3VycmVudGx5IG1hdGNoZWQgd2l0aCBhCisJICogbGluZSBpbiBBIHN1Y2ggdGhhdCB0aGVpciBvcmRlcmluZyBjb250cmFkaWN0cyB0aGUgb3JkZXJpbmcgaW1wb3NlZAorCSAqIGJ5IHRoZSBjaG9pY2Ugb2YgbW9zdCBjZXJ0YWluIGxpbmUuCisJICovCisJZm9yIChpID0gbW9zdF9jZXJ0YWluX2xvY2FsX2xpbmVfYiAtIDE7IGkgPj0gaW52YWxpZGF0ZV9taW47IC0taSkgeworCQkvKiBJbiB0aGlzIGxvb3Agd2UgZGlzY2FyZCByZXN1bHRzIGZvciBsaW5lcyBpbiBCIHRoYXQgYXJlCisJCSAqIGJlZm9yZSBtb3N0LWNlcnRhaW4tbGluZS1CIGJ1dCBhcmUgbWF0Y2hlZCB3aXRoIGEgbGluZSBpbiBBCisJCSAqIHRoYXQgaXMgYWZ0ZXIgbW9zdC1jZXJ0YWluLWxpbmUtQS4KKwkJICovCisJCWlmIChjZXJ0YWludGllc1tpXSA+PSAwICYmCisJCSAgICAocmVzdWx0W2ldID49IG1vc3RfY2VydGFpbl9saW5lX2EgfHwKKwkJICAgICBzZWNvbmRfYmVzdF9yZXN1bHRbaV0gPj0gbW9zdF9jZXJ0YWluX2xpbmVfYSkpIHsKKwkJCWNlcnRhaW50aWVzW2ldID0gQ0VSVEFJTlRZX05PVF9DQUxDVUxBVEVEOworCQl9CisJfQorCWZvciAoaSA9IG1vc3RfY2VydGFpbl9sb2NhbF9saW5lX2IgKyAxOyBpIDwgaW52YWxpZGF0ZV9tYXg7ICsraSkgeworCQkvKiBJbiB0aGlzIGxvb3Agd2UgZGlzY2FyZCByZXN1bHRzIGZvciBsaW5lcyBpbiBCIHRoYXQgYXJlCisJCSAqIGFmdGVyIG1vc3QtY2VydGFpbi1saW5lLUIgYnV0IGFyZSBtYXRjaGVkIHdpdGggYSBsaW5lIGluIEEKKwkJICogdGhhdCBpcyBiZWZvcmUgbW9zdC1jZXJ0YWluLWxpbmUtQS4KKwkJICovCisJCWlmIChjZXJ0YWludGllc1tpXSA+PSAwICYmCisJCSAgICAocmVzdWx0W2ldIDw9IG1vc3RfY2VydGFpbl9saW5lX2EgfHwKKwkJICAgICBzZWNvbmRfYmVzdF9yZXN1bHRbaV0gPD0gbW9zdF9jZXJ0YWluX2xpbmVfYSkpIHsKKwkJCWNlcnRhaW50aWVzW2ldID0gQ0VSVEFJTlRZX05PVF9DQUxDVUxBVEVEOworCQl9CisJfQorCisJLyogUmVwZWF0IHRoZSBtYXRjaGluZyBwcm9jZXNzIGZvciBsaW5lcyBiZWZvcmUgdGhlIG1vc3QgY2VydGFpbiBsaW5lLgorCSAqLworCWlmIChtb3N0X2NlcnRhaW5fbG9jYWxfbGluZV9iID4gMCkgeworCQlmdXp6eV9maW5kX21hdGNoaW5nX2xpbmVzX3JlY3Vyc2UoCisJCQlzdGFydF9hLCBzdGFydF9iLAorCQkJbW9zdF9jZXJ0YWluX2xpbmVfYSArIDEgLSBzdGFydF9hLAorCQkJbW9zdF9jZXJ0YWluX2xvY2FsX2xpbmVfYiwKKwkJCWZpbmdlcnByaW50c19hLCBmaW5nZXJwcmludHNfYiwgc2ltaWxhcml0aWVzLAorCQkJY2VydGFpbnRpZXMsIHNlY29uZF9iZXN0X3Jlc3VsdCwgcmVzdWx0LAorCQkJbWF4X3NlYXJjaF9kaXN0YW5jZV9hLAorCQkJbWF4X3NlYXJjaF9kaXN0YW5jZV9iLAorCQkJbWFwX2xpbmVfbnVtYmVyX2luX2JfdG9fYSk7CisJfQorCS8qIFJlcGVhdCB0aGUgbWF0Y2hpbmcgcHJvY2VzcyBmb3IgbGluZXMgYWZ0ZXIgdGhlIG1vc3QgY2VydGFpbiBsaW5lLgorCSAqLworCWlmIChtb3N0X2NlcnRhaW5fbG9jYWxfbGluZV9iICsgMSA8IGxlbmd0aF9iKSB7CisJCXNlY29uZF9oYWxmX3N0YXJ0X2EgPSBtb3N0X2NlcnRhaW5fbGluZV9hOworCQlvZmZzZXRfYiA9IG1vc3RfY2VydGFpbl9sb2NhbF9saW5lX2IgKyAxOworCQlzZWNvbmRfaGFsZl9zdGFydF9iID0gc3RhcnRfYiArIG9mZnNldF9iOworCQlzZWNvbmRfaGFsZl9sZW5ndGhfYSA9CisJCQlsZW5ndGhfYSArIHN0YXJ0X2EgLSBzZWNvbmRfaGFsZl9zdGFydF9hOworCQlzZWNvbmRfaGFsZl9sZW5ndGhfYiA9CisJCQlsZW5ndGhfYiArIHN0YXJ0X2IgLSBzZWNvbmRfaGFsZl9zdGFydF9iOworCQlmdXp6eV9maW5kX21hdGNoaW5nX2xpbmVzX3JlY3Vyc2UoCisJCQlzZWNvbmRfaGFsZl9zdGFydF9hLCBzZWNvbmRfaGFsZl9zdGFydF9iLAorCQkJc2Vjb25kX2hhbGZfbGVuZ3RoX2EsIHNlY29uZF9oYWxmX2xlbmd0aF9iLAorCQkJZmluZ2VycHJpbnRzX2EgKyBzZWNvbmRfaGFsZl9zdGFydF9hIC0gc3RhcnRfYSwKKwkJCWZpbmdlcnByaW50c19iICsgb2Zmc2V0X2IsCisJCQlzaW1pbGFyaXRpZXMgKworCQkJCW9mZnNldF9iICogKG1heF9zZWFyY2hfZGlzdGFuY2VfYSAqIDIgKyAxKSwKKwkJCWNlcnRhaW50aWVzICsgb2Zmc2V0X2IsCisJCQlzZWNvbmRfYmVzdF9yZXN1bHQgKyBvZmZzZXRfYiwgcmVzdWx0ICsgb2Zmc2V0X2IsCisJCQltYXhfc2VhcmNoX2Rpc3RhbmNlX2EsCisJCQltYXhfc2VhcmNoX2Rpc3RhbmNlX2IsCisJCQltYXBfbGluZV9udW1iZXJfaW5fYl90b19hKTsKKwl9Cit9CisKKy8qIEZpbmQgdGhlIGxpbmVzIGluIHRoZSBwYXJlbnQgbGluZSByYW5nZSB0aGF0IG1vc3QgY2xvc2VseSBtYXRjaCB0aGUgbGluZXMgaW4KKyAqIHRoZSB0YXJnZXQgbGluZSByYW5nZS4gVGhpcyBpcyBhY2NvbXBsaXNoZWQgYnkgbWF0Y2hpbmcgZmluZ2VycHJpbnRzIGluIGVhY2gKKyAqIGJsYW1lX29yaWdpbiwgYW5kIGNob29zaW5nIHRoZSBiZXN0IG1hdGNoZXMgdGhhdCBwcmVzZXJ2ZSB0aGUgbGluZSBvcmRlcmluZy4KKyAqIFNlZSBzdHJ1Y3QgZmluZ2VycHJpbnQgZm9yIGRldGFpbHMgb2YgZmluZ2VycHJpbnQgbWF0Y2hpbmcsIGFuZAorICogZnV6enlfZmluZF9tYXRjaGluZ19saW5lc19yZWN1cnNlIGZvciBkZXRhaWxzIG9mIHByZXNlcnZpbmcgbGluZSBvcmRlcmluZy4KKyAqCisgKiBUaGUgcGVyZm9ybWFuY2UgaXMgYmVsaWV2ZWQgdG8gYmUgTyhuIGxvZyBuKSBpbiB0aGUgdHlwaWNhbCBjYXNlIGFuZCBPKG5eMikKKyAqIGluIGEgcGF0aG9sb2dpY2FsIGNhc2UsIHdoZXJlIG4gaXMgdGhlIG51bWJlciBvZiBsaW5lcyBpbiB0aGUgdGFyZ2V0IHJhbmdlLgorICovCitzdGF0aWMgaW50ICpmdXp6eV9maW5kX21hdGNoaW5nX2xpbmVzKHN0cnVjdCBibGFtZV9vcmlnaW4gKnBhcmVudCwKKwkJCQkgICAgICBzdHJ1Y3QgYmxhbWVfb3JpZ2luICp0YXJnZXQsCisJCQkJICAgICAgaW50IHRsbm8sIGludCBwYXJlbnRfc2xubywgaW50IHNhbWUsCisJCQkJICAgICAgaW50IHBhcmVudF9sZW4pCit7CisJLyogV2UgdXNlIHRoZSB0ZXJtaW5vbG9neSAiQSIgZm9yIHRoZSBsZWZ0IGhhbmQgc2lkZSBvZiB0aGUgZGlmZiBBS0EKKwkgKiBwYXJlbnQsIGFuZCAiQiIgZm9yIHRoZSByaWdodCBoYW5kIHNpZGUgb2YgdGhlIGRpZmYgQUtBIHRhcmdldC4gKi8KKwlpbnQgc3RhcnRfYSA9IHBhcmVudF9zbG5vOworCWludCBsZW5ndGhfYSA9IHBhcmVudF9sZW47CisJaW50IHN0YXJ0X2IgPSB0bG5vOworCWludCBsZW5ndGhfYiA9IHNhbWUgLSB0bG5vOworCisJc3RydWN0IGxpbmVfbnVtYmVyX21hcHBpbmcgbWFwX2xpbmVfbnVtYmVyX2luX2JfdG9fYSA9IHsKKwkJc3RhcnRfYSwgbGVuZ3RoX2EsIHN0YXJ0X2IsIGxlbmd0aF9iCisJfTsKKworCXN0cnVjdCBmaW5nZXJwcmludCAqZmluZ2VycHJpbnRzX2EgPSBwYXJlbnQtPmZpbmdlcnByaW50czsKKwlzdHJ1Y3QgZmluZ2VycHJpbnQgKmZpbmdlcnByaW50c19iID0gdGFyZ2V0LT5maW5nZXJwcmludHM7CisKKwlpbnQgaSwgKnJlc3VsdCwgKnNlY29uZF9iZXN0X3Jlc3VsdCwKKwkJKmNlcnRhaW50aWVzLCAqc2ltaWxhcml0aWVzLCBzaW1pbGFyaXR5X2NvdW50OworCisJLyoKKwkgKiBtYXhfc2VhcmNoX2Rpc3RhbmNlX2EgbWVhbnMgdGhhdCBnaXZlbiBhIGxpbmUgaW4gQiwgY29tcGFyZSBpdCB0bworCSAqIHRoZSBsaW5lIGluIEEgdGhhdCBpcyBjbG9zZXN0IHRvIGl0cyBwb3NpdGlvbiwgYW5kIHRoZSBsaW5lcyBpbiBBCisJICogdGhhdCBhcmUgbm8gZ3JlYXRlciB0aGFuIG1heF9zZWFyY2hfZGlzdGFuY2VfYSBsaW5lcyBhd2F5IGZyb20gdGhlCisJICogY2xvc2VzdCBsaW5lIGluIEEuCisJICoKKwkgKiBtYXhfc2VhcmNoX2Rpc3RhbmNlX2IgaXMgYW4gdXBwZXIgYm91bmQgb24gdGhlIGdyZWF0ZXN0IHBvc3NpYmxlCisJICogZGlzdGFuY2UgYmV0d2VlbiBsaW5lcyBpbiBCIHN1Y2ggdGhhdCB0aGV5IHdpbGwgYm90aCBiZSBjb21wYXJlZAorCSAqIHdpdGggdGhlIHNhbWUgbGluZSBpbiBBIGFjY29yZGluZyB0byBtYXhfc2VhcmNoX2Rpc3RhbmNlX2EuCisJICovCisJaW50IG1heF9zZWFyY2hfZGlzdGFuY2VfYSA9IDEwLCBtYXhfc2VhcmNoX2Rpc3RhbmNlX2I7CisKKwlpZiAobGVuZ3RoX2EgPD0gMCkKKwkJcmV0dXJuIE5VTEw7CisKKwlpZiAobWF4X3NlYXJjaF9kaXN0YW5jZV9hID49IGxlbmd0aF9hKQorCQltYXhfc2VhcmNoX2Rpc3RhbmNlX2EgPSBsZW5ndGhfYSA/IGxlbmd0aF9hIC0gMSA6IDA7CisKKwltYXhfc2VhcmNoX2Rpc3RhbmNlX2IgPSAoKDIgKiBtYXhfc2VhcmNoX2Rpc3RhbmNlX2EgKyAxKSAqIGxlbmd0aF9iCisJCQkJIC0gMSkgLyBsZW5ndGhfYTsKKworCXJlc3VsdCA9IHhjYWxsb2Moc2l6ZW9mKGludCksIGxlbmd0aF9iKTsKKwlzZWNvbmRfYmVzdF9yZXN1bHQgPSB4Y2FsbG9jKHNpemVvZihpbnQpLCBsZW5ndGhfYik7CisJY2VydGFpbnRpZXMgPSB4Y2FsbG9jKHNpemVvZihpbnQpLCBsZW5ndGhfYik7CisKKwkvKiBTZWUgZ2V0X3NpbWlsYXJpdHkoKSBmb3IgZGV0YWlscyBvZiBzaW1pbGFyaXRpZXMuICovCisJc2ltaWxhcml0eV9jb3VudCA9IGxlbmd0aF9iICogKG1heF9zZWFyY2hfZGlzdGFuY2VfYSAqIDIgKyAxKTsKKwlzaW1pbGFyaXRpZXMgPSB4Y2FsbG9jKHNpemVvZihpbnQpLCBzaW1pbGFyaXR5X2NvdW50KTsKKworCWZvciAoaSA9IDA7IGkgPCBsZW5ndGhfYjsgKytpKSB7CisJCXJlc3VsdFtpXSA9IC0xOworCQlzZWNvbmRfYmVzdF9yZXN1bHRbaV0gPSAtMTsKKwkJY2VydGFpbnRpZXNbaV0gPSBDRVJUQUlOVFlfTk9UX0NBTENVTEFURUQ7CisJfQorCisJZm9yIChpID0gMDsgaSA8IHNpbWlsYXJpdHlfY291bnQ7ICsraSkKKwkJc2ltaWxhcml0aWVzW2ldID0gLTE7CisKKwlmdXp6eV9maW5kX21hdGNoaW5nX2xpbmVzX3JlY3Vyc2Uoc3RhcnRfYSwgc3RhcnRfYiwKKwkJCQkJICBsZW5ndGhfYSwgbGVuZ3RoX2IsCisJCQkJCSAgZmluZ2VycHJpbnRzX2EgKyBzdGFydF9hLAorCQkJCQkgIGZpbmdlcnByaW50c19iICsgc3RhcnRfYiwKKwkJCQkJICBzaW1pbGFyaXRpZXMsCisJCQkJCSAgY2VydGFpbnRpZXMsCisJCQkJCSAgc2Vjb25kX2Jlc3RfcmVzdWx0LAorCQkJCQkgIHJlc3VsdCwKKwkJCQkJICBtYXhfc2VhcmNoX2Rpc3RhbmNlX2EsCisJCQkJCSAgbWF4X3NlYXJjaF9kaXN0YW5jZV9iLAorCQkJCQkgICZtYXBfbGluZV9udW1iZXJfaW5fYl90b19hKTsKKworCWZyZWUoc2ltaWxhcml0aWVzKTsKKwlmcmVlKGNlcnRhaW50aWVzKTsKKwlmcmVlKHNlY29uZF9iZXN0X3Jlc3VsdCk7CisKKwlyZXR1cm4gcmVzdWx0OworfQorCitzdGF0aWMgdm9pZCBmaWxsX29yaWdpbl9maW5nZXJwcmludHMoc3RydWN0IGJsYW1lX29yaWdpbiAqbykKK3sKKwlpbnQgKmxpbmVfc3RhcnRzOworCisJaWYgKG8tPmZpbmdlcnByaW50cykKKwkJcmV0dXJuOworCW8tPm51bV9saW5lcyA9IGZpbmRfbGluZV9zdGFydHMoJmxpbmVfc3RhcnRzLCBvLT5maWxlLnB0ciwKKwkJCQkJby0+ZmlsZS5zaXplKTsKKwlvLT5maW5nZXJwcmludHMgPSB4Y2FsbG9jKHNpemVvZihzdHJ1Y3QgZmluZ2VycHJpbnQpLCBvLT5udW1fbGluZXMpOworCWdldF9saW5lX2ZpbmdlcnByaW50cyhvLT5maW5nZXJwcmludHMsIG8tPmZpbGUucHRyLCBsaW5lX3N0YXJ0cywKKwkJCSAgICAgIDAsIG8tPm51bV9saW5lcyk7CisJZnJlZShsaW5lX3N0YXJ0cyk7Cit9CisKK3N0YXRpYyB2b2lkIGRyb3Bfb3JpZ2luX2ZpbmdlcnByaW50cyhzdHJ1Y3QgYmxhbWVfb3JpZ2luICpvKQoreworCWlmIChvLT5maW5nZXJwcmludHMpIHsKKwkJZnJlZV9saW5lX2ZpbmdlcnByaW50cyhvLT5maW5nZXJwcmludHMsIG8tPm51bV9saW5lcyk7CisJCW8tPm51bV9saW5lcyA9IDA7CisJCUZSRUVfQU5EX05VTEwoby0+ZmluZ2VycHJpbnRzKTsKKwl9Cit9CisKIC8qCiAgKiBHaXZlbiBhbiBvcmlnaW4sIHByZXBhcmUgbW1maWxlX3Qgc3RydWN0dXJlIHRvIGJlIHVzZWQgYnkgdGhlCiAgKiBkaWZmIG1hY2hpbmVyeQogICovCiBzdGF0aWMgdm9pZCBmaWxsX29yaWdpbl9ibG9iKHN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdCwKLQkJCSAgICAgc3RydWN0IGJsYW1lX29yaWdpbiAqbywgbW1maWxlX3QgKmZpbGUsIGludCAqbnVtX3JlYWRfYmxvYikKKwkJCSAgICAgc3RydWN0IGJsYW1lX29yaWdpbiAqbywgbW1maWxlX3QgKmZpbGUsCisJCQkgICAgIGludCAqbnVtX3JlYWRfYmxvYiwgaW50IGZpbGxfZmluZ2VycHJpbnRzKQogewogCWlmICghby0+ZmlsZS5wdHIpIHsKIAkJZW51bSBvYmplY3RfdHlwZSB0eXBlOwpAQCAtMzM0LDExICsxMDM4LDE0IEBACiAJfQogCWVsc2UKIAkJKmZpbGUgPSBvLT5maWxlOworCWlmIChmaWxsX2ZpbmdlcnByaW50cykKKwkJZmlsbF9vcmlnaW5fZmluZ2VycHJpbnRzKG8pOwogfQogCiBzdGF0aWMgdm9pZCBkcm9wX29yaWdpbl9ibG9iKHN0cnVjdCBibGFtZV9vcmlnaW4gKm8pCiB7CiAJRlJFRV9BTkRfTlVMTChvLT5maWxlLnB0cik7CisJZHJvcF9vcmlnaW5fZmluZ2VycHJpbnRzKG8pOwogfQogCiAvKgpAQCAtNDc0LDcgKzExODEsOSBAQAogCiAJZm9yIChlbnQgPSBzYi0+ZW50OyBlbnQgJiYgKG5leHQgPSBlbnQtPm5leHQpOyBlbnQgPSBuZXh0KSB7CiAJCWlmIChlbnQtPnN1c3BlY3QgPT0gbmV4dC0+c3VzcGVjdCAmJgotCQkgICAgZW50LT5zX2xubyArIGVudC0+bnVtX2xpbmVzID09IG5leHQtPnNfbG5vKSB7CisJCSAgICBlbnQtPnNfbG5vICsgZW50LT5udW1fbGluZXMgPT0gbmV4dC0+c19sbm8gJiYKKwkJICAgIGVudC0+aWdub3JlZCA9PSBuZXh0LT5pZ25vcmVkICYmCisJCSAgICBlbnQtPnVuYmxhbWFibGUgPT0gbmV4dC0+dW5ibGFtYWJsZSkgewogCQkJZW50LT5udW1fbGluZXMgKz0gbmV4dC0+bnVtX2xpbmVzOwogCQkJZW50LT5uZXh0ID0gbmV4dC0+bmV4dDsKIAkJCWJsYW1lX29yaWdpbl9kZWNyZWYobmV4dC0+c3VzcGVjdCk7CkBAIC01MjYsNyArMTIzNSw3IEBACiB7CiAJaWYgKCFpc19udWxsX29pZCgmb3JpZ2luLT5ibG9iX29pZCkpCiAJCXJldHVybiAwOwotCWlmIChnZXRfdHJlZV9lbnRyeSgmb3JpZ2luLT5jb21taXQtPm9iamVjdC5vaWQsIG9yaWdpbi0+cGF0aCwgJm9yaWdpbi0+YmxvYl9vaWQsICZvcmlnaW4tPm1vZGUpKQorCWlmIChnZXRfdHJlZV9lbnRyeShyLCAmb3JpZ2luLT5jb21taXQtPm9iamVjdC5vaWQsIG9yaWdpbi0+cGF0aCwgJm9yaWdpbi0+YmxvYl9vaWQsICZvcmlnaW4tPm1vZGUpKQogCQlnb3RvIGVycm9yX291dDsKIAlpZiAob2lkX29iamVjdF9pbmZvKHIsICZvcmlnaW4tPmJsb2Jfb2lkLCBOVUxMKSAhPSBPQkpfQkxPQikKIAkJZ290byBlcnJvcl9vdXQ7CkBAIC03MjQsOCArMTQzMywxNCBAQAogCQkJICBzdHJ1Y3QgYmxhbWVfb3JpZ2luICpwYXJlbnQpCiB7CiAJaW50IGNodW5rX2VuZF9sbm87CisJaW50IGk7CiAJbWVtc2V0KHNwbGl0LCAwLCBzaXplb2Yoc3RydWN0IGJsYW1lX2VudHJ5IFszXSkpOwogCisJZm9yIChpID0gMDsgaSA8IDM7IGkrKykgeworCQlzcGxpdFtpXS5pZ25vcmVkID0gZS0+aWdub3JlZDsKKwkJc3BsaXRbaV0udW5ibGFtYWJsZSA9IGUtPnVuYmxhbWFibGU7CisJfQorCiAJaWYgKGUtPnNfbG5vIDwgdGxubykgewogCQkvKiB0aGVyZSBpcyBhIHByZS1jaHVuayBwYXJ0IG5vdCBibGFtZWQgb24gcGFyZW50ICovCiAJCXNwbGl0WzBdLnN1c3BlY3QgPSBibGFtZV9vcmlnaW5faW5jcmVmKGUtPnN1c3BlY3QpOwpAQCAtODM0LDYgKzE1NDksMTY0IEBACiB9CiAKIC8qCisgKiBTcGxpdHMgYSBibGFtZSBlbnRyeSBpbnRvIHR3byBlbnRyaWVzIGF0ICdsZW4nIGxpbmVzLiAgVGhlIG9yaWdpbmFsICdlJworICogY29uc2lzdHMgb2YgbGVuIGxpbmVzLCBpLmUuIFtlLT5sbm8sIGUtPmxubyArIGxlbiksIGFuZCB0aGUgc2Vjb25kIHBhcnQsCisgKiB3aGljaCBpcyByZXR1cm5lZCwgY29uc2lzdHMgb2YgdGhlIHJlbWFpbmRlcjogW2UtPmxubyArIGxlbiwgZS0+bG5vICsKKyAqIGUtPm51bV9saW5lcykuICBUaGUgY2FsbGVyIG5lZWRzIHRvIHNvcnQgb3V0IHRoZSByZWZlcmVuY2UgY291bnRpbmcgZm9yIHRoZQorICogbmV3IGVudHJ5J3Mgc3VzcGVjdC4KKyAqLworc3RhdGljIHN0cnVjdCBibGFtZV9lbnRyeSAqc3BsaXRfYmxhbWVfYXQoc3RydWN0IGJsYW1lX2VudHJ5ICplLCBpbnQgbGVuLAorCQkJCQkgIHN0cnVjdCBibGFtZV9vcmlnaW4gKm5ld19zdXNwZWN0KQoreworCXN0cnVjdCBibGFtZV9lbnRyeSAqbiA9IHhjYWxsb2MoMSwgc2l6ZW9mKHN0cnVjdCBibGFtZV9lbnRyeSkpOworCisJbi0+c3VzcGVjdCA9IG5ld19zdXNwZWN0OworCW4tPmlnbm9yZWQgPSBlLT5pZ25vcmVkOworCW4tPnVuYmxhbWFibGUgPSBlLT51bmJsYW1hYmxlOworCW4tPmxubyA9IGUtPmxubyArIGxlbjsKKwluLT5zX2xubyA9IGUtPnNfbG5vICsgbGVuOworCW4tPm51bV9saW5lcyA9IGUtPm51bV9saW5lcyAtIGxlbjsKKwllLT5udW1fbGluZXMgPSBsZW47CisJZS0+c2NvcmUgPSAwOworCXJldHVybiBuOworfQorCitzdHJ1Y3QgYmxhbWVfbGluZV90cmFja2VyIHsKKwlpbnQgaXNfcGFyZW50OworCWludCBzX2xubzsKK307CisKK3N0YXRpYyBpbnQgYXJlX2xpbmVzX2FkamFjZW50KHN0cnVjdCBibGFtZV9saW5lX3RyYWNrZXIgKmZpcnN0LAorCQkJICAgICAgc3RydWN0IGJsYW1lX2xpbmVfdHJhY2tlciAqc2Vjb25kKQoreworCXJldHVybiBmaXJzdC0+aXNfcGFyZW50ID09IHNlY29uZC0+aXNfcGFyZW50ICYmCisJICAgICAgIGZpcnN0LT5zX2xubyArIDEgPT0gc2Vjb25kLT5zX2xubzsKK30KKworc3RhdGljIGludCBzY2FuX3BhcmVudF9yYW5nZShzdHJ1Y3QgZmluZ2VycHJpbnQgKnBfZnBzLAorCQkJICAgICBzdHJ1Y3QgZmluZ2VycHJpbnQgKnRfZnBzLCBpbnQgdF9pZHgsCisJCQkgICAgIGludCBmcm9tLCBpbnQgbnJfbGluZXMpCit7CisJaW50IHNpbSwgcF9pZHg7CisJI2RlZmluZSBGSU5HRVJQUklOVF9GSUxFX1RIUkVTSE9MRAkxMAorCWludCBiZXN0X3NpbV92YWwgPSBGSU5HRVJQUklOVF9GSUxFX1RIUkVTSE9MRDsKKwlpbnQgYmVzdF9zaW1faWR4ID0gLTE7CisKKwlmb3IgKHBfaWR4ID0gZnJvbTsgcF9pZHggPCBmcm9tICsgbnJfbGluZXM7IHBfaWR4KyspIHsKKwkJc2ltID0gZmluZ2VycHJpbnRfc2ltaWxhcml0eSgmdF9mcHNbdF9pZHhdLCAmcF9mcHNbcF9pZHhdKTsKKwkJaWYgKHNpbSA8IGJlc3Rfc2ltX3ZhbCkKKwkJCWNvbnRpbnVlOworCQkvKiBCcmVhayB0aWVzIHdpdGggdGhlIGNsb3Nlc3QtdG8tdGFyZ2V0IGxpbmUgbnVtYmVyICovCisJCWlmIChzaW0gPT0gYmVzdF9zaW1fdmFsICYmIGJlc3Rfc2ltX2lkeCAhPSAtMSAmJgorCQkgICAgYWJzKGJlc3Rfc2ltX2lkeCAtIHRfaWR4KSA8IGFicyhwX2lkeCAtIHRfaWR4KSkKKwkJCWNvbnRpbnVlOworCQliZXN0X3NpbV92YWwgPSBzaW07CisJCWJlc3Rfc2ltX2lkeCA9IHBfaWR4OworCX0KKwlyZXR1cm4gYmVzdF9zaW1faWR4OworfQorCisvKgorICogVGhlIGZpcnN0IHBhc3MgY2hlY2tzIHRoZSBibGFtZSBlbnRyeSAoZnJvbSB0aGUgdGFyZ2V0KSBhZ2FpbnN0IHRoZSBwYXJlbnQncworICogZGlmZiBjaHVuay4gIElmIHRoYXQgZmFpbHMgZm9yIGEgbGluZSwgdGhlIHNlY29uZCBwYXNzIHRyaWVzIHRvIG1hdGNoIHRoYXQKKyAqIGxpbmUgdG8gYW55IHBhcnQgb2YgcGFyZW50IGZpbGUuICBUaGF0IGNhdGNoZXMgY2FzZXMgd2hlcmUgYSBjaGFuZ2Ugd2FzCisgKiBicm9rZW4gaW50byB0d28gY2h1bmtzIGJ5ICdjb250ZXh0LicKKyAqLworc3RhdGljIHZvaWQgZ3Vlc3NfbGluZV9ibGFtZXMoc3RydWN0IGJsYW1lX29yaWdpbiAqcGFyZW50LAorCQkJICAgICAgc3RydWN0IGJsYW1lX29yaWdpbiAqdGFyZ2V0LAorCQkJICAgICAgaW50IHRsbm8sIGludCBvZmZzZXQsIGludCBzYW1lLCBpbnQgcGFyZW50X2xlbiwKKwkJCSAgICAgIHN0cnVjdCBibGFtZV9saW5lX3RyYWNrZXIgKmxpbmVfYmxhbWVzKQoreworCWludCBpLCBiZXN0X2lkeCwgdGFyZ2V0X2lkeDsKKwlpbnQgcGFyZW50X3Nsbm8gPSB0bG5vICsgb2Zmc2V0OworCWludCAqZnV6enlfbWF0Y2hlczsKKworCWZ1enp5X21hdGNoZXMgPSBmdXp6eV9maW5kX21hdGNoaW5nX2xpbmVzKHBhcmVudCwgdGFyZ2V0LAorCQkJCQkJICB0bG5vLCBwYXJlbnRfc2xubywgc2FtZSwKKwkJCQkJCSAgcGFyZW50X2xlbik7CisJZm9yIChpID0gMDsgaSA8IHNhbWUgLSB0bG5vOyBpKyspIHsKKwkJdGFyZ2V0X2lkeCA9IHRsbm8gKyBpOworCQlpZiAoZnV6enlfbWF0Y2hlcyAmJiBmdXp6eV9tYXRjaGVzW2ldID49IDApIHsKKwkJCWJlc3RfaWR4ID0gZnV6enlfbWF0Y2hlc1tpXTsKKwkJfSBlbHNlIHsKKwkJCWJlc3RfaWR4ID0gc2Nhbl9wYXJlbnRfcmFuZ2UocGFyZW50LT5maW5nZXJwcmludHMsCisJCQkJCQkgICAgIHRhcmdldC0+ZmluZ2VycHJpbnRzLAorCQkJCQkJICAgICB0YXJnZXRfaWR4LCAwLAorCQkJCQkJICAgICBwYXJlbnQtPm51bV9saW5lcyk7CisJCX0KKwkJaWYgKGJlc3RfaWR4ID49IDApIHsKKwkJCWxpbmVfYmxhbWVzW2ldLmlzX3BhcmVudCA9IDE7CisJCQlsaW5lX2JsYW1lc1tpXS5zX2xubyA9IGJlc3RfaWR4OworCQl9IGVsc2UgeworCQkJbGluZV9ibGFtZXNbaV0uaXNfcGFyZW50ID0gMDsKKwkJCWxpbmVfYmxhbWVzW2ldLnNfbG5vID0gdGFyZ2V0X2lkeDsKKwkJfQorCX0KKwlmcmVlKGZ1enp5X21hdGNoZXMpOworfQorCisvKgorICogVGhpcyBkZWNpZGVzIHdoaWNoIHBhcnRzIG9mIGEgYmxhbWUgZW50cnkgZ28gdG8gdGhlIHBhcmVudCAoYWRkZWQgdG8gdGhlCisgKiBpZ25vcmVkcCBsaXN0KSBhbmQgd2hpY2ggc3RheSB3aXRoIHRoZSB0YXJnZXQgKGFkZGVkIHRvIHRoZSBkaWZmcCBsaXN0KS4gIFRoZQorICogYWN0dWFsIGRlY2lzaW9uIHdhcyBtYWRlIGluIGEgc2VwYXJhdGUgaGV1cmlzdGljIGZ1bmN0aW9uLCBhbmQgdGhvc2UgYW5zd2VycworICogZm9yIHRoZSBsaW5lcyBpbiAnZScgYXJlIGluIGxpbmVfYmxhbWVzLiAgVGhpcyBjb25zdW1lcyBlLCBlc3NlbnRpYWxseQorICogcHV0dGluZyBpdCBvbiBhIGxpc3QuCisgKgorICogTm90ZSB0aGF0IHRoZSBibGFtZSBlbnRyaWVzIG9uIHRoZSBpZ25vcmVkcCBsaXN0IGFyZSBub3QgbmVjZXNzYXJpbHkgc29ydGVkCisgKiB3aXRoIHJlc3BlY3QgdG8gdGhlIHBhcmVudCdzIGxpbmUgbnVtYmVycyB5ZXQuCisgKi8KK3N0YXRpYyB2b2lkIGlnbm9yZV9ibGFtZV9lbnRyeShzdHJ1Y3QgYmxhbWVfZW50cnkgKmUsCisJCQkgICAgICAgc3RydWN0IGJsYW1lX29yaWdpbiAqcGFyZW50LAorCQkJICAgICAgIHN0cnVjdCBibGFtZV9lbnRyeSAqKmRpZmZwLAorCQkJICAgICAgIHN0cnVjdCBibGFtZV9lbnRyeSAqKmlnbm9yZWRwLAorCQkJICAgICAgIHN0cnVjdCBibGFtZV9saW5lX3RyYWNrZXIgKmxpbmVfYmxhbWVzKQoreworCWludCBlbnRyeV9sZW4sIG5yX2xpbmVzLCBpOworCisJLyoKKwkgKiBXZSBjYXJ2ZSBuZXcgZW50cmllcyBvZmYgdGhlIGZyb250IG9mIGUuICBFYWNoIGVudHJ5IGNvbWVzIGZyb20gYQorCSAqIGNvbnRpZ3VvdXMgY2h1bmsgb2YgbGluZXM6IGFkamFjZW50IGxpbmVzIGZyb20gdGhlIHNhbWUgb3JpZ2luCisJICogKGVpdGhlciB0aGUgcGFyZW50IG9yIHRoZSB0YXJnZXQpLgorCSAqLworCWVudHJ5X2xlbiA9IDE7CisJbnJfbGluZXMgPSBlLT5udW1fbGluZXM7CS8qIGUgY2hhbmdlcyBpbiB0aGUgbG9vcCAqLworCWZvciAoaSA9IDA7IGkgPCBucl9saW5lczsgaSsrKSB7CisJCXN0cnVjdCBibGFtZV9lbnRyeSAqbmV4dCA9IE5VTEw7CisKKwkJLyoKKwkJICogV2UgYXJlIG9mdGVuIGFkamFjZW50IHRvIHRoZSBuZXh0IGxpbmUgLSBvbmx5IHNwbGl0IHRoZSBibGFtZQorCQkgKiBlbnRyeSB3aGVuIHdlIGhhdmUgdG8uCisJCSAqLworCQlpZiAoaSArIDEgPCBucl9saW5lcykgeworCQkJaWYgKGFyZV9saW5lc19hZGphY2VudCgmbGluZV9ibGFtZXNbaV0sCisJCQkJCSAgICAgICAmbGluZV9ibGFtZXNbaSArIDFdKSkgeworCQkJCWVudHJ5X2xlbisrOworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJbmV4dCA9IHNwbGl0X2JsYW1lX2F0KGUsIGVudHJ5X2xlbiwKKwkJCQkJICAgICAgYmxhbWVfb3JpZ2luX2luY3JlZihlLT5zdXNwZWN0KSk7CisJCX0KKwkJaWYgKGxpbmVfYmxhbWVzW2ldLmlzX3BhcmVudCkgeworCQkJZS0+aWdub3JlZCA9IDE7CisJCQlibGFtZV9vcmlnaW5fZGVjcmVmKGUtPnN1c3BlY3QpOworCQkJZS0+c3VzcGVjdCA9IGJsYW1lX29yaWdpbl9pbmNyZWYocGFyZW50KTsKKwkJCWUtPnNfbG5vID0gbGluZV9ibGFtZXNbaSAtIGVudHJ5X2xlbiArIDFdLnNfbG5vOworCQkJZS0+bmV4dCA9ICppZ25vcmVkcDsKKwkJCSppZ25vcmVkcCA9IGU7CisJCX0gZWxzZSB7CisJCQllLT51bmJsYW1hYmxlID0gMTsKKwkJCS8qIGUtPnNfbG5vIGlzIGFscmVhZHkgaW4gdGhlIHRhcmdldCdzIGFkZHJlc3Mgc3BhY2UuICovCisJCQllLT5uZXh0ID0gKmRpZmZwOworCQkJKmRpZmZwID0gZTsKKwkJfQorCQlhc3NlcnQoZS0+bnVtX2xpbmVzID09IGVudHJ5X2xlbik7CisJCWUgPSBuZXh0OworCQllbnRyeV9sZW4gPSAxOworCX0KKwlhc3NlcnQoIWUpOworfQorCisvKgogICogUHJvY2VzcyBvbmUgaHVuayBmcm9tIHRoZSBwYXRjaCBiZXR3ZWVuIHRoZSBjdXJyZW50IHN1c3BlY3QgZm9yCiAgKiBibGFtZV9lbnRyeSBlIGFuZCBpdHMgcGFyZW50LiAgVGhpcyBmaXJzdCBibGFtZXMgYW55IHVuZmluaXNoZWQKICAqIGVudHJpZXMgYmVmb3JlIHRoZSBjaHVuayAod2hpY2ggaXMgd2hlcmUgdGFyZ2V0IGFuZCBwYXJlbnQgc3RhcnQKQEAgLTg0MiwxMyArMTcxNSwyMCBAQAogICogLUMgb3B0aW9ucyBtYXkgbGVhZCB0byBvdmVybGFwcGluZy9kdXBsaWNhdGUgc291cmNlIGxpbmUgbnVtYmVyCiAgKiByYW5nZXMsIGFsbCB3ZSBjYW4gcmVseSBvbiBmcm9tIHNvcnRpbmcvbWVyZ2luZyBpcyB0aGUgb3JkZXIgb2YgdGhlCiAgKiBmaXJzdCBzdXNwZWN0IGxpbmUgbnVtYmVyLgorICoKKyAqIHRsbm86IGxpbmUgbnVtYmVyIGluIHRoZSB0YXJnZXQgd2hlcmUgdGhpcyBjaHVuayBiZWdpbnMKKyAqIHNhbWU6IGxpbmUgbnVtYmVyIGluIHRoZSB0YXJnZXQgd2hlcmUgdGhpcyBjaHVuayBlbmRzCisgKiBvZmZzZXQ6IGFkZCB0byB0bG5vIHRvIGdldCB0aGUgY2h1bmsgc3RhcnRpbmcgcG9pbnQgaW4gdGhlIHBhcmVudAorICogcGFyZW50X2xlbjogbnVtYmVyIG9mIGxpbmVzIGluIHRoZSBwYXJlbnQgY2h1bmsKICAqLwogc3RhdGljIHZvaWQgYmxhbWVfY2h1bmsoc3RydWN0IGJsYW1lX2VudHJ5ICoqKmRzdHEsIHN0cnVjdCBibGFtZV9lbnRyeSAqKipzcmNxLAotCQkJaW50IHRsbm8sIGludCBvZmZzZXQsIGludCBzYW1lLAotCQkJc3RydWN0IGJsYW1lX29yaWdpbiAqcGFyZW50KQorCQkJaW50IHRsbm8sIGludCBvZmZzZXQsIGludCBzYW1lLCBpbnQgcGFyZW50X2xlbiwKKwkJCXN0cnVjdCBibGFtZV9vcmlnaW4gKnBhcmVudCwKKwkJCXN0cnVjdCBibGFtZV9vcmlnaW4gKnRhcmdldCwgaW50IGlnbm9yZV9kaWZmcykKIHsKIAlzdHJ1Y3QgYmxhbWVfZW50cnkgKmUgPSAqKnNyY3E7Ci0Jc3RydWN0IGJsYW1lX2VudHJ5ICpzYW1lcCA9IE5VTEwsICpkaWZmcCA9IE5VTEw7CisJc3RydWN0IGJsYW1lX2VudHJ5ICpzYW1lcCA9IE5VTEwsICpkaWZmcCA9IE5VTEwsICppZ25vcmVkcCA9IE5VTEw7CisJc3RydWN0IGJsYW1lX2xpbmVfdHJhY2tlciAqbGluZV9ibGFtZXMgPSBOVUxMOwogCiAJd2hpbGUgKGUgJiYgZS0+c19sbm8gPCB0bG5vKSB7CiAJCXN0cnVjdCBibGFtZV9lbnRyeSAqbmV4dCA9IGUtPm5leHQ7CkBAIC04NTksMTQgKzE3MzksOSBAQAogCQkgKi8KIAkJaWYgKGUtPnNfbG5vICsgZS0+bnVtX2xpbmVzID4gdGxubykgewogCQkJLyogTW92ZSBzZWNvbmQgaGFsZiB0byBhIG5ldyByZWNvcmQgKi8KLQkJCWludCBsZW4gPSB0bG5vIC0gZS0+c19sbm87Ci0JCQlzdHJ1Y3QgYmxhbWVfZW50cnkgKm4gPSB4Y2FsbG9jKDEsIHNpemVvZiAoc3RydWN0IGJsYW1lX2VudHJ5KSk7Ci0JCQluLT5zdXNwZWN0ID0gZS0+c3VzcGVjdDsKLQkJCW4tPmxubyA9IGUtPmxubyArIGxlbjsKLQkJCW4tPnNfbG5vID0gZS0+c19sbm8gKyBsZW47Ci0JCQluLT5udW1fbGluZXMgPSBlLT5udW1fbGluZXMgLSBsZW47Ci0JCQllLT5udW1fbGluZXMgPSBsZW47Ci0JCQllLT5zY29yZSA9IDA7CisJCQlzdHJ1Y3QgYmxhbWVfZW50cnkgKm47CisKKwkJCW4gPSBzcGxpdF9ibGFtZV9hdChlLCB0bG5vIC0gZS0+c19sbm8sIGUtPnN1c3BlY3QpOwogCQkJLyogUHVzaCBuZXcgcmVjb3JkIHRvIGRpZmZwICovCiAJCQluLT5uZXh0ID0gZGlmZnA7CiAJCQlkaWZmcCA9IG47CkBAIC05MDIsNiArMTc3NywxNCBAQAogCSAqLwogCXNhbWVwID0gTlVMTDsKIAlkaWZmcCA9IE5VTEw7CisKKwlpZiAoaWdub3JlX2RpZmZzICYmIHNhbWUgLSB0bG5vID4gMCkgeworCQlsaW5lX2JsYW1lcyA9IHhjYWxsb2Moc2l6ZW9mKHN0cnVjdCBibGFtZV9saW5lX3RyYWNrZXIpLAorCQkJCSAgICAgIHNhbWUgLSB0bG5vKTsKKwkJZ3Vlc3NfbGluZV9ibGFtZXMocGFyZW50LCB0YXJnZXQsIHRsbm8sIG9mZnNldCwgc2FtZSwKKwkJCQkgIHBhcmVudF9sZW4sIGxpbmVfYmxhbWVzKTsKKwl9CisKIAl3aGlsZSAoZSAmJiBlLT5zX2xubyA8IHNhbWUpIHsKIAkJc3RydWN0IGJsYW1lX2VudHJ5ICpuZXh0ID0gZS0+bmV4dDsKIApAQCAtOTEzLDIyICsxNzk2LDM3IEBACiAJCQkgKiBNb3ZlIHNlY29uZCBoYWxmIHRvIGEgbmV3IHJlY29yZCB0byBiZQogCQkJICogcHJvY2Vzc2VkIGJ5IGxhdGVyIGNodW5rcwogCQkJICovCi0JCQlpbnQgbGVuID0gc2FtZSAtIGUtPnNfbG5vOwotCQkJc3RydWN0IGJsYW1lX2VudHJ5ICpuID0geGNhbGxvYygxLCBzaXplb2YgKHN0cnVjdCBibGFtZV9lbnRyeSkpOwotCQkJbi0+c3VzcGVjdCA9IGJsYW1lX29yaWdpbl9pbmNyZWYoZS0+c3VzcGVjdCk7Ci0JCQluLT5sbm8gPSBlLT5sbm8gKyBsZW47Ci0JCQluLT5zX2xubyA9IGUtPnNfbG5vICsgbGVuOwotCQkJbi0+bnVtX2xpbmVzID0gZS0+bnVtX2xpbmVzIC0gbGVuOwotCQkJZS0+bnVtX2xpbmVzID0gbGVuOwotCQkJZS0+c2NvcmUgPSAwOworCQkJc3RydWN0IGJsYW1lX2VudHJ5ICpuOworCisJCQluID0gc3BsaXRfYmxhbWVfYXQoZSwgc2FtZSAtIGUtPnNfbG5vLAorCQkJCQkgICBibGFtZV9vcmlnaW5faW5jcmVmKGUtPnN1c3BlY3QpKTsKIAkJCS8qIFB1c2ggbmV3IHJlY29yZCB0byBzYW1lcCAqLwogCQkJbi0+bmV4dCA9IHNhbWVwOwogCQkJc2FtZXAgPSBuOwogCQl9Ci0JCWUtPm5leHQgPSBkaWZmcDsKLQkJZGlmZnAgPSBlOworCQlpZiAoaWdub3JlX2RpZmZzKSB7CisJCQlpZ25vcmVfYmxhbWVfZW50cnkoZSwgcGFyZW50LCAmZGlmZnAsICZpZ25vcmVkcCwKKwkJCQkJICAgbGluZV9ibGFtZXMgKyBlLT5zX2xubyAtIHRsbm8pOworCQl9IGVsc2UgeworCQkJZS0+bmV4dCA9IGRpZmZwOworCQkJZGlmZnAgPSBlOworCQl9CiAJCWUgPSBuZXh0OwogCX0KKwlmcmVlKGxpbmVfYmxhbWVzKTsKKwlpZiAoaWdub3JlZHApIHsKKwkJLyoKKwkJICogTm90ZSBpZ25vcmVkcCBpcyBub3Qgc29ydGVkIHlldCwgYW5kIHRodXMgbmVpdGhlciBpcyBkc3RxLgorCQkgKiBUaGF0IGxpc3QgbXVzdCBiZSBzb3J0ZWQgYmVmb3JlIHdlIHF1ZXVlX2JsYW1lcygpLiAgV2UgZGVmZXIKKwkJICogc29ydGluZyB1bnRpbCBhZnRlciBhbGwgZGlmZiBodW5rcyBhcmUgcHJvY2Vzc2VkLCBzbyB0aGF0CisJCSAqIGd1ZXNzX2xpbmVfYmxhbWVzKCkgY2FuIHBpY2sgKmFueSogbGluZSBpbiB0aGUgcGFyZW50LiAgVGhlCisJCSAqIHNsaWdodCBkcmF3YmFjayBpcyB0aGF0IHdlIGVuZCB1cCBzb3J0aW5nIGFsbCBibGFtZSBlbnRyaWVzCisJCSAqIHBhc3NlZCB0byB0aGUgcGFyZW50LCBpbmNsdWRpbmcgdGhvc2UgdGhhdCBhcmUgdW5yZWxhdGVkIHRvCisJCSAqIGNoYW5nZXMgbWFkZSBieSB0aGUgaWdub3JlZCBjb21taXQuCisJCSAqLworCQkqKmRzdHEgPSByZXZlcnNlX2JsYW1lKGlnbm9yZWRwLCAqKmRzdHEpOworCQkqZHN0cSA9ICZpZ25vcmVkcC0+bmV4dDsKKwl9CiAJKipzcmNxID0gcmV2ZXJzZV9ibGFtZShkaWZmcCwgcmV2ZXJzZV9ibGFtZShzYW1lcCwgZSkpOwogCS8qIE1vdmUgYWNyb3NzIGVsZW1lbnRzIHRoYXQgYXJlIGluIHRoZSB1bmJsYW1hYmxlIHBvcnRpb24gKi8KIAlpZiAoZGlmZnApCkBAIC05MzcsNyArMTgzNSw5IEBACiAKIHN0cnVjdCBibGFtZV9jaHVua19jYl9kYXRhIHsKIAlzdHJ1Y3QgYmxhbWVfb3JpZ2luICpwYXJlbnQ7CisJc3RydWN0IGJsYW1lX29yaWdpbiAqdGFyZ2V0OwogCWxvbmcgb2Zmc2V0OworCWludCBpZ25vcmVfZGlmZnM7CiAJc3RydWN0IGJsYW1lX2VudHJ5ICoqZHN0cTsKIAlzdHJ1Y3QgYmxhbWVfZW50cnkgKipzcmNxOwogfTsKQEAgLTk1MCw3ICsxODUwLDggQEAKIAlpZiAoc3RhcnRfYSAtIHN0YXJ0X2IgIT0gZC0+b2Zmc2V0KQogCQlkaWUoImludGVybmFsIGVycm9yIGluIGJsYW1lOjpibGFtZV9jaHVua19jYiIpOwogCWJsYW1lX2NodW5rKCZkLT5kc3RxLCAmZC0+c3JjcSwgc3RhcnRfYiwgc3RhcnRfYSAtIHN0YXJ0X2IsCi0JCSAgICBzdGFydF9iICsgY291bnRfYiwgZC0+cGFyZW50KTsKKwkJICAgIHN0YXJ0X2IgKyBjb3VudF9iLCBjb3VudF9hLCBkLT5wYXJlbnQsIGQtPnRhcmdldCwKKwkJICAgIGQtPmlnbm9yZV9kaWZmcyk7CiAJZC0+b2Zmc2V0ID0gc3RhcnRfYSArIGNvdW50X2EgLSAoc3RhcnRfYiArIGNvdW50X2IpOwogCXJldHVybiAwOwogfQpAQCAtOTYyLDcgKzE4NjMsNyBAQAogICovCiBzdGF0aWMgdm9pZCBwYXNzX2JsYW1lX3RvX3BhcmVudChzdHJ1Y3QgYmxhbWVfc2NvcmVib2FyZCAqc2IsCiAJCQkJIHN0cnVjdCBibGFtZV9vcmlnaW4gKnRhcmdldCwKLQkJCQkgc3RydWN0IGJsYW1lX29yaWdpbiAqcGFyZW50KQorCQkJCSBzdHJ1Y3QgYmxhbWVfb3JpZ2luICpwYXJlbnQsIGludCBpZ25vcmVfZGlmZnMpCiB7CiAJbW1maWxlX3QgZmlsZV9wLCBmaWxlX287CiAJc3RydWN0IGJsYW1lX2NodW5rX2NiX2RhdGEgZDsKQEAgLTk3MiwxMSArMTg3MywxNSBAQAogCQlyZXR1cm47IC8qIG5vdGhpbmcgcmVtYWlucyBmb3IgdGhpcyB0YXJnZXQgKi8KIAogCWQucGFyZW50ID0gcGFyZW50OworCWQudGFyZ2V0ID0gdGFyZ2V0OwogCWQub2Zmc2V0ID0gMDsKKwlkLmlnbm9yZV9kaWZmcyA9IGlnbm9yZV9kaWZmczsKIAlkLmRzdHEgPSAmbmV3ZGVzdDsgZC5zcmNxID0gJnRhcmdldC0+c3VzcGVjdHM7CiAKLQlmaWxsX29yaWdpbl9ibG9iKCZzYi0+cmV2cy0+ZGlmZm9wdCwgcGFyZW50LCAmZmlsZV9wLCAmc2ItPm51bV9yZWFkX2Jsb2IpOwotCWZpbGxfb3JpZ2luX2Jsb2IoJnNiLT5yZXZzLT5kaWZmb3B0LCB0YXJnZXQsICZmaWxlX28sICZzYi0+bnVtX3JlYWRfYmxvYik7CisJZmlsbF9vcmlnaW5fYmxvYigmc2ItPnJldnMtPmRpZmZvcHQsIHBhcmVudCwgJmZpbGVfcCwKKwkJCSAmc2ItPm51bV9yZWFkX2Jsb2IsIGlnbm9yZV9kaWZmcyk7CisJZmlsbF9vcmlnaW5fYmxvYigmc2ItPnJldnMtPmRpZmZvcHQsIHRhcmdldCwgJmZpbGVfbywKKwkJCSAmc2ItPm51bV9yZWFkX2Jsb2IsIGlnbm9yZV9kaWZmcyk7CiAJc2ItPm51bV9nZXRfcGF0Y2grKzsKIAogCWlmIChkaWZmX2h1bmtzKCZmaWxlX3AsICZmaWxlX28sIGJsYW1lX2NodW5rX2NiLCAmZCwgc2ItPnhkbF9vcHRzKSkKQEAgLTk4NCw4ICsxODg5LDEzIEBACiAJCSAgICBvaWRfdG9faGV4KCZwYXJlbnQtPmNvbW1pdC0+b2JqZWN0Lm9pZCksCiAJCSAgICBvaWRfdG9faGV4KCZ0YXJnZXQtPmNvbW1pdC0+b2JqZWN0Lm9pZCkpOwogCS8qIFRoZSByZXN0IGFyZSB0aGUgc2FtZSBhcyB0aGUgcGFyZW50ICovCi0JYmxhbWVfY2h1bmsoJmQuZHN0cSwgJmQuc3JjcSwgSU5UX01BWCwgZC5vZmZzZXQsIElOVF9NQVgsIHBhcmVudCk7CisJYmxhbWVfY2h1bmsoJmQuZHN0cSwgJmQuc3JjcSwgSU5UX01BWCwgZC5vZmZzZXQsIElOVF9NQVgsIDAsCisJCSAgICBwYXJlbnQsIHRhcmdldCwgMCk7CiAJKmQuZHN0cSA9IE5VTEw7CisJaWYgKGlnbm9yZV9kaWZmcykKKwkJbmV3ZGVzdCA9IGxsaXN0X21lcmdlc29ydChuZXdkZXN0LCBnZXRfbmV4dF9ibGFtZSwKKwkJCQkJICBzZXRfbmV4dF9ibGFtZSwKKwkJCQkJICBjb21wYXJlX2JsYW1lX3N1c3BlY3QpOwogCXF1ZXVlX2JsYW1lcyhzYiwgcGFyZW50LCBuZXdkZXN0KTsKIAogCXJldHVybjsKQEAgLTExODIsNyArMjA5Miw4IEBACiAJaWYgKCF1bmJsYW1lZCkKIAkJcmV0dXJuOyAvKiBub3RoaW5nIHJlbWFpbnMgZm9yIHRoaXMgdGFyZ2V0ICovCiAKLQlmaWxsX29yaWdpbl9ibG9iKCZzYi0+cmV2cy0+ZGlmZm9wdCwgcGFyZW50LCAmZmlsZV9wLCAmc2ItPm51bV9yZWFkX2Jsb2IpOworCWZpbGxfb3JpZ2luX2Jsb2IoJnNiLT5yZXZzLT5kaWZmb3B0LCBwYXJlbnQsICZmaWxlX3AsCisJCQkgJnNiLT5udW1fcmVhZF9ibG9iLCAwKTsKIAlpZiAoIWZpbGVfcC5wdHIpCiAJCXJldHVybjsKIApAQCAtMTMxMSw3ICsyMjIyLDggQEAKIAkJCW5vcmlnaW4gPSBnZXRfb3JpZ2luKHBhcmVudCwgcC0+b25lLT5wYXRoKTsKIAkJCW9pZGNweSgmbm9yaWdpbi0+YmxvYl9vaWQsICZwLT5vbmUtPm9pZCk7CiAJCQlub3JpZ2luLT5tb2RlID0gcC0+b25lLT5tb2RlOwotCQkJZmlsbF9vcmlnaW5fYmxvYigmc2ItPnJldnMtPmRpZmZvcHQsIG5vcmlnaW4sICZmaWxlX3AsICZzYi0+bnVtX3JlYWRfYmxvYik7CisJCQlmaWxsX29yaWdpbl9ibG9iKCZzYi0+cmV2cy0+ZGlmZm9wdCwgbm9yaWdpbiwgJmZpbGVfcCwKKwkJCQkJICZzYi0+bnVtX3JlYWRfYmxvYiwgMCk7CiAJCQlpZiAoIWZpbGVfcC5wdHIpCiAJCQkJY29udGludWU7CiAKQEAgLTE0ODksMTIgKzI0MDEsMzUgQEAKIAkJCWJsYW1lX29yaWdpbl9pbmNyZWYocG9yaWdpbik7CiAJCQlvcmlnaW4tPnByZXZpb3VzID0gcG9yaWdpbjsKIAkJfQotCQlwYXNzX2JsYW1lX3RvX3BhcmVudChzYiwgb3JpZ2luLCBwb3JpZ2luKTsKKwkJcGFzc19ibGFtZV90b19wYXJlbnQoc2IsIG9yaWdpbiwgcG9yaWdpbiwgMCk7CiAJCWlmICghb3JpZ2luLT5zdXNwZWN0cykKIAkJCWdvdG8gZmluaXNoOwogCX0KIAogCS8qCisJICogUGFzcyByZW1haW5pbmcgc3VzcGVjdHMgZm9yIGlnbm9yZWQgY29tbWl0cyB0byB0aGVpciBwYXJlbnRzLgorCSAqLworCWlmIChvaWRzZXRfY29udGFpbnMoJnNiLT5pZ25vcmVfbGlzdCwgJmNvbW1pdC0+b2JqZWN0Lm9pZCkpIHsKKwkJZm9yIChpID0gMCwgc2cgPSBmaXJzdF9zY2FwZWdvYXQocmV2cywgY29tbWl0LCBzYi0+cmV2ZXJzZSk7CisJCSAgICAgaSA8IG51bV9zZyAmJiBzZzsKKwkJICAgICBzZyA9IHNnLT5uZXh0LCBpKyspIHsKKwkJCXN0cnVjdCBibGFtZV9vcmlnaW4gKnBvcmlnaW4gPSBzZ19vcmlnaW5baV07CisKKwkJCWlmICghcG9yaWdpbikKKwkJCQljb250aW51ZTsKKwkJCXBhc3NfYmxhbWVfdG9fcGFyZW50KHNiLCBvcmlnaW4sIHBvcmlnaW4sIDEpOworCQkJLyoKKwkJCSAqIFByZWVtcHRpdmVseSBkcm9wIHBvcmlnaW4gc28gd2UgY2FuIHJlZnJlc2ggdGhlCisJCQkgKiBmaW5nZXJwcmludHMgaWYgd2UgdXNlIHRoZSBwYXJlbnQgYWdhaW4sIHdoaWNoIGNhbgorCQkJICogb2NjdXIgaWYgeW91IGlnbm9yZSBiYWNrLXRvLWJhY2sgY29tbWl0cy4KKwkJCSAqLworCQkJZHJvcF9vcmlnaW5fYmxvYihwb3JpZ2luKTsKKwkJCWlmICghb3JpZ2luLT5zdXNwZWN0cykKKwkJCQlnb3RvIGZpbmlzaDsKKwkJfQorCX0KKworCS8qCiAJICogT3B0aW9uYWxseSBmaW5kIG1vdmVzIGluIHBhcmVudHMnIGZpbGVzLgogCSAqLwogCWlmIChvcHQgJiBQSUNLQVhFX0JMQU1FX01PVkUpIHsKQEAgLTE1NTYsNyArMjQ5MSw4IEBACiAJfQogCWZvciAoaSA9IDA7IGkgPCBudW1fc2c7IGkrKykgewogCQlpZiAoc2dfb3JpZ2luW2ldKSB7Ci0JCQlkcm9wX29yaWdpbl9ibG9iKHNnX29yaWdpbltpXSk7CisJCQlpZiAoIXNnX29yaWdpbltpXS0+c3VzcGVjdHMpCisJCQkJZHJvcF9vcmlnaW5fYmxvYihzZ19vcmlnaW5baV0pOwogCQkJYmxhbWVfb3JpZ2luX2RlY3JlZihzZ19vcmlnaW5baV0pOwogCQl9CiAJfQpAQCAtMTYzMywzNyArMjU2OSwxNCBAQAogCX0KIH0KIAotc3RhdGljIGNvbnN0IGNoYXIgKmdldF9uZXh0X2xpbmUoY29uc3QgY2hhciAqc3RhcnQsIGNvbnN0IGNoYXIgKmVuZCkKLXsKLQljb25zdCBjaGFyICpubCA9IG1lbWNocihzdGFydCwgJ1xuJywgZW5kIC0gc3RhcnQpOwotCXJldHVybiBubCA/IG5sICsgMSA6IGVuZDsKLX0KLQogLyoKICAqIFRvIGFsbG93IHF1aWNrIGFjY2VzcyB0byB0aGUgY29udGVudHMgb2YgbnRoIGxpbmUgaW4gdGhlCiAgKiBmaW5hbCBpbWFnZSwgcHJlcGFyZSBhbiBpbmRleCBpbiB0aGUgc2NvcmVib2FyZC4KICAqLwogc3RhdGljIGludCBwcmVwYXJlX2xpbmVzKHN0cnVjdCBibGFtZV9zY29yZWJvYXJkICpzYikKIHsKLQljb25zdCBjaGFyICpidWYgPSBzYi0+ZmluYWxfYnVmOwotCXVuc2lnbmVkIGxvbmcgbGVuID0gc2ItPmZpbmFsX2J1Zl9zaXplOwotCWNvbnN0IGNoYXIgKmVuZCA9IGJ1ZiArIGxlbjsKLQljb25zdCBjaGFyICpwOwotCWludCAqbGluZW5vOwotCWludCBudW0gPSAwOwotCi0JZm9yIChwID0gYnVmOyBwIDwgZW5kOyBwID0gZ2V0X25leHRfbGluZShwLCBlbmQpKQotCQludW0rKzsKLQotCUFMTE9DX0FSUkFZKHNiLT5saW5lbm8sIG51bSArIDEpOwotCWxpbmVubyA9IHNiLT5saW5lbm87Ci0KLQlmb3IgKHAgPSBidWY7IHAgPCBlbmQ7IHAgPSBnZXRfbmV4dF9saW5lKHAsIGVuZCkpCi0JCSpsaW5lbm8rKyA9IHAgLSBidWY7Ci0KLQkqbGluZW5vID0gbGVuOwotCi0Jc2ItPm51bV9saW5lcyA9IG51bTsKKwlzYi0+bnVtX2xpbmVzID0gZmluZF9saW5lX3N0YXJ0cygmc2ItPmxpbmVubywgc2ItPmZpbmFsX2J1ZiwKKwkJCQkJIHNiLT5maW5hbF9idWZfc2l6ZSk7CiAJcmV0dXJuIHNiLT5udW1fbGluZXM7CiB9CiAKQEAgLTE2NzgsNyArMjU5MSw3IEBACiAJCXN0cnVjdCBvYmplY3QgKm9iaiA9IHJldnMtPnBlbmRpbmcub2JqZWN0c1tpXS5pdGVtOwogCQlpZiAob2JqLT5mbGFncyAmIFVOSU5URVJFU1RJTkcpCiAJCQljb250aW51ZTsKLQkJb2JqID0gZGVyZWZfdGFnKHRoZV9yZXBvc2l0b3J5LCBvYmosIE5VTEwsIDApOworCQlvYmogPSBkZXJlZl90YWcocmV2cy0+cmVwbywgb2JqLCBOVUxMLCAwKTsKIAkJaWYgKG9iai0+dHlwZSAhPSBPQkpfQ09NTUlUKQogCQkJZGllKCJOb24gY29tbWl0ICVzPyIsIHJldnMtPnBlbmRpbmcub2JqZWN0c1tpXS5uYW1lKTsKIAkJaWYgKGZvdW5kKQpAQCAtMTcwOSwxNCArMjYyMiwxNCBAQAogCiAJLyogSXMgdGhhdCBzb2xlIHJldiBhIGNvbW1pdHRpc2g/ICovCiAJb2JqID0gcmV2cy0+cGVuZGluZy5vYmplY3RzWzBdLml0ZW07Ci0Jb2JqID0gZGVyZWZfdGFnKHRoZV9yZXBvc2l0b3J5LCBvYmosIE5VTEwsIDApOworCW9iaiA9IGRlcmVmX3RhZyhyZXZzLT5yZXBvLCBvYmosIE5VTEwsIDApOwogCWlmIChvYmotPnR5cGUgIT0gT0JKX0NPTU1JVCkKIAkJcmV0dXJuIE5VTEw7CiAKIAkvKiBEbyB3ZSBoYXZlIEhFQUQ/ICovCiAJaWYgKCFyZXNvbHZlX3JlZl91bnNhZmUoIkhFQUQiLCBSRVNPTFZFX1JFRl9SRUFESU5HLCAmaGVhZF9vaWQsIE5VTEwpKQogCQlyZXR1cm4gTlVMTDsKLQloZWFkX2NvbW1pdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlX2dlbnRseSh0aGVfcmVwb3NpdG9yeSwKKwloZWFkX2NvbW1pdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlX2dlbnRseShyZXZzLT5yZXBvLAogCQkJCQkJICAgICAmaGVhZF9vaWQsIDEpOwogCWlmICghaGVhZF9jb21taXQpCiAJCXJldHVybiBOVUxMOwpAQCAtMTc0NSw3ICsyNjU4LDcgQEAKIAkJc3RydWN0IG9iamVjdCAqb2JqID0gcmV2cy0+cGVuZGluZy5vYmplY3RzW2ldLml0ZW07CiAJCWlmICghKG9iai0+ZmxhZ3MgJiBVTklOVEVSRVNUSU5HKSkKIAkJCWNvbnRpbnVlOwotCQlvYmogPSBkZXJlZl90YWcodGhlX3JlcG9zaXRvcnksIG9iaiwgTlVMTCwgMCk7CisJCW9iaiA9IGRlcmVmX3RhZyhyZXZzLT5yZXBvLCBvYmosIE5VTEwsIDApOwogCQlpZiAob2JqLT50eXBlICE9IE9CSl9DT01NSVQpCiAJCQlkaWUoIk5vbiBjb21taXQgJXM/IiwgcmV2cy0+cGVuZGluZy5vYmplY3RzW2ldLm5hbWUpOwogCQlpZiAoZm91bmQpCmRpZmYgLS1naXQgYS9ibGFtZS5oIGIvYmxhbWUuaAppbmRleCBiZTNhODk1Li4wODliMTgxIDEwMDY0NAotLS0gYS9ibGFtZS5oCisrKyBiL2JsYW1lLmgKQEAgLTE2LDYgKzE2LDggQEAKICNkZWZpbmUgQkxBTUVfREVGQVVMVF9NT1ZFX1NDT1JFCTIwCiAjZGVmaW5lIEJMQU1FX0RFRkFVTFRfQ09QWV9TQ09SRQk0MAogCitzdHJ1Y3QgZmluZ2VycHJpbnQ7CisKIC8qCiAgKiBPbmUgYmxvYiBpbiBhIGNvbW1pdCB0aGF0IGlzIGJlaW5nIHN1c3BlY3RlZAogICovCkBAIC01MSw4ICs1MywxMCBAQAogCSAqLwogCXN0cnVjdCBibGFtZV9lbnRyeSAqc3VzcGVjdHM7CiAJbW1maWxlX3QgZmlsZTsKKwlpbnQgbnVtX2xpbmVzOworCXN0cnVjdCBmaW5nZXJwcmludCAqZmluZ2VycHJpbnRzOwogCXN0cnVjdCBvYmplY3RfaWQgYmxvYl9vaWQ7Ci0JdW5zaWduZWQgbW9kZTsKKwl1bnNpZ25lZCBzaG9ydCBtb2RlOwogCS8qIGd1aWx0eSBnZXRzIHNldCB3aGVuIHNoaXBwaW5nIGFueSBzdXNwZWN0cyB0byB0aGUgZmluYWwKIAkgKiBibGFtZSBsaXN0IGluc3RlYWQgb2Ygb3RoZXIgY29tbWl0cwogCSAqLwpAQCAtOTIsNiArOTYsOCBAQAogCSAqIHNjYW5uaW5nIHRoZSBsaW5lcyBvdmVyIGFuZCBvdmVyLgogCSAqLwogCXVuc2lnbmVkIHNjb3JlOworCWludCBpZ25vcmVkOworCWludCB1bmJsYW1hYmxlOwogfTsKIAogLyoKQEAgLTExNyw2ICsxMjMsOCBAQAogCS8qIGxpbmtlZCBsaXN0IG9mIGJsYW1lcyAqLwogCXN0cnVjdCBibGFtZV9lbnRyeSAqZW50OwogCisJc3RydWN0IG9pZHNldCBpZ25vcmVfbGlzdDsKKwogCS8qIGxvb2stdXAgYSBsaW5lIGluIHRoZSBmaW5hbCBidWZmZXIgKi8KIAlpbnQgbnVtX2xpbmVzOwogCWludCAqbGluZW5vOwpAQCAtMTc3LDYgKzE4NSw2IEBACiAJCQkJCWxvbmcgc3RhcnQsIGxvbmcgZW5kLAogCQkJCQlzdHJ1Y3QgYmxhbWVfb3JpZ2luICpvKTsKIAotZXh0ZXJuIHN0cnVjdCBibGFtZV9vcmlnaW4gKmdldF9ibGFtZV9zdXNwZWN0cyhzdHJ1Y3QgY29tbWl0ICpjb21taXQpOworc3RydWN0IGJsYW1lX29yaWdpbiAqZ2V0X2JsYW1lX3N1c3BlY3RzKHN0cnVjdCBjb21taXQgKmNvbW1pdCk7CiAKICNlbmRpZiAvKiBCTEFNRV9IICovCmRpZmYgLS1naXQgYS9ibG9iLmMgYi9ibG9iLmMKaW5kZXggMzQyYmRiYi4uMzZmOWFiZCAxMDA2NDQKLS0tIGEvYmxvYi5jCisrKyBiL2Jsb2IuYwpAQCAtNywxMCArNyw5IEBACiAKIHN0cnVjdCBibG9iICpsb29rdXBfYmxvYihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewotCXN0cnVjdCBvYmplY3QgKm9iaiA9IGxvb2t1cF9vYmplY3Qociwgb2lkLT5oYXNoKTsKKwlzdHJ1Y3Qgb2JqZWN0ICpvYmogPSBsb29rdXBfb2JqZWN0KHIsIG9pZCk7CiAJaWYgKCFvYmopCi0JCXJldHVybiBjcmVhdGVfb2JqZWN0KHIsIG9pZC0+aGFzaCwKLQkJCQkgICAgIGFsbG9jX2Jsb2Jfbm9kZShyKSk7CisJCXJldHVybiBjcmVhdGVfb2JqZWN0KHIsIG9pZCwgYWxsb2NfYmxvYl9ub2RlKHIpKTsKIAlyZXR1cm4gb2JqZWN0X2FzX3R5cGUociwgb2JqLCBPQkpfQkxPQiwgMCk7CiB9CiAKZGlmZiAtLWdpdCBhL2JyYW5jaC5jIGIvYnJhbmNoLmMKaW5kZXggNzc2ZjU1Zi4uNTc5NDk0NyAxMDA2NDQKLS0tIGEvYnJhbmNoLmMKKysrIGIvYnJhbmNoLmMKQEAgLTUsNiArNSw3IEBACiAjaW5jbHVkZSAicmVmcy5oIgogI2luY2x1ZGUgInJlZnNwZWMuaCIKICNpbmNsdWRlICJyZW1vdGUuaCIKKyNpbmNsdWRlICJzZXF1ZW5jZXIuaCIKICNpbmNsdWRlICJjb21taXQuaCIKICNpbmNsdWRlICJ3b3JrdHJlZS5oIgogCkBAIC0yNDIsNyArMjQzLDggQEAKICJ3aWxsIHRyYWNrIGl0cyByZW1vdGUgY291bnRlcnBhcnQsIHlvdSBtYXkgd2FudCB0byB1c2VcbiIKICJcImdpdCBwdXNoIC11XCIgdG8gc2V0IHRoZSB1cHN0cmVhbSBjb25maWcgYXMgeW91IHB1c2guIik7CiAKLXZvaWQgY3JlYXRlX2JyYW5jaChjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICpzdGFydF9uYW1lLAordm9pZCBjcmVhdGVfYnJhbmNoKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkgICBjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICpzdGFydF9uYW1lLAogCQkgICBpbnQgZm9yY2UsIGludCBjbG9iYmVyX2hlYWRfb2ssIGludCByZWZsb2csCiAJCSAgIGludCBxdWlldCwgZW51bSBicmFuY2hfdHJhY2sgdHJhY2spCiB7CkBAIC0yNjcsNyArMjY5LDcgQEAKIAl9CiAKIAlyZWFsX3JlZiA9IE5VTEw7Ci0JaWYgKGdldF9vaWQoc3RhcnRfbmFtZSwgJm9pZCkpIHsKKwlpZiAoZ2V0X29pZF9tYihzdGFydF9uYW1lLCAmb2lkKSkgewogCQlpZiAoZXhwbGljaXRfdHJhY2tpbmcpIHsKIAkJCWlmIChhZHZpY2Vfc2V0X3Vwc3RyZWFtX2ZhaWx1cmUpIHsKIAkJCQllcnJvcihfKHVwc3RyZWFtX21pc3NpbmcpLCBzdGFydF9uYW1lKTsKQEAgLTMwMCw3ICszMDIsNyBAQAogCQlicmVhazsKIAl9CiAKLQlpZiAoKGNvbW1pdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHRoZV9yZXBvc2l0b3J5LCAmb2lkKSkgPT0gTlVMTCkKKwlpZiAoKGNvbW1pdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHIsICZvaWQpKSA9PSBOVUxMKQogCQlkaWUoXygiTm90IGEgdmFsaWQgYnJhbmNoIHBvaW50OiAnJXMnLiIpLCBzdGFydF9uYW1lKTsKIAlvaWRjcHkoJm9pZCwgJmNvbW1pdC0+b2JqZWN0Lm9pZCk7CiAKQEAgLTMzNiwxNSArMzM4LDE5IEBACiAJZnJlZShyZWFsX3JlZik7CiB9CiAKLXZvaWQgcmVtb3ZlX2JyYW5jaF9zdGF0ZSh2b2lkKQordm9pZCByZW1vdmVfbWVyZ2VfYnJhbmNoX3N0YXRlKHN0cnVjdCByZXBvc2l0b3J5ICpyKQogewotCXVubGluayhnaXRfcGF0aF9jaGVycnlfcGlja19oZWFkKHRoZV9yZXBvc2l0b3J5KSk7Ci0JdW5saW5rKGdpdF9wYXRoX3JldmVydF9oZWFkKHRoZV9yZXBvc2l0b3J5KSk7Ci0JdW5saW5rKGdpdF9wYXRoX21lcmdlX2hlYWQodGhlX3JlcG9zaXRvcnkpKTsKLQl1bmxpbmsoZ2l0X3BhdGhfbWVyZ2VfcnIodGhlX3JlcG9zaXRvcnkpKTsKLQl1bmxpbmsoZ2l0X3BhdGhfbWVyZ2VfbXNnKHRoZV9yZXBvc2l0b3J5KSk7Ci0JdW5saW5rKGdpdF9wYXRoX21lcmdlX21vZGUodGhlX3JlcG9zaXRvcnkpKTsKLQl1bmxpbmsoZ2l0X3BhdGhfc3F1YXNoX21zZyh0aGVfcmVwb3NpdG9yeSkpOworCXVubGluayhnaXRfcGF0aF9tZXJnZV9oZWFkKHIpKTsKKwl1bmxpbmsoZ2l0X3BhdGhfbWVyZ2VfcnIocikpOworCXVubGluayhnaXRfcGF0aF9tZXJnZV9tc2cocikpOworCXVubGluayhnaXRfcGF0aF9tZXJnZV9tb2RlKHIpKTsKK30KKwordm9pZCByZW1vdmVfYnJhbmNoX3N0YXRlKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBpbnQgdmVyYm9zZSkKK3sKKwlzZXF1ZW5jZXJfcG9zdF9jb21taXRfY2xlYW51cChyLCB2ZXJib3NlKTsKKwl1bmxpbmsoZ2l0X3BhdGhfc3F1YXNoX21zZyhyKSk7CisJcmVtb3ZlX21lcmdlX2JyYW5jaF9zdGF0ZShyKTsKIH0KIAogdm9pZCBkaWVfaWZfY2hlY2tlZF9vdXQoY29uc3QgY2hhciAqYnJhbmNoLCBpbnQgaWdub3JlX2N1cnJlbnRfd29ya3RyZWUpCmRpZmYgLS1naXQgYS9icmFuY2guaCBiL2JyYW5jaC5oCmluZGV4IDVjYWNlNDUuLmRmMGJlNjEgMTAwNjQ0Ci0tLSBhL2JyYW5jaC5oCisrKyBiL2JyYW5jaC5oCkBAIC0xLDYgKzEsNyBAQAogI2lmbmRlZiBCUkFOQ0hfSAogI2RlZmluZSBCUkFOQ0hfSAogCitzdHJ1Y3QgcmVwb3NpdG9yeTsKIHN0cnVjdCBzdHJidWY7CiAKIGVudW0gYnJhbmNoX3RyYWNrIHsKQEAgLTE5LDYgKzIwLDggQEAKIC8qCiAgKiBDcmVhdGVzIGEgbmV3IGJyYW5jaCwgd2hlcmU6CiAgKgorICogICAtIHIgaXMgdGhlIHJlcG9zaXRvcnkgdG8gYWRkIGEgYnJhbmNoIHRvCisgKgogICogICAtIG5hbWUgaXMgdGhlIG5ldyBicmFuY2ggbmFtZQogICoKICAqICAgLSBzdGFydF9uYW1lIGlzIHRoZSBuYW1lIG9mIHRoZSBleGlzdGluZyBicmFuY2ggdGhhdCB0aGUgbmV3IGJyYW5jaCBzaG91bGQKQEAgLTM3LDcgKzQwLDggQEAKICAqICAgICB0aGF0IHN0YXJ0X25hbWUgaXMgYSB0cmFja2luZyBicmFuY2ggZm9yIChpZiBhbnkpLgogICoKICAqLwotdm9pZCBjcmVhdGVfYnJhbmNoKGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKnN0YXJ0X25hbWUsCit2b2lkIGNyZWF0ZV9icmFuY2goc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCSAgIGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKnN0YXJ0X25hbWUsCiAJCSAgIGludCBmb3JjZSwgaW50IGNsb2JiZXJfaGVhZF9vaywKIAkJICAgaW50IHJlZmxvZywgaW50IHF1aWV0LCBlbnVtIGJyYW5jaF90cmFjayB0cmFjayk7CiAKQEAgLTQ2LDcgKzUwLDcgQEAKICAqIFJldHVybiAxIGlmIHRoZSBuYW1lZCBicmFuY2ggYWxyZWFkeSBleGlzdHM7IHJldHVybiAwIG90aGVyd2lzZS4KICAqIEZpbGwgcmVmIHdpdGggdGhlIGZ1bGwgcmVmbmFtZSBmb3IgdGhlIGJyYW5jaC4KICAqLwotZXh0ZXJuIGludCB2YWxpZGF0ZV9icmFuY2huYW1lKGNvbnN0IGNoYXIgKm5hbWUsIHN0cnVjdCBzdHJidWYgKnJlZik7CitpbnQgdmFsaWRhdGVfYnJhbmNobmFtZShjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qgc3RyYnVmICpyZWYpOwogCiAvKgogICogQ2hlY2sgaWYgYSBicmFuY2ggJ25hbWUnIGNhbiBiZSBjcmVhdGVkIGFzIGEgbmV3IGJyYW5jaDsgZGllIG90aGVyd2lzZS4KQEAgLTU0LDEzICs1OCwxOSBAQAogICogUmV0dXJuIDEgaWYgdGhlIG5hbWVkIGJyYW5jaCBhbHJlYWR5IGV4aXN0czsgcmV0dXJuIDAgb3RoZXJ3aXNlLgogICogRmlsbCByZWYgd2l0aCB0aGUgZnVsbCByZWZuYW1lIGZvciB0aGUgYnJhbmNoLgogICovCi1leHRlcm4gaW50IHZhbGlkYXRlX25ld19icmFuY2huYW1lKGNvbnN0IGNoYXIgKm5hbWUsIHN0cnVjdCBzdHJidWYgKnJlZiwgaW50IGZvcmNlKTsKK2ludCB2YWxpZGF0ZV9uZXdfYnJhbmNobmFtZShjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qgc3RyYnVmICpyZWYsIGludCBmb3JjZSk7CisKKy8qCisgKiBSZW1vdmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIG1lcmdlIHN0YXRlIG9uIHRoZSBjdXJyZW50CisgKiBicmFuY2guIChFLmcuLCBNRVJHRV9IRUFEKQorICovCit2b2lkIHJlbW92ZV9tZXJnZV9icmFuY2hfc3RhdGUoc3RydWN0IHJlcG9zaXRvcnkgKnIpOwogCiAvKgogICogUmVtb3ZlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzdGF0ZSBvZiB3b3JraW5nIG9uIHRoZSBjdXJyZW50CiAgKiBicmFuY2guIChFLmcuLCBNRVJHRV9IRUFEKQogICovCi12b2lkIHJlbW92ZV9icmFuY2hfc3RhdGUodm9pZCk7Cit2b2lkIHJlbW92ZV9icmFuY2hfc3RhdGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGludCB2ZXJib3NlKTsKIAogLyoKICAqIENvbmZpZ3VyZSBsb2NhbCBicmFuY2ggImxvY2FsIiBhcyBkb3duc3RyZWFtIHRvIGJyYW5jaCAicmVtb3RlIgpAQCAtNjgsMjYgKzc4LDI2IEBACiAgKiBSZXR1cm5zIDAgb24gc3VjY2Vzcy4KICAqLwogI2RlZmluZSBCUkFOQ0hfQ09ORklHX1ZFUkJPU0UgMDEKLWV4dGVybiBpbnQgaW5zdGFsbF9icmFuY2hfY29uZmlnKGludCBmbGFnLCBjb25zdCBjaGFyICpsb2NhbCwgY29uc3QgY2hhciAqb3JpZ2luLCBjb25zdCBjaGFyICpyZW1vdGUpOworaW50IGluc3RhbGxfYnJhbmNoX2NvbmZpZyhpbnQgZmxhZywgY29uc3QgY2hhciAqbG9jYWwsIGNvbnN0IGNoYXIgKm9yaWdpbiwgY29uc3QgY2hhciAqcmVtb3RlKTsKIAogLyoKICAqIFJlYWQgYnJhbmNoIGRlc2NyaXB0aW9uCiAgKi8KLWV4dGVybiBpbnQgcmVhZF9icmFuY2hfZGVzYyhzdHJ1Y3Qgc3RyYnVmICosIGNvbnN0IGNoYXIgKmJyYW5jaF9uYW1lKTsKK2ludCByZWFkX2JyYW5jaF9kZXNjKHN0cnVjdCBzdHJidWYgKiwgY29uc3QgY2hhciAqYnJhbmNoX25hbWUpOwogCiAvKgogICogQ2hlY2sgaWYgYSBicmFuY2ggaXMgY2hlY2tlZCBvdXQgaW4gdGhlIG1haW4gd29ya3RyZWUgb3IgYW55IGxpbmtlZAogICogd29ya3RyZWUgYW5kIGRpZSAod2l0aCBhIG1lc3NhZ2UgZGVzY3JpYmluZyBpdHMgY2hlY2tvdXQgbG9jYXRpb24pIGlmCiAgKiBpdCBpcy4KICAqLwotZXh0ZXJuIHZvaWQgZGllX2lmX2NoZWNrZWRfb3V0KGNvbnN0IGNoYXIgKmJyYW5jaCwgaW50IGlnbm9yZV9jdXJyZW50X3dvcmt0cmVlKTsKK3ZvaWQgZGllX2lmX2NoZWNrZWRfb3V0KGNvbnN0IGNoYXIgKmJyYW5jaCwgaW50IGlnbm9yZV9jdXJyZW50X3dvcmt0cmVlKTsKIAogLyoKICAqIFVwZGF0ZSBhbGwgcGVyLXdvcmt0cmVlIEhFQURzIHBvaW50aW5nIGF0IHRoZSBvbGQgcmVmIHRvIHBvaW50IHRoZSBuZXcgcmVmLgogICogVGhpcyB3aWxsIGJlIHVzZWQgd2hlbiByZW5hbWluZyBhIGJyYW5jaC4gUmV0dXJucyAwIGlmIHN1Y2Nlc3NmdWwsIG5vbi16ZXJvCiAgKiBvdGhlcndpc2UuCiAgKi8KLWV4dGVybiBpbnQgcmVwbGFjZV9lYWNoX3dvcmt0cmVlX2hlYWRfc3ltcmVmKGNvbnN0IGNoYXIgKm9sZHJlZiwgY29uc3QgY2hhciAqbmV3cmVmLAotCQkJCQkgICAgIGNvbnN0IGNoYXIgKmxvZ21zZyk7CitpbnQgcmVwbGFjZV9lYWNoX3dvcmt0cmVlX2hlYWRfc3ltcmVmKGNvbnN0IGNoYXIgKm9sZHJlZiwgY29uc3QgY2hhciAqbmV3cmVmLAorCQkJCSAgICAgIGNvbnN0IGNoYXIgKmxvZ21zZyk7CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvYnVpbHRpbi5oIGIvYnVpbHRpbi5oCmluZGV4IDY1Mzg5MzIuLjJiMjVhODAgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4uaAorKysgYi9idWlsdGluLmgKQEAgLTEwMiw3ICsxMDIsNyBAQAogI2RlZmluZSBQUlVORV9QQUNLRURfRFJZX1JVTiAwMQogI2RlZmluZSBQUlVORV9QQUNLRURfVkVSQk9TRSAwMgogCi1leHRlcm4gdm9pZCBwcnVuZV9wYWNrZWRfb2JqZWN0cyhpbnQpOwordm9pZCBwcnVuZV9wYWNrZWRfb2JqZWN0cyhpbnQpOwogCiBzdHJ1Y3QgZm10X21lcmdlX21zZ19vcHRzIHsKIAl1bnNpZ25lZCBhZGRfdGl0bGU6MSwKQEAgLTExMCw4ICsxMTAsOCBAQAogCWludCBzaG9ydGxvZ19sZW47CiB9OwogCi1leHRlcm4gaW50IGZtdF9tZXJnZV9tc2coc3RydWN0IHN0cmJ1ZiAqaW4sIHN0cnVjdCBzdHJidWYgKm91dCwKLQkJCSBzdHJ1Y3QgZm10X21lcmdlX21zZ19vcHRzICopOworaW50IGZtdF9tZXJnZV9tc2coc3RydWN0IHN0cmJ1ZiAqaW4sIHN0cnVjdCBzdHJidWYgKm91dCwKKwkJICBzdHJ1Y3QgZm10X21lcmdlX21zZ19vcHRzICopOwogCiAvKioKICAqIElmIGEgYnVpbHQtaW4gaGFzIERFTEFZX1BBR0VSX0NPTkZJRyBzZXQsIHRoZSBidWlsdC1pbiBzaG91bGQgY2FsbCB0aGlzIGVhcmx5CkBAIC0xMjMsMTMxICsxMjMsMTM1IEBACiAgKiBZb3Ugc2hvdWxkIG1vc3QgbGlrZWx5IHVzZSBhIGRlZmF1bHQgb2YgMCBvciAxLiAiUHVudCIgKC0xKSBjb3VsZCBiZSB1c2VmdWwKICAqIHRvIGJlIGFibGUgdG8gZmFsbCBiYWNrIHRvIHNvbWUgaGlzdG9yaWNhbCBjb21wYXRpYmlsaXR5IG5hbWUuCiAgKi8KLWV4dGVybiB2b2lkIHNldHVwX2F1dG9fcGFnZXIoY29uc3QgY2hhciAqY21kLCBpbnQgZGVmKTsKK3ZvaWQgc2V0dXBfYXV0b19wYWdlcihjb25zdCBjaGFyICpjbWQsIGludCBkZWYpOwogCi1leHRlcm4gaW50IGlzX2J1aWx0aW4oY29uc3QgY2hhciAqcyk7CitpbnQgaXNfYnVpbHRpbihjb25zdCBjaGFyICpzKTsKIAotZXh0ZXJuIGludCBjbWRfYWRkKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2FtKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2Fubm90YXRlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2FwcGx5KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2FyY2hpdmUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfYmlzZWN0X19oZWxwZXIoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfYmxhbWUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfYnJhbmNoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2J1bmRsZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9jYXRfZmlsZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9jaGVja291dChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9jaGVja291dF9pbmRleChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9jaGVja19hdHRyKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2NoZWNrX2lnbm9yZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9jaGVja19tYWlsbWFwKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2NoZWNrX3JlZl9mb3JtYXQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfY2hlcnJ5KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2NoZXJyeV9waWNrKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2Nsb25lKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2NsZWFuKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2NvbHVtbihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9jb21taXQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfY29tbWl0X2dyYXBoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2NvbW1pdF90cmVlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2NvbmZpZyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9jb3VudF9vYmplY3RzKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2NyZWRlbnRpYWwoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfZGVzY3JpYmUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfZGlmZl9maWxlcyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9kaWZmX2luZGV4KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2RpZmYoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfZGlmZl90cmVlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2RpZmZ0b29sKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2Zhc3RfZXhwb3J0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2ZldGNoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2ZldGNoX3BhY2soaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfZm10X21lcmdlX21zZyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9mb3JfZWFjaF9yZWYoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfZm9ybWF0X3BhdGNoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2ZzY2soaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfZ2MoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfZ2V0X3Rhcl9jb21taXRfaWQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfZ3JlcChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9oYXNoX29iamVjdChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9oZWxwKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2luZGV4X3BhY2soaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfaW5pdF9kYihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9pbnRlcnByZXRfdHJhaWxlcnMoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfbG9nKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX2xvZ19yZWZsb2coaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfbHNfZmlsZXMoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfbHNfdHJlZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9sc19yZW1vdGUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfbWFpbGluZm8oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfbWFpbHNwbGl0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX21lcmdlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX21lcmdlX2Jhc2UoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfbWVyZ2VfaW5kZXgoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfbWVyZ2Vfb3VycyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9tZXJnZV9maWxlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX21lcmdlX3JlY3Vyc2l2ZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9tZXJnZV90cmVlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX21rdGFnKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX21rdHJlZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9tdWx0aV9wYWNrX2luZGV4KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX212KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX25hbWVfcmV2KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX25vdGVzKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3BhY2tfb2JqZWN0cyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9wYWNrX3JlZHVuZGFudChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9wYXRjaF9pZChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9wcnVuZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9wcnVuZV9wYWNrZWQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfcHVsbChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9wdXNoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3JhbmdlX2RpZmYoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfcmVhZF90cmVlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3JlYmFzZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9yZWJhc2VfX2ludGVyYWN0aXZlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3JlY2VpdmVfcGFjayhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9yZWZsb2coaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfcmVtb3RlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3JlbW90ZV9leHQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfcmVtb3RlX2ZkKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3JlcGFjayhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9yZXJlcmUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfcmVzZXQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfcmV2X2xpc3QoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfcmV2X3BhcnNlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3JldmVydChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9ybShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9zZW5kX3BhY2soaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfc2VydmUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfc2hvcnRsb2coaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfc2hvdyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9zaG93X2JyYW5jaChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9zaG93X2luZGV4KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3N0YXR1cyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9zdHJpcHNwYWNlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3N1Ym1vZHVsZV9faGVscGVyKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3N5bWJvbGljX3JlZihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF90YWcoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfdGFyX3RyZWUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfdW5wYWNrX2ZpbGUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfdW5wYWNrX29iamVjdHMoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfdXBkYXRlX2luZGV4KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3VwZGF0ZV9yZWYoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfdXBkYXRlX3NlcnZlcl9pbmZvKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3VwbG9hZF9hcmNoaXZlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3VwbG9hZF9hcmNoaXZlX3dyaXRlcihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF91cGxvYWRfcGFjayhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF92YXIoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfdmVyaWZ5X2NvbW1pdChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF92ZXJpZnlfdGFnKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKLWV4dGVybiBpbnQgY21kX3ZlcnNpb24oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfd2hhdGNoYW5nZWQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfd29ya3RyZWUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfd3JpdGVfdHJlZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF92ZXJpZnlfcGFjayhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9zaG93X3JlZihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGNtZF9wYWNrX3JlZnMoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBjbWRfcmVwbGFjZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2FkZChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2FtKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfYW5ub3RhdGUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9hcHBseShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2FyY2hpdmUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9iaXNlY3RfX2hlbHBlcihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2JsYW1lKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfYnJhbmNoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfYnVuZGxlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfY2F0X2ZpbGUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9jaGVja291dChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2NoZWNrb3V0X2luZGV4KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfY2hlY2tfYXR0cihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2NoZWNrX2lnbm9yZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2NoZWNrX21haWxtYXAoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9jaGVja19yZWZfZm9ybWF0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfY2hlcnJ5KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfY2hlcnJ5X3BpY2soaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9jbG9uZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2NsZWFuKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfY29sdW1uKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfY29tbWl0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfY29tbWl0X2dyYXBoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfY29tbWl0X3RyZWUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9jb25maWcoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9jb3VudF9vYmplY3RzKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfY3JlZGVudGlhbChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2Rlc2NyaWJlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfZGlmZl9maWxlcyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2RpZmZfaW5kZXgoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9kaWZmKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfZGlmZl90cmVlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfZGlmZnRvb2woaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9lbnZfX2hlbHBlcihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2Zhc3RfZXhwb3J0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfZmV0Y2goaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9mZXRjaF9wYWNrKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfZm10X21lcmdlX21zZyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2Zvcl9lYWNoX3JlZihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2Zvcm1hdF9wYXRjaChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2ZzY2soaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9nYyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2dldF90YXJfY29tbWl0X2lkKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfZ3JlcChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2hhc2hfb2JqZWN0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfaGVscChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2luZGV4X3BhY2soaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9pbml0X2RiKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfaW50ZXJwcmV0X3RyYWlsZXJzKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfbG9nKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfbG9nX3JlZmxvZyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2xzX2ZpbGVzKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfbHNfdHJlZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX2xzX3JlbW90ZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX21haWxpbmZvKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfbWFpbHNwbGl0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfbWVyZ2UoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9tZXJnZV9iYXNlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfbWVyZ2VfaW5kZXgoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9tZXJnZV9vdXJzKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfbWVyZ2VfZmlsZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX21lcmdlX3JlY3Vyc2l2ZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX21lcmdlX3RyZWUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9ta3RhZyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX21rdHJlZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX211bHRpX3BhY2tfaW5kZXgoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9tdihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX25hbWVfcmV2KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfbm90ZXMoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9wYWNrX29iamVjdHMoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9wYWNrX3JlZHVuZGFudChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3BhdGNoX2lkKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfcHJ1bmUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9wcnVuZV9wYWNrZWQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9wdWxsKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfcHVzaChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3JhbmdlX2RpZmYoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9yZWFkX3RyZWUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9yZWJhc2UoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9yZWJhc2VfX2ludGVyYWN0aXZlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfcmVjZWl2ZV9wYWNrKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfcmVmbG9nKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfcmVtb3RlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfcmVtb3RlX2V4dChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3JlbW90ZV9mZChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3JlcGFjayhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3JlcmVyZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3Jlc2V0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfcmVzdG9yZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3Jldl9saXN0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfcmV2X3BhcnNlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfcmV2ZXJ0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfcm0oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9zZW5kX3BhY2soaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9zaG9ydGxvZyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3Nob3coaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9zaG93X2JyYW5jaChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3Nob3dfaW5kZXgoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9zcGFyc2VfY2hlY2tvdXQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9zdGF0dXMoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9zdGFzaChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3N0cmlwc3BhY2UoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF9zdWJtb2R1bGVfX2hlbHBlcihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3N3aXRjaChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3N5bWJvbGljX3JlZihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3RhZyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3Rhcl90cmVlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfdW5wYWNrX2ZpbGUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF91bnBhY2tfb2JqZWN0cyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3VwZGF0ZV9pbmRleChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3VwZGF0ZV9yZWYoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF91cGRhdGVfc2VydmVyX2luZm8oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF91cGxvYWRfYXJjaGl2ZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3VwbG9hZF9hcmNoaXZlX3dyaXRlcihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3VwbG9hZF9wYWNrKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfdmFyKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfdmVyaWZ5X2NvbW1pdChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3ZlcmlmeV90YWcoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF92ZXJzaW9uKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfd2hhdGNoYW5nZWQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF93b3JrdHJlZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3dyaXRlX3RyZWUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGNtZF92ZXJpZnlfcGFjayhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgY21kX3Nob3dfcmVmKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfcGFja19yZWZzKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KTsKK2ludCBjbWRfcmVwbGFjZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCk7CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9hZGQuYyBiL2J1aWx0aW4vYWRkLmMKaW5kZXggZjY1YzE3Mi4uMThhMDg4MSAxMDA2NDQKLS0tIGEvYnVpbHRpbi9hZGQuYworKysgYi9idWlsdGluL2FkZC5jCkBAIC0zLDYgKzMsNyBAQAogICoKICAqIENvcHlyaWdodCAoQykgMjAwNiBMaW51cyBUb3J2YWxkcwogICovCisjZGVmaW5lIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgImJ1aWx0aW4uaCIKQEAgLTE5LDYgKzIwLDcgQEAKICNpbmNsdWRlICJidWxrLWNoZWNraW4uaCIKICNpbmNsdWRlICJhcmd2LWFycmF5LmgiCiAjaW5jbHVkZSAic3VibW9kdWxlLmgiCisjaW5jbHVkZSAiYWRkLWludGVyYWN0aXZlLmgiCiAKIHN0YXRpYyBjb25zdCBjaGFyICogY29uc3QgYnVpbHRpbl9hZGRfdXNhZ2VbXSA9IHsKIAlOXygiZ2l0IGFkZCBbPG9wdGlvbnM+XSBbLS1dIDxwYXRoc3BlYz4uLi4iKSwKQEAgLTI3LDYgKzI5LDkgQEAKIHN0YXRpYyBpbnQgcGF0Y2hfaW50ZXJhY3RpdmUsIGFkZF9pbnRlcmFjdGl2ZSwgZWRpdF9pbnRlcmFjdGl2ZTsKIHN0YXRpYyBpbnQgdGFrZV93b3JrdHJlZV9jaGFuZ2VzOwogc3RhdGljIGludCBhZGRfcmVub3JtYWxpemU7CitzdGF0aWMgaW50IHBhdGhzcGVjX2ZpbGVfbnVsOworc3RhdGljIGNvbnN0IGNoYXIgKnBhdGhzcGVjX2Zyb21fZmlsZTsKK3N0YXRpYyBpbnQgbGVnYWN5X3N0YXNoX3A7IC8qIHN1cHBvcnQgZm9yIHRoZSBzY3JpcHRlZCBgZ2l0IHN0YXNoYCAqLwogCiBzdHJ1Y3QgdXBkYXRlX2NhbGxiYWNrX2RhdGEgewogCWludCBmbGFnczsKQEAgLTEzNyw3ICsxNDIsNyBAQAogCQkJY29udGludWU7IC8qIGRvIG5vdCB0b3VjaCBub24gYmxvYnMgKi8KIAkJaWYgKHBhdGhzcGVjICYmICFjZV9wYXRoX21hdGNoKCZ0aGVfaW5kZXgsIGNlLCBwYXRoc3BlYywgTlVMTCkpCiAJCQljb250aW51ZTsKLQkJcmV0dmFsIHw9IGFkZF9maWxlX3RvX2NhY2hlKGNlLT5uYW1lLCBmbGFncyB8IEhBU0hfUkVOT1JNQUxJWkUpOworCQlyZXR2YWwgfD0gYWRkX2ZpbGVfdG9fY2FjaGUoY2UtPm5hbWUsIGZsYWdzIHwgQUREX0NBQ0hFX1JFTk9STUFMSVpFKTsKIAl9CiAKIAlyZXR1cm4gcmV0dmFsOwpAQCAtMTc2LDcgKzE4MSw3IEBACiAJCQlkaWUoXygicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlcyIpLAogCQkJICAgIHBhdGhzcGVjLT5pdGVtc1tpXS5tYXRjaCk7CiAJfQotICAgICAgICBmcmVlKHNlZW4pOworCWZyZWUoc2Vlbik7CiB9CiAKIGludCBydW5fYWRkX2ludGVyYWN0aXZlKGNvbnN0IGNoYXIgKnJldmlzaW9uLCBjb25zdCBjaGFyICpwYXRjaF9tb2RlLApAQCAtMTg0LDYgKzE4OSwzNCBAQAogewogCWludCBzdGF0dXMsIGk7CiAJc3RydWN0IGFyZ3ZfYXJyYXkgYXJndiA9IEFSR1ZfQVJSQVlfSU5JVDsKKwlpbnQgdXNlX2J1aWx0aW5fYWRkX2kgPQorCQlnaXRfZW52X2Jvb2woIkdJVF9URVNUX0FERF9JX1VTRV9CVUlMVElOIiwgLTEpOworCisJaWYgKHVzZV9idWlsdGluX2FkZF9pIDwgMCkKKwkJZ2l0X2NvbmZpZ19nZXRfYm9vbCgiYWRkLmludGVyYWN0aXZlLnVzZWJ1aWx0aW4iLAorCQkJCSAgICAmdXNlX2J1aWx0aW5fYWRkX2kpOworCisJaWYgKHVzZV9idWlsdGluX2FkZF9pID09IDEpIHsKKwkJZW51bSBhZGRfcF9tb2RlIG1vZGU7CisKKwkJaWYgKCFwYXRjaF9tb2RlKQorCQkJcmV0dXJuICEhcnVuX2FkZF9pKHRoZV9yZXBvc2l0b3J5LCBwYXRoc3BlYyk7CisKKwkJaWYgKCFzdHJjbXAocGF0Y2hfbW9kZSwgIi0tcGF0Y2giKSkKKwkJCW1vZGUgPSBBRERfUF9BREQ7CisJCWVsc2UgaWYgKCFzdHJjbXAocGF0Y2hfbW9kZSwgIi0tcGF0Y2g9c3Rhc2giKSkKKwkJCW1vZGUgPSBBRERfUF9TVEFTSDsKKwkJZWxzZSBpZiAoIXN0cmNtcChwYXRjaF9tb2RlLCAiLS1wYXRjaD1yZXNldCIpKQorCQkJbW9kZSA9IEFERF9QX1JFU0VUOworCQllbHNlIGlmICghc3RyY21wKHBhdGNoX21vZGUsICItLXBhdGNoPWNoZWNrb3V0IikpCisJCQltb2RlID0gQUREX1BfQ0hFQ0tPVVQ7CisJCWVsc2UgaWYgKCFzdHJjbXAocGF0Y2hfbW9kZSwgIi0tcGF0Y2g9d29ya3RyZWUiKSkKKwkJCW1vZGUgPSBBRERfUF9XT1JLVFJFRTsKKwkJZWxzZQorCQkJZGllKCInJXMnIG5vdCBzdXBwb3J0ZWQiLCBwYXRjaF9tb2RlKTsKKworCQlyZXR1cm4gISFydW5fYWRkX3AodGhlX3JlcG9zaXRvcnksIG1vZGUsIHJldmlzaW9uLCBwYXRoc3BlYyk7CisJfQogCiAJYXJndl9hcnJheV9wdXNoKCZhcmd2LCAiYWRkLS1pbnRlcmFjdGl2ZSIpOwogCWlmIChwYXRjaF9tb2RlKQpAQCAtMjM5LDcgKzI3Miw3IEBACiAJcmV2LmRpZmZvcHQub3V0cHV0X2Zvcm1hdCA9IERJRkZfRk9STUFUX1BBVENIOwogCXJldi5kaWZmb3B0LnVzZV9jb2xvciA9IDA7CiAJcmV2LmRpZmZvcHQuZmxhZ3MuaWdub3JlX2RpcnR5X3N1Ym1vZHVsZXMgPSAxOwotCW91dCA9IG9wZW4oZmlsZSwgT19DUkVBVCB8IE9fV1JPTkxZLCAwNjY2KTsKKwlvdXQgPSBvcGVuKGZpbGUsIE9fQ1JFQVQgfCBPX1dST05MWSB8IE9fVFJVTkMsIDA2NjYpOwogCWlmIChvdXQgPCAwKQogCQlkaWUoXygiQ291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZy4iKSwgZmlsZSk7CiAJcmV2LmRpZmZvcHQuZmlsZSA9IHhmZG9wZW4ob3V0LCAidyIpOwpAQCAtMzA4LDYgKzM0MSwxMCBAQAogCQkgICBOXygib3ZlcnJpZGUgdGhlIGV4ZWN1dGFibGUgYml0IG9mIHRoZSBsaXN0ZWQgZmlsZXMiKSksCiAJT1BUX0hJRERFTl9CT09MKDAsICJ3YXJuLWVtYmVkZGVkLXJlcG8iLCAmd2Fybl9vbl9lbWJlZGRlZF9yZXBvLAogCQkJTl8oIndhcm4gd2hlbiBhZGRpbmcgYW4gZW1iZWRkZWQgcmVwb3NpdG9yeSIpKSwKKwlPUFRfSElEREVOX0JPT0woMCwgImxlZ2FjeS1zdGFzaC1wIiwgJmxlZ2FjeV9zdGFzaF9wLAorCQkJTl8oImJhY2tlbmQgZm9yIGBnaXQgc3Rhc2ggLXBgIikpLAorCU9QVF9QQVRIU1BFQ19GUk9NX0ZJTEUoJnBhdGhzcGVjX2Zyb21fZmlsZSksCisJT1BUX1BBVEhTUEVDX0ZJTEVfTlVMKCZwYXRoc3BlY19maWxlX251bCksCiAJT1BUX0VORCgpLAogfTsKIApAQCAtMzE4LDYgKzM1NSw3IEBACiAJCWlnbm9yZV9hZGRfZXJyb3JzID0gZ2l0X2NvbmZpZ19ib29sKHZhciwgdmFsdWUpOwogCQlyZXR1cm4gMDsKIAl9CisKIAlyZXR1cm4gZ2l0X2RlZmF1bHRfY29uZmlnKHZhciwgdmFsdWUsIGNiKTsKIH0KIApAQCAtMzY4LDE2ICs0MDYsMjAgQEAKIAkJZnByaW50ZihzdGRlcnIsIF8oaWdub3JlX2Vycm9yKSk7CiAJCWZvciAoaSA9IDA7IGkgPCBkaXItPmlnbm9yZWRfbnI7IGkrKykKIAkJCWZwcmludGYoc3RkZXJyLCAiJXNcbiIsIGRpci0+aWdub3JlZFtpXS0+bmFtZSk7Ci0JCWZwcmludGYoc3RkZXJyLCBfKCJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCB0aGVtLlxuIikpOworCQlpZiAoYWR2aWNlX2FkZF9pZ25vcmVkX2ZpbGUpCisJCQlhZHZpc2UoXygiVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgdGhlbS5cbiIKKwkJCQkiVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5IHJ1bm5pbmdcbiIKKwkJCQkiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRJZ25vcmVkRmlsZSBmYWxzZVwiIikpOwogCQlleGl0X3N0YXR1cyA9IDE7CiAJfQogCiAJZm9yIChpID0gMDsgaSA8IGRpci0+bnI7IGkrKykgewotCQljaGVja19lbWJlZGRlZF9yZXBvKGRpci0+ZW50cmllc1tpXS0+bmFtZSk7CiAJCWlmIChhZGRfZmlsZV90b19pbmRleCgmdGhlX2luZGV4LCBkaXItPmVudHJpZXNbaV0tPm5hbWUsIGZsYWdzKSkgewogCQkJaWYgKCFpZ25vcmVfYWRkX2Vycm9ycykKIAkJCQlkaWUoXygiYWRkaW5nIGZpbGVzIGZhaWxlZCIpKTsKIAkJCWV4aXRfc3RhdHVzID0gMTsKKwkJfSBlbHNlIHsKKwkJCWNoZWNrX2VtYmVkZGVkX3JlcG8oZGlyLT5lbnRyaWVzW2ldLT5uYW1lKTsKIAkJfQogCX0KIAlyZXR1cm4gZXhpdF9zdGF0dXM7CkBAIC00MDAsMTEgKzQ0MiwyOCBAQAogCQkJICBidWlsdGluX2FkZF91c2FnZSwgUEFSU0VfT1BUX0tFRVBfQVJHVjApOwogCWlmIChwYXRjaF9pbnRlcmFjdGl2ZSkKIAkJYWRkX2ludGVyYWN0aXZlID0gMTsKLQlpZiAoYWRkX2ludGVyYWN0aXZlKQorCWlmIChhZGRfaW50ZXJhY3RpdmUpIHsKKwkJaWYgKHBhdGhzcGVjX2Zyb21fZmlsZSkKKwkJCWRpZShfKCItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWludGVyYWN0aXZlLy0tcGF0Y2giKSk7CiAJCWV4aXQoaW50ZXJhY3RpdmVfYWRkKGFyZ2MgLSAxLCBhcmd2ICsgMSwgcHJlZml4LCBwYXRjaF9pbnRlcmFjdGl2ZSkpOworCX0KKwlpZiAobGVnYWN5X3N0YXNoX3ApIHsKKwkJc3RydWN0IHBhdGhzcGVjIHBhdGhzcGVjOwogCi0JaWYgKGVkaXRfaW50ZXJhY3RpdmUpCisJCXBhcnNlX3BhdGhzcGVjKCZwYXRoc3BlYywgMCwKKwkJCVBBVEhTUEVDX1BSRUZFUl9GVUxMIHwKKwkJCVBBVEhTUEVDX1NZTUxJTktfTEVBRElOR19QQVRIIHwKKwkJCVBBVEhTUEVDX1BSRUZJWF9PUklHSU4sCisJCQlwcmVmaXgsIGFyZ3YpOworCisJCXJldHVybiBydW5fYWRkX2ludGVyYWN0aXZlKE5VTEwsICItLXBhdGNoPXN0YXNoIiwgJnBhdGhzcGVjKTsKKwl9CisKKwlpZiAoZWRpdF9pbnRlcmFjdGl2ZSkgeworCQlpZiAocGF0aHNwZWNfZnJvbV9maWxlKQorCQkJZGllKF8oIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tZWRpdCIpKTsKIAkJcmV0dXJuKGVkaXRfcGF0Y2goYXJnYywgYXJndiwgcHJlZml4KSk7CisJfQogCWFyZ2MtLTsKIAlhcmd2Kys7CiAKQEAgLTQxNiwxMCArNDc1LDYgQEAKIAlpZiAoYWRkcmVtb3ZlICYmIHRha2Vfd29ya3RyZWVfY2hhbmdlcykKIAkJZGllKF8oIi1BIGFuZCAtdSBhcmUgbXV0dWFsbHkgaW5jb21wYXRpYmxlIikpOwogCi0JaWYgKCF0YWtlX3dvcmt0cmVlX2NoYW5nZXMgJiYgYWRkcmVtb3ZlX2V4cGxpY2l0IDwgMCAmJiBhcmdjKQotCQkvKiBUdXJuICJnaXQgYWRkIHBhdGhzcGVjLi4uIiB0byAiZ2l0IGFkZCAtQSBwYXRoc3BlYy4uLiIgKi8KLQkJYWRkcmVtb3ZlID0gMTsKLQogCWlmICghc2hvd19vbmx5ICYmIGlnbm9yZV9taXNzaW5nKQogCQlkaWUoXygiT3B0aW9uIC0taWdub3JlLW1pc3NpbmcgY2FuIG9ubHkgYmUgdXNlZCB0b2dldGhlciB3aXRoIC0tZHJ5LXJ1biIpKTsKIApAQCAtNDMyLDE5ICs0ODcsNiBAQAogCiAJaG9sZF9sb2NrZWRfaW5kZXgoJmxvY2tfZmlsZSwgTE9DS19ESUVfT05fRVJST1IpOwogCi0JZmxhZ3MgPSAoKHZlcmJvc2UgPyBBRERfQ0FDSEVfVkVSQk9TRSA6IDApIHwKLQkJIChzaG93X29ubHkgPyBBRERfQ0FDSEVfUFJFVEVORCA6IDApIHwKLQkJIChpbnRlbnRfdG9fYWRkID8gQUREX0NBQ0hFX0lOVEVOVCA6IDApIHwKLQkJIChpZ25vcmVfYWRkX2Vycm9ycyA/IEFERF9DQUNIRV9JR05PUkVfRVJST1JTIDogMCkgfAotCQkgKCEoYWRkcmVtb3ZlIHx8IHRha2Vfd29ya3RyZWVfY2hhbmdlcykKLQkJICA/IEFERF9DQUNIRV9JR05PUkVfUkVNT1ZBTCA6IDApKTsKLQotCWlmIChyZXF1aXJlX3BhdGhzcGVjICYmIGFyZ2MgPT0gMCkgewotCQlmcHJpbnRmKHN0ZGVyciwgXygiTm90aGluZyBzcGVjaWZpZWQsIG5vdGhpbmcgYWRkZWQuXG4iKSk7Ci0JCWZwcmludGYoc3RkZXJyLCBfKCJNYXliZSB5b3Ugd2FudGVkIHRvIHNheSAnZ2l0IGFkZCAuJz9cbiIpKTsKLQkJcmV0dXJuIDA7Ci0JfQotCiAJLyoKIAkgKiBDaGVjayB0aGUgInBhdGhzcGVjICclcycgZGlkIG5vdCBtYXRjaCBhbnkgZmlsZXMiIGJsb2NrCiAJICogYmVsb3cgYmVmb3JlIGVuYWJsaW5nIG5ldyBtYWdpYy4KQEAgLTQ1NCw2ICs0OTYsMzggQEAKIAkJICAgICAgIFBBVEhTUEVDX1NZTUxJTktfTEVBRElOR19QQVRILAogCQkgICAgICAgcHJlZml4LCBhcmd2KTsKIAorCWlmIChwYXRoc3BlY19mcm9tX2ZpbGUpIHsKKwkJaWYgKHBhdGhzcGVjLm5yKQorCQkJZGllKF8oIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIpKTsKKworCQlwYXJzZV9wYXRoc3BlY19maWxlKCZwYXRoc3BlYywgUEFUSFNQRUNfQVRUUiwKKwkJCQkgICAgUEFUSFNQRUNfUFJFRkVSX0ZVTEwgfAorCQkJCSAgICBQQVRIU1BFQ19TWU1MSU5LX0xFQURJTkdfUEFUSCwKKwkJCQkgICAgcHJlZml4LCBwYXRoc3BlY19mcm9tX2ZpbGUsIHBhdGhzcGVjX2ZpbGVfbnVsKTsKKwl9IGVsc2UgaWYgKHBhdGhzcGVjX2ZpbGVfbnVsKSB7CisJCWRpZShfKCItLXBhdGhzcGVjLWZpbGUtbnVsIHJlcXVpcmVzIC0tcGF0aHNwZWMtZnJvbS1maWxlIikpOworCX0KKworCWlmIChyZXF1aXJlX3BhdGhzcGVjICYmIHBhdGhzcGVjLm5yID09IDApIHsKKwkJZnByaW50ZihzdGRlcnIsIF8oIk5vdGhpbmcgc3BlY2lmaWVkLCBub3RoaW5nIGFkZGVkLlxuIikpOworCQlpZiAoYWR2aWNlX2FkZF9lbXB0eV9wYXRoc3BlYykKKwkJCWFkdmlzZSggXygiTWF5YmUgeW91IHdhbnRlZCB0byBzYXkgJ2dpdCBhZGQgLic/XG4iCisJCQkJIlR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieSBydW5uaW5nXG4iCisJCQkJIlwiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkRW1wdHlQYXRoc3BlYyBmYWxzZVwiIikpOworCQlyZXR1cm4gMDsKKwl9CisKKwlpZiAoIXRha2Vfd29ya3RyZWVfY2hhbmdlcyAmJiBhZGRyZW1vdmVfZXhwbGljaXQgPCAwICYmIHBhdGhzcGVjLm5yKQorCQkvKiBUdXJuICJnaXQgYWRkIHBhdGhzcGVjLi4uIiB0byAiZ2l0IGFkZCAtQSBwYXRoc3BlYy4uLiIgKi8KKwkJYWRkcmVtb3ZlID0gMTsKKworCWZsYWdzID0gKCh2ZXJib3NlID8gQUREX0NBQ0hFX1ZFUkJPU0UgOiAwKSB8CisJCSAoc2hvd19vbmx5ID8gQUREX0NBQ0hFX1BSRVRFTkQgOiAwKSB8CisJCSAoaW50ZW50X3RvX2FkZCA/IEFERF9DQUNIRV9JTlRFTlQgOiAwKSB8CisJCSAoaWdub3JlX2FkZF9lcnJvcnMgPyBBRERfQ0FDSEVfSUdOT1JFX0VSUk9SUyA6IDApIHwKKwkJICghKGFkZHJlbW92ZSB8fCB0YWtlX3dvcmt0cmVlX2NoYW5nZXMpCisJCSAgPyBBRERfQ0FDSEVfSUdOT1JFX1JFTU9WQUwgOiAwKSk7CisKIAlpZiAocmVhZF9jYWNoZV9wcmVsb2FkKCZwYXRoc3BlYykgPCAwKQogCQlkaWUoXygiaW5kZXggZmlsZSBjb3JydXB0IikpOwogCmRpZmYgLS1naXQgYS9idWlsdGluL2FtLmMgYi9idWlsdGluL2FtLmMKaW5kZXggOGYyN2YzMy4uZTNkZmQ5MyAxMDA2NDQKLS0tIGEvYnVpbHRpbi9hbS5jCisrKyBiL2J1aWx0aW4vYW0uYwpAQCAtMyw2ICszLDcgQEAKICAqCiAgKiBCYXNlZCBvbiBnaXQtYW0uc2ggYnkgSnVuaW8gQyBIYW1hbm8uCiAgKi8KKyNkZWZpbmUgVVNFX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiYnVpbHRpbi5oIgpAQCAtMjMsNyArMjQsNiBAQAogI2luY2x1ZGUgInNlcXVlbmNlci5oIgogI2luY2x1ZGUgInJldmlzaW9uLmgiCiAjaW5jbHVkZSAibWVyZ2UtcmVjdXJzaXZlLmgiCi0jaW5jbHVkZSAicmV2aXNpb24uaCIKICNpbmNsdWRlICJsb2ctdHJlZS5oIgogI2luY2x1ZGUgIm5vdGVzLXV0aWxzLmgiCiAjaW5jbHVkZSAicmVyZXJlLmgiCkBAIC0zNSwyMiArMzUsNiBAQAogI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKIAogLyoqCi0gKiBSZXR1cm5zIDEgaWYgdGhlIGZpbGUgaXMgZW1wdHkgb3IgZG9lcyBub3QgZXhpc3QsIDAgb3RoZXJ3aXNlLgotICovCi1zdGF0aWMgaW50IGlzX2VtcHR5X2ZpbGUoY29uc3QgY2hhciAqZmlsZW5hbWUpCi17Ci0Jc3RydWN0IHN0YXQgc3Q7Ci0KLQlpZiAoc3RhdChmaWxlbmFtZSwgJnN0KSA8IDApIHsKLQkJaWYgKGVycm5vID09IEVOT0VOVCkKLQkJCXJldHVybiAxOwotCQlkaWVfZXJybm8oXygiY291bGQgbm90IHN0YXQgJXMiKSwgZmlsZW5hbWUpOwotCX0KLQotCXJldHVybiAhc3Quc3Rfc2l6ZTsKLX0KLQotLyoqCiAgKiBSZXR1cm5zIHRoZSBsZW5ndGggb2YgdGhlIGZpcnN0IGxpbmUgb2YgbXNnLgogICovCiBzdGF0aWMgaW50IGxpbmVsZW4oY29uc3QgY2hhciAqbXNnKQpAQCAtOTcsNiArODEsMTEgQEAKIAlTSUdOT0ZGX0VYUExJQ0lUIC8qIC0tc2lnbm9mZiB3YXMgc2V0IG9uIHRoZSBjb21tYW5kLWxpbmUgKi8KIH07CiAKK2VudW0gc2hvd19wYXRjaF90eXBlIHsKKwlTSE9XX1BBVENIX1JBVyA9IDAsCisJU0hPV19QQVRDSF9ESUZGID0gMSwKK307CisKIHN0cnVjdCBhbV9zdGF0ZSB7CiAJLyogc3RhdGUgZGlyZWN0b3J5IHBhdGggKi8KIAljaGFyICpkaXI7CkBAIC00NjgsNiArNDU3LDcgQEAKIAogCWNwLmluID0geG9wZW4oYW1fcGF0aChzdGF0ZSwgInJld3JpdHRlbiIpLCBPX1JET05MWSk7CiAJY3Auc3Rkb3V0X3RvX3N0ZGVyciA9IDE7CisJY3AudHJhY2UyX2hvb2tfbmFtZSA9ICJwb3N0LXJld3JpdGUiOwogCiAJcmV0ID0gcnVuX2NvbW1hbmQoJmNwKTsKIApAQCAtNTAwLDIzICs0OTAsMjQgQEAKIAogCXdoaWxlICghc3RyYnVmX2dldGxpbmVfbGYoJnNiLCBmcCkpIHsKIAkJc3RydWN0IG9iamVjdF9pZCBmcm9tX29iaiwgdG9fb2JqOworCQljb25zdCBjaGFyICpwOwogCi0JCWlmIChzYi5sZW4gIT0gR0lUX1NIQTFfSEVYU1ogKiAyICsgMSkgeworCQlpZiAoc2IubGVuICE9IHRoZV9oYXNoX2FsZ28tPmhleHN6ICogMiArIDEpIHsKIAkJCXJldCA9IGVycm9yKGludmFsaWRfbGluZSwgc2IuYnVmKTsKIAkJCWdvdG8gZmluaXNoOwogCQl9CiAKLQkJaWYgKGdldF9vaWRfaGV4KHNiLmJ1ZiwgJmZyb21fb2JqKSkgeworCQlpZiAocGFyc2Vfb2lkX2hleChzYi5idWYsICZmcm9tX29iaiwgJnApKSB7CiAJCQlyZXQgPSBlcnJvcihpbnZhbGlkX2xpbmUsIHNiLmJ1Zik7CiAJCQlnb3RvIGZpbmlzaDsKIAkJfQogCi0JCWlmIChzYi5idWZbR0lUX1NIQTFfSEVYU1pdICE9ICcgJykgeworCQlpZiAoKnAgIT0gJyAnKSB7CiAJCQlyZXQgPSBlcnJvcihpbnZhbGlkX2xpbmUsIHNiLmJ1Zik7CiAJCQlnb3RvIGZpbmlzaDsKIAkJfQogCi0JCWlmIChnZXRfb2lkX2hleChzYi5idWYgKyBHSVRfU0hBMV9IRVhTWiArIDEsICZ0b19vYmopKSB7CisJCWlmIChnZXRfb2lkX2hleChwICsgMSwgJnRvX29iaikpIHsKIAkJCXJldCA9IGVycm9yKGludmFsaWRfbGluZSwgc2IuYnVmKTsKIAkJCWdvdG8gZmluaXNoOwogCQl9CkBAIC01MjcsNyArNTE4LDcgQEAKIAl9CiAKIGZpbmlzaDoKLQlmaW5pc2hfY29weV9ub3Rlc19mb3JfcmV3cml0ZShjLCBtc2cpOworCWZpbmlzaF9jb3B5X25vdGVzX2Zvcl9yZXdyaXRlKHRoZV9yZXBvc2l0b3J5LCBjLCBtc2cpOwogCWZjbG9zZShmcCk7CiAJc3RyYnVmX3JlbGVhc2UoJnNiKTsKIAlyZXR1cm4gcmV0OwpAQCAtMTA4NSwxOSArMTA3Niw2IEBACiB9CiAKIC8qKgotICogUmVmcmVzaCBhbmQgd3JpdGUgaW5kZXguCi0gKi8KLXN0YXRpYyB2b2lkIHJlZnJlc2hfYW5kX3dyaXRlX2NhY2hlKHZvaWQpCi17Ci0Jc3RydWN0IGxvY2tfZmlsZSBsb2NrX2ZpbGUgPSBMT0NLX0lOSVQ7Ci0KLQlob2xkX2xvY2tlZF9pbmRleCgmbG9ja19maWxlLCBMT0NLX0RJRV9PTl9FUlJPUik7Ci0JcmVmcmVzaF9jYWNoZShSRUZSRVNIX1FVSUVUKTsKLQlpZiAod3JpdGVfbG9ja2VkX2luZGV4KCZ0aGVfaW5kZXgsICZsb2NrX2ZpbGUsIENPTU1JVF9MT0NLKSkKLQkJZGllKF8oInVuYWJsZSB0byB3cml0ZSBpbmRleCBmaWxlIikpOwotfQotCi0vKioKICAqIERpZXMgd2l0aCBhIHVzZXItZnJpZW5kbHkgbWVzc2FnZSBvbiBob3cgdG8gcHJvY2VlZCBhZnRlciByZXNvbHZpbmcgdGhlCiAgKiBwcm9ibGVtLiBUaGlzIG1lc3NhZ2UgY2FuIGJlIG92ZXJyaWRkZW4gd2l0aCBzdGF0ZS0+cmVzb2x2ZW1zZy4KICAqLwpAQCAtMTIyMCw3ICsxMTk4LDcgQEAKIAkJZ290byBmaW5pc2g7CiAJfQogCi0JaWYgKGlzX2VtcHR5X2ZpbGUoYW1fcGF0aChzdGF0ZSwgInBhdGNoIikpKSB7CisJaWYgKGlzX2VtcHR5X29yX21pc3NpbmdfZmlsZShhbV9wYXRoKHN0YXRlLCAicGF0Y2giKSkpIHsKIAkJcHJpbnRmX2xuKF8oIlBhdGNoIGlzIGVtcHR5LiIpKTsKIAkJZGllX3VzZXJfcmVzb2x2ZShzdGF0ZSk7CiAJfQpAQCAtMTI4NSw3ICsxMjYzLDkgQEAKIAlidWZmZXIgPSBsb2dtc2dfcmVlbmNvZGUoY29tbWl0LCBOVUxMLCBnZXRfY29tbWl0X291dHB1dF9lbmNvZGluZygpKTsKIAogCWlkZW50X2xpbmUgPSBmaW5kX2NvbW1pdF9oZWFkZXIoYnVmZmVyLCAiYXV0aG9yIiwgJmlkZW50X2xlbik7Ci0KKwlpZiAoIWlkZW50X2xpbmUpCisJCWRpZShfKCJtaXNzaW5nIGF1dGhvciBsaW5lIGluIGNvbW1pdCAlcyIpLAorCQkgICAgICBvaWRfdG9faGV4KCZjb21taXQtPm9iamVjdC5vaWQpKTsKIAlpZiAoc3BsaXRfaWRlbnRfbGluZSgmaWQsIGlkZW50X2xpbmUsIGlkZW50X2xlbikgPCAwKQogCQlkaWUoXygiaW52YWxpZCBpZGVudCBsaW5lOiAlLipzIiksIChpbnQpaWRlbnRfbGVuLCBpZGVudF9saW5lKTsKIApAQCAtMTM1Miw5ICsxMzMyLDEwIEBACiAJc3RydWN0IHJldl9pbmZvIHJldl9pbmZvOwogCUZJTEUgKmZwOwogCi0JaWYgKCFnZXRfb2lkX3RyZWUoIkhFQUQiLCAmaGVhZCkpCi0JCXRyZWUgPSBsb29rdXBfdHJlZSh0aGVfcmVwb3NpdG9yeSwgJmhlYWQpOwotCWVsc2UKKwlpZiAoIWdldF9vaWQoIkhFQUQiLCAmaGVhZCkpIHsKKwkJc3RydWN0IGNvbW1pdCAqY29tbWl0ID0gbG9va3VwX2NvbW1pdF9vcl9kaWUoJmhlYWQsICJIRUFEIik7CisJCXRyZWUgPSBnZXRfY29tbWl0X3RyZWUoY29tbWl0KTsKKwl9IGVsc2UKIAkJdHJlZSA9IGxvb2t1cF90cmVlKHRoZV9yZXBvc2l0b3J5LAogCQkJCSAgIHRoZV9yZXBvc2l0b3J5LT5oYXNoX2FsZ28tPmVtcHR5X3RyZWUpOwogCkBAIC0xNTE1LDExICsxNDk2LDExIEBACiAJCSAqIHJldmlldyB0aGVtIHdpdGggZXh0cmEgY2FyZSB0byBzcG90IG1pc21lcmdlcy4KIAkJICovCiAJCXN0cnVjdCByZXZfaW5mbyByZXZfaW5mbzsKLQkJY29uc3QgY2hhciAqZGlmZl9maWx0ZXJfc3RyID0gIi0tZGlmZi1maWx0ZXI9QU0iOwogCiAJCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksICZyZXZfaW5mbywgTlVMTCk7CiAJCXJldl9pbmZvLmRpZmZvcHQub3V0cHV0X2Zvcm1hdCA9IERJRkZfRk9STUFUX05BTUVfU1RBVFVTOwotCQlkaWZmX29wdF9wYXJzZSgmcmV2X2luZm8uZGlmZm9wdCwgJmRpZmZfZmlsdGVyX3N0ciwgMSwgcmV2X2luZm8ucHJlZml4KTsKKwkJcmV2X2luZm8uZGlmZm9wdC5maWx0ZXIgfD0gZGlmZl9maWx0ZXJfYml0KCdBJyk7CisJCXJldl9pbmZvLmRpZmZvcHQuZmlsdGVyIHw9IGRpZmZfZmlsdGVyX2JpdCgnTScpOwogCQlhZGRfcGVuZGluZ19vaWQoJnJldl9pbmZvLCAiSEVBRCIsICZvdXJfdHJlZSwgMCk7CiAJCWRpZmZfc2V0dXBfZG9uZSgmcmV2X2luZm8uZGlmZm9wdCk7CiAJCXJ1bl9kaWZmX2luZGV4KCZyZXZfaW5mbywgMSk7CkBAIC0xNTQ1LDEyICsxNTI2LDEyIEBACiAJICogY2hhbmdlcy4KIAkgKi8KIAotCWluaXRfbWVyZ2Vfb3B0aW9ucygmbyk7CisJaW5pdF9tZXJnZV9vcHRpb25zKCZvLCB0aGVfcmVwb3NpdG9yeSk7CiAKIAlvLmJyYW5jaDEgPSAiSEVBRCI7CiAJdGhlaXJfdHJlZV9uYW1lID0geHN0cmZtdCgiJS4qcyIsIGxpbmVsZW4oc3RhdGUtPm1zZyksIHN0YXRlLT5tc2cpOwogCW8uYnJhbmNoMiA9IHRoZWlyX3RyZWVfbmFtZTsKLQlvLmRldGVjdF9kaXJlY3RvcnlfcmVuYW1lcyA9IDA7CisJby5kZXRlY3RfZGlyZWN0b3J5X3JlbmFtZXMgPSBNRVJHRV9ESVJFQ1RPUllfUkVOQU1FU19OT05FOwogCiAJaWYgKHN0YXRlLT5xdWlldCkKIAkJby52ZXJib3NpdHkgPSAwOwpAQCAtMTU5NCw2ICsxNTc1LDcgQEAKIAl9CiAKIAlhdXRob3IgPSBmbXRfaWRlbnQoc3RhdGUtPmF1dGhvcl9uYW1lLCBzdGF0ZS0+YXV0aG9yX2VtYWlsLAorCQlXQU5UX0FVVEhPUl9JREVOVCwKIAkJCXN0YXRlLT5pZ25vcmVfZGF0ZSA/IE5VTEwgOiBzdGF0ZS0+YXV0aG9yX2RhdGUsCiAJCQlJREVOVF9TVFJJQ1QpOwogCkBAIC0xNjU1LDExICsxNjM3LDggQEAKIHsKIAlhc3NlcnQoc3RhdGUtPm1zZyk7CiAKLQlpZiAoIWlzYXR0eSgwKSkKLQkJZGllKF8oImNhbm5vdCBiZSBpbnRlcmFjdGl2ZSB3aXRob3V0IHN0ZGluIGNvbm5lY3RlZCB0byBhIHRlcm1pbmFsLiIpKTsKLQogCWZvciAoOzspIHsKLQkJY29uc3QgY2hhciAqcmVwbHk7CisJCWNoYXIgcmVwbHlbNjRdOwogCiAJCXB1dHMoXygiQ29tbWl0IEJvZHkgaXM6IikpOwogCQlwdXRzKCItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSIpOwpAQCAtMTY3MSwxMSArMTY1MCwxMSBAQAogCQkgKiBpbiB5b3VyIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2gKIAkJICogaW5wdXQgYXQgdGhpcyBwb2ludC4KIAkJICovCi0JCXJlcGx5ID0gZ2l0X3Byb21wdChfKCJBcHBseT8gW3ldZXMvW25dby9bZV1kaXQvW3ZdaWV3IHBhdGNoL1thXWNjZXB0IGFsbDogIiksIFBST01QVF9FQ0hPKTsKKwkJcHJpbnRmKF8oIkFwcGx5PyBbeV1lcy9bbl1vL1tlXWRpdC9bdl1pZXcgcGF0Y2gvW2FdY2NlcHQgYWxsOiAiKSk7CisJCWlmICghZmdldHMocmVwbHksIHNpemVvZihyZXBseSksIHN0ZGluKSkKKwkJCWRpZSgidW5hYmxlIHRvIHJlYWQgZnJvbSBzdGRpbjsgYWJvcnRpbmciKTsKIAotCQlpZiAoIXJlcGx5KSB7Ci0JCQljb250aW51ZTsKLQkJfSBlbHNlIGlmICgqcmVwbHkgPT0gJ3knIHx8ICpyZXBseSA9PSAnWScpIHsKKwkJaWYgKCpyZXBseSA9PSAneScgfHwgKnJlcGx5ID09ICdZJykgewogCQkJcmV0dXJuIDA7CiAJCX0gZWxzZSBpZiAoKnJlcGx5ID09ICdhJyB8fCAqcmVwbHkgPT0gJ0EnKSB7CiAJCQlzdGF0ZS0+aW50ZXJhY3RpdmUgPSAwOwpAQCAtMTcxNyw5ICsxNjk2LDEwIEBACiAKIAl1bmxpbmsoYW1fcGF0aChzdGF0ZSwgImRpcnR5aW5kZXgiKSk7CiAKLQlyZWZyZXNoX2FuZF93cml0ZV9jYWNoZSgpOworCWlmIChyZWZyZXNoX2FuZF93cml0ZV9jYWNoZShSRUZSRVNIX1FVSUVULCAwLCAwKSA8IDApCisJCWRpZShfKCJ1bmFibGUgdG8gd3JpdGUgaW5kZXggZmlsZSIpKTsKIAotCWlmIChpbmRleF9oYXNfY2hhbmdlcygmdGhlX2luZGV4LCBOVUxMLCAmc2IpKSB7CisJaWYgKHJlcG9faW5kZXhfaGFzX2NoYW5nZXModGhlX3JlcG9zaXRvcnksIE5VTEwsICZzYikpIHsKIAkJd3JpdGVfc3RhdGVfYm9vbChzdGF0ZSwgImRpcnR5aW5kZXgiLCAxKTsKIAkJZGllKF8oIkRpcnR5IGluZGV4OiBjYW5ub3QgYXBwbHkgcGF0Y2hlcyAoZGlydHk6ICVzKSIpLCBzYi5idWYpOwogCX0KQEAgLTE3NzcsNyArMTc1Nyw3IEBACiAJCQkgKiB0aGUgcmVzdWx0IG1heSBoYXZlIHByb2R1Y2VkIHRoZSBzYW1lIHRyZWUgYXMgb3Vycy4KIAkJCSAqLwogCQkJaWYgKCFhcHBseV9zdGF0dXMgJiYKLQkJCSAgICAhaW5kZXhfaGFzX2NoYW5nZXMoJnRoZV9pbmRleCwgTlVMTCwgTlVMTCkpIHsKKwkJCSAgICAhcmVwb19pbmRleF9oYXNfY2hhbmdlcyh0aGVfcmVwb3NpdG9yeSwgTlVMTCwgTlVMTCkpIHsKIAkJCQlzYXkoc3RhdGUsIHN0ZG91dCwgXygiTm8gY2hhbmdlcyAtLSBQYXRjaCBhbHJlYWR5IGFwcGxpZWQuIikpOwogCQkJCWdvdG8gbmV4dDsKIAkJCX0KQEAgLTE3ODgsNyArMTc2OCw3IEBACiAJCQkJbGluZWxlbihzdGF0ZS0+bXNnKSwgc3RhdGUtPm1zZyk7CiAKIAkJCWlmIChhZHZpY2VfYW13b3JrZGlyKQotCQkJCWFkdmlzZShfKCJVc2UgJ2dpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaCcgdG8gc2VlIHRoZSBmYWlsZWQgcGF0Y2giKSk7CisJCQkJYWR2aXNlKF8oIlVzZSAnZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoPWRpZmYnIHRvIHNlZSB0aGUgZmFpbGVkIHBhdGNoIikpOwogCiAJCQlkaWVfdXNlcl9yZXNvbHZlKHN0YXRlKTsKIAkJfQpAQCAtMTgwMyw3ICsxNzgzLDcgQEAKIAkJcmVzdW1lID0gMDsKIAl9CiAKLQlpZiAoIWlzX2VtcHR5X2ZpbGUoYW1fcGF0aChzdGF0ZSwgInJld3JpdHRlbiIpKSkgeworCWlmICghaXNfZW1wdHlfb3JfbWlzc2luZ19maWxlKGFtX3BhdGgoc3RhdGUsICJyZXdyaXR0ZW4iKSkpIHsKIAkJYXNzZXJ0KHN0YXRlLT5yZWJhc2luZyk7CiAJCWNvcHlfbm90ZXNfZm9yX3JlYmFzZShzdGF0ZSk7CiAJCXJ1bl9wb3N0X3Jld3JpdGVfaG9vayhzdGF0ZSk7CkBAIC0xODE1LDcgKzE3OTUsNyBAQAogCSAqLwogCWlmICghc3RhdGUtPnJlYmFzaW5nKSB7CiAJCWFtX2Rlc3Ryb3koc3RhdGUpOwotCQljbG9zZV9hbGxfcGFja3ModGhlX3JlcG9zaXRvcnktPm9iamVjdHMpOworCQljbG9zZV9vYmplY3Rfc3RvcmUodGhlX3JlcG9zaXRvcnktPm9iamVjdHMpOwogCQlydW5fY29tbWFuZF92X29wdChhcmd2X2djX2F1dG8sIFJVTl9HSVRfQ01EKTsKIAl9CiB9CkBAIC0xODMxLDcgKzE4MTEsNyBAQAogCiAJc2F5KHN0YXRlLCBzdGRvdXQsIF8oIkFwcGx5aW5nOiAlLipzIiksIGxpbmVsZW4oc3RhdGUtPm1zZyksIHN0YXRlLT5tc2cpOwogCi0JaWYgKCFpbmRleF9oYXNfY2hhbmdlcygmdGhlX2luZGV4LCBOVUxMLCBOVUxMKSkgeworCWlmICghcmVwb19pbmRleF9oYXNfY2hhbmdlcyh0aGVfcmVwb3NpdG9yeSwgTlVMTCwgTlVMTCkpIHsKIAkJcHJpbnRmX2xuKF8oIk5vIGNoYW5nZXMgLSBkaWQgeW91IGZvcmdldCB0byB1c2UgJ2dpdCBhZGQnP1xuIgogCQkJIklmIHRoZXJlIGlzIG5vdGhpbmcgbGVmdCB0byBzdGFnZSwgY2hhbmNlcyBhcmUgdGhhdCBzb21ldGhpbmcgZWxzZVxuIgogCQkJImFscmVhZHkgaW50cm9kdWNlZCB0aGUgc2FtZSBjaGFuZ2VzOyB5b3UgbWlnaHQgd2FudCB0byBza2lwIHRoaXMgcGF0Y2guIikpOwpAQCAtMTk3MCw3ICsxOTUwLDcgQEAKIAlpZiAobWVyZ2VfdHJlZShyZW1vdGVfdHJlZSkpCiAJCXJldHVybiAtMTsKIAotCXJlbW92ZV9icmFuY2hfc3RhdGUoKTsKKwlyZW1vdmVfYnJhbmNoX3N0YXRlKHRoZV9yZXBvc2l0b3J5LCAwKTsKIAogCXJldHVybiAwOwogfQpAQCAtMTk4MSw3ICsxOTYxLDcgQEAKIHN0YXRpYyB2b2lkIGFtX3JlcmVyZV9jbGVhcih2b2lkKQogewogCXN0cnVjdCBzdHJpbmdfbGlzdCBtZXJnZV9yciA9IFNUUklOR19MSVNUX0lOSVRfRFVQOwotCXJlcmVyZV9jbGVhcigmbWVyZ2VfcnIpOworCXJlcmVyZV9jbGVhcih0aGVfcmVwb3NpdG9yeSwgJm1lcmdlX3JyKTsKIAlzdHJpbmdfbGlzdF9jbGVhcigmbWVyZ2VfcnIsIDEpOwogfQogCkBAIC0yMDAwLDYgKzE5ODAsMTUgQEAKIAlpZiAoY2xlYW5faW5kZXgoJmhlYWQsICZoZWFkKSkKIAkJZGllKF8oImZhaWxlZCB0byBjbGVhbiBpbmRleCIpKTsKIAorCWlmIChzdGF0ZS0+cmViYXNpbmcpIHsKKwkJRklMRSAqZnAgPSB4Zm9wZW4oYW1fcGF0aChzdGF0ZSwgInJld3JpdHRlbiIpLCAiYSIpOworCisJCWFzc2VydCghaXNfbnVsbF9vaWQoJnN0YXRlLT5vcmlnX2NvbW1pdCkpOworCQlmcHJpbnRmKGZwLCAiJXMgIiwgb2lkX3RvX2hleCgmc3RhdGUtPm9yaWdfY29tbWl0KSk7CisJCWZwcmludGYoZnAsICIlc1xuIiwgb2lkX3RvX2hleCgmaGVhZCkpOworCQlmY2xvc2UoZnApOworCX0KKwogCWFtX25leHQoc3RhdGUpOwogCWFtX2xvYWQoc3RhdGUpOwogCWFtX3J1bihzdGF0ZSwgMCk7CkBAIC0yMDc3LDcgKzIwNjYsNyBAQAogCWFtX2Rlc3Ryb3koc3RhdGUpOwogfQogCi1zdGF0aWMgaW50IHNob3dfcGF0Y2goc3RydWN0IGFtX3N0YXRlICpzdGF0ZSkKK3N0YXRpYyBpbnQgc2hvd19wYXRjaChzdHJ1Y3QgYW1fc3RhdGUgKnN0YXRlLCBlbnVtIHNob3dfcGF0Y2hfdHlwZSBzdWJfbW9kZSkKIHsKIAlzdHJ1Y3Qgc3RyYnVmIHNiID0gU1RSQlVGX0lOSVQ7CiAJY29uc3QgY2hhciAqcGF0Y2hfcGF0aDsKQEAgLTIwOTQsNyArMjA4MywxNyBAQAogCQlyZXR1cm4gcmV0OwogCX0KIAotCXBhdGNoX3BhdGggPSBhbV9wYXRoKHN0YXRlLCBtc2dudW0oc3RhdGUpKTsKKwlzd2l0Y2ggKHN1Yl9tb2RlKSB7CisJY2FzZSBTSE9XX1BBVENIX1JBVzoKKwkJcGF0Y2hfcGF0aCA9IGFtX3BhdGgoc3RhdGUsIG1zZ251bShzdGF0ZSkpOworCQlicmVhazsKKwljYXNlIFNIT1dfUEFUQ0hfRElGRjoKKwkJcGF0Y2hfcGF0aCA9IGFtX3BhdGgoc3RhdGUsICJwYXRjaCIpOworCQlicmVhazsKKwlkZWZhdWx0OgorCQlCVUcoImludmFsaWQgbW9kZSBmb3IgLS1zaG93LWN1cnJlbnQtcGF0Y2giKTsKKwl9CisKIAlsZW4gPSBzdHJidWZfcmVhZF9maWxlKCZzYiwgcGF0Y2hfcGF0aCwgMCk7CiAJaWYgKGxlbiA8IDApCiAJCWRpZV9lcnJubyhfKCJmYWlsZWQgdG8gcmVhZCAnJXMnIiksIHBhdGNoX3BhdGgpOwpAQCAtMjEyNSwxMiArMjEyNCwxNiBAQAogCQkqb3B0X3ZhbHVlID0gUEFUQ0hfRk9STUFUX0hHOwogCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAibWJveHJkIikpCiAJCSpvcHRfdmFsdWUgPSBQQVRDSF9GT1JNQVRfTUJPWFJEOworCS8qCisJICogUGxlYXNlIHVwZGF0ZSAkX19naXRfcGF0Y2hmb3JtYXQgaW4gZ2l0LWNvbXBsZXRpb24uYmFzaAorCSAqIHdoZW4geW91IGFkZCBuZXcgb3B0aW9ucworCSAqLwogCWVsc2UKIAkJcmV0dXJuIGVycm9yKF8oIkludmFsaWQgdmFsdWUgZm9yIC0tcGF0Y2gtZm9ybWF0OiAlcyIpLCBhcmcpOwogCXJldHVybiAwOwogfQogCi1lbnVtIHJlc3VtZV9tb2RlIHsKK2VudW0gcmVzdW1lX3R5cGUgewogCVJFU1VNRV9GQUxTRSA9IDAsCiAJUkVTVU1FX0FQUExZLAogCVJFU1VNRV9SRVNPTFZFRCwKQEAgLTIxNDAsNiArMjE0Myw0NSBAQAogCVJFU1VNRV9TSE9XX1BBVENICiB9OwogCitzdHJ1Y3QgcmVzdW1lX21vZGUgeworCWVudW0gcmVzdW1lX3R5cGUgbW9kZTsKKwllbnVtIHNob3dfcGF0Y2hfdHlwZSBzdWJfbW9kZTsKK307CisKK3N0YXRpYyBpbnQgcGFyc2Vfb3B0X3Nob3dfY3VycmVudF9wYXRjaChjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsIGNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQoreworCWludCAqb3B0X3ZhbHVlID0gb3B0LT52YWx1ZTsKKwlzdHJ1Y3QgcmVzdW1lX21vZGUgKnJlc3VtZSA9IGNvbnRhaW5lcl9vZihvcHRfdmFsdWUsIHN0cnVjdCByZXN1bWVfbW9kZSwgbW9kZSk7CisKKwkvKgorCSAqIFBsZWFzZSB1cGRhdGUgJF9fZ2l0X3Nob3djdXJyZW50cGF0Y2ggaW4gZ2l0LWNvbXBsZXRpb24uYmFzaAorCSAqIHdoZW4geW91IGFkZCBuZXcgb3B0aW9ucworCSAqLworCWNvbnN0IGNoYXIgKnZhbGlkX21vZGVzW10gPSB7CisJCVtTSE9XX1BBVENIX0RJRkZdID0gImRpZmYiLAorCQlbU0hPV19QQVRDSF9SQVddID0gInJhdyIKKwl9OworCWludCBuZXdfdmFsdWUgPSBTSE9XX1BBVENIX1JBVzsKKworCWlmIChhcmcpIHsKKwkJZm9yIChuZXdfdmFsdWUgPSAwOyBuZXdfdmFsdWUgPCBBUlJBWV9TSVpFKHZhbGlkX21vZGVzKTsgbmV3X3ZhbHVlKyspIHsKKwkJCWlmICghc3RyY21wKGFyZywgdmFsaWRfbW9kZXNbbmV3X3ZhbHVlXSkpCisJCQkJYnJlYWs7CisJCX0KKwkJaWYgKG5ld192YWx1ZSA+PSBBUlJBWV9TSVpFKHZhbGlkX21vZGVzKSkKKwkJCXJldHVybiBlcnJvcihfKCJJbnZhbGlkIHZhbHVlIGZvciAtLXNob3ctY3VycmVudC1wYXRjaDogJXMiKSwgYXJnKTsKKwl9CisKKwlpZiAocmVzdW1lLT5tb2RlID09IFJFU1VNRV9TSE9XX1BBVENIICYmIG5ld192YWx1ZSAhPSByZXN1bWUtPnN1Yl9tb2RlKQorCQlyZXR1cm4gZXJyb3IoXygiLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMgaXMgaW5jb21wYXRpYmxlIHdpdGggIgorCQkJICAgICAgICItLXNob3ctY3VycmVudC1wYXRjaD0lcyIpLAorCQkJICAgICBhcmcsIHZhbGlkX21vZGVzW3Jlc3VtZS0+c3ViX21vZGVdKTsKKworCXJlc3VtZS0+bW9kZSA9IFJFU1VNRV9TSE9XX1BBVENIOworCXJlc3VtZS0+c3ViX21vZGUgPSBuZXdfdmFsdWU7CisJcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBpbnQgZ2l0X2FtX2NvbmZpZyhjb25zdCBjaGFyICprLCBjb25zdCBjaGFyICp2LCB2b2lkICpjYikKIHsKIAlpbnQgc3RhdHVzOwpAQCAtMjE1Nyw3ICsyMTk5LDcgQEAKIAlpbnQgYmluYXJ5ID0gLTE7CiAJaW50IGtlZXBfY3IgPSAtMTsKIAlpbnQgcGF0Y2hfZm9ybWF0ID0gUEFUQ0hfRk9STUFUX1VOS05PV047Ci0JZW51bSByZXN1bWVfbW9kZSByZXN1bWUgPSBSRVNVTUVfRkFMU0U7CisJc3RydWN0IHJlc3VtZV9tb2RlIHJlc3VtZSA9IHsgLm1vZGUgPSBSRVNVTUVfRkFMU0UgfTsKIAlpbnQgaW5fcHJvZ3Jlc3M7CiAJaW50IHJldCA9IDA7CiAKQEAgLTIyMjYsMjQgKzIyNjgsMjYgQEAKIAkJCVBBUlNFX09QVF9OT0FSRyksCiAJCU9QVF9TVFJJTkcoMCwgInJlc29sdmVtc2ciLCAmc3RhdGUucmVzb2x2ZW1zZywgTlVMTCwKIAkJCU5fKCJvdmVycmlkZSBlcnJvciBtZXNzYWdlIHdoZW4gcGF0Y2ggZmFpbHVyZSBvY2N1cnMiKSksCi0JCU9QVF9DTURNT0RFKDAsICJjb250aW51ZSIsICZyZXN1bWUsCisJCU9QVF9DTURNT0RFKDAsICJjb250aW51ZSIsICZyZXN1bWUubW9kZSwKIAkJCU5fKCJjb250aW51ZSBhcHBseWluZyBwYXRjaGVzIGFmdGVyIHJlc29sdmluZyBhIGNvbmZsaWN0IiksCiAJCQlSRVNVTUVfUkVTT0xWRUQpLAotCQlPUFRfQ01ETU9ERSgncicsICJyZXNvbHZlZCIsICZyZXN1bWUsCisJCU9QVF9DTURNT0RFKCdyJywgInJlc29sdmVkIiwgJnJlc3VtZS5tb2RlLAogCQkJTl8oInN5bm9ueW1zIGZvciAtLWNvbnRpbnVlIiksCiAJCQlSRVNVTUVfUkVTT0xWRUQpLAotCQlPUFRfQ01ETU9ERSgwLCAic2tpcCIsICZyZXN1bWUsCisJCU9QVF9DTURNT0RFKDAsICJza2lwIiwgJnJlc3VtZS5tb2RlLAogCQkJTl8oInNraXAgdGhlIGN1cnJlbnQgcGF0Y2giKSwKIAkJCVJFU1VNRV9TS0lQKSwKLQkJT1BUX0NNRE1PREUoMCwgImFib3J0IiwgJnJlc3VtZSwKKwkJT1BUX0NNRE1PREUoMCwgImFib3J0IiwgJnJlc3VtZS5tb2RlLAogCQkJTl8oInJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgYWJvcnQgdGhlIHBhdGNoaW5nIG9wZXJhdGlvbi4iKSwKIAkJCVJFU1VNRV9BQk9SVCksCi0JCU9QVF9DTURNT0RFKDAsICJxdWl0IiwgJnJlc3VtZSwKKwkJT1BUX0NNRE1PREUoMCwgInF1aXQiLCAmcmVzdW1lLm1vZGUsCiAJCQlOXygiYWJvcnQgdGhlIHBhdGNoaW5nIG9wZXJhdGlvbiBidXQga2VlcCBIRUFEIHdoZXJlIGl0IGlzLiIpLAogCQkJUkVTVU1FX1FVSVQpLAotCQlPUFRfQ01ETU9ERSgwLCAic2hvdy1jdXJyZW50LXBhdGNoIiwgJnJlc3VtZSwKLQkJCU5fKCJzaG93IHRoZSBwYXRjaCBiZWluZyBhcHBsaWVkLiIpLAotCQkJUkVTVU1FX1NIT1dfUEFUQ0gpLAorCQl7IE9QVElPTl9DQUxMQkFDSywgMCwgInNob3ctY3VycmVudC1wYXRjaCIsICZyZXN1bWUubW9kZSwKKwkJICAiKGRpZmZ8cmF3KSIsCisJCSAgTl8oInNob3cgdGhlIHBhdGNoIGJlaW5nIGFwcGxpZWQiKSwKKwkJICBQQVJTRV9PUFRfQ01ETU9ERSB8IFBBUlNFX09QVF9PUFRBUkcgfCBQQVJTRV9PUFRfTk9ORUcgfCBQQVJTRV9PUFRfTElURVJBTF9BUkdIRUxQLAorCQkgIHBhcnNlX29wdF9zaG93X2N1cnJlbnRfcGF0Y2gsIFJFU1VNRV9TSE9XX1BBVENIIH0sCiAJCU9QVF9CT09MKDAsICJjb21taXR0ZXItZGF0ZS1pcy1hdXRob3ItZGF0ZSIsCiAJCQkmc3RhdGUuY29tbWl0dGVyX2RhdGVfaXNfYXV0aG9yX2RhdGUsCiAJCQlOXygibGllIGFib3V0IGNvbW1pdHRlciBkYXRlIikpLApAQCAtMjI3OCw3ICsyMzIyLDcgQEAKIAkvKiBFbnN1cmUgYSB2YWxpZCBjb21taXR0ZXIgaWRlbnQgY2FuIGJlIGNvbnN0cnVjdGVkICovCiAJZ2l0X2NvbW1pdHRlcl9pbmZvKElERU5UX1NUUklDVCk7CiAKLQlpZiAocmVhZF9pbmRleF9wcmVsb2FkKCZ0aGVfaW5kZXgsIE5VTEwsIDApIDwgMCkKKwlpZiAocmVwb19yZWFkX2luZGV4X3ByZWxvYWQodGhlX3JlcG9zaXRvcnksIE5VTEwsIDApIDwgMCkKIAkJZGllKF8oImZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIpKTsKIAogCWlmIChpbl9wcm9ncmVzcykgewpAQCAtMjI5MywxMiArMjMzNywxMiBAQAogCQkgKiAgICBpbnRlbmQgdG8gZmVlZCB1cyBhIHBhdGNoIGJ1dCB3YW50ZWQgdG8gY29udGludWUKIAkJICogICAgdW5hdHRlbmRlZC4KIAkJICovCi0JCWlmIChhcmdjIHx8IChyZXN1bWUgPT0gUkVTVU1FX0ZBTFNFICYmICFpc2F0dHkoMCkpKQorCQlpZiAoYXJnYyB8fCAocmVzdW1lLm1vZGUgPT0gUkVTVU1FX0ZBTFNFICYmICFpc2F0dHkoMCkpKQogCQkJZGllKF8oInByZXZpb3VzIHJlYmFzZSBkaXJlY3RvcnkgJXMgc3RpbGwgZXhpc3RzIGJ1dCBtYm94IGdpdmVuLiIpLAogCQkJCXN0YXRlLmRpcik7CiAKLQkJaWYgKHJlc3VtZSA9PSBSRVNVTUVfRkFMU0UpCi0JCQlyZXN1bWUgPSBSRVNVTUVfQVBQTFk7CisJCWlmIChyZXN1bWUubW9kZSA9PSBSRVNVTUVfRkFMU0UpCisJCQlyZXN1bWUubW9kZSA9IFJFU1VNRV9BUFBMWTsKIAogCQlpZiAoc3RhdGUuc2lnbm9mZiA9PSBTSUdOT0ZGX0VYUExJQ0lUKQogCQkJYW1fYXBwZW5kX3NpZ25vZmYoJnN0YXRlKTsKQEAgLTIzMTIsNyArMjM1Niw3IEBACiAJCSAqIHN0cmF5IGRpcmVjdG9yaWVzLgogCQkgKi8KIAkJaWYgKGZpbGVfZXhpc3RzKHN0YXRlLmRpcikgJiYgIXN0YXRlLnJlYmFzaW5nKSB7Ci0JCQlpZiAocmVzdW1lID09IFJFU1VNRV9BQk9SVCB8fCByZXN1bWUgPT0gUkVTVU1FX1FVSVQpIHsKKwkJCWlmIChyZXN1bWUubW9kZSA9PSBSRVNVTUVfQUJPUlQgfHwgcmVzdW1lLm1vZGUgPT0gUkVTVU1FX1FVSVQpIHsKIAkJCQlhbV9kZXN0cm95KCZzdGF0ZSk7CiAJCQkJYW1fc3RhdGVfcmVsZWFzZSgmc3RhdGUpOwogCQkJCXJldHVybiAwOwpAQCAtMjMyMyw3ICsyMzY3LDcgQEAKIAkJCQlzdGF0ZS5kaXIpOwogCQl9CiAKLQkJaWYgKHJlc3VtZSkKKwkJaWYgKHJlc3VtZS5tb2RlKQogCQkJZGllKF8oIlJlc29sdmUgb3BlcmF0aW9uIG5vdCBpbiBwcm9ncmVzcywgd2UgYXJlIG5vdCByZXN1bWluZy4iKSk7CiAKIAkJZm9yIChpID0gMDsgaSA8IGFyZ2M7IGkrKykgewpAQCAtMjMzMywxMiArMjM3NywxNSBAQAogCQkJCWFyZ3ZfYXJyYXlfcHVzaCgmcGF0aHMsIG1rcGF0aCgiJXMvJXMiLCBwcmVmaXgsIGFyZ3ZbaV0pKTsKIAkJfQogCisJCWlmIChzdGF0ZS5pbnRlcmFjdGl2ZSAmJiAhcGF0aHMuYXJnYykKKwkJCWRpZShfKCJpbnRlcmFjdGl2ZSBtb2RlIHJlcXVpcmVzIHBhdGNoZXMgb24gdGhlIGNvbW1hbmQgbGluZSIpKTsKKwogCQlhbV9zZXR1cCgmc3RhdGUsIHBhdGNoX2Zvcm1hdCwgcGF0aHMuYXJndiwga2VlcF9jcik7CiAKIAkJYXJndl9hcnJheV9jbGVhcigmcGF0aHMpOwogCX0KIAotCXN3aXRjaCAocmVzdW1lKSB7CisJc3dpdGNoIChyZXN1bWUubW9kZSkgewogCWNhc2UgUkVTVU1FX0ZBTFNFOgogCQlhbV9ydW4oJnN0YXRlLCAwKTsKIAkJYnJlYWs7CkBAIC0yMzU5LDcgKzI0MDYsNyBAQAogCQlhbV9kZXN0cm95KCZzdGF0ZSk7CiAJCWJyZWFrOwogCWNhc2UgUkVTVU1FX1NIT1dfUEFUQ0g6Ci0JCXJldCA9IHNob3dfcGF0Y2goJnN0YXRlKTsKKwkJcmV0ID0gc2hvd19wYXRjaCgmc3RhdGUsIHJlc3VtZS5zdWJfbW9kZSk7CiAJCWJyZWFrOwogCWRlZmF1bHQ6CiAJCUJVRygiaW52YWxpZCByZXN1bWUgdmFsdWUiKTsKZGlmZiAtLWdpdCBhL2J1aWx0aW4vYXJjaGl2ZS5jIGIvYnVpbHRpbi9hcmNoaXZlLmMKaW5kZXggZDI0NTUyMy4uNDVkMTE2NiAxMDA2NDQKLS0tIGEvYnVpbHRpbi9hcmNoaXZlLmMKKysrIGIvYnVpbHRpbi9hcmNoaXZlLmMKQEAgLTI3LDEwICsyNywxMCBAQAogCQkJICAgICAgIGNvbnN0IGNoYXIgKnJlbW90ZSwgY29uc3QgY2hhciAqZXhlYywKIAkJCSAgICAgICBjb25zdCBjaGFyICpuYW1lX2hpbnQpCiB7Ci0JY2hhciAqYnVmOwogCWludCBmZFsyXSwgaSwgcnY7CiAJc3RydWN0IHRyYW5zcG9ydCAqdHJhbnNwb3J0OwogCXN0cnVjdCByZW1vdGUgKl9yZW1vdGU7CisJc3RydWN0IHBhY2tldF9yZWFkZXIgcmVhZGVyOwogCiAJX3JlbW90ZSA9IHJlbW90ZV9nZXQocmVtb3RlKTsKIAlpZiAoIV9yZW1vdGUtPnVybFswXSkKQEAgLTUzLDE4ICs1MywxOSBAQAogCQlwYWNrZXRfd3JpdGVfZm10KGZkWzFdLCAiYXJndW1lbnQgJXNcbiIsIGFyZ3ZbaV0pOwogCXBhY2tldF9mbHVzaChmZFsxXSk7CiAKLQlidWYgPSBwYWNrZXRfcmVhZF9saW5lKGZkWzBdLCBOVUxMKTsKLQlpZiAoIWJ1ZikKKwlwYWNrZXRfcmVhZGVyX2luaXQoJnJlYWRlciwgZmRbMF0sIE5VTEwsIDAsCisJCQkgICBQQUNLRVRfUkVBRF9DSE9NUF9ORVdMSU5FIHwKKwkJCSAgIFBBQ0tFVF9SRUFEX0RJRV9PTl9FUlJfUEFDS0VUKTsKKworCWlmIChwYWNrZXRfcmVhZGVyX3JlYWQoJnJlYWRlcikgIT0gUEFDS0VUX1JFQURfTk9STUFMKQogCQlkaWUoXygiZ2l0IGFyY2hpdmU6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCBhIGZsdXNoIHBhY2tldCIpKTsKLQlpZiAoc3RyY21wKGJ1ZiwgIkFDSyIpKSB7Ci0JCWlmIChzdGFydHNfd2l0aChidWYsICJOQUNLICIpKQotCQkJZGllKF8oImdpdCBhcmNoaXZlOiBOQUNLICVzIiksIGJ1ZiArIDUpOwotCQlpZiAoc3RhcnRzX3dpdGgoYnVmLCAiRVJSICIpKQotCQkJZGllKF8oInJlbW90ZSBlcnJvcjogJXMiKSwgYnVmICsgNCk7CisJaWYgKHN0cmNtcChyZWFkZXIubGluZSwgIkFDSyIpKSB7CisJCWlmIChzdGFydHNfd2l0aChyZWFkZXIubGluZSwgIk5BQ0sgIikpCisJCQlkaWUoXygiZ2l0IGFyY2hpdmU6IE5BQ0sgJXMiKSwgcmVhZGVyLmxpbmUgKyA1KTsKIAkJZGllKF8oImdpdCBhcmNoaXZlOiBwcm90b2NvbCBlcnJvciIpKTsKIAl9CiAKLQlpZiAocGFja2V0X3JlYWRfbGluZShmZFswXSwgTlVMTCkpCisJaWYgKHBhY2tldF9yZWFkZXJfcmVhZCgmcmVhZGVyKSAhPSBQQUNLRVRfUkVBRF9GTFVTSCkKIAkJZGllKF8oImdpdCBhcmNoaXZlOiBleHBlY3RlZCBhIGZsdXNoIikpOwogCiAJLyogTm93LCBzdGFydCByZWFkaW5nIGZyb20gZmRbMF0gYW5kIHNwaXQgaXQgb3V0IHRvIHN0ZG91dCAqLwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jIGIvYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jCmluZGV4IDRiNWZhZGMuLmMxYzQwYjUgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYworKysgYi9idWlsdGluL2Jpc2VjdC0taGVscGVyLmMKQEAgLTMsMTggKzMsNTggQEAKICNpbmNsdWRlICJwYXJzZS1vcHRpb25zLmgiCiAjaW5jbHVkZSAiYmlzZWN0LmgiCiAjaW5jbHVkZSAicmVmcy5oIgorI2luY2x1ZGUgImRpci5oIgorI2luY2x1ZGUgImFyZ3YtYXJyYXkuaCIKKyNpbmNsdWRlICJydW4tY29tbWFuZC5oIgorI2luY2x1ZGUgInByb21wdC5oIgorI2luY2x1ZGUgInF1b3RlLmgiCiAKIHN0YXRpYyBHSVRfUEFUSF9GVU5DKGdpdF9wYXRoX2Jpc2VjdF90ZXJtcywgIkJJU0VDVF9URVJNUyIpCiBzdGF0aWMgR0lUX1BBVEhfRlVOQyhnaXRfcGF0aF9iaXNlY3RfZXhwZWN0ZWRfcmV2LCAiQklTRUNUX0VYUEVDVEVEX1JFViIpCiBzdGF0aWMgR0lUX1BBVEhfRlVOQyhnaXRfcGF0aF9iaXNlY3RfYW5jZXN0b3JzX29rLCAiQklTRUNUX0FOQ0VTVE9SU19PSyIpCitzdGF0aWMgR0lUX1BBVEhfRlVOQyhnaXRfcGF0aF9iaXNlY3Rfc3RhcnQsICJCSVNFQ1RfU1RBUlQiKQorc3RhdGljIEdJVF9QQVRIX0ZVTkMoZ2l0X3BhdGhfYmlzZWN0X2hlYWQsICJCSVNFQ1RfSEVBRCIpCitzdGF0aWMgR0lUX1BBVEhfRlVOQyhnaXRfcGF0aF9iaXNlY3RfbG9nLCAiQklTRUNUX0xPRyIpCitzdGF0aWMgR0lUX1BBVEhfRlVOQyhnaXRfcGF0aF9oZWFkX25hbWUsICJoZWFkLW5hbWUiKQorc3RhdGljIEdJVF9QQVRIX0ZVTkMoZ2l0X3BhdGhfYmlzZWN0X25hbWVzLCAiQklTRUNUX05BTUVTIikKIAogc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBnaXRfYmlzZWN0X2hlbHBlcl91c2FnZVtdID0gewogCU5fKCJnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCBbLS1uby1jaGVja291dF0iKSwKIAlOXygiZ2l0IGJpc2VjdC0taGVscGVyIC0td3JpdGUtdGVybXMgPGJhZF90ZXJtPiA8Z29vZF90ZXJtPiIpLAogCU5fKCJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2xlYW4tc3RhdGUiKSwKKwlOXygiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXJlc2V0IFs8Y29tbWl0Pl0iKSwKKwlOXygiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPHN0YXRlPiA8cmV2aXNpb24+IDxnb29kX3Rlcm0+IDxiYWRfdGVybT4iKSwKKwlOXygiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNoZWNrLWFuZC1zZXQtdGVybXMgPGNvbW1hbmQ+IDxnb29kX3Rlcm0+IDxiYWRfdGVybT4iKSwKKwlOXygiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LW5leHQtY2hlY2sgPGdvb2RfdGVybT4gPGJhZF90ZXJtPiBbPHRlcm0+XSIpLAorCU5fKCJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtdGVybXMgWy0tdGVybS1nb29kIHwgLS10ZXJtLW9sZCB8IC0tdGVybS1iYWQgfCAtLXRlcm0tbmV3XSIpLAorCU5fKCJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtc3RhcnQgWy0tdGVybS17b2xkLGdvb2R9PTx0ZXJtPiAtLXRlcm0te25ldyxiYWR9PTx0ZXJtPl0iCisJCQkJCSAgICAgIlstLW5vLWNoZWNrb3V0XSBbPGJhZD4gWzxnb29kPi4uLl1dIFstLV0gWzxwYXRocz4uLi5dIiksCiAJTlVMTAogfTsKIAorc3RydWN0IGJpc2VjdF90ZXJtcyB7CisJY2hhciAqdGVybV9nb29kOworCWNoYXIgKnRlcm1fYmFkOworfTsKKworc3RhdGljIHZvaWQgZnJlZV90ZXJtcyhzdHJ1Y3QgYmlzZWN0X3Rlcm1zICp0ZXJtcykKK3sKKwlGUkVFX0FORF9OVUxMKHRlcm1zLT50ZXJtX2dvb2QpOworCUZSRUVfQU5EX05VTEwodGVybXMtPnRlcm1fYmFkKTsKK30KKworc3RhdGljIHZvaWQgc2V0X3Rlcm1zKHN0cnVjdCBiaXNlY3RfdGVybXMgKnRlcm1zLCBjb25zdCBjaGFyICpiYWQsCisJCSAgICAgIGNvbnN0IGNoYXIgKmdvb2QpCit7CisJZnJlZSgodm9pZCAqKXRlcm1zLT50ZXJtX2dvb2QpOworCXRlcm1zLT50ZXJtX2dvb2QgPSB4c3RyZHVwKGdvb2QpOworCWZyZWUoKHZvaWQgKil0ZXJtcy0+dGVybV9iYWQpOworCXRlcm1zLT50ZXJtX2JhZCA9IHhzdHJkdXAoYmFkKTsKK30KKworc3RhdGljIGNvbnN0IGNoYXIgdm9jYWJfYmFkW10gPSAiYmFkfG5ldyI7CitzdGF0aWMgY29uc3QgY2hhciB2b2NhYl9nb29kW10gPSAiZ29vZHxvbGQiOworCiAvKgogICogQ2hlY2sgd2hldGhlciB0aGUgc3RyaW5nIGB0ZXJtYCBiZWxvbmdzIHRvIHRoZSBzZXQgb2Ygc3RyaW5ncwogICogaW5jbHVkZWQgaW4gdGhlIHZhcmlhYmxlIGFyZ3VtZW50cy4KQEAgLTEwNiwxNSArMTQ2LDQ4OCBAQAogCX0KIH0KIAorc3RhdGljIGludCBiaXNlY3RfcmVzZXQoY29uc3QgY2hhciAqY29tbWl0KQoreworCXN0cnVjdCBzdHJidWYgYnJhbmNoID0gU1RSQlVGX0lOSVQ7CisKKwlpZiAoIWNvbW1pdCkgeworCQlpZiAoc3RyYnVmX3JlYWRfZmlsZSgmYnJhbmNoLCBnaXRfcGF0aF9iaXNlY3Rfc3RhcnQoKSwgMCkgPCAxKSB7CisJCQlwcmludGYoXygiV2UgYXJlIG5vdCBiaXNlY3RpbmcuXG4iKSk7CisJCQlyZXR1cm4gMDsKKwkJfQorCQlzdHJidWZfcnRyaW0oJmJyYW5jaCk7CisJfSBlbHNlIHsKKwkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CisKKwkJaWYgKGdldF9vaWRfY29tbWl0KGNvbW1pdCwgJm9pZCkpCisJCQlyZXR1cm4gZXJyb3IoXygiJyVzJyBpcyBub3QgYSB2YWxpZCBjb21taXQiKSwgY29tbWl0KTsKKwkJc3RyYnVmX2FkZHN0cigmYnJhbmNoLCBjb21taXQpOworCX0KKworCWlmICghZmlsZV9leGlzdHMoZ2l0X3BhdGhfYmlzZWN0X2hlYWQoKSkpIHsKKwkJc3RydWN0IGFyZ3ZfYXJyYXkgYXJndiA9IEFSR1ZfQVJSQVlfSU5JVDsKKworCQlhcmd2X2FycmF5X3B1c2hsKCZhcmd2LCAiY2hlY2tvdXQiLCBicmFuY2guYnVmLCAiLS0iLCBOVUxMKTsKKwkJaWYgKHJ1bl9jb21tYW5kX3Zfb3B0KGFyZ3YuYXJndiwgUlVOX0dJVF9DTUQpKSB7CisJCQllcnJvcihfKCJjb3VsZCBub3QgY2hlY2sgb3V0IG9yaWdpbmFsIgorCQkJCSIgSEVBRCAnJXMnLiBUcnkgJ2dpdCBiaXNlY3QiCisJCQkJIiByZXNldCA8Y29tbWl0PicuIiksIGJyYW5jaC5idWYpOworCQkJc3RyYnVmX3JlbGVhc2UoJmJyYW5jaCk7CisJCQlhcmd2X2FycmF5X2NsZWFyKCZhcmd2KTsKKwkJCXJldHVybiAtMTsKKwkJfQorCQlhcmd2X2FycmF5X2NsZWFyKCZhcmd2KTsKKwl9CisKKwlzdHJidWZfcmVsZWFzZSgmYnJhbmNoKTsKKwlyZXR1cm4gYmlzZWN0X2NsZWFuX3N0YXRlKCk7Cit9CisKK3N0YXRpYyB2b2lkIGxvZ19jb21taXQoRklMRSAqZnAsIGNoYXIgKmZtdCwgY29uc3QgY2hhciAqc3RhdGUsCisJCSAgICAgICBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCit7CisJc3RydWN0IHByZXR0eV9wcmludF9jb250ZXh0IHBwID0gezB9OworCXN0cnVjdCBzdHJidWYgY29tbWl0X21zZyA9IFNUUkJVRl9JTklUOworCWNoYXIgKmxhYmVsID0geHN0cmZtdChmbXQsIHN0YXRlKTsKKworCWZvcm1hdF9jb21taXRfbWVzc2FnZShjb21taXQsICIlcyIsICZjb21taXRfbXNnLCAmcHApOworCisJZnByaW50ZihmcCwgIiMgJXM6IFslc10gJXNcbiIsIGxhYmVsLCBvaWRfdG9faGV4KCZjb21taXQtPm9iamVjdC5vaWQpLAorCQljb21taXRfbXNnLmJ1Zik7CisKKwlzdHJidWZfcmVsZWFzZSgmY29tbWl0X21zZyk7CisJZnJlZShsYWJlbCk7Cit9CisKK3N0YXRpYyBpbnQgYmlzZWN0X3dyaXRlKGNvbnN0IGNoYXIgKnN0YXRlLCBjb25zdCBjaGFyICpyZXYsCisJCQljb25zdCBzdHJ1Y3QgYmlzZWN0X3Rlcm1zICp0ZXJtcywgaW50IG5vbG9nKQoreworCXN0cnVjdCBzdHJidWYgdGFnID0gU1RSQlVGX0lOSVQ7CisJc3RydWN0IG9iamVjdF9pZCBvaWQ7CisJc3RydWN0IGNvbW1pdCAqY29tbWl0OworCUZJTEUgKmZwID0gTlVMTDsKKwlpbnQgcmVzID0gMDsKKworCWlmICghc3RyY21wKHN0YXRlLCB0ZXJtcy0+dGVybV9iYWQpKSB7CisJCXN0cmJ1Zl9hZGRmKCZ0YWcsICJyZWZzL2Jpc2VjdC8lcyIsIHN0YXRlKTsKKwl9IGVsc2UgaWYgKG9uZV9vZihzdGF0ZSwgdGVybXMtPnRlcm1fZ29vZCwgInNraXAiLCBOVUxMKSkgeworCQlzdHJidWZfYWRkZigmdGFnLCAicmVmcy9iaXNlY3QvJXMtJXMiLCBzdGF0ZSwgcmV2KTsKKwl9IGVsc2UgeworCQlyZXMgPSBlcnJvcihfKCJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiAlcyIpLCBzdGF0ZSk7CisJCWdvdG8gZmluaXNoOworCX0KKworCWlmIChnZXRfb2lkKHJldiwgJm9pZCkpIHsKKwkJcmVzID0gZXJyb3IoXygiY291bGRuJ3QgZ2V0IHRoZSBvaWQgb2YgdGhlIHJldiAnJXMnIiksIHJldik7CisJCWdvdG8gZmluaXNoOworCX0KKworCWlmICh1cGRhdGVfcmVmKE5VTEwsIHRhZy5idWYsICZvaWQsIE5VTEwsIDAsCisJCSAgICAgICBVUERBVEVfUkVGU19NU0dfT05fRVJSKSkgeworCQlyZXMgPSAtMTsKKwkJZ290byBmaW5pc2g7CisJfQorCisJZnAgPSBmb3BlbihnaXRfcGF0aF9iaXNlY3RfbG9nKCksICJhIik7CisJaWYgKCFmcCkgeworCQlyZXMgPSBlcnJvcl9lcnJubyhfKCJjb3VsZG4ndCBvcGVuIHRoZSBmaWxlICclcyciKSwgZ2l0X3BhdGhfYmlzZWN0X2xvZygpKTsKKwkJZ290byBmaW5pc2g7CisJfQorCisJY29tbWl0ID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2UodGhlX3JlcG9zaXRvcnksICZvaWQpOworCWxvZ19jb21taXQoZnAsICIlcyIsIHN0YXRlLCBjb21taXQpOworCisJaWYgKCFub2xvZykKKwkJZnByaW50ZihmcCwgImdpdCBiaXNlY3QgJXMgJXNcbiIsIHN0YXRlLCByZXYpOworCitmaW5pc2g6CisJaWYgKGZwKQorCQlmY2xvc2UoZnApOworCXN0cmJ1Zl9yZWxlYXNlKCZ0YWcpOworCXJldHVybiByZXM7Cit9CisKK3N0YXRpYyBpbnQgY2hlY2tfYW5kX3NldF90ZXJtcyhzdHJ1Y3QgYmlzZWN0X3Rlcm1zICp0ZXJtcywgY29uc3QgY2hhciAqY21kKQoreworCWludCBoYXNfdGVybV9maWxlID0gIWlzX2VtcHR5X29yX21pc3NpbmdfZmlsZShnaXRfcGF0aF9iaXNlY3RfdGVybXMoKSk7CisKKwlpZiAob25lX29mKGNtZCwgInNraXAiLCAic3RhcnQiLCAidGVybXMiLCBOVUxMKSkKKwkJcmV0dXJuIDA7CisKKwlpZiAoaGFzX3Rlcm1fZmlsZSAmJiBzdHJjbXAoY21kLCB0ZXJtcy0+dGVybV9iYWQpICYmCisJICAgIHN0cmNtcChjbWQsIHRlcm1zLT50ZXJtX2dvb2QpKQorCQlyZXR1cm4gZXJyb3IoXygiSW52YWxpZCBjb21tYW5kOiB5b3UncmUgY3VycmVudGx5IGluIGEgIgorCQkJCSIlcy8lcyBiaXNlY3QiKSwgdGVybXMtPnRlcm1fYmFkLAorCQkJCXRlcm1zLT50ZXJtX2dvb2QpOworCisJaWYgKCFoYXNfdGVybV9maWxlKSB7CisJCWlmIChvbmVfb2YoY21kLCAiYmFkIiwgImdvb2QiLCBOVUxMKSkgeworCQkJc2V0X3Rlcm1zKHRlcm1zLCAiYmFkIiwgImdvb2QiKTsKKwkJCXJldHVybiB3cml0ZV90ZXJtcyh0ZXJtcy0+dGVybV9iYWQsIHRlcm1zLT50ZXJtX2dvb2QpOworCQl9CisJCWlmIChvbmVfb2YoY21kLCAibmV3IiwgIm9sZCIsIE5VTEwpKSB7CisJCQlzZXRfdGVybXModGVybXMsICJuZXciLCAib2xkIik7CisJCQlyZXR1cm4gd3JpdGVfdGVybXModGVybXMtPnRlcm1fYmFkLCB0ZXJtcy0+dGVybV9nb29kKTsKKwkJfQorCX0KKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IG1hcmtfZ29vZChjb25zdCBjaGFyICpyZWZuYW1lLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCSAgICAgaW50IGZsYWcsIHZvaWQgKmNiX2RhdGEpCit7CisJaW50ICptX2dvb2QgPSAoaW50ICopY2JfZGF0YTsKKwkqbV9nb29kID0gMDsKKwlyZXR1cm4gMTsKK30KKworc3RhdGljIGNvbnN0IGNoYXIgbmVlZF9iYWRfYW5kX2dvb2RfcmV2aXNpb25fd2FybmluZ1tdID0KKwlOXygiWW91IG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJXMgYW5kICVzIHJldmlzaW9uLlxuIgorCSAgICJZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJXNcIiBhbmQgXCJnaXQgYmlzZWN0ICVzXCIgZm9yIHRoYXQuIik7CisKK3N0YXRpYyBjb25zdCBjaGFyIG5lZWRfYmlzZWN0X3N0YXJ0X3dhcm5pbmdbXSA9CisJTl8oIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgorCSAgICJZb3UgdGhlbiBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICVzIGFuZCAlcyByZXZpc2lvbi5cbiIKKwkgICAiWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICVzXCIgYW5kIFwiZ2l0IGJpc2VjdCAlc1wiIGZvciB0aGF0LiIpOworCitzdGF0aWMgaW50IGRlY2lkZV9uZXh0KGNvbnN0IHN0cnVjdCBiaXNlY3RfdGVybXMgKnRlcm1zLAorCQkgICAgICAgY29uc3QgY2hhciAqY3VycmVudF90ZXJtLCBpbnQgbWlzc2luZ19nb29kLAorCQkgICAgICAgaW50IG1pc3NpbmdfYmFkKQoreworCWlmICghbWlzc2luZ19nb29kICYmICFtaXNzaW5nX2JhZCkKKwkJcmV0dXJuIDA7CisJaWYgKCFjdXJyZW50X3Rlcm0pCisJCXJldHVybiAtMTsKKworCWlmIChtaXNzaW5nX2dvb2QgJiYgIW1pc3NpbmdfYmFkICYmCisJICAgICFzdHJjbXAoY3VycmVudF90ZXJtLCB0ZXJtcy0+dGVybV9nb29kKSkgeworCQljaGFyICp5ZXNubzsKKwkJLyoKKwkJICogaGF2ZSBiYWQgKG9yIG5ldykgYnV0IG5vdCBnb29kIChvciBvbGQpLiBXZSBjb3VsZCBiaXNlY3QKKwkJICogYWx0aG91Z2ggdGhpcyBpcyBsZXNzIG9wdGltdW0uCisJCSAqLworCQl3YXJuaW5nKF8oImJpc2VjdGluZyBvbmx5IHdpdGggYSAlcyBjb21taXQiKSwgdGVybXMtPnRlcm1fYmFkKTsKKwkJaWYgKCFpc2F0dHkoMCkpCisJCQlyZXR1cm4gMDsKKwkJLyoKKwkJICogVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtZXSBhbmQgW25dIGluIHlvdXIKKwkJICogdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAorCQkgKiBhdCB0aGlzIHBvaW50LgorCQkgKi8KKwkJeWVzbm8gPSBnaXRfcHJvbXB0KF8oIkFyZSB5b3Ugc3VyZSBbWS9uXT8gIiksIFBST01QVF9FQ0hPKTsKKwkJaWYgKHN0YXJ0c193aXRoKHllc25vLCAiTiIpIHx8IHN0YXJ0c193aXRoKHllc25vLCAibiIpKQorCQkJcmV0dXJuIC0xOworCQlyZXR1cm4gMDsKKwl9CisKKwlpZiAoIWlzX2VtcHR5X29yX21pc3NpbmdfZmlsZShnaXRfcGF0aF9iaXNlY3Rfc3RhcnQoKSkpCisJCXJldHVybiBlcnJvcihfKG5lZWRfYmFkX2FuZF9nb29kX3JldmlzaW9uX3dhcm5pbmcpLAorCQkJICAgICB2b2NhYl9iYWQsIHZvY2FiX2dvb2QsIHZvY2FiX2JhZCwgdm9jYWJfZ29vZCk7CisJZWxzZQorCQlyZXR1cm4gZXJyb3IoXyhuZWVkX2Jpc2VjdF9zdGFydF93YXJuaW5nKSwKKwkJCSAgICAgdm9jYWJfZ29vZCwgdm9jYWJfYmFkLCB2b2NhYl9nb29kLCB2b2NhYl9iYWQpOworfQorCitzdGF0aWMgaW50IGJpc2VjdF9uZXh0X2NoZWNrKGNvbnN0IHN0cnVjdCBiaXNlY3RfdGVybXMgKnRlcm1zLAorCQkJICAgICBjb25zdCBjaGFyICpjdXJyZW50X3Rlcm0pCit7CisJaW50IG1pc3NpbmdfZ29vZCA9IDEsIG1pc3NpbmdfYmFkID0gMTsKKwljaGFyICpiYWRfcmVmID0geHN0cmZtdCgicmVmcy9iaXNlY3QvJXMiLCB0ZXJtcy0+dGVybV9iYWQpOworCWNoYXIgKmdvb2RfZ2xvYiA9IHhzdHJmbXQoIiVzLSoiLCB0ZXJtcy0+dGVybV9nb29kKTsKKworCWlmIChyZWZfZXhpc3RzKGJhZF9yZWYpKQorCQltaXNzaW5nX2JhZCA9IDA7CisKKwlmb3JfZWFjaF9nbG9iX3JlZl9pbihtYXJrX2dvb2QsIGdvb2RfZ2xvYiwgInJlZnMvYmlzZWN0LyIsCisJCQkgICAgICh2b2lkICopICZtaXNzaW5nX2dvb2QpOworCisJZnJlZShnb29kX2dsb2IpOworCWZyZWUoYmFkX3JlZik7CisKKwlyZXR1cm4gZGVjaWRlX25leHQodGVybXMsIGN1cnJlbnRfdGVybSwgbWlzc2luZ19nb29kLCBtaXNzaW5nX2JhZCk7Cit9CisKK3N0YXRpYyBpbnQgZ2V0X3Rlcm1zKHN0cnVjdCBiaXNlY3RfdGVybXMgKnRlcm1zKQoreworCXN0cnVjdCBzdHJidWYgc3RyID0gU1RSQlVGX0lOSVQ7CisJRklMRSAqZnAgPSBOVUxMOworCWludCByZXMgPSAwOworCisJZnAgPSBmb3BlbihnaXRfcGF0aF9iaXNlY3RfdGVybXMoKSwgInIiKTsKKwlpZiAoIWZwKSB7CisJCXJlcyA9IC0xOworCQlnb3RvIGZpbmlzaDsKKwl9CisKKwlmcmVlX3Rlcm1zKHRlcm1zKTsKKwlzdHJidWZfZ2V0bGluZV9sZigmc3RyLCBmcCk7CisJdGVybXMtPnRlcm1fYmFkID0gc3RyYnVmX2RldGFjaCgmc3RyLCBOVUxMKTsKKwlzdHJidWZfZ2V0bGluZV9sZigmc3RyLCBmcCk7CisJdGVybXMtPnRlcm1fZ29vZCA9IHN0cmJ1Zl9kZXRhY2goJnN0ciwgTlVMTCk7CisKK2ZpbmlzaDoKKwlpZiAoZnApCisJCWZjbG9zZShmcCk7CisJc3RyYnVmX3JlbGVhc2UoJnN0cik7CisJcmV0dXJuIHJlczsKK30KKworc3RhdGljIGludCBiaXNlY3RfdGVybXMoc3RydWN0IGJpc2VjdF90ZXJtcyAqdGVybXMsIGNvbnN0IGNoYXIgKm9wdGlvbikKK3sKKwlpZiAoZ2V0X3Rlcm1zKHRlcm1zKSkKKwkJcmV0dXJuIGVycm9yKF8oIm5vIHRlcm1zIGRlZmluZWQiKSk7CisKKwlpZiAob3B0aW9uID09IE5VTEwpIHsKKwkJcHJpbnRmKF8oIllvdXIgY3VycmVudCB0ZXJtcyBhcmUgJXMgZm9yIHRoZSBvbGQgc3RhdGVcbiIKKwkJCSAiYW5kICVzIGZvciB0aGUgbmV3IHN0YXRlLlxuIiksCisJCSAgICAgICB0ZXJtcy0+dGVybV9nb29kLCB0ZXJtcy0+dGVybV9iYWQpOworCQlyZXR1cm4gMDsKKwl9CisJaWYgKG9uZV9vZihvcHRpb24sICItLXRlcm0tZ29vZCIsICItLXRlcm0tb2xkIiwgTlVMTCkpCisJCXByaW50ZigiJXNcbiIsIHRlcm1zLT50ZXJtX2dvb2QpOworCWVsc2UgaWYgKG9uZV9vZihvcHRpb24sICItLXRlcm0tYmFkIiwgIi0tdGVybS1uZXciLCBOVUxMKSkKKwkJcHJpbnRmKCIlc1xuIiwgdGVybXMtPnRlcm1fYmFkKTsKKwllbHNlCisJCXJldHVybiBlcnJvcihfKCJpbnZhbGlkIGFyZ3VtZW50ICVzIGZvciAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCisJCQkgICAgICAgIlN1cHBvcnRlZCBvcHRpb25zIGFyZTogIgorCQkJICAgICAgICItLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGFuZCAiCisJCQkgICAgICAgIi0tdGVybS1iYWR8LS10ZXJtLW5ldy4iKSwgb3B0aW9uKTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGJpc2VjdF9hcHBlbmRfbG9nX3F1b3RlZChjb25zdCBjaGFyICoqYXJndikKK3sKKwlpbnQgcmVzID0gMDsKKwlGSUxFICpmcCA9IGZvcGVuKGdpdF9wYXRoX2Jpc2VjdF9sb2coKSwgImEiKTsKKwlzdHJ1Y3Qgc3RyYnVmIG9yaWdfYXJncyA9IFNUUkJVRl9JTklUOworCisJaWYgKCFmcCkKKwkJcmV0dXJuIC0xOworCisJaWYgKGZwcmludGYoZnAsICJnaXQgYmlzZWN0IHN0YXJ0IikgPCAxKSB7CisJCXJlcyA9IC0xOworCQlnb3RvIGZpbmlzaDsKKwl9CisKKwlzcV9xdW90ZV9hcmd2KCZvcmlnX2FyZ3MsIGFyZ3YpOworCWlmIChmcHJpbnRmKGZwLCAiJXNcbiIsIG9yaWdfYXJncy5idWYpIDwgMSkKKwkJcmVzID0gLTE7CisKK2ZpbmlzaDoKKwlmY2xvc2UoZnApOworCXN0cmJ1Zl9yZWxlYXNlKCZvcmlnX2FyZ3MpOworCXJldHVybiByZXM7Cit9CisKK3N0YXRpYyBpbnQgYmlzZWN0X3N0YXJ0KHN0cnVjdCBiaXNlY3RfdGVybXMgKnRlcm1zLCBpbnQgbm9fY2hlY2tvdXQsCisJCQljb25zdCBjaGFyICoqYXJndiwgaW50IGFyZ2MpCit7CisJaW50IGksIGhhc19kb3VibGVfZGFzaCA9IDAsIG11c3Rfd3JpdGVfdGVybXMgPSAwLCBiYWRfc2VlbiA9IDA7CisJaW50IGZsYWdzLCBwYXRoc3BlY19wb3MsIHJlcyA9IDA7CisJc3RydWN0IHN0cmluZ19saXN0IHJldnMgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKKwlzdHJ1Y3Qgc3RyaW5nX2xpc3Qgc3RhdGVzID0gU1RSSU5HX0xJU1RfSU5JVF9EVVA7CisJc3RydWN0IHN0cmJ1ZiBzdGFydF9oZWFkID0gU1RSQlVGX0lOSVQ7CisJc3RydWN0IHN0cmJ1ZiBiaXNlY3RfbmFtZXMgPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIGhlYWRfb2lkOworCXN0cnVjdCBvYmplY3RfaWQgb2lkOworCWNvbnN0IGNoYXIgKmhlYWQ7CisKKwlpZiAoaXNfYmFyZV9yZXBvc2l0b3J5KCkpCisJCW5vX2NoZWNrb3V0ID0gMTsKKworCS8qCisJICogQ2hlY2sgZm9yIG9uZSBiYWQgYW5kIHRoZW4gc29tZSBnb29kIHJldmlzaW9ucworCSAqLworCWZvciAoaSA9IDA7IGkgPCBhcmdjOyBpKyspIHsKKwkJaWYgKCFzdHJjbXAoYXJndltpXSwgIi0tIikpIHsKKwkJCWhhc19kb3VibGVfZGFzaCA9IDE7CisJCQlicmVhazsKKwkJfQorCX0KKworCWZvciAoaSA9IDA7IGkgPCBhcmdjOyBpKyspIHsKKwkJY29uc3QgY2hhciAqYXJnID0gYXJndltpXTsKKwkJaWYgKCFzdHJjbXAoYXJndltpXSwgIi0tIikpIHsKKwkJCWJyZWFrOworCQl9IGVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1uby1jaGVja291dCIpKSB7CisJCQlub19jaGVja291dCA9IDE7CisJCX0gZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLXRlcm0tZ29vZCIpIHx8CisJCQkgIXN0cmNtcChhcmcsICItLXRlcm0tb2xkIikpIHsKKwkJCW11c3Rfd3JpdGVfdGVybXMgPSAxOworCQkJZnJlZSgodm9pZCAqKSB0ZXJtcy0+dGVybV9nb29kKTsKKwkJCXRlcm1zLT50ZXJtX2dvb2QgPSB4c3RyZHVwKGFyZ3ZbKytpXSk7CisJCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgoYXJnLCAiLS10ZXJtLWdvb2Q9IiwgJmFyZykgfHwKKwkJCSAgIHNraXBfcHJlZml4KGFyZywgIi0tdGVybS1vbGQ9IiwgJmFyZykpIHsKKwkJCW11c3Rfd3JpdGVfdGVybXMgPSAxOworCQkJZnJlZSgodm9pZCAqKSB0ZXJtcy0+dGVybV9nb29kKTsKKwkJCXRlcm1zLT50ZXJtX2dvb2QgPSB4c3RyZHVwKGFyZyk7CisJCX0gZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLXRlcm0tYmFkIikgfHwKKwkJCSAhc3RyY21wKGFyZywgIi0tdGVybS1uZXciKSkgeworCQkJbXVzdF93cml0ZV90ZXJtcyA9IDE7CisJCQlmcmVlKCh2b2lkICopIHRlcm1zLT50ZXJtX2JhZCk7CisJCQl0ZXJtcy0+dGVybV9iYWQgPSB4c3RyZHVwKGFyZ3ZbKytpXSk7CisJCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgoYXJnLCAiLS10ZXJtLWJhZD0iLCAmYXJnKSB8fAorCQkJICAgc2tpcF9wcmVmaXgoYXJnLCAiLS10ZXJtLW5ldz0iLCAmYXJnKSkgeworCQkJbXVzdF93cml0ZV90ZXJtcyA9IDE7CisJCQlmcmVlKCh2b2lkICopIHRlcm1zLT50ZXJtX2JhZCk7CisJCQl0ZXJtcy0+dGVybV9iYWQgPSB4c3RyZHVwKGFyZyk7CisJCX0gZWxzZSBpZiAoc3RhcnRzX3dpdGgoYXJnLCAiLS0iKSAmJgorCQkJICFvbmVfb2YoYXJnLCAiLS10ZXJtLWdvb2QiLCAiLS10ZXJtLWJhZCIsIE5VTEwpKSB7CisJCQlyZXR1cm4gZXJyb3IoXygidW5yZWNvZ25pemVkIG9wdGlvbjogJyVzJyIpLCBhcmcpOworCQl9IGVsc2UgeworCQkJY2hhciAqY29tbWl0X2lkID0geHN0cmZtdCgiJXNee2NvbW1pdH0iLCBhcmcpOworCQkJaWYgKGdldF9vaWQoY29tbWl0X2lkLCAmb2lkKSAmJiBoYXNfZG91YmxlX2Rhc2gpCisJCQkJZGllKF8oIiclcycgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGEgdmFsaWQgIgorCQkJCSAgICAgICJyZXZpc2lvbiIpLCBhcmcpOworCisJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJnJldnMsIG9pZF90b19oZXgoJm9pZCkpOworCQkJZnJlZShjb21taXRfaWQpOworCQl9CisJfQorCXBhdGhzcGVjX3BvcyA9IGk7CisKKwkvKgorCSAqIFRoZSB1c2VyIHJhbiAiZ2l0IGJpc2VjdCBzdGFydCA8c2hhMT4gPHNoYTE+IiwgaGVuY2UgZGlkIG5vdAorCSAqIGV4cGxpY2l0bHkgc3BlY2lmeSB0aGUgdGVybXMsIGJ1dCB3ZSBhcmUgYWxyZWFkeSBzdGFydGluZyB0bworCSAqIHNldCByZWZlcmVuY2VzIG5hbWVkIHdpdGggdGhlIGRlZmF1bHQgdGVybXMsIGFuZCB3b24ndCBiZSBhYmxlCisJICogdG8gY2hhbmdlIGFmdGVyd2FyZHMuCisJICovCisJaWYgKHJldnMubnIpCisJCW11c3Rfd3JpdGVfdGVybXMgPSAxOworCWZvciAoaSA9IDA7IGkgPCByZXZzLm5yOyBpKyspIHsKKwkJaWYgKGJhZF9zZWVuKSB7CisJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJnN0YXRlcywgdGVybXMtPnRlcm1fZ29vZCk7CisJCX0gZWxzZSB7CisJCQliYWRfc2VlbiA9IDE7CisJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJnN0YXRlcywgdGVybXMtPnRlcm1fYmFkKTsKKwkJfQorCX0KKworCS8qCisJICogVmVyaWZ5IEhFQUQKKwkgKi8KKwloZWFkID0gcmVzb2x2ZV9yZWZfdW5zYWZlKCJIRUFEIiwgMCwgJmhlYWRfb2lkLCAmZmxhZ3MpOworCWlmICghaGVhZCkKKwkJaWYgKGdldF9vaWQoIkhFQUQiLCAmaGVhZF9vaWQpKQorCQkJcmV0dXJuIGVycm9yKF8oImJhZCBIRUFEIC0gSSBuZWVkIGEgSEVBRCIpKTsKKworCS8qCisJICogQ2hlY2sgaWYgd2UgYXJlIGJpc2VjdGluZworCSAqLworCWlmICghaXNfZW1wdHlfb3JfbWlzc2luZ19maWxlKGdpdF9wYXRoX2Jpc2VjdF9zdGFydCgpKSkgeworCQkvKiBSZXNldCB0byB0aGUgcmV2IGZyb20gd2hlcmUgd2Ugc3RhcnRlZCAqLworCQlzdHJidWZfcmVhZF9maWxlKCZzdGFydF9oZWFkLCBnaXRfcGF0aF9iaXNlY3Rfc3RhcnQoKSwgMCk7CisJCXN0cmJ1Zl90cmltKCZzdGFydF9oZWFkKTsKKwkJaWYgKCFub19jaGVja291dCkgeworCQkJc3RydWN0IGFyZ3ZfYXJyYXkgYXJndiA9IEFSR1ZfQVJSQVlfSU5JVDsKKworCQkJYXJndl9hcnJheV9wdXNobCgmYXJndiwgImNoZWNrb3V0Iiwgc3RhcnRfaGVhZC5idWYsCisJCQkJCSAiLS0iLCBOVUxMKTsKKwkJCWlmIChydW5fY29tbWFuZF92X29wdChhcmd2LmFyZ3YsIFJVTl9HSVRfQ01EKSkgeworCQkJCXJlcyA9IGVycm9yKF8oImNoZWNraW5nIG91dCAnJXMnIGZhaWxlZC4iCisJCQkJCQkgIiBUcnkgJ2dpdCBiaXNlY3Qgc3RhcnQgIgorCQkJCQkJICI8dmFsaWQtYnJhbmNoPicuIiksCisJCQkJCSAgICAgICBzdGFydF9oZWFkLmJ1Zik7CisJCQkJZ290byBmaW5pc2g7CisJCQl9CisJCX0KKwl9IGVsc2UgeworCQkvKiBHZXQgdGhlIHJldiBmcm9tIHdoZXJlIHdlIHN0YXJ0LiAqLworCQlpZiAoIWdldF9vaWQoaGVhZCwgJmhlYWRfb2lkKSAmJgorCQkgICAgIXN0YXJ0c193aXRoKGhlYWQsICJyZWZzL2hlYWRzLyIpKSB7CisJCQlzdHJidWZfcmVzZXQoJnN0YXJ0X2hlYWQpOworCQkJc3RyYnVmX2FkZHN0cigmc3RhcnRfaGVhZCwgb2lkX3RvX2hleCgmaGVhZF9vaWQpKTsKKwkJfSBlbHNlIGlmICghZ2V0X29pZChoZWFkLCAmaGVhZF9vaWQpICYmCisJCQkgICBza2lwX3ByZWZpeChoZWFkLCAicmVmcy9oZWFkcy8iLCAmaGVhZCkpIHsKKwkJCS8qCisJCQkgKiBUaGlzIGVycm9yIG1lc3NhZ2Ugc2hvdWxkIG9ubHkgYmUgdHJpZ2dlcmVkIGJ5CisJCQkgKiBjb2dpdG8gdXNhZ2UsIGFuZCBjb2dpdG8gdXNlcnMgc2hvdWxkIHVuZGVyc3RhbmQKKwkJCSAqIGl0IHJlbGF0ZXMgdG8gY2ctc2Vlay4KKwkJCSAqLworCQkJaWYgKCFpc19lbXB0eV9vcl9taXNzaW5nX2ZpbGUoZ2l0X3BhdGhfaGVhZF9uYW1lKCkpKQorCQkJCXJldHVybiBlcnJvcihfKCJ3b24ndCBiaXNlY3Qgb24gY2ctc2VlaydlZCB0cmVlIikpOworCQkJc3RyYnVmX2FkZHN0cigmc3RhcnRfaGVhZCwgaGVhZCk7CisJCX0gZWxzZSB7CisJCQlyZXR1cm4gZXJyb3IoXygiYmFkIEhFQUQgLSBzdHJhbmdlIHN5bWJvbGljIHJlZiIpKTsKKwkJfQorCX0KKworCS8qCisJICogR2V0IHJpZCBvZiBhbnkgb2xkIGJpc2VjdCBzdGF0ZS4KKwkgKi8KKwlpZiAoYmlzZWN0X2NsZWFuX3N0YXRlKCkpCisJCXJldHVybiAtMTsKKworCS8qCisJICogSW4gY2FzZSBvZiBtaXN0YWtlbiByZXZzIG9yIGNoZWNrb3V0IGVycm9yLCBvciBzaWduYWxzIHJlY2VpdmVkLAorCSAqICJiaXNlY3RfYXV0b19uZXh0IiBiZWxvdyBtYXkgZXhpdCBvciBtaXNiZWhhdmUuCisJICogV2UgaGF2ZSB0byB0cmFwIHRoaXMgdG8gYmUgYWJsZSB0byBjbGVhbiB1cCB1c2luZworCSAqICJiaXNlY3RfY2xlYW5fc3RhdGUiLgorCSAqLworCisJLyoKKwkgKiBXcml0ZSBuZXcgc3RhcnQgc3RhdGUKKwkgKi8KKwl3cml0ZV9maWxlKGdpdF9wYXRoX2Jpc2VjdF9zdGFydCgpLCAiJXNcbiIsIHN0YXJ0X2hlYWQuYnVmKTsKKworCWlmIChub19jaGVja291dCkgeworCQlpZiAoZ2V0X29pZChzdGFydF9oZWFkLmJ1ZiwgJm9pZCkgPCAwKSB7CisJCQlyZXMgPSBlcnJvcihfKCJpbnZhbGlkIHJlZjogJyVzJyIpLCBzdGFydF9oZWFkLmJ1Zik7CisJCQlnb3RvIGZpbmlzaDsKKwkJfQorCQlpZiAodXBkYXRlX3JlZihOVUxMLCAiQklTRUNUX0hFQUQiLCAmb2lkLCBOVUxMLCAwLAorCQkJICAgICAgIFVQREFURV9SRUZTX01TR19PTl9FUlIpKSB7CisJCQlyZXMgPSAtMTsKKwkJCWdvdG8gZmluaXNoOworCQl9CisJfQorCisJaWYgKHBhdGhzcGVjX3BvcyA8IGFyZ2MgLSAxKQorCQlzcV9xdW90ZV9hcmd2KCZiaXNlY3RfbmFtZXMsIGFyZ3YgKyBwYXRoc3BlY19wb3MpOworCXdyaXRlX2ZpbGUoZ2l0X3BhdGhfYmlzZWN0X25hbWVzKCksICIlc1xuIiwgYmlzZWN0X25hbWVzLmJ1Zik7CisKKwlmb3IgKGkgPSAwOyBpIDwgc3RhdGVzLm5yOyBpKyspCisJCWlmIChiaXNlY3Rfd3JpdGUoc3RhdGVzLml0ZW1zW2ldLnN0cmluZywKKwkJCQkgcmV2cy5pdGVtc1tpXS5zdHJpbmcsIHRlcm1zLCAxKSkgeworCQkJcmVzID0gLTE7CisJCQlnb3RvIGZpbmlzaDsKKwkJfQorCisJaWYgKG11c3Rfd3JpdGVfdGVybXMgJiYgd3JpdGVfdGVybXModGVybXMtPnRlcm1fYmFkLAorCQkJCQkgICAgdGVybXMtPnRlcm1fZ29vZCkpIHsKKwkJcmVzID0gLTE7CisJCWdvdG8gZmluaXNoOworCX0KKworCXJlcyA9IGJpc2VjdF9hcHBlbmRfbG9nX3F1b3RlZChhcmd2KTsKKwlpZiAocmVzKQorCQlyZXMgPSAtMTsKKworZmluaXNoOgorCXN0cmluZ19saXN0X2NsZWFyKCZyZXZzLCAwKTsKKwlzdHJpbmdfbGlzdF9jbGVhcigmc3RhdGVzLCAwKTsKKwlzdHJidWZfcmVsZWFzZSgmc3RhcnRfaGVhZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJpc2VjdF9uYW1lcyk7CisJcmV0dXJuIHJlczsKK30KKwogaW50IGNtZF9iaXNlY3RfX2hlbHBlcihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKIHsKIAllbnVtIHsKIAkJTkVYVF9BTEwgPSAxLAogCQlXUklURV9URVJNUywKIAkJQklTRUNUX0NMRUFOX1NUQVRFLAotCQlDSEVDS19FWFBFQ1RFRF9SRVZTCisJCUNIRUNLX0VYUEVDVEVEX1JFVlMsCisJCUJJU0VDVF9SRVNFVCwKKwkJQklTRUNUX1dSSVRFLAorCQlDSEVDS19BTkRfU0VUX1RFUk1TLAorCQlCSVNFQ1RfTkVYVF9DSEVDSywKKwkJQklTRUNUX1RFUk1TLAorCQlCSVNFQ1RfU1RBUlQKIAl9IGNtZG1vZGUgPSAwOwotCWludCBub19jaGVja291dCA9IDA7CisJaW50IG5vX2NoZWNrb3V0ID0gMCwgcmVzID0gMCwgbm9sb2cgPSAwOwogCXN0cnVjdCBvcHRpb24gb3B0aW9uc1tdID0gewogCQlPUFRfQ01ETU9ERSgwLCAibmV4dC1hbGwiLCAmY21kbW9kZSwKIAkJCSBOXygicGVyZm9ybSAnZ2l0IGJpc2VjdCBuZXh0JyIpLCBORVhUX0FMTCksCkBAIC0xMjQsMjAgKzYzNywzNyBAQAogCQkJIE5fKCJjbGVhbnVwIHRoZSBiaXNlY3Rpb24gc3RhdGUiKSwgQklTRUNUX0NMRUFOX1NUQVRFKSwKIAkJT1BUX0NNRE1PREUoMCwgImNoZWNrLWV4cGVjdGVkLXJldnMiLCAmY21kbW9kZSwKIAkJCSBOXygiY2hlY2sgZm9yIGV4cGVjdGVkIHJldnMiKSwgQ0hFQ0tfRVhQRUNURURfUkVWUyksCisJCU9QVF9DTURNT0RFKDAsICJiaXNlY3QtcmVzZXQiLCAmY21kbW9kZSwKKwkJCSBOXygicmVzZXQgdGhlIGJpc2VjdGlvbiBzdGF0ZSIpLCBCSVNFQ1RfUkVTRVQpLAorCQlPUFRfQ01ETU9ERSgwLCAiYmlzZWN0LXdyaXRlIiwgJmNtZG1vZGUsCisJCQkgTl8oIndyaXRlIG91dCB0aGUgYmlzZWN0aW9uIHN0YXRlIGluIEJJU0VDVF9MT0ciKSwgQklTRUNUX1dSSVRFKSwKKwkJT1BUX0NNRE1PREUoMCwgImNoZWNrLWFuZC1zZXQtdGVybXMiLCAmY21kbW9kZSwKKwkJCSBOXygiY2hlY2sgYW5kIHNldCB0ZXJtcyBpbiBhIGJpc2VjdGlvbiBzdGF0ZSIpLCBDSEVDS19BTkRfU0VUX1RFUk1TKSwKKwkJT1BUX0NNRE1PREUoMCwgImJpc2VjdC1uZXh0LWNoZWNrIiwgJmNtZG1vZGUsCisJCQkgTl8oImNoZWNrIHdoZXRoZXIgYmFkIG9yIGdvb2QgdGVybXMgZXhpc3QiKSwgQklTRUNUX05FWFRfQ0hFQ0spLAorCQlPUFRfQ01ETU9ERSgwLCAiYmlzZWN0LXRlcm1zIiwgJmNtZG1vZGUsCisJCQkgTl8oInByaW50IG91dCB0aGUgYmlzZWN0IHRlcm1zIiksIEJJU0VDVF9URVJNUyksCisJCU9QVF9DTURNT0RFKDAsICJiaXNlY3Qtc3RhcnQiLCAmY21kbW9kZSwKKwkJCSBOXygic3RhcnQgdGhlIGJpc2VjdCBzZXNzaW9uIiksIEJJU0VDVF9TVEFSVCksCiAJCU9QVF9CT09MKDAsICJuby1jaGVja291dCIsICZub19jaGVja291dCwKIAkJCSBOXygidXBkYXRlIEJJU0VDVF9IRUFEIGluc3RlYWQgb2YgY2hlY2tpbmcgb3V0IHRoZSBjdXJyZW50IGNvbW1pdCIpKSwKKwkJT1BUX0JPT0woMCwgIm5vLWxvZyIsICZub2xvZywKKwkJCSBOXygibm8gbG9nIGZvciBCSVNFQ1RfV1JJVEUiKSksCiAJCU9QVF9FTkQoKQogCX07CisJc3RydWN0IGJpc2VjdF90ZXJtcyB0ZXJtcyA9IHsgLnRlcm1fZ29vZCA9IE5VTEwsIC50ZXJtX2JhZCA9IE5VTEwgfTsKIAogCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywKLQkJCSAgICAgZ2l0X2Jpc2VjdF9oZWxwZXJfdXNhZ2UsIDApOworCQkJICAgICBnaXRfYmlzZWN0X2hlbHBlcl91c2FnZSwKKwkJCSAgICAgUEFSU0VfT1BUX0tFRVBfREFTSERBU0ggfCBQQVJTRV9PUFRfS0VFUF9VTktOT1dOKTsKIAogCWlmICghY21kbW9kZSkKIAkJdXNhZ2Vfd2l0aF9vcHRpb25zKGdpdF9iaXNlY3RfaGVscGVyX3VzYWdlLCBvcHRpb25zKTsKIAogCXN3aXRjaCAoY21kbW9kZSkgewogCWNhc2UgTkVYVF9BTEw6Ci0JCXJldHVybiBiaXNlY3RfbmV4dF9hbGwocHJlZml4LCBub19jaGVja291dCk7CisJCXJlcyA9IGJpc2VjdF9uZXh0X2FsbCh0aGVfcmVwb3NpdG9yeSwgcHJlZml4LCBub19jaGVja291dCk7CisJCWJyZWFrOwogCWNhc2UgV1JJVEVfVEVSTVM6CiAJCWlmIChhcmdjICE9IDIpCiAJCQlyZXR1cm4gZXJyb3IoXygiLS13cml0ZS10ZXJtcyByZXF1aXJlcyB0d28gYXJndW1lbnRzIikpOwpAQCAtMTQ5LDggKzY3OSw0OCBAQAogCWNhc2UgQ0hFQ0tfRVhQRUNURURfUkVWUzoKIAkJY2hlY2tfZXhwZWN0ZWRfcmV2cyhhcmd2LCBhcmdjKTsKIAkJcmV0dXJuIDA7CisJY2FzZSBCSVNFQ1RfUkVTRVQ6CisJCWlmIChhcmdjID4gMSkKKwkJCXJldHVybiBlcnJvcihfKCItLWJpc2VjdC1yZXNldCByZXF1aXJlcyBlaXRoZXIgbm8gYXJndW1lbnQgb3IgYSBjb21taXQiKSk7CisJCXJldHVybiAhIWJpc2VjdF9yZXNldChhcmdjID8gYXJndlswXSA6IE5VTEwpOworCWNhc2UgQklTRUNUX1dSSVRFOgorCQlpZiAoYXJnYyAhPSA0ICYmIGFyZ2MgIT0gNSkKKwkJCXJldHVybiBlcnJvcihfKCItLWJpc2VjdC13cml0ZSByZXF1aXJlcyBlaXRoZXIgNCBvciA1IGFyZ3VtZW50cyIpKTsKKwkJc2V0X3Rlcm1zKCZ0ZXJtcywgYXJndlszXSwgYXJndlsyXSk7CisJCXJlcyA9IGJpc2VjdF93cml0ZShhcmd2WzBdLCBhcmd2WzFdLCAmdGVybXMsIG5vbG9nKTsKKwkJYnJlYWs7CisJY2FzZSBDSEVDS19BTkRfU0VUX1RFUk1TOgorCQlpZiAoYXJnYyAhPSAzKQorCQkJcmV0dXJuIGVycm9yKF8oIi0tY2hlY2stYW5kLXNldC10ZXJtcyByZXF1aXJlcyAzIGFyZ3VtZW50cyIpKTsKKwkJc2V0X3Rlcm1zKCZ0ZXJtcywgYXJndlsyXSwgYXJndlsxXSk7CisJCXJlcyA9IGNoZWNrX2FuZF9zZXRfdGVybXMoJnRlcm1zLCBhcmd2WzBdKTsKKwkJYnJlYWs7CisJY2FzZSBCSVNFQ1RfTkVYVF9DSEVDSzoKKwkJaWYgKGFyZ2MgIT0gMiAmJiBhcmdjICE9IDMpCisJCQlyZXR1cm4gZXJyb3IoXygiLS1iaXNlY3QtbmV4dC1jaGVjayByZXF1aXJlcyAyIG9yIDMgYXJndW1lbnRzIikpOworCQlzZXRfdGVybXMoJnRlcm1zLCBhcmd2WzFdLCBhcmd2WzBdKTsKKwkJcmVzID0gYmlzZWN0X25leHRfY2hlY2soJnRlcm1zLCBhcmdjID09IDMgPyBhcmd2WzJdIDogTlVMTCk7CisJCWJyZWFrOworCWNhc2UgQklTRUNUX1RFUk1TOgorCQlpZiAoYXJnYyA+IDEpCisJCQlyZXR1cm4gZXJyb3IoXygiLS1iaXNlY3QtdGVybXMgcmVxdWlyZXMgMCBvciAxIGFyZ3VtZW50IikpOworCQlyZXMgPSBiaXNlY3RfdGVybXMoJnRlcm1zLCBhcmdjID09IDEgPyBhcmd2WzBdIDogTlVMTCk7CisJCWJyZWFrOworCWNhc2UgQklTRUNUX1NUQVJUOgorCQlzZXRfdGVybXMoJnRlcm1zLCAiYmFkIiwgImdvb2QiKTsKKwkJcmVzID0gYmlzZWN0X3N0YXJ0KCZ0ZXJtcywgbm9fY2hlY2tvdXQsIGFyZ3YsIGFyZ2MpOworCQlicmVhazsKIAlkZWZhdWx0OgogCQlyZXR1cm4gZXJyb3IoIkJVRzogdW5rbm93biBzdWJjb21tYW5kICclZCciLCBjbWRtb2RlKTsKIAl9Ci0JcmV0dXJuIDA7CisJZnJlZV90ZXJtcygmdGVybXMpOworCisJLyoKKwkgKiBIYW5kbGUgZWFybHkgc3VjY2VzcworCSAqIEZyb20gY2hlY2tfbWVyZ2VfYmFzZXMgPiBjaGVja19nb29kX2FyZV9hbmNlc3RvcnNfb2ZfYmFkID4gYmlzZWN0X25leHRfYWxsCisJICovCisJaWYgKHJlcyA9PSBCSVNFQ1RfSU5URVJOQUxfU1VDQ0VTU19NRVJHRV9CQVNFKQorCQlyZXMgPSBCSVNFQ1RfT0s7CisKKwlyZXR1cm4gYWJzKHJlcyk7CiB9CmRpZmYgLS1naXQgYS9idWlsdGluL2JsYW1lLmMgYi9idWlsdGluL2JsYW1lLmMKaW5kZXggNmQ3OThmOS4uYmYxY2VjZCAxMDA2NDQKLS0tIGEvYnVpbHRpbi9ibGFtZS5jCisrKyBiL2J1aWx0aW4vYmxhbWUuYwpAQCAtMjYsNyArMjYsNyBAQAogI2luY2x1ZGUgInByb2dyZXNzLmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCiAjaW5jbHVkZSAiYmxhbWUuaCIKLSNpbmNsdWRlICJzdHJpbmctbGlzdC5oIgorI2luY2x1ZGUgInJlZnMuaCIKIAogc3RhdGljIGNoYXIgYmxhbWVfdXNhZ2VbXSA9IE5fKCJnaXQgYmxhbWUgWzxvcHRpb25zPl0gWzxyZXYtb3B0cz5dIFs8cmV2Pl0gWy0tXSA8ZmlsZT4iKTsKIApAQCAtNTIsMTQgKzUyLDE3IEBACiBzdGF0aWMgaW50IHNob3dfcHJvZ3Jlc3M7CiBzdGF0aWMgY2hhciByZXBlYXRlZF9tZXRhX2NvbG9yW0NPTE9SX01BWExFTl07CiBzdGF0aWMgaW50IGNvbG9yaW5nX21vZGU7CitzdGF0aWMgc3RydWN0IHN0cmluZ19saXN0IGlnbm9yZV9yZXZzX2ZpbGVfbGlzdCA9IFNUUklOR19MSVNUX0lOSVRfTk9EVVA7CitzdGF0aWMgaW50IG1hcmtfdW5ibGFtYWJsZV9saW5lczsKK3N0YXRpYyBpbnQgbWFya19pZ25vcmVkX2xpbmVzOwogCiBzdGF0aWMgc3RydWN0IGRhdGVfbW9kZSBibGFtZV9kYXRlX21vZGUgPSB7IERBVEVfSVNPODYwMSB9Owogc3RhdGljIHNpemVfdCBibGFtZV9kYXRlX3dpZHRoOwogCiBzdGF0aWMgc3RydWN0IHN0cmluZ19saXN0IG1haWxtYXAgPSBTVFJJTkdfTElTVF9JTklUX05PRFVQOwogCi0jaWZuZGVmIERFQlVHCi0jZGVmaW5lIERFQlVHIDAKKyNpZm5kZWYgREVCVUdfQkxBTUUKKyNkZWZpbmUgREVCVUdfQkxBTUUgMAogI2VuZGlmCiAKIHN0YXRpYyB1bnNpZ25lZCBibGFtZV9tb3ZlX3Njb3JlOwpAQCAtMzE2LDE4ICszMTksMTggQEAKIAlyZXR1cm4gdGltZV9idWYuYnVmOwogfQogCi0jZGVmaW5lIE9VVFBVVF9BTk5PVEFURV9DT01QQVQJMDAxCi0jZGVmaW5lIE9VVFBVVF9MT05HX09CSkVDVF9OQU1FCTAwMgotI2RlZmluZSBPVVRQVVRfUkFXX1RJTUVTVEFNUAkwMDQKLSNkZWZpbmUgT1VUUFVUX1BPUkNFTEFJTgkwMTAKLSNkZWZpbmUgT1VUUFVUX1NIT1dfTkFNRQkwMjAKLSNkZWZpbmUgT1VUUFVUX1NIT1dfTlVNQkVSCTA0MAotI2RlZmluZSBPVVRQVVRfU0hPV19TQ09SRQkwMTAwCi0jZGVmaW5lIE9VVFBVVF9OT19BVVRIT1IJMDIwMAotI2RlZmluZSBPVVRQVVRfU0hPV19FTUFJTAkwNDAwCi0jZGVmaW5lIE9VVFBVVF9MSU5FX1BPUkNFTEFJTgkwMTAwMAotI2RlZmluZSBPVVRQVVRfQ09MT1JfTElORQkwMjAwMAotI2RlZmluZSBPVVRQVVRfU0hPV19BR0VfV0lUSF9DT0xPUgkwNDAwMAorI2RlZmluZSBPVVRQVVRfQU5OT1RBVEVfQ09NUEFUICAgICAgKDFVPDwwKQorI2RlZmluZSBPVVRQVVRfTE9OR19PQkpFQ1RfTkFNRSAgICAgKDFVPDwxKQorI2RlZmluZSBPVVRQVVRfUkFXX1RJTUVTVEFNUCAgICAgICAgKDFVPDwyKQorI2RlZmluZSBPVVRQVVRfUE9SQ0VMQUlOICAgICAgICAgICAgKDFVPDwzKQorI2RlZmluZSBPVVRQVVRfU0hPV19OQU1FICAgICAgICAgICAgKDFVPDw0KQorI2RlZmluZSBPVVRQVVRfU0hPV19OVU1CRVIgICAgICAgICAgKDFVPDw1KQorI2RlZmluZSBPVVRQVVRfU0hPV19TQ09SRSAgICAgICAgICAgKDFVPDw2KQorI2RlZmluZSBPVVRQVVRfTk9fQVVUSE9SICAgICAgICAgICAgKDFVPDw3KQorI2RlZmluZSBPVVRQVVRfU0hPV19FTUFJTCAgICAgICAgICAgKDFVPDw4KQorI2RlZmluZSBPVVRQVVRfTElORV9QT1JDRUxBSU4gICAgICAgKDFVPDw5KQorI2RlZmluZSBPVVRQVVRfQ09MT1JfTElORSAgICAgICAgICAgKDFVPDwxMCkKKyNkZWZpbmUgT1VUUFVUX1NIT1dfQUdFX1dJVEhfQ09MT1IgICgxVTw8MTEpCiAKIHN0YXRpYyB2b2lkIGVtaXRfcG9yY2VsYWluX2RldGFpbHMoc3RydWN0IGJsYW1lX29yaWdpbiAqc3VzcGVjdCwgaW50IHJlcGVhdCkKIHsKQEAgLTQ1Niw3ICs0NTksNyBAQAogCiAJZm9yIChjbnQgPSAwOyBjbnQgPCBlbnQtPm51bV9saW5lczsgY250KyspIHsKIAkJY2hhciBjaDsKLQkJaW50IGxlbmd0aCA9IChvcHQgJiBPVVRQVVRfTE9OR19PQkpFQ1RfTkFNRSkgPyBHSVRfU0hBMV9IRVhTWiA6IGFiYnJldjsKKwkJaW50IGxlbmd0aCA9IChvcHQgJiBPVVRQVVRfTE9OR19PQkpFQ1RfTkFNRSkgPyB0aGVfaGFzaF9hbGdvLT5oZXhzeiA6IGFiYnJldjsKIAogCQlpZiAob3B0ICYgT1VUUFVUX0NPTE9SX0xJTkUpIHsKIAkJCWlmIChjbnQgPiAwKSB7CkBAIC00NzksNiArNDgyLDE0IEBACiAJCQl9CiAJCX0KIAorCQlpZiAobWFya191bmJsYW1hYmxlX2xpbmVzICYmIGVudC0+dW5ibGFtYWJsZSkgeworCQkJbGVuZ3RoLS07CisJCQlwdXRjaGFyKCcqJyk7CisJCX0KKwkJaWYgKG1hcmtfaWdub3JlZF9saW5lcyAmJiBlbnQtPmlnbm9yZWQpIHsKKwkJCWxlbmd0aC0tOworCQkJcHV0Y2hhcignPycpOworCQl9CiAJCXByaW50ZigiJS4qcyIsIGxlbmd0aCwgaGV4KTsKIAkJaWYgKG9wdCAmIE9VVFBVVF9BTk5PVEFURV9DT01QQVQpIHsKIAkJCWNvbnN0IGNoYXIgKm5hbWU7CkBAIC02OTUsNiArNzA2LDI0IEBACiAJCXBhcnNlX2RhdGVfZm9ybWF0KHZhbHVlLCAmYmxhbWVfZGF0ZV9tb2RlKTsKIAkJcmV0dXJuIDA7CiAJfQorCWlmICghc3RyY21wKHZhciwgImJsYW1lLmlnbm9yZXJldnNmaWxlIikpIHsKKwkJY29uc3QgY2hhciAqc3RyOworCQlpbnQgcmV0OworCisJCXJldCA9IGdpdF9jb25maWdfcGF0aG5hbWUoJnN0ciwgdmFyLCB2YWx1ZSk7CisJCWlmIChyZXQpCisJCQlyZXR1cm4gcmV0OworCQlzdHJpbmdfbGlzdF9pbnNlcnQoJmlnbm9yZV9yZXZzX2ZpbGVfbGlzdCwgc3RyKTsKKwkJcmV0dXJuIDA7CisJfQorCWlmICghc3RyY21wKHZhciwgImJsYW1lLm1hcmt1bmJsYW1hYmxlbGluZXMiKSkgeworCQltYXJrX3VuYmxhbWFibGVfbGluZXMgPSBnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSk7CisJCXJldHVybiAwOworCX0KKwlpZiAoIXN0cmNtcCh2YXIsICJibGFtZS5tYXJraWdub3JlZGxpbmVzIikpIHsKKwkJbWFya19pZ25vcmVkX2xpbmVzID0gZ2l0X2NvbmZpZ19ib29sKHZhciwgdmFsdWUpOworCQlyZXR1cm4gMDsKKwl9CiAJaWYgKCFzdHJjbXAodmFyLCAiY29sb3IuYmxhbWUucmVwZWF0ZWRsaW5lcyIpKSB7CiAJCWlmIChjb2xvcl9wYXJzZV9tZW0odmFsdWUsIHN0cmxlbih2YWx1ZSksIHJlcGVhdGVkX21ldGFfY29sb3IpKQogCQkJd2FybmluZyhfKCJpbnZhbGlkIGNvbG9yICclcycgaW4gY29sb3IuYmxhbWUucmVwZWF0ZWRMaW5lcyIpLApAQCAtNzc0LDYgKzgwMywyNyBAQAogCXJldHVybiBPQkpfTk9ORSA8IG9pZF9vYmplY3RfaW5mbyh0aGVfcmVwb3NpdG9yeSwgJm9pZCwgTlVMTCk7CiB9CiAKK3N0YXRpYyB2b2lkIGJ1aWxkX2lnbm9yZWxpc3Qoc3RydWN0IGJsYW1lX3Njb3JlYm9hcmQgKnNiLAorCQkJICAgICBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmlnbm9yZV9yZXZzX2ZpbGVfbGlzdCwKKwkJCSAgICAgc3RydWN0IHN0cmluZ19saXN0ICppZ25vcmVfcmV2X2xpc3QpCit7CisJc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKmk7CisJc3RydWN0IG9iamVjdF9pZCBvaWQ7CisKKwlvaWRzZXRfaW5pdCgmc2ItPmlnbm9yZV9saXN0LCAwKTsKKwlmb3JfZWFjaF9zdHJpbmdfbGlzdF9pdGVtKGksIGlnbm9yZV9yZXZzX2ZpbGVfbGlzdCkgeworCQlpZiAoIXN0cmNtcChpLT5zdHJpbmcsICIiKSkKKwkJCW9pZHNldF9jbGVhcigmc2ItPmlnbm9yZV9saXN0KTsKKwkJZWxzZQorCQkJb2lkc2V0X3BhcnNlX2ZpbGUoJnNiLT5pZ25vcmVfbGlzdCwgaS0+c3RyaW5nKTsKKwl9CisJZm9yX2VhY2hfc3RyaW5nX2xpc3RfaXRlbShpLCBpZ25vcmVfcmV2X2xpc3QpIHsKKwkJaWYgKGdldF9vaWRfY29tbWl0dGlzaChpLT5zdHJpbmcsICZvaWQpKQorCQkJZGllKF8oImNhbm5vdCBmaW5kIHJldmlzaW9uICVzIHRvIGlnbm9yZSIpLCBpLT5zdHJpbmcpOworCQlvaWRzZXRfaW5zZXJ0KCZzYi0+aWdub3JlX2xpc3QsICZvaWQpOworCX0KK30KKwogaW50IGNtZF9ibGFtZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKIHsKIAlzdHJ1Y3QgcmV2X2luZm8gcmV2czsKQEAgLTc4NSw2ICs4MzUsNyBAQAogCXN0cnVjdCBwcm9ncmVzc19pbmZvIHBpID0geyBOVUxMLCAwIH07CiAKIAlzdHJ1Y3Qgc3RyaW5nX2xpc3QgcmFuZ2VfbGlzdCA9IFNUUklOR19MSVNUX0lOSVRfTk9EVVA7CisJc3RydWN0IHN0cmluZ19saXN0IGlnbm9yZV9yZXZfbGlzdCA9IFNUUklOR19MSVNUX0lOSVRfTk9EVVA7CiAJaW50IG91dHB1dF9vcHRpb24gPSAwLCBvcHQgPSAwOwogCWludCBzaG93X3N0YXRzID0gMDsKIAljb25zdCBjaGFyICpyZXZzX2ZpbGUgPSBOVUxMOwpAQCAtODA2LDE2ICs4NTcsMTAgQEAKIAkJT1BUX0JJVCgncycsIE5VTEwsICZvdXRwdXRfb3B0aW9uLCBOXygiU3VwcHJlc3MgYXV0aG9yIG5hbWUgYW5kIHRpbWVzdGFtcCAoRGVmYXVsdDogb2ZmKSIpLCBPVVRQVVRfTk9fQVVUSE9SKSwKIAkJT1BUX0JJVCgnZScsICJzaG93LWVtYWlsIiwgJm91dHB1dF9vcHRpb24sIE5fKCJTaG93IGF1dGhvciBlbWFpbCBpbnN0ZWFkIG9mIG5hbWUgKERlZmF1bHQ6IG9mZikiKSwgT1VUUFVUX1NIT1dfRU1BSUwpLAogCQlPUFRfQklUKCd3JywgTlVMTCwgJnhkbF9vcHRzLCBOXygiSWdub3JlIHdoaXRlc3BhY2UgZGlmZmVyZW5jZXMiKSwgWERGX0lHTk9SRV9XSElURVNQQUNFKSwKKwkJT1BUX1NUUklOR19MSVNUKDAsICJpZ25vcmUtcmV2IiwgJmlnbm9yZV9yZXZfbGlzdCwgTl8oInJldiIpLCBOXygiSWdub3JlIDxyZXY+IHdoZW4gYmxhbWluZyIpKSwKKwkJT1BUX1NUUklOR19MSVNUKDAsICJpZ25vcmUtcmV2cy1maWxlIiwgJmlnbm9yZV9yZXZzX2ZpbGVfbGlzdCwgTl8oImZpbGUiKSwgTl8oIklnbm9yZSByZXZpc2lvbnMgZnJvbSA8ZmlsZT4iKSksCiAJCU9QVF9CSVQoMCwgImNvbG9yLWxpbmVzIiwgJm91dHB1dF9vcHRpb24sIE5fKCJjb2xvciByZWR1bmRhbnQgbWV0YWRhdGEgZnJvbSBwcmV2aW91cyBsaW5lIGRpZmZlcmVudGx5IiksIE9VVFBVVF9DT0xPUl9MSU5FKSwKIAkJT1BUX0JJVCgwLCAiY29sb3ItYnktYWdlIiwgJm91dHB1dF9vcHRpb24sIE5fKCJjb2xvciBsaW5lcyBieSBhZ2UiKSwgT1VUUFVUX1NIT1dfQUdFX1dJVEhfQ09MT1IpLAotCi0JCS8qCi0JCSAqIFRoZSBmb2xsb3dpbmcgdHdvIG9wdGlvbnMgYXJlIHBhcnNlZCBieSBwYXJzZV9yZXZpc2lvbl9vcHQoKQotCQkgKiBhbmQgYXJlIG9ubHkgaW5jbHVkZWQgaGVyZSB0byBnZXQgaW5jbHVkZWQgaW4gdGhlICItaCIKLQkJICogb3V0cHV0OgotCQkgKi8KLQkJeyBPUFRJT05fTE9XTEVWRUxfQ0FMTEJBQ0ssIDAsICJpbmRlbnQtaGV1cmlzdGljIiwgTlVMTCwgTlVMTCwgTl8oIlVzZSBhbiBleHBlcmltZW50YWwgaGV1cmlzdGljIHRvIGltcHJvdmUgZGlmZnMiKSwgUEFSU0VfT1BUX05PQVJHLCBwYXJzZV9vcHRfdW5rbm93bl9jYiB9LAotCiAJCU9QVF9CSVQoMCwgIm1pbmltYWwiLCAmeGRsX29wdHMsIE5fKCJTcGVuZCBleHRyYSBjeWNsZXMgdG8gZmluZCBiZXR0ZXIgbWF0Y2giKSwgWERGX05FRURfTUlOSU1BTCksCiAJCU9QVF9TVFJJTkcoJ1MnLCBOVUxMLCAmcmV2c19maWxlLCBOXygiZmlsZSIpLCBOXygiVXNlIHJldmlzaW9ucyBmcm9tIDxmaWxlPiBpbnN0ZWFkIG9mIGNhbGxpbmcgZ2l0LXJldi1saXN0IikpLAogCQlPUFRfU1RSSU5HKDAsICJjb250ZW50cyIsICZjb250ZW50c19mcm9tLCBOXygiZmlsZSIpLCBOXygiVXNlIDxmaWxlPidzIGNvbnRlbnRzIGFzIHRoZSBmaW5hbCBpbWFnZSIpKSwKQEAgLTgzMSw2ICs4NzYsNyBAQAogCXN0cnVjdCByYW5nZV9zZXQgcmFuZ2VzOwogCXVuc2lnbmVkIGludCByYW5nZV9pOwogCWxvbmcgYW5jaG9yOworCWNvbnN0IGludCBoZXhzeiA9IHRoZV9oYXNoX2FsZ28tPmhleHN6OwogCiAJc2V0dXBfZGVmYXVsdF9jb2xvcl9ieV9hZ2UoKTsKIAlnaXRfY29uZmlnKGdpdF9ibGFtZV9jb25maWcsICZvdXRwdXRfb3B0aW9uKTsKQEAgLTg3NywxMSArOTIzLDExIEBACiAJfSBlbHNlIGlmIChzaG93X3Byb2dyZXNzIDwgMCkKIAkJc2hvd19wcm9ncmVzcyA9IGlzYXR0eSgyKTsKIAotCWlmICgwIDwgYWJicmV2ICYmIGFiYnJldiA8IEdJVF9TSEExX0hFWFNaKQorCWlmICgwIDwgYWJicmV2ICYmIGFiYnJldiA8IGhleHN6KQogCQkvKiBvbmUgbW9yZSBhYmJyZXYgbGVuZ3RoIGlzIG5lZWRlZCBmb3IgdGhlIGJvdW5kYXJ5IGNvbW1pdCAqLwogCQlhYmJyZXYrKzsKIAllbHNlIGlmICghYWJicmV2KQotCQlhYmJyZXYgPSBHSVRfU0hBMV9IRVhTWjsKKwkJYWJicmV2ID0gaGV4c3o7CiAKIAlpZiAocmV2c19maWxlICYmIHJlYWRfYW5jZXN0cnkocmV2c19maWxlKSkKIAkJZGllX2Vycm5vKCJyZWFkaW5nIGdyYWZ0IGZpbGUgJyVzJyBmYWlsZWQiLCByZXZzX2ZpbGUpOwpAQCAtOTI1LDYgKzk3MSwxMCBAQAogCQkgKi8KIAkJYmxhbWVfZGF0ZV93aWR0aCA9IHV0Zjhfc3Ryd2lkdGgoXygiNCB5ZWFycywgMTEgbW9udGhzIGFnbyIpKSArIDE7IC8qIGFkZCB0aGUgbnVsbCAqLwogCQlicmVhazsKKwljYXNlIERBVEVfSFVNQU46CisJCS8qIElmIHRoZSB5ZWFyIGlzIHNob3duLCBubyB0aW1lIGlzIHNob3duICovCisJCWJsYW1lX2RhdGVfd2lkdGggPSBzaXplb2YoIlRodSBPY3QgMTkgMTY6MDAiKTsKKwkJYnJlYWs7CiAJY2FzZSBEQVRFX05PUk1BTDoKIAkJYmxhbWVfZGF0ZV93aWR0aCA9IHNpemVvZigiVGh1IE9jdCAxOSAxNjowMDowNCAyMDA2IC0wNzAwIik7CiAJCWJyZWFrOwpAQCAtOTg5LDEyICsxMDM5LDI3IEBACiAKIAlyZXZzLmRpc2FibGVfc3RkaW4gPSAxOwogCXNldHVwX3JldmlzaW9ucyhhcmdjLCBhcmd2LCAmcmV2cywgTlVMTCk7CisJaWYgKCFyZXZzLnBlbmRpbmcubnIgJiYgaXNfYmFyZV9yZXBvc2l0b3J5KCkpIHsKKwkJc3RydWN0IGNvbW1pdCAqaGVhZF9jb21taXQ7CisJCXN0cnVjdCBvYmplY3RfaWQgaGVhZF9vaWQ7CisKKwkJaWYgKCFyZXNvbHZlX3JlZl91bnNhZmUoIkhFQUQiLCBSRVNPTFZFX1JFRl9SRUFESU5HLAorCQkJCQkmaGVhZF9vaWQsIE5VTEwpIHx8CisJCSAgICAhKGhlYWRfY29tbWl0ID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfZ2VudGx5KHJldnMucmVwbywKKwkJCQkJCQkgICAgICZoZWFkX29pZCwgMSkpKQorCQkJZGllKCJubyBzdWNoIHJlZjogSEVBRCIpOworCisJCWFkZF9wZW5kaW5nX29iamVjdCgmcmV2cywgJmhlYWRfY29tbWl0LT5vYmplY3QsICJIRUFEIik7CisJfQogCiAJaW5pdF9zY29yZWJvYXJkKCZzYik7CiAJc2IucmV2cyA9ICZyZXZzOwogCXNiLmNvbnRlbnRzX2Zyb20gPSBjb250ZW50c19mcm9tOwogCXNiLnJldmVyc2UgPSByZXZlcnNlOwogCXNiLnJlcG8gPSB0aGVfcmVwb3NpdG9yeTsKKwlidWlsZF9pZ25vcmVsaXN0KCZzYiwgJmlnbm9yZV9yZXZzX2ZpbGVfbGlzdCwgJmlnbm9yZV9yZXZfbGlzdCk7CisJc3RyaW5nX2xpc3RfY2xlYXIoJmlnbm9yZV9yZXZzX2ZpbGVfbGlzdCwgMCk7CisJc3RyaW5nX2xpc3RfY2xlYXIoJmlnbm9yZV9yZXZfbGlzdCwgMCk7CiAJc2V0dXBfc2NvcmVib2FyZCgmc2IsIHBhdGgsICZvKTsKIAlsbm8gPSBzYi5udW1fbGluZXM7CiAKQEAgLTEwMDcsNyArMTA3Miw4IEBACiAJCWxvbmcgYm90dG9tLCB0b3A7CiAJCWlmIChwYXJzZV9yYW5nZV9hcmcocmFuZ2VfbGlzdC5pdGVtc1tyYW5nZV9pXS5zdHJpbmcsCiAJCQkJICAgIG50aF9saW5lX2NiLCAmc2IsIGxubywgYW5jaG9yLAotCQkJCSAgICAmYm90dG9tLCAmdG9wLCBzYi5wYXRoLCAmdGhlX2luZGV4KSkKKwkJCQkgICAgJmJvdHRvbSwgJnRvcCwgc2IucGF0aCwKKwkJCQkgICAgdGhlX3JlcG9zaXRvcnktPmluZGV4KSkKIAkJCXVzYWdlKGJsYW1lX3VzYWdlKTsKIAkJaWYgKCghbG5vICYmICh0b3AgfHwgYm90dG9tKSkgfHwgbG5vIDwgYm90dG9tKQogCQkJZGllKFFfKCJmaWxlICVzIGhhcyBvbmx5ICVsdSBsaW5lIiwKQEAgLTEwNDQsNyArMTExMCw3IEBACiAJaWYgKGJsYW1lX2NvcHlfc2NvcmUpCiAJCXNiLmNvcHlfc2NvcmUgPSBibGFtZV9jb3B5X3Njb3JlOwogCi0Jc2IuZGVidWcgPSBERUJVRzsKKwlzYi5kZWJ1ZyA9IERFQlVHX0JMQU1FOwogCXNiLm9uX3Nhbml0eV9mYWlsID0gJnNhbml0eV9jaGVja19vbl9mYWlsOwogCiAJc2Iuc2hvd19yb290ID0gc2hvd19yb290OwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9icmFuY2guYyBiL2J1aWx0aW4vYnJhbmNoLmMKaW5kZXggMGM1NWY3Zi4uZDgyOTdmOCAxMDA2NDQKLS0tIGEvYnVpbHRpbi9icmFuY2guYworKysgYi9idWlsdGluL2JyYW5jaC5jCkBAIC00Nyw2ICs0Nyw3IEBACiAJR0lUX0NPTE9SX05PUk1BTCwgICAgICAgLyogTE9DQUwgKi8KIAlHSVRfQ09MT1JfR1JFRU4sICAgICAgICAvKiBDVVJSRU5UICovCiAJR0lUX0NPTE9SX0JMVUUsICAgICAgICAgLyogVVBTVFJFQU0gKi8KKwlHSVRfQ09MT1JfQ1lBTiwgICAgICAgICAvKiBXT1JLVFJFRSAqLwogfTsKIGVudW0gY29sb3JfYnJhbmNoIHsKIAlCUkFOQ0hfQ09MT1JfUkVTRVQgPSAwLApAQCAtNTQsNyArNTUsOCBAQAogCUJSQU5DSF9DT0xPUl9SRU1PVEUgPSAyLAogCUJSQU5DSF9DT0xPUl9MT0NBTCA9IDMsCiAJQlJBTkNIX0NPTE9SX0NVUlJFTlQgPSA0LAotCUJSQU5DSF9DT0xPUl9VUFNUUkVBTSA9IDUKKwlCUkFOQ0hfQ09MT1JfVVBTVFJFQU0gPSA1LAorCUJSQU5DSF9DT0xPUl9XT1JLVFJFRSA9IDYKIH07CiAKIHN0YXRpYyBjb25zdCBjaGFyICpjb2xvcl9icmFuY2hfc2xvdHNbXSA9IHsKQEAgLTY0LDYgKzY2LDcgQEAKIAlbQlJBTkNIX0NPTE9SX0xPQ0FMXQk9ICJsb2NhbCIsCiAJW0JSQU5DSF9DT0xPUl9DVVJSRU5UXQk9ICJjdXJyZW50IiwKIAlbQlJBTkNIX0NPTE9SX1VQU1RSRUFNXSA9ICJ1cHN0cmVhbSIsCisJW0JSQU5DSF9DT0xPUl9XT1JLVFJFRV0gPSAid29ya3RyZWUiLAogfTsKIAogc3RhdGljIHN0cnVjdCBzdHJpbmdfbGlzdCBvdXRwdXQgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKQEAgLTM0Miw5ICszNDUsMTAgQEAKIAlzdHJ1Y3Qgc3RyYnVmIGxvY2FsID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHN0cmJ1ZiByZW1vdGUgPSBTVFJCVUZfSU5JVDsKIAotCXN0cmJ1Zl9hZGRmKCZsb2NhbCwgIiUlKGlmKSUlKEhFQUQpJSUodGhlbikqICVzJSUoZWxzZSkgICVzJSUoZW5kKSIsCi0JCSAgICBicmFuY2hfZ2V0X2NvbG9yKEJSQU5DSF9DT0xPUl9DVVJSRU5UKSwKLQkJICAgIGJyYW5jaF9nZXRfY29sb3IoQlJBTkNIX0NPTE9SX0xPQ0FMKSk7CisJc3RyYnVmX2FkZGYoJmxvY2FsLCAiJSUoaWYpJSUoSEVBRCklJSh0aGVuKSogJXMlJShlbHNlKSUlKGlmKSUlKHdvcmt0cmVlcGF0aCklJSh0aGVuKSsgJXMlJShlbHNlKSAgJXMlJShlbmQpJSUoZW5kKSIsCisJCQlicmFuY2hfZ2V0X2NvbG9yKEJSQU5DSF9DT0xPUl9DVVJSRU5UKSwKKwkJCWJyYW5jaF9nZXRfY29sb3IoQlJBTkNIX0NPTE9SX1dPUktUUkVFKSwKKwkJCWJyYW5jaF9nZXRfY29sb3IoQlJBTkNIX0NPTE9SX0xPQ0FMKSk7CiAJc3RyYnVmX2FkZGYoJnJlbW90ZSwgIiAgJXMiLAogCQkgICAgYnJhbmNoX2dldF9jb2xvcihCUkFOQ0hfQ09MT1JfUkVNT1RFKSk7CiAKQEAgLTM2Myw5ICszNjcsMTMgQEAKIAkJc3RyYnVmX2FkZGYoJmxvY2FsLCAiICVzICIsIG9ibmFtZS5idWYpOwogCiAJCWlmIChmaWx0ZXItPnZlcmJvc2UgPiAxKQorCQl7CisJCQlzdHJidWZfYWRkZigmbG9jYWwsICIlJShpZjpub3RlcXVhbHM9KiklJShIRUFEKSUlKHRoZW4pJSUoaWYpJSUod29ya3RyZWVwYXRoKSUlKHRoZW4pKCVzJSUod29ya3RyZWVwYXRoKSVzKSAlJShlbmQpJSUoZW5kKSIsCisJCQkJICAgIGJyYW5jaF9nZXRfY29sb3IoQlJBTkNIX0NPTE9SX1dPUktUUkVFKSwgYnJhbmNoX2dldF9jb2xvcihCUkFOQ0hfQ09MT1JfUkVTRVQpKTsKIAkJCXN0cmJ1Zl9hZGRmKCZsb2NhbCwgIiUlKGlmKSUlKHVwc3RyZWFtKSUlKHRoZW4pWyVzJSUodXBzdHJlYW06c2hvcnQpJXMlJShpZiklJSh1cHN0cmVhbTp0cmFjaykiCiAJCQkJICAgICIlJSh0aGVuKTogJSUodXBzdHJlYW06dHJhY2ssbm9icmFja2V0KSUlKGVuZCldICUlKGVuZCklJShjb250ZW50czpzdWJqZWN0KSIsCiAJCQkJICAgIGJyYW5jaF9nZXRfY29sb3IoQlJBTkNIX0NPTE9SX1VQU1RSRUFNKSwgYnJhbmNoX2dldF9jb2xvcihCUkFOQ0hfQ09MT1JfUkVTRVQpKTsKKwkJfQogCQllbHNlCiAJCQlzdHJidWZfYWRkZigmbG9jYWwsICIlJShpZiklJSh1cHN0cmVhbTp0cmFjayklJSh0aGVuKSUlKHVwc3RyZWFtOnRyYWNrKSAlJShlbmQpJSUoY29udGVudHM6c3ViamVjdCkiKTsKIApAQCAtNDQzLDYgKzQ1MSwyMSBAQAogCWZyZWUodG9fZnJlZSk7CiB9CiAKK3N0YXRpYyB2b2lkIHByaW50X2N1cnJlbnRfYnJhbmNoX25hbWUodm9pZCkKK3sKKwlpbnQgZmxhZ3M7CisJY29uc3QgY2hhciAqcmVmbmFtZSA9IHJlc29sdmVfcmVmX3Vuc2FmZSgiSEVBRCIsIDAsIE5VTEwsICZmbGFncyk7CisJY29uc3QgY2hhciAqc2hvcnRuYW1lOworCWlmICghcmVmbmFtZSkKKwkJZGllKF8oImNvdWxkIG5vdCByZXNvbHZlIEhFQUQiKSk7CisJZWxzZSBpZiAoIShmbGFncyAmIFJFRl9JU1NZTVJFRikpCisJCXJldHVybjsKKwllbHNlIGlmIChza2lwX3ByZWZpeChyZWZuYW1lLCAicmVmcy9oZWFkcy8iLCAmc2hvcnRuYW1lKSkKKwkJcHV0cyhzaG9ydG5hbWUpOworCWVsc2UKKwkJZGllKF8oIkhFQUQgKCVzKSBwb2ludHMgb3V0c2lkZSBvZiByZWZzL2hlYWRzLyIpLCByZWZuYW1lKTsKK30KKwogc3RhdGljIHZvaWQgcmVqZWN0X3JlYmFzZV9vcl9iaXNlY3RfYnJhbmNoKGNvbnN0IGNoYXIgKnRhcmdldCkKIHsKIAlzdHJ1Y3Qgd29ya3RyZWUgKip3b3JrdHJlZXMgPSBnZXRfd29ya3RyZWVzKDApOwpAQCAtNTgxLDYgKzYwNCw3IEBACiBpbnQgY21kX2JyYW5jaChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKIHsKIAlpbnQgZGVsZXRlID0gMCwgcmVuYW1lID0gMCwgY29weSA9IDAsIGZvcmNlID0gMCwgbGlzdCA9IDA7CisJaW50IHNob3dfY3VycmVudCA9IDA7CiAJaW50IHJlZmxvZyA9IDAsIGVkaXRfZGVzY3JpcHRpb24gPSAwOwogCWludCBxdWlldCA9IDAsIHVuc2V0X3Vwc3RyZWFtID0gMDsKIAljb25zdCBjaGFyICpuZXdfdXBzdHJlYW0gPSBOVUxMOwpAQCAtNjAwLDcgKzYyNCw3IEBACiAJCU9QVF9TRVRfSU5UX0YoMCwgInNldC11cHN0cmVhbSIsICZ0cmFjaywgTl8oImRvIG5vdCB1c2UiKSwKIAkJCUJSQU5DSF9UUkFDS19PVkVSUklERSwgUEFSU0VfT1BUX0hJRERFTiksCiAJCU9QVF9TVFJJTkcoJ3UnLCAic2V0LXVwc3RyZWFtLXRvIiwgJm5ld191cHN0cmVhbSwgTl8oInVwc3RyZWFtIiksIE5fKCJjaGFuZ2UgdGhlIHVwc3RyZWFtIGluZm8iKSksCi0JCU9QVF9CT09MKDAsICJ1bnNldC11cHN0cmVhbSIsICZ1bnNldF91cHN0cmVhbSwgTl8oIlVuc2V0IHRoZSB1cHN0cmVhbSBpbmZvIikpLAorCQlPUFRfQk9PTCgwLCAidW5zZXQtdXBzdHJlYW0iLCAmdW5zZXRfdXBzdHJlYW0sIE5fKCJ1bnNldCB0aGUgdXBzdHJlYW0gaW5mbyIpKSwKIAkJT1BUX19DT0xPUigmYnJhbmNoX3VzZV9jb2xvciwgTl8oInVzZSBjb2xvcmVkIG91dHB1dCIpKSwKIAkJT1BUX1NFVF9JTlQoJ3InLCAicmVtb3RlcyIsICAgICAmZmlsdGVyLmtpbmQsIE5fKCJhY3Qgb24gcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIiksCiAJCQlGSUxURVJfUkVGU19SRU1PVEVTKSwKQEAgLTYyMCw2ICs2NDQsNyBAQAogCQlPUFRfQklUKCdjJywgImNvcHkiLCAmY29weSwgTl8oImNvcHkgYSBicmFuY2ggYW5kIGl0cyByZWZsb2ciKSwgMSksCiAJCU9QVF9CSVQoJ0MnLCBOVUxMLCAmY29weSwgTl8oImNvcHkgYSBicmFuY2gsIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIpLCAyKSwKIAkJT1BUX0JPT0woJ2wnLCAibGlzdCIsICZsaXN0LCBOXygibGlzdCBicmFuY2ggbmFtZXMiKSksCisJCU9QVF9CT09MKDAsICJzaG93LWN1cnJlbnQiLCAmc2hvd19jdXJyZW50LCBOXygic2hvdyBjdXJyZW50IGJyYW5jaCBuYW1lIikpLAogCQlPUFRfQk9PTCgwLCAiY3JlYXRlLXJlZmxvZyIsICZyZWZsb2csIE5fKCJjcmVhdGUgdGhlIGJyYW5jaCdzIHJlZmxvZyIpKSwKIAkJT1BUX0JPT0woMCwgImVkaXQtZGVzY3JpcHRpb24iLCAmZWRpdF9kZXNjcmlwdGlvbiwKIAkJCSBOXygiZWRpdCB0aGUgZGVzY3JpcHRpb24gZm9yIHRoZSBicmFuY2giKSksCkBAIC02MjcsOCArNjUyLDcgQEAKIAkJT1BUX01FUkdFRCgmZmlsdGVyLCBOXygicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGFyZSBtZXJnZWQiKSksCiAJCU9QVF9OT19NRVJHRUQoJmZpbHRlciwgTl8oInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBhcmUgbm90IG1lcmdlZCIpKSwKIAkJT1BUX0NPTFVNTigwLCAiY29sdW1uIiwgJmNvbG9wdHMsIE5fKCJsaXN0IGJyYW5jaGVzIGluIGNvbHVtbnMiKSksCi0JCU9QVF9DQUxMQkFDSygwICwgInNvcnQiLCBzb3J0aW5nX3RhaWwsIE5fKCJrZXkiKSwKLQkJCSAgICAgTl8oImZpZWxkIG5hbWUgdG8gc29ydCBvbiIpLCAmcGFyc2Vfb3B0X3JlZl9zb3J0aW5nKSwKKwkJT1BUX1JFRl9TT1JUKHNvcnRpbmdfdGFpbCksCiAJCXsKIAkJCU9QVElPTl9DQUxMQkFDSywgMCwgInBvaW50cy1hdCIsICZmaWx0ZXIucG9pbnRzX2F0LCBOXygib2JqZWN0IiksCiAJCQlOXygicHJpbnQgb25seSBicmFuY2hlcyBvZiB0aGUgb2JqZWN0IiksIDAsIHBhcnNlX29wdF9vYmplY3RfbmFtZQpAQCAtNjYyLDE0ICs2ODYsMTUgQEAKIAlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsIG9wdGlvbnMsIGJ1aWx0aW5fYnJhbmNoX3VzYWdlLAogCQkJICAgICAwKTsKIAotCWlmICghZGVsZXRlICYmICFyZW5hbWUgJiYgIWNvcHkgJiYgIWVkaXRfZGVzY3JpcHRpb24gJiYgIW5ld191cHN0cmVhbSAmJiAhdW5zZXRfdXBzdHJlYW0gJiYgYXJnYyA9PSAwKQorCWlmICghZGVsZXRlICYmICFyZW5hbWUgJiYgIWNvcHkgJiYgIWVkaXRfZGVzY3JpcHRpb24gJiYgIW5ld191cHN0cmVhbSAmJgorCSAgICAhc2hvd19jdXJyZW50ICYmICF1bnNldF91cHN0cmVhbSAmJiBhcmdjID09IDApCiAJCWxpc3QgPSAxOwogCiAJaWYgKGZpbHRlci53aXRoX2NvbW1pdCB8fCBmaWx0ZXIubWVyZ2UgIT0gUkVGX0ZJTFRFUl9NRVJHRURfTk9ORSB8fCBmaWx0ZXIucG9pbnRzX2F0Lm5yIHx8CiAJICAgIGZpbHRlci5ub19jb21taXQpCiAJCWxpc3QgPSAxOwogCi0JaWYgKCEhZGVsZXRlICsgISFyZW5hbWUgKyAhIWNvcHkgKyAhIW5ld191cHN0cmVhbSArCisJaWYgKCEhZGVsZXRlICsgISFyZW5hbWUgKyAhIWNvcHkgKyAhIW5ld191cHN0cmVhbSArICEhc2hvd19jdXJyZW50ICsKIAkgICAgbGlzdCArIHVuc2V0X3Vwc3RyZWFtID4gMSkKIAkJdXNhZ2Vfd2l0aF9vcHRpb25zKGJ1aWx0aW5fYnJhbmNoX3VzYWdlLCBvcHRpb25zKTsKIApAQCAtNjk3LDYgKzcyMiw5IEBACiAJCWlmICghYXJnYykKIAkJCWRpZShfKCJicmFuY2ggbmFtZSByZXF1aXJlZCIpKTsKIAkJcmV0dXJuIGRlbGV0ZV9icmFuY2hlcyhhcmdjLCBhcmd2LCBkZWxldGUgPiAxLCBmaWx0ZXIua2luZCwgcXVpZXQpOworCX0gZWxzZSBpZiAoc2hvd19jdXJyZW50KSB7CisJCXByaW50X2N1cnJlbnRfYnJhbmNoX25hbWUoKTsKKwkJcmV0dXJuIDA7CiAJfSBlbHNlIGlmIChsaXN0KSB7CiAJCS8qICBnaXQgYnJhbmNoIC0tbG9jYWwgYWxzbyBzaG93cyBIRUFEIHdoZW4gaXQgaXMgZGV0YWNoZWQgKi8KIAkJaWYgKChmaWx0ZXIua2luZCAmIEZJTFRFUl9SRUZTX0JSQU5DSEVTKSAmJiBmaWx0ZXIuZGV0YWNoZWQpCkBAIC03ODMsNyArODExLDggQEAKIAkJICogY3JlYXRlX2JyYW5jaCB0YWtlcyBjYXJlIG9mIHNldHRpbmcgdXAgdGhlIHRyYWNraW5nCiAJCSAqIGluZm8gYW5kIG1ha2luZyBzdXJlIG5ld191cHN0cmVhbSBpcyBjb3JyZWN0CiAJCSAqLwotCQljcmVhdGVfYnJhbmNoKGJyYW5jaC0+bmFtZSwgbmV3X3Vwc3RyZWFtLCAwLCAwLCAwLCBxdWlldCwgQlJBTkNIX1RSQUNLX09WRVJSSURFKTsKKwkJY3JlYXRlX2JyYW5jaCh0aGVfcmVwb3NpdG9yeSwgYnJhbmNoLT5uYW1lLCBuZXdfdXBzdHJlYW0sCisJCQkgICAgICAwLCAwLCAwLCBxdWlldCwgQlJBTkNIX1RSQUNLX09WRVJSSURFKTsKIAl9IGVsc2UgaWYgKHVuc2V0X3Vwc3RyZWFtKSB7CiAJCXN0cnVjdCBicmFuY2ggKmJyYW5jaCA9IGJyYW5jaF9nZXQoYXJndlswXSk7CiAJCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CkBAIC04MDksMTIgKzgzOCwxNCBAQAogCQlzdHJidWZfcmVsZWFzZSgmYnVmKTsKIAl9IGVsc2UgaWYgKGFyZ2MgPiAwICYmIGFyZ2MgPD0gMikgewogCQlpZiAoZmlsdGVyLmtpbmQgIT0gRklMVEVSX1JFRlNfQlJBTkNIRVMpCi0JCQlkaWUoXygiLWEgYW5kIC1yIG9wdGlvbnMgdG8gJ2dpdCBicmFuY2gnIGRvIG5vdCBtYWtlIHNlbnNlIHdpdGggYSBicmFuY2ggbmFtZSIpKTsKKwkJCWRpZShfKCJUaGUgLWEsIGFuZCAtciwgb3B0aW9ucyB0byAnZ2l0IGJyYW5jaCcgZG8gbm90IHRha2UgYSBicmFuY2ggbmFtZS5cbiIKKwkJCQkgICJEaWQgeW91IG1lYW4gdG8gdXNlOiAtYXwtciAtLWxpc3QgPHBhdHRlcm4+PyIpKTsKIAogCQlpZiAodHJhY2sgPT0gQlJBTkNIX1RSQUNLX09WRVJSSURFKQogCQkJZGllKF8oInRoZSAnLS1zZXQtdXBzdHJlYW0nIG9wdGlvbiBpcyBubyBsb25nZXIgc3VwcG9ydGVkLiBQbGVhc2UgdXNlICctLXRyYWNrJyBvciAnLS1zZXQtdXBzdHJlYW0tdG8nIGluc3RlYWQuIikpOwogCi0JCWNyZWF0ZV9icmFuY2goYXJndlswXSwgKGFyZ2MgPT0gMikgPyBhcmd2WzFdIDogaGVhZCwKKwkJY3JlYXRlX2JyYW5jaCh0aGVfcmVwb3NpdG9yeSwKKwkJCSAgICAgIGFyZ3ZbMF0sIChhcmdjID09IDIpID8gYXJndlsxXSA6IGhlYWQsCiAJCQkgICAgICBmb3JjZSwgMCwgcmVmbG9nLCBxdWlldCwgdHJhY2spOwogCiAJfSBlbHNlCmRpZmYgLS1naXQgYS9idWlsdGluL2J1bmRsZS5jIGIvYnVpbHRpbi9idW5kbGUuYwppbmRleCBkMGRlNTliLi5mMDQ5ZDI3IDEwMDY0NAotLS0gYS9idWlsdGluL2J1bmRsZS5jCisrKyBiL2J1aWx0aW4vYnVuZGxlLmMKQEAgLTEsNCArMSw2IEBACiAjaW5jbHVkZSAiYnVpbHRpbi5oIgorI2luY2x1ZGUgImFyZ3YtYXJyYXkuaCIKKyNpbmNsdWRlICJwYXJzZS1vcHRpb25zLmgiCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJidW5kbGUuaCIKIApAQCAtOSw1OSArMTEsMTg0IEBACiAgKiBidW5kbGUgc3VwcG9ydGluZyAiZmV0Y2giLCAicHVsbCIsIGFuZCAibHMtcmVtb3RlIi4KICAqLwogCi1zdGF0aWMgY29uc3QgY2hhciBidWlsdGluX2J1bmRsZV91c2FnZVtdID0KLSAgImdpdCBidW5kbGUgY3JlYXRlIDxmaWxlPiA8Z2l0LXJldi1saXN0IGFyZ3M+XG4iCi0gICIgICBvcjogZ2l0IGJ1bmRsZSB2ZXJpZnkgPGZpbGU+XG4iCi0gICIgICBvcjogZ2l0IGJ1bmRsZSBsaXN0LWhlYWRzIDxmaWxlPiBbPHJlZm5hbWU+Li4uXVxuIgotICAiICAgb3I6IGdpdCBidW5kbGUgdW5idW5kbGUgPGZpbGU+IFs8cmVmbmFtZT4uLi5dIjsKK3N0YXRpYyBjb25zdCBjaGFyICogY29uc3QgYnVpbHRpbl9idW5kbGVfdXNhZ2VbXSA9IHsKKyAgTl8oImdpdCBidW5kbGUgY3JlYXRlIFs8b3B0aW9ucz5dIDxmaWxlPiA8Z2l0LXJldi1saXN0IGFyZ3M+IiksCisgIE5fKCJnaXQgYnVuZGxlIHZlcmlmeSBbPG9wdGlvbnM+XSA8ZmlsZT4iKSwKKyAgTl8oImdpdCBidW5kbGUgbGlzdC1oZWFkcyA8ZmlsZT4gWzxyZWZuYW1lPi4uLl0iKSwKKyAgTl8oImdpdCBidW5kbGUgdW5idW5kbGUgPGZpbGU+IFs8cmVmbmFtZT4uLi5dIiksCisgIE5VTEwKK307CisKK3N0YXRpYyBjb25zdCBjaGFyICogY29uc3QgYnVpbHRpbl9idW5kbGVfY3JlYXRlX3VzYWdlW10gPSB7CisgIE5fKCJnaXQgYnVuZGxlIGNyZWF0ZSBbPG9wdGlvbnM+XSA8ZmlsZT4gPGdpdC1yZXYtbGlzdCBhcmdzPiIpLAorICBOVUxMCit9OworCitzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGJ1aWx0aW5fYnVuZGxlX3ZlcmlmeV91c2FnZVtdID0geworICBOXygiZ2l0IGJ1bmRsZSB2ZXJpZnkgWzxvcHRpb25zPl0gPGZpbGU+IiksCisgIE5VTEwKK307CisKK3N0YXRpYyBjb25zdCBjaGFyICogY29uc3QgYnVpbHRpbl9idW5kbGVfbGlzdF9oZWFkc191c2FnZVtdID0geworICBOXygiZ2l0IGJ1bmRsZSBsaXN0LWhlYWRzIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIpLAorICBOVUxMCit9OworCitzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGJ1aWx0aW5fYnVuZGxlX3VuYnVuZGxlX3VzYWdlW10gPSB7CisgIE5fKCJnaXQgYnVuZGxlIHVuYnVuZGxlIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIpLAorICBOVUxMCit9OworCitzdGF0aWMgaW50IHZlcmJvc2U7CisKK3N0YXRpYyBpbnQgcGFyc2Vfb3B0aW9uc19jbWRfYnVuZGxlKGludCBhcmdjLAorCQljb25zdCBjaGFyICoqYXJndiwKKwkJY29uc3QgY2hhciogcHJlZml4LAorCQljb25zdCBjaGFyICogY29uc3QgdXNhZ2VzdHJbXSwKKwkJY29uc3Qgc3RydWN0IG9wdGlvbiBvcHRpb25zW10sCisJCWNvbnN0IGNoYXIgKipidW5kbGVfZmlsZSkgeworCWludCBuZXdhcmdjOworCW5ld2FyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIE5VTEwsIG9wdGlvbnMsIHVzYWdlc3RyLAorCQkJICAgICBQQVJTRV9PUFRfU1RPUF9BVF9OT05fT1BUSU9OKTsKKwlpZiAoYXJnYyA8IDEpCisJCXVzYWdlX3dpdGhfb3B0aW9ucyh1c2FnZXN0ciwgb3B0aW9ucyk7CisJKmJ1bmRsZV9maWxlID0gcHJlZml4X2ZpbGVuYW1lKHByZWZpeCwgYXJndlswXSk7CisJcmV0dXJuIG5ld2FyZ2M7Cit9CisKK3N0YXRpYyBpbnQgY21kX2J1bmRsZV9jcmVhdGUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpIHsKKwlpbnQgYWxsX3Byb2dyZXNzX2ltcGxpZWQgPSAwOworCWludCBwcm9ncmVzcyA9IGlzYXR0eShTVERFUlJfRklMRU5PKTsKKwlzdHJ1Y3QgYXJndl9hcnJheSBwYWNrX29wdHM7CisKKwlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwkJT1BUX1NFVF9JTlQoJ3EnLCAicXVpZXQiLCAmcHJvZ3Jlc3MsCisJCQkgICAgTl8oImRvIG5vdCBzaG93IHByb2dyZXNzIG1ldGVyIiksIDApLAorCQlPUFRfU0VUX0lOVCgwLCAicHJvZ3Jlc3MiLCAmcHJvZ3Jlc3MsCisJCQkgICAgTl8oInNob3cgcHJvZ3Jlc3MgbWV0ZXIiKSwgMSksCisJCU9QVF9TRVRfSU5UKDAsICJhbGwtcHJvZ3Jlc3MiLCAmcHJvZ3Jlc3MsCisJCQkgICAgTl8oInNob3cgcHJvZ3Jlc3MgbWV0ZXIgZHVyaW5nIG9iamVjdCB3cml0aW5nIHBoYXNlIiksIDIpLAorCQlPUFRfQk9PTCgwLCAiYWxsLXByb2dyZXNzLWltcGxpZWQiLAorCQkJICZhbGxfcHJvZ3Jlc3NfaW1wbGllZCwKKwkJCSBOXygic2ltaWxhciB0byAtLWFsbC1wcm9ncmVzcyB3aGVuIHByb2dyZXNzIG1ldGVyIGlzIHNob3duIikpLAorCQlPUFRfRU5EKCkKKwl9OworCWNvbnN0IGNoYXIqIGJ1bmRsZV9maWxlOworCisJYXJnYyA9IHBhcnNlX29wdGlvbnNfY21kX2J1bmRsZShhcmdjLCBhcmd2LCBwcmVmaXgsCisJCQlidWlsdGluX2J1bmRsZV9jcmVhdGVfdXNhZ2UsIG9wdGlvbnMsICZidW5kbGVfZmlsZSk7CisJLyogYnVuZGxlIGludGVybmFscyB1c2UgYXJndlsxXSBhcyBmdXJ0aGVyIHBhcmFtZXRlcnMgKi8KKworCWFyZ3ZfYXJyYXlfaW5pdCgmcGFja19vcHRzKTsKKwlpZiAocHJvZ3Jlc3MgPT0gMCkKKwkJYXJndl9hcnJheV9wdXNoKCZwYWNrX29wdHMsICItLXF1aWV0Iik7CisJZWxzZSBpZiAocHJvZ3Jlc3MgPT0gMSkKKwkJYXJndl9hcnJheV9wdXNoKCZwYWNrX29wdHMsICItLXByb2dyZXNzIik7CisJZWxzZSBpZiAocHJvZ3Jlc3MgPT0gMikKKwkJYXJndl9hcnJheV9wdXNoKCZwYWNrX29wdHMsICItLWFsbC1wcm9ncmVzcyIpOworCWlmIChwcm9ncmVzcyAmJiBhbGxfcHJvZ3Jlc3NfaW1wbGllZCkKKwkJYXJndl9hcnJheV9wdXNoKCZwYWNrX29wdHMsICItLWFsbC1wcm9ncmVzcy1pbXBsaWVkIik7CisKKwlpZiAoIXN0YXJ0dXBfaW5mby0+aGF2ZV9yZXBvc2l0b3J5KQorCQlkaWUoXygiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIpKTsKKwlyZXR1cm4gISFjcmVhdGVfYnVuZGxlKHRoZV9yZXBvc2l0b3J5LCBidW5kbGVfZmlsZSwgYXJnYywgYXJndiwgJnBhY2tfb3B0cyk7Cit9CisKK3N0YXRpYyBpbnQgY21kX2J1bmRsZV92ZXJpZnkoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpIHsKKwlzdHJ1Y3QgYnVuZGxlX2hlYWRlciBoZWFkZXI7CisJaW50IGJ1bmRsZV9mZCA9IC0xOworCWludCBxdWlldCA9IDA7CisKKwlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwkJT1BUX0JPT0woJ3EnLCAicXVpZXQiLCAmcXVpZXQsCisJCQkgICAgTl8oImRvIG5vdCBzaG93IGJ1bmRsZSBkZXRhaWxzIikpLAorCQlPUFRfRU5EKCkKKwl9OworCWNvbnN0IGNoYXIqIGJ1bmRsZV9maWxlOworCisJYXJnYyA9IHBhcnNlX29wdGlvbnNfY21kX2J1bmRsZShhcmdjLCBhcmd2LCBwcmVmaXgsCisJCQlidWlsdGluX2J1bmRsZV92ZXJpZnlfdXNhZ2UsIG9wdGlvbnMsICZidW5kbGVfZmlsZSk7CisJLyogYnVuZGxlIGludGVybmFscyB1c2UgYXJndlsxXSBhcyBmdXJ0aGVyIHBhcmFtZXRlcnMgKi8KKworCW1lbXNldCgmaGVhZGVyLCAwLCBzaXplb2YoaGVhZGVyKSk7CisJaWYgKChidW5kbGVfZmQgPSByZWFkX2J1bmRsZV9oZWFkZXIoYnVuZGxlX2ZpbGUsICZoZWFkZXIpKSA8IDApCisJCXJldHVybiAxOworCWNsb3NlKGJ1bmRsZV9mZCk7CisJaWYgKHZlcmlmeV9idW5kbGUodGhlX3JlcG9zaXRvcnksICZoZWFkZXIsICFxdWlldCkpCisJCXJldHVybiAxOworCWZwcmludGYoc3RkZXJyLCBfKCIlcyBpcyBva2F5XG4iKSwgYnVuZGxlX2ZpbGUpOworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGNtZF9idW5kbGVfbGlzdF9oZWFkcyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkgeworCXN0cnVjdCBidW5kbGVfaGVhZGVyIGhlYWRlcjsKKwlpbnQgYnVuZGxlX2ZkID0gLTE7CisKKwlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwkJT1BUX0VORCgpCisJfTsKKwljb25zdCBjaGFyKiBidW5kbGVfZmlsZTsKKworCWFyZ2MgPSBwYXJzZV9vcHRpb25zX2NtZF9idW5kbGUoYXJnYywgYXJndiwgcHJlZml4LAorCQkJYnVpbHRpbl9idW5kbGVfbGlzdF9oZWFkc191c2FnZSwgb3B0aW9ucywgJmJ1bmRsZV9maWxlKTsKKwkvKiBidW5kbGUgaW50ZXJuYWxzIHVzZSBhcmd2WzFdIGFzIGZ1cnRoZXIgcGFyYW1ldGVycyAqLworCisJbWVtc2V0KCZoZWFkZXIsIDAsIHNpemVvZihoZWFkZXIpKTsKKwlpZiAoKGJ1bmRsZV9mZCA9IHJlYWRfYnVuZGxlX2hlYWRlcihidW5kbGVfZmlsZSwgJmhlYWRlcikpIDwgMCkKKwkJcmV0dXJuIDE7CisJY2xvc2UoYnVuZGxlX2ZkKTsKKwlyZXR1cm4gISFsaXN0X2J1bmRsZV9yZWZzKCZoZWFkZXIsIGFyZ2MsIGFyZ3YpOworfQorCitzdGF0aWMgaW50IGNtZF9idW5kbGVfdW5idW5kbGUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpIHsKKwlzdHJ1Y3QgYnVuZGxlX2hlYWRlciBoZWFkZXI7CisJaW50IGJ1bmRsZV9mZCA9IC0xOworCisJc3RydWN0IG9wdGlvbiBvcHRpb25zW10gPSB7CisJCU9QVF9FTkQoKQorCX07CisJY29uc3QgY2hhciogYnVuZGxlX2ZpbGU7CisKKwlhcmdjID0gcGFyc2Vfb3B0aW9uc19jbWRfYnVuZGxlKGFyZ2MsIGFyZ3YsIHByZWZpeCwKKwkJCWJ1aWx0aW5fYnVuZGxlX3VuYnVuZGxlX3VzYWdlLCBvcHRpb25zLCAmYnVuZGxlX2ZpbGUpOworCS8qIGJ1bmRsZSBpbnRlcm5hbHMgdXNlIGFyZ3ZbMV0gYXMgZnVydGhlciBwYXJhbWV0ZXJzICovCisKKwltZW1zZXQoJmhlYWRlciwgMCwgc2l6ZW9mKGhlYWRlcikpOworCWlmICgoYnVuZGxlX2ZkID0gcmVhZF9idW5kbGVfaGVhZGVyKGJ1bmRsZV9maWxlLCAmaGVhZGVyKSkgPCAwKQorCQlyZXR1cm4gMTsKKwlpZiAoIXN0YXJ0dXBfaW5mby0+aGF2ZV9yZXBvc2l0b3J5KQorCQlkaWUoXygiTmVlZCBhIHJlcG9zaXRvcnkgdG8gdW5idW5kbGUuIikpOworCXJldHVybiAhIXVuYnVuZGxlKHRoZV9yZXBvc2l0b3J5LCAmaGVhZGVyLCBidW5kbGVfZmQsIDApIHx8CisJCWxpc3RfYnVuZGxlX3JlZnMoJmhlYWRlciwgYXJnYywgYXJndik7Cit9CiAKIGludCBjbWRfYnVuZGxlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KQogewotCXN0cnVjdCBidW5kbGVfaGVhZGVyIGhlYWRlcjsKLQljb25zdCBjaGFyICpjbWQsICpidW5kbGVfZmlsZTsKLQlpbnQgYnVuZGxlX2ZkID0gLTE7CisJc3RydWN0IG9wdGlvbiBvcHRpb25zW10gPSB7CisJCU9QVF9fVkVSQk9TRSgmdmVyYm9zZSwgTl8oImJlIHZlcmJvc2U7IG11c3QgYmUgcGxhY2VkIGJlZm9yZSBhIHN1YmNvbW1hbmQiKSksCisJCU9QVF9FTkQoKQorCX07CisJaW50IHJlc3VsdDsKIAotCWlmIChhcmdjIDwgMykKLQkJdXNhZ2UoYnVpbHRpbl9idW5kbGVfdXNhZ2UpOworCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywgYnVpbHRpbl9idW5kbGVfdXNhZ2UsCisJCVBBUlNFX09QVF9TVE9QX0FUX05PTl9PUFRJT04pOwogCi0JY21kID0gYXJndlsxXTsKLQlidW5kbGVfZmlsZSA9IHByZWZpeF9maWxlbmFtZShwcmVmaXgsIGFyZ3ZbMl0pOwotCWFyZ2MgLT0gMjsKLQlhcmd2ICs9IDI7CisJcGFja2V0X3RyYWNlX2lkZW50aXR5KCJidW5kbGUiKTsKIAotCW1lbXNldCgmaGVhZGVyLCAwLCBzaXplb2YoaGVhZGVyKSk7Ci0JaWYgKHN0cmNtcChjbWQsICJjcmVhdGUiKSAmJiAoYnVuZGxlX2ZkID0KLQkJCQlyZWFkX2J1bmRsZV9oZWFkZXIoYnVuZGxlX2ZpbGUsICZoZWFkZXIpKSA8IDApCi0JCXJldHVybiAxOworCWlmIChhcmdjIDwgMikKKwkJdXNhZ2Vfd2l0aF9vcHRpb25zKGJ1aWx0aW5fYnVuZGxlX3VzYWdlLCBvcHRpb25zKTsKIAotCWlmICghc3RyY21wKGNtZCwgInZlcmlmeSIpKSB7Ci0JCWNsb3NlKGJ1bmRsZV9mZCk7Ci0JCWlmIChhcmdjICE9IDEpIHsKLQkJCXVzYWdlKGJ1aWx0aW5fYnVuZGxlX3VzYWdlKTsKLQkJCXJldHVybiAxOwotCQl9Ci0JCWlmICh2ZXJpZnlfYnVuZGxlKCZoZWFkZXIsIDEpKQotCQkJcmV0dXJuIDE7Ci0JCWZwcmludGYoc3RkZXJyLCBfKCIlcyBpcyBva2F5XG4iKSwgYnVuZGxlX2ZpbGUpOwotCQlyZXR1cm4gMDsKKwllbHNlIGlmICghc3RyY21wKGFyZ3ZbMF0sICJjcmVhdGUiKSkKKwkJcmVzdWx0ID0gY21kX2J1bmRsZV9jcmVhdGUoYXJnYywgYXJndiwgcHJlZml4KTsKKwllbHNlIGlmICghc3RyY21wKGFyZ3ZbMF0sICJ2ZXJpZnkiKSkKKwkJcmVzdWx0ID0gY21kX2J1bmRsZV92ZXJpZnkoYXJnYywgYXJndiwgcHJlZml4KTsKKwllbHNlIGlmICghc3RyY21wKGFyZ3ZbMF0sICJsaXN0LWhlYWRzIikpCisJCXJlc3VsdCA9IGNtZF9idW5kbGVfbGlzdF9oZWFkcyhhcmdjLCBhcmd2LCBwcmVmaXgpOworCWVsc2UgaWYgKCFzdHJjbXAoYXJndlswXSwgInVuYnVuZGxlIikpCisJCXJlc3VsdCA9IGNtZF9idW5kbGVfdW5idW5kbGUoYXJnYywgYXJndiwgcHJlZml4KTsKKwllbHNlIHsKKwkJZXJyb3IoXygiVW5rbm93biBzdWJjb21tYW5kOiAlcyIpLCBhcmd2WzBdKTsKKwkJdXNhZ2Vfd2l0aF9vcHRpb25zKGJ1aWx0aW5fYnVuZGxlX3VzYWdlLCBvcHRpb25zKTsKIAl9Ci0JaWYgKCFzdHJjbXAoY21kLCAibGlzdC1oZWFkcyIpKSB7Ci0JCWNsb3NlKGJ1bmRsZV9mZCk7Ci0JCXJldHVybiAhIWxpc3RfYnVuZGxlX3JlZnMoJmhlYWRlciwgYXJnYywgYXJndik7Ci0JfQotCWlmICghc3RyY21wKGNtZCwgImNyZWF0ZSIpKSB7Ci0JCWlmIChhcmdjIDwgMikgewotCQkJdXNhZ2UoYnVpbHRpbl9idW5kbGVfdXNhZ2UpOwotCQkJcmV0dXJuIDE7Ci0JCX0KLQkJaWYgKCFzdGFydHVwX2luZm8tPmhhdmVfcmVwb3NpdG9yeSkKLQkJCWRpZShfKCJOZWVkIGEgcmVwb3NpdG9yeSB0byBjcmVhdGUgYSBidW5kbGUuIikpOwotCQlyZXR1cm4gISFjcmVhdGVfYnVuZGxlKCZoZWFkZXIsIGJ1bmRsZV9maWxlLCBhcmdjLCBhcmd2KTsKLQl9IGVsc2UgaWYgKCFzdHJjbXAoY21kLCAidW5idW5kbGUiKSkgewotCQlpZiAoIXN0YXJ0dXBfaW5mby0+aGF2ZV9yZXBvc2l0b3J5KQotCQkJZGllKF8oIk5lZWQgYSByZXBvc2l0b3J5IHRvIHVuYnVuZGxlLiIpKTsKLQkJcmV0dXJuICEhdW5idW5kbGUoJmhlYWRlciwgYnVuZGxlX2ZkLCAwKSB8fAotCQkJbGlzdF9idW5kbGVfcmVmcygmaGVhZGVyLCBhcmdjLCBhcmd2KTsKLQl9IGVsc2UKLQkJdXNhZ2UoYnVpbHRpbl9idW5kbGVfdXNhZ2UpOworCXJldHVybiByZXN1bHQgPyAxIDogMDsKIH0KZGlmZiAtLWdpdCBhL2J1aWx0aW4vY2F0LWZpbGUuYyBiL2J1aWx0aW4vY2F0LWZpbGUuYwppbmRleCAyY2E1NmZkLi4yNzJmOWZjIDEwMDY0NAotLS0gYS9idWlsdGluL2NhdC1maWxlLmMKKysrIGIvYnVpbHRpbi9jYXQtZmlsZS5jCkBAIC0zLDYgKzMsNyBAQAogICoKICAqIENvcHlyaWdodCAoQykgTGludXMgVG9ydmFsZHMsIDIwMDUKICAqLworI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJidWlsdGluLmgiCkBAIC0xNCw2ICsxNSw3IEBACiAjaW5jbHVkZSAic2hhMS1hcnJheS5oIgogI2luY2x1ZGUgInBhY2tmaWxlLmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCisjaW5jbHVkZSAicHJvbWlzb3ItcmVtb3RlLmgiCiAKIHN0cnVjdCBiYXRjaF9vcHRpb25zIHsKIAlpbnQgZW5hYmxlZDsKQEAgLTczLDcgKzc1LDggQEAKIAlpZiAodW5rbm93bl90eXBlKQogCQlmbGFncyB8PSBPQkpFQ1RfSU5GT19BTExPV19VTktOT1dOX1RZUEU7CiAKLQlpZiAoZ2V0X29pZF93aXRoX2NvbnRleHQob2JqX25hbWUsIEdFVF9PSURfUkVDT1JEX1BBVEgsCisJaWYgKGdldF9vaWRfd2l0aF9jb250ZXh0KHRoZV9yZXBvc2l0b3J5LCBvYmpfbmFtZSwKKwkJCQkgR0VUX09JRF9SRUNPUkRfUEFUSCwKIAkJCQkgJm9pZCwgJm9ial9jb250ZXh0KSkKIAkJZGllKCJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIsIG9ial9uYW1lKTsKIApAQCAtMTcwLDcgKzE3Myw4IEBACiAJCQkgKiBmYWxsLWJhY2sgdG8gdGhlIHVzdWFsIGNhc2UuCiAJCQkgKi8KIAkJfQotCQlidWYgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZSgmb2lkLCBleHBfdHlwZSwgJnNpemUsIE5VTEwpOworCQlidWYgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZSh0aGVfcmVwb3NpdG9yeSwKKwkJCQkJCSAmb2lkLCBleHBfdHlwZSwgJnNpemUsIE5VTEwpOwogCQlicmVhazsKIAogCWRlZmF1bHQ6CkBAIC0yMDksMTQgKzIxMywxNCBAQAogCiAJLyoKIAkgKiBBZnRlciBhIG1hcmtfcXVlcnkgcnVuLCB0aGlzIG9iamVjdF9pbmZvIGlzIHNldCB1cCB0byBiZQotCSAqIHBhc3NlZCB0byBzaGExX29iamVjdF9pbmZvX2V4dGVuZGVkLiBJdCB3aWxsIHBvaW50IHRvIHRoZSBkYXRhCisJICogcGFzc2VkIHRvIG9pZF9vYmplY3RfaW5mb19leHRlbmRlZC4gSXQgd2lsbCBwb2ludCB0byB0aGUgZGF0YQogCSAqIGVsZW1lbnRzIGFib3ZlLCBzbyB5b3UgY2FuIHJldHJpZXZlIHRoZSByZXNwb25zZSBmcm9tIHRoZXJlLgogCSAqLwogCXN0cnVjdCBvYmplY3RfaW5mbyBpbmZvOwogCiAJLyoKIAkgKiBUaGlzIGZsYWcgd2lsbCBiZSB0cnVlIGlmIHRoZSByZXF1ZXN0ZWQgYmF0Y2ggZm9ybWF0IGFuZCBvcHRpb25zCi0JICogZG9uJ3QgcmVxdWlyZSB1cyB0byBjYWxsIHNoYTFfb2JqZWN0X2luZm8sIHdoaWNoIGNhbiB0aGVuIGJlCisJICogZG9uJ3QgcmVxdWlyZSB1cyB0byBjYWxsIG9pZF9vYmplY3RfaW5mbywgd2hpY2ggY2FuIHRoZW4gYmUKIAkgKiBvcHRpbWl6ZWQgb3V0LgogCSAqLwogCXVuc2lnbmVkIHNraXBfb2JqZWN0X2luZm8gOiAxOwpAQCAtMjU4LDcgKzI2Miw3IEBACiAJCQlzdHJidWZfYWRkc3RyKHNiLCBkYXRhLT5yZXN0KTsKIAl9IGVsc2UgaWYgKGlzX2F0b20oImRlbHRhYmFzZSIsIGF0b20sIGxlbikpIHsKIAkJaWYgKGRhdGEtPm1hcmtfcXVlcnkpCi0JCQlkYXRhLT5pbmZvLmRlbHRhX2Jhc2Vfc2hhMSA9IGRhdGEtPmRlbHRhX2Jhc2Vfb2lkLmhhc2g7CisJCQlkYXRhLT5pbmZvLmRlbHRhX2Jhc2Vfb2lkID0gJmRhdGEtPmRlbHRhX2Jhc2Vfb2lkOwogCQllbHNlCiAJCQlzdHJidWZfYWRkc3RyKHNiLAogCQkJCSAgICAgIG9pZF90b19oZXgoJmRhdGEtPmRlbHRhX2Jhc2Vfb2lkKSk7CkBAIC0zODAsMTQgKzM4NCwxOCBAQAogewogCXN0cnVjdCBvYmplY3RfY29udGV4dCBjdHg7CiAJaW50IGZsYWdzID0gb3B0LT5mb2xsb3dfc3ltbGlua3MgPyBHRVRfT0lEX0ZPTExPV19TWU1MSU5LUyA6IDA7Ci0JZW51bSBmb2xsb3dfc3ltbGlua3NfcmVzdWx0IHJlc3VsdDsKKwllbnVtIGdldF9vaWRfcmVzdWx0IHJlc3VsdDsKIAotCXJlc3VsdCA9IGdldF9vaWRfd2l0aF9jb250ZXh0KG9ial9uYW1lLCBmbGFncywgJmRhdGEtPm9pZCwgJmN0eCk7CisJcmVzdWx0ID0gZ2V0X29pZF93aXRoX2NvbnRleHQodGhlX3JlcG9zaXRvcnksIG9ial9uYW1lLAorCQkJCSAgICAgIGZsYWdzLCAmZGF0YS0+b2lkLCAmY3R4KTsKIAlpZiAocmVzdWx0ICE9IEZPVU5EKSB7CiAJCXN3aXRjaCAocmVzdWx0KSB7CiAJCWNhc2UgTUlTU0lOR19PQkpFQ1Q6CiAJCQlwcmludGYoIiVzIG1pc3NpbmdcbiIsIG9ial9uYW1lKTsKIAkJCWJyZWFrOworCQljYXNlIFNIT1JUX05BTUVfQU1CSUdVT1VTOgorCQkJcHJpbnRmKCIlcyBhbWJpZ3VvdXNcbiIsIG9ial9uYW1lKTsKKwkJCWJyZWFrOwogCQljYXNlIERBTkdMSU5HX1NZTUxJTks6CiAJCQlwcmludGYoImRhbmdsaW5nICUiUFJJdU1BWCJcbiVzXG4iLAogCQkJICAgICAgICh1aW50bWF4X3Qpc3RybGVuKG9ial9uYW1lKSwgb2JqX25hbWUpOwpAQCAtNDkwLDcgKzQ5OCw3IEBACiAKIAkvKgogCSAqIEV4cGFuZCBvbmNlIHdpdGggb3VyIHNwZWNpYWwgbWFya19xdWVyeSBmbGFnLCB3aGljaCB3aWxsIHByaW1lIHRoZQotCSAqIG9iamVjdF9pbmZvIHRvIGJlIGhhbmRlZCB0byBzaGExX29iamVjdF9pbmZvX2V4dGVuZGVkIGZvciBlYWNoCisJICogb2JqZWN0X2luZm8gdG8gYmUgaGFuZGVkIHRvIG9pZF9vYmplY3RfaW5mb19leHRlbmRlZCBmb3IgZWFjaAogCSAqIG9iamVjdC4KIAkgKi8KIAltZW1zZXQoJmRhdGEsIDAsIHNpemVvZihkYXRhKSk7CkBAIC01MTcsOCArNTI1LDggQEAKIAlpZiAob3B0LT5hbGxfb2JqZWN0cykgewogCQlzdHJ1Y3Qgb2JqZWN0X2NiX2RhdGEgY2I7CiAKLQkJaWYgKHJlcG9zaXRvcnlfZm9ybWF0X3BhcnRpYWxfY2xvbmUpCi0JCQl3YXJuaW5nKCJUaGlzIHJlcG9zaXRvcnkgaGFzIGV4dGVuc2lvbnMucGFydGlhbENsb25lIHNldC4gU29tZSBvYmplY3RzIG1heSBub3QgYmUgbG9hZGVkLiIpOworCQlpZiAoaGFzX3Byb21pc29yX3JlbW90ZSgpKQorCQkJd2FybmluZygiVGhpcyByZXBvc2l0b3J5IHVzZXMgcHJvbWlzb3IgcmVtb3Rlcy4gU29tZSBvYmplY3RzIG1heSBub3QgYmUgbG9hZGVkLiIpOwogCiAJCWNiLm9wdCA9IG9wdDsKIAkJY2IuZXhwYW5kID0gJmRhdGE7CmRpZmYgLS1naXQgYS9idWlsdGluL2NoZWNrLWF0dHIuYyBiL2J1aWx0aW4vY2hlY2stYXR0ci5jCmluZGV4IDMwYTJmODQuLmRkODMzOTcgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vY2hlY2stYXR0ci5jCisrKyBiL2J1aWx0aW4vY2hlY2stYXR0ci5jCkBAIC0xLDMgKzEsNCBAQAorI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiYnVpbHRpbi5oIgogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCmRpZmYgLS1naXQgYS9idWlsdGluL2NoZWNrLWlnbm9yZS5jIGIvYnVpbHRpbi9jaGVjay1pZ25vcmUuYwppbmRleCBlYzlhOTU5Li5lYTVkMGFlIDEwMDY0NAotLS0gYS9idWlsdGluL2NoZWNrLWlnbm9yZS5jCisrKyBiL2J1aWx0aW4vY2hlY2staWdub3JlLmMKQEAgLTEsMyArMSw0IEBACisjZGVmaW5lIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJidWlsdGluLmgiCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJjb25maWcuaCIKQEAgLTMxLDE5ICszMiwxOSBAQAogCU9QVF9FTkQoKQogfTsKIAotc3RhdGljIHZvaWQgb3V0cHV0X2V4Y2x1ZGUoY29uc3QgY2hhciAqcGF0aCwgc3RydWN0IGV4Y2x1ZGUgKmV4Y2x1ZGUpCitzdGF0aWMgdm9pZCBvdXRwdXRfcGF0dGVybihjb25zdCBjaGFyICpwYXRoLCBzdHJ1Y3QgcGF0aF9wYXR0ZXJuICpwYXR0ZXJuKQogewotCWNoYXIgKmJhbmcgID0gKGV4Y2x1ZGUgJiYgZXhjbHVkZS0+ZmxhZ3MgJiBFWENfRkxBR19ORUdBVElWRSkgID8gIiEiIDogIiI7Ci0JY2hhciAqc2xhc2ggPSAoZXhjbHVkZSAmJiBleGNsdWRlLT5mbGFncyAmIEVYQ19GTEFHX01VU1RCRURJUikgPyAiLyIgOiAiIjsKKwljaGFyICpiYW5nICA9IChwYXR0ZXJuICYmIHBhdHRlcm4tPmZsYWdzICYgUEFUVEVSTl9GTEFHX05FR0FUSVZFKSAgPyAiISIgOiAiIjsKKwljaGFyICpzbGFzaCA9IChwYXR0ZXJuICYmIHBhdHRlcm4tPmZsYWdzICYgUEFUVEVSTl9GTEFHX01VU1RCRURJUikgPyAiLyIgOiAiIjsKIAlpZiAoIW51bF90ZXJtX2xpbmUpIHsKIAkJaWYgKCF2ZXJib3NlKSB7CiAJCQl3cml0ZV9uYW1lX3F1b3RlZChwYXRoLCBzdGRvdXQsICdcbicpOwogCQl9IGVsc2UgewotCQkJaWYgKGV4Y2x1ZGUpIHsKLQkJCQlxdW90ZV9jX3N0eWxlKGV4Y2x1ZGUtPmVsLT5zcmMsIE5VTEwsIHN0ZG91dCwgMCk7CisJCQlpZiAocGF0dGVybikgeworCQkJCXF1b3RlX2Nfc3R5bGUocGF0dGVybi0+cGwtPnNyYywgTlVMTCwgc3Rkb3V0LCAwKTsKIAkJCQlwcmludGYoIjolZDolcyVzJXNcdCIsCi0JCQkJICAgICAgIGV4Y2x1ZGUtPnNyY3BvcywKLQkJCQkgICAgICAgYmFuZywgZXhjbHVkZS0+cGF0dGVybiwgc2xhc2gpOworCQkJCSAgICAgICBwYXR0ZXJuLT5zcmNwb3MsCisJCQkJICAgICAgIGJhbmcsIHBhdHRlcm4tPnBhdHRlcm4sIHNsYXNoKTsKIAkJCX0KIAkJCWVsc2UgewogCQkJCXByaW50ZigiOjpcdCIpOwpAQCAtNTUsMTEgKzU2LDExIEBACiAJCWlmICghdmVyYm9zZSkgewogCQkJcHJpbnRmKCIlcyVjIiwgcGF0aCwgJ1wwJyk7CiAJCX0gZWxzZSB7Ci0JCQlpZiAoZXhjbHVkZSkKKwkJCWlmIChwYXR0ZXJuKQogCQkJCXByaW50ZigiJXMlYyVkJWMlcyVzJXMlYyVzJWMiLAotCQkJCSAgICAgICBleGNsdWRlLT5lbC0+c3JjLCAnXDAnLAotCQkJCSAgICAgICBleGNsdWRlLT5zcmNwb3MsICdcMCcsCi0JCQkJICAgICAgIGJhbmcsIGV4Y2x1ZGUtPnBhdHRlcm4sIHNsYXNoLCAnXDAnLAorCQkJCSAgICAgICBwYXR0ZXJuLT5wbC0+c3JjLCAnXDAnLAorCQkJCSAgICAgICBwYXR0ZXJuLT5zcmNwb3MsICdcMCcsCisJCQkJICAgICAgIGJhbmcsIHBhdHRlcm4tPnBhdHRlcm4sIHNsYXNoLCAnXDAnLAogCQkJCSAgICAgICBwYXRoLCAnXDAnKTsKIAkJCWVsc2UKIAkJCQlwcmludGYoIiVjJWMlYyVzJWMiLCAnXDAnLCAnXDAnLCAnXDAnLCBwYXRoLCAnXDAnKTsKQEAgLTczLDcgKzc0LDcgQEAKIAljb25zdCBjaGFyICpmdWxsX3BhdGg7CiAJY2hhciAqc2VlbjsKIAlpbnQgbnVtX2lnbm9yZWQgPSAwLCBpOwotCXN0cnVjdCBleGNsdWRlICpleGNsdWRlOworCXN0cnVjdCBwYXRoX3BhdHRlcm4gKnBhdHRlcm47CiAJc3RydWN0IHBhdGhzcGVjIHBhdGhzcGVjOwogCiAJaWYgKCFhcmdjKSB7CkBAIC0xMDIsMTUgKzEwMywxOCBAQAogCXNlZW4gPSBmaW5kX3BhdGhzcGVjc19tYXRjaGluZ19hZ2FpbnN0X2luZGV4KCZwYXRoc3BlYywgJnRoZV9pbmRleCk7CiAJZm9yIChpID0gMDsgaSA8IHBhdGhzcGVjLm5yOyBpKyspIHsKIAkJZnVsbF9wYXRoID0gcGF0aHNwZWMuaXRlbXNbaV0ubWF0Y2g7Ci0JCWV4Y2x1ZGUgPSBOVUxMOworCQlwYXR0ZXJuID0gTlVMTDsKIAkJaWYgKCFzZWVuW2ldKSB7CiAJCQlpbnQgZHR5cGUgPSBEVF9VTktOT1dOOwotCQkJZXhjbHVkZSA9IGxhc3RfZXhjbHVkZV9tYXRjaGluZyhkaXIsICZ0aGVfaW5kZXgsCisJCQlwYXR0ZXJuID0gbGFzdF9tYXRjaGluZ19wYXR0ZXJuKGRpciwgJnRoZV9pbmRleCwKIAkJCQkJCQlmdWxsX3BhdGgsICZkdHlwZSk7CisJCQlpZiAoIXZlcmJvc2UgJiYgcGF0dGVybiAmJgorCQkJICAgIHBhdHRlcm4tPmZsYWdzICYgUEFUVEVSTl9GTEFHX05FR0FUSVZFKQorCQkJCXBhdHRlcm4gPSBOVUxMOwogCQl9Ci0JCWlmICghcXVpZXQgJiYgKGV4Y2x1ZGUgfHwgc2hvd19ub25fbWF0Y2hpbmcpKQotCQkJb3V0cHV0X2V4Y2x1ZGUocGF0aHNwZWMuaXRlbXNbaV0ub3JpZ2luYWwsIGV4Y2x1ZGUpOwotCQlpZiAoZXhjbHVkZSkKKwkJaWYgKCFxdWlldCAmJiAocGF0dGVybiB8fCBzaG93X25vbl9tYXRjaGluZykpCisJCQlvdXRwdXRfcGF0dGVybihwYXRoc3BlYy5pdGVtc1tpXS5vcmlnaW5hbCwgcGF0dGVybik7CisJCWlmIChwYXR0ZXJuKQogCQkJbnVtX2lnbm9yZWQrKzsKIAl9CiAJZnJlZShzZWVuKTsKZGlmZiAtLWdpdCBhL2J1aWx0aW4vY2hlY2tvdXQtaW5kZXguYyBiL2J1aWx0aW4vY2hlY2tvdXQtaW5kZXguYwppbmRleCBlYjc0Nzc0Li4xYWMxY2MyIDEwMDY0NAotLS0gYS9idWlsdGluL2NoZWNrb3V0LWluZGV4LmMKKysrIGIvYnVpbHRpbi9jaGVja291dC1pbmRleC5jCkBAIC00LDYgKzQsNyBAQAogICogQ29weXJpZ2h0IChDKSAyMDA1IExpbnVzIFRvcnZhbGRzCiAgKgogICovCisjZGVmaW5lIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJidWlsdGluLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAibG9ja2ZpbGUuaCIKQEAgLTY3LDcgKzY4LDggQEAKIAkJCWNvbnRpbnVlOwogCQlkaWRfY2hlY2tvdXQgPSAxOwogCQlpZiAoY2hlY2tvdXRfZW50cnkoY2UsICZzdGF0ZSwKLQkJICAgIHRvX3RlbXBmaWxlID8gdG9wYXRoW2NlX3N0YWdlKGNlKV0gOiBOVUxMKSA8IDApCisJCQkJICAgdG9fdGVtcGZpbGUgPyB0b3BhdGhbY2Vfc3RhZ2UoY2UpXSA6IE5VTEwsCisJCQkJICAgTlVMTCkgPCAwKQogCQkJZXJycysrOwogCX0KIApAQCAtMTExLDcgKzExMyw4IEBACiAJCQkJd3JpdGVfdGVtcGZpbGVfcmVjb3JkKGxhc3RfY2UtPm5hbWUsIHByZWZpeCk7CiAJCX0KIAkJaWYgKGNoZWNrb3V0X2VudHJ5KGNlLCAmc3RhdGUsCi0JCSAgICB0b190ZW1wZmlsZSA/IHRvcGF0aFtjZV9zdGFnZShjZSldIDogTlVMTCkgPCAwKQorCQkJCSAgIHRvX3RlbXBmaWxlID8gdG9wYXRoW2NlX3N0YWdlKGNlKV0gOiBOVUxMLAorCQkJCSAgIE5VTEwpIDwgMCkKIAkJCWVycnMrKzsKIAkJbGFzdF9jZSA9IGNlOwogCX0KZGlmZiAtLWdpdCBhL2J1aWx0aW4vY2hlY2tvdXQuYyBiL2J1aWx0aW4vY2hlY2tvdXQuYwppbmRleCBhY2RhZmM2Li5kNjc3MzgxIDEwMDY0NAotLS0gYS9idWlsdGluL2NoZWNrb3V0LmMKKysrIGIvYnVpbHRpbi9jaGVja291dC5jCkBAIC0xLDMxICsxLDMxIEBACisjZGVmaW5lIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJidWlsdGluLmgiCi0jaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiYWR2aWNlLmgiCisjaW5jbHVkZSAiYmxvYi5oIgorI2luY2x1ZGUgImJyYW5jaC5oIgorI2luY2x1ZGUgImNhY2hlLXRyZWUuaCIKICNpbmNsdWRlICJjaGVja291dC5oIgorI2luY2x1ZGUgImNvbW1pdC5oIgorI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgImRpZmYuaCIKKyNpbmNsdWRlICJkaXIuaCIKKyNpbmNsdWRlICJsbC1tZXJnZS5oIgogI2luY2x1ZGUgImxvY2tmaWxlLmgiCisjaW5jbHVkZSAibWVyZ2UtcmVjdXJzaXZlLmgiCisjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCiAjaW5jbHVkZSAicGFyc2Utb3B0aW9ucy5oIgogI2luY2x1ZGUgInJlZnMuaCIKLSNpbmNsdWRlICJvYmplY3Qtc3RvcmUuaCIKLSNpbmNsdWRlICJjb21taXQuaCIKKyNpbmNsdWRlICJyZW1vdGUuaCIKKyNpbmNsdWRlICJyZXNvbHZlLXVuZG8uaCIKKyNpbmNsdWRlICJyZXZpc2lvbi5oIgorI2luY2x1ZGUgInJ1bi1jb21tYW5kLmgiCisjaW5jbHVkZSAic3VibW9kdWxlLmgiCisjaW5jbHVkZSAic3VibW9kdWxlLWNvbmZpZy5oIgogI2luY2x1ZGUgInRyZWUuaCIKICNpbmNsdWRlICJ0cmVlLXdhbGsuaCIKLSNpbmNsdWRlICJjYWNoZS10cmVlLmgiCiAjaW5jbHVkZSAidW5wYWNrLXRyZWVzLmgiCi0jaW5jbHVkZSAiZGlyLmgiCi0jaW5jbHVkZSAicnVuLWNvbW1hbmQuaCIKLSNpbmNsdWRlICJtZXJnZS1yZWN1cnNpdmUuaCIKLSNpbmNsdWRlICJicmFuY2guaCIKLSNpbmNsdWRlICJkaWZmLmgiCi0jaW5jbHVkZSAicmV2aXNpb24uaCIKLSNpbmNsdWRlICJyZW1vdGUuaCIKLSNpbmNsdWRlICJibG9iLmgiCisjaW5jbHVkZSAid3Qtc3RhdHVzLmgiCiAjaW5jbHVkZSAieGRpZmYtaW50ZXJmYWNlLmgiCi0jaW5jbHVkZSAibGwtbWVyZ2UuaCIKLSNpbmNsdWRlICJyZXNvbHZlLXVuZG8uaCIKLSNpbmNsdWRlICJzdWJtb2R1bGUtY29uZmlnLmgiCi0jaW5jbHVkZSAic3VibW9kdWxlLmgiCi0jaW5jbHVkZSAiYWR2aWNlLmgiCi0KLXN0YXRpYyBpbnQgY2hlY2tvdXRfb3B0aW1pemVfbmV3X2JyYW5jaDsKIAogc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBjaGVja291dF91c2FnZVtdID0gewogCU5fKCJnaXQgY2hlY2tvdXQgWzxvcHRpb25zPl0gPGJyYW5jaD4iKSwKQEAgLTMzLDIxICszMyw0NSBAQAogCU5VTEwsCiB9OwogCitzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IHN3aXRjaF9icmFuY2hfdXNhZ2VbXSA9IHsKKwlOXygiZ2l0IHN3aXRjaCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIiksCisJTlVMTCwKK307CisKK3N0YXRpYyBjb25zdCBjaGFyICogY29uc3QgcmVzdG9yZV91c2FnZVtdID0geworCU5fKCJnaXQgcmVzdG9yZSBbPG9wdGlvbnM+XSBbLS1zb3VyY2U9PGJyYW5jaD5dIDxmaWxlPi4uLiIpLAorCU5VTEwsCit9OworCiBzdHJ1Y3QgY2hlY2tvdXRfb3B0cyB7CiAJaW50IHBhdGNoX21vZGU7CiAJaW50IHF1aWV0OwogCWludCBtZXJnZTsKIAlpbnQgZm9yY2U7CiAJaW50IGZvcmNlX2RldGFjaDsKKwlpbnQgaW1wbGljaXRfZGV0YWNoOwogCWludCB3cml0ZW91dF9zdGFnZTsKIAlpbnQgb3ZlcndyaXRlX2lnbm9yZTsKIAlpbnQgaWdub3JlX3NraXB3b3JrdHJlZTsKIAlpbnQgaWdub3JlX290aGVyX3dvcmt0cmVlczsKIAlpbnQgc2hvd19wcm9ncmVzczsKLQkvKgotCSAqIElmIG5ldyBjaGVja291dCBvcHRpb25zIGFyZSBhZGRlZCwgc2tpcF9tZXJnZV93b3JraW5nX3RyZWUKLQkgKiBzaG91bGQgYmUgdXBkYXRlZCBhY2NvcmRpbmdseS4KLQkgKi8KKwlpbnQgY291bnRfY2hlY2tvdXRfcGF0aHM7CisJaW50IG92ZXJsYXlfbW9kZTsKKwlpbnQgZHdpbV9uZXdfbG9jYWxfYnJhbmNoOworCWludCBkaXNjYXJkX2NoYW5nZXM7CisJaW50IGFjY2VwdF9yZWY7CisJaW50IGFjY2VwdF9wYXRoc3BlYzsKKwlpbnQgc3dpdGNoX2JyYW5jaF9kb2luZ19ub3RoaW5nX2lzX29rOworCWludCBvbmx5X21lcmdlX29uX3N3aXRjaGluZ19icmFuY2hlczsKKwlpbnQgY2FuX3N3aXRjaF93aGVuX2luX3Byb2dyZXNzOworCWludCBvcnBoYW5fZnJvbV9lbXB0eV90cmVlOworCWludCBlbXB0eV9wYXRoc3BlY19vazsKKwlpbnQgY2hlY2tvdXRfaW5kZXg7CisJaW50IGNoZWNrb3V0X3dvcmt0cmVlOworCWNvbnN0IGNoYXIgKmlnbm9yZV91bm1lcmdlZF9vcHQ7CisJaW50IGlnbm9yZV91bm1lcmdlZDsKKwlpbnQgcGF0aHNwZWNfZmlsZV9udWw7CisJY29uc3QgY2hhciAqcGF0aHNwZWNfZnJvbV9maWxlOwogCiAJY29uc3QgY2hhciAqbmV3X2JyYW5jaDsKIAljb25zdCBjaGFyICpuZXdfYnJhbmNoX2ZvcmNlOwpAQCAtNTUsMTAgKzc5LDEyIEBACiAJaW50IG5ld19icmFuY2hfbG9nOwogCWVudW0gYnJhbmNoX3RyYWNrIHRyYWNrOwogCXN0cnVjdCBkaWZmX29wdGlvbnMgZGlmZl9vcHRpb25zOworCWNoYXIgKmNvbmZsaWN0X3N0eWxlOwogCiAJaW50IGJyYW5jaF9leGlzdHM7CiAJY29uc3QgY2hhciAqcHJlZml4OwogCXN0cnVjdCBwYXRoc3BlYyBwYXRoc3BlYzsKKwljb25zdCBjaGFyICpmcm9tX3RyZWVpc2g7CiAJc3RydWN0IHRyZWUgKnNvdXJjZV90cmVlOwogfTsKIApAQCAtMTAyLDYgKzEyOCw3IEBACiAJaWYgKHBvcyA+PSAwKSB7CiAJCXN0cnVjdCBjYWNoZV9lbnRyeSAqb2xkID0gYWN0aXZlX2NhY2hlW3Bvc107CiAJCWlmIChjZS0+Y2VfbW9kZSA9PSBvbGQtPmNlX21vZGUgJiYKKwkJICAgICFjZV9pbnRlbnRfdG9fYWRkKG9sZCkgJiYKIAkJICAgIG9pZGVxKCZjZS0+b2lkLCAmb2xkLT5vaWQpKSB7CiAJCQlvbGQtPmNlX2ZsYWdzIHw9IENFX1VQREFURTsKIAkJCWRpc2NhcmRfY2FjaGVfZW50cnkoY2UpOwpAQCAtMTE1LDcgKzE0Miw4IEBACiAKIHN0YXRpYyBpbnQgcmVhZF90cmVlX3NvbWUoc3RydWN0IHRyZWUgKnRyZWUsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMpCiB7Ci0JcmVhZF90cmVlX3JlY3Vyc2l2ZSh0cmVlLCAiIiwgMCwgMCwgcGF0aHNwZWMsIHVwZGF0ZV9zb21lLCBOVUxMKTsKKwlyZWFkX3RyZWVfcmVjdXJzaXZlKHRoZV9yZXBvc2l0b3J5LCB0cmVlLCAiIiwgMCwgMCwKKwkJCSAgICBwYXRoc3BlYywgdXBkYXRlX3NvbWUsIE5VTEwpOwogCiAJLyogdXBkYXRlIHRoZSBpbmRleCB3aXRoIHRoZSBnaXZlbiB0cmVlJ3MgaW5mbwogCSAqIGZvciBhbGwgYXJncywgZXhwYW5kaW5nIHdpbGRjYXJkcywgYW5kIGV4aXQKQEAgLTEzMiw3ICsxNjAsOCBAQAogCXJldHVybiBwb3M7CiB9CiAKLXN0YXRpYyBpbnQgY2hlY2tfc3RhZ2UoaW50IHN0YWdlLCBjb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlLCBpbnQgcG9zKQorc3RhdGljIGludCBjaGVja19zdGFnZShpbnQgc3RhZ2UsIGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UsIGludCBwb3MsCisJCSAgICAgICBpbnQgb3ZlcmxheV9tb2RlKQogewogCXdoaWxlIChwb3MgPCBhY3RpdmVfbnIgJiYKIAkgICAgICAgIXN0cmNtcChhY3RpdmVfY2FjaGVbcG9zXS0+bmFtZSwgY2UtPm5hbWUpKSB7CkBAIC0xNDAsNiArMTY5LDggQEAKIAkJCXJldHVybiAwOwogCQlwb3MrKzsKIAl9CisJaWYgKCFvdmVybGF5X21vZGUpCisJCXJldHVybiAwOwogCWlmIChzdGFnZSA9PSAyKQogCQlyZXR1cm4gZXJyb3IoXygicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgb3VyIHZlcnNpb24iKSwgY2UtPm5hbWUpOwogCWVsc2UKQEAgLTE2NSwyMSArMTk2LDI3IEBACiB9CiAKIHN0YXRpYyBpbnQgY2hlY2tvdXRfc3RhZ2UoaW50IHN0YWdlLCBjb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlLCBpbnQgcG9zLAotCQkJICBjb25zdCBzdHJ1Y3QgY2hlY2tvdXQgKnN0YXRlKQorCQkJICBjb25zdCBzdHJ1Y3QgY2hlY2tvdXQgKnN0YXRlLCBpbnQgKm5yX2NoZWNrb3V0cywKKwkJCSAgaW50IG92ZXJsYXlfbW9kZSkKIHsKIAl3aGlsZSAocG9zIDwgYWN0aXZlX25yICYmCiAJICAgICAgICFzdHJjbXAoYWN0aXZlX2NhY2hlW3Bvc10tPm5hbWUsIGNlLT5uYW1lKSkgewogCQlpZiAoY2Vfc3RhZ2UoYWN0aXZlX2NhY2hlW3Bvc10pID09IHN0YWdlKQotCQkJcmV0dXJuIGNoZWNrb3V0X2VudHJ5KGFjdGl2ZV9jYWNoZVtwb3NdLCBzdGF0ZSwgTlVMTCk7CisJCQlyZXR1cm4gY2hlY2tvdXRfZW50cnkoYWN0aXZlX2NhY2hlW3Bvc10sIHN0YXRlLAorCQkJCQkgICAgICBOVUxMLCBucl9jaGVja291dHMpOwogCQlwb3MrKzsKIAl9CisJaWYgKCFvdmVybGF5X21vZGUpIHsKKwkJdW5saW5rX2VudHJ5KGNlKTsKKwkJcmV0dXJuIDA7CisJfQogCWlmIChzdGFnZSA9PSAyKQogCQlyZXR1cm4gZXJyb3IoXygicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgb3VyIHZlcnNpb24iKSwgY2UtPm5hbWUpOwogCWVsc2UKIAkJcmV0dXJuIGVycm9yKF8oInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIHRoZWlyIHZlcnNpb24iKSwgY2UtPm5hbWUpOwogfQogCi1zdGF0aWMgaW50IGNoZWNrb3V0X21lcmdlZChpbnQgcG9zLCBjb25zdCBzdHJ1Y3QgY2hlY2tvdXQgKnN0YXRlKQorc3RhdGljIGludCBjaGVja291dF9tZXJnZWQoaW50IHBvcywgY29uc3Qgc3RydWN0IGNoZWNrb3V0ICpzdGF0ZSwgaW50ICpucl9jaGVja291dHMpCiB7CiAJc3RydWN0IGNhY2hlX2VudHJ5ICpjZSA9IGFjdGl2ZV9jYWNoZVtwb3NdOwogCWNvbnN0IGNoYXIgKnBhdGggPSBjZS0+bmFtZTsKQEAgLTI0MiwyMSArMjc5LDEzNCBAQAogCWNlID0gbWFrZV90cmFuc2llbnRfY2FjaGVfZW50cnkobW9kZSwgJm9pZCwgcGF0aCwgMik7CiAJaWYgKCFjZSkKIAkJZGllKF8oIm1ha2VfY2FjaGVfZW50cnkgZmFpbGVkIGZvciBwYXRoICclcyciKSwgcGF0aCk7Ci0Jc3RhdHVzID0gY2hlY2tvdXRfZW50cnkoY2UsIHN0YXRlLCBOVUxMKTsKKwlzdGF0dXMgPSBjaGVja291dF9lbnRyeShjZSwgc3RhdGUsIE5VTEwsIG5yX2NoZWNrb3V0cyk7CiAJZGlzY2FyZF9jYWNoZV9lbnRyeShjZSk7CiAJcmV0dXJuIHN0YXR1czsKIH0KIAorc3RhdGljIHZvaWQgbWFya19jZV9mb3JfY2hlY2tvdXRfb3ZlcmxheShzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlLAorCQkJCQkgY2hhciAqcHNfbWF0Y2hlZCwKKwkJCQkJIGNvbnN0IHN0cnVjdCBjaGVja291dF9vcHRzICpvcHRzKQoreworCWNlLT5jZV9mbGFncyAmPSB+Q0VfTUFUQ0hFRDsKKwlpZiAoIW9wdHMtPmlnbm9yZV9za2lwd29ya3RyZWUgJiYgY2Vfc2tpcF93b3JrdHJlZShjZSkpCisJCXJldHVybjsKKwlpZiAob3B0cy0+c291cmNlX3RyZWUgJiYgIShjZS0+Y2VfZmxhZ3MgJiBDRV9VUERBVEUpKQorCQkvKgorCQkgKiAiZ2l0IGNoZWNrb3V0IHRyZWUtaXNoIC0tIHBhdGgiLCBidXQgdGhpcyBlbnRyeQorCQkgKiBpcyBpbiB0aGUgb3JpZ2luYWwgaW5kZXggYnV0IGlzIG5vdCBpbiB0cmVlLWlzaAorCQkgKiBvciBkb2VzIG5vdCBtYXRjaCB0aGUgcGF0aHNwZWM7IGl0IHdpbGwgbm90IGJlCisJCSAqIGNoZWNrZWQgb3V0IHRvIHRoZSB3b3JraW5nIHRyZWUuICBXZSB3aWxsIG5vdCBkbworCQkgKiBhbnl0aGluZyB0byB0aGlzIGVudHJ5IGF0IGFsbC4KKwkJICovCisJCXJldHVybjsKKwkvKgorCSAqIEVpdGhlciB0aGlzIGVudHJ5IGNhbWUgZnJvbSB0aGUgdHJlZS1pc2ggd2UgYXJlCisJICogY2hlY2tpbmcgdGhlIHBhdGhzIG91dCBvZiwgb3Igd2UgYXJlIGNoZWNraW5nIG91dAorCSAqIG9mIHRoZSBpbmRleC4KKwkgKgorCSAqIElmIGl0IGNvbWVzIGZyb20gdGhlIHRyZWUtaXNoLCB3ZSBhbHJlYWR5IGtub3cgaXQKKwkgKiBtYXRjaGVzIHRoZSBwYXRoc3BlYyBhbmQgY291bGQganVzdCBzdGFtcAorCSAqIENFX01BVENIRUQgdG8gaXQgZnJvbSB1cGRhdGVfc29tZSgpLiBCdXQgd2Ugc3RpbGwKKwkgKiBuZWVkIHBzX21hdGNoZWQgYW5kIHJlYWRfdHJlZV9yZWN1cnNpdmUgKGFuZAorCSAqIGV2ZW50dWFsbHkgdHJlZV9lbnRyeV9pbnRlcmVzdGluZykgY2Fubm90IGZpbGwKKwkgKiBwc19tYXRjaGVkIHlldC4gT25jZSBpdCBjYW4sIHdlIGNhbiBhdm9pZCBjYWxsaW5nCisJICogbWF0Y2hfcGF0aHNwZWMoKSBmb3IgX2FsbF8gZW50cmllcyB3aGVuCisJICogb3B0cy0+c291cmNlX3RyZWUgIT0gTlVMTC4KKwkgKi8KKwlpZiAoY2VfcGF0aF9tYXRjaCgmdGhlX2luZGV4LCBjZSwgJm9wdHMtPnBhdGhzcGVjLCBwc19tYXRjaGVkKSkKKwkJY2UtPmNlX2ZsYWdzIHw9IENFX01BVENIRUQ7Cit9CisKK3N0YXRpYyB2b2lkIG1hcmtfY2VfZm9yX2NoZWNrb3V0X25vX292ZXJsYXkoc3RydWN0IGNhY2hlX2VudHJ5ICpjZSwKKwkJCQkJICAgIGNoYXIgKnBzX21hdGNoZWQsCisJCQkJCSAgICBjb25zdCBzdHJ1Y3QgY2hlY2tvdXRfb3B0cyAqb3B0cykKK3sKKwljZS0+Y2VfZmxhZ3MgJj0gfkNFX01BVENIRUQ7CisJaWYgKCFvcHRzLT5pZ25vcmVfc2tpcHdvcmt0cmVlICYmIGNlX3NraXBfd29ya3RyZWUoY2UpKQorCQlyZXR1cm47CisJaWYgKGNlX3BhdGhfbWF0Y2goJnRoZV9pbmRleCwgY2UsICZvcHRzLT5wYXRoc3BlYywgcHNfbWF0Y2hlZCkpIHsKKwkJY2UtPmNlX2ZsYWdzIHw9IENFX01BVENIRUQ7CisJCWlmIChvcHRzLT5zb3VyY2VfdHJlZSAmJiAhKGNlLT5jZV9mbGFncyAmIENFX1VQREFURSkpCisJCQkvKgorCQkJICogSW4gb3ZlcmxheSBtb2RlLCBidXQgdGhlIHBhdGggaXMgbm90IGluCisJCQkgKiB0cmVlLWlzaCwgd2hpY2ggbWVhbnMgd2Ugc2hvdWxkIHJlbW92ZSBpdAorCQkJICogZnJvbSB0aGUgaW5kZXggYW5kIHRoZSB3b3JraW5nIHRyZWUuCisJCQkgKi8KKwkJCWNlLT5jZV9mbGFncyB8PSBDRV9SRU1PVkUgfCBDRV9XVF9SRU1PVkU7CisJfQorfQorCitzdGF0aWMgaW50IGNoZWNrb3V0X3dvcmt0cmVlKGNvbnN0IHN0cnVjdCBjaGVja291dF9vcHRzICpvcHRzKQoreworCXN0cnVjdCBjaGVja291dCBzdGF0ZSA9IENIRUNLT1VUX0lOSVQ7CisJaW50IG5yX2NoZWNrb3V0cyA9IDAsIG5yX3VubWVyZ2VkID0gMDsKKwlpbnQgZXJycyA9IDA7CisJaW50IHBvczsKKworCXN0YXRlLmZvcmNlID0gMTsKKwlzdGF0ZS5yZWZyZXNoX2NhY2hlID0gMTsKKwlzdGF0ZS5pc3RhdGUgPSAmdGhlX2luZGV4OworCisJZW5hYmxlX2RlbGF5ZWRfY2hlY2tvdXQoJnN0YXRlKTsKKwlmb3IgKHBvcyA9IDA7IHBvcyA8IGFjdGl2ZV9ucjsgcG9zKyspIHsKKwkJc3RydWN0IGNhY2hlX2VudHJ5ICpjZSA9IGFjdGl2ZV9jYWNoZVtwb3NdOworCQlpZiAoY2UtPmNlX2ZsYWdzICYgQ0VfTUFUQ0hFRCkgeworCQkJaWYgKCFjZV9zdGFnZShjZSkpIHsKKwkJCQllcnJzIHw9IGNoZWNrb3V0X2VudHJ5KGNlLCAmc3RhdGUsCisJCQkJCQkgICAgICAgTlVMTCwgJm5yX2NoZWNrb3V0cyk7CisJCQkJY29udGludWU7CisJCQl9CisJCQlpZiAob3B0cy0+d3JpdGVvdXRfc3RhZ2UpCisJCQkJZXJycyB8PSBjaGVja291dF9zdGFnZShvcHRzLT53cml0ZW91dF9zdGFnZSwKKwkJCQkJCSAgICAgICBjZSwgcG9zLAorCQkJCQkJICAgICAgICZzdGF0ZSwKKwkJCQkJCSAgICAgICAmbnJfY2hlY2tvdXRzLCBvcHRzLT5vdmVybGF5X21vZGUpOworCQkJZWxzZSBpZiAob3B0cy0+bWVyZ2UpCisJCQkJZXJycyB8PSBjaGVja291dF9tZXJnZWQocG9zLCAmc3RhdGUsCisJCQkJCQkJJm5yX3VubWVyZ2VkKTsKKwkJCXBvcyA9IHNraXBfc2FtZV9uYW1lKGNlLCBwb3MpIC0gMTsKKwkJfQorCX0KKwlyZW1vdmVfbWFya2VkX2NhY2hlX2VudHJpZXMoJnRoZV9pbmRleCwgMSk7CisJcmVtb3ZlX3NjaGVkdWxlZF9kaXJzKCk7CisJZXJycyB8PSBmaW5pc2hfZGVsYXllZF9jaGVja291dCgmc3RhdGUsICZucl9jaGVja291dHMpOworCisJaWYgKG9wdHMtPmNvdW50X2NoZWNrb3V0X3BhdGhzKSB7CisJCWlmIChucl91bm1lcmdlZCkKKwkJCWZwcmludGZfbG4oc3RkZXJyLCBRXygiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0IiwKKwkJCQkJICAgICAgIlJlY3JlYXRlZCAlZCBtZXJnZSBjb25mbGljdHMiLAorCQkJCQkgICAgICBucl91bm1lcmdlZCksCisJCQkJICAgbnJfdW5tZXJnZWQpOworCQlpZiAob3B0cy0+c291cmNlX3RyZWUpCisJCQlmcHJpbnRmX2xuKHN0ZGVyciwgUV8oIlVwZGF0ZWQgJWQgcGF0aCBmcm9tICVzIiwKKwkJCQkJICAgICAgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSAlcyIsCisJCQkJCSAgICAgIG5yX2NoZWNrb3V0cyksCisJCQkJICAgbnJfY2hlY2tvdXRzLAorCQkJCSAgIGZpbmRfdW5pcXVlX2FiYnJldigmb3B0cy0+c291cmNlX3RyZWUtPm9iamVjdC5vaWQsCisJCQkJCQkgICAgICBERUZBVUxUX0FCQlJFVikpOworCQllbHNlIGlmICghbnJfdW5tZXJnZWQgfHwgbnJfY2hlY2tvdXRzKQorCQkJZnByaW50Zl9sbihzdGRlcnIsIFFfKCJVcGRhdGVkICVkIHBhdGggZnJvbSB0aGUgaW5kZXgiLAorCQkJCQkgICAgICAiVXBkYXRlZCAlZCBwYXRocyBmcm9tIHRoZSBpbmRleCIsCisJCQkJCSAgICAgIG5yX2NoZWNrb3V0cyksCisJCQkJICAgbnJfY2hlY2tvdXRzKTsKKwl9CisKKwlyZXR1cm4gZXJyczsKK30KKwogc3RhdGljIGludCBjaGVja291dF9wYXRocyhjb25zdCBzdHJ1Y3QgY2hlY2tvdXRfb3B0cyAqb3B0cywKIAkJCSAgY29uc3QgY2hhciAqcmV2aXNpb24pCiB7CiAJaW50IHBvczsKLQlzdHJ1Y3QgY2hlY2tvdXQgc3RhdGUgPSBDSEVDS09VVF9JTklUOwogCXN0YXRpYyBjaGFyICpwc19tYXRjaGVkOwogCXN0cnVjdCBvYmplY3RfaWQgcmV2OwogCXN0cnVjdCBjb21taXQgKmhlYWQ7CiAJaW50IGVycnMgPSAwOwogCXN0cnVjdCBsb2NrX2ZpbGUgbG9ja19maWxlID0gTE9DS19JTklUOworCWludCBjaGVja291dF9pbmRleDsKKworCXRyYWNlMl9jbWRfbW9kZShvcHRzLT5wYXRjaF9tb2RlID8gInBhdGNoIiA6ICJwYXRoIik7CiAKIAlpZiAob3B0cy0+dHJhY2sgIT0gQlJBTkNIX1RSQUNLX1VOU1BFQ0lGSUVEKQogCQlkaWUoXygiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHVwZGF0aW5nIHBhdGhzIiksICItLXRyYWNrIik7CkBAIC0yNjQsOCArNDE0LDkgQEAKIAlpZiAob3B0cy0+bmV3X2JyYW5jaF9sb2cpCiAJCWRpZShfKCInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggdXBkYXRpbmcgcGF0aHMiKSwgIi1sIik7CiAKLQlpZiAob3B0cy0+Zm9yY2UgJiYgb3B0cy0+cGF0Y2hfbW9kZSkKLQkJZGllKF8oIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCB1cGRhdGluZyBwYXRocyIpLCAiLWYiKTsKKwlpZiAob3B0cy0+aWdub3JlX3VubWVyZ2VkICYmIG9wdHMtPnBhdGNoX21vZGUpCisJCWRpZShfKCInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggdXBkYXRpbmcgcGF0aHMiKSwKKwkJICAgIG9wdHMtPmlnbm9yZV91bm1lcmdlZF9vcHQpOwogCiAJaWYgKG9wdHMtPmZvcmNlX2RldGFjaCkKIAkJZGllKF8oIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCB1cGRhdGluZyBwYXRocyIpLCAiLS1kZXRhY2giKTsKQEAgLTI3MywxOCArNDI0LDQ4IEBACiAJaWYgKG9wdHMtPm1lcmdlICYmIG9wdHMtPnBhdGNoX21vZGUpCiAJCWRpZShfKCInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiKSwgIi0tbWVyZ2UiLCAiLS1wYXRjaCIpOwogCi0JaWYgKG9wdHMtPmZvcmNlICYmIG9wdHMtPm1lcmdlKQotCQlkaWUoXygiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIiksICItZiIsICItbSIpOworCWlmIChvcHRzLT5pZ25vcmVfdW5tZXJnZWQgJiYgb3B0cy0+bWVyZ2UpCisJCWRpZShfKCInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiKSwKKwkJICAgIG9wdHMtPmlnbm9yZV91bm1lcmdlZF9vcHQsICItbSIpOwogCiAJaWYgKG9wdHMtPm5ld19icmFuY2gpCiAJCWRpZShfKCJDYW5ub3QgdXBkYXRlIHBhdGhzIGFuZCBzd2l0Y2ggdG8gYnJhbmNoICclcycgYXQgdGhlIHNhbWUgdGltZS4iKSwKIAkJICAgIG9wdHMtPm5ld19icmFuY2gpOwogCi0JaWYgKG9wdHMtPnBhdGNoX21vZGUpCi0JCXJldHVybiBydW5fYWRkX2ludGVyYWN0aXZlKHJldmlzaW9uLCAiLS1wYXRjaD1jaGVja291dCIsCi0JCQkJCSAgICZvcHRzLT5wYXRoc3BlYyk7CisJaWYgKCFvcHRzLT5jaGVja291dF93b3JrdHJlZSAmJiAhb3B0cy0+Y2hlY2tvdXRfaW5kZXgpCisJCWRpZShfKCJuZWl0aGVyICclcycgb3IgJyVzJyBpcyBzcGVjaWZpZWQiKSwKKwkJICAgICItLXN0YWdlZCIsICItLXdvcmt0cmVlIik7CiAKLQlob2xkX2xvY2tlZF9pbmRleCgmbG9ja19maWxlLCBMT0NLX0RJRV9PTl9FUlJPUik7CisJaWYgKCFvcHRzLT5jaGVja291dF93b3JrdHJlZSAmJiAhb3B0cy0+ZnJvbV90cmVlaXNoKQorCQlkaWUoXygiJyVzJyBtdXN0IGJlIHVzZWQgd2hlbiAnJXMnIGlzIG5vdCBzcGVjaWZpZWQiKSwKKwkJICAgICItLXdvcmt0cmVlIiwgIi0tc291cmNlIik7CisKKwlpZiAob3B0cy0+Y2hlY2tvdXRfaW5kZXggJiYgIW9wdHMtPmNoZWNrb3V0X3dvcmt0cmVlICYmCisJICAgIG9wdHMtPndyaXRlb3V0X3N0YWdlKQorCQlkaWUoXygiJyVzJyBvciAnJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiKSwKKwkJICAgICItLW91cnMiLCAiLS10aGVpcnMiLCAiLS1zdGFnZWQiKTsKKworCWlmIChvcHRzLT5jaGVja291dF9pbmRleCAmJiAhb3B0cy0+Y2hlY2tvdXRfd29ya3RyZWUgJiYKKwkgICAgb3B0cy0+bWVyZ2UpCisJCWRpZShfKCInJXMnIG9yICclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIpLAorCQkgICAgIi0tbWVyZ2UiLCAiLS1jb25mbGljdCIsICItLXN0YWdlZCIpOworCisJaWYgKG9wdHMtPnBhdGNoX21vZGUpIHsKKwkJY29uc3QgY2hhciAqcGF0Y2hfbW9kZTsKKworCQlpZiAob3B0cy0+Y2hlY2tvdXRfaW5kZXggJiYgb3B0cy0+Y2hlY2tvdXRfd29ya3RyZWUpCisJCQlwYXRjaF9tb2RlID0gIi0tcGF0Y2g9Y2hlY2tvdXQiOworCQllbHNlIGlmIChvcHRzLT5jaGVja291dF9pbmRleCAmJiAhb3B0cy0+Y2hlY2tvdXRfd29ya3RyZWUpCisJCQlwYXRjaF9tb2RlID0gIi0tcGF0Y2g9cmVzZXQiOworCQllbHNlIGlmICghb3B0cy0+Y2hlY2tvdXRfaW5kZXggJiYgb3B0cy0+Y2hlY2tvdXRfd29ya3RyZWUpCisJCQlwYXRjaF9tb2RlID0gIi0tcGF0Y2g9d29ya3RyZWUiOworCQllbHNlCisJCQlCVUcoImVpdGhlciBmbGFnIG11c3QgaGF2ZSBiZWVuIHNldCwgd29ya3RyZWU9JWQsIGluZGV4PSVkIiwKKwkJCSAgICBvcHRzLT5jaGVja291dF93b3JrdHJlZSwgb3B0cy0+Y2hlY2tvdXRfaW5kZXgpOworCQlyZXR1cm4gcnVuX2FkZF9pbnRlcmFjdGl2ZShyZXZpc2lvbiwgcGF0Y2hfbW9kZSwgJm9wdHMtPnBhdGhzcGVjKTsKKwl9CisKKwlyZXBvX2hvbGRfbG9ja2VkX2luZGV4KHRoZV9yZXBvc2l0b3J5LCAmbG9ja19maWxlLCBMT0NLX0RJRV9PTl9FUlJPUik7CiAJaWYgKHJlYWRfY2FjaGVfcHJlbG9hZCgmb3B0cy0+cGF0aHNwZWMpIDwgMCkKIAkJcmV0dXJuIGVycm9yKF8oImluZGV4IGZpbGUgY29ycnVwdCIpKTsKIApAQCAtMjk3LDM5ICs0NzgsMTcgQEAKIAkgKiBNYWtlIHN1cmUgYWxsIHBhdGhzcGVjcyBwYXJ0aWNpcGF0ZWQgaW4gbG9jYXRpbmcgdGhlIHBhdGhzCiAJICogdG8gYmUgY2hlY2tlZCBvdXQuCiAJICovCi0JZm9yIChwb3MgPSAwOyBwb3MgPCBhY3RpdmVfbnI7IHBvcysrKSB7Ci0JCXN0cnVjdCBjYWNoZV9lbnRyeSAqY2UgPSBhY3RpdmVfY2FjaGVbcG9zXTsKLQkJY2UtPmNlX2ZsYWdzICY9IH5DRV9NQVRDSEVEOwotCQlpZiAoIW9wdHMtPmlnbm9yZV9za2lwd29ya3RyZWUgJiYgY2Vfc2tpcF93b3JrdHJlZShjZSkpCi0JCQljb250aW51ZTsKLQkJaWYgKG9wdHMtPnNvdXJjZV90cmVlICYmICEoY2UtPmNlX2ZsYWdzICYgQ0VfVVBEQVRFKSkKLQkJCS8qCi0JCQkgKiAiZ2l0IGNoZWNrb3V0IHRyZWUtaXNoIC0tIHBhdGgiLCBidXQgdGhpcyBlbnRyeQotCQkJICogaXMgaW4gdGhlIG9yaWdpbmFsIGluZGV4OyBpdCB3aWxsIG5vdCBiZSBjaGVja2VkCi0JCQkgKiBvdXQgdG8gdGhlIHdvcmtpbmcgdHJlZSBhbmQgaXQgZG9lcyBub3QgbWF0dGVyCi0JCQkgKiBpZiBwYXRoc3BlYyBtYXRjaGVkIHRoaXMgZW50cnkuICBXZSB3aWxsIG5vdCBkbwotCQkJICogYW55dGhpbmcgdG8gdGhpcyBlbnRyeSBhdCBhbGwuCi0JCQkgKi8KLQkJCWNvbnRpbnVlOwotCQkvKgotCQkgKiBFaXRoZXIgdGhpcyBlbnRyeSBjYW1lIGZyb20gdGhlIHRyZWUtaXNoIHdlIGFyZQotCQkgKiBjaGVja2luZyB0aGUgcGF0aHMgb3V0IG9mLCBvciB3ZSBhcmUgY2hlY2tpbmcgb3V0Ci0JCSAqIG9mIHRoZSBpbmRleC4KLQkJICoKLQkJICogSWYgaXQgY29tZXMgZnJvbSB0aGUgdHJlZS1pc2gsIHdlIGFscmVhZHkga25vdyBpdAotCQkgKiBtYXRjaGVzIHRoZSBwYXRoc3BlYyBhbmQgY291bGQganVzdCBzdGFtcAotCQkgKiBDRV9NQVRDSEVEIHRvIGl0IGZyb20gdXBkYXRlX3NvbWUoKS4gQnV0IHdlIHN0aWxsCi0JCSAqIG5lZWQgcHNfbWF0Y2hlZCBhbmQgcmVhZF90cmVlX3JlY3Vyc2l2ZSAoYW5kCi0JCSAqIGV2ZW50dWFsbHkgdHJlZV9lbnRyeV9pbnRlcmVzdGluZykgY2Fubm90IGZpbGwKLQkJICogcHNfbWF0Y2hlZCB5ZXQuIE9uY2UgaXQgY2FuLCB3ZSBjYW4gYXZvaWQgY2FsbGluZwotCQkgKiBtYXRjaF9wYXRoc3BlYygpIGZvciBfYWxsXyBlbnRyaWVzIHdoZW4KLQkJICogb3B0cy0+c291cmNlX3RyZWUgIT0gTlVMTC4KLQkJICovCi0JCWlmIChjZV9wYXRoX21hdGNoKCZ0aGVfaW5kZXgsIGNlLCAmb3B0cy0+cGF0aHNwZWMsIHBzX21hdGNoZWQpKQotCQkJY2UtPmNlX2ZsYWdzIHw9IENFX01BVENIRUQ7Ci0JfQorCWZvciAocG9zID0gMDsgcG9zIDwgYWN0aXZlX25yOyBwb3MrKykKKwkJaWYgKG9wdHMtPm92ZXJsYXlfbW9kZSkKKwkJCW1hcmtfY2VfZm9yX2NoZWNrb3V0X292ZXJsYXkoYWN0aXZlX2NhY2hlW3Bvc10sCisJCQkJCQkgICAgIHBzX21hdGNoZWQsCisJCQkJCQkgICAgIG9wdHMpOworCQllbHNlCisJCQltYXJrX2NlX2Zvcl9jaGVja291dF9ub19vdmVybGF5KGFjdGl2ZV9jYWNoZVtwb3NdLAorCQkJCQkJCXBzX21hdGNoZWQsCisJCQkJCQkJb3B0cyk7CiAKLQlpZiAocmVwb3J0X3BhdGhfZXJyb3IocHNfbWF0Y2hlZCwgJm9wdHMtPnBhdGhzcGVjLCBvcHRzLT5wcmVmaXgpKSB7CisJaWYgKHJlcG9ydF9wYXRoX2Vycm9yKHBzX21hdGNoZWQsICZvcHRzLT5wYXRoc3BlYykpIHsKIAkJZnJlZShwc19tYXRjaGVkKTsKIAkJcmV0dXJuIDE7CiAJfQpAQCAtMzQ1LDEwICs1MDQsMTEgQEAKIAkJaWYgKGNlLT5jZV9mbGFncyAmIENFX01BVENIRUQpIHsKIAkJCWlmICghY2Vfc3RhZ2UoY2UpKQogCQkJCWNvbnRpbnVlOwotCQkJaWYgKG9wdHMtPmZvcmNlKSB7Ci0JCQkJd2FybmluZyhfKCJwYXRoICclcycgaXMgdW5tZXJnZWQiKSwgY2UtPm5hbWUpOworCQkJaWYgKG9wdHMtPmlnbm9yZV91bm1lcmdlZCkgeworCQkJCWlmICghb3B0cy0+cXVpZXQpCisJCQkJCXdhcm5pbmcoXygicGF0aCAnJXMnIGlzIHVubWVyZ2VkIiksIGNlLT5uYW1lKTsKIAkJCX0gZWxzZSBpZiAob3B0cy0+d3JpdGVvdXRfc3RhZ2UpIHsKLQkJCQllcnJzIHw9IGNoZWNrX3N0YWdlKG9wdHMtPndyaXRlb3V0X3N0YWdlLCBjZSwgcG9zKTsKKwkJCQllcnJzIHw9IGNoZWNrX3N0YWdlKG9wdHMtPndyaXRlb3V0X3N0YWdlLCBjZSwgcG9zLCBvcHRzLT5vdmVybGF5X21vZGUpOwogCQkJfSBlbHNlIGlmIChvcHRzLT5tZXJnZSkgewogCQkJCWVycnMgfD0gY2hlY2tfc3RhZ2VzKCgxPDwyKSB8ICgxPDwzKSwgY2UsIHBvcyk7CiAJCQl9IGVsc2UgewpAQCAtMzYyLDI5ICs1MjIsMzIgQEAKIAkJcmV0dXJuIDE7CiAKIAkvKiBOb3cgd2UgYXJlIGNvbW1pdHRlZCB0byBjaGVjayB0aGVtIG91dCAqLwotCXN0YXRlLmZvcmNlID0gMTsKLQlzdGF0ZS5yZWZyZXNoX2NhY2hlID0gMTsKLQlzdGF0ZS5pc3RhdGUgPSAmdGhlX2luZGV4OworCWlmIChvcHRzLT5jaGVja291dF93b3JrdHJlZSkKKwkJZXJycyB8PSBjaGVja291dF93b3JrdHJlZShvcHRzKTsKKwllbHNlCisJCXJlbW92ZV9tYXJrZWRfY2FjaGVfZW50cmllcygmdGhlX2luZGV4LCAxKTsKIAotCWVuYWJsZV9kZWxheWVkX2NoZWNrb3V0KCZzdGF0ZSk7Ci0JZm9yIChwb3MgPSAwOyBwb3MgPCBhY3RpdmVfbnI7IHBvcysrKSB7Ci0JCXN0cnVjdCBjYWNoZV9lbnRyeSAqY2UgPSBhY3RpdmVfY2FjaGVbcG9zXTsKLQkJaWYgKGNlLT5jZV9mbGFncyAmIENFX01BVENIRUQpIHsKLQkJCWlmICghY2Vfc3RhZ2UoY2UpKSB7Ci0JCQkJZXJycyB8PSBjaGVja291dF9lbnRyeShjZSwgJnN0YXRlLCBOVUxMKTsKLQkJCQljb250aW51ZTsKLQkJCX0KLQkJCWlmIChvcHRzLT53cml0ZW91dF9zdGFnZSkKLQkJCQllcnJzIHw9IGNoZWNrb3V0X3N0YWdlKG9wdHMtPndyaXRlb3V0X3N0YWdlLCBjZSwgcG9zLCAmc3RhdGUpOwotCQkJZWxzZSBpZiAob3B0cy0+bWVyZ2UpCi0JCQkJZXJycyB8PSBjaGVja291dF9tZXJnZWQocG9zLCAmc3RhdGUpOwotCQkJcG9zID0gc2tpcF9zYW1lX25hbWUoY2UsIHBvcykgLSAxOwotCQl9CisJLyoKKwkgKiBBbGxvdyB1cGRhdGluZyB0aGUgaW5kZXggd2hlbiBjaGVja2luZyBvdXQgZnJvbSB0aGUgaW5kZXguCisJICogVGhpcyBpcyB0byBzYXZlIG5ldyBzdGF0IGluZm8uCisJICovCisJaWYgKG9wdHMtPmNoZWNrb3V0X3dvcmt0cmVlICYmICFvcHRzLT5jaGVja291dF9pbmRleCAmJiAhb3B0cy0+c291cmNlX3RyZWUpCisJCWNoZWNrb3V0X2luZGV4ID0gMTsKKwllbHNlCisJCWNoZWNrb3V0X2luZGV4ID0gb3B0cy0+Y2hlY2tvdXRfaW5kZXg7CisKKwlpZiAoY2hlY2tvdXRfaW5kZXgpIHsKKwkJaWYgKHdyaXRlX2xvY2tlZF9pbmRleCgmdGhlX2luZGV4LCAmbG9ja19maWxlLCBDT01NSVRfTE9DSykpCisJCQlkaWUoXygidW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIikpOworCX0gZWxzZSB7CisJCS8qCisJCSAqIE5FRURTV09SSzogaWYgLS13b3JrdHJlZSBpcyBub3Qgc3BlY2lmaWVkLCB3ZQorCQkgKiBzaG91bGQgc2F2ZSBzdGF0IGluZm8gb2YgY2hlY2tlZCBvdXQgZmlsZXMgaW4gdGhlCisJCSAqIGluZGV4IHRvIGF2b2lkIHRoZSBuZXh0IChwb3RlbnRpYWxseSBjb3N0bHkpCisJCSAqIHJlZnJlc2guIEJ1dCBpdCdzIGEgYml0IHRyaWNrZXIgdG8gZG8uLi4KKwkJICovCisJCXJvbGxiYWNrX2xvY2tfZmlsZSgmbG9ja19maWxlKTsKIAl9Ci0JZXJycyB8PSBmaW5pc2hfZGVsYXllZF9jaGVja291dCgmc3RhdGUpOwotCi0JaWYgKHdyaXRlX2xvY2tlZF9pbmRleCgmdGhlX2luZGV4LCAmbG9ja19maWxlLCBDT01NSVRfTE9DSykpCi0JCWRpZShfKCJ1bmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiKSk7CiAKIAlyZWFkX3JlZl9mdWxsKCJIRUFEIiwgMCwgJnJldiwgTlVMTCk7CiAJaGVhZCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlX2dlbnRseSh0aGVfcmVwb3NpdG9yeSwgJnJldiwgMSk7CkBAIC00NzksOTkgKzY0Miw2IEBACiAJYnJhbmNoLT5wYXRoID0gc3RyYnVmX2RldGFjaCgmYnVmLCBOVUxMKTsKIH0KIAotLyoKLSAqIFNraXAgbWVyZ2luZyB0aGUgdHJlZXMsIHVwZGF0aW5nIHRoZSBpbmRleCBhbmQgd29ya2luZyBkaXJlY3RvcnkgaWYgYW5kCi0gKiBvbmx5IGlmIHdlIGFyZSBjcmVhdGluZyBhIG5ldyBicmFuY2ggdmlhICJnaXQgY2hlY2tvdXQgLWIgPG5ld19icmFuY2g+LiIKLSAqLwotc3RhdGljIGludCBza2lwX21lcmdlX3dvcmtpbmdfdHJlZShjb25zdCBzdHJ1Y3QgY2hlY2tvdXRfb3B0cyAqb3B0cywKLQljb25zdCBzdHJ1Y3QgYnJhbmNoX2luZm8gKm9sZF9icmFuY2hfaW5mbywKLQljb25zdCBzdHJ1Y3QgYnJhbmNoX2luZm8gKm5ld19icmFuY2hfaW5mbykKLXsKLQkvKgotCSAqIERvIHRoZSBtZXJnZSBpZiBzcGFyc2UgY2hlY2tvdXQgaXMgb24gYW5kIHRoZSB1c2VyIGhhcyBub3Qgb3B0ZWQgaW4KLQkgKiB0byB0aGUgb3B0aW1pemVkIGJlaGF2aW9yCi0JICovCi0JaWYgKGNvcmVfYXBwbHlfc3BhcnNlX2NoZWNrb3V0ICYmICFjaGVja291dF9vcHRpbWl6ZV9uZXdfYnJhbmNoKQotCQlyZXR1cm4gMDsKLQotCS8qCi0JICogV2UgbXVzdCBkbyB0aGUgbWVyZ2UgaWYgd2UgYXJlIGFjdHVhbGx5IG1vdmluZyB0byBhIG5ldyBjb21taXQuCi0JICovCi0JaWYgKCFvbGRfYnJhbmNoX2luZm8tPmNvbW1pdCB8fCAhbmV3X2JyYW5jaF9pbmZvLT5jb21taXQgfHwKLQkJIW9pZGVxKCZvbGRfYnJhbmNoX2luZm8tPmNvbW1pdC0+b2JqZWN0Lm9pZCwKLQkJICAgICAgICZuZXdfYnJhbmNoX2luZm8tPmNvbW1pdC0+b2JqZWN0Lm9pZCkpCi0JCXJldHVybiAwOwotCi0JLyoKLQkgKiBvcHRzLT5wYXRjaF9tb2RlIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIHNvIGlzCi0JICogbm90IHRlc3RlZCBoZXJlCi0JICovCi0KLQkvKgotCSAqIG9wdHMtPnF1aWV0IG9ubHkgaW1wYWN0cyBvdXRwdXQgc28gZG9lc24ndCByZXF1aXJlIGEgbWVyZ2UKLQkgKi8KLQotCS8qCi0JICogSG9ub3IgdGhlIGV4cGxpY2l0IHJlcXVlc3QgZm9yIGEgdGhyZWUtd2F5IG1lcmdlIG9yIHRvIHRocm93IGF3YXkKLQkgKiBsb2NhbCBjaGFuZ2VzCi0JICovCi0JaWYgKG9wdHMtPm1lcmdlIHx8IG9wdHMtPmZvcmNlKQotCQlyZXR1cm4gMDsKLQotCS8qCi0JICogLS1kZXRhY2ggaXMgZG9jdW1lbnRlZCBhcyAidXBkYXRpbmcgdGhlIGluZGV4IGFuZCB0aGUgZmlsZXMgaW4gdGhlCi0JICogd29ya2luZyB0cmVlIiBidXQgdGhpcyBvcHRpbWl6YXRpb24gc2tpcHMgdGhvc2Ugc3RlcHMgc28gZmFsbCB0aHJvdWdoCi0JICogdG8gdGhlIHJlZ3VsYXIgY29kZSBwYXRoLgotCSAqLwotCWlmIChvcHRzLT5mb3JjZV9kZXRhY2gpCi0JCXJldHVybiAwOwotCi0JLyoKLQkgKiBvcHRzLT53cml0ZW91dF9zdGFnZSBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyBzbyBpcwotCSAqIG5vdCB0ZXN0ZWQgaGVyZQotCSAqLwotCi0JLyoKLQkgKiBIb25vciB0aGUgZXhwbGljaXQgaWdub3JlIHJlcXVlc3RzCi0JICovCi0JaWYgKCFvcHRzLT5vdmVyd3JpdGVfaWdub3JlIHx8IG9wdHMtPmlnbm9yZV9za2lwd29ya3RyZWUgfHwKLQkJb3B0cy0+aWdub3JlX290aGVyX3dvcmt0cmVlcykKLQkJcmV0dXJuIDA7Ci0KLQkvKgotCSAqIG9wdHMtPnNob3dfcHJvZ3Jlc3Mgb25seSBpbXBhY3RzIG91dHB1dCBzbyBkb2Vzbid0IHJlcXVpcmUgYSBtZXJnZQotCSAqLwotCi0JLyoKLQkgKiBJZiB3ZSBhcmVuJ3QgY3JlYXRpbmcgYSBuZXcgYnJhbmNoIGFueSBjaGFuZ2VzIG9yIHVwZGF0ZXMgd2lsbAotCSAqIGhhcHBlbiBpbiB0aGUgZXhpc3RpbmcgYnJhbmNoLiAgU2luY2UgdGhhdCBjb3VsZCBvbmx5IGJlIHVwZGF0aW5nCi0JICogdGhlIGluZGV4IGFuZCB3b3JraW5nIGRpcmVjdG9yeSwgd2UgZG9uJ3Qgd2FudCB0byBza2lwIHRob3NlIHN0ZXBzCi0JICogb3Igd2UndmUgZGVmZWF0ZWQgYW55IHB1cnBvc2UgaW4gcnVubmluZyB0aGUgY29tbWFuZC4KLQkgKi8KLQlpZiAoIW9wdHMtPm5ld19icmFuY2gpCi0JCXJldHVybiAwOwotCi0JLyoKLQkgKiBuZXdfYnJhbmNoX2ZvcmNlIGlzIGRlZmluZWQgdG8gImNyZWF0ZS9yZXNldCBhbmQgY2hlY2tvdXQgYSBicmFuY2giCi0JICogc28gbmVlZHMgdG8gZ28gdGhyb3VnaCB0aGUgbWVyZ2UgdG8gZG8gdGhlIHJlc2V0Ci0JICovCi0JaWYgKG9wdHMtPm5ld19icmFuY2hfZm9yY2UpCi0JCXJldHVybiAwOwotCi0JLyoKLQkgKiBBIG5ldyBvcnBoYW5lZCBicmFuY2ggcmVxdXJpcmVzIHRoZSBpbmRleCBhbmQgdGhlIHdvcmtpbmcgdHJlZSB0byBiZQotCSAqIGFkanVzdGVkIHRvIDxzdGFydF9wb2ludD4KLQkgKi8KLQlpZiAob3B0cy0+bmV3X29ycGhhbl9icmFuY2gpCi0JCXJldHVybiAwOwotCi0JLyoKLQkgKiBSZW1haW5pbmcgdmFyaWFibGVzIGFyZSBub3QgY2hlY2tvdXQgb3B0aW9ucyBidXQgdXNlZCB0byB0cmFjayBzdGF0ZQotCSAqLwotCi0JcmV0dXJuIDE7Ci19Ci0KIHN0YXRpYyBpbnQgbWVyZ2Vfd29ya2luZ190cmVlKGNvbnN0IHN0cnVjdCBjaGVja291dF9vcHRzICpvcHRzLAogCQkJICAgICAgc3RydWN0IGJyYW5jaF9pbmZvICpvbGRfYnJhbmNoX2luZm8sCiAJCQkgICAgICBzdHJ1Y3QgYnJhbmNoX2luZm8gKm5ld19icmFuY2hfaW5mbywKQEAgLTU3OSwxNSArNjQ5LDIxIEBACiB7CiAJaW50IHJldDsKIAlzdHJ1Y3QgbG9ja19maWxlIGxvY2tfZmlsZSA9IExPQ0tfSU5JVDsKKwlzdHJ1Y3QgdHJlZSAqbmV3X3RyZWU7CiAKIAlob2xkX2xvY2tlZF9pbmRleCgmbG9ja19maWxlLCBMT0NLX0RJRV9PTl9FUlJPUik7CiAJaWYgKHJlYWRfY2FjaGVfcHJlbG9hZChOVUxMKSA8IDApCiAJCXJldHVybiBlcnJvcihfKCJpbmRleCBmaWxlIGNvcnJ1cHQiKSk7CiAKIAlyZXNvbHZlX3VuZG9fY2xlYXIoKTsKLQlpZiAob3B0cy0+Zm9yY2UpIHsKLQkJcmV0ID0gcmVzZXRfdHJlZShnZXRfY29tbWl0X3RyZWUobmV3X2JyYW5jaF9pbmZvLT5jb21taXQpLAotCQkJCSBvcHRzLCAxLCB3cml0ZW91dF9lcnJvcik7CisJaWYgKG9wdHMtPm5ld19vcnBoYW5fYnJhbmNoICYmIG9wdHMtPm9ycGhhbl9mcm9tX2VtcHR5X3RyZWUpIHsKKwkJaWYgKG5ld19icmFuY2hfaW5mby0+Y29tbWl0KQorCQkJQlVHKCInc3dpdGNoIC0tb3JwaGFuJyBzaG91bGQgbmV2ZXIgYWNjZXB0IGEgY29tbWl0IGFzIHN0YXJ0aW5nIHBvaW50Iik7CisJCW5ld190cmVlID0gcGFyc2VfdHJlZV9pbmRpcmVjdCh0aGVfaGFzaF9hbGdvLT5lbXB0eV90cmVlKTsKKwl9IGVsc2UKKwkJbmV3X3RyZWUgPSBnZXRfY29tbWl0X3RyZWUobmV3X2JyYW5jaF9pbmZvLT5jb21taXQpOworCWlmIChvcHRzLT5kaXNjYXJkX2NoYW5nZXMpIHsKKwkJcmV0ID0gcmVzZXRfdHJlZShuZXdfdHJlZSwgb3B0cywgMSwgd3JpdGVvdXRfZXJyb3IpOwogCQlpZiAocmV0KQogCQkJcmV0dXJuIHJldDsKIAl9IGVsc2UgewpAQCAtNjEzLDcgKzY4OSw3IEBACiAJCXRvcHRzLmluaXRpYWxfY2hlY2tvdXQgPSBpc19jYWNoZV91bmJvcm4oKTsKIAkJdG9wdHMudXBkYXRlID0gMTsKIAkJdG9wdHMubWVyZ2UgPSAxOwotCQl0b3B0cy5nZW50bHkgPSBvcHRzLT5tZXJnZSAmJiBvbGRfYnJhbmNoX2luZm8tPmNvbW1pdDsKKwkJdG9wdHMucXVpZXQgPSBvcHRzLT5tZXJnZSAmJiBvbGRfYnJhbmNoX2luZm8tPmNvbW1pdDsKIAkJdG9wdHMudmVyYm9zZV91cGRhdGUgPSBvcHRzLT5zaG93X3Byb2dyZXNzOwogCQl0b3B0cy5mbiA9IHR3b3dheV9tZXJnZTsKIAkJaWYgKG9wdHMtPm92ZXJ3cml0ZV9pZ25vcmUpIHsKQEAgLTYyNSw3ICs3MDEsOCBAQAogCQkJCQkgICAmb2xkX2JyYW5jaF9pbmZvLT5jb21taXQtPm9iamVjdC5vaWQgOgogCQkJCQkgICB0aGVfaGFzaF9hbGdvLT5lbXB0eV90cmVlKTsKIAkJaW5pdF90cmVlX2Rlc2MoJnRyZWVzWzBdLCB0cmVlLT5idWZmZXIsIHRyZWUtPnNpemUpOwotCQl0cmVlID0gcGFyc2VfdHJlZV9pbmRpcmVjdCgmbmV3X2JyYW5jaF9pbmZvLT5jb21taXQtPm9iamVjdC5vaWQpOworCQlwYXJzZV90cmVlKG5ld190cmVlKTsKKwkJdHJlZSA9IG5ld190cmVlOwogCQlpbml0X3RyZWVfZGVzYygmdHJlZXNbMV0sIHRyZWUtPmJ1ZmZlciwgdHJlZS0+c2l6ZSk7CiAKIAkJcmV0ID0gdW5wYWNrX3RyZWVzKDIsIHRyZWVzLCAmdG9wdHMpOwpAQCAtNjM2LDkgKzcxMywxMiBAQAogCQkJICogZ2l2ZSB1cCBvciBkbyBhIHJlYWwgbWVyZ2UsIGRlcGVuZGluZyBvbgogCQkJICogd2hldGhlciB0aGUgbWVyZ2UgZmxhZyB3YXMgdXNlZC4KIAkJCSAqLwotCQkJc3RydWN0IHRyZWUgKnJlc3VsdDsKIAkJCXN0cnVjdCB0cmVlICp3b3JrOworCQkJc3RydWN0IHRyZWUgKm9sZF90cmVlOwogCQkJc3RydWN0IG1lcmdlX29wdGlvbnMgbzsKKwkJCXN0cnVjdCBzdHJidWYgc2IgPSBTVFJCVUZfSU5JVDsKKwkJCXN0cnVjdCBzdHJidWYgb2xkX2NvbW1pdF9zaG9ydG5hbWUgPSBTVFJCVUZfSU5JVDsKKwogCQkJaWYgKCFvcHRzLT5tZXJnZSkKIAkJCQlyZXR1cm4gMTsKIApAQCAtNjQ4LDYgKzcyOCwxMiBAQAogCQkJICovCiAJCQlpZiAoIW9sZF9icmFuY2hfaW5mby0+Y29tbWl0KQogCQkJCXJldHVybiAxOworCQkJb2xkX3RyZWUgPSBnZXRfY29tbWl0X3RyZWUob2xkX2JyYW5jaF9pbmZvLT5jb21taXQpOworCisJCQlpZiAocmVwb19pbmRleF9oYXNfY2hhbmdlcyh0aGVfcmVwb3NpdG9yeSwgb2xkX3RyZWUsICZzYikpCisJCQkJZGllKF8oImNhbm5vdCBjb250aW51ZSB3aXRoIHN0YWdlZCBjaGFuZ2VzIGluICIKKwkJCQkgICAgICAidGhlIGZvbGxvd2luZyBmaWxlczpcbiVzIiksIHNiLmJ1Zik7CisJCQlzdHJidWZfcmVsZWFzZSgmc2IpOwogCiAJCQkvKiBEbyBtb3JlIHJlYWwgbWVyZ2UgKi8KIApAQCAtNjcwLDI5ICs3NTYsMzUgQEAKIAkJCSAqIGEgcGFpbjsgcGx1bWIgaW4gYW4gb3B0aW9uIHRvIHNldAogCQkJICogby5yZW5vcm1hbGl6ZT8KIAkJCSAqLwotCQkJaW5pdF9tZXJnZV9vcHRpb25zKCZvKTsKKwkJCWluaXRfbWVyZ2Vfb3B0aW9ucygmbywgdGhlX3JlcG9zaXRvcnkpOwogCQkJby52ZXJib3NpdHkgPSAwOwotCQkJd29yayA9IHdyaXRlX3RyZWVfZnJvbV9tZW1vcnkoJm8pOworCQkJd29yayA9IHdyaXRlX2luX2NvcmVfaW5kZXhfYXNfdHJlZSh0aGVfcmVwb3NpdG9yeSk7CiAKLQkJCXJldCA9IHJlc2V0X3RyZWUoZ2V0X2NvbW1pdF90cmVlKG5ld19icmFuY2hfaW5mby0+Y29tbWl0KSwKKwkJCXJldCA9IHJlc2V0X3RyZWUobmV3X3RyZWUsCiAJCQkJCSBvcHRzLCAxLAogCQkJCQkgd3JpdGVvdXRfZXJyb3IpOwogCQkJaWYgKHJldCkKIAkJCQlyZXR1cm4gcmV0OwogCQkJby5hbmNlc3RvciA9IG9sZF9icmFuY2hfaW5mby0+bmFtZTsKKwkJCWlmIChvbGRfYnJhbmNoX2luZm8tPm5hbWUgPT0gTlVMTCkgeworCQkJCXN0cmJ1Zl9hZGRfdW5pcXVlX2FiYnJldigmb2xkX2NvbW1pdF9zaG9ydG5hbWUsCisJCQkJCQkJICZvbGRfYnJhbmNoX2luZm8tPmNvbW1pdC0+b2JqZWN0Lm9pZCwKKwkJCQkJCQkgREVGQVVMVF9BQkJSRVYpOworCQkJCW8uYW5jZXN0b3IgPSBvbGRfY29tbWl0X3Nob3J0bmFtZS5idWY7CisJCQl9CiAJCQlvLmJyYW5jaDEgPSBuZXdfYnJhbmNoX2luZm8tPm5hbWU7CiAJCQlvLmJyYW5jaDIgPSAibG9jYWwiOwogCQkJcmV0ID0gbWVyZ2VfdHJlZXMoJm8sCi0JCQkJCSAgZ2V0X2NvbW1pdF90cmVlKG5ld19icmFuY2hfaW5mby0+Y29tbWl0KSwKKwkJCQkJICBuZXdfdHJlZSwKIAkJCQkJICB3b3JrLAotCQkJCQkgIGdldF9jb21taXRfdHJlZShvbGRfYnJhbmNoX2luZm8tPmNvbW1pdCksCi0JCQkJCSAgJnJlc3VsdCk7CisJCQkJCSAgb2xkX3RyZWUpOwogCQkJaWYgKHJldCA8IDApCiAJCQkJZXhpdCgxMjgpOwotCQkJcmV0ID0gcmVzZXRfdHJlZShnZXRfY29tbWl0X3RyZWUobmV3X2JyYW5jaF9pbmZvLT5jb21taXQpLAorCQkJcmV0ID0gcmVzZXRfdHJlZShuZXdfdHJlZSwKIAkJCQkJIG9wdHMsIDAsCiAJCQkJCSB3cml0ZW91dF9lcnJvcik7CiAJCQlzdHJidWZfcmVsZWFzZSgmby5vYnVmKTsKKwkJCXN0cmJ1Zl9yZWxlYXNlKCZvbGRfY29tbWl0X3Nob3J0bmFtZSk7CiAJCQlpZiAocmV0KQogCQkJCXJldHVybiByZXQ7CiAJCX0KQEAgLTcwNyw3ICs3OTksNyBAQAogCWlmICh3cml0ZV9sb2NrZWRfaW5kZXgoJnRoZV9pbmRleCwgJmxvY2tfZmlsZSwgQ09NTUlUX0xPQ0spKQogCQlkaWUoXygidW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIikpOwogCi0JaWYgKCFvcHRzLT5mb3JjZSAmJiAhb3B0cy0+cXVpZXQpCisJaWYgKCFvcHRzLT5kaXNjYXJkX2NoYW5nZXMgJiYgIW9wdHMtPnF1aWV0ICYmIG5ld19icmFuY2hfaW5mby0+Y29tbWl0KQogCQlzaG93X2xvY2FsX2NoYW5nZXMoJm5ld19icmFuY2hfaW5mby0+Y29tbWl0LT5vYmplY3QsICZvcHRzLT5kaWZmX29wdGlvbnMpOwogCiAJcmV0dXJuIDA7CkBAIC03NTMsNyArODQ1LDggQEAKIAkJCWZyZWUocmVmbmFtZSk7CiAJCX0KIAkJZWxzZQotCQkJY3JlYXRlX2JyYW5jaChvcHRzLT5uZXdfYnJhbmNoLCBuZXdfYnJhbmNoX2luZm8tPm5hbWUsCisJCQljcmVhdGVfYnJhbmNoKHRoZV9yZXBvc2l0b3J5LAorCQkJCSAgICAgIG9wdHMtPm5ld19icmFuY2gsIG5ld19icmFuY2hfaW5mby0+bmFtZSwKIAkJCQkgICAgICBvcHRzLT5uZXdfYnJhbmNoX2ZvcmNlID8gMSA6IDAsCiAJCQkJICAgICAgb3B0cy0+bmV3X2JyYW5jaF9mb3JjZSA/IDEgOiAwLAogCQkJCSAgICAgIG9wdHMtPm5ld19icmFuY2hfbG9nLApAQCAtNzcyLDcgKzg2NSw3IEBACiAJCXN0cmJ1Zl9hZGRmKCZtc2csICJjaGVja291dDogbW92aW5nIGZyb20gJXMgdG8gJXMiLAogCQkJb2xkX2Rlc2MgPyBvbGRfZGVzYyA6ICIoaW52YWxpZCkiLCBuZXdfYnJhbmNoX2luZm8tPm5hbWUpOwogCWVsc2UKLQkJc3RyYnVmX2luc2VydCgmbXNnLCAwLCByZWZsb2dfbXNnLCBzdHJsZW4ocmVmbG9nX21zZykpOworCQlzdHJidWZfaW5zZXJ0c3RyKCZtc2csIDAsIHJlZmxvZ19tc2cpOwogCiAJaWYgKCFzdHJjbXAobmV3X2JyYW5jaF9pbmZvLT5uYW1lLCAiSEVBRCIpICYmICFuZXdfYnJhbmNoX2luZm8tPnBhdGggJiYgIW9wdHMtPmZvcmNlX2RldGFjaCkgewogCQkvKiBOb3RoaW5nIHRvIGRvLiAqLwpAQCAtODExLDcgKzkwNCw3IEBACiAJCQkJZGVsZXRlX3JlZmxvZyhvbGRfYnJhbmNoX2luZm8tPnBhdGgpOwogCQl9CiAJfQotCXJlbW92ZV9icmFuY2hfc3RhdGUoKTsKKwlyZW1vdmVfYnJhbmNoX3N0YXRlKHRoZV9yZXBvc2l0b3J5LCAhb3B0cy0+cXVpZXQpOwogCXN0cmJ1Zl9yZWxlYXNlKCZtc2cpOwogCWlmICghb3B0cy0+cXVpZXQgJiYKIAkgICAgKG5ld19icmFuY2hfaW5mby0+cGF0aCB8fCAoIW9wdHMtPmZvcmNlX2RldGFjaCAmJiAhc3RyY21wKG5ld19icmFuY2hfaW5mby0+bmFtZSwgIkhFQUQiKSkpKQpAQCAtOTA3LDcgKzEwMDAsMTAgQEAKIAlhZGRfcGVuZGluZ19vYmplY3QoJnJldnMsIG9iamVjdCwgb2lkX3RvX2hleCgmb2JqZWN0LT5vaWQpKTsKIAogCWZvcl9lYWNoX3JlZihhZGRfcGVuZGluZ191bmludGVyZXN0aW5nX3JlZiwgJnJldnMpOwotCWFkZF9wZW5kaW5nX29pZCgmcmV2cywgIkhFQUQiLCAmbmV3X2NvbW1pdC0+b2JqZWN0Lm9pZCwgVU5JTlRFUkVTVElORyk7CisJaWYgKG5ld19jb21taXQpCisJCWFkZF9wZW5kaW5nX29pZCgmcmV2cywgIkhFQUQiLAorCQkJCSZuZXdfY29tbWl0LT5vYmplY3Qub2lkLAorCQkJCVVOSU5URVJFU1RJTkcpOwogCiAJaWYgKHByZXBhcmVfcmV2aXNpb25fd2FsaygmcmV2cykpCiAJCWRpZShfKCJpbnRlcm5hbCBlcnJvciBpbiByZXZpc2lvbiB3YWxrIikpOwpAQCAtOTI4LDYgKzEwMjQsMTAgQEAKIAl2b2lkICpwYXRoX3RvX2ZyZWU7CiAJc3RydWN0IG9iamVjdF9pZCByZXY7CiAJaW50IGZsYWcsIHdyaXRlb3V0X2Vycm9yID0gMDsKKwlpbnQgZG9fbWVyZ2UgPSAxOworCisJdHJhY2UyX2NtZF9tb2RlKCJicmFuY2giKTsKKwogCW1lbXNldCgmb2xkX2JyYW5jaF9pbmZvLCAwLCBzaXplb2Yob2xkX2JyYW5jaF9pbmZvKSk7CiAJb2xkX2JyYW5jaF9pbmZvLnBhdGggPSBwYXRoX3RvX2ZyZWUgPSByZXNvbHZlX3JlZmR1cCgiSEVBRCIsIDAsICZyZXYsICZmbGFnKTsKIAlpZiAob2xkX2JyYW5jaF9pbmZvLnBhdGgpCkBAIC05MzgsMjIgKzEwMzgsMjYgQEAKIAlpZiAob2xkX2JyYW5jaF9pbmZvLnBhdGgpCiAJCXNraXBfcHJlZml4KG9sZF9icmFuY2hfaW5mby5wYXRoLCAicmVmcy9oZWFkcy8iLCAmb2xkX2JyYW5jaF9pbmZvLm5hbWUpOwogCisJaWYgKG9wdHMtPm5ld19vcnBoYW5fYnJhbmNoICYmIG9wdHMtPm9ycGhhbl9mcm9tX2VtcHR5X3RyZWUpIHsKKwkJaWYgKG5ld19icmFuY2hfaW5mby0+bmFtZSkKKwkJCUJVRygiJ3N3aXRjaCAtLW9ycGhhbicgc2hvdWxkIG5ldmVyIGFjY2VwdCBhIGNvbW1pdCBhcyBzdGFydGluZyBwb2ludCIpOworCQluZXdfYnJhbmNoX2luZm8tPmNvbW1pdCA9IE5VTEw7CisJCW5ld19icmFuY2hfaW5mby0+bmFtZSA9ICIoZW1wdHkpIjsKKwkJZG9fbWVyZ2UgPSAxOworCX0KKwogCWlmICghbmV3X2JyYW5jaF9pbmZvLT5uYW1lKSB7CiAJCW5ld19icmFuY2hfaW5mby0+bmFtZSA9ICJIRUFEIjsKIAkJbmV3X2JyYW5jaF9pbmZvLT5jb21taXQgPSBvbGRfYnJhbmNoX2luZm8uY29tbWl0OwogCQlpZiAoIW5ld19icmFuY2hfaW5mby0+Y29tbWl0KQogCQkJZGllKF8oIllvdSBhcmUgb24gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iKSk7CiAJCXBhcnNlX2NvbW1pdF9vcl9kaWUobmV3X2JyYW5jaF9pbmZvLT5jb21taXQpOworCisJCWlmIChvcHRzLT5vbmx5X21lcmdlX29uX3N3aXRjaGluZ19icmFuY2hlcykKKwkJCWRvX21lcmdlID0gMDsKIAl9CiAKLQkvKiBvcHRpbWl6ZSB0aGUgImNoZWNrb3V0IC1iIDxuZXdfYnJhbmNoPiBwYXRoICovCi0JaWYgKHNraXBfbWVyZ2Vfd29ya2luZ190cmVlKG9wdHMsICZvbGRfYnJhbmNoX2luZm8sIG5ld19icmFuY2hfaW5mbykpIHsKLQkJaWYgKCFjaGVja291dF9vcHRpbWl6ZV9uZXdfYnJhbmNoICYmICFvcHRzLT5xdWlldCkgewotCQkJaWYgKHJlYWRfY2FjaGVfcHJlbG9hZChOVUxMKSA8IDApCi0JCQkJcmV0dXJuIGVycm9yKF8oImluZGV4IGZpbGUgY29ycnVwdCIpKTsKLQkJCXNob3dfbG9jYWxfY2hhbmdlcygmbmV3X2JyYW5jaF9pbmZvLT5jb21taXQtPm9iamVjdCwgJm9wdHMtPmRpZmZfb3B0aW9ucyk7Ci0JCX0KLQl9IGVsc2UgeworCWlmIChkb19tZXJnZSkgewogCQlyZXQgPSBtZXJnZV93b3JraW5nX3RyZWUob3B0cywgJm9sZF9icmFuY2hfaW5mbywgbmV3X2JyYW5jaF9pbmZvLCAmd3JpdGVvdXRfZXJyb3IpOwogCQlpZiAocmV0KSB7CiAJCQlmcmVlKHBhdGhfdG9fZnJlZSk7CkBAIC05NzMsMTEgKzEwNzcsNiBAQAogCiBzdGF0aWMgaW50IGdpdF9jaGVja291dF9jb25maWcoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqY2IpCiB7Ci0JaWYgKCFzdHJjbXAodmFyLCAiY2hlY2tvdXQub3B0aW1pemVuZXdicmFuY2giKSkgewotCQljaGVja291dF9vcHRpbWl6ZV9uZXdfYnJhbmNoID0gZ2l0X2NvbmZpZ19ib29sKHZhciwgdmFsdWUpOwotCQlyZXR1cm4gMDsKLQl9Ci0KIAlpZiAoIXN0cmNtcCh2YXIsICJkaWZmLmlnbm9yZXN1Ym1vZHVsZXMiKSkgewogCQlzdHJ1Y3QgY2hlY2tvdXRfb3B0cyAqb3B0cyA9IGNiOwogCQloYW5kbGVfaWdub3JlX3N1Ym1vZHVsZXNfYXJnKCZvcHRzLT5kaWZmX29wdGlvbnMsIHZhbHVlKTsKQEAgLTk5MCwxNyArMTA4OSw3NCBAQAogCXJldHVybiBnaXRfeG1lcmdlX2NvbmZpZyh2YXIsIHZhbHVlLCBOVUxMKTsKIH0KIAorc3RhdGljIHZvaWQgc2V0dXBfbmV3X2JyYW5jaF9pbmZvX2FuZF9zb3VyY2VfdHJlZSgKKwlzdHJ1Y3QgYnJhbmNoX2luZm8gKm5ld19icmFuY2hfaW5mbywKKwlzdHJ1Y3QgY2hlY2tvdXRfb3B0cyAqb3B0cywKKwlzdHJ1Y3Qgb2JqZWN0X2lkICpyZXYsCisJY29uc3QgY2hhciAqYXJnKQoreworCXN0cnVjdCB0cmVlICoqc291cmNlX3RyZWUgPSAmb3B0cy0+c291cmNlX3RyZWU7CisJc3RydWN0IG9iamVjdF9pZCBicmFuY2hfcmV2OworCisJbmV3X2JyYW5jaF9pbmZvLT5uYW1lID0gYXJnOworCXNldHVwX2JyYW5jaF9wYXRoKG5ld19icmFuY2hfaW5mbyk7CisKKwlpZiAoIWNoZWNrX3JlZm5hbWVfZm9ybWF0KG5ld19icmFuY2hfaW5mby0+cGF0aCwgMCkgJiYKKwkgICAgIXJlYWRfcmVmKG5ld19icmFuY2hfaW5mby0+cGF0aCwgJmJyYW5jaF9yZXYpKQorCQlvaWRjcHkocmV2LCAmYnJhbmNoX3Jldik7CisJZWxzZQorCQluZXdfYnJhbmNoX2luZm8tPnBhdGggPSBOVUxMOyAvKiBub3QgYW4gZXhpc3RpbmcgYnJhbmNoICovCisKKwluZXdfYnJhbmNoX2luZm8tPmNvbW1pdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlX2dlbnRseSh0aGVfcmVwb3NpdG9yeSwgcmV2LCAxKTsKKwlpZiAoIW5ld19icmFuY2hfaW5mby0+Y29tbWl0KSB7CisJCS8qIG5vdCBhIGNvbW1pdCAqLworCQkqc291cmNlX3RyZWUgPSBwYXJzZV90cmVlX2luZGlyZWN0KHJldik7CisJfSBlbHNlIHsKKwkJcGFyc2VfY29tbWl0X29yX2RpZShuZXdfYnJhbmNoX2luZm8tPmNvbW1pdCk7CisJCSpzb3VyY2VfdHJlZSA9IGdldF9jb21taXRfdHJlZShuZXdfYnJhbmNoX2luZm8tPmNvbW1pdCk7CisJfQorfQorCitzdGF0aWMgY29uc3QgY2hhciAqcGFyc2VfcmVtb3RlX2JyYW5jaChjb25zdCBjaGFyICphcmcsCisJCQkJICAgICAgIHN0cnVjdCBvYmplY3RfaWQgKnJldiwKKwkJCQkgICAgICAgaW50IGNvdWxkX2JlX2NoZWNrb3V0X3BhdGhzKQoreworCWludCBudW1fbWF0Y2hlcyA9IDA7CisJY29uc3QgY2hhciAqcmVtb3RlID0gdW5pcXVlX3RyYWNraW5nX25hbWUoYXJnLCByZXYsICZudW1fbWF0Y2hlcyk7CisKKwlpZiAocmVtb3RlICYmIGNvdWxkX2JlX2NoZWNrb3V0X3BhdGhzKSB7CisJCWRpZShfKCInJXMnIGNvdWxkIGJlIGJvdGggYSBsb2NhbCBmaWxlIGFuZCBhIHRyYWNraW5nIGJyYW5jaC5cbiIKKwkJCSJQbGVhc2UgdXNlIC0tIChhbmQgb3B0aW9uYWxseSAtLW5vLWd1ZXNzKSB0byBkaXNhbWJpZ3VhdGUiKSwKKwkJICAgIGFyZyk7CisJfQorCisJaWYgKCFyZW1vdGUgJiYgbnVtX21hdGNoZXMgPiAxKSB7CisJICAgIGlmIChhZHZpY2VfY2hlY2tvdXRfYW1iaWd1b3VzX3JlbW90ZV9icmFuY2hfbmFtZSkgeworCQkgICAgYWR2aXNlKF8oIklmIHlvdSBtZWFudCB0byBjaGVjayBvdXQgYSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoIG9uLCBlLmcuICdvcmlnaW4nLFxuIgorCQkJICAgICAieW91IGNhbiBkbyBzbyBieSBmdWxseSBxdWFsaWZ5aW5nIHRoZSBuYW1lIHdpdGggdGhlIC0tdHJhY2sgb3B0aW9uOlxuIgorCQkJICAgICAiXG4iCisJCQkgICAgICIgICAgZ2l0IGNoZWNrb3V0IC0tdHJhY2sgb3JpZ2luLzxuYW1lPlxuIgorCQkJICAgICAiXG4iCisJCQkgICAgICJJZiB5b3UnZCBsaWtlIHRvIGFsd2F5cyBoYXZlIGNoZWNrb3V0cyBvZiBhbiBhbWJpZ3VvdXMgPG5hbWU+IHByZWZlclxuIgorCQkJICAgICAib25lIHJlbW90ZSwgZS5nLiB0aGUgJ29yaWdpbicgcmVtb3RlLCBjb25zaWRlciBzZXR0aW5nXG4iCisJCQkgICAgICJjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbiBpbiB5b3VyIGNvbmZpZy4iKSk7CisJICAgIH0KKworCSAgICBkaWUoXygiJyVzJyBtYXRjaGVkIG11bHRpcGxlICglZCkgcmVtb3RlIHRyYWNraW5nIGJyYW5jaGVzIiksCisJCWFyZywgbnVtX21hdGNoZXMpOworCX0KKworCXJldHVybiByZW1vdGU7Cit9CisKIHN0YXRpYyBpbnQgcGFyc2VfYnJhbmNobmFtZV9hcmcoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LAogCQkJCWludCBkd2ltX25ld19sb2NhbF9icmFuY2hfb2ssCiAJCQkJc3RydWN0IGJyYW5jaF9pbmZvICpuZXdfYnJhbmNoX2luZm8sCiAJCQkJc3RydWN0IGNoZWNrb3V0X29wdHMgKm9wdHMsCi0JCQkJc3RydWN0IG9iamVjdF9pZCAqcmV2LAotCQkJCWludCAqZHdpbV9yZW1vdGVzX21hdGNoZWQpCisJCQkJc3RydWN0IG9iamVjdF9pZCAqcmV2KQogewotCXN0cnVjdCB0cmVlICoqc291cmNlX3RyZWUgPSAmb3B0cy0+c291cmNlX3RyZWU7CiAJY29uc3QgY2hhciAqKm5ld19icmFuY2ggPSAmb3B0cy0+bmV3X2JyYW5jaDsKIAlpbnQgYXJnY291bnQgPSAwOwotCXN0cnVjdCBvYmplY3RfaWQgYnJhbmNoX3JldjsKIAljb25zdCBjaGFyICphcmc7CiAJaW50IGRhc2hfZGFzaF9wb3M7CiAJaW50IGhhc19kYXNoX2Rhc2ggPSAwOwpAQCAtMTA1MCwxMCArMTIwNiwxNiBAQAogCWlmICghYXJnYykKIAkJcmV0dXJuIDA7CiAKKwlpZiAoIW9wdHMtPmFjY2VwdF9wYXRoc3BlYykgeworCQlpZiAoYXJnYyA+IDEpCisJCQlkaWUoXygib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkIikpOworCQloYXNfZGFzaF9kYXNoID0gMTsgLyogaGVscHMgZGlzYW1iaWd1YXRlICovCisJfQorCiAJYXJnID0gYXJndlswXTsKIAlkYXNoX2Rhc2hfcG9zID0gLTE7CiAJZm9yIChpID0gMDsgaSA8IGFyZ2M7IGkrKykgewotCQlpZiAoIXN0cmNtcChhcmd2W2ldLCAiLS0iKSkgeworCQlpZiAob3B0cy0+YWNjZXB0X3BhdGhzcGVjICYmICFzdHJjbXAoYXJndltpXSwgIi0tIikpIHsKIAkJCWRhc2hfZGFzaF9wb3MgPSBpOwogCQkJYnJlYWs7CiAJCX0KQEAgLTEwNjQsNiArMTIyNiw3IEBACiAJCWhhc19kYXNoX2Rhc2ggPSAxOyAvKiBjYXNlICgzKSBvciAoMSkgKi8KIAllbHNlIGlmIChkYXNoX2Rhc2hfcG9zID49IDIpCiAJCWRpZShfKCJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQsICVkIGdpdmVuLiIpLCBkYXNoX2Rhc2hfcG9zKTsKKwlvcHRzLT5jb3VudF9jaGVja291dF9wYXRocyA9ICFvcHRzLT5xdWlldCAmJiAhaGFzX2Rhc2hfZGFzaDsKIAogCWlmICghc3RyY21wKGFyZywgIi0iKSkKIAkJYXJnID0gIkB7LTF9IjsKQEAgLTEwNzksMjAgKzEyNDIsMjQgQEAKIAkJICovCiAJCWludCByZWNvdmVyX3dpdGhfZHdpbSA9IGR3aW1fbmV3X2xvY2FsX2JyYW5jaF9vazsKIAotCQlpZiAoIWhhc19kYXNoX2Rhc2ggJiYKLQkJICAgIChjaGVja19maWxlbmFtZShvcHRzLT5wcmVmaXgsIGFyZykgfHwgIW5vX3dpbGRjYXJkKGFyZykpKQorCQlpbnQgY291bGRfYmVfY2hlY2tvdXRfcGF0aHMgPSAhaGFzX2Rhc2hfZGFzaCAmJgorCQkJY2hlY2tfZmlsZW5hbWUob3B0cy0+cHJlZml4LCBhcmcpOworCisJCWlmICghaGFzX2Rhc2hfZGFzaCAmJiAhbm9fd2lsZGNhcmQoYXJnKSkKIAkJCXJlY292ZXJfd2l0aF9kd2ltID0gMDsKKwogCQkvKgotCQkgKiBBY2NlcHQgImdpdCBjaGVja291dCBmb28iIGFuZCAiZ2l0IGNoZWNrb3V0IGZvbyAtLSIKLQkJICogYXMgY2FuZGlkYXRlcyBmb3IgZHdpbS4KKwkJICogQWNjZXB0ICJnaXQgY2hlY2tvdXQgZm9vIiwgImdpdCBjaGVja291dCBmb28gLS0iCisJCSAqIGFuZCAiZ2l0IHN3aXRjaCBmb28iIGFzIGNhbmRpZGF0ZXMgZm9yIGR3aW0uCiAJCSAqLwogCQlpZiAoIShhcmdjID09IDEgJiYgIWhhc19kYXNoX2Rhc2gpICYmCi0JCSAgICAhKGFyZ2MgPT0gMiAmJiBoYXNfZGFzaF9kYXNoKSkKKwkJICAgICEoYXJnYyA9PSAyICYmIGhhc19kYXNoX2Rhc2gpICYmCisJCSAgICBvcHRzLT5hY2NlcHRfcGF0aHNwZWMpCiAJCQlyZWNvdmVyX3dpdGhfZHdpbSA9IDA7CiAKIAkJaWYgKHJlY292ZXJfd2l0aF9kd2ltKSB7Ci0JCQljb25zdCBjaGFyICpyZW1vdGUgPSB1bmlxdWVfdHJhY2tpbmdfbmFtZShhcmcsIHJldiwKLQkJCQkJCQkJICBkd2ltX3JlbW90ZXNfbWF0Y2hlZCk7CisJCQljb25zdCBjaGFyICpyZW1vdGUgPSBwYXJzZV9yZW1vdGVfYnJhbmNoKGFyZywgcmV2LAorCQkJCQkJCQkgY291bGRfYmVfY2hlY2tvdXRfcGF0aHMpOwogCQkJaWYgKHJlbW90ZSkgewogCQkJCSpuZXdfYnJhbmNoID0gYXJnOwogCQkJCWFyZyA9IHJlbW90ZTsKQEAgLTExMTQsMjYgKzEyODEsMTEgQEAKIAlhcmd2Kys7CiAJYXJnYy0tOwogCi0JbmV3X2JyYW5jaF9pbmZvLT5uYW1lID0gYXJnOwotCXNldHVwX2JyYW5jaF9wYXRoKG5ld19icmFuY2hfaW5mbyk7CisJc2V0dXBfbmV3X2JyYW5jaF9pbmZvX2FuZF9zb3VyY2VfdHJlZShuZXdfYnJhbmNoX2luZm8sIG9wdHMsIHJldiwgYXJnKTsKIAotCWlmICghY2hlY2tfcmVmbmFtZV9mb3JtYXQobmV3X2JyYW5jaF9pbmZvLT5wYXRoLCAwKSAmJgotCSAgICAhcmVhZF9yZWYobmV3X2JyYW5jaF9pbmZvLT5wYXRoLCAmYnJhbmNoX3JldikpCi0JCW9pZGNweShyZXYsICZicmFuY2hfcmV2KTsKLQllbHNlCi0JCW5ld19icmFuY2hfaW5mby0+cGF0aCA9IE5VTEw7IC8qIG5vdCBhbiBleGlzdGluZyBicmFuY2ggKi8KLQotCW5ld19icmFuY2hfaW5mby0+Y29tbWl0ID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfZ2VudGx5KHRoZV9yZXBvc2l0b3J5LCByZXYsIDEpOwotCWlmICghbmV3X2JyYW5jaF9pbmZvLT5jb21taXQpIHsKLQkJLyogbm90IGEgY29tbWl0ICovCi0JCSpzb3VyY2VfdHJlZSA9IHBhcnNlX3RyZWVfaW5kaXJlY3QocmV2KTsKLQl9IGVsc2UgewotCQlwYXJzZV9jb21taXRfb3JfZGllKG5ld19icmFuY2hfaW5mby0+Y29tbWl0KTsKLQkJKnNvdXJjZV90cmVlID0gZ2V0X2NvbW1pdF90cmVlKG5ld19icmFuY2hfaW5mby0+Y29tbWl0KTsKLQl9Ci0KLQlpZiAoISpzb3VyY2VfdHJlZSkgICAgICAgICAgICAgICAgICAgLyogY2FzZSAoMSk6IHdhbnQgYSB0cmVlICovCisJaWYgKCFvcHRzLT5zb3VyY2VfdHJlZSkgICAgICAgICAgICAgICAgICAgLyogY2FzZSAoMSk6IHdhbnQgYSB0cmVlICovCiAJCWRpZShfKCJyZWZlcmVuY2UgaXMgbm90IGEgdHJlZTogJXMiKSwgYXJnKTsKKwogCWlmICghaGFzX2Rhc2hfZGFzaCkgewkvKiBjYXNlICgzKS4oZCkgLT4gKDEpICovCiAJCS8qCiAJCSAqIERvIG5vdCBjb21wbGFpbiB0aGUgbW9zdCBjb21tb24gY2FzZQpAQCAtMTE0Myw3ICsxMjk1LDcgQEAKIAkJICovCiAJCWlmIChhcmdjKQogCQkJdmVyaWZ5X25vbl9maWxlbmFtZShvcHRzLT5wcmVmaXgsIGFyZyk7Ci0JfSBlbHNlIHsKKwl9IGVsc2UgaWYgKG9wdHMtPmFjY2VwdF9wYXRoc3BlYykgewogCQlhcmdjb3VudCsrOwogCQlhcmd2Kys7CiAJCWFyZ2MtLTsKQEAgLTExNTcsNiArMTMwOSw4IEBACiAJaW50IHN0YXR1czsKIAlzdHJ1Y3Qgc3RyYnVmIGJyYW5jaF9yZWYgPSBTVFJCVUZfSU5JVDsKIAorCXRyYWNlMl9jbWRfbW9kZSgidW5ib3JuIik7CisKIAlpZiAoIW9wdHMtPm5ld19icmFuY2gpCiAJCWRpZShfKCJZb3UgYXJlIG9uIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIikpOwogCXN0cmJ1Zl9hZGRmKCZicmFuY2hfcmVmLCAicmVmcy9oZWFkcy8lcyIsIG9wdHMtPm5ld19icmFuY2gpOwpAQCAtMTE2OCw2ICsxMzIyLDYwIEBACiAJcmV0dXJuIHN0YXR1czsKIH0KIAorc3RhdGljIHZvaWQgZGllX2V4cGVjdGluZ19hX2JyYW5jaChjb25zdCBzdHJ1Y3QgYnJhbmNoX2luZm8gKmJyYW5jaF9pbmZvKQoreworCXN0cnVjdCBvYmplY3RfaWQgb2lkOworCWNoYXIgKnRvX2ZyZWU7CisKKwlpZiAoZHdpbV9yZWYoYnJhbmNoX2luZm8tPm5hbWUsIHN0cmxlbihicmFuY2hfaW5mby0+bmFtZSksICZvaWQsICZ0b19mcmVlKSA9PSAxKSB7CisJCWNvbnN0IGNoYXIgKnJlZiA9IHRvX2ZyZWU7CisKKwkJaWYgKHNraXBfcHJlZml4KHJlZiwgInJlZnMvdGFncy8iLCAmcmVmKSkKKwkJCWRpZShfKCJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290IHRhZyAnJXMnIiksIHJlZik7CisJCWlmIChza2lwX3ByZWZpeChyZWYsICJyZWZzL3JlbW90ZXMvIiwgJnJlZikpCisJCQlkaWUoXygiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCByZW1vdGUgYnJhbmNoICclcyciKSwgcmVmKTsKKwkJZGllKF8oImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgJyVzJyIpLCByZWYpOworCX0KKwlpZiAoYnJhbmNoX2luZm8tPmNvbW1pdCkKKwkJZGllKF8oImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgY29tbWl0ICclcyciKSwgYnJhbmNoX2luZm8tPm5hbWUpOworCS8qCisJICogVGhpcyBjYXNlIHNob3VsZCBuZXZlciBoYXBwZW4gYmVjYXVzZSB3ZSBhbHJlYWR5IGRpZSgpIG9uCisJICogbm9uLWNvbW1pdCwgYnV0IGp1c3QgaW4gY2FzZS4KKwkgKi8KKwlkaWUoXygiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCAnJXMnIiksIGJyYW5jaF9pbmZvLT5uYW1lKTsKK30KKworc3RhdGljIHZvaWQgZGllX2lmX3NvbWVfb3BlcmF0aW9uX2luX3Byb2dyZXNzKHZvaWQpCit7CisJc3RydWN0IHd0X3N0YXR1c19zdGF0ZSBzdGF0ZTsKKworCW1lbXNldCgmc3RhdGUsIDAsIHNpemVvZihzdGF0ZSkpOworCXd0X3N0YXR1c19nZXRfc3RhdGUodGhlX3JlcG9zaXRvcnksICZzdGF0ZSwgMCk7CisKKwlpZiAoc3RhdGUubWVyZ2VfaW5fcHJvZ3Jlc3MpCisJCWRpZShfKCJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSBtZXJnaW5nXG4iCisJCSAgICAgICJDb25zaWRlciBcImdpdCBtZXJnZSAtLXF1aXRcIiAiCisJCSAgICAgICJvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iKSk7CisJaWYgKHN0YXRlLmFtX2luX3Byb2dyZXNzKQorCQlkaWUoXygiY2Fubm90IHN3aXRjaCBicmFuY2ggaW4gdGhlIG1pZGRsZSBvZiBhbiBhbSBzZXNzaW9uXG4iCisJCSAgICAgICJDb25zaWRlciBcImdpdCBhbSAtLXF1aXRcIiAiCisJCSAgICAgICJvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iKSk7CisJaWYgKHN0YXRlLnJlYmFzZV9pbnRlcmFjdGl2ZV9pbl9wcm9ncmVzcyB8fCBzdGF0ZS5yZWJhc2VfaW5fcHJvZ3Jlc3MpCisJCWRpZShfKCJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSByZWJhc2luZ1xuIgorCQkgICAgICAiQ29uc2lkZXIgXCJnaXQgcmViYXNlIC0tcXVpdFwiICIKKwkJICAgICAgIm9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIpKTsKKwlpZiAoc3RhdGUuY2hlcnJ5X3BpY2tfaW5fcHJvZ3Jlc3MpCisJCWRpZShfKCJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSBjaGVycnktcGlja2luZ1xuIgorCQkgICAgICAiQ29uc2lkZXIgXCJnaXQgY2hlcnJ5LXBpY2sgLS1xdWl0XCIgIgorCQkgICAgICAib3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIikpOworCWlmIChzdGF0ZS5yZXZlcnRfaW5fcHJvZ3Jlc3MpCisJCWRpZShfKCJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSByZXZlcnRpbmdcbiIKKwkJICAgICAgIkNvbnNpZGVyIFwiZ2l0IHJldmVydCAtLXF1aXRcIiAiCisJCSAgICAgICJvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iKSk7CisJaWYgKHN0YXRlLmJpc2VjdF9pbl9wcm9ncmVzcykKKwkJd2FybmluZyhfKCJ5b3UgYXJlIHN3aXRjaGluZyBicmFuY2ggd2hpbGUgYmlzZWN0aW5nIikpOworfQorCiBzdGF0aWMgaW50IGNoZWNrb3V0X2JyYW5jaChzdHJ1Y3QgY2hlY2tvdXRfb3B0cyAqb3B0cywKIAkJCSAgIHN0cnVjdCBicmFuY2hfaW5mbyAqbmV3X2JyYW5jaF9pbmZvKQogewpAQCAtMTE3OCw2ICsxMzg2LDEwIEBACiAJCWRpZShfKCInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIiksCiAJCSAgICAiLS1wYXRjaCIpOwogCisJaWYgKG9wdHMtPm92ZXJsYXlfbW9kZSAhPSAtMSkKKwkJZGllKF8oIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMiKSwKKwkJICAgICItLVtub10tb3ZlcmxheSIpOworCiAJaWYgKG9wdHMtPndyaXRlb3V0X3N0YWdlKQogCQlkaWUoXygiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIpLAogCQkgICAgIi0tb3Vycy8tLXRoZWlycyIpOwpAQCAtMTE4NSw2ICsxMzk3LDkgQEAKIAlpZiAob3B0cy0+Zm9yY2UgJiYgb3B0cy0+bWVyZ2UpCiAJCWRpZShfKCInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJyVzJyIpLCAiLWYiLCAiLW0iKTsKIAorCWlmIChvcHRzLT5kaXNjYXJkX2NoYW5nZXMgJiYgb3B0cy0+bWVyZ2UpCisJCWRpZShfKCInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJyVzJyIpLCAiLS1kaXNjYXJkLWNoYW5nZXMiLCAiLS1tZXJnZSIpOworCiAJaWYgKG9wdHMtPmZvcmNlX2RldGFjaCAmJiBvcHRzLT5uZXdfYnJhbmNoKQogCQlkaWUoXygiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICclcyciKSwKIAkJICAgICItLWRldGFjaCIsICItYi8tQi8tLW9ycGhhbiIpOwpAQCAtMTE5Miw2ICsxNDA3LDggQEAKIAlpZiAob3B0cy0+bmV3X29ycGhhbl9icmFuY2gpIHsKIAkJaWYgKG9wdHMtPnRyYWNrICE9IEJSQU5DSF9UUkFDS19VTlNQRUNJRklFRCkKIAkJCWRpZShfKCInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJyVzJyIpLCAiLS1vcnBoYW4iLCAiLXQiKTsKKwkJaWYgKG9wdHMtPm9ycGhhbl9mcm9tX2VtcHR5X3RyZWUgJiYgbmV3X2JyYW5jaF9pbmZvLT5uYW1lKQorCQkJZGllKF8oIiclcycgY2Fubm90IHRha2UgPHN0YXJ0LXBvaW50PiIpLCAiLS1vcnBoYW4iKTsKIAl9IGVsc2UgaWYgKG9wdHMtPmZvcmNlX2RldGFjaCkgewogCQlpZiAob3B0cy0+dHJhY2sgIT0gQlJBTkNIX1RSQUNLX1VOU1BFQ0lGSUVEKQogCQkJZGllKF8oIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAnJXMnIiksICItLWRldGFjaCIsICItdCIpOwpAQCAtMTIwMiw2ICsxNDE5LDIzIEBACiAJCWRpZShfKCJDYW5ub3Qgc3dpdGNoIGJyYW5jaCB0byBhIG5vbi1jb21taXQgJyVzJyIpLAogCQkgICAgbmV3X2JyYW5jaF9pbmZvLT5uYW1lKTsKIAorCWlmICghb3B0cy0+c3dpdGNoX2JyYW5jaF9kb2luZ19ub3RoaW5nX2lzX29rICYmCisJICAgICFuZXdfYnJhbmNoX2luZm8tPm5hbWUgJiYKKwkgICAgIW9wdHMtPm5ld19icmFuY2ggJiYKKwkgICAgIW9wdHMtPmZvcmNlX2RldGFjaCkKKwkJZGllKF8oIm1pc3NpbmcgYnJhbmNoIG9yIGNvbW1pdCBhcmd1bWVudCIpKTsKKworCWlmICghb3B0cy0+aW1wbGljaXRfZGV0YWNoICYmCisJICAgICFvcHRzLT5mb3JjZV9kZXRhY2ggJiYKKwkgICAgIW9wdHMtPm5ld19icmFuY2ggJiYKKwkgICAgIW9wdHMtPm5ld19icmFuY2hfZm9yY2UgJiYKKwkgICAgbmV3X2JyYW5jaF9pbmZvLT5uYW1lICYmCisJICAgICFuZXdfYnJhbmNoX2luZm8tPnBhdGgpCisJCWRpZV9leHBlY3RpbmdfYV9icmFuY2gobmV3X2JyYW5jaF9pbmZvKTsKKworCWlmICghb3B0cy0+Y2FuX3N3aXRjaF93aGVuX2luX3Byb2dyZXNzKQorCQlkaWVfaWZfc29tZV9vcGVyYXRpb25faW5fcHJvZ3Jlc3MoKTsKKwogCWlmIChuZXdfYnJhbmNoX2luZm8tPnBhdGggJiYgIW9wdHMtPmZvcmNlX2RldGFjaCAmJiAhb3B0cy0+bmV3X2JyYW5jaCAmJgogCSAgICAhb3B0cy0+aWdub3JlX290aGVyX3dvcmt0cmVlcykgewogCQlpbnQgZmxhZzsKQEAgLTEyMjMsOTMgKzE0NTcsMTQ5IEBACiAJcmV0dXJuIHN3aXRjaF9icmFuY2hlcyhvcHRzLCBuZXdfYnJhbmNoX2luZm8pOwogfQogCi1pbnQgY21kX2NoZWNrb3V0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KQorc3RhdGljIHN0cnVjdCBvcHRpb24gKmFkZF9jb21tb25fb3B0aW9ucyhzdHJ1Y3QgY2hlY2tvdXRfb3B0cyAqb3B0cywKKwkJCQkJIHN0cnVjdCBvcHRpb24gKnByZXZvcHRzKQogewotCXN0cnVjdCBjaGVja291dF9vcHRzIG9wdHM7Ci0Jc3RydWN0IGJyYW5jaF9pbmZvIG5ld19icmFuY2hfaW5mbzsKLQljaGFyICpjb25mbGljdF9zdHlsZSA9IE5VTEw7Ci0JaW50IGR3aW1fbmV3X2xvY2FsX2JyYW5jaCA9IDE7Ci0JaW50IGR3aW1fcmVtb3Rlc19tYXRjaGVkID0gMDsKIAlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKLQkJT1BUX19RVUlFVCgmb3B0cy5xdWlldCwgTl8oInN1cHByZXNzIHByb2dyZXNzIHJlcG9ydGluZyIpKSwKLQkJT1BUX1NUUklORygnYicsIE5VTEwsICZvcHRzLm5ld19icmFuY2gsIE5fKCJicmFuY2giKSwKLQkJCSAgIE5fKCJjcmVhdGUgYW5kIGNoZWNrb3V0IGEgbmV3IGJyYW5jaCIpKSwKLQkJT1BUX1NUUklORygnQicsIE5VTEwsICZvcHRzLm5ld19icmFuY2hfZm9yY2UsIE5fKCJicmFuY2giKSwKLQkJCSAgIE5fKCJjcmVhdGUvcmVzZXQgYW5kIGNoZWNrb3V0IGEgYnJhbmNoIikpLAotCQlPUFRfQk9PTCgnbCcsIE5VTEwsICZvcHRzLm5ld19icmFuY2hfbG9nLCBOXygiY3JlYXRlIHJlZmxvZyBmb3IgbmV3IGJyYW5jaCIpKSwKLQkJT1BUX0JPT0woMCwgImRldGFjaCIsICZvcHRzLmZvcmNlX2RldGFjaCwgTl8oImRldGFjaCBIRUFEIGF0IG5hbWVkIGNvbW1pdCIpKSwKLQkJT1BUX1NFVF9JTlQoJ3QnLCAidHJhY2siLCAgJm9wdHMudHJhY2ssIE5fKCJzZXQgdXBzdHJlYW0gaW5mbyBmb3IgbmV3IGJyYW5jaCIpLAotCQkJQlJBTkNIX1RSQUNLX0VYUExJQ0lUKSwKLQkJT1BUX1NUUklORygwLCAib3JwaGFuIiwgJm9wdHMubmV3X29ycGhhbl9icmFuY2gsIE5fKCJuZXctYnJhbmNoIiksIE5fKCJuZXcgdW5wYXJlbnRlZCBicmFuY2giKSksCi0JCU9QVF9TRVRfSU5UX0YoJzInLCAib3VycyIsICZvcHRzLndyaXRlb3V0X3N0YWdlLAotCQkJICAgICAgTl8oImNoZWNrb3V0IG91ciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIpLAotCQkJICAgICAgMiwgUEFSU0VfT1BUX05PTkVHKSwKLQkJT1BUX1NFVF9JTlRfRignMycsICJ0aGVpcnMiLCAmb3B0cy53cml0ZW91dF9zdGFnZSwKLQkJCSAgICAgIE5fKCJjaGVja291dCB0aGVpciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIpLAotCQkJICAgICAgMywgUEFSU0VfT1BUX05PTkVHKSwKLQkJT1BUX19GT1JDRSgmb3B0cy5mb3JjZSwgTl8oImZvcmNlIGNoZWNrb3V0ICh0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMpIiksCi0JCQkgICBQQVJTRV9PUFRfTk9DT01QTEVURSksCi0JCU9QVF9CT09MKCdtJywgIm1lcmdlIiwgJm9wdHMubWVyZ2UsIE5fKCJwZXJmb3JtIGEgMy13YXkgbWVyZ2Ugd2l0aCB0aGUgbmV3IGJyYW5jaCIpKSwKLQkJT1BUX0JPT0xfRigwLCAib3ZlcndyaXRlLWlnbm9yZSIsICZvcHRzLm92ZXJ3cml0ZV9pZ25vcmUsCi0JCQkgICBOXygidXBkYXRlIGlnbm9yZWQgZmlsZXMgKGRlZmF1bHQpIiksCi0JCQkgICBQQVJTRV9PUFRfTk9DT01QTEVURSksCi0JCU9QVF9TVFJJTkcoMCwgImNvbmZsaWN0IiwgJmNvbmZsaWN0X3N0eWxlLCBOXygic3R5bGUiKSwKLQkJCSAgIE5fKCJjb25mbGljdCBzdHlsZSAobWVyZ2Ugb3IgZGlmZjMpIikpLAotCQlPUFRfQk9PTCgncCcsICJwYXRjaCIsICZvcHRzLnBhdGNoX21vZGUsIE5fKCJzZWxlY3QgaHVua3MgaW50ZXJhY3RpdmVseSIpKSwKLQkJT1BUX0JPT0woMCwgImlnbm9yZS1za2lwLXdvcmt0cmVlLWJpdHMiLCAmb3B0cy5pZ25vcmVfc2tpcHdvcmt0cmVlLAotCQkJIE5fKCJkbyBub3QgbGltaXQgcGF0aHNwZWNzIHRvIHNwYXJzZSBlbnRyaWVzIG9ubHkiKSksCi0JCU9QVF9ISURERU5fQk9PTCgwLCAiZ3Vlc3MiLCAmZHdpbV9uZXdfbG9jYWxfYnJhbmNoLAotCQkJCU5fKCJzZWNvbmQgZ3Vlc3MgJ2dpdCBjaGVja291dCA8bm8tc3VjaC1icmFuY2g+JyIpKSwKLQkJT1BUX0JPT0woMCwgImlnbm9yZS1vdGhlci13b3JrdHJlZXMiLCAmb3B0cy5pZ25vcmVfb3RoZXJfd29ya3RyZWVzLAotCQkJIE5fKCJkbyBub3QgY2hlY2sgaWYgYW5vdGhlciB3b3JrdHJlZSBpcyBob2xkaW5nIHRoZSBnaXZlbiByZWYiKSksCisJCU9QVF9fUVVJRVQoJm9wdHMtPnF1aWV0LCBOXygic3VwcHJlc3MgcHJvZ3Jlc3MgcmVwb3J0aW5nIikpLAogCQl7IE9QVElPTl9DQUxMQkFDSywgMCwgInJlY3Vyc2Utc3VibW9kdWxlcyIsIE5VTEwsCiAJCQkgICAgImNoZWNrb3V0IiwgImNvbnRyb2wgcmVjdXJzaXZlIHVwZGF0aW5nIG9mIHN1Ym1vZHVsZXMiLAogCQkJICAgIFBBUlNFX09QVF9PUFRBUkcsIG9wdGlvbl9wYXJzZV9yZWN1cnNlX3N1Ym1vZHVsZXNfd29ya3RyZWVfdXBkYXRlciB9LAotCQlPUFRfQk9PTCgwLCAicHJvZ3Jlc3MiLCAmb3B0cy5zaG93X3Byb2dyZXNzLCBOXygiZm9yY2UgcHJvZ3Jlc3MgcmVwb3J0aW5nIikpLAotCQlPUFRfRU5EKCksCisJCU9QVF9CT09MKDAsICJwcm9ncmVzcyIsICZvcHRzLT5zaG93X3Byb2dyZXNzLCBOXygiZm9yY2UgcHJvZ3Jlc3MgcmVwb3J0aW5nIikpLAorCQlPUFRfQk9PTCgnbScsICJtZXJnZSIsICZvcHRzLT5tZXJnZSwgTl8oInBlcmZvcm0gYSAzLXdheSBtZXJnZSB3aXRoIHRoZSBuZXcgYnJhbmNoIikpLAorCQlPUFRfU1RSSU5HKDAsICJjb25mbGljdCIsICZvcHRzLT5jb25mbGljdF9zdHlsZSwgTl8oInN0eWxlIiksCisJCQkgICBOXygiY29uZmxpY3Qgc3R5bGUgKG1lcmdlIG9yIGRpZmYzKSIpKSwKKwkJT1BUX0VORCgpCiAJfTsKKwlzdHJ1Y3Qgb3B0aW9uICpuZXdvcHRzID0gcGFyc2Vfb3B0aW9uc19jb25jYXQocHJldm9wdHMsIG9wdGlvbnMpOworCWZyZWUocHJldm9wdHMpOworCXJldHVybiBuZXdvcHRzOworfQogCi0JbWVtc2V0KCZvcHRzLCAwLCBzaXplb2Yob3B0cykpOworc3RhdGljIHN0cnVjdCBvcHRpb24gKmFkZF9jb21tb25fc3dpdGNoX2JyYW5jaF9vcHRpb25zKAorCXN0cnVjdCBjaGVja291dF9vcHRzICpvcHRzLCBzdHJ1Y3Qgb3B0aW9uICpwcmV2b3B0cykKK3sKKwlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwkJT1BUX0JPT0woJ2QnLCAiZGV0YWNoIiwgJm9wdHMtPmZvcmNlX2RldGFjaCwgTl8oImRldGFjaCBIRUFEIGF0IG5hbWVkIGNvbW1pdCIpKSwKKwkJT1BUX1NFVF9JTlQoJ3QnLCAidHJhY2siLCAgJm9wdHMtPnRyYWNrLCBOXygic2V0IHVwc3RyZWFtIGluZm8gZm9yIG5ldyBicmFuY2giKSwKKwkJCUJSQU5DSF9UUkFDS19FWFBMSUNJVCksCisJCU9QVF9fRk9SQ0UoJm9wdHMtPmZvcmNlLCBOXygiZm9yY2UgY2hlY2tvdXQgKHRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucykiKSwKKwkJCSAgIFBBUlNFX09QVF9OT0NPTVBMRVRFKSwKKwkJT1BUX1NUUklORygwLCAib3JwaGFuIiwgJm9wdHMtPm5ld19vcnBoYW5fYnJhbmNoLCBOXygibmV3LWJyYW5jaCIpLCBOXygibmV3IHVucGFyZW50ZWQgYnJhbmNoIikpLAorCQlPUFRfQk9PTF9GKDAsICJvdmVyd3JpdGUtaWdub3JlIiwgJm9wdHMtPm92ZXJ3cml0ZV9pZ25vcmUsCisJCQkgICBOXygidXBkYXRlIGlnbm9yZWQgZmlsZXMgKGRlZmF1bHQpIiksCisJCQkgICBQQVJTRV9PUFRfTk9DT01QTEVURSksCisJCU9QVF9CT09MKDAsICJpZ25vcmUtb3RoZXItd29ya3RyZWVzIiwgJm9wdHMtPmlnbm9yZV9vdGhlcl93b3JrdHJlZXMsCisJCQkgTl8oImRvIG5vdCBjaGVjayBpZiBhbm90aGVyIHdvcmt0cmVlIGlzIGhvbGRpbmcgdGhlIGdpdmVuIHJlZiIpKSwKKwkJT1BUX0VORCgpCisJfTsKKwlzdHJ1Y3Qgb3B0aW9uICpuZXdvcHRzID0gcGFyc2Vfb3B0aW9uc19jb25jYXQocHJldm9wdHMsIG9wdGlvbnMpOworCWZyZWUocHJldm9wdHMpOworCXJldHVybiBuZXdvcHRzOworfQorCitzdGF0aWMgc3RydWN0IG9wdGlvbiAqYWRkX2NoZWNrb3V0X3BhdGhfb3B0aW9ucyhzdHJ1Y3QgY2hlY2tvdXRfb3B0cyAqb3B0cywKKwkJCQkJCXN0cnVjdCBvcHRpb24gKnByZXZvcHRzKQoreworCXN0cnVjdCBvcHRpb24gb3B0aW9uc1tdID0geworCQlPUFRfU0VUX0lOVF9GKCcyJywgIm91cnMiLCAmb3B0cy0+d3JpdGVvdXRfc3RhZ2UsCisJCQkgICAgICBOXygiY2hlY2tvdXQgb3VyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIiksCisJCQkgICAgICAyLCBQQVJTRV9PUFRfTk9ORUcpLAorCQlPUFRfU0VUX0lOVF9GKCczJywgInRoZWlycyIsICZvcHRzLT53cml0ZW91dF9zdGFnZSwKKwkJCSAgICAgIE5fKCJjaGVja291dCB0aGVpciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIpLAorCQkJICAgICAgMywgUEFSU0VfT1BUX05PTkVHKSwKKwkJT1BUX0JPT0woJ3AnLCAicGF0Y2giLCAmb3B0cy0+cGF0Y2hfbW9kZSwgTl8oInNlbGVjdCBodW5rcyBpbnRlcmFjdGl2ZWx5IikpLAorCQlPUFRfQk9PTCgwLCAiaWdub3JlLXNraXAtd29ya3RyZWUtYml0cyIsICZvcHRzLT5pZ25vcmVfc2tpcHdvcmt0cmVlLAorCQkJIE5fKCJkbyBub3QgbGltaXQgcGF0aHNwZWNzIHRvIHNwYXJzZSBlbnRyaWVzIG9ubHkiKSksCisJCU9QVF9QQVRIU1BFQ19GUk9NX0ZJTEUoJm9wdHMtPnBhdGhzcGVjX2Zyb21fZmlsZSksCisJCU9QVF9QQVRIU1BFQ19GSUxFX05VTCgmb3B0cy0+cGF0aHNwZWNfZmlsZV9udWwpLAorCQlPUFRfRU5EKCkKKwl9OworCXN0cnVjdCBvcHRpb24gKm5ld29wdHMgPSBwYXJzZV9vcHRpb25zX2NvbmNhdChwcmV2b3B0cywgb3B0aW9ucyk7CisJZnJlZShwcmV2b3B0cyk7CisJcmV0dXJuIG5ld29wdHM7Cit9CisKK3N0YXRpYyBpbnQgY2hlY2tvdXRfbWFpbihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCwKKwkJCSBzdHJ1Y3QgY2hlY2tvdXRfb3B0cyAqb3B0cywgc3RydWN0IG9wdGlvbiAqb3B0aW9ucywKKwkJCSBjb25zdCBjaGFyICogY29uc3QgdXNhZ2VzdHJbXSkKK3sKKwlzdHJ1Y3QgYnJhbmNoX2luZm8gbmV3X2JyYW5jaF9pbmZvOworCWludCBwYXJzZW9wdF9mbGFncyA9IDA7CisKIAltZW1zZXQoJm5ld19icmFuY2hfaW5mbywgMCwgc2l6ZW9mKG5ld19icmFuY2hfaW5mbykpOwotCW9wdHMub3ZlcndyaXRlX2lnbm9yZSA9IDE7Ci0Jb3B0cy5wcmVmaXggPSBwcmVmaXg7Ci0Jb3B0cy5zaG93X3Byb2dyZXNzID0gLTE7CisJb3B0cy0+b3ZlcndyaXRlX2lnbm9yZSA9IDE7CisJb3B0cy0+cHJlZml4ID0gcHJlZml4OworCW9wdHMtPnNob3dfcHJvZ3Jlc3MgPSAtMTsKIAotCWdpdF9jb25maWcoZ2l0X2NoZWNrb3V0X2NvbmZpZywgJm9wdHMpOworCWdpdF9jb25maWcoZ2l0X2NoZWNrb3V0X2NvbmZpZywgb3B0cyk7CiAKLQlvcHRzLnRyYWNrID0gQlJBTkNIX1RSQUNLX1VOU1BFQ0lGSUVEOworCW9wdHMtPnRyYWNrID0gQlJBTkNIX1RSQUNLX1VOU1BFQ0lGSUVEOwogCi0JYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LCBvcHRpb25zLCBjaGVja291dF91c2FnZSwKLQkJCSAgICAgUEFSU0VfT1BUX0tFRVBfREFTSERBU0gpOworCWlmICghb3B0cy0+YWNjZXB0X3BhdGhzcGVjICYmICFvcHRzLT5hY2NlcHRfcmVmKQorCQlCVUcoIm1ha2UgdXAgeW91ciBtaW5kLCB5b3UgbmVlZCB0byB0YWtlIF9zb21ldGhpbmdfIik7CisJaWYgKG9wdHMtPmFjY2VwdF9wYXRoc3BlYyAmJiBvcHRzLT5hY2NlcHRfcmVmKQorCQlwYXJzZW9wdF9mbGFncyA9IFBBUlNFX09QVF9LRUVQX0RBU0hEQVNIOwogCi0JaWYgKG9wdHMuc2hvd19wcm9ncmVzcyA8IDApIHsKLQkJaWYgKG9wdHMucXVpZXQpCi0JCQlvcHRzLnNob3dfcHJvZ3Jlc3MgPSAwOworCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywKKwkJCSAgICAgdXNhZ2VzdHIsIHBhcnNlb3B0X2ZsYWdzKTsKKworCWlmIChvcHRzLT5zaG93X3Byb2dyZXNzIDwgMCkgeworCQlpZiAob3B0cy0+cXVpZXQpCisJCQlvcHRzLT5zaG93X3Byb2dyZXNzID0gMDsKIAkJZWxzZQotCQkJb3B0cy5zaG93X3Byb2dyZXNzID0gaXNhdHR5KDIpOworCQkJb3B0cy0+c2hvd19wcm9ncmVzcyA9IGlzYXR0eSgyKTsKIAl9CiAKLQlpZiAoY29uZmxpY3Rfc3R5bGUpIHsKLQkJb3B0cy5tZXJnZSA9IDE7IC8qIGltcGxpZWQgKi8KLQkJZ2l0X3htZXJnZV9jb25maWcoIm1lcmdlLmNvbmZsaWN0c3R5bGUiLCBjb25mbGljdF9zdHlsZSwgTlVMTCk7CisJaWYgKG9wdHMtPmNvbmZsaWN0X3N0eWxlKSB7CisJCW9wdHMtPm1lcmdlID0gMTsgLyogaW1wbGllZCAqLworCQlnaXRfeG1lcmdlX2NvbmZpZygibWVyZ2UuY29uZmxpY3RzdHlsZSIsIG9wdHMtPmNvbmZsaWN0X3N0eWxlLCBOVUxMKTsKKwl9CisJaWYgKG9wdHMtPmZvcmNlKSB7CisJCW9wdHMtPmRpc2NhcmRfY2hhbmdlcyA9IDE7CisJCW9wdHMtPmlnbm9yZV91bm1lcmdlZF9vcHQgPSAiLS1mb3JjZSI7CisJCW9wdHMtPmlnbm9yZV91bm1lcmdlZCA9IDE7CiAJfQogCi0JaWYgKCghIW9wdHMubmV3X2JyYW5jaCArICEhb3B0cy5uZXdfYnJhbmNoX2ZvcmNlICsgISFvcHRzLm5ld19vcnBoYW5fYnJhbmNoKSA+IDEpCisJaWYgKCghIW9wdHMtPm5ld19icmFuY2ggKyAhIW9wdHMtPm5ld19icmFuY2hfZm9yY2UgKyAhIW9wdHMtPm5ld19vcnBoYW5fYnJhbmNoKSA+IDEpCiAJCWRpZShfKCItYiwgLUIgYW5kIC0tb3JwaGFuIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiKSk7CiAKKwlpZiAob3B0cy0+b3ZlcmxheV9tb2RlID09IDEgJiYgb3B0cy0+cGF0Y2hfbW9kZSkKKwkJZGllKF8oIi1wIGFuZCAtLW92ZXJsYXkgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIpKTsKKworCWlmIChvcHRzLT5jaGVja291dF9pbmRleCA+PSAwIHx8IG9wdHMtPmNoZWNrb3V0X3dvcmt0cmVlID49IDApIHsKKwkJaWYgKG9wdHMtPmNoZWNrb3V0X2luZGV4IDwgMCkKKwkJCW9wdHMtPmNoZWNrb3V0X2luZGV4ID0gMDsKKwkJaWYgKG9wdHMtPmNoZWNrb3V0X3dvcmt0cmVlIDwgMCkKKwkJCW9wdHMtPmNoZWNrb3V0X3dvcmt0cmVlID0gMDsKKwl9IGVsc2UgeworCQlpZiAob3B0cy0+Y2hlY2tvdXRfaW5kZXggPCAwKQorCQkJb3B0cy0+Y2hlY2tvdXRfaW5kZXggPSAtb3B0cy0+Y2hlY2tvdXRfaW5kZXggLSAxOworCQlpZiAob3B0cy0+Y2hlY2tvdXRfd29ya3RyZWUgPCAwKQorCQkJb3B0cy0+Y2hlY2tvdXRfd29ya3RyZWUgPSAtb3B0cy0+Y2hlY2tvdXRfd29ya3RyZWUgLSAxOworCX0KKwlpZiAob3B0cy0+Y2hlY2tvdXRfaW5kZXggPCAwIHx8IG9wdHMtPmNoZWNrb3V0X3dvcmt0cmVlIDwgMCkKKwkJQlVHKCJ0aGVzZSBmbGFncyBzaG91bGQgYmUgbm9uLW5lZ2F0aXZlIGJ5IG5vdyIpOworCS8qCisJICogY29udmVuaWVudCBzaG9ydGN1dDogImdpdCByZXN0b3JlIC0tc3RhZ2VkIiBlcXVhbHMKKwkgKiAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgLS1zb3VyY2UgSEVBRCIKKwkgKi8KKwlpZiAoIW9wdHMtPmZyb21fdHJlZWlzaCAmJiBvcHRzLT5jaGVja291dF9pbmRleCAmJiAhb3B0cy0+Y2hlY2tvdXRfd29ya3RyZWUpCisJCW9wdHMtPmZyb21fdHJlZWlzaCA9ICJIRUFEIjsKKwogCS8qCiAJICogRnJvbSBoZXJlIG9uLCBuZXdfYnJhbmNoIHdpbGwgY29udGFpbiB0aGUgYnJhbmNoIHRvIGJlIGNoZWNrZWQgb3V0LAogCSAqIGFuZCBuZXdfYnJhbmNoX2ZvcmNlIGFuZCBuZXdfb3JwaGFuX2JyYW5jaCB3aWxsIHRlbGwgdXMgd2hpY2ggb25lIG9mCiAJICogLWIvLUIvLS1vcnBoYW4gaXMgYmVpbmcgdXNlZC4KIAkgKi8KLQlpZiAob3B0cy5uZXdfYnJhbmNoX2ZvcmNlKQotCQlvcHRzLm5ld19icmFuY2ggPSBvcHRzLm5ld19icmFuY2hfZm9yY2U7CisJaWYgKG9wdHMtPm5ld19icmFuY2hfZm9yY2UpCisJCW9wdHMtPm5ld19icmFuY2ggPSBvcHRzLT5uZXdfYnJhbmNoX2ZvcmNlOwogCi0JaWYgKG9wdHMubmV3X29ycGhhbl9icmFuY2gpCi0JCW9wdHMubmV3X2JyYW5jaCA9IG9wdHMubmV3X29ycGhhbl9icmFuY2g7CisJaWYgKG9wdHMtPm5ld19vcnBoYW5fYnJhbmNoKQorCQlvcHRzLT5uZXdfYnJhbmNoID0gb3B0cy0+bmV3X29ycGhhbl9icmFuY2g7CiAKIAkvKiAtLXRyYWNrIHdpdGhvdXQgLWIvLUIvLS1vcnBoYW4gc2hvdWxkIERXSU0gKi8KLQlpZiAob3B0cy50cmFjayAhPSBCUkFOQ0hfVFJBQ0tfVU5TUEVDSUZJRUQgJiYgIW9wdHMubmV3X2JyYW5jaCkgeworCWlmIChvcHRzLT50cmFjayAhPSBCUkFOQ0hfVFJBQ0tfVU5TUEVDSUZJRUQgJiYgIW9wdHMtPm5ld19icmFuY2gpIHsKIAkJY29uc3QgY2hhciAqYXJndjAgPSBhcmd2WzBdOwogCQlpZiAoIWFyZ2MgfHwgIXN0cmNtcChhcmd2MCwgIi0tIikpCiAJCQlkaWUoXygiLS10cmFjayBuZWVkcyBhIGJyYW5jaCBuYW1lIikpOwpAQCAtMTMxOCw3ICsxNjA4LDcgQEAKIAkJYXJndjAgPSBzdHJjaHIoYXJndjAsICcvJyk7CiAJCWlmICghYXJndjAgfHwgIWFyZ3YwWzFdKQogCQkJZGllKF8oIm1pc3NpbmcgYnJhbmNoIG5hbWU7IHRyeSAtYiIpKTsKLQkJb3B0cy5uZXdfYnJhbmNoID0gYXJndjAgKyAxOworCQlvcHRzLT5uZXdfYnJhbmNoID0gYXJndjAgKyAxOwogCX0KIAogCS8qCkBAIC0xMzM0LDc3ICsxNjI0LDIxOSBAQAogCSAqIGluY2x1ZGluZyAibGFzdCBicmFuY2giIHN5bnRheCBhbmQgRFdJTS1lcnkgZm9yIG5hbWVzIG9mCiAJICogcmVtb3RlIGJyYW5jaGVzLCBlcnJvcmluZyBvdXQgZm9yIGludmFsaWQgb3IgYW1iaWd1b3VzIGNhc2VzLgogCSAqLwotCWlmIChhcmdjKSB7CisJaWYgKGFyZ2MgJiYgb3B0cy0+YWNjZXB0X3JlZikgewogCQlzdHJ1Y3Qgb2JqZWN0X2lkIHJldjsKIAkJaW50IGR3aW1fb2sgPQotCQkJIW9wdHMucGF0Y2hfbW9kZSAmJgotCQkJZHdpbV9uZXdfbG9jYWxfYnJhbmNoICYmCi0JCQlvcHRzLnRyYWNrID09IEJSQU5DSF9UUkFDS19VTlNQRUNJRklFRCAmJgotCQkJIW9wdHMubmV3X2JyYW5jaDsKKwkJCSFvcHRzLT5wYXRjaF9tb2RlICYmCisJCQlvcHRzLT5kd2ltX25ld19sb2NhbF9icmFuY2ggJiYKKwkJCW9wdHMtPnRyYWNrID09IEJSQU5DSF9UUkFDS19VTlNQRUNJRklFRCAmJgorCQkJIW9wdHMtPm5ld19icmFuY2g7CiAJCWludCBuID0gcGFyc2VfYnJhbmNobmFtZV9hcmcoYXJnYywgYXJndiwgZHdpbV9vaywKLQkJCQkJICAgICAmbmV3X2JyYW5jaF9pbmZvLCAmb3B0cywgJnJldiwKLQkJCQkJICAgICAmZHdpbV9yZW1vdGVzX21hdGNoZWQpOworCQkJCQkgICAgICZuZXdfYnJhbmNoX2luZm8sIG9wdHMsICZyZXYpOwogCQlhcmd2ICs9IG47CiAJCWFyZ2MgLT0gbjsKKwl9IGVsc2UgaWYgKCFvcHRzLT5hY2NlcHRfcmVmICYmIG9wdHMtPmZyb21fdHJlZWlzaCkgeworCQlzdHJ1Y3Qgb2JqZWN0X2lkIHJldjsKKworCQlpZiAoZ2V0X29pZF9tYihvcHRzLT5mcm9tX3RyZWVpc2gsICZyZXYpKQorCQkJZGllKF8oImNvdWxkIG5vdCByZXNvbHZlICVzIiksIG9wdHMtPmZyb21fdHJlZWlzaCk7CisKKwkJc2V0dXBfbmV3X2JyYW5jaF9pbmZvX2FuZF9zb3VyY2VfdHJlZSgmbmV3X2JyYW5jaF9pbmZvLAorCQkJCQkJICAgICAgb3B0cywgJnJldiwKKwkJCQkJCSAgICAgIG9wdHMtPmZyb21fdHJlZWlzaCk7CisKKwkJaWYgKCFvcHRzLT5zb3VyY2VfdHJlZSkKKwkJCWRpZShfKCJyZWZlcmVuY2UgaXMgbm90IGEgdHJlZTogJXMiKSwgb3B0cy0+ZnJvbV90cmVlaXNoKTsKIAl9CiAKIAlpZiAoYXJnYykgewotCQlwYXJzZV9wYXRoc3BlYygmb3B0cy5wYXRoc3BlYywgMCwKLQkJCSAgICAgICBvcHRzLnBhdGNoX21vZGUgPyBQQVRIU1BFQ19QUkVGSVhfT1JJR0lOIDogMCwKKwkJcGFyc2VfcGF0aHNwZWMoJm9wdHMtPnBhdGhzcGVjLCAwLAorCQkJICAgICAgIG9wdHMtPnBhdGNoX21vZGUgPyBQQVRIU1BFQ19QUkVGSVhfT1JJR0lOIDogMCwKIAkJCSAgICAgICBwcmVmaXgsIGFyZ3YpOwogCi0JCWlmICghb3B0cy5wYXRoc3BlYy5ucikKKwkJaWYgKCFvcHRzLT5wYXRoc3BlYy5ucikKIAkJCWRpZShfKCJpbnZhbGlkIHBhdGggc3BlY2lmaWNhdGlvbiIpKTsKIAogCQkvKgogCQkgKiBUcnkgdG8gZ2l2ZSBtb3JlIGhlbHBmdWwgc3VnZ2VzdGlvbi4KIAkJICogbmV3X2JyYW5jaCAmJiBhcmdjID4gMSB3aWxsIGJlIGNhdWdodCBsYXRlci4KIAkJICovCi0JCWlmIChvcHRzLm5ld19icmFuY2ggJiYgYXJnYyA9PSAxKQorCQlpZiAob3B0cy0+bmV3X2JyYW5jaCAmJiBhcmdjID09IDEpCiAJCQlkaWUoXygiJyVzJyBpcyBub3QgYSBjb21taXQgYW5kIGEgYnJhbmNoICclcycgY2Fubm90IGJlIGNyZWF0ZWQgZnJvbSBpdCIpLAotCQkJCWFyZ3ZbMF0sIG9wdHMubmV3X2JyYW5jaCk7CisJCQkJYXJndlswXSwgb3B0cy0+bmV3X2JyYW5jaCk7CiAKLQkJaWYgKG9wdHMuZm9yY2VfZGV0YWNoKQorCQlpZiAob3B0cy0+Zm9yY2VfZGV0YWNoKQogCQkJZGllKF8oImdpdCBjaGVja291dDogLS1kZXRhY2ggZG9lcyBub3QgdGFrZSBhIHBhdGggYXJndW1lbnQgJyVzJyIpLAogCQkJICAgIGFyZ3ZbMF0pOwotCi0JCWlmICgxIDwgISFvcHRzLndyaXRlb3V0X3N0YWdlICsgISFvcHRzLmZvcmNlICsgISFvcHRzLm1lcmdlKQotCQkJZGllKF8oImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIGFuZCAtLW1lcmdlIGFyZSBpbmNvbXBhdGlibGUgd2hlblxuIgotCQkJICAgICAgImNoZWNraW5nIG91dCBvZiB0aGUgaW5kZXguIikpOwogCX0KIAotCWlmIChvcHRzLm5ld19icmFuY2gpIHsKKwlpZiAob3B0cy0+cGF0aHNwZWNfZnJvbV9maWxlKSB7CisJCWlmIChvcHRzLT5wYXRoc3BlYy5ucikKKwkJCWRpZShfKCItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCBwYXRoc3BlYyBhcmd1bWVudHMiKSk7CisKKwkJaWYgKG9wdHMtPmZvcmNlX2RldGFjaCkKKwkJCWRpZShfKCItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWRldGFjaCIpKTsKKworCQlpZiAob3B0cy0+cGF0Y2hfbW9kZSkKKwkJCWRpZShfKCItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLXBhdGNoIikpOworCisJCXBhcnNlX3BhdGhzcGVjX2ZpbGUoJm9wdHMtPnBhdGhzcGVjLCAwLAorCQkJCSAgICAwLAorCQkJCSAgICBwcmVmaXgsIG9wdHMtPnBhdGhzcGVjX2Zyb21fZmlsZSwgb3B0cy0+cGF0aHNwZWNfZmlsZV9udWwpOworCX0gZWxzZSBpZiAob3B0cy0+cGF0aHNwZWNfZmlsZV9udWwpIHsKKwkJZGllKF8oIi0tcGF0aHNwZWMtZmlsZS1udWwgcmVxdWlyZXMgLS1wYXRoc3BlYy1mcm9tLWZpbGUiKSk7CisJfQorCisJaWYgKG9wdHMtPnBhdGhzcGVjLm5yKSB7CisJCWlmICgxIDwgISFvcHRzLT53cml0ZW91dF9zdGFnZSArICEhb3B0cy0+Zm9yY2UgKyAhIW9wdHMtPm1lcmdlKQorCQkJZGllKF8oImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIGFuZCAtLW1lcmdlIGFyZSBpbmNvbXBhdGlibGUgd2hlblxuIgorCQkJICAgICAgImNoZWNraW5nIG91dCBvZiB0aGUgaW5kZXguIikpOworCX0gZWxzZSB7CisJCWlmIChvcHRzLT5hY2NlcHRfcGF0aHNwZWMgJiYgIW9wdHMtPmVtcHR5X3BhdGhzcGVjX29rICYmCisJCSAgICAhb3B0cy0+cGF0Y2hfbW9kZSkJLyogcGF0Y2ggbW9kZSBpcyBzcGVjaWFsICovCisJCQlkaWUoXygieW91IG11c3Qgc3BlY2lmeSBwYXRoKHMpIHRvIHJlc3RvcmUiKSk7CisJfQorCisJaWYgKG9wdHMtPm5ld19icmFuY2gpIHsKIAkJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKIAotCQlpZiAob3B0cy5uZXdfYnJhbmNoX2ZvcmNlKQotCQkJb3B0cy5icmFuY2hfZXhpc3RzID0gdmFsaWRhdGVfYnJhbmNobmFtZShvcHRzLm5ld19icmFuY2gsICZidWYpOworCQlpZiAob3B0cy0+bmV3X2JyYW5jaF9mb3JjZSkKKwkJCW9wdHMtPmJyYW5jaF9leGlzdHMgPSB2YWxpZGF0ZV9icmFuY2huYW1lKG9wdHMtPm5ld19icmFuY2gsICZidWYpOwogCQllbHNlCi0JCQlvcHRzLmJyYW5jaF9leGlzdHMgPQotCQkJCXZhbGlkYXRlX25ld19icmFuY2huYW1lKG9wdHMubmV3X2JyYW5jaCwgJmJ1ZiwgMCk7CisJCQlvcHRzLT5icmFuY2hfZXhpc3RzID0KKwkJCQl2YWxpZGF0ZV9uZXdfYnJhbmNobmFtZShvcHRzLT5uZXdfYnJhbmNoLCAmYnVmLCAwKTsKIAkJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CiAJfQogCiAJVU5MRUFLKG9wdHMpOwotCWlmIChvcHRzLnBhdGNoX21vZGUgfHwgb3B0cy5wYXRoc3BlYy5ucikgewotCQlpbnQgcmV0ID0gY2hlY2tvdXRfcGF0aHMoJm9wdHMsIG5ld19icmFuY2hfaW5mby5uYW1lKTsKLQkJaWYgKHJldCAmJiBkd2ltX3JlbW90ZXNfbWF0Y2hlZCA+IDEgJiYKLQkJICAgIGFkdmljZV9jaGVja291dF9hbWJpZ3VvdXNfcmVtb3RlX2JyYW5jaF9uYW1lKQotCQkJYWR2aXNlKF8oIiclcycgbWF0Y2hlZCBtb3JlIHRoYW4gb25lIHJlbW90ZSB0cmFja2luZyBicmFuY2guXG4iCi0JCQkJICJXZSBmb3VuZCAlZCByZW1vdGVzIHdpdGggYSByZWZlcmVuY2UgdGhhdCBtYXRjaGVkLiBTbyB3ZSBmZWxsIGJhY2tcbiIKLQkJCQkgIm9uIHRyeWluZyB0byByZXNvbHZlIHRoZSBhcmd1bWVudCBhcyBhIHBhdGgsIGJ1dCBmYWlsZWQgdGhlcmUgdG9vIVxuIgotCQkJCSAiXG4iCi0JCQkJICJJZiB5b3UgbWVhbnQgdG8gY2hlY2sgb3V0IGEgcmVtb3RlIHRyYWNraW5nIGJyYW5jaCBvbiwgZS5nLiAnb3JpZ2luJyxcbiIKLQkJCQkgInlvdSBjYW4gZG8gc28gYnkgZnVsbHkgcXVhbGlmeWluZyB0aGUgbmFtZSB3aXRoIHRoZSAtLXRyYWNrIG9wdGlvbjpcbiIKLQkJCQkgIlxuIgotCQkJCSAiICAgIGdpdCBjaGVja291dCAtLXRyYWNrIG9yaWdpbi88bmFtZT5cbiIKLQkJCQkgIlxuIgotCQkJCSAiSWYgeW91J2QgbGlrZSB0byBhbHdheXMgaGF2ZSBjaGVja291dHMgb2YgYW4gYW1iaWd1b3VzIDxuYW1lPiBwcmVmZXJcbiIKLQkJCQkgIm9uZSByZW1vdGUsIGUuZy4gdGhlICdvcmlnaW4nIHJlbW90ZSwgY29uc2lkZXIgc2V0dGluZ1xuIgotCQkJCSAiY2hlY2tvdXQuZGVmYXVsdFJlbW90ZT1vcmlnaW4gaW4geW91ciBjb25maWcuIiksCi0JCQkgICAgICAgYXJndlswXSwKLQkJCSAgICAgICBkd2ltX3JlbW90ZXNfbWF0Y2hlZCk7Ci0JCXJldHVybiByZXQ7Ci0JfSBlbHNlIHsKLQkJcmV0dXJuIGNoZWNrb3V0X2JyYW5jaCgmb3B0cywgJm5ld19icmFuY2hfaW5mbyk7CisJaWYgKG9wdHMtPnBhdGNoX21vZGUgfHwgb3B0cy0+cGF0aHNwZWMubnIpCisJCXJldHVybiBjaGVja291dF9wYXRocyhvcHRzLCBuZXdfYnJhbmNoX2luZm8ubmFtZSk7CisJZWxzZQorCQlyZXR1cm4gY2hlY2tvdXRfYnJhbmNoKG9wdHMsICZuZXdfYnJhbmNoX2luZm8pOworfQorCitpbnQgY21kX2NoZWNrb3V0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KQoreworCXN0cnVjdCBjaGVja291dF9vcHRzIG9wdHM7CisJc3RydWN0IG9wdGlvbiAqb3B0aW9uczsKKwlzdHJ1Y3Qgb3B0aW9uIGNoZWNrb3V0X29wdGlvbnNbXSA9IHsKKwkJT1BUX1NUUklORygnYicsIE5VTEwsICZvcHRzLm5ld19icmFuY2gsIE5fKCJicmFuY2giKSwKKwkJCSAgIE5fKCJjcmVhdGUgYW5kIGNoZWNrb3V0IGEgbmV3IGJyYW5jaCIpKSwKKwkJT1BUX1NUUklORygnQicsIE5VTEwsICZvcHRzLm5ld19icmFuY2hfZm9yY2UsIE5fKCJicmFuY2giKSwKKwkJCSAgIE5fKCJjcmVhdGUvcmVzZXQgYW5kIGNoZWNrb3V0IGEgYnJhbmNoIikpLAorCQlPUFRfQk9PTCgnbCcsIE5VTEwsICZvcHRzLm5ld19icmFuY2hfbG9nLCBOXygiY3JlYXRlIHJlZmxvZyBmb3IgbmV3IGJyYW5jaCIpKSwKKwkJT1BUX0JPT0woMCwgImd1ZXNzIiwgJm9wdHMuZHdpbV9uZXdfbG9jYWxfYnJhbmNoLAorCQkJIE5fKCJzZWNvbmQgZ3Vlc3MgJ2dpdCBjaGVja291dCA8bm8tc3VjaC1icmFuY2g+JyAoZGVmYXVsdCkiKSksCisJCU9QVF9CT09MKDAsICJvdmVybGF5IiwgJm9wdHMub3ZlcmxheV9tb2RlLCBOXygidXNlIG92ZXJsYXkgbW9kZSAoZGVmYXVsdCkiKSksCisJCU9QVF9FTkQoKQorCX07CisJaW50IHJldDsKKworCW1lbXNldCgmb3B0cywgMCwgc2l6ZW9mKG9wdHMpKTsKKwlvcHRzLmR3aW1fbmV3X2xvY2FsX2JyYW5jaCA9IDE7CisJb3B0cy5zd2l0Y2hfYnJhbmNoX2RvaW5nX25vdGhpbmdfaXNfb2sgPSAxOworCW9wdHMub25seV9tZXJnZV9vbl9zd2l0Y2hpbmdfYnJhbmNoZXMgPSAwOworCW9wdHMuYWNjZXB0X3JlZiA9IDE7CisJb3B0cy5hY2NlcHRfcGF0aHNwZWMgPSAxOworCW9wdHMuaW1wbGljaXRfZGV0YWNoID0gMTsKKwlvcHRzLmNhbl9zd2l0Y2hfd2hlbl9pbl9wcm9ncmVzcyA9IDE7CisJb3B0cy5vcnBoYW5fZnJvbV9lbXB0eV90cmVlID0gMDsKKwlvcHRzLmVtcHR5X3BhdGhzcGVjX29rID0gMTsKKwlvcHRzLm92ZXJsYXlfbW9kZSA9IC0xOworCW9wdHMuY2hlY2tvdXRfaW5kZXggPSAtMjsgICAgLyogZGVmYXVsdCBvbiAqLworCW9wdHMuY2hlY2tvdXRfd29ya3RyZWUgPSAtMjsgLyogZGVmYXVsdCBvbiAqLworCisJaWYgKGFyZ2MgPT0gMyAmJiAhc3RyY21wKGFyZ3ZbMV0sICItYiIpKSB7CisJCS8qCisJCSAqIFVzZXIgcmFuICdnaXQgY2hlY2tvdXQgLWIgPGJyYW5jaD4nIGFuZCBleHBlY3RzCisJCSAqIHRoZSBzYW1lIGJlaGF2aW9yIGFzICdnaXQgc3dpdGNoIC1jIDxicmFuY2g+Jy4KKwkJICovCisJCW9wdHMuc3dpdGNoX2JyYW5jaF9kb2luZ19ub3RoaW5nX2lzX29rID0gMDsKKwkJb3B0cy5vbmx5X21lcmdlX29uX3N3aXRjaGluZ19icmFuY2hlcyA9IDE7CiAJfQorCisJb3B0aW9ucyA9IHBhcnNlX29wdGlvbnNfZHVwKGNoZWNrb3V0X29wdGlvbnMpOworCW9wdGlvbnMgPSBhZGRfY29tbW9uX29wdGlvbnMoJm9wdHMsIG9wdGlvbnMpOworCW9wdGlvbnMgPSBhZGRfY29tbW9uX3N3aXRjaF9icmFuY2hfb3B0aW9ucygmb3B0cywgb3B0aW9ucyk7CisJb3B0aW9ucyA9IGFkZF9jaGVja291dF9wYXRoX29wdGlvbnMoJm9wdHMsIG9wdGlvbnMpOworCisJcmV0ID0gY2hlY2tvdXRfbWFpbihhcmdjLCBhcmd2LCBwcmVmaXgsICZvcHRzLAorCQkJICAgIG9wdGlvbnMsIGNoZWNrb3V0X3VzYWdlKTsKKwlGUkVFX0FORF9OVUxMKG9wdGlvbnMpOworCXJldHVybiByZXQ7Cit9CisKK2ludCBjbWRfc3dpdGNoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KQoreworCXN0cnVjdCBjaGVja291dF9vcHRzIG9wdHM7CisJc3RydWN0IG9wdGlvbiAqb3B0aW9ucyA9IE5VTEw7CisJc3RydWN0IG9wdGlvbiBzd2l0Y2hfb3B0aW9uc1tdID0geworCQlPUFRfU1RSSU5HKCdjJywgImNyZWF0ZSIsICZvcHRzLm5ld19icmFuY2gsIE5fKCJicmFuY2giKSwKKwkJCSAgIE5fKCJjcmVhdGUgYW5kIHN3aXRjaCB0byBhIG5ldyBicmFuY2giKSksCisJCU9QVF9TVFJJTkcoJ0MnLCAiZm9yY2UtY3JlYXRlIiwgJm9wdHMubmV3X2JyYW5jaF9mb3JjZSwgTl8oImJyYW5jaCIpLAorCQkJICAgTl8oImNyZWF0ZS9yZXNldCBhbmQgc3dpdGNoIHRvIGEgYnJhbmNoIikpLAorCQlPUFRfQk9PTCgwLCAiZ3Vlc3MiLCAmb3B0cy5kd2ltX25ld19sb2NhbF9icmFuY2gsCisJCQkgTl8oInNlY29uZCBndWVzcyAnZ2l0IHN3aXRjaCA8bm8tc3VjaC1icmFuY2g+JyIpKSwKKwkJT1BUX0JPT0woMCwgImRpc2NhcmQtY2hhbmdlcyIsICZvcHRzLmRpc2NhcmRfY2hhbmdlcywKKwkJCSBOXygidGhyb3cgYXdheSBsb2NhbCBtb2RpZmljYXRpb25zIikpLAorCQlPUFRfRU5EKCkKKwl9OworCWludCByZXQ7CisKKwltZW1zZXQoJm9wdHMsIDAsIHNpemVvZihvcHRzKSk7CisJb3B0cy5kd2ltX25ld19sb2NhbF9icmFuY2ggPSAxOworCW9wdHMuYWNjZXB0X3JlZiA9IDE7CisJb3B0cy5hY2NlcHRfcGF0aHNwZWMgPSAwOworCW9wdHMuc3dpdGNoX2JyYW5jaF9kb2luZ19ub3RoaW5nX2lzX29rID0gMDsKKwlvcHRzLm9ubHlfbWVyZ2Vfb25fc3dpdGNoaW5nX2JyYW5jaGVzID0gMTsKKwlvcHRzLmltcGxpY2l0X2RldGFjaCA9IDA7CisJb3B0cy5jYW5fc3dpdGNoX3doZW5faW5fcHJvZ3Jlc3MgPSAwOworCW9wdHMub3JwaGFuX2Zyb21fZW1wdHlfdHJlZSA9IDE7CisJb3B0cy5vdmVybGF5X21vZGUgPSAtMTsKKworCW9wdGlvbnMgPSBwYXJzZV9vcHRpb25zX2R1cChzd2l0Y2hfb3B0aW9ucyk7CisJb3B0aW9ucyA9IGFkZF9jb21tb25fb3B0aW9ucygmb3B0cywgb3B0aW9ucyk7CisJb3B0aW9ucyA9IGFkZF9jb21tb25fc3dpdGNoX2JyYW5jaF9vcHRpb25zKCZvcHRzLCBvcHRpb25zKTsKKworCXJldCA9IGNoZWNrb3V0X21haW4oYXJnYywgYXJndiwgcHJlZml4LCAmb3B0cywKKwkJCSAgICBvcHRpb25zLCBzd2l0Y2hfYnJhbmNoX3VzYWdlKTsKKwlGUkVFX0FORF9OVUxMKG9wdGlvbnMpOworCXJldHVybiByZXQ7Cit9CisKK2ludCBjbWRfcmVzdG9yZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKK3sKKwlzdHJ1Y3QgY2hlY2tvdXRfb3B0cyBvcHRzOworCXN0cnVjdCBvcHRpb24gKm9wdGlvbnM7CisJc3RydWN0IG9wdGlvbiByZXN0b3JlX29wdGlvbnNbXSA9IHsKKwkJT1BUX1NUUklORygncycsICJzb3VyY2UiLCAmb3B0cy5mcm9tX3RyZWVpc2gsICI8dHJlZS1pc2g+IiwKKwkJCSAgIE5fKCJ3aGljaCB0cmVlLWlzaCB0byBjaGVja291dCBmcm9tIikpLAorCQlPUFRfQk9PTCgnUycsICJzdGFnZWQiLCAmb3B0cy5jaGVja291dF9pbmRleCwKKwkJCSAgIE5fKCJyZXN0b3JlIHRoZSBpbmRleCIpKSwKKwkJT1BUX0JPT0woJ1cnLCAid29ya3RyZWUiLCAmb3B0cy5jaGVja291dF93b3JrdHJlZSwKKwkJCSAgIE5fKCJyZXN0b3JlIHRoZSB3b3JraW5nIHRyZWUgKGRlZmF1bHQpIikpLAorCQlPUFRfQk9PTCgwLCAiaWdub3JlLXVubWVyZ2VkIiwgJm9wdHMuaWdub3JlX3VubWVyZ2VkLAorCQkJIE5fKCJpZ25vcmUgdW5tZXJnZWQgZW50cmllcyIpKSwKKwkJT1BUX0JPT0woMCwgIm92ZXJsYXkiLCAmb3B0cy5vdmVybGF5X21vZGUsIE5fKCJ1c2Ugb3ZlcmxheSBtb2RlIikpLAorCQlPUFRfRU5EKCkKKwl9OworCWludCByZXQ7CisKKwltZW1zZXQoJm9wdHMsIDAsIHNpemVvZihvcHRzKSk7CisJb3B0cy5hY2NlcHRfcmVmID0gMDsKKwlvcHRzLmFjY2VwdF9wYXRoc3BlYyA9IDE7CisJb3B0cy5lbXB0eV9wYXRoc3BlY19vayA9IDA7CisJb3B0cy5vdmVybGF5X21vZGUgPSAwOworCW9wdHMuY2hlY2tvdXRfaW5kZXggPSAtMTsgICAgLyogZGVmYXVsdCBvZmYgKi8KKwlvcHRzLmNoZWNrb3V0X3dvcmt0cmVlID0gLTI7IC8qIGRlZmF1bHQgb24gKi8KKwlvcHRzLmlnbm9yZV91bm1lcmdlZF9vcHQgPSAiLS1pZ25vcmUtdW5tZXJnZWQiOworCisJb3B0aW9ucyA9IHBhcnNlX29wdGlvbnNfZHVwKHJlc3RvcmVfb3B0aW9ucyk7CisJb3B0aW9ucyA9IGFkZF9jb21tb25fb3B0aW9ucygmb3B0cywgb3B0aW9ucyk7CisJb3B0aW9ucyA9IGFkZF9jaGVja291dF9wYXRoX29wdGlvbnMoJm9wdHMsIG9wdGlvbnMpOworCisJcmV0ID0gY2hlY2tvdXRfbWFpbihhcmdjLCBhcmd2LCBwcmVmaXgsICZvcHRzLAorCQkJICAgIG9wdGlvbnMsIHJlc3RvcmVfdXNhZ2UpOworCUZSRUVfQU5EX05VTEwob3B0aW9ucyk7CisJcmV0dXJuIHJldDsKIH0KZGlmZiAtLWdpdCBhL2J1aWx0aW4vY2xlYW4uYyBiL2J1aWx0aW4vY2xlYW4uYwppbmRleCBiYmNkZWIyLi41YWJmMDg3IDEwMDY0NAotLS0gYS9idWlsdGluL2NsZWFuLmMKKysrIGIvYnVpbHRpbi9jbGVhbi5jCkBAIC02LDYgKzYsNyBAQAogICogQmFzZWQgb24gZ2l0LWNsZWFuLnNoIGJ5IFBhdmVsIFJvc2tpbgogICovCiAKKyNkZWZpbmUgVVNFX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImJ1aWx0aW4uaCIKICNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgImNvbmZpZy5oIgpAQCAtMzMsNiArMzQsNyBAQAogc3RhdGljIGNvbnN0IGNoYXIgKm1zZ19za2lwX2dpdF9kaXIgPSBOXygiU2tpcHBpbmcgcmVwb3NpdG9yeSAlc1xuIik7CiBzdGF0aWMgY29uc3QgY2hhciAqbXNnX3dvdWxkX3NraXBfZ2l0X2RpciA9IE5fKCJXb3VsZCBza2lwIHJlcG9zaXRvcnkgJXNcbiIpOwogc3RhdGljIGNvbnN0IGNoYXIgKm1zZ193YXJuX3JlbW92ZV9mYWlsZWQgPSBOXygiZmFpbGVkIHRvIHJlbW92ZSAlcyIpOworc3RhdGljIGNvbnN0IGNoYXIgKm1zZ193YXJuX2xzdGF0X2ZhaWxlZCA9IE5fKCJjb3VsZCBub3QgbHN0YXQgJXNcbiIpOwogCiBlbnVtIGNvbG9yX2NsZWFuIHsKIAlDTEVBTl9DT0xPUl9SRVNFVCA9IDAsCkBAIC0xNTYsNyArMTU4LDggQEAKIAogCSpkaXJfZ29uZSA9IDE7CiAKLQlpZiAoKGZvcmNlX2ZsYWcgJiBSRU1PVkVfRElSX0tFRVBfTkVTVEVEX0dJVCkgJiYgaXNfbm9uYmFyZV9yZXBvc2l0b3J5X2RpcihwYXRoKSkgeworCWlmICgoZm9yY2VfZmxhZyAmIFJFTU9WRV9ESVJfS0VFUF9ORVNURURfR0lUKSAmJgorCSAgICBpc19ub25iYXJlX3JlcG9zaXRvcnlfZGlyKHBhdGgpKSB7CiAJCWlmICghcXVpZXQpIHsKIAkJCXF1b3RlX3BhdGhfcmVsYXRpdmUocGF0aC0+YnVmLCBwcmVmaXgsICZxdW90ZWQpOwogCQkJcHJpbnRmKGRyeV9ydW4gPyAgXyhtc2dfd291bGRfc2tpcF9naXRfZGlyKSA6IF8obXNnX3NraXBfZ2l0X2RpciksCkBAIC0xOTMsNyArMTk2LDcgQEAKIAkJc3RyYnVmX3NldGxlbihwYXRoLCBsZW4pOwogCQlzdHJidWZfYWRkc3RyKHBhdGgsIGUtPmRfbmFtZSk7CiAJCWlmIChsc3RhdChwYXRoLT5idWYsICZzdCkpCi0JCQk7IC8qIGZhbGwgdGhydSAqLworCQkJd2FybmluZ19lcnJubyhfKG1zZ193YXJuX2xzdGF0X2ZhaWxlZCksIHBhdGgtPmJ1Zik7CiAJCWVsc2UgaWYgKFNfSVNESVIoc3Quc3RfbW9kZSkpIHsKIAkJCWlmIChyZW1vdmVfZGlycyhwYXRoLCBwcmVmaXgsIGZvcmNlX2ZsYWcsIGRyeV9ydW4sIHF1aWV0LCAmZ29uZSkpCiAJCQkJcmV0ID0gMTsKQEAgLTY0Niw3ICs2NDksNyBAQAogCXN0cnVjdCBzdHJidWYgY29uZmlybSA9IFNUUkJVRl9JTklUOwogCXN0cnVjdCBzdHJidWYgKippZ25vcmVfbGlzdDsKIAlzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqaXRlbTsKLQlzdHJ1Y3QgZXhjbHVkZV9saXN0ICplbDsKKwlzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbDsKIAlpbnQgY2hhbmdlZCA9IC0xLCBpOwogCiAJZm9yICg7OykgewpAQCAtNjY5LDcgKzY3Miw3IEBACiAJCQlicmVhazsKIAogCQltZW1zZXQoJmRpciwgMCwgc2l6ZW9mKGRpcikpOwotCQllbCA9IGFkZF9leGNsdWRlX2xpc3QoJmRpciwgRVhDX0NNREwsICJtYW51YWwgZXhjbHVkZSIpOworCQlwbCA9IGFkZF9wYXR0ZXJuX2xpc3QoJmRpciwgRVhDX0NNREwsICJtYW51YWwgZXhjbHVkZSIpOwogCQlpZ25vcmVfbGlzdCA9IHN0cmJ1Zl9zcGxpdF9tYXgoJmNvbmZpcm0sICcgJywgMCk7CiAKIAkJZm9yIChpID0gMDsgaWdub3JlX2xpc3RbaV07IGkrKykgewpAQCAtNjc3LDcgKzY4MCw3IEBACiAJCQlpZiAoIWlnbm9yZV9saXN0W2ldLT5sZW4pCiAJCQkJY29udGludWU7CiAKLQkJCWFkZF9leGNsdWRlKGlnbm9yZV9saXN0W2ldLT5idWYsICIiLCAwLCBlbCwgLShpKzEpKTsKKwkJCWFkZF9wYXR0ZXJuKGlnbm9yZV9saXN0W2ldLT5idWYsICIiLCAwLCBwbCwgLShpKzEpKTsKIAkJfQogCiAJCWNoYW5nZWQgPSAwOwpAQCAtODk5LDcgKzkwMiw3IEBACiAJc3RydWN0IHBhdGhzcGVjIHBhdGhzcGVjOwogCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHN0cmluZ19saXN0IGV4Y2x1ZGVfbGlzdCA9IFNUUklOR19MSVNUX0lOSVRfTk9EVVA7Ci0Jc3RydWN0IGV4Y2x1ZGVfbGlzdCAqZWw7CisJc3RydWN0IHBhdHRlcm5fbGlzdCAqcGw7CiAJc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKml0ZW07CiAJY29uc3QgY2hhciAqcW5hbWU7CiAJc3RydWN0IG9wdGlvbiBvcHRpb25zW10gPSB7CkBAIC05NDQsOSArOTQ3LDE5IEBACiAKIAlpZiAoZm9yY2UgPiAxKQogCQlybV9mbGFncyA9IDA7CisJZWxzZQorCQlkaXIuZmxhZ3MgfD0gRElSX1NLSVBfTkVTVEVEX0dJVDsKIAogCWRpci5mbGFncyB8PSBESVJfU0hPV19PVEhFUl9ESVJFQ1RPUklFUzsKIAorCWlmIChhcmdjKSB7CisJCS8qCisJCSAqIFJlbWFpbmluZyBhcmdzIGltcGxpZXMgcGF0aHNwZWNzIHNwZWNpZmllZCwgYW5kIHdlIHNob3VsZAorCQkgKiByZWN1cnNlIHdpdGhpbiB0aG9zZS4KKwkJICovCisJCXJlbW92ZV9kaXJlY3RvcmllcyA9IDE7CisJfQorCiAJaWYgKHJlbW92ZV9kaXJlY3RvcmllcykKIAkJZGlyLmZsYWdzIHw9IERJUl9TSE9XX0lHTk9SRURfVE9PIHwgRElSX0tFRVBfVU5UUkFDS0VEX0NPTlRFTlRTOwogCkBAIC05NTYsOSArOTY5LDkgQEAKIAlpZiAoIWlnbm9yZWQpCiAJCXNldHVwX3N0YW5kYXJkX2V4Y2x1ZGVzKCZkaXIpOwogCi0JZWwgPSBhZGRfZXhjbHVkZV9saXN0KCZkaXIsIEVYQ19DTURMLCAiLS1leGNsdWRlIG9wdGlvbiIpOworCXBsID0gYWRkX3BhdHRlcm5fbGlzdCgmZGlyLCBFWENfQ01ETCwgIi0tZXhjbHVkZSBvcHRpb24iKTsKIAlmb3IgKGkgPSAwOyBpIDwgZXhjbHVkZV9saXN0Lm5yOyBpKyspCi0JCWFkZF9leGNsdWRlKGV4Y2x1ZGVfbGlzdC5pdGVtc1tpXS5zdHJpbmcsICIiLCAwLCBlbCwgLShpKzEpKTsKKwkJYWRkX3BhdHRlcm4oZXhjbHVkZV9saXN0Lml0ZW1zW2ldLnN0cmluZywgIiIsIDAsIHBsLCAtKGkrMSkpOwogCiAJcGFyc2VfcGF0aHNwZWMoJnBhdGhzcGVjLCAwLAogCQkgICAgICAgUEFUSFNQRUNfUFJFRkVSX0NXRCwKQEAgLTEwMDUsNiArMTAxOCw3IEBACiAJZm9yX2VhY2hfc3RyaW5nX2xpc3RfaXRlbShpdGVtLCAmZGVsX2xpc3QpIHsKIAkJc3RydWN0IHN0YXQgc3Q7CiAKKwkJc3RyYnVmX3Jlc2V0KCZhYnNfcGF0aCk7CiAJCWlmIChwcmVmaXgpCiAJCQlzdHJidWZfYWRkc3RyKCZhYnNfcGF0aCwgcHJlZml4KTsKIApAQCAtMTAzOCw3ICsxMDUyLDYgQEAKIAkJCQlwcmludGYoZHJ5X3J1biA/IF8obXNnX3dvdWxkX3JlbW92ZSkgOiBfKG1zZ19yZW1vdmUpLCBxbmFtZSk7CiAJCQl9CiAJCX0KLQkJc3RyYnVmX3Jlc2V0KCZhYnNfcGF0aCk7CiAJfQogCiAJc3RyYnVmX3JlbGVhc2UoJmFic19wYXRoKTsKZGlmZiAtLWdpdCBhL2J1aWx0aW4vY2xvbmUuYyBiL2J1aWx0aW4vY2xvbmUuYwppbmRleCA1ZDMxYmVhLi40ODhiZGIwIDEwMDY0NAotLS0gYS9idWlsdGluL2Nsb25lLmMKKysrIGIvYnVpbHRpbi9jbG9uZS5jCkBAIC04LDYgKzgsNyBAQAogICogQ2xvbmUgYSByZXBvc2l0b3J5IGludG8gYSBkaWZmZXJlbnQgZGlyZWN0b3J5IHRoYXQgZG9lcyBub3QgeWV0IGV4aXN0LgogICovCiAKKyNkZWZpbmUgVVNFX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImJ1aWx0aW4uaCIKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJsb2NrZmlsZS5oIgpAQCAtMjIsNiArMjMsOCBAQAogI2luY2x1ZGUgInRyYW5zcG9ydC5oIgogI2luY2x1ZGUgInN0cmJ1Zi5oIgogI2luY2x1ZGUgImRpci5oIgorI2luY2x1ZGUgImRpci1pdGVyYXRvci5oIgorI2luY2x1ZGUgIml0ZXJhdG9yLmgiCiAjaW5jbHVkZSAic2lnY2hhaW4uaCIKICNpbmNsdWRlICJicmFuY2guaCIKICNpbmNsdWRlICJyZW1vdGUuaCIKQEAgLTI5LDcgKzMyLDYgQEAKICNpbmNsdWRlICJjb25uZWN0ZWQuaCIKICNpbmNsdWRlICJwYWNrZmlsZS5oIgogI2luY2x1ZGUgImxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oIgotI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgogCiAvKgogICogT3ZlcmFsbCBGSVhNRXM6CkBAIC01Nyw2ICs1OSw3IEBACiBzdGF0aWMgY2hhciAqb3B0aW9uX3VwbG9hZF9wYWNrID0gImdpdC11cGxvYWQtcGFjayI7CiBzdGF0aWMgaW50IG9wdGlvbl92ZXJib3NpdHk7CiBzdGF0aWMgaW50IG9wdGlvbl9wcm9ncmVzcyA9IC0xOworc3RhdGljIGludCBvcHRpb25fc3BhcnNlX2NoZWNrb3V0Owogc3RhdGljIGVudW0gdHJhbnNwb3J0X2ZhbWlseSBmYW1pbHk7CiBzdGF0aWMgc3RydWN0IHN0cmluZ19saXN0IG9wdGlvbl9jb25maWcgPSBTVFJJTkdfTElTVF9JTklUX05PRFVQOwogc3RhdGljIHN0cnVjdCBzdHJpbmdfbGlzdCBvcHRpb25fcmVxdWlyZWRfcmVmZXJlbmNlID0gU1RSSU5HX0xJU1RfSU5JVF9OT0RVUDsKQEAgLTY1LDYgKzY4LDggQEAKIHN0YXRpYyBpbnQgbWF4X2pvYnMgPSAtMTsKIHN0YXRpYyBzdHJ1Y3Qgc3RyaW5nX2xpc3Qgb3B0aW9uX3JlY3Vyc2Vfc3VibW9kdWxlcyA9IFNUUklOR19MSVNUX0lOSVRfTk9EVVA7CiBzdGF0aWMgc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyBmaWx0ZXJfb3B0aW9uczsKK3N0YXRpYyBzdHJ1Y3Qgc3RyaW5nX2xpc3Qgc2VydmVyX29wdGlvbnMgPSBTVFJJTkdfTElTVF9JTklUX05PRFVQOworc3RhdGljIGludCBvcHRpb25fcmVtb3RlX3N1Ym1vZHVsZXM7CiAKIHN0YXRpYyBpbnQgcmVjdXJzZV9zdWJtb2R1bGVzX2NiKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKIAkJCQkgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCkBAIC05NywxMCArMTAyLDcgQEAKIAkJICAgIE5fKCJkb24ndCB1c2UgbG9jYWwgaGFyZGxpbmtzLCBhbHdheXMgY29weSIpKSwKIAlPUFRfQk9PTCgncycsICJzaGFyZWQiLCAmb3B0aW9uX3NoYXJlZCwKIAkJICAgIE5fKCJzZXR1cCBhcyBzaGFyZWQgcmVwb3NpdG9yeSIpKSwKLQl7IE9QVElPTl9DQUxMQkFDSywgMCwgInJlY3Vyc2l2ZSIsICZvcHRpb25fcmVjdXJzZV9zdWJtb2R1bGVzLAotCSAgTl8oInBhdGhzcGVjIiksIE5fKCJpbml0aWFsaXplIHN1Ym1vZHVsZXMgaW4gdGhlIGNsb25lIiksCi0JICBQQVJTRV9PUFRfT1BUQVJHIHwgUEFSU0VfT1BUX0hJRERFTiwgcmVjdXJzZV9zdWJtb2R1bGVzX2NiLAotCSAgKGludHB0cl90KSIuIiB9LAorCU9QVF9BTElBUygwLCAicmVjdXJzaXZlIiwgInJlY3Vyc2Utc3VibW9kdWxlcyIpLAogCXsgT1BUSU9OX0NBTExCQUNLLCAwLCAicmVjdXJzZS1zdWJtb2R1bGVzIiwgJm9wdGlvbl9yZWN1cnNlX3N1Ym1vZHVsZXMsCiAJICBOXygicGF0aHNwZWMiKSwgTl8oImluaXRpYWxpemUgc3VibW9kdWxlcyBpbiB0aGUgY2xvbmUiKSwKIAkgIFBBUlNFX09QVF9PUFRBUkcsIHJlY3Vyc2Vfc3VibW9kdWxlc19jYiwgKGludHB0cl90KSIuIiB9LApAQCAtMTM2LDExICsxMzgsMTcgQEAKIAkJICAgTl8oInNlcGFyYXRlIGdpdCBkaXIgZnJvbSB3b3JraW5nIHRyZWUiKSksCiAJT1BUX1NUUklOR19MSVNUKCdjJywgImNvbmZpZyIsICZvcHRpb25fY29uZmlnLCBOXygia2V5PXZhbHVlIiksCiAJCQlOXygic2V0IGNvbmZpZyBpbnNpZGUgdGhlIG5ldyByZXBvc2l0b3J5IikpLAorCU9QVF9TVFJJTkdfTElTVCgwLCAic2VydmVyLW9wdGlvbiIsICZzZXJ2ZXJfb3B0aW9ucywKKwkJCU5fKCJzZXJ2ZXItc3BlY2lmaWMiKSwgTl8oIm9wdGlvbiB0byB0cmFuc21pdCIpKSwKIAlPUFRfU0VUX0lOVCgnNCcsICJpcHY0IiwgJmZhbWlseSwgTl8oInVzZSBJUHY0IGFkZHJlc3NlcyBvbmx5IiksCiAJCQlUUkFOU1BPUlRfRkFNSUxZX0lQVjQpLAogCU9QVF9TRVRfSU5UKCc2JywgImlwdjYiLCAmZmFtaWx5LCBOXygidXNlIElQdjYgYWRkcmVzc2VzIG9ubHkiKSwKIAkJCVRSQU5TUE9SVF9GQU1JTFlfSVBWNiksCiAJT1BUX1BBUlNFX0xJU1RfT0JKRUNUU19GSUxURVIoJmZpbHRlcl9vcHRpb25zKSwKKwlPUFRfQk9PTCgwLCAicmVtb3RlLXN1Ym1vZHVsZXMiLCAmb3B0aW9uX3JlbW90ZV9zdWJtb2R1bGVzLAorCQkgICAgTl8oImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIHVzZSB0aGVpciByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIikpLAorCU9QVF9CT09MKDAsICJzcGFyc2UiLCAmb3B0aW9uX3NwYXJzZV9jaGVja291dCwKKwkJICAgIE5fKCJpbml0aWFsaXplIHNwYXJzZS1jaGVja291dCBmaWxlIHRvIGluY2x1ZGUgb25seSBmaWxlcyBhdCByb290IikpLAogCU9QVF9FTkQoKQogfTsKIApAQCAtMzUzLDggKzM2MSw3IEBACiAJCQkgICAgIGFkZF9vbmVfcmVmZXJlbmNlLCAmcmVxdWlyZWQpOwogfQogCi1zdGF0aWMgdm9pZCBjb3B5X2FsdGVybmF0ZXMoc3RydWN0IHN0cmJ1ZiAqc3JjLCBzdHJ1Y3Qgc3RyYnVmICpkc3QsCi0JCQkgICAgY29uc3QgY2hhciAqc3JjX3JlcG8pCitzdGF0aWMgdm9pZCBjb3B5X2FsdGVybmF0ZXMoc3RydWN0IHN0cmJ1ZiAqc3JjLCBjb25zdCBjaGFyICpzcmNfcmVwbykKIHsKIAkvKgogCSAqIFJlYWQgZnJvbSB0aGUgc291cmNlIG9iamVjdHMvaW5mby9hbHRlcm5hdGVzIGZpbGUKQEAgLTM5MSw1OCArMzk4LDY1IEBACiAJZmNsb3NlKGluKTsKIH0KIAotc3RhdGljIHZvaWQgY29weV9vcl9saW5rX2RpcmVjdG9yeShzdHJ1Y3Qgc3RyYnVmICpzcmMsIHN0cnVjdCBzdHJidWYgKmRlc3QsCi0JCQkJICAgY29uc3QgY2hhciAqc3JjX3JlcG8sIGludCBzcmNfYmFzZWxlbikKK3N0YXRpYyB2b2lkIG1rZGlyX2lmX21pc3NpbmcoY29uc3QgY2hhciAqcGF0aG5hbWUsIG1vZGVfdCBtb2RlKQogewotCXN0cnVjdCBkaXJlbnQgKmRlOwotCXN0cnVjdCBzdGF0IGJ1ZjsKKwlzdHJ1Y3Qgc3RhdCBzdDsKKworCWlmICghbWtkaXIocGF0aG5hbWUsIG1vZGUpKQorCQlyZXR1cm47CisKKwlpZiAoZXJybm8gIT0gRUVYSVNUKQorCQlkaWVfZXJybm8oXygiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIpLCBwYXRobmFtZSk7CisJZWxzZSBpZiAoc3RhdChwYXRobmFtZSwgJnN0KSkKKwkJZGllX2Vycm5vKF8oImZhaWxlZCB0byBzdGF0ICclcyciKSwgcGF0aG5hbWUpOworCWVsc2UgaWYgKCFTX0lTRElSKHN0LnN0X21vZGUpKQorCQlkaWUoXygiJXMgZXhpc3RzIGFuZCBpcyBub3QgYSBkaXJlY3RvcnkiKSwgcGF0aG5hbWUpOworfQorCitzdGF0aWMgdm9pZCBjb3B5X29yX2xpbmtfZGlyZWN0b3J5KHN0cnVjdCBzdHJidWYgKnNyYywgc3RydWN0IHN0cmJ1ZiAqZGVzdCwKKwkJCQkgICBjb25zdCBjaGFyICpzcmNfcmVwbykKK3sKIAlpbnQgc3JjX2xlbiwgZGVzdF9sZW47Ci0JRElSICpkaXI7CisJc3RydWN0IGRpcl9pdGVyYXRvciAqaXRlcjsKKwlpbnQgaXRlcl9zdGF0dXM7CisJdW5zaWduZWQgaW50IGZsYWdzOworCXN0cnVjdCBzdHJidWYgcmVhbHBhdGggPSBTVFJCVUZfSU5JVDsKIAotCWRpciA9IG9wZW5kaXIoc3JjLT5idWYpOwotCWlmICghZGlyKQotCQlkaWVfZXJybm8oXygiZmFpbGVkIHRvIG9wZW4gJyVzJyIpLCBzcmMtPmJ1Zik7CisJbWtkaXJfaWZfbWlzc2luZyhkZXN0LT5idWYsIDA3NzcpOwogCi0JaWYgKG1rZGlyKGRlc3QtPmJ1ZiwgMDc3NykpIHsKLQkJaWYgKGVycm5vICE9IEVFWElTVCkKLQkJCWRpZV9lcnJubyhfKCJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAnJXMnIiksIGRlc3QtPmJ1Zik7Ci0JCWVsc2UgaWYgKHN0YXQoZGVzdC0+YnVmLCAmYnVmKSkKLQkJCWRpZV9lcnJubyhfKCJmYWlsZWQgdG8gc3RhdCAnJXMnIiksIGRlc3QtPmJ1Zik7Ci0JCWVsc2UgaWYgKCFTX0lTRElSKGJ1Zi5zdF9tb2RlKSkKLQkJCWRpZShfKCIlcyBleGlzdHMgYW5kIGlzIG5vdCBhIGRpcmVjdG9yeSIpLCBkZXN0LT5idWYpOwotCX0KKwlmbGFncyA9IERJUl9JVEVSQVRPUl9QRURBTlRJQyB8IERJUl9JVEVSQVRPUl9GT0xMT1dfU1lNTElOS1M7CisJaXRlciA9IGRpcl9pdGVyYXRvcl9iZWdpbihzcmMtPmJ1ZiwgZmxhZ3MpOworCisJaWYgKCFpdGVyKQorCQlkaWVfZXJybm8oXygiZmFpbGVkIHRvIHN0YXJ0IGl0ZXJhdG9yIG92ZXIgJyVzJyIpLCBzcmMtPmJ1Zik7CiAKIAlzdHJidWZfYWRkY2goc3JjLCAnLycpOwogCXNyY19sZW4gPSBzcmMtPmxlbjsKIAlzdHJidWZfYWRkY2goZGVzdCwgJy8nKTsKIAlkZXN0X2xlbiA9IGRlc3QtPmxlbjsKIAotCXdoaWxlICgoZGUgPSByZWFkZGlyKGRpcikpICE9IE5VTEwpIHsKKwl3aGlsZSAoKGl0ZXJfc3RhdHVzID0gZGlyX2l0ZXJhdG9yX2FkdmFuY2UoaXRlcikpID09IElURVJfT0spIHsKIAkJc3RyYnVmX3NldGxlbihzcmMsIHNyY19sZW4pOwotCQlzdHJidWZfYWRkc3RyKHNyYywgZGUtPmRfbmFtZSk7CisJCXN0cmJ1Zl9hZGRzdHIoc3JjLCBpdGVyLT5yZWxhdGl2ZV9wYXRoKTsKIAkJc3RyYnVmX3NldGxlbihkZXN0LCBkZXN0X2xlbik7Ci0JCXN0cmJ1Zl9hZGRzdHIoZGVzdCwgZGUtPmRfbmFtZSk7Ci0JCWlmIChzdGF0KHNyYy0+YnVmLCAmYnVmKSkgewotCQkJd2FybmluZyAoXygiZmFpbGVkIHRvIHN0YXQgJXNcbiIpLCBzcmMtPmJ1Zik7Ci0JCQljb250aW51ZTsKLQkJfQotCQlpZiAoU19JU0RJUihidWYuc3RfbW9kZSkpIHsKLQkJCWlmIChkZS0+ZF9uYW1lWzBdICE9ICcuJykKLQkJCQljb3B5X29yX2xpbmtfZGlyZWN0b3J5KHNyYywgZGVzdCwKLQkJCQkJCSAgICAgICBzcmNfcmVwbywgc3JjX2Jhc2VsZW4pOworCQlzdHJidWZfYWRkc3RyKGRlc3QsIGl0ZXItPnJlbGF0aXZlX3BhdGgpOworCisJCWlmIChTX0lTRElSKGl0ZXItPnN0LnN0X21vZGUpKSB7CisJCQlta2Rpcl9pZl9taXNzaW5nKGRlc3QtPmJ1ZiwgMDc3Nyk7CiAJCQljb250aW51ZTsKIAkJfQogCiAJCS8qIEZpbGVzIHRoYXQgY2Fubm90IGJlIGNvcGllZCBiaXQtZm9yLWJpdC4uLiAqLwotCQlpZiAoIXN0cmNtcChzcmMtPmJ1ZiArIHNyY19iYXNlbGVuLCAiL2luZm8vYWx0ZXJuYXRlcyIpKSB7Ci0JCQljb3B5X2FsdGVybmF0ZXMoc3JjLCBkZXN0LCBzcmNfcmVwbyk7CisJCWlmICghZnNwYXRoY21wKGl0ZXItPnJlbGF0aXZlX3BhdGgsICJpbmZvL2FsdGVybmF0ZXMiKSkgeworCQkJY29weV9hbHRlcm5hdGVzKHNyYywgc3JjX3JlcG8pOwogCQkJY29udGludWU7CiAJCX0KIAogCQlpZiAodW5saW5rKGRlc3QtPmJ1ZikgJiYgZXJybm8gIT0gRU5PRU5UKQogCQkJZGllX2Vycm5vKF8oImZhaWxlZCB0byB1bmxpbmsgJyVzJyIpLCBkZXN0LT5idWYpOwogCQlpZiAoIW9wdGlvbl9ub19oYXJkbGlua3MpIHsKLQkJCWlmICghbGluayhzcmMtPmJ1ZiwgZGVzdC0+YnVmKSkKKwkJCXN0cmJ1Zl9yZWFscGF0aCgmcmVhbHBhdGgsIHNyYy0+YnVmLCAxKTsKKwkJCWlmICghbGluayhyZWFscGF0aC5idWYsIGRlc3QtPmJ1ZikpCiAJCQkJY29udGludWU7CiAJCQlpZiAob3B0aW9uX2xvY2FsID4gMCkKIAkJCQlkaWVfZXJybm8oXygiZmFpbGVkIHRvIGNyZWF0ZSBsaW5rICclcyciKSwgZGVzdC0+YnVmKTsKQEAgLTQ1MSw3ICs0NjUsMTMgQEAKIAkJaWYgKGNvcHlfZmlsZV93aXRoX3RpbWUoZGVzdC0+YnVmLCBzcmMtPmJ1ZiwgMDY2NikpCiAJCQlkaWVfZXJybm8oXygiZmFpbGVkIHRvIGNvcHkgZmlsZSB0byAnJXMnIiksIGRlc3QtPmJ1Zik7CiAJfQotCWNsb3NlZGlyKGRpcik7CisKKwlpZiAoaXRlcl9zdGF0dXMgIT0gSVRFUl9ET05FKSB7CisJCXN0cmJ1Zl9zZXRsZW4oc3JjLCBzcmNfbGVuKTsKKwkJZGllKF8oImZhaWxlZCB0byBpdGVyYXRlIG92ZXIgJyVzJyIpLCBzcmMtPmJ1Zik7CisJfQorCisJc3RyYnVmX3JlbGVhc2UoJnJlYWxwYXRoKTsKIH0KIAogc3RhdGljIHZvaWQgY2xvbmVfbG9jYWwoY29uc3QgY2hhciAqc3JjX3JlcG8sIGNvbnN0IGNoYXIgKmRlc3RfcmVwbykKQEAgLTQ2OSw3ICs0ODksNyBAQAogCQlnZXRfY29tbW9uX2RpcigmZGVzdCwgZGVzdF9yZXBvKTsKIAkJc3RyYnVmX2FkZHN0cigmc3JjLCAiL29iamVjdHMiKTsKIAkJc3RyYnVmX2FkZHN0cigmZGVzdCwgIi9vYmplY3RzIik7Ci0JCWNvcHlfb3JfbGlua19kaXJlY3RvcnkoJnNyYywgJmRlc3QsIHNyY19yZXBvLCBzcmMubGVuKTsKKwkJY29weV9vcl9saW5rX2RpcmVjdG9yeSgmc3JjLCAmZGVzdCwgc3JjX3JlcG8pOwogCQlzdHJidWZfcmVsZWFzZSgmc3JjKTsKIAkJc3RyYnVmX3JlbGVhc2UoJmRlc3QpOwogCX0KQEAgLTQ5MSw3ICs1MTEsNyBAQAogc3RhdGljIGNvbnN0IGNoYXIganVua19sZWF2ZV9yZXBvX21zZ1tdID0KIE5fKCJDbG9uZSBzdWNjZWVkZWQsIGJ1dCBjaGVja291dCBmYWlsZWQuXG4iCiAgICAiWW91IGNhbiBpbnNwZWN0IHdoYXQgd2FzIGNoZWNrZWQgb3V0IHdpdGggJ2dpdCBzdGF0dXMnXG4iCi0gICAiYW5kIHJldHJ5IHRoZSBjaGVja291dCB3aXRoICdnaXQgY2hlY2tvdXQgLWYgSEVBRCdcbiIpOworICAgImFuZCByZXRyeSB3aXRoICdnaXQgcmVzdG9yZSAtLXNvdXJjZT1IRUFEIDovJ1xuIik7CiAKIHN0YXRpYyB2b2lkIHJlbW92ZV9qdW5rKHZvaWQpCiB7CkBAIC01NDgsNyArNTY4LDcgQEAKIH0KIAogc3RhdGljIHN0cnVjdCByZWYgKndhbnRlZF9wZWVyX3JlZnMoY29uc3Qgc3RydWN0IHJlZiAqcmVmcywKLQkJc3RydWN0IHJlZnNwZWNfaXRlbSAqcmVmc3BlYykKKwkJc3RydWN0IHJlZnNwZWMgKnJlZnNwZWMpCiB7CiAJc3RydWN0IHJlZiAqaGVhZCA9IGNvcHlfcmVmKGZpbmRfcmVmX2J5X25hbWUocmVmcywgIkhFQUQiKSk7CiAJc3RydWN0IHJlZiAqbG9jYWxfcmVmcyA9IGhlYWQ7CkBAIC01NjksMTMgKzU4OSwxOSBAQAogCQkJd2FybmluZyhfKCJDb3VsZCBub3QgZmluZCByZW1vdGUgYnJhbmNoICVzIHRvIGNsb25lLiIpLAogCQkJCW9wdGlvbl9icmFuY2gpOwogCQllbHNlIHsKLQkJCWdldF9mZXRjaF9tYXAocmVtb3RlX2hlYWQsIHJlZnNwZWMsICZ0YWlsLCAwKTsKKwkJCWludCBpOworCQkJZm9yIChpID0gMDsgaSA8IHJlZnNwZWMtPm5yOyBpKyspCisJCQkJZ2V0X2ZldGNoX21hcChyZW1vdGVfaGVhZCwgJnJlZnNwZWMtPml0ZW1zW2ldLAorCQkJCQkgICAgICAmdGFpbCwgMCk7CiAKIAkJCS8qIGlmIC0tYnJhbmNoPXRhZywgcHVsbCB0aGUgcmVxdWVzdGVkIHRhZyBleHBsaWNpdGx5ICovCiAJCQlnZXRfZmV0Y2hfbWFwKHJlbW90ZV9oZWFkLCB0YWdfcmVmc3BlYywgJnRhaWwsIDApOwogCQl9Ci0JfSBlbHNlCi0JCWdldF9mZXRjaF9tYXAocmVmcywgcmVmc3BlYywgJnRhaWwsIDApOworCX0gZWxzZSB7CisJCWludCBpOworCQlmb3IgKGkgPSAwOyBpIDwgcmVmc3BlYy0+bnI7IGkrKykKKwkJCWdldF9mZXRjaF9tYXAocmVmcywgJnJlZnNwZWMtPml0ZW1zW2ldLCAmdGFpbCwgMCk7CisJfQogCiAJaWYgKCFvcHRpb25fbWlycm9yICYmICFvcHRpb25fc2luZ2xlX2JyYW5jaCAmJiAhb3B0aW9uX25vX3RhZ3MpCiAJCWdldF9mZXRjaF9tYXAocmVmcywgdGFnX3JlZnNwZWMsICZ0YWlsLCAwKTsKQEAgLTY1MCw3ICs2NzYsOCBAQAogCQkJICAgICAgIGNvbnN0IGNoYXIgKmJyYW5jaF90b3AsCiAJCQkgICAgICAgY29uc3QgY2hhciAqbXNnLAogCQkJICAgICAgIHN0cnVjdCB0cmFuc3BvcnQgKnRyYW5zcG9ydCwKLQkJCSAgICAgICBpbnQgY2hlY2tfY29ubmVjdGl2aXR5KQorCQkJICAgICAgIGludCBjaGVja19jb25uZWN0aXZpdHksCisJCQkgICAgICAgaW50IGNoZWNrX3JlZnNfYXJlX3Byb21pc29yX29iamVjdHNfb25seSkKIHsKIAljb25zdCBzdHJ1Y3QgcmVmICpybSA9IG1hcHBlZF9yZWZzOwogCkBAIC02NTksNiArNjg2LDggQEAKIAogCQlvcHQudHJhbnNwb3J0ID0gdHJhbnNwb3J0OwogCQlvcHQucHJvZ3Jlc3MgPSB0cmFuc3BvcnQtPnByb2dyZXNzOworCQlvcHQuY2hlY2tfcmVmc19hcmVfcHJvbWlzb3Jfb2JqZWN0c19vbmx5ID0KKwkJCSEhY2hlY2tfcmVmc19hcmVfcHJvbWlzb3Jfb2JqZWN0c19vbmx5OwogCiAJCWlmIChjaGVja19jb25uZWN0ZWQoaXRlcmF0ZV9yZWZfbWFwLCAmcm0sICZvcHQpKQogCQkJZGllKF8oInJlbW90ZSBkaWQgbm90IHNlbmQgYWxsIG5lY2Vzc2FyeSBvYmplY3RzIikpOwpAQCAtNzEyLDYgKzc0MSwyNyBAQAogCX0KIH0KIAorc3RhdGljIGludCBnaXRfc3BhcnNlX2NoZWNrb3V0X2luaXQoY29uc3QgY2hhciAqcmVwbykKK3sKKwlzdHJ1Y3QgYXJndl9hcnJheSBhcmd2ID0gQVJHVl9BUlJBWV9JTklUOworCWludCByZXN1bHQgPSAwOworCWFyZ3ZfYXJyYXlfcHVzaGwoJmFyZ3YsICItQyIsIHJlcG8sICJzcGFyc2UtY2hlY2tvdXQiLCAiaW5pdCIsIE5VTEwpOworCisJLyoKKwkgKiBXZSBtdXN0IGFwcGx5IHRoZSBzZXR0aW5nIGluIHRoZSBjdXJyZW50IHByb2Nlc3MKKwkgKiBmb3IgdGhlIGxhdGVyIGNoZWNrb3V0IHRvIHVzZSB0aGUgc3BhcnNlLWNoZWNrb3V0IGZpbGUuCisJICovCisJY29yZV9hcHBseV9zcGFyc2VfY2hlY2tvdXQgPSAxOworCisJaWYgKHJ1bl9jb21tYW5kX3Zfb3B0KGFyZ3YuYXJndiwgUlVOX0dJVF9DTUQpKSB7CisJCWVycm9yKF8oImZhaWxlZCB0byBpbml0aWFsaXplIHNwYXJzZS1jaGVja291dCIpKTsKKwkJcmVzdWx0ID0gMTsKKwl9CisKKwlhcmd2X2FycmF5X2NsZWFyKCZhcmd2KTsKKwlyZXR1cm4gcmVzdWx0OworfQorCiBzdGF0aWMgaW50IGNoZWNrb3V0KGludCBzdWJtb2R1bGVfcHJvZ3Jlc3MpCiB7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CkBAIC03NjMsNyArODEzLDcgQEAKIAlpZiAod3JpdGVfbG9ja2VkX2luZGV4KCZ0aGVfaW5kZXgsICZsb2NrX2ZpbGUsIENPTU1JVF9MT0NLKSkKIAkJZGllKF8oInVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIpKTsKIAotCWVyciB8PSBydW5faG9va19sZShOVUxMLCAicG9zdC1jaGVja291dCIsIHNoYTFfdG9faGV4KG51bGxfc2hhMSksCisJZXJyIHw9IHJ1bl9ob29rX2xlKE5VTEwsICJwb3N0LWNoZWNrb3V0Iiwgb2lkX3RvX2hleCgmbnVsbF9vaWQpLAogCQkJICAgb2lkX3RvX2hleCgmb2lkKSwgIjEiLCBOVUxMKTsKIAogCWlmICghZXJyICYmIChvcHRpb25fcmVjdXJzZV9zdWJtb2R1bGVzLm5yID4gMCkpIHsKQEAgLTc4Miw2ICs4MzIsMTYgQEAKIAkJaWYgKG9wdGlvbl92ZXJib3NpdHkgPCAwKQogCQkJYXJndl9hcnJheV9wdXNoKCZhcmdzLCAiLS1xdWlldCIpOwogCisJCWlmIChvcHRpb25fcmVtb3RlX3N1Ym1vZHVsZXMpIHsKKwkJCWFyZ3ZfYXJyYXlfcHVzaCgmYXJncywgIi0tcmVtb3RlIik7CisJCQlhcmd2X2FycmF5X3B1c2goJmFyZ3MsICItLW5vLWZldGNoIik7CisJCX0KKworCQlpZiAob3B0aW9uX3NpbmdsZV9icmFuY2ggPj0gMCkKKwkJCWFyZ3ZfYXJyYXlfcHVzaCgmYXJncywgb3B0aW9uX3NpbmdsZV9icmFuY2ggPworCQkJCQkgICAgICAgIi0tc2luZ2xlLWJyYW5jaCIgOgorCQkJCQkgICAgICAgIi0tbm8tc2luZ2xlLWJyYW5jaCIpOworCiAJCWVyciA9IHJ1bl9jb21tYW5kX3Zfb3B0KGFyZ3MuYXJndiwgUlVOX0dJVF9DTUQpOwogCQlhcmd2X2FycmF5X2NsZWFyKCZhcmdzKTsKIAl9CkBAIC04NzMsNyArOTMzLDcgQEAKIAlmcmVlKGFsdGVybmF0ZXMpOwogfQogCi1zdGF0aWMgaW50IGRpcl9leGlzdHMoY29uc3QgY2hhciAqcGF0aCkKK3N0YXRpYyBpbnQgcGF0aF9leGlzdHMoY29uc3QgY2hhciAqcGF0aCkKIHsKIAlzdHJ1Y3Qgc3RhdCBzYjsKIAlyZXR1cm4gIXN0YXQocGF0aCwgJnNiKTsKQEAgLTg5MCw3ICs5NTAsOCBAQAogCWNvbnN0IHN0cnVjdCByZWYgKm91cl9oZWFkX3BvaW50c19hdDsKIAlzdHJ1Y3QgcmVmICptYXBwZWRfcmVmczsKIAljb25zdCBzdHJ1Y3QgcmVmICpyZWY7Ci0Jc3RydWN0IHN0cmJ1ZiBrZXkgPSBTVFJCVUZfSU5JVCwgdmFsdWUgPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3Qgc3RyYnVmIGtleSA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBzdHJidWYgZGVmYXVsdF9yZWZzcGVjID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHN0cmJ1ZiBicmFuY2hfdG9wID0gU1RSQlVGX0lOSVQsIHJlZmxvZ19tc2cgPSBTVFJCVUZfSU5JVDsKIAlzdHJ1Y3QgdHJhbnNwb3J0ICp0cmFuc3BvcnQgPSBOVUxMOwogCWNvbnN0IGNoYXIgKnNyY19yZWZfcHJlZml4ID0gInJlZnMvaGVhZHMvIjsKQEAgLTg5OCwxMSArOTU5LDggQEAKIAlpbnQgZXJyID0gMCwgY29tcGxldGVfcmVmc19iZWZvcmVfZmV0Y2ggPSAxOwogCWludCBzdWJtb2R1bGVfcHJvZ3Jlc3M7CiAKLQlzdHJ1Y3QgcmVmc3BlYyBycyA9IFJFRlNQRUNfSU5JVF9GRVRDSDsKIAlzdHJ1Y3QgYXJndl9hcnJheSByZWZfcHJlZml4ZXMgPSBBUkdWX0FSUkFZX0lOSVQ7CiAKLQlmZXRjaF9pZl9taXNzaW5nID0gMDsKLQogCXBhY2tldF90cmFjZV9pZGVudGl0eSgiY2xvbmUiKTsKIAlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsIGJ1aWx0aW5fY2xvbmVfb3B0aW9ucywKIAkJCSAgICAgYnVpbHRpbl9jbG9uZV91c2FnZSwgMCk7CkBAIC05NTUsNyArMTAxMyw3IEBACiAJCWRpciA9IGd1ZXNzX2Rpcl9uYW1lKHJlcG9fbmFtZSwgaXNfYnVuZGxlLCBvcHRpb25fYmFyZSk7CiAJc3RyaXBfdHJhaWxpbmdfc2xhc2hlcyhkaXIpOwogCi0JZGVzdF9leGlzdHMgPSBkaXJfZXhpc3RzKGRpcik7CisJZGVzdF9leGlzdHMgPSBwYXRoX2V4aXN0cyhkaXIpOwogCWlmIChkZXN0X2V4aXN0cyAmJiAhaXNfZW1wdHlfZGlyKGRpcikpCiAJCWRpZShfKCJkZXN0aW5hdGlvbiBwYXRoICclcycgYWxyZWFkeSBleGlzdHMgYW5kIGlzIG5vdCAiCiAJCQkiYW4gZW1wdHkgZGlyZWN0b3J5LiIpLCBkaXIpOwpAQCAtOTY2LDcgKzEwMjQsNyBAQAogCQl3b3JrX3RyZWUgPSBOVUxMOwogCWVsc2UgewogCQl3b3JrX3RyZWUgPSBnZXRlbnYoIkdJVF9XT1JLX1RSRUUiKTsKLQkJaWYgKHdvcmtfdHJlZSAmJiBkaXJfZXhpc3RzKHdvcmtfdHJlZSkpCisJCWlmICh3b3JrX3RyZWUgJiYgcGF0aF9leGlzdHMod29ya190cmVlKSkKIAkJCWRpZShfKCJ3b3JraW5nIHRyZWUgJyVzJyBhbHJlYWR5IGV4aXN0cy4iKSwgd29ya190cmVlKTsKIAl9CiAKQEAgLTk5NCw3ICsxMDUyLDcgQEAKIAl9CiAKIAlpZiAocmVhbF9naXRfZGlyKSB7Ci0JCWlmIChkaXJfZXhpc3RzKHJlYWxfZ2l0X2RpcikpCisJCWlmIChwYXRoX2V4aXN0cyhyZWFsX2dpdF9kaXIpKQogCQkJanVua19naXRfZGlyX2ZsYWdzIHw9IFJFTU9WRV9ESVJfS0VFUF9UT1BMRVZFTDsKIAkJanVua19naXRfZGlyID0gcmVhbF9naXRfZGlyOwogCX0gZWxzZSB7CkBAIC0xMDY3LDcgKzExMjUsNiBAQAogCQlzdHJidWZfYWRkZigmYnJhbmNoX3RvcCwgInJlZnMvcmVtb3Rlcy8lcy8iLCBvcHRpb25fb3JpZ2luKTsKIAl9CiAKLQlzdHJidWZfYWRkZigmdmFsdWUsICIrJXMqOiVzKiIsIHNyY19yZWZfcHJlZml4LCBicmFuY2hfdG9wLmJ1Zik7CiAJc3RyYnVmX2FkZGYoJmtleSwgInJlbW90ZS4lcy51cmwiLCBvcHRpb25fb3JpZ2luKTsKIAlnaXRfY29uZmlnX3NldChrZXkuYnVmLCByZXBvKTsKIAlzdHJidWZfcmVzZXQoJmtleSk7CkBAIC0xMDgxLDExICsxMTM4LDE1IEBACiAJaWYgKG9wdGlvbl9yZXF1aXJlZF9yZWZlcmVuY2UubnIgfHwgb3B0aW9uX29wdGlvbmFsX3JlZmVyZW5jZS5ucikKIAkJc2V0dXBfcmVmZXJlbmNlKCk7CiAKLQlyZWZzcGVjX2FwcGVuZCgmcnMsIHZhbHVlLmJ1Zik7Ci0KLQlzdHJidWZfcmVzZXQoJnZhbHVlKTsKKwlpZiAob3B0aW9uX3NwYXJzZV9jaGVja291dCAmJiBnaXRfc3BhcnNlX2NoZWNrb3V0X2luaXQoZGlyKSkKKwkJcmV0dXJuIDE7CiAKIAlyZW1vdGUgPSByZW1vdGVfZ2V0KG9wdGlvbl9vcmlnaW4pOworCisJc3RyYnVmX2FkZGYoJmRlZmF1bHRfcmVmc3BlYywgIislcyo6JXMqIiwgc3JjX3JlZl9wcmVmaXgsCisJCSAgICBicmFuY2hfdG9wLmJ1Zik7CisJcmVmc3BlY19hcHBlbmQoJnJlbW90ZS0+ZmV0Y2gsIGRlZmF1bHRfcmVmc3BlYy5idWYpOworCiAJdHJhbnNwb3J0ID0gdHJhbnNwb3J0X2dldChyZW1vdGUsIHJlbW90ZS0+dXJsWzBdKTsKIAl0cmFuc3BvcnRfc2V0X3ZlcmJvc2l0eSh0cmFuc3BvcnQsIG9wdGlvbl92ZXJib3NpdHksIG9wdGlvbl9wcm9ncmVzcyk7CiAJdHJhbnNwb3J0LT5mYW1pbHkgPSBmYW1pbHk7CkBAIC0xMTI5LDkgKzExOTAsMTQgQEAKIAkJdHJhbnNwb3J0X3NldF9vcHRpb24odHJhbnNwb3J0LCBUUkFOU19PUFRfVVBMT0FEUEFDSywKIAkJCQkgICAgIG9wdGlvbl91cGxvYWRfcGFjayk7CiAKKwlpZiAoc2VydmVyX29wdGlvbnMubnIpCisJCXRyYW5zcG9ydC0+c2VydmVyX29wdGlvbnMgPSAmc2VydmVyX29wdGlvbnM7CisKIAlpZiAoZmlsdGVyX29wdGlvbnMuY2hvaWNlKSB7CisJCWNvbnN0IGNoYXIgKnNwZWMgPQorCQkJZXhwYW5kX2xpc3Rfb2JqZWN0c19maWx0ZXJfc3BlYygmZmlsdGVyX29wdGlvbnMpOwogCQl0cmFuc3BvcnRfc2V0X29wdGlvbih0cmFuc3BvcnQsIFRSQU5TX09QVF9MSVNUX09CSkVDVFNfRklMVEVSLAotCQkJCSAgICAgZmlsdGVyX29wdGlvbnMuZmlsdGVyX3NwZWMpOworCQkJCSAgICAgc3BlYyk7CiAJCXRyYW5zcG9ydF9zZXRfb3B0aW9uKHRyYW5zcG9ydCwgVFJBTlNfT1BUX0ZST01fUFJPTUlTT1IsICIxIik7CiAJfQogCkBAIC0xMTQwLDcgKzEyMDYsNyBAQAogCiAKIAlhcmd2X2FycmF5X3B1c2goJnJlZl9wcmVmaXhlcywgIkhFQUQiKTsKLQlyZWZzcGVjX3JlZl9wcmVmaXhlcygmcnMsICZyZWZfcHJlZml4ZXMpOworCXJlZnNwZWNfcmVmX3ByZWZpeGVzKCZyZW1vdGUtPmZldGNoLCAmcmVmX3ByZWZpeGVzKTsKIAlpZiAob3B0aW9uX2JyYW5jaCkKIAkJZXhwYW5kX3JlZl9wcmVmaXgoJnJlZl9wcmVmaXhlcywgb3B0aW9uX2JyYW5jaCk7CiAJaWYgKCFvcHRpb25fbm9fdGFncykKQEAgLTExNDksNyArMTIxNSw3IEBACiAJcmVmcyA9IHRyYW5zcG9ydF9nZXRfcmVtb3RlX3JlZnModHJhbnNwb3J0LCAmcmVmX3ByZWZpeGVzKTsKIAogCWlmIChyZWZzKSB7Ci0JCW1hcHBlZF9yZWZzID0gd2FudGVkX3BlZXJfcmVmcyhyZWZzLCAmcnMuaXRlbXNbMF0pOworCQltYXBwZWRfcmVmcyA9IHdhbnRlZF9wZWVyX3JlZnMocmVmcywgJnJlbW90ZS0+ZmV0Y2gpOwogCQkvKgogCQkgKiB0cmFuc3BvcnRfZ2V0X3JlbW90ZV9yZWZzKCkgbWF5IHJldHVybiByZWZzIHdpdGggbnVsbCBzaGEtMQogCQkgKiBpbiBtYXBwZWRfcmVmcyAoc2VlIHN0cnVjdCB0cmFuc3BvcnQtPmdldF9yZWZzX2xpc3QKQEAgLTEyMDQsNyArMTI3MCw3IEBACiAJCQlyZW1vdGVfaGVhZF9wb2ludHNfYXQsICZicmFuY2hfdG9wKTsKIAogCWlmIChmaWx0ZXJfb3B0aW9ucy5jaG9pY2UpCi0JCXBhcnRpYWxfY2xvbmVfcmVnaXN0ZXIoIm9yaWdpbiIsICZmaWx0ZXJfb3B0aW9ucyk7CisJCXBhcnRpYWxfY2xvbmVfcmVnaXN0ZXIob3B0aW9uX29yaWdpbiwgJmZpbHRlcl9vcHRpb25zKTsKIAogCWlmIChpc19sb2NhbCkKIAkJY2xvbmVfbG9jYWwocGF0aCwgZ2l0X2Rpcik7CkBAIC0xMjEzLDcgKzEyNzksNyBAQAogCiAJdXBkYXRlX3JlbW90ZV9yZWZzKHJlZnMsIG1hcHBlZF9yZWZzLCByZW1vdGVfaGVhZF9wb2ludHNfYXQsCiAJCQkgICBicmFuY2hfdG9wLmJ1ZiwgcmVmbG9nX21zZy5idWYsIHRyYW5zcG9ydCwKLQkJCSAgICFpc19sb2NhbCk7CisJCQkgICAhaXNfbG9jYWwsIGZpbHRlcl9vcHRpb25zLmNob2ljZSk7CiAKIAl1cGRhdGVfaGVhZChvdXJfaGVhZF9wb2ludHNfYXQsIHJlbW90ZV9oZWFkLCByZWZsb2dfbXNnLmJ1Zik7CiAKQEAgLTEyMjksMjEgKzEyOTUsMTkgQEAKIAl0cmFuc3BvcnRfZGlzY29ubmVjdCh0cmFuc3BvcnQpOwogCiAJaWYgKG9wdGlvbl9kaXNzb2NpYXRlKSB7Ci0JCWNsb3NlX2FsbF9wYWNrcyh0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cyk7CisJCWNsb3NlX29iamVjdF9zdG9yZSh0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cyk7CiAJCWRpc3NvY2lhdGVfZnJvbV9yZWZlcmVuY2VzKCk7CiAJfQogCiAJanVua19tb2RlID0gSlVOS19MRUFWRV9SRVBPOwotCWZldGNoX2lmX21pc3NpbmcgPSAxOwogCWVyciA9IGNoZWNrb3V0KHN1Ym1vZHVsZV9wcm9ncmVzcyk7CiAKIAlzdHJidWZfcmVsZWFzZSgmcmVmbG9nX21zZyk7CiAJc3RyYnVmX3JlbGVhc2UoJmJyYW5jaF90b3ApOwogCXN0cmJ1Zl9yZWxlYXNlKCZrZXkpOwotCXN0cmJ1Zl9yZWxlYXNlKCZ2YWx1ZSk7CisJc3RyYnVmX3JlbGVhc2UoJmRlZmF1bHRfcmVmc3BlYyk7CiAJanVua19tb2RlID0gSlVOS19MRUFWRV9BTEw7CiAKLQlyZWZzcGVjX2NsZWFyKCZycyk7CiAJYXJndl9hcnJheV9jbGVhcigmcmVmX3ByZWZpeGVzKTsKIAlyZXR1cm4gZXJyOwogfQpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9jb2x1bW4uYyBiL2J1aWx0aW4vY29sdW1uLmMKaW5kZXggNTIyOGNjZi4uZTgxNWUxNCAxMDA2NDQKLS0tIGEvYnVpbHRpbi9jb2x1bW4uYworKysgYi9idWlsdGluL2NvbHVtbi5jCkBAIC00Myw3ICs0Myw3IEBACiAKIAltZW1zZXQoJmNvcHRzLCAwLCBzaXplb2YoY29wdHMpKTsKIAljb3B0cy5wYWRkaW5nID0gMTsKLQlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCAiIiwgb3B0aW9ucywgYnVpbHRpbl9jb2x1bW5fdXNhZ2UsIDApOworCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywgYnVpbHRpbl9jb2x1bW5fdXNhZ2UsIDApOwogCWlmIChhcmdjKQogCQl1c2FnZV93aXRoX29wdGlvbnMoYnVpbHRpbl9jb2x1bW5fdXNhZ2UsIG9wdGlvbnMpOwogCWlmIChyZWFsX2NvbW1hbmQgfHwgY29tbWFuZCkgewpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9jb21taXQtZ3JhcGguYyBiL2J1aWx0aW4vY29tbWl0LWdyYXBoLmMKaW5kZXggYzAyYTNmMS4uZDFhYjY2MiAxMDA2NDQKLS0tIGEvYnVpbHRpbi9jb21taXQtZ3JhcGguYworKysgYi9idWlsdGluL2NvbW1pdC1ncmFwaC5jCkBAIC01LDI3ICs1LDIxIEBACiAjaW5jbHVkZSAicGFyc2Utb3B0aW9ucy5oIgogI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKICNpbmNsdWRlICJjb21taXQtZ3JhcGguaCIKKyNpbmNsdWRlICJvYmplY3Qtc3RvcmUuaCIKIAogc3RhdGljIGNoYXIgY29uc3QgKiBjb25zdCBidWlsdGluX2NvbW1pdF9ncmFwaF91c2FnZVtdID0gewotCU5fKCJnaXQgY29tbWl0LWdyYXBoIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIiksCi0JTl8oImdpdCBjb21taXQtZ3JhcGggcmVhZCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIpLAotCU5fKCJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIpLAotCU5fKCJnaXQgY29tbWl0LWdyYXBoIHdyaXRlIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIFstLWFwcGVuZF0gWy0tcmVhY2hhYmxlfC0tc3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSIpLAorCU5fKCJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1zaGFsbG93XSBbLS1bbm8tXXByb2dyZXNzXSIpLAorCU5fKCJnaXQgY29tbWl0LWdyYXBoIHdyaXRlIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIFstLWFwcGVuZHwtLXNwbGl0XSBbLS1yZWFjaGFibGV8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIFstLVtuby1dcHJvZ3Jlc3NdIDxzcGxpdCBvcHRpb25zPiIpLAogCU5VTEwKIH07CiAKIHN0YXRpYyBjb25zdCBjaGFyICogY29uc3QgYnVpbHRpbl9jb21taXRfZ3JhcGhfdmVyaWZ5X3VzYWdlW10gPSB7Ci0JTl8oImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPG9iamRpcj5dIiksCi0JTlVMTAotfTsKLQotc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBidWlsdGluX2NvbW1pdF9ncmFwaF9yZWFkX3VzYWdlW10gPSB7Ci0JTl8oImdpdCBjb21taXQtZ3JhcGggcmVhZCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIpLAorCU5fKCJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1zaGFsbG93XSBbLS1bbm8tXXByb2dyZXNzXSIpLAogCU5VTEwKIH07CiAKIHN0YXRpYyBjb25zdCBjaGFyICogY29uc3QgYnVpbHRpbl9jb21taXRfZ3JhcGhfd3JpdGVfdXNhZ2VbXSA9IHsKLQlOXygiZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1hcHBlbmRdIFstLXJlYWNoYWJsZXwtLXN0ZGluLXBhY2tzfC0tc3RkaW4tY29tbWl0c10iKSwKKwlOXygiZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1hcHBlbmR8LS1zcGxpdF0gWy0tcmVhY2hhYmxlfC0tc3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSBbLS1bbm8tXXByb2dyZXNzXSA8c3BsaXQgb3B0aW9ucz4iKSwKIAlOVUxMCiB9OwogCkBAIC0zNSw5NyArMjksOTkgQEAKIAlpbnQgc3RkaW5fcGFja3M7CiAJaW50IHN0ZGluX2NvbW1pdHM7CiAJaW50IGFwcGVuZDsKKwlpbnQgc3BsaXQ7CisJaW50IHNoYWxsb3c7CisJaW50IHByb2dyZXNzOwogfSBvcHRzOwogCitzdGF0aWMgc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKmZpbmRfb2RiKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQkgY29uc3QgY2hhciAqb2JqX2RpcikKK3sKKwlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiOworCWNoYXIgKm9ial9kaXJfcmVhbCA9IHJlYWxfcGF0aGR1cChvYmpfZGlyLCAxKTsKKwlzdHJ1Y3Qgc3RyYnVmIG9kYl9wYXRoX3JlYWwgPSBTVFJCVUZfSU5JVDsKKworCXByZXBhcmVfYWx0X29kYihyKTsKKwlmb3IgKG9kYiA9IHItPm9iamVjdHMtPm9kYjsgb2RiOyBvZGIgPSBvZGItPm5leHQpIHsKKwkJc3RyYnVmX3JlYWxwYXRoKCZvZGJfcGF0aF9yZWFsLCBvZGItPnBhdGgsIDEpOworCQlpZiAoIXN0cmNtcChvYmpfZGlyX3JlYWwsIG9kYl9wYXRoX3JlYWwuYnVmKSkKKwkJCWJyZWFrOworCX0KKworCWZyZWUob2JqX2Rpcl9yZWFsKTsKKwlzdHJidWZfcmVsZWFzZSgmb2RiX3BhdGhfcmVhbCk7CisKKwlpZiAoIW9kYikKKwkJZGllKF8oImNvdWxkIG5vdCBmaW5kIG9iamVjdCBkaXJlY3RvcnkgbWF0Y2hpbmcgJXMiKSwgb2JqX2Rpcik7CisJcmV0dXJuIG9kYjsKK30KIAogc3RhdGljIGludCBncmFwaF92ZXJpZnkoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQogewogCXN0cnVjdCBjb21taXRfZ3JhcGggKmdyYXBoID0gTlVMTDsKKwlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiID0gTlVMTDsKIAljaGFyICpncmFwaF9uYW1lOworCWludCBvcGVuX29rOworCWludCBmZDsKKwlzdHJ1Y3Qgc3RhdCBzdDsKKwlpbnQgZmxhZ3MgPSAwOwogCiAJc3RhdGljIHN0cnVjdCBvcHRpb24gYnVpbHRpbl9jb21taXRfZ3JhcGhfdmVyaWZ5X29wdGlvbnNbXSA9IHsKIAkJT1BUX1NUUklORygwLCAib2JqZWN0LWRpciIsICZvcHRzLm9ial9kaXIsCiAJCQkgICBOXygiZGlyIiksCiAJCQkgICBOXygiVGhlIG9iamVjdCBkaXJlY3RvcnkgdG8gc3RvcmUgdGhlIGdyYXBoIikpLAorCQlPUFRfQk9PTCgwLCAic2hhbGxvdyIsICZvcHRzLnNoYWxsb3csCisJCQkgTl8oImlmIHRoZSBjb21taXQtZ3JhcGggaXMgc3BsaXQsIG9ubHkgdmVyaWZ5IHRoZSB0aXAgZmlsZSIpKSwKKwkJT1BUX0JPT0woMCwgInByb2dyZXNzIiwgJm9wdHMucHJvZ3Jlc3MsIE5fKCJmb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciKSksCiAJCU9QVF9FTkQoKSwKIAl9OwogCisJdHJhY2UyX2NtZF9tb2RlKCJ2ZXJpZnkiKTsKKworCW9wdHMucHJvZ3Jlc3MgPSBpc2F0dHkoMik7CiAJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgTlVMTCwKIAkJCSAgICAgYnVpbHRpbl9jb21taXRfZ3JhcGhfdmVyaWZ5X29wdGlvbnMsCiAJCQkgICAgIGJ1aWx0aW5fY29tbWl0X2dyYXBoX3ZlcmlmeV91c2FnZSwgMCk7CiAKIAlpZiAoIW9wdHMub2JqX2RpcikKIAkJb3B0cy5vYmpfZGlyID0gZ2V0X29iamVjdF9kaXJlY3RvcnkoKTsKKwlpZiAob3B0cy5zaGFsbG93KQorCQlmbGFncyB8PSBDT01NSVRfR1JBUEhfVkVSSUZZX1NIQUxMT1c7CisJaWYgKG9wdHMucHJvZ3Jlc3MpCisJCWZsYWdzIHw9IENPTU1JVF9HUkFQSF9XUklURV9QUk9HUkVTUzsKIAotCWdyYXBoX25hbWUgPSBnZXRfY29tbWl0X2dyYXBoX2ZpbGVuYW1lKG9wdHMub2JqX2Rpcik7Ci0JZ3JhcGggPSBsb2FkX2NvbW1pdF9ncmFwaF9vbmUoZ3JhcGhfbmFtZSk7Ci0JRlJFRV9BTkRfTlVMTChncmFwaF9uYW1lKTsKLQotCWlmICghZ3JhcGgpCi0JCXJldHVybiAwOwotCi0JVU5MRUFLKGdyYXBoKTsKLQlyZXR1cm4gdmVyaWZ5X2NvbW1pdF9ncmFwaCh0aGVfcmVwb3NpdG9yeSwgZ3JhcGgpOwotfQotCi1zdGF0aWMgaW50IGdyYXBoX3JlYWQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQotewotCXN0cnVjdCBjb21taXRfZ3JhcGggKmdyYXBoID0gTlVMTDsKLQljaGFyICpncmFwaF9uYW1lOwotCi0Jc3RhdGljIHN0cnVjdCBvcHRpb24gYnVpbHRpbl9jb21taXRfZ3JhcGhfcmVhZF9vcHRpb25zW10gPSB7Ci0JCU9QVF9TVFJJTkcoMCwgIm9iamVjdC1kaXIiLCAmb3B0cy5vYmpfZGlyLAotCQkJTl8oImRpciIpLAotCQkJTl8oIlRoZSBvYmplY3QgZGlyZWN0b3J5IHRvIHN0b3JlIHRoZSBncmFwaCIpKSwKLQkJT1BUX0VORCgpLAotCX07Ci0KLQlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBOVUxMLAotCQkJICAgICBidWlsdGluX2NvbW1pdF9ncmFwaF9yZWFkX29wdGlvbnMsCi0JCQkgICAgIGJ1aWx0aW5fY29tbWl0X2dyYXBoX3JlYWRfdXNhZ2UsIDApOwotCi0JaWYgKCFvcHRzLm9ial9kaXIpCi0JCW9wdHMub2JqX2RpciA9IGdldF9vYmplY3RfZGlyZWN0b3J5KCk7Ci0KLQlncmFwaF9uYW1lID0gZ2V0X2NvbW1pdF9ncmFwaF9maWxlbmFtZShvcHRzLm9ial9kaXIpOwotCWdyYXBoID0gbG9hZF9jb21taXRfZ3JhcGhfb25lKGdyYXBoX25hbWUpOwotCi0JaWYgKCFncmFwaCkKLQkJZGllKCJncmFwaCBmaWxlICVzIGRvZXMgbm90IGV4aXN0IiwgZ3JhcGhfbmFtZSk7CisJb2RiID0gZmluZF9vZGIodGhlX3JlcG9zaXRvcnksIG9wdHMub2JqX2Rpcik7CisJZ3JhcGhfbmFtZSA9IGdldF9jb21taXRfZ3JhcGhfZmlsZW5hbWUob2RiKTsKKwlvcGVuX29rID0gb3Blbl9jb21taXRfZ3JhcGgoZ3JhcGhfbmFtZSwgJmZkLCAmc3QpOworCWlmICghb3Blbl9vayAmJiBlcnJubyAhPSBFTk9FTlQpCisJCWRpZV9lcnJubyhfKCJDb3VsZCBub3Qgb3BlbiBjb21taXQtZ3JhcGggJyVzJyIpLCBncmFwaF9uYW1lKTsKIAogCUZSRUVfQU5EX05VTEwoZ3JhcGhfbmFtZSk7CiAKLQlwcmludGYoImhlYWRlcjogJTA4eCAlZCAlZCAlZCAlZFxuIiwKLQkJbnRvaGwoKih1aW50MzJfdCopZ3JhcGgtPmRhdGEpLAotCQkqKHVuc2lnbmVkIGNoYXIqKShncmFwaC0+ZGF0YSArIDQpLAotCQkqKHVuc2lnbmVkIGNoYXIqKShncmFwaC0+ZGF0YSArIDUpLAotCQkqKHVuc2lnbmVkIGNoYXIqKShncmFwaC0+ZGF0YSArIDYpLAotCQkqKHVuc2lnbmVkIGNoYXIqKShncmFwaC0+ZGF0YSArIDcpKTsKLQlwcmludGYoIm51bV9jb21taXRzOiAldVxuIiwgZ3JhcGgtPm51bV9jb21taXRzKTsKLQlwcmludGYoImNodW5rczoiKTsKKwlpZiAob3Blbl9vaykKKwkJZ3JhcGggPSBsb2FkX2NvbW1pdF9ncmFwaF9vbmVfZmRfc3QoZmQsICZzdCwgb2RiKTsKKwllbHNlCisJCWdyYXBoID0gcmVhZF9jb21taXRfZ3JhcGhfb25lKHRoZV9yZXBvc2l0b3J5LCBvZGIpOwogCi0JaWYgKGdyYXBoLT5jaHVua19vaWRfZmFub3V0KQotCQlwcmludGYoIiBvaWRfZmFub3V0Iik7Ci0JaWYgKGdyYXBoLT5jaHVua19vaWRfbG9va3VwKQotCQlwcmludGYoIiBvaWRfbG9va3VwIik7Ci0JaWYgKGdyYXBoLT5jaHVua19jb21taXRfZGF0YSkKLQkJcHJpbnRmKCIgY29tbWl0X21ldGFkYXRhIik7Ci0JaWYgKGdyYXBoLT5jaHVua19sYXJnZV9lZGdlcykKLQkJcHJpbnRmKCIgbGFyZ2VfZWRnZXMiKTsKLQlwcmludGYoIlxuIik7CisJLyogUmV0dXJuIGZhaWx1cmUgaWYgb3Blbl9vayBwcmVkaWN0ZWQgc3VjY2VzcyAqLworCWlmICghZ3JhcGgpCisJCXJldHVybiAhIW9wZW5fb2s7CiAKIAlVTkxFQUsoZ3JhcGgpOwotCi0JcmV0dXJuIDA7CisJcmV0dXJuIHZlcmlmeV9jb21taXRfZ3JhcGgodGhlX3JlcG9zaXRvcnksIGdyYXBoLCBmbGFncyk7CiB9CiAKIGV4dGVybiBpbnQgcmVhZF9yZXBsYWNlX3JlZnM7CitzdGF0aWMgc3RydWN0IHNwbGl0X2NvbW1pdF9ncmFwaF9vcHRzIHNwbGl0X29wdHM7CiAKIHN0YXRpYyBpbnQgZ3JhcGhfd3JpdGUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQogewogCXN0cnVjdCBzdHJpbmdfbGlzdCAqcGFja19pbmRleGVzID0gTlVMTDsKIAlzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmNvbW1pdF9oZXggPSBOVUxMOworCXN0cnVjdCBvYmplY3RfZGlyZWN0b3J5ICpvZGIgPSBOVUxMOwogCXN0cnVjdCBzdHJpbmdfbGlzdCBsaW5lczsKKwlpbnQgcmVzdWx0ID0gMDsKKwllbnVtIGNvbW1pdF9ncmFwaF93cml0ZV9mbGFncyBmbGFncyA9IDA7CiAKIAlzdGF0aWMgc3RydWN0IG9wdGlvbiBidWlsdGluX2NvbW1pdF9ncmFwaF93cml0ZV9vcHRpb25zW10gPSB7CiAJCU9QVF9TVFJJTkcoMCwgIm9iamVjdC1kaXIiLCAmb3B0cy5vYmpfZGlyLApAQCAtMTM5LDkgKzEzNSwyNSBAQAogCQkJTl8oInN0YXJ0IHdhbGsgYXQgY29tbWl0cyBsaXN0ZWQgYnkgc3RkaW4iKSksCiAJCU9QVF9CT09MKDAsICJhcHBlbmQiLCAmb3B0cy5hcHBlbmQsCiAJCQlOXygiaW5jbHVkZSBhbGwgY29tbWl0cyBhbHJlYWR5IGluIHRoZSBjb21taXQtZ3JhcGggZmlsZSIpKSwKKwkJT1BUX0JPT0woMCwgInByb2dyZXNzIiwgJm9wdHMucHJvZ3Jlc3MsIE5fKCJmb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciKSksCisJCU9QVF9CT09MKDAsICJzcGxpdCIsICZvcHRzLnNwbGl0LAorCQkJTl8oImFsbG93IHdyaXRpbmcgYW4gaW5jcmVtZW50YWwgY29tbWl0LWdyYXBoIGZpbGUiKSksCisJCU9QVF9JTlRFR0VSKDAsICJtYXgtY29tbWl0cyIsICZzcGxpdF9vcHRzLm1heF9jb21taXRzLAorCQkJTl8oIm1heGltdW0gbnVtYmVyIG9mIGNvbW1pdHMgaW4gYSBub24tYmFzZSBzcGxpdCBjb21taXQtZ3JhcGgiKSksCisJCU9QVF9JTlRFR0VSKDAsICJzaXplLW11bHRpcGxlIiwgJnNwbGl0X29wdHMuc2l6ZV9tdWx0aXBsZSwKKwkJCU5fKCJtYXhpbXVtIHJhdGlvIGJldHdlZW4gdHdvIGxldmVscyBvZiBhIHNwbGl0IGNvbW1pdC1ncmFwaCIpKSwKKwkJT1BUX0VYUElSWV9EQVRFKDAsICJleHBpcmUtdGltZSIsICZzcGxpdF9vcHRzLmV4cGlyZV90aW1lLAorCQkJTl8oIm1heGltdW0gbnVtYmVyIG9mIGNvbW1pdHMgaW4gYSBub24tYmFzZSBzcGxpdCBjb21taXQtZ3JhcGgiKSksCiAJCU9QVF9FTkQoKSwKIAl9OwogCisJb3B0cy5wcm9ncmVzcyA9IGlzYXR0eSgyKTsKKwlzcGxpdF9vcHRzLnNpemVfbXVsdGlwbGUgPSAyOworCXNwbGl0X29wdHMubWF4X2NvbW1pdHMgPSAwOworCXNwbGl0X29wdHMuZXhwaXJlX3RpbWUgPSAwOworCisJdHJhY2UyX2NtZF9tb2RlKCJ3cml0ZSIpOworCiAJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgTlVMTCwKIAkJCSAgICAgYnVpbHRpbl9jb21taXRfZ3JhcGhfd3JpdGVfb3B0aW9ucywKIAkJCSAgICAgYnVpbHRpbl9jb21taXRfZ3JhcGhfd3JpdGVfdXNhZ2UsIDApOwpAQCAtMTUwLDExICsxNjIsMTkgQEAKIAkJZGllKF8oInVzZSBhdCBtb3N0IG9uZSBvZiAtLXJlYWNoYWJsZSwgLS1zdGRpbi1jb21taXRzLCBvciAtLXN0ZGluLXBhY2tzIikpOwogCWlmICghb3B0cy5vYmpfZGlyKQogCQlvcHRzLm9ial9kaXIgPSBnZXRfb2JqZWN0X2RpcmVjdG9yeSgpOworCWlmIChvcHRzLmFwcGVuZCkKKwkJZmxhZ3MgfD0gQ09NTUlUX0dSQVBIX1dSSVRFX0FQUEVORDsKKwlpZiAob3B0cy5zcGxpdCkKKwkJZmxhZ3MgfD0gQ09NTUlUX0dSQVBIX1dSSVRFX1NQTElUOworCWlmIChvcHRzLnByb2dyZXNzKQorCQlmbGFncyB8PSBDT01NSVRfR1JBUEhfV1JJVEVfUFJPR1JFU1M7CiAKIAlyZWFkX3JlcGxhY2VfcmVmcyA9IDA7CisJb2RiID0gZmluZF9vZGIodGhlX3JlcG9zaXRvcnksIG9wdHMub2JqX2Rpcik7CiAKIAlpZiAob3B0cy5yZWFjaGFibGUpIHsKLQkJd3JpdGVfY29tbWl0X2dyYXBoX3JlYWNoYWJsZShvcHRzLm9ial9kaXIsIG9wdHMuYXBwZW5kLCAxKTsKKwkJaWYgKHdyaXRlX2NvbW1pdF9ncmFwaF9yZWFjaGFibGUob2RiLCBmbGFncywgJnNwbGl0X29wdHMpKQorCQkJcmV0dXJuIDE7CiAJCXJldHVybiAwOwogCX0KIApAQCAtMTY3LDIwICsxODcsMjMgQEAKIAogCQlpZiAob3B0cy5zdGRpbl9wYWNrcykKIAkJCXBhY2tfaW5kZXhlcyA9ICZsaW5lczsKLQkJaWYgKG9wdHMuc3RkaW5fY29tbWl0cykKKwkJaWYgKG9wdHMuc3RkaW5fY29tbWl0cykgewogCQkJY29tbWl0X2hleCA9ICZsaW5lczsKKwkJCWZsYWdzIHw9IENPTU1JVF9HUkFQSF9XUklURV9DSEVDS19PSURTOworCQl9CiAKIAkJVU5MRUFLKGJ1Zik7CiAJfQogCi0Jd3JpdGVfY29tbWl0X2dyYXBoKG9wdHMub2JqX2RpciwKLQkJCSAgIHBhY2tfaW5kZXhlcywKLQkJCSAgIGNvbW1pdF9oZXgsCi0JCQkgICBvcHRzLmFwcGVuZCwKLQkJCSAgIDEpOworCWlmICh3cml0ZV9jb21taXRfZ3JhcGgob2RiLAorCQkJICAgICAgIHBhY2tfaW5kZXhlcywKKwkJCSAgICAgICBjb21taXRfaGV4LAorCQkJICAgICAgIGZsYWdzLAorCQkJICAgICAgICZzcGxpdF9vcHRzKSkKKwkJcmVzdWx0ID0gMTsKIAogCVVOTEVBSyhsaW5lcyk7Ci0JcmV0dXJuIDA7CisJcmV0dXJuIHJlc3VsdDsKIH0KIAogaW50IGNtZF9jb21taXRfZ3JhcGgoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCkBAIC0yMDIsOSArMjI1LDkgQEAKIAkJCSAgICAgYnVpbHRpbl9jb21taXRfZ3JhcGhfdXNhZ2UsCiAJCQkgICAgIFBBUlNFX09QVF9TVE9QX0FUX05PTl9PUFRJT04pOwogCisJc2F2ZV9jb21taXRfYnVmZmVyID0gMDsKKwogCWlmIChhcmdjID4gMCkgewotCQlpZiAoIXN0cmNtcChhcmd2WzBdLCAicmVhZCIpKQotCQkJcmV0dXJuIGdyYXBoX3JlYWQoYXJnYywgYXJndik7CiAJCWlmICghc3RyY21wKGFyZ3ZbMF0sICJ2ZXJpZnkiKSkKIAkJCXJldHVybiBncmFwaF92ZXJpZnkoYXJnYywgYXJndik7CiAJCWlmICghc3RyY21wKGFyZ3ZbMF0sICJ3cml0ZSIpKQpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9jb21taXQtdHJlZS5jIGIvYnVpbHRpbi9jb21taXQtdHJlZS5jCmluZGV4IDllYzM2YTguLmI4NjZkODMgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vY29tbWl0LXRyZWUuYworKysgYi9idWlsdGluL2NvbW1pdC10cmVlLmMKQEAgLTEyLDggKzEyLDEzIEBACiAjaW5jbHVkZSAiYnVpbHRpbi5oIgogI2luY2x1ZGUgInV0ZjguaCIKICNpbmNsdWRlICJncGctaW50ZXJmYWNlLmgiCisjaW5jbHVkZSAicGFyc2Utb3B0aW9ucy5oIgogCi1zdGF0aWMgY29uc3QgY2hhciBjb21taXRfdHJlZV91c2FnZVtdID0gImdpdCBjb21taXQtdHJlZSBbKC1wIDxzaGExPikuLi5dIFstU1s8a2V5aWQ+XV0gWy1tIDxtZXNzYWdlPl0gWy1GIDxmaWxlPl0gPHNoYTE+IjsKK3N0YXRpYyBjb25zdCBjaGFyICogY29uc3QgY29tbWl0X3RyZWVfdXNhZ2VbXSA9IHsKKwlOXygiZ2l0IGNvbW1pdC10cmVlIFsoLXAgPHBhcmVudD4pLi4uXSBbLVNbPGtleWlkPl1dIFsoLW0gPG1lc3NhZ2U+KS4uLl0gIgorCQkiWygtRiA8ZmlsZT4pLi4uXSA8dHJlZT4iKSwKKwlOVUxMCit9OwogCiBzdGF0aWMgY29uc3QgY2hhciAqc2lnbl9jb21taXQ7CiAKQEAgLTIzLDcgKzI4LDcgQEAKIAlzdHJ1Y3QgY29tbWl0X2xpc3QgKnBhcmVudHM7CiAJZm9yIChwYXJlbnRzID0gKnBhcmVudHNfcDsgcGFyZW50czsgcGFyZW50cyA9IHBhcmVudHMtPm5leHQpIHsKIAkJaWYgKHBhcmVudHMtPml0ZW0gPT0gcGFyZW50KSB7Ci0JCQllcnJvcigiZHVwbGljYXRlIHBhcmVudCAlcyBpZ25vcmVkIiwgb2lkX3RvX2hleChvaWQpKTsKKwkJCWVycm9yKF8oImR1cGxpY2F0ZSBwYXJlbnQgJXMgaWdub3JlZCIpLCBvaWRfdG9faGV4KG9pZCkpOwogCQkJcmV0dXJuOwogCQl9CiAJCXBhcmVudHNfcCA9ICZwYXJlbnRzLT5uZXh0OwpAQCAtMzksODUgKzQ0LDEwMCBAQAogCXJldHVybiBnaXRfZGVmYXVsdF9jb25maWcodmFyLCB2YWx1ZSwgY2IpOwogfQogCitzdGF0aWMgaW50IHBhcnNlX3BhcmVudF9hcmdfY2FsbGJhY2soY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQljb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKK3sKKwlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKKwlzdHJ1Y3QgY29tbWl0X2xpc3QgKipwYXJlbnRzID0gb3B0LT52YWx1ZTsKKworCUJVR19PTl9PUFRfTkVHX05PQVJHKHVuc2V0LCBhcmcpOworCisJaWYgKGdldF9vaWRfY29tbWl0KGFyZywgJm9pZCkpCisJCWRpZShfKCJub3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIpLCBhcmcpOworCisJYXNzZXJ0X29pZF90eXBlKCZvaWQsIE9CSl9DT01NSVQpOworCW5ld19wYXJlbnQobG9va3VwX2NvbW1pdCh0aGVfcmVwb3NpdG9yeSwgJm9pZCksIHBhcmVudHMpOworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IHBhcnNlX21lc3NhZ2VfYXJnX2NhbGxiYWNrKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKKwkJY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IHN0cmJ1ZiAqYnVmID0gb3B0LT52YWx1ZTsKKworCUJVR19PTl9PUFRfTkVHX05PQVJHKHVuc2V0LCBhcmcpOworCisJaWYgKGJ1Zi0+bGVuKQorCQlzdHJidWZfYWRkY2goYnVmLCAnXG4nKTsKKwlzdHJidWZfYWRkc3RyKGJ1ZiwgYXJnKTsKKwlzdHJidWZfY29tcGxldGVfbGluZShidWYpOworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgcGFyc2VfZmlsZV9hcmdfY2FsbGJhY2soY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQljb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKK3sKKwlpbnQgZmQ7CisJc3RydWN0IHN0cmJ1ZiAqYnVmID0gb3B0LT52YWx1ZTsKKworCUJVR19PTl9PUFRfTkVHX05PQVJHKHVuc2V0LCBhcmcpOworCisJaWYgKGJ1Zi0+bGVuKQorCQlzdHJidWZfYWRkY2goYnVmLCAnXG4nKTsKKwlpZiAoIXN0cmNtcChhcmcsICItIikpCisJCWZkID0gMDsKKwllbHNlIHsKKwkJZmQgPSBvcGVuKGFyZywgT19SRE9OTFkpOworCQlpZiAoZmQgPCAwKQorCQkJZGllX2Vycm5vKF8oImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIG9wZW4gJyVzJyIpLCBhcmcpOworCX0KKwlpZiAoc3RyYnVmX3JlYWQoYnVmLCBmZCwgMCkgPCAwKQorCQlkaWVfZXJybm8oXygiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gcmVhZCAnJXMnIiksIGFyZyk7CisJaWYgKGZkICYmIGNsb3NlKGZkKSkKKwkJZGllX2Vycm5vKF8oImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIGNsb3NlICclcyciKSwgYXJnKTsKKworCXJldHVybiAwOworfQorCiBpbnQgY21kX2NvbW1pdF90cmVlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KQogewotCWludCBpLCBnb3RfdHJlZSA9IDA7CisJc3RhdGljIHN0cnVjdCBzdHJidWYgYnVmZmVyID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnRzID0gTlVMTDsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIHRyZWVfb2lkOwogCXN0cnVjdCBvYmplY3RfaWQgY29tbWl0X29pZDsKLQlzdHJ1Y3Qgc3RyYnVmIGJ1ZmZlciA9IFNUUkJVRl9JTklUOworCisJc3RydWN0IG9wdGlvbiBvcHRpb25zW10gPSB7CisJCXsgT1BUSU9OX0NBTExCQUNLLCAncCcsIE5VTEwsICZwYXJlbnRzLCBOXygicGFyZW50IiksCisJCQlOXygiaWQgb2YgYSBwYXJlbnQgY29tbWl0IG9iamVjdCIpLCBQQVJTRV9PUFRfTk9ORUcsCisJCQlwYXJzZV9wYXJlbnRfYXJnX2NhbGxiYWNrIH0sCisJCXsgT1BUSU9OX0NBTExCQUNLLCAnbScsIE5VTEwsICZidWZmZXIsIE5fKCJtZXNzYWdlIiksCisJCQlOXygiY29tbWl0IG1lc3NhZ2UiKSwgUEFSU0VfT1BUX05PTkVHLAorCQkJcGFyc2VfbWVzc2FnZV9hcmdfY2FsbGJhY2sgfSwKKwkJeyBPUFRJT05fQ0FMTEJBQ0ssICdGJywgTlVMTCwgJmJ1ZmZlciwgTl8oImZpbGUiKSwKKwkJCU5fKCJyZWFkIGNvbW1pdCBsb2cgbWVzc2FnZSBmcm9tIGZpbGUiKSwgUEFSU0VfT1BUX05PTkVHLAorCQkJcGFyc2VfZmlsZV9hcmdfY2FsbGJhY2sgfSwKKwkJeyBPUFRJT05fU1RSSU5HLCAnUycsICJncGctc2lnbiIsICZzaWduX2NvbW1pdCwgTl8oImtleS1pZCIpLAorCQkJTl8oIkdQRyBzaWduIGNvbW1pdCIpLCBQQVJTRV9PUFRfT1BUQVJHLCBOVUxMLCAoaW50cHRyX3QpICIiIH0sCisJCU9QVF9FTkQoKQorCX07CiAKIAlnaXRfY29uZmlnKGNvbW1pdF90cmVlX2NvbmZpZywgTlVMTCk7CiAKIAlpZiAoYXJnYyA8IDIgfHwgIXN0cmNtcChhcmd2WzFdLCAiLWgiKSkKLQkJdXNhZ2UoY29tbWl0X3RyZWVfdXNhZ2UpOworCQl1c2FnZV93aXRoX29wdGlvbnMoY29tbWl0X3RyZWVfdXNhZ2UsIG9wdGlvbnMpOwogCi0JZm9yIChpID0gMTsgaSA8IGFyZ2M7IGkrKykgewotCQljb25zdCBjaGFyICphcmcgPSBhcmd2W2ldOwotCQlpZiAoIXN0cmNtcChhcmcsICItcCIpKSB7Ci0JCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKLQkJCWlmIChhcmdjIDw9ICsraSkKLQkJCQl1c2FnZShjb21taXRfdHJlZV91c2FnZSk7Ci0JCQlpZiAoZ2V0X29pZF9jb21taXQoYXJndltpXSwgJm9pZCkpCi0JCQkJZGllKCJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIsIGFyZ3ZbaV0pOwotCQkJYXNzZXJ0X29pZF90eXBlKCZvaWQsIE9CSl9DT01NSVQpOwotCQkJbmV3X3BhcmVudChsb29rdXBfY29tbWl0KHRoZV9yZXBvc2l0b3J5LCAmb2lkKSwKLQkJCQkJCSAmcGFyZW50cyk7Ci0JCQljb250aW51ZTsKLQkJfQorCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywgY29tbWl0X3RyZWVfdXNhZ2UsIDApOwogCi0JCWlmIChza2lwX3ByZWZpeChhcmcsICItUyIsICZzaWduX2NvbW1pdCkpCi0JCQljb250aW51ZTsKKwlpZiAoYXJnYyAhPSAxKQorCQlkaWUoXygibXVzdCBnaXZlIGV4YWN0bHkgb25lIHRyZWUiKSk7CiAKLQkJaWYgKCFzdHJjbXAoYXJnLCAiLS1uby1ncGctc2lnbiIpKSB7Ci0JCQlzaWduX2NvbW1pdCA9IE5VTEw7Ci0JCQljb250aW51ZTsKLQkJfQotCi0JCWlmICghc3RyY21wKGFyZywgIi1tIikpIHsKLQkJCWlmIChhcmdjIDw9ICsraSkKLQkJCQl1c2FnZShjb21taXRfdHJlZV91c2FnZSk7Ci0JCQlpZiAoYnVmZmVyLmxlbikKLQkJCQlzdHJidWZfYWRkY2goJmJ1ZmZlciwgJ1xuJyk7Ci0JCQlzdHJidWZfYWRkc3RyKCZidWZmZXIsIGFyZ3ZbaV0pOwotCQkJc3RyYnVmX2NvbXBsZXRlX2xpbmUoJmJ1ZmZlcik7Ci0JCQljb250aW51ZTsKLQkJfQotCi0JCWlmICghc3RyY21wKGFyZywgIi1GIikpIHsKLQkJCWludCBmZDsKLQotCQkJaWYgKGFyZ2MgPD0gKytpKQotCQkJCXVzYWdlKGNvbW1pdF90cmVlX3VzYWdlKTsKLQkJCWlmIChidWZmZXIubGVuKQotCQkJCXN0cmJ1Zl9hZGRjaCgmYnVmZmVyLCAnXG4nKTsKLQkJCWlmICghc3RyY21wKGFyZ3ZbaV0sICItIikpCi0JCQkJZmQgPSAwOwotCQkJZWxzZSB7Ci0JCQkJZmQgPSBvcGVuKGFyZ3ZbaV0sIE9fUkRPTkxZKTsKLQkJCQlpZiAoZmQgPCAwKQotCQkJCQlkaWVfZXJybm8oImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIG9wZW4gJyVzJyIsCi0JCQkJCQkgIGFyZ3ZbaV0pOwotCQkJfQotCQkJaWYgKHN0cmJ1Zl9yZWFkKCZidWZmZXIsIGZkLCAwKSA8IDApCi0JCQkJZGllX2Vycm5vKCJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byByZWFkICclcyciLAotCQkJCQkgIGFyZ3ZbaV0pOwotCQkJaWYgKGZkICYmIGNsb3NlKGZkKSkKLQkJCQlkaWVfZXJybm8oImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIGNsb3NlICclcyciLAotCQkJCQkgIGFyZ3ZbaV0pOwotCQkJY29udGludWU7Ci0JCX0KLQotCQlpZiAoZ2V0X29pZF90cmVlKGFyZywgJnRyZWVfb2lkKSkKLQkJCWRpZSgiTm90IGEgdmFsaWQgb2JqZWN0IG5hbWUgJXMiLCBhcmcpOwotCQlpZiAoZ290X3RyZWUpCi0JCQlkaWUoIkNhbm5vdCBnaXZlIG1vcmUgdGhhbiBvbmUgdHJlZXMiKTsKLQkJZ290X3RyZWUgPSAxOwotCX0KKwlpZiAoZ2V0X29pZF90cmVlKGFyZ3ZbMF0sICZ0cmVlX29pZCkpCisJCWRpZShfKCJub3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIpLCBhcmd2WzBdKTsKIAogCWlmICghYnVmZmVyLmxlbikgewogCQlpZiAoc3RyYnVmX3JlYWQoJmJ1ZmZlciwgMCwgMCkgPCAwKQotCQkJZGllX2Vycm5vKCJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byByZWFkIik7CisJCQlkaWVfZXJybm8oXygiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gcmVhZCIpKTsKIAl9CiAKIAlpZiAoY29tbWl0X3RyZWUoYnVmZmVyLmJ1ZiwgYnVmZmVyLmxlbiwgJnRyZWVfb2lkLCBwYXJlbnRzLCAmY29tbWl0X29pZCwKZGlmZiAtLWdpdCBhL2J1aWx0aW4vY29tbWl0LmMgYi9idWlsdGluL2NvbW1pdC5jCmluZGV4IGMwMjFiMTEuLjVmMzc5ZTQgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vY29tbWl0LmMKKysrIGIvYnVpbHRpbi9jb21taXQuYwpAQCAtNSw2ICs1LDcgQEAKICAqIEJhc2VkIG9uIGdpdC1jb21taXQuc2ggYnkgSnVuaW8gQyBIYW1hbm8gYW5kIExpbnVzIFRvcnZhbGRzCiAgKi8KIAorI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJsb2NrZmlsZS5oIgpAQCAtNTgsMTYgKzU5LDIyIEBACiAiICAgIGdpdCBjb21taXQgLS1hbGxvdy1lbXB0eVxuIgogIlxuIik7CiAKK3N0YXRpYyBjb25zdCBjaGFyIGVtcHR5X3JlYmFzZV9waWNrX2FkdmljZVtdID0KK05fKCJPdGhlcndpc2UsIHBsZWFzZSB1c2UgJ2dpdCByZWJhc2UgLS1za2lwJ1xuIik7CisKIHN0YXRpYyBjb25zdCBjaGFyIGVtcHR5X2NoZXJyeV9waWNrX2FkdmljZV9zaW5nbGVbXSA9Ci1OXygiT3RoZXJ3aXNlLCBwbGVhc2UgdXNlICdnaXQgcmVzZXQnXG4iKTsKK05fKCJPdGhlcndpc2UsIHBsZWFzZSB1c2UgJ2dpdCBjaGVycnktcGljayAtLXNraXAnXG4iKTsKIAogc3RhdGljIGNvbnN0IGNoYXIgZW1wdHlfY2hlcnJ5X3BpY2tfYWR2aWNlX211bHRpW10gPQotTl8oIklmIHlvdSB3aXNoIHRvIHNraXAgdGhpcyBjb21taXQsIHVzZTpcbiIKK05fKCJhbmQgdGhlbiB1c2U6XG4iCiAiXG4iCi0iICAgIGdpdCByZXNldFxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVxuIgogIlxuIgotIlRoZW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIHdpbGwgcmVzdW1lIGNoZXJyeS1waWNraW5nXG4iCi0idGhlIHJlbWFpbmluZyBjb21taXRzLlxuIik7CisidG8gcmVzdW1lIGNoZXJyeS1waWNraW5nIHRoZSByZW1haW5pbmcgY29tbWl0cy5cbiIKKyJJZiB5b3Ugd2lzaCB0byBza2lwIHRoaXMgY29tbWl0LCB1c2U6XG4iCisiXG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLXNraXBcbiIKKyJcbiIpOwogCiBzdGF0aWMgY29uc3QgY2hhciAqY29sb3Jfc3RhdHVzX3Nsb3RzW10gPSB7CiAJW1dUX1NUQVRVU19IRUFERVJdCSAgPSAiaGVhZGVyIiwKQEAgLTEwMyw5ICsxMTAsOSBAQAogc3RhdGljIGludCBlZGl0X2ZsYWcgPSAtMTsgLyogdW5zcGVjaWZpZWQgKi8KIHN0YXRpYyBpbnQgcXVpZXQsIHZlcmJvc2UsIG5vX3ZlcmlmeSwgYWxsb3dfZW1wdHksIGRyeV9ydW4sIHJlbmV3X2F1dGhvcnNoaXA7CiBzdGF0aWMgaW50IGNvbmZpZ19jb21taXRfdmVyYm9zZSA9IC0xOyAvKiB1bnNwZWNpZmllZCAqLwotc3RhdGljIGludCBub19wb3N0X3Jld3JpdGUsIGFsbG93X2VtcHR5X21lc3NhZ2U7CitzdGF0aWMgaW50IG5vX3Bvc3RfcmV3cml0ZSwgYWxsb3dfZW1wdHlfbWVzc2FnZSwgcGF0aHNwZWNfZmlsZV9udWw7CiBzdGF0aWMgY2hhciAqdW50cmFja2VkX2ZpbGVzX2FyZywgKmZvcmNlX2RhdGUsICppZ25vcmVfc3VibW9kdWxlX2FyZywgKmlnbm9yZWRfYXJnOwotc3RhdGljIGNoYXIgKnNpZ25fY29tbWl0Oworc3RhdGljIGNoYXIgKnNpZ25fY29tbWl0LCAqcGF0aHNwZWNfZnJvbV9maWxlOwogCiAvKgogICogVGhlIGRlZmF1bHQgY29tbWl0IG1lc3NhZ2UgY2xlYW51cCBtb2RlIHdpbGwgcmVtb3ZlIHRoZSBsaW5lcwpAQCAtMTE4LDcgKzEyNSw2IEBACiBzdGF0aWMgY29uc3QgY2hhciAqY2xlYW51cF9hcmc7CiAKIHN0YXRpYyBlbnVtIGNvbW1pdF93aGVuY2Ugd2hlbmNlOwotc3RhdGljIGludCBzZXF1ZW5jZXJfaW5fdXNlOwogc3RhdGljIGludCB1c2VfZWRpdG9yID0gMSwgaW5jbHVkZV9zdGF0dXMgPSAxOwogc3RhdGljIGludCBoYXZlX29wdGlvbl9tOwogc3RhdGljIHN0cnVjdCBzdHJidWYgbWVzc2FnZSA9IFNUUkJVRl9JTklUOwpAQCAtMTc1LDEyICsxODEsNyBAQAogewogCWlmIChmaWxlX2V4aXN0cyhnaXRfcGF0aF9tZXJnZV9oZWFkKHRoZV9yZXBvc2l0b3J5KSkpCiAJCXdoZW5jZSA9IEZST01fTUVSR0U7Ci0JZWxzZSBpZiAoZmlsZV9leGlzdHMoZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZCh0aGVfcmVwb3NpdG9yeSkpKSB7Ci0JCXdoZW5jZSA9IEZST01fQ0hFUlJZX1BJQ0s7Ci0JCWlmIChmaWxlX2V4aXN0cyhnaXRfcGF0aF9zZXFfZGlyKCkpKQotCQkJc2VxdWVuY2VyX2luX3VzZSA9IDE7Ci0JfQotCWVsc2UKKwllbHNlIGlmICghc2VxdWVuY2VyX2RldGVybWluZV93aGVuY2UodGhlX3JlcG9zaXRvcnksICZ3aGVuY2UpKQogCQl3aGVuY2UgPSBGUk9NX0NPTU1JVDsKIAlpZiAocykKIAkJcy0+d2hlbmNlID0gd2hlbmNlOwpAQCAtMTg4LDcgKzE4OSw3IEBACiAKIHN0YXRpYyB2b2lkIHN0YXR1c19pbml0X2NvbmZpZyhzdHJ1Y3Qgd3Rfc3RhdHVzICpzLCBjb25maWdfZm5fdCBmbikKIHsKLQl3dF9zdGF0dXNfcHJlcGFyZShzKTsKKwl3dF9zdGF0dXNfcHJlcGFyZSh0aGVfcmVwb3NpdG9yeSwgcyk7CiAJaW5pdF9kaWZmX3VpX2RlZmF1bHRzKCk7CiAJZ2l0X2NvbmZpZyhmbiwgcyk7CiAJZGV0ZXJtaW5lX3doZW5jZShzKTsKQEAgLTIzNCw3ICsyMzUsNyBAQAogICogYW5kIHJldHVybiB0aGUgcGF0aHMgdGhhdCBtYXRjaCB0aGUgZ2l2ZW4gcGF0dGVybiBpbiBsaXN0LgogICovCiBzdGF0aWMgaW50IGxpc3RfcGF0aHMoc3RydWN0IHN0cmluZ19saXN0ICpsaXN0LCBjb25zdCBjaGFyICp3aXRoX3RyZWUsCi0JCSAgICAgIGNvbnN0IGNoYXIgKnByZWZpeCwgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXR0ZXJuKQorCQkgICAgICBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdHRlcm4pCiB7CiAJaW50IGksIHJldDsKIAljaGFyICptOwpAQCAtMjYzLDcgKzI2NCw3IEBACiAJCQlpdGVtLT51dGlsID0gaXRlbTsgLyogYmV0dGVyIGEgdmFsaWQgcG9pbnRlciB0aGFuIGEgZmFrZSBvbmUgKi8KIAl9CiAKLQlyZXQgPSByZXBvcnRfcGF0aF9lcnJvcihtLCBwYXR0ZXJuLCBwcmVmaXgpOworCXJldCA9IHJlcG9ydF9wYXRoX2Vycm9yKG0sIHBhdHRlcm4pOwogCWZyZWUobSk7CiAJcmV0dXJuIHJldDsKIH0KQEAgLTMzOSwxMSArMzQwLDMxIEBACiAJCSAgICAgICBQQVRIU1BFQ19QUkVGRVJfRlVMTCwKIAkJICAgICAgIHByZWZpeCwgYXJndik7CiAKKwlpZiAocGF0aHNwZWNfZnJvbV9maWxlKSB7CisJCWlmIChpbnRlcmFjdGl2ZSkKKwkJCWRpZShfKCItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWludGVyYWN0aXZlLy0tcGF0Y2giKSk7CisKKwkJaWYgKGFsbCkKKwkJCWRpZShfKCItLXBhdGhzcGVjLWZyb20tZmlsZSB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UiKSk7CisKKwkJaWYgKHBhdGhzcGVjLm5yKQorCQkJZGllKF8oIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIpKTsKKworCQlwYXJzZV9wYXRoc3BlY19maWxlKCZwYXRoc3BlYywgMCwKKwkJCQkgICAgUEFUSFNQRUNfUFJFRkVSX0ZVTEwsCisJCQkJICAgIHByZWZpeCwgcGF0aHNwZWNfZnJvbV9maWxlLCBwYXRoc3BlY19maWxlX251bCk7CisJfSBlbHNlIGlmIChwYXRoc3BlY19maWxlX251bCkgeworCQlkaWUoXygiLS1wYXRoc3BlYy1maWxlLW51bCByZXF1aXJlcyAtLXBhdGhzcGVjLWZyb20tZmlsZSIpKTsKKwl9CisKKwlpZiAoIXBhdGhzcGVjLm5yICYmIChhbHNvIHx8IChvbmx5ICYmICFhbWVuZCAmJiAhYWxsb3dfZW1wdHkpKSkKKwkJZGllKF8oIk5vIHBhdGhzIHdpdGggLS1pbmNsdWRlLy0tb25seSBkb2VzIG5vdCBtYWtlIHNlbnNlLiIpKTsKKwogCWlmIChyZWFkX2NhY2hlX3ByZWxvYWQoJnBhdGhzcGVjKSA8IDApCiAJCWRpZShfKCJpbmRleCBmaWxlIGNvcnJ1cHQiKSk7CiAKIAlpZiAoaW50ZXJhY3RpdmUpIHsKLQkJY2hhciAqb2xkX2luZGV4X2VudiA9IE5VTEw7CisJCWNoYXIgKm9sZF9pbmRleF9lbnYgPSBOVUxMLCAqb2xkX3JlcG9faW5kZXhfZmlsZTsKIAkJaG9sZF9sb2NrZWRfaW5kZXgoJmluZGV4X2xvY2ssIExPQ0tfRElFX09OX0VSUk9SKTsKIAogCQlyZWZyZXNoX2NhY2hlX29yX2RpZShyZWZyZXNoX2ZsYWdzKTsKQEAgLTM1MSwxNiArMzcyLDIxIEBACiAJCWlmICh3cml0ZV9sb2NrZWRfaW5kZXgoJnRoZV9pbmRleCwgJmluZGV4X2xvY2ssIDApKQogCQkJZGllKF8oInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGluZGV4IikpOwogCi0JCW9sZF9pbmRleF9lbnYgPSBnZXRlbnYoSU5ERVhfRU5WSVJPTk1FTlQpOwotCQlzZXRlbnYoSU5ERVhfRU5WSVJPTk1FTlQsIGdldF9sb2NrX2ZpbGVfcGF0aCgmaW5kZXhfbG9jayksIDEpOworCQlvbGRfcmVwb19pbmRleF9maWxlID0gdGhlX3JlcG9zaXRvcnktPmluZGV4X2ZpbGU7CisJCXRoZV9yZXBvc2l0b3J5LT5pbmRleF9maWxlID0KKwkJCShjaGFyICopZ2V0X2xvY2tfZmlsZV9wYXRoKCZpbmRleF9sb2NrKTsKKwkJb2xkX2luZGV4X2VudiA9IHhzdHJkdXBfb3JfbnVsbChnZXRlbnYoSU5ERVhfRU5WSVJPTk1FTlQpKTsKKwkJc2V0ZW52KElOREVYX0VOVklST05NRU5ULCB0aGVfcmVwb3NpdG9yeS0+aW5kZXhfZmlsZSwgMSk7CiAKIAkJaWYgKGludGVyYWN0aXZlX2FkZChhcmdjLCBhcmd2LCBwcmVmaXgsIHBhdGNoX2ludGVyYWN0aXZlKSAhPSAwKQogCQkJZGllKF8oImludGVyYWN0aXZlIGFkZCBmYWlsZWQiKSk7CiAKKwkJdGhlX3JlcG9zaXRvcnktPmluZGV4X2ZpbGUgPSBvbGRfcmVwb19pbmRleF9maWxlOwogCQlpZiAob2xkX2luZGV4X2VudiAmJiAqb2xkX2luZGV4X2VudikKIAkJCXNldGVudihJTkRFWF9FTlZJUk9OTUVOVCwgb2xkX2luZGV4X2VudiwgMSk7CiAJCWVsc2UKIAkJCXVuc2V0ZW52KElOREVYX0VOVklST05NRU5UKTsKKwkJRlJFRV9BTkRfTlVMTChvbGRfaW5kZXhfZW52KTsKIAogCQlkaXNjYXJkX2NhY2hlKCk7CiAJCXJlYWRfY2FjaGVfZnJvbShnZXRfbG9ja19maWxlX3BhdGgoJmluZGV4X2xvY2spKTsKQEAgLTQ0OCwxMSArNDc0LDEzIEBACiAJaWYgKHdoZW5jZSAhPSBGUk9NX0NPTU1JVCkgewogCQlpZiAod2hlbmNlID09IEZST01fTUVSR0UpCiAJCQlkaWUoXygiY2Fubm90IGRvIGEgcGFydGlhbCBjb21taXQgZHVyaW5nIGEgbWVyZ2UuIikpOwotCQllbHNlIGlmICh3aGVuY2UgPT0gRlJPTV9DSEVSUllfUElDSykKKwkJZWxzZSBpZiAoaXNfZnJvbV9jaGVycnlfcGljayh3aGVuY2UpKQogCQkJZGllKF8oImNhbm5vdCBkbyBhIHBhcnRpYWwgY29tbWl0IGR1cmluZyBhIGNoZXJyeS1waWNrLiIpKTsKKwkJZWxzZSBpZiAoaXNfZnJvbV9yZWJhc2Uod2hlbmNlKSkKKwkJCWRpZShfKCJjYW5ub3QgZG8gYSBwYXJ0aWFsIGNvbW1pdCBkdXJpbmcgYSByZWJhc2UuIikpOwogCX0KIAotCWlmIChsaXN0X3BhdGhzKCZwYXJ0aWFsLCAhY3VycmVudF9oZWFkID8gTlVMTCA6ICJIRUFEIiwgcHJlZml4LCAmcGF0aHNwZWMpKQorCWlmIChsaXN0X3BhdGhzKCZwYXJ0aWFsLCAhY3VycmVudF9oZWFkID8gTlVMTCA6ICJIRUFEIiwgJnBhdGhzcGVjKSkKIAkJZXhpdCgxKTsKIAogCWRpc2NhcmRfY2FjaGUoKTsKQEAgLTUwNSw3ICs1MzMsNyBAQAogCXMtPm5vd2FybiA9IG5vd2FybjsKIAlzLT5pc19pbml0aWFsID0gZ2V0X29pZChzLT5yZWZlcmVuY2UsICZvaWQpID8gMSA6IDA7CiAJaWYgKCFzLT5pc19pbml0aWFsKQotCQloYXNoY3B5KHMtPnNoYTFfY29tbWl0LCBvaWQuaGFzaCk7CisJCW9pZGNweSgmcy0+b2lkX2NvbW1pdCwgJm9pZCk7CiAJcy0+c3RhdHVzX2Zvcm1hdCA9IHN0YXR1c19mb3JtYXQ7CiAJcy0+aWdub3JlX3N1Ym1vZHVsZV9hcmcgPSBpZ25vcmVfc3VibW9kdWxlX2FyZzsKIApAQCAtNTMyLDcgKzU2MCw3IEBACiAJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKIAlpZiAoaGFjaykKIAkJc3RyYnVmX2FkZGNoKCZidWYsIGhhY2spOwotCXN0cmJ1Zl9hZGRmKCZidWYsICIlLipzIiwgKGludCkoZSAtIHMpLCBzKTsKKwlzdHJidWZfYWRkKCZidWYsIHMsIGUgLSBzKTsKIAlzZXRlbnYodmFyLCBidWYuYnVmLCAxKTsKIAlzdHJidWZfcmVsZWFzZSgmYnVmKTsKIH0KQEAgLTYwNyw3ICs2MzUsOCBAQAogCQlzZXRfaWRlbnRfdmFyKCZkYXRlLCBzdHJidWZfZGV0YWNoKCZkYXRlX2J1ZiwgTlVMTCkpOwogCX0KIAotCXN0cmJ1Zl9hZGRzdHIoYXV0aG9yX2lkZW50LCBmbXRfaWRlbnQobmFtZSwgZW1haWwsIGRhdGUsIElERU5UX1NUUklDVCkpOworCXN0cmJ1Zl9hZGRzdHIoYXV0aG9yX2lkZW50LCBmbXRfaWRlbnQobmFtZSwgZW1haWwsIFdBTlRfQVVUSE9SX0lERU5ULCBkYXRlLAorCQkJCUlERU5UX1NUUklDVCkpOwogCWFzc2VydF9zcGxpdF9pZGVudCgmYXV0aG9yLCBhdXRob3JfaWRlbnQpOwogCWV4cG9ydF9vbmUoIkdJVF9BVVRIT1JfTkFNRSIsIGF1dGhvci5uYW1lX2JlZ2luLCBhdXRob3IubmFtZV9lbmQsIDApOwogCWV4cG9ydF9vbmUoIkdJVF9BVVRIT1JfRU1BSUwiLCBhdXRob3IubWFpbF9iZWdpbiwgYXV0aG9yLm1haWxfZW5kLCAwKTsKQEAgLTY2NSw2ICs2OTQsNyBAQAogCWNvbnN0IGNoYXIgKmhvb2tfYXJnMiA9IE5VTEw7CiAJaW50IGNsZWFuX21lc3NhZ2VfY29udGVudHMgPSAoY2xlYW51cF9tb2RlICE9IENPTU1JVF9NU0dfQ0xFQU5VUF9OT05FKTsKIAlpbnQgb2xkX2Rpc3BsYXlfY29tbWVudF9wcmVmaXg7CisJaW50IG1lcmdlX2NvbnRhaW5zX3NjaXNzb3JzID0gMDsKIAogCS8qIFRoaXMgY2hlY2tzIGFuZCBiYXJmcyBpZiBhdXRob3IgaXMgYmFkbHkgc3BlY2lmaWVkICovCiAJZGV0ZXJtaW5lX2F1dGhvcl9pbmZvKGF1dGhvcl9pZGVudCk7CkBAIC03MjUsNiArNzU1LDggQEAKIAkJCXN0cmJ1Zl9hZGRidWYoJnNiLCAmbWVzc2FnZSk7CiAJCWhvb2tfYXJnMSA9ICJtZXNzYWdlIjsKIAl9IGVsc2UgaWYgKCFzdGF0KGdpdF9wYXRoX21lcmdlX21zZyh0aGVfcmVwb3NpdG9yeSksICZzdGF0YnVmKSkgeworCQlzaXplX3QgbWVyZ2VfbXNnX3N0YXJ0OworCiAJCS8qCiAJCSAqIHByZXBlbmQgU1FVQVNIX01TRyBoZXJlIGlmIGl0IGV4aXN0cyBhbmQgYQogCQkgKiAibWVyZ2UgLS1zcXVhc2giIHdhcyBvcmlnaW5hbGx5IHBlcmZvcm1lZApAQCAtNzM1LDggKzc2NywxNiBAQAogCQkJaG9va19hcmcxID0gInNxdWFzaCI7CiAJCX0gZWxzZQogCQkJaG9va19hcmcxID0gIm1lcmdlIjsKKworCQltZXJnZV9tc2dfc3RhcnQgPSBzYi5sZW47CiAJCWlmIChzdHJidWZfcmVhZF9maWxlKCZzYiwgZ2l0X3BhdGhfbWVyZ2VfbXNnKHRoZV9yZXBvc2l0b3J5KSwgMCkgPCAwKQogCQkJZGllX2Vycm5vKF8oImNvdWxkIG5vdCByZWFkIE1FUkdFX01TRyIpKTsKKworCQlpZiAoY2xlYW51cF9tb2RlID09IENPTU1JVF9NU0dfQ0xFQU5VUF9TQ0lTU09SUyAmJgorCQkgICAgd3Rfc3RhdHVzX2xvY2F0ZV9lbmQoc2IuYnVmICsgbWVyZ2VfbXNnX3N0YXJ0LAorCQkJCQkgc2IubGVuIC0gbWVyZ2VfbXNnX3N0YXJ0KSA8CisJCQkJc2IubGVuIC0gbWVyZ2VfbXNnX3N0YXJ0KQorCQkJbWVyZ2VfY29udGFpbnNfc2Npc3NvcnMgPSAxOwogCX0gZWxzZSBpZiAoIXN0YXQoZ2l0X3BhdGhfc3F1YXNoX21zZyh0aGVfcmVwb3NpdG9yeSksICZzdGF0YnVmKSkgewogCQlpZiAoc3RyYnVmX3JlYWRfZmlsZSgmc2IsIGdpdF9wYXRoX3NxdWFzaF9tc2codGhlX3JlcG9zaXRvcnkpLCAwKSA8IDApCiAJCQlkaWVfZXJybm8oXygiY291bGQgbm90IHJlYWQgU1FVQVNIX01TRyIpKTsKQEAgLTc1NCw3ICs3OTQsNyBAQAogCSAqLwogCWVsc2UgaWYgKHdoZW5jZSA9PSBGUk9NX01FUkdFKQogCQlob29rX2FyZzEgPSAibWVyZ2UiOwotCWVsc2UgaWYgKHdoZW5jZSA9PSBGUk9NX0NIRVJSWV9QSUNLKSB7CisJZWxzZSBpZiAoaXNfZnJvbV9jaGVycnlfcGljayh3aGVuY2UpIHx8IHdoZW5jZSA9PSBGUk9NX1JFQkFTRV9QSUNLKSB7CiAJCWhvb2tfYXJnMSA9ICJjb21taXQiOwogCQlob29rX2FyZzIgPSAiQ0hFUlJZX1BJQ0tfSEVBRCI7CiAJfQpAQCAtODA0LDcgKzg0NCw4IEBACiAJCXN0cnVjdCBpZGVudF9zcGxpdCBjaSwgYWk7CiAKIAkJaWYgKHdoZW5jZSAhPSBGUk9NX0NPTU1JVCkgewotCQkJaWYgKGNsZWFudXBfbW9kZSA9PSBDT01NSVRfTVNHX0NMRUFOVVBfU0NJU1NPUlMpCisJCQlpZiAoY2xlYW51cF9tb2RlID09IENPTU1JVF9NU0dfQ0xFQU5VUF9TQ0lTU09SUyAmJgorCQkJCSFtZXJnZV9jb250YWluc19zY2lzc29ycykKIAkJCQl3dF9zdGF0dXNfYWRkX2N1dF9saW5lKHMtPmZwKTsKIAkJCXN0YXR1c19wcmludGZfbG4ocywgR0lUX0NPTE9SX05PUk1BTCwKIAkJCSAgICB3aGVuY2UgPT0gRlJPTV9NRVJHRQpAQCAtODI5LDEwICs4NzAsMTAgQEAKIAkJCQlfKCJQbGVhc2UgZW50ZXIgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB5b3VyIGNoYW5nZXMuIgogCQkJCSAgIiBMaW5lcyBzdGFydGluZ1xud2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IgogCQkJCSAgIiBtZXNzYWdlIGFib3J0cyB0aGUgY29tbWl0LlxuIiksIGNvbW1lbnRfbGluZV9jaGFyKTsKLQkJZWxzZSBpZiAoY2xlYW51cF9tb2RlID09IENPTU1JVF9NU0dfQ0xFQU5VUF9TQ0lTU09SUyAmJgotCQkJIHdoZW5jZSA9PSBGUk9NX0NPTU1JVCkKLQkJCXd0X3N0YXR1c19hZGRfY3V0X2xpbmUocy0+ZnApOwotCQllbHNlIC8qIENPTU1JVF9NU0dfQ0xFQU5VUF9TUEFDRSwgdGhhdCBpcy4gKi8KKwkJZWxzZSBpZiAoY2xlYW51cF9tb2RlID09IENPTU1JVF9NU0dfQ0xFQU5VUF9TQ0lTU09SUykgeworCQkJaWYgKHdoZW5jZSA9PSBGUk9NX0NPTU1JVCAmJiAhbWVyZ2VfY29udGFpbnNfc2Npc3NvcnMpCisJCQkJd3Rfc3RhdHVzX2FkZF9jdXRfbGluZShzLT5mcCk7CisJCX0gZWxzZSAvKiBDT01NSVRfTVNHX0NMRUFOVVBfU1BBQ0UsIHRoYXQgaXMuICovCiAJCQlzdGF0dXNfcHJpbnRmKHMsIEdJVF9DT0xPUl9OT1JNQUwsCiAJCQkJXygiUGxlYXNlIGVudGVyIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgeW91ciBjaGFuZ2VzLiIKIAkJCQkgICIgTGluZXMgc3RhcnRpbmdcbiIKQEAgLTkxMSw3ICs5NTIsOCBAQAogCQkJaWYgKGlnbm9yZV9zdWJtb2R1bGVfYXJnICYmCiAJCQkgICAgIXN0cmNtcChpZ25vcmVfc3VibW9kdWxlX2FyZywgImFsbCIpKQogCQkJCWZsYWdzLmlnbm9yZV9zdWJtb2R1bGVzID0gMTsKLQkJCWNvbW1pdHRhYmxlID0gaW5kZXhfZGlmZmVyc19mcm9tKHBhcmVudCwgJmZsYWdzLCAxKTsKKwkJCWNvbW1pdHRhYmxlID0gaW5kZXhfZGlmZmVyc19mcm9tKHRoZV9yZXBvc2l0b3J5LAorCQkJCQkJCSBwYXJlbnQsICZmbGFncywgMSk7CiAJCX0KIAl9CiAJc3RyYnVmX3JlbGVhc2UoJmNvbW1pdHRlcl9pZGVudCk7CkBAIC05MjUsMTYgKzk2NywyMCBAQAogCSAqLwogCWlmICghY29tbWl0dGFibGUgJiYgd2hlbmNlICE9IEZST01fTUVSR0UgJiYgIWFsbG93X2VtcHR5ICYmCiAJICAgICEoYW1lbmQgJiYgaXNfYV9tZXJnZShjdXJyZW50X2hlYWQpKSkgeworCQlzLT5oaW50cyA9IGFkdmljZV9zdGF0dXNfaGludHM7CiAJCXMtPmRpc3BsYXlfY29tbWVudF9wcmVmaXggPSBvbGRfZGlzcGxheV9jb21tZW50X3ByZWZpeDsKIAkJcnVuX3N0YXR1cyhzdGRvdXQsIGluZGV4X2ZpbGUsIHByZWZpeCwgMCwgcyk7CiAJCWlmIChhbWVuZCkKIAkJCWZwdXRzKF8oZW1wdHlfYW1lbmRfYWR2aWNlKSwgc3RkZXJyKTsKLQkJZWxzZSBpZiAod2hlbmNlID09IEZST01fQ0hFUlJZX1BJQ0spIHsKKwkJZWxzZSBpZiAoaXNfZnJvbV9jaGVycnlfcGljayh3aGVuY2UpIHx8CisJCQkgd2hlbmNlID09IEZST01fUkVCQVNFX1BJQ0spIHsKIAkJCWZwdXRzKF8oZW1wdHlfY2hlcnJ5X3BpY2tfYWR2aWNlKSwgc3RkZXJyKTsKLQkJCWlmICghc2VxdWVuY2VyX2luX3VzZSkKKwkJCWlmICh3aGVuY2UgPT0gRlJPTV9DSEVSUllfUElDS19TSU5HTEUpCiAJCQkJZnB1dHMoXyhlbXB0eV9jaGVycnlfcGlja19hZHZpY2Vfc2luZ2xlKSwgc3RkZXJyKTsKLQkJCWVsc2UKKwkJCWVsc2UgaWYgKHdoZW5jZSA9PSBGUk9NX0NIRVJSWV9QSUNLX01VTFRJKQogCQkJCWZwdXRzKF8oZW1wdHlfY2hlcnJ5X3BpY2tfYWR2aWNlX211bHRpKSwgc3RkZXJyKTsKKwkJCWVsc2UKKwkJCQlmcHV0cyhfKGVtcHR5X3JlYmFzZV9waWNrX2FkdmljZSksIHN0ZGVycik7CiAJCX0KIAkJcmV0dXJuIDA7CiAJfQpAQCAtMTAzNSw2ICsxMDgxLDEwIEBACiAJCXMtPnNob3dfdW50cmFja2VkX2ZpbGVzID0gU0hPV19OT1JNQUxfVU5UUkFDS0VEX0ZJTEVTOwogCWVsc2UgaWYgKCFzdHJjbXAodW50cmFja2VkX2ZpbGVzX2FyZywgImFsbCIpKQogCQlzLT5zaG93X3VudHJhY2tlZF9maWxlcyA9IFNIT1dfQUxMX1VOVFJBQ0tFRF9GSUxFUzsKKwkvKgorCSAqIFBsZWFzZSB1cGRhdGUgJF9fZ2l0X3VudHJhY2tlZF9maWxlX21vZGVzIGluCisJICogZ2l0LWNvbXBsZXRpb24uYmFzaCB3aGVuIHlvdSBhZGQgbmV3IG9wdGlvbnMKKwkgKi8KIAllbHNlCiAJCWRpZShfKCJJbnZhbGlkIHVudHJhY2tlZCBmaWxlcyBtb2RlICclcyciKSwgdW50cmFja2VkX2ZpbGVzX2FyZyk7CiB9CkBAIC0xMDU4LDkgKzExMDgsMTEgQEAKIHN0YXRpYyBzdHJ1Y3Qgc3RhdHVzX2RlZmVycmVkX2NvbmZpZyB7CiAJZW51bSB3dF9zdGF0dXNfZm9ybWF0IHN0YXR1c19mb3JtYXQ7CiAJaW50IHNob3dfYnJhbmNoOworCWVudW0gYWhlYWRfYmVoaW5kX2ZsYWdzIGFoZWFkX2JlaGluZDsKIH0gc3RhdHVzX2RlZmVycmVkX2NvbmZpZyA9IHsKIAlTVEFUVVNfRk9STUFUX1VOU1BFQ0lGSUVELAotCS0xIC8qIHVuc3BlY2lmaWVkICovCisJLTEsIC8qIHVuc3BlY2lmaWVkICovCisJQUhFQURfQkVISU5EX1VOU1BFQ0lGSUVELAogfTsKIAogc3RhdGljIHZvaWQgZmluYWxpemVfZGVmZXJyZWRfY29uZmlnKHN0cnVjdCB3dF9zdGF0dXMgKnMpCkBAIC0xMDg3LDYgKzExMzksMTcgQEAKIAlpZiAocy0+c2hvd19icmFuY2ggPCAwKQogCQlzLT5zaG93X2JyYW5jaCA9IDA7CiAKKwkvKgorCSAqIElmIHRoZSB1c2VyIGRpZCBub3QgZ2l2ZSBhICItLVtub10tYWhlYWQtYmVoaW5kIiBjb21tYW5kCisJICogbGluZSBhcmd1bWVudCAqQU5EKiB3ZSB3aWxsIHByaW50IGluIGEgaHVtYW4tcmVhZGFibGUgZm9ybWF0CisJICogKHNob3J0LCBsb25nIGV0Yy4pIHRoZW4gd2UgaW5oZXJpdCBmcm9tIHRoZSBzdGF0dXMuYWhlYWRiZWhpbmQKKwkgKiBjb25maWcgc2V0dGluZy4gIEluIGFsbCBvdGhlciBjYXNlcyAoYW5kIHBvcmNlbGFpbiBWWzEyXSBmb3JtYXRzCisJICogaW4gcGFydGljdWxhciksIHdlIGluaGVyaXQgX0ZVTEwgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LgorCSAqLworCWlmICh1c2VfZGVmZXJyZWRfY29uZmlnICYmCisJICAgIHMtPmFoZWFkX2JlaGluZF9mbGFncyA9PSBBSEVBRF9CRUhJTkRfVU5TUEVDSUZJRUQpCisJCXMtPmFoZWFkX2JlaGluZF9mbGFncyA9IHN0YXR1c19kZWZlcnJlZF9jb25maWcuYWhlYWRfYmVoaW5kOworCiAJaWYgKHMtPmFoZWFkX2JlaGluZF9mbGFncyA9PSBBSEVBRF9CRUhJTkRfVU5TUEVDSUZJRUQpCiAJCXMtPmFoZWFkX2JlaGluZF9mbGFncyA9IEFIRUFEX0JFSElORF9GVUxMOwogfQpAQCAtMTEyMCw4ICsxMTgzLDEwIEBACiAJaWYgKGFtZW5kICYmIHdoZW5jZSAhPSBGUk9NX0NPTU1JVCkgewogCQlpZiAod2hlbmNlID09IEZST01fTUVSR0UpCiAJCQlkaWUoXygiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UgLS0gY2Fubm90IGFtZW5kLiIpKTsKLQkJZWxzZSBpZiAod2hlbmNlID09IEZST01fQ0hFUlJZX1BJQ0spCisJCWVsc2UgaWYgKGlzX2Zyb21fY2hlcnJ5X3BpY2sod2hlbmNlKSkKIAkJCWRpZShfKCJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSBjaGVycnktcGljayAtLSBjYW5ub3QgYW1lbmQuIikpOworCQllbHNlIGlmICh3aGVuY2UgPT0gRlJPTV9SRUJBU0VfUElDSykKKwkJCWRpZShfKCJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSByZWJhc2UgLS0gY2Fubm90IGFtZW5kLiIpKTsKIAl9CiAJaWYgKGZpeHVwX21lc3NhZ2UgJiYgc3F1YXNoX21lc3NhZ2UpCiAJCWRpZShfKCJPcHRpb25zIC0tc3F1YXNoIGFuZCAtLWZpeHVwIGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIikpOwpAQCAtMTE0Myw3ICsxMjA4LDggQEAKIAkJdXNlX21lc3NhZ2UgPSBlZGl0X21lc3NhZ2U7CiAJaWYgKGFtZW5kICYmICF1c2VfbWVzc2FnZSAmJiAhZml4dXBfbWVzc2FnZSkKIAkJdXNlX21lc3NhZ2UgPSAiSEVBRCI7Ci0JaWYgKCF1c2VfbWVzc2FnZSAmJiB3aGVuY2UgIT0gRlJPTV9DSEVSUllfUElDSyAmJiByZW5ld19hdXRob3JzaGlwKQorCWlmICghdXNlX21lc3NhZ2UgJiYgIWlzX2Zyb21fY2hlcnJ5X3BpY2sod2hlbmNlKSAmJgorCSAgICAhaXNfZnJvbV9yZWJhc2Uod2hlbmNlKSAmJiByZW5ld19hdXRob3JzaGlwKQogCQlkaWUoXygiLS1yZXNldC1hdXRob3IgY2FuIGJlIHVzZWQgb25seSB3aXRoIC1DLCAtYyBvciAtLWFtZW5kLiIpKTsKIAlpZiAodXNlX21lc3NhZ2UpIHsKIAkJdXNlX21lc3NhZ2VfYnVmZmVyID0gcmVhZF9jb21taXRfbWVzc2FnZSh1c2VfbWVzc2FnZSk7CkBAIC0xMTUyLDcgKzEyMTgsOCBAQAogCQkJYXV0aG9yX21lc3NhZ2VfYnVmZmVyID0gdXNlX21lc3NhZ2VfYnVmZmVyOwogCQl9CiAJfQotCWlmICh3aGVuY2UgPT0gRlJPTV9DSEVSUllfUElDSyAmJiAhcmVuZXdfYXV0aG9yc2hpcCkgeworCWlmICgoaXNfZnJvbV9jaGVycnlfcGljayh3aGVuY2UpIHx8IHdoZW5jZSA9PSBGUk9NX1JFQkFTRV9QSUNLKSAmJgorCSAgICAhcmVuZXdfYXV0aG9yc2hpcCkgewogCQlhdXRob3JfbWVzc2FnZSA9ICJDSEVSUllfUElDS19IRUFEIjsKIAkJYXV0aG9yX21lc3NhZ2VfYnVmZmVyID0gcmVhZF9jb21taXRfbWVzc2FnZShhdXRob3JfbWVzc2FnZSk7CiAJfQpAQCAtMTE2MiwyNyArMTIyOSwxMyBAQAogCiAJaWYgKGFsc28gKyBvbmx5ICsgYWxsICsgaW50ZXJhY3RpdmUgPiAxKQogCQlkaWUoXygiT25seSBvbmUgb2YgLS1pbmNsdWRlLy0tb25seS8tLWFsbC8tLWludGVyYWN0aXZlLy0tcGF0Y2ggY2FuIGJlIHVzZWQuIikpOwotCWlmIChhcmdjID09IDAgJiYgKGFsc28gfHwgKG9ubHkgJiYgIWFtZW5kICYmICFhbGxvd19lbXB0eSkpKQotCQlkaWUoXygiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIikpOwotCWlmICghY2xlYW51cF9hcmcgfHwgIXN0cmNtcChjbGVhbnVwX2FyZywgImRlZmF1bHQiKSkKLQkJY2xlYW51cF9tb2RlID0gdXNlX2VkaXRvciA/IENPTU1JVF9NU0dfQ0xFQU5VUF9BTEwgOgotCQkJCQkgICAgQ09NTUlUX01TR19DTEVBTlVQX1NQQUNFOwotCWVsc2UgaWYgKCFzdHJjbXAoY2xlYW51cF9hcmcsICJ2ZXJiYXRpbSIpKQotCQljbGVhbnVwX21vZGUgPSBDT01NSVRfTVNHX0NMRUFOVVBfTk9ORTsKLQllbHNlIGlmICghc3RyY21wKGNsZWFudXBfYXJnLCAid2hpdGVzcGFjZSIpKQotCQljbGVhbnVwX21vZGUgPSBDT01NSVRfTVNHX0NMRUFOVVBfU1BBQ0U7Ci0JZWxzZSBpZiAoIXN0cmNtcChjbGVhbnVwX2FyZywgInN0cmlwIikpCi0JCWNsZWFudXBfbW9kZSA9IENPTU1JVF9NU0dfQ0xFQU5VUF9BTEw7Ci0JZWxzZSBpZiAoIXN0cmNtcChjbGVhbnVwX2FyZywgInNjaXNzb3JzIikpCi0JCWNsZWFudXBfbW9kZSA9IHVzZV9lZGl0b3IgPyBDT01NSVRfTVNHX0NMRUFOVVBfU0NJU1NPUlMgOgotCQkJCQkgICAgQ09NTUlUX01TR19DTEVBTlVQX1NQQUNFOwotCWVsc2UKLQkJZGllKF8oIkludmFsaWQgY2xlYW51cCBtb2RlICVzIiksIGNsZWFudXBfYXJnKTsKKwljbGVhbnVwX21vZGUgPSBnZXRfY2xlYW51cF9tb2RlKGNsZWFudXBfYXJnLCB1c2VfZWRpdG9yKTsKIAogCWhhbmRsZV91bnRyYWNrZWRfZmlsZXNfYXJnKHMpOwogCiAJaWYgKGFsbCAmJiBhcmdjID4gMCkKLQkJZGllKF8oIlBhdGhzIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZS4iKSk7CisJCWRpZShfKCJwYXRocyAnJXMgLi4uJyB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UiKSwKKwkJICAgIGFyZ3ZbMF0pOwogCiAJaWYgKHN0YXR1c19mb3JtYXQgIT0gU1RBVFVTX0ZPUk1BVF9OT05FKQogCQlkcnlfcnVuID0gMTsKQEAgLTEyMzgsNiArMTI5MSwxMCBAQAogCQlzdGF0dXNfZGVmZXJyZWRfY29uZmlnLnNob3dfYnJhbmNoID0gZ2l0X2NvbmZpZ19ib29sKGssIHYpOwogCQlyZXR1cm4gMDsKIAl9CisJaWYgKCFzdHJjbXAoaywgInN0YXR1cy5haGVhZGJlaGluZCIpKSB7CisJCXN0YXR1c19kZWZlcnJlZF9jb25maWcuYWhlYWRfYmVoaW5kID0gZ2l0X2NvbmZpZ19ib29sKGssIHYpOworCQlyZXR1cm4gMDsKKwl9CiAJaWYgKCFzdHJjbXAoaywgInN0YXR1cy5zaG93c3Rhc2giKSkgewogCQlzLT5zaG93X3N0YXNoID0gZ2l0X2NvbmZpZ19ib29sKGssIHYpOwogCQlyZXR1cm4gMDsKQEAgLTEzNjYsNyArMTQyMyw3IEBACiAJaWYgKHN0YXR1c19mb3JtYXQgIT0gU1RBVFVTX0ZPUk1BVF9QT1JDRUxBSU4gJiYKIAkgICAgc3RhdHVzX2Zvcm1hdCAhPSBTVEFUVVNfRk9STUFUX1BPUkNFTEFJTl9WMikKIAkJcHJvZ3Jlc3NfZmxhZyA9IFJFRlJFU0hfUFJPR1JFU1M7Ci0JcmVhZF9pbmRleCgmdGhlX2luZGV4KTsKKwlyZXBvX3JlYWRfaW5kZXgodGhlX3JlcG9zaXRvcnkpOwogCXJlZnJlc2hfaW5kZXgoJnRoZV9pbmRleCwKIAkJICAgICAgUkVGUkVTSF9RVUlFVHxSRUZSRVNIX1VOTUVSR0VEfHByb2dyZXNzX2ZsYWcsCiAJCSAgICAgICZzLnBhdGhzcGVjLCBOVUxMLCBOVUxMKTsKQEAgLTEzNzgsNyArMTQzNSw3IEBACiAKIAlzLmlzX2luaXRpYWwgPSBnZXRfb2lkKHMucmVmZXJlbmNlLCAmb2lkKSA/IDEgOiAwOwogCWlmICghcy5pc19pbml0aWFsKQotCQloYXNoY3B5KHMuc2hhMV9jb21taXQsIG9pZC5oYXNoKTsKKwkJb2lkY3B5KCZzLm9pZF9jb21taXQsICZvaWQpOwogCiAJcy5pZ25vcmVfc3VibW9kdWxlX2FyZyA9IGlnbm9yZV9zdWJtb2R1bGVfYXJnOwogCXMuc3RhdHVzX2Zvcm1hdCA9IHN0YXR1c19mb3JtYXQ7CkBAIC0xMzk1LDcgKzE0NTIsNyBAQAogCXd0X3N0YXR1c19jb2xsZWN0KCZzKTsKIAogCWlmICgwIDw9IGZkKQotCQl1cGRhdGVfaW5kZXhfaWZfYWJsZSgmdGhlX2luZGV4LCAmaW5kZXhfbG9jayk7CisJCXJlcG9fdXBkYXRlX2luZGV4X2lmX2FibGUodGhlX3JlcG9zaXRvcnksICZpbmRleF9sb2NrKTsKIAogCWlmIChzLnJlbGF0aXZlX3BhdGhzKQogCQlzLnByZWZpeCA9IHByZWZpeDsKQEAgLTE0MzUsMjggKzE0OTIsNiBAQAogCXJldHVybiBnaXRfc3RhdHVzX2NvbmZpZyhrLCB2LCBzKTsKIH0KIAotaW50IHJ1bl9jb21taXRfaG9vayhpbnQgZWRpdG9yX2lzX3VzZWQsIGNvbnN0IGNoYXIgKmluZGV4X2ZpbGUsIGNvbnN0IGNoYXIgKm5hbWUsIC4uLikKLXsKLQlzdHJ1Y3QgYXJndl9hcnJheSBob29rX2VudiA9IEFSR1ZfQVJSQVlfSU5JVDsKLQl2YV9saXN0IGFyZ3M7Ci0JaW50IHJldDsKLQotCWFyZ3ZfYXJyYXlfcHVzaGYoJmhvb2tfZW52LCAiR0lUX0lOREVYX0ZJTEU9JXMiLCBpbmRleF9maWxlKTsKLQotCS8qCi0JICogTGV0IHRoZSBob29rIGtub3cgdGhhdCBubyBlZGl0b3Igd2lsbCBiZSBsYXVuY2hlZC4KLQkgKi8KLQlpZiAoIWVkaXRvcl9pc191c2VkKQotCQlhcmd2X2FycmF5X3B1c2goJmhvb2tfZW52LCAiR0lUX0VESVRPUj06Iik7Ci0KLQl2YV9zdGFydChhcmdzLCBuYW1lKTsKLQlyZXQgPSBydW5faG9va192ZShob29rX2Vudi5hcmd2LG5hbWUsIGFyZ3MpOwotCXZhX2VuZChhcmdzKTsKLQlhcmd2X2FycmF5X2NsZWFyKCZob29rX2Vudik7Ci0KLQlyZXR1cm4gcmV0OwotfQotCiBpbnQgY21kX2NvbW1pdChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKIHsKIAljb25zdCBjaGFyICphcmd2X2djX2F1dG9bXSA9IHsiZ2MiLCAiLS1hdXRvIiwgTlVMTH07CkBAIC0xNDc4LDcgKzE1MTMsNyBAQAogCQlPUFRfQk9PTCgncycsICJzaWdub2ZmIiwgJnNpZ25vZmYsIE5fKCJhZGQgU2lnbmVkLW9mZi1ieToiKSksCiAJCU9QVF9GSUxFTkFNRSgndCcsICJ0ZW1wbGF0ZSIsICZ0ZW1wbGF0ZV9maWxlLCBOXygidXNlIHNwZWNpZmllZCB0ZW1wbGF0ZSBmaWxlIikpLAogCQlPUFRfQk9PTCgnZScsICJlZGl0IiwgJmVkaXRfZmxhZywgTl8oImZvcmNlIGVkaXQgb2YgY29tbWl0IikpLAotCQlPUFRfU1RSSU5HKDAsICJjbGVhbnVwIiwgJmNsZWFudXBfYXJnLCBOXygiZGVmYXVsdCIpLCBOXygiaG93IHRvIHN0cmlwIHNwYWNlcyBhbmQgI2NvbW1lbnRzIGZyb20gbWVzc2FnZSIpKSwKKwkJT1BUX0NMRUFOVVAoJmNsZWFudXBfYXJnKSwKIAkJT1BUX0JPT0woMCwgInN0YXR1cyIsICZpbmNsdWRlX3N0YXR1cywgTl8oImluY2x1ZGUgc3RhdHVzIGluIGNvbW1pdCBtZXNzYWdlIHRlbXBsYXRlIikpLAogCQl7IE9QVElPTl9TVFJJTkcsICdTJywgImdwZy1zaWduIiwgJnNpZ25fY29tbWl0LCBOXygia2V5LWlkIiksCiAJCSAgTl8oIkdQRyBzaWduIGNvbW1pdCIpLCBQQVJTRV9PUFRfT1BUQVJHLCBOVUxMLCAoaW50cHRyX3QpICIiIH0sCkBAIC0xNTA3LDYgKzE1NDIsOCBAQAogCQlPUFRfQk9PTCgwLCAiYW1lbmQiLCAmYW1lbmQsIE5fKCJhbWVuZCBwcmV2aW91cyBjb21taXQiKSksCiAJCU9QVF9CT09MKDAsICJuby1wb3N0LXJld3JpdGUiLCAmbm9fcG9zdF9yZXdyaXRlLCBOXygiYnlwYXNzIHBvc3QtcmV3cml0ZSBob29rIikpLAogCQl7IE9QVElPTl9TVFJJTkcsICd1JywgInVudHJhY2tlZC1maWxlcyIsICZ1bnRyYWNrZWRfZmlsZXNfYXJnLCBOXygibW9kZSIpLCBOXygic2hvdyB1bnRyYWNrZWQgZmlsZXMsIG9wdGlvbmFsIG1vZGVzOiBhbGwsIG5vcm1hbCwgbm8uIChEZWZhdWx0OiBhbGwpIiksIFBBUlNFX09QVF9PUFRBUkcsIE5VTEwsIChpbnRwdHJfdCkiYWxsIiB9LAorCQlPUFRfUEFUSFNQRUNfRlJPTV9GSUxFKCZwYXRoc3BlY19mcm9tX2ZpbGUpLAorCQlPUFRfUEFUSFNQRUNfRklMRV9OVUwoJnBhdGhzcGVjX2ZpbGVfbnVsKSwKIAkJLyogZW5kIGNvbW1pdCBjb250ZW50cyBvcHRpb25zICovCiAKIAkJT1BUX0hJRERFTl9CT09MKDAsICJhbGxvdy1lbXB0eSIsICZhbGxvd19lbXB0eSwKQEAgLTE2MDAsOCArMTYzNywxMCBAQAogCQkJcmVkdWNlX2hlYWRzX3JlcGxhY2UoJnBhcmVudHMpOwogCX0gZWxzZSB7CiAJCWlmICghcmVmbG9nX21zZykKLQkJCXJlZmxvZ19tc2cgPSAod2hlbmNlID09IEZST01fQ0hFUlJZX1BJQ0spCisJCQlyZWZsb2dfbXNnID0gaXNfZnJvbV9jaGVycnlfcGljayh3aGVuY2UpCiAJCQkJCT8gImNvbW1pdCAoY2hlcnJ5LXBpY2spIgorCQkJCQk6IGlzX2Zyb21fcmViYXNlKHdoZW5jZSkKKwkJCQkJPyAiY29tbWl0IChyZWJhc2UpIgogCQkJCQk6ICJjb21taXQiOwogCQljb21taXRfbGlzdF9pbnNlcnQoY3VycmVudF9oZWFkLCAmcGFyZW50cyk7CiAJfQpAQCAtMTYxNCwxMSArMTY1Myw3IEBACiAJCWRpZShfKCJjb3VsZCBub3QgcmVhZCBjb21taXQgbWVzc2FnZTogJXMiKSwgc3RyZXJyb3Ioc2F2ZWRfZXJybm8pKTsKIAl9CiAKLQlpZiAodmVyYm9zZSB8fCAvKiBUcnVuY2F0ZSB0aGUgbWVzc2FnZSBqdXN0IGJlZm9yZSB0aGUgZGlmZiwgaWYgYW55LiAqLwotCSAgICBjbGVhbnVwX21vZGUgPT0gQ09NTUlUX01TR19DTEVBTlVQX1NDSVNTT1JTKQotCQlzdHJidWZfc2V0bGVuKCZzYiwgd3Rfc3RhdHVzX2xvY2F0ZV9lbmQoc2IuYnVmLCBzYi5sZW4pKTsKLQlpZiAoY2xlYW51cF9tb2RlICE9IENPTU1JVF9NU0dfQ0xFQU5VUF9OT05FKQotCQlzdHJidWZfc3RyaXBzcGFjZSgmc2IsIGNsZWFudXBfbW9kZSA9PSBDT01NSVRfTVNHX0NMRUFOVVBfQUxMKTsKKwljbGVhbnVwX21lc3NhZ2UoJnNiLCBjbGVhbnVwX21vZGUsIHZlcmJvc2UpOwogCiAJaWYgKG1lc3NhZ2VfaXNfZW1wdHkoJnNiLCBjbGVhbnVwX21vZGUpICYmICFhbGxvd19lbXB0eV9tZXNzYWdlKSB7CiAJCXJvbGxiYWNrX2luZGV4X2ZpbGVzKCk7CkBAIC0xNjU0LDggKzE2ODksNyBAQAogCQlkaWUoIiVzIiwgZXJyLmJ1Zik7CiAJfQogCi0JdW5saW5rKGdpdF9wYXRoX2NoZXJyeV9waWNrX2hlYWQodGhlX3JlcG9zaXRvcnkpKTsKLQl1bmxpbmsoZ2l0X3BhdGhfcmV2ZXJ0X2hlYWQodGhlX3JlcG9zaXRvcnkpKTsKKwlzZXF1ZW5jZXJfcG9zdF9jb21taXRfY2xlYW51cCh0aGVfcmVwb3NpdG9yeSwgMCk7CiAJdW5saW5rKGdpdF9wYXRoX21lcmdlX2hlYWQodGhlX3JlcG9zaXRvcnkpKTsKIAl1bmxpbmsoZ2l0X3BhdGhfbWVyZ2VfbXNnKHRoZV9yZXBvc2l0b3J5KSk7CiAJdW5saW5rKGdpdF9wYXRoX21lcmdlX21vZGUodGhlX3JlcG9zaXRvcnkpKTsKQEAgLTE2NjQsMTYgKzE2OTgsMTcgQEAKIAlpZiAoY29tbWl0X2luZGV4X2ZpbGVzKCkpCiAJCWRpZShfKCJyZXBvc2l0b3J5IGhhcyBiZWVuIHVwZGF0ZWQsIGJ1dCB1bmFibGUgdG8gd3JpdGVcbiIKIAkJICAgICAgIm5ld19pbmRleCBmaWxlLiBDaGVjayB0aGF0IGRpc2sgaXMgbm90IGZ1bGwgYW5kIHF1b3RhIGlzXG4iCi0JCSAgICAgICJub3QgZXhjZWVkZWQsIGFuZCB0aGVuIFwiZ2l0IHJlc2V0IEhFQURcIiB0byByZWNvdmVyLiIpKTsKKwkJICAgICAgIm5vdCBleGNlZWRlZCwgYW5kIHRoZW4gXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA6L1wiIHRvIHJlY292ZXIuIikpOwogCi0JaWYgKGdpdF9lbnZfYm9vbChHSVRfVEVTVF9DT01NSVRfR1JBUEgsIDApKQotCQl3cml0ZV9jb21taXRfZ3JhcGhfcmVhY2hhYmxlKGdldF9vYmplY3RfZGlyZWN0b3J5KCksIDAsIDApOworCWlmIChnaXRfZW52X2Jvb2woR0lUX1RFU1RfQ09NTUlUX0dSQVBILCAwKSAmJgorCSAgICB3cml0ZV9jb21taXRfZ3JhcGhfcmVhY2hhYmxlKHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzLT5vZGIsIDAsIE5VTEwpKQorCQlyZXR1cm4gMTsKIAogCXJlcG9fcmVyZXJlKHRoZV9yZXBvc2l0b3J5LCAwKTsKIAlydW5fY29tbWFuZF92X29wdChhcmd2X2djX2F1dG8sIFJVTl9HSVRfQ01EKTsKIAlydW5fY29tbWl0X2hvb2sodXNlX2VkaXRvciwgZ2V0X2luZGV4X2ZpbGUoKSwgInBvc3QtY29tbWl0IiwgTlVMTCk7CiAJaWYgKGFtZW5kICYmICFub19wb3N0X3Jld3JpdGUpIHsKLQkJY29tbWl0X3Bvc3RfcmV3cml0ZShjdXJyZW50X2hlYWQsICZvaWQpOworCQljb21taXRfcG9zdF9yZXdyaXRlKHRoZV9yZXBvc2l0b3J5LCBjdXJyZW50X2hlYWQsICZvaWQpOwogCX0KIAlpZiAoIXF1aWV0KSB7CiAJCXVuc2lnbmVkIGludCBmbGFncyA9IDA7CkBAIC0xNjgyLDcgKzE3MTcsOCBAQAogCQkJZmxhZ3MgfD0gU1VNTUFSWV9JTklUSUFMX0NPTU1JVDsKIAkJaWYgKGF1dGhvcl9kYXRlX2lzX2ludGVyZXN0aW5nKCkpCiAJCQlmbGFncyB8PSBTVU1NQVJZX1NIT1dfQVVUSE9SX0RBVEU7Ci0JCXByaW50X2NvbW1pdF9zdW1tYXJ5KHByZWZpeCwgJm9pZCwgZmxhZ3MpOworCQlwcmludF9jb21taXRfc3VtbWFyeSh0aGVfcmVwb3NpdG9yeSwgcHJlZml4LAorCQkJCSAgICAgJm9pZCwgZmxhZ3MpOwogCX0KIAogCVVOTEVBSyhlcnIpOwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9jb25maWcuYyBiL2J1aWx0aW4vY29uZmlnLmMKaW5kZXggODQzODVlZi4uZWU0YWVmNiAxMDA2NDQKLS0tIGEvYnVpbHRpbi9jb25maWcuYworKysgYi9idWlsdGluL2NvbmZpZy5jCkBAIC0yOSwxMCArMjksMTEgQEAKIHN0YXRpYyBzdHJ1Y3QgZ2l0X2NvbmZpZ19zb3VyY2UgZ2l2ZW5fY29uZmlnX3NvdXJjZTsKIHN0YXRpYyBpbnQgYWN0aW9ucywgdHlwZTsKIHN0YXRpYyBjaGFyICpkZWZhdWx0X3ZhbHVlOwotc3RhdGljIGludCBlbmRfbnVsbDsKK3N0YXRpYyBpbnQgZW5kX251bDsKIHN0YXRpYyBpbnQgcmVzcGVjdF9pbmNsdWRlc19vcHQgPSAtMTsKIHN0YXRpYyBzdHJ1Y3QgY29uZmlnX29wdGlvbnMgY29uZmlnX29wdGlvbnM7CiBzdGF0aWMgaW50IHNob3dfb3JpZ2luOworc3RhdGljIGludCBzaG93X3Njb3BlOwogCiAjZGVmaW5lIEFDVElPTl9HRVQgKDE8PDApCiAjZGVmaW5lIEFDVElPTl9HRVRfQUxMICgxPDwxKQpAQCAtMTUxLDEwICsxNTIsMTEgQEAKIAlPUFRfQ0FMTEJBQ0tfVkFMVUUoMCwgInBhdGgiLCAmdHlwZSwgTl8oInZhbHVlIGlzIGEgcGF0aCAoZmlsZSBvciBkaXJlY3RvcnkgbmFtZSkiKSwgVFlQRV9QQVRIKSwKIAlPUFRfQ0FMTEJBQ0tfVkFMVUUoMCwgImV4cGlyeS1kYXRlIiwgJnR5cGUsIE5fKCJ2YWx1ZSBpcyBhbiBleHBpcnkgZGF0ZSIpLCBUWVBFX0VYUElSWV9EQVRFKSwKIAlPUFRfR1JPVVAoTl8oIk90aGVyIikpLAotCU9QVF9CT09MKCd6JywgIm51bGwiLCAmZW5kX251bGwsIE5fKCJ0ZXJtaW5hdGUgdmFsdWVzIHdpdGggTlVMIGJ5dGUiKSksCisJT1BUX0JPT0woJ3onLCAibnVsbCIsICZlbmRfbnVsLCBOXygidGVybWluYXRlIHZhbHVlcyB3aXRoIE5VTCBieXRlIikpLAogCU9QVF9CT09MKDAsICJuYW1lLW9ubHkiLCAmb21pdF92YWx1ZXMsIE5fKCJzaG93IHZhcmlhYmxlIG5hbWVzIG9ubHkiKSksCiAJT1BUX0JPT0woMCwgImluY2x1ZGVzIiwgJnJlc3BlY3RfaW5jbHVkZXNfb3B0LCBOXygicmVzcGVjdCBpbmNsdWRlIGRpcmVjdGl2ZXMgb24gbG9va3VwIikpLAogCU9QVF9CT09MKDAsICJzaG93LW9yaWdpbiIsICZzaG93X29yaWdpbiwgTl8oInNob3cgb3JpZ2luIG9mIGNvbmZpZyAoZmlsZSwgc3RhbmRhcmQgaW5wdXQsIGJsb2IsIGNvbW1hbmQgbGluZSkiKSksCisJT1BUX0JPT0woMCwgInNob3ctc2NvcGUiLCAmc2hvd19zY29wZSwgTl8oInNob3cgc2NvcGUgb2YgY29uZmlnICh3b3JrdHJlZSwgbG9jYWwsIGdsb2JhbCwgc3lzdGVtLCBjb21tYW5kKSIpKSwKIAlPUFRfU1RSSU5HKDAsICJkZWZhdWx0IiwgJmRlZmF1bHRfdmFsdWUsIE5fKCJ2YWx1ZSIpLCBOXygid2l0aCAtLWdldCwgdXNlIGRlZmF1bHQgdmFsdWUgd2hlbiBtaXNzaW5nIGVudHJ5IikpLAogCU9QVF9FTkQoKSwKIH07CkBAIC0xNjQsNyArMTY2LDggQEAKIAl1c2FnZV93aXRoX29wdGlvbnMoYnVpbHRpbl9jb25maWdfdXNhZ2UsIGJ1aWx0aW5fY29uZmlnX29wdGlvbnMpOwogfQogCi1zdGF0aWMgdm9pZCBjaGVja19hcmdjKGludCBhcmdjLCBpbnQgbWluLCBpbnQgbWF4KSB7CitzdGF0aWMgdm9pZCBjaGVja19hcmdjKGludCBhcmdjLCBpbnQgbWluLCBpbnQgbWF4KQorewogCWlmIChhcmdjID49IG1pbiAmJiBhcmdjIDw9IG1heCkKIAkJcmV0dXJuOwogCWlmIChtaW4gPT0gbWF4KQpAQCAtMTc3LDIyICsxODAsMzQgQEAKIAogc3RhdGljIHZvaWQgc2hvd19jb25maWdfb3JpZ2luKHN0cnVjdCBzdHJidWYgKmJ1ZikKIHsKLQljb25zdCBjaGFyIHRlcm0gPSBlbmRfbnVsbCA/ICdcMCcgOiAnXHQnOworCWNvbnN0IGNoYXIgdGVybSA9IGVuZF9udWwgPyAnXDAnIDogJ1x0JzsKIAogCXN0cmJ1Zl9hZGRzdHIoYnVmLCBjdXJyZW50X2NvbmZpZ19vcmlnaW5fdHlwZSgpKTsKIAlzdHJidWZfYWRkY2goYnVmLCAnOicpOwotCWlmIChlbmRfbnVsbCkKKwlpZiAoZW5kX251bCkKIAkJc3RyYnVmX2FkZHN0cihidWYsIGN1cnJlbnRfY29uZmlnX25hbWUoKSk7CiAJZWxzZQogCQlxdW90ZV9jX3N0eWxlKGN1cnJlbnRfY29uZmlnX25hbWUoKSwgYnVmLCBOVUxMLCAwKTsKIAlzdHJidWZfYWRkY2goYnVmLCB0ZXJtKTsKIH0KIAorc3RhdGljIHZvaWQgc2hvd19jb25maWdfc2NvcGUoc3RydWN0IHN0cmJ1ZiAqYnVmKQoreworCWNvbnN0IGNoYXIgdGVybSA9IGVuZF9udWwgPyAnXDAnIDogJ1x0JzsKKwljb25zdCBjaGFyICpzY29wZSA9IGNvbmZpZ19zY29wZV9uYW1lKGN1cnJlbnRfY29uZmlnX3Njb3BlKCkpOworCisJc3RyYnVmX2FkZHN0cihidWYsIE5fKHNjb3BlKSk7CisJc3RyYnVmX2FkZGNoKGJ1ZiwgdGVybSk7Cit9CisKIHN0YXRpYyBpbnQgc2hvd19hbGxfY29uZmlnKGNvbnN0IGNoYXIgKmtleV8sIGNvbnN0IGNoYXIgKnZhbHVlXywgdm9pZCAqY2IpCiB7Ci0JaWYgKHNob3dfb3JpZ2luKSB7CisJaWYgKHNob3dfb3JpZ2luIHx8IHNob3dfc2NvcGUpIHsKIAkJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKLQkJc2hvd19jb25maWdfb3JpZ2luKCZidWYpOworCQlpZiAoc2hvd19zY29wZSkKKwkJCXNob3dfY29uZmlnX3Njb3BlKCZidWYpOworCQlpZiAoc2hvd19vcmlnaW4pCisJCQlzaG93X2NvbmZpZ19vcmlnaW4oJmJ1Zik7CiAJCS8qIFVzZSBmd3JpdGUgYXMgImJ1ZiIgY2FuIGNvbnRhaW4gXDAncyBpZiAiZW5kX251bGwiIGlzIHNldC4gKi8KIAkJZndyaXRlKGJ1Zi5idWYsIDEsIGJ1Zi5sZW4sIHN0ZG91dCk7CiAJCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOwpAQCAtMjEyLDYgKzIyNyw4IEBACiAKIHN0YXRpYyBpbnQgZm9ybWF0X2NvbmZpZyhzdHJ1Y3Qgc3RyYnVmICpidWYsIGNvbnN0IGNoYXIgKmtleV8sIGNvbnN0IGNoYXIgKnZhbHVlXykKIHsKKwlpZiAoc2hvd19zY29wZSkKKwkJc2hvd19jb25maWdfc2NvcGUoYnVmKTsKIAlpZiAoc2hvd19vcmlnaW4pCiAJCXNob3dfY29uZmlnX29yaWdpbihidWYpOwogCWlmIChzaG93X2tleXMpCkBAIC01OTgsNyArNjE1LDcgQEAKIAlpbnQgbm9uZ2l0ID0gIXN0YXJ0dXBfaW5mby0+aGF2ZV9yZXBvc2l0b3J5OwogCWNoYXIgKnZhbHVlOwogCi0JZ2l2ZW5fY29uZmlnX3NvdXJjZS5maWxlID0gZ2V0ZW52KENPTkZJR19FTlZJUk9OTUVOVCk7CisJZ2l2ZW5fY29uZmlnX3NvdXJjZS5maWxlID0geHN0cmR1cF9vcl9udWxsKGdldGVudihDT05GSUdfRU5WSVJPTk1FTlQpKTsKIAogCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgYnVpbHRpbl9jb25maWdfb3B0aW9ucywKIAkJCSAgICAgYnVpbHRpbl9jb25maWdfdXNhZ2UsCkBAIC02MjEsNiArNjM4LDcgQEAKIAkJCSFzdHJjbXAoZ2l2ZW5fY29uZmlnX3NvdXJjZS5maWxlLCAiLSIpKSB7CiAJCWdpdmVuX2NvbmZpZ19zb3VyY2UuZmlsZSA9IE5VTEw7CiAJCWdpdmVuX2NvbmZpZ19zb3VyY2UudXNlX3N0ZGluID0gMTsKKwkJZ2l2ZW5fY29uZmlnX3NvdXJjZS5zY29wZSA9IENPTkZJR19TQ09QRV9DT01NQU5EOwogCX0KIAogCWlmICh1c2VfZ2xvYmFsX2NvbmZpZykgewpAQCAtNjM2LDYgKzY1NCw4IEBACiAJCQkgKi8KIAkJCWRpZShfKCIkSE9NRSBub3Qgc2V0IikpOwogCisJCWdpdmVuX2NvbmZpZ19zb3VyY2Uuc2NvcGUgPSBDT05GSUdfU0NPUEVfR0xPQkFMOworCiAJCWlmIChhY2Nlc3Nfb3Jfd2Fybih1c2VyX2NvbmZpZywgUl9PSywgMCkgJiYKIAkJICAgIHhkZ19jb25maWcgJiYgIWFjY2Vzc19vcl93YXJuKHhkZ19jb25maWcsIFJfT0ssIDApKSB7CiAJCQlnaXZlbl9jb25maWdfc291cmNlLmZpbGUgPSB4ZGdfY29uZmlnOwpAQCAtNjQ1LDExICs2NjUsMTMgQEAKIAkJCWZyZWUoeGRnX2NvbmZpZyk7CiAJCX0KIAl9Ci0JZWxzZSBpZiAodXNlX3N5c3RlbV9jb25maWcpCisJZWxzZSBpZiAodXNlX3N5c3RlbV9jb25maWcpIHsKIAkJZ2l2ZW5fY29uZmlnX3NvdXJjZS5maWxlID0gZ2l0X2V0Y19naXRjb25maWcoKTsKLQllbHNlIGlmICh1c2VfbG9jYWxfY29uZmlnKQorCQlnaXZlbl9jb25maWdfc291cmNlLnNjb3BlID0gQ09ORklHX1NDT1BFX1NZU1RFTTsKKwl9IGVsc2UgaWYgKHVzZV9sb2NhbF9jb25maWcpIHsKIAkJZ2l2ZW5fY29uZmlnX3NvdXJjZS5maWxlID0gZ2l0X3BhdGhkdXAoImNvbmZpZyIpOwotCWVsc2UgaWYgKHVzZV93b3JrdHJlZV9jb25maWcpIHsKKwkJZ2l2ZW5fY29uZmlnX3NvdXJjZS5zY29wZSA9IENPTkZJR19TQ09QRV9MT0NBTDsKKwl9IGVsc2UgaWYgKHVzZV93b3JrdHJlZV9jb25maWcpIHsKIAkJc3RydWN0IHdvcmt0cmVlICoqd29ya3RyZWVzID0gZ2V0X3dvcmt0cmVlcygwKTsKIAkJaWYgKHJlcG9zaXRvcnlfZm9ybWF0X3dvcmt0cmVlX2NvbmZpZykKIAkJCWdpdmVuX2NvbmZpZ19zb3VyY2UuZmlsZSA9IGdpdF9wYXRoZHVwKCJjb25maWcud29ya3RyZWUiKTsKQEAgLTY2MSwxMyArNjgzLDE4IEBACiAJCQkgICAgICAic2VjdGlvbiBpbiBcImdpdCBoZWxwIHdvcmt0cmVlXCIgZm9yIGRldGFpbHMiKSk7CiAJCWVsc2UKIAkJCWdpdmVuX2NvbmZpZ19zb3VyY2UuZmlsZSA9IGdpdF9wYXRoZHVwKCJjb25maWciKTsKKwkJZ2l2ZW5fY29uZmlnX3NvdXJjZS5zY29wZSA9IENPTkZJR19TQ09QRV9MT0NBTDsKIAkJZnJlZV93b3JrdHJlZXMod29ya3RyZWVzKTsKIAl9IGVsc2UgaWYgKGdpdmVuX2NvbmZpZ19zb3VyY2UuZmlsZSkgewogCQlpZiAoIWlzX2Fic29sdXRlX3BhdGgoZ2l2ZW5fY29uZmlnX3NvdXJjZS5maWxlKSAmJiBwcmVmaXgpCiAJCQlnaXZlbl9jb25maWdfc291cmNlLmZpbGUgPQogCQkJCXByZWZpeF9maWxlbmFtZShwcmVmaXgsIGdpdmVuX2NvbmZpZ19zb3VyY2UuZmlsZSk7CisJCWdpdmVuX2NvbmZpZ19zb3VyY2Uuc2NvcGUgPSBDT05GSUdfU0NPUEVfQ09NTUFORDsKKwl9IGVsc2UgaWYgKGdpdmVuX2NvbmZpZ19zb3VyY2UuYmxvYikgeworCQlnaXZlbl9jb25maWdfc291cmNlLnNjb3BlID0gQ09ORklHX1NDT1BFX0NPTU1BTkQ7CiAJfQogCisKIAlpZiAocmVzcGVjdF9pbmNsdWRlc19vcHQgPT0gLTEpCiAJCWNvbmZpZ19vcHRpb25zLnJlc3BlY3RfaW5jbHVkZXMgPSAhZ2l2ZW5fY29uZmlnX3NvdXJjZS5maWxlOwogCWVsc2UKQEAgLTY3Nyw3ICs3MDQsNyBAQAogCQljb25maWdfb3B0aW9ucy5naXRfZGlyID0gZ2V0X2dpdF9kaXIoKTsKIAl9CiAKLQlpZiAoZW5kX251bGwpIHsKKwlpZiAoZW5kX251bCkgewogCQl0ZXJtID0gJ1wwJzsKIAkJZGVsaW0gPSAnXG4nOwogCQlrZXlfZGVsaW0gPSAnXG4nOwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9jb3VudC1vYmplY3RzLmMgYi9idWlsdGluL2NvdW50LW9iamVjdHMuYwppbmRleCBhN2NhZDA1Li4zZmFlNDc0IDEwMDY0NAotLS0gYS9idWlsdGluL2NvdW50LW9iamVjdHMuYworKysgYi9idWlsdGluL2NvdW50LW9iamVjdHMuYwpAQCAtNzgsMTAgKzc4LDEwIEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgcHJpbnRfYWx0ZXJuYXRlKHN0cnVjdCBhbHRlcm5hdGVfb2JqZWN0X2RhdGFiYXNlICphbHQsIHZvaWQgKmRhdGEpCitzdGF0aWMgaW50IHByaW50X2FsdGVybmF0ZShzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiLCB2b2lkICpkYXRhKQogewogCXByaW50ZigiYWx0ZXJuYXRlOiAiKTsKLQlxdW90ZV9jX3N0eWxlKGFsdC0+cGF0aCwgTlVMTCwgc3Rkb3V0LCAwKTsKKwlxdW90ZV9jX3N0eWxlKG9kYi0+cGF0aCwgTlVMTCwgc3Rkb3V0LCAwKTsKIAlwdXRjaGFyKCdcbicpOwogCXJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9kZXNjcmliZS5jIGIvYnVpbHRpbi9kZXNjcmliZS5jCmluZGV4IGNjMTE4NDQuLjQyMGY0YzYgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vZGVzY3JpYmUuYworKysgYi9idWlsdGluL2Rlc2NyaWJlLmMKQEAgLTEsMyArMSw0IEBACisjZGVmaW5lIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgImxvY2tmaWxlLmgiCkBAIC0xNCw3ICsxNSw2IEBACiAjaW5jbHVkZSAiYXJndi1hcnJheS5oIgogI2luY2x1ZGUgInJ1bi1jb21tYW5kLmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCi0jaW5jbHVkZSAicmV2aXNpb24uaCIKICNpbmNsdWRlICJsaXN0LW9iamVjdHMuaCIKICNpbmNsdWRlICJjb21taXQtc2xhYi5oIgogCkBAIC02MywxOSArNjMsMjIgQEAKIH07CiAKIHN0YXRpYyBpbnQgY29tbWl0X25hbWVfbmVxKGNvbnN0IHZvaWQgKnVudXNlZF9jbXBfZGF0YSwKLQkJCSAgIGNvbnN0IHZvaWQgKmVudHJ5LAotCQkJICAgY29uc3Qgdm9pZCAqZW50cnlfb3Jfa2V5LAorCQkJICAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmVwdHIsCisJCQkgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAogCQkJICAgY29uc3Qgdm9pZCAqcGVlbGVkKQogewotCWNvbnN0IHN0cnVjdCBjb21taXRfbmFtZSAqY24xID0gZW50cnk7Ci0JY29uc3Qgc3RydWN0IGNvbW1pdF9uYW1lICpjbjIgPSBlbnRyeV9vcl9rZXk7CisJY29uc3Qgc3RydWN0IGNvbW1pdF9uYW1lICpjbjEsICpjbjI7CisKKwljbjEgPSBjb250YWluZXJfb2YoZXB0ciwgY29uc3Qgc3RydWN0IGNvbW1pdF9uYW1lLCBlbnRyeSk7CisJY24yID0gY29udGFpbmVyX29mKGVudHJ5X29yX2tleSwgY29uc3Qgc3RydWN0IGNvbW1pdF9uYW1lLCBlbnRyeSk7CiAKIAlyZXR1cm4gIW9pZGVxKCZjbjEtPnBlZWxlZCwgcGVlbGVkID8gcGVlbGVkIDogJmNuMi0+cGVlbGVkKTsKIH0KIAogc3RhdGljIGlubGluZSBzdHJ1Y3QgY29tbWl0X25hbWUgKmZpbmRfY29tbWl0X25hbWUoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqcGVlbGVkKQogewotCXJldHVybiBoYXNobWFwX2dldF9mcm9tX2hhc2goJm5hbWVzLCBzaGExaGFzaChwZWVsZWQtPmhhc2gpLCBwZWVsZWQtPmhhc2gpOworCXJldHVybiBoYXNobWFwX2dldF9lbnRyeV9mcm9tX2hhc2goJm5hbWVzLCBvaWRoYXNoKHBlZWxlZCksIHBlZWxlZCwKKwkJCQkJCXN0cnVjdCBjb21taXRfbmFtZSwgZW50cnkpOwogfQogCiBzdGF0aWMgaW50IHJlcGxhY2VfbmFtZShzdHJ1Y3QgY29tbWl0X25hbWUgKmUsCkBAIC0xMjIsOCArMTI1LDggQEAKIAkJaWYgKCFlKSB7CiAJCQllID0geG1hbGxvYyhzaXplb2Yoc3RydWN0IGNvbW1pdF9uYW1lKSk7CiAJCQlvaWRjcHkoJmUtPnBlZWxlZCwgcGVlbGVkKTsKLQkJCWhhc2htYXBfZW50cnlfaW5pdChlLCBzaGExaGFzaChwZWVsZWQtPmhhc2gpKTsKLQkJCWhhc2htYXBfYWRkKCZuYW1lcywgZSk7CisJCQloYXNobWFwX2VudHJ5X2luaXQoJmUtPmVudHJ5LCBvaWRoYXNoKHBlZWxlZCkpOworCQkJaGFzaG1hcF9hZGQoJm5hbWVzLCAmZS0+ZW50cnkpOwogCQkJZS0+cGF0aCA9IE5VTEw7CiAJCX0KIAkJZS0+dGFnID0gdGFnOwpAQCAtMzEyLDcgKzMxNSw3IEBACiAJCSAqLwogCQlhcHBlbmRfbmFtZShuLCBkc3QpOwogCQlpZiAobG9uZ2Zvcm1hdCkKLQkJCWFwcGVuZF9zdWZmaXgoMCwgbi0+dGFnID8gJm4tPnRhZy0+dGFnZ2VkLT5vaWQgOiBvaWQsIGRzdCk7CisJCQlhcHBlbmRfc3VmZml4KDAsIG4tPnRhZyA/IGdldF90YWdnZWRfb2lkKG4tPnRhZykgOiBvaWQsIGRzdCk7CiAJCWlmIChzdWZmaXgpCiAJCQlzdHJidWZfYWRkc3RyKGRzdCwgc3VmZml4KTsKIAkJcmV0dXJuOwpAQCAtMzI5LDggKzMzMiw4IEBACiAJCXN0cnVjdCBjb21taXRfbmFtZSAqbjsKIAogCQlpbml0X2NvbW1pdF9uYW1lcygmY29tbWl0X25hbWVzKTsKLQkJbiA9IGhhc2htYXBfaXRlcl9maXJzdCgmbmFtZXMsICZpdGVyKTsKLQkJZm9yICg7IG47IG4gPSBoYXNobWFwX2l0ZXJfbmV4dCgmaXRlcikpIHsKKwkJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeSgmbmFtZXMsICZpdGVyLCBuLAorCQkJCQllbnRyeSAvKiBtZW1iZXIgbmFtZSAqLykgewogCQkJYyA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlX2dlbnRseSh0aGVfcmVwb3NpdG9yeSwKIAkJCQkJCQkgICAmbi0+cGVlbGVkLCAxKTsKIAkJCWlmIChjKQpAQCAtMzczLDExICszNzYsMjUgQEAKIAkJCWlmICghKGMtPm9iamVjdC5mbGFncyAmIHQtPmZsYWdfd2l0aGluKSkKIAkJCQl0LT5kZXB0aCsrOwogCQl9CisJCS8qIFN0b3AgaWYgbGFzdCByZW1haW5pbmcgcGF0aCBhbHJlYWR5IGNvdmVyZWQgYnkgYmVzdCBjYW5kaWRhdGUocykgKi8KIAkJaWYgKGFubm90YXRlZF9jbnQgJiYgIWxpc3QpIHsKLQkJCWlmIChkZWJ1ZykKLQkJCQlmcHJpbnRmKHN0ZGVyciwgXygiZmluaXNoZWQgc2VhcmNoIGF0ICVzXG4iKSwKLQkJCQkJb2lkX3RvX2hleCgmYy0+b2JqZWN0Lm9pZCkpOwotCQkJYnJlYWs7CisJCQlpbnQgYmVzdF9kZXB0aCA9IElOVF9NQVg7CisJCQl1bnNpZ25lZCBiZXN0X3dpdGhpbiA9IDA7CisJCQlmb3IgKGN1cl9tYXRjaCA9IDA7IGN1cl9tYXRjaCA8IG1hdGNoX2NudDsgY3VyX21hdGNoKyspIHsKKwkJCQlzdHJ1Y3QgcG9zc2libGVfdGFnICp0ID0gJmFsbF9tYXRjaGVzW2N1cl9tYXRjaF07CisJCQkJaWYgKHQtPmRlcHRoIDwgYmVzdF9kZXB0aCkgeworCQkJCQliZXN0X2RlcHRoID0gdC0+ZGVwdGg7CisJCQkJCWJlc3Rfd2l0aGluID0gdC0+ZmxhZ193aXRoaW47CisJCQkJfSBlbHNlIGlmICh0LT5kZXB0aCA9PSBiZXN0X2RlcHRoKSB7CisJCQkJCWJlc3Rfd2l0aGluIHw9IHQtPmZsYWdfd2l0aGluOworCQkJCX0KKwkJCX0KKwkJCWlmICgoYy0+b2JqZWN0LmZsYWdzICYgYmVzdF93aXRoaW4pID09IGJlc3Rfd2l0aGluKSB7CisJCQkJaWYgKGRlYnVnKQorCQkJCQlmcHJpbnRmKHN0ZGVyciwgXygiZmluaXNoZWQgc2VhcmNoIGF0ICVzXG4iKSwKKwkJCQkJCW9pZF90b19oZXgoJmMtPm9iamVjdC5vaWQpKTsKKwkJCQlicmVhazsKKwkJCX0KIAkJfQogCQl3aGlsZSAocGFyZW50cykgewogCQkJc3RydWN0IGNvbW1pdCAqcCA9IHBhcmVudHMtPml0ZW07CkBAIC02MjksMTIgKzY0NiwxMyBAQAogCQkJc3RydWN0IGFyZ3ZfYXJyYXkgYXJncyA9IEFSR1ZfQVJSQVlfSU5JVDsKIAkJCWludCBmZCwgcmVzdWx0OwogCisJCQlzZXR1cF93b3JrX3RyZWUoKTsKIAkJCXJlYWRfY2FjaGUoKTsKIAkJCXJlZnJlc2hfaW5kZXgoJnRoZV9pbmRleCwgUkVGUkVTSF9RVUlFVHxSRUZSRVNIX1VOTUVSR0VELAogCQkJCSAgICAgIE5VTEwsIE5VTEwsIE5VTEwpOwogCQkJZmQgPSBob2xkX2xvY2tlZF9pbmRleCgmaW5kZXhfbG9jaywgMCk7CiAJCQlpZiAoMCA8PSBmZCkKLQkJCQl1cGRhdGVfaW5kZXhfaWZfYWJsZSgmdGhlX2luZGV4LCAmaW5kZXhfbG9jayk7CisJCQkJcmVwb191cGRhdGVfaW5kZXhfaWZfYWJsZSh0aGVfcmVwb3NpdG9yeSwgJmluZGV4X2xvY2spOwogCiAJCQlyZXBvX2luaXRfcmV2aXNpb25zKHRoZV9yZXBvc2l0b3J5LCAmcmV2cywgcHJlZml4KTsKIAkJCWFyZ3ZfYXJyYXlfcHVzaHYoJmFyZ3MsIGRpZmZfaW5kZXhfYXJncyk7CmRpZmYgLS1naXQgYS9idWlsdGluL2RpZmYtZmlsZXMuYyBiL2J1aWx0aW4vZGlmZi1maWxlcy5jCmluZGV4IDQ4Y2ZjYjkuLjg2YWU0NzQgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vZGlmZi1maWxlcy5jCisrKyBiL2J1aWx0aW4vZGlmZi1maWxlcy5jCkBAIC0zLDYgKzMsNyBAQAogICoKICAqIENvcHlyaWdodCAoQykgTGludXMgVG9ydmFsZHMsIDIwMDUKICAqLworI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJkaWZmLmgiCmRpZmYgLS1naXQgYS9idWlsdGluL2RpZmYtaW5kZXguYyBiL2J1aWx0aW4vZGlmZi1pbmRleC5jCmluZGV4IGZjY2NkMWYuLjkzZWM2NDIgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vZGlmZi1pbmRleC5jCisrKyBiL2J1aWx0aW4vZGlmZi1pbmRleC5jCkBAIC0xLDMgKzEsNCBAQAorI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJkaWZmLmgiCmRpZmYgLS1naXQgYS9idWlsdGluL2RpZmYtdHJlZS5jIGIvYnVpbHRpbi9kaWZmLXRyZWUuYwppbmRleCBlZjk5NjEyLi5jYjllYTc5IDEwMDY0NAotLS0gYS9idWlsdGluL2RpZmYtdHJlZS5jCisrKyBiL2J1aWx0aW4vZGlmZi10cmVlLmMKQEAgLTEsMyArMSw0IEBACisjZGVmaW5lIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgImRpZmYuaCIKQEAgLTgyLDkgKzgzLDEzIEBACiB9CiAKIHN0YXRpYyBjb25zdCBjaGFyIGRpZmZfdHJlZV91c2FnZVtdID0KLSJnaXQgZGlmZi10cmVlIFstLXN0ZGluXSBbLW1dIFstY10gWy0tY2NdIFstc10gWy12XSBbLS1wcmV0dHldIFstdF0gWy1yXSBbLS1yb290XSAiCisiZ2l0IGRpZmYtdHJlZSBbLS1zdGRpbl0gWy1tXSBbLWMgfCAtLWNjXSBbLXNdIFstdl0gWy0tcHJldHR5XSBbLXRdIFstcl0gWy0tcm9vdF0gIgogIls8Y29tbW9uLWRpZmYtb3B0aW9ucz5dIDx0cmVlLWlzaD4gWzx0cmVlLWlzaD5dIFs8cGF0aD4uLi5dXG4iCiAiICAtciAgICAgICAgICAgIGRpZmYgcmVjdXJzaXZlbHlcbiIKKyIgIC1jICAgICAgICAgICAgc2hvdyBjb21iaW5lZCBkaWZmIGZvciBtZXJnZSBjb21taXRzXG4iCisiICAtLWNjICAgICAgICAgIHNob3cgY29tYmluZWQgZGlmZiBmb3IgbWVyZ2UgY29tbWl0cyByZW1vdmluZyB1bmludGVyZXN0aW5nIGh1bmtzXG4iCisiICAtLWNvbWJpbmVkLWFsbC1wYXRoc1xuIgorIiAgICAgICAgICAgICAgICBzaG93IG5hbWUgb2YgZmlsZSBpbiBhbGwgcGFyZW50cyBmb3IgY29tYmluZWQgZGlmZnNcbiIKICIgIC0tcm9vdCAgICAgICAgaW5jbHVkZSB0aGUgaW5pdGlhbCBjb21taXQgYXMgZGlmZiBhZ2FpbnN0IC9kZXYvbnVsbFxuIgogQ09NTU9OX0RJRkZfT1BUSU9OU19IRUxQOwogCkBAIC0xNjUsNyArMTcwLDcgQEAKIAogCQlpZiAob3B0LT5kaWZmb3B0LmRldGVjdF9yZW5hbWUpIHsKIAkJCWlmICghdGhlX2luZGV4LmNhY2hlKQotCQkJCXJlYWRfaW5kZXgoJnRoZV9pbmRleCk7CisJCQkJcmVwb19yZWFkX2luZGV4KHRoZV9yZXBvc2l0b3J5KTsKIAkJCW9wdC0+ZGlmZm9wdC5zZXR1cCB8PSBESUZGX1NFVFVQX1VTRV9TSVpFX0NBQ0hFOwogCQl9CiAJCXdoaWxlIChmZ2V0cyhsaW5lLCBzaXplb2YobGluZSksIHN0ZGluKSkgewpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9kaWZmLmMgYi9idWlsdGluL2RpZmYuYwppbmRleCBmMDM5M2JiLi40MmFjODAzIDEwMDY0NAotLS0gYS9idWlsdGluL2RpZmYuYworKysgYi9idWlsdGluL2RpZmYuYwpAQCAtMyw2ICszLDcgQEAKICAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDYgSnVuaW8gQyBIYW1hbm8KICAqLworI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJsb2NrZmlsZS5oIgpAQCAtMTAyLDcgKzEwMyw3IEBACiAJCQkgICAgICBpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsCiAJCQkgICAgICBzdHJ1Y3Qgb2JqZWN0X2FycmF5X2VudHJ5ICoqYmxvYikKIHsKLQl1bnNpZ25lZCBtb2RlID0gY2Fub25fbW9kZShTX0lGUkVHIHwgMDY0NCk7CisJY29uc3QgdW5zaWduZWQgbW9kZSA9IGNhbm9uX21vZGUoU19JRlJFRyB8IDA2NDQpOwogCiAJaWYgKGFyZ2MgPiAxKQogCQl1c2FnZShidWlsdGluX2RpZmZfdXNhZ2UpOwpAQCAtMjEyLDcgKzIxMyw3IEBACiAJZGlzY2FyZF9jYWNoZSgpOwogCXJlYWRfY2FjaGUoKTsKIAlyZWZyZXNoX2NhY2hlKFJFRlJFU0hfUVVJRVR8UkVGUkVTSF9VTk1FUkdFRCk7Ci0JdXBkYXRlX2luZGV4X2lmX2FibGUoJnRoZV9pbmRleCwgJmxvY2tfZmlsZSk7CisJcmVwb191cGRhdGVfaW5kZXhfaWZfYWJsZSh0aGVfcmVwb3NpdG9yeSwgJmxvY2tfZmlsZSk7CiB9CiAKIHN0YXRpYyBpbnQgYnVpbHRpbl9kaWZmX2ZpbGVzKHN0cnVjdCByZXZfaW5mbyAqcmV2cywgaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQpAQCAtMzIwLDM4ICszMjEsMjQgQEAKIAogCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksICZyZXYsIHByZWZpeCk7CiAKLQlpZiAobm9faW5kZXggJiYgYXJnYyAhPSBpICsgMikgewotCQlpZiAobm9faW5kZXggPT0gRElGRl9OT19JTkRFWF9JTVBMSUNJVCkgewotCQkJLyoKLQkJCSAqIFRoZXJlIHdhcyBubyAtLW5vLWluZGV4IGFuZCB0aGVyZSB3ZXJlIG5vdCB0d28KLQkJCSAqIHBhdGhzLiBJdCBpcyBwb3NzaWJsZSB0aGF0IHRoZSB1c2VyIGludGVuZGVkCi0JCQkgKiB0byBkbyBhbiBpbnNpZGUtcmVwb3NpdG9yeSBvcGVyYXRpb24uCi0JCQkgKi8KLQkJCWZwcmludGYoc3RkZXJyLCAiTm90IGEgZ2l0IHJlcG9zaXRvcnlcbiIpOwotCQkJZnByaW50ZihzdGRlcnIsCi0JCQkJIlRvIGNvbXBhcmUgdHdvIHBhdGhzIG91dHNpZGUgYSB3b3JraW5nIHRyZWU6XG4iKTsKLQkJfQotCQkvKiBHaXZlIHRoZSB1c2FnZSBtZXNzYWdlIGZvciBub24tcmVwb3NpdG9yeSB1c2FnZSBhbmQgZXhpdC4gKi8KLQkJdXNhZ2VmKCJnaXQgZGlmZiAlcyA8cGF0aD4gPHBhdGg+IiwKLQkJICAgICAgIG5vX2luZGV4ID09IERJRkZfTk9fSU5ERVhfRVhQTElDSVQgPwotCQkgICAgICAgIi0tbm8taW5kZXgiIDogIlstLW5vLWluZGV4XSIpOwotCi0JfQotCWlmIChub19pbmRleCkKLQkJLyogSWYgdGhpcyBpcyBhIG5vLWluZGV4IGRpZmYsIGp1c3QgcnVuIGl0IGFuZCBleGl0IHRoZXJlLiAqLwotCQlkaWZmX25vX2luZGV4KHRoZV9yZXBvc2l0b3J5LCAmcmV2LCBhcmdjLCBhcmd2KTsKLQotCS8qIE90aGVyd2lzZSwgd2UgYXJlIGRvaW5nIHRoZSB1c3VhbCAiZ2l0IiBkaWZmICovCi0JcmV2LmRpZmZvcHQuc2tpcF9zdGF0X3VubWF0Y2ggPSAhIWRpZmZfYXV0b19yZWZyZXNoX2luZGV4OwotCi0JLyogU2NhbGUgdG8gcmVhbCB0ZXJtaW5hbCBzaXplIGFuZCByZXNwZWN0IHN0YXRHcmFwaFdpZHRoIGNvbmZpZyAqLworCS8qIFNldCB1cCBkZWZhdWx0cyB0aGF0IHdpbGwgYXBwbHkgdG8gYm90aCBuby1pbmRleCBhbmQgcmVndWxhciBkaWZmcy4gKi8KIAlyZXYuZGlmZm9wdC5zdGF0X3dpZHRoID0gLTE7CiAJcmV2LmRpZmZvcHQuc3RhdF9ncmFwaF93aWR0aCA9IC0xOwotCi0JLyogRGVmYXVsdCB0byBsZXQgZXh0ZXJuYWwgYW5kIHRleHRjb252IGJlIHVzZWQgKi8KIAlyZXYuZGlmZm9wdC5mbGFncy5hbGxvd19leHRlcm5hbCA9IDE7CiAJcmV2LmRpZmZvcHQuZmxhZ3MuYWxsb3dfdGV4dGNvbnYgPSAxOwogCisJLyogSWYgdGhpcyBpcyBhIG5vLWluZGV4IGRpZmYsIGp1c3QgcnVuIGl0IGFuZCBleGl0IHRoZXJlLiAqLworCWlmIChub19pbmRleCkKKwkJZXhpdChkaWZmX25vX2luZGV4KCZyZXYsIG5vX2luZGV4ID09IERJRkZfTk9fSU5ERVhfSU1QTElDSVQsCisJCQkJICAgYXJnYywgYXJndikpOworCisKKwkvKgorCSAqIE90aGVyd2lzZSwgd2UgYXJlIGRvaW5nIHRoZSB1c3VhbCAiZ2l0IiBkaWZmOyBzZXQgdXAgYW55CisJICogZnVydGhlciBkZWZhdWx0cyB0aGF0IGFwcGx5IHRvIHJlZ3VsYXIgZGlmZnMuCisJICovCisJcmV2LmRpZmZvcHQuc2tpcF9zdGF0X3VubWF0Y2ggPSAhIWRpZmZfYXV0b19yZWZyZXNoX2luZGV4OworCiAJLyoKIAkgKiBEZWZhdWx0IHRvIGludGVudC10by1hZGQgZW50cmllcyBpbnZpc2libGUgaW4gdGhlCiAJICogaW5kZXguIFRoaXMgbWFrZXMgdGhlbSBzaG93IHVwIGFzIG5ldyBmaWxlcyBpbiBkaWZmLWZpbGVzCmRpZmYgLS1naXQgYS9idWlsdGluL2RpZmZ0b29sLmMgYi9idWlsdGluL2RpZmZ0b29sLmMKaW5kZXggNTQ0YjBlOC4uYzI4MGU2OCAxMDA2NDQKLS0tIGEvYnVpbHRpbi9kaWZmdG9vbC5jCisrKyBiL2J1aWx0aW4vZGlmZnRvb2wuYwpAQCAtMTEsNiArMTEsNyBAQAogICoKICAqIENvcHlyaWdodCAoQykgMjAxNiBKb2hhbm5lcyBTY2hpbmRlbGluCiAgKi8KKyNkZWZpbmUgVVNFX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiYnVpbHRpbi5oIgpAQCAtMjMsNyArMjQsNiBAQAogI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgogI2luY2x1ZGUgImRpci5oIgogCi1zdGF0aWMgY2hhciAqZGlmZl9ndWlfdG9vbDsKIHN0YXRpYyBpbnQgdHJ1c3RfZXhpdF9jb2RlOwogCiBzdGF0aWMgY29uc3QgY2hhciAqY29uc3QgYnVpbHRpbl9kaWZmdG9vbF91c2FnZVtdID0gewpAQCAtMzMsMTEgKzMzLDYgQEAKIAogc3RhdGljIGludCBkaWZmdG9vbF9jb25maWcoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqY2IpCiB7Ci0JaWYgKCFzdHJjbXAodmFyLCAiZGlmZi5ndWl0b29sIikpIHsKLQkJZGlmZl9ndWlfdG9vbCA9IHhzdHJkdXAodmFsdWUpOwotCQlyZXR1cm4gMDsKLQl9Ci0KIAlpZiAoIXN0cmNtcCh2YXIsICJkaWZmdG9vbC50cnVzdGV4aXRjb2RlIikpIHsKIAkJdHJ1c3RfZXhpdF9jb2RlID0gZ2l0X2NvbmZpZ19ib29sKHZhciwgdmFsdWUpOwogCQlyZXR1cm4gMDsKQEAgLTY0LDE0ICs1OSwxMiBAQAogCSptb2RlMiA9IChpbnQpc3RydG9sKHAgKyAxLCAmcCwgOCk7CiAJaWYgKCpwICE9ICcgJykKIAkJcmV0dXJuIGVycm9yKCJleHBlY3RlZCAnICcsIGdvdCAnJWMnIiwgKnApOwotCWlmIChnZXRfb2lkX2hleCgrK3AsIG9pZDEpKQotCQlyZXR1cm4gZXJyb3IoImV4cGVjdGVkIG9iamVjdCBJRCwgZ290ICclcyciLCBwICsgMSk7Ci0JcCArPSBHSVRfU0hBMV9IRVhTWjsKKwlpZiAocGFyc2Vfb2lkX2hleCgrK3AsIG9pZDEsIChjb25zdCBjaGFyICoqKSZwKSkKKwkJcmV0dXJuIGVycm9yKCJleHBlY3RlZCBvYmplY3QgSUQsIGdvdCAnJXMnIiwgcCk7CiAJaWYgKCpwICE9ICcgJykKIAkJcmV0dXJuIGVycm9yKCJleHBlY3RlZCAnICcsIGdvdCAnJWMnIiwgKnApOwotCWlmIChnZXRfb2lkX2hleCgrK3AsIG9pZDIpKQotCQlyZXR1cm4gZXJyb3IoImV4cGVjdGVkIG9iamVjdCBJRCwgZ290ICclcyciLCBwICsgMSk7Ci0JcCArPSBHSVRfU0hBMV9IRVhTWjsKKwlpZiAocGFyc2Vfb2lkX2hleCgrK3AsIG9pZDIsIChjb25zdCBjaGFyICoqKSZwKSkKKwkJcmV0dXJuIGVycm9yKCJleHBlY3RlZCBvYmplY3QgSUQsIGdvdCAnJXMnIiwgcCk7CiAJaWYgKCpwICE9ICcgJykKIAkJcmV0dXJuIGVycm9yKCJleHBlY3RlZCAnICcsIGdvdCAnJWMnIiwgKnApOwogCSpzdGF0dXMgPSAqKytwOwpAQCAtMTMyLDEyICsxMjUsMTUgQEAKIH07CiAKIHN0YXRpYyBpbnQgd29ya2luZ190cmVlX2VudHJ5X2NtcChjb25zdCB2b2lkICp1bnVzZWRfY21wX2RhdGEsCi0JCQkJICBjb25zdCB2b2lkICplbnRyeSwKLQkJCQkgIGNvbnN0IHZvaWQgKmVudHJ5X29yX2tleSwKKwkJCQkgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplcHRyLAorCQkJCSAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmVudHJ5X29yX2tleSwKIAkJCQkgIGNvbnN0IHZvaWQgKnVudXNlZF9rZXlkYXRhKQogewotCWNvbnN0IHN0cnVjdCB3b3JraW5nX3RyZWVfZW50cnkgKmEgPSBlbnRyeTsKLQljb25zdCBzdHJ1Y3Qgd29ya2luZ190cmVlX2VudHJ5ICpiID0gZW50cnlfb3Jfa2V5OworCWNvbnN0IHN0cnVjdCB3b3JraW5nX3RyZWVfZW50cnkgKmEsICpiOworCisJYSA9IGNvbnRhaW5lcl9vZihlcHRyLCBjb25zdCBzdHJ1Y3Qgd29ya2luZ190cmVlX2VudHJ5LCBlbnRyeSk7CisJYiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIGNvbnN0IHN0cnVjdCB3b3JraW5nX3RyZWVfZW50cnksIGVudHJ5KTsKKwogCXJldHVybiBzdHJjbXAoYS0+cGF0aCwgYi0+cGF0aCk7CiB9CiAKQEAgLTE1MiwxMiArMTQ4LDE0IEBACiB9OwogCiBzdGF0aWMgaW50IHBhaXJfY21wKGNvbnN0IHZvaWQgKnVudXNlZF9jbXBfZGF0YSwKLQkJICAgIGNvbnN0IHZvaWQgKmVudHJ5LAotCQkgICAgY29uc3Qgdm9pZCAqZW50cnlfb3Jfa2V5LAorCQkgICAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmVwdHIsCisJCSAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAogCQkgICAgY29uc3Qgdm9pZCAqdW51c2VkX2tleWRhdGEpCiB7Ci0JY29uc3Qgc3RydWN0IHBhaXJfZW50cnkgKmEgPSBlbnRyeTsKLQljb25zdCBzdHJ1Y3QgcGFpcl9lbnRyeSAqYiA9IGVudHJ5X29yX2tleTsKKwljb25zdCBzdHJ1Y3QgcGFpcl9lbnRyeSAqYSwgKmI7CisKKwlhID0gY29udGFpbmVyX29mKGVwdHIsIGNvbnN0IHN0cnVjdCBwYWlyX2VudHJ5LCBlbnRyeSk7CisJYiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIGNvbnN0IHN0cnVjdCBwYWlyX2VudHJ5LCBlbnRyeSk7CiAKIAlyZXR1cm4gc3RyY21wKGEtPnBhdGgsIGItPnBhdGgpOwogfQpAQCAtMTY4LDE0ICsxNjYsMTQgQEAKIAlzdHJ1Y3QgcGFpcl9lbnRyeSAqZSwgKmV4aXN0aW5nOwogCiAJRkxFWF9BTExPQ19TVFIoZSwgcGF0aCwgcGF0aCk7Ci0JaGFzaG1hcF9lbnRyeV9pbml0KGUsIHN0cmhhc2gocGF0aCkpOwotCWV4aXN0aW5nID0gaGFzaG1hcF9nZXQobWFwLCBlLCBOVUxMKTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmUtPmVudHJ5LCBzdHJoYXNoKHBhdGgpKTsKKwlleGlzdGluZyA9IGhhc2htYXBfZ2V0X2VudHJ5KG1hcCwgZSwgZW50cnksIE5VTEwpOwogCWlmIChleGlzdGluZykgewogCQlmcmVlKGUpOwogCQllID0gZXhpc3Rpbmc7CiAJfSBlbHNlIHsKIAkJZS0+bGVmdFswXSA9IGUtPnJpZ2h0WzBdID0gJ1wwJzsKLQkJaGFzaG1hcF9hZGQobWFwLCBlKTsKKwkJaGFzaG1hcF9hZGQobWFwLCAmZS0+ZW50cnkpOwogCX0KIAlzdHJsY3B5KGlzX3JpZ2h0ID8gZS0+cmlnaHQgOiBlLT5sZWZ0LCBjb250ZW50LCBQQVRIX01BWCk7CiB9CkBAIC0xODYsMTIgKzE4NCwxNCBAQAogfTsKIAogc3RhdGljIGludCBwYXRoX2VudHJ5X2NtcChjb25zdCB2b2lkICp1bnVzZWRfY21wX2RhdGEsCi0JCQkgIGNvbnN0IHZvaWQgKmVudHJ5LAotCQkJICBjb25zdCB2b2lkICplbnRyeV9vcl9rZXksCisJCQkgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplcHRyLAorCQkJICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAogCQkJICBjb25zdCB2b2lkICprZXkpCiB7Ci0JY29uc3Qgc3RydWN0IHBhdGhfZW50cnkgKmEgPSBlbnRyeTsKLQljb25zdCBzdHJ1Y3QgcGF0aF9lbnRyeSAqYiA9IGVudHJ5X29yX2tleTsKKwljb25zdCBzdHJ1Y3QgcGF0aF9lbnRyeSAqYSwgKmI7CisKKwlhID0gY29udGFpbmVyX29mKGVwdHIsIGNvbnN0IHN0cnVjdCBwYXRoX2VudHJ5LCBlbnRyeSk7CisJYiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIGNvbnN0IHN0cnVjdCBwYXRoX2VudHJ5LCBlbnRyeSk7CiAKIAlyZXR1cm4gc3RyY21wKGEtPnBhdGgsIGtleSA/IGtleSA6IGItPnBhdGgpOwogfQpAQCAtMjQxLDggKzI0MSw4IEBACiAJd2hpbGUgKCFzdHJidWZfZ2V0bGluZV9udWwoJmJ1ZiwgZnApKSB7CiAJCXN0cnVjdCBwYXRoX2VudHJ5ICplbnRyeTsKIAkJRkxFWF9BTExPQ19TVFIoZW50cnksIHBhdGgsIGJ1Zi5idWYpOwotCQloYXNobWFwX2VudHJ5X2luaXQoZW50cnksIHN0cmhhc2goYnVmLmJ1ZikpOwotCQloYXNobWFwX2FkZChyZXN1bHQsIGVudHJ5KTsKKwkJaGFzaG1hcF9lbnRyeV9pbml0KCZlbnRyeS0+ZW50cnksIHN0cmhhc2goYnVmLmJ1ZikpOworCQloYXNobWFwX2FkZChyZXN1bHQsICZlbnRyeS0+ZW50cnkpOwogCX0KIAlmY2xvc2UoZnApOwogCWlmIChmaW5pc2hfY29tbWFuZCgmZGlmZl9maWxlcykpCkBAIC0zMjMsNyArMzIzLDcgQEAKIAlpbnQgcmV0OwogCiAJY2UgPSBtYWtlX3RyYW5zaWVudF9jYWNoZV9lbnRyeShtb2RlLCBvaWQsIHBhdGgsIDApOwotCXJldCA9IGNoZWNrb3V0X2VudHJ5KGNlLCBzdGF0ZSwgTlVMTCk7CisJcmV0ID0gY2hlY2tvdXRfZW50cnkoY2UsIHN0YXRlLCBOVUxMLCBOVUxMKTsKIAogCWRpc2NhcmRfY2FjaGVfZW50cnkoY2UpOwogCXJldHVybiByZXQ7CkBAIC00NjgsMTIgKzQ2OCwxMyBAQAogCiAJCQkvKiBBdm9pZCBkdXBsaWNhdGUgd29ya2luZ190cmVlIGVudHJpZXMgKi8KIAkJCUZMRVhfQUxMT0NfU1RSKGVudHJ5LCBwYXRoLCBkc3RfcGF0aCk7Ci0JCQloYXNobWFwX2VudHJ5X2luaXQoZW50cnksIHN0cmhhc2goZHN0X3BhdGgpKTsKLQkJCWlmIChoYXNobWFwX2dldCgmd29ya2luZ190cmVlX2R1cHMsIGVudHJ5LCBOVUxMKSkgeworCQkJaGFzaG1hcF9lbnRyeV9pbml0KCZlbnRyeS0+ZW50cnksIHN0cmhhc2goZHN0X3BhdGgpKTsKKwkJCWlmIChoYXNobWFwX2dldCgmd29ya2luZ190cmVlX2R1cHMsICZlbnRyeS0+ZW50cnksCisJCQkJCU5VTEwpKSB7CiAJCQkJZnJlZShlbnRyeSk7CiAJCQkJY29udGludWU7CiAJCQl9Ci0JCQloYXNobWFwX2FkZCgmd29ya2luZ190cmVlX2R1cHMsIGVudHJ5KTsKKwkJCWhhc2htYXBfYWRkKCZ3b3JraW5nX3RyZWVfZHVwcywgJmVudHJ5LT5lbnRyeSk7CiAKIAkJCWlmICghdXNlX3d0X2ZpbGUod29ya2RpciwgZHN0X3BhdGgsICZyb2lkKSkgewogCQkJCWlmIChjaGVja291dF9wYXRoKHJtb2RlLCAmcm9pZCwgZHN0X3BhdGgsCkBAIC01MzcsOCArNTM4LDggQEAKIAkgKiB0ZW1wb3JhcnkgZmlsZSB0byBib3RoIHRoZSBsZWZ0IGFuZCByaWdodCBkaXJlY3RvcmllcyB0byBzaG93IHRoZQogCSAqIGNoYW5nZSBpbiB0aGUgcmVjb3JkZWQgU0hBMSBmb3IgdGhlIHN1Ym1vZHVsZS4KIAkgKi8KLQloYXNobWFwX2l0ZXJfaW5pdCgmc3VibW9kdWxlcywgJml0ZXIpOwotCXdoaWxlICgoZW50cnkgPSBoYXNobWFwX2l0ZXJfbmV4dCgmaXRlcikpKSB7CisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeSgmc3VibW9kdWxlcywgJml0ZXIsIGVudHJ5LAorCQkJCWVudHJ5IC8qIG1lbWJlciBuYW1lICovKSB7CiAJCWlmICgqZW50cnktPmxlZnQpIHsKIAkJCWFkZF9wYXRoKCZsZGlyLCBsZGlyX2xlbiwgZW50cnktPnBhdGgpOwogCQkJZW5zdXJlX2xlYWRpbmdfZGlyZWN0b3JpZXMobGRpci5idWYpOwpAQCAtNTU2LDggKzU1Nyw4IEBACiAJICogc2hvd3Mgb25seSB0aGUgbGluayBpdHNlbGYsIG5vdCB0aGUgY29udGVudHMgb2YgdGhlIGxpbmsgdGFyZ2V0LgogCSAqIFRoaXMgbG9vcCByZXBsaWNhdGVzIHRoYXQgYmVoYXZpb3IuCiAJICovCi0JaGFzaG1hcF9pdGVyX2luaXQoJnN5bWxpbmtzMiwgJml0ZXIpOwotCXdoaWxlICgoZW50cnkgPSBoYXNobWFwX2l0ZXJfbmV4dCgmaXRlcikpKSB7CisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeSgmc3ltbGlua3MyLCAmaXRlciwgZW50cnksCisJCQkJZW50cnkgLyogbWVtYmVyIG5hbWUgKi8pIHsKIAkJaWYgKCplbnRyeS0+bGVmdCkgewogCQkJYWRkX3BhdGgoJmxkaXIsIGxkaXJfbGVuLCBlbnRyeS0+cGF0aCk7CiAJCQllbnN1cmVfbGVhZGluZ19kaXJlY3RvcmllcyhsZGlyLmJ1Zik7CkBAIC02ODksNyArNjkwLDcgQEAKIGludCBjbWRfZGlmZnRvb2woaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCiB7CiAJaW50IHVzZV9ndWlfdG9vbCA9IDAsIGRpcl9kaWZmID0gMCwgcHJvbXB0ID0gLTEsIHN5bWxpbmtzID0gMCwKLQkgICAgdG9vbF9oZWxwID0gMDsKKwkgICAgdG9vbF9oZWxwID0gMCwgbm9faW5kZXggPSAwOwogCXN0YXRpYyBjaGFyICpkaWZmdG9vbF9jbWQgPSBOVUxMLCAqZXh0Y21kID0gTlVMTDsKIAlzdHJ1Y3Qgb3B0aW9uIGJ1aWx0aW5fZGlmZnRvb2xfb3B0aW9uc1tdID0gewogCQlPUFRfQk9PTCgnZycsICJndWkiLCAmdXNlX2d1aV90b29sLApAQCAtNzEzLDYgKzcxNCw3IEBACiAJCQkgICAgInRvb2wgcmV0dXJucyBhIG5vbiAtIHplcm8gZXhpdCBjb2RlIikpLAogCQlPUFRfU1RSSU5HKCd4JywgImV4dGNtZCIsICZleHRjbWQsIE5fKCJjb21tYW5kIiksCiAJCQkgICBOXygic3BlY2lmeSBhIGN1c3RvbSBjb21tYW5kIGZvciB2aWV3aW5nIGRpZmZzIikpLAorCQlPUFRfQVJHVU1FTlQoIm5vLWluZGV4IiwgJm5vX2luZGV4LCBOXygicGFzc2VkIHRvIGBkaWZmYCIpKSwKIAkJT1BUX0VORCgpCiAJfTsKIApAQCAtNzI2LDEyICs3MjgsMjEgQEAKIAlpZiAodG9vbF9oZWxwKQogCQlyZXR1cm4gcHJpbnRfdG9vbF9oZWxwKCk7CiAKLQkvKiBORUVEU1dPUks6IG9uY2Ugd2Ugbm8gbG9uZ2VyIHNwYXduIGFueXRoaW5nLCByZW1vdmUgdGhpcyAqLwotCXNldGVudihHSVRfRElSX0VOVklST05NRU5ULCBhYnNvbHV0ZV9wYXRoKGdldF9naXRfZGlyKCkpLCAxKTsKLQlzZXRlbnYoR0lUX1dPUktfVFJFRV9FTlZJUk9OTUVOVCwgYWJzb2x1dGVfcGF0aChnZXRfZ2l0X3dvcmtfdHJlZSgpKSwgMSk7CisJaWYgKCFub19pbmRleCAmJiAhc3RhcnR1cF9pbmZvLT5oYXZlX3JlcG9zaXRvcnkpCisJCWRpZShfKCJkaWZmdG9vbCByZXF1aXJlcyB3b3JrdHJlZSBvciAtLW5vLWluZGV4IikpOwogCi0JaWYgKHVzZV9ndWlfdG9vbCAmJiBkaWZmX2d1aV90b29sICYmICpkaWZmX2d1aV90b29sKQotCQlzZXRlbnYoIkdJVF9ESUZGX1RPT0wiLCBkaWZmX2d1aV90b29sLCAxKTsKKwlpZiAoIW5vX2luZGV4KXsKKwkJc2V0dXBfd29ya190cmVlKCk7CisJCXNldGVudihHSVRfRElSX0VOVklST05NRU5ULCBhYnNvbHV0ZV9wYXRoKGdldF9naXRfZGlyKCkpLCAxKTsKKwkJc2V0ZW52KEdJVF9XT1JLX1RSRUVfRU5WSVJPTk1FTlQsIGFic29sdXRlX3BhdGgoZ2V0X2dpdF93b3JrX3RyZWUoKSksIDEpOworCX0gZWxzZSBpZiAoZGlyX2RpZmYpCisJCWRpZShfKCItLWRpci1kaWZmIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8taW5kZXgiKSk7CisKKwlpZiAodXNlX2d1aV90b29sICsgISFkaWZmdG9vbF9jbWQgKyAhIWV4dGNtZCA+IDEpCisJCWRpZShfKCItLWd1aSwgLS10b29sIGFuZCAtLWV4dGNtZCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIikpOworCisJaWYgKHVzZV9ndWlfdG9vbCkKKwkJc2V0ZW52KCJHSVRfTUVSR0VUT09MX0dVSSIsICJ0cnVlIiwgMSk7CiAJZWxzZSBpZiAoZGlmZnRvb2xfY21kKSB7CiAJCWlmICgqZGlmZnRvb2xfY21kKQogCQkJc2V0ZW52KCJHSVRfRElGRl9UT09MIiwgZGlmZnRvb2xfY21kLCAxKTsKZGlmZiAtLWdpdCBhL2J1aWx0aW4vZW52LS1oZWxwZXIuYyBiL2J1aWx0aW4vZW52LS1oZWxwZXIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yM2MyMTRmCi0tLSAvZGV2L251bGwKKysrIGIvYnVpbHRpbi9lbnYtLWhlbHBlci5jCkBAIC0wLDAgKzEsOTUgQEAKKyNpbmNsdWRlICJidWlsdGluLmgiCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAicGFyc2Utb3B0aW9ucy5oIgorCitzdGF0aWMgY2hhciBjb25zdCAqIGNvbnN0IGVudl9faGVscGVyX3VzYWdlW10gPSB7CisJTl8oImdpdCBlbnYtLWhlbHBlciAtLXR5cGU9W2Jvb2x8dWxvbmddIDxvcHRpb25zPiA8ZW52LXZhcj4iKSwKKwlOVUxMCit9OworCitzdGF0aWMgZW51bSB7CisJRU5WX0hFTFBFUl9UWVBFX0JPT0wgPSAxLAorCUVOVl9IRUxQRVJfVFlQRV9VTE9ORworfSBjbWRtb2RlID0gMDsKKworc3RhdGljIGludCBvcHRpb25fcGFyc2VfdHlwZShjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsIGNvbnN0IGNoYXIgKmFyZywKKwkJCSAgICAgaW50IHVuc2V0KQoreworCWlmICghc3RyY21wKGFyZywgImJvb2wiKSkKKwkJY21kbW9kZSA9IEVOVl9IRUxQRVJfVFlQRV9CT09MOworCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAidWxvbmciKSkKKwkJY21kbW9kZSA9IEVOVl9IRUxQRVJfVFlQRV9VTE9ORzsKKwllbHNlCisJCWRpZShfKCJ1bnJlY29nbml6ZWQgLS10eXBlIGFyZ3VtZW50LCAlcyIpLCBhcmcpOworCisJcmV0dXJuIDA7Cit9CisKK2ludCBjbWRfZW52X19oZWxwZXIoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCit7CisJaW50IGV4aXRfY29kZSA9IDA7CisJY29uc3QgY2hhciAqZW52X3ZhcmlhYmxlID0gTlVMTDsKKwljb25zdCBjaGFyICplbnZfZGVmYXVsdCA9IE5VTEw7CisJaW50IHJldDsKKwlpbnQgcmV0X2ludCwgZGVmYXVsdF9pbnQ7CisJdW5zaWduZWQgbG9uZyByZXRfdWxvbmcsIGRlZmF1bHRfdWxvbmc7CisJc3RydWN0IG9wdGlvbiBvcHRzW10gPSB7CisJCU9QVF9DQUxMQkFDS19GKDAsICJ0eXBlIiwgJmNtZG1vZGUsIE5fKCJ0eXBlIiksCisJCQkgICAgICAgTl8oInZhbHVlIGlzIGdpdmVuIHRoaXMgdHlwZSIpLCBQQVJTRV9PUFRfTk9ORUcsCisJCQkgICAgICAgb3B0aW9uX3BhcnNlX3R5cGUpLAorCQlPUFRfU1RSSU5HKDAsICJkZWZhdWx0IiwgJmVudl9kZWZhdWx0LCBOXygidmFsdWUiKSwKKwkJCSAgIE5fKCJkZWZhdWx0IGZvciBnaXRfZW52XyooLi4uKSB0byBmYWxsIGJhY2sgb24iKSksCisJCU9QVF9CT09MKDAsICJleGl0LWNvZGUiLCAmZXhpdF9jb2RlLAorCQkJIE5fKCJiZSBxdWlldCBvbmx5IHVzZSBnaXRfZW52XyooKSB2YWx1ZSBhcyBleGl0IGNvZGUiKSksCisJCU9QVF9FTkQoKSwKKwl9OworCisJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LCBvcHRzLCBlbnZfX2hlbHBlcl91c2FnZSwKKwkJCSAgICAgUEFSU0VfT1BUX0tFRVBfVU5LTk9XTik7CisJaWYgKGVudl9kZWZhdWx0ICYmICEqZW52X2RlZmF1bHQpCisJCXVzYWdlX3dpdGhfb3B0aW9ucyhlbnZfX2hlbHBlcl91c2FnZSwgb3B0cyk7CisJaWYgKCFjbWRtb2RlKQorCQl1c2FnZV93aXRoX29wdGlvbnMoZW52X19oZWxwZXJfdXNhZ2UsIG9wdHMpOworCWlmIChhcmdjICE9IDEpCisJCXVzYWdlX3dpdGhfb3B0aW9ucyhlbnZfX2hlbHBlcl91c2FnZSwgb3B0cyk7CisJZW52X3ZhcmlhYmxlID0gYXJndlswXTsKKworCXN3aXRjaCAoY21kbW9kZSkgeworCWNhc2UgRU5WX0hFTFBFUl9UWVBFX0JPT0w6CisJCWlmIChlbnZfZGVmYXVsdCkgeworCQkJZGVmYXVsdF9pbnQgPSBnaXRfcGFyc2VfbWF5YmVfYm9vbChlbnZfZGVmYXVsdCk7CisJCQlpZiAoZGVmYXVsdF9pbnQgPT0gLTEpIHsKKwkJCQllcnJvcihfKCJvcHRpb24gYC0tZGVmYXVsdCcgZXhwZWN0cyBhIGJvb2xlYW4gdmFsdWUgd2l0aCBgLS10eXBlPWJvb2xgLCBub3QgYCVzYCIpLAorCQkJCSAgICAgIGVudl9kZWZhdWx0KTsKKwkJCQl1c2FnZV93aXRoX29wdGlvbnMoZW52X19oZWxwZXJfdXNhZ2UsIG9wdHMpOworCQkJfQorCQl9IGVsc2UgeworCQkJZGVmYXVsdF9pbnQgPSAwOworCQl9CisJCXJldF9pbnQgPSBnaXRfZW52X2Jvb2woZW52X3ZhcmlhYmxlLCBkZWZhdWx0X2ludCk7CisJCWlmICghZXhpdF9jb2RlKQorCQkJcHV0cyhyZXRfaW50ID8gInRydWUiIDogImZhbHNlIik7CisJCXJldCA9IHJldF9pbnQ7CisJCWJyZWFrOworCWNhc2UgRU5WX0hFTFBFUl9UWVBFX1VMT05HOgorCQlpZiAoZW52X2RlZmF1bHQpIHsKKwkJCWlmICghZ2l0X3BhcnNlX3Vsb25nKGVudl9kZWZhdWx0LCAmZGVmYXVsdF91bG9uZykpIHsKKwkJCQllcnJvcihfKCJvcHRpb24gYC0tZGVmYXVsdCcgZXhwZWN0cyBhbiB1bnNpZ25lZCBsb25nIHZhbHVlIHdpdGggYC0tdHlwZT11bG9uZ2AsIG5vdCBgJXNgIiksCisJCQkJICAgICAgZW52X2RlZmF1bHQpOworCQkJCXVzYWdlX3dpdGhfb3B0aW9ucyhlbnZfX2hlbHBlcl91c2FnZSwgb3B0cyk7CisJCQl9CisJCX0gZWxzZSB7CisJCQlkZWZhdWx0X3Vsb25nID0gMDsKKwkJfQorCQlyZXRfdWxvbmcgPSBnaXRfZW52X3Vsb25nKGVudl92YXJpYWJsZSwgZGVmYXVsdF91bG9uZyk7CisJCWlmICghZXhpdF9jb2RlKQorCQkJcHJpbnRmKCIlbHVcbiIsIHJldF91bG9uZyk7CisJCXJldCA9IHJldF91bG9uZzsKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJQlVHKCJ1bmtub3duIDx0eXBlPiB2YWx1ZSIpOworCQlicmVhazsKKwl9CisKKwlyZXR1cm4gIXJldDsKK30KZGlmZiAtLWdpdCBhL2J1aWx0aW4vZmFzdC1leHBvcnQuYyBiL2J1aWx0aW4vZmFzdC1leHBvcnQuYwppbmRleCA1NzkwZjBkLi44NTg2ODE2IDEwMDY0NAotLS0gYS9idWlsdGluL2Zhc3QtZXhwb3J0LmMKKysrIGIvYnVpbHRpbi9mYXN0LWV4cG9ydC5jCkBAIC0zMSwxMyArMzEsMTggQEAKIH07CiAKIHN0YXRpYyBpbnQgcHJvZ3Jlc3M7Ci1zdGF0aWMgZW51bSB7IEFCT1JULCBWRVJCQVRJTSwgV0FSTiwgV0FSTl9TVFJJUCwgU1RSSVAgfSBzaWduZWRfdGFnX21vZGUgPSBBQk9SVDsKLXN0YXRpYyBlbnVtIHsgRVJST1IsIERST1AsIFJFV1JJVEUgfSB0YWdfb2ZfZmlsdGVyZWRfbW9kZSA9IEVSUk9SOworc3RhdGljIGVudW0geyBTSUdORURfVEFHX0FCT1JULCBWRVJCQVRJTSwgV0FSTiwgV0FSTl9TVFJJUCwgU1RSSVAgfSBzaWduZWRfdGFnX21vZGUgPSBTSUdORURfVEFHX0FCT1JUOworc3RhdGljIGVudW0geyBUQUdfRklMVEVSSU5HX0FCT1JULCBEUk9QLCBSRVdSSVRFIH0gdGFnX29mX2ZpbHRlcmVkX21vZGUgPSBUQUdfRklMVEVSSU5HX0FCT1JUOworc3RhdGljIGVudW0geyBSRUVOQ09ERV9BQk9SVCwgUkVFTkNPREVfWUVTLCBSRUVOQ09ERV9OTyB9IHJlZW5jb2RlX21vZGUgPSBSRUVOQ09ERV9BQk9SVDsKIHN0YXRpYyBpbnQgZmFrZV9taXNzaW5nX3RhZ2dlcjsKIHN0YXRpYyBpbnQgdXNlX2RvbmVfZmVhdHVyZTsKIHN0YXRpYyBpbnQgbm9fZGF0YTsKIHN0YXRpYyBpbnQgZnVsbF90cmVlOworc3RhdGljIGludCByZWZlcmVuY2VfZXhjbHVkZWRfY29tbWl0czsKK3N0YXRpYyBpbnQgc2hvd19vcmlnaW5hbF9pZHM7CitzdGF0aWMgaW50IG1hcmtfdGFnczsKIHN0YXRpYyBzdHJ1Y3Qgc3RyaW5nX2xpc3QgZXh0cmFfcmVmcyA9IFNUUklOR19MSVNUX0lOSVRfTk9EVVA7CitzdGF0aWMgc3RydWN0IHN0cmluZ19saXN0IHRhZ19yZWZzID0gU1RSSU5HX0xJU1RfSU5JVF9OT0RVUDsKIHN0YXRpYyBzdHJ1Y3QgcmVmc3BlYyByZWZzcGVjcyA9IFJFRlNQRUNfSU5JVF9GRVRDSDsKIHN0YXRpYyBpbnQgYW5vbnltaXplOwogc3RhdGljIHN0cnVjdCByZXZpc2lvbl9zb3VyY2VzIHJldmlzaW9uX3NvdXJjZXM7CkBAIC00Niw3ICs1MSw3IEBACiAJCQkJICAgICBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKIHsKIAlpZiAodW5zZXQgfHwgIXN0cmNtcChhcmcsICJhYm9ydCIpKQotCQlzaWduZWRfdGFnX21vZGUgPSBBQk9SVDsKKwkJc2lnbmVkX3RhZ19tb2RlID0gU0lHTkVEX1RBR19BQk9SVDsKIAllbHNlIGlmICghc3RyY21wKGFyZywgInZlcmJhdGltIikgfHwgIXN0cmNtcChhcmcsICJpZ25vcmUiKSkKIAkJc2lnbmVkX3RhZ19tb2RlID0gVkVSQkFUSU07CiAJZWxzZSBpZiAoIXN0cmNtcChhcmcsICJ3YXJuIikpCkBAIC02NCw3ICs2OSw3IEBACiAJCQkJCSAgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCiB7CiAJaWYgKHVuc2V0IHx8ICFzdHJjbXAoYXJnLCAiYWJvcnQiKSkKLQkJdGFnX29mX2ZpbHRlcmVkX21vZGUgPSBFUlJPUjsKKwkJdGFnX29mX2ZpbHRlcmVkX21vZGUgPSBUQUdfRklMVEVSSU5HX0FCT1JUOwogCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiZHJvcCIpKQogCQl0YWdfb2ZfZmlsdGVyZWRfbW9kZSA9IERST1A7CiAJZWxzZSBpZiAoIXN0cmNtcChhcmcsICJyZXdyaXRlIikpCkBAIC03NCw2ICs3OSwzMSBAQAogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50IHBhcnNlX29wdF9yZWVuY29kZV9tb2RlKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKKwkJCQkgICBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKK3sKKwlpZiAodW5zZXQpIHsKKwkJcmVlbmNvZGVfbW9kZSA9IFJFRU5DT0RFX0FCT1JUOworCQlyZXR1cm4gMDsKKwl9CisKKwlzd2l0Y2ggKGdpdF9wYXJzZV9tYXliZV9ib29sKGFyZykpIHsKKwljYXNlIDA6CisJCXJlZW5jb2RlX21vZGUgPSBSRUVOQ09ERV9OTzsKKwkJYnJlYWs7CisJY2FzZSAxOgorCQlyZWVuY29kZV9tb2RlID0gUkVFTkNPREVfWUVTOworCQlicmVhazsKKwlkZWZhdWx0OgorCQlpZiAoIXN0cmNhc2VjbXAoYXJnLCAiYWJvcnQiKSkKKwkJCXJlZW5jb2RlX21vZGUgPSBSRUVOQ09ERV9BQk9SVDsKKwkJZWxzZQorCQkJcmV0dXJuIGVycm9yKCJVbmtub3duIHJlZW5jb2RpbmcgbW9kZTogJXMiLCBhcmcpOworCX0KKworCXJldHVybiAwOworfQorCiBzdGF0aWMgc3RydWN0IGRlY29yYXRpb24gaWRudW1zOwogc3RhdGljIHVpbnQzMl90IGxhc3RfaWRudW07CiAKQEAgLTk3LDEwICsxMjcsMTUgQEAKIH07CiAKIHN0YXRpYyBpbnQgYW5vbnltaXplZF9lbnRyeV9jbXAoY29uc3Qgdm9pZCAqdW51c2VkX2NtcF9kYXRhLAotCQkJCWNvbnN0IHZvaWQgKnZhLCBjb25zdCB2b2lkICp2YiwKKwkJCQljb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJCQljb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAogCQkJCWNvbnN0IHZvaWQgKnVudXNlZF9rZXlkYXRhKQogewotCWNvbnN0IHN0cnVjdCBhbm9ueW1pemVkX2VudHJ5ICphID0gdmEsICpiID0gdmI7CisJY29uc3Qgc3RydWN0IGFub255bWl6ZWRfZW50cnkgKmEsICpiOworCisJYSA9IGNvbnRhaW5lcl9vZihlcHRyLCBjb25zdCBzdHJ1Y3QgYW5vbnltaXplZF9lbnRyeSwgaGFzaCk7CisJYiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIGNvbnN0IHN0cnVjdCBhbm9ueW1pemVkX2VudHJ5LCBoYXNoKTsKKwogCXJldHVybiBhLT5vcmlnX2xlbiAhPSBiLT5vcmlnX2xlbiB8fAogCQltZW1jbXAoYS0+b3JpZywgYi0+b3JpZywgYS0+b3JpZ19sZW4pOwogfQpAQCAtMTE5LDEwICsxNTQsMTAgQEAKIAlpZiAoIW1hcC0+Y21wZm4pCiAJCWhhc2htYXBfaW5pdChtYXAsIGFub255bWl6ZWRfZW50cnlfY21wLCBOVUxMLCAwKTsKIAotCWhhc2htYXBfZW50cnlfaW5pdCgma2V5LCBtZW1oYXNoKG9yaWcsICpsZW4pKTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmtleS5oYXNoLCBtZW1oYXNoKG9yaWcsICpsZW4pKTsKIAlrZXkub3JpZyA9IG9yaWc7CiAJa2V5Lm9yaWdfbGVuID0gKmxlbjsKLQlyZXQgPSBoYXNobWFwX2dldChtYXAsICZrZXksIE5VTEwpOworCXJldCA9IGhhc2htYXBfZ2V0X2VudHJ5KG1hcCwgJmtleSwgaGFzaCwgTlVMTCk7CiAKIAlpZiAoIXJldCkgewogCQlyZXQgPSB4bWFsbG9jKHNpemVvZigqcmV0KSk7CkBAIC0xMzEsNyArMTY2LDcgQEAKIAkJcmV0LT5vcmlnX2xlbiA9ICpsZW47CiAJCXJldC0+YW5vbiA9IGdlbmVyYXRlKG9yaWcsIGxlbik7CiAJCXJldC0+YW5vbl9sZW4gPSAqbGVuOwotCQloYXNobWFwX3B1dChtYXAsIHJldCk7CisJCWhhc2htYXBfcHV0KG1hcCwgJnJldC0+aGFzaCk7CiAJfQogCiAJKmxlbiA9IHJldC0+YW5vbl9sZW47CkBAIC0xODcsNiArMjIyLDIyIEBACiAJcmV0dXJuIHB0cl90b19tYXJrKGRlY29yYXRpb24pOwogfQogCitzdGF0aWMgc3RydWN0IGNvbW1pdCAqcmV3cml0ZV9jb21taXQoc3RydWN0IGNvbW1pdCAqcCkKK3sKKwlmb3IgKDs7KSB7CisJCWlmIChwLT5wYXJlbnRzICYmIHAtPnBhcmVudHMtPm5leHQpCisJCQlicmVhazsKKwkJaWYgKHAtPm9iamVjdC5mbGFncyAmIFVOSU5URVJFU1RJTkcpCisJCQlicmVhazsKKwkJaWYgKCEocC0+b2JqZWN0LmZsYWdzICYgVFJFRVNBTUUpKQorCQkJYnJlYWs7CisJCWlmICghcC0+cGFyZW50cykKKwkJCXJldHVybiBOVUxMOworCQlwID0gcC0+cGFyZW50cy0+aXRlbTsKKwl9CisJcmV0dXJuIHA7Cit9CisKIHN0YXRpYyB2b2lkIHNob3dfcHJvZ3Jlc3Modm9pZCkKIHsKIAlzdGF0aWMgaW50IGNvdW50ZXIgPSAwOwpAQCAtMjMwLDcgKzI4MSw3IEBACiAJaWYgKGlzX251bGxfb2lkKG9pZCkpCiAJCXJldHVybjsKIAotCW9iamVjdCA9IGxvb2t1cF9vYmplY3QodGhlX3JlcG9zaXRvcnksIG9pZC0+aGFzaCk7CisJb2JqZWN0ID0gbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgb2lkKTsKIAlpZiAob2JqZWN0ICYmIG9iamVjdC0+ZmxhZ3MgJiBTSE9XTikKIAkJcmV0dXJuOwogCkBAIC0yNDIsOCArMjkzLDkgQEAKIAkJYnVmID0gcmVhZF9vYmplY3RfZmlsZShvaWQsICZ0eXBlLCAmc2l6ZSk7CiAJCWlmICghYnVmKQogCQkJZGllKCJjb3VsZCBub3QgcmVhZCBibG9iICVzIiwgb2lkX3RvX2hleChvaWQpKTsKLQkJaWYgKGNoZWNrX29iamVjdF9zaWduYXR1cmUob2lkLCBidWYsIHNpemUsIHR5cGVfbmFtZSh0eXBlKSkgPCAwKQotCQkJZGllKCJzaGExIG1pc21hdGNoIGluIGJsb2IgJXMiLCBvaWRfdG9faGV4KG9pZCkpOworCQlpZiAoY2hlY2tfb2JqZWN0X3NpZ25hdHVyZSh0aGVfcmVwb3NpdG9yeSwgb2lkLCBidWYsIHNpemUsCisJCQkJCSAgIHR5cGVfbmFtZSh0eXBlKSkgPCAwKQorCQkJZGllKCJvaWQgbWlzbWF0Y2ggaW4gYmxvYiAlcyIsIG9pZF90b19oZXgob2lkKSk7CiAJCW9iamVjdCA9IHBhcnNlX29iamVjdF9idWZmZXIodGhlX3JlcG9zaXRvcnksIG9pZCwgdHlwZSwKIAkJCQkJICAgICBzaXplLCBidWYsICZlYXRlbik7CiAJfQpAQCAtMjUzLDcgKzMwNSwxMCBAQAogCiAJbWFya19uZXh0X29iamVjdChvYmplY3QpOwogCi0JcHJpbnRmKCJibG9iXG5tYXJrIDolIlBSSXUzMiJcbmRhdGEgJSJQUkl1TUFYIlxuIiwgbGFzdF9pZG51bSwgKHVpbnRtYXhfdClzaXplKTsKKwlwcmludGYoImJsb2Jcbm1hcmsgOiUiUFJJdTMyIlxuIiwgbGFzdF9pZG51bSk7CisJaWYgKHNob3dfb3JpZ2luYWxfaWRzKQorCQlwcmludGYoIm9yaWdpbmFsLW9pZCAlc1xuIiwgb2lkX3RvX2hleChvaWQpKTsKKwlwcmludGYoImRhdGEgJSJQUkl1TUFYIlxuIiwgKHVpbnRtYXhfdClzaXplKTsKIAlpZiAoc2l6ZSAmJiBmd3JpdGUoYnVmLCBzaXplLCAxLCBzdGRvdXQpICE9IDEpCiAJCWRpZV9lcnJubygiY291bGQgbm90IHdyaXRlIGJsb2IgJyVzJyIsIG9pZF90b19oZXgob2lkKSk7CiAJcHJpbnRmKCJcbiIpOwpAQCAtMzMwLDE3ICszODUsMTggQEAKIAogc3RhdGljIHZvaWQgKmdlbmVyYXRlX2Zha2Vfb2lkKGNvbnN0IHZvaWQgKm9sZCwgc2l6ZV90ICpsZW4pCiB7Ci0Jc3RhdGljIHVpbnQzMl90IGNvdW50ZXIgPSAxOyAvKiBhdm9pZCBudWxsIHNoYTEgKi8KLQl1bnNpZ25lZCBjaGFyICpvdXQgPSB4Y2FsbG9jKEdJVF9TSEExX1JBV1NaLCAxKTsKLQlwdXRfYmUzMihvdXQgKyBHSVRfU0hBMV9SQVdTWiAtIDQsIGNvdW50ZXIrKyk7CisJc3RhdGljIHVpbnQzMl90IGNvdW50ZXIgPSAxOyAvKiBhdm9pZCBudWxsIG9pZCAqLworCWNvbnN0IHVuc2lnbmVkIGhhc2hzeiA9IHRoZV9oYXNoX2FsZ28tPnJhd3N6OworCXVuc2lnbmVkIGNoYXIgKm91dCA9IHhjYWxsb2MoaGFzaHN6LCAxKTsKKwlwdXRfYmUzMihvdXQgKyBoYXNoc3ogLSA0LCBjb3VudGVyKyspOwogCXJldHVybiBvdXQ7CiB9CiAKLXN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyICphbm9ueW1pemVfc2hhMShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCitzdGF0aWMgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqYW5vbnltaXplX29pZChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0Jc3RhdGljIHN0cnVjdCBoYXNobWFwIHNoYTFzOwotCXNpemVfdCBsZW4gPSBHSVRfU0hBMV9SQVdTWjsKLQlyZXR1cm4gYW5vbnltaXplX21lbSgmc2hhMXMsIGdlbmVyYXRlX2Zha2Vfb2lkLCBvaWQsICZsZW4pOworCXN0YXRpYyBzdHJ1Y3QgaGFzaG1hcCBvYmpzOworCXNpemVfdCBsZW4gPSB0aGVfaGFzaF9hbGdvLT5yYXdzejsKKwlyZXR1cm4gYW5vbnltaXplX21lbSgmb2JqcywgZ2VuZXJhdGVfZmFrZV9vaWQsIG9pZCwgJmxlbik7CiB9CiAKIHN0YXRpYyB2b2lkIHNob3dfZmlsZW1vZGlmeShzdHJ1Y3QgZGlmZl9xdWV1ZV9zdHJ1Y3QgKnEsCkBAIC0zOTksMTIgKzQ1NSwxMiBAQAogCQkJICovCiAJCQlpZiAobm9fZGF0YSB8fCBTX0lTR0lUTElOSyhzcGVjLT5tb2RlKSkKIAkJCQlwcmludGYoIk0gJTA2byAlcyAiLCBzcGVjLT5tb2RlLAotCQkJCSAgICAgICBzaGExX3RvX2hleChhbm9ueW1pemUgPwotCQkJCQkJICAgYW5vbnltaXplX3NoYTEoJnNwZWMtPm9pZCkgOgotCQkJCQkJICAgc3BlYy0+b2lkLmhhc2gpKTsKKwkJCQkgICAgICAgb2lkX3RvX2hleChhbm9ueW1pemUgPworCQkJCQkJICBhbm9ueW1pemVfb2lkKCZzcGVjLT5vaWQpIDoKKwkJCQkJCSAgJnNwZWMtPm9pZCkpOwogCQkJZWxzZSB7CiAJCQkJc3RydWN0IG9iamVjdCAqb2JqZWN0ID0gbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwKLQkJCQkJCQkJICAgICAgc3BlYy0+b2lkLmhhc2gpOworCQkJCQkJCQkgICAgICAmc3BlYy0+b2lkKTsKIAkJCQlwcmludGYoIk0gJTA2byA6JWQgIiwgc3BlYy0+bW9kZSwKIAkJCQkgICAgICAgZ2V0X29iamVjdF9tYXJrKG9iamVjdCkpOwogCQkJfQpAQCAtNDMwLDcgKzQ4Niw3IEBACiAJYm9sID0gbWVtbWVtKGJlZ2luLCBlbmQgPyBlbmQgLSBiZWdpbiA6IHN0cmxlbihiZWdpbiksCiAJCSAgICAgbmVlZGxlLCBzdHJsZW4obmVlZGxlKSk7CiAJaWYgKCFib2wpCi0JCXJldHVybiBnaXRfY29tbWl0X2VuY29kaW5nOworCQlyZXR1cm4gTlVMTDsKIAlib2wgKz0gc3RybGVuKG5lZWRsZSk7CiAJZW9sID0gc3RyY2hybnVsKGJvbCwgJ1xuJyk7CiAJKmVvbCA9ICdcMCc7CkBAIC01NzksNyArNjM1LDggQEAKIAkJbWVzc2FnZSArPSAyOwogCiAJaWYgKGNvbW1pdC0+cGFyZW50cyAmJgotCSAgICBnZXRfb2JqZWN0X21hcmsoJmNvbW1pdC0+cGFyZW50cy0+aXRlbS0+b2JqZWN0KSAhPSAwICYmCisJICAgIChnZXRfb2JqZWN0X21hcmsoJmNvbW1pdC0+cGFyZW50cy0+aXRlbS0+b2JqZWN0KSAhPSAwIHx8CisJICAgICByZWZlcmVuY2VfZXhjbHVkZWRfY29tbWl0cykgJiYKIAkgICAgIWZ1bGxfdHJlZSkgewogCQlwYXJzZV9jb21taXRfb3JfZGllKGNvbW1pdC0+cGFyZW50cy0+aXRlbSk7CiAJCWRpZmZfdHJlZV9vaWQoZ2V0X2NvbW1pdF90cmVlX29pZChjb21taXQtPnBhcmVudHMtPml0ZW0pLApAQCAtNTk1LDYgKzY1MiwxMyBAQAogCQkJZXhwb3J0X2Jsb2IoJmRpZmZfcXVldWVkX2RpZmYucXVldWVbaV0tPnR3by0+b2lkKTsKIAogCXJlZm5hbWUgPSAqcmV2aXNpb25fc291cmNlc19hdCgmcmV2aXNpb25fc291cmNlcywgY29tbWl0KTsKKwkvKgorCSAqIEZJWE1FOiBzdHJpbmdfbGlzdF9yZW1vdmUoKSBiZWxvdyBmb3IgZWFjaCByZWYgaXMgb3ZlcmFsbAorCSAqIE8oTl4yKS4gIENvbXBhcmVkIHRvIGEgaGlzdG9yeSB3YWxrIGFuZCBkaWZmaW5nIHRyZWVzLCB0aGlzIGlzCisJICoganVzdCBsb3N0IGluIHRoZSBub2lzZSBpbiBwcmFjdGljZS4gIEhvd2V2ZXIsIHRoZW9yZXRpY2FsbHkgYQorCSAqIHJlcG8gbWF5IGhhdmUgZW5vdWdoIHJlZnMgZm9yIHRoaXMgdG8gYmVjb21lIHNsb3cuCisJICovCisJc3RyaW5nX2xpc3RfcmVtb3ZlKCZleHRyYV9yZWZzLCByZWZuYW1lLCAwKTsKIAlpZiAoYW5vbnltaXplKSB7CiAJCXJlZm5hbWUgPSBhbm9ueW1pemVfcmVmbmFtZShyZWZuYW1lKTsKIAkJYW5vbnltaXplX2lkZW50X2xpbmUoJmNvbW1pdHRlciwgJmNvbW1pdHRlcl9lbmQpOwpAQCAtNjAyLDE2ICs2NjYsMzIgQEAKIAl9CiAKIAltYXJrX25leHRfb2JqZWN0KCZjb21taXQtPm9iamVjdCk7Ci0JaWYgKGFub255bWl6ZSkKKwlpZiAoYW5vbnltaXplKSB7CiAJCXJlZW5jb2RlZCA9IGFub255bWl6ZV9jb21taXRfbWVzc2FnZShtZXNzYWdlKTsKLQllbHNlIGlmICghaXNfZW5jb2RpbmdfdXRmOChlbmNvZGluZykpCi0JCXJlZW5jb2RlZCA9IHJlZW5jb2RlX3N0cmluZyhtZXNzYWdlLCAiVVRGLTgiLCBlbmNvZGluZyk7CisJfSBlbHNlIGlmIChlbmNvZGluZykgeworCQlzd2l0Y2gocmVlbmNvZGVfbW9kZSkgeworCQljYXNlIFJFRU5DT0RFX1lFUzoKKwkJCXJlZW5jb2RlZCA9IHJlZW5jb2RlX3N0cmluZyhtZXNzYWdlLCAiVVRGLTgiLCBlbmNvZGluZyk7CisJCQlicmVhazsKKwkJY2FzZSBSRUVOQ09ERV9OTzoKKwkJCWJyZWFrOworCQljYXNlIFJFRU5DT0RFX0FCT1JUOgorCQkJZGllKCJFbmNvdW50ZXJlZCBjb21taXQtc3BlY2lmaWMgZW5jb2RpbmcgJXMgaW4gY29tbWl0ICIKKwkJCSAgICAiJXM7IHVzZSAtLXJlZW5jb2RlPVt5ZXN8bm9dIHRvIGhhbmRsZSBpdCIsCisJCQkgICAgZW5jb2RpbmcsIG9pZF90b19oZXgoJmNvbW1pdC0+b2JqZWN0Lm9pZCkpOworCQl9CisJfQogCWlmICghY29tbWl0LT5wYXJlbnRzKQogCQlwcmludGYoInJlc2V0ICVzXG4iLCByZWZuYW1lKTsKLQlwcmludGYoImNvbW1pdCAlc1xubWFyayA6JSJQUkl1MzIiXG4lLipzXG4lLipzXG5kYXRhICV1XG4lcyIsCi0JICAgICAgIHJlZm5hbWUsIGxhc3RfaWRudW0sCisJcHJpbnRmKCJjb21taXQgJXNcbm1hcmsgOiUiUFJJdTMyIlxuIiwgcmVmbmFtZSwgbGFzdF9pZG51bSk7CisJaWYgKHNob3dfb3JpZ2luYWxfaWRzKQorCQlwcmludGYoIm9yaWdpbmFsLW9pZCAlc1xuIiwgb2lkX3RvX2hleCgmY29tbWl0LT5vYmplY3Qub2lkKSk7CisJcHJpbnRmKCIlLipzXG4lLipzXG4iLAogCSAgICAgICAoaW50KShhdXRob3JfZW5kIC0gYXV0aG9yKSwgYXV0aG9yLAotCSAgICAgICAoaW50KShjb21taXR0ZXJfZW5kIC0gY29tbWl0dGVyKSwgY29tbWl0dGVyLAorCSAgICAgICAoaW50KShjb21taXR0ZXJfZW5kIC0gY29tbWl0dGVyKSwgY29tbWl0dGVyKTsKKwlpZiAoIXJlZW5jb2RlZCAmJiBlbmNvZGluZykKKwkJcHJpbnRmKCJlbmNvZGluZyAlc1xuIiwgZW5jb2RpbmcpOworCXByaW50ZigiZGF0YSAldVxuJXMiLAogCSAgICAgICAodW5zaWduZWQpKHJlZW5jb2RlZAogCQkJICA/IHN0cmxlbihyZWVuY29kZWQpIDogbWVzc2FnZQogCQkJICA/IHN0cmxlbihtZXNzYWdlKSA6IDApLApAQCAtNjIwLDEzICs3MDAsMjEgQEAKIAl1bnVzZV9jb21taXRfYnVmZmVyKGNvbW1pdCwgY29tbWl0X2J1ZmZlcik7CiAKIAlmb3IgKGkgPSAwLCBwID0gY29tbWl0LT5wYXJlbnRzOyBwOyBwID0gcC0+bmV4dCkgewotCQlpbnQgbWFyayA9IGdldF9vYmplY3RfbWFyaygmcC0+aXRlbS0+b2JqZWN0KTsKLQkJaWYgKCFtYXJrKQorCQlzdHJ1Y3Qgb2JqZWN0ICpvYmogPSAmcC0+aXRlbS0+b2JqZWN0OworCQlpbnQgbWFyayA9IGdldF9vYmplY3RfbWFyayhvYmopOworCisJCWlmICghbWFyayAmJiAhcmVmZXJlbmNlX2V4Y2x1ZGVkX2NvbW1pdHMpCiAJCQljb250aW51ZTsKIAkJaWYgKGkgPT0gMCkKLQkJCXByaW50ZigiZnJvbSA6JWRcbiIsIG1hcmspOworCQkJcHJpbnRmKCJmcm9tICIpOwogCQllbHNlCi0JCQlwcmludGYoIm1lcmdlIDolZFxuIiwgbWFyayk7CisJCQlwcmludGYoIm1lcmdlICIpOworCQlpZiAobWFyaykKKwkJCXByaW50ZigiOiVkXG4iLCBtYXJrKTsKKwkJZWxzZQorCQkJcHJpbnRmKCIlc1xuIiwgb2lkX3RvX2hleChhbm9ueW1pemUgPworCQkJCQkJICBhbm9ueW1pemVfb2lkKCZvYmotPm9pZCkgOgorCQkJCQkJICAmb2JqLT5vaWQpKTsKIAkJaSsrOwogCX0KIApAQCAtNzI3LDcgKzgxNSw3IEBACiAJCQkJCSAgICAgICAiXG4tLS0tLUJFR0lOIFBHUCBTSUdOQVRVUkUtLS0tLVxuIik7CiAJCWlmIChzaWduYXR1cmUpCiAJCQlzd2l0Y2goc2lnbmVkX3RhZ19tb2RlKSB7Ci0JCQljYXNlIEFCT1JUOgorCQkJY2FzZSBTSUdORURfVEFHX0FCT1JUOgogCQkJCWRpZSgiZW5jb3VudGVyZWQgc2lnbmVkIHRhZyAlczsgdXNlICIKIAkJCQkgICAgIi0tc2lnbmVkLXRhZ3M9PG1vZGU+IHRvIGhhbmRsZSBpdCIsCiAJCQkJICAgIG9pZF90b19oZXgoJnRhZy0+b2JqZWN0Lm9pZCkpOwpAQCAtNzUyLDcgKzg0MCw3IEBACiAJdGFnZ2VkX21hcmsgPSBnZXRfb2JqZWN0X21hcmsodGFnZ2VkKTsKIAlpZiAoIXRhZ2dlZF9tYXJrKSB7CiAJCXN3aXRjaCh0YWdfb2ZfZmlsdGVyZWRfbW9kZSkgewotCQljYXNlIEFCT1JUOgorCQljYXNlIFRBR19GSUxURVJJTkdfQUJPUlQ6CiAJCQlkaWUoInRhZyAlcyB0YWdzIHVuZXhwb3J0ZWQgb2JqZWN0OyB1c2UgIgogCQkJICAgICItLXRhZy1vZi1maWx0ZXJlZC1vYmplY3Q9PG1vZGU+IHRvIGhhbmRsZSBpdCIsCiAJCQkgICAgb2lkX3RvX2hleCgmdGFnLT5vYmplY3Qub2lkKSk7CkBAIC03NjEsMzIgKzg0OSw0MiBAQAogCQkJZnJlZShidWYpOwogCQkJcmV0dXJuOwogCQljYXNlIFJFV1JJVEU6Ci0JCQlpZiAodGFnZ2VkLT50eXBlICE9IE9CSl9DT01NSVQpIHsKLQkJCQlkaWUoInRhZyAlcyB0YWdzIHVuZXhwb3J0ZWQgJXMhIiwKLQkJCQkgICAgb2lkX3RvX2hleCgmdGFnLT5vYmplY3Qub2lkKSwKLQkJCQkgICAgdHlwZV9uYW1lKHRhZ2dlZC0+dHlwZSkpOworCQkJaWYgKHRhZ2dlZC0+dHlwZSA9PSBPQkpfVEFHICYmICFtYXJrX3RhZ3MpIHsKKwkJCQlkaWUoXygiRXJyb3I6IENhbm5vdCBleHBvcnQgbmVzdGVkIHRhZ3MgdW5sZXNzIC0tbWFyay10YWdzIGlzIHNwZWNpZmllZC4iKSk7CisJCQl9IGVsc2UgaWYgKHRhZ2dlZC0+dHlwZSA9PSBPQkpfQ09NTUlUKSB7CisJCQkJcCA9IHJld3JpdGVfY29tbWl0KChzdHJ1Y3QgY29tbWl0ICopdGFnZ2VkKTsKKwkJCQlpZiAoIXApIHsKKwkJCQkJcHJpbnRmKCJyZXNldCAlc1xuZnJvbSAlc1xuXG4iLAorCQkJCQkgICAgICAgbmFtZSwgb2lkX3RvX2hleCgmbnVsbF9vaWQpKTsKKwkJCQkJZnJlZShidWYpOworCQkJCQlyZXR1cm47CisJCQkJfQorCQkJCXRhZ2dlZF9tYXJrID0gZ2V0X29iamVjdF9tYXJrKCZwLT5vYmplY3QpOworCQkJfSBlbHNlIHsKKwkJCQkvKiB0YWdnZWQtPnR5cGUgaXMgZWl0aGVyIE9CSl9CTE9CIG9yIE9CSl9UQUcgKi8KKwkJCQl0YWdnZWRfbWFyayA9IGdldF9vYmplY3RfbWFyayh0YWdnZWQpOwogCQkJfQotCQkJcCA9IChzdHJ1Y3QgY29tbWl0ICopdGFnZ2VkOwotCQkJZm9yICg7OykgewotCQkJCWlmIChwLT5wYXJlbnRzICYmIHAtPnBhcmVudHMtPm5leHQpCi0JCQkJCWJyZWFrOwotCQkJCWlmIChwLT5vYmplY3QuZmxhZ3MgJiBVTklOVEVSRVNUSU5HKQotCQkJCQlicmVhazsKLQkJCQlpZiAoIShwLT5vYmplY3QuZmxhZ3MgJiBUUkVFU0FNRSkpCi0JCQkJCWJyZWFrOwotCQkJCWlmICghcC0+cGFyZW50cykKLQkJCQkJZGllKCJjYW4ndCBmaW5kIHJlcGxhY2VtZW50IGNvbW1pdCBmb3IgdGFnICVzIiwKLQkJCQkJICAgICBvaWRfdG9faGV4KCZ0YWctPm9iamVjdC5vaWQpKTsKLQkJCQlwID0gcC0+cGFyZW50cy0+aXRlbTsKLQkJCX0KLQkJCXRhZ2dlZF9tYXJrID0gZ2V0X29iamVjdF9tYXJrKCZwLT5vYmplY3QpOwogCQl9CiAJfQogCi0JaWYgKHN0YXJ0c193aXRoKG5hbWUsICJyZWZzL3RhZ3MvIikpCi0JCW5hbWUgKz0gMTA7Ci0JcHJpbnRmKCJ0YWcgJXNcbmZyb20gOiVkXG4lLipzJXNkYXRhICVkXG4lLipzXG4iLAotCSAgICAgICBuYW1lLCB0YWdnZWRfbWFyaywKKwlpZiAodGFnZ2VkLT50eXBlID09IE9CSl9UQUcpIHsKKwkJcHJpbnRmKCJyZXNldCAlc1xuZnJvbSAlc1xuXG4iLAorCQkgICAgICAgbmFtZSwgb2lkX3RvX2hleCgmbnVsbF9vaWQpKTsKKwl9CisJc2tpcF9wcmVmaXgobmFtZSwgInJlZnMvdGFncy8iLCAmbmFtZSk7CisJcHJpbnRmKCJ0YWcgJXNcbiIsIG5hbWUpOworCWlmIChtYXJrX3RhZ3MpIHsKKwkJbWFya19uZXh0X29iamVjdCgmdGFnLT5vYmplY3QpOworCQlwcmludGYoIm1hcmsgOiUiUFJJdTMyIlxuIiwgbGFzdF9pZG51bSk7CisJfQorCWlmICh0YWdnZWRfbWFyaykKKwkJcHJpbnRmKCJmcm9tIDolZFxuIiwgdGFnZ2VkX21hcmspOworCWVsc2UKKwkJcHJpbnRmKCJmcm9tICVzXG4iLCBvaWRfdG9faGV4KCZ0YWdnZWQtPm9pZCkpOworCisJaWYgKHNob3dfb3JpZ2luYWxfaWRzKQorCQlwcmludGYoIm9yaWdpbmFsLW9pZCAlc1xuIiwgb2lkX3RvX2hleCgmdGFnLT5vYmplY3Qub2lkKSk7CisJcHJpbnRmKCIlLipzJXNkYXRhICVkXG4lLipzXG4iLAogCSAgICAgICAoaW50KSh0YWdnZXJfZW5kIC0gdGFnZ2VyKSwgdGFnZ2VyLAogCSAgICAgICB0YWdnZXIgPT0gdGFnZ2VyX2VuZCA/ICIiIDogIlxuIiwKIAkgICAgICAgKGludCltZXNzYWdlX3NpemUsIChpbnQpbWVzc2FnZV9zaXplLCBtZXNzYWdlID8gbWVzc2FnZSA6ICIiKTsKQEAgLTgwNCw3ICs5MDIsNyBAQAogCQkvKiBoYW5kbGUgbmVzdGVkIHRhZ3MgKi8KIAkJd2hpbGUgKHRhZyAmJiB0YWctPm9iamVjdC50eXBlID09IE9CSl9UQUcpIHsKIAkJCXBhcnNlX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgJnRhZy0+b2JqZWN0Lm9pZCk7Ci0JCQlzdHJpbmdfbGlzdF9hcHBlbmQoJmV4dHJhX3JlZnMsIGZ1bGxfbmFtZSktPnV0aWwgPSB0YWc7CisJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJnRhZ19yZWZzLCBmdWxsX25hbWUpLT51dGlsID0gdGFnOwogCQkJdGFnID0gKHN0cnVjdCB0YWcgKil0YWctPnRhZ2dlZDsKIAkJfQogCQlpZiAoIXRhZykKQEAgLTg2MywyNSArOTYxLDMwIEBACiAJCX0KIAogCQkvKgotCQkgKiBUaGlzIHJlZiB3aWxsIG5vdCBiZSB1cGRhdGVkIHRocm91Z2ggYSBjb21taXQsIGxldHMgbWFrZQotCQkgKiBzdXJlIGl0IGdldHMgcHJvcGVybHkgdXBkYXRlZCBldmVudHVhbGx5LgorCQkgKiBNYWtlIHN1cmUgdGhpcyByZWYgZ2V0cyBwcm9wZXJseSB1cGRhdGVkIGV2ZW50dWFsbHksIHdoZXRoZXIKKwkJICogdGhyb3VnaCBhIGNvbW1pdCBvciBtYW51YWxseSBhdCB0aGUgZW5kLgogCQkgKi8KLQkJaWYgKCpyZXZpc2lvbl9zb3VyY2VzX2F0KCZyZXZpc2lvbl9zb3VyY2VzLCBjb21taXQpIHx8Ci0JCSAgICBjb21taXQtPm9iamVjdC5mbGFncyAmIFNIT1dOKQorCQlpZiAoZS0+aXRlbS0+dHlwZSAhPSBPQkpfVEFHKQogCQkJc3RyaW5nX2xpc3RfYXBwZW5kKCZleHRyYV9yZWZzLCBmdWxsX25hbWUpLT51dGlsID0gY29tbWl0OworCiAJCWlmICghKnJldmlzaW9uX3NvdXJjZXNfYXQoJnJldmlzaW9uX3NvdXJjZXMsIGNvbW1pdCkpCiAJCQkqcmV2aXNpb25fc291cmNlc19hdCgmcmV2aXNpb25fc291cmNlcywgY29tbWl0KSA9IGZ1bGxfbmFtZTsKIAl9CisKKwlzdHJpbmdfbGlzdF9zb3J0KCZleHRyYV9yZWZzKTsKKwlzdHJpbmdfbGlzdF9yZW1vdmVfZHVwbGljYXRlcygmZXh0cmFfcmVmcywgMCk7CiB9CiAKLXN0YXRpYyB2b2lkIGhhbmRsZV90YWdzX2FuZF9kdXBsaWNhdGVzKHZvaWQpCitzdGF0aWMgdm9pZCBoYW5kbGVfdGFnc19hbmRfZHVwbGljYXRlcyhzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmV4dHJhcykKIHsKIAlzdHJ1Y3QgY29tbWl0ICpjb21taXQ7CiAJaW50IGk7CiAKLQlmb3IgKGkgPSBleHRyYV9yZWZzLm5yIC0gMTsgaSA+PSAwOyBpLS0pIHsKLQkJY29uc3QgY2hhciAqbmFtZSA9IGV4dHJhX3JlZnMuaXRlbXNbaV0uc3RyaW5nOwotCQlzdHJ1Y3Qgb2JqZWN0ICpvYmplY3QgPSBleHRyYV9yZWZzLml0ZW1zW2ldLnV0aWw7CisJZm9yIChpID0gZXh0cmFzLT5uciAtIDE7IGkgPj0gMDsgaS0tKSB7CisJCWNvbnN0IGNoYXIgKm5hbWUgPSBleHRyYXMtPml0ZW1zW2ldLnN0cmluZzsKKwkJc3RydWN0IG9iamVjdCAqb2JqZWN0ID0gZXh0cmFzLT5pdGVtc1tpXS51dGlsOworCQlpbnQgbWFyazsKKwogCQlzd2l0Y2ggKG9iamVjdC0+dHlwZSkgewogCQljYXNlIE9CSl9UQUc6CiAJCQloYW5kbGVfdGFnKG5hbWUsIChzdHJ1Y3QgdGFnICopb2JqZWN0KTsKQEAgLTg5MCw5ICs5OTMsNDUgQEAKIAkJCWlmIChhbm9ueW1pemUpCiAJCQkJbmFtZSA9IGFub255bWl6ZV9yZWZuYW1lKG5hbWUpOwogCQkJLyogY3JlYXRlIHJlZnMgcG9pbnRpbmcgdG8gYWxyZWFkeSBzZWVuIGNvbW1pdHMgKi8KLQkJCWNvbW1pdCA9IChzdHJ1Y3QgY29tbWl0ICopb2JqZWN0OwotCQkJcHJpbnRmKCJyZXNldCAlc1xuZnJvbSA6JWRcblxuIiwgbmFtZSwKLQkJCSAgICAgICBnZXRfb2JqZWN0X21hcmsoJmNvbW1pdC0+b2JqZWN0KSk7CisJCQljb21taXQgPSByZXdyaXRlX2NvbW1pdCgoc3RydWN0IGNvbW1pdCAqKW9iamVjdCk7CisJCQlpZiAoIWNvbW1pdCkgeworCQkJCS8qCisJCQkJICogTmVpdGhlciB0aGlzIG9iamVjdCBub3IgYW55IG9mIGl0cworCQkJCSAqIGFuY2VzdG9ycyB0b3VjaCBhbnkgcmVsZXZhbnQgcGF0aHMsIHNvCisJCQkJICogaXQgaGFzIGJlZW4gZmlsdGVyZWQgdG8gbm90aGluZy4gIERlbGV0ZQorCQkJCSAqIGl0LgorCQkJCSAqLworCQkJCXByaW50ZigicmVzZXQgJXNcbmZyb20gJXNcblxuIiwKKwkJCQkgICAgICAgbmFtZSwgb2lkX3RvX2hleCgmbnVsbF9vaWQpKTsKKwkJCQljb250aW51ZTsKKwkJCX0KKworCQkJbWFyayA9IGdldF9vYmplY3RfbWFyaygmY29tbWl0LT5vYmplY3QpOworCQkJaWYgKCFtYXJrKSB7CisJCQkJLyoKKwkJCQkgKiBHZXR0aW5nIGhlcmUgbWVhbnMgd2UgaGF2ZSBhIGNvbW1pdCB3aGljaAorCQkJCSAqIHdhcyBleGNsdWRlZCBieSBhIG5lZ2F0aXZlIHJlZnNwZWMgKGUuZy4KKwkJCQkgKiBmYXN0LWV4cG9ydCBebWFzdGVyIG1hc3RlcikuICBJZiB3ZSBhcmUKKwkJCQkgKiByZWZlcmVuY2luZyBleGNsdWRlZCBjb21taXRzLCBzZXQgdGhlIHJlZgorCQkJCSAqIHRvIHRoZSBleGFjdCBjb21taXQuICBPdGhlcndpc2UsIHRoZSB1c2VyCisJCQkJICogd2FudHMgdGhlIGJyYW5jaCBleHBvcnRlZCBidXQgZXZlcnkgY29tbWl0CisJCQkJICogaW4gaXRzIGhpc3RvcnkgdG8gYmUgZGVsZXRlZCwgd2hpY2ggYmFzaWNhbGx5CisJCQkJICoganVzdCBtZWFucyBkZWxldGlvbiBvZiB0aGUgcmVmLgorCQkJCSAqLworCQkJCWlmICghcmVmZXJlbmNlX2V4Y2x1ZGVkX2NvbW1pdHMpIHsKKwkJCQkJLyogZGVsZXRlIHRoZSByZWYgKi8KKwkJCQkJcHJpbnRmKCJyZXNldCAlc1xuZnJvbSAlc1xuXG4iLAorCQkJCQkgICAgICAgbmFtZSwgb2lkX3RvX2hleCgmbnVsbF9vaWQpKTsKKwkJCQkJY29udGludWU7CisJCQkJfQorCQkJCS8qIHNldCByZWYgdG8gY29tbWl0IHVzaW5nIG9pZCwgbm90IG1hcmsgKi8KKwkJCQlwcmludGYoInJlc2V0ICVzXG5mcm9tICVzXG5cbiIsIG5hbWUsCisJCQkJICAgICAgIG9pZF90b19oZXgoJmNvbW1pdC0+b2JqZWN0Lm9pZCkpOworCQkJCWNvbnRpbnVlOworCQkJfQorCisJCQlwcmludGYoInJlc2V0ICVzXG5mcm9tIDolZFxuXG4iLCBuYW1lLCBtYXJrCisJCQkgICAgICAgKTsKIAkJCXNob3dfcHJvZ3Jlc3MoKTsKIAkJCWJyZWFrOwogCQl9CkBAIC05MjksMTEgKzEwNjgsMTYgQEAKIAkJZXJyb3IoIlVuYWJsZSB0byB3cml0ZSBtYXJrcyBmaWxlICVzLiIsIGZpbGUpOwogfQogCi1zdGF0aWMgdm9pZCBpbXBvcnRfbWFya3MoY2hhciAqaW5wdXRfZmlsZSkKK3N0YXRpYyB2b2lkIGltcG9ydF9tYXJrcyhjaGFyICppbnB1dF9maWxlLCBpbnQgY2hlY2tfZXhpc3RzKQogewogCWNoYXIgbGluZVs1MTJdOwotCUZJTEUgKmYgPSB4Zm9wZW4oaW5wdXRfZmlsZSwgInIiKTsKKwlGSUxFICpmOworCXN0cnVjdCBzdGF0IHNiOwogCisJaWYgKGNoZWNrX2V4aXN0cyAmJiBzdGF0KGlucHV0X2ZpbGUsICZzYikpCisJCXJldHVybjsKKworCWYgPSB4Zm9wZW4oaW5wdXRfZmlsZSwgInIiKTsKIAl3aGlsZSAoZmdldHMobGluZSwgc2l6ZW9mKGxpbmUpLCBmKSkgewogCQl1aW50MzJfdCBtYXJrOwogCQljaGFyICpsaW5lX2VuZCwgKm1hcmtfZW5kOwpAQCAtOTg4LDcgKzExMzIsNyBAQAogCQkJY29udGludWU7CiAKIAkJcHJpbnRmKCJyZXNldCAlc1xuZnJvbSAlc1xuXG4iLAotCQkJCXJlZnNwZWMtPmRzdCwgc2hhMV90b19oZXgobnVsbF9zaGExKSk7CisJCQkJcmVmc3BlYy0+ZHN0LCBvaWRfdG9faGV4KCZudWxsX29pZCkpOwogCX0KIH0KIApAQCAtOTk3LDcgKzExNDEsOSBAQAogCXN0cnVjdCByZXZfaW5mbyByZXZzOwogCXN0cnVjdCBvYmplY3RfYXJyYXkgY29tbWl0cyA9IE9CSkVDVF9BUlJBWV9JTklUOwogCXN0cnVjdCBjb21taXQgKmNvbW1pdDsKLQljaGFyICpleHBvcnRfZmlsZW5hbWUgPSBOVUxMLCAqaW1wb3J0X2ZpbGVuYW1lID0gTlVMTDsKKwljaGFyICpleHBvcnRfZmlsZW5hbWUgPSBOVUxMLAorCSAgICAgKmltcG9ydF9maWxlbmFtZSA9IE5VTEwsCisJICAgICAqaW1wb3J0X2ZpbGVuYW1lX2lmX2V4aXN0cyA9IE5VTEw7CiAJdWludDMyX3QgbGFzdGltcG9ydGlkOwogCXN0cnVjdCBzdHJpbmdfbGlzdCByZWZzcGVjc19saXN0ID0gU1RSSU5HX0xJU1RfSU5JVF9OT0RVUDsKIAlzdHJ1Y3Qgc3RyaW5nX2xpc3QgcGF0aHNfb2ZfY2hhbmdlZF9vYmplY3RzID0gU1RSSU5HX0xJU1RfSU5JVF9EVVA7CkBAIC0xMDEwLDEwICsxMTU2LDE3IEBACiAJCU9QVF9DQUxMQkFDSygwLCAidGFnLW9mLWZpbHRlcmVkLW9iamVjdCIsICZ0YWdfb2ZfZmlsdGVyZWRfbW9kZSwgTl8oIm1vZGUiKSwKIAkJCSAgICAgTl8oInNlbGVjdCBoYW5kbGluZyBvZiB0YWdzIHRoYXQgdGFnIGZpbHRlcmVkIG9iamVjdHMiKSwKIAkJCSAgICAgcGFyc2Vfb3B0X3RhZ19vZl9maWx0ZXJlZF9tb2RlKSwKKwkJT1BUX0NBTExCQUNLKDAsICJyZWVuY29kZSIsICZyZWVuY29kZV9tb2RlLCBOXygibW9kZSIpLAorCQkJICAgICBOXygic2VsZWN0IGhhbmRsaW5nIG9mIGNvbW1pdCBtZXNzYWdlcyBpbiBhbiBhbHRlcm5hdGUgZW5jb2RpbmciKSwKKwkJCSAgICAgcGFyc2Vfb3B0X3JlZW5jb2RlX21vZGUpLAogCQlPUFRfU1RSSU5HKDAsICJleHBvcnQtbWFya3MiLCAmZXhwb3J0X2ZpbGVuYW1lLCBOXygiZmlsZSIpLAogCQkJICAgICBOXygiRHVtcCBtYXJrcyB0byB0aGlzIGZpbGUiKSksCiAJCU9QVF9TVFJJTkcoMCwgImltcG9ydC1tYXJrcyIsICZpbXBvcnRfZmlsZW5hbWUsIE5fKCJmaWxlIiksCiAJCQkgICAgIE5fKCJJbXBvcnQgbWFya3MgZnJvbSB0aGlzIGZpbGUiKSksCisJCU9QVF9TVFJJTkcoMCwgImltcG9ydC1tYXJrcy1pZi1leGlzdHMiLAorCQkJICAgICAmaW1wb3J0X2ZpbGVuYW1lX2lmX2V4aXN0cywKKwkJCSAgICAgTl8oImZpbGUiKSwKKwkJCSAgICAgTl8oIkltcG9ydCBtYXJrcyBmcm9tIHRoaXMgZmlsZSBpZiBpdCBleGlzdHMiKSksCiAJCU9QVF9CT09MKDAsICJmYWtlLW1pc3NpbmctdGFnZ2VyIiwgJmZha2VfbWlzc2luZ190YWdnZXIsCiAJCQkgTl8oIkZha2UgYSB0YWdnZXIgd2hlbiB0YWdzIGxhY2sgb25lIikpLAogCQlPUFRfQk9PTCgwLCAiZnVsbC10cmVlIiwgJmZ1bGxfdHJlZSwKQEAgLTEwMjQsNiArMTE3NywxMyBAQAogCQlPUFRfU1RSSU5HX0xJU1QoMCwgInJlZnNwZWMiLCAmcmVmc3BlY3NfbGlzdCwgTl8oInJlZnNwZWMiKSwKIAkJCSAgICAgTl8oIkFwcGx5IHJlZnNwZWMgdG8gZXhwb3J0ZWQgcmVmcyIpKSwKIAkJT1BUX0JPT0woMCwgImFub255bWl6ZSIsICZhbm9ueW1pemUsIE5fKCJhbm9ueW1pemUgb3V0cHV0IikpLAorCQlPUFRfQk9PTCgwLCAicmVmZXJlbmNlLWV4Y2x1ZGVkLXBhcmVudHMiLAorCQkJICZyZWZlcmVuY2VfZXhjbHVkZWRfY29tbWl0cywgTl8oIlJlZmVyZW5jZSBwYXJlbnRzIHdoaWNoIGFyZSBub3QgaW4gZmFzdC1leHBvcnQgc3RyZWFtIGJ5IG9iamVjdCBpZCIpKSwKKwkJT1BUX0JPT0woMCwgInNob3ctb3JpZ2luYWwtaWRzIiwgJnNob3dfb3JpZ2luYWxfaWRzLAorCQkJICAgIE5fKCJTaG93IG9yaWdpbmFsIG9iamVjdCBpZHMgb2YgYmxvYnMvY29tbWl0cyIpKSwKKwkJT1BUX0JPT0woMCwgIm1hcmstdGFncyIsICZtYXJrX3RhZ3MsCisJCQkgICAgTl8oIkxhYmVsIHRhZ3Mgd2l0aCBtYXJrIGlkcyIpKSwKKwogCQlPUFRfRU5EKCkKIAl9OwogCkBAIC0xMDU2LDggKzEyMTYsMTIgQEAKIAlpZiAodXNlX2RvbmVfZmVhdHVyZSkKIAkJcHJpbnRmKCJmZWF0dXJlIGRvbmVcbiIpOwogCisJaWYgKGltcG9ydF9maWxlbmFtZSAmJiBpbXBvcnRfZmlsZW5hbWVfaWZfZXhpc3RzKQorCQlkaWUoXygiQ2Fubm90IHBhc3MgYm90aCAtLWltcG9ydC1tYXJrcyBhbmQgLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzIikpOwogCWlmIChpbXBvcnRfZmlsZW5hbWUpCi0JCWltcG9ydF9tYXJrcyhpbXBvcnRfZmlsZW5hbWUpOworCQlpbXBvcnRfbWFya3MoaW1wb3J0X2ZpbGVuYW1lLCAwKTsKKwllbHNlIGlmIChpbXBvcnRfZmlsZW5hbWVfaWZfZXhpc3RzKQorCQlpbXBvcnRfbWFya3MoaW1wb3J0X2ZpbGVuYW1lX2lmX2V4aXN0cywgMSk7CiAJbGFzdGltcG9ydGlkID0gbGFzdF9pZG51bTsKIAogCWlmIChpbXBvcnRfZmlsZW5hbWUgJiYgcmV2cy5wcnVuZV9kYXRhLm5yKQpAQCAtMTA4MCw3ICsxMjQ0LDggQEAKIAkJfQogCX0KIAotCWhhbmRsZV90YWdzX2FuZF9kdXBsaWNhdGVzKCk7CisJaGFuZGxlX3RhZ3NfYW5kX2R1cGxpY2F0ZXMoJmV4dHJhX3JlZnMpOworCWhhbmRsZV90YWdzX2FuZF9kdXBsaWNhdGVzKCZ0YWdfcmVmcyk7CiAJaGFuZGxlX2RlbGV0ZXMoKTsKIAogCWlmIChleHBvcnRfZmlsZW5hbWUgJiYgbGFzdGltcG9ydGlkICE9IGxhc3RfaWRudW0pCmRpZmYgLS1naXQgYS9idWlsdGluL2ZldGNoLXBhY2suYyBiL2J1aWx0aW4vZmV0Y2gtcGFjay5jCmluZGV4IDYzZTY5YTUuLmRjMTQ4NWMgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vZmV0Y2gtcGFjay5jCisrKyBiL2J1aWx0aW4vZmV0Y2gtcGFjay5jCkBAIC01NSw2ICs1NSw3IEBACiAJc3RydWN0IG9pZF9hcnJheSBzaGFsbG93ID0gT0lEX0FSUkFZX0lOSVQ7CiAJc3RydWN0IHN0cmluZ19saXN0IGRlZXBlbl9ub3QgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKIAlzdHJ1Y3QgcGFja2V0X3JlYWRlciByZWFkZXI7CisJZW51bSBwcm90b2NvbF92ZXJzaW9uIHZlcnNpb247CiAKIAlmZXRjaF9pZl9taXNzaW5nID0gMDsKIApAQCAtMjE3LDExICsyMTgsMTQgQEAKIAogCXBhY2tldF9yZWFkZXJfaW5pdCgmcmVhZGVyLCBmZFswXSwgTlVMTCwgMCwKIAkJCSAgIFBBQ0tFVF9SRUFEX0NIT01QX05FV0xJTkUgfAotCQkJICAgUEFDS0VUX1JFQURfR0VOVExFX09OX0VPRik7CisJCQkgICBQQUNLRVRfUkVBRF9HRU5UTEVfT05fRU9GIHwKKwkJCSAgIFBBQ0tFVF9SRUFEX0RJRV9PTl9FUlJfUEFDS0VUKTsKIAotCXN3aXRjaCAoZGlzY292ZXJfdmVyc2lvbigmcmVhZGVyKSkgeworCXZlcnNpb24gPSBkaXNjb3Zlcl92ZXJzaW9uKCZyZWFkZXIpOworCXN3aXRjaCAodmVyc2lvbikgewogCWNhc2UgcHJvdG9jb2xfdjI6Ci0JCWRpZSgic3VwcG9ydCBmb3IgcHJvdG9jb2wgdjIgbm90IGltcGxlbWVudGVkIHlldCIpOworCQlnZXRfcmVtb3RlX3JlZnMoZmRbMV0sICZyZWFkZXIsICZyZWYsIDAsIE5VTEwsIE5VTEwpOworCQlicmVhazsKIAljYXNlIHByb3RvY29sX3YxOgogCWNhc2UgcHJvdG9jb2xfdjA6CiAJCWdldF9yZW1vdGVfaGVhZHMoJnJlYWRlciwgJnJlZiwgMCwgTlVMTCwgJnNoYWxsb3cpOwpAQCAtMjMwLDggKzIzNCw4IEBACiAJCUJVRygidW5rbm93biBwcm90b2NvbCB2ZXJzaW9uIik7CiAJfQogCi0JcmVmID0gZmV0Y2hfcGFjaygmYXJncywgZmQsIGNvbm4sIHJlZiwgZGVzdCwgc291Z2h0LCBucl9zb3VnaHQsCi0JCQkgJnNoYWxsb3csIHBhY2tfbG9ja2ZpbGVfcHRyLCBwcm90b2NvbF92MCk7CisJcmVmID0gZmV0Y2hfcGFjaygmYXJncywgZmQsIHJlZiwgc291Z2h0LCBucl9zb3VnaHQsCisJCQkgJnNoYWxsb3csIHBhY2tfbG9ja2ZpbGVfcHRyLCB2ZXJzaW9uKTsKIAlpZiAocGFja19sb2NrZmlsZSkgewogCQlwcmludGYoImxvY2sgJXNcbiIsIHBhY2tfbG9ja2ZpbGUpOwogCQlmZmx1c2goc3Rkb3V0KTsKZGlmZiAtLWdpdCBhL2J1aWx0aW4vZmV0Y2guYyBiL2J1aWx0aW4vZmV0Y2guYwppbmRleCBlMDE0MDMyLi5iZjZiYWI4IDEwMDY0NAotLS0gYS9idWlsdGluL2ZldGNoLmMKKysrIGIvYnVpbHRpbi9mZXRjaC5jCkBAIC03LDYgKzcsNyBAQAogI2luY2x1ZGUgInJlZnMuaCIKICNpbmNsdWRlICJyZWZzcGVjLmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCisjaW5jbHVkZSAib2lkc2V0LmgiCiAjaW5jbHVkZSAiY29tbWl0LmgiCiAjaW5jbHVkZSAiYnVpbHRpbi5oIgogI2luY2x1ZGUgInN0cmluZy1saXN0LmgiCkBAIC0yMyw2ICsyNCwxMSBAQAogI2luY2x1ZGUgInBhY2tmaWxlLmgiCiAjaW5jbHVkZSAibGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmgiCiAjaW5jbHVkZSAiY29tbWl0LXJlYWNoLmgiCisjaW5jbHVkZSAiYnJhbmNoLmgiCisjaW5jbHVkZSAicHJvbWlzb3ItcmVtb3RlLmgiCisjaW5jbHVkZSAiY29tbWl0LWdyYXBoLmgiCisKKyNkZWZpbmUgRk9SQ0VEX1VQREFURVNfREVMQVlfV0FSTklOR19JTl9NUyAoMTAgKiAxMDAwKQogCiBzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGJ1aWx0aW5fZmV0Y2hfdXNhZ2VbXSA9IHsKIAlOXygiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIFs8cmVwb3NpdG9yeT4gWzxyZWZzcGVjPi4uLl1dIiksCkBAIC0zOSw2ICs0NSw4IEBACiB9OwogCiBzdGF0aWMgaW50IGZldGNoX3BydW5lX2NvbmZpZyA9IC0xOyAvKiB1bnNwZWNpZmllZCAqLworc3RhdGljIGludCBmZXRjaF9zaG93X2ZvcmNlZF91cGRhdGVzID0gMTsKK3N0YXRpYyB1aW50NjRfdCBmb3JjZWRfdXBkYXRlc19tcyA9IDA7CiBzdGF0aWMgaW50IHBydW5lID0gLTE7IC8qIHVuc3BlY2lmaWVkICovCiAjZGVmaW5lIFBSVU5FX0JZX0RFRkFVTFQgMCAvKiBkbyB3ZSBwcnVuZSBieSBkZWZhdWx0PyAqLwogCkBAIC00NiwxMCArNTQsMTMgQEAKIHN0YXRpYyBpbnQgcHJ1bmVfdGFncyA9IC0xOyAvKiB1bnNwZWNpZmllZCAqLwogI2RlZmluZSBQUlVORV9UQUdTX0JZX0RFRkFVTFQgMCAvKiBkbyB3ZSBwcnVuZSB0YWdzIGJ5IGRlZmF1bHQ/ICovCiAKLXN0YXRpYyBpbnQgYWxsLCBhcHBlbmQsIGRyeV9ydW4sIGZvcmNlLCBrZWVwLCBtdWx0aXBsZSwgdXBkYXRlX2hlYWRfb2ssIHZlcmJvc2l0eSwgZGVlcGVuX3JlbGF0aXZlOworc3RhdGljIGludCBhbGwsIGFwcGVuZCwgZHJ5X3J1biwgZm9yY2UsIGtlZXAsIG11bHRpcGxlLCB1cGRhdGVfaGVhZF9vazsKK3N0YXRpYyBpbnQgdmVyYm9zaXR5LCBkZWVwZW5fcmVsYXRpdmUsIHNldF91cHN0cmVhbTsKIHN0YXRpYyBpbnQgcHJvZ3Jlc3MgPSAtMTsKK3N0YXRpYyBpbnQgZW5hYmxlX2F1dG9fZ2MgPSAxOwogc3RhdGljIGludCB0YWdzID0gVEFHU19ERUZBVUxULCB1bnNoYWxsb3csIHVwZGF0ZV9zaGFsbG93LCBkZWVwZW47Ci1zdGF0aWMgaW50IG1heF9jaGlsZHJlbiA9IDE7CitzdGF0aWMgaW50IG1heF9qb2JzID0gLTEsIHN1Ym1vZHVsZV9mZXRjaF9qb2JzX2NvbmZpZyA9IC0xOworc3RhdGljIGludCBmZXRjaF9wYXJhbGxlbF9jb25maWcgPSAxOwogc3RhdGljIGVudW0gdHJhbnNwb3J0X2ZhbWlseSBmYW1pbHk7CiBzdGF0aWMgY29uc3QgY2hhciAqZGVwdGg7CiBzdGF0aWMgY29uc3QgY2hhciAqZGVlcGVuX3NpbmNlOwpAQCAtNjYsNiArNzcsNyBAQAogc3RhdGljIHN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgZmlsdGVyX29wdGlvbnM7CiBzdGF0aWMgc3RydWN0IHN0cmluZ19saXN0IHNlcnZlcl9vcHRpb25zID0gU1RSSU5HX0xJU1RfSU5JVF9EVVA7CiBzdGF0aWMgc3RydWN0IHN0cmluZ19saXN0IG5lZ290aWF0aW9uX3RpcCA9IFNUUklOR19MSVNUX0lOSVRfTk9EVVA7CitzdGF0aWMgaW50IGZldGNoX3dyaXRlX2NvbW1pdF9ncmFwaCA9IC0xOwogCiBzdGF0aWMgaW50IGdpdF9mZXRjaF9jb25maWcoY29uc3QgY2hhciAqaywgY29uc3QgY2hhciAqdiwgdm9pZCAqY2IpCiB7CkBAIC03OSw2ICs5MSwxMSBAQAogCQlyZXR1cm4gMDsKIAl9CiAKKwlpZiAoIXN0cmNtcChrLCAiZmV0Y2guc2hvd2ZvcmNlZHVwZGF0ZXMiKSkgeworCQlmZXRjaF9zaG93X2ZvcmNlZF91cGRhdGVzID0gZ2l0X2NvbmZpZ19ib29sKGssIHYpOworCQlyZXR1cm4gMDsKKwl9CisKIAlpZiAoIXN0cmNtcChrLCAic3VibW9kdWxlLnJlY3Vyc2UiKSkgewogCQlpbnQgciA9IGdpdF9jb25maWdfYm9vbChrLCB2KSA/CiAJCQlSRUNVUlNFX1NVQk1PRFVMRVNfT04gOiBSRUNVUlNFX1NVQk1PRFVMRVNfT0ZGOwpAQCAtODYsMTMgKzEwMywyMCBAQAogCX0KIAogCWlmICghc3RyY21wKGssICJzdWJtb2R1bGUuZmV0Y2hqb2JzIikpIHsKLQkJbWF4X2NoaWxkcmVuID0gcGFyc2Vfc3VibW9kdWxlX2ZldGNoam9icyhrLCB2KTsKKwkJc3VibW9kdWxlX2ZldGNoX2pvYnNfY29uZmlnID0gcGFyc2Vfc3VibW9kdWxlX2ZldGNoam9icyhrLCB2KTsKIAkJcmV0dXJuIDA7CiAJfSBlbHNlIGlmICghc3RyY21wKGssICJmZXRjaC5yZWN1cnNlc3VibW9kdWxlcyIpKSB7CiAJCXJlY3Vyc2Vfc3VibW9kdWxlcyA9IHBhcnNlX2ZldGNoX3JlY3Vyc2Vfc3VibW9kdWxlc19hcmcoaywgdik7CiAJCXJldHVybiAwOwogCX0KIAorCWlmICghc3RyY21wKGssICJmZXRjaC5wYXJhbGxlbCIpKSB7CisJCWZldGNoX3BhcmFsbGVsX2NvbmZpZyA9IGdpdF9jb25maWdfaW50KGssIHYpOworCQlpZiAoZmV0Y2hfcGFyYWxsZWxfY29uZmlnIDwgMCkKKwkJCWRpZShfKCJmZXRjaC5wYXJhbGxlbCBjYW5ub3QgYmUgbmVnYXRpdmUiKSk7CisJCXJldHVybiAwOworCX0KKwogCXJldHVybiBnaXRfZGVmYXVsdF9jb25maWcoaywgdiwgY2IpOwogfQogCkBAIC0xMTMsNiArMTM3LDggQEAKIAlPUFRfX1ZFUkJPU0lUWSgmdmVyYm9zaXR5KSwKIAlPUFRfQk9PTCgwLCAiYWxsIiwgJmFsbCwKIAkJIE5fKCJmZXRjaCBmcm9tIGFsbCByZW1vdGVzIikpLAorCU9QVF9CT09MKDAsICJzZXQtdXBzdHJlYW0iLCAmc2V0X3Vwc3RyZWFtLAorCQkgTl8oInNldCB1cHN0cmVhbSBmb3IgZ2l0IHB1bGwvZmV0Y2giKSksCiAJT1BUX0JPT0woJ2EnLCAiYXBwZW5kIiwgJmFwcGVuZCwKIAkJIE5fKCJhcHBlbmQgdG8gLmdpdC9GRVRDSF9IRUFEIGluc3RlYWQgb2Ygb3ZlcndyaXRpbmciKSksCiAJT1BUX1NUUklORygwLCAidXBsb2FkLXBhY2siLCAmdXBsb2FkX3BhY2ssIE5fKCJwYXRoIiksCkBAIC0xMjQsNyArMTUwLDcgQEAKIAkJICAgIE5fKCJmZXRjaCBhbGwgdGFncyBhbmQgYXNzb2NpYXRlZCBvYmplY3RzIiksIFRBR1NfU0VUKSwKIAlPUFRfU0VUX0lOVCgnbicsIE5VTEwsICZ0YWdzLAogCQkgICAgTl8oImRvIG5vdCBmZXRjaCBhbGwgdGFncyAoLS1uby10YWdzKSIpLCBUQUdTX1VOU0VUKSwKLQlPUFRfSU5URUdFUignaicsICJqb2JzIiwgJm1heF9jaGlsZHJlbiwKKwlPUFRfSU5URUdFUignaicsICJqb2JzIiwgJm1heF9qb2JzLAogCQkgICAgTl8oIm51bWJlciBvZiBzdWJtb2R1bGVzIGZldGNoZWQgaW4gcGFyYWxsZWwiKSksCiAJT1BUX0JPT0woJ3AnLCAicHJ1bmUiLCAmcHJ1bmUsCiAJCSBOXygicHJ1bmUgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIG5vIGxvbmdlciBvbiByZW1vdGUiKSksCkBAIC0xNjksNiArMTk1LDEyIEBACiAJT1BUX1NUUklOR19MSVNUKDAsICJuZWdvdGlhdGlvbi10aXAiLCAmbmVnb3RpYXRpb25fdGlwLCBOXygicmV2aXNpb24iKSwKIAkJCU5fKCJyZXBvcnQgdGhhdCB3ZSBoYXZlIG9ubHkgb2JqZWN0cyByZWFjaGFibGUgZnJvbSB0aGlzIG9iamVjdCIpKSwKIAlPUFRfUEFSU0VfTElTVF9PQkpFQ1RTX0ZJTFRFUigmZmlsdGVyX29wdGlvbnMpLAorCU9QVF9CT09MKDAsICJhdXRvLWdjIiwgJmVuYWJsZV9hdXRvX2djLAorCQkgTl8oInJ1biAnZ2MgLS1hdXRvJyBhZnRlciBmZXRjaGluZyIpKSwKKwlPUFRfQk9PTCgwLCAic2hvdy1mb3JjZWQtdXBkYXRlcyIsICZmZXRjaF9zaG93X2ZvcmNlZF91cGRhdGVzLAorCQkgTl8oImNoZWNrIGZvciBmb3JjZWQtdXBkYXRlcyBvbiBhbGwgdXBkYXRlZCBicmFuY2hlcyIpKSwKKwlPUFRfQk9PTCgwLCAid3JpdGUtY29tbWl0LWdyYXBoIiwgJmZldGNoX3dyaXRlX2NvbW1pdF9ncmFwaCwKKwkJIE5fKCJ3cml0ZSB0aGUgY29tbWl0LWdyYXBoIGFmdGVyIGZldGNoaW5nIikpLAogCU9QVF9FTkQoKQogfTsKIApAQCAtMjI1LDMxICsyNTcsMzEgQEAKIAl9CiB9CiAKLXN0YXRpYyBpbnQgd2lsbF9mZXRjaChzdHJ1Y3QgcmVmICoqaGVhZCwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSkKK3N0YXRpYyB2b2lkIGNyZWF0ZV9mZXRjaF9vaWRzZXQoc3RydWN0IHJlZiAqKmhlYWQsIHN0cnVjdCBvaWRzZXQgKm91dCkKIHsKIAlzdHJ1Y3QgcmVmICpybSA9ICpoZWFkOwogCXdoaWxlIChybSkgewotCQlpZiAoaGFzaGVxKHJtLT5vbGRfb2lkLmhhc2gsIHNoYTEpKQotCQkJcmV0dXJuIDE7CisJCW9pZHNldF9pbnNlcnQob3V0LCAmcm0tPm9sZF9vaWQpOwogCQlybSA9IHJtLT5uZXh0OwogCX0KLQlyZXR1cm4gMDsKIH0KIAogc3RydWN0IHJlZm5hbWVfaGFzaF9lbnRyeSB7Ci0Jc3RydWN0IGhhc2htYXBfZW50cnkgZW50OyAvKiBtdXN0IGJlIHRoZSBmaXJzdCBtZW1iZXIgKi8KKwlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSBlbnQ7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CisJaW50IGlnbm9yZTsKIAljaGFyIHJlZm5hbWVbRkxFWF9BUlJBWV07CiB9OwogCiBzdGF0aWMgaW50IHJlZm5hbWVfaGFzaF9lbnRyeV9jbXAoY29uc3Qgdm9pZCAqaGFzaG1hcF9jbXBfZm5fZGF0YSwKLQkJCQkgIGNvbnN0IHZvaWQgKmUxXywKLQkJCQkgIGNvbnN0IHZvaWQgKmUyXywKKwkJCQkgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplcHRyLAorCQkJCSAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmVudHJ5X29yX2tleSwKIAkJCQkgIGNvbnN0IHZvaWQgKmtleWRhdGEpCiB7Ci0JY29uc3Qgc3RydWN0IHJlZm5hbWVfaGFzaF9lbnRyeSAqZTEgPSBlMV87Ci0JY29uc3Qgc3RydWN0IHJlZm5hbWVfaGFzaF9lbnRyeSAqZTIgPSBlMl87CisJY29uc3Qgc3RydWN0IHJlZm5hbWVfaGFzaF9lbnRyeSAqZTEsICplMjsKIAorCWUxID0gY29udGFpbmVyX29mKGVwdHIsIGNvbnN0IHN0cnVjdCByZWZuYW1lX2hhc2hfZW50cnksIGVudCk7CisJZTIgPSBjb250YWluZXJfb2YoZW50cnlfb3Jfa2V5LCBjb25zdCBzdHJ1Y3QgcmVmbmFtZV9oYXNoX2VudHJ5LCBlbnQpOwogCXJldHVybiBzdHJjbXAoZTEtPnJlZm5hbWUsIGtleWRhdGEgPyBrZXlkYXRhIDogZTItPnJlZm5hbWUpOwogfQogCkBAIC0yNjEsOSArMjkzLDkgQEAKIAlzaXplX3QgbGVuID0gc3RybGVuKHJlZm5hbWUpOwogCiAJRkxFWF9BTExPQ19NRU0oZW50LCByZWZuYW1lLCByZWZuYW1lLCBsZW4pOwotCWhhc2htYXBfZW50cnlfaW5pdChlbnQsIHN0cmhhc2gocmVmbmFtZSkpOworCWhhc2htYXBfZW50cnlfaW5pdCgmZW50LT5lbnQsIHN0cmhhc2gocmVmbmFtZSkpOwogCW9pZGNweSgmZW50LT5vaWQsIG9pZCk7Ci0JaGFzaG1hcF9hZGQobWFwLCBlbnQpOworCWhhc2htYXBfYWRkKG1hcCwgJmVudC0+ZW50KTsKIAlyZXR1cm4gZW50OwogfQogCkBAIC0yODcsMTkgKzMxOSwyNyBAQAogCXJldHVybiAhIWhhc2htYXBfZ2V0X2Zyb21faGFzaChtYXAsIHN0cmhhc2gocmVmbmFtZSksIHJlZm5hbWUpOwogfQogCitzdGF0aWMgdm9pZCBjbGVhcl9pdGVtKHN0cnVjdCByZWZuYW1lX2hhc2hfZW50cnkgKml0ZW0pCit7CisJaXRlbS0+aWdub3JlID0gMTsKK30KKwogc3RhdGljIHZvaWQgZmluZF9ub25fbG9jYWxfdGFncyhjb25zdCBzdHJ1Y3QgcmVmICpyZWZzLAogCQkJCXN0cnVjdCByZWYgKipoZWFkLAogCQkJCXN0cnVjdCByZWYgKioqdGFpbCkKIHsKIAlzdHJ1Y3QgaGFzaG1hcCBleGlzdGluZ19yZWZzOwogCXN0cnVjdCBoYXNobWFwIHJlbW90ZV9yZWZzOworCXN0cnVjdCBvaWRzZXQgZmV0Y2hfb2lkcyA9IE9JRFNFVF9JTklUOwogCXN0cnVjdCBzdHJpbmdfbGlzdCByZW1vdGVfcmVmc19saXN0ID0gU1RSSU5HX0xJU1RfSU5JVF9OT0RVUDsKIAlzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqcmVtb3RlX3JlZl9pdGVtOwogCWNvbnN0IHN0cnVjdCByZWYgKnJlZjsKIAlzdHJ1Y3QgcmVmbmFtZV9oYXNoX2VudHJ5ICppdGVtID0gTlVMTDsKKwljb25zdCBpbnQgcXVpY2tfZmxhZ3MgPSBPQkpFQ1RfSU5GT19RVUlDSyB8IE9CSkVDVF9JTkZPX1NLSVBfRkVUQ0hfT0JKRUNUOwogCiAJcmVmbmFtZV9oYXNoX2luaXQoJmV4aXN0aW5nX3JlZnMpOwogCXJlZm5hbWVfaGFzaF9pbml0KCZyZW1vdGVfcmVmcyk7CisJY3JlYXRlX2ZldGNoX29pZHNldChoZWFkLCAmZmV0Y2hfb2lkcyk7CiAKIAlmb3JfZWFjaF9yZWYoYWRkX29uZV9yZWZuYW1lLCAmZXhpc3RpbmdfcmVmcyk7CiAJZm9yIChyZWYgPSByZWZzOyByZWY7IHJlZiA9IHJlZi0+bmV4dCkgewpAQCAtMzE0LDEzICszNTQsMTEgQEAKIAkJICovCiAJCWlmIChlbmRzX3dpdGgocmVmLT5uYW1lLCAiXnt9IikpIHsKIAkJCWlmIChpdGVtICYmCi0JCQkgICAgIWhhc19vYmplY3RfZmlsZV93aXRoX2ZsYWdzKCZyZWYtPm9sZF9vaWQsCi0JCQkJCQkJT0JKRUNUX0lORk9fUVVJQ0spICYmCi0JCQkgICAgIXdpbGxfZmV0Y2goaGVhZCwgcmVmLT5vbGRfb2lkLmhhc2gpICYmCi0JCQkgICAgIWhhc19zaGExX2ZpbGVfd2l0aF9mbGFncyhpdGVtLT5vaWQuaGFzaCwKLQkJCQkJCSAgICAgIE9CSkVDVF9JTkZPX1FVSUNLKSAmJgotCQkJICAgICF3aWxsX2ZldGNoKGhlYWQsIGl0ZW0tPm9pZC5oYXNoKSkKLQkJCQlvaWRjbHIoJml0ZW0tPm9pZCk7CisJCQkgICAgIWhhc19vYmplY3RfZmlsZV93aXRoX2ZsYWdzKCZyZWYtPm9sZF9vaWQsIHF1aWNrX2ZsYWdzKSAmJgorCQkJICAgICFvaWRzZXRfY29udGFpbnMoJmZldGNoX29pZHMsICZyZWYtPm9sZF9vaWQpICYmCisJCQkgICAgIWhhc19vYmplY3RfZmlsZV93aXRoX2ZsYWdzKCZpdGVtLT5vaWQsIHF1aWNrX2ZsYWdzKSAmJgorCQkJICAgICFvaWRzZXRfY29udGFpbnMoJmZldGNoX29pZHMsICZpdGVtLT5vaWQpKQorCQkJCWNsZWFyX2l0ZW0oaXRlbSk7CiAJCQlpdGVtID0gTlVMTDsKIAkJCWNvbnRpbnVlOwogCQl9CkBAIC0zMzIsOSArMzcwLDkgQEAKIAkJICogZmV0Y2guCiAJCSAqLwogCQlpZiAoaXRlbSAmJgotCQkgICAgIWhhc19zaGExX2ZpbGVfd2l0aF9mbGFncyhpdGVtLT5vaWQuaGFzaCwgT0JKRUNUX0lORk9fUVVJQ0spICYmCi0JCSAgICAhd2lsbF9mZXRjaChoZWFkLCBpdGVtLT5vaWQuaGFzaCkpCi0JCQlvaWRjbHIoJml0ZW0tPm9pZCk7CisJCSAgICAhaGFzX29iamVjdF9maWxlX3dpdGhfZmxhZ3MoJml0ZW0tPm9pZCwgcXVpY2tfZmxhZ3MpICYmCisJCSAgICAhb2lkc2V0X2NvbnRhaW5zKCZmZXRjaF9vaWRzLCAmaXRlbS0+b2lkKSkKKwkJCWNsZWFyX2l0ZW0oaXRlbSk7CiAKIAkJaXRlbSA9IE5VTEw7CiAKQEAgLTM0NiwxNiArMzg0LDE2IEBACiAJCWl0ZW0gPSByZWZuYW1lX2hhc2hfYWRkKCZyZW1vdGVfcmVmcywgcmVmLT5uYW1lLCAmcmVmLT5vbGRfb2lkKTsKIAkJc3RyaW5nX2xpc3RfaW5zZXJ0KCZyZW1vdGVfcmVmc19saXN0LCByZWYtPm5hbWUpOwogCX0KLQloYXNobWFwX2ZyZWUoJmV4aXN0aW5nX3JlZnMsIDEpOworCWhhc2htYXBfZnJlZV9lbnRyaWVzKCZleGlzdGluZ19yZWZzLCBzdHJ1Y3QgcmVmbmFtZV9oYXNoX2VudHJ5LCBlbnQpOwogCiAJLyoKIAkgKiBXZSBtYXkgaGF2ZSBhIGZpbmFsIGxpZ2h0d2VpZ2h0IHRhZyB0aGF0IG5lZWRzIHRvIGJlCiAJICogY2hlY2tlZCB0byBzZWUgaWYgaXQgbmVlZHMgZmV0Y2hpbmcuCiAJICovCiAJaWYgKGl0ZW0gJiYKLQkgICAgIWhhc19zaGExX2ZpbGVfd2l0aF9mbGFncyhpdGVtLT5vaWQuaGFzaCwgT0JKRUNUX0lORk9fUVVJQ0spICYmCi0JICAgICF3aWxsX2ZldGNoKGhlYWQsIGl0ZW0tPm9pZC5oYXNoKSkKLQkJb2lkY2xyKCZpdGVtLT5vaWQpOworCSAgICAhaGFzX29iamVjdF9maWxlX3dpdGhfZmxhZ3MoJml0ZW0tPm9pZCwgcXVpY2tfZmxhZ3MpICYmCisJICAgICFvaWRzZXRfY29udGFpbnMoJmZldGNoX29pZHMsICZpdGVtLT5vaWQpKQorCQljbGVhcl9pdGVtKGl0ZW0pOwogCiAJLyoKIAkgKiBGb3IgYWxsIHRoZSB0YWdzIGluIHRoZSByZW1vdGVfcmVmc19saXN0LApAQCAtMzYzLDIyICs0MDEsMjcgQEAKIAkgKi8KIAlmb3JfZWFjaF9zdHJpbmdfbGlzdF9pdGVtKHJlbW90ZV9yZWZfaXRlbSwgJnJlbW90ZV9yZWZzX2xpc3QpIHsKIAkJY29uc3QgY2hhciAqcmVmbmFtZSA9IHJlbW90ZV9yZWZfaXRlbS0+c3RyaW5nOworCQlzdHJ1Y3QgcmVmICpybTsKKwkJdW5zaWduZWQgaW50IGhhc2ggPSBzdHJoYXNoKHJlZm5hbWUpOwogCi0JCWl0ZW0gPSBoYXNobWFwX2dldF9mcm9tX2hhc2goJnJlbW90ZV9yZWZzLCBzdHJoYXNoKHJlZm5hbWUpLCByZWZuYW1lKTsKKwkJaXRlbSA9IGhhc2htYXBfZ2V0X2VudHJ5X2Zyb21faGFzaCgmcmVtb3RlX3JlZnMsIGhhc2gsIHJlZm5hbWUsCisJCQkJCXN0cnVjdCByZWZuYW1lX2hhc2hfZW50cnksIGVudCk7CiAJCWlmICghaXRlbSkKIAkJCUJVRygidW5zZWVuIHJlbW90ZSByZWY/Iik7CiAKIAkJLyogVW5sZXNzIHdlIGhhdmUgYWxyZWFkeSBkZWNpZGVkIHRvIGlnbm9yZSB0aGlzIGl0ZW0uLi4gKi8KLQkJaWYgKCFpc19udWxsX29pZCgmaXRlbS0+b2lkKSkgewotCQkJc3RydWN0IHJlZiAqcm0gPSBhbGxvY19yZWYoaXRlbS0+cmVmbmFtZSk7Ci0JCQlybS0+cGVlcl9yZWYgPSBhbGxvY19yZWYoaXRlbS0+cmVmbmFtZSk7Ci0JCQlvaWRjcHkoJnJtLT5vbGRfb2lkLCAmaXRlbS0+b2lkKTsKLQkJCSoqdGFpbCA9IHJtOwotCQkJKnRhaWwgPSAmcm0tPm5leHQ7Ci0JCX0KKwkJaWYgKGl0ZW0tPmlnbm9yZSkKKwkJCWNvbnRpbnVlOworCisJCXJtID0gYWxsb2NfcmVmKGl0ZW0tPnJlZm5hbWUpOworCQlybS0+cGVlcl9yZWYgPSBhbGxvY19yZWYoaXRlbS0+cmVmbmFtZSk7CisJCW9pZGNweSgmcm0tPm9sZF9vaWQsICZpdGVtLT5vaWQpOworCQkqKnRhaWwgPSBybTsKKwkJKnRhaWwgPSAmcm0tPm5leHQ7CiAJfQotCWhhc2htYXBfZnJlZSgmcmVtb3RlX3JlZnMsIDEpOworCWhhc2htYXBfZnJlZV9lbnRyaWVzKCZyZW1vdGVfcmVmcywgc3RydWN0IHJlZm5hbWVfaGFzaF9lbnRyeSwgZW50KTsKIAlzdHJpbmdfbGlzdF9jbGVhcigmcmVtb3RlX3JlZnNfbGlzdCwgMCk7CisJb2lkc2V0X2NsZWFyKCZmZXRjaF9vaWRzKTsKIH0KIAogc3RhdGljIHN0cnVjdCByZWYgKmdldF9yZWZfbWFwKHN0cnVjdCByZW1vdGUgKnJlbW90ZSwKQEAgLTQ5NSwxNyArNTM4LDE4IEBACiAJCWlmIChybS0+cGVlcl9yZWYpIHsKIAkJCWNvbnN0IGNoYXIgKnJlZm5hbWUgPSBybS0+cGVlcl9yZWYtPm5hbWU7CiAJCQlzdHJ1Y3QgcmVmbmFtZV9oYXNoX2VudHJ5ICpwZWVyX2l0ZW07CisJCQl1bnNpZ25lZCBpbnQgaGFzaCA9IHN0cmhhc2gocmVmbmFtZSk7CiAKLQkJCXBlZXJfaXRlbSA9IGhhc2htYXBfZ2V0X2Zyb21faGFzaCgmZXhpc3RpbmdfcmVmcywKLQkJCQkJCQkgIHN0cmhhc2gocmVmbmFtZSksCi0JCQkJCQkJICByZWZuYW1lKTsKKwkJCXBlZXJfaXRlbSA9IGhhc2htYXBfZ2V0X2VudHJ5X2Zyb21faGFzaCgmZXhpc3RpbmdfcmVmcywKKwkJCQkJCWhhc2gsIHJlZm5hbWUsCisJCQkJCQlzdHJ1Y3QgcmVmbmFtZV9oYXNoX2VudHJ5LCBlbnQpOwogCQkJaWYgKHBlZXJfaXRlbSkgewogCQkJCXN0cnVjdCBvYmplY3RfaWQgKm9sZF9vaWQgPSAmcGVlcl9pdGVtLT5vaWQ7CiAJCQkJb2lkY3B5KCZybS0+cGVlcl9yZWYtPm9sZF9vaWQsIG9sZF9vaWQpOwogCQkJfQogCQl9CiAJfQotCWhhc2htYXBfZnJlZSgmZXhpc3RpbmdfcmVmcywgMSk7CisJaGFzaG1hcF9mcmVlX2VudHJpZXMoJmV4aXN0aW5nX3JlZnMsIHN0cnVjdCByZWZuYW1lX2hhc2hfZW50cnksIGVudCk7CiAKIAlyZXR1cm4gcmVmX21hcDsKIH0KQEAgLTYyOSw5ICs2NzMsMTQgQEAKIAkJCSAgICBjb25zdCBjaGFyICpuZWVkbGUsCiAJCQkgICAgY29uc3QgY2hhciAqcGxhY2Vob2xkZXIpCiB7Ci0JY29uc3QgY2hhciAqcCA9IHN0cnN0cihoYXlzdGFjay0+YnVmLCBuZWVkbGUpOworCWNvbnN0IGNoYXIgKnAgPSBOVUxMOwogCWludCBwbGVuLCBubGVuOwogCisJbmxlbiA9IHN0cmxlbihuZWVkbGUpOworCWlmIChlbmRzX3dpdGgoaGF5c3RhY2stPmJ1ZiwgbmVlZGxlKSkKKwkJcCA9IGhheXN0YWNrLT5idWYgKyBoYXlzdGFjay0+bGVuIC0gbmxlbjsKKwllbHNlCisJCXAgPSBzdHJzdHIoaGF5c3RhY2stPmJ1ZiwgbmVlZGxlKTsKIAlpZiAoIXApCiAJCXJldHVybiAwOwogCkBAIC02MzksNyArNjg4LDYgQEAKIAkJcmV0dXJuIDA7CiAKIAlwbGVuID0gc3RybGVuKHApOwotCW5sZW4gPSBzdHJsZW4obmVlZGxlKTsKIAlpZiAocGxlbiA+IG5sZW4gJiYgcFtubGVuXSAhPSAnLycpCiAJCXJldHVybiAwOwogCkBAIC02OTYsNiArNzQ0LDcgQEAKIAllbnVtIG9iamVjdF90eXBlIHR5cGU7CiAJc3RydWN0IGJyYW5jaCAqY3VycmVudF9icmFuY2ggPSBicmFuY2hfZ2V0KE5VTEwpOwogCWNvbnN0IGNoYXIgKnByZXR0eV9yZWYgPSBwcmV0dGlmeV9yZWZuYW1lKHJlZi0+bmFtZSk7CisJaW50IGZhc3RfZm9yd2FyZCA9IDA7CiAKIAl0eXBlID0gb2lkX29iamVjdF9pbmZvKHRoZV9yZXBvc2l0b3J5LCAmcmVmLT5uZXdfb2lkLCBOVUxMKTsKIAlpZiAodHlwZSA8IDApCkBAIC03NjMsOSArODEyLDYgQEAKIAkJCXdoYXQgPSBfKCJbbmV3IHJlZl0iKTsKIAkJfQogCi0JCWlmICgocmVjdXJzZV9zdWJtb2R1bGVzICE9IFJFQ1VSU0VfU1VCTU9EVUxFU19PRkYpICYmCi0JCSAgICAocmVjdXJzZV9zdWJtb2R1bGVzICE9IFJFQ1VSU0VfU1VCTU9EVUxFU19PTikpCi0JCQljaGVja19mb3JfbmV3X3N1Ym1vZHVsZV9jb21taXRzKCZyZWYtPm5ld19vaWQpOwogCQlyID0gc191cGRhdGVfcmVmKG1zZywgcmVmLCAwKTsKIAkJZm9ybWF0X2Rpc3BsYXkoZGlzcGxheSwgciA/ICchJyA6ICcqJywgd2hhdCwKIAkJCSAgICAgICByID8gXygidW5hYmxlIHRvIHVwZGF0ZSBsb2NhbCByZWYiKSA6IE5VTEwsCkBAIC03NzMsMTUgKzgxOSwyMSBAQAogCQlyZXR1cm4gcjsKIAl9CiAKLQlpZiAoaW5fbWVyZ2VfYmFzZXMoY3VycmVudCwgdXBkYXRlZCkpIHsKKwlpZiAoZmV0Y2hfc2hvd19mb3JjZWRfdXBkYXRlcykgeworCQl1aW50NjRfdCB0X2JlZm9yZSA9IGdldG5hbm90aW1lKCk7CisJCWZhc3RfZm9yd2FyZCA9IGluX21lcmdlX2Jhc2VzKGN1cnJlbnQsIHVwZGF0ZWQpOworCQlmb3JjZWRfdXBkYXRlc19tcyArPSAoZ2V0bmFub3RpbWUoKSAtIHRfYmVmb3JlKSAvIDEwMDAwMDA7CisJfSBlbHNlIHsKKwkJZmFzdF9mb3J3YXJkID0gMTsKKwl9CisKKwlpZiAoZmFzdF9mb3J3YXJkKSB7CiAJCXN0cnVjdCBzdHJidWYgcXVpY2tyZWYgPSBTVFJCVUZfSU5JVDsKIAkJaW50IHI7CisKIAkJc3RyYnVmX2FkZF91bmlxdWVfYWJicmV2KCZxdWlja3JlZiwgJmN1cnJlbnQtPm9iamVjdC5vaWQsIERFRkFVTFRfQUJCUkVWKTsKIAkJc3RyYnVmX2FkZHN0cigmcXVpY2tyZWYsICIuLiIpOwogCQlzdHJidWZfYWRkX3VuaXF1ZV9hYmJyZXYoJnF1aWNrcmVmLCAmcmVmLT5uZXdfb2lkLCBERUZBVUxUX0FCQlJFVik7Ci0JCWlmICgocmVjdXJzZV9zdWJtb2R1bGVzICE9IFJFQ1VSU0VfU1VCTU9EVUxFU19PRkYpICYmCi0JCSAgICAocmVjdXJzZV9zdWJtb2R1bGVzICE9IFJFQ1VSU0VfU1VCTU9EVUxFU19PTikpCi0JCQljaGVja19mb3JfbmV3X3N1Ym1vZHVsZV9jb21taXRzKCZyZWYtPm5ld19vaWQpOwogCQlyID0gc191cGRhdGVfcmVmKCJmYXN0LWZvcndhcmQiLCByZWYsIDEpOwogCQlmb3JtYXRfZGlzcGxheShkaXNwbGF5LCByID8gJyEnIDogJyAnLCBxdWlja3JlZi5idWYsCiAJCQkgICAgICAgciA/IF8oInVuYWJsZSB0byB1cGRhdGUgbG9jYWwgcmVmIikgOiBOVUxMLApAQCAtNzk0LDkgKzg0Niw2IEBACiAJCXN0cmJ1Zl9hZGRfdW5pcXVlX2FiYnJldigmcXVpY2tyZWYsICZjdXJyZW50LT5vYmplY3Qub2lkLCBERUZBVUxUX0FCQlJFVik7CiAJCXN0cmJ1Zl9hZGRzdHIoJnF1aWNrcmVmLCAiLi4uIik7CiAJCXN0cmJ1Zl9hZGRfdW5pcXVlX2FiYnJldigmcXVpY2tyZWYsICZyZWYtPm5ld19vaWQsIERFRkFVTFRfQUJCUkVWKTsKLQkJaWYgKChyZWN1cnNlX3N1Ym1vZHVsZXMgIT0gUkVDVVJTRV9TVUJNT0RVTEVTX09GRikgJiYKLQkJICAgIChyZWN1cnNlX3N1Ym1vZHVsZXMgIT0gUkVDVVJTRV9TVUJNT0RVTEVTX09OKSkKLQkJCWNoZWNrX2Zvcl9uZXdfc3VibW9kdWxlX2NvbW1pdHMoJnJlZi0+bmV3X29pZCk7CiAJCXIgPSBzX3VwZGF0ZV9yZWYoImZvcmNlZC11cGRhdGUiLCByZWYsIDEpOwogCQlmb3JtYXRfZGlzcGxheShkaXNwbGF5LCByID8gJyEnIDogJysnLCBxdWlja3JlZi5idWYsCiAJCQkgICAgICAgciA/IF8oInVuYWJsZSB0byB1cGRhdGUgbG9jYWwgcmVmIikgOiBfKCJmb3JjZWQgdXBkYXRlIiksCkBAIC04MjQsNiArODczLDE1IEBACiAJcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyBjb25zdCBjaGFyIHdhcm5fc2hvd19mb3JjZWRfdXBkYXRlc1tdID0KK05fKCJGZXRjaCBub3JtYWxseSBpbmRpY2F0ZXMgd2hpY2ggYnJhbmNoZXMgaGFkIGEgZm9yY2VkIHVwZGF0ZSxcbiIKKyAgICJidXQgdGhhdCBjaGVjayBoYXMgYmVlbiBkaXNhYmxlZC4gVG8gcmUtZW5hYmxlLCB1c2UgJy0tc2hvdy1mb3JjZWQtdXBkYXRlcydcbiIKKyAgICJmbGFnIG9yIHJ1biAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyB0cnVlJy4iKTsKK3N0YXRpYyBjb25zdCBjaGFyIHdhcm5fdGltZV9zaG93X2ZvcmNlZF91cGRhdGVzW10gPQorTl8oIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGNoZWNrIGZvcmNlZCB1cGRhdGVzLiBZb3UgY2FuIHVzZVxuIgorICAgIictLW5vLXNob3ctZm9yY2VkLXVwZGF0ZXMnIG9yIHJ1biAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyBmYWxzZSdcbiIKKyAgICIgdG8gYXZvaWQgdGhpcyBjaGVjay5cbiIpOworCiBzdGF0aWMgaW50IHN0b3JlX3VwZGF0ZWRfcmVmcyhjb25zdCBjaGFyICpyYXdfdXJsLCBjb25zdCBjaGFyICpyZW1vdGVfbmFtZSwKIAkJCSAgICAgIGludCBjb25uZWN0aXZpdHlfY2hlY2tlZCwgc3RydWN0IHJlZiAqcmVmX21hcCkKIHsKQEAgLTg0OCw4ICs5MDYsMTcgQEAKIAkJdXJsID0geHN0cmR1cCgiZm9yZWlnbiIpOwogCiAJaWYgKCFjb25uZWN0aXZpdHlfY2hlY2tlZCkgeworCQlzdHJ1Y3QgY2hlY2tfY29ubmVjdGVkX29wdGlvbnMgb3B0ID0gQ0hFQ0tfQ09OTkVDVEVEX0lOSVQ7CisKKwkJaWYgKGZpbHRlcl9vcHRpb25zLmNob2ljZSkKKwkJCS8qCisJCQkgKiBTaW5jZSBhIGZpbHRlciBpcyBzcGVjaWZpZWQsIG9iamVjdHMgaW5kaXJlY3RseQorCQkJICogcmVmZXJlbmNlZCBieSByZWZzIGFyZSBhbGxvd2VkIHRvIGJlIGFic2VudC4KKwkJCSAqLworCQkJb3B0LmNoZWNrX3JlZnNfYXJlX3Byb21pc29yX29iamVjdHNfb25seSA9IDE7CisKIAkJcm0gPSByZWZfbWFwOwotCQlpZiAoY2hlY2tfY29ubmVjdGVkKGl0ZXJhdGVfcmVmX21hcCwgJnJtLCBOVUxMKSkgeworCQlpZiAoY2hlY2tfY29ubmVjdGVkKGl0ZXJhdGVfcmVmX21hcCwgJnJtLCAmb3B0KSkgewogCQkJcmMgPSBlcnJvcihfKCIlcyBkaWQgbm90IHNlbmQgYWxsIG5lY2Vzc2FyeSBvYmplY3RzXG4iKSwgdXJsKTsKIAkJCWdvdG8gYWJvcnQ7CiAJCX0KQEAgLTg5MiwyMyArOTU5LDE5IEBACiAJCQkJcmVmLT5mb3JjZSA9IHJtLT5wZWVyX3JlZi0+Zm9yY2U7CiAJCQl9CiAKKwkJCWlmIChyZWN1cnNlX3N1Ym1vZHVsZXMgIT0gUkVDVVJTRV9TVUJNT0RVTEVTX09GRikKKwkJCQljaGVja19mb3JfbmV3X3N1Ym1vZHVsZV9jb21taXRzKCZybS0+b2xkX29pZCk7CiAKIAkJCWlmICghc3RyY21wKHJtLT5uYW1lLCAiSEVBRCIpKSB7CiAJCQkJa2luZCA9ICIiOwogCQkJCXdoYXQgPSAiIjsKIAkJCX0KLQkJCWVsc2UgaWYgKHN0YXJ0c193aXRoKHJtLT5uYW1lLCAicmVmcy9oZWFkcy8iKSkgeworCQkJZWxzZSBpZiAoc2tpcF9wcmVmaXgocm0tPm5hbWUsICJyZWZzL2hlYWRzLyIsICZ3aGF0KSkKIAkJCQlraW5kID0gImJyYW5jaCI7Ci0JCQkJd2hhdCA9IHJtLT5uYW1lICsgMTE7Ci0JCQl9Ci0JCQllbHNlIGlmIChzdGFydHNfd2l0aChybS0+bmFtZSwgInJlZnMvdGFncy8iKSkgeworCQkJZWxzZSBpZiAoc2tpcF9wcmVmaXgocm0tPm5hbWUsICJyZWZzL3RhZ3MvIiwgJndoYXQpKQogCQkJCWtpbmQgPSAidGFnIjsKLQkJCQl3aGF0ID0gcm0tPm5hbWUgKyAxMDsKLQkJCX0KLQkJCWVsc2UgaWYgKHN0YXJ0c193aXRoKHJtLT5uYW1lLCAicmVmcy9yZW1vdGVzLyIpKSB7CisJCQllbHNlIGlmIChza2lwX3ByZWZpeChybS0+bmFtZSwgInJlZnMvcmVtb3Rlcy8iLCAmd2hhdCkpCiAJCQkJa2luZCA9ICJyZW1vdGUtdHJhY2tpbmcgYnJhbmNoIjsKLQkJCQl3aGF0ID0gcm0tPm5hbWUgKyAxMzsKLQkJCX0KIAkJCWVsc2UgewogCQkJCWtpbmQgPSAiIjsKIAkJCQl3aGF0ID0gcm0tPm5hbWU7CkBAIC05NzUsNiArMTAzOCwxNSBAQAogCQkgICAgICAiICdnaXQgcmVtb3RlIHBydW5lICVzJyB0byByZW1vdmUgYW55IG9sZCwgY29uZmxpY3RpbmcgIgogCQkgICAgICAiYnJhbmNoZXMiKSwgcmVtb3RlX25hbWUpOwogCisJaWYgKGFkdmljZV9mZXRjaF9zaG93X2ZvcmNlZF91cGRhdGVzKSB7CisJCWlmICghZmV0Y2hfc2hvd19mb3JjZWRfdXBkYXRlcykgeworCQkJd2FybmluZyhfKHdhcm5fc2hvd19mb3JjZWRfdXBkYXRlcykpOworCQl9IGVsc2UgaWYgKGZvcmNlZF91cGRhdGVzX21zID4gRk9SQ0VEX1VQREFURVNfREVMQVlfV0FSTklOR19JTl9NUykgeworCQkJd2FybmluZyhfKHdhcm5fdGltZV9zaG93X2ZvcmNlZF91cGRhdGVzKSwKKwkJCQlmb3JjZWRfdXBkYXRlc19tcyAvIDEwMDAuMCk7CisJCX0KKwl9CisKICBhYm9ydDoKIAlzdHJidWZfcmVsZWFzZSgmbm90ZSk7CiAJZnJlZSh1cmwpOwpAQCAtMTAwOCw3ICsxMDgwLDggQEAKIAkgKiB3ZSBuZWVkIGFsbCBkaXJlY3QgdGFyZ2V0cyB0byBleGlzdC4KIAkgKi8KIAlmb3IgKHIgPSBybTsgcjsgciA9IHItPm5leHQpIHsKLQkJaWYgKCFoYXNfb2JqZWN0X2ZpbGUoJnItPm9sZF9vaWQpKQorCQlpZiAoIWhhc19vYmplY3RfZmlsZV93aXRoX2ZsYWdzKCZyLT5vbGRfb2lkLAorCQkJCQkJT0JKRUNUX0lORk9fU0tJUF9GRVRDSF9PQkpFQ1QpKQogCQkJcmV0dXJuIC0xOwogCX0KIApAQCAtMTAxOSw4ICsxMDkyLDExIEBACiBzdGF0aWMgaW50IGZldGNoX3JlZnMoc3RydWN0IHRyYW5zcG9ydCAqdHJhbnNwb3J0LCBzdHJ1Y3QgcmVmICpyZWZfbWFwKQogewogCWludCByZXQgPSBjaGVja19leGlzdF9hbmRfY29ubmVjdGVkKHJlZl9tYXApOwotCWlmIChyZXQpCisJaWYgKHJldCkgeworCQl0cmFjZTJfcmVnaW9uX2VudGVyKCJmZXRjaCIsICJmZXRjaF9yZWZzIiwgdGhlX3JlcG9zaXRvcnkpOwogCQlyZXQgPSB0cmFuc3BvcnRfZmV0Y2hfcmVmcyh0cmFuc3BvcnQsIHJlZl9tYXApOworCQl0cmFjZTJfcmVnaW9uX2xlYXZlKCJmZXRjaCIsICJmZXRjaF9yZWZzIiwgdGhlX3JlcG9zaXRvcnkpOworCX0KIAlpZiAoIXJldCkKIAkJLyoKIAkJICogS2VlcCB0aGUgbmV3IHBhY2sncyAiLmtlZXAiIGZpbGUgYXJvdW5kIHRvIGFsbG93IHRoZSBjYWxsZXIKQEAgLTEwMzYsMTEgKzExMTIsMTQgQEAKIHsKIAlpbnQgY29ubmVjdGl2aXR5X2NoZWNrZWQgPSB0cmFuc3BvcnQtPnNtYXJ0X29wdGlvbnMKIAkJPyB0cmFuc3BvcnQtPnNtYXJ0X29wdGlvbnMtPmNvbm5lY3Rpdml0eV9jaGVja2VkIDogMDsKLQlpbnQgcmV0ID0gc3RvcmVfdXBkYXRlZF9yZWZzKHRyYW5zcG9ydC0+dXJsLAotCQkJCSAgICAgdHJhbnNwb3J0LT5yZW1vdGUtPm5hbWUsCi0JCQkJICAgICBjb25uZWN0aXZpdHlfY2hlY2tlZCwKLQkJCQkgICAgIHJlZl9tYXApOworCWludCByZXQ7CisJdHJhY2UyX3JlZ2lvbl9lbnRlcigiZmV0Y2giLCAiY29uc3VtZV9yZWZzIiwgdGhlX3JlcG9zaXRvcnkpOworCXJldCA9IHN0b3JlX3VwZGF0ZWRfcmVmcyh0cmFuc3BvcnQtPnVybCwKKwkJCQkgdHJhbnNwb3J0LT5yZW1vdGUtPm5hbWUsCisJCQkJIGNvbm5lY3Rpdml0eV9jaGVja2VkLAorCQkJCSByZWZfbWFwKTsKIAl0cmFuc3BvcnRfdW5sb2NrX3BhY2sodHJhbnNwb3J0KTsKKwl0cmFjZTJfcmVnaW9uX2xlYXZlKCJmZXRjaCIsICJjb25zdW1lX3JlZnMiLCB0aGVfcmVwb3NpdG9yeSk7CiAJcmV0dXJuIHJldDsKIH0KIApAQCAtMTE3Miw2ICsxMjUxLDcgQEAKIHN0YXRpYyBzdHJ1Y3QgdHJhbnNwb3J0ICpwcmVwYXJlX3RyYW5zcG9ydChzdHJ1Y3QgcmVtb3RlICpyZW1vdGUsIGludCBkZWVwZW4pCiB7CiAJc3RydWN0IHRyYW5zcG9ydCAqdHJhbnNwb3J0OworCiAJdHJhbnNwb3J0ID0gdHJhbnNwb3J0X2dldChyZW1vdGUsIE5VTEwpOwogCXRyYW5zcG9ydF9zZXRfdmVyYm9zaXR5KHRyYW5zcG9ydCwgdmVyYm9zaXR5LCBwcm9ncmVzcyk7CiAJdHJhbnNwb3J0LT5mYW1pbHkgPSBmYW1pbHk7CkBAIC0xMTkxLDggKzEyNzEsOSBAQAogCWlmICh1cGRhdGVfc2hhbGxvdykKIAkJc2V0X29wdGlvbih0cmFuc3BvcnQsIFRSQU5TX09QVF9VUERBVEVfU0hBTExPVywgInllcyIpOwogCWlmIChmaWx0ZXJfb3B0aW9ucy5jaG9pY2UpIHsKLQkJc2V0X29wdGlvbih0cmFuc3BvcnQsIFRSQU5TX09QVF9MSVNUX09CSkVDVFNfRklMVEVSLAotCQkJICAgZmlsdGVyX29wdGlvbnMuZmlsdGVyX3NwZWMpOworCQljb25zdCBjaGFyICpzcGVjID0KKwkJCWV4cGFuZF9saXN0X29iamVjdHNfZmlsdGVyX3NwZWMoJmZpbHRlcl9vcHRpb25zKTsKKwkJc2V0X29wdGlvbih0cmFuc3BvcnQsIFRSQU5TX09QVF9MSVNUX09CSkVDVFNfRklMVEVSLCBzcGVjKTsKIAkJc2V0X29wdGlvbih0cmFuc3BvcnQsIFRSQU5TX09QVF9GUk9NX1BST01JU09SLCAiMSIpOwogCX0KIAlpZiAobmVnb3RpYXRpb25fdGlwLm5yKSB7CkBAIC0xMjgzLDkgKzEzNjQsMTEgQEAKIAkJCWFyZ3ZfYXJyYXlfcHVzaCgmcmVmX3ByZWZpeGVzLCAicmVmcy90YWdzLyIpOwogCX0KIAotCWlmIChtdXN0X2xpc3RfcmVmcykKKwlpZiAobXVzdF9saXN0X3JlZnMpIHsKKwkJdHJhY2UyX3JlZ2lvbl9lbnRlcigiZmV0Y2giLCAicmVtb3RlX3JlZnMiLCB0aGVfcmVwb3NpdG9yeSk7CiAJCXJlbW90ZV9yZWZzID0gdHJhbnNwb3J0X2dldF9yZW1vdGVfcmVmcyh0cmFuc3BvcnQsICZyZWZfcHJlZml4ZXMpOwotCWVsc2UKKwkJdHJhY2UyX3JlZ2lvbl9sZWF2ZSgiZmV0Y2giLCAicmVtb3RlX3JlZnMiLCB0aGVfcmVwb3NpdG9yeSk7CisJfSBlbHNlCiAJCXJlbW90ZV9yZWZzID0gTlVMTDsKIAogCWFyZ3ZfYXJyYXlfY2xlYXIoJnJlZl9wcmVmaXhlcyk7CkBAIC0xMzE2LDYgKzEzOTksNTEgQEAKIAkJcmV0Y29kZSA9IDE7CiAJCWdvdG8gY2xlYW51cDsKIAl9CisKKwlpZiAoc2V0X3Vwc3RyZWFtKSB7CisJCXN0cnVjdCBicmFuY2ggKmJyYW5jaCA9IGJyYW5jaF9nZXQoIkhFQUQiKTsKKwkJc3RydWN0IHJlZiAqcm07CisJCXN0cnVjdCByZWYgKnNvdXJjZV9yZWYgPSBOVUxMOworCisJCS8qCisJCSAqIFdlJ3JlIHNldHRpbmcgdGhlIHVwc3RyZWFtIGNvbmZpZ3VyYXRpb24gZm9yIHRoZQorCQkgKiBjdXJyZW50IGJyYW5jaC4gVGhlIHJlbGV2YW50IHVwc3RyZWFtIGlzIHRoZQorCQkgKiBmZXRjaGVkIGJyYW5jaCB0aGF0IGlzIG1lYW50IHRvIGJlIG1lcmdlZCB3aXRoIHRoZQorCQkgKiBjdXJyZW50IG9uZSwgaS5lLiB0aGUgb25lIGZldGNoZWQgdG8gRkVUQ0hfSEVBRC4KKwkJICoKKwkJICogV2hlbiB0aGVyZSBhcmUgc2V2ZXJhbCBzdWNoIGJyYW5jaGVzLCBjb25zaWRlciB0aGUKKwkJICogcmVxdWVzdCBhbWJpZ3VvdXMgYW5kIGVyciBvbiB0aGUgc2FmZSBzaWRlIGJ5IGRvaW5nCisJCSAqIG5vdGhpbmcgYW5kIGp1c3QgZW1pdCBhIHdhcm5pbmcuCisJCSAqLworCQlmb3IgKHJtID0gcmVmX21hcDsgcm07IHJtID0gcm0tPm5leHQpIHsKKwkJCWlmICghcm0tPnBlZXJfcmVmKSB7CisJCQkJaWYgKHNvdXJjZV9yZWYpIHsKKwkJCQkJd2FybmluZyhfKCJtdWx0aXBsZSBicmFuY2hlcyBkZXRlY3RlZCwgaW5jb21wYXRpYmxlIHdpdGggLS1zZXQtdXBzdHJlYW0iKSk7CisJCQkJCWdvdG8gc2tpcDsKKwkJCQl9IGVsc2UgeworCQkJCQlzb3VyY2VfcmVmID0gcm07CisJCQkJfQorCQkJfQorCQl9CisJCWlmIChzb3VyY2VfcmVmKSB7CisJCQlpZiAoIXN0cmNtcChzb3VyY2VfcmVmLT5uYW1lLCAiSEVBRCIpIHx8CisJCQkgICAgc3RhcnRzX3dpdGgoc291cmNlX3JlZi0+bmFtZSwgInJlZnMvaGVhZHMvIikpCisJCQkJaW5zdGFsbF9icmFuY2hfY29uZmlnKDAsCisJCQkJCQkgICAgICBicmFuY2gtPm5hbWUsCisJCQkJCQkgICAgICB0cmFuc3BvcnQtPnJlbW90ZS0+bmFtZSwKKwkJCQkJCSAgICAgIHNvdXJjZV9yZWYtPm5hbWUpOworCQkJZWxzZSBpZiAoc3RhcnRzX3dpdGgoc291cmNlX3JlZi0+bmFtZSwgInJlZnMvcmVtb3Rlcy8iKSkKKwkJCQl3YXJuaW5nKF8oIm5vdCBzZXR0aW5nIHVwc3RyZWFtIGZvciBhIHJlbW90ZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIikpOworCQkJZWxzZSBpZiAoc3RhcnRzX3dpdGgoc291cmNlX3JlZi0+bmFtZSwgInJlZnMvdGFncy8iKSkKKwkJCQl3YXJuaW5nKF8oIm5vdCBzZXR0aW5nIHVwc3RyZWFtIGZvciBhIHJlbW90ZSB0YWciKSk7CisJCQllbHNlCisJCQkJd2FybmluZyhfKCJ1bmtub3duIGJyYW5jaCB0eXBlIikpOworCQl9IGVsc2UgeworCQkJd2FybmluZyhfKCJubyBzb3VyY2UgYnJhbmNoIGZvdW5kLlxuIgorCQkJCSJ5b3UgbmVlZCB0byBzcGVjaWZ5IGV4YWN0bHkgb25lIGJyYW5jaCB3aXRoIHRoZSAtLXNldC11cHN0cmVhbSBvcHRpb24uIikpOworCQl9CisJfQorIHNraXA6CiAJZnJlZV9yZWZzKHJlZl9tYXApOwogCiAJLyogaWYgbmVpdGhlciAtLW5vLXRhZ3Mgbm9yIC0tdGFncyB3YXMgc3BlY2lmaWVkLCBkbyBhdXRvbWF0ZWQgdGFnCkBAIC0xNDEyLDcgKzE1NDAsNjIgQEAKIAogfQogCi1zdGF0aWMgaW50IGZldGNoX211bHRpcGxlKHN0cnVjdCBzdHJpbmdfbGlzdCAqbGlzdCkKKy8qIEZldGNoIG11bHRpcGxlIHJlbW90ZXMgaW4gcGFyYWxsZWwgKi8KKworc3RydWN0IHBhcmFsbGVsX2ZldGNoX3N0YXRlIHsKKwljb25zdCBjaGFyICoqYXJndjsKKwlzdHJ1Y3Qgc3RyaW5nX2xpc3QgKnJlbW90ZXM7CisJaW50IG5leHQsIHJlc3VsdDsKK307CisKK3N0YXRpYyBpbnQgZmV0Y2hfbmV4dF9yZW1vdGUoc3RydWN0IGNoaWxkX3Byb2Nlc3MgKmNwLCBzdHJ1Y3Qgc3RyYnVmICpvdXQsCisJCQkgICAgIHZvaWQgKmNiLCB2b2lkICoqdGFza19jYikKK3sKKwlzdHJ1Y3QgcGFyYWxsZWxfZmV0Y2hfc3RhdGUgKnN0YXRlID0gY2I7CisJY2hhciAqcmVtb3RlOworCisJaWYgKHN0YXRlLT5uZXh0IDwgMCB8fCBzdGF0ZS0+bmV4dCA+PSBzdGF0ZS0+cmVtb3Rlcy0+bnIpCisJCXJldHVybiAwOworCisJcmVtb3RlID0gc3RhdGUtPnJlbW90ZXMtPml0ZW1zW3N0YXRlLT5uZXh0KytdLnN0cmluZzsKKwkqdGFza19jYiA9IHJlbW90ZTsKKworCWFyZ3ZfYXJyYXlfcHVzaHYoJmNwLT5hcmdzLCBzdGF0ZS0+YXJndik7CisJYXJndl9hcnJheV9wdXNoKCZjcC0+YXJncywgcmVtb3RlKTsKKwljcC0+Z2l0X2NtZCA9IDE7CisKKwlpZiAodmVyYm9zaXR5ID49IDApCisJCXByaW50ZihfKCJGZXRjaGluZyAlc1xuIiksIHJlbW90ZSk7CisKKwlyZXR1cm4gMTsKK30KKworc3RhdGljIGludCBmZXRjaF9mYWlsZWRfdG9fc3RhcnQoc3RydWN0IHN0cmJ1ZiAqb3V0LCB2b2lkICpjYiwgdm9pZCAqdGFza19jYikKK3sKKwlzdHJ1Y3QgcGFyYWxsZWxfZmV0Y2hfc3RhdGUgKnN0YXRlID0gY2I7CisJY29uc3QgY2hhciAqcmVtb3RlID0gdGFza19jYjsKKworCXN0YXRlLT5yZXN1bHQgPSBlcnJvcihfKCJDb3VsZCBub3QgZmV0Y2ggJXMiKSwgcmVtb3RlKTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGZldGNoX2ZpbmlzaGVkKGludCByZXN1bHQsIHN0cnVjdCBzdHJidWYgKm91dCwKKwkJCSAgdm9pZCAqY2IsIHZvaWQgKnRhc2tfY2IpCit7CisJc3RydWN0IHBhcmFsbGVsX2ZldGNoX3N0YXRlICpzdGF0ZSA9IGNiOworCWNvbnN0IGNoYXIgKnJlbW90ZSA9IHRhc2tfY2I7CisKKwlpZiAocmVzdWx0KSB7CisJCXN0cmJ1Zl9hZGRmKG91dCwgXygiY291bGQgbm90IGZldGNoICclcycgKGV4aXQgY29kZTogJWQpXG4iKSwKKwkJCSAgICByZW1vdGUsIHJlc3VsdCk7CisJCXN0YXRlLT5yZXN1bHQgPSAtMTsKKwl9CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBmZXRjaF9tdWx0aXBsZShzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmxpc3QsIGludCBtYXhfY2hpbGRyZW4pCiB7CiAJaW50IGksIHJlc3VsdCA9IDA7CiAJc3RydWN0IGFyZ3ZfYXJyYXkgYXJndiA9IEFSR1ZfQVJSQVlfSU5JVDsKQEAgLTE0MjMsMjMgKzE2MDYsMzggQEAKIAkJCXJldHVybiBlcnJjb2RlOwogCX0KIAotCWFyZ3ZfYXJyYXlfcHVzaGwoJmFyZ3YsICJmZXRjaCIsICItLWFwcGVuZCIsIE5VTEwpOworCWFyZ3ZfYXJyYXlfcHVzaGwoJmFyZ3YsICJmZXRjaCIsICItLWFwcGVuZCIsICItLW5vLWF1dG8tZ2MiLAorCQkJIi0tbm8td3JpdGUtY29tbWl0LWdyYXBoIiwgTlVMTCk7CiAJYWRkX29wdGlvbnNfdG9fYXJndigmYXJndik7CiAKLQlmb3IgKGkgPSAwOyBpIDwgbGlzdC0+bnI7IGkrKykgewotCQljb25zdCBjaGFyICpuYW1lID0gbGlzdC0+aXRlbXNbaV0uc3RyaW5nOwotCQlhcmd2X2FycmF5X3B1c2goJmFyZ3YsIG5hbWUpOwotCQlpZiAodmVyYm9zaXR5ID49IDApCi0JCQlwcmludGYoXygiRmV0Y2hpbmcgJXNcbiIpLCBuYW1lKTsKLQkJaWYgKHJ1bl9jb21tYW5kX3Zfb3B0KGFyZ3YuYXJndiwgUlVOX0dJVF9DTUQpKSB7Ci0JCQllcnJvcihfKCJDb3VsZCBub3QgZmV0Y2ggJXMiKSwgbmFtZSk7Ci0JCQlyZXN1bHQgPSAxOworCWlmIChtYXhfY2hpbGRyZW4gIT0gMSAmJiBsaXN0LT5uciAhPSAxKSB7CisJCXN0cnVjdCBwYXJhbGxlbF9mZXRjaF9zdGF0ZSBzdGF0ZSA9IHsgYXJndi5hcmd2LCBsaXN0LCAwLCAwIH07CisKKwkJYXJndl9hcnJheV9wdXNoKCZhcmd2LCAiLS1lbmQtb2Ytb3B0aW9ucyIpOworCQlyZXN1bHQgPSBydW5fcHJvY2Vzc2VzX3BhcmFsbGVsX3RyMihtYXhfY2hpbGRyZW4sCisJCQkJCQkgICAgJmZldGNoX25leHRfcmVtb3RlLAorCQkJCQkJICAgICZmZXRjaF9mYWlsZWRfdG9fc3RhcnQsCisJCQkJCQkgICAgJmZldGNoX2ZpbmlzaGVkLAorCQkJCQkJICAgICZzdGF0ZSwKKwkJCQkJCSAgICAiZmV0Y2giLCAicGFyYWxsZWwvZmV0Y2giKTsKKworCQlpZiAoIXJlc3VsdCkKKwkJCXJlc3VsdCA9IHN0YXRlLnJlc3VsdDsKKwl9IGVsc2UKKwkJZm9yIChpID0gMDsgaSA8IGxpc3QtPm5yOyBpKyspIHsKKwkJCWNvbnN0IGNoYXIgKm5hbWUgPSBsaXN0LT5pdGVtc1tpXS5zdHJpbmc7CisJCQlhcmd2X2FycmF5X3B1c2goJmFyZ3YsIG5hbWUpOworCQkJaWYgKHZlcmJvc2l0eSA+PSAwKQorCQkJCXByaW50ZihfKCJGZXRjaGluZyAlc1xuIiksIG5hbWUpOworCQkJaWYgKHJ1bl9jb21tYW5kX3Zfb3B0KGFyZ3YuYXJndiwgUlVOX0dJVF9DTUQpKSB7CisJCQkJZXJyb3IoXygiQ291bGQgbm90IGZldGNoICVzIiksIG5hbWUpOworCQkJCXJlc3VsdCA9IDE7CisJCQl9CisJCQlhcmd2X2FycmF5X3BvcCgmYXJndik7CiAJCX0KLQkJYXJndl9hcnJheV9wb3AoJmFyZ3YpOwotCX0KIAogCWFyZ3ZfYXJyYXlfY2xlYXIoJmFyZ3YpOwotCXJldHVybiByZXN1bHQ7CisJcmV0dXJuICEhcmVzdWx0OwogfQogCiAvKgpAQCAtMTQ1OSwzNiArMTY1NywyNyBAQAogCSAqIElmIG5vIHByaW9yIHBhcnRpYWwgY2xvbmUvZmV0Y2ggYW5kIHRoZSBjdXJyZW50IGZldGNoIERJRCBOT1QKIAkgKiByZXF1ZXN0IGEgcGFydGlhbC1mZXRjaCwgZG8gYSBub3JtYWwgZmV0Y2guCiAJICovCi0JaWYgKCFyZXBvc2l0b3J5X2Zvcm1hdF9wYXJ0aWFsX2Nsb25lICYmICFmaWx0ZXJfb3B0aW9ucy5jaG9pY2UpCisJaWYgKCFoYXNfcHJvbWlzb3JfcmVtb3RlKCkgJiYgIWZpbHRlcl9vcHRpb25zLmNob2ljZSkKIAkJcmV0dXJuOwogCiAJLyoKLQkgKiBJZiB0aGlzIGlzIHRoZSBGSVJTVCBwYXJ0aWFsLWZldGNoIHJlcXVlc3QsIHdlIGVuYWJsZSBwYXJ0aWFsCi0JICogb24gdGhpcyByZXBvIGFuZCByZW1lbWJlciB0aGUgZ2l2ZW4gZmlsdGVyLXNwZWMgYXMgdGhlIGRlZmF1bHQKLQkgKiBmb3Igc3Vic2VxdWVudCBmZXRjaGVzIHRvIHRoaXMgcmVtb3RlLgorCSAqIElmIHRoaXMgaXMgYSBwYXJ0aWFsLWZldGNoIHJlcXVlc3QsIHdlIGVuYWJsZSBwYXJ0aWFsIG9uCisJICogdGhpcyByZXBvIGlmIG5vdCBhbHJlYWR5IGVuYWJsZWQgYW5kIHJlbWVtYmVyIHRoZSBnaXZlbgorCSAqIGZpbHRlci1zcGVjIGFzIHRoZSBkZWZhdWx0IGZvciBzdWJzZXF1ZW50IGZldGNoZXMgdG8gdGhpcworCSAqIHJlbW90ZS4KIAkgKi8KLQlpZiAoIXJlcG9zaXRvcnlfZm9ybWF0X3BhcnRpYWxfY2xvbmUgJiYgZmlsdGVyX29wdGlvbnMuY2hvaWNlKSB7CisJaWYgKGZpbHRlcl9vcHRpb25zLmNob2ljZSkgewogCQlwYXJ0aWFsX2Nsb25lX3JlZ2lzdGVyKHJlbW90ZS0+bmFtZSwgJmZpbHRlcl9vcHRpb25zKTsKIAkJcmV0dXJuOwogCX0KIAogCS8qCi0JICogV2UgYXJlIGN1cnJlbnRseSBsaW1pdGVkIHRvIG9ubHkgT05FIHByb21pc29yIHJlbW90ZSBhbmQgb25seQotCSAqIGFsbG93IHBhcnRpYWwtZmV0Y2hlcyBmcm9tIHRoZSBwcm9taXNvciByZW1vdGUuCi0JICovCi0JaWYgKHN0cmNtcChyZW1vdGUtPm5hbWUsIHJlcG9zaXRvcnlfZm9ybWF0X3BhcnRpYWxfY2xvbmUpKSB7Ci0JCWlmIChmaWx0ZXJfb3B0aW9ucy5jaG9pY2UpCi0JCQlkaWUoXygiLS1maWx0ZXIgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIHRoZSByZW1vdGUgY29uZmlndXJlZCBpbiBjb3JlLnBhcnRpYWxDbG9uZSIpKTsKLQkJcmV0dXJuOwotCX0KLQotCS8qCiAJICogRG8gYSBwYXJ0aWFsLWZldGNoIGZyb20gdGhlIHByb21pc29yIHJlbW90ZSB1c2luZyBlaXRoZXIgdGhlCiAJICogZXhwbGljaXRseSBnaXZlbiBmaWx0ZXItc3BlYyBvciBpbmhlcml0IHRoZSBmaWx0ZXItc3BlYyBmcm9tCiAJICogdGhlIGNvbmZpZy4KIAkgKi8KIAlpZiAoIWZpbHRlcl9vcHRpb25zLmNob2ljZSkKLQkJcGFydGlhbF9jbG9uZV9nZXRfZGVmYXVsdF9maWx0ZXJfc3BlYygmZmlsdGVyX29wdGlvbnMpOworCQlwYXJ0aWFsX2Nsb25lX2dldF9kZWZhdWx0X2ZpbHRlcl9zcGVjKCZmaWx0ZXJfb3B0aW9ucywgcmVtb3RlLT5uYW1lKTsKIAlyZXR1cm47CiB9CiAKQEAgLTE1NTQsNyArMTc0Myw5IEBACiAKIAlzaWdjaGFpbl9wdXNoX2NvbW1vbih1bmxvY2tfcGFja19vbl9zaWduYWwpOwogCWF0ZXhpdCh1bmxvY2tfcGFjayk7CisJc2lnY2hhaW5fcHVzaChTSUdQSVBFLCBTSUdfSUdOKTsKIAlleGl0X2NvZGUgPSBkb19mZXRjaChndHJhbnNwb3J0LCAmcnMpOworCXNpZ2NoYWluX3BvcChTSUdQSVBFKTsKIAlyZWZzcGVjX2NsZWFyKCZycyk7CiAJdHJhbnNwb3J0X2Rpc2Nvbm5lY3QoZ3RyYW5zcG9ydCk7CiAJZ3RyYW5zcG9ydCA9IE5VTEw7CkBAIC0xNTcyLDE0ICsxNzYzLDEzIEBACiAKIAlwYWNrZXRfdHJhY2VfaWRlbnRpdHkoImZldGNoIik7CiAKLQlmZXRjaF9pZl9taXNzaW5nID0gMDsKLQogCS8qIFJlY29yZCB0aGUgY29tbWFuZCBsaW5lIGZvciB0aGUgcmVmbG9nICovCiAJc3RyYnVmX2FkZHN0cigmZGVmYXVsdF9ybGEsICJmZXRjaCIpOwogCWZvciAoaSA9IDE7IGkgPCBhcmdjOyBpKyspCiAJCXN0cmJ1Zl9hZGRmKCZkZWZhdWx0X3JsYSwgIiAlcyIsIGFyZ3ZbaV0pOwogCi0JZmV0Y2hfY29uZmlnX2Zyb21fZ2l0bW9kdWxlcygmbWF4X2NoaWxkcmVuLCAmcmVjdXJzZV9zdWJtb2R1bGVzKTsKKwlmZXRjaF9jb25maWdfZnJvbV9naXRtb2R1bGVzKCZzdWJtb2R1bGVfZmV0Y2hfam9ic19jb25maWcsCisJCQkJICAgICAmcmVjdXJzZV9zdWJtb2R1bGVzKTsKIAlnaXRfY29uZmlnKGdpdF9mZXRjaF9jb25maWcsIE5VTEwpOwogCiAJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LApAQCAtMTYwNyw3ICsxNzk3LDcgQEAKIAlpZiAoZGVwdGggfHwgZGVlcGVuX3NpbmNlIHx8IGRlZXBlbl9ub3QubnIpCiAJCWRlZXBlbiA9IDE7CiAKLQlpZiAoZmlsdGVyX29wdGlvbnMuY2hvaWNlICYmICFyZXBvc2l0b3J5X2Zvcm1hdF9wYXJ0aWFsX2Nsb25lKQorCWlmIChmaWx0ZXJfb3B0aW9ucy5jaG9pY2UgJiYgIWhhc19wcm9taXNvcl9yZW1vdGUoKSkKIAkJZGllKCItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdoZW4gZXh0ZW5zaW9ucy5wYXJ0aWFsQ2xvbmUgaXMgc2V0Iik7CiAKIAlpZiAoYWxsKSB7CkBAIC0xNjQxLDE4ICsxODMxLDMxIEBACiAJfQogCiAJaWYgKHJlbW90ZSkgewotCQlpZiAoZmlsdGVyX29wdGlvbnMuY2hvaWNlIHx8IHJlcG9zaXRvcnlfZm9ybWF0X3BhcnRpYWxfY2xvbmUpCisJCWlmIChmaWx0ZXJfb3B0aW9ucy5jaG9pY2UgfHwgaGFzX3Byb21pc29yX3JlbW90ZSgpKQogCQkJZmV0Y2hfb25lX3NldHVwX3BhcnRpYWwocmVtb3RlKTsKIAkJcmVzdWx0ID0gZmV0Y2hfb25lKHJlbW90ZSwgYXJnYywgYXJndiwgcHJ1bmVfdGFnc19vayk7CiAJfSBlbHNlIHsKKwkJaW50IG1heF9jaGlsZHJlbiA9IG1heF9qb2JzOworCiAJCWlmIChmaWx0ZXJfb3B0aW9ucy5jaG9pY2UpCi0JCQlkaWUoXygiLS1maWx0ZXIgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIHRoZSByZW1vdGUgY29uZmlndXJlZCBpbiBjb3JlLnBhcnRpYWxDbG9uZSIpKTsKKwkJCWRpZShfKCItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdpdGggdGhlIHJlbW90ZSAiCisJCQkgICAgICAiY29uZmlndXJlZCBpbiBleHRlbnNpb25zLnBhcnRpYWxjbG9uZSIpKTsKKworCQlpZiAobWF4X2NoaWxkcmVuIDwgMCkKKwkJCW1heF9jaGlsZHJlbiA9IGZldGNoX3BhcmFsbGVsX2NvbmZpZzsKKwogCQkvKiBUT0RPIHNob3VsZCB0aGlzIGFsc28gZGllIGlmIHdlIGhhdmUgYSBwcmV2aW91cyBwYXJ0aWFsLWNsb25lPyAqLwotCQlyZXN1bHQgPSBmZXRjaF9tdWx0aXBsZSgmbGlzdCk7CisJCXJlc3VsdCA9IGZldGNoX211bHRpcGxlKCZsaXN0LCBtYXhfY2hpbGRyZW4pOwogCX0KIAogCWlmICghcmVzdWx0ICYmIChyZWN1cnNlX3N1Ym1vZHVsZXMgIT0gUkVDVVJTRV9TVUJNT0RVTEVTX09GRikpIHsKIAkJc3RydWN0IGFyZ3ZfYXJyYXkgb3B0aW9ucyA9IEFSR1ZfQVJSQVlfSU5JVDsKKwkJaW50IG1heF9jaGlsZHJlbiA9IG1heF9qb2JzOworCisJCWlmIChtYXhfY2hpbGRyZW4gPCAwKQorCQkJbWF4X2NoaWxkcmVuID0gc3VibW9kdWxlX2ZldGNoX2pvYnNfY29uZmlnOworCQlpZiAobWF4X2NoaWxkcmVuIDwgMCkKKwkJCW1heF9jaGlsZHJlbiA9IGZldGNoX3BhcmFsbGVsX2NvbmZpZzsKIAogCQlhZGRfb3B0aW9uc190b19hcmd2KCZvcHRpb25zKTsKIAkJcmVzdWx0ID0gZmV0Y2hfcG9wdWxhdGVkX3N1Ym1vZHVsZXModGhlX3JlcG9zaXRvcnksCkBAIC0xNjY3LDEzICsxODcwLDI5IEBACiAKIAlzdHJpbmdfbGlzdF9jbGVhcigmbGlzdCwgMCk7CiAKLQljbG9zZV9hbGxfcGFja3ModGhlX3JlcG9zaXRvcnktPm9iamVjdHMpOworCXByZXBhcmVfcmVwb19zZXR0aW5ncyh0aGVfcmVwb3NpdG9yeSk7CisJaWYgKGZldGNoX3dyaXRlX2NvbW1pdF9ncmFwaCA+IDAgfHwKKwkgICAgKGZldGNoX3dyaXRlX2NvbW1pdF9ncmFwaCA8IDAgJiYKKwkgICAgIHRoZV9yZXBvc2l0b3J5LT5zZXR0aW5ncy5mZXRjaF93cml0ZV9jb21taXRfZ3JhcGgpKSB7CisJCWludCBjb21taXRfZ3JhcGhfZmxhZ3MgPSBDT01NSVRfR1JBUEhfV1JJVEVfU1BMSVQ7CiAKLQlhcmd2X2FycmF5X3B1c2hsKCZhcmd2X2djX2F1dG8sICJnYyIsICItLWF1dG8iLCBOVUxMKTsKLQlpZiAodmVyYm9zaXR5IDwgMCkKLQkJYXJndl9hcnJheV9wdXNoKCZhcmd2X2djX2F1dG8sICItLXF1aWV0Iik7Ci0JcnVuX2NvbW1hbmRfdl9vcHQoYXJndl9nY19hdXRvLmFyZ3YsIFJVTl9HSVRfQ01EKTsKLQlhcmd2X2FycmF5X2NsZWFyKCZhcmd2X2djX2F1dG8pOworCQlpZiAocHJvZ3Jlc3MpCisJCQljb21taXRfZ3JhcGhfZmxhZ3MgfD0gQ09NTUlUX0dSQVBIX1dSSVRFX1BST0dSRVNTOworCisJCXdyaXRlX2NvbW1pdF9ncmFwaF9yZWFjaGFibGUodGhlX3JlcG9zaXRvcnktPm9iamVjdHMtPm9kYiwKKwkJCQkJICAgICBjb21taXRfZ3JhcGhfZmxhZ3MsCisJCQkJCSAgICAgTlVMTCk7CisJfQorCisJY2xvc2Vfb2JqZWN0X3N0b3JlKHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzKTsKKworCWlmIChlbmFibGVfYXV0b19nYykgeworCQlhcmd2X2FycmF5X3B1c2hsKCZhcmd2X2djX2F1dG8sICJnYyIsICItLWF1dG8iLCBOVUxMKTsKKwkJaWYgKHZlcmJvc2l0eSA8IDApCisJCQlhcmd2X2FycmF5X3B1c2goJmFyZ3ZfZ2NfYXV0bywgIi0tcXVpZXQiKTsKKwkJcnVuX2NvbW1hbmRfdl9vcHQoYXJndl9nY19hdXRvLmFyZ3YsIFJVTl9HSVRfQ01EKTsKKwkJYXJndl9hcnJheV9jbGVhcigmYXJndl9nY19hdXRvKTsKKwl9CiAKIAlyZXR1cm4gcmVzdWx0OwogfQpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmMgYi9idWlsdGluL2ZtdC1tZXJnZS1tc2cuYwppbmRleCBhNDYxNTU4Li43MzZmNjY2IDEwMDY0NAotLS0gYS9idWlsdGluL2ZtdC1tZXJnZS1tc2cuYworKysgYi9idWlsdGluL2ZtdC1tZXJnZS1tc2cuYwpAQCAtMTA2LDcgKzEwNiw3IEBACiAJaW50IGksIGxlbiA9IHN0cmxlbihsaW5lKTsKIAlzdHJ1Y3Qgb3JpZ2luX2RhdGEgKm9yaWdpbl9kYXRhOwogCWNoYXIgKnNyYzsKLQljb25zdCBjaGFyICpvcmlnaW47CisJY29uc3QgY2hhciAqb3JpZ2luLCAqdGFnX25hbWU7CiAJc3RydWN0IHNyY19kYXRhICpzcmNfZGF0YTsKIAlzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqaXRlbTsKIAlpbnQgcHVsbGluZ19oZWFkID0gMDsKQEAgLTE2MiwxNCArMTYyLDEzIEBACiAJaWYgKHB1bGxpbmdfaGVhZCkgewogCQlvcmlnaW4gPSBzcmM7CiAJCXNyY19kYXRhLT5oZWFkX3N0YXR1cyB8PSAxOwotCX0gZWxzZSBpZiAoc3RhcnRzX3dpdGgobGluZSwgImJyYW5jaCAiKSkgeworCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgobGluZSwgImJyYW5jaCAiLCAmb3JpZ2luKSkgewogCQlvcmlnaW5fZGF0YS0+aXNfbG9jYWxfYnJhbmNoID0gMTsKLQkJb3JpZ2luID0gbGluZSArIDc7CiAJCXN0cmluZ19saXN0X2FwcGVuZCgmc3JjX2RhdGEtPmJyYW5jaCwgb3JpZ2luKTsKIAkJc3JjX2RhdGEtPmhlYWRfc3RhdHVzIHw9IDI7Ci0JfSBlbHNlIGlmIChzdGFydHNfd2l0aChsaW5lLCAidGFnICIpKSB7CisJfSBlbHNlIGlmIChza2lwX3ByZWZpeChsaW5lLCAidGFnICIsICZ0YWdfbmFtZSkpIHsKIAkJb3JpZ2luID0gbGluZTsKLQkJc3RyaW5nX2xpc3RfYXBwZW5kKCZzcmNfZGF0YS0+dGFnLCBvcmlnaW4gKyA0KTsKKwkJc3RyaW5nX2xpc3RfYXBwZW5kKCZzcmNfZGF0YS0+dGFnLCB0YWdfbmFtZSk7CiAJCXNyY19kYXRhLT5oZWFkX3N0YXR1cyB8PSAyOwogCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgobGluZSwgInJlbW90ZS10cmFja2luZyBicmFuY2ggIiwgJm9yaWdpbikpIHsKIAkJc3RyaW5nX2xpc3RfYXBwZW5kKCZzcmNfZGF0YS0+cl9icmFuY2gsIG9yaWdpbik7CmRpZmYgLS1naXQgYS9idWlsdGluL2Zvci1lYWNoLXJlZi5jIGIvYnVpbHRpbi9mb3ItZWFjaC1yZWYuYwppbmRleCBlOTMxYmU5Li40NjUxNTNlIDEwMDY0NAotLS0gYS9idWlsdGluL2Zvci1lYWNoLXJlZi5jCisrKyBiL2J1aWx0aW4vZm9yLWVhY2gtcmVmLmMKQEAgLTM3LDggKzM3LDcgQEAKIAkJT1BUX0lOVEVHRVIoIDAgLCAiY291bnQiLCAmbWF4Y291bnQsIE5fKCJzaG93IG9ubHkgPG4+IG1hdGNoZWQgcmVmcyIpKSwKIAkJT1BUX1NUUklORyggIDAgLCAiZm9ybWF0IiwgJmZvcm1hdC5mb3JtYXQsIE5fKCJmb3JtYXQiKSwgTl8oImZvcm1hdCB0byB1c2UgZm9yIHRoZSBvdXRwdXQiKSksCiAJCU9QVF9fQ09MT1IoJmZvcm1hdC51c2VfY29sb3IsIE5fKCJyZXNwZWN0IGZvcm1hdCBjb2xvcnMiKSksCi0JCU9QVF9DQUxMQkFDSygwICwgInNvcnQiLCBzb3J0aW5nX3RhaWwsIE5fKCJrZXkiKSwKLQkJCSAgICBOXygiZmllbGQgbmFtZSB0byBzb3J0IG9uIiksICZwYXJzZV9vcHRfcmVmX3NvcnRpbmcpLAorCQlPUFRfUkVGX1NPUlQoc29ydGluZ190YWlsKSwKIAkJT1BUX0NBTExCQUNLKDAsICJwb2ludHMtYXQiLCAmZmlsdGVyLnBvaW50c19hdCwKIAkJCSAgICAgTl8oIm9iamVjdCIpLCBOXygicHJpbnQgb25seSByZWZzIHdoaWNoIHBvaW50cyBhdCB0aGUgZ2l2ZW4gb2JqZWN0IiksCiAJCQkgICAgIHBhcnNlX29wdF9vYmplY3RfbmFtZSksCmRpZmYgLS1naXQgYS9idWlsdGluL2ZzY2suYyBiL2J1aWx0aW4vZnNjay5jCmluZGV4IDNjM2UwZjAuLjhkMTM3OTQgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vZnNjay5jCisrKyBiL2J1aWx0aW4vZnNjay5jCkBAIC0xLDMgKzEsNCBAQAorI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiYnVpbHRpbi5oIgogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAicmVwb3NpdG9yeS5oIgpAQCAtNDksMzQgKzUwLDIyIEBACiAjZGVmaW5lIEVSUk9SX1JFRlMgMDEwCiAjZGVmaW5lIEVSUk9SX0NPTU1JVF9HUkFQSCAwMjAKIAotc3RhdGljIGNvbnN0IGNoYXIgKmRlc2NyaWJlX29iamVjdChzdHJ1Y3Qgb2JqZWN0ICpvYmopCitzdGF0aWMgY29uc3QgY2hhciAqZGVzY3JpYmVfb2JqZWN0KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKLQlzdGF0aWMgc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKLQljaGFyICpuYW1lID0gbmFtZV9vYmplY3RzID8KLQkJbG9va3VwX2RlY29yYXRpb24oZnNja193YWxrX29wdGlvbnMub2JqZWN0X25hbWVzLCBvYmopIDogTlVMTDsKLQotCXN0cmJ1Zl9yZXNldCgmYnVmKTsKLQlzdHJidWZfYWRkc3RyKCZidWYsIG9pZF90b19oZXgoJm9iai0+b2lkKSk7Ci0JaWYgKG5hbWUpCi0JCXN0cmJ1Zl9hZGRmKCZidWYsICIgKCVzKSIsIG5hbWUpOwotCi0JcmV0dXJuIGJ1Zi5idWY7CisJcmV0dXJuIGZzY2tfZGVzY3JpYmVfb2JqZWN0KCZmc2NrX3dhbGtfb3B0aW9ucywgb2lkKTsKIH0KIAotc3RhdGljIGNvbnN0IGNoYXIgKnByaW50YWJsZV90eXBlKHN0cnVjdCBvYmplY3QgKm9iaikKK3N0YXRpYyBjb25zdCBjaGFyICpwcmludGFibGVfdHlwZShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkJICBlbnVtIG9iamVjdF90eXBlIHR5cGUpCiB7CiAJY29uc3QgY2hhciAqcmV0OwogCi0JaWYgKG9iai0+dHlwZSA9PSBPQkpfTk9ORSkgewotCQllbnVtIG9iamVjdF90eXBlIHR5cGUgPSBvaWRfb2JqZWN0X2luZm8odGhlX3JlcG9zaXRvcnksCi0JCQkJCQkJJm9iai0+b2lkLCBOVUxMKTsKLQkJaWYgKHR5cGUgPiAwKQotCQkJb2JqZWN0X2FzX3R5cGUodGhlX3JlcG9zaXRvcnksIG9iaiwgdHlwZSwgMCk7Ci0JfQorCWlmICh0eXBlID09IE9CSl9OT05FKQorCQl0eXBlID0gb2lkX29iamVjdF9pbmZvKHRoZV9yZXBvc2l0b3J5LCBvaWQsIE5VTEwpOwogCi0JcmV0ID0gdHlwZV9uYW1lKG9iai0+dHlwZSk7CisJcmV0ID0gdHlwZV9uYW1lKHR5cGUpOwogCWlmICghcmV0KQotCQlyZXQgPSAidW5rbm93biI7CisJCXJldCA9IF8oInVua25vd24iKTsKIAogCXJldHVybiByZXQ7CiB9CkBAIC0xMDQsMjUgKzkzLDM4IEBACiAJcmV0dXJuIGdpdF9kZWZhdWx0X2NvbmZpZyh2YXIsIHZhbHVlLCBjYik7CiB9CiAKLXN0YXRpYyB2b2lkIG9ianJlcG9ydChzdHJ1Y3Qgb2JqZWN0ICpvYmosIGNvbnN0IGNoYXIgKm1zZ190eXBlLAotCQkJY29uc3QgY2hhciAqZXJyKQotewotCWZwcmludGYoc3RkZXJyLCAiJXMgaW4gJXMgJXM6ICVzXG4iLAotCQltc2dfdHlwZSwgcHJpbnRhYmxlX3R5cGUob2JqKSwgZGVzY3JpYmVfb2JqZWN0KG9iaiksIGVycik7Ci19Ci0KIHN0YXRpYyBpbnQgb2JqZXJyb3Ioc3RydWN0IG9iamVjdCAqb2JqLCBjb25zdCBjaGFyICplcnIpCiB7CiAJZXJyb3JzX2ZvdW5kIHw9IEVSUk9SX09CSkVDVDsKLQlvYmpyZXBvcnQob2JqLCAiZXJyb3IiLCBlcnIpOworCS8qIFRSQU5TTEFUT1JTOiBlLmcuIGVycm9yIGluIHRyZWUgMDFiZmRhOiA8bW9yZSBleHBsYW5hdGlvbj4gKi8KKwlmcHJpbnRmX2xuKHN0ZGVyciwgXygiZXJyb3IgaW4gJXMgJXM6ICVzIiksCisJCSAgIHByaW50YWJsZV90eXBlKCZvYmotPm9pZCwgb2JqLT50eXBlKSwKKwkJICAgZGVzY3JpYmVfb2JqZWN0KCZvYmotPm9pZCksIGVycik7CiAJcmV0dXJuIC0xOwogfQogCiBzdGF0aWMgaW50IGZzY2tfZXJyb3JfZnVuYyhzdHJ1Y3QgZnNja19vcHRpb25zICpvLAotCXN0cnVjdCBvYmplY3QgKm9iaiwgaW50IHR5cGUsIGNvbnN0IGNoYXIgKm1lc3NhZ2UpCisJCQkgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkgICBlbnVtIG9iamVjdF90eXBlIG9iamVjdF90eXBlLAorCQkJICAgaW50IG1zZ190eXBlLCBjb25zdCBjaGFyICptZXNzYWdlKQogewotCW9ianJlcG9ydChvYmosICh0eXBlID09IEZTQ0tfV0FSTikgPyAid2FybmluZyIgOiAiZXJyb3IiLCBtZXNzYWdlKTsKLQlyZXR1cm4gKHR5cGUgPT0gRlNDS19XQVJOKSA/IDAgOiAxOworCXN3aXRjaCAobXNnX3R5cGUpIHsKKwljYXNlIEZTQ0tfV0FSTjoKKwkJLyogVFJBTlNMQVRPUlM6IGUuZy4gd2FybmluZyBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+ICovCisJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJ3YXJuaW5nIGluICVzICVzOiAlcyIpLAorCQkJICAgcHJpbnRhYmxlX3R5cGUob2lkLCBvYmplY3RfdHlwZSksCisJCQkgICBkZXNjcmliZV9vYmplY3Qob2lkKSwgbWVzc2FnZSk7CisJCXJldHVybiAwOworCWNhc2UgRlNDS19FUlJPUjoKKwkJLyogVFJBTlNMQVRPUlM6IGUuZy4gZXJyb3IgaW4gdHJlZSAwMWJmZGE6IDxtb3JlIGV4cGxhbmF0aW9uPiAqLworCQlmcHJpbnRmX2xuKHN0ZGVyciwgXygiZXJyb3IgaW4gJXMgJXM6ICVzIiksCisJCQkgICBwcmludGFibGVfdHlwZShvaWQsIG9iamVjdF90eXBlKSwKKwkJCSAgIGRlc2NyaWJlX29iamVjdChvaWQpLCBtZXNzYWdlKTsKKwkJcmV0dXJuIDE7CisJZGVmYXVsdDoKKwkJQlVHKCIlZCAoRlNDS19JR05PUkU/KSBzaG91bGQgbmV2ZXIgdHJpZ2dlciB0aGlzIGNhbGxiYWNrIiwKKwkJICAgIG1zZ190eXBlKTsKKwl9CiB9CiAKIHN0YXRpYyBzdHJ1Y3Qgb2JqZWN0X2FycmF5IHBlbmRpbmc7CkBAIC0xMzgsMTcgKzE0MCwxOSBAQAogCSAqLwogCWlmICghb2JqKSB7CiAJCS8qIC4uLiB0aGVzZSByZWZlcmVuY2VzIHRvIHBhcmVudC0+ZmxkIGFyZSBzYWZlIGhlcmUgKi8KLQkJcHJpbnRmKCJicm9rZW4gbGluayBmcm9tICU3cyAlc1xuIiwKLQkJCSAgIHByaW50YWJsZV90eXBlKHBhcmVudCksIGRlc2NyaWJlX29iamVjdChwYXJlbnQpKTsKLQkJcHJpbnRmKCJicm9rZW4gbGluayBmcm9tICU3cyAlc1xuIiwKLQkJCSAgICh0eXBlID09IE9CSl9BTlkgPyAidW5rbm93biIgOiB0eXBlX25hbWUodHlwZSkpLCAidW5rbm93biIpOworCQlwcmludGZfbG4oXygiYnJva2VuIGxpbmsgZnJvbSAlN3MgJXMiKSwKKwkJCSAgcHJpbnRhYmxlX3R5cGUoJnBhcmVudC0+b2lkLCBwYXJlbnQtPnR5cGUpLAorCQkJICBkZXNjcmliZV9vYmplY3QoJnBhcmVudC0+b2lkKSk7CisJCXByaW50Zl9sbihfKCJicm9rZW4gbGluayBmcm9tICU3cyAlcyIpLAorCQkJICAodHlwZSA9PSBPQkpfQU5ZID8gXygidW5rbm93biIpIDogdHlwZV9uYW1lKHR5cGUpKSwKKwkJCSAgXygidW5rbm93biIpKTsKIAkJZXJyb3JzX2ZvdW5kIHw9IEVSUk9SX1JFQUNIQUJMRTsKIAkJcmV0dXJuIDE7CiAJfQogCiAJaWYgKHR5cGUgIT0gT0JKX0FOWSAmJiBvYmotPnR5cGUgIT0gdHlwZSkKIAkJLyogLi4uIGFuZCB0aGUgcmVmZXJlbmNlIHRvIHBhcmVudCBpcyBzYWZlIGhlcmUgKi8KLQkJb2JqZXJyb3IocGFyZW50LCAid3Jvbmcgb2JqZWN0IHR5cGUgaW4gbGluayIpOworCQlvYmplcnJvcihwYXJlbnQsIF8oIndyb25nIG9iamVjdCB0eXBlIGluIGxpbmsiKSk7CiAKIAlpZiAob2JqLT5mbGFncyAmIFJFQUNIQUJMRSkKIAkJcmV0dXJuIDA7CkBAIC0xNjQsMTAgKzE2OCwxMiBAQAogCiAJaWYgKCEob2JqLT5mbGFncyAmIEhBU19PQkopKSB7CiAJCWlmIChwYXJlbnQgJiYgIWhhc19vYmplY3RfZmlsZSgmb2JqLT5vaWQpKSB7Ci0JCQlwcmludGYoImJyb2tlbiBsaW5rIGZyb20gJTdzICVzXG4iLAotCQkJCSBwcmludGFibGVfdHlwZShwYXJlbnQpLCBkZXNjcmliZV9vYmplY3QocGFyZW50KSk7Ci0JCQlwcmludGYoIiAgICAgICAgICAgICAgdG8gJTdzICVzXG4iLAotCQkJCSBwcmludGFibGVfdHlwZShvYmopLCBkZXNjcmliZV9vYmplY3Qob2JqKSk7CisJCQlwcmludGZfbG4oXygiYnJva2VuIGxpbmsgZnJvbSAlN3MgJXNcbiIKKwkJCQkgICAgIiAgICAgICAgICAgICAgdG8gJTdzICVzIiksCisJCQkJICBwcmludGFibGVfdHlwZSgmcGFyZW50LT5vaWQsIHBhcmVudC0+dHlwZSksCisJCQkJICBkZXNjcmliZV9vYmplY3QoJnBhcmVudC0+b2lkKSwKKwkJCQkgIHByaW50YWJsZV90eXBlKCZvYmotPm9pZCwgb2JqLT50eXBlKSwKKwkJCQkgIGRlc2NyaWJlX29iamVjdCgmb2JqLT5vaWQpKTsKIAkJCWVycm9yc19mb3VuZCB8PSBFUlJPUl9SRUFDSEFCTEU7CiAJCX0KIAkJcmV0dXJuIDE7CkBAIC0yMTYsNiArMjIyLDQ4IEBACiAJcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyB2b2lkIG1hcmtfdW5yZWFjaGFibGVfcmVmZXJlbnRzKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKK3sKKwlzdHJ1Y3QgZnNja19vcHRpb25zIG9wdGlvbnMgPSBGU0NLX09QVElPTlNfREVGQVVMVDsKKwlzdHJ1Y3Qgb2JqZWN0ICpvYmogPSBsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBvaWQpOworCisJaWYgKCFvYmogfHwgIShvYmotPmZsYWdzICYgSEFTX09CSikpCisJCXJldHVybjsgLyogbm90IHBhcnQgb2Ygb3VyIG9yaWdpbmFsIHNldCAqLworCWlmIChvYmotPmZsYWdzICYgUkVBQ0hBQkxFKQorCQlyZXR1cm47IC8qIHJlYWNoYWJsZSBvYmplY3RzIGFscmVhZHkgdHJhdmVyc2VkICovCisKKwkvKgorCSAqIEF2b2lkIHBhc3NpbmcgT0JKX05PTkUgdG8gZnNja193YWxrLCB3aGljaCB3aWxsIHBhcnNlIHRoZSBvYmplY3QKKwkgKiAoYW5kIHdlIHdhbnQgdG8gYXZvaWQgcGFyc2luZyBibG9icykuCisJICovCisJaWYgKG9iai0+dHlwZSA9PSBPQkpfTk9ORSkgeworCQllbnVtIG9iamVjdF90eXBlIHR5cGUgPSBvaWRfb2JqZWN0X2luZm8odGhlX3JlcG9zaXRvcnksCisJCQkJCQkJJm9iai0+b2lkLCBOVUxMKTsKKwkJaWYgKHR5cGUgPiAwKQorCQkJb2JqZWN0X2FzX3R5cGUodGhlX3JlcG9zaXRvcnksIG9iaiwgdHlwZSwgMCk7CisJfQorCisJb3B0aW9ucy53YWxrID0gbWFya191c2VkOworCWZzY2tfd2FsayhvYmosIE5VTEwsICZvcHRpb25zKTsKK30KKworc3RhdGljIGludCBtYXJrX2xvb3NlX3VucmVhY2hhYmxlX3JlZmVyZW50cyhjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkJCSAgICBjb25zdCBjaGFyICpwYXRoLAorCQkJCQkgICAgdm9pZCAqZGF0YSkKK3sKKwltYXJrX3VucmVhY2hhYmxlX3JlZmVyZW50cyhvaWQpOworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IG1hcmtfcGFja2VkX3VucmVhY2hhYmxlX3JlZmVyZW50cyhjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkJCSAgICAgc3RydWN0IHBhY2tlZF9naXQgKnBhY2ssCisJCQkJCSAgICAgdWludDMyX3QgcG9zLAorCQkJCQkgICAgIHZvaWQgKmRhdGEpCit7CisJbWFya191bnJlYWNoYWJsZV9yZWZlcmVudHMob2lkKTsKKwlyZXR1cm4gMDsKK30KKwogLyoKICAqIENoZWNrIGEgc2luZ2xlIHJlYWNoYWJsZSBvYmplY3QKICAqLwpAQCAtMjMxLDggKzI3OSw5IEBACiAJCQlyZXR1cm47CiAJCWlmIChoYXNfb2JqZWN0X3BhY2soJm9iai0+b2lkKSkKIAkJCXJldHVybjsgLyogaXQgaXMgaW4gcGFjayAtIGZvcmdldCBhYm91dCBpdCAqLwotCQlwcmludGYoIm1pc3NpbmcgJXMgJXNcbiIsIHByaW50YWJsZV90eXBlKG9iaiksCi0JCQlkZXNjcmliZV9vYmplY3Qob2JqKSk7CisJCXByaW50Zl9sbihfKCJtaXNzaW5nICVzICVzIiksCisJCQkgIHByaW50YWJsZV90eXBlKCZvYmotPm9pZCwgb2JqLT50eXBlKSwKKwkJCSAgZGVzY3JpYmVfb2JqZWN0KCZvYmotPm9pZCkpOwogCQllcnJvcnNfZm91bmQgfD0gRVJST1JfUkVBQ0hBQkxFOwogCQlyZXR1cm47CiAJfQpAQCAtMjU3LDggKzMwNiw5IEBACiAJICogc2luY2UgdGhpcyBpcyBzb21ldGhpbmcgdGhhdCBpcyBwcnVuYWJsZS4KIAkgKi8KIAlpZiAoc2hvd191bnJlYWNoYWJsZSkgewotCQlwcmludGYoInVucmVhY2hhYmxlICVzICVzXG4iLCBwcmludGFibGVfdHlwZShvYmopLAotCQkJZGVzY3JpYmVfb2JqZWN0KG9iaikpOworCQlwcmludGZfbG4oXygidW5yZWFjaGFibGUgJXMgJXMiKSwKKwkJCSAgcHJpbnRhYmxlX3R5cGUoJm9iai0+b2lkLCBvYmotPnR5cGUpLAorCQkJICBkZXNjcmliZV9vYmplY3QoJm9iai0+b2lkKSk7CiAJCXJldHVybjsKIAl9CiAKQEAgLTI3NiwyNyArMzI2LDI4IEBACiAJICovCiAJaWYgKCEob2JqLT5mbGFncyAmIFVTRUQpKSB7CiAJCWlmIChzaG93X2RhbmdsaW5nKQotCQkJcHJpbnRmKCJkYW5nbGluZyAlcyAlc1xuIiwgcHJpbnRhYmxlX3R5cGUob2JqKSwKLQkJCSAgICAgICBkZXNjcmliZV9vYmplY3Qob2JqKSk7CisJCQlwcmludGZfbG4oXygiZGFuZ2xpbmcgJXMgJXMiKSwKKwkJCQkgIHByaW50YWJsZV90eXBlKCZvYmotPm9pZCwgb2JqLT50eXBlKSwKKwkJCQkgIGRlc2NyaWJlX29iamVjdCgmb2JqLT5vaWQpKTsKIAkJaWYgKHdyaXRlX2xvc3RfYW5kX2ZvdW5kKSB7CiAJCQljaGFyICpmaWxlbmFtZSA9IGdpdF9wYXRoZHVwKCJsb3N0LWZvdW5kLyVzLyVzIiwKIAkJCQlvYmotPnR5cGUgPT0gT0JKX0NPTU1JVCA/ICJjb21taXQiIDogIm90aGVyIiwKLQkJCQlkZXNjcmliZV9vYmplY3Qob2JqKSk7CisJCQkJZGVzY3JpYmVfb2JqZWN0KCZvYmotPm9pZCkpOwogCQkJRklMRSAqZjsKIAogCQkJaWYgKHNhZmVfY3JlYXRlX2xlYWRpbmdfZGlyZWN0b3JpZXNfY29uc3QoZmlsZW5hbWUpKSB7Ci0JCQkJZXJyb3IoIkNvdWxkIG5vdCBjcmVhdGUgbG9zdC1mb3VuZCIpOworCQkJCWVycm9yKF8oImNvdWxkIG5vdCBjcmVhdGUgbG9zdC1mb3VuZCIpKTsKIAkJCQlmcmVlKGZpbGVuYW1lKTsKIAkJCQlyZXR1cm47CiAJCQl9CiAJCQlmID0geGZvcGVuKGZpbGVuYW1lLCAidyIpOwogCQkJaWYgKG9iai0+dHlwZSA9PSBPQkpfQkxPQikgewogCQkJCWlmIChzdHJlYW1fYmxvYl90b19mZChmaWxlbm8oZiksICZvYmotPm9pZCwgTlVMTCwgMSkpCi0JCQkJCWRpZV9lcnJubygiQ291bGQgbm90IHdyaXRlICclcyciLCBmaWxlbmFtZSk7CisJCQkJCWRpZV9lcnJubyhfKCJjb3VsZCBub3Qgd3JpdGUgJyVzJyIpLCBmaWxlbmFtZSk7CiAJCQl9IGVsc2UKLQkJCQlmcHJpbnRmKGYsICIlc1xuIiwgZGVzY3JpYmVfb2JqZWN0KG9iaikpOworCQkJCWZwcmludGYoZiwgIiVzXG4iLCBkZXNjcmliZV9vYmplY3QoJm9iai0+b2lkKSk7CiAJCQlpZiAoZmNsb3NlKGYpKQotCQkJCWRpZV9lcnJubygiQ291bGQgbm90IGZpbmlzaCAnJXMnIiwKKwkJCQlkaWVfZXJybm8oXygiY291bGQgbm90IGZpbmlzaCAnJXMnIiksCiAJCQkJCSAgZmlsZW5hbWUpOwogCQkJZnJlZShmaWxlbmFtZSk7CiAJCX0KQEAgLTMxMyw3ICszNjQsNyBAQAogc3RhdGljIHZvaWQgY2hlY2tfb2JqZWN0KHN0cnVjdCBvYmplY3QgKm9iaikKIHsKIAlpZiAodmVyYm9zZSkKLQkJZnByaW50ZihzdGRlcnIsICJDaGVja2luZyAlc1xuIiwgZGVzY3JpYmVfb2JqZWN0KG9iaikpOworCQlmcHJpbnRmX2xuKHN0ZGVyciwgXygiQ2hlY2tpbmcgJXMiKSwgZGVzY3JpYmVfb2JqZWN0KCZvYmotPm9pZCkpOwogCiAJaWYgKG9iai0+ZmxhZ3MgJiBSRUFDSEFCTEUpCiAJCWNoZWNrX3JlYWNoYWJsZV9vYmplY3Qob2JqKTsKQEAgLTMyOCwxMCArMzc5LDMwIEBACiAJLyogVHJhdmVyc2UgdGhlIHBlbmRpbmcgcmVhY2hhYmxlIG9iamVjdHMgKi8KIAl0cmF2ZXJzZV9yZWFjaGFibGUoKTsKIAorCS8qCisJICogV2l0aCAtLWNvbm5lY3Rpdml0eS1vbmx5LCB3ZSB3b24ndCBoYXZlIGFjdHVhbGx5IG9wZW5lZCBhbmQgbWFya2VkCisJICogdW5yZWFjaGFibGUgb2JqZWN0cyB3aXRoIFVTRUQuIERvIHRoYXQgbm93IHRvIG1ha2UgLS1kYW5nbGluZywgZXRjCisJICogYWNjdXJhdGUuCisJICovCisJaWYgKGNvbm5lY3Rpdml0eV9vbmx5ICYmIChzaG93X2RhbmdsaW5nIHx8IHdyaXRlX2xvc3RfYW5kX2ZvdW5kKSkgeworCQkvKgorCQkgKiBFdmVuIHRob3VnaCB3ZSBhbHJlYWR5IGhhdmUgYSAic3RydWN0IG9iamVjdCIgZm9yIGVhY2ggb2YKKwkJICogdGhlc2UgaW4gbWVtb3J5LCB3ZSBtdXN0IG5vdCBpdGVyYXRlIG92ZXIgdGhlIGludGVybmFsCisJCSAqIG9iamVjdCBoYXNoIGFzIHdlIGRvIGJlbG93LiBPdXIgbG9vcCB3b3VsZCBwb3RlbnRpYWxseQorCQkgKiByZXNpemUgdGhlIGhhc2gsIG1ha2luZyBvdXIgaXRlcmF0aW9uIGludmFsaWQuCisJCSAqCisJCSAqIEluc3RlYWQsIHdlJ2xsIGp1c3QgZ28gYmFjayB0byB0aGUgc291cmNlIGxpc3Qgb2Ygb2JqZWN0cywKKwkJICogYW5kIGlnbm9yZSBhbnkgdGhhdCB3ZXJlbid0IHByZXNlbnQgaW4gb3VyIGVhcmxpZXIKKwkJICogdHJhdmVyc2FsLgorCQkgKi8KKwkJZm9yX2VhY2hfbG9vc2Vfb2JqZWN0KG1hcmtfbG9vc2VfdW5yZWFjaGFibGVfcmVmZXJlbnRzLCBOVUxMLCAwKTsKKwkJZm9yX2VhY2hfcGFja2VkX29iamVjdChtYXJrX3BhY2tlZF91bnJlYWNoYWJsZV9yZWZlcmVudHMsIE5VTEwsIDApOworCX0KKwogCS8qIExvb2sgdXAgYWxsIHRoZSByZXF1aXJlbWVudHMsIHdhcm4gYWJvdXQgbWlzc2luZyBvYmplY3RzLi4gKi8KIAltYXggPSBnZXRfbWF4X29iamVjdF9pbmRleCgpOwogCWlmICh2ZXJib3NlKQotCQlmcHJpbnRmKHN0ZGVyciwgIkNoZWNraW5nIGNvbm5lY3Rpdml0eSAoJWQgb2JqZWN0cylcbiIsIG1heCk7CisJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJDaGVja2luZyBjb25uZWN0aXZpdHkgKCVkIG9iamVjdHMpIiksIG1heCk7CiAKIAlmb3IgKGkgPSAwOyBpIDwgbWF4OyBpKyspIHsKIAkJc3RydWN0IG9iamVjdCAqb2JqID0gZ2V0X2luZGV4ZWRfb2JqZWN0KGkpOwpAQCAtMzUwLDExICs0MjEsMTIgQEAKIAlvYmotPmZsYWdzIHw9IFNFRU47CiAKIAlpZiAodmVyYm9zZSkKLQkJZnByaW50ZihzdGRlcnIsICJDaGVja2luZyAlcyAlc1xuIiwKLQkJCXByaW50YWJsZV90eXBlKG9iaiksIGRlc2NyaWJlX29iamVjdChvYmopKTsKKwkJZnByaW50Zl9sbihzdGRlcnIsIF8oIkNoZWNraW5nICVzICVzIiksCisJCQkgICBwcmludGFibGVfdHlwZSgmb2JqLT5vaWQsIG9iai0+dHlwZSksCisJCQkgICBkZXNjcmliZV9vYmplY3QoJm9iai0+b2lkKSk7CiAKIAlpZiAoZnNja193YWxrKG9iaiwgTlVMTCwgJmZzY2tfb2JqX29wdGlvbnMpKQotCQlvYmplcnJvcihvYmosICJicm9rZW4gbGlua3MiKTsKKwkJb2JqZXJyb3Iob2JqLCBfKCJicm9rZW4gbGlua3MiKSk7CiAJZXJyID0gZnNja19vYmplY3Qob2JqLCBidWZmZXIsIHNpemUsICZmc2NrX29ial9vcHRpb25zKTsKIAlpZiAoZXJyKQogCQlnb3RvIG91dDsKQEAgLTM2MywxNyArNDM1LDE5IEBACiAJCXN0cnVjdCBjb21taXQgKmNvbW1pdCA9IChzdHJ1Y3QgY29tbWl0ICopIG9iajsKIAogCQlpZiAoIWNvbW1pdC0+cGFyZW50cyAmJiBzaG93X3Jvb3QpCi0JCQlwcmludGYoInJvb3QgJXNcbiIsIGRlc2NyaWJlX29iamVjdCgmY29tbWl0LT5vYmplY3QpKTsKKwkJCXByaW50Zl9sbihfKCJyb290ICVzIiksCisJCQkJICBkZXNjcmliZV9vYmplY3QoJmNvbW1pdC0+b2JqZWN0Lm9pZCkpOwogCX0KIAogCWlmIChvYmotPnR5cGUgPT0gT0JKX1RBRykgewogCQlzdHJ1Y3QgdGFnICp0YWcgPSAoc3RydWN0IHRhZyAqKSBvYmo7CiAKIAkJaWYgKHNob3dfdGFncyAmJiB0YWctPnRhZ2dlZCkgewotCQkJcHJpbnRmKCJ0YWdnZWQgJXMgJXMiLCBwcmludGFibGVfdHlwZSh0YWctPnRhZ2dlZCksCi0JCQkJZGVzY3JpYmVfb2JqZWN0KHRhZy0+dGFnZ2VkKSk7Ci0JCQlwcmludGYoIiAoJXMpIGluICVzXG4iLCB0YWctPnRhZywKLQkJCQlkZXNjcmliZV9vYmplY3QoJnRhZy0+b2JqZWN0KSk7CisJCQlwcmludGZfbG4oXygidGFnZ2VkICVzICVzICglcykgaW4gJXMiKSwKKwkJCQkgIHByaW50YWJsZV90eXBlKCZ0YWctPnRhZ2dlZC0+b2lkLCB0YWctPnRhZ2dlZC0+dHlwZSksCisJCQkJICBkZXNjcmliZV9vYmplY3QoJnRhZy0+dGFnZ2VkLT5vaWQpLAorCQkJCSAgdGFnLT50YWcsCisJCQkJICBkZXNjcmliZV9vYmplY3QoJnRhZy0+b2JqZWN0Lm9pZCkpOwogCQl9CiAJfQogCkBAIC0zODEsNyArNDU1LDggQEAKIAlpZiAob2JqLT50eXBlID09IE9CSl9UUkVFKQogCQlmcmVlX3RyZWVfYnVmZmVyKChzdHJ1Y3QgdHJlZSAqKW9iaik7CiAJaWYgKG9iai0+dHlwZSA9PSBPQkpfQ09NTUlUKQotCQlmcmVlX2NvbW1pdF9idWZmZXIoKHN0cnVjdCBjb21taXQgKilvYmopOworCQlmcmVlX2NvbW1pdF9idWZmZXIodGhlX3JlcG9zaXRvcnktPnBhcnNlZF9vYmplY3RzLAorCQkJCSAgIChzdHJ1Y3QgY29tbWl0ICopb2JqKTsKIAlyZXR1cm4gZXJyOwogfQogCkBAIC0zOTcsNyArNDcyLDggQEAKIAkJCQkgIGVhdGVuKTsKIAlpZiAoIW9iaikgewogCQllcnJvcnNfZm91bmQgfD0gRVJST1JfT0JKRUNUOwotCQlyZXR1cm4gZXJyb3IoIiVzOiBvYmplY3QgY29ycnVwdCBvciBtaXNzaW5nIiwgb2lkX3RvX2hleChvaWQpKTsKKwkJcmV0dXJuIGVycm9yKF8oIiVzOiBvYmplY3QgY29ycnVwdCBvciBtaXNzaW5nIiksCisJCQkgICAgIG9pZF90b19oZXgob2lkKSk7CiAJfQogCW9iai0+ZmxhZ3MgJj0gfihSRUFDSEFCTEUgfCBTRUVOKTsKIAlvYmotPmZsYWdzIHw9IEhBU19PQko7CkBAIC00MTIsMTYgKzQ4OCwxNyBAQAogCXN0cnVjdCBvYmplY3QgKm9iajsKIAogCWlmICghaXNfbnVsbF9vaWQob2lkKSkgewotCQlvYmogPSBsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBvaWQtPmhhc2gpOworCQlvYmogPSBsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBvaWQpOwogCQlpZiAob2JqICYmIChvYmotPmZsYWdzICYgSEFTX09CSikpIHsKLQkJCWlmICh0aW1lc3RhbXAgJiYgbmFtZV9vYmplY3RzKQotCQkJCWFkZF9kZWNvcmF0aW9uKGZzY2tfd2Fsa19vcHRpb25zLm9iamVjdF9uYW1lcywKLQkJCQkJb2JqLAotCQkJCQl4c3RyZm10KCIlc0B7JSJQUkl0aW1lIn0iLCByZWZuYW1lLCB0aW1lc3RhbXApKTsKKwkJCWlmICh0aW1lc3RhbXApCisJCQkJZnNja19wdXRfb2JqZWN0X25hbWUoJmZzY2tfd2Fsa19vcHRpb25zLCBvaWQsCisJCQkJCQkgICAgICIlc0B7JSJQUkl0aW1lIn0iLAorCQkJCQkJICAgICByZWZuYW1lLCB0aW1lc3RhbXApOwogCQkJb2JqLT5mbGFncyB8PSBVU0VEOwogCQkJbWFya19vYmplY3RfcmVhY2hhYmxlKG9iaik7CiAJCX0gZWxzZSBpZiAoIWlzX3Byb21pc29yX29iamVjdChvaWQpKSB7Ci0JCQllcnJvcigiJXM6IGludmFsaWQgcmVmbG9nIGVudHJ5ICVzIiwgcmVmbmFtZSwgb2lkX3RvX2hleChvaWQpKTsKKwkJCWVycm9yKF8oIiVzOiBpbnZhbGlkIHJlZmxvZyBlbnRyeSAlcyIpLAorCQkJICAgICAgcmVmbmFtZSwgb2lkX3RvX2hleChvaWQpKTsKIAkJCWVycm9yc19mb3VuZCB8PSBFUlJPUl9SRUFDSEFCTEU7CiAJCX0KIAl9CkBAIC00MzQsOCArNTExLDggQEAKIAljb25zdCBjaGFyICpyZWZuYW1lID0gY2JfZGF0YTsKIAogCWlmICh2ZXJib3NlKQotCQlmcHJpbnRmKHN0ZGVyciwgIkNoZWNraW5nIHJlZmxvZyAlcy0+JXNcbiIsCi0JCQlvaWRfdG9faGV4KG9vaWQpLCBvaWRfdG9faGV4KG5vaWQpKTsKKwkJZnByaW50Zl9sbihzdGRlcnIsIF8oIkNoZWNraW5nIHJlZmxvZyAlcy0+JXMiKSwKKwkJCSAgIG9pZF90b19oZXgob29pZCksIG9pZF90b19oZXgobm9pZCkpOwogCiAJZnNja19oYW5kbGVfcmVmbG9nX29pZChyZWZuYW1lLCBvb2lkLCAwKTsKIAlmc2NrX2hhbmRsZV9yZWZsb2dfb2lkKHJlZm5hbWUsIG5vaWQsIHRpbWVzdGFtcCk7CkBAIC00NjgsMjAgKzU0NSwyMCBAQAogCQkJIGRlZmF1bHRfcmVmcysrOwogCQkJIHJldHVybiAwOwogCQl9Ci0JCWVycm9yKCIlczogaW52YWxpZCBzaGExIHBvaW50ZXIgJXMiLCByZWZuYW1lLCBvaWRfdG9faGV4KG9pZCkpOworCQllcnJvcihfKCIlczogaW52YWxpZCBzaGExIHBvaW50ZXIgJXMiKSwKKwkJICAgICAgcmVmbmFtZSwgb2lkX3RvX2hleChvaWQpKTsKIAkJZXJyb3JzX2ZvdW5kIHw9IEVSUk9SX1JFQUNIQUJMRTsKIAkJLyogV2UnbGwgY29udGludWUgd2l0aCB0aGUgcmVzdCBkZXNwaXRlIHRoZSBlcnJvci4uICovCiAJCXJldHVybiAwOwogCX0KIAlpZiAob2JqLT50eXBlICE9IE9CSl9DT01NSVQgJiYgaXNfYnJhbmNoKHJlZm5hbWUpKSB7Ci0JCWVycm9yKCIlczogbm90IGEgY29tbWl0IiwgcmVmbmFtZSk7CisJCWVycm9yKF8oIiVzOiBub3QgYSBjb21taXQiKSwgcmVmbmFtZSk7CiAJCWVycm9yc19mb3VuZCB8PSBFUlJPUl9SRUZTOwogCX0KIAlkZWZhdWx0X3JlZnMrKzsKIAlvYmotPmZsYWdzIHw9IFVTRUQ7Ci0JaWYgKG5hbWVfb2JqZWN0cykKLQkJYWRkX2RlY29yYXRpb24oZnNja193YWxrX29wdGlvbnMub2JqZWN0X25hbWVzLAotCQkJb2JqLCB4c3RyZHVwKHJlZm5hbWUpKTsKKwlmc2NrX3B1dF9vYmplY3RfbmFtZSgmZnNja193YWxrX29wdGlvbnMsCisJCQkgICAgIG9pZCwgIiVzIiwgcmVmbmFtZSk7CiAJbWFya19vYmplY3RfcmVhY2hhYmxlKG9iaik7CiAKIAlyZXR1cm4gMDsKQEAgLTUyOSw3ICs2MDYsNyBAQAogCSAqICJzaG93X3VucmVhY2hhYmxlIiBmbGFnLgogCSAqLwogCWlmICghZGVmYXVsdF9yZWZzKSB7Ci0JCWZwcmludGYoc3RkZXJyLCAibm90aWNlOiBObyBkZWZhdWx0IHJlZmVyZW5jZXNcbiIpOworCQlmcHJpbnRmX2xuKHN0ZGVyciwgXygibm90aWNlOiBObyBkZWZhdWx0IHJlZmVyZW5jZXMiKSk7CiAJCXNob3dfdW5yZWFjaGFibGUgPSAwOwogCX0KIH0KQEAgLTU0NCw3ICs2MjEsNyBAQAogCiAJaWYgKHJlYWRfbG9vc2Vfb2JqZWN0KHBhdGgsIG9pZCwgJnR5cGUsICZzaXplLCAmY29udGVudHMpIDwgMCkgewogCQllcnJvcnNfZm91bmQgfD0gRVJST1JfT0JKRUNUOwotCQllcnJvcigiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3Npbmc6ICVzIiwKKwkJZXJyb3IoXygiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3Npbmc6ICVzIiksCiAJCSAgICAgIG9pZF90b19oZXgob2lkKSwgcGF0aCk7CiAJCXJldHVybiAwOyAvKiBrZWVwIGNoZWNraW5nIG90aGVyIG9iamVjdHMgKi8KIAl9CkBAIC01NTcsNyArNjM0LDcgQEAKIAogCWlmICghb2JqKSB7CiAJCWVycm9yc19mb3VuZCB8PSBFUlJPUl9PQkpFQ1Q7Ci0JCWVycm9yKCIlczogb2JqZWN0IGNvdWxkIG5vdCBiZSBwYXJzZWQ6ICVzIiwKKwkJZXJyb3IoXygiJXM6IG9iamVjdCBjb3VsZCBub3QgYmUgcGFyc2VkOiAlcyIpLAogCQkgICAgICBvaWRfdG9faGV4KG9pZCksIHBhdGgpOwogCQlpZiAoIWVhdGVuKQogCQkJZnJlZShjb250ZW50cyk7CkBAIC01NzcsNyArNjU0LDcgQEAKIHN0YXRpYyBpbnQgZnNja19jcnVmdChjb25zdCBjaGFyICpiYXNlbmFtZSwgY29uc3QgY2hhciAqcGF0aCwgdm9pZCAqZGF0YSkKIHsKIAlpZiAoIXN0YXJ0c193aXRoKGJhc2VuYW1lLCAidG1wX29ial8iKSkKLQkJZnByaW50ZihzdGRlcnIsICJiYWQgc2hhMSBmaWxlOiAlc1xuIiwgcGF0aCk7CisJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJiYWQgc2hhMSBmaWxlOiAlcyIpLCBwYXRoKTsKIAlyZXR1cm4gMDsKIH0KIApAQCAtNTkyLDcgKzY2OSw3IEBACiAJc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcyA9IE5VTEw7CiAKIAlpZiAodmVyYm9zZSkKLQkJZnByaW50ZihzdGRlcnIsICJDaGVja2luZyBvYmplY3QgZGlyZWN0b3J5XG4iKTsKKwkJZnByaW50Zl9sbihzdGRlcnIsIF8oIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcnkiKSk7CiAKIAlpZiAoc2hvd19wcm9ncmVzcykKIAkJcHJvZ3Jlc3MgPSBzdGFydF9wcm9ncmVzcyhfKCJDaGVja2luZyBvYmplY3QgZGlyZWN0b3JpZXMiKSwgMjU2KTsKQEAgLTYxMCwyOSArNjg3LDMwIEBACiAJaW50IG51bGxfaXNfZXJyb3IgPSAwOwogCiAJaWYgKHZlcmJvc2UpCi0JCWZwcmludGYoc3RkZXJyLCAiQ2hlY2tpbmcgJXMgbGlua1xuIiwgaGVhZF9yZWZfbmFtZSk7CisJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJDaGVja2luZyAlcyBsaW5rIiksIGhlYWRfcmVmX25hbWUpOwogCiAJKmhlYWRfcG9pbnRzX2F0ID0gcmVzb2x2ZV9yZWZfdW5zYWZlKGhlYWRfcmVmX25hbWUsIDAsIGhlYWRfb2lkLCBOVUxMKTsKIAlpZiAoISpoZWFkX3BvaW50c19hdCkgewogCQllcnJvcnNfZm91bmQgfD0gRVJST1JfUkVGUzsKLQkJcmV0dXJuIGVycm9yKCJJbnZhbGlkICVzIiwgaGVhZF9yZWZfbmFtZSk7CisJCXJldHVybiBlcnJvcihfKCJpbnZhbGlkICVzIiksIGhlYWRfcmVmX25hbWUpOwogCX0KIAlpZiAoIXN0cmNtcCgqaGVhZF9wb2ludHNfYXQsIGhlYWRfcmVmX25hbWUpKQogCQkvKiBkZXRhY2hlZCBIRUFEICovCiAJCW51bGxfaXNfZXJyb3IgPSAxOwogCWVsc2UgaWYgKCFzdGFydHNfd2l0aCgqaGVhZF9wb2ludHNfYXQsICJyZWZzL2hlYWRzLyIpKSB7CiAJCWVycm9yc19mb3VuZCB8PSBFUlJPUl9SRUZTOwotCQlyZXR1cm4gZXJyb3IoIiVzIHBvaW50cyB0byBzb21ldGhpbmcgc3RyYW5nZSAoJXMpIiwKKwkJcmV0dXJuIGVycm9yKF8oIiVzIHBvaW50cyB0byBzb21ldGhpbmcgc3RyYW5nZSAoJXMpIiksCiAJCQkgICAgIGhlYWRfcmVmX25hbWUsICpoZWFkX3BvaW50c19hdCk7CiAJfQogCWlmIChpc19udWxsX29pZChoZWFkX29pZCkpIHsKIAkJaWYgKG51bGxfaXNfZXJyb3IpIHsKIAkJCWVycm9yc19mb3VuZCB8PSBFUlJPUl9SRUZTOwotCQkJcmV0dXJuIGVycm9yKCIlczogZGV0YWNoZWQgSEVBRCBwb2ludHMgYXQgbm90aGluZyIsCisJCQlyZXR1cm4gZXJyb3IoXygiJXM6IGRldGFjaGVkIEhFQUQgcG9pbnRzIGF0IG5vdGhpbmciKSwKIAkJCQkgICAgIGhlYWRfcmVmX25hbWUpOwogCQl9Ci0JCWZwcmludGYoc3RkZXJyLCAibm90aWNlOiAlcyBwb2ludHMgdG8gYW4gdW5ib3JuIGJyYW5jaCAoJXMpXG4iLAotCQkJaGVhZF9yZWZfbmFtZSwgKmhlYWRfcG9pbnRzX2F0ICsgMTEpOworCQlmcHJpbnRmX2xuKHN0ZGVyciwKKwkJCSAgIF8oIm5vdGljZTogJXMgcG9pbnRzIHRvIGFuIHVuYm9ybiBicmFuY2ggKCVzKSIpLAorCQkJICAgaGVhZF9yZWZfbmFtZSwgKmhlYWRfcG9pbnRzX2F0ICsgMTEpOwogCX0KIAlyZXR1cm4gMDsKIH0KQEAgLTY0MywyMyArNzIxLDIxIEBACiAJaW50IGVyciA9IDA7CiAKIAlpZiAodmVyYm9zZSkKLQkJZnByaW50ZihzdGRlcnIsICJDaGVja2luZyBjYWNoZSB0cmVlXG4iKTsKKwkJZnByaW50Zl9sbihzdGRlcnIsIF8oIkNoZWNraW5nIGNhY2hlIHRyZWUiKSk7CiAKIAlpZiAoMCA8PSBpdC0+ZW50cnlfY291bnQpIHsKIAkJc3RydWN0IG9iamVjdCAqb2JqID0gcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCAmaXQtPm9pZCk7CiAJCWlmICghb2JqKSB7Ci0JCQllcnJvcigiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyIGluIGNhY2hlLXRyZWUiLAorCQkJZXJyb3IoXygiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyIGluIGNhY2hlLXRyZWUiKSwKIAkJCSAgICAgIG9pZF90b19oZXgoJml0LT5vaWQpKTsKIAkJCWVycm9yc19mb3VuZCB8PSBFUlJPUl9SRUZTOwogCQkJcmV0dXJuIDE7CiAJCX0KIAkJb2JqLT5mbGFncyB8PSBVU0VEOwotCQlpZiAobmFtZV9vYmplY3RzKQotCQkJYWRkX2RlY29yYXRpb24oZnNja193YWxrX29wdGlvbnMub2JqZWN0X25hbWVzLAotCQkJCW9iaiwgeHN0cmR1cCgiOiIpKTsKKwkJZnNja19wdXRfb2JqZWN0X25hbWUoJmZzY2tfd2Fsa19vcHRpb25zLCAmaXQtPm9pZCwgIjoiKTsKIAkJbWFya19vYmplY3RfcmVhY2hhYmxlKG9iaik7CiAJCWlmIChvYmotPnR5cGUgIT0gT0JKX1RSRUUpCi0JCQllcnIgfD0gb2JqZXJyb3Iob2JqLCAibm9uLXRyZWUgaW4gY2FjaGUtdHJlZSIpOworCQkJZXJyIHw9IG9iamVycm9yKG9iaiwgXygibm9uLXRyZWUgaW4gY2FjaGUtdHJlZSIpKTsKIAl9CiAJZm9yIChpID0gMDsgaSA8IGl0LT5zdWJ0cmVlX25yOyBpKyspCiAJCWVyciB8PSBmc2NrX2NhY2hlX3RyZWUoaXQtPmRvd25baV0tPmNhY2hlX3RyZWUpOwpAQCAtNjY4LDcgKzc0NCw3IEBACiAKIHN0YXRpYyB2b2lkIG1hcmtfb2JqZWN0X2Zvcl9jb25uZWN0aXZpdHkoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewotCXN0cnVjdCBvYmplY3QgKm9iaiA9IGxvb2t1cF91bmtub3duX29iamVjdChvaWQtPmhhc2gpOworCXN0cnVjdCBvYmplY3QgKm9iaiA9IGxvb2t1cF91bmtub3duX29iamVjdChvaWQpOwogCW9iai0+ZmxhZ3MgfD0gSEFTX09CSjsKIH0KIApAQCAtNzE1LDcgKzc5MSw3IEBACiBpbnQgY21kX2ZzY2soaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCiB7CiAJaW50IGk7Ci0Jc3RydWN0IGFsdGVybmF0ZV9vYmplY3RfZGF0YWJhc2UgKmFsdDsKKwlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiOwogCiAJLyogZnNjayBrbm93cyBob3cgdG8gaGFuZGxlIG1pc3NpbmcgcHJvbWlzb3Igb2JqZWN0cyAqLwogCWZldGNoX2lmX21pc3NpbmcgPSAwOwpAQCAtNzQyLDggKzgxOCw3IEBACiAJfQogCiAJaWYgKG5hbWVfb2JqZWN0cykKLQkJZnNja193YWxrX29wdGlvbnMub2JqZWN0X25hbWVzID0KLQkJCXhjYWxsb2MoMSwgc2l6ZW9mKHN0cnVjdCBkZWNvcmF0aW9uKSk7CisJCWZzY2tfZW5hYmxlX29iamVjdF9uYW1lcygmZnNja193YWxrX29wdGlvbnMpOwogCiAJZ2l0X2NvbmZpZyhmc2NrX2NvbmZpZywgTlVMTCk7CiAKQEAgLTc1MSwxNCArODI2LDkgQEAKIAkJZm9yX2VhY2hfbG9vc2Vfb2JqZWN0KG1hcmtfbG9vc2VfZm9yX2Nvbm5lY3Rpdml0eSwgTlVMTCwgMCk7CiAJCWZvcl9lYWNoX3BhY2tlZF9vYmplY3QobWFya19wYWNrZWRfZm9yX2Nvbm5lY3Rpdml0eSwgTlVMTCwgMCk7CiAJfSBlbHNlIHsKLQkJc3RydWN0IGFsdGVybmF0ZV9vYmplY3RfZGF0YWJhc2UgKmFsdF9vZGJfbGlzdDsKLQotCQlmc2NrX29iamVjdF9kaXIoZ2V0X29iamVjdF9kaXJlY3RvcnkoKSk7Ci0KIAkJcHJlcGFyZV9hbHRfb2RiKHRoZV9yZXBvc2l0b3J5KTsKLQkJYWx0X29kYl9saXN0ID0gdGhlX3JlcG9zaXRvcnktPm9iamVjdHMtPmFsdF9vZGJfbGlzdDsKLQkJZm9yIChhbHQgPSBhbHRfb2RiX2xpc3Q7IGFsdDsgYWx0ID0gYWx0LT5uZXh0KQotCQkJZnNja19vYmplY3RfZGlyKGFsdC0+cGF0aCk7CisJCWZvciAob2RiID0gdGhlX3JlcG9zaXRvcnktPm9iamVjdHMtPm9kYjsgb2RiOyBvZGIgPSBvZGItPm5leHQpCisJCQlmc2NrX29iamVjdF9kaXIob2RiLT5wYXRoKTsKIAogCQlpZiAoY2hlY2tfZnVsbCkgewogCQkJc3RydWN0IHBhY2tlZF9naXQgKnA7CkBAIC03NzgsNyArODQ4LDggQEAKIAkJCWZvciAocCA9IGdldF9hbGxfcGFja3ModGhlX3JlcG9zaXRvcnkpOyBwOwogCQkJICAgICBwID0gcC0+bmV4dCkgewogCQkJCS8qIHZlcmlmeSBnaXZlcyBlcnJvciBtZXNzYWdlcyBpdHNlbGYgKi8KLQkJCQlpZiAodmVyaWZ5X3BhY2socCwgZnNja19vYmpfYnVmZmVyLAorCQkJCWlmICh2ZXJpZnlfcGFjayh0aGVfcmVwb3NpdG9yeSwKKwkJCQkJCXAsIGZzY2tfb2JqX2J1ZmZlciwKIAkJCQkJCXByb2dyZXNzLCBjb3VudCkpCiAJCQkJCWVycm9yc19mb3VuZCB8PSBFUlJPUl9QQUNLOwogCQkJCWNvdW50ICs9IHAtPm51bV9vYmplY3RzOwpAQCAtNzk1LDI0ICs4NjYsMjMgQEAKIAkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJCWlmICghZ2V0X29pZChhcmcsICZvaWQpKSB7CiAJCQlzdHJ1Y3Qgb2JqZWN0ICpvYmogPSBsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LAotCQkJCQkJCSAgIG9pZC5oYXNoKTsKKwkJCQkJCQkgICAmb2lkKTsKIAogCQkJaWYgKCFvYmogfHwgIShvYmotPmZsYWdzICYgSEFTX09CSikpIHsKIAkJCQlpZiAoaXNfcHJvbWlzb3Jfb2JqZWN0KCZvaWQpKQogCQkJCQljb250aW51ZTsKLQkJCQllcnJvcigiJXM6IG9iamVjdCBtaXNzaW5nIiwgb2lkX3RvX2hleCgmb2lkKSk7CisJCQkJZXJyb3IoXygiJXM6IG9iamVjdCBtaXNzaW5nIiksIG9pZF90b19oZXgoJm9pZCkpOwogCQkJCWVycm9yc19mb3VuZCB8PSBFUlJPUl9PQkpFQ1Q7CiAJCQkJY29udGludWU7CiAJCQl9CiAKIAkJCW9iai0+ZmxhZ3MgfD0gVVNFRDsKLQkJCWlmIChuYW1lX29iamVjdHMpCi0JCQkJYWRkX2RlY29yYXRpb24oZnNja193YWxrX29wdGlvbnMub2JqZWN0X25hbWVzLAotCQkJCQlvYmosIHhzdHJkdXAoYXJnKSk7CisJCQlmc2NrX3B1dF9vYmplY3RfbmFtZSgmZnNja193YWxrX29wdGlvbnMsICZvaWQsCisJCQkJCSAgICAgIiVzIiwgYXJnKTsKIAkJCW1hcmtfb2JqZWN0X3JlYWNoYWJsZShvYmopOwogCQkJY29udGludWU7CiAJCX0KLQkJZXJyb3IoImludmFsaWQgcGFyYW1ldGVyOiBleHBlY3RlZCBzaGExLCBnb3QgJyVzJyIsIGFyZyk7CisJCWVycm9yKF8oImludmFsaWQgcGFyYW1ldGVyOiBleHBlY3RlZCBzaGExLCBnb3QgJyVzJyIpLCBhcmcpOwogCQllcnJvcnNfZm91bmQgfD0gRVJST1JfT0JKRUNUOwogCX0KIApAQCAtODQ0LDEwICs5MTQsOCBAQAogCQkJCWNvbnRpbnVlOwogCQkJb2JqID0gJmJsb2ItPm9iamVjdDsKIAkJCW9iai0+ZmxhZ3MgfD0gVVNFRDsKLQkJCWlmIChuYW1lX29iamVjdHMpCi0JCQkJYWRkX2RlY29yYXRpb24oZnNja193YWxrX29wdGlvbnMub2JqZWN0X25hbWVzLAotCQkJCQlvYmosCi0JCQkJCXhzdHJmbXQoIjolcyIsIGFjdGl2ZV9jYWNoZVtpXS0+bmFtZSkpOworCQkJZnNja19wdXRfb2JqZWN0X25hbWUoJmZzY2tfd2Fsa19vcHRpb25zLCAmb2JqLT5vaWQsCisJCQkJCSAgICAgIjolcyIsIGFjdGl2ZV9jYWNoZVtpXS0+bmFtZSk7CiAJCQltYXJrX29iamVjdF9yZWFjaGFibGUob2JqKTsKIAkJfQogCQlpZiAoYWN0aXZlX2NhY2hlX3RyZWUpCkBAIC04NjAsMTUgKzkyOCwxMyBAQAogCQlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjb21taXRfZ3JhcGhfdmVyaWZ5ID0gQ0hJTERfUFJPQ0VTU19JTklUOwogCQljb25zdCBjaGFyICp2ZXJpZnlfYXJndltdID0geyAiY29tbWl0LWdyYXBoIiwgInZlcmlmeSIsIE5VTEwsIE5VTEwsIE5VTEwgfTsKIAotCQljb21taXRfZ3JhcGhfdmVyaWZ5LmFyZ3YgPSB2ZXJpZnlfYXJndjsKLQkJY29tbWl0X2dyYXBoX3ZlcmlmeS5naXRfY21kID0gMTsKLQkJaWYgKHJ1bl9jb21tYW5kKCZjb21taXRfZ3JhcGhfdmVyaWZ5KSkKLQkJCWVycm9yc19mb3VuZCB8PSBFUlJPUl9DT01NSVRfR1JBUEg7Ci0KIAkJcHJlcGFyZV9hbHRfb2RiKHRoZV9yZXBvc2l0b3J5KTsKLQkJZm9yIChhbHQgPSAgdGhlX3JlcG9zaXRvcnktPm9iamVjdHMtPmFsdF9vZGJfbGlzdDsgYWx0OyBhbHQgPSBhbHQtPm5leHQpIHsKKwkJZm9yIChvZGIgPSB0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cy0+b2RiOyBvZGI7IG9kYiA9IG9kYi0+bmV4dCkgeworCQkJY2hpbGRfcHJvY2Vzc19pbml0KCZjb21taXRfZ3JhcGhfdmVyaWZ5KTsKKwkJCWNvbW1pdF9ncmFwaF92ZXJpZnkuYXJndiA9IHZlcmlmeV9hcmd2OworCQkJY29tbWl0X2dyYXBoX3ZlcmlmeS5naXRfY21kID0gMTsKIAkJCXZlcmlmeV9hcmd2WzJdID0gIi0tb2JqZWN0LWRpciI7Ci0JCQl2ZXJpZnlfYXJndlszXSA9IGFsdC0+cGF0aDsKKwkJCXZlcmlmeV9hcmd2WzNdID0gb2RiLT5wYXRoOwogCQkJaWYgKHJ1bl9jb21tYW5kKCZjb21taXRfZ3JhcGhfdmVyaWZ5KSkKIAkJCQllcnJvcnNfZm91bmQgfD0gRVJST1JfQ09NTUlUX0dSQVBIOwogCQl9CkBAIC04NzgsMTUgKzk0NCwxMyBAQAogCQlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBtaWR4X3ZlcmlmeSA9IENISUxEX1BST0NFU1NfSU5JVDsKIAkJY29uc3QgY2hhciAqbWlkeF9hcmd2W10gPSB7ICJtdWx0aS1wYWNrLWluZGV4IiwgInZlcmlmeSIsIE5VTEwsIE5VTEwsIE5VTEwgfTsKIAotCQltaWR4X3ZlcmlmeS5hcmd2ID0gbWlkeF9hcmd2OwotCQltaWR4X3ZlcmlmeS5naXRfY21kID0gMTsKLQkJaWYgKHJ1bl9jb21tYW5kKCZtaWR4X3ZlcmlmeSkpCi0JCQllcnJvcnNfZm91bmQgfD0gRVJST1JfQ09NTUlUX0dSQVBIOwotCiAJCXByZXBhcmVfYWx0X29kYih0aGVfcmVwb3NpdG9yeSk7Ci0JCWZvciAoYWx0ID0gIHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzLT5hbHRfb2RiX2xpc3Q7IGFsdDsgYWx0ID0gYWx0LT5uZXh0KSB7CisJCWZvciAob2RiID0gdGhlX3JlcG9zaXRvcnktPm9iamVjdHMtPm9kYjsgb2RiOyBvZGIgPSBvZGItPm5leHQpIHsKKwkJCWNoaWxkX3Byb2Nlc3NfaW5pdCgmbWlkeF92ZXJpZnkpOworCQkJbWlkeF92ZXJpZnkuYXJndiA9IG1pZHhfYXJndjsKKwkJCW1pZHhfdmVyaWZ5LmdpdF9jbWQgPSAxOwogCQkJbWlkeF9hcmd2WzJdID0gIi0tb2JqZWN0LWRpciI7Ci0JCQltaWR4X2FyZ3ZbM10gPSBhbHQtPnBhdGg7CisJCQltaWR4X2FyZ3ZbM10gPSBvZGItPnBhdGg7CiAJCQlpZiAocnVuX2NvbW1hbmQoJm1pZHhfdmVyaWZ5KSkKIAkJCQllcnJvcnNfZm91bmQgfD0gRVJST1JfQ09NTUlUX0dSQVBIOwogCQl9CmRpZmYgLS1naXQgYS9idWlsdGluL2djLmMgYi9idWlsdGluL2djLmMKaW5kZXggODcxYTU2Zi4uOGUwYjljZiAxMDA2NDQKLS0tIGEvYnVpbHRpbi9nYy5jCisrKyBiL2J1aWx0aW4vZ2MuYwpAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUgInBhY2stb2JqZWN0cy5oIgogI2luY2x1ZGUgImJsb2IuaCIKICNpbmNsdWRlICJ0cmVlLmgiCisjaW5jbHVkZSAicHJvbWlzb3ItcmVtb3RlLmgiCiAKICNkZWZpbmUgRkFJTEVEX1JVTiAiZmFpbGVkIHRvIHJ1biAlcyIKIApAQCAtNDEsNyArNDIsNiBAQAogc3RhdGljIGludCBhZ2dyZXNzaXZlX3dpbmRvdyA9IDI1MDsKIHN0YXRpYyBpbnQgZ2NfYXV0b190aHJlc2hvbGQgPSA2NzAwOwogc3RhdGljIGludCBnY19hdXRvX3BhY2tfbGltaXQgPSA1MDsKLXN0YXRpYyBpbnQgZ2Nfd3JpdGVfY29tbWl0X2dyYXBoOwogc3RhdGljIGludCBkZXRhY2hfYXV0byA9IDE7CiBzdGF0aWMgdGltZXN0YW1wX3QgZ2NfbG9nX2V4cGlyZV90aW1lOwogc3RhdGljIGNvbnN0IGNoYXIgKmdjX2xvZ19leHBpcmUgPSAiMS5kYXkuYWdvIjsKQEAgLTExNiw2ICsxMTYsMTkgQEAKIAlyYWlzZShzaWdubyk7CiB9CiAKK3N0YXRpYyBpbnQgZ2NfY29uZmlnX2lzX3RpbWVzdGFtcF9uZXZlcihjb25zdCBjaGFyICp2YXIpCit7CisJY29uc3QgY2hhciAqdmFsdWU7CisJdGltZXN0YW1wX3QgZXhwaXJlOworCisJaWYgKCFnaXRfY29uZmlnX2dldF92YWx1ZSh2YXIsICZ2YWx1ZSkgJiYgdmFsdWUpIHsKKwkJaWYgKHBhcnNlX2V4cGlyeV9kYXRlKHZhbHVlLCAmZXhwaXJlKSkKKwkJCWRpZShfKCJmYWlsZWQgdG8gcGFyc2UgJyVzJyB2YWx1ZSAnJXMnIiksIHZhciwgdmFsdWUpOworCQlyZXR1cm4gZXhwaXJlID09IDA7CisJfQorCXJldHVybiAwOworfQorCiBzdGF0aWMgdm9pZCBnY19jb25maWcodm9pZCkKIHsKIAljb25zdCBjaGFyICp2YWx1ZTsKQEAgLTEyNywxMSArMTQwLDE0IEBACiAJCQlwYWNrX3JlZnMgPSBnaXRfY29uZmlnX2Jvb2woImdjLnBhY2tyZWZzIiwgdmFsdWUpOwogCX0KIAorCWlmIChnY19jb25maWdfaXNfdGltZXN0YW1wX25ldmVyKCJnYy5yZWZsb2dleHBpcmUiKSAmJgorCSAgICBnY19jb25maWdfaXNfdGltZXN0YW1wX25ldmVyKCJnYy5yZWZsb2dleHBpcmV1bnJlYWNoYWJsZSIpKQorCQlwcnVuZV9yZWZsb2dzID0gMDsKKwogCWdpdF9jb25maWdfZ2V0X2ludCgiZ2MuYWdncmVzc2l2ZXdpbmRvdyIsICZhZ2dyZXNzaXZlX3dpbmRvdyk7CiAJZ2l0X2NvbmZpZ19nZXRfaW50KCJnYy5hZ2dyZXNzaXZlZGVwdGgiLCAmYWdncmVzc2l2ZV9kZXB0aCk7CiAJZ2l0X2NvbmZpZ19nZXRfaW50KCJnYy5hdXRvIiwgJmdjX2F1dG9fdGhyZXNob2xkKTsKIAlnaXRfY29uZmlnX2dldF9pbnQoImdjLmF1dG9wYWNrbGltaXQiLCAmZ2NfYXV0b19wYWNrX2xpbWl0KTsKLQlnaXRfY29uZmlnX2dldF9ib29sKCJnYy53cml0ZWNvbW1pdGdyYXBoIiwgJmdjX3dyaXRlX2NvbW1pdF9ncmFwaCk7CiAJZ2l0X2NvbmZpZ19nZXRfYm9vbCgiZ2MuYXV0b2RldGFjaCIsICZkZXRhY2hfYXV0byk7CiAJZ2l0X2NvbmZpZ19nZXRfZXhwaXJ5KCJnYy5wcnVuZWV4cGlyZSIsICZwcnVuZV9leHBpcmUpOwogCWdpdF9jb25maWdfZ2V0X2V4cGlyeSgiZ2Mud29ya3RyZWVwcnVuZWV4cGlyZSIsICZwcnVuZV93b3JrdHJlZXNfZXhwaXJlKTsKQEAgLTE1Niw5ICsxNzIsNyBAQAogCWludCBhdXRvX3RocmVzaG9sZDsKIAlpbnQgbnVtX2xvb3NlID0gMDsKIAlpbnQgbmVlZGVkID0gMDsKLQotCWlmIChnY19hdXRvX3RocmVzaG9sZCA8PSAwKQotCQlyZXR1cm4gMDsKKwljb25zdCB1bnNpZ25lZCBoZXhzel9sb29zZSA9IHRoZV9oYXNoX2FsZ28tPmhleHN6IC0gMjsKIAogCWRpciA9IG9wZW5kaXIoZ2l0X3BhdGgoIm9iamVjdHMvMTciKSk7CiAJaWYgKCFkaXIpCkBAIC0xNjYsOCArMTgwLDggQEAKIAogCWF1dG9fdGhyZXNob2xkID0gRElWX1JPVU5EX1VQKGdjX2F1dG9fdGhyZXNob2xkLCAyNTYpOwogCXdoaWxlICgoZW50ID0gcmVhZGRpcihkaXIpKSAhPSBOVUxMKSB7Ci0JCWlmIChzdHJzcG4oZW50LT5kX25hbWUsICIwMTIzNDU2Nzg5YWJjZGVmIikgIT0gMzggfHwKLQkJICAgIGVudC0+ZF9uYW1lWzM4XSAhPSAnXDAnKQorCQlpZiAoc3Ryc3BuKGVudC0+ZF9uYW1lLCAiMDEyMzQ1Njc4OWFiY2RlZiIpICE9IGhleHN6X2xvb3NlIHx8CisJCSAgICBlbnQtPmRfbmFtZVtoZXhzel9sb29zZV0gIT0gJ1wwJykKIAkJCWNvbnRpbnVlOwogCQlpZiAoKytudW1fbG9vc2UgPiBhdXRvX3RocmVzaG9sZCkgewogCQkJbmVlZGVkID0gMTsKQEAgLTMxNyw3ICszMzEsNyBAQAogCiBzdGF0aWMgdm9pZCBhZGRfcmVwYWNrX2luY3JlbWVudGFsX29wdGlvbih2b2lkKQogewotICAgICAgIGFyZ3ZfYXJyYXlfcHVzaCgmcmVwYWNrLCAiLS1uby13cml0ZS1iaXRtYXAtaW5kZXgiKTsKKwlhcmd2X2FycmF5X3B1c2goJnJlcGFjaywgIi0tbm8td3JpdGUtYml0bWFwLWluZGV4Iik7CiB9CiAKIHN0YXRpYyBpbnQgbmVlZF90b19nYyh2b2lkKQpAQCAtNDQ0LDcgKzQ1OCw3IEBACiAvKgogICogUmV0dXJucyAwIGlmIHRoZXJlIHdhcyBubyBwcmV2aW91cyBlcnJvciBhbmQgZ2MgY2FuIHByb2NlZWQsIDEgaWYKICAqIGdjIHNob3VsZCBub3QgcHJvY2VlZCBkdWUgdG8gYW4gZXJyb3IgaW4gdGhlIGxhc3QgcnVuLiBQcmludHMgYQotICogbWVzc2FnZSBhbmQgcmV0dXJucyAtMSBpZiBhbiBlcnJvciBvY2N1cmVkIHdoaWxlIHJlYWRpbmcgZ2MubG9nCisgKiBtZXNzYWdlIGFuZCByZXR1cm5zIC0xIGlmIGFuIGVycm9yIG9jY3VycmVkIHdoaWxlIHJlYWRpbmcgZ2MubG9nCiAgKi8KIHN0YXRpYyBpbnQgcmVwb3J0X2xhc3RfZ2NfZXJyb3Iodm9pZCkKIHsKQEAgLTQ5MSwxNCArNTA1LDIwIEBACiAKIHN0YXRpYyB2b2lkIGdjX2JlZm9yZV9yZXBhY2sodm9pZCkKIHsKKwkvKgorCSAqIFdlIG1heSBiZSBjYWxsZWQgdHdpY2UsIGFzIGJvdGggdGhlIHByZS0gYW5kCisJICogcG9zdC1kYWVtb25pemVkIHBoYXNlcyB3aWxsIGNhbGwgdXMsIGJ1dCBydW5uaW5nIHRoZXNlCisJICogY29tbWFuZHMgbW9yZSB0aGFuIG9uY2UgaXMgcG9pbnRsZXNzIGFuZCB3YXN0ZWZ1bC4KKwkgKi8KKwlzdGF0aWMgaW50IGRvbmUgPSAwOworCWlmIChkb25lKyspCisJCXJldHVybjsKKwogCWlmIChwYWNrX3JlZnMgJiYgcnVuX2NvbW1hbmRfdl9vcHQocGFja19yZWZzX2NtZC5hcmd2LCBSVU5fR0lUX0NNRCkpCiAJCWRpZShGQUlMRURfUlVOLCBwYWNrX3JlZnNfY21kLmFyZ3ZbMF0pOwogCiAJaWYgKHBydW5lX3JlZmxvZ3MgJiYgcnVuX2NvbW1hbmRfdl9vcHQocmVmbG9nLmFyZ3YsIFJVTl9HSVRfQ01EKSkKIAkJZGllKEZBSUxFRF9SVU4sIHJlZmxvZy5hcmd2WzBdKTsKLQotCXBhY2tfcmVmcyA9IDA7Ci0JcHJ1bmVfcmVmbG9ncyA9IDA7CiB9CiAKIGludCBjbWRfZ2MoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCkBAIC01ODEsNyArNjAxLDcgQEAKIAkJaWYgKGRldGFjaF9hdXRvKSB7CiAJCQlpbnQgcmV0ID0gcmVwb3J0X2xhc3RfZ2NfZXJyb3IoKTsKIAkJCWlmIChyZXQgPCAwKQotCQkJCS8qIGFuIEkvTyBlcnJvciBvY2N1cmVkLCBhbHJlYWR5IHJlcG9ydGVkICovCisJCQkJLyogYW4gSS9PIGVycm9yIG9jY3VycmVkLCBhbHJlYWR5IHJlcG9ydGVkICovCiAJCQkJZXhpdCgxMjgpOwogCQkJaWYgKHJldCA9PSAxKQogCQkJCS8qIExhc3QgZ2MgLS1hdXRvIGZhaWxlZC4gU2tpcCB0aGlzIG9uZS4gKi8KQEAgLTYzMiw3ICs2NTIsNyBAQAogCWdjX2JlZm9yZV9yZXBhY2soKTsKIAogCWlmICghcmVwb3NpdG9yeV9mb3JtYXRfcHJlY2lvdXNfb2JqZWN0cykgewotCQljbG9zZV9hbGxfcGFja3ModGhlX3JlcG9zaXRvcnktPm9iamVjdHMpOworCQljbG9zZV9vYmplY3Rfc3RvcmUodGhlX3JlcG9zaXRvcnktPm9iamVjdHMpOwogCQlpZiAocnVuX2NvbW1hbmRfdl9vcHQocmVwYWNrLmFyZ3YsIFJVTl9HSVRfQ01EKSkKIAkJCWRpZShGQUlMRURfUlVOLCByZXBhY2suYXJndlswXSk7CiAKQEAgLTY0MCw3ICs2NjAsNyBAQAogCQkJYXJndl9hcnJheV9wdXNoKCZwcnVuZSwgcHJ1bmVfZXhwaXJlKTsKIAkJCWlmIChxdWlldCkKIAkJCQlhcmd2X2FycmF5X3B1c2goJnBydW5lLCAiLS1uby1wcm9ncmVzcyIpOwotCQkJaWYgKHJlcG9zaXRvcnlfZm9ybWF0X3BhcnRpYWxfY2xvbmUpCisJCQlpZiAoaGFzX3Byb21pc29yX3JlbW90ZSgpKQogCQkJCWFyZ3ZfYXJyYXlfcHVzaCgmcHJ1bmUsCiAJCQkJCQkiLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMiKTsKIAkJCWlmIChydW5fY29tbWFuZF92X29wdChwcnVuZS5hcmd2LCBSVU5fR0lUX0NNRCkpCkBAIC02NTksMTIgKzY3OSwxNiBAQAogCiAJcmVwb3J0X2dhcmJhZ2UgPSByZXBvcnRfcGFja19nYXJiYWdlOwogCXJlcHJlcGFyZV9wYWNrZWRfZ2l0KHRoZV9yZXBvc2l0b3J5KTsKLQlpZiAocGFja19nYXJiYWdlLm5yID4gMCkKKwlpZiAocGFja19nYXJiYWdlLm5yID4gMCkgeworCQljbG9zZV9vYmplY3Rfc3RvcmUodGhlX3JlcG9zaXRvcnktPm9iamVjdHMpOwogCQljbGVhbl9wYWNrX2dhcmJhZ2UoKTsKKwl9CiAKLQlpZiAoZ2Nfd3JpdGVfY29tbWl0X2dyYXBoKQotCQl3cml0ZV9jb21taXRfZ3JhcGhfcmVhY2hhYmxlKGdldF9vYmplY3RfZGlyZWN0b3J5KCksIDAsCi0JCQkJCSAgICAgIXF1aWV0ICYmICFkYWVtb25pemVkKTsKKwlwcmVwYXJlX3JlcG9fc2V0dGluZ3ModGhlX3JlcG9zaXRvcnkpOworCWlmICh0aGVfcmVwb3NpdG9yeS0+c2V0dGluZ3MuZ2Nfd3JpdGVfY29tbWl0X2dyYXBoID09IDEpCisJCXdyaXRlX2NvbW1pdF9ncmFwaF9yZWFjaGFibGUodGhlX3JlcG9zaXRvcnktPm9iamVjdHMtPm9kYiwKKwkJCQkJICAgICAhcXVpZXQgJiYgIWRhZW1vbml6ZWQgPyBDT01NSVRfR1JBUEhfV1JJVEVfUFJPR1JFU1MgOiAwLAorCQkJCQkgICAgIE5VTEwpOwogCiAJaWYgKGF1dG9fZ2MgJiYgdG9vX21hbnlfbG9vc2Vfb2JqZWN0cygpKQogCQl3YXJuaW5nKF8oIlRoZXJlIGFyZSB0b28gbWFueSB1bnJlYWNoYWJsZSBsb29zZSBvYmplY3RzOyAiCmRpZmYgLS1naXQgYS9idWlsdGluL2dldC10YXItY29tbWl0LWlkLmMgYi9idWlsdGluL2dldC10YXItY29tbWl0LWlkLmMKaW5kZXggMjcwNmZjZi4uNDkxYWY5MiAxMDA2NDQKLS0tIGEvYnVpbHRpbi9nZXQtdGFyLWNvbW1pdC1pZC5jCisrKyBiL2J1aWx0aW4vZ2V0LXRhci1jb21taXQtaWQuYwpAQCAtMjEsNiArMjEsOCBAQAogCWNoYXIgKmNvbnRlbnQgPSBidWZmZXIgKyBSRUNPUkRTSVpFOwogCWNvbnN0IGNoYXIgKmNvbW1lbnQ7CiAJc3NpemVfdCBuOworCWxvbmcgbGVuOworCWNoYXIgKmVuZDsKIAogCWlmIChhcmdjICE9IDEpCiAJCXVzYWdlKGJ1aWx0aW5fZ2V0X3Rhcl9jb21taXRfaWRfdXNhZ2UpOwpAQCAtMzIsMTAgKzM0LDE4IEBACiAJCWRpZV9lcnJubygiZ2l0IGdldC10YXItY29tbWl0LWlkOiBFT0YgYmVmb3JlIHJlYWRpbmcgdGFyIGhlYWRlciIpOwogCWlmIChoZWFkZXItPnR5cGVmbGFnWzBdICE9ICdnJykKIAkJcmV0dXJuIDE7Ci0JaWYgKCFza2lwX3ByZWZpeChjb250ZW50LCAiNTIgY29tbWVudD0iLCAmY29tbWVudCkpCisKKwlsZW4gPSBzdHJ0b2woY29udGVudCwgJmVuZCwgMTApOworCWlmIChlcnJubyA9PSBFUkFOR0UgfHwgZW5kID09IGNvbnRlbnQgfHwgbGVuIDwgMCkKKwkJcmV0dXJuIDE7CisJaWYgKCFza2lwX3ByZWZpeChlbmQsICIgY29tbWVudD0iLCAmY29tbWVudCkpCisJCXJldHVybiAxOworCWxlbiAtPSBjb21tZW50IC0gY29udGVudDsKKwlpZiAobGVuIDwgMSB8fCAhKGxlbiAlIDIpIHx8CisJICAgIGhhc2hfYWxnb19ieV9sZW5ndGgoKGxlbiAtIDEpIC8gMikgPT0gR0lUX0hBU0hfVU5LTk9XTikKIAkJcmV0dXJuIDE7CiAKLQlpZiAod3JpdGVfaW5fZnVsbCgxLCBjb21tZW50LCA0MSkgPCAwKQorCWlmICh3cml0ZV9pbl9mdWxsKDEsIGNvbW1lbnQsIGxlbikgPCAwKQogCQlkaWVfZXJybm8oImdpdCBnZXQtdGFyLWNvbW1pdC1pZDogd3JpdGUgZXJyb3IiKTsKIAogCXJldHVybiAwOwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9ncmVwLmMgYi9idWlsdGluL2dyZXAuYwppbmRleCA3MWRmNTJhLi45OWUyNjg1IDEwMDY0NAotLS0gYS9idWlsdGluL2dyZXAuYworKysgYi9idWlsdGluL2dyZXAuYwpAQCAtMyw2ICszLDcgQEAKICAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDYgSnVuaW8gQyBIYW1hbm8KICAqLworI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJyZXBvc2l0b3J5LmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCkBAIC0yMyw2ICsyNCw3IEBACiAjaW5jbHVkZSAic3VibW9kdWxlLmgiCiAjaW5jbHVkZSAic3VibW9kdWxlLWNvbmZpZy5oIgogI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgorI2luY2x1ZGUgInBhY2tmaWxlLmgiCiAKIHN0YXRpYyBjaGFyIGNvbnN0ICogY29uc3QgZ3JlcF91c2FnZVtdID0gewogCU5fKCJnaXQgZ3JlcCBbPG9wdGlvbnM+XSBbLWVdIDxwYXR0ZXJuPiBbPHJldj4uLi5dIFtbLS1dIDxwYXRoPi4uLl0iKSwKQEAgLTMxLDcgKzMzLDYgQEAKIAogc3RhdGljIGludCByZWN1cnNlX3N1Ym1vZHVsZXM7CiAKLSNkZWZpbmUgR1JFUF9OVU1fVEhSRUFEU19ERUZBVUxUIDgKIHN0YXRpYyBpbnQgbnVtX3RocmVhZHM7CiAKIHN0YXRpYyBwdGhyZWFkX3QgKnRocmVhZHM7CkBAIC05MCw4ICs5MSwxMSBAQAogCiBzdGF0aWMgaW50IHNraXBfZmlyc3RfbGluZTsKIAotc3RhdGljIHZvaWQgYWRkX3dvcmsoc3RydWN0IGdyZXBfb3B0ICpvcHQsIGNvbnN0IHN0cnVjdCBncmVwX3NvdXJjZSAqZ3MpCitzdGF0aWMgdm9pZCBhZGRfd29yayhzdHJ1Y3QgZ3JlcF9vcHQgKm9wdCwgc3RydWN0IGdyZXBfc291cmNlICpncykKIHsKKwlpZiAob3B0LT5iaW5hcnkgIT0gR1JFUF9CSU5BUllfVEVYVCkKKwkJZ3JlcF9zb3VyY2VfbG9hZF9kcml2ZXIoZ3MsIG9wdC0+cmVwby0+aW5kZXgpOworCiAJZ3JlcF9sb2NrKCk7CiAKIAl3aGlsZSAoKHRvZG9fZW5kKzEpICUgQVJSQVlfU0laRSh0b2RvKSA9PSB0b2RvX2RvbmUpIHsKQEAgLTk5LDkgKzEwMyw2IEBACiAJfQogCiAJdG9kb1t0b2RvX2VuZF0uc291cmNlID0gKmdzOwotCWlmIChvcHQtPmJpbmFyeSAhPSBHUkVQX0JJTkFSWV9URVhUKQotCQlncmVwX3NvdXJjZV9sb2FkX2RyaXZlcigmdG9kb1t0b2RvX2VuZF0uc291cmNlLAotCQkJCQlvcHQtPnJlcG8tPmluZGV4KTsKIAl0b2RvW3RvZG9fZW5kXS5kb25lID0gMDsKIAlzdHJidWZfcmVzZXQoJnRvZG9bdG9kb19lbmRdLm91dCk7CiAJdG9kb19lbmQgPSAodG9kb19lbmQgKyAxKSAlIEFSUkFZX1NJWkUodG9kbyk7CkBAIC0xOTksMTIgKzIwMCwxMiBAQAogCWludCBpOwogCiAJcHRocmVhZF9tdXRleF9pbml0KCZncmVwX211dGV4LCBOVUxMKTsKLQlwdGhyZWFkX211dGV4X2luaXQoJmdyZXBfcmVhZF9tdXRleCwgTlVMTCk7CiAJcHRocmVhZF9tdXRleF9pbml0KCZncmVwX2F0dHJfbXV0ZXgsIE5VTEwpOwogCXB0aHJlYWRfY29uZF9pbml0KCZjb25kX2FkZCwgTlVMTCk7CiAJcHRocmVhZF9jb25kX2luaXQoJmNvbmRfd3JpdGUsIE5VTEwpOwogCXB0aHJlYWRfY29uZF9pbml0KCZjb25kX3Jlc3VsdCwgTlVMTCk7CiAJZ3JlcF91c2VfbG9ja3MgPSAxOworCWVuYWJsZV9vYmpfcmVhZF9sb2NrKCk7CiAKIAlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRSh0b2RvKTsgaSsrKSB7CiAJCXN0cmJ1Zl9pbml0KCZ0b2RvW2ldLm91dCwgMCk7CkBAIC0yNTYsMTIgKzI1NywxMiBAQAogCWZyZWUodGhyZWFkcyk7CiAKIAlwdGhyZWFkX211dGV4X2Rlc3Ryb3koJmdyZXBfbXV0ZXgpOwotCXB0aHJlYWRfbXV0ZXhfZGVzdHJveSgmZ3JlcF9yZWFkX211dGV4KTsKIAlwdGhyZWFkX211dGV4X2Rlc3Ryb3koJmdyZXBfYXR0cl9tdXRleCk7CiAJcHRocmVhZF9jb25kX2Rlc3Ryb3koJmNvbmRfYWRkKTsKIAlwdGhyZWFkX2NvbmRfZGVzdHJveSgmY29uZF93cml0ZSk7CiAJcHRocmVhZF9jb25kX2Rlc3Ryb3koJmNvbmRfcmVzdWx0KTsKIAlncmVwX3VzZV9sb2NrcyA9IDA7CisJZGlzYWJsZV9vYmpfcmVhZF9sb2NrKCk7CiAKIAlyZXR1cm4gaGl0OwogfQpAQCAtMjk0LDE2ICsyOTUsNiBAQAogCXJldHVybiBzdDsKIH0KIAotc3RhdGljIHZvaWQgKmxvY2tfYW5kX3JlYWRfb2lkX2ZpbGUoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBlbnVtIG9iamVjdF90eXBlICp0eXBlLCB1bnNpZ25lZCBsb25nICpzaXplKQotewotCXZvaWQgKmRhdGE7Ci0KLQlncmVwX3JlYWRfbG9jaygpOwotCWRhdGEgPSByZWFkX29iamVjdF9maWxlKG9pZCwgdHlwZSwgc2l6ZSk7Ci0JZ3JlcF9yZWFkX3VubG9jaygpOwotCXJldHVybiBkYXRhOwotfQotCiBzdGF0aWMgaW50IGdyZXBfb2lkKHN0cnVjdCBncmVwX29wdCAqb3B0LCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCiAJCSAgICAgY29uc3QgY2hhciAqZmlsZW5hbWUsIGludCB0cmVlX25hbWVfbGVuLAogCQkgICAgIGNvbnN0IGNoYXIgKnBhdGgpCkBAIC0zOTMsMzkgKzM4NCw0MSBAQAogCQlleGl0KHN0YXR1cyk7CiB9CiAKLXN0YXRpYyBpbnQgZ3JlcF9jYWNoZShzdHJ1Y3QgZ3JlcF9vcHQgKm9wdCwgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCitzdGF0aWMgaW50IGdyZXBfY2FjaGUoc3RydWN0IGdyZXBfb3B0ICpvcHQsCiAJCSAgICAgIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsIGludCBjYWNoZWQpOwogc3RhdGljIGludCBncmVwX3RyZWUoc3RydWN0IGdyZXBfb3B0ICpvcHQsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCiAJCSAgICAgc3RydWN0IHRyZWVfZGVzYyAqdHJlZSwgc3RydWN0IHN0cmJ1ZiAqYmFzZSwgaW50IHRuX2xlbiwKLQkJICAgICBpbnQgY2hlY2tfYXR0ciwgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8pOworCQkgICAgIGludCBjaGVja19hdHRyKTsKIAotc3RhdGljIGludCBncmVwX3N1Ym1vZHVsZShzdHJ1Y3QgZ3JlcF9vcHQgKm9wdCwgc3RydWN0IHJlcG9zaXRvcnkgKnN1cGVycHJvamVjdCwKK3N0YXRpYyBpbnQgZ3JlcF9zdWJtb2R1bGUoc3RydWN0IGdyZXBfb3B0ICpvcHQsCiAJCQkgIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCiAJCQkgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKLQkJCSAgY29uc3QgY2hhciAqZmlsZW5hbWUsIGNvbnN0IGNoYXIgKnBhdGgpCisJCQkgIGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBjb25zdCBjaGFyICpwYXRoLCBpbnQgY2FjaGVkKQogewotCXN0cnVjdCByZXBvc2l0b3J5IHN1Ym1vZHVsZTsKKwlzdHJ1Y3QgcmVwb3NpdG9yeSBzdWJyZXBvOworCXN0cnVjdCByZXBvc2l0b3J5ICpzdXBlcnByb2plY3QgPSBvcHQtPnJlcG87CisJY29uc3Qgc3RydWN0IHN1Ym1vZHVsZSAqc3ViOworCXN0cnVjdCBncmVwX29wdCBzdWJvcHQ7CiAJaW50IGhpdDsKIAorCXN1YiA9IHN1Ym1vZHVsZV9mcm9tX3BhdGgoc3VwZXJwcm9qZWN0LCAmbnVsbF9vaWQsIHBhdGgpOworCisJaWYgKCFpc19zdWJtb2R1bGVfYWN0aXZlKHN1cGVycHJvamVjdCwgcGF0aCkpCisJCXJldHVybiAwOworCisJaWYgKHJlcG9fc3VibW9kdWxlX2luaXQoJnN1YnJlcG8sIHN1cGVycHJvamVjdCwgc3ViKSkKKwkJcmV0dXJuIDA7CisKIAkvKgotCSAqIE5FRURTV09SSzogc3VibW9kdWxlcyBmdW5jdGlvbnMgbmVlZCB0byBiZSBwcm90ZWN0ZWQgYmVjYXVzZSB0aGV5Ci0JICogYWNjZXNzIHRoZSBvYmplY3Qgc3RvcmUgdmlhIGNvbmZpZ19mcm9tX2dpdG1vZHVsZXMoKTogdGhlIGxhdHRlcgotCSAqIHVzZXMgZ2V0X29pZCgpIHdoaWNoLCBmb3Igbm93LCByZWxpZXMgb24gdGhlIGdsb2JhbCB0aGVfcmVwb3NpdG9yeQotCSAqIG9iamVjdC4KKwkgKiBORUVEU1dPUks6IHJlcG9fcmVhZF9naXRtb2R1bGVzKCkgbWlnaHQgY2FsbAorCSAqIGFkZF90b19hbHRlcm5hdGVzX21lbW9yeSgpIHZpYSBjb25maWdfZnJvbV9naXRtb2R1bGVzKCkuIFRoaXMKKwkgKiBvcGVyYXRpb24gY2F1c2VzIGEgcmFjZSBjb25kaXRpb24gd2l0aCBjb25jdXJyZW50IG9iamVjdCByZWFkaW5ncworCSAqIHBlcmZvcm1lZCBieSB0aGUgd29ya2VyIHRocmVhZHMuIFRoYXQncyB3aHkgd2UgbmVlZCBvYmpfcmVhZF9sb2NrKCkKKwkgKiBoZXJlLiBJdCBzaG91bGQgYmUgcmVtb3ZlZCBvbmNlIGl0J3Mgbm8gbG9uZ2VyIG5lY2Vzc2FyeSB0byBhZGQgdGhlCisJICogc3VicmVwbydzIG9kYnMgdG8gdGhlIGluLW1lbW9yeSBhbHRlcm5hdGVzIGxpc3QuCiAJICovCi0JZ3JlcF9yZWFkX2xvY2soKTsKLQotCWlmICghaXNfc3VibW9kdWxlX2FjdGl2ZShzdXBlcnByb2plY3QsIHBhdGgpKSB7Ci0JCWdyZXBfcmVhZF91bmxvY2soKTsKLQkJcmV0dXJuIDA7Ci0JfQotCi0JaWYgKHJlcG9fc3VibW9kdWxlX2luaXQoJnN1Ym1vZHVsZSwgc3VwZXJwcm9qZWN0LCBwYXRoKSkgewotCQlncmVwX3JlYWRfdW5sb2NrKCk7Ci0JCXJldHVybiAwOwotCX0KLQotCXJlcG9fcmVhZF9naXRtb2R1bGVzKCZzdWJtb2R1bGUpOworCW9ial9yZWFkX2xvY2soKTsKKwlyZXBvX3JlYWRfZ2l0bW9kdWxlcygmc3VicmVwbywgMCk7CiAKIAkvKgogCSAqIE5FRURTV09SSzogVGhpcyBhZGRzIHRoZSBzdWJtb2R1bGUncyBvYmplY3QgZGlyZWN0b3J5IHRvIHRoZSBsaXN0IG9mCkBAIC00MzcsOCArNDMwLDExIEBACiAJICogc3RvcmUgaXMgbm8gbG9uZ2VyIGdsb2JhbCBhbmQgaW5zdGVhZCBpcyBhIG1lbWJlciBvZiB0aGUgcmVwb3NpdG9yeQogCSAqIG9iamVjdC4KIAkgKi8KLQlhZGRfdG9fYWx0ZXJuYXRlc19tZW1vcnkoc3VibW9kdWxlLm9iamVjdHMtPm9iamVjdGRpcik7Ci0JZ3JlcF9yZWFkX3VubG9jaygpOworCWFkZF90b19hbHRlcm5hdGVzX21lbW9yeShzdWJyZXBvLm9iamVjdHMtPm9kYi0+cGF0aCk7CisJb2JqX3JlYWRfdW5sb2NrKCk7CisKKwltZW1jcHkoJnN1Ym9wdCwgb3B0LCBzaXplb2Yoc3Vib3B0KSk7CisJc3Vib3B0LnJlcG8gPSAmc3VicmVwbzsKIAogCWlmIChvaWQpIHsKIAkJc3RydWN0IG9iamVjdCAqb2JqZWN0OwpAQCAtNDQ3LDEzICs0NDMsMTIgQEAKIAkJdW5zaWduZWQgbG9uZyBzaXplOwogCQlzdHJ1Y3Qgc3RyYnVmIGJhc2UgPSBTVFJCVUZfSU5JVDsKIAorCQlvYmpfcmVhZF9sb2NrKCk7CiAJCW9iamVjdCA9IHBhcnNlX29iamVjdF9vcl9kaWUob2lkLCBvaWRfdG9faGV4KG9pZCkpOwotCi0JCWdyZXBfcmVhZF9sb2NrKCk7Ci0JCWRhdGEgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZSgmb2JqZWN0LT5vaWQsIHRyZWVfdHlwZSwKKwkJb2JqX3JlYWRfdW5sb2NrKCk7CisJCWRhdGEgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZSgmc3VicmVwbywKKwkJCQkJCSAgJm9iamVjdC0+b2lkLCB0cmVlX3R5cGUsCiAJCQkJCQkgICZzaXplLCBOVUxMKTsKLQkJZ3JlcF9yZWFkX3VubG9jaygpOwotCiAJCWlmICghZGF0YSkKIAkJCWRpZShfKCJ1bmFibGUgdG8gcmVhZCB0cmVlICglcykiKSwgb2lkX3RvX2hleCgmb2JqZWN0LT5vaWQpKTsKIApAQCAtNDYxLDIxICs0NTYsMjIgQEAKIAkJc3RyYnVmX2FkZGNoKCZiYXNlLCAnLycpOwogCiAJCWluaXRfdHJlZV9kZXNjKCZ0cmVlLCBkYXRhLCBzaXplKTsKLQkJaGl0ID0gZ3JlcF90cmVlKG9wdCwgcGF0aHNwZWMsICZ0cmVlLCAmYmFzZSwgYmFzZS5sZW4sCi0JCQkJb2JqZWN0LT50eXBlID09IE9CSl9DT01NSVQsICZzdWJtb2R1bGUpOworCQloaXQgPSBncmVwX3RyZWUoJnN1Ym9wdCwgcGF0aHNwZWMsICZ0cmVlLCAmYmFzZSwgYmFzZS5sZW4sCisJCQkJb2JqZWN0LT50eXBlID09IE9CSl9DT01NSVQpOwogCQlzdHJidWZfcmVsZWFzZSgmYmFzZSk7CiAJCWZyZWUoZGF0YSk7CiAJfSBlbHNlIHsKLQkJaGl0ID0gZ3JlcF9jYWNoZShvcHQsICZzdWJtb2R1bGUsIHBhdGhzcGVjLCAxKTsKKwkJaGl0ID0gZ3JlcF9jYWNoZSgmc3Vib3B0LCBwYXRoc3BlYywgY2FjaGVkKTsKIAl9CiAKLQlyZXBvX2NsZWFyKCZzdWJtb2R1bGUpOworCXJlcG9fY2xlYXIoJnN1YnJlcG8pOwogCXJldHVybiBoaXQ7CiB9CiAKLXN0YXRpYyBpbnQgZ3JlcF9jYWNoZShzdHJ1Y3QgZ3JlcF9vcHQgKm9wdCwgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCitzdGF0aWMgaW50IGdyZXBfY2FjaGUoc3RydWN0IGdyZXBfb3B0ICpvcHQsCiAJCSAgICAgIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsIGludCBjYWNoZWQpCiB7CisJc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8gPSBvcHQtPnJlcG87CiAJaW50IGhpdCA9IDA7CiAJaW50IG5yOwogCXN0cnVjdCBzdHJidWYgbmFtZSA9IFNUUkJVRl9JTklUOwpAQCAtNTEzLDcgKzUwOSw4IEBACiAJCQl9CiAJCX0gZWxzZSBpZiAocmVjdXJzZV9zdWJtb2R1bGVzICYmIFNfSVNHSVRMSU5LKGNlLT5jZV9tb2RlKSAmJgogCQkJICAgc3VibW9kdWxlX3BhdGhfbWF0Y2gocmVwby0+aW5kZXgsIHBhdGhzcGVjLCBuYW1lLmJ1ZiwgTlVMTCkpIHsKLQkJCWhpdCB8PSBncmVwX3N1Ym1vZHVsZShvcHQsIHJlcG8sIHBhdGhzcGVjLCBOVUxMLCBjZS0+bmFtZSwgY2UtPm5hbWUpOworCQkJaGl0IHw9IGdyZXBfc3VibW9kdWxlKG9wdCwgcGF0aHNwZWMsIE5VTEwsIGNlLT5uYW1lLAorCQkJCQkgICAgICBjZS0+bmFtZSwgY2FjaGVkKTsKIAkJfSBlbHNlIHsKIAkJCWNvbnRpbnVlOwogCQl9CkBAIC01MzUsOCArNTMyLDkgQEAKIAogc3RhdGljIGludCBncmVwX3RyZWUoc3RydWN0IGdyZXBfb3B0ICpvcHQsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCiAJCSAgICAgc3RydWN0IHRyZWVfZGVzYyAqdHJlZSwgc3RydWN0IHN0cmJ1ZiAqYmFzZSwgaW50IHRuX2xlbiwKLQkJICAgICBpbnQgY2hlY2tfYXR0ciwgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8pCisJCSAgICAgaW50IGNoZWNrX2F0dHIpCiB7CisJc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8gPSBvcHQtPnJlcG87CiAJaW50IGhpdCA9IDA7CiAJZW51bSBpbnRlcmVzdGluZyBtYXRjaCA9IGVudHJ5X25vdF9pbnRlcmVzdGluZzsKIAlzdHJ1Y3QgbmFtZV9lbnRyeSBlbnRyeTsKQEAgLTU1Myw3ICs1NTEsOCBAQAogCiAJCWlmIChtYXRjaCAhPSBhbGxfZW50cmllc19pbnRlcmVzdGluZykgewogCQkJc3RyYnVmX2FkZHN0cigmbmFtZSwgYmFzZS0+YnVmICsgdG5fbGVuKTsKLQkJCW1hdGNoID0gdHJlZV9lbnRyeV9pbnRlcmVzdGluZygmZW50cnksICZuYW1lLAorCQkJbWF0Y2ggPSB0cmVlX2VudHJ5X2ludGVyZXN0aW5nKHJlcG8tPmluZGV4LAorCQkJCQkJICAgICAgICZlbnRyeSwgJm5hbWUsCiAJCQkJCQkgICAgICAgMCwgcGF0aHNwZWMpOwogCQkJc3RyYnVmX3NldGxlbigmbmFtZSwgbmFtZV9iYXNlX2xlbik7CiAKQEAgLTU2Niw3ICs1NjUsNyBAQAogCQlzdHJidWZfYWRkKGJhc2UsIGVudHJ5LnBhdGgsIHRlX2xlbik7CiAKIAkJaWYgKFNfSVNSRUcoZW50cnkubW9kZSkpIHsKLQkJCWhpdCB8PSBncmVwX29pZChvcHQsIGVudHJ5Lm9pZCwgYmFzZS0+YnVmLCB0bl9sZW4sCisJCQloaXQgfD0gZ3JlcF9vaWQob3B0LCAmZW50cnkub2lkLCBiYXNlLT5idWYsIHRuX2xlbiwKIAkJCQkJIGNoZWNrX2F0dHIgPyBiYXNlLT5idWYgKyB0bl9sZW4gOiBOVUxMKTsKIAkJfSBlbHNlIGlmIChTX0lTRElSKGVudHJ5Lm1vZGUpKSB7CiAJCQllbnVtIG9iamVjdF90eXBlIHR5cGU7CkBAIC01NzQsMTkgKzU3MywyMCBAQAogCQkJdm9pZCAqZGF0YTsKIAkJCXVuc2lnbmVkIGxvbmcgc2l6ZTsKIAotCQkJZGF0YSA9IGxvY2tfYW5kX3JlYWRfb2lkX2ZpbGUoZW50cnkub2lkLCAmdHlwZSwgJnNpemUpOworCQkJZGF0YSA9IHJlYWRfb2JqZWN0X2ZpbGUoJmVudHJ5Lm9pZCwgJnR5cGUsICZzaXplKTsKIAkJCWlmICghZGF0YSkKIAkJCQlkaWUoXygidW5hYmxlIHRvIHJlYWQgdHJlZSAoJXMpIiksCi0JCQkJICAgIG9pZF90b19oZXgoZW50cnkub2lkKSk7CisJCQkJICAgIG9pZF90b19oZXgoJmVudHJ5Lm9pZCkpOwogCiAJCQlzdHJidWZfYWRkY2goYmFzZSwgJy8nKTsKIAkJCWluaXRfdHJlZV9kZXNjKCZzdWIsIGRhdGEsIHNpemUpOwogCQkJaGl0IHw9IGdyZXBfdHJlZShvcHQsIHBhdGhzcGVjLCAmc3ViLCBiYXNlLCB0bl9sZW4sCi0JCQkJCSBjaGVja19hdHRyLCByZXBvKTsKKwkJCQkJIGNoZWNrX2F0dHIpOwogCQkJZnJlZShkYXRhKTsKIAkJfSBlbHNlIGlmIChyZWN1cnNlX3N1Ym1vZHVsZXMgJiYgU19JU0dJVExJTksoZW50cnkubW9kZSkpIHsKLQkJCWhpdCB8PSBncmVwX3N1Ym1vZHVsZShvcHQsIHJlcG8sIHBhdGhzcGVjLCBlbnRyeS5vaWQsCi0JCQkJCSAgICAgIGJhc2UtPmJ1ZiwgYmFzZS0+YnVmICsgdG5fbGVuKTsKKwkJCWhpdCB8PSBncmVwX3N1Ym1vZHVsZShvcHQsIHBhdGhzcGVjLCAmZW50cnkub2lkLAorCQkJCQkgICAgICBiYXNlLT5idWYsIGJhc2UtPmJ1ZiArIHRuX2xlbiwKKwkJCQkJICAgICAgMSk7IC8qIGlnbm9yZWQgKi8KIAkJfQogCiAJCXN0cmJ1Zl9zZXRsZW4oYmFzZSwgb2xkX2Jhc2VsZW4pOwpAQCAtNjExLDExICs2MTEsOSBAQAogCQlzdHJ1Y3Qgc3RyYnVmIGJhc2U7CiAJCWludCBoaXQsIGxlbjsKIAotCQlncmVwX3JlYWRfbG9jaygpOwotCQlkYXRhID0gcmVhZF9vYmplY3Rfd2l0aF9yZWZlcmVuY2UoJm9iai0+b2lkLCB0cmVlX3R5cGUsCisJCWRhdGEgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZShvcHQtPnJlcG8sCisJCQkJCQkgICZvYmotPm9pZCwgdHJlZV90eXBlLAogCQkJCQkJICAmc2l6ZSwgTlVMTCk7Ci0JCWdyZXBfcmVhZF91bmxvY2soKTsKLQogCQlpZiAoIWRhdGEpCiAJCQlkaWUoXygidW5hYmxlIHRvIHJlYWQgdHJlZSAoJXMpIiksIG9pZF90b19oZXgoJm9iai0+b2lkKSk7CiAKQEAgLTYyNyw3ICs2MjUsNyBAQAogCQl9CiAJCWluaXRfdHJlZV9kZXNjKCZ0cmVlLCBkYXRhLCBzaXplKTsKIAkJaGl0ID0gZ3JlcF90cmVlKG9wdCwgcGF0aHNwZWMsICZ0cmVlLCAmYmFzZSwgYmFzZS5sZW4sCi0JCQkJb2JqLT50eXBlID09IE9CSl9DT01NSVQsIHRoZV9yZXBvc2l0b3J5KTsKKwkJCQlvYmotPnR5cGUgPT0gT0JKX0NPTU1JVCk7CiAJCXN0cmJ1Zl9yZWxlYXNlKCZiYXNlKTsKIAkJZnJlZShkYXRhKTsKIAkJcmV0dXJuIGhpdDsKQEAgLTY0NCwxMyArNjQyLDE4IEBACiAKIAlmb3IgKGkgPSAwOyBpIDwgbnI7IGkrKykgewogCQlzdHJ1Y3Qgb2JqZWN0ICpyZWFsX29iajsKLQkJcmVhbF9vYmogPSBkZXJlZl90YWcodGhlX3JlcG9zaXRvcnksIGxpc3QtPm9iamVjdHNbaV0uaXRlbSwKKworCQlvYmpfcmVhZF9sb2NrKCk7CisJCXJlYWxfb2JqID0gZGVyZWZfdGFnKG9wdC0+cmVwbywgbGlzdC0+b2JqZWN0c1tpXS5pdGVtLAogCQkJCSAgICAgTlVMTCwgMCk7CisJCW9ial9yZWFkX3VubG9jaygpOwogCiAJCS8qIGxvYWQgdGhlIGdpdG1vZHVsZXMgZmlsZSBmb3IgdGhpcyByZXYgKi8KIAkJaWYgKHJlY3Vyc2Vfc3VibW9kdWxlcykgewotCQkJc3VibW9kdWxlX2ZyZWUodGhlX3JlcG9zaXRvcnkpOworCQkJc3VibW9kdWxlX2ZyZWUob3B0LT5yZXBvKTsKKwkJCW9ial9yZWFkX2xvY2soKTsKIAkJCWdpdG1vZHVsZXNfY29uZmlnX29pZCgmcmVhbF9vYmotPm9pZCk7CisJCQlvYmpfcmVhZF91bmxvY2soKTsKIAkJfQogCQlpZiAoZ3JlcF9vYmplY3Qob3B0LCBwYXRoc3BlYywgcmVhbF9vYmosIGxpc3QtPm9iamVjdHNbaV0ubmFtZSwKIAkJCQlsaXN0LT5vYmplY3RzW2ldLnBhdGgpKSB7CkBAIC02NzQsOSArNjc3LDkgQEAKIAlpZiAoZXhjX3N0ZCkKIAkJc2V0dXBfc3RhbmRhcmRfZXhjbHVkZXMoJmRpcik7CiAKLQlmaWxsX2RpcmVjdG9yeSgmZGlyLCAmdGhlX2luZGV4LCBwYXRoc3BlYyk7CisJZmlsbF9kaXJlY3RvcnkoJmRpciwgb3B0LT5yZXBvLT5pbmRleCwgcGF0aHNwZWMpOwogCWZvciAoaSA9IDA7IGkgPCBkaXIubnI7IGkrKykgewotCQlpZiAoIWRpcl9wYXRoX21hdGNoKCZ0aGVfaW5kZXgsIGRpci5lbnRyaWVzW2ldLCBwYXRoc3BlYywgMCwgTlVMTCkpCisJCWlmICghZGlyX3BhdGhfbWF0Y2gob3B0LT5yZXBvLT5pbmRleCwgZGlyLmVudHJpZXNbaV0sIHBhdGhzcGVjLCAwLCBOVUxMKSkKIAkJCWNvbnRpbnVlOwogCQloaXQgfD0gZ3JlcF9maWxlKG9wdCwgZGlyLmVudHJpZXNbaV0tPm5hbWUpOwogCQlpZiAoaGl0ICYmIG9wdC0+c3RhdHVzX29ubHkpCkBAIC05NDMsNiArOTQ2LDkgQEAKIAkJCS8qIGRpZSB0aGUgc2FtZSB3YXkgYXMgaWYgd2UgZGlkIGl0IGF0IHRoZSBiZWdpbm5pbmcgKi8KIAkJCXNldHVwX2dpdF9kaXJlY3RvcnkoKTsKIAl9CisJLyogSWdub3JlIC0tcmVjdXJzZS1zdWJtb2R1bGVzIGlmIC0tbm8taW5kZXggaXMgZ2l2ZW4gb3IgaW1wbGllZCAqLworCWlmICghdXNlX2luZGV4KQorCQlyZWN1cnNlX3N1Ym1vZHVsZXMgPSAwOwogCiAJLyoKIAkgKiBza2lwIGEgLS0gc2VwYXJhdG9yOyB3ZSBrbm93IGl0IGNhbm5vdCBiZQpAQCAtMTAxNCw3ICsxMDIwLDggQEAKIAkJCWJyZWFrOwogCQl9CiAKLQkJaWYgKGdldF9vaWRfd2l0aF9jb250ZXh0KGFyZywgR0VUX09JRF9SRUNPUkRfUEFUSCwKKwkJaWYgKGdldF9vaWRfd2l0aF9jb250ZXh0KHRoZV9yZXBvc2l0b3J5LCBhcmcsCisJCQkJCSBHRVRfT0lEX1JFQ09SRF9QQVRILAogCQkJCQkgJm9pZCwgJm9jKSkgewogCQkJaWYgKHNlZW5fZGFzaGRhc2gpCiAJCQkJZGllKF8oInVuYWJsZSB0byByZXNvbHZlIHJldmlzaW9uOiAlcyIpLCBhcmcpOwpAQCAtMTA0Niw3ICsxMDUzLDEwIEBACiAJcGF0aHNwZWMucmVjdXJzaXZlID0gMTsKIAlwYXRoc3BlYy5yZWN1cnNlX3N1Ym1vZHVsZXMgPSAhIXJlY3Vyc2Vfc3VibW9kdWxlczsKIAotCWlmIChsaXN0Lm5yIHx8IGNhY2hlZCB8fCBzaG93X2luX3BhZ2VyKSB7CisJaWYgKHJlY3Vyc2Vfc3VibW9kdWxlcyAmJiB1bnRyYWNrZWQpCisJCWRpZShfKCItLXVudHJhY2tlZCBub3Qgc3VwcG9ydGVkIHdpdGggLS1yZWN1cnNlLXN1Ym1vZHVsZXMiKSk7CisKKwlpZiAoc2hvd19pbl9wYWdlcikgewogCQlpZiAobnVtX3RocmVhZHMgPiAxKQogCQkJd2FybmluZyhfKCJpbnZhbGlkIG9wdGlvbiBjb21iaW5hdGlvbiwgaWdub3JpbmcgLS10aHJlYWRzIikpOwogCQludW1fdGhyZWFkcyA9IDE7CkBAIC0xMDU2LDcgKzEwNjYsNyBAQAogCX0gZWxzZSBpZiAobnVtX3RocmVhZHMgPCAwKQogCQlkaWUoXygiaW52YWxpZCBudW1iZXIgb2YgdGhyZWFkcyBzcGVjaWZpZWQgKCVkKSIpLCBudW1fdGhyZWFkcyk7CiAJZWxzZSBpZiAobnVtX3RocmVhZHMgPT0gMCkKLQkJbnVtX3RocmVhZHMgPSBIQVZFX1RIUkVBRFMgPyBHUkVQX05VTV9USFJFQURTX0RFRkFVTFQgOiAxOworCQludW1fdGhyZWFkcyA9IEhBVkVfVEhSRUFEUyA/IG9ubGluZV9jcHVzKCkgOiAxOwogCiAJaWYgKG51bV90aHJlYWRzID4gMSkgewogCQlpZiAoIUhBVkVfVEhSRUFEUykKQEAgLTEwNjUsNiArMTA3NSwxNyBAQAogCQkgICAgJiYgKG9wdC5wcmVfY29udGV4dCB8fCBvcHQucG9zdF9jb250ZXh0IHx8CiAJCQlvcHQuZmlsZV9icmVhayB8fCBvcHQuZnVuY2JvZHkpKQogCQkJc2tpcF9maXJzdF9saW5lID0gMTsKKworCQkvKgorCQkgKiBQcmUtcmVhZCBnaXRtb2R1bGVzIChpZiBub3QgcmVhZCBhbHJlYWR5KSBhbmQgZm9yY2UgZWFnZXIKKwkJICogaW5pdGlhbGl6YXRpb24gb2YgcGFja2VkX2dpdCB0byBwcmV2ZW50IHJhY3kgbGF6eQorCQkgKiByZWFkaW5nL2luaXRpYWxpemF0aW9uIG9uY2Ugd29ya2VyIHRocmVhZHMgYXJlIHN0YXJ0ZWQuCisJCSAqLworCQlpZiAocmVjdXJzZV9zdWJtb2R1bGVzKQorCQkJcmVwb19yZWFkX2dpdG1vZHVsZXModGhlX3JlcG9zaXRvcnksIDEpOworCQlpZiAoc3RhcnR1cF9pbmZvLT5oYXZlX3JlcG9zaXRvcnkpCisJCQkodm9pZClnZXRfcGFja2VkX2dpdCh0aGVfcmVwb3NpdG9yeSk7CisKIAkJc3RhcnRfdGhyZWFkcygmb3B0KTsKIAl9IGVsc2UgewogCQkvKgpAQCAtMTA5NCwxNCArMTExNSwxMSBAQAogCQkJc3RyYnVmX2FkZGYoJmJ1ZiwgIisvJXMlcyIsCiAJCQkJCXN0cmNtcCgibGVzcyIsIHBhZ2VyKSA/ICIiIDogIioiLAogCQkJCQlvcHQucGF0dGVybl9saXN0LT5wYXR0ZXJuKTsKLQkJCXN0cmluZ19saXN0X2FwcGVuZCgmcGF0aF9saXN0LCBidWYuYnVmKTsKLQkJCXN0cmJ1Zl9kZXRhY2goJmJ1ZiwgTlVMTCk7CisJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJnBhdGhfbGlzdCwKKwkJCQkJICAgc3RyYnVmX2RldGFjaCgmYnVmLCBOVUxMKSk7CiAJCX0KIAl9CiAKLQlpZiAocmVjdXJzZV9zdWJtb2R1bGVzICYmICghdXNlX2luZGV4IHx8IHVudHJhY2tlZCkpCi0JCWRpZShfKCJvcHRpb24gbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIikpOwotCiAJaWYgKCFzaG93X2luX3BhZ2VyICYmICFvcHQuc3RhdHVzX29ubHkpCiAJCXNldHVwX3BhZ2VyKCk7CiAKQEAgLTExMTcsNyArMTEzNSw3IEBACiAJCWlmICghY2FjaGVkKQogCQkJc2V0dXBfd29ya190cmVlKCk7CiAKLQkJaGl0ID0gZ3JlcF9jYWNoZSgmb3B0LCB0aGVfcmVwb3NpdG9yeSwgJnBhdGhzcGVjLCBjYWNoZWQpOworCQloaXQgPSBncmVwX2NhY2hlKCZvcHQsICZwYXRoc3BlYywgY2FjaGVkKTsKIAl9IGVsc2UgewogCQlpZiAoY2FjaGVkKQogCQkJZGllKF8oImJvdGggLS1jYWNoZWQgYW5kIHRyZWVzIGFyZSBnaXZlbiIpKTsKQEAgLTExMzEsNSArMTE0OSw2IEBACiAJCXJ1bl9wYWdlcigmb3B0LCBwcmVmaXgpOwogCWNsZWFyX3BhdGhzcGVjKCZwYXRoc3BlYyk7CiAJZnJlZV9ncmVwX3BhdHRlcm5zKCZvcHQpOworCWdyZXBfZGVzdHJveSgpOwogCXJldHVybiAhaGl0OwogfQpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9oYXNoLW9iamVjdC5jIGIvYnVpbHRpbi9oYXNoLW9iamVjdC5jCmluZGV4IGQ2ZjA2ZWEuLjY0MGVmNGQgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vaGFzaC1vYmplY3QuYworKysgYi9idWlsdGluL2hhc2gtb2JqZWN0LmMKQEAgLTQwLDcgKzQwLDggQEAKIAlpZiAoZnN0YXQoZmQsICZzdCkgPCAwIHx8CiAJICAgIChsaXRlcmFsbHkKIAkgICAgID8gaGFzaF9saXRlcmFsbHkoJm9pZCwgZmQsIHR5cGUsIGZsYWdzKQotCSAgICAgOiBpbmRleF9mZCgmdGhlX2luZGV4LCAmb2lkLCBmZCwgJnN0LCB0eXBlX2Zyb21fc3RyaW5nKHR5cGUpLCBwYXRoLCBmbGFncykpKQorCSAgICAgOiBpbmRleF9mZCh0aGVfcmVwb3NpdG9yeS0+aW5kZXgsICZvaWQsIGZkLCAmc3QsCisJCQl0eXBlX2Zyb21fc3RyaW5nKHR5cGUpLCBwYXRoLCBmbGFncykpKQogCQlkaWUoKGZsYWdzICYgSEFTSF9XUklURV9PQkpFQ1QpCiAJCSAgICA/ICJVbmFibGUgdG8gYWRkICVzIHRvIGRhdGFiYXNlIgogCQkgICAgOiAiVW5hYmxlIHRvIGhhc2ggJXMiLCBwYXRoKTsKQEAgLTEwNyw3ICsxMDgsNyBAQAogCWludCBpOwogCWNvbnN0IGNoYXIgKmVycnN0ciA9IE5VTEw7CiAKLQlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBOVUxMLCBoYXNoX29iamVjdF9vcHRpb25zLAorCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgaGFzaF9vYmplY3Rfb3B0aW9ucywKIAkJCSAgICAgaGFzaF9vYmplY3RfdXNhZ2UsIDApOwogCiAJaWYgKGZsYWdzICYgSEFTSF9XUklURV9PQkpFQ1QpCmRpZmYgLS1naXQgYS9idWlsdGluL2hlbHAuYyBiL2J1aWx0aW4vaGVscC5jCmluZGV4IDc3MzlhNWMuLmU1NTkwZDcgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vaGVscC5jCisrKyBiL2J1aWx0aW4vaGVscC5jCkBAIC03MCw2ICs3MCwxMCBAQAogCQlyZXR1cm4gSEVMUF9GT1JNQVRfSU5GTzsKIAlpZiAoIXN0cmNtcChmb3JtYXQsICJ3ZWIiKSB8fCAhc3RyY21wKGZvcm1hdCwgImh0bWwiKSkKIAkJcmV0dXJuIEhFTFBfRk9STUFUX1dFQjsKKwkvKgorCSAqIFBsZWFzZSB1cGRhdGUgX2dpdF9jb25maWcoKSBpbiBnaXQtY29tcGxldGlvbi5iYXNoIHdoZW4geW91CisJICogYWRkIG5ldyBoZWxwIGZvcm1hdHMuCisJICovCiAJZGllKF8oInVucmVjb2duaXplZCBoZWxwIGZvcm1hdCAnJXMnIiksIGZvcm1hdCk7CiB9CiAKZGlmZiAtLWdpdCBhL2J1aWx0aW4vaW5kZXgtcGFjay5jIGIvYnVpbHRpbi9pbmRleC1wYWNrLmMKaW5kZXggYWMxZjRlYS4uZDk2N2QxOCAxMDA2NDQKLS0tIGEvYnVpbHRpbi9pbmRleC1wYWNrLmMKKysrIGIvYnVpbHRpbi9pbmRleC1wYWNrLmMKQEAgLTE0LDYgKzE0LDcgQEAKICNpbmNsdWRlICJ0aHJlYWQtdXRpbHMuaCIKICNpbmNsdWRlICJwYWNrZmlsZS5oIgogI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgorI2luY2x1ZGUgInByb21pc29yLXJlbW90ZS5oIgogCiBzdGF0aWMgY29uc3QgY2hhciBpbmRleF9wYWNrX3VzYWdlW10gPQogImdpdCBpbmRleC1wYWNrIFstdl0gWy1vIDxpbmRleC1maWxlPl0gWy0ta2VlcCB8IC0ta2VlcD08bXNnPl0gWy0tdmVyaWZ5XSBbLS1zdHJpY3RdICg8cGFjay1maWxlPiB8IC0tc3RkaW4gWy0tZml4LXRoaW5dIFs8cGFjay1maWxlPl0pIjsKQEAgLTIxOSw4ICsyMjAsMTYgQEAKIAl1bnNpZ25lZCBpLCBtYXgsIGZvcmVpZ25fbnIgPSAwOwogCiAJbWF4ID0gZ2V0X21heF9vYmplY3RfaW5kZXgoKTsKLQlmb3IgKGkgPSAwOyBpIDwgbWF4OyBpKyspCisKKwlpZiAodmVyYm9zZSkKKwkJcHJvZ3Jlc3MgPSBzdGFydF9kZWxheWVkX3Byb2dyZXNzKF8oIkNoZWNraW5nIG9iamVjdHMiKSwgbWF4KTsKKworCWZvciAoaSA9IDA7IGkgPCBtYXg7IGkrKykgewogCQlmb3JlaWduX25yICs9IGNoZWNrX29iamVjdChnZXRfaW5kZXhlZF9vYmplY3QoaSkpOworCQlkaXNwbGF5X3Byb2dyZXNzKHByb2dyZXNzLCBpICsgMSk7CisJfQorCisJc3RvcF9wcm9ncmVzcygmcHJvZ3Jlc3MpOwogCXJldHVybiBmb3JlaWduX25yOwogfQogCkBAIC03NDgsNyArNzU3LDggQEAKIAogCW1lbXNldCgmZGF0YSwgMCwgc2l6ZW9mKGRhdGEpKTsKIAlkYXRhLmVudHJ5ID0gZW50cnk7Ci0JZGF0YS5zdCA9IG9wZW5faXN0cmVhbSgmZW50cnktPmlkeC5vaWQsICZ0eXBlLCAmc2l6ZSwgTlVMTCk7CisJZGF0YS5zdCA9IG9wZW5faXN0cmVhbSh0aGVfcmVwb3NpdG9yeSwgJmVudHJ5LT5pZHgub2lkLCAmdHlwZSwgJnNpemUsCisJCQkgICAgICAgTlVMTCk7CiAJaWYgKCFkYXRhLnN0KQogCQlyZXR1cm4gLTE7CiAJaWYgKHNpemUgIT0gZW50cnktPnNpemUgfHwgdHlwZSAhPSBlbnRyeS0+dHlwZSkKQEAgLTc3Miw3ICs3ODIsNyBAQAogCWlmIChzdGFydHVwX2luZm8tPmhhdmVfcmVwb3NpdG9yeSkgewogCQlyZWFkX2xvY2soKTsKIAkJY29sbGlzaW9uX3Rlc3RfbmVlZGVkID0KLQkJCWhhc19zaGExX2ZpbGVfd2l0aF9mbGFncyhvaWQtPmhhc2gsIE9CSkVDVF9JTkZPX1FVSUNLKTsKKwkJCWhhc19vYmplY3RfZmlsZV93aXRoX2ZsYWdzKG9pZCwgT0JKRUNUX0lORk9fUVVJQ0spOwogCQlyZWFkX3VubG9jaygpOwogCX0KIApAQCAtOTM5LDcgKzk0OSw3IEBACiAJZnJlZShkZWx0YV9kYXRhKTsKIAlpZiAoIXJlc3VsdC0+ZGF0YSkKIAkJYmFkX29iamVjdChkZWx0YV9vYmotPmlkeC5vZmZzZXQsIF8oImZhaWxlZCB0byBhcHBseSBkZWx0YSIpKTsKLQloYXNoX29iamVjdF9maWxlKHJlc3VsdC0+ZGF0YSwgcmVzdWx0LT5zaXplLAorCWhhc2hfb2JqZWN0X2ZpbGUodGhlX2hhc2hfYWxnbywgcmVzdWx0LT5kYXRhLCByZXN1bHQtPnNpemUsCiAJCQkgdHlwZV9uYW1lKGRlbHRhX29iai0+cmVhbF90eXBlKSwgJmRlbHRhX29iai0+aWR4Lm9pZCk7CiAJc2hhMV9vYmplY3QocmVzdWx0LT5kYXRhLCBOVUxMLCByZXN1bHQtPnNpemUsIGRlbHRhX29iai0+cmVhbF90eXBlLAogCQkgICAgJmRlbHRhX29iai0+aWR4Lm9pZCk7CkBAIC05OTQsNyArMTAwNCw5IEBACiAKIAkJaWYgKCFjb21wYXJlX2FuZF9zd2FwX3R5cGUoJmNoaWxkLT5yZWFsX3R5cGUsIE9CSl9SRUZfREVMVEEsCiAJCQkJCSAgIGJhc2UtPm9iai0+cmVhbF90eXBlKSkKLQkJCUJVRygiY2hpbGQtPnJlYWxfdHlwZSAhPSBPQkpfUkVGX0RFTFRBIik7CisJCQlkaWUoIlJFRl9ERUxUQSBhdCBvZmZzZXQgJSJQUkl1TUFYIiBhbHJlYWR5IHJlc29sdmVkIChkdXBsaWNhdGUgYmFzZSAlcz8pIiwKKwkJCSAgICAodWludG1heF90KWNoaWxkLT5pZHgub2Zmc2V0LAorCQkJICAgIG9pZF90b19oZXgoJmJhc2UtPm9iai0+aWR4Lm9pZCkpOwogCiAJCXJlc29sdmVfZGVsdGEoY2hpbGQsIGJhc2UsIHJlc3VsdCk7CiAJCWlmIChiYXNlLT5yZWZfZmlyc3QgPT0gYmFzZS0+cmVmX2xhc3QgJiYgYmFzZS0+b2ZzX2xhc3QgPT0gLTEpCkBAIC0xMzQzLDYgKzEzNTUsMjUgQEAKIAkJc29ydGVkX2J5X3Bvc1tpXSA9ICZyZWZfZGVsdGFzW2ldOwogCVFTT1JUKHNvcnRlZF9ieV9wb3MsIG5yX3JlZl9kZWx0YXMsIGRlbHRhX3Bvc19jb21wYXJlKTsKIAorCWlmIChoYXNfcHJvbWlzb3JfcmVtb3RlKCkpIHsKKwkJLyoKKwkJICogUHJlZmV0Y2ggdGhlIGRlbHRhIGJhc2VzLgorCQkgKi8KKwkJc3RydWN0IG9pZF9hcnJheSB0b19mZXRjaCA9IE9JRF9BUlJBWV9JTklUOworCQlmb3IgKGkgPSAwOyBpIDwgbnJfcmVmX2RlbHRhczsgaSsrKSB7CisJCQlzdHJ1Y3QgcmVmX2RlbHRhX2VudHJ5ICpkID0gc29ydGVkX2J5X3Bvc1tpXTsKKwkJCWlmICghb2lkX29iamVjdF9pbmZvX2V4dGVuZGVkKHRoZV9yZXBvc2l0b3J5LCAmZC0+b2lkLAorCQkJCQkJICAgICAgTlVMTCwKKwkJCQkJCSAgICAgIE9CSkVDVF9JTkZPX0ZPUl9QUkVGRVRDSCkpCisJCQkJY29udGludWU7CisJCQlvaWRfYXJyYXlfYXBwZW5kKCZ0b19mZXRjaCwgJmQtPm9pZCk7CisJCX0KKwkJaWYgKHRvX2ZldGNoLm5yKQorCQkJcHJvbWlzb3JfcmVtb3RlX2dldF9kaXJlY3QodGhlX3JlcG9zaXRvcnksCisJCQkJCQkgICB0b19mZXRjaC5vaWQsIHRvX2ZldGNoLm5yKTsKKwkJb2lkX2FycmF5X2NsZWFyKCZ0b19mZXRjaCk7CisJfQorCiAJZm9yIChpID0gMDsgaSA8IG5yX3JlZl9kZWx0YXM7IGkrKykgewogCQlzdHJ1Y3QgcmVmX2RlbHRhX2VudHJ5ICpkID0gc29ydGVkX2J5X3Bvc1tpXTsKIAkJZW51bSBvYmplY3RfdHlwZSB0eXBlOwpAQCAtMTM1NSw4ICsxMzg2LDkgQEAKIAkJaWYgKCFiYXNlX29iai0+ZGF0YSkKIAkJCWNvbnRpbnVlOwogCi0JCWlmIChjaGVja19vYmplY3Rfc2lnbmF0dXJlKCZkLT5vaWQsIGJhc2Vfb2JqLT5kYXRhLAotCQkJCWJhc2Vfb2JqLT5zaXplLCB0eXBlX25hbWUodHlwZSkpKQorCQlpZiAoY2hlY2tfb2JqZWN0X3NpZ25hdHVyZSh0aGVfcmVwb3NpdG9yeSwgJmQtPm9pZCwKKwkJCQkJICAgYmFzZV9vYmotPmRhdGEsIGJhc2Vfb2JqLT5zaXplLAorCQkJCQkgICB0eXBlX25hbWUodHlwZSkpKQogCQkJZGllKF8oImxvY2FsIG9iamVjdCAlcyBpcyBjb3JydXB0IiksIG9pZF90b19oZXgoJmQtPm9pZCkpOwogCQliYXNlX29iai0+b2JqID0gYXBwZW5kX29ial90b19wYWNrKGYsIGQtPm9pZC5oYXNoLAogCQkJCQliYXNlX29iai0+ZGF0YSwgYmFzZV9vYmotPnNpemUsIHR5cGUpOwpAQCAtMTQ2MiwxMSArMTQ5NCwxMSBAQAogCX0KIAogCWlmICghZnJvbV9zdGRpbikgewotCQlwcmludGYoIiVzXG4iLCBzaGExX3RvX2hleChoYXNoKSk7CisJCXByaW50ZigiJXNcbiIsIGhhc2hfdG9faGV4KGhhc2gpKTsKIAl9IGVsc2UgewogCQlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCi0JCXN0cmJ1Zl9hZGRmKCZidWYsICIlc1x0JXNcbiIsIHJlcG9ydCwgc2hhMV90b19oZXgoaGFzaCkpOworCQlzdHJidWZfYWRkZigmYnVmLCAiJXNcdCVzXG4iLCByZXBvcnQsIGhhc2hfdG9faGV4KGhhc2gpKTsKIAkJd3JpdGVfb3JfZGllKDEsIGJ1Zi5idWYsIGJ1Zi5sZW4pOwogCQlzdHJidWZfcmVsZWFzZSgmYnVmKTsKIApAQCAtMTY0Miw4ICsxNjc0LDEwIEBACiAJaW50IHJlcG9ydF9lbmRfb2ZfaW5wdXQgPSAwOwogCiAJLyoKLQkgKiBpbmRleC1wYWNrIG5ldmVyIG5lZWRzIHRvIGZldGNoIG1pc3Npbmcgb2JqZWN0cywgc2luY2UgaXQgb25seQotCSAqIGFjY2Vzc2VzIHRoZSByZXBvIHRvIGRvIGhhc2ggY29sbGlzaW9uIGNoZWNrcworCSAqIGluZGV4LXBhY2sgbmV2ZXIgbmVlZHMgdG8gZmV0Y2ggbWlzc2luZyBvYmplY3RzIGV4Y2VwdCB3aGVuCisJICogUkVGX0RFTFRBIGJhc2VzIGFyZSBtaXNzaW5nICh3aGljaCBhcmUgZXhwbGljaXRseSBoYW5kbGVkKS4gSXQgb25seQorCSAqIGFjY2Vzc2VzIHRoZSByZXBvIHRvIGRvIGhhc2ggY29sbGlzaW9uIGNoZWNrcyBhbmQgdG8gY2hlY2sgd2hpY2gKKwkgKiBSRUZfREVMVEEgYmFzZXMgbmVlZCB0byBiZSBmZXRjaGVkLgogCSAqLwogCWZldGNoX2lmX21pc3NpbmcgPSAwOwogCmRpZmYgLS1naXQgYS9idWlsdGluL2luaXQtZGIuYyBiL2J1aWx0aW4vaW5pdC1kYi5jCmluZGV4IDQxZmFmZmQuLjViZjYxYTcgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vaW5pdC1kYi5jCisrKyBiL2J1aWx0aW4vaW5pdC1kYi5jCkBAIC05Niw3ICs5Niw3IEBACiAJc3RydWN0IHN0cmJ1ZiBwYXRoID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHN0cmJ1ZiB0ZW1wbGF0ZV9wYXRoID0gU1RSQlVGX0lOSVQ7CiAJc2l6ZV90IHRlbXBsYXRlX2xlbjsKLQlzdHJ1Y3QgcmVwb3NpdG9yeV9mb3JtYXQgdGVtcGxhdGVfZm9ybWF0OworCXN0cnVjdCByZXBvc2l0b3J5X2Zvcm1hdCB0ZW1wbGF0ZV9mb3JtYXQgPSBSRVBPU0lUT1JZX0ZPUk1BVF9JTklUOwogCXN0cnVjdCBzdHJidWYgZXJyID0gU1RSQlVGX0lOSVQ7CiAJRElSICpkaXI7CiAJY2hhciAqdG9fZnJlZSA9IE5VTEw7CkBAIC0xNDgsNiArMTQ4LDcgQEAKIAlmcmVlKHRvX2ZyZWUpOwogCXN0cmJ1Zl9yZWxlYXNlKCZwYXRoKTsKIAlzdHJidWZfcmVsZWFzZSgmdGVtcGxhdGVfcGF0aCk7CisJY2xlYXJfcmVwb3NpdG9yeV9mb3JtYXQoJnRlbXBsYXRlX2Zvcm1hdCk7CiB9CiAKIHN0YXRpYyBpbnQgZ2l0X2luaXRfZGJfY29uZmlnKGNvbnN0IGNoYXIgKmssIGNvbnN0IGNoYXIgKnYsIHZvaWQgKmNiKQpAQCAtMTU1LDYgKzE1Niw5IEBACiAJaWYgKCFzdHJjbXAoaywgImluaXQudGVtcGxhdGVkaXIiKSkKIAkJcmV0dXJuIGdpdF9jb25maWdfcGF0aG5hbWUoJmluaXRfZGJfdGVtcGxhdGVfZGlyLCBrLCB2KTsKIAorCWlmIChzdGFydHNfd2l0aChrLCAiY29yZS4iKSkKKwkJcmV0dXJuIHBsYXRmb3JtX2NvcmVfY29uZmlnKGssIHYsIGNiKTsKKwogCXJldHVybiAwOwogfQogCkBAIC0xODUsNiArMTg5LDcgQEAKIAlzdHJ1Y3Qgc3RyYnVmIGVyciA9IFNUUkJVRl9JTklUOwogCiAJLyogSnVzdCBsb29rIGZvciBgaW5pdC50ZW1wbGF0ZWRpcmAgKi8KKwlpbml0X2RiX3RlbXBsYXRlX2RpciA9IE5VTEw7IC8qIHJlLXNldCBpbiBjYXNlIGl0IHdhcyBzZXQgYmVmb3JlICovCiAJZ2l0X2NvbmZpZyhnaXRfaW5pdF9kYl9jb25maWcsIE5VTEwpOwogCiAJLyoKQEAgLTM1MSwxNiArMzU2LDE5IEBACiAJCWlmICghZXhpc3Rfb2sgJiYgIXN0YXQocmVhbF9naXRfZGlyLCAmc3QpKQogCQkJZGllKF8oIiVzIGFscmVhZHkgZXhpc3RzIiksIHJlYWxfZ2l0X2Rpcik7CiAKLQkJc2V0X2dpdF9kaXIocmVhbF9wYXRoKHJlYWxfZ2l0X2RpcikpOworCQlzZXRfZ2l0X2RpcihyZWFsX2dpdF9kaXIsIDEpOwogCQlnaXRfZGlyID0gZ2V0X2dpdF9kaXIoKTsKIAkJc2VwYXJhdGVfZ2l0X2RpcihnaXRfZGlyLCBvcmlnaW5hbF9naXRfZGlyKTsKIAl9CiAJZWxzZSB7Ci0JCXNldF9naXRfZGlyKHJlYWxfcGF0aChnaXRfZGlyKSk7CisJCXNldF9naXRfZGlyKGdpdF9kaXIsIDEpOwogCQlnaXRfZGlyID0gZ2V0X2dpdF9kaXIoKTsKIAl9CiAJc3RhcnR1cF9pbmZvLT5oYXZlX3JlcG9zaXRvcnkgPSAxOwogCisJLyogSnVzdCBsb29rIGZvciBgY29yZS5oaWRlZG90ZmlsZXNgICovCisJZ2l0X2NvbmZpZyhnaXRfaW5pdF9kYl9jb25maWcsIE5VTEwpOworCiAJc2FmZV9jcmVhdGVfZGlyKGdpdF9kaXIsIDApOwogCiAJaW5pdF9pc19iYXJlX3JlcG9zaXRvcnkgPSBpc19iYXJlX3JlcG9zaXRvcnkoKTsKQEAgLTQ5NCw2ICs1MDIsOSBAQAogCWlmIChyZWFsX2dpdF9kaXIgJiYgIWlzX2Fic29sdXRlX3BhdGgocmVhbF9naXRfZGlyKSkKIAkJcmVhbF9naXRfZGlyID0gcmVhbF9wYXRoZHVwKHJlYWxfZ2l0X2RpciwgMSk7CiAKKwlpZiAodGVtcGxhdGVfZGlyICYmICp0ZW1wbGF0ZV9kaXIgJiYgIWlzX2Fic29sdXRlX3BhdGgodGVtcGxhdGVfZGlyKSkKKwkJdGVtcGxhdGVfZGlyID0gYWJzb2x1dGVfcGF0aGR1cCh0ZW1wbGF0ZV9kaXIpOworCiAJaWYgKGFyZ2MgPT0gMSkgewogCQlpbnQgbWtkaXJfdHJpZWQgPSAwOwogCXJldHJ5OgpAQCAtNTQyLDggKzU1Myw4IEBACiAJICogR0lUX1dPUktfVFJFRSBtYWtlcyBzZW5zZSBvbmx5IGluIGNvbmp1bmN0aW9uIHdpdGggR0lUX0RJUgogCSAqIHdpdGhvdXQgLS1iYXJlLiAgQ2F0Y2ggdGhlIGVycm9yIGVhcmx5LgogCSAqLwotCWdpdF9kaXIgPSBnZXRlbnYoR0lUX0RJUl9FTlZJUk9OTUVOVCk7Ci0Jd29ya190cmVlID0gZ2V0ZW52KEdJVF9XT1JLX1RSRUVfRU5WSVJPTk1FTlQpOworCWdpdF9kaXIgPSB4c3RyZHVwX29yX251bGwoZ2V0ZW52KEdJVF9ESVJfRU5WSVJPTk1FTlQpKTsKKwl3b3JrX3RyZWUgPSB4c3RyZHVwX29yX251bGwoZ2V0ZW52KEdJVF9XT1JLX1RSRUVfRU5WSVJPTk1FTlQpKTsKIAlpZiAoKCFnaXRfZGlyIHx8IGlzX2JhcmVfcmVwb3NpdG9yeV9jZmcgPT0gMSkgJiYgd29ya190cmVlKQogCQlkaWUoXygiJXMgKG9yIC0td29yay10cmVlPTxkaXJlY3Rvcnk+KSBub3QgYWxsb3dlZCB3aXRob3V0ICIKIAkJCSAgInNwZWNpZnlpbmcgJXMgKG9yIC0tZ2l0LWRpcj08ZGlyZWN0b3J5PikiKSwKQEAgLTU4Miw2ICs1OTMsOCBAQAogCX0KIAogCVVOTEVBSyhyZWFsX2dpdF9kaXIpOworCVVOTEVBSyhnaXRfZGlyKTsKKwlVTkxFQUsod29ya190cmVlKTsKIAogCWZsYWdzIHw9IElOSVRfREJfRVhJU1RfT0s7CiAJcmV0dXJuIGluaXRfZGIoZ2l0X2RpciwgcmVhbF9naXRfZGlyLCB0ZW1wbGF0ZV9kaXIsIGZsYWdzKTsKZGlmZiAtLWdpdCBhL2J1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmMgYi9idWlsdGluL2ludGVycHJldC10cmFpbGVycy5jCmluZGV4IDhhZTQwZGUuLmYxMDFkMDkgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmMKKysrIGIvYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYwpAQCAtMTAsNiArMTAsNyBAQAogI2luY2x1ZGUgInBhcnNlLW9wdGlvbnMuaCIKICNpbmNsdWRlICJzdHJpbmctbGlzdC5oIgogI2luY2x1ZGUgInRyYWlsZXIuaCIKKyNpbmNsdWRlICJjb25maWcuaCIKIAogc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBnaXRfaW50ZXJwcmV0X3RyYWlsZXJzX3VzYWdlW10gPSB7CiAJTl8oImdpdCBpbnRlcnByZXQtdHJhaWxlcnMgWy0taW4tcGxhY2VdIFstLXRyaW0tZW1wdHldIFsoLS10cmFpbGVyIDx0b2tlbj5bKD18Oik8dmFsdWU+XSkuLi5dIFs8ZmlsZT4uLi5dIiksCkBAIC0xMTIsNiArMTEzLDggQEAKIAkJT1BUX0VORCgpCiAJfTsKIAorCWdpdF9jb25maWcoZ2l0X2RlZmF1bHRfY29uZmlnLCBOVUxMKTsKKwogCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywKIAkJCSAgICAgZ2l0X2ludGVycHJldF90cmFpbGVyc191c2FnZSwgMCk7CiAKZGlmZiAtLWdpdCBhL2J1aWx0aW4vbG9nLmMgYi9idWlsdGluL2xvZy5jCmluZGV4IGU4ZTUxMDYuLjgzYTRhNjEgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vbG9nLmMKKysrIGIvYnVpbHRpbi9sb2cuYwpAQCAtNCw2ICs0LDcgQEAKICAqIChDKSBDb3B5cmlnaHQgMjAwNiBMaW51cyBUb3J2YWxkcwogICoJCSAyMDA2IEp1bmlvIEhhbWFubwogICovCisjZGVmaW5lIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgInJlZnMuaCIKQEAgLTM2LDYgKzM3LDcgQEAKICNpbmNsdWRlICJyYW5nZS1kaWZmLmgiCiAKICNkZWZpbmUgTUFJTF9ERUZBVUxUX1dSQVAgNzIKKyNkZWZpbmUgQ09WRVJfRlJPTV9BVVRPX01BWF9TVUJKRUNUX0xFTiAxMDAKIAogLyogU2V0IGEgZGVmYXVsdCBkYXRlLXRpbWUgZm9ybWF0IGZvciBnaXQgbG9nICgibG9nLmRhdGUiIGNvbmZpZyB2YXJpYWJsZSkgKi8KIHN0YXRpYyBjb25zdCBjaGFyICpkZWZhdWx0X2RhdGVfbW9kZSA9IE5VTEw7CkBAIC00Niw3ICs0OCw3IEBACiBzdGF0aWMgaW50IGRlZmF1bHRfc2hvd19zaWduYXR1cmU7CiBzdGF0aWMgaW50IGRlY29yYXRpb25fc3R5bGU7CiBzdGF0aWMgaW50IGRlY29yYXRpb25fZ2l2ZW47Ci1zdGF0aWMgaW50IHVzZV9tYWlsbWFwX2NvbmZpZzsKK3N0YXRpYyBpbnQgdXNlX21haWxtYXBfY29uZmlnID0gMTsKIHN0YXRpYyBjb25zdCBjaGFyICpmbXRfcGF0Y2hfc3ViamVjdF9wcmVmaXggPSAiUEFUQ0giOwogc3RhdGljIGNvbnN0IGNoYXIgKmZtdF9wcmV0dHk7CiAKQEAgLTYyLDkgKzY0LDE0IEBACiAJc3RydWN0IHN0cmluZ19saXN0IGFyZ3M7CiB9OwogCitzdGF0aWMgaW50IHNlc3Npb25faXNfaW50ZXJhY3RpdmUodm9pZCkKK3sKKwlyZXR1cm4gaXNhdHR5KDEpIHx8IHBhZ2VyX2luX3VzZSgpOworfQorCiBzdGF0aWMgaW50IGF1dG9fZGVjb3JhdGlvbl9zdHlsZSh2b2lkKQogewotCXJldHVybiAoaXNhdHR5KDEpIHx8IHBhZ2VyX2luX3VzZSgpKSA/IERFQ09SQVRFX1NIT1JUX1JFRlMgOiAwOworCXJldHVybiBzZXNzaW9uX2lzX2ludGVyYWN0aXZlKCkgPyBERUNPUkFURV9TSE9SVF9SRUZTIDogMDsKIH0KIAogc3RhdGljIGludCBwYXJzZV9kZWNvcmF0aW9uX3N0eWxlKGNvbnN0IGNoYXIgKnZhbHVlKQpAQCAtODMsNiArOTAsMTAgQEAKIAkJcmV0dXJuIERFQ09SQVRFX1NIT1JUX1JFRlM7CiAJZWxzZSBpZiAoIXN0cmNtcCh2YWx1ZSwgImF1dG8iKSkKIAkJcmV0dXJuIGF1dG9fZGVjb3JhdGlvbl9zdHlsZSgpOworCS8qCisJICogUGxlYXNlIHVwZGF0ZSBfZ2l0X2xvZygpIGluIGdpdC1jb21wbGV0aW9uLmJhc2ggd2hlbiB5b3UKKwkgKiBhZGQgbmV3IGRlY29yYXRpb24gc3R5bGVzLgorCSAqLwogCXJldHVybiAtMTsKIH0KIApAQCAtMTUwLDcgKzE2MSw3IEBACiAJCQkgc3RydWN0IHJldl9pbmZvICpyZXYsIHN0cnVjdCBzZXR1cF9yZXZpc2lvbl9vcHQgKm9wdCkKIHsKIAlzdHJ1Y3QgdXNlcmZvcm1hdF93YW50IHc7Ci0JaW50IHF1aWV0ID0gMCwgc291cmNlID0gMCwgbWFpbG1hcCA9IDA7CisJaW50IHF1aWV0ID0gMCwgc291cmNlID0gMCwgbWFpbG1hcDsKIAlzdGF0aWMgc3RydWN0IGxpbmVfb3B0X2NhbGxiYWNrX2RhdGEgbGluZV9jYiA9IHtOVUxMLCBOVUxMLCBTVFJJTkdfTElTVF9JTklUX0RVUH07CiAJc3RhdGljIHN0cnVjdCBzdHJpbmdfbGlzdCBkZWNvcmF0ZV9yZWZzX2V4Y2x1ZGUgPSBTVFJJTkdfTElTVF9JTklUX05PRFVQOwogCXN0YXRpYyBzdHJ1Y3Qgc3RyaW5nX2xpc3QgZGVjb3JhdGVfcmVmc19pbmNsdWRlID0gU1RSSU5HX0xJU1RfSU5JVF9OT0RVUDsKQEAgLTE5NywxMyArMjA4LDEzIEBACiAJaWYgKCFyZXYtPnNob3dfbm90ZXNfZ2l2ZW4gJiYgKCFyZXYtPnByZXR0eV9naXZlbiB8fCB3Lm5vdGVzKSkKIAkJcmV2LT5zaG93X25vdGVzID0gMTsKIAlpZiAocmV2LT5zaG93X25vdGVzKQotCQlpbml0X2Rpc3BsYXlfbm90ZXMoJnJldi0+bm90ZXNfb3B0KTsKKwkJbG9hZF9kaXNwbGF5X25vdGVzKCZyZXYtPm5vdGVzX29wdCk7CiAKIAlpZiAoKHJldi0+ZGlmZm9wdC5waWNrYXhlX29wdHMgJiBESUZGX1BJQ0tBWEVfS0lORFNfTUFTSykgfHwKIAkgICAgcmV2LT5kaWZmb3B0LmZpbHRlciB8fCByZXYtPmRpZmZvcHQuZmxhZ3MuZm9sbG93X3JlbmFtZXMpCiAJCXJldi0+YWx3YXlzX3Nob3dfaGVhZGVyID0gMDsKIAotCWlmIChzb3VyY2UpIHsKKwlpZiAoc291cmNlIHx8IHcuc291cmNlKSB7CiAJCWluaXRfcmV2aXNpb25fc291cmNlcygmcmV2aXNpb25fc291cmNlcyk7CiAJCXJldi0+c291cmNlcyA9ICZyZXZpc2lvbl9zb3VyY2VzOwogCX0KQEAgLTI0Niw3ICsyNTcsNyBAQAogICogVGhpcyBnaXZlcyBhIHJvdWdoIGVzdGltYXRlIGZvciBob3cgbWFueSBjb21taXRzIHdlCiAgKiB3aWxsIHByaW50IG91dCBpbiB0aGUgbGlzdC4KICAqLwotc3RhdGljIGludCBlc3RpbWF0ZV9jb21taXRfY291bnQoc3RydWN0IHJldl9pbmZvICpyZXYsIHN0cnVjdCBjb21taXRfbGlzdCAqbGlzdCkKK3N0YXRpYyBpbnQgZXN0aW1hdGVfY29tbWl0X2NvdW50KHN0cnVjdCBjb21taXRfbGlzdCAqbGlzdCkKIHsKIAlpbnQgbiA9IDA7CiAKQEAgLTI4NCw3ICsyOTUsNyBAQAogCQlzd2l0Y2ggKHNpbXBsaWZ5X2NvbW1pdChyZXZzLCBjb21taXQpKSB7CiAJCWNhc2UgY29tbWl0X3Nob3c6CiAJCQlpZiAoc2hvd19oZWFkZXIpIHsKLQkJCQlpbnQgbiA9IGVzdGltYXRlX2NvbW1pdF9jb3VudChyZXZzLCBsaXN0KTsKKwkJCQlpbnQgbiA9IGVzdGltYXRlX2NvbW1pdF9jb3VudChsaXN0KTsKIAkJCQlzaG93X2Vhcmx5X2hlYWRlcihyZXZzLCAiaW5jb21wbGV0ZSIsIG4pOwogCQkJCXNob3dfaGVhZGVyID0gMDsKIAkJCX0KQEAgLTMyOCw3ICszMzksNyBAQAogCXNob3dfZWFybHlfb3V0cHV0ID0gbG9nX3Nob3dfZWFybHk7CiB9CiAKLXN0YXRpYyB2b2lkIHNldHVwX2Vhcmx5X291dHB1dChzdHJ1Y3QgcmV2X2luZm8gKnJldikKK3N0YXRpYyB2b2lkIHNldHVwX2Vhcmx5X291dHB1dCh2b2lkKQogewogCXN0cnVjdCBzaWdhY3Rpb24gc2E7CiAKQEAgLTM1OSw3ICszNzAsNyBAQAogCiBzdGF0aWMgdm9pZCBmaW5pc2hfZWFybHlfb3V0cHV0KHN0cnVjdCByZXZfaW5mbyAqcmV2KQogewotCWludCBuID0gZXN0aW1hdGVfY29tbWl0X2NvdW50KHJldiwgcmV2LT5jb21taXRzKTsKKwlpbnQgbiA9IGVzdGltYXRlX2NvbW1pdF9jb3VudChyZXYtPmNvbW1pdHMpOwogCXNpZ25hbChTSUdBTFJNLCBTSUdfSUdOKTsKIAlzaG93X2Vhcmx5X2hlYWRlcihyZXYsICJkb25lIiwgbik7CiB9CkBAIC0zNzEsNyArMzgyLDcgQEAKIAlpbnQgc2F2ZWRfZGNjdGMgPSAwLCBjbG9zZV9maWxlID0gcmV2LT5kaWZmb3B0LmNsb3NlX2ZpbGU7CiAKIAlpZiAocmV2LT5lYXJseV9vdXRwdXQpCi0JCXNldHVwX2Vhcmx5X291dHB1dChyZXYpOworCQlzZXR1cF9lYXJseV9vdXRwdXQoKTsKIAogCWlmIChwcmVwYXJlX3JldmlzaW9uX3dhbGsocmV2KSkKIAkJZGllKF8oInJldmlzaW9uIHdhbGsgc2V0dXAgZmFpbGVkIikpOwpAQCAtMzk3LDcgKzQwOCw4IEBACiAJCQkgKiBXZSBtYXkgc2hvdyBhIGdpdmVuIGNvbW1pdCBtdWx0aXBsZSB0aW1lcyB3aGVuCiAJCQkgKiB3YWxraW5nIHRoZSByZWZsb2dzLgogCQkJICovCi0JCQlmcmVlX2NvbW1pdF9idWZmZXIoY29tbWl0KTsKKwkJCWZyZWVfY29tbWl0X2J1ZmZlcih0aGVfcmVwb3NpdG9yeS0+cGFyc2VkX29iamVjdHMsCisJCQkJCSAgIGNvbW1pdCk7CiAJCQlmcmVlX2NvbW1pdF9saXN0KGNvbW1pdC0+cGFyZW50cyk7CiAJCQljb21taXQtPnBhcmVudHMgPSBOVUxMOwogCQl9CkBAIC00ODQsNyArNDk2LDcgQEAKIAlyZXR1cm4gY21kX2xvZ193YWxrKCZyZXYpOwogfQogCi1zdGF0aWMgdm9pZCBzaG93X3RhZ2dlcihjaGFyICpidWYsIGludCBsZW4sIHN0cnVjdCByZXZfaW5mbyAqcmV2KQorc3RhdGljIHZvaWQgc2hvd190YWdnZXIoY29uc3QgY2hhciAqYnVmLCBzdHJ1Y3QgcmV2X2luZm8gKnJldikKIHsKIAlzdHJ1Y3Qgc3RyYnVmIG91dCA9IFNUUkJVRl9JTklUOwogCXN0cnVjdCBwcmV0dHlfcHJpbnRfY29udGV4dCBwcCA9IHswfTsKQEAgLTUwOCw5ICs1MjAsMTAgQEAKIAkgICAgIXJldi0+ZGlmZm9wdC5mbGFncy5hbGxvd190ZXh0Y29udikKIAkJcmV0dXJuIHN0cmVhbV9ibG9iX3RvX2ZkKDEsIG9pZCwgTlVMTCwgMCk7CiAKLQlpZiAoZ2V0X29pZF93aXRoX2NvbnRleHQob2JqX25hbWUsIEdFVF9PSURfUkVDT1JEX1BBVEgsCisJaWYgKGdldF9vaWRfd2l0aF9jb250ZXh0KHRoZV9yZXBvc2l0b3J5LCBvYmpfbmFtZSwKKwkJCQkgR0VUX09JRF9SRUNPUkRfUEFUSCwKIAkJCQkgJm9pZGMsICZvYmpfY29udGV4dCkpCi0JCWRpZShfKCJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIpLCBvYmpfbmFtZSk7CisJCWRpZShfKCJub3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIpLCBvYmpfbmFtZSk7CiAJaWYgKCFvYmpfY29udGV4dC5wYXRoIHx8CiAJICAgICF0ZXh0Y29udl9vYmplY3QodGhlX3JlcG9zaXRvcnksIG9ial9jb250ZXh0LnBhdGgsCiAJCQkgICAgIG9ial9jb250ZXh0Lm1vZGUsICZvaWRjLCAxLCAmYnVmLCAmc2l6ZSkpIHsKQEAgLTUzNCwxNiArNTQ3LDE2IEBACiAJaW50IG9mZnNldCA9IDA7CiAKIAlpZiAoIWJ1ZikKLQkJcmV0dXJuIGVycm9yKF8oIkNvdWxkIG5vdCByZWFkIG9iamVjdCAlcyIpLCBvaWRfdG9faGV4KG9pZCkpOworCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHJlYWQgb2JqZWN0ICVzIiksIG9pZF90b19oZXgob2lkKSk7CiAKIAlhc3NlcnQodHlwZSA9PSBPQkpfVEFHKTsKIAl3aGlsZSAob2Zmc2V0IDwgc2l6ZSAmJiBidWZbb2Zmc2V0XSAhPSAnXG4nKSB7CiAJCWludCBuZXdfb2Zmc2V0ID0gb2Zmc2V0ICsgMTsKKwkJY29uc3QgY2hhciAqaWRlbnQ7CiAJCXdoaWxlIChuZXdfb2Zmc2V0IDwgc2l6ZSAmJiBidWZbbmV3X29mZnNldCsrXSAhPSAnXG4nKQogCQkJOyAvKiBkbyBub3RoaW5nICovCi0JCWlmIChzdGFydHNfd2l0aChidWYgKyBvZmZzZXQsICJ0YWdnZXIgIikpCi0JCQlzaG93X3RhZ2dlcihidWYgKyBvZmZzZXQgKyA3LAotCQkJCSAgICBuZXdfb2Zmc2V0IC0gb2Zmc2V0IC0gNywgcmV2KTsKKwkJaWYgKHNraXBfcHJlZml4KGJ1ZiArIG9mZnNldCwgInRhZ2dlciAiLCAmaWRlbnQpKQorCQkJc2hvd190YWdnZXIoaWRlbnQsIHJldik7CiAJCW9mZnNldCA9IG5ld19vZmZzZXQ7CiAJfQogCkBAIC02MTUsNiArNjI4LDcgQEAKIAkJCWJyZWFrOwogCQljYXNlIE9CSl9UQUc6IHsKIAkJCXN0cnVjdCB0YWcgKnQgPSAoc3RydWN0IHRhZyAqKW87CisJCQlzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQgPSBnZXRfdGFnZ2VkX29pZCh0KTsKIAogCQkJaWYgKHJldi5zaG93bl9vbmUpCiAJCQkJcHV0Y2hhcignXG4nKTsKQEAgLTYyNiwxMCArNjQwLDEwIEBACiAJCQlyZXYuc2hvd25fb25lID0gMTsKIAkJCWlmIChyZXQpCiAJCQkJYnJlYWs7Ci0JCQlvID0gcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCAmdC0+dGFnZ2VkLT5vaWQpOworCQkJbyA9IHBhcnNlX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgb2lkKTsKIAkJCWlmICghbykKLQkJCQlyZXQgPSBlcnJvcihfKCJDb3VsZCBub3QgcmVhZCBvYmplY3QgJXMiKSwKLQkJCQkJICAgIG9pZF90b19oZXgoJnQtPnRhZ2dlZC0+b2lkKSk7CisJCQkJcmV0ID0gZXJyb3IoXygiY291bGQgbm90IHJlYWQgb2JqZWN0ICVzIiksCisJCQkJCSAgICBvaWRfdG9faGV4KG9pZCkpOwogCQkJb2JqZWN0c1tpXS5pdGVtID0gbzsKIAkJCWktLTsKIAkJCWJyZWFrOwpAQCAtNjQxLDggKzY1NSw5IEBACiAJCQkJCWRpZmZfZ2V0X2NvbG9yX29wdCgmcmV2LmRpZmZvcHQsIERJRkZfQ09NTUlUKSwKIAkJCQkJbmFtZSwKIAkJCQkJZGlmZl9nZXRfY29sb3Jfb3B0KCZyZXYuZGlmZm9wdCwgRElGRl9SRVNFVCkpOwotCQkJcmVhZF90cmVlX3JlY3Vyc2l2ZSgoc3RydWN0IHRyZWUgKilvLCAiIiwgMCwgMCwgJm1hdGNoX2FsbCwKLQkJCQkJc2hvd190cmVlX29iamVjdCwgcmV2LmRpZmZvcHQuZmlsZSk7CisJCQlyZWFkX3RyZWVfcmVjdXJzaXZlKHRoZV9yZXBvc2l0b3J5LCAoc3RydWN0IHRyZWUgKilvLCAiIiwKKwkJCQkJICAgIDAsIDAsICZtYXRjaF9hbGwsIHNob3dfdHJlZV9vYmplY3QsCisJCQkJCSAgICByZXYuZGlmZm9wdC5maWxlKTsKIAkJCXJldi5zaG93bl9vbmUgPSAxOwogCQkJYnJlYWs7CiAJCWNhc2UgT0JKX0NPTU1JVDoKQEAgLTY1Miw3ICs2NjcsNyBAQAogCQkJcmV0ID0gY21kX2xvZ193YWxrKCZyZXYpOwogCQkJYnJlYWs7CiAJCWRlZmF1bHQ6Ci0JCQlyZXQgPSBlcnJvcihfKCJVbmtub3duIHR5cGU6ICVkIiksIG8tPnR5cGUpOworCQkJcmV0ID0gZXJyb3IoXygidW5rbm93biB0eXBlOiAlZCIpLCBvLT50eXBlKTsKIAkJfQogCX0KIAlmcmVlKG9iamVjdHMpOwpAQCAtNzUxLDI0ICs3NjYsNTQgQEAKIAlpdGVtLT5zdHJpbmdbbGVuXSA9ICdcMCc7CiB9CiAKLSNkZWZpbmUgVEhSRUFEX1NIQUxMT1cgMQotI2RlZmluZSBUSFJFQURfREVFUCAyCi1zdGF0aWMgaW50IHRocmVhZDsKLXN0YXRpYyBpbnQgZG9fc2lnbm9mZjsKLXN0YXRpYyBpbnQgYmFzZV9hdXRvOwotc3RhdGljIGNoYXIgKmZyb207Ci1zdGF0aWMgY29uc3QgY2hhciAqc2lnbmF0dXJlID0gZ2l0X3ZlcnNpb25fc3RyaW5nOwotc3RhdGljIGNvbnN0IGNoYXIgKnNpZ25hdHVyZV9maWxlOwotc3RhdGljIGludCBjb25maWdfY292ZXJfbGV0dGVyOwotc3RhdGljIGNvbnN0IGNoYXIgKmNvbmZpZ19vdXRwdXRfZGlyZWN0b3J5OwotCi1lbnVtIHsKK2VudW0gY292ZXJfc2V0dGluZyB7CiAJQ09WRVJfVU5TRVQsCiAJQ09WRVJfT0ZGLAogCUNPVkVSX09OLAogCUNPVkVSX0FVVE8KIH07CiAKK2VudW0gdGhyZWFkX2xldmVsIHsKKwlUSFJFQURfVU5TRVQsCisJVEhSRUFEX1NIQUxMT1csCisJVEhSRUFEX0RFRVAKK307CisKK2VudW0gY292ZXJfZnJvbV9kZXNjcmlwdGlvbiB7CisJQ09WRVJfRlJPTV9OT05FLAorCUNPVkVSX0ZST01fTUVTU0FHRSwKKwlDT1ZFUl9GUk9NX1NVQkpFQ1QsCisJQ09WRVJfRlJPTV9BVVRPCit9OworCitzdGF0aWMgZW51bSB0aHJlYWRfbGV2ZWwgdGhyZWFkOworc3RhdGljIGludCBkb19zaWdub2ZmOworc3RhdGljIGludCBiYXNlX2F1dG87CitzdGF0aWMgY2hhciAqZnJvbTsKK3N0YXRpYyBjb25zdCBjaGFyICpzaWduYXR1cmUgPSBnaXRfdmVyc2lvbl9zdHJpbmc7CitzdGF0aWMgY29uc3QgY2hhciAqc2lnbmF0dXJlX2ZpbGU7CitzdGF0aWMgZW51bSBjb3Zlcl9zZXR0aW5nIGNvbmZpZ19jb3Zlcl9sZXR0ZXI7CitzdGF0aWMgY29uc3QgY2hhciAqY29uZmlnX291dHB1dF9kaXJlY3Rvcnk7CitzdGF0aWMgZW51bSBjb3Zlcl9mcm9tX2Rlc2NyaXB0aW9uIGNvdmVyX2Zyb21fZGVzY3JpcHRpb25fbW9kZSA9IENPVkVSX0ZST01fTUVTU0FHRTsKK3N0YXRpYyBpbnQgc2hvd19ub3RlczsKK3N0YXRpYyBzdHJ1Y3QgZGlzcGxheV9ub3Rlc19vcHQgbm90ZXNfb3B0OworCitzdGF0aWMgZW51bSBjb3Zlcl9mcm9tX2Rlc2NyaXB0aW9uIHBhcnNlX2NvdmVyX2Zyb21fZGVzY3JpcHRpb24oY29uc3QgY2hhciAqYXJnKQoreworCWlmICghYXJnIHx8ICFzdHJjbXAoYXJnLCAiZGVmYXVsdCIpKQorCQlyZXR1cm4gQ09WRVJfRlJPTV9NRVNTQUdFOworCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAibm9uZSIpKQorCQlyZXR1cm4gQ09WRVJfRlJPTV9OT05FOworCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAibWVzc2FnZSIpKQorCQlyZXR1cm4gQ09WRVJfRlJPTV9NRVNTQUdFOworCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAic3ViamVjdCIpKQorCQlyZXR1cm4gQ09WRVJfRlJPTV9TVUJKRUNUOworCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiYXV0byIpKQorCQlyZXR1cm4gQ09WRVJfRlJPTV9BVVRPOworCWVsc2UKKwkJZGllKF8oIiVzOiBpbnZhbGlkIGNvdmVyIGZyb20gZGVzY3JpcHRpb24gbW9kZSIpLCBhcmcpOworfQorCiBzdGF0aWMgaW50IGdpdF9mb3JtYXRfY29uZmlnKGNvbnN0IGNoYXIgKnZhciwgY29uc3QgY2hhciAqdmFsdWUsIHZvaWQgKmNiKQogewogCWlmICghc3RyY21wKHZhciwgImZvcm1hdC5oZWFkZXJzIikpIHsKQEAgLTgyMCw3ICs4NjUsNyBAQAogCQkJdGhyZWFkID0gVEhSRUFEX1NIQUxMT1c7CiAJCQlyZXR1cm4gMDsKIAkJfQotCQl0aHJlYWQgPSBnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSkgJiYgVEhSRUFEX1NIQUxMT1c7CisJCXRocmVhZCA9IGdpdF9jb25maWdfYm9vbCh2YXIsIHZhbHVlKSA/IFRIUkVBRF9TSEFMTE9XIDogVEhSRUFEX1VOU0VUOwogCQlyZXR1cm4gMDsKIAl9CiAJaWYgKCFzdHJjbXAodmFyLCAiZm9ybWF0LnNpZ25vZmYiKSkgewpAQCAtODU2LDYgKzkwMSwyMCBAQAogCQkJZnJvbSA9IE5VTEw7CiAJCXJldHVybiAwOwogCX0KKwlpZiAoIXN0cmNtcCh2YXIsICJmb3JtYXQubm90ZXMiKSkgeworCQlpbnQgYiA9IGdpdF9wYXJzZV9tYXliZV9ib29sKHZhbHVlKTsKKwkJaWYgKGIgPCAwKQorCQkJZW5hYmxlX3JlZl9kaXNwbGF5X25vdGVzKCZub3Rlc19vcHQsICZzaG93X25vdGVzLCB2YWx1ZSk7CisJCWVsc2UgaWYgKGIpCisJCQllbmFibGVfZGVmYXVsdF9kaXNwbGF5X25vdGVzKCZub3Rlc19vcHQsICZzaG93X25vdGVzKTsKKwkJZWxzZQorCQkJZGlzYWJsZV9kaXNwbGF5X25vdGVzKCZub3Rlc19vcHQsICZzaG93X25vdGVzKTsKKwkJcmV0dXJuIDA7CisJfQorCWlmICghc3RyY21wKHZhciwgImZvcm1hdC5jb3ZlcmZyb21kZXNjcmlwdGlvbiIpKSB7CisJCWNvdmVyX2Zyb21fZGVzY3JpcHRpb25fbW9kZSA9IHBhcnNlX2NvdmVyX2Zyb21fZGVzY3JpcHRpb24odmFsdWUpOworCQlyZXR1cm4gMDsKKwl9CiAKIAlyZXR1cm4gZ2l0X2xvZ19jb25maWcodmFyLCB2YWx1ZSwgY2IpOwogfQpAQCAtODkwLDcgKzk0OSw3IEBACiAJCXByaW50ZigiJXNcbiIsIGZpbGVuYW1lLmJ1ZiArIG91dGRpcl9vZmZzZXQpOwogCiAJaWYgKChyZXYtPmRpZmZvcHQuZmlsZSA9IGZvcGVuKGZpbGVuYW1lLmJ1ZiwgInciKSkgPT0gTlVMTCkgewotCQllcnJvcl9lcnJubyhfKCJDYW5ub3Qgb3BlbiBwYXRjaCBmaWxlICVzIiksIGZpbGVuYW1lLmJ1Zik7CisJCWVycm9yX2Vycm5vKF8oImNhbm5vdCBvcGVuIHBhdGNoIGZpbGUgJXMiKSwgZmlsZW5hbWUuYnVmKTsKIAkJc3RyYnVmX3JlbGVhc2UoJmZpbGVuYW1lKTsKIAkJcmV0dXJuIC0xOwogCX0KQEAgLTkwNyw3ICs5NjYsNyBAQAogCXVuc2lnbmVkIGZsYWdzMSwgZmxhZ3MyOwogCiAJaWYgKHJldi0+cGVuZGluZy5uciAhPSAyKQotCQlkaWUoXygiTmVlZCBleGFjdGx5IG9uZSByYW5nZS4iKSk7CisJCWRpZShfKCJuZWVkIGV4YWN0bHkgb25lIHJhbmdlIikpOwogCiAJbzEgPSByZXYtPnBlbmRpbmcub2JqZWN0c1swXS5pdGVtOwogCW8yID0gcmV2LT5wZW5kaW5nLm9iamVjdHNbMV0uaXRlbTsKQEAgLTkxNyw3ICs5NzYsNyBAQAogCWMyID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2UodGhlX3JlcG9zaXRvcnksICZvMi0+b2lkKTsKIAogCWlmICgoZmxhZ3MxICYgVU5JTlRFUkVTVElORykgPT0gKGZsYWdzMiAmIFVOSU5URVJFU1RJTkcpKQotCQlkaWUoXygiTm90IGEgcmFuZ2UuIikpOworCQlkaWUoXygibm90IGEgcmFuZ2UiKSk7CiAKIAlpbml0X3BhdGNoX2lkcyh0aGVfcmVwb3NpdG9yeSwgaWRzKTsKIApAQCAtOTYyLDIwICsxMDIxLDYgQEAKIAlwdXRjKCdcbicsIGZpbGUpOwogfQogCi1zdGF0aWMgdm9pZCBhZGRfYnJhbmNoX2Rlc2NyaXB0aW9uKHN0cnVjdCBzdHJidWYgKmJ1ZiwgY29uc3QgY2hhciAqYnJhbmNoX25hbWUpCi17Ci0Jc3RydWN0IHN0cmJ1ZiBkZXNjID0gU1RSQlVGX0lOSVQ7Ci0JaWYgKCFicmFuY2hfbmFtZSB8fCAhKmJyYW5jaF9uYW1lKQotCQlyZXR1cm47Ci0JcmVhZF9icmFuY2hfZGVzYygmZGVzYywgYnJhbmNoX25hbWUpOwotCWlmIChkZXNjLmxlbikgewotCQlzdHJidWZfYWRkY2goYnVmLCAnXG4nKTsKLQkJc3RyYnVmX2FkZGJ1ZihidWYsICZkZXNjKTsKLQkJc3RyYnVmX2FkZGNoKGJ1ZiwgJ1xuJyk7Ci0JfQotCXN0cmJ1Zl9yZWxlYXNlKCZkZXNjKTsKLX0KLQogc3RhdGljIGNoYXIgKmZpbmRfYnJhbmNoX25hbWUoc3RydWN0IHJldl9pbmZvICpyZXYpCiB7CiAJaW50IGksIHBvc2l0aXZlID0gLTE7CkBAIC0xMDIyLDYgKzEwNjcsNjMgQEAKIAlmcHJpbnRmKHJldi0+ZGlmZm9wdC5maWxlLCAiXG4iKTsKIH0KIAorc3RhdGljIHZvaWQgcHJlcGFyZV9jb3Zlcl90ZXh0KHN0cnVjdCBwcmV0dHlfcHJpbnRfY29udGV4dCAqcHAsCisJCQkgICAgICAgY29uc3QgY2hhciAqYnJhbmNoX25hbWUsCisJCQkgICAgICAgc3RydWN0IHN0cmJ1ZiAqc2IsCisJCQkgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCisJCQkgICAgICAgaW50IG5lZWRfOGJpdF9jdGUpCit7CisJY29uc3QgY2hhciAqc3ViamVjdCA9ICIqKiogU1VCSkVDVCBIRVJFICoqKiI7CisJY29uc3QgY2hhciAqYm9keSA9ICIqKiogQkxVUkIgSEVSRSAqKioiOworCXN0cnVjdCBzdHJidWYgZGVzY3JpcHRpb25fc2IgPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3Qgc3RyYnVmIHN1YmplY3Rfc2IgPSBTVFJCVUZfSU5JVDsKKworCWlmIChjb3Zlcl9mcm9tX2Rlc2NyaXB0aW9uX21vZGUgPT0gQ09WRVJfRlJPTV9OT05FKQorCQlnb3RvIGRvX3BwOworCisJaWYgKGJyYW5jaF9uYW1lICYmICpicmFuY2hfbmFtZSkKKwkJcmVhZF9icmFuY2hfZGVzYygmZGVzY3JpcHRpb25fc2IsIGJyYW5jaF9uYW1lKTsKKwlpZiAoIWRlc2NyaXB0aW9uX3NiLmxlbikKKwkJZ290byBkb19wcDsKKworCWlmIChjb3Zlcl9mcm9tX2Rlc2NyaXB0aW9uX21vZGUgPT0gQ09WRVJfRlJPTV9TVUJKRUNUIHx8CisJCQljb3Zlcl9mcm9tX2Rlc2NyaXB0aW9uX21vZGUgPT0gQ09WRVJfRlJPTV9BVVRPKQorCQlib2R5ID0gZm9ybWF0X3N1YmplY3QoJnN1YmplY3Rfc2IsIGRlc2NyaXB0aW9uX3NiLmJ1ZiwgIiAiKTsKKworCWlmIChjb3Zlcl9mcm9tX2Rlc2NyaXB0aW9uX21vZGUgPT0gQ09WRVJfRlJPTV9NRVNTQUdFIHx8CisJCQkoY292ZXJfZnJvbV9kZXNjcmlwdGlvbl9tb2RlID09IENPVkVSX0ZST01fQVVUTyAmJgorCQkJIHN1YmplY3Rfc2IubGVuID4gQ09WRVJfRlJPTV9BVVRPX01BWF9TVUJKRUNUX0xFTikpCisJCWJvZHkgPSBkZXNjcmlwdGlvbl9zYi5idWY7CisJZWxzZQorCQlzdWJqZWN0ID0gc3ViamVjdF9zYi5idWY7CisKK2RvX3BwOgorCXBwX3RpdGxlX2xpbmUocHAsICZzdWJqZWN0LCBzYiwgZW5jb2RpbmcsIG5lZWRfOGJpdF9jdGUpOworCXBwX3JlbWFpbmRlcihwcCwgJmJvZHksIHNiLCAwKTsKKworCXN0cmJ1Zl9yZWxlYXNlKCZkZXNjcmlwdGlvbl9zYik7CisJc3RyYnVmX3JlbGVhc2UoJnN1YmplY3Rfc2IpOworfQorCitzdGF0aWMgaW50IGdldF9ub3Rlc19yZWZzKHN0cnVjdCBzdHJpbmdfbGlzdF9pdGVtICppdGVtLCB2b2lkICphcmcpCit7CisJYXJndl9hcnJheV9wdXNoZihhcmcsICItLW5vdGVzPSVzIiwgaXRlbS0+c3RyaW5nKTsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQgZ2V0X25vdGVzX2FyZ3Moc3RydWN0IGFyZ3ZfYXJyYXkgKmFyZywgc3RydWN0IHJldl9pbmZvICpyZXYpCit7CisJaWYgKCFyZXYtPnNob3dfbm90ZXMpIHsKKwkJYXJndl9hcnJheV9wdXNoKGFyZywgIi0tbm8tbm90ZXMiKTsKKwl9IGVsc2UgaWYgKHJldi0+bm90ZXNfb3B0LnVzZV9kZWZhdWx0X25vdGVzID4gMCB8fAorCQkgICAocmV2LT5ub3Rlc19vcHQudXNlX2RlZmF1bHRfbm90ZXMgPT0gLTEgJiYKKwkJICAgICFyZXYtPm5vdGVzX29wdC5leHRyYV9ub3Rlc19yZWZzLm5yKSkgeworCQlhcmd2X2FycmF5X3B1c2goYXJnLCAiLS1ub3RlcyIpOworCX0gZWxzZSB7CisJCWZvcl9lYWNoX3N0cmluZ19saXN0KCZyZXYtPm5vdGVzX29wdC5leHRyYV9ub3Rlc19yZWZzLCBnZXRfbm90ZXNfcmVmcywgYXJnKTsKKwl9Cit9CisKIHN0YXRpYyB2b2lkIG1ha2VfY292ZXJfbGV0dGVyKHN0cnVjdCByZXZfaW5mbyAqcmV2LCBpbnQgdXNlX3N0ZG91dCwKIAkJCSAgICAgIHN0cnVjdCBjb21taXQgKm9yaWdpbiwKIAkJCSAgICAgIGludCBuciwgc3RydWN0IGNvbW1pdCAqKmxpc3QsCkBAIC0xMDI5LDggKzExMzEsNiBAQAogCQkJICAgICAgaW50IHF1aWV0KQogewogCWNvbnN0IGNoYXIgKmNvbW1pdHRlcjsKLQljb25zdCBjaGFyICpib2R5ID0gIioqKiBTVUJKRUNUIEhFUkUgKioqXG5cbioqKiBCTFVSQiBIRVJFICoqKlxuIjsKLQljb25zdCBjaGFyICptc2c7CiAJc3RydWN0IHNob3J0bG9nIGxvZzsKIAlzdHJ1Y3Qgc3RyYnVmIHNiID0gU1RSQlVGX0lOSVQ7CiAJaW50IGk7CkBAIC0xMDQwLDEzICsxMTQwLDEzIEBACiAJc3RydWN0IGNvbW1pdCAqaGVhZCA9IGxpc3RbMF07CiAKIAlpZiAoIWNtaXRfZm10X2lzX21haWwocmV2LT5jb21taXRfZm9ybWF0KSkKLQkJZGllKF8oIkNvdmVyIGxldHRlciBuZWVkcyBlbWFpbCBmb3JtYXQiKSk7CisJCWRpZShfKCJjb3ZlciBsZXR0ZXIgbmVlZHMgZW1haWwgZm9ybWF0IikpOwogCiAJY29tbWl0dGVyID0gZ2l0X2NvbW1pdHRlcl9pbmZvKDApOwogCiAJaWYgKCF1c2Vfc3Rkb3V0ICYmCiAJICAgIG9wZW5fbmV4dF9maWxlKE5VTEwsIHJldi0+bnVtYmVyZWRfZmlsZXMgPyBOVUxMIDogImNvdmVyLWxldHRlciIsIHJldiwgcXVpZXQpKQotCQlyZXR1cm47CisJCWRpZShfKCJmYWlsZWQgdG8gY3JlYXRlIGNvdmVyLWxldHRlciBmaWxlIikpOwogCiAJbG9nX3dyaXRlX2VtYWlsX2hlYWRlcnMocmV2LCBoZWFkLCAmcHAuYWZ0ZXJfc3ViamVjdCwgJm5lZWRfOGJpdF9jdGUsIDApOwogCkBAIC0xMDYwLDE1ICsxMTYwLDEyIEBACiAJaWYgKCFicmFuY2hfbmFtZSkKIAkJYnJhbmNoX25hbWUgPSBmaW5kX2JyYW5jaF9uYW1lKHJldik7CiAKLQltc2cgPSBib2R5OwogCXBwLmZtdCA9IENNSVRfRk1UX0VNQUlMOwogCXBwLmRhdGVfbW9kZS50eXBlID0gREFURV9SRkMyODIyOwogCXBwLnJldiA9IHJldjsKIAlwcC5wcmludF9lbWFpbF9zdWJqZWN0ID0gMTsKIAlwcF91c2VyX2luZm8oJnBwLCBOVUxMLCAmc2IsIGNvbW1pdHRlciwgZW5jb2RpbmcpOwotCXBwX3RpdGxlX2xpbmUoJnBwLCAmbXNnLCAmc2IsIGVuY29kaW5nLCBuZWVkXzhiaXRfY3RlKTsKLQlwcF9yZW1haW5kZXIoJnBwLCAmbXNnLCAmc2IsIDApOwotCWFkZF9icmFuY2hfZGVzY3JpcHRpb24oJnNiLCBicmFuY2hfbmFtZSk7CisJcHJlcGFyZV9jb3Zlcl90ZXh0KCZwcCwgYnJhbmNoX25hbWUsICZzYiwgZW5jb2RpbmcsIG5lZWRfOGJpdF9jdGUpOwogCWZwcmludGYocmV2LT5kaWZmb3B0LmZpbGUsICIlc1xuIiwgc2IuYnVmKTsKIAogCXN0cmJ1Zl9yZWxlYXNlKCZzYik7CkBAIC0xMDk5LDEzICsxMTk2LDE2IEBACiAJCSAqIGNhbiBiZSBhZGRlZCBsYXRlciBpZiBkZWVtZWQgZGVzaXJhYmxlLgogCQkgKi8KIAkJc3RydWN0IGRpZmZfb3B0aW9ucyBvcHRzOworCQlzdHJ1Y3QgYXJndl9hcnJheSBvdGhlcl9hcmcgPSBBUkdWX0FSUkFZX0lOSVQ7CiAJCWRpZmZfc2V0dXAoJm9wdHMpOwogCQlvcHRzLmZpbGUgPSByZXYtPmRpZmZvcHQuZmlsZTsKIAkJb3B0cy51c2VfY29sb3IgPSByZXYtPmRpZmZvcHQudXNlX2NvbG9yOwogCQlkaWZmX3NldHVwX2RvbmUoJm9wdHMpOwogCQlmcHJpbnRmX2xuKHJldi0+ZGlmZm9wdC5maWxlLCAiJXMiLCByZXYtPnJkaWZmX3RpdGxlKTsKKwkJZ2V0X25vdGVzX2FyZ3MoJm90aGVyX2FyZywgcmV2KTsKIAkJc2hvd19yYW5nZV9kaWZmKHJldi0+cmRpZmYxLCByZXYtPnJkaWZmMiwKLQkJCQlyZXYtPmNyZWF0aW9uX2ZhY3RvciwgMSwgJm9wdHMpOworCQkJCXJldi0+Y3JlYXRpb25fZmFjdG9yLCAxLCAmb3B0cywgJm90aGVyX2FyZyk7CisJCWFyZ3ZfYXJyYXlfY2xlYXIoJm90aGVyX2FyZyk7CiAJfQogfQogCkBAIC0xMjEwLDIwICsxMzEwLDI0IEBACiAJY29uc3QgY2hhciAqKmRpciA9IChjb25zdCBjaGFyICoqKW9wdC0+dmFsdWU7CiAJQlVHX09OX09QVF9ORUcodW5zZXQpOwogCWlmICgqZGlyKQotCQlkaWUoXygiVHdvIG91dHB1dCBkaXJlY3Rvcmllcz8iKSk7CisJCWRpZShfKCJ0d28gb3V0cHV0IGRpcmVjdG9yaWVzPyIpKTsKIAkqZGlyID0gYXJnOwogCXJldHVybiAwOwogfQogCiBzdGF0aWMgaW50IHRocmVhZF9jYWxsYmFjayhjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsIGNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQogewotCWludCAqdGhyZWFkID0gKGludCAqKW9wdC0+dmFsdWU7CisJZW51bSB0aHJlYWRfbGV2ZWwgKnRocmVhZCA9IChlbnVtIHRocmVhZF9sZXZlbCAqKW9wdC0+dmFsdWU7CiAJaWYgKHVuc2V0KQotCQkqdGhyZWFkID0gMDsKKwkJKnRocmVhZCA9IFRIUkVBRF9VTlNFVDsKIAllbHNlIGlmICghYXJnIHx8ICFzdHJjbXAoYXJnLCAic2hhbGxvdyIpKQogCQkqdGhyZWFkID0gVEhSRUFEX1NIQUxMT1c7CiAJZWxzZSBpZiAoIXN0cmNtcChhcmcsICJkZWVwIikpCiAJCSp0aHJlYWQgPSBUSFJFQURfREVFUDsKKwkvKgorCSAqIFBsZWFzZSB1cGRhdGUgX2dpdF9mb3JtYXRwYXRjaCgpIGluIGdpdC1jb21wbGV0aW9uLmJhc2gKKwkgKiB3aGVuIHlvdSBhZGQgbmV3IG9wdGlvbnMuCisJICovCiAJZWxzZQogCQlyZXR1cm4gMTsKIAlyZXR1cm4gMDsKQEAgLTEyNjIsNyArMTM2Niw3IEBACiAJCXN0cmluZ19saXN0X2NsZWFyKCZleHRyYV90bywgMCk7CiAJCXN0cmluZ19saXN0X2NsZWFyKCZleHRyYV9jYywgMCk7CiAJfSBlbHNlIHsKLQkgICAgYWRkX2hlYWRlcihhcmcpOworCQlhZGRfaGVhZGVyKGFyZyk7CiAJfQogCXJldHVybiAwOwogfQpAQCAtMTMxNyw4ICsxNDIxLDggQEAKIAlpZiAoYmFzZV9jb21taXQgJiYgc3RyY21wKGJhc2VfY29tbWl0LCAiYXV0byIpKSB7CiAJCWJhc2UgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZV9ieV9uYW1lKGJhc2VfY29tbWl0KTsKIAkJaWYgKCFiYXNlKQotCQkJZGllKF8oIlVua25vd24gY29tbWl0ICVzIiksIGJhc2VfY29tbWl0KTsKLQl9IGVsc2UgaWYgKChiYXNlX2NvbW1pdCAmJiAhc3RyY21wKGJhc2VfY29tbWl0LCAiYXV0byIpKSB8fCBiYXNlX2F1dG8pIHsKKwkJCWRpZShfKCJ1bmtub3duIGNvbW1pdCAlcyIpLCBiYXNlX2NvbW1pdCk7CisJfSBlbHNlIGlmICgoYmFzZV9jb21taXQgJiYgIXN0cmNtcChiYXNlX2NvbW1pdCwgImF1dG8iKSkpIHsKIAkJc3RydWN0IGJyYW5jaCAqY3Vycl9icmFuY2ggPSBicmFuY2hfZ2V0KE5VTEwpOwogCQljb25zdCBjaGFyICp1cHN0cmVhbSA9IGJyYW5jaF9nZXRfdXBzdHJlYW0oY3Vycl9icmFuY2gsIE5VTEwpOwogCQlpZiAodXBzdHJlYW0pIHsKQEAgLTEzMjcsMTggKzE0MzEsMTggQEAKIAkJCXN0cnVjdCBvYmplY3RfaWQgb2lkOwogCiAJCQlpZiAoZ2V0X29pZCh1cHN0cmVhbSwgJm9pZCkpCi0JCQkJZGllKF8oIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIiksIHVwc3RyZWFtKTsKKwkJCQlkaWUoXygiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZiIpLCB1cHN0cmVhbSk7CiAJCQljb21taXQgPSBsb29rdXBfY29tbWl0X29yX2RpZSgmb2lkLCAidXBzdHJlYW0gYmFzZSIpOwogCQkJYmFzZV9saXN0ID0gZ2V0X21lcmdlX2Jhc2VzX21hbnkoY29tbWl0LCB0b3RhbCwgbGlzdCk7CiAJCQkvKiBUaGVyZSBzaG91bGQgYmUgb25lIGFuZCBvbmx5IG9uZSBtZXJnZSBiYXNlLiAqLwogCQkJaWYgKCFiYXNlX2xpc3QgfHwgYmFzZV9saXN0LT5uZXh0KQotCQkJCWRpZShfKCJDb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlLiIpKTsKKwkJCQlkaWUoXygiY291bGQgbm90IGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIpKTsKIAkJCWJhc2UgPSBiYXNlX2xpc3QtPml0ZW07CiAJCQlmcmVlX2NvbW1pdF9saXN0KGJhc2VfbGlzdCk7CiAJCX0gZWxzZSB7Ci0JCQlkaWUoXygiRmFpbGVkIHRvIGdldCB1cHN0cmVhbSwgaWYgeW91IHdhbnQgdG8gcmVjb3JkIGJhc2UgY29tbWl0IGF1dG9tYXRpY2FsbHksXG4iCisJCQlkaWUoXygiZmFpbGVkIHRvIGdldCB1cHN0cmVhbSwgaWYgeW91IHdhbnQgdG8gcmVjb3JkIGJhc2UgY29tbWl0IGF1dG9tYXRpY2FsbHksXG4iCiAJCQkgICAgICAicGxlYXNlIHVzZSBnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvIHRvIHRyYWNrIGEgcmVtb3RlIGJyYW5jaC5cbiIKLQkJCSAgICAgICJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseS4iKSk7CisJCQkgICAgICAiT3IgeW91IGNvdWxkIHNwZWNpZnkgYmFzZSBjb21taXQgYnkgLS1iYXNlPTxiYXNlLWNvbW1pdC1pZD4gbWFudWFsbHkiKSk7CiAJCX0KIAl9CiAKQEAgLTEzNTYsNyArMTQ2MCw3IEBACiAJCQlzdHJ1Y3QgY29tbWl0X2xpc3QgKm1lcmdlX2Jhc2U7CiAJCQltZXJnZV9iYXNlID0gZ2V0X21lcmdlX2Jhc2VzKHJldlsyICogaV0sIHJldlsyICogaSArIDFdKTsKIAkJCWlmICghbWVyZ2VfYmFzZSB8fCBtZXJnZV9iYXNlLT5uZXh0KQotCQkJCWRpZShfKCJGYWlsZWQgdG8gZmluZCBleGFjdCBtZXJnZSBiYXNlIikpOworCQkJCWRpZShfKCJmYWlsZWQgdG8gZmluZCBleGFjdCBtZXJnZSBiYXNlIikpOwogCiAJCQlyZXZbaV0gPSBtZXJnZV9iYXNlLT5pdGVtOwogCQl9CkBAIC0xNDIzLDcgKzE1MjcsNyBAQAogCQlzdHJ1Y3Qgb2JqZWN0X2lkICpwYXRjaF9pZDsKIAkJaWYgKCpjb21taXRfYmFzZV9hdCgmY29tbWl0X2Jhc2UsIGNvbW1pdCkpCiAJCQljb250aW51ZTsKLQkJaWYgKGNvbW1pdF9wYXRjaF9pZChjb21taXQsICZkaWZmb3B0LCAmb2lkLCAwKSkKKwkJaWYgKGNvbW1pdF9wYXRjaF9pZChjb21taXQsICZkaWZmb3B0LCAmb2lkLCAwLCAxKSkKIAkJCWRpZShfKCJjYW5ub3QgZ2V0IHBhdGNoIGlkIikpOwogCQlBTExPQ19HUk9XKGJhc2VzLT5wYXRjaF9pZCwgYmFzZXMtPm5yX3BhdGNoX2lkICsgMSwgYmFzZXMtPmFsbG9jX3BhdGNoX2lkKTsKIAkJcGF0Y2hfaWQgPSBiYXNlcy0+cGF0Y2hfaWQgKyBiYXNlcy0+bnJfcGF0Y2hfaWQ7CkBAIC0xNTA2LDYgKzE2MTAsNyBAQAogCWludCB1c2VfcGF0Y2hfZm9ybWF0ID0gMDsKIAlpbnQgcXVpZXQgPSAwOwogCWludCByZXJvbGxfY291bnQgPSAtMTsKKwljaGFyICpjb3Zlcl9mcm9tX2Rlc2NyaXB0aW9uX2FyZyA9IE5VTEw7CiAJY2hhciAqYnJhbmNoX25hbWUgPSBOVUxMOwogCWNoYXIgKmJhc2VfY29tbWl0ID0gTlVMTDsKIAlzdHJ1Y3QgYmFzZV90cmVlX2luZm8gYmFzZXM7CkBAIC0xNTQyLDYgKzE2NDcsOSBAQAogCQl7IE9QVElPTl9DQUxMQkFDSywgMCwgInJmYyIsICZyZXYsIE5VTEwsCiAJCQkgICAgTl8oIlVzZSBbUkZDIFBBVENIXSBpbnN0ZWFkIG9mIFtQQVRDSF0iKSwKIAkJCSAgICBQQVJTRV9PUFRfTk9BUkcgfCBQQVJTRV9PUFRfTk9ORUcsIHJmY19jYWxsYmFjayB9LAorCQlPUFRfU1RSSU5HKDAsICJjb3Zlci1mcm9tLWRlc2NyaXB0aW9uIiwgJmNvdmVyX2Zyb21fZGVzY3JpcHRpb25fYXJnLAorCQkJICAgIE5fKCJjb3Zlci1mcm9tLWRlc2NyaXB0aW9uLW1vZGUiKSwKKwkJCSAgICBOXygiZ2VuZXJhdGUgcGFydHMgb2YgYSBjb3ZlciBsZXR0ZXIgYmFzZWQgb24gYSBicmFuY2gncyBkZXNjcmlwdGlvbiIpKSwKIAkJeyBPUFRJT05fQ0FMTEJBQ0ssIDAsICJzdWJqZWN0LXByZWZpeCIsICZyZXYsIE5fKCJwcmVmaXgiKSwKIAkJCSAgICBOXygiVXNlIFs8cHJlZml4Pl0gaW5zdGVhZCBvZiBbUEFUQ0hdIiksCiAJCQkgICAgUEFSU0VfT1BUX05PTkVHLCBzdWJqZWN0X3ByZWZpeF9jYWxsYmFjayB9LApAQCAtMTYwNSw4ICsxNzEzLDExIEBACiAJZXh0cmFfdG8uc3RyZHVwX3N0cmluZ3MgPSAxOwogCWV4dHJhX2NjLnN0cmR1cF9zdHJpbmdzID0gMTsKIAlpbml0X2xvZ19kZWZhdWx0cygpOworCWluaXRfZGlzcGxheV9ub3Rlcygmbm90ZXNfb3B0KTsKIAlnaXRfY29uZmlnKGdpdF9mb3JtYXRfY29uZmlnLCBOVUxMKTsKIAlyZXBvX2luaXRfcmV2aXNpb25zKHRoZV9yZXBvc2l0b3J5LCAmcmV2LCBwcmVmaXgpOworCXJldi5zaG93X25vdGVzID0gc2hvd19ub3RlczsKKwltZW1jcHkoJnJldi5ub3Rlc19vcHQsICZub3Rlc19vcHQsIHNpemVvZihub3Rlc19vcHQpKTsKIAlyZXYuY29tbWl0X2Zvcm1hdCA9IENNSVRfRk1UX0VNQUlMOwogCXJldi5leHBhbmRfdGFic19pbl9sb2dfZGVmYXVsdCA9IDA7CiAJcmV2LnZlcmJvc2VfaGVhZGVyID0gMTsKQEAgLTE2MTgsNiArMTcyOSw5IEBACiAJc19yX29wdC5kZWYgPSAiSEVBRCI7CiAJc19yX29wdC5yZXZhcmdfb3B0ID0gUkVWQVJHX0NPTU1JVFRJU0g7CiAKKwlpZiAoYmFzZV9hdXRvKQorCQliYXNlX2NvbW1pdCA9ICJhdXRvIjsKKwogCWlmIChkZWZhdWx0X2F0dGFjaCkgewogCQlyZXYubWltZV9ib3VuZGFyeSA9IGRlZmF1bHRfYXR0YWNoOwogCQlyZXYubm9faW5saW5lID0gMTsKQEAgLTE2MzMsNiArMTc0Nyw5IEBACiAJCQkgICAgIFBBUlNFX09QVF9LRUVQX0FSR1YwIHwgUEFSU0VfT1BUX0tFRVBfVU5LTk9XTiB8CiAJCQkgICAgIFBBUlNFX09QVF9LRUVQX0RBU0hEQVNIKTsKIAorCWlmIChjb3Zlcl9mcm9tX2Rlc2NyaXB0aW9uX2FyZykKKwkJY292ZXJfZnJvbV9kZXNjcmlwdGlvbl9tb2RlID0gcGFyc2VfY292ZXJfZnJvbV9kZXNjcmlwdGlvbihjb3Zlcl9mcm9tX2Rlc2NyaXB0aW9uX2FyZyk7CisKIAlpZiAoMCA8IHJlcm9sbF9jb3VudCkgewogCQlzdHJ1Y3Qgc3RyYnVmIHNwcmVmaXggPSBTVFJCVUZfSU5JVDsKIAkJc3RyYnVmX2FkZGYoJnNwcmVmaXgsICIlcyB2JWQiLApAQCAtMTcxOSw3ICsxODM2LDcgQEAKIAkJcmV2LmRpZmZvcHQuZmxhZ3MuYmluYXJ5ID0gMTsKIAogCWlmIChyZXYuc2hvd19ub3RlcykKLQkJaW5pdF9kaXNwbGF5X25vdGVzKCZyZXYubm90ZXNfb3B0KTsKKwkJbG9hZF9kaXNwbGF5X25vdGVzKCZyZXYubm90ZXNfb3B0KTsKIAogCWlmICghb3V0cHV0X2RpcmVjdG9yeSAmJiAhdXNlX3N0ZG91dCkKIAkJb3V0cHV0X2RpcmVjdG9yeSA9IGNvbmZpZ19vdXRwdXRfZGlyZWN0b3J5OwpAQCAtMTczMCwxMiArMTg0NywyOCBAQAogCQlzZXR1cF9wYWdlcigpOwogCiAJaWYgKG91dHB1dF9kaXJlY3RvcnkpIHsKKwkJaW50IHNhdmVkOwogCQlpZiAocmV2LmRpZmZvcHQudXNlX2NvbG9yICE9IEdJVF9DT0xPUl9BTFdBWVMpCiAJCQlyZXYuZGlmZm9wdC51c2VfY29sb3IgPSBHSVRfQ09MT1JfTkVWRVI7CiAJCWlmICh1c2Vfc3Rkb3V0KQogCQkJZGllKF8oInN0YW5kYXJkIG91dHB1dCwgb3IgZGlyZWN0b3J5LCB3aGljaCBvbmU/IikpOworCQkvKgorCQkgKiBXZSBjb25zaWRlciA8b3V0ZGlyPiBhcyAnb3V0c2lkZSBvZiBnaXRkaXInLCB0aGVyZWZvcmUgYXZvaWQKKwkJICogYXBwbHlpbmcgYWRqdXN0X3NoYXJlZF9wZXJtIGluIHMtYy1sLWQuCisJCSAqLworCQlzYXZlZCA9IGdldF9zaGFyZWRfcmVwb3NpdG9yeSgpOworCQlzZXRfc2hhcmVkX3JlcG9zaXRvcnkoMCk7CisJCXN3aXRjaCAoc2FmZV9jcmVhdGVfbGVhZGluZ19kaXJlY3Rvcmllc19jb25zdChvdXRwdXRfZGlyZWN0b3J5KSkgeworCQljYXNlIFNDTERfT0s6CisJCWNhc2UgU0NMRF9FWElTVFM6CisJCQlicmVhazsKKwkJZGVmYXVsdDoKKwkJCWRpZShfKCJjb3VsZCBub3QgY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgIgorCQkJICAgICAgIm9mICclcyciKSwgb3V0cHV0X2RpcmVjdG9yeSk7CisJCX0KKwkJc2V0X3NoYXJlZF9yZXBvc2l0b3J5KHNhdmVkKTsKIAkJaWYgKG1rZGlyKG91dHB1dF9kaXJlY3RvcnksIDA3NzcpIDwgMCAmJiBlcnJubyAhPSBFRVhJU1QpCi0JCQlkaWVfZXJybm8oXygiQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIpLAorCQkJZGllX2Vycm5vKF8oImNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciKSwKIAkJCQkgIG91dHB1dF9kaXJlY3RvcnkpOwogCX0KIApAQCAtMTg2Miw3ICsxOTk1LDcgQEAKIAl9CiAKIAltZW1zZXQoJmJhc2VzLCAwLCBzaXplb2YoYmFzZXMpKTsKLQlpZiAoYmFzZV9jb21taXQgfHwgYmFzZV9hdXRvKSB7CisJaWYgKGJhc2VfY29tbWl0KSB7CiAJCXN0cnVjdCBjb21taXQgKmJhc2UgPSBnZXRfYmFzZV9jb21taXQoYmFzZV9jb21taXQsIGxpc3QsIG5yKTsKIAkJcmVzZXRfcmV2aXNpb25fd2FsaygpOwogCQljbGVhcl9vYmplY3RfZmxhZ3MoVU5JTlRFUkVTVElORyk7CkBAIC0xOTM3LDkgKzIwNzAsMTAgQEAKIAogCQlpZiAoIXVzZV9zdGRvdXQgJiYKIAkJICAgIG9wZW5fbmV4dF9maWxlKHJldi5udW1iZXJlZF9maWxlcyA/IE5VTEwgOiBjb21taXQsIE5VTEwsICZyZXYsIHF1aWV0KSkKLQkJCWRpZShfKCJGYWlsZWQgdG8gY3JlYXRlIG91dHB1dCBmaWxlcyIpKTsKKwkJCWRpZShfKCJmYWlsZWQgdG8gY3JlYXRlIG91dHB1dCBmaWxlcyIpKTsKIAkJc2hvd24gPSBsb2dfdHJlZV9jb21taXQoJnJldiwgY29tbWl0KTsKLQkJZnJlZV9jb21taXRfYnVmZmVyKGNvbW1pdCk7CisJCWZyZWVfY29tbWl0X2J1ZmZlcih0aGVfcmVwb3NpdG9yeS0+cGFyc2VkX29iamVjdHMsCisJCQkJICAgY29tbWl0KTsKIAogCQkvKiBXZSBwdXQgb25lIGV4dHJhIGJsYW5rIGxpbmUgYmV0d2VlbiBmb3JtYXR0ZWQKIAkJICogcGF0Y2hlcyBhbmQgdGhpcyBmbGFnIGlzIHVzZWQgYnkgbG9nLXRyZWUgY29kZQpAQCAtMjA2MCw5ICsyMTk0LDkgQEAKIAlyZXZzLm1heF9wYXJlbnRzID0gMTsKIAogCWlmIChhZGRfcGVuZGluZ19jb21taXQoaGVhZCwgJnJldnMsIDApKQotCQlkaWUoXygiVW5rbm93biBjb21taXQgJXMiKSwgaGVhZCk7CisJCWRpZShfKCJ1bmtub3duIGNvbW1pdCAlcyIpLCBoZWFkKTsKIAlpZiAoYWRkX3BlbmRpbmdfY29tbWl0KHVwc3RyZWFtLCAmcmV2cywgVU5JTlRFUkVTVElORykpCi0JCWRpZShfKCJVbmtub3duIGNvbW1pdCAlcyIpLCB1cHN0cmVhbSk7CisJCWRpZShfKCJ1bmtub3duIGNvbW1pdCAlcyIpLCB1cHN0cmVhbSk7CiAKIAkvKiBEb24ndCBzYXkgYW55dGhpbmcgaWYgaGVhZCBhbmQgdXBzdHJlYW0gYXJlIHRoZSBzYW1lLiAqLwogCWlmIChyZXZzLnBlbmRpbmcubnIgPT0gMikgewpAQCAtMjA3NCw3ICsyMjA4LDcgQEAKIAlnZXRfcGF0Y2hfaWRzKCZyZXZzLCAmaWRzKTsKIAogCWlmIChsaW1pdCAmJiBhZGRfcGVuZGluZ19jb21taXQobGltaXQsICZyZXZzLCBVTklOVEVSRVNUSU5HKSkKLQkJZGllKF8oIlVua25vd24gY29tbWl0ICVzIiksIGxpbWl0KTsKKwkJZGllKF8oInVua25vd24gY29tbWl0ICVzIiksIGxpbWl0KTsKIAogCS8qIHJldmVyc2UgdGhlIGxpc3Qgb2YgY29tbWl0cyAqLwogCWlmIChwcmVwYXJlX3JldmlzaW9uX3dhbGsoJnJldnMpKQpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9scy1maWxlcy5jIGIvYnVpbHRpbi9scy1maWxlcy5jCmluZGV4IGM3MGE5YzcuLmYwNjlhMDIgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vbHMtZmlsZXMuYworKysgYi9idWlsdGluL2xzLWZpbGVzLmMKQEAgLTUsNyArNSw2IEBACiAgKgogICogQ29weXJpZ2h0IChDKSBMaW51cyBUb3J2YWxkcywgMjAwNQogICovCi0jZGVmaW5lIE5PX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAicmVwb3NpdG9yeS5oIgogI2luY2x1ZGUgImNvbmZpZy5oIgpAQCAtMTEzLDExICsxMTIsMTEgQEAKIAlpZiAoZGVidWdfbW9kZSkgewogCQljb25zdCBzdHJ1Y3Qgc3RhdF9kYXRhICpzZCA9ICZjZS0+Y2Vfc3RhdF9kYXRhOwogCi0JCXByaW50ZigiICBjdGltZTogJWQ6JWRcbiIsIHNkLT5zZF9jdGltZS5zZWMsIHNkLT5zZF9jdGltZS5uc2VjKTsKLQkJcHJpbnRmKCIgIG10aW1lOiAlZDolZFxuIiwgc2QtPnNkX210aW1lLnNlYywgc2QtPnNkX210aW1lLm5zZWMpOwotCQlwcmludGYoIiAgZGV2OiAlZFx0aW5vOiAlZFxuIiwgc2QtPnNkX2Rldiwgc2QtPnNkX2lubyk7Ci0JCXByaW50ZigiICB1aWQ6ICVkXHRnaWQ6ICVkXG4iLCBzZC0+c2RfdWlkLCBzZC0+c2RfZ2lkKTsKLQkJcHJpbnRmKCIgIHNpemU6ICVkXHRmbGFnczogJXhcbiIsIHNkLT5zZF9zaXplLCBjZS0+Y2VfZmxhZ3MpOworCQlwcmludGYoIiAgY3RpbWU6ICV1OiV1XG4iLCBzZC0+c2RfY3RpbWUuc2VjLCBzZC0+c2RfY3RpbWUubnNlYyk7CisJCXByaW50ZigiICBtdGltZTogJXU6JXVcbiIsIHNkLT5zZF9tdGltZS5zZWMsIHNkLT5zZF9tdGltZS5uc2VjKTsKKwkJcHJpbnRmKCIgIGRldjogJXVcdGlubzogJXVcbiIsIHNkLT5zZF9kZXYsIHNkLT5zZF9pbm8pOworCQlwcmludGYoIiAgdWlkOiAldVx0Z2lkOiAldVxuIiwgc2QtPnNkX3VpZCwgc2QtPnNkX2dpZCk7CisJCXByaW50ZigiICBzaXplOiAldVx0ZmxhZ3M6ICV4XG4iLCBzZC0+c2Rfc2l6ZSwgY2UtPmNlX2ZsYWdzKTsKIAl9CiB9CiAKQEAgLTIwNiwxNyArMjA1LDE5IEBACiBzdGF0aWMgdm9pZCBzaG93X3N1Ym1vZHVsZShzdHJ1Y3QgcmVwb3NpdG9yeSAqc3VwZXJwcm9qZWN0LAogCQkJICAgc3RydWN0IGRpcl9zdHJ1Y3QgKmRpciwgY29uc3QgY2hhciAqcGF0aCkKIHsKLQlzdHJ1Y3QgcmVwb3NpdG9yeSBzdWJtb2R1bGU7CisJc3RydWN0IHJlcG9zaXRvcnkgc3VicmVwbzsKKwljb25zdCBzdHJ1Y3Qgc3VibW9kdWxlICpzdWIgPSBzdWJtb2R1bGVfZnJvbV9wYXRoKHN1cGVycHJvamVjdCwKKwkJCQkJCQkgICZudWxsX29pZCwgcGF0aCk7CiAKLQlpZiAocmVwb19zdWJtb2R1bGVfaW5pdCgmc3VibW9kdWxlLCBzdXBlcnByb2plY3QsIHBhdGgpKQorCWlmIChyZXBvX3N1Ym1vZHVsZV9pbml0KCZzdWJyZXBvLCBzdXBlcnByb2plY3QsIHN1YikpCiAJCXJldHVybjsKIAotCWlmIChyZXBvX3JlYWRfaW5kZXgoJnN1Ym1vZHVsZSkgPCAwKQorCWlmIChyZXBvX3JlYWRfaW5kZXgoJnN1YnJlcG8pIDwgMCkKIAkJZGllKCJpbmRleCBmaWxlIGNvcnJ1cHQiKTsKIAotCXNob3dfZmlsZXMoJnN1Ym1vZHVsZSwgZGlyKTsKKwlzaG93X2ZpbGVzKCZzdWJyZXBvLCBkaXIpOwogCi0JcmVwb19jbGVhcigmc3VibW9kdWxlKTsKKwlyZXBvX2NsZWFyKCZzdWJyZXBvKTsKIH0KIAogc3RhdGljIHZvaWQgc2hvd19jZShzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgc3RydWN0IGRpcl9zdHJ1Y3QgKmRpciwKQEAgLTM3Miw3ICszNzMsNyBAQAogCWZpcnN0ID0gcG9zOwogCWxhc3QgPSBpc3RhdGUtPmNhY2hlX25yOwogCXdoaWxlIChsYXN0ID4gZmlyc3QpIHsKLQkJaW50IG5leHQgPSAobGFzdCArIGZpcnN0KSA+PiAxOworCQlpbnQgbmV4dCA9IGZpcnN0ICsgKChsYXN0IC0gZmlyc3QpID4+IDEpOwogCQljb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlID0gaXN0YXRlLT5jYWNoZVtuZXh0XTsKIAkJaWYgKCFzdHJuY21wKGNlLT5uYW1lLCBwcmVmaXgsIHByZWZpeGxlbikpIHsKIAkJCWZpcnN0ID0gbmV4dCsxOwpAQCAtNDQxLDcgKzQ0Miw3IEBACiAJCQkgICAgICAgUEFUSFNQRUNfUFJFRkVSX0NXRCwgcHJlZml4LCBtYXRjaGJ1Zik7CiAJfSBlbHNlCiAJCW1lbXNldCgmcGF0aHNwZWMsIDAsIHNpemVvZihwYXRoc3BlYykpOwotCWlmIChyZWFkX3RyZWUodHJlZSwgMSwgJnBhdGhzcGVjLCBpc3RhdGUpKQorCWlmIChyZWFkX3RyZWUodGhlX3JlcG9zaXRvcnksIHRyZWUsIDEsICZwYXRoc3BlYywgaXN0YXRlKSkKIAkJZGllKCJ1bmFibGUgdG8gcmVhZCB0cmVlIGVudHJpZXMgJXMiLCB0cmVlX25hbWUpOwogCiAJZm9yIChpID0gMDsgaSA8IGlzdGF0ZS0+Y2FjaGVfbnI7IGkrKykgewpAQCAtNDkxLDcgKzQ5Miw3IEBACiAJQlVHX09OX09QVF9ORUcodW5zZXQpOwogCiAJZXhjX2dpdmVuID0gMTsKLQlhZGRfZXhjbHVkZXNfZnJvbV9maWxlKGRpciwgYXJnKTsKKwlhZGRfcGF0dGVybnNfZnJvbV9maWxlKGRpciwgYXJnKTsKIAogCXJldHVybiAwOwogfQpAQCAtNTE1LDcgKzUxNiw3IEBACiAJaW50IHJlcXVpcmVfd29ya190cmVlID0gMCwgc2hvd190YWcgPSAwLCBpOwogCWNvbnN0IGNoYXIgKm1heF9wcmVmaXg7CiAJc3RydWN0IGRpcl9zdHJ1Y3QgZGlyOwotCXN0cnVjdCBleGNsdWRlX2xpc3QgKmVsOworCXN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsOwogCXN0cnVjdCBzdHJpbmdfbGlzdCBleGNsdWRlX2xpc3QgPSBTVFJJTkdfTElTVF9JTklUX05PRFVQOwogCXN0cnVjdCBvcHRpb24gYnVpbHRpbl9sc19maWxlc19vcHRpb25zW10gPSB7CiAJCS8qIFRoaW5rIHR3aWNlIGJlZm9yZSBhZGRpbmcgIi0tbnVsIiBzeW5vbnltIHRvIHRoaXMgKi8KQEAgLTU5Myw5ICs1OTQsOSBAQAogCiAJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LCBidWlsdGluX2xzX2ZpbGVzX29wdGlvbnMsCiAJCQlsc19maWxlc191c2FnZSwgMCk7Ci0JZWwgPSBhZGRfZXhjbHVkZV9saXN0KCZkaXIsIEVYQ19DTURMLCAiLS1leGNsdWRlIG9wdGlvbiIpOworCXBsID0gYWRkX3BhdHRlcm5fbGlzdCgmZGlyLCBFWENfQ01ETCwgIi0tZXhjbHVkZSBvcHRpb24iKTsKIAlmb3IgKGkgPSAwOyBpIDwgZXhjbHVkZV9saXN0Lm5yOyBpKyspIHsKLQkJYWRkX2V4Y2x1ZGUoZXhjbHVkZV9saXN0Lml0ZW1zW2ldLnN0cmluZywgIiIsIDAsIGVsLCAtLWV4Y2x1ZGVfYXJncyk7CisJCWFkZF9wYXR0ZXJuKGV4Y2x1ZGVfbGlzdC5pdGVtc1tpXS5zdHJpbmcsICIiLCAwLCBwbCwgLS1leGNsdWRlX2FyZ3MpOwogCX0KIAlpZiAoc2hvd190YWcgfHwgc2hvd192YWxpZF9iaXQgfHwgc2hvd19mc21vbml0b3JfYml0KSB7CiAJCXRhZ19jYWNoZWQgPSAiSCAiOwpAQCAtNjc5LDcgKzY4MCw3IEBACiAKIAlpZiAocHNfbWF0Y2hlZCkgewogCQlpbnQgYmFkOwotCQliYWQgPSByZXBvcnRfcGF0aF9lcnJvcihwc19tYXRjaGVkLCAmcGF0aHNwZWMsIHByZWZpeCk7CisJCWJhZCA9IHJlcG9ydF9wYXRoX2Vycm9yKHBzX21hdGNoZWQsICZwYXRoc3BlYyk7CiAJCWlmIChiYWQpCiAJCQlmcHJpbnRmKHN0ZGVyciwgIkRpZCB5b3UgZm9yZ2V0IHRvICdnaXQgYWRkJz9cbiIpOwogCmRpZmYgLS1naXQgYS9idWlsdGluL2xzLXJlbW90ZS5jIGIvYnVpbHRpbi9scy1yZW1vdGUuYwppbmRleCAxZDdmMWY1Li42ZWY1MTk1IDEwMDY0NAotLS0gYS9idWlsdGluL2xzLXJlbW90ZS5jCisrKyBiL2J1aWx0aW4vbHMtcmVtb3RlLmMKQEAgLTY3LDggKzY3LDcgQEAKIAkJT1BUX0JJVCgwLCAicmVmcyIsICZmbGFncywgTl8oImRvIG5vdCBzaG93IHBlZWxlZCB0YWdzIiksIFJFRl9OT1JNQUwpLAogCQlPUFRfQk9PTCgwLCAiZ2V0LXVybCIsICZnZXRfdXJsLAogCQkJIE5fKCJ0YWtlIHVybC48YmFzZT4uaW5zdGVhZE9mIGludG8gYWNjb3VudCIpKSwKLQkJT1BUX0NBTExCQUNLKDAgLCAic29ydCIsIHNvcnRpbmdfdGFpbCwgTl8oImtleSIpLAotCQkJICAgICBOXygiZmllbGQgbmFtZSB0byBzb3J0IG9uIiksICZwYXJzZV9vcHRfcmVmX3NvcnRpbmcpLAorCQlPUFRfUkVGX1NPUlQoc29ydGluZ190YWlsKSwKIAkJT1BUX1NFVF9JTlRfRigwLCAiZXhpdC1jb2RlIiwgJnN0YXR1cywKIAkJCSAgICAgIE5fKCJleGl0IHdpdGggZXhpdCBjb2RlIDIgaWYgbm8gbWF0Y2hpbmcgcmVmcyBhcmUgZm91bmQiKSwKIAkJCSAgICAgIDIsIFBBUlNFX09QVF9OT0NPTVBMRVRFKSwKZGlmZiAtLWdpdCBhL2J1aWx0aW4vbHMtdHJlZS5jIGIvYnVpbHRpbi9scy10cmVlLmMKaW5kZXggN2Q1ODFkNi4uN2NhZDNmMiAxMDA2NDQKLS0tIGEvYnVpbHRpbi9scy10cmVlLmMKKysrIGIvYnVpbHRpbi9scy10cmVlLmMKQEAgLTE4NSw1ICsxODUsNiBAQAogCXRyZWUgPSBwYXJzZV90cmVlX2luZGlyZWN0KCZvaWQpOwogCWlmICghdHJlZSkKIAkJZGllKCJub3QgYSB0cmVlIG9iamVjdCIpOwotCXJldHVybiAhIXJlYWRfdHJlZV9yZWN1cnNpdmUodHJlZSwgIiIsIDAsIDAsICZwYXRoc3BlYywgc2hvd190cmVlLCBOVUxMKTsKKwlyZXR1cm4gISFyZWFkX3RyZWVfcmVjdXJzaXZlKHRoZV9yZXBvc2l0b3J5LCB0cmVlLCAiIiwgMCwgMCwKKwkJCQkgICAgICZwYXRoc3BlYywgc2hvd190cmVlLCBOVUxMKTsKIH0KZGlmZiAtLWdpdCBhL2J1aWx0aW4vbWVyZ2UtaW5kZXguYyBiL2J1aWx0aW4vbWVyZ2UtaW5kZXguYwppbmRleCBjOTk0NDNiLi4zOGVhNmFkIDEwMDY0NAotLS0gYS9idWlsdGluL21lcmdlLWluZGV4LmMKKysrIGIvYnVpbHRpbi9tZXJnZS1pbmRleC5jCkBAIC0xLDMgKzEsNCBAQAorI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiYnVpbHRpbi5oIgogI2luY2x1ZGUgInJ1bi1jb21tYW5kLmgiCiAKZGlmZiAtLWdpdCBhL2J1aWx0aW4vbWVyZ2Utb3Vycy5jIGIvYnVpbHRpbi9tZXJnZS1vdXJzLmMKaW5kZXggYzg0YzZlMC4uNDU5NDUwNyAxMDA2NDQKLS0tIGEvYnVpbHRpbi9tZXJnZS1vdXJzLmMKKysrIGIvYnVpbHRpbi9tZXJnZS1vdXJzLmMKQEAgLTcsNiArNyw3IEBACiAgKgogICogUHJldGVuZCB3ZSByZXNvbHZlZCB0aGUgaGVhZHMsIGJ1dCBkZWNsYXJlIG91ciB0cmVlIHRydW1wcyBldmVyeWJvZHkgZWxzZS4KICAqLworI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiZ2l0LWNvbXBhdC11dGlsLmgiCiAjaW5jbHVkZSAiYnVpbHRpbi5oIgogI2luY2x1ZGUgImRpZmYuaCIKQEAgLTI2LDcgKzI3LDcgQEAKIAkgKi8KIAlpZiAocmVhZF9jYWNoZSgpIDwgMCkKIAkJZGllX2Vycm5vKCJyZWFkX2NhY2hlIGZhaWxlZCIpOwotCWlmIChpbmRleF9kaWZmZXJzX2Zyb20oIkhFQUQiLCBOVUxMLCAwKSkKKwlpZiAoaW5kZXhfZGlmZmVyc19mcm9tKHRoZV9yZXBvc2l0b3J5LCAiSEVBRCIsIE5VTEwsIDApKQogCQlleGl0KDIpOwogCWV4aXQoMCk7CiB9CmRpZmYgLS1naXQgYS9idWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jIGIvYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYwppbmRleCA5YjJmNzA3Li5hNGJmZDhmIDEwMDY0NAotLS0gYS9idWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jCisrKyBiL2J1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmMKQEAgLTEsMyArMSw0IEBACisjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJidWlsdGluLmgiCiAjaW5jbHVkZSAiY29tbWl0LmgiCiAjaW5jbHVkZSAidGFnLmgiCkBAIC03LDE2ICs4LDE2IEBACiBzdGF0aWMgY29uc3QgY2hhciBidWlsdGluX21lcmdlX3JlY3Vyc2l2ZV91c2FnZVtdID0KIAkiZ2l0ICVzIDxiYXNlPi4uLiAtLSA8aGVhZD4gPHJlbW90ZT4gLi4uIjsKIAotc3RhdGljIGNvbnN0IGNoYXIgKmJldHRlcl9icmFuY2hfbmFtZShjb25zdCBjaGFyICpicmFuY2gpCitzdGF0aWMgY2hhciAqYmV0dGVyX2JyYW5jaF9uYW1lKGNvbnN0IGNoYXIgKmJyYW5jaCkKIHsKIAlzdGF0aWMgY2hhciBnaXRoZWFkX2Vudls4ICsgR0lUX01BWF9IRVhTWiArIDFdOwogCWNoYXIgKm5hbWU7CiAKIAlpZiAoc3RybGVuKGJyYW5jaCkgIT0gdGhlX2hhc2hfYWxnby0+aGV4c3opCi0JCXJldHVybiBicmFuY2g7CisJCXJldHVybiB4c3RyZHVwKGJyYW5jaCk7CiAJeHNucHJpbnRmKGdpdGhlYWRfZW52LCBzaXplb2YoZ2l0aGVhZF9lbnYpLCAiR0lUSEVBRF8lcyIsIGJyYW5jaCk7CiAJbmFtZSA9IGdldGVudihnaXRoZWFkX2Vudik7Ci0JcmV0dXJuIG5hbWUgPyBuYW1lIDogYnJhbmNoOworCXJldHVybiB4c3RyZHVwKG5hbWUgPyBuYW1lIDogYnJhbmNoKTsKIH0KIAogaW50IGNtZF9tZXJnZV9yZWN1cnNpdmUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCkBAIC0yNiw5ICsyNywxMCBAQAogCWludCBpLCBmYWlsZWQ7CiAJc3RydWN0IG9iamVjdF9pZCBoMSwgaDI7CiAJc3RydWN0IG1lcmdlX29wdGlvbnMgbzsKKwljaGFyICpiZXR0ZXIxLCAqYmV0dGVyMjsKIAlzdHJ1Y3QgY29tbWl0ICpyZXN1bHQ7CiAKLQlpbml0X21lcmdlX29wdGlvbnMoJm8pOworCWluaXRfbWVyZ2Vfb3B0aW9ucygmbywgdGhlX3JlcG9zaXRvcnkpOwogCWlmIChhcmd2WzBdICYmIGVuZHNfd2l0aChhcmd2WzBdLCAiLXN1YnRyZWUiKSkKIAkJby5zdWJ0cmVlX3NoaWZ0ID0gIiI7CiAKQEAgLTYyLDYgKzY0LDkgQEAKIAlpZiAoYXJnYyAtIGkgIT0gMykgLyogIi0tIiAiPGhlYWQ+IiAiPHJlbW90ZT4iICovCiAJCWRpZShfKCJub3QgaGFuZGxpbmcgYW55dGhpbmcgb3RoZXIgdGhhbiB0d28gaGVhZHMgbWVyZ2UuIikpOwogCisJaWYgKHJlcG9fcmVhZF9pbmRleF91bm1lcmdlZCh0aGVfcmVwb3NpdG9yeSkpCisJCWRpZV9yZXNvbHZlX2NvbmZsaWN0KCJtZXJnZSIpOworCiAJby5icmFuY2gxID0gYXJndlsrK2ldOwogCW8uYnJhbmNoMiA9IGFyZ3ZbKytpXTsKIApAQCAtNzAsMTMgKzc1LDE3IEBACiAJaWYgKGdldF9vaWQoby5icmFuY2gyLCAmaDIpKQogCQlkaWUoXygiY291bGQgbm90IHJlc29sdmUgcmVmICclcyciKSwgby5icmFuY2gyKTsKIAotCW8uYnJhbmNoMSA9IGJldHRlcl9icmFuY2hfbmFtZShvLmJyYW5jaDEpOwotCW8uYnJhbmNoMiA9IGJldHRlcl9icmFuY2hfbmFtZShvLmJyYW5jaDIpOworCW8uYnJhbmNoMSA9IGJldHRlcjEgPSBiZXR0ZXJfYnJhbmNoX25hbWUoby5icmFuY2gxKTsKKwlvLmJyYW5jaDIgPSBiZXR0ZXIyID0gYmV0dGVyX2JyYW5jaF9uYW1lKG8uYnJhbmNoMik7CiAKIAlpZiAoby52ZXJib3NpdHkgPj0gMykKIAkJcHJpbnRmKF8oIk1lcmdpbmcgJXMgd2l0aCAlc1xuIiksIG8uYnJhbmNoMSwgby5icmFuY2gyKTsKIAogCWZhaWxlZCA9IG1lcmdlX3JlY3Vyc2l2ZV9nZW5lcmljKCZvLCAmaDEsICZoMiwgYmFzZXNfY291bnQsIGJhc2VzLCAmcmVzdWx0KTsKKworCWZyZWUoYmV0dGVyMSk7CisJZnJlZShiZXR0ZXIyKTsKKwogCWlmIChmYWlsZWQgPCAwKQogCQlyZXR1cm4gMTI4OyAvKiBkaWUoKSBlcnJvciBjb2RlICovCiAJcmV0dXJuIGZhaWxlZDsKZGlmZiAtLWdpdCBhL2J1aWx0aW4vbWVyZ2UtdHJlZS5jIGIvYnVpbHRpbi9tZXJnZS10cmVlLmMKaW5kZXggNzBmNmZjOS4uZTcyNzE0YSAxMDA2NDQKLS0tIGEvYnVpbHRpbi9tZXJnZS10cmVlLmMKKysrIGIvYnVpbHRpbi9tZXJnZS10cmVlLmMKQEAgLTEsMyArMSw0IEBACisjZGVmaW5lIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJidWlsdGluLmgiCiAjaW5jbHVkZSAidHJlZS13YWxrLmgiCiAjaW5jbHVkZSAieGRpZmYtaW50ZXJmYWNlLmgiCkBAIC03Niw3ICs3Nyw4IEBACiAJdGhlaXIgPSBOVUxMOwogCWlmIChlbnRyeSkKIAkJdGhlaXIgPSBlbnRyeS0+YmxvYjsKLQlyZXR1cm4gbWVyZ2VfYmxvYnMoJnRoZV9pbmRleCwgcGF0aCwgYmFzZSwgb3VyLCB0aGVpciwgc2l6ZSk7CisJcmV0dXJuIG1lcmdlX2Jsb2JzKHRoZV9yZXBvc2l0b3J5LT5pbmRleCwgcGF0aCwKKwkJCSAgIGJhc2UsIG91ciwgdGhlaXIsIHNpemUpOwogfQogCiBzdGF0aWMgdm9pZCAqb3JpZ2luKHN0cnVjdCBtZXJnZV9saXN0ICplbnRyeSwgdW5zaWduZWQgbG9uZyAqc2l6ZSkKQEAgLTE1NCwxNSArMTU2LDE1IEBACiAvKiBBbiBlbXB0eSBlbnRyeSBuZXZlciBjb21wYXJlcyBzYW1lLCBub3QgZXZlbiB0byBhbm90aGVyIGVtcHR5IGVudHJ5ICovCiBzdGF0aWMgaW50IHNhbWVfZW50cnkoc3RydWN0IG5hbWVfZW50cnkgKmEsIHN0cnVjdCBuYW1lX2VudHJ5ICpiKQogewotCXJldHVybglhLT5vaWQgJiYKLQkJYi0+b2lkICYmCi0JCW9pZGVxKGEtPm9pZCwgYi0+b2lkKSAmJgorCXJldHVybgkhaXNfbnVsbF9vaWQoJmEtPm9pZCkgJiYKKwkJIWlzX251bGxfb2lkKCZiLT5vaWQpICYmCisJCW9pZGVxKCZhLT5vaWQsICZiLT5vaWQpICYmCiAJCWEtPm1vZGUgPT0gYi0+bW9kZTsKIH0KIAogc3RhdGljIGludCBib3RoX2VtcHR5KHN0cnVjdCBuYW1lX2VudHJ5ICphLCBzdHJ1Y3QgbmFtZV9lbnRyeSAqYikKIHsKLQlyZXR1cm4gIShhLT5vaWQgfHwgYi0+b2lkKTsKKwlyZXR1cm4gaXNfbnVsbF9vaWQoJmEtPm9pZCkgJiYgaXNfbnVsbF9vaWQoJmItPm9pZCk7CiB9CiAKIHN0YXRpYyBzdHJ1Y3QgbWVyZ2VfbGlzdCAqY3JlYXRlX2VudHJ5KHVuc2lnbmVkIHN0YWdlLCB1bnNpZ25lZCBtb2RlLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGNvbnN0IGNoYXIgKnBhdGgpCkBAIC0xNzgsOCArMTgwLDkgQEAKIAogc3RhdGljIGNoYXIgKnRyYXZlcnNlX3BhdGgoY29uc3Qgc3RydWN0IHRyYXZlcnNlX2luZm8gKmluZm8sIGNvbnN0IHN0cnVjdCBuYW1lX2VudHJ5ICpuKQogewotCWNoYXIgKnBhdGggPSB4bWFsbG9jeih0cmF2ZXJzZV9wYXRoX2xlbihpbmZvLCBuKSk7Ci0JcmV0dXJuIG1ha2VfdHJhdmVyc2VfcGF0aChwYXRoLCBpbmZvLCBuKTsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOworCXN0cmJ1Zl9tYWtlX3RyYXZlcnNlX3BhdGgoJmJ1ZiwgaW5mbywgbi0+cGF0aCwgbi0+cGF0aGxlbik7CisJcmV0dXJuIHN0cmJ1Zl9kZXRhY2goJmJ1ZiwgTlVMTCk7CiB9CiAKIHN0YXRpYyB2b2lkIHJlc29sdmUoY29uc3Qgc3RydWN0IHRyYXZlcnNlX2luZm8gKmluZm8sIHN0cnVjdCBuYW1lX2VudHJ5ICpvdXJzLCBzdHJ1Y3QgbmFtZV9lbnRyeSAqcmVzdWx0KQpAQCAtMTkyLDggKzE5NSw4IEBACiAJCXJldHVybjsKIAogCXBhdGggPSB0cmF2ZXJzZV9wYXRoKGluZm8sIHJlc3VsdCk7Ci0Jb3JpZyA9IGNyZWF0ZV9lbnRyeSgyLCBvdXJzLT5tb2RlLCBvdXJzLT5vaWQsIHBhdGgpOwotCWZpbmFsID0gY3JlYXRlX2VudHJ5KDAsIHJlc3VsdC0+bW9kZSwgcmVzdWx0LT5vaWQsIHBhdGgpOworCW9yaWcgPSBjcmVhdGVfZW50cnkoMiwgb3Vycy0+bW9kZSwgJm91cnMtPm9pZCwgcGF0aCk7CisJZmluYWwgPSBjcmVhdGVfZW50cnkoMCwgcmVzdWx0LT5tb2RlLCAmcmVzdWx0LT5vaWQsIHBhdGgpOwogCiAJZmluYWwtPmxpbmsgPSBvcmlnOwogCkBAIC0yMDMsNiArMjA2LDcgQEAKIHN0YXRpYyB2b2lkIHVucmVzb2x2ZWRfZGlyZWN0b3J5KGNvbnN0IHN0cnVjdCB0cmF2ZXJzZV9pbmZvICppbmZvLAogCQkJCSBzdHJ1Y3QgbmFtZV9lbnRyeSBuWzNdKQogeworCXN0cnVjdCByZXBvc2l0b3J5ICpyID0gdGhlX3JlcG9zaXRvcnk7CiAJY2hhciAqbmV3YmFzZTsKIAlzdHJ1Y3QgbmFtZV9lbnRyeSAqcDsKIAlzdHJ1Y3QgdHJlZV9kZXNjIHRbM107CkBAIC0yMTcsMTAgKzIyMSwxMCBAQAogCiAJbmV3YmFzZSA9IHRyYXZlcnNlX3BhdGgoaW5mbywgcCk7CiAKLSNkZWZpbmUgRU5UUllfT0lEKGUpICgoKGUpLT5tb2RlICYmIFNfSVNESVIoKGUpLT5tb2RlKSkgPyAoZSktPm9pZCA6IE5VTEwpCi0JYnVmMCA9IGZpbGxfdHJlZV9kZXNjcmlwdG9yKHQgKyAwLCBFTlRSWV9PSUQobiArIDApKTsKLQlidWYxID0gZmlsbF90cmVlX2Rlc2NyaXB0b3IodCArIDEsIEVOVFJZX09JRChuICsgMSkpOwotCWJ1ZjIgPSBmaWxsX3RyZWVfZGVzY3JpcHRvcih0ICsgMiwgRU5UUllfT0lEKG4gKyAyKSk7CisjZGVmaW5lIEVOVFJZX09JRChlKSAoKChlKS0+bW9kZSAmJiBTX0lTRElSKChlKS0+bW9kZSkpID8gJihlKS0+b2lkIDogTlVMTCkKKwlidWYwID0gZmlsbF90cmVlX2Rlc2NyaXB0b3IociwgdCArIDAsIEVOVFJZX09JRChuICsgMCkpOworCWJ1ZjEgPSBmaWxsX3RyZWVfZGVzY3JpcHRvcihyLCB0ICsgMSwgRU5UUllfT0lEKG4gKyAxKSk7CisJYnVmMiA9IGZpbGxfdHJlZV9kZXNjcmlwdG9yKHIsIHQgKyAyLCBFTlRSWV9PSUQobiArIDIpKTsKICN1bmRlZiBFTlRSWV9PSUQKIAogCW1lcmdlX3RyZWVzKHQsIG5ld2Jhc2UpOwpAQCAtMjQzLDcgKzI0Nyw3IEBACiAJCXBhdGggPSBlbnRyeS0+cGF0aDsKIAllbHNlCiAJCXBhdGggPSB0cmF2ZXJzZV9wYXRoKGluZm8sIG4pOwotCWxpbmsgPSBjcmVhdGVfZW50cnkoc3RhZ2UsIG4tPm1vZGUsIG4tPm9pZCwgcGF0aCk7CisJbGluayA9IGNyZWF0ZV9lbnRyeShzdGFnZSwgbi0+bW9kZSwgJm4tPm9pZCwgcGF0aCk7CiAJbGluay0+bGluayA9IGVudHJ5OwogCXJldHVybiBsaW5rOwogfQpAQCAtMzE4LDcgKzMyMiw3IEBACiAJfQogCiAJaWYgKHNhbWVfZW50cnkoZW50cnkrMCwgZW50cnkrMSkpIHsKLQkJaWYgKGVudHJ5WzJdLm9pZCAmJiAhU19JU0RJUihlbnRyeVsyXS5tb2RlKSkgeworCQlpZiAoIWlzX251bGxfb2lkKCZlbnRyeVsyXS5vaWQpICYmICFTX0lTRElSKGVudHJ5WzJdLm1vZGUpKSB7CiAJCQkvKiBXZSBkaWQgbm90IHRvdWNoLCB0aGV5IG1vZGlmaWVkIC0tIHRha2UgdGhlaXJzICovCiAJCQlyZXNvbHZlKGluZm8sIGVudHJ5KzEsIGVudHJ5KzIpOwogCQkJcmV0dXJuIG1hc2s7CkBAIC0zNDYsMTcgKzM1MCwxOSBAQAogCiAJc2V0dXBfdHJhdmVyc2VfaW5mbygmaW5mbywgYmFzZSk7CiAJaW5mby5mbiA9IHRocmVld2F5X2NhbGxiYWNrOwotCXRyYXZlcnNlX3RyZWVzKDMsIHQsICZpbmZvKTsKKwl0cmF2ZXJzZV90cmVlcygmdGhlX2luZGV4LCAzLCB0LCAmaW5mbyk7CiB9CiAKLXN0YXRpYyB2b2lkICpnZXRfdHJlZV9kZXNjcmlwdG9yKHN0cnVjdCB0cmVlX2Rlc2MgKmRlc2MsIGNvbnN0IGNoYXIgKnJldikKK3N0YXRpYyB2b2lkICpnZXRfdHJlZV9kZXNjcmlwdG9yKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSBzdHJ1Y3QgdHJlZV9kZXNjICpkZXNjLAorCQkJCSBjb25zdCBjaGFyICpyZXYpCiB7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJdm9pZCAqYnVmOwogCi0JaWYgKGdldF9vaWQocmV2LCAmb2lkKSkKKwlpZiAocmVwb19nZXRfb2lkKHIsIHJldiwgJm9pZCkpCiAJCWRpZSgidW5rbm93biByZXYgJXMiLCByZXYpOwotCWJ1ZiA9IGZpbGxfdHJlZV9kZXNjcmlwdG9yKGRlc2MsICZvaWQpOworCWJ1ZiA9IGZpbGxfdHJlZV9kZXNjcmlwdG9yKHIsIGRlc2MsICZvaWQpOwogCWlmICghYnVmKQogCQlkaWUoIiVzIGlzIG5vdCBhIHRyZWUiLCByZXYpOwogCXJldHVybiBidWY7CkBAIC0zNjQsMTUgKzM3MCwxNiBAQAogCiBpbnQgY21kX21lcmdlX3RyZWUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCiB7CisJc3RydWN0IHJlcG9zaXRvcnkgKnIgPSB0aGVfcmVwb3NpdG9yeTsKIAlzdHJ1Y3QgdHJlZV9kZXNjIHRbM107CiAJdm9pZCAqYnVmMSwgKmJ1ZjIsICpidWYzOwogCiAJaWYgKGFyZ2MgIT0gNCkKIAkJdXNhZ2UobWVyZ2VfdHJlZV91c2FnZSk7CiAKLQlidWYxID0gZ2V0X3RyZWVfZGVzY3JpcHRvcih0KzAsIGFyZ3ZbMV0pOwotCWJ1ZjIgPSBnZXRfdHJlZV9kZXNjcmlwdG9yKHQrMSwgYXJndlsyXSk7Ci0JYnVmMyA9IGdldF90cmVlX2Rlc2NyaXB0b3IodCsyLCBhcmd2WzNdKTsKKwlidWYxID0gZ2V0X3RyZWVfZGVzY3JpcHRvcihyLCB0KzAsIGFyZ3ZbMV0pOworCWJ1ZjIgPSBnZXRfdHJlZV9kZXNjcmlwdG9yKHIsIHQrMSwgYXJndlsyXSk7CisJYnVmMyA9IGdldF90cmVlX2Rlc2NyaXB0b3IociwgdCsyLCBhcmd2WzNdKTsKIAltZXJnZV90cmVlcyh0LCAiIik7CiAJZnJlZShidWYxKTsKIAlmcmVlKGJ1ZjIpOwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9tZXJnZS5jIGIvYnVpbHRpbi9tZXJnZS5jCmluZGV4IGMzYzk3NmQuLmQxMjdkMjIgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vbWVyZ2UuYworKysgYi9idWlsdGluL21lcmdlLmMKQEAgLTYsNiArNiw3IEBACiAgKiBCYXNlZCBvbiBnaXQtbWVyZ2Uuc2ggYnkgSnVuaW8gQyBIYW1hbm8uCiAgKi8KIAorI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJwYXJzZS1vcHRpb25zLmgiCkBAIC0zNiw3ICszNyw5IEBACiAjaW5jbHVkZSAicGFja2ZpbGUuaCIKICNpbmNsdWRlICJ0YWcuaCIKICNpbmNsdWRlICJhbGlhcy5oIgorI2luY2x1ZGUgImJyYW5jaC5oIgogI2luY2x1ZGUgImNvbW1pdC1yZWFjaC5oIgorI2luY2x1ZGUgInd0LXN0YXR1cy5oIgogCiAjZGVmaW5lIERFRkFVTFRfVFdPSEVBRCAoMTw8MCkKICNkZWZpbmUgREVGQVVMVF9PQ1RPUFVTICgxPDwxKQpAQCAtNTYsOSArNTksMTAgQEAKIH07CiAKIHN0YXRpYyBpbnQgc2hvd19kaWZmc3RhdCA9IDEsIHNob3J0bG9nX2xlbiA9IC0xLCBzcXVhc2g7Ci1zdGF0aWMgaW50IG9wdGlvbl9jb21taXQgPSAxOworc3RhdGljIGludCBvcHRpb25fY29tbWl0ID0gLTE7CiBzdGF0aWMgaW50IG9wdGlvbl9lZGl0ID0gLTE7CiBzdGF0aWMgaW50IGFsbG93X3RyaXZpYWwgPSAxLCBoYXZlX21lc3NhZ2UsIHZlcmlmeV9zaWduYXR1cmVzOworc3RhdGljIGludCBjaGVja190cnVzdF9sZXZlbCA9IDE7CiBzdGF0aWMgaW50IG92ZXJ3cml0ZV9pZ25vcmUgPSAxOwogc3RhdGljIHN0cnVjdCBzdHJidWYgbWVyZ2VfbXNnID0gU1RSQlVGX0lOSVQ7CiBzdGF0aWMgc3RydWN0IHN0cmF0ZWd5ICoqdXNlX3N0cmF0ZWdpZXM7CkBAIC03MSwxMyArNzUsMTQgQEAKIHN0YXRpYyBpbnQgdmVyYm9zaXR5Owogc3RhdGljIGludCBhbGxvd19yZXJlcmVfYXV0bzsKIHN0YXRpYyBpbnQgYWJvcnRfY3VycmVudF9tZXJnZTsKK3N0YXRpYyBpbnQgcXVpdF9jdXJyZW50X21lcmdlOwogc3RhdGljIGludCBjb250aW51ZV9jdXJyZW50X21lcmdlOwogc3RhdGljIGludCBhbGxvd191bnJlbGF0ZWRfaGlzdG9yaWVzOwogc3RhdGljIGludCBzaG93X3Byb2dyZXNzID0gLTE7CiBzdGF0aWMgaW50IGRlZmF1bHRfdG9fdXBzdHJlYW0gPSAxOwogc3RhdGljIGludCBzaWdub2ZmOwogc3RhdGljIGNvbnN0IGNoYXIgKnNpZ25fY29tbWl0Owotc3RhdGljIGludCB2ZXJpZnlfbXNnID0gMTsKK3N0YXRpYyBpbnQgbm9fdmVyaWZ5OwogCiBzdGF0aWMgc3RydWN0IHN0cmF0ZWd5IGFsbF9zdHJhdGVneVtdID0gewogCXsgInJlY3Vyc2l2ZSIsICBERUZBVUxUX1RXT0hFQUQgfCBOT19UUklWSUFMIH0sCkBAIC05Nyw2ICsxMDIsOSBAQAogCiBzdGF0aWMgZW51bSBmZl90eXBlIGZhc3RfZm9yd2FyZCA9IEZGX0FMTE9XOwogCitzdGF0aWMgY29uc3QgY2hhciAqY2xlYW51cF9hcmc7CitzdGF0aWMgZW51bSBjb21taXRfbXNnX2NsZWFudXBfbW9kZSBjbGVhbnVwX21vZGU7CisKIHN0YXRpYyBpbnQgb3B0aW9uX3BhcnNlX21lc3NhZ2UoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAogCQkJCWNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQogewpAQCAtMTEyLDEyICsxMjAsMTUgQEAKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBvcHRpb25fcmVhZF9tZXNzYWdlKHN0cnVjdCBwYXJzZV9vcHRfY3R4X3QgKmN0eCwKLQkJCSAgICAgICBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsIGludCB1bnNldCkKK3N0YXRpYyBlbnVtIHBhcnNlX29wdF9yZXN1bHQgb3B0aW9uX3JlYWRfbWVzc2FnZShzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpjdHgsCisJCQkJCQkgY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQkJCQkJIGNvbnN0IGNoYXIgKmFyZ19ub3RfdXNlZCwKKwkJCQkJCSBpbnQgdW5zZXQpCiB7CiAJc3RydWN0IHN0cmJ1ZiAqYnVmID0gb3B0LT52YWx1ZTsKIAljb25zdCBjaGFyICphcmc7CiAKKwlCVUdfT05fT1BUX0FSRyhhcmdfbm90X3VzZWQpOwogCWlmICh1bnNldCkKIAkJQlVHKCItRiBjYW5ub3QgYmUgbmVnYXRlZCIpOwogCkBAIC0xMjgsNyArMTM5LDcgQEAKIAkJY3R4LT5hcmdjLS07CiAJCWFyZyA9ICorK2N0eC0+YXJndjsKIAl9IGVsc2UKLQkJcmV0dXJuIG9wdGVycm9yKG9wdCwgInJlcXVpcmVzIGEgdmFsdWUiLCAwKTsKKwkJcmV0dXJuIGVycm9yKF8oIm9wdGlvbiBgJXMnIHJlcXVpcmVzIGEgdmFsdWUiKSwgb3B0LT5sb25nX25hbWUpOwogCiAJaWYgKGJ1Zi0+bGVuKQogCQlzdHJidWZfYWRkY2goYnVmLCAnXG4nKTsKQEAgLTI0NSw2ICsyNTYsNyBAQAogCQlOXygicGVyZm9ybSBhIGNvbW1pdCBpZiB0aGUgbWVyZ2Ugc3VjY2VlZHMgKGRlZmF1bHQpIikpLAogCU9QVF9CT09MKCdlJywgImVkaXQiLCAmb3B0aW9uX2VkaXQsCiAJCU5fKCJlZGl0IG1lc3NhZ2UgYmVmb3JlIGNvbW1pdHRpbmciKSksCisJT1BUX0NMRUFOVVAoJmNsZWFudXBfYXJnKSwKIAlPUFRfU0VUX0lOVCgwLCAiZmYiLCAmZmFzdF9mb3J3YXJkLCBOXygiYWxsb3cgZmFzdC1mb3J3YXJkIChkZWZhdWx0KSIpLCBGRl9BTExPVyksCiAJT1BUX1NFVF9JTlRfRigwLCAiZmYtb25seSIsICZmYXN0X2ZvcndhcmQsCiAJCSAgICAgIE5fKCJhYm9ydCBpZiBmYXN0LWZvcndhcmQgaXMgbm90IHBvc3NpYmxlIiksCkBAIC0yNjEsMTAgKzI3MywxMiBAQAogCQlvcHRpb25fcGFyc2VfbWVzc2FnZSksCiAJeyBPUFRJT05fTE9XTEVWRUxfQ0FMTEJBQ0ssICdGJywgImZpbGUiLCAmbWVyZ2VfbXNnLCBOXygicGF0aCIpLAogCQlOXygicmVhZCBtZXNzYWdlIGZyb20gZmlsZSIpLCBQQVJTRV9PUFRfTk9ORUcsCi0JCShwYXJzZV9vcHRfY2IgKikgb3B0aW9uX3JlYWRfbWVzc2FnZSB9LAorCQlOVUxMLCAwLCBvcHRpb25fcmVhZF9tZXNzYWdlIH0sCiAJT1BUX19WRVJCT1NJVFkoJnZlcmJvc2l0eSksCiAJT1BUX0JPT0woMCwgImFib3J0IiwgJmFib3J0X2N1cnJlbnRfbWVyZ2UsCiAJCU5fKCJhYm9ydCB0aGUgY3VycmVudCBpbi1wcm9ncmVzcyBtZXJnZSIpKSwKKwlPUFRfQk9PTCgwLCAicXVpdCIsICZxdWl0X2N1cnJlbnRfbWVyZ2UsCisJCU5fKCItLWFib3J0IGJ1dCBsZWF2ZSBpbmRleCBhbmQgd29ya2luZyB0cmVlIGFsb25lIikpLAogCU9QVF9CT09MKDAsICJjb250aW51ZSIsICZjb250aW51ZV9jdXJyZW50X21lcmdlLAogCQlOXygiY29udGludWUgdGhlIGN1cnJlbnQgaW4tcHJvZ3Jlc3MgbWVyZ2UiKSksCiAJT1BUX0JPT0woMCwgImFsbG93LXVucmVsYXRlZC1oaXN0b3JpZXMiLCAmYWxsb3dfdW5yZWxhdGVkX2hpc3RvcmllcywKQEAgLTI3NCwxOCArMjg4LDEwIEBACiAJICBOXygiR1BHIHNpZ24gY29tbWl0IiksIFBBUlNFX09QVF9PUFRBUkcsIE5VTEwsIChpbnRwdHJfdCkgIiIgfSwKIAlPUFRfQk9PTCgwLCAib3ZlcndyaXRlLWlnbm9yZSIsICZvdmVyd3JpdGVfaWdub3JlLCBOXygidXBkYXRlIGlnbm9yZWQgZmlsZXMgKGRlZmF1bHQpIikpLAogCU9QVF9CT09MKDAsICJzaWdub2ZmIiwgJnNpZ25vZmYsIE5fKCJhZGQgU2lnbmVkLW9mZi1ieToiKSksCi0JT1BUX0JPT0woMCwgInZlcmlmeSIsICZ2ZXJpZnlfbXNnLCBOXygidmVyaWZ5IGNvbW1pdC1tc2cgaG9vayIpKSwKKwlPUFRfQk9PTCgwLCAibm8tdmVyaWZ5IiwgJm5vX3ZlcmlmeSwgTl8oImJ5cGFzcyBwcmUtbWVyZ2UtY29tbWl0IGFuZCBjb21taXQtbXNnIGhvb2tzIikpLAogCU9QVF9FTkQoKQogfTsKIAotLyogQ2xlYW5zIHVwIG1ldGFkYXRhIHRoYXQgaXMgdW5pbnRlcmVzdGluZyBhZnRlciBhIHN1Y2NlZWRlZCBtZXJnZS4gKi8KLXN0YXRpYyB2b2lkIGRyb3Bfc2F2ZSh2b2lkKQotewotCXVubGluayhnaXRfcGF0aF9tZXJnZV9oZWFkKHRoZV9yZXBvc2l0b3J5KSk7Ci0JdW5saW5rKGdpdF9wYXRoX21lcmdlX21zZyh0aGVfcmVwb3NpdG9yeSkpOwotCXVubGluayhnaXRfcGF0aF9tZXJnZV9tb2RlKHRoZV9yZXBvc2l0b3J5KSk7Ci19Ci0KIHN0YXRpYyBpbnQgc2F2ZV9zdGF0ZShzdHJ1Y3Qgb2JqZWN0X2lkICpzdGFzaCkKIHsKIAlpbnQgbGVuOwpAQCAtMzc5LDcgKzM4NSw3IEBACiB7CiAJaWYgKHZlcmJvc2l0eSA+PSAwKQogCQlwcmludGYoIiVzJXNcbiIsIHNxdWFzaCA/IF8oIiAobm90aGluZyB0byBzcXVhc2gpIikgOiAiIiwgbXNnKTsKLQlkcm9wX3NhdmUoKTsKKwlyZW1vdmVfbWVyZ2VfYnJhbmNoX3N0YXRlKHRoZV9yZXBvc2l0b3J5KTsKIH0KIAogc3RhdGljIHZvaWQgc3F1YXNoX21lc3NhZ2Uoc3RydWN0IGNvbW1pdCAqY29tbWl0LCBzdHJ1Y3QgY29tbWl0X2xpc3QgKnJlbW90ZWhlYWRzKQpAQCAtNDQ4LDcgKzQ1NCw3IEBACiAJCQkgKiBXZSBpZ25vcmUgZXJyb3JzIGluICdnYyAtLWF1dG8nLCBzaW5jZSB0aGUKIAkJCSAqIHVzZXIgc2hvdWxkIHNlZSB0aGVtLgogCQkJICovCi0JCQljbG9zZV9hbGxfcGFja3ModGhlX3JlcG9zaXRvcnktPm9iamVjdHMpOworCQkJY2xvc2Vfb2JqZWN0X3N0b3JlKHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzKTsKIAkJCXJ1bl9jb21tYW5kX3Zfb3B0KGFyZ3ZfZ2NfYXV0bywgUlVOX0dJVF9DTUQpOwogCQl9CiAJfQpAQCAtNTc4LDcgKzU4NCw3IEBACiAJYXJnYyA9IHNwbGl0X2NtZGxpbmUoYm1vLCAmYXJndik7CiAJaWYgKGFyZ2MgPCAwKQogCQlkaWUoXygiQmFkIGJyYW5jaC4lcy5tZXJnZW9wdGlvbnMgc3RyaW5nOiAlcyIpLCBicmFuY2gsCi0JCSAgICBzcGxpdF9jbWRsaW5lX3N0cmVycm9yKGFyZ2MpKTsKKwkJICAgIF8oc3BsaXRfY21kbGluZV9zdHJlcnJvcihhcmdjKSkpOwogCVJFQUxMT0NfQVJSQVkoYXJndiwgYXJnYyArIDIpOwogCU1PVkVfQVJSQVkoYXJndiArIDEsIGFyZ3YsIGFyZ2MgKyAxKTsKIAlhcmdjKys7CkBAIC02MDgsNiArNjE0LDggQEAKIAkJcmV0dXJuIGdpdF9jb25maWdfc3RyaW5nKCZwdWxsX3R3b2hlYWQsIGssIHYpOwogCWVsc2UgaWYgKCFzdHJjbXAoaywgInB1bGwub2N0b3B1cyIpKQogCQlyZXR1cm4gZ2l0X2NvbmZpZ19zdHJpbmcoJnB1bGxfb2N0b3B1cywgaywgdik7CisJZWxzZSBpZiAoIXN0cmNtcChrLCAiY29tbWl0LmNsZWFudXAiKSkKKwkJcmV0dXJuIGdpdF9jb25maWdfc3RyaW5nKCZjbGVhbnVwX2FyZywgaywgdik7CiAJZWxzZSBpZiAoIXN0cmNtcChrLCAibWVyZ2UucmVub3JtYWxpemUiKSkKIAkJb3B0aW9uX3Jlbm9ybWFsaXplID0gZ2l0X2NvbmZpZ19ib29sKGssIHYpOwogCWVsc2UgaWYgKCFzdHJjbXAoaywgIm1lcmdlLmZmIikpIHsKQEAgLTYyNCw2ICs2MzIsOCBAQAogCX0gZWxzZSBpZiAoIXN0cmNtcChrLCAiY29tbWl0LmdwZ3NpZ24iKSkgewogCQlzaWduX2NvbW1pdCA9IGdpdF9jb25maWdfYm9vbChrLCB2KSA/ICIiIDogTlVMTDsKIAkJcmV0dXJuIDA7CisJfSBlbHNlIGlmICghc3RyY21wKGssICJncGcubWludHJ1c3RsZXZlbCIpKSB7CisJCWNoZWNrX3RydXN0X2xldmVsID0gMDsKIAl9CiAKIAlzdGF0dXMgPSBmbXRfbWVyZ2VfbXNnX2NvbmZpZyhrLCB2LCBjYik7CkBAIC02ODEsMTYgKzY5MSwxMyBAQAogCQkJICAgICAgc3RydWN0IGNvbW1pdF9saXN0ICpyZW1vdGVoZWFkcywKIAkJCSAgICAgIHN0cnVjdCBjb21taXQgKmhlYWQpCiB7Ci0Jc3RydWN0IGxvY2tfZmlsZSBsb2NrID0gTE9DS19JTklUOwogCWNvbnN0IGNoYXIgKmhlYWRfYXJnID0gIkhFQUQiOwogCi0JaG9sZF9sb2NrZWRfaW5kZXgoJmxvY2ssIExPQ0tfRElFX09OX0VSUk9SKTsKLQlyZWZyZXNoX2NhY2hlKFJFRlJFU0hfUVVJRVQpOwotCWlmICh3cml0ZV9sb2NrZWRfaW5kZXgoJnRoZV9pbmRleCwgJmxvY2ssCi0JCQkgICAgICAgQ09NTUlUX0xPQ0sgfCBTS0lQX0lGX1VOQ0hBTkdFRCkpCisJaWYgKHJlZnJlc2hfYW5kX3dyaXRlX2NhY2hlKFJFRlJFU0hfUVVJRVQsIFNLSVBfSUZfVU5DSEFOR0VELCAwKSA8IDApCiAJCXJldHVybiBlcnJvcihfKCJVbmFibGUgdG8gd3JpdGUgaW5kZXguIikpOwogCiAJaWYgKCFzdHJjbXAoc3RyYXRlZ3ksICJyZWN1cnNpdmUiKSB8fCAhc3RyY21wKHN0cmF0ZWd5LCAic3VidHJlZSIpKSB7CisJCXN0cnVjdCBsb2NrX2ZpbGUgbG9jayA9IExPQ0tfSU5JVDsKIAkJaW50IGNsZWFuLCB4OwogCQlzdHJ1Y3QgY29tbWl0ICpyZXN1bHQ7CiAJCXN0cnVjdCBjb21taXRfbGlzdCAqcmV2ZXJzZWQgPSBOVUxMOwpAQCAtNzAyLDcgKzcwOSw3IEBACiAJCQlyZXR1cm4gMjsKIAkJfQogCi0JCWluaXRfbWVyZ2Vfb3B0aW9ucygmbyk7CisJCWluaXRfbWVyZ2Vfb3B0aW9ucygmbywgdGhlX3JlcG9zaXRvcnkpOwogCQlpZiAoIXN0cmNtcChzdHJhdGVneSwgInN1YnRyZWUiKSkKIAkJCW8uc3VidHJlZV9zaGlmdCA9ICIiOwogCkBAIC03OTYsMjAgKzgwMyw0NSBAQAogc3RhdGljIGNvbnN0IGNoYXIgbWVyZ2VfZWRpdG9yX2NvbW1lbnRbXSA9CiBOXygiUGxlYXNlIGVudGVyIGEgY29tbWl0IG1lc3NhZ2UgdG8gZXhwbGFpbiB3aHkgdGhpcyBtZXJnZSBpcyBuZWNlc3NhcnksXG4iCiAgICAiZXNwZWNpYWxseSBpZiBpdCBtZXJnZXMgYW4gdXBkYXRlZCB1cHN0cmVhbSBpbnRvIGEgdG9waWMgYnJhbmNoLlxuIgotICAgIlxuIgotICAgIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQsIGFuZCBhbiBlbXB0eSBtZXNzYWdlIGFib3J0c1xuIgorICAgIlxuIik7CisKK3N0YXRpYyBjb25zdCBjaGFyIHNjaXNzb3JzX2VkaXRvcl9jb21tZW50W10gPQorTl8oIkFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iKTsKKworc3RhdGljIGNvbnN0IGNoYXIgbm9fc2Npc3NvcnNfZWRpdG9yX2NvbW1lbnRbXSA9CitOXygiTGluZXMgc3RhcnRpbmcgd2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzXG4iCiAgICAidGhlIGNvbW1pdC5cbiIpOwogCiBzdGF0aWMgdm9pZCB3cml0ZV9tZXJnZV9oZWFkcyhzdHJ1Y3QgY29tbWl0X2xpc3QgKik7CiBzdGF0aWMgdm9pZCBwcmVwYXJlX3RvX2NvbW1pdChzdHJ1Y3QgY29tbWl0X2xpc3QgKnJlbW90ZWhlYWRzKQogewogCXN0cnVjdCBzdHJidWYgbXNnID0gU1RSQlVGX0lOSVQ7CisJY29uc3QgY2hhciAqaW5kZXhfZmlsZSA9IGdldF9pbmRleF9maWxlKCk7CisKKwlpZiAoIW5vX3ZlcmlmeSAmJiBydW5fY29tbWl0X2hvb2soMCA8IG9wdGlvbl9lZGl0LCBpbmRleF9maWxlLCAicHJlLW1lcmdlLWNvbW1pdCIsIE5VTEwpKQorCQlhYm9ydF9jb21taXQocmVtb3RlaGVhZHMsIE5VTEwpOworCS8qCisJICogUmUtcmVhZCB0aGUgaW5kZXggYXMgcHJlLW1lcmdlLWNvbW1pdCBob29rIGNvdWxkIGhhdmUgdXBkYXRlZCBpdCwKKwkgKiBhbmQgd3JpdGUgaXQgb3V0IGFzIGEgdHJlZS4gIFdlIG11c3QgZG8gdGhpcyBiZWZvcmUgd2UgaW52b2tlCisJICogdGhlIGVkaXRvciBhbmQgYWZ0ZXIgd2UgaW52b2tlIHJ1bl9zdGF0dXMgYWJvdmUuCisJICovCisJaWYgKGZpbmRfaG9vaygicHJlLW1lcmdlLWNvbW1pdCIpKQorCQlkaXNjYXJkX2NhY2hlKCk7CisJcmVhZF9jYWNoZV9mcm9tKGluZGV4X2ZpbGUpOwogCXN0cmJ1Zl9hZGRidWYoJm1zZywgJm1lcmdlX21zZyk7Ci0Jc3RyYnVmX2FkZGNoKCZtc2csICdcbicpOwogCWlmIChzcXVhc2gpCiAJCUJVRygidGhlIGNvbnRyb2wgbXVzdCBub3QgcmVhY2ggaGVyZSB1bmRlciAtLXNxdWFzaCIpOwotCWlmICgwIDwgb3B0aW9uX2VkaXQpCi0JCXN0cmJ1Zl9jb21tZW50ZWRfYWRkZigmbXNnLCBfKG1lcmdlX2VkaXRvcl9jb21tZW50KSwgY29tbWVudF9saW5lX2NoYXIpOworCWlmICgwIDwgb3B0aW9uX2VkaXQpIHsKKwkJc3RyYnVmX2FkZGNoKCZtc2csICdcbicpOworCQlpZiAoY2xlYW51cF9tb2RlID09IENPTU1JVF9NU0dfQ0xFQU5VUF9TQ0lTU09SUykgeworCQkJd3Rfc3RhdHVzX2FwcGVuZF9jdXRfbGluZSgmbXNnKTsKKwkJCXN0cmJ1Zl9jb21tZW50ZWRfYWRkZigmbXNnLCAiXG4iKTsKKwkJfQorCQlzdHJidWZfY29tbWVudGVkX2FkZGYoJm1zZywgXyhtZXJnZV9lZGl0b3JfY29tbWVudCkpOworCQlzdHJidWZfY29tbWVudGVkX2FkZGYoJm1zZywgXyhjbGVhbnVwX21vZGUgPT0gQ09NTUlUX01TR19DTEVBTlVQX1NDSVNTT1JTID8KKwkJCXNjaXNzb3JzX2VkaXRvcl9jb21tZW50IDoKKwkJCW5vX3NjaXNzb3JzX2VkaXRvcl9jb21tZW50KSwgY29tbWVudF9saW5lX2NoYXIpOworCX0KIAlpZiAoc2lnbm9mZikKIAkJYXBwZW5kX3NpZ25vZmYoJm1zZywgaWdub3JlX25vbl90cmFpbGVyKG1zZy5idWYsIG1zZy5sZW4pLCAwKTsKIAl3cml0ZV9tZXJnZV9oZWFkcyhyZW1vdGVoZWFkcyk7CkBAIC04MjIsMTMgKzg1NCwxMyBAQAogCQkJYWJvcnRfY29tbWl0KHJlbW90ZWhlYWRzLCBOVUxMKTsKIAl9CiAKLQlpZiAodmVyaWZ5X21zZyAmJiBydW5fY29tbWl0X2hvb2soMCA8IG9wdGlvbl9lZGl0LCBnZXRfaW5kZXhfZmlsZSgpLAorCWlmICghbm9fdmVyaWZ5ICYmIHJ1bl9jb21taXRfaG9vaygwIDwgb3B0aW9uX2VkaXQsIGdldF9pbmRleF9maWxlKCksCiAJCQkJCSAgImNvbW1pdC1tc2ciLAogCQkJCQkgIGdpdF9wYXRoX21lcmdlX21zZyh0aGVfcmVwb3NpdG9yeSksIE5VTEwpKQogCQlhYm9ydF9jb21taXQocmVtb3RlaGVhZHMsIE5VTEwpOwogCiAJcmVhZF9tZXJnZV9tc2coJm1zZyk7Ci0Jc3RyYnVmX3N0cmlwc3BhY2UoJm1zZywgMCA8IG9wdGlvbl9lZGl0KTsKKwljbGVhbnVwX21lc3NhZ2UoJm1zZywgY2xlYW51cF9tb2RlLCAwKTsKIAlpZiAoIW1zZy5sZW4pCiAJCWFib3J0X2NvbW1pdChyZW1vdGVoZWFkcywgXygiRW1wdHkgY29tbWl0IG1lc3NhZ2UuIikpOwogCXN0cmJ1Zl9yZWxlYXNlKCZtZXJnZV9tc2cpOwpAQCAtODQwLDEyICs4NzIsOCBAQAogewogCXN0cnVjdCBvYmplY3RfaWQgcmVzdWx0X3RyZWUsIHJlc3VsdF9jb21taXQ7CiAJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnRzLCAqKnBwdHIgPSAmcGFyZW50czsKLQlzdHJ1Y3QgbG9ja19maWxlIGxvY2sgPSBMT0NLX0lOSVQ7CiAKLQlob2xkX2xvY2tlZF9pbmRleCgmbG9jaywgTE9DS19ESUVfT05fRVJST1IpOwotCXJlZnJlc2hfY2FjaGUoUkVGUkVTSF9RVUlFVCk7Ci0JaWYgKHdyaXRlX2xvY2tlZF9pbmRleCgmdGhlX2luZGV4LCAmbG9jaywKLQkJCSAgICAgICBDT01NSVRfTE9DSyB8IFNLSVBfSUZfVU5DSEFOR0VEKSkKKwlpZiAocmVmcmVzaF9hbmRfd3JpdGVfY2FjaGUoUkVGUkVTSF9RVUlFVCwgU0tJUF9JRl9VTkNIQU5HRUQsIDApIDwgMCkKIAkJcmV0dXJuIGVycm9yKF8oIlVuYWJsZSB0byB3cml0ZSBpbmRleC4iKSk7CiAKIAl3cml0ZV90cmVlX3RyaXZpYWwoJnJlc3VsdF90cmVlKTsKQEAgLTg1Nyw3ICs4ODUsNyBAQAogCQkJJnJlc3VsdF9jb21taXQsIE5VTEwsIHNpZ25fY29tbWl0KSkKIAkJZGllKF8oImZhaWxlZCB0byB3cml0ZSBjb21taXQgb2JqZWN0IikpOwogCWZpbmlzaChoZWFkLCByZW1vdGVoZWFkcywgJnJlc3VsdF9jb21taXQsICJJbi1pbmRleCBtZXJnZSIpOwotCWRyb3Bfc2F2ZSgpOworCXJlbW92ZV9tZXJnZV9icmFuY2hfc3RhdGUodGhlX3JlcG9zaXRvcnkpOwogCXJldHVybiAwOwogfQogCkBAIC04NzIsMTEgKzkwMCwxMSBAQAogCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IG9iamVjdF9pZCByZXN1bHRfY29tbWl0OwogCisJd3JpdGVfdHJlZV90cml2aWFsKHJlc3VsdF90cmVlKTsKIAlmcmVlX2NvbW1pdF9saXN0KGNvbW1vbik7CiAJcGFyZW50cyA9IHJlbW90ZWhlYWRzOwogCWlmICghaGVhZF9zdWJzdW1lZCB8fCBmYXN0X2ZvcndhcmQgPT0gRkZfTk8pCiAJCWNvbW1pdF9saXN0X2luc2VydChoZWFkLCAmcGFyZW50cyk7Ci0Jc3RyYnVmX2FkZGNoKCZtZXJnZV9tc2csICdcbicpOwogCXByZXBhcmVfdG9fY29tbWl0KHJlbW90ZWhlYWRzKTsKIAlpZiAoY29tbWl0X3RyZWUobWVyZ2VfbXNnLmJ1ZiwgbWVyZ2VfbXNnLmxlbiwgcmVzdWx0X3RyZWUsIHBhcmVudHMsCiAJCQkmcmVzdWx0X2NvbW1pdCwgTlVMTCwgc2lnbl9jb21taXQpKQpAQCAtODg0LDcgKzkxMiw3IEBACiAJc3RyYnVmX2FkZGYoJmJ1ZiwgIk1lcmdlIG1hZGUgYnkgdGhlICclcycgc3RyYXRlZ3kuIiwgd3Rfc3RyYXRlZ3kpOwogCWZpbmlzaChoZWFkLCByZW1vdGVoZWFkcywgJnJlc3VsdF9jb21taXQsIGJ1Zi5idWYpOwogCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOwotCWRyb3Bfc2F2ZSgpOworCXJlbW92ZV9tZXJnZV9icmFuY2hfc3RhdGUodGhlX3JlcG9zaXRvcnkpOwogCXJldHVybiAwOwogfQogCkBAIC04OTcsNyArOTI1LDE1IEBACiAJZmlsZW5hbWUgPSBnaXRfcGF0aF9tZXJnZV9tc2codGhlX3JlcG9zaXRvcnkpOwogCWZwID0geGZvcGVuKGZpbGVuYW1lLCAiYSIpOwogCi0JYXBwZW5kX2NvbmZsaWN0c19oaW50KCZtc2didWYpOworCS8qCisJICogV2UgY2FuJ3QgdXNlIGNsZWFudXBfbW9kZSBiZWNhdXNlIGlmIHdlJ3JlIG5vdCB1c2luZyB0aGUgZWRpdG9yLAorCSAqIGdldF9jbGVhbnVwX21vZGUgd2lsbCByZXR1cm4gQ09NTUlUX01TR19DTEVBTlVQX1NQQUNFIGluc3RlYWQsIGV2ZW4KKwkgKiB0aG91Z2ggdGhlIG1lc3NhZ2UgaXMgbWVhbnQgdG8gYmUgcHJvY2Vzc2VkIGxhdGVyIGJ5IGdpdC1jb21taXQuCisJICogVGh1cywgd2Ugd2lsbCBnZXQgdGhlIGNsZWFudXAgbW9kZSB3aGljaCBpcyByZXR1cm5lZCB3aGVuIHdlIF9hcmVfCisJICogdXNpbmcgYW4gZWRpdG9yLgorCSAqLworCWFwcGVuZF9jb25mbGljdHNfaGludCgmdGhlX2luZGV4LCAmbXNnYnVmLAorCQkJICAgICAgZ2V0X2NsZWFudXBfbW9kZShjbGVhbnVwX2FyZywgMSkpOwogCWZwdXRzKG1zZ2J1Zi5idWYsIGZwKTsKIAlzdHJidWZfcmVsZWFzZSgmbXNnYnVmKTsKIAlmY2xvc2UoZnApOwpAQCAtMTI1OCw2ICsxMjk0LDE2IEBACiAJCWdvdG8gZG9uZTsKIAl9CiAKKwlpZiAocXVpdF9jdXJyZW50X21lcmdlKSB7CisJCWlmIChvcmlnX2FyZ2MgIT0gMikKKwkJCXVzYWdlX21zZ19vcHQoXygiLS1xdWl0IGV4cGVjdHMgbm8gYXJndW1lbnRzIiksCisJCQkJICAgICAgYnVpbHRpbl9tZXJnZV91c2FnZSwKKwkJCQkgICAgICBidWlsdGluX21lcmdlX29wdGlvbnMpOworCisJCXJlbW92ZV9tZXJnZV9icmFuY2hfc3RhdGUodGhlX3JlcG9zaXRvcnkpOworCQlnb3RvIGRvbmU7CisJfQorCiAJaWYgKGNvbnRpbnVlX2N1cnJlbnRfbWVyZ2UpIHsKIAkJaW50IG5hcmdjID0gMTsKIAkJY29uc3QgY2hhciAqbmFyZ3ZbXSA9IHsiY29tbWl0IiwgTlVMTH07CkBAIC0xMjk3LDE1ICsxMzQzLDMwIEBACiAJfQogCXJlc29sdmVfdW5kb19jbGVhcigpOwogCisJaWYgKG9wdGlvbl9lZGl0IDwgMCkKKwkJb3B0aW9uX2VkaXQgPSBkZWZhdWx0X2VkaXRfb3B0aW9uKCk7CisKKwljbGVhbnVwX21vZGUgPSBnZXRfY2xlYW51cF9tb2RlKGNsZWFudXBfYXJnLCAwIDwgb3B0aW9uX2VkaXQpOworCiAJaWYgKHZlcmJvc2l0eSA8IDApCiAJCXNob3dfZGlmZnN0YXQgPSAwOwogCiAJaWYgKHNxdWFzaCkgewogCQlpZiAoZmFzdF9mb3J3YXJkID09IEZGX05PKQogCQkJZGllKF8oIllvdSBjYW5ub3QgY29tYmluZSAtLXNxdWFzaCB3aXRoIC0tbm8tZmYuIikpOworCQlpZiAob3B0aW9uX2NvbW1pdCA+IDApCisJCQlkaWUoXygiWW91IGNhbm5vdCBjb21iaW5lIC0tc3F1YXNoIHdpdGggLS1jb21taXQuIikpOworCQkvKgorCQkgKiBzcXVhc2ggY2FuIG5vdyBzaWxlbnRseSBkaXNhYmxlIG9wdGlvbl9jb21taXQgLSB0aGlzIGlzIG5vdAorCQkgKiBhIHByb2JsZW0gYXMgaXQgaXMgb25seSBvdmVycmlkaW5nIHRoZSBkZWZhdWx0LCBub3QgYSB1c2VyCisJCSAqIHN1cHBsaWVkIG9wdGlvbi4KKwkJICovCiAJCW9wdGlvbl9jb21taXQgPSAwOwogCX0KIAorCWlmIChvcHRpb25fY29tbWl0IDwgMCkKKwkJb3B0aW9uX2NvbW1pdCA9IDE7CisKIAlpZiAoIWFyZ2MpIHsKIAkJaWYgKGRlZmF1bHRfdG9fdXBzdHJlYW0pCiAJCQlhcmdjID0gc2V0dXBfd2l0aF91cHN0cmVhbSgmYXJndik7CkBAIC0xMzM5LDcgKzE0MDAsOCBAQAogCQkJZGllKF8oIkNhbiBtZXJnZSBvbmx5IGV4YWN0bHkgb25lIGNvbW1pdCBpbnRvIGVtcHR5IGhlYWQiKSk7CiAKIAkJaWYgKHZlcmlmeV9zaWduYXR1cmVzKQotCQkJdmVyaWZ5X21lcmdlX3NpZ25hdHVyZShyZW1vdGVoZWFkcy0+aXRlbSwgdmVyYm9zaXR5KTsKKwkJCXZlcmlmeV9tZXJnZV9zaWduYXR1cmUocmVtb3RlaGVhZHMtPml0ZW0sIHZlcmJvc2l0eSwKKwkJCQkJICAgICAgIGNoZWNrX3RydXN0X2xldmVsKTsKIAogCQlyZW1vdGVfaGVhZF9vaWQgPSAmcmVtb3RlaGVhZHMtPml0ZW0tPm9iamVjdC5vaWQ7CiAJCXJlYWRfZW1wdHkocmVtb3RlX2hlYWRfb2lkLCAwKTsKQEAgLTEzNjIsNyArMTQyNCw4IEBACiAKIAlpZiAodmVyaWZ5X3NpZ25hdHVyZXMpIHsKIAkJZm9yIChwID0gcmVtb3RlaGVhZHM7IHA7IHAgPSBwLT5uZXh0KSB7Ci0JCQl2ZXJpZnlfbWVyZ2Vfc2lnbmF0dXJlKHAtPml0ZW0sIHZlcmJvc2l0eSk7CisJCQl2ZXJpZnlfbWVyZ2Vfc2lnbmF0dXJlKHAtPml0ZW0sIHZlcmJvc2l0eSwKKwkJCQkJICAgICAgIGNoZWNrX3RydXN0X2xldmVsKTsKIAkJfQogCX0KIApAQCAtMTM4Miw5ICsxNDQ1LDYgQEAKIAkJCWZhc3RfZm9yd2FyZCA9IEZGX05POwogCX0KIAotCWlmIChvcHRpb25fZWRpdCA8IDApCi0JCW9wdGlvbl9lZGl0ID0gZGVmYXVsdF9lZGl0X29wdGlvbigpOwotCiAJaWYgKCF1c2Vfc3RyYXRlZ2llcykgewogCQlpZiAoIXJlbW90ZWhlYWRzKQogCQkJOyAvKiBhbHJlYWR5IHVwLXRvLWRhdGUgKi8KQEAgLTE0NjIsNyArMTUyMiw3IEBACiAJCX0KIAogCQlmaW5pc2goaGVhZF9jb21taXQsIHJlbW90ZWhlYWRzLCAmY29tbWl0LT5vYmplY3Qub2lkLCBtc2cuYnVmKTsKLQkJZHJvcF9zYXZlKCk7CisJCXJlbW92ZV9tZXJnZV9icmFuY2hfc3RhdGUodGhlX3JlcG9zaXRvcnkpOwogCQlnb3RvIGRvbmU7CiAJfSBlbHNlIGlmICghcmVtb3RlaGVhZHMtPm5leHQgJiYgY29tbW9uLT5uZXh0KQogCQk7CkBAIC0xNTM3LDggKzE1OTcsOCBAQAogCSAgICBzYXZlX3N0YXRlKCZzdGFzaCkpCiAJCW9pZGNscigmc3Rhc2gpOwogCi0JZm9yIChpID0gMDsgaSA8IHVzZV9zdHJhdGVnaWVzX25yOyBpKyspIHsKLQkJaW50IHJldDsKKwlmb3IgKGkgPSAwOyAhbWVyZ2Vfd2FzX29rICYmIGkgPCB1c2Vfc3RyYXRlZ2llc19ucjsgaSsrKSB7CisJCWludCByZXQsIGNudDsKIAkJaWYgKGkpIHsKIAkJCXByaW50ZihfKCJSZXdpbmRpbmcgdGhlIHRyZWUgdG8gcHJpc3RpbmUuLi5cbiIpKTsKIAkJCXJlc3RvcmVfc3RhdGUoJmhlYWRfY29tbWl0LT5vYmplY3Qub2lkLCAmc3Rhc2gpOwpAQCAtMTU1NSw0MCArMTYxNSwyNiBAQAogCQlyZXQgPSB0cnlfbWVyZ2Vfc3RyYXRlZ3kodXNlX3N0cmF0ZWdpZXNbaV0tPm5hbWUsCiAJCQkJCSBjb21tb24sIHJlbW90ZWhlYWRzLAogCQkJCQkgaGVhZF9jb21taXQpOwotCQlpZiAoIW9wdGlvbl9jb21taXQgJiYgIXJldCkgewotCQkJbWVyZ2Vfd2FzX29rID0gMTsKLQkJCS8qCi0JCQkgKiBUaGlzIGlzIG5lY2Vzc2FyeSBoZXJlIGp1c3QgdG8gYXZvaWQgd3JpdGluZwotCQkJICogdGhlIHRyZWUsIGJ1dCBsYXRlciB3ZSB3aWxsICpub3QqIGV4aXQgd2l0aAotCQkJICogc3RhdHVzIGNvZGUgMSBiZWNhdXNlIG1lcmdlX3dhc19vayBpcyBzZXQuCi0JCQkgKi8KLQkJCXJldCA9IDE7Ci0JCX0KLQotCQlpZiAocmV0KSB7Ci0JCQkvKgotCQkJICogVGhlIGJhY2tlbmQgZXhpdHMgd2l0aCAxIHdoZW4gY29uZmxpY3RzIGFyZQotCQkJICogbGVmdCB0byBiZSByZXNvbHZlZCwgd2l0aCAyIHdoZW4gaXQgZG9lcyBub3QKLQkJCSAqIGhhbmRsZSB0aGUgZ2l2ZW4gbWVyZ2UgYXQgYWxsLgotCQkJICovCi0JCQlpZiAocmV0ID09IDEpIHsKLQkJCQlpbnQgY250ID0gZXZhbHVhdGVfcmVzdWx0KCk7Ci0KLQkJCQlpZiAoYmVzdF9jbnQgPD0gMCB8fCBjbnQgPD0gYmVzdF9jbnQpIHsKLQkJCQkJYmVzdF9zdHJhdGVneSA9IHVzZV9zdHJhdGVnaWVzW2ldLT5uYW1lOwotCQkJCQliZXN0X2NudCA9IGNudDsKKwkJLyoKKwkJICogVGhlIGJhY2tlbmQgZXhpdHMgd2l0aCAxIHdoZW4gY29uZmxpY3RzIGFyZQorCQkgKiBsZWZ0IHRvIGJlIHJlc29sdmVkLCB3aXRoIDIgd2hlbiBpdCBkb2VzIG5vdAorCQkgKiBoYW5kbGUgdGhlIGdpdmVuIG1lcmdlIGF0IGFsbC4KKwkJICovCisJCWlmIChyZXQgPCAyKSB7CisJCQlpZiAoIXJldCkgeworCQkJCWlmIChvcHRpb25fY29tbWl0KSB7CisJCQkJCS8qIEF1dG9tZXJnZSBzdWNjZWVkZWQuICovCisJCQkJCWF1dG9tZXJnZV93YXNfb2sgPSAxOworCQkJCQlicmVhazsKIAkJCQl9CisJCQkJbWVyZ2Vfd2FzX29rID0gMTsKIAkJCX0KLQkJCWlmIChtZXJnZV93YXNfb2spCi0JCQkJYnJlYWs7Ci0JCQllbHNlCi0JCQkJY29udGludWU7CisJCQljbnQgPSBldmFsdWF0ZV9yZXN1bHQoKTsKKwkJCWlmIChiZXN0X2NudCA8PSAwIHx8IGNudCA8PSBiZXN0X2NudCkgeworCQkJCWJlc3Rfc3RyYXRlZ3kgPSB1c2Vfc3RyYXRlZ2llc1tpXS0+bmFtZTsKKwkJCQliZXN0X2NudCA9IGNudDsKKwkJCX0KIAkJfQotCi0JCS8qIEF1dG9tZXJnZSBzdWNjZWVkZWQuICovCi0JCXdyaXRlX3RyZWVfdHJpdmlhbCgmcmVzdWx0X3RyZWUpOwotCQlhdXRvbWVyZ2Vfd2FzX29rID0gMTsKLQkJYnJlYWs7CiAJfQogCiAJLyoKZGlmZiAtLWdpdCBhL2J1aWx0aW4vbWt0YWcuYyBiL2J1aWx0aW4vbWt0YWcuYwppbmRleCA2ZmI3ZGM4Li40OTgyZDNhIDEwMDY0NAotLS0gYS9idWlsdGluL21rdGFnLmMKKysrIGIvYnVpbHRpbi9ta3RhZy5jCkBAIC0yOSw4ICsyOSwxMSBAQAogCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKnJlcGwgPSBsb29rdXBfcmVwbGFjZV9vYmplY3QodGhlX3JlcG9zaXRvcnksIG9pZCk7CiAKIAlpZiAoYnVmZmVyKSB7Ci0JCWlmICh0eXBlID09IHR5cGVfZnJvbV9zdHJpbmcoZXhwZWN0ZWRfdHlwZSkpCi0JCQlyZXQgPSBjaGVja19vYmplY3Rfc2lnbmF0dXJlKHJlcGwsIGJ1ZmZlciwgc2l6ZSwgZXhwZWN0ZWRfdHlwZSk7CisJCWlmICh0eXBlID09IHR5cGVfZnJvbV9zdHJpbmcoZXhwZWN0ZWRfdHlwZSkpIHsKKwkJCXJldCA9IGNoZWNrX29iamVjdF9zaWduYXR1cmUodGhlX3JlcG9zaXRvcnksIHJlcGwsCisJCQkJCQkgICAgIGJ1ZmZlciwgc2l6ZSwKKwkJCQkJCSAgICAgZXhwZWN0ZWRfdHlwZSk7CisJCX0KIAkJZnJlZShidWZmZXIpOwogCX0KIAlyZXR1cm4gcmV0OwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9ta3RyZWUuYyBiL2J1aWx0aW4vbWt0cmVlLmMKaW5kZXggOTRlODJiOC4uODkxOTkxYiAxMDA2NDQKLS0tIGEvYnVpbHRpbi9ta3RyZWUuYworKysgYi9idWlsdGluL21rdHJlZS5jCkBAIC02Nyw3ICs2Nyw3IEBACiAJTlVMTAogfTsKIAotc3RhdGljIHZvaWQgbWt0cmVlX2xpbmUoY2hhciAqYnVmLCBzaXplX3QgbGVuLCBpbnQgbnVsX3Rlcm1fbGluZSwgaW50IGFsbG93X21pc3NpbmcpCitzdGF0aWMgdm9pZCBta3RyZWVfbGluZShjaGFyICpidWYsIGludCBudWxfdGVybV9saW5lLCBpbnQgYWxsb3dfbWlzc2luZykKIHsKIAljaGFyICpwdHIsICpudHI7CiAJY29uc3QgY2hhciAqcDsKQEAgLTE3Miw3ICsxNzIsNyBAQAogCQkJCQlicmVhazsKIAkJCQlkaWUoImlucHV0IGZvcm1hdCBlcnJvcjogKGJsYW5rIGxpbmUgb25seSB2YWxpZCBpbiBiYXRjaCBtb2RlKSIpOwogCQkJfQotCQkJbWt0cmVlX2xpbmUoc2IuYnVmLCBzYi5sZW4sIG51bF90ZXJtX2xpbmUsIGFsbG93X21pc3NpbmcpOworCQkJbWt0cmVlX2xpbmUoc2IuYnVmLCBudWxfdGVybV9saW5lLCBhbGxvd19taXNzaW5nKTsKIAkJfQogCQlpZiAoaXNfYmF0Y2hfbW9kZSAmJiBnb3RfZW9mICYmIHVzZWQgPCAxKSB7CiAJCQkvKgpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmMgYi9idWlsdGluL211bHRpLXBhY2staW5kZXguYwppbmRleCBmY2E3MGY4Li41YmY4OGNkIDEwMDY0NAotLS0gYS9idWlsdGluL211bHRpLXBhY2staW5kZXguYworKysgYi9idWlsdGluL211bHRpLXBhY2staW5kZXguYwpAQCAtMywzMyArMyw0NCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgInBhcnNlLW9wdGlvbnMuaCIKICNpbmNsdWRlICJtaWR4LmgiCisjaW5jbHVkZSAidHJhY2UyLmgiCiAKIHN0YXRpYyBjaGFyIGNvbnN0ICogY29uc3QgYnVpbHRpbl9tdWx0aV9wYWNrX2luZGV4X3VzYWdlW10gPSB7Ci0JTl8oImdpdCBtdWx0aS1wYWNrLWluZGV4IFstLW9iamVjdC1kaXI9PGRpcj5dICh3cml0ZXx2ZXJpZnkpIiksCisJTl8oImdpdCBtdWx0aS1wYWNrLWluZGV4IFs8b3B0aW9ucz5dICh3cml0ZXx2ZXJpZnl8ZXhwaXJlfHJlcGFjayAtLWJhdGNoLXNpemU9PHNpemU+KSIpLAogCU5VTEwKIH07CiAKIHN0YXRpYyBzdHJ1Y3Qgb3B0c19tdWx0aV9wYWNrX2luZGV4IHsKIAljb25zdCBjaGFyICpvYmplY3RfZGlyOworCXVuc2lnbmVkIGxvbmcgYmF0Y2hfc2l6ZTsKKwlpbnQgcHJvZ3Jlc3M7CiB9IG9wdHM7CiAKIGludCBjbWRfbXVsdGlfcGFja19pbmRleChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsCiAJCQkgY29uc3QgY2hhciAqcHJlZml4KQogeworCXVuc2lnbmVkIGZsYWdzID0gMDsKKwogCXN0YXRpYyBzdHJ1Y3Qgb3B0aW9uIGJ1aWx0aW5fbXVsdGlfcGFja19pbmRleF9vcHRpb25zW10gPSB7CiAJCU9QVF9GSUxFTkFNRSgwLCAib2JqZWN0LWRpciIsICZvcHRzLm9iamVjdF9kaXIsCiAJCSAgTl8oIm9iamVjdCBkaXJlY3RvcnkgY29udGFpbmluZyBzZXQgb2YgcGFja2ZpbGUgYW5kIHBhY2staW5kZXggcGFpcnMiKSksCisJCU9QVF9CT09MKDAsICJwcm9ncmVzcyIsICZvcHRzLnByb2dyZXNzLCBOXygiZm9yY2UgcHJvZ3Jlc3MgcmVwb3J0aW5nIikpLAorCQlPUFRfTUFHTklUVURFKDAsICJiYXRjaC1zaXplIiwgJm9wdHMuYmF0Y2hfc2l6ZSwKKwkJICBOXygiZHVyaW5nIHJlcGFjaywgY29sbGVjdCBwYWNrLWZpbGVzIG9mIHNtYWxsZXIgc2l6ZSBpbnRvIGEgYmF0Y2ggdGhhdCBpcyBsYXJnZXIgdGhhbiB0aGlzIHNpemUiKSksCiAJCU9QVF9FTkQoKSwKIAl9OwogCiAJZ2l0X2NvbmZpZyhnaXRfZGVmYXVsdF9jb25maWcsIE5VTEwpOwogCisJb3B0cy5wcm9ncmVzcyA9IGlzYXR0eSgyKTsKIAlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsCiAJCQkgICAgIGJ1aWx0aW5fbXVsdGlfcGFja19pbmRleF9vcHRpb25zLAogCQkJICAgICBidWlsdGluX211bHRpX3BhY2tfaW5kZXhfdXNhZ2UsIDApOwogCiAJaWYgKCFvcHRzLm9iamVjdF9kaXIpCiAJCW9wdHMub2JqZWN0X2RpciA9IGdldF9vYmplY3RfZGlyZWN0b3J5KCk7CisJaWYgKG9wdHMucHJvZ3Jlc3MpCisJCWZsYWdzIHw9IE1JRFhfUFJPR1JFU1M7CiAKIAlpZiAoYXJnYyA9PSAwKQogCQl1c2FnZV93aXRoX29wdGlvbnMoYnVpbHRpbl9tdWx0aV9wYWNrX2luZGV4X3VzYWdlLApAQCAtNDAsMTAgKzUxLDIwIEBACiAJCXJldHVybiAxOwogCX0KIAotCWlmICghc3RyY21wKGFyZ3ZbMF0sICJ3cml0ZSIpKQotCQlyZXR1cm4gd3JpdGVfbWlkeF9maWxlKG9wdHMub2JqZWN0X2Rpcik7Ci0JaWYgKCFzdHJjbXAoYXJndlswXSwgInZlcmlmeSIpKQotCQlyZXR1cm4gdmVyaWZ5X21pZHhfZmlsZShvcHRzLm9iamVjdF9kaXIpOworCXRyYWNlMl9jbWRfbW9kZShhcmd2WzBdKTsKIAotCWRpZShfKCJ1bnJlY29nbml6ZWQgdmVyYjogJXMiKSwgYXJndlswXSk7CisJaWYgKCFzdHJjbXAoYXJndlswXSwgInJlcGFjayIpKQorCQlyZXR1cm4gbWlkeF9yZXBhY2sodGhlX3JlcG9zaXRvcnksIG9wdHMub2JqZWN0X2RpciwKKwkJCShzaXplX3Qpb3B0cy5iYXRjaF9zaXplLCBmbGFncyk7CisJaWYgKG9wdHMuYmF0Y2hfc2l6ZSkKKwkJZGllKF8oIi0tYmF0Y2gtc2l6ZSBvcHRpb24gaXMgb25seSBmb3IgJ3JlcGFjaycgc3ViY29tbWFuZCIpKTsKKworCWlmICghc3RyY21wKGFyZ3ZbMF0sICJ3cml0ZSIpKQorCQlyZXR1cm4gd3JpdGVfbWlkeF9maWxlKG9wdHMub2JqZWN0X2RpciwgZmxhZ3MpOworCWlmICghc3RyY21wKGFyZ3ZbMF0sICJ2ZXJpZnkiKSkKKwkJcmV0dXJuIHZlcmlmeV9taWR4X2ZpbGUodGhlX3JlcG9zaXRvcnksIG9wdHMub2JqZWN0X2RpciwgZmxhZ3MpOworCWlmICghc3RyY21wKGFyZ3ZbMF0sICJleHBpcmUiKSkKKwkJcmV0dXJuIGV4cGlyZV9taWR4X3BhY2tzKHRoZV9yZXBvc2l0b3J5LCBvcHRzLm9iamVjdF9kaXIsIGZsYWdzKTsKKworCWRpZShfKCJ1bnJlY29nbml6ZWQgc3ViY29tbWFuZDogJXMiKSwgYXJndlswXSk7CiB9CmRpZmYgLS1naXQgYS9idWlsdGluL212LmMgYi9idWlsdGluL212LmMKaW5kZXggODBiYjk2Ny4uYmUxNWJhNyAxMDA2NDQKLS0tIGEvYnVpbHRpbi9tdi5jCisrKyBiL2J1aWx0aW4vbXYuYwpAQCAtMyw2ICszLDcgQEAKICAqCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDYgSm9oYW5uZXMgU2NoaW5kZWxpbgogICovCisjZGVmaW5lIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJidWlsdGluLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAicGF0aHNwZWMuaCIKZGlmZiAtLWdpdCBhL2J1aWx0aW4vbmFtZS1yZXYuYyBiL2J1aWx0aW4vbmFtZS1yZXYuYwppbmRleCBmMWNiNDVjLi5hOWRjZDI1IDEwMDY0NAotLS0gYS9idWlsdGluL25hbWUtcmV2LmMKKysrIGIvYnVpbHRpbi9uYW1lLXJldi5jCkBAIC02LDIwICs2LDI1IEBACiAjaW5jbHVkZSAidGFnLmgiCiAjaW5jbHVkZSAicmVmcy5oIgogI2luY2x1ZGUgInBhcnNlLW9wdGlvbnMuaCIKKyNpbmNsdWRlICJwcmlvLXF1ZXVlLmgiCiAjaW5jbHVkZSAic2hhMS1sb29rdXAuaCIKICNpbmNsdWRlICJjb21taXQtc2xhYi5oIgogCi0jZGVmaW5lIENVVE9GRl9EQVRFX1NMT1AgODY0MDAgLyogb25lIGRheSAqLworLyoKKyAqIE9uZSBkYXkuICBTZWUgdGhlICduYW1lIGEgcmV2IHNob3J0bHkgYWZ0ZXIgZXBvY2gnIHRlc3QgaW4gdDYxMjAgd2hlbgorICogY2hhbmdpbmcgdGhpcyB2YWx1ZQorICovCisjZGVmaW5lIENVVE9GRl9EQVRFX1NMT1AgODY0MDAKIAotdHlwZWRlZiBzdHJ1Y3QgcmV2X25hbWUgewotCWNvbnN0IGNoYXIgKnRpcF9uYW1lOworc3RydWN0IHJldl9uYW1lIHsKKwljaGFyICp0aXBfbmFtZTsKIAl0aW1lc3RhbXBfdCB0YWdnZXJkYXRlOwogCWludCBnZW5lcmF0aW9uOwogCWludCBkaXN0YW5jZTsKIAlpbnQgZnJvbV90YWc7Ci19IHJldl9uYW1lOworfTsKIAotZGVmaW5lX2NvbW1pdF9zbGFiKGNvbW1pdF9yZXZfbmFtZSwgc3RydWN0IHJldl9uYW1lICopOworZGVmaW5lX2NvbW1pdF9zbGFiKGNvbW1pdF9yZXZfbmFtZSwgc3RydWN0IHJldl9uYW1lKTsKIAogc3RhdGljIHRpbWVzdGFtcF90IGN1dG9mZiA9IFRJTUVfTUFYOwogc3RhdGljIHN0cnVjdCBjb21taXRfcmV2X25hbWUgcmV2X25hbWVzOwpAQCAtMjcsMjIgKzMyLDIwIEBACiAvKiBIb3cgbWFueSBnZW5lcmF0aW9ucyBhcmUgbWF4aW1hbGx5IHByZWZlcnJlZCBvdmVyIF9vbmVfIG1lcmdlIHRyYXZlcnNhbD8gKi8KICNkZWZpbmUgTUVSR0VfVFJBVkVSU0FMX1dFSUdIVCA2NTUzNQogCi1zdGF0aWMgc3RydWN0IHJldl9uYW1lICpnZXRfY29tbWl0X3Jldl9uYW1lKHN0cnVjdCBjb21taXQgKmNvbW1pdCkKK3N0YXRpYyBpbnQgaXNfdmFsaWRfcmV2X25hbWUoY29uc3Qgc3RydWN0IHJldl9uYW1lICpuYW1lKQogewotCXN0cnVjdCByZXZfbmFtZSAqKnNsb3QgPSBjb21taXRfcmV2X25hbWVfcGVlaygmcmV2X25hbWVzLCBjb21taXQpOwotCi0JcmV0dXJuIHNsb3QgPyAqc2xvdCA6IE5VTEw7CisJcmV0dXJuIG5hbWUgJiYgKG5hbWUtPmdlbmVyYXRpb24gfHwgbmFtZS0+dGlwX25hbWUpOwogfQogCi1zdGF0aWMgdm9pZCBzZXRfY29tbWl0X3Jldl9uYW1lKHN0cnVjdCBjb21taXQgKmNvbW1pdCwgc3RydWN0IHJldl9uYW1lICpuYW1lKQorc3RhdGljIHN0cnVjdCByZXZfbmFtZSAqZ2V0X2NvbW1pdF9yZXZfbmFtZShjb25zdCBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCiB7Ci0JKmNvbW1pdF9yZXZfbmFtZV9hdCgmcmV2X25hbWVzLCBjb21taXQpID0gbmFtZTsKKwlzdHJ1Y3QgcmV2X25hbWUgKm5hbWUgPSBjb21taXRfcmV2X25hbWVfcGVlaygmcmV2X25hbWVzLCBjb21taXQpOworCisJcmV0dXJuIGlzX3ZhbGlkX3Jldl9uYW1lKG5hbWUpID8gbmFtZSA6IE5VTEw7CiB9CiAKIHN0YXRpYyBpbnQgaXNfYmV0dGVyX25hbWUoc3RydWN0IHJldl9uYW1lICpuYW1lLAotCQkJICBjb25zdCBjaGFyICp0aXBfbmFtZSwKIAkJCSAgdGltZXN0YW1wX3QgdGFnZ2VyZGF0ZSwKLQkJCSAgaW50IGdlbmVyYXRpb24sCiAJCQkgIGludCBkaXN0YW5jZSwKIAkJCSAgaW50IGZyb21fdGFnKQogewpAQCAtNzcsNjkgKzgwLDEzNSBAQAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgdm9pZCBuYW1lX3JldihzdHJ1Y3QgY29tbWl0ICpjb21taXQsCi0JCWNvbnN0IGNoYXIgKnRpcF9uYW1lLCB0aW1lc3RhbXBfdCB0YWdnZXJkYXRlLAotCQlpbnQgZ2VuZXJhdGlvbiwgaW50IGRpc3RhbmNlLCBpbnQgZnJvbV90YWcsCi0JCWludCBkZXJlZikKK3N0YXRpYyBzdHJ1Y3QgcmV2X25hbWUgKmNyZWF0ZV9vcl91cGRhdGVfbmFtZShzdHJ1Y3QgY29tbWl0ICpjb21taXQsCisJCQkJCSAgICAgIHRpbWVzdGFtcF90IHRhZ2dlcmRhdGUsCisJCQkJCSAgICAgIGludCBnZW5lcmF0aW9uLCBpbnQgZGlzdGFuY2UsCisJCQkJCSAgICAgIGludCBmcm9tX3RhZykKIHsKLQlzdHJ1Y3QgcmV2X25hbWUgKm5hbWUgPSBnZXRfY29tbWl0X3Jldl9uYW1lKGNvbW1pdCk7Ci0Jc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnRzOwotCWludCBwYXJlbnRfbnVtYmVyID0gMTsKLQljaGFyICp0b19mcmVlID0gTlVMTDsKKwlzdHJ1Y3QgcmV2X25hbWUgKm5hbWUgPSBjb21taXRfcmV2X25hbWVfYXQoJnJldl9uYW1lcywgY29tbWl0KTsKIAotCXBhcnNlX2NvbW1pdChjb21taXQpOworCWlmIChpc192YWxpZF9yZXZfbmFtZShuYW1lKSkgeworCQlpZiAoIWlzX2JldHRlcl9uYW1lKG5hbWUsIHRhZ2dlcmRhdGUsIGRpc3RhbmNlLCBmcm9tX3RhZykpCisJCQlyZXR1cm4gTlVMTDsKIAotCWlmIChjb21taXQtPmRhdGUgPCBjdXRvZmYpCi0JCXJldHVybjsKLQotCWlmIChkZXJlZikgewotCQl0aXBfbmFtZSA9IHRvX2ZyZWUgPSB4c3RyZm10KCIlc14wIiwgdGlwX25hbWUpOwotCi0JCWlmIChnZW5lcmF0aW9uKQotCQkJZGllKCJnZW5lcmF0aW9uOiAlZCwgYnV0IGRlcmVmPyIsIGdlbmVyYXRpb24pOworCQkvKgorCQkgKiBUaGlzIHN0cmluZyBtaWdodCBzdGlsbCBiZSBzaGFyZWQgd2l0aCBhbmNlc3RvcnMKKwkJICogKGdlbmVyYXRpb24gPiAwKS4gIFdlIGNhbiByZWxlYXNlIGl0IGhlcmUgcmVnYXJkbGVzcywKKwkJICogYmVjYXVzZSB0aGUgbmV3IG5hbWUgdGhhdCBoYXMganVzdCB3b24gd2lsbCBiZSBiZXR0ZXIKKwkJICogZm9yIHRoZW0gYXMgd2VsbCwgc28gbmFtZV9yZXYoKSB3aWxsIHJlcGxhY2UgdGhlc2UKKwkJICogc3RhbGUgcG9pbnRlcnMgd2hlbiBpdCBwcm9jZXNzZXMgdGhlIHBhcmVudHMuCisJCSAqLworCQlpZiAoIW5hbWUtPmdlbmVyYXRpb24pCisJCQlmcmVlKG5hbWUtPnRpcF9uYW1lKTsKIAl9CiAKLQlpZiAobmFtZSA9PSBOVUxMKSB7Ci0JCW5hbWUgPSB4bWFsbG9jKHNpemVvZihyZXZfbmFtZSkpOwotCQlzZXRfY29tbWl0X3Jldl9uYW1lKGNvbW1pdCwgbmFtZSk7Ci0JCWdvdG8gY29weV9kYXRhOwotCX0gZWxzZSBpZiAoaXNfYmV0dGVyX25hbWUobmFtZSwgdGlwX25hbWUsIHRhZ2dlcmRhdGUsCi0JCQkJICBnZW5lcmF0aW9uLCBkaXN0YW5jZSwgZnJvbV90YWcpKSB7Ci1jb3B5X2RhdGE6Ci0JCW5hbWUtPnRpcF9uYW1lID0gdGlwX25hbWU7Ci0JCW5hbWUtPnRhZ2dlcmRhdGUgPSB0YWdnZXJkYXRlOwotCQluYW1lLT5nZW5lcmF0aW9uID0gZ2VuZXJhdGlvbjsKLQkJbmFtZS0+ZGlzdGFuY2UgPSBkaXN0YW5jZTsKLQkJbmFtZS0+ZnJvbV90YWcgPSBmcm9tX3RhZzsKKwluYW1lLT50YWdnZXJkYXRlID0gdGFnZ2VyZGF0ZTsKKwluYW1lLT5nZW5lcmF0aW9uID0gZ2VuZXJhdGlvbjsKKwluYW1lLT5kaXN0YW5jZSA9IGRpc3RhbmNlOworCW5hbWUtPmZyb21fdGFnID0gZnJvbV90YWc7CisKKwlyZXR1cm4gbmFtZTsKK30KKworc3RhdGljIGNoYXIgKmdldF9wYXJlbnRfbmFtZShjb25zdCBzdHJ1Y3QgcmV2X25hbWUgKm5hbWUsIGludCBwYXJlbnRfbnVtYmVyKQoreworCXN0cnVjdCBzdHJidWYgc2IgPSBTVFJCVUZfSU5JVDsKKwlzaXplX3QgbGVuOworCisJc3RyaXBfc3VmZml4KG5hbWUtPnRpcF9uYW1lLCAiXjAiLCAmbGVuKTsKKwlpZiAobmFtZS0+Z2VuZXJhdGlvbiA+IDApIHsKKwkJc3RyYnVmX2dyb3coJnNiLCBsZW4gKworCQkJICAgIDEgKyBkZWNpbWFsX3dpZHRoKG5hbWUtPmdlbmVyYXRpb24pICsKKwkJCSAgICAxICsgZGVjaW1hbF93aWR0aChwYXJlbnRfbnVtYmVyKSk7CisJCXN0cmJ1Zl9hZGRmKCZzYiwgIiUuKnN+JWReJWQiLCAoaW50KWxlbiwgbmFtZS0+dGlwX25hbWUsCisJCQkgICAgbmFtZS0+Z2VuZXJhdGlvbiwgcGFyZW50X251bWJlcik7CiAJfSBlbHNlIHsKLQkJZnJlZSh0b19mcmVlKTsKKwkJc3RyYnVmX2dyb3coJnNiLCBsZW4gKworCQkJICAgIDEgKyBkZWNpbWFsX3dpZHRoKHBhcmVudF9udW1iZXIpKTsKKwkJc3RyYnVmX2FkZGYoJnNiLCAiJS4qc14lZCIsIChpbnQpbGVuLCBuYW1lLT50aXBfbmFtZSwKKwkJCSAgICBwYXJlbnRfbnVtYmVyKTsKKwl9CisJcmV0dXJuIHN0cmJ1Zl9kZXRhY2goJnNiLCBOVUxMKTsKK30KKworc3RhdGljIHZvaWQgbmFtZV9yZXYoc3RydWN0IGNvbW1pdCAqc3RhcnRfY29tbWl0LAorCQljb25zdCBjaGFyICp0aXBfbmFtZSwgdGltZXN0YW1wX3QgdGFnZ2VyZGF0ZSwKKwkJaW50IGZyb21fdGFnLCBpbnQgZGVyZWYpCit7CisJc3RydWN0IHByaW9fcXVldWUgcXVldWU7CisJc3RydWN0IGNvbW1pdCAqY29tbWl0OworCXN0cnVjdCBjb21taXQgKipwYXJlbnRzX3RvX3F1ZXVlID0gTlVMTDsKKwlzaXplX3QgcGFyZW50c190b19xdWV1ZV9uciwgcGFyZW50c190b19xdWV1ZV9hbGxvYyA9IDA7CisJc3RydWN0IHJldl9uYW1lICpzdGFydF9uYW1lOworCisJcGFyc2VfY29tbWl0KHN0YXJ0X2NvbW1pdCk7CisJaWYgKHN0YXJ0X2NvbW1pdC0+ZGF0ZSA8IGN1dG9mZikKIAkJcmV0dXJuOwotCX0KIAotCWZvciAocGFyZW50cyA9IGNvbW1pdC0+cGFyZW50czsKLQkJCXBhcmVudHM7Ci0JCQlwYXJlbnRzID0gcGFyZW50cy0+bmV4dCwgcGFyZW50X251bWJlcisrKSB7Ci0JCWlmIChwYXJlbnRfbnVtYmVyID4gMSkgewotCQkJc2l6ZV90IGxlbjsKLQkJCWNoYXIgKm5ld19uYW1lOworCXN0YXJ0X25hbWUgPSBjcmVhdGVfb3JfdXBkYXRlX25hbWUoc3RhcnRfY29tbWl0LCB0YWdnZXJkYXRlLCAwLCAwLAorCQkJCQkgICBmcm9tX3RhZyk7CisJaWYgKCFzdGFydF9uYW1lKQorCQlyZXR1cm47CisJaWYgKGRlcmVmKQorCQlzdGFydF9uYW1lLT50aXBfbmFtZSA9IHhzdHJmbXQoIiVzXjAiLCB0aXBfbmFtZSk7CisJZWxzZQorCQlzdGFydF9uYW1lLT50aXBfbmFtZSA9IHhzdHJkdXAodGlwX25hbWUpOwogCi0JCQlzdHJpcF9zdWZmaXgodGlwX25hbWUsICJeMCIsICZsZW4pOwotCQkJaWYgKGdlbmVyYXRpb24gPiAwKQotCQkJCW5ld19uYW1lID0geHN0cmZtdCgiJS4qc34lZF4lZCIsIChpbnQpbGVuLCB0aXBfbmFtZSwKLQkJCQkJCSAgIGdlbmVyYXRpb24sIHBhcmVudF9udW1iZXIpOwotCQkJZWxzZQotCQkJCW5ld19uYW1lID0geHN0cmZtdCgiJS4qc14lZCIsIChpbnQpbGVuLCB0aXBfbmFtZSwKLQkJCQkJCSAgIHBhcmVudF9udW1iZXIpOworCW1lbXNldCgmcXVldWUsIDAsIHNpemVvZihxdWV1ZSkpOyAvKiBVc2UgdGhlIHByaW9fcXVldWUgYXMgTElGTyAqLworCXByaW9fcXVldWVfcHV0KCZxdWV1ZSwgc3RhcnRfY29tbWl0KTsKIAotCQkJbmFtZV9yZXYocGFyZW50cy0+aXRlbSwgbmV3X25hbWUsIHRhZ2dlcmRhdGUsIDAsCi0JCQkJIGRpc3RhbmNlICsgTUVSR0VfVFJBVkVSU0FMX1dFSUdIVCwKLQkJCQkgZnJvbV90YWcsIDApOwotCQl9IGVsc2UgewotCQkJbmFtZV9yZXYocGFyZW50cy0+aXRlbSwgdGlwX25hbWUsIHRhZ2dlcmRhdGUsCi0JCQkJIGdlbmVyYXRpb24gKyAxLCBkaXN0YW5jZSArIDEsCi0JCQkJIGZyb21fdGFnLCAwKTsKKwl3aGlsZSAoKGNvbW1pdCA9IHByaW9fcXVldWVfZ2V0KCZxdWV1ZSkpKSB7CisJCXN0cnVjdCByZXZfbmFtZSAqbmFtZSA9IGdldF9jb21taXRfcmV2X25hbWUoY29tbWl0KTsKKwkJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnRzOworCQlpbnQgcGFyZW50X251bWJlciA9IDE7CisKKwkJcGFyZW50c190b19xdWV1ZV9uciA9IDA7CisKKwkJZm9yIChwYXJlbnRzID0gY29tbWl0LT5wYXJlbnRzOworCQkJCXBhcmVudHM7CisJCQkJcGFyZW50cyA9IHBhcmVudHMtPm5leHQsIHBhcmVudF9udW1iZXIrKykgeworCQkJc3RydWN0IGNvbW1pdCAqcGFyZW50ID0gcGFyZW50cy0+aXRlbTsKKwkJCXN0cnVjdCByZXZfbmFtZSAqcGFyZW50X25hbWU7CisJCQlpbnQgZ2VuZXJhdGlvbiwgZGlzdGFuY2U7CisKKwkJCXBhcnNlX2NvbW1pdChwYXJlbnQpOworCQkJaWYgKHBhcmVudC0+ZGF0ZSA8IGN1dG9mZikKKwkJCQljb250aW51ZTsKKworCQkJaWYgKHBhcmVudF9udW1iZXIgPiAxKSB7CisJCQkJZ2VuZXJhdGlvbiA9IDA7CisJCQkJZGlzdGFuY2UgPSBuYW1lLT5kaXN0YW5jZSArIE1FUkdFX1RSQVZFUlNBTF9XRUlHSFQ7CisJCQl9IGVsc2UgeworCQkJCWdlbmVyYXRpb24gPSBuYW1lLT5nZW5lcmF0aW9uICsgMTsKKwkJCQlkaXN0YW5jZSA9IG5hbWUtPmRpc3RhbmNlICsgMTsKKwkJCX0KKworCQkJcGFyZW50X25hbWUgPSBjcmVhdGVfb3JfdXBkYXRlX25hbWUocGFyZW50LCB0YWdnZXJkYXRlLAorCQkJCQkJCSAgICBnZW5lcmF0aW9uLAorCQkJCQkJCSAgICBkaXN0YW5jZSwgZnJvbV90YWcpOworCQkJaWYgKHBhcmVudF9uYW1lKSB7CisJCQkJaWYgKHBhcmVudF9udW1iZXIgPiAxKQorCQkJCQlwYXJlbnRfbmFtZS0+dGlwX25hbWUgPQorCQkJCQkJZ2V0X3BhcmVudF9uYW1lKG5hbWUsCisJCQkJCQkJCXBhcmVudF9udW1iZXIpOworCQkJCWVsc2UKKwkJCQkJcGFyZW50X25hbWUtPnRpcF9uYW1lID0gbmFtZS0+dGlwX25hbWU7CisJCQkJQUxMT0NfR1JPVyhwYXJlbnRzX3RvX3F1ZXVlLAorCQkJCQkgICBwYXJlbnRzX3RvX3F1ZXVlX25yICsgMSwKKwkJCQkJICAgcGFyZW50c190b19xdWV1ZV9hbGxvYyk7CisJCQkJcGFyZW50c190b19xdWV1ZVtwYXJlbnRzX3RvX3F1ZXVlX25yXSA9IHBhcmVudDsKKwkJCQlwYXJlbnRzX3RvX3F1ZXVlX25yKys7CisJCQl9CiAJCX0KKworCQkvKiBUaGUgZmlyc3QgcGFyZW50IG11c3QgY29tZSBvdXQgZmlyc3QgZnJvbSB0aGUgcHJpb19xdWV1ZSAqLworCQl3aGlsZSAocGFyZW50c190b19xdWV1ZV9ucikKKwkJCXByaW9fcXVldWVfcHV0KCZxdWV1ZSwKKwkJCQkgICAgICAgcGFyZW50c190b19xdWV1ZVstLXBhcmVudHNfdG9fcXVldWVfbnJdKTsKIAl9CisKKwljbGVhcl9wcmlvX3F1ZXVlKCZxdWV1ZSk7CisJZnJlZShwYXJlbnRzX3RvX3F1ZXVlKTsKIH0KIAogc3RhdGljIGludCBzdWJwYXRoX21hdGNoZXMoY29uc3QgY2hhciAqcGF0aCwgY29uc3QgY2hhciAqZmlsdGVyKQpAQCAtMTYwLDEwICsyMjksMTAgQEAKIHsKIAlpZiAoc2hvcnRlbl91bmFtYmlndW91cykKIAkJcmVmbmFtZSA9IHNob3J0ZW5fdW5hbWJpZ3VvdXNfcmVmKHJlZm5hbWUsIDApOwotCWVsc2UgaWYgKHN0YXJ0c193aXRoKHJlZm5hbWUsICJyZWZzL2hlYWRzLyIpKQotCQlyZWZuYW1lID0gcmVmbmFtZSArIDExOwotCWVsc2UgaWYgKHN0YXJ0c193aXRoKHJlZm5hbWUsICJyZWZzLyIpKQotCQlyZWZuYW1lID0gcmVmbmFtZSArIDU7CisJZWxzZSBpZiAoc2tpcF9wcmVmaXgocmVmbmFtZSwgInJlZnMvaGVhZHMvIiwgJnJlZm5hbWUpKQorCQk7IC8qIHJlZm5hbWUgYWxyZWFkeSBhZHZhbmNlZCAqLworCWVsc2UKKwkJc2tpcF9wcmVmaXgocmVmbmFtZSwgInJlZnMvIiwgJnJlZm5hbWUpOwogCXJldHVybiByZWZuYW1lOwogfQogCkBAIC0xNzgsNiArMjQ3LDEwIEBACiAJc3RydWN0IHRpcF90YWJsZV9lbnRyeSB7CiAJCXN0cnVjdCBvYmplY3RfaWQgb2lkOwogCQljb25zdCBjaGFyICpyZWZuYW1lOworCQlzdHJ1Y3QgY29tbWl0ICpjb21taXQ7CisJCXRpbWVzdGFtcF90IHRhZ2dlcmRhdGU7CisJCXVuc2lnbmVkIGludCBmcm9tX3RhZzoxOworCQl1bnNpZ25lZCBpbnQgZGVyZWY6MTsKIAl9ICp0YWJsZTsKIAlpbnQgbnI7CiAJaW50IGFsbG9jOwpAQCAtMTg1LDEzICsyNTgsMTggQEAKIH0gdGlwX3RhYmxlOwogCiBzdGF0aWMgdm9pZCBhZGRfdG9fdGlwX3RhYmxlKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY29uc3QgY2hhciAqcmVmbmFtZSwKLQkJCSAgICAgaW50IHNob3J0ZW5fdW5hbWJpZ3VvdXMpCisJCQkgICAgIGludCBzaG9ydGVuX3VuYW1iaWd1b3VzLCBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCisJCQkgICAgIHRpbWVzdGFtcF90IHRhZ2dlcmRhdGUsIGludCBmcm9tX3RhZywgaW50IGRlcmVmKQogewogCXJlZm5hbWUgPSBuYW1lX3JlZl9hYmJyZXYocmVmbmFtZSwgc2hvcnRlbl91bmFtYmlndW91cyk7CiAKIAlBTExPQ19HUk9XKHRpcF90YWJsZS50YWJsZSwgdGlwX3RhYmxlLm5yICsgMSwgdGlwX3RhYmxlLmFsbG9jKTsKIAlvaWRjcHkoJnRpcF90YWJsZS50YWJsZVt0aXBfdGFibGUubnJdLm9pZCwgb2lkKTsKIAl0aXBfdGFibGUudGFibGVbdGlwX3RhYmxlLm5yXS5yZWZuYW1lID0geHN0cmR1cChyZWZuYW1lKTsKKwl0aXBfdGFibGUudGFibGVbdGlwX3RhYmxlLm5yXS5jb21taXQgPSBjb21taXQ7CisJdGlwX3RhYmxlLnRhYmxlW3RpcF90YWJsZS5ucl0udGFnZ2VyZGF0ZSA9IHRhZ2dlcmRhdGU7CisJdGlwX3RhYmxlLnRhYmxlW3RpcF90YWJsZS5ucl0uZnJvbV90YWcgPSBmcm9tX3RhZzsKKwl0aXBfdGFibGUudGFibGVbdGlwX3RhYmxlLm5yXS5kZXJlZiA9IGRlcmVmOwogCXRpcF90YWJsZS5ucisrOwogCXRpcF90YWJsZS5zb3J0ZWQgPSAwOwogfQpAQCAtMjAyLDEyICsyODAsMzAgQEAKIAlyZXR1cm4gb2lkY21wKCZhLT5vaWQsICZiLT5vaWQpOwogfQogCitzdGF0aWMgaW50IGNtcF9ieV90YWdfYW5kX2FnZShjb25zdCB2b2lkICphXywgY29uc3Qgdm9pZCAqYl8pCit7CisJY29uc3Qgc3RydWN0IHRpcF90YWJsZV9lbnRyeSAqYSA9IGFfLCAqYiA9IGJfOworCWludCBjbXA7CisKKwkvKiBQcmVmZXIgdGFncy4gKi8KKwljbXAgPSBiLT5mcm9tX3RhZyAtIGEtPmZyb21fdGFnOworCWlmIChjbXApCisJCXJldHVybiBjbXA7CisKKwkvKiBPbGRlciBpcyBiZXR0ZXIuICovCisJaWYgKGEtPnRhZ2dlcmRhdGUgPCBiLT50YWdnZXJkYXRlKQorCQlyZXR1cm4gLTE7CisJcmV0dXJuIGEtPnRhZ2dlcmRhdGUgIT0gYi0+dGFnZ2VyZGF0ZTsKK30KKwogc3RhdGljIGludCBuYW1lX3JlZihjb25zdCBjaGFyICpwYXRoLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGludCBmbGFncywgdm9pZCAqY2JfZGF0YSkKIHsKIAlzdHJ1Y3Qgb2JqZWN0ICpvID0gcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBvaWQpOwogCXN0cnVjdCBuYW1lX3JlZl9kYXRhICpkYXRhID0gY2JfZGF0YTsKIAlpbnQgY2FuX2FiYnJldmlhdGVfb3V0cHV0ID0gZGF0YS0+dGFnc19vbmx5ICYmIGRhdGEtPm5hbWVfb25seTsKIAlpbnQgZGVyZWYgPSAwOworCWludCBmcm9tX3RhZyA9IDA7CisJc3RydWN0IGNvbW1pdCAqY29tbWl0ID0gTlVMTDsKIAl0aW1lc3RhbXBfdCB0YWdnZXJkYXRlID0gVElNRV9NQVg7CiAKIAlpZiAoZGF0YS0+dGFnc19vbmx5ICYmICFzdGFydHNfd2l0aChwYXRoLCAicmVmcy90YWdzLyIpKQpAQCAtMjU2LDggKzM1Miw2IEBACiAJCQlyZXR1cm4gMDsKIAl9CiAKLQlhZGRfdG9fdGlwX3RhYmxlKG9pZCwgcGF0aCwgY2FuX2FiYnJldmlhdGVfb3V0cHV0KTsKLQogCXdoaWxlIChvICYmIG8tPnR5cGUgPT0gT0JKX1RBRykgewogCQlzdHJ1Y3QgdGFnICp0ID0gKHN0cnVjdCB0YWcgKikgbzsKIAkJaWYgKCF0LT50YWdnZWQpCkBAIC0yNjcsMTggKzM2MSwzNSBAQAogCQl0YWdnZXJkYXRlID0gdC0+ZGF0ZTsKIAl9CiAJaWYgKG8gJiYgby0+dHlwZSA9PSBPQkpfQ09NTUlUKSB7Ci0JCXN0cnVjdCBjb21taXQgKmNvbW1pdCA9IChzdHJ1Y3QgY29tbWl0ICopbzsKLQkJaW50IGZyb21fdGFnID0gc3RhcnRzX3dpdGgocGF0aCwgInJlZnMvdGFncy8iKTsKLQorCQljb21taXQgPSAoc3RydWN0IGNvbW1pdCAqKW87CisJCWZyb21fdGFnID0gc3RhcnRzX3dpdGgocGF0aCwgInJlZnMvdGFncy8iKTsKIAkJaWYgKHRhZ2dlcmRhdGUgPT0gVElNRV9NQVgpCi0JCQl0YWdnZXJkYXRlID0gKChzdHJ1Y3QgY29tbWl0ICopbyktPmRhdGU7Ci0JCXBhdGggPSBuYW1lX3JlZl9hYmJyZXYocGF0aCwgY2FuX2FiYnJldmlhdGVfb3V0cHV0KTsKLQkJbmFtZV9yZXYoY29tbWl0LCB4c3RyZHVwKHBhdGgpLCB0YWdnZXJkYXRlLCAwLCAwLAotCQkJIGZyb21fdGFnLCBkZXJlZik7CisJCQl0YWdnZXJkYXRlID0gY29tbWl0LT5kYXRlOwogCX0KKworCWFkZF90b190aXBfdGFibGUob2lkLCBwYXRoLCBjYW5fYWJicmV2aWF0ZV9vdXRwdXQsIGNvbW1pdCwgdGFnZ2VyZGF0ZSwKKwkJCSBmcm9tX3RhZywgZGVyZWYpOwogCXJldHVybiAwOwogfQogCitzdGF0aWMgdm9pZCBuYW1lX3RpcHModm9pZCkKK3sKKwlpbnQgaTsKKworCS8qCisJICogVHJ5IHRvIHNldCBiZXR0ZXIgbmFtZXMgZmlyc3QsIHNvIHRoYXQgd29yc2Ugb25lcyBzcHJlYWQKKwkgKiBsZXNzLgorCSAqLworCVFTT1JUKHRpcF90YWJsZS50YWJsZSwgdGlwX3RhYmxlLm5yLCBjbXBfYnlfdGFnX2FuZF9hZ2UpOworCWZvciAoaSA9IDA7IGkgPCB0aXBfdGFibGUubnI7IGkrKykgeworCQlzdHJ1Y3QgdGlwX3RhYmxlX2VudHJ5ICplID0gJnRpcF90YWJsZS50YWJsZVtpXTsKKwkJaWYgKGUtPmNvbW1pdCkgeworCQkJbmFtZV9yZXYoZS0+Y29tbWl0LCBlLT5yZWZuYW1lLCBlLT50YWdnZXJkYXRlLAorCQkJCSBlLT5mcm9tX3RhZywgZS0+ZGVyZWYpOworCQl9CisJfQorfQorCiBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciAqbnRoX3RpcF90YWJsZV9lbnQoc2l6ZV90IGl4LCB2b2lkICp0YWJsZV8pCiB7CiAJc3RydWN0IHRpcF90YWJsZV9lbnRyeSAqdGFibGUgPSB0YWJsZV87CkBAIC0zMDgsMTEgKzQxOSwxMSBAQAogc3RhdGljIGNvbnN0IGNoYXIgKmdldF9yZXZfbmFtZShjb25zdCBzdHJ1Y3Qgb2JqZWN0ICpvLCBzdHJ1Y3Qgc3RyYnVmICpidWYpCiB7CiAJc3RydWN0IHJldl9uYW1lICpuOwotCXN0cnVjdCBjb21taXQgKmM7CisJY29uc3Qgc3RydWN0IGNvbW1pdCAqYzsKIAogCWlmIChvLT50eXBlICE9IE9CSl9DT01NSVQpCiAJCXJldHVybiBnZXRfZXhhY3RfcmVmX21hdGNoKG8pOwotCWMgPSAoc3RydWN0IGNvbW1pdCAqKSBvOworCWMgPSAoY29uc3Qgc3RydWN0IGNvbW1pdCAqKSBvOwogCW4gPSBnZXRfY29tbWl0X3Jldl9uYW1lKGMpOwogCWlmICghbikKIAkJcmV0dXJuIE5VTEw7CkBAIC0zMjAsMTEgKzQzMSwxMCBAQAogCWlmICghbi0+Z2VuZXJhdGlvbikKIAkJcmV0dXJuIG4tPnRpcF9uYW1lOwogCWVsc2UgewotCQlpbnQgbGVuID0gc3RybGVuKG4tPnRpcF9uYW1lKTsKLQkJaWYgKGxlbiA+IDIgJiYgIXN0cmNtcChuLT50aXBfbmFtZSArIGxlbiAtIDIsICJeMCIpKQotCQkJbGVuIC09IDI7CiAJCXN0cmJ1Zl9yZXNldChidWYpOwotCQlzdHJidWZfYWRkZihidWYsICIlLipzfiVkIiwgbGVuLCBuLT50aXBfbmFtZSwgbi0+Z2VuZXJhdGlvbik7CisJCXN0cmJ1Zl9hZGRzdHIoYnVmLCBuLT50aXBfbmFtZSk7CisJCXN0cmJ1Zl9zdHJpcF9zdWZmaXgoYnVmLCAiXjAiKTsKKwkJc3RyYnVmX2FkZGYoYnVmLCAifiVkIiwgbi0+Z2VuZXJhdGlvbik7CiAJCXJldHVybiBidWYtPmJ1ZjsKIAl9CiB9CkBAIC0zNjEsMjYgKzQ3MSwyNyBAQAogc3RhdGljIHZvaWQgbmFtZV9yZXZfbGluZShjaGFyICpwLCBzdHJ1Y3QgbmFtZV9yZWZfZGF0YSAqZGF0YSkKIHsKIAlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwotCWludCBmb3J0eSA9IDA7CisJaW50IGNvdW50ZXIgPSAwOwogCWNoYXIgKnBfc3RhcnQ7CisJY29uc3QgdW5zaWduZWQgaGV4c3ogPSB0aGVfaGFzaF9hbGdvLT5oZXhzejsKKwogCWZvciAocF9zdGFydCA9IHA7ICpwOyBwKyspIHsKICNkZWZpbmUgaXNoZXgoeCkgKGlzZGlnaXQoKHgpKSB8fCAoKHgpID49ICdhJyAmJiAoeCkgPD0gJ2YnKSkKIAkJaWYgKCFpc2hleCgqcCkpCi0JCQlmb3J0eSA9IDA7Ci0JCWVsc2UgaWYgKCsrZm9ydHkgPT0gR0lUX1NIQTFfSEVYU1ogJiYKKwkJCWNvdW50ZXIgPSAwOworCQllbHNlIGlmICgrK2NvdW50ZXIgPT0gaGV4c3ogJiYKIAkJCSAhaXNoZXgoKihwKzEpKSkgewogCQkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJCQljb25zdCBjaGFyICpuYW1lID0gTlVMTDsKIAkJCWNoYXIgYyA9ICoocCsxKTsKIAkJCWludCBwX2xlbiA9IHAgLSBwX3N0YXJ0ICsgMTsKIAotCQkJZm9ydHkgPSAwOworCQkJY291bnRlciA9IDA7CiAKIAkJCSoocCsxKSA9IDA7Ci0JCQlpZiAoIWdldF9vaWQocCAtIChHSVRfU0hBMV9IRVhTWiAtIDEpLCAmb2lkKSkgeworCQkJaWYgKCFnZXRfb2lkKHAgLSAoaGV4c3ogLSAxKSwgJm9pZCkpIHsKIAkJCQlzdHJ1Y3Qgb2JqZWN0ICpvID0KLQkJCQkJbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwKLQkJCQkJCSAgICAgIG9pZC5oYXNoKTsKKwkJCQkJbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgJm9pZCk7CiAJCQkJaWYgKG8pCiAJCQkJCW5hbWUgPSBnZXRfcmV2X25hbWUobywgJmJ1Zik7CiAJCQl9CkBAIC0zOTAsNyArNTAxLDcgQEAKIAkJCQljb250aW51ZTsKIAogCQkJaWYgKGRhdGEtPm5hbWVfb25seSkKLQkJCQlwcmludGYoIiUuKnMlcyIsIHBfbGVuIC0gR0lUX1NIQTFfSEVYU1osIHBfc3RhcnQsIG5hbWUpOworCQkJCXByaW50ZigiJS4qcyVzIiwgcF9sZW4gLSBoZXhzeiwgcF9zdGFydCwgbmFtZSk7CiAJCQllbHNlCiAJCQkJcHJpbnRmKCIlLipzICglcykiLCBwX2xlbiwgcF9zdGFydCwgbmFtZSk7CiAJCQlwX3N0YXJ0ID0gcCArIDE7CkBAIC00ODMsOSArNTk0LDE1IEBACiAJCWFkZF9vYmplY3RfYXJyYXkob2JqZWN0LCAqYXJndiwgJnJldnMpOwogCX0KIAotCWlmIChjdXRvZmYpCi0JCWN1dG9mZiA9IGN1dG9mZiAtIENVVE9GRl9EQVRFX1NMT1A7CisJaWYgKGN1dG9mZikgeworCQkvKiBjaGVjayBmb3IgdW5kZWZsb3cgKi8KKwkJaWYgKGN1dG9mZiA+IFRJTUVfTUlOICsgQ1VUT0ZGX0RBVEVfU0xPUCkKKwkJCWN1dG9mZiA9IGN1dG9mZiAtIENVVE9GRl9EQVRFX1NMT1A7CisJCWVsc2UKKwkJCWN1dG9mZiA9IFRJTUVfTUlOOworCX0KIAlmb3JfZWFjaF9yZWYobmFtZV9yZWYsICZkYXRhKTsKKwluYW1lX3RpcHMoKTsKIAogCWlmICh0cmFuc2Zvcm1fc3RkaW4pIHsKIAkJY2hhciBidWZmZXJbMjA0OF07CmRpZmYgLS1naXQgYS9idWlsdGluL25vdGVzLmMgYi9idWlsdGluL25vdGVzLmMKaW5kZXggYzc4YjdhMC4uMzVlNDY4ZSAxMDA2NDQKLS0tIGEvYnVpbHRpbi9ub3Rlcy5jCisrKyBiL2J1aWx0aW4vbm90ZXMuYwpAQCAtMzMwLDEwICszMzAsMTAgQEAKIAl9CiAKIAlpZiAoIXJld3JpdGVfY21kKSB7Ci0JCWNvbW1pdF9ub3Rlcyh0LCBtc2cpOworCQljb21taXRfbm90ZXModGhlX3JlcG9zaXRvcnksIHQsIG1zZyk7CiAJCWZyZWVfbm90ZXModCk7CiAJfSBlbHNlIHsKLQkJZmluaXNoX2NvcHlfbm90ZXNfZm9yX3Jld3JpdGUoYywgbXNnKTsKKwkJZmluaXNoX2NvcHlfbm90ZXNfZm9yX3Jld3JpdGUodGhlX3JlcG9zaXRvcnksIGMsIG1zZyk7CiAJfQogCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOwogCXJldHVybiByZXQ7CkBAIC00NjksMTIgKzQ2OSwxNCBAQAogCQl3cml0ZV9ub3RlX2RhdGEoJmQsICZuZXdfbm90ZSk7CiAJCWlmIChhZGRfbm90ZSh0LCAmb2JqZWN0LCAmbmV3X25vdGUsIGNvbWJpbmVfbm90ZXNfb3ZlcndyaXRlKSkKIAkJCUJVRygiY29tYmluZV9ub3Rlc19vdmVyd3JpdGUgZmFpbGVkIik7Ci0JCWNvbW1pdF9ub3Rlcyh0LCAiTm90ZXMgYWRkZWQgYnkgJ2dpdCBub3RlcyBhZGQnIik7CisJCWNvbW1pdF9ub3Rlcyh0aGVfcmVwb3NpdG9yeSwgdCwKKwkJCSAgICAgIk5vdGVzIGFkZGVkIGJ5ICdnaXQgbm90ZXMgYWRkJyIpOwogCX0gZWxzZSB7CiAJCWZwcmludGYoc3RkZXJyLCBfKCJSZW1vdmluZyBub3RlIGZvciBvYmplY3QgJXNcbiIpLAogCQkJb2lkX3RvX2hleCgmb2JqZWN0KSk7CiAJCXJlbW92ZV9ub3RlKHQsIG9iamVjdC5oYXNoKTsKLQkJY29tbWl0X25vdGVzKHQsICJOb3RlcyByZW1vdmVkIGJ5ICdnaXQgbm90ZXMgYWRkJyIpOworCQljb21taXRfbm90ZXModGhlX3JlcG9zaXRvcnksIHQsCisJCQkgICAgICJOb3RlcyByZW1vdmVkIGJ5ICdnaXQgbm90ZXMgYWRkJyIpOwogCX0KIAogCWZyZWVfbm90ZV9kYXRhKCZkKTsKQEAgLTUxMSw3ICs1MTMsNyBAQAogCQl9CiAJfQogCi0JaWYgKGFyZ2MgPCAyKSB7CisJaWYgKGFyZ2MgPCAxKSB7CiAJCWVycm9yKF8oInRvbyBmZXcgcGFyYW1ldGVycyIpKTsKIAkJdXNhZ2Vfd2l0aF9vcHRpb25zKGdpdF9ub3Rlc19jb3B5X3VzYWdlLCBvcHRpb25zKTsKIAl9CkBAIC01NTIsNyArNTU0LDggQEAKIAogCWlmIChhZGRfbm90ZSh0LCAmb2JqZWN0LCBmcm9tX25vdGUsIGNvbWJpbmVfbm90ZXNfb3ZlcndyaXRlKSkKIAkJQlVHKCJjb21iaW5lX25vdGVzX292ZXJ3cml0ZSBmYWlsZWQiKTsKLQljb21taXRfbm90ZXModCwgIk5vdGVzIGFkZGVkIGJ5ICdnaXQgbm90ZXMgY29weSciKTsKKwljb21taXRfbm90ZXModGhlX3JlcG9zaXRvcnksIHQsCisJCSAgICAgIk5vdGVzIGFkZGVkIGJ5ICdnaXQgbm90ZXMgY29weSciKTsKIG91dDoKIAlmcmVlX25vdGVzKHQpOwogCXJldHVybiByZXR2YWw7CkBAIC02MTksNyArNjIyLDcgQEAKIAogCQlzdHJidWZfZ3JvdygmZC5idWYsIHNpemUgKyAxKTsKIAkJaWYgKGQuYnVmLmxlbiAmJiBwcmV2X2J1ZiAmJiBzaXplKQotCQkJc3RyYnVmX2luc2VydCgmZC5idWYsIDAsICJcbiIsIDEpOworCQkJc3RyYnVmX2luc2VydHN0cigmZC5idWYsIDAsICJcbiIpOwogCQlpZiAocHJldl9idWYgJiYgc2l6ZSkKIAkJCXN0cmJ1Zl9pbnNlcnQoJmQuYnVmLCAwLCBwcmV2X2J1Ziwgc2l6ZSk7CiAJCWZyZWUocHJldl9idWYpOwpAQCAtNjM2LDcgKzYzOSw3IEBACiAJCXJlbW92ZV9ub3RlKHQsIG9iamVjdC5oYXNoKTsKIAkJbG9nbXNnID0geHN0cmZtdCgiTm90ZXMgcmVtb3ZlZCBieSAnZ2l0IG5vdGVzICVzJyIsIGFyZ3ZbMF0pOwogCX0KLQljb21taXRfbm90ZXModCwgbG9nbXNnKTsKKwljb21taXRfbm90ZXModGhlX3JlcG9zaXRvcnksIHQsIGxvZ21zZyk7CiAKIAlmcmVlKGxvZ21zZyk7CiAJZnJlZV9ub3RlX2RhdGEoJmQpOwpAQCAtNzQyLDcgKzc0NSw3IEBACiAJbWVtc2V0KCZwcmV0dHlfY3R4LCAwLCBzaXplb2YocHJldHR5X2N0eCkpOwogCWZvcm1hdF9jb21taXRfbWVzc2FnZShwYXJ0aWFsLCAiJXMiLCAmbXNnLCAmcHJldHR5X2N0eCk7CiAJc3RyYnVmX3RyaW0oJm1zZyk7Ci0Jc3RyYnVmX2luc2VydCgmbXNnLCAwLCAibm90ZXM6ICIsIDcpOworCXN0cmJ1Zl9pbnNlcnRzdHIoJm1zZywgMCwgIm5vdGVzOiAiKTsKIAl1cGRhdGVfcmVmKG1zZy5idWYsIG8tPmxvY2FsX3JlZiwgJm9pZCwKIAkJICAgaXNfbnVsbF9vaWQoJnBhcmVudF9vaWQpID8gTlVMTCA6ICZwYXJlbnRfb2lkLAogCQkgICAwLCBVUERBVEVfUkVGU19ESUVfT05fRVJSKTsKQEAgLTgxMyw3ICs4MTYsNyBAQAogCQl1c2FnZV93aXRoX29wdGlvbnMoZ2l0X25vdGVzX21lcmdlX3VzYWdlLCBvcHRpb25zKTsKIAl9CiAKLQlpbml0X25vdGVzX21lcmdlX29wdGlvbnMoJm8pOworCWluaXRfbm90ZXNfbWVyZ2Vfb3B0aW9ucyh0aGVfcmVwb3NpdG9yeSwgJm8pOwogCW8udmVyYm9zaXR5ID0gdmVyYm9zaXR5ICsgTk9URVNfTUVSR0VfVkVSQk9TSVRZX0RFRkFVTFQ7CiAKIAlpZiAoZG9fYWJvcnQpCkBAIC05MzcsNyArOTQwLDggQEAKIAkJc3RyYnVmX3JlbGVhc2UoJnNiKTsKIAl9CiAJaWYgKCFyZXR2YWwpCi0JCWNvbW1pdF9ub3Rlcyh0LCAiTm90ZXMgcmVtb3ZlZCBieSAnZ2l0IG5vdGVzIHJlbW92ZSciKTsKKwkJY29tbWl0X25vdGVzKHRoZV9yZXBvc2l0b3J5LCB0LAorCQkJICAgICAiTm90ZXMgcmVtb3ZlZCBieSAnZ2l0IG5vdGVzIHJlbW92ZSciKTsKIAlmcmVlX25vdGVzKHQpOwogCXJldHVybiByZXR2YWw7CiB9CkBAIC05NjUsNyArOTY5LDggQEAKIAlwcnVuZV9ub3Rlcyh0LCAodmVyYm9zZSA/IE5PVEVTX1BSVU5FX1ZFUkJPU0UgOiAwKSB8CiAJCShzaG93X29ubHkgPyBOT1RFU19QUlVORV9WRVJCT1NFfE5PVEVTX1BSVU5FX0RSWVJVTiA6IDApICk7CiAJaWYgKCFzaG93X29ubHkpCi0JCWNvbW1pdF9ub3Rlcyh0LCAiTm90ZXMgcmVtb3ZlZCBieSAnZ2l0IG5vdGVzIHBydW5lJyIpOworCQljb21taXRfbm90ZXModGhlX3JlcG9zaXRvcnksIHQsCisJCQkgICAgICJOb3RlcyByZW1vdmVkIGJ5ICdnaXQgbm90ZXMgcHJ1bmUnIik7CiAJZnJlZV9ub3Rlcyh0KTsKIAlyZXR1cm4gMDsKIH0KZGlmZiAtLWdpdCBhL2J1aWx0aW4vcGFjay1vYmplY3RzLmMgYi9idWlsdGluL3BhY2stb2JqZWN0cy5jCmluZGV4IDQxMWFlZmQuLjAyYWE2ZWUgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vcGFjay1vYmplY3RzLmMKKysrIGIvYnVpbHRpbi9wYWNrLW9iamVjdHMuYwpAQCAtMzMsNiArMzMsNyBAQAogI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgogI2luY2x1ZGUgImRpci5oIgogI2luY2x1ZGUgIm1pZHguaCIKKyNpbmNsdWRlICJ0cmFjZTIuaCIKIAogI2RlZmluZSBJTl9QQUNLKG9iaikgb2VfaW5fcGFjaygmdG9fcGFjaywgb2JqKQogI2RlZmluZSBTSVpFKG9iaikgb2Vfc2l6ZSgmdG9fcGFjaywgb2JqKQpAQCAtODQsMTggKzg1LDI0IEBACiBzdGF0aWMgaW50IGRlcHRoID0gNTA7CiBzdGF0aWMgaW50IGRlbHRhX3NlYXJjaF90aHJlYWRzOwogc3RhdGljIGludCBwYWNrX3RvX3N0ZG91dDsKK3N0YXRpYyBpbnQgc3BhcnNlOwogc3RhdGljIGludCB0aGluOwogc3RhdGljIGludCBudW1fcHJlZmVycmVkX2Jhc2U7CiBzdGF0aWMgc3RydWN0IHByb2dyZXNzICpwcm9ncmVzc19zdGF0ZTsKIAogc3RhdGljIHN0cnVjdCBwYWNrZWRfZ2l0ICpyZXVzZV9wYWNrZmlsZTsKIHN0YXRpYyB1aW50MzJfdCByZXVzZV9wYWNrZmlsZV9vYmplY3RzOwotc3RhdGljIG9mZl90IHJldXNlX3BhY2tmaWxlX29mZnNldDsKK3N0YXRpYyBzdHJ1Y3QgYml0bWFwICpyZXVzZV9wYWNrZmlsZV9iaXRtYXA7CiAKIHN0YXRpYyBpbnQgdXNlX2JpdG1hcF9pbmRleF9kZWZhdWx0ID0gMTsKIHN0YXRpYyBpbnQgdXNlX2JpdG1hcF9pbmRleCA9IC0xOwotc3RhdGljIGludCB3cml0ZV9iaXRtYXBfaW5kZXg7Ci1zdGF0aWMgdWludDE2X3Qgd3JpdGVfYml0bWFwX29wdGlvbnM7CitzdGF0aWMgaW50IGFsbG93X3BhY2tfcmV1c2UgPSAxOworc3RhdGljIGVudW0geworCVdSSVRFX0JJVE1BUF9GQUxTRSA9IDAsCisJV1JJVEVfQklUTUFQX1FVSUVULAorCVdSSVRFX0JJVE1BUF9UUlVFLAorfSB3cml0ZV9iaXRtYXBfaW5kZXg7CitzdGF0aWMgdWludDE2X3Qgd3JpdGVfYml0bWFwX29wdGlvbnMgPSBCSVRNQVBfT1BUX0hBU0hfQ0FDSEU7CiAKIHN0YXRpYyBpbnQgZXhjbHVkZV9wcm9taXNvcl9vYmplY3RzOwogCkBAIC0xNTcsNyArMTY0LDcgQEAKIAlkZWx0YV9idWYgPSBkaWZmX2RlbHRhKGJhc2VfYnVmLCBiYXNlX3NpemUsCiAJCQkgICAgICAgYnVmLCBzaXplLCAmZGVsdGFfc2l6ZSwgMCk7CiAJLyoKLQkgKiBXZSBzdWNjZXNmdWxseSBjb21wdXRlZCB0aGlzIGRlbHRhIG9uY2UgYnV0IGRyb3BwZWQgaXQgZm9yCisJICogV2Ugc3VjY2Vzc2Z1bGx5IGNvbXB1dGVkIHRoaXMgZGVsdGEgb25jZSBidXQgZHJvcHBlZCBpdCBmb3IKIAkgKiBtZW1vcnkgcmVhc29ucy4gU29tZXRoaW5nIGlzIHZlcnkgd3JvbmcgaWYgdGhpcyB0aW1lIHdlCiAJICogcmVjb21wdXRlIGFuZCBjcmVhdGUgYSBkaWZmZXJlbnQgZGVsdGEuCiAJICovCkBAIC0yOTcsNyArMzA0LDggQEAKIAlpZiAoIXVzYWJsZV9kZWx0YSkgewogCQlpZiAob2VfdHlwZShlbnRyeSkgPT0gT0JKX0JMT0IgJiYKIAkJICAgIG9lX3NpemVfZ3JlYXRlcl90aGFuKCZ0b19wYWNrLCBlbnRyeSwgYmlnX2ZpbGVfdGhyZXNob2xkKSAmJgotCQkgICAgKHN0ID0gb3Blbl9pc3RyZWFtKCZlbnRyeS0+aWR4Lm9pZCwgJnR5cGUsICZzaXplLCBOVUxMKSkgIT0gTlVMTCkKKwkJICAgIChzdCA9IG9wZW5faXN0cmVhbSh0aGVfcmVwb3NpdG9yeSwgJmVudHJ5LT5pZHgub2lkLCAmdHlwZSwKKwkJCQkgICAgICAgJnNpemUsIE5VTEwpKSAhPSBOVUxMKQogCQkJYnVmID0gTlVMTDsKIAkJZWxzZSB7CiAJCQlidWYgPSByZWFkX29iamVjdF9maWxlKCZlbnRyeS0+aWR4Lm9pZCwgJnR5cGUsICZzaXplKTsKQEAgLTYwNCwxMiArNjEyLDEyIEBACiAJCSAgICAgICB2b2lkICpjYl9kYXRhKQogewogCXN0cnVjdCBvYmplY3RfaWQgcGVlbGVkOwotCXN0cnVjdCBvYmplY3RfZW50cnkgKmVudHJ5ID0gcGFja2xpc3RfZmluZCgmdG9fcGFjaywgb2lkLT5oYXNoLCBOVUxMKTsKKwlzdHJ1Y3Qgb2JqZWN0X2VudHJ5ICplbnRyeSA9IHBhY2tsaXN0X2ZpbmQoJnRvX3BhY2ssIG9pZCk7CiAKIAlpZiAoZW50cnkpCiAJCWVudHJ5LT50YWdnZWQgPSAxOwogCWlmICghcGVlbF9yZWYocGF0aCwgJnBlZWxlZCkpIHsKLQkJZW50cnkgPSBwYWNrbGlzdF9maW5kKCZ0b19wYWNrLCBwZWVsZWQuaGFzaCwgTlVMTCk7CisJCWVudHJ5ID0gcGFja2xpc3RfZmluZCgmdG9fcGFjaywgJnBlZWxlZCk7CiAJCWlmIChlbnRyeSkKIAkJCWVudHJ5LT50YWdnZWQgPSAxOwogCX0KQEAgLTc3OCw1NyArNzg2LDE4NiBAQAogCXJldHVybiB3bzsKIH0KIAotc3RhdGljIG9mZl90IHdyaXRlX3JldXNlZF9wYWNrKHN0cnVjdCBoYXNoZmlsZSAqZikKKworLyoKKyAqIEEgcmV1c2VkIHNldCBvZiBvYmplY3RzLiBBbGwgb2JqZWN0cyBpbiBhIGNodW5rIGhhdmUgdGhlIHNhbWUKKyAqIHJlbGF0aXZlIHBvc2l0aW9uIGluIHRoZSBvcmlnaW5hbCBwYWNrZmlsZSBhbmQgdGhlIGdlbmVyYXRlZAorICogcGFja2ZpbGUuCisgKi8KKworc3RhdGljIHN0cnVjdCByZXVzZWRfY2h1bmsgeworCS8qIFRoZSBvZmZzZXQgb2YgdGhlIGZpcnN0IG9iamVjdCBvZiB0aGlzIGNodW5rIGluIHRoZSBvcmlnaW5hbAorCSAqIHBhY2tmaWxlLiAqLworCW9mZl90IG9yaWdpbmFsOworCS8qIFRoZSBvZmZzZXQgb2YgdGhlIGZpcnN0IG9iamVjdCBvZiB0aGlzIGNodW5rIGluIHRoZSBnZW5lcmF0ZWQKKwkgKiBwYWNrZmlsZSBtaW51cyAib3JpZ2luYWwiLiAqLworCW9mZl90IGRpZmZlcmVuY2U7Cit9ICpyZXVzZWRfY2h1bmtzOworc3RhdGljIGludCByZXVzZWRfY2h1bmtzX25yOworc3RhdGljIGludCByZXVzZWRfY2h1bmtzX2FsbG9jOworCitzdGF0aWMgdm9pZCByZWNvcmRfcmV1c2VkX29iamVjdChvZmZfdCB3aGVyZSwgb2ZmX3Qgb2Zmc2V0KQogewotCXVuc2lnbmVkIGNoYXIgYnVmZmVyWzgxOTJdOwotCW9mZl90IHRvX3dyaXRlLCB0b3RhbDsKLQlpbnQgZmQ7CisJaWYgKHJldXNlZF9jaHVua3NfbnIgJiYgcmV1c2VkX2NodW5rc1tyZXVzZWRfY2h1bmtzX25yLTFdLmRpZmZlcmVuY2UgPT0gb2Zmc2V0KQorCQlyZXR1cm47CiAKLQlpZiAoIWlzX3BhY2tfdmFsaWQocmV1c2VfcGFja2ZpbGUpKQotCQlkaWUoXygicGFja2ZpbGUgaXMgaW52YWxpZDogJXMiKSwgcmV1c2VfcGFja2ZpbGUtPnBhY2tfbmFtZSk7CisJQUxMT0NfR1JPVyhyZXVzZWRfY2h1bmtzLCByZXVzZWRfY2h1bmtzX25yICsgMSwKKwkJICAgcmV1c2VkX2NodW5rc19hbGxvYyk7CisJcmV1c2VkX2NodW5rc1tyZXVzZWRfY2h1bmtzX25yXS5vcmlnaW5hbCA9IHdoZXJlOworCXJldXNlZF9jaHVua3NbcmV1c2VkX2NodW5rc19ucl0uZGlmZmVyZW5jZSA9IG9mZnNldDsKKwlyZXVzZWRfY2h1bmtzX25yKys7Cit9CiAKLQlmZCA9IGdpdF9vcGVuKHJldXNlX3BhY2tmaWxlLT5wYWNrX25hbWUpOwotCWlmIChmZCA8IDApCi0JCWRpZV9lcnJubyhfKCJ1bmFibGUgdG8gb3BlbiBwYWNrZmlsZSBmb3IgcmV1c2U6ICVzIiksCi0JCQkgIHJldXNlX3BhY2tmaWxlLT5wYWNrX25hbWUpOwotCi0JaWYgKGxzZWVrKGZkLCBzaXplb2Yoc3RydWN0IHBhY2tfaGVhZGVyKSwgU0VFS19TRVQpID09IC0xKQotCQlkaWVfZXJybm8oXygidW5hYmxlIHRvIHNlZWsgaW4gcmV1c2VkIHBhY2tmaWxlIikpOwotCi0JaWYgKHJldXNlX3BhY2tmaWxlX29mZnNldCA8IDApCi0JCXJldXNlX3BhY2tmaWxlX29mZnNldCA9IHJldXNlX3BhY2tmaWxlLT5wYWNrX3NpemUgLSB0aGVfaGFzaF9hbGdvLT5yYXdzejsKLQotCXRvdGFsID0gdG9fd3JpdGUgPSByZXVzZV9wYWNrZmlsZV9vZmZzZXQgLSBzaXplb2Yoc3RydWN0IHBhY2tfaGVhZGVyKTsKLQotCXdoaWxlICh0b193cml0ZSkgewotCQlpbnQgcmVhZF9wYWNrID0geHJlYWQoZmQsIGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlcikpOwotCi0JCWlmIChyZWFkX3BhY2sgPD0gMCkKLQkJCWRpZV9lcnJubyhfKCJ1bmFibGUgdG8gcmVhZCBmcm9tIHJldXNlZCBwYWNrZmlsZSIpKTsKLQotCQlpZiAocmVhZF9wYWNrID4gdG9fd3JpdGUpCi0JCQlyZWFkX3BhY2sgPSB0b193cml0ZTsKLQotCQloYXNod3JpdGUoZiwgYnVmZmVyLCByZWFkX3BhY2spOwotCQl0b193cml0ZSAtPSByZWFkX3BhY2s7Ci0KLQkJLyoKLQkJICogV2UgZG9uJ3Qga25vdyB0aGUgYWN0dWFsIG51bWJlciBvZiBvYmplY3RzIHdyaXR0ZW4sCi0JCSAqIG9ubHkgaG93IG1hbnkgYnl0ZXMgd3JpdHRlbiwgaG93IG1hbnkgYnl0ZXMgdG90YWwsIGFuZAotCQkgKiBob3cgbWFueSBvYmplY3RzIHRvdGFsLiBTbyB3ZSBjYW4gZmFrZSBpdCBieSBwcmV0ZW5kaW5nIGFsbAotCQkgKiBvYmplY3RzIHdlIGFyZSB3cml0aW5nIGFyZSB0aGUgc2FtZSBzaXplLiBUaGlzIGdpdmVzIHVzIGEKLQkJICogc21vb3RoIHByb2dyZXNzIG1ldGVyLCBhbmQgYXQgdGhlIGVuZCBpdCBtYXRjaGVzIHRoZSB0cnVlCi0JCSAqIGFuc3dlci4KLQkJICovCi0JCXdyaXR0ZW4gPSByZXVzZV9wYWNrZmlsZV9vYmplY3RzICoKLQkJCQkoKChkb3VibGUpKHRvdGFsIC0gdG9fd3JpdGUpKSAvIHRvdGFsKTsKLQkJZGlzcGxheV9wcm9ncmVzcyhwcm9ncmVzc19zdGF0ZSwgd3JpdHRlbik7CisvKgorICogQmluYXJ5IHNlYXJjaCB0byBmaW5kIHRoZSBjaHVuayB0aGF0ICJ3aGVyZSIgaXMgaW4uIE5vdGUKKyAqIHRoYXQgd2UncmUgbm90IGxvb2tpbmcgZm9yIGFuIGV4YWN0IG1hdGNoLCBqdXN0IHRoZSBmaXJzdAorICogY2h1bmsgdGhhdCBjb250YWlucyBpdCAod2hpY2ggaW1wbGljaXRseSBlbmRzIGF0IHRoZSBzdGFydAorICogb2YgdGhlIG5leHQgY2h1bmsuCisgKi8KK3N0YXRpYyBvZmZfdCBmaW5kX3JldXNlZF9vZmZzZXQob2ZmX3Qgd2hlcmUpCit7CisJaW50IGxvID0gMCwgaGkgPSByZXVzZWRfY2h1bmtzX25yOworCXdoaWxlIChsbyA8IGhpKSB7CisJCWludCBtaSA9IGxvICsgKChoaSAtIGxvKSAvIDIpOworCQlpZiAod2hlcmUgPT0gcmV1c2VkX2NodW5rc1ttaV0ub3JpZ2luYWwpCisJCQlyZXR1cm4gcmV1c2VkX2NodW5rc1ttaV0uZGlmZmVyZW5jZTsKKwkJaWYgKHdoZXJlIDwgcmV1c2VkX2NodW5rc1ttaV0ub3JpZ2luYWwpCisJCQloaSA9IG1pOworCQllbHNlCisJCQlsbyA9IG1pICsgMTsKIAl9CiAKLQljbG9zZShmZCk7Ci0Jd3JpdHRlbiA9IHJldXNlX3BhY2tmaWxlX29iamVjdHM7Ci0JZGlzcGxheV9wcm9ncmVzcyhwcm9ncmVzc19zdGF0ZSwgd3JpdHRlbik7Ci0JcmV0dXJuIHJldXNlX3BhY2tmaWxlX29mZnNldCAtIHNpemVvZihzdHJ1Y3QgcGFja19oZWFkZXIpOworCS8qCisJICogVGhlIGZpcnN0IGNodW5rIHN0YXJ0cyBhdCB6ZXJvLCBzbyB3ZSBjYW4ndCBoYXZlIGdvbmUgYmVsb3cKKwkgKiB0aGVyZS4KKwkgKi8KKwlhc3NlcnQobG8pOworCXJldHVybiByZXVzZWRfY2h1bmtzW2xvLTFdLmRpZmZlcmVuY2U7Cit9CisKK3N0YXRpYyB2b2lkIHdyaXRlX3JldXNlZF9wYWNrX29uZShzaXplX3QgcG9zLCBzdHJ1Y3QgaGFzaGZpbGUgKm91dCwKKwkJCQkgIHN0cnVjdCBwYWNrX3dpbmRvdyAqKndfY3VycykKK3sKKwlvZmZfdCBvZmZzZXQsIG5leHQsIGN1cjsKKwllbnVtIG9iamVjdF90eXBlIHR5cGU7CisJdW5zaWduZWQgbG9uZyBzaXplOworCisJb2Zmc2V0ID0gcmV1c2VfcGFja2ZpbGUtPnJldmluZGV4W3Bvc10ub2Zmc2V0OworCW5leHQgPSByZXVzZV9wYWNrZmlsZS0+cmV2aW5kZXhbcG9zICsgMV0ub2Zmc2V0OworCisJcmVjb3JkX3JldXNlZF9vYmplY3Qob2Zmc2V0LCBvZmZzZXQgLSBoYXNoZmlsZV90b3RhbChvdXQpKTsKKworCWN1ciA9IG9mZnNldDsKKwl0eXBlID0gdW5wYWNrX29iamVjdF9oZWFkZXIocmV1c2VfcGFja2ZpbGUsIHdfY3VycywgJmN1ciwgJnNpemUpOworCWFzc2VydCh0eXBlID49IDApOworCisJaWYgKHR5cGUgPT0gT0JKX09GU19ERUxUQSkgeworCQlvZmZfdCBiYXNlX29mZnNldDsKKwkJb2ZmX3QgZml4dXA7CisKKwkJdW5zaWduZWQgY2hhciBoZWFkZXJbTUFYX1BBQ0tfT0JKRUNUX0hFQURFUl07CisJCXVuc2lnbmVkIGxlbjsKKworCQliYXNlX29mZnNldCA9IGdldF9kZWx0YV9iYXNlKHJldXNlX3BhY2tmaWxlLCB3X2N1cnMsICZjdXIsIHR5cGUsIG9mZnNldCk7CisJCWFzc2VydChiYXNlX29mZnNldCAhPSAwKTsKKworCQkvKiBDb252ZXJ0IHRvIFJFRl9ERUxUQSBpZiB3ZSBtdXN0Li4uICovCisJCWlmICghYWxsb3dfb2ZzX2RlbHRhKSB7CisJCQlpbnQgYmFzZV9wb3MgPSBmaW5kX3JldmluZGV4X3Bvc2l0aW9uKHJldXNlX3BhY2tmaWxlLCBiYXNlX29mZnNldCk7CisJCQlzdHJ1Y3Qgb2JqZWN0X2lkIGJhc2Vfb2lkOworCisJCQludGhfcGFja2VkX29iamVjdF9pZCgmYmFzZV9vaWQsIHJldXNlX3BhY2tmaWxlLAorCQkJCQkgICAgIHJldXNlX3BhY2tmaWxlLT5yZXZpbmRleFtiYXNlX3Bvc10ubnIpOworCisJCQlsZW4gPSBlbmNvZGVfaW5fcGFja19vYmplY3RfaGVhZGVyKGhlYWRlciwgc2l6ZW9mKGhlYWRlciksCisJCQkJCQkJICAgT0JKX1JFRl9ERUxUQSwgc2l6ZSk7CisJCQloYXNod3JpdGUob3V0LCBoZWFkZXIsIGxlbik7CisJCQloYXNod3JpdGUob3V0LCBiYXNlX29pZC5oYXNoLCAyMCk7CisJCQljb3B5X3BhY2tfZGF0YShvdXQsIHJldXNlX3BhY2tmaWxlLCB3X2N1cnMsIGN1ciwgbmV4dCAtIGN1cik7CisJCQlyZXR1cm47CisJCX0KKworCQkvKiBPdGhlcndpc2Ugc2VlIGlmIHdlIG5lZWQgdG8gcmV3cml0ZSB0aGUgb2Zmc2V0Li4uICovCisJCWZpeHVwID0gZmluZF9yZXVzZWRfb2Zmc2V0KG9mZnNldCkgLQorCQkJZmluZF9yZXVzZWRfb2Zmc2V0KGJhc2Vfb2Zmc2V0KTsKKwkJaWYgKGZpeHVwKSB7CisJCQl1bnNpZ25lZCBjaGFyIG9mc19oZWFkZXJbMTBdOworCQkJdW5zaWduZWQgaSwgb2ZzX2xlbjsKKwkJCW9mZl90IG9mcyA9IG9mZnNldCAtIGJhc2Vfb2Zmc2V0IC0gZml4dXA7CisKKwkJCWxlbiA9IGVuY29kZV9pbl9wYWNrX29iamVjdF9oZWFkZXIoaGVhZGVyLCBzaXplb2YoaGVhZGVyKSwKKwkJCQkJCQkgICBPQkpfT0ZTX0RFTFRBLCBzaXplKTsKKworCQkJaSA9IHNpemVvZihvZnNfaGVhZGVyKSAtIDE7CisJCQlvZnNfaGVhZGVyW2ldID0gb2ZzICYgMTI3OworCQkJd2hpbGUgKG9mcyA+Pj0gNykKKwkJCQlvZnNfaGVhZGVyWy0taV0gPSAxMjggfCAoLS1vZnMgJiAxMjcpOworCisJCQlvZnNfbGVuID0gc2l6ZW9mKG9mc19oZWFkZXIpIC0gaTsKKworCQkJaGFzaHdyaXRlKG91dCwgaGVhZGVyLCBsZW4pOworCQkJaGFzaHdyaXRlKG91dCwgb2ZzX2hlYWRlciArIHNpemVvZihvZnNfaGVhZGVyKSAtIG9mc19sZW4sIG9mc19sZW4pOworCQkJY29weV9wYWNrX2RhdGEob3V0LCByZXVzZV9wYWNrZmlsZSwgd19jdXJzLCBjdXIsIG5leHQgLSBjdXIpOworCQkJcmV0dXJuOworCQl9CisKKwkJLyogLi4ub3RoZXJ3aXNlIHdlIGhhdmUgbm8gZml4dXAsIGFuZCBjYW4gd3JpdGUgaXQgdmVyYmF0aW0gKi8KKwl9CisKKwljb3B5X3BhY2tfZGF0YShvdXQsIHJldXNlX3BhY2tmaWxlLCB3X2N1cnMsIG9mZnNldCwgbmV4dCAtIG9mZnNldCk7Cit9CisKK3N0YXRpYyBzaXplX3Qgd3JpdGVfcmV1c2VkX3BhY2tfdmVyYmF0aW0oc3RydWN0IGhhc2hmaWxlICpvdXQsCisJCQkJCSBzdHJ1Y3QgcGFja193aW5kb3cgKip3X2N1cnMpCit7CisJc2l6ZV90IHBvcyA9IDA7CisKKwl3aGlsZSAocG9zIDwgcmV1c2VfcGFja2ZpbGVfYml0bWFwLT53b3JkX2FsbG9jICYmCisJCQlyZXVzZV9wYWNrZmlsZV9iaXRtYXAtPndvcmRzW3Bvc10gPT0gKGV3b3JkX3QpfjApCisJCXBvcysrOworCisJaWYgKHBvcykgeworCQlvZmZfdCB0b193cml0ZTsKKworCQl3cml0dGVuID0gKHBvcyAqIEJJVFNfSU5fRVdPUkQpOworCQl0b193cml0ZSA9IHJldXNlX3BhY2tmaWxlLT5yZXZpbmRleFt3cml0dGVuXS5vZmZzZXQKKwkJCS0gc2l6ZW9mKHN0cnVjdCBwYWNrX2hlYWRlcik7CisKKwkJLyogV2UncmUgcmVjb3JkaW5nIG9uZSBjaHVuaywgbm90IG9uZSBvYmplY3QuICovCisJCXJlY29yZF9yZXVzZWRfb2JqZWN0KHNpemVvZihzdHJ1Y3QgcGFja19oZWFkZXIpLCAwKTsKKwkJaGFzaGZsdXNoKG91dCk7CisJCWNvcHlfcGFja19kYXRhKG91dCwgcmV1c2VfcGFja2ZpbGUsIHdfY3VycywKKwkJCXNpemVvZihzdHJ1Y3QgcGFja19oZWFkZXIpLCB0b193cml0ZSk7CisKKwkJZGlzcGxheV9wcm9ncmVzcyhwcm9ncmVzc19zdGF0ZSwgd3JpdHRlbik7CisJfQorCXJldHVybiBwb3M7Cit9CisKK3N0YXRpYyB2b2lkIHdyaXRlX3JldXNlZF9wYWNrKHN0cnVjdCBoYXNoZmlsZSAqZikKK3sKKwlzaXplX3QgaSA9IDA7CisJdWludDMyX3Qgb2Zmc2V0OworCXN0cnVjdCBwYWNrX3dpbmRvdyAqd19jdXJzID0gTlVMTDsKKworCWlmIChhbGxvd19vZnNfZGVsdGEpCisJCWkgPSB3cml0ZV9yZXVzZWRfcGFja192ZXJiYXRpbShmLCAmd19jdXJzKTsKKworCWZvciAoOyBpIDwgcmV1c2VfcGFja2ZpbGVfYml0bWFwLT53b3JkX2FsbG9jOyArK2kpIHsKKwkJZXdvcmRfdCB3b3JkID0gcmV1c2VfcGFja2ZpbGVfYml0bWFwLT53b3Jkc1tpXTsKKwkJc2l6ZV90IHBvcyA9IChpICogQklUU19JTl9FV09SRCk7CisKKwkJZm9yIChvZmZzZXQgPSAwOyBvZmZzZXQgPCBCSVRTX0lOX0VXT1JEOyArK29mZnNldCkgeworCQkJaWYgKCh3b3JkID4+IG9mZnNldCkgPT0gMCkKKwkJCQlicmVhazsKKworCQkJb2Zmc2V0ICs9IGV3YWhfYml0X2N0ejY0KHdvcmQgPj4gb2Zmc2V0KTsKKwkJCXdyaXRlX3JldXNlZF9wYWNrX29uZShwb3MgKyBvZmZzZXQsIGYsICZ3X2N1cnMpOworCQkJZGlzcGxheV9wcm9ncmVzcyhwcm9ncmVzc19zdGF0ZSwgKyt3cml0dGVuKTsKKwkJfQorCX0KKworCXVudXNlX3BhY2soJndfY3Vycyk7CiB9CiAKIHN0YXRpYyBjb25zdCBjaGFyIG5vX3NwbGl0X3dhcm5pbmdbXSA9IE5fKApAQCAtODYxLDExICs5OTgsOSBAQAogCQlvZmZzZXQgPSB3cml0ZV9wYWNrX2hlYWRlcihmLCBucl9yZW1haW5pbmcpOwogCiAJCWlmIChyZXVzZV9wYWNrZmlsZSkgewotCQkJb2ZmX3QgcGFja2ZpbGVfc2l6ZTsKIAkJCWFzc2VydChwYWNrX3RvX3N0ZG91dCk7Ci0KLQkJCXBhY2tmaWxlX3NpemUgPSB3cml0ZV9yZXVzZWRfcGFjayhmKTsKLQkJCW9mZnNldCArPSBwYWNrZmlsZV9zaXplOworCQkJd3JpdGVfcmV1c2VkX3BhY2soZik7CisJCQlvZmZzZXQgPSBoYXNoZmlsZV90b3RhbChmKTsKIAkJfQogCiAJCW5yX3dyaXR0ZW4gPSAwOwpAQCAtODkwLDcgKzEwMjUsOCBAQAogCQkJCQkJIG5yX3dyaXR0ZW4sIG9pZC5oYXNoLCBvZmZzZXQpOwogCQkJY2xvc2UoZmQpOwogCQkJaWYgKHdyaXRlX2JpdG1hcF9pbmRleCkgewotCQkJCXdhcm5pbmcoXyhub19zcGxpdF93YXJuaW5nKSk7CisJCQkJaWYgKHdyaXRlX2JpdG1hcF9pbmRleCAhPSBXUklURV9CSVRNQVBfUVVJRVQpCisJCQkJCXdhcm5pbmcoXyhub19zcGxpdF93YXJuaW5nKSk7CiAJCQkJd3JpdGVfYml0bWFwX2luZGV4ID0gMDsKIAkJCX0KIAkJfQpAQCAtOTYyLDYgKzEwOTgsOCBAQAogCWlmICh3cml0dGVuICE9IG5yX3Jlc3VsdCkKIAkJZGllKF8oIndyb3RlICUiUFJJdTMyIiBvYmplY3RzIHdoaWxlIGV4cGVjdGluZyAlIlBSSXUzMiksCiAJCSAgICB3cml0dGVuLCBucl9yZXN1bHQpOworCXRyYWNlMl9kYXRhX2ludG1heCgicGFjay1vYmplY3RzIiwgdGhlX3JlcG9zaXRvcnksCisJCQkgICAid3JpdGVfcGFja19maWxlL3dyb3RlIiwgbnJfcmVzdWx0KTsKIH0KIAogc3RhdGljIGludCBub190cnlfZGVsdGEoY29uc3QgY2hhciAqcGF0aCkKQEAgLTk3MCw3ICsxMTA4LDcgQEAKIAogCWlmICghY2hlY2spCiAJCWNoZWNrID0gYXR0cl9jaGVja19pbml0bCgiZGVsdGEiLCBOVUxMKTsKLQlnaXRfY2hlY2tfYXR0cigmdGhlX2luZGV4LCBwYXRoLCBjaGVjayk7CisJZ2l0X2NoZWNrX2F0dHIodGhlX3JlcG9zaXRvcnktPmluZGV4LCBwYXRoLCBjaGVjayk7CiAJaWYgKEFUVFJfRkFMU0UoY2hlY2stPml0ZW1zWzBdLnZhbHVlKSkKIAkJcmV0dXJuIDE7CiAJcmV0dXJuIDA7CkBAIC05ODcsMTIgKzExMjUsMTUgQEAKICAqIGZldyBsaW5lcyBsYXRlciB3aGVuIHdlIHdhbnQgdG8gYWRkIHRoZSBuZXcgZW50cnkuCiAgKi8KIHN0YXRpYyBpbnQgaGF2ZV9kdXBsaWNhdGVfZW50cnkoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAotCQkJCWludCBleGNsdWRlLAotCQkJCXVpbnQzMl90ICppbmRleF9wb3MpCisJCQkJaW50IGV4Y2x1ZGUpCiB7CiAJc3RydWN0IG9iamVjdF9lbnRyeSAqZW50cnk7CiAKLQllbnRyeSA9IHBhY2tsaXN0X2ZpbmQoJnRvX3BhY2ssIG9pZC0+aGFzaCwgaW5kZXhfcG9zKTsKKwlpZiAocmV1c2VfcGFja2ZpbGVfYml0bWFwICYmCisJICAgIGJpdG1hcF93YWxrX2NvbnRhaW5zKGJpdG1hcF9naXQsIHJldXNlX3BhY2tmaWxlX2JpdG1hcCwgb2lkKSkKKwkJcmV0dXJuIDE7CisKKwllbnRyeSA9IHBhY2tsaXN0X2ZpbmQoJnRvX3BhY2ssIG9pZCk7CiAJaWYgKCFlbnRyeSkKIAkJcmV0dXJuIDA7CiAKQEAgLTEwNzYsNyArMTIxNyw3IEBACiAKIAlmb3IgKG0gPSBnZXRfbXVsdGlfcGFja19pbmRleCh0aGVfcmVwb3NpdG9yeSk7IG07IG0gPSBtLT5uZXh0KSB7CiAJCXN0cnVjdCBwYWNrX2VudHJ5IGU7Ci0JCWlmIChmaWxsX21pZHhfZW50cnkob2lkLCAmZSwgbSkpIHsKKwkJaWYgKGZpbGxfbWlkeF9lbnRyeSh0aGVfcmVwb3NpdG9yeSwgb2lkLCAmZSwgbSkpIHsKIAkJCXN0cnVjdCBwYWNrZWRfZ2l0ICpwID0gZS5wOwogCQkJb2ZmX3Qgb2Zmc2V0OwogCkBAIC0xMTMyLDEzICsxMjczLDEyIEBACiAJCQkJdWludDMyX3QgaGFzaCwKIAkJCQlpbnQgZXhjbHVkZSwKIAkJCQlpbnQgbm9fdHJ5X2RlbHRhLAotCQkJCXVpbnQzMl90IGluZGV4X3BvcywKIAkJCQlzdHJ1Y3QgcGFja2VkX2dpdCAqZm91bmRfcGFjaywKIAkJCQlvZmZfdCBmb3VuZF9vZmZzZXQpCiB7CiAJc3RydWN0IG9iamVjdF9lbnRyeSAqZW50cnk7CiAKLQllbnRyeSA9IHBhY2tsaXN0X2FsbG9jKCZ0b19wYWNrLCBvaWQtPmhhc2gsIGluZGV4X3Bvcyk7CisJZW50cnkgPSBwYWNrbGlzdF9hbGxvYygmdG9fcGFjaywgb2lkKTsKIAllbnRyeS0+aGFzaCA9IGhhc2g7CiAJb2Vfc2V0X3R5cGUoZW50cnksIHR5cGUpOwogCWlmIChleGNsdWRlKQpAQCAtMTE2MiwxNyArMTMwMiwxNyBAQAogewogCXN0cnVjdCBwYWNrZWRfZ2l0ICpmb3VuZF9wYWNrID0gTlVMTDsKIAlvZmZfdCBmb3VuZF9vZmZzZXQgPSAwOwotCXVpbnQzMl90IGluZGV4X3BvczsKIAogCWRpc3BsYXlfcHJvZ3Jlc3MocHJvZ3Jlc3Nfc3RhdGUsICsrbnJfc2Vlbik7CiAKLQlpZiAoaGF2ZV9kdXBsaWNhdGVfZW50cnkob2lkLCBleGNsdWRlLCAmaW5kZXhfcG9zKSkKKwlpZiAoaGF2ZV9kdXBsaWNhdGVfZW50cnkob2lkLCBleGNsdWRlKSkKIAkJcmV0dXJuIDA7CiAKIAlpZiAoIXdhbnRfb2JqZWN0X2luX3BhY2sob2lkLCBleGNsdWRlLCAmZm91bmRfcGFjaywgJmZvdW5kX29mZnNldCkpIHsKIAkJLyogVGhlIHBhY2sgaXMgbWlzc2luZyBhbiBvYmplY3QsIHNvIGl0IHdpbGwgbm90IGhhdmUgY2xvc3VyZSAqLwogCQlpZiAod3JpdGVfYml0bWFwX2luZGV4KSB7Ci0JCQl3YXJuaW5nKF8obm9fY2xvc3VyZV93YXJuaW5nKSk7CisJCQlpZiAod3JpdGVfYml0bWFwX2luZGV4ICE9IFdSSVRFX0JJVE1BUF9RVUlFVCkKKwkJCQl3YXJuaW5nKF8obm9fY2xvc3VyZV93YXJuaW5nKSk7CiAJCQl3cml0ZV9iaXRtYXBfaW5kZXggPSAwOwogCQl9CiAJCXJldHVybiAwOwpAQCAtMTE4MCw3ICsxMzIwLDcgQEAKIAogCWNyZWF0ZV9vYmplY3RfZW50cnkob2lkLCB0eXBlLCBwYWNrX25hbWVfaGFzaChuYW1lKSwKIAkJCSAgICBleGNsdWRlLCBuYW1lICYmIG5vX3RyeV9kZWx0YShuYW1lKSwKLQkJCSAgICBpbmRleF9wb3MsIGZvdW5kX3BhY2ssIGZvdW5kX29mZnNldCk7CisJCQkgICAgZm91bmRfcGFjaywgZm91bmRfb2Zmc2V0KTsKIAlyZXR1cm4gMTsKIH0KIApAQCAtMTE4OSwxNyArMTMyOSwxNSBAQAogCQkJCQlpbnQgZmxhZ3MsIHVpbnQzMl90IG5hbWVfaGFzaCwKIAkJCQkJc3RydWN0IHBhY2tlZF9naXQgKnBhY2ssIG9mZl90IG9mZnNldCkKIHsKLQl1aW50MzJfdCBpbmRleF9wb3M7Ci0KIAlkaXNwbGF5X3Byb2dyZXNzKHByb2dyZXNzX3N0YXRlLCArK25yX3NlZW4pOwogCi0JaWYgKGhhdmVfZHVwbGljYXRlX2VudHJ5KG9pZCwgMCwgJmluZGV4X3BvcykpCisJaWYgKGhhdmVfZHVwbGljYXRlX2VudHJ5KG9pZCwgMCkpCiAJCXJldHVybiAwOwogCiAJaWYgKCF3YW50X29iamVjdF9pbl9wYWNrKG9pZCwgMCwgJnBhY2ssICZvZmZzZXQpKQogCQlyZXR1cm4gMDsKIAotCWNyZWF0ZV9vYmplY3RfZW50cnkob2lkLCB0eXBlLCBuYW1lX2hhc2gsIDAsIDAsIGluZGV4X3BvcywgcGFjaywgb2Zmc2V0KTsKKwljcmVhdGVfb2JqZWN0X2VudHJ5KG9pZCwgdHlwZSwgbmFtZV9oYXNoLCAwLCAwLCBwYWNrLCBvZmZzZXQpOwogCXJldHVybiAxOwogfQogCkBAIC0xMzM0LDcgKzE0NzIsNyBAQAogCQlpZiAoY21wIDwgMCkKIAkJCXJldHVybjsKIAkJaWYgKG5hbWVbY21wbGVuXSAhPSAnLycpIHsKLQkJCWFkZF9vYmplY3RfZW50cnkoZW50cnkub2lkLAorCQkJYWRkX29iamVjdF9lbnRyeSgmZW50cnkub2lkLAogCQkJCQkgb2JqZWN0X3R5cGUoZW50cnkubW9kZSksCiAJCQkJCSBmdWxsbmFtZSwgMSk7CiAJCQlyZXR1cm47CkBAIC0xMzQ1LDcgKzE0ODMsNyBAQAogCQkJY29uc3QgY2hhciAqZG93biA9IG5hbWUrY21wbGVuKzE7CiAJCQlpbnQgZG93bmxlbiA9IG5hbWVfY21wX2xlbihkb3duKTsKIAotCQkJdHJlZSA9IHBiYXNlX3RyZWVfZ2V0KGVudHJ5Lm9pZCk7CisJCQl0cmVlID0gcGJhc2VfdHJlZV9nZXQoJmVudHJ5Lm9pZCk7CiAJCQlpZiAoIXRyZWUpCiAJCQkJcmV0dXJuOwogCQkJaW5pdF90cmVlX2Rlc2MoJnN1YiwgdHJlZS0+dHJlZV9kYXRhLCB0cmVlLT50cmVlX3NpemUpOwpAQCAtMTQyNCw3ICsxNTYyLDggQEAKIAlpZiAod2luZG93IDw9IG51bV9wcmVmZXJyZWRfYmFzZSsrKQogCQlyZXR1cm47CiAKLQlkYXRhID0gcmVhZF9vYmplY3Rfd2l0aF9yZWZlcmVuY2Uob2lkLCB0cmVlX3R5cGUsICZzaXplLCAmdHJlZV9vaWQpOworCWRhdGEgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZSh0aGVfcmVwb3NpdG9yeSwgb2lkLAorCQkJCQkgIHRyZWVfdHlwZSwgJnNpemUsICZ0cmVlX29pZCk7CiAJaWYgKCFkYXRhKQogCQlyZXR1cm47CiAKQEAgLTE0ODAsMjAgKzE2MTksMTcgQEAKICAqIGRlbHRpZnkgb3RoZXIgb2JqZWN0cyBhZ2FpbnN0LCBpbiBvcmRlciB0byBhdm9pZAogICogY2lyY3VsYXIgZGVsdGFzLgogICovCi1zdGF0aWMgaW50IGNhbl9yZXVzZV9kZWx0YShjb25zdCB1bnNpZ25lZCBjaGFyICpiYXNlX3NoYTEsCitzdGF0aWMgaW50IGNhbl9yZXVzZV9kZWx0YShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpiYXNlX29pZCwKIAkJCSAgIHN0cnVjdCBvYmplY3RfZW50cnkgKmRlbHRhLAogCQkJICAgc3RydWN0IG9iamVjdF9lbnRyeSAqKmJhc2Vfb3V0KQogewogCXN0cnVjdCBvYmplY3RfZW50cnkgKmJhc2U7CiAKLQlpZiAoIWJhc2Vfc2hhMSkKLQkJcmV0dXJuIDA7Ci0KIAkvKgogCSAqIEZpcnN0IHNlZSBpZiB3ZSdyZSBhbHJlYWR5IHNlbmRpbmcgdGhlIGJhc2UgKG9yIGl0J3MgZXhwbGljaXRseSBpbgogCSAqIG91ciAiZXhjbHVkZWQiIGxpc3QpLgogCSAqLwotCWJhc2UgPSBwYWNrbGlzdF9maW5kKCZ0b19wYWNrLCBiYXNlX3NoYTEsIE5VTEwpOworCWJhc2UgPSBwYWNrbGlzdF9maW5kKCZ0b19wYWNrLCBiYXNlX29pZCk7CiAJaWYgKGJhc2UpIHsKIAkJaWYgKCFpbl9zYW1lX2lzbGFuZCgmZGVsdGEtPmlkeC5vaWQsICZiYXNlLT5pZHgub2lkKSkKIAkJCXJldHVybiAwOwpAQCAtMTUwNiwxMSArMTY0Miw5IEBACiAJICogZXZlbiBpZiBpdCB3YXMgYnVyaWVkIHRvbyBkZWVwIGluIGhpc3RvcnkgdG8gbWFrZSBpdCBpbnRvIHRoZQogCSAqIHBhY2tpbmcgbGlzdC4KIAkgKi8KLQlpZiAodGhpbiAmJiBiaXRtYXBfaGFzX3NoYTFfaW5fdW5pbnRlcmVzdGluZyhiaXRtYXBfZ2l0LCBiYXNlX3NoYTEpKSB7CisJaWYgKHRoaW4gJiYgYml0bWFwX2hhc19vaWRfaW5fdW5pbnRlcmVzdGluZyhiaXRtYXBfZ2l0LCBiYXNlX29pZCkpIHsKIAkJaWYgKHVzZV9kZWx0YV9pc2xhbmRzKSB7Ci0JCQlzdHJ1Y3Qgb2JqZWN0X2lkIGJhc2Vfb2lkOwotCQkJaGFzaGNweShiYXNlX29pZC5oYXNoLCBiYXNlX3NoYTEpOwotCQkJaWYgKCFpbl9zYW1lX2lzbGFuZCgmZGVsdGEtPmlkeC5vaWQsICZiYXNlX29pZCkpCisJCQlpZiAoIWluX3NhbWVfaXNsYW5kKCZkZWx0YS0+aWR4Lm9pZCwgYmFzZV9vaWQpKQogCQkJCXJldHVybiAwOwogCQl9CiAJCSpiYXNlX291dCA9IE5VTEw7CkBAIC0xNTI3LDcgKzE2NjEsOCBAQAogCWlmIChJTl9QQUNLKGVudHJ5KSkgewogCQlzdHJ1Y3QgcGFja2VkX2dpdCAqcCA9IElOX1BBQ0soZW50cnkpOwogCQlzdHJ1Y3QgcGFja193aW5kb3cgKndfY3VycyA9IE5VTEw7Ci0JCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmJhc2VfcmVmID0gTlVMTDsKKwkJaW50IGhhdmVfYmFzZSA9IDA7CisJCXN0cnVjdCBvYmplY3RfaWQgYmFzZV9yZWY7CiAJCXN0cnVjdCBvYmplY3RfZW50cnkgKmJhc2VfZW50cnk7CiAJCXVuc2lnbmVkIGxvbmcgdXNlZCwgdXNlZF8wOwogCQl1bnNpZ25lZCBsb25nIGF2YWlsOwpAQCAtMTU2OCw5ICsxNzAzLDEzIEBACiAJCQl1bnVzZV9wYWNrKCZ3X2N1cnMpOwogCQkJcmV0dXJuOwogCQljYXNlIE9CSl9SRUZfREVMVEE6Ci0JCQlpZiAocmV1c2VfZGVsdGEgJiYgIWVudHJ5LT5wcmVmZXJyZWRfYmFzZSkKLQkJCQliYXNlX3JlZiA9IHVzZV9wYWNrKHAsICZ3X2N1cnMsCi0JCQkJCQllbnRyeS0+aW5fcGFja19vZmZzZXQgKyB1c2VkLCBOVUxMKTsKKwkJCWlmIChyZXVzZV9kZWx0YSAmJiAhZW50cnktPnByZWZlcnJlZF9iYXNlKSB7CisJCQkJb2lkcmVhZCgmYmFzZV9yZWYsCisJCQkJCXVzZV9wYWNrKHAsICZ3X2N1cnMsCisJCQkJCQkgZW50cnktPmluX3BhY2tfb2Zmc2V0ICsgdXNlZCwKKwkJCQkJCSBOVUxMKSk7CisJCQkJaGF2ZV9iYXNlID0gMTsKKwkJCX0KIAkJCWVudHJ5LT5pbl9wYWNrX2hlYWRlcl9zaXplID0gdXNlZCArIHRoZV9oYXNoX2FsZ28tPnJhd3N6OwogCQkJYnJlYWs7CiAJCWNhc2UgT0JKX09GU19ERUxUQToKQEAgLTE2MDAsMTMgKzE3MzksMTUgQEAKIAkJCQlyZXZpZHggPSBmaW5kX3BhY2tfcmV2aW5kZXgocCwgb2ZzKTsKIAkJCQlpZiAoIXJldmlkeCkKIAkJCQkJZ290byBnaXZlX3VwOwotCQkJCWJhc2VfcmVmID0gbnRoX3BhY2tlZF9vYmplY3Rfc2hhMShwLCByZXZpZHgtPm5yKTsKKwkJCQlpZiAoIW50aF9wYWNrZWRfb2JqZWN0X2lkKCZiYXNlX3JlZiwgcCwgcmV2aWR4LT5ucikpCisJCQkJCWhhdmVfYmFzZSA9IDE7CiAJCQl9CiAJCQllbnRyeS0+aW5fcGFja19oZWFkZXJfc2l6ZSA9IHVzZWQgKyB1c2VkXzA7CiAJCQlicmVhazsKIAkJfQogCi0JCWlmIChjYW5fcmV1c2VfZGVsdGEoYmFzZV9yZWYsIGVudHJ5LCAmYmFzZV9lbnRyeSkpIHsKKwkJaWYgKGhhdmVfYmFzZSAmJgorCQkgICAgY2FuX3JldXNlX2RlbHRhKCZiYXNlX3JlZiwgZW50cnksICZiYXNlX2VudHJ5KSkgewogCQkJb2Vfc2V0X3R5cGUoZW50cnksIGVudHJ5LT5pbl9wYWNrX3R5cGUpOwogCQkJU0VUX1NJWkUoZW50cnksIGluX3BhY2tfc2l6ZSk7IC8qIGRlbHRhIHNpemUgKi8KIAkJCVNFVF9ERUxUQV9TSVpFKGVudHJ5LCBpbl9wYWNrX3NpemUpOwpAQCAtMTYxNiw3ICsxNzU3LDcgQEAKIAkJCQllbnRyeS0+ZGVsdGFfc2libGluZ19pZHggPSBiYXNlX2VudHJ5LT5kZWx0YV9jaGlsZF9pZHg7CiAJCQkJU0VUX0RFTFRBX0NISUxEKGJhc2VfZW50cnksIGVudHJ5KTsKIAkJCX0gZWxzZSB7Ci0JCQkJU0VUX0RFTFRBX0VYVChlbnRyeSwgYmFzZV9yZWYpOworCQkJCVNFVF9ERUxUQV9FWFQoZW50cnksICZiYXNlX3JlZik7CiAJCQl9CiAKIAkJCXVudXNlX3BhY2soJndfY3Vycyk7CkBAIC0xNjQyLDcgKzE3ODMsNyBAQAogCiAJCS8qCiAJCSAqIE5vIGNob2ljZSBidXQgdG8gZmFsbCBiYWNrIHRvIHRoZSByZWN1cnNpdmUgZGVsdGEgd2FsawotCQkgKiB3aXRoIHNoYTFfb2JqZWN0X2luZm8oKSB0byBmaW5kIGFib3V0IHRoZSBvYmplY3QgdHlwZQorCQkgKiB3aXRoIG9pZF9vYmplY3RfaW5mbygpIHRvIGZpbmQgYWJvdXQgdGhlIG9iamVjdCB0eXBlCiAJCSAqIGF0IHRoaXMgcG9pbnQuLi4KIAkJICovCiAJCWdpdmVfdXA6CkBAIC0xNzE4LDcgKzE4NTksNyBAQAogCWlmIChwYWNrZWRfb2JqZWN0X2luZm8odGhlX3JlcG9zaXRvcnksIElOX1BBQ0soZW50cnkpLCBlbnRyeS0+aW5fcGFja19vZmZzZXQsICZvaSkgPCAwKSB7CiAJCS8qCiAJCSAqIFdlIGZhaWxlZCB0byBnZXQgdGhlIGluZm8gZnJvbSB0aGlzIHBhY2sgZm9yIHNvbWUgcmVhc29uOwotCQkgKiBmYWxsIGJhY2sgdG8gc2hhMV9vYmplY3RfaW5mbywgd2hpY2ggbWF5IGZpbmQgYW5vdGhlciBjb3B5LgorCQkgKiBmYWxsIGJhY2sgdG8gb2lkX29iamVjdF9pbmZvLCB3aGljaCBtYXkgZmluZCBhbm90aGVyIGNvcHkuCiAJCSAqIEFuZCBpZiB0aGF0IGZhaWxzLCB0aGUgZXJyb3Igd2lsbCBiZSByZWNvcmRlZCBpbiBvZV90eXBlKGVudHJ5KQogCQkgKiBhbmQgZGVhbHQgd2l0aCBpbiBwcmVwYXJlX3BhY2soKS4KIAkJICovCkBAIC0xOTAxLDEwICsyMDQyLDEwIEBACiB7CiAJY29uc3Qgc3RydWN0IG9iamVjdF9lbnRyeSAqYSA9ICooc3RydWN0IG9iamVjdF9lbnRyeSAqKilfYTsKIAljb25zdCBzdHJ1Y3Qgb2JqZWN0X2VudHJ5ICpiID0gKihzdHJ1Y3Qgb2JqZWN0X2VudHJ5ICoqKV9iOwotCWVudW0gb2JqZWN0X3R5cGUgYV90eXBlID0gb2VfdHlwZShhKTsKLQllbnVtIG9iamVjdF90eXBlIGJfdHlwZSA9IG9lX3R5cGUoYik7Ci0JdW5zaWduZWQgbG9uZyBhX3NpemUgPSBTSVpFKGEpOwotCXVuc2lnbmVkIGxvbmcgYl9zaXplID0gU0laRShiKTsKKwljb25zdCBlbnVtIG9iamVjdF90eXBlIGFfdHlwZSA9IG9lX3R5cGUoYSk7CisJY29uc3QgZW51bSBvYmplY3RfdHlwZSBiX3R5cGUgPSBvZV90eXBlKGIpOworCWNvbnN0IHVuc2lnbmVkIGxvbmcgYV9zaXplID0gU0laRShhKTsKKwljb25zdCB1bnNpZ25lZCBsb25nIGJfc2l6ZSA9IFNJWkUoYik7CiAKIAlpZiAoYV90eXBlID4gYl90eXBlKQogCQlyZXR1cm4gLTE7CkBAIC0xOTE5LDcgKzIwNjAsNyBAQAogCWlmIChhLT5wcmVmZXJyZWRfYmFzZSA8IGItPnByZWZlcnJlZF9iYXNlKQogCQlyZXR1cm4gMTsKIAlpZiAodXNlX2RlbHRhX2lzbGFuZHMpIHsKLQkJaW50IGlzbGFuZF9jbXAgPSBpc2xhbmRfZGVsdGFfY21wKCZhLT5pZHgub2lkLCAmYi0+aWR4Lm9pZCk7CisJCWNvbnN0IGludCBpc2xhbmRfY21wID0gaXNsYW5kX2RlbHRhX2NtcCgmYS0+aWR4Lm9pZCwgJmItPmlkeC5vaWQpOwogCQlpZiAoaXNsYW5kX2NtcCkKIAkJCXJldHVybiBpc2xhbmRfY21wOwogCX0KQEAgLTE5NTMsMTEgKzIwOTQsNiBAQAogCXJldHVybiAwOwogfQogCi0vKiBQcm90ZWN0IGFjY2VzcyB0byBvYmplY3QgZGF0YWJhc2UgKi8KLXN0YXRpYyBwdGhyZWFkX211dGV4X3QgcmVhZF9tdXRleDsKLSNkZWZpbmUgcmVhZF9sb2NrKCkJCXB0aHJlYWRfbXV0ZXhfbG9jaygmcmVhZF9tdXRleCkKLSNkZWZpbmUgcmVhZF91bmxvY2soKQkJcHRocmVhZF9tdXRleF91bmxvY2soJnJlYWRfbXV0ZXgpCi0KIC8qIFByb3RlY3QgZGVsdGFfY2FjaGVfc2l6ZSAqLwogc3RhdGljIHB0aHJlYWRfbXV0ZXhfdCBjYWNoZV9tdXRleDsKICNkZWZpbmUgY2FjaGVfbG9jaygpCQlwdGhyZWFkX211dGV4X2xvY2soJmNhY2hlX211dGV4KQpAQCAtMTk5MywxMSArMjEyOSwxMSBAQAogCXVuc2lnbmVkIGxvbmcgdXNlZCwgYXZhaWwsIHNpemU7CiAKIAlpZiAoZS0+dHlwZV8gIT0gT0JKX09GU19ERUxUQSAmJiBlLT50eXBlXyAhPSBPQkpfUkVGX0RFTFRBKSB7Ci0JCXJlYWRfbG9jaygpOworCQlwYWNraW5nX2RhdGFfbG9jaygmdG9fcGFjayk7CiAJCWlmIChvaWRfb2JqZWN0X2luZm8odGhlX3JlcG9zaXRvcnksICZlLT5pZHgub2lkLCAmc2l6ZSkgPCAwKQogCQkJZGllKF8oInVuYWJsZSB0byBnZXQgc2l6ZSBvZiAlcyIpLAogCQkJICAgIG9pZF90b19oZXgoJmUtPmlkeC5vaWQpKTsKLQkJcmVhZF91bmxvY2soKTsKKwkJcGFja2luZ19kYXRhX3VubG9jaygmdG9fcGFjayk7CiAJCXJldHVybiBzaXplOwogCX0KIApAQCAtMjAwNSw3ICsyMTQxLDcgQEAKIAlpZiAoIXApCiAJCUJVRygid2hlbiBlLT50eXBlIGlzIGEgZGVsdGEsIGl0IG11c3QgYmVsb25nIHRvIGEgcGFjayIpOwogCi0JcmVhZF9sb2NrKCk7CisJcGFja2luZ19kYXRhX2xvY2soJnRvX3BhY2spOwogCXdfY3VycyA9IE5VTEw7CiAJYnVmID0gdXNlX3BhY2socCwgJndfY3VycywgZS0+aW5fcGFja19vZmZzZXQsICZhdmFpbCk7CiAJdXNlZCA9IHVucGFja19vYmplY3RfaGVhZGVyX2J1ZmZlcihidWYsIGF2YWlsLCAmdHlwZSwgJnNpemUpOwpAQCAtMjAxNCw3ICsyMTUwLDcgQEAKIAkJICAgIG9pZF90b19oZXgoJmUtPmlkeC5vaWQpKTsKIAogCXVudXNlX3BhY2soJndfY3Vycyk7Ci0JcmVhZF91bmxvY2soKTsKKwlwYWNraW5nX2RhdGFfdW5sb2NrKCZ0b19wYWNrKTsKIAlyZXR1cm4gc2l6ZTsKIH0KIApAQCAtMjA3Niw5ICsyMjEyLDkgQEAKIAogCS8qIExvYWQgZGF0YSBpZiBub3QgYWxyZWFkeSBkb25lICovCiAJaWYgKCF0cmctPmRhdGEpIHsKLQkJcmVhZF9sb2NrKCk7CisJCXBhY2tpbmdfZGF0YV9sb2NrKCZ0b19wYWNrKTsKIAkJdHJnLT5kYXRhID0gcmVhZF9vYmplY3RfZmlsZSgmdHJnX2VudHJ5LT5pZHgub2lkLCAmdHlwZSwgJnN6KTsKLQkJcmVhZF91bmxvY2soKTsKKwkJcGFja2luZ19kYXRhX3VubG9jaygmdG9fcGFjayk7CiAJCWlmICghdHJnLT5kYXRhKQogCQkJZGllKF8oIm9iamVjdCAlcyBjYW5ub3QgYmUgcmVhZCIpLAogCQkJICAgIG9pZF90b19oZXgoJnRyZ19lbnRyeS0+aWR4Lm9pZCkpOwpAQCAtMjA4OSw5ICsyMjI1LDkgQEAKIAkJKm1lbV91c2FnZSArPSBzejsKIAl9CiAJaWYgKCFzcmMtPmRhdGEpIHsKLQkJcmVhZF9sb2NrKCk7CisJCXBhY2tpbmdfZGF0YV9sb2NrKCZ0b19wYWNrKTsKIAkJc3JjLT5kYXRhID0gcmVhZF9vYmplY3RfZmlsZSgmc3JjX2VudHJ5LT5pZHgub2lkLCAmdHlwZSwgJnN6KTsKLQkJcmVhZF91bmxvY2soKTsKKwkJcGFja2luZ19kYXRhX3VubG9jaygmdG9fcGFjayk7CiAJCWlmICghc3JjLT5kYXRhKSB7CiAJCQlpZiAoc3JjX2VudHJ5LT5wcmVmZXJyZWRfYmFzZSkgewogCQkJCXN0YXRpYyBpbnQgd2FybmVkID0gMDsKQEAgLTIxNzEsNyArMjMwNyw3IEBACiAJc3RydWN0IG9iamVjdF9lbnRyeSAqY2hpbGQgPSBERUxUQV9DSElMRChtZSk7CiAJdW5zaWduZWQgaW50IG0gPSBuOwogCXdoaWxlIChjaGlsZCkgewotCQl1bnNpZ25lZCBpbnQgYyA9IGNoZWNrX2RlbHRhX2xpbWl0KGNoaWxkLCBuICsgMSk7CisJCWNvbnN0IHVuc2lnbmVkIGludCBjID0gY2hlY2tfZGVsdGFfbGltaXQoY2hpbGQsIG4gKyAxKTsKIAkJaWYgKG0gPCBjKQogCQkJbSA9IGM7CiAJCWNoaWxkID0gREVMVEFfU0lCTElORyhjaGlsZCk7CkBAIC0yMjI2LDcgKzIzNjIsNyBAQAogCQl3aGlsZSAod2luZG93X21lbW9yeV9saW1pdCAmJgogCQkgICAgICAgbWVtX3VzYWdlID4gd2luZG93X21lbW9yeV9saW1pdCAmJgogCQkgICAgICAgY291bnQgPiAxKSB7Ci0JCQl1aW50MzJfdCB0YWlsID0gKGlkeCArIHdpbmRvdyAtIGNvdW50KSAlIHdpbmRvdzsKKwkJCWNvbnN0IHVpbnQzMl90IHRhaWwgPSAoaWR4ICsgd2luZG93IC0gY291bnQpICUgd2luZG93OwogCQkJbWVtX3VzYWdlIC09IGZyZWVfdW5wYWNrZWQoYXJyYXkgKyB0YWlsKTsKIAkJCWNvdW50LS07CiAJCX0KQEAgLTIzMzUsMTUgKzI0NzEsNiBAQAogCWZyZWUoYXJyYXkpOwogfQogCi1zdGF0aWMgdm9pZCB0cnlfdG9fZnJlZV9mcm9tX3RocmVhZHMoc2l6ZV90IHNpemUpCi17Ci0JcmVhZF9sb2NrKCk7Ci0JcmVsZWFzZV9wYWNrX21lbW9yeShzaXplKTsKLQlyZWFkX3VubG9jaygpOwotfQotCi1zdGF0aWMgdHJ5X3RvX2ZyZWVfdCBvbGRfdHJ5X3RvX2ZyZWVfcm91dGluZTsKLQogLyoKICAqIFRoZSBtYWluIG9iamVjdCBsaXN0IGlzIHNwbGl0IGludG8gc21hbGxlciBsaXN0cywgZWFjaCBpcyBoYW5kZWQgdG8KICAqIG9uZSB3b3JrZXIuCkBAIC0yMzgxLDE4ICsyNTA4LDE0IEBACiAgKi8KIHN0YXRpYyB2b2lkIGluaXRfdGhyZWFkZWRfc2VhcmNoKHZvaWQpCiB7Ci0JaW5pdF9yZWN1cnNpdmVfbXV0ZXgoJnJlYWRfbXV0ZXgpOwogCXB0aHJlYWRfbXV0ZXhfaW5pdCgmY2FjaGVfbXV0ZXgsIE5VTEwpOwogCXB0aHJlYWRfbXV0ZXhfaW5pdCgmcHJvZ3Jlc3NfbXV0ZXgsIE5VTEwpOwogCXB0aHJlYWRfY29uZF9pbml0KCZwcm9ncmVzc19jb25kLCBOVUxMKTsKLQlvbGRfdHJ5X3RvX2ZyZWVfcm91dGluZSA9IHNldF90cnlfdG9fZnJlZV9yb3V0aW5lKHRyeV90b19mcmVlX2Zyb21fdGhyZWFkcyk7CiB9CiAKIHN0YXRpYyB2b2lkIGNsZWFudXBfdGhyZWFkZWRfc2VhcmNoKHZvaWQpCiB7Ci0Jc2V0X3RyeV90b19mcmVlX3JvdXRpbmUob2xkX3RyeV90b19mcmVlX3JvdXRpbmUpOwogCXB0aHJlYWRfY29uZF9kZXN0cm95KCZwcm9ncmVzc19jb25kKTsKLQlwdGhyZWFkX211dGV4X2Rlc3Ryb3koJnJlYWRfbXV0ZXgpOwogCXB0aHJlYWRfbXV0ZXhfZGVzdHJveSgmY2FjaGVfbXV0ZXgpOwogCXB0aHJlYWRfbXV0ZXhfZGVzdHJveSgmcHJvZ3Jlc3NfbXV0ZXgpOwogfQpAQCAtMjU2Myw2ICsyNjg2LDEzIEBACiAJZnJlZShwKTsKIH0KIAorc3RhdGljIGludCBvYmpfaXNfcGFja2VkKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKK3sKKwlyZXR1cm4gcGFja2xpc3RfZmluZCgmdG9fcGFjaywgb2lkKSB8fAorCQkocmV1c2VfcGFja2ZpbGVfYml0bWFwICYmCisJCSBiaXRtYXBfd2Fsa19jb250YWlucyhiaXRtYXBfZ2l0LCByZXVzZV9wYWNrZmlsZV9iaXRtYXAsIG9pZCkpOworfQorCiBzdGF0aWMgdm9pZCBhZGRfdGFnX2NoYWluKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAlzdHJ1Y3QgdGFnICp0YWc7CkBAIC0yNTc0LDcgKzI3MDQsNyBAQAogCSAqIGl0IHdhcyBpbmNsdWRlZCB2aWEgYml0bWFwcywgd2Ugd291bGQgbm90IGhhdmUgcGFyc2VkIGl0CiAJICogcHJldmlvdXNseSkuCiAJICovCi0JaWYgKHBhY2tsaXN0X2ZpbmQoJnRvX3BhY2ssIG9pZC0+aGFzaCwgTlVMTCkpCisJaWYgKG9ial9pc19wYWNrZWQob2lkKSkKIAkJcmV0dXJuOwogCiAJdGFnID0gbG9va3VwX3RhZyh0aGVfcmVwb3NpdG9yeSwgb2lkKTsKQEAgLTI1OTgsNyArMjcyOCw3IEBACiAKIAlpZiAoc3RhcnRzX3dpdGgocGF0aCwgInJlZnMvdGFncy8iKSAmJiAvKiBpcyBhIHRhZz8gKi8KIAkgICAgIXBlZWxfcmVmKHBhdGgsICZwZWVsZWQpICAgICYmIC8qIHBlZWxhYmxlPyAqLwotCSAgICBwYWNrbGlzdF9maW5kKCZ0b19wYWNrLCBwZWVsZWQuaGFzaCwgTlVMTCkpICAgICAgLyogb2JqZWN0IHBhY2tlZD8gKi8KKwkgICAgb2JqX2lzX3BhY2tlZCgmcGVlbGVkKSkgLyogb2JqZWN0IHBhY2tlZD8gKi8KIAkJYWRkX3RhZ19jaGFpbihvaWQpOwogCXJldHVybiAwOwogfQpAQCAtMjYxMCw3ICsyNzQwLDcgQEAKIAl1bnNpZ25lZCBuOwogCiAJaWYgKHVzZV9kZWx0YV9pc2xhbmRzKQotCQlyZXNvbHZlX3RyZWVfaXNsYW5kcyhwcm9ncmVzcywgJnRvX3BhY2spOworCQlyZXNvbHZlX3RyZWVfaXNsYW5kcyh0aGVfcmVwb3NpdG9yeSwgcHJvZ3Jlc3MsICZ0b19wYWNrKTsKIAogCWdldF9vYmplY3RfZGV0YWlscygpOwogCkBAIC0yNjY2LDYgKzI3OTYsNyBAQAogCiAJaWYgKG5yX2RlbHRhcyAmJiBuID4gMSkgewogCQl1bnNpZ25lZCBucl9kb25lID0gMDsKKwogCQlpZiAocHJvZ3Jlc3MpCiAJCQlwcm9ncmVzc19zdGF0ZSA9IHN0YXJ0X3Byb2dyZXNzKF8oIkNvbXByZXNzaW5nIG9iamVjdHMiKSwKIAkJCQkJCQlucl9kZWx0YXMpOwpAQCAtMjcxMCw2ICsyODQxLDEwIEBACiAJCXVzZV9iaXRtYXBfaW5kZXhfZGVmYXVsdCA9IGdpdF9jb25maWdfYm9vbChrLCB2KTsKIAkJcmV0dXJuIDA7CiAJfQorCWlmICghc3RyY21wKGssICJwYWNrLmFsbG93cGFja3JldXNlIikpIHsKKwkJYWxsb3dfcGFja19yZXVzZSA9IGdpdF9jb25maWdfYm9vbChrLCB2KTsKKwkJcmV0dXJuIDA7CisJfQogCWlmICghc3RyY21wKGssICJwYWNrLnRocmVhZHMiKSkgewogCQlkZWx0YV9zZWFyY2hfdGhyZWFkcyA9IGdpdF9jb25maWdfaW50KGssIHYpOwogCQlpZiAoZGVsdGFfc2VhcmNoX3RocmVhZHMgPCAwKQpAQCAtMjc5NCw3ICsyOTI5LDcgQEAKIAkJZm9yIChwID0gc3RyY2hyKG5hbWUsICcvJyk7IHA7IHAgPSBzdHJjaHIocCArIDEsICcvJykpCiAJCQlkZXB0aCsrOwogCi0JCWVudCA9IHBhY2tsaXN0X2ZpbmQoJnRvX3BhY2ssIG9iai0+b2lkLmhhc2gsIE5VTEwpOworCQllbnQgPSBwYWNrbGlzdF9maW5kKCZ0b19wYWNrLCAmb2JqLT5vaWQpOwogCQlpZiAoZW50ICYmIGRlcHRoID4gb2VfdHJlZV9kZXB0aCgmdG9fcGFjaywgZW50KSkKIAkJCW9lX3NldF90cmVlX2RlcHRoKCZ0b19wYWNrLCBlbnQsIGRlcHRoKTsKIAl9CkBAIC0yODk4LDcgKzMwMzMsNyBAQAogCQlyZXR1cm4gb2lkY21wKCZhLT5vYmplY3QtPm9pZCwgJmItPm9iamVjdC0+b2lkKTsKIH0KIAotc3RhdGljIHZvaWQgYWRkX29iamVjdHNfaW5fdW5wYWNrZWRfcGFja3Moc3RydWN0IHJldl9pbmZvICpyZXZzKQorc3RhdGljIHZvaWQgYWRkX29iamVjdHNfaW5fdW5wYWNrZWRfcGFja3Modm9pZCkKIHsKIAlzdHJ1Y3QgcGFja2VkX2dpdCAqcDsKIAlzdHJ1Y3QgaW5fcGFjayBpbl9wYWNrOwpAQCAtMjkyMCw4ICszMDU1LDggQEAKIAkJCSAgIGluX3BhY2suYWxsb2MpOwogCiAJCWZvciAoaSA9IDA7IGkgPCBwLT5udW1fb2JqZWN0czsgaSsrKSB7Ci0JCQludGhfcGFja2VkX29iamVjdF9vaWQoJm9pZCwgcCwgaSk7Ci0JCQlvID0gbG9va3VwX3Vua25vd25fb2JqZWN0KG9pZC5oYXNoKTsKKwkJCW50aF9wYWNrZWRfb2JqZWN0X2lkKCZvaWQsIHAsIGkpOworCQkJbyA9IGxvb2t1cF91bmtub3duX29iamVjdCgmb2lkKTsKIAkJCWlmICghKG8tPmZsYWdzICYgT0JKRUNUX0FEREVEKSkKIAkJCQltYXJrX2luX3BhY2tfb2JqZWN0KG8sIHAsICZpbl9wYWNrKTsKIAkJCW8tPmZsYWdzIHw9IE9CSkVDVF9BRERFRDsKQEAgLTMwMTAsNyArMzE0NSw3IEBACiAJcmV0dXJuIDE7CiB9CiAKLXN0YXRpYyB2b2lkIGxvb3Nlbl91bnVzZWRfcGFja2VkX29iamVjdHMoc3RydWN0IHJldl9pbmZvICpyZXZzKQorc3RhdGljIHZvaWQgbG9vc2VuX3VudXNlZF9wYWNrZWRfb2JqZWN0cyh2b2lkKQogewogCXN0cnVjdCBwYWNrZWRfZ2l0ICpwOwogCXVpbnQzMl90IGk7CkBAIC0zMDI0LDggKzMxNTksOCBAQAogCQkJZGllKF8oImNhbm5vdCBvcGVuIHBhY2sgaW5kZXgiKSk7CiAKIAkJZm9yIChpID0gMDsgaSA8IHAtPm51bV9vYmplY3RzOyBpKyspIHsKLQkJCW50aF9wYWNrZWRfb2JqZWN0X29pZCgmb2lkLCBwLCBpKTsKLQkJCWlmICghcGFja2xpc3RfZmluZCgmdG9fcGFjaywgb2lkLmhhc2gsIE5VTEwpICYmCisJCQludGhfcGFja2VkX29iamVjdF9pZCgmb2lkLCBwLCBpKTsKKwkJCWlmICghcGFja2xpc3RfZmluZCgmdG9fcGFjaywgJm9pZCkgJiYKIAkJCSAgICAhaGFzX3NoYTFfcGFja19rZXB0X29yX25vbmxvY2FsKCZvaWQpICYmCiAJCQkgICAgIWxvb3NlbmVkX29iamVjdF9jYW5fYmVfZGlzY2FyZGVkKCZvaWQsIHAtPm10aW1lKSkKIAkJCQlpZiAoZm9yY2Vfb2JqZWN0X2xvb3NlKCZvaWQsIHAtPm10aW1lKSkKQEAgLTMwNDEsOCArMzE3Niw4IEBACiAgKi8KIHN0YXRpYyBpbnQgcGFja19vcHRpb25zX2FsbG93X3JldXNlKHZvaWQpCiB7Ci0JcmV0dXJuIHBhY2tfdG9fc3Rkb3V0ICYmCi0JICAgICAgIGFsbG93X29mc19kZWx0YSAmJgorCXJldHVybiBhbGxvd19wYWNrX3JldXNlICYmCisJICAgICAgIHBhY2tfdG9fc3Rkb3V0ICYmCiAJICAgICAgICFpZ25vcmVfcGFja2VkX2tlZXBfb25fZGlzayAmJgogCSAgICAgICAhaWdub3JlX3BhY2tlZF9rZWVwX2luX2NvcmUgJiYKIAkgICAgICAgKCFsb2NhbCB8fCAhaGF2ZV9ub25fbG9jYWxfcGFja3MpICYmCkBAIC0zMDUxLDcgKzMxODYsNyBAQAogCiBzdGF0aWMgaW50IGdldF9vYmplY3RfbGlzdF9mcm9tX2JpdG1hcChzdHJ1Y3QgcmV2X2luZm8gKnJldnMpCiB7Ci0JaWYgKCEoYml0bWFwX2dpdCA9IHByZXBhcmVfYml0bWFwX3dhbGsocmV2cykpKQorCWlmICghKGJpdG1hcF9naXQgPSBwcmVwYXJlX2JpdG1hcF93YWxrKHJldnMsICZmaWx0ZXJfb3B0aW9ucykpKQogCQlyZXR1cm4gLTE7CiAKIAlpZiAocGFja19vcHRpb25zX2FsbG93X3JldXNlKCkgJiYKQEAgLTMwNTksMTMgKzMxOTQsMTQgQEAKIAkJCWJpdG1hcF9naXQsCiAJCQkmcmV1c2VfcGFja2ZpbGUsCiAJCQkmcmV1c2VfcGFja2ZpbGVfb2JqZWN0cywKLQkJCSZyZXVzZV9wYWNrZmlsZV9vZmZzZXQpKSB7CisJCQkmcmV1c2VfcGFja2ZpbGVfYml0bWFwKSkgewogCQlhc3NlcnQocmV1c2VfcGFja2ZpbGVfb2JqZWN0cyk7CiAJCW5yX3Jlc3VsdCArPSByZXVzZV9wYWNrZmlsZV9vYmplY3RzOwogCQlkaXNwbGF5X3Byb2dyZXNzKHByb2dyZXNzX3N0YXRlLCBucl9yZXN1bHQpOwogCX0KIAotCXRyYXZlcnNlX2JpdG1hcF9jb21taXRfbGlzdChiaXRtYXBfZ2l0LCAmYWRkX29iamVjdF9lbnRyeV9mcm9tX2JpdG1hcCk7CisJdHJhdmVyc2VfYml0bWFwX2NvbW1pdF9saXN0KGJpdG1hcF9naXQsIHJldnMsCisJCQkJICAgICZhZGRfb2JqZWN0X2VudHJ5X2Zyb21fYml0bWFwKTsKIAlyZXR1cm4gMDsKIH0KIApAQCAtMzA4NCwxNCArMzIyMCwxNiBAQAogc3RhdGljIHZvaWQgZ2V0X29iamVjdF9saXN0KGludCBhYywgY29uc3QgY2hhciAqKmF2KQogewogCXN0cnVjdCByZXZfaW5mbyByZXZzOworCXN0cnVjdCBzZXR1cF9yZXZpc2lvbl9vcHQgc19yX29wdCA9IHsKKwkJLmFsbG93X2V4Y2x1ZGVfcHJvbWlzb3Jfb2JqZWN0cyA9IDEsCisJfTsKIAljaGFyIGxpbmVbMTAwMF07CiAJaW50IGZsYWdzID0gMDsKIAlpbnQgc2F2ZV93YXJuaW5nOwogCiAJcmVwb19pbml0X3JldmlzaW9ucyh0aGVfcmVwb3NpdG9yeSwgJnJldnMsIE5VTEwpOwogCXNhdmVfY29tbWl0X2J1ZmZlciA9IDA7Ci0JcmV2cy5hbGxvd19leGNsdWRlX3Byb21pc29yX29iamVjdHNfb3B0ID0gMTsKLQlzZXR1cF9yZXZpc2lvbnMoYWMsIGF2LCAmcmV2cywgTlVMTCk7CisJc2V0dXBfcmV2aXNpb25zKGFjLCBhdiwgJnJldnMsICZzX3Jfb3B0KTsKIAogCS8qIG1ha2Ugc3VyZSBzaGFsbG93cyBhcmUgcmVhZCAqLwogCWlzX3JlcG9zaXRvcnlfc2hhbGxvdyh0aGVfcmVwb3NpdG9yeSk7CkBAIC0zMTMxLDExICszMjY5LDExIEBACiAJCXJldHVybjsKIAogCWlmICh1c2VfZGVsdGFfaXNsYW5kcykKLQkJbG9hZF9kZWx0YV9pc2xhbmRzKCk7CisJCWxvYWRfZGVsdGFfaXNsYW5kcyh0aGVfcmVwb3NpdG9yeSwgcHJvZ3Jlc3MpOwogCiAJaWYgKHByZXBhcmVfcmV2aXNpb25fd2FsaygmcmV2cykpCiAJCWRpZShfKCJyZXZpc2lvbiB3YWxrIHNldHVwIGZhaWxlZCIpKTsKLQltYXJrX2VkZ2VzX3VuaW50ZXJlc3RpbmcoJnJldnMsIHNob3dfZWRnZSk7CisJbWFya19lZGdlc191bmludGVyZXN0aW5nKCZyZXZzLCBzaG93X2VkZ2UsIHNwYXJzZSk7CiAKIAlpZiAoIWZuX3Nob3dfb2JqZWN0KQogCQlmbl9zaG93X29iamVjdCA9IHNob3dfb2JqZWN0OwpAQCAtMzE1NSwxMSArMzI5MywxMSBAQAogCX0KIAogCWlmIChrZWVwX3VucmVhY2hhYmxlKQotCQlhZGRfb2JqZWN0c19pbl91bnBhY2tlZF9wYWNrcygmcmV2cyk7CisJCWFkZF9vYmplY3RzX2luX3VucGFja2VkX3BhY2tzKCk7CiAJaWYgKHBhY2tfbG9vc2VfdW5yZWFjaGFibGUpCiAJCWFkZF91bnJlYWNoYWJsZV9sb29zZV9vYmplY3RzKCk7CiAJaWYgKHVucGFja191bnJlYWNoYWJsZSkKLQkJbG9vc2VuX3VudXNlZF9wYWNrZWRfb2JqZWN0cygmcmV2cyk7CisJCWxvb3Nlbl91bnVzZWRfcGFja2VkX29iamVjdHMoKTsKIAogCW9pZF9hcnJheV9jbGVhcigmcmVjZW50X29iamVjdHMpOwogfQpAQCAtMzI5Miw2ICszNDMwLDggQEAKIAkJeyBPUFRJT05fQ0FMTEJBQ0ssIDAsICJ1bnBhY2stdW5yZWFjaGFibGUiLCBOVUxMLCBOXygidGltZSIpLAogCQkgIE5fKCJ1bnBhY2sgdW5yZWFjaGFibGUgb2JqZWN0cyBuZXdlciB0aGFuIDx0aW1lPiIpLAogCQkgIFBBUlNFX09QVF9PUFRBUkcsIG9wdGlvbl9wYXJzZV91bnBhY2tfdW5yZWFjaGFibGUgfSwKKwkJT1BUX0JPT0woMCwgInNwYXJzZSIsICZzcGFyc2UsCisJCQkgTl8oInVzZSB0aGUgc3BhcnNlIHJlYWNoYWJpbGl0eSBhbGdvcml0aG0iKSksCiAJCU9QVF9CT09MKDAsICJ0aGluIiwgJnRoaW4sCiAJCQkgTl8oImNyZWF0ZSB0aGluIHBhY2tzIikpLAogCQlPUFRfQk9PTCgwLCAic2hhbGxvdyIsICZzaGFsbG93LApAQCAtMzMwNiw4ICszNDQ2LDEzIEBACiAJCQkgICAgTl8oImRvIG5vdCBoaWRlIGNvbW1pdHMgYnkgZ3JhZnRzIiksIDApLAogCQlPUFRfQk9PTCgwLCAidXNlLWJpdG1hcC1pbmRleCIsICZ1c2VfYml0bWFwX2luZGV4LAogCQkJIE5fKCJ1c2UgYSBiaXRtYXAgaW5kZXggaWYgYXZhaWxhYmxlIHRvIHNwZWVkIHVwIGNvdW50aW5nIG9iamVjdHMiKSksCi0JCU9QVF9CT09MKDAsICJ3cml0ZS1iaXRtYXAtaW5kZXgiLCAmd3JpdGVfYml0bWFwX2luZGV4LAotCQkJIE5fKCJ3cml0ZSBhIGJpdG1hcCBpbmRleCB0b2dldGhlciB3aXRoIHRoZSBwYWNrIGluZGV4IikpLAorCQlPUFRfU0VUX0lOVCgwLCAid3JpdGUtYml0bWFwLWluZGV4IiwgJndyaXRlX2JpdG1hcF9pbmRleCwKKwkJCSAgICBOXygid3JpdGUgYSBiaXRtYXAgaW5kZXggdG9nZXRoZXIgd2l0aCB0aGUgcGFjayBpbmRleCIpLAorCQkJICAgIFdSSVRFX0JJVE1BUF9UUlVFKSwKKwkJT1BUX1NFVF9JTlRfRigwLCAid3JpdGUtYml0bWFwLWluZGV4LXF1aWV0IiwKKwkJCSAgICAgICZ3cml0ZV9iaXRtYXBfaW5kZXgsCisJCQkgICAgICBOXygid3JpdGUgYSBiaXRtYXAgaW5kZXggaWYgcG9zc2libGUiKSwKKwkJCSAgICAgIFdSSVRFX0JJVE1BUF9RVUlFVCwgUEFSU0VfT1BUX0hJRERFTiksCiAJCU9QVF9QQVJTRV9MSVNUX09CSkVDVFNfRklMVEVSKCZmaWx0ZXJfb3B0aW9ucyksCiAJCXsgT1BUSU9OX0NBTExCQUNLLCAwLCAibWlzc2luZyIsIE5VTEwsIE5fKCJhY3Rpb24iKSwKIAkJICBOXygiaGFuZGxpbmcgZm9yIG1pc3Npbmcgb2JqZWN0cyIpLCBQQVJTRV9PUFRfTk9ORUcsCkBAIC0zMzI0LDYgKzM0NjksMTEgQEAKIAogCXJlYWRfcmVwbGFjZV9yZWZzID0gMDsKIAorCXNwYXJzZSA9IGdpdF9lbnZfYm9vbCgiR0lUX1RFU1RfUEFDS19TUEFSU0UiLCAwKTsKKwlwcmVwYXJlX3JlcG9fc2V0dGluZ3ModGhlX3JlcG9zaXRvcnkpOworCWlmICghc3BhcnNlICYmIHRoZV9yZXBvc2l0b3J5LT5zZXR0aW5ncy5wYWNrX3VzZV9zcGFyc2UgIT0gLTEpCisJCXNwYXJzZSA9IHRoZV9yZXBvc2l0b3J5LT5zZXR0aW5ncy5wYWNrX3VzZV9zcGFyc2U7CisKIAlyZXNldF9wYWNrX2lkeF9vcHRpb24oJnBhY2tfaWR4X29wdHMpOwogCWdpdF9jb25maWcoZ2l0X3BhY2tfY29uZmlnLCBOVUxMKTsKIApAQCAtMzQxNSw3ICszNTY1LDYgQEAKIAlpZiAoZmlsdGVyX29wdGlvbnMuY2hvaWNlKSB7CiAJCWlmICghcGFja190b19zdGRvdXQpCiAJCQlkaWUoXygiY2Fubm90IHVzZSAtLWZpbHRlciB3aXRob3V0IC0tc3Rkb3V0IikpOwotCQl1c2VfYml0bWFwX2luZGV4ID0gMDsKIAl9CiAKIAkvKgpAQCAtMzQ3MCw3ICszNjE5LDkgQEAKIAkJfQogCX0KIAotCXByZXBhcmVfcGFja2luZ19kYXRhKCZ0b19wYWNrKTsKKwl0cmFjZTJfcmVnaW9uX2VudGVyKCJwYWNrLW9iamVjdHMiLCAiZW51bWVyYXRlLW9iamVjdHMiLAorCQkJICAgIHRoZV9yZXBvc2l0b3J5KTsKKwlwcmVwYXJlX3BhY2tpbmdfZGF0YSh0aGVfcmVwb3NpdG9yeSwgJnRvX3BhY2spOwogCiAJaWYgKHByb2dyZXNzKQogCQlwcm9ncmVzc19zdGF0ZSA9IHN0YXJ0X3Byb2dyZXNzKF8oIkVudW1lcmF0aW5nIG9iamVjdHMiKSwgMCk7CkBAIC0zNDg0LDE2ICszNjM1LDI5IEBACiAJaWYgKGluY2x1ZGVfdGFnICYmIG5yX3Jlc3VsdCkKIAkJZm9yX2VhY2hfcmVmKGFkZF9yZWZfdGFnLCBOVUxMKTsKIAlzdG9wX3Byb2dyZXNzKCZwcm9ncmVzc19zdGF0ZSk7CisJdHJhY2UyX3JlZ2lvbl9sZWF2ZSgicGFjay1vYmplY3RzIiwgImVudW1lcmF0ZS1vYmplY3RzIiwKKwkJCSAgICB0aGVfcmVwb3NpdG9yeSk7CiAKIAlpZiAobm9uX2VtcHR5ICYmICFucl9yZXN1bHQpCiAJCXJldHVybiAwOwotCWlmIChucl9yZXN1bHQpCisJaWYgKG5yX3Jlc3VsdCkgeworCQl0cmFjZTJfcmVnaW9uX2VudGVyKCJwYWNrLW9iamVjdHMiLCAicHJlcGFyZS1wYWNrIiwKKwkJCQkgICAgdGhlX3JlcG9zaXRvcnkpOwogCQlwcmVwYXJlX3BhY2sod2luZG93LCBkZXB0aCk7CisJCXRyYWNlMl9yZWdpb25fbGVhdmUoInBhY2stb2JqZWN0cyIsICJwcmVwYXJlLXBhY2siLAorCQkJCSAgICB0aGVfcmVwb3NpdG9yeSk7CisJfQorCisJdHJhY2UyX3JlZ2lvbl9lbnRlcigicGFjay1vYmplY3RzIiwgIndyaXRlLXBhY2stZmlsZSIsIHRoZV9yZXBvc2l0b3J5KTsKIAl3cml0ZV9wYWNrX2ZpbGUoKTsKKwl0cmFjZTJfcmVnaW9uX2xlYXZlKCJwYWNrLW9iamVjdHMiLCAid3JpdGUtcGFjay1maWxlIiwgdGhlX3JlcG9zaXRvcnkpOworCiAJaWYgKHByb2dyZXNzKQogCQlmcHJpbnRmX2xuKHN0ZGVyciwKIAkJCSAgIF8oIlRvdGFsICUiUFJJdTMyIiAoZGVsdGEgJSJQUkl1MzIiKSwiCi0JCQkgICAgICIgcmV1c2VkICUiUFJJdTMyIiAoZGVsdGEgJSJQUkl1MzIiKSIpLAotCQkJICAgd3JpdHRlbiwgd3JpdHRlbl9kZWx0YSwgcmV1c2VkLCByZXVzZWRfZGVsdGEpOworCQkJICAgICAiIHJldXNlZCAlIlBSSXUzMiIgKGRlbHRhICUiUFJJdTMyIiksIgorCQkJICAgICAiIHBhY2stcmV1c2VkICUiUFJJdTMyKSwKKwkJCSAgIHdyaXR0ZW4sIHdyaXR0ZW5fZGVsdGEsIHJldXNlZCwgcmV1c2VkX2RlbHRhLAorCQkJICAgcmV1c2VfcGFja2ZpbGVfb2JqZWN0cyk7CiAJcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9idWlsdGluL3BhY2stcmVkdW5kYW50LmMgYi9idWlsdGluL3BhY2stcmVkdW5kYW50LmMKaW5kZXggY2Y5YTlhYS4uMTc4ZTM0MCAxMDA2NDQKLS0tIGEvYnVpbHRpbi9wYWNrLXJlZHVuZGFudC5jCisrKyBiL2J1aWx0aW4vcGFjay1yZWR1bmRhbnQuYwpAQCAtMzIsMTQgKzMyLDEwIEBACiAJc3RydWN0IHBhY2tfbGlzdCAqbmV4dDsKIAlzdHJ1Y3QgcGFja2VkX2dpdCAqcGFjazsKIAlzdHJ1Y3QgbGxpc3QgKnVuaXF1ZV9vYmplY3RzOwotCXN0cnVjdCBsbGlzdCAqYWxsX29iamVjdHM7CisJc3RydWN0IGxsaXN0ICpyZW1haW5pbmdfb2JqZWN0czsKKwlzaXplX3QgYWxsX29iamVjdHNfc2l6ZTsKIH0gKmxvY2FsX3BhY2tzID0gTlVMTCwgKmFsdG9kYl9wYWNrcyA9IE5VTEw7CiAKLXN0cnVjdCBwbGwgewotCXN0cnVjdCBwbGwgKm5leHQ7Ci0Jc3RydWN0IHBhY2tfbGlzdCAqcGw7Ci19OwotCiBzdGF0aWMgc3RydWN0IGxsaXN0X2l0ZW0gKmZyZWVfbm9kZXM7CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBsbGlzdF9pdGVtX3B1dChzdHJ1Y3QgbGxpc3RfaXRlbSAqaXRlbSkKQEAgLTYzLDE1ICs1OSw2IEBACiAJcmV0dXJuIG5ld19pdGVtOwogfQogCi1zdGF0aWMgdm9pZCBsbGlzdF9mcmVlKHN0cnVjdCBsbGlzdCAqbGlzdCkKLXsKLQl3aGlsZSAoKGxpc3QtPmJhY2sgPSBsaXN0LT5mcm9udCkpIHsKLQkJbGlzdC0+ZnJvbnQgPSBsaXN0LT5mcm9udC0+bmV4dDsKLQkJbGxpc3RfaXRlbV9wdXQobGlzdC0+YmFjayk7Ci0JfQotCWZyZWUobGlzdCk7Ci19Ci0KIHN0YXRpYyBpbmxpbmUgdm9pZCBsbGlzdF9pbml0KHN0cnVjdCBsbGlzdCAqKmxpc3QpCiB7CiAJKmxpc3QgPSB4bWFsbG9jKHNpemVvZihzdHJ1Y3QgbGxpc3QpKTsKQEAgLTE2Niw3ICsxNTMsNyBAQAogCWwgPSAoaGludCA9PSBOVUxMKSA/IGxpc3QtPmZyb250IDogaGludDsKIAlwcmV2ID0gTlVMTDsKIAl3aGlsZSAobCkgewotCQlpbnQgY21wID0gb2lkY21wKGwtPm9pZCwgb2lkKTsKKwkJY29uc3QgaW50IGNtcCA9IG9pZGNtcChsLT5vaWQsIG9pZCk7CiAJCWlmIChjbXAgPiAwKSAvKiBub3QgaW4gbGlzdCwgc2luY2Ugc29ydGVkICovCiAJCQlyZXR1cm4gcHJldjsKIAkJaWYgKCFjbXApIHsgLyogZm91bmQgKi8KQEAgLTI1NCw2ICsyNDEsMTEgQEAKIAlzdHJ1Y3QgbGxpc3RfaXRlbSAqcDFfaGludCA9IE5VTEwsICpwMl9oaW50ID0gTlVMTDsKIAljb25zdCB1bnNpZ25lZCBpbnQgaGFzaHN6ID0gdGhlX2hhc2hfYWxnby0+cmF3c3o7CiAKKwlpZiAoIXAxLT51bmlxdWVfb2JqZWN0cykKKwkJcDEtPnVuaXF1ZV9vYmplY3RzID0gbGxpc3RfY29weShwMS0+cmVtYWluaW5nX29iamVjdHMpOworCWlmICghcDItPnVuaXF1ZV9vYmplY3RzKQorCQlwMi0+dW5pcXVlX29iamVjdHMgPSBsbGlzdF9jb3B5KHAyLT5yZW1haW5pbmdfb2JqZWN0cyk7CisKIAlwMV9iYXNlID0gcDEtPnBhY2stPmluZGV4X2RhdGE7CiAJcDJfYmFzZSA9IHAyLT5wYWNrLT5pbmRleF9kYXRhOwogCXAxX2Jhc2UgKz0gMjU2ICogNCArICgocDEtPnBhY2stPmluZGV4X3ZlcnNpb24gPCAyKSA/IDQgOiA4KTsKQEAgLTI2NCw3ICsyNTYsNyBAQAogCXdoaWxlIChwMV9vZmYgPCBwMS0+cGFjay0+bnVtX29iamVjdHMgKiBwMV9zdGVwICYmCiAJICAgICAgIHAyX29mZiA8IHAyLT5wYWNrLT5udW1fb2JqZWN0cyAqIHAyX3N0ZXApCiAJewotCQlpbnQgY21wID0gaGFzaGNtcChwMV9iYXNlICsgcDFfb2ZmLCBwMl9iYXNlICsgcDJfb2ZmKTsKKwkJY29uc3QgaW50IGNtcCA9IGhhc2hjbXAocDFfYmFzZSArIHAxX29mZiwgcDJfYmFzZSArIHAyX29mZik7CiAJCS8qIGNtcCB+IHAxIC0gcDIgKi8KIAkJaWYgKGNtcCA9PSAwKSB7CiAJCQlwMV9oaW50ID0gbGxpc3Rfc29ydGVkX3JlbW92ZShwMS0+dW5pcXVlX29iamVjdHMsCkBAIC0yODUsNzggKzI3Nyw2IEBACiAJfQogfQogCi1zdGF0aWMgdm9pZCBwbGxfZnJlZShzdHJ1Y3QgcGxsICpsKQotewotCXN0cnVjdCBwbGwgKm9sZDsKLQlzdHJ1Y3QgcGFja19saXN0ICpvcGw7Ci0KLQl3aGlsZSAobCkgewotCQlvbGQgPSBsOwotCQl3aGlsZSAobC0+cGwpIHsKLQkJCW9wbCA9IGwtPnBsOwotCQkJbC0+cGwgPSBvcGwtPm5leHQ7Ci0JCQlmcmVlKG9wbCk7Ci0JCX0KLQkJbCA9IGwtPm5leHQ7Ci0JCWZyZWUob2xkKTsKLQl9Ci19Ci0KLS8qIGFsbCB0aGUgcGVybXV0YXRpb25zIGhhdmUgdG8gYmUgZnJlZSgpZCBhdCB0aGUgc2FtZSB0aW1lLAotICogc2luY2UgdGhleSByZWZlciB0byBlYWNoIG90aGVyCi0gKi8KLXN0YXRpYyBzdHJ1Y3QgcGxsICogZ2V0X3Blcm11dGF0aW9ucyhzdHJ1Y3QgcGFja19saXN0ICpsaXN0LCBpbnQgbikKLXsKLQlzdHJ1Y3QgcGxsICpzdWJzZXQsICpyZXQgPSBOVUxMLCAqbmV3X3BsbCA9IE5VTEw7Ci0KLQlpZiAobGlzdCA9PSBOVUxMIHx8IHBhY2tfbGlzdF9zaXplKGxpc3QpIDwgbiB8fCBuID09IDApCi0JCXJldHVybiBOVUxMOwotCi0JaWYgKG4gPT0gMSkgewotCQl3aGlsZSAobGlzdCkgewotCQkJbmV3X3BsbCA9IHhtYWxsb2Moc2l6ZW9mKCpuZXdfcGxsKSk7Ci0JCQluZXdfcGxsLT5wbCA9IE5VTEw7Ci0JCQlwYWNrX2xpc3RfaW5zZXJ0KCZuZXdfcGxsLT5wbCwgbGlzdCk7Ci0JCQluZXdfcGxsLT5uZXh0ID0gcmV0OwotCQkJcmV0ID0gbmV3X3BsbDsKLQkJCWxpc3QgPSBsaXN0LT5uZXh0OwotCQl9Ci0JCXJldHVybiByZXQ7Ci0JfQotCi0Jd2hpbGUgKGxpc3QtPm5leHQpIHsKLQkJc3Vic2V0ID0gZ2V0X3Blcm11dGF0aW9ucyhsaXN0LT5uZXh0LCBuIC0gMSk7Ci0JCXdoaWxlIChzdWJzZXQpIHsKLQkJCW5ld19wbGwgPSB4bWFsbG9jKHNpemVvZigqbmV3X3BsbCkpOwotCQkJbmV3X3BsbC0+cGwgPSBzdWJzZXQtPnBsOwotCQkJcGFja19saXN0X2luc2VydCgmbmV3X3BsbC0+cGwsIGxpc3QpOwotCQkJbmV3X3BsbC0+bmV4dCA9IHJldDsKLQkJCXJldCA9IG5ld19wbGw7Ci0JCQlzdWJzZXQgPSBzdWJzZXQtPm5leHQ7Ci0JCX0KLQkJbGlzdCA9IGxpc3QtPm5leHQ7Ci0JfQotCXJldHVybiByZXQ7Ci19Ci0KLXN0YXRpYyBpbnQgaXNfc3VwZXJzZXQoc3RydWN0IHBhY2tfbGlzdCAqcGwsIHN0cnVjdCBsbGlzdCAqbGlzdCkKLXsKLQlzdHJ1Y3QgbGxpc3QgKmRpZmY7Ci0KLQlkaWZmID0gbGxpc3RfY29weShsaXN0KTsKLQotCXdoaWxlIChwbCkgewotCQlsbGlzdF9zb3J0ZWRfZGlmZmVyZW5jZV9pbnBsYWNlKGRpZmYsIHBsLT5hbGxfb2JqZWN0cyk7Ci0JCWlmIChkaWZmLT5zaXplID09IDApIHsgLyogd2UncmUgZG9uZSAqLwotCQkJbGxpc3RfZnJlZShkaWZmKTsKLQkJCXJldHVybiAxOwotCQl9Ci0JCXBsID0gcGwtPm5leHQ7Ci0JfQotCWxsaXN0X2ZyZWUoZGlmZik7Ci0JcmV0dXJuIDA7Ci19Ci0KIHN0YXRpYyBzaXplX3Qgc2l6ZW9mX3VuaW9uKHN0cnVjdCBwYWNrZWRfZ2l0ICpwMSwgc3RydWN0IHBhY2tlZF9naXQgKnAyKQogewogCXNpemVfdCByZXQgPSAwOwpAQCAtNDIxLDE0ICszNDEsNTggQEAKIAlyZXR1cm4gcmV0OwogfQogCitzdGF0aWMgaW50IGNtcF9yZW1haW5pbmdfb2JqZWN0cyhjb25zdCB2b2lkICphLCBjb25zdCB2b2lkICpiKQoreworCXN0cnVjdCBwYWNrX2xpc3QgKnBsX2EgPSAqKChzdHJ1Y3QgcGFja19saXN0ICoqKWEpOworCXN0cnVjdCBwYWNrX2xpc3QgKnBsX2IgPSAqKChzdHJ1Y3QgcGFja19saXN0ICoqKWIpOworCisJaWYgKHBsX2EtPnJlbWFpbmluZ19vYmplY3RzLT5zaXplID09IHBsX2ItPnJlbWFpbmluZ19vYmplY3RzLT5zaXplKSB7CisJCS8qIGhhdmUgdGhlIHNhbWUgcmVtYWluaW5nX29iamVjdHMsIGJpZyBwYWNrIGZpcnN0ICovCisJCWlmIChwbF9hLT5hbGxfb2JqZWN0c19zaXplID09IHBsX2ItPmFsbF9vYmplY3RzX3NpemUpCisJCQlyZXR1cm4gMDsKKwkJZWxzZSBpZiAocGxfYS0+YWxsX29iamVjdHNfc2l6ZSA8IHBsX2ItPmFsbF9vYmplY3RzX3NpemUpCisJCQlyZXR1cm4gMTsKKwkJZWxzZQorCQkJcmV0dXJuIC0xOworCX0gZWxzZSBpZiAocGxfYS0+cmVtYWluaW5nX29iamVjdHMtPnNpemUgPCBwbF9iLT5yZW1haW5pbmdfb2JqZWN0cy0+c2l6ZSkgeworCQkvKiBzb3J0IGJ5IHJlbWFpbmluZyBvYmplY3RzLCBtb3JlIG9iamVjdHMgZmlyc3QgKi8KKwkJcmV0dXJuIDE7CisJfSBlbHNlIHsKKwkJcmV0dXJuIC0xOworCX0KK30KKworLyogU29ydCBwYWNrX2xpc3QsIGdyZWF0ZXIgc2l6ZSBvZiByZW1haW5pbmdfb2JqZWN0cyBmaXJzdCAqLworc3RhdGljIHZvaWQgc29ydF9wYWNrX2xpc3Qoc3RydWN0IHBhY2tfbGlzdCAqKnBsKQoreworCXN0cnVjdCBwYWNrX2xpc3QgKiphcnksICpwOworCWludCBpOworCXNpemVfdCBuID0gcGFja19saXN0X3NpemUoKnBsKTsKKworCWlmIChuIDwgMikKKwkJcmV0dXJuOworCisJLyogcHJlcGFyZSBhbiBhcnJheSBvZiBwYWNrZWRfbGlzdCBmb3IgZWFzaWVyIHNvcnRpbmcgKi8KKwlhcnkgPSB4Y2FsbG9jKG4sIHNpemVvZihzdHJ1Y3QgcGFja19saXN0ICopKTsKKwlmb3IgKG4gPSAwLCBwID0gKnBsOyBwOyBwID0gcC0+bmV4dCkKKwkJYXJ5W24rK10gPSBwOworCisJUVNPUlQoYXJ5LCBuLCBjbXBfcmVtYWluaW5nX29iamVjdHMpOworCisJLyogbGluayB0aGVtIGJhY2sgYWdhaW4gKi8KKwlmb3IgKGkgPSAwOyBpIDwgbiAtIDE7IGkrKykKKwkJYXJ5W2ldLT5uZXh0ID0gYXJ5W2kgKyAxXTsKKwlhcnlbbiAtIDFdLT5uZXh0ID0gTlVMTDsKKwkqcGwgPSBhcnlbMF07CisKKwlmcmVlKGFyeSk7Cit9CisKKwogc3RhdGljIHZvaWQgbWluaW1pemUoc3RydWN0IHBhY2tfbGlzdCAqKm1pbikKIHsKLQlzdHJ1Y3QgcGFja19saXN0ICpwbCwgKnVuaXF1ZSA9IE5VTEwsCi0JCSpub25fdW5pcXVlID0gTlVMTCwgKm1pbl9wZXJtID0gTlVMTDsKLQlzdHJ1Y3QgcGxsICpwZXJtLCAqcGVybV9hbGwsICpwZXJtX29rID0gTlVMTCwgKm5ld19wZXJtOwotCXN0cnVjdCBsbGlzdCAqbWlzc2luZzsKLQlvZmZfdCBtaW5fcGVybV9zaXplID0gMCwgcGVybV9zaXplOwotCWludCBuOworCXN0cnVjdCBwYWNrX2xpc3QgKnBsLCAqdW5pcXVlID0gTlVMTCwgKm5vbl91bmlxdWUgPSBOVUxMOworCXN0cnVjdCBsbGlzdCAqbWlzc2luZywgKnVuaXF1ZV9wYWNrX29iamVjdHM7CiAKIAlwbCA9IGxvY2FsX3BhY2tzOwogCXdoaWxlIChwbCkgewpAQCAtNDQyLDUzICs0MDYsNDEgQEAKIAltaXNzaW5nID0gbGxpc3RfY29weShhbGxfb2JqZWN0cyk7CiAJcGwgPSB1bmlxdWU7CiAJd2hpbGUgKHBsKSB7Ci0JCWxsaXN0X3NvcnRlZF9kaWZmZXJlbmNlX2lucGxhY2UobWlzc2luZywgcGwtPmFsbF9vYmplY3RzKTsKKwkJbGxpc3Rfc29ydGVkX2RpZmZlcmVuY2VfaW5wbGFjZShtaXNzaW5nLCBwbC0+cmVtYWluaW5nX29iamVjdHMpOwogCQlwbCA9IHBsLT5uZXh0OwogCX0KIAorCSptaW4gPSB1bmlxdWU7CisKIAkvKiByZXR1cm4gaWYgdGhlcmUgYXJlIG5vIG9iamVjdHMgbWlzc2luZyBmcm9tIHRoZSB1bmlxdWUgc2V0ICovCiAJaWYgKG1pc3NpbmctPnNpemUgPT0gMCkgewotCQkqbWluID0gdW5pcXVlOwogCQlmcmVlKG1pc3NpbmcpOwogCQlyZXR1cm47CiAJfQogCi0JLyogZmluZCB0aGUgcGVybXV0YXRpb25zIHdoaWNoIGNvbnRhaW4gYWxsIG1pc3Npbmcgb2JqZWN0cyAqLwotCWZvciAobiA9IDE7IG4gPD0gcGFja19saXN0X3NpemUobm9uX3VuaXF1ZSkgJiYgIXBlcm1fb2s7IG4rKykgewotCQlwZXJtX2FsbCA9IHBlcm0gPSBnZXRfcGVybXV0YXRpb25zKG5vbl91bmlxdWUsIG4pOwotCQl3aGlsZSAocGVybSkgewotCQkJaWYgKGlzX3N1cGVyc2V0KHBlcm0tPnBsLCBtaXNzaW5nKSkgewotCQkJCW5ld19wZXJtID0geG1hbGxvYyhzaXplb2Yoc3RydWN0IHBsbCkpOwotCQkJCW1lbWNweShuZXdfcGVybSwgcGVybSwgc2l6ZW9mKHN0cnVjdCBwbGwpKTsKLQkJCQluZXdfcGVybS0+bmV4dCA9IHBlcm1fb2s7Ci0JCQkJcGVybV9vayA9IG5ld19wZXJtOwotCQkJfQotCQkJcGVybSA9IHBlcm0tPm5leHQ7Ci0JCX0KLQkJaWYgKHBlcm1fb2spCi0JCQlicmVhazsKLQkJcGxsX2ZyZWUocGVybV9hbGwpOwotCX0KLQlpZiAocGVybV9vayA9PSBOVUxMKQotCQlkaWUoIkludGVybmFsIGVycm9yOiBObyBjb21wbGV0ZSBzZXRzIGZvdW5kISIpOworCXVuaXF1ZV9wYWNrX29iamVjdHMgPSBsbGlzdF9jb3B5KGFsbF9vYmplY3RzKTsKKwlsbGlzdF9zb3J0ZWRfZGlmZmVyZW5jZV9pbnBsYWNlKHVuaXF1ZV9wYWNrX29iamVjdHMsIG1pc3NpbmcpOwogCi0JLyogZmluZCB0aGUgcGVybXV0YXRpb24gd2l0aCB0aGUgc21hbGxlc3Qgc2l6ZSAqLwotCXBlcm0gPSBwZXJtX29rOwotCXdoaWxlIChwZXJtKSB7Ci0JCXBlcm1fc2l6ZSA9IHBhY2tfc2V0X2J5dGVjb3VudChwZXJtLT5wbCk7Ci0JCWlmICghbWluX3Blcm1fc2l6ZSB8fCBtaW5fcGVybV9zaXplID4gcGVybV9zaXplKSB7Ci0JCQltaW5fcGVybV9zaXplID0gcGVybV9zaXplOwotCQkJbWluX3Blcm0gPSBwZXJtLT5wbDsKLQkJfQotCQlwZXJtID0gcGVybS0+bmV4dDsKLQl9Ci0JKm1pbiA9IG1pbl9wZXJtOwotCS8qIGFkZCB0aGUgdW5pcXVlIHBhY2tzIHRvIHRoZSBsaXN0ICovCi0JcGwgPSB1bmlxdWU7CisJLyogcmVtb3ZlIHVuaXF1ZSBwYWNrIG9iamVjdHMgZnJvbSB0aGUgbm9uX3VuaXF1ZSBwYWNrcyAqLworCXBsID0gbm9uX3VuaXF1ZTsKIAl3aGlsZSAocGwpIHsKLQkJcGFja19saXN0X2luc2VydChtaW4sIHBsKTsKKwkJbGxpc3Rfc29ydGVkX2RpZmZlcmVuY2VfaW5wbGFjZShwbC0+cmVtYWluaW5nX29iamVjdHMsIHVuaXF1ZV9wYWNrX29iamVjdHMpOwogCQlwbCA9IHBsLT5uZXh0OwogCX0KKworCXdoaWxlIChub25fdW5pcXVlKSB7CisJCS8qIHNvcnQgdGhlIG5vbl91bmlxdWUgcGFja3MsIGdyZWF0ZXIgc2l6ZSBvZiByZW1haW5pbmdfb2JqZWN0cyBmaXJzdCAqLworCQlzb3J0X3BhY2tfbGlzdCgmbm9uX3VuaXF1ZSk7CisJCWlmIChub25fdW5pcXVlLT5yZW1haW5pbmdfb2JqZWN0cy0+c2l6ZSA9PSAwKQorCQkJYnJlYWs7CisKKwkJcGFja19saXN0X2luc2VydChtaW4sIG5vbl91bmlxdWUpOworCisJCWZvciAocGwgPSBub25fdW5pcXVlLT5uZXh0OyBwbCAmJiBwbC0+cmVtYWluaW5nX29iamVjdHMtPnNpemUgPiAwOyAgcGwgPSBwbC0+bmV4dCkKKwkJCWxsaXN0X3NvcnRlZF9kaWZmZXJlbmNlX2lucGxhY2UocGwtPnJlbWFpbmluZ19vYmplY3RzLCBub25fdW5pcXVlLT5yZW1haW5pbmdfb2JqZWN0cyk7CisKKwkJbm9uX3VuaXF1ZSA9IG5vbl91bmlxdWUtPm5leHQ7CisJfQogfQogCiBzdGF0aWMgdm9pZCBsb2FkX2FsbF9vYmplY3RzKHZvaWQpCkBAIC01MDAsNyArNDUyLDcgQEAKIAogCXdoaWxlIChwbCkgewogCQloaW50ID0gTlVMTDsKLQkJbCA9IHBsLT5hbGxfb2JqZWN0cy0+ZnJvbnQ7CisJCWwgPSBwbC0+cmVtYWluaW5nX29iamVjdHMtPmZyb250OwogCQl3aGlsZSAobCkgewogCQkJaGludCA9IGxsaXN0X2luc2VydF9zb3J0ZWRfdW5pcXVlKGFsbF9vYmplY3RzLAogCQkJCQkJCSAgbC0+b2lkLCBoaW50KTsKQEAgLTUxMSw3ICs0NjMsNyBAQAogCS8qIHJlbW92ZSBvYmplY3RzIHByZXNlbnQgaW4gcmVtb3RlIHBhY2tzICovCiAJcGwgPSBhbHRvZGJfcGFja3M7CiAJd2hpbGUgKHBsKSB7Ci0JCWxsaXN0X3NvcnRlZF9kaWZmZXJlbmNlX2lucGxhY2UoYWxsX29iamVjdHMsIHBsLT5hbGxfb2JqZWN0cyk7CisJCWxsaXN0X3NvcnRlZF9kaWZmZXJlbmNlX2lucGxhY2UoYWxsX29iamVjdHMsIHBsLT5yZW1haW5pbmdfb2JqZWN0cyk7CiAJCXBsID0gcGwtPm5leHQ7CiAJfQogfQpAQCAtNTM2LDExICs0ODgsMTAgQEAKIAl3aGlsZSAoYWx0KSB7CiAJCWxvY2FsID0gbG9jYWxfcGFja3M7CiAJCXdoaWxlIChsb2NhbCkgewotCQkJbGxpc3Rfc29ydGVkX2RpZmZlcmVuY2VfaW5wbGFjZShsb2NhbC0+dW5pcXVlX29iamVjdHMsCi0JCQkJCQkJYWx0LT5hbGxfb2JqZWN0cyk7CisJCQlsbGlzdF9zb3J0ZWRfZGlmZmVyZW5jZV9pbnBsYWNlKGxvY2FsLT5yZW1haW5pbmdfb2JqZWN0cywKKwkJCQkJCQlhbHQtPnJlbWFpbmluZ19vYmplY3RzKTsKIAkJCWxvY2FsID0gbG9jYWwtPm5leHQ7CiAJCX0KLQkJbGxpc3Rfc29ydGVkX2RpZmZlcmVuY2VfaW5wbGFjZShhbGxfb2JqZWN0cywgYWx0LT5hbGxfb2JqZWN0cyk7CiAJCWFsdCA9IGFsdC0+bmV4dDsKIAl9CiB9CkBAIC01NTUsNyArNTA2LDcgQEAKIAkJcmV0dXJuIE5VTEw7CiAKIAlsLnBhY2sgPSBwOwotCWxsaXN0X2luaXQoJmwuYWxsX29iamVjdHMpOworCWxsaXN0X2luaXQoJmwucmVtYWluaW5nX29iamVjdHMpOwogCiAJaWYgKG9wZW5fcGFja19pbmRleChwKSkKIAkJcmV0dXJuIE5VTEw7CkBAIC01NjQsMTEgKzUxNSwxMSBAQAogCWJhc2UgKz0gMjU2ICogNCArICgocC0+aW5kZXhfdmVyc2lvbiA8IDIpID8gNCA6IDgpOwogCXN0ZXAgPSB0aGVfaGFzaF9hbGdvLT5yYXdzeiArICgocC0+aW5kZXhfdmVyc2lvbiA8IDIpID8gNCA6IDApOwogCXdoaWxlIChvZmYgPCBwLT5udW1fb2JqZWN0cyAqIHN0ZXApIHsKLQkJbGxpc3RfaW5zZXJ0X2JhY2sobC5hbGxfb2JqZWN0cywgKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKikoYmFzZSArIG9mZikpOworCQlsbGlzdF9pbnNlcnRfYmFjayhsLnJlbWFpbmluZ19vYmplY3RzLCAoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqKShiYXNlICsgb2ZmKSk7CiAJCW9mZiArPSBzdGVwOwogCX0KLQkvKiB0aGlzIGxpc3Qgd2lsbCBiZSBwcnVuZWQgaW4gY21wX3R3b19wYWNrcyBsYXRlciAqLwotCWwudW5pcXVlX29iamVjdHMgPSBsbGlzdF9jb3B5KGwuYWxsX29iamVjdHMpOworCWwuYWxsX29iamVjdHNfc2l6ZSA9IGwucmVtYWluaW5nX29iamVjdHMtPnNpemU7CisJbC51bmlxdWVfb2JqZWN0cyA9IE5VTEw7CiAJaWYgKHAtPnBhY2tfbG9jYWwpCiAJCXJldHVybiBwYWNrX2xpc3RfaW5zZXJ0KCZsb2NhbF9wYWNrcywgJmwpOwogCWVsc2UKQEAgLTYwMyw3ICs1NTQsNyBAQAogaW50IGNtZF9wYWNrX3JlZHVuZGFudChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKIHsKIAlpbnQgaTsKLQlzdHJ1Y3QgcGFja19saXN0ICptaW4sICpyZWQsICpwbDsKKwlzdHJ1Y3QgcGFja19saXN0ICptaW4gPSBOVUxMLCAqcmVkLCAqcGw7CiAJc3RydWN0IGxsaXN0ICppZ25vcmU7CiAJc3RydWN0IG9iamVjdF9pZCAqb2lkOwogCWNoYXIgYnVmW0dJVF9NQVhfSEVYU1ogKyAyXTsgLyogaGV4IGhhc2ggKyBcbiArIFwwICovCkBAIC02NDYsNyArNTk3LDYgQEAKIAogCWxvYWRfYWxsX29iamVjdHMoKTsKIAotCWNtcF9sb2NhbF9wYWNrcygpOwogCWlmIChhbHRfb2RiKQogCQlzY2FuX2FsdF9vZGJfcGFja3MoKTsKIApAQCAtNjYzLDEwICs2MTMsMTIgQEAKIAlsbGlzdF9zb3J0ZWRfZGlmZmVyZW5jZV9pbnBsYWNlKGFsbF9vYmplY3RzLCBpZ25vcmUpOwogCXBsID0gbG9jYWxfcGFja3M7CiAJd2hpbGUgKHBsKSB7Ci0JCWxsaXN0X3NvcnRlZF9kaWZmZXJlbmNlX2lucGxhY2UocGwtPnVuaXF1ZV9vYmplY3RzLCBpZ25vcmUpOworCQlsbGlzdF9zb3J0ZWRfZGlmZmVyZW5jZV9pbnBsYWNlKHBsLT5yZW1haW5pbmdfb2JqZWN0cywgaWdub3JlKTsKIAkJcGwgPSBwbC0+bmV4dDsKIAl9CiAKKwljbXBfbG9jYWxfcGFja3MoKTsKKwogCW1pbmltaXplKCZtaW4pOwogCiAJaWYgKHZlcmJvc2UpIHsKQEAgLTY4OSw3ICs2NDEsNyBAQAogCXBsID0gcmVkID0gcGFja19saXN0X2RpZmZlcmVuY2UobG9jYWxfcGFja3MsIG1pbik7CiAJd2hpbGUgKHBsKSB7CiAJCXByaW50ZigiJXNcbiVzXG4iLAotCQkgICAgICAgc2hhMV9wYWNrX2luZGV4X25hbWUocGwtPnBhY2stPnNoYTEpLAorCQkgICAgICAgc2hhMV9wYWNrX2luZGV4X25hbWUocGwtPnBhY2stPmhhc2gpLAogCQkgICAgICAgcGwtPnBhY2stPnBhY2tfbmFtZSk7CiAJCXBsID0gcGwtPm5leHQ7CiAJfQpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9wYWNrLXJlZnMuYyBiL2J1aWx0aW4vcGFjay1yZWZzLmMKaW5kZXggZjMzNTM1Ni4uY2ZiZDVjMyAxMDA2NDQKLS0tIGEvYnVpbHRpbi9wYWNrLXJlZnMuYworKysgYi9idWlsdGluL3BhY2stcmVmcy5jCkBAIC0xLDQgKzEsNSBAQAogI2luY2x1ZGUgImJ1aWx0aW4uaCIKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJwYXJzZS1vcHRpb25zLmgiCiAjaW5jbHVkZSAicmVmcy5oIgogI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKQEAgLTE2LDYgKzE3LDcgQEAKIAkJT1BUX0JJVCgwLCAicHJ1bmUiLCAmZmxhZ3MsIE5fKCJwcnVuZSBsb29zZSByZWZzIChkZWZhdWx0KSIpLCBQQUNLX1JFRlNfUFJVTkUpLAogCQlPUFRfRU5EKCksCiAJfTsKKwlnaXRfY29uZmlnKGdpdF9kZWZhdWx0X2NvbmZpZywgTlVMTCk7CiAJaWYgKHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LCBvcHRzLCBwYWNrX3JlZnNfdXNhZ2UsIDApKQogCQl1c2FnZV93aXRoX29wdGlvbnMocGFja19yZWZzX3VzYWdlLCBvcHRzKTsKIAlyZXR1cm4gcmVmc19wYWNrX3JlZnMoZ2V0X21haW5fcmVmX3N0b3JlKHRoZV9yZXBvc2l0b3J5KSwgZmxhZ3MpOwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9wYXRjaC1pZC5jIGIvYnVpbHRpbi9wYXRjaC1pZC5jCmluZGV4IDk3MGQwZDMuLjgyMmZmZmYgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vcGF0Y2gtaWQuYworKysgYi9idWlsdGluL3BhdGNoLWlkLmMKQEAgLTEsMTUgKzEsMTIgQEAKKyNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgImJ1aWx0aW4uaCIKICNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJkaWZmLmgiCiAKIHN0YXRpYyB2b2lkIGZsdXNoX2N1cnJlbnRfaWQoaW50IHBhdGNobGVuLCBzdHJ1Y3Qgb2JqZWN0X2lkICppZCwgc3RydWN0IG9iamVjdF9pZCAqcmVzdWx0KQogewotCWNoYXIgbmFtZVs1MF07Ci0KLQlpZiAoIXBhdGNobGVuKQotCQlyZXR1cm47Ci0KLQltZW1jcHkobmFtZSwgb2lkX3RvX2hleChpZCksIEdJVF9TSEExX0hFWFNaICsgMSk7Ci0JcHJpbnRmKCIlcyAlc1xuIiwgb2lkX3RvX2hleChyZXN1bHQpLCBuYW1lKTsKKwlpZiAocGF0Y2hsZW4pCisJCXByaW50ZigiJXMgJXNcbiIsIG9pZF90b19oZXgocmVzdWx0KSwgb2lkX3RvX2hleChpZCkpOwogfQogCiBzdGF0aWMgaW50IHJlbW92ZV9zcGFjZShjaGFyICpsaW5lKQpAQCAtNTQsMzAgKzUxLDE0IEBACiAJcmV0dXJuIDE7CiB9CiAKLXN0YXRpYyB2b2lkIGZsdXNoX29uZV9odW5rKHN0cnVjdCBvYmplY3RfaWQgKnJlc3VsdCwgZ2l0X1NIQV9DVFggKmN0eCkKLXsKLQl1bnNpZ25lZCBjaGFyIGhhc2hbR0lUX01BWF9SQVdTWl07Ci0JdW5zaWduZWQgc2hvcnQgY2FycnkgPSAwOwotCWludCBpOwotCi0JZ2l0X1NIQTFfRmluYWwoaGFzaCwgY3R4KTsKLQlnaXRfU0hBMV9Jbml0KGN0eCk7Ci0JLyogMjAtYnl0ZSBzdW0sIHdpdGggY2FycnkgKi8KLQlmb3IgKGkgPSAwOyBpIDwgR0lUX1NIQTFfUkFXU1o7ICsraSkgewotCQljYXJyeSArPSByZXN1bHQtPmhhc2hbaV0gKyBoYXNoW2ldOwotCQlyZXN1bHQtPmhhc2hbaV0gPSBjYXJyeTsKLQkJY2FycnkgPj49IDg7Ci0JfQotfQotCiBzdGF0aWMgaW50IGdldF9vbmVfcGF0Y2hpZChzdHJ1Y3Qgb2JqZWN0X2lkICpuZXh0X29pZCwgc3RydWN0IG9iamVjdF9pZCAqcmVzdWx0LAogCQkJICAgc3RydWN0IHN0cmJ1ZiAqbGluZV9idWYsIGludCBzdGFibGUpCiB7CiAJaW50IHBhdGNobGVuID0gMCwgZm91bmRfbmV4dCA9IDA7CiAJaW50IGJlZm9yZSA9IC0xLCBhZnRlciA9IC0xOwotCWdpdF9TSEFfQ1RYIGN0eDsKKwlnaXRfaGFzaF9jdHggY3R4OwogCi0JZ2l0X1NIQTFfSW5pdCgmY3R4KTsKKwl0aGVfaGFzaF9hbGdvLT5pbml0X2ZuKCZjdHgpOwogCW9pZGNscihyZXN1bHQpOwogCiAJd2hpbGUgKHN0cmJ1Zl9nZXR3aG9sZWxpbmUobGluZV9idWYsIHN0ZGluLCAnXG4nKSAhPSBFT0YpIHsKQEAgLTEzNyw3ICsxMTgsNyBAQAogCQkvKiBDb21wdXRlIHRoZSBzaGEgd2l0aG91dCB3aGl0ZXNwYWNlICovCiAJCWxlbiA9IHJlbW92ZV9zcGFjZShsaW5lKTsKIAkJcGF0Y2hsZW4gKz0gbGVuOwotCQlnaXRfU0hBMV9VcGRhdGUoJmN0eCwgbGluZSwgbGVuKTsKKwkJdGhlX2hhc2hfYWxnby0+dXBkYXRlX2ZuKCZjdHgsIGxpbmUsIGxlbik7CiAJfQogCiAJaWYgKCFmb3VuZF9uZXh0KQpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9wcnVuZS1wYWNrZWQuYyBiL2J1aWx0aW4vcHJ1bmUtcGFja2VkLmMKaW5kZXggYTllN2I1NS4uNDhjNWU3OCAxMDA2NDQKLS0tIGEvYnVpbHRpbi9wcnVuZS1wYWNrZWQuYworKysgYi9idWlsdGluL3BydW5lLXBhY2tlZC5jCkBAIC02Myw2ICs2MywxMSBAQAogCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgcHJ1bmVfcGFja2VkX29wdGlvbnMsCiAJCQkgICAgIHBydW5lX3BhY2tlZF91c2FnZSwgMCk7CiAKKwlpZiAoYXJnYyA+IDApCisJCXVzYWdlX21zZ19vcHQoXygidG9vIG1hbnkgYXJndW1lbnRzIiksCisJCQkgICAgICBwcnVuZV9wYWNrZWRfdXNhZ2UsCisJCQkgICAgICBwcnVuZV9wYWNrZWRfb3B0aW9ucyk7CisKIAlwcnVuZV9wYWNrZWRfb2JqZWN0cyhvcHRzKTsKIAlyZXR1cm4gMDsKIH0KZGlmZiAtLWdpdCBhL2J1aWx0aW4vcHJ1bmUuYyBiL2J1aWx0aW4vcHJ1bmUuYwppbmRleCBlNDI2NTNiLi4yYjc2ODcyIDEwMDY0NAotLS0gYS9idWlsdGluL3BydW5lLmMKKysrIGIvYnVpbHRpbi9wcnVuZS5jCkBAIC0zMSwxNiArMzEsMzkgQEAKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIHZvaWQgcGVyZm9ybV9yZWFjaGFiaWxpdHlfdHJhdmVyc2FsKHN0cnVjdCByZXZfaW5mbyAqcmV2cykKK3sKKwlzdGF0aWMgaW50IGluaXRpYWxpemVkOworCXN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MgPSBOVUxMOworCisJaWYgKGluaXRpYWxpemVkKQorCQlyZXR1cm47CisKKwlpZiAoc2hvd19wcm9ncmVzcykKKwkJcHJvZ3Jlc3MgPSBzdGFydF9kZWxheWVkX3Byb2dyZXNzKF8oIkNoZWNraW5nIGNvbm5lY3Rpdml0eSIpLCAwKTsKKwltYXJrX3JlYWNoYWJsZV9vYmplY3RzKHJldnMsIDEsIGV4cGlyZSwgcHJvZ3Jlc3MpOworCXN0b3BfcHJvZ3Jlc3MoJnByb2dyZXNzKTsKKwlpbml0aWFsaXplZCA9IDE7Cit9CisKK3N0YXRpYyBpbnQgaXNfb2JqZWN0X3JlYWNoYWJsZShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkgICAgICAgc3RydWN0IHJldl9pbmZvICpyZXZzKQoreworCXN0cnVjdCBvYmplY3QgKm9iajsKKworCXBlcmZvcm1fcmVhY2hhYmlsaXR5X3RyYXZlcnNhbChyZXZzKTsKKworCW9iaiA9IGxvb2t1cF9vYmplY3QodGhlX3JlcG9zaXRvcnksIG9pZCk7CisJcmV0dXJuIG9iaiAmJiAob2JqLT5mbGFncyAmIFNFRU4pOworfQorCiBzdGF0aWMgaW50IHBydW5lX29iamVjdChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGNvbnN0IGNoYXIgKmZ1bGxwYXRoLAogCQkJdm9pZCAqZGF0YSkKIHsKKwlzdHJ1Y3QgcmV2X2luZm8gKnJldnMgPSBkYXRhOwogCXN0cnVjdCBzdGF0IHN0OwogCi0JLyoKLQkgKiBEbyB3ZSBrbm93IGFib3V0IHRoaXMgb2JqZWN0PwotCSAqIEl0IG11c3QgaGF2ZSBiZWVuIHJlYWNoYWJsZQotCSAqLwotCWlmIChsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBvaWQtPmhhc2gpKQorCWlmIChpc19vYmplY3RfcmVhY2hhYmxlKG9pZCwgcmV2cykpCiAJCXJldHVybiAwOwogCiAJaWYgKGxzdGF0KGZ1bGxwYXRoLCAmc3QpKSB7CkBAIC0xMDIsNyArMTI1LDYgQEAKIGludCBjbWRfcHJ1bmUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCiB7CiAJc3RydWN0IHJldl9pbmZvIHJldnM7Ci0Jc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcyA9IE5VTEw7CiAJaW50IGV4Y2x1ZGVfcHJvbWlzb3Jfb2JqZWN0cyA9IDA7CiAJY29uc3Qgc3RydWN0IG9wdGlvbiBvcHRpb25zW10gPSB7CiAJCU9QVF9fRFJZX1JVTigmc2hvd19vbmx5LCBOXygiZG8gbm90IHJlbW92ZSwgc2hvdyBvbmx5IikpLApAQCAtMTIwLDcgKzE0Miw2IEBACiAJc2F2ZV9jb21taXRfYnVmZmVyID0gMDsKIAlyZWFkX3JlcGxhY2VfcmVmcyA9IDA7CiAJcmVmX3BhcmFub2lhID0gMTsKLQlyZXZzLmFsbG93X2V4Y2x1ZGVfcHJvbWlzb3Jfb2JqZWN0c19vcHQgPSAxOwogCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksICZyZXZzLCBwcmVmaXgpOwogCiAJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LCBvcHRpb25zLCBwcnVuZV91c2FnZSwgMCk7CkBAIC0xNDMsMTcgKzE2NCwxMyBAQAogCiAJaWYgKHNob3dfcHJvZ3Jlc3MgPT0gLTEpCiAJCXNob3dfcHJvZ3Jlc3MgPSBpc2F0dHkoMik7Ci0JaWYgKHNob3dfcHJvZ3Jlc3MpCi0JCXByb2dyZXNzID0gc3RhcnRfZGVsYXllZF9wcm9ncmVzcyhfKCJDaGVja2luZyBjb25uZWN0aXZpdHkiKSwgMCk7CiAJaWYgKGV4Y2x1ZGVfcHJvbWlzb3Jfb2JqZWN0cykgewogCQlmZXRjaF9pZl9taXNzaW5nID0gMDsKIAkJcmV2cy5leGNsdWRlX3Byb21pc29yX29iamVjdHMgPSAxOwogCX0KIAotCW1hcmtfcmVhY2hhYmxlX29iamVjdHMoJnJldnMsIDEsIGV4cGlyZSwgcHJvZ3Jlc3MpOwotCXN0b3BfcHJvZ3Jlc3MoJnByb2dyZXNzKTsKIAlmb3JfZWFjaF9sb29zZV9maWxlX2luX29iamRpcihnZXRfb2JqZWN0X2RpcmVjdG9yeSgpLCBwcnVuZV9vYmplY3QsCi0JCQkJICAgICAgcHJ1bmVfY3J1ZnQsIHBydW5lX3N1YmRpciwgTlVMTCk7CisJCQkJICAgICAgcHJ1bmVfY3J1ZnQsIHBydW5lX3N1YmRpciwgJnJldnMpOwogCiAJcHJ1bmVfcGFja2VkX29iamVjdHMoc2hvd19vbmx5ID8gUFJVTkVfUEFDS0VEX0RSWV9SVU4gOiAwKTsKIAlyZW1vdmVfdGVtcG9yYXJ5X2ZpbGVzKGdldF9vYmplY3RfZGlyZWN0b3J5KCkpOwpAQCAtMTYxLDggKzE3OCwxMCBAQAogCXJlbW92ZV90ZW1wb3JhcnlfZmlsZXMocyk7CiAJZnJlZShzKTsKIAotCWlmIChpc19yZXBvc2l0b3J5X3NoYWxsb3codGhlX3JlcG9zaXRvcnkpKQorCWlmIChpc19yZXBvc2l0b3J5X3NoYWxsb3codGhlX3JlcG9zaXRvcnkpKSB7CisJCXBlcmZvcm1fcmVhY2hhYmlsaXR5X3RyYXZlcnNhbCgmcmV2cyk7CiAJCXBydW5lX3NoYWxsb3coc2hvd19vbmx5ID8gUFJVTkVfU0hPV19PTkxZIDogMCk7CisJfQogCiAJcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9idWlsdGluL3B1bGwuYyBiL2J1aWx0aW4vcHVsbC5jCmluZGV4IDFiOTA2MjIuLjNlNjI0ZDEgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vcHVsbC5jCisrKyBiL2J1aWx0aW4vcHVsbC5jCkBAIC01LDYgKzUsNyBAQAogICoKICAqIEZldGNoIG9uZSBvciBtb3JlIHJlbW90ZSByZWZzIGFuZCBtZXJnZSBpdC90aGVtIGludG8gdGhlIGN1cnJlbnQgSEVBRC4KICAqLworI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJidWlsdGluLmgiCkBAIC0xNCw2ICsxNSw3IEBACiAjaW5jbHVkZSAic2hhMS1hcnJheS5oIgogI2luY2x1ZGUgInJlbW90ZS5oIgogI2luY2x1ZGUgImRpci5oIgorI2luY2x1ZGUgInJlYmFzZS5oIgogI2luY2x1ZGUgInJlZnMuaCIKICNpbmNsdWRlICJyZWZzcGVjLmgiCiAjaW5jbHVkZSAicmV2aXNpb24uaCIKQEAgLTIzLDE1ICsyNSw3IEBACiAjaW5jbHVkZSAibG9ja2ZpbGUuaCIKICNpbmNsdWRlICJ3dC1zdGF0dXMuaCIKICNpbmNsdWRlICJjb21taXQtcmVhY2guaCIKLQotZW51bSByZWJhc2VfdHlwZSB7Ci0JUkVCQVNFX0lOVkFMSUQgPSAtMSwKLQlSRUJBU0VfRkFMU0UgPSAwLAotCVJFQkFTRV9UUlVFLAotCVJFQkFTRV9QUkVTRVJWRSwKLQlSRUJBU0VfTUVSR0VTLAotCVJFQkFTRV9JTlRFUkFDVElWRQotfTsKKyNpbmNsdWRlICJzZXF1ZW5jZXIuaCIKIAogLyoqCiAgKiBQYXJzZXMgdGhlIHZhbHVlIG9mIC0tcmViYXNlLiBJZiB2YWx1ZSBpcyBhIGZhbHNlIHZhbHVlLCByZXR1cm5zCkBAIC00MywxOCArMzcsOSBAQAogc3RhdGljIGVudW0gcmViYXNlX3R5cGUgcGFyc2VfY29uZmlnX3JlYmFzZShjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKnZhbHVlLAogCQlpbnQgZmF0YWwpCiB7Ci0JaW50IHYgPSBnaXRfcGFyc2VfbWF5YmVfYm9vbCh2YWx1ZSk7Ci0KLQlpZiAoIXYpCi0JCXJldHVybiBSRUJBU0VfRkFMU0U7Ci0JZWxzZSBpZiAodiA+IDApCi0JCXJldHVybiBSRUJBU0VfVFJVRTsKLQllbHNlIGlmICghc3RyY21wKHZhbHVlLCAicHJlc2VydmUiKSB8fCAhc3RyY21wKHZhbHVlLCAicCIpKQotCQlyZXR1cm4gUkVCQVNFX1BSRVNFUlZFOwotCWVsc2UgaWYgKCFzdHJjbXAodmFsdWUsICJtZXJnZXMiKSB8fCAhc3RyY21wKHZhbHVlLCAibSIpKQotCQlyZXR1cm4gUkVCQVNFX01FUkdFUzsKLQllbHNlIGlmICghc3RyY21wKHZhbHVlLCAiaW50ZXJhY3RpdmUiKSB8fCAhc3RyY21wKHZhbHVlLCAiaSIpKQotCQlyZXR1cm4gUkVCQVNFX0lOVEVSQUNUSVZFOworCWVudW0gcmViYXNlX3R5cGUgdiA9IHJlYmFzZV9wYXJzZV92YWx1ZSh2YWx1ZSk7CisJaWYgKHYgIT0gUkVCQVNFX0lOVkFMSUQpCisJCXJldHVybiB2OwogCiAJaWYgKGZhdGFsKQogCQlkaWUoXygiSW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIiksIGtleSwgdmFsdWUpOwpAQCAtOTYsMTAgKzgxLDEyIEBACiBzdGF0aWMgY2hhciAqb3B0X3NxdWFzaDsKIHN0YXRpYyBjaGFyICpvcHRfY29tbWl0Owogc3RhdGljIGNoYXIgKm9wdF9lZGl0Oworc3RhdGljIGNoYXIgKmNsZWFudXBfYXJnOwogc3RhdGljIGNoYXIgKm9wdF9mZjsKIHN0YXRpYyBjaGFyICpvcHRfdmVyaWZ5X3NpZ25hdHVyZXM7CiBzdGF0aWMgaW50IG9wdF9hdXRvc3Rhc2ggPSAtMTsKIHN0YXRpYyBpbnQgY29uZmlnX2F1dG9zdGFzaDsKK3N0YXRpYyBpbnQgY2hlY2tfdHJ1c3RfbGV2ZWwgPSAxOwogc3RhdGljIHN0cnVjdCBhcmd2X2FycmF5IG9wdF9zdHJhdGVnaWVzID0gQVJHVl9BUlJBWV9JTklUOwogc3RhdGljIHN0cnVjdCBhcmd2X2FycmF5IG9wdF9zdHJhdGVneV9vcHRzID0gQVJHVl9BUlJBWV9JTklUOwogc3RhdGljIGNoYXIgKm9wdF9ncGdfc2lnbjsKQEAgLTEyMSw2ICsxMDgsOCBAQAogc3RhdGljIGNoYXIgKm9wdF9yZWZtYXA7CiBzdGF0aWMgY2hhciAqb3B0X2lwdjQ7CiBzdGF0aWMgY2hhciAqb3B0X2lwdjY7CitzdGF0aWMgaW50IG9wdF9zaG93X2ZvcmNlZF91cGRhdGVzID0gLTE7CitzdGF0aWMgY2hhciAqc2V0X3Vwc3RyZWFtOwogCiBzdGF0aWMgc3RydWN0IG9wdGlvbiBwdWxsX29wdGlvbnNbXSA9IHsKIAkvKiBTaGFyZWQgb3B0aW9ucyAqLwpAQCAtMTYzLDYgKzE1Miw3IEBACiAJT1BUX1BBU1NUSFJVKDAsICJlZGl0IiwgJm9wdF9lZGl0LCBOVUxMLAogCQlOXygiZWRpdCBtZXNzYWdlIGJlZm9yZSBjb21taXR0aW5nIiksCiAJCVBBUlNFX09QVF9OT0FSRyksCisJT1BUX0NMRUFOVVAoJmNsZWFudXBfYXJnKSwKIAlPUFRfUEFTU1RIUlUoMCwgImZmIiwgJm9wdF9mZiwgTlVMTCwKIAkJTl8oImFsbG93IGZhc3QtZm9yd2FyZCIpLAogCQlQQVJTRV9PUFRfTk9BUkcpLApAQCAtMjMyLDYgKzIyMiwxMSBAQAogCU9QVF9QQVNTVEhSVSgnNicsICAiaXB2NiIsICZvcHRfaXB2NiwgTlVMTCwKIAkJTl8oInVzZSBJUHY2IGFkZHJlc3NlcyBvbmx5IiksCiAJCVBBUlNFX09QVF9OT0FSRyksCisJT1BUX0JPT0woMCwgInNob3ctZm9yY2VkLXVwZGF0ZXMiLCAmb3B0X3Nob3dfZm9yY2VkX3VwZGF0ZXMsCisJCSBOXygiY2hlY2sgZm9yIGZvcmNlZC11cGRhdGVzIG9uIGFsbCB1cGRhdGVkIGJyYW5jaGVzIikpLAorCU9QVF9QQVNTVEhSVSgwLCAic2V0LXVwc3RyZWFtIiwgJnNldF91cHN0cmVhbSwgTlVMTCwKKwkJTl8oInNldCB1cHN0cmVhbSBmb3IgZ2l0IHB1bGwvZmV0Y2giKSwKKwkJUEFSU0VfT1BUX05PQVJHKSwKIAogCU9QVF9FTkQoKQogfTsKQEAgLTM0MCw2ICszMzUsOCBAQAogICovCiBzdGF0aWMgaW50IGdpdF9wdWxsX2NvbmZpZyhjb25zdCBjaGFyICp2YXIsIGNvbnN0IGNoYXIgKnZhbHVlLCB2b2lkICpjYikKIHsKKwlpbnQgc3RhdHVzOworCiAJaWYgKCFzdHJjbXAodmFyLCAicmViYXNlLmF1dG9zdGFzaCIpKSB7CiAJCWNvbmZpZ19hdXRvc3Rhc2ggPSBnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSk7CiAJCXJldHVybiAwOwpAQCAtMzQ3LDcgKzM0NCwxNCBAQAogCQlyZWN1cnNlX3N1Ym1vZHVsZXMgPSBnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSkgPwogCQkJUkVDVVJTRV9TVUJNT0RVTEVTX09OIDogUkVDVVJTRV9TVUJNT0RVTEVTX09GRjsKIAkJcmV0dXJuIDA7CisJfSBlbHNlIGlmICghc3RyY21wKHZhciwgImdwZy5taW50cnVzdGxldmVsIikpIHsKKwkJY2hlY2tfdHJ1c3RfbGV2ZWwgPSAwOwogCX0KKworCXN0YXR1cyA9IGdpdF9ncGdfY29uZmlnKHZhciwgdmFsdWUsIGNiKTsKKwlpZiAoc3RhdHVzKQorCQlyZXR1cm4gc3RhdHVzOworCiAJcmV0dXJuIGdpdF9kZWZhdWx0X2NvbmZpZyh2YXIsIHZhbHVlLCBjYik7CiB9CiAKQEAgLTM2NCw5ICszNjgsMTAgQEAKIAogCWZwID0geGZvcGVuKGZpbGVuYW1lLCAiciIpOwogCXdoaWxlIChzdHJidWZfZ2V0bGluZV9sZigmc2IsIGZwKSAhPSBFT0YpIHsKLQkJaWYgKGdldF9vaWRfaGV4KHNiLmJ1ZiwgJm9pZCkpCi0JCQljb250aW51ZTsgIC8qIGludmFsaWQgbGluZTogZG9lcyBub3Qgc3RhcnQgd2l0aCBTSEExICovCi0JCWlmIChzdGFydHNfd2l0aChzYi5idWYgKyBHSVRfU0hBMV9IRVhTWiwgIlx0bm90LWZvci1tZXJnZVx0IikpCisJCWNvbnN0IGNoYXIgKnA7CisJCWlmIChwYXJzZV9vaWRfaGV4KHNiLmJ1ZiwgJm9pZCwgJnApKQorCQkJY29udGludWU7ICAvKiBpbnZhbGlkIGxpbmU6IGRvZXMgbm90IHN0YXJ0IHdpdGggb2JqZWN0IElEICovCisJCWlmIChzdGFydHNfd2l0aChwLCAiXHRub3QtZm9yLW1lcmdlXHQiKSkKIAkJCWNvbnRpbnVlOyAgLyogcmVmIGlzIG5vdC1mb3ItbWVyZ2UgKi8KIAkJb2lkX2FycmF5X2FwcGVuZChtZXJnZV9oZWFkcywgJm9pZCk7CiAJfQpAQCAtNTQwLDYgKzU0NSwxMiBAQAogCQlhcmd2X2FycmF5X3B1c2goJmFyZ3MsIG9wdF9pcHY0KTsKIAlpZiAob3B0X2lwdjYpCiAJCWFyZ3ZfYXJyYXlfcHVzaCgmYXJncywgb3B0X2lwdjYpOworCWlmIChvcHRfc2hvd19mb3JjZWRfdXBkYXRlcyA+IDApCisJCWFyZ3ZfYXJyYXlfcHVzaCgmYXJncywgIi0tc2hvdy1mb3JjZWQtdXBkYXRlcyIpOworCWVsc2UgaWYgKG9wdF9zaG93X2ZvcmNlZF91cGRhdGVzID09IDApCisJCWFyZ3ZfYXJyYXlfcHVzaCgmYXJncywgIi0tbm8tc2hvdy1mb3JjZWQtdXBkYXRlcyIpOworCWlmIChzZXRfdXBzdHJlYW0pCisJCWFyZ3ZfYXJyYXlfcHVzaCgmYXJncywgc2V0X3Vwc3RyZWFtKTsKIAogCWlmIChyZXBvKSB7CiAJCWFyZ3ZfYXJyYXlfcHVzaCgmYXJncywgcmVwbyk7CkBAIC01NjUsNyArNTc2LDggQEAKIAkJCWRpZShfKCJ1bmFibGUgdG8gYWNjZXNzIGNvbW1pdCAlcyIpLAogCQkJICAgIG9pZF90b19oZXgobWVyZ2VfaGVhZCkpOwogCi0JCXZlcmlmeV9tZXJnZV9zaWduYXR1cmUoY29tbWl0LCBvcHRfdmVyYm9zaXR5KTsKKwkJdmVyaWZ5X21lcmdlX3NpZ25hdHVyZShjb21taXQsIG9wdF92ZXJib3NpdHksCisJCQkJICAgICAgIGNoZWNrX3RydXN0X2xldmVsKTsKIAl9CiAKIAkvKgpAQCAtNjM5LDYgKzY1MSw4IEBACiAJCWFyZ3ZfYXJyYXlfcHVzaCgmYXJncywgb3B0X2NvbW1pdCk7CiAJaWYgKG9wdF9lZGl0KQogCQlhcmd2X2FycmF5X3B1c2goJmFyZ3MsIG9wdF9lZGl0KTsKKwlpZiAoY2xlYW51cF9hcmcpCisJCWFyZ3ZfYXJyYXlfcHVzaGYoJmFyZ3MsICItLWNsZWFudXA9JXMiLCBjbGVhbnVwX2FyZyk7CiAJaWYgKG9wdF9mZikKIAkJYXJndl9hcnJheV9wdXNoKCZhcmdzLCBvcHRfZmYpOwogCWlmIChvcHRfdmVyaWZ5X3NpZ25hdHVyZXMpCkBAIC03NTUsNyArNzY5LDcgQEAKIAljcC5ub19zdGRlcnIgPSAxOwogCWNwLmdpdF9jbWQgPSAxOwogCi0JcmV0ID0gY2FwdHVyZV9jb21tYW5kKCZjcCwgJnNiLCBHSVRfU0hBMV9IRVhTWik7CisJcmV0ID0gY2FwdHVyZV9jb21tYW5kKCZjcCwgJnNiLCBHSVRfTUFYX0hFWFNaKTsKIAlpZiAocmV0KQogCQlnb3RvIGNsZWFudXA7CiAKQEAgLTgwMCw3ICs4MTQsNyBAQAogfQogCiAvKioKLSAqIEdpdmVuIHRoZSBjdXJyZW50IEhFQUQgU0hBMSwgdGhlIG1lcmdlIGhlYWQgcmV0dXJuZWQgZnJvbSBnaXQtZmV0Y2ggYW5kIHRoZQorICogR2l2ZW4gdGhlIGN1cnJlbnQgSEVBRCBvaWQsIHRoZSBtZXJnZSBoZWFkIHJldHVybmVkIGZyb20gZ2l0LWZldGNoIGFuZCB0aGUKICAqIGZvcmsgcG9pbnQgY2FsY3VsYXRlZCBieSBnZXRfcmViYXNlX2ZvcmtfcG9pbnQoKSwgcnVucyBnaXQtcmViYXNlIHdpdGggdGhlCiAgKiBhcHByb3ByaWF0ZSBhcmd1bWVudHMgYW5kIHJldHVybnMgaXRzIGV4aXQgc3RhdHVzLgogICovCkBAIC04NzAsNiArODg0LDEzIEBACiAKIAlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsIHB1bGxfb3B0aW9ucywgcHVsbF91c2FnZSwgMCk7CiAKKwlpZiAoY2xlYW51cF9hcmcpCisJCS8qCisJCSAqIHRoaXMgb25seSBjaGVja3MgdGhlIHZhbGlkaXR5IG9mIGNsZWFudXBfYXJnOyB3ZSBkb24ndCBuZWVkCisJCSAqIGEgdmFsaWQgdmFsdWUgZm9yIHVzZV9lZGl0b3IKKwkJICovCisJCWdldF9jbGVhbnVwX21vZGUoY2xlYW51cF9hcmcsIDApOworCiAJcGFyc2VfcmVwb19yZWZzcGVjcyhhcmdjLCBhcmd2LCAmcmVwbywgJnJlZnNwZWNzKTsKIAogCWlmICghb3B0X2ZmKQpAQCAtODk5LDcgKzkyMCw4IEBACiAJCQlkaWUoXygiVXBkYXRpbmcgYW4gdW5ib3JuIGJyYW5jaCB3aXRoIGNoYW5nZXMgYWRkZWQgdG8gdGhlIGluZGV4LiIpKTsKIAogCQlpZiAoIWF1dG9zdGFzaCkKLQkJCXJlcXVpcmVfY2xlYW5fd29ya190cmVlKE5fKCJwdWxsIHdpdGggcmViYXNlIiksCisJCQlyZXF1aXJlX2NsZWFuX3dvcmtfdHJlZSh0aGVfcmVwb3NpdG9yeSwKKwkJCQlOXygicHVsbCB3aXRoIHJlYmFzZSIpLAogCQkJCV8oInBsZWFzZSBjb21taXQgb3Igc3Rhc2ggdGhlbS4iKSwgMSwgMCk7CiAKIAkJaWYgKGdldF9yZWJhc2VfZm9ya19wb2ludCgmcmViYXNlX2ZvcmtfcG9pbnQsIHJlcG8sICpyZWZzcGVjcykpCmRpZmYgLS1naXQgYS9idWlsdGluL3B1c2guYyBiL2J1aWx0aW4vcHVzaC5jCmluZGV4IDhiYjhhMDguLjZkYmYwZjAgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vcHVzaC5jCisrKyBiL2J1aWx0aW4vcHVzaC5jCkBAIC02NCw2ICs2NCw3IEBACiBzdGF0aWMgY29uc3QgY2hhciAqbWFwX3JlZnNwZWMoY29uc3QgY2hhciAqcmVmLAogCQkJICAgICAgIHN0cnVjdCByZW1vdGUgKnJlbW90ZSwgc3RydWN0IHJlZiAqbG9jYWxfcmVmcykKIHsKKwljb25zdCBjaGFyICpicmFuY2hfbmFtZTsKIAlzdHJ1Y3QgcmVmICptYXRjaGVkID0gTlVMTDsKIAogCS8qIERvZXMgInJlZiIgdW5pcXVlbHkgbmFtZSBvdXIgcmVmPyAqLwpAQCAtODQsOCArODUsOCBAQAogCX0KIAogCWlmIChwdXNoX2RlZmF1bHQgPT0gUFVTSF9ERUZBVUxUX1VQU1RSRUFNICYmCi0JICAgIHN0YXJ0c193aXRoKG1hdGNoZWQtPm5hbWUsICJyZWZzL2hlYWRzLyIpKSB7Ci0JCXN0cnVjdCBicmFuY2ggKmJyYW5jaCA9IGJyYW5jaF9nZXQobWF0Y2hlZC0+bmFtZSArIDExKTsKKwkgICAgc2tpcF9wcmVmaXgobWF0Y2hlZC0+bmFtZSwgInJlZnMvaGVhZHMvIiwgJmJyYW5jaF9uYW1lKSkgeworCQlzdHJ1Y3QgYnJhbmNoICpicmFuY2ggPSBicmFuY2hfZ2V0KGJyYW5jaF9uYW1lKTsKIAkJaWYgKGJyYW5jaC0+bWVyZ2VfbnIgPT0gMSAmJiBicmFuY2gtPm1lcmdlWzBdLT5zcmMpIHsKIAkJCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CiAJCQlzdHJidWZfYWRkZigmYnVmLCAiJXM6JXMiLApAQCAtMTQzLDcgKzE0NCw5IEBACiAJcmV0dXJuIHJlbW90ZS0+dXJsX25yOwogfQogCi1zdGF0aWMgTk9SRVRVUk4gaW50IGRpZV9wdXNoX3NpbXBsZShzdHJ1Y3QgYnJhbmNoICpicmFuY2gsIHN0cnVjdCByZW1vdGUgKnJlbW90ZSkgeworc3RhdGljIE5PUkVUVVJOIHZvaWQgZGllX3B1c2hfc2ltcGxlKHN0cnVjdCBicmFuY2ggKmJyYW5jaCwKKwkJCQkgICAgIHN0cnVjdCByZW1vdGUgKnJlbW90ZSkKK3sKIAkvKgogCSAqIFRoZXJlJ3Mgbm8gcG9pbnQgaW4gdXNpbmcgc2hvcnRlbl91bmFtYmlndW91c19yZWYgaGVyZSwKIAkgKiBhcyB0aGUgYW1iaWd1aXR5IHdvdWxkIGJlIG9uIHRoZSByZW1vdGUgc2lkZSwgbm90IHdoYXQKQEAgLTM1NSw3ICszNTgsMTAgQEAKIAogCWlmICh2ZXJib3NpdHkgPiAwKQogCQlmcHJpbnRmKHN0ZGVyciwgXygiUHVzaGluZyB0byAlc1xuIiksIHRyYW5zcG9ydC0+dXJsKTsKLQllcnIgPSB0cmFuc3BvcnRfcHVzaCh0cmFuc3BvcnQsIHJzLCBmbGFncywgJnJlamVjdF9yZWFzb25zKTsKKwl0cmFjZTJfcmVnaW9uX2VudGVyKCJwdXNoIiwgInRyYW5zcG9ydF9wdXNoIiwgdGhlX3JlcG9zaXRvcnkpOworCWVyciA9IHRyYW5zcG9ydF9wdXNoKHRoZV9yZXBvc2l0b3J5LCB0cmFuc3BvcnQsCisJCQkgICAgIHJzLCBmbGFncywgJnJlamVjdF9yZWFzb25zKTsKKwl0cmFjZTJfcmVnaW9uX2xlYXZlKCJwdXNoIiwgInRyYW5zcG9ydF9wdXNoIiwgdGhlX3JlcG9zaXRvcnkpOwogCWlmIChlcnIgIT0gMCkgewogCQlmcHJpbnRmKHN0ZGVyciwgIiVzIiwgcHVzaF9nZXRfY29sb3IoUFVTSF9DT0xPUl9FUlJPUikpOwogCQllcnJvcihfKCJmYWlsZWQgdG8gcHVzaCBzb21lIHJlZnMgdG8gJyVzJyIpLCB0cmFuc3BvcnQtPnVybCk7CkBAIC0zODIsMzAgKzM4OCwxNCBAQAogfQogCiBzdGF0aWMgaW50IGRvX3B1c2goY29uc3QgY2hhciAqcmVwbywgaW50IGZsYWdzLAotCQkgICBjb25zdCBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKnB1c2hfb3B0aW9ucykKKwkJICAgY29uc3Qgc3RydWN0IHN0cmluZ19saXN0ICpwdXNoX29wdGlvbnMsCisJCSAgIHN0cnVjdCByZW1vdGUgKnJlbW90ZSkKIHsKIAlpbnQgaSwgZXJyczsKLQlzdHJ1Y3QgcmVtb3RlICpyZW1vdGUgPSBwdXNocmVtb3RlX2dldChyZXBvKTsKIAljb25zdCBjaGFyICoqdXJsOwogCWludCB1cmxfbnI7CiAJc3RydWN0IHJlZnNwZWMgKnB1c2hfcmVmc3BlYyA9ICZyczsKIAotCWlmICghcmVtb3RlKSB7Ci0JCWlmIChyZXBvKQotCQkJZGllKF8oImJhZCByZXBvc2l0b3J5ICclcyciKSwgcmVwbyk7Ci0JCWRpZShfKCJObyBjb25maWd1cmVkIHB1c2ggZGVzdGluYXRpb24uXG4iCi0JCSAgICAiRWl0aGVyIHNwZWNpZnkgdGhlIFVSTCBmcm9tIHRoZSBjb21tYW5kLWxpbmUgb3IgY29uZmlndXJlIGEgcmVtb3RlIHJlcG9zaXRvcnkgdXNpbmdcbiIKLQkJICAgICJcbiIKLQkJICAgICIgICAgZ2l0IHJlbW90ZSBhZGQgPG5hbWU+IDx1cmw+XG4iCi0JCSAgICAiXG4iCi0JCSAgICAiYW5kIHRoZW4gcHVzaCB1c2luZyB0aGUgcmVtb3RlIG5hbWVcbiIKLQkJICAgICJcbiIKLQkJICAgICIgICAgZ2l0IHB1c2ggPG5hbWU+XG4iKSk7Ci0JfQotCi0JaWYgKHJlbW90ZS0+bWlycm9yKQotCQlmbGFncyB8PSAoVFJBTlNQT1JUX1BVU0hfTUlSUk9SfFRSQU5TUE9SVF9QVVNIX0ZPUkNFKTsKLQogCWlmIChwdXNoX29wdGlvbnMtPm5yKQogCQlmbGFncyB8PSBUUkFOU1BPUlRfUFVTSF9PUFRJT05TOwogCkBAIC01NDUsNiArNTM1LDcgQEAKIAlzdHJ1Y3Qgc3RyaW5nX2xpc3QgcHVzaF9vcHRpb25zX2NtZGxpbmUgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKIAlzdHJ1Y3Qgc3RyaW5nX2xpc3QgKnB1c2hfb3B0aW9uczsKIAljb25zdCBzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqaXRlbTsKKwlzdHJ1Y3QgcmVtb3RlICpyZW1vdGU7CiAKIAlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKIAkJT1BUX19WRVJCT1NJVFkoJnZlcmJvc2l0eSksCkBAIC01OTksMjAgKzU5MCw2IEBACiAJCWRpZShfKCItLWRlbGV0ZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1taXJyb3IgYW5kIC0tdGFncyIpKTsKIAlpZiAoZGVsZXRlcmVmcyAmJiBhcmdjIDwgMikKIAkJZGllKF8oIi0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSB3aXRob3V0IGFueSByZWZzIikpOwotCWlmIChmbGFncyAmIFRSQU5TUE9SVF9QVVNIX0FMTCkgewotCQlpZiAodGFncykKLQkJCWRpZShfKCItLWFsbCBhbmQgLS10YWdzIGFyZSBpbmNvbXBhdGlibGUiKSk7Ci0JCWlmIChhcmdjID49IDIpCi0JCQlkaWUoXygiLS1hbGwgY2FuJ3QgYmUgY29tYmluZWQgd2l0aCByZWZzcGVjcyIpKTsKLQl9Ci0JaWYgKGZsYWdzICYgVFJBTlNQT1JUX1BVU0hfTUlSUk9SKSB7Ci0JCWlmICh0YWdzKQotCQkJZGllKF8oIi0tbWlycm9yIGFuZCAtLXRhZ3MgYXJlIGluY29tcGF0aWJsZSIpKTsKLQkJaWYgKGFyZ2MgPj0gMikKLQkJCWRpZShfKCItLW1pcnJvciBjYW4ndCBiZSBjb21iaW5lZCB3aXRoIHJlZnNwZWNzIikpOwotCX0KLQlpZiAoKGZsYWdzICYgVFJBTlNQT1JUX1BVU0hfQUxMKSAmJiAoZmxhZ3MgJiBUUkFOU1BPUlRfUFVTSF9NSVJST1IpKQotCQlkaWUoXygiLS1hbGwgYW5kIC0tbWlycm9yIGFyZSBpbmNvbXBhdGlibGUiKSk7CiAKIAlpZiAocmVjdXJzZV9zdWJtb2R1bGVzID09IFJFQ1VSU0VfU1VCTU9EVUxFU19DSEVDSykKIAkJZmxhZ3MgfD0gVFJBTlNQT1JUX1JFQ1VSU0VfU1VCTU9EVUxFU19DSEVDSzsKQEAgLTYyOSwxMSArNjA2LDQzIEBACiAJCXNldF9yZWZzcGVjcyhhcmd2ICsgMSwgYXJnYyAtIDEsIHJlcG8pOwogCX0KIAorCXJlbW90ZSA9IHB1c2hyZW1vdGVfZ2V0KHJlcG8pOworCWlmICghcmVtb3RlKSB7CisJCWlmIChyZXBvKQorCQkJZGllKF8oImJhZCByZXBvc2l0b3J5ICclcyciKSwgcmVwbyk7CisJCWRpZShfKCJObyBjb25maWd1cmVkIHB1c2ggZGVzdGluYXRpb24uXG4iCisJCSAgICAiRWl0aGVyIHNwZWNpZnkgdGhlIFVSTCBmcm9tIHRoZSBjb21tYW5kLWxpbmUgb3IgY29uZmlndXJlIGEgcmVtb3RlIHJlcG9zaXRvcnkgdXNpbmdcbiIKKwkJICAgICJcbiIKKwkJICAgICIgICAgZ2l0IHJlbW90ZSBhZGQgPG5hbWU+IDx1cmw+XG4iCisJCSAgICAiXG4iCisJCSAgICAiYW5kIHRoZW4gcHVzaCB1c2luZyB0aGUgcmVtb3RlIG5hbWVcbiIKKwkJICAgICJcbiIKKwkJICAgICIgICAgZ2l0IHB1c2ggPG5hbWU+XG4iKSk7CisJfQorCisJaWYgKHJlbW90ZS0+bWlycm9yKQorCQlmbGFncyB8PSAoVFJBTlNQT1JUX1BVU0hfTUlSUk9SfFRSQU5TUE9SVF9QVVNIX0ZPUkNFKTsKKworCWlmIChmbGFncyAmIFRSQU5TUE9SVF9QVVNIX0FMTCkgeworCQlpZiAodGFncykKKwkJCWRpZShfKCItLWFsbCBhbmQgLS10YWdzIGFyZSBpbmNvbXBhdGlibGUiKSk7CisJCWlmIChhcmdjID49IDIpCisJCQlkaWUoXygiLS1hbGwgY2FuJ3QgYmUgY29tYmluZWQgd2l0aCByZWZzcGVjcyIpKTsKKwl9CisJaWYgKGZsYWdzICYgVFJBTlNQT1JUX1BVU0hfTUlSUk9SKSB7CisJCWlmICh0YWdzKQorCQkJZGllKF8oIi0tbWlycm9yIGFuZCAtLXRhZ3MgYXJlIGluY29tcGF0aWJsZSIpKTsKKwkJaWYgKGFyZ2MgPj0gMikKKwkJCWRpZShfKCItLW1pcnJvciBjYW4ndCBiZSBjb21iaW5lZCB3aXRoIHJlZnNwZWNzIikpOworCX0KKwlpZiAoKGZsYWdzICYgVFJBTlNQT1JUX1BVU0hfQUxMKSAmJiAoZmxhZ3MgJiBUUkFOU1BPUlRfUFVTSF9NSVJST1IpKQorCQlkaWUoXygiLS1hbGwgYW5kIC0tbWlycm9yIGFyZSBpbmNvbXBhdGlibGUiKSk7CisKIAlmb3JfZWFjaF9zdHJpbmdfbGlzdF9pdGVtKGl0ZW0sIHB1c2hfb3B0aW9ucykKIAkJaWYgKHN0cmNocihpdGVtLT5zdHJpbmcsICdcbicpKQogCQkJZGllKF8oInB1c2ggb3B0aW9ucyBtdXN0IG5vdCBoYXZlIG5ldyBsaW5lIGNoYXJhY3RlcnMiKSk7CiAKLQlyYyA9IGRvX3B1c2gocmVwbywgZmxhZ3MsIHB1c2hfb3B0aW9ucyk7CisJcmMgPSBkb19wdXNoKHJlcG8sIGZsYWdzLCBwdXNoX29wdGlvbnMsIHJlbW90ZSk7CiAJc3RyaW5nX2xpc3RfY2xlYXIoJnB1c2hfb3B0aW9uc19jbWRsaW5lLCAwKTsKIAlzdHJpbmdfbGlzdF9jbGVhcigmcHVzaF9vcHRpb25zX2NvbmZpZywgMCk7CiAJaWYgKHJjID09IC0xKQpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9yYW5nZS1kaWZmLmMgYi9idWlsdGluL3JhbmdlLWRpZmYuYwppbmRleCBmMDFhMGJlLi5kOGE0NjcwIDEwMDY0NAotLS0gYS9idWlsdGluL3JhbmdlLWRpZmYuYworKysgYi9idWlsdGluL3JhbmdlLWRpZmYuYwpAQCAtMTUsNDMgKzE1LDMyIEBACiB7CiAJaW50IGNyZWF0aW9uX2ZhY3RvciA9IFJBTkdFX0RJRkZfQ1JFQVRJT05fRkFDVE9SX0RFRkFVTFQ7CiAJc3RydWN0IGRpZmZfb3B0aW9ucyBkaWZmb3B0ID0geyBOVUxMIH07CisJc3RydWN0IGFyZ3ZfYXJyYXkgb3RoZXJfYXJnID0gQVJHVl9BUlJBWV9JTklUOwogCWludCBzaW1wbGVfY29sb3IgPSAtMTsKLQlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwlzdHJ1Y3Qgb3B0aW9uIHJhbmdlX2RpZmZfb3B0aW9uc1tdID0gewogCQlPUFRfSU5URUdFUigwLCAiY3JlYXRpb24tZmFjdG9yIiwgJmNyZWF0aW9uX2ZhY3RvciwKIAkJCSAgICBOXygiUGVyY2VudGFnZSBieSB3aGljaCBjcmVhdGlvbiBpcyB3ZWlnaHRlZCIpKSwKIAkJT1BUX0JPT0woMCwgIm5vLWR1YWwtY29sb3IiLCAmc2ltcGxlX2NvbG9yLAogCQkJICAgIE5fKCJ1c2Ugc2ltcGxlIGRpZmYgY29sb3JzIikpLAorCQlPUFRfUEFTU1RIUlVfQVJHVigwLCAibm90ZXMiLCAmb3RoZXJfYXJnLAorCQkJCSAgTl8oIm5vdGVzIiksIE5fKCJwYXNzZWQgdG8gJ2dpdCBsb2cnIiksCisJCQkJICBQQVJTRV9PUFRfT1BUQVJHKSwKIAkJT1BUX0VORCgpCiAJfTsKLQlpbnQgaSwgaiwgcmVzID0gMDsKKwlzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zOworCWludCByZXMgPSAwOwogCXN0cnVjdCBzdHJidWYgcmFuZ2UxID0gU1RSQlVGX0lOSVQsIHJhbmdlMiA9IFNUUkJVRl9JTklUOwogCiAJZ2l0X2NvbmZpZyhnaXRfZGlmZl91aV9jb25maWcsIE5VTEwpOwogCiAJcmVwb19kaWZmX3NldHVwKHRoZV9yZXBvc2l0b3J5LCAmZGlmZm9wdCk7CiAKLQlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBOVUxMLCBvcHRpb25zLAotCQkJICAgICBidWlsdGluX3JhbmdlX2RpZmZfdXNhZ2UsIFBBUlNFX09QVF9LRUVQX1VOS05PV04gfAotCQkJICAgICBQQVJTRV9PUFRfS0VFUF9EQVNIREFTSCB8IFBBUlNFX09QVF9LRUVQX0FSR1YwKTsKLQotCWZvciAoaSA9IGogPSAxOyBpIDwgYXJnYyAmJiBzdHJjbXAoIi0tIiwgYXJndltpXSk7ICkgewotCQlpbnQgYyA9IGRpZmZfb3B0X3BhcnNlKCZkaWZmb3B0LCBhcmd2ICsgaSwgYXJnYyAtIGksIHByZWZpeCk7Ci0KLQkJaWYgKCFjKQotCQkJYXJndltqKytdID0gYXJndltpKytdOwotCQllbHNlCi0JCQlpICs9IGM7Ci0JfQotCXdoaWxlIChpIDwgYXJnYykKLQkJYXJndltqKytdID0gYXJndltpKytdOwotCWFyZ2MgPSBqOwotCWRpZmZfc2V0dXBfZG9uZSgmZGlmZm9wdCk7Ci0KLQkvKiBNYWtlIHN1cmUgdGhhdCB0aGVyZSBhcmUgbm8gdW5wYXJzZWQgb3B0aW9ucyAqLwotCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIE5VTEwsCi0JCQkgICAgIG9wdGlvbnMgKyBBUlJBWV9TSVpFKG9wdGlvbnMpIC0gMSwgLyogT1BUX0VORCAqLworCW9wdGlvbnMgPSBwYXJzZV9vcHRpb25zX2NvbmNhdChyYW5nZV9kaWZmX29wdGlvbnMsIGRpZmZvcHQucGFyc2VvcHRzKTsKKwlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsIG9wdGlvbnMsCiAJCQkgICAgIGJ1aWx0aW5fcmFuZ2VfZGlmZl91c2FnZSwgMCk7CiAKKwlkaWZmX3NldHVwX2RvbmUoJmRpZmZvcHQpOworCiAJLyogZm9yY2UgY29sb3Igd2hlbiAtLWR1YWwtY29sb3Igd2FzIHVzZWQgKi8KIAlpZiAoIXNpbXBsZV9jb2xvcikKIAkJZGlmZm9wdC51c2VfY29sb3IgPSAxOwpAQCAtOTAsMTAgKzc5LDEyIEBACiAJCWVycm9yKF8oIm5lZWQgdHdvIGNvbW1pdCByYW5nZXMiKSk7CiAJCXVzYWdlX3dpdGhfb3B0aW9ucyhidWlsdGluX3JhbmdlX2RpZmZfdXNhZ2UsIG9wdGlvbnMpOwogCX0KKwlGUkVFX0FORF9OVUxMKG9wdGlvbnMpOwogCiAJcmVzID0gc2hvd19yYW5nZV9kaWZmKHJhbmdlMS5idWYsIHJhbmdlMi5idWYsIGNyZWF0aW9uX2ZhY3RvciwKLQkJCSAgICAgIHNpbXBsZV9jb2xvciA8IDEsICZkaWZmb3B0KTsKKwkJCSAgICAgIHNpbXBsZV9jb2xvciA8IDEsICZkaWZmb3B0LCAmb3RoZXJfYXJnKTsKIAorCWFyZ3ZfYXJyYXlfY2xlYXIoJm90aGVyX2FyZyk7CiAJc3RyYnVmX3JlbGVhc2UoJnJhbmdlMSk7CiAJc3RyYnVmX3JlbGVhc2UoJnJhbmdlMik7CiAKZGlmZiAtLWdpdCBhL2J1aWx0aW4vcmVhZC10cmVlLmMgYi9idWlsdGluL3JlYWQtdHJlZS5jCmluZGV4IDE4M2VlOGMuLmFmNzQyNGIgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vcmVhZC10cmVlLmMKKysrIGIvYnVpbHRpbi9yZWFkLXRyZWUuYwpAQCAtNCw2ICs0LDcgQEAKICAqIENvcHlyaWdodCAoQykgTGludXMgVG9ydmFsZHMsIDIwMDUKICAqLwogCisjZGVmaW5lIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgImxvY2tmaWxlLmgiCkBAIC0xMTAsNyArMTExLDcgQEAKIAlyZXR1cm4gZ2l0X2RlZmF1bHRfY29uZmlnKHZhciwgdmFsdWUsIGNiKTsKIH0KIAotaW50IGNtZF9yZWFkX3RyZWUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICp1bnVzZWRfcHJlZml4KQoraW50IGNtZF9yZWFkX3RyZWUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpjbWRfcHJlZml4KQogewogCWludCBpLCBzdGFnZSA9IDA7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CkBAIC0xNTMsNiArMTU0LDcgQEAKIAkJeyBPUFRJT05fQ0FMTEJBQ0ssIDAsICJyZWN1cnNlLXN1Ym1vZHVsZXMiLCBOVUxMLAogCQkJICAgICJjaGVja291dCIsICJjb250cm9sIHJlY3Vyc2l2ZSB1cGRhdGluZyBvZiBzdWJtb2R1bGVzIiwKIAkJCSAgICBQQVJTRV9PUFRfT1BUQVJHLCBvcHRpb25fcGFyc2VfcmVjdXJzZV9zdWJtb2R1bGVzX3dvcmt0cmVlX3VwZGF0ZXIgfSwKKwkJT1BUX19RVUlFVCgmb3B0cy5xdWlldCwgTl8oInN1cHByZXNzIGZlZWRiYWNrIG1lc3NhZ2VzIikpLAogCQlPUFRfRU5EKCkKIAl9OwogCkBAIC0xNjMsNyArMTY1LDcgQEAKIAogCWdpdF9jb25maWcoZ2l0X3JlYWRfdHJlZV9jb25maWcsIE5VTEwpOwogCi0JYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgdW51c2VkX3ByZWZpeCwgcmVhZF90cmVlX29wdGlvbnMsCisJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgY21kX3ByZWZpeCwgcmVhZF90cmVlX29wdGlvbnMsCiAJCQkgICAgIHJlYWRfdHJlZV91c2FnZSwgMCk7CiAKIAlob2xkX2xvY2tlZF9pbmRleCgmbG9ja19maWxlLCBMT0NLX0RJRV9PTl9FUlJPUik7CkBAIC0xODMsNyArMTg1LDcgQEAKIAogCWlmIChvcHRzLnJlc2V0IHx8IG9wdHMubWVyZ2UgfHwgb3B0cy5wcmVmaXgpIHsKIAkJaWYgKHJlYWRfY2FjaGVfdW5tZXJnZWQoKSAmJiAob3B0cy5wcmVmaXggfHwgb3B0cy5tZXJnZSkpCi0JCQlkaWUoIllvdSBuZWVkIHRvIHJlc29sdmUgeW91ciBjdXJyZW50IGluZGV4IGZpcnN0Iik7CisJCQlkaWUoXygiWW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiKSk7CiAJCXN0YWdlID0gb3B0cy5tZXJnZSA9IDE7CiAJfQogCXJlc29sdmVfdW5kb19jbGVhcigpOwpAQCAtMjU4LDcgKzI2MCw5IEBACiAJICogd2hhdCBjYW1lIGZyb20gdGhlIHRyZWUuCiAJICovCiAJaWYgKG5yX3RyZWVzID09IDEgJiYgIW9wdHMucHJlZml4KQotCQlwcmltZV9jYWNoZV90cmVlKCZ0aGVfaW5kZXgsIHRyZWVzWzBdKTsKKwkJcHJpbWVfY2FjaGVfdHJlZSh0aGVfcmVwb3NpdG9yeSwKKwkJCQkgdGhlX3JlcG9zaXRvcnktPmluZGV4LAorCQkJCSB0cmVlc1swXSk7CiAKIAlpZiAod3JpdGVfbG9ja2VkX2luZGV4KCZ0aGVfaW5kZXgsICZsb2NrX2ZpbGUsIENPTU1JVF9MT0NLKSkKIAkJZGllKCJ1bmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiKTsKZGlmZiAtLWdpdCBhL2J1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jIGIvYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGEyYWI2OGUuLjAwMDAwMDAKLS0tIGEvYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmMKKysrIC9kZXYvbnVsbApAQCAtMSwyNzEgKzAsMCBAQAotI2luY2x1ZGUgImJ1aWx0aW4uaCIKLSNpbmNsdWRlICJjYWNoZS5oIgotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgInBhcnNlLW9wdGlvbnMuaCIKLSNpbmNsdWRlICJzZXF1ZW5jZXIuaCIKLSNpbmNsdWRlICJyZWJhc2UtaW50ZXJhY3RpdmUuaCIKLSNpbmNsdWRlICJhcmd2LWFycmF5LmgiCi0jaW5jbHVkZSAicmVmcy5oIgotI2luY2x1ZGUgInJlcmVyZS5oIgotI2luY2x1ZGUgInJ1bi1jb21tYW5kLmgiCi0KLXN0YXRpYyBHSVRfUEFUSF9GVU5DKHBhdGhfc3RhdGVfZGlyLCAicmViYXNlLW1lcmdlLyIpCi1zdGF0aWMgR0lUX1BBVEhfRlVOQyhwYXRoX3NxdWFzaF9vbnRvLCAicmViYXNlLW1lcmdlL3NxdWFzaC1vbnRvIikKLXN0YXRpYyBHSVRfUEFUSF9GVU5DKHBhdGhfaW50ZXJhY3RpdmUsICJyZWJhc2UtbWVyZ2UvaW50ZXJhY3RpdmUiKQotCi1zdGF0aWMgaW50IGdldF9yZXZpc2lvbl9yYW5nZXMoY29uc3QgY2hhciAqdXBzdHJlYW0sIGNvbnN0IGNoYXIgKm9udG8sCi0JCQkgICAgICAgY29uc3QgY2hhciAqKmhlYWRfaGFzaCwKLQkJCSAgICAgICBjaGFyICoqcmV2aXNpb25zLCBjaGFyICoqc2hvcnRyZXZpc2lvbnMpCi17Ci0JY29uc3QgY2hhciAqYmFzZV9yZXYgPSB1cHN0cmVhbSA/IHVwc3RyZWFtIDogb250bywgKnNob3J0aGVhZDsKLQlzdHJ1Y3Qgb2JqZWN0X2lkIG9yaWdfaGVhZDsKLQotCWlmIChnZXRfb2lkKCJIRUFEIiwgJm9yaWdfaGVhZCkpCi0JCXJldHVybiBlcnJvcihfKCJubyBIRUFEPyIpKTsKLQotCSpoZWFkX2hhc2ggPSBmaW5kX3VuaXF1ZV9hYmJyZXYoJm9yaWdfaGVhZCwgR0lUX01BWF9IRVhTWik7Ci0JKnJldmlzaW9ucyA9IHhzdHJmbXQoIiVzLi4uJXMiLCBiYXNlX3JldiwgKmhlYWRfaGFzaCk7Ci0KLQlzaG9ydGhlYWQgPSBmaW5kX3VuaXF1ZV9hYmJyZXYoJm9yaWdfaGVhZCwgREVGQVVMVF9BQkJSRVYpOwotCi0JaWYgKHVwc3RyZWFtKSB7Ci0JCWNvbnN0IGNoYXIgKnNob3J0cmV2OwotCQlzdHJ1Y3Qgb2JqZWN0X2lkIHJldl9vaWQ7Ci0KLQkJZ2V0X29pZChiYXNlX3JldiwgJnJldl9vaWQpOwotCQlzaG9ydHJldiA9IGZpbmRfdW5pcXVlX2FiYnJldigmcmV2X29pZCwgREVGQVVMVF9BQkJSRVYpOwotCi0JCSpzaG9ydHJldmlzaW9ucyA9IHhzdHJmbXQoIiVzLi4lcyIsIHNob3J0cmV2LCBzaG9ydGhlYWQpOwotCX0gZWxzZQotCQkqc2hvcnRyZXZpc2lvbnMgPSB4c3RyZHVwKHNob3J0aGVhZCk7Ci0KLQlyZXR1cm4gMDsKLX0KLQotc3RhdGljIGludCBpbml0X2Jhc2ljX3N0YXRlKHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywgY29uc3QgY2hhciAqaGVhZF9uYW1lLAotCQkJICAgIGNvbnN0IGNoYXIgKm9udG8sIGNvbnN0IGNoYXIgKm9yaWdfaGVhZCkKLXsKLQlGSUxFICppbnRlcmFjdGl2ZTsKLQotCWlmICghaXNfZGlyZWN0b3J5KHBhdGhfc3RhdGVfZGlyKCkpICYmIG1rZGlyX2luX2dpdGRpcihwYXRoX3N0YXRlX2RpcigpKSkKLQkJcmV0dXJuIGVycm9yX2Vycm5vKF8oImNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5ICVzIiksIHBhdGhfc3RhdGVfZGlyKCkpOwotCi0JZGVsZXRlX3JlZmxvZygiUkVCQVNFX0hFQUQiKTsKLQotCWludGVyYWN0aXZlID0gZm9wZW4ocGF0aF9pbnRlcmFjdGl2ZSgpLCAidyIpOwotCWlmICghaW50ZXJhY3RpdmUpCi0JCXJldHVybiBlcnJvcl9lcnJubyhfKCJjb3VsZCBub3QgbWFyayBhcyBpbnRlcmFjdGl2ZSIpKTsKLQlmY2xvc2UoaW50ZXJhY3RpdmUpOwotCi0JcmV0dXJuIHdyaXRlX2Jhc2ljX3N0YXRlKG9wdHMsIGhlYWRfbmFtZSwgb250bywgb3JpZ19oZWFkKTsKLX0KLQotc3RhdGljIGludCBkb19pbnRlcmFjdGl2ZV9yZWJhc2Uoc3RydWN0IHJlcGxheV9vcHRzICpvcHRzLCB1bnNpZ25lZCBmbGFncywKLQkJCQkgY29uc3QgY2hhciAqc3dpdGNoX3RvLCBjb25zdCBjaGFyICp1cHN0cmVhbSwKLQkJCQkgY29uc3QgY2hhciAqb250bywgY29uc3QgY2hhciAqb250b19uYW1lLAotCQkJCSBjb25zdCBjaGFyICpzcXVhc2hfb250bywgY29uc3QgY2hhciAqaGVhZF9uYW1lLAotCQkJCSBjb25zdCBjaGFyICpyZXN0cmljdF9yZXZpc2lvbiwgY2hhciAqcmF3X3N0cmF0ZWdpZXMsCi0JCQkJIGNvbnN0IGNoYXIgKmNtZCwgdW5zaWduZWQgYXV0b3NxdWFzaCkKLXsKLQlpbnQgcmV0OwotCWNvbnN0IGNoYXIgKmhlYWRfaGFzaCA9IE5VTEw7Ci0JY2hhciAqcmV2aXNpb25zID0gTlVMTCwgKnNob3J0cmV2aXNpb25zID0gTlVMTDsKLQlzdHJ1Y3QgYXJndl9hcnJheSBtYWtlX3NjcmlwdF9hcmdzID0gQVJHVl9BUlJBWV9JTklUOwotCUZJTEUgKnRvZG9fbGlzdDsKLQotCWlmIChwcmVwYXJlX2JyYW5jaF90b19iZV9yZWJhc2VkKG9wdHMsIHN3aXRjaF90bykpCi0JCXJldHVybiAtMTsKLQotCWlmIChnZXRfcmV2aXNpb25fcmFuZ2VzKHVwc3RyZWFtLCBvbnRvLCAmaGVhZF9oYXNoLAotCQkJCSZyZXZpc2lvbnMsICZzaG9ydHJldmlzaW9ucykpCi0JCXJldHVybiAtMTsKLQotCWlmIChyYXdfc3RyYXRlZ2llcykKLQkJcGFyc2Vfc3RyYXRlZ3lfb3B0cyhvcHRzLCByYXdfc3RyYXRlZ2llcyk7Ci0KLQlpZiAoaW5pdF9iYXNpY19zdGF0ZShvcHRzLCBoZWFkX25hbWUsIG9udG8sIGhlYWRfaGFzaCkpIHsKLQkJZnJlZShyZXZpc2lvbnMpOwotCQlmcmVlKHNob3J0cmV2aXNpb25zKTsKLQotCQlyZXR1cm4gLTE7Ci0JfQotCi0JaWYgKCF1cHN0cmVhbSAmJiBzcXVhc2hfb250bykKLQkJd3JpdGVfZmlsZShwYXRoX3NxdWFzaF9vbnRvKCksICIlc1xuIiwgc3F1YXNoX29udG8pOwotCi0JdG9kb19saXN0ID0gZm9wZW4ocmViYXNlX3BhdGhfdG9kbygpLCAidyIpOwotCWlmICghdG9kb19saXN0KSB7Ci0JCWZyZWUocmV2aXNpb25zKTsKLQkJZnJlZShzaG9ydHJldmlzaW9ucyk7Ci0KLQkJcmV0dXJuIGVycm9yX2Vycm5vKF8oImNvdWxkIG5vdCBvcGVuICVzIiksIHJlYmFzZV9wYXRoX3RvZG8oKSk7Ci0JfQotCi0JYXJndl9hcnJheV9wdXNobCgmbWFrZV9zY3JpcHRfYXJncywgIiIsIHJldmlzaW9ucywgTlVMTCk7Ci0JaWYgKHJlc3RyaWN0X3JldmlzaW9uKQotCQlhcmd2X2FycmF5X3B1c2goJm1ha2Vfc2NyaXB0X2FyZ3MsIHJlc3RyaWN0X3JldmlzaW9uKTsKLQotCXJldCA9IHNlcXVlbmNlcl9tYWtlX3NjcmlwdCh0b2RvX2xpc3QsCi0JCQkJICAgIG1ha2Vfc2NyaXB0X2FyZ3MuYXJnYywgbWFrZV9zY3JpcHRfYXJncy5hcmd2LAotCQkJCSAgICBmbGFncyk7Ci0JZmNsb3NlKHRvZG9fbGlzdCk7Ci0KLQlpZiAocmV0KQotCQllcnJvcihfKCJjb3VsZCBub3QgZ2VuZXJhdGUgdG9kbyBsaXN0IikpOwotCWVsc2UgewotCQlkaXNjYXJkX2NhY2hlKCk7Ci0JCXJldCA9IGNvbXBsZXRlX2FjdGlvbihvcHRzLCBmbGFncywgc2hvcnRyZXZpc2lvbnMsIG9udG9fbmFtZSwgb250bywKLQkJCQkgICAgICBoZWFkX2hhc2gsIGNtZCwgYXV0b3NxdWFzaCk7Ci0JfQotCi0JZnJlZShyZXZpc2lvbnMpOwotCWZyZWUoc2hvcnRyZXZpc2lvbnMpOwotCWFyZ3ZfYXJyYXlfY2xlYXIoJm1ha2Vfc2NyaXB0X2FyZ3MpOwotCi0JcmV0dXJuIHJldDsKLX0KLQotc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBidWlsdGluX3JlYmFzZV9pbnRlcmFjdGl2ZV91c2FnZVtdID0gewotCU5fKCJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPG9wdGlvbnM+XSIpLAotCU5VTEwKLX07Ci0KLWludCBjbWRfcmViYXNlX19pbnRlcmFjdGl2ZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKLXsKLQlzdHJ1Y3QgcmVwbGF5X29wdHMgb3B0cyA9IFJFUExBWV9PUFRTX0lOSVQ7Ci0JdW5zaWduZWQgZmxhZ3MgPSAwLCBrZWVwX2VtcHR5ID0gMCwgcmViYXNlX21lcmdlcyA9IDAsIGF1dG9zcXVhc2ggPSAwOwotCWludCBhYmJyZXZpYXRlX2NvbW1hbmRzID0gMCwgcmViYXNlX2NvdXNpbnMgPSAtMSwgcmV0ID0gMDsKLQljb25zdCBjaGFyICpvbnRvID0gTlVMTCwgKm9udG9fbmFtZSA9IE5VTEwsICpyZXN0cmljdF9yZXZpc2lvbiA9IE5VTEwsCi0JCSpzcXVhc2hfb250byA9IE5VTEwsICp1cHN0cmVhbSA9IE5VTEwsICpoZWFkX25hbWUgPSBOVUxMLAotCQkqc3dpdGNoX3RvID0gTlVMTCwgKmNtZCA9IE5VTEw7Ci0JY2hhciAqcmF3X3N0cmF0ZWdpZXMgPSBOVUxMOwotCWVudW0gewotCQlOT05FID0gMCwgQ09OVElOVUUsIFNLSVAsIEVESVRfVE9ETywgU0hPV19DVVJSRU5UX1BBVENILAotCQlTSE9SVEVOX09JRFMsIEVYUEFORF9PSURTLCBDSEVDS19UT0RPX0xJU1QsIFJFQVJSQU5HRV9TUVVBU0gsIEFERF9FWEVDCi0JfSBjb21tYW5kID0gMDsKLQlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKLQkJT1BUX0JPT0woMCwgImZmIiwgJm9wdHMuYWxsb3dfZmYsIE5fKCJhbGxvdyBmYXN0LWZvcndhcmQiKSksCi0JCU9QVF9CT09MKDAsICJrZWVwLWVtcHR5IiwgJmtlZXBfZW1wdHksIE5fKCJrZWVwIGVtcHR5IGNvbW1pdHMiKSksCi0JCU9QVF9CT09MKDAsICJhbGxvdy1lbXB0eS1tZXNzYWdlIiwgJm9wdHMuYWxsb3dfZW1wdHlfbWVzc2FnZSwKLQkJCSBOXygiYWxsb3cgY29tbWl0cyB3aXRoIGVtcHR5IG1lc3NhZ2VzIikpLAotCQlPUFRfQk9PTCgwLCAicmViYXNlLW1lcmdlcyIsICZyZWJhc2VfbWVyZ2VzLCBOXygicmViYXNlIG1lcmdlIGNvbW1pdHMiKSksCi0JCU9QVF9CT09MKDAsICJyZWJhc2UtY291c2lucyIsICZyZWJhc2VfY291c2lucywKLQkJCSBOXygia2VlcCBvcmlnaW5hbCBicmFuY2ggcG9pbnRzIG9mIGNvdXNpbnMiKSksCi0JCU9QVF9CT09MKDAsICJhdXRvc3F1YXNoIiwgJmF1dG9zcXVhc2gsCi0JCQkgTl8oIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEiKSksCi0JCU9QVF9CT09MKDAsICJzaWdub2ZmIiwgJm9wdHMuc2lnbm9mZiwgTl8oInNpZ24gY29tbWl0cyIpKSwKLQkJT1BUX19WRVJCT1NFKCZvcHRzLnZlcmJvc2UsIE5fKCJiZSB2ZXJib3NlIikpLAotCQlPUFRfQ01ETU9ERSgwLCAiY29udGludWUiLCAmY29tbWFuZCwgTl8oImNvbnRpbnVlIHJlYmFzZSIpLAotCQkJICAgIENPTlRJTlVFKSwKLQkJT1BUX0NNRE1PREUoMCwgInNraXAiLCAmY29tbWFuZCwgTl8oInNraXAgY29tbWl0IiksIFNLSVApLAotCQlPUFRfQ01ETU9ERSgwLCAiZWRpdC10b2RvIiwgJmNvbW1hbmQsIE5fKCJlZGl0IHRoZSB0b2RvIGxpc3QiKSwKLQkJCSAgICBFRElUX1RPRE8pLAotCQlPUFRfQ01ETU9ERSgwLCAic2hvdy1jdXJyZW50LXBhdGNoIiwgJmNvbW1hbmQsIE5fKCJzaG93IHRoZSBjdXJyZW50IHBhdGNoIiksCi0JCQkgICAgU0hPV19DVVJSRU5UX1BBVENIKSwKLQkJT1BUX0NNRE1PREUoMCwgInNob3J0ZW4taWRzIiwgJmNvbW1hbmQsCi0JCQlOXygic2hvcnRlbiBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiKSwgU0hPUlRFTl9PSURTKSwKLQkJT1BUX0NNRE1PREUoMCwgImV4cGFuZC1pZHMiLCAmY29tbWFuZCwKLQkJCU5fKCJleHBhbmQgY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IiksIEVYUEFORF9PSURTKSwKLQkJT1BUX0NNRE1PREUoMCwgImNoZWNrLXRvZG8tbGlzdCIsICZjb21tYW5kLAotCQkJTl8oImNoZWNrIHRoZSB0b2RvIGxpc3QiKSwgQ0hFQ0tfVE9ET19MSVNUKSwKLQkJT1BUX0NNRE1PREUoMCwgInJlYXJyYW5nZS1zcXVhc2giLCAmY29tbWFuZCwKLQkJCU5fKCJyZWFycmFuZ2UgZml4dXAvc3F1YXNoIGxpbmVzIiksIFJFQVJSQU5HRV9TUVVBU0gpLAotCQlPUFRfQ01ETU9ERSgwLCAiYWRkLWV4ZWMtY29tbWFuZHMiLCAmY29tbWFuZCwKLQkJCU5fKCJpbnNlcnQgZXhlYyBjb21tYW5kcyBpbiB0b2RvIGxpc3QiKSwgQUREX0VYRUMpLAotCQlPUFRfU1RSSU5HKDAsICJvbnRvIiwgJm9udG8sIE5fKCJvbnRvIiksIE5fKCJvbnRvIikpLAotCQlPUFRfU1RSSU5HKDAsICJyZXN0cmljdC1yZXZpc2lvbiIsICZyZXN0cmljdF9yZXZpc2lvbiwKLQkJCSAgIE5fKCJyZXN0cmljdC1yZXZpc2lvbiIpLCBOXygicmVzdHJpY3QgcmV2aXNpb24iKSksCi0JCU9QVF9TVFJJTkcoMCwgInNxdWFzaC1vbnRvIiwgJnNxdWFzaF9vbnRvLCBOXygic3F1YXNoLW9udG8iKSwKLQkJCSAgIE5fKCJzcXVhc2ggb250byIpKSwKLQkJT1BUX1NUUklORygwLCAidXBzdHJlYW0iLCAmdXBzdHJlYW0sIE5fKCJ1cHN0cmVhbSIpLAotCQkJICAgTl8oInRoZSB1cHN0cmVhbSBjb21taXQiKSksCi0JCU9QVF9TVFJJTkcoMCwgImhlYWQtbmFtZSIsICZoZWFkX25hbWUsIE5fKCJoZWFkLW5hbWUiKSwgTl8oImhlYWQgbmFtZSIpKSwKLQkJeyBPUFRJT05fU1RSSU5HLCAnUycsICJncGctc2lnbiIsICZvcHRzLmdwZ19zaWduLCBOXygia2V5LWlkIiksCi0JCQlOXygiR1BHLXNpZ24gY29tbWl0cyIpLAotCQkJUEFSU0VfT1BUX09QVEFSRywgTlVMTCwgKGludHB0cl90KSAiIiB9LAotCQlPUFRfU1RSSU5HKDAsICJzdHJhdGVneSIsICZvcHRzLnN0cmF0ZWd5LCBOXygic3RyYXRlZ3kiKSwKLQkJCSAgIE5fKCJyZWJhc2Ugc3RyYXRlZ3kiKSksCi0JCU9QVF9TVFJJTkcoMCwgInN0cmF0ZWd5LW9wdHMiLCAmcmF3X3N0cmF0ZWdpZXMsIE5fKCJzdHJhdGVneS1vcHRzIiksCi0JCQkgICBOXygic3RyYXRlZ3kgb3B0aW9ucyIpKSwKLQkJT1BUX1NUUklORygwLCAic3dpdGNoLXRvIiwgJnN3aXRjaF90bywgTl8oInN3aXRjaC10byIpLAotCQkJICAgTl8oInRoZSBicmFuY2ggb3IgY29tbWl0IHRvIGNoZWNrb3V0IikpLAotCQlPUFRfU1RSSU5HKDAsICJvbnRvLW5hbWUiLCAmb250b19uYW1lLCBOXygib250by1uYW1lIiksIE5fKCJvbnRvIG5hbWUiKSksCi0JCU9QVF9TVFJJTkcoMCwgImNtZCIsICZjbWQsIE5fKCJjbWQiKSwgTl8oInRoZSBjb21tYW5kIHRvIHJ1biIpKSwKLQkJT1BUX1JFUkVSRV9BVVRPVVBEQVRFKCZvcHRzLmFsbG93X3JlcmVyZV9hdXRvKSwKLQkJT1BUX0VORCgpCi0JfTsKLQotCXNlcXVlbmNlcl9pbml0X2NvbmZpZygmb3B0cyk7Ci0JZ2l0X2NvbmZpZ19nZXRfYm9vbCgicmViYXNlLmFiYnJldmlhdGVjb21tYW5kcyIsICZhYmJyZXZpYXRlX2NvbW1hbmRzKTsKLQotCW9wdHMuYWN0aW9uID0gUkVQTEFZX0lOVEVSQUNUSVZFX1JFQkFTRTsKLQlvcHRzLmFsbG93X2ZmID0gMTsKLQlvcHRzLmFsbG93X2VtcHR5ID0gMTsKLQotCWlmIChhcmdjID09IDEpCi0JCXVzYWdlX3dpdGhfb3B0aW9ucyhidWlsdGluX3JlYmFzZV9pbnRlcmFjdGl2ZV91c2FnZSwgb3B0aW9ucyk7Ci0KLQlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBOVUxMLCBvcHRpb25zLAotCQkJYnVpbHRpbl9yZWJhc2VfaW50ZXJhY3RpdmVfdXNhZ2UsIFBBUlNFX09QVF9LRUVQX0FSR1YwKTsKLQotCW9wdHMuZ3BnX3NpZ24gPSB4c3RyZHVwX29yX251bGwob3B0cy5ncGdfc2lnbik7Ci0KLQlmbGFncyB8PSBrZWVwX2VtcHR5ID8gVE9ET19MSVNUX0tFRVBfRU1QVFkgOiAwOwotCWZsYWdzIHw9IGFiYnJldmlhdGVfY29tbWFuZHMgPyBUT0RPX0xJU1RfQUJCUkVWSUFURV9DTURTIDogMDsKLQlmbGFncyB8PSByZWJhc2VfbWVyZ2VzID8gVE9ET19MSVNUX1JFQkFTRV9NRVJHRVMgOiAwOwotCWZsYWdzIHw9IHJlYmFzZV9jb3VzaW5zID4gMCA/IFRPRE9fTElTVF9SRUJBU0VfQ09VU0lOUyA6IDA7Ci0JZmxhZ3MgfD0gY29tbWFuZCA9PSBTSE9SVEVOX09JRFMgPyBUT0RPX0xJU1RfU0hPUlRFTl9JRFMgOiAwOwotCi0JaWYgKHJlYmFzZV9jb3VzaW5zID49IDAgJiYgIXJlYmFzZV9tZXJnZXMpCi0JCXdhcm5pbmcoXygiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIGhhcyBubyBlZmZlY3Qgd2l0aG91dCAiCi0JCQkgICItLXJlYmFzZS1tZXJnZXMiKSk7Ci0KLQlzd2l0Y2ggKGNvbW1hbmQpIHsKLQljYXNlIE5PTkU6Ci0JCWlmICghb250byAmJiAhdXBzdHJlYW0pCi0JCQlkaWUoXygiYSBiYXNlIGNvbW1pdCBtdXN0IGJlIHByb3ZpZGVkIHdpdGggLS11cHN0cmVhbSBvciAtLW9udG8iKSk7Ci0KLQkJcmV0ID0gZG9faW50ZXJhY3RpdmVfcmViYXNlKCZvcHRzLCBmbGFncywgc3dpdGNoX3RvLCB1cHN0cmVhbSwgb250bywKLQkJCQkJICAgIG9udG9fbmFtZSwgc3F1YXNoX29udG8sIGhlYWRfbmFtZSwgcmVzdHJpY3RfcmV2aXNpb24sCi0JCQkJCSAgICByYXdfc3RyYXRlZ2llcywgY21kLCBhdXRvc3F1YXNoKTsKLQkJYnJlYWs7Ci0JY2FzZSBTS0lQOiB7Ci0JCXN0cnVjdCBzdHJpbmdfbGlzdCBtZXJnZV9yciA9IFNUUklOR19MSVNUX0lOSVRfRFVQOwotCi0JCXJlcmVyZV9jbGVhcigmbWVyZ2VfcnIpOwotCQkvKiBmYWxsdGhyb3VnaCAqLwotCWNhc2UgQ09OVElOVUU6Ci0JCXJldCA9IHNlcXVlbmNlcl9jb250aW51ZSgmb3B0cyk7Ci0JCWJyZWFrOwotCX0KLQljYXNlIEVESVRfVE9ETzoKLQkJcmV0ID0gZWRpdF90b2RvX2xpc3QoZmxhZ3MpOwotCQlicmVhazsKLQljYXNlIFNIT1dfQ1VSUkVOVF9QQVRDSDogewotCQlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjbWQgPSBDSElMRF9QUk9DRVNTX0lOSVQ7Ci0KLQkJY21kLmdpdF9jbWQgPSAxOwotCQlhcmd2X2FycmF5X3B1c2hsKCZjbWQuYXJncywgInNob3ciLCAiUkVCQVNFX0hFQUQiLCAiLS0iLCBOVUxMKTsKLQkJcmV0ID0gcnVuX2NvbW1hbmQoJmNtZCk7Ci0KLQkJYnJlYWs7Ci0JfQotCWNhc2UgU0hPUlRFTl9PSURTOgotCWNhc2UgRVhQQU5EX09JRFM6Ci0JCXJldCA9IHRyYW5zZm9ybV90b2RvcyhmbGFncyk7Ci0JCWJyZWFrOwotCWNhc2UgQ0hFQ0tfVE9ET19MSVNUOgotCQlyZXQgPSBjaGVja190b2RvX2xpc3QoKTsKLQkJYnJlYWs7Ci0JY2FzZSBSRUFSUkFOR0VfU1FVQVNIOgotCQlyZXQgPSByZWFycmFuZ2Vfc3F1YXNoKCk7Ci0JCWJyZWFrOwotCWNhc2UgQUREX0VYRUM6Ci0JCXJldCA9IHNlcXVlbmNlcl9hZGRfZXhlY19jb21tYW5kcyhjbWQpOwotCQlicmVhazsKLQlkZWZhdWx0OgotCQlCVUcoImludmFsaWQgY29tbWFuZCAnJWQnIiwgY29tbWFuZCk7Ci0JfQotCi0JcmV0dXJuICEhcmV0OwotfQpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9yZWJhc2UuYyBiL2J1aWx0aW4vcmViYXNlLmMKaW5kZXggYjVjOTllYy4uYmZmNTNkNSAxMDA2NDQKLS0tIGEvYnVpbHRpbi9yZWJhc2UuYworKysgYi9idWlsdGluL3JlYmFzZS5jCkBAIC00LDYgKzQsNyBAQAogICogQ29weXJpZ2h0IChjKSAyMDE4IFByYXRpayBLYXJraQogICovCiAKKyNkZWZpbmUgVVNFX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImJ1aWx0aW4uaCIKICNpbmNsdWRlICJydW4tY29tbWFuZC5oIgogI2luY2x1ZGUgImV4ZWMtY21kLmgiCkBAIC0yNCw1MiArMjUsNDEgQEAKICNpbmNsdWRlICJjb21taXQtcmVhY2guaCIKICNpbmNsdWRlICJyZXJlcmUuaCIKICNpbmNsdWRlICJicmFuY2guaCIKKyNpbmNsdWRlICJzZXF1ZW5jZXIuaCIKKyNpbmNsdWRlICJyZWJhc2UtaW50ZXJhY3RpdmUuaCIKIAogc3RhdGljIGNoYXIgY29uc3QgKiBjb25zdCBidWlsdGluX3JlYmFzZV91c2FnZVtdID0gewotCU5fKCJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+XSAiCi0JCSJbPHVwc3RyZWFtPl0gWzxicmFuY2g+XSIpLAorCU5fKCJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dICIKKwkJIlstLW9udG8gPG5ld2Jhc2U+IHwgLS1rZWVwLWJhc2VdIFs8dXBzdHJlYW0+IFs8YnJhbmNoPl1dIiksCiAJTl8oImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dICIKIAkJIi0tcm9vdCBbPGJyYW5jaD5dIiksCiAJTl8oImdpdCByZWJhc2UgLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXAgfCAtLWVkaXQtdG9kbyIpLAogCU5VTEwKIH07CiAKK3N0YXRpYyBHSVRfUEFUSF9GVU5DKHBhdGhfc3F1YXNoX29udG8sICJyZWJhc2UtbWVyZ2Uvc3F1YXNoLW9udG8iKQorc3RhdGljIEdJVF9QQVRIX0ZVTkMocGF0aF9pbnRlcmFjdGl2ZSwgInJlYmFzZS1tZXJnZS9pbnRlcmFjdGl2ZSIpCiBzdGF0aWMgR0lUX1BBVEhfRlVOQyhhcHBseV9kaXIsICJyZWJhc2UtYXBwbHkiKQogc3RhdGljIEdJVF9QQVRIX0ZVTkMobWVyZ2VfZGlyLCAicmViYXNlLW1lcmdlIikKIAogZW51bSByZWJhc2VfdHlwZSB7CiAJUkVCQVNFX1VOU1BFQ0lGSUVEID0gLTEsCi0JUkVCQVNFX0FNLAorCVJFQkFTRV9BUFBMWSwKIAlSRUJBU0VfTUVSR0UsCi0JUkVCQVNFX0lOVEVSQUNUSVZFLAogCVJFQkFTRV9QUkVTRVJWRV9NRVJHRVMKIH07CiAKLXN0YXRpYyBpbnQgdXNlX2J1aWx0aW5fcmViYXNlKHZvaWQpCi17Ci0Jc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7Ci0Jc3RydWN0IHN0cmJ1ZiBvdXQgPSBTVFJCVUZfSU5JVDsKLQlpbnQgcmV0LCBlbnYgPSBnaXRfZW52X2Jvb2woIkdJVF9URVNUX1JFQkFTRV9VU0VfQlVJTFRJTiIsIC0xKTsKLQotCWlmIChlbnYgIT0gLTEpCi0JCXJldHVybiBlbnY7Ci0KLQlhcmd2X2FycmF5X3B1c2hsKCZjcC5hcmdzLAotCQkJICJjb25maWciLCAiLS1ib29sIiwgInJlYmFzZS51c2VidWlsdGluIiwgTlVMTCk7Ci0JY3AuZ2l0X2NtZCA9IDE7Ci0JaWYgKGNhcHR1cmVfY29tbWFuZCgmY3AsICZvdXQsIDYpKSB7Ci0JCXN0cmJ1Zl9yZWxlYXNlKCZvdXQpOwotCQlyZXR1cm4gMTsKLQl9Ci0KLQlzdHJidWZfdHJpbSgmb3V0KTsKLQlyZXQgPSAhc3RyY21wKCJ0cnVlIiwgb3V0LmJ1Zik7Ci0Jc3RyYnVmX3JlbGVhc2UoJm91dCk7Ci0JcmV0dXJuIHJldDsKLX0KK2VudW0gZW1wdHlfdHlwZSB7CisJRU1QVFlfVU5TUEVDSUZJRUQgPSAtMSwKKwlFTVBUWV9EUk9QLAorCUVNUFRZX0tFRVAsCisJRU1QVFlfQVNLCit9OwogCiBzdHJ1Y3QgcmViYXNlX29wdGlvbnMgewogCWVudW0gcmViYXNlX3R5cGUgdHlwZTsKKwllbnVtIGVtcHR5X3R5cGUgZW1wdHk7CisJY29uc3QgY2hhciAqZGVmYXVsdF9iYWNrZW5kOwogCWNvbnN0IGNoYXIgKnN0YXRlX2RpcjsKIAlzdHJ1Y3QgY29tbWl0ICp1cHN0cmVhbTsKIAljb25zdCBjaGFyICp1cHN0cmVhbV9uYW1lOwpAQCAtODAsNyArNzAsNyBAQAogCWNvbnN0IGNoYXIgKm9udG9fbmFtZTsKIAljb25zdCBjaGFyICpyZXZpc2lvbnM7CiAJY29uc3QgY2hhciAqc3dpdGNoX3RvOwotCWludCByb290OworCWludCByb290LCByb290X3dpdGhfb250bzsKIAlzdHJ1Y3Qgb2JqZWN0X2lkICpzcXVhc2hfb250bzsKIAlzdHJ1Y3QgY29tbWl0ICpyZXN0cmljdF9yZXZpc2lvbjsKIAlpbnQgZG9udF9maW5pc2hfcmViYXNlOwpAQCAtOTUsNyArODUsNiBAQAogCWNvbnN0IGNoYXIgKmFjdGlvbjsKIAlpbnQgc2lnbm9mZjsKIAlpbnQgYWxsb3dfcmVyZXJlX2F1dG91cGRhdGU7Ci0JaW50IGtlZXBfZW1wdHk7CiAJaW50IGF1dG9zcXVhc2g7CiAJY2hhciAqZ3BnX3NpZ25fb3B0OwogCWludCBhdXRvc3Rhc2g7CkBAIC0xMDQsMjcgKzkzLDQ3OSBAQAogCWludCByZWJhc2VfbWVyZ2VzLCByZWJhc2VfY291c2luczsKIAljaGFyICpzdHJhdGVneSwgKnN0cmF0ZWd5X29wdHM7CiAJc3RydWN0IHN0cmJ1ZiBnaXRfZm9ybWF0X3BhdGNoX29wdDsKKwlpbnQgcmVzY2hlZHVsZV9mYWlsZWRfZXhlYzsKKwlpbnQgdXNlX2xlZ2FjeV9yZWJhc2U7CiB9OwogCi1zdGF0aWMgaW50IGlzX2ludGVyYWN0aXZlKHN0cnVjdCByZWJhc2Vfb3B0aW9ucyAqb3B0cykKKyNkZWZpbmUgUkVCQVNFX09QVElPTlNfSU5JVCB7CQkJICAJXAorCQkudHlwZSA9IFJFQkFTRV9VTlNQRUNJRklFRCwJICAJXAorCQkuZW1wdHkgPSBFTVBUWV9VTlNQRUNJRklFRCwJICAJXAorCQkuZGVmYXVsdF9iYWNrZW5kID0gIm1lcmdlIiwJICAJXAorCQkuZmxhZ3MgPSBSRUJBU0VfTk9fUVVJRVQsIAkJXAorCQkuZ2l0X2FtX29wdHMgPSBBUkdWX0FSUkFZX0lOSVQsCQlcCisJCS5naXRfZm9ybWF0X3BhdGNoX29wdCA9IFNUUkJVRl9JTklUCVwKKwl9CisKK3N0YXRpYyBzdHJ1Y3QgcmVwbGF5X29wdHMgZ2V0X3JlcGxheV9vcHRzKGNvbnN0IHN0cnVjdCByZWJhc2Vfb3B0aW9ucyAqb3B0cykKIHsKLQlyZXR1cm4gb3B0cy0+dHlwZSA9PSBSRUJBU0VfSU5URVJBQ1RJVkUgfHwKKwlzdHJ1Y3QgcmVwbGF5X29wdHMgcmVwbGF5ID0gUkVQTEFZX09QVFNfSU5JVDsKKworCXJlcGxheS5hY3Rpb24gPSBSRVBMQVlfSU5URVJBQ1RJVkVfUkVCQVNFOworCXNlcXVlbmNlcl9pbml0X2NvbmZpZygmcmVwbGF5KTsKKworCXJlcGxheS5zaWdub2ZmID0gb3B0cy0+c2lnbm9mZjsKKwlyZXBsYXkuYWxsb3dfZmYgPSAhKG9wdHMtPmZsYWdzICYgUkVCQVNFX0ZPUkNFKTsKKwlpZiAob3B0cy0+YWxsb3dfcmVyZXJlX2F1dG91cGRhdGUpCisJCXJlcGxheS5hbGxvd19yZXJlcmVfYXV0byA9IG9wdHMtPmFsbG93X3JlcmVyZV9hdXRvdXBkYXRlOworCXJlcGxheS5hbGxvd19lbXB0eSA9IDE7CisJcmVwbGF5LmFsbG93X2VtcHR5X21lc3NhZ2UgPSBvcHRzLT5hbGxvd19lbXB0eV9tZXNzYWdlOworCXJlcGxheS5kcm9wX3JlZHVuZGFudF9jb21taXRzID0gKG9wdHMtPmVtcHR5ID09IEVNUFRZX0RST1ApOworCXJlcGxheS5rZWVwX3JlZHVuZGFudF9jb21taXRzID0gKG9wdHMtPmVtcHR5ID09IEVNUFRZX0tFRVApOworCXJlcGxheS5xdWlldCA9ICEob3B0cy0+ZmxhZ3MgJiBSRUJBU0VfTk9fUVVJRVQpOworCXJlcGxheS52ZXJib3NlID0gb3B0cy0+ZmxhZ3MgJiBSRUJBU0VfVkVSQk9TRTsKKwlyZXBsYXkucmVzY2hlZHVsZV9mYWlsZWRfZXhlYyA9IG9wdHMtPnJlc2NoZWR1bGVfZmFpbGVkX2V4ZWM7CisJcmVwbGF5LmdwZ19zaWduID0geHN0cmR1cF9vcl9udWxsKG9wdHMtPmdwZ19zaWduX29wdCk7CisJcmVwbGF5LnN0cmF0ZWd5ID0gb3B0cy0+c3RyYXRlZ3k7CisJaWYgKG9wdHMtPnN0cmF0ZWd5X29wdHMpCisJCXBhcnNlX3N0cmF0ZWd5X29wdHMoJnJlcGxheSwgb3B0cy0+c3RyYXRlZ3lfb3B0cyk7CisKKwlpZiAob3B0cy0+c3F1YXNoX29udG8pIHsKKwkJb2lkY3B5KCZyZXBsYXkuc3F1YXNoX29udG8sIG9wdHMtPnNxdWFzaF9vbnRvKTsKKwkJcmVwbGF5LmhhdmVfc3F1YXNoX29udG8gPSAxOworCX0KKworCXJldHVybiByZXBsYXk7Cit9CisKK2VudW0gYWN0aW9uIHsKKwlBQ1RJT05fTk9ORSA9IDAsCisJQUNUSU9OX0NPTlRJTlVFLAorCUFDVElPTl9TS0lQLAorCUFDVElPTl9BQk9SVCwKKwlBQ1RJT05fUVVJVCwKKwlBQ1RJT05fRURJVF9UT0RPLAorCUFDVElPTl9TSE9XX0NVUlJFTlRfUEFUQ0gsCisJQUNUSU9OX1NIT1JURU5fT0lEUywKKwlBQ1RJT05fRVhQQU5EX09JRFMsCisJQUNUSU9OX0NIRUNLX1RPRE9fTElTVCwKKwlBQ1RJT05fUkVBUlJBTkdFX1NRVUFTSCwKKwlBQ1RJT05fQUREX0VYRUMKK307CisKK3N0YXRpYyBjb25zdCBjaGFyICphY3Rpb25fbmFtZXNbXSA9IHsgInVuZGVmaW5lZCIsCisJCQkJICAgICAgImNvbnRpbnVlIiwKKwkJCQkgICAgICAic2tpcCIsCisJCQkJICAgICAgImFib3J0IiwKKwkJCQkgICAgICAicXVpdCIsCisJCQkJICAgICAgImVkaXRfdG9kbyIsCisJCQkJICAgICAgInNob3dfY3VycmVudF9wYXRjaCIgfTsKKworc3RhdGljIGludCBhZGRfZXhlY19jb21tYW5kcyhzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmNvbW1hbmRzKQoreworCWNvbnN0IGNoYXIgKnRvZG9fZmlsZSA9IHJlYmFzZV9wYXRoX3RvZG8oKTsKKwlzdHJ1Y3QgdG9kb19saXN0IHRvZG9fbGlzdCA9IFRPRE9fTElTVF9JTklUOworCWludCByZXM7CisKKwlpZiAoc3RyYnVmX3JlYWRfZmlsZSgmdG9kb19saXN0LmJ1ZiwgdG9kb19maWxlLCAwKSA8IDApCisJCXJldHVybiBlcnJvcl9lcnJubyhfKCJjb3VsZCBub3QgcmVhZCAnJXMnLiIpLCB0b2RvX2ZpbGUpOworCisJaWYgKHRvZG9fbGlzdF9wYXJzZV9pbnNuX2J1ZmZlcih0aGVfcmVwb3NpdG9yeSwgdG9kb19saXN0LmJ1Zi5idWYsCisJCQkJCSZ0b2RvX2xpc3QpKSB7CisJCXRvZG9fbGlzdF9yZWxlYXNlKCZ0b2RvX2xpc3QpOworCQlyZXR1cm4gZXJyb3IoXygidW51c2FibGUgdG9kbyBsaXN0OiAnJXMnIiksIHRvZG9fZmlsZSk7CisJfQorCisJdG9kb19saXN0X2FkZF9leGVjX2NvbW1hbmRzKCZ0b2RvX2xpc3QsIGNvbW1hbmRzKTsKKwlyZXMgPSB0b2RvX2xpc3Rfd3JpdGVfdG9fZmlsZSh0aGVfcmVwb3NpdG9yeSwgJnRvZG9fbGlzdCwKKwkJCQkgICAgICB0b2RvX2ZpbGUsIE5VTEwsIE5VTEwsIC0xLCAwKTsKKwl0b2RvX2xpc3RfcmVsZWFzZSgmdG9kb19saXN0KTsKKworCWlmIChyZXMpCisJCXJldHVybiBlcnJvcl9lcnJubyhfKCJjb3VsZCBub3Qgd3JpdGUgJyVzJy4iKSwgdG9kb19maWxlKTsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCByZWFycmFuZ2Vfc3F1YXNoX2luX3RvZG9fZmlsZSh2b2lkKQoreworCWNvbnN0IGNoYXIgKnRvZG9fZmlsZSA9IHJlYmFzZV9wYXRoX3RvZG8oKTsKKwlzdHJ1Y3QgdG9kb19saXN0IHRvZG9fbGlzdCA9IFRPRE9fTElTVF9JTklUOworCWludCByZXMgPSAwOworCisJaWYgKHN0cmJ1Zl9yZWFkX2ZpbGUoJnRvZG9fbGlzdC5idWYsIHRvZG9fZmlsZSwgMCkgPCAwKQorCQlyZXR1cm4gZXJyb3JfZXJybm8oXygiY291bGQgbm90IHJlYWQgJyVzJy4iKSwgdG9kb19maWxlKTsKKwlpZiAodG9kb19saXN0X3BhcnNlX2luc25fYnVmZmVyKHRoZV9yZXBvc2l0b3J5LCB0b2RvX2xpc3QuYnVmLmJ1ZiwKKwkJCQkJJnRvZG9fbGlzdCkpIHsKKwkJdG9kb19saXN0X3JlbGVhc2UoJnRvZG9fbGlzdCk7CisJCXJldHVybiBlcnJvcihfKCJ1bnVzYWJsZSB0b2RvIGxpc3Q6ICclcyciKSwgdG9kb19maWxlKTsKKwl9CisKKwlyZXMgPSB0b2RvX2xpc3RfcmVhcnJhbmdlX3NxdWFzaCgmdG9kb19saXN0KTsKKwlpZiAoIXJlcykKKwkJcmVzID0gdG9kb19saXN0X3dyaXRlX3RvX2ZpbGUodGhlX3JlcG9zaXRvcnksICZ0b2RvX2xpc3QsCisJCQkJCSAgICAgIHRvZG9fZmlsZSwgTlVMTCwgTlVMTCwgLTEsIDApOworCisJdG9kb19saXN0X3JlbGVhc2UoJnRvZG9fbGlzdCk7CisKKwlpZiAocmVzKQorCQlyZXR1cm4gZXJyb3JfZXJybm8oXygiY291bGQgbm90IHdyaXRlICclcycuIiksIHRvZG9fZmlsZSk7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgdHJhbnNmb3JtX3RvZG9fZmlsZSh1bnNpZ25lZCBmbGFncykKK3sKKwljb25zdCBjaGFyICp0b2RvX2ZpbGUgPSByZWJhc2VfcGF0aF90b2RvKCk7CisJc3RydWN0IHRvZG9fbGlzdCB0b2RvX2xpc3QgPSBUT0RPX0xJU1RfSU5JVDsKKwlpbnQgcmVzOworCisJaWYgKHN0cmJ1Zl9yZWFkX2ZpbGUoJnRvZG9fbGlzdC5idWYsIHRvZG9fZmlsZSwgMCkgPCAwKQorCQlyZXR1cm4gZXJyb3JfZXJybm8oXygiY291bGQgbm90IHJlYWQgJyVzJy4iKSwgdG9kb19maWxlKTsKKworCWlmICh0b2RvX2xpc3RfcGFyc2VfaW5zbl9idWZmZXIodGhlX3JlcG9zaXRvcnksIHRvZG9fbGlzdC5idWYuYnVmLAorCQkJCQkmdG9kb19saXN0KSkgeworCQl0b2RvX2xpc3RfcmVsZWFzZSgmdG9kb19saXN0KTsKKwkJcmV0dXJuIGVycm9yKF8oInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIpLCB0b2RvX2ZpbGUpOworCX0KKworCXJlcyA9IHRvZG9fbGlzdF93cml0ZV90b19maWxlKHRoZV9yZXBvc2l0b3J5LCAmdG9kb19saXN0LCB0b2RvX2ZpbGUsCisJCQkJICAgICAgTlVMTCwgTlVMTCwgLTEsIGZsYWdzKTsKKwl0b2RvX2xpc3RfcmVsZWFzZSgmdG9kb19saXN0KTsKKworCWlmIChyZXMpCisJCXJldHVybiBlcnJvcl9lcnJubyhfKCJjb3VsZCBub3Qgd3JpdGUgJyVzJy4iKSwgdG9kb19maWxlKTsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBlZGl0X3RvZG9fZmlsZSh1bnNpZ25lZCBmbGFncykKK3sKKwljb25zdCBjaGFyICp0b2RvX2ZpbGUgPSByZWJhc2VfcGF0aF90b2RvKCk7CisJc3RydWN0IHRvZG9fbGlzdCB0b2RvX2xpc3QgPSBUT0RPX0xJU1RfSU5JVCwKKwkJbmV3X3RvZG8gPSBUT0RPX0xJU1RfSU5JVDsKKwlpbnQgcmVzID0gMDsKKworCWlmIChzdHJidWZfcmVhZF9maWxlKCZ0b2RvX2xpc3QuYnVmLCB0b2RvX2ZpbGUsIDApIDwgMCkKKwkJcmV0dXJuIGVycm9yX2Vycm5vKF8oImNvdWxkIG5vdCByZWFkICclcycuIiksIHRvZG9fZmlsZSk7CisKKwlzdHJidWZfc3RyaXBzcGFjZSgmdG9kb19saXN0LmJ1ZiwgMSk7CisJcmVzID0gZWRpdF90b2RvX2xpc3QodGhlX3JlcG9zaXRvcnksICZ0b2RvX2xpc3QsICZuZXdfdG9kbywgTlVMTCwgTlVMTCwgZmxhZ3MpOworCWlmICghcmVzICYmIHRvZG9fbGlzdF93cml0ZV90b19maWxlKHRoZV9yZXBvc2l0b3J5LCAmbmV3X3RvZG8sIHRvZG9fZmlsZSwKKwkJCQkJICAgIE5VTEwsIE5VTEwsIC0xLCBmbGFncyAmIH4oVE9ET19MSVNUX1NIT1JURU5fSURTKSkpCisJCXJlcyA9IGVycm9yX2Vycm5vKF8oImNvdWxkIG5vdCB3cml0ZSAnJXMnIiksIHRvZG9fZmlsZSk7CisKKwl0b2RvX2xpc3RfcmVsZWFzZSgmdG9kb19saXN0KTsKKwl0b2RvX2xpc3RfcmVsZWFzZSgmbmV3X3RvZG8pOworCisJcmV0dXJuIHJlczsKK30KKworc3RhdGljIGludCBnZXRfcmV2aXNpb25fcmFuZ2VzKHN0cnVjdCBjb21taXQgKnVwc3RyZWFtLCBzdHJ1Y3QgY29tbWl0ICpvbnRvLAorCQkJICAgICAgIHN0cnVjdCBvYmplY3RfaWQgKm9yaWdfaGVhZCwgY29uc3QgY2hhciAqKmhlYWRfaGFzaCwKKwkJCSAgICAgICBjaGFyICoqcmV2aXNpb25zLCBjaGFyICoqc2hvcnRyZXZpc2lvbnMpCit7CisJc3RydWN0IGNvbW1pdCAqYmFzZV9yZXYgPSB1cHN0cmVhbSA/IHVwc3RyZWFtIDogb250bzsKKwljb25zdCBjaGFyICpzaG9ydGhlYWQ7CisKKwkqaGVhZF9oYXNoID0gZmluZF91bmlxdWVfYWJicmV2KG9yaWdfaGVhZCwgR0lUX01BWF9IRVhTWik7CisJKnJldmlzaW9ucyA9IHhzdHJmbXQoIiVzLi4uJXMiLCBvaWRfdG9faGV4KCZiYXNlX3Jldi0+b2JqZWN0Lm9pZCksCisJCQkJCQkgICAqaGVhZF9oYXNoKTsKKworCXNob3J0aGVhZCA9IGZpbmRfdW5pcXVlX2FiYnJldihvcmlnX2hlYWQsIERFRkFVTFRfQUJCUkVWKTsKKworCWlmICh1cHN0cmVhbSkgeworCQljb25zdCBjaGFyICpzaG9ydHJldjsKKworCQlzaG9ydHJldiA9IGZpbmRfdW5pcXVlX2FiYnJldigmYmFzZV9yZXYtPm9iamVjdC5vaWQsCisJCQkJCSAgICAgIERFRkFVTFRfQUJCUkVWKTsKKworCQkqc2hvcnRyZXZpc2lvbnMgPSB4c3RyZm10KCIlcy4uJXMiLCBzaG9ydHJldiwgc2hvcnRoZWFkKTsKKwl9IGVsc2UKKwkJKnNob3J0cmV2aXNpb25zID0geHN0cmR1cChzaG9ydGhlYWQpOworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgaW5pdF9iYXNpY19zdGF0ZShzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMsIGNvbnN0IGNoYXIgKmhlYWRfbmFtZSwKKwkJCSAgICBzdHJ1Y3QgY29tbWl0ICpvbnRvLCBjb25zdCBjaGFyICpvcmlnX2hlYWQpCit7CisJRklMRSAqaW50ZXJhY3RpdmU7CisKKwlpZiAoIWlzX2RpcmVjdG9yeShtZXJnZV9kaXIoKSkgJiYgbWtkaXJfaW5fZ2l0ZGlyKG1lcmdlX2RpcigpKSkKKwkJcmV0dXJuIGVycm9yX2Vycm5vKF8oImNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5ICVzIiksIG1lcmdlX2RpcigpKTsKKworCWRlbGV0ZV9yZWZsb2coIlJFQkFTRV9IRUFEIik7CisKKwlpbnRlcmFjdGl2ZSA9IGZvcGVuKHBhdGhfaW50ZXJhY3RpdmUoKSwgInciKTsKKwlpZiAoIWludGVyYWN0aXZlKQorCQlyZXR1cm4gZXJyb3JfZXJybm8oXygiY291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiKSk7CisJZmNsb3NlKGludGVyYWN0aXZlKTsKKworCXJldHVybiB3cml0ZV9iYXNpY19zdGF0ZShvcHRzLCBoZWFkX25hbWUsIG9udG8sIG9yaWdfaGVhZCk7Cit9CisKK3N0YXRpYyB2b2lkIHNwbGl0X2V4ZWNfY29tbWFuZHMoY29uc3QgY2hhciAqY21kLCBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmNvbW1hbmRzKQoreworCWlmIChjbWQgJiYgKmNtZCkgeworCQlzdHJpbmdfbGlzdF9zcGxpdChjb21tYW5kcywgY21kLCAnXG4nLCAtMSk7CisKKwkJLyogcmViYXNlLmMgYWRkcyBhIG5ldyBsaW5lIHRvIGNtZCBhZnRlciBldmVyeSBjb21tYW5kLAorCQkgKiBzbyBoZXJlIHRoZSBsYXN0IGNvbW1hbmQgaXMgYWx3YXlzIGVtcHR5ICovCisJCXN0cmluZ19saXN0X3JlbW92ZV9lbXB0eV9pdGVtcyhjb21tYW5kcywgMCk7CisJfQorfQorCitzdGF0aWMgaW50IGRvX2ludGVyYWN0aXZlX3JlYmFzZShzdHJ1Y3QgcmViYXNlX29wdGlvbnMgKm9wdHMsIHVuc2lnbmVkIGZsYWdzKQoreworCWludCByZXQ7CisJY29uc3QgY2hhciAqaGVhZF9oYXNoID0gTlVMTDsKKwljaGFyICpyZXZpc2lvbnMgPSBOVUxMLCAqc2hvcnRyZXZpc2lvbnMgPSBOVUxMOworCXN0cnVjdCBhcmd2X2FycmF5IG1ha2Vfc2NyaXB0X2FyZ3MgPSBBUkdWX0FSUkFZX0lOSVQ7CisJc3RydWN0IHRvZG9fbGlzdCB0b2RvX2xpc3QgPSBUT0RPX0xJU1RfSU5JVDsKKwlzdHJ1Y3QgcmVwbGF5X29wdHMgcmVwbGF5ID0gZ2V0X3JlcGxheV9vcHRzKG9wdHMpOworCXN0cnVjdCBzdHJpbmdfbGlzdCBjb21tYW5kcyA9IFNUUklOR19MSVNUX0lOSVRfRFVQOworCisJaWYgKGdldF9yZXZpc2lvbl9yYW5nZXMob3B0cy0+dXBzdHJlYW0sIG9wdHMtPm9udG8sICZvcHRzLT5vcmlnX2hlYWQsCisJCQkJJmhlYWRfaGFzaCwgJnJldmlzaW9ucywgJnNob3J0cmV2aXNpb25zKSkKKwkJcmV0dXJuIC0xOworCisJaWYgKGluaXRfYmFzaWNfc3RhdGUoJnJlcGxheSwKKwkJCSAgICAgb3B0cy0+aGVhZF9uYW1lID8gb3B0cy0+aGVhZF9uYW1lIDogImRldGFjaGVkIEhFQUQiLAorCQkJICAgICBvcHRzLT5vbnRvLCBoZWFkX2hhc2gpKSB7CisJCWZyZWUocmV2aXNpb25zKTsKKwkJZnJlZShzaG9ydHJldmlzaW9ucyk7CisKKwkJcmV0dXJuIC0xOworCX0KKworCWlmICghb3B0cy0+dXBzdHJlYW0gJiYgb3B0cy0+c3F1YXNoX29udG8pCisJCXdyaXRlX2ZpbGUocGF0aF9zcXVhc2hfb250bygpLCAiJXNcbiIsCisJCQkgICBvaWRfdG9faGV4KG9wdHMtPnNxdWFzaF9vbnRvKSk7CisKKwlhcmd2X2FycmF5X3B1c2hsKCZtYWtlX3NjcmlwdF9hcmdzLCAiIiwgcmV2aXNpb25zLCBOVUxMKTsKKwlpZiAob3B0cy0+cmVzdHJpY3RfcmV2aXNpb24pCisJCWFyZ3ZfYXJyYXlfcHVzaGYoJm1ha2Vfc2NyaXB0X2FyZ3MsICJeJXMiLAorCQkJCSBvaWRfdG9faGV4KCZvcHRzLT5yZXN0cmljdF9yZXZpc2lvbi0+b2JqZWN0Lm9pZCkpOworCisJcmV0ID0gc2VxdWVuY2VyX21ha2Vfc2NyaXB0KHRoZV9yZXBvc2l0b3J5LCAmdG9kb19saXN0LmJ1ZiwKKwkJCQkgICAgbWFrZV9zY3JpcHRfYXJncy5hcmdjLCBtYWtlX3NjcmlwdF9hcmdzLmFyZ3YsCisJCQkJICAgIGZsYWdzKTsKKworCWlmIChyZXQpCisJCWVycm9yKF8oImNvdWxkIG5vdCBnZW5lcmF0ZSB0b2RvIGxpc3QiKSk7CisJZWxzZSB7CisJCWRpc2NhcmRfY2FjaGUoKTsKKwkJaWYgKHRvZG9fbGlzdF9wYXJzZV9pbnNuX2J1ZmZlcih0aGVfcmVwb3NpdG9yeSwgdG9kb19saXN0LmJ1Zi5idWYsCisJCQkJCQkmdG9kb19saXN0KSkKKwkJCUJVRygidW51c2FibGUgdG9kbyBsaXN0Iik7CisKKwkJc3BsaXRfZXhlY19jb21tYW5kcyhvcHRzLT5jbWQsICZjb21tYW5kcyk7CisJCXJldCA9IGNvbXBsZXRlX2FjdGlvbih0aGVfcmVwb3NpdG9yeSwgJnJlcGxheSwgZmxhZ3MsCisJCQlzaG9ydHJldmlzaW9ucywgb3B0cy0+b250b19uYW1lLCBvcHRzLT5vbnRvLCBoZWFkX2hhc2gsCisJCQkmY29tbWFuZHMsIG9wdHMtPmF1dG9zcXVhc2gsICZ0b2RvX2xpc3QpOworCX0KKworCXN0cmluZ19saXN0X2NsZWFyKCZjb21tYW5kcywgMCk7CisJZnJlZShyZXZpc2lvbnMpOworCWZyZWUoc2hvcnRyZXZpc2lvbnMpOworCXRvZG9fbGlzdF9yZWxlYXNlKCZ0b2RvX2xpc3QpOworCWFyZ3ZfYXJyYXlfY2xlYXIoJm1ha2Vfc2NyaXB0X2FyZ3MpOworCisJcmV0dXJuIHJldDsKK30KKworc3RhdGljIGludCBydW5fc2VxdWVuY2VyX3JlYmFzZShzdHJ1Y3QgcmViYXNlX29wdGlvbnMgKm9wdHMsCisJCQkJICBlbnVtIGFjdGlvbiBjb21tYW5kKQoreworCXVuc2lnbmVkIGZsYWdzID0gMDsKKwlpbnQgYWJicmV2aWF0ZV9jb21tYW5kcyA9IDAsIHJldCA9IDA7CisKKwlnaXRfY29uZmlnX2dldF9ib29sKCJyZWJhc2UuYWJicmV2aWF0ZWNvbW1hbmRzIiwgJmFiYnJldmlhdGVfY29tbWFuZHMpOworCisJZmxhZ3MgfD0gYWJicmV2aWF0ZV9jb21tYW5kcyA/IFRPRE9fTElTVF9BQkJSRVZJQVRFX0NNRFMgOiAwOworCWZsYWdzIHw9IG9wdHMtPnJlYmFzZV9tZXJnZXMgPyBUT0RPX0xJU1RfUkVCQVNFX01FUkdFUyA6IDA7CisJZmxhZ3MgfD0gb3B0cy0+cmViYXNlX2NvdXNpbnMgPiAwID8gVE9ET19MSVNUX1JFQkFTRV9DT1VTSU5TIDogMDsKKwlmbGFncyB8PSBvcHRzLT5yb290X3dpdGhfb250byA/IFRPRE9fTElTVF9ST09UX1dJVEhfT05UTyA6IDA7CisJZmxhZ3MgfD0gY29tbWFuZCA9PSBBQ1RJT05fU0hPUlRFTl9PSURTID8gVE9ET19MSVNUX1NIT1JURU5fSURTIDogMDsKKworCXN3aXRjaCAoY29tbWFuZCkgeworCWNhc2UgQUNUSU9OX05PTkU6IHsKKwkJaWYgKCFvcHRzLT5vbnRvICYmICFvcHRzLT51cHN0cmVhbSkKKwkJCWRpZShfKCJhIGJhc2UgY29tbWl0IG11c3QgYmUgcHJvdmlkZWQgd2l0aCAtLXVwc3RyZWFtIG9yIC0tb250byIpKTsKKworCQlyZXQgPSBkb19pbnRlcmFjdGl2ZV9yZWJhc2Uob3B0cywgZmxhZ3MpOworCQlicmVhazsKKwl9CisJY2FzZSBBQ1RJT05fU0tJUDogeworCQlzdHJ1Y3Qgc3RyaW5nX2xpc3QgbWVyZ2VfcnIgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKKworCQlyZXJlcmVfY2xlYXIodGhlX3JlcG9zaXRvcnksICZtZXJnZV9ycik7CisJfQorCQkvKiBmYWxsdGhyb3VnaCAqLworCWNhc2UgQUNUSU9OX0NPTlRJTlVFOiB7CisJCXN0cnVjdCByZXBsYXlfb3B0cyByZXBsYXlfb3B0cyA9IGdldF9yZXBsYXlfb3B0cyhvcHRzKTsKKworCQlyZXQgPSBzZXF1ZW5jZXJfY29udGludWUodGhlX3JlcG9zaXRvcnksICZyZXBsYXlfb3B0cyk7CisJCWJyZWFrOworCX0KKwljYXNlIEFDVElPTl9FRElUX1RPRE86CisJCXJldCA9IGVkaXRfdG9kb19maWxlKGZsYWdzKTsKKwkJYnJlYWs7CisJY2FzZSBBQ1RJT05fU0hPV19DVVJSRU5UX1BBVENIOiB7CisJCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNtZCA9IENISUxEX1BST0NFU1NfSU5JVDsKKworCQljbWQuZ2l0X2NtZCA9IDE7CisJCWFyZ3ZfYXJyYXlfcHVzaGwoJmNtZC5hcmdzLCAic2hvdyIsICJSRUJBU0VfSEVBRCIsICItLSIsIE5VTEwpOworCQlyZXQgPSBydW5fY29tbWFuZCgmY21kKTsKKworCQlicmVhazsKKwl9CisJY2FzZSBBQ1RJT05fU0hPUlRFTl9PSURTOgorCWNhc2UgQUNUSU9OX0VYUEFORF9PSURTOgorCQlyZXQgPSB0cmFuc2Zvcm1fdG9kb19maWxlKGZsYWdzKTsKKwkJYnJlYWs7CisJY2FzZSBBQ1RJT05fQ0hFQ0tfVE9ET19MSVNUOgorCQlyZXQgPSBjaGVja190b2RvX2xpc3RfZnJvbV9maWxlKHRoZV9yZXBvc2l0b3J5KTsKKwkJYnJlYWs7CisJY2FzZSBBQ1RJT05fUkVBUlJBTkdFX1NRVUFTSDoKKwkJcmV0ID0gcmVhcnJhbmdlX3NxdWFzaF9pbl90b2RvX2ZpbGUoKTsKKwkJYnJlYWs7CisJY2FzZSBBQ1RJT05fQUREX0VYRUM6IHsKKwkJc3RydWN0IHN0cmluZ19saXN0IGNvbW1hbmRzID0gU1RSSU5HX0xJU1RfSU5JVF9EVVA7CisKKwkJc3BsaXRfZXhlY19jb21tYW5kcyhvcHRzLT5jbWQsICZjb21tYW5kcyk7CisJCXJldCA9IGFkZF9leGVjX2NvbW1hbmRzKCZjb21tYW5kcyk7CisJCXN0cmluZ19saXN0X2NsZWFyKCZjb21tYW5kcywgMCk7CisJCWJyZWFrOworCX0KKwlkZWZhdWx0OgorCQlCVUcoImludmFsaWQgY29tbWFuZCAnJWQnIiwgY29tbWFuZCk7CisJfQorCisJcmV0dXJuIHJldDsKK30KKworc3RhdGljIGludCBwYXJzZV9vcHRfa2VlcF9lbXB0eShjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsIGNvbnN0IGNoYXIgKmFyZywKKwkJCQlpbnQgdW5zZXQpCit7CisJc3RydWN0IHJlYmFzZV9vcHRpb25zICpvcHRzID0gb3B0LT52YWx1ZTsKKworCUJVR19PTl9PUFRfQVJHKGFyZyk7CisKKwkvKgorCSAqIElmIHdlIGV2ZXIgd2FudCB0byByZW1hcCAtLWtlZXAtZW1wdHkgdG8gLS1lbXB0eT1rZWVwLCBpbnNlcnQ6CisJICogCW9wdHMtPmVtcHR5ID0gdW5zZXQgPyBFTVBUWV9VTlNQRUNJRklFRCA6IEVNUFRZX0tFRVA7CisJICovCisJb3B0cy0+dHlwZSA9IFJFQkFTRV9NRVJHRTsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBidWlsdGluX3JlYmFzZV9pbnRlcmFjdGl2ZV91c2FnZVtdID0geworCU5fKCJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPG9wdGlvbnM+XSIpLAorCU5VTEwKK307CisKK2ludCBjbWRfcmViYXNlX19pbnRlcmFjdGl2ZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKK3sKKwlzdHJ1Y3QgcmViYXNlX29wdGlvbnMgb3B0cyA9IFJFQkFTRV9PUFRJT05TX0lOSVQ7CisJc3RydWN0IG9iamVjdF9pZCBzcXVhc2hfb250byA9IG51bGxfb2lkOworCWVudW0gYWN0aW9uIGNvbW1hbmQgPSBBQ1RJT05fTk9ORTsKKwlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwkJT1BUX05FR0JJVCgwLCAiZmYiLCAmb3B0cy5mbGFncywgTl8oImFsbG93IGZhc3QtZm9yd2FyZCIpLAorCQkJICAgUkVCQVNFX0ZPUkNFKSwKKwkJeyBPUFRJT05fQ0FMTEJBQ0ssICdrJywgImtlZXAtZW1wdHkiLCAmb3B0aW9ucywgTlVMTCwKKwkJCU5fKCIoREVQUkVDQVRFRCkga2VlcCBlbXB0eSBjb21taXRzIiksCisJCQlQQVJTRV9PUFRfTk9BUkcgfCBQQVJTRV9PUFRfSElEREVOLAorCQkJcGFyc2Vfb3B0X2tlZXBfZW1wdHkgfSwKKwkJT1BUX0JPT0xfRigwLCAiYWxsb3ctZW1wdHktbWVzc2FnZSIsICZvcHRzLmFsbG93X2VtcHR5X21lc3NhZ2UsCisJCQkgICBOXygiYWxsb3cgY29tbWl0cyB3aXRoIGVtcHR5IG1lc3NhZ2VzIiksCisJCQkgICBQQVJTRV9PUFRfSElEREVOKSwKKwkJT1BUX0JPT0woMCwgInJlYmFzZS1tZXJnZXMiLCAmb3B0cy5yZWJhc2VfbWVyZ2VzLCBOXygicmViYXNlIG1lcmdlIGNvbW1pdHMiKSksCisJCU9QVF9CT09MKDAsICJyZWJhc2UtY291c2lucyIsICZvcHRzLnJlYmFzZV9jb3VzaW5zLAorCQkJIE5fKCJrZWVwIG9yaWdpbmFsIGJyYW5jaCBwb2ludHMgb2YgY291c2lucyIpKSwKKwkJT1BUX0JPT0woMCwgImF1dG9zcXVhc2giLCAmb3B0cy5hdXRvc3F1YXNoLAorCQkJIE5fKCJtb3ZlIGNvbW1pdHMgdGhhdCBiZWdpbiB3aXRoIHNxdWFzaCEvZml4dXAhIikpLAorCQlPUFRfQk9PTCgwLCAic2lnbm9mZiIsICZvcHRzLnNpZ25vZmYsIE5fKCJzaWduIGNvbW1pdHMiKSksCisJCU9QVF9CSVQoJ3YnLCAidmVyYm9zZSIsICZvcHRzLmZsYWdzLAorCQkJTl8oImRpc3BsYXkgYSBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iKSwKKwkJCVJFQkFTRV9OT19RVUlFVCB8IFJFQkFTRV9WRVJCT1NFIHwgUkVCQVNFX0RJRkZTVEFUKSwKKwkJT1BUX0NNRE1PREUoMCwgImNvbnRpbnVlIiwgJmNvbW1hbmQsIE5fKCJjb250aW51ZSByZWJhc2UiKSwKKwkJCSAgICBBQ1RJT05fQ09OVElOVUUpLAorCQlPUFRfQ01ETU9ERSgwLCAic2tpcCIsICZjb21tYW5kLCBOXygic2tpcCBjb21taXQiKSwgQUNUSU9OX1NLSVApLAorCQlPUFRfQ01ETU9ERSgwLCAiZWRpdC10b2RvIiwgJmNvbW1hbmQsIE5fKCJlZGl0IHRoZSB0b2RvIGxpc3QiKSwKKwkJCSAgICBBQ1RJT05fRURJVF9UT0RPKSwKKwkJT1BUX0NNRE1PREUoMCwgInNob3ctY3VycmVudC1wYXRjaCIsICZjb21tYW5kLCBOXygic2hvdyB0aGUgY3VycmVudCBwYXRjaCIpLAorCQkJICAgIEFDVElPTl9TSE9XX0NVUlJFTlRfUEFUQ0gpLAorCQlPUFRfQ01ETU9ERSgwLCAic2hvcnRlbi1pZHMiLCAmY29tbWFuZCwKKwkJCU5fKCJzaG9ydGVuIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIpLCBBQ1RJT05fU0hPUlRFTl9PSURTKSwKKwkJT1BUX0NNRE1PREUoMCwgImV4cGFuZC1pZHMiLCAmY29tbWFuZCwKKwkJCU5fKCJleHBhbmQgY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IiksIEFDVElPTl9FWFBBTkRfT0lEUyksCisJCU9QVF9DTURNT0RFKDAsICJjaGVjay10b2RvLWxpc3QiLCAmY29tbWFuZCwKKwkJCU5fKCJjaGVjayB0aGUgdG9kbyBsaXN0IiksIEFDVElPTl9DSEVDS19UT0RPX0xJU1QpLAorCQlPUFRfQ01ETU9ERSgwLCAicmVhcnJhbmdlLXNxdWFzaCIsICZjb21tYW5kLAorCQkJTl8oInJlYXJyYW5nZSBmaXh1cC9zcXVhc2ggbGluZXMiKSwgQUNUSU9OX1JFQVJSQU5HRV9TUVVBU0gpLAorCQlPUFRfQ01ETU9ERSgwLCAiYWRkLWV4ZWMtY29tbWFuZHMiLCAmY29tbWFuZCwKKwkJCU5fKCJpbnNlcnQgZXhlYyBjb21tYW5kcyBpbiB0b2RvIGxpc3QiKSwgQUNUSU9OX0FERF9FWEVDKSwKKwkJeyBPUFRJT05fQ0FMTEJBQ0ssIDAsICJvbnRvIiwgJm9wdHMub250bywgTl8oIm9udG8iKSwgTl8oIm9udG8iKSwKKwkJICBQQVJTRV9PUFRfTk9ORUcsIHBhcnNlX29wdF9jb21taXQsIDAgfSwKKwkJeyBPUFRJT05fQ0FMTEJBQ0ssIDAsICJyZXN0cmljdC1yZXZpc2lvbiIsICZvcHRzLnJlc3RyaWN0X3JldmlzaW9uLAorCQkgIE5fKCJyZXN0cmljdC1yZXZpc2lvbiIpLCBOXygicmVzdHJpY3QgcmV2aXNpb24iKSwKKwkJICBQQVJTRV9PUFRfTk9ORUcsIHBhcnNlX29wdF9jb21taXQsIDAgfSwKKwkJeyBPUFRJT05fQ0FMTEJBQ0ssIDAsICJzcXVhc2gtb250byIsICZzcXVhc2hfb250bywgTl8oInNxdWFzaC1vbnRvIiksCisJCSAgTl8oInNxdWFzaCBvbnRvIiksIFBBUlNFX09QVF9OT05FRywgcGFyc2Vfb3B0X29iamVjdF9pZCwgMCB9LAorCQl7IE9QVElPTl9DQUxMQkFDSywgMCwgInVwc3RyZWFtIiwgJm9wdHMudXBzdHJlYW0sIE5fKCJ1cHN0cmVhbSIpLAorCQkgIE5fKCJ0aGUgdXBzdHJlYW0gY29tbWl0IiksIFBBUlNFX09QVF9OT05FRywgcGFyc2Vfb3B0X2NvbW1pdCwKKwkJICAwIH0sCisJCU9QVF9TVFJJTkcoMCwgImhlYWQtbmFtZSIsICZvcHRzLmhlYWRfbmFtZSwgTl8oImhlYWQtbmFtZSIpLCBOXygiaGVhZCBuYW1lIikpLAorCQl7IE9QVElPTl9TVFJJTkcsICdTJywgImdwZy1zaWduIiwgJm9wdHMuZ3BnX3NpZ25fb3B0LCBOXygia2V5LWlkIiksCisJCQlOXygiR1BHLXNpZ24gY29tbWl0cyIpLAorCQkJUEFSU0VfT1BUX09QVEFSRywgTlVMTCwgKGludHB0cl90KSAiIiB9LAorCQlPUFRfU1RSSU5HKDAsICJzdHJhdGVneSIsICZvcHRzLnN0cmF0ZWd5LCBOXygic3RyYXRlZ3kiKSwKKwkJCSAgIE5fKCJyZWJhc2Ugc3RyYXRlZ3kiKSksCisJCU9QVF9TVFJJTkcoMCwgInN0cmF0ZWd5LW9wdHMiLCAmb3B0cy5zdHJhdGVneV9vcHRzLCBOXygic3RyYXRlZ3ktb3B0cyIpLAorCQkJICAgTl8oInN0cmF0ZWd5IG9wdGlvbnMiKSksCisJCU9QVF9TVFJJTkcoMCwgInN3aXRjaC10byIsICZvcHRzLnN3aXRjaF90bywgTl8oInN3aXRjaC10byIpLAorCQkJICAgTl8oInRoZSBicmFuY2ggb3IgY29tbWl0IHRvIGNoZWNrb3V0IikpLAorCQlPUFRfU1RSSU5HKDAsICJvbnRvLW5hbWUiLCAmb3B0cy5vbnRvX25hbWUsIE5fKCJvbnRvLW5hbWUiKSwgTl8oIm9udG8gbmFtZSIpKSwKKwkJT1BUX1NUUklORygwLCAiY21kIiwgJm9wdHMuY21kLCBOXygiY21kIiksIE5fKCJ0aGUgY29tbWFuZCB0byBydW4iKSksCisJCU9QVF9SRVJFUkVfQVVUT1VQREFURSgmb3B0cy5hbGxvd19yZXJlcmVfYXV0b3VwZGF0ZSksCisJCU9QVF9CT09MKDAsICJyZXNjaGVkdWxlLWZhaWxlZC1leGVjIiwgJm9wdHMucmVzY2hlZHVsZV9mYWlsZWRfZXhlYywKKwkJCSBOXygiYXV0b21hdGljYWxseSByZS1zY2hlZHVsZSBhbnkgYGV4ZWNgIHRoYXQgZmFpbHMiKSksCisJCU9QVF9FTkQoKQorCX07CisKKwlvcHRzLnJlYmFzZV9jb3VzaW5zID0gLTE7CisKKwlpZiAoYXJnYyA9PSAxKQorCQl1c2FnZV93aXRoX29wdGlvbnMoYnVpbHRpbl9yZWJhc2VfaW50ZXJhY3RpdmVfdXNhZ2UsIG9wdGlvbnMpOworCisJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LCBvcHRpb25zLAorCQkJYnVpbHRpbl9yZWJhc2VfaW50ZXJhY3RpdmVfdXNhZ2UsIFBBUlNFX09QVF9LRUVQX0FSR1YwKTsKKworCWlmICghaXNfbnVsbF9vaWQoJnNxdWFzaF9vbnRvKSkKKwkJb3B0cy5zcXVhc2hfb250byA9ICZzcXVhc2hfb250bzsKKworCWlmIChvcHRzLnJlYmFzZV9jb3VzaW5zID49IDAgJiYgIW9wdHMucmViYXNlX21lcmdlcykKKwkJd2FybmluZyhfKCItLVtuby1dcmViYXNlLWNvdXNpbnMgaGFzIG5vIGVmZmVjdCB3aXRob3V0ICIKKwkJCSAgIi0tcmViYXNlLW1lcmdlcyIpKTsKKworCXJldHVybiAhIXJ1bl9zZXF1ZW5jZXJfcmViYXNlKCZvcHRzLCBjb21tYW5kKTsKK30KKworc3RhdGljIGludCBpc19tZXJnZShzdHJ1Y3QgcmViYXNlX29wdGlvbnMgKm9wdHMpCit7CisJcmV0dXJuIG9wdHMtPnR5cGUgPT0gUkVCQVNFX01FUkdFIHx8CiAJCW9wdHMtPnR5cGUgPT0gUkVCQVNFX1BSRVNFUlZFX01FUkdFUzsKIH0KIAotc3RhdGljIHZvaWQgaW1wbHlfaW50ZXJhY3RpdmUoc3RydWN0IHJlYmFzZV9vcHRpb25zICpvcHRzLCBjb25zdCBjaGFyICpvcHRpb24pCitzdGF0aWMgdm9pZCBpbXBseV9tZXJnZShzdHJ1Y3QgcmViYXNlX29wdGlvbnMgKm9wdHMsIGNvbnN0IGNoYXIgKm9wdGlvbikKIHsKIAlzd2l0Y2ggKG9wdHMtPnR5cGUpIHsKLQljYXNlIFJFQkFTRV9BTToKKwljYXNlIFJFQkFTRV9BUFBMWToKIAkJZGllKF8oIiVzIHJlcXVpcmVzIGFuIGludGVyYWN0aXZlIHJlYmFzZSIpLCBvcHRpb24pOwogCQlicmVhazsKLQljYXNlIFJFQkFTRV9JTlRFUkFDVElWRToKKwljYXNlIFJFQkFTRV9NRVJHRToKIAljYXNlIFJFQkFTRV9QUkVTRVJWRV9NRVJHRVM6CiAJCWJyZWFrOwotCWNhc2UgUkVCQVNFX01FUkdFOgotCQkvKiB3ZSBzaWxlbnRseSAqdXBncmFkZSogLS1tZXJnZSB0byAtLWludGVyYWN0aXZlIGlmIG5lZWRlZCAqLwogCWRlZmF1bHQ6Ci0JCW9wdHMtPnR5cGUgPSBSRUJBU0VfSU5URVJBQ1RJVkU7IC8qIGltcGxpZWQgKi8KKwkJb3B0cy0+dHlwZSA9IFJFQkFTRV9NRVJHRTsgLyogaW1wbGllZCAqLwogCQlicmVhazsKIAl9CiB9CkBAIC0xODUsMTAgKzYyNiw3IEBACiAJaWYgKGdldF9vaWQoYnVmLmJ1ZiwgJm9wdHMtPm9yaWdfaGVhZCkpCiAJCXJldHVybiBlcnJvcihfKCJpbnZhbGlkIG9yaWctaGVhZDogJyVzJyIpLCBidWYuYnVmKTsKIAotCXN0cmJ1Zl9yZXNldCgmYnVmKTsKLQlpZiAocmVhZF9vbmUoc3RhdGVfZGlyX3BhdGgoInF1aWV0Iiwgb3B0cyksICZidWYpKQotCQlyZXR1cm4gLTE7Ci0JaWYgKGJ1Zi5sZW4pCisJaWYgKGZpbGVfZXhpc3RzKHN0YXRlX2Rpcl9wYXRoKCJxdWlldCIsIG9wdHMpKSkKIAkJb3B0cy0+ZmxhZ3MgJj0gflJFQkFTRV9OT19RVUlFVDsKIAllbHNlCiAJCW9wdHMtPmZsYWdzIHw9IFJFQkFTRV9OT19RVUlFVDsKQEAgLTIwNywxNCArNjQ1LDEzIEBACiAJCQkgICAgJmJ1ZikpCiAJCQlyZXR1cm4gLTE7CiAJCWlmICghc3RyY21wKGJ1Zi5idWYsICItLXJlcmVyZS1hdXRvdXBkYXRlIikpCi0JCQlvcHRzLT5hbGxvd19yZXJlcmVfYXV0b3VwZGF0ZSA9IDE7CisJCQlvcHRzLT5hbGxvd19yZXJlcmVfYXV0b3VwZGF0ZSA9IFJFUkVSRV9BVVRPVVBEQVRFOwogCQllbHNlIGlmICghc3RyY21wKGJ1Zi5idWYsICItLW5vLXJlcmVyZS1hdXRvdXBkYXRlIikpCi0JCQlvcHRzLT5hbGxvd19yZXJlcmVfYXV0b3VwZGF0ZSA9IDA7CisJCQlvcHRzLT5hbGxvd19yZXJlcmVfYXV0b3VwZGF0ZSA9IFJFUkVSRV9OT0FVVE9VUERBVEU7CiAJCWVsc2UKIAkJCXdhcm5pbmcoXygiaWdub3JpbmcgaW52YWxpZCBhbGxvd19yZXJlcmVfYXV0b3VwZGF0ZTogIgogCQkJCSAgIiclcyciKSwgYnVmLmJ1Zik7Ci0JfSBlbHNlCi0JCW9wdHMtPmFsbG93X3JlcmVyZV9hdXRvdXBkYXRlID0gLTE7CisJfQogCiAJaWYgKGZpbGVfZXhpc3RzKHN0YXRlX2Rpcl9wYXRoKCJncGdfc2lnbl9vcHQiLCBvcHRzKSkpIHsKIAkJc3RyYnVmX3Jlc2V0KCZidWYpOwpAQCAtMjQ2LDYgKzY4MywzOCBAQAogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50IHJlYmFzZV93cml0ZV9iYXNpY19zdGF0ZShzdHJ1Y3QgcmViYXNlX29wdGlvbnMgKm9wdHMpCit7CisJd3JpdGVfZmlsZShzdGF0ZV9kaXJfcGF0aCgiaGVhZC1uYW1lIiwgb3B0cyksICIlcyIsCisJCSAgIG9wdHMtPmhlYWRfbmFtZSA/IG9wdHMtPmhlYWRfbmFtZSA6ICJkZXRhY2hlZCBIRUFEIik7CisJd3JpdGVfZmlsZShzdGF0ZV9kaXJfcGF0aCgib250byIsIG9wdHMpLCAiJXMiLAorCQkgICBvcHRzLT5vbnRvID8gb2lkX3RvX2hleCgmb3B0cy0+b250by0+b2JqZWN0Lm9pZCkgOiAiIik7CisJd3JpdGVfZmlsZShzdGF0ZV9kaXJfcGF0aCgib3JpZy1oZWFkIiwgb3B0cyksICIlcyIsCisJCSAgIG9pZF90b19oZXgoJm9wdHMtPm9yaWdfaGVhZCkpOworCWlmICghKG9wdHMtPmZsYWdzICYgUkVCQVNFX05PX1FVSUVUKSkKKwkJd3JpdGVfZmlsZShzdGF0ZV9kaXJfcGF0aCgicXVpZXQiLCBvcHRzKSwgIiVzIiwgIiIpOworCWlmIChvcHRzLT5mbGFncyAmIFJFQkFTRV9WRVJCT1NFKQorCQl3cml0ZV9maWxlKHN0YXRlX2Rpcl9wYXRoKCJ2ZXJib3NlIiwgb3B0cyksICIlcyIsICIiKTsKKwlpZiAob3B0cy0+c3RyYXRlZ3kpCisJCXdyaXRlX2ZpbGUoc3RhdGVfZGlyX3BhdGgoInN0cmF0ZWd5Iiwgb3B0cyksICIlcyIsCisJCQkgICBvcHRzLT5zdHJhdGVneSk7CisJaWYgKG9wdHMtPnN0cmF0ZWd5X29wdHMpCisJCXdyaXRlX2ZpbGUoc3RhdGVfZGlyX3BhdGgoInN0cmF0ZWd5X29wdHMiLCBvcHRzKSwgIiVzIiwKKwkJCSAgIG9wdHMtPnN0cmF0ZWd5X29wdHMpOworCWlmIChvcHRzLT5hbGxvd19yZXJlcmVfYXV0b3VwZGF0ZSA+IDApCisJCXdyaXRlX2ZpbGUoc3RhdGVfZGlyX3BhdGgoImFsbG93X3JlcmVyZV9hdXRvdXBkYXRlIiwgb3B0cyksCisJCQkgICAiLSVzLXJlcmVyZS1hdXRvdXBkYXRlIiwKKwkJCSAgIG9wdHMtPmFsbG93X3JlcmVyZV9hdXRvdXBkYXRlID09IFJFUkVSRV9BVVRPVVBEQVRFID8KKwkJCQkiIiA6ICItbm8iKTsKKwlpZiAob3B0cy0+Z3BnX3NpZ25fb3B0KQorCQl3cml0ZV9maWxlKHN0YXRlX2Rpcl9wYXRoKCJncGdfc2lnbl9vcHQiLCBvcHRzKSwgIiVzIiwKKwkJCSAgIG9wdHMtPmdwZ19zaWduX29wdCk7CisJaWYgKG9wdHMtPnNpZ25vZmYpCisJCXdyaXRlX2ZpbGUoc3RhdGVfZGlyX3BhdGgoInNpZ25vZmYiLCBvcHRzKSwgIi0tc2lnbm9mZiIpOworCisJcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBpbnQgYXBwbHlfYXV0b3N0YXNoKHN0cnVjdCByZWJhc2Vfb3B0aW9ucyAqb3B0cykKIHsKIAljb25zdCBjaGFyICpwYXRoID0gc3RhdGVfZGlyX3BhdGgoImF1dG9zdGFzaCIsIG9wdHMpOwpAQCAtMjk1LDIwICs3NjQsMzAgQEAKIHsKIAlzdHJ1Y3Qgc3RyYnVmIGRpciA9IFNUUkJVRl9JTklUOwogCWNvbnN0IGNoYXIgKmFyZ3ZfZ2NfYXV0b1tdID0geyAiZ2MiLCAiLS1hdXRvIiwgTlVMTCB9OworCWludCByZXQgPSAwOwogCiAJZGVsZXRlX3JlZihOVUxMLCAiUkVCQVNFX0hFQUQiLCBOVUxMLCBSRUZfTk9fREVSRUYpOwogCWFwcGx5X2F1dG9zdGFzaChvcHRzKTsKLQljbG9zZV9hbGxfcGFja3ModGhlX3JlcG9zaXRvcnktPm9iamVjdHMpOworCWNsb3NlX29iamVjdF9zdG9yZSh0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cyk7CiAJLyoKIAkgKiBXZSBpZ25vcmUgZXJyb3JzIGluICdnYyAtLWF1dG8nLCBzaW5jZSB0aGUKIAkgKiB1c2VyIHNob3VsZCBzZWUgdGhlbS4KIAkgKi8KIAlydW5fY29tbWFuZF92X29wdChhcmd2X2djX2F1dG8sIFJVTl9HSVRfQ01EKTsKLQlzdHJidWZfYWRkc3RyKCZkaXIsIG9wdHMtPnN0YXRlX2Rpcik7Ci0JcmVtb3ZlX2Rpcl9yZWN1cnNpdmVseSgmZGlyLCAwKTsKLQlzdHJidWZfcmVsZWFzZSgmZGlyKTsKKwlpZiAob3B0cy0+dHlwZSA9PSBSRUJBU0VfTUVSR0UpIHsKKwkJc3RydWN0IHJlcGxheV9vcHRzIHJlcGxheSA9IFJFUExBWV9PUFRTX0lOSVQ7CiAKLQlyZXR1cm4gMDsKKwkJcmVwbGF5LmFjdGlvbiA9IFJFUExBWV9JTlRFUkFDVElWRV9SRUJBU0U7CisJCXJldCA9IHNlcXVlbmNlcl9yZW1vdmVfc3RhdGUoJnJlcGxheSk7CisJfSBlbHNlIHsKKwkJc3RyYnVmX2FkZHN0cigmZGlyLCBvcHRzLT5zdGF0ZV9kaXIpOworCQlpZiAocmVtb3ZlX2Rpcl9yZWN1cnNpdmVseSgmZGlyLCAwKSkKKwkJCXJldCA9IGVycm9yKF8oImNvdWxkIG5vdCByZW1vdmUgJyVzJyIpLAorCQkJCSAgICBvcHRzLT5zdGF0ZV9kaXIpOworCQlzdHJidWZfcmVsZWFzZSgmZGlyKTsKKwl9CisKKwlyZXR1cm4gcmV0OwogfQogCiBzdGF0aWMgc3RydWN0IGNvbW1pdCAqcGVlbF9jb21taXR0aXNoKGNvbnN0IGNoYXIgKm5hbWUpCkBAIC0zMzMsNiArODEyLDE2NiBAQAogCX0KIH0KIAorI2RlZmluZSBHSVRfUkVGTE9HX0FDVElPTl9FTlZJUk9OTUVOVCAiR0lUX1JFRkxPR19BQ1RJT04iCisKKyNkZWZpbmUgUkVTRVRfSEVBRF9ERVRBQ0ggKDE8PDApCisjZGVmaW5lIFJFU0VUX0hFQURfSEFSRCAoMTw8MSkKKyNkZWZpbmUgUkVTRVRfSEVBRF9SVU5fUE9TVF9DSEVDS09VVF9IT09LICgxPDwyKQorI2RlZmluZSBSRVNFVF9IRUFEX1JFRlNfT05MWSAoMTw8MykKKyNkZWZpbmUgUkVTRVRfT1JJR19IRUFEICgxPDw0KQorCitzdGF0aWMgaW50IHJlc2V0X2hlYWQoc3RydWN0IG9iamVjdF9pZCAqb2lkLCBjb25zdCBjaGFyICphY3Rpb24sCisJCSAgICAgIGNvbnN0IGNoYXIgKnN3aXRjaF90b19icmFuY2gsIHVuc2lnbmVkIGZsYWdzLAorCQkgICAgICBjb25zdCBjaGFyICpyZWZsb2dfb3JpZ19oZWFkLCBjb25zdCBjaGFyICpyZWZsb2dfaGVhZCkKK3sKKwl1bnNpZ25lZCBkZXRhY2hfaGVhZCA9IGZsYWdzICYgUkVTRVRfSEVBRF9ERVRBQ0g7CisJdW5zaWduZWQgcmVzZXRfaGFyZCA9IGZsYWdzICYgUkVTRVRfSEVBRF9IQVJEOworCXVuc2lnbmVkIHJ1bl9ob29rID0gZmxhZ3MgJiBSRVNFVF9IRUFEX1JVTl9QT1NUX0NIRUNLT1VUX0hPT0s7CisJdW5zaWduZWQgcmVmc19vbmx5ID0gZmxhZ3MgJiBSRVNFVF9IRUFEX1JFRlNfT05MWTsKKwl1bnNpZ25lZCB1cGRhdGVfb3JpZ19oZWFkID0gZmxhZ3MgJiBSRVNFVF9PUklHX0hFQUQ7CisJc3RydWN0IG9iamVjdF9pZCBoZWFkX29pZDsKKwlzdHJ1Y3QgdHJlZV9kZXNjIGRlc2NbMl0gPSB7IHsgTlVMTCB9LCB7IE5VTEwgfSB9OworCXN0cnVjdCBsb2NrX2ZpbGUgbG9jayA9IExPQ0tfSU5JVDsKKwlzdHJ1Y3QgdW5wYWNrX3RyZWVzX29wdGlvbnMgdW5wYWNrX3RyZWVfb3B0czsKKwlzdHJ1Y3QgdHJlZSAqdHJlZTsKKwljb25zdCBjaGFyICpyZWZsb2dfYWN0aW9uOworCXN0cnVjdCBzdHJidWYgbXNnID0gU1RSQlVGX0lOSVQ7CisJc2l6ZV90IHByZWZpeF9sZW47CisJc3RydWN0IG9iamVjdF9pZCAqb3JpZyA9IE5VTEwsIG9pZF9vcmlnLAorCQkqb2xkX29yaWcgPSBOVUxMLCBvaWRfb2xkX29yaWc7CisJaW50IHJldCA9IDAsIG5yID0gMDsKKworCWlmIChzd2l0Y2hfdG9fYnJhbmNoICYmICFzdGFydHNfd2l0aChzd2l0Y2hfdG9fYnJhbmNoLCAicmVmcy8iKSkKKwkJQlVHKCJOb3QgYSBmdWxseSBxdWFsaWZpZWQgYnJhbmNoOiAnJXMnIiwgc3dpdGNoX3RvX2JyYW5jaCk7CisKKwlpZiAoIXJlZnNfb25seSAmJiBob2xkX2xvY2tlZF9pbmRleCgmbG9jaywgTE9DS19SRVBPUlRfT05fRVJST1IpIDwgMCkgeworCQlyZXQgPSAtMTsKKwkJZ290byBsZWF2ZV9yZXNldF9oZWFkOworCX0KKworCWlmICgoIW9pZCB8fCAhcmVzZXRfaGFyZCkgJiYgZ2V0X29pZCgiSEVBRCIsICZoZWFkX29pZCkpIHsKKwkJcmV0ID0gZXJyb3IoXygiY291bGQgbm90IGRldGVybWluZSBIRUFEIHJldmlzaW9uIikpOworCQlnb3RvIGxlYXZlX3Jlc2V0X2hlYWQ7CisJfQorCisJaWYgKCFvaWQpCisJCW9pZCA9ICZoZWFkX29pZDsKKworCWlmIChyZWZzX29ubHkpCisJCWdvdG8gcmVzZXRfaGVhZF9yZWZzOworCisJbWVtc2V0KCZ1bnBhY2tfdHJlZV9vcHRzLCAwLCBzaXplb2YodW5wYWNrX3RyZWVfb3B0cykpOworCXNldHVwX3VucGFja190cmVlc19wb3JjZWxhaW4oJnVucGFja190cmVlX29wdHMsIGFjdGlvbik7CisJdW5wYWNrX3RyZWVfb3B0cy5oZWFkX2lkeCA9IDE7CisJdW5wYWNrX3RyZWVfb3B0cy5zcmNfaW5kZXggPSB0aGVfcmVwb3NpdG9yeS0+aW5kZXg7CisJdW5wYWNrX3RyZWVfb3B0cy5kc3RfaW5kZXggPSB0aGVfcmVwb3NpdG9yeS0+aW5kZXg7CisJdW5wYWNrX3RyZWVfb3B0cy5mbiA9IHJlc2V0X2hhcmQgPyBvbmV3YXlfbWVyZ2UgOiB0d293YXlfbWVyZ2U7CisJdW5wYWNrX3RyZWVfb3B0cy51cGRhdGUgPSAxOworCXVucGFja190cmVlX29wdHMubWVyZ2UgPSAxOworCWlmICghZGV0YWNoX2hlYWQpCisJCXVucGFja190cmVlX29wdHMucmVzZXQgPSAxOworCisJaWYgKHJlcG9fcmVhZF9pbmRleF91bm1lcmdlZCh0aGVfcmVwb3NpdG9yeSkgPCAwKSB7CisJCXJldCA9IGVycm9yKF8oImNvdWxkIG5vdCByZWFkIGluZGV4IikpOworCQlnb3RvIGxlYXZlX3Jlc2V0X2hlYWQ7CisJfQorCisJaWYgKCFyZXNldF9oYXJkICYmICFmaWxsX3RyZWVfZGVzY3JpcHRvcih0aGVfcmVwb3NpdG9yeSwgJmRlc2NbbnIrK10sICZoZWFkX29pZCkpIHsKKwkJcmV0ID0gZXJyb3IoXygiZmFpbGVkIHRvIGZpbmQgdHJlZSBvZiAlcyIpLAorCQkJICAgIG9pZF90b19oZXgoJmhlYWRfb2lkKSk7CisJCWdvdG8gbGVhdmVfcmVzZXRfaGVhZDsKKwl9CisKKwlpZiAoIWZpbGxfdHJlZV9kZXNjcmlwdG9yKHRoZV9yZXBvc2l0b3J5LCAmZGVzY1tucisrXSwgb2lkKSkgeworCQlyZXQgPSBlcnJvcihfKCJmYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzIiksIG9pZF90b19oZXgob2lkKSk7CisJCWdvdG8gbGVhdmVfcmVzZXRfaGVhZDsKKwl9CisKKwlpZiAodW5wYWNrX3RyZWVzKG5yLCBkZXNjLCAmdW5wYWNrX3RyZWVfb3B0cykpIHsKKwkJcmV0ID0gLTE7CisJCWdvdG8gbGVhdmVfcmVzZXRfaGVhZDsKKwl9CisKKwl0cmVlID0gcGFyc2VfdHJlZV9pbmRpcmVjdChvaWQpOworCXByaW1lX2NhY2hlX3RyZWUodGhlX3JlcG9zaXRvcnksIHRoZV9yZXBvc2l0b3J5LT5pbmRleCwgdHJlZSk7CisKKwlpZiAod3JpdGVfbG9ja2VkX2luZGV4KHRoZV9yZXBvc2l0b3J5LT5pbmRleCwgJmxvY2ssIENPTU1JVF9MT0NLKSA8IDApIHsKKwkJcmV0ID0gZXJyb3IoXygiY291bGQgbm90IHdyaXRlIGluZGV4IikpOworCQlnb3RvIGxlYXZlX3Jlc2V0X2hlYWQ7CisJfQorCityZXNldF9oZWFkX3JlZnM6CisJcmVmbG9nX2FjdGlvbiA9IGdldGVudihHSVRfUkVGTE9HX0FDVElPTl9FTlZJUk9OTUVOVCk7CisJc3RyYnVmX2FkZGYoJm1zZywgIiVzOiAiLCByZWZsb2dfYWN0aW9uID8gcmVmbG9nX2FjdGlvbiA6ICJyZWJhc2UiKTsKKwlwcmVmaXhfbGVuID0gbXNnLmxlbjsKKworCWlmICh1cGRhdGVfb3JpZ19oZWFkKSB7CisJCWlmICghZ2V0X29pZCgiT1JJR19IRUFEIiwgJm9pZF9vbGRfb3JpZykpCisJCQlvbGRfb3JpZyA9ICZvaWRfb2xkX29yaWc7CisJCWlmICghZ2V0X29pZCgiSEVBRCIsICZvaWRfb3JpZykpIHsKKwkJCW9yaWcgPSAmb2lkX29yaWc7CisJCQlpZiAoIXJlZmxvZ19vcmlnX2hlYWQpIHsKKwkJCQlzdHJidWZfYWRkc3RyKCZtc2csICJ1cGRhdGluZyBPUklHX0hFQUQiKTsKKwkJCQlyZWZsb2dfb3JpZ19oZWFkID0gbXNnLmJ1ZjsKKwkJCX0KKwkJCXVwZGF0ZV9yZWYocmVmbG9nX29yaWdfaGVhZCwgIk9SSUdfSEVBRCIsIG9yaWcsCisJCQkJICAgb2xkX29yaWcsIDAsIFVQREFURV9SRUZTX01TR19PTl9FUlIpOworCQl9IGVsc2UgaWYgKG9sZF9vcmlnKQorCQkJZGVsZXRlX3JlZihOVUxMLCAiT1JJR19IRUFEIiwgb2xkX29yaWcsIDApOworCX0KKworCWlmICghcmVmbG9nX2hlYWQpIHsKKwkJc3RyYnVmX3NldGxlbigmbXNnLCBwcmVmaXhfbGVuKTsKKwkJc3RyYnVmX2FkZHN0cigmbXNnLCAidXBkYXRpbmcgSEVBRCIpOworCQlyZWZsb2dfaGVhZCA9IG1zZy5idWY7CisJfQorCWlmICghc3dpdGNoX3RvX2JyYW5jaCkKKwkJcmV0ID0gdXBkYXRlX3JlZihyZWZsb2dfaGVhZCwgIkhFQUQiLCBvaWQsIG9yaWcsCisJCQkJIGRldGFjaF9oZWFkID8gUkVGX05PX0RFUkVGIDogMCwKKwkJCQkgVVBEQVRFX1JFRlNfTVNHX09OX0VSUik7CisJZWxzZSB7CisJCXJldCA9IHVwZGF0ZV9yZWYocmVmbG9nX2hlYWQsIHN3aXRjaF90b19icmFuY2gsIG9pZCwKKwkJCQkgTlVMTCwgMCwgVVBEQVRFX1JFRlNfTVNHX09OX0VSUik7CisJCWlmICghcmV0KQorCQkJcmV0ID0gY3JlYXRlX3N5bXJlZigiSEVBRCIsIHN3aXRjaF90b19icmFuY2gsCisJCQkJCSAgICByZWZsb2dfaGVhZCk7CisJfQorCWlmIChydW5faG9vaykKKwkJcnVuX2hvb2tfbGUoTlVMTCwgInBvc3QtY2hlY2tvdXQiLAorCQkJICAgIG9pZF90b19oZXgob3JpZyA/IG9yaWcgOiAmbnVsbF9vaWQpLAorCQkJICAgIG9pZF90b19oZXgob2lkKSwgIjEiLCBOVUxMKTsKKworbGVhdmVfcmVzZXRfaGVhZDoKKwlzdHJidWZfcmVsZWFzZSgmbXNnKTsKKwlyb2xsYmFja19sb2NrX2ZpbGUoJmxvY2spOworCXdoaWxlIChucikKKwkJZnJlZSgodm9pZCAqKWRlc2NbLS1ucl0uYnVmZmVyKTsKKwlyZXR1cm4gcmV0OworfQorCitzdGF0aWMgaW50IG1vdmVfdG9fb3JpZ2luYWxfYnJhbmNoKHN0cnVjdCByZWJhc2Vfb3B0aW9ucyAqb3B0cykKK3sKKwlzdHJ1Y3Qgc3RyYnVmIG9yaWdfaGVhZF9yZWZsb2cgPSBTVFJCVUZfSU5JVCwgaGVhZF9yZWZsb2cgPSBTVFJCVUZfSU5JVDsKKwlpbnQgcmV0OworCisJaWYgKCFvcHRzLT5oZWFkX25hbWUpCisJCXJldHVybiAwOyAvKiBub3RoaW5nIHRvIG1vdmUgYmFjayB0byAqLworCisJaWYgKCFvcHRzLT5vbnRvKQorCQlCVUcoIm1vdmVfdG9fb3JpZ2luYWxfYnJhbmNoIHdpdGhvdXQgb250byIpOworCisJc3RyYnVmX2FkZGYoJm9yaWdfaGVhZF9yZWZsb2csICJyZWJhc2UgZmluaXNoZWQ6ICVzIG9udG8gJXMiLAorCQkgICAgb3B0cy0+aGVhZF9uYW1lLCBvaWRfdG9faGV4KCZvcHRzLT5vbnRvLT5vYmplY3Qub2lkKSk7CisJc3RyYnVmX2FkZGYoJmhlYWRfcmVmbG9nLCAicmViYXNlIGZpbmlzaGVkOiByZXR1cm5pbmcgdG8gJXMiLAorCQkgICAgb3B0cy0+aGVhZF9uYW1lKTsKKwlyZXQgPSByZXNldF9oZWFkKE5VTEwsICIiLCBvcHRzLT5oZWFkX25hbWUsIFJFU0VUX0hFQURfUkVGU19PTkxZLAorCQkJIG9yaWdfaGVhZF9yZWZsb2cuYnVmLCBoZWFkX3JlZmxvZy5idWYpOworCisJc3RyYnVmX3JlbGVhc2UoJm9yaWdfaGVhZF9yZWZsb2cpOworCXN0cmJ1Zl9yZWxlYXNlKCZoZWFkX3JlZmxvZyk7CisJcmV0dXJuIHJldDsKK30KKwogc3RhdGljIGNvbnN0IGNoYXIgKnJlc29sdmVtc2cgPQogTl8oIlJlc29sdmUgYWxsIGNvbmZsaWN0cyBtYW51YWxseSwgbWFyayB0aGVtIGFzIHJlc29sdmVkIHdpdGhcbiIKICJcImdpdCBhZGQvcm0gPGNvbmZsaWN0ZWRfZmlsZXM+XCIsIHRoZW4gcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIuXG4iCkBAIC0zNDAsODMgKzk3OSwxNTQgQEAKICJUbyBhYm9ydCBhbmQgZ2V0IGJhY2sgdG8gdGhlIHN0YXRlIGJlZm9yZSBcImdpdCByZWJhc2VcIiwgcnVuICIKICJcImdpdCByZWJhc2UgLS1hYm9ydFwiLiIpOwogCi1zdGF0aWMgaW50IHJ1bl9zcGVjaWZpY19yZWJhc2Uoc3RydWN0IHJlYmFzZV9vcHRpb25zICpvcHRzKQorc3RhdGljIGludCBydW5fYW0oc3RydWN0IHJlYmFzZV9vcHRpb25zICpvcHRzKQoreworCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGFtID0gQ0hJTERfUFJPQ0VTU19JTklUOworCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGZvcm1hdF9wYXRjaCA9IENISUxEX1BST0NFU1NfSU5JVDsKKwlzdHJ1Y3Qgc3RyYnVmIHJldmlzaW9ucyA9IFNUUkJVRl9JTklUOworCWludCBzdGF0dXM7CisJY2hhciAqcmViYXNlZF9wYXRjaGVzOworCisJYW0uZ2l0X2NtZCA9IDE7CisJYXJndl9hcnJheV9wdXNoKCZhbS5hcmdzLCAiYW0iKTsKKworCWlmIChvcHRzLT5hY3Rpb24gJiYgIXN0cmNtcCgiY29udGludWUiLCBvcHRzLT5hY3Rpb24pKSB7CisJCWFyZ3ZfYXJyYXlfcHVzaCgmYW0uYXJncywgIi0tcmVzb2x2ZWQiKTsKKwkJYXJndl9hcnJheV9wdXNoZigmYW0uYXJncywgIi0tcmVzb2x2ZW1zZz0lcyIsIHJlc29sdmVtc2cpOworCQlpZiAob3B0cy0+Z3BnX3NpZ25fb3B0KQorCQkJYXJndl9hcnJheV9wdXNoKCZhbS5hcmdzLCBvcHRzLT5ncGdfc2lnbl9vcHQpOworCQlzdGF0dXMgPSBydW5fY29tbWFuZCgmYW0pOworCQlpZiAoc3RhdHVzKQorCQkJcmV0dXJuIHN0YXR1czsKKworCQlyZXR1cm4gbW92ZV90b19vcmlnaW5hbF9icmFuY2gob3B0cyk7CisJfQorCWlmIChvcHRzLT5hY3Rpb24gJiYgIXN0cmNtcCgic2tpcCIsIG9wdHMtPmFjdGlvbikpIHsKKwkJYXJndl9hcnJheV9wdXNoKCZhbS5hcmdzLCAiLS1za2lwIik7CisJCWFyZ3ZfYXJyYXlfcHVzaGYoJmFtLmFyZ3MsICItLXJlc29sdmVtc2c9JXMiLCByZXNvbHZlbXNnKTsKKwkJc3RhdHVzID0gcnVuX2NvbW1hbmQoJmFtKTsKKwkJaWYgKHN0YXR1cykKKwkJCXJldHVybiBzdGF0dXM7CisKKwkJcmV0dXJuIG1vdmVfdG9fb3JpZ2luYWxfYnJhbmNoKG9wdHMpOworCX0KKwlpZiAob3B0cy0+YWN0aW9uICYmICFzdHJjbXAoInNob3ctY3VycmVudC1wYXRjaCIsIG9wdHMtPmFjdGlvbikpIHsKKwkJYXJndl9hcnJheV9wdXNoKCZhbS5hcmdzLCAiLS1zaG93LWN1cnJlbnQtcGF0Y2giKTsKKwkJcmV0dXJuIHJ1bl9jb21tYW5kKCZhbSk7CisJfQorCisJc3RyYnVmX2FkZGYoJnJldmlzaW9ucywgIiVzLi4uJXMiLAorCQkgICAgb2lkX3RvX2hleChvcHRzLT5yb290ID8KKwkJCSAgICAgICAvKiB0aGlzIGlzIG5vdyBlcXVpdmFsZW50IHRvICFvcHRzLT51cHN0cmVhbSAqLworCQkJICAgICAgICZvcHRzLT5vbnRvLT5vYmplY3Qub2lkIDoKKwkJCSAgICAgICAmb3B0cy0+dXBzdHJlYW0tPm9iamVjdC5vaWQpLAorCQkgICAgb2lkX3RvX2hleCgmb3B0cy0+b3JpZ19oZWFkKSk7CisKKwlyZWJhc2VkX3BhdGNoZXMgPSB4c3RyZHVwKGdpdF9wYXRoKCJyZWJhc2VkLXBhdGNoZXMiKSk7CisJZm9ybWF0X3BhdGNoLm91dCA9IG9wZW4ocmViYXNlZF9wYXRjaGVzLAorCQkJCU9fV1JPTkxZIHwgT19DUkVBVCB8IE9fVFJVTkMsIDA2NjYpOworCWlmIChmb3JtYXRfcGF0Y2gub3V0IDwgMCkgeworCQlzdGF0dXMgPSBlcnJvcl9lcnJubyhfKCJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nIiksCisJCQkJICAgICByZWJhc2VkX3BhdGNoZXMpOworCQlmcmVlKHJlYmFzZWRfcGF0Y2hlcyk7CisJCWFyZ3ZfYXJyYXlfY2xlYXIoJmFtLmFyZ3MpOworCQlyZXR1cm4gc3RhdHVzOworCX0KKworCWZvcm1hdF9wYXRjaC5naXRfY21kID0gMTsKKwlhcmd2X2FycmF5X3B1c2hsKCZmb3JtYXRfcGF0Y2guYXJncywgImZvcm1hdC1wYXRjaCIsICItayIsICItLXN0ZG91dCIsCisJCQkgIi0tZnVsbC1pbmRleCIsICItLWNoZXJyeS1waWNrIiwgIi0tcmlnaHQtb25seSIsCisJCQkgIi0tc3JjLXByZWZpeD1hLyIsICItLWRzdC1wcmVmaXg9Yi8iLCAiLS1uby1yZW5hbWVzIiwKKwkJCSAiLS1uby1jb3Zlci1sZXR0ZXIiLCAiLS1wcmV0dHk9bWJveHJkIiwgIi0tdG9wby1vcmRlciIsCisJCQkgIi0tbm8tYmFzZSIsIE5VTEwpOworCWlmIChvcHRzLT5naXRfZm9ybWF0X3BhdGNoX29wdC5sZW4pCisJCWFyZ3ZfYXJyYXlfc3BsaXQoJmZvcm1hdF9wYXRjaC5hcmdzLAorCQkJCSBvcHRzLT5naXRfZm9ybWF0X3BhdGNoX29wdC5idWYpOworCWFyZ3ZfYXJyYXlfcHVzaCgmZm9ybWF0X3BhdGNoLmFyZ3MsIHJldmlzaW9ucy5idWYpOworCWlmIChvcHRzLT5yZXN0cmljdF9yZXZpc2lvbikKKwkJYXJndl9hcnJheV9wdXNoZigmZm9ybWF0X3BhdGNoLmFyZ3MsICJeJXMiLAorCQkJCSBvaWRfdG9faGV4KCZvcHRzLT5yZXN0cmljdF9yZXZpc2lvbi0+b2JqZWN0Lm9pZCkpOworCisJc3RhdHVzID0gcnVuX2NvbW1hbmQoJmZvcm1hdF9wYXRjaCk7CisJaWYgKHN0YXR1cykgeworCQl1bmxpbmsocmViYXNlZF9wYXRjaGVzKTsKKwkJZnJlZShyZWJhc2VkX3BhdGNoZXMpOworCQlhcmd2X2FycmF5X2NsZWFyKCZhbS5hcmdzKTsKKworCQlyZXNldF9oZWFkKCZvcHRzLT5vcmlnX2hlYWQsICJjaGVja291dCIsIG9wdHMtPmhlYWRfbmFtZSwgMCwKKwkJCSAgICJIRUFEIiwgTlVMTCk7CisJCWVycm9yKF8oIlxuZ2l0IGVuY291bnRlcmVkIGFuIGVycm9yIHdoaWxlIHByZXBhcmluZyB0aGUgIgorCQkJInBhdGNoZXMgdG8gcmVwbGF5XG4iCisJCQkidGhlc2UgcmV2aXNpb25zOlxuIgorCQkJIlxuICAgICVzXG5cbiIKKwkJCSJBcyBhIHJlc3VsdCwgZ2l0IGNhbm5vdCByZWJhc2UgdGhlbS4iKSwKKwkJICAgICAgb3B0cy0+cmV2aXNpb25zKTsKKworCQlzdHJidWZfcmVsZWFzZSgmcmV2aXNpb25zKTsKKwkJcmV0dXJuIHN0YXR1czsKKwl9CisJc3RyYnVmX3JlbGVhc2UoJnJldmlzaW9ucyk7CisKKwlhbS5pbiA9IG9wZW4ocmViYXNlZF9wYXRjaGVzLCBPX1JET05MWSk7CisJaWYgKGFtLmluIDwgMCkgeworCQlzdGF0dXMgPSBlcnJvcl9lcnJubyhfKCJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciByZWFkaW5nIiksCisJCQkJICAgICByZWJhc2VkX3BhdGNoZXMpOworCQlmcmVlKHJlYmFzZWRfcGF0Y2hlcyk7CisJCWFyZ3ZfYXJyYXlfY2xlYXIoJmFtLmFyZ3MpOworCQlyZXR1cm4gc3RhdHVzOworCX0KKworCWFyZ3ZfYXJyYXlfcHVzaHYoJmFtLmFyZ3MsIG9wdHMtPmdpdF9hbV9vcHRzLmFyZ3YpOworCWFyZ3ZfYXJyYXlfcHVzaCgmYW0uYXJncywgIi0tcmViYXNpbmciKTsKKwlhcmd2X2FycmF5X3B1c2hmKCZhbS5hcmdzLCAiLS1yZXNvbHZlbXNnPSVzIiwgcmVzb2x2ZW1zZyk7CisJYXJndl9hcnJheV9wdXNoKCZhbS5hcmdzLCAiLS1wYXRjaC1mb3JtYXQ9bWJveHJkIik7CisJaWYgKG9wdHMtPmFsbG93X3JlcmVyZV9hdXRvdXBkYXRlID09IFJFUkVSRV9BVVRPVVBEQVRFKQorCQlhcmd2X2FycmF5X3B1c2goJmFtLmFyZ3MsICItLXJlcmVyZS1hdXRvdXBkYXRlIik7CisJZWxzZSBpZiAob3B0cy0+YWxsb3dfcmVyZXJlX2F1dG91cGRhdGUgPT0gUkVSRVJFX05PQVVUT1VQREFURSkKKwkJYXJndl9hcnJheV9wdXNoKCZhbS5hcmdzLCAiLS1uby1yZXJlcmUtYXV0b3VwZGF0ZSIpOworCWlmIChvcHRzLT5ncGdfc2lnbl9vcHQpCisJCWFyZ3ZfYXJyYXlfcHVzaCgmYW0uYXJncywgb3B0cy0+Z3BnX3NpZ25fb3B0KTsKKwlzdGF0dXMgPSBydW5fY29tbWFuZCgmYW0pOworCXVubGluayhyZWJhc2VkX3BhdGNoZXMpOworCWZyZWUocmViYXNlZF9wYXRjaGVzKTsKKworCWlmICghc3RhdHVzKSB7CisJCXJldHVybiBtb3ZlX3RvX29yaWdpbmFsX2JyYW5jaChvcHRzKTsKKwl9CisKKwlpZiAoaXNfZGlyZWN0b3J5KG9wdHMtPnN0YXRlX2RpcikpCisJCXJlYmFzZV93cml0ZV9iYXNpY19zdGF0ZShvcHRzKTsKKworCXJldHVybiBzdGF0dXM7Cit9CisKK3N0YXRpYyBpbnQgcnVuX3NwZWNpZmljX3JlYmFzZShzdHJ1Y3QgcmViYXNlX29wdGlvbnMgKm9wdHMsIGVudW0gYWN0aW9uIGFjdGlvbikKIHsKIAljb25zdCBjaGFyICphcmd2W10gPSB7IE5VTEwsIE5VTEwgfTsKIAlzdHJ1Y3Qgc3RyYnVmIHNjcmlwdF9zbmlwcGV0ID0gU1RSQlVGX0lOSVQsIGJ1ZiA9IFNUUkJVRl9JTklUOwogCWludCBzdGF0dXM7CiAJY29uc3QgY2hhciAqYmFja2VuZCwgKmJhY2tlbmRfZnVuYzsKIAotCWlmIChvcHRzLT50eXBlID09IFJFQkFTRV9JTlRFUkFDVElWRSkgewotCQkvKiBSdW4gYnVpbHRpbiBpbnRlcmFjdGl2ZSByZWJhc2UgKi8KLQkJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY2hpbGQgPSBDSElMRF9QUk9DRVNTX0lOSVQ7Ci0KLQkJYXJndl9hcnJheV9wdXNoZigmY2hpbGQuZW52X2FycmF5LCAiR0lUX0NIRVJSWV9QSUNLX0hFTFA9JXMiLAotCQkJCSByZXNvbHZlbXNnKTsKKwlpZiAob3B0cy0+dHlwZSA9PSBSRUJBU0VfTUVSR0UpIHsKKwkJLyogUnVuIHNlcXVlbmNlci1iYXNlZCByZWJhc2UgKi8KKwkJc2V0ZW52KCJHSVRfQ0hFUlJZX1BJQ0tfSEVMUCIsIHJlc29sdmVtc2csIDEpOwogCQlpZiAoIShvcHRzLT5mbGFncyAmIFJFQkFTRV9JTlRFUkFDVElWRV9FWFBMSUNJVCkpIHsKLQkJCWFyZ3ZfYXJyYXlfcHVzaCgmY2hpbGQuZW52X2FycmF5LCAiR0lUX0VESVRPUj06Iik7CisJCQlzZXRlbnYoIkdJVF9TRVFVRU5DRV9FRElUT1IiLCAiOiIsIDEpOwogCQkJb3B0cy0+YXV0b3NxdWFzaCA9IDA7CiAJCX0KKwkJaWYgKG9wdHMtPmdwZ19zaWduX29wdCkgeworCQkJLyogcmVtb3ZlIHRoZSBsZWFkaW5nICItUyIgKi8KKwkJCWNoYXIgKnRtcCA9IHhzdHJkdXAob3B0cy0+Z3BnX3NpZ25fb3B0ICsgMik7CisJCQlmcmVlKG9wdHMtPmdwZ19zaWduX29wdCk7CisJCQlvcHRzLT5ncGdfc2lnbl9vcHQgPSB0bXA7CisJCX0KIAotCQljaGlsZC5naXRfY21kID0gMTsKLQkJYXJndl9hcnJheV9wdXNoKCZjaGlsZC5hcmdzLCAicmViYXNlLS1pbnRlcmFjdGl2ZSIpOworCQlzdGF0dXMgPSBydW5fc2VxdWVuY2VyX3JlYmFzZShvcHRzLCBhY3Rpb24pOworCQlnb3RvIGZpbmlzaGVkX3JlYmFzZTsKKwl9CiAKLQkJaWYgKG9wdHMtPmFjdGlvbikKLQkJCWFyZ3ZfYXJyYXlfcHVzaGYoJmNoaWxkLmFyZ3MsICItLSVzIiwgb3B0cy0+YWN0aW9uKTsKLQkJaWYgKG9wdHMtPmtlZXBfZW1wdHkpCi0JCQlhcmd2X2FycmF5X3B1c2goJmNoaWxkLmFyZ3MsICItLWtlZXAtZW1wdHkiKTsKLQkJaWYgKG9wdHMtPnJlYmFzZV9tZXJnZXMpCi0JCQlhcmd2X2FycmF5X3B1c2goJmNoaWxkLmFyZ3MsICItLXJlYmFzZS1tZXJnZXMiKTsKLQkJaWYgKG9wdHMtPnJlYmFzZV9jb3VzaW5zKQotCQkJYXJndl9hcnJheV9wdXNoKCZjaGlsZC5hcmdzLCAiLS1yZWJhc2UtY291c2lucyIpOwotCQlpZiAob3B0cy0+YXV0b3NxdWFzaCkKLQkJCWFyZ3ZfYXJyYXlfcHVzaCgmY2hpbGQuYXJncywgIi0tYXV0b3NxdWFzaCIpOwotCQlpZiAob3B0cy0+ZmxhZ3MgJiBSRUJBU0VfVkVSQk9TRSkKLQkJCWFyZ3ZfYXJyYXlfcHVzaCgmY2hpbGQuYXJncywgIi0tdmVyYm9zZSIpOwotCQlpZiAob3B0cy0+ZmxhZ3MgJiBSRUJBU0VfRk9SQ0UpCi0JCQlhcmd2X2FycmF5X3B1c2goJmNoaWxkLmFyZ3MsICItLW5vLWZmIik7Ci0JCWlmIChvcHRzLT5yZXN0cmljdF9yZXZpc2lvbikKLQkJCWFyZ3ZfYXJyYXlfcHVzaGYoJmNoaWxkLmFyZ3MsCi0JCQkJCSAiLS1yZXN0cmljdC1yZXZpc2lvbj1eJXMiLAotCQkJCQkgb2lkX3RvX2hleCgmb3B0cy0+cmVzdHJpY3RfcmV2aXNpb24tPm9iamVjdC5vaWQpKTsKLQkJaWYgKG9wdHMtPnVwc3RyZWFtKQotCQkJYXJndl9hcnJheV9wdXNoZigmY2hpbGQuYXJncywgIi0tdXBzdHJlYW09JXMiLAotCQkJCQkgb2lkX3RvX2hleCgmb3B0cy0+dXBzdHJlYW0tPm9iamVjdC5vaWQpKTsKLQkJaWYgKG9wdHMtPm9udG8pCi0JCQlhcmd2X2FycmF5X3B1c2hmKCZjaGlsZC5hcmdzLCAiLS1vbnRvPSVzIiwKLQkJCQkJIG9pZF90b19oZXgoJm9wdHMtPm9udG8tPm9iamVjdC5vaWQpKTsKLQkJaWYgKG9wdHMtPnNxdWFzaF9vbnRvKQotCQkJYXJndl9hcnJheV9wdXNoZigmY2hpbGQuYXJncywgIi0tc3F1YXNoLW9udG89JXMiLAotCQkJCQkgb2lkX3RvX2hleChvcHRzLT5zcXVhc2hfb250bykpOwotCQlpZiAob3B0cy0+b250b19uYW1lKQotCQkJYXJndl9hcnJheV9wdXNoZigmY2hpbGQuYXJncywgIi0tb250by1uYW1lPSVzIiwKLQkJCQkJIG9wdHMtPm9udG9fbmFtZSk7Ci0JCWFyZ3ZfYXJyYXlfcHVzaGYoJmNoaWxkLmFyZ3MsICItLWhlYWQtbmFtZT0lcyIsCi0JCQkJIG9wdHMtPmhlYWRfbmFtZSA/Ci0JCQkJIG9wdHMtPmhlYWRfbmFtZSA6ICJkZXRhY2hlZCBIRUFEIik7Ci0JCWlmIChvcHRzLT5zdHJhdGVneSkKLQkJCWFyZ3ZfYXJyYXlfcHVzaGYoJmNoaWxkLmFyZ3MsICItLXN0cmF0ZWd5PSVzIiwKLQkJCQkJIG9wdHMtPnN0cmF0ZWd5KTsKLQkJaWYgKG9wdHMtPnN0cmF0ZWd5X29wdHMpCi0JCQlhcmd2X2FycmF5X3B1c2hmKCZjaGlsZC5hcmdzLCAiLS1zdHJhdGVneS1vcHRzPSVzIiwKLQkJCQkJIG9wdHMtPnN0cmF0ZWd5X29wdHMpOwotCQlpZiAob3B0cy0+c3dpdGNoX3RvKQotCQkJYXJndl9hcnJheV9wdXNoZigmY2hpbGQuYXJncywgIi0tc3dpdGNoLXRvPSVzIiwKLQkJCQkJIG9wdHMtPnN3aXRjaF90byk7Ci0JCWlmIChvcHRzLT5jbWQpCi0JCQlhcmd2X2FycmF5X3B1c2hmKCZjaGlsZC5hcmdzLCAiLS1jbWQ9JXMiLCBvcHRzLT5jbWQpOwotCQlpZiAob3B0cy0+YWxsb3dfZW1wdHlfbWVzc2FnZSkKLQkJCWFyZ3ZfYXJyYXlfcHVzaCgmY2hpbGQuYXJncywgIi0tYWxsb3ctZW1wdHktbWVzc2FnZSIpOwotCQlpZiAob3B0cy0+YWxsb3dfcmVyZXJlX2F1dG91cGRhdGUgPiAwKQotCQkJYXJndl9hcnJheV9wdXNoKCZjaGlsZC5hcmdzLCAiLS1yZXJlcmUtYXV0b3VwZGF0ZSIpOwotCQllbHNlIGlmIChvcHRzLT5hbGxvd19yZXJlcmVfYXV0b3VwZGF0ZSA9PSAwKQotCQkJYXJndl9hcnJheV9wdXNoKCZjaGlsZC5hcmdzLCAiLS1uby1yZXJlcmUtYXV0b3VwZGF0ZSIpOwotCQlpZiAob3B0cy0+Z3BnX3NpZ25fb3B0KQotCQkJYXJndl9hcnJheV9wdXNoKCZjaGlsZC5hcmdzLCBvcHRzLT5ncGdfc2lnbl9vcHQpOwotCQlpZiAob3B0cy0+c2lnbm9mZikKLQkJCWFyZ3ZfYXJyYXlfcHVzaCgmY2hpbGQuYXJncywgIi0tc2lnbm9mZiIpOwotCi0JCXN0YXR1cyA9IHJ1bl9jb21tYW5kKCZjaGlsZCk7CisJaWYgKG9wdHMtPnR5cGUgPT0gUkVCQVNFX0FQUExZKSB7CisJCXN0YXR1cyA9IHJ1bl9hbShvcHRzKTsKIAkJZ290byBmaW5pc2hlZF9yZWJhc2U7CiAJfQogCkBAIC00MzUsOCArMTE0NSw2IEBACiAJYWRkX3Zhcigmc2NyaXB0X3NuaXBwZXQsICJyZXZpc2lvbnMiLCBvcHRzLT5yZXZpc2lvbnMpOwogCWFkZF92YXIoJnNjcmlwdF9zbmlwcGV0LCAicmVzdHJpY3RfcmV2aXNpb24iLCBvcHRzLT5yZXN0cmljdF9yZXZpc2lvbiA/CiAJCW9pZF90b19oZXgoJm9wdHMtPnJlc3RyaWN0X3JldmlzaW9uLT5vYmplY3Qub2lkKSA6IE5VTEwpOwotCWFkZF92YXIoJnNjcmlwdF9zbmlwcGV0LCAiR0lUX1FVSUVUIiwKLQkJb3B0cy0+ZmxhZ3MgJiBSRUJBU0VfTk9fUVVJRVQgPyAiIiA6ICJ0Iik7CiAJc3FfcXVvdGVfYXJndl9wcmV0dHkoJmJ1Ziwgb3B0cy0+Z2l0X2FtX29wdHMuYXJndik7CiAJYWRkX3Zhcigmc2NyaXB0X3NuaXBwZXQsICJnaXRfYW1fb3B0IiwgYnVmLmJ1Zik7CiAJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CkBAIC00NTEsMTAgKzExNTksOSBAQAogCWFkZF92YXIoJnNjcmlwdF9zbmlwcGV0LCAiYWN0aW9uIiwgb3B0cy0+YWN0aW9uID8gb3B0cy0+YWN0aW9uIDogIiIpOwogCWFkZF92YXIoJnNjcmlwdF9zbmlwcGV0LCAic2lnbm9mZiIsIG9wdHMtPnNpZ25vZmYgPyAiLS1zaWdub2ZmIiA6ICIiKTsKIAlhZGRfdmFyKCZzY3JpcHRfc25pcHBldCwgImFsbG93X3JlcmVyZV9hdXRvdXBkYXRlIiwKLQkJb3B0cy0+YWxsb3dfcmVyZXJlX2F1dG91cGRhdGUgPCAwID8gIiIgOgogCQlvcHRzLT5hbGxvd19yZXJlcmVfYXV0b3VwZGF0ZSA/Ci0JCSItLXJlcmVyZS1hdXRvdXBkYXRlIiA6ICItLW5vLXJlcmVyZS1hdXRvdXBkYXRlIik7Ci0JYWRkX3Zhcigmc2NyaXB0X3NuaXBwZXQsICJrZWVwX2VtcHR5Iiwgb3B0cy0+a2VlcF9lbXB0eSA/ICJ5ZXMiIDogIiIpOworCQkJb3B0cy0+YWxsb3dfcmVyZXJlX2F1dG91cGRhdGUgPT0gUkVSRVJFX0FVVE9VUERBVEUgPworCQkJIi0tcmVyZXJlLWF1dG91cGRhdGUiIDogIi0tbm8tcmVyZXJlLWF1dG91cGRhdGUiIDogIiIpOwogCWFkZF92YXIoJnNjcmlwdF9zbmlwcGV0LCAiYXV0b3NxdWFzaCIsIG9wdHMtPmF1dG9zcXVhc2ggPyAidCIgOiAiIik7CiAJYWRkX3Zhcigmc2NyaXB0X3NuaXBwZXQsICJncGdfc2lnbl9vcHQiLCBvcHRzLT5ncGdfc2lnbl9vcHQpOwogCWFkZF92YXIoJnNjcmlwdF9zbmlwcGV0LCAiY21kIiwgb3B0cy0+Y21kKTsKQEAgLTQ3MiwyMiArMTE3OSwxNCBAQAogCWFkZF92YXIoJnNjcmlwdF9zbmlwcGV0LCAiZ2l0X2Zvcm1hdF9wYXRjaF9vcHQiLAogCQlvcHRzLT5naXRfZm9ybWF0X3BhdGNoX29wdC5idWYpOwogCi0JaWYgKGlzX2ludGVyYWN0aXZlKG9wdHMpICYmCisJaWYgKGlzX21lcmdlKG9wdHMpICYmCiAJICAgICEob3B0cy0+ZmxhZ3MgJiBSRUJBU0VfSU5URVJBQ1RJVkVfRVhQTElDSVQpKSB7CiAJCXN0cmJ1Zl9hZGRzdHIoJnNjcmlwdF9zbmlwcGV0LAotCQkJICAgICAgIkdJVF9FRElUT1I9OjsgZXhwb3J0IEdJVF9FRElUT1I7ICIpOworCQkJICAgICAgIkdJVF9TRVFVRU5DRV9FRElUT1I9OjsgZXhwb3J0IEdJVF9TRVFVRU5DRV9FRElUT1I7ICIpOwogCQlvcHRzLT5hdXRvc3F1YXNoID0gMDsKIAl9CiAKIAlzd2l0Y2ggKG9wdHMtPnR5cGUpIHsKLQljYXNlIFJFQkFTRV9BTToKLQkJYmFja2VuZCA9ICJnaXQtcmViYXNlLS1hbSI7Ci0JCWJhY2tlbmRfZnVuYyA9ICJnaXRfcmViYXNlX19hbSI7Ci0JCWJyZWFrOwotCWNhc2UgUkVCQVNFX01FUkdFOgotCQliYWNrZW5kID0gImdpdC1yZWJhc2UtLW1lcmdlIjsKLQkJYmFja2VuZF9mdW5jID0gImdpdF9yZWJhc2VfX21lcmdlIjsKLQkJYnJlYWs7CiAJY2FzZSBSRUJBU0VfUFJFU0VSVkVfTUVSR0VTOgogCQliYWNrZW5kID0gImdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcyI7CiAJCWJhY2tlbmRfZnVuYyA9ICJnaXRfcmViYXNlX19wcmVzZXJ2ZV9tZXJnZXMiOwpAQCAtNDk4LDE2ICsxMTk3LDE1IEBACiAJfQogCiAJc3RyYnVmX2FkZGYoJnNjcmlwdF9zbmlwcGV0LAotCQkgICAgIi4gZ2l0LXNoLXNldHVwICYmIC4gZ2l0LXJlYmFzZS0tY29tbW9uICYmIgotCQkgICAgIiAuICVzICYmICVzIiwgYmFja2VuZCwgYmFja2VuZF9mdW5jKTsKKwkJICAgICIuIGdpdC1zaC1zZXR1cCAmJiAuICVzICYmICVzIiwgYmFja2VuZCwgYmFja2VuZF9mdW5jKTsKIAlhcmd2WzBdID0gc2NyaXB0X3NuaXBwZXQuYnVmOwogCiAJc3RhdHVzID0gcnVuX2NvbW1hbmRfdl9vcHQoYXJndiwgUlVOX1VTSU5HX1NIRUxMKTsKIGZpbmlzaGVkX3JlYmFzZToKIAlpZiAob3B0cy0+ZG9udF9maW5pc2hfcmViYXNlKQogCQk7IC8qIGRvIG5vdGhpbmcgKi8KLQllbHNlIGlmIChvcHRzLT50eXBlID09IFJFQkFTRV9JTlRFUkFDVElWRSkKLQkJOyAvKiBpbnRlcmFjdGl2ZSByZWJhc2UgY2xlYW5zIHVwIGFmdGVyIGl0c2VsZiAqLworCWVsc2UgaWYgKG9wdHMtPnR5cGUgPT0gUkVCQVNFX01FUkdFKQorCQk7IC8qIG1lcmdlIGJhY2tlbmQgY2xlYW5zIHVwIGFmdGVyIGl0c2VsZiAqLwogCWVsc2UgaWYgKHN0YXR1cyA9PSAwKSB7CiAJCWlmICghZmlsZV9leGlzdHMoc3RhdGVfZGlyX3BhdGgoInN0b3BwZWQtc2hhIiwgb3B0cykpKQogCQkJZmluaXNoX3JlYmFzZShvcHRzKTsKQEAgLTUyNiwxMjUgKzEyMjQsNiBAQAogCXJldHVybiBzdGF0dXMgPyAtMSA6IDA7CiB9CiAKLSNkZWZpbmUgR0lUX1JFRkxPR19BQ1RJT05fRU5WSVJPTk1FTlQgIkdJVF9SRUZMT0dfQUNUSU9OIgotCi0jZGVmaW5lIFJFU0VUX0hFQURfREVUQUNIICgxPDwwKQotI2RlZmluZSBSRVNFVF9IRUFEX0hBUkQgKDE8PDEpCi0KLXN0YXRpYyBpbnQgcmVzZXRfaGVhZChzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGNvbnN0IGNoYXIgKmFjdGlvbiwKLQkJICAgICAgY29uc3QgY2hhciAqc3dpdGNoX3RvX2JyYW5jaCwgdW5zaWduZWQgZmxhZ3MsCi0JCSAgICAgIGNvbnN0IGNoYXIgKnJlZmxvZ19vcmlnX2hlYWQsIGNvbnN0IGNoYXIgKnJlZmxvZ19oZWFkKQotewotCXVuc2lnbmVkIGRldGFjaF9oZWFkID0gZmxhZ3MgJiBSRVNFVF9IRUFEX0RFVEFDSDsKLQl1bnNpZ25lZCByZXNldF9oYXJkID0gZmxhZ3MgJiBSRVNFVF9IRUFEX0hBUkQ7Ci0Jc3RydWN0IG9iamVjdF9pZCBoZWFkX29pZDsKLQlzdHJ1Y3QgdHJlZV9kZXNjIGRlc2NbMl0gPSB7IHsgTlVMTCB9LCB7IE5VTEwgfSB9OwotCXN0cnVjdCBsb2NrX2ZpbGUgbG9jayA9IExPQ0tfSU5JVDsKLQlzdHJ1Y3QgdW5wYWNrX3RyZWVzX29wdGlvbnMgdW5wYWNrX3RyZWVfb3B0czsKLQlzdHJ1Y3QgdHJlZSAqdHJlZTsKLQljb25zdCBjaGFyICpyZWZsb2dfYWN0aW9uOwotCXN0cnVjdCBzdHJidWYgbXNnID0gU1RSQlVGX0lOSVQ7Ci0Jc2l6ZV90IHByZWZpeF9sZW47Ci0Jc3RydWN0IG9iamVjdF9pZCAqb3JpZyA9IE5VTEwsIG9pZF9vcmlnLAotCQkqb2xkX29yaWcgPSBOVUxMLCBvaWRfb2xkX29yaWc7Ci0JaW50IHJldCA9IDAsIG5yID0gMDsKLQotCWlmIChzd2l0Y2hfdG9fYnJhbmNoICYmICFzdGFydHNfd2l0aChzd2l0Y2hfdG9fYnJhbmNoLCAicmVmcy8iKSkKLQkJQlVHKCJOb3QgYSBmdWxseSBxdWFsaWZpZWQgYnJhbmNoOiAnJXMnIiwgc3dpdGNoX3RvX2JyYW5jaCk7Ci0KLQlpZiAoaG9sZF9sb2NrZWRfaW5kZXgoJmxvY2ssIExPQ0tfUkVQT1JUX09OX0VSUk9SKSA8IDApIHsKLQkJcmV0ID0gLTE7Ci0JCWdvdG8gbGVhdmVfcmVzZXRfaGVhZDsKLQl9Ci0KLQlpZiAoKCFvaWQgfHwgIXJlc2V0X2hhcmQpICYmIGdldF9vaWQoIkhFQUQiLCAmaGVhZF9vaWQpKSB7Ci0JCXJldCA9IGVycm9yKF8oImNvdWxkIG5vdCBkZXRlcm1pbmUgSEVBRCByZXZpc2lvbiIpKTsKLQkJZ290byBsZWF2ZV9yZXNldF9oZWFkOwotCX0KLQotCWlmICghb2lkKQotCQlvaWQgPSAmaGVhZF9vaWQ7Ci0KLQltZW1zZXQoJnVucGFja190cmVlX29wdHMsIDAsIHNpemVvZih1bnBhY2tfdHJlZV9vcHRzKSk7Ci0Jc2V0dXBfdW5wYWNrX3RyZWVzX3BvcmNlbGFpbigmdW5wYWNrX3RyZWVfb3B0cywgYWN0aW9uKTsKLQl1bnBhY2tfdHJlZV9vcHRzLmhlYWRfaWR4ID0gMTsKLQl1bnBhY2tfdHJlZV9vcHRzLnNyY19pbmRleCA9IHRoZV9yZXBvc2l0b3J5LT5pbmRleDsKLQl1bnBhY2tfdHJlZV9vcHRzLmRzdF9pbmRleCA9IHRoZV9yZXBvc2l0b3J5LT5pbmRleDsKLQl1bnBhY2tfdHJlZV9vcHRzLmZuID0gcmVzZXRfaGFyZCA/IG9uZXdheV9tZXJnZSA6IHR3b3dheV9tZXJnZTsKLQl1bnBhY2tfdHJlZV9vcHRzLnVwZGF0ZSA9IDE7Ci0JdW5wYWNrX3RyZWVfb3B0cy5tZXJnZSA9IDE7Ci0JaWYgKCFkZXRhY2hfaGVhZCkKLQkJdW5wYWNrX3RyZWVfb3B0cy5yZXNldCA9IDE7Ci0KLQlpZiAocmVhZF9pbmRleF91bm1lcmdlZCh0aGVfcmVwb3NpdG9yeS0+aW5kZXgpIDwgMCkgewotCQlyZXQgPSBlcnJvcihfKCJjb3VsZCBub3QgcmVhZCBpbmRleCIpKTsKLQkJZ290byBsZWF2ZV9yZXNldF9oZWFkOwotCX0KLQotCWlmICghcmVzZXRfaGFyZCAmJiAhZmlsbF90cmVlX2Rlc2NyaXB0b3IoJmRlc2NbbnIrK10sICZoZWFkX29pZCkpIHsKLQkJcmV0ID0gZXJyb3IoXygiZmFpbGVkIHRvIGZpbmQgdHJlZSBvZiAlcyIpLAotCQkJICAgIG9pZF90b19oZXgoJmhlYWRfb2lkKSk7Ci0JCWdvdG8gbGVhdmVfcmVzZXRfaGVhZDsKLQl9Ci0KLQlpZiAoIWZpbGxfdHJlZV9kZXNjcmlwdG9yKCZkZXNjW25yKytdLCBvaWQpKSB7Ci0JCXJldCA9IGVycm9yKF8oImZhaWxlZCB0byBmaW5kIHRyZWUgb2YgJXMiKSwgb2lkX3RvX2hleChvaWQpKTsKLQkJZ290byBsZWF2ZV9yZXNldF9oZWFkOwotCX0KLQotCWlmICh1bnBhY2tfdHJlZXMobnIsIGRlc2MsICZ1bnBhY2tfdHJlZV9vcHRzKSkgewotCQlyZXQgPSAtMTsKLQkJZ290byBsZWF2ZV9yZXNldF9oZWFkOwotCX0KLQotCXRyZWUgPSBwYXJzZV90cmVlX2luZGlyZWN0KG9pZCk7Ci0JcHJpbWVfY2FjaGVfdHJlZSh0aGVfcmVwb3NpdG9yeS0+aW5kZXgsIHRyZWUpOwotCi0JaWYgKHdyaXRlX2xvY2tlZF9pbmRleCh0aGVfcmVwb3NpdG9yeS0+aW5kZXgsICZsb2NrLCBDT01NSVRfTE9DSykgPCAwKSB7Ci0JCXJldCA9IGVycm9yKF8oImNvdWxkIG5vdCB3cml0ZSBpbmRleCIpKTsKLQkJZ290byBsZWF2ZV9yZXNldF9oZWFkOwotCX0KLQotCXJlZmxvZ19hY3Rpb24gPSBnZXRlbnYoR0lUX1JFRkxPR19BQ1RJT05fRU5WSVJPTk1FTlQpOwotCXN0cmJ1Zl9hZGRmKCZtc2csICIlczogIiwgcmVmbG9nX2FjdGlvbiA/IHJlZmxvZ19hY3Rpb24gOiAicmViYXNlIik7Ci0JcHJlZml4X2xlbiA9IG1zZy5sZW47Ci0KLQlpZiAoIWdldF9vaWQoIk9SSUdfSEVBRCIsICZvaWRfb2xkX29yaWcpKQotCQlvbGRfb3JpZyA9ICZvaWRfb2xkX29yaWc7Ci0JaWYgKCFnZXRfb2lkKCJIRUFEIiwgJm9pZF9vcmlnKSkgewotCQlvcmlnID0gJm9pZF9vcmlnOwotCQlpZiAoIXJlZmxvZ19vcmlnX2hlYWQpIHsKLQkJCXN0cmJ1Zl9hZGRzdHIoJm1zZywgInVwZGF0aW5nIE9SSUdfSEVBRCIpOwotCQkJcmVmbG9nX29yaWdfaGVhZCA9IG1zZy5idWY7Ci0JCX0KLQkJdXBkYXRlX3JlZihyZWZsb2dfb3JpZ19oZWFkLCAiT1JJR19IRUFEIiwgb3JpZywgb2xkX29yaWcsIDAsCi0JCQkgICBVUERBVEVfUkVGU19NU0dfT05fRVJSKTsKLQl9IGVsc2UgaWYgKG9sZF9vcmlnKQotCQlkZWxldGVfcmVmKE5VTEwsICJPUklHX0hFQUQiLCBvbGRfb3JpZywgMCk7Ci0JaWYgKCFyZWZsb2dfaGVhZCkgewotCQlzdHJidWZfc2V0bGVuKCZtc2csIHByZWZpeF9sZW4pOwotCQlzdHJidWZfYWRkc3RyKCZtc2csICJ1cGRhdGluZyBIRUFEIik7Ci0JCXJlZmxvZ19oZWFkID0gbXNnLmJ1ZjsKLQl9Ci0JaWYgKCFzd2l0Y2hfdG9fYnJhbmNoKQotCQlyZXQgPSB1cGRhdGVfcmVmKHJlZmxvZ19oZWFkLCAiSEVBRCIsIG9pZCwgb3JpZywKLQkJCQkgZGV0YWNoX2hlYWQgPyBSRUZfTk9fREVSRUYgOiAwLAotCQkJCSBVUERBVEVfUkVGU19NU0dfT05fRVJSKTsKLQllbHNlIHsKLQkJcmV0ID0gY3JlYXRlX3N5bXJlZigiSEVBRCIsIHN3aXRjaF90b19icmFuY2gsIG1zZy5idWYpOwotCQlpZiAoIXJldCkKLQkJCXJldCA9IHVwZGF0ZV9yZWYocmVmbG9nX2hlYWQsICJIRUFEIiwgb2lkLCBOVUxMLCAwLAotCQkJCQkgVVBEQVRFX1JFRlNfTVNHX09OX0VSUik7Ci0JfQotCi1sZWF2ZV9yZXNldF9oZWFkOgotCXN0cmJ1Zl9yZWxlYXNlKCZtc2cpOwotCXJvbGxiYWNrX2xvY2tfZmlsZSgmbG9jayk7Ci0Jd2hpbGUgKG5yKQotCQlmcmVlKCh2b2lkICopZGVzY1stLW5yXS5idWZmZXIpOwotCXJldHVybiByZXQ7Ci19Ci0KIHN0YXRpYyBpbnQgcmViYXNlX2NvbmZpZyhjb25zdCBjaGFyICp2YXIsIGNvbnN0IGNoYXIgKnZhbHVlLCB2b2lkICpkYXRhKQogewogCXN0cnVjdCByZWJhc2Vfb3B0aW9ucyAqb3B0cyA9IGRhdGE7CkBAIC02NTMsNyArMTIzMiw3IEBACiAJCWlmIChnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSkpCiAJCQlvcHRzLT5mbGFncyB8PSBSRUJBU0VfRElGRlNUQVQ7CiAJCWVsc2UKLQkJCW9wdHMtPmZsYWdzICY9ICFSRUJBU0VfRElGRlNUQVQ7CisJCQlvcHRzLT5mbGFncyAmPSB+UkVCQVNFX0RJRkZTVEFUOwogCQlyZXR1cm4gMDsKIAl9CiAKQEAgLTY3NCw2ICsxMjUzLDIwIEBACiAJCXJldHVybiAwOwogCX0KIAorCWlmICghc3RyY21wKHZhciwgInJlYmFzZS5yZXNjaGVkdWxlZmFpbGVkZXhlYyIpKSB7CisJCW9wdHMtPnJlc2NoZWR1bGVfZmFpbGVkX2V4ZWMgPSBnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSk7CisJCXJldHVybiAwOworCX0KKworCWlmICghc3RyY21wKHZhciwgInJlYmFzZS51c2VidWlsdGluIikpIHsKKwkJb3B0cy0+dXNlX2xlZ2FjeV9yZWJhc2UgPSAhZ2l0X2NvbmZpZ19ib29sKHZhciwgdmFsdWUpOworCQlyZXR1cm4gMDsKKwl9CisKKwlpZiAoIXN0cmNtcCh2YXIsICJyZWJhc2UuYmFja2VuZCIpKSB7CisJCXJldHVybiBnaXRfY29uZmlnX3N0cmluZygmb3B0cy0+ZGVmYXVsdF9iYWNrZW5kLCB2YXIsIHZhbHVlKTsKKwl9CisKIAlyZXR1cm4gZ2l0X2RlZmF1bHRfY29uZmlnKHZhciwgdmFsdWUsIGRhdGEpOwogfQogCkBAIC02OTUsMjggKzEyODgsNjAgQEAKIAlyZXR1cm4gMTsKIH0KIAotc3RhdGljIGludCBjYW5fZmFzdF9mb3J3YXJkKHN0cnVjdCBjb21taXQgKm9udG8sIHN0cnVjdCBvYmplY3RfaWQgKmhlYWRfb2lkLAotCQkJICAgIHN0cnVjdCBvYmplY3RfaWQgKm1lcmdlX2Jhc2UpCitzdGF0aWMgaW50IGNhbl9mYXN0X2ZvcndhcmQoc3RydWN0IGNvbW1pdCAqb250bywgc3RydWN0IGNvbW1pdCAqdXBzdHJlYW0sCisJCQkgICAgc3RydWN0IGNvbW1pdCAqcmVzdHJpY3RfcmV2aXNpb24sCisJCQkgICAgc3RydWN0IG9iamVjdF9pZCAqaGVhZF9vaWQsIHN0cnVjdCBvYmplY3RfaWQgKm1lcmdlX2Jhc2UpCiB7CiAJc3RydWN0IGNvbW1pdCAqaGVhZCA9IGxvb2t1cF9jb21taXQodGhlX3JlcG9zaXRvcnksIGhlYWRfb2lkKTsKLQlzdHJ1Y3QgY29tbWl0X2xpc3QgKm1lcmdlX2Jhc2VzOwotCWludCByZXM7CisJc3RydWN0IGNvbW1pdF9saXN0ICptZXJnZV9iYXNlcyA9IE5VTEw7CisJaW50IHJlcyA9IDA7CiAKIAlpZiAoIWhlYWQpCi0JCXJldHVybiAwOworCQlnb3RvIGRvbmU7CiAKIAltZXJnZV9iYXNlcyA9IGdldF9tZXJnZV9iYXNlcyhvbnRvLCBoZWFkKTsKLQlpZiAobWVyZ2VfYmFzZXMgJiYgIW1lcmdlX2Jhc2VzLT5uZXh0KSB7Ci0JCW9pZGNweShtZXJnZV9iYXNlLCAmbWVyZ2VfYmFzZXMtPml0ZW0tPm9iamVjdC5vaWQpOwotCQlyZXMgPSBvaWRlcShtZXJnZV9iYXNlLCAmb250by0+b2JqZWN0Lm9pZCk7Ci0JfSBlbHNlIHsKKwlpZiAoIW1lcmdlX2Jhc2VzIHx8IG1lcmdlX2Jhc2VzLT5uZXh0KSB7CiAJCW9pZGNweShtZXJnZV9iYXNlLCAmbnVsbF9vaWQpOwotCQlyZXMgPSAwOworCQlnb3RvIGRvbmU7CiAJfQorCisJb2lkY3B5KG1lcmdlX2Jhc2UsICZtZXJnZV9iYXNlcy0+aXRlbS0+b2JqZWN0Lm9pZCk7CisJaWYgKCFvaWRlcShtZXJnZV9iYXNlLCAmb250by0+b2JqZWN0Lm9pZCkpCisJCWdvdG8gZG9uZTsKKworCWlmIChyZXN0cmljdF9yZXZpc2lvbiAmJiAhb2lkZXEoJnJlc3RyaWN0X3JldmlzaW9uLT5vYmplY3Qub2lkLCBtZXJnZV9iYXNlKSkKKwkJZ290byBkb25lOworCisJaWYgKCF1cHN0cmVhbSkKKwkJZ290byBkb25lOworCisJZnJlZV9jb21taXRfbGlzdChtZXJnZV9iYXNlcyk7CisJbWVyZ2VfYmFzZXMgPSBnZXRfbWVyZ2VfYmFzZXModXBzdHJlYW0sIGhlYWQpOworCWlmICghbWVyZ2VfYmFzZXMgfHwgbWVyZ2VfYmFzZXMtPm5leHQpCisJCWdvdG8gZG9uZTsKKworCWlmICghb2lkZXEoJm9udG8tPm9iamVjdC5vaWQsICZtZXJnZV9iYXNlcy0+aXRlbS0+b2JqZWN0Lm9pZCkpCisJCWdvdG8gZG9uZTsKKworCXJlcyA9IDE7CisKK2RvbmU6CiAJZnJlZV9jb21taXRfbGlzdChtZXJnZV9iYXNlcyk7CiAJcmV0dXJuIHJlcyAmJiBpc19saW5lYXJfaGlzdG9yeShvbnRvLCBoZWFkKTsKIH0KIAorc3RhdGljIGludCBwYXJzZV9vcHRfYW0oY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LCBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKK3sKKwlzdHJ1Y3QgcmViYXNlX29wdGlvbnMgKm9wdHMgPSBvcHQtPnZhbHVlOworCisJQlVHX09OX09QVF9ORUcodW5zZXQpOworCUJVR19PTl9PUFRfQVJHKGFyZyk7CisKKwlvcHRzLT50eXBlID0gUkVCQVNFX0FQUExZOworCisJcmV0dXJuIDA7Cit9CisKIC8qIC1pIGZvbGxvd2VkIGJ5IC1tIGlzIHN0aWxsIC1pICovCiBzdGF0aWMgaW50IHBhcnNlX29wdF9tZXJnZShjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsIGNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQogewpAQCAtNzI1LDcgKzEzNTAsNyBAQAogCUJVR19PTl9PUFRfTkVHKHVuc2V0KTsKIAlCVUdfT05fT1BUX0FSRyhhcmcpOwogCi0JaWYgKCFpc19pbnRlcmFjdGl2ZShvcHRzKSkKKwlpZiAoIWlzX21lcmdlKG9wdHMpKQogCQlvcHRzLT50eXBlID0gUkVCQVNFX01FUkdFOwogCiAJcmV0dXJuIDA7CkBAIC03NDAsMTIgKzEzNjUsMzUgQEAKIAlCVUdfT05fT1BUX05FRyh1bnNldCk7CiAJQlVHX09OX09QVF9BUkcoYXJnKTsKIAotCW9wdHMtPnR5cGUgPSBSRUJBU0VfSU5URVJBQ1RJVkU7CisJb3B0cy0+dHlwZSA9IFJFQkFTRV9NRVJHRTsKIAlvcHRzLT5mbGFncyB8PSBSRUJBU0VfSU5URVJBQ1RJVkVfRVhQTElDSVQ7CiAKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIGVudW0gZW1wdHlfdHlwZSBwYXJzZV9lbXB0eV92YWx1ZShjb25zdCBjaGFyICp2YWx1ZSkKK3sKKwlpZiAoIXN0cmNhc2VjbXAodmFsdWUsICJkcm9wIikpCisJCXJldHVybiBFTVBUWV9EUk9QOworCWVsc2UgaWYgKCFzdHJjYXNlY21wKHZhbHVlLCAia2VlcCIpKQorCQlyZXR1cm4gRU1QVFlfS0VFUDsKKwllbHNlIGlmICghc3RyY2FzZWNtcCh2YWx1ZSwgImFzayIpKQorCQlyZXR1cm4gRU1QVFlfQVNLOworCisJZGllKF8oInVucmVjb2duaXplZCBlbXB0eSB0eXBlICclcyc7IHZhbGlkIHZhbHVlcyBhcmUgXCJkcm9wXCIsIFwia2VlcFwiLCBhbmQgXCJhc2tcIi4iKSwgdmFsdWUpOworfQorCitzdGF0aWMgaW50IHBhcnNlX29wdF9lbXB0eShjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsIGNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQoreworCXN0cnVjdCByZWJhc2Vfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CisJZW51bSBlbXB0eV90eXBlIHZhbHVlID0gcGFyc2VfZW1wdHlfdmFsdWUoYXJnKTsKKworCUJVR19PTl9PUFRfTkVHKHVuc2V0KTsKKworCW9wdGlvbnMtPmVtcHR5ID0gdmFsdWU7CisJcmV0dXJuIDA7Cit9CisKIHN0YXRpYyB2b2lkIE5PUkVUVVJOIGVycm9yX29uX21pc3NpbmdfZGVmYXVsdF91cHN0cmVhbSh2b2lkKQogewogCXN0cnVjdCBicmFuY2ggKmN1cnJlbnRfYnJhbmNoID0gYnJhbmNoX2dldChOVUxMKTsKQEAgLTc4MSw0NCArMTQyOSw0MyBAQAogCWNvbnN0IGNoYXIgKmVudjsKIAlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCi0JaWYgKCFpc19pbnRlcmFjdGl2ZShvcHRpb25zKSkKKwlpZiAoIWlzX21lcmdlKG9wdGlvbnMpKQogCQlyZXR1cm47CiAKIAllbnYgPSBnZXRlbnYoR0lUX1JFRkxPR19BQ1RJT05fRU5WSVJPTk1FTlQpOwogCWlmIChlbnYgJiYgc3RyY21wKCJyZWJhc2UiLCBlbnYpKQogCQlyZXR1cm47IC8qIG9ubHkgb3ZlcnJpZGUgaXQgaWYgaXQgaXMgInJlYmFzZSIgKi8KIAotCXN0cmJ1Zl9hZGRmKCZidWYsICJyZWJhc2UgLWkgKCVzKSIsIG9wdGlvbnMtPmFjdGlvbik7CisJc3RyYnVmX2FkZGYoJmJ1ZiwgInJlYmFzZSAoJXMpIiwgb3B0aW9ucy0+YWN0aW9uKTsKIAlzZXRlbnYoR0lUX1JFRkxPR19BQ1RJT05fRU5WSVJPTk1FTlQsIGJ1Zi5idWYsIDEpOwogCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOwogfQogCitzdGF0aWMgaW50IGNoZWNrX2V4ZWNfY21kKGNvbnN0IGNoYXIgKmNtZCkKK3sKKwlpZiAoc3RyY2hyKGNtZCwgJ1xuJykpCisJCXJldHVybiBlcnJvcihfKCJleGVjIGNvbW1hbmRzIGNhbm5vdCBjb250YWluIG5ld2xpbmVzIikpOworCisJLyogRG9lcyB0aGUgY29tbWFuZCBjb25zaXN0IHB1cmVseSBvZiB3aGl0ZXNwYWNlPyAqLworCWlmICghY21kW3N0cnNwbihjbWQsICIgXHRcclxmXHYiKV0pCisJCXJldHVybiBlcnJvcihfKCJlbXB0eSBleGVjIGNvbW1hbmQiKSk7CisKKwlyZXR1cm4gMDsKK30KKworCiBpbnQgY21kX3JlYmFzZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKIHsKLQlzdHJ1Y3QgcmViYXNlX29wdGlvbnMgb3B0aW9ucyA9IHsKLQkJLnR5cGUgPSBSRUJBU0VfVU5TUEVDSUZJRUQsCi0JCS5mbGFncyA9IFJFQkFTRV9OT19RVUlFVCwKLQkJLmdpdF9hbV9vcHRzID0gQVJHVl9BUlJBWV9JTklULAotCQkuYWxsb3dfcmVyZXJlX2F1dG91cGRhdGUgID0gLTEsCi0JCS5hbGxvd19lbXB0eV9tZXNzYWdlID0gMSwKLQkJLmdpdF9mb3JtYXRfcGF0Y2hfb3B0ID0gU1RSQlVGX0lOSVQsCi0JfTsKKwlzdHJ1Y3QgcmViYXNlX29wdGlvbnMgb3B0aW9ucyA9IFJFQkFTRV9PUFRJT05TX0lOSVQ7CiAJY29uc3QgY2hhciAqYnJhbmNoX25hbWU7CiAJaW50IHJldCwgZmxhZ3MsIHRvdGFsX2FyZ2MsIGluX3Byb2dyZXNzID0gMDsKKwlpbnQga2VlcF9iYXNlID0gMDsKIAlpbnQgb2tfdG9fc2tpcF9wcmVfcmViYXNlID0gMDsKIAlzdHJ1Y3Qgc3RyYnVmIG1zZyA9IFNUUkJVRl9JTklUOwogCXN0cnVjdCBzdHJidWYgcmV2aXNpb25zID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG1lcmdlX2Jhc2U7Ci0JZW51bSB7Ci0JCU5PX0FDVElPTiwKLQkJQUNUSU9OX0NPTlRJTlVFLAotCQlBQ1RJT05fU0tJUCwKLQkJQUNUSU9OX0FCT1JULAotCQlBQ1RJT05fUVVJVCwKLQkJQUNUSU9OX0VESVRfVE9ETywKLQkJQUNUSU9OX1NIT1dfQ1VSUkVOVF9QQVRDSCwKLQl9IGFjdGlvbiA9IE5PX0FDVElPTjsKKwllbnVtIGFjdGlvbiBhY3Rpb24gPSBBQ1RJT05fTk9ORTsKIAljb25zdCBjaGFyICpncGdfc2lnbiA9IE5VTEw7CiAJc3RydWN0IHN0cmluZ19saXN0IGV4ZWMgPSBTVFJJTkdfTElTVF9JTklUX05PRFVQOwogCWNvbnN0IGNoYXIgKnJlYmFzZV9tZXJnZXMgPSBOVUxMOwpAQCAtODI2LDE1ICsxNDczLDE5IEBACiAJc3RydWN0IHN0cmluZ19saXN0IHN0cmF0ZWd5X29wdGlvbnMgPSBTVFJJTkdfTElTVF9JTklUX05PRFVQOwogCXN0cnVjdCBvYmplY3RfaWQgc3F1YXNoX29udG87CiAJY2hhciAqc3F1YXNoX29udG9fbmFtZSA9IE5VTEw7CisJaW50IHJlc2NoZWR1bGVfZmFpbGVkX2V4ZWMgPSAtMTsKKwlpbnQgYWxsb3dfcHJlZW1wdGl2ZV9mZiA9IDE7CiAJc3RydWN0IG9wdGlvbiBidWlsdGluX3JlYmFzZV9vcHRpb25zW10gPSB7CiAJCU9QVF9TVFJJTkcoMCwgIm9udG8iLCAmb3B0aW9ucy5vbnRvX25hbWUsCiAJCQkgICBOXygicmV2aXNpb24iKSwKIAkJCSAgIE5fKCJyZWJhc2Ugb250byBnaXZlbiBicmFuY2ggaW5zdGVhZCBvZiB1cHN0cmVhbSIpKSwKKwkJT1BUX0JPT0woMCwgImtlZXAtYmFzZSIsICZrZWVwX2Jhc2UsCisJCQkgTl8oInVzZSB0aGUgbWVyZ2UtYmFzZSBvZiB1cHN0cmVhbSBhbmQgYnJhbmNoIGFzIHRoZSBjdXJyZW50IGJhc2UiKSksCiAJCU9QVF9CT09MKDAsICJuby12ZXJpZnkiLCAmb2tfdG9fc2tpcF9wcmVfcmViYXNlLAogCQkJIE5fKCJhbGxvdyBwcmUtcmViYXNlIGhvb2sgdG8gcnVuIikpLAogCQlPUFRfTkVHQklUKCdxJywgInF1aWV0IiwgJm9wdGlvbnMuZmxhZ3MsCiAJCQkgICBOXygiYmUgcXVpZXQuIGltcGxpZXMgLS1uby1zdGF0IiksCi0JCQkgICBSRUJBU0VfTk9fUVVJRVR8IFJFQkFTRV9WRVJCT1NFIHwgUkVCQVNFX0RJRkZTVEFUKSwKKwkJCSAgIFJFQkFTRV9OT19RVUlFVCB8IFJFQkFTRV9WRVJCT1NFIHwgUkVCQVNFX0RJRkZTVEFUKSwKIAkJT1BUX0JJVCgndicsICJ2ZXJib3NlIiwgJm9wdGlvbnMuZmxhZ3MsCiAJCQlOXygiZGlzcGxheSBhIGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIpLAogCQkJUkVCQVNFX05PX1FVSUVUIHwgUkVCQVNFX1ZFUkJPU0UgfCBSRUJBU0VfRElGRlNUQVQpLApAQCAtODc1LDYgKzE1MjYsMTAgQEAKIAkJT1BUX0NNRE1PREUoMCwgInNob3ctY3VycmVudC1wYXRjaCIsICZhY3Rpb24sCiAJCQkgICAgTl8oInNob3cgdGhlIHBhdGNoIGZpbGUgYmVpbmcgYXBwbGllZCBvciBtZXJnZWQiKSwKIAkJCSAgICBBQ1RJT05fU0hPV19DVVJSRU5UX1BBVENIKSwKKwkJeyBPUFRJT05fQ0FMTEJBQ0ssIDAsICJhcHBseSIsICZvcHRpb25zLCBOVUxMLAorCQkJTl8oInVzZSBhcHBseSBzdHJhdGVnaWVzIHRvIHJlYmFzZSIpLAorCQkJUEFSU0VfT1BUX05PQVJHIHwgUEFSU0VfT1BUX05PTkVHLAorCQkJcGFyc2Vfb3B0X2FtIH0sCiAJCXsgT1BUSU9OX0NBTExCQUNLLCAnbScsICJtZXJnZSIsICZvcHRpb25zLCBOVUxMLAogCQkJTl8oInVzZSBtZXJnaW5nIHN0cmF0ZWdpZXMgdG8gcmViYXNlIiksCiAJCQlQQVJTRV9PUFRfTk9BUkcgfCBQQVJTRV9PUFRfTk9ORUcsCkBAIC04ODMsMTUgKzE1MzgsMTggQEAKIAkJCU5fKCJsZXQgdGhlIHVzZXIgZWRpdCB0aGUgbGlzdCBvZiBjb21taXRzIHRvIHJlYmFzZSIpLAogCQkJUEFSU0VfT1BUX05PQVJHIHwgUEFSU0VfT1BUX05PTkVHLAogCQkJcGFyc2Vfb3B0X2ludGVyYWN0aXZlIH0sCi0JCU9QVF9TRVRfSU5UKCdwJywgInByZXNlcnZlLW1lcmdlcyIsICZvcHRpb25zLnR5cGUsCi0JCQkgICAgTl8oInRyeSB0byByZWNyZWF0ZSBtZXJnZXMgaW5zdGVhZCBvZiBpZ25vcmluZyAiCi0JCQkgICAgICAgInRoZW0iKSwgUkVCQVNFX1BSRVNFUlZFX01FUkdFUyksCi0JCU9QVF9CT09MKDAsICJyZXJlcmUtYXV0b3VwZGF0ZSIsCi0JCQkgJm9wdGlvbnMuYWxsb3dfcmVyZXJlX2F1dG91cGRhdGUsCi0JCQkgTl8oImFsbG93IHJlcmVyZSB0byB1cGRhdGUgaW5kZXggd2l0aCByZXNvbHZlZCAiCi0JCQkgICAgImNvbmZsaWN0IikpLAotCQlPUFRfQk9PTCgnaycsICJrZWVwLWVtcHR5IiwgJm9wdGlvbnMua2VlcF9lbXB0eSwKLQkJCSBOXygicHJlc2VydmUgZW1wdHkgY29tbWl0cyBkdXJpbmcgcmViYXNlIikpLAorCQlPUFRfU0VUX0lOVF9GKCdwJywgInByZXNlcnZlLW1lcmdlcyIsICZvcHRpb25zLnR5cGUsCisJCQkgICAgICBOXygiKERFUFJFQ0FURUQpIHRyeSB0byByZWNyZWF0ZSBtZXJnZXMgaW5zdGVhZCBvZiAiCisJCQkJICJpZ25vcmluZyB0aGVtIiksCisJCQkgICAgICBSRUJBU0VfUFJFU0VSVkVfTUVSR0VTLCBQQVJTRV9PUFRfSElEREVOKSwKKwkJT1BUX1JFUkVSRV9BVVRPVVBEQVRFKCZvcHRpb25zLmFsbG93X3JlcmVyZV9hdXRvdXBkYXRlKSwKKwkJT1BUX0NBTExCQUNLX0YoMCwgImVtcHR5IiwgJm9wdGlvbnMsICJ7ZHJvcCxrZWVwLGFza30iLAorCQkJICAgICAgIE5fKCJob3cgdG8gaGFuZGxlIGNvbW1pdHMgdGhhdCBiZWNvbWUgZW1wdHkiKSwKKwkJCSAgICAgICBQQVJTRV9PUFRfTk9ORUcsIHBhcnNlX29wdF9lbXB0eSksCisJCXsgT1BUSU9OX0NBTExCQUNLLCAnaycsICJrZWVwLWVtcHR5IiwgJm9wdGlvbnMsIE5VTEwsCisJCQlOXygiKERFUFJFQ0FURUQpIGtlZXAgZW1wdHkgY29tbWl0cyIpLAorCQkJUEFSU0VfT1BUX05PQVJHIHwgUEFSU0VfT1BUX0hJRERFTiwKKwkJCXBhcnNlX29wdF9rZWVwX2VtcHR5IH0sCiAJCU9QVF9CT09MKDAsICJhdXRvc3F1YXNoIiwgJm9wdGlvbnMuYXV0b3NxdWFzaCwKIAkJCSBOXygibW92ZSBjb21taXRzIHRoYXQgYmVnaW4gd2l0aCAiCiAJCQkgICAgInNxdWFzaCEvZml4dXAhIHVuZGVyIC1pIikpLApAQCAtOTAzLDkgKzE1NjEsMTAgQEAKIAkJT1BUX1NUUklOR19MSVNUKCd4JywgImV4ZWMiLCAmZXhlYywgTl8oImV4ZWMiKSwKIAkJCQlOXygiYWRkIGV4ZWMgbGluZXMgYWZ0ZXIgZWFjaCBjb21taXQgb2YgdGhlICIKIAkJCQkgICAiZWRpdGFibGUgbGlzdCIpKSwKLQkJT1BUX0JPT0woMCwgImFsbG93LWVtcHR5LW1lc3NhZ2UiLAotCQkJICZvcHRpb25zLmFsbG93X2VtcHR5X21lc3NhZ2UsCi0JCQkgTl8oImFsbG93IHJlYmFzaW5nIGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIpKSwKKwkJT1BUX0JPT0xfRigwLCAiYWxsb3ctZW1wdHktbWVzc2FnZSIsCisJCQkgICAmb3B0aW9ucy5hbGxvd19lbXB0eV9tZXNzYWdlLAorCQkJICAgTl8oImFsbG93IHJlYmFzaW5nIGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIpLAorCQkJICAgUEFSU0VfT1BUX0hJRERFTiksCiAJCXtPUFRJT05fU1RSSU5HLCAncicsICJyZWJhc2UtbWVyZ2VzIiwgJnJlYmFzZV9tZXJnZXMsCiAJCQlOXygibW9kZSIpLAogCQkJTl8oInRyeSB0byByZWJhc2UgbWVyZ2VzIGluc3RlYWQgb2Ygc2tpcHBpbmcgdGhlbSIpLApAQCAtOTIwLDQzICsxNTc5LDMyIEBACiAJCQkJICAgInN0cmF0ZWd5IikpLAogCQlPUFRfQk9PTCgwLCAicm9vdCIsICZvcHRpb25zLnJvb3QsCiAJCQkgTl8oInJlYmFzZSBhbGwgcmVhY2hhYmxlIGNvbW1pdHMgdXAgdG8gdGhlIHJvb3QocykiKSksCisJCU9QVF9CT09MKDAsICJyZXNjaGVkdWxlLWZhaWxlZC1leGVjIiwKKwkJCSAmcmVzY2hlZHVsZV9mYWlsZWRfZXhlYywKKwkJCSBOXygiYXV0b21hdGljYWxseSByZS1zY2hlZHVsZSBhbnkgYGV4ZWNgIHRoYXQgZmFpbHMiKSksCiAJCU9QVF9FTkQoKSwKIAl9OwogCWludCBpOwogCi0JLyoKLQkgKiBORUVEU1dPUks6IE9uY2UgdGhlIGJ1aWx0aW4gcmViYXNlIGhhcyBiZWVuIHRlc3RlZCBlbm91Z2gKLQkgKiBhbmQgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2ggaXMgcmV0aXJlZCB0byBjb250cmliLywgdGhpcyBwcmVhbWJsZQotCSAqIGNhbiBiZSByZW1vdmVkLgotCSAqLwotCi0JaWYgKCF1c2VfYnVpbHRpbl9yZWJhc2UoKSkgewotCQljb25zdCBjaGFyICpwYXRoID0gbWtwYXRoKCIlcy9naXQtbGVnYWN5LXJlYmFzZSIsCi0JCQkJCSAgZ2l0X2V4ZWNfcGF0aCgpKTsKLQotCQlpZiAoc2FuZV9leGVjdnAocGF0aCwgKGNoYXIgKiopYXJndikgPCAwKQotCQkJZGllX2Vycm5vKF8oImNvdWxkIG5vdCBleGVjICVzIiksIHBhdGgpOwotCQllbHNlCi0JCQlCVUcoInNhbmVfZXhlY3ZwKCkgcmV0dXJuZWQ/Pz8iKTsKLQl9Ci0KIAlpZiAoYXJnYyA9PSAyICYmICFzdHJjbXAoYXJndlsxXSwgIi1oIikpCiAJCXVzYWdlX3dpdGhfb3B0aW9ucyhidWlsdGluX3JlYmFzZV91c2FnZSwKIAkJCQkgICBidWlsdGluX3JlYmFzZV9vcHRpb25zKTsKIAotCXByZWZpeCA9IHNldHVwX2dpdF9kaXJlY3RvcnkoKTsKLQl0cmFjZV9yZXBvX3NldHVwKHByZWZpeCk7Ci0Jc2V0dXBfd29ya190cmVlKCk7Ci0KKwlvcHRpb25zLmFsbG93X2VtcHR5X21lc3NhZ2UgPSAxOwogCWdpdF9jb25maWcocmViYXNlX2NvbmZpZywgJm9wdGlvbnMpOwogCisJaWYgKG9wdGlvbnMudXNlX2xlZ2FjeV9yZWJhc2UgfHwKKwkgICAgIWdpdF9lbnZfYm9vbCgiR0lUX1RFU1RfUkVCQVNFX1VTRV9CVUlMVElOIiwgLTEpKQorCQl3YXJuaW5nKF8oInRoZSByZWJhc2UudXNlQnVpbHRpbiBzdXBwb3J0IGhhcyBiZWVuIHJlbW92ZWQhXG4iCisJCQkgICJTZWUgaXRzIGVudHJ5IGluICdnaXQgaGVscCBjb25maWcnIGZvciBkZXRhaWxzLiIpKTsKKwogCXN0cmJ1Zl9yZXNldCgmYnVmKTsKIAlzdHJidWZfYWRkZigmYnVmLCAiJXMvYXBwbHlpbmciLCBhcHBseV9kaXIoKSk7CiAJaWYoZmlsZV9leGlzdHMoYnVmLmJ1ZikpCiAJCWRpZShfKCJJdCBsb29rcyBsaWtlICdnaXQgYW0nIGlzIGluIHByb2dyZXNzLiBDYW5ub3QgcmViYXNlLiIpKTsKIAogCWlmIChpc19kaXJlY3RvcnkoYXBwbHlfZGlyKCkpKSB7Ci0JCW9wdGlvbnMudHlwZSA9IFJFQkFTRV9BTTsKKwkJb3B0aW9ucy50eXBlID0gUkVCQVNFX0FQUExZOwogCQlvcHRpb25zLnN0YXRlX2RpciA9IGFwcGx5X2RpcigpOwogCX0gZWxzZSBpZiAoaXNfZGlyZWN0b3J5KG1lcmdlX2RpcigpKSkgewogCQlzdHJidWZfcmVzZXQoJmJ1Zik7CkBAIC05NjgsNyArMTYxNiw3IEBACiAJCQlzdHJidWZfcmVzZXQoJmJ1Zik7CiAJCQlzdHJidWZfYWRkZigmYnVmLCAiJXMvaW50ZXJhY3RpdmUiLCBtZXJnZV9kaXIoKSk7CiAJCQlpZihmaWxlX2V4aXN0cyhidWYuYnVmKSkgewotCQkJCW9wdGlvbnMudHlwZSA9IFJFQkFTRV9JTlRFUkFDVElWRTsKKwkJCQlvcHRpb25zLnR5cGUgPSBSRUJBU0VfTUVSR0U7CiAJCQkJb3B0aW9ucy5mbGFncyB8PSBSRUJBU0VfSU5URVJBQ1RJVkVfRVhQTElDSVQ7CiAJCQl9IGVsc2UKIAkJCQlvcHRpb25zLnR5cGUgPSBSRUJBU0VfTUVSR0U7CkBAIC05ODQsNyArMTYzMiw3IEBACiAJCQkgICAgIGJ1aWx0aW5fcmViYXNlX29wdGlvbnMsCiAJCQkgICAgIGJ1aWx0aW5fcmViYXNlX3VzYWdlLCAwKTsKIAotCWlmIChhY3Rpb24gIT0gTk9fQUNUSU9OICYmIHRvdGFsX2FyZ2MgIT0gMikgeworCWlmIChhY3Rpb24gIT0gQUNUSU9OX05PTkUgJiYgdG90YWxfYXJnYyAhPSAyKSB7CiAJCXVzYWdlX3dpdGhfb3B0aW9ucyhidWlsdGluX3JlYmFzZV91c2FnZSwKIAkJCQkgICBidWlsdGluX3JlYmFzZV9vcHRpb25zKTsKIAl9CkBAIC05OTMsMTQgKzE2NDEsMzQgQEAKIAkJdXNhZ2Vfd2l0aF9vcHRpb25zKGJ1aWx0aW5fcmViYXNlX3VzYWdlLAogCQkJCSAgIGJ1aWx0aW5fcmViYXNlX29wdGlvbnMpOwogCi0JaWYgKGFjdGlvbiAhPSBOT19BQ1RJT04gJiYgIWluX3Byb2dyZXNzKQorCWlmIChvcHRpb25zLnR5cGUgPT0gUkVCQVNFX1BSRVNFUlZFX01FUkdFUykKKwkJd2FybmluZyhfKCJnaXQgcmViYXNlIC0tcHJlc2VydmUtbWVyZ2VzIGlzIGRlcHJlY2F0ZWQuICIKKwkJCSAgIlVzZSAtLXJlYmFzZS1tZXJnZXMgaW5zdGVhZC4iKSk7CisKKwlpZiAoa2VlcF9iYXNlKSB7CisJCWlmIChvcHRpb25zLm9udG9fbmFtZSkKKwkJCWRpZShfKCJjYW5ub3QgY29tYmluZSAnLS1rZWVwLWJhc2UnIHdpdGggJy0tb250byciKSk7CisJCWlmIChvcHRpb25zLnJvb3QpCisJCQlkaWUoXygiY2Fubm90IGNvbWJpbmUgJy0ta2VlcC1iYXNlJyB3aXRoICctLXJvb3QnIikpOworCX0KKworCWlmIChhY3Rpb24gIT0gQUNUSU9OX05PTkUgJiYgIWluX3Byb2dyZXNzKQogCQlkaWUoXygiTm8gcmViYXNlIGluIHByb2dyZXNzPyIpKTsKIAlzZXRlbnYoR0lUX1JFRkxPR19BQ1RJT05fRU5WSVJPTk1FTlQsICJyZWJhc2UiLCAwKTsKIAotCWlmIChhY3Rpb24gPT0gQUNUSU9OX0VESVRfVE9ETyAmJiAhaXNfaW50ZXJhY3RpdmUoJm9wdGlvbnMpKQorCWlmIChhY3Rpb24gPT0gQUNUSU9OX0VESVRfVE9ETyAmJiAhaXNfbWVyZ2UoJm9wdGlvbnMpKQogCQlkaWUoXygiVGhlIC0tZWRpdC10b2RvIGFjdGlvbiBjYW4gb25seSBiZSB1c2VkIGR1cmluZyAiCiAJCSAgICAgICJpbnRlcmFjdGl2ZSByZWJhc2UuIikpOwogCisJaWYgKHRyYWNlMl9pc19lbmFibGVkKCkpIHsKKwkJaWYgKGlzX21lcmdlKCZvcHRpb25zKSkKKwkJCXRyYWNlMl9jbWRfbW9kZSgiaW50ZXJhY3RpdmUiKTsKKwkJZWxzZSBpZiAoZXhlYy5ucikKKwkJCXRyYWNlMl9jbWRfbW9kZSgiaW50ZXJhY3RpdmUtZXhlYyIpOworCQllbHNlCisJCQl0cmFjZTJfY21kX21vZGUoYWN0aW9uX25hbWVzW2FjdGlvbl0pOworCX0KKwogCXN3aXRjaCAoYWN0aW9uKSB7CiAJY2FzZSBBQ1RJT05fQ09OVElOVUU6IHsKIAkJc3RydWN0IG9iamVjdF9pZCBoZWFkOwpAQCAtMTAxNSwxNiArMTY4MywxNSBAQAogCQkJZGllKF8oIkNhbm5vdCByZWFkIEhFQUQiKSk7CiAKIAkJZmQgPSBob2xkX2xvY2tlZF9pbmRleCgmbG9ja19maWxlLCAwKTsKLQkJaWYgKHJlYWRfaW5kZXgodGhlX3JlcG9zaXRvcnktPmluZGV4KSA8IDApCisJCWlmIChyZXBvX3JlYWRfaW5kZXgodGhlX3JlcG9zaXRvcnkpIDwgMCkKIAkJCWRpZShfKCJjb3VsZCBub3QgcmVhZCBpbmRleCIpKTsKIAkJcmVmcmVzaF9pbmRleCh0aGVfcmVwb3NpdG9yeS0+aW5kZXgsIFJFRlJFU0hfUVVJRVQsIE5VTEwsIE5VTEwsCiAJCQkgICAgICBOVUxMKTsKIAkJaWYgKDAgPD0gZmQpCi0JCQl1cGRhdGVfaW5kZXhfaWZfYWJsZSh0aGVfcmVwb3NpdG9yeS0+aW5kZXgsCi0JCQkJCSAgICAgJmxvY2tfZmlsZSk7CisJCQlyZXBvX3VwZGF0ZV9pbmRleF9pZl9hYmxlKHRoZV9yZXBvc2l0b3J5LCAmbG9ja19maWxlKTsKIAkJcm9sbGJhY2tfbG9ja19maWxlKCZsb2NrX2ZpbGUpOwogCi0JCWlmIChoYXNfdW5zdGFnZWRfY2hhbmdlcygxKSkgeworCQlpZiAoaGFzX3Vuc3RhZ2VkX2NoYW5nZXModGhlX3JlcG9zaXRvcnksIDEpKSB7CiAJCQlwdXRzKF8oIllvdSBtdXN0IGVkaXQgYWxsIG1lcmdlIGNvbmZsaWN0cyBhbmQgdGhlblxuIgogCQkJICAgICAgICJtYXJrIHRoZW0gYXMgcmVzb2x2ZWQgdXNpbmcgZ2l0IGFkZCIpKTsKIAkJCWV4aXQoMSk7CkBAIC0xMDM5LDEzICsxNzA2LDEzIEBACiAJCW9wdGlvbnMuYWN0aW9uID0gInNraXAiOwogCQlzZXRfcmVmbG9nX2FjdGlvbigmb3B0aW9ucyk7CiAKLQkJcmVyZXJlX2NsZWFyKCZtZXJnZV9ycik7CisJCXJlcmVyZV9jbGVhcih0aGVfcmVwb3NpdG9yeSwgJm1lcmdlX3JyKTsKIAkJc3RyaW5nX2xpc3RfY2xlYXIoJm1lcmdlX3JyLCAxKTsKIAogCQlpZiAocmVzZXRfaGVhZChOVUxMLCAicmVzZXQiLCBOVUxMLCBSRVNFVF9IRUFEX0hBUkQsCiAJCQkgICAgICAgTlVMTCwgTlVMTCkgPCAwKQogCQkJZGllKF8oImNvdWxkIG5vdCBkaXNjYXJkIHdvcmt0cmVlIGNoYW5nZXMiKSk7Ci0JCXJlbW92ZV9icmFuY2hfc3RhdGUoKTsKKwkJcmVtb3ZlX2JyYW5jaF9zdGF0ZSh0aGVfcmVwb3NpdG9yeSwgMCk7CiAJCWlmIChyZWFkX2Jhc2ljX3N0YXRlKCZvcHRpb25zKSkKIAkJCWV4aXQoMSk7CiAJCWdvdG8gcnVuX3JlYmFzZTsKQEAgLTEwNTUsNyArMTcyMiw3IEBACiAJCW9wdGlvbnMuYWN0aW9uID0gImFib3J0IjsKIAkJc2V0X3JlZmxvZ19hY3Rpb24oJm9wdGlvbnMpOwogCi0JCXJlcmVyZV9jbGVhcigmbWVyZ2VfcnIpOworCQlyZXJlcmVfY2xlYXIodGhlX3JlcG9zaXRvcnksICZtZXJnZV9ycik7CiAJCXN0cmluZ19saXN0X2NsZWFyKCZtZXJnZV9yciwgMSk7CiAKIAkJaWYgKHJlYWRfYmFzaWNfc3RhdGUoJm9wdGlvbnMpKQpAQCAtMTA2NSwxNiArMTczMiwyNCBAQAogCQkJICAgICAgIE5VTEwsIE5VTEwpIDwgMCkKIAkJCWRpZShfKCJjb3VsZCBub3QgbW92ZSBiYWNrIHRvICVzIiksCiAJCQkgICAgb2lkX3RvX2hleCgmb3B0aW9ucy5vcmlnX2hlYWQpKTsKLQkJcmVtb3ZlX2JyYW5jaF9zdGF0ZSgpOwotCQlyZXQgPSBmaW5pc2hfcmViYXNlKCZvcHRpb25zKTsKKwkJcmVtb3ZlX2JyYW5jaF9zdGF0ZSh0aGVfcmVwb3NpdG9yeSwgMCk7CisJCXJldCA9ICEhZmluaXNoX3JlYmFzZSgmb3B0aW9ucyk7CiAJCWdvdG8gY2xlYW51cDsKIAl9CiAJY2FzZSBBQ1RJT05fUVVJVDogewotCQlzdHJidWZfcmVzZXQoJmJ1Zik7Ci0JCXN0cmJ1Zl9hZGRzdHIoJmJ1Ziwgb3B0aW9ucy5zdGF0ZV9kaXIpOwotCQlyZXQgPSAhIXJlbW92ZV9kaXJfcmVjdXJzaXZlbHkoJmJ1ZiwgMCk7Ci0JCWlmIChyZXQpCi0JCQlkaWUoXygiY291bGQgbm90IHJlbW92ZSAnJXMnIiksIG9wdGlvbnMuc3RhdGVfZGlyKTsKKwkJaWYgKG9wdGlvbnMudHlwZSA9PSBSRUJBU0VfTUVSR0UpIHsKKwkJCXN0cnVjdCByZXBsYXlfb3B0cyByZXBsYXkgPSBSRVBMQVlfT1BUU19JTklUOworCisJCQlyZXBsYXkuYWN0aW9uID0gUkVQTEFZX0lOVEVSQUNUSVZFX1JFQkFTRTsKKwkJCXJldCA9ICEhc2VxdWVuY2VyX3JlbW92ZV9zdGF0ZSgmcmVwbGF5KTsKKwkJfSBlbHNlIHsKKwkJCXN0cmJ1Zl9yZXNldCgmYnVmKTsKKwkJCXN0cmJ1Zl9hZGRzdHIoJmJ1Ziwgb3B0aW9ucy5zdGF0ZV9kaXIpOworCQkJcmV0ID0gISFyZW1vdmVfZGlyX3JlY3Vyc2l2ZWx5KCZidWYsIDApOworCQkJaWYgKHJldCkKKwkJCQllcnJvcihfKCJjb3VsZCBub3QgcmVtb3ZlICclcyciKSwKKwkJCQkgICAgICAgb3B0aW9ucy5zdGF0ZV9kaXIpOworCQl9CiAJCWdvdG8gY2xlYW51cDsKIAl9CiAJY2FzZSBBQ1RJT05fRURJVF9UT0RPOgpAQCAtMTA4NSw3ICsxNzYwLDcgQEAKIAkJb3B0aW9ucy5hY3Rpb24gPSAic2hvdy1jdXJyZW50LXBhdGNoIjsKIAkJb3B0aW9ucy5kb250X2ZpbmlzaF9yZWJhc2UgPSAxOwogCQlnb3RvIHJ1bl9yZWJhc2U7Ci0JY2FzZSBOT19BQ1RJT046CisJY2FzZSBBQ1RJT05fTk9ORToKIAkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJQlVHKCJhY3Rpb246ICVkIiwgYWN0aW9uKTsKQEAgLTExMTEsMTMgKzE3ODYsMjAgQEAKIAkJICAgIHN0YXRlX2Rpcl9iYXNlLCBjbWRfbGl2ZV9yZWJhc2UsIGJ1Zi5idWYpOwogCX0KIAorCWlmICgob3B0aW9ucy5mbGFncyAmIFJFQkFTRV9JTlRFUkFDVElWRV9FWFBMSUNJVCkgfHwKKwkgICAgKGFjdGlvbiAhPSBBQ1RJT05fTk9ORSkgfHwKKwkgICAgKGV4ZWMubnIgPiAwKSB8fAorCSAgICBvcHRpb25zLmF1dG9zcXVhc2gpIHsKKwkJYWxsb3dfcHJlZW1wdGl2ZV9mZiA9IDA7CisJfQorCiAJZm9yIChpID0gMDsgaSA8IG9wdGlvbnMuZ2l0X2FtX29wdHMuYXJnYzsgaSsrKSB7CiAJCWNvbnN0IGNoYXIgKm9wdGlvbiA9IG9wdGlvbnMuZ2l0X2FtX29wdHMuYXJndltpXSwgKnA7CiAJCWlmICghc3RyY21wKG9wdGlvbiwgIi0tY29tbWl0dGVyLWRhdGUtaXMtYXV0aG9yLWRhdGUiKSB8fAogCQkgICAgIXN0cmNtcChvcHRpb24sICItLWlnbm9yZS1kYXRlIikgfHwKIAkJICAgICFzdHJjbXAob3B0aW9uLCAiLS13aGl0ZXNwYWNlPWZpeCIpIHx8CiAJCSAgICAhc3RyY21wKG9wdGlvbiwgIi0td2hpdGVzcGFjZT1zdHJpcCIpKQotCQkJb3B0aW9ucy5mbGFncyB8PSBSRUJBU0VfRk9SQ0U7CisJCQlhbGxvd19wcmVlbXB0aXZlX2ZmID0gMDsKIAkJZWxzZSBpZiAoc2tpcF9wcmVmaXgob3B0aW9uLCAiLUMiLCAmcCkpIHsKIAkJCXdoaWxlICgqcCkKIAkJCQlpZiAoIWlzZGlnaXQoKihwKyspKSkKQEAgLTExMzAsMTEgKzE4MTIsMTUgQEAKIAkJfQogCX0KIAorCWZvciAoaSA9IDA7IGkgPCBleGVjLm5yOyBpKyspCisJCWlmIChjaGVja19leGVjX2NtZChleGVjLml0ZW1zW2ldLnN0cmluZykpCisJCQlleGl0KDEpOworCiAJaWYgKCEob3B0aW9ucy5mbGFncyAmIFJFQkFTRV9OT19RVUlFVCkpCiAJCWFyZ3ZfYXJyYXlfcHVzaCgmb3B0aW9ucy5naXRfYW1fb3B0cywgIi1xIik7CiAKLQlpZiAob3B0aW9ucy5rZWVwX2VtcHR5KQotCQlpbXBseV9pbnRlcmFjdGl2ZSgmb3B0aW9ucywgIi0ta2VlcC1lbXB0eSIpOworCWlmIChvcHRpb25zLmVtcHR5ICE9IEVNUFRZX1VOU1BFQ0lGSUVEKQorCQlpbXBseV9tZXJnZSgmb3B0aW9ucywgIi0tZW1wdHkiKTsKIAogCWlmIChncGdfc2lnbikgewogCQlmcmVlKG9wdGlvbnMuZ3BnX3NpZ25fb3B0KTsKQEAgLTExNDQsNyArMTgzMCw3IEBACiAJaWYgKGV4ZWMubnIpIHsKIAkJaW50IGk7CiAKLQkJaW1wbHlfaW50ZXJhY3RpdmUoJm9wdGlvbnMsICItLWV4ZWMiKTsKKwkJaW1wbHlfbWVyZ2UoJm9wdGlvbnMsICItLWV4ZWMiKTsKIAogCQlzdHJidWZfcmVzZXQoJmJ1Zik7CiAJCWZvciAoaSA9IDA7IGkgPCBleGVjLm5yOyBpKyspCkBAIC0xMTYwLDcgKzE4NDYsNyBAQAogCQllbHNlIGlmIChzdHJjbXAoIm5vLXJlYmFzZS1jb3VzaW5zIiwgcmViYXNlX21lcmdlcykpCiAJCQlkaWUoXygiVW5rbm93biBtb2RlOiAlcyIpLCByZWJhc2VfbWVyZ2VzKTsKIAkJb3B0aW9ucy5yZWJhc2VfbWVyZ2VzID0gMTsKLQkJaW1wbHlfaW50ZXJhY3RpdmUoJm9wdGlvbnMsICItLXJlYmFzZS1tZXJnZXMiKTsKKwkJaW1wbHlfbWVyZ2UoJm9wdGlvbnMsICItLXJlYmFzZS1tZXJnZXMiKTsKIAl9CiAKIAlpZiAoc3RyYXRlZ3lfb3B0aW9ucy5ucikgewpAQCAtMTE3OSwxMCArMTg2NSw5IEBACiAJaWYgKG9wdGlvbnMuc3RyYXRlZ3kpIHsKIAkJb3B0aW9ucy5zdHJhdGVneSA9IHhzdHJkdXAob3B0aW9ucy5zdHJhdGVneSk7CiAJCXN3aXRjaCAob3B0aW9ucy50eXBlKSB7Ci0JCWNhc2UgUkVCQVNFX0FNOgorCQljYXNlIFJFQkFTRV9BUFBMWToKIAkJCWRpZShfKCItLXN0cmF0ZWd5IHJlcXVpcmVzIC0tbWVyZ2Ugb3IgLS1pbnRlcmFjdGl2ZSIpKTsKIAkJY2FzZSBSRUJBU0VfTUVSR0U6Ci0JCWNhc2UgUkVCQVNFX0lOVEVSQUNUSVZFOgogCQljYXNlIFJFQkFTRV9QUkVTRVJWRV9NRVJHRVM6CiAJCQkvKiBjb21wYXRpYmxlICovCiAJCQlicmVhazsKQEAgLTExOTQsNDUgKzE4NzksNjYgQEAKIAkJfQogCX0KIAorCWlmIChvcHRpb25zLnR5cGUgPT0gUkVCQVNFX01FUkdFKQorCQlpbXBseV9tZXJnZSgmb3B0aW9ucywgIi0tbWVyZ2UiKTsKKwogCWlmIChvcHRpb25zLnJvb3QgJiYgIW9wdGlvbnMub250b19uYW1lKQotCQlpbXBseV9pbnRlcmFjdGl2ZSgmb3B0aW9ucywgIi0tcm9vdCB3aXRob3V0IC0tb250byIpOworCQlpbXBseV9tZXJnZSgmb3B0aW9ucywgIi0tcm9vdCB3aXRob3V0IC0tb250byIpOwogCiAJaWYgKGlzYXR0eSgyKSAmJiBvcHRpb25zLmZsYWdzICYgUkVCQVNFX05PX1FVSUVUKQogCQlzdHJidWZfYWRkc3RyKCZvcHRpb25zLmdpdF9mb3JtYXRfcGF0Y2hfb3B0LCAiIC0tcHJvZ3Jlc3MiKTsKIAotCXN3aXRjaCAob3B0aW9ucy50eXBlKSB7Ci0JY2FzZSBSRUJBU0VfTUVSR0U6Ci0JY2FzZSBSRUJBU0VfSU5URVJBQ1RJVkU6Ci0JY2FzZSBSRUJBU0VfUFJFU0VSVkVfTUVSR0VTOgotCQlvcHRpb25zLnN0YXRlX2RpciA9IG1lcmdlX2RpcigpOwotCQlicmVhazsKLQljYXNlIFJFQkFTRV9BTToKLQkJb3B0aW9ucy5zdGF0ZV9kaXIgPSBhcHBseV9kaXIoKTsKLQkJYnJlYWs7Ci0JZGVmYXVsdDoKLQkJLyogdGhlIGRlZmF1bHQgcmViYXNlIGJhY2tlbmQgaXMgYC0tYW1gICovCi0JCW9wdGlvbnMudHlwZSA9IFJFQkFTRV9BTTsKLQkJb3B0aW9ucy5zdGF0ZV9kaXIgPSBhcHBseV9kaXIoKTsKLQkJYnJlYWs7Ci0JfQotCi0JaWYgKG9wdGlvbnMuZ2l0X2FtX29wdHMuYXJnYykgewotCQkvKiBhbGwgYW0gb3B0aW9ucyBleGNlcHQgLXEgYXJlIGNvbXBhdGlibGUgb25seSB3aXRoIC0tYW0gKi8KKwlpZiAob3B0aW9ucy5naXRfYW1fb3B0cy5hcmdjIHx8IG9wdGlvbnMudHlwZSA9PSBSRUJBU0VfQVBQTFkpIHsKKwkJLyogYWxsIGFtIG9wdGlvbnMgZXhjZXB0IC1xIGFyZSBjb21wYXRpYmxlIG9ubHkgd2l0aCAtLWFwcGx5ICovCiAJCWZvciAoaSA9IG9wdGlvbnMuZ2l0X2FtX29wdHMuYXJnYyAtIDE7IGkgPj0gMDsgaS0tKQogCQkJaWYgKHN0cmNtcChvcHRpb25zLmdpdF9hbV9vcHRzLmFyZ3ZbaV0sICItcSIpKQogCQkJCWJyZWFrOwogCi0JCWlmIChpc19pbnRlcmFjdGl2ZSgmb3B0aW9ucykgJiYgaSA+PSAwKQotCQkJZGllKF8oImVycm9yOiBjYW5ub3QgY29tYmluZSBpbnRlcmFjdGl2ZSBvcHRpb25zICIKLQkJCSAgICAgICIoLS1pbnRlcmFjdGl2ZSwgLS1leGVjLCAtLXJlYmFzZS1tZXJnZXMsICIKLQkJCSAgICAgICItLXByZXNlcnZlLW1lcmdlcywgLS1rZWVwLWVtcHR5LCAtLXJvb3QgKyAiCi0JCQkgICAgICAiLS1vbnRvKSB3aXRoIGFtIG9wdGlvbnMgKCVzKSIpLCBidWYuYnVmKTsKLQkJaWYgKG9wdGlvbnMudHlwZSA9PSBSRUJBU0VfTUVSR0UgJiYgaSA+PSAwKQotCQkJZGllKF8oImVycm9yOiBjYW5ub3QgY29tYmluZSBtZXJnZSBvcHRpb25zICgtLW1lcmdlLCAiCi0JCQkgICAgICAiLS1zdHJhdGVneSwgLS1zdHJhdGVneS1vcHRpb24pIHdpdGggYW0gb3B0aW9ucyAiCi0JCQkgICAgICAiKCVzKSIpLCBidWYuYnVmKTsKKwkJaWYgKGkgPj0gMCkgeworCQkJaWYgKGlzX21lcmdlKCZvcHRpb25zKSkKKwkJCQlkaWUoXygiY2Fubm90IGNvbWJpbmUgYXBwbHkgb3B0aW9ucyB3aXRoICIKKwkJCQkgICAgICAibWVyZ2Ugb3B0aW9ucyIpKTsKKwkJCWVsc2UKKwkJCQlvcHRpb25zLnR5cGUgPSBSRUJBU0VfQVBQTFk7CisJCX0KIAl9CiAKKwlpZiAob3B0aW9ucy50eXBlID09IFJFQkFTRV9VTlNQRUNJRklFRCkgeworCQlpZiAoIXN0cmNtcChvcHRpb25zLmRlZmF1bHRfYmFja2VuZCwgIm1lcmdlIikpCisJCQlpbXBseV9tZXJnZSgmb3B0aW9ucywgIi0tbWVyZ2UiKTsKKwkJZWxzZSBpZiAoIXN0cmNtcChvcHRpb25zLmRlZmF1bHRfYmFja2VuZCwgImFwcGx5IikpCisJCQlvcHRpb25zLnR5cGUgPSBSRUJBU0VfQVBQTFk7CisJCWVsc2UKKwkJCWRpZShfKCJVbmtub3duIHJlYmFzZSBiYWNrZW5kOiAlcyIpLAorCQkJICAgIG9wdGlvbnMuZGVmYXVsdF9iYWNrZW5kKTsKKwl9CisKKwlzd2l0Y2ggKG9wdGlvbnMudHlwZSkgeworCWNhc2UgUkVCQVNFX01FUkdFOgorCWNhc2UgUkVCQVNFX1BSRVNFUlZFX01FUkdFUzoKKwkJb3B0aW9ucy5zdGF0ZV9kaXIgPSBtZXJnZV9kaXIoKTsKKwkJYnJlYWs7CisJY2FzZSBSRUJBU0VfQVBQTFk6CisJCW9wdGlvbnMuc3RhdGVfZGlyID0gYXBwbHlfZGlyKCk7CisJCWJyZWFrOworCWRlZmF1bHQ6CisJCUJVRygib3B0aW9ucy50eXBlIHdhcyBqdXN0IHNldCBhYm92ZTsgc2hvdWxkIGJlIHVucmVhY2hhYmxlLiIpOworCX0KKworCWlmIChvcHRpb25zLmVtcHR5ID09IEVNUFRZX1VOU1BFQ0lGSUVEKSB7CisJCWlmIChvcHRpb25zLmZsYWdzICYgUkVCQVNFX0lOVEVSQUNUSVZFX0VYUExJQ0lUKQorCQkJb3B0aW9ucy5lbXB0eSA9IEVNUFRZX0FTSzsKKwkJZWxzZSBpZiAoZXhlYy5uciA+IDApCisJCQlvcHRpb25zLmVtcHR5ID0gRU1QVFlfS0VFUDsKKwkJZWxzZQorCQkJb3B0aW9ucy5lbXB0eSA9IEVNUFRZX0RST1A7CisJfQorCWlmIChyZXNjaGVkdWxlX2ZhaWxlZF9leGVjID4gMCAmJiAhaXNfbWVyZ2UoJm9wdGlvbnMpKQorCQlkaWUoXygiLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjIHJlcXVpcmVzICIKKwkJICAgICAgIi0tZXhlYyBvciAtLWludGVyYWN0aXZlIikpOworCWlmIChyZXNjaGVkdWxlX2ZhaWxlZF9leGVjID49IDApCisJCW9wdGlvbnMucmVzY2hlZHVsZV9mYWlsZWRfZXhlYyA9IHJlc2NoZWR1bGVfZmFpbGVkX2V4ZWM7CisKIAlpZiAob3B0aW9ucy5zaWdub2ZmKSB7CiAJCWlmIChvcHRpb25zLnR5cGUgPT0gUkVCQVNFX1BSRVNFUlZFX01FUkdFUykKIAkJCWRpZSgiY2Fubm90IGNvbWJpbmUgJy0tc2lnbm9mZicgd2l0aCAiCkBAIC0xMjQxLDIzICsxOTQ3LDE5IEBACiAJCW9wdGlvbnMuZmxhZ3MgfD0gUkVCQVNFX0ZPUkNFOwogCX0KIAotCWlmIChvcHRpb25zLnR5cGUgPT0gUkVCQVNFX1BSRVNFUlZFX01FUkdFUykKKwlpZiAob3B0aW9ucy50eXBlID09IFJFQkFTRV9QUkVTRVJWRV9NRVJHRVMpIHsKIAkJLyoKIAkJICogTm90ZTogaW5jb21wYXRpYmlsaXR5IHdpdGggLS1zaWdub2ZmIGhhbmRsZWQgaW4gc2lnbm9mZiBibG9jayBhYm92ZQogCQkgKiBOb3RlOiBpbmNvbXBhdGliaWxpdHkgd2l0aCAtLWludGVyYWN0aXZlIGlzIGp1c3QgYSBzdHJvbmcgd2FybmluZzsKIAkJICogICAgICAgZ2l0LXJlYmFzZS50eHQgY2F2ZWF0cyB3aXRoICJ1bmxlc3MgeW91IGtub3cgd2hhdCB5b3UgYXJlIGRvaW5nIgogCQkgKi8KIAkJaWYgKG9wdGlvbnMucmViYXNlX21lcmdlcykKLQkJCWRpZShfKCJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmUtbWVyZ2VzJyB3aXRoICIKKwkJCWRpZShfKCJjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggIgogCQkJICAgICAgIictLXJlYmFzZS1tZXJnZXMnIikpOwogCi0JaWYgKG9wdGlvbnMucmViYXNlX21lcmdlcykgewotCQlpZiAoc3RyYXRlZ3lfb3B0aW9ucy5ucikKLQkJCWRpZShfKCJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAiCi0JCQkgICAgICAiJy0tc3RyYXRlZ3ktb3B0aW9uJyIpKTsKLQkJaWYgKG9wdGlvbnMuc3RyYXRlZ3kpCi0JCQlkaWUoXygiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggIgotCQkJICAgICAgIictLXN0cmF0ZWd5JyIpKTsKKwkJaWYgKG9wdGlvbnMucmVzY2hlZHVsZV9mYWlsZWRfZXhlYykKKwkJCWRpZShfKCJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmUtbWVyZ2VzJyB3aXRoICIKKwkJCSAgICAgICInLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjJyIpKTsKIAl9CiAKIAlpZiAoIW9wdGlvbnMucm9vdCkgewpAQCAtMTI5MCw3ICsxOTkyLDkgQEAKIAkJCW9wdGlvbnMuc3F1YXNoX29udG8gPSAmc3F1YXNoX29udG87CiAJCQlvcHRpb25zLm9udG9fbmFtZSA9IHNxdWFzaF9vbnRvX25hbWUgPQogCQkJCXhzdHJkdXAob2lkX3RvX2hleCgmc3F1YXNoX29udG8pKTsKLQkJfQorCQl9IGVsc2UKKwkJCW9wdGlvbnMucm9vdF93aXRoX29udG8gPSAxOworCiAJCW9wdGlvbnMudXBzdHJlYW1fbmFtZSA9IE5VTEw7CiAJCW9wdGlvbnMudXBzdHJlYW0gPSBOVUxMOwogCQlpZiAoYXJnYyA+IDEpCkBAIC0xMzAwLDEyICsyMDA0LDIyIEBACiAJfQogCiAJLyogTWFrZSBzdXJlIHRoZSBicmFuY2ggdG8gcmViYXNlIG9udG8gaXMgdmFsaWQuICovCi0JaWYgKCFvcHRpb25zLm9udG9fbmFtZSkKKwlpZiAoa2VlcF9iYXNlKSB7CisJCXN0cmJ1Zl9yZXNldCgmYnVmKTsKKwkJc3RyYnVmX2FkZHN0cigmYnVmLCBvcHRpb25zLnVwc3RyZWFtX25hbWUpOworCQlzdHJidWZfYWRkc3RyKCZidWYsICIuLi4iKTsKKwkJb3B0aW9ucy5vbnRvX25hbWUgPSB4c3RyZHVwKGJ1Zi5idWYpOworCX0gZWxzZSBpZiAoIW9wdGlvbnMub250b19uYW1lKQogCQlvcHRpb25zLm9udG9fbmFtZSA9IG9wdGlvbnMudXBzdHJlYW1fbmFtZTsKIAlpZiAoc3Ryc3RyKG9wdGlvbnMub250b19uYW1lLCAiLi4uIikpIHsKLQkJaWYgKGdldF9vaWRfbWIob3B0aW9ucy5vbnRvX25hbWUsICZtZXJnZV9iYXNlKSA8IDApCi0JCQlkaWUoXygiJyVzJzogbmVlZCBleGFjdGx5IG9uZSBtZXJnZSBiYXNlIiksCi0JCQkgICAgb3B0aW9ucy5vbnRvX25hbWUpOworCQlpZiAoZ2V0X29pZF9tYihvcHRpb25zLm9udG9fbmFtZSwgJm1lcmdlX2Jhc2UpIDwgMCkgeworCQkJaWYgKGtlZXBfYmFzZSkKKwkJCQlkaWUoXygiJyVzJzogbmVlZCBleGFjdGx5IG9uZSBtZXJnZSBiYXNlIHdpdGggYnJhbmNoIiksCisJCQkJICAgIG9wdGlvbnMudXBzdHJlYW1fbmFtZSk7CisJCQllbHNlCisJCQkJZGllKF8oIiclcyc6IG5lZWQgZXhhY3RseSBvbmUgbWVyZ2UgYmFzZSIpLAorCQkJCSAgICBvcHRpb25zLm9udG9fbmFtZSk7CisJCX0KIAkJb3B0aW9ucy5vbnRvID0gbG9va3VwX2NvbW1pdF9vcl9kaWUoJm1lcmdlX2Jhc2UsCiAJCQkJCQkgICAgb3B0aW9ucy5vbnRvX25hbWUpOwogCX0gZWxzZSB7CkBAIC0xMzMwLDEwICsyMDQ0LDExIEBACiAJCS8qIElzIGl0IGEgbG9jYWwgYnJhbmNoPyAqLwogCQlzdHJidWZfcmVzZXQoJmJ1Zik7CiAJCXN0cmJ1Zl9hZGRmKCZidWYsICJyZWZzL2hlYWRzLyVzIiwgYnJhbmNoX25hbWUpOwotCQlpZiAoIXJlYWRfcmVmKGJ1Zi5idWYsICZvcHRpb25zLm9yaWdfaGVhZCkpCisJCWlmICghcmVhZF9yZWYoYnVmLmJ1ZiwgJm9wdGlvbnMub3JpZ19oZWFkKSkgeworCQkJZGllX2lmX2NoZWNrZWRfb3V0KGJ1Zi5idWYsIDEpOwogCQkJb3B0aW9ucy5oZWFkX25hbWUgPSB4c3RyZHVwKGJ1Zi5idWYpOwogCQkvKiBJZiBub3QgaXMgaXQgYSB2YWxpZCByZWYgKGJyYW5jaCBvciBjb21taXQpPyAqLwotCQllbHNlIGlmICghZ2V0X29pZChicmFuY2hfbmFtZSwgJm9wdGlvbnMub3JpZ19oZWFkKSkKKwkJfSBlbHNlIGlmICghZ2V0X29pZChicmFuY2hfbmFtZSwgJm9wdGlvbnMub3JpZ19oZWFkKSkKIAkJCW9wdGlvbnMuaGVhZF9uYW1lID0gTlVMTDsKIAkJZWxzZQogCQkJZGllKF8oImZhdGFsOiBubyBzdWNoIGJyYW5jaC9jb21taXQgJyVzJyIpLApAQCAtMTM1MSw4ICsyMDY2LDcgQEAKIAkJCQlicmFuY2hfbmFtZSA9IG9wdGlvbnMuaGVhZF9uYW1lOwogCiAJCX0gZWxzZSB7Ci0JCQlmcmVlKG9wdGlvbnMuaGVhZF9uYW1lKTsKLQkJCW9wdGlvbnMuaGVhZF9uYW1lID0gTlVMTDsKKwkJCUZSRUVfQU5EX05VTEwob3B0aW9ucy5oZWFkX25hbWUpOwogCQkJYnJhbmNoX25hbWUgPSAiSEVBRCI7CiAJCX0KIAkJaWYgKGdldF9vaWQoIkhFQUQiLCAmb3B0aW9ucy5vcmlnX2hlYWQpKQpAQCAtMTM2OCw3ICsyMDgyLDcgQEAKIAkJCWdldF9mb3JrX3BvaW50KG9wdGlvbnMudXBzdHJlYW1fbmFtZSwgaGVhZCk7CiAJfQogCi0JaWYgKHJlYWRfaW5kZXgodGhlX3JlcG9zaXRvcnktPmluZGV4KSA8IDApCisJaWYgKHJlcG9fcmVhZF9pbmRleCh0aGVfcmVwb3NpdG9yeSkgPCAwKQogCQlkaWUoXygiY291bGQgbm90IHJlYWQgaW5kZXgiKSk7CiAKIAlpZiAob3B0aW9ucy5hdXRvc3Rhc2gpIHsKQEAgLTEzNzgsMTcgKzIwOTIsMTUgQEAKIAkJZmQgPSBob2xkX2xvY2tlZF9pbmRleCgmbG9ja19maWxlLCAwKTsKIAkJcmVmcmVzaF9jYWNoZShSRUZSRVNIX1FVSUVUKTsKIAkJaWYgKDAgPD0gZmQpCi0JCQl1cGRhdGVfaW5kZXhfaWZfYWJsZSgmdGhlX2luZGV4LCAmbG9ja19maWxlKTsKKwkJCXJlcG9fdXBkYXRlX2luZGV4X2lmX2FibGUodGhlX3JlcG9zaXRvcnksICZsb2NrX2ZpbGUpOwogCQlyb2xsYmFja19sb2NrX2ZpbGUoJmxvY2tfZmlsZSk7CiAKLQkJaWYgKGhhc191bnN0YWdlZF9jaGFuZ2VzKDEpIHx8IGhhc191bmNvbW1pdHRlZF9jaGFuZ2VzKDEpKSB7CisJCWlmIChoYXNfdW5zdGFnZWRfY2hhbmdlcyh0aGVfcmVwb3NpdG9yeSwgMSkgfHwKKwkJICAgIGhhc191bmNvbW1pdHRlZF9jaGFuZ2VzKHRoZV9yZXBvc2l0b3J5LCAxKSkgewogCQkJY29uc3QgY2hhciAqYXV0b3N0YXNoID0KIAkJCQlzdGF0ZV9kaXJfcGF0aCgiYXV0b3N0YXNoIiwgJm9wdGlvbnMpOwogCQkJc3RydWN0IGNoaWxkX3Byb2Nlc3Mgc3Rhc2ggPSBDSElMRF9QUk9DRVNTX0lOSVQ7CiAJCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKLQkJCXN0cnVjdCBjb21taXQgKmhlYWQgPQotCQkJCWxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHRoZV9yZXBvc2l0b3J5LAotCQkJCQkJCSZvcHRpb25zLm9yaWdfaGVhZCk7CiAKIAkJCWFyZ3ZfYXJyYXlfcHVzaGwoJnN0YXNoLmFyZ3MsCiAJCQkJCSAic3Rhc2giLCAiY3JlYXRlIiwgImF1dG9zdGFzaCIsIE5VTEwpOwpAQCAtMTQwOSwyNSArMjEyMSwxNyBAQAogCQkJCSAgICBvcHRpb25zLnN0YXRlX2Rpcik7CiAJCQl3cml0ZV9maWxlKGF1dG9zdGFzaCwgIiVzIiwgb2lkX3RvX2hleCgmb2lkKSk7CiAJCQlwcmludGYoXygiQ3JlYXRlZCBhdXRvc3Rhc2g6ICVzXG4iKSwgYnVmLmJ1Zik7Ci0JCQlpZiAocmVzZXRfaGVhZCgmaGVhZC0+b2JqZWN0Lm9pZCwgInJlc2V0IC0taGFyZCIsCisJCQlpZiAocmVzZXRfaGVhZChOVUxMLCAicmVzZXQgLS1oYXJkIiwKIAkJCQkgICAgICAgTlVMTCwgUkVTRVRfSEVBRF9IQVJELCBOVUxMLCBOVUxMKSA8IDApCiAJCQkJZGllKF8oImNvdWxkIG5vdCByZXNldCAtLWhhcmQiKSk7Ci0JCQlwcmludGYoXygiSEVBRCBpcyBub3cgYXQgJXMiKSwKLQkJCSAgICAgICBmaW5kX3VuaXF1ZV9hYmJyZXYoJmhlYWQtPm9iamVjdC5vaWQsCi0JCQkJCQkgIERFRkFVTFRfQUJCUkVWKSk7Ci0JCQlzdHJidWZfcmVzZXQoJmJ1Zik7Ci0JCQlwcF9jb21taXRfZWFzeShDTUlUX0ZNVF9PTkVMSU5FLCBoZWFkLCAmYnVmKTsKLQkJCWlmIChidWYubGVuID4gMCkKLQkJCQlwcmludGYoIiAlcyIsIGJ1Zi5idWYpOwotCQkJcHV0Y2hhcignXG4nKTsKIAogCQkJaWYgKGRpc2NhcmRfaW5kZXgodGhlX3JlcG9zaXRvcnktPmluZGV4KSA8IDAgfHwKLQkJCQlyZWFkX2luZGV4KHRoZV9yZXBvc2l0b3J5LT5pbmRleCkgPCAwKQorCQkJCXJlcG9fcmVhZF9pbmRleCh0aGVfcmVwb3NpdG9yeSkgPCAwKQogCQkJCWRpZShfKCJjb3VsZCBub3QgcmVhZCBpbmRleCIpKTsKIAkJfQogCX0KIAotCWlmIChyZXF1aXJlX2NsZWFuX3dvcmtfdHJlZSgicmViYXNlIiwKKwlpZiAocmVxdWlyZV9jbGVhbl93b3JrX3RyZWUodGhlX3JlcG9zaXRvcnksICJyZWJhc2UiLAogCQkJCSAgICBfKCJQbGVhc2UgY29tbWl0IG9yIHN0YXNoIHRoZW0uIiksIDEsIDEpKSB7CiAJCXJldCA9IDE7CiAJCWdvdG8gY2xlYW51cDsKQEAgLTE0NDAsMzIgKzIxNDQsMjcgQEAKIAogCS8qCiAJICogQ2hlY2sgaWYgd2UgYXJlIGFscmVhZHkgYmFzZWQgb24gb250byB3aXRoIGxpbmVhciBoaXN0b3J5LAotCSAqIGJ1dCB0aGlzIHNob3VsZCBiZSBkb25lIG9ubHkgd2hlbiB1cHN0cmVhbSBhbmQgb250byBhcmUgdGhlIHNhbWUKLQkgKiBhbmQgaWYgdGhpcyBpcyBub3QgYW4gaW50ZXJhY3RpdmUgcmViYXNlLgorCSAqIGluIHdoaWNoIGNhc2Ugd2UgY291bGQgZmFzdC1mb3J3YXJkIHdpdGhvdXQgcmVwbGFjaW5nIHRoZSBjb21taXRzCisJICogd2l0aCBuZXcgY29tbWl0cyByZWNyZWF0ZWQgYnkgcmVwbGF5aW5nIHRoZWlyIGNoYW5nZXMuCisJICoKKwkgKiBOb3RlIHRoYXQgY2FuX2Zhc3RfZm9yd2FyZCgpIGluaXRpYWxpemVzIG1lcmdlX2Jhc2UsIHNvIHdlIGhhdmUgdG8KKwkgKiBjYWxsIGl0IGJlZm9yZSBjaGVja2luZyBhbGxvd19wcmVlbXB0aXZlX2ZmLgogCSAqLwotCWlmIChjYW5fZmFzdF9mb3J3YXJkKG9wdGlvbnMub250bywgJm9wdGlvbnMub3JpZ19oZWFkLCAmbWVyZ2VfYmFzZSkgJiYKLQkgICAgIWlzX2ludGVyYWN0aXZlKCZvcHRpb25zKSAmJiAhb3B0aW9ucy5yZXN0cmljdF9yZXZpc2lvbiAmJgotCSAgICBvcHRpb25zLnVwc3RyZWFtICYmCi0JICAgICFvaWRjbXAoJm9wdGlvbnMudXBzdHJlYW0tPm9iamVjdC5vaWQsICZvcHRpb25zLm9udG8tPm9iamVjdC5vaWQpKSB7CisJaWYgKGNhbl9mYXN0X2ZvcndhcmQob3B0aW9ucy5vbnRvLCBvcHRpb25zLnVwc3RyZWFtLCBvcHRpb25zLnJlc3RyaWN0X3JldmlzaW9uLAorCQkgICAgJm9wdGlvbnMub3JpZ19oZWFkLCAmbWVyZ2VfYmFzZSkgJiYKKwkgICAgYWxsb3dfcHJlZW1wdGl2ZV9mZikgewogCQlpbnQgZmxhZzsKIAogCQlpZiAoIShvcHRpb25zLmZsYWdzICYgUkVCQVNFX0ZPUkNFKSkgewogCQkJLyogTGF6aWx5IHN3aXRjaCB0byB0aGUgdGFyZ2V0IGJyYW5jaCBpZiBuZWVkZWQuLi4gKi8KIAkJCWlmIChvcHRpb25zLnN3aXRjaF90bykgewotCQkJCXN0cnVjdCBvYmplY3RfaWQgb2lkOwotCi0JCQkJaWYgKGdldF9vaWQob3B0aW9ucy5zd2l0Y2hfdG8sICZvaWQpIDwgMCkgewotCQkJCQlyZXQgPSAhIWVycm9yKF8oImNvdWxkIG5vdCBwYXJzZSAnJXMnIiksCi0JCQkJCQkgICAgICBvcHRpb25zLnN3aXRjaF90byk7Ci0JCQkJCWdvdG8gY2xlYW51cDsKLQkJCQl9Ci0KIAkJCQlzdHJidWZfcmVzZXQoJmJ1Zik7CiAJCQkJc3RyYnVmX2FkZGYoJmJ1ZiwgIiVzOiBjaGVja291dCAlcyIsCiAJCQkJCSAgICBnZXRlbnYoR0lUX1JFRkxPR19BQ1RJT05fRU5WSVJPTk1FTlQpLAogCQkJCQkgICAgb3B0aW9ucy5zd2l0Y2hfdG8pOwotCQkJCWlmIChyZXNldF9oZWFkKCZvaWQsICJjaGVja291dCIsCi0JCQkJCSAgICAgICBvcHRpb25zLmhlYWRfbmFtZSwgMCwKKwkJCQlpZiAocmVzZXRfaGVhZCgmb3B0aW9ucy5vcmlnX2hlYWQsICJjaGVja291dCIsCisJCQkJCSAgICAgICBvcHRpb25zLmhlYWRfbmFtZSwKKwkJCQkJICAgICAgIFJFU0VUX0hFQURfUlVOX1BPU1RfQ0hFQ0tPVVRfSE9PSywKIAkJCQkJICAgICAgIE5VTEwsIGJ1Zi5idWYpIDwgMCkgewogCQkJCQlyZXQgPSAhIWVycm9yKF8oImNvdWxkIG5vdCBzd2l0Y2ggdG8gIgogCQkJCQkJCSIlcyIpLApAQCAtMTUyOCw3ICsyMjI3LDcgQEAKIAkJZGlmZl9mbHVzaCgmb3B0cyk7CiAJfQogCi0JaWYgKGlzX2ludGVyYWN0aXZlKCZvcHRpb25zKSkKKwlpZiAoaXNfbWVyZ2UoJm9wdGlvbnMpKQogCQlnb3RvIHJ1bl9yZWJhc2U7CiAKIAkvKiBEZXRhY2ggSEVBRCBhbmQgcmVzZXQgdGhlIHRyZWUgKi8KQEAgLTE1MzksNyArMjIzOCw5IEBACiAJc3RyYnVmX2FkZGYoJm1zZywgIiVzOiBjaGVja291dCAlcyIsCiAJCSAgICBnZXRlbnYoR0lUX1JFRkxPR19BQ1RJT05fRU5WSVJPTk1FTlQpLCBvcHRpb25zLm9udG9fbmFtZSk7CiAJaWYgKHJlc2V0X2hlYWQoJm9wdGlvbnMub250by0+b2JqZWN0Lm9pZCwgImNoZWNrb3V0IiwgTlVMTCwKLQkJICAgICAgIFJFU0VUX0hFQURfREVUQUNILCBOVUxMLCBtc2cuYnVmKSkKKwkJICAgICAgIFJFU0VUX0hFQURfREVUQUNIIHwgUkVTRVRfT1JJR19IRUFEIHwKKwkJICAgICAgIFJFU0VUX0hFQURfUlVOX1BPU1RfQ0hFQ0tPVVRfSE9PSywKKwkJICAgICAgIE5VTEwsIG1zZy5idWYpKQogCQlkaWUoXygiQ291bGQgbm90IGRldGFjaCBIRUFEIikpOwogCXN0cmJ1Zl9yZWxlYXNlKCZtc2cpOwogCkBAIC0xNTQ4LDE0ICsyMjQ5LDE0IEBACiAJICogd2UganVzdCBmYXN0LWZvcndhcmRlZC4KIAkgKi8KIAlzdHJidWZfcmVzZXQoJm1zZyk7Ci0JaWYgKCFvaWRjbXAoJm1lcmdlX2Jhc2UsICZvcHRpb25zLm9yaWdfaGVhZCkpIHsKKwlpZiAob2lkZXEoJm1lcmdlX2Jhc2UsICZvcHRpb25zLm9yaWdfaGVhZCkpIHsKIAkJcHJpbnRmKF8oIkZhc3QtZm9yd2FyZGVkICVzIHRvICVzLlxuIiksCiAJCQlicmFuY2hfbmFtZSwgb3B0aW9ucy5vbnRvX25hbWUpOwogCQlzdHJidWZfYWRkZigmbXNnLCAicmViYXNlIGZpbmlzaGVkOiAlcyBvbnRvICVzIiwKIAkJCW9wdGlvbnMuaGVhZF9uYW1lID8gb3B0aW9ucy5oZWFkX25hbWUgOiAiZGV0YWNoZWQgSEVBRCIsCiAJCQlvaWRfdG9faGV4KCZvcHRpb25zLm9udG8tPm9iamVjdC5vaWQpKTsKLQkJcmVzZXRfaGVhZChOVUxMLCAiRmFzdC1mb3J3YXJkZWQiLCBvcHRpb25zLmhlYWRfbmFtZSwgMCwKLQkJCSAgICJIRUFEIiwgbXNnLmJ1Zik7CisJCXJlc2V0X2hlYWQoTlVMTCwgIkZhc3QtZm9yd2FyZGVkIiwgb3B0aW9ucy5oZWFkX25hbWUsCisJCQkgICBSRVNFVF9IRUFEX1JFRlNfT05MWSwgIkhFQUQiLCBtc2cuYnVmKTsKIAkJc3RyYnVmX3JlbGVhc2UoJm1zZyk7CiAJCXJldCA9ICEhZmluaXNoX3JlYmFzZSgmb3B0aW9ucyk7CiAJCWdvdG8gY2xlYW51cDsKQEAgLTE1NzEsOSArMjI3MiwxMCBAQAogCW9wdGlvbnMucmV2aXNpb25zID0gcmV2aXNpb25zLmJ1ZjsKIAogcnVuX3JlYmFzZToKLQlyZXQgPSAhIXJ1bl9zcGVjaWZpY19yZWJhc2UoJm9wdGlvbnMpOworCXJldCA9ICEhcnVuX3NwZWNpZmljX3JlYmFzZSgmb3B0aW9ucywgYWN0aW9uKTsKIAogY2xlYW51cDoKKwlzdHJidWZfcmVsZWFzZSgmYnVmKTsKIAlzdHJidWZfcmVsZWFzZSgmcmV2aXNpb25zKTsKIAlmcmVlKG9wdGlvbnMuaGVhZF9uYW1lKTsKIAlmcmVlKG9wdGlvbnMuZ3BnX3NpZ25fb3B0KTsKZGlmZiAtLWdpdCBhL2J1aWx0aW4vcmVjZWl2ZS1wYWNrLmMgYi9idWlsdGluL3JlY2VpdmUtcGFjay5jCmluZGV4IDMzMTg3YmQuLjJjYzE4YmIgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vcmVjZWl2ZS1wYWNrLmMKKysrIGIvYnVpbHRpbi9yZWNlaXZlLXBhY2suYwpAQCAtMTIsNyArMTIsNiBAQAogI2luY2x1ZGUgIm9iamVjdC5oIgogI2luY2x1ZGUgInJlbW90ZS5oIgogI2luY2x1ZGUgImNvbm5lY3QuaCIKLSNpbmNsdWRlICJ0cmFuc3BvcnQuaCIKICNpbmNsdWRlICJzdHJpbmctbGlzdC5oIgogI2luY2x1ZGUgInNoYTEtYXJyYXkuaCIKICNpbmNsdWRlICJjb25uZWN0ZWQuaCIKQEAgLTI4LDYgKzI3LDcgQEAKICNpbmNsdWRlICJvYmplY3Qtc3RvcmUuaCIKICNpbmNsdWRlICJwcm90b2NvbC5oIgogI2luY2x1ZGUgImNvbW1pdC1yZWFjaC5oIgorI2luY2x1ZGUgIndvcmt0cmVlLmgiCiAKIHN0YXRpYyBjb25zdCBjaGFyICogY29uc3QgcmVjZWl2ZV9wYWNrX3VzYWdlW10gPSB7CiAJTl8oImdpdCByZWNlaXZlLXBhY2sgPGdpdC1kaXI+IiksCkBAIC00MTgsMjQgKzQxOCwyMiBAQAogCXJldHVybiAwOwogfQogCi0jZGVmaW5lIEhNQUNfQkxPQ0tfU0laRSA2NAotCi1zdGF0aWMgdm9pZCBobWFjX3NoYTEodW5zaWduZWQgY2hhciAqb3V0LAorc3RhdGljIHZvaWQgaG1hYyh1bnNpZ25lZCBjaGFyICpvdXQsCiAJCSAgICAgIGNvbnN0IGNoYXIgKmtleV9pbiwgc2l6ZV90IGtleV9sZW4sCiAJCSAgICAgIGNvbnN0IGNoYXIgKnRleHQsIHNpemVfdCB0ZXh0X2xlbikKIHsKLQl1bnNpZ25lZCBjaGFyIGtleVtITUFDX0JMT0NLX1NJWkVdOwotCXVuc2lnbmVkIGNoYXIga19pcGFkW0hNQUNfQkxPQ0tfU0laRV07Ci0JdW5zaWduZWQgY2hhciBrX29wYWRbSE1BQ19CTE9DS19TSVpFXTsKKwl1bnNpZ25lZCBjaGFyIGtleVtHSVRfTUFYX0JMS1NaXTsKKwl1bnNpZ25lZCBjaGFyIGtfaXBhZFtHSVRfTUFYX0JMS1NaXTsKKwl1bnNpZ25lZCBjaGFyIGtfb3BhZFtHSVRfTUFYX0JMS1NaXTsKIAlpbnQgaTsKLQlnaXRfU0hBX0NUWCBjdHg7CisJZ2l0X2hhc2hfY3R4IGN0eDsKIAogCS8qIFJGQyAyMTA0IDIuICgxKSAqLwotCW1lbXNldChrZXksICdcMCcsIEhNQUNfQkxPQ0tfU0laRSk7Ci0JaWYgKEhNQUNfQkxPQ0tfU0laRSA8IGtleV9sZW4pIHsKLQkJZ2l0X1NIQTFfSW5pdCgmY3R4KTsKLQkJZ2l0X1NIQTFfVXBkYXRlKCZjdHgsIGtleV9pbiwga2V5X2xlbik7Ci0JCWdpdF9TSEExX0ZpbmFsKGtleSwgJmN0eCk7CisJbWVtc2V0KGtleSwgJ1wwJywgR0lUX01BWF9CTEtTWik7CisJaWYgKHRoZV9oYXNoX2FsZ28tPmJsa3N6IDwga2V5X2xlbikgeworCQl0aGVfaGFzaF9hbGdvLT5pbml0X2ZuKCZjdHgpOworCQl0aGVfaGFzaF9hbGdvLT51cGRhdGVfZm4oJmN0eCwga2V5X2luLCBrZXlfbGVuKTsKKwkJdGhlX2hhc2hfYWxnby0+ZmluYWxfZm4oa2V5LCAmY3R4KTsKIAl9IGVsc2UgewogCQltZW1jcHkoa2V5LCBrZXlfaW4sIGtleV9sZW4pOwogCX0KQEAgLTQ0NywyOSArNDQ1LDI5IEBACiAJfQogCiAJLyogUkZDIDIxMDQgMi4gKDMpICYgKDQpICovCi0JZ2l0X1NIQTFfSW5pdCgmY3R4KTsKLQlnaXRfU0hBMV9VcGRhdGUoJmN0eCwga19pcGFkLCBzaXplb2Yoa19pcGFkKSk7Ci0JZ2l0X1NIQTFfVXBkYXRlKCZjdHgsIHRleHQsIHRleHRfbGVuKTsKLQlnaXRfU0hBMV9GaW5hbChvdXQsICZjdHgpOworCXRoZV9oYXNoX2FsZ28tPmluaXRfZm4oJmN0eCk7CisJdGhlX2hhc2hfYWxnby0+dXBkYXRlX2ZuKCZjdHgsIGtfaXBhZCwgc2l6ZW9mKGtfaXBhZCkpOworCXRoZV9oYXNoX2FsZ28tPnVwZGF0ZV9mbigmY3R4LCB0ZXh0LCB0ZXh0X2xlbik7CisJdGhlX2hhc2hfYWxnby0+ZmluYWxfZm4ob3V0LCAmY3R4KTsKIAogCS8qIFJGQyAyMTA0IDIuICg2KSAmICg3KSAqLwotCWdpdF9TSEExX0luaXQoJmN0eCk7Ci0JZ2l0X1NIQTFfVXBkYXRlKCZjdHgsIGtfb3BhZCwgc2l6ZW9mKGtfb3BhZCkpOwotCWdpdF9TSEExX1VwZGF0ZSgmY3R4LCBvdXQsIEdJVF9TSEExX1JBV1NaKTsKLQlnaXRfU0hBMV9GaW5hbChvdXQsICZjdHgpOworCXRoZV9oYXNoX2FsZ28tPmluaXRfZm4oJmN0eCk7CisJdGhlX2hhc2hfYWxnby0+dXBkYXRlX2ZuKCZjdHgsIGtfb3BhZCwgc2l6ZW9mKGtfb3BhZCkpOworCXRoZV9oYXNoX2FsZ28tPnVwZGF0ZV9mbigmY3R4LCBvdXQsIHRoZV9oYXNoX2FsZ28tPnJhd3N6KTsKKwl0aGVfaGFzaF9hbGdvLT5maW5hbF9mbihvdXQsICZjdHgpOwogfQogCiBzdGF0aWMgY2hhciAqcHJlcGFyZV9wdXNoX2NlcnRfbm9uY2UoY29uc3QgY2hhciAqcGF0aCwgdGltZXN0YW1wX3Qgc3RhbXApCiB7CiAJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKLQl1bnNpZ25lZCBjaGFyIHNoYTFbR0lUX1NIQTFfUkFXU1pdOworCXVuc2lnbmVkIGNoYXIgaGFzaFtHSVRfTUFYX1JBV1NaXTsKIAogCXN0cmJ1Zl9hZGRmKCZidWYsICIlczolIlBSSXRpbWUsIHBhdGgsIHN0YW1wKTsKLQlobWFjX3NoYTEoc2hhMSwgYnVmLmJ1ZiwgYnVmLmxlbiwgY2VydF9ub25jZV9zZWVkLCBzdHJsZW4oY2VydF9ub25jZV9zZWVkKSk7CisJaG1hYyhoYXNoLCBidWYuYnVmLCBidWYubGVuLCBjZXJ0X25vbmNlX3NlZWQsIHN0cmxlbihjZXJ0X25vbmNlX3NlZWQpKTsKIAlzdHJidWZfcmVsZWFzZSgmYnVmKTsKIAogCS8qIFJGQyAyMTA0IDUuIEhNQUMtU0hBMS04MCAqLwotCXN0cmJ1Zl9hZGRmKCZidWYsICIlIlBSSXRpbWUiLSUuKnMiLCBzdGFtcCwgR0lUX1NIQTFfSEVYU1osIHNoYTFfdG9faGV4KHNoYTEpKTsKKwlzdHJidWZfYWRkZigmYnVmLCAiJSJQUkl0aW1lIi0lLipzIiwgc3RhbXAsIChpbnQpdGhlX2hhc2hfYWxnby0+aGV4c3osIGhhc2hfdG9faGV4KGhhc2gpKTsKIAlyZXR1cm4gc3RyYnVmX2RldGFjaCgmYnVmLCBOVUxMKTsKIH0KIApAQCAtNjk0LDYgKzY5Miw4IEBACiAJcHJvYy5hcmd2ID0gYXJndjsKIAlwcm9jLmluID0gLTE7CiAJcHJvYy5zdGRvdXRfdG9fc3RkZXJyID0gMTsKKwlwcm9jLnRyYWNlMl9ob29rX25hbWUgPSBob29rX25hbWU7CisKIAlpZiAoZmVlZF9zdGF0ZS0+cHVzaF9vcHRpb25zKSB7CiAJCWludCBpOwogCQlmb3IgKGkgPSAwOyBpIDwgZmVlZF9zdGF0ZS0+cHVzaF9vcHRpb25zLT5ucjsgaSsrKQpAQCAtODA3LDYgKzgwNyw3IEBACiAJcHJvYy5zdGRvdXRfdG9fc3RkZXJyID0gMTsKIAlwcm9jLmVyciA9IHVzZV9zaWRlYmFuZCA/IC0xIDogMDsKIAlwcm9jLmFyZ3YgPSBhcmd2OworCXByb2MudHJhY2UyX2hvb2tfbmFtZSA9ICJ1cGRhdGUiOwogCiAJY29kZSA9IHN0YXJ0X2NvbW1hbmQoJnByb2MpOwogCWlmIChjb2RlKQpAQCAtODE2LDE2ICs4MTcsNiBAQAogCXJldHVybiBmaW5pc2hfY29tbWFuZCgmcHJvYyk7CiB9CiAKLXN0YXRpYyBpbnQgaXNfcmVmX2NoZWNrZWRfb3V0KGNvbnN0IGNoYXIgKnJlZikKLXsKLQlpZiAoaXNfYmFyZV9yZXBvc2l0b3J5KCkpCi0JCXJldHVybiAwOwotCi0JaWYgKCFoZWFkX25hbWUpCi0JCXJldHVybiAwOwotCXJldHVybiAhc3RyY21wKGhlYWRfbmFtZSwgcmVmKTsKLX0KLQogc3RhdGljIGNoYXIgKnJlZnVzZV91bmNvbmZpZ3VyZWRfZGVueV9tc2cgPQogCU5fKCJCeSBkZWZhdWx0LCB1cGRhdGluZyB0aGUgY3VycmVudCBicmFuY2ggaW4gYSBub24tYmFyZSByZXBvc2l0b3J5XG4iCiAJICAgImlzIGRlbmllZCwgYmVjYXVzZSBpdCB3aWxsIG1ha2UgdGhlIGluZGV4IGFuZCB3b3JrIHRyZWUgaW5jb25zaXN0ZW50XG4iCkBAIC05NjgsNyArOTU5LDcgQEAKIAlpZiAocnVuX2NvbW1hbmQoJmNoaWxkKSkKIAkJcmV0dXJuICJXb3JraW5nIGRpcmVjdG9yeSBoYXMgc3RhZ2VkIGNoYW5nZXMiOwogCi0JcmVhZF90cmVlWzNdID0gc2hhMV90b19oZXgoc2hhMSk7CisJcmVhZF90cmVlWzNdID0gaGFzaF90b19oZXgoc2hhMSk7CiAJY2hpbGRfcHJvY2Vzc19pbml0KCZjaGlsZCk7CiAJY2hpbGQuYXJndiA9IHJlYWRfdHJlZTsKIAljaGlsZC5lbnYgPSBlbnYtPmFyZ3Y7CkBAIC05ODUsMjggKzk3NiwzOCBAQAogCiBzdGF0aWMgY29uc3QgY2hhciAqcHVzaF90b19jaGVja291dF9ob29rID0gInB1c2gtdG8tY2hlY2tvdXQiOwogCi1zdGF0aWMgY29uc3QgY2hhciAqcHVzaF90b19jaGVja291dCh1bnNpZ25lZCBjaGFyICpzaGExLAorc3RhdGljIGNvbnN0IGNoYXIgKnB1c2hfdG9fY2hlY2tvdXQodW5zaWduZWQgY2hhciAqaGFzaCwKIAkJCQkgICAgc3RydWN0IGFyZ3ZfYXJyYXkgKmVudiwKIAkJCQkgICAgY29uc3QgY2hhciAqd29ya190cmVlKQogewogCWFyZ3ZfYXJyYXlfcHVzaGYoZW52LCAiR0lUX1dPUktfVFJFRT0lcyIsIGFic29sdXRlX3BhdGgod29ya190cmVlKSk7CiAJaWYgKHJ1bl9ob29rX2xlKGVudi0+YXJndiwgcHVzaF90b19jaGVja291dF9ob29rLAotCQkJc2hhMV90b19oZXgoc2hhMSksIE5VTEwpKQorCQkJaGFzaF90b19oZXgoaGFzaCksIE5VTEwpKQogCQlyZXR1cm4gInB1c2gtdG8tY2hlY2tvdXQgaG9vayBkZWNsaW5lZCI7CiAJZWxzZQogCQlyZXR1cm4gTlVMTDsKIH0KIAotc3RhdGljIGNvbnN0IGNoYXIgKnVwZGF0ZV93b3JrdHJlZSh1bnNpZ25lZCBjaGFyICpzaGExKQorc3RhdGljIGNvbnN0IGNoYXIgKnVwZGF0ZV93b3JrdHJlZSh1bnNpZ25lZCBjaGFyICpzaGExLCBjb25zdCBzdHJ1Y3Qgd29ya3RyZWUgKndvcmt0cmVlKQogewotCWNvbnN0IGNoYXIgKnJldHZhbDsKLQljb25zdCBjaGFyICp3b3JrX3RyZWUgPSBnaXRfd29ya190cmVlX2NmZyA/IGdpdF93b3JrX3RyZWVfY2ZnIDogIi4uIjsKKwljb25zdCBjaGFyICpyZXR2YWwsICp3b3JrX3RyZWUsICpnaXRfZGlyID0gTlVMTDsKIAlzdHJ1Y3QgYXJndl9hcnJheSBlbnYgPSBBUkdWX0FSUkFZX0lOSVQ7CiAKKwlpZiAod29ya3RyZWUgJiYgd29ya3RyZWUtPnBhdGgpCisJCXdvcmtfdHJlZSA9IHdvcmt0cmVlLT5wYXRoOworCWVsc2UgaWYgKGdpdF93b3JrX3RyZWVfY2ZnKQorCQl3b3JrX3RyZWUgPSBnaXRfd29ya190cmVlX2NmZzsKKwllbHNlCisJCXdvcmtfdHJlZSA9ICIuLiI7CisKIAlpZiAoaXNfYmFyZV9yZXBvc2l0b3J5KCkpCiAJCXJldHVybiAiZGVueUN1cnJlbnRCcmFuY2ggPSB1cGRhdGVJbnN0ZWFkIG5lZWRzIGEgd29ya3RyZWUiOworCWlmICh3b3JrdHJlZSkKKwkJZ2l0X2RpciA9IGdldF93b3JrdHJlZV9naXRfZGlyKHdvcmt0cmVlKTsKKwlpZiAoIWdpdF9kaXIpCisJCWdpdF9kaXIgPSBnZXRfZ2l0X2RpcigpOwogCi0JYXJndl9hcnJheV9wdXNoZigmZW52LCAiR0lUX0RJUj0lcyIsIGFic29sdXRlX3BhdGgoZ2V0X2dpdF9kaXIoKSkpOworCWFyZ3ZfYXJyYXlfcHVzaGYoJmVudiwgIkdJVF9ESVI9JXMiLCBhYnNvbHV0ZV9wYXRoKGdpdF9kaXIpKTsKIAogCWlmICghZmluZF9ob29rKHB1c2hfdG9fY2hlY2tvdXRfaG9vaykpCiAJCXJldHZhbCA9IHB1c2hfdG9fZGVwbG95KHNoYTEsICZlbnYsIHdvcmtfdHJlZSk7CkBAIC0xMDI2LDYgKzEwMjcsNyBAQAogCXN0cnVjdCBvYmplY3RfaWQgKm9sZF9vaWQgPSAmY21kLT5vbGRfb2lkOwogCXN0cnVjdCBvYmplY3RfaWQgKm5ld19vaWQgPSAmY21kLT5uZXdfb2lkOwogCWludCBkb191cGRhdGVfd29ya3RyZWUgPSAwOworCWNvbnN0IHN0cnVjdCB3b3JrdHJlZSAqd29ya3RyZWUgPSBpc19iYXJlX3JlcG9zaXRvcnkoKSA/IE5VTEwgOiBmaW5kX3NoYXJlZF9zeW1yZWYoIkhFQUQiLCBuYW1lKTsKIAogCS8qIG9ubHkgcmVmcy8uLi4gYXJlIGFsbG93ZWQgKi8KIAlpZiAoIXN0YXJ0c193aXRoKG5hbWUsICJyZWZzLyIpIHx8IGNoZWNrX3JlZm5hbWVfZm9ybWF0KG5hbWUgKyA1LCAwKSkgewpAQCAtMTAzNyw3ICsxMDM5LDcgQEAKIAlmcmVlKG5hbWVzcGFjZWRfbmFtZSk7CiAJbmFtZXNwYWNlZF9uYW1lID0gc3RyYnVmX2RldGFjaCgmbmFtZXNwYWNlZF9uYW1lX2J1ZiwgTlVMTCk7CiAKLQlpZiAoaXNfcmVmX2NoZWNrZWRfb3V0KG5hbWVzcGFjZWRfbmFtZSkpIHsKKwlpZiAod29ya3RyZWUpIHsKIAkJc3dpdGNoIChkZW55X2N1cnJlbnRfYnJhbmNoKSB7CiAJCWNhc2UgREVOWV9JR05PUkU6CiAJCQlicmVhazsKQEAgLTEwNjksNyArMTA3MSw3IEBACiAJCQlyZXR1cm4gImRlbGV0aW9uIHByb2hpYml0ZWQiOwogCQl9CiAKLQkJaWYgKGhlYWRfbmFtZSAmJiAhc3RyY21wKG5hbWVzcGFjZWRfbmFtZSwgaGVhZF9uYW1lKSkgeworCQlpZiAod29ya3RyZWUgfHwgKGhlYWRfbmFtZSAmJiAhc3RyY21wKG5hbWVzcGFjZWRfbmFtZSwgaGVhZF9uYW1lKSkpIHsKIAkJCXN3aXRjaCAoZGVueV9kZWxldGVfY3VycmVudCkgewogCQkJY2FzZSBERU5ZX0lHTk9SRToKIAkJCQlicmVhazsKQEAgLTExMTgsNyArMTEyMCw3IEBACiAJfQogCiAJaWYgKGRvX3VwZGF0ZV93b3JrdHJlZSkgewotCQlyZXQgPSB1cGRhdGVfd29ya3RyZWUobmV3X29pZC0+aGFzaCk7CisJCXJldCA9IHVwZGF0ZV93b3JrdHJlZShuZXdfb2lkLT5oYXNoLCBmaW5kX3NoYXJlZF9zeW1yZWYoIkhFQUQiLCBuYW1lKSk7CiAJCWlmIChyZXQpCiAJCQlyZXR1cm4gcmV0OwogCX0KQEAgLTExOTAsNiArMTE5Miw3IEBACiAJcHJvYy5ub19zdGRpbiA9IDE7CiAJcHJvYy5zdGRvdXRfdG9fc3RkZXJyID0gMTsKIAlwcm9jLmVyciA9IHVzZV9zaWRlYmFuZCA/IC0xIDogMDsKKwlwcm9jLnRyYWNlMl9ob29rX25hbWUgPSAicG9zdC11cGRhdGUiOwogCiAJaWYgKCFzdGFydF9jb21tYW5kKCZwcm9jKSkgewogCQlpZiAodXNlX3NpZGViYW5kKQpAQCAtMTE5OCwxNyArMTIwMSwxMiBAQAogCX0KIH0KIAotc3RhdGljIHZvaWQgY2hlY2tfYWxpYXNlZF91cGRhdGUoc3RydWN0IGNvbW1hbmQgKmNtZCwgc3RydWN0IHN0cmluZ19saXN0ICpsaXN0KQorc3RhdGljIHZvaWQgY2hlY2tfYWxpYXNlZF91cGRhdGVfaW50ZXJuYWwoc3RydWN0IGNvbW1hbmQgKmNtZCwKKwkJCQkJICBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmxpc3QsCisJCQkJCSAgY29uc3QgY2hhciAqZHN0X25hbWUsIGludCBmbGFnKQogewotCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7Ci0JY29uc3QgY2hhciAqZHN0X25hbWU7CiAJc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKml0ZW07CiAJc3RydWN0IGNvbW1hbmQgKmRzdF9jbWQ7Ci0JaW50IGZsYWc7Ci0KLQlzdHJidWZfYWRkZigmYnVmLCAiJXMlcyIsIGdldF9naXRfbmFtZXNwYWNlKCksIGNtZC0+cmVmX25hbWUpOwotCWRzdF9uYW1lID0gcmVzb2x2ZV9yZWZfdW5zYWZlKGJ1Zi5idWYsIDAsIE5VTEwsICZmbGFnKTsKLQlzdHJidWZfcmVsZWFzZSgmYnVmKTsKIAogCWlmICghKGZsYWcgJiBSRUZfSVNTWU1SRUYpKQogCQlyZXR1cm47CkBAIC0xMjQ3LDYgKzEyNDUsMTggQEAKIAkJImluY29uc2lzdGVudCBhbGlhc2VkIHVwZGF0ZSI7CiB9CiAKK3N0YXRpYyB2b2lkIGNoZWNrX2FsaWFzZWRfdXBkYXRlKHN0cnVjdCBjb21tYW5kICpjbWQsIHN0cnVjdCBzdHJpbmdfbGlzdCAqbGlzdCkKK3sKKwlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOworCWNvbnN0IGNoYXIgKmRzdF9uYW1lOworCWludCBmbGFnOworCisJc3RyYnVmX2FkZGYoJmJ1ZiwgIiVzJXMiLCBnZXRfZ2l0X25hbWVzcGFjZSgpLCBjbWQtPnJlZl9uYW1lKTsKKwlkc3RfbmFtZSA9IHJlc29sdmVfcmVmX3Vuc2FmZShidWYuYnVmLCAwLCBOVUxMLCAmZmxhZyk7CisJY2hlY2tfYWxpYXNlZF91cGRhdGVfaW50ZXJuYWwoY21kLCBsaXN0LCBkc3RfbmFtZSwgZmxhZyk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7Cit9CisKIHN0YXRpYyB2b2lkIGNoZWNrX2FsaWFzZWRfdXBkYXRlcyhzdHJ1Y3QgY29tbWFuZCAqY29tbWFuZHMpCiB7CiAJc3RydWN0IGNvbW1hbmQgKmNtZDsKQEAgLTE1NjksMzAgKzE1NzksMjkgQEAKIAl9CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgY29tbWFuZCAqcmVhZF9oZWFkX2luZm8oc3RydWN0IG9pZF9hcnJheSAqc2hhbGxvdykKK3N0YXRpYyBzdHJ1Y3QgY29tbWFuZCAqcmVhZF9oZWFkX2luZm8oc3RydWN0IHBhY2tldF9yZWFkZXIgKnJlYWRlciwKKwkJCQkgICAgICBzdHJ1Y3Qgb2lkX2FycmF5ICpzaGFsbG93KQogewogCXN0cnVjdCBjb21tYW5kICpjb21tYW5kcyA9IE5VTEw7CiAJc3RydWN0IGNvbW1hbmQgKipwID0gJmNvbW1hbmRzOwogCWZvciAoOzspIHsKLQkJY2hhciAqbGluZTsKLQkJaW50IGxlbiwgbGluZWxlbjsKKwkJaW50IGxpbmVsZW47CiAKLQkJbGluZSA9IHBhY2tldF9yZWFkX2xpbmUoMCwgJmxlbik7Ci0JCWlmICghbGluZSkKKwkJaWYgKHBhY2tldF9yZWFkZXJfcmVhZChyZWFkZXIpICE9IFBBQ0tFVF9SRUFEX05PUk1BTCkKIAkJCWJyZWFrOwogCi0JCWlmIChsZW4gPiA4ICYmIHN0YXJ0c193aXRoKGxpbmUsICJzaGFsbG93ICIpKSB7CisJCWlmIChyZWFkZXItPnBrdGxlbiA+IDggJiYgc3RhcnRzX3dpdGgocmVhZGVyLT5saW5lLCAic2hhbGxvdyAiKSkgewogCQkJc3RydWN0IG9iamVjdF9pZCBvaWQ7Ci0JCQlpZiAoZ2V0X29pZF9oZXgobGluZSArIDgsICZvaWQpKQorCQkJaWYgKGdldF9vaWRfaGV4KHJlYWRlci0+bGluZSArIDgsICZvaWQpKQogCQkJCWRpZSgicHJvdG9jb2wgZXJyb3I6IGV4cGVjdGVkIHNoYWxsb3cgc2hhLCBnb3QgJyVzJyIsCi0JCQkJICAgIGxpbmUgKyA4KTsKKwkJCQkgICAgcmVhZGVyLT5saW5lICsgOCk7CiAJCQlvaWRfYXJyYXlfYXBwZW5kKHNoYWxsb3csICZvaWQpOwogCQkJY29udGludWU7CiAJCX0KIAotCQlsaW5lbGVuID0gc3RybGVuKGxpbmUpOwotCQlpZiAobGluZWxlbiA8IGxlbikgewotCQkJY29uc3QgY2hhciAqZmVhdHVyZV9saXN0ID0gbGluZSArIGxpbmVsZW4gKyAxOworCQlsaW5lbGVuID0gc3RybGVuKHJlYWRlci0+bGluZSk7CisJCWlmIChsaW5lbGVuIDwgcmVhZGVyLT5wa3RsZW4pIHsKKwkJCWNvbnN0IGNoYXIgKmZlYXR1cmVfbGlzdCA9IHJlYWRlci0+bGluZSArIGxpbmVsZW4gKyAxOwogCQkJaWYgKHBhcnNlX2ZlYXR1cmVfcmVxdWVzdChmZWF0dXJlX2xpc3QsICJyZXBvcnQtc3RhdHVzIikpCiAJCQkJcmVwb3J0X3N0YXR1cyA9IDE7CiAJCQlpZiAocGFyc2VfZmVhdHVyZV9yZXF1ZXN0KGZlYXR1cmVfbGlzdCwgInNpZGUtYmFuZC02NGsiKSkKQEAgLTE2MDcsMjggKzE2MTYsMzIgQEAKIAkJCQl1c2VfcHVzaF9vcHRpb25zID0gMTsKIAkJfQogCi0JCWlmICghc3RyY21wKGxpbmUsICJwdXNoLWNlcnQiKSkgeworCQlpZiAoIXN0cmNtcChyZWFkZXItPmxpbmUsICJwdXNoLWNlcnQiKSkgewogCQkJaW50IHRydWVfZmx1c2ggPSAwOwotCQkJY2hhciBjZXJ0YnVmWzEwMjRdOworCQkJaW50IHNhdmVkX29wdGlvbnMgPSByZWFkZXItPm9wdGlvbnM7CisJCQlyZWFkZXItPm9wdGlvbnMgJj0gflBBQ0tFVF9SRUFEX0NIT01QX05FV0xJTkU7CiAKIAkJCWZvciAoOzspIHsKLQkJCQlsZW4gPSBwYWNrZXRfcmVhZCgwLCBOVUxMLCBOVUxMLAotCQkJCQkJICBjZXJ0YnVmLCBzaXplb2YoY2VydGJ1ZiksIDApOwotCQkJCWlmICghbGVuKSB7CisJCQkJcGFja2V0X3JlYWRlcl9yZWFkKHJlYWRlcik7CisJCQkJaWYgKHJlYWRlci0+c3RhdHVzID09IFBBQ0tFVF9SRUFEX0ZMVVNIKSB7CiAJCQkJCXRydWVfZmx1c2ggPSAxOwogCQkJCQlicmVhazsKIAkJCQl9Ci0JCQkJaWYgKCFzdHJjbXAoY2VydGJ1ZiwgInB1c2gtY2VydC1lbmRcbiIpKQorCQkJCWlmIChyZWFkZXItPnN0YXR1cyAhPSBQQUNLRVRfUkVBRF9OT1JNQUwpIHsKKwkJCQkJZGllKCJwcm90b2NvbCBlcnJvcjogZ290IGFuIHVuZXhwZWN0ZWQgcGFja2V0Iik7CisJCQkJfQorCQkJCWlmICghc3RyY21wKHJlYWRlci0+bGluZSwgInB1c2gtY2VydC1lbmRcbiIpKQogCQkJCQlicmVhazsgLyogZW5kIG9mIGNlcnQgKi8KLQkJCQlzdHJidWZfYWRkc3RyKCZwdXNoX2NlcnQsIGNlcnRidWYpOworCQkJCXN0cmJ1Zl9hZGRzdHIoJnB1c2hfY2VydCwgcmVhZGVyLT5saW5lKTsKIAkJCX0KKwkJCXJlYWRlci0+b3B0aW9ucyA9IHNhdmVkX29wdGlvbnM7CiAKIAkJCWlmICh0cnVlX2ZsdXNoKQogCQkJCWJyZWFrOwogCQkJY29udGludWU7CiAJCX0KIAotCQlwID0gcXVldWVfY29tbWFuZChwLCBsaW5lLCBsaW5lbGVuKTsKKwkJcCA9IHF1ZXVlX2NvbW1hbmQocCwgcmVhZGVyLT5saW5lLCBsaW5lbGVuKTsKIAl9CiAKIAlpZiAocHVzaF9jZXJ0LmxlbikKQEAgLTE2MzcsMTggKzE2NTAsMTQgQEAKIAlyZXR1cm4gY29tbWFuZHM7CiB9CiAKLXN0YXRpYyB2b2lkIHJlYWRfcHVzaF9vcHRpb25zKHN0cnVjdCBzdHJpbmdfbGlzdCAqb3B0aW9ucykKK3N0YXRpYyB2b2lkIHJlYWRfcHVzaF9vcHRpb25zKHN0cnVjdCBwYWNrZXRfcmVhZGVyICpyZWFkZXIsCisJCQkgICAgICBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKm9wdGlvbnMpCiB7CiAJd2hpbGUgKDEpIHsKLQkJY2hhciAqbGluZTsKLQkJaW50IGxlbjsKLQotCQlsaW5lID0gcGFja2V0X3JlYWRfbGluZSgwLCAmbGVuKTsKLQotCQlpZiAoIWxpbmUpCisJCWlmIChwYWNrZXRfcmVhZGVyX3JlYWQocmVhZGVyKSAhPSBQQUNLRVRfUkVBRF9OT1JNQUwpCiAJCQlicmVhazsKIAotCQlzdHJpbmdfbGlzdF9hcHBlbmQob3B0aW9ucywgbGluZSk7CisJCXN0cmluZ19saXN0X2FwcGVuZChvcHRpb25zLCByZWFkZXItPmxpbmUpOwogCX0KIH0KIApAQCAtMTc5OSw4ICsxODA4LDcgQEAKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgdm9pZCBwcmVwYXJlX3NoYWxsb3dfdXBkYXRlKHN0cnVjdCBjb21tYW5kICpjb21tYW5kcywKLQkJCQkgICBzdHJ1Y3Qgc2hhbGxvd19pbmZvICpzaSkKK3N0YXRpYyB2b2lkIHByZXBhcmVfc2hhbGxvd191cGRhdGUoc3RydWN0IHNoYWxsb3dfaW5mbyAqc2kpCiB7CiAJaW50IGksIGosIGssIGJpdG1hcF9zaXplID0gRElWX1JPVU5EX1VQKHNpLT5yZWYtPm5yLCAzMik7CiAKQEAgLTE4NjYsNyArMTg3NCw3IEBACiAJc2ktPnJlZiA9IHJlZjsKIAogCWlmIChzaGFsbG93X3VwZGF0ZSkgewotCQlwcmVwYXJlX3NoYWxsb3dfdXBkYXRlKGNvbW1hbmRzLCBzaSk7CisJCXByZXBhcmVfc2hhbGxvd191cGRhdGUoc2kpOwogCQlyZXR1cm47CiAJfQogCkBAIC0xOTI0LDYgKzE5MzIsNyBAQAogCXN0cnVjdCBvaWRfYXJyYXkgc2hhbGxvdyA9IE9JRF9BUlJBWV9JTklUOwogCXN0cnVjdCBvaWRfYXJyYXkgcmVmID0gT0lEX0FSUkFZX0lOSVQ7CiAJc3RydWN0IHNoYWxsb3dfaW5mbyBzaTsKKwlzdHJ1Y3QgcGFja2V0X3JlYWRlciByZWFkZXI7CiAKIAlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKIAkJT1BUX19RVUlFVCgmcXVpZXQsIE5fKCJxdWlldCIpKSwKQEAgLTE5ODYsMTIgKzE5OTUsMTYgQEAKIAlpZiAoYWR2ZXJ0aXNlX3JlZnMpCiAJCXJldHVybiAwOwogCi0JaWYgKChjb21tYW5kcyA9IHJlYWRfaGVhZF9pbmZvKCZzaGFsbG93KSkgIT0gTlVMTCkgeworCXBhY2tldF9yZWFkZXJfaW5pdCgmcmVhZGVyLCAwLCBOVUxMLCAwLAorCQkJICAgUEFDS0VUX1JFQURfQ0hPTVBfTkVXTElORSB8CisJCQkgICBQQUNLRVRfUkVBRF9ESUVfT05fRVJSX1BBQ0tFVCk7CisKKwlpZiAoKGNvbW1hbmRzID0gcmVhZF9oZWFkX2luZm8oJnJlYWRlciwgJnNoYWxsb3cpKSAhPSBOVUxMKSB7CiAJCWNvbnN0IGNoYXIgKnVucGFja19zdGF0dXMgPSBOVUxMOwogCQlzdHJ1Y3Qgc3RyaW5nX2xpc3QgcHVzaF9vcHRpb25zID0gU1RSSU5HX0xJU1RfSU5JVF9EVVA7CiAKIAkJaWYgKHVzZV9wdXNoX29wdGlvbnMpCi0JCQlyZWFkX3B1c2hfb3B0aW9ucygmcHVzaF9vcHRpb25zKTsKKwkJCXJlYWRfcHVzaF9vcHRpb25zKCZyZWFkZXIsICZwdXNoX29wdGlvbnMpOwogCQlpZiAoIWNoZWNrX2NlcnRfcHVzaF9vcHRpb25zKCZwdXNoX29wdGlvbnMpKSB7CiAJCQlzdHJ1Y3QgY29tbWFuZCAqY21kOwogCQkJZm9yIChjbWQgPSBjb21tYW5kczsgY21kOyBjbWQgPSBjbWQtPm5leHQpCkBAIC0yMDI4LDcgKzIwNDEsNyBAQAogCQkJcHJvYy5naXRfY21kID0gMTsKIAkJCXByb2MuYXJndiA9IGFyZ3ZfZ2NfYXV0bzsKIAotCQkJY2xvc2VfYWxsX3BhY2tzKHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzKTsKKwkJCWNsb3NlX29iamVjdF9zdG9yZSh0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cyk7CiAJCQlpZiAoIXN0YXJ0X2NvbW1hbmQoJnByb2MpKSB7CiAJCQkJaWYgKHVzZV9zaWRlYmFuZCkKIAkJCQkJY29weV90b19zaWRlYmFuZChwcm9jLmVyciwgLTEsIE5VTEwpOwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9yZWZsb2cuYyBiL2J1aWx0aW4vcmVmbG9nLmMKaW5kZXggN2E4NWU0Yi4uODFkZmQ1NiAxMDA2NDQKLS0tIGEvYnVpbHRpbi9yZWZsb2cuYworKysgYi9idWlsdGluL3JlZmxvZy5jCkBAIC0xNCwxMSArMTQsMTUgQEAKIAogLyogTkVFRFNXT1JLOiBzd2l0Y2ggdG8gdXNpbmcgcGFyc2Vfb3B0aW9ucyAqLwogc3RhdGljIGNvbnN0IGNoYXIgcmVmbG9nX2V4cGlyZV91c2FnZVtdID0KLSJnaXQgcmVmbG9nIGV4cGlyZSBbLS1leHBpcmU9PHRpbWU+XSBbLS1leHBpcmUtdW5yZWFjaGFibGU9PHRpbWU+XSBbLS1yZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLXN0YWxlLWZpeF0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSBbLS1hbGxdIDxyZWZzPi4uLiI7CitOXygiZ2l0IHJlZmxvZyBleHBpcmUgWy0tZXhwaXJlPTx0aW1lPl0gIgorICAgIlstLWV4cGlyZS11bnJlYWNoYWJsZT08dGltZT5dICIKKyAgICJbLS1yZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLXN0YWxlLWZpeF0gWy0tZHJ5LXJ1biB8IC1uXSAiCisgICAiWy0tdmVyYm9zZV0gWy0tYWxsXSA8cmVmcz4uLi4iKTsKIHN0YXRpYyBjb25zdCBjaGFyIHJlZmxvZ19kZWxldGVfdXNhZ2VbXSA9Ci0iZ2l0IHJlZmxvZyBkZWxldGUgWy0tcmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdIDxyZWZzPi4uLiI7CitOXygiZ2l0IHJlZmxvZyBkZWxldGUgWy0tcmV3cml0ZV0gWy0tdXBkYXRlcmVmXSAiCisgICAiWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSA8cmVmcz4uLi4iKTsKIHN0YXRpYyBjb25zdCBjaGFyIHJlZmxvZ19leGlzdHNfdXNhZ2VbXSA9Ci0iZ2l0IHJlZmxvZyBleGlzdHMgPHJlZj4iOworTl8oImdpdCByZWZsb2cgZXhpc3RzIDxyZWY+Iik7CiAKIHN0YXRpYyB0aW1lc3RhbXBfdCBkZWZhdWx0X3JlZmxvZ19leHBpcmU7CiBzdGF0aWMgdGltZXN0YW1wX3QgZGVmYXVsdF9yZWZsb2dfZXhwaXJlX3VucmVhY2hhYmxlOwpAQCAtOTAsOCArOTQsOCBAQAogCWluaXRfdHJlZV9kZXNjKCZkZXNjLCB0cmVlLT5idWZmZXIsIHRyZWUtPnNpemUpOwogCWNvbXBsZXRlID0gMTsKIAl3aGlsZSAodHJlZV9lbnRyeSgmZGVzYywgJmVudHJ5KSkgewotCQlpZiAoIWhhc19zaGExX2ZpbGUoZW50cnkub2lkLT5oYXNoKSB8fAotCQkgICAgKFNfSVNESVIoZW50cnkubW9kZSkgJiYgIXRyZWVfaXNfY29tcGxldGUoZW50cnkub2lkKSkpIHsKKwkJaWYgKCFoYXNfb2JqZWN0X2ZpbGUoJmVudHJ5Lm9pZCkgfHwKKwkJICAgIChTX0lTRElSKGVudHJ5Lm1vZGUpICYmICF0cmVlX2lzX2NvbXBsZXRlKCZlbnRyeS5vaWQpKSkgewogCQkJdHJlZS0+b2JqZWN0LmZsYWdzIHw9IElOQ09NUExFVEU7CiAJCQljb21wbGV0ZSA9IDA7CiAJCX0KQEAgLTU1NiwxNSArNTYwLDE2IEBACiAKIAlmb3IgKGkgPSAxOyBpIDwgYXJnYzsgaSsrKSB7CiAJCWNvbnN0IGNoYXIgKmFyZyA9IGFyZ3ZbaV07CisKIAkJaWYgKCFzdHJjbXAoYXJnLCAiLS1kcnktcnVuIikgfHwgIXN0cmNtcChhcmcsICItbiIpKQogCQkJZmxhZ3MgfD0gRVhQSVJFX1JFRkxPR1NfRFJZX1JVTjsKLQkJZWxzZSBpZiAoc3RhcnRzX3dpdGgoYXJnLCAiLS1leHBpcmU9IikpIHsKLQkJCWlmIChwYXJzZV9leHBpcnlfZGF0ZShhcmcgKyA5LCAmY2IuY21kLmV4cGlyZV90b3RhbCkpCisJCWVsc2UgaWYgKHNraXBfcHJlZml4KGFyZywgIi0tZXhwaXJlPSIsICZhcmcpKSB7CisJCQlpZiAocGFyc2VfZXhwaXJ5X2RhdGUoYXJnLCAmY2IuY21kLmV4cGlyZV90b3RhbCkpCiAJCQkJZGllKF8oIiclcycgaXMgbm90IGEgdmFsaWQgdGltZXN0YW1wIiksIGFyZyk7CiAJCQlleHBsaWNpdF9leHBpcnkgfD0gRVhQSVJFX1RPVEFMOwogCQl9Ci0JCWVsc2UgaWYgKHN0YXJ0c193aXRoKGFyZywgIi0tZXhwaXJlLXVucmVhY2hhYmxlPSIpKSB7Ci0JCQlpZiAocGFyc2VfZXhwaXJ5X2RhdGUoYXJnICsgMjEsICZjYi5jbWQuZXhwaXJlX3VucmVhY2hhYmxlKSkKKwkJZWxzZSBpZiAoc2tpcF9wcmVmaXgoYXJnLCAiLS1leHBpcmUtdW5yZWFjaGFibGU9IiwgJmFyZykpIHsKKwkJCWlmIChwYXJzZV9leHBpcnlfZGF0ZShhcmcsICZjYi5jbWQuZXhwaXJlX3VucmVhY2hhYmxlKSkKIAkJCQlkaWUoXygiJyVzJyBpcyBub3QgYSB2YWxpZCB0aW1lc3RhbXAiKSwgYXJnKTsKIAkJCWV4cGxpY2l0X2V4cGlyeSB8PSBFWFBJUkVfVU5SRUFDSDsKIAkJfQpAQCAtNTg1LDcgKzU5MCw3IEBACiAJCQlicmVhazsKIAkJfQogCQllbHNlIGlmIChhcmdbMF0gPT0gJy0nKQotCQkJdXNhZ2UocmVmbG9nX2V4cGlyZV91c2FnZSk7CisJCQl1c2FnZShfKHJlZmxvZ19leHBpcmVfdXNhZ2UpKTsKIAkJZWxzZQogCQkJYnJlYWs7CiAJfQpAQCAtNTk4LDcgKzYwMyw3IEBACiAJaWYgKGNiLmNtZC5zdGFsZWZpeCkgewogCQlyZXBvX2luaXRfcmV2aXNpb25zKHRoZV9yZXBvc2l0b3J5LCAmY2IuY21kLnJldnMsIHByZWZpeCk7CiAJCWlmIChmbGFncyAmIEVYUElSRV9SRUZMT0dTX1ZFUkJPU0UpCi0JCQlwcmludGYoIk1hcmtpbmcgcmVhY2hhYmxlIG9iamVjdHMuLi4iKTsKKwkJCXByaW50ZihfKCJNYXJraW5nIHJlYWNoYWJsZSBvYmplY3RzLi4uIikpOwogCQltYXJrX3JlYWNoYWJsZV9vYmplY3RzKCZjYi5jbWQucmV2cywgMCwgMCwgTlVMTCk7CiAJCWlmIChmbGFncyAmIEVYUElSRV9SRUZMT0dTX1ZFUkJPU0UpCiAJCQlwdXRjaGFyKCdcbicpOwpAQCAtNjM2LDcgKzY0MSw3IEBACiAJCWNoYXIgKnJlZjsKIAkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJCWlmICghZHdpbV9sb2coYXJndltpXSwgc3RybGVuKGFyZ3ZbaV0pLCAmb2lkLCAmcmVmKSkgewotCQkJc3RhdHVzIHw9IGVycm9yKCIlcyBwb2ludHMgbm93aGVyZSEiLCBhcmd2W2ldKTsKKwkJCXN0YXR1cyB8PSBlcnJvcihfKCIlcyBwb2ludHMgbm93aGVyZSEiKSwgYXJndltpXSk7CiAJCQljb250aW51ZTsKIAkJfQogCQlzZXRfcmVmbG9nX2V4cGlyeV9wYXJhbSgmY2IuY21kLCBleHBsaWNpdF9leHBpcnksIHJlZik7CkBAIC02ODIsMTMgKzY4NywxMyBAQAogCQkJYnJlYWs7CiAJCX0KIAkJZWxzZSBpZiAoYXJnWzBdID09ICctJykKLQkJCXVzYWdlKHJlZmxvZ19kZWxldGVfdXNhZ2UpOworCQkJdXNhZ2UoXyhyZWZsb2dfZGVsZXRlX3VzYWdlKSk7CiAJCWVsc2UKIAkJCWJyZWFrOwogCX0KIAogCWlmIChhcmdjIC0gaSA8IDEpCi0JCXJldHVybiBlcnJvcigiTm90aGluZyB0byBkZWxldGU/Iik7CisJCXJldHVybiBlcnJvcihfKCJubyByZWZsb2cgc3BlY2lmaWVkIHRvIGRlbGV0ZSIpKTsKIAogCWZvciAoIDsgaSA8IGFyZ2M7IGkrKykgewogCQljb25zdCBjaGFyICpzcGVjID0gc3Ryc3RyKGFyZ3ZbaV0sICJAeyIpOwpAQCAtNjk3LDEyICs3MDIsMTIgQEAKIAkJaW50IHJlY25vOwogCiAJCWlmICghc3BlYykgewotCQkJc3RhdHVzIHw9IGVycm9yKCJOb3QgYSByZWZsb2c6ICVzIiwgYXJndltpXSk7CisJCQlzdGF0dXMgfD0gZXJyb3IoXygibm90IGEgcmVmbG9nOiAlcyIpLCBhcmd2W2ldKTsKIAkJCWNvbnRpbnVlOwogCQl9CiAKIAkJaWYgKCFkd2ltX2xvZyhhcmd2W2ldLCBzcGVjIC0gYXJndltpXSwgJm9pZCwgJnJlZikpIHsKLQkJCXN0YXR1cyB8PSBlcnJvcigibm8gcmVmbG9nIGZvciAnJXMnIiwgYXJndltpXSk7CisJCQlzdGF0dXMgfD0gZXJyb3IoXygibm8gcmVmbG9nIGZvciAnJXMnIiksIGFyZ3ZbaV0pOwogCQkJY29udGludWU7CiAJCX0KIApAQCAtNzM3LDcgKzc0Miw3IEBACiAJCQlicmVhazsKIAkJfQogCQllbHNlIGlmIChhcmdbMF0gPT0gJy0nKQotCQkJdXNhZ2UocmVmbG9nX2V4aXN0c191c2FnZSk7CisJCQl1c2FnZShfKHJlZmxvZ19leGlzdHNfdXNhZ2UpKTsKIAkJZWxzZQogCQkJYnJlYWs7CiAJfQpAQCAtNzQ1LDEwICs3NTAsMTAgQEAKIAlzdGFydCA9IGk7CiAKIAlpZiAoYXJnYyAtIHN0YXJ0ICE9IDEpCi0JCXVzYWdlKHJlZmxvZ19leGlzdHNfdXNhZ2UpOworCQl1c2FnZShfKHJlZmxvZ19leGlzdHNfdXNhZ2UpKTsKIAogCWlmIChjaGVja19yZWZuYW1lX2Zvcm1hdChhcmd2W3N0YXJ0XSwgUkVGTkFNRV9BTExPV19PTkVMRVZFTCkpCi0JCWRpZSgiaW52YWxpZCByZWYgZm9ybWF0OiAlcyIsIGFyZ3Zbc3RhcnRdKTsKKwkJZGllKF8oImludmFsaWQgcmVmIGZvcm1hdDogJXMiKSwgYXJndltzdGFydF0pOwogCXJldHVybiAhcmVmbG9nX2V4aXN0cyhhcmd2W3N0YXJ0XSk7CiB9CiAKQEAgLTc1NywxMiArNzYyLDEyIEBACiAgKi8KIAogc3RhdGljIGNvbnN0IGNoYXIgcmVmbG9nX3VzYWdlW10gPQotImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iOworTl8oImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iKTsKIAogaW50IGNtZF9yZWZsb2coaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCiB7CiAJaWYgKGFyZ2MgPiAxICYmICFzdHJjbXAoYXJndlsxXSwgIi1oIikpCi0JCXVzYWdlKHJlZmxvZ191c2FnZSk7CisJCXVzYWdlKF8ocmVmbG9nX3VzYWdlKSk7CiAKIAkvKiBXaXRoIG5vIGNvbW1hbmQsIHdlIGRlZmF1bHQgdG8gc2hvd2luZyBpdC4gKi8KIAlpZiAoYXJnYyA8IDIgfHwgKmFyZ3ZbMV0gPT0gJy0nKQpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9yZW1vdGUuYyBiL2J1aWx0aW4vcmVtb3RlLmMKaW5kZXggZjdlZGY3Zi4uNTU1ZDRjOCAxMDA2NDQKLS0tIGEvYnVpbHRpbi9yZW1vdGUuYworKysgYi9idWlsdGluL3JlbW90ZS5jCkBAIC02LDYgKzYsNyBAQAogI2luY2x1ZGUgInN0cmluZy1saXN0LmgiCiAjaW5jbHVkZSAic3RyYnVmLmgiCiAjaW5jbHVkZSAicnVuLWNvbW1hbmQuaCIKKyNpbmNsdWRlICJyZWJhc2UuaCIKICNpbmNsdWRlICJyZWZzLmgiCiAjaW5jbHVkZSAicmVmc3BlYy5oIgogI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgpAQCAtMjQ4LDkgKzI0OSw4IEBACiBzdHJ1Y3QgYnJhbmNoX2luZm8gewogCWNoYXIgKnJlbW90ZV9uYW1lOwogCXN0cnVjdCBzdHJpbmdfbGlzdCBtZXJnZTsKLQllbnVtIHsKLQkJTk9fUkVCQVNFLCBOT1JNQUxfUkVCQVNFLCBJTlRFUkFDVElWRV9SRUJBU0UsIFJFQkFTRV9NRVJHRVMKLQl9IHJlYmFzZTsKKwllbnVtIHJlYmFzZV90eXBlIHJlYmFzZTsKKwljaGFyICpwdXNoX3JlbW90ZV9uYW1lOwogfTsKIAogc3RhdGljIHN0cnVjdCBzdHJpbmdfbGlzdCBicmFuY2hfbGlzdCA9IFNUUklOR19MSVNUX0lOSVRfTk9EVVA7CkBAIC0yNjQsNTkgKzI2NCw2OSBAQAogCiBzdGF0aWMgaW50IGNvbmZpZ19yZWFkX2JyYW5jaGVzKGNvbnN0IGNoYXIgKmtleSwgY29uc3QgY2hhciAqdmFsdWUsIHZvaWQgKmNiKQogewotCWlmIChzdGFydHNfd2l0aChrZXksICJicmFuY2guIikpIHsKLQkJY29uc3QgY2hhciAqb3JpZ19rZXkgPSBrZXk7Ci0JCWNoYXIgKm5hbWU7Ci0JCXN0cnVjdCBzdHJpbmdfbGlzdF9pdGVtICppdGVtOwotCQlzdHJ1Y3QgYnJhbmNoX2luZm8gKmluZm87Ci0JCWVudW0geyBSRU1PVEUsIE1FUkdFLCBSRUJBU0UgfSB0eXBlOwotCQlzaXplX3Qga2V5X2xlbjsKKwljb25zdCBjaGFyICpvcmlnX2tleSA9IGtleTsKKwljaGFyICpuYW1lOworCXN0cnVjdCBzdHJpbmdfbGlzdF9pdGVtICppdGVtOworCXN0cnVjdCBicmFuY2hfaW5mbyAqaW5mbzsKKwllbnVtIHsgUkVNT1RFLCBNRVJHRSwgUkVCQVNFLCBQVVNIX1JFTU9URSB9IHR5cGU7CisJc2l6ZV90IGtleV9sZW47CiAKLQkJa2V5ICs9IDc7Ci0JCWlmIChzdHJpcF9zdWZmaXgoa2V5LCAiLnJlbW90ZSIsICZrZXlfbGVuKSkgewotCQkJbmFtZSA9IHhtZW1kdXB6KGtleSwga2V5X2xlbik7Ci0JCQl0eXBlID0gUkVNT1RFOwotCQl9IGVsc2UgaWYgKHN0cmlwX3N1ZmZpeChrZXksICIubWVyZ2UiLCAma2V5X2xlbikpIHsKLQkJCW5hbWUgPSB4bWVtZHVweihrZXksIGtleV9sZW4pOwotCQkJdHlwZSA9IE1FUkdFOwotCQl9IGVsc2UgaWYgKHN0cmlwX3N1ZmZpeChrZXksICIucmViYXNlIiwgJmtleV9sZW4pKSB7Ci0JCQluYW1lID0geG1lbWR1cHooa2V5LCBrZXlfbGVuKTsKLQkJCXR5cGUgPSBSRUJBU0U7Ci0JCX0gZWxzZQotCQkJcmV0dXJuIDA7CisJaWYgKCFzdGFydHNfd2l0aChrZXksICJicmFuY2guIikpCisJCXJldHVybiAwOwogCi0JCWl0ZW0gPSBzdHJpbmdfbGlzdF9pbnNlcnQoJmJyYW5jaF9saXN0LCBuYW1lKTsKKwlrZXkgKz0gc3RybGVuKCJicmFuY2guIik7CisJaWYgKHN0cmlwX3N1ZmZpeChrZXksICIucmVtb3RlIiwgJmtleV9sZW4pKQorCQl0eXBlID0gUkVNT1RFOworCWVsc2UgaWYgKHN0cmlwX3N1ZmZpeChrZXksICIubWVyZ2UiLCAma2V5X2xlbikpCisJCXR5cGUgPSBNRVJHRTsKKwllbHNlIGlmIChzdHJpcF9zdWZmaXgoa2V5LCAiLnJlYmFzZSIsICZrZXlfbGVuKSkKKwkJdHlwZSA9IFJFQkFTRTsKKwllbHNlIGlmIChzdHJpcF9zdWZmaXgoa2V5LCAiLnB1c2hyZW1vdGUiLCAma2V5X2xlbikpCisJCXR5cGUgPSBQVVNIX1JFTU9URTsKKwllbHNlCisJCXJldHVybiAwOworCW5hbWUgPSB4bWVtZHVweihrZXksIGtleV9sZW4pOwogCi0JCWlmICghaXRlbS0+dXRpbCkKLQkJCWl0ZW0tPnV0aWwgPSB4Y2FsbG9jKDEsIHNpemVvZihzdHJ1Y3QgYnJhbmNoX2luZm8pKTsKLQkJaW5mbyA9IGl0ZW0tPnV0aWw7Ci0JCWlmICh0eXBlID09IFJFTU9URSkgewotCQkJaWYgKGluZm8tPnJlbW90ZV9uYW1lKQotCQkJCXdhcm5pbmcoXygibW9yZSB0aGFuIG9uZSAlcyIpLCBvcmlnX2tleSk7Ci0JCQlpbmZvLT5yZW1vdGVfbmFtZSA9IHhzdHJkdXAodmFsdWUpOwotCQl9IGVsc2UgaWYgKHR5cGUgPT0gTUVSR0UpIHsKLQkJCWNoYXIgKnNwYWNlID0gc3RyY2hyKHZhbHVlLCAnICcpOwotCQkJdmFsdWUgPSBhYmJyZXZfYnJhbmNoKHZhbHVlKTsKLQkJCXdoaWxlIChzcGFjZSkgewotCQkJCWNoYXIgKm1lcmdlOwotCQkJCW1lcmdlID0geHN0cm5kdXAodmFsdWUsIHNwYWNlIC0gdmFsdWUpOwotCQkJCXN0cmluZ19saXN0X2FwcGVuZCgmaW5mby0+bWVyZ2UsIG1lcmdlKTsKLQkJCQl2YWx1ZSA9IGFiYnJldl9icmFuY2goc3BhY2UgKyAxKTsKLQkJCQlzcGFjZSA9IHN0cmNocih2YWx1ZSwgJyAnKTsKLQkJCX0KLQkJCXN0cmluZ19saXN0X2FwcGVuZCgmaW5mby0+bWVyZ2UsIHhzdHJkdXAodmFsdWUpKTsKLQkJfSBlbHNlIHsKLQkJCWludCB2ID0gZ2l0X3BhcnNlX21heWJlX2Jvb2wodmFsdWUpOwotCQkJaWYgKHYgPj0gMCkKLQkJCQlpbmZvLT5yZWJhc2UgPSB2OwotCQkJZWxzZSBpZiAoIXN0cmNtcCh2YWx1ZSwgInByZXNlcnZlIikpCi0JCQkJaW5mby0+cmViYXNlID0gTk9STUFMX1JFQkFTRTsKLQkJCWVsc2UgaWYgKCFzdHJjbXAodmFsdWUsICJtZXJnZXMiKSkKLQkJCQlpbmZvLT5yZWJhc2UgPSBSRUJBU0VfTUVSR0VTOwotCQkJZWxzZSBpZiAoIXN0cmNtcCh2YWx1ZSwgImludGVyYWN0aXZlIikpCi0JCQkJaW5mby0+cmViYXNlID0gSU5URVJBQ1RJVkVfUkVCQVNFOworCWl0ZW0gPSBzdHJpbmdfbGlzdF9pbnNlcnQoJmJyYW5jaF9saXN0LCBuYW1lKTsKKworCWlmICghaXRlbS0+dXRpbCkKKwkJaXRlbS0+dXRpbCA9IHhjYWxsb2MoMSwgc2l6ZW9mKHN0cnVjdCBicmFuY2hfaW5mbykpOworCWluZm8gPSBpdGVtLT51dGlsOworCXN3aXRjaCAodHlwZSkgeworCWNhc2UgUkVNT1RFOgorCQlpZiAoaW5mby0+cmVtb3RlX25hbWUpCisJCQl3YXJuaW5nKF8oIm1vcmUgdGhhbiBvbmUgJXMiKSwgb3JpZ19rZXkpOworCQlpbmZvLT5yZW1vdGVfbmFtZSA9IHhzdHJkdXAodmFsdWUpOworCQlicmVhazsKKwljYXNlIE1FUkdFOiB7CisJCWNoYXIgKnNwYWNlID0gc3RyY2hyKHZhbHVlLCAnICcpOworCQl2YWx1ZSA9IGFiYnJldl9icmFuY2godmFsdWUpOworCQl3aGlsZSAoc3BhY2UpIHsKKwkJCWNoYXIgKm1lcmdlOworCQkJbWVyZ2UgPSB4c3RybmR1cCh2YWx1ZSwgc3BhY2UgLSB2YWx1ZSk7CisJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJmluZm8tPm1lcmdlLCBtZXJnZSk7CisJCQl2YWx1ZSA9IGFiYnJldl9icmFuY2goc3BhY2UgKyAxKTsKKwkJCXNwYWNlID0gc3RyY2hyKHZhbHVlLCAnICcpOwogCQl9CisJCXN0cmluZ19saXN0X2FwcGVuZCgmaW5mby0+bWVyZ2UsIHhzdHJkdXAodmFsdWUpKTsKKwkJYnJlYWs7CiAJfQorCWNhc2UgUkVCQVNFOgorCQkvKgorCQkgKiBDb25zaWRlciBpbnZhbGlkIHZhbHVlcyBhcyBmYWxzZSBhbmQgY2hlY2sgdGhlCisJCSAqIHRydXRoIHZhbHVlIHdpdGggPj0gUkVCQVNFX1RSVUUuCisJCSAqLworCQlpbmZvLT5yZWJhc2UgPSByZWJhc2VfcGFyc2VfdmFsdWUodmFsdWUpOworCQlicmVhazsKKwljYXNlIFBVU0hfUkVNT1RFOgorCQlpZiAoaW5mby0+cHVzaF9yZW1vdGVfbmFtZSkKKwkJCXdhcm5pbmcoXygibW9yZSB0aGFuIG9uZSAlcyIpLCBvcmlnX2tleSk7CisJCWluZm8tPnB1c2hfcmVtb3RlX25hbWUgPSB4c3RyZHVwKHZhbHVlKTsKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJQlVHKCJ1bmV4cGVjdGVkIHR5cGU9JWQiLCB0eXBlKTsKKwl9CisKIAlyZXR1cm4gMDsKIH0KIApAQCAtNjA1LDYgKzYxNSw1NiBAQAogCXJldHVybiAwOwogfQogCitzdHJ1Y3QgcHVzaF9kZWZhdWx0X2luZm8KK3sKKwljb25zdCBjaGFyICpvbGRfbmFtZTsKKwllbnVtIGNvbmZpZ19zY29wZSBzY29wZTsKKwlzdHJ1Y3Qgc3RyYnVmIG9yaWdpbjsKKwlpbnQgbGluZW5yOworfTsKKworc3RhdGljIGludCBjb25maWdfcmVhZF9wdXNoX2RlZmF1bHQoY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICp2YWx1ZSwKKwl2b2lkICpjYikKK3sKKwlzdHJ1Y3QgcHVzaF9kZWZhdWx0X2luZm8qIGluZm8gPSBjYjsKKwlpZiAoc3RyY21wKGtleSwgInJlbW90ZS5wdXNoZGVmYXVsdCIpIHx8CisJICAgICF2YWx1ZSB8fCBzdHJjbXAodmFsdWUsIGluZm8tPm9sZF9uYW1lKSkKKwkJcmV0dXJuIDA7CisKKwlpbmZvLT5zY29wZSA9IGN1cnJlbnRfY29uZmlnX3Njb3BlKCk7CisJc3RyYnVmX3Jlc2V0KCZpbmZvLT5vcmlnaW4pOworCXN0cmJ1Zl9hZGRzdHIoJmluZm8tPm9yaWdpbiwgY3VycmVudF9jb25maWdfbmFtZSgpKTsKKwlpbmZvLT5saW5lbnIgPSBjdXJyZW50X2NvbmZpZ19saW5lKCk7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQgaGFuZGxlX3B1c2hfZGVmYXVsdChjb25zdCBjaGFyKiBvbGRfbmFtZSwgY29uc3QgY2hhciogbmV3X25hbWUpCit7CisJc3RydWN0IHB1c2hfZGVmYXVsdF9pbmZvIHB1c2hfZGVmYXVsdCA9IHsKKwkJb2xkX25hbWUsIENPTkZJR19TQ09QRV9VTktOT1dOLCBTVFJCVUZfSU5JVCwgLTEgfTsKKwlnaXRfY29uZmlnKGNvbmZpZ19yZWFkX3B1c2hfZGVmYXVsdCwgJnB1c2hfZGVmYXVsdCk7CisJaWYgKHB1c2hfZGVmYXVsdC5zY29wZSA+PSBDT05GSUdfU0NPUEVfQ09NTUFORCkKKwkJOyAvKiBwYXNzICovCisJZWxzZSBpZiAocHVzaF9kZWZhdWx0LnNjb3BlID49IENPTkZJR19TQ09QRV9MT0NBTCkgeworCQlpbnQgcmVzdWx0ID0gZ2l0X2NvbmZpZ19zZXRfZ2VudGx5KCJyZW1vdGUucHVzaERlZmF1bHQiLAorCQkJCQkJICAgbmV3X25hbWUpOworCQlpZiAobmV3X25hbWUgJiYgcmVzdWx0ICYmIHJlc3VsdCAhPSBDT05GSUdfTk9USElOR19TRVQpCisJCQlkaWUoXygiY291bGQgbm90IHNldCAnJXMnIiksICJyZW1vdGUucHVzaERlZmF1bHQiKTsKKwkJZWxzZSBpZiAoIW5ld19uYW1lICYmIHJlc3VsdCAmJiByZXN1bHQgIT0gQ09ORklHX05PVEhJTkdfU0VUKQorCQkJZGllKF8oImNvdWxkIG5vdCB1bnNldCAnJXMnIiksICJyZW1vdGUucHVzaERlZmF1bHQiKTsKKwl9IGVsc2UgaWYgKHB1c2hfZGVmYXVsdC5zY29wZSA+PSBDT05GSUdfU0NPUEVfU1lTVEVNKSB7CisJCS8qIHdhcm4gKi8KKwkJd2FybmluZyhfKCJUaGUgJXMgY29uZmlndXJhdGlvbiByZW1vdGUucHVzaERlZmF1bHQgaW46XG4iCisJCQkgICJcdCVzOiVkXG4iCisJCQkgICJub3cgbmFtZXMgdGhlIG5vbi1leGlzdGVudCByZW1vdGUgJyVzJyIpLAorCQkJY29uZmlnX3Njb3BlX25hbWUocHVzaF9kZWZhdWx0LnNjb3BlKSwKKwkJCXB1c2hfZGVmYXVsdC5vcmlnaW4uYnVmLCBwdXNoX2RlZmF1bHQubGluZW5yLAorCQkJb2xkX25hbWUpOworCX0KK30KKworCiBzdGF0aWMgaW50IG12KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKIHsKIAlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKQEAgLTY4MCw2ICs3NDAsMTEgQEAKIAkJCXN0cmJ1Zl9hZGRmKCZidWYsICJicmFuY2guJXMucmVtb3RlIiwgaXRlbS0+c3RyaW5nKTsKIAkJCWdpdF9jb25maWdfc2V0KGJ1Zi5idWYsIHJlbmFtZS5uZXdfbmFtZSk7CiAJCX0KKwkJaWYgKGluZm8tPnB1c2hfcmVtb3RlX25hbWUgJiYgIXN0cmNtcChpbmZvLT5wdXNoX3JlbW90ZV9uYW1lLCByZW5hbWUub2xkX25hbWUpKSB7CisJCQlzdHJidWZfcmVzZXQoJmJ1Zik7CisJCQlzdHJidWZfYWRkZigmYnVmLCAiYnJhbmNoLiVzLnB1c2hyZW1vdGUiLCBpdGVtLT5zdHJpbmcpOworCQkJZ2l0X2NvbmZpZ19zZXQoYnVmLmJ1ZiwgcmVuYW1lLm5ld19uYW1lKTsKKwkJfQogCX0KIAogCWlmICghcmVmc3BlY191cGRhdGVkKQpAQCAtNjkzLDkgKzc1OCw4IEBACiAJZm9yIChpID0gMDsgaSA8IHJlbW90ZV9icmFuY2hlcy5ucjsgaSsrKSB7CiAJCXN0cnVjdCBzdHJpbmdfbGlzdF9pdGVtICppdGVtID0gcmVtb3RlX2JyYW5jaGVzLml0ZW1zICsgaTsKIAkJaW50IGZsYWcgPSAwOwotCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAotCQlyZWFkX3JlZl9mdWxsKGl0ZW0tPnN0cmluZywgUkVTT0xWRV9SRUZfUkVBRElORywgJm9pZCwgJmZsYWcpOworCQlyZWFkX3JlZl9mdWxsKGl0ZW0tPnN0cmluZywgUkVTT0xWRV9SRUZfUkVBRElORywgTlVMTCwgJmZsYWcpOwogCQlpZiAoIShmbGFnICYgUkVGX0lTU1lNUkVGKSkKIAkJCWNvbnRpbnVlOwogCQlpZiAoZGVsZXRlX3JlZihOVUxMLCBpdGVtLT5zdHJpbmcsIE5VTEwsIFJFRl9OT19ERVJFRikpCkBAIC03MzYsNiArODAwLDkgQEAKIAkJCWRpZShfKCJjcmVhdGluZyAnJXMnIGZhaWxlZCIpLCBidWYuYnVmKTsKIAl9CiAJc3RyaW5nX2xpc3RfY2xlYXIoJnJlbW90ZV9icmFuY2hlcywgMSk7CisKKwloYW5kbGVfcHVzaF9kZWZhdWx0KHJlbmFtZS5vbGRfbmFtZSwgcmVuYW1lLm5ld19uYW1lKTsKKwogCXJldHVybiAwOwogfQogCkBAIC03ODIsNiArODQ5LDEzIEBACiAJCQkJCWRpZShfKCJjb3VsZCBub3QgdW5zZXQgJyVzJyIpLCBidWYuYnVmKTsKIAkJCX0KIAkJfQorCQlpZiAoaW5mby0+cHVzaF9yZW1vdGVfbmFtZSAmJiAhc3RyY21wKGluZm8tPnB1c2hfcmVtb3RlX25hbWUsIHJlbW90ZS0+bmFtZSkpIHsKKwkJCXN0cmJ1Zl9yZXNldCgmYnVmKTsKKwkJCXN0cmJ1Zl9hZGRmKCZidWYsICJicmFuY2guJXMucHVzaHJlbW90ZSIsIGl0ZW0tPnN0cmluZyk7CisJCQlyZXN1bHQgPSBnaXRfY29uZmlnX3NldF9nZW50bHkoYnVmLmJ1ZiwgTlVMTCk7CisJCQlpZiAocmVzdWx0ICYmIHJlc3VsdCAhPSBDT05GSUdfTk9USElOR19TRVQpCisJCQkJZGllKF8oImNvdWxkIG5vdCB1bnNldCAnJXMnIiksIGJ1Zi5idWYpOworCQl9CiAJfQogCiAJLyoKQEAgLTgxNCw2ICs4ODgsOCBAQAogCQlzdHJidWZfYWRkZigmYnVmLCAicmVtb3RlLiVzIiwgcmVtb3RlLT5uYW1lKTsKIAkJaWYgKGdpdF9jb25maWdfcmVuYW1lX3NlY3Rpb24oYnVmLmJ1ZiwgTlVMTCkgPCAxKQogCQkJcmV0dXJuIGVycm9yKF8oIkNvdWxkIG5vdCByZW1vdmUgY29uZmlnIHNlY3Rpb24gJyVzJyIpLCBidWYuYnVmKTsKKworCQloYW5kbGVfcHVzaF9kZWZhdWx0KHJlbW90ZS0+bmFtZSwgTlVMTCk7CiAJfQogCiAJcmV0dXJuIHJlc3VsdDsKQEAgLTk0NCw3ICsxMDIwLDcgQEAKIAkJcmV0dXJuIDA7CiAJaWYgKChuID0gc3RybGVuKGJyYW5jaF9pdGVtLT5zdHJpbmcpKSA+IHNob3dfaW5mby0+d2lkdGgpCiAJCXNob3dfaW5mby0+d2lkdGggPSBuOwotCWlmIChicmFuY2hfaW5mby0+cmViYXNlKQorCWlmIChicmFuY2hfaW5mby0+cmViYXNlID49IFJFQkFTRV9UUlVFKQogCQlzaG93X2luZm8tPmFueV9yZWJhc2UgPSAxOwogCiAJaXRlbSA9IHN0cmluZ19saXN0X2luc2VydChzaG93X2luZm8tPmxpc3QsIGJyYW5jaF9pdGVtLT5zdHJpbmcpOwpAQCAtOTYxLDE2ICsxMDM3LDE2IEBACiAJaW50IHdpZHRoID0gc2hvd19pbmZvLT53aWR0aCArIDQ7CiAJaW50IGk7CiAKLQlpZiAoYnJhbmNoX2luZm8tPnJlYmFzZSAmJiBicmFuY2hfaW5mby0+bWVyZ2UubnIgPiAxKSB7CisJaWYgKGJyYW5jaF9pbmZvLT5yZWJhc2UgPj0gUkVCQVNFX1RSVUUgJiYgYnJhbmNoX2luZm8tPm1lcmdlLm5yID4gMSkgewogCQllcnJvcihfKCJpbnZhbGlkIGJyYW5jaC4lcy5tZXJnZTsgY2Fubm90IHJlYmFzZSBvbnRvID4gMSBicmFuY2giKSwKIAkJCWl0ZW0tPnN0cmluZyk7CiAJCXJldHVybiAwOwogCX0KIAogCXByaW50ZigiICAgICUtKnMgIiwgc2hvd19pbmZvLT53aWR0aCwgaXRlbS0+c3RyaW5nKTsKLQlpZiAoYnJhbmNoX2luZm8tPnJlYmFzZSkgeworCWlmIChicmFuY2hfaW5mby0+cmViYXNlID49IFJFQkFTRV9UUlVFKSB7CiAJCWNvbnN0IGNoYXIgKm1zZzsKLQkJaWYgKGJyYW5jaF9pbmZvLT5yZWJhc2UgPT0gSU5URVJBQ1RJVkVfUkVCQVNFKQorCQlpZiAoYnJhbmNoX2luZm8tPnJlYmFzZSA9PSBSRUJBU0VfSU5URVJBQ1RJVkUpCiAJCQltc2cgPSBfKCJyZWJhc2VzIGludGVyYWN0aXZlbHkgb250byByZW1vdGUgJXMiKTsKIAkJZWxzZSBpZiAoYnJhbmNoX2luZm8tPnJlYmFzZSA9PSBSRUJBU0VfTUVSR0VTKQogCQkJbXNnID0gXygicmViYXNlcyBpbnRlcmFjdGl2ZWx5ICh3aXRoIG1lcmdlcykgb250byAiCkBAIC0xNDA3LDcgKzE0ODMsNyBAQAogCXJldHVybiByZXR2YWw7CiB9CiAKLXN0YXRpYyBpbnQgcmVtb3ZlX2FsbF9mZXRjaF9yZWZzcGVjcyhjb25zdCBjaGFyICpyZW1vdGUsIGNvbnN0IGNoYXIgKmtleSkKK3N0YXRpYyBpbnQgcmVtb3ZlX2FsbF9mZXRjaF9yZWZzcGVjcyhjb25zdCBjaGFyICprZXkpCiB7CiAJcmV0dXJuIGdpdF9jb25maWdfc2V0X211bHRpdmFyX2dlbnRseShrZXksIE5VTEwsIE5VTEwsIDEpOwogfQpAQCAtMTQzNyw3ICsxNTEzLDcgQEAKIAlpZiAoIXJlbW90ZV9pc19jb25maWd1cmVkKHJlbW90ZSwgMSkpCiAJCWRpZShfKCJObyBzdWNoIHJlbW90ZSAnJXMnIiksIHJlbW90ZW5hbWUpOwogCi0JaWYgKCFhZGRfbW9kZSAmJiByZW1vdmVfYWxsX2ZldGNoX3JlZnNwZWNzKHJlbW90ZW5hbWUsIGtleS5idWYpKSB7CisJaWYgKCFhZGRfbW9kZSAmJiByZW1vdmVfYWxsX2ZldGNoX3JlZnNwZWNzKGtleS5idWYpKSB7CiAJCXN0cmJ1Zl9yZWxlYXNlKCZrZXkpOwogCQlyZXR1cm4gMTsKIAl9CmRpZmYgLS1naXQgYS9idWlsdGluL3JlcGFjay5jIGIvYnVpbHRpbi9yZXBhY2suYwppbmRleCA0NTU4MzY4Li4wNzgxNzYzIDEwMDY0NAotLS0gYS9idWlsdGluL3JlcGFjay5jCisrKyBiL2J1aWx0aW4vcmVwYWNrLmMKQEAgLTExLDEwICsxMSwxMSBAQAogI2luY2x1ZGUgIm1pZHguaCIKICNpbmNsdWRlICJwYWNrZmlsZS5oIgogI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgorI2luY2x1ZGUgInByb21pc29yLXJlbW90ZS5oIgogCiBzdGF0aWMgaW50IGRlbHRhX2Jhc2Vfb2Zmc2V0ID0gMTsKIHN0YXRpYyBpbnQgcGFja19rZXB0X29iamVjdHMgPSAtMTsKLXN0YXRpYyBpbnQgd3JpdGVfYml0bWFwczsKK3N0YXRpYyBpbnQgd3JpdGVfYml0bWFwcyA9IC0xOwogc3RhdGljIGludCB1c2VfZGVsdGFfaXNsYW5kczsKIHN0YXRpYyBjaGFyICpwYWNrZGlyLCAqcGFja3RtcDsKIApAQCAtMTI5LDE5ICsxMzAsOSBAQAogCiBzdGF0aWMgdm9pZCByZW1vdmVfcmVkdW5kYW50X3BhY2soY29uc3QgY2hhciAqZGlyX25hbWUsIGNvbnN0IGNoYXIgKmJhc2VfbmFtZSkKIHsKLQljb25zdCBjaGFyICpleHRzW10gPSB7Ii5wYWNrIiwgIi5pZHgiLCAiLmtlZXAiLCAiLmJpdG1hcCIsICIucHJvbWlzb3IifTsKLQlpbnQgaTsKIAlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwotCXNpemVfdCBwbGVuOwotCi0Jc3RyYnVmX2FkZGYoJmJ1ZiwgIiVzLyVzIiwgZGlyX25hbWUsIGJhc2VfbmFtZSk7Ci0JcGxlbiA9IGJ1Zi5sZW47Ci0KLQlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShleHRzKTsgaSsrKSB7Ci0JCXN0cmJ1Zl9zZXRsZW4oJmJ1ZiwgcGxlbik7Ci0JCXN0cmJ1Zl9hZGRzdHIoJmJ1ZiwgZXh0c1tpXSk7Ci0JCXVubGluayhidWYuYnVmKTsKLQl9CisJc3RyYnVmX2FkZGYoJmJ1ZiwgIiVzLyVzLnBhY2siLCBkaXJfbmFtZSwgYmFzZV9uYW1lKTsKKwl1bmxpbmtfcGFja19wYXRoKGJ1Zi5idWYsIDEpOwogCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOwogfQogCkBAIC0xOTcsMTAgKzE4OCwxMCBAQAogCiAJaWYgKGNtZC0+aW4gPT0gLTEpIHsKIAkJaWYgKHN0YXJ0X2NvbW1hbmQoY21kKSkKLQkJCWRpZSgiQ291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIpOworCQkJZGllKF8oImNvdWxkIG5vdCBzdGFydCBwYWNrLW9iamVjdHMgdG8gcmVwYWNrIHByb21pc29yIG9iamVjdHMiKSk7CiAJfQogCi0JeHdyaXRlKGNtZC0+aW4sIG9pZF90b19oZXgob2lkKSwgR0lUX1NIQTFfSEVYU1opOworCXh3cml0ZShjbWQtPmluLCBvaWRfdG9faGV4KG9pZCksIHRoZV9oYXNoX2FsZ28tPmhleHN6KTsKIAl4d3JpdGUoY21kLT5pbiwgIlxuIiwgMSk7CiAJcmV0dXJuIDA7CiB9CkBAIC0yMzYsMjQgKzIyNywzMSBAQAogCQljaGFyICpwcm9taXNvcl9uYW1lOwogCQlpbnQgZmQ7CiAJCWlmIChsaW5lLmxlbiAhPSB0aGVfaGFzaF9hbGdvLT5oZXhzeikKLQkJCWRpZSgicmVwYWNrOiBFeHBlY3RpbmcgZnVsbCBoZXggb2JqZWN0IElEIGxpbmVzIG9ubHkgZnJvbSBwYWNrLW9iamVjdHMuIik7CisJCQlkaWUoXygicmVwYWNrOiBFeHBlY3RpbmcgZnVsbCBoZXggb2JqZWN0IElEIGxpbmVzIG9ubHkgZnJvbSBwYWNrLW9iamVjdHMuIikpOwogCQlzdHJpbmdfbGlzdF9hcHBlbmQobmFtZXMsIGxpbmUuYnVmKTsKIAogCQkvKgogCQkgKiBwYWNrLW9iamVjdHMgY3JlYXRlcyB0aGUgLnBhY2sgYW5kIC5pZHggZmlsZXMsIGJ1dCBub3QgdGhlCiAJCSAqIC5wcm9taXNvciBmaWxlLiBDcmVhdGUgdGhlIC5wcm9taXNvciBmaWxlLCB3aGljaCBpcyBlbXB0eS4KKwkJICoKKwkJICogTkVFRFNXT1JLOiBmZXRjaC1wYWNrIHNvbWV0aW1lcyBnZW5lcmF0ZXMgbm9uLWVtcHR5CisJCSAqIC5wcm9taXNvciBmaWxlcyBjb250YWluaW5nIHRoZSByZWYgbmFtZXMgYW5kIGFzc29jaWF0ZWQKKwkJICogaGFzaGVzIGF0IHRoZSBwb2ludCBvZiBnZW5lcmF0aW9uIG9mIHRoZSBjb3JyZXNwb25kaW5nCisJCSAqIHBhY2tmaWxlLCBidXQgdGhpcyB3b3VsZCBub3QgcHJlc2VydmUgdGhlaXIgY29udGVudHMuIE1heWJlCisJCSAqIGNvbmNhdGVuYXRlIHRoZSBjb250ZW50cyBvZiBhbGwgLnByb21pc29yIGZpbGVzIGluc3RlYWQgb2YKKwkJICoganVzdCBjcmVhdGluZyBhIG5ldyBlbXB0eSBmaWxlLgogCQkgKi8KIAkJcHJvbWlzb3JfbmFtZSA9IG1rcGF0aGR1cCgiJXMtJXMucHJvbWlzb3IiLCBwYWNrdG1wLAogCQkJCQkgIGxpbmUuYnVmKTsKIAkJZmQgPSBvcGVuKHByb21pc29yX25hbWUsIE9fQ1JFQVR8T19FWENMfE9fV1JPTkxZLCAwNjAwKTsKIAkJaWYgKGZkIDwgMCkKLQkJCWRpZV9lcnJubygidW5hYmxlIHRvIGNyZWF0ZSAnJXMnIiwgcHJvbWlzb3JfbmFtZSk7CisJCQlkaWVfZXJybm8oXygidW5hYmxlIHRvIGNyZWF0ZSAnJXMnIiksIHByb21pc29yX25hbWUpOwogCQljbG9zZShmZCk7CiAJCWZyZWUocHJvbWlzb3JfbmFtZSk7CiAJfQogCWZjbG9zZShvdXQpOwogCWlmIChmaW5pc2hfY29tbWFuZCgmY21kKSkKLQkJZGllKCJDb3VsZCBub3QgZmluaXNoIHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIpOworCQlkaWUoXygiY291bGQgbm90IGZpbmlzaCBwYWNrLW9iamVjdHMgdG8gcmVwYWNrIHByb21pc29yIG9iamVjdHMiKSk7CiB9CiAKICNkZWZpbmUgQUxMX0lOVE9fT05FIDEKQEAgLTM0Myw4ICszNDEsMTMgQEAKIAkgICAgKHVucGFja191bnJlYWNoYWJsZSB8fCAocGFja19ldmVyeXRoaW5nICYgTE9PU0VOX1VOUkVBQ0hBQkxFKSkpCiAJCWRpZShfKCItLWtlZXAtdW5yZWFjaGFibGUgYW5kIC1BIGFyZSBpbmNvbXBhdGlibGUiKSk7CiAKKwlpZiAod3JpdGVfYml0bWFwcyA8IDApIHsKKwkJaWYgKCEocGFja19ldmVyeXRoaW5nICYgQUxMX0lOVE9fT05FKSB8fAorCQkgICAgIWlzX2JhcmVfcmVwb3NpdG9yeSgpKQorCQkJd3JpdGVfYml0bWFwcyA9IDA7CisJfQogCWlmIChwYWNrX2tlcHRfb2JqZWN0cyA8IDApCi0JCXBhY2tfa2VwdF9vYmplY3RzID0gd3JpdGVfYml0bWFwczsKKwkJcGFja19rZXB0X29iamVjdHMgPSB3cml0ZV9iaXRtYXBzID4gMDsKIAogCWlmICh3cml0ZV9iaXRtYXBzICYmICEocGFja19ldmVyeXRoaW5nICYgQUxMX0lOVE9fT05FKSkKIAkJZGllKF8oaW5jcmVtZW50YWxfYml0bWFwX2NvbmZsaWN0X2Vycm9yKSk7CkBAIC0zNjYsMTAgKzM2OSwxMiBAQAogCWFyZ3ZfYXJyYXlfcHVzaCgmY21kLmFyZ3MsICItLWFsbCIpOwogCWFyZ3ZfYXJyYXlfcHVzaCgmY21kLmFyZ3MsICItLXJlZmxvZyIpOwogCWFyZ3ZfYXJyYXlfcHVzaCgmY21kLmFyZ3MsICItLWluZGV4ZWQtb2JqZWN0cyIpOwotCWlmIChyZXBvc2l0b3J5X2Zvcm1hdF9wYXJ0aWFsX2Nsb25lKQorCWlmIChoYXNfcHJvbWlzb3JfcmVtb3RlKCkpCiAJCWFyZ3ZfYXJyYXlfcHVzaCgmY21kLmFyZ3MsICItLWV4Y2x1ZGUtcHJvbWlzb3Itb2JqZWN0cyIpOwotCWlmICh3cml0ZV9iaXRtYXBzKQorCWlmICh3cml0ZV9iaXRtYXBzID4gMCkKIAkJYXJndl9hcnJheV9wdXNoKCZjbWQuYXJncywgIi0td3JpdGUtYml0bWFwLWluZGV4Iik7CisJZWxzZSBpZiAod3JpdGVfYml0bWFwcyA8IDApCisJCWFyZ3ZfYXJyYXlfcHVzaCgmY21kLmFyZ3MsICItLXdyaXRlLWJpdG1hcC1pbmRleC1xdWlldCIpOwogCWlmICh1c2VfZGVsdGFfaXNsYW5kcykKIAkJYXJndl9hcnJheV9wdXNoKCZjbWQuYXJncywgIi0tZGVsdGEtaXNsYW5kcyIpOwogCkBAIC00MDgsNyArNDEzLDcgQEAKIAlvdXQgPSB4ZmRvcGVuKGNtZC5vdXQsICJyIik7CiAJd2hpbGUgKHN0cmJ1Zl9nZXRsaW5lX2xmKCZsaW5lLCBvdXQpICE9IEVPRikgewogCQlpZiAobGluZS5sZW4gIT0gdGhlX2hhc2hfYWxnby0+aGV4c3opCi0JCQlkaWUoInJlcGFjazogRXhwZWN0aW5nIGZ1bGwgaGV4IG9iamVjdCBJRCBsaW5lcyBvbmx5IGZyb20gcGFjay1vYmplY3RzLiIpOworCQkJZGllKF8oInJlcGFjazogRXhwZWN0aW5nIGZ1bGwgaGV4IG9iamVjdCBJRCBsaW5lcyBvbmx5IGZyb20gcGFjay1vYmplY3RzLiIpKTsKIAkJc3RyaW5nX2xpc3RfYXBwZW5kKCZuYW1lcywgbGluZS5idWYpOwogCX0KIAlmY2xvc2Uob3V0KTsKQEAgLTQxNyw3ICs0MjIsOSBAQAogCQlyZXR1cm4gcmV0OwogCiAJaWYgKCFuYW1lcy5uciAmJiAhcG9fYXJncy5xdWlldCkKLQkJcHJpbnRmKCJOb3RoaW5nIG5ldyB0byBwYWNrLlxuIik7CisJCXByaW50Zl9sbihfKCJOb3RoaW5nIG5ldyB0byBwYWNrLiIpKTsKKworCWNsb3NlX29iamVjdF9zdG9yZSh0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cyk7CiAKIAkvKgogCSAqIE9rIHdlIGhhdmUgcHJlcGFyZWQgYWxsIG5ldyBwYWNrZmlsZXMuCkBAIC00NzYsMTMgKzQ4MywxMyBAQAogCQlpZiAocm9sbGJhY2tfZmFpbHVyZS5ucikgewogCQkJaW50IGk7CiAJCQlmcHJpbnRmKHN0ZGVyciwKLQkJCQkiV0FSTklORzogU29tZSBwYWNrcyBpbiB1c2UgaGF2ZSBiZWVuIHJlbmFtZWQgYnlcbiIKLQkJCQkiV0FSTklORzogcHJlZml4aW5nIG9sZC0gdG8gdGhlaXIgbmFtZSwgaW4gb3JkZXIgdG9cbiIKLQkJCQkiV0FSTklORzogcmVwbGFjZSB0aGVtIHdpdGggdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZVxuIgotCQkJCSJXQVJOSU5HOiBmaWxlLiAgQnV0IHRoZSBvcGVyYXRpb24gZmFpbGVkLCBhbmQgdGhlXG4iCi0JCQkJIldBUk5JTkc6IGF0dGVtcHQgdG8gcmVuYW1lIHRoZW0gYmFjayB0byB0aGVpclxuIgotCQkJCSJXQVJOSU5HOiBvcmlnaW5hbCBuYW1lcyBhbHNvIGZhaWxlZC5cbiIKLQkJCQkiV0FSTklORzogUGxlYXNlIHJlbmFtZSB0aGVtIGluICVzIG1hbnVhbGx5OlxuIiwgcGFja2Rpcik7CisJCQkJXygiV0FSTklORzogU29tZSBwYWNrcyBpbiB1c2UgaGF2ZSBiZWVuIHJlbmFtZWQgYnlcbiIKKwkJCQkgICJXQVJOSU5HOiBwcmVmaXhpbmcgb2xkLSB0byB0aGVpciBuYW1lLCBpbiBvcmRlciB0b1xuIgorCQkJCSAgIldBUk5JTkc6IHJlcGxhY2UgdGhlbSB3aXRoIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGVcbiIKKwkJCQkgICJXQVJOSU5HOiBmaWxlLiAgQnV0IHRoZSBvcGVyYXRpb24gZmFpbGVkLCBhbmQgdGhlXG4iCisJCQkJICAiV0FSTklORzogYXR0ZW1wdCB0byByZW5hbWUgdGhlbSBiYWNrIHRvIHRoZWlyXG4iCisJCQkJICAiV0FSTklORzogb3JpZ2luYWwgbmFtZXMgYWxzbyBmYWlsZWQuXG4iCisJCQkJICAiV0FSTklORzogUGxlYXNlIHJlbmFtZSB0aGVtIGluICVzIG1hbnVhbGx5OlxuIiksIHBhY2tkaXIpOwogCQkJZm9yIChpID0gMDsgaSA8IHJvbGxiYWNrX2ZhaWx1cmUubnI7IGkrKykKIAkJCQlmcHJpbnRmKHN0ZGVyciwgIldBUk5JTkc6ICAgb2xkLSVzIC0+ICVzXG4iLAogCQkJCQlyb2xsYmFja19mYWlsdXJlLml0ZW1zW2ldLnN0cmluZywKQEAgLTU2Miw3ICs1NjksNyBAQAogCXJlbW92ZV90ZW1wb3JhcnlfZmlsZXMoKTsKIAogCWlmIChnaXRfZW52X2Jvb2woR0lUX1RFU1RfTVVMVElfUEFDS19JTkRFWCwgMCkpCi0JCXdyaXRlX21pZHhfZmlsZShnZXRfb2JqZWN0X2RpcmVjdG9yeSgpKTsKKwkJd3JpdGVfbWlkeF9maWxlKGdldF9vYmplY3RfZGlyZWN0b3J5KCksIDApOwogCiAJc3RyaW5nX2xpc3RfY2xlYXIoJm5hbWVzLCAwKTsKIAlzdHJpbmdfbGlzdF9jbGVhcigmcm9sbGJhY2ssIDApOwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9yZXBsYWNlLmMgYi9idWlsdGluL3JlcGxhY2UuYwppbmRleCBhZmZjZGZiLi5iMzZkMTdhIDEwMDY0NAotLS0gYS9idWlsdGluL3JlcGxhY2UuYworKysgYi9idWlsdGluL3JlcGxhY2UuYwpAQCAtODIsNiArODIsMTAgQEAKIAkJZGF0YS5mb3JtYXQgPSBSRVBMQUNFX0ZPUk1BVF9NRURJVU07CiAJZWxzZSBpZiAoIXN0cmNtcChmb3JtYXQsICJsb25nIikpCiAJCWRhdGEuZm9ybWF0ID0gUkVQTEFDRV9GT1JNQVRfTE9ORzsKKwkvKgorCSAqIFBsZWFzZSB1cGRhdGUgX2dpdF9yZXBsYWNlKCkgaW4gZ2l0LWNvbXBsZXRpb24uYmFzaCB3aGVuCisJICogeW91IGFkZCBuZXcgZm9ybWF0CisJICovCiAJZWxzZQogCQlyZXR1cm4gZXJyb3IoXygiaW52YWxpZCByZXBsYWNlIGZvcm1hdCAnJXMnXG4iCiAJCQkgICAgICAgInZhbGlkIGZvcm1hdHMgYXJlICdzaG9ydCcsICdtZWRpdW0nIGFuZCAnbG9uZyciKSwKQEAgLTI2OCw3ICsyNzIsNyBAQAogCQkJcmV0dXJuIGVycm9yKF8oInVuYWJsZSB0byBzcGF3biBta3RyZWUiKSk7CiAJCX0KIAotCQlpZiAoc3RyYnVmX3JlYWQoJnJlc3VsdCwgY21kLm91dCwgNDEpIDwgMCkgeworCQlpZiAoc3RyYnVmX3JlYWQoJnJlc3VsdCwgY21kLm91dCwgdGhlX2hhc2hfYWxnby0+aGV4c3ogKyAxKSA8IDApIHsKIAkJCWVycm9yX2Vycm5vKF8oInVuYWJsZSB0byByZWFkIGZyb20gbWt0cmVlIikpOwogCQkJY2xvc2UoZmQpOwogCQkJY2xvc2UoY21kLm91dCk7CkBAIC0yOTUsNyArMjk5LDcgQEAKIAkJCWNsb3NlKGZkKTsKIAkJCXJldHVybiAtMTsKIAkJfQotCQlpZiAoaW5kZXhfZmQoJnRoZV9pbmRleCwgb2lkLCBmZCwgJnN0LCB0eXBlLCBOVUxMLCBmbGFncykgPCAwKQorCQlpZiAoaW5kZXhfZmQodGhlX3JlcG9zaXRvcnktPmluZGV4LCBvaWQsIGZkLCAmc3QsIHR5cGUsIE5VTEwsIGZsYWdzKSA8IDApCiAJCQlyZXR1cm4gZXJyb3IoXygidW5hYmxlIHRvIHdyaXRlIG9iamVjdCB0byBkYXRhYmFzZSIpKTsKIAkJLyogaW5kZXhfZmQgY2xvc2UoKXMgZmQgZm9yIHVzICovCiAJfQpAQCAtMzU0LDI4ICszNTgsMzIgQEAKIAlzdHJ1Y3Qgc3RyYnVmIG5ld19wYXJlbnRzID0gU1RSQlVGX0lOSVQ7CiAJY29uc3QgY2hhciAqcGFyZW50X3N0YXJ0LCAqcGFyZW50X2VuZDsKIAlpbnQgaTsKKwljb25zdCB1bnNpZ25lZCBoZXhzeiA9IHRoZV9oYXNoX2FsZ28tPmhleHN6OwogCiAJLyogZmluZCBleGlzdGluZyBwYXJlbnRzICovCiAJcGFyZW50X3N0YXJ0ID0gYnVmLT5idWY7Ci0JcGFyZW50X3N0YXJ0ICs9IEdJVF9TSEExX0hFWFNaICsgNjsgLyogInRyZWUgIiArICJoZXggc2hhMSIgKyAiXG4iICovCisJcGFyZW50X3N0YXJ0ICs9IGhleHN6ICsgNjsgLyogInRyZWUgIiArICJoZXggc2hhMSIgKyAiXG4iICovCiAJcGFyZW50X2VuZCA9IHBhcmVudF9zdGFydDsKIAogCXdoaWxlIChzdGFydHNfd2l0aChwYXJlbnRfZW5kLCAicGFyZW50ICIpKQotCQlwYXJlbnRfZW5kICs9IDQ4OyAvKiAicGFyZW50ICIgKyAiaGV4IHNoYTEiICsgIlxuIiAqLworCQlwYXJlbnRfZW5kICs9IGhleHN6ICsgODsgLyogInBhcmVudCAiICsgImhleCBzaGExIiArICJcbiIgKi8KIAogCS8qIHByZXBhcmUgbmV3IHBhcmVudHMgKi8KIAlmb3IgKGkgPSAwOyBpIDwgYXJnYzsgaSsrKSB7CiAJCXN0cnVjdCBvYmplY3RfaWQgb2lkOworCQlzdHJ1Y3QgY29tbWl0ICpjb21taXQ7CisKIAkJaWYgKGdldF9vaWQoYXJndltpXSwgJm9pZCkgPCAwKSB7CiAJCQlzdHJidWZfcmVsZWFzZSgmbmV3X3BhcmVudHMpOwogCQkJcmV0dXJuIGVycm9yKF8oIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnIiksCiAJCQkJICAgICBhcmd2W2ldKTsKIAkJfQotCQlpZiAoIWxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHRoZV9yZXBvc2l0b3J5LCAmb2lkKSkgeworCQljb21taXQgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZSh0aGVfcmVwb3NpdG9yeSwgJm9pZCk7CisJCWlmICghY29tbWl0KSB7CiAJCQlzdHJidWZfcmVsZWFzZSgmbmV3X3BhcmVudHMpOwotCQkJcmV0dXJuIGVycm9yKF8oImNvdWxkIG5vdCBwYXJzZSAlcyIpLCBhcmd2W2ldKTsKKwkJCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3QgcGFyc2UgJXMgYXMgYSBjb21taXQiKSwgYXJndltpXSk7CiAJCX0KLQkJc3RyYnVmX2FkZGYoJm5ld19wYXJlbnRzLCAicGFyZW50ICVzXG4iLCBvaWRfdG9faGV4KCZvaWQpKTsKKwkJc3RyYnVmX2FkZGYoJm5ld19wYXJlbnRzLCAicGFyZW50ICVzXG4iLCBvaWRfdG9faGV4KCZjb21taXQtPm9iamVjdC5vaWQpKTsKIAl9CiAKIAkvKiByZXBsYWNlIGV4aXN0aW5nIHBhcmVudHMgd2l0aCBuZXcgb25lcyAqLwpAQCAtNDAxLDcgKzQwOSw4IEBACiAJc3RydWN0IHRhZyAqdGFnOwogCWludCBpOwogCi0JaGFzaF9vYmplY3RfZmlsZShleHRyYS0+dmFsdWUsIGV4dHJhLT5sZW4sIHR5cGVfbmFtZShPQkpfVEFHKSwgJnRhZ19vaWQpOworCWhhc2hfb2JqZWN0X2ZpbGUodGhlX2hhc2hfYWxnbywgZXh0cmEtPnZhbHVlLCBleHRyYS0+bGVuLAorCQkJIHR5cGVfbmFtZShPQkpfVEFHKSwgJnRhZ19vaWQpOwogCXRhZyA9IGxvb2t1cF90YWcodGhlX3JlcG9zaXRvcnksICZ0YWdfb2lkKTsKIAlpZiAoIXRhZykKIAkJcmV0dXJuIGVycm9yKF8oImJhZCBtZXJnZXRhZyBpbiBjb21taXQgJyVzJyIpLCByZWYpOwpAQCAtNDE0LDcgKzQyMyw3IEBACiAJCWlmIChnZXRfb2lkKG1lcmdldGFnX2RhdGEtPmFyZ3ZbaV0sICZvaWQpIDwgMCkKIAkJCXJldHVybiBlcnJvcihfKCJub3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJyVzJyIpLAogCQkJCSAgICAgbWVyZ2V0YWdfZGF0YS0+YXJndltpXSk7Ci0JCWlmIChvaWRlcSgmdGFnLT50YWdnZWQtPm9pZCwgJm9pZCkpCisJCWlmIChvaWRlcShnZXRfdGFnZ2VkX29pZCh0YWcpLCAmb2lkKSkKIAkJCXJldHVybiAwOyAvKiBmb3VuZCAqLwogCX0KIApAQCAtNDc0LDE1ICs0ODMsMTggQEAKIAogCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOwogCi0JaWYgKG9pZGVxKCZvbGRfb2lkLCAmbmV3X29pZCkpIHsKKwlpZiAob2lkZXEoJmNvbW1pdC0+b2JqZWN0Lm9pZCwgJm5ld19vaWQpKSB7CiAJCWlmIChnZW50bGUpIHsKLQkJCXdhcm5pbmcoXygiZ3JhZnQgZm9yICclcycgdW5uZWNlc3NhcnkiKSwgb2lkX3RvX2hleCgmb2xkX29pZCkpOworCQkJd2FybmluZyhfKCJncmFmdCBmb3IgJyVzJyB1bm5lY2Vzc2FyeSIpLAorCQkJCW9pZF90b19oZXgoJmNvbW1pdC0+b2JqZWN0Lm9pZCkpOwogCQkJcmV0dXJuIDA7CiAJCX0KLQkJcmV0dXJuIGVycm9yKF8oIm5ldyBjb21taXQgaXMgdGhlIHNhbWUgYXMgdGhlIG9sZCBvbmU6ICclcyciKSwgb2lkX3RvX2hleCgmb2xkX29pZCkpOworCQlyZXR1cm4gZXJyb3IoXygibmV3IGNvbW1pdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIpLAorCQkJICAgICBvaWRfdG9faGV4KCZjb21taXQtPm9iamVjdC5vaWQpKTsKIAl9CiAKLQlyZXR1cm4gcmVwbGFjZV9vYmplY3Rfb2lkKG9sZF9yZWYsICZvbGRfb2lkLCAicmVwbGFjZW1lbnQiLCAmbmV3X29pZCwgZm9yY2UpOworCXJldHVybiByZXBsYWNlX29iamVjdF9vaWQob2xkX3JlZiwgJmNvbW1pdC0+b2JqZWN0Lm9pZCwKKwkJCQkgICJyZXBsYWNlbWVudCIsICZuZXdfb2lkLCBmb3JjZSk7CiB9CiAKIHN0YXRpYyBpbnQgY29udmVydF9ncmFmdF9maWxlKGludCBmb3JjZSkKZGlmZiAtLWdpdCBhL2J1aWx0aW4vcmVyZXJlLmMgYi9idWlsdGluL3JlcmVyZS5jCmluZGV4IGQ3OGVlYWUuLmZkM2JlMTcgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vcmVyZXJlLmMKKysrIGIvYnVpbHRpbi9yZXJlcmUuYwpAQCAtODMsMTEgKzgzLDEyIEBACiAJfQogCiAJaWYgKCFzdHJjbXAoYXJndlswXSwgImNsZWFyIikpIHsKLQkJcmVyZXJlX2NsZWFyKCZtZXJnZV9ycik7CisJCXJlcmVyZV9jbGVhcih0aGVfcmVwb3NpdG9yeSwgJm1lcmdlX3JyKTsKIAl9IGVsc2UgaWYgKCFzdHJjbXAoYXJndlswXSwgImdjIikpCi0JCXJlcmVyZV9nYygmbWVyZ2VfcnIpOworCQlyZXJlcmVfZ2ModGhlX3JlcG9zaXRvcnksICZtZXJnZV9ycik7CiAJZWxzZSBpZiAoIXN0cmNtcChhcmd2WzBdLCAic3RhdHVzIikpIHsKLQkJaWYgKHNldHVwX3JlcmVyZSgmbWVyZ2VfcnIsIGZsYWdzIHwgUkVSRVJFX1JFQURPTkxZKSA8IDApCisJCWlmIChzZXR1cF9yZXJlcmUodGhlX3JlcG9zaXRvcnksICZtZXJnZV9yciwKKwkJCQkgZmxhZ3MgfCBSRVJFUkVfUkVBRE9OTFkpIDwgMCkKIAkJCXJldHVybiAwOwogCQlmb3IgKGkgPSAwOyBpIDwgbWVyZ2VfcnIubnI7IGkrKykKIAkJCXByaW50ZigiJXNcbiIsIG1lcmdlX3JyLml0ZW1zW2ldLnN0cmluZyk7CkBAIC0xMDIsNyArMTAzLDggQEAKIAkJCQltZXJnZV9yci5pdGVtc1tpXS51dGlsID0gTlVMTDsKIAkJfQogCX0gZWxzZSBpZiAoIXN0cmNtcChhcmd2WzBdLCAiZGlmZiIpKSB7Ci0JCWlmIChzZXR1cF9yZXJlcmUoJm1lcmdlX3JyLCBmbGFncyB8IFJFUkVSRV9SRUFET05MWSkgPCAwKQorCQlpZiAoc2V0dXBfcmVyZXJlKHRoZV9yZXBvc2l0b3J5LCAmbWVyZ2VfcnIsCisJCQkJIGZsYWdzIHwgUkVSRVJFX1JFQURPTkxZKSA8IDApCiAJCQlyZXR1cm4gMDsKIAkJZm9yIChpID0gMDsgaSA8IG1lcmdlX3JyLm5yOyBpKyspIHsKIAkJCWNvbnN0IGNoYXIgKnBhdGggPSBtZXJnZV9yci5pdGVtc1tpXS5zdHJpbmc7CmRpZmYgLS1naXQgYS9idWlsdGluL3Jlc2V0LmMgYi9idWlsdGluL3Jlc2V0LmMKaW5kZXggNTgxNjY5Ni4uMTgyMjhjMyAxMDA2NDQKLS0tIGEvYnVpbHRpbi9yZXNldC5jCisrKyBiL2J1aWx0aW4vcmVzZXQuYwpAQCAtNyw2ICs3LDcgQEAKICAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDUsIDIwMDYgTGludXMgVG9ydmFsZHMgYW5kIEp1bmlvIEMgSGFtYW5vCiAgKi8KKyNkZWZpbmUgVVNFX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImJ1aWx0aW4uaCIKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJsb2NrZmlsZS5oIgpAQCAtMjksOCArMzAsOSBAQAogCiBzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGdpdF9yZXNldF91c2FnZVtdID0gewogCU5fKCJnaXQgcmVzZXQgWy0tbWl4ZWQgfCAtLXNvZnQgfCAtLWhhcmQgfCAtLW1lcmdlIHwgLS1rZWVwXSBbLXFdIFs8Y29tbWl0Pl0iKSwKLQlOXygiZ2l0IHJlc2V0IFstcV0gWzx0cmVlLWlzaD5dIFstLV0gPHBhdGhzPi4uLiIpLAotCU5fKCJnaXQgcmVzZXQgLS1wYXRjaCBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzPi4uLl0iKSwKKwlOXygiZ2l0IHJlc2V0IFstcV0gWzx0cmVlLWlzaD5dIFstLV0gPHBhdGhzcGVjPi4uLiIpLAorCU5fKCJnaXQgcmVzZXQgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGUgWy0tcGF0aHNwZWMtZmlsZS1udWxdXSBbPHRyZWUtaXNoPl0iKSwKKwlOXygiZ2l0IHJlc2V0IC0tcGF0Y2ggWzx0cmVlLWlzaD5dIFstLV0gWzxwYXRoc3BlYz4uLi5dIiksCiAJTlVMTAogfTsKIApAQCAtNzgsMTMgKzgwLDEzIEBACiAJCXN0cnVjdCBvYmplY3RfaWQgaGVhZF9vaWQ7CiAJCWlmIChnZXRfb2lkKCJIRUFEIiwgJmhlYWRfb2lkKSkKIAkJCXJldHVybiBlcnJvcihfKCJZb3UgZG8gbm90IGhhdmUgYSB2YWxpZCBIRUFELiIpKTsKLQkJaWYgKCFmaWxsX3RyZWVfZGVzY3JpcHRvcihkZXNjICsgbnIsICZoZWFkX29pZCkpCisJCWlmICghZmlsbF90cmVlX2Rlc2NyaXB0b3IodGhlX3JlcG9zaXRvcnksIGRlc2MgKyBuciwgJmhlYWRfb2lkKSkKIAkJCXJldHVybiBlcnJvcihfKCJGYWlsZWQgdG8gZmluZCB0cmVlIG9mIEhFQUQuIikpOwogCQlucisrOwogCQlvcHRzLmZuID0gdHdvd2F5X21lcmdlOwogCX0KIAotCWlmICghZmlsbF90cmVlX2Rlc2NyaXB0b3IoZGVzYyArIG5yLCBvaWQpKSB7CisJaWYgKCFmaWxsX3RyZWVfZGVzY3JpcHRvcih0aGVfcmVwb3NpdG9yeSwgZGVzYyArIG5yLCBvaWQpKSB7CiAJCWVycm9yKF8oIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgJXMuIiksIG9pZF90b19oZXgob2lkKSk7CiAJCWdvdG8gb3V0OwogCX0KQEAgLTk1LDcgKzk3LDcgQEAKIAogCWlmIChyZXNldF90eXBlID09IE1JWEVEIHx8IHJlc2V0X3R5cGUgPT0gSEFSRCkgewogCQl0cmVlID0gcGFyc2VfdHJlZV9pbmRpcmVjdChvaWQpOwotCQlwcmltZV9jYWNoZV90cmVlKCZ0aGVfaW5kZXgsIHRyZWUpOworCQlwcmltZV9jYWNoZV90cmVlKHRoZV9yZXBvc2l0b3J5LCB0aGVfcmVwb3NpdG9yeS0+aW5kZXgsIHRyZWUpOwogCX0KIAogCXJldCA9IDA7CkBAIC0yODMsOCArMjg1LDggQEAKIGludCBjbWRfcmVzZXQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCiB7CiAJaW50IHJlc2V0X3R5cGUgPSBOT05FLCB1cGRhdGVfcmVmX3N0YXR1cyA9IDAsIHF1aWV0ID0gMDsKLQlpbnQgcGF0Y2hfbW9kZSA9IDAsIHVuYm9ybjsKLQljb25zdCBjaGFyICpyZXY7CisJaW50IHBhdGNoX21vZGUgPSAwLCBwYXRoc3BlY19maWxlX251bCA9IDAsIHVuYm9ybjsKKwljb25zdCBjaGFyICpyZXYsICpwYXRoc3BlY19mcm9tX2ZpbGUgPSBOVUxMOwogCXN0cnVjdCBvYmplY3RfaWQgb2lkOwogCXN0cnVjdCBwYXRoc3BlYyBwYXRoc3BlYzsKIAlpbnQgaW50ZW50X3RvX2FkZCA9IDA7CkBAIC0zMDUsNiArMzA3LDggQEAKIAkJT1BUX0JPT0woJ3AnLCAicGF0Y2giLCAmcGF0Y2hfbW9kZSwgTl8oInNlbGVjdCBodW5rcyBpbnRlcmFjdGl2ZWx5IikpLAogCQlPUFRfQk9PTCgnTicsICJpbnRlbnQtdG8tYWRkIiwgJmludGVudF90b19hZGQsCiAJCQkJTl8oInJlY29yZCBvbmx5IHRoZSBmYWN0IHRoYXQgcmVtb3ZlZCBwYXRocyB3aWxsIGJlIGFkZGVkIGxhdGVyIikpLAorCQlPUFRfUEFUSFNQRUNfRlJPTV9GSUxFKCZwYXRoc3BlY19mcm9tX2ZpbGUpLAorCQlPUFRfUEFUSFNQRUNfRklMRV9OVUwoJnBhdGhzcGVjX2ZpbGVfbnVsKSwKIAkJT1BUX0VORCgpCiAJfTsKIApAQCAtMzE1LDExICszMTksMjUgQEAKIAkJCQkJCVBBUlNFX09QVF9LRUVQX0RBU0hEQVNIKTsKIAlwYXJzZV9hcmdzKCZwYXRoc3BlYywgYXJndiwgcHJlZml4LCBwYXRjaF9tb2RlLCAmcmV2KTsKIAorCWlmIChwYXRoc3BlY19mcm9tX2ZpbGUpIHsKKwkJaWYgKHBhdGNoX21vZGUpCisJCQlkaWUoXygiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1wYXRjaCIpKTsKKworCQlpZiAocGF0aHNwZWMubnIpCisJCQlkaWUoXygiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggcGF0aHNwZWMgYXJndW1lbnRzIikpOworCisJCXBhcnNlX3BhdGhzcGVjX2ZpbGUoJnBhdGhzcGVjLCAwLAorCQkJCSAgICBQQVRIU1BFQ19QUkVGRVJfRlVMTCwKKwkJCQkgICAgcHJlZml4LCBwYXRoc3BlY19mcm9tX2ZpbGUsIHBhdGhzcGVjX2ZpbGVfbnVsKTsKKwl9IGVsc2UgaWYgKHBhdGhzcGVjX2ZpbGVfbnVsKSB7CisJCWRpZShfKCItLXBhdGhzcGVjLWZpbGUtbnVsIHJlcXVpcmVzIC0tcGF0aHNwZWMtZnJvbS1maWxlIikpOworCX0KKwogCXVuYm9ybiA9ICFzdHJjbXAocmV2LCAiSEVBRCIpICYmIGdldF9vaWQoIkhFQUQiLCAmb2lkKTsKIAlpZiAodW5ib3JuKSB7CiAJCS8qIHJlc2V0IG9uIHVuYm9ybiBicmFuY2g6IHRyZWF0IGFzIHJlc2V0IHRvIGVtcHR5IHRyZWUgKi8KIAkJb2lkY3B5KCZvaWQsIHRoZV9oYXNoX2FsZ28tPmVtcHR5X3RyZWUpOwotCX0gZWxzZSBpZiAoIXBhdGhzcGVjLm5yKSB7CisJfSBlbHNlIGlmICghcGF0aHNwZWMubnIgJiYgIXBhdGNoX21vZGUpIHsKIAkJc3RydWN0IGNvbW1pdCAqY29tbWl0OwogCQlpZiAoZ2V0X29pZF9jb21taXR0aXNoKHJldiwgJm9pZCkpCiAJCQlkaWUoXygiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJldmlzaW9uLiIpLCByZXYpOwpAQCAtMzQwLDYgKzM1OCw3IEBACiAJaWYgKHBhdGNoX21vZGUpIHsKIAkJaWYgKHJlc2V0X3R5cGUgIT0gTk9ORSkKIAkJCWRpZShfKCItLXBhdGNoIGlzIGluY29tcGF0aWJsZSB3aXRoIC0te2hhcmQsbWl4ZWQsc29mdH0iKSk7CisJCXRyYWNlMl9jbWRfbW9kZSgicGF0Y2gtaW50ZXJhY3RpdmUiKTsKIAkJcmV0dXJuIHJ1bl9hZGRfaW50ZXJhY3RpdmUocmV2LCAiLS1wYXRjaD1yZXNldCIsICZwYXRoc3BlYyk7CiAJfQogCkBAIC0zNTYsNiArMzc1LDExIEBACiAJaWYgKHJlc2V0X3R5cGUgPT0gTk9ORSkKIAkJcmVzZXRfdHlwZSA9IE1JWEVEOyAvKiBieSBkZWZhdWx0ICovCiAKKwlpZiAocGF0aHNwZWMubnIpCisJCXRyYWNlMl9jbWRfbW9kZSgicGF0aCIpOworCWVsc2UKKwkJdHJhY2UyX2NtZF9tb2RlKHJlc2V0X3R5cGVfbmFtZXNbcmVzZXRfdHlwZV0pOworCiAJaWYgKHJlc2V0X3R5cGUgIT0gU09GVCAmJiAocmVzZXRfdHlwZSAhPSBNSVhFRCB8fCBnZXRfZ2l0X3dvcmtfdHJlZSgpKSkKIAkJc2V0dXBfd29ya190cmVlKCk7CiAKQEAgLTM3OSw2ICs0MDMsNyBAQAogCQkJaW50IGZsYWdzID0gcXVpZXQgPyBSRUZSRVNIX1FVSUVUIDogUkVGUkVTSF9JTl9QT1JDRUxBSU47CiAJCQlpZiAocmVhZF9mcm9tX3RyZWUoJnBhdGhzcGVjLCAmb2lkLCBpbnRlbnRfdG9fYWRkKSkKIAkJCQlyZXR1cm4gMTsKKwkJCXRoZV9pbmRleC51cGRhdGVkX3NraXB3b3JrdHJlZSA9IDE7CiAJCQlpZiAoIXF1aWV0ICYmIGdldF9naXRfd29ya190cmVlKCkpIHsKIAkJCQl1aW50NjRfdCB0X2JlZ2luLCB0X2RlbHRhX2luX21zOwogCkBAIC00MTMsNyArNDM4LDcgQEAKIAkJCXByaW50X25ld19oZWFkX2xpbmUobG9va3VwX2NvbW1pdF9yZWZlcmVuY2UodGhlX3JlcG9zaXRvcnksICZvaWQpKTsKIAl9CiAJaWYgKCFwYXRoc3BlYy5ucikKLQkJcmVtb3ZlX2JyYW5jaF9zdGF0ZSgpOworCQlyZW1vdmVfYnJhbmNoX3N0YXRlKHRoZV9yZXBvc2l0b3J5LCAwKTsKIAogCXJldHVybiB1cGRhdGVfcmVmX3N0YXR1czsKIH0KZGlmZiAtLWdpdCBhL2J1aWx0aW4vcmV2LWxpc3QuYyBiL2J1aWx0aW4vcmV2LWxpc3QuYwppbmRleCAyODgwZWQzLi5mNTIwMTExIDEwMDY0NAotLS0gYS9idWlsdGluL3Jldi1saXN0LmMKKysrIGIvYnVpbHRpbi9yZXYtbGlzdC5jCkBAIC0xOCw3ICsxOCw2IEBACiAjaW5jbHVkZSAicmVmbG9nLXdhbGsuaCIKICNpbmNsdWRlICJvaWRzZXQuaCIKICNpbmNsdWRlICJwYWNrZmlsZS5oIgotI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgogCiBzdGF0aWMgY29uc3QgY2hhciByZXZfbGlzdF91c2FnZVtdID0KICJnaXQgcmV2LWxpc3QgW09QVElPTl0gPGNvbW1pdC1pZD4uLi4gWyAtLSBwYXRocy4uLiBdXG4iCkBAIC00OSw2ICs0OCw3IEBACiAiICAgIC0tb2JqZWN0cyB8IC0tb2JqZWN0cy1lZGdlXG4iCiAiICAgIC0tdW5wYWNrZWRcbiIKICIgICAgLS1oZWFkZXIgfCAtLXByZXR0eVxuIgorIiAgICAtLVtuby1db2JqZWN0LW5hbWVzXG4iCiAiICAgIC0tYWJicmV2PTxuPiB8IC0tbm8tYWJicmV2XG4iCiAiICAgIC0tYWJicmV2LWNvbW1pdFxuIgogIiAgICAtLWxlZnQtcmlnaHRcbiIKQEAgLTc1LDkgKzc1LDEyIEBACiB9Owogc3RhdGljIGVudW0gbWlzc2luZ19hY3Rpb24gYXJnX21pc3NpbmdfYWN0aW9uOwogCisvKiBkaXNwbGF5IG9ubHkgdGhlIG9pZCBvZiBlYWNoIG9iamVjdCBlbmNvdW50ZXJlZCAqLworc3RhdGljIGludCBhcmdfc2hvd19vYmplY3RfbmFtZXMgPSAxOworCiAjZGVmaW5lIERFRkFVTFRfT0lEU0VUX1NJWkUgICAgICgxNioxMDI0KQogCi1zdGF0aWMgdm9pZCBmaW5pc2hfY29tbWl0KHN0cnVjdCBjb21taXQgKmNvbW1pdCwgdm9pZCAqZGF0YSk7CitzdGF0aWMgdm9pZCBmaW5pc2hfY29tbWl0KHN0cnVjdCBjb21taXQgKmNvbW1pdCk7CiBzdGF0aWMgdm9pZCBzaG93X2NvbW1pdChzdHJ1Y3QgY29tbWl0ICpjb21taXQsIHZvaWQgKmRhdGEpCiB7CiAJc3RydWN0IHJldl9saXN0X2luZm8gKmluZm8gPSBkYXRhOwpAQCAtODYsNyArODksNyBAQAogCWRpc3BsYXlfcHJvZ3Jlc3MocHJvZ3Jlc3MsICsrcHJvZ3Jlc3NfY291bnRlcik7CiAKIAlpZiAoaW5mby0+ZmxhZ3MgJiBSRVZfTElTVF9RVUlFVCkgewotCQlmaW5pc2hfY29tbWl0KGNvbW1pdCwgZGF0YSk7CisJCWZpbmlzaF9jb21taXQoY29tbWl0KTsKIAkJcmV0dXJuOwogCX0KIApAQCAtOTksNyArMTAyLDcgQEAKIAkJCXJldnMtPmNvdW50X2xlZnQrKzsKIAkJZWxzZQogCQkJcmV2cy0+Y291bnRfcmlnaHQrKzsKLQkJZmluaXNoX2NvbW1pdChjb21taXQsIGRhdGEpOworCQlmaW5pc2hfY29tbWl0KGNvbW1pdCk7CiAJCXJldHVybjsKIAl9CiAKQEAgLTE4OCwxNiArMTkxLDE3IEBACiAJCQlwdXRjaGFyKCdcbicpOwogCX0KIAltYXliZV9mbHVzaF9vcl9kaWUoc3Rkb3V0LCAic3Rkb3V0Iik7Ci0JZmluaXNoX2NvbW1pdChjb21taXQsIGRhdGEpOworCWZpbmlzaF9jb21taXQoY29tbWl0KTsKIH0KIAotc3RhdGljIHZvaWQgZmluaXNoX2NvbW1pdChzdHJ1Y3QgY29tbWl0ICpjb21taXQsIHZvaWQgKmRhdGEpCitzdGF0aWMgdm9pZCBmaW5pc2hfY29tbWl0KHN0cnVjdCBjb21taXQgKmNvbW1pdCkKIHsKIAlpZiAoY29tbWl0LT5wYXJlbnRzKSB7CiAJCWZyZWVfY29tbWl0X2xpc3QoY29tbWl0LT5wYXJlbnRzKTsKIAkJY29tbWl0LT5wYXJlbnRzID0gTlVMTDsKIAl9Ci0JZnJlZV9jb21taXRfYnVmZmVyKGNvbW1pdCk7CisJZnJlZV9jb21taXRfYnVmZmVyKHRoZV9yZXBvc2l0b3J5LT5wYXJzZWRfb2JqZWN0cywKKwkJCSAgIGNvbW1pdCk7CiB9CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBmaW5pc2hfb2JqZWN0X19tYShzdHJ1Y3Qgb2JqZWN0ICpvYmopCkBAIC0yMzcsNyArMjQxLDcgQEAKIHN0YXRpYyBpbnQgZmluaXNoX29iamVjdChzdHJ1Y3Qgb2JqZWN0ICpvYmosIGNvbnN0IGNoYXIgKm5hbWUsIHZvaWQgKmNiX2RhdGEpCiB7CiAJc3RydWN0IHJldl9saXN0X2luZm8gKmluZm8gPSBjYl9kYXRhOwotCWlmICghaGFzX29iamVjdF9maWxlKCZvYmotPm9pZCkpIHsKKwlpZiAob2lkX29iamVjdF9pbmZvX2V4dGVuZGVkKHRoZV9yZXBvc2l0b3J5LCAmb2JqLT5vaWQsIE5VTEwsIDApIDwgMCkgewogCQlmaW5pc2hfb2JqZWN0X19tYShvYmopOwogCQlyZXR1cm4gMTsKIAl9CkBAIC0yNDksMTIgKzI1MywzMCBAQAogc3RhdGljIHZvaWQgc2hvd19vYmplY3Qoc3RydWN0IG9iamVjdCAqb2JqLCBjb25zdCBjaGFyICpuYW1lLCB2b2lkICpjYl9kYXRhKQogewogCXN0cnVjdCByZXZfbGlzdF9pbmZvICppbmZvID0gY2JfZGF0YTsKKwlzdHJ1Y3QgcmV2X2luZm8gKnJldnMgPSBpbmZvLT5yZXZzOworCiAJaWYgKGZpbmlzaF9vYmplY3Qob2JqLCBuYW1lLCBjYl9kYXRhKSkKIAkJcmV0dXJuOwogCWRpc3BsYXlfcHJvZ3Jlc3MocHJvZ3Jlc3MsICsrcHJvZ3Jlc3NfY291bnRlcik7CiAJaWYgKGluZm8tPmZsYWdzICYgUkVWX0xJU1RfUVVJRVQpCiAJCXJldHVybjsKLQlzaG93X29iamVjdF93aXRoX25hbWUoc3Rkb3V0LCBvYmosIG5hbWUpOworCisJaWYgKHJldnMtPmNvdW50KSB7CisJCS8qCisJCSAqIFRoZSBvYmplY3QgY291bnQgaXMgYWx3YXlzIGFjY3VtdWxhdGVkIGluIHRoZSAuY291bnRfcmlnaHQKKwkJICogZmllbGQgZm9yIHRyYXZlcnNhbCB0aGF0IGlzIG5vdCBhIGxlZnQtcmlnaHQgdHJhdmVyc2FsLAorCQkgKiBhbmQgY21kX3Jldl9saXN0KCkgbWFkZSBzdXJlIHRoYXQgYSAuY291bnQgcmVxdWVzdCB0aGF0CisJCSAqIHdhbnRzIHRvIGNvdW50IG5vbi1jb21taXQgb2JqZWN0cywgd2hpY2ggaXMgaGFuZGxlZCBieQorCQkgKiB0aGUgc2hvd19vYmplY3QoKSBjYWxsYmFjaywgZG9lcyBub3QgYXNrIGZvciAubGVmdF9yaWdodC4KKwkJICovCisJCXJldnMtPmNvdW50X3JpZ2h0Kys7CisJCXJldHVybjsKKwl9CisKKwlpZiAoYXJnX3Nob3dfb2JqZWN0X25hbWVzKQorCQlzaG93X29iamVjdF93aXRoX25hbWUoc3Rkb3V0LCBvYmosIG5hbWUpOworCWVsc2UKKwkJcHJpbnRmKCIlc1xuIiwgb2lkX3RvX2hleCgmb2JqLT5vaWQpKTsKIH0KIAogc3RhdGljIHZvaWQgc2hvd19lZGdlKHN0cnVjdCBjb21taXQgKmNvbW1pdCkKQEAgLTM1NywxMCArMzc5LDg2IEBACiAJcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyBpbnQgdHJ5X2JpdG1hcF9jb3VudChzdHJ1Y3QgcmV2X2luZm8gKnJldnMsCisJCQkgICAgc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyKQoreworCXVpbnQzMl90IGNvbW1pdF9jb3VudCA9IDAsCisJCSB0YWdfY291bnQgPSAwLAorCQkgdHJlZV9jb3VudCA9IDAsCisJCSBibG9iX2NvdW50ID0gMDsKKwlpbnQgbWF4X2NvdW50OworCXN0cnVjdCBiaXRtYXBfaW5kZXggKmJpdG1hcF9naXQ7CisKKwkvKiBUaGlzIGZ1bmN0aW9uIG9ubHkgaGFuZGxlcyBjb3VudGluZywgbm90IGdlbmVyYWwgdHJhdmVyc2FsLiAqLworCWlmICghcmV2cy0+Y291bnQpCisJCXJldHVybiAtMTsKKworCS8qCisJICogQSBiaXRtYXAgcmVzdWx0IGNhbid0IGtub3cgbGVmdC9yaWdodCwgZXRjLCBiZWNhdXNlIHdlIGRvbid0CisJICogYWN0dWFsbHkgdHJhdmVyc2UuCisJICovCisJaWYgKHJldnMtPmxlZnRfcmlnaHQgfHwgcmV2cy0+Y2hlcnJ5X21hcmspCisJCXJldHVybiAtMTsKKworCS8qCisJICogSWYgd2UncmUgY291bnRpbmcgcmVhY2hhYmxlIG9iamVjdHMsIHdlIGNhbid0IGhhbmRsZSBhIG1heCBjb3VudCBvZgorCSAqIGNvbW1pdHMgdG8gdHJhdmVyc2UsIHNpbmNlIHdlIGRvbid0IGtub3cgd2hpY2ggb2JqZWN0cyBnbyB3aXRoIHdoaWNoCisJICogY29tbWl0LgorCSAqLworCWlmIChyZXZzLT5tYXhfY291bnQgPj0gMCAmJgorCSAgICAocmV2cy0+dGFnX29iamVjdHMgfHwgcmV2cy0+dHJlZV9vYmplY3RzIHx8IHJldnMtPmJsb2Jfb2JqZWN0cykpCisJCXJldHVybiAtMTsKKworCS8qCisJICogVGhpcyBtdXN0IGJlIHNhdmVkIGJlZm9yZSBkb2luZyBhbnkgd2Fsa2luZywgc2luY2UgdGhlIHJldmlzaW9uCisJICogbWFjaGluZXJ5IHdpbGwgY291bnQgaXQgZG93biB0byB6ZXJvIHdoaWxlIHRyYXZlcnNpbmcuCisJICovCisJbWF4X2NvdW50ID0gcmV2cy0+bWF4X2NvdW50OworCisJYml0bWFwX2dpdCA9IHByZXBhcmVfYml0bWFwX3dhbGsocmV2cywgZmlsdGVyKTsKKwlpZiAoIWJpdG1hcF9naXQpCisJCXJldHVybiAtMTsKKworCWNvdW50X2JpdG1hcF9jb21taXRfbGlzdChiaXRtYXBfZ2l0LCAmY29tbWl0X2NvdW50LAorCQkJCSByZXZzLT50cmVlX29iamVjdHMgPyAmdHJlZV9jb3VudCA6IE5VTEwsCisJCQkJIHJldnMtPmJsb2Jfb2JqZWN0cyA/ICZibG9iX2NvdW50IDogTlVMTCwKKwkJCQkgcmV2cy0+dGFnX29iamVjdHMgPyAmdGFnX2NvdW50IDogTlVMTCk7CisJaWYgKG1heF9jb3VudCA+PSAwICYmIG1heF9jb3VudCA8IGNvbW1pdF9jb3VudCkKKwkJY29tbWl0X2NvdW50ID0gbWF4X2NvdW50OworCisJcHJpbnRmKCIlZFxuIiwgY29tbWl0X2NvdW50ICsgdHJlZV9jb3VudCArIGJsb2JfY291bnQgKyB0YWdfY291bnQpOworCWZyZWVfYml0bWFwX2luZGV4KGJpdG1hcF9naXQpOworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IHRyeV9iaXRtYXBfdHJhdmVyc2FsKHN0cnVjdCByZXZfaW5mbyAqcmV2cywKKwkJCQlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXIpCit7CisJc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdDsKKworCS8qCisJICogV2UgY2FuJ3QgdXNlIGEgYml0bWFwIHJlc3VsdCB3aXRoIGEgdHJhdmVyc2FsIGxpbWl0LCBzaW5jZSB0aGUgc2V0CisJICogb2YgY29tbWl0cyB3ZSdkIGdldCB3b3VsZCBiZSBlc3NlbnRpYWxseSByYW5kb20uCisJICovCisJaWYgKHJldnMtPm1heF9jb3VudCA+PSAwKQorCQlyZXR1cm4gLTE7CisKKwliaXRtYXBfZ2l0ID0gcHJlcGFyZV9iaXRtYXBfd2FsayhyZXZzLCBmaWx0ZXIpOworCWlmICghYml0bWFwX2dpdCkKKwkJcmV0dXJuIC0xOworCisJdHJhdmVyc2VfYml0bWFwX2NvbW1pdF9saXN0KGJpdG1hcF9naXQsIHJldnMsICZzaG93X29iamVjdF9mYXN0KTsKKwlmcmVlX2JpdG1hcF9pbmRleChiaXRtYXBfZ2l0KTsKKwlyZXR1cm4gMDsKK30KKwogaW50IGNtZF9yZXZfbGlzdChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKIHsKIAlzdHJ1Y3QgcmV2X2luZm8gcmV2czsKIAlzdHJ1Y3QgcmV2X2xpc3RfaW5mbyBpbmZvOworCXN0cnVjdCBzZXR1cF9yZXZpc2lvbl9vcHQgc19yX29wdCA9IHsKKwkJLmFsbG93X2V4Y2x1ZGVfcHJvbWlzb3Jfb2JqZWN0cyA9IDEsCisJfTsKIAlpbnQgaTsKIAlpbnQgYmlzZWN0X2xpc3QgPSAwOwogCWludCBiaXNlY3Rfc2hvd192YXJzID0gMDsKQEAgLTM3NCw5ICs0NzIsNyBAQAogCWdpdF9jb25maWcoZ2l0X2RlZmF1bHRfY29uZmlnLCBOVUxMKTsKIAlyZXBvX2luaXRfcmV2aXNpb25zKHRoZV9yZXBvc2l0b3J5LCAmcmV2cywgcHJlZml4KTsKIAlyZXZzLmFiYnJldiA9IERFRkFVTFRfQUJCUkVWOwotCXJldnMuYWxsb3dfZXhjbHVkZV9wcm9taXNvcl9vYmplY3RzX29wdCA9IDE7CiAJcmV2cy5jb21taXRfZm9ybWF0ID0gQ01JVF9GTVRfVU5TUEVDSUZJRUQ7Ci0JcmV2cy5kb19ub3RfZGllX29uX21pc3NpbmdfdHJlZSA9IDE7CiAKIAkvKgogCSAqIFNjYW4gdGhlIGFyZ3VtZW50IGxpc3QgYmVmb3JlIGludm9raW5nIHNldHVwX3JldmlzaW9ucygpLCBzbyB0aGF0IHdlCkBAIC00MDYsNyArNTAyLDEwIEBACiAJCX0KIAl9CiAKLQlhcmdjID0gc2V0dXBfcmV2aXNpb25zKGFyZ2MsIGFyZ3YsICZyZXZzLCBOVUxMKTsKKwlpZiAoYXJnX21pc3NpbmdfYWN0aW9uKQorCQlyZXZzLmRvX25vdF9kaWVfb25fbWlzc2luZ190cmVlID0gMTsKKworCWFyZ2MgPSBzZXR1cF9yZXZpc2lvbnMoYXJnYywgYXJndiwgJnJldnMsICZzX3Jfb3B0KTsKIAogCW1lbXNldCgmaW5mbywgMCwgc2l6ZW9mKGluZm8pKTsKIAlpbmZvLnJldnMgPSAmcmV2czsKQEAgLTQ1OSwxMCArNTU4LDYgQEAKIAkJCXBhcnNlX2xpc3Rfb2JqZWN0c19maWx0ZXIoJmZpbHRlcl9vcHRpb25zLCBhcmcpOwogCQkJaWYgKGZpbHRlcl9vcHRpb25zLmNob2ljZSAmJiAhcmV2cy5ibG9iX29iamVjdHMpCiAJCQkJZGllKF8oIm9iamVjdCBmaWx0ZXJpbmcgcmVxdWlyZXMgLS1vYmplY3RzIikpOwotCQkJaWYgKGZpbHRlcl9vcHRpb25zLmNob2ljZSA9PSBMT0ZDX1NQQVJTRV9PSUQgJiYKLQkJCSAgICAhZmlsdGVyX29wdGlvbnMuc3BhcnNlX29pZF92YWx1ZSkKLQkJCQlkaWUoXygiaW52YWxpZCBzcGFyc2UgdmFsdWUgJyVzJyIpLAotCQkJCSAgICBmaWx0ZXJfb3B0aW9ucy5maWx0ZXJfc3BlYyk7CiAJCQljb250aW51ZTsKIAkJfQogCQlpZiAoIXN0cmNtcChhcmcsICgiLS1uby0iIENMX0FSR19fRklMVEVSKSkpIHsKQEAgLTQ3OSw2ICs1NzQsMTYgQEAKIAkJaWYgKHNraXBfcHJlZml4KGFyZywgIi0tbWlzc2luZz0iLCAmYXJnKSkKIAkJCWNvbnRpbnVlOyAvKiBhbHJlYWR5IGhhbmRsZWQgYWJvdmUgKi8KIAorCQlpZiAoIXN0cmNtcChhcmcsICgiLS1uby1vYmplY3QtbmFtZXMiKSkpIHsKKwkJCWFyZ19zaG93X29iamVjdF9uYW1lcyA9IDA7CisJCQljb250aW51ZTsKKwkJfQorCisJCWlmICghc3RyY21wKGFyZywgKCItLW9iamVjdC1uYW1lcyIpKSkgeworCQkJYXJnX3Nob3dfb2JqZWN0X25hbWVzID0gMTsKKwkJCWNvbnRpbnVlOworCQl9CisKIAkJdXNhZ2UocmV2X2xpc3RfdXNhZ2UpOwogCiAJfQpAQCAtNTA0LDggKzYwOSwxMCBAQAogCWlmIChyZXZzLnNob3dfbm90ZXMpCiAJCWRpZShfKCJyZXYtbGlzdCBkb2VzIG5vdCBzdXBwb3J0IGRpc3BsYXkgb2Ygbm90ZXMiKSk7CiAKLQlpZiAoZmlsdGVyX29wdGlvbnMuY2hvaWNlICYmIHVzZV9iaXRtYXBfaW5kZXgpCi0JCWRpZShfKCJjYW5ub3QgY29tYmluZSAtLXVzZS1iaXRtYXAtaW5kZXggd2l0aCBvYmplY3QgZmlsdGVyaW5nIikpOworCWlmIChyZXZzLmNvdW50ICYmCisJICAgIChyZXZzLnRhZ19vYmplY3RzIHx8IHJldnMudHJlZV9vYmplY3RzIHx8IHJldnMuYmxvYl9vYmplY3RzKSAmJgorCSAgICAocmV2cy5sZWZ0X3JpZ2h0IHx8IHJldnMuY2hlcnJ5X21hcmspKQorCQlkaWUoXygibWFya2VkIGNvdW50aW5nIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tb2JqZWN0cyIpKTsKIAogCXNhdmVfY29tbWl0X2J1ZmZlciA9IChyZXZzLnZlcmJvc2VfaGVhZGVyIHx8CiAJCQkgICAgICByZXZzLmdyZXBfZmlsdGVyLnBhdHRlcm5fbGlzdCB8fApAQCAtNTE2LDM0ICs2MjMsMTcgQEAKIAlpZiAoc2hvd19wcm9ncmVzcykKIAkJcHJvZ3Jlc3MgPSBzdGFydF9kZWxheWVkX3Byb2dyZXNzKHNob3dfcHJvZ3Jlc3MsIDApOwogCi0JaWYgKHVzZV9iaXRtYXBfaW5kZXggJiYgIXJldnMucHJ1bmUpIHsKLQkJaWYgKHJldnMuY291bnQgJiYgIXJldnMubGVmdF9yaWdodCAmJiAhcmV2cy5jaGVycnlfbWFyaykgewotCQkJdWludDMyX3QgY29tbWl0X2NvdW50OwotCQkJaW50IG1heF9jb3VudCA9IHJldnMubWF4X2NvdW50OwotCQkJc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdDsKLQkJCWlmICgoYml0bWFwX2dpdCA9IHByZXBhcmVfYml0bWFwX3dhbGsoJnJldnMpKSkgewotCQkJCWNvdW50X2JpdG1hcF9jb21taXRfbGlzdChiaXRtYXBfZ2l0LCAmY29tbWl0X2NvdW50LCBOVUxMLCBOVUxMLCBOVUxMKTsKLQkJCQlpZiAobWF4X2NvdW50ID49IDAgJiYgbWF4X2NvdW50IDwgY29tbWl0X2NvdW50KQotCQkJCQljb21taXRfY291bnQgPSBtYXhfY291bnQ7Ci0JCQkJcHJpbnRmKCIlZFxuIiwgY29tbWl0X2NvdW50KTsKLQkJCQlmcmVlX2JpdG1hcF9pbmRleChiaXRtYXBfZ2l0KTsKLQkJCQlyZXR1cm4gMDsKLQkJCX0KLQkJfSBlbHNlIGlmIChyZXZzLm1heF9jb3VudCA8IDAgJiYKLQkJCSAgIHJldnMudGFnX29iamVjdHMgJiYgcmV2cy50cmVlX29iamVjdHMgJiYgcmV2cy5ibG9iX29iamVjdHMpIHsKLQkJCXN0cnVjdCBiaXRtYXBfaW5kZXggKmJpdG1hcF9naXQ7Ci0JCQlpZiAoKGJpdG1hcF9naXQgPSBwcmVwYXJlX2JpdG1hcF93YWxrKCZyZXZzKSkpIHsKLQkJCQl0cmF2ZXJzZV9iaXRtYXBfY29tbWl0X2xpc3QoYml0bWFwX2dpdCwgJnNob3dfb2JqZWN0X2Zhc3QpOwotCQkJCWZyZWVfYml0bWFwX2luZGV4KGJpdG1hcF9naXQpOwotCQkJCXJldHVybiAwOwotCQkJfQotCQl9CisJaWYgKHVzZV9iaXRtYXBfaW5kZXgpIHsKKwkJaWYgKCF0cnlfYml0bWFwX2NvdW50KCZyZXZzLCAmZmlsdGVyX29wdGlvbnMpKQorCQkJcmV0dXJuIDA7CisJCWlmICghdHJ5X2JpdG1hcF90cmF2ZXJzYWwoJnJldnMsICZmaWx0ZXJfb3B0aW9ucykpCisJCQlyZXR1cm4gMDsKIAl9CiAKIAlpZiAocHJlcGFyZV9yZXZpc2lvbl93YWxrKCZyZXZzKSkKIAkJZGllKCJyZXZpc2lvbiB3YWxrIHNldHVwIGZhaWxlZCIpOwogCWlmIChyZXZzLnRyZWVfb2JqZWN0cykKLQkJbWFya19lZGdlc191bmludGVyZXN0aW5nKCZyZXZzLCBzaG93X2VkZ2UpOworCQltYXJrX2VkZ2VzX3VuaW50ZXJlc3RpbmcoJnJldnMsIHNob3dfZWRnZSwgMCk7CiAKIAlpZiAoYmlzZWN0X2xpc3QpIHsKIAkJaW50IHJlYWNoZXMsIGFsbDsKZGlmZiAtLWdpdCBhL2J1aWx0aW4vcmV2LXBhcnNlLmMgYi9idWlsdGluL3Jldi1wYXJzZS5jCmluZGV4IDEwZDRkYWIuLjA2MDU2NDMgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vcmV2LXBhcnNlLmMKKysrIGIvYnVpbHRpbi9yZXYtcGFyc2UuYwpAQCAtMyw2ICszLDcgQEAKICAqCiAgKiBDb3B5cmlnaHQgKEMpIExpbnVzIFRvcnZhbGRzLCAyMDA1CiAgKi8KKyNkZWZpbmUgVVNFX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiY29tbWl0LmgiCkBAIC01OTIsNiArNTkzLDcgQEAKIAljb25zdCBjaGFyICpuYW1lID0gTlVMTDsKIAlzdHJ1Y3Qgb2JqZWN0X2NvbnRleHQgdW51c2VkOwogCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CisJY29uc3QgaW50IGhleHN6ID0gdGhlX2hhc2hfYWxnby0+aGV4c3o7CiAKIAlpZiAoYXJnYyA+IDEgJiYgIXN0cmNtcCgiLS1wYXJzZW9wdCIsIGFyZ3ZbMV0pKQogCQlyZXR1cm4gY21kX3BhcnNlb3B0KGFyZ2MgLSAxLCBhcmd2ICsgMSwgcHJlZml4KTsKQEAgLTcyOSw4ICs3MzEsOCBAQAogCQkJCWFiYnJldiA9IHN0cnRvdWwoYXJnLCBOVUxMLCAxMCk7CiAJCQkJaWYgKGFiYnJldiA8IE1JTklNVU1fQUJCUkVWKQogCQkJCQlhYmJyZXYgPSBNSU5JTVVNX0FCQlJFVjsKLQkJCQllbHNlIGlmICg0MCA8PSBhYmJyZXYpCi0JCQkJCWFiYnJldiA9IDQwOworCQkJCWVsc2UgaWYgKGhleHN6IDw9IGFiYnJldikKKwkJCQkJYWJicmV2ID0gaGV4c3o7CiAJCQkJY29udGludWU7CiAJCQl9CiAJCQlpZiAoIXN0cmNtcChhcmcsICItLXNxIikpIHsKQEAgLTgwMSwxMiArODAzLDE1IEBACiAJCQkJY29uc3QgY2hhciAqd29ya190cmVlID0gZ2V0X2dpdF93b3JrX3RyZWUoKTsKIAkJCQlpZiAod29ya190cmVlKQogCQkJCQlwdXRzKHdvcmtfdHJlZSk7CisJCQkJZWxzZQorCQkJCQlkaWUoInRoaXMgb3BlcmF0aW9uIG11c3QgYmUgcnVuIGluIGEgd29yayB0cmVlIik7CiAJCQkJY29udGludWU7CiAJCQl9CiAJCQlpZiAoIXN0cmNtcChhcmcsICItLXNob3ctc3VwZXJwcm9qZWN0LXdvcmtpbmctdHJlZSIpKSB7Ci0JCQkJY29uc3QgY2hhciAqc3VwZXJwcm9qZWN0ID0gZ2V0X3N1cGVycHJvamVjdF93b3JraW5nX3RyZWUoKTsKLQkJCQlpZiAoc3VwZXJwcm9qZWN0KQotCQkJCQlwdXRzKHN1cGVycHJvamVjdCk7CisJCQkJc3RydWN0IHN0cmJ1ZiBzdXBlcnByb2plY3QgPSBTVFJCVUZfSU5JVDsKKwkJCQlpZiAoZ2V0X3N1cGVycHJvamVjdF93b3JraW5nX3RyZWUoJnN1cGVycHJvamVjdCkpCisJCQkJCXB1dHMoc3VwZXJwcm9qZWN0LmJ1Zik7CisJCQkJc3RyYnVmX3JlbGVhc2UoJnN1cGVycHJvamVjdCk7CiAJCQkJY29udGludWU7CiAJCQl9CiAJCQlpZiAoIXN0cmNtcChhcmcsICItLXNob3ctcHJlZml4IikpIHsKQEAgLTg1Myw3ICs4NTgsMTAgQEAKIAkJCQkJaWYgKCFnaXRkaXIgJiYgIXByZWZpeCkKIAkJCQkJCWdpdGRpciA9ICIuZ2l0IjsKIAkJCQkJaWYgKGdpdGRpcikgewotCQkJCQkJcHV0cyhyZWFsX3BhdGgoZ2l0ZGlyKSk7CisJCQkJCQlzdHJ1Y3Qgc3RyYnVmIHJlYWxwYXRoID0gU1RSQlVGX0lOSVQ7CisJCQkJCQlzdHJidWZfcmVhbHBhdGgoJnJlYWxwYXRoLCBnaXRkaXIsIDEpOworCQkJCQkJcHV0cyhyZWFscGF0aC5idWYpOworCQkJCQkJc3RyYnVmX3JlbGVhc2UoJnJlYWxwYXRoKTsKIAkJCQkJCWNvbnRpbnVlOwogCQkJCQl9CiAJCQkJfQpAQCAtOTE3LDYgKzkyNSwxNyBAQAogCQkJCXNob3dfZGF0ZXN0cmluZygiLS1taW4tYWdlPSIsIGFyZyk7CiAJCQkJY29udGludWU7CiAJCQl9CisJCQlpZiAob3B0X3dpdGhfdmFsdWUoYXJnLCAiLS1zaG93LW9iamVjdC1mb3JtYXQiLCAmYXJnKSkgeworCQkJCWNvbnN0IGNoYXIgKnZhbCA9IGFyZyA/IGFyZyA6ICJzdG9yYWdlIjsKKworCQkJCWlmIChzdHJjbXAodmFsLCAic3RvcmFnZSIpICYmCisJCQkJICAgIHN0cmNtcCh2YWwsICJpbnB1dCIpICYmCisJCQkJICAgIHN0cmNtcCh2YWwsICJvdXRwdXQiKSkKKwkJCQkJZGllKCJ1bmtub3duIG1vZGUgZm9yIC0tc2hvdy1vYmplY3QtZm9ybWF0OiAlcyIsCisJCQkJCSAgICBhcmcpOworCQkJCXB1dHModGhlX2hhc2hfYWxnby0+bmFtZSk7CisJCQkJY29udGludWU7CisJCQl9CiAJCQlpZiAoc2hvd19mbGFnKGFyZykgJiYgdmVyaWZ5KQogCQkJCWRpZV9ub19zaW5nbGVfcmV2KHF1aWV0KTsKIAkJCWNvbnRpbnVlOwpAQCAtOTMzLDcgKzk1Miw4IEBACiAJCQluYW1lKys7CiAJCQl0eXBlID0gUkVWRVJTRUQ7CiAJCX0KLQkJaWYgKCFnZXRfb2lkX3dpdGhfY29udGV4dChuYW1lLCBmbGFncywgJm9pZCwgJnVudXNlZCkpIHsKKwkJaWYgKCFnZXRfb2lkX3dpdGhfY29udGV4dCh0aGVfcmVwb3NpdG9yeSwgbmFtZSwKKwkJCQkJICBmbGFncywgJm9pZCwgJnVudXNlZCkpIHsKIAkJCWlmICh2ZXJpZnkpCiAJCQkJcmV2c19jb3VudCsrOwogCQkJZWxzZQpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9yZXZlcnQuYyBiL2J1aWx0aW4vcmV2ZXJ0LmMKaW5kZXggYzkzMzkzYy4uZjYxY2M1ZCAxMDA2NDQKLS0tIGEvYnVpbHRpbi9yZXZlcnQuYworKysgYi9idWlsdGluL3JldmVydC5jCkBAIC02OSw3ICs2OSw4IEBACiAKIAlyZXBsYXktPm1haW5saW5lID0gc3RydG9sKGFyZywgJmVuZCwgMTApOwogCWlmICgqZW5kIHx8IHJlcGxheS0+bWFpbmxpbmUgPD0gMCkKLQkJcmV0dXJuIG9wdGVycm9yKG9wdCwgImV4cGVjdHMgYSBudW1iZXIgZ3JlYXRlciB0aGFuIHplcm8iLCAwKTsKKwkJcmV0dXJuIGVycm9yKF8oIm9wdGlvbiBgJXMnIGV4cGVjdHMgYSBudW1iZXIgZ3JlYXRlciB0aGFuIHplcm8iKSwKKwkJCSAgICAgb3B0LT5sb25nX25hbWUpOwogCiAJcmV0dXJuIDA7CiB9CkBAIC05NSwxMSArOTYsMTQgQEAKIHsKIAljb25zdCBjaGFyICogY29uc3QgKiB1c2FnZV9zdHIgPSByZXZlcnRfb3JfY2hlcnJ5X3BpY2tfdXNhZ2Uob3B0cyk7CiAJY29uc3QgY2hhciAqbWUgPSBhY3Rpb25fbmFtZShvcHRzKTsKKwljb25zdCBjaGFyICpjbGVhbnVwX2FyZyA9IE5VTEw7CiAJaW50IGNtZCA9IDA7CiAJc3RydWN0IG9wdGlvbiBiYXNlX29wdGlvbnNbXSA9IHsKIAkJT1BUX0NNRE1PREUoMCwgInF1aXQiLCAmY21kLCBOXygiZW5kIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIpLCAncScpLAogCQlPUFRfQ01ETU9ERSgwLCAiY29udGludWUiLCAmY21kLCBOXygicmVzdW1lIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIpLCAnYycpLAogCQlPUFRfQ01ETU9ERSgwLCAiYWJvcnQiLCAmY21kLCBOXygiY2FuY2VsIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIpLCAnYScpLAorCQlPUFRfQ01ETU9ERSgwLCAic2tpcCIsICZjbWQsIE5fKCJza2lwIGN1cnJlbnQgY29tbWl0IGFuZCBjb250aW51ZSIpLCAncycpLAorCQlPUFRfQ0xFQU5VUCgmY2xlYW51cF9hcmcpLAogCQlPUFRfQk9PTCgnbicsICJuby1jb21taXQiLCAmb3B0cy0+bm9fY29tbWl0LCBOXygiZG9uJ3QgYXV0b21hdGljYWxseSBjb21taXQiKSksCiAJCU9QVF9CT09MKCdlJywgImVkaXQiLCAmb3B0cy0+ZWRpdCwgTl8oImVkaXQgdGhlIGNvbW1pdCBtZXNzYWdlIikpLAogCQlPUFRfTk9PUF9OT0FSRygncicsIE5VTEwpLApAQCAtMTM2LDYgKzE0MCwxMSBAQAogCWlmIChvcHRzLT5rZWVwX3JlZHVuZGFudF9jb21taXRzKQogCQlvcHRzLT5hbGxvd19lbXB0eSA9IDE7CiAKKwlpZiAoY2xlYW51cF9hcmcpIHsKKwkJb3B0cy0+ZGVmYXVsdF9tc2dfY2xlYW51cCA9IGdldF9jbGVhbnVwX21vZGUoY2xlYW51cF9hcmcsIDEpOworCQlvcHRzLT5leHBsaWNpdF9jbGVhbnVwID0gMTsKKwl9CisKIAkvKiBDaGVjayBmb3IgaW5jb21wYXRpYmxlIGNvbW1hbmQgbGluZSBhcmd1bWVudHMgKi8KIAlpZiAoY21kKSB7CiAJCWNoYXIgKnRoaXNfb3BlcmF0aW9uOwpAQCAtMTQzLDYgKzE1Miw4IEBACiAJCQl0aGlzX29wZXJhdGlvbiA9ICItLXF1aXQiOwogCQllbHNlIGlmIChjbWQgPT0gJ2MnKQogCQkJdGhpc19vcGVyYXRpb24gPSAiLS1jb250aW51ZSI7CisJCWVsc2UgaWYgKGNtZCA9PSAncycpCisJCQl0aGlzX29wZXJhdGlvbiA9ICItLXNraXAiOwogCQllbHNlIHsKIAkJCWFzc2VydChjbWQgPT0gJ2EnKTsKIAkJCXRoaXNfb3BlcmF0aW9uID0gIi0tYWJvcnQiOwpAQCAtMTk1LDE0ICsyMDYsMTYgQEAKIAlpZiAoY21kID09ICdxJykgewogCQlpbnQgcmV0ID0gc2VxdWVuY2VyX3JlbW92ZV9zdGF0ZShvcHRzKTsKIAkJaWYgKCFyZXQpCi0JCQlyZW1vdmVfYnJhbmNoX3N0YXRlKCk7CisJCQlyZW1vdmVfYnJhbmNoX3N0YXRlKHRoZV9yZXBvc2l0b3J5LCAwKTsKIAkJcmV0dXJuIHJldDsKIAl9CiAJaWYgKGNtZCA9PSAnYycpCi0JCXJldHVybiBzZXF1ZW5jZXJfY29udGludWUob3B0cyk7CisJCXJldHVybiBzZXF1ZW5jZXJfY29udGludWUodGhlX3JlcG9zaXRvcnksIG9wdHMpOwogCWlmIChjbWQgPT0gJ2EnKQotCQlyZXR1cm4gc2VxdWVuY2VyX3JvbGxiYWNrKG9wdHMpOwotCXJldHVybiBzZXF1ZW5jZXJfcGlja19yZXZpc2lvbnMob3B0cyk7CisJCXJldHVybiBzZXF1ZW5jZXJfcm9sbGJhY2sodGhlX3JlcG9zaXRvcnksIG9wdHMpOworCWlmIChjbWQgPT0gJ3MnKQorCQlyZXR1cm4gc2VxdWVuY2VyX3NraXAodGhlX3JlcG9zaXRvcnksIG9wdHMpOworCXJldHVybiBzZXF1ZW5jZXJfcGlja19yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksIG9wdHMpOwogfQogCiBpbnQgY21kX3JldmVydChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKZGlmZiAtLWdpdCBhL2J1aWx0aW4vcm0uYyBiL2J1aWx0aW4vcm0uYwppbmRleCAxNzA4NmQzLi40ODU4NjMxIDEwMDY0NAotLS0gYS9idWlsdGluL3JtLmMKKysrIGIvYnVpbHRpbi9ybS5jCkBAIC0zLDYgKzMsNyBAQAogICoKICAqIENvcHlyaWdodCAoQykgTGludXMgVG9ydmFsZHMgMjAwNgogICovCisjZGVmaW5lIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJidWlsdGluLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAibG9ja2ZpbGUuaCIKQEAgLTYwLDcgKzYxLDcgQEAKIAl9CiB9CiAKLXN0YXRpYyB2b2lkIHN1Ym1vZHVsZXNfYWJzb3JiX2dpdGRpcl9pZl9uZWVkZWQoY29uc3QgY2hhciAqcHJlZml4KQorc3RhdGljIHZvaWQgc3VibW9kdWxlc19hYnNvcmJfZ2l0ZGlyX2lmX25lZWRlZCh2b2lkKQogewogCWludCBpOwogCWZvciAoaSA9IDA7IGkgPCBsaXN0Lm5yOyBpKyspIHsKQEAgLTgyLDcgKzgzLDcgQEAKIAkJCWNvbnRpbnVlOwogCiAJCWlmICghc3VibW9kdWxlX3VzZXNfZ2l0ZmlsZShuYW1lKSkKLQkJCWFic29yYl9naXRfZGlyX2ludG9fc3VwZXJwcm9qZWN0KHByZWZpeCwgbmFtZSwKKwkJCWFic29yYl9naXRfZGlyX2ludG9fc3VwZXJwcm9qZWN0KG5hbWUsCiAJCQkJQUJTT1JCX0dJVERJUl9SRUNVUlNFX1NVQk1PRFVMRVMpOwogCX0KIH0KQEAgLTEwOSw3ICsxMTAsNyBAQAogCQljb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlOwogCQljb25zdCBjaGFyICpuYW1lID0gbGlzdC5lbnRyeVtpXS5uYW1lOwogCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKLQkJdW5zaWduZWQgbW9kZTsKKwkJdW5zaWduZWQgc2hvcnQgbW9kZTsKIAkJaW50IGxvY2FsX2NoYW5nZXMgPSAwOwogCQlpbnQgc3RhZ2VkX2NoYW5nZXMgPSAwOwogCkBAIC0xNzgsNyArMTc5LDcgQEAKIAkJICogd2F5IGFzIGNoYW5nZWQgZnJvbSB0aGUgSEVBRC4KIAkJICovCiAJCWlmIChub19oZWFkCi0JCSAgICAgfHwgZ2V0X3RyZWVfZW50cnkoaGVhZCwgbmFtZSwgJm9pZCwgJm1vZGUpCisJCSAgICAgfHwgZ2V0X3RyZWVfZW50cnkodGhlX3JlcG9zaXRvcnksIGhlYWQsIG5hbWUsICZvaWQsICZtb2RlKQogCQkgICAgIHx8IGNlLT5jZV9tb2RlICE9IGNyZWF0ZV9jZV9tb2RlKG1vZGUpCiAJCSAgICAgfHwgIW9pZGVxKCZjZS0+b2lkLCAmb2lkKSkKIAkJCXN0YWdlZF9jaGFuZ2VzID0gMTsKQEAgLTIzNCw3ICsyMzUsOCBAQAogfQogCiBzdGF0aWMgaW50IHNob3dfb25seSA9IDAsIGZvcmNlID0gMCwgaW5kZXhfb25seSA9IDAsIHJlY3Vyc2l2ZSA9IDAsIHF1aWV0ID0gMDsKLXN0YXRpYyBpbnQgaWdub3JlX3VubWF0Y2ggPSAwOworc3RhdGljIGludCBpZ25vcmVfdW5tYXRjaCA9IDAsIHBhdGhzcGVjX2ZpbGVfbnVsOworc3RhdGljIGNoYXIgKnBhdGhzcGVjX2Zyb21fZmlsZTsKIAogc3RhdGljIHN0cnVjdCBvcHRpb24gYnVpbHRpbl9ybV9vcHRpb25zW10gPSB7CiAJT1BUX19EUllfUlVOKCZzaG93X29ubHksIE5fKCJkcnkgcnVuIikpLApAQCAtMjQ0LDYgKzI0Niw4IEBACiAJT1BUX0JPT0woJ3InLCBOVUxMLCAgICAgICAgICAgICAmcmVjdXJzaXZlLCAgTl8oImFsbG93IHJlY3Vyc2l2ZSByZW1vdmFsIikpLAogCU9QVF9CT09MKCAwICwgImlnbm9yZS11bm1hdGNoIiwgJmlnbm9yZV91bm1hdGNoLAogCQkJCU5fKCJleGl0IHdpdGggYSB6ZXJvIHN0YXR1cyBldmVuIGlmIG5vdGhpbmcgbWF0Y2hlZCIpKSwKKwlPUFRfUEFUSFNQRUNfRlJPTV9GSUxFKCZwYXRoc3BlY19mcm9tX2ZpbGUpLAorCU9QVF9QQVRIU1BFQ19GSUxFX05VTCgmcGF0aHNwZWNfZmlsZV9udWwpLAogCU9QVF9FTkQoKSwKIH07CiAKQEAgLTI1OCw4ICsyNjIsMjQgQEAKIAogCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgYnVpbHRpbl9ybV9vcHRpb25zLAogCQkJICAgICBidWlsdGluX3JtX3VzYWdlLCAwKTsKLQlpZiAoIWFyZ2MpCi0JCXVzYWdlX3dpdGhfb3B0aW9ucyhidWlsdGluX3JtX3VzYWdlLCBidWlsdGluX3JtX29wdGlvbnMpOworCisJcGFyc2VfcGF0aHNwZWMoJnBhdGhzcGVjLCAwLAorCQkgICAgICAgUEFUSFNQRUNfUFJFRkVSX0NXRCwKKwkJICAgICAgIHByZWZpeCwgYXJndik7CisKKwlpZiAocGF0aHNwZWNfZnJvbV9maWxlKSB7CisJCWlmIChwYXRoc3BlYy5ucikKKwkJCWRpZShfKCItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCBwYXRoc3BlYyBhcmd1bWVudHMiKSk7CisKKwkJcGFyc2VfcGF0aHNwZWNfZmlsZSgmcGF0aHNwZWMsIDAsCisJCQkJICAgIFBBVEhTUEVDX1BSRUZFUl9DV0QsCisJCQkJICAgIHByZWZpeCwgcGF0aHNwZWNfZnJvbV9maWxlLCBwYXRoc3BlY19maWxlX251bCk7CisJfSBlbHNlIGlmIChwYXRoc3BlY19maWxlX251bCkgeworCQlkaWUoXygiLS1wYXRoc3BlYy1maWxlLW51bCByZXF1aXJlcyAtLXBhdGhzcGVjLWZyb20tZmlsZSIpKTsKKwl9CisKKwlpZiAoIXBhdGhzcGVjLm5yKQorCQlkaWUoXygiTm8gcGF0aHNwZWMgd2FzIGdpdmVuLiBXaGljaCBmaWxlcyBzaG91bGQgSSByZW1vdmU/IikpOwogCiAJaWYgKCFpbmRleF9vbmx5KQogCQlzZXR1cF93b3JrX3RyZWUoKTsKQEAgLTI2OSwxMCArMjg5LDcgQEAKIAlpZiAocmVhZF9jYWNoZSgpIDwgMCkKIAkJZGllKF8oImluZGV4IGZpbGUgY29ycnVwdCIpKTsKIAotCXBhcnNlX3BhdGhzcGVjKCZwYXRoc3BlYywgMCwKLQkJICAgICAgIFBBVEhTUEVDX1BSRUZFUl9DV0QsCi0JCSAgICAgICBwcmVmaXgsIGFyZ3YpOwotCXJlZnJlc2hfaW5kZXgoJnRoZV9pbmRleCwgUkVGUkVTSF9RVUlFVCwgJnBhdGhzcGVjLCBOVUxMLCBOVUxMKTsKKwlyZWZyZXNoX2luZGV4KCZ0aGVfaW5kZXgsIFJFRlJFU0hfUVVJRVR8UkVGUkVTSF9VTk1FUkdFRCwgJnBhdGhzcGVjLCBOVUxMLCBOVUxMKTsKIAogCXNlZW4gPSB4Y2FsbG9jKHBhdGhzcGVjLm5yLCAxKTsKIApAQCAtMzEyLDcgKzMyOSw3IEBACiAJfQogCiAJaWYgKCFpbmRleF9vbmx5KQotCQlzdWJtb2R1bGVzX2Fic29yYl9naXRkaXJfaWZfbmVlZGVkKHByZWZpeCk7CisJCXN1Ym1vZHVsZXNfYWJzb3JiX2dpdGRpcl9pZl9uZWVkZWQoKTsKIAogCS8qCiAJICogSWYgbm90IGZvcmNlZCwgdGhlIGZpbGUsIHRoZSBpbmRleCBhbmQgdGhlIEhFQUQgKGlmIGV4aXN0cykKZGlmZiAtLWdpdCBhL2J1aWx0aW4vc2VuZC1wYWNrLmMgYi9idWlsdGluL3NlbmQtcGFjay5jCmluZGV4IDhlM2M3NDkuLjA5OGViZjIgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vc2VuZC1wYWNrLmMKKysrIGIvYnVpbHRpbi9zZW5kLXBhY2suYwpAQCAtMjUwLDcgKzI1MCw4IEBACiAKIAlwYWNrZXRfcmVhZGVyX2luaXQoJnJlYWRlciwgZmRbMF0sIE5VTEwsIDAsCiAJCQkgICBQQUNLRVRfUkVBRF9DSE9NUF9ORVdMSU5FIHwKLQkJCSAgIFBBQ0tFVF9SRUFEX0dFTlRMRV9PTl9FT0YpOworCQkJICAgUEFDS0VUX1JFQURfR0VOVExFX09OX0VPRiB8CisJCQkgICBQQUNLRVRfUkVBRF9ESUVfT05fRVJSX1BBQ0tFVCk7CiAKIAlzd2l0Y2ggKGRpc2NvdmVyX3ZlcnNpb24oJnJlYWRlcikpIHsKIAljYXNlIHByb3RvY29sX3YyOgpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9zaG93LWJyYW5jaC5jIGIvYnVpbHRpbi9zaG93LWJyYW5jaC5jCmluZGV4IDkzNGU1MTQuLjhjOTBjYmIgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vc2hvdy1icmFuY2guYworKysgYi9idWlsdGluL3Nob3ctYnJhbmNoLmMKQEAgLTUxNCw3ICs1MTQsNiBAQAogCiBzdGF0aWMgaW50IHNob3dfaW5kZXBlbmRlbnQoc3RydWN0IGNvbW1pdCAqKnJldiwKIAkJCSAgICBpbnQgbnVtX3JldiwKLQkJCSAgICBjaGFyICoqcmVmX25hbWUsCiAJCQkgICAgdW5zaWduZWQgaW50ICpyZXZfbWFzaykKIHsKIAlpbnQgaTsKQEAgLTUzNyw3ICs1MzYsNyBAQAogCQlhcHBlbmRfcmVmKGF2LCAmcmV2a2V5LCAwKTsKIAkJcmV0dXJuOwogCX0KLQlpZiAoc3RyY2hyKGF2LCAnKicpIHx8IHN0cmNocihhdiwgJz8nKSB8fCBzdHJjaHIoYXYsICdbJykpIHsKKwlpZiAoc3RycGJyayhhdiwgIio/WyIpKSB7CiAJCS8qIGdsb2Igc3R5bGUgbWF0Y2ggKi8KIAkJaW50IHNhdmVkX21hdGNoZXMgPSByZWZfbmFtZV9jbnQ7CiAKQEAgLTc1Myw3ICs3NTIsOCBAQAogCQkJCS8qIEFoLCB0aGF0IGlzIGEgZGF0ZSBzcGVjLi4uICovCiAJCQkJdGltZXN0YW1wX3QgYXQ7CiAJCQkJYXQgPSBhcHByb3hpZGF0ZShyZWZsb2dfYmFzZSk7Ci0JCQkJcmVhZF9yZWZfYXQocmVmLCBmbGFncywgYXQsIC0xLCAmb2lkLCBOVUxMLAorCQkJCXJlYWRfcmVmX2F0KGdldF9tYWluX3JlZl9zdG9yZSh0aGVfcmVwb3NpdG9yeSksCisJCQkJCSAgICByZWYsIGZsYWdzLCBhdCwgLTEsICZvaWQsIE5VTEwsCiAJCQkJCSAgICBOVUxMLCBOVUxMLCAmYmFzZSk7CiAJCQl9CiAJCX0KQEAgLTc2NSw3ICs3NjUsOCBAQAogCQkJdGltZXN0YW1wX3QgdGltZXN0YW1wOwogCQkJaW50IHR6OwogCi0JCQlpZiAocmVhZF9yZWZfYXQocmVmLCBmbGFncywgMCwgYmFzZSArIGksICZvaWQsICZsb2dtc2csCisJCQlpZiAocmVhZF9yZWZfYXQoZ2V0X21haW5fcmVmX3N0b3JlKHRoZV9yZXBvc2l0b3J5KSwKKwkJCQkJcmVmLCBmbGFncywgMCwgYmFzZSArIGksICZvaWQsICZsb2dtc2csCiAJCQkJCSZ0aW1lc3RhbXAsICZ0eiwgTlVMTCkpIHsKIAkJCQlyZWZsb2cgPSBpOwogCQkJCWJyZWFrOwpAQCAtODYwLDcgKzg2MSw3IEBACiAJCXJldHVybiBzaG93X21lcmdlX2Jhc2Uoc2VlbiwgbnVtX3Jldik7CiAKIAlpZiAoaW5kZXBlbmRlbnQpCi0JCXJldHVybiBzaG93X2luZGVwZW5kZW50KHJldiwgbnVtX3JldiwgcmVmX25hbWUsIHJldl9tYXNrKTsKKwkJcmV0dXJuIHNob3dfaW5kZXBlbmRlbnQocmV2LCBudW1fcmV2LCByZXZfbWFzayk7CiAKIAkvKiBTaG93IGxpc3Q7IC0tbW9yZT0tMSBtZWFucyBsaXN0LW9ubHkgKi8KIAlpZiAoMSA8IG51bV9yZXYgfHwgZXh0cmEgPCAwKSB7CmRpZmYgLS1naXQgYS9idWlsdGluL3Nob3ctaW5kZXguYyBiL2J1aWx0aW4vc2hvdy1pbmRleC5jCmluZGV4IGE2ZTY3ODguLjA4MjZmNmEgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vc2hvdy1pbmRleC5jCisrKyBiL2J1aWx0aW4vc2hvdy1pbmRleC5jCkBAIC0xMSw2ICsxMSw3IEBACiAJdW5zaWduZWQgbnI7CiAJdW5zaWduZWQgaW50IHZlcnNpb247CiAJc3RhdGljIHVuc2lnbmVkIGludCB0b3BfaW5kZXhbMjU2XTsKKwljb25zdCB1bnNpZ25lZCBoYXNoc3ogPSB0aGVfaGFzaF9hbGdvLT5yYXdzejsKIAogCWlmIChhcmdjICE9IDEpCiAJCXVzYWdlKHNob3dfaW5kZXhfdXNhZ2UpOwpAQCAtMzYsMjMgKzM3LDIzIEBACiAJfQogCWlmICh2ZXJzaW9uID09IDEpIHsKIAkJZm9yIChpID0gMDsgaSA8IG5yOyBpKyspIHsKLQkJCXVuc2lnbmVkIGludCBvZmZzZXQsIGVudHJ5WzZdOworCQkJdW5zaWduZWQgaW50IG9mZnNldCwgZW50cnlbKEdJVF9NQVhfUkFXU1ogKyA0KSAvIHNpemVvZih1bnNpZ25lZCBpbnQpXTsKIAotCQkJaWYgKGZyZWFkKGVudHJ5LCA0ICsgMjAsIDEsIHN0ZGluKSAhPSAxKQorCQkJaWYgKGZyZWFkKGVudHJ5LCA0ICsgaGFzaHN6LCAxLCBzdGRpbikgIT0gMSkKIAkJCQlkaWUoInVuYWJsZSB0byByZWFkIGVudHJ5ICV1LyV1IiwgaSwgbnIpOwogCQkJb2Zmc2V0ID0gbnRvaGwoZW50cnlbMF0pOwotCQkJcHJpbnRmKCIldSAlc1xuIiwgb2Zmc2V0LCBzaGExX3RvX2hleCgodm9pZCAqKShlbnRyeSsxKSkpOworCQkJcHJpbnRmKCIldSAlc1xuIiwgb2Zmc2V0LCBoYXNoX3RvX2hleCgodm9pZCAqKShlbnRyeSsxKSkpOwogCQl9CiAJfSBlbHNlIHsKIAkJdW5zaWduZWQgb2ZmNjRfbnIgPSAwOwogCQlzdHJ1Y3QgewotCQkJdW5zaWduZWQgY2hhciBzaGExWzIwXTsKKwkJCXN0cnVjdCBvYmplY3RfaWQgb2lkOwogCQkJdWludDMyX3QgY3JjOwogCQkJdWludDMyX3Qgb2ZmOwogCQl9ICplbnRyaWVzOwogCQlBTExPQ19BUlJBWShlbnRyaWVzLCBucik7CiAJCWZvciAoaSA9IDA7IGkgPCBucjsgaSsrKQotCQkJaWYgKGZyZWFkKGVudHJpZXNbaV0uc2hhMSwgMjAsIDEsIHN0ZGluKSAhPSAxKQorCQkJaWYgKGZyZWFkKGVudHJpZXNbaV0ub2lkLmhhc2gsIGhhc2hzeiwgMSwgc3RkaW4pICE9IDEpCiAJCQkJZGllKCJ1bmFibGUgdG8gcmVhZCBzaGExICV1LyV1IiwgaSwgbnIpOwogCQlmb3IgKGkgPSAwOyBpIDwgbnI7IGkrKykKIAkJCWlmIChmcmVhZCgmZW50cmllc1tpXS5jcmMsIDQsIDEsIHN0ZGluKSAhPSAxKQpAQCAtNzcsNyArNzgsNyBAQAogCQkJfQogCQkJcHJpbnRmKCIlIiBQUkl1TUFYICIgJXMgKCUwOCJQUkl4MzIiKVxuIiwKIAkJCSAgICAgICAodWludG1heF90KSBvZmZzZXQsCi0JCQkgICAgICAgc2hhMV90b19oZXgoZW50cmllc1tpXS5zaGExKSwKKwkJCSAgICAgICBvaWRfdG9faGV4KCZlbnRyaWVzW2ldLm9pZCksCiAJCQkgICAgICAgbnRvaGwoZW50cmllc1tpXS5jcmMpKTsKIAkJfQogCQlmcmVlKGVudHJpZXMpOwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi9zaG93LXJlZi5jIGIvYnVpbHRpbi9zaG93LXJlZi5jCmluZGV4IGVkODg4ZmYuLjY0NTZkYTcgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vc2hvdy1yZWYuYworKysgYi9idWlsdGluL3Nob3ctcmVmLmMKQEAgLTEsNSArMSw2IEBACiAjaW5jbHVkZSAiYnVpbHRpbi5oIgogI2luY2x1ZGUgImNhY2hlLmgiCisjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAicmVmcy5oIgogI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgogI2luY2x1ZGUgIm9iamVjdC5oIgpAQCAtMjMsNyArMjQsNyBAQAogCWNvbnN0IGNoYXIgKmhleDsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIHBlZWxlZDsKIAotCWlmICghaGFzX3NoYTFfZmlsZShvaWQtPmhhc2gpKQorCWlmICghaGFzX29iamVjdF9maWxlKG9pZCkpCiAJCWRpZSgiZ2l0IHNob3ctcmVmOiBiYWQgcmVmICVzICglcykiLCByZWZuYW1lLAogCQkgICAgb2lkX3RvX2hleChvaWQpKTsKIApAQCAtMTgyLDYgKzE4Myw4IEBACiAKIGludCBjbWRfc2hvd19yZWYoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCiB7CisJZ2l0X2NvbmZpZyhnaXRfZGVmYXVsdF9jb25maWcsIE5VTEwpOworCiAJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LCBzaG93X3JlZl9vcHRpb25zLAogCQkJICAgICBzaG93X3JlZl91c2FnZSwgMCk7CiAKZGlmZiAtLWdpdCBhL2J1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmMgYi9idWlsdGluL3NwYXJzZS1jaGVja291dC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc0MGRhNGIKLS0tIC9kZXYvbnVsbAorKysgYi9idWlsdGluL3NwYXJzZS1jaGVja291dC5jCkBAIC0wLDAgKzEsNjMxIEBACisjaW5jbHVkZSAiYnVpbHRpbi5oIgorI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgImRpci5oIgorI2luY2x1ZGUgInBhcnNlLW9wdGlvbnMuaCIKKyNpbmNsdWRlICJwYXRoc3BlYy5oIgorI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKKyNpbmNsdWRlICJydW4tY29tbWFuZC5oIgorI2luY2x1ZGUgInN0cmJ1Zi5oIgorI2luY2x1ZGUgInN0cmluZy1saXN0LmgiCisjaW5jbHVkZSAiY2FjaGUuaCIKKyNpbmNsdWRlICJjYWNoZS10cmVlLmgiCisjaW5jbHVkZSAibG9ja2ZpbGUuaCIKKyNpbmNsdWRlICJyZXNvbHZlLXVuZG8uaCIKKyNpbmNsdWRlICJ1bnBhY2stdHJlZXMuaCIKKyNpbmNsdWRlICJ3dC1zdGF0dXMuaCIKKyNpbmNsdWRlICJxdW90ZS5oIgorCitzdGF0aWMgY29uc3QgY2hhciAqZW1wdHlfYmFzZSA9ICIiOworCitzdGF0aWMgY2hhciBjb25zdCAqIGNvbnN0IGJ1aWx0aW5fc3BhcnNlX2NoZWNrb3V0X3VzYWdlW10gPSB7CisJTl8oImdpdCBzcGFyc2UtY2hlY2tvdXQgKGluaXR8bGlzdHxzZXR8YWRkfGRpc2FibGUpIDxvcHRpb25zPiIpLAorCU5VTEwKK307CisKK3N0YXRpYyBjaGFyICpnZXRfc3BhcnNlX2NoZWNrb3V0X2ZpbGVuYW1lKHZvaWQpCit7CisJcmV0dXJuIGdpdF9wYXRoZHVwKCJpbmZvL3NwYXJzZS1jaGVja291dCIpOworfQorCitzdGF0aWMgdm9pZCB3cml0ZV9wYXR0ZXJuc190b19maWxlKEZJTEUgKmZwLCBzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbCkKK3sKKwlpbnQgaTsKKworCWZvciAoaSA9IDA7IGkgPCBwbC0+bnI7IGkrKykgeworCQlzdHJ1Y3QgcGF0aF9wYXR0ZXJuICpwID0gcGwtPnBhdHRlcm5zW2ldOworCisJCWlmIChwLT5mbGFncyAmIFBBVFRFUk5fRkxBR19ORUdBVElWRSkKKwkJCWZwcmludGYoZnAsICIhIik7CisKKwkJZnByaW50ZihmcCwgIiVzIiwgcC0+cGF0dGVybik7CisKKwkJaWYgKHAtPmZsYWdzICYgUEFUVEVSTl9GTEFHX01VU1RCRURJUikKKwkJCWZwcmludGYoZnAsICIvIik7CisKKwkJZnByaW50ZihmcCwgIlxuIik7CisJfQorfQorCitzdGF0aWMgaW50IHNwYXJzZV9jaGVja291dF9saXN0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwlzdHJ1Y3QgcGF0dGVybl9saXN0IHBsOworCWNoYXIgKnNwYXJzZV9maWxlbmFtZTsKKwlpbnQgcmVzOworCisJbWVtc2V0KCZwbCwgMCwgc2l6ZW9mKHBsKSk7CisKKwlwbC51c2VfY29uZV9wYXR0ZXJucyA9IGNvcmVfc3BhcnNlX2NoZWNrb3V0X2NvbmU7CisKKwlzcGFyc2VfZmlsZW5hbWUgPSBnZXRfc3BhcnNlX2NoZWNrb3V0X2ZpbGVuYW1lKCk7CisJcmVzID0gYWRkX3BhdHRlcm5zX2Zyb21fZmlsZV90b19saXN0KHNwYXJzZV9maWxlbmFtZSwgIiIsIDAsICZwbCwgTlVMTCk7CisJZnJlZShzcGFyc2VfZmlsZW5hbWUpOworCisJaWYgKHJlcyA8IDApIHsKKwkJd2FybmluZyhfKCJ0aGlzIHdvcmt0cmVlIGlzIG5vdCBzcGFyc2UgKHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBub3QgZXhpc3QpIikpOworCQlyZXR1cm4gMDsKKwl9CisKKwlpZiAocGwudXNlX2NvbmVfcGF0dGVybnMpIHsKKwkJaW50IGk7CisJCXN0cnVjdCBwYXR0ZXJuX2VudHJ5ICpwZTsKKwkJc3RydWN0IGhhc2htYXBfaXRlciBpdGVyOworCQlzdHJ1Y3Qgc3RyaW5nX2xpc3Qgc2wgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKKworCQloYXNobWFwX2Zvcl9lYWNoX2VudHJ5KCZwbC5yZWN1cnNpdmVfaGFzaG1hcCwgJml0ZXIsIHBlLCBlbnQpIHsKKwkJCS8qIHBlLT5wYXR0ZXJuIHN0YXJ0cyB3aXRoICIvIiwgc2tpcCBpdCAqLworCQkJc3RyaW5nX2xpc3RfaW5zZXJ0KCZzbCwgcGUtPnBhdHRlcm4gKyAxKTsKKwkJfQorCisJCXN0cmluZ19saXN0X3NvcnQoJnNsKTsKKworCQlmb3IgKGkgPSAwOyBpIDwgc2wubnI7IGkrKykgeworCQkJcXVvdGVfY19zdHlsZShzbC5pdGVtc1tpXS5zdHJpbmcsIE5VTEwsIHN0ZG91dCwgMCk7CisJCQlwcmludGYoIlxuIik7CisJCX0KKworCQlyZXR1cm4gMDsKKwl9CisKKwl3cml0ZV9wYXR0ZXJuc190b19maWxlKHN0ZG91dCwgJnBsKTsKKwljbGVhcl9wYXR0ZXJuX2xpc3QoJnBsKTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IHVwZGF0ZV93b3JraW5nX2RpcmVjdG9yeShzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbCkKK3sKKwlpbnQgcmVzdWx0ID0gMDsKKwlzdHJ1Y3QgdW5wYWNrX3RyZWVzX29wdGlvbnMgbzsKKwlzdHJ1Y3QgbG9ja19maWxlIGxvY2tfZmlsZSA9IExPQ0tfSU5JVDsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKKwlzdHJ1Y3QgdHJlZSAqdHJlZTsKKwlzdHJ1Y3QgdHJlZV9kZXNjIHQ7CisJc3RydWN0IHJlcG9zaXRvcnkgKnIgPSB0aGVfcmVwb3NpdG9yeTsKKworCWlmIChyZXBvX3JlYWRfaW5kZXhfdW5tZXJnZWQocikpCisJCWRpZShfKCJ5b3UgbmVlZCB0byByZXNvbHZlIHlvdXIgY3VycmVudCBpbmRleCBmaXJzdCIpKTsKKworCWlmIChnZXRfb2lkKCJIRUFEIiwgJm9pZCkpCisJCXJldHVybiAwOworCisJdHJlZSA9IHBhcnNlX3RyZWVfaW5kaXJlY3QoJm9pZCk7CisJcGFyc2VfdHJlZSh0cmVlKTsKKwlpbml0X3RyZWVfZGVzYygmdCwgdHJlZS0+YnVmZmVyLCB0cmVlLT5zaXplKTsKKworCW1lbXNldCgmbywgMCwgc2l6ZW9mKG8pKTsKKwlvLnZlcmJvc2VfdXBkYXRlID0gaXNhdHR5KDIpOworCW8ubWVyZ2UgPSAxOworCW8udXBkYXRlID0gMTsKKwlvLmZuID0gb25ld2F5X21lcmdlOworCW8uaGVhZF9pZHggPSAtMTsKKwlvLnNyY19pbmRleCA9IHItPmluZGV4OworCW8uZHN0X2luZGV4ID0gci0+aW5kZXg7CisJby5za2lwX3NwYXJzZV9jaGVja291dCA9IDA7CisJby5wbCA9IHBsOworCW8ua2VlcF9wYXR0ZXJuX2xpc3QgPSAhIXBsOworCisJcmVzb2x2ZV91bmRvX2NsZWFyX2luZGV4KHItPmluZGV4KTsKKwlzZXR1cF93b3JrX3RyZWUoKTsKKworCWNhY2hlX3RyZWVfZnJlZSgmci0+aW5kZXgtPmNhY2hlX3RyZWUpOworCisJcmVwb19ob2xkX2xvY2tlZF9pbmRleChyLCAmbG9ja19maWxlLCBMT0NLX0RJRV9PTl9FUlJPUik7CisKKwljb3JlX2FwcGx5X3NwYXJzZV9jaGVja291dCA9IDE7CisJcmVzdWx0ID0gdW5wYWNrX3RyZWVzKDEsICZ0LCAmbyk7CisKKwlpZiAoIXJlc3VsdCkgeworCQlwcmltZV9jYWNoZV90cmVlKHIsIHItPmluZGV4LCB0cmVlKTsKKwkJd3JpdGVfbG9ja2VkX2luZGV4KHItPmluZGV4LCAmbG9ja19maWxlLCBDT01NSVRfTE9DSyk7CisJfSBlbHNlCisJCXJvbGxiYWNrX2xvY2tfZmlsZSgmbG9ja19maWxlKTsKKworCXJldHVybiByZXN1bHQ7Cit9CisKK3N0YXRpYyBjaGFyICplc2NhcGVkX3BhdHRlcm4oY2hhciAqcGF0dGVybikKK3sKKwljaGFyICpwID0gcGF0dGVybjsKKwlzdHJ1Y3Qgc3RyYnVmIGZpbmFsID0gU1RSQlVGX0lOSVQ7CisKKwl3aGlsZSAoKnApIHsKKwkJaWYgKGlzX2dsb2Jfc3BlY2lhbCgqcCkpCisJCQlzdHJidWZfYWRkY2goJmZpbmFsLCAnXFwnKTsKKworCQlzdHJidWZfYWRkY2goJmZpbmFsLCAqcCk7CisJCXArKzsKKwl9CisKKwlyZXR1cm4gc3RyYnVmX2RldGFjaCgmZmluYWwsIE5VTEwpOworfQorCitzdGF0aWMgdm9pZCB3cml0ZV9jb25lX3RvX2ZpbGUoRklMRSAqZnAsIHN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsKQoreworCWludCBpOworCXN0cnVjdCBwYXR0ZXJuX2VudHJ5ICpwZTsKKwlzdHJ1Y3QgaGFzaG1hcF9pdGVyIGl0ZXI7CisJc3RydWN0IHN0cmluZ19saXN0IHNsID0gU1RSSU5HX0xJU1RfSU5JVF9EVVA7CisJc3RydWN0IHN0cmJ1ZiBwYXJlbnRfcGF0dGVybiA9IFNUUkJVRl9JTklUOworCisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeSgmcGwtPnBhcmVudF9oYXNobWFwLCAmaXRlciwgcGUsIGVudCkgeworCQlpZiAoaGFzaG1hcF9nZXRfZW50cnkoJnBsLT5yZWN1cnNpdmVfaGFzaG1hcCwgcGUsIGVudCwgTlVMTCkpCisJCQljb250aW51ZTsKKworCQlpZiAoIWhhc2htYXBfY29udGFpbnNfcGFyZW50KCZwbC0+cmVjdXJzaXZlX2hhc2htYXAsCisJCQkJCSAgICAgcGUtPnBhdHRlcm4sCisJCQkJCSAgICAgJnBhcmVudF9wYXR0ZXJuKSkKKwkJCXN0cmluZ19saXN0X2luc2VydCgmc2wsIHBlLT5wYXR0ZXJuKTsKKwl9CisKKwlzdHJpbmdfbGlzdF9zb3J0KCZzbCk7CisJc3RyaW5nX2xpc3RfcmVtb3ZlX2R1cGxpY2F0ZXMoJnNsLCAwKTsKKworCWZwcmludGYoZnAsICIvKlxuIS8qL1xuIik7CisKKwlmb3IgKGkgPSAwOyBpIDwgc2wubnI7IGkrKykgeworCQljaGFyICpwYXR0ZXJuID0gZXNjYXBlZF9wYXR0ZXJuKHNsLml0ZW1zW2ldLnN0cmluZyk7CisKKwkJaWYgKHN0cmxlbihwYXR0ZXJuKSkKKwkJCWZwcmludGYoZnAsICIlcy9cbiElcy8qL1xuIiwgcGF0dGVybiwgcGF0dGVybik7CisJCWZyZWUocGF0dGVybik7CisJfQorCisJc3RyaW5nX2xpc3RfY2xlYXIoJnNsLCAwKTsKKworCWhhc2htYXBfZm9yX2VhY2hfZW50cnkoJnBsLT5yZWN1cnNpdmVfaGFzaG1hcCwgJml0ZXIsIHBlLCBlbnQpIHsKKwkJaWYgKCFoYXNobWFwX2NvbnRhaW5zX3BhcmVudCgmcGwtPnJlY3Vyc2l2ZV9oYXNobWFwLAorCQkJCQkgICAgIHBlLT5wYXR0ZXJuLAorCQkJCQkgICAgICZwYXJlbnRfcGF0dGVybikpCisJCQlzdHJpbmdfbGlzdF9pbnNlcnQoJnNsLCBwZS0+cGF0dGVybik7CisJfQorCisJc3RyYnVmX3JlbGVhc2UoJnBhcmVudF9wYXR0ZXJuKTsKKworCXN0cmluZ19saXN0X3NvcnQoJnNsKTsKKwlzdHJpbmdfbGlzdF9yZW1vdmVfZHVwbGljYXRlcygmc2wsIDApOworCisJZm9yIChpID0gMDsgaSA8IHNsLm5yOyBpKyspIHsKKwkJY2hhciAqcGF0dGVybiA9IGVzY2FwZWRfcGF0dGVybihzbC5pdGVtc1tpXS5zdHJpbmcpOworCQlmcHJpbnRmKGZwLCAiJXMvXG4iLCBwYXR0ZXJuKTsKKwkJZnJlZShwYXR0ZXJuKTsKKwl9Cit9CisKK3N0YXRpYyBpbnQgd3JpdGVfcGF0dGVybnNfYW5kX3VwZGF0ZShzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbCkKK3sKKwljaGFyICpzcGFyc2VfZmlsZW5hbWU7CisJRklMRSAqZnA7CisJaW50IGZkOworCXN0cnVjdCBsb2NrX2ZpbGUgbGsgPSBMT0NLX0lOSVQ7CisJaW50IHJlc3VsdDsKKworCXNwYXJzZV9maWxlbmFtZSA9IGdldF9zcGFyc2VfY2hlY2tvdXRfZmlsZW5hbWUoKTsKKworCWlmIChzYWZlX2NyZWF0ZV9sZWFkaW5nX2RpcmVjdG9yaWVzKHNwYXJzZV9maWxlbmFtZSkpCisJCWRpZShfKCJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSBmb3Igc3BhcnNlLWNoZWNrb3V0IGZpbGUiKSk7CisKKwlmZCA9IGhvbGRfbG9ja19maWxlX2Zvcl91cGRhdGUoJmxrLCBzcGFyc2VfZmlsZW5hbWUsCisJCQkJICAgICAgTE9DS19ESUVfT05fRVJST1IpOworCisJcmVzdWx0ID0gdXBkYXRlX3dvcmtpbmdfZGlyZWN0b3J5KHBsKTsKKwlpZiAocmVzdWx0KSB7CisJCXJvbGxiYWNrX2xvY2tfZmlsZSgmbGspOworCQlmcmVlKHNwYXJzZV9maWxlbmFtZSk7CisJCWNsZWFyX3BhdHRlcm5fbGlzdChwbCk7CisJCXVwZGF0ZV93b3JraW5nX2RpcmVjdG9yeShOVUxMKTsKKwkJcmV0dXJuIHJlc3VsdDsKKwl9CisKKwlmcCA9IHhmZG9wZW4oZmQsICJ3Iik7CisKKwlpZiAoY29yZV9zcGFyc2VfY2hlY2tvdXRfY29uZSkKKwkJd3JpdGVfY29uZV90b19maWxlKGZwLCBwbCk7CisJZWxzZQorCQl3cml0ZV9wYXR0ZXJuc190b19maWxlKGZwLCBwbCk7CisKKwlmZmx1c2goZnApOworCWNvbW1pdF9sb2NrX2ZpbGUoJmxrKTsKKworCWZyZWUoc3BhcnNlX2ZpbGVuYW1lKTsKKwljbGVhcl9wYXR0ZXJuX2xpc3QocGwpOworCisJcmV0dXJuIDA7Cit9CisKK2VudW0gc3BhcnNlX2NoZWNrb3V0X21vZGUgeworCU1PREVfTk9fUEFUVEVSTlMgPSAwLAorCU1PREVfQUxMX1BBVFRFUk5TID0gMSwKKwlNT0RFX0NPTkVfUEFUVEVSTlMgPSAyLAorfTsKKworc3RhdGljIGludCBzZXRfY29uZmlnKGVudW0gc3BhcnNlX2NoZWNrb3V0X21vZGUgbW9kZSkKK3sKKwljb25zdCBjaGFyICpjb25maWdfcGF0aDsKKworCWlmIChnaXRfY29uZmlnX3NldF9nZW50bHkoImV4dGVuc2lvbnMud29ya3RyZWVDb25maWciLCAidHJ1ZSIpKSB7CisJCWVycm9yKF8oImZhaWxlZCB0byBzZXQgZXh0ZW5zaW9ucy53b3JrdHJlZUNvbmZpZyBzZXR0aW5nIikpOworCQlyZXR1cm4gMTsKKwl9CisKKwljb25maWdfcGF0aCA9IGdpdF9wYXRoKCJjb25maWcud29ya3RyZWUiKTsKKwlnaXRfY29uZmlnX3NldF9pbl9maWxlX2dlbnRseShjb25maWdfcGF0aCwKKwkJCQkgICAgICAiY29yZS5zcGFyc2VDaGVja291dCIsCisJCQkJICAgICAgbW9kZSA/ICJ0cnVlIiA6IE5VTEwpOworCisJZ2l0X2NvbmZpZ19zZXRfaW5fZmlsZV9nZW50bHkoY29uZmlnX3BhdGgsCisJCQkJICAgICAgImNvcmUuc3BhcnNlQ2hlY2tvdXRDb25lIiwKKwkJCQkgICAgICBtb2RlID09IE1PREVfQ09ORV9QQVRURVJOUyA/ICJ0cnVlIiA6IE5VTEwpOworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBjaGFyIGNvbnN0ICogY29uc3QgYnVpbHRpbl9zcGFyc2VfY2hlY2tvdXRfaW5pdF91c2FnZVtdID0geworCU5fKCJnaXQgc3BhcnNlLWNoZWNrb3V0IGluaXQgWy0tY29uZV0iKSwKKwlOVUxMCit9OworCitzdGF0aWMgc3RydWN0IHNwYXJzZV9jaGVja291dF9pbml0X29wdHMgeworCWludCBjb25lX21vZGU7Cit9IGluaXRfb3B0czsKKworc3RhdGljIGludCBzcGFyc2VfY2hlY2tvdXRfaW5pdChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpCit7CisJc3RydWN0IHBhdHRlcm5fbGlzdCBwbDsKKwljaGFyICpzcGFyc2VfZmlsZW5hbWU7CisJaW50IHJlczsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKKwlpbnQgbW9kZTsKKwlzdHJ1Y3Qgc3RyYnVmIHBhdHRlcm4gPSBTVFJCVUZfSU5JVDsKKworCXN0YXRpYyBzdHJ1Y3Qgb3B0aW9uIGJ1aWx0aW5fc3BhcnNlX2NoZWNrb3V0X2luaXRfb3B0aW9uc1tdID0geworCQlPUFRfQk9PTCgwLCAiY29uZSIsICZpbml0X29wdHMuY29uZV9tb2RlLAorCQkJIE5fKCJpbml0aWFsaXplIHRoZSBzcGFyc2UtY2hlY2tvdXQgaW4gY29uZSBtb2RlIikpLAorCQlPUFRfRU5EKCksCisJfTsKKworCXJlcG9fcmVhZF9pbmRleCh0aGVfcmVwb3NpdG9yeSk7CisJcmVxdWlyZV9jbGVhbl93b3JrX3RyZWUodGhlX3JlcG9zaXRvcnksCisJCQkJTl8oImluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IiksIE5VTEwsIDEsIDApOworCisJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgTlVMTCwKKwkJCSAgICAgYnVpbHRpbl9zcGFyc2VfY2hlY2tvdXRfaW5pdF9vcHRpb25zLAorCQkJICAgICBidWlsdGluX3NwYXJzZV9jaGVja291dF9pbml0X3VzYWdlLCAwKTsKKworCWlmIChpbml0X29wdHMuY29uZV9tb2RlKSB7CisJCW1vZGUgPSBNT0RFX0NPTkVfUEFUVEVSTlM7CisJCWNvcmVfc3BhcnNlX2NoZWNrb3V0X2NvbmUgPSAxOworCX0gZWxzZQorCQltb2RlID0gTU9ERV9BTExfUEFUVEVSTlM7CisKKwlpZiAoc2V0X2NvbmZpZyhtb2RlKSkKKwkJcmV0dXJuIDE7CisKKwltZW1zZXQoJnBsLCAwLCBzaXplb2YocGwpKTsKKworCXNwYXJzZV9maWxlbmFtZSA9IGdldF9zcGFyc2VfY2hlY2tvdXRfZmlsZW5hbWUoKTsKKwlyZXMgPSBhZGRfcGF0dGVybnNfZnJvbV9maWxlX3RvX2xpc3Qoc3BhcnNlX2ZpbGVuYW1lLCAiIiwgMCwgJnBsLCBOVUxMKTsKKworCS8qIElmIHdlIGFscmVhZHkgaGF2ZSBhIHNwYXJzZS1jaGVja291dCBmaWxlLCB1c2UgaXQuICovCisJaWYgKHJlcyA+PSAwKSB7CisJCWZyZWUoc3BhcnNlX2ZpbGVuYW1lKTsKKwkJY29yZV9hcHBseV9zcGFyc2VfY2hlY2tvdXQgPSAxOworCQlyZXR1cm4gdXBkYXRlX3dvcmtpbmdfZGlyZWN0b3J5KE5VTEwpOworCX0KKworCWlmIChnZXRfb2lkKCJIRUFEIiwgJm9pZCkpIHsKKwkJRklMRSAqZnA7CisKKwkJLyogYXNzdW1lIHdlIGFyZSBpbiBhIGZyZXNoIHJlcG8sIGJ1dCB1cGRhdGUgdGhlIHNwYXJzZS1jaGVja291dCBmaWxlICovCisJCWZwID0geGZvcGVuKHNwYXJzZV9maWxlbmFtZSwgInciKTsKKwkJaWYgKCFmcCkKKwkJCWRpZShfKCJmYWlsZWQgdG8gb3BlbiAnJXMnIiksIHNwYXJzZV9maWxlbmFtZSk7CisKKwkJZnJlZShzcGFyc2VfZmlsZW5hbWUpOworCQlmcHJpbnRmKGZwLCAiLypcbiEvKi9cbiIpOworCQlmY2xvc2UoZnApOworCQlyZXR1cm4gMDsKKwl9CisKKwlzdHJidWZfYWRkc3RyKCZwYXR0ZXJuLCAiLyoiKTsKKwlhZGRfcGF0dGVybihzdHJidWZfZGV0YWNoKCZwYXR0ZXJuLCBOVUxMKSwgZW1wdHlfYmFzZSwgMCwgJnBsLCAwKTsKKwlzdHJidWZfYWRkc3RyKCZwYXR0ZXJuLCAiIS8qLyIpOworCWFkZF9wYXR0ZXJuKHN0cmJ1Zl9kZXRhY2goJnBhdHRlcm4sIE5VTEwpLCBlbXB0eV9iYXNlLCAwLCAmcGwsIDApOworCisJcmV0dXJuIHdyaXRlX3BhdHRlcm5zX2FuZF91cGRhdGUoJnBsKTsKK30KKworc3RhdGljIHZvaWQgaW5zZXJ0X3JlY3Vyc2l2ZV9wYXR0ZXJuKHN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsLCBzdHJ1Y3Qgc3RyYnVmICpwYXRoKQoreworCXN0cnVjdCBwYXR0ZXJuX2VudHJ5ICplID0geG1hbGxvYyhzaXplb2YoKmUpKTsKKwllLT5wYXR0ZXJubGVuID0gcGF0aC0+bGVuOworCWUtPnBhdHRlcm4gPSBzdHJidWZfZGV0YWNoKHBhdGgsIE5VTEwpOworCWhhc2htYXBfZW50cnlfaW5pdCgmZS0+ZW50LAorCQkJICAgaWdub3JlX2Nhc2UgPworCQkJICAgc3RyaWhhc2goZS0+cGF0dGVybikgOgorCQkJICAgc3RyaGFzaChlLT5wYXR0ZXJuKSk7CisKKwloYXNobWFwX2FkZCgmcGwtPnJlY3Vyc2l2ZV9oYXNobWFwLCAmZS0+ZW50KTsKKworCXdoaWxlIChlLT5wYXR0ZXJubGVuKSB7CisJCWNoYXIgKnNsYXNoID0gc3RycmNocihlLT5wYXR0ZXJuLCAnLycpOworCQljaGFyICpvbGRwYXR0ZXJuID0gZS0+cGF0dGVybjsKKwkJc2l6ZV90IG5ld2xlbjsKKworCQlpZiAoc2xhc2ggPT0gZS0+cGF0dGVybikKKwkJCWJyZWFrOworCisJCW5ld2xlbiA9IHNsYXNoIC0gZS0+cGF0dGVybjsKKwkJZSA9IHhtYWxsb2Moc2l6ZW9mKHN0cnVjdCBwYXR0ZXJuX2VudHJ5KSk7CisJCWUtPnBhdHRlcm5sZW4gPSBuZXdsZW47CisJCWUtPnBhdHRlcm4gPSB4c3RybmR1cChvbGRwYXR0ZXJuLCBuZXdsZW4pOworCQloYXNobWFwX2VudHJ5X2luaXQoJmUtPmVudCwKKwkJCQkgICBpZ25vcmVfY2FzZSA/CisJCQkJICAgc3RyaWhhc2goZS0+cGF0dGVybikgOgorCQkJCSAgIHN0cmhhc2goZS0+cGF0dGVybikpOworCisJCWlmICghaGFzaG1hcF9nZXRfZW50cnkoJnBsLT5wYXJlbnRfaGFzaG1hcCwgZSwgZW50LCBOVUxMKSkKKwkJCWhhc2htYXBfYWRkKCZwbC0+cGFyZW50X2hhc2htYXAsICZlLT5lbnQpOworCX0KK30KKworc3RhdGljIHZvaWQgc3RyYnVmX3RvX2NvbmVfcGF0dGVybihzdHJ1Y3Qgc3RyYnVmICpsaW5lLCBzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbCkKK3sKKwlzdHJidWZfdHJpbShsaW5lKTsKKworCXN0cmJ1Zl90cmltX3RyYWlsaW5nX2Rpcl9zZXAobGluZSk7CisKKwlpZiAoc3RyYnVmX25vcm1hbGl6ZV9wYXRoKGxpbmUpKQorCQlkaWUoXygiY291bGQgbm90IG5vcm1hbGl6ZSBwYXRoICVzIiksIGxpbmUtPmJ1Zik7CisKKwlpZiAoIWxpbmUtPmxlbikKKwkJcmV0dXJuOworCisJaWYgKGxpbmUtPmJ1ZlswXSAhPSAnLycpCisJCXN0cmJ1Zl9pbnNlcnRzdHIobGluZSwgMCwgIi8iKTsKKworCWluc2VydF9yZWN1cnNpdmVfcGF0dGVybihwbCwgbGluZSk7Cit9CisKK3N0YXRpYyBjaGFyIGNvbnN0ICogY29uc3QgYnVpbHRpbl9zcGFyc2VfY2hlY2tvdXRfc2V0X3VzYWdlW10gPSB7CisJTl8oImdpdCBzcGFyc2UtY2hlY2tvdXQgKHNldHxhZGQpICgtLXN0ZGluIHwgPHBhdHRlcm5zPikiKSwKKwlOVUxMCit9OworCitzdGF0aWMgc3RydWN0IHNwYXJzZV9jaGVja291dF9zZXRfb3B0cyB7CisJaW50IHVzZV9zdGRpbjsKK30gc2V0X29wdHM7CisKK3N0YXRpYyB2b2lkIGFkZF9wYXR0ZXJuc19mcm9tX2lucHV0KHN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsLAorCQkJCSAgICBpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpCit7CisJaW50IGk7CisJaWYgKGNvcmVfc3BhcnNlX2NoZWNrb3V0X2NvbmUpIHsKKwkJc3RydWN0IHN0cmJ1ZiBsaW5lID0gU1RSQlVGX0lOSVQ7CisKKwkJaGFzaG1hcF9pbml0KCZwbC0+cmVjdXJzaXZlX2hhc2htYXAsIHBsX2hhc2htYXBfY21wLCBOVUxMLCAwKTsKKwkJaGFzaG1hcF9pbml0KCZwbC0+cGFyZW50X2hhc2htYXAsIHBsX2hhc2htYXBfY21wLCBOVUxMLCAwKTsKKwkJcGwtPnVzZV9jb25lX3BhdHRlcm5zID0gMTsKKworCQlpZiAoc2V0X29wdHMudXNlX3N0ZGluKSB7CisJCQlzdHJ1Y3Qgc3RyYnVmIHVucXVvdGVkID0gU1RSQlVGX0lOSVQ7CisJCQl3aGlsZSAoIXN0cmJ1Zl9nZXRsaW5lKCZsaW5lLCBzdGRpbikpIHsKKwkJCQlpZiAobGluZS5idWZbMF0gPT0gJyInKSB7CisJCQkJCXN0cmJ1Zl9yZXNldCgmdW5xdW90ZWQpOworCQkJCQlpZiAodW5xdW90ZV9jX3N0eWxlKCZ1bnF1b3RlZCwgbGluZS5idWYsIE5VTEwpKQorCQkJCQkJZGllKF8oInVuYWJsZSB0byB1bnF1b3RlIEMtc3R5bGUgc3RyaW5nICclcyciKSwKKwkJCQkJCWxpbmUuYnVmKTsKKworCQkJCQlzdHJidWZfc3dhcCgmdW5xdW90ZWQsICZsaW5lKTsKKwkJCQl9CisKKwkJCQlzdHJidWZfdG9fY29uZV9wYXR0ZXJuKCZsaW5lLCBwbCk7CisJCQl9CisKKwkJCXN0cmJ1Zl9yZWxlYXNlKCZ1bnF1b3RlZCk7CisJCX0gZWxzZSB7CisJCQlmb3IgKGkgPSAwOyBpIDwgYXJnYzsgaSsrKSB7CisJCQkJc3RyYnVmX3NldGxlbigmbGluZSwgMCk7CisJCQkJc3RyYnVmX2FkZHN0cigmbGluZSwgYXJndltpXSk7CisJCQkJc3RyYnVmX3RvX2NvbmVfcGF0dGVybigmbGluZSwgcGwpOworCQkJfQorCQl9CisJfSBlbHNlIHsKKwkJaWYgKHNldF9vcHRzLnVzZV9zdGRpbikgeworCQkJc3RydWN0IHN0cmJ1ZiBsaW5lID0gU1RSQlVGX0lOSVQ7CisKKwkJCXdoaWxlICghc3RyYnVmX2dldGxpbmUoJmxpbmUsIHN0ZGluKSkgeworCQkJCXNpemVfdCBsZW47CisJCQkJY2hhciAqYnVmID0gc3RyYnVmX2RldGFjaCgmbGluZSwgJmxlbik7CisJCQkJYWRkX3BhdHRlcm4oYnVmLCBlbXB0eV9iYXNlLCAwLCBwbCwgMCk7CisJCQl9CisJCX0gZWxzZSB7CisJCQlmb3IgKGkgPSAwOyBpIDwgYXJnYzsgaSsrKQorCQkJCWFkZF9wYXR0ZXJuKGFyZ3ZbaV0sIGVtcHR5X2Jhc2UsIDAsIHBsLCAwKTsKKwkJfQorCX0KK30KKworZW51bSBtb2RpZnlfdHlwZSB7CisJUkVQTEFDRSwKKwlBREQsCit9OworCitzdGF0aWMgdm9pZCBhZGRfcGF0dGVybnNfY29uZV9tb2RlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwKKwkJCQkgICBzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbCkKK3sKKwlzdHJ1Y3Qgc3RyYnVmIGJ1ZmZlciA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBwYXR0ZXJuX2VudHJ5ICpwZTsKKwlzdHJ1Y3QgaGFzaG1hcF9pdGVyIGl0ZXI7CisJc3RydWN0IHBhdHRlcm5fbGlzdCBleGlzdGluZzsKKwljaGFyICpzcGFyc2VfZmlsZW5hbWUgPSBnZXRfc3BhcnNlX2NoZWNrb3V0X2ZpbGVuYW1lKCk7CisKKwlhZGRfcGF0dGVybnNfZnJvbV9pbnB1dChwbCwgYXJnYywgYXJndik7CisKKwltZW1zZXQoJmV4aXN0aW5nLCAwLCBzaXplb2YoZXhpc3RpbmcpKTsKKwlleGlzdGluZy51c2VfY29uZV9wYXR0ZXJucyA9IGNvcmVfc3BhcnNlX2NoZWNrb3V0X2NvbmU7CisKKwlpZiAoYWRkX3BhdHRlcm5zX2Zyb21fZmlsZV90b19saXN0KHNwYXJzZV9maWxlbmFtZSwgIiIsIDAsCisJCQkJCSAgICZleGlzdGluZywgTlVMTCkpCisJCWRpZShfKCJ1bmFibGUgdG8gbG9hZCBleGlzdGluZyBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMiKSk7CisJZnJlZShzcGFyc2VfZmlsZW5hbWUpOworCisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeSgmZXhpc3RpbmcucmVjdXJzaXZlX2hhc2htYXAsICZpdGVyLCBwZSwgZW50KSB7CisJCWlmICghaGFzaG1hcF9jb250YWluc19wYXJlbnQoJnBsLT5yZWN1cnNpdmVfaGFzaG1hcCwKKwkJCQkJcGUtPnBhdHRlcm4sICZidWZmZXIpIHx8CisJCSAgICAhaGFzaG1hcF9jb250YWluc19wYXJlbnQoJnBsLT5wYXJlbnRfaGFzaG1hcCwKKwkJCQkJcGUtPnBhdHRlcm4sICZidWZmZXIpKSB7CisJCQlzdHJidWZfcmVzZXQoJmJ1ZmZlcik7CisJCQlzdHJidWZfYWRkc3RyKCZidWZmZXIsIHBlLT5wYXR0ZXJuKTsKKwkJCWluc2VydF9yZWN1cnNpdmVfcGF0dGVybihwbCwgJmJ1ZmZlcik7CisJCX0KKwl9CisKKwljbGVhcl9wYXR0ZXJuX2xpc3QoJmV4aXN0aW5nKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmZmVyKTsKK30KKworc3RhdGljIHZvaWQgYWRkX3BhdHRlcm5zX2xpdGVyYWwoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LAorCQkJCSBzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbCkKK3sKKwljaGFyICpzcGFyc2VfZmlsZW5hbWUgPSBnZXRfc3BhcnNlX2NoZWNrb3V0X2ZpbGVuYW1lKCk7CisJaWYgKGFkZF9wYXR0ZXJuc19mcm9tX2ZpbGVfdG9fbGlzdChzcGFyc2VfZmlsZW5hbWUsICIiLCAwLAorCQkJCQkgICBwbCwgTlVMTCkpCisJCWRpZShfKCJ1bmFibGUgdG8gbG9hZCBleGlzdGluZyBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMiKSk7CisJZnJlZShzcGFyc2VfZmlsZW5hbWUpOworCWFkZF9wYXR0ZXJuc19mcm9tX2lucHV0KHBsLCBhcmdjLCBhcmd2KTsKK30KKworc3RhdGljIGludCBtb2RpZnlfcGF0dGVybl9saXN0KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgZW51bSBtb2RpZnlfdHlwZSBtKQoreworCWludCByZXN1bHQ7CisJaW50IGNoYW5nZWRfY29uZmlnID0gMDsKKwlzdHJ1Y3QgcGF0dGVybl9saXN0IHBsOworCW1lbXNldCgmcGwsIDAsIHNpemVvZihwbCkpOworCisJc3dpdGNoIChtKSB7CisJY2FzZSBBREQ6CisJCWlmIChjb3JlX3NwYXJzZV9jaGVja291dF9jb25lKQorCQkJYWRkX3BhdHRlcm5zX2NvbmVfbW9kZShhcmdjLCBhcmd2LCAmcGwpOworCQllbHNlCisJCQlhZGRfcGF0dGVybnNfbGl0ZXJhbChhcmdjLCBhcmd2LCAmcGwpOworCQlicmVhazsKKworCWNhc2UgUkVQTEFDRToKKwkJYWRkX3BhdHRlcm5zX2Zyb21faW5wdXQoJnBsLCBhcmdjLCBhcmd2KTsKKwkJYnJlYWs7CisJfQorCisJaWYgKCFjb3JlX2FwcGx5X3NwYXJzZV9jaGVja291dCkgeworCQlzZXRfY29uZmlnKE1PREVfQUxMX1BBVFRFUk5TKTsKKwkJY29yZV9hcHBseV9zcGFyc2VfY2hlY2tvdXQgPSAxOworCQljaGFuZ2VkX2NvbmZpZyA9IDE7CisJfQorCisJcmVzdWx0ID0gd3JpdGVfcGF0dGVybnNfYW5kX3VwZGF0ZSgmcGwpOworCisJaWYgKHJlc3VsdCAmJiBjaGFuZ2VkX2NvbmZpZykKKwkJc2V0X2NvbmZpZyhNT0RFX05PX1BBVFRFUk5TKTsKKworCWNsZWFyX3BhdHRlcm5fbGlzdCgmcGwpOworCXJldHVybiByZXN1bHQ7Cit9CisKK3N0YXRpYyBpbnQgc3BhcnNlX2NoZWNrb3V0X3NldChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCwKKwkJCSAgICAgICBlbnVtIG1vZGlmeV90eXBlIG0pCit7CisJc3RhdGljIHN0cnVjdCBvcHRpb24gYnVpbHRpbl9zcGFyc2VfY2hlY2tvdXRfc2V0X29wdGlvbnNbXSA9IHsKKwkJT1BUX0JPT0woMCwgInN0ZGluIiwgJnNldF9vcHRzLnVzZV9zdGRpbiwKKwkJCSBOXygicmVhZCBwYXR0ZXJucyBmcm9tIHN0YW5kYXJkIGluIikpLAorCQlPUFRfRU5EKCksCisJfTsKKworCXJlcG9fcmVhZF9pbmRleCh0aGVfcmVwb3NpdG9yeSk7CisJcmVxdWlyZV9jbGVhbl93b3JrX3RyZWUodGhlX3JlcG9zaXRvcnksCisJCQkJTl8oInNldCBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMiKSwgTlVMTCwgMSwgMCk7CisKKwlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsCisJCQkgICAgIGJ1aWx0aW5fc3BhcnNlX2NoZWNrb3V0X3NldF9vcHRpb25zLAorCQkJICAgICBidWlsdGluX3NwYXJzZV9jaGVja291dF9zZXRfdXNhZ2UsCisJCQkgICAgIFBBUlNFX09QVF9LRUVQX1VOS05PV04pOworCisJcmV0dXJuIG1vZGlmeV9wYXR0ZXJuX2xpc3QoYXJnYywgYXJndiwgbSk7Cit9CisKK3N0YXRpYyBpbnQgc3BhcnNlX2NoZWNrb3V0X2Rpc2FibGUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQoreworCXN0cnVjdCBwYXR0ZXJuX2xpc3QgcGw7CisJc3RydWN0IHN0cmJ1ZiBtYXRjaF9hbGwgPSBTVFJCVUZfSU5JVDsKKworCXJlcG9fcmVhZF9pbmRleCh0aGVfcmVwb3NpdG9yeSk7CisJcmVxdWlyZV9jbGVhbl93b3JrX3RyZWUodGhlX3JlcG9zaXRvcnksCisJCQkJTl8oImRpc2FibGUgc3BhcnNlLWNoZWNrb3V0IiksIE5VTEwsIDEsIDApOworCisJbWVtc2V0KCZwbCwgMCwgc2l6ZW9mKHBsKSk7CisJaGFzaG1hcF9pbml0KCZwbC5yZWN1cnNpdmVfaGFzaG1hcCwgcGxfaGFzaG1hcF9jbXAsIE5VTEwsIDApOworCWhhc2htYXBfaW5pdCgmcGwucGFyZW50X2hhc2htYXAsIHBsX2hhc2htYXBfY21wLCBOVUxMLCAwKTsKKwlwbC51c2VfY29uZV9wYXR0ZXJucyA9IDA7CisJY29yZV9hcHBseV9zcGFyc2VfY2hlY2tvdXQgPSAxOworCisJc3RyYnVmX2FkZHN0cigmbWF0Y2hfYWxsLCAiLyoiKTsKKwlhZGRfcGF0dGVybihzdHJidWZfZGV0YWNoKCZtYXRjaF9hbGwsIE5VTEwpLCBlbXB0eV9iYXNlLCAwLCAmcGwsIDApOworCisJaWYgKHVwZGF0ZV93b3JraW5nX2RpcmVjdG9yeSgmcGwpKQorCQlkaWUoXygiZXJyb3Igd2hpbGUgcmVmcmVzaGluZyB3b3JraW5nIGRpcmVjdG9yeSIpKTsKKworCWNsZWFyX3BhdHRlcm5fbGlzdCgmcGwpOworCXJldHVybiBzZXRfY29uZmlnKE1PREVfTk9fUEFUVEVSTlMpOworfQorCitpbnQgY21kX3NwYXJzZV9jaGVja291dChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKK3sKKwlzdGF0aWMgc3RydWN0IG9wdGlvbiBidWlsdGluX3NwYXJzZV9jaGVja291dF9vcHRpb25zW10gPSB7CisJCU9QVF9FTkQoKSwKKwl9OworCisJaWYgKGFyZ2MgPT0gMiAmJiAhc3RyY21wKGFyZ3ZbMV0sICItaCIpKQorCQl1c2FnZV93aXRoX29wdGlvbnMoYnVpbHRpbl9zcGFyc2VfY2hlY2tvdXRfdXNhZ2UsCisJCQkJICAgYnVpbHRpbl9zcGFyc2VfY2hlY2tvdXRfb3B0aW9ucyk7CisKKwlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsCisJCQkgICAgIGJ1aWx0aW5fc3BhcnNlX2NoZWNrb3V0X29wdGlvbnMsCisJCQkgICAgIGJ1aWx0aW5fc3BhcnNlX2NoZWNrb3V0X3VzYWdlLAorCQkJICAgICBQQVJTRV9PUFRfU1RPUF9BVF9OT05fT1BUSU9OKTsKKworCWdpdF9jb25maWcoZ2l0X2RlZmF1bHRfY29uZmlnLCBOVUxMKTsKKworCWlmIChhcmdjID4gMCkgeworCQlpZiAoIXN0cmNtcChhcmd2WzBdLCAibGlzdCIpKQorCQkJcmV0dXJuIHNwYXJzZV9jaGVja291dF9saXN0KGFyZ2MsIGFyZ3YpOworCQlpZiAoIXN0cmNtcChhcmd2WzBdLCAiaW5pdCIpKQorCQkJcmV0dXJuIHNwYXJzZV9jaGVja291dF9pbml0KGFyZ2MsIGFyZ3YpOworCQlpZiAoIXN0cmNtcChhcmd2WzBdLCAic2V0IikpCisJCQlyZXR1cm4gc3BhcnNlX2NoZWNrb3V0X3NldChhcmdjLCBhcmd2LCBwcmVmaXgsIFJFUExBQ0UpOworCQlpZiAoIXN0cmNtcChhcmd2WzBdLCAiYWRkIikpCisJCQlyZXR1cm4gc3BhcnNlX2NoZWNrb3V0X3NldChhcmdjLCBhcmd2LCBwcmVmaXgsIEFERCk7CisJCWlmICghc3RyY21wKGFyZ3ZbMF0sICJkaXNhYmxlIikpCisJCQlyZXR1cm4gc3BhcnNlX2NoZWNrb3V0X2Rpc2FibGUoYXJnYywgYXJndik7CisJfQorCisJdXNhZ2Vfd2l0aF9vcHRpb25zKGJ1aWx0aW5fc3BhcnNlX2NoZWNrb3V0X3VzYWdlLAorCQkJICAgYnVpbHRpbl9zcGFyc2VfY2hlY2tvdXRfb3B0aW9ucyk7Cit9CmRpZmYgLS1naXQgYS9idWlsdGluL3N0YXNoLmMgYi9idWlsdGluL3N0YXNoLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzhhZjZjZQotLS0gL2Rldi9udWxsCisrKyBiL2J1aWx0aW4vc3Rhc2guYwpAQCAtMCwwICsxLDE2NTAgQEAKKyNkZWZpbmUgVVNFX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUworI2luY2x1ZGUgImJ1aWx0aW4uaCIKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJwYXJzZS1vcHRpb25zLmgiCisjaW5jbHVkZSAicmVmcy5oIgorI2luY2x1ZGUgImxvY2tmaWxlLmgiCisjaW5jbHVkZSAiY2FjaGUtdHJlZS5oIgorI2luY2x1ZGUgInVucGFjay10cmVlcy5oIgorI2luY2x1ZGUgIm1lcmdlLXJlY3Vyc2l2ZS5oIgorI2luY2x1ZGUgImFyZ3YtYXJyYXkuaCIKKyNpbmNsdWRlICJydW4tY29tbWFuZC5oIgorI2luY2x1ZGUgImRpci5oIgorI2luY2x1ZGUgInJlcmVyZS5oIgorI2luY2x1ZGUgInJldmlzaW9uLmgiCisjaW5jbHVkZSAibG9nLXRyZWUuaCIKKyNpbmNsdWRlICJkaWZmY29yZS5oIgorI2luY2x1ZGUgImV4ZWMtY21kLmgiCisKKyNkZWZpbmUgSU5DTFVERV9BTExfRklMRVMgMgorCitzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGdpdF9zdGFzaF91c2FnZVtdID0geworCU5fKCJnaXQgc3Rhc2ggbGlzdCBbPG9wdGlvbnM+XSIpLAorCU5fKCJnaXQgc3Rhc2ggc2hvdyBbPG9wdGlvbnM+XSBbPHN0YXNoPl0iKSwKKwlOXygiZ2l0IHN0YXNoIGRyb3AgWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIpLAorCU5fKCJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIiksCisJTl8oImdpdCBzdGFzaCBicmFuY2ggPGJyYW5jaG5hbWU+IFs8c3Rhc2g+XSIpLAorCU5fKCJnaXQgc3Rhc2ggY2xlYXIiKSwKKwlOXygiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorCSAgICIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dXG4iCisJICAgIiAgICAgICAgICBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV1cbiIKKwkgICAiICAgICAgICAgIFstLV0gWzxwYXRoc3BlYz4uLi5dXSIpLAorCU5fKCJnaXQgc3Rhc2ggc2F2ZSBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKwkgICAiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8bWVzc2FnZT5dIiksCisJTlVMTAorfTsKKworc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBnaXRfc3Rhc2hfbGlzdF91c2FnZVtdID0geworCU5fKCJnaXQgc3Rhc2ggbGlzdCBbPG9wdGlvbnM+XSIpLAorCU5VTEwKK307CisKK3N0YXRpYyBjb25zdCBjaGFyICogY29uc3QgZ2l0X3N0YXNoX3Nob3dfdXNhZ2VbXSA9IHsKKwlOXygiZ2l0IHN0YXNoIHNob3cgWzxvcHRpb25zPl0gWzxzdGFzaD5dIiksCisJTlVMTAorfTsKKworc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBnaXRfc3Rhc2hfZHJvcF91c2FnZVtdID0geworCU5fKCJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIiksCisJTlVMTAorfTsKKworc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBnaXRfc3Rhc2hfcG9wX3VzYWdlW10gPSB7CisJTl8oImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iKSwKKwlOVUxMCit9OworCitzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGdpdF9zdGFzaF9hcHBseV91c2FnZVtdID0geworCU5fKCJnaXQgc3Rhc2ggYXBwbHkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iKSwKKwlOVUxMCit9OworCitzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGdpdF9zdGFzaF9icmFuY2hfdXNhZ2VbXSA9IHsKKwlOXygiZ2l0IHN0YXNoIGJyYW5jaCA8YnJhbmNobmFtZT4gWzxzdGFzaD5dIiksCisJTlVMTAorfTsKKworc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBnaXRfc3Rhc2hfY2xlYXJfdXNhZ2VbXSA9IHsKKwlOXygiZ2l0IHN0YXNoIGNsZWFyIiksCisJTlVMTAorfTsKKworc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBnaXRfc3Rhc2hfc3RvcmVfdXNhZ2VbXSA9IHsKKwlOXygiZ2l0IHN0YXNoIHN0b3JlIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XSBbLXF8LS1xdWlldF0gPGNvbW1pdD4iKSwKKwlOVUxMCit9OworCitzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGdpdF9zdGFzaF9wdXNoX3VzYWdlW10gPSB7CisJTl8oImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKwkgICAiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XVxuIgorCSAgICIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIiksCisJTlVMTAorfTsKKworc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBnaXRfc3Rhc2hfc2F2ZV91c2FnZVtdID0geworCU5fKCJnaXQgc3Rhc2ggc2F2ZSBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKwkgICAiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8bWVzc2FnZT5dIiksCisJTlVMTAorfTsKKworc3RhdGljIGNvbnN0IGNoYXIgKnJlZl9zdGFzaCA9ICJyZWZzL3N0YXNoIjsKK3N0YXRpYyBzdHJ1Y3Qgc3RyYnVmIHN0YXNoX2luZGV4X3BhdGggPSBTVFJCVUZfSU5JVDsKKworLyoKKyAqIHdfY29tbWl0IGlzIHNldCB0byB0aGUgY29tbWl0IGNvbnRhaW5pbmcgdGhlIHdvcmtpbmcgdHJlZQorICogYl9jb21taXQgaXMgc2V0IHRvIHRoZSBiYXNlIGNvbW1pdAorICogaV9jb21taXQgaXMgc2V0IHRvIHRoZSBjb21taXQgY29udGFpbmluZyB0aGUgaW5kZXggdHJlZQorICogdV9jb21taXQgaXMgc2V0IHRvIHRoZSBjb21taXQgY29udGFpbmluZyB0aGUgdW50cmFja2VkIGZpbGVzIHRyZWUKKyAqIHdfdHJlZSBpcyBzZXQgdG8gdGhlIHdvcmtpbmcgdHJlZQorICogYl90cmVlIGlzIHNldCB0byB0aGUgYmFzZSB0cmVlCisgKiBpX3RyZWUgaXMgc2V0IHRvIHRoZSBpbmRleCB0cmVlCisgKiB1X3RyZWUgaXMgc2V0IHRvIHRoZSB1bnRyYWNrZWQgZmlsZXMgdHJlZQorICovCitzdHJ1Y3Qgc3Rhc2hfaW5mbyB7CisJc3RydWN0IG9iamVjdF9pZCB3X2NvbW1pdDsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIGJfY29tbWl0OworCXN0cnVjdCBvYmplY3RfaWQgaV9jb21taXQ7CisJc3RydWN0IG9iamVjdF9pZCB1X2NvbW1pdDsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIHdfdHJlZTsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIGJfdHJlZTsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIGlfdHJlZTsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIHVfdHJlZTsKKwlzdHJ1Y3Qgc3RyYnVmIHJldmlzaW9uOworCWludCBpc19zdGFzaF9yZWY7CisJaW50IGhhc191OworfTsKKworc3RhdGljIHZvaWQgZnJlZV9zdGFzaF9pbmZvKHN0cnVjdCBzdGFzaF9pbmZvICppbmZvKQoreworCXN0cmJ1Zl9yZWxlYXNlKCZpbmZvLT5yZXZpc2lvbik7Cit9CisKK3N0YXRpYyB2b2lkIGFzc2VydF9zdGFzaF9saWtlKHN0cnVjdCBzdGFzaF9pbmZvICppbmZvLCBjb25zdCBjaGFyICpyZXZpc2lvbikKK3sKKwlpZiAoZ2V0X29pZGYoJmluZm8tPmJfY29tbWl0LCAiJXNeMSIsIHJldmlzaW9uKSB8fAorCSAgICBnZXRfb2lkZigmaW5mby0+d190cmVlLCAiJXM6IiwgcmV2aXNpb24pIHx8CisJICAgIGdldF9vaWRmKCZpbmZvLT5iX3RyZWUsICIlc14xOiIsIHJldmlzaW9uKSB8fAorCSAgICBnZXRfb2lkZigmaW5mby0+aV90cmVlLCAiJXNeMjoiLCByZXZpc2lvbikpCisJCWRpZShfKCInJXMnIGlzIG5vdCBhIHN0YXNoLWxpa2UgY29tbWl0IiksIHJldmlzaW9uKTsKK30KKworc3RhdGljIGludCBnZXRfc3Rhc2hfaW5mbyhzdHJ1Y3Qgc3Rhc2hfaW5mbyAqaW5mbywgaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQoreworCWludCByZXQ7CisJY2hhciAqZW5kX29mX3JldjsKKwljaGFyICpleHBhbmRlZF9yZWY7CisJY29uc3QgY2hhciAqcmV2aXNpb247CisJY29uc3QgY2hhciAqY29tbWl0ID0gTlVMTDsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIGR1bW15OworCXN0cnVjdCBzdHJidWYgc3ltYm9saWMgPSBTVFJCVUZfSU5JVDsKKworCWlmIChhcmdjID4gMSkgeworCQlpbnQgaTsKKwkJc3RydWN0IHN0cmJ1ZiByZWZzX21zZyA9IFNUUkJVRl9JTklUOworCisJCWZvciAoaSA9IDA7IGkgPCBhcmdjOyBpKyspCisJCQlzdHJidWZfYWRkZigmcmVmc19tc2csICIgJyVzJyIsIGFyZ3ZbaV0pOworCisJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJUb28gbWFueSByZXZpc2lvbnMgc3BlY2lmaWVkOiVzIiksCisJCQkgICByZWZzX21zZy5idWYpOworCQlzdHJidWZfcmVsZWFzZSgmcmVmc19tc2cpOworCisJCXJldHVybiAtMTsKKwl9CisKKwlpZiAoYXJnYyA9PSAxKQorCQljb21taXQgPSBhcmd2WzBdOworCisJc3RyYnVmX2luaXQoJmluZm8tPnJldmlzaW9uLCAwKTsKKwlpZiAoIWNvbW1pdCkgeworCQlpZiAoIXJlZl9leGlzdHMocmVmX3N0YXNoKSkgeworCQkJZnJlZV9zdGFzaF9pbmZvKGluZm8pOworCQkJZnByaW50Zl9sbihzdGRlcnIsIF8oIk5vIHN0YXNoIGVudHJpZXMgZm91bmQuIikpOworCQkJcmV0dXJuIC0xOworCQl9CisKKwkJc3RyYnVmX2FkZGYoJmluZm8tPnJldmlzaW9uLCAiJXNAezB9IiwgcmVmX3N0YXNoKTsKKwl9IGVsc2UgaWYgKHN0cnNwbihjb21taXQsICIwMTIzNDU2Nzg5IikgPT0gc3RybGVuKGNvbW1pdCkpIHsKKwkJc3RyYnVmX2FkZGYoJmluZm8tPnJldmlzaW9uLCAiJXNAeyVzfSIsIHJlZl9zdGFzaCwgY29tbWl0KTsKKwl9IGVsc2UgeworCQlzdHJidWZfYWRkc3RyKCZpbmZvLT5yZXZpc2lvbiwgY29tbWl0KTsKKwl9CisKKwlyZXZpc2lvbiA9IGluZm8tPnJldmlzaW9uLmJ1ZjsKKworCWlmIChnZXRfb2lkKHJldmlzaW9uLCAmaW5mby0+d19jb21taXQpKSB7CisJCWVycm9yKF8oIiVzIGlzIG5vdCBhIHZhbGlkIHJlZmVyZW5jZSIpLCByZXZpc2lvbik7CisJCWZyZWVfc3Rhc2hfaW5mbyhpbmZvKTsKKwkJcmV0dXJuIC0xOworCX0KKworCWFzc2VydF9zdGFzaF9saWtlKGluZm8sIHJldmlzaW9uKTsKKworCWluZm8tPmhhc191ID0gIWdldF9vaWRmKCZpbmZvLT51X3RyZWUsICIlc14zOiIsIHJldmlzaW9uKTsKKworCWVuZF9vZl9yZXYgPSBzdHJjaHJudWwocmV2aXNpb24sICdAJyk7CisJc3RyYnVmX2FkZCgmc3ltYm9saWMsIHJldmlzaW9uLCBlbmRfb2ZfcmV2IC0gcmV2aXNpb24pOworCisJcmV0ID0gZHdpbV9yZWYoc3ltYm9saWMuYnVmLCBzeW1ib2xpYy5sZW4sICZkdW1teSwgJmV4cGFuZGVkX3JlZik7CisJc3RyYnVmX3JlbGVhc2UoJnN5bWJvbGljKTsKKwlzd2l0Y2ggKHJldCkgeworCWNhc2UgMDogLyogTm90IGZvdW5kLCBidXQgdmFsaWQgcmVmICovCisJCWluZm8tPmlzX3N0YXNoX3JlZiA9IDA7CisJCWJyZWFrOworCWNhc2UgMToKKwkJaW5mby0+aXNfc3Rhc2hfcmVmID0gIXN0cmNtcChleHBhbmRlZF9yZWYsIHJlZl9zdGFzaCk7CisJCWJyZWFrOworCWRlZmF1bHQ6IC8qIEludmFsaWQgb3IgYW1iaWd1b3VzICovCisJCWZyZWVfc3Rhc2hfaW5mbyhpbmZvKTsKKwl9CisKKwlmcmVlKGV4cGFuZGVkX3JlZik7CisJcmV0dXJuICEocmV0ID09IDAgfHwgcmV0ID09IDEpOworfQorCitzdGF0aWMgaW50IGRvX2NsZWFyX3N0YXNoKHZvaWQpCit7CisJc3RydWN0IG9iamVjdF9pZCBvYmo7CisJaWYgKGdldF9vaWQocmVmX3N0YXNoLCAmb2JqKSkKKwkJcmV0dXJuIDA7CisKKwlyZXR1cm4gZGVsZXRlX3JlZihOVUxMLCByZWZfc3Rhc2gsICZvYmosIDApOworfQorCitzdGF0aWMgaW50IGNsZWFyX3N0YXNoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KQoreworCXN0cnVjdCBvcHRpb24gb3B0aW9uc1tdID0geworCQlPUFRfRU5EKCkKKwl9OworCisJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LCBvcHRpb25zLAorCQkJICAgICBnaXRfc3Rhc2hfY2xlYXJfdXNhZ2UsCisJCQkgICAgIFBBUlNFX09QVF9TVE9QX0FUX05PTl9PUFRJT04pOworCisJaWYgKGFyZ2MpCisJCXJldHVybiBlcnJvcihfKCJnaXQgc3Rhc2ggY2xlYXIgd2l0aCBwYXJhbWV0ZXJzIGlzICIKKwkJCSAgICAgICAidW5pbXBsZW1lbnRlZCIpKTsKKworCXJldHVybiBkb19jbGVhcl9zdGFzaCgpOworfQorCitzdGF0aWMgaW50IHJlc2V0X3RyZWUoc3RydWN0IG9iamVjdF9pZCAqaV90cmVlLCBpbnQgdXBkYXRlLCBpbnQgcmVzZXQpCit7CisJaW50IG5yX3RyZWVzID0gMTsKKwlzdHJ1Y3QgdW5wYWNrX3RyZWVzX29wdGlvbnMgb3B0czsKKwlzdHJ1Y3QgdHJlZV9kZXNjIHRbTUFYX1VOUEFDS19UUkVFU107CisJc3RydWN0IHRyZWUgKnRyZWU7CisJc3RydWN0IGxvY2tfZmlsZSBsb2NrX2ZpbGUgPSBMT0NLX0lOSVQ7CisKKwlyZWFkX2NhY2hlX3ByZWxvYWQoTlVMTCk7CisJaWYgKHJlZnJlc2hfY2FjaGUoUkVGUkVTSF9RVUlFVCkpCisJCXJldHVybiAtMTsKKworCWhvbGRfbG9ja2VkX2luZGV4KCZsb2NrX2ZpbGUsIExPQ0tfRElFX09OX0VSUk9SKTsKKworCW1lbXNldCgmb3B0cywgMCwgc2l6ZW9mKG9wdHMpKTsKKworCXRyZWUgPSBwYXJzZV90cmVlX2luZGlyZWN0KGlfdHJlZSk7CisJaWYgKHBhcnNlX3RyZWUodHJlZSkpCisJCXJldHVybiAtMTsKKworCWluaXRfdHJlZV9kZXNjKHQsIHRyZWUtPmJ1ZmZlciwgdHJlZS0+c2l6ZSk7CisKKwlvcHRzLmhlYWRfaWR4ID0gMTsKKwlvcHRzLnNyY19pbmRleCA9ICZ0aGVfaW5kZXg7CisJb3B0cy5kc3RfaW5kZXggPSAmdGhlX2luZGV4OworCW9wdHMubWVyZ2UgPSAxOworCW9wdHMucmVzZXQgPSByZXNldDsKKwlvcHRzLnVwZGF0ZSA9IHVwZGF0ZTsKKwlvcHRzLmZuID0gb25ld2F5X21lcmdlOworCisJaWYgKHVucGFja190cmVlcyhucl90cmVlcywgdCwgJm9wdHMpKQorCQlyZXR1cm4gLTE7CisKKwlpZiAod3JpdGVfbG9ja2VkX2luZGV4KCZ0aGVfaW5kZXgsICZsb2NrX2ZpbGUsIENPTU1JVF9MT0NLKSkKKwkJcmV0dXJuIGVycm9yKF8oInVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIpKTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGRpZmZfdHJlZV9iaW5hcnkoc3RydWN0IHN0cmJ1ZiAqb3V0LCBzdHJ1Y3Qgb2JqZWN0X2lkICp3X2NvbW1pdCkKK3sKKwlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjcCA9IENISUxEX1BST0NFU1NfSU5JVDsKKwljb25zdCBjaGFyICp3X2NvbW1pdF9oZXggPSBvaWRfdG9faGV4KHdfY29tbWl0KTsKKworCS8qCisJICogRGlmZi10cmVlIHdvdWxkIG5vdCBiZSB2ZXJ5IGhhcmQgdG8gcmVwbGFjZSB3aXRoIGEgbmF0aXZlIGZ1bmN0aW9uLAorCSAqIGhvd2V2ZXIgaXQgc2hvdWxkIGJlIGRvbmUgdG9nZXRoZXIgd2l0aCBhcHBseV9jYWNoZWQuCisJICovCisJY3AuZ2l0X2NtZCA9IDE7CisJYXJndl9hcnJheV9wdXNobCgmY3AuYXJncywgImRpZmYtdHJlZSIsICItLWJpbmFyeSIsIE5VTEwpOworCWFyZ3ZfYXJyYXlfcHVzaGYoJmNwLmFyZ3MsICIlc14yXi4uJXNeMiIsIHdfY29tbWl0X2hleCwgd19jb21taXRfaGV4KTsKKworCXJldHVybiBwaXBlX2NvbW1hbmQoJmNwLCBOVUxMLCAwLCBvdXQsIDAsIE5VTEwsIDApOworfQorCitzdGF0aWMgaW50IGFwcGx5X2NhY2hlZChzdHJ1Y3Qgc3RyYnVmICpvdXQpCit7CisJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisKKwkvKgorCSAqIEFwcGx5IGN1cnJlbnRseSBvbmx5IHJlYWRzIGVpdGhlciBmcm9tIHN0ZGluIG9yIGEgZmlsZSwgdGh1cworCSAqIGFwcGx5X2FsbF9wYXRjaGVzIHdvdWxkIGhhdmUgdG8gYmUgdXBkYXRlZCB0byBvcHRpb25hbGx5IHRha2UgYQorCSAqIGJ1ZmZlci4KKwkgKi8KKwljcC5naXRfY21kID0gMTsKKwlhcmd2X2FycmF5X3B1c2hsKCZjcC5hcmdzLCAiYXBwbHkiLCAiLS1jYWNoZWQiLCBOVUxMKTsKKwlyZXR1cm4gcGlwZV9jb21tYW5kKCZjcCwgb3V0LT5idWYsIG91dC0+bGVuLCBOVUxMLCAwLCBOVUxMLCAwKTsKK30KKworc3RhdGljIGludCByZXNldF9oZWFkKHZvaWQpCit7CisJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisKKwkvKgorCSAqIFJlc2V0IGlzIG92ZXJhbGwgcXVpdGUgc2ltcGxlLCBob3dldmVyIHRoZXJlIGlzIG5vIGN1cnJlbnQgcHVibGljCisJICogQVBJIGZvciByZXNldHRpbmcuCisJICovCisJY3AuZ2l0X2NtZCA9IDE7CisJYXJndl9hcnJheV9wdXNoKCZjcC5hcmdzLCAicmVzZXQiKTsKKworCXJldHVybiBydW5fY29tbWFuZCgmY3ApOworfQorCitzdGF0aWMgdm9pZCBhZGRfZGlmZl90b19idWYoc3RydWN0IGRpZmZfcXVldWVfc3RydWN0ICpxLAorCQkJICAgIHN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMsCisJCQkgICAgdm9pZCAqZGF0YSkKK3sKKwlpbnQgaTsKKworCWZvciAoaSA9IDA7IGkgPCBxLT5ucjsgaSsrKSB7CisJCXN0cmJ1Zl9hZGRzdHIoZGF0YSwgcS0+cXVldWVbaV0tPm9uZS0+cGF0aCk7CisKKwkJLyogTlVMLXRlcm1pbmF0ZTogd2lsbCBiZSBmZWQgdG8gdXBkYXRlLWluZGV4IC16ICovCisJCXN0cmJ1Zl9hZGRjaChkYXRhLCAnXDAnKTsKKwl9Cit9CisKK3N0YXRpYyBpbnQgZ2V0X25ld2x5X3N0YWdlZChzdHJ1Y3Qgc3RyYnVmICpvdXQsIHN0cnVjdCBvYmplY3RfaWQgKmNfdHJlZSkKK3sKKwlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjcCA9IENISUxEX1BST0NFU1NfSU5JVDsKKwljb25zdCBjaGFyICpjX3RyZWVfaGV4ID0gb2lkX3RvX2hleChjX3RyZWUpOworCisJLyoKKwkgKiBkaWZmLWluZGV4IGlzIHZlcnkgc2ltaWxhciB0byBkaWZmLXRyZWUgYWJvdmUsIGFuZCBzaG91bGQgYmUKKwkgKiBjb252ZXJ0ZWQgdG9nZXRoZXIgd2l0aCB1cGRhdGVfaW5kZXguCisJICovCisJY3AuZ2l0X2NtZCA9IDE7CisJYXJndl9hcnJheV9wdXNobCgmY3AuYXJncywgImRpZmYtaW5kZXgiLCAiLS1jYWNoZWQiLCAiLS1uYW1lLW9ubHkiLAorCQkJICItLWRpZmYtZmlsdGVyPUEiLCBOVUxMKTsKKwlhcmd2X2FycmF5X3B1c2goJmNwLmFyZ3MsIGNfdHJlZV9oZXgpOworCXJldHVybiBwaXBlX2NvbW1hbmQoJmNwLCBOVUxMLCAwLCBvdXQsIDAsIE5VTEwsIDApOworfQorCitzdGF0aWMgaW50IHVwZGF0ZV9pbmRleChzdHJ1Y3Qgc3RyYnVmICpvdXQpCit7CisJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisKKwkvKgorCSAqIFVwZGF0ZS1pbmRleCBpcyB2ZXJ5IGNvbXBsaWNhdGVkIGFuZCBtYXkgbmVlZCB0byBoYXZlIGEgcHVibGljCisJICogZnVuY3Rpb24gZXhwb3NlZCBpbiBvcmRlciB0byByZW1vdmUgdGhpcyBmb3JraW5nLgorCSAqLworCWNwLmdpdF9jbWQgPSAxOworCWFyZ3ZfYXJyYXlfcHVzaGwoJmNwLmFyZ3MsICJ1cGRhdGUtaW5kZXgiLCAiLS1hZGQiLCAiLS1zdGRpbiIsIE5VTEwpOworCXJldHVybiBwaXBlX2NvbW1hbmQoJmNwLCBvdXQtPmJ1Ziwgb3V0LT5sZW4sIE5VTEwsIDAsIE5VTEwsIDApOworfQorCitzdGF0aWMgaW50IHJlc3RvcmVfdW50cmFja2VkKHN0cnVjdCBvYmplY3RfaWQgKnVfdHJlZSkKK3sKKwlpbnQgcmVzOworCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNwID0gQ0hJTERfUFJPQ0VTU19JTklUOworCisJLyoKKwkgKiBXZSBuZWVkIHRvIHJ1biByZXN0b3JlIGZpbGVzIGZyb20gYSBnaXZlbiBpbmRleCwgYnV0IHdpdGhvdXQKKwkgKiBhZmZlY3RpbmcgdGhlIGN1cnJlbnQgaW5kZXgsIHNvIHdlIHVzZSBHSVRfSU5ERVhfRklMRSB3aXRoCisJICogcnVuX2NvbW1hbmQgdG8gZm9yayBwcm9jZXNzZXMgdGhhdCB3aWxsIG5vdCBpbnRlcmZlcmUuCisJICovCisJY3AuZ2l0X2NtZCA9IDE7CisJYXJndl9hcnJheV9wdXNoKCZjcC5hcmdzLCAicmVhZC10cmVlIik7CisJYXJndl9hcnJheV9wdXNoKCZjcC5hcmdzLCBvaWRfdG9faGV4KHVfdHJlZSkpOworCWFyZ3ZfYXJyYXlfcHVzaGYoJmNwLmVudl9hcnJheSwgIkdJVF9JTkRFWF9GSUxFPSVzIiwKKwkJCSBzdGFzaF9pbmRleF9wYXRoLmJ1Zik7CisJaWYgKHJ1bl9jb21tYW5kKCZjcCkpIHsKKwkJcmVtb3ZlX3BhdGgoc3Rhc2hfaW5kZXhfcGF0aC5idWYpOworCQlyZXR1cm4gLTE7CisJfQorCisJY2hpbGRfcHJvY2Vzc19pbml0KCZjcCk7CisJY3AuZ2l0X2NtZCA9IDE7CisJYXJndl9hcnJheV9wdXNobCgmY3AuYXJncywgImNoZWNrb3V0LWluZGV4IiwgIi0tYWxsIiwgTlVMTCk7CisJYXJndl9hcnJheV9wdXNoZigmY3AuZW52X2FycmF5LCAiR0lUX0lOREVYX0ZJTEU9JXMiLAorCQkJIHN0YXNoX2luZGV4X3BhdGguYnVmKTsKKworCXJlcyA9IHJ1bl9jb21tYW5kKCZjcCk7CisJcmVtb3ZlX3BhdGgoc3Rhc2hfaW5kZXhfcGF0aC5idWYpOworCXJldHVybiByZXM7Cit9CisKK3N0YXRpYyBpbnQgZG9fYXBwbHlfc3Rhc2goY29uc3QgY2hhciAqcHJlZml4LCBzdHJ1Y3Qgc3Rhc2hfaW5mbyAqaW5mbywKKwkJCSAgaW50IGluZGV4LCBpbnQgcXVpZXQpCit7CisJaW50IHJldDsKKwlpbnQgaGFzX2luZGV4ID0gaW5kZXg7CisJc3RydWN0IG1lcmdlX29wdGlvbnMgbzsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIGNfdHJlZTsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIGluZGV4X3RyZWU7CisJc3RydWN0IGNvbW1pdCAqcmVzdWx0OworCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmJhc2VzWzFdOworCisJcmVhZF9jYWNoZV9wcmVsb2FkKE5VTEwpOworCWlmIChyZWZyZXNoX2FuZF93cml0ZV9jYWNoZShSRUZSRVNIX1FVSUVULCAwLCAwKSkKKwkJcmV0dXJuIC0xOworCisJaWYgKHdyaXRlX2NhY2hlX2FzX3RyZWUoJmNfdHJlZSwgMCwgTlVMTCkpCisJCXJldHVybiBlcnJvcihfKCJjYW5ub3QgYXBwbHkgYSBzdGFzaCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UiKSk7CisKKwlpZiAoaW5kZXgpIHsKKwkJaWYgKG9pZGVxKCZpbmZvLT5iX3RyZWUsICZpbmZvLT5pX3RyZWUpIHx8CisJCSAgICBvaWRlcSgmY190cmVlLCAmaW5mby0+aV90cmVlKSkgeworCQkJaGFzX2luZGV4ID0gMDsKKwkJfSBlbHNlIHsKKwkJCXN0cnVjdCBzdHJidWYgb3V0ID0gU1RSQlVGX0lOSVQ7CisKKwkJCWlmIChkaWZmX3RyZWVfYmluYXJ5KCZvdXQsICZpbmZvLT53X2NvbW1pdCkpIHsKKwkJCQlzdHJidWZfcmVsZWFzZSgmb3V0KTsKKwkJCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IGdlbmVyYXRlIGRpZmYgJXNeIS4iKSwKKwkJCQkJICAgICBvaWRfdG9faGV4KCZpbmZvLT53X2NvbW1pdCkpOworCQkJfQorCisJCQlyZXQgPSBhcHBseV9jYWNoZWQoJm91dCk7CisJCQlzdHJidWZfcmVsZWFzZSgmb3V0KTsKKwkJCWlmIChyZXQpCisJCQkJcmV0dXJuIGVycm9yKF8oImNvbmZsaWN0cyBpbiBpbmRleC4iCisJCQkJCSAgICAgICAiVHJ5IHdpdGhvdXQgLS1pbmRleC4iKSk7CisKKwkJCWRpc2NhcmRfY2FjaGUoKTsKKwkJCXJlYWRfY2FjaGUoKTsKKwkJCWlmICh3cml0ZV9jYWNoZV9hc190cmVlKCZpbmRleF90cmVlLCAwLCBOVUxMKSkKKwkJCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIpKTsKKworCQkJcmVzZXRfaGVhZCgpOworCQkJZGlzY2FyZF9jYWNoZSgpOworCQkJcmVhZF9jYWNoZSgpOworCQl9CisJfQorCisJaWYgKGluZm8tPmhhc191ICYmIHJlc3RvcmVfdW50cmFja2VkKCZpbmZvLT51X3RyZWUpKQorCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHJlc3RvcmUgdW50cmFja2VkIGZpbGVzIGZyb20gc3Rhc2giKSk7CisKKwlpbml0X21lcmdlX29wdGlvbnMoJm8sIHRoZV9yZXBvc2l0b3J5KTsKKworCW8uYnJhbmNoMSA9ICJVcGRhdGVkIHVwc3RyZWFtIjsKKwlvLmJyYW5jaDIgPSAiU3Rhc2hlZCBjaGFuZ2VzIjsKKworCWlmIChvaWRlcSgmaW5mby0+Yl90cmVlLCAmY190cmVlKSkKKwkJby5icmFuY2gxID0gIlZlcnNpb24gc3Rhc2ggd2FzIGJhc2VkIG9uIjsKKworCWlmIChxdWlldCkKKwkJby52ZXJib3NpdHkgPSAwOworCisJaWYgKG8udmVyYm9zaXR5ID49IDMpCisJCXByaW50Zl9sbihfKCJNZXJnaW5nICVzIHdpdGggJXMiKSwgby5icmFuY2gxLCBvLmJyYW5jaDIpOworCisJYmFzZXNbMF0gPSAmaW5mby0+Yl90cmVlOworCisJcmV0ID0gbWVyZ2VfcmVjdXJzaXZlX2dlbmVyaWMoJm8sICZjX3RyZWUsICZpbmZvLT53X3RyZWUsIDEsIGJhc2VzLAorCQkJCSAgICAgICZyZXN1bHQpOworCWlmIChyZXQpIHsKKwkJcmVyZXJlKDApOworCisJCWlmIChpbmRleCkKKwkJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJJbmRleCB3YXMgbm90IHVuc3Rhc2hlZC4iKSk7CisKKwkJcmV0dXJuIHJldDsKKwl9CisKKwlpZiAoaGFzX2luZGV4KSB7CisJCWlmIChyZXNldF90cmVlKCZpbmRleF90cmVlLCAwLCAwKSkKKwkJCXJldHVybiAtMTsKKwl9IGVsc2UgeworCQlzdHJ1Y3Qgc3RyYnVmIG91dCA9IFNUUkJVRl9JTklUOworCisJCWlmIChnZXRfbmV3bHlfc3RhZ2VkKCZvdXQsICZjX3RyZWUpKSB7CisJCQlzdHJidWZfcmVsZWFzZSgmb3V0KTsKKwkJCXJldHVybiAtMTsKKwkJfQorCisJCWlmIChyZXNldF90cmVlKCZjX3RyZWUsIDAsIDEpKSB7CisJCQlzdHJidWZfcmVsZWFzZSgmb3V0KTsKKwkJCXJldHVybiAtMTsKKwkJfQorCisJCXJldCA9IHVwZGF0ZV9pbmRleCgmb3V0KTsKKwkJc3RyYnVmX3JlbGVhc2UoJm91dCk7CisJCWlmIChyZXQpCisJCQlyZXR1cm4gLTE7CisKKwkJLyogcmVhZCBiYWNrIHRoZSByZXN1bHQgb2YgdXBkYXRlX2luZGV4KCkgYmFjayBmcm9tIHRoZSBkaXNrICovCisJCWRpc2NhcmRfY2FjaGUoKTsKKwkJcmVhZF9jYWNoZSgpOworCX0KKworCWlmICghcXVpZXQpIHsKKwkJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisKKwkJLyoKKwkJICogU3RhdHVzIGlzIHF1aXRlIHNpbXBsZSBhbmQgY291bGQgYmUgcmVwbGFjZWQgd2l0aCBjYWxscyB0bworCQkgKiB3dF9zdGF0dXMgaW4gdGhlIGZ1dHVyZSwgYnV0IGl0IGFkZHMgY29tcGxleGl0aWVzIHdoaWNoIG1heQorCQkgKiByZXF1aXJlIG1vcmUgdGVzdHMuCisJCSAqLworCQljcC5naXRfY21kID0gMTsKKwkJY3AuZGlyID0gcHJlZml4OworCQlhcmd2X2FycmF5X3B1c2hmKCZjcC5lbnZfYXJyYXksIEdJVF9XT1JLX1RSRUVfRU5WSVJPTk1FTlQiPSVzIiwKKwkJCQkgYWJzb2x1dGVfcGF0aChnZXRfZ2l0X3dvcmtfdHJlZSgpKSk7CisJCWFyZ3ZfYXJyYXlfcHVzaGYoJmNwLmVudl9hcnJheSwgR0lUX0RJUl9FTlZJUk9OTUVOVCI9JXMiLAorCQkJCSBhYnNvbHV0ZV9wYXRoKGdldF9naXRfZGlyKCkpKTsKKwkJYXJndl9hcnJheV9wdXNoKCZjcC5hcmdzLCAic3RhdHVzIik7CisJCXJ1bl9jb21tYW5kKCZjcCk7CisJfQorCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgYXBwbHlfc3Rhc2goaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCit7CisJaW50IHJldDsKKwlpbnQgcXVpZXQgPSAwOworCWludCBpbmRleCA9IDA7CisJc3RydWN0IHN0YXNoX2luZm8gaW5mbzsKKwlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwkJT1BUX19RVUlFVCgmcXVpZXQsIE5fKCJiZSBxdWlldCwgb25seSByZXBvcnQgZXJyb3JzIikpLAorCQlPUFRfQk9PTCgwLCAiaW5kZXgiLCAmaW5kZXgsCisJCQkgTl8oImF0dGVtcHQgdG8gcmVjcmVhdGUgdGhlIGluZGV4IikpLAorCQlPUFRfRU5EKCkKKwl9OworCisJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LCBvcHRpb25zLAorCQkJICAgICBnaXRfc3Rhc2hfYXBwbHlfdXNhZ2UsIDApOworCisJaWYgKGdldF9zdGFzaF9pbmZvKCZpbmZvLCBhcmdjLCBhcmd2KSkKKwkJcmV0dXJuIC0xOworCisJcmV0ID0gZG9fYXBwbHlfc3Rhc2gocHJlZml4LCAmaW5mbywgaW5kZXgsIHF1aWV0KTsKKwlmcmVlX3N0YXNoX2luZm8oJmluZm8pOworCXJldHVybiByZXQ7Cit9CisKK3N0YXRpYyBpbnQgZG9fZHJvcF9zdGFzaChzdHJ1Y3Qgc3Rhc2hfaW5mbyAqaW5mbywgaW50IHF1aWV0KQoreworCWludCByZXQ7CisJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3BfcmVmbG9nID0gQ0hJTERfUFJPQ0VTU19JTklUOworCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNwID0gQ0hJTERfUFJPQ0VTU19JTklUOworCisJLyoKKwkgKiByZWZsb2cgZG9lcyBub3QgcHJvdmlkZSBhIHNpbXBsZSBmdW5jdGlvbiBmb3IgZGVsZXRpbmcgcmVmcy4gT25lIHdpbGwKKwkgKiBuZWVkIHRvIGJlIGFkZGVkIHRvIGF2b2lkIGltcGxlbWVudGluZyB0b28gbXVjaCByZWZsb2cgY29kZSBoZXJlCisJICovCisKKwljcF9yZWZsb2cuZ2l0X2NtZCA9IDE7CisJYXJndl9hcnJheV9wdXNobCgmY3BfcmVmbG9nLmFyZ3MsICJyZWZsb2ciLCAiZGVsZXRlIiwgIi0tdXBkYXRlcmVmIiwKKwkJCSAiLS1yZXdyaXRlIiwgTlVMTCk7CisJYXJndl9hcnJheV9wdXNoKCZjcF9yZWZsb2cuYXJncywgaW5mby0+cmV2aXNpb24uYnVmKTsKKwlyZXQgPSBydW5fY29tbWFuZCgmY3BfcmVmbG9nKTsKKwlpZiAoIXJldCkgeworCQlpZiAoIXF1aWV0KQorCQkJcHJpbnRmX2xuKF8oIkRyb3BwZWQgJXMgKCVzKSIpLCBpbmZvLT5yZXZpc2lvbi5idWYsCisJCQkJICBvaWRfdG9faGV4KCZpbmZvLT53X2NvbW1pdCkpOworCX0gZWxzZSB7CisJCXJldHVybiBlcnJvcihfKCIlczogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiKSwKKwkJCSAgICAgaW5mby0+cmV2aXNpb24uYnVmKTsKKwl9CisKKwkvKgorCSAqIFRoaXMgY291bGQgZWFzaWx5IGJlIHJlcGxhY2VkIGJ5IGdldF9vaWQsIGJ1dCBjdXJyZW50bHkgaXQgd2lsbCB0aHJvdworCSAqIGEgZmF0YWwgZXJyb3Igd2hlbiBhIHJlZmxvZyBpcyBlbXB0eSwgd2hpY2ggd2UgY2FuIG5vdCByZWNvdmVyIGZyb20uCisJICovCisJY3AuZ2l0X2NtZCA9IDE7CisJLyogRXZlbiB0aG91Z2ggLS1xdWlldCBpcyBzcGVjaWZpZWQsIHJldi1wYXJzZSBzdGlsbCBvdXRwdXRzIHRoZSBoYXNoICovCisJY3Aubm9fc3Rkb3V0ID0gMTsKKwlhcmd2X2FycmF5X3B1c2hsKCZjcC5hcmdzLCAicmV2LXBhcnNlIiwgIi0tdmVyaWZ5IiwgIi0tcXVpZXQiLCBOVUxMKTsKKwlhcmd2X2FycmF5X3B1c2hmKCZjcC5hcmdzLCAiJXNAezB9IiwgcmVmX3N0YXNoKTsKKwlyZXQgPSBydW5fY29tbWFuZCgmY3ApOworCisJLyogZG9fY2xlYXJfc3Rhc2ggaWYgd2UganVzdCBkcm9wcGVkIHRoZSBsYXN0IHN0YXNoIGVudHJ5ICovCisJaWYgKHJldCkKKwkJZG9fY2xlYXJfc3Rhc2goKTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgdm9pZCBhc3NlcnRfc3Rhc2hfcmVmKHN0cnVjdCBzdGFzaF9pbmZvICppbmZvKQoreworCWlmICghaW5mby0+aXNfc3Rhc2hfcmVmKSB7CisJCWVycm9yKF8oIiclcycgaXMgbm90IGEgc3Rhc2ggcmVmZXJlbmNlIiksIGluZm8tPnJldmlzaW9uLmJ1Zik7CisJCWZyZWVfc3Rhc2hfaW5mbyhpbmZvKTsKKwkJZXhpdCgxKTsKKwl9Cit9CisKK3N0YXRpYyBpbnQgZHJvcF9zdGFzaChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKK3sKKwlpbnQgcmV0OworCWludCBxdWlldCA9IDA7CisJc3RydWN0IHN0YXNoX2luZm8gaW5mbzsKKwlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwkJT1BUX19RVUlFVCgmcXVpZXQsIE5fKCJiZSBxdWlldCwgb25seSByZXBvcnQgZXJyb3JzIikpLAorCQlPUFRfRU5EKCkKKwl9OworCisJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LCBvcHRpb25zLAorCQkJICAgICBnaXRfc3Rhc2hfZHJvcF91c2FnZSwgMCk7CisKKwlpZiAoZ2V0X3N0YXNoX2luZm8oJmluZm8sIGFyZ2MsIGFyZ3YpKQorCQlyZXR1cm4gLTE7CisKKwlhc3NlcnRfc3Rhc2hfcmVmKCZpbmZvKTsKKworCXJldCA9IGRvX2Ryb3Bfc3Rhc2goJmluZm8sIHF1aWV0KTsKKwlmcmVlX3N0YXNoX2luZm8oJmluZm8pOworCXJldHVybiByZXQ7Cit9CisKK3N0YXRpYyBpbnQgcG9wX3N0YXNoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KQoreworCWludCByZXQ7CisJaW50IGluZGV4ID0gMDsKKwlpbnQgcXVpZXQgPSAwOworCXN0cnVjdCBzdGFzaF9pbmZvIGluZm87CisJc3RydWN0IG9wdGlvbiBvcHRpb25zW10gPSB7CisJCU9QVF9fUVVJRVQoJnF1aWV0LCBOXygiYmUgcXVpZXQsIG9ubHkgcmVwb3J0IGVycm9ycyIpKSwKKwkJT1BUX0JPT0woMCwgImluZGV4IiwgJmluZGV4LAorCQkJIE5fKCJhdHRlbXB0IHRvIHJlY3JlYXRlIHRoZSBpbmRleCIpKSwKKwkJT1BUX0VORCgpCisJfTsKKworCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywKKwkJCSAgICAgZ2l0X3N0YXNoX3BvcF91c2FnZSwgMCk7CisKKwlpZiAoZ2V0X3N0YXNoX2luZm8oJmluZm8sIGFyZ2MsIGFyZ3YpKQorCQlyZXR1cm4gLTE7CisKKwlhc3NlcnRfc3Rhc2hfcmVmKCZpbmZvKTsKKwlpZiAoKHJldCA9IGRvX2FwcGx5X3N0YXNoKHByZWZpeCwgJmluZm8sIGluZGV4LCBxdWlldCkpKQorCQlwcmludGZfbG4oXygiVGhlIHN0YXNoIGVudHJ5IGlzIGtlcHQgaW4gY2FzZSAiCisJCQkgICAgInlvdSBuZWVkIGl0IGFnYWluLiIpKTsKKwllbHNlCisJCXJldCA9IGRvX2Ryb3Bfc3Rhc2goJmluZm8sIHF1aWV0KTsKKworCWZyZWVfc3Rhc2hfaW5mbygmaW5mbyk7CisJcmV0dXJuIHJldDsKK30KKworc3RhdGljIGludCBicmFuY2hfc3Rhc2goaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCit7CisJaW50IHJldDsKKwljb25zdCBjaGFyICpicmFuY2ggPSBOVUxMOworCXN0cnVjdCBzdGFzaF9pbmZvIGluZm87CisJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisJc3RydWN0IG9wdGlvbiBvcHRpb25zW10gPSB7CisJCU9QVF9FTkQoKQorCX07CisKKwlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsIG9wdGlvbnMsCisJCQkgICAgIGdpdF9zdGFzaF9icmFuY2hfdXNhZ2UsIDApOworCisJaWYgKCFhcmdjKSB7CisJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJObyBicmFuY2ggbmFtZSBzcGVjaWZpZWQiKSk7CisJCXJldHVybiAtMTsKKwl9CisKKwlicmFuY2ggPSBhcmd2WzBdOworCisJaWYgKGdldF9zdGFzaF9pbmZvKCZpbmZvLCBhcmdjIC0gMSwgYXJndiArIDEpKQorCQlyZXR1cm4gLTE7CisKKwljcC5naXRfY21kID0gMTsKKwlhcmd2X2FycmF5X3B1c2hsKCZjcC5hcmdzLCAiY2hlY2tvdXQiLCAiLWIiLCBOVUxMKTsKKwlhcmd2X2FycmF5X3B1c2goJmNwLmFyZ3MsIGJyYW5jaCk7CisJYXJndl9hcnJheV9wdXNoKCZjcC5hcmdzLCBvaWRfdG9faGV4KCZpbmZvLmJfY29tbWl0KSk7CisJcmV0ID0gcnVuX2NvbW1hbmQoJmNwKTsKKwlpZiAoIXJldCkKKwkJcmV0ID0gZG9fYXBwbHlfc3Rhc2gocHJlZml4LCAmaW5mbywgMSwgMCk7CisJaWYgKCFyZXQgJiYgaW5mby5pc19zdGFzaF9yZWYpCisJCXJldCA9IGRvX2Ryb3Bfc3Rhc2goJmluZm8sIDApOworCisJZnJlZV9zdGFzaF9pbmZvKCZpbmZvKTsKKworCXJldHVybiByZXQ7Cit9CisKK3N0YXRpYyBpbnQgbGlzdF9zdGFzaChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKK3sKKwlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjcCA9IENISUxEX1BST0NFU1NfSU5JVDsKKwlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwkJT1BUX0VORCgpCisJfTsKKworCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywKKwkJCSAgICAgZ2l0X3N0YXNoX2xpc3RfdXNhZ2UsCisJCQkgICAgIFBBUlNFX09QVF9LRUVQX1VOS05PV04pOworCisJaWYgKCFyZWZfZXhpc3RzKHJlZl9zdGFzaCkpCisJCXJldHVybiAwOworCisJY3AuZ2l0X2NtZCA9IDE7CisJYXJndl9hcnJheV9wdXNobCgmY3AuYXJncywgImxvZyIsICItLWZvcm1hdD0lZ2Q6ICVncyIsICItZyIsCisJCQkgIi0tZmlyc3QtcGFyZW50IiwgIi1tIiwgTlVMTCk7CisJYXJndl9hcnJheV9wdXNodigmY3AuYXJncywgYXJndik7CisJYXJndl9hcnJheV9wdXNoKCZjcC5hcmdzLCByZWZfc3Rhc2gpOworCWFyZ3ZfYXJyYXlfcHVzaCgmY3AuYXJncywgIi0tIik7CisJcmV0dXJuIHJ1bl9jb21tYW5kKCZjcCk7Cit9CisKK3N0YXRpYyBpbnQgc2hvd19zdGF0ID0gMTsKK3N0YXRpYyBpbnQgc2hvd19wYXRjaDsKKworc3RhdGljIGludCBnaXRfc3Rhc2hfY29uZmlnKGNvbnN0IGNoYXIgKnZhciwgY29uc3QgY2hhciAqdmFsdWUsIHZvaWQgKmNiKQoreworCWlmICghc3RyY21wKHZhciwgInN0YXNoLnNob3dzdGF0IikpIHsKKwkJc2hvd19zdGF0ID0gZ2l0X2NvbmZpZ19ib29sKHZhciwgdmFsdWUpOworCQlyZXR1cm4gMDsKKwl9CisJaWYgKCFzdHJjbXAodmFyLCAic3Rhc2guc2hvd3BhdGNoIikpIHsKKwkJc2hvd19wYXRjaCA9IGdpdF9jb25maWdfYm9vbCh2YXIsIHZhbHVlKTsKKwkJcmV0dXJuIDA7CisJfQorCXJldHVybiBnaXRfZGVmYXVsdF9jb25maWcodmFyLCB2YWx1ZSwgY2IpOworfQorCitzdGF0aWMgaW50IHNob3dfc3Rhc2goaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCit7CisJaW50IGk7CisJaW50IHJldCA9IDA7CisJc3RydWN0IHN0YXNoX2luZm8gaW5mbzsKKwlzdHJ1Y3QgcmV2X2luZm8gcmV2OworCXN0cnVjdCBhcmd2X2FycmF5IHN0YXNoX2FyZ3MgPSBBUkdWX0FSUkFZX0lOSVQ7CisJc3RydWN0IGFyZ3ZfYXJyYXkgcmV2aXNpb25fYXJncyA9IEFSR1ZfQVJSQVlfSU5JVDsKKwlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwkJT1BUX0VORCgpCisJfTsKKworCWluaXRfZGlmZl91aV9kZWZhdWx0cygpOworCWdpdF9jb25maWcoZ2l0X2RpZmZfdWlfY29uZmlnLCBOVUxMKTsKKwlpbml0X3JldmlzaW9ucygmcmV2LCBwcmVmaXgpOworCisJYXJndl9hcnJheV9wdXNoKCZyZXZpc2lvbl9hcmdzLCBhcmd2WzBdKTsKKwlmb3IgKGkgPSAxOyBpIDwgYXJnYzsgaSsrKSB7CisJCWlmIChhcmd2W2ldWzBdICE9ICctJykKKwkJCWFyZ3ZfYXJyYXlfcHVzaCgmc3Rhc2hfYXJncywgYXJndltpXSk7CisJCWVsc2UKKwkJCWFyZ3ZfYXJyYXlfcHVzaCgmcmV2aXNpb25fYXJncywgYXJndltpXSk7CisJfQorCisJcmV0ID0gZ2V0X3N0YXNoX2luZm8oJmluZm8sIHN0YXNoX2FyZ3MuYXJnYywgc3Rhc2hfYXJncy5hcmd2KTsKKwlhcmd2X2FycmF5X2NsZWFyKCZzdGFzaF9hcmdzKTsKKwlpZiAocmV0KQorCQlyZXR1cm4gLTE7CisKKwkvKgorCSAqIFRoZSBjb25maWcgc2V0dGluZ3MgYXJlIGFwcGxpZWQgb25seSBpZiB0aGVyZSBhcmUgbm90IHBhc3NlZAorCSAqIGFueSBvcHRpb25zLgorCSAqLworCWlmIChyZXZpc2lvbl9hcmdzLmFyZ2MgPT0gMSkgeworCQlnaXRfY29uZmlnKGdpdF9zdGFzaF9jb25maWcsIE5VTEwpOworCQlpZiAoc2hvd19zdGF0KQorCQkJcmV2LmRpZmZvcHQub3V0cHV0X2Zvcm1hdCA9IERJRkZfRk9STUFUX0RJRkZTVEFUOworCisJCWlmIChzaG93X3BhdGNoKQorCQkJcmV2LmRpZmZvcHQub3V0cHV0X2Zvcm1hdCB8PSBESUZGX0ZPUk1BVF9QQVRDSDsKKworCQlpZiAoIXNob3dfc3RhdCAmJiAhc2hvd19wYXRjaCkgeworCQkJZnJlZV9zdGFzaF9pbmZvKCZpbmZvKTsKKwkJCXJldHVybiAwOworCQl9CisJfQorCisJYXJnYyA9IHNldHVwX3JldmlzaW9ucyhyZXZpc2lvbl9hcmdzLmFyZ2MsIHJldmlzaW9uX2FyZ3MuYXJndiwgJnJldiwgTlVMTCk7CisJaWYgKGFyZ2MgPiAxKSB7CisJCWZyZWVfc3Rhc2hfaW5mbygmaW5mbyk7CisJCXVzYWdlX3dpdGhfb3B0aW9ucyhnaXRfc3Rhc2hfc2hvd191c2FnZSwgb3B0aW9ucyk7CisJfQorCWlmICghcmV2LmRpZmZvcHQub3V0cHV0X2Zvcm1hdCkgeworCQlyZXYuZGlmZm9wdC5vdXRwdXRfZm9ybWF0ID0gRElGRl9GT1JNQVRfUEFUQ0g7CisJCWRpZmZfc2V0dXBfZG9uZSgmcmV2LmRpZmZvcHQpOworCX0KKworCXJldi5kaWZmb3B0LmZsYWdzLnJlY3Vyc2l2ZSA9IDE7CisJc2V0dXBfZGlmZl9wYWdlcigmcmV2LmRpZmZvcHQpOworCWRpZmZfdHJlZV9vaWQoJmluZm8uYl9jb21taXQsICZpbmZvLndfY29tbWl0LCAiIiwgJnJldi5kaWZmb3B0KTsKKwlsb2dfdHJlZV9kaWZmX2ZsdXNoKCZyZXYpOworCisJZnJlZV9zdGFzaF9pbmZvKCZpbmZvKTsKKwlyZXR1cm4gZGlmZl9yZXN1bHRfY29kZSgmcmV2LmRpZmZvcHQsIDApOworfQorCitzdGF0aWMgaW50IGRvX3N0b3JlX3N0YXNoKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKndfY29tbWl0LCBjb25zdCBjaGFyICpzdGFzaF9tc2csCisJCQkgIGludCBxdWlldCkKK3sKKwlpZiAoIXN0YXNoX21zZykKKwkJc3Rhc2hfbXNnID0gIkNyZWF0ZWQgdmlhIFwiZ2l0IHN0YXNoIHN0b3JlXCIuIjsKKworCWlmICh1cGRhdGVfcmVmKHN0YXNoX21zZywgcmVmX3N0YXNoLCB3X2NvbW1pdCwgTlVMTCwKKwkJICAgICAgIFJFRl9GT1JDRV9DUkVBVEVfUkVGTE9HLAorCQkgICAgICAgcXVpZXQgPyBVUERBVEVfUkVGU19RVUlFVF9PTl9FUlIgOgorCQkgICAgICAgVVBEQVRFX1JFRlNfTVNHX09OX0VSUikpIHsKKwkJaWYgKCFxdWlldCkgeworCQkJZnByaW50Zl9sbihzdGRlcnIsIF8oIkNhbm5vdCB1cGRhdGUgJXMgd2l0aCAlcyIpLAorCQkJCSAgIHJlZl9zdGFzaCwgb2lkX3RvX2hleCh3X2NvbW1pdCkpOworCQl9CisJCXJldHVybiAtMTsKKwl9CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBzdG9yZV9zdGFzaChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKK3sKKwlpbnQgcXVpZXQgPSAwOworCWNvbnN0IGNoYXIgKnN0YXNoX21zZyA9IE5VTEw7CisJc3RydWN0IG9iamVjdF9pZCBvYmo7CisJc3RydWN0IG9iamVjdF9jb250ZXh0IGR1bW15OworCXN0cnVjdCBvcHRpb24gb3B0aW9uc1tdID0geworCQlPUFRfX1FVSUVUKCZxdWlldCwgTl8oImJlIHF1aWV0IikpLAorCQlPUFRfU1RSSU5HKCdtJywgIm1lc3NhZ2UiLCAmc3Rhc2hfbXNnLCAibWVzc2FnZSIsCisJCQkgICBOXygic3Rhc2ggbWVzc2FnZSIpKSwKKwkJT1BUX0VORCgpCisJfTsKKworCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywKKwkJCSAgICAgZ2l0X3N0YXNoX3N0b3JlX3VzYWdlLAorCQkJICAgICBQQVJTRV9PUFRfS0VFUF9VTktOT1dOKTsKKworCWlmIChhcmdjICE9IDEpIHsKKwkJaWYgKCFxdWlldCkKKwkJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJcImdpdCBzdGFzaCBzdG9yZVwiIHJlcXVpcmVzIG9uZSAiCisJCQkJCSAgICAgIjxjb21taXQ+IGFyZ3VtZW50IikpOworCQlyZXR1cm4gLTE7CisJfQorCisJaWYgKGdldF9vaWRfd2l0aF9jb250ZXh0KHRoZV9yZXBvc2l0b3J5LAorCQkJCSBhcmd2WzBdLCBxdWlldCA/IEdFVF9PSURfUVVJRVRMWSA6IDAsICZvYmosCisJCQkJICZkdW1teSkpIHsKKwkJaWYgKCFxdWlldCkKKwkJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJDYW5ub3QgdXBkYXRlICVzIHdpdGggJXMiKSwKKwkJCQkJICAgICByZWZfc3Rhc2gsIGFyZ3ZbMF0pOworCQlyZXR1cm4gLTE7CisJfQorCisJcmV0dXJuIGRvX3N0b3JlX3N0YXNoKCZvYmosIHN0YXNoX21zZywgcXVpZXQpOworfQorCitzdGF0aWMgdm9pZCBhZGRfcGF0aHNwZWNzKHN0cnVjdCBhcmd2X2FycmF5ICphcmdzLAorCQkJICBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBzKSB7CisJaW50IGk7CisKKwlmb3IgKGkgPSAwOyBpIDwgcHMtPm5yOyBpKyspCisJCWFyZ3ZfYXJyYXlfcHVzaChhcmdzLCBwcy0+aXRlbXNbaV0ub3JpZ2luYWwpOworfQorCisvKgorICogYHVudHJhY2tlZF9maWxlc2Agd2lsbCBiZSBmaWxsZWQgd2l0aCB0aGUgbmFtZXMgb2YgdW50cmFja2VkIGZpbGVzLgorICogVGhlIHJldHVybiB2YWx1ZSBpczoKKyAqCisgKiA9IDAgaWYgdGhlcmUgYXJlIG5vdCBhbnkgdW50cmFja2VkIGZpbGVzCisgKiA+IDAgaWYgdGhlcmUgYXJlIHVudHJhY2tlZCBmaWxlcworICovCitzdGF0aWMgaW50IGdldF91bnRyYWNrZWRfZmlsZXMoY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwcywgaW50IGluY2x1ZGVfdW50cmFja2VkLAorCQkJICAgICAgIHN0cnVjdCBzdHJidWYgKnVudHJhY2tlZF9maWxlcykKK3sKKwlpbnQgaTsKKwlpbnQgbWF4X2xlbjsKKwlpbnQgZm91bmQgPSAwOworCWNoYXIgKnNlZW47CisJc3RydWN0IGRpcl9zdHJ1Y3QgZGlyOworCisJbWVtc2V0KCZkaXIsIDAsIHNpemVvZihkaXIpKTsKKwlpZiAoaW5jbHVkZV91bnRyYWNrZWQgIT0gSU5DTFVERV9BTExfRklMRVMpCisJCXNldHVwX3N0YW5kYXJkX2V4Y2x1ZGVzKCZkaXIpOworCisJc2VlbiA9IHhjYWxsb2MocHMtPm5yLCAxKTsKKworCW1heF9sZW4gPSBmaWxsX2RpcmVjdG9yeSgmZGlyLCB0aGVfcmVwb3NpdG9yeS0+aW5kZXgsIHBzKTsKKwlmb3IgKGkgPSAwOyBpIDwgZGlyLm5yOyBpKyspIHsKKwkJc3RydWN0IGRpcl9lbnRyeSAqZW50ID0gZGlyLmVudHJpZXNbaV07CisJCWlmIChkaXJfcGF0aF9tYXRjaCgmdGhlX2luZGV4LCBlbnQsIHBzLCBtYXhfbGVuLCBzZWVuKSkgeworCQkJZm91bmQrKzsKKwkJCXN0cmJ1Zl9hZGRzdHIodW50cmFja2VkX2ZpbGVzLCBlbnQtPm5hbWUpOworCQkJLyogTlVMLXRlcm1pbmF0ZTogd2lsbCBiZSBmZWQgdG8gdXBkYXRlLWluZGV4IC16ICovCisJCQlzdHJidWZfYWRkY2godW50cmFja2VkX2ZpbGVzLCAnXDAnKTsKKwkJfQorCQlmcmVlKGVudCk7CisJfQorCisJZnJlZShzZWVuKTsKKwlmcmVlKGRpci5lbnRyaWVzKTsKKwlmcmVlKGRpci5pZ25vcmVkKTsKKwljbGVhcl9kaXJlY3RvcnkoJmRpcik7CisJcmV0dXJuIGZvdW5kOworfQorCisvKgorICogVGhlIHJldHVybiB2YWx1ZSBvZiBgY2hlY2tfY2hhbmdlc190cmFja2VkX2ZpbGVzKClgIGNhbiBiZToKKyAqCisgKiA8IDAgaWYgdGhlcmUgd2FzIGFuIGVycm9yCisgKiA9IDAgaWYgdGhlcmUgYXJlIG5vIGNoYW5nZXMuCisgKiA+IDAgaWYgdGhlcmUgYXJlIGNoYW5nZXMuCisgKi8KK3N0YXRpYyBpbnQgY2hlY2tfY2hhbmdlc190cmFja2VkX2ZpbGVzKGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcHMpCit7CisJaW50IHJlc3VsdDsKKwlzdHJ1Y3QgcmV2X2luZm8gcmV2OworCXN0cnVjdCBvYmplY3RfaWQgZHVtbXk7CisJaW50IHJldCA9IDA7CisKKwkvKiBObyBpbml0aWFsIGNvbW1pdC4gKi8KKwlpZiAoZ2V0X29pZCgiSEVBRCIsICZkdW1teSkpCisJCXJldHVybiAtMTsKKworCWlmIChyZWFkX2NhY2hlKCkgPCAwKQorCQlyZXR1cm4gLTE7CisKKwlpbml0X3JldmlzaW9ucygmcmV2LCBOVUxMKTsKKwljb3B5X3BhdGhzcGVjKCZyZXYucHJ1bmVfZGF0YSwgcHMpOworCisJcmV2LmRpZmZvcHQuZmxhZ3MucXVpY2sgPSAxOworCXJldi5kaWZmb3B0LmZsYWdzLmlnbm9yZV9zdWJtb2R1bGVzID0gMTsKKwlyZXYuYWJicmV2ID0gMDsKKworCWFkZF9oZWFkX3RvX3BlbmRpbmcoJnJldik7CisJZGlmZl9zZXR1cF9kb25lKCZyZXYuZGlmZm9wdCk7CisKKwlyZXN1bHQgPSBydW5fZGlmZl9pbmRleCgmcmV2LCAxKTsKKwlpZiAoZGlmZl9yZXN1bHRfY29kZSgmcmV2LmRpZmZvcHQsIHJlc3VsdCkpIHsKKwkJcmV0ID0gMTsKKwkJZ290byBkb25lOworCX0KKworCW9iamVjdF9hcnJheV9jbGVhcigmcmV2LnBlbmRpbmcpOworCXJlc3VsdCA9IHJ1bl9kaWZmX2ZpbGVzKCZyZXYsIDApOworCWlmIChkaWZmX3Jlc3VsdF9jb2RlKCZyZXYuZGlmZm9wdCwgcmVzdWx0KSkgeworCQlyZXQgPSAxOworCQlnb3RvIGRvbmU7CisJfQorCitkb25lOgorCWNsZWFyX3BhdGhzcGVjKCZyZXYucHJ1bmVfZGF0YSk7CisJcmV0dXJuIHJldDsKK30KKworLyoKKyAqIFRoZSBmdW5jdGlvbiB3aWxsIGZpbGwgYHVudHJhY2tlZF9maWxlc2Agd2l0aCB0aGUgbmFtZXMgb2YgdW50cmFja2VkIGZpbGVzCisgKiBJdCB3aWxsIHJldHVybiAxIGlmIHRoZXJlIHdlcmUgYW55IGNoYW5nZXMgYW5kIDAgaWYgdGhlcmUgd2VyZSBub3QuCisgKi8KK3N0YXRpYyBpbnQgY2hlY2tfY2hhbmdlcyhjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBzLCBpbnQgaW5jbHVkZV91bnRyYWNrZWQsCisJCQkgc3RydWN0IHN0cmJ1ZiAqdW50cmFja2VkX2ZpbGVzKQoreworCWludCByZXQgPSAwOworCWlmIChjaGVja19jaGFuZ2VzX3RyYWNrZWRfZmlsZXMocHMpKQorCQlyZXQgPSAxOworCisJaWYgKGluY2x1ZGVfdW50cmFja2VkICYmIGdldF91bnRyYWNrZWRfZmlsZXMocHMsIGluY2x1ZGVfdW50cmFja2VkLAorCQkJCQkJICAgICB1bnRyYWNrZWRfZmlsZXMpKQorCQlyZXQgPSAxOworCisJcmV0dXJuIHJldDsKK30KKworc3RhdGljIGludCBzYXZlX3VudHJhY2tlZF9maWxlcyhzdHJ1Y3Qgc3Rhc2hfaW5mbyAqaW5mbywgc3RydWN0IHN0cmJ1ZiAqbXNnLAorCQkJCXN0cnVjdCBzdHJidWYgZmlsZXMpCit7CisJaW50IHJldCA9IDA7CisJc3RydWN0IHN0cmJ1ZiB1bnRyYWNrZWRfbXNnID0gU1RSQlVGX0lOSVQ7CisJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3BfdXBkX2luZGV4ID0gQ0hJTERfUFJPQ0VTU19JTklUOworCXN0cnVjdCBpbmRleF9zdGF0ZSBpc3RhdGUgPSB7IE5VTEwgfTsKKworCWNwX3VwZF9pbmRleC5naXRfY21kID0gMTsKKwlhcmd2X2FycmF5X3B1c2hsKCZjcF91cGRfaW5kZXguYXJncywgInVwZGF0ZS1pbmRleCIsICIteiIsICItLWFkZCIsCisJCQkgIi0tcmVtb3ZlIiwgIi0tc3RkaW4iLCBOVUxMKTsKKwlhcmd2X2FycmF5X3B1c2hmKCZjcF91cGRfaW5kZXguZW52X2FycmF5LCAiR0lUX0lOREVYX0ZJTEU9JXMiLAorCQkJIHN0YXNoX2luZGV4X3BhdGguYnVmKTsKKworCXN0cmJ1Zl9hZGRmKCZ1bnRyYWNrZWRfbXNnLCAidW50cmFja2VkIGZpbGVzIG9uICVzXG4iLCBtc2ctPmJ1Zik7CisJaWYgKHBpcGVfY29tbWFuZCgmY3BfdXBkX2luZGV4LCBmaWxlcy5idWYsIGZpbGVzLmxlbiwgTlVMTCwgMCwKKwkJCSBOVUxMLCAwKSkgeworCQlyZXQgPSAtMTsKKwkJZ290byBkb25lOworCX0KKworCWlmICh3cml0ZV9pbmRleF9hc190cmVlKCZpbmZvLT51X3RyZWUsICZpc3RhdGUsIHN0YXNoX2luZGV4X3BhdGguYnVmLCAwLAorCQkJCU5VTEwpKSB7CisJCXJldCA9IC0xOworCQlnb3RvIGRvbmU7CisJfQorCisJaWYgKGNvbW1pdF90cmVlKHVudHJhY2tlZF9tc2cuYnVmLCB1bnRyYWNrZWRfbXNnLmxlbiwKKwkJCSZpbmZvLT51X3RyZWUsIE5VTEwsICZpbmZvLT51X2NvbW1pdCwgTlVMTCwgTlVMTCkpIHsKKwkJcmV0ID0gLTE7CisJCWdvdG8gZG9uZTsKKwl9CisKK2RvbmU6CisJZGlzY2FyZF9pbmRleCgmaXN0YXRlKTsKKwlzdHJidWZfcmVsZWFzZSgmdW50cmFja2VkX21zZyk7CisJcmVtb3ZlX3BhdGgoc3Rhc2hfaW5kZXhfcGF0aC5idWYpOworCXJldHVybiByZXQ7Cit9CisKK3N0YXRpYyBpbnQgc3Rhc2hfcGF0Y2goc3RydWN0IHN0YXNoX2luZm8gKmluZm8sIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcHMsCisJCSAgICAgICBzdHJ1Y3Qgc3RyYnVmICpvdXRfcGF0Y2gsIGludCBxdWlldCkKK3sKKwlpbnQgcmV0ID0gMDsKKwlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjcF9yZWFkX3RyZWUgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3BfZGlmZl90cmVlID0gQ0hJTERfUFJPQ0VTU19JTklUOworCXN0cnVjdCBpbmRleF9zdGF0ZSBpc3RhdGUgPSB7IE5VTEwgfTsKKwljaGFyICpvbGRfaW5kZXhfZW52ID0gTlVMTCwgKm9sZF9yZXBvX2luZGV4X2ZpbGU7CisKKwlyZW1vdmVfcGF0aChzdGFzaF9pbmRleF9wYXRoLmJ1Zik7CisKKwljcF9yZWFkX3RyZWUuZ2l0X2NtZCA9IDE7CisJYXJndl9hcnJheV9wdXNobCgmY3BfcmVhZF90cmVlLmFyZ3MsICJyZWFkLXRyZWUiLCAiSEVBRCIsIE5VTEwpOworCWFyZ3ZfYXJyYXlfcHVzaGYoJmNwX3JlYWRfdHJlZS5lbnZfYXJyYXksICJHSVRfSU5ERVhfRklMRT0lcyIsCisJCQkgc3Rhc2hfaW5kZXhfcGF0aC5idWYpOworCWlmIChydW5fY29tbWFuZCgmY3BfcmVhZF90cmVlKSkgeworCQlyZXQgPSAtMTsKKwkJZ290byBkb25lOworCX0KKworCS8qIEZpbmQgb3V0IHdoYXQgdGhlIHVzZXIgd2FudHMuICovCisJb2xkX3JlcG9faW5kZXhfZmlsZSA9IHRoZV9yZXBvc2l0b3J5LT5pbmRleF9maWxlOworCXRoZV9yZXBvc2l0b3J5LT5pbmRleF9maWxlID0gc3Rhc2hfaW5kZXhfcGF0aC5idWY7CisJb2xkX2luZGV4X2VudiA9IHhzdHJkdXBfb3JfbnVsbChnZXRlbnYoSU5ERVhfRU5WSVJPTk1FTlQpKTsKKwlzZXRlbnYoSU5ERVhfRU5WSVJPTk1FTlQsIHRoZV9yZXBvc2l0b3J5LT5pbmRleF9maWxlLCAxKTsKKworCXJldCA9IHJ1bl9hZGRfaW50ZXJhY3RpdmUoTlVMTCwgIi0tcGF0Y2g9c3Rhc2giLCBwcyk7CisKKwl0aGVfcmVwb3NpdG9yeS0+aW5kZXhfZmlsZSA9IG9sZF9yZXBvX2luZGV4X2ZpbGU7CisJaWYgKG9sZF9pbmRleF9lbnYgJiYgKm9sZF9pbmRleF9lbnYpCisJCXNldGVudihJTkRFWF9FTlZJUk9OTUVOVCwgb2xkX2luZGV4X2VudiwgMSk7CisJZWxzZQorCQl1bnNldGVudihJTkRFWF9FTlZJUk9OTUVOVCk7CisJRlJFRV9BTkRfTlVMTChvbGRfaW5kZXhfZW52KTsKKworCS8qIFN0YXRlIG9mIHRoZSB3b3JraW5nIHRyZWUuICovCisJaWYgKHdyaXRlX2luZGV4X2FzX3RyZWUoJmluZm8tPndfdHJlZSwgJmlzdGF0ZSwgc3Rhc2hfaW5kZXhfcGF0aC5idWYsIDAsCisJCQkJTlVMTCkpIHsKKwkJcmV0ID0gLTE7CisJCWdvdG8gZG9uZTsKKwl9CisKKwljcF9kaWZmX3RyZWUuZ2l0X2NtZCA9IDE7CisJYXJndl9hcnJheV9wdXNobCgmY3BfZGlmZl90cmVlLmFyZ3MsICJkaWZmLXRyZWUiLCAiLXAiLCAiSEVBRCIsCisJCQkgb2lkX3RvX2hleCgmaW5mby0+d190cmVlKSwgIi0tIiwgTlVMTCk7CisJaWYgKHBpcGVfY29tbWFuZCgmY3BfZGlmZl90cmVlLCBOVUxMLCAwLCBvdXRfcGF0Y2gsIDAsIE5VTEwsIDApKSB7CisJCXJldCA9IC0xOworCQlnb3RvIGRvbmU7CisJfQorCisJaWYgKCFvdXRfcGF0Y2gtPmxlbikgeworCQlpZiAoIXF1aWV0KQorCQkJZnByaW50Zl9sbihzdGRlcnIsIF8oIk5vIGNoYW5nZXMgc2VsZWN0ZWQiKSk7CisJCXJldCA9IDE7CisJfQorCitkb25lOgorCWRpc2NhcmRfaW5kZXgoJmlzdGF0ZSk7CisJcmVtb3ZlX3BhdGgoc3Rhc2hfaW5kZXhfcGF0aC5idWYpOworCXJldHVybiByZXQ7Cit9CisKK3N0YXRpYyBpbnQgc3Rhc2hfd29ya2luZ190cmVlKHN0cnVjdCBzdGFzaF9pbmZvICppbmZvLCBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBzKQoreworCWludCByZXQgPSAwOworCXN0cnVjdCByZXZfaW5mbyByZXY7CisJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3BfdXBkX2luZGV4ID0gQ0hJTERfUFJPQ0VTU19JTklUOworCXN0cnVjdCBzdHJidWYgZGlmZl9vdXRwdXQgPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3QgaW5kZXhfc3RhdGUgaXN0YXRlID0geyBOVUxMIH07CisKKwlpbml0X3JldmlzaW9ucygmcmV2LCBOVUxMKTsKKwljb3B5X3BhdGhzcGVjKCZyZXYucHJ1bmVfZGF0YSwgcHMpOworCisJc2V0X2FsdGVybmF0ZV9pbmRleF9vdXRwdXQoc3Rhc2hfaW5kZXhfcGF0aC5idWYpOworCWlmIChyZXNldF90cmVlKCZpbmZvLT5pX3RyZWUsIDAsIDApKSB7CisJCXJldCA9IC0xOworCQlnb3RvIGRvbmU7CisJfQorCXNldF9hbHRlcm5hdGVfaW5kZXhfb3V0cHV0KE5VTEwpOworCisJcmV2LmRpZmZvcHQub3V0cHV0X2Zvcm1hdCA9IERJRkZfRk9STUFUX0NBTExCQUNLOworCXJldi5kaWZmb3B0LmZvcm1hdF9jYWxsYmFjayA9IGFkZF9kaWZmX3RvX2J1ZjsKKwlyZXYuZGlmZm9wdC5mb3JtYXRfY2FsbGJhY2tfZGF0YSA9ICZkaWZmX291dHB1dDsKKworCWlmIChyZWFkX2NhY2hlX3ByZWxvYWQoJnJldi5kaWZmb3B0LnBhdGhzcGVjKSA8IDApIHsKKwkJcmV0ID0gLTE7CisJCWdvdG8gZG9uZTsKKwl9CisKKwlhZGRfcGVuZGluZ19vYmplY3QoJnJldiwgcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCAmaW5mby0+Yl9jb21taXQpLAorCQkJICAgIiIpOworCWlmIChydW5fZGlmZl9pbmRleCgmcmV2LCAwKSkgeworCQlyZXQgPSAtMTsKKwkJZ290byBkb25lOworCX0KKworCWNwX3VwZF9pbmRleC5naXRfY21kID0gMTsKKwlhcmd2X2FycmF5X3B1c2hsKCZjcF91cGRfaW5kZXguYXJncywgInVwZGF0ZS1pbmRleCIsCisJCQkgIi0taWdub3JlLXNraXAtd29ya3RyZWUtZW50cmllcyIsCisJCQkgIi16IiwgIi0tYWRkIiwgIi0tcmVtb3ZlIiwgIi0tc3RkaW4iLCBOVUxMKTsKKwlhcmd2X2FycmF5X3B1c2hmKCZjcF91cGRfaW5kZXguZW52X2FycmF5LCAiR0lUX0lOREVYX0ZJTEU9JXMiLAorCQkJIHN0YXNoX2luZGV4X3BhdGguYnVmKTsKKworCWlmIChwaXBlX2NvbW1hbmQoJmNwX3VwZF9pbmRleCwgZGlmZl9vdXRwdXQuYnVmLCBkaWZmX291dHB1dC5sZW4sCisJCQkgTlVMTCwgMCwgTlVMTCwgMCkpIHsKKwkJcmV0ID0gLTE7CisJCWdvdG8gZG9uZTsKKwl9CisKKwlpZiAod3JpdGVfaW5kZXhfYXNfdHJlZSgmaW5mby0+d190cmVlLCAmaXN0YXRlLCBzdGFzaF9pbmRleF9wYXRoLmJ1ZiwgMCwKKwkJCQlOVUxMKSkgeworCQlyZXQgPSAtMTsKKwkJZ290byBkb25lOworCX0KKworZG9uZToKKwlkaXNjYXJkX2luZGV4KCZpc3RhdGUpOworCVVOTEVBSyhyZXYpOworCW9iamVjdF9hcnJheV9jbGVhcigmcmV2LnBlbmRpbmcpOworCWNsZWFyX3BhdGhzcGVjKCZyZXYucHJ1bmVfZGF0YSk7CisJc3RyYnVmX3JlbGVhc2UoJmRpZmZfb3V0cHV0KTsKKwlyZW1vdmVfcGF0aChzdGFzaF9pbmRleF9wYXRoLmJ1Zik7CisJcmV0dXJuIHJldDsKK30KKworc3RhdGljIGludCBkb19jcmVhdGVfc3Rhc2goY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwcywgc3RydWN0IHN0cmJ1ZiAqc3Rhc2hfbXNnX2J1ZiwKKwkJCSAgIGludCBpbmNsdWRlX3VudHJhY2tlZCwgaW50IHBhdGNoX21vZGUsCisJCQkgICBzdHJ1Y3Qgc3Rhc2hfaW5mbyAqaW5mbywgc3RydWN0IHN0cmJ1ZiAqcGF0Y2gsCisJCQkgICBpbnQgcXVpZXQpCit7CisJaW50IHJldCA9IDA7CisJaW50IGZsYWdzID0gMDsKKwlpbnQgdW50cmFja2VkX2NvbW1pdF9vcHRpb24gPSAwOworCWNvbnN0IGNoYXIgKmhlYWRfc2hvcnRfc2hhMSA9IE5VTEw7CisJY29uc3QgY2hhciAqYnJhbmNoX3JlZiA9IE5VTEw7CisJY29uc3QgY2hhciAqYnJhbmNoX25hbWUgPSAiKG5vIGJyYW5jaCkiOworCXN0cnVjdCBjb21taXQgKmhlYWRfY29tbWl0ID0gTlVMTDsKKwlzdHJ1Y3QgY29tbWl0X2xpc3QgKnBhcmVudHMgPSBOVUxMOworCXN0cnVjdCBzdHJidWYgbXNnID0gU1RSQlVGX0lOSVQ7CisJc3RydWN0IHN0cmJ1ZiBjb21taXRfdHJlZV9sYWJlbCA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBzdHJidWYgdW50cmFja2VkX2ZpbGVzID0gU1RSQlVGX0lOSVQ7CisKKwlwcmVwYXJlX2ZhbGxiYWNrX2lkZW50KCJnaXQgc3Rhc2giLCAiZ2l0QHN0YXNoIik7CisKKwlyZWFkX2NhY2hlX3ByZWxvYWQoTlVMTCk7CisJaWYgKHJlZnJlc2hfYW5kX3dyaXRlX2NhY2hlKFJFRlJFU0hfUVVJRVQsIDAsIDApIDwgMCkgeworCQlyZXQgPSAtMTsKKwkJZ290byBkb25lOworCX0KKworCWlmIChnZXRfb2lkKCJIRUFEIiwgJmluZm8tPmJfY29tbWl0KSkgeworCQlpZiAoIXF1aWV0KQorCQkJZnByaW50Zl9sbihzdGRlcnIsIF8oIllvdSBkbyBub3QgaGF2ZSAiCisJCQkJCSAgICAgInRoZSBpbml0aWFsIGNvbW1pdCB5ZXQiKSk7CisJCXJldCA9IC0xOworCQlnb3RvIGRvbmU7CisJfSBlbHNlIHsKKwkJaGVhZF9jb21taXQgPSBsb29rdXBfY29tbWl0KHRoZV9yZXBvc2l0b3J5LCAmaW5mby0+Yl9jb21taXQpOworCX0KKworCWlmICghY2hlY2tfY2hhbmdlcyhwcywgaW5jbHVkZV91bnRyYWNrZWQsICZ1bnRyYWNrZWRfZmlsZXMpKSB7CisJCXJldCA9IDE7CisJCWdvdG8gZG9uZTsKKwl9CisKKwlicmFuY2hfcmVmID0gcmVzb2x2ZV9yZWZfdW5zYWZlKCJIRUFEIiwgMCwgTlVMTCwgJmZsYWdzKTsKKwlpZiAoZmxhZ3MgJiBSRUZfSVNTWU1SRUYpCisJCWJyYW5jaF9uYW1lID0gc3RycmNocihicmFuY2hfcmVmLCAnLycpICsgMTsKKwloZWFkX3Nob3J0X3NoYTEgPSBmaW5kX3VuaXF1ZV9hYmJyZXYoJmhlYWRfY29tbWl0LT5vYmplY3Qub2lkLAorCQkJCQkgICAgIERFRkFVTFRfQUJCUkVWKTsKKwlzdHJidWZfYWRkZigmbXNnLCAiJXM6ICVzICIsIGJyYW5jaF9uYW1lLCBoZWFkX3Nob3J0X3NoYTEpOworCXBwX2NvbW1pdF9lYXN5KENNSVRfRk1UX09ORUxJTkUsIGhlYWRfY29tbWl0LCAmbXNnKTsKKworCXN0cmJ1Zl9hZGRmKCZjb21taXRfdHJlZV9sYWJlbCwgImluZGV4IG9uICVzXG4iLCBtc2cuYnVmKTsKKwljb21taXRfbGlzdF9pbnNlcnQoaGVhZF9jb21taXQsICZwYXJlbnRzKTsKKwlpZiAod3JpdGVfY2FjaGVfYXNfdHJlZSgmaW5mby0+aV90cmVlLCAwLCBOVUxMKSB8fAorCSAgICBjb21taXRfdHJlZShjb21taXRfdHJlZV9sYWJlbC5idWYsIGNvbW1pdF90cmVlX2xhYmVsLmxlbiwKKwkJCSZpbmZvLT5pX3RyZWUsIHBhcmVudHMsICZpbmZvLT5pX2NvbW1pdCwgTlVMTCwgTlVMTCkpIHsKKwkJaWYgKCFxdWlldCkKKwkJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCAiCisJCQkJCSAgICAgImluZGV4IHN0YXRlIikpOworCQlyZXQgPSAtMTsKKwkJZ290byBkb25lOworCX0KKworCWlmIChpbmNsdWRlX3VudHJhY2tlZCkgeworCQlpZiAoc2F2ZV91bnRyYWNrZWRfZmlsZXMoaW5mbywgJm1zZywgdW50cmFja2VkX2ZpbGVzKSkgeworCQkJaWYgKCFxdWlldCkKKwkJCQlmcHJpbnRmX2xuKHN0ZGVyciwgXygiQ2Fubm90IHNhdmUgIgorCQkJCQkJICAgICAidGhlIHVudHJhY2tlZCBmaWxlcyIpKTsKKwkJCXJldCA9IC0xOworCQkJZ290byBkb25lOworCQl9CisJCXVudHJhY2tlZF9jb21taXRfb3B0aW9uID0gMTsKKwl9CisJaWYgKHBhdGNoX21vZGUpIHsKKwkJcmV0ID0gc3Rhc2hfcGF0Y2goaW5mbywgcHMsIHBhdGNoLCBxdWlldCk7CisJCWlmIChyZXQgPCAwKSB7CisJCQlpZiAoIXF1aWV0KQorCQkJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCAiCisJCQkJCQkgICAgICJ3b3JrdHJlZSBzdGF0ZSIpKTsKKwkJCWdvdG8gZG9uZTsKKwkJfSBlbHNlIGlmIChyZXQgPiAwKSB7CisJCQlnb3RvIGRvbmU7CisJCX0KKwl9IGVsc2UgeworCQlpZiAoc3Rhc2hfd29ya2luZ190cmVlKGluZm8sIHBzKSkgeworCQkJaWYgKCFxdWlldCkKKwkJCQlmcHJpbnRmX2xuKHN0ZGVyciwgXygiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgIgorCQkJCQkJICAgICAid29ya3RyZWUgc3RhdGUiKSk7CisJCQlyZXQgPSAtMTsKKwkJCWdvdG8gZG9uZTsKKwkJfQorCX0KKworCWlmICghc3Rhc2hfbXNnX2J1Zi0+bGVuKQorCQlzdHJidWZfYWRkZihzdGFzaF9tc2dfYnVmLCAiV0lQIG9uICVzIiwgbXNnLmJ1Zik7CisJZWxzZQorCQlzdHJidWZfaW5zZXJ0ZihzdGFzaF9tc2dfYnVmLCAwLCAiT24gJXM6ICIsIGJyYW5jaF9uYW1lKTsKKworCS8qCisJICogYHBhcmVudHNgIHdpbGwgYmUgZW1wdHkgYWZ0ZXIgY2FsbGluZyBgY29tbWl0X3RyZWUoKWAsIHNvIHRoZXJlIGlzCisJICogbm8gbmVlZCB0byBjYWxsIGBmcmVlX2NvbW1pdF9saXN0KClgCisJICovCisJcGFyZW50cyA9IE5VTEw7CisJaWYgKHVudHJhY2tlZF9jb21taXRfb3B0aW9uKQorCQljb21taXRfbGlzdF9pbnNlcnQobG9va3VwX2NvbW1pdCh0aGVfcmVwb3NpdG9yeSwKKwkJCQkJCSAmaW5mby0+dV9jb21taXQpLAorCQkJCSAgICZwYXJlbnRzKTsKKwljb21taXRfbGlzdF9pbnNlcnQobG9va3VwX2NvbW1pdCh0aGVfcmVwb3NpdG9yeSwgJmluZm8tPmlfY29tbWl0KSwKKwkJCSAgICZwYXJlbnRzKTsKKwljb21taXRfbGlzdF9pbnNlcnQoaGVhZF9jb21taXQsICZwYXJlbnRzKTsKKworCWlmIChjb21taXRfdHJlZShzdGFzaF9tc2dfYnVmLT5idWYsIHN0YXNoX21zZ19idWYtPmxlbiwgJmluZm8tPndfdHJlZSwKKwkJCXBhcmVudHMsICZpbmZvLT53X2NvbW1pdCwgTlVMTCwgTlVMTCkpIHsKKwkJaWYgKCFxdWlldCkKKwkJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJDYW5ub3QgcmVjb3JkICIKKwkJCQkJICAgICAid29ya2luZyB0cmVlIHN0YXRlIikpOworCQlyZXQgPSAtMTsKKwkJZ290byBkb25lOworCX0KKworZG9uZToKKwlzdHJidWZfcmVsZWFzZSgmY29tbWl0X3RyZWVfbGFiZWwpOworCXN0cmJ1Zl9yZWxlYXNlKCZtc2cpOworCXN0cmJ1Zl9yZWxlYXNlKCZ1bnRyYWNrZWRfZmlsZXMpOworCXJldHVybiByZXQ7Cit9CisKK3N0YXRpYyBpbnQgY3JlYXRlX3N0YXNoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KQoreworCWludCByZXQgPSAwOworCXN0cnVjdCBzdHJidWYgc3Rhc2hfbXNnX2J1ZiA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBzdGFzaF9pbmZvIGluZm87CisJc3RydWN0IHBhdGhzcGVjIHBzOworCisJLyogU3RhcnRpbmcgd2l0aCBhcmd2WzFdLCBzaW5jZSBhcmd2WzBdIGlzICJjcmVhdGUiICovCisJc3RyYnVmX2pvaW5fYXJndigmc3Rhc2hfbXNnX2J1ZiwgYXJnYyAtIDEsICsrYXJndiwgJyAnKTsKKworCW1lbXNldCgmcHMsIDAsIHNpemVvZihwcykpOworCWlmICghY2hlY2tfY2hhbmdlc190cmFja2VkX2ZpbGVzKCZwcykpCisJCXJldHVybiAwOworCisJcmV0ID0gZG9fY3JlYXRlX3N0YXNoKCZwcywgJnN0YXNoX21zZ19idWYsIDAsIDAsICZpbmZvLAorCQkJICAgICAgTlVMTCwgMCk7CisJaWYgKCFyZXQpCisJCXByaW50Zl9sbigiJXMiLCBvaWRfdG9faGV4KCZpbmZvLndfY29tbWl0KSk7CisKKwlzdHJidWZfcmVsZWFzZSgmc3Rhc2hfbXNnX2J1Zik7CisJcmV0dXJuIHJldDsKK30KKworc3RhdGljIGludCBkb19wdXNoX3N0YXNoKGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcHMsIGNvbnN0IGNoYXIgKnN0YXNoX21zZywgaW50IHF1aWV0LAorCQkJIGludCBrZWVwX2luZGV4LCBpbnQgcGF0Y2hfbW9kZSwgaW50IGluY2x1ZGVfdW50cmFja2VkKQoreworCWludCByZXQgPSAwOworCXN0cnVjdCBzdGFzaF9pbmZvIGluZm87CisJc3RydWN0IHN0cmJ1ZiBwYXRjaCA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBzdHJidWYgc3Rhc2hfbXNnX2J1ZiA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBzdHJidWYgdW50cmFja2VkX2ZpbGVzID0gU1RSQlVGX0lOSVQ7CisKKwlpZiAocGF0Y2hfbW9kZSAmJiBrZWVwX2luZGV4ID09IC0xKQorCQlrZWVwX2luZGV4ID0gMTsKKworCWlmIChwYXRjaF9tb2RlICYmIGluY2x1ZGVfdW50cmFja2VkKSB7CisJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCIKKwkJCQkgICAgICIgb3IgLS1hbGwgYXQgdGhlIHNhbWUgdGltZSIpKTsKKwkJcmV0ID0gLTE7CisJCWdvdG8gZG9uZTsKKwl9CisKKwlyZWFkX2NhY2hlX3ByZWxvYWQoTlVMTCk7CisJaWYgKCFpbmNsdWRlX3VudHJhY2tlZCAmJiBwcy0+bnIpIHsKKwkJaW50IGk7CisJCWNoYXIgKnBzX21hdGNoZWQgPSB4Y2FsbG9jKHBzLT5uciwgMSk7CisKKwkJZm9yIChpID0gMDsgaSA8IGFjdGl2ZV9ucjsgaSsrKQorCQkJY2VfcGF0aF9tYXRjaCgmdGhlX2luZGV4LCBhY3RpdmVfY2FjaGVbaV0sIHBzLAorCQkJCSAgICAgIHBzX21hdGNoZWQpOworCisJCWlmIChyZXBvcnRfcGF0aF9lcnJvcihwc19tYXRjaGVkLCBwcykpIHsKKwkJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJEaWQgeW91IGZvcmdldCB0byAnZ2l0IGFkZCc/IikpOworCQkJcmV0ID0gLTE7CisJCQlmcmVlKHBzX21hdGNoZWQpOworCQkJZ290byBkb25lOworCQl9CisJCWZyZWUocHNfbWF0Y2hlZCk7CisJfQorCisJaWYgKHJlZnJlc2hfYW5kX3dyaXRlX2NhY2hlKFJFRlJFU0hfUVVJRVQsIDAsIDApKSB7CisJCXJldCA9IC0xOworCQlnb3RvIGRvbmU7CisJfQorCisJaWYgKCFjaGVja19jaGFuZ2VzKHBzLCBpbmNsdWRlX3VudHJhY2tlZCwgJnVudHJhY2tlZF9maWxlcykpIHsKKwkJaWYgKCFxdWlldCkKKwkJCXByaW50Zl9sbihfKCJObyBsb2NhbCBjaGFuZ2VzIHRvIHNhdmUiKSk7CisJCWdvdG8gZG9uZTsKKwl9CisKKwlpZiAoIXJlZmxvZ19leGlzdHMocmVmX3N0YXNoKSAmJiBkb19jbGVhcl9zdGFzaCgpKSB7CisJCXJldCA9IC0xOworCQlpZiAoIXF1aWV0KQorCQkJZnByaW50Zl9sbihzdGRlcnIsIF8oIkNhbm5vdCBpbml0aWFsaXplIHN0YXNoIikpOworCQlnb3RvIGRvbmU7CisJfQorCisJaWYgKHN0YXNoX21zZykKKwkJc3RyYnVmX2FkZHN0cigmc3Rhc2hfbXNnX2J1Ziwgc3Rhc2hfbXNnKTsKKwlpZiAoZG9fY3JlYXRlX3N0YXNoKHBzLCAmc3Rhc2hfbXNnX2J1ZiwgaW5jbHVkZV91bnRyYWNrZWQsIHBhdGNoX21vZGUsCisJCQkgICAgJmluZm8sICZwYXRjaCwgcXVpZXQpKSB7CisJCXJldCA9IC0xOworCQlnb3RvIGRvbmU7CisJfQorCisJaWYgKGRvX3N0b3JlX3N0YXNoKCZpbmZvLndfY29tbWl0LCBzdGFzaF9tc2dfYnVmLmJ1ZiwgMSkpIHsKKwkJcmV0ID0gLTE7CisJCWlmICghcXVpZXQpCisJCQlmcHJpbnRmX2xuKHN0ZGVyciwgXygiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgc3RhdHVzIikpOworCQlnb3RvIGRvbmU7CisJfQorCisJaWYgKCFxdWlldCkKKwkJcHJpbnRmX2xuKF8oIlNhdmVkIHdvcmtpbmcgZGlyZWN0b3J5IGFuZCBpbmRleCBzdGF0ZSAlcyIpLAorCQkJICBzdGFzaF9tc2dfYnVmLmJ1Zik7CisKKwlpZiAoIXBhdGNoX21vZGUpIHsKKwkJaWYgKGluY2x1ZGVfdW50cmFja2VkICYmICFwcy0+bnIpIHsKKwkJCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNwID0gQ0hJTERfUFJPQ0VTU19JTklUOworCisJCQljcC5naXRfY21kID0gMTsKKwkJCWFyZ3ZfYXJyYXlfcHVzaGwoJmNwLmFyZ3MsICJjbGVhbiIsICItLWZvcmNlIiwKKwkJCQkJICItLXF1aWV0IiwgIi1kIiwgTlVMTCk7CisJCQlpZiAoaW5jbHVkZV91bnRyYWNrZWQgPT0gSU5DTFVERV9BTExfRklMRVMpCisJCQkJYXJndl9hcnJheV9wdXNoKCZjcC5hcmdzLCAiLXgiKTsKKwkJCWlmIChydW5fY29tbWFuZCgmY3ApKSB7CisJCQkJcmV0ID0gLTE7CisJCQkJZ290byBkb25lOworCQkJfQorCQl9CisJCWRpc2NhcmRfY2FjaGUoKTsKKwkJaWYgKHBzLT5ucikgeworCQkJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3BfYWRkID0gQ0hJTERfUFJPQ0VTU19JTklUOworCQkJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3BfZGlmZiA9IENISUxEX1BST0NFU1NfSU5JVDsKKwkJCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNwX2FwcGx5ID0gQ0hJTERfUFJPQ0VTU19JTklUOworCQkJc3RydWN0IHN0cmJ1ZiBvdXQgPSBTVFJCVUZfSU5JVDsKKworCQkJY3BfYWRkLmdpdF9jbWQgPSAxOworCQkJYXJndl9hcnJheV9wdXNoKCZjcF9hZGQuYXJncywgImFkZCIpOworCQkJaWYgKCFpbmNsdWRlX3VudHJhY2tlZCkKKwkJCQlhcmd2X2FycmF5X3B1c2goJmNwX2FkZC5hcmdzLCAiLXUiKTsKKwkJCWlmIChpbmNsdWRlX3VudHJhY2tlZCA9PSBJTkNMVURFX0FMTF9GSUxFUykKKwkJCQlhcmd2X2FycmF5X3B1c2goJmNwX2FkZC5hcmdzLCAiLS1mb3JjZSIpOworCQkJYXJndl9hcnJheV9wdXNoKCZjcF9hZGQuYXJncywgIi0tIik7CisJCQlhZGRfcGF0aHNwZWNzKCZjcF9hZGQuYXJncywgcHMpOworCQkJaWYgKHJ1bl9jb21tYW5kKCZjcF9hZGQpKSB7CisJCQkJcmV0ID0gLTE7CisJCQkJZ290byBkb25lOworCQkJfQorCisJCQljcF9kaWZmLmdpdF9jbWQgPSAxOworCQkJYXJndl9hcnJheV9wdXNobCgmY3BfZGlmZi5hcmdzLCAiZGlmZi1pbmRleCIsICItcCIsCisJCQkJCSAiLS1jYWNoZWQiLCAiLS1iaW5hcnkiLCAiSEVBRCIsICItLSIsCisJCQkJCSBOVUxMKTsKKwkJCWFkZF9wYXRoc3BlY3MoJmNwX2RpZmYuYXJncywgcHMpOworCQkJaWYgKHBpcGVfY29tbWFuZCgmY3BfZGlmZiwgTlVMTCwgMCwgJm91dCwgMCwgTlVMTCwgMCkpIHsKKwkJCQlyZXQgPSAtMTsKKwkJCQlnb3RvIGRvbmU7CisJCQl9CisKKwkJCWNwX2FwcGx5LmdpdF9jbWQgPSAxOworCQkJYXJndl9hcnJheV9wdXNobCgmY3BfYXBwbHkuYXJncywgImFwcGx5IiwgIi0taW5kZXgiLAorCQkJCQkgIi1SIiwgTlVMTCk7CisJCQlpZiAocGlwZV9jb21tYW5kKCZjcF9hcHBseSwgb3V0LmJ1Ziwgb3V0LmxlbiwgTlVMTCwgMCwKKwkJCQkJIE5VTEwsIDApKSB7CisJCQkJcmV0ID0gLTE7CisJCQkJZ290byBkb25lOworCQkJfQorCQl9IGVsc2UgeworCQkJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisJCQljcC5naXRfY21kID0gMTsKKwkJCWFyZ3ZfYXJyYXlfcHVzaGwoJmNwLmFyZ3MsICJyZXNldCIsICItLWhhcmQiLCAiLXEiLAorCQkJCQkgIi0tbm8tcmVjdXJzZS1zdWJtb2R1bGVzIiwgTlVMTCk7CisJCQlpZiAocnVuX2NvbW1hbmQoJmNwKSkgeworCQkJCXJldCA9IC0xOworCQkJCWdvdG8gZG9uZTsKKwkJCX0KKwkJfQorCisJCWlmIChrZWVwX2luZGV4ID09IDEgJiYgIWlzX251bGxfb2lkKCZpbmZvLmlfdHJlZSkpIHsKKwkJCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNwID0gQ0hJTERfUFJPQ0VTU19JTklUOworCisJCQljcC5naXRfY21kID0gMTsKKwkJCWFyZ3ZfYXJyYXlfcHVzaGwoJmNwLmFyZ3MsICJjaGVja291dCIsICItLW5vLW92ZXJsYXkiLAorCQkJCQkgb2lkX3RvX2hleCgmaW5mby5pX3RyZWUpLCAiLS0iLCBOVUxMKTsKKwkJCWlmICghcHMtPm5yKQorCQkJCWFyZ3ZfYXJyYXlfcHVzaCgmY3AuYXJncywgIjovIik7CisJCQllbHNlCisJCQkJYWRkX3BhdGhzcGVjcygmY3AuYXJncywgcHMpOworCQkJaWYgKHJ1bl9jb21tYW5kKCZjcCkpIHsKKwkJCQlyZXQgPSAtMTsKKwkJCQlnb3RvIGRvbmU7CisJCQl9CisJCX0KKwkJZ290byBkb25lOworCX0gZWxzZSB7CisJCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNwID0gQ0hJTERfUFJPQ0VTU19JTklUOworCisJCWNwLmdpdF9jbWQgPSAxOworCQlhcmd2X2FycmF5X3B1c2hsKCZjcC5hcmdzLCAiYXBwbHkiLCAiLVIiLCBOVUxMKTsKKworCQlpZiAocGlwZV9jb21tYW5kKCZjcCwgcGF0Y2guYnVmLCBwYXRjaC5sZW4sIE5VTEwsIDAsIE5VTEwsIDApKSB7CisJCQlpZiAoIXF1aWV0KQorCQkJCWZwcmludGZfbG4oc3RkZXJyLCBfKCJDYW5ub3QgcmVtb3ZlICIKKwkJCQkJCSAgICAgIndvcmt0cmVlIGNoYW5nZXMiKSk7CisJCQlyZXQgPSAtMTsKKwkJCWdvdG8gZG9uZTsKKwkJfQorCisJCWlmIChrZWVwX2luZGV4IDwgMSkgeworCQkJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisKKwkJCWNwLmdpdF9jbWQgPSAxOworCQkJYXJndl9hcnJheV9wdXNobCgmY3AuYXJncywgInJlc2V0IiwgIi1xIiwgIi0tIiwgTlVMTCk7CisJCQlhZGRfcGF0aHNwZWNzKCZjcC5hcmdzLCBwcyk7CisJCQlpZiAocnVuX2NvbW1hbmQoJmNwKSkgeworCQkJCXJldCA9IC0xOworCQkJCWdvdG8gZG9uZTsKKwkJCX0KKwkJfQorCQlnb3RvIGRvbmU7CisJfQorCitkb25lOgorCXN0cmJ1Zl9yZWxlYXNlKCZzdGFzaF9tc2dfYnVmKTsKKwlyZXR1cm4gcmV0OworfQorCitzdGF0aWMgaW50IHB1c2hfc3Rhc2goaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgsCisJCSAgICAgIGludCBwdXNoX2Fzc3VtZWQpCit7CisJaW50IGZvcmNlX2Fzc3VtZSA9IDA7CisJaW50IGtlZXBfaW5kZXggPSAtMTsKKwlpbnQgcGF0Y2hfbW9kZSA9IDA7CisJaW50IGluY2x1ZGVfdW50cmFja2VkID0gMDsKKwlpbnQgcXVpZXQgPSAwOworCWludCBwYXRoc3BlY19maWxlX251bCA9IDA7CisJY29uc3QgY2hhciAqc3Rhc2hfbXNnID0gTlVMTDsKKwljb25zdCBjaGFyICpwYXRoc3BlY19mcm9tX2ZpbGUgPSBOVUxMOworCXN0cnVjdCBwYXRoc3BlYyBwczsKKwlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwkJT1BUX0JPT0woJ2snLCAia2VlcC1pbmRleCIsICZrZWVwX2luZGV4LAorCQkJIE5fKCJrZWVwIGluZGV4IikpLAorCQlPUFRfQk9PTCgncCcsICJwYXRjaCIsICZwYXRjaF9tb2RlLAorCQkJIE5fKCJzdGFzaCBpbiBwYXRjaCBtb2RlIikpLAorCQlPUFRfX1FVSUVUKCZxdWlldCwgTl8oInF1aWV0IG1vZGUiKSksCisJCU9QVF9CT09MKCd1JywgImluY2x1ZGUtdW50cmFja2VkIiwgJmluY2x1ZGVfdW50cmFja2VkLAorCQkJIE5fKCJpbmNsdWRlIHVudHJhY2tlZCBmaWxlcyBpbiBzdGFzaCIpKSwKKwkJT1BUX1NFVF9JTlQoJ2EnLCAiYWxsIiwgJmluY2x1ZGVfdW50cmFja2VkLAorCQkJICAgIE5fKCJpbmNsdWRlIGlnbm9yZSBmaWxlcyIpLCAyKSwKKwkJT1BUX1NUUklORygnbScsICJtZXNzYWdlIiwgJnN0YXNoX21zZywgTl8oIm1lc3NhZ2UiKSwKKwkJCSAgIE5fKCJzdGFzaCBtZXNzYWdlIikpLAorCQlPUFRfUEFUSFNQRUNfRlJPTV9GSUxFKCZwYXRoc3BlY19mcm9tX2ZpbGUpLAorCQlPUFRfUEFUSFNQRUNfRklMRV9OVUwoJnBhdGhzcGVjX2ZpbGVfbnVsKSwKKwkJT1BUX0VORCgpCisJfTsKKworCWlmIChhcmdjKSB7CisJCWZvcmNlX2Fzc3VtZSA9ICFzdHJjbXAoYXJndlswXSwgIi1wIik7CisJCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywKKwkJCQkgICAgIGdpdF9zdGFzaF9wdXNoX3VzYWdlLAorCQkJCSAgICAgUEFSU0VfT1BUX0tFRVBfREFTSERBU0gpOworCX0KKworCWlmIChhcmdjKSB7CisJCWlmICghc3RyY21wKGFyZ3ZbMF0sICItLSIpKSB7CisJCQlhcmdjLS07CisJCQlhcmd2Kys7CisJCX0gZWxzZSBpZiAocHVzaF9hc3N1bWVkICYmICFmb3JjZV9hc3N1bWUpIHsKKwkJCWRpZSgic3ViY29tbWFuZCB3YXNuJ3Qgc3BlY2lmaWVkOyAncHVzaCcgY2FuJ3QgYmUgYXNzdW1lZCBkdWUgdG8gdW5leHBlY3RlZCB0b2tlbiAnJXMnIiwKKwkJCSAgICBhcmd2WzBdKTsKKwkJfQorCX0KKworCXBhcnNlX3BhdGhzcGVjKCZwcywgMCwgUEFUSFNQRUNfUFJFRkVSX0ZVTEwgfCBQQVRIU1BFQ19QUkVGSVhfT1JJR0lOLAorCQkgICAgICAgcHJlZml4LCBhcmd2KTsKKworCWlmIChwYXRoc3BlY19mcm9tX2ZpbGUpIHsKKwkJaWYgKHBhdGNoX21vZGUpCisJCQlkaWUoXygiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1wYXRjaCIpKTsKKworCQlpZiAocHMubnIpCisJCQlkaWUoXygiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggcGF0aHNwZWMgYXJndW1lbnRzIikpOworCisJCXBhcnNlX3BhdGhzcGVjX2ZpbGUoJnBzLCAwLAorCQkJCSAgICBQQVRIU1BFQ19QUkVGRVJfRlVMTCB8IFBBVEhTUEVDX1BSRUZJWF9PUklHSU4sCisJCQkJICAgIHByZWZpeCwgcGF0aHNwZWNfZnJvbV9maWxlLCBwYXRoc3BlY19maWxlX251bCk7CisJfSBlbHNlIGlmIChwYXRoc3BlY19maWxlX251bCkgeworCQlkaWUoXygiLS1wYXRoc3BlYy1maWxlLW51bCByZXF1aXJlcyAtLXBhdGhzcGVjLWZyb20tZmlsZSIpKTsKKwl9CisKKwlyZXR1cm4gZG9fcHVzaF9zdGFzaCgmcHMsIHN0YXNoX21zZywgcXVpZXQsIGtlZXBfaW5kZXgsIHBhdGNoX21vZGUsCisJCQkgICAgIGluY2x1ZGVfdW50cmFja2VkKTsKK30KKworc3RhdGljIGludCBzYXZlX3N0YXNoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4KQoreworCWludCBrZWVwX2luZGV4ID0gLTE7CisJaW50IHBhdGNoX21vZGUgPSAwOworCWludCBpbmNsdWRlX3VudHJhY2tlZCA9IDA7CisJaW50IHF1aWV0ID0gMDsKKwlpbnQgcmV0ID0gMDsKKwljb25zdCBjaGFyICpzdGFzaF9tc2cgPSBOVUxMOworCXN0cnVjdCBwYXRoc3BlYyBwczsKKwlzdHJ1Y3Qgc3RyYnVmIHN0YXNoX21zZ19idWYgPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwkJT1BUX0JPT0woJ2snLCAia2VlcC1pbmRleCIsICZrZWVwX2luZGV4LAorCQkJIE5fKCJrZWVwIGluZGV4IikpLAorCQlPUFRfQk9PTCgncCcsICJwYXRjaCIsICZwYXRjaF9tb2RlLAorCQkJIE5fKCJzdGFzaCBpbiBwYXRjaCBtb2RlIikpLAorCQlPUFRfX1FVSUVUKCZxdWlldCwgTl8oInF1aWV0IG1vZGUiKSksCisJCU9QVF9CT09MKCd1JywgImluY2x1ZGUtdW50cmFja2VkIiwgJmluY2x1ZGVfdW50cmFja2VkLAorCQkJIE5fKCJpbmNsdWRlIHVudHJhY2tlZCBmaWxlcyBpbiBzdGFzaCIpKSwKKwkJT1BUX1NFVF9JTlQoJ2EnLCAiYWxsIiwgJmluY2x1ZGVfdW50cmFja2VkLAorCQkJICAgIE5fKCJpbmNsdWRlIGlnbm9yZSBmaWxlcyIpLCAyKSwKKwkJT1BUX1NUUklORygnbScsICJtZXNzYWdlIiwgJnN0YXNoX21zZywgIm1lc3NhZ2UiLAorCQkJICAgTl8oInN0YXNoIG1lc3NhZ2UiKSksCisJCU9QVF9FTkQoKQorCX07CisKKwlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsIG9wdGlvbnMsCisJCQkgICAgIGdpdF9zdGFzaF9zYXZlX3VzYWdlLAorCQkJICAgICBQQVJTRV9PUFRfS0VFUF9EQVNIREFTSCk7CisKKwlpZiAoYXJnYykKKwkJc3Rhc2hfbXNnID0gc3RyYnVmX2pvaW5fYXJndigmc3Rhc2hfbXNnX2J1ZiwgYXJnYywgYXJndiwgJyAnKTsKKworCW1lbXNldCgmcHMsIDAsIHNpemVvZihwcykpOworCXJldCA9IGRvX3B1c2hfc3Rhc2goJnBzLCBzdGFzaF9tc2csIHF1aWV0LCBrZWVwX2luZGV4LAorCQkJICAgIHBhdGNoX21vZGUsIGluY2x1ZGVfdW50cmFja2VkKTsKKworCXN0cmJ1Zl9yZWxlYXNlKCZzdGFzaF9tc2dfYnVmKTsKKwlyZXR1cm4gcmV0OworfQorCitzdGF0aWMgaW50IHVzZV9idWlsdGluX3N0YXNoKHZvaWQpCit7CisJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisJc3RydWN0IHN0cmJ1ZiBvdXQgPSBTVFJCVUZfSU5JVDsKKwlpbnQgcmV0LCBlbnYgPSBnaXRfZW52X2Jvb2woIkdJVF9URVNUX1NUQVNIX1VTRV9CVUlMVElOIiwgLTEpOworCisJaWYgKGVudiAhPSAtMSkKKwkJcmV0dXJuIGVudjsKKworCWFyZ3ZfYXJyYXlfcHVzaGwoJmNwLmFyZ3MsCisJCQkgImNvbmZpZyIsICItLWJvb2wiLCAic3Rhc2gudXNlYnVpbHRpbiIsIE5VTEwpOworCWNwLmdpdF9jbWQgPSAxOworCWlmIChjYXB0dXJlX2NvbW1hbmQoJmNwLCAmb3V0LCA2KSkgeworCQlzdHJidWZfcmVsZWFzZSgmb3V0KTsKKwkJcmV0dXJuIDE7CisJfQorCisJc3RyYnVmX3RyaW0oJm91dCk7CisJcmV0ID0gIXN0cmNtcCgidHJ1ZSIsIG91dC5idWYpOworCXN0cmJ1Zl9yZWxlYXNlKCZvdXQpOworCXJldHVybiByZXQ7Cit9CisKK2ludCBjbWRfc3Rhc2goaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCit7CisJcGlkX3QgcGlkID0gZ2V0cGlkKCk7CisJY29uc3QgY2hhciAqaW5kZXhfZmlsZTsKKwlzdHJ1Y3QgYXJndl9hcnJheSBhcmdzID0gQVJHVl9BUlJBWV9JTklUOworCisJc3RydWN0IG9wdGlvbiBvcHRpb25zW10gPSB7CisJCU9QVF9FTkQoKQorCX07CisKKwlpZiAoIXVzZV9idWlsdGluX3N0YXNoKCkpIHsKKwkJY29uc3QgY2hhciAqcGF0aCA9IG1rcGF0aCgiJXMvZ2l0LWxlZ2FjeS1zdGFzaCIsCisJCQkJCSAgZ2l0X2V4ZWNfcGF0aCgpKTsKKworCQlpZiAoc2FuZV9leGVjdnAocGF0aCwgKGNoYXIgKiopYXJndikgPCAwKQorCQkJZGllX2Vycm5vKF8oImNvdWxkIG5vdCBleGVjICVzIiksIHBhdGgpOworCQllbHNlCisJCQlCVUcoInNhbmVfZXhlY3ZwKCkgcmV0dXJuZWQ/Pz8iKTsKKwl9CisKKwlwcmVmaXggPSBzZXR1cF9naXRfZGlyZWN0b3J5KCk7CisJdHJhY2VfcmVwb19zZXR1cChwcmVmaXgpOworCXNldHVwX3dvcmtfdHJlZSgpOworCisJZ2l0X2NvbmZpZyhnaXRfZGlmZl9iYXNpY19jb25maWcsIE5VTEwpOworCisJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LCBvcHRpb25zLCBnaXRfc3Rhc2hfdXNhZ2UsCisJCQkgICAgIFBBUlNFX09QVF9LRUVQX1VOS05PV04gfCBQQVJTRV9PUFRfS0VFUF9EQVNIREFTSCk7CisKKwlpbmRleF9maWxlID0gZ2V0X2luZGV4X2ZpbGUoKTsKKwlzdHJidWZfYWRkZigmc3Rhc2hfaW5kZXhfcGF0aCwgIiVzLnN0YXNoLiUiIFBSSXVNQVgsIGluZGV4X2ZpbGUsCisJCSAgICAodWludG1heF90KXBpZCk7CisKKwlpZiAoIWFyZ2MpCisJCXJldHVybiAhIXB1c2hfc3Rhc2goMCwgTlVMTCwgcHJlZml4LCAwKTsKKwllbHNlIGlmICghc3RyY21wKGFyZ3ZbMF0sICJhcHBseSIpKQorCQlyZXR1cm4gISFhcHBseV9zdGFzaChhcmdjLCBhcmd2LCBwcmVmaXgpOworCWVsc2UgaWYgKCFzdHJjbXAoYXJndlswXSwgImNsZWFyIikpCisJCXJldHVybiAhIWNsZWFyX3N0YXNoKGFyZ2MsIGFyZ3YsIHByZWZpeCk7CisJZWxzZSBpZiAoIXN0cmNtcChhcmd2WzBdLCAiZHJvcCIpKQorCQlyZXR1cm4gISFkcm9wX3N0YXNoKGFyZ2MsIGFyZ3YsIHByZWZpeCk7CisJZWxzZSBpZiAoIXN0cmNtcChhcmd2WzBdLCAicG9wIikpCisJCXJldHVybiAhIXBvcF9zdGFzaChhcmdjLCBhcmd2LCBwcmVmaXgpOworCWVsc2UgaWYgKCFzdHJjbXAoYXJndlswXSwgImJyYW5jaCIpKQorCQlyZXR1cm4gISFicmFuY2hfc3Rhc2goYXJnYywgYXJndiwgcHJlZml4KTsKKwllbHNlIGlmICghc3RyY21wKGFyZ3ZbMF0sICJsaXN0IikpCisJCXJldHVybiAhIWxpc3Rfc3Rhc2goYXJnYywgYXJndiwgcHJlZml4KTsKKwllbHNlIGlmICghc3RyY21wKGFyZ3ZbMF0sICJzaG93IikpCisJCXJldHVybiAhIXNob3dfc3Rhc2goYXJnYywgYXJndiwgcHJlZml4KTsKKwllbHNlIGlmICghc3RyY21wKGFyZ3ZbMF0sICJzdG9yZSIpKQorCQlyZXR1cm4gISFzdG9yZV9zdGFzaChhcmdjLCBhcmd2LCBwcmVmaXgpOworCWVsc2UgaWYgKCFzdHJjbXAoYXJndlswXSwgImNyZWF0ZSIpKQorCQlyZXR1cm4gISFjcmVhdGVfc3Rhc2goYXJnYywgYXJndiwgcHJlZml4KTsKKwllbHNlIGlmICghc3RyY21wKGFyZ3ZbMF0sICJwdXNoIikpCisJCXJldHVybiAhIXB1c2hfc3Rhc2goYXJnYywgYXJndiwgcHJlZml4LCAwKTsKKwllbHNlIGlmICghc3RyY21wKGFyZ3ZbMF0sICJzYXZlIikpCisJCXJldHVybiAhIXNhdmVfc3Rhc2goYXJnYywgYXJndiwgcHJlZml4KTsKKwllbHNlIGlmICgqYXJndlswXSAhPSAnLScpCisJCXVzYWdlX21zZ19vcHQoeHN0cmZtdChfKCJ1bmtub3duIHN1YmNvbW1hbmQ6ICVzIiksIGFyZ3ZbMF0pLAorCQkJICAgICAgZ2l0X3N0YXNoX3VzYWdlLCBvcHRpb25zKTsKKworCS8qIEFzc3VtZSAnc3Rhc2ggcHVzaCcgKi8KKwlhcmd2X2FycmF5X3B1c2goJmFyZ3MsICJwdXNoIik7CisJYXJndl9hcnJheV9wdXNodigmYXJncywgYXJndik7CisJcmV0dXJuICEhcHVzaF9zdGFzaChhcmdzLmFyZ2MsIGFyZ3MuYXJndiwgcHJlZml4LCAxKTsKK30KZGlmZiAtLWdpdCBhL2J1aWx0aW4vc3RyaXBzcGFjZS5jIGIvYnVpbHRpbi9zdHJpcHNwYWNlLmMKaW5kZXggYmRmMDMyOC4uYmUzM2ViOCAxMDA2NDQKLS0tIGEvYnVpbHRpbi9zdHJpcHNwYWNlLmMKKysrIGIvYnVpbHRpbi9zdHJpcHNwYWNlLmMKQEAgLTMwLDYgKzMwLDcgQEAKIHsKIAlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCWVudW0gc3RyaXBzcGFjZV9tb2RlIG1vZGUgPSBTVFJJUF9ERUZBVUxUOworCWludCBub25naXQ7CiAKIAljb25zdCBzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKIAkJT1BUX0NNRE1PREUoJ3MnLCAic3RyaXAtY29tbWVudHMiLCAmbW9kZSwKQEAgLTQ2LDcgKzQ3LDcgQEAKIAkJdXNhZ2Vfd2l0aF9vcHRpb25zKHN0cmlwc3BhY2VfdXNhZ2UsIG9wdGlvbnMpOwogCiAJaWYgKG1vZGUgPT0gU1RSSVBfQ09NTUVOVFMgfHwgbW9kZSA9PSBDT01NRU5UX0xJTkVTKSB7Ci0JCXNldHVwX2dpdF9kaXJlY3RvcnlfZ2VudGx5KE5VTEwpOworCQlzZXR1cF9naXRfZGlyZWN0b3J5X2dlbnRseSgmbm9uZ2l0KTsKIAkJZ2l0X2NvbmZpZyhnaXRfZGVmYXVsdF9jb25maWcsIE5VTEwpOwogCX0KIApkaWZmIC0tZ2l0IGEvYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jIGIvYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jCmluZGV4IGYyNmJkYWMuLjg2YTYwOGUgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYworKysgYi9idWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmMKQEAgLTEsMyArMSw0IEBACisjZGVmaW5lIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJidWlsdGluLmgiCiAjaW5jbHVkZSAicmVwb3NpdG9yeS5oIgogI2luY2x1ZGUgImNhY2hlLmgiCkBAIC0xOSw2ICsyMCw3IEBACiAjaW5jbHVkZSAiZGlmZi5oIgogI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgogI2luY2x1ZGUgImRpci5oIgorI2luY2x1ZGUgImFkdmljZS5oIgogCiAjZGVmaW5lIE9QVF9RVUlFVCAoMSA8PCAwKQogI2RlZmluZSBPUFRfQ0FDSEVEICgxIDw8IDEpCkBAIC0zNDgsNyArMzUwLDcgQEAKIAkJCWkrKzsKIAl9CiAKLQlpZiAocHNfbWF0Y2hlZCAmJiByZXBvcnRfcGF0aF9lcnJvcihwc19tYXRjaGVkLCBwYXRoc3BlYywgcHJlZml4KSkKKwlpZiAocHNfbWF0Y2hlZCAmJiByZXBvcnRfcGF0aF9lcnJvcihwc19tYXRjaGVkLCBwYXRoc3BlYykpCiAJCXJlc3VsdCA9IC0xOwogCiAJZnJlZShwc19tYXRjaGVkKTsKQEAgLTQyNCw3ICs0MjYsNyBAQAogCQljb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlID0gbGlzdC5lbnRyaWVzW2ldOwogCiAJCWlmIChjZV9zdGFnZShjZSkpCi0JCQlwcmludGYoIiUwNm8gJXMgVVx0IiwgY2UtPmNlX21vZGUsIHNoYTFfdG9faGV4KG51bGxfc2hhMSkpOworCQkJcHJpbnRmKCIlMDZvICVzIFVcdCIsIGNlLT5jZV9tb2RlLCBvaWRfdG9faGV4KCZudWxsX29pZCkpOwogCQllbHNlCiAJCQlwcmludGYoIiUwNm8gJXMgJWRcdCIsIGNlLT5jZV9tb2RlLAogCQkJICAgICAgIG9pZF90b19oZXgoJmNlLT5vaWQpLCBjZV9zdGFnZShjZSkpOwpAQCAtNTQwLDYgKzU0Miw3IEBACiAJCWlmIChpbmZvLT5xdWlldCkKIAkJCWFyZ3ZfYXJyYXlfcHVzaCgmY3ByLmFyZ3MsICItLXF1aWV0Iik7CiAKKwkJYXJndl9hcnJheV9wdXNoKCZjcHIuYXJncywgIi0tIik7CiAJCWFyZ3ZfYXJyYXlfcHVzaHYoJmNwci5hcmdzLCBpbmZvLT5hcmd2KTsKIAogCQlpZiAocnVuX2NvbW1hbmQoJmNwcikpCkBAIC01NjYsMTIgKzU2OSwxMiBAQAogCX07CiAKIAljb25zdCBjaGFyICpjb25zdCBnaXRfc3VibW9kdWxlX2hlbHBlcl91c2FnZVtdID0gewotCQlOXygiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGZvcmVhY2ggWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gPGNvbW1hbmQ+IiksCisJCU5fKCJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbLS1dIDxjb21tYW5kPiIpLAogCQlOVUxMCiAJfTsKIAogCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIHByZWZpeCwgbW9kdWxlX2ZvcmVhY2hfb3B0aW9ucywKLQkJCSAgICAgZ2l0X3N1Ym1vZHVsZV9oZWxwZXJfdXNhZ2UsIFBBUlNFX09QVF9LRUVQX1VOS05PV04pOworCQkJICAgICBnaXRfc3VibW9kdWxlX2hlbHBlcl91c2FnZSwgMCk7CiAKIAlpZiAobW9kdWxlX2xpc3RfY29tcHV0ZSgwLCBOVUxMLCBwcmVmaXgsICZwYXRoc3BlYywgJmxpc3QpIDwgMCkKIAkJcmV0dXJuIDE7CkBAIC03MDksNyArNzEyLDcgQEAKIAl9OwogCiAJY29uc3QgY2hhciAqY29uc3QgZ2l0X3N1Ym1vZHVsZV9oZWxwZXJfdXNhZ2VbXSA9IHsKLQkJTl8oImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8cGF0aD5dIiksCisJCU5fKCJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPG9wdGlvbnM+XSBbPHBhdGg+XSIpLAogCQlOVUxMCiAJfTsKIApAQCAtNzc5LDYgKzc4Miw4IEBACiAJc3RydWN0IGFyZ3ZfYXJyYXkgZGlmZl9maWxlc19hcmdzID0gQVJHVl9BUlJBWV9JTklUOwogCXN0cnVjdCByZXZfaW5mbyByZXY7CiAJaW50IGRpZmZfZmlsZXNfcmVzdWx0OworCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CisJY29uc3QgY2hhciAqZ2l0X2RpcjsKIAogCWlmICghc3VibW9kdWxlX2Zyb21fcGF0aCh0aGVfcmVwb3NpdG9yeSwgJm51bGxfb2lkLCBwYXRoKSkKIAkJZGllKF8oIm5vIHN1Ym1vZHVsZSBtYXBwaW5nIGZvdW5kIGluIC5naXRtb2R1bGVzIGZvciBwYXRoICclcyciKSwKQEAgLTc5MSwxNyArNzk2LDI2IEBACiAJCWdvdG8gY2xlYW51cDsKIAl9CiAKLQlpZiAoIWlzX3N1Ym1vZHVsZV9hY3RpdmUodGhlX3JlcG9zaXRvcnksIHBhdGgpKSB7CisJc3RyYnVmX2FkZGYoJmJ1ZiwgIiVzLy5naXQiLCBwYXRoKTsKKwlnaXRfZGlyID0gcmVhZF9naXRmaWxlKGJ1Zi5idWYpOworCWlmICghZ2l0X2RpcikKKwkJZ2l0X2RpciA9IGJ1Zi5idWY7CisKKwlpZiAoIWlzX3N1Ym1vZHVsZV9hY3RpdmUodGhlX3JlcG9zaXRvcnksIHBhdGgpIHx8CisJICAgICFpc19naXRfZGlyZWN0b3J5KGdpdF9kaXIpKSB7CiAJCXByaW50X3N0YXR1cyhmbGFncywgJy0nLCBwYXRoLCBjZV9vaWQsIGRpc3BsYXlwYXRoKTsKKwkJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CiAJCWdvdG8gY2xlYW51cDsKIAl9CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CiAKIAlhcmd2X2FycmF5X3B1c2hsKCZkaWZmX2ZpbGVzX2FyZ3MsICJkaWZmLWZpbGVzIiwKIAkJCSAiLS1pZ25vcmUtc3VibW9kdWxlcz1kaXJ0eSIsICItLXF1aWV0IiwgIi0tIiwKIAkJCSBwYXRoLCBOVUxMKTsKIAogCWdpdF9jb25maWcoZ2l0X2RpZmZfYmFzaWNfY29uZmlnLCBOVUxMKTsKLQlyZXBvX2luaXRfcmV2aXNpb25zKHRoZV9yZXBvc2l0b3J5LCAmcmV2LCBwcmVmaXgpOworCisJcmVwb19pbml0X3JldmlzaW9ucyh0aGVfcmVwb3NpdG9yeSwgJnJldiwgTlVMTCk7CiAJcmV2LmFiYnJldiA9IDA7CiAJZGlmZl9maWxlc19hcmdzLmFyZ2MgPSBzZXR1cF9yZXZpc2lvbnMoZGlmZl9maWxlc19hcmdzLmFyZ2MsCiAJCQkJCSAgICAgICBkaWZmX2ZpbGVzX2FyZ3MuYXJndiwKQEAgLTExMzIsNiArMTE0Niw4IEBACiAJCWlmICghKGZsYWdzICYgT1BUX1FVSUVUKSkKIAkJCXByaW50Zihmb3JtYXQsIGRpc3BsYXlwYXRoKTsKIAorCQlzdWJtb2R1bGVfdW5zZXRfY29yZV93b3JrdHJlZShzdWIpOworCiAJCXN0cmJ1Zl9yZWxlYXNlKCZzYl9ybSk7CiAJfQogCkBAIC0xMjE5LDcgKzEyMzUsNyBAQAogCiBzdGF0aWMgaW50IGNsb25lX3N1Ym1vZHVsZShjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICpnaXRkaXIsIGNvbnN0IGNoYXIgKnVybCwKIAkJCSAgIGNvbnN0IGNoYXIgKmRlcHRoLCBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKnJlZmVyZW5jZSwgaW50IGRpc3NvY2lhdGUsCi0JCQkgICBpbnQgcXVpZXQsIGludCBwcm9ncmVzcykKKwkJCSAgIGludCBxdWlldCwgaW50IHByb2dyZXNzLCBpbnQgc2luZ2xlX2JyYW5jaCkKIHsKIAlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjcCA9IENISUxEX1BST0NFU1NfSU5JVDsKIApAQCAtMTI0MSw2ICsxMjU3LDEwIEBACiAJCWFyZ3ZfYXJyYXlfcHVzaCgmY3AuYXJncywgIi0tZGlzc29jaWF0ZSIpOwogCWlmIChnaXRkaXIgJiYgKmdpdGRpcikKIAkJYXJndl9hcnJheV9wdXNobCgmY3AuYXJncywgIi0tc2VwYXJhdGUtZ2l0LWRpciIsIGdpdGRpciwgTlVMTCk7CisJaWYgKHNpbmdsZV9icmFuY2ggPj0gMCkKKwkJYXJndl9hcnJheV9wdXNoKCZjcC5hcmdzLCBzaW5nbGVfYnJhbmNoID8KKwkJCQkJICAiLS1zaW5nbGUtYnJhbmNoIiA6CisJCQkJCSAgIi0tbm8tc2luZ2xlLWJyYW5jaCIpOwogCiAJYXJndl9hcnJheV9wdXNoKCZjcC5hcmdzLCAiLS0iKTsKIAlhcmd2X2FycmF5X3B1c2goJmNwLmFyZ3MsIHVybCk7CkBAIC0xMjY1LDIwICsxMjg1LDI4IEBACiAjZGVmaW5lIFNVQk1PRFVMRV9BTFRFUk5BVEVfU0VUVVBfSU5JVCB7IE5VTEwsIFwKIAlTVUJNT0RVTEVfQUxURVJOQVRFX0VSUk9SX0lHTk9SRSwgTlVMTCB9CiAKK3N0YXRpYyBjb25zdCBjaGFyIGFsdGVybmF0ZV9lcnJvcl9hZHZpY2VbXSA9IE5fKAorIkFuIGFsdGVybmF0ZSBjb21wdXRlZCBmcm9tIGEgc3VwZXJwcm9qZWN0J3MgYWx0ZXJuYXRlIGlzIGludmFsaWQuXG4iCisiVG8gYWxsb3cgR2l0IHRvIGNsb25lIHdpdGhvdXQgYW4gYWx0ZXJuYXRlIGluIHN1Y2ggYSBjYXNlLCBzZXRcbiIKKyJzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSB0byAnaW5mbycgb3IsIGVxdWl2YWxlbnRseSwgY2xvbmUgd2l0aFxuIgorIictLXJlZmVyZW5jZS1pZi1hYmxlJyBpbnN0ZWFkIG9mICctLXJlZmVyZW5jZScuIgorKTsKKwogc3RhdGljIGludCBhZGRfcG9zc2libGVfcmVmZXJlbmNlX2Zyb21fc3VwZXJwcm9qZWN0KAotCQlzdHJ1Y3QgYWx0ZXJuYXRlX29iamVjdF9kYXRhYmFzZSAqYWx0LCB2b2lkICpzYXNfY2IpCisJCXN0cnVjdCBvYmplY3RfZGlyZWN0b3J5ICpvZGIsIHZvaWQgKnNhc19jYikKIHsKIAlzdHJ1Y3Qgc3VibW9kdWxlX2FsdGVybmF0ZV9zZXR1cCAqc2FzID0gc2FzX2NiOworCXNpemVfdCBsZW47CiAKIAkvKgogCSAqIElmIHRoZSBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlIGlzIGFub3RoZXIgcmVwb3NpdG9yeSwgdHJ5IHRoZQogCSAqIHN0YW5kYXJkIGxheW91dCB3aXRoIC5naXQvKG1vZHVsZXMvPG5hbWU+KSsvb2JqZWN0cwogCSAqLwotCWlmIChlbmRzX3dpdGgoYWx0LT5wYXRoLCAiL29iamVjdHMiKSkgeworCWlmIChzdHJpcF9zdWZmaXgob2RiLT5wYXRoLCAiL29iamVjdHMiLCAmbGVuKSkgewogCQljaGFyICpzbV9hbHRlcm5hdGU7CiAJCXN0cnVjdCBzdHJidWYgc2IgPSBTVFJCVUZfSU5JVDsKIAkJc3RydWN0IHN0cmJ1ZiBlcnIgPSBTVFJCVUZfSU5JVDsKLQkJc3RyYnVmX2FkZCgmc2IsIGFsdC0+cGF0aCwgc3RybGVuKGFsdC0+cGF0aCkgLSBzdHJsZW4oIm9iamVjdHMiKSk7CisJCXN0cmJ1Zl9hZGQoJnNiLCBvZGItPnBhdGgsIGxlbik7CiAKIAkJLyoKIAkJICogV2UgbmVlZCB0byBlbmQgdGhlIG5ldyBwYXRoIHdpdGggJy8nIHRvIG1hcmsgaXQgYXMgYSBkaXIsCkBAIC0xMjg2LDcgKzEzMTQsNyBAQAogCQkgKiBhcyB0aGUgbGFzdCBwYXJ0IG9mIGEgbWlzc2luZyBzdWJtb2R1bGUgcmVmZXJlbmNlIHdvdWxkCiAJCSAqIGJlIHRha2VuIGFzIGEgZmlsZSBuYW1lLgogCQkgKi8KLQkJc3RyYnVmX2FkZGYoJnNiLCAibW9kdWxlcy8lcy8iLCBzYXMtPnN1Ym1vZHVsZV9uYW1lKTsKKwkJc3RyYnVmX2FkZGYoJnNiLCAiL21vZHVsZXMvJXMvIiwgc2FzLT5zdWJtb2R1bGVfbmFtZSk7CiAKIAkJc21fYWx0ZXJuYXRlID0gY29tcHV0ZV9hbHRlcm5hdGVfcGF0aChzYi5idWYsICZlcnIpOwogCQlpZiAoc21fYWx0ZXJuYXRlKSB7CkBAIC0xMjk1LDEwICsxMzIzLDEyIEBACiAJCX0gZWxzZSB7CiAJCQlzd2l0Y2ggKHNhcy0+ZXJyb3JfbW9kZSkgewogCQkJY2FzZSBTVUJNT0RVTEVfQUxURVJOQVRFX0VSUk9SX0RJRToKKwkJCQlpZiAoYWR2aWNlX3N1Ym1vZHVsZV9hbHRlcm5hdGVfZXJyb3Jfc3RyYXRlZ3lfZGllKQorCQkJCQlhZHZpc2UoXyhhbHRlcm5hdGVfZXJyb3JfYWR2aWNlKSk7CiAJCQkJZGllKF8oInN1Ym1vZHVsZSAnJXMnIGNhbm5vdCBhZGQgYWx0ZXJuYXRlOiAlcyIpLAogCQkJCSAgICBzYXMtPnN1Ym1vZHVsZV9uYW1lLCBlcnIuYnVmKTsKIAkJCWNhc2UgU1VCTU9EVUxFX0FMVEVSTkFURV9FUlJPUl9JTkZPOgotCQkJCWZwcmludGYoc3RkZXJyLCBfKCJzdWJtb2R1bGUgJyVzJyBjYW5ub3QgYWRkIGFsdGVybmF0ZTogJXMiKSwKKwkJCQlmcHJpbnRmX2xuKHN0ZGVyciwgXygic3VibW9kdWxlICclcycgY2Fubm90IGFkZCBhbHRlcm5hdGU6ICVzIiksCiAJCQkJCXNhcy0+c3VibW9kdWxlX25hbWUsIGVyci5idWYpOwogCQkJY2FzZSBTVUJNT0RVTEVfQUxURVJOQVRFX0VSUk9SX0lHTk9SRToKIAkJCQk7IC8qIG5vdGhpbmcgKi8KQEAgLTEzNTcsNiArMTM4Nyw3IEBACiAJc3RydWN0IHN0cmluZ19saXN0IHJlZmVyZW5jZSA9IFNUUklOR19MSVNUX0lOSVRfTk9EVVA7CiAJaW50IGRpc3NvY2lhdGUgPSAwLCByZXF1aXJlX2luaXQgPSAwOwogCWNoYXIgKnNtX2FsdGVybmF0ZSA9IE5VTEwsICplcnJvcl9zdHJhdGVneSA9IE5VTEw7CisJaW50IHNpbmdsZV9icmFuY2ggPSAtMTsKIAogCXN0cnVjdCBvcHRpb24gbW9kdWxlX2Nsb25lX29wdGlvbnNbXSA9IHsKIAkJT1BUX1NUUklORygwLCAicHJlZml4IiwgJnByZWZpeCwKQEAgLTEzODQsMTIgKzE0MTUsMTUgQEAKIAkJCSAgIE5fKCJmb3JjZSBjbG9uaW5nIHByb2dyZXNzIikpLAogCQlPUFRfQk9PTCgwLCAicmVxdWlyZS1pbml0IiwgJnJlcXVpcmVfaW5pdCwKIAkJCSAgIE5fKCJkaXNhbGxvdyBjbG9uaW5nIGludG8gbm9uLWVtcHR5IGRpcmVjdG9yeSIpKSwKKwkJT1BUX0JPT0woMCwgInNpbmdsZS1icmFuY2giLCAmc2luZ2xlX2JyYW5jaCwKKwkJCSBOXygiY2xvbmUgb25seSBvbmUgYnJhbmNoLCBIRUFEIG9yIC0tYnJhbmNoIikpLAogCQlPUFRfRU5EKCkKIAl9OwogCiAJY29uc3QgY2hhciAqY29uc3QgZ2l0X3N1Ym1vZHVsZV9oZWxwZXJfdXNhZ2VbXSA9IHsKIAkJTl8oImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbLS1xdWlldF0gIgogCQkgICAiWy0tcmVmZXJlbmNlIDxyZXBvc2l0b3J5Pl0gWy0tbmFtZSA8bmFtZT5dIFstLWRlcHRoIDxkZXB0aD5dICIKKwkJICAgIlstLXNpbmdsZS1icmFuY2hdICIKIAkJICAgIi0tdXJsIDx1cmw+IC0tcGF0aCA8cGF0aD4iKSwKIAkJTlVMTAogCX07CkBAIC0xNDIyLDcgKzE0NTYsNyBAQAogCQlwcmVwYXJlX3Bvc3NpYmxlX2FsdGVybmF0ZXMobmFtZSwgJnJlZmVyZW5jZSk7CiAKIAkJaWYgKGNsb25lX3N1Ym1vZHVsZShwYXRoLCBzbV9naXRkaXIsIHVybCwgZGVwdGgsICZyZWZlcmVuY2UsIGRpc3NvY2lhdGUsCi0JCQkJICAgIHF1aWV0LCBwcm9ncmVzcykpCisJCQkJICAgIHF1aWV0LCBwcm9ncmVzcywgc2luZ2xlX2JyYW5jaCkpCiAJCQlkaWUoXygiY2xvbmUgb2YgJyVzJyBpbnRvIHN1Ym1vZHVsZSBwYXRoICclcycgZmFpbGVkIiksCiAJCQkgICAgdXJsLCBwYXRoKTsKIAl9IGVsc2UgewpAQCAtMTU0Niw2ICsxNTgwLDcgQEAKIAljb25zdCBjaGFyICpkZXB0aDsKIAljb25zdCBjaGFyICpyZWN1cnNpdmVfcHJlZml4OwogCWNvbnN0IGNoYXIgKnByZWZpeDsKKwlpbnQgc2luZ2xlX2JyYW5jaDsKIAogCS8qIHRvIGJlIGNvbnN1bWVkIGJ5IGdpdC1zdWJtb2R1bGUuc2ggKi8KIAlzdHJ1Y3QgdXBkYXRlX2Nsb25lX2RhdGEgKnVwZGF0ZV9jbG9uZTsKQEAgLTE1NjAsMTAgKzE1OTUsMTQgQEAKIAogCWludCBtYXhfam9iczsKIH07Ci0jZGVmaW5lIFNVQk1PRFVMRV9VUERBVEVfQ0xPTkVfSU5JVCB7MCwgTU9EVUxFX0xJU1RfSU5JVCwgMCwgXAotCVNVQk1PRFVMRV9VUERBVEVfU1RSQVRFR1lfSU5JVCwgMCwgMCwgLTEsIFNUUklOR19MSVNUX0lOSVRfRFVQLCAwLCAwLCBcCi0JTlVMTCwgTlVMTCwgTlVMTCwgXAotCU5VTEwsIDAsIDAsIDAsIE5VTEwsIDAsIDAsIDB9CisjZGVmaW5lIFNVQk1PRFVMRV9VUERBVEVfQ0xPTkVfSU5JVCB7IFwKKwkubGlzdCA9IE1PRFVMRV9MSVNUX0lOSVQsIFwKKwkudXBkYXRlID0gU1VCTU9EVUxFX1VQREFURV9TVFJBVEVHWV9JTklULCBcCisJLnJlY29tbWVuZF9zaGFsbG93ID0gLTEsIFwKKwkucmVmZXJlbmNlcyA9IFNUUklOR19MSVNUX0lOSVRfRFVQLCBcCisJLnNpbmdsZV9icmFuY2ggPSAtMSwgXAorCS5tYXhfam9icyA9IDEsIFwKK30KIAogCiBzdGF0aWMgdm9pZCBuZXh0X3N1Ym1vZHVsZV93YXJuX21pc3Npbmcoc3RydWN0IHN1Ym1vZHVsZV91cGRhdGVfY2xvbmUgKnN1YywKQEAgLTE3MDIsNiArMTc0MSwxMCBAQAogCQlhcmd2X2FycmF5X3B1c2goJmNoaWxkLT5hcmdzLCAiLS1kaXNzb2NpYXRlIik7CiAJaWYgKHN1Yy0+ZGVwdGgpCiAJCWFyZ3ZfYXJyYXlfcHVzaCgmY2hpbGQtPmFyZ3MsIHN1Yy0+ZGVwdGgpOworCWlmIChzdWMtPnNpbmdsZV9icmFuY2ggPj0gMCkKKwkJYXJndl9hcnJheV9wdXNoKCZjaGlsZC0+YXJncywgc3VjLT5zaW5nbGVfYnJhbmNoID8KKwkJCQkJICAgICAgIi0tc2luZ2xlLWJyYW5jaCIgOgorCQkJCQkgICAgICAiLS1uby1zaW5nbGUtYnJhbmNoIik7CiAKIGNsZWFudXA6CiAJc3RyYnVmX3Jlc2V0KCZkaXNwbGF5cGF0aF9zYik7CkBAIC0xODI2LDExICsxODY5LDEwIEBACiB7CiAJaW50IGk7CiAKLQlydW5fcHJvY2Vzc2VzX3BhcmFsbGVsKHN1Yy0+bWF4X2pvYnMsCi0JCQkgICAgICAgdXBkYXRlX2Nsb25lX2dldF9uZXh0X3Rhc2ssCi0JCQkgICAgICAgdXBkYXRlX2Nsb25lX3N0YXJ0X2ZhaWx1cmUsCi0JCQkgICAgICAgdXBkYXRlX2Nsb25lX3Rhc2tfZmluaXNoZWQsCi0JCQkgICAgICAgc3VjKTsKKwlydW5fcHJvY2Vzc2VzX3BhcmFsbGVsX3RyMihzdWMtPm1heF9qb2JzLCB1cGRhdGVfY2xvbmVfZ2V0X25leHRfdGFzaywKKwkJCQkgICB1cGRhdGVfY2xvbmVfc3RhcnRfZmFpbHVyZSwKKwkJCQkgICB1cGRhdGVfY2xvbmVfdGFza19maW5pc2hlZCwgc3VjLCAic3VibW9kdWxlIiwKKwkJCQkgICAicGFyYWxsZWwvdXBkYXRlIik7CiAKIAkvKgogCSAqIFdlIHNhdmVkIHRoZSBvdXRwdXQgYW5kIHB1dCBpdCBvdXQgYWxsIGF0IG9uY2Ugbm93LgpAQCAtMTg4MiwxMSArMTkyNCwxMyBAQAogCQkJICAgIE5fKCJmb3JjZSBjbG9uaW5nIHByb2dyZXNzIikpLAogCQlPUFRfQk9PTCgwLCAicmVxdWlyZS1pbml0IiwgJnN1Yy5yZXF1aXJlX2luaXQsCiAJCQkgICBOXygiZGlzYWxsb3cgY2xvbmluZyBpbnRvIG5vbi1lbXB0eSBkaXJlY3RvcnkiKSksCisJCU9QVF9CT09MKDAsICJzaW5nbGUtYnJhbmNoIiwgJnN1Yy5zaW5nbGVfYnJhbmNoLAorCQkJIE5fKCJjbG9uZSBvbmx5IG9uZSBicmFuY2gsIEhFQUQgb3IgLS1icmFuY2giKSksCiAJCU9QVF9FTkQoKQogCX07CiAKIAljb25zdCBjaGFyICpjb25zdCBnaXRfc3VibW9kdWxlX2hlbHBlcl91c2FnZVtdID0gewotCQlOXygiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZV9jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIpLAorCQlOXygiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIpLAogCQlOVUxMCiAJfTsKIAlzdWMucHJlZml4ID0gcHJlZml4OwpAQCAtMjA2MSw3ICsyMTA1LDcgQEAKIAlzdHJ1Y3QgcmVwb3NpdG9yeSBzdWJyZXBvOwogCiAJaWYgKGFyZ2MgIT0gMikKLQkJQlVHKCJzdWJtb2R1bGUtLWhlbHBlciBjb25uZWN0LWdpdGRpci13b3JraW5ndHJlZSA8bmFtZT4gPHBhdGg+Iik7CisJCUJVRygic3VibW9kdWxlLS1oZWxwZXIgZW5zdXJlLWNvcmUtd29ya3RyZWUgPHBhdGg+Iik7CiAKIAlwYXRoID0gYXJndlsxXTsKIApAQCAtMjA2OSw3ICsyMTEzLDcgQEAKIAlpZiAoIXN1YikKIAkJQlVHKCJXZSBjb3VsZCBnZXQgdGhlIHN1Ym1vZHVsZSBoYW5kbGUgYmVmb3JlPyIpOwogCi0JaWYgKHJlcG9fc3VibW9kdWxlX2luaXQoJnN1YnJlcG8sIHRoZV9yZXBvc2l0b3J5LCBwYXRoKSkKKwlpZiAocmVwb19zdWJtb2R1bGVfaW5pdCgmc3VicmVwbywgdGhlX3JlcG9zaXRvcnksIHN1YikpCiAJCWRpZShfKCJjb3VsZCBub3QgZ2V0IGEgcmVwb3NpdG9yeSBoYW5kbGUgZm9yIHN1Ym1vZHVsZSAnJXMnIiksIHBhdGgpOwogCiAJaWYgKCFyZXBvX2NvbmZpZ19nZXRfc3RyaW5nKCZzdWJyZXBvLCAiY29yZS53b3JrdHJlZSIsICZjdykpIHsKQEAgLTIxMDksNyArMjE1Myw3IEBACiAJfTsKIAogCWNvbnN0IGNoYXIgKmNvbnN0IGdpdF9zdWJtb2R1bGVfaGVscGVyX3VzYWdlW10gPSB7Ci0JCU5fKCJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZW1iZWQtZ2l0LWRpciBbPHBhdGg+Li4uXSIpLAorCQlOXygiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGFic29yYi1naXQtZGlycyBbPG9wdGlvbnM+XSBbPHBhdGg+Li4uXSIpLAogCQlOVUxMCiAJfTsKIApAQCAtMjEyMCw4ICsyMTY0LDcgQEAKIAkJcmV0dXJuIDE7CiAKIAlmb3IgKGkgPSAwOyBpIDwgbGlzdC5ucjsgaSsrKQotCQlhYnNvcmJfZ2l0X2Rpcl9pbnRvX3N1cGVycHJvamVjdChwcmVmaXgsCi0JCQkJbGlzdC5lbnRyaWVzW2ldLT5uYW1lLCBmbGFncyk7CisJCWFic29yYl9naXRfZGlyX2ludG9fc3VwZXJwcm9qZWN0KGxpc3QuZW50cmllc1tpXS0+bmFtZSwgZmxhZ3MpOwogCiAJcmV0dXJuIDA7CiB9CkBAIC0yMTYwLDE3ICsyMjAzLDIyIEBACiBzdGF0aWMgaW50IG1vZHVsZV9jb25maWcoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgpCiB7CiAJZW51bSB7Ci0JCUNIRUNLX1dSSVRFQUJMRSA9IDEKKwkJQ0hFQ0tfV1JJVEVBQkxFID0gMSwKKwkJRE9fVU5TRVQgPSAyCiAJfSBjb21tYW5kID0gMDsKIAogCXN0cnVjdCBvcHRpb24gbW9kdWxlX2NvbmZpZ19vcHRpb25zW10gPSB7CiAJCU9QVF9DTURNT0RFKDAsICJjaGVjay13cml0ZWFibGUiLCAmY29tbWFuZCwKIAkJCSAgICBOXygiY2hlY2sgaWYgaXQgaXMgc2FmZSB0byB3cml0ZSB0byB0aGUgLmdpdG1vZHVsZXMgZmlsZSIpLAogCQkJICAgIENIRUNLX1dSSVRFQUJMRSksCisJCU9QVF9DTURNT0RFKDAsICJ1bnNldCIsICZjb21tYW5kLAorCQkJICAgIE5fKCJ1bnNldCB0aGUgY29uZmlnIGluIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIiksCisJCQkgICAgRE9fVU5TRVQpLAogCQlPUFRfRU5EKCkKIAl9OwogCWNvbnN0IGNoYXIgKmNvbnN0IGdpdF9zdWJtb2R1bGVfaGVscGVyX3VzYWdlW10gPSB7Ci0JCU5fKCJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIG5hbWUgW3ZhbHVlXSIpLAorCQlOXygiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyA8bmFtZT4gWzx2YWx1ZT5dIiksCisJCU5fKCJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tdW5zZXQgPG5hbWU+IiksCiAJCU5fKCJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tY2hlY2std3JpdGVhYmxlIiksCiAJCU5VTEwKIAl9OwpAQCAtMjE4MiwxNSArMjIzMCwxNyBAQAogCQlyZXR1cm4gaXNfd3JpdGluZ19naXRtb2R1bGVzX29rKCkgPyAwIDogLTE7CiAKIAkvKiBFcXVpdmFsZW50IHRvIEFDVElPTl9HRVQgaW4gYnVpbHRpbi9jb25maWcuYyAqLwotCWlmIChhcmdjID09IDIpCisJaWYgKGFyZ2MgPT0gMiAmJiBjb21tYW5kICE9IERPX1VOU0VUKQogCQlyZXR1cm4gcHJpbnRfY29uZmlnX2Zyb21fZ2l0bW9kdWxlcyh0aGVfcmVwb3NpdG9yeSwgYXJndlsxXSk7CiAKIAkvKiBFcXVpdmFsZW50IHRvIEFDVElPTl9TRVQgaW4gYnVpbHRpbi9jb25maWcuYyAqLwotCWlmIChhcmdjID09IDMpIHsKKwlpZiAoYXJnYyA9PSAzIHx8IChhcmdjID09IDIgJiYgY29tbWFuZCA9PSBET19VTlNFVCkpIHsKKwkJY29uc3QgY2hhciAqdmFsdWUgPSAoYXJnYyA9PSAzKSA/IGFyZ3ZbMl0gOiBOVUxMOworCiAJCWlmICghaXNfd3JpdGluZ19naXRtb2R1bGVzX29rKCkpCiAJCQlkaWUoXygicGxlYXNlIG1ha2Ugc3VyZSB0aGF0IHRoZSAuZ2l0bW9kdWxlcyBmaWxlIGlzIGluIHRoZSB3b3JraW5nIHRyZWUiKSk7CiAKLQkJcmV0dXJuIGNvbmZpZ19zZXRfaW5fZ2l0bW9kdWxlc19maWxlX2dlbnRseShhcmd2WzFdLCBhcmd2WzJdKTsKKwkJcmV0dXJuIGNvbmZpZ19zZXRfaW5fZ2l0bW9kdWxlc19maWxlX2dlbnRseShhcmd2WzFdLCB2YWx1ZSk7CiAJfQogCiAJdXNhZ2Vfd2l0aF9vcHRpb25zKGdpdF9zdWJtb2R1bGVfaGVscGVyX3VzYWdlLCBtb2R1bGVfY29uZmlnX29wdGlvbnMpOwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi90YWcuYyBiL2J1aWx0aW4vdGFnLmMKaW5kZXggMDJmNmJkMS4uY2MzMGQzNCAxMDA2NDQKLS0tIGEvYnVpbHRpbi90YWcuYworKysgYi9idWlsdGluL3RhZy5jCkBAIC0yMiwxNiArMjIsMTggQEAKICNpbmNsdWRlICJyZWYtZmlsdGVyLmgiCiAKIHN0YXRpYyBjb25zdCBjaGFyICogY29uc3QgZ2l0X3RhZ191c2FnZVtdID0gewotCU5fKCJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPGtleS1pZD5dIFstZl0gWy1tIDxtc2c+IHwgLUYgPGZpbGU+XSA8dGFnbmFtZT4gWzxoZWFkPl0iKSwKKwlOXygiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA8bXNnPiB8IC1GIDxmaWxlPl1cbiIKKwkJIlx0XHQ8dGFnbmFtZT4gWzxoZWFkPl0iKSwKIAlOXygiZ2l0IHRhZyAtZCA8dGFnbmFtZT4uLi4iKSwKLQlOXygiZ2l0IHRhZyAtbCBbLW5bPG51bT5dXSBbLS1jb250YWlucyA8Y29tbWl0Pl0gWy0tbm8tY29udGFpbnMgPGNvbW1pdD5dIFstLXBvaW50cy1hdCA8b2JqZWN0Pl0iCi0JCSJcblx0XHRbLS1mb3JtYXQ9PGZvcm1hdD5dIFstLVtuby1dbWVyZ2VkIFs8Y29tbWl0Pl1dIFs8cGF0dGVybj4uLi5dIiksCisJTl8oImdpdCB0YWcgLWwgWy1uWzxudW0+XV0gWy0tY29udGFpbnMgPGNvbW1pdD5dIFstLW5vLWNvbnRhaW5zIDxjb21taXQ+XSBbLS1wb2ludHMtYXQgPG9iamVjdD5dXG4iCisJCSJcdFx0Wy0tZm9ybWF0PTxmb3JtYXQ+XSBbLS1bbm8tXW1lcmdlZCBbPGNvbW1pdD5dXSBbPHBhdHRlcm4+Li4uXSIpLAogCU5fKCJnaXQgdGFnIC12IFstLWZvcm1hdD08Zm9ybWF0Pl0gPHRhZ25hbWU+Li4uIiksCiAJTlVMTAogfTsKIAogc3RhdGljIHVuc2lnbmVkIGludCBjb2xvcHRzOwogc3RhdGljIGludCBmb3JjZV9zaWduX2Fubm90YXRlOworc3RhdGljIGludCBjb25maWdfc2lnbl90YWcgPSAtMTsgLyogdW5zcGVjaWZpZWQgKi8KIAogc3RhdGljIGludCBsaXN0X3RhZ3Moc3RydWN0IHJlZl9maWx0ZXIgKmZpbHRlciwgc3RydWN0IHJlZl9zb3J0aW5nICpzb3J0aW5nLAogCQkgICAgIHN0cnVjdCByZWZfZm9ybWF0ICpmb3JtYXQpCkBAIC0xNDMsNiArMTQ1LDExIEBACiAJaW50IHN0YXR1czsKIAlzdHJ1Y3QgcmVmX3NvcnRpbmcgKipzb3J0aW5nX3RhaWwgPSAoc3RydWN0IHJlZl9zb3J0aW5nICoqKWNiOwogCisJaWYgKCFzdHJjbXAodmFyLCAidGFnLmdwZ3NpZ24iKSkgeworCQljb25maWdfc2lnbl90YWcgPSBnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSk7CisJCXJldHVybiAwOworCX0KKwogCWlmICghc3RyY21wKHZhciwgInRhZy5zb3J0IikpIHsKIAkJaWYgKCF2YWx1ZSkKIAkJCXJldHVybiBjb25maWdfZXJyb3Jfbm9uYm9vbCh2YXIpOwpAQCAtMjA1LDcgKzIxMiwxNCBAQAogCX0gY2xlYW51cF9tb2RlOwogfTsKIAotc3RhdGljIHZvaWQgY3JlYXRlX3RhZyhjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvYmplY3QsIGNvbnN0IGNoYXIgKnRhZywKK3N0YXRpYyBjb25zdCBjaGFyIG1lc3NhZ2VfYWR2aWNlX25lc3RlZF90YWdbXSA9CisJTl8oIllvdSBoYXZlIGNyZWF0ZWQgYSBuZXN0ZWQgdGFnLiBUaGUgb2JqZWN0IHJlZmVycmVkIHRvIGJ5IHlvdXIgbmV3IHRhZyBpc1xuIgorCSAgICJhbHJlYWR5IGEgdGFnLiBJZiB5b3UgbWVhbnQgdG8gdGFnIHRoZSBvYmplY3QgdGhhdCBpdCBwb2ludHMgdG8sIHVzZTpcbiIKKwkgICAiXG4iCisJICAgIlx0Z2l0IHRhZyAtZiAlcyAlc157fSIpOworCitzdGF0aWMgdm9pZCBjcmVhdGVfdGFnKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9iamVjdCwgY29uc3QgY2hhciAqb2JqZWN0X3JlZiwKKwkJICAgICAgIGNvbnN0IGNoYXIgKnRhZywKIAkJICAgICAgIHN0cnVjdCBzdHJidWYgKmJ1Ziwgc3RydWN0IGNyZWF0ZV90YWdfb3B0aW9ucyAqb3B0LAogCQkgICAgICAgc3RydWN0IG9iamVjdF9pZCAqcHJldiwgc3RydWN0IG9iamVjdF9pZCAqcmVzdWx0KQogewpAQCAtMjE1LDcgKzIyOSwxMSBAQAogCiAJdHlwZSA9IG9pZF9vYmplY3RfaW5mbyh0aGVfcmVwb3NpdG9yeSwgb2JqZWN0LCBOVUxMKTsKIAlpZiAodHlwZSA8PSBPQkpfTk9ORSkKLQkgICAgZGllKF8oImJhZCBvYmplY3QgdHlwZS4iKSk7CisJCWRpZShfKCJiYWQgb2JqZWN0IHR5cGUuIikpOworCisJaWYgKHR5cGUgPT0gT0JKX1RBRykKKwkJYWR2aXNlX2lmX2VuYWJsZWQoQURWSUNFX05FU1RFRF9UQUcsIF8obWVzc2FnZV9hZHZpY2VfbmVzdGVkX3RhZyksCisJCQkJICB0YWcsIG9iamVjdF9yZWYpOwogCiAJc3RyYnVmX2FkZGYoJmhlYWRlciwKIAkJICAgICJvYmplY3QgJXNcbiIKQEAgLTM5Nyw4ICs0MTUsNyBAQAogCQlPUFRfRklMRU5BTUUoJ0YnLCAiZmlsZSIsICZtc2dmaWxlLCBOXygicmVhZCBtZXNzYWdlIGZyb20gZmlsZSIpKSwKIAkJT1BUX0JPT0woJ2UnLCAiZWRpdCIsICZlZGl0X2ZsYWcsIE5fKCJmb3JjZSBlZGl0IG9mIHRhZyBtZXNzYWdlIikpLAogCQlPUFRfQk9PTCgncycsICJzaWduIiwgJm9wdC5zaWduLCBOXygiYW5ub3RhdGVkIGFuZCBHUEctc2lnbmVkIHRhZyIpKSwKLQkJT1BUX1NUUklORygwLCAiY2xlYW51cCIsICZjbGVhbnVwX2FyZywgTl8oIm1vZGUiKSwKLQkJCU5fKCJob3cgdG8gc3RyaXAgc3BhY2VzIGFuZCAjY29tbWVudHMgZnJvbSBtZXNzYWdlIikpLAorCQlPUFRfQ0xFQU5VUCgmY2xlYW51cF9hcmcpLAogCQlPUFRfU1RSSU5HKCd1JywgImxvY2FsLXVzZXIiLCAma2V5aWQsIE5fKCJrZXktaWQiKSwKIAkJCQkJTl8oInVzZSBhbm90aGVyIGtleSB0byBzaWduIHRoZSB0YWciKSksCiAJCU9QVF9fRk9SQ0UoJmZvcmNlLCBOXygicmVwbGFjZSB0aGUgdGFnIGlmIGV4aXN0cyIpLCAwKSwKQEAgLTQxMiw4ICs0MjksNyBAQAogCQlPUFRfV0lUSE9VVCgmZmlsdGVyLm5vX2NvbW1pdCwgTl8oInByaW50IG9ubHkgdGFncyB0aGF0IGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIpKSwKIAkJT1BUX01FUkdFRCgmZmlsdGVyLCBOXygicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG1lcmdlZCIpKSwKIAkJT1BUX05PX01FUkdFRCgmZmlsdGVyLCBOXygicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG5vdCBtZXJnZWQiKSksCi0JCU9QVF9DQUxMQkFDSygwICwgInNvcnQiLCBzb3J0aW5nX3RhaWwsIE5fKCJrZXkiKSwKLQkJCSAgICAgTl8oImZpZWxkIG5hbWUgdG8gc29ydCBvbiIpLCAmcGFyc2Vfb3B0X3JlZl9zb3J0aW5nKSwKKwkJT1BUX1JFRl9TT1JUKHNvcnRpbmdfdGFpbCksCiAJCXsKIAkJCU9QVElPTl9DQUxMQkFDSywgMCwgInBvaW50cy1hdCIsICZmaWx0ZXIucG9pbnRzX2F0LCBOXygib2JqZWN0IiksCiAJCQlOXygicHJpbnQgb25seSB0YWdzIG9mIHRoZSBvYmplY3QiKSwgUEFSU0VfT1BUX0xBU1RBUkdfREVGQVVMVCwKQEAgLTQzMywxNSArNDQ5LDEwIEBACiAJbWVtc2V0KCZvcHQsIDAsIHNpemVvZihvcHQpKTsKIAltZW1zZXQoJmZpbHRlciwgMCwgc2l6ZW9mKGZpbHRlcikpOwogCWZpbHRlci5saW5lcyA9IC0xOworCW9wdC5zaWduID0gLTE7CiAKIAlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsIG9wdGlvbnMsIGdpdF90YWdfdXNhZ2UsIDApOwogCi0JaWYgKGtleWlkKSB7Ci0JCW9wdC5zaWduID0gMTsKLQkJc2V0X3NpZ25pbmdfa2V5KGtleWlkKTsKLQl9Ci0JY3JlYXRlX3RhZ19vYmplY3QgPSAob3B0LnNpZ24gfHwgYW5ub3RhdGUgfHwgbXNnLmdpdmVuIHx8IG1zZ2ZpbGUpOwotCiAJaWYgKCFjbWRtb2RlKSB7CiAJCWlmIChhcmdjID09IDApCiAJCQljbWRtb2RlID0gJ2wnOwpAQCAtNDU0LDYgKzQ2NSwxNSBAQAogCWlmIChjbWRtb2RlID09ICdsJykKIAkJc2V0dXBfYXV0b19wYWdlcigidGFnIiwgMSk7CiAKKwlpZiAob3B0LnNpZ24gPT0gLTEpCisJCW9wdC5zaWduID0gY21kbW9kZSA/IDAgOiBjb25maWdfc2lnbl90YWcgPiAwOworCisJaWYgKGtleWlkKSB7CisJCW9wdC5zaWduID0gMTsKKwkJc2V0X3NpZ25pbmdfa2V5KGtleWlkKTsKKwl9CisJY3JlYXRlX3RhZ19vYmplY3QgPSAob3B0LnNpZ24gfHwgYW5ub3RhdGUgfHwgbXNnLmdpdmVuIHx8IG1zZ2ZpbGUpOworCiAJaWYgKChjcmVhdGVfdGFnX29iamVjdCB8fCBmb3JjZSkgJiYgKGNtZG1vZGUgIT0gMCkpCiAJCXVzYWdlX3dpdGhfb3B0aW9ucyhnaXRfdGFnX3VzYWdlLCBvcHRpb25zKTsKIApAQCAtNTUwLDcgKzU3MCw3IEBACiAJaWYgKGNyZWF0ZV90YWdfb2JqZWN0KSB7CiAJCWlmIChmb3JjZV9zaWduX2Fubm90YXRlICYmICFhbm5vdGF0ZSkKIAkJCW9wdC5zaWduID0gMTsKLQkJY3JlYXRlX3RhZygmb2JqZWN0LCB0YWcsICZidWYsICZvcHQsICZwcmV2LCAmb2JqZWN0KTsKKwkJY3JlYXRlX3RhZygmb2JqZWN0LCBvYmplY3RfcmVmLCB0YWcsICZidWYsICZvcHQsICZwcmV2LCAmb2JqZWN0KTsKIAl9CiAKIAl0cmFuc2FjdGlvbiA9IHJlZl90cmFuc2FjdGlvbl9iZWdpbigmZXJyKTsKZGlmZiAtLWdpdCBhL2J1aWx0aW4vdW5wYWNrLW9iamVjdHMuYyBiL2J1aWx0aW4vdW5wYWNrLW9iamVjdHMuYwppbmRleCA4MDQ3ODgwLi5kZDRhNzVlIDEwMDY0NAotLS0gYS9idWlsdGluL3VucGFjay1vYmplY3RzLmMKKysrIGIvYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jCkBAIC0yNCw2ICsyNCw3IEBACiBzdGF0aWMgb2ZmX3QgbWF4X2lucHV0X3NpemU7CiBzdGF0aWMgZ2l0X2hhc2hfY3R4IGN0eDsKIHN0YXRpYyBzdHJ1Y3QgZnNja19vcHRpb25zIGZzY2tfb3B0aW9ucyA9IEZTQ0tfT1BUSU9OU19TVFJJQ1Q7CitzdGF0aWMgc3RydWN0IHByb2dyZXNzICpwcm9ncmVzczsKIAogLyoKICAqIFdoZW4gcnVubmluZyB1bmRlciAtLXN0cmljdCBtb2RlLCBvYmplY3RzIHdob3NlIHJlYWNoYWJpbGl0eSBhcmUKQEAgLTkyLDYgKzkzLDcgQEAKIAljb25zdW1lZF9ieXRlcyArPSBieXRlczsKIAlpZiAobWF4X2lucHV0X3NpemUgJiYgY29uc3VtZWRfYnl0ZXMgPiBtYXhfaW5wdXRfc2l6ZSkKIAkJZGllKF8oInBhY2sgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgc2l6ZSIpKTsKKwlkaXNwbGF5X3Rocm91Z2hwdXQocHJvZ3Jlc3MsIGNvbnN1bWVkX2J5dGVzKTsKIH0KIAogc3RhdGljIHZvaWQgKmdldF9kYXRhKHVuc2lnbmVkIGxvbmcgc2l6ZSkKQEAgLTI2Myw3ICsyNjUsOCBAQAogCX0gZWxzZSB7CiAJCXN0cnVjdCBvYmplY3QgKm9iajsKIAkJaW50IGVhdGVuOwotCQloYXNoX29iamVjdF9maWxlKGJ1Ziwgc2l6ZSwgdHlwZV9uYW1lKHR5cGUpLCAmb2JqX2xpc3RbbnJdLm9pZCk7CisJCWhhc2hfb2JqZWN0X2ZpbGUodGhlX2hhc2hfYWxnbywgYnVmLCBzaXplLCB0eXBlX25hbWUodHlwZSksCisJCQkJICZvYmpfbGlzdFtucl0ub2lkKTsKIAkJYWRkZWRfb2JqZWN0KG5yLCB0eXBlLCBidWYsIHNpemUpOwogCQlvYmogPSBwYXJzZV9vYmplY3RfYnVmZmVyKHRoZV9yZXBvc2l0b3J5LCAmb2JqX2xpc3RbbnJdLm9pZCwKIAkJCQkJICB0eXBlLCBzaXplLCBidWYsCkBAIC0zMzIsNyArMzM1LDcgQEAKIHsKIAlzdHJ1Y3Qgb2JqZWN0ICpvYmo7CiAJc3RydWN0IG9ial9idWZmZXIgKm9ial9idWZmZXI7Ci0Jb2JqID0gbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgYmFzZS0+aGFzaCk7CisJb2JqID0gbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgYmFzZSk7CiAJaWYgKCFvYmopCiAJCXJldHVybiAwOwogCW9ial9idWZmZXIgPSBsb29rdXBfb2JqZWN0X2J1ZmZlcihvYmopOwpAQCAtNDg0LDcgKzQ4Nyw2IEBACiBzdGF0aWMgdm9pZCB1bnBhY2tfYWxsKHZvaWQpCiB7CiAJaW50IGk7Ci0Jc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcyA9IE5VTEw7CiAJc3RydWN0IHBhY2tfaGVhZGVyICpoZHIgPSBmaWxsKHNpemVvZihzdHJ1Y3QgcGFja19oZWFkZXIpKTsKIAogCW5yX29iamVjdHMgPSBudG9obChoZHItPmhkcl9lbnRyaWVzKTsKZGlmZiAtLWdpdCBhL2J1aWx0aW4vdXBkYXRlLWluZGV4LmMgYi9idWlsdGluL3VwZGF0ZS1pbmRleC5jCmluZGV4IGUxOWRhNzcuLmQ1MjdiOGYgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vdXBkYXRlLWluZGV4LmMKKysrIGIvYnVpbHRpbi91cGRhdGUtaW5kZXguYwpAQCAtMyw2ICszLDcgQEAKICAqCiAgKiBDb3B5cmlnaHQgKEMpIExpbnVzIFRvcnZhbGRzLCAyMDA1CiAgKi8KKyNkZWZpbmUgVVNFX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAibG9ja2ZpbGUuaCIKQEAgLTM0LDYgKzM1LDcgQEAKIHN0YXRpYyBpbnQgbWFya192YWxpZF9vbmx5Owogc3RhdGljIGludCBtYXJrX3NraXBfd29ya3RyZWVfb25seTsKIHN0YXRpYyBpbnQgbWFya19mc21vbml0b3Jfb25seTsKK3N0YXRpYyBpbnQgaWdub3JlX3NraXBfd29ya3RyZWVfZW50cmllczsKICNkZWZpbmUgTUFSS19GTEFHIDEKICNkZWZpbmUgVU5NQVJLX0ZMQUcgMgogc3RhdGljIHN0cnVjdCBzdHJidWYgbXRpbWVfZGlyID0gU1RSQlVGX0lOSVQ7CkBAIC0yNzksNyArMjgxLDcgQEAKIAltZW1jcHkoY2UtPm5hbWUsIHBhdGgsIGxlbik7CiAJY2UtPmNlX2ZsYWdzID0gY3JlYXRlX2NlX2ZsYWdzKDApOwogCWNlLT5jZV9uYW1lbGVuID0gbGVuOwotCWZpbGxfc3RhdF9jYWNoZV9pbmZvKGNlLCBzdCk7CisJZmlsbF9zdGF0X2NhY2hlX2luZm8oJnRoZV9pbmRleCwgY2UsIHN0KTsKIAljZS0+Y2VfbW9kZSA9IGNlX21vZGVfZnJvbV9zdGF0KG9sZCwgc3QtPnN0X21vZGUpOwogCiAJaWYgKGluZGV4X3BhdGgoJnRoZV9pbmRleCwgJmNlLT5vaWQsIHBhdGgsIHN0LApAQCAtMzgwLDcgKzM4Miw4IEBACiAJCSAqIHNvIHVwZGF0aW5nIGl0IGRvZXMgbm90IG1ha2Ugc2Vuc2UuCiAJCSAqIE9uIHRoZSBvdGhlciBoYW5kLCByZW1vdmluZyBpdCBmcm9tIGluZGV4IHNob3VsZCB3b3JrCiAJCSAqLwotCQlpZiAoYWxsb3dfcmVtb3ZlICYmIHJlbW92ZV9maWxlX2Zyb21fY2FjaGUocGF0aCkpCisJCWlmICghaWdub3JlX3NraXBfd29ya3RyZWVfZW50cmllcyAmJiBhbGxvd19yZW1vdmUgJiYKKwkJICAgIHJlbW92ZV9maWxlX2Zyb21fY2FjaGUocGF0aCkpCiAJCQlyZXR1cm4gZXJyb3IoIiVzOiBjYW5ub3QgcmVtb3ZlIGZyb20gdGhlIGluZGV4IiwgcGF0aCk7CiAJCXJldHVybiAwOwogCX0KQEAgLTU5NiwxMSArNTk5LDExIEBACiAJCQkJCXN0cnVjdCBvYmplY3RfaWQgKmVudCwgY29uc3QgY2hhciAqcGF0aCwKIAkJCQkJaW50IG5hbWVsZW4sIGludCBzdGFnZSkKIHsKLQl1bnNpZ25lZCBtb2RlOworCXVuc2lnbmVkIHNob3J0IG1vZGU7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJc3RydWN0IGNhY2hlX2VudHJ5ICpjZTsKIAotCWlmIChnZXRfdHJlZV9lbnRyeShlbnQsIHBhdGgsICZvaWQsICZtb2RlKSkgeworCWlmIChnZXRfdHJlZV9lbnRyeSh0aGVfcmVwb3NpdG9yeSwgZW50LCBwYXRoLCAmb2lkLCAmbW9kZSkpIHsKIAkJaWYgKHdoaWNoKQogCQkJZXJyb3IoIiVzOiBub3QgaW4gJXMgYnJhbmNoLiIsIHBhdGgsIHdoaWNoKTsKIAkJcmV0dXJuIE5VTEw7CkBAIC03MjMsNyArNzI2LDcgQEAKIH0KIAogc3RhdGljIGludCBkb19yZXVwZGF0ZShpbnQgYWMsIGNvbnN0IGNoYXIgKiphdiwKLQkJICAgICAgIGNvbnN0IGNoYXIgKnByZWZpeCwgaW50IHByZWZpeF9sZW5ndGgpCisJCSAgICAgICBjb25zdCBjaGFyICpwcmVmaXgpCiB7CiAJLyogUmVhZCBIRUFEIGFuZCBydW4gdXBkYXRlLWluZGV4IG9uIHBhdGhzIHRoYXQgYXJlCiAJICogbWVyZ2VkIGFuZCBhbHJlYWR5IGRpZmZlcmVudCBiZXR3ZWVuIGluZGV4IGFuZCBIRUFELgpAQCAtODQ3LDE0ICs4NTAsMTYgQEAKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBjYWNoZWluZm9fY2FsbGJhY2soc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqY3R4LAotCQkJCWNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwgaW50IHVuc2V0KQorc3RhdGljIGVudW0gcGFyc2Vfb3B0X3Jlc3VsdCBjYWNoZWluZm9fY2FsbGJhY2soCisJc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqY3R4LCBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCiB7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJdW5zaWduZWQgaW50IG1vZGU7CiAJY29uc3QgY2hhciAqcGF0aDsKIAogCUJVR19PTl9PUFRfTkVHKHVuc2V0KTsKKwlCVUdfT05fT1BUX0FSRyhhcmcpOwogCiAJaWYgKCFwYXJzZV9uZXdfc3R5bGVfY2FjaGVpbmZvKGN0eC0+YXJndlsxXSwgJm1vZGUsICZvaWQsICZwYXRoKSkgewogCQlpZiAoYWRkX2NhY2hlaW5mbyhtb2RlLCAmb2lkLCBwYXRoLCAwKSkKQEAgLTg3MywxMiArODc4LDE0IEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgc3RkaW5fY2FjaGVpbmZvX2NhbGxiYWNrKHN0cnVjdCBwYXJzZV9vcHRfY3R4X3QgKmN0eCwKLQkJCSAgICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwgaW50IHVuc2V0KQorc3RhdGljIGVudW0gcGFyc2Vfb3B0X3Jlc3VsdCBzdGRpbl9jYWNoZWluZm9fY2FsbGJhY2soCisJc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqY3R4LCBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCiB7CiAJaW50ICpudWxfdGVybV9saW5lID0gb3B0LT52YWx1ZTsKIAogCUJVR19PTl9PUFRfTkVHKHVuc2V0KTsKKwlCVUdfT05fT1BUX0FSRyhhcmcpOwogCiAJaWYgKGN0eC0+YXJnYyAhPSAxKQogCQlyZXR1cm4gZXJyb3IoIm9wdGlvbiAnJXMnIG11c3QgYmUgdGhlIGxhc3QgYXJndW1lbnQiLCBvcHQtPmxvbmdfbmFtZSk7CkBAIC04ODcsMTIgKzg5NCwxNCBAQAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IHN0ZGluX2NhbGxiYWNrKHN0cnVjdCBwYXJzZV9vcHRfY3R4X3QgKmN0eCwKLQkJCQljb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsIGludCB1bnNldCkKK3N0YXRpYyBlbnVtIHBhcnNlX29wdF9yZXN1bHQgc3RkaW5fY2FsbGJhY2soCisJc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqY3R4LCBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCiB7CiAJaW50ICpyZWFkX2Zyb21fc3RkaW4gPSBvcHQtPnZhbHVlOwogCiAJQlVHX09OX09QVF9ORUcodW5zZXQpOworCUJVR19PTl9PUFRfQVJHKGFyZyk7CiAKIAlpZiAoY3R4LT5hcmdjICE9IDEpCiAJCXJldHVybiBlcnJvcigib3B0aW9uICclcycgbXVzdCBiZSB0aGUgbGFzdCBhcmd1bWVudCIsIG9wdC0+bG9uZ19uYW1lKTsKQEAgLTkwMCwxMyArOTA5LDE1IEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgdW5yZXNvbHZlX2NhbGxiYWNrKHN0cnVjdCBwYXJzZV9vcHRfY3R4X3QgKmN0eCwKLQkJCQljb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsIGludCB1bnNldCkKK3N0YXRpYyBlbnVtIHBhcnNlX29wdF9yZXN1bHQgdW5yZXNvbHZlX2NhbGxiYWNrKAorCXN0cnVjdCBwYXJzZV9vcHRfY3R4X3QgKmN0eCwgY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCWNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQogewogCWludCAqaGFzX2Vycm9ycyA9IG9wdC0+dmFsdWU7CiAJY29uc3QgY2hhciAqcHJlZml4ID0gc3RhcnR1cF9pbmZvLT5wcmVmaXg7CiAKIAlCVUdfT05fT1BUX05FRyh1bnNldCk7CisJQlVHX09OX09QVF9BUkcoYXJnKTsKIAogCS8qIGNvbnN1bWUgcmVtYWluaW5nIGFyZ3VtZW50cy4gKi8KIAkqaGFzX2Vycm9ycyA9IGRvX3VucmVzb2x2ZShjdHgtPmFyZ2MsIGN0eC0+YXJndiwKQEAgLTkxOSwxOCArOTMwLDE5IEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgcmV1cGRhdGVfY2FsbGJhY2soc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqY3R4LAotCQkJCWNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwgaW50IHVuc2V0KQorc3RhdGljIGVudW0gcGFyc2Vfb3B0X3Jlc3VsdCByZXVwZGF0ZV9jYWxsYmFjaygKKwlzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpjdHgsIGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKKwljb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKIHsKIAlpbnQgKmhhc19lcnJvcnMgPSBvcHQtPnZhbHVlOwogCWNvbnN0IGNoYXIgKnByZWZpeCA9IHN0YXJ0dXBfaW5mby0+cHJlZml4OwogCiAJQlVHX09OX09QVF9ORUcodW5zZXQpOworCUJVR19PTl9PUFRfQVJHKGFyZyk7CiAKIAkvKiBjb25zdW1lIHJlbWFpbmluZyBhcmd1bWVudHMuICovCiAJc2V0dXBfd29ya190cmVlKCk7Ci0JKmhhc19lcnJvcnMgPSBkb19yZXVwZGF0ZShjdHgtPmFyZ2MsIGN0eC0+YXJndiwKLQkJCQlwcmVmaXgsIHByZWZpeCA/IHN0cmxlbihwcmVmaXgpIDogMCk7CisJKmhhc19lcnJvcnMgPSBkb19yZXVwZGF0ZShjdHgtPmFyZ2MsIGN0eC0+YXJndiwgcHJlZml4KTsKIAlpZiAoKmhhc19lcnJvcnMpCiAJCWFjdGl2ZV9jYWNoZV9jaGFuZ2VkID0gMDsKIApAQCAtOTU2LDYgKzk2OCw3IEBACiAJc3RydWN0IHBhcnNlX29wdF9jdHhfdCBjdHg7CiAJc3RyYnVmX2dldGxpbmVfZm4gZ2V0bGluZV9mbjsKIAlpbnQgcGFyc2VvcHRfc3RhdGUgPSBQQVJTRV9PUFRfVU5LTk9XTjsKKwlzdHJ1Y3QgcmVwb3NpdG9yeSAqciA9IHRoZV9yZXBvc2l0b3J5OwogCXN0cnVjdCBvcHRpb24gb3B0aW9uc1tdID0gewogCQlPUFRfQklUKCdxJywgTlVMTCwgJnJlZnJlc2hfYXJncy5mbGFncywKIAkJCU5fKCJjb250aW51ZSByZWZyZXNoIGV2ZW4gd2hlbiBpbmRleCBuZWVkcyB1cGRhdGUiKSwKQEAgLTk4NSw3ICs5OTgsOCBAQAogCQkJTl8oImFkZCB0aGUgc3BlY2lmaWVkIGVudHJ5IHRvIHRoZSBpbmRleCIpLAogCQkJUEFSU0VfT1BUX05PQVJHIHwgLyogZGlzYWxsb3cgLS1jYWNoZWluZm89PG1vZGU+IGZvcm0gKi8KIAkJCVBBUlNFX09QVF9OT05FRyB8IFBBUlNFX09QVF9MSVRFUkFMX0FSR0hFTFAsCi0JCQkocGFyc2Vfb3B0X2NiICopIGNhY2hlaW5mb19jYWxsYmFja30sCisJCQlOVUxMLCAwLAorCQkJY2FjaGVpbmZvX2NhbGxiYWNrfSwKIAkJe09QVElPTl9DQUxMQkFDSywgMCwgImNobW9kIiwgJnNldF9leGVjdXRhYmxlX2JpdCwgIigrfC0peCIsCiAJCQlOXygib3ZlcnJpZGUgdGhlIGV4ZWN1dGFibGUgYml0IG9mIHRoZSBsaXN0ZWQgZmlsZXMiKSwKIAkJCVBBUlNFX09QVF9OT05FRywKQEAgLTEwMDIsNiArMTAxNiw4IEBACiAJCXtPUFRJT05fU0VUX0lOVCwgMCwgIm5vLXNraXAtd29ya3RyZWUiLCAmbWFya19za2lwX3dvcmt0cmVlX29ubHksIE5VTEwsCiAJCQlOXygiY2xlYXIgc2tpcC13b3JrdHJlZSBiaXQiKSwKIAkJCVBBUlNFX09QVF9OT0FSRyB8IFBBUlNFX09QVF9OT05FRywgTlVMTCwgVU5NQVJLX0ZMQUd9LAorCQlPUFRfQk9PTCgwLCAiaWdub3JlLXNraXAtd29ya3RyZWUtZW50cmllcyIsICZpZ25vcmVfc2tpcF93b3JrdHJlZV9lbnRyaWVzLAorCQkJIE5fKCJkbyBub3QgdG91Y2ggaW5kZXgtb25seSBlbnRyaWVzIikpLAogCQlPUFRfU0VUX0lOVCgwLCAiaW5mby1vbmx5IiwgJmluZm9fb25seSwKIAkJCU5fKCJhZGQgdG8gaW5kZXggb25seTsgZG8gbm90IGFkZCBjb250ZW50IHRvIG9iamVjdCBkYXRhYmFzZSIpLCAxKSwKIAkJT1BUX1NFVF9JTlQoMCwgImZvcmNlLXJlbW92ZSIsICZmb3JjZV9yZW1vdmUsCkBAIC0xMDExLDE5ICsxMDI3LDE5IEBACiAJCXtPUFRJT05fTE9XTEVWRUxfQ0FMTEJBQ0ssIDAsICJzdGRpbiIsICZyZWFkX2Zyb21fc3RkaW4sIE5VTEwsCiAJCQlOXygicmVhZCBsaXN0IG9mIHBhdGhzIHRvIGJlIHVwZGF0ZWQgZnJvbSBzdGFuZGFyZCBpbnB1dCIpLAogCQkJUEFSU0VfT1BUX05PTkVHIHwgUEFSU0VfT1BUX05PQVJHLAotCQkJKHBhcnNlX29wdF9jYiAqKSBzdGRpbl9jYWxsYmFja30sCisJCQlOVUxMLCAwLCBzdGRpbl9jYWxsYmFja30sCiAJCXtPUFRJT05fTE9XTEVWRUxfQ0FMTEJBQ0ssIDAsICJpbmRleC1pbmZvIiwgJm51bF90ZXJtX2xpbmUsIE5VTEwsCiAJCQlOXygiYWRkIGVudHJpZXMgZnJvbSBzdGFuZGFyZCBpbnB1dCB0byB0aGUgaW5kZXgiKSwKIAkJCVBBUlNFX09QVF9OT05FRyB8IFBBUlNFX09QVF9OT0FSRywKLQkJCShwYXJzZV9vcHRfY2IgKikgc3RkaW5fY2FjaGVpbmZvX2NhbGxiYWNrfSwKKwkJCU5VTEwsIDAsIHN0ZGluX2NhY2hlaW5mb19jYWxsYmFja30sCiAJCXtPUFRJT05fTE9XTEVWRUxfQ0FMTEJBQ0ssIDAsICJ1bnJlc29sdmUiLCAmaGFzX2Vycm9ycywgTlVMTCwKIAkJCU5fKCJyZXBvcHVsYXRlIHN0YWdlcyAjMiBhbmQgIzMgZm9yIHRoZSBsaXN0ZWQgcGF0aHMiKSwKIAkJCVBBUlNFX09QVF9OT05FRyB8IFBBUlNFX09QVF9OT0FSRywKLQkJCShwYXJzZV9vcHRfY2IgKikgdW5yZXNvbHZlX2NhbGxiYWNrfSwKKwkJCU5VTEwsIDAsIHVucmVzb2x2ZV9jYWxsYmFja30sCiAJCXtPUFRJT05fTE9XTEVWRUxfQ0FMTEJBQ0ssICdnJywgImFnYWluIiwgJmhhc19lcnJvcnMsIE5VTEwsCiAJCQlOXygib25seSB1cGRhdGUgZW50cmllcyB0aGF0IGRpZmZlciBmcm9tIEhFQUQiKSwKIAkJCVBBUlNFX09QVF9OT05FRyB8IFBBUlNFX09QVF9OT0FSRywKLQkJCShwYXJzZV9vcHRfY2IgKikgcmV1cGRhdGVfY2FsbGJhY2t9LAorCQkJTlVMTCwgMCwgcmV1cGRhdGVfY2FsbGJhY2t9LAogCQlPUFRfQklUKDAsICJpZ25vcmUtbWlzc2luZyIsICZyZWZyZXNoX2FyZ3MuZmxhZ3MsCiAJCQlOXygiaWdub3JlIGZpbGVzIG1pc3NpbmcgZnJvbSB3b3JrdHJlZSIpLAogCQkJUkVGUkVTSF9JR05PUkVfTUlTU0lORyksCkBAIC0xMDcwLDYgKzEwODYsOCBAQAogCWlmIChlbnRyaWVzIDwgMCkKIAkJZGllKCJjYWNoZSBjb3JydXB0ZWQiKTsKIAorCXRoZV9pbmRleC51cGRhdGVkX3NraXB3b3JrdHJlZSA9IDE7CisKIAkvKgogCSAqIEN1c3RvbSBjb3B5IG9mIHBhcnNlX29wdGlvbnMoKSBiZWNhdXNlIHdlIHdhbnQgdG8gaGFuZGxlCiAJICogZmlsZW5hbWUgYXJndW1lbnRzIGFzIHRoZXkgY29tZS4KQEAgLTExNjcsMTEgKzExODUsMTIgQEAKIAkJcmVtb3ZlX3NwbGl0X2luZGV4KCZ0aGVfaW5kZXgpOwogCX0KIAorCXByZXBhcmVfcmVwb19zZXR0aW5ncyhyKTsKIAlzd2l0Y2ggKHVudHJhY2tlZF9jYWNoZSkgewogCWNhc2UgVUNfVU5TUEVDSUZJRUQ6CiAJCWJyZWFrOwogCWNhc2UgVUNfRElTQUJMRToKLQkJaWYgKGdpdF9jb25maWdfZ2V0X3VudHJhY2tlZF9jYWNoZSgpID09IDEpCisJCWlmIChyLT5zZXR0aW5ncy5jb3JlX3VudHJhY2tlZF9jYWNoZSA9PSBVTlRSQUNLRURfQ0FDSEVfV1JJVEUpCiAJCQl3YXJuaW5nKF8oImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIHRydWU7ICIKIAkJCQkgICJyZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgogCQkJCSAgImRpc2FibGUgdGhlIHVudHJhY2tlZCBjYWNoZSIpKTsKQEAgLTExODMsNyArMTIwMiw3IEBACiAJCXJldHVybiAhdGVzdF9pZl91bnRyYWNrZWRfY2FjaGVfaXNfc3VwcG9ydGVkKCk7CiAJY2FzZSBVQ19FTkFCTEU6CiAJY2FzZSBVQ19GT1JDRToKLQkJaWYgKGdpdF9jb25maWdfZ2V0X3VudHJhY2tlZF9jYWNoZSgpID09IDApCisJCWlmIChyLT5zZXR0aW5ncy5jb3JlX3VudHJhY2tlZF9jYWNoZSA9PSBVTlRSQUNLRURfQ0FDSEVfUkVNT1ZFKQogCQkJd2FybmluZyhfKCJjb3JlLnVudHJhY2tlZENhY2hlIGlzIHNldCB0byBmYWxzZTsgIgogCQkJCSAgInJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCB0byAiCiAJCQkJICAiZW5hYmxlIHRoZSB1bnRyYWNrZWQgY2FjaGUiKSk7CmRpZmYgLS1naXQgYS9idWlsdGluL3VwbG9hZC1wYWNrLmMgYi9idWlsdGluL3VwbG9hZC1wYWNrLmMKaW5kZXggNDJkYzRkYS4uNmRhOGZhMiAxMDA2NDQKLS0tIGEvYnVpbHRpbi91cGxvYWQtcGFjay5jCisrKyBiL2J1aWx0aW4vdXBsb2FkLXBhY2suYwpAQCAtMzMsNyArMzMsNyBAQAogCXBhY2tldF90cmFjZV9pZGVudGl0eSgidXBsb2FkLXBhY2siKTsKIAlyZWFkX3JlcGxhY2VfcmVmcyA9IDA7CiAKLQlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBOVUxMLCBvcHRpb25zLCB1cGxvYWRfcGFja191c2FnZSwgMCk7CisJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgcHJlZml4LCBvcHRpb25zLCB1cGxvYWRfcGFja191c2FnZSwgMCk7CiAKIAlpZiAoYXJnYyAhPSAxKQogCQl1c2FnZV93aXRoX29wdGlvbnModXBsb2FkX3BhY2tfdXNhZ2UsIG9wdGlvbnMpOwpkaWZmIC0tZ2l0IGEvYnVpbHRpbi92ZXJpZnktY29tbWl0LmMgYi9idWlsdGluL3ZlcmlmeS1jb21taXQuYwppbmRleCA3NzcyYzA3Li40MGM2OWEwIDEwMDY0NAotLS0gYS9idWlsdGluL3ZlcmlmeS1jb21taXQuYworKysgYi9idWlsdGluL3ZlcmlmeS1jb21taXQuYwpAQCAtMTIsNyArMTIsNiBAQAogI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKICNpbmNsdWRlICJjb21taXQuaCIKICNpbmNsdWRlICJydW4tY29tbWFuZC5oIgotI2luY2x1ZGUgPHNpZ25hbC5oPgogI2luY2x1ZGUgInBhcnNlLW9wdGlvbnMuaCIKICNpbmNsdWRlICJncGctaW50ZXJmYWNlLmgiCiAKQEAgLTIxLDE1ICsyMCwxNCBAQAogCQlOVUxMCiB9OwogCi1zdGF0aWMgaW50IHJ1bl9ncGdfdmVyaWZ5KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY29uc3QgY2hhciAqYnVmLCB1bnNpZ25lZCBsb25nIHNpemUsIHVuc2lnbmVkIGZsYWdzKQorc3RhdGljIGludCBydW5fZ3BnX3ZlcmlmeShzdHJ1Y3QgY29tbWl0ICpjb21taXQsIHVuc2lnbmVkIGZsYWdzKQogewogCXN0cnVjdCBzaWduYXR1cmVfY2hlY2sgc2lnbmF0dXJlX2NoZWNrOwogCWludCByZXQ7CiAKIAltZW1zZXQoJnNpZ25hdHVyZV9jaGVjaywgMCwgc2l6ZW9mKHNpZ25hdHVyZV9jaGVjaykpOwogCi0JcmV0ID0gY2hlY2tfY29tbWl0X3NpZ25hdHVyZShsb29rdXBfY29tbWl0KHRoZV9yZXBvc2l0b3J5LCBvaWQpLAotCQkJCSAgICAgJnNpZ25hdHVyZV9jaGVjayk7CisJcmV0ID0gY2hlY2tfY29tbWl0X3NpZ25hdHVyZShjb21taXQsICZzaWduYXR1cmVfY2hlY2spOwogCXByaW50X3NpZ25hdHVyZV9idWZmZXIoJnNpZ25hdHVyZV9jaGVjaywgZmxhZ3MpOwogCiAJc2lnbmF0dXJlX2NoZWNrX2NsZWFyKCZzaWduYXR1cmVfY2hlY2spOwpAQCAtMzgsMjYgKzM2LDIwIEBACiAKIHN0YXRpYyBpbnQgdmVyaWZ5X2NvbW1pdChjb25zdCBjaGFyICpuYW1lLCB1bnNpZ25lZCBmbGFncykKIHsKLQllbnVtIG9iamVjdF90eXBlIHR5cGU7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7Ci0JY2hhciAqYnVmOwotCXVuc2lnbmVkIGxvbmcgc2l6ZTsKLQlpbnQgcmV0OworCXN0cnVjdCBvYmplY3QgKm9iajsKIAogCWlmIChnZXRfb2lkKG5hbWUsICZvaWQpKQogCQlyZXR1cm4gZXJyb3IoImNvbW1pdCAnJXMnIG5vdCBmb3VuZC4iLCBuYW1lKTsKIAotCWJ1ZiA9IHJlYWRfb2JqZWN0X2ZpbGUoJm9pZCwgJnR5cGUsICZzaXplKTsKLQlpZiAoIWJ1ZikKKwlvYmogPSBwYXJzZV9vYmplY3QodGhlX3JlcG9zaXRvcnksICZvaWQpOworCWlmICghb2JqKQogCQlyZXR1cm4gZXJyb3IoIiVzOiB1bmFibGUgdG8gcmVhZCBmaWxlLiIsIG5hbWUpOwotCWlmICh0eXBlICE9IE9CSl9DT01NSVQpCisJaWYgKG9iai0+dHlwZSAhPSBPQkpfQ09NTUlUKQogCQlyZXR1cm4gZXJyb3IoIiVzOiBjYW5ub3QgdmVyaWZ5IGEgbm9uLWNvbW1pdCBvYmplY3Qgb2YgdHlwZSAlcy4iLAotCQkJCW5hbWUsIHR5cGVfbmFtZSh0eXBlKSk7CisJCQkJbmFtZSwgdHlwZV9uYW1lKG9iai0+dHlwZSkpOwogCi0JcmV0ID0gcnVuX2dwZ192ZXJpZnkoJm9pZCwgYnVmLCBzaXplLCBmbGFncyk7Ci0KLQlmcmVlKGJ1Zik7Ci0JcmV0dXJuIHJldDsKKwlyZXR1cm4gcnVuX2dwZ192ZXJpZnkoKHN0cnVjdCBjb21taXQgKilvYmosIGZsYWdzKTsKIH0KIAogc3RhdGljIGludCBnaXRfdmVyaWZ5X2NvbW1pdF9jb25maWcoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqY2IpCmRpZmYgLS1naXQgYS9idWlsdGluL3ZlcmlmeS10YWcuYyBiL2J1aWx0aW4vdmVyaWZ5LXRhZy5jCmluZGV4IDZmYTA0YjcuLmY0NTEzNmEgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vdmVyaWZ5LXRhZy5jCisrKyBiL2J1aWx0aW4vdmVyaWZ5LXRhZy5jCkBAIC0xMCw3ICsxMCw2IEBACiAjaW5jbHVkZSAiYnVpbHRpbi5oIgogI2luY2x1ZGUgInRhZy5oIgogI2luY2x1ZGUgInJ1bi1jb21tYW5kLmgiCi0jaW5jbHVkZSA8c2lnbmFsLmg+CiAjaW5jbHVkZSAicGFyc2Utb3B0aW9ucy5oIgogI2luY2x1ZGUgImdwZy1pbnRlcmZhY2UuaCIKICNpbmNsdWRlICJyZWYtZmlsdGVyLmgiCmRpZmYgLS1naXQgYS9idWlsdGluL3dvcmt0cmVlLmMgYi9idWlsdGluL3dvcmt0cmVlLmMKaW5kZXggNWU4NDAyNi4uZDk5ZGIzNSAxMDA2NDQKLS0tIGEvYnVpbHRpbi93b3JrdHJlZS5jCisrKyBiL2J1aWx0aW4vd29ya3RyZWUuYwpAQCAtOSw3ICs5LDcgQEAKICNpbmNsdWRlICJyZWZzLmgiCiAjaW5jbHVkZSAicnVuLWNvbW1hbmQuaCIKICNpbmNsdWRlICJzaWdjaGFpbi5oIgotI2luY2x1ZGUgInJlZnMuaCIKKyNpbmNsdWRlICJzdWJtb2R1bGUuaCIKICNpbmNsdWRlICJ1dGY4LmgiCiAjaW5jbHVkZSAid29ya3RyZWUuaCIKIApAQCAtMjM0LDE0ICsyMzQsNyBAQAogCQlkaWUoXygiJyVzJyBhbHJlYWR5IGV4aXN0cyIpLCBwYXRoKTsKIAogCXdvcmt0cmVlcyA9IGdldF93b3JrdHJlZXMoMCk7Ci0JLyoKLQkgKiBmaW5kX3dvcmt0cmVlKCkncyBzdWZmaXggbWF0Y2hpbmcgbWF5IHVuZGVzaXJhYmx5IGZpbmQgdGhlIG1haW4KLQkgKiByYXRoZXIgdGhhbiBhIGxpbmtlZCB3b3JrdHJlZSAoZm9yIGluc3RhbmNlLCB3aGVuIHRoZSBiYXNlbmFtZXMKLQkgKiBvZiB0aGUgbWFpbiB3b3JrdHJlZSBhbmQgdGhlIG9uZSBiZWluZyBjcmVhdGVkIGFyZSB0aGUgc2FtZSkuCi0JICogV2UncmUgb25seSBpbnRlcmVzdGVkIGluIGxpbmtlZCB3b3JrdHJlZXMsIHNvIHNraXAgdGhlIG1haW4KLQkgKiB3b3JrdHJlZSB3aXRoICsxLgotCSAqLwotCXd0ID0gZmluZF93b3JrdHJlZSh3b3JrdHJlZXMgKyAxLCBOVUxMLCBwYXRoKTsKKwl3dCA9IGZpbmRfd29ya3RyZWVfYnlfcGF0aCh3b3JrdHJlZXMsIHBhdGgpOwogCWlmICghd3QpCiAJCWdvdG8gZG9uZTsKIApAQCAtMjY1LDE1ICsyNTgsMTYgQEAKIAkJCWNvbnN0IHN0cnVjdCBhZGRfb3B0cyAqb3B0cykKIHsKIAlzdHJ1Y3Qgc3RyYnVmIHNiX2dpdCA9IFNUUkJVRl9JTklULCBzYl9yZXBvID0gU1RSQlVGX0lOSVQ7Ci0Jc3RydWN0IHN0cmJ1ZiBzYiA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBzdHJidWYgc2IgPSBTVFJCVUZfSU5JVCwgcmVhbHBhdGggPSBTVFJCVUZfSU5JVDsKIAljb25zdCBjaGFyICpuYW1lOwotCXN0cnVjdCBzdGF0IHN0OwogCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNwID0gQ0hJTERfUFJPQ0VTU19JTklUOwogCXN0cnVjdCBhcmd2X2FycmF5IGNoaWxkX2VudiA9IEFSR1ZfQVJSQVlfSU5JVDsKLQlpbnQgY291bnRlciA9IDAsIGxlbiwgcmV0OworCXVuc2lnbmVkIGludCBjb3VudGVyID0gMDsKKwlpbnQgbGVuLCByZXQ7CiAJc3RydWN0IHN0cmJ1ZiBzeW1yZWYgPSBTVFJCVUZfSU5JVDsKIAlzdHJ1Y3QgY29tbWl0ICpjb21taXQgPSBOVUxMOwogCWludCBpc19icmFuY2ggPSAwOworCXN0cnVjdCBzdHJidWYgc2JfbmFtZSA9IFNUUkJVRl9JTklUOwogCiAJdmFsaWRhdGVfd29ya3RyZWVfYWRkKHBhdGgsIG9wdHMpOwogCkBAIC0yODksMTMgKzI4MywyMyBAQAogCQlkaWUoXygiaW52YWxpZCByZWZlcmVuY2U6ICVzIiksIHJlZm5hbWUpOwogCiAJbmFtZSA9IHdvcmt0cmVlX2Jhc2VuYW1lKHBhdGgsICZsZW4pOwotCWdpdF9wYXRoX2J1Zigmc2JfcmVwbywgIndvcmt0cmVlcy8lLipzIiwgKGludCkocGF0aCArIGxlbiAtIG5hbWUpLCBuYW1lKTsKKwlzdHJidWZfYWRkKCZzYiwgbmFtZSwgcGF0aCArIGxlbiAtIG5hbWUpOworCXNhbml0aXplX3JlZm5hbWVfY29tcG9uZW50KHNiLmJ1ZiwgJnNiX25hbWUpOworCWlmICghc2JfbmFtZS5sZW4pCisJCUJVRygiSG93IGNvbWUgJyVzJyBiZWNvbWVzIGVtcHR5IGFmdGVyIHNhbml0aXphdGlvbj8iLCBzYi5idWYpOworCXN0cmJ1Zl9yZXNldCgmc2IpOworCW5hbWUgPSBzYl9uYW1lLmJ1ZjsKKwlnaXRfcGF0aF9idWYoJnNiX3JlcG8sICJ3b3JrdHJlZXMvJXMiLCBuYW1lKTsKIAlsZW4gPSBzYl9yZXBvLmxlbjsKIAlpZiAoc2FmZV9jcmVhdGVfbGVhZGluZ19kaXJlY3Rvcmllc19jb25zdChzYl9yZXBvLmJ1ZikpCiAJCWRpZV9lcnJubyhfKCJjb3VsZCBub3QgY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgb2YgJyVzJyIpLAogCQkJICBzYl9yZXBvLmJ1Zik7Ci0Jd2hpbGUgKCFzdGF0KHNiX3JlcG8uYnVmLCAmc3QpKSB7CisKKwl3aGlsZSAobWtkaXIoc2JfcmVwby5idWYsIDA3NzcpKSB7CiAJCWNvdW50ZXIrKzsKKwkJaWYgKChlcnJubyAhPSBFRVhJU1QpIHx8ICFjb3VudGVyIC8qIG92ZXJmbG93ICovKQorCQkJZGllX2Vycm5vKF8oImNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5IG9mICclcyciKSwKKwkJCQkgIHNiX3JlcG8uYnVmKTsKIAkJc3RyYnVmX3NldGxlbigmc2JfcmVwbywgbGVuKTsKIAkJc3RyYnVmX2FkZGYoJnNiX3JlcG8sICIlZCIsIGNvdW50ZXIpOwogCX0KQEAgLTMwNSw4ICszMDksNiBAQAogCWF0ZXhpdChyZW1vdmVfanVuayk7CiAJc2lnY2hhaW5fcHVzaF9jb21tb24ocmVtb3ZlX2p1bmtfb25fc2lnbmFsKTsKIAotCWlmIChta2RpcihzYl9yZXBvLmJ1ZiwgMDc3NykpCi0JCWRpZV9lcnJubyhfKCJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBvZiAnJXMnIiksIHNiX3JlcG8uYnVmKTsKIAlqdW5rX2dpdF9kaXIgPSB4c3RyZHVwKHNiX3JlcG8uYnVmKTsKIAlpc19qdW5rID0gMTsKIApAQCAtMzI4LDkgKzMzMCwxMSBAQAogCiAJc3RyYnVmX3Jlc2V0KCZzYik7CiAJc3RyYnVmX2FkZGYoJnNiLCAiJXMvZ2l0ZGlyIiwgc2JfcmVwby5idWYpOwotCXdyaXRlX2ZpbGUoc2IuYnVmLCAiJXMiLCByZWFsX3BhdGgoc2JfZ2l0LmJ1ZikpOworCXN0cmJ1Zl9yZWFscGF0aCgmcmVhbHBhdGgsIHNiX2dpdC5idWYsIDEpOworCXdyaXRlX2ZpbGUoc2IuYnVmLCAiJXMiLCByZWFscGF0aC5idWYpOworCXN0cmJ1Zl9yZWFscGF0aCgmcmVhbHBhdGgsIGdldF9naXRfY29tbW9uX2RpcigpLCAxKTsKIAl3cml0ZV9maWxlKHNiX2dpdC5idWYsICJnaXRkaXI6ICVzL3dvcmt0cmVlcy8lcyIsCi0JCSAgIHJlYWxfcGF0aChnZXRfZ2l0X2NvbW1vbl9kaXIoKSksIG5hbWUpOworCQkgICByZWFscGF0aC5idWYsIG5hbWUpOwogCS8qCiAJICogVGhpcyBpcyB0byBrZWVwIHJlc29sdmVfcmVmKCkgaGFwcHkuIFdlIG5lZWQgYSB2YWxpZCBIRUFECiAJICogb3IgaXNfZ2l0X2RpcmVjdG9yeSgpIHdpbGwgcmVqZWN0IHRoZSBkaXJlY3RvcnkuIEFueSB2YWx1ZSB3aGljaApAQCAtMzQwLDcgKzM0NCw3IEBACiAJICovCiAJc3RyYnVmX3Jlc2V0KCZzYik7CiAJc3RyYnVmX2FkZGYoJnNiLCAiJXMvSEVBRCIsIHNiX3JlcG8uYnVmKTsKLQl3cml0ZV9maWxlKHNiLmJ1ZiwgIiVzIiwgc2hhMV90b19oZXgobnVsbF9zaGExKSk7CisJd3JpdGVfZmlsZShzYi5idWYsICIlcyIsIG9pZF90b19oZXgoJm51bGxfb2lkKSk7CiAJc3RyYnVmX3Jlc2V0KCZzYik7CiAJc3RyYnVmX2FkZGYoJnNiLCAiJXMvY29tbW9uZGlyIiwgc2JfcmVwby5idWYpOwogCXdyaXRlX2ZpbGUoc2IuYnVmLCAiLi4vLi4iKTsKQEAgLTM2Nyw3ICszNzEsNyBAQAogCWlmIChvcHRzLT5jaGVja291dCkgewogCQljcC5hcmd2ID0gTlVMTDsKIAkJYXJndl9hcnJheV9jbGVhcigmY3AuYXJncyk7Ci0JCWFyZ3ZfYXJyYXlfcHVzaGwoJmNwLmFyZ3MsICJyZXNldCIsICItLWhhcmQiLCBOVUxMKTsKKwkJYXJndl9hcnJheV9wdXNobCgmY3AuYXJncywgInJlc2V0IiwgIi0taGFyZCIsICItLW5vLXJlY3Vyc2Utc3VibW9kdWxlcyIsIE5VTEwpOwogCQlpZiAob3B0cy0+cXVpZXQpCiAJCQlhcmd2X2FycmF5X3B1c2goJmNwLmFyZ3MsICItLXF1aWV0Iik7CiAJCWNwLmVudiA9IGNoaWxkX2Vudi5hcmd2OwpAQCAtNDAxLDYgKzQwNSw3IEBACiAJCQljcC5kaXIgPSBwYXRoOwogCQkJY3AuZW52ID0gZW52OwogCQkJY3AuYXJndiA9IE5VTEw7CisJCQljcC50cmFjZTJfaG9va19uYW1lID0gInBvc3QtY2hlY2tvdXQiOwogCQkJYXJndl9hcnJheV9wdXNobCgmY3AuYXJncywgYWJzb2x1dGVfcGF0aChob29rKSwKIAkJCQkJIG9pZF90b19oZXgoJm51bGxfb2lkKSwKIAkJCQkJIG9pZF90b19oZXgoJmNvbW1pdC0+b2JqZWN0Lm9pZCksCkBAIC00MTQsNiArNDE5LDggQEAKIAlzdHJidWZfcmVsZWFzZSgmc3ltcmVmKTsKIAlzdHJidWZfcmVsZWFzZSgmc2JfcmVwbyk7CiAJc3RyYnVmX3JlbGVhc2UoJnNiX2dpdCk7CisJc3RyYnVmX3JlbGVhc2UoJnNiX25hbWUpOworCXN0cmJ1Zl9yZWxlYXNlKCZyZWFscGF0aCk7CiAJcmV0dXJuIHJldDsKIH0KIApAQCAtNzI0LDIwICs3MzEsMzYgQEAKIHN0YXRpYyB2b2lkIHZhbGlkYXRlX25vX3N1Ym1vZHVsZXMoY29uc3Qgc3RydWN0IHdvcmt0cmVlICp3dCkKIHsKIAlzdHJ1Y3QgaW5kZXhfc3RhdGUgaXN0YXRlID0geyBOVUxMIH07CisJc3RydWN0IHN0cmJ1ZiBwYXRoID0gU1RSQlVGX0lOSVQ7CiAJaW50IGksIGZvdW5kX3N1Ym1vZHVsZXMgPSAwOwogCi0JaWYgKHJlYWRfaW5kZXhfZnJvbSgmaXN0YXRlLCB3b3JrdHJlZV9naXRfcGF0aCh3dCwgImluZGV4IiksCi0JCQkgICAgZ2V0X3dvcmt0cmVlX2dpdF9kaXIod3QpKSA+IDApIHsKKwlpZiAoaXNfZGlyZWN0b3J5KHdvcmt0cmVlX2dpdF9wYXRoKHd0LCAibW9kdWxlcyIpKSkgeworCQkvKgorCQkgKiBUaGVyZSBjb3VsZCBiZSBmYWxzZSBwb3NpdGl2ZXMsIGUuZy4gdGhlICJtb2R1bGVzIgorCQkgKiBkaXJlY3RvcnkgZXhpc3RzIGJ1dCBpcyBlbXB0eS4gQnV0IGl0J3MgYSByYXJlIGNhc2UgYW5kCisJCSAqIHRoaXMgc2ltcGxlciBjaGVjayBpcyBwcm9iYWJseSBnb29kIGVub3VnaCBmb3Igbm93LgorCQkgKi8KKwkJZm91bmRfc3VibW9kdWxlcyA9IDE7CisJfSBlbHNlIGlmIChyZWFkX2luZGV4X2Zyb20oJmlzdGF0ZSwgd29ya3RyZWVfZ2l0X3BhdGgod3QsICJpbmRleCIpLAorCQkJCSAgIGdldF93b3JrdHJlZV9naXRfZGlyKHd0KSkgPiAwKSB7CiAJCWZvciAoaSA9IDA7IGkgPCBpc3RhdGUuY2FjaGVfbnI7IGkrKykgewogCQkJc3RydWN0IGNhY2hlX2VudHJ5ICpjZSA9IGlzdGF0ZS5jYWNoZVtpXTsKKwkJCWludCBlcnI7CiAKLQkJCWlmIChTX0lTR0lUTElOSyhjZS0+Y2VfbW9kZSkpIHsKLQkJCQlmb3VuZF9zdWJtb2R1bGVzID0gMTsKLQkJCQlicmVhazsKLQkJCX0KKwkJCWlmICghU19JU0dJVExJTksoY2UtPmNlX21vZGUpKQorCQkJCWNvbnRpbnVlOworCisJCQlzdHJidWZfcmVzZXQoJnBhdGgpOworCQkJc3RyYnVmX2FkZGYoJnBhdGgsICIlcy8lcyIsIHd0LT5wYXRoLCBjZS0+bmFtZSk7CisJCQlpZiAoIWlzX3N1Ym1vZHVsZV9wb3B1bGF0ZWRfZ2VudGx5KHBhdGguYnVmLCAmZXJyKSkKKwkJCQljb250aW51ZTsKKworCQkJZm91bmRfc3VibW9kdWxlcyA9IDE7CisJCQlicmVhazsKIAkJfQogCX0KIAlkaXNjYXJkX2luZGV4KCZpc3RhdGUpOworCXN0cmJ1Zl9yZWxlYXNlKCZwYXRoKTsKIAogCWlmIChmb3VuZF9zdWJtb2R1bGVzKQogCQlkaWUoXygid29ya2luZyB0cmVlcyBjb250YWluaW5nIHN1Ym1vZHVsZXMgY2Fubm90IGJlIG1vdmVkIG9yIHJlbW92ZWQiKSk7CkBAIC04NTIsNyArODc1LDcgQEAKIAkJCSAgb3JpZ2luYWxfcGF0aCk7CiAJcmV0ID0geHJlYWQoY3Aub3V0LCBidWYsIHNpemVvZihidWYpKTsKIAlpZiAocmV0KQotCQlkaWUoXygiJyVzJyBpcyBkaXJ0eSwgdXNlIC0tZm9yY2UgdG8gZGVsZXRlIGl0IiksCisJCWRpZShfKCInJXMnIGNvbnRhaW5zIG1vZGlmaWVkIG9yIHVudHJhY2tlZCBmaWxlcywgdXNlIC0tZm9yY2UgdG8gZGVsZXRlIGl0IiksCiAJCSAgICBvcmlnaW5hbF9wYXRoKTsKIAljbG9zZShjcC5vdXQpOwogCXJldCA9IGZpbmlzaF9jb21tYW5kKCZjcCk7CmRpZmYgLS1naXQgYS9idWlsdGluL3dyaXRlLXRyZWUuYyBiL2J1aWx0aW4vd3JpdGUtdHJlZS5jCmluZGV4IGNkY2JmODIuLjQ1ZDYxNzAgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vd3JpdGUtdHJlZS5jCisrKyBiL2J1aWx0aW4vd3JpdGUtdHJlZS5jCkBAIC0zLDYgKzMsNyBAQAogICoKICAqIENvcHlyaWdodCAoQykgTGludXMgVG9ydmFsZHMsIDIwMDUKICAqLworI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiYnVpbHRpbi5oIgogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCkBAIC0xNSwxNiArMTYsMTYgQEAKIAlOVUxMCiB9OwogCi1pbnQgY21kX3dyaXRlX3RyZWUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICp1bnVzZWRfcHJlZml4KQoraW50IGNtZF93cml0ZV90cmVlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqY21kX3ByZWZpeCkKIHsKIAlpbnQgZmxhZ3MgPSAwLCByZXQ7Ci0JY29uc3QgY2hhciAqcHJlZml4ID0gTlVMTDsKKwljb25zdCBjaGFyICp0cmVlX3ByZWZpeCA9IE5VTEw7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJY29uc3QgY2hhciAqbWUgPSAiZ2l0LXdyaXRlLXRyZWUiOwogCXN0cnVjdCBvcHRpb24gd3JpdGVfdHJlZV9vcHRpb25zW10gPSB7CiAJCU9QVF9CSVQoMCwgIm1pc3Npbmctb2siLCAmZmxhZ3MsIE5fKCJhbGxvdyBtaXNzaW5nIG9iamVjdHMiKSwKIAkJCVdSSVRFX1RSRUVfTUlTU0lOR19PSyksCi0JCU9QVF9TVFJJTkcoMCwgInByZWZpeCIsICZwcmVmaXgsIE5fKCI8cHJlZml4Pi8iKSwKKwkJT1BUX1NUUklORygwLCAicHJlZml4IiwgJnRyZWVfcHJlZml4LCBOXygiPHByZWZpeD4vIiksCiAJCQkgICBOXygid3JpdGUgdHJlZSBvYmplY3QgZm9yIGEgc3ViZGlyZWN0b3J5IDxwcmVmaXg+IikpLAogCQl7IE9QVElPTl9CSVQsIDAsICJpZ25vcmUtY2FjaGUtdHJlZSIsICZmbGFncywgTlVMTCwKIAkJICBOXygib25seSB1c2VmdWwgZm9yIGRlYnVnZ2luZyIpLApAQCAtMzQsMTAgKzM1LDEwIEBACiAJfTsKIAogCWdpdF9jb25maWcoZ2l0X2RlZmF1bHRfY29uZmlnLCBOVUxMKTsKLQlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCB1bnVzZWRfcHJlZml4LCB3cml0ZV90cmVlX29wdGlvbnMsCisJYXJnYyA9IHBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgY21kX3ByZWZpeCwgd3JpdGVfdHJlZV9vcHRpb25zLAogCQkJICAgICB3cml0ZV90cmVlX3VzYWdlLCAwKTsKIAotCXJldCA9IHdyaXRlX2NhY2hlX2FzX3RyZWUoJm9pZCwgZmxhZ3MsIHByZWZpeCk7CisJcmV0ID0gd3JpdGVfY2FjaGVfYXNfdHJlZSgmb2lkLCBmbGFncywgdHJlZV9wcmVmaXgpOwogCXN3aXRjaCAocmV0KSB7CiAJY2FzZSAwOgogCQlwcmludGYoIiVzXG4iLCBvaWRfdG9faGV4KCZvaWQpKTsKQEAgLTQ5LDcgKzUwLDcgQEAKIAkJZGllKCIlczogZXJyb3IgYnVpbGRpbmcgdHJlZXMiLCBtZSk7CiAJCWJyZWFrOwogCWNhc2UgV1JJVEVfVFJFRV9QUkVGSVhfRVJST1I6Ci0JCWRpZSgiJXM6IHByZWZpeCAlcyBub3QgZm91bmQiLCBtZSwgcHJlZml4KTsKKwkJZGllKCIlczogcHJlZml4ICVzIG5vdCBmb3VuZCIsIG1lLCB0cmVlX3ByZWZpeCk7CiAJCWJyZWFrOwogCX0KIAlyZXR1cm4gcmV0OwpkaWZmIC0tZ2l0IGEvYnVsay1jaGVja2luLmMgYi9idWxrLWNoZWNraW4uYwppbmRleCA0MDllY2I1Li41ODNhYWNiIDEwMDY0NAotLS0gYS9idWxrLWNoZWNraW4uYworKysgYi9idWxrLWNoZWNraW4uYwpAQCAtNjcsNyArNjcsNyBAQAogCWludCBpOwogCiAJLyogVGhlIG9iamVjdCBtYXkgYWxyZWFkeSBleGlzdCBpbiB0aGUgcmVwb3NpdG9yeSAqLwotCWlmIChoYXNfc2hhMV9maWxlKG9pZC0+aGFzaCkpCisJaWYgKGhhc19vYmplY3RfZmlsZShvaWQpKQogCQlyZXR1cm4gMTsKIAogCS8qIE1pZ2h0IHdhbnQgdG8ga2VlcCB0aGUgbGlzdCBzb3J0ZWQgKi8KQEAgLTE5Nyw3ICsxOTcsNyBAQAogCWdpdF9oYXNoX2N0eCBjdHg7CiAJdW5zaWduZWQgY2hhciBvYnVmWzE2Mzg0XTsKIAl1bnNpZ25lZCBoZWFkZXJfbGVuOwotCXN0cnVjdCBoYXNoZmlsZV9jaGVja3BvaW50IGNoZWNrcG9pbnQ7CisJc3RydWN0IGhhc2hmaWxlX2NoZWNrcG9pbnQgY2hlY2twb2ludCA9IHswfTsKIAlzdHJ1Y3QgcGFja19pZHhfZW50cnkgKmlkeCA9IE5VTEw7CiAKIAlzZWVrYmFjayA9IGxzZWVrKGZkLCAwLCBTRUVLX0NVUik7CmRpZmYgLS1naXQgYS9idWxrLWNoZWNraW4uaCBiL2J1bGstY2hlY2tpbi5oCmluZGV4IGY0MzhmOTMuLmIyNmYzZGMgMTAwNjQ0Ci0tLSBhL2J1bGstY2hlY2tpbi5oCisrKyBiL2J1bGstY2hlY2tpbi5oCkBAIC02LDExICs2LDExIEBACiAKICNpbmNsdWRlICJjYWNoZS5oIgogCi1leHRlcm4gaW50IGluZGV4X2J1bGtfY2hlY2tpbihzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCi0JCQkgICAgICBpbnQgZmQsIHNpemVfdCBzaXplLCBlbnVtIG9iamVjdF90eXBlIHR5cGUsCi0JCQkgICAgICBjb25zdCBjaGFyICpwYXRoLCB1bnNpZ25lZCBmbGFncyk7CitpbnQgaW5kZXhfYnVsa19jaGVja2luKHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJICAgICAgIGludCBmZCwgc2l6ZV90IHNpemUsIGVudW0gb2JqZWN0X3R5cGUgdHlwZSwKKwkJICAgICAgIGNvbnN0IGNoYXIgKnBhdGgsIHVuc2lnbmVkIGZsYWdzKTsKIAotZXh0ZXJuIHZvaWQgcGx1Z19idWxrX2NoZWNraW4odm9pZCk7Ci1leHRlcm4gdm9pZCB1bnBsdWdfYnVsa19jaGVja2luKHZvaWQpOwordm9pZCBwbHVnX2J1bGtfY2hlY2tpbih2b2lkKTsKK3ZvaWQgdW5wbHVnX2J1bGtfY2hlY2tpbih2b2lkKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9idW5kbGUuYyBiL2J1bmRsZS5jCmluZGV4IDg4YzNlMTYuLjk5NDM5ZTAgMTAwNjQ0Ci0tLSBhL2J1bmRsZS5jCisrKyBiL2J1bmRsZS5jCkBAIC0xMjcsNyArMTI3LDkgQEAKIC8qIFJlbWVtYmVyIHRvIHVwZGF0ZSBvYmplY3QgZmxhZyBhbGxvY2F0aW9uIGluIG9iamVjdC5oICovCiAjZGVmaW5lIFBSRVJFUV9NQVJLICgxdTw8MTYpCiAKLWludCB2ZXJpZnlfYnVuZGxlKHN0cnVjdCBidW5kbGVfaGVhZGVyICpoZWFkZXIsIGludCB2ZXJib3NlKQoraW50IHZlcmlmeV9idW5kbGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCSAgc3RydWN0IGJ1bmRsZV9oZWFkZXIgKmhlYWRlciwKKwkJICBpbnQgdmVyYm9zZSkKIHsKIAkvKgogCSAqIERvIGZhc3QgY2hlY2ssIHRoZW4gaWYgYW55IHByZXJlcXMgYXJlIG1pc3NpbmcgdGhlbiBnbyBsaW5lIGJ5IGxpbmUKQEAgLTE0MCwxMCArMTQyLDEzIEBACiAJaW50IGksIHJldCA9IDAsIHJlcV9ucjsKIAljb25zdCBjaGFyICptZXNzYWdlID0gXygiUmVwb3NpdG9yeSBsYWNrcyB0aGVzZSBwcmVyZXF1aXNpdGUgY29tbWl0czoiKTsKIAotCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksICZyZXZzLCBOVUxMKTsKKwlpZiAoIXIgfHwgIXItPm9iamVjdHMgfHwgIXItPm9iamVjdHMtPm9kYikKKwkJcmV0dXJuIGVycm9yKF8oIm5lZWQgYSByZXBvc2l0b3J5IHRvIHZlcmlmeSBhIGJ1bmRsZSIpKTsKKworCXJlcG9faW5pdF9yZXZpc2lvbnMociwgJnJldnMsIE5VTEwpOwogCWZvciAoaSA9IDA7IGkgPCBwLT5ucjsgaSsrKSB7CiAJCXN0cnVjdCByZWZfbGlzdF9lbnRyeSAqZSA9IHAtPmxpc3QgKyBpOwotCQlzdHJ1Y3Qgb2JqZWN0ICpvID0gcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCAmZS0+b2lkKTsKKwkJc3RydWN0IG9iamVjdCAqbyA9IHBhcnNlX29iamVjdChyLCAmZS0+b2lkKTsKIAkJaWYgKG8pIHsKIAkJCW8tPmZsYWdzIHw9IFBSRVJFUV9NQVJLOwogCQkJYWRkX3BlbmRpbmdfb2JqZWN0KCZyZXZzLCBvLCBlLT5uYW1lKTsKQEAgLTE2OCw3ICsxNzMsNyBAQAogCiAJZm9yIChpID0gMDsgaSA8IHAtPm5yOyBpKyspIHsKIAkJc3RydWN0IHJlZl9saXN0X2VudHJ5ICplID0gcC0+bGlzdCArIGk7Ci0JCXN0cnVjdCBvYmplY3QgKm8gPSBwYXJzZV9vYmplY3QodGhlX3JlcG9zaXRvcnksICZlLT5vaWQpOworCQlzdHJ1Y3Qgb2JqZWN0ICpvID0gcGFyc2Vfb2JqZWN0KHIsICZlLT5vaWQpOwogCQlhc3NlcnQobyk7IC8qIG90aGVyd2lzZSB3ZSdkIGhhdmUgcmV0dXJuZWQgZWFybHkgKi8KIAkJaWYgKG8tPmZsYWdzICYgU0hPV04pCiAJCQljb250aW51ZTsKQEAgLTE4MCw3ICsxODUsNyBAQAogCS8qIENsZWFuIHVwIG9iamVjdHMgdXNlZCwgYXMgdGhleSB3aWxsIGJlIHJldXNlZC4gKi8KIAlmb3IgKGkgPSAwOyBpIDwgcC0+bnI7IGkrKykgewogCQlzdHJ1Y3QgcmVmX2xpc3RfZW50cnkgKmUgPSBwLT5saXN0ICsgaTsKLQkJY29tbWl0ID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfZ2VudGx5KHRoZV9yZXBvc2l0b3J5LCAmZS0+b2lkLCAxKTsKKwkJY29tbWl0ID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfZ2VudGx5KHIsICZlLT5vaWQsIDEpOwogCQlpZiAoY29tbWl0KQogCQkJY2xlYXJfY29tbWl0X21hcmtzKGNvbW1pdCwgQUxMX1JFVl9GTEFHUyk7CiAJfQpAQCAtMjQ0LDE1ICsyNDksMTYgQEAKIAogCiAvKiBXcml0ZSB0aGUgcGFjayBkYXRhIHRvIGJ1bmRsZV9mZCAqLwotc3RhdGljIGludCB3cml0ZV9wYWNrX2RhdGEoaW50IGJ1bmRsZV9mZCwgc3RydWN0IHJldl9pbmZvICpyZXZzKQorc3RhdGljIGludCB3cml0ZV9wYWNrX2RhdGEoaW50IGJ1bmRsZV9mZCwgc3RydWN0IHJldl9pbmZvICpyZXZzLCBzdHJ1Y3QgYXJndl9hcnJheSAqcGFja19vcHRpb25zKQogewogCXN0cnVjdCBjaGlsZF9wcm9jZXNzIHBhY2tfb2JqZWN0cyA9IENISUxEX1BST0NFU1NfSU5JVDsKIAlpbnQgaTsKIAogCWFyZ3ZfYXJyYXlfcHVzaGwoJnBhY2tfb2JqZWN0cy5hcmdzLAotCQkJICJwYWNrLW9iamVjdHMiLCAiLS1hbGwtcHJvZ3Jlc3MtaW1wbGllZCIsCisJCQkgInBhY2stb2JqZWN0cyIsCiAJCQkgIi0tc3Rkb3V0IiwgIi0tdGhpbiIsICItLWRlbHRhLWJhc2Utb2Zmc2V0IiwKIAkJCSBOVUxMKTsKKwlhcmd2X2FycmF5X3B1c2h2KCZwYWNrX29iamVjdHMuYXJncywgcGFja19vcHRpb25zLT5hcmd2KTsKIAlwYWNrX29iamVjdHMuaW4gPSAtMTsKIAlwYWNrX29iamVjdHMub3V0ID0gYnVuZGxlX2ZkOwogCXBhY2tfb2JqZWN0cy5naXRfY21kID0gMTsKQEAgLTI3Nyw3ICsyODMsNyBAQAogCQlzdHJ1Y3Qgb2JqZWN0ICpvYmplY3QgPSByZXZzLT5wZW5kaW5nLm9iamVjdHNbaV0uaXRlbTsKIAkJaWYgKG9iamVjdC0+ZmxhZ3MgJiBVTklOVEVSRVNUSU5HKQogCQkJd3JpdGVfb3JfZGllKHBhY2tfb2JqZWN0cy5pbiwgIl4iLCAxKTsKLQkJd3JpdGVfb3JfZGllKHBhY2tfb2JqZWN0cy5pbiwgb2lkX3RvX2hleCgmb2JqZWN0LT5vaWQpLCBHSVRfU0hBMV9IRVhTWik7CisJCXdyaXRlX29yX2RpZShwYWNrX29iamVjdHMuaW4sIG9pZF90b19oZXgoJm9iamVjdC0+b2lkKSwgdGhlX2hhc2hfYWxnby0+aGV4c3opOwogCQl3cml0ZV9vcl9kaWUocGFja19vYmplY3RzLmluLCAiXG4iLCAxKTsKIAl9CiAJY2xvc2UocGFja19vYmplY3RzLmluKTsKQEAgLTM4OSw4ICszOTUsNyBAQAogCQkJICogaW4gdGVybXMgb2YgYSB0YWcgKGUuZy4gdjIuMCBmcm9tIHRoZSByYW5nZQogCQkJICogInYxLjAuLnYyLjAiKT8KIAkJCSAqLwotCQkJc3RydWN0IGNvbW1pdCAqb25lID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2UodGhlX3JlcG9zaXRvcnksCi0JCQkJCQkJCSAgICAgJm9pZCk7CisJCQlzdHJ1Y3QgY29tbWl0ICpvbmUgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZShyZXZzLT5yZXBvLCAmb2lkKTsKIAkJCXN0cnVjdCBvYmplY3QgKm9iajsKIAogCQkJaWYgKGUtPml0ZW0gPT0gJihvbmUtPm9iamVjdCkpIHsKQEAgLTQxMCw3ICs0MTUsNyBAQAogCQl9CiAKIAkJcmVmX2NvdW50Kys7Ci0JCXdyaXRlX29yX2RpZShidW5kbGVfZmQsIG9pZF90b19oZXgoJmUtPml0ZW0tPm9pZCksIDQwKTsKKwkJd3JpdGVfb3JfZGllKGJ1bmRsZV9mZCwgb2lkX3RvX2hleCgmZS0+aXRlbS0+b2lkKSwgdGhlX2hhc2hfYWxnby0+aGV4c3opOwogCQl3cml0ZV9vcl9kaWUoYnVuZGxlX2ZkLCAiICIsIDEpOwogCQl3cml0ZV9vcl9kaWUoYnVuZGxlX2ZkLCBkaXNwbGF5X3JlZiwgc3RybGVuKGRpc3BsYXlfcmVmKSk7CiAJCXdyaXRlX29yX2RpZShidW5kbGVfZmQsICJcbiIsIDEpOwpAQCAtNDIzLDggKzQyOCw4IEBACiAJcmV0dXJuIHJlZl9jb3VudDsKIH0KIAotaW50IGNyZWF0ZV9idW5kbGUoc3RydWN0IGJ1bmRsZV9oZWFkZXIgKmhlYWRlciwgY29uc3QgY2hhciAqcGF0aCwKLQkJICBpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpCitpbnQgY3JlYXRlX2J1bmRsZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqcGF0aCwKKwkJICBpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIHN0cnVjdCBhcmd2X2FycmF5ICpwYWNrX29wdGlvbnMpCiB7CiAJc3RydWN0IGxvY2tfZmlsZSBsb2NrID0gTE9DS19JTklUOwogCWludCBidW5kbGVfZmQgPSAtMTsKQEAgLTQ0NCw3ICs0NDksNyBAQAogCiAJLyogaW5pdCByZXZzIHRvIGxpc3Qgb2JqZWN0cyBmb3IgcGFjay1vYmplY3RzIGxhdGVyICovCiAJc2F2ZV9jb21taXRfYnVmZmVyID0gMDsKLQlyZXBvX2luaXRfcmV2aXNpb25zKHRoZV9yZXBvc2l0b3J5LCAmcmV2cywgTlVMTCk7CisJcmVwb19pbml0X3JldmlzaW9ucyhyLCAmcmV2cywgTlVMTCk7CiAKIAkvKiB3cml0ZSBwcmVyZXF1aXNpdGVzICovCiAJaWYgKGNvbXB1dGVfYW5kX3dyaXRlX3ByZXJlcXVpc2l0ZXMoYnVuZGxlX2ZkLCAmcmV2cywgYXJnYywgYXJndikpCkBAIC00NjYsNyArNDcxLDcgQEAKIAkJZ290byBlcnI7CiAKIAkvKiB3cml0ZSBwYWNrICovCi0JaWYgKHdyaXRlX3BhY2tfZGF0YShidW5kbGVfZmQsICZyZXZzKSkKKwlpZiAod3JpdGVfcGFja19kYXRhKGJ1bmRsZV9mZCwgJnJldnMsIHBhY2tfb3B0aW9ucykpCiAJCWdvdG8gZXJyOwogCiAJaWYgKCFidW5kbGVfdG9fc3Rkb3V0KSB7CkBAIC00NzksNyArNDg0LDggQEAKIAlyZXR1cm4gLTE7CiB9CiAKLWludCB1bmJ1bmRsZShzdHJ1Y3QgYnVuZGxlX2hlYWRlciAqaGVhZGVyLCBpbnQgYnVuZGxlX2ZkLCBpbnQgZmxhZ3MpCitpbnQgdW5idW5kbGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBidW5kbGVfaGVhZGVyICpoZWFkZXIsCisJICAgICBpbnQgYnVuZGxlX2ZkLCBpbnQgZmxhZ3MpCiB7CiAJY29uc3QgY2hhciAqYXJndl9pbmRleF9wYWNrW10gPSB7ImluZGV4LXBhY2siLAogCQkJCQkgIi0tZml4LXRoaW4iLCAiLS1zdGRpbiIsIE5VTEwsIE5VTEx9OwpAQCAtNDg4LDcgKzQ5NCw3IEBACiAJaWYgKGZsYWdzICYgQlVORExFX1ZFUkJPU0UpCiAJCWFyZ3ZfaW5kZXhfcGFja1szXSA9ICItdiI7CiAKLQlpZiAodmVyaWZ5X2J1bmRsZShoZWFkZXIsIDApKQorCWlmICh2ZXJpZnlfYnVuZGxlKHIsIGhlYWRlciwgMCkpCiAJCXJldHVybiAtMTsKIAlpcC5hcmd2ID0gYXJndl9pbmRleF9wYWNrOwogCWlwLmluID0gYnVuZGxlX2ZkOwpkaWZmIC0tZ2l0IGEvYnVuZGxlLmggYi9idW5kbGUuaAppbmRleCBlOWE0Y2I2Li5jZWFiMGM3IDEwMDY0NAotLS0gYS9idW5kbGUuaAorKysgYi9idW5kbGUuaApAQCAtMSw2ICsxLDcgQEAKICNpZm5kZWYgQlVORExFX0gKICNkZWZpbmUgQlVORExFX0gKIAorI2luY2x1ZGUgImFyZ3YtYXJyYXkuaCIKICNpbmNsdWRlICJjYWNoZS5oIgogCiBzdHJ1Y3QgcmVmX2xpc3QgewpAQCAtMTgsMTEgKzE5LDEyIEBACiAKIGludCBpc19idW5kbGUoY29uc3QgY2hhciAqcGF0aCwgaW50IHF1aWV0KTsKIGludCByZWFkX2J1bmRsZV9oZWFkZXIoY29uc3QgY2hhciAqcGF0aCwgc3RydWN0IGJ1bmRsZV9oZWFkZXIgKmhlYWRlcik7Ci1pbnQgY3JlYXRlX2J1bmRsZShzdHJ1Y3QgYnVuZGxlX2hlYWRlciAqaGVhZGVyLCBjb25zdCBjaGFyICpwYXRoLAotCQlpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwotaW50IHZlcmlmeV9idW5kbGUoc3RydWN0IGJ1bmRsZV9oZWFkZXIgKmhlYWRlciwgaW50IHZlcmJvc2UpOworaW50IGNyZWF0ZV9idW5kbGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKnBhdGgsCisJCSAgaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBzdHJ1Y3QgYXJndl9hcnJheSAqcGFja19vcHRpb25zKTsKK2ludCB2ZXJpZnlfYnVuZGxlKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgYnVuZGxlX2hlYWRlciAqaGVhZGVyLCBpbnQgdmVyYm9zZSk7CiAjZGVmaW5lIEJVTkRMRV9WRVJCT1NFIDEKLWludCB1bmJ1bmRsZShzdHJ1Y3QgYnVuZGxlX2hlYWRlciAqaGVhZGVyLCBpbnQgYnVuZGxlX2ZkLCBpbnQgZmxhZ3MpOworaW50IHVuYnVuZGxlKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgYnVuZGxlX2hlYWRlciAqaGVhZGVyLAorCSAgICAgaW50IGJ1bmRsZV9mZCwgaW50IGZsYWdzKTsKIGludCBsaXN0X2J1bmRsZV9yZWZzKHN0cnVjdCBidW5kbGVfaGVhZGVyICpoZWFkZXIsCiAJCWludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiAKZGlmZiAtLWdpdCBhL2NhY2hlLXRyZWUuYyBiL2NhY2hlLXRyZWUuYwppbmRleCA5ZDQ1NGQyLi5hNTM3YTgwIDEwMDY0NAotLS0gYS9jYWNoZS10cmVlLmMKKysrIGIvY2FjaGUtdHJlZS5jCkBAIC01LDkgKzUsMTAgQEAKICNpbmNsdWRlICJjYWNoZS10cmVlLmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCiAjaW5jbHVkZSAicmVwbGFjZS1vYmplY3QuaCIKKyNpbmNsdWRlICJwcm9taXNvci1yZW1vdGUuaCIKIAotI2lmbmRlZiBERUJVRwotI2RlZmluZSBERUJVRyAwCisjaWZuZGVmIERFQlVHX0NBQ0hFX1RSRUUKKyNkZWZpbmUgREVCVUdfQ0FDSEVfVFJFRSAwCiAjZW5kaWYKIAogc3RydWN0IGNhY2hlX3RyZWUgKmNhY2hlX3RyZWUodm9pZCkKQEAgLTExMSw3ICsxMTIsNyBAQAogCWludCBuYW1lbGVuOwogCXN0cnVjdCBjYWNoZV90cmVlX3N1YiAqZG93bjsKIAotI2lmIERFQlVHCisjaWYgREVCVUdfQ0FDSEVfVFJFRQogCWZwcmludGYoc3RkZXJyLCAiY2FjaGUtdHJlZSBpbnZhbGlkYXRlIDwlcz5cbiIsIHBhdGgpOwogI2VuZGlmCiAKQEAgLTIyNSw3ICsyMjYsNyBAQAogCWludCBpOwogCWlmICghaXQpCiAJCXJldHVybiAwOwotCWlmIChpdC0+ZW50cnlfY291bnQgPCAwIHx8ICFoYXNfc2hhMV9maWxlKGl0LT5vaWQuaGFzaCkpCisJaWYgKGl0LT5lbnRyeV9jb3VudCA8IDAgfHwgIWhhc19vYmplY3RfZmlsZSgmaXQtPm9pZCkpCiAJCXJldHVybiAwOwogCWZvciAoaSA9IDA7IGkgPCBpdC0+c3VidHJlZV9ucjsgaSsrKSB7CiAJCWlmICghY2FjaGVfdHJlZV9mdWxseV92YWxpZChpdC0+ZG93bltpXS0+Y2FjaGVfdHJlZSkpCkBAIC0yNTMsNyArMjU0LDcgQEAKIAogCSpza2lwX2NvdW50ID0gMDsKIAotCWlmICgwIDw9IGl0LT5lbnRyeV9jb3VudCAmJiBoYXNfc2hhMV9maWxlKGl0LT5vaWQuaGFzaCkpCisJaWYgKDAgPD0gaXQtPmVudHJ5X2NvdW50ICYmIGhhc19vYmplY3RfZmlsZSgmaXQtPm9pZCkpCiAJCXJldHVybiBpdC0+ZW50cnlfY291bnQ7CiAKIAkvKgpAQCAtMzU3LDcgKzM1OCw3IEBACiAJCX0KIAogCQljZV9taXNzaW5nX29rID0gbW9kZSA9PSBTX0lGR0lUTElOSyB8fCBtaXNzaW5nX29rIHx8Ci0JCQkocmVwb3NpdG9yeV9mb3JtYXRfcGFydGlhbF9jbG9uZSAmJgorCQkJKGhhc19wcm9taXNvcl9yZW1vdGUoKSAmJgogCQkJIGNlX3NraXBfd29ya3RyZWUoY2UpKTsKIAkJaWYgKGlzX251bGxfb2lkKG9pZCkgfHwKIAkJICAgICghY2VfbWlzc2luZ19vayAmJiAhaGFzX29iamVjdF9maWxlKG9pZCkpKSB7CkBAIC0zOTgsNyArMzk5LDcgQEAKIAkJc3RyYnVmX2FkZGYoJmJ1ZmZlciwgIiVvICUuKnMlYyIsIG1vZGUsIGVudGxlbiwgcGF0aCArIGJhc2VsZW4sICdcMCcpOwogCQlzdHJidWZfYWRkKCZidWZmZXIsIG9pZC0+aGFzaCwgdGhlX2hhc2hfYWxnby0+cmF3c3opOwogCi0jaWYgREVCVUcKKyNpZiBERUJVR19DQUNIRV9UUkVFCiAJCWZwcmludGYoc3RkZXJyLCAiY2FjaGUtdHJlZSB1cGRhdGUtb25lICVvICUuKnNcbiIsCiAJCQltb2RlLCBlbnRsZW4sIHBhdGggKyBiYXNlbGVuKTsKICNlbmRpZgpAQCAtNDA2LDEzICs0MDcsMTUgQEAKIAogCWlmIChyZXBhaXIpIHsKIAkJc3RydWN0IG9iamVjdF9pZCBvaWQ7Ci0JCWhhc2hfb2JqZWN0X2ZpbGUoYnVmZmVyLmJ1ZiwgYnVmZmVyLmxlbiwgdHJlZV90eXBlLCAmb2lkKTsKLQkJaWYgKGhhc19vYmplY3RfZmlsZSgmb2lkKSkKKwkJaGFzaF9vYmplY3RfZmlsZSh0aGVfaGFzaF9hbGdvLCBidWZmZXIuYnVmLCBidWZmZXIubGVuLAorCQkJCSB0cmVlX3R5cGUsICZvaWQpOworCQlpZiAoaGFzX29iamVjdF9maWxlX3dpdGhfZmxhZ3MoJm9pZCwgT0JKRUNUX0lORk9fU0tJUF9GRVRDSF9PQkpFQ1QpKQogCQkJb2lkY3B5KCZpdC0+b2lkLCAmb2lkKTsKIAkJZWxzZQogCQkJdG9faW52YWxpZGF0ZSA9IDE7CiAJfSBlbHNlIGlmIChkcnlydW4pIHsKLQkJaGFzaF9vYmplY3RfZmlsZShidWZmZXIuYnVmLCBidWZmZXIubGVuLCB0cmVlX3R5cGUsICZpdC0+b2lkKTsKKwkJaGFzaF9vYmplY3RfZmlsZSh0aGVfaGFzaF9hbGdvLCBidWZmZXIuYnVmLCBidWZmZXIubGVuLAorCQkJCSB0cmVlX3R5cGUsICZpdC0+b2lkKTsKIAl9IGVsc2UgaWYgKHdyaXRlX29iamVjdF9maWxlKGJ1ZmZlci5idWYsIGJ1ZmZlci5sZW4sIHRyZWVfdHlwZSwKIAkJCQkgICAgICZpdC0+b2lkKSkgewogCQlzdHJidWZfcmVsZWFzZSgmYnVmZmVyKTsKQEAgLTQyMSw3ICs0MjQsNyBAQAogCiAJc3RyYnVmX3JlbGVhc2UoJmJ1ZmZlcik7CiAJaXQtPmVudHJ5X2NvdW50ID0gdG9faW52YWxpZGF0ZSA/IC0xIDogaSAtICpza2lwX2NvdW50OwotI2lmIERFQlVHCisjaWYgREVCVUdfQ0FDSEVfVFJFRQogCWZwcmludGYoc3RkZXJyLCAiY2FjaGUtdHJlZSB1cGRhdGUtb25lICglZCBlbnQsICVkIHN1YnRyZWUpICVzXG4iLAogCQlpdC0+ZW50cnlfY291bnQsIGl0LT5zdWJ0cmVlX25yLAogCQlvaWRfdG9faGV4KCZpdC0+b2lkKSk7CkBAIC00NDgsNyArNDUxLDcgQEAKIH0KIAogc3RhdGljIHZvaWQgd3JpdGVfb25lKHN0cnVjdCBzdHJidWYgKmJ1ZmZlciwgc3RydWN0IGNhY2hlX3RyZWUgKml0LAotICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnBhdGgsIGludCBwYXRobGVuKQorCQkgICAgICBjb25zdCBjaGFyICpwYXRoLCBpbnQgcGF0aGxlbikKIHsKIAlpbnQgaTsKIApAQCAtNDYyLDcgKzQ2NSw3IEBACiAJc3RyYnVmX2FkZChidWZmZXIsIHBhdGgsIHBhdGhsZW4pOwogCXN0cmJ1Zl9hZGRmKGJ1ZmZlciwgIiVjJWQgJWRcbiIsIDAsIGl0LT5lbnRyeV9jb3VudCwgaXQtPnN1YnRyZWVfbnIpOwogCi0jaWYgREVCVUcKKyNpZiBERUJVR19DQUNIRV9UUkVFCiAJaWYgKDAgPD0gaXQtPmVudHJ5X2NvdW50KQogCQlmcHJpbnRmKHN0ZGVyciwgImNhY2hlLXRyZWUgPCUuKnM+ICglZCBlbnQsICVkIHN1YnRyZWUpICVzXG4iLAogCQkJcGF0aGxlbiwgcGF0aCwgaXQtPmVudHJ5X2NvdW50LCBpdC0+c3VidHJlZV9uciwKQEAgLTUzNiw3ICs1MzksNyBAQAogCQlzaXplIC09IHJhd3N6OwogCX0KIAotI2lmIERFQlVHCisjaWYgREVCVUdfQ0FDSEVfVFJFRQogCWlmICgwIDw9IGl0LT5lbnRyeV9jb3VudCkKIAkJZnByaW50ZihzdGRlcnIsICJjYWNoZS10cmVlIDwlcz4gKCVkIGVudCwgJWQgc3VidHJlZSkgJXNcbiIsCiAJCQkqYnVmZmVyLCBpdC0+ZW50cnlfY291bnQsIHN1YnRyZWVfbnIsCkBAIC02MDgsMTEgKzYxMSw2NiBAQAogCXJldHVybiBpdDsKIH0KIAorc3RhdGljIGludCB3cml0ZV9pbmRleF9hc190cmVlX2ludGVybmFsKHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCQkJc3RydWN0IGluZGV4X3N0YXRlICppbmRleF9zdGF0ZSwKKwkJCQkJaW50IGNhY2hlX3RyZWVfdmFsaWQsCisJCQkJCWludCBmbGFncywKKwkJCQkJY29uc3QgY2hhciAqcHJlZml4KQoreworCWlmIChmbGFncyAmIFdSSVRFX1RSRUVfSUdOT1JFX0NBQ0hFX1RSRUUpIHsKKwkJY2FjaGVfdHJlZV9mcmVlKCZpbmRleF9zdGF0ZS0+Y2FjaGVfdHJlZSk7CisJCWNhY2hlX3RyZWVfdmFsaWQgPSAwOworCX0KKworCWlmICghaW5kZXhfc3RhdGUtPmNhY2hlX3RyZWUpCisJCWluZGV4X3N0YXRlLT5jYWNoZV90cmVlID0gY2FjaGVfdHJlZSgpOworCisJaWYgKCFjYWNoZV90cmVlX3ZhbGlkICYmIGNhY2hlX3RyZWVfdXBkYXRlKGluZGV4X3N0YXRlLCBmbGFncykgPCAwKQorCQlyZXR1cm4gV1JJVEVfVFJFRV9VTk1FUkdFRF9JTkRFWDsKKworCWlmIChwcmVmaXgpIHsKKwkJc3RydWN0IGNhY2hlX3RyZWUgKnN1YnRyZWU7CisJCXN1YnRyZWUgPSBjYWNoZV90cmVlX2ZpbmQoaW5kZXhfc3RhdGUtPmNhY2hlX3RyZWUsIHByZWZpeCk7CisJCWlmICghc3VidHJlZSkKKwkJCXJldHVybiBXUklURV9UUkVFX1BSRUZJWF9FUlJPUjsKKwkJb2lkY3B5KG9pZCwgJnN1YnRyZWUtPm9pZCk7CisJfQorCWVsc2UKKwkJb2lkY3B5KG9pZCwgJmluZGV4X3N0YXRlLT5jYWNoZV90cmVlLT5vaWQpOworCisJcmV0dXJuIDA7Cit9CisKK3N0cnVjdCB0cmVlKiB3cml0ZV9pbl9jb3JlX2luZGV4X2FzX3RyZWUoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8pIHsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIG87CisJaW50IHdhc192YWxpZCwgcmV0OworCisJc3RydWN0IGluZGV4X3N0YXRlICppbmRleF9zdGF0ZQk9IHJlcG8tPmluZGV4OworCXdhc192YWxpZCA9IGluZGV4X3N0YXRlLT5jYWNoZV90cmVlICYmCisJCSAgICBjYWNoZV90cmVlX2Z1bGx5X3ZhbGlkKGluZGV4X3N0YXRlLT5jYWNoZV90cmVlKTsKKworCXJldCA9IHdyaXRlX2luZGV4X2FzX3RyZWVfaW50ZXJuYWwoJm8sIGluZGV4X3N0YXRlLCB3YXNfdmFsaWQsIDAsIE5VTEwpOworCWlmIChyZXQgPT0gV1JJVEVfVFJFRV9VTk1FUkdFRF9JTkRFWCkgeworCQlpbnQgaTsKKwkJZnByaW50ZihzdGRlcnIsICJCVUc6IFRoZXJlIGFyZSB1bm1lcmdlZCBpbmRleCBlbnRyaWVzOlxuIik7CisJCWZvciAoaSA9IDA7IGkgPCBpbmRleF9zdGF0ZS0+Y2FjaGVfbnI7IGkrKykgeworCQkJY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSA9IGluZGV4X3N0YXRlLT5jYWNoZVtpXTsKKwkJCWlmIChjZV9zdGFnZShjZSkpCisJCQkJZnByaW50ZihzdGRlcnIsICJCVUc6ICVkICUuKnNcbiIsIGNlX3N0YWdlKGNlKSwKKwkJCQkJKGludCljZV9uYW1lbGVuKGNlKSwgY2UtPm5hbWUpOworCQl9CisJCUJVRygidW5tZXJnZWQgaW5kZXggZW50cmllcyB3aGVuIHdyaXRpbmcgaW5tZW1vcnkgaW5kZXgiKTsKKwl9CisKKwlyZXR1cm4gbG9va3VwX3RyZWUocmVwbywgJmluZGV4X3N0YXRlLT5jYWNoZV90cmVlLT5vaWQpOworfQorCisKIGludCB3cml0ZV9pbmRleF9hc190cmVlKHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgc3RydWN0IGluZGV4X3N0YXRlICppbmRleF9zdGF0ZSwgY29uc3QgY2hhciAqaW5kZXhfcGF0aCwgaW50IGZsYWdzLCBjb25zdCBjaGFyICpwcmVmaXgpCiB7CiAJaW50IGVudHJpZXMsIHdhc192YWxpZDsKIAlzdHJ1Y3QgbG9ja19maWxlIGxvY2tfZmlsZSA9IExPQ0tfSU5JVDsKLQlpbnQgcmV0ID0gMDsKKwlpbnQgcmV0OwogCiAJaG9sZF9sb2NrX2ZpbGVfZm9yX3VwZGF0ZSgmbG9ja19maWxlLCBpbmRleF9wYXRoLCBMT0NLX0RJRV9PTl9FUlJPUik7CiAKQEAgLTYyMSwxOCArNjc5LDE0IEBACiAJCXJldCA9IFdSSVRFX1RSRUVfVU5SRUFEQUJMRV9JTkRFWDsKIAkJZ290byBvdXQ7CiAJfQotCWlmIChmbGFncyAmIFdSSVRFX1RSRUVfSUdOT1JFX0NBQ0hFX1RSRUUpCi0JCWNhY2hlX3RyZWVfZnJlZSgmaW5kZXhfc3RhdGUtPmNhY2hlX3RyZWUpOwogCi0JaWYgKCFpbmRleF9zdGF0ZS0+Y2FjaGVfdHJlZSkKLQkJaW5kZXhfc3RhdGUtPmNhY2hlX3RyZWUgPSBjYWNoZV90cmVlKCk7CisJd2FzX3ZhbGlkID0gIShmbGFncyAmIFdSSVRFX1RSRUVfSUdOT1JFX0NBQ0hFX1RSRUUpICYmCisJCSAgICBpbmRleF9zdGF0ZS0+Y2FjaGVfdHJlZSAmJgorCQkgICAgY2FjaGVfdHJlZV9mdWxseV92YWxpZChpbmRleF9zdGF0ZS0+Y2FjaGVfdHJlZSk7CiAKLQl3YXNfdmFsaWQgPSBjYWNoZV90cmVlX2Z1bGx5X3ZhbGlkKGluZGV4X3N0YXRlLT5jYWNoZV90cmVlKTsKLQlpZiAoIXdhc192YWxpZCkgewotCQlpZiAoY2FjaGVfdHJlZV91cGRhdGUoaW5kZXhfc3RhdGUsIGZsYWdzKSA8IDApIHsKLQkJCXJldCA9IFdSSVRFX1RSRUVfVU5NRVJHRURfSU5ERVg7Ci0JCQlnb3RvIG91dDsKLQkJfQorCXJldCA9IHdyaXRlX2luZGV4X2FzX3RyZWVfaW50ZXJuYWwob2lkLCBpbmRleF9zdGF0ZSwgd2FzX3ZhbGlkLCBmbGFncywKKwkJCQkJICAgcHJlZml4KTsKKwlpZiAoIXJldCAmJiAhd2FzX3ZhbGlkKSB7CiAJCXdyaXRlX2xvY2tlZF9pbmRleChpbmRleF9zdGF0ZSwgJmxvY2tfZmlsZSwgQ09NTUlUX0xPQ0spOwogCQkvKiBOb3QgYmVpbmcgYWJsZSB0byB3cml0ZSBpcyBmaW5lIC0tIHdlIGFyZSBvbmx5IGludGVyZXN0ZWQKIAkJICogaW4gdXBkYXRpbmcgdGhlIGNhY2hlLXRyZWUgcGFydCwgYW5kIGlmIHRoZSBuZXh0IGNhbGxlcgpAQCAtNjQyLDI0ICs2OTYsMTQgQEAKIAkJICovCiAJfQogCi0JaWYgKHByZWZpeCkgewotCQlzdHJ1Y3QgY2FjaGVfdHJlZSAqc3VidHJlZTsKLQkJc3VidHJlZSA9IGNhY2hlX3RyZWVfZmluZChpbmRleF9zdGF0ZS0+Y2FjaGVfdHJlZSwgcHJlZml4KTsKLQkJaWYgKCFzdWJ0cmVlKSB7Ci0JCQlyZXQgPSBXUklURV9UUkVFX1BSRUZJWF9FUlJPUjsKLQkJCWdvdG8gb3V0OwotCQl9Ci0JCW9pZGNweShvaWQsICZzdWJ0cmVlLT5vaWQpOwotCX0KLQllbHNlCi0JCW9pZGNweShvaWQsICZpbmRleF9zdGF0ZS0+Y2FjaGVfdHJlZS0+b2lkKTsKLQogb3V0OgogCXJvbGxiYWNrX2xvY2tfZmlsZSgmbG9ja19maWxlKTsKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgdm9pZCBwcmltZV9jYWNoZV90cmVlX3JlYyhzdHJ1Y3QgY2FjaGVfdHJlZSAqaXQsIHN0cnVjdCB0cmVlICp0cmVlKQorc3RhdGljIHZvaWQgcHJpbWVfY2FjaGVfdHJlZV9yZWMoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJIHN0cnVjdCBjYWNoZV90cmVlICppdCwKKwkJCQkgc3RydWN0IHRyZWUgKnRyZWUpCiB7CiAJc3RydWN0IHRyZWVfZGVzYyBkZXNjOwogCXN0cnVjdCBuYW1lX2VudHJ5IGVudHJ5OwpAQCAtNjczLDI0ICs3MTcsMjUgQEAKIAkJCWNudCsrOwogCQllbHNlIHsKIAkJCXN0cnVjdCBjYWNoZV90cmVlX3N1YiAqc3ViOwotCQkJc3RydWN0IHRyZWUgKnN1YnRyZWUgPSBsb29rdXBfdHJlZSh0aGVfcmVwb3NpdG9yeSwKLQkJCQkJCQkgICBlbnRyeS5vaWQpOworCQkJc3RydWN0IHRyZWUgKnN1YnRyZWUgPSBsb29rdXBfdHJlZShyLCAmZW50cnkub2lkKTsKIAkJCWlmICghc3VidHJlZS0+b2JqZWN0LnBhcnNlZCkKIAkJCQlwYXJzZV90cmVlKHN1YnRyZWUpOwogCQkJc3ViID0gY2FjaGVfdHJlZV9zdWIoaXQsIGVudHJ5LnBhdGgpOwogCQkJc3ViLT5jYWNoZV90cmVlID0gY2FjaGVfdHJlZSgpOwotCQkJcHJpbWVfY2FjaGVfdHJlZV9yZWMoc3ViLT5jYWNoZV90cmVlLCBzdWJ0cmVlKTsKKwkJCXByaW1lX2NhY2hlX3RyZWVfcmVjKHIsIHN1Yi0+Y2FjaGVfdHJlZSwgc3VidHJlZSk7CiAJCQljbnQgKz0gc3ViLT5jYWNoZV90cmVlLT5lbnRyeV9jb3VudDsKIAkJfQogCX0KIAlpdC0+ZW50cnlfY291bnQgPSBjbnQ7CiB9CiAKLXZvaWQgcHJpbWVfY2FjaGVfdHJlZShzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgc3RydWN0IHRyZWUgKnRyZWUpCit2b2lkIHByaW1lX2NhY2hlX3RyZWUoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCSAgICAgIHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAorCQkgICAgICBzdHJ1Y3QgdHJlZSAqdHJlZSkKIHsKIAljYWNoZV90cmVlX2ZyZWUoJmlzdGF0ZS0+Y2FjaGVfdHJlZSk7CiAJaXN0YXRlLT5jYWNoZV90cmVlID0gY2FjaGVfdHJlZSgpOwotCXByaW1lX2NhY2hlX3RyZWVfcmVjKGlzdGF0ZS0+Y2FjaGVfdHJlZSwgdHJlZSk7CisJcHJpbWVfY2FjaGVfdHJlZV9yZWMociwgaXN0YXRlLT5jYWNoZV90cmVlLCB0cmVlKTsKIAlpc3RhdGUtPmNhY2hlX2NoYW5nZWQgfD0gQ0FDSEVfVFJFRV9DSEFOR0VEOwogfQogCkBAIC03MTAsNyArNzU1LDcgQEAKIAlpZiAoIWluZm8tPnByZXYpCiAJCXJldHVybiByb290OwogCW91cl9wYXJlbnQgPSBmaW5kX2NhY2hlX3RyZWVfZnJvbV90cmF2ZXJzYWwocm9vdCwgaW5mby0+cHJldik7Ci0JcmV0dXJuIGNhY2hlX3RyZWVfZmluZChvdXJfcGFyZW50LCBpbmZvLT5uYW1lLnBhdGgpOworCXJldHVybiBjYWNoZV90cmVlX2ZpbmQob3VyX3BhcmVudCwgaW5mby0+bmFtZSk7CiB9CiAKIGludCBjYWNoZV90cmVlX21hdGNoZXNfdHJhdmVyc2FsKHN0cnVjdCBjYWNoZV90cmVlICpyb290LApAQCAtNzIxLDEyICs3NjYsMTMgQEAKIAogCWl0ID0gZmluZF9jYWNoZV90cmVlX2Zyb21fdHJhdmVyc2FsKHJvb3QsIGluZm8pOwogCWl0ID0gY2FjaGVfdHJlZV9maW5kKGl0LCBlbnQtPnBhdGgpOwotCWlmIChpdCAmJiBpdC0+ZW50cnlfY291bnQgPiAwICYmIG9pZGVxKGVudC0+b2lkLCAmaXQtPm9pZCkpCisJaWYgKGl0ICYmIGl0LT5lbnRyeV9jb3VudCA+IDAgJiYgb2lkZXEoJmVudC0+b2lkLCAmaXQtPm9pZCkpCiAJCXJldHVybiBpdC0+ZW50cnlfY291bnQ7CiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyB2b2lkIHZlcmlmeV9vbmUoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCitzdGF0aWMgdm9pZCB2ZXJpZnlfb25lKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkgICAgICAgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCiAJCSAgICAgICBzdHJ1Y3QgY2FjaGVfdHJlZSAqaXQsCiAJCSAgICAgICBzdHJ1Y3Qgc3RyYnVmICpwYXRoKQogewpAQCAtNzM2LDEzICs3ODIsMTMgQEAKIAogCWZvciAoaSA9IDA7IGkgPCBpdC0+c3VidHJlZV9ucjsgaSsrKSB7CiAJCXN0cmJ1Zl9hZGRmKHBhdGgsICIlcy8iLCBpdC0+ZG93bltpXS0+bmFtZSk7Ci0JCXZlcmlmeV9vbmUoaXN0YXRlLCBpdC0+ZG93bltpXS0+Y2FjaGVfdHJlZSwgcGF0aCk7CisJCXZlcmlmeV9vbmUociwgaXN0YXRlLCBpdC0+ZG93bltpXS0+Y2FjaGVfdHJlZSwgcGF0aCk7CiAJCXN0cmJ1Zl9zZXRsZW4ocGF0aCwgbGVuKTsKIAl9CiAKIAlpZiAoaXQtPmVudHJ5X2NvdW50IDwgMCB8fAogCSAgICAvKiBubyB2ZXJpZmljYXRpb24gb24gdGVzdHMgKHQ3MDAzKSB0aGF0IHJlcGxhY2UgdHJlZXMgKi8KLQkgICAgbG9va3VwX3JlcGxhY2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCAmaXQtPm9pZCkgIT0gJml0LT5vaWQpCisJICAgIGxvb2t1cF9yZXBsYWNlX29iamVjdChyLCAmaXQtPm9pZCkgIT0gJml0LT5vaWQpCiAJCXJldHVybjsKIAogCWlmIChwYXRoLT5sZW4pIHsKQEAgLTc4Miw5ICs4MjgsMTAgQEAKIAkJCWkrKzsKIAkJfQogCQlzdHJidWZfYWRkZigmdHJlZV9idWYsICIlbyAlLipzJWMiLCBtb2RlLCBlbnRsZW4sIG5hbWUsICdcMCcpOwotCQlzdHJidWZfYWRkKCZ0cmVlX2J1Ziwgb2lkLT5oYXNoLCB0aGVfaGFzaF9hbGdvLT5yYXdzeik7CisJCXN0cmJ1Zl9hZGQoJnRyZWVfYnVmLCBvaWQtPmhhc2gsIHItPmhhc2hfYWxnby0+cmF3c3opOwogCX0KLQloYXNoX29iamVjdF9maWxlKHRyZWVfYnVmLmJ1ZiwgdHJlZV9idWYubGVuLCB0cmVlX3R5cGUsICZuZXdfb2lkKTsKKwloYXNoX29iamVjdF9maWxlKHItPmhhc2hfYWxnbywgdHJlZV9idWYuYnVmLCB0cmVlX2J1Zi5sZW4sIHRyZWVfdHlwZSwKKwkJCSAmbmV3X29pZCk7CiAJaWYgKCFvaWRlcSgmbmV3X29pZCwgJml0LT5vaWQpKQogCQlCVUcoImNhY2hlLXRyZWUgZm9yIHBhdGggJS4qcyBkb2VzIG5vdCBtYXRjaC4gIgogCQkgICAgIkV4cGVjdGVkICVzIGdvdCAlcyIsIGxlbiwgcGF0aC0+YnVmLApAQCAtNzkzLDEyICs4NDAsMTIgQEAKIAlzdHJidWZfcmVsZWFzZSgmdHJlZV9idWYpOwogfQogCi12b2lkIGNhY2hlX3RyZWVfdmVyaWZ5KHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKQordm9pZCBjYWNoZV90cmVlX3ZlcmlmeShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpCiB7CiAJc3RydWN0IHN0cmJ1ZiBwYXRoID0gU1RSQlVGX0lOSVQ7CiAKIAlpZiAoIWlzdGF0ZS0+Y2FjaGVfdHJlZSkKIAkJcmV0dXJuOwotCXZlcmlmeV9vbmUoaXN0YXRlLCBpc3RhdGUtPmNhY2hlX3RyZWUsICZwYXRoKTsKKwl2ZXJpZnlfb25lKHIsIGlzdGF0ZSwgaXN0YXRlLT5jYWNoZV90cmVlLCAmcGF0aCk7CiAJc3RyYnVmX3JlbGVhc2UoJnBhdGgpOwogfQpkaWZmIC0tZ2l0IGEvY2FjaGUtdHJlZS5oIGIvY2FjaGUtdHJlZS5oCmluZGV4IDBhYjY3ODQuLjYzOWJmYTUgMTAwNjQ0Ci0tLSBhL2NhY2hlLXRyZWUuaAorKysgYi9jYWNoZS10cmVlLmgKQEAgLTMyLDkgKzMyLDkgQEAKIAogaW50IGNhY2hlX3RyZWVfZnVsbHlfdmFsaWQoc3RydWN0IGNhY2hlX3RyZWUgKik7CiBpbnQgY2FjaGVfdHJlZV91cGRhdGUoc3RydWN0IGluZGV4X3N0YXRlICosIGludCk7Ci12b2lkIGNhY2hlX3RyZWVfdmVyaWZ5KHN0cnVjdCBpbmRleF9zdGF0ZSAqKTsKK3ZvaWQgY2FjaGVfdHJlZV92ZXJpZnkoc3RydWN0IHJlcG9zaXRvcnkgKiwgc3RydWN0IGluZGV4X3N0YXRlICopOwogCi0vKiBiaXRtYXNrcyB0byB3cml0ZV9jYWNoZV9hc190cmVlIGZsYWdzICovCisvKiBiaXRtYXNrcyB0byB3cml0ZV9pbmRleF9hc190cmVlIGZsYWdzICovCiAjZGVmaW5lIFdSSVRFX1RSRUVfTUlTU0lOR19PSyAxCiAjZGVmaW5lIFdSSVRFX1RSRUVfSUdOT1JFX0NBQ0hFX1RSRUUgMgogI2RlZmluZSBXUklURV9UUkVFX0RSWV9SVU4gNApAQCAtNDYsMTIgKzQ2LDEzIEBACiAjZGVmaW5lIFdSSVRFX1RSRUVfVU5NRVJHRURfSU5ERVggKC0yKQogI2RlZmluZSBXUklURV9UUkVFX1BSRUZJWF9FUlJPUiAoLTMpCiAKK3N0cnVjdCB0cmVlKiB3cml0ZV9pbl9jb3JlX2luZGV4X2FzX3RyZWUoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8pOwogaW50IHdyaXRlX2luZGV4X2FzX3RyZWUoc3RydWN0IG9iamVjdF9pZCAqb2lkLCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmluZGV4X3N0YXRlLCBjb25zdCBjaGFyICppbmRleF9wYXRoLCBpbnQgZmxhZ3MsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci12b2lkIHByaW1lX2NhY2hlX3RyZWUoc3RydWN0IGluZGV4X3N0YXRlICosIHN0cnVjdCB0cmVlICopOwordm9pZCBwcmltZV9jYWNoZV90cmVlKHN0cnVjdCByZXBvc2l0b3J5ICosIHN0cnVjdCBpbmRleF9zdGF0ZSAqLCBzdHJ1Y3QgdHJlZSAqKTsKIAogaW50IGNhY2hlX3RyZWVfbWF0Y2hlc190cmF2ZXJzYWwoc3RydWN0IGNhY2hlX3RyZWUgKiwgc3RydWN0IG5hbWVfZW50cnkgKmVudCwgc3RydWN0IHRyYXZlcnNlX2luZm8gKmluZm8pOwogCi0jaWZuZGVmIE5PX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUworI2lmZGVmIFVTRV9USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKIHN0YXRpYyBpbmxpbmUgaW50IHdyaXRlX2NhY2hlX2FzX3RyZWUoc3RydWN0IG9iamVjdF9pZCAqb2lkLCBpbnQgZmxhZ3MsIGNvbnN0IGNoYXIgKnByZWZpeCkKIHsKIAlyZXR1cm4gd3JpdGVfaW5kZXhfYXNfdHJlZShvaWQsICZ0aGVfaW5kZXgsIGdldF9pbmRleF9maWxlKCksIGZsYWdzLCBwcmVmaXgpOwpkaWZmIC0tZ2l0IGEvY2FjaGUuaCBiL2NhY2hlLmgKaW5kZXggY2EzNmI0NC4uYWEzZjVjZSAxMDA2NDQKLS0tIGEvY2FjaGUuaAorKysgYi9jYWNoZS5oCkBAIC05LDYgKzksNyBAQAogI2luY2x1ZGUgImdldHRleHQuaCIKICNpbmNsdWRlICJjb252ZXJ0LmgiCiAjaW5jbHVkZSAidHJhY2UuaCIKKyNpbmNsdWRlICJ0cmFjZTIuaCIKICNpbmNsdWRlICJzdHJpbmctbGlzdC5oIgogI2luY2x1ZGUgInBhY2stcmV2aW5kZXguaCIKICNpbmNsdWRlICJoYXNoLmgiCkBAIC00MiwyMCArNDMsNiBAQAogaW50IGdpdF9kZWZsYXRlKGdpdF96c3RyZWFtICosIGludCBmbHVzaCk7CiB1bnNpZ25lZCBsb25nIGdpdF9kZWZsYXRlX2JvdW5kKGdpdF96c3RyZWFtICosIHVuc2lnbmVkIGxvbmcpOwogCi0vKiBUaGUgbGVuZ3RoIGluIGJ5dGVzIGFuZCBpbiBoZXggZGlnaXRzIG9mIGFuIG9iamVjdCBuYW1lIChTSEEtMSB2YWx1ZSkuICovCi0jZGVmaW5lIEdJVF9TSEExX1JBV1NaIDIwCi0jZGVmaW5lIEdJVF9TSEExX0hFWFNaICgyICogR0lUX1NIQTFfUkFXU1opCi0KLS8qIFRoZSBsZW5ndGggaW4gYnl0ZSBhbmQgaW4gaGV4IGRpZ2l0cyBvZiB0aGUgbGFyZ2VzdCBwb3NzaWJsZSBoYXNoIHZhbHVlLiAqLwotI2RlZmluZSBHSVRfTUFYX1JBV1NaIEdJVF9TSEExX1JBV1NaCi0jZGVmaW5lIEdJVF9NQVhfSEVYU1ogR0lUX1NIQTFfSEVYU1oKLQotc3RydWN0IG9iamVjdF9pZCB7Ci0JdW5zaWduZWQgY2hhciBoYXNoW0dJVF9NQVhfUkFXU1pdOwotfTsKLQotI2RlZmluZSB0aGVfaGFzaF9hbGdvIHRoZV9yZXBvc2l0b3J5LT5oYXNoX2FsZ28KLQogI2lmIGRlZmluZWQoRFRfVU5LTk9XTikgJiYgIWRlZmluZWQoTk9fRF9UWVBFX0lOX0RJUkVOVCkKICNkZWZpbmUgRFRZUEUoZGUpCSgoZGUpLT5kX3R5cGUpCiAjZWxzZQpAQCAtMzE3LDYgKzMwNCw3IEBACiAKIHN0cnVjdCBzcGxpdF9pbmRleDsKIHN0cnVjdCB1bnRyYWNrZWRfY2FjaGU7CitzdHJ1Y3QgcHJvZ3Jlc3M7CiAKIHN0cnVjdCBpbmRleF9zdGF0ZSB7CiAJc3RydWN0IGNhY2hlX2VudHJ5ICoqY2FjaGU7CkBAIC0zMjgsMjMgKzMxNiwyNSBAQAogCXN0cnVjdCBjYWNoZV90aW1lIHRpbWVzdGFtcDsKIAl1bnNpZ25lZCBuYW1lX2hhc2hfaW5pdGlhbGl6ZWQgOiAxLAogCQkgaW5pdGlhbGl6ZWQgOiAxLAotCQkgZHJvcF9jYWNoZV90cmVlIDogMTsKKwkJIGRyb3BfY2FjaGVfdHJlZSA6IDEsCisJCSB1cGRhdGVkX3dvcmtkaXIgOiAxLAorCQkgdXBkYXRlZF9za2lwd29ya3RyZWUgOiAxLAorCQkgZnNtb25pdG9yX2hhc19ydW5fb25jZSA6IDE7CiAJc3RydWN0IGhhc2htYXAgbmFtZV9oYXNoOwogCXN0cnVjdCBoYXNobWFwIGRpcl9oYXNoOwogCXN0cnVjdCBvYmplY3RfaWQgb2lkOwogCXN0cnVjdCB1bnRyYWNrZWRfY2FjaGUgKnVudHJhY2tlZDsKLQl1aW50NjRfdCBmc21vbml0b3JfbGFzdF91cGRhdGU7CisJY2hhciAqZnNtb25pdG9yX2xhc3RfdXBkYXRlOwogCXN0cnVjdCBld2FoX2JpdG1hcCAqZnNtb25pdG9yX2RpcnR5OwogCXN0cnVjdCBtZW1fcG9vbCAqY2VfbWVtX3Bvb2w7CisJc3RydWN0IHByb2dyZXNzICpwcm9ncmVzczsKIH07CiAKLWV4dGVybiBzdHJ1Y3QgaW5kZXhfc3RhdGUgdGhlX2luZGV4OwotCiAvKiBOYW1lIGhhc2hpbmcgKi8KLWV4dGVybiBpbnQgdGVzdF9sYXp5X2luaXRfbmFtZV9oYXNoKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLCBpbnQgdHJ5X3RocmVhZGVkKTsKLWV4dGVybiB2b2lkIGFkZF9uYW1lX2hhc2goc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UpOwotZXh0ZXJuIHZvaWQgcmVtb3ZlX25hbWVfaGFzaChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSk7Ci1leHRlcm4gdm9pZCBmcmVlX25hbWVfaGFzaChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSk7CitpbnQgdGVzdF9sYXp5X2luaXRfbmFtZV9oYXNoKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLCBpbnQgdHJ5X3RocmVhZGVkKTsKK3ZvaWQgYWRkX25hbWVfaGFzaChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSk7Cit2b2lkIHJlbW92ZV9uYW1lX2hhc2goc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UpOwordm9pZCBmcmVlX25hbWVfaGFzaChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSk7CiAKIAogLyogQ2FjaGUgZW50cnkgY3JlYXRpb24gYW5kIGNsZWFudXAgKi8KQEAgLTQwMSwxOCArMzkxLDIwIEBACiAgKi8KIHZvaWQgdmFsaWRhdGVfY2FjaGVfZW50cmllcyhjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSk7CiAKLSNpZm5kZWYgTk9fVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCisjaWZkZWYgVVNFX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUworZXh0ZXJuIHN0cnVjdCBpbmRleF9zdGF0ZSB0aGVfaW5kZXg7CisKICNkZWZpbmUgYWN0aXZlX2NhY2hlICh0aGVfaW5kZXguY2FjaGUpCiAjZGVmaW5lIGFjdGl2ZV9uciAodGhlX2luZGV4LmNhY2hlX25yKQogI2RlZmluZSBhY3RpdmVfYWxsb2MgKHRoZV9pbmRleC5jYWNoZV9hbGxvYykKICNkZWZpbmUgYWN0aXZlX2NhY2hlX2NoYW5nZWQgKHRoZV9pbmRleC5jYWNoZV9jaGFuZ2VkKQogI2RlZmluZSBhY3RpdmVfY2FjaGVfdHJlZSAodGhlX2luZGV4LmNhY2hlX3RyZWUpCiAKLSNkZWZpbmUgcmVhZF9jYWNoZSgpIHJlYWRfaW5kZXgoJnRoZV9pbmRleCkKKyNkZWZpbmUgcmVhZF9jYWNoZSgpIHJlcG9fcmVhZF9pbmRleCh0aGVfcmVwb3NpdG9yeSkKICNkZWZpbmUgcmVhZF9jYWNoZV9mcm9tKHBhdGgpIHJlYWRfaW5kZXhfZnJvbSgmdGhlX2luZGV4LCAocGF0aCksIChnZXRfZ2l0X2RpcigpKSkKLSNkZWZpbmUgcmVhZF9jYWNoZV9wcmVsb2FkKHBhdGhzcGVjKSByZWFkX2luZGV4X3ByZWxvYWQoJnRoZV9pbmRleCwgKHBhdGhzcGVjKSwgMCkKKyNkZWZpbmUgcmVhZF9jYWNoZV9wcmVsb2FkKHBhdGhzcGVjKSByZXBvX3JlYWRfaW5kZXhfcHJlbG9hZCh0aGVfcmVwb3NpdG9yeSwgKHBhdGhzcGVjKSwgMCkKICNkZWZpbmUgaXNfY2FjaGVfdW5ib3JuKCkgaXNfaW5kZXhfdW5ib3JuKCZ0aGVfaW5kZXgpCi0jZGVmaW5lIHJlYWRfY2FjaGVfdW5tZXJnZWQoKSByZWFkX2luZGV4X3VubWVyZ2VkKCZ0aGVfaW5kZXgpCisjZGVmaW5lIHJlYWRfY2FjaGVfdW5tZXJnZWQoKSByZXBvX3JlYWRfaW5kZXhfdW5tZXJnZWQodGhlX3JlcG9zaXRvcnkpCiAjZGVmaW5lIGRpc2NhcmRfY2FjaGUoKSBkaXNjYXJkX2luZGV4KCZ0aGVfaW5kZXgpCiAjZGVmaW5lIHVubWVyZ2VkX2NhY2hlKCkgdW5tZXJnZWRfaW5kZXgoJnRoZV9pbmRleCkKICNkZWZpbmUgY2FjaGVfbmFtZV9wb3MobmFtZSwgbmFtZWxlbikgaW5kZXhfbmFtZV9wb3MoJnRoZV9pbmRleCwobmFtZSksKG5hbWVsZW4pKQpAQCAtNDI0LDYgKzQxNiw3IEBACiAjZGVmaW5lIGFkZF9maWxlX3RvX2NhY2hlKHBhdGgsIGZsYWdzKSBhZGRfZmlsZV90b19pbmRleCgmdGhlX2luZGV4LCAocGF0aCksIChmbGFncykpCiAjZGVmaW5lIGNobW9kX2NhY2hlX2VudHJ5KGNlLCBmbGlwKSBjaG1vZF9pbmRleF9lbnRyeSgmdGhlX2luZGV4LCAoY2UpLCAoZmxpcCkpCiAjZGVmaW5lIHJlZnJlc2hfY2FjaGUoZmxhZ3MpIHJlZnJlc2hfaW5kZXgoJnRoZV9pbmRleCwgKGZsYWdzKSwgTlVMTCwgTlVMTCwgTlVMTCkKKyNkZWZpbmUgcmVmcmVzaF9hbmRfd3JpdGVfY2FjaGUocmVmcmVzaF9mbGFncywgd3JpdGVfZmxhZ3MsIGdlbnRsZSkgcmVwb19yZWZyZXNoX2FuZF93cml0ZV9pbmRleCh0aGVfcmVwb3NpdG9yeSwgKHJlZnJlc2hfZmxhZ3MpLCAod3JpdGVfZmxhZ3MpLCAoZ2VudGxlKSwgTlVMTCwgTlVMTCwgTlVMTCkKICNkZWZpbmUgY2VfbWF0Y2hfc3RhdChjZSwgc3QsIG9wdGlvbnMpIGllX21hdGNoX3N0YXQoJnRoZV9pbmRleCwgKGNlKSwgKHN0KSwgKG9wdGlvbnMpKQogI2RlZmluZSBjZV9tb2RpZmllZChjZSwgc3QsIG9wdGlvbnMpIGllX21vZGlmaWVkKCZ0aGVfaW5kZXgsIChjZSksIChzdCksIChvcHRpb25zKSkKICNkZWZpbmUgY2FjaGVfZGlyX2V4aXN0cyhuYW1lLCBuYW1lbGVuKSBpbmRleF9kaXJfZXhpc3RzKCZ0aGVfaW5kZXgsIChuYW1lKSwgKG5hbWVsZW4pKQpAQCAtNDMzLDYgKzQyNiw3IEBACiAjZGVmaW5lIHVubWVyZ2VfY2FjaGVfZW50cnlfYXQoYXQpIHVubWVyZ2VfaW5kZXhfZW50cnlfYXQoJnRoZV9pbmRleCwgYXQpCiAjZGVmaW5lIHVubWVyZ2VfY2FjaGUocGF0aHNwZWMpIHVubWVyZ2VfaW5kZXgoJnRoZV9pbmRleCwgcGF0aHNwZWMpCiAjZGVmaW5lIHJlYWRfYmxvYl9kYXRhX2Zyb21fY2FjaGUocGF0aCwgc3opIHJlYWRfYmxvYl9kYXRhX2Zyb21faW5kZXgoJnRoZV9pbmRleCwgKHBhdGgpLCAoc3opKQorI2RlZmluZSBob2xkX2xvY2tlZF9pbmRleChsb2NrX2ZpbGUsIGZsYWdzKSByZXBvX2hvbGRfbG9ja2VkX2luZGV4KHRoZV9yZXBvc2l0b3J5LCAobG9ja19maWxlKSwgKGZsYWdzKSkKICNlbmRpZgogCiAjZGVmaW5lIFRZUEVfQklUUyAzCkBAIC01MzEsNyArNTI1LDcgQEAKICAqLwogZXh0ZXJuIGNvbnN0IGNoYXIgKiBjb25zdCBsb2NhbF9yZXBvX2VudltdOwogCi1leHRlcm4gdm9pZCBzZXR1cF9naXRfZW52KGNvbnN0IGNoYXIgKmdpdF9kaXIpOwordm9pZCBzZXR1cF9naXRfZW52KGNvbnN0IGNoYXIgKmdpdF9kaXIpOwogCiAvKgogICogUmV0dXJucyB0cnVlIGlmZiB3ZSBoYXZlIGEgY29uZmlndXJlZCBnaXQgcmVwb3NpdG9yeSAoZWl0aGVyIHZpYQpAQCAtNTQwLDI5ICs1MzQsMjkgQEAKIGludCBoYXZlX2dpdF9kaXIodm9pZCk7CiAKIGV4dGVybiBpbnQgaXNfYmFyZV9yZXBvc2l0b3J5X2NmZzsKLWV4dGVybiBpbnQgaXNfYmFyZV9yZXBvc2l0b3J5KHZvaWQpOwotZXh0ZXJuIGludCBpc19pbnNpZGVfZ2l0X2Rpcih2b2lkKTsKK2ludCBpc19iYXJlX3JlcG9zaXRvcnkodm9pZCk7CitpbnQgaXNfaW5zaWRlX2dpdF9kaXIodm9pZCk7CiBleHRlcm4gY2hhciAqZ2l0X3dvcmtfdHJlZV9jZmc7Ci1leHRlcm4gaW50IGlzX2luc2lkZV93b3JrX3RyZWUodm9pZCk7Ci1leHRlcm4gY29uc3QgY2hhciAqZ2V0X2dpdF9kaXIodm9pZCk7Ci1leHRlcm4gY29uc3QgY2hhciAqZ2V0X2dpdF9jb21tb25fZGlyKHZvaWQpOwotZXh0ZXJuIGNoYXIgKmdldF9vYmplY3RfZGlyZWN0b3J5KHZvaWQpOwotZXh0ZXJuIGNoYXIgKmdldF9pbmRleF9maWxlKHZvaWQpOwotZXh0ZXJuIGNoYXIgKmdldF9ncmFmdF9maWxlKHN0cnVjdCByZXBvc2l0b3J5ICpyKTsKLWV4dGVybiB2b2lkIHNldF9naXRfZGlyKGNvbnN0IGNoYXIgKnBhdGgpOwotZXh0ZXJuIGludCBnZXRfY29tbW9uX2Rpcl9ub2VudihzdHJ1Y3Qgc3RyYnVmICpzYiwgY29uc3QgY2hhciAqZ2l0ZGlyKTsKLWV4dGVybiBpbnQgZ2V0X2NvbW1vbl9kaXIoc3RydWN0IHN0cmJ1ZiAqc2IsIGNvbnN0IGNoYXIgKmdpdGRpcik7Ci1leHRlcm4gY29uc3QgY2hhciAqZ2V0X2dpdF9uYW1lc3BhY2Uodm9pZCk7Ci1leHRlcm4gY29uc3QgY2hhciAqc3RyaXBfbmFtZXNwYWNlKGNvbnN0IGNoYXIgKm5hbWVzcGFjZWRfcmVmKTsKLWV4dGVybiBjb25zdCBjaGFyICpnZXRfc3VwZXJfcHJlZml4KHZvaWQpOwotZXh0ZXJuIGNvbnN0IGNoYXIgKmdldF9naXRfd29ya190cmVlKHZvaWQpOworaW50IGlzX2luc2lkZV93b3JrX3RyZWUodm9pZCk7Citjb25zdCBjaGFyICpnZXRfZ2l0X2Rpcih2b2lkKTsKK2NvbnN0IGNoYXIgKmdldF9naXRfY29tbW9uX2Rpcih2b2lkKTsKK2NoYXIgKmdldF9vYmplY3RfZGlyZWN0b3J5KHZvaWQpOworY2hhciAqZ2V0X2luZGV4X2ZpbGUodm9pZCk7CitjaGFyICpnZXRfZ3JhZnRfZmlsZShzdHJ1Y3QgcmVwb3NpdG9yeSAqcik7Cit2b2lkIHNldF9naXRfZGlyKGNvbnN0IGNoYXIgKnBhdGgsIGludCBtYWtlX3JlYWxwYXRoKTsKK2ludCBnZXRfY29tbW9uX2Rpcl9ub2VudihzdHJ1Y3Qgc3RyYnVmICpzYiwgY29uc3QgY2hhciAqZ2l0ZGlyKTsKK2ludCBnZXRfY29tbW9uX2RpcihzdHJ1Y3Qgc3RyYnVmICpzYiwgY29uc3QgY2hhciAqZ2l0ZGlyKTsKK2NvbnN0IGNoYXIgKmdldF9naXRfbmFtZXNwYWNlKHZvaWQpOworY29uc3QgY2hhciAqc3RyaXBfbmFtZXNwYWNlKGNvbnN0IGNoYXIgKm5hbWVzcGFjZWRfcmVmKTsKK2NvbnN0IGNoYXIgKmdldF9zdXBlcl9wcmVmaXgodm9pZCk7Citjb25zdCBjaGFyICpnZXRfZ2l0X3dvcmtfdHJlZSh2b2lkKTsKIAogLyoKICAqIFJldHVybiB0cnVlIGlmIHRoZSBnaXZlbiBwYXRoIGlzIGEgZ2l0IGRpcmVjdG9yeTsgbm90ZSB0aGF0IHRoaXMgX2p1c3RfCiAgKiBsb29rcyBhdCB0aGUgZGlyZWN0b3J5IGl0c2VsZi4gSWYgeW91IHdhbnQgdG8ga25vdyB3aGV0aGVyICJmb28vLmdpdCIKICAqIGlzIGEgcmVwb3NpdG9yeSwgeW91IG11c3QgZmVlZCB0aGF0IHBhdGgsIG5vdCBqdXN0ICJmb28iLgogICovCi1leHRlcm4gaW50IGlzX2dpdF9kaXJlY3RvcnkoY29uc3QgY2hhciAqcGF0aCk7CitpbnQgaXNfZ2l0X2RpcmVjdG9yeShjb25zdCBjaGFyICpwYXRoKTsKIAogLyoKICAqIFJldHVybiAxIGlmIHRoZSBnaXZlbiBwYXRoIGlzIHRoZSByb290IG9mIGEgZ2l0IHJlcG9zaXRvcnkgb3IKQEAgLTU3NCw3ICs1NjgsNyBAQAogICogYXMgd2UgdXN1YWxseSBjb25zaWRlciBzdWItcmVwb3MgcHJlY2lvdXMsIGFuZCB3b3VsZCBwcmVmZXIgdG8gZXJyIG9uIHRoZQogICogc2lkZSBvZiBub3QgZGlzcnVwdGluZyBvciBkZWxldGluZyB0aGVtLgogICovCi1leHRlcm4gaW50IGlzX25vbmJhcmVfcmVwb3NpdG9yeV9kaXIoc3RydWN0IHN0cmJ1ZiAqcGF0aCk7CitpbnQgaXNfbm9uYmFyZV9yZXBvc2l0b3J5X2RpcihzdHJ1Y3Qgc3RyYnVmICpwYXRoKTsKIAogI2RlZmluZSBSRUFEX0dJVEZJTEVfRVJSX1NUQVRfRkFJTEVEIDEKICNkZWZpbmUgUkVBRF9HSVRGSUxFX0VSUl9OT1RfQV9GSUxFIDIKQEAgLTU4NCwxNyArNTc4LDE3IEBACiAjZGVmaW5lIFJFQURfR0lURklMRV9FUlJfTk9fUEFUSCA2CiAjZGVmaW5lIFJFQURfR0lURklMRV9FUlJfTk9UX0FfUkVQTyA3CiAjZGVmaW5lIFJFQURfR0lURklMRV9FUlJfVE9PX0xBUkdFIDgKLWV4dGVybiB2b2lkIHJlYWRfZ2l0ZmlsZV9lcnJvcl9kaWUoaW50IGVycm9yX2NvZGUsIGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IGNoYXIgKmRpcik7Ci1leHRlcm4gY29uc3QgY2hhciAqcmVhZF9naXRmaWxlX2dlbnRseShjb25zdCBjaGFyICpwYXRoLCBpbnQgKnJldHVybl9lcnJvcl9jb2RlKTsKK3ZvaWQgcmVhZF9naXRmaWxlX2Vycm9yX2RpZShpbnQgZXJyb3JfY29kZSwgY29uc3QgY2hhciAqcGF0aCwgY29uc3QgY2hhciAqZGlyKTsKK2NvbnN0IGNoYXIgKnJlYWRfZ2l0ZmlsZV9nZW50bHkoY29uc3QgY2hhciAqcGF0aCwgaW50ICpyZXR1cm5fZXJyb3JfY29kZSk7CiAjZGVmaW5lIHJlYWRfZ2l0ZmlsZShwYXRoKSByZWFkX2dpdGZpbGVfZ2VudGx5KChwYXRoKSwgTlVMTCkKLWV4dGVybiBjb25zdCBjaGFyICpyZXNvbHZlX2dpdGRpcl9nZW50bHkoY29uc3QgY2hhciAqc3VzcGVjdCwgaW50ICpyZXR1cm5fZXJyb3JfY29kZSk7Citjb25zdCBjaGFyICpyZXNvbHZlX2dpdGRpcl9nZW50bHkoY29uc3QgY2hhciAqc3VzcGVjdCwgaW50ICpyZXR1cm5fZXJyb3JfY29kZSk7CiAjZGVmaW5lIHJlc29sdmVfZ2l0ZGlyKHBhdGgpIHJlc29sdmVfZ2l0ZGlyX2dlbnRseSgocGF0aCksIE5VTEwpCiAKLWV4dGVybiB2b2lkIHNldF9naXRfd29ya190cmVlKGNvbnN0IGNoYXIgKnRyZWUpOwordm9pZCBzZXRfZ2l0X3dvcmtfdHJlZShjb25zdCBjaGFyICp0cmVlKTsKIAogI2RlZmluZSBBTFRFUk5BVEVfREJfRU5WSVJPTk1FTlQgIkdJVF9BTFRFUk5BVEVfT0JKRUNUX0RJUkVDVE9SSUVTIgogCi1leHRlcm4gdm9pZCBzZXR1cF93b3JrX3RyZWUodm9pZCk7Cit2b2lkIHNldHVwX3dvcmtfdHJlZSh2b2lkKTsKIC8qCiAgKiBGaW5kIHRoZSBjb21tb25kaXIgYW5kIGdpdGRpciBvZiB0aGUgcmVwb3NpdG9yeSB0aGF0IGNvbnRhaW5zIHRoZSBjdXJyZW50CiAgKiB3b3JraW5nIGRpcmVjdG9yeSwgd2l0aG91dCBjaGFuZ2luZyB0aGUgd29ya2luZyBkaXJlY3Rvcnkgb3Igb3RoZXIgZ2xvYmFsCkBAIC02MDMsMTIgKzU5NywxMiBAQAogICogYm90aCBoYXZlIHRoZSBzYW1lIHJlc3VsdCBhcHBlbmRlZCB0byB0aGUgYnVmZmVyLiAgVGhlIHJldHVybiB2YWx1ZSBpcwogICogZWl0aGVyIDAgdXBvbiBzdWNjZXNzIGFuZCBub24temVybyBpZiBubyByZXBvc2l0b3J5IHdhcyBmb3VuZC4KICAqLwotZXh0ZXJuIGludCBkaXNjb3Zlcl9naXRfZGlyZWN0b3J5KHN0cnVjdCBzdHJidWYgKmNvbW1vbmRpciwKLQkJCQkgIHN0cnVjdCBzdHJidWYgKmdpdGRpcik7Ci1leHRlcm4gY29uc3QgY2hhciAqc2V0dXBfZ2l0X2RpcmVjdG9yeV9nZW50bHkoaW50ICopOwotZXh0ZXJuIGNvbnN0IGNoYXIgKnNldHVwX2dpdF9kaXJlY3Rvcnkodm9pZCk7Ci1leHRlcm4gY2hhciAqcHJlZml4X3BhdGgoY29uc3QgY2hhciAqcHJlZml4LCBpbnQgbGVuLCBjb25zdCBjaGFyICpwYXRoKTsKLWV4dGVybiBjaGFyICpwcmVmaXhfcGF0aF9nZW50bHkoY29uc3QgY2hhciAqcHJlZml4LCBpbnQgbGVuLCBpbnQgKnJlbWFpbmluZywgY29uc3QgY2hhciAqcGF0aCk7CitpbnQgZGlzY292ZXJfZ2l0X2RpcmVjdG9yeShzdHJ1Y3Qgc3RyYnVmICpjb21tb25kaXIsCisJCQkgICBzdHJ1Y3Qgc3RyYnVmICpnaXRkaXIpOworY29uc3QgY2hhciAqc2V0dXBfZ2l0X2RpcmVjdG9yeV9nZW50bHkoaW50ICopOworY29uc3QgY2hhciAqc2V0dXBfZ2l0X2RpcmVjdG9yeSh2b2lkKTsKK2NoYXIgKnByZWZpeF9wYXRoKGNvbnN0IGNoYXIgKnByZWZpeCwgaW50IGxlbiwgY29uc3QgY2hhciAqcGF0aCk7CitjaGFyICpwcmVmaXhfcGF0aF9nZW50bHkoY29uc3QgY2hhciAqcHJlZml4LCBpbnQgbGVuLCBpbnQgKnJlbWFpbmluZywgY29uc3QgY2hhciAqcGF0aCk7CiAKIC8qCiAgKiBDb25jYXRlbmF0ZSAicHJlZml4IiAoaWYgbGVuIGlzIG5vbi16ZXJvKSBhbmQgInBhdGgiLCB3aXRoIG5vCkBAIC02MjAsMzAgKzYxNCw2NiBAQAogICogVGhlIHJldHVybiB2YWx1ZSBpcyBhbHdheXMgYSBuZXdseSBhbGxvY2F0ZWQgc3RyaW5nIChldmVuIGlmIHRoZQogICogcHJlZml4IHdhcyBlbXB0eSkuCiAgKi8KLWV4dGVybiBjaGFyICpwcmVmaXhfZmlsZW5hbWUoY29uc3QgY2hhciAqcHJlZml4LCBjb25zdCBjaGFyICpwYXRoKTsKK2NoYXIgKnByZWZpeF9maWxlbmFtZShjb25zdCBjaGFyICpwcmVmaXgsIGNvbnN0IGNoYXIgKnBhdGgpOwogCi1leHRlcm4gaW50IGNoZWNrX2ZpbGVuYW1lKGNvbnN0IGNoYXIgKnByZWZpeCwgY29uc3QgY2hhciAqbmFtZSk7Ci1leHRlcm4gdm9pZCB2ZXJpZnlfZmlsZW5hbWUoY29uc3QgY2hhciAqcHJlZml4LAotCQkJICAgIGNvbnN0IGNoYXIgKm5hbWUsCi0JCQkgICAgaW50IGRpYWdub3NlX21pc3NwZWx0X3Jldik7Ci1leHRlcm4gdm9pZCB2ZXJpZnlfbm9uX2ZpbGVuYW1lKGNvbnN0IGNoYXIgKnByZWZpeCwgY29uc3QgY2hhciAqbmFtZSk7Ci1leHRlcm4gaW50IHBhdGhfaW5zaWRlX3JlcG8oY29uc3QgY2hhciAqcHJlZml4LCBjb25zdCBjaGFyICpwYXRoKTsKK2ludCBjaGVja19maWxlbmFtZShjb25zdCBjaGFyICpwcmVmaXgsIGNvbnN0IGNoYXIgKm5hbWUpOwordm9pZCB2ZXJpZnlfZmlsZW5hbWUoY29uc3QgY2hhciAqcHJlZml4LAorCQkgICAgIGNvbnN0IGNoYXIgKm5hbWUsCisJCSAgICAgaW50IGRpYWdub3NlX21pc3NwZWx0X3Jldik7Cit2b2lkIHZlcmlmeV9ub25fZmlsZW5hbWUoY29uc3QgY2hhciAqcHJlZml4LCBjb25zdCBjaGFyICpuYW1lKTsKK2ludCBwYXRoX2luc2lkZV9yZXBvKGNvbnN0IGNoYXIgKnByZWZpeCwgY29uc3QgY2hhciAqcGF0aCk7CiAKICNkZWZpbmUgSU5JVF9EQl9RVUlFVCAweDAwMDEKICNkZWZpbmUgSU5JVF9EQl9FWElTVF9PSyAweDAwMDIKIAotZXh0ZXJuIGludCBpbml0X2RiKGNvbnN0IGNoYXIgKmdpdF9kaXIsIGNvbnN0IGNoYXIgKnJlYWxfZ2l0X2RpciwKLQkJICAgY29uc3QgY2hhciAqdGVtcGxhdGVfZGlyLCB1bnNpZ25lZCBpbnQgZmxhZ3MpOworaW50IGluaXRfZGIoY29uc3QgY2hhciAqZ2l0X2RpciwgY29uc3QgY2hhciAqcmVhbF9naXRfZGlyLAorCSAgICBjb25zdCBjaGFyICp0ZW1wbGF0ZV9kaXIsIHVuc2lnbmVkIGludCBmbGFncyk7CiAKLWV4dGVybiB2b2lkIHNhbml0aXplX3N0ZGZkcyh2b2lkKTsKLWV4dGVybiBpbnQgZGFlbW9uaXplKHZvaWQpOwordm9pZCBzYW5pdGl6ZV9zdGRmZHModm9pZCk7CitpbnQgZGFlbW9uaXplKHZvaWQpOwogCiAjZGVmaW5lIGFsbG9jX25yKHgpICgoKHgpKzE2KSozLzIpCiAKLS8qCi0gKiBSZWFsbG9jIHRoZSBidWZmZXIgcG9pbnRlZCBhdCBieSB2YXJpYWJsZSAneCcgc28gdGhhdCBpdCBjYW4gaG9sZAotICogYXQgbGVhc3QgJ25yJyBlbnRyaWVzOyB0aGUgbnVtYmVyIG9mIGVudHJpZXMgY3VycmVudGx5IGFsbG9jYXRlZAotICogaXMgJ2FsbG9jJywgdXNpbmcgdGhlIHN0YW5kYXJkIGdyb3dpbmcgZmFjdG9yIGFsbG9jX25yKCkgbWFjcm8uCisvKioKKyAqIER5bmFtaWNhbGx5IGdyb3dpbmcgYW4gYXJyYXkgdXNpbmcgcmVhbGxvYygpIGlzIGVycm9yIHByb25lIGFuZCBib3JpbmcuCisgKgorICogRGVmaW5lIHlvdXIgYXJyYXkgd2l0aDoKKyAqCisgKiAtIGEgcG9pbnRlciAoYGl0ZW1gKSB0aGF0IHBvaW50cyBhdCB0aGUgYXJyYXksIGluaXRpYWxpemVkIHRvIGBOVUxMYAorICogICAoYWx0aG91Z2ggcGxlYXNlIG5hbWUgdGhlIHZhcmlhYmxlIGJhc2VkIG9uIGl0cyBjb250ZW50cywgbm90IG9uIGl0cworICogICB0eXBlKTsKKyAqCisgKiAtIGFuIGludGVnZXIgdmFyaWFibGUgKGBhbGxvY2ApIHRoYXQga2VlcHMgdHJhY2sgb2YgaG93IGJpZyB0aGUgY3VycmVudAorICogICBhbGxvY2F0aW9uIGlzLCBpbml0aWFsaXplZCB0byBgMGA7CisgKgorICogLSBhbm90aGVyIGludGVnZXIgdmFyaWFibGUgKGBucmApIHRvIGtlZXAgdHJhY2sgb2YgaG93IG1hbnkgZWxlbWVudHMgdGhlCisgKiAgIGFycmF5IGN1cnJlbnRseSBoYXMsIGluaXRpYWxpemVkIHRvIGAwYC4KKyAqCisgKiBUaGVuIGJlZm9yZSBhZGRpbmcgYG5gdGggZWxlbWVudCB0byB0aGUgaXRlbSwgY2FsbCBgQUxMT0NfR1JPVyhpdGVtLCBuLAorICogYWxsb2MpYC4gIFRoaXMgZW5zdXJlcyB0aGF0IHRoZSBhcnJheSBjYW4gaG9sZCBhdCBsZWFzdCBgbmAgZWxlbWVudHMgYnkKKyAqIGNhbGxpbmcgYHJlYWxsb2MoMylgIGFuZCBhZGp1c3RpbmcgYGFsbG9jYCB2YXJpYWJsZS4KKyAqCisgKiAtLS0tLS0tLS0tLS0KKyAqIHNvbWV0eXBlICppdGVtOworICogc2l6ZV90IG5yOworICogc2l6ZV90IGFsbG9jCisgKgorICogZm9yIChpID0gMDsgaSA8IG5yOyBpKyspCisgKiAJaWYgKHdlIGxpa2UgaXRlbVtpXSBhbHJlYWR5KQorICogCQlyZXR1cm47CisgKgorICogLy8gd2UgZGlkIG5vdCBsaWtlIGFueSBleGlzdGluZyBvbmUsIHNvIGFkZCBvbmUKKyAqIEFMTE9DX0dST1coaXRlbSwgbnIgKyAxLCBhbGxvYyk7CisgKiBpdGVtW25yKytdID0gdmFsdWUgeW91IGxpa2U7CisgKiAtLS0tLS0tLS0tLS0KKyAqCisgKiBZb3UgYXJlIHJlc3BvbnNpYmxlIGZvciB1cGRhdGluZyB0aGUgYG5yYCB2YXJpYWJsZS4KKyAqCisgKiBJZiB5b3UgbmVlZCB0byBzcGVjaWZ5IHRoZSBudW1iZXIgb2YgZWxlbWVudHMgdG8gYWxsb2NhdGUgZXhwbGljaXRseQorICogdGhlbiB1c2UgdGhlIG1hY3JvIGBSRUFMTE9DX0FSUkFZKGl0ZW0sIGFsbG9jKWAgaW5zdGVhZCBvZiBgQUxMT0NfR1JPV2AuCisgKgorICogQ29uc2lkZXIgdXNpbmcgQUxMT0NfR1JPV19CWSBpbnN0ZWFkIG9mIEFMTE9DX0dST1cgYXMgaXQgaGFzIHNvbWUKKyAqIGFkZGVkIG5pY2V0aWVzLgogICoKICAqIERPIE5PVCBVU0UgYW55IGV4cHJlc3Npb24gd2l0aCBzaWRlLWVmZmVjdCBmb3IgJ3gnLCAnbnInLCBvciAnYWxsb2MnLgogICovCkBAIC02NTgsMjEgKzY4OCwzNSBAQAogCQl9IFwKIAl9IHdoaWxlICgwKQogCisvKgorICogU2ltaWxhciB0byBBTExPQ19HUk9XIGJ1dCBoYW5kbGVzIHVwZGF0aW5nIG9mIHRoZSBuciB2YWx1ZSBhbmQKKyAqIHplcm9pbmcgdGhlIGJ5dGVzIG9mIHRoZSBuZXdseS1ncm93biBhcnJheSBlbGVtZW50cy4KKyAqCisgKiBETyBOT1QgVVNFIGFueSBleHByZXNzaW9uIHdpdGggc2lkZS1lZmZlY3QgZm9yIGFueSBvZiB0aGUKKyAqIGFyZ3VtZW50cy4KKyAqLworI2RlZmluZSBBTExPQ19HUk9XX0JZKHgsIG5yLCBpbmNyZWFzZSwgYWxsb2MpIFwKKwlkbyB7IFwKKwkJaWYgKGluY3JlYXNlKSB7IFwKKwkJCXNpemVfdCBuZXdfbnIgPSBuciArIChpbmNyZWFzZSk7IFwKKwkJCWlmIChuZXdfbnIgPCBucikgXAorCQkJCUJVRygibmVnYXRpdmUgZ3Jvd3RoIGluIEFMTE9DX0dST1dfQlkiKTsgXAorCQkJQUxMT0NfR1JPVyh4LCBuZXdfbnIsIGFsbG9jKTsgXAorCQkJbWVtc2V0KCh4KSArIG5yLCAwLCBzaXplb2YoKih4KSkgKiAoaW5jcmVhc2UpKTsgXAorCQkJbnIgPSBuZXdfbnI7IFwKKwkJfSBcCisJfSB3aGlsZSAoMCkKKwogLyogSW5pdGlhbGl6ZSBhbmQgdXNlIHRoZSBjYWNoZSBpbmZvcm1hdGlvbiAqLwogc3RydWN0IGxvY2tfZmlsZTsKLWV4dGVybiBpbnQgcmVhZF9pbmRleChzdHJ1Y3QgaW5kZXhfc3RhdGUgKik7Ci1leHRlcm4gdm9pZCBwcmVsb2FkX2luZGV4KHN0cnVjdCBpbmRleF9zdGF0ZSAqaW5kZXgsCi0JCQkgIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCi0JCQkgIHVuc2lnbmVkIGludCByZWZyZXNoX2ZsYWdzKTsKLWV4dGVybiBpbnQgcmVhZF9pbmRleF9wcmVsb2FkKHN0cnVjdCBpbmRleF9zdGF0ZSAqLAotCQkJICAgICAgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYywKLQkJCSAgICAgIHVuc2lnbmVkIGludCByZWZyZXNoX2ZsYWdzKTsKLWV4dGVybiBpbnQgZG9fcmVhZF9pbmRleChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgY29uc3QgY2hhciAqcGF0aCwKLQkJCSBpbnQgbXVzdF9leGlzdCk7IC8qIGZvciB0ZXN0dGluZyBvbmx5ISAqLwotZXh0ZXJuIGludCByZWFkX2luZGV4X2Zyb20oc3RydWN0IGluZGV4X3N0YXRlICosIGNvbnN0IGNoYXIgKnBhdGgsCi0JCQkgICBjb25zdCBjaGFyICpnaXRkaXIpOwotZXh0ZXJuIGludCBpc19pbmRleF91bmJvcm4oc3RydWN0IGluZGV4X3N0YXRlICopOwotZXh0ZXJuIGludCByZWFkX2luZGV4X3VubWVyZ2VkKHN0cnVjdCBpbmRleF9zdGF0ZSAqKTsKK3ZvaWQgcHJlbG9hZF9pbmRleChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmluZGV4LAorCQkgICBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjLAorCQkgICB1bnNpZ25lZCBpbnQgcmVmcmVzaF9mbGFncyk7CitpbnQgZG9fcmVhZF9pbmRleChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgY29uc3QgY2hhciAqcGF0aCwKKwkJICBpbnQgbXVzdF9leGlzdCk7IC8qIGZvciB0ZXN0dGluZyBvbmx5ISAqLworaW50IHJlYWRfaW5kZXhfZnJvbShzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgY29uc3QgY2hhciAqcGF0aCwKKwkJICAgIGNvbnN0IGNoYXIgKmdpdGRpcik7CitpbnQgaXNfaW5kZXhfdW5ib3JuKHN0cnVjdCBpbmRleF9zdGF0ZSAqKTsKIAogLyogRm9yIHVzZSB3aXRoIGB3cml0ZV9sb2NrZWRfaW5kZXgoKWAuICovCiAjZGVmaW5lIENPTU1JVF9MT0NLCQkoMSA8PCAwKQpAQCAtNjk3LDExICs3NDEsMTEgQEAKICAqIElmIGBTS0lQX0lGX1VOQ0hBTkdFRGAgaXMgZ2l2ZW4gYW5kIHRoZSBpbmRleCBpcyB1bmNoYW5nZWQsIG5vdGhpbmcKICAqIGlzIHdyaXR0ZW4gKGFuZCB0aGUgbG9jayBpcyByb2xsZWQgYmFjayBpZiBgQ09NTUlUX0xPQ0tgIGlzIGdpdmVuKS4KICAqLwotZXh0ZXJuIGludCB3cml0ZV9sb2NrZWRfaW5kZXgoc3RydWN0IGluZGV4X3N0YXRlICosIHN0cnVjdCBsb2NrX2ZpbGUgKmxvY2ssIHVuc2lnbmVkIGZsYWdzKTsKK2ludCB3cml0ZV9sb2NrZWRfaW5kZXgoc3RydWN0IGluZGV4X3N0YXRlICosIHN0cnVjdCBsb2NrX2ZpbGUgKmxvY2ssIHVuc2lnbmVkIGZsYWdzKTsKIAotZXh0ZXJuIGludCBkaXNjYXJkX2luZGV4KHN0cnVjdCBpbmRleF9zdGF0ZSAqKTsKLWV4dGVybiB2b2lkIG1vdmVfaW5kZXhfZXh0ZW5zaW9ucyhzdHJ1Y3QgaW5kZXhfc3RhdGUgKmRzdCwgc3RydWN0IGluZGV4X3N0YXRlICpzcmMpOwotZXh0ZXJuIGludCB1bm1lcmdlZF9pbmRleChjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKik7CitpbnQgZGlzY2FyZF9pbmRleChzdHJ1Y3QgaW5kZXhfc3RhdGUgKik7Cit2b2lkIG1vdmVfaW5kZXhfZXh0ZW5zaW9ucyhzdHJ1Y3QgaW5kZXhfc3RhdGUgKmRzdCwgc3RydWN0IGluZGV4X3N0YXRlICpzcmMpOworaW50IHVubWVyZ2VkX2luZGV4KGNvbnN0IHN0cnVjdCBpbmRleF9zdGF0ZSAqKTsKIAogLyoqCiAgKiBSZXR1cm5zIDEgaWYgaXN0YXRlIGRpZmZlcnMgZnJvbSB0cmVlLCAwIG90aGVyd2lzZS4gIElmIHRyZWUgaXMgTlVMTCwKQEAgLTcxMCwxNSArNzU0LDE1IEBACiAgKiBwcm92aWRlZCwgdGhlIHNwYWNlLXNlcGFyYXRlZCBsaXN0IG9mIGZpbGVzIHRoYXQgZGlmZmVyIHdpbGwgYmUgYXBwZW5kZWQKICAqIHRvIGl0LgogICovCi1leHRlcm4gaW50IGluZGV4X2hhc19jaGFuZ2VzKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAotCQkJICAgICBzdHJ1Y3QgdHJlZSAqdHJlZSwKLQkJCSAgICAgc3RydWN0IHN0cmJ1ZiAqc2IpOworaW50IHJlcG9faW5kZXhfaGFzX2NoYW5nZXMoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkgICBzdHJ1Y3QgdHJlZSAqdHJlZSwKKwkJCSAgIHN0cnVjdCBzdHJidWYgKnNiKTsKIAotZXh0ZXJuIGludCB2ZXJpZnlfcGF0aChjb25zdCBjaGFyICpwYXRoLCB1bnNpZ25lZCBtb2RlKTsKLWV4dGVybiBpbnQgc3RyY21wX29mZnNldChjb25zdCBjaGFyICpzMSwgY29uc3QgY2hhciAqczIsIHNpemVfdCAqZmlyc3RfY2hhbmdlKTsKLWV4dGVybiBpbnQgaW5kZXhfZGlyX2V4aXN0cyhzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgY29uc3QgY2hhciAqbmFtZSwgaW50IG5hbWVsZW4pOwotZXh0ZXJuIHZvaWQgYWRqdXN0X2Rpcm5hbWVfY2FzZShzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgY2hhciAqbmFtZSk7Ci1leHRlcm4gc3RydWN0IGNhY2hlX2VudHJ5ICppbmRleF9maWxlX2V4aXN0cyhzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgY29uc3QgY2hhciAqbmFtZSwgaW50IG5hbWVsZW4sIGludCBpZ25jYXNlKTsKK2ludCB2ZXJpZnlfcGF0aChjb25zdCBjaGFyICpwYXRoLCB1bnNpZ25lZCBtb2RlKTsKK2ludCBzdHJjbXBfb2Zmc2V0KGNvbnN0IGNoYXIgKnMxLCBjb25zdCBjaGFyICpzMiwgc2l6ZV90ICpmaXJzdF9jaGFuZ2UpOworaW50IGluZGV4X2Rpcl9leGlzdHMoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIGNvbnN0IGNoYXIgKm5hbWUsIGludCBuYW1lbGVuKTsKK3ZvaWQgYWRqdXN0X2Rpcm5hbWVfY2FzZShzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgY2hhciAqbmFtZSk7CitzdHJ1Y3QgY2FjaGVfZW50cnkgKmluZGV4X2ZpbGVfZXhpc3RzKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLCBjb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbiwgaW50IGlnbmNhc2UpOwogCiAvKgogICogU2VhcmNoZXMgZm9yIGFuIGVudHJ5IGRlZmluZWQgYnkgbmFtZSBhbmQgbmFtZWxlbiBpbiB0aGUgZ2l2ZW4gaW5kZXguCkBAIC03MzcsNyArNzgxLDIwIEBACiAgKiBpbmRleF9uYW1lX3BvcygmaW5kZXgsICJmIiwgMSkgLT4gLTMKICAqIGluZGV4X25hbWVfcG9zKCZpbmRleCwgImciLCAxKSAtPiAtNQogICovCi1leHRlcm4gaW50IGluZGV4X25hbWVfcG9zKGNvbnN0IHN0cnVjdCBpbmRleF9zdGF0ZSAqLCBjb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbik7CitpbnQgaW5kZXhfbmFtZV9wb3MoY29uc3Qgc3RydWN0IGluZGV4X3N0YXRlICosIGNvbnN0IGNoYXIgKm5hbWUsIGludCBuYW1lbGVuKTsKKworLyoKKyAqIFNvbWUgZnVuY3Rpb25zIHJldHVybiB0aGUgbmVnYXRpdmUgY29tcGxlbWVudCBvZiBhbiBpbnNlcnQgcG9zaXRpb24gd2hlbiBhCisgKiBwcmVjaXNlIG1hdGNoIHdhcyBub3QgZm91bmQgYnV0IGEgcG9zaXRpb24gd2FzIGZvdW5kIHdoZXJlIHRoZSBlbnRyeSB3b3VsZAorICogbmVlZCB0byBiZSBpbnNlcnRlZC4gVGhpcyBoZWxwZXIgcHJvdGVjdHMgdGhhdCBsb2dpYyBmcm9tIGFueSBpbnRlZ2VyCisgKiB1bmRlcmZsb3cuCisgKi8KK3N0YXRpYyBpbmxpbmUgaW50IGluZGV4X3Bvc190b19pbnNlcnRfcG9zKHVpbnRtYXhfdCBwb3MpCit7CisJaWYgKHBvcyA+IElOVF9NQVgpCisJCWRpZSgib3ZlcmZsb3c6IC0xIC0gJSJQUkl1TUFYLCBwb3MpOworCXJldHVybiAtMSAtIChpbnQpcG9zOworfQogCiAjZGVmaW5lIEFERF9DQUNIRV9PS19UT19BREQgMQkJLyogT2sgdG8gYWRkICovCiAjZGVmaW5lIEFERF9DQUNIRV9PS19UT19SRVBMQUNFIDIJLyogT2sgdG8gcmVwbGFjZSBmaWxlL2RpcmVjdG9yeSAqLwpAQCAtNzQ1LDE0ICs4MDIsMTUgQEAKICNkZWZpbmUgQUREX0NBQ0hFX0pVU1RfQVBQRU5EIDgJCS8qIEFwcGVuZCBvbmx5OyB0cmVlLmM6OnJlYWRfdHJlZSgpICovCiAjZGVmaW5lIEFERF9DQUNIRV9ORVdfT05MWSAxNgkJLyogRG8gbm90IHJlcGxhY2UgZXhpc3Rpbmcgb25lcyAqLwogI2RlZmluZSBBRERfQ0FDSEVfS0VFUF9DQUNIRV9UUkVFIDMyCS8qIERvIG5vdCBpbnZhbGlkYXRlIGNhY2hlLXRyZWUgKi8KLWV4dGVybiBpbnQgYWRkX2luZGV4X2VudHJ5KHN0cnVjdCBpbmRleF9zdGF0ZSAqLCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlLCBpbnQgb3B0aW9uKTsKLWV4dGVybiB2b2lkIHJlbmFtZV9pbmRleF9lbnRyeV9hdChzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgaW50IHBvcywgY29uc3QgY2hhciAqbmV3X25hbWUpOworI2RlZmluZSBBRERfQ0FDSEVfUkVOT1JNQUxJWkUgNjQgICAgICAgIC8qIFBhc3MgYWxvbmcgSEFTSF9SRU5PUk1BTElaRSAqLworaW50IGFkZF9pbmRleF9lbnRyeShzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSwgaW50IG9wdGlvbik7Cit2b2lkIHJlbmFtZV9pbmRleF9lbnRyeV9hdChzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgaW50IHBvcywgY29uc3QgY2hhciAqbmV3X25hbWUpOwogCiAvKiBSZW1vdmUgZW50cnksIHJldHVybiB0cnVlIGlmIHRoZXJlIGFyZSBtb3JlIGVudHJpZXMgdG8gZ28uICovCi1leHRlcm4gaW50IHJlbW92ZV9pbmRleF9lbnRyeV9hdChzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgaW50IHBvcyk7CitpbnQgcmVtb3ZlX2luZGV4X2VudHJ5X2F0KHN0cnVjdCBpbmRleF9zdGF0ZSAqLCBpbnQgcG9zKTsKIAotZXh0ZXJuIHZvaWQgcmVtb3ZlX21hcmtlZF9jYWNoZV9lbnRyaWVzKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKTsKLWV4dGVybiBpbnQgcmVtb3ZlX2ZpbGVfZnJvbV9pbmRleChzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgY29uc3QgY2hhciAqcGF0aCk7Cit2b2lkIHJlbW92ZV9tYXJrZWRfY2FjaGVfZW50cmllcyhzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgaW50IGludmFsaWRhdGUpOworaW50IHJlbW92ZV9maWxlX2Zyb21faW5kZXgoc3RydWN0IGluZGV4X3N0YXRlICosIGNvbnN0IGNoYXIgKnBhdGgpOwogI2RlZmluZSBBRERfQ0FDSEVfVkVSQk9TRSAxCiAjZGVmaW5lIEFERF9DQUNIRV9QUkVURU5EIDIKICNkZWZpbmUgQUREX0NBQ0hFX0lHTk9SRV9FUlJPUlMJNApAQCAtNzY3LDE0ICs4MjUsMTQgQEAKICAqIHRoZSBsYXR0ZXIgd2lsbCBkbyBuZWNlc3NhcnkgbHN0YXQoMikgaW50ZXJuYWxseSBiZWZvcmUKICAqIGNhbGxpbmcgdGhlIGZvcm1lci4KICAqLwotZXh0ZXJuIGludCBhZGRfdG9faW5kZXgoc3RydWN0IGluZGV4X3N0YXRlICosIGNvbnN0IGNoYXIgKnBhdGgsIHN0cnVjdCBzdGF0ICosIGludCBmbGFncyk7Ci1leHRlcm4gaW50IGFkZF9maWxlX3RvX2luZGV4KHN0cnVjdCBpbmRleF9zdGF0ZSAqLCBjb25zdCBjaGFyICpwYXRoLCBpbnQgZmxhZ3MpOworaW50IGFkZF90b19pbmRleChzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgY29uc3QgY2hhciAqcGF0aCwgc3RydWN0IHN0YXQgKiwgaW50IGZsYWdzKTsKK2ludCBhZGRfZmlsZV90b19pbmRleChzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgY29uc3QgY2hhciAqcGF0aCwgaW50IGZsYWdzKTsKIAotZXh0ZXJuIGludCBjaG1vZF9pbmRleF9lbnRyeShzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSwgY2hhciBmbGlwKTsKLWV4dGVybiBpbnQgY2Vfc2FtZV9uYW1lKGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqYSwgY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICpiKTsKLWV4dGVybiB2b2lkIHNldF9vYmplY3RfbmFtZV9mb3JfaW50ZW50X3RvX2FkZF9lbnRyeShzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlKTsKLWV4dGVybiBpbnQgaW5kZXhfbmFtZV9pc19vdGhlcihjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgY29uc3QgY2hhciAqLCBpbnQpOwotZXh0ZXJuIHZvaWQgKnJlYWRfYmxvYl9kYXRhX2Zyb21faW5kZXgoY29uc3Qgc3RydWN0IGluZGV4X3N0YXRlICosIGNvbnN0IGNoYXIgKiwgdW5zaWduZWQgbG9uZyAqKTsKK2ludCBjaG1vZF9pbmRleF9lbnRyeShzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSwgY2hhciBmbGlwKTsKK2ludCBjZV9zYW1lX25hbWUoY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICphLCBjb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmIpOwordm9pZCBzZXRfb2JqZWN0X25hbWVfZm9yX2ludGVudF90b19hZGRfZW50cnkoc3RydWN0IGNhY2hlX2VudHJ5ICpjZSk7CitpbnQgaW5kZXhfbmFtZV9pc19vdGhlcihjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgY29uc3QgY2hhciAqLCBpbnQpOwordm9pZCAqcmVhZF9ibG9iX2RhdGFfZnJvbV9pbmRleChjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgY29uc3QgY2hhciAqLCB1bnNpZ25lZCBsb25nICopOwogCiAvKiBkbyBzdGF0IGNvbXBhcmlzb24gZXZlbiBpZiBDRV9WQUxJRCBpcyB0cnVlICovCiAjZGVmaW5lIENFX01BVENIX0lHTk9SRV9WQUxJRAkJMDEKQEAgLTc4OCwyMiArODQ2LDIyIEBACiAjZGVmaW5lIENFX01BVENIX1JFRlJFU0gJCTB4MTAKIC8qIGRvbid0IHJlZnJlc2hfZnNtb25pdG9yIHN0YXRlIG9yIGRvIHN0YXQgY29tcGFyaXNvbiBldmVuIGlmIENFX0ZTTU9OSVRPUl9WQUxJRCBpcyB0cnVlICovCiAjZGVmaW5lIENFX01BVENIX0lHTk9SRV9GU01PTklUT1IgMFgyMAotZXh0ZXJuIGludCBpc19yYWN5X3RpbWVzdGFtcChjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKLQkJCSAgICAgY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSk7Ci1leHRlcm4gaW50IGllX21hdGNoX3N0YXQoc3RydWN0IGluZGV4X3N0YXRlICosIGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqLCBzdHJ1Y3Qgc3RhdCAqLCB1bnNpZ25lZCBpbnQpOwotZXh0ZXJuIGludCBpZV9tb2RpZmllZChzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICosIHN0cnVjdCBzdGF0ICosIHVuc2lnbmVkIGludCk7CitpbnQgaXNfcmFjeV90aW1lc3RhbXAoY29uc3Qgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCisJCSAgICAgIGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UpOworaW50IGllX21hdGNoX3N0YXQoc3RydWN0IGluZGV4X3N0YXRlICosIGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqLCBzdHJ1Y3Qgc3RhdCAqLCB1bnNpZ25lZCBpbnQpOworaW50IGllX21vZGlmaWVkKHN0cnVjdCBpbmRleF9zdGF0ZSAqLCBjb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKiwgc3RydWN0IHN0YXQgKiwgdW5zaWduZWQgaW50KTsKIAogI2RlZmluZSBIQVNIX1dSSVRFX09CSkVDVCAxCiAjZGVmaW5lIEhBU0hfRk9STUFUX0NIRUNLIDIKICNkZWZpbmUgSEFTSF9SRU5PUk1BTElaRSAgNAotZXh0ZXJuIGludCBpbmRleF9mZChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBpbnQgZmQsIHN0cnVjdCBzdGF0ICpzdCwgZW51bSBvYmplY3RfdHlwZSB0eXBlLCBjb25zdCBjaGFyICpwYXRoLCB1bnNpZ25lZCBmbGFncyk7Ci1leHRlcm4gaW50IGluZGV4X3BhdGgoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY29uc3QgY2hhciAqcGF0aCwgc3RydWN0IHN0YXQgKnN0LCB1bnNpZ25lZCBmbGFncyk7CitpbnQgaW5kZXhfZmQoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgaW50IGZkLCBzdHJ1Y3Qgc3RhdCAqc3QsIGVudW0gb2JqZWN0X3R5cGUgdHlwZSwgY29uc3QgY2hhciAqcGF0aCwgdW5zaWduZWQgZmxhZ3MpOworaW50IGluZGV4X3BhdGgoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY29uc3QgY2hhciAqcGF0aCwgc3RydWN0IHN0YXQgKnN0LCB1bnNpZ25lZCBmbGFncyk7CiAKIC8qCiAgKiBSZWNvcmQgdG8gc2QgdGhlIGRhdGEgZnJvbSBzdCB0aGF0IHdlIHVzZSB0byBjaGVjayB3aGV0aGVyIGEgZmlsZQogICogbWlnaHQgaGF2ZSBjaGFuZ2VkLgogICovCi1leHRlcm4gdm9pZCBmaWxsX3N0YXRfZGF0YShzdHJ1Y3Qgc3RhdF9kYXRhICpzZCwgc3RydWN0IHN0YXQgKnN0KTsKK3ZvaWQgZmlsbF9zdGF0X2RhdGEoc3RydWN0IHN0YXRfZGF0YSAqc2QsIHN0cnVjdCBzdGF0ICpzdCk7CiAKIC8qCiAgKiBSZXR1cm4gMCBpZiBzdCBpcyBjb25zaXN0ZW50IHdpdGggYSBmaWxlIG5vdCBoYXZpbmcgYmVlbiBjaGFuZ2VkCkBAIC04MTEsMTEgKzg2OSwxMSBAQAogICogY29tYmluYXRpb24gb2YgTVRJTUVfQ0hBTkdFRCwgQ1RJTUVfQ0hBTkdFRCwgT1dORVJfQ0hBTkdFRCwKICAqIElOT0RFX0NIQU5HRUQsIGFuZCBEQVRBX0NIQU5HRUQuCiAgKi8KLWV4dGVybiBpbnQgbWF0Y2hfc3RhdF9kYXRhKGNvbnN0IHN0cnVjdCBzdGF0X2RhdGEgKnNkLCBzdHJ1Y3Qgc3RhdCAqc3QpOwotZXh0ZXJuIGludCBtYXRjaF9zdGF0X2RhdGFfcmFjeShjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKLQkJCQljb25zdCBzdHJ1Y3Qgc3RhdF9kYXRhICpzZCwgc3RydWN0IHN0YXQgKnN0KTsKK2ludCBtYXRjaF9zdGF0X2RhdGEoY29uc3Qgc3RydWN0IHN0YXRfZGF0YSAqc2QsIHN0cnVjdCBzdGF0ICpzdCk7CitpbnQgbWF0Y2hfc3RhdF9kYXRhX3JhY3koY29uc3Qgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCisJCQkgY29uc3Qgc3RydWN0IHN0YXRfZGF0YSAqc2QsIHN0cnVjdCBzdGF0ICpzdCk7CiAKLWV4dGVybiB2b2lkIGZpbGxfc3RhdF9jYWNoZV9pbmZvKHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UsIHN0cnVjdCBzdGF0ICpzdCk7Cit2b2lkIGZpbGxfc3RhdF9jYWNoZV9pbmZvKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlLCBzdHJ1Y3Qgc3RhdCAqc3QpOwogCiAjZGVmaW5lIFJFRlJFU0hfUkVBTExZCQkweDAwMDEJLyogaWdub3JlX3ZhbGlkICovCiAjZGVmaW5lIFJFRlJFU0hfVU5NRVJHRUQJMHgwMDAyCS8qIGFsbG93IHVubWVyZ2VkICovCkBAIC04MjQsMTcgKzg4MiwyNyBAQAogI2RlZmluZSBSRUZSRVNIX0lHTk9SRV9TVUJNT0RVTEVTCTB4MDAxMAkvKiBpZ25vcmUgc3VibW9kdWxlcyAqLwogI2RlZmluZSBSRUZSRVNIX0lOX1BPUkNFTEFJTgkweDAwMjAJLyogdXNlciBmcmllbmRseSBvdXRwdXQsIG5vdCAibmVlZHMgdXBkYXRlIiAqLwogI2RlZmluZSBSRUZSRVNIX1BST0dSRVNTCTB4MDA0MCAgLyogc2hvdyBwcm9ncmVzcyBiYXIgaWYgc3RkZXJyIGlzIHR0eSAqLwotZXh0ZXJuIGludCByZWZyZXNoX2luZGV4KHN0cnVjdCBpbmRleF9zdGF0ZSAqLCB1bnNpZ25lZCBpbnQgZmxhZ3MsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsIGNoYXIgKnNlZW4sIGNvbnN0IGNoYXIgKmhlYWRlcl9tc2cpOwotZXh0ZXJuIHN0cnVjdCBjYWNoZV9lbnRyeSAqcmVmcmVzaF9jYWNoZV9lbnRyeShzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgc3RydWN0IGNhY2hlX2VudHJ5ICosIHVuc2lnbmVkIGludCk7Ci0KK2ludCByZWZyZXNoX2luZGV4KHN0cnVjdCBpbmRleF9zdGF0ZSAqLCB1bnNpZ25lZCBpbnQgZmxhZ3MsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsIGNoYXIgKnNlZW4sIGNvbnN0IGNoYXIgKmhlYWRlcl9tc2cpOwogLyoKLSAqIE9wcG9ydHVuaXN0aWNhbGx5IHVwZGF0ZSB0aGUgaW5kZXggYnV0IGRvIG5vdCBjb21wbGFpbiBpZiB3ZSBjYW4ndC4KLSAqIFRoZSBsb2NrZmlsZSBpcyBhbHdheXMgY29tbWl0dGVkIG9yIHJvbGxlZCBiYWNrLgorICogUmVmcmVzaCB0aGUgaW5kZXggYW5kIHdyaXRlIGl0IHRvIGRpc2suCisgKgorICogJ3JlZnJlc2hfZmxhZ3MnIGlzIHBhc3NlZCBkaXJlY3RseSB0byAncmVmcmVzaF9pbmRleCgpJywgd2hpbGUKKyAqICdDT01NSVRfTE9DSyB8IHdyaXRlX2ZsYWdzJyBpcyBwYXNzZWQgdG8gJ3dyaXRlX2xvY2tlZF9pbmRleCgpJywgc28KKyAqIHRoZSBsb2NrZmlsZSBpcyBhbHdheXMgZWl0aGVyIGNvbW1pdHRlZCBvciByb2xsZWQgYmFjay4KKyAqCisgKiBJZiAnZ2VudGxlJyBpcyBwYXNzZWQsIGVycm9ycyBsb2NraW5nIHRoZSBpbmRleCBhcmUgaWdub3JlZC4KKyAqCisgKiBSZXR1cm4gMSBpZiByZWZyZXNoaW5nIHRoZSBpbmRleCByZXR1cm5zIGFuIGVycm9yLCAtMSBpZiB3cml0aW5nCisgKiB0aGUgaW5kZXggdG8gZGlzayBmYWlscywgMCBvbiBzdWNjZXNzLgorICoKKyAqIE5vdGUgdGhhdCBpZiByZWZyZXNoaW5nIHRoZSBpbmRleCByZXR1cm5zIGFuIGVycm9yLCB3ZSBzdGlsbCB3cml0ZQorICogb3V0IHRoZSBpbmRleCAodW5sZXNzIGxvY2tpbmcgZmFpbHMpLgogICovCi1leHRlcm4gdm9pZCB1cGRhdGVfaW5kZXhfaWZfYWJsZShzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgc3RydWN0IGxvY2tfZmlsZSAqKTsKK2ludCByZXBvX3JlZnJlc2hfYW5kX3dyaXRlX2luZGV4KHN0cnVjdCByZXBvc2l0b3J5KiwgdW5zaWduZWQgaW50IHJlZnJlc2hfZmxhZ3MsIHVuc2lnbmVkIGludCB3cml0ZV9mbGFncywgaW50IGdlbnRsZSwgY29uc3Qgc3RydWN0IHBhdGhzcGVjICosIGNoYXIgKnNlZW4sIGNvbnN0IGNoYXIgKmhlYWRlcl9tc2cpOwogCi1leHRlcm4gaW50IGhvbGRfbG9ja2VkX2luZGV4KHN0cnVjdCBsb2NrX2ZpbGUgKiwgaW50KTsKLWV4dGVybiB2b2lkIHNldF9hbHRlcm5hdGVfaW5kZXhfb3V0cHV0KGNvbnN0IGNoYXIgKik7CitzdHJ1Y3QgY2FjaGVfZW50cnkgKnJlZnJlc2hfY2FjaGVfZW50cnkoc3RydWN0IGluZGV4X3N0YXRlICosIHN0cnVjdCBjYWNoZV9lbnRyeSAqLCB1bnNpZ25lZCBpbnQpOworCit2b2lkIHNldF9hbHRlcm5hdGVfaW5kZXhfb3V0cHV0KGNvbnN0IGNoYXIgKik7CiAKIGV4dGVybiBpbnQgdmVyaWZ5X2luZGV4X2NoZWNrc3VtOwogZXh0ZXJuIGludCB2ZXJpZnlfY2Vfb3JkZXI7CkBAIC04ODUsMTIgKzk1MywxNCBAQAogCiBleHRlcm4gaW50IGZzeW5jX29iamVjdF9maWxlczsKIGV4dGVybiBpbnQgY29yZV9wcmVsb2FkX2luZGV4OwotZXh0ZXJuIGludCBjb3JlX2FwcGx5X3NwYXJzZV9jaGVja291dDsKIGV4dGVybiBpbnQgcHJlY29tcG9zZWRfdW5pY29kZTsKIGV4dGVybiBpbnQgcHJvdGVjdF9oZnM7CiBleHRlcm4gaW50IHByb3RlY3RfbnRmczsKIGV4dGVybiBjb25zdCBjaGFyICpjb3JlX2ZzbW9uaXRvcjsKIAorZXh0ZXJuIGludCBjb3JlX2FwcGx5X3NwYXJzZV9jaGVja291dDsKK2V4dGVybiBpbnQgY29yZV9zcGFyc2VfY2hlY2tvdXRfY29uZTsKKwogLyoKICAqIEluY2x1ZGUgYnJva2VuIHJlZnMgaW4gYWxsIHJlZiBpdGVyYXRpb25zLCB3aGljaCB3aWxsCiAgKiBnZW5lcmFsbHkgY2hva2UgZGFuZ2Vyb3VzIG9wZXJhdGlvbnMgcmF0aGVyIHRoYW4gbGV0dGluZwpAQCAtOTU3LDEwICsxMDI3LDEyIEBACiAjZGVmaW5lIEdJVF9SRVBPX1ZFUlNJT04gMAogI2RlZmluZSBHSVRfUkVQT19WRVJTSU9OX1JFQUQgMQogZXh0ZXJuIGludCByZXBvc2l0b3J5X2Zvcm1hdF9wcmVjaW91c19vYmplY3RzOwotZXh0ZXJuIGNoYXIgKnJlcG9zaXRvcnlfZm9ybWF0X3BhcnRpYWxfY2xvbmU7Ci1leHRlcm4gY29uc3QgY2hhciAqY29yZV9wYXJ0aWFsX2Nsb25lX2ZpbHRlcl9kZWZhdWx0OwogZXh0ZXJuIGludCByZXBvc2l0b3J5X2Zvcm1hdF93b3JrdHJlZV9jb25maWc7CiAKKy8qCisgKiBZb3UgX2hhdmVfIHRvIGluaXRpYWxpemUgYSBgc3RydWN0IHJlcG9zaXRvcnlfZm9ybWF0YCB1c2luZworICogYD0gUkVQT1NJVE9SWV9GT1JNQVRfSU5JVGAgYmVmb3JlIGNhbGxpbmcgYHJlYWRfcmVwb3NpdG9yeV9mb3JtYXQoKWAuCisgKi8KIHN0cnVjdCByZXBvc2l0b3J5X2Zvcm1hdCB7CiAJaW50IHZlcnNpb247CiAJaW50IHByZWNpb3VzX29iamVjdHM7CkBAIC05NzMsMTQgKzEwNDUsMzUgQEAKIH07CiAKIC8qCisgKiBBbHdheXMgdXNlIHRoaXMgdG8gaW5pdGlhbGl6ZSBhIGBzdHJ1Y3QgcmVwb3NpdG9yeV9mb3JtYXRgCisgKiB0byBhIHdlbGwtZGVmaW5lZCwgZGVmYXVsdCBzdGF0ZSBiZWZvcmUgY2FsbGluZworICogYHJlYWRfcmVwb3NpdG9yeSgpYC4KKyAqLworI2RlZmluZSBSRVBPU0lUT1JZX0ZPUk1BVF9JTklUIFwKK3sgXAorCS52ZXJzaW9uID0gLTEsIFwKKwkuaXNfYmFyZSA9IC0xLCBcCisJLmhhc2hfYWxnbyA9IEdJVF9IQVNIX1NIQTEsIFwKKwkudW5rbm93bl9leHRlbnNpb25zID0gU1RSSU5HX0xJU1RfSU5JVF9EVVAsIFwKK30KKworLyoKICAqIFJlYWQgdGhlIHJlcG9zaXRvcnkgZm9ybWF0IGNoYXJhY3RlcmlzdGljcyBmcm9tIHRoZSBjb25maWcgZmlsZSAicGF0aCIgaW50bwotICogImZvcm1hdCIgc3RydWN0LiBSZXR1cm5zIHRoZSBudW1lcmljIHZlcnNpb24uIE9uIGVycm9yLCAtMSBpcyByZXR1cm5lZCwKLSAqIGZvcm1hdC0+dmVyc2lvbiBpcyBzZXQgdG8gLTEsIGFuZCBhbGwgb3RoZXIgZmllbGRzIGluIHRoZSBzdHJ1Y3QgYXJlCi0gKiB1bmRlZmluZWQuCisgKiAiZm9ybWF0IiBzdHJ1Y3QuIFJldHVybnMgdGhlIG51bWVyaWMgdmVyc2lvbi4gT24gZXJyb3IsIG9yIGlmIG5vIHZlcnNpb24gaXMKKyAqIGZvdW5kIGluIHRoZSBjb25maWd1cmF0aW9uLCAtMSBpcyByZXR1cm5lZCwgZm9ybWF0LT52ZXJzaW9uIGlzIHNldCB0byAtMSwKKyAqIGFuZCBhbGwgb3RoZXIgZmllbGRzIGluIHRoZSBzdHJ1Y3QgYXJlIHNldCB0byB0aGUgZGVmYXVsdCBjb25maWd1cmF0aW9uCisgKiAoUkVQT1NJVE9SWV9GT1JNQVRfSU5JVCkuIEFsd2F5cyBpbml0aWFsaXplIHRoZSBzdHJ1Y3QgdXNpbmcKKyAqIFJFUE9TSVRPUllfRk9STUFUX0lOSVQgYmVmb3JlIGNhbGxpbmcgdGhpcyBmdW5jdGlvbi4KICAqLwogaW50IHJlYWRfcmVwb3NpdG9yeV9mb3JtYXQoc3RydWN0IHJlcG9zaXRvcnlfZm9ybWF0ICpmb3JtYXQsIGNvbnN0IGNoYXIgKnBhdGgpOwogCiAvKgorICogRnJlZSB0aGUgbWVtb3J5IGhlbGQgb250byBieSBgZm9ybWF0YCwgYnV0IG5vdCB0aGUgc3RydWN0IGl0c2VsZi4KKyAqIChObyBuZWVkIHRvIHVzZSB0aGlzIGFmdGVyIGByZWFkX3JlcG9zaXRvcnlfZm9ybWF0KClgIGZhaWxzLikKKyAqLwordm9pZCBjbGVhcl9yZXBvc2l0b3J5X2Zvcm1hdChzdHJ1Y3QgcmVwb3NpdG9yeV9mb3JtYXQgKmZvcm1hdCk7CisKKy8qCiAgKiBWZXJpZnkgdGhhdCB0aGUgcmVwb3NpdG9yeSBkZXNjcmliZWQgYnkgcmVwb3NpdG9yeV9mb3JtYXQgaXMgc29tZXRoaW5nIHdlCiAgKiBjYW4gcmVhZC4gSWYgaXQgaXMsIHJldHVybiAwLiBPdGhlcndpc2UsIHJldHVybiAtMSwgYW5kICJlcnIiIHdpbGwgZGVzY3JpYmUKICAqIGFueSBlcnJvcnMgZW5jb3VudGVyZWQuCkBAIC05OTQsNyArMTA4Nyw3IEBACiAgKiBzZXRfZ2l0X2RpcigpIGJlZm9yZSBjYWxsaW5nIHRoaXMsIGFuZCB1c2UgaXQgb25seSBmb3IgImFyZSB3ZSBpbiBhIHZhbGlkCiAgKiByZXBvPyIuCiAgKi8KLWV4dGVybiB2b2lkIGNoZWNrX3JlcG9zaXRvcnlfZm9ybWF0KHZvaWQpOwordm9pZCBjaGVja19yZXBvc2l0b3J5X2Zvcm1hdCh2b2lkKTsKIAogI2RlZmluZSBNVElNRV9DSEFOR0VECTB4MDAwMQogI2RlZmluZSBDVElNRV9DSEFOR0VECTB4MDAwMgpAQCAtMTAxOSwyNSArMTExMiwyMiBAQAogICogTm90ZSB0aGF0IHdoaWxlIHRoaXMgdmVyc2lvbiBhdm9pZHMgdGhlIHN0YXRpYyBidWZmZXIsIGl0IGlzIG5vdCBmdWxseQogICogcmVlbnRyYW50LCBhcyBpdCBjYWxscyBpbnRvIG90aGVyIG5vbi1yZWVudHJhbnQgZ2l0IGNvZGUuCiAgKi8KLWV4dGVybiBjb25zdCBjaGFyICpmaW5kX3VuaXF1ZV9hYmJyZXYoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBpbnQgbGVuKTsKLWV4dGVybiBpbnQgZmluZF91bmlxdWVfYWJicmV2X3IoY2hhciAqaGV4LCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGludCBsZW4pOworY29uc3QgY2hhciAqcmVwb19maW5kX3VuaXF1ZV9hYmJyZXYoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgaW50IGxlbik7CisjZGVmaW5lIGZpbmRfdW5pcXVlX2FiYnJldihvaWQsIGxlbikgcmVwb19maW5kX3VuaXF1ZV9hYmJyZXYodGhlX3JlcG9zaXRvcnksIG9pZCwgbGVuKQoraW50IHJlcG9fZmluZF91bmlxdWVfYWJicmV2X3Ioc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNoYXIgKmhleCwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBpbnQgbGVuKTsKKyNkZWZpbmUgZmluZF91bmlxdWVfYWJicmV2X3IoaGV4LCBvaWQsIGxlbikgcmVwb19maW5kX3VuaXF1ZV9hYmJyZXZfcih0aGVfcmVwb3NpdG9yeSwgaGV4LCBvaWQsIGxlbikKIAotZXh0ZXJuIGNvbnN0IHVuc2lnbmVkIGNoYXIgbnVsbF9zaGExW0dJVF9NQVhfUkFXU1pdOwogZXh0ZXJuIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgbnVsbF9vaWQ7CiAKIHN0YXRpYyBpbmxpbmUgaW50IGhhc2hjbXAoY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMikKIHsKIAkvKgotCSAqIFRoaXMgaXMgYSB0ZW1wb3Jhcnkgb3B0aW1pemF0aW9uIGhhY2suIEJ5IGFzc2VydGluZyB0aGUgc2l6ZSBoZXJlLAotCSAqIHdlIGxldCB0aGUgY29tcGlsZXIga25vdyB0aGF0IGl0J3MgYWx3YXlzIGdvaW5nIHRvIGJlIDIwLCB3aGljaCBsZXRzCi0JICogaXQgdHVybiB0aGlzIGZpeGVkLXNpemUgbWVtY21wIGludG8gYSBmZXcgaW5saW5lIGluc3RydWN0aW9ucy4KLQkgKgotCSAqIFRoaXMgd2lsbCBuZWVkIHRvIGJlIGV4dGVuZGVkIG9yIHJpcHBlZCBvdXQgd2hlbiB3ZSBsZWFybiBhYm91dAotCSAqIGhhc2hlcyBvZiBkaWZmZXJlbnQgc2l6ZXMuCisJICogVGVhY2ggdGhlIGNvbXBpbGVyIHRoYXQgdGhlcmUgYXJlIG9ubHkgdHdvIHBvc3NpYmlsaXRpZXMgb2YgaGFzaCBzaXplCisJICogaGVyZSwgc28gdGhhdCBpdCBjYW4gb3B0aW1pemUgZm9yIHRoaXMgY2FzZSBhcyBtdWNoIGFzIHBvc3NpYmxlLgogCSAqLwotCWlmICh0aGVfaGFzaF9hbGdvLT5yYXdzeiAhPSAyMCkKLQkJQlVHKCJoYXNoIHNpemUgbm90IHlldCBzdXBwb3J0ZWQgYnkgaGFzaGNtcCIpOwotCXJldHVybiBtZW1jbXAoc2hhMSwgc2hhMiwgdGhlX2hhc2hfYWxnby0+cmF3c3opOworCWlmICh0aGVfaGFzaF9hbGdvLT5yYXdzeiA9PSBHSVRfTUFYX1JBV1NaKQorCQlyZXR1cm4gbWVtY21wKHNoYTEsIHNoYTIsIEdJVF9NQVhfUkFXU1opOworCXJldHVybiBtZW1jbXAoc2hhMSwgc2hhMiwgR0lUX1NIQTFfUkFXU1opOwogfQogCiBzdGF0aWMgaW5saW5lIGludCBvaWRjbXAoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkMSwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkMikKQEAgLTEwNDcsNyArMTEzNywxMyBAQAogCiBzdGF0aWMgaW5saW5lIGludCBoYXNoZXEoY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMikKIHsKLQlyZXR1cm4gIWhhc2hjbXAoc2hhMSwgc2hhMik7CisJLyoKKwkgKiBXZSB3cml0ZSB0aGlzIGhlcmUgaW5zdGVhZCBvZiBkZWZlcnJpbmcgdG8gaGFzaGNtcCBzbyB0aGF0IHRoZQorCSAqIGNvbXBpbGVyIGNhbiBwcm9wZXJseSBpbmxpbmUgaXQgYW5kIGF2b2lkIGNhbGxpbmcgbWVtY21wLgorCSAqLworCWlmICh0aGVfaGFzaF9hbGdvLT5yYXdzeiA9PSBHSVRfTUFYX1JBV1NaKQorCQlyZXR1cm4gIW1lbWNtcChzaGExLCBzaGEyLCBHSVRfTUFYX1JBV1NaKTsKKwlyZXR1cm4gIW1lbWNtcChzaGExLCBzaGEyLCBHSVRfU0hBMV9SQVdTWik7CiB9CiAKIHN0YXRpYyBpbmxpbmUgaW50IG9pZGVxKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZDEsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZDIpCkBAIC0xMDU1LDE0ICsxMTUxLDkgQEAKIAlyZXR1cm4gaGFzaGVxKG9pZDEtPmhhc2gsIG9pZDItPmhhc2gpOwogfQogCi1zdGF0aWMgaW5saW5lIGludCBpc19udWxsX3NoYTEoY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSkKLXsKLQlyZXR1cm4gaGFzaGVxKHNoYTEsIG51bGxfc2hhMSk7Ci19Ci0KIHN0YXRpYyBpbmxpbmUgaW50IGlzX251bGxfb2lkKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKLQlyZXR1cm4gaGFzaGVxKG9pZC0+aGFzaCwgbnVsbF9zaGExKTsKKwlyZXR1cm4gb2lkZXEob2lkLCAmbnVsbF9vaWQpOwogfQogCiBzdGF0aWMgaW5saW5lIHZvaWQgaGFzaGNweSh1bnNpZ25lZCBjaGFyICpzaGFfZHN0LCBjb25zdCB1bnNpZ25lZCBjaGFyICpzaGFfc3JjKQpAQCAtMTA3Miw3ICsxMTYzLDcgQEAKIAogc3RhdGljIGlubGluZSB2b2lkIG9pZGNweShzdHJ1Y3Qgb2JqZWN0X2lkICpkc3QsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKnNyYykKIHsKLQloYXNoY3B5KGRzdC0+aGFzaCwgc3JjLT5oYXNoKTsKKwltZW1jcHkoZHN0LT5oYXNoLCBzcmMtPmhhc2gsIEdJVF9NQVhfUkFXU1opOwogfQogCiBzdGF0aWMgaW5saW5lIHN0cnVjdCBvYmplY3RfaWQgKm9pZGR1cChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpzcmMpCkBAIC0xMjE0LDcgKzEzMDUsNyBAQAogaW50IHJhY2Vwcm9vZl9jcmVhdGVfZmlsZShjb25zdCBjaGFyICpwYXRoLCBjcmVhdGVfZmlsZV9mbiBmbiwgdm9pZCAqY2IpOwogCiBpbnQgbWtkaXJfaW5fZ2l0ZGlyKGNvbnN0IGNoYXIgKnBhdGgpOwotZXh0ZXJuIGNoYXIgKmV4cGFuZF91c2VyX3BhdGgoY29uc3QgY2hhciAqcGF0aCwgaW50IHJlYWxfaG9tZSk7CitjaGFyICpleHBhbmRfdXNlcl9wYXRoKGNvbnN0IGNoYXIgKnBhdGgsIGludCByZWFsX2hvbWUpOwogY29uc3QgY2hhciAqZW50ZXJfcmVwbyhjb25zdCBjaGFyICpwYXRoLCBpbnQgc3RyaWN0KTsKIHN0YXRpYyBpbmxpbmUgaW50IGlzX2Fic29sdXRlX3BhdGgoY29uc3QgY2hhciAqcGF0aCkKIHsKQEAgLTEyMjMsOCArMTMxNCw2IEBACiBpbnQgaXNfZGlyZWN0b3J5KGNvbnN0IGNoYXIgKik7CiBjaGFyICpzdHJidWZfcmVhbHBhdGgoc3RydWN0IHN0cmJ1ZiAqcmVzb2x2ZWQsIGNvbnN0IGNoYXIgKnBhdGgsCiAJCSAgICAgIGludCBkaWVfb25fZXJyb3IpOwotY29uc3QgY2hhciAqcmVhbF9wYXRoKGNvbnN0IGNoYXIgKnBhdGgpOwotY29uc3QgY2hhciAqcmVhbF9wYXRoX2lmX3ZhbGlkKGNvbnN0IGNoYXIgKnBhdGgpOwogY2hhciAqcmVhbF9wYXRoZHVwKGNvbnN0IGNoYXIgKnBhdGgsIGludCBkaWVfb25fZXJyb3IpOwogY29uc3QgY2hhciAqYWJzb2x1dGVfcGF0aChjb25zdCBjaGFyICpwYXRoKTsKIGNoYXIgKmFic29sdXRlX3BhdGhkdXAoY29uc3QgY2hhciAqcGF0aCk7CkBAIC0xMjU4LDI2ICsxMzQ3LDI3IEBACiAgKiAiJFhER19DT05GSUdfSE9NRS9naXQvJGZpbGVuYW1lIiBpZiAkWERHX0NPTkZJR19IT01FIGlzIG5vbi1lbXB0eSwgb3RoZXJ3aXNlCiAgKiAiJEhPTUUvLmNvbmZpZy9naXQvJGZpbGVuYW1lIi4gUmV0dXJuIE5VTEwgdXBvbiBlcnJvci4KICAqLwotZXh0ZXJuIGNoYXIgKnhkZ19jb25maWdfaG9tZShjb25zdCBjaGFyICpmaWxlbmFtZSk7CitjaGFyICp4ZGdfY29uZmlnX2hvbWUoY29uc3QgY2hhciAqZmlsZW5hbWUpOwogCiAvKioKICAqIFJldHVybiBhIG5ld2x5IGFsbG9jYXRlZCBzdHJpbmcgd2l0aCB0aGUgZXZhbHVhdGlvbiBvZgogICogIiRYREdfQ0FDSEVfSE9NRS9naXQvJGZpbGVuYW1lIiBpZiAkWERHX0NBQ0hFX0hPTUUgaXMgbm9uLWVtcHR5LCBvdGhlcndpc2UKICAqICIkSE9NRS8uY2FjaGUvZ2l0LyRmaWxlbmFtZSIuIFJldHVybiBOVUxMIHVwb24gZXJyb3IuCiAgKi8KLWV4dGVybiBjaGFyICp4ZGdfY2FjaGVfaG9tZShjb25zdCBjaGFyICpmaWxlbmFtZSk7CitjaGFyICp4ZGdfY2FjaGVfaG9tZShjb25zdCBjaGFyICpmaWxlbmFtZSk7CiAKLWV4dGVybiBpbnQgZ2l0X29wZW5fY2xvZXhlYyhjb25zdCBjaGFyICpuYW1lLCBpbnQgZmxhZ3MpOworaW50IGdpdF9vcGVuX2Nsb2V4ZWMoY29uc3QgY2hhciAqbmFtZSwgaW50IGZsYWdzKTsKICNkZWZpbmUgZ2l0X29wZW4obmFtZSkgZ2l0X29wZW5fY2xvZXhlYyhuYW1lLCBPX1JET05MWSkKLWV4dGVybiBpbnQgdW5wYWNrX3NoYTFfaGVhZGVyKGdpdF96c3RyZWFtICpzdHJlYW0sIHVuc2lnbmVkIGNoYXIgKm1hcCwgdW5zaWduZWQgbG9uZyBtYXBzaXplLCB2b2lkICpidWZmZXIsIHVuc2lnbmVkIGxvbmcgYnVmc2l6KTsKLWV4dGVybiBpbnQgcGFyc2Vfc2hhMV9oZWFkZXIoY29uc3QgY2hhciAqaGRyLCB1bnNpZ25lZCBsb25nICpzaXplcCk7CitpbnQgdW5wYWNrX2xvb3NlX2hlYWRlcihnaXRfenN0cmVhbSAqc3RyZWFtLCB1bnNpZ25lZCBjaGFyICptYXAsIHVuc2lnbmVkIGxvbmcgbWFwc2l6ZSwgdm9pZCAqYnVmZmVyLCB1bnNpZ25lZCBsb25nIGJ1ZnNpeik7CitpbnQgcGFyc2VfbG9vc2VfaGVhZGVyKGNvbnN0IGNoYXIgKmhkciwgdW5zaWduZWQgbG9uZyAqc2l6ZXApOwogCi1leHRlcm4gaW50IGNoZWNrX29iamVjdF9zaWduYXR1cmUoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCB2b2lkICpidWYsIHVuc2lnbmVkIGxvbmcgc2l6ZSwgY29uc3QgY2hhciAqdHlwZSk7CitpbnQgY2hlY2tfb2JqZWN0X3NpZ25hdHVyZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJICAgdm9pZCAqYnVmLCB1bnNpZ25lZCBsb25nIHNpemUsIGNvbnN0IGNoYXIgKnR5cGUpOwogCi1leHRlcm4gaW50IGZpbmFsaXplX29iamVjdF9maWxlKGNvbnN0IGNoYXIgKnRtcGZpbGUsIGNvbnN0IGNoYXIgKmZpbGVuYW1lKTsKK2ludCBmaW5hbGl6ZV9vYmplY3RfZmlsZShjb25zdCBjaGFyICp0bXBmaWxlLCBjb25zdCBjaGFyICpmaWxlbmFtZSk7CiAKIC8qIEhlbHBlciB0byBjaGVjayBhbmQgInRvdWNoIiBhIGZpbGUgKi8KLWV4dGVybiBpbnQgY2hlY2tfYW5kX2ZyZXNoZW5fZmlsZShjb25zdCBjaGFyICpmbiwgaW50IGZyZXNoZW4pOworaW50IGNoZWNrX2FuZF9mcmVzaGVuX2ZpbGUoY29uc3QgY2hhciAqZm4sIGludCBmcmVzaGVuKTsKIAogZXh0ZXJuIGNvbnN0IHNpZ25lZCBjaGFyIGhleHZhbF90YWJsZVsyNTZdOwogc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgaGV4dmFsKHVuc2lnbmVkIGNoYXIgYykKQEAgLTEzMDMsNyArMTM5Myw3IEBACiAjZGVmaW5lIEZBTExCQUNLX0RFRkFVTFRfQUJCUkVWIDcKIAogc3RydWN0IG9iamVjdF9jb250ZXh0IHsKLQl1bnNpZ25lZCBtb2RlOworCXVuc2lnbmVkIHNob3J0IG1vZGU7CiAJLyoKIAkgKiBzeW1saW5rX3BhdGggaXMgb25seSB1c2VkIGJ5IGdldF90cmVlX2VudHJ5X2ZvbGxvd19zeW1saW5rcywKIAkgKiBhbmQgb25seSBmb3Igc3ltbGlua3MgdGhhdCBwb2ludCBvdXRzaWRlIHRoZSByZXBvc2l0b3J5LgpAQCAtMTMzMiwyMCArMTQyMiw1MiBAQAogCUdFVF9PSURfVFJFRSB8IEdFVF9PSURfVFJFRUlTSCB8IFwKIAlHRVRfT0lEX0JMT0IpCiAKLWV4dGVybiBpbnQgZ2V0X29pZChjb25zdCBjaGFyICpzdHIsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7Ci1leHRlcm4gaW50IGdldF9vaWRfY29tbWl0KGNvbnN0IGNoYXIgKnN0ciwgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKLWV4dGVybiBpbnQgZ2V0X29pZF9jb21taXR0aXNoKGNvbnN0IGNoYXIgKnN0ciwgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKLWV4dGVybiBpbnQgZ2V0X29pZF90cmVlKGNvbnN0IGNoYXIgKnN0ciwgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKLWV4dGVybiBpbnQgZ2V0X29pZF90cmVlaXNoKGNvbnN0IGNoYXIgKnN0ciwgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKLWV4dGVybiBpbnQgZ2V0X29pZF9ibG9iKGNvbnN0IGNoYXIgKnN0ciwgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKLWV4dGVybiB2b2lkIG1heWJlX2RpZV9vbl9taXNzcGVsdF9vYmplY3RfbmFtZShjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCBnZXRfb2lkX3dpdGhfY29udGV4dChjb25zdCBjaGFyICpzdHIsIHVuc2lnbmVkIGZsYWdzLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHN0cnVjdCBvYmplY3RfY29udGV4dCAqb2MpOworZW51bSBnZXRfb2lkX3Jlc3VsdCB7CisJRk9VTkQgPSAwLAorCU1JU1NJTkdfT0JKRUNUID0gLTEsIC8qIFRoZSByZXF1ZXN0ZWQgb2JqZWN0IGlzIG1pc3NpbmcgKi8KKwlTSE9SVF9OQU1FX0FNQklHVU9VUyA9IC0yLAorCS8qIFRoZSBmb2xsb3dpbmcgb25seSBhcHBseSB3aGVuIHN5bWxpbmtzIGFyZSBmb2xsb3dlZCAqLworCURBTkdMSU5HX1NZTUxJTksgPSAtNCwgLyoKKwkJCQkqIFRoZSBpbml0aWFsIHN5bWxpbmsgaXMgdGhlcmUsIGJ1dAorCQkJCSogKHRyYW5zaXRpdmVseSkgcG9pbnRzIHRvIGEgbWlzc2luZworCQkJCSogaW4tdHJlZSBmaWxlCisJCQkJKi8KKwlTWU1MSU5LX0xPT1AgPSAtNSwKKwlOT1RfRElSID0gLTYsIC8qCisJCSAgICAgICAqIFNvbWV3aGVyZSBhbG9uZyB0aGUgc3ltbGluayBjaGFpbiwgYSBwYXRoIGlzCisJCSAgICAgICAqIHJlcXVlc3RlZCB3aGljaCBjb250YWlucyBhIGZpbGUgYXMgYQorCQkgICAgICAgKiBub24tZmluYWwgZWxlbWVudC4KKwkJICAgICAgICovCit9OwogCitpbnQgcmVwb19nZXRfb2lkKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpzdHIsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CitpbnQgZ2V0X29pZGYoc3RydWN0IG9iamVjdF9pZCAqb2lkLCBjb25zdCBjaGFyICpmbXQsIC4uLik7CitpbnQgcmVwb19nZXRfb2lkX2NvbW1pdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqc3RyLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOworaW50IHJlcG9fZ2V0X29pZF9jb21taXR0aXNoKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpzdHIsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CitpbnQgcmVwb19nZXRfb2lkX3RyZWUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKnN0ciwgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKK2ludCByZXBvX2dldF9vaWRfdHJlZWlzaChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqc3RyLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOworaW50IHJlcG9fZ2V0X29pZF9ibG9iKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpzdHIsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CitpbnQgcmVwb19nZXRfb2lkX21iKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpzdHIsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7Cit2b2lkIG1heWJlX2RpZV9vbl9taXNzcGVsdF9vYmplY3RfbmFtZShzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCQkgICAgICAgY29uc3QgY2hhciAqbmFtZSwKKwkJCQkgICAgICAgY29uc3QgY2hhciAqcHJlZml4KTsKK2VudW0gZ2V0X29pZF9yZXN1bHQgZ2V0X29pZF93aXRoX2NvbnRleHQoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIGNvbnN0IGNoYXIgKnN0ciwKKwkJCQkJIHVuc2lnbmVkIGZsYWdzLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkJCSBzdHJ1Y3Qgb2JqZWN0X2NvbnRleHQgKm9jKTsKKworI2RlZmluZSBnZXRfb2lkKHN0ciwgb2lkKQkJcmVwb19nZXRfb2lkKHRoZV9yZXBvc2l0b3J5LCBzdHIsIG9pZCkKKyNkZWZpbmUgZ2V0X29pZF9jb21taXQoc3RyLCBvaWQpCXJlcG9fZ2V0X29pZF9jb21taXQodGhlX3JlcG9zaXRvcnksIHN0ciwgb2lkKQorI2RlZmluZSBnZXRfb2lkX2NvbW1pdHRpc2goc3RyLCBvaWQpCXJlcG9fZ2V0X29pZF9jb21taXR0aXNoKHRoZV9yZXBvc2l0b3J5LCBzdHIsIG9pZCkKKyNkZWZpbmUgZ2V0X29pZF90cmVlKHN0ciwgb2lkKQkJcmVwb19nZXRfb2lkX3RyZWUodGhlX3JlcG9zaXRvcnksIHN0ciwgb2lkKQorI2RlZmluZSBnZXRfb2lkX3RyZWVpc2goc3RyLCBvaWQpCXJlcG9fZ2V0X29pZF90cmVlaXNoKHRoZV9yZXBvc2l0b3J5LCBzdHIsIG9pZCkKKyNkZWZpbmUgZ2V0X29pZF9ibG9iKHN0ciwgb2lkKQkJcmVwb19nZXRfb2lkX2Jsb2IodGhlX3JlcG9zaXRvcnksIHN0ciwgb2lkKQorI2RlZmluZSBnZXRfb2lkX21iKHN0ciwgb2lkKSAJCXJlcG9fZ2V0X29pZF9tYih0aGVfcmVwb3NpdG9yeSwgc3RyLCBvaWQpCiAKIHR5cGVkZWYgaW50IGVhY2hfYWJicmV2X2ZuKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgdm9pZCAqKTsKLWV4dGVybiBpbnQgZm9yX2VhY2hfYWJicmV2KGNvbnN0IGNoYXIgKnByZWZpeCwgZWFjaF9hYmJyZXZfZm4sIHZvaWQgKik7CitpbnQgcmVwb19mb3JfZWFjaF9hYmJyZXYoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKnByZWZpeCwgZWFjaF9hYmJyZXZfZm4sIHZvaWQgKik7CisjZGVmaW5lIGZvcl9lYWNoX2FiYnJldihwcmVmaXgsIGZuLCBkYXRhKSByZXBvX2Zvcl9lYWNoX2FiYnJldih0aGVfcmVwb3NpdG9yeSwgcHJlZml4LCBmbiwgZGF0YSkKIAotZXh0ZXJuIGludCBzZXRfZGlzYW1iaWd1YXRlX2hpbnRfY29uZmlnKGNvbnN0IGNoYXIgKnZhciwgY29uc3QgY2hhciAqdmFsdWUpOworaW50IHNldF9kaXNhbWJpZ3VhdGVfaGludF9jb25maWcoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSk7CiAKIC8qCiAgKiBUcnkgdG8gcmVhZCBhIFNIQTEgaW4gaGV4YWRlY2ltYWwgZm9ybWF0IGZyb20gdGhlIDQwIGNoYXJhY3RlcnMKQEAgLTEzNTQsMzEgKzE0NzYsMzQgQEAKICAqIGlucHV0LCBzbyBpdCBpcyBzYWZlIHRvIHBhc3MgdGhpcyBmdW5jdGlvbiBhbiBhcmJpdHJhcnkKICAqIG51bGwtdGVybWluYXRlZCBzdHJpbmcuCiAgKi8KLWV4dGVybiBpbnQgZ2V0X3NoYTFfaGV4KGNvbnN0IGNoYXIgKmhleCwgdW5zaWduZWQgY2hhciAqc2hhMSk7Ci1leHRlcm4gaW50IGdldF9vaWRfaGV4KGNvbnN0IGNoYXIgKmhleCwgc3RydWN0IG9iamVjdF9pZCAqc2hhMSk7CitpbnQgZ2V0X3NoYTFfaGV4KGNvbnN0IGNoYXIgKmhleCwgdW5zaWduZWQgY2hhciAqc2hhMSk7CitpbnQgZ2V0X29pZF9oZXgoY29uc3QgY2hhciAqaGV4LCBzdHJ1Y3Qgb2JqZWN0X2lkICpzaGExKTsKIAogLyoKICAqIFJlYWQgYGxlbmAgcGFpcnMgb2YgaGV4YWRlY2ltYWwgZGlnaXRzIGZyb20gYGhleGAgYW5kIHdyaXRlIHRoZQogICogdmFsdWVzIHRvIGBiaW5hcnlgIGFzIGBsZW5gIGJ5dGVzLiBSZXR1cm4gMCBvbiBzdWNjZXNzLCBvciAtMSBpZgogICogdGhlIGlucHV0IGRvZXMgbm90IGNvbnNpc3Qgb2YgaGV4IGRpZ2l0cykuCiAgKi8KLWV4dGVybiBpbnQgaGV4X3RvX2J5dGVzKHVuc2lnbmVkIGNoYXIgKmJpbmFyeSwgY29uc3QgY2hhciAqaGV4LCBzaXplX3QgbGVuKTsKK2ludCBoZXhfdG9fYnl0ZXModW5zaWduZWQgY2hhciAqYmluYXJ5LCBjb25zdCBjaGFyICpoZXgsIHNpemVfdCBsZW4pOwogCiAvKgotICogQ29udmVydCBhIGJpbmFyeSBzaGExIHRvIGl0cyBoZXggZXF1aXZhbGVudC4gVGhlIGBfcmAgdmFyaWFudCBpcyByZWVudHJhbnQsCisgKiBDb252ZXJ0IGEgYmluYXJ5IGhhc2ggaW4gInVuc2lnbmVkIGNoYXIgW10iIG9yIGFuIG9iamVjdCBuYW1lIGluCisgKiAic3RydWN0IG9iamVjdF9pZCAqIiB0byBpdHMgaGV4IGVxdWl2YWxlbnQuIFRoZSBgX3JgIHZhcmlhbnQgaXMgcmVlbnRyYW50LAogICogYW5kIHdyaXRlcyB0aGUgTlVMLXRlcm1pbmF0ZWQgb3V0cHV0IHRvIHRoZSBidWZmZXIgYG91dGAsIHdoaWNoIG11c3QgYmUgYXQKLSAqIGxlYXN0IGBHSVRfU0hBMV9IRVhTWiArIDFgIGJ5dGVzLCBhbmQgcmV0dXJucyBhIHBvaW50ZXIgdG8gb3V0IGZvcgorICogbGVhc3QgYEdJVF9NQVhfSEVYU1ogKyAxYCBieXRlcywgYW5kIHJldHVybnMgYSBwb2ludGVyIHRvIG91dCBmb3IKICAqIGNvbnZlbmllbmNlLgogICoKICAqIFRoZSBub24tYF9yYCB2YXJpYW50IHJldHVybnMgYSBzdGF0aWMgYnVmZmVyLCBidXQgdXNlcyBhIHJpbmcgb2YgNAogICogYnVmZmVycywgbWFraW5nIGl0IHNhZmUgdG8gbWFrZSBtdWx0aXBsZSBjYWxscyBmb3IgYSBzaW5nbGUgc3RhdGVtZW50LCBsaWtlOgogICoKLSAqICAgcHJpbnRmKCIlcyAtPiAlcyIsIHNoYTFfdG9faGV4KG9uZSksIHNoYTFfdG9faGV4KHR3bykpOworICogICBwcmludGYoIiVzIC0+ICVzIiwgaGFzaF90b19oZXgob25lKSwgaGFzaF90b19oZXgodHdvKSk7CisgKiAgIHByaW50ZigiJXMgLT4gJXMiLCBvaWRfdG9faGV4KG9uZSksIG9pZF90b19oZXgodHdvKSk7CiAgKi8KLWV4dGVybiBjaGFyICpzaGExX3RvX2hleF9yKGNoYXIgKm91dCwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSk7Ci1leHRlcm4gY2hhciAqb2lkX3RvX2hleF9yKGNoYXIgKm91dCwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKLWV4dGVybiBjaGFyICpzaGExX3RvX2hleChjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKTsJLyogc3RhdGljIGJ1ZmZlciByZXN1bHQhICovCi1leHRlcm4gY2hhciAqb2lkX3RvX2hleChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOwkvKiBzYW1lIHN0YXRpYyBidWZmZXIgYXMgc2hhMV90b19oZXggKi8KK2NoYXIgKmhhc2hfdG9faGV4X2FsZ29wX3IoY2hhciAqYnVmZmVyLCBjb25zdCB1bnNpZ25lZCBjaGFyICpoYXNoLCBjb25zdCBzdHJ1Y3QgZ2l0X2hhc2hfYWxnbyAqKTsKK2NoYXIgKm9pZF90b19oZXhfcihjaGFyICpvdXQsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CitjaGFyICpoYXNoX3RvX2hleF9hbGdvcChjb25zdCB1bnNpZ25lZCBjaGFyICpoYXNoLCBjb25zdCBzdHJ1Y3QgZ2l0X2hhc2hfYWxnbyAqKTsJLyogc3RhdGljIGJ1ZmZlciByZXN1bHQhICovCitjaGFyICpoYXNoX3RvX2hleChjb25zdCB1bnNpZ25lZCBjaGFyICpoYXNoKTsJCQkJCQkvKiBzYW1lIHN0YXRpYyBidWZmZXIgKi8KK2NoYXIgKm9pZF90b19oZXgoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsJCQkJCQkvKiBzYW1lIHN0YXRpYyBidWZmZXIgKi8KIAogLyoKICAqIFBhcnNlIGEgNDAtY2hhcmFjdGVyIGhleGFkZWNpbWFsIG9iamVjdCBJRCBzdGFydGluZyBmcm9tIGhleCwgdXBkYXRpbmcgdGhlCkBAIC0xMzg3LDcgKzE1MTIsNyBAQAogICogb3RoZXIgaW52YWxpZCBjaGFyYWN0ZXIuICBlbmQgaXMgb25seSB1cGRhdGVkIG9uIHN1Y2Nlc3M7IG90aGVyd2lzZSwgaXQgaXMKICAqIHVubW9kaWZpZWQuCiAgKi8KLWV4dGVybiBpbnQgcGFyc2Vfb2lkX2hleChjb25zdCBjaGFyICpoZXgsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY29uc3QgY2hhciAqKmVuZCk7CitpbnQgcGFyc2Vfb2lkX2hleChjb25zdCBjaGFyICpoZXgsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY29uc3QgY2hhciAqKmVuZCk7CiAKIC8qCiAgKiBUaGlzIHJlYWRzIHNob3J0LWhhbmQgc3ludGF4IHRoYXQgbm90IG9ubHkgZXZhbHVhdGVzIHRvIGEgY29tbWl0CkBAIC0xNDE4LDI3ICsxNTQzLDM1IEBACiAjZGVmaW5lIElOVEVSUFJFVF9CUkFOQ0hfTE9DQUwgKDE8PDApCiAjZGVmaW5lIElOVEVSUFJFVF9CUkFOQ0hfUkVNT1RFICgxPDwxKQogI2RlZmluZSBJTlRFUlBSRVRfQlJBTkNIX0hFQUQgKDE8PDIpCi1leHRlcm4gaW50IGludGVycHJldF9icmFuY2hfbmFtZShjb25zdCBjaGFyICpzdHIsIGludCBsZW4sIHN0cnVjdCBzdHJidWYgKiwKLQkJCQkgdW5zaWduZWQgYWxsb3dlZCk7Ci1leHRlcm4gaW50IGdldF9vaWRfbWIoY29uc3QgY2hhciAqc3RyLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOworaW50IHJlcG9faW50ZXJwcmV0X2JyYW5jaF9uYW1lKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgICAgIGNvbnN0IGNoYXIgKnN0ciwgaW50IGxlbiwKKwkJCSAgICAgICBzdHJ1Y3Qgc3RyYnVmICpidWYsCisJCQkgICAgICAgdW5zaWduZWQgYWxsb3dlZCk7CisjZGVmaW5lIGludGVycHJldF9icmFuY2hfbmFtZShzdHIsIGxlbiwgYnVmLCBhbGxvd2VkKSBcCisJcmVwb19pbnRlcnByZXRfYnJhbmNoX25hbWUodGhlX3JlcG9zaXRvcnksIHN0ciwgbGVuLCBidWYsIGFsbG93ZWQpCiAKLWV4dGVybiBpbnQgdmFsaWRhdGVfaGVhZHJlZihjb25zdCBjaGFyICpyZWYpOworaW50IHZhbGlkYXRlX2hlYWRyZWYoY29uc3QgY2hhciAqcmVmKTsKIAotZXh0ZXJuIGludCBiYXNlX25hbWVfY29tcGFyZShjb25zdCBjaGFyICpuYW1lMSwgaW50IGxlbjEsIGludCBtb2RlMSwgY29uc3QgY2hhciAqbmFtZTIsIGludCBsZW4yLCBpbnQgbW9kZTIpOwotZXh0ZXJuIGludCBkZl9uYW1lX2NvbXBhcmUoY29uc3QgY2hhciAqbmFtZTEsIGludCBsZW4xLCBpbnQgbW9kZTEsIGNvbnN0IGNoYXIgKm5hbWUyLCBpbnQgbGVuMiwgaW50IG1vZGUyKTsKLWV4dGVybiBpbnQgbmFtZV9jb21wYXJlKGNvbnN0IGNoYXIgKm5hbWUxLCBzaXplX3QgbGVuMSwgY29uc3QgY2hhciAqbmFtZTIsIHNpemVfdCBsZW4yKTsKLWV4dGVybiBpbnQgY2FjaGVfbmFtZV9zdGFnZV9jb21wYXJlKGNvbnN0IGNoYXIgKm5hbWUxLCBpbnQgbGVuMSwgaW50IHN0YWdlMSwgY29uc3QgY2hhciAqbmFtZTIsIGludCBsZW4yLCBpbnQgc3RhZ2UyKTsKK2ludCBiYXNlX25hbWVfY29tcGFyZShjb25zdCBjaGFyICpuYW1lMSwgaW50IGxlbjEsIGludCBtb2RlMSwgY29uc3QgY2hhciAqbmFtZTIsIGludCBsZW4yLCBpbnQgbW9kZTIpOworaW50IGRmX25hbWVfY29tcGFyZShjb25zdCBjaGFyICpuYW1lMSwgaW50IGxlbjEsIGludCBtb2RlMSwgY29uc3QgY2hhciAqbmFtZTIsIGludCBsZW4yLCBpbnQgbW9kZTIpOworaW50IG5hbWVfY29tcGFyZShjb25zdCBjaGFyICpuYW1lMSwgc2l6ZV90IGxlbjEsIGNvbnN0IGNoYXIgKm5hbWUyLCBzaXplX3QgbGVuMik7CitpbnQgY2FjaGVfbmFtZV9zdGFnZV9jb21wYXJlKGNvbnN0IGNoYXIgKm5hbWUxLCBpbnQgbGVuMSwgaW50IHN0YWdlMSwgY29uc3QgY2hhciAqbmFtZTIsIGludCBsZW4yLCBpbnQgc3RhZ2UyKTsKIAotZXh0ZXJuIHZvaWQgKnJlYWRfb2JqZWN0X3dpdGhfcmVmZXJlbmNlKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKLQkJCQkJY29uc3QgY2hhciAqcmVxdWlyZWRfdHlwZSwKLQkJCQkJdW5zaWduZWQgbG9uZyAqc2l6ZSwKLQkJCQkJc3RydWN0IG9iamVjdF9pZCAqb2lkX3JldCk7Cit2b2lkICpyZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJCSBjb25zdCBjaGFyICpyZXF1aXJlZF90eXBlLAorCQkJCSB1bnNpZ25lZCBsb25nICpzaXplLAorCQkJCSBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWRfcmV0KTsKIAotZXh0ZXJuIHN0cnVjdCBvYmplY3QgKnBlZWxfdG9fdHlwZShjb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbiwKLQkJCQkgICBzdHJ1Y3Qgb2JqZWN0ICpvLCBlbnVtIG9iamVjdF90eXBlKTsKK3N0cnVjdCBvYmplY3QgKnJlcG9fcGVlbF90b190eXBlKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSBjb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbiwKKwkJCQkgc3RydWN0IG9iamVjdCAqbywgZW51bSBvYmplY3RfdHlwZSk7CisjZGVmaW5lIHBlZWxfdG9fdHlwZShuYW1lLCBuYW1lbGVuLCBvYmosIHR5cGUpIFwKKwlyZXBvX3BlZWxfdG9fdHlwZSh0aGVfcmVwb3NpdG9yeSwgbmFtZSwgbmFtZWxlbiwgb2JqLCB0eXBlKQogCiBlbnVtIGRhdGVfbW9kZV90eXBlIHsKIAlEQVRFX05PUk1BTCA9IDAsCisJREFURV9IVU1BTiwKIAlEQVRFX1JFTEFUSVZFLAogCURBVEVfU0hPUlQsCiAJREFURV9JU084NjAxLApAQCAtMTQ2NCw3ICsxNTk3LDggQEAKIHN0cnVjdCBkYXRlX21vZGUgKmRhdGVfbW9kZV9mcm9tX3R5cGUoZW51bSBkYXRlX21vZGVfdHlwZSB0eXBlKTsKIAogY29uc3QgY2hhciAqc2hvd19kYXRlKHRpbWVzdGFtcF90IHRpbWUsIGludCB0aW1lem9uZSwgY29uc3Qgc3RydWN0IGRhdGVfbW9kZSAqbW9kZSk7Ci12b2lkIHNob3dfZGF0ZV9yZWxhdGl2ZSh0aW1lc3RhbXBfdCB0aW1lLCBpbnQgdHosIGNvbnN0IHN0cnVjdCB0aW1ldmFsICpub3csCit2b2lkIHNob3dfZGF0ZV9yZWxhdGl2ZSh0aW1lc3RhbXBfdCB0aW1lLCBzdHJ1Y3Qgc3RyYnVmICp0aW1lYnVmKTsKK3ZvaWQgc2hvd19kYXRlX2h1bWFuKHRpbWVzdGFtcF90IHRpbWUsIGludCB0eiwgY29uc3Qgc3RydWN0IHRpbWV2YWwgKm5vdywKIAkJCXN0cnVjdCBzdHJidWYgKnRpbWVidWYpOwogaW50IHBhcnNlX2RhdGUoY29uc3QgY2hhciAqZGF0ZSwgc3RydWN0IHN0cmJ1ZiAqb3V0KTsKIGludCBwYXJzZV9kYXRlX2Jhc2ljKGNvbnN0IGNoYXIgKmRhdGUsIHRpbWVzdGFtcF90ICp0aW1lc3RhbXAsIGludCAqb2Zmc2V0KTsKQEAgLTE0NzIsMjUgKzE2MDYsMzggQEAKIHZvaWQgZGF0ZXN0YW1wKHN0cnVjdCBzdHJidWYgKm91dCk7CiAjZGVmaW5lIGFwcHJveGlkYXRlKHMpIGFwcHJveGlkYXRlX2NhcmVmdWwoKHMpLCBOVUxMKQogdGltZXN0YW1wX3QgYXBwcm94aWRhdGVfY2FyZWZ1bChjb25zdCBjaGFyICosIGludCAqKTsKLXRpbWVzdGFtcF90IGFwcHJveGlkYXRlX3JlbGF0aXZlKGNvbnN0IGNoYXIgKmRhdGUsIGNvbnN0IHN0cnVjdCB0aW1ldmFsICpub3cpOwordGltZXN0YW1wX3QgYXBwcm94aWRhdGVfcmVsYXRpdmUoY29uc3QgY2hhciAqZGF0ZSk7CiB2b2lkIHBhcnNlX2RhdGVfZm9ybWF0KGNvbnN0IGNoYXIgKmZvcm1hdCwgc3RydWN0IGRhdGVfbW9kZSAqbW9kZSk7CiBpbnQgZGF0ZV9vdmVyZmxvd3ModGltZXN0YW1wX3QgZGF0ZSk7CiAKICNkZWZpbmUgSURFTlRfU1RSSUNUCSAgICAgICAxCiAjZGVmaW5lIElERU5UX05PX0RBVEUJICAgICAgIDIKICNkZWZpbmUgSURFTlRfTk9fTkFNRQkgICAgICAgNAotZXh0ZXJuIGNvbnN0IGNoYXIgKmdpdF9hdXRob3JfaW5mbyhpbnQpOwotZXh0ZXJuIGNvbnN0IGNoYXIgKmdpdF9jb21taXR0ZXJfaW5mbyhpbnQpOwotZXh0ZXJuIGNvbnN0IGNoYXIgKmZtdF9pZGVudChjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICplbWFpbCwgY29uc3QgY2hhciAqZGF0ZV9zdHIsIGludCk7Ci1leHRlcm4gY29uc3QgY2hhciAqZm10X25hbWUoY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqZW1haWwpOwotZXh0ZXJuIGNvbnN0IGNoYXIgKmlkZW50X2RlZmF1bHRfbmFtZSh2b2lkKTsKLWV4dGVybiBjb25zdCBjaGFyICppZGVudF9kZWZhdWx0X2VtYWlsKHZvaWQpOwotZXh0ZXJuIGNvbnN0IGNoYXIgKmdpdF9lZGl0b3Iodm9pZCk7Ci1leHRlcm4gY29uc3QgY2hhciAqZ2l0X3NlcXVlbmNlX2VkaXRvcih2b2lkKTsKLWV4dGVybiBjb25zdCBjaGFyICpnaXRfcGFnZXIoaW50IHN0ZG91dF9pc190dHkpOwotZXh0ZXJuIGludCBpc190ZXJtaW5hbF9kdW1iKHZvaWQpOwotZXh0ZXJuIGludCBnaXRfaWRlbnRfY29uZmlnKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCB2b2lkICopOwotZXh0ZXJuIHZvaWQgcmVzZXRfaWRlbnRfZGF0ZSh2b2lkKTsKKworZW51bSB3YW50X2lkZW50IHsKKwlXQU5UX0JMQU5LX0lERU5ULAorCVdBTlRfQVVUSE9SX0lERU5ULAorCVdBTlRfQ09NTUlUVEVSX0lERU5UCit9OworCitjb25zdCBjaGFyICpnaXRfYXV0aG9yX2luZm8oaW50KTsKK2NvbnN0IGNoYXIgKmdpdF9jb21taXR0ZXJfaW5mbyhpbnQpOworY29uc3QgY2hhciAqZm10X2lkZW50KGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKmVtYWlsLAorCQkgICAgICBlbnVtIHdhbnRfaWRlbnQgd2hvc2VfaWRlbnQsCisJCSAgICAgIGNvbnN0IGNoYXIgKmRhdGVfc3RyLCBpbnQpOworY29uc3QgY2hhciAqZm10X25hbWUoZW51bSB3YW50X2lkZW50KTsKK2NvbnN0IGNoYXIgKmlkZW50X2RlZmF1bHRfbmFtZSh2b2lkKTsKK2NvbnN0IGNoYXIgKmlkZW50X2RlZmF1bHRfZW1haWwodm9pZCk7Citjb25zdCBjaGFyICpnaXRfZWRpdG9yKHZvaWQpOworY29uc3QgY2hhciAqZ2l0X3NlcXVlbmNlX2VkaXRvcih2b2lkKTsKK2NvbnN0IGNoYXIgKmdpdF9wYWdlcihpbnQgc3Rkb3V0X2lzX3R0eSk7CitpbnQgaXNfdGVybWluYWxfZHVtYih2b2lkKTsKK2ludCBnaXRfaWRlbnRfY29uZmlnKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCB2b2lkICopOworLyoKKyAqIFByZXBhcmUgYW4gaWRlbnQgdG8gZmFsbCBiYWNrIG9uIGlmIHRoZSB1c2VyIGRpZG4ndCBjb25maWd1cmUgaXQuCisgKi8KK3ZvaWQgcHJlcGFyZV9mYWxsYmFja19pZGVudChjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICplbWFpbCk7Cit2b2lkIHJlc2V0X2lkZW50X2RhdGUodm9pZCk7CiAKIHN0cnVjdCBpZGVudF9zcGxpdCB7CiAJY29uc3QgY2hhciAqbmFtZV9iZWdpbjsKQEAgLTE1MDYsNyArMTY1Myw3IEBACiAgKiBTaWduYWxzIGFuIHN1Y2Nlc3Mgd2l0aCAwLCBidXQgdGltZSBwYXJ0IG9mIHRoZSByZXN1bHQgbWF5IGJlIE5VTEwKICAqIGlmIHRoZSBpbnB1dCBsYWNrcyB0aW1lc3RhbXAgYW5kIHpvbmUKICAqLwotZXh0ZXJuIGludCBzcGxpdF9pZGVudF9saW5lKHN0cnVjdCBpZGVudF9zcGxpdCAqLCBjb25zdCBjaGFyICosIGludCk7CitpbnQgc3BsaXRfaWRlbnRfbGluZShzdHJ1Y3QgaWRlbnRfc3BsaXQgKiwgY29uc3QgY2hhciAqLCBpbnQpOwogCiAvKgogICogTGlrZSBzaG93X2RhdGUsIGJ1dCBwdWxsIHRoZSB0aW1lc3RhbXAgYW5kIHR6IHBhcmFtZXRlcnMgZnJvbQpAQCAtMTUyMyw3ICsxNjcwLDcgQEAKICAqIEJlY2F1c2UgdGhlcmUgYXJlIHR3byBmaWVsZHMsIHdlIG11c3QgY2hvb3NlIG9uZSBhcyB0aGUgcHJpbWFyeSBrZXk7IHdlCiAgKiBjdXJyZW50bHkgYXJiaXRyYXJpbHkgcGljayB0aGUgZW1haWwuCiAgKi8KLWV4dGVybiBpbnQgaWRlbnRfY21wKGNvbnN0IHN0cnVjdCBpZGVudF9zcGxpdCAqLCBjb25zdCBzdHJ1Y3QgaWRlbnRfc3BsaXQgKik7CitpbnQgaWRlbnRfY21wKGNvbnN0IHN0cnVjdCBpZGVudF9zcGxpdCAqLCBjb25zdCBzdHJ1Y3QgaWRlbnRfc3BsaXQgKik7CiAKIHN0cnVjdCBjaGVja291dCB7CiAJc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGU7CkBAIC0xNTM5LDkgKzE2ODYsMTQgQEAKICNkZWZpbmUgQ0hFQ0tPVVRfSU5JVCB7IE5VTEwsICIiIH0KIAogI2RlZmluZSBURU1QT1JBUllfRklMRU5BTUVfTEVOR1RIIDI1Ci1leHRlcm4gaW50IGNoZWNrb3V0X2VudHJ5KHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UsIGNvbnN0IHN0cnVjdCBjaGVja291dCAqc3RhdGUsIGNoYXIgKnRvcGF0aCk7Ci1leHRlcm4gdm9pZCBlbmFibGVfZGVsYXllZF9jaGVja291dChzdHJ1Y3QgY2hlY2tvdXQgKnN0YXRlKTsKLWV4dGVybiBpbnQgZmluaXNoX2RlbGF5ZWRfY2hlY2tvdXQoc3RydWN0IGNoZWNrb3V0ICpzdGF0ZSk7CitpbnQgY2hlY2tvdXRfZW50cnkoc3RydWN0IGNhY2hlX2VudHJ5ICpjZSwgY29uc3Qgc3RydWN0IGNoZWNrb3V0ICpzdGF0ZSwgY2hhciAqdG9wYXRoLCBpbnQgKm5yX2NoZWNrb3V0cyk7Cit2b2lkIGVuYWJsZV9kZWxheWVkX2NoZWNrb3V0KHN0cnVjdCBjaGVja291dCAqc3RhdGUpOworaW50IGZpbmlzaF9kZWxheWVkX2NoZWNrb3V0KHN0cnVjdCBjaGVja291dCAqc3RhdGUsIGludCAqbnJfY2hlY2tvdXRzKTsKKy8qCisgKiBVbmxpbmsgdGhlIGxhc3QgY29tcG9uZW50IGFuZCBzY2hlZHVsZSB0aGUgbGVhZGluZyBkaXJlY3RvcmllcyBmb3IKKyAqIHJlbW92YWwsIHN1Y2ggdGhhdCBlbXB0eSBkaXJlY3RvcmllcyBnZXQgcmVtb3ZlZC4KKyAqLwordm9pZCB1bmxpbmtfZW50cnkoY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSk7CiAKIHN0cnVjdCBjYWNoZV9kZWYgewogCXN0cnVjdCBzdHJidWYgcGF0aDsKQEAgLTE1NTUsMTIgKzE3MDcsMTIgQEAKIAlzdHJidWZfcmVsZWFzZSgmY2FjaGUtPnBhdGgpOwogfQogCi1leHRlcm4gaW50IGhhc19zeW1saW5rX2xlYWRpbmdfcGF0aChjb25zdCBjaGFyICpuYW1lLCBpbnQgbGVuKTsKLWV4dGVybiBpbnQgdGhyZWFkZWRfaGFzX3N5bWxpbmtfbGVhZGluZ19wYXRoKHN0cnVjdCBjYWNoZV9kZWYgKiwgY29uc3QgY2hhciAqLCBpbnQpOwotZXh0ZXJuIGludCBjaGVja19sZWFkaW5nX3BhdGgoY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbik7Ci1leHRlcm4gaW50IGhhc19kaXJzX29ubHlfcGF0aChjb25zdCBjaGFyICpuYW1lLCBpbnQgbGVuLCBpbnQgcHJlZml4X2xlbik7Ci1leHRlcm4gdm9pZCBzY2hlZHVsZV9kaXJfZm9yX3JlbW92YWwoY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbik7Ci1leHRlcm4gdm9pZCByZW1vdmVfc2NoZWR1bGVkX2RpcnModm9pZCk7CitpbnQgaGFzX3N5bWxpbmtfbGVhZGluZ19wYXRoKGNvbnN0IGNoYXIgKm5hbWUsIGludCBsZW4pOworaW50IHRocmVhZGVkX2hhc19zeW1saW5rX2xlYWRpbmdfcGF0aChzdHJ1Y3QgY2FjaGVfZGVmICosIGNvbnN0IGNoYXIgKiwgaW50KTsKK2ludCBjaGVja19sZWFkaW5nX3BhdGgoY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbik7CitpbnQgaGFzX2RpcnNfb25seV9wYXRoKGNvbnN0IGNoYXIgKm5hbWUsIGludCBsZW4sIGludCBwcmVmaXhfbGVuKTsKK3ZvaWQgc2NoZWR1bGVfZGlyX2Zvcl9yZW1vdmFsKGNvbnN0IGNoYXIgKm5hbWUsIGludCBsZW4pOwordm9pZCByZW1vdmVfc2NoZWR1bGVkX2RpcnModm9pZCk7CiAKIHN0cnVjdCBwYWNrX3dpbmRvdyB7CiAJc3RydWN0IHBhY2tfd2luZG93ICpuZXh0OwpAQCAtMTU4MiwxNyArMTczNCwxNyBAQAogICogdXN1YWwgIlhYWFhYWCIgdHJhaWxlciwgYW5kIHRoZSByZXN1bHRpbmcgZmlsZW5hbWUgaXMgd3JpdHRlbiBpbnRvIHRoZQogICogInRlbXBsYXRlIiBidWZmZXIuIFJldHVybnMgdGhlIG9wZW4gZGVzY3JpcHRvci4KICAqLwotZXh0ZXJuIGludCBvZGJfbWtzdGVtcChzdHJ1Y3Qgc3RyYnVmICp0ZW1wX2ZpbGVuYW1lLCBjb25zdCBjaGFyICpwYXR0ZXJuKTsKK2ludCBvZGJfbWtzdGVtcChzdHJ1Y3Qgc3RyYnVmICp0ZW1wX2ZpbGVuYW1lLCBjb25zdCBjaGFyICpwYXR0ZXJuKTsKIAogLyoKICAqIENyZWF0ZSBhIHBhY2sgLmtlZXAgZmlsZSBuYW1lZCAibmFtZSIgKHdoaWNoIHNob3VsZCBnZW5lcmFsbHkgYmUgdGhlIG91dHB1dAogICogb2Ygb2RiX3BhY2tfbmFtZSkuIFJldHVybnMgYSBmaWxlIGRlc2NyaXB0b3Igb3BlbmVkIGZvciB3cml0aW5nLCBvciAtMSBvbgogICogZXJyb3IuCiAgKi8KLWV4dGVybiBpbnQgb2RiX3BhY2tfa2VlcChjb25zdCBjaGFyICpuYW1lKTsKK2ludCBvZGJfcGFja19rZWVwKGNvbnN0IGNoYXIgKm5hbWUpOwogCiAvKgotICogU2V0IHRoaXMgdG8gMCB0byBwcmV2ZW50IHNoYTFfb2JqZWN0X2luZm9fZXh0ZW5kZWQoKSBmcm9tIGZldGNoaW5nIG1pc3NpbmcKKyAqIFNldCB0aGlzIHRvIDAgdG8gcHJldmVudCBvaWRfb2JqZWN0X2luZm9fZXh0ZW5kZWQoKSBmcm9tIGZldGNoaW5nIG1pc3NpbmcKICAqIGJsb2JzLiBUaGlzIGhhcyBhIGRpZmZlcmVuY2Ugb25seSBpZiBleHRlbnNpb25zLnBhcnRpYWxDbG9uZSBpcyBzZXQuCiAgKgogICogSXRzIGRlZmF1bHQgdmFsdWUgaXMgMS4KQEAgLTE2MDAsMTAgKzE3NTIsMTAgQEAKIGV4dGVybiBpbnQgZmV0Y2hfaWZfbWlzc2luZzsKIAogLyogRHVtYiBzZXJ2ZXJzIHN1cHBvcnQgKi8KLWV4dGVybiBpbnQgdXBkYXRlX3NlcnZlcl9pbmZvKGludCk7CitpbnQgdXBkYXRlX3NlcnZlcl9pbmZvKGludCk7CiAKLWV4dGVybiBjb25zdCBjaGFyICpnZXRfbG9nX291dHB1dF9lbmNvZGluZyh2b2lkKTsKLWV4dGVybiBjb25zdCBjaGFyICpnZXRfY29tbWl0X291dHB1dF9lbmNvZGluZyh2b2lkKTsKK2NvbnN0IGNoYXIgKmdldF9sb2dfb3V0cHV0X2VuY29kaW5nKHZvaWQpOworY29uc3QgY2hhciAqZ2V0X2NvbW1pdF9vdXRwdXRfZW5jb2Rpbmcodm9pZCk7CiAKIC8qCiAgKiBUaGlzIGlzIGEgaGFjayBmb3IgdGVzdCBwcm9ncmFtcyBsaWtlIHRlc3QtZHVtcC11bnRyYWNrZWQtY2FjaGUgdG8KQEAgLTE2MTIsOCArMTc2NCw4IEBACiAgKi8KIGV4dGVybiBpbnQgaWdub3JlX3VudHJhY2tlZF9jYWNoZV9jb25maWc7CiAKLWV4dGVybiBpbnQgY29tbWl0dGVyX2lkZW50X3N1ZmZpY2llbnRseV9naXZlbih2b2lkKTsKLWV4dGVybiBpbnQgYXV0aG9yX2lkZW50X3N1ZmZpY2llbnRseV9naXZlbih2b2lkKTsKK2ludCBjb21taXR0ZXJfaWRlbnRfc3VmZmljaWVudGx5X2dpdmVuKHZvaWQpOworaW50IGF1dGhvcl9pZGVudF9zdWZmaWNpZW50bHlfZ2l2ZW4odm9pZCk7CiAKIGV4dGVybiBjb25zdCBjaGFyICpnaXRfY29tbWl0X2VuY29kaW5nOwogZXh0ZXJuIGNvbnN0IGNoYXIgKmdpdF9sb2dfb3V0cHV0X2VuY29kaW5nOwpAQCAtMTYyMSwyMiArMTc3MywyMiBAQAogZXh0ZXJuIGNvbnN0IGNoYXIgKmdpdF9tYWlsbWFwX2Jsb2I7CiAKIC8qIElPIGhlbHBlciBmdW5jdGlvbnMgKi8KLWV4dGVybiB2b2lkIG1heWJlX2ZsdXNoX29yX2RpZShGSUxFICosIGNvbnN0IGNoYXIgKik7Cit2b2lkIG1heWJlX2ZsdXNoX29yX2RpZShGSUxFICosIGNvbnN0IGNoYXIgKik7CiBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMiwgMykpKQotZXh0ZXJuIHZvaWQgZnByaW50Zl9vcl9kaWUoRklMRSAqLCBjb25zdCBjaGFyICpmbXQsIC4uLik7Cit2b2lkIGZwcmludGZfb3JfZGllKEZJTEUgKiwgY29uc3QgY2hhciAqZm10LCAuLi4pOwogCiAjZGVmaW5lIENPUFlfUkVBRF9FUlJPUiAoLTIpCiAjZGVmaW5lIENPUFlfV1JJVEVfRVJST1IgKC0zKQotZXh0ZXJuIGludCBjb3B5X2ZkKGludCBpZmQsIGludCBvZmQpOwotZXh0ZXJuIGludCBjb3B5X2ZpbGUoY29uc3QgY2hhciAqZHN0LCBjb25zdCBjaGFyICpzcmMsIGludCBtb2RlKTsKLWV4dGVybiBpbnQgY29weV9maWxlX3dpdGhfdGltZShjb25zdCBjaGFyICpkc3QsIGNvbnN0IGNoYXIgKnNyYywgaW50IG1vZGUpOworaW50IGNvcHlfZmQoaW50IGlmZCwgaW50IG9mZCk7CitpbnQgY29weV9maWxlKGNvbnN0IGNoYXIgKmRzdCwgY29uc3QgY2hhciAqc3JjLCBpbnQgbW9kZSk7CitpbnQgY29weV9maWxlX3dpdGhfdGltZShjb25zdCBjaGFyICpkc3QsIGNvbnN0IGNoYXIgKnNyYywgaW50IG1vZGUpOwogCi1leHRlcm4gdm9pZCB3cml0ZV9vcl9kaWUoaW50IGZkLCBjb25zdCB2b2lkICpidWYsIHNpemVfdCBjb3VudCk7Ci1leHRlcm4gdm9pZCBmc3luY19vcl9kaWUoaW50IGZkLCBjb25zdCBjaGFyICopOwordm9pZCB3cml0ZV9vcl9kaWUoaW50IGZkLCBjb25zdCB2b2lkICpidWYsIHNpemVfdCBjb3VudCk7Cit2b2lkIGZzeW5jX29yX2RpZShpbnQgZmQsIGNvbnN0IGNoYXIgKik7CiAKLWV4dGVybiBzc2l6ZV90IHJlYWRfaW5fZnVsbChpbnQgZmQsIHZvaWQgKmJ1Ziwgc2l6ZV90IGNvdW50KTsKLWV4dGVybiBzc2l6ZV90IHdyaXRlX2luX2Z1bGwoaW50IGZkLCBjb25zdCB2b2lkICpidWYsIHNpemVfdCBjb3VudCk7Ci1leHRlcm4gc3NpemVfdCBwcmVhZF9pbl9mdWxsKGludCBmZCwgdm9pZCAqYnVmLCBzaXplX3QgY291bnQsIG9mZl90IG9mZnNldCk7Citzc2l6ZV90IHJlYWRfaW5fZnVsbChpbnQgZmQsIHZvaWQgKmJ1Ziwgc2l6ZV90IGNvdW50KTsKK3NzaXplX3Qgd3JpdGVfaW5fZnVsbChpbnQgZmQsIGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGNvdW50KTsKK3NzaXplX3QgcHJlYWRfaW5fZnVsbChpbnQgZmQsIHZvaWQgKmJ1Ziwgc2l6ZV90IGNvdW50LCBvZmZfdCBvZmZzZXQpOwogCiBzdGF0aWMgaW5saW5lIHNzaXplX3Qgd3JpdGVfc3RyX2luX2Z1bGwoaW50IGZkLCBjb25zdCBjaGFyICpzdHIpCiB7CkBAIC0xNjQ3LDcgKzE3OTksNyBAQAogICogT3BlbiAoYW5kIHRydW5jYXRlKSB0aGUgZmlsZSBhdCBwYXRoLCB3cml0ZSB0aGUgY29udGVudHMgb2YgYnVmIHRvIGl0LAogICogYW5kIGNsb3NlIGl0LiBEaWVzIGlmIGFueSBlcnJvcnMgYXJlIGVuY291bnRlcmVkLgogICovCi1leHRlcm4gdm9pZCB3cml0ZV9maWxlX2J1Zihjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICpidWYsIHNpemVfdCBsZW4pOwordm9pZCB3cml0ZV9maWxlX2J1Zihjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICpidWYsIHNpemVfdCBsZW4pOwogCiAvKioKICAqIExpa2Ugd3JpdGVfZmlsZV9idWYoKSwgYnV0IGZvcm1hdCB0aGUgY29udGVudHMgaW50byBhIGJ1ZmZlciBmaXJzdC4KQEAgLTE2NTcsMTYgKzE4MDksMTcgQEAKICAqICAgd3JpdGVfZmlsZShwYXRoLCAiY291bnRlcjogJWQiLCBjdHIpOwogICovCiBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMiwgMykpKQotZXh0ZXJuIHZvaWQgd3JpdGVfZmlsZShjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICpmbXQsIC4uLik7Cit2b2lkIHdyaXRlX2ZpbGUoY29uc3QgY2hhciAqcGF0aCwgY29uc3QgY2hhciAqZm10LCAuLi4pOwogCiAvKiBwYWdlci5jICovCi1leHRlcm4gdm9pZCBzZXR1cF9wYWdlcih2b2lkKTsKLWV4dGVybiBpbnQgcGFnZXJfaW5fdXNlKHZvaWQpOwordm9pZCBzZXR1cF9wYWdlcih2b2lkKTsKK2ludCBwYWdlcl9pbl91c2Uodm9pZCk7CiBleHRlcm4gaW50IHBhZ2VyX3VzZV9jb2xvcjsKLWV4dGVybiBpbnQgdGVybV9jb2x1bW5zKHZvaWQpOwotZXh0ZXJuIGludCBkZWNpbWFsX3dpZHRoKHVpbnRtYXhfdCk7Ci1leHRlcm4gaW50IGNoZWNrX3BhZ2VyX2NvbmZpZyhjb25zdCBjaGFyICpjbWQpOwotZXh0ZXJuIHZvaWQgcHJlcGFyZV9wYWdlcl9hcmdzKHN0cnVjdCBjaGlsZF9wcm9jZXNzICosIGNvbnN0IGNoYXIgKnBhZ2VyKTsKK2ludCB0ZXJtX2NvbHVtbnModm9pZCk7Cit2b2lkIHRlcm1fY2xlYXJfbGluZSh2b2lkKTsKK2ludCBkZWNpbWFsX3dpZHRoKHVpbnRtYXhfdCk7CitpbnQgY2hlY2tfcGFnZXJfY29uZmlnKGNvbnN0IGNoYXIgKmNtZCk7Cit2b2lkIHByZXBhcmVfcGFnZXJfYXJncyhzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqLCBjb25zdCBjaGFyICpwYWdlcik7CiAKIGV4dGVybiBjb25zdCBjaGFyICplZGl0b3JfcHJvZ3JhbTsKIGV4dGVybiBjb25zdCBjaGFyICphc2twYXNzX3Byb2dyYW07CkBAIC0xNjkwLDggKzE4NDMsOCBAQAogZXh0ZXJuIGludCBkaWZmX2F1dG9fcmVmcmVzaF9pbmRleDsKIAogLyogbWF0Y2gtdHJlZXMuYyAqLwotdm9pZCBzaGlmdF90cmVlKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKiwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqLCBzdHJ1Y3Qgb2JqZWN0X2lkICosIGludCk7Ci12b2lkIHNoaWZ0X3RyZWVfYnkoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICosIHN0cnVjdCBvYmplY3RfaWQgKiwgY29uc3QgY2hhciAqKTsKK3ZvaWQgc2hpZnRfdHJlZShzdHJ1Y3QgcmVwb3NpdG9yeSAqLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICosIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKiwgc3RydWN0IG9iamVjdF9pZCAqLCBpbnQpOwordm9pZCBzaGlmdF90cmVlX2J5KHN0cnVjdCByZXBvc2l0b3J5ICosIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKiwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqLCBzdHJ1Y3Qgb2JqZWN0X2lkICosIGNvbnN0IGNoYXIgKik7CiAKIC8qCiAgKiB3aGl0ZXNwYWNlIHJ1bGVzLgpAQCAtMTcxMCwxMyArMTg2MywxMyBAQAogLyogQWxsIFdTXyogLS0gd2hlbiBleHRlbmRlZCwgYWRhcHQgZGlmZi5jIGVtaXRfc3ltYm9sICovCiAjZGVmaW5lIFdTX1JVTEVfTUFTSyAgICAgICAgICAgMDc3NzcKIGV4dGVybiB1bnNpZ25lZCB3aGl0ZXNwYWNlX3J1bGVfY2ZnOwotZXh0ZXJuIHVuc2lnbmVkIHdoaXRlc3BhY2VfcnVsZShzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgY29uc3QgY2hhciAqKTsKLWV4dGVybiB1bnNpZ25lZCBwYXJzZV93aGl0ZXNwYWNlX3J1bGUoY29uc3QgY2hhciAqKTsKLWV4dGVybiB1bnNpZ25lZCB3c19jaGVjayhjb25zdCBjaGFyICpsaW5lLCBpbnQgbGVuLCB1bnNpZ25lZCB3c19ydWxlKTsKLWV4dGVybiB2b2lkIHdzX2NoZWNrX2VtaXQoY29uc3QgY2hhciAqbGluZSwgaW50IGxlbiwgdW5zaWduZWQgd3NfcnVsZSwgRklMRSAqc3RyZWFtLCBjb25zdCBjaGFyICpzZXQsIGNvbnN0IGNoYXIgKnJlc2V0LCBjb25zdCBjaGFyICp3cyk7Ci1leHRlcm4gY2hhciAqd2hpdGVzcGFjZV9lcnJvcl9zdHJpbmcodW5zaWduZWQgd3MpOwotZXh0ZXJuIHZvaWQgd3NfZml4X2NvcHkoc3RydWN0IHN0cmJ1ZiAqLCBjb25zdCBjaGFyICosIGludCwgdW5zaWduZWQsIGludCAqKTsKLWV4dGVybiBpbnQgd3NfYmxhbmtfbGluZShjb25zdCBjaGFyICpsaW5lLCBpbnQgbGVuLCB1bnNpZ25lZCB3c19ydWxlKTsKK3Vuc2lnbmVkIHdoaXRlc3BhY2VfcnVsZShzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgY29uc3QgY2hhciAqKTsKK3Vuc2lnbmVkIHBhcnNlX3doaXRlc3BhY2VfcnVsZShjb25zdCBjaGFyICopOwordW5zaWduZWQgd3NfY2hlY2soY29uc3QgY2hhciAqbGluZSwgaW50IGxlbiwgdW5zaWduZWQgd3NfcnVsZSk7Cit2b2lkIHdzX2NoZWNrX2VtaXQoY29uc3QgY2hhciAqbGluZSwgaW50IGxlbiwgdW5zaWduZWQgd3NfcnVsZSwgRklMRSAqc3RyZWFtLCBjb25zdCBjaGFyICpzZXQsIGNvbnN0IGNoYXIgKnJlc2V0LCBjb25zdCBjaGFyICp3cyk7CitjaGFyICp3aGl0ZXNwYWNlX2Vycm9yX3N0cmluZyh1bnNpZ25lZCB3cyk7Cit2b2lkIHdzX2ZpeF9jb3B5KHN0cnVjdCBzdHJidWYgKiwgY29uc3QgY2hhciAqLCBpbnQsIHVuc2lnbmVkLCBpbnQgKik7CitpbnQgd3NfYmxhbmtfbGluZShjb25zdCBjaGFyICpsaW5lLCBpbnQgbGVuLCB1bnNpZ25lZCB3c19ydWxlKTsKICNkZWZpbmUgd3NfdGFiX3dpZHRoKHJ1bGUpICAgICAoKHJ1bGUpICYgV1NfVEFCX1dJRFRIX01BU0spCiAKIC8qIGxzLWZpbGVzICovCkBAIC0xNzg2LDYgKzE5MzksOSBAQAogICogU2hvdWxkIHdlIHByaW50IGFuIGVsbGlwc2lzIGFmdGVyIGFuIGFiYnJldmlhdGVkIFNIQS0xIHZhbHVlCiAgKiB3aGVuIGRvaW5nIGRpZmYtcmF3IG91dHB1dCBvciBpbmRpY2F0aW5nIGEgZGV0YWNoZWQgSEVBRD8KICAqLwotZXh0ZXJuIGludCBwcmludF9zaGExX2VsbGlwc2lzKHZvaWQpOworaW50IHByaW50X3NoYTFfZWxsaXBzaXModm9pZCk7CisKKy8qIFJldHVybiAxIGlmIHRoZSBmaWxlIGlzIGVtcHR5IG9yIGRvZXMgbm90IGV4aXN0cywgMCBvdGhlcndpc2UuICovCitpbnQgaXNfZW1wdHlfb3JfbWlzc2luZ19maWxlKGNvbnN0IGNoYXIgKmZpbGVuYW1lKTsKIAogI2VuZGlmIC8qIENBQ0hFX0ggKi8KZGlmZiAtLWdpdCBhL2NoZWNrLXJhY3kuYyBiL2NoZWNrLXJhY3kuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjRiNjU0Mi4uMDAwMDAwMAotLS0gYS9jaGVjay1yYWN5LmMKKysrIC9kZXYvbnVsbApAQCAtMSwyOCArMCwwIEBACi0jaW5jbHVkZSAiY2FjaGUuaCIKLQotaW50IG1haW4oaW50IGFjLCBjaGFyICoqYXYpCi17Ci0JaW50IGk7Ci0JaW50IGRpcnR5LCBjbGVhbiwgcmFjeTsKLQotCWRpcnR5ID0gY2xlYW4gPSByYWN5ID0gMDsKLQlyZWFkX2NhY2hlKCk7Ci0JZm9yIChpID0gMDsgaSA8IGFjdGl2ZV9ucjsgaSsrKSB7Ci0JCXN0cnVjdCBjYWNoZV9lbnRyeSAqY2UgPSBhY3RpdmVfY2FjaGVbaV07Ci0JCXN0cnVjdCBzdGF0IHN0OwotCi0JCWlmIChsc3RhdChjZS0+bmFtZSwgJnN0KSkgewotCQkJZXJyb3JfZXJybm8oImxzdGF0KCVzKSIsIGNlLT5uYW1lKTsKLQkJCWNvbnRpbnVlOwotCQl9Ci0KLQkJaWYgKGNlX21hdGNoX3N0YXQoY2UsICZzdCwgMCkpCi0JCQlkaXJ0eSsrOwotCQllbHNlIGlmIChjZV9tYXRjaF9zdGF0KGNlLCAmc3QsIENFX01BVENIX1JBQ1lfSVNfRElSVFkpKQotCQkJcmFjeSsrOwotCQllbHNlCi0JCQljbGVhbisrOwotCX0KLQlwcmludGYoImRpcnR5ICVkLCBjbGVhbiAlZCwgcmFjeSAlZFxuIiwgZGlydHksIGNsZWFuLCByYWN5KTsKLQlyZXR1cm4gMDsKLX0KZGlmZiAtLWdpdCBhL2NoZWNrb3V0LmggYi9jaGVja291dC5oCmluZGV4IDZiMjA3MzMuLjExNTIxMzMgMTAwNjQ0Ci0tLSBhL2NoZWNrb3V0LmgKKysrIGIvY2hlY2tvdXQuaApAQCAtOCw4ICs4LDggQEAKICAqIHRyYWNraW5nIGJyYW5jaC4gIFJldHVybiB0aGUgbmFtZSBvZiB0aGUgcmVtb3RlIGlmIHN1Y2ggYSBicmFuY2gKICAqIGV4aXN0cywgTlVMTCBvdGhlcndpc2UuCiAgKi8KLWV4dGVybiBjb25zdCBjaGFyICp1bmlxdWVfdHJhY2tpbmdfbmFtZShjb25zdCBjaGFyICpuYW1lLAotCQkJCQlzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCi0JCQkJCWludCAqZHdpbV9yZW1vdGVzX21hdGNoZWQpOworY29uc3QgY2hhciAqdW5pcXVlX3RyYWNraW5nX25hbWUoY29uc3QgY2hhciAqbmFtZSwKKwkJCQkgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJCSBpbnQgKmR3aW1fcmVtb3Rlc19tYXRjaGVkKTsKIAogI2VuZGlmIC8qIENIRUNLT1VUX0ggKi8KZGlmZiAtLWdpdCBhL2NpL2luc3RhbGwtZGVwZW5kZW5jaWVzLnNoIGIvY2kvaW5zdGFsbC1kZXBlbmRlbmNpZXMuc2gKaW5kZXggMDZjMzU0Ni4uNDk3ZmQzMiAxMDA3NTUKLS0tIGEvY2kvaW5zdGFsbC1kZXBlbmRlbmNpZXMuc2gKKysrIGIvY2kvaW5zdGFsbC1kZXBlbmRlbmNpZXMuc2gKQEAgLTMsNyArMyw3IEBACiAjIEluc3RhbGwgZGVwZW5kZW5jaWVzIHJlcXVpcmVkIHRvIGJ1aWxkIGFuZCB0ZXN0IEdpdCBvbiBMaW51eCBhbmQgbWFjT1MKICMKIAotLiAkezAlLyp9L2xpYi10cmF2aXNjaS5zaAorLiAkezAlLyp9L2xpYi5zaAogCiBQNFdIRU5DRT1odHRwOi8vZmlsZWhvc3QucGVyZm9yY2UuY29tL3BlcmZvcmNlL3IkTElOVVhfUDRfVkVSU0lPTgogTEZTV0hFTkNFPWh0dHBzOi8vZ2l0aHViLmNvbS9naXRodWIvZ2l0LWxmcy9yZWxlYXNlcy9kb3dubG9hZC92JExJTlVYX0dJVF9MRlNfVkVSU0lPTgpAQCAtMTIsNyArMTIsNyBAQAogbGludXgtY2xhbmd8bGludXgtZ2NjKQogCXN1ZG8gYXB0LWFkZC1yZXBvc2l0b3J5IC15ICJwcGE6dWJ1bnR1LXRvb2xjaGFpbi1yL3Rlc3QiCiAJc3VkbyBhcHQtZ2V0IC1xIHVwZGF0ZQotCXN1ZG8gYXB0LWdldCAtcSAteSBpbnN0YWxsIGxhbmd1YWdlLXBhY2staXMgZ2l0LXN2biBhcGFjaGUyCisJc3VkbyBhcHQtZ2V0IC1xIC15IGluc3RhbGwgbGFuZ3VhZ2UtcGFjay1pcyBsaWJzdm4tcGVybCBhcGFjaGUyCiAJY2FzZSAiJGpvYm5hbWUiIGluCiAJbGludXgtZ2NjKQogCQlzdWRvIGFwdC1nZXQgLXEgLXkgaW5zdGFsbCBnY2MtOApAQCAtMzQsMjAgKzM0LDM5IEBACiAJcG9wZAogCTs7CiBvc3gtY2xhbmd8b3N4LWdjYykKLQlicmV3IHVwZGF0ZSAtLXF1aWV0CisJZXhwb3J0IEhPTUVCUkVXX05PX0FVVE9fVVBEQVRFPTEgSE9NRUJSRVdfTk9fSU5TVEFMTF9DTEVBTlVQPTEKIAkjIFVuY29tbWVudCB0aGlzIGlmIHlvdSB3YW50IHRvIHJ1biBwZXJmIHRlc3RzOgogCSMgYnJldyBpbnN0YWxsIGdudS10aW1lCi0JYnJldyBpbnN0YWxsIGdpdC1sZnMgZ2V0dGV4dAorCXRlc3QgLXogIiRCUkVXX0lOU1RBTExfUEFDS0FHRVMiIHx8CisJYnJldyBpbnN0YWxsICRCUkVXX0lOU1RBTExfUEFDS0FHRVMKIAlicmV3IGxpbmsgLS1mb3JjZSBnZXR0ZXh0CisJYnJldyBjYXNrIGluc3RhbGwgLS1uby1xdWFyYW50aW5lIHBlcmZvcmNlIHx8IHsKKwkJIyBVcGRhdGUgdGhlIGRlZmluaXRpb25zIGFuZCB0cnkgYWdhaW4KKwkJY2Fza19yZXBvPSIkKGJyZXcgLS1yZXBvc2l0b3J5KSIvTGlicmFyeS9UYXBzL2hvbWVicmV3L2hvbWVicmV3LWNhc2sgJiYKKwkJZ2l0IC1DICIkY2Fza19yZXBvIiBwdWxsIC0tbm8tc3RhdCAmJgorCQlicmV3IGNhc2sgaW5zdGFsbCAtLW5vLXF1YXJhbnRpbmUgcGVyZm9yY2UKKwl9IHx8CiAJYnJldyBpbnN0YWxsIGNhc2tyb29tL2Nhc2svcGVyZm9yY2UKKwljYXNlICIkam9ibmFtZSIgaW4KKwlvc3gtZ2NjKQorCQlicmV3IGluc3RhbGwgZ2NjQDkKKwkJIyBKdXN0IGluIGNhc2UgdGhlIGltYWdlIGlzIHVwZGF0ZWQgdG8gY29udGFpbiBnY2NAOQorCQkjIHByZS1pbnN0YWxsZWQgYnV0IG5vdCBsaW5rZWQuCisJCWJyZXcgbGluayBnY2NAOQorCQk7OworCWVzYWMKIAk7OwogU3RhdGljQW5hbHlzaXMpCiAJc3VkbyBhcHQtZ2V0IC1xIHVwZGF0ZQotCXN1ZG8gYXB0LWdldCAtcSAteSBpbnN0YWxsIGNvY2NpbmVsbGUKKwlzdWRvIGFwdC1nZXQgLXEgLXkgaW5zdGFsbCBjb2NjaW5lbGxlIGxpYmN1cmw0LW9wZW5zc2wtZGV2IGxpYnNzbC1kZXYgXAorCQlsaWJleHBhdC1kZXYgZ2V0dGV4dAogCTs7CiBEb2N1bWVudGF0aW9uKQogCXN1ZG8gYXB0LWdldCAtcSB1cGRhdGUKLQlzdWRvIGFwdC1nZXQgLXEgLXkgaW5zdGFsbCBhc2NpaWRvYyB4bWx0bworCXN1ZG8gYXB0LWdldCAtcSAteSBpbnN0YWxsIGFzY2lpZG9jIHhtbHRvIGRvY2Jvb2steHNsLW5zCisKKwl0ZXN0IC1uICIkQUxSRUFEWV9IQVZFX0FTQ0lJRE9DVE9SIiB8fAorCWdlbSBpbnN0YWxsIC0tdmVyc2lvbiAxLjUuOCBhc2NpaWRvY3RvcgogCTs7CiBlc2FjCiAKZGlmZiAtLWdpdCBhL2NpL2xpYi10cmF2aXNjaS5zaCBiL2NpL2xpYi10cmF2aXNjaS5zaApkZWxldGVkIGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggNjlkZmY0ZC4uMDAwMDAwMAotLS0gYS9jaS9saWItdHJhdmlzY2kuc2gKKysrIC9kZXYvbnVsbApAQCAtMSwxMjkgKzAsMCBAQAotIyBMaWJyYXJ5IG9mIGZ1bmN0aW9ucyBzaGFyZWQgYnkgYWxsIENJIHNjcmlwdHMKLQotc2tpcF9icmFuY2hfdGlwX3dpdGhfdGFnICgpIHsKLQkjIFNvbWV0aW1lcywgYSBicmFuY2ggaXMgcHVzaGVkIGF0IHRoZSBzYW1lIHRpbWUgdGhlIHRhZyB0aGF0IHBvaW50cwotCSMgYXQgdGhlIHNhbWUgY29tbWl0IGFzIHRoZSB0aXAgb2YgdGhlIGJyYW5jaCBpcyBwdXNoZWQsIGFuZCBidWlsZGluZwotCSMgYm90aCBhdCB0aGUgc2FtZSB0aW1lIGlzIGEgd2FzdGUuCi0JIwotCSMgVHJhdmlzIGdpdmVzIGEgdGFnbmFtZSBlLmcuIHYyLjE0LjAgaW4gJFRSQVZJU19CUkFOQ0ggd2hlbgotCSMgdGhlIGJ1aWxkIGlzIHRyaWdnZXJlZCBieSBhIHB1c2ggdG8gYSB0YWcuICBMZXQncyBzZWUgaWYKLQkjICRUUkFWSVNfQlJBTkNIIGlzIGV4YWN0bHkgYXQgYSB0YWcsIGFuZCBpZiBzbywgaWYgaXQgaXMKLQkjIGRpZmZlcmVudCBmcm9tICRUUkFWSVNfQlJBTkNILiAgVGhhdCB3YXksIHdlIGNhbiB0ZWxsIGlmCi0JIyB3ZSBhcmUgYnVpbGRpbmcgdGhlIHRpcCBvZiBhIGJyYW5jaCB0aGF0IGlzIHRhZ2dlZCBhbmQKLQkjIHdlIGNhbiBza2lwIHRoZSBidWlsZCBiZWNhdXNlIHdlIHdvbid0IGJlIHNraXBwaW5nIGEgYnVpbGQKLQkjIG9mIGEgdGFnLgotCi0JaWYgVEFHPSQoZ2l0IGRlc2NyaWJlIC0tZXhhY3QtbWF0Y2ggIiRUUkFWSVNfQlJBTkNIIiAyPi9kZXYvbnVsbCkgJiYKLQkJdGVzdCAiJFRBRyIgIT0gIiRUUkFWSVNfQlJBTkNIIgotCXRoZW4KLQkJZWNobyAiJCh0cHV0IHNldGFmIDIpVGlwIG9mICRUUkFWSVNfQlJBTkNIIGlzIGV4YWN0bHkgYXQgJFRBRyQodHB1dCBzZ3IwKSIKLQkJZXhpdCAwCi0JZmkKLX0KLQotIyBTYXZlIHNvbWUgaW5mbyBhYm91dCB0aGUgY3VycmVudCBjb21taXQncyB0cmVlLCBzbyB3ZSBjYW4gc2tpcCB0aGUgYnVpbGQKLSMgam9iIGlmIHdlIGVuY291bnRlciB0aGUgc2FtZSB0cmVlIGFnYWluIGFuZCBjYW4gcHJvdmlkZSBhIHVzZWZ1bCBpbmZvCi0jIG1lc3NhZ2UuCi1zYXZlX2dvb2RfdHJlZSAoKSB7Ci0JZWNobyAiJChnaXQgcmV2LXBhcnNlICRUUkFWSVNfQ09NTUlUXnt0cmVlfSkgJFRSQVZJU19DT01NSVQgJFRSQVZJU19KT0JfTlVNQkVSICRUUkFWSVNfSk9CX0lEIiA+PiIkZ29vZF90cmVlc19maWxlIgotCSMgbGltaXQgdGhlIGZpbGUgc2l6ZQotCXRhaWwgLTEwMDAgIiRnb29kX3RyZWVzX2ZpbGUiID4iJGdvb2RfdHJlZXNfZmlsZSIudG1wCi0JbXYgIiRnb29kX3RyZWVzX2ZpbGUiLnRtcCAiJGdvb2RfdHJlZXNfZmlsZSIKLX0KLQotIyBTa2lwIHRoZSBidWlsZCBqb2IgaWYgdGhlIHNhbWUgdHJlZSBoYXMgYWxyZWFkeSBiZWVuIGJ1aWx0IGFuZCB0ZXN0ZWQKLSMgc3VjY2Vzc2Z1bGx5IGJlZm9yZSAoZS5nLiBiZWNhdXNlIHRoZSBicmFuY2ggZ290IHJlYmFzZWQsIGNoYW5naW5nIG9ubHkKLSMgdGhlIGNvbW1pdCBtZXNzYWdlcykuCi1za2lwX2dvb2RfdHJlZSAoKSB7Ci0JaWYgISBnb29kX3RyZWVfaW5mbz0iJChncmVwICJeJChnaXQgcmV2LXBhcnNlICRUUkFWSVNfQ09NTUlUXnt0cmVlfSkgIiAiJGdvb2RfdHJlZXNfZmlsZSIpIgotCXRoZW4KLQkJIyBIYXZlbid0IHNlZW4gdGhpcyB0cmVlIHlldCwgb3Igbm8gY2FjaGVkIGdvb2QgdHJlZXMgZmlsZSB5ZXQuCi0JCSMgQ29udGludWUgdGhlIGJ1aWxkIGpvYi4KLQkJcmV0dXJuCi0JZmkKLQotCWVjaG8gIiRnb29kX3RyZWVfaW5mbyIgfCB7Ci0JCXJlYWQgdHJlZSBwcmV2X2dvb2RfY29tbWl0IHByZXZfZ29vZF9qb2JfbnVtYmVyIHByZXZfZ29vZF9qb2JfaWQKLQotCQlpZiB0ZXN0ICIkVFJBVklTX0pPQl9JRCIgPSAiJHByZXZfZ29vZF9qb2JfaWQiCi0JCXRoZW4KLQkJCWNhdCA8PC1FT0YKLQkJCSQodHB1dCBzZXRhZiAyKVNraXBwaW5nIGJ1aWxkIGpvYiBmb3IgY29tbWl0ICRUUkFWSVNfQ09NTUlULiQodHB1dCBzZ3IwKQotCQkJVGhpcyBjb21taXQgaGFzIGFscmVhZHkgYmVlbiBidWlsdCBhbmQgdGVzdGVkIHN1Y2Nlc3NmdWxseSBieSB0aGlzIGJ1aWxkIGpvYi4KLQkJCVRvIGZvcmNlIGEgcmUtYnVpbGQgZGVsZXRlIHRoZSBicmFuY2gncyBjYWNoZSBhbmQgdGhlbiBoaXQgJ1Jlc3RhcnQgam9iJy4KLQkJCUVPRgotCQllbHNlCi0JCQljYXQgPDwtRU9GCi0JCQkkKHRwdXQgc2V0YWYgMilTa2lwcGluZyBidWlsZCBqb2IgZm9yIGNvbW1pdCAkVFJBVklTX0NPTU1JVC4kKHRwdXQgc2dyMCkKLQkJCVRoaXMgY29tbWl0J3MgdHJlZSBoYXMgYWxyZWFkeSBiZWVuIGJ1aWx0IGFuZCB0ZXN0ZWQgc3VjY2Vzc2Z1bGx5IGluIGJ1aWxkIGpvYiAkcHJldl9nb29kX2pvYl9udW1iZXIgZm9yIGNvbW1pdCAkcHJldl9nb29kX2NvbW1pdC4KLQkJCVRoZSBsb2cgb2YgdGhhdCBidWlsZCBqb2IgaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vdHJhdmlzLWNpLm9yZy8kVFJBVklTX1JFUE9fU0xVRy9qb2JzLyRwcmV2X2dvb2Rfam9iX2lkCi0JCQlUbyBmb3JjZSBhIHJlLWJ1aWxkIGRlbGV0ZSB0aGUgYnJhbmNoJ3MgY2FjaGUgYW5kIHRoZW4gaGl0ICdSZXN0YXJ0IGpvYicuCi0JCQlFT0YKLQkJZmkKLQl9Ci0KLQlleGl0IDAKLX0KLQotY2hlY2tfdW5pZ25vcmVkX2J1aWxkX2FydGlmYWN0cyAoKQotewotCSEgZ2l0IGxzLWZpbGVzIC0tb3RoZXIgLS1leGNsdWRlLXN0YW5kYXJkIC0tZXJyb3ItdW5tYXRjaCBcCi0JCS0tICc6LyonIDI+L2Rldi9udWxsIHx8Ci0JewotCQllY2hvICIkKHRwdXQgc2V0YWYgMSllcnJvcjogZm91bmQgdW5pZ25vcmVkIGJ1aWxkIGFydGlmYWN0cyQodHB1dCBzZ3IwKSIKLQkJZmFsc2UKLQl9Ci19Ci0KLSMgU2V0ICdleGl0IG9uIGVycm9yJyBmb3IgYWxsIENJIHNjcmlwdHMgdG8gbGV0IHRoZSBjYWxsZXIga25vdyB0aGF0Ci0jIHNvbWV0aGluZyB3ZW50IHdyb25nLgotIyBTZXQgdHJhY2luZyBleGVjdXRlZCBjb21tYW5kcywgcHJpbWFyaWx5IHNldHRpbmcgZW52aXJvbm1lbnQgdmFyaWFibGVzCi0jIGFuZCBpbnN0YWxsaW5nIGRlcGVuZGVuY2llcy4KLXNldCAtZXgKLQotY2FjaGVfZGlyPSIkSE9NRS90cmF2aXMtY2FjaGUiCi1nb29kX3RyZWVzX2ZpbGU9IiRjYWNoZV9kaXIvZ29vZC10cmVlcyIKLQotbWtkaXIgLXAgIiRjYWNoZV9kaXIiCi0KLXNraXBfYnJhbmNoX3RpcF93aXRoX3RhZwotc2tpcF9nb29kX3RyZWUKLQotaWYgdGVzdCAteiAiJGpvYm5hbWUiCi10aGVuCi0Jam9ibmFtZT0iJFRSQVZJU19PU19OQU1FLSRDQyIKLWZpCi0KLWV4cG9ydCBERVZFTE9QRVI9MQotZXhwb3J0IERFRkFVTFRfVEVTVF9UQVJHRVQ9cHJvdmUKLWV4cG9ydCBHSVRfUFJPVkVfT1BUUz0iLS10aW1lciAtLWpvYnMgMyAtLXN0YXRlPWZhaWxlZCxzbG93LHNhdmUiCi1leHBvcnQgR0lUX1RFU1RfT1BUUz0iLS12ZXJib3NlLWxvZyAteCAtLWltbWVkaWF0ZSIKLWV4cG9ydCBHSVRfVEVTVF9DTE9ORV8yR0I9WWVzUGxlYXNlCi1pZiBbICIkam9ibmFtZSIgPSBsaW51eC1nY2MgXTsgdGhlbgotCWV4cG9ydCBDQz1nY2MtOAotZmkKLQotY2FzZSAiJGpvYm5hbWUiIGluCi1saW51eC1jbGFuZ3xsaW51eC1nY2MpCi0JZXhwb3J0IEdJVF9URVNUX0hUVFBEPVllc1BsZWFzZQotCi0JIyBUaGUgTGludXggYnVpbGQgaW5zdGFsbHMgdGhlIGRlZmluZWQgZGVwZW5kZW5jeSB2ZXJzaW9ucyBiZWxvdy4KLQkjIFRoZSBPUyBYIGJ1aWxkIGluc3RhbGxzIHRoZSBsYXRlc3QgYXZhaWxhYmxlIHZlcnNpb25zLiBLZWVwIHRoYXQKLQkjIGluIG1pbmQgd2hlbiB5b3UgZW5jb3VudGVyIGEgYnJva2VuIE9TIFggYnVpbGQhCi0JZXhwb3J0IExJTlVYX1A0X1ZFUlNJT049IjE2LjIiCi0JZXhwb3J0IExJTlVYX0dJVF9MRlNfVkVSU0lPTj0iMS41LjIiCi0KLQlQNF9QQVRIPSIkSE9NRS9jdXN0b20vcDQiCi0JR0lUX0xGU19QQVRIPSIkSE9NRS9jdXN0b20vZ2l0LWxmcyIKLQlleHBvcnQgUEFUSD0iJEdJVF9MRlNfUEFUSDokUDRfUEFUSDokUEFUSCIKLQk7Owotb3N4LWNsYW5nfG9zeC1nY2MpCi0JIyB0OTgxMCBvY2Nhc2lvbmFsbHkgZmFpbHMgb24gVHJhdmlzIENJIE9TIFgKLQkjIHQ5ODE2IG9jY2FzaW9uYWxseSBmYWlscyB3aXRoICJUQVAgb3V0IG9mIHNlcXVlbmNlIGVycm9ycyIgb24KLQkjIFRyYXZpcyBDSSBPUyBYCi0JZXhwb3J0IEdJVF9TS0lQX1RFU1RTPSJ0OTgxMCB0OTgxNiIKLQk7OwotR0lUX1RFU1RfR0VUVEVYVF9QT0lTT04pCi0JZXhwb3J0IEdJVF9URVNUX0dFVFRFWFRfUE9JU09OPVllc1BsZWFzZQotCTs7Ci1lc2FjCmRpZmYgLS1naXQgYS9jaS9saWIuc2ggYi9jaS9saWIuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYzNhOGNkMgotLS0gL2Rldi9udWxsCisrKyBiL2NpL2xpYi5zaApAQCAtMCwwICsxLDIwMyBAQAorIyBMaWJyYXJ5IG9mIGZ1bmN0aW9ucyBzaGFyZWQgYnkgYWxsIENJIHNjcmlwdHMKKworc2tpcF9icmFuY2hfdGlwX3dpdGhfdGFnICgpIHsKKwkjIFNvbWV0aW1lcywgYSBicmFuY2ggaXMgcHVzaGVkIGF0IHRoZSBzYW1lIHRpbWUgdGhlIHRhZyB0aGF0IHBvaW50cworCSMgYXQgdGhlIHNhbWUgY29tbWl0IGFzIHRoZSB0aXAgb2YgdGhlIGJyYW5jaCBpcyBwdXNoZWQsIGFuZCBidWlsZGluZworCSMgYm90aCBhdCB0aGUgc2FtZSB0aW1lIGlzIGEgd2FzdGUuCisJIworCSMgV2hlbiB0aGUgYnVpbGQgaXMgdHJpZ2dlcmVkIGJ5IGEgcHVzaCB0byBhIHRhZywgJENJX0JSQU5DSCB3aWxsCisJIyBoYXZlIHRoYXQgdGFnbmFtZSwgZS5nLiB2Mi4xNC4wLiAgTGV0J3Mgc2VlIGlmICRDSV9CUkFOQ0ggaXMKKwkjIGV4YWN0bHkgYXQgYSB0YWcsIGFuZCBpZiBzbywgaWYgaXQgaXMgZGlmZmVyZW50IGZyb20gJENJX0JSQU5DSC4KKwkjIFRoYXQgd2F5LCB3ZSBjYW4gdGVsbCBpZiB3ZSBhcmUgYnVpbGRpbmcgdGhlIHRpcCBvZiBhIGJyYW5jaCB0aGF0CisJIyBpcyB0YWdnZWQgYW5kIHdlIGNhbiBza2lwIHRoZSBidWlsZCBiZWNhdXNlIHdlIHdvbid0IGJlIHNraXBwaW5nIGEKKwkjIGJ1aWxkIG9mIGEgdGFnLgorCisJaWYgVEFHPSQoZ2l0IGRlc2NyaWJlIC0tZXhhY3QtbWF0Y2ggIiRDSV9CUkFOQ0giIDI+L2Rldi9udWxsKSAmJgorCQl0ZXN0ICIkVEFHIiAhPSAiJENJX0JSQU5DSCIKKwl0aGVuCisJCWVjaG8gIiQodHB1dCBzZXRhZiAyKVRpcCBvZiAkQ0lfQlJBTkNIIGlzIGV4YWN0bHkgYXQgJFRBRyQodHB1dCBzZ3IwKSIKKwkJZXhpdCAwCisJZmkKK30KKworIyBTYXZlIHNvbWUgaW5mbyBhYm91dCB0aGUgY3VycmVudCBjb21taXQncyB0cmVlLCBzbyB3ZSBjYW4gc2tpcCB0aGUgYnVpbGQKKyMgam9iIGlmIHdlIGVuY291bnRlciB0aGUgc2FtZSB0cmVlIGFnYWluIGFuZCBjYW4gcHJvdmlkZSBhIHVzZWZ1bCBpbmZvCisjIG1lc3NhZ2UuCitzYXZlX2dvb2RfdHJlZSAoKSB7CisJZWNobyAiJChnaXQgcmV2LXBhcnNlICRDSV9DT01NSVRee3RyZWV9KSAkQ0lfQ09NTUlUICRDSV9KT0JfTlVNQkVSICRDSV9KT0JfSUQiID4+IiRnb29kX3RyZWVzX2ZpbGUiCisJIyBsaW1pdCB0aGUgZmlsZSBzaXplCisJdGFpbCAtMTAwMCAiJGdvb2RfdHJlZXNfZmlsZSIgPiIkZ29vZF90cmVlc19maWxlIi50bXAKKwltdiAiJGdvb2RfdHJlZXNfZmlsZSIudG1wICIkZ29vZF90cmVlc19maWxlIgorfQorCisjIFNraXAgdGhlIGJ1aWxkIGpvYiBpZiB0aGUgc2FtZSB0cmVlIGhhcyBhbHJlYWR5IGJlZW4gYnVpbHQgYW5kIHRlc3RlZAorIyBzdWNjZXNzZnVsbHkgYmVmb3JlIChlLmcuIGJlY2F1c2UgdGhlIGJyYW5jaCBnb3QgcmViYXNlZCwgY2hhbmdpbmcgb25seQorIyB0aGUgY29tbWl0IG1lc3NhZ2VzKS4KK3NraXBfZ29vZF90cmVlICgpIHsKKwlpZiB0ZXN0ICIkVFJBVklTX0RFQlVHX01PREUiID0gdHJ1ZQorCXRoZW4KKwkJcmV0dXJuCisJZmkKKworCWlmICEgZ29vZF90cmVlX2luZm89IiQoZ3JlcCAiXiQoZ2l0IHJldi1wYXJzZSAkQ0lfQ09NTUlUXnt0cmVlfSkgIiAiJGdvb2RfdHJlZXNfZmlsZSIpIgorCXRoZW4KKwkJIyBIYXZlbid0IHNlZW4gdGhpcyB0cmVlIHlldCwgb3Igbm8gY2FjaGVkIGdvb2QgdHJlZXMgZmlsZSB5ZXQuCisJCSMgQ29udGludWUgdGhlIGJ1aWxkIGpvYi4KKwkJcmV0dXJuCisJZmkKKworCWVjaG8gIiRnb29kX3RyZWVfaW5mbyIgfCB7CisJCXJlYWQgdHJlZSBwcmV2X2dvb2RfY29tbWl0IHByZXZfZ29vZF9qb2JfbnVtYmVyIHByZXZfZ29vZF9qb2JfaWQKKworCQlpZiB0ZXN0ICIkQ0lfSk9CX0lEIiA9ICIkcHJldl9nb29kX2pvYl9pZCIKKwkJdGhlbgorCQkJY2F0IDw8LUVPRgorCQkJJCh0cHV0IHNldGFmIDIpU2tpcHBpbmcgYnVpbGQgam9iIGZvciBjb21taXQgJENJX0NPTU1JVC4kKHRwdXQgc2dyMCkKKwkJCVRoaXMgY29tbWl0IGhhcyBhbHJlYWR5IGJlZW4gYnVpbHQgYW5kIHRlc3RlZCBzdWNjZXNzZnVsbHkgYnkgdGhpcyBidWlsZCBqb2IuCisJCQlUbyBmb3JjZSBhIHJlLWJ1aWxkIGRlbGV0ZSB0aGUgYnJhbmNoJ3MgY2FjaGUgYW5kIHRoZW4gaGl0ICdSZXN0YXJ0IGpvYicuCisJCQlFT0YKKwkJZWxzZQorCQkJY2F0IDw8LUVPRgorCQkJJCh0cHV0IHNldGFmIDIpU2tpcHBpbmcgYnVpbGQgam9iIGZvciBjb21taXQgJENJX0NPTU1JVC4kKHRwdXQgc2dyMCkKKwkJCVRoaXMgY29tbWl0J3MgdHJlZSBoYXMgYWxyZWFkeSBiZWVuIGJ1aWx0IGFuZCB0ZXN0ZWQgc3VjY2Vzc2Z1bGx5IGluIGJ1aWxkIGpvYiAkcHJldl9nb29kX2pvYl9udW1iZXIgZm9yIGNvbW1pdCAkcHJldl9nb29kX2NvbW1pdC4KKwkJCVRoZSBsb2cgb2YgdGhhdCBidWlsZCBqb2IgaXMgYXZhaWxhYmxlIGF0ICQodXJsX2Zvcl9qb2JfaWQgJHByZXZfZ29vZF9qb2JfaWQpCisJCQlUbyBmb3JjZSBhIHJlLWJ1aWxkIGRlbGV0ZSB0aGUgYnJhbmNoJ3MgY2FjaGUgYW5kIHRoZW4gaGl0ICdSZXN0YXJ0IGpvYicuCisJCQlFT0YKKwkJZmkKKwl9CisKKwlleGl0IDAKK30KKworY2hlY2tfdW5pZ25vcmVkX2J1aWxkX2FydGlmYWN0cyAoKQoreworCSEgZ2l0IGxzLWZpbGVzIC0tb3RoZXIgLS1leGNsdWRlLXN0YW5kYXJkIC0tZXJyb3ItdW5tYXRjaCBcCisJCS0tICc6LyonIDI+L2Rldi9udWxsIHx8CisJeworCQllY2hvICIkKHRwdXQgc2V0YWYgMSllcnJvcjogZm91bmQgdW5pZ25vcmVkIGJ1aWxkIGFydGlmYWN0cyQodHB1dCBzZ3IwKSIKKwkJZmFsc2UKKwl9Cit9CisKKyMgQ2xlYXIgTUFLRUZMQUdTIHRoYXQgbWF5IGNvbWUgZnJvbSB0aGUgb3V0c2lkZSB3b3JsZC4KK2V4cG9ydCBNQUtFRkxBR1M9CisKKyMgU2V0ICdleGl0IG9uIGVycm9yJyBmb3IgYWxsIENJIHNjcmlwdHMgdG8gbGV0IHRoZSBjYWxsZXIga25vdyB0aGF0CisjIHNvbWV0aGluZyB3ZW50IHdyb25nLgorIyBTZXQgdHJhY2luZyBleGVjdXRlZCBjb21tYW5kcywgcHJpbWFyaWx5IHNldHRpbmcgZW52aXJvbm1lbnQgdmFyaWFibGVzCisjIGFuZCBpbnN0YWxsaW5nIGRlcGVuZGVuY2llcy4KK3NldCAtZXgKKworaWYgdGVzdCB0cnVlID0gIiRUUkFWSVMiCit0aGVuCisJQ0lfVFlQRT10cmF2aXMKKwkjIFdoZW4gYnVpbGRpbmcgYSBQUiwgVFJBVklTX0JSQU5DSCByZWZlcnMgdG8gdGhlICp0YXJnZXQqIGJyYW5jaC4gTm90CisJIyB3aGF0IHdlIHdhbnQgaGVyZS4gV2Ugd2FudCB0aGUgc291cmNlIGJyYW5jaCBpbnN0ZWFkLgorCUNJX0JSQU5DSD0iJHtUUkFWSVNfUFVMTF9SRVFVRVNUX0JSQU5DSDotJFRSQVZJU19CUkFOQ0h9IgorCUNJX0NPTU1JVD0iJFRSQVZJU19DT01NSVQiCisJQ0lfSk9CX0lEPSIkVFJBVklTX0pPQl9JRCIKKwlDSV9KT0JfTlVNQkVSPSIkVFJBVklTX0pPQl9OVU1CRVIiCisJQ0lfT1NfTkFNRT0iJFRSQVZJU19PU19OQU1FIgorCUNJX1JFUE9fU0xVRz0iJFRSQVZJU19SRVBPX1NMVUciCisKKwljYWNoZV9kaXI9IiRIT01FL3RyYXZpcy1jYWNoZSIKKworCXVybF9mb3Jfam9iX2lkICgpIHsKKwkJZWNobyAiaHR0cHM6Ly90cmF2aXMtY2kub3JnLyRDSV9SRVBPX1NMVUcvam9icy8kMSIKKwl9CisKKwlCUkVXX0lOU1RBTExfUEFDS0FHRVM9ImdpdC1sZnMgZ2V0dGV4dCIKKwlleHBvcnQgR0lUX1BST1ZFX09QVFM9Ii0tdGltZXIgLS1qb2JzIDMgLS1zdGF0ZT1mYWlsZWQsc2xvdyxzYXZlIgorCWV4cG9ydCBHSVRfVEVTVF9PUFRTPSItLXZlcmJvc2UtbG9nIC14IC0taW1tZWRpYXRlIgorCU1BS0VGTEFHUz0iJE1BS0VGTEFHUyAtLWpvYnM9MiIKK2VsaWYgdGVzdCAtbiAiJFNZU1RFTV9DT0xMRUNUSU9OVVJJIiB8fCB0ZXN0IC1uICIkU1lTVEVNX1RBU0tERUZJTklUSU9OU1VSSSIKK3RoZW4KKwlDSV9UWVBFPWF6dXJlLXBpcGVsaW5lcworCSMgV2UgYXJlIHJ1bm5pbmcgaW4gQXp1cmUgUGlwZWxpbmVzCisJQ0lfQlJBTkNIPSIkQlVJTERfU09VUkNFQlJBTkNIIgorCUNJX0NPTU1JVD0iJEJVSUxEX1NPVVJDRVZFUlNJT04iCisJQ0lfSk9CX0lEPSIkQlVJTERfQlVJTERJRCIKKwlDSV9KT0JfTlVNQkVSPSIkQlVJTERfQlVJTEROVU1CRVIiCisJQ0lfT1NfTkFNRT0iJChlY2hvICIkQUdFTlRfT1MiIHwgdHIgQS1aIGEteikiCisJdGVzdCBkYXJ3aW4gIT0gIiRDSV9PU19OQU1FIiB8fCBDSV9PU19OQU1FPW9zeAorCUNJX1JFUE9fU0xVRz0iJChleHByICIkQlVJTERfUkVQT1NJVE9SWV9VUkkiIDogJy4qL1woW14vXSovW14vXSpcKSQnKSIKKwlDQz0iJHtDQzotZ2NjfSIKKworCSMgdXNlIGEgc3ViZGlyZWN0b3J5IG9mIHRoZSBjYWNoZSBkaXIgKGJlY2F1c2UgdGhlIGZpbGUgc2hhcmUgaXMgc2hhcmVkCisJIyBhbW9uZyAqYWxsKiBwaGFzZXMpCisJY2FjaGVfZGlyPSIkSE9NRS90ZXN0LWNhY2hlLyRTWVNURU1fUEhBU0VOQU1FIgorCisJdXJsX2Zvcl9qb2JfaWQgKCkgeworCQllY2hvICIkU1lTVEVNX1RBU0tERUZJTklUSU9OU1VSSSRTWVNURU1fVEVBTVBST0pFQ1QvX2J1aWxkL3Jlc3VsdHM/YnVpbGRJZD0kMSIKKwl9CisKKwlleHBvcnQgR0lUX1BST1ZFX09QVFM9Ii0tdGltZXIgLS1qb2JzIDEwIC0tc3RhdGU9ZmFpbGVkLHNsb3csc2F2ZSIKKwlleHBvcnQgR0lUX1RFU1RfT1BUUz0iLS12ZXJib3NlLWxvZyAteCAtLXdyaXRlLWp1bml0LXhtbCIKKwlNQUtFRkxBR1M9IiRNQUtFRkxBR1MgLS1qb2JzPTEwIgorCXRlc3Qgd2luZG93c19udCAhPSAiJENJX09TX05BTUUiIHx8CisJR0lUX1RFU1RfT1BUUz0iLS1uby1jaGFpbi1saW50IC0tbm8tYmluLXdyYXBwZXJzICRHSVRfVEVTVF9PUFRTIgorZWxzZQorCWVjaG8gIkNvdWxkIG5vdCBpZGVudGlmeSBDSSB0eXBlIiA+JjIKKwlleGl0IDEKK2ZpCisKK2dvb2RfdHJlZXNfZmlsZT0iJGNhY2hlX2Rpci9nb29kLXRyZWVzIgorCitta2RpciAtcCAiJGNhY2hlX2RpciIKKworc2tpcF9icmFuY2hfdGlwX3dpdGhfdGFnCitza2lwX2dvb2RfdHJlZQorCitpZiB0ZXN0IC16ICIkam9ibmFtZSIKK3RoZW4KKwlqb2JuYW1lPSIkQ0lfT1NfTkFNRS0kQ0MiCitmaQorCitleHBvcnQgREVWRUxPUEVSPTEKK2V4cG9ydCBERUZBVUxUX1RFU1RfVEFSR0VUPXByb3ZlCitleHBvcnQgR0lUX1RFU1RfQ0xPTkVfMkdCPXRydWUKKworY2FzZSAiJGpvYm5hbWUiIGluCitsaW51eC1jbGFuZ3xsaW51eC1nY2MpCisJaWYgWyAiJGpvYm5hbWUiID0gbGludXgtZ2NjIF0KKwl0aGVuCisJCWV4cG9ydCBDQz1nY2MtOAorCQlNQUtFRkxBR1M9IiRNQUtFRkxBR1MgUFlUSE9OX1BBVEg9JCh3aGljaCBweXRob24zKSIKKwllbHNlCisJCU1BS0VGTEFHUz0iJE1BS0VGTEFHUyBQWVRIT05fUEFUSD0kKHdoaWNoIHB5dGhvbjIpIgorCWZpCisKKwlleHBvcnQgR0lUX1RFU1RfSFRUUEQ9dHJ1ZQorCisJIyBUaGUgTGludXggYnVpbGQgaW5zdGFsbHMgdGhlIGRlZmluZWQgZGVwZW5kZW5jeSB2ZXJzaW9ucyBiZWxvdy4KKwkjIFRoZSBPUyBYIGJ1aWxkIGluc3RhbGxzIG11Y2ggbW9yZSByZWNlbnQgdmVyc2lvbnMsIHdoaWNoZXZlcgorCSMgd2VyZSByZWNvcmRlZCBpbiB0aGUgSG9tZWJyZXcgZGF0YWJhc2UgdXBvbiBjcmVhdGluZyB0aGUgT1MgWAorCSMgaW1hZ2UuCisJIyBLZWVwIHRoYXQgaW4gbWluZCB3aGVuIHlvdSBlbmNvdW50ZXIgYSBicm9rZW4gT1MgWCBidWlsZCEKKwlleHBvcnQgTElOVVhfUDRfVkVSU0lPTj0iMTYuMiIKKwlleHBvcnQgTElOVVhfR0lUX0xGU19WRVJTSU9OPSIxLjUuMiIKKworCVA0X1BBVEg9IiRIT01FL2N1c3RvbS9wNCIKKwlHSVRfTEZTX1BBVEg9IiRIT01FL2N1c3RvbS9naXQtbGZzIgorCWV4cG9ydCBQQVRIPSIkR0lUX0xGU19QQVRIOiRQNF9QQVRIOiRQQVRIIgorCTs7Citvc3gtY2xhbmd8b3N4LWdjYykKKwlpZiBbICIkam9ibmFtZSIgPSBvc3gtZ2NjIF0KKwl0aGVuCisJCWV4cG9ydCBDQz1nY2MtOQorCQlNQUtFRkxBR1M9IiRNQUtFRkxBR1MgUFlUSE9OX1BBVEg9JCh3aGljaCBweXRob24zKSIKKwllbHNlCisJCU1BS0VGTEFHUz0iJE1BS0VGTEFHUyBQWVRIT05fUEFUSD0kKHdoaWNoIHB5dGhvbjIpIgorCWZpCisKKwkjIHQ5ODEwIG9jY2FzaW9uYWxseSBmYWlscyBvbiBUcmF2aXMgQ0kgT1MgWAorCSMgdDk4MTYgb2NjYXNpb25hbGx5IGZhaWxzIHdpdGggIlRBUCBvdXQgb2Ygc2VxdWVuY2UgZXJyb3JzIiBvbgorCSMgVHJhdmlzIENJIE9TIFgKKwlleHBvcnQgR0lUX1NLSVBfVEVTVFM9InQ5ODEwIHQ5ODE2IgorCTs7CitHSVRfVEVTVF9HRVRURVhUX1BPSVNPTikKKwlleHBvcnQgR0lUX1RFU1RfR0VUVEVYVF9QT0lTT049dHJ1ZQorCTs7Citlc2FjCisKK01BS0VGTEFHUz0iJE1BS0VGTEFHUyBDQz0ke0NDOi1jY30iCmRpZmYgLS1naXQgYS9jaS9tYWtlLXRlc3QtYXJ0aWZhY3RzLnNoIGIvY2kvbWFrZS10ZXN0LWFydGlmYWN0cy5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi42NDY5Njc0Ci0tLSAvZGV2L251bGwKKysrIGIvY2kvbWFrZS10ZXN0LWFydGlmYWN0cy5zaApAQCAtMCwwICsxLDEyIEBACisjIS9iaW4vc2gKKyMKKyMgQnVpbGQgR2l0IGFuZCBzdG9yZSBhcnRpZmFjdHMgZm9yIHRlc3RpbmcKKyMKKworbWtkaXIgLXAgIiQxIiAjIGluIGNhc2UgY2kvbGliLnNoIGRlY2lkZXMgdG8gcXVpdCBlYXJseQorCisuICR7MCUvKn0vbGliLnNoCisKK21ha2UgYXJ0aWZhY3RzLXRhciBBUlRJRkFDVFNfRElSRUNUT1JZPSIkMSIKKworY2hlY2tfdW5pZ25vcmVkX2J1aWxkX2FydGlmYWN0cwpkaWZmIC0tZ2l0IGEvY2kvbW91bnQtZmlsZXNoYXJlLnNoIGIvY2kvbW91bnQtZmlsZXNoYXJlLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjI2YjU4YTgKLS0tIC9kZXYvbnVsbAorKysgYi9jaS9tb3VudC1maWxlc2hhcmUuc2gKQEAgLTAsMCArMSwyNSBAQAorIyEvYmluL3NoCisKK2RpZSAoKSB7CisJZWNobyAiJCoiID4mMgorCWV4aXQgMQorfQorCit0ZXN0ICQjID0gNCB8fAorZGllICJVc2FnZTogJDAgPHNoYXJlPiA8dXNlcm5hbWU+IDxwYXNzd29yZD4gPG1vdW50cG9pbnQ+IgorCitta2RpciAtcCAiJDQiIHx8IGRpZSAiQ291bGQgbm90IGNyZWF0ZSAkNCIKKworY2FzZSAiJCh1bmFtZSAtcykiIGluCitMaW51eCkKKwlzdWRvIG1vdW50IC10IGNpZnMgLW8gdmVycz0zLjAsdXNlcm5hbWU9IiQyIixwYXNzd29yZD0iJDMiLGRpcl9tb2RlPTA3NzcsZmlsZV9tb2RlPTA3Nzcsc2VydmVyaW5vICIkMSIgIiQ0IgorCTs7CitEYXJ3aW4pCisJcGFzcz0iJChlY2hvICIkMyIgfCBzZWQgLWUgJ3MvXC8vJTJGL2cnIC1lICdzLysvJTJCL2cnKSIgJiYKKwltb3VudCAtdCBzbWJmcyxzb2Z0ICJzbWI6Ly8kMjokcGFzc0AkezEjLy99IiAiJDQiCisJOzsKKyopCisJZGllICJObyBzdXBwb3J0IGZvciAkKHVuYW1lIC1zKSIKKwk7OworZXNhYyB8fAorZGllICJDb3VsZCBub3QgbW91bnQgJDQiCmRpZmYgLS1naXQgYS9jaS9wcmludC10ZXN0LWZhaWx1cmVzLnNoIGIvY2kvcHJpbnQtdGVzdC1mYWlsdXJlcy5zaAppbmRleCBkNTU0NjBhLi5lNjg4YTI2IDEwMDc1NQotLS0gYS9jaS9wcmludC10ZXN0LWZhaWx1cmVzLnNoCisrKyBiL2NpL3ByaW50LXRlc3QtZmFpbHVyZXMuc2gKQEAgLTMsNyArMyw3IEBACiAjIFByaW50IG91dHB1dCBvZiBmYWlsaW5nIHRlc3RzCiAjCiAKLS4gJHswJS8qfS9saWItdHJhdmlzY2kuc2gKKy4gJHswJS8qfS9saWIuc2gKIAogIyBUcmFjaW5nIGV4ZWN1dGVkIGNvbW1hbmRzIHdvdWxkIHByb2R1Y2UgdG9vIG11Y2ggbm9pc2UgaW4gdGhlIGxvb3AgYmVsb3cuCiBzZXQgK3gKQEAgLTM4LDYgKzM4LDE5IEBACiAJCXRlc3RfbmFtZT0iJHtURVNUX0VYSVQlLmV4aXR9IgogCQl0ZXN0X25hbWU9IiR7dGVzdF9uYW1lIyMqL30iCiAJCXRyYXNoX2Rpcj0idHJhc2ggZGlyZWN0b3J5LiR0ZXN0X25hbWUiCisJCWNhc2UgIiRDSV9UWVBFIiBpbgorCQl0cmF2aXMpCisJCQk7OworCQlhenVyZS1waXBlbGluZXMpCisJCQlta2RpciAtcCBmYWlsZWQtdGVzdC1hcnRpZmFjdHMKKwkJCW12ICIkdHJhc2hfZGlyIiBmYWlsZWQtdGVzdC1hcnRpZmFjdHMKKwkJCWNvbnRpbnVlCisJCQk7OworCQkqKQorCQkJZWNobyAiVW5oYW5kbGVkIENJIHR5cGU6ICRDSV9UWVBFIiA+JjIKKwkJCWV4aXQgMQorCQkJOzsKKwkJZXNhYwogCQl0cmFzaF90Z3pfYjY0PSJ0cmFzaC4kdGVzdF9uYW1lLmJhc2U2NCIKIAkJaWYgWyAtZCAiJHRyYXNoX2RpciIgXQogCQl0aGVuCmRpZmYgLS1naXQgYS9jaS9ydW4tYnVpbGQtYW5kLXRlc3RzLnNoIGIvY2kvcnVuLWJ1aWxkLWFuZC10ZXN0cy5zaAppbmRleCBjZGExNzBkLi40ZGY1NGM0IDEwMDc1NQotLS0gYS9jaS9ydW4tYnVpbGQtYW5kLXRlc3RzLnNoCisrKyBiL2NpL3J1bi1idWlsZC1hbmQtdGVzdHMuc2gKQEAgLTMsMjIgKzMsMzUgQEAKICMgQnVpbGQgYW5kIHRlc3QgR2l0CiAjCiAKLS4gJHswJS8qfS9saWItdHJhdmlzY2kuc2gKKy4gJHswJS8qfS9saWIuc2gKIAotbG4gLXMgIiRjYWNoZV9kaXIvLnByb3ZlIiB0Ly5wcm92ZQorY2FzZSAiJENJX09TX05BTUUiIGluCit3aW5kb3dzKikgY21kIC8vYyBta2xpbmsgLy9qIHRcXC5wcm92ZSAiJChjeWdwYXRoIC1hdyAiJGNhY2hlX2Rpci8ucHJvdmUiKSI7OworKikgbG4gLXMgIiRjYWNoZV9kaXIvLnByb3ZlIiB0Ly5wcm92ZTs7Citlc2FjCiAKLW1ha2UgLS1qb2JzPTIKLW1ha2UgLS1xdWlldCB0ZXN0Ci1pZiB0ZXN0ICIkam9ibmFtZSIgPSAibGludXgtZ2NjIgotdGhlbgorbWFrZQorY2FzZSAiJGpvYm5hbWUiIGluCitsaW51eC1nY2MpCisJbWFrZSB0ZXN0CiAJZXhwb3J0IEdJVF9URVNUX1NQTElUX0lOREVYPXllcwogCWV4cG9ydCBHSVRfVEVTVF9GVUxMX0lOX1BBQ0tfQVJSQVk9dHJ1ZQogCWV4cG9ydCBHSVRfVEVTVF9PRV9TSVpFPTEwCiAJZXhwb3J0IEdJVF9URVNUX09FX0RFTFRBX1NJWkU9NQogCWV4cG9ydCBHSVRfVEVTVF9DT01NSVRfR1JBUEg9MQogCWV4cG9ydCBHSVRfVEVTVF9NVUxUSV9QQUNLX0lOREVYPTEKLQltYWtlIC0tcXVpZXQgdGVzdAotZmkKKwlleHBvcnQgR0lUX1RFU1RfQUREX0lfVVNFX0JVSUxUSU49MQorCW1ha2UgdGVzdAorCTs7CitsaW51eC1nY2MtNC44KQorCSMgRG9uJ3QgcnVuIHRoZSB0ZXN0czsgd2Ugb25seSBjYXJlIGFib3V0IHdoZXRoZXIgR2l0IGNhbiBiZQorCSMgYnVpbHQgd2l0aCBHQ0MgNC44LCBhcyBpdCBlcnJvcnMgb3V0IG9uIHNvbWUgdW5kZXNpcmVkIChDOTkpCisJIyBjb25zdHJ1Y3RzIHRoYXQgbmV3ZXIgY29tcGlsZXJzIHNlZW0gdG8gcXVpZXRseSBhY2NlcHQuCisJOzsKKyopCisJbWFrZSB0ZXN0CisJOzsKK2VzYWMKIAogY2hlY2tfdW5pZ25vcmVkX2J1aWxkX2FydGlmYWN0cwogCmRpZmYgLS1naXQgYS9jaS9ydW4tbGludXgzMi1idWlsZC5zaCBiL2NpL3J1bi1saW51eDMyLWJ1aWxkLnNoCmluZGV4IDJjNjBkMmUuLmUzYTE5M2EgMTAwNzU1Ci0tLSBhL2NpL3J1bi1saW51eDMyLWJ1aWxkLnNoCisrKyBiL2NpL3J1bi1saW51eDMyLWJ1aWxkLnNoCkBAIC01NSw2ICs1NSw2IEBACiAJc2V0IC1leAogCWNkIC91c3Ivc3JjL2dpdAogCXRlc3QgLW4gIiRjYWNoZV9kaXIiICYmIGxuIC1zICIkY2FjaGVfZGlyLy5wcm92ZSIgdC8ucHJvdmUKLQltYWtlIC0tam9icz0yCi0JbWFrZSAtLXF1aWV0IHRlc3QKKwltYWtlCisJbWFrZSB0ZXN0CiAnCmRpZmYgLS1naXQgYS9jaS9ydW4tbGludXgzMi1kb2NrZXIuc2ggYi9jaS9ydW4tbGludXgzMi1kb2NrZXIuc2gKaW5kZXggMjE2Mzc5MC4uNzUxYWNmYyAxMDA3NTUKLS0tIGEvY2kvcnVuLWxpbnV4MzItZG9ja2VyLnNoCisrKyBiL2NpL3J1bi1saW51eDMyLWRvY2tlci5zaApAQCAtMyw3ICszLDcgQEAKICMgRG93bmxvYWQgYW5kIHJ1biBEb2NrZXIgaW1hZ2UgdG8gYnVpbGQgYW5kIHRlc3QgMzItYml0IEdpdAogIwogCi0uICR7MCUvKn0vbGliLXRyYXZpc2NpLnNoCisuICR7MCUvKn0vbGliLnNoCiAKIGRvY2tlciBwdWxsIGRhYWxkL3VidW50dTMyOnhlbmlhbAogCmRpZmYgLS1naXQgYS9jaS9ydW4tc3RhdGljLWFuYWx5c2lzLnNoIGIvY2kvcnVuLXN0YXRpYy1hbmFseXNpcy5zaAppbmRleCA1Njg4ZjI2Li42NWJjZWJkIDEwMDc1NQotLS0gYS9jaS9ydW4tc3RhdGljLWFuYWx5c2lzLnNoCisrKyBiL2NpL3J1bi1zdGF0aWMtYW5hbHlzaXMuc2gKQEAgLTMsOSArMyw5IEBACiAjIFBlcmZvcm0gdmFyaW91cyBzdGF0aWMgY29kZSBhbmFseXNpcyBjaGVja3MKICMKIAotLiAkezAlLyp9L2xpYi10cmF2aXNjaS5zaAorLiAkezAlLyp9L2xpYi5zaAogCi1tYWtlIC0tam9icz0yIGNvY2NpY2hlY2sKK21ha2UgY29jY2ljaGVjawogCiBzZXQgK3gKIApAQCAtMjYsNCArMjYsNyBAQAogCWV4aXQgMQogZmkKIAorbWFrZSBoZHItY2hlY2sgfHwKK2V4aXQgMQorCiBzYXZlX2dvb2RfdHJlZQpkaWZmIC0tZ2l0IGEvY2kvcnVuLXRlc3Qtc2xpY2Uuc2ggYi9jaS9ydW4tdGVzdC1zbGljZS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5mOGMyYzMxCi0tLSAvZGV2L251bGwKKysrIGIvY2kvcnVuLXRlc3Qtc2xpY2Uuc2gKQEAgLTAsMCArMSwxNyBAQAorIyEvYmluL3NoCisjCisjIFRlc3QgR2l0IGluIHBhcmFsbGVsCisjCisKKy4gJHswJS8qfS9saWIuc2gKKworY2FzZSAiJENJX09TX05BTUUiIGluCit3aW5kb3dzKikgY21kIC8vYyBta2xpbmsgLy9qIHRcXC5wcm92ZSAiJChjeWdwYXRoIC1hdyAiJGNhY2hlX2Rpci8ucHJvdmUiKSI7OworKikgbG4gLXMgIiRjYWNoZV9kaXIvLnByb3ZlIiB0Ly5wcm92ZTs7Citlc2FjCisKK21ha2UgLS1xdWlldCAtQyB0IFQ9IiQoY2QgdCAmJgorCS4vaGVscGVyL3Rlc3QtdG9vbCBwYXRoLXV0aWxzIHNsaWNlLXRlc3RzICIkMSIgIiQyIiB0WzAtOV0qLnNoIHwKKwl0ciAnXG4nICcgJykiCisKK2NoZWNrX3VuaWdub3JlZF9idWlsZF9hcnRpZmFjdHMKZGlmZiAtLWdpdCBhL2NpL3J1bi13aW5kb3dzLWJ1aWxkLnNoIGIvY2kvcnVuLXdpbmRvd3MtYnVpbGQuc2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IGQ5OWExODAuLjAwMDAwMDAKLS0tIGEvY2kvcnVuLXdpbmRvd3MtYnVpbGQuc2gKKysrIC9kZXYvbnVsbApAQCAtMSwxMDMgKzAsMCBAQAotIyEvdXNyL2Jpbi9lbnYgYmFzaAotIwotIyBTY3JpcHQgdG8gdHJpZ2dlciB0aGUgR2l0IGZvciBXaW5kb3dzIGJ1aWxkIGFuZCB0ZXN0IHJ1bi4KLSMgU2V0IHRoZSAkR0ZXX0NJX1RPS0VOIGFzIGVudmlyb25tZW50IHZhcmlhYmxlLgotIyBQYXNzIHRoZSBicmFuY2ggKG9ubHkgYnJhbmNoZXMgb24gaHR0cHM6Ly9naXRodWIuY29tL2dpdC9naXQgYXJlCi0jIHN1cHBvcnRlZCkgYW5kIGEgY29tbWl0IGhhc2guCi0jCi0KLS4gJHswJS8qfS9saWItdHJhdmlzY2kuc2gKLQotdGVzdCAkIyAtbmUgMiAmJiBlY2hvICJVbmV4cGVjdGVkIG51bWJlciBvZiBwYXJhbWV0ZXJzIiAmJiBleGl0IDEKLXRlc3QgLXogIiRHRldfQ0lfVE9LRU4iICYmIGVjaG8gIkdGV19DSV9UT0tFTiBub3QgZGVmaW5lZCIgJiYgZXhpdAotCi1CUkFOQ0g9JDEKLUNPTU1JVD0kMgotCi1nZndjaSAoKSB7Ci0JbG9jYWwgQ1VSTF9FUlJPUl9DT0RFIEhUVFBfQ09ERQotCUNPTlRFTlRfRklMRT0kKG1rdGVtcCAtdCAiZ2l0LXdpbmRvd3MtY2ktWFhYWFhYIikKLQl3aGlsZSB0ZXN0IC16ICRIVFRQX0NPREUKLQlkbwotCUhUVFBfQ09ERT0kKGN1cmwgXAotCQktSCAiQXV0aGVudGljYXRpb246IEJlYXJlciAkR0ZXX0NJX1RPS0VOIiBcCi0JCS0tc2lsZW50IC0tcmV0cnkgNSAtLXdyaXRlLW91dCAnJXtIVFRQX0NPREV9JyBcCi0JCS0tb3V0cHV0ID4oc2VkICIkKHByaW50ZiAnMXMvXlx4ZWZceGJiXHhiZi8vJykiID4kQ09OVEVOVF9GSUxFKSBcCi0JCSJodHRwczovL2dpdC1mb3Itd2luZG93cy1jaS5henVyZXdlYnNpdGVzLm5ldC9hcGkvVGVzdE5vdz8kMSIgXAotCSkKLQlDVVJMX0VSUk9SX0NPREU9JD8KLQkJIyBUaGUgR2ZXIENJIHdlYiBhcHAgc29tZXRpbWVzIHJldHVybnMgSFRUUCBlcnJvcnMgb2YKLQkJIyAiNTAyIGJhZCBnYXRld2F5IiBvciAiNTAzIHNlcnZpY2UgdW5hdmFpbGFibGUiLgotCQkjIFdlIGFsc28gbmVlZCB0byBjaGVjayB0aGUgSFRUUCBjb250ZW50IGJlY2F1c2UgdGhlIEdmVyB3ZWIKLQkJIyBhcHAgc2VlbXMgdG8gcGFzcyB0aHJvdWdoIChlcnJvcikgcmVzdWx0cyBmcm9tIG90aGVyIEF6dXJlCi0JCSMgY2FsbHMgd2l0aCBIVFRQIGNvZGUgMjAwLgotCQkjIFdhaXQgYSBsaXR0bGUgYW5kIHJldHJ5IGlmIHdlIGRldGVjdCB0aGlzIGVycm9yLiBNb3JlIGluZm86Ci0JCSMgaHR0cHM6Ly9kb2NzLm1pY3Jvc29mdC5jb20vZW4taW4vYXp1cmUvYXBwLXNlcnZpY2Utd2ViL2FwcC1zZXJ2aWNlLXdlYi10cm91Ymxlc2hvb3QtaHR0cC01MDItaHR0cC01MDMKLQkJaWYgdGVzdCAkSFRUUF9DT0RFIC1lcSA1MDIgfHwKLQkJICAgdGVzdCAkSFRUUF9DT0RFIC1lcSA1MDMgfHwKLQkJICAgZ3JlcCAiNTAyIC0gV2ViIHNlcnZlciByZWNlaXZlZCBhbiBpbnZhbGlkIHJlc3BvbnNlIiAkQ09OVEVOVF9GSUxFID4vZGV2L251bGwKLQkJdGhlbgotCQkJc2xlZXAgMTAKLQkJCUhUVFBfQ09ERT0KLQkJZmkKLQlkb25lCi0JY2F0ICRDT05URU5UX0ZJTEUKLQlybSAkQ09OVEVOVF9GSUxFCi0JaWYgdGVzdCAkQ1VSTF9FUlJPUl9DT0RFIC1uZSAwCi0JdGhlbgotCQlyZXR1cm4gJENVUkxfRVJST1JfQ09ERQotCWZpCi0JaWYgdGVzdCAiJEhUVFBfQ09ERSIgLWdlIDQwMCAmJiB0ZXN0ICIkSFRUUF9DT0RFIiAtbHQgNjAwCi0JdGhlbgotCQlyZXR1cm4gMTI3Ci0JZmkKLX0KLQotIyBUcmlnZ2VyIGJ1aWxkIGpvYgotQlVJTERfSUQ9JChnZndjaSAiYWN0aW9uPXRyaWdnZXImYnJhbmNoPSRCUkFOQ0gmY29tbWl0PSRDT01NSVQmc2tpcFRlc3RzPWZhbHNlIikKLWlmIHRlc3QgJD8gLW5lIDAKLXRoZW4KLQllY2hvICJVbmFibGUgdG8gdHJpZ2dlciBWaXN1YWwgU3R1ZGlvIFRlYW0gU2VydmljZXMgQnVpbGQiCi0JZWNobyAiJEJVSUxEX0lEIgotCWV4aXQgMQotZmkKLQotIyBDaGVjayBpZiB0aGUgJEJVSUxEX0lEIGNvbnRhaW5zIGEgbnVtYmVyCi1jYXNlICRCVUlMRF9JRCBpbgotJyd8KlshMC05XSopIGVjaG8gIlVuZXhwZWN0ZWQgYnVpbGQgbnVtYmVyOiAkQlVJTERfSUQiICYmIGV4aXQgMQotZXNhYwotCi1lY2hvICJWaXN1YWwgU3R1ZGlvIFRlYW0gU2VydmljZXMgQnVpbGQgIyR7QlVJTERfSUR9IgotCi0jIFRyYWNpbmcgZXhlY3VlZCBjb21tYW5kcyB3b3VsZCBwcm9kdWNlIHRvbyBtdWNoIG5vaXNlIGluIHRoZSB3YWl0aW5nCi0jIGxvb3AgYmVsb3cuCi1zZXQgK3gKLQotIyBXYWl0IHVudGlsIGJ1aWxkIGpvYiBmaW5pc2hlZAotU1RBVFVTPQotUkVTVUxUPQotd2hpbGUgdHJ1ZQotZG8KLQlMQVNUX1NUQVRVUz0kU1RBVFVTCi0JU1RBVFVTPSQoZ2Z3Y2kgImFjdGlvbj1zdGF0dXMmYnVpbGRJZD0kQlVJTERfSUQiKQotCXRlc3QgIiRTVEFUVVMiID0gIiRMQVNUX1NUQVRVUyIgfHwgcHJpbnRmICJcblN0YXR1czogJXMgIiAiJFNUQVRVUyIKLQlwcmludGYgIi4iCi0KLQljYXNlICIkU1RBVFVTIiBpbgotCWluUHJvZ3Jlc3N8cG9zdHBvbmVkfG5vdFN0YXJ0ZWQpIHNsZWVwIDEwICAgICAgICAgICAgICAgOzsgIyBjb250aW51ZQotCQkgImNvbXBsZXRlZDogc3VjY2VlZGVkIikgUkVTVUxUPSJzdWNjZXNzIjsgYnJlYWs7OyAjIHN1Y2Nlc3MKLQkJICAgICJjb21wbGV0ZWQ6IGZhaWxlZCIpICAgICAgICAgICAgICAgICAgIGJyZWFrOzsgIyBmYWlsdXJlCi0JKikgZWNobyAiVW5oYW5kbGVkIHN0YXR1czogJFNUQVRVUyI7ICAgICAgICAgICAgICAgYnJlYWs7OyAjIHVua25vd24KLQllc2FjCi1kb25lCi0KLSMgUHJpbnQgbG9nCi1lY2hvICIiCi1lY2hvICIiCi1zZXQgLXgKLWdmd2NpICJhY3Rpb249bG9nJmJ1aWxkSWQ9JEJVSUxEX0lEIiB8IGN1dCAtYyAzMC0KLQotIyBTZXQgZXhpdCBjb2RlIGZvciBUcmF2aXNDSQotdGVzdCAiJFJFU1VMVCIgPSAic3VjY2VzcyIKLQotc2F2ZV9nb29kX3RyZWUKZGlmZiAtLWdpdCBhL2NpL3Rlc3QtZG9jdW1lbnRhdGlvbi5zaCBiL2NpL3Rlc3QtZG9jdW1lbnRhdGlvbi5zaAppbmRleCBhMjBkZTljLi5kZTQxODg4IDEwMDc1NQotLS0gYS9jaS90ZXN0LWRvY3VtZW50YXRpb24uc2gKKysrIGIvY2kvdGVzdC1kb2N1bWVudGF0aW9uLnNoCkBAIC0zLDMzICszLDQzIEBACiAjIFBlcmZvcm0gc2FuaXR5IGNoZWNrcyBvbiBkb2N1bWVudGF0aW9uIGFuZCBidWlsZCBpdC4KICMKIAotLiAkezAlLyp9L2xpYi10cmF2aXNjaS5zaAorLiAkezAlLyp9L2xpYi5zaAogCi1nZW0gaW5zdGFsbCBhc2NpaWRvY3RvcgorZmlsdGVyX2xvZyAoKSB7CisJc2VkIC1lICcvXkdJVF9WRVJTSU9OID0gL2QnIFwKKwkgICAgLWUgIi9jb25zdGFudCBHZW06OkNvbmZpZ01hcCBpcyBkZXByZWNhdGVkL2QiIFwKKwkgICAgLWUgJy9eICAgIFwqIG5ldyBhc2NpaWRvYyBmbGFncyQvZCcgXAorCSAgICAtZSAnL3N0cmlwcGVkIG5hbWVzcGFjZSBiZWZvcmUgcHJvY2Vzc2luZy9kJyBcCisJICAgIC1lICcvQXR0cmlidXRlZC4qSURzIGZvciBlbGVtZW50L2QnIFwKKwkgICAgIiQxIgorfQogCiBtYWtlIGNoZWNrLWJ1aWx0aW5zCiBtYWtlIGNoZWNrLWRvY3MKIAogIyBCdWlsZCBkb2NzIHdpdGggQXNjaWlEb2MKLW1ha2UgLS1qb2JzPTIgZG9jID4gPih0ZWUgc3Rkb3V0LmxvZykgMj4gPih0ZWUgc3RkZXJyLmxvZyA+JjIpCi0hIHRlc3QgLXMgc3RkZXJyLmxvZworbWFrZSBkb2MgPiA+KHRlZSBzdGRvdXQubG9nKSAyPiA+KHRlZSBzdGRlcnIucmF3ID4mMikKK2NhdCBzdGRlcnIucmF3CitmaWx0ZXJfbG9nIHN0ZGVyci5yYXcgPnN0ZGVyci5sb2cKK3Rlc3QgISAtcyBzdGRlcnIubG9nCiB0ZXN0IC1zIERvY3VtZW50YXRpb24vZ2l0Lmh0bWwKIHRlc3QgLXMgRG9jdW1lbnRhdGlvbi9naXQueG1sCiB0ZXN0IC1zIERvY3VtZW50YXRpb24vZ2l0LjEKIGdyZXAgJzxtZXRhIG5hbWU9ImdlbmVyYXRvciIgY29udGVudD0iQXNjaWlEb2MgJyBEb2N1bWVudGF0aW9uL2dpdC5odG1sCiAKLXJtIC1mIHN0ZG91dC5sb2cgc3RkZXJyLmxvZworcm0gLWYgc3Rkb3V0LmxvZyBzdGRlcnIubG9nIHN0ZGVyci5yYXcKIGNoZWNrX3VuaWdub3JlZF9idWlsZF9hcnRpZmFjdHMKIAogIyBCdWlsZCBkb2NzIHdpdGggQXNjaWlEb2N0b3IKIG1ha2UgY2xlYW4KLW1ha2UgLS1qb2JzPTIgVVNFX0FTQ0lJRE9DVE9SPTEgZG9jID4gPih0ZWUgc3Rkb3V0LmxvZykgMj4gPih0ZWUgc3RkZXJyLmxvZyA+JjIpCi1zZWQgJy9eR0lUX1ZFUlNJT04gPSAvIGQnIHN0ZGVyci5sb2cKLSEgdGVzdCAtcyBzdGRlcnIubG9nCittYWtlIFVTRV9BU0NJSURPQ1RPUj0xIGRvYyA+ID4odGVlIHN0ZG91dC5sb2cpIDI+ID4odGVlIHN0ZGVyci5yYXcgPiYyKQorY2F0IHN0ZGVyci5yYXcKK2ZpbHRlcl9sb2cgc3RkZXJyLnJhdyA+c3RkZXJyLmxvZwordGVzdCAhIC1zIHN0ZGVyci5sb2cKIHRlc3QgLXMgRG9jdW1lbnRhdGlvbi9naXQuaHRtbAogZ3JlcCAnPG1ldGEgbmFtZT0iZ2VuZXJhdG9yIiBjb250ZW50PSJBc2NpaWRvY3RvciAnIERvY3VtZW50YXRpb24vZ2l0Lmh0bWwKIAotcm0gLWYgc3Rkb3V0LmxvZyBzdGRlcnIubG9nCitybSAtZiBzdGRvdXQubG9nIHN0ZGVyci5sb2cgc3RkZXJyLnJhdwogY2hlY2tfdW5pZ25vcmVkX2J1aWxkX2FydGlmYWN0cwogCiBzYXZlX2dvb2RfdHJlZQpkaWZmIC0tZ2l0IGEvY29sb3IuYyBiL2NvbG9yLmMKaW5kZXggZWJiMjIyZS4uNjRmNTJhNCAxMDA2NDQKLS0tIGEvY29sb3IuYworKysgYi9jb2xvci5jCkBAIC0yNCw2ICsyNCwxNCBAQAogCUdJVF9DT0xPUl9SRVNFVCwKIH07CiAKK2VudW0geworCUNPTE9SX0JBQ0tHUk9VTkRfT0ZGU0VUID0gMTAsCisJQ09MT1JfRk9SRUdST1VORF9BTlNJID0gMzAsCisJQ09MT1JfRk9SRUdST1VORF9SR0IgPSAzOCwKKwlDT0xPUl9GT1JFR1JPVU5EXzI1NiA9IDM4LAorCUNPTE9SX0ZPUkVHUk9VTkRfQlJJR0hUX0FOU0kgPSA5MCwKK307CisKIC8qIElnbm9yZSB0aGUgUkVTRVQgYXQgdGhlIGVuZCB3aGVuIGdpdmluZyB0aGUgc2l6ZSAqLwogY29uc3QgaW50IGNvbHVtbl9jb2xvcnNfYW5zaV9tYXggPSBBUlJBWV9TSVpFKGNvbHVtbl9jb2xvcnNfYW5zaSkgLSAxOwogCkBAIC02MSwxNSArNjksMzggQEAKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBwYXJzZV9jb2xvcihzdHJ1Y3QgY29sb3IgKm91dCwgY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbikKKy8qCisgKiBJZiBhbiBBTlNJIGNvbG9yIGlzIHJlY29nbml6ZWQgaW4gIm5hbWUiLCBmaWxsICJvdXQiIGFuZCByZXR1cm4gMC4KKyAqIE90aGVyd2lzZSwgbGVhdmUgb3V0IHVuY2hhbmdlZCBhbmQgcmV0dXJuIC0xLgorICovCitzdGF0aWMgaW50IHBhcnNlX2Fuc2lfY29sb3Ioc3RydWN0IGNvbG9yICpvdXQsIGNvbnN0IGNoYXIgKm5hbWUsIGludCBsZW4pCiB7CiAJLyogUG9zaXRpb25zIGluIGFycmF5IG11c3QgbWF0Y2ggQU5TSSBjb2xvciBjb2RlcyAqLwogCXN0YXRpYyBjb25zdCBjaGFyICogY29uc3QgY29sb3JfbmFtZXNbXSA9IHsKIAkJImJsYWNrIiwgInJlZCIsICJncmVlbiIsICJ5ZWxsb3ciLAogCQkiYmx1ZSIsICJtYWdlbnRhIiwgImN5YW4iLCAid2hpdGUiCiAJfTsKLQljaGFyICplbmQ7CiAJaW50IGk7CisJaW50IGNvbG9yX29mZnNldCA9IENPTE9SX0ZPUkVHUk9VTkRfQU5TSTsKKworCWlmIChzdHJuY2FzZWNtcChuYW1lLCAiYnJpZ2h0IiwgNikgPT0gMCkgeworCQljb2xvcl9vZmZzZXQgPSBDT0xPUl9GT1JFR1JPVU5EX0JSSUdIVF9BTlNJOworCQluYW1lICs9IDY7CisJCWxlbiAtPSA2OworCX0KKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShjb2xvcl9uYW1lcyk7IGkrKykgeworCQlpZiAobWF0Y2hfd29yZChuYW1lLCBsZW4sIGNvbG9yX25hbWVzW2ldKSkgeworCQkJb3V0LT50eXBlID0gQ09MT1JfQU5TSTsKKwkJCW91dC0+dmFsdWUgPSBpICsgY29sb3Jfb2Zmc2V0OworCQkJcmV0dXJuIDA7CisJCX0KKwl9CisJcmV0dXJuIC0xOworfQorCitzdGF0aWMgaW50IHBhcnNlX2NvbG9yKHN0cnVjdCBjb2xvciAqb3V0LCBjb25zdCBjaGFyICpuYW1lLCBpbnQgbGVuKQoreworCWNoYXIgKmVuZDsKIAlsb25nIHZhbDsKIAogCS8qIEZpcnN0IHRyeSB0aGUgc3BlY2lhbCB3b3JkICJub3JtYWwiLi4uICovCkBAIC04OSwxMiArMTIwLDggQEAKIAl9CiAKIAkvKiBUaGVuIHBpY2sgZnJvbSBvdXIgaHVtYW4tcmVhZGFibGUgY29sb3IgbmFtZXMuLi4gKi8KLQlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShjb2xvcl9uYW1lcyk7IGkrKykgewotCQlpZiAobWF0Y2hfd29yZChuYW1lLCBsZW4sIGNvbG9yX25hbWVzW2ldKSkgewotCQkJb3V0LT50eXBlID0gQ09MT1JfQU5TSTsKLQkJCW91dC0+dmFsdWUgPSBpOwotCQkJcmV0dXJuIDA7Ci0JCX0KKwlpZiAocGFyc2VfYW5zaV9jb2xvcihvdXQsIG5hbWUsIGxlbikgPT0gMCkgeworCQlyZXR1cm4gMDsKIAl9CiAKIAkvKiBBbmQgZmluYWxseSB0cnkgYSBsaXRlcmFsIDI1Ni1jb2xvci1tb2RlIG51bWJlciAqLwpAQCAtMTA5LDEwICsxMzYsMTUgQEAKIAkJZWxzZSBpZiAodmFsIDwgMCkgewogCQkJb3V0LT50eXBlID0gQ09MT1JfTk9STUFMOwogCQkJcmV0dXJuIDA7Ci0JCS8qIFJld3JpdGUgbG93IG51bWJlcnMgYXMgbW9yZS1wb3J0YWJsZSBzdGFuZGFyZCBjb2xvcnMuICovCisJCS8qIFJld3JpdGUgMC03IGFzIG1vcmUtcG9ydGFibGUgc3RhbmRhcmQgY29sb3JzLiAqLwogCQl9IGVsc2UgaWYgKHZhbCA8IDgpIHsKIAkJCW91dC0+dHlwZSA9IENPTE9SX0FOU0k7Ci0JCQlvdXQtPnZhbHVlID0gdmFsOworCQkJb3V0LT52YWx1ZSA9IHZhbCArIENPTE9SX0ZPUkVHUk9VTkRfQU5TSTsKKwkJCXJldHVybiAwOworCQkvKiBSZXdyaXRlIDgtMTUgYXMgbW9yZS1wb3J0YWJsZSBhaXh0ZXJtIGNvbG9ycy4gKi8KKwkJfSBlbHNlIGlmICh2YWwgPCAxNikgeworCQkJb3V0LT50eXBlID0gQ09MT1JfQU5TSTsKKwkJCW91dC0+dmFsdWUgPSB2YWwgLSA4ICsgQ09MT1JfRk9SRUdST1VORF9CUklHSFRfQU5TSTsKIAkJCXJldHVybiAwOwogCQl9IGVsc2UgaWYgKHZhbCA8IDI1NikgewogCQkJb3V0LT50eXBlID0gQ09MT1JfMjU2OwpAQCAtMTY2LDIzICsxOTgsMjYgQEAKICAqIGFscmVhZHkgaGF2ZSB0aGUgQU5TSSBlc2NhcGUgY29kZSBpbiBpdC4gIm91dCIgc2hvdWxkIGhhdmUgZW5vdWdoCiAgKiBzcGFjZSBpbiBpdCB0byBmaXQgYW55IGNvbG9yLgogICovCi1zdGF0aWMgY2hhciAqY29sb3Jfb3V0cHV0KGNoYXIgKm91dCwgaW50IGxlbiwgY29uc3Qgc3RydWN0IGNvbG9yICpjLCBjaGFyIHR5cGUpCitzdGF0aWMgY2hhciAqY29sb3Jfb3V0cHV0KGNoYXIgKm91dCwgaW50IGxlbiwgY29uc3Qgc3RydWN0IGNvbG9yICpjLCBpbnQgYmFja2dyb3VuZCkKIHsKKwlpbnQgb2Zmc2V0ID0gMDsKKworCWlmIChiYWNrZ3JvdW5kKQorCQlvZmZzZXQgPSBDT0xPUl9CQUNLR1JPVU5EX09GRlNFVDsKIAlzd2l0Y2ggKGMtPnR5cGUpIHsKIAljYXNlIENPTE9SX1VOU1BFQ0lGSUVEOgogCWNhc2UgQ09MT1JfTk9STUFMOgogCQlicmVhazsKIAljYXNlIENPTE9SX0FOU0k6Ci0JCWlmIChsZW4gPCAyKQotCQkJQlVHKCJjb2xvciBwYXJzaW5nIHJhbiBvdXQgb2Ygc3BhY2UiKTsKLQkJKm91dCsrID0gdHlwZTsKLQkJKm91dCsrID0gJzAnICsgYy0+dmFsdWU7CisJCW91dCArPSB4c25wcmludGYob3V0LCBsZW4sICIlZCIsIGMtPnZhbHVlICsgb2Zmc2V0KTsKIAkJYnJlYWs7CiAJY2FzZSBDT0xPUl8yNTY6Ci0JCW91dCArPSB4c25wcmludGYob3V0LCBsZW4sICIlYzg7NTslZCIsIHR5cGUsIGMtPnZhbHVlKTsKKwkJb3V0ICs9IHhzbnByaW50ZihvdXQsIGxlbiwgIiVkOzU7JWQiLCBDT0xPUl9GT1JFR1JPVU5EXzI1NiArIG9mZnNldCwKKwkJCQkgYy0+dmFsdWUpOwogCQlicmVhazsKIAljYXNlIENPTE9SX1JHQjoKLQkJb3V0ICs9IHhzbnByaW50ZihvdXQsIGxlbiwgIiVjODsyOyVkOyVkOyVkIiwgdHlwZSwKKwkJb3V0ICs9IHhzbnByaW50ZihvdXQsIGxlbiwgIiVkOzI7JWQ7JWQ7JWQiLAorCQkJCSBDT0xPUl9GT1JFR1JPVU5EX1JHQiArIG9mZnNldCwKIAkJCQkgYy0+cmVkLCBjLT5ncmVlbiwgYy0+Ymx1ZSk7CiAJCWJyZWFrOwogCX0KQEAgLTI3OSwxNCArMzE0LDEyIEBACiAJCWlmICghY29sb3JfZW1wdHkoJmZnKSkgewogCQkJaWYgKHNlcCsrKQogCQkJCU9VVCgnOycpOwotCQkJLyogZm9yZWdyb3VuZCBjb2xvcnMgYXJlIGFsbCBpbiB0aGUgM3ggcmFuZ2UgKi8KLQkJCWRzdCA9IGNvbG9yX291dHB1dChkc3QsIGVuZCAtIGRzdCwgJmZnLCAnMycpOworCQkJZHN0ID0gY29sb3Jfb3V0cHV0KGRzdCwgZW5kIC0gZHN0LCAmZmcsIDApOwogCQl9CiAJCWlmICghY29sb3JfZW1wdHkoJmJnKSkgewogCQkJaWYgKHNlcCsrKQogCQkJCU9VVCgnOycpOwotCQkJLyogYmFja2dyb3VuZCBjb2xvcnMgYXJlIGFsbCBpbiB0aGUgNHggcmFuZ2UgKi8KLQkJCWRzdCA9IGNvbG9yX291dHB1dChkc3QsIGVuZCAtIGRzdCwgJmJnLCAnNCcpOworCQkJZHN0ID0gY29sb3Jfb3V0cHV0KGRzdCwgZW5kIC0gZHN0LCAmYmcsIDEpOwogCQl9CiAJCU9VVCgnbScpOwogCX0KZGlmZiAtLWdpdCBhL2NvbHVtbi5jIGIvY29sdW1uLmMKaW5kZXggMjE2NTI5Ny4uNGEzOGVlZCAxMDA2NDQKLS0tIGEvY29sdW1uLmMKKysrIGIvY29sdW1uLmMKQEAgLTIxLDIwICsyMSw5IEBACiB9OwogCiAvKiByZXR1cm4gbGVuZ3RoIG9mICdzJyBpbiBsZXR0ZXJzLCBBTlNJIGVzY2FwZXMgc3RyaXBwZWQgKi8KLXN0YXRpYyBpbnQgaXRlbV9sZW5ndGgodW5zaWduZWQgaW50IGNvbG9wdHMsIGNvbnN0IGNoYXIgKnMpCitzdGF0aWMgaW50IGl0ZW1fbGVuZ3RoKGNvbnN0IGNoYXIgKnMpCiB7Ci0JaW50IGxlbiwgaSA9IDA7Ci0Jc3RydWN0IHN0cmJ1ZiBzdHIgPSBTVFJCVUZfSU5JVDsKLQotCXN0cmJ1Zl9hZGRzdHIoJnN0ciwgcyk7Ci0Jd2hpbGUgKChzID0gc3Ryc3RyKHN0ci5idWYgKyBpLCAiXDAzM1siKSkgIT0gTlVMTCkgewotCQlpbnQgbGVuID0gc3Ryc3BuKHMgKyAyLCAiMDEyMzQ1Njc4OTsiKTsKLQkJaSA9IHMgLSBzdHIuYnVmOwotCQlzdHJidWZfcmVtb3ZlKCZzdHIsIGksIGxlbiArIDMpOyAvKiBcMDMzWzxsZW4+PGZ1bmMgY2hhcj4gKi8KLQl9Ci0JbGVuID0gdXRmOF9zdHJ3aWR0aChzdHIuYnVmKTsKLQlzdHJidWZfcmVsZWFzZSgmc3RyKTsKLQlyZXR1cm4gbGVuOworCXJldHVybiB1dGY4X3N0cm53aWR0aChzLCAtMSwgMSk7CiB9CiAKIC8qCkBAIC0xNjcsNyArMTU2LDcgQEAKIAogCUFMTE9DX0FSUkFZKGRhdGEubGVuLCBsaXN0LT5ucik7CiAJZm9yIChpID0gMDsgaSA8IGxpc3QtPm5yOyBpKyspCi0JCWRhdGEubGVuW2ldID0gaXRlbV9sZW5ndGgoY29sb3B0cywgbGlzdC0+aXRlbXNbaV0uc3RyaW5nKTsKKwkJZGF0YS5sZW5baV0gPSBpdGVtX2xlbmd0aChsaXN0LT5pdGVtc1tpXS5zdHJpbmcpOwogCiAJbGF5b3V0KCZkYXRhLCAmaW5pdGlhbF93aWR0aCk7CiAKZGlmZiAtLWdpdCBhL2NvbHVtbi5oIGIvY29sdW1uLmgKaW5kZXggMjU2N2E1Yy4uNDQ4Yzc0NCAxMDA2NDQKLS0tIGEvY29sdW1uLmgKKysrIGIvY29sdW1uLmgKQEAgLTI3LDIwICsyNywyMCBAQAogfTsKIAogc3RydWN0IG9wdGlvbjsKLWV4dGVybiBpbnQgcGFyc2VvcHRfY29sdW1uX2NhbGxiYWNrKGNvbnN0IHN0cnVjdCBvcHRpb24gKiwgY29uc3QgY2hhciAqLCBpbnQpOwotZXh0ZXJuIGludCBnaXRfY29sdW1uX2NvbmZpZyhjb25zdCBjaGFyICp2YXIsIGNvbnN0IGNoYXIgKnZhbHVlLAotCQkJICAgICBjb25zdCBjaGFyICpjb21tYW5kLCB1bnNpZ25lZCBpbnQgKmNvbG9wdHMpOwotZXh0ZXJuIGludCBmaW5hbGl6ZV9jb2xvcHRzKHVuc2lnbmVkIGludCAqY29sb3B0cywgaW50IHN0ZG91dF9pc190dHkpOworaW50IHBhcnNlb3B0X2NvbHVtbl9jYWxsYmFjayhjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKiwgaW50KTsKK2ludCBnaXRfY29sdW1uX2NvbmZpZyhjb25zdCBjaGFyICp2YXIsIGNvbnN0IGNoYXIgKnZhbHVlLAorCQkgICAgICBjb25zdCBjaGFyICpjb21tYW5kLCB1bnNpZ25lZCBpbnQgKmNvbG9wdHMpOworaW50IGZpbmFsaXplX2NvbG9wdHModW5zaWduZWQgaW50ICpjb2xvcHRzLCBpbnQgc3Rkb3V0X2lzX3R0eSk7CiBzdGF0aWMgaW5saW5lIGludCBjb2x1bW5fYWN0aXZlKHVuc2lnbmVkIGludCBjb2xvcHRzKQogewogCXJldHVybiAoY29sb3B0cyAmIENPTF9FTkFCTEVfTUFTSykgPT0gQ09MX0VOQUJMRUQ7CiB9CiAKIHN0cnVjdCBzdHJpbmdfbGlzdDsKLWV4dGVybiB2b2lkIHByaW50X2NvbHVtbnMoY29uc3Qgc3RydWN0IHN0cmluZ19saXN0ICpsaXN0LCB1bnNpZ25lZCBpbnQgY29sb3B0cywKLQkJCSAgY29uc3Qgc3RydWN0IGNvbHVtbl9vcHRpb25zICpvcHRzKTsKK3ZvaWQgcHJpbnRfY29sdW1ucyhjb25zdCBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmxpc3QsIHVuc2lnbmVkIGludCBjb2xvcHRzLAorCQkgICBjb25zdCBzdHJ1Y3QgY29sdW1uX29wdGlvbnMgKm9wdHMpOwogCi1leHRlcm4gaW50IHJ1bl9jb2x1bW5fZmlsdGVyKGludCBjb2xvcHRzLCBjb25zdCBzdHJ1Y3QgY29sdW1uX29wdGlvbnMgKik7Ci1leHRlcm4gaW50IHN0b3BfY29sdW1uX2ZpbHRlcih2b2lkKTsKK2ludCBydW5fY29sdW1uX2ZpbHRlcihpbnQgY29sb3B0cywgY29uc3Qgc3RydWN0IGNvbHVtbl9vcHRpb25zICopOworaW50IHN0b3BfY29sdW1uX2ZpbHRlcih2b2lkKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9jb21iaW5lLWRpZmYuYyBiL2NvbWJpbmUtZGlmZi5jCmluZGV4IGFkNzc1MmUuLmQ1YzRkODMgMTAwNjQ0Ci0tLSBhL2NvbWJpbmUtZGlmZi5jCisrKyBiL2NvbWJpbmUtZGlmZi5jCkBAIC0yMywxMSArMjMsMjAgQEAKIAkJCQkgdHdvLT5wYXRoLCBzdHJsZW4odHdvLT5wYXRoKSwgdHdvLT5tb2RlKTsKIH0KIAotc3RhdGljIHN0cnVjdCBjb21iaW5lX2RpZmZfcGF0aCAqaW50ZXJzZWN0X3BhdGhzKHN0cnVjdCBjb21iaW5lX2RpZmZfcGF0aCAqY3VyciwgaW50IG4sIGludCBudW1fcGFyZW50KQorc3RhdGljIGludCBmaWxlbmFtZV9jaGFuZ2VkKGNoYXIgc3RhdHVzKQoreworCXJldHVybiBzdGF0dXMgPT0gJ1InIHx8IHN0YXR1cyA9PSAnQyc7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgY29tYmluZV9kaWZmX3BhdGggKmludGVyc2VjdF9wYXRocygKKwlzdHJ1Y3QgY29tYmluZV9kaWZmX3BhdGggKmN1cnIsCisJaW50IG4sCisJaW50IG51bV9wYXJlbnQsCisJaW50IGNvbWJpbmVkX2FsbF9wYXRocykKIHsKIAlzdHJ1Y3QgZGlmZl9xdWV1ZV9zdHJ1Y3QgKnEgPSAmZGlmZl9xdWV1ZWRfZGlmZjsKIAlzdHJ1Y3QgY29tYmluZV9kaWZmX3BhdGggKnAsICoqdGFpbCA9ICZjdXJyOwotCWludCBpLCBjbXA7CisJaW50IGksIGosIGNtcDsKIAogCWlmICghbikgewogCQlmb3IgKGkgPSAwOyBpIDwgcS0+bnI7IGkrKykgewpAQCAtNTAsNiArNTksMTMgQEAKIAkJCW9pZGNweSgmcC0+cGFyZW50W25dLm9pZCwgJnEtPnF1ZXVlW2ldLT5vbmUtPm9pZCk7CiAJCQlwLT5wYXJlbnRbbl0ubW9kZSA9IHEtPnF1ZXVlW2ldLT5vbmUtPm1vZGU7CiAJCQlwLT5wYXJlbnRbbl0uc3RhdHVzID0gcS0+cXVldWVbaV0tPnN0YXR1czsKKworCQkJaWYgKGNvbWJpbmVkX2FsbF9wYXRocyAmJgorCQkJICAgIGZpbGVuYW1lX2NoYW5nZWQocC0+cGFyZW50W25dLnN0YXR1cykpIHsKKwkJCQlzdHJidWZfaW5pdCgmcC0+cGFyZW50W25dLnBhdGgsIDApOworCQkJCXN0cmJ1Zl9hZGRzdHIoJnAtPnBhcmVudFtuXS5wYXRoLAorCQkJCQkgICAgICBxLT5xdWV1ZVtpXS0+b25lLT5wYXRoKTsKKwkJCX0KIAkJCSp0YWlsID0gcDsKIAkJCXRhaWwgPSAmcC0+bmV4dDsKIAkJfQpAQCAtNjgsNiArODQsMTAgQEAKIAkJaWYgKGNtcCA8IDApIHsKIAkJCS8qIHAtPnBhdGggbm90IGluIHEtPnF1ZXVlW107IGRyb3AgaXQgKi8KIAkJCSp0YWlsID0gcC0+bmV4dDsKKwkJCWZvciAoaiA9IDA7IGogPCBudW1fcGFyZW50OyBqKyspCisJCQkJaWYgKGNvbWJpbmVkX2FsbF9wYXRocyAmJgorCQkJCSAgICBmaWxlbmFtZV9jaGFuZ2VkKHAtPnBhcmVudFtqXS5zdGF0dXMpKQorCQkJCQlzdHJidWZfcmVsZWFzZSgmcC0+cGFyZW50W2pdLnBhdGgpOwogCQkJZnJlZShwKTsKIAkJCWNvbnRpbnVlOwogCQl9CkBAIC04MSw2ICsxMDEsMTAgQEAKIAkJb2lkY3B5KCZwLT5wYXJlbnRbbl0ub2lkLCAmcS0+cXVldWVbaV0tPm9uZS0+b2lkKTsKIAkJcC0+cGFyZW50W25dLm1vZGUgPSBxLT5xdWV1ZVtpXS0+b25lLT5tb2RlOwogCQlwLT5wYXJlbnRbbl0uc3RhdHVzID0gcS0+cXVldWVbaV0tPnN0YXR1czsKKwkJaWYgKGNvbWJpbmVkX2FsbF9wYXRocyAmJgorCQkgICAgZmlsZW5hbWVfY2hhbmdlZChwLT5wYXJlbnRbbl0uc3RhdHVzKSkKKwkJCXN0cmJ1Zl9hZGRzdHIoJnAtPnBhcmVudFtuXS5wYXRoLAorCQkJCSAgICAgIHEtPnF1ZXVlW2ldLT5vbmUtPnBhdGgpOwogCiAJCXRhaWwgPSAmcC0+bmV4dDsKIAkJaSsrOwpAQCAtOTA2LDcgKzkzMCw3IEBACiAJCQkJIGludCBzaG93X2ZpbGVfaGVhZGVyKQogewogCXN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdCA9ICZyZXYtPmRpZmZvcHQ7Ci0JaW50IGFiYnJldiA9IG9wdC0+ZmxhZ3MuZnVsbF9pbmRleCA/IEdJVF9TSEExX0hFWFNaIDogREVGQVVMVF9BQkJSRVY7CisJaW50IGFiYnJldiA9IG9wdC0+ZmxhZ3MuZnVsbF9pbmRleCA/IHRoZV9oYXNoX2FsZ28tPmhleHN6IDogREVGQVVMVF9BQkJSRVY7CiAJY29uc3QgY2hhciAqYV9wcmVmaXggPSBvcHQtPmFfcHJlZml4ID8gb3B0LT5hX3ByZWZpeCA6ICJhLyI7CiAJY29uc3QgY2hhciAqYl9wcmVmaXggPSBvcHQtPmJfcHJlZml4ID8gb3B0LT5iX3ByZWZpeCA6ICJiLyI7CiAJY29uc3QgY2hhciAqY19tZXRhID0gZGlmZl9nZXRfY29sb3Jfb3B0KG9wdCwgRElGRl9NRVRBSU5GTyk7CkBAIC05NjAsMTIgKzk4NCwyNSBAQAogCWlmICghc2hvd19maWxlX2hlYWRlcikKIAkJcmV0dXJuOwogCi0JaWYgKGFkZGVkKQotCQlkdW1wX3F1b3RlZF9wYXRoKCItLS0gIiwgIiIsICIvZGV2L251bGwiLAotCQkJCSBsaW5lX3ByZWZpeCwgY19tZXRhLCBjX3Jlc2V0KTsKLQllbHNlCi0JCWR1bXBfcXVvdGVkX3BhdGgoIi0tLSAiLCBhX3ByZWZpeCwgZWxlbS0+cGF0aCwKLQkJCQkgbGluZV9wcmVmaXgsIGNfbWV0YSwgY19yZXNldCk7CisJaWYgKHJldi0+Y29tYmluZWRfYWxsX3BhdGhzKSB7CisJCWZvciAoaSA9IDA7IGkgPCBudW1fcGFyZW50OyBpKyspIHsKKwkJCWNoYXIgKnBhdGggPSBmaWxlbmFtZV9jaGFuZ2VkKGVsZW0tPnBhcmVudFtpXS5zdGF0dXMpCisJCQkJPyBlbGVtLT5wYXJlbnRbaV0ucGF0aC5idWYgOiBlbGVtLT5wYXRoOworCQkJaWYgKGVsZW0tPnBhcmVudFtpXS5zdGF0dXMgPT0gRElGRl9TVEFUVVNfQURERUQpCisJCQkJZHVtcF9xdW90ZWRfcGF0aCgiLS0tICIsICIiLCAiL2Rldi9udWxsIiwKKwkJCQkJCSBsaW5lX3ByZWZpeCwgY19tZXRhLCBjX3Jlc2V0KTsKKwkJCWVsc2UKKwkJCQlkdW1wX3F1b3RlZF9wYXRoKCItLS0gIiwgYV9wcmVmaXgsIHBhdGgsCisJCQkJCQkgbGluZV9wcmVmaXgsIGNfbWV0YSwgY19yZXNldCk7CisJCX0KKwl9IGVsc2UgeworCQlpZiAoYWRkZWQpCisJCQlkdW1wX3F1b3RlZF9wYXRoKCItLS0gIiwgIiIsICIvZGV2L251bGwiLAorCQkJCQkgbGluZV9wcmVmaXgsIGNfbWV0YSwgY19yZXNldCk7CisJCWVsc2UKKwkJCWR1bXBfcXVvdGVkX3BhdGgoIi0tLSAiLCBhX3ByZWZpeCwgZWxlbS0+cGF0aCwKKwkJCQkJIGxpbmVfcHJlZml4LCBjX21ldGEsIGNfcmVzZXQpOworCX0KIAlpZiAoZGVsZXRlZCkKIAkJZHVtcF9xdW90ZWRfcGF0aCgiKysrICIsICIiLCAiL2Rldi9udWxsIiwKIAkJCQkgbGluZV9wcmVmaXgsIGNfbWV0YSwgY19yZXNldCk7CkBAIC05OTYsNyArMTAzMyw3IEBACiAJaWYgKCF1c2VyZGlmZikKIAkJdXNlcmRpZmYgPSB1c2VyZGlmZl9maW5kX2J5X25hbWUoImRlZmF1bHQiKTsKIAlpZiAob3B0LT5mbGFncy5hbGxvd190ZXh0Y29udikKLQkJdGV4dGNvbnYgPSB1c2VyZGlmZl9nZXRfdGV4dGNvbnYodXNlcmRpZmYpOworCQl0ZXh0Y29udiA9IHVzZXJkaWZmX2dldF90ZXh0Y29udihvcHQtPnJlcG8sIHVzZXJkaWZmKTsKIAogCS8qIFJlYWQgdGhlIHJlc3VsdCBvZiBtZXJnZSBmaXJzdCAqLwogCWlmICghd29ya2luZ190cmVlX2ZpbGUpCkBAIC0xMjI3LDYgKzEyNjQsMTUgQEAKIAkJcHV0Y2hhcihpbnRlcl9uYW1lX3Rlcm1pbmF0aW9uKTsKIAl9CiAKKwlmb3IgKGkgPSAwOyBpIDwgbnVtX3BhcmVudDsgaSsrKQorCQlpZiAocmV2LT5jb21iaW5lZF9hbGxfcGF0aHMpIHsKKwkJCWlmIChmaWxlbmFtZV9jaGFuZ2VkKHAtPnBhcmVudFtpXS5zdGF0dXMpKQorCQkJCXdyaXRlX25hbWVfcXVvdGVkKHAtPnBhcmVudFtpXS5wYXRoLmJ1Ziwgc3Rkb3V0LAorCQkJCQkJICBpbnRlcl9uYW1lX3Rlcm1pbmF0aW9uKTsKKwkJCWVsc2UKKwkJCQl3cml0ZV9uYW1lX3F1b3RlZChwLT5wYXRoLCBzdGRvdXQsCisJCQkJCQkgIGludGVyX25hbWVfdGVybWluYXRpb24pOworCQl9CiAJd3JpdGVfbmFtZV9xdW90ZWQocC0+cGF0aCwgc3Rkb3V0LCBsaW5lX3Rlcm1pbmF0aW9uKTsKIH0KIApAQCAtMTMyMSwxMCArMTM2NywyMCBAQAogCXJldHVybiBwYXRoLT5wYXRoOwogfQogCisvKgorICogRGlmZiBzdGF0IGZvcm1hdHMgd2hpY2ggd2UgYWx3YXlzIGNvbXB1dGUgc29sZWx5IGFnYWluc3QgdGhlIGZpcnN0IHBhcmVudC4KKyAqLworI2RlZmluZSBTVEFUX0ZPUk1BVF9NQVNLIChESUZGX0ZPUk1BVF9OVU1TVEFUIFwKKwkJCSAgfCBESUZGX0ZPUk1BVF9TSE9SVFNUQVQgXAorCQkJICB8IERJRkZfRk9STUFUX1NVTU1BUlkgXAorCQkJICB8IERJRkZfRk9STUFUX0RJUlNUQVQgXAorCQkJICB8IERJRkZfRk9STUFUX0RJRkZTVEFUKQogCiAvKiBmaW5kIHNldCBvZiBwYXRocyB0aGF0IGV2ZXJ5IHBhcmVudCB0b3VjaGVzICovCiBzdGF0aWMgc3RydWN0IGNvbWJpbmVfZGlmZl9wYXRoICpmaW5kX3BhdGhzX2dlbmVyaWMoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAotCWNvbnN0IHN0cnVjdCBvaWRfYXJyYXkgKnBhcmVudHMsIHN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdCkKKwljb25zdCBzdHJ1Y3Qgb2lkX2FycmF5ICpwYXJlbnRzLAorCXN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdCwKKwlpbnQgY29tYmluZWRfYWxsX3BhdGhzKQogewogCXN0cnVjdCBjb21iaW5lX2RpZmZfcGF0aCAqcGF0aHMgPSBOVUxMOwogCWludCBpLCBudW1fcGFyZW50ID0gcGFyZW50cy0+bnI7CkBAIC0xMzQyLDE1ICsxMzk4LDE1IEBACiAJCSAqIHNob3cgc3RhdCBhZ2FpbnN0IHRoZSBmaXJzdCBwYXJlbnQgZXZlbiB3aGVuIGRvaW5nCiAJCSAqIGNvbWJpbmVkIGRpZmYuCiAJCSAqLwotCQlpbnQgc3RhdF9vcHQgPSAob3V0cHV0X2Zvcm1hdCAmCi0JCQkJKERJRkZfRk9STUFUX05VTVNUQVR8RElGRl9GT1JNQVRfRElGRlNUQVQpKTsKKwkJaW50IHN0YXRfb3B0ID0gb3V0cHV0X2Zvcm1hdCAmIFNUQVRfRk9STUFUX01BU0s7CiAJCWlmIChpID09IDAgJiYgc3RhdF9vcHQpCiAJCQlvcHQtPm91dHB1dF9mb3JtYXQgPSBzdGF0X29wdDsKIAkJZWxzZQogCQkJb3B0LT5vdXRwdXRfZm9ybWF0ID0gRElGRl9GT1JNQVRfTk9fT1VUUFVUOwogCQlkaWZmX3RyZWVfb2lkKCZwYXJlbnRzLT5vaWRbaV0sIG9pZCwgIiIsIG9wdCk7CiAJCWRpZmZjb3JlX3N0ZChvcHQpOwotCQlwYXRocyA9IGludGVyc2VjdF9wYXRocyhwYXRocywgaSwgbnVtX3BhcmVudCk7CisJCXBhdGhzID0gaW50ZXJzZWN0X3BhdGhzKHBhdGhzLCBpLCBudW1fcGFyZW50LAorCQkJCQljb21iaW5lZF9hbGxfcGF0aHMpOwogCiAJCS8qIGlmIHNob3dpbmcgZGlmZiwgc2hvdyBpdCBpbiByZXF1ZXN0ZWQgb3JkZXIgKi8KIAkJaWYgKG9wdC0+b3V0cHV0X2Zvcm1hdCAhPSBESUZGX0ZPUk1BVF9OT19PVVRQVVQgJiYKQEAgLTE0NjAsNyArMTUxNiw4IEBACiAJCSAqIGRpZmYoc2hhMSxwYXJlbnRfaSkgZm9yIGFsbCBpIHRvIGRvIHRoZSBqb2IsIHNwZWNpZmljYWxseQogCQkgKiBmb3IgcGFyZW50MC4KIAkJICovCi0JCXBhdGhzID0gZmluZF9wYXRoc19nZW5lcmljKG9pZCwgcGFyZW50cywgJmRpZmZvcHRzKTsKKwkJcGF0aHMgPSBmaW5kX3BhdGhzX2dlbmVyaWMob2lkLCBwYXJlbnRzLCAmZGlmZm9wdHMsCisJCQkJCSAgIHJldi0+Y29tYmluZWRfYWxsX3BhdGhzKTsKIAl9CiAJZWxzZSB7CiAJCWludCBzdGF0X29wdDsKQEAgLTE0NzAsOCArMTUyNyw3IEBACiAJCSAqIHNob3cgc3RhdCBhZ2FpbnN0IHRoZSBmaXJzdCBwYXJlbnQgZXZlbgogCQkgKiB3aGVuIGRvaW5nIGNvbWJpbmVkIGRpZmYuCiAJCSAqLwotCQlzdGF0X29wdCA9IChvcHQtPm91dHB1dF9mb3JtYXQgJgotCQkJCShESUZGX0ZPUk1BVF9OVU1TVEFUfERJRkZfRk9STUFUX0RJRkZTVEFUKSk7CisJCXN0YXRfb3B0ID0gb3B0LT5vdXRwdXRfZm9ybWF0ICYgU1RBVF9GT1JNQVRfTUFTSzsKIAkJaWYgKHN0YXRfb3B0KSB7CiAJCQlkaWZmb3B0cy5vdXRwdXRfZm9ybWF0ID0gc3RhdF9vcHQ7CiAKQEAgLTE1MTUsOCArMTU3MSw3IEBACiAJCQkJc2hvd19yYXdfZGlmZihwLCBudW1fcGFyZW50LCByZXYpOwogCQkJbmVlZHNlcCA9IDE7CiAJCX0KLQkJZWxzZSBpZiAob3B0LT5vdXRwdXRfZm9ybWF0ICYKLQkJCSAoRElGRl9GT1JNQVRfTlVNU1RBVHxESUZGX0ZPUk1BVF9ESUZGU1RBVCkpCisJCWVsc2UgaWYgKG9wdC0+b3V0cHV0X2Zvcm1hdCAmIFNUQVRfRk9STUFUX01BU0spCiAJCQluZWVkc2VwID0gMTsKIAkJZWxzZSBpZiAob3B0LT5vdXRwdXRfZm9ybWF0ICYgRElGRl9GT1JNQVRfQ0FMTEJBQ0spCiAJCQloYW5kbGVfY29tYmluZWRfY2FsbGJhY2sob3B0LCBwYXRocywgbnVtX3BhcmVudCwgbnVtX3BhdGhzKTsKQEAgLTE1MzUsNiArMTU5MCwxMCBAQAogCXdoaWxlIChwYXRocykgewogCQlzdHJ1Y3QgY29tYmluZV9kaWZmX3BhdGggKnRtcCA9IHBhdGhzOwogCQlwYXRocyA9IHBhdGhzLT5uZXh0OworCQlmb3IgKGkgPSAwOyBpIDwgbnVtX3BhcmVudDsgaSsrKQorCQkJaWYgKHJldi0+Y29tYmluZWRfYWxsX3BhdGhzICYmCisJCQkgICAgZmlsZW5hbWVfY2hhbmdlZCh0bXAtPnBhcmVudFtpXS5zdGF0dXMpKQorCQkJCXN0cmJ1Zl9yZWxlYXNlKCZ0bXAtPnBhcmVudFtpXS5wYXRoKTsKIAkJZnJlZSh0bXApOwogCX0KIApkaWZmIC0tZ2l0IGEvY29tbWFuZC1saXN0LnR4dCBiL2NvbW1hbmQtbGlzdC50eHQKaW5kZXggM2E5YWYxMC4uMjA4Nzg5NCAxMDA2NDQKLS0tIGEvY29tbWFuZC1saXN0LnR4dAorKysgYi9jb21tYW5kLWxpc3QudHh0CkBAIC01OSw3ICs1OSw3IEBACiBnaXQtY2hlY2stYXR0ciAgICAgICAgICAgICAgICAgICAgICAgICAgcHVyZWhlbHBlcnMKIGdpdC1jaGVjay1pZ25vcmUgICAgICAgICAgICAgICAgICAgICAgICBwdXJlaGVscGVycwogZ2l0LWNoZWNrLW1haWxtYXAgICAgICAgICAgICAgICAgICAgICAgIHB1cmVoZWxwZXJzCi1naXQtY2hlY2tvdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFpbnBvcmNlbGFpbiAgICAgICAgICAgaGlzdG9yeQorZ2l0LWNoZWNrb3V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1haW5wb3JjZWxhaW4KIGdpdC1jaGVja291dC1pbmRleCAgICAgICAgICAgICAgICAgICAgICBwbHVtYmluZ21hbmlwdWxhdG9ycwogZ2l0LWNoZWNrLXJlZi1mb3JtYXQgICAgICAgICAgICAgICAgICAgIHB1cmVoZWxwZXJzCiBnaXQtY2hlcnJ5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGx1bWJpbmdpbnRlcnJvZ2F0b3JzICAgICAgICAgIGNvbXBsZXRlCkBAIC04MSw3ICs4MSw3IEBACiBnaXQtY3Zzc2VydmVyICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yZWlnbnNjbWludGVyZmFjZQogZ2l0LWRhZW1vbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bmNoaW5ncmVwb3NpdG9yaWVzCiBnaXQtZGVzY3JpYmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFpbnBvcmNlbGFpbgotZ2l0LWRpZmYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1haW5wb3JjZWxhaW4gICAgICAgICAgIGhpc3RvcnkKK2dpdC1kaWZmICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWlucG9yY2VsYWluICAgICAgICAgICBpbmZvCiBnaXQtZGlmZi1maWxlcyAgICAgICAgICAgICAgICAgICAgICAgICAgcGx1bWJpbmdpbnRlcnJvZ2F0b3JzCiBnaXQtZGlmZi1pbmRleCAgICAgICAgICAgICAgICAgICAgICAgICAgcGx1bWJpbmdpbnRlcnJvZ2F0b3JzCiBnaXQtZGlmZi10cmVlICAgICAgICAgICAgICAgICAgICAgICAgICAgcGx1bWJpbmdpbnRlcnJvZ2F0b3JzCkBAIC0xNTAsNyArMTUwLDggQEAKIGdpdC1yZXBsYWNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmNpbGxhcnltYW5pcHVsYXRvcnMgICAgICAgICAgIGNvbXBsZXRlCiBnaXQtcmVxdWVzdC1wdWxsICAgICAgICAgICAgICAgICAgICAgICAgZm9yZWlnbnNjbWludGVyZmFjZSAgICAgICAgICAgICBjb21wbGV0ZQogZ2l0LXJlcmVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuY2lsbGFyeWludGVycm9nYXRvcnMKLWdpdC1yZXNldCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWlucG9yY2VsYWluICAgICAgICAgICB3b3JrdHJlZQorZ2l0LXJlc2V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1haW5wb3JjZWxhaW4gICAgICAgICAgIGhpc3RvcnkKK2dpdC1yZXN0b3JlICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWlucG9yY2VsYWluICAgICAgICAgICB3b3JrdHJlZQogZ2l0LXJldmVydCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1haW5wb3JjZWxhaW4KIGdpdC1yZXYtbGlzdCAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbHVtYmluZ2ludGVycm9nYXRvcnMKIGdpdC1yZXYtcGFyc2UgICAgICAgICAgICAgICAgICAgICAgICAgICBwbHVtYmluZ2ludGVycm9nYXRvcnMKQEAgLTE2NSwxMiArMTY2LDE0IEBACiBnaXQtc2hvdy1yZWYgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGx1bWJpbmdpbnRlcnJvZ2F0b3JzCiBnaXQtc2gtaTE4biAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHVyZWhlbHBlcnMKIGdpdC1zaC1zZXR1cCAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXJlaGVscGVycworZ2l0LXNwYXJzZS1jaGVja291dCAgICAgICAgICAgICAgICAgICAgIG1haW5wb3JjZWxhaW4gICAgICAgICAgIHdvcmt0cmVlCiBnaXQtc3Rhc2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFpbnBvcmNlbGFpbgogZ2l0LXN0YWdlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcGxldGUKIGdpdC1zdGF0dXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWlucG9yY2VsYWluICAgICAgICAgICBpbmZvCiBnaXQtc3RyaXBzcGFjZSAgICAgICAgICAgICAgICAgICAgICAgICAgcHVyZWhlbHBlcnMKIGdpdC1zdWJtb2R1bGUgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWlucG9yY2VsYWluCiBnaXQtc3ZuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yZWlnbnNjbWludGVyZmFjZQorZ2l0LXN3aXRjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1haW5wb3JjZWxhaW4gICAgICAgICAgIGhpc3RvcnkKIGdpdC1zeW1ib2xpYy1yZWYgICAgICAgICAgICAgICAgICAgICAgICBwbHVtYmluZ21hbmlwdWxhdG9ycwogZ2l0LXRhZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1haW5wb3JjZWxhaW4gICAgICAgICAgIGhpc3RvcnkKIGdpdC11bnBhY2stZmlsZSAgICAgICAgICAgICAgICAgICAgICAgICBwbHVtYmluZ2ludGVycm9nYXRvcnMKQEAgLTIwMSw2ICsyMDQsNyBAQAogZ2l0bmFtZXNwYWNlcyAgICAgICAgICAgICAgICAgICAgICAgICAgIGd1aWRlCiBnaXRyZXBvc2l0b3J5LWxheW91dCAgICAgICAgICAgICAgICAgICAgZ3VpZGUKIGdpdHJldmlzaW9ucyAgICAgICAgICAgICAgICAgICAgICAgICAgICBndWlkZQorZ2l0c3VibW9kdWxlcyAgICAgICAgICAgICAgICAgICAgICAgICAgIGd1aWRlCiBnaXR0dXRvcmlhbC0yICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3VpZGUKIGdpdHR1dG9yaWFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBndWlkZQogZ2l0d29ya2Zsb3dzICAgICAgICAgICAgICAgICAgICAgICAgICAgIGd1aWRlCmRpZmYgLS1naXQgYS9jb21taXQtZ3JhcGguYyBiL2NvbW1pdC1ncmFwaC5jCmluZGV4IDQwYzg1NWYuLmYwMTNhODQgMTAwNjQ0Ci0tLSBhL2NvbW1pdC1ncmFwaC5jCisrKyBiL2NvbW1pdC1ncmFwaC5jCkBAIC0yMSwyMCArMjEsMTUgQEAKICNkZWZpbmUgR1JBUEhfQ0hVTktJRF9PSURGQU5PVVQgMHg0ZjQ5NDQ0NiAvKiAiT0lERiIgKi8KICNkZWZpbmUgR1JBUEhfQ0hVTktJRF9PSURMT09LVVAgMHg0ZjQ5NDQ0YyAvKiAiT0lETCIgKi8KICNkZWZpbmUgR1JBUEhfQ0hVTktJRF9EQVRBIDB4NDM0NDQxNTQgLyogIkNEQVQiICovCi0jZGVmaW5lIEdSQVBIX0NIVU5LSURfTEFSR0VFREdFUyAweDQ1NDQ0NzQ1IC8qICJFREdFIiAqLworI2RlZmluZSBHUkFQSF9DSFVOS0lEX0VYVFJBRURHRVMgMHg0NTQ0NDc0NSAvKiAiRURHRSIgKi8KKyNkZWZpbmUgR1JBUEhfQ0hVTktJRF9CQVNFIDB4NDI0MTUzNDUgLyogIkJBU0UiICovCiAKLSNkZWZpbmUgR1JBUEhfREFUQV9XSURUSCAzNgorI2RlZmluZSBHUkFQSF9EQVRBX1dJRFRIICh0aGVfaGFzaF9hbGdvLT5yYXdzeiArIDE2KQogCiAjZGVmaW5lIEdSQVBIX1ZFUlNJT05fMSAweDEKICNkZWZpbmUgR1JBUEhfVkVSU0lPTiBHUkFQSF9WRVJTSU9OXzEKIAotI2RlZmluZSBHUkFQSF9PSURfVkVSU0lPTl9TSEExIDEKLSNkZWZpbmUgR1JBUEhfT0lEX0xFTl9TSEExIEdJVF9TSEExX1JBV1NaCi0jZGVmaW5lIEdSQVBIX09JRF9WRVJTSU9OIEdSQVBIX09JRF9WRVJTSU9OX1NIQTEKLSNkZWZpbmUgR1JBUEhfT0lEX0xFTiBHUkFQSF9PSURfTEVOX1NIQTEKLQotI2RlZmluZSBHUkFQSF9PQ1RPUFVTX0VER0VTX05FRURFRCAweDgwMDAwMDAwCi0jZGVmaW5lIEdSQVBIX1BBUkVOVF9NSVNTSU5HIDB4N2ZmZmZmZmYKKyNkZWZpbmUgR1JBUEhfRVhUUkFfRURHRVNfTkVFREVEIDB4ODAwMDAwMDAKICNkZWZpbmUgR1JBUEhfRURHRV9MQVNUX01BU0sgMHg3ZmZmZmZmZgogI2RlZmluZSBHUkFQSF9QQVJFTlRfTk9ORSAweDcwMDAwMDAwCiAKQEAgLTQ0LDExICszOSwzMSBAQAogI2RlZmluZSBHUkFQSF9GQU5PVVRfU0laRSAoNCAqIDI1NikKICNkZWZpbmUgR1JBUEhfQ0hVTktMT09LVVBfV0lEVEggMTIKICNkZWZpbmUgR1JBUEhfTUlOX1NJWkUgKEdSQVBIX0hFQURFUl9TSVpFICsgNCAqIEdSQVBIX0NIVU5LTE9PS1VQX1dJRFRIIFwKLQkJCSsgR1JBUEhfRkFOT1VUX1NJWkUgKyBHUkFQSF9PSURfTEVOKQorCQkJKyBHUkFQSF9GQU5PVVRfU0laRSArIHRoZV9oYXNoX2FsZ28tPnJhd3N6KQogCi1jaGFyICpnZXRfY29tbWl0X2dyYXBoX2ZpbGVuYW1lKGNvbnN0IGNoYXIgKm9ial9kaXIpCisvKiBSZW1lbWJlciB0byB1cGRhdGUgb2JqZWN0IGZsYWcgYWxsb2NhdGlvbiBpbiBvYmplY3QuaCAqLworI2RlZmluZSBSRUFDSEFCTEUgICAgICAgKDF1PDwxNSkKKworY2hhciAqZ2V0X2NvbW1pdF9ncmFwaF9maWxlbmFtZShzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiKQogewotCXJldHVybiB4c3RyZm10KCIlcy9pbmZvL2NvbW1pdC1ncmFwaCIsIG9ial9kaXIpOworCXJldHVybiB4c3RyZm10KCIlcy9pbmZvL2NvbW1pdC1ncmFwaCIsIG9kYi0+cGF0aCk7Cit9CisKK3N0YXRpYyBjaGFyICpnZXRfc3BsaXRfZ3JhcGhfZmlsZW5hbWUoc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKm9kYiwKKwkJCQkgICAgICBjb25zdCBjaGFyICpvaWRfaGV4KQoreworCXJldHVybiB4c3RyZm10KCIlcy9pbmZvL2NvbW1pdC1ncmFwaHMvZ3JhcGgtJXMuZ3JhcGgiLCBvZGItPnBhdGgsCisJCSAgICAgICBvaWRfaGV4KTsKK30KKworc3RhdGljIGNoYXIgKmdldF9jaGFpbl9maWxlbmFtZShzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiKQoreworCXJldHVybiB4c3RyZm10KCIlcy9pbmZvL2NvbW1pdC1ncmFwaHMvY29tbWl0LWdyYXBoLWNoYWluIiwgb2RiLT5wYXRoKTsKK30KKworc3RhdGljIHVpbnQ4X3Qgb2lkX3ZlcnNpb24odm9pZCkKK3sKKwlyZXR1cm4gMTsKIH0KIAogc3RhdGljIHN0cnVjdCBjb21taXRfZ3JhcGggKmFsbG9jX2NvbW1pdF9ncmFwaCh2b2lkKQpAQCAtODEsNTkgKzk2LDExOCBAQAogCXJldHVybiAxOwogfQogCi1zdHJ1Y3QgY29tbWl0X2dyYXBoICpsb2FkX2NvbW1pdF9ncmFwaF9vbmUoY29uc3QgY2hhciAqZ3JhcGhfZmlsZSkKK2ludCBvcGVuX2NvbW1pdF9ncmFwaChjb25zdCBjaGFyICpncmFwaF9maWxlLCBpbnQgKmZkLCBzdHJ1Y3Qgc3RhdCAqc3QpCit7CisJKmZkID0gZ2l0X29wZW4oZ3JhcGhfZmlsZSk7CisJaWYgKCpmZCA8IDApCisJCXJldHVybiAwOworCWlmIChmc3RhdCgqZmQsIHN0KSkgeworCQljbG9zZSgqZmQpOworCQlyZXR1cm4gMDsKKwl9CisJcmV0dXJuIDE7Cit9CisKK3N0cnVjdCBjb21taXRfZ3JhcGggKmxvYWRfY29tbWl0X2dyYXBoX29uZV9mZF9zdChpbnQgZmQsIHN0cnVjdCBzdGF0ICpzdCwKKwkJCQkJCSBzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiKQogewogCXZvaWQgKmdyYXBoX21hcDsKLQljb25zdCB1bnNpZ25lZCBjaGFyICpkYXRhLCAqY2h1bmtfbG9va3VwOwogCXNpemVfdCBncmFwaF9zaXplOwotCXN0cnVjdCBzdGF0IHN0OworCXN0cnVjdCBjb21taXRfZ3JhcGggKnJldDsKKworCWdyYXBoX3NpemUgPSB4c2l6ZV90KHN0LT5zdF9zaXplKTsKKworCWlmIChncmFwaF9zaXplIDwgR1JBUEhfTUlOX1NJWkUpIHsKKwkJY2xvc2UoZmQpOworCQllcnJvcihfKCJjb21taXQtZ3JhcGggZmlsZSBpcyB0b28gc21hbGwiKSk7CisJCXJldHVybiBOVUxMOworCX0KKwlncmFwaF9tYXAgPSB4bW1hcChOVUxMLCBncmFwaF9zaXplLCBQUk9UX1JFQUQsIE1BUF9QUklWQVRFLCBmZCwgMCk7CisJcmV0ID0gcGFyc2VfY29tbWl0X2dyYXBoKGdyYXBoX21hcCwgZmQsIGdyYXBoX3NpemUpOworCisJaWYgKHJldCkKKwkJcmV0LT5vZGIgPSBvZGI7CisJZWxzZSB7CisJCW11bm1hcChncmFwaF9tYXAsIGdyYXBoX3NpemUpOworCQljbG9zZShmZCk7CisJfQorCisJcmV0dXJuIHJldDsKK30KKworc3RhdGljIGludCB2ZXJpZnlfY29tbWl0X2dyYXBoX2xpdGUoc3RydWN0IGNvbW1pdF9ncmFwaCAqZykKK3sKKwkvKgorCSAqIEJhc2ljIHZhbGlkYXRpb24gc2hhcmVkIGJldHdlZW4gcGFyc2VfY29tbWl0X2dyYXBoKCkKKwkgKiB3aGljaCdsbCBiZSBjYWxsZWQgZXZlcnkgdGltZSB0aGUgZ3JhcGggaXMgdXNlZCwgYW5kIHRoZQorCSAqIG11Y2ggbW9yZSBleHBlbnNpdmUgdmVyaWZ5X2NvbW1pdF9ncmFwaCgpIHVzZWQgYnkKKwkgKiAiY29tbWl0LWdyYXBoIHZlcmlmeSIuCisJICoKKwkgKiBUaGVyZSBzaG91bGQgb25seSBiZSB2ZXJ5IGJhc2ljIGNoZWNrcyBoZXJlIHRvIGVuc3VyZSB0aGF0CisJICogd2UgZG9uJ3QgZS5nLiBzZWdmYXVsdCBpbiBmaWxsX2NvbW1pdF9pbl9ncmFwaCgpLCBidXQKKwkgKiBiZWNhdXNlIHRoaXMgaXMgYSB2ZXJ5IGhvdCBjb2RlcGF0aCBub3RoaW5nIHRoYXQgZS5nLiBsb29wcworCSAqIG92ZXIgZy0+bnVtX2NvbW1pdHMsIG9yIHJ1bnMgYSBjaGVja3N1bSBvbiB0aGUgY29tbWl0LWdyYXBoCisJICogaXRzZWxmLgorCSAqLworCWlmICghZy0+Y2h1bmtfb2lkX2Zhbm91dCkgeworCQllcnJvcigiY29tbWl0LWdyYXBoIGlzIG1pc3NpbmcgdGhlIE9JRCBGYW5vdXQgY2h1bmsiKTsKKwkJcmV0dXJuIDE7CisJfQorCWlmICghZy0+Y2h1bmtfb2lkX2xvb2t1cCkgeworCQllcnJvcigiY29tbWl0LWdyYXBoIGlzIG1pc3NpbmcgdGhlIE9JRCBMb29rdXAgY2h1bmsiKTsKKwkJcmV0dXJuIDE7CisJfQorCWlmICghZy0+Y2h1bmtfY29tbWl0X2RhdGEpIHsKKwkJZXJyb3IoImNvbW1pdC1ncmFwaCBpcyBtaXNzaW5nIHRoZSBDb21taXQgRGF0YSBjaHVuayIpOworCQlyZXR1cm4gMTsKKwl9CisKKwlyZXR1cm4gMDsKK30KKworc3RydWN0IGNvbW1pdF9ncmFwaCAqcGFyc2VfY29tbWl0X2dyYXBoKHZvaWQgKmdyYXBoX21hcCwgaW50IGZkLAorCQkJCQlzaXplX3QgZ3JhcGhfc2l6ZSkKK3sKKwljb25zdCB1bnNpZ25lZCBjaGFyICpkYXRhLCAqY2h1bmtfbG9va3VwOwogCXVpbnQzMl90IGk7CiAJc3RydWN0IGNvbW1pdF9ncmFwaCAqZ3JhcGg7Ci0JaW50IGZkID0gZ2l0X29wZW4oZ3JhcGhfZmlsZSk7CiAJdWludDY0X3QgbGFzdF9jaHVua19vZmZzZXQ7CiAJdWludDMyX3QgbGFzdF9jaHVua19pZDsKIAl1aW50MzJfdCBncmFwaF9zaWduYXR1cmU7CiAJdW5zaWduZWQgY2hhciBncmFwaF92ZXJzaW9uLCBoYXNoX3ZlcnNpb247CiAKLQlpZiAoZmQgPCAwKQorCWlmICghZ3JhcGhfbWFwKQogCQlyZXR1cm4gTlVMTDsKLQlpZiAoZnN0YXQoZmQsICZzdCkpIHsKLQkJY2xvc2UoZmQpOwotCQlyZXR1cm4gTlVMTDsKLQl9Ci0JZ3JhcGhfc2l6ZSA9IHhzaXplX3Qoc3Quc3Rfc2l6ZSk7CiAKLQlpZiAoZ3JhcGhfc2l6ZSA8IEdSQVBIX01JTl9TSVpFKSB7Ci0JCWNsb3NlKGZkKTsKLQkJZGllKF8oImdyYXBoIGZpbGUgJXMgaXMgdG9vIHNtYWxsIiksIGdyYXBoX2ZpbGUpOwotCX0KLQlncmFwaF9tYXAgPSB4bW1hcChOVUxMLCBncmFwaF9zaXplLCBQUk9UX1JFQUQsIE1BUF9QUklWQVRFLCBmZCwgMCk7CisJaWYgKGdyYXBoX3NpemUgPCBHUkFQSF9NSU5fU0laRSkKKwkJcmV0dXJuIE5VTEw7CisKIAlkYXRhID0gKGNvbnN0IHVuc2lnbmVkIGNoYXIgKilncmFwaF9tYXA7CiAKIAlncmFwaF9zaWduYXR1cmUgPSBnZXRfYmUzMihkYXRhKTsKIAlpZiAoZ3JhcGhfc2lnbmF0dXJlICE9IEdSQVBIX1NJR05BVFVSRSkgewotCQllcnJvcihfKCJncmFwaCBzaWduYXR1cmUgJVggZG9lcyBub3QgbWF0Y2ggc2lnbmF0dXJlICVYIiksCisJCWVycm9yKF8oImNvbW1pdC1ncmFwaCBzaWduYXR1cmUgJVggZG9lcyBub3QgbWF0Y2ggc2lnbmF0dXJlICVYIiksCiAJCSAgICAgIGdyYXBoX3NpZ25hdHVyZSwgR1JBUEhfU0lHTkFUVVJFKTsKLQkJZ290byBjbGVhbnVwX2ZhaWw7CisJCXJldHVybiBOVUxMOwogCX0KIAogCWdyYXBoX3ZlcnNpb24gPSAqKHVuc2lnbmVkIGNoYXIqKShkYXRhICsgNCk7CiAJaWYgKGdyYXBoX3ZlcnNpb24gIT0gR1JBUEhfVkVSU0lPTikgewotCQllcnJvcihfKCJncmFwaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiKSwKKwkJZXJyb3IoXygiY29tbWl0LWdyYXBoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIpLAogCQkgICAgICBncmFwaF92ZXJzaW9uLCBHUkFQSF9WRVJTSU9OKTsKLQkJZ290byBjbGVhbnVwX2ZhaWw7CisJCXJldHVybiBOVUxMOwogCX0KIAogCWhhc2hfdmVyc2lvbiA9ICoodW5zaWduZWQgY2hhciopKGRhdGEgKyA1KTsKLQlpZiAoaGFzaF92ZXJzaW9uICE9IEdSQVBIX09JRF9WRVJTSU9OKSB7Ci0JCWVycm9yKF8oImhhc2ggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIiksCi0JCSAgICAgIGhhc2hfdmVyc2lvbiwgR1JBUEhfT0lEX1ZFUlNJT04pOwotCQlnb3RvIGNsZWFudXBfZmFpbDsKKwlpZiAoaGFzaF92ZXJzaW9uICE9IG9pZF92ZXJzaW9uKCkpIHsKKwkJZXJyb3IoXygiY29tbWl0LWdyYXBoIGhhc2ggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIiksCisJCSAgICAgIGhhc2hfdmVyc2lvbiwgb2lkX3ZlcnNpb24oKSk7CisJCXJldHVybiBOVUxMOwogCX0KIAogCWdyYXBoID0gYWxsb2NfY29tbWl0X2dyYXBoKCk7CiAKLQlncmFwaC0+aGFzaF9sZW4gPSBHUkFQSF9PSURfTEVOOworCWdyYXBoLT5oYXNoX2xlbiA9IHRoZV9oYXNoX2FsZ28tPnJhd3N6OwogCWdyYXBoLT5udW1fY2h1bmtzID0gKih1bnNpZ25lZCBjaGFyKikoZGF0YSArIDYpOwogCWdyYXBoLT5ncmFwaF9mZCA9IGZkOwogCWdyYXBoLT5kYXRhID0gZ3JhcGhfbWFwOwpAQCAtMTQzLDE2ICsyMTcsMjcgQEAKIAlsYXN0X2NodW5rX29mZnNldCA9IDg7CiAJY2h1bmtfbG9va3VwID0gZGF0YSArIDg7CiAJZm9yIChpID0gMDsgaSA8IGdyYXBoLT5udW1fY2h1bmtzOyBpKyspIHsKLQkJdWludDMyX3QgY2h1bmtfaWQgPSBnZXRfYmUzMihjaHVua19sb29rdXAgKyAwKTsKLQkJdWludDY0X3QgY2h1bmtfb2Zmc2V0ID0gZ2V0X2JlNjQoY2h1bmtfbG9va3VwICsgNCk7CisJCXVpbnQzMl90IGNodW5rX2lkOworCQl1aW50NjRfdCBjaHVua19vZmZzZXQ7CiAJCWludCBjaHVua19yZXBlYXRlZCA9IDA7CiAKKwkJaWYgKGRhdGEgKyBncmFwaF9zaXplIC0gY2h1bmtfbG9va3VwIDwKKwkJICAgIEdSQVBIX0NIVU5LTE9PS1VQX1dJRFRIKSB7CisJCQllcnJvcihfKCJjb21taXQtZ3JhcGggY2h1bmsgbG9va3VwIHRhYmxlIGVudHJ5IG1pc3Npbmc7IGZpbGUgbWF5IGJlIGluY29tcGxldGUiKSk7CisJCQlmcmVlKGdyYXBoKTsKKwkJCXJldHVybiBOVUxMOworCQl9CisKKwkJY2h1bmtfaWQgPSBnZXRfYmUzMihjaHVua19sb29rdXAgKyAwKTsKKwkJY2h1bmtfb2Zmc2V0ID0gZ2V0X2JlNjQoY2h1bmtfbG9va3VwICsgNCk7CisKIAkJY2h1bmtfbG9va3VwICs9IEdSQVBIX0NIVU5LTE9PS1VQX1dJRFRIOwogCi0JCWlmIChjaHVua19vZmZzZXQgPiBncmFwaF9zaXplIC0gR0lUX01BWF9SQVdTWikgewotCQkJZXJyb3IoXygiaW1wcm9wZXIgY2h1bmsgb2Zmc2V0ICUwOHglMDh4IiksICh1aW50MzJfdCkoY2h1bmtfb2Zmc2V0ID4+IDMyKSwKKwkJaWYgKGNodW5rX29mZnNldCA+IGdyYXBoX3NpemUgLSB0aGVfaGFzaF9hbGdvLT5yYXdzeikgeworCQkJZXJyb3IoXygiY29tbWl0LWdyYXBoIGltcHJvcGVyIGNodW5rIG9mZnNldCAlMDh4JTA4eCIpLCAodWludDMyX3QpKGNodW5rX29mZnNldCA+PiAzMiksCiAJCQkgICAgICAodWludDMyX3QpY2h1bmtfb2Zmc2V0KTsKLQkJCWdvdG8gY2xlYW51cF9mYWlsOworCQkJZnJlZShncmFwaCk7CisJCQlyZXR1cm4gTlVMTDsKIAkJfQogCiAJCXN3aXRjaCAoY2h1bmtfaWQpIHsKQEAgLTE3NywxNyArMjYyLDI0IEBACiAJCQkJZ3JhcGgtPmNodW5rX2NvbW1pdF9kYXRhID0gZGF0YSArIGNodW5rX29mZnNldDsKIAkJCWJyZWFrOwogCi0JCWNhc2UgR1JBUEhfQ0hVTktJRF9MQVJHRUVER0VTOgotCQkJaWYgKGdyYXBoLT5jaHVua19sYXJnZV9lZGdlcykKKwkJY2FzZSBHUkFQSF9DSFVOS0lEX0VYVFJBRURHRVM6CisJCQlpZiAoZ3JhcGgtPmNodW5rX2V4dHJhX2VkZ2VzKQogCQkJCWNodW5rX3JlcGVhdGVkID0gMTsKIAkJCWVsc2UKLQkJCQlncmFwaC0+Y2h1bmtfbGFyZ2VfZWRnZXMgPSBkYXRhICsgY2h1bmtfb2Zmc2V0OworCQkJCWdyYXBoLT5jaHVua19leHRyYV9lZGdlcyA9IGRhdGEgKyBjaHVua19vZmZzZXQ7CiAJCQlicmVhazsKKworCQljYXNlIEdSQVBIX0NIVU5LSURfQkFTRToKKwkJCWlmIChncmFwaC0+Y2h1bmtfYmFzZV9ncmFwaHMpCisJCQkJY2h1bmtfcmVwZWF0ZWQgPSAxOworCQkJZWxzZQorCQkJCWdyYXBoLT5jaHVua19iYXNlX2dyYXBocyA9IGRhdGEgKyBjaHVua19vZmZzZXQ7CiAJCX0KIAogCQlpZiAoY2h1bmtfcmVwZWF0ZWQpIHsKLQkJCWVycm9yKF8oImNodW5rIGlkICUwOHggYXBwZWFycyBtdWx0aXBsZSB0aW1lcyIpLCBjaHVua19pZCk7Ci0JCQlnb3RvIGNsZWFudXBfZmFpbDsKKwkJCWVycm9yKF8oImNvbW1pdC1ncmFwaCBjaHVuayBpZCAlMDh4IGFwcGVhcnMgbXVsdGlwbGUgdGltZXMiKSwgY2h1bmtfaWQpOworCQkJZnJlZShncmFwaCk7CisJCQlyZXR1cm4gTlVMTDsKIAkJfQogCiAJCWlmIChsYXN0X2NodW5rX2lkID09IEdSQVBIX0NIVU5LSURfT0lETE9PS1VQKQpAQCAtMjAwLDQ3ICsyOTIsMTk4IEBACiAJCWxhc3RfY2h1bmtfb2Zmc2V0ID0gY2h1bmtfb2Zmc2V0OwogCX0KIAotCXJldHVybiBncmFwaDsKKwloYXNoY3B5KGdyYXBoLT5vaWQuaGFzaCwgZ3JhcGgtPmRhdGEgKyBncmFwaC0+ZGF0YV9sZW4gLSBncmFwaC0+aGFzaF9sZW4pOwogCi1jbGVhbnVwX2ZhaWw6Ci0JbXVubWFwKGdyYXBoX21hcCwgZ3JhcGhfc2l6ZSk7Ci0JY2xvc2UoZmQpOwotCWV4aXQoMSk7CisJaWYgKHZlcmlmeV9jb21taXRfZ3JhcGhfbGl0ZShncmFwaCkpIHsKKwkJZnJlZShncmFwaCk7CisJCXJldHVybiBOVUxMOworCX0KKworCXJldHVybiBncmFwaDsKIH0KIAotc3RhdGljIHZvaWQgcHJlcGFyZV9jb21taXRfZ3JhcGhfb25lKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpvYmpfZGlyKQorc3RhdGljIHN0cnVjdCBjb21taXRfZ3JhcGggKmxvYWRfY29tbWl0X2dyYXBoX29uZShjb25zdCBjaGFyICpncmFwaF9maWxlLAorCQkJCQkJICBzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiKQogewotCWNoYXIgKmdyYXBoX25hbWU7CisKKwlzdHJ1Y3Qgc3RhdCBzdDsKKwlpbnQgZmQ7CisJc3RydWN0IGNvbW1pdF9ncmFwaCAqZzsKKwlpbnQgb3Blbl9vayA9IG9wZW5fY29tbWl0X2dyYXBoKGdyYXBoX2ZpbGUsICZmZCwgJnN0KTsKKworCWlmICghb3Blbl9vaykKKwkJcmV0dXJuIE5VTEw7CisKKwlnID0gbG9hZF9jb21taXRfZ3JhcGhfb25lX2ZkX3N0KGZkLCAmc3QsIG9kYik7CisKKwlpZiAoZykKKwkJZy0+ZmlsZW5hbWUgPSB4c3RyZHVwKGdyYXBoX2ZpbGUpOworCisJcmV0dXJuIGc7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgY29tbWl0X2dyYXBoICpsb2FkX2NvbW1pdF9ncmFwaF92MShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJCSBzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiKQoreworCWNoYXIgKmdyYXBoX25hbWUgPSBnZXRfY29tbWl0X2dyYXBoX2ZpbGVuYW1lKG9kYik7CisJc3RydWN0IGNvbW1pdF9ncmFwaCAqZyA9IGxvYWRfY29tbWl0X2dyYXBoX29uZShncmFwaF9uYW1lLCBvZGIpOworCWZyZWUoZ3JhcGhfbmFtZSk7CisKKwlyZXR1cm4gZzsKK30KKworc3RhdGljIGludCBhZGRfZ3JhcGhfdG9fY2hhaW4oc3RydWN0IGNvbW1pdF9ncmFwaCAqZywKKwkJCSAgICAgIHN0cnVjdCBjb21taXRfZ3JhcGggKmNoYWluLAorCQkJICAgICAgc3RydWN0IG9iamVjdF9pZCAqb2lkcywKKwkJCSAgICAgIGludCBuKQoreworCXN0cnVjdCBjb21taXRfZ3JhcGggKmN1cl9nID0gY2hhaW47CisKKwlpZiAobiAmJiAhZy0+Y2h1bmtfYmFzZV9ncmFwaHMpIHsKKwkJd2FybmluZyhfKCJjb21taXQtZ3JhcGggaGFzIG5vIGJhc2UgZ3JhcGhzIGNodW5rIikpOworCQlyZXR1cm4gMDsKKwl9CisKKwl3aGlsZSAobikgeworCQluLS07CisKKwkJaWYgKCFjdXJfZyB8fAorCQkgICAgIW9pZGVxKCZvaWRzW25dLCAmY3VyX2ctPm9pZCkgfHwKKwkJICAgICFoYXNoZXEob2lkc1tuXS5oYXNoLCBnLT5jaHVua19iYXNlX2dyYXBocyArIGctPmhhc2hfbGVuICogbikpIHsKKwkJCXdhcm5pbmcoXygiY29tbWl0LWdyYXBoIGNoYWluIGRvZXMgbm90IG1hdGNoIikpOworCQkJcmV0dXJuIDA7CisJCX0KKworCQljdXJfZyA9IGN1cl9nLT5iYXNlX2dyYXBoOworCX0KKworCWctPmJhc2VfZ3JhcGggPSBjaGFpbjsKKworCWlmIChjaGFpbikKKwkJZy0+bnVtX2NvbW1pdHNfaW5fYmFzZSA9IGNoYWluLT5udW1fY29tbWl0cyArIGNoYWluLT5udW1fY29tbWl0c19pbl9iYXNlOworCisJcmV0dXJuIDE7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgY29tbWl0X2dyYXBoICpsb2FkX2NvbW1pdF9ncmFwaF9jaGFpbihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJCSAgICBzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiKQoreworCXN0cnVjdCBjb21taXRfZ3JhcGggKmdyYXBoX2NoYWluID0gTlVMTDsKKwlzdHJ1Y3Qgc3RyYnVmIGxpbmUgPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3Qgc3RhdCBzdDsKKwlzdHJ1Y3Qgb2JqZWN0X2lkICpvaWRzOworCWludCBpID0gMCwgdmFsaWQgPSAxLCBjb3VudDsKKwljaGFyICpjaGFpbl9uYW1lID0gZ2V0X2NoYWluX2ZpbGVuYW1lKG9kYik7CisJRklMRSAqZnA7CisJaW50IHN0YXRfcmVzOworCisJZnAgPSBmb3BlbihjaGFpbl9uYW1lLCAiciIpOworCXN0YXRfcmVzID0gc3RhdChjaGFpbl9uYW1lLCAmc3QpOworCWZyZWUoY2hhaW5fbmFtZSk7CisKKwlpZiAoIWZwIHx8CisJICAgIHN0YXRfcmVzIHx8CisJICAgIHN0LnN0X3NpemUgPD0gdGhlX2hhc2hfYWxnby0+aGV4c3opCisJCXJldHVybiBOVUxMOworCisJY291bnQgPSBzdC5zdF9zaXplIC8gKHRoZV9oYXNoX2FsZ28tPmhleHN6ICsgMSk7CisJb2lkcyA9IHhjYWxsb2MoY291bnQsIHNpemVvZihzdHJ1Y3Qgb2JqZWN0X2lkKSk7CisKKwlwcmVwYXJlX2FsdF9vZGIocik7CisKKwlmb3IgKGkgPSAwOyBpIDwgY291bnQ7IGkrKykgeworCQlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiOworCisJCWlmIChzdHJidWZfZ2V0bGluZV9sZigmbGluZSwgZnApID09IEVPRikKKwkJCWJyZWFrOworCisJCWlmIChnZXRfb2lkX2hleChsaW5lLmJ1ZiwgJm9pZHNbaV0pKSB7CisJCQl3YXJuaW5nKF8oImludmFsaWQgY29tbWl0LWdyYXBoIGNoYWluOiBsaW5lICclcycgbm90IGEgaGFzaCIpLAorCQkJCWxpbmUuYnVmKTsKKwkJCXZhbGlkID0gMDsKKwkJCWJyZWFrOworCQl9CisKKwkJdmFsaWQgPSAwOworCQlmb3IgKG9kYiA9IHItPm9iamVjdHMtPm9kYjsgb2RiOyBvZGIgPSBvZGItPm5leHQpIHsKKwkJCWNoYXIgKmdyYXBoX25hbWUgPSBnZXRfc3BsaXRfZ3JhcGhfZmlsZW5hbWUob2RiLCBsaW5lLmJ1Zik7CisJCQlzdHJ1Y3QgY29tbWl0X2dyYXBoICpnID0gbG9hZF9jb21taXRfZ3JhcGhfb25lKGdyYXBoX25hbWUsIG9kYik7CisKKwkJCWZyZWUoZ3JhcGhfbmFtZSk7CisKKwkJCWlmIChnKSB7CisJCQkJaWYgKGFkZF9ncmFwaF90b19jaGFpbihnLCBncmFwaF9jaGFpbiwgb2lkcywgaSkpIHsKKwkJCQkJZ3JhcGhfY2hhaW4gPSBnOworCQkJCQl2YWxpZCA9IDE7CisJCQkJfQorCisJCQkJYnJlYWs7CisJCQl9CisJCX0KKworCQlpZiAoIXZhbGlkKSB7CisJCQl3YXJuaW5nKF8oInVuYWJsZSB0byBmaW5kIGFsbCBjb21taXQtZ3JhcGggZmlsZXMiKSk7CisJCQlicmVhazsKKwkJfQorCX0KKworCWZyZWUob2lkcyk7CisJZmNsb3NlKGZwKTsKKwlzdHJidWZfcmVsZWFzZSgmbGluZSk7CisKKwlyZXR1cm4gZ3JhcGhfY2hhaW47Cit9CisKK3N0cnVjdCBjb21taXRfZ3JhcGggKnJlYWRfY29tbWl0X2dyYXBoX29uZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJICAgc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKm9kYikKK3sKKwlzdHJ1Y3QgY29tbWl0X2dyYXBoICpnID0gbG9hZF9jb21taXRfZ3JhcGhfdjEociwgb2RiKTsKKworCWlmICghZykKKwkJZyA9IGxvYWRfY29tbWl0X2dyYXBoX2NoYWluKHIsIG9kYik7CisKKwlyZXR1cm4gZzsKK30KKworc3RhdGljIHZvaWQgcHJlcGFyZV9jb21taXRfZ3JhcGhfb25lKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSAgICAgc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKm9kYikKK3sKIAogCWlmIChyLT5vYmplY3RzLT5jb21taXRfZ3JhcGgpCiAJCXJldHVybjsKIAotCWdyYXBoX25hbWUgPSBnZXRfY29tbWl0X2dyYXBoX2ZpbGVuYW1lKG9ial9kaXIpOwotCXItPm9iamVjdHMtPmNvbW1pdF9ncmFwaCA9Ci0JCWxvYWRfY29tbWl0X2dyYXBoX29uZShncmFwaF9uYW1lKTsKLQotCUZSRUVfQU5EX05VTEwoZ3JhcGhfbmFtZSk7CisJci0+b2JqZWN0cy0+Y29tbWl0X2dyYXBoID0gcmVhZF9jb21taXRfZ3JhcGhfb25lKHIsIG9kYik7CiB9CiAKIC8qCiAgKiBSZXR1cm4gMSBpZiBjb21taXRfZ3JhcGggaXMgbm9uLU5VTEwsIGFuZCAwIG90aGVyd2lzZS4KICAqCi0gKiBPbiB0aGUgZmlyc3QgaW52b2NhdGlvbiwgdGhpcyBmdW5jdGlvbiBhdHRlbXBzIHRvIGxvYWQgdGhlIGNvbW1pdAorICogT24gdGhlIGZpcnN0IGludm9jYXRpb24sIHRoaXMgZnVuY3Rpb24gYXR0ZW1wdHMgdG8gbG9hZCB0aGUgY29tbWl0CiAgKiBncmFwaCBpZiB0aGVfcmVwb3NpdG9yeSBpcyBjb25maWd1cmVkIHRvIGhhdmUgb25lLgogICovCiBzdGF0aWMgaW50IHByZXBhcmVfY29tbWl0X2dyYXBoKHN0cnVjdCByZXBvc2l0b3J5ICpyKQogewotCXN0cnVjdCBhbHRlcm5hdGVfb2JqZWN0X2RhdGFiYXNlICphbHQ7Ci0JY2hhciAqb2JqX2RpcjsKLQlpbnQgY29uZmlnX3ZhbHVlOworCXN0cnVjdCBvYmplY3RfZGlyZWN0b3J5ICpvZGI7CisKKwkvKgorCSAqIFRoaXMgbXVzdCBjb21lIGJlZm9yZSB0aGUgImFscmVhZHkgYXR0ZW1wdGVkPyIgY2hlY2sgYmVsb3csIGJlY2F1c2UKKwkgKiB3ZSB3YW50IHRvIGRpc2FibGUgZXZlbiBhbiBhbHJlYWR5LWxvYWRlZCBncmFwaCBmaWxlLgorCSAqLworCWlmIChyLT5jb21taXRfZ3JhcGhfZGlzYWJsZWQpCisJCXJldHVybiAwOwogCiAJaWYgKHItPm9iamVjdHMtPmNvbW1pdF9ncmFwaF9hdHRlbXB0ZWQpCiAJCXJldHVybiAhIXItPm9iamVjdHMtPmNvbW1pdF9ncmFwaDsKIAlyLT5vYmplY3RzLT5jb21taXRfZ3JhcGhfYXR0ZW1wdGVkID0gMTsKIAorCWlmIChnaXRfZW52X2Jvb2woR0lUX1RFU1RfQ09NTUlUX0dSQVBIX0RJRV9PTl9MT0FELCAwKSkKKwkJZGllKCJkeWluZyBhcyByZXF1ZXN0ZWQgYnkgdGhlICclcycgdmFyaWFibGUgb24gY29tbWl0LWdyYXBoIGxvYWQhIiwKKwkJICAgIEdJVF9URVNUX0NPTU1JVF9HUkFQSF9ESUVfT05fTE9BRCk7CisKKwlwcmVwYXJlX3JlcG9fc2V0dGluZ3Mocik7CisKIAlpZiAoIWdpdF9lbnZfYm9vbChHSVRfVEVTVF9DT01NSVRfR1JBUEgsIDApICYmCi0JICAgIChyZXBvX2NvbmZpZ19nZXRfYm9vbChyLCAiY29yZS5jb21taXRncmFwaCIsICZjb25maWdfdmFsdWUpIHx8Ci0JICAgICFjb25maWdfdmFsdWUpKQorCSAgICByLT5zZXR0aW5ncy5jb3JlX2NvbW1pdF9ncmFwaCAhPSAxKQogCQkvKgogCQkgKiBUaGlzIHJlcG9zaXRvcnkgaXMgbm90IGNvbmZpZ3VyZWQgdG8gdXNlIGNvbW1pdCBncmFwaHMsIHNvCiAJCSAqIGRvIG5vdCBsb2FkIG9uZS4gKEJ1dCByZXBvcnQgY29tbWl0X2dyYXBoX2F0dGVtcHRlZCBhbnl3YXkKQEAgLTI1MiwxMyArNDk1LDExIEBACiAJaWYgKCFjb21taXRfZ3JhcGhfY29tcGF0aWJsZShyKSkKIAkJcmV0dXJuIDA7CiAKLQlvYmpfZGlyID0gci0+b2JqZWN0cy0+b2JqZWN0ZGlyOwotCXByZXBhcmVfY29tbWl0X2dyYXBoX29uZShyLCBvYmpfZGlyKTsKIAlwcmVwYXJlX2FsdF9vZGIocik7Ci0JZm9yIChhbHQgPSByLT5vYmplY3RzLT5hbHRfb2RiX2xpc3Q7Ci0JICAgICAhci0+b2JqZWN0cy0+Y29tbWl0X2dyYXBoICYmIGFsdDsKLQkgICAgIGFsdCA9IGFsdC0+bmV4dCkKLQkJcHJlcGFyZV9jb21taXRfZ3JhcGhfb25lKHIsIGFsdC0+cGF0aCk7CisJZm9yIChvZGIgPSByLT5vYmplY3RzLT5vZGI7CisJICAgICAhci0+b2JqZWN0cy0+Y29tbWl0X2dyYXBoICYmIG9kYjsKKwkgICAgIG9kYiA9IG9kYi0+bmV4dCkKKwkJcHJlcGFyZV9jb21taXRfZ3JhcGhfb25lKHIsIG9kYik7CiAJcmV0dXJuICEhci0+b2JqZWN0cy0+Y29tbWl0X2dyYXBoOwogfQogCkBAIC0yODAsMTAgKzUyMSwxOSBAQAogCXJldHVybiAhIWZpcnN0X2dlbmVyYXRpb247CiB9CiAKLXZvaWQgY2xvc2VfY29tbWl0X2dyYXBoKHN0cnVjdCByZXBvc2l0b3J5ICpyKQorc3RhdGljIHZvaWQgY2xvc2VfY29tbWl0X2dyYXBoX29uZShzdHJ1Y3QgY29tbWl0X2dyYXBoICpnKQogewotCWZyZWVfY29tbWl0X2dyYXBoKHItPm9iamVjdHMtPmNvbW1pdF9ncmFwaCk7Ci0Jci0+b2JqZWN0cy0+Y29tbWl0X2dyYXBoID0gTlVMTDsKKwlpZiAoIWcpCisJCXJldHVybjsKKworCWNsb3NlX2NvbW1pdF9ncmFwaF9vbmUoZy0+YmFzZV9ncmFwaCk7CisJZnJlZV9jb21taXRfZ3JhcGgoZyk7Cit9CisKK3ZvaWQgY2xvc2VfY29tbWl0X2dyYXBoKHN0cnVjdCByYXdfb2JqZWN0X3N0b3JlICpvKQoreworCWNsb3NlX2NvbW1pdF9ncmFwaF9vbmUoby0+Y29tbWl0X2dyYXBoKTsKKwlvLT5jb21taXRfZ3JhcGggPSBOVUxMOwogfQogCiBzdGF0aWMgaW50IGJzZWFyY2hfZ3JhcGgoc3RydWN0IGNvbW1pdF9ncmFwaCAqZywgc3RydWN0IG9iamVjdF9pZCAqb2lkLCB1aW50MzJfdCAqcG9zKQpAQCAtMjkyLDE4ICs1NDIsMzkgQEAKIAkJCSAgICBnLT5jaHVua19vaWRfbG9va3VwLCBnLT5oYXNoX2xlbiwgcG9zKTsKIH0KIAotc3RhdGljIHN0cnVjdCBjb21taXRfbGlzdCAqKmluc2VydF9wYXJlbnRfb3JfZGllKHN0cnVjdCBjb21taXRfZ3JhcGggKmcsCi0JCQkJCQkgdWludDY0X3QgcG9zLAorc3RhdGljIHZvaWQgbG9hZF9vaWRfZnJvbV9ncmFwaChzdHJ1Y3QgY29tbWl0X2dyYXBoICpnLAorCQkJCXVpbnQzMl90IHBvcywKKwkJCQlzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCit7CisJdWludDMyX3QgbGV4X2luZGV4OworCisJd2hpbGUgKGcgJiYgcG9zIDwgZy0+bnVtX2NvbW1pdHNfaW5fYmFzZSkKKwkJZyA9IGctPmJhc2VfZ3JhcGg7CisKKwlpZiAoIWcpCisJCUJVRygiTlVMTCBjb21taXQtZ3JhcGgiKTsKKworCWlmIChwb3MgPj0gZy0+bnVtX2NvbW1pdHMgKyBnLT5udW1fY29tbWl0c19pbl9iYXNlKQorCQlkaWUoXygiaW52YWxpZCBjb21taXQgcG9zaXRpb24uIGNvbW1pdC1ncmFwaCBpcyBsaWtlbHkgY29ycnVwdCIpKTsKKworCWxleF9pbmRleCA9IHBvcyAtIGctPm51bV9jb21taXRzX2luX2Jhc2U7CisKKwloYXNoY3B5KG9pZC0+aGFzaCwgZy0+Y2h1bmtfb2lkX2xvb2t1cCArIGctPmhhc2hfbGVuICogbGV4X2luZGV4KTsKK30KKworc3RhdGljIHN0cnVjdCBjb21taXRfbGlzdCAqKmluc2VydF9wYXJlbnRfb3JfZGllKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQkJIHN0cnVjdCBjb21taXRfZ3JhcGggKmcsCisJCQkJCQkgdWludDMyX3QgcG9zLAogCQkJCQkJIHN0cnVjdCBjb21taXRfbGlzdCAqKnBwdHIpCiB7CiAJc3RydWN0IGNvbW1pdCAqYzsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAotCWlmIChwb3MgPj0gZy0+bnVtX2NvbW1pdHMpCi0JCWRpZSgiaW52YWxpZCBwYXJlbnQgcG9zaXRpb24gJSJQUkl1NjQsIHBvcyk7CisJaWYgKHBvcyA+PSBnLT5udW1fY29tbWl0cyArIGctPm51bV9jb21taXRzX2luX2Jhc2UpCisJCWRpZSgiaW52YWxpZCBwYXJlbnQgcG9zaXRpb24gJSJQUkl1MzIsIHBvcyk7CiAKLQloYXNoY3B5KG9pZC5oYXNoLCBnLT5jaHVua19vaWRfbG9va3VwICsgZy0+aGFzaF9sZW4gKiBwb3MpOwotCWMgPSBsb29rdXBfY29tbWl0KHRoZV9yZXBvc2l0b3J5LCAmb2lkKTsKKwlsb2FkX29pZF9mcm9tX2dyYXBoKGcsIHBvcywgJm9pZCk7CisJYyA9IGxvb2t1cF9jb21taXQociwgJm9pZCk7CiAJaWYgKCFjKQogCQlkaWUoXygiY291bGQgbm90IGZpbmQgY29tbWl0ICVzIiksIG9pZF90b19oZXgoJm9pZCkpOwogCWMtPmdyYXBoX3BvcyA9IHBvczsKQEAgLTMxMiwyMyArNTgzLDUyIEBACiAKIHN0YXRpYyB2b2lkIGZpbGxfY29tbWl0X2dyYXBoX2luZm8oc3RydWN0IGNvbW1pdCAqaXRlbSwgc3RydWN0IGNvbW1pdF9ncmFwaCAqZywgdWludDMyX3QgcG9zKQogewotCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmNvbW1pdF9kYXRhID0gZy0+Y2h1bmtfY29tbWl0X2RhdGEgKyBHUkFQSF9EQVRBX1dJRFRIICogcG9zOworCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmNvbW1pdF9kYXRhOworCXVpbnQzMl90IGxleF9pbmRleDsKKworCXdoaWxlIChwb3MgPCBnLT5udW1fY29tbWl0c19pbl9iYXNlKQorCQlnID0gZy0+YmFzZV9ncmFwaDsKKworCWxleF9pbmRleCA9IHBvcyAtIGctPm51bV9jb21taXRzX2luX2Jhc2U7CisJY29tbWl0X2RhdGEgPSBnLT5jaHVua19jb21taXRfZGF0YSArIEdSQVBIX0RBVEFfV0lEVEggKiBsZXhfaW5kZXg7CiAJaXRlbS0+Z3JhcGhfcG9zID0gcG9zOwogCWl0ZW0tPmdlbmVyYXRpb24gPSBnZXRfYmUzMihjb21taXRfZGF0YSArIGctPmhhc2hfbGVuICsgOCkgPj4gMjsKIH0KIAotc3RhdGljIGludCBmaWxsX2NvbW1pdF9pbl9ncmFwaChzdHJ1Y3QgY29tbWl0ICppdGVtLCBzdHJ1Y3QgY29tbWl0X2dyYXBoICpnLCB1aW50MzJfdCBwb3MpCitzdGF0aWMgaW5saW5lIHZvaWQgc2V0X2NvbW1pdF90cmVlKHN0cnVjdCBjb21taXQgKmMsIHN0cnVjdCB0cmVlICp0KQoreworCWMtPm1heWJlX3RyZWUgPSB0OworfQorCitzdGF0aWMgaW50IGZpbGxfY29tbWl0X2luX2dyYXBoKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCXN0cnVjdCBjb21taXQgKml0ZW0sCisJCQkJc3RydWN0IGNvbW1pdF9ncmFwaCAqZywgdWludDMyX3QgcG9zKQogewogCXVpbnQzMl90IGVkZ2VfdmFsdWU7CiAJdWludDMyX3QgKnBhcmVudF9kYXRhX3B0cjsKIAl1aW50NjRfdCBkYXRlX2xvdywgZGF0ZV9oaWdoOwogCXN0cnVjdCBjb21taXRfbGlzdCAqKnBwdHI7Ci0JY29uc3QgdW5zaWduZWQgY2hhciAqY29tbWl0X2RhdGEgPSBnLT5jaHVua19jb21taXRfZGF0YSArIChnLT5oYXNoX2xlbiArIDE2KSAqIHBvczsKKwljb25zdCB1bnNpZ25lZCBjaGFyICpjb21taXRfZGF0YTsKKwl1aW50MzJfdCBsZXhfaW5kZXg7CisKKwl3aGlsZSAocG9zIDwgZy0+bnVtX2NvbW1pdHNfaW5fYmFzZSkKKwkJZyA9IGctPmJhc2VfZ3JhcGg7CisKKwlpZiAocG9zID49IGctPm51bV9jb21taXRzICsgZy0+bnVtX2NvbW1pdHNfaW5fYmFzZSkKKwkJZGllKF8oImludmFsaWQgY29tbWl0IHBvc2l0aW9uLiBjb21taXQtZ3JhcGggaXMgbGlrZWx5IGNvcnJ1cHQiKSk7CisKKwkvKgorCSAqIFN0b3JlIHRoZSAiZnVsbCIgcG9zaXRpb24sIGJ1dCB0aGVuIHVzZSB0aGUKKwkgKiAibG9jYWwiIHBvc2l0aW9uIGZvciB0aGUgcmVzdCBvZiB0aGUgY2FsY3VsYXRpb24uCisJICovCisJaXRlbS0+Z3JhcGhfcG9zID0gcG9zOworCWxleF9pbmRleCA9IHBvcyAtIGctPm51bV9jb21taXRzX2luX2Jhc2U7CisKKwljb21taXRfZGF0YSA9IGctPmNodW5rX2NvbW1pdF9kYXRhICsgKGctPmhhc2hfbGVuICsgMTYpICogbGV4X2luZGV4OwogCiAJaXRlbS0+b2JqZWN0LnBhcnNlZCA9IDE7Ci0JaXRlbS0+Z3JhcGhfcG9zID0gcG9zOwogCi0JaXRlbS0+bWF5YmVfdHJlZSA9IE5VTEw7CisJc2V0X2NvbW1pdF90cmVlKGl0ZW0sIE5VTEwpOwogCiAJZGF0ZV9oaWdoID0gZ2V0X2JlMzIoY29tbWl0X2RhdGEgKyBnLT5oYXNoX2xlbiArIDgpICYgMHgzOwogCWRhdGVfbG93ID0gZ2V0X2JlMzIoY29tbWl0X2RhdGEgKyBnLT5oYXNoX2xlbiArIDEyKTsKQEAgLTM0MSwyMSArNjQxLDIxIEBACiAJZWRnZV92YWx1ZSA9IGdldF9iZTMyKGNvbW1pdF9kYXRhICsgZy0+aGFzaF9sZW4pOwogCWlmIChlZGdlX3ZhbHVlID09IEdSQVBIX1BBUkVOVF9OT05FKQogCQlyZXR1cm4gMTsKLQlwcHRyID0gaW5zZXJ0X3BhcmVudF9vcl9kaWUoZywgZWRnZV92YWx1ZSwgcHB0cik7CisJcHB0ciA9IGluc2VydF9wYXJlbnRfb3JfZGllKHIsIGcsIGVkZ2VfdmFsdWUsIHBwdHIpOwogCiAJZWRnZV92YWx1ZSA9IGdldF9iZTMyKGNvbW1pdF9kYXRhICsgZy0+aGFzaF9sZW4gKyA0KTsKIAlpZiAoZWRnZV92YWx1ZSA9PSBHUkFQSF9QQVJFTlRfTk9ORSkKIAkJcmV0dXJuIDE7Ci0JaWYgKCEoZWRnZV92YWx1ZSAmIEdSQVBIX09DVE9QVVNfRURHRVNfTkVFREVEKSkgewotCQlwcHRyID0gaW5zZXJ0X3BhcmVudF9vcl9kaWUoZywgZWRnZV92YWx1ZSwgcHB0cik7CisJaWYgKCEoZWRnZV92YWx1ZSAmIEdSQVBIX0VYVFJBX0VER0VTX05FRURFRCkpIHsKKwkJcHB0ciA9IGluc2VydF9wYXJlbnRfb3JfZGllKHIsIGcsIGVkZ2VfdmFsdWUsIHBwdHIpOwogCQlyZXR1cm4gMTsKIAl9CiAKLQlwYXJlbnRfZGF0YV9wdHIgPSAodWludDMyX3QqKShnLT5jaHVua19sYXJnZV9lZGdlcyArCisJcGFyZW50X2RhdGFfcHRyID0gKHVpbnQzMl90KikoZy0+Y2h1bmtfZXh0cmFfZWRnZXMgKwogCQkJICA0ICogKHVpbnQ2NF90KShlZGdlX3ZhbHVlICYgR1JBUEhfRURHRV9MQVNUX01BU0spKTsKIAlkbyB7CiAJCWVkZ2VfdmFsdWUgPSBnZXRfYmUzMihwYXJlbnRfZGF0YV9wdHIpOwotCQlwcHRyID0gaW5zZXJ0X3BhcmVudF9vcl9kaWUoZywKKwkJcHB0ciA9IGluc2VydF9wYXJlbnRfb3JfZGllKHIsIGcsCiAJCQkJCSAgICBlZGdlX3ZhbHVlICYgR1JBUEhfRURHRV9MQVNUX01BU0ssCiAJCQkJCSAgICBwcHRyKTsKIAkJcGFyZW50X2RhdGFfcHRyKys7CkBAIC0zNzAsMTEgKzY3MCwyNCBAQAogCQkqcG9zID0gaXRlbS0+Z3JhcGhfcG9zOwogCQlyZXR1cm4gMTsKIAl9IGVsc2UgewotCQlyZXR1cm4gYnNlYXJjaF9ncmFwaChnLCAmKGl0ZW0tPm9iamVjdC5vaWQpLCBwb3MpOworCQlzdHJ1Y3QgY29tbWl0X2dyYXBoICpjdXJfZyA9IGc7CisJCXVpbnQzMl90IGxleF9pbmRleDsKKworCQl3aGlsZSAoY3VyX2cgJiYgIWJzZWFyY2hfZ3JhcGgoY3VyX2csICYoaXRlbS0+b2JqZWN0Lm9pZCksICZsZXhfaW5kZXgpKQorCQkJY3VyX2cgPSBjdXJfZy0+YmFzZV9ncmFwaDsKKworCQlpZiAoY3VyX2cpIHsKKwkJCSpwb3MgPSBsZXhfaW5kZXggKyBjdXJfZy0+bnVtX2NvbW1pdHNfaW5fYmFzZTsKKwkJCXJldHVybiAxOworCQl9CisKKwkJcmV0dXJuIDA7CiAJfQogfQogCi1zdGF0aWMgaW50IHBhcnNlX2NvbW1pdF9pbl9ncmFwaF9vbmUoc3RydWN0IGNvbW1pdF9ncmFwaCAqZywgc3RydWN0IGNvbW1pdCAqaXRlbSkKK3N0YXRpYyBpbnQgcGFyc2VfY29tbWl0X2luX2dyYXBoX29uZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgICAgIHN0cnVjdCBjb21taXRfZ3JhcGggKmcsCisJCQkJICAgICBzdHJ1Y3QgY29tbWl0ICppdGVtKQogewogCXVpbnQzMl90IHBvczsKIApAQCAtMzgyLDcgKzY5NSw3IEBACiAJCXJldHVybiAxOwogCiAJaWYgKGZpbmRfY29tbWl0X2luX2dyYXBoKGl0ZW0sIGcsICZwb3MpKQotCQlyZXR1cm4gZmlsbF9jb21taXRfaW5fZ3JhcGgoaXRlbSwgZywgcG9zKTsKKwkJcmV0dXJuIGZpbGxfY29tbWl0X2luX2dyYXBoKHIsIGl0ZW0sIGcsIHBvcyk7CiAKIAlyZXR1cm4gMDsKIH0KQEAgLTM5MSw3ICs3MDQsNyBAQAogewogCWlmICghcHJlcGFyZV9jb21taXRfZ3JhcGgocikpCiAJCXJldHVybiAwOwotCXJldHVybiBwYXJzZV9jb21taXRfaW5fZ3JhcGhfb25lKHItPm9iamVjdHMtPmNvbW1pdF9ncmFwaCwgaXRlbSk7CisJcmV0dXJuIHBhcnNlX2NvbW1pdF9pbl9ncmFwaF9vbmUociwgci0+b2JqZWN0cy0+Y29tbWl0X2dyYXBoLCBpdGVtKTsKIH0KIAogdm9pZCBsb2FkX2NvbW1pdF9ncmFwaF9pbmZvKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgY29tbWl0ICppdGVtKQpAQCAtNDAzLDE5ICs3MTYsMjcgQEAKIAkJZmlsbF9jb21taXRfZ3JhcGhfaW5mbyhpdGVtLCByLT5vYmplY3RzLT5jb21taXRfZ3JhcGgsIHBvcyk7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgdHJlZSAqbG9hZF90cmVlX2Zvcl9jb21taXQoc3RydWN0IGNvbW1pdF9ncmFwaCAqZywgc3RydWN0IGNvbW1pdCAqYykKK3N0YXRpYyBzdHJ1Y3QgdHJlZSAqbG9hZF90cmVlX2Zvcl9jb21taXQoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJCSBzdHJ1Y3QgY29tbWl0X2dyYXBoICpnLAorCQkJCQkgc3RydWN0IGNvbW1pdCAqYykKIHsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKLQljb25zdCB1bnNpZ25lZCBjaGFyICpjb21taXRfZGF0YSA9IGctPmNodW5rX2NvbW1pdF9kYXRhICsKLQkJCQkJICAgR1JBUEhfREFUQV9XSURUSCAqIChjLT5ncmFwaF9wb3MpOworCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmNvbW1pdF9kYXRhOworCisJd2hpbGUgKGMtPmdyYXBoX3BvcyA8IGctPm51bV9jb21taXRzX2luX2Jhc2UpCisJCWcgPSBnLT5iYXNlX2dyYXBoOworCisJY29tbWl0X2RhdGEgPSBnLT5jaHVua19jb21taXRfZGF0YSArCisJCQlHUkFQSF9EQVRBX1dJRFRIICogKGMtPmdyYXBoX3BvcyAtIGctPm51bV9jb21taXRzX2luX2Jhc2UpOwogCiAJaGFzaGNweShvaWQuaGFzaCwgY29tbWl0X2RhdGEpOwotCWMtPm1heWJlX3RyZWUgPSBsb29rdXBfdHJlZSh0aGVfcmVwb3NpdG9yeSwgJm9pZCk7CisJc2V0X2NvbW1pdF90cmVlKGMsIGxvb2t1cF90cmVlKHIsICZvaWQpKTsKIAogCXJldHVybiBjLT5tYXliZV90cmVlOwogfQogCi1zdGF0aWMgc3RydWN0IHRyZWUgKmdldF9jb21taXRfdHJlZV9pbl9ncmFwaF9vbmUoc3RydWN0IGNvbW1pdF9ncmFwaCAqZywKK3N0YXRpYyBzdHJ1Y3QgdHJlZSAqZ2V0X2NvbW1pdF90cmVlX2luX2dyYXBoX29uZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJCSBzdHJ1Y3QgY29tbWl0X2dyYXBoICpnLAogCQkJCQkJIGNvbnN0IHN0cnVjdCBjb21taXQgKmMpCiB7CiAJaWYgKGMtPm1heWJlX3RyZWUpCkBAIC00MjMsMjAgKzc0NCw2MCBAQAogCWlmIChjLT5ncmFwaF9wb3MgPT0gQ09NTUlUX05PVF9GUk9NX0dSQVBIKQogCQlCVUcoImdldF9jb21taXRfdHJlZV9pbl9ncmFwaF9vbmUgY2FsbGVkIGZyb20gbm9uLWNvbW1pdC1ncmFwaCBjb21taXQiKTsKIAotCXJldHVybiBsb2FkX3RyZWVfZm9yX2NvbW1pdChnLCAoc3RydWN0IGNvbW1pdCAqKWMpOworCXJldHVybiBsb2FkX3RyZWVfZm9yX2NvbW1pdChyLCBnLCAoc3RydWN0IGNvbW1pdCAqKWMpOwogfQogCiBzdHJ1Y3QgdHJlZSAqZ2V0X2NvbW1pdF90cmVlX2luX2dyYXBoKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBzdHJ1Y3QgY29tbWl0ICpjKQogewotCXJldHVybiBnZXRfY29tbWl0X3RyZWVfaW5fZ3JhcGhfb25lKHItPm9iamVjdHMtPmNvbW1pdF9ncmFwaCwgYyk7CisJcmV0dXJuIGdldF9jb21taXRfdHJlZV9pbl9ncmFwaF9vbmUociwgci0+b2JqZWN0cy0+Y29tbWl0X2dyYXBoLCBjKTsKIH0KIAorc3RydWN0IHBhY2tlZF9jb21taXRfbGlzdCB7CisJc3RydWN0IGNvbW1pdCAqKmxpc3Q7CisJaW50IG5yOworCWludCBhbGxvYzsKK307CisKK3N0cnVjdCBwYWNrZWRfb2lkX2xpc3QgeworCXN0cnVjdCBvYmplY3RfaWQgKmxpc3Q7CisJaW50IG5yOworCWludCBhbGxvYzsKK307CisKK3N0cnVjdCB3cml0ZV9jb21taXRfZ3JhcGhfY29udGV4dCB7CisJc3RydWN0IHJlcG9zaXRvcnkgKnI7CisJc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKm9kYjsKKwljaGFyICpncmFwaF9uYW1lOworCXN0cnVjdCBwYWNrZWRfb2lkX2xpc3Qgb2lkczsKKwlzdHJ1Y3QgcGFja2VkX2NvbW1pdF9saXN0IGNvbW1pdHM7CisJaW50IG51bV9leHRyYV9lZGdlczsKKwl1bnNpZ25lZCBsb25nIGFwcHJveF9ucl9vYmplY3RzOworCXN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3M7CisJaW50IHByb2dyZXNzX2RvbmU7CisJdWludDY0X3QgcHJvZ3Jlc3NfY250OworCisJY2hhciAqYmFzZV9ncmFwaF9uYW1lOworCWludCBudW1fY29tbWl0X2dyYXBoc19iZWZvcmU7CisJaW50IG51bV9jb21taXRfZ3JhcGhzX2FmdGVyOworCWNoYXIgKipjb21taXRfZ3JhcGhfZmlsZW5hbWVzX2JlZm9yZTsKKwljaGFyICoqY29tbWl0X2dyYXBoX2ZpbGVuYW1lc19hZnRlcjsKKwljaGFyICoqY29tbWl0X2dyYXBoX2hhc2hfYWZ0ZXI7CisJdWludDMyX3QgbmV3X251bV9jb21taXRzX2luX2Jhc2U7CisJc3RydWN0IGNvbW1pdF9ncmFwaCAqbmV3X2Jhc2VfZ3JhcGg7CisKKwl1bnNpZ25lZCBhcHBlbmQ6MSwKKwkJIHJlcG9ydF9wcm9ncmVzczoxLAorCQkgc3BsaXQ6MSwKKwkJIGNoZWNrX29pZHM6MTsKKworCWNvbnN0IHN0cnVjdCBzcGxpdF9jb21taXRfZ3JhcGhfb3B0cyAqc3BsaXRfb3B0czsKK307CisKIHN0YXRpYyB2b2lkIHdyaXRlX2dyYXBoX2NodW5rX2Zhbm91dChzdHJ1Y3QgaGFzaGZpbGUgKmYsCi0JCQkJICAgICBzdHJ1Y3QgY29tbWl0ICoqY29tbWl0cywKLQkJCQkgICAgIGludCBucl9jb21taXRzKQorCQkJCSAgICAgc3RydWN0IHdyaXRlX2NvbW1pdF9ncmFwaF9jb250ZXh0ICpjdHgpCiB7CiAJaW50IGksIGNvdW50ID0gMDsKLQlzdHJ1Y3QgY29tbWl0ICoqbGlzdCA9IGNvbW1pdHM7CisJc3RydWN0IGNvbW1pdCAqKmxpc3QgPSBjdHgtPmNvbW1pdHMubGlzdDsKIAogCS8qCiAJICogV3JpdGUgdGhlIGZpcnN0LWxldmVsIHRhYmxlICh0aGUgbGlzdCBpcyBzb3J0ZWQsCkBAIC00NDQsOSArODA1LDEwIEBACiAJICogaGF2aW5nIHRvIGRvIGVpZ2h0IGV4dHJhIGJpbmFyeSBzZWFyY2ggaXRlcmF0aW9ucykuCiAJICovCiAJZm9yIChpID0gMDsgaSA8IDI1NjsgaSsrKSB7Ci0JCXdoaWxlIChjb3VudCA8IG5yX2NvbW1pdHMpIHsKKwkJd2hpbGUgKGNvdW50IDwgY3R4LT5jb21taXRzLm5yKSB7CiAJCQlpZiAoKCpsaXN0KS0+b2JqZWN0Lm9pZC5oYXNoWzBdICE9IGkpCiAJCQkJYnJlYWs7CisJCQlkaXNwbGF5X3Byb2dyZXNzKGN0eC0+cHJvZ3Jlc3MsICsrY3R4LT5wcm9ncmVzc19jbnQpOwogCQkJY291bnQrKzsKIAkJCWxpc3QrKzsKIAkJfQpAQCAtNDU2LDEyICs4MTgsMTQgQEAKIH0KIAogc3RhdGljIHZvaWQgd3JpdGVfZ3JhcGhfY2h1bmtfb2lkcyhzdHJ1Y3QgaGFzaGZpbGUgKmYsIGludCBoYXNoX2xlbiwKLQkJCQkgICBzdHJ1Y3QgY29tbWl0ICoqY29tbWl0cywgaW50IG5yX2NvbW1pdHMpCisJCQkJICAgc3RydWN0IHdyaXRlX2NvbW1pdF9ncmFwaF9jb250ZXh0ICpjdHgpCiB7Ci0Jc3RydWN0IGNvbW1pdCAqKmxpc3QgPSBjb21taXRzOworCXN0cnVjdCBjb21taXQgKipsaXN0ID0gY3R4LT5jb21taXRzLmxpc3Q7CiAJaW50IGNvdW50OwotCWZvciAoY291bnQgPSAwOyBjb3VudCA8IG5yX2NvbW1pdHM7IGNvdW50KyssIGxpc3QrKykKKwlmb3IgKGNvdW50ID0gMDsgY291bnQgPCBjdHgtPmNvbW1pdHMubnI7IGNvdW50KyssIGxpc3QrKykgeworCQlkaXNwbGF5X3Byb2dyZXNzKGN0eC0+cHJvZ3Jlc3MsICsrY3R4LT5wcm9ncmVzc19jbnQpOwogCQloYXNod3JpdGUoZiwgKCpsaXN0KS0+b2JqZWN0Lm9pZC5oYXNoLCAoaW50KWhhc2hfbGVuKTsKKwl9CiB9CiAKIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyICpjb21taXRfdG9fc2hhMShzaXplX3QgaW5kZXgsIHZvaWQgKnRhYmxlKQpAQCAtNDcxLDE5ICs4MzUsMjQgQEAKIH0KIAogc3RhdGljIHZvaWQgd3JpdGVfZ3JhcGhfY2h1bmtfZGF0YShzdHJ1Y3QgaGFzaGZpbGUgKmYsIGludCBoYXNoX2xlbiwKLQkJCQkgICBzdHJ1Y3QgY29tbWl0ICoqY29tbWl0cywgaW50IG5yX2NvbW1pdHMpCisJCQkJICAgc3RydWN0IHdyaXRlX2NvbW1pdF9ncmFwaF9jb250ZXh0ICpjdHgpCiB7Ci0Jc3RydWN0IGNvbW1pdCAqKmxpc3QgPSBjb21taXRzOwotCXN0cnVjdCBjb21taXQgKipsYXN0ID0gY29tbWl0cyArIG5yX2NvbW1pdHM7CisJc3RydWN0IGNvbW1pdCAqKmxpc3QgPSBjdHgtPmNvbW1pdHMubGlzdDsKKwlzdHJ1Y3QgY29tbWl0ICoqbGFzdCA9IGN0eC0+Y29tbWl0cy5saXN0ICsgY3R4LT5jb21taXRzLm5yOwogCXVpbnQzMl90IG51bV9leHRyYV9lZGdlcyA9IDA7CiAKIAl3aGlsZSAobGlzdCA8IGxhc3QpIHsKIAkJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnQ7CisJCXN0cnVjdCBvYmplY3RfaWQgKnRyZWU7CiAJCWludCBlZGdlX3ZhbHVlOwogCQl1aW50MzJfdCBwYWNrZWREYXRlWzJdOworCQlkaXNwbGF5X3Byb2dyZXNzKGN0eC0+cHJvZ3Jlc3MsICsrY3R4LT5wcm9ncmVzc19jbnQpOwogCi0JCXBhcnNlX2NvbW1pdCgqbGlzdCk7Ci0JCWhhc2h3cml0ZShmLCBnZXRfY29tbWl0X3RyZWVfb2lkKCpsaXN0KS0+aGFzaCwgaGFzaF9sZW4pOworCQlpZiAocGFyc2VfY29tbWl0X25vX2dyYXBoKCpsaXN0KSkKKwkJCWRpZShfKCJ1bmFibGUgdG8gcGFyc2UgY29tbWl0ICVzIiksCisJCQkJb2lkX3RvX2hleCgmKCpsaXN0KS0+b2JqZWN0Lm9pZCkpOworCQl0cmVlID0gZ2V0X2NvbW1pdF90cmVlX29pZCgqbGlzdCk7CisJCWhhc2h3cml0ZShmLCB0cmVlLT5oYXNoLCBoYXNoX2xlbik7CiAKIAkJcGFyZW50ID0gKCpsaXN0KS0+cGFyZW50czsKIApAQCAtNDkxLDEyICs4NjAsMjQgQEAKIAkJCWVkZ2VfdmFsdWUgPSBHUkFQSF9QQVJFTlRfTk9ORTsKIAkJZWxzZSB7CiAJCQllZGdlX3ZhbHVlID0gc2hhMV9wb3MocGFyZW50LT5pdGVtLT5vYmplY3Qub2lkLmhhc2gsCi0JCQkJCSAgICAgIGNvbW1pdHMsCi0JCQkJCSAgICAgIG5yX2NvbW1pdHMsCisJCQkJCSAgICAgIGN0eC0+Y29tbWl0cy5saXN0LAorCQkJCQkgICAgICBjdHgtPmNvbW1pdHMubnIsCiAJCQkJCSAgICAgIGNvbW1pdF90b19zaGExKTsKIAorCQkJaWYgKGVkZ2VfdmFsdWUgPj0gMCkKKwkJCQllZGdlX3ZhbHVlICs9IGN0eC0+bmV3X251bV9jb21taXRzX2luX2Jhc2U7CisJCQllbHNlIHsKKwkJCQl1aW50MzJfdCBwb3M7CisJCQkJaWYgKGZpbmRfY29tbWl0X2luX2dyYXBoKHBhcmVudC0+aXRlbSwKKwkJCQkJCQkgY3R4LT5uZXdfYmFzZV9ncmFwaCwKKwkJCQkJCQkgJnBvcykpCisJCQkJCWVkZ2VfdmFsdWUgPSBwb3M7CisJCQl9CisKIAkJCWlmIChlZGdlX3ZhbHVlIDwgMCkKLQkJCQllZGdlX3ZhbHVlID0gR1JBUEhfUEFSRU5UX01JU1NJTkc7CisJCQkJQlVHKCJtaXNzaW5nIHBhcmVudCAlcyBmb3IgY29tbWl0ICVzIiwKKwkJCQkgICAgb2lkX3RvX2hleCgmcGFyZW50LT5pdGVtLT5vYmplY3Qub2lkKSwKKwkJCQkgICAgb2lkX3RvX2hleCgmKCpsaXN0KS0+b2JqZWN0Lm9pZCkpOwogCQl9CiAKIAkJaGFzaHdyaXRlX2JlMzIoZiwgZWRnZV92YWx1ZSk7CkBAIC01MDcsMTkgKzg4OCwzMiBAQAogCQlpZiAoIXBhcmVudCkKIAkJCWVkZ2VfdmFsdWUgPSBHUkFQSF9QQVJFTlRfTk9ORTsKIAkJZWxzZSBpZiAocGFyZW50LT5uZXh0KQotCQkJZWRnZV92YWx1ZSA9IEdSQVBIX09DVE9QVVNfRURHRVNfTkVFREVEIHwgbnVtX2V4dHJhX2VkZ2VzOworCQkJZWRnZV92YWx1ZSA9IEdSQVBIX0VYVFJBX0VER0VTX05FRURFRCB8IG51bV9leHRyYV9lZGdlczsKIAkJZWxzZSB7CiAJCQllZGdlX3ZhbHVlID0gc2hhMV9wb3MocGFyZW50LT5pdGVtLT5vYmplY3Qub2lkLmhhc2gsCi0JCQkJCSAgICAgIGNvbW1pdHMsCi0JCQkJCSAgICAgIG5yX2NvbW1pdHMsCisJCQkJCSAgICAgIGN0eC0+Y29tbWl0cy5saXN0LAorCQkJCQkgICAgICBjdHgtPmNvbW1pdHMubnIsCiAJCQkJCSAgICAgIGNvbW1pdF90b19zaGExKTsKKworCQkJaWYgKGVkZ2VfdmFsdWUgPj0gMCkKKwkJCQllZGdlX3ZhbHVlICs9IGN0eC0+bmV3X251bV9jb21taXRzX2luX2Jhc2U7CisJCQllbHNlIHsKKwkJCQl1aW50MzJfdCBwb3M7CisJCQkJaWYgKGZpbmRfY29tbWl0X2luX2dyYXBoKHBhcmVudC0+aXRlbSwKKwkJCQkJCQkgY3R4LT5uZXdfYmFzZV9ncmFwaCwKKwkJCQkJCQkgJnBvcykpCisJCQkJCWVkZ2VfdmFsdWUgPSBwb3M7CisJCQl9CisKIAkJCWlmIChlZGdlX3ZhbHVlIDwgMCkKLQkJCQllZGdlX3ZhbHVlID0gR1JBUEhfUEFSRU5UX01JU1NJTkc7CisJCQkJQlVHKCJtaXNzaW5nIHBhcmVudCAlcyBmb3IgY29tbWl0ICVzIiwKKwkJCQkgICAgb2lkX3RvX2hleCgmcGFyZW50LT5pdGVtLT5vYmplY3Qub2lkKSwKKwkJCQkgICAgb2lkX3RvX2hleCgmKCpsaXN0KS0+b2JqZWN0Lm9pZCkpOwogCQl9CiAKIAkJaGFzaHdyaXRlX2JlMzIoZiwgZWRnZV92YWx1ZSk7CiAKLQkJaWYgKGVkZ2VfdmFsdWUgJiBHUkFQSF9PQ1RPUFVTX0VER0VTX05FRURFRCkgeworCQlpZiAoZWRnZV92YWx1ZSAmIEdSQVBIX0VYVFJBX0VER0VTX05FRURFRCkgewogCQkJZG8gewogCQkJCW51bV9leHRyYV9lZGdlcysrOwogCQkJCXBhcmVudCA9IHBhcmVudC0+bmV4dDsKQEAgLTU0MCwxNiArOTM0LDE4IEBACiAJfQogfQogCi1zdGF0aWMgdm9pZCB3cml0ZV9ncmFwaF9jaHVua19sYXJnZV9lZGdlcyhzdHJ1Y3QgaGFzaGZpbGUgKmYsCi0JCQkJCSAgc3RydWN0IGNvbW1pdCAqKmNvbW1pdHMsCi0JCQkJCSAgaW50IG5yX2NvbW1pdHMpCitzdGF0aWMgdm9pZCB3cml0ZV9ncmFwaF9jaHVua19leHRyYV9lZGdlcyhzdHJ1Y3QgaGFzaGZpbGUgKmYsCisJCQkJCSAgc3RydWN0IHdyaXRlX2NvbW1pdF9ncmFwaF9jb250ZXh0ICpjdHgpCiB7Ci0Jc3RydWN0IGNvbW1pdCAqKmxpc3QgPSBjb21taXRzOwotCXN0cnVjdCBjb21taXQgKipsYXN0ID0gY29tbWl0cyArIG5yX2NvbW1pdHM7CisJc3RydWN0IGNvbW1pdCAqKmxpc3QgPSBjdHgtPmNvbW1pdHMubGlzdDsKKwlzdHJ1Y3QgY29tbWl0ICoqbGFzdCA9IGN0eC0+Y29tbWl0cy5saXN0ICsgY3R4LT5jb21taXRzLm5yOwogCXN0cnVjdCBjb21taXRfbGlzdCAqcGFyZW50OwogCiAJd2hpbGUgKGxpc3QgPCBsYXN0KSB7CiAJCWludCBudW1fcGFyZW50cyA9IDA7CisKKwkJZGlzcGxheV9wcm9ncmVzcyhjdHgtPnByb2dyZXNzLCArK2N0eC0+cHJvZ3Jlc3NfY250KTsKKwogCQlmb3IgKHBhcmVudCA9ICgqbGlzdCktPnBhcmVudHM7IG51bV9wYXJlbnRzIDwgMyAmJiBwYXJlbnQ7CiAJCSAgICAgcGFyZW50ID0gcGFyZW50LT5uZXh0KQogCQkJbnVtX3BhcmVudHMrKzsKQEAgLTU2MiwxMiArOTU4LDI0IEBACiAJCS8qIFNpbmNlIG51bV9wYXJlbnRzID4gMiwgdGhpcyBpbml0aWFsaXplciBpcyBzYWZlLiAqLwogCQlmb3IgKHBhcmVudCA9ICgqbGlzdCktPnBhcmVudHMtPm5leHQ7IHBhcmVudDsgcGFyZW50ID0gcGFyZW50LT5uZXh0KSB7CiAJCQlpbnQgZWRnZV92YWx1ZSA9IHNoYTFfcG9zKHBhcmVudC0+aXRlbS0+b2JqZWN0Lm9pZC5oYXNoLAotCQkJCQkJICBjb21taXRzLAotCQkJCQkJICBucl9jb21taXRzLAorCQkJCQkJICBjdHgtPmNvbW1pdHMubGlzdCwKKwkJCQkJCSAgY3R4LT5jb21taXRzLm5yLAogCQkJCQkJICBjb21taXRfdG9fc2hhMSk7CiAKKwkJCWlmIChlZGdlX3ZhbHVlID49IDApCisJCQkJZWRnZV92YWx1ZSArPSBjdHgtPm5ld19udW1fY29tbWl0c19pbl9iYXNlOworCQkJZWxzZSB7CisJCQkJdWludDMyX3QgcG9zOworCQkJCWlmIChmaW5kX2NvbW1pdF9pbl9ncmFwaChwYXJlbnQtPml0ZW0sCisJCQkJCQkJIGN0eC0+bmV3X2Jhc2VfZ3JhcGgsCisJCQkJCQkJICZwb3MpKQorCQkJCQllZGdlX3ZhbHVlID0gcG9zOworCQkJfQorCiAJCQlpZiAoZWRnZV92YWx1ZSA8IDApCi0JCQkJZWRnZV92YWx1ZSA9IEdSQVBIX1BBUkVOVF9NSVNTSU5HOworCQkJCUJVRygibWlzc2luZyBwYXJlbnQgJXMgZm9yIGNvbW1pdCAlcyIsCisJCQkJICAgIG9pZF90b19oZXgoJnBhcmVudC0+aXRlbS0+b2JqZWN0Lm9pZCksCisJCQkJICAgIG9pZF90b19oZXgoJigqbGlzdCktPm9iamVjdC5vaWQpKTsKIAkJCWVsc2UgaWYgKCFwYXJlbnQtPm5leHQpCiAJCQkJZWRnZV92YWx1ZSB8PSBHUkFQSF9MQVNUX0VER0U7CiAKQEAgLTU3OCwxMjUgKzk4NiwxMjQgQEAKIAl9CiB9CiAKLXN0YXRpYyBpbnQgY29tbWl0X2NvbXBhcmUoY29uc3Qgdm9pZCAqX2EsIGNvbnN0IHZvaWQgKl9iKQorc3RhdGljIGludCBvaWRfY29tcGFyZShjb25zdCB2b2lkICpfYSwgY29uc3Qgdm9pZCAqX2IpCiB7CiAJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqYSA9IChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICopX2E7CiAJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqYiA9IChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICopX2I7CiAJcmV0dXJuIG9pZGNtcChhLCBiKTsKIH0KIAotc3RydWN0IHBhY2tlZF9jb21taXRfbGlzdCB7Ci0Jc3RydWN0IGNvbW1pdCAqKmxpc3Q7Ci0JaW50IG5yOwotCWludCBhbGxvYzsKLX07Ci0KLXN0cnVjdCBwYWNrZWRfb2lkX2xpc3QgewotCXN0cnVjdCBvYmplY3RfaWQgKmxpc3Q7Ci0JaW50IG5yOwotCWludCBhbGxvYzsKLQlzdHJ1Y3QgcHJvZ3Jlc3MgKnByb2dyZXNzOwotCWludCBwcm9ncmVzc19kb25lOwotfTsKLQogc3RhdGljIGludCBhZGRfcGFja2VkX2NvbW1pdHMoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAogCQkJICAgICAgc3RydWN0IHBhY2tlZF9naXQgKnBhY2ssCiAJCQkgICAgICB1aW50MzJfdCBwb3MsCiAJCQkgICAgICB2b2lkICpkYXRhKQogewotCXN0cnVjdCBwYWNrZWRfb2lkX2xpc3QgKmxpc3QgPSAoc3RydWN0IHBhY2tlZF9vaWRfbGlzdCopZGF0YTsKKwlzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQgKmN0eCA9IChzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQqKWRhdGE7CiAJZW51bSBvYmplY3RfdHlwZSB0eXBlOwogCW9mZl90IG9mZnNldCA9IG50aF9wYWNrZWRfb2JqZWN0X29mZnNldChwYWNrLCBwb3MpOwogCXN0cnVjdCBvYmplY3RfaW5mbyBvaSA9IE9CSkVDVF9JTkZPX0lOSVQ7CiAKLQlpZiAobGlzdC0+cHJvZ3Jlc3MpCi0JCWRpc3BsYXlfcHJvZ3Jlc3MobGlzdC0+cHJvZ3Jlc3MsICsrbGlzdC0+cHJvZ3Jlc3NfZG9uZSk7CisJaWYgKGN0eC0+cHJvZ3Jlc3MpCisJCWRpc3BsYXlfcHJvZ3Jlc3MoY3R4LT5wcm9ncmVzcywgKytjdHgtPnByb2dyZXNzX2RvbmUpOwogCiAJb2kudHlwZXAgPSAmdHlwZTsKLQlpZiAocGFja2VkX29iamVjdF9pbmZvKHRoZV9yZXBvc2l0b3J5LCBwYWNrLCBvZmZzZXQsICZvaSkgPCAwKQorCWlmIChwYWNrZWRfb2JqZWN0X2luZm8oY3R4LT5yLCBwYWNrLCBvZmZzZXQsICZvaSkgPCAwKQogCQlkaWUoXygidW5hYmxlIHRvIGdldCB0eXBlIG9mIG9iamVjdCAlcyIpLCBvaWRfdG9faGV4KG9pZCkpOwogCiAJaWYgKHR5cGUgIT0gT0JKX0NPTU1JVCkKIAkJcmV0dXJuIDA7CiAKLQlBTExPQ19HUk9XKGxpc3QtPmxpc3QsIGxpc3QtPm5yICsgMSwgbGlzdC0+YWxsb2MpOwotCW9pZGNweSgmKGxpc3QtPmxpc3RbbGlzdC0+bnJdKSwgb2lkKTsKLQlsaXN0LT5ucisrOworCUFMTE9DX0dST1coY3R4LT5vaWRzLmxpc3QsIGN0eC0+b2lkcy5uciArIDEsIGN0eC0+b2lkcy5hbGxvYyk7CisJb2lkY3B5KCYoY3R4LT5vaWRzLmxpc3RbY3R4LT5vaWRzLm5yXSksIG9pZCk7CisJY3R4LT5vaWRzLm5yKys7CiAKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIHZvaWQgYWRkX21pc3NpbmdfcGFyZW50cyhzdHJ1Y3QgcGFja2VkX29pZF9saXN0ICpvaWRzLCBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCitzdGF0aWMgdm9pZCBhZGRfbWlzc2luZ19wYXJlbnRzKHN0cnVjdCB3cml0ZV9jb21taXRfZ3JhcGhfY29udGV4dCAqY3R4LCBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCiB7CiAJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnQ7CiAJZm9yIChwYXJlbnQgPSBjb21taXQtPnBhcmVudHM7IHBhcmVudDsgcGFyZW50ID0gcGFyZW50LT5uZXh0KSB7Ci0JCWlmICghKHBhcmVudC0+aXRlbS0+b2JqZWN0LmZsYWdzICYgVU5JTlRFUkVTVElORykpIHsKLQkJCUFMTE9DX0dST1cob2lkcy0+bGlzdCwgb2lkcy0+bnIgKyAxLCBvaWRzLT5hbGxvYyk7Ci0JCQlvaWRjcHkoJm9pZHMtPmxpc3Rbb2lkcy0+bnJdLCAmKHBhcmVudC0+aXRlbS0+b2JqZWN0Lm9pZCkpOwotCQkJb2lkcy0+bnIrKzsKLQkJCXBhcmVudC0+aXRlbS0+b2JqZWN0LmZsYWdzIHw9IFVOSU5URVJFU1RJTkc7CisJCWlmICghKHBhcmVudC0+aXRlbS0+b2JqZWN0LmZsYWdzICYgUkVBQ0hBQkxFKSkgeworCQkJQUxMT0NfR1JPVyhjdHgtPm9pZHMubGlzdCwgY3R4LT5vaWRzLm5yICsgMSwgY3R4LT5vaWRzLmFsbG9jKTsKKwkJCW9pZGNweSgmY3R4LT5vaWRzLmxpc3RbY3R4LT5vaWRzLm5yXSwgJihwYXJlbnQtPml0ZW0tPm9iamVjdC5vaWQpKTsKKwkJCWN0eC0+b2lkcy5ucisrOworCQkJcGFyZW50LT5pdGVtLT5vYmplY3QuZmxhZ3MgfD0gUkVBQ0hBQkxFOwogCQl9CiAJfQogfQogCi1zdGF0aWMgdm9pZCBjbG9zZV9yZWFjaGFibGUoc3RydWN0IHBhY2tlZF9vaWRfbGlzdCAqb2lkcywgaW50IHJlcG9ydF9wcm9ncmVzcykKK3N0YXRpYyB2b2lkIGNsb3NlX3JlYWNoYWJsZShzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQgKmN0eCkKIHsKIAlpbnQgaTsKIAlzdHJ1Y3QgY29tbWl0ICpjb21taXQ7Ci0Jc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcyA9IE5VTEw7Ci0JaW50IGogPSAwOwogCi0JaWYgKHJlcG9ydF9wcm9ncmVzcykKLQkJcHJvZ3Jlc3MgPSBzdGFydF9kZWxheWVkX3Byb2dyZXNzKAotCQkJXygiQW5ub3RhdGluZyBjb21taXRzIGluIGNvbW1pdCBncmFwaCIpLCAwKTsKLQlmb3IgKGkgPSAwOyBpIDwgb2lkcy0+bnI7IGkrKykgewotCQlkaXNwbGF5X3Byb2dyZXNzKHByb2dyZXNzLCArK2opOwotCQljb21taXQgPSBsb29rdXBfY29tbWl0KHRoZV9yZXBvc2l0b3J5LCAmb2lkcy0+bGlzdFtpXSk7CisJaWYgKGN0eC0+cmVwb3J0X3Byb2dyZXNzKQorCQljdHgtPnByb2dyZXNzID0gc3RhcnRfZGVsYXllZF9wcm9ncmVzcygKKwkJCQkJXygiTG9hZGluZyBrbm93biBjb21taXRzIGluIGNvbW1pdCBncmFwaCIpLAorCQkJCQljdHgtPm9pZHMubnIpOworCWZvciAoaSA9IDA7IGkgPCBjdHgtPm9pZHMubnI7IGkrKykgeworCQlkaXNwbGF5X3Byb2dyZXNzKGN0eC0+cHJvZ3Jlc3MsIGkgKyAxKTsKKwkJY29tbWl0ID0gbG9va3VwX2NvbW1pdChjdHgtPnIsICZjdHgtPm9pZHMubGlzdFtpXSk7CiAJCWlmIChjb21taXQpCi0JCQljb21taXQtPm9iamVjdC5mbGFncyB8PSBVTklOVEVSRVNUSU5HOworCQkJY29tbWl0LT5vYmplY3QuZmxhZ3MgfD0gUkVBQ0hBQkxFOwogCX0KKwlzdG9wX3Byb2dyZXNzKCZjdHgtPnByb2dyZXNzKTsKIAogCS8qCi0JICogQXMgdGhpcyBsb29wIHJ1bnMsIG9pZHMtPm5yIG1heSBncm93LCBidXQgbm90IG1vcmUKKwkgKiBBcyB0aGlzIGxvb3AgcnVucywgY3R4LT5vaWRzLm5yIG1heSBncm93LCBidXQgbm90IG1vcmUKIAkgKiB0aGFuIHRoZSBudW1iZXIgb2YgbWlzc2luZyBjb21taXRzIGluIHRoZSByZWFjaGFibGUKIAkgKiBjbG9zdXJlLgogCSAqLwotCWZvciAoaSA9IDA7IGkgPCBvaWRzLT5ucjsgaSsrKSB7Ci0JCWRpc3BsYXlfcHJvZ3Jlc3MocHJvZ3Jlc3MsICsraik7Ci0JCWNvbW1pdCA9IGxvb2t1cF9jb21taXQodGhlX3JlcG9zaXRvcnksICZvaWRzLT5saXN0W2ldKTsKKwlpZiAoY3R4LT5yZXBvcnRfcHJvZ3Jlc3MpCisJCWN0eC0+cHJvZ3Jlc3MgPSBzdGFydF9kZWxheWVkX3Byb2dyZXNzKAorCQkJCQlfKCJFeHBhbmRpbmcgcmVhY2hhYmxlIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIiksCisJCQkJCTApOworCWZvciAoaSA9IDA7IGkgPCBjdHgtPm9pZHMubnI7IGkrKykgeworCQlkaXNwbGF5X3Byb2dyZXNzKGN0eC0+cHJvZ3Jlc3MsIGkgKyAxKTsKKwkJY29tbWl0ID0gbG9va3VwX2NvbW1pdChjdHgtPnIsICZjdHgtPm9pZHMubGlzdFtpXSk7CiAKLQkJaWYgKGNvbW1pdCAmJiAhcGFyc2VfY29tbWl0KGNvbW1pdCkpCi0JCQlhZGRfbWlzc2luZ19wYXJlbnRzKG9pZHMsIGNvbW1pdCk7CisJCWlmICghY29tbWl0KQorCQkJY29udGludWU7CisJCWlmIChjdHgtPnNwbGl0KSB7CisJCQlpZiAoIXBhcnNlX2NvbW1pdChjb21taXQpICYmCisJCQkgICAgY29tbWl0LT5ncmFwaF9wb3MgPT0gQ09NTUlUX05PVF9GUk9NX0dSQVBIKQorCQkJCWFkZF9taXNzaW5nX3BhcmVudHMoY3R4LCBjb21taXQpOworCQl9IGVsc2UgaWYgKCFwYXJzZV9jb21taXRfbm9fZ3JhcGgoY29tbWl0KSkKKwkJCWFkZF9taXNzaW5nX3BhcmVudHMoY3R4LCBjb21taXQpOwogCX0KKwlzdG9wX3Byb2dyZXNzKCZjdHgtPnByb2dyZXNzKTsKIAotCWZvciAoaSA9IDA7IGkgPCBvaWRzLT5ucjsgaSsrKSB7Ci0JCWRpc3BsYXlfcHJvZ3Jlc3MocHJvZ3Jlc3MsICsraik7Ci0JCWNvbW1pdCA9IGxvb2t1cF9jb21taXQodGhlX3JlcG9zaXRvcnksICZvaWRzLT5saXN0W2ldKTsKKwlpZiAoY3R4LT5yZXBvcnRfcHJvZ3Jlc3MpCisJCWN0eC0+cHJvZ3Jlc3MgPSBzdGFydF9kZWxheWVkX3Byb2dyZXNzKAorCQkJCQlfKCJDbGVhcmluZyBjb21taXQgbWFya3MgaW4gY29tbWl0IGdyYXBoIiksCisJCQkJCWN0eC0+b2lkcy5ucik7CisJZm9yIChpID0gMDsgaSA8IGN0eC0+b2lkcy5ucjsgaSsrKSB7CisJCWRpc3BsYXlfcHJvZ3Jlc3MoY3R4LT5wcm9ncmVzcywgaSArIDEpOworCQljb21taXQgPSBsb29rdXBfY29tbWl0KGN0eC0+ciwgJmN0eC0+b2lkcy5saXN0W2ldKTsKIAogCQlpZiAoY29tbWl0KQotCQkJY29tbWl0LT5vYmplY3QuZmxhZ3MgJj0gflVOSU5URVJFU1RJTkc7CisJCQljb21taXQtPm9iamVjdC5mbGFncyAmPSB+UkVBQ0hBQkxFOwogCX0KLQlzdG9wX3Byb2dyZXNzKCZwcm9ncmVzcyk7CisJc3RvcF9wcm9ncmVzcygmY3R4LT5wcm9ncmVzcyk7CiB9CiAKLXN0YXRpYyB2b2lkIGNvbXB1dGVfZ2VuZXJhdGlvbl9udW1iZXJzKHN0cnVjdCBwYWNrZWRfY29tbWl0X2xpc3QqIGNvbW1pdHMsCi0JCQkJICAgICAgIGludCByZXBvcnRfcHJvZ3Jlc3MpCitzdGF0aWMgdm9pZCBjb21wdXRlX2dlbmVyYXRpb25fbnVtYmVycyhzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQgKmN0eCkKIHsKIAlpbnQgaTsKIAlzdHJ1Y3QgY29tbWl0X2xpc3QgKmxpc3QgPSBOVUxMOwotCXN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MgPSBOVUxMOwogCi0JaWYgKHJlcG9ydF9wcm9ncmVzcykKLQkJcHJvZ3Jlc3MgPSBzdGFydF9wcm9ncmVzcygKLQkJCV8oIkNvbXB1dGluZyBjb21taXQgZ3JhcGggZ2VuZXJhdGlvbiBudW1iZXJzIiksCi0JCQljb21taXRzLT5ucik7Ci0JZm9yIChpID0gMDsgaSA8IGNvbW1pdHMtPm5yOyBpKyspIHsKLQkJZGlzcGxheV9wcm9ncmVzcyhwcm9ncmVzcywgaSArIDEpOwotCQlpZiAoY29tbWl0cy0+bGlzdFtpXS0+Z2VuZXJhdGlvbiAhPSBHRU5FUkFUSU9OX05VTUJFUl9JTkZJTklUWSAmJgotCQkgICAgY29tbWl0cy0+bGlzdFtpXS0+Z2VuZXJhdGlvbiAhPSBHRU5FUkFUSU9OX05VTUJFUl9aRVJPKQorCWlmIChjdHgtPnJlcG9ydF9wcm9ncmVzcykKKwkJY3R4LT5wcm9ncmVzcyA9IHN0YXJ0X2RlbGF5ZWRfcHJvZ3Jlc3MoCisJCQkJCV8oIkNvbXB1dGluZyBjb21taXQgZ3JhcGggZ2VuZXJhdGlvbiBudW1iZXJzIiksCisJCQkJCWN0eC0+Y29tbWl0cy5ucik7CisJZm9yIChpID0gMDsgaSA8IGN0eC0+Y29tbWl0cy5ucjsgaSsrKSB7CisJCWRpc3BsYXlfcHJvZ3Jlc3MoY3R4LT5wcm9ncmVzcywgaSArIDEpOworCQlpZiAoY3R4LT5jb21taXRzLmxpc3RbaV0tPmdlbmVyYXRpb24gIT0gR0VORVJBVElPTl9OVU1CRVJfSU5GSU5JVFkgJiYKKwkJICAgIGN0eC0+Y29tbWl0cy5saXN0W2ldLT5nZW5lcmF0aW9uICE9IEdFTkVSQVRJT05fTlVNQkVSX1pFUk8pCiAJCQljb250aW51ZTsKIAotCQljb21taXRfbGlzdF9pbnNlcnQoY29tbWl0cy0+bGlzdFtpXSwgJmxpc3QpOworCQljb21taXRfbGlzdF9pbnNlcnQoY3R4LT5jb21taXRzLmxpc3RbaV0sICZsaXN0KTsKIAkJd2hpbGUgKGxpc3QpIHsKIAkJCXN0cnVjdCBjb21taXQgKmN1cnJlbnQgPSBsaXN0LT5pdGVtOwogCQkJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnQ7CkBAIC03MjMsNyArMTEzMCw3IEBACiAJCQl9CiAJCX0KIAl9Ci0Jc3RvcF9wcm9ncmVzcygmcHJvZ3Jlc3MpOworCXN0b3BfcHJvZ3Jlc3MoJmN0eC0+cHJvZ3Jlc3MpOwogfQogCiBzdGF0aWMgaW50IGFkZF9yZWZfdG9fbGlzdChjb25zdCBjaGFyICpyZWZuYW1lLApAQCAtNzM2LDE5NyArMTE0MywyOTMgQEAKIAlyZXR1cm4gMDsKIH0KIAotdm9pZCB3cml0ZV9jb21taXRfZ3JhcGhfcmVhY2hhYmxlKGNvbnN0IGNoYXIgKm9ial9kaXIsIGludCBhcHBlbmQsCi0JCQkJICBpbnQgcmVwb3J0X3Byb2dyZXNzKQoraW50IHdyaXRlX2NvbW1pdF9ncmFwaF9yZWFjaGFibGUoc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKm9kYiwKKwkJCQkgZW51bSBjb21taXRfZ3JhcGhfd3JpdGVfZmxhZ3MgZmxhZ3MsCisJCQkJIGNvbnN0IHN0cnVjdCBzcGxpdF9jb21taXRfZ3JhcGhfb3B0cyAqc3BsaXRfb3B0cykKIHsKIAlzdHJ1Y3Qgc3RyaW5nX2xpc3QgbGlzdCA9IFNUUklOR19MSVNUX0lOSVRfRFVQOworCWludCByZXN1bHQ7CiAKIAlmb3JfZWFjaF9yZWYoYWRkX3JlZl90b19saXN0LCAmbGlzdCk7Ci0Jd3JpdGVfY29tbWl0X2dyYXBoKG9ial9kaXIsIE5VTEwsICZsaXN0LCBhcHBlbmQsIHJlcG9ydF9wcm9ncmVzcyk7CisJcmVzdWx0ID0gd3JpdGVfY29tbWl0X2dyYXBoKG9kYiwgTlVMTCwgJmxpc3QsCisJCQkJICAgIGZsYWdzLCBzcGxpdF9vcHRzKTsKIAogCXN0cmluZ19saXN0X2NsZWFyKCZsaXN0LCAwKTsKKwlyZXR1cm4gcmVzdWx0OwogfQogCi12b2lkIHdyaXRlX2NvbW1pdF9ncmFwaChjb25zdCBjaGFyICpvYmpfZGlyLAotCQkJc3RydWN0IHN0cmluZ19saXN0ICpwYWNrX2luZGV4ZXMsCi0JCQlzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmNvbW1pdF9oZXgsCi0JCQlpbnQgYXBwZW5kLCBpbnQgcmVwb3J0X3Byb2dyZXNzKQorc3RhdGljIGludCBmaWxsX29pZHNfZnJvbV9wYWNrcyhzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQgKmN0eCwKKwkJCQlzdHJ1Y3Qgc3RyaW5nX2xpc3QgKnBhY2tfaW5kZXhlcykKIHsKLQlzdHJ1Y3QgcGFja2VkX29pZF9saXN0IG9pZHM7Ci0Jc3RydWN0IHBhY2tlZF9jb21taXRfbGlzdCBjb21taXRzOwotCXN0cnVjdCBoYXNoZmlsZSAqZjsKLQl1aW50MzJfdCBpLCBjb3VudF9kaXN0aW5jdCA9IDA7Ci0JY2hhciAqZ3JhcGhfbmFtZTsKLQlzdHJ1Y3QgbG9ja19maWxlIGxrID0gTE9DS19JTklUOwotCXVpbnQzMl90IGNodW5rX2lkc1s1XTsKLQl1aW50NjRfdCBjaHVua19vZmZzZXRzWzVdOwotCWludCBudW1fY2h1bmtzOwotCWludCBudW1fZXh0cmFfZWRnZXM7Ci0Jc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnQ7Ci0Jc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcyA9IE5VTEw7CisJdWludDMyX3QgaTsKKwlzdHJ1Y3Qgc3RyYnVmIHByb2dyZXNzX3RpdGxlID0gU1RSQlVGX0lOSVQ7CisJc3RydWN0IHN0cmJ1ZiBwYWNrbmFtZSA9IFNUUkJVRl9JTklUOworCWludCBkaXJsZW47CiAKLQlpZiAoIWNvbW1pdF9ncmFwaF9jb21wYXRpYmxlKHRoZV9yZXBvc2l0b3J5KSkKLQkJcmV0dXJuOwotCi0Jb2lkcy5uciA9IDA7Ci0Jb2lkcy5hbGxvYyA9IGFwcHJveGltYXRlX29iamVjdF9jb3VudCgpIC8gMzI7Ci0Jb2lkcy5wcm9ncmVzcyA9IE5VTEw7Ci0Jb2lkcy5wcm9ncmVzc19kb25lID0gMDsKLQotCWlmIChhcHBlbmQpIHsKLQkJcHJlcGFyZV9jb21taXRfZ3JhcGhfb25lKHRoZV9yZXBvc2l0b3J5LCBvYmpfZGlyKTsKLQkJaWYgKHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzLT5jb21taXRfZ3JhcGgpCi0JCQlvaWRzLmFsbG9jICs9IHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzLT5jb21taXRfZ3JhcGgtPm51bV9jb21taXRzOworCXN0cmJ1Zl9hZGRmKCZwYWNrbmFtZSwgIiVzL3BhY2svIiwgY3R4LT5vZGItPnBhdGgpOworCWRpcmxlbiA9IHBhY2tuYW1lLmxlbjsKKwlpZiAoY3R4LT5yZXBvcnRfcHJvZ3Jlc3MpIHsKKwkJc3RyYnVmX2FkZGYoJnByb2dyZXNzX3RpdGxlLAorCQkJICAgIFFfKCJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrIiwKKwkJCSAgICAgICAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggaW4gJWQgcGFja3MiLAorCQkJICAgICAgIHBhY2tfaW5kZXhlcy0+bnIpLAorCQkJICAgIHBhY2tfaW5kZXhlcy0+bnIpOworCQljdHgtPnByb2dyZXNzID0gc3RhcnRfZGVsYXllZF9wcm9ncmVzcyhwcm9ncmVzc190aXRsZS5idWYsIDApOworCQljdHgtPnByb2dyZXNzX2RvbmUgPSAwOworCX0KKwlmb3IgKGkgPSAwOyBpIDwgcGFja19pbmRleGVzLT5ucjsgaSsrKSB7CisJCXN0cnVjdCBwYWNrZWRfZ2l0ICpwOworCQlzdHJidWZfc2V0bGVuKCZwYWNrbmFtZSwgZGlybGVuKTsKKwkJc3RyYnVmX2FkZHN0cigmcGFja25hbWUsIHBhY2tfaW5kZXhlcy0+aXRlbXNbaV0uc3RyaW5nKTsKKwkJcCA9IGFkZF9wYWNrZWRfZ2l0KHBhY2tuYW1lLmJ1ZiwgcGFja25hbWUubGVuLCAxKTsKKwkJaWYgKCFwKSB7CisJCQllcnJvcihfKCJlcnJvciBhZGRpbmcgcGFjayAlcyIpLCBwYWNrbmFtZS5idWYpOworCQkJcmV0dXJuIC0xOworCQl9CisJCWlmIChvcGVuX3BhY2tfaW5kZXgocCkpIHsKKwkJCWVycm9yKF8oImVycm9yIG9wZW5pbmcgaW5kZXggZm9yICVzIiksIHBhY2tuYW1lLmJ1Zik7CisJCQlyZXR1cm4gLTE7CisJCX0KKwkJZm9yX2VhY2hfb2JqZWN0X2luX3BhY2socCwgYWRkX3BhY2tlZF9jb21taXRzLCBjdHgsCisJCQkJCUZPUl9FQUNIX09CSkVDVF9QQUNLX09SREVSKTsKKwkJY2xvc2VfcGFjayhwKTsKKwkJZnJlZShwKTsKIAl9CiAKLQlpZiAob2lkcy5hbGxvYyA8IDEwMjQpCi0JCW9pZHMuYWxsb2MgPSAxMDI0OwotCUFMTE9DX0FSUkFZKG9pZHMubGlzdCwgb2lkcy5hbGxvYyk7CisJc3RvcF9wcm9ncmVzcygmY3R4LT5wcm9ncmVzcyk7CisJc3RyYnVmX3JlbGVhc2UoJnByb2dyZXNzX3RpdGxlKTsKKwlzdHJidWZfcmVsZWFzZSgmcGFja25hbWUpOwogCi0JaWYgKGFwcGVuZCAmJiB0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cy0+Y29tbWl0X2dyYXBoKSB7Ci0JCXN0cnVjdCBjb21taXRfZ3JhcGggKmNvbW1pdF9ncmFwaCA9Ci0JCQl0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cy0+Y29tbWl0X2dyYXBoOwotCQlmb3IgKGkgPSAwOyBpIDwgY29tbWl0X2dyYXBoLT5udW1fY29tbWl0czsgaSsrKSB7Ci0JCQljb25zdCB1bnNpZ25lZCBjaGFyICpoYXNoID0gY29tbWl0X2dyYXBoLT5jaHVua19vaWRfbG9va3VwICsKLQkJCQljb21taXRfZ3JhcGgtPmhhc2hfbGVuICogaTsKLQkJCWhhc2hjcHkob2lkcy5saXN0W29pZHMubnIrK10uaGFzaCwgaGFzaCk7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgZmlsbF9vaWRzX2Zyb21fY29tbWl0X2hleChzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQgKmN0eCwKKwkJCQkgICAgIHN0cnVjdCBzdHJpbmdfbGlzdCAqY29tbWl0X2hleCkKK3sKKwl1aW50MzJfdCBpOworCXN0cnVjdCBzdHJidWYgcHJvZ3Jlc3NfdGl0bGUgPSBTVFJCVUZfSU5JVDsKKworCWlmIChjdHgtPnJlcG9ydF9wcm9ncmVzcykgeworCQlzdHJidWZfYWRkZigmcHJvZ3Jlc3NfdGl0bGUsCisJCQkgICAgUV8oIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGZyb20gJWQgcmVmIiwKKwkJCSAgICAgICAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggZnJvbSAlZCByZWZzIiwKKwkJCSAgICAgICBjb21taXRfaGV4LT5uciksCisJCQkgICAgY29tbWl0X2hleC0+bnIpOworCQljdHgtPnByb2dyZXNzID0gc3RhcnRfZGVsYXllZF9wcm9ncmVzcygKKwkJCQkJcHJvZ3Jlc3NfdGl0bGUuYnVmLAorCQkJCQljb21taXRfaGV4LT5ucik7CisJfQorCWZvciAoaSA9IDA7IGkgPCBjb21taXRfaGV4LT5ucjsgaSsrKSB7CisJCWNvbnN0IGNoYXIgKmVuZDsKKwkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CisJCXN0cnVjdCBjb21taXQgKnJlc3VsdDsKKworCQlkaXNwbGF5X3Byb2dyZXNzKGN0eC0+cHJvZ3Jlc3MsIGkgKyAxKTsKKwkJaWYgKCFwYXJzZV9vaWRfaGV4KGNvbW1pdF9oZXgtPml0ZW1zW2ldLnN0cmluZywgJm9pZCwgJmVuZCkgJiYKKwkJICAgIChyZXN1bHQgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZV9nZW50bHkoY3R4LT5yLCAmb2lkLCAxKSkpIHsKKwkJCUFMTE9DX0dST1coY3R4LT5vaWRzLmxpc3QsIGN0eC0+b2lkcy5uciArIDEsIGN0eC0+b2lkcy5hbGxvYyk7CisJCQlvaWRjcHkoJmN0eC0+b2lkcy5saXN0W2N0eC0+b2lkcy5ucl0sICYocmVzdWx0LT5vYmplY3Qub2lkKSk7CisJCQljdHgtPm9pZHMubnIrKzsKKwkJfSBlbHNlIGlmIChjdHgtPmNoZWNrX29pZHMpIHsKKwkJCWVycm9yKF8oImludmFsaWQgY29tbWl0IG9iamVjdCBpZDogJXMiKSwKKwkJCSAgICBjb21taXRfaGV4LT5pdGVtc1tpXS5zdHJpbmcpOworCQkJcmV0dXJuIC0xOwogCQl9CiAJfQorCXN0b3BfcHJvZ3Jlc3MoJmN0eC0+cHJvZ3Jlc3MpOworCXN0cmJ1Zl9yZWxlYXNlKCZwcm9ncmVzc190aXRsZSk7CiAKLQlpZiAocGFja19pbmRleGVzKSB7Ci0JCXN0cnVjdCBzdHJidWYgcGFja25hbWUgPSBTVFJCVUZfSU5JVDsKLQkJaW50IGRpcmxlbjsKLQkJc3RyYnVmX2FkZGYoJnBhY2tuYW1lLCAiJXMvcGFjay8iLCBvYmpfZGlyKTsKLQkJZGlybGVuID0gcGFja25hbWUubGVuOwotCQlpZiAocmVwb3J0X3Byb2dyZXNzKSB7Ci0JCQlvaWRzLnByb2dyZXNzID0gc3RhcnRfZGVsYXllZF9wcm9ncmVzcygKLQkJCQlfKCJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCIpLCAwKTsKLQkJCW9pZHMucHJvZ3Jlc3NfZG9uZSA9IDA7Ci0JCX0KLQkJZm9yIChpID0gMDsgaSA8IHBhY2tfaW5kZXhlcy0+bnI7IGkrKykgewotCQkJc3RydWN0IHBhY2tlZF9naXQgKnA7Ci0JCQlzdHJidWZfc2V0bGVuKCZwYWNrbmFtZSwgZGlybGVuKTsKLQkJCXN0cmJ1Zl9hZGRzdHIoJnBhY2tuYW1lLCBwYWNrX2luZGV4ZXMtPml0ZW1zW2ldLnN0cmluZyk7Ci0JCQlwID0gYWRkX3BhY2tlZF9naXQocGFja25hbWUuYnVmLCBwYWNrbmFtZS5sZW4sIDEpOwotCQkJaWYgKCFwKQotCQkJCWRpZShfKCJlcnJvciBhZGRpbmcgcGFjayAlcyIpLCBwYWNrbmFtZS5idWYpOwotCQkJaWYgKG9wZW5fcGFja19pbmRleChwKSkKLQkJCQlkaWUoXygiZXJyb3Igb3BlbmluZyBpbmRleCBmb3IgJXMiKSwgcGFja25hbWUuYnVmKTsKLQkJCWZvcl9lYWNoX29iamVjdF9pbl9wYWNrKHAsIGFkZF9wYWNrZWRfY29tbWl0cywgJm9pZHMsIDApOwotCQkJY2xvc2VfcGFjayhwKTsKLQkJCWZyZWUocCk7Ci0JCX0KLQkJc3RvcF9wcm9ncmVzcygmb2lkcy5wcm9ncmVzcyk7Ci0JCXN0cmJ1Zl9yZWxlYXNlKCZwYWNrbmFtZSk7Ci0JfQorCXJldHVybiAwOworfQogCi0JaWYgKGNvbW1pdF9oZXgpIHsKLQkJaWYgKHJlcG9ydF9wcm9ncmVzcykKLQkJCXByb2dyZXNzID0gc3RhcnRfZGVsYXllZF9wcm9ncmVzcygKLQkJCQlfKCJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCIpLAotCQkJCWNvbW1pdF9oZXgtPm5yKTsKLQkJZm9yIChpID0gMDsgaSA8IGNvbW1pdF9oZXgtPm5yOyBpKyspIHsKLQkJCWNvbnN0IGNoYXIgKmVuZDsKLQkJCXN0cnVjdCBvYmplY3RfaWQgb2lkOwotCQkJc3RydWN0IGNvbW1pdCAqcmVzdWx0Oworc3RhdGljIHZvaWQgZmlsbF9vaWRzX2Zyb21fYWxsX3BhY2tzKHN0cnVjdCB3cml0ZV9jb21taXRfZ3JhcGhfY29udGV4dCAqY3R4KQoreworCWlmIChjdHgtPnJlcG9ydF9wcm9ncmVzcykKKwkJY3R4LT5wcm9ncmVzcyA9IHN0YXJ0X2RlbGF5ZWRfcHJvZ3Jlc3MoCisJCQlfKCJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBhbW9uZyBwYWNrZWQgb2JqZWN0cyIpLAorCQkJY3R4LT5hcHByb3hfbnJfb2JqZWN0cyk7CisJZm9yX2VhY2hfcGFja2VkX29iamVjdChhZGRfcGFja2VkX2NvbW1pdHMsIGN0eCwKKwkJCSAgICAgICBGT1JfRUFDSF9PQkpFQ1RfUEFDS19PUkRFUik7CisJaWYgKGN0eC0+cHJvZ3Jlc3NfZG9uZSA8IGN0eC0+YXBwcm94X25yX29iamVjdHMpCisJCWRpc3BsYXlfcHJvZ3Jlc3MoY3R4LT5wcm9ncmVzcywgY3R4LT5hcHByb3hfbnJfb2JqZWN0cyk7CisJc3RvcF9wcm9ncmVzcygmY3R4LT5wcm9ncmVzcyk7Cit9CiAKLQkJCWRpc3BsYXlfcHJvZ3Jlc3MocHJvZ3Jlc3MsIGkgKyAxKTsKLQkJCWlmIChjb21taXRfaGV4LT5pdGVtc1tpXS5zdHJpbmcgJiYKLQkJCSAgICBwYXJzZV9vaWRfaGV4KGNvbW1pdF9oZXgtPml0ZW1zW2ldLnN0cmluZywgJm9pZCwgJmVuZCkpCi0JCQkJY29udGludWU7CitzdGF0aWMgdWludDMyX3QgY291bnRfZGlzdGluY3RfY29tbWl0cyhzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQgKmN0eCkKK3sKKwl1aW50MzJfdCBpLCBjb3VudF9kaXN0aW5jdCA9IDE7CiAKLQkJCXJlc3VsdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlX2dlbnRseSh0aGVfcmVwb3NpdG9yeSwgJm9pZCwgMSk7CisJaWYgKGN0eC0+cmVwb3J0X3Byb2dyZXNzKQorCQljdHgtPnByb2dyZXNzID0gc3RhcnRfZGVsYXllZF9wcm9ncmVzcygKKwkJCV8oIkNvdW50aW5nIGRpc3RpbmN0IGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIiksCisJCQljdHgtPm9pZHMubnIpOworCWRpc3BsYXlfcHJvZ3Jlc3MoY3R4LT5wcm9ncmVzcywgMCk7IC8qIFRPRE86IE1lYXN1cmUgUVNPUlQoKSBwcm9ncmVzcyAqLworCVFTT1JUKGN0eC0+b2lkcy5saXN0LCBjdHgtPm9pZHMubnIsIG9pZF9jb21wYXJlKTsKIAotCQkJaWYgKHJlc3VsdCkgewotCQkJCUFMTE9DX0dST1cob2lkcy5saXN0LCBvaWRzLm5yICsgMSwgb2lkcy5hbGxvYyk7Ci0JCQkJb2lkY3B5KCZvaWRzLmxpc3Rbb2lkcy5ucl0sICYocmVzdWx0LT5vYmplY3Qub2lkKSk7Ci0JCQkJb2lkcy5ucisrOworCWZvciAoaSA9IDE7IGkgPCBjdHgtPm9pZHMubnI7IGkrKykgeworCQlkaXNwbGF5X3Byb2dyZXNzKGN0eC0+cHJvZ3Jlc3MsIGkgKyAxKTsKKwkJaWYgKCFvaWRlcSgmY3R4LT5vaWRzLmxpc3RbaSAtIDFdLCAmY3R4LT5vaWRzLmxpc3RbaV0pKSB7CisJCQlpZiAoY3R4LT5zcGxpdCkgeworCQkJCXN0cnVjdCBjb21taXQgKmMgPSBsb29rdXBfY29tbWl0KGN0eC0+ciwgJmN0eC0+b2lkcy5saXN0W2ldKTsKKworCQkJCWlmICghYyB8fCBjLT5ncmFwaF9wb3MgIT0gQ09NTUlUX05PVF9GUk9NX0dSQVBIKQorCQkJCQljb250aW51ZTsKIAkJCX0KLQkJfQotCQlzdG9wX3Byb2dyZXNzKCZwcm9ncmVzcyk7Ci0JfQogCi0JaWYgKCFwYWNrX2luZGV4ZXMgJiYgIWNvbW1pdF9oZXgpIHsKLQkJaWYgKHJlcG9ydF9wcm9ncmVzcykKLQkJCW9pZHMucHJvZ3Jlc3MgPSBzdGFydF9kZWxheWVkX3Byb2dyZXNzKAotCQkJCV8oIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIiksIDApOwotCQlmb3JfZWFjaF9wYWNrZWRfb2JqZWN0KGFkZF9wYWNrZWRfY29tbWl0cywgJm9pZHMsIDApOwotCQlzdG9wX3Byb2dyZXNzKCZvaWRzLnByb2dyZXNzKTsKLQl9Ci0KLQljbG9zZV9yZWFjaGFibGUoJm9pZHMsIHJlcG9ydF9wcm9ncmVzcyk7Ci0KLQlRU09SVChvaWRzLmxpc3QsIG9pZHMubnIsIGNvbW1pdF9jb21wYXJlKTsKLQotCWNvdW50X2Rpc3RpbmN0ID0gMTsKLQlmb3IgKGkgPSAxOyBpIDwgb2lkcy5ucjsgaSsrKSB7Ci0JCWlmICghb2lkZXEoJm9pZHMubGlzdFtpIC0gMV0sICZvaWRzLmxpc3RbaV0pKQogCQkJY291bnRfZGlzdGluY3QrKzsKKwkJfQogCX0KKwlzdG9wX3Byb2dyZXNzKCZjdHgtPnByb2dyZXNzKTsKIAotCWlmIChjb3VudF9kaXN0aW5jdCA+PSBHUkFQSF9QQVJFTlRfTUlTU0lORykKLQkJZGllKF8oInRoZSBjb21taXQgZ3JhcGggZm9ybWF0IGNhbm5vdCB3cml0ZSAlZCBjb21taXRzIiksIGNvdW50X2Rpc3RpbmN0KTsKKwlyZXR1cm4gY291bnRfZGlzdGluY3Q7Cit9CiAKLQljb21taXRzLm5yID0gMDsKLQljb21taXRzLmFsbG9jID0gY291bnRfZGlzdGluY3Q7Ci0JQUxMT0NfQVJSQVkoY29tbWl0cy5saXN0LCBjb21taXRzLmFsbG9jKTsKK3N0YXRpYyB2b2lkIGNvcHlfb2lkc190b19jb21taXRzKHN0cnVjdCB3cml0ZV9jb21taXRfZ3JhcGhfY29udGV4dCAqY3R4KQoreworCXVpbnQzMl90IGk7CiAKLQludW1fZXh0cmFfZWRnZXMgPSAwOwotCWZvciAoaSA9IDA7IGkgPCBvaWRzLm5yOyBpKyspIHsKLQkJaW50IG51bV9wYXJlbnRzID0gMDsKLQkJaWYgKGkgPiAwICYmIG9pZGVxKCZvaWRzLmxpc3RbaSAtIDFdLCAmb2lkcy5saXN0W2ldKSkKKwljdHgtPm51bV9leHRyYV9lZGdlcyA9IDA7CisJaWYgKGN0eC0+cmVwb3J0X3Byb2dyZXNzKQorCQljdHgtPnByb2dyZXNzID0gc3RhcnRfZGVsYXllZF9wcm9ncmVzcygKKwkJCV8oIkZpbmRpbmcgZXh0cmEgZWRnZXMgaW4gY29tbWl0IGdyYXBoIiksCisJCQljdHgtPm9pZHMubnIpOworCWZvciAoaSA9IDA7IGkgPCBjdHgtPm9pZHMubnI7IGkrKykgeworCQl1bnNpZ25lZCBpbnQgbnVtX3BhcmVudHM7CisKKwkJZGlzcGxheV9wcm9ncmVzcyhjdHgtPnByb2dyZXNzLCBpICsgMSk7CisJCWlmIChpID4gMCAmJiBvaWRlcSgmY3R4LT5vaWRzLmxpc3RbaSAtIDFdLCAmY3R4LT5vaWRzLmxpc3RbaV0pKQogCQkJY29udGludWU7CiAKLQkJY29tbWl0cy5saXN0W2NvbW1pdHMubnJdID0gbG9va3VwX2NvbW1pdCh0aGVfcmVwb3NpdG9yeSwgJm9pZHMubGlzdFtpXSk7Ci0JCXBhcnNlX2NvbW1pdChjb21taXRzLmxpc3RbY29tbWl0cy5ucl0pOworCQlBTExPQ19HUk9XKGN0eC0+Y29tbWl0cy5saXN0LCBjdHgtPmNvbW1pdHMubnIgKyAxLCBjdHgtPmNvbW1pdHMuYWxsb2MpOworCQljdHgtPmNvbW1pdHMubGlzdFtjdHgtPmNvbW1pdHMubnJdID0gbG9va3VwX2NvbW1pdChjdHgtPnIsICZjdHgtPm9pZHMubGlzdFtpXSk7CiAKLQkJZm9yIChwYXJlbnQgPSBjb21taXRzLmxpc3RbY29tbWl0cy5ucl0tPnBhcmVudHM7Ci0JCSAgICAgcGFyZW50OyBwYXJlbnQgPSBwYXJlbnQtPm5leHQpCi0JCQludW1fcGFyZW50cysrOworCQlpZiAoY3R4LT5zcGxpdCAmJgorCQkgICAgY3R4LT5jb21taXRzLmxpc3RbY3R4LT5jb21taXRzLm5yXS0+Z3JhcGhfcG9zICE9IENPTU1JVF9OT1RfRlJPTV9HUkFQSCkKKwkJCWNvbnRpbnVlOwogCisJCXBhcnNlX2NvbW1pdF9ub19ncmFwaChjdHgtPmNvbW1pdHMubGlzdFtjdHgtPmNvbW1pdHMubnJdKTsKKworCQludW1fcGFyZW50cyA9IGNvbW1pdF9saXN0X2NvdW50KGN0eC0+Y29tbWl0cy5saXN0W2N0eC0+Y29tbWl0cy5ucl0tPnBhcmVudHMpOwogCQlpZiAobnVtX3BhcmVudHMgPiAyKQotCQkJbnVtX2V4dHJhX2VkZ2VzICs9IG51bV9wYXJlbnRzIC0gMTsKKwkJCWN0eC0+bnVtX2V4dHJhX2VkZ2VzICs9IG51bV9wYXJlbnRzIC0gMTsKIAotCQljb21taXRzLm5yKys7CisJCWN0eC0+Y29tbWl0cy5ucisrOwogCX0KLQludW1fY2h1bmtzID0gbnVtX2V4dHJhX2VkZ2VzID8gNCA6IDM7CisJc3RvcF9wcm9ncmVzcygmY3R4LT5wcm9ncmVzcyk7Cit9CiAKLQlpZiAoY29tbWl0cy5uciA+PSBHUkFQSF9QQVJFTlRfTUlTU0lORykKLQkJZGllKF8oInRvbyBtYW55IGNvbW1pdHMgdG8gd3JpdGUgZ3JhcGgiKSk7CitzdGF0aWMgaW50IHdyaXRlX2dyYXBoX2NodW5rX2Jhc2VfMShzdHJ1Y3QgaGFzaGZpbGUgKmYsCisJCQkJICAgIHN0cnVjdCBjb21taXRfZ3JhcGggKmcpCit7CisJaW50IG51bSA9IDA7CiAKLQljb21wdXRlX2dlbmVyYXRpb25fbnVtYmVycygmY29tbWl0cywgcmVwb3J0X3Byb2dyZXNzKTsKKwlpZiAoIWcpCisJCXJldHVybiAwOwogCi0JZ3JhcGhfbmFtZSA9IGdldF9jb21taXRfZ3JhcGhfZmlsZW5hbWUob2JqX2Rpcik7Ci0JaWYgKHNhZmVfY3JlYXRlX2xlYWRpbmdfZGlyZWN0b3JpZXMoZ3JhcGhfbmFtZSkpIHsKLQkJVU5MRUFLKGdyYXBoX25hbWUpOwotCQlkaWVfZXJybm8oXygidW5hYmxlIHRvIGNyZWF0ZSBsZWFkaW5nIGRpcmVjdG9yaWVzIG9mICVzIiksCi0JCQkgIGdyYXBoX25hbWUpOworCW51bSA9IHdyaXRlX2dyYXBoX2NodW5rX2Jhc2VfMShmLCBnLT5iYXNlX2dyYXBoKTsKKwloYXNod3JpdGUoZiwgZy0+b2lkLmhhc2gsIHRoZV9oYXNoX2FsZ28tPnJhd3N6KTsKKwlyZXR1cm4gbnVtICsgMTsKK30KKworc3RhdGljIGludCB3cml0ZV9ncmFwaF9jaHVua19iYXNlKHN0cnVjdCBoYXNoZmlsZSAqZiwKKwkJCQkgIHN0cnVjdCB3cml0ZV9jb21taXRfZ3JhcGhfY29udGV4dCAqY3R4KQoreworCWludCBudW0gPSB3cml0ZV9ncmFwaF9jaHVua19iYXNlXzEoZiwgY3R4LT5uZXdfYmFzZV9ncmFwaCk7CisKKwlpZiAobnVtICE9IGN0eC0+bnVtX2NvbW1pdF9ncmFwaHNfYWZ0ZXIgLSAxKSB7CisJCWVycm9yKF8oImZhaWxlZCB0byB3cml0ZSBjb3JyZWN0IG51bWJlciBvZiBiYXNlIGdyYXBoIGlkcyIpKTsKKwkJcmV0dXJuIC0xOwogCX0KIAotCWhvbGRfbG9ja19maWxlX2Zvcl91cGRhdGUoJmxrLCBncmFwaF9uYW1lLCBMT0NLX0RJRV9PTl9FUlJPUik7Ci0JZiA9IGhhc2hmZChsay50ZW1wZmlsZS0+ZmQsIGxrLnRlbXBmaWxlLT5maWxlbmFtZS5idWYpOworCXJldHVybiAwOworfQogCi0JaGFzaHdyaXRlX2JlMzIoZiwgR1JBUEhfU0lHTkFUVVJFKTsKK3N0YXRpYyBpbnQgd3JpdGVfY29tbWl0X2dyYXBoX2ZpbGUoc3RydWN0IHdyaXRlX2NvbW1pdF9ncmFwaF9jb250ZXh0ICpjdHgpCit7CisJdWludDMyX3QgaTsKKwlpbnQgZmQ7CisJc3RydWN0IGhhc2hmaWxlICpmOworCXN0cnVjdCBsb2NrX2ZpbGUgbGsgPSBMT0NLX0lOSVQ7CisJdWludDMyX3QgY2h1bmtfaWRzWzZdOworCXVpbnQ2NF90IGNodW5rX29mZnNldHNbNl07CisJY29uc3QgdW5zaWduZWQgaGFzaHN6ID0gdGhlX2hhc2hfYWxnby0+cmF3c3o7CisJc3RydWN0IHN0cmJ1ZiBwcm9ncmVzc190aXRsZSA9IFNUUkJVRl9JTklUOworCWludCBudW1fY2h1bmtzID0gMzsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIGZpbGVfaGFzaDsKIAotCWhhc2h3cml0ZV91OChmLCBHUkFQSF9WRVJTSU9OKTsKLQloYXNod3JpdGVfdTgoZiwgR1JBUEhfT0lEX1ZFUlNJT04pOwotCWhhc2h3cml0ZV91OChmLCBudW1fY2h1bmtzKTsKLQloYXNod3JpdGVfdTgoZiwgMCk7IC8qIHVudXNlZCBwYWRkaW5nIGJ5dGUgKi8KKwlpZiAoY3R4LT5zcGxpdCkgeworCQlzdHJ1Y3Qgc3RyYnVmIHRtcF9maWxlID0gU1RSQlVGX0lOSVQ7CisKKwkJc3RyYnVmX2FkZGYoJnRtcF9maWxlLAorCQkJICAgICIlcy9pbmZvL2NvbW1pdC1ncmFwaHMvdG1wX2dyYXBoX1hYWFhYWCIsCisJCQkgICAgY3R4LT5vZGItPnBhdGgpOworCQljdHgtPmdyYXBoX25hbWUgPSBzdHJidWZfZGV0YWNoKCZ0bXBfZmlsZSwgTlVMTCk7CisJfSBlbHNlIHsKKwkJY3R4LT5ncmFwaF9uYW1lID0gZ2V0X2NvbW1pdF9ncmFwaF9maWxlbmFtZShjdHgtPm9kYik7CisJfQorCisJaWYgKHNhZmVfY3JlYXRlX2xlYWRpbmdfZGlyZWN0b3JpZXMoY3R4LT5ncmFwaF9uYW1lKSkgeworCQlVTkxFQUsoY3R4LT5ncmFwaF9uYW1lKTsKKwkJZXJyb3IoXygidW5hYmxlIHRvIGNyZWF0ZSBsZWFkaW5nIGRpcmVjdG9yaWVzIG9mICVzIiksCisJCQljdHgtPmdyYXBoX25hbWUpOworCQlyZXR1cm4gLTE7CisJfQorCisJaWYgKGN0eC0+c3BsaXQpIHsKKwkJY2hhciAqbG9ja19uYW1lID0gZ2V0X2NoYWluX2ZpbGVuYW1lKGN0eC0+b2RiKTsKKworCQlob2xkX2xvY2tfZmlsZV9mb3JfdXBkYXRlKCZsaywgbG9ja19uYW1lLCBMT0NLX0RJRV9PTl9FUlJPUik7CisKKwkJZmQgPSBnaXRfbWtzdGVtcF9tb2RlKGN0eC0+Z3JhcGhfbmFtZSwgMDQ0NCk7CisJCWlmIChmZCA8IDApIHsKKwkJCWVycm9yKF8oInVuYWJsZSB0byBjcmVhdGUgJyVzJyIpLCBjdHgtPmdyYXBoX25hbWUpOworCQkJcmV0dXJuIC0xOworCQl9CisKKwkJZiA9IGhhc2hmZChmZCwgY3R4LT5ncmFwaF9uYW1lKTsKKwl9IGVsc2UgeworCQlob2xkX2xvY2tfZmlsZV9mb3JfdXBkYXRlKCZsaywgY3R4LT5ncmFwaF9uYW1lLCBMT0NLX0RJRV9PTl9FUlJPUik7CisJCWZkID0gbGsudGVtcGZpbGUtPmZkOworCQlmID0gaGFzaGZkKGxrLnRlbXBmaWxlLT5mZCwgbGsudGVtcGZpbGUtPmZpbGVuYW1lLmJ1Zik7CisJfQogCiAJY2h1bmtfaWRzWzBdID0gR1JBUEhfQ0hVTktJRF9PSURGQU5PVVQ7CiAJY2h1bmtfaWRzWzFdID0gR1JBUEhfQ0hVTktJRF9PSURMT09LVVA7CiAJY2h1bmtfaWRzWzJdID0gR1JBUEhfQ0hVTktJRF9EQVRBOwotCWlmIChudW1fZXh0cmFfZWRnZXMpCi0JCWNodW5rX2lkc1szXSA9IEdSQVBIX0NIVU5LSURfTEFSR0VFREdFUzsKLQllbHNlCi0JCWNodW5rX2lkc1szXSA9IDA7Ci0JY2h1bmtfaWRzWzRdID0gMDsKKwlpZiAoY3R4LT5udW1fZXh0cmFfZWRnZXMpIHsKKwkJY2h1bmtfaWRzW251bV9jaHVua3NdID0gR1JBUEhfQ0hVTktJRF9FWFRSQUVER0VTOworCQludW1fY2h1bmtzKys7CisJfQorCWlmIChjdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyID4gMSkgeworCQljaHVua19pZHNbbnVtX2NodW5rc10gPSBHUkFQSF9DSFVOS0lEX0JBU0U7CisJCW51bV9jaHVua3MrKzsKKwl9CisKKwljaHVua19pZHNbbnVtX2NodW5rc10gPSAwOwogCiAJY2h1bmtfb2Zmc2V0c1swXSA9IDggKyAobnVtX2NodW5rcyArIDEpICogR1JBUEhfQ0hVTktMT09LVVBfV0lEVEg7CiAJY2h1bmtfb2Zmc2V0c1sxXSA9IGNodW5rX29mZnNldHNbMF0gKyBHUkFQSF9GQU5PVVRfU0laRTsKLQljaHVua19vZmZzZXRzWzJdID0gY2h1bmtfb2Zmc2V0c1sxXSArIEdSQVBIX09JRF9MRU4gKiBjb21taXRzLm5yOwotCWNodW5rX29mZnNldHNbM10gPSBjaHVua19vZmZzZXRzWzJdICsgKEdSQVBIX09JRF9MRU4gKyAxNikgKiBjb21taXRzLm5yOwotCWNodW5rX29mZnNldHNbNF0gPSBjaHVua19vZmZzZXRzWzNdICsgNCAqIG51bV9leHRyYV9lZGdlczsKKwljaHVua19vZmZzZXRzWzJdID0gY2h1bmtfb2Zmc2V0c1sxXSArIGhhc2hzeiAqIGN0eC0+Y29tbWl0cy5ucjsKKwljaHVua19vZmZzZXRzWzNdID0gY2h1bmtfb2Zmc2V0c1syXSArIChoYXNoc3ogKyAxNikgKiBjdHgtPmNvbW1pdHMubnI7CisKKwludW1fY2h1bmtzID0gMzsKKwlpZiAoY3R4LT5udW1fZXh0cmFfZWRnZXMpIHsKKwkJY2h1bmtfb2Zmc2V0c1tudW1fY2h1bmtzICsgMV0gPSBjaHVua19vZmZzZXRzW251bV9jaHVua3NdICsKKwkJCQkJCTQgKiBjdHgtPm51bV9leHRyYV9lZGdlczsKKwkJbnVtX2NodW5rcysrOworCX0KKwlpZiAoY3R4LT5udW1fY29tbWl0X2dyYXBoc19hZnRlciA+IDEpIHsKKwkJY2h1bmtfb2Zmc2V0c1tudW1fY2h1bmtzICsgMV0gPSBjaHVua19vZmZzZXRzW251bV9jaHVua3NdICsKKwkJCQkJCWhhc2hzeiAqIChjdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyIC0gMSk7CisJCW51bV9jaHVua3MrKzsKKwl9CisKKwloYXNod3JpdGVfYmUzMihmLCBHUkFQSF9TSUdOQVRVUkUpOworCisJaGFzaHdyaXRlX3U4KGYsIEdSQVBIX1ZFUlNJT04pOworCWhhc2h3cml0ZV91OChmLCBvaWRfdmVyc2lvbigpKTsKKwloYXNod3JpdGVfdTgoZiwgbnVtX2NodW5rcyk7CisJaGFzaHdyaXRlX3U4KGYsIGN0eC0+bnVtX2NvbW1pdF9ncmFwaHNfYWZ0ZXIgLSAxKTsKIAogCWZvciAoaSA9IDA7IGkgPD0gbnVtX2NodW5rczsgaSsrKSB7CiAJCXVpbnQzMl90IGNodW5rX3dyaXRlWzNdOwpAQCAtOTM3LDE4ICsxNDQwLDQ2NCBAQAogCQloYXNod3JpdGUoZiwgY2h1bmtfd3JpdGUsIDEyKTsKIAl9CiAKLQl3cml0ZV9ncmFwaF9jaHVua19mYW5vdXQoZiwgY29tbWl0cy5saXN0LCBjb21taXRzLm5yKTsKLQl3cml0ZV9ncmFwaF9jaHVua19vaWRzKGYsIEdSQVBIX09JRF9MRU4sIGNvbW1pdHMubGlzdCwgY29tbWl0cy5ucik7Ci0Jd3JpdGVfZ3JhcGhfY2h1bmtfZGF0YShmLCBHUkFQSF9PSURfTEVOLCBjb21taXRzLmxpc3QsIGNvbW1pdHMubnIpOwotCXdyaXRlX2dyYXBoX2NodW5rX2xhcmdlX2VkZ2VzKGYsIGNvbW1pdHMubGlzdCwgY29tbWl0cy5ucik7CisJaWYgKGN0eC0+cmVwb3J0X3Byb2dyZXNzKSB7CisJCXN0cmJ1Zl9hZGRmKCZwcm9ncmVzc190aXRsZSwKKwkJCSAgICBRXygiV3JpdGluZyBvdXQgY29tbWl0IGdyYXBoIGluICVkIHBhc3MiLAorCQkJICAgICAgICJXcml0aW5nIG91dCBjb21taXQgZ3JhcGggaW4gJWQgcGFzc2VzIiwKKwkJCSAgICAgICBudW1fY2h1bmtzKSwKKwkJCSAgICBudW1fY2h1bmtzKTsKKwkJY3R4LT5wcm9ncmVzcyA9IHN0YXJ0X2RlbGF5ZWRfcHJvZ3Jlc3MoCisJCQlwcm9ncmVzc190aXRsZS5idWYsCisJCQludW1fY2h1bmtzICogY3R4LT5jb21taXRzLm5yKTsKKwl9CisJd3JpdGVfZ3JhcGhfY2h1bmtfZmFub3V0KGYsIGN0eCk7CisJd3JpdGVfZ3JhcGhfY2h1bmtfb2lkcyhmLCBoYXNoc3osIGN0eCk7CisJd3JpdGVfZ3JhcGhfY2h1bmtfZGF0YShmLCBoYXNoc3osIGN0eCk7CisJaWYgKGN0eC0+bnVtX2V4dHJhX2VkZ2VzKQorCQl3cml0ZV9ncmFwaF9jaHVua19leHRyYV9lZGdlcyhmLCBjdHgpOworCWlmIChjdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyID4gMSAmJgorCSAgICB3cml0ZV9ncmFwaF9jaHVua19iYXNlKGYsIGN0eCkpIHsKKwkJcmV0dXJuIC0xOworCX0KKwlzdG9wX3Byb2dyZXNzKCZjdHgtPnByb2dyZXNzKTsKKwlzdHJidWZfcmVsZWFzZSgmcHJvZ3Jlc3NfdGl0bGUpOwogCi0JY2xvc2VfY29tbWl0X2dyYXBoKHRoZV9yZXBvc2l0b3J5KTsKLQlmaW5hbGl6ZV9oYXNoZmlsZShmLCBOVUxMLCBDU1VNX0hBU0hfSU5fU1RSRUFNIHwgQ1NVTV9GU1lOQyk7CisJaWYgKGN0eC0+c3BsaXQgJiYgY3R4LT5iYXNlX2dyYXBoX25hbWUgJiYgY3R4LT5udW1fY29tbWl0X2dyYXBoc19hZnRlciA+IDEpIHsKKwkJY2hhciAqbmV3X2Jhc2VfaGFzaCA9IHhzdHJkdXAob2lkX3RvX2hleCgmY3R4LT5uZXdfYmFzZV9ncmFwaC0+b2lkKSk7CisJCWNoYXIgKm5ld19iYXNlX25hbWUgPSBnZXRfc3BsaXRfZ3JhcGhfZmlsZW5hbWUoY3R4LT5uZXdfYmFzZV9ncmFwaC0+b2RiLCBuZXdfYmFzZV9oYXNoKTsKKworCQlmcmVlKGN0eC0+Y29tbWl0X2dyYXBoX2ZpbGVuYW1lc19hZnRlcltjdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyIC0gMl0pOworCQlmcmVlKGN0eC0+Y29tbWl0X2dyYXBoX2hhc2hfYWZ0ZXJbY3R4LT5udW1fY29tbWl0X2dyYXBoc19hZnRlciAtIDJdKTsKKwkJY3R4LT5jb21taXRfZ3JhcGhfZmlsZW5hbWVzX2FmdGVyW2N0eC0+bnVtX2NvbW1pdF9ncmFwaHNfYWZ0ZXIgLSAyXSA9IG5ld19iYXNlX25hbWU7CisJCWN0eC0+Y29tbWl0X2dyYXBoX2hhc2hfYWZ0ZXJbY3R4LT5udW1fY29tbWl0X2dyYXBoc19hZnRlciAtIDJdID0gbmV3X2Jhc2VfaGFzaDsKKwl9CisKKwljbG9zZV9jb21taXRfZ3JhcGgoY3R4LT5yLT5vYmplY3RzKTsKKwlmaW5hbGl6ZV9oYXNoZmlsZShmLCBmaWxlX2hhc2guaGFzaCwgQ1NVTV9IQVNIX0lOX1NUUkVBTSB8IENTVU1fRlNZTkMpOworCisJaWYgKGN0eC0+c3BsaXQpIHsKKwkJRklMRSAqY2hhaW5mID0gZmRvcGVuX2xvY2tfZmlsZSgmbGssICJ3Iik7CisJCWNoYXIgKmZpbmFsX2dyYXBoX25hbWU7CisJCWludCByZXN1bHQ7CisKKwkJY2xvc2UoZmQpOworCisJCWlmICghY2hhaW5mKSB7CisJCQllcnJvcihfKCJ1bmFibGUgdG8gb3BlbiBjb21taXQtZ3JhcGggY2hhaW4gZmlsZSIpKTsKKwkJCXJldHVybiAtMTsKKwkJfQorCisJCWlmIChjdHgtPmJhc2VfZ3JhcGhfbmFtZSkgeworCQkJY29uc3QgY2hhciAqZGVzdCA9IGN0eC0+Y29tbWl0X2dyYXBoX2ZpbGVuYW1lc19hZnRlclsKKwkJCQkJCWN0eC0+bnVtX2NvbW1pdF9ncmFwaHNfYWZ0ZXIgLSAyXTsKKworCQkJaWYgKHN0cmNtcChjdHgtPmJhc2VfZ3JhcGhfbmFtZSwgZGVzdCkpIHsKKwkJCQlyZXN1bHQgPSByZW5hbWUoY3R4LT5iYXNlX2dyYXBoX25hbWUsIGRlc3QpOworCisJCQkJaWYgKHJlc3VsdCkgeworCQkJCQllcnJvcihfKCJmYWlsZWQgdG8gcmVuYW1lIGJhc2UgY29tbWl0LWdyYXBoIGZpbGUiKSk7CisJCQkJCXJldHVybiAtMTsKKwkJCQl9CisJCQl9CisJCX0gZWxzZSB7CisJCQljaGFyICpncmFwaF9uYW1lID0gZ2V0X2NvbW1pdF9ncmFwaF9maWxlbmFtZShjdHgtPm9kYik7CisJCQl1bmxpbmsoZ3JhcGhfbmFtZSk7CisJCX0KKworCQljdHgtPmNvbW1pdF9ncmFwaF9oYXNoX2FmdGVyW2N0eC0+bnVtX2NvbW1pdF9ncmFwaHNfYWZ0ZXIgLSAxXSA9IHhzdHJkdXAob2lkX3RvX2hleCgmZmlsZV9oYXNoKSk7CisJCWZpbmFsX2dyYXBoX25hbWUgPSBnZXRfc3BsaXRfZ3JhcGhfZmlsZW5hbWUoY3R4LT5vZGIsCisJCQkJCWN0eC0+Y29tbWl0X2dyYXBoX2hhc2hfYWZ0ZXJbY3R4LT5udW1fY29tbWl0X2dyYXBoc19hZnRlciAtIDFdKTsKKwkJY3R4LT5jb21taXRfZ3JhcGhfZmlsZW5hbWVzX2FmdGVyW2N0eC0+bnVtX2NvbW1pdF9ncmFwaHNfYWZ0ZXIgLSAxXSA9IGZpbmFsX2dyYXBoX25hbWU7CisKKwkJcmVzdWx0ID0gcmVuYW1lKGN0eC0+Z3JhcGhfbmFtZSwgZmluYWxfZ3JhcGhfbmFtZSk7CisKKwkJZm9yIChpID0gMDsgaSA8IGN0eC0+bnVtX2NvbW1pdF9ncmFwaHNfYWZ0ZXI7IGkrKykKKwkJCWZwcmludGYobGsudGVtcGZpbGUtPmZwLCAiJXNcbiIsIGN0eC0+Y29tbWl0X2dyYXBoX2hhc2hfYWZ0ZXJbaV0pOworCisJCWlmIChyZXN1bHQpIHsKKwkJCWVycm9yKF8oImZhaWxlZCB0byByZW5hbWUgdGVtcG9yYXJ5IGNvbW1pdC1ncmFwaCBmaWxlIikpOworCQkJcmV0dXJuIC0xOworCQl9CisJfQorCiAJY29tbWl0X2xvY2tfZmlsZSgmbGspOwogCi0JZnJlZShncmFwaF9uYW1lKTsKLQlmcmVlKGNvbW1pdHMubGlzdCk7Ci0JZnJlZShvaWRzLmxpc3QpOworCXJldHVybiAwOworfQorCitzdGF0aWMgdm9pZCBzcGxpdF9ncmFwaF9tZXJnZV9zdHJhdGVneShzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQgKmN0eCkKK3sKKwlzdHJ1Y3QgY29tbWl0X2dyYXBoICpnOworCXVpbnQzMl90IG51bV9jb21taXRzOworCXVpbnQzMl90IGk7CisKKwlpbnQgbWF4X2NvbW1pdHMgPSAwOworCWludCBzaXplX211bHQgPSAyOworCisJaWYgKGN0eC0+c3BsaXRfb3B0cykgeworCQltYXhfY29tbWl0cyA9IGN0eC0+c3BsaXRfb3B0cy0+bWF4X2NvbW1pdHM7CisKKwkJaWYgKGN0eC0+c3BsaXRfb3B0cy0+c2l6ZV9tdWx0aXBsZSkKKwkJCXNpemVfbXVsdCA9IGN0eC0+c3BsaXRfb3B0cy0+c2l6ZV9tdWx0aXBsZTsKKwl9CisKKwlnID0gY3R4LT5yLT5vYmplY3RzLT5jb21taXRfZ3JhcGg7CisJbnVtX2NvbW1pdHMgPSBjdHgtPmNvbW1pdHMubnI7CisJY3R4LT5udW1fY29tbWl0X2dyYXBoc19hZnRlciA9IGN0eC0+bnVtX2NvbW1pdF9ncmFwaHNfYmVmb3JlICsgMTsKKworCXdoaWxlIChnICYmIChnLT5udW1fY29tbWl0cyA8PSBzaXplX211bHQgKiBudW1fY29tbWl0cyB8fAorCQkgICAgKG1heF9jb21taXRzICYmIG51bV9jb21taXRzID4gbWF4X2NvbW1pdHMpKSkgeworCQlpZiAoZy0+b2RiICE9IGN0eC0+b2RiKQorCQkJYnJlYWs7CisKKwkJbnVtX2NvbW1pdHMgKz0gZy0+bnVtX2NvbW1pdHM7CisJCWcgPSBnLT5iYXNlX2dyYXBoOworCisJCWN0eC0+bnVtX2NvbW1pdF9ncmFwaHNfYWZ0ZXItLTsKKwl9CisKKwljdHgtPm5ld19iYXNlX2dyYXBoID0gZzsKKworCWlmIChjdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyID09IDIpIHsKKwkJY2hhciAqb2xkX2dyYXBoX25hbWUgPSBnZXRfY29tbWl0X2dyYXBoX2ZpbGVuYW1lKGctPm9kYik7CisKKwkJaWYgKCFzdHJjbXAoZy0+ZmlsZW5hbWUsIG9sZF9ncmFwaF9uYW1lKSAmJgorCQkgICAgZy0+b2RiICE9IGN0eC0+b2RiKSB7CisJCQljdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyID0gMTsKKwkJCWN0eC0+bmV3X2Jhc2VfZ3JhcGggPSBOVUxMOworCQl9CisKKwkJZnJlZShvbGRfZ3JhcGhfbmFtZSk7CisJfQorCisJQUxMT0NfQVJSQVkoY3R4LT5jb21taXRfZ3JhcGhfZmlsZW5hbWVzX2FmdGVyLCBjdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyKTsKKwlBTExPQ19BUlJBWShjdHgtPmNvbW1pdF9ncmFwaF9oYXNoX2FmdGVyLCBjdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyKTsKKworCWZvciAoaSA9IDA7IGkgPCBjdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyICYmCisJCSAgICBpIDwgY3R4LT5udW1fY29tbWl0X2dyYXBoc19iZWZvcmU7IGkrKykKKwkJY3R4LT5jb21taXRfZ3JhcGhfZmlsZW5hbWVzX2FmdGVyW2ldID0geHN0cmR1cChjdHgtPmNvbW1pdF9ncmFwaF9maWxlbmFtZXNfYmVmb3JlW2ldKTsKKworCWkgPSBjdHgtPm51bV9jb21taXRfZ3JhcGhzX2JlZm9yZSAtIDE7CisJZyA9IGN0eC0+ci0+b2JqZWN0cy0+Y29tbWl0X2dyYXBoOworCisJd2hpbGUgKGcpIHsKKwkJaWYgKGkgPCBjdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyKQorCQkJY3R4LT5jb21taXRfZ3JhcGhfaGFzaF9hZnRlcltpXSA9IHhzdHJkdXAob2lkX3RvX2hleCgmZy0+b2lkKSk7CisKKwkJaS0tOworCQlnID0gZy0+YmFzZV9ncmFwaDsKKwl9Cit9CisKK3N0YXRpYyB2b2lkIG1lcmdlX2NvbW1pdF9ncmFwaChzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQgKmN0eCwKKwkJCSAgICAgICBzdHJ1Y3QgY29tbWl0X2dyYXBoICpnKQoreworCXVpbnQzMl90IGk7CisJdWludDMyX3Qgb2Zmc2V0ID0gZy0+bnVtX2NvbW1pdHNfaW5fYmFzZTsKKworCUFMTE9DX0dST1coY3R4LT5jb21taXRzLmxpc3QsIGN0eC0+Y29tbWl0cy5uciArIGctPm51bV9jb21taXRzLCBjdHgtPmNvbW1pdHMuYWxsb2MpOworCisJZm9yIChpID0gMDsgaSA8IGctPm51bV9jb21taXRzOyBpKyspIHsKKwkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CisJCXN0cnVjdCBjb21taXQgKnJlc3VsdDsKKworCQlkaXNwbGF5X3Byb2dyZXNzKGN0eC0+cHJvZ3Jlc3MsIGkgKyAxKTsKKworCQlsb2FkX29pZF9mcm9tX2dyYXBoKGcsIGkgKyBvZmZzZXQsICZvaWQpOworCisJCS8qIG9ubHkgYWRkIGNvbW1pdHMgaWYgdGhleSBzdGlsbCBleGlzdCBpbiB0aGUgcmVwbyAqLworCQlyZXN1bHQgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZV9nZW50bHkoY3R4LT5yLCAmb2lkLCAxKTsKKworCQlpZiAocmVzdWx0KSB7CisJCQljdHgtPmNvbW1pdHMubGlzdFtjdHgtPmNvbW1pdHMubnJdID0gcmVzdWx0OworCQkJY3R4LT5jb21taXRzLm5yKys7CisJCX0KKwl9Cit9CisKK3N0YXRpYyBpbnQgY29tbWl0X2NvbXBhcmUoY29uc3Qgdm9pZCAqX2EsIGNvbnN0IHZvaWQgKl9iKQoreworCWNvbnN0IHN0cnVjdCBjb21taXQgKmEgPSAqKGNvbnN0IHN0cnVjdCBjb21taXQgKiopX2E7CisJY29uc3Qgc3RydWN0IGNvbW1pdCAqYiA9ICooY29uc3Qgc3RydWN0IGNvbW1pdCAqKilfYjsKKwlyZXR1cm4gb2lkY21wKCZhLT5vYmplY3Qub2lkLCAmYi0+b2JqZWN0Lm9pZCk7Cit9CisKK3N0YXRpYyB2b2lkIHNvcnRfYW5kX3NjYW5fbWVyZ2VkX2NvbW1pdHMoc3RydWN0IHdyaXRlX2NvbW1pdF9ncmFwaF9jb250ZXh0ICpjdHgpCit7CisJdWludDMyX3QgaTsKKworCWlmIChjdHgtPnJlcG9ydF9wcm9ncmVzcykKKwkJY3R4LT5wcm9ncmVzcyA9IHN0YXJ0X2RlbGF5ZWRfcHJvZ3Jlc3MoCisJCQkJCV8oIlNjYW5uaW5nIG1lcmdlZCBjb21taXRzIiksCisJCQkJCWN0eC0+Y29tbWl0cy5ucik7CisKKwlRU09SVChjdHgtPmNvbW1pdHMubGlzdCwgY3R4LT5jb21taXRzLm5yLCBjb21taXRfY29tcGFyZSk7CisKKwljdHgtPm51bV9leHRyYV9lZGdlcyA9IDA7CisJZm9yIChpID0gMDsgaSA8IGN0eC0+Y29tbWl0cy5ucjsgaSsrKSB7CisJCWRpc3BsYXlfcHJvZ3Jlc3MoY3R4LT5wcm9ncmVzcywgaSk7CisKKwkJaWYgKGkgJiYgb2lkZXEoJmN0eC0+Y29tbWl0cy5saXN0W2kgLSAxXS0+b2JqZWN0Lm9pZCwKKwkJCSAgJmN0eC0+Y29tbWl0cy5saXN0W2ldLT5vYmplY3Qub2lkKSkgeworCQkJZGllKF8oInVuZXhwZWN0ZWQgZHVwbGljYXRlIGNvbW1pdCBpZCAlcyIpLAorCQkJICAgIG9pZF90b19oZXgoJmN0eC0+Y29tbWl0cy5saXN0W2ldLT5vYmplY3Qub2lkKSk7CisJCX0gZWxzZSB7CisJCQl1bnNpZ25lZCBpbnQgbnVtX3BhcmVudHM7CisKKwkJCW51bV9wYXJlbnRzID0gY29tbWl0X2xpc3RfY291bnQoY3R4LT5jb21taXRzLmxpc3RbaV0tPnBhcmVudHMpOworCQkJaWYgKG51bV9wYXJlbnRzID4gMikKKwkJCQljdHgtPm51bV9leHRyYV9lZGdlcyArPSBudW1fcGFyZW50cyAtIDE7CisJCX0KKwl9CisKKwlzdG9wX3Byb2dyZXNzKCZjdHgtPnByb2dyZXNzKTsKK30KKworc3RhdGljIHZvaWQgbWVyZ2VfY29tbWl0X2dyYXBocyhzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQgKmN0eCkKK3sKKwlzdHJ1Y3QgY29tbWl0X2dyYXBoICpnID0gY3R4LT5yLT5vYmplY3RzLT5jb21taXRfZ3JhcGg7CisJdWludDMyX3QgY3VycmVudF9ncmFwaF9udW1iZXIgPSBjdHgtPm51bV9jb21taXRfZ3JhcGhzX2JlZm9yZTsKKworCXdoaWxlIChnICYmIGN1cnJlbnRfZ3JhcGhfbnVtYmVyID49IGN0eC0+bnVtX2NvbW1pdF9ncmFwaHNfYWZ0ZXIpIHsKKwkJY3VycmVudF9ncmFwaF9udW1iZXItLTsKKworCQlpZiAoY3R4LT5yZXBvcnRfcHJvZ3Jlc3MpCisJCQljdHgtPnByb2dyZXNzID0gc3RhcnRfZGVsYXllZF9wcm9ncmVzcyhfKCJNZXJnaW5nIGNvbW1pdC1ncmFwaCIpLCAwKTsKKworCQltZXJnZV9jb21taXRfZ3JhcGgoY3R4LCBnKTsKKwkJc3RvcF9wcm9ncmVzcygmY3R4LT5wcm9ncmVzcyk7CisKKwkJZyA9IGctPmJhc2VfZ3JhcGg7CisJfQorCisJaWYgKGcpIHsKKwkJY3R4LT5uZXdfYmFzZV9ncmFwaCA9IGc7CisJCWN0eC0+bmV3X251bV9jb21taXRzX2luX2Jhc2UgPSBnLT5udW1fY29tbWl0cyArIGctPm51bV9jb21taXRzX2luX2Jhc2U7CisJfQorCisJaWYgKGN0eC0+bmV3X2Jhc2VfZ3JhcGgpCisJCWN0eC0+YmFzZV9ncmFwaF9uYW1lID0geHN0cmR1cChjdHgtPm5ld19iYXNlX2dyYXBoLT5maWxlbmFtZSk7CisKKwlzb3J0X2FuZF9zY2FuX21lcmdlZF9jb21taXRzKGN0eCk7Cit9CisKK3N0YXRpYyB2b2lkIG1hcmtfY29tbWl0X2dyYXBocyhzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQgKmN0eCkKK3sKKwl1aW50MzJfdCBpOworCXRpbWVfdCBub3cgPSB0aW1lKE5VTEwpOworCisJZm9yIChpID0gY3R4LT5udW1fY29tbWl0X2dyYXBoc19hZnRlciAtIDE7IGkgPCBjdHgtPm51bV9jb21taXRfZ3JhcGhzX2JlZm9yZTsgaSsrKSB7CisJCXN0cnVjdCBzdGF0IHN0OworCQlzdHJ1Y3QgdXRpbWJ1ZiB1cGRhdGVkX3RpbWU7CisKKwkJc3RhdChjdHgtPmNvbW1pdF9ncmFwaF9maWxlbmFtZXNfYmVmb3JlW2ldLCAmc3QpOworCisJCXVwZGF0ZWRfdGltZS5hY3RpbWUgPSBzdC5zdF9hdGltZTsKKwkJdXBkYXRlZF90aW1lLm1vZHRpbWUgPSBub3c7CisJCXV0aW1lKGN0eC0+Y29tbWl0X2dyYXBoX2ZpbGVuYW1lc19iZWZvcmVbaV0sICZ1cGRhdGVkX3RpbWUpOworCX0KK30KKworc3RhdGljIHZvaWQgZXhwaXJlX2NvbW1pdF9ncmFwaHMoc3RydWN0IHdyaXRlX2NvbW1pdF9ncmFwaF9jb250ZXh0ICpjdHgpCit7CisJc3RydWN0IHN0cmJ1ZiBwYXRoID0gU1RSQlVGX0lOSVQ7CisJRElSICpkaXI7CisJc3RydWN0IGRpcmVudCAqZGU7CisJc2l6ZV90IGRpcm5hbWVsZW47CisJdGltZXN0YW1wX3QgZXhwaXJlX3RpbWUgPSB0aW1lKE5VTEwpOworCisJaWYgKGN0eC0+c3BsaXRfb3B0cyAmJiBjdHgtPnNwbGl0X29wdHMtPmV4cGlyZV90aW1lKQorCQlleHBpcmVfdGltZSAtPSBjdHgtPnNwbGl0X29wdHMtPmV4cGlyZV90aW1lOworCWlmICghY3R4LT5zcGxpdCkgeworCQljaGFyICpjaGFpbl9maWxlX25hbWUgPSBnZXRfY2hhaW5fZmlsZW5hbWUoY3R4LT5vZGIpOworCQl1bmxpbmsoY2hhaW5fZmlsZV9uYW1lKTsKKwkJZnJlZShjaGFpbl9maWxlX25hbWUpOworCQljdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyID0gMDsKKwl9CisKKwlzdHJidWZfYWRkc3RyKCZwYXRoLCBjdHgtPm9kYi0+cGF0aCk7CisJc3RyYnVmX2FkZHN0cigmcGF0aCwgIi9pbmZvL2NvbW1pdC1ncmFwaHMiKTsKKwlkaXIgPSBvcGVuZGlyKHBhdGguYnVmKTsKKworCWlmICghZGlyKQorCQlnb3RvIG91dDsKKworCXN0cmJ1Zl9hZGRjaCgmcGF0aCwgJy8nKTsKKwlkaXJuYW1lbGVuID0gcGF0aC5sZW47CisJd2hpbGUgKChkZSA9IHJlYWRkaXIoZGlyKSkgIT0gTlVMTCkgeworCQlzdHJ1Y3Qgc3RhdCBzdDsKKwkJdWludDMyX3QgaSwgZm91bmQgPSAwOworCisJCXN0cmJ1Zl9zZXRsZW4oJnBhdGgsIGRpcm5hbWVsZW4pOworCQlzdHJidWZfYWRkc3RyKCZwYXRoLCBkZS0+ZF9uYW1lKTsKKworCQlzdGF0KHBhdGguYnVmLCAmc3QpOworCisJCWlmIChzdC5zdF9tdGltZSA+IGV4cGlyZV90aW1lKQorCQkJY29udGludWU7CisJCWlmIChwYXRoLmxlbiA8IDYgfHwgc3RyY21wKHBhdGguYnVmICsgcGF0aC5sZW4gLSA2LCAiLmdyYXBoIikpCisJCQljb250aW51ZTsKKworCQlmb3IgKGkgPSAwOyBpIDwgY3R4LT5udW1fY29tbWl0X2dyYXBoc19hZnRlcjsgaSsrKSB7CisJCQlpZiAoIXN0cmNtcChjdHgtPmNvbW1pdF9ncmFwaF9maWxlbmFtZXNfYWZ0ZXJbaV0sCisJCQkJICAgIHBhdGguYnVmKSkgeworCQkJCWZvdW5kID0gMTsKKwkJCQlicmVhazsKKwkJCX0KKwkJfQorCisJCWlmICghZm91bmQpCisJCQl1bmxpbmsocGF0aC5idWYpOworCX0KKworb3V0OgorCXN0cmJ1Zl9yZWxlYXNlKCZwYXRoKTsKK30KKworaW50IHdyaXRlX2NvbW1pdF9ncmFwaChzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiLAorCQkgICAgICAgc3RydWN0IHN0cmluZ19saXN0ICpwYWNrX2luZGV4ZXMsCisJCSAgICAgICBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmNvbW1pdF9oZXgsCisJCSAgICAgICBlbnVtIGNvbW1pdF9ncmFwaF93cml0ZV9mbGFncyBmbGFncywKKwkJICAgICAgIGNvbnN0IHN0cnVjdCBzcGxpdF9jb21taXRfZ3JhcGhfb3B0cyAqc3BsaXRfb3B0cykKK3sKKwlzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQgKmN0eDsKKwl1aW50MzJfdCBpLCBjb3VudF9kaXN0aW5jdCA9IDA7CisJaW50IHJlcyA9IDA7CisKKwlpZiAoIWNvbW1pdF9ncmFwaF9jb21wYXRpYmxlKHRoZV9yZXBvc2l0b3J5KSkKKwkJcmV0dXJuIDA7CisKKwljdHggPSB4Y2FsbG9jKDEsIHNpemVvZihzdHJ1Y3Qgd3JpdGVfY29tbWl0X2dyYXBoX2NvbnRleHQpKTsKKwljdHgtPnIgPSB0aGVfcmVwb3NpdG9yeTsKKwljdHgtPm9kYiA9IG9kYjsKKwljdHgtPmFwcGVuZCA9IGZsYWdzICYgQ09NTUlUX0dSQVBIX1dSSVRFX0FQUEVORCA/IDEgOiAwOworCWN0eC0+cmVwb3J0X3Byb2dyZXNzID0gZmxhZ3MgJiBDT01NSVRfR1JBUEhfV1JJVEVfUFJPR1JFU1MgPyAxIDogMDsKKwljdHgtPnNwbGl0ID0gZmxhZ3MgJiBDT01NSVRfR1JBUEhfV1JJVEVfU1BMSVQgPyAxIDogMDsKKwljdHgtPmNoZWNrX29pZHMgPSBmbGFncyAmIENPTU1JVF9HUkFQSF9XUklURV9DSEVDS19PSURTID8gMSA6IDA7CisJY3R4LT5zcGxpdF9vcHRzID0gc3BsaXRfb3B0czsKKworCWlmIChjdHgtPnNwbGl0KSB7CisJCXN0cnVjdCBjb21taXRfZ3JhcGggKmc7CisJCXByZXBhcmVfY29tbWl0X2dyYXBoKGN0eC0+cik7CisKKwkJZyA9IGN0eC0+ci0+b2JqZWN0cy0+Y29tbWl0X2dyYXBoOworCisJCXdoaWxlIChnKSB7CisJCQljdHgtPm51bV9jb21taXRfZ3JhcGhzX2JlZm9yZSsrOworCQkJZyA9IGctPmJhc2VfZ3JhcGg7CisJCX0KKworCQlpZiAoY3R4LT5udW1fY29tbWl0X2dyYXBoc19iZWZvcmUpIHsKKwkJCUFMTE9DX0FSUkFZKGN0eC0+Y29tbWl0X2dyYXBoX2ZpbGVuYW1lc19iZWZvcmUsIGN0eC0+bnVtX2NvbW1pdF9ncmFwaHNfYmVmb3JlKTsKKwkJCWkgPSBjdHgtPm51bV9jb21taXRfZ3JhcGhzX2JlZm9yZTsKKwkJCWcgPSBjdHgtPnItPm9iamVjdHMtPmNvbW1pdF9ncmFwaDsKKworCQkJd2hpbGUgKGcpIHsKKwkJCQljdHgtPmNvbW1pdF9ncmFwaF9maWxlbmFtZXNfYmVmb3JlWy0taV0gPSB4c3RyZHVwKGctPmZpbGVuYW1lKTsKKwkJCQlnID0gZy0+YmFzZV9ncmFwaDsKKwkJCX0KKwkJfQorCX0KKworCWN0eC0+YXBwcm94X25yX29iamVjdHMgPSBhcHByb3hpbWF0ZV9vYmplY3RfY291bnQoKTsKKwljdHgtPm9pZHMuYWxsb2MgPSBjdHgtPmFwcHJveF9ucl9vYmplY3RzIC8gMzI7CisKKwlpZiAoY3R4LT5zcGxpdCAmJiBzcGxpdF9vcHRzICYmIGN0eC0+b2lkcy5hbGxvYyA+IHNwbGl0X29wdHMtPm1heF9jb21taXRzKQorCQljdHgtPm9pZHMuYWxsb2MgPSBzcGxpdF9vcHRzLT5tYXhfY29tbWl0czsKKworCWlmIChjdHgtPmFwcGVuZCkgeworCQlwcmVwYXJlX2NvbW1pdF9ncmFwaF9vbmUoY3R4LT5yLCBjdHgtPm9kYik7CisJCWlmIChjdHgtPnItPm9iamVjdHMtPmNvbW1pdF9ncmFwaCkKKwkJCWN0eC0+b2lkcy5hbGxvYyArPSBjdHgtPnItPm9iamVjdHMtPmNvbW1pdF9ncmFwaC0+bnVtX2NvbW1pdHM7CisJfQorCisJaWYgKGN0eC0+b2lkcy5hbGxvYyA8IDEwMjQpCisJCWN0eC0+b2lkcy5hbGxvYyA9IDEwMjQ7CisJQUxMT0NfQVJSQVkoY3R4LT5vaWRzLmxpc3QsIGN0eC0+b2lkcy5hbGxvYyk7CisKKwlpZiAoY3R4LT5hcHBlbmQgJiYgY3R4LT5yLT5vYmplY3RzLT5jb21taXRfZ3JhcGgpIHsKKwkJc3RydWN0IGNvbW1pdF9ncmFwaCAqZyA9IGN0eC0+ci0+b2JqZWN0cy0+Y29tbWl0X2dyYXBoOworCQlmb3IgKGkgPSAwOyBpIDwgZy0+bnVtX2NvbW1pdHM7IGkrKykgeworCQkJY29uc3QgdW5zaWduZWQgY2hhciAqaGFzaCA9IGctPmNodW5rX29pZF9sb29rdXAgKyBnLT5oYXNoX2xlbiAqIGk7CisJCQloYXNoY3B5KGN0eC0+b2lkcy5saXN0W2N0eC0+b2lkcy5ucisrXS5oYXNoLCBoYXNoKTsKKwkJfQorCX0KKworCWlmIChwYWNrX2luZGV4ZXMpIHsKKwkJaWYgKChyZXMgPSBmaWxsX29pZHNfZnJvbV9wYWNrcyhjdHgsIHBhY2tfaW5kZXhlcykpKQorCQkJZ290byBjbGVhbnVwOworCX0KKworCWlmIChjb21taXRfaGV4KSB7CisJCWlmICgocmVzID0gZmlsbF9vaWRzX2Zyb21fY29tbWl0X2hleChjdHgsIGNvbW1pdF9oZXgpKSkKKwkJCWdvdG8gY2xlYW51cDsKKwl9CisKKwlpZiAoIXBhY2tfaW5kZXhlcyAmJiAhY29tbWl0X2hleCkKKwkJZmlsbF9vaWRzX2Zyb21fYWxsX3BhY2tzKGN0eCk7CisKKwljbG9zZV9yZWFjaGFibGUoY3R4KTsKKworCWNvdW50X2Rpc3RpbmN0ID0gY291bnRfZGlzdGluY3RfY29tbWl0cyhjdHgpOworCisJaWYgKGNvdW50X2Rpc3RpbmN0ID49IEdSQVBIX0VER0VfTEFTVF9NQVNLKSB7CisJCWVycm9yKF8oInRoZSBjb21taXQgZ3JhcGggZm9ybWF0IGNhbm5vdCB3cml0ZSAlZCBjb21taXRzIiksIGNvdW50X2Rpc3RpbmN0KTsKKwkJcmVzID0gLTE7CisJCWdvdG8gY2xlYW51cDsKKwl9CisKKwljdHgtPmNvbW1pdHMuYWxsb2MgPSBjb3VudF9kaXN0aW5jdDsKKwlBTExPQ19BUlJBWShjdHgtPmNvbW1pdHMubGlzdCwgY3R4LT5jb21taXRzLmFsbG9jKTsKKworCWNvcHlfb2lkc190b19jb21taXRzKGN0eCk7CisKKwlpZiAoY3R4LT5jb21taXRzLm5yID49IEdSQVBIX0VER0VfTEFTVF9NQVNLKSB7CisJCWVycm9yKF8oInRvbyBtYW55IGNvbW1pdHMgdG8gd3JpdGUgZ3JhcGgiKSk7CisJCXJlcyA9IC0xOworCQlnb3RvIGNsZWFudXA7CisJfQorCisJaWYgKCFjdHgtPmNvbW1pdHMubnIpCisJCWdvdG8gY2xlYW51cDsKKworCWlmIChjdHgtPnNwbGl0KSB7CisJCXNwbGl0X2dyYXBoX21lcmdlX3N0cmF0ZWd5KGN0eCk7CisKKwkJbWVyZ2VfY29tbWl0X2dyYXBocyhjdHgpOworCX0gZWxzZQorCQljdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyID0gMTsKKworCWNvbXB1dGVfZ2VuZXJhdGlvbl9udW1iZXJzKGN0eCk7CisKKwlyZXMgPSB3cml0ZV9jb21taXRfZ3JhcGhfZmlsZShjdHgpOworCisJaWYgKGN0eC0+c3BsaXQpCisJCW1hcmtfY29tbWl0X2dyYXBocyhjdHgpOworCisJZXhwaXJlX2NvbW1pdF9ncmFwaHMoY3R4KTsKKworY2xlYW51cDoKKwlmcmVlKGN0eC0+Z3JhcGhfbmFtZSk7CisJZnJlZShjdHgtPmNvbW1pdHMubGlzdCk7CisJZnJlZShjdHgtPm9pZHMubGlzdCk7CisKKwlpZiAoY3R4LT5jb21taXRfZ3JhcGhfZmlsZW5hbWVzX2FmdGVyKSB7CisJCWZvciAoaSA9IDA7IGkgPCBjdHgtPm51bV9jb21taXRfZ3JhcGhzX2FmdGVyOyBpKyspIHsKKwkJCWZyZWUoY3R4LT5jb21taXRfZ3JhcGhfZmlsZW5hbWVzX2FmdGVyW2ldKTsKKwkJCWZyZWUoY3R4LT5jb21taXRfZ3JhcGhfaGFzaF9hZnRlcltpXSk7CisJCX0KKworCQlmb3IgKGkgPSAwOyBpIDwgY3R4LT5udW1fY29tbWl0X2dyYXBoc19iZWZvcmU7IGkrKykKKwkJCWZyZWUoY3R4LT5jb21taXRfZ3JhcGhfZmlsZW5hbWVzX2JlZm9yZVtpXSk7CisKKwkJZnJlZShjdHgtPmNvbW1pdF9ncmFwaF9maWxlbmFtZXNfYWZ0ZXIpOworCQlmcmVlKGN0eC0+Y29tbWl0X2dyYXBoX2ZpbGVuYW1lc19iZWZvcmUpOworCQlmcmVlKGN0eC0+Y29tbWl0X2dyYXBoX2hhc2hfYWZ0ZXIpOworCX0KKworCWZyZWUoY3R4KTsKKworCXJldHVybiByZXM7CiB9CiAKICNkZWZpbmUgVkVSSUZZX0NPTU1JVF9HUkFQSF9FUlJPUl9IQVNIIDIKQEAgLTk2OCw3ICsxOTE3LDcgQEAKICNkZWZpbmUgR0VORVJBVElPTl9aRVJPX0VYSVNUUyAxCiAjZGVmaW5lIEdFTkVSQVRJT05fTlVNQkVSX0VYSVNUUyAyCiAKLWludCB2ZXJpZnlfY29tbWl0X2dyYXBoKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgY29tbWl0X2dyYXBoICpnKQoraW50IHZlcmlmeV9jb21taXRfZ3JhcGgoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBjb21taXRfZ3JhcGggKmcsIGludCBmbGFncykKIHsKIAl1aW50MzJfdCBpLCBjdXJfZmFub3V0X3BvcyA9IDA7CiAJc3RydWN0IG9iamVjdF9pZCBwcmV2X29pZCwgY3VyX29pZCwgY2hlY2tzdW07CkBAIC05NzYsMjEgKzE5MjUsMTQgQEAKIAlzdHJ1Y3QgaGFzaGZpbGUgKmY7CiAJaW50IGRldm51bGw7CiAJc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcyA9IE5VTEw7CisJaW50IGxvY2FsX2Vycm9yID0gMDsKIAogCWlmICghZykgewogCQlncmFwaF9yZXBvcnQoIm5vIGNvbW1pdC1ncmFwaCBmaWxlIGxvYWRlZCIpOwogCQlyZXR1cm4gMTsKIAl9CiAKLQl2ZXJpZnlfY29tbWl0X2dyYXBoX2Vycm9yID0gMDsKLQotCWlmICghZy0+Y2h1bmtfb2lkX2Zhbm91dCkKLQkJZ3JhcGhfcmVwb3J0KCJjb21taXQtZ3JhcGggaXMgbWlzc2luZyB0aGUgT0lEIEZhbm91dCBjaHVuayIpOwotCWlmICghZy0+Y2h1bmtfb2lkX2xvb2t1cCkKLQkJZ3JhcGhfcmVwb3J0KCJjb21taXQtZ3JhcGggaXMgbWlzc2luZyB0aGUgT0lEIExvb2t1cCBjaHVuayIpOwotCWlmICghZy0+Y2h1bmtfY29tbWl0X2RhdGEpCi0JCWdyYXBoX3JlcG9ydCgiY29tbWl0LWdyYXBoIGlzIG1pc3NpbmcgdGhlIENvbW1pdCBEYXRhIGNodW5rIik7Ci0KKwl2ZXJpZnlfY29tbWl0X2dyYXBoX2Vycm9yID0gdmVyaWZ5X2NvbW1pdF9ncmFwaF9saXRlKGcpOwogCWlmICh2ZXJpZnlfY29tbWl0X2dyYXBoX2Vycm9yKQogCQlyZXR1cm4gdmVyaWZ5X2NvbW1pdF9ncmFwaF9lcnJvcjsKIApAQCAtMTAwOSw3ICsxOTUxLDcgQEAKIAkJaGFzaGNweShjdXJfb2lkLmhhc2gsIGctPmNodW5rX29pZF9sb29rdXAgKyBnLT5oYXNoX2xlbiAqIGkpOwogCiAJCWlmIChpICYmIG9pZGNtcCgmcHJldl9vaWQsICZjdXJfb2lkKSA+PSAwKQotCQkJZ3JhcGhfcmVwb3J0KCJjb21taXQtZ3JhcGggaGFzIGluY29ycmVjdCBPSUQgb3JkZXI6ICVzIHRoZW4gJXMiLAorCQkJZ3JhcGhfcmVwb3J0KF8oImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IE9JRCBvcmRlcjogJXMgdGhlbiAlcyIpLAogCQkJCSAgICAgb2lkX3RvX2hleCgmcHJldl9vaWQpLAogCQkJCSAgICAgb2lkX3RvX2hleCgmY3VyX29pZCkpOwogCkBAIC0xMDE5LDE0ICsxOTYxLDE0IEBACiAJCQl1aW50MzJfdCBmYW5vdXRfdmFsdWUgPSBnZXRfYmUzMihnLT5jaHVua19vaWRfZmFub3V0ICsgY3VyX2Zhbm91dF9wb3MpOwogCiAJCQlpZiAoaSAhPSBmYW5vdXRfdmFsdWUpCi0JCQkJZ3JhcGhfcmVwb3J0KCJjb21taXQtZ3JhcGggaGFzIGluY29ycmVjdCBmYW5vdXQgdmFsdWU6IGZhbm91dFslZF0gPSAldSAhPSAldSIsCisJCQkJZ3JhcGhfcmVwb3J0KF8oImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IGZhbm91dCB2YWx1ZTogZmFub3V0WyVkXSA9ICV1ICE9ICV1IiksCiAJCQkJCSAgICAgY3VyX2Zhbm91dF9wb3MsIGZhbm91dF92YWx1ZSwgaSk7CiAJCQljdXJfZmFub3V0X3BvcysrOwogCQl9CiAKIAkJZ3JhcGhfY29tbWl0ID0gbG9va3VwX2NvbW1pdChyLCAmY3VyX29pZCk7Ci0JCWlmICghcGFyc2VfY29tbWl0X2luX2dyYXBoX29uZShnLCBncmFwaF9jb21taXQpKQotCQkJZ3JhcGhfcmVwb3J0KCJmYWlsZWQgdG8gcGFyc2UgJXMgZnJvbSBjb21taXQtZ3JhcGgiLAorCQlpZiAoIXBhcnNlX2NvbW1pdF9pbl9ncmFwaF9vbmUociwgZywgZ3JhcGhfY29tbWl0KSkKKwkJCWdyYXBoX3JlcG9ydChfKCJmYWlsZWQgdG8gcGFyc2UgY29tbWl0ICVzIGZyb20gY29tbWl0LWdyYXBoIiksCiAJCQkJICAgICBvaWRfdG9faGV4KCZjdXJfb2lkKSk7CiAJfQogCkBAIC0xMDM0LDcgKzE5NzYsNyBAQAogCQl1aW50MzJfdCBmYW5vdXRfdmFsdWUgPSBnZXRfYmUzMihnLT5jaHVua19vaWRfZmFub3V0ICsgY3VyX2Zhbm91dF9wb3MpOwogCiAJCWlmIChnLT5udW1fY29tbWl0cyAhPSBmYW5vdXRfdmFsdWUpCi0JCQlncmFwaF9yZXBvcnQoImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IGZhbm91dCB2YWx1ZTogZmFub3V0WyVkXSA9ICV1ICE9ICV1IiwKKwkJCWdyYXBoX3JlcG9ydChfKCJjb21taXQtZ3JhcGggaGFzIGluY29ycmVjdCBmYW5vdXQgdmFsdWU6IGZhbm91dFslZF0gPSAldSAhPSAldSIpLAogCQkJCSAgICAgY3VyX2Zhbm91dF9wb3MsIGZhbm91dF92YWx1ZSwgaSk7CiAKIAkJY3VyX2Zhbm91dF9wb3MrKzsKQEAgLTEwNDMsOCArMTk4NSwxMCBAQAogCWlmICh2ZXJpZnlfY29tbWl0X2dyYXBoX2Vycm9yICYgflZFUklGWV9DT01NSVRfR1JBUEhfRVJST1JfSEFTSCkKIAkJcmV0dXJuIHZlcmlmeV9jb21taXRfZ3JhcGhfZXJyb3I7CiAKLQlwcm9ncmVzcyA9IHN0YXJ0X3Byb2dyZXNzKF8oIlZlcmlmeWluZyBjb21taXRzIGluIGNvbW1pdCBncmFwaCIpLAotCQkJCSAgZy0+bnVtX2NvbW1pdHMpOworCWlmIChmbGFncyAmIENPTU1JVF9HUkFQSF9XUklURV9QUk9HUkVTUykKKwkJcHJvZ3Jlc3MgPSBzdGFydF9wcm9ncmVzcyhfKCJWZXJpZnlpbmcgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiKSwKKwkJCQkJZy0+bnVtX2NvbW1pdHMpOworCiAJZm9yIChpID0gMDsgaSA8IGctPm51bV9jb21taXRzOyBpKyspIHsKIAkJc3RydWN0IGNvbW1pdCAqZ3JhcGhfY29tbWl0LCAqb2RiX2NvbW1pdDsKIAkJc3RydWN0IGNvbW1pdF9saXN0ICpncmFwaF9wYXJlbnRzLCAqb2RiX3BhcmVudHM7CkBAIC0xMDU0LDE2ICsxOTk4LDE2IEBACiAJCWhhc2hjcHkoY3VyX29pZC5oYXNoLCBnLT5jaHVua19vaWRfbG9va3VwICsgZy0+aGFzaF9sZW4gKiBpKTsKIAogCQlncmFwaF9jb21taXQgPSBsb29rdXBfY29tbWl0KHIsICZjdXJfb2lkKTsKLQkJb2RiX2NvbW1pdCA9IChzdHJ1Y3QgY29tbWl0ICopY3JlYXRlX29iamVjdChyLCBjdXJfb2lkLmhhc2gsIGFsbG9jX2NvbW1pdF9ub2RlKHIpKTsKKwkJb2RiX2NvbW1pdCA9IChzdHJ1Y3QgY29tbWl0ICopY3JlYXRlX29iamVjdChyLCAmY3VyX29pZCwgYWxsb2NfY29tbWl0X25vZGUocikpOwogCQlpZiAocGFyc2VfY29tbWl0X2ludGVybmFsKG9kYl9jb21taXQsIDAsIDApKSB7Ci0JCQlncmFwaF9yZXBvcnQoImZhaWxlZCB0byBwYXJzZSAlcyBmcm9tIG9iamVjdCBkYXRhYmFzZSIsCisJCQlncmFwaF9yZXBvcnQoXygiZmFpbGVkIHRvIHBhcnNlIGNvbW1pdCAlcyBmcm9tIG9iamVjdCBkYXRhYmFzZSBmb3IgY29tbWl0LWdyYXBoIiksCiAJCQkJICAgICBvaWRfdG9faGV4KCZjdXJfb2lkKSk7CiAJCQljb250aW51ZTsKIAkJfQogCi0JCWlmICghb2lkZXEoJmdldF9jb21taXRfdHJlZV9pbl9ncmFwaF9vbmUoZywgZ3JhcGhfY29tbWl0KS0+b2JqZWN0Lm9pZCwKKwkJaWYgKCFvaWRlcSgmZ2V0X2NvbW1pdF90cmVlX2luX2dyYXBoX29uZShyLCBnLCBncmFwaF9jb21taXQpLT5vYmplY3Qub2lkLAogCQkJICAgZ2V0X2NvbW1pdF90cmVlX29pZChvZGJfY29tbWl0KSkpCi0JCQlncmFwaF9yZXBvcnQoInJvb3QgdHJlZSBPSUQgZm9yIGNvbW1pdCAlcyBpbiBjb21taXQtZ3JhcGggaXMgJXMgIT0gJXMiLAorCQkJZ3JhcGhfcmVwb3J0KF8oInJvb3QgdHJlZSBPSUQgZm9yIGNvbW1pdCAlcyBpbiBjb21taXQtZ3JhcGggaXMgJXMgIT0gJXMiKSwKIAkJCQkgICAgIG9pZF90b19oZXgoJmN1cl9vaWQpLAogCQkJCSAgICAgb2lkX3RvX2hleChnZXRfY29tbWl0X3RyZWVfb2lkKGdyYXBoX2NvbW1pdCkpLAogCQkJCSAgICAgb2lkX3RvX2hleChnZXRfY29tbWl0X3RyZWVfb2lkKG9kYl9jb21taXQpKSk7CkBAIC0xMDczLDEzICsyMDE3LDE2IEBACiAKIAkJd2hpbGUgKGdyYXBoX3BhcmVudHMpIHsKIAkJCWlmIChvZGJfcGFyZW50cyA9PSBOVUxMKSB7Ci0JCQkJZ3JhcGhfcmVwb3J0KCJjb21taXQtZ3JhcGggcGFyZW50IGxpc3QgZm9yIGNvbW1pdCAlcyBpcyB0b28gbG9uZyIsCisJCQkJZ3JhcGhfcmVwb3J0KF8oImNvbW1pdC1ncmFwaCBwYXJlbnQgbGlzdCBmb3IgY29tbWl0ICVzIGlzIHRvbyBsb25nIiksCiAJCQkJCSAgICAgb2lkX3RvX2hleCgmY3VyX29pZCkpOwogCQkJCWJyZWFrOwogCQkJfQogCisJCQkvKiBwYXJzZSBwYXJlbnQgaW4gY2FzZSBpdCBpcyBpbiBhIGJhc2UgZ3JhcGggKi8KKwkJCXBhcnNlX2NvbW1pdF9pbl9ncmFwaF9vbmUociwgZywgZ3JhcGhfcGFyZW50cy0+aXRlbSk7CisKIAkJCWlmICghb2lkZXEoJmdyYXBoX3BhcmVudHMtPml0ZW0tPm9iamVjdC5vaWQsICZvZGJfcGFyZW50cy0+aXRlbS0+b2JqZWN0Lm9pZCkpCi0JCQkJZ3JhcGhfcmVwb3J0KCJjb21taXQtZ3JhcGggcGFyZW50IGZvciAlcyBpcyAlcyAhPSAlcyIsCisJCQkJZ3JhcGhfcmVwb3J0KF8oImNvbW1pdC1ncmFwaCBwYXJlbnQgZm9yICVzIGlzICVzICE9ICVzIiksCiAJCQkJCSAgICAgb2lkX3RvX2hleCgmY3VyX29pZCksCiAJCQkJCSAgICAgb2lkX3RvX2hleCgmZ3JhcGhfcGFyZW50cy0+aXRlbS0+b2JqZWN0Lm9pZCksCiAJCQkJCSAgICAgb2lkX3RvX2hleCgmb2RiX3BhcmVudHMtPml0ZW0tPm9iamVjdC5vaWQpKTsKQEAgLTEwOTIsMTYgKzIwMzksMTYgQEAKIAkJfQogCiAJCWlmIChvZGJfcGFyZW50cyAhPSBOVUxMKQotCQkJZ3JhcGhfcmVwb3J0KCJjb21taXQtZ3JhcGggcGFyZW50IGxpc3QgZm9yIGNvbW1pdCAlcyB0ZXJtaW5hdGVzIGVhcmx5IiwKKwkJCWdyYXBoX3JlcG9ydChfKCJjb21taXQtZ3JhcGggcGFyZW50IGxpc3QgZm9yIGNvbW1pdCAlcyB0ZXJtaW5hdGVzIGVhcmx5IiksCiAJCQkJICAgICBvaWRfdG9faGV4KCZjdXJfb2lkKSk7CiAKIAkJaWYgKCFncmFwaF9jb21taXQtPmdlbmVyYXRpb24pIHsKIAkJCWlmIChnZW5lcmF0aW9uX3plcm8gPT0gR0VORVJBVElPTl9OVU1CRVJfRVhJU1RTKQotCQkJCWdyYXBoX3JlcG9ydCgiY29tbWl0LWdyYXBoIGhhcyBnZW5lcmF0aW9uIG51bWJlciB6ZXJvIGZvciBjb21taXQgJXMsIGJ1dCBub24temVybyBlbHNld2hlcmUiLAorCQkJCWdyYXBoX3JlcG9ydChfKCJjb21taXQtZ3JhcGggaGFzIGdlbmVyYXRpb24gbnVtYmVyIHplcm8gZm9yIGNvbW1pdCAlcywgYnV0IG5vbi16ZXJvIGVsc2V3aGVyZSIpLAogCQkJCQkgICAgIG9pZF90b19oZXgoJmN1cl9vaWQpKTsKIAkJCWdlbmVyYXRpb25femVybyA9IEdFTkVSQVRJT05fWkVST19FWElTVFM7CiAJCX0gZWxzZSBpZiAoZ2VuZXJhdGlvbl96ZXJvID09IEdFTkVSQVRJT05fWkVST19FWElTVFMpCi0JCQlncmFwaF9yZXBvcnQoImNvbW1pdC1ncmFwaCBoYXMgbm9uLXplcm8gZ2VuZXJhdGlvbiBudW1iZXIgZm9yIGNvbW1pdCAlcywgYnV0IHplcm8gZWxzZXdoZXJlIiwKKwkJCWdyYXBoX3JlcG9ydChfKCJjb21taXQtZ3JhcGggaGFzIG5vbi16ZXJvIGdlbmVyYXRpb24gbnVtYmVyIGZvciBjb21taXQgJXMsIGJ1dCB6ZXJvIGVsc2V3aGVyZSIpLAogCQkJCSAgICAgb2lkX3RvX2hleCgmY3VyX29pZCkpOwogCiAJCWlmIChnZW5lcmF0aW9uX3plcm8gPT0gR0VORVJBVElPTl9aRVJPX0VYSVNUUykKQEAgLTExMTYsMjAgKzIwNjMsMjUgQEAKIAkJCW1heF9nZW5lcmF0aW9uLS07CiAKIAkJaWYgKGdyYXBoX2NvbW1pdC0+Z2VuZXJhdGlvbiAhPSBtYXhfZ2VuZXJhdGlvbiArIDEpCi0JCQlncmFwaF9yZXBvcnQoImNvbW1pdC1ncmFwaCBnZW5lcmF0aW9uIGZvciBjb21taXQgJXMgaXMgJXUgIT0gJXUiLAorCQkJZ3JhcGhfcmVwb3J0KF8oImNvbW1pdC1ncmFwaCBnZW5lcmF0aW9uIGZvciBjb21taXQgJXMgaXMgJXUgIT0gJXUiKSwKIAkJCQkgICAgIG9pZF90b19oZXgoJmN1cl9vaWQpLAogCQkJCSAgICAgZ3JhcGhfY29tbWl0LT5nZW5lcmF0aW9uLAogCQkJCSAgICAgbWF4X2dlbmVyYXRpb24gKyAxKTsKIAogCQlpZiAoZ3JhcGhfY29tbWl0LT5kYXRlICE9IG9kYl9jb21taXQtPmRhdGUpCi0JCQlncmFwaF9yZXBvcnQoImNvbW1pdCBkYXRlIGZvciBjb21taXQgJXMgaW4gY29tbWl0LWdyYXBoIGlzICUiUFJJdGltZSIgIT0gJSJQUkl0aW1lLAorCQkJZ3JhcGhfcmVwb3J0KF8oImNvbW1pdCBkYXRlIGZvciBjb21taXQgJXMgaW4gY29tbWl0LWdyYXBoIGlzICUiUFJJdGltZSIgIT0gJSJQUkl0aW1lKSwKIAkJCQkgICAgIG9pZF90b19oZXgoJmN1cl9vaWQpLAogCQkJCSAgICAgZ3JhcGhfY29tbWl0LT5kYXRlLAogCQkJCSAgICAgb2RiX2NvbW1pdC0+ZGF0ZSk7CiAJfQogCXN0b3BfcHJvZ3Jlc3MoJnByb2dyZXNzKTsKIAotCXJldHVybiB2ZXJpZnlfY29tbWl0X2dyYXBoX2Vycm9yOworCWxvY2FsX2Vycm9yID0gdmVyaWZ5X2NvbW1pdF9ncmFwaF9lcnJvcjsKKworCWlmICghKGZsYWdzICYgQ09NTUlUX0dSQVBIX1ZFUklGWV9TSEFMTE9XKSAmJiBnLT5iYXNlX2dyYXBoKQorCQlsb2NhbF9lcnJvciB8PSB2ZXJpZnlfY29tbWl0X2dyYXBoKHIsIGctPmJhc2VfZ3JhcGgsIGZsYWdzKTsKKworCXJldHVybiBsb2NhbF9lcnJvcjsKIH0KIAogdm9pZCBmcmVlX2NvbW1pdF9ncmFwaChzdHJ1Y3QgY29tbWl0X2dyYXBoICpnKQpAQCAtMTE0MSw1ICsyMDkzLDExIEBACiAJCWctPmRhdGEgPSBOVUxMOwogCQljbG9zZShnLT5ncmFwaF9mZCk7CiAJfQorCWZyZWUoZy0+ZmlsZW5hbWUpOwogCWZyZWUoZyk7CiB9CisKK3ZvaWQgZGlzYWJsZV9jb21taXRfZ3JhcGgoc3RydWN0IHJlcG9zaXRvcnkgKnIpCit7CisJci0+Y29tbWl0X2dyYXBoX2Rpc2FibGVkID0gMTsKK30KZGlmZiAtLWdpdCBhL2NvbW1pdC1ncmFwaC5oIGIvY29tbWl0LWdyYXBoLmgKaW5kZXggOWRiNDBiNC4uZTg3YTZmNiAxMDA2NDQKLS0tIGEvY29tbWl0LWdyYXBoLmgKKysrIGIvY29tbWl0LWdyYXBoLmgKQEAgLTUsMTIgKzUsMTUgQEAKICNpbmNsdWRlICJyZXBvc2l0b3J5LmgiCiAjaW5jbHVkZSAic3RyaW5nLWxpc3QuaCIKICNpbmNsdWRlICJjYWNoZS5oIgorI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgogCiAjZGVmaW5lIEdJVF9URVNUX0NPTU1JVF9HUkFQSCAiR0lUX1RFU1RfQ09NTUlUX0dSQVBIIgorI2RlZmluZSBHSVRfVEVTVF9DT01NSVRfR1JBUEhfRElFX09OX0xPQUQgIkdJVF9URVNUX0NPTU1JVF9HUkFQSF9ESUVfT05fTE9BRCIKIAogc3RydWN0IGNvbW1pdDsKIAotY2hhciAqZ2V0X2NvbW1pdF9ncmFwaF9maWxlbmFtZShjb25zdCBjaGFyICpvYmpfZGlyKTsKK2NoYXIgKmdldF9jb21taXRfZ3JhcGhfZmlsZW5hbWUoc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKm9kYik7CitpbnQgb3Blbl9jb21taXRfZ3JhcGgoY29uc3QgY2hhciAqZ3JhcGhfZmlsZSwgaW50ICpmZCwgc3RydWN0IHN0YXQgKnN0KTsKIAogLyoKICAqIEdpdmVuIGEgY29tbWl0IHN0cnVjdCwgdHJ5IHRvIGZpbGwgdGhlIGNvbW1pdCBzdHJ1Y3QgaW5mbywgaW5jbHVkaW5nOgpAQCAtNDUsMTQgKzQ4LDI1IEBACiAJdW5zaWduZWQgY2hhciBudW1fY2h1bmtzOwogCXVpbnQzMl90IG51bV9jb21taXRzOwogCXN0cnVjdCBvYmplY3RfaWQgb2lkOworCWNoYXIgKmZpbGVuYW1lOworCXN0cnVjdCBvYmplY3RfZGlyZWN0b3J5ICpvZGI7CisKKwl1aW50MzJfdCBudW1fY29tbWl0c19pbl9iYXNlOworCXN0cnVjdCBjb21taXRfZ3JhcGggKmJhc2VfZ3JhcGg7CiAKIAljb25zdCB1aW50MzJfdCAqY2h1bmtfb2lkX2Zhbm91dDsKIAljb25zdCB1bnNpZ25lZCBjaGFyICpjaHVua19vaWRfbG9va3VwOwogCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmNodW5rX2NvbW1pdF9kYXRhOwotCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmNodW5rX2xhcmdlX2VkZ2VzOworCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmNodW5rX2V4dHJhX2VkZ2VzOworCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmNodW5rX2Jhc2VfZ3JhcGhzOwogfTsKIAotc3RydWN0IGNvbW1pdF9ncmFwaCAqbG9hZF9jb21taXRfZ3JhcGhfb25lKGNvbnN0IGNoYXIgKmdyYXBoX2ZpbGUpOworc3RydWN0IGNvbW1pdF9ncmFwaCAqbG9hZF9jb21taXRfZ3JhcGhfb25lX2ZkX3N0KGludCBmZCwgc3RydWN0IHN0YXQgKnN0LAorCQkJCQkJIHN0cnVjdCBvYmplY3RfZGlyZWN0b3J5ICpvZGIpOworc3RydWN0IGNvbW1pdF9ncmFwaCAqcmVhZF9jb21taXRfZ3JhcGhfb25lKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQkgICBzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiKTsKK3N0cnVjdCBjb21taXRfZ3JhcGggKnBhcnNlX2NvbW1pdF9ncmFwaCh2b2lkICpncmFwaF9tYXAsIGludCBmZCwKKwkJCQkJc2l6ZV90IGdyYXBoX3NpemUpOwogCiAvKgogICogUmV0dXJuIDEgaWYgYW5kIG9ubHkgaWYgdGhlIHJlcG9zaXRvcnkgaGFzIGEgY29tbWl0LWdyYXBoCkBAIC02MCwxNiArNzQsNDYgQEAKICAqLwogaW50IGdlbmVyYXRpb25fbnVtYmVyc19lbmFibGVkKHN0cnVjdCByZXBvc2l0b3J5ICpyKTsKIAotdm9pZCB3cml0ZV9jb21taXRfZ3JhcGhfcmVhY2hhYmxlKGNvbnN0IGNoYXIgKm9ial9kaXIsIGludCBhcHBlbmQsCi0JCQkJICBpbnQgcmVwb3J0X3Byb2dyZXNzKTsKLXZvaWQgd3JpdGVfY29tbWl0X2dyYXBoKGNvbnN0IGNoYXIgKm9ial9kaXIsCi0JCQlzdHJ1Y3Qgc3RyaW5nX2xpc3QgKnBhY2tfaW5kZXhlcywKLQkJCXN0cnVjdCBzdHJpbmdfbGlzdCAqY29tbWl0X2hleCwKLQkJCWludCBhcHBlbmQsIGludCByZXBvcnRfcHJvZ3Jlc3MpOworZW51bSBjb21taXRfZ3JhcGhfd3JpdGVfZmxhZ3MgeworCUNPTU1JVF9HUkFQSF9XUklURV9BUFBFTkQgICAgID0gKDEgPDwgMCksCisJQ09NTUlUX0dSQVBIX1dSSVRFX1BST0dSRVNTICAgPSAoMSA8PCAxKSwKKwlDT01NSVRfR1JBUEhfV1JJVEVfU1BMSVQgICAgICA9ICgxIDw8IDIpLAorCS8qIE1ha2Ugc3VyZSB0aGF0IGVhY2ggT0lEIGluIHRoZSBpbnB1dCBpcyBhIHZhbGlkIGNvbW1pdCBPSUQuICovCisJQ09NTUlUX0dSQVBIX1dSSVRFX0NIRUNLX09JRFMgPSAoMSA8PCAzKQorfTsKIAotaW50IHZlcmlmeV9jb21taXRfZ3JhcGgoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBjb21taXRfZ3JhcGggKmcpOworc3RydWN0IHNwbGl0X2NvbW1pdF9ncmFwaF9vcHRzIHsKKwlpbnQgc2l6ZV9tdWx0aXBsZTsKKwlpbnQgbWF4X2NvbW1pdHM7CisJdGltZXN0YW1wX3QgZXhwaXJlX3RpbWU7Cit9OwogCi12b2lkIGNsb3NlX2NvbW1pdF9ncmFwaChzdHJ1Y3QgcmVwb3NpdG9yeSAqKTsKKy8qCisgKiBUaGUgd3JpdGVfY29tbWl0X2dyYXBoKiBtZXRob2RzIHJldHVybiB6ZXJvIG9uIHN1Y2Nlc3MKKyAqIGFuZCBhIG5lZ2F0aXZlIHZhbHVlIG9uIGZhaWx1cmUuIE5vdGUgdGhhdCBpZiB0aGUgcmVwb3NpdG9yeQorICogaXMgbm90IGNvbXBhdGlibGUgd2l0aCB0aGUgY29tbWl0LWdyYXBoIGZlYXR1cmUsIHRoZW4gdGhlCisgKiBtZXRob2RzIHdpbGwgcmV0dXJuIDAgd2l0aG91dCB3cml0aW5nIGEgY29tbWl0LWdyYXBoLgorICovCitpbnQgd3JpdGVfY29tbWl0X2dyYXBoX3JlYWNoYWJsZShzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiLAorCQkJCSBlbnVtIGNvbW1pdF9ncmFwaF93cml0ZV9mbGFncyBmbGFncywKKwkJCQkgY29uc3Qgc3RydWN0IHNwbGl0X2NvbW1pdF9ncmFwaF9vcHRzICpzcGxpdF9vcHRzKTsKK2ludCB3cml0ZV9jb21taXRfZ3JhcGgoc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKm9kYiwKKwkJICAgICAgIHN0cnVjdCBzdHJpbmdfbGlzdCAqcGFja19pbmRleGVzLAorCQkgICAgICAgc3RydWN0IHN0cmluZ19saXN0ICpjb21taXRfaGV4LAorCQkgICAgICAgZW51bSBjb21taXRfZ3JhcGhfd3JpdGVfZmxhZ3MgZmxhZ3MsCisJCSAgICAgICBjb25zdCBzdHJ1Y3Qgc3BsaXRfY29tbWl0X2dyYXBoX29wdHMgKnNwbGl0X29wdHMpOworCisjZGVmaW5lIENPTU1JVF9HUkFQSF9WRVJJRllfU0hBTExPVwkoMSA8PCAwKQorCitpbnQgdmVyaWZ5X2NvbW1pdF9ncmFwaChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IGNvbW1pdF9ncmFwaCAqZywgaW50IGZsYWdzKTsKKwordm9pZCBjbG9zZV9jb21taXRfZ3JhcGgoc3RydWN0IHJhd19vYmplY3Rfc3RvcmUgKik7CiB2b2lkIGZyZWVfY29tbWl0X2dyYXBoKHN0cnVjdCBjb21taXRfZ3JhcGggKik7CiAKKy8qCisgKiBEaXNhYmxlIGZ1cnRoZXIgdXNlIG9mIHRoZSBjb21taXQgZ3JhcGggaW4gdGhpcyBwcm9jZXNzIHdoZW4gcGFyc2luZyBhCisgKiAic3RydWN0IGNvbW1pdCIuCisgKi8KK3ZvaWQgZGlzYWJsZV9jb21taXRfZ3JhcGgoc3RydWN0IHJlcG9zaXRvcnkgKnIpOworCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2NvbW1pdC1yZWFjaC5jIGIvY29tbWl0LXJlYWNoLmMKaW5kZXggZDVhMzlkZS4uNGNhN2U3MCAxMDA2NDQKLS0tIGEvY29tbWl0LXJlYWNoLmMKKysrIGIvY29tbWl0LXJlYWNoLmMKQEAgLTEwLDcgKzEwLDYgQEAKICNpbmNsdWRlICJjb21taXQtcmVhY2guaCIKIAogLyogUmVtZW1iZXIgdG8gdXBkYXRlIG9iamVjdCBmbGFnIGFsbG9jYXRpb24gaW4gb2JqZWN0LmggKi8KLSNkZWZpbmUgUkVBQ0hBQkxFICAgICAgICgxdTw8MTUpCiAjZGVmaW5lIFBBUkVOVDEJCSgxdTw8MTYpCiAjZGVmaW5lIFBBUkVOVDIJCSgxdTw8MTcpCiAjZGVmaW5lIFNUQUxFCQkoMXU8PDE4KQpAQCAtMzAsNyArMjksOCBAQAogfQogCiAvKiBhbGwgaW5wdXQgY29tbWl0cyBpbiBvbmUgYW5kIHR3b3NbXSBtdXN0IGhhdmUgYmVlbiBwYXJzZWQhICovCi1zdGF0aWMgc3RydWN0IGNvbW1pdF9saXN0ICpwYWludF9kb3duX3RvX2NvbW1vbihzdHJ1Y3QgY29tbWl0ICpvbmUsIGludCBuLAorc3RhdGljIHN0cnVjdCBjb21taXRfbGlzdCAqcGFpbnRfZG93bl90b19jb21tb24oc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJCQlzdHJ1Y3QgY29tbWl0ICpvbmUsIGludCBuLAogCQkJCQkJc3RydWN0IGNvbW1pdCAqKnR3b3MsCiAJCQkJCQlpbnQgbWluX2dlbmVyYXRpb24pCiB7CkBAIC04Myw3ICs4Myw3IEBACiAJCQlwYXJlbnRzID0gcGFyZW50cy0+bmV4dDsKIAkJCWlmICgocC0+b2JqZWN0LmZsYWdzICYgZmxhZ3MpID09IGZsYWdzKQogCQkJCWNvbnRpbnVlOwotCQkJaWYgKHBhcnNlX2NvbW1pdChwKSkKKwkJCWlmIChyZXBvX3BhcnNlX2NvbW1pdChyLCBwKSkKIAkJCQlyZXR1cm4gTlVMTDsKIAkJCXAtPm9iamVjdC5mbGFncyB8PSBmbGFnczsKIAkJCXByaW9fcXVldWVfcHV0KCZxdWV1ZSwgcCk7CkBAIC05NCw3ICs5NCw5IEBACiAJcmV0dXJuIHJlc3VsdDsKIH0KIAotc3RhdGljIHN0cnVjdCBjb21taXRfbGlzdCAqbWVyZ2VfYmFzZXNfbWFueShzdHJ1Y3QgY29tbWl0ICpvbmUsIGludCBuLCBzdHJ1Y3QgY29tbWl0ICoqdHdvcykKK3N0YXRpYyBzdHJ1Y3QgY29tbWl0X2xpc3QgKm1lcmdlX2Jhc2VzX21hbnkoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJCSAgICBzdHJ1Y3QgY29tbWl0ICpvbmUsIGludCBuLAorCQkJCQkgICAgc3RydWN0IGNvbW1pdCAqKnR3b3MpCiB7CiAJc3RydWN0IGNvbW1pdF9saXN0ICpsaXN0ID0gTlVMTDsKIAlzdHJ1Y3QgY29tbWl0X2xpc3QgKnJlc3VsdCA9IE5VTEw7CkBAIC0xMDksMTQgKzExMSwxNCBAQAogCQkJcmV0dXJuIGNvbW1pdF9saXN0X2luc2VydChvbmUsICZyZXN1bHQpOwogCX0KIAotCWlmIChwYXJzZV9jb21taXQob25lKSkKKwlpZiAocmVwb19wYXJzZV9jb21taXQociwgb25lKSkKIAkJcmV0dXJuIE5VTEw7CiAJZm9yIChpID0gMDsgaSA8IG47IGkrKykgewotCQlpZiAocGFyc2VfY29tbWl0KHR3b3NbaV0pKQorCQlpZiAocmVwb19wYXJzZV9jb21taXQociwgdHdvc1tpXSkpCiAJCQlyZXR1cm4gTlVMTDsKIAl9CiAKLQlsaXN0ID0gcGFpbnRfZG93bl90b19jb21tb24ob25lLCBuLCB0d29zLCAwKTsKKwlsaXN0ID0gcGFpbnRfZG93bl90b19jb21tb24ociwgb25lLCBuLCB0d29zLCAwKTsKIAogCXdoaWxlIChsaXN0KSB7CiAJCXN0cnVjdCBjb21taXQgKmNvbW1pdCA9IHBvcF9jb21taXQoJmxpc3QpOwpAQCAtMTUzLDcgKzE1NSw3IEBACiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCByZW1vdmVfcmVkdW5kYW50KHN0cnVjdCBjb21taXQgKiphcnJheSwgaW50IGNudCkKK3N0YXRpYyBpbnQgcmVtb3ZlX3JlZHVuZGFudChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IGNvbW1pdCAqKmFycmF5LCBpbnQgY250KQogewogCS8qCiAJICogU29tZSBjb21taXQgaW4gdGhlIGFycmF5IG1heSBiZSBhbiBhbmNlc3RvciBvZgpAQCAtMTcxLDcgKzE3Myw3IEBACiAJQUxMT0NfQVJSQVkoZmlsbGVkX2luZGV4LCBjbnQgLSAxKTsKIAogCWZvciAoaSA9IDA7IGkgPCBjbnQ7IGkrKykKLQkJcGFyc2VfY29tbWl0KGFycmF5W2ldKTsKKwkJcmVwb19wYXJzZV9jb21taXQociwgYXJyYXlbaV0pOwogCWZvciAoaSA9IDA7IGkgPCBjbnQ7IGkrKykgewogCQlzdHJ1Y3QgY29tbWl0X2xpc3QgKmNvbW1vbjsKIAkJdWludDMyX3QgbWluX2dlbmVyYXRpb24gPSBhcnJheVtpXS0+Z2VuZXJhdGlvbjsKQEAgLTE4Nyw4ICsxODksOCBAQAogCQkJaWYgKGFycmF5W2pdLT5nZW5lcmF0aW9uIDwgbWluX2dlbmVyYXRpb24pCiAJCQkJbWluX2dlbmVyYXRpb24gPSBhcnJheVtqXS0+Z2VuZXJhdGlvbjsKIAkJfQotCQljb21tb24gPSBwYWludF9kb3duX3RvX2NvbW1vbihhcnJheVtpXSwgZmlsbGVkLCB3b3JrLAotCQkJCQkgICAgICBtaW5fZ2VuZXJhdGlvbik7CisJCWNvbW1vbiA9IHBhaW50X2Rvd25fdG9fY29tbW9uKHIsIGFycmF5W2ldLCBmaWxsZWQsCisJCQkJCSAgICAgIHdvcmssIG1pbl9nZW5lcmF0aW9uKTsKIAkJaWYgKGFycmF5W2ldLT5vYmplY3QuZmxhZ3MgJiBQQVJFTlQyKQogCQkJcmVkdW5kYW50W2ldID0gMTsKIAkJZm9yIChqID0gMDsgaiA8IGZpbGxlZDsgaisrKQpAQCAtMjEzLDcgKzIxNSw4IEBACiAJcmV0dXJuIGZpbGxlZDsKIH0KIAotc3RhdGljIHN0cnVjdCBjb21taXRfbGlzdCAqZ2V0X21lcmdlX2Jhc2VzX21hbnlfMChzdHJ1Y3QgY29tbWl0ICpvbmUsCitzdGF0aWMgc3RydWN0IGNvbW1pdF9saXN0ICpnZXRfbWVyZ2VfYmFzZXNfbWFueV8wKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQkJICBzdHJ1Y3QgY29tbWl0ICpvbmUsCiAJCQkJCQkgIGludCBuLAogCQkJCQkJICBzdHJ1Y3QgY29tbWl0ICoqdHdvcywKIAkJCQkJCSAgaW50IGNsZWFudXApCkBAIC0yMjMsNyArMjI2LDcgQEAKIAlzdHJ1Y3QgY29tbWl0X2xpc3QgKnJlc3VsdDsKIAlpbnQgY250LCBpOwogCi0JcmVzdWx0ID0gbWVyZ2VfYmFzZXNfbWFueShvbmUsIG4sIHR3b3MpOworCXJlc3VsdCA9IG1lcmdlX2Jhc2VzX21hbnkociwgb25lLCBuLCB0d29zKTsKIAlmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAJCWlmIChvbmUgPT0gdHdvc1tpXSkKIAkJCXJldHVybiByZXN1bHQ7CkBAIC0yNDYsNyArMjQ5LDcgQEAKIAljbGVhcl9jb21taXRfbWFya3Mob25lLCBhbGxfZmxhZ3MpOwogCWNsZWFyX2NvbW1pdF9tYXJrc19tYW55KG4sIHR3b3MsIGFsbF9mbGFncyk7CiAKLQljbnQgPSByZW1vdmVfcmVkdW5kYW50KHJzbHQsIGNudCk7CisJY250ID0gcmVtb3ZlX3JlZHVuZGFudChyLCByc2x0LCBjbnQpOwogCXJlc3VsdCA9IE5VTEw7CiAJZm9yIChpID0gMDsgaSA8IGNudDsgaSsrKQogCQljb21taXRfbGlzdF9pbnNlcnRfYnlfZGF0ZShyc2x0W2ldLCAmcmVzdWx0KTsKQEAgLTI1NCwyMyArMjU3LDI3IEBACiAJcmV0dXJuIHJlc3VsdDsKIH0KIAotc3RydWN0IGNvbW1pdF9saXN0ICpnZXRfbWVyZ2VfYmFzZXNfbWFueShzdHJ1Y3QgY29tbWl0ICpvbmUsCi0JCQkJCSBpbnQgbiwKLQkJCQkJIHN0cnVjdCBjb21taXQgKip0d29zKQorc3RydWN0IGNvbW1pdF9saXN0ICpyZXBvX2dldF9tZXJnZV9iYXNlc19tYW55KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQkgICAgICBzdHJ1Y3QgY29tbWl0ICpvbmUsCisJCQkJCSAgICAgIGludCBuLAorCQkJCQkgICAgICBzdHJ1Y3QgY29tbWl0ICoqdHdvcykKIHsKLQlyZXR1cm4gZ2V0X21lcmdlX2Jhc2VzX21hbnlfMChvbmUsIG4sIHR3b3MsIDEpOworCXJldHVybiBnZXRfbWVyZ2VfYmFzZXNfbWFueV8wKHIsIG9uZSwgbiwgdHdvcywgMSk7CiB9CiAKLXN0cnVjdCBjb21taXRfbGlzdCAqZ2V0X21lcmdlX2Jhc2VzX21hbnlfZGlydHkoc3RydWN0IGNvbW1pdCAqb25lLAotCQkJCQkgICAgICAgaW50IG4sCi0JCQkJCSAgICAgICBzdHJ1Y3QgY29tbWl0ICoqdHdvcykKK3N0cnVjdCBjb21taXRfbGlzdCAqcmVwb19nZXRfbWVyZ2VfYmFzZXNfbWFueV9kaXJ0eShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJCSAgICBzdHJ1Y3QgY29tbWl0ICpvbmUsCisJCQkJCQkgICAgaW50IG4sCisJCQkJCQkgICAgc3RydWN0IGNvbW1pdCAqKnR3b3MpCiB7Ci0JcmV0dXJuIGdldF9tZXJnZV9iYXNlc19tYW55XzAob25lLCBuLCB0d29zLCAwKTsKKwlyZXR1cm4gZ2V0X21lcmdlX2Jhc2VzX21hbnlfMChyLCBvbmUsIG4sIHR3b3MsIDApOwogfQogCi1zdHJ1Y3QgY29tbWl0X2xpc3QgKmdldF9tZXJnZV9iYXNlcyhzdHJ1Y3QgY29tbWl0ICpvbmUsIHN0cnVjdCBjb21taXQgKnR3bykKK3N0cnVjdCBjb21taXRfbGlzdCAqcmVwb19nZXRfbWVyZ2VfYmFzZXMoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJCSBzdHJ1Y3QgY29tbWl0ICpvbmUsCisJCQkJCSBzdHJ1Y3QgY29tbWl0ICp0d28pCiB7Ci0JcmV0dXJuIGdldF9tZXJnZV9iYXNlc19tYW55XzAob25lLCAxLCAmdHdvLCAxKTsKKwlyZXR1cm4gZ2V0X21lcmdlX2Jhc2VzX21hbnlfMChyLCBvbmUsIDEsICZ0d28sIDEpOwogfQogCiAvKgpAQCAtMzA0LDE2ICszMTEsMTcgQEAKIC8qCiAgKiBJcyAiY29tbWl0IiBhbiBhbmNlc3RvciBvZiBvbmUgb2YgdGhlICJyZWZlcmVuY2VzIj8KICAqLwotaW50IGluX21lcmdlX2Jhc2VzX21hbnkoc3RydWN0IGNvbW1pdCAqY29tbWl0LCBpbnQgbnJfcmVmZXJlbmNlLCBzdHJ1Y3QgY29tbWl0ICoqcmVmZXJlbmNlKQoraW50IHJlcG9faW5fbWVyZ2VfYmFzZXNfbWFueShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IGNvbW1pdCAqY29tbWl0LAorCQkJICAgICBpbnQgbnJfcmVmZXJlbmNlLCBzdHJ1Y3QgY29tbWl0ICoqcmVmZXJlbmNlKQogewogCXN0cnVjdCBjb21taXRfbGlzdCAqYmFzZXM7CiAJaW50IHJldCA9IDAsIGk7CiAJdWludDMyX3QgbWluX2dlbmVyYXRpb24gPSBHRU5FUkFUSU9OX05VTUJFUl9JTkZJTklUWTsKIAotCWlmIChwYXJzZV9jb21taXQoY29tbWl0KSkKKwlpZiAocmVwb19wYXJzZV9jb21taXQociwgY29tbWl0KSkKIAkJcmV0dXJuIHJldDsKIAlmb3IgKGkgPSAwOyBpIDwgbnJfcmVmZXJlbmNlOyBpKyspIHsKLQkJaWYgKHBhcnNlX2NvbW1pdChyZWZlcmVuY2VbaV0pKQorCQlpZiAocmVwb19wYXJzZV9jb21taXQociwgcmVmZXJlbmNlW2ldKSkKIAkJCXJldHVybiByZXQ7CiAJCWlmIChyZWZlcmVuY2VbaV0tPmdlbmVyYXRpb24gPCBtaW5fZ2VuZXJhdGlvbikKIAkJCW1pbl9nZW5lcmF0aW9uID0gcmVmZXJlbmNlW2ldLT5nZW5lcmF0aW9uOwpAQCAtMzIyLDcgKzMzMCw5IEBACiAJaWYgKGNvbW1pdC0+Z2VuZXJhdGlvbiA+IG1pbl9nZW5lcmF0aW9uKQogCQlyZXR1cm4gcmV0OwogCi0JYmFzZXMgPSBwYWludF9kb3duX3RvX2NvbW1vbihjb21taXQsIG5yX3JlZmVyZW5jZSwgcmVmZXJlbmNlLCBjb21taXQtPmdlbmVyYXRpb24pOworCWJhc2VzID0gcGFpbnRfZG93bl90b19jb21tb24ociwgY29tbWl0LAorCQkJCSAgICAgbnJfcmVmZXJlbmNlLCByZWZlcmVuY2UsCisJCQkJICAgICBjb21taXQtPmdlbmVyYXRpb24pOwogCWlmIChjb21taXQtPm9iamVjdC5mbGFncyAmIFBBUkVOVDIpCiAJCXJldCA9IDE7CiAJY2xlYXJfY29tbWl0X21hcmtzKGNvbW1pdCwgYWxsX2ZsYWdzKTsKQEAgLTMzNCw5ICszNDQsMTEgQEAKIC8qCiAgKiBJcyAiY29tbWl0IiBhbiBhbmNlc3RvciBvZiAoaS5lLiByZWFjaGFibGUgZnJvbSkgdGhlICJyZWZlcmVuY2UiPwogICovCi1pbnQgaW5fbWVyZ2VfYmFzZXMoc3RydWN0IGNvbW1pdCAqY29tbWl0LCBzdHJ1Y3QgY29tbWl0ICpyZWZlcmVuY2UpCitpbnQgcmVwb19pbl9tZXJnZV9iYXNlcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCXN0cnVjdCBjb21taXQgKmNvbW1pdCwKKwkJCXN0cnVjdCBjb21taXQgKnJlZmVyZW5jZSkKIHsKLQlyZXR1cm4gaW5fbWVyZ2VfYmFzZXNfbWFueShjb21taXQsIDEsICZyZWZlcmVuY2UpOworCXJldHVybiByZXBvX2luX21lcmdlX2Jhc2VzX21hbnkociwgY29tbWl0LCAxLCAmcmVmZXJlbmNlKTsKIH0KIAogc3RydWN0IGNvbW1pdF9saXN0ICpyZWR1Y2VfaGVhZHMoc3RydWN0IGNvbW1pdF9saXN0ICpoZWFkcykKQEAgLTM2NSw3ICszNzcsNyBAQAogCQkJcC0+aXRlbS0+b2JqZWN0LmZsYWdzICY9IH5TVEFMRTsKIAkJfQogCX0KLQludW1faGVhZCA9IHJlbW92ZV9yZWR1bmRhbnQoYXJyYXksIG51bV9oZWFkKTsKKwludW1faGVhZCA9IHJlbW92ZV9yZWR1bmRhbnQodGhlX3JlcG9zaXRvcnksIGFycmF5LCBudW1faGVhZCk7CiAJZm9yIChpID0gMDsgaSA8IG51bV9oZWFkOyBpKyspCiAJCXRhaWwgPSAmY29tbWl0X2xpc3RfaW5zZXJ0KGFycmF5W2ldLCB0YWlsKS0+bmV4dDsKIAlmcmVlKGFycmF5KTsKZGlmZiAtLWdpdCBhL2NvbW1pdC1yZWFjaC5oIGIvY29tbWl0LXJlYWNoLmgKaW5kZXggZmI4MDgyYS4uOTlhNDNlOCAxMDA2NDQKLS0tIGEvY29tbWl0LXJlYWNoLmgKKysrIGIvY29tbWl0LXJlYWNoLmgKQEAgLTksMjEgKzksMzUgQEAKIHN0cnVjdCBvYmplY3RfaWQ7CiBzdHJ1Y3Qgb2JqZWN0X2FycmF5OwogCi1zdHJ1Y3QgY29tbWl0X2xpc3QgKmdldF9tZXJnZV9iYXNlc19tYW55KHN0cnVjdCBjb21taXQgKm9uZSwKLQkJCQkJIGludCBuLAotCQkJCQkgc3RydWN0IGNvbW1pdCAqKnR3b3MpOwotc3RydWN0IGNvbW1pdF9saXN0ICpnZXRfbWVyZ2VfYmFzZXNfbWFueV9kaXJ0eShzdHJ1Y3QgY29tbWl0ICpvbmUsCi0JCQkJCSAgICAgICBpbnQgbiwKLQkJCQkJICAgICAgIHN0cnVjdCBjb21taXQgKip0d29zKTsKLXN0cnVjdCBjb21taXRfbGlzdCAqZ2V0X21lcmdlX2Jhc2VzKHN0cnVjdCBjb21taXQgKm9uZSwgc3RydWN0IGNvbW1pdCAqdHdvKTsKK3N0cnVjdCBjb21taXRfbGlzdCAqcmVwb19nZXRfbWVyZ2VfYmFzZXMoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJCSBzdHJ1Y3QgY29tbWl0ICpyZXYxLAorCQkJCQkgc3RydWN0IGNvbW1pdCAqcmV2Mik7CitzdHJ1Y3QgY29tbWl0X2xpc3QgKnJlcG9fZ2V0X21lcmdlX2Jhc2VzX21hbnkoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJCSAgICAgIHN0cnVjdCBjb21taXQgKm9uZSwgaW50IG4sCisJCQkJCSAgICAgIHN0cnVjdCBjb21taXQgKip0d29zKTsKKy8qIFRvIGJlIHVzZWQgb25seSB3aGVuIG9iamVjdCBmbGFncyBhZnRlciB0aGlzIGNhbGwgbm8gbG9uZ2VyIG1hdHRlciAqLworc3RydWN0IGNvbW1pdF9saXN0ICpyZXBvX2dldF9tZXJnZV9iYXNlc19tYW55X2RpcnR5KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQkJICAgIHN0cnVjdCBjb21taXQgKm9uZSwgaW50IG4sCisJCQkJCQkgICAgc3RydWN0IGNvbW1pdCAqKnR3b3MpOworI2lmbmRlZiBOT19USEVfUkVQT1NJVE9SWV9DT01QQVRJQklMSVRZX01BQ1JPUworI2RlZmluZSBnZXRfbWVyZ2VfYmFzZXMocjEsIHIyKSAgICAgICAgICAgcmVwb19nZXRfbWVyZ2VfYmFzZXModGhlX3JlcG9zaXRvcnksIHIxLCByMikKKyNkZWZpbmUgZ2V0X21lcmdlX2Jhc2VzX21hbnkob25lLCBuLCB0d28pIHJlcG9fZ2V0X21lcmdlX2Jhc2VzX21hbnkodGhlX3JlcG9zaXRvcnksIG9uZSwgbiwgdHdvKQorI2RlZmluZSBnZXRfbWVyZ2VfYmFzZXNfbWFueV9kaXJ0eShvbmUsIG4sIHR3b3MpIHJlcG9fZ2V0X21lcmdlX2Jhc2VzX21hbnlfZGlydHkodGhlX3JlcG9zaXRvcnksIG9uZSwgbiwgdHdvcykKKyNlbmRpZgorCiBzdHJ1Y3QgY29tbWl0X2xpc3QgKmdldF9vY3RvcHVzX21lcmdlX2Jhc2VzKHN0cnVjdCBjb21taXRfbGlzdCAqaW4pOwogCi0vKiBUbyBiZSB1c2VkIG9ubHkgd2hlbiBvYmplY3QgZmxhZ3MgYWZ0ZXIgdGhpcyBjYWxsIG5vIGxvbmdlciBtYXR0ZXIgKi8KLXN0cnVjdCBjb21taXRfbGlzdCAqZ2V0X21lcmdlX2Jhc2VzX21hbnlfZGlydHkoc3RydWN0IGNvbW1pdCAqb25lLCBpbnQgbiwgc3RydWN0IGNvbW1pdCAqKnR3b3MpOwotCiBpbnQgaXNfZGVzY2VuZGFudF9vZihzdHJ1Y3QgY29tbWl0ICpjb21taXQsIHN0cnVjdCBjb21taXRfbGlzdCAqd2l0aF9jb21taXQpOwotaW50IGluX21lcmdlX2Jhc2VzX21hbnkoc3RydWN0IGNvbW1pdCAqY29tbWl0LCBpbnQgbnJfcmVmZXJlbmNlLCBzdHJ1Y3QgY29tbWl0ICoqcmVmZXJlbmNlKTsKLWludCBpbl9tZXJnZV9iYXNlcyhzdHJ1Y3QgY29tbWl0ICpjb21taXQsIHN0cnVjdCBjb21taXQgKnJlZmVyZW5jZSk7CitpbnQgcmVwb19pbl9tZXJnZV9iYXNlcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCXN0cnVjdCBjb21taXQgKmNvbW1pdCwKKwkJCXN0cnVjdCBjb21taXQgKnJlZmVyZW5jZSk7CitpbnQgcmVwb19pbl9tZXJnZV9iYXNlc19tYW55KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgICBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCisJCQkgICAgIGludCBucl9yZWZlcmVuY2UsIHN0cnVjdCBjb21taXQgKipyZWZlcmVuY2UpOworI2lmbmRlZiBOT19USEVfUkVQT1NJVE9SWV9DT01QQVRJQklMSVRZX01BQ1JPUworI2RlZmluZSBpbl9tZXJnZV9iYXNlcyhjMSwgYzIpIHJlcG9faW5fbWVyZ2VfYmFzZXModGhlX3JlcG9zaXRvcnksIGMxLCBjMikKKyNkZWZpbmUgaW5fbWVyZ2VfYmFzZXNfbWFueShjMSwgbiwgY3MpIHJlcG9faW5fbWVyZ2VfYmFzZXNfbWFueSh0aGVfcmVwb3NpdG9yeSwgYzEsIG4sIGNzKQorI2VuZGlmCiAKIC8qCiAgKiBUYWtlcyBhIGxpc3Qgb2YgY29tbWl0cyBhbmQgcmV0dXJucyBhIG5ldyBsaXN0IHdoZXJlIHRob3NlCmRpZmYgLS1naXQgYS9jb21taXQtc2xhYi5oIGIvY29tbWl0LXNsYWIuaAppbmRleCA2OWJmMGM4Li4wNWIzZjI4IDEwMDY0NAotLS0gYS9jb21taXQtc2xhYi5oCisrKyBiL2NvbW1pdC1zbGFiLmgKQEAgLTI0LDcgKzI0LDEyIEBACiAgKiAtIGludCAqaW5kZWdyZWVfcGVlayhzdHJ1Y3QgaW5kZWdyZWUgKiwgc3RydWN0IGNvbW1pdCAqKTsKICAqCiAgKiAgIFRoaXMgZnVuY3Rpb24gaXMgc2ltaWxhciB0byBpbmRlZ3JlZV9hdCgpLCBidXQgaXQgd2lsbCByZXR1cm4gTlVMTAotICogICB1bnRpbCBhIGNhbGwgdG8gaW5kZWdyZWVfYXQoKSB3YXMgbWFkZSBmb3IgdGhlIGNvbW1pdC4KKyAqICAgaWYgdGhlIGxvY2F0aW9uIHRvIHN0b3JlIHRoZSBkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ2l2ZW4gY29tbWl0CisgKiAgIGhhcyBub3QgYmVlbiBhbGxvY2F0ZWQgeWV0LgorICogICBOb3RlIHRoYXQgdGhlIGxvY2F0aW9uIHRvIHN0b3JlIHRoZSBkYXRhIG1pZ2h0IGhhdmUgYWxyZWFkeSBiZWVuCisgKiAgIGFsbG9jYXRlZCBldmVuIGlmIG5vIGluZGVncmVlX2F0KCkgY2FsbCBoYXMgYmVlbiBtYWRlIGZvciB0aGF0IGNvbW1pdAorICogICB5ZXQ7IGluIHRoaXMgY2FzZSB0aGlzIGZ1bmN0aW9uIHJldHVybnMgYSBwb2ludGVyIHRvIGEKKyAqICAgemVyby1pbml0aWFsaXplZCBsb2NhdGlvbi4KICAqCiAgKiAtIHZvaWQgaW5pdF9pbmRlZ3JlZShzdHJ1Y3QgaW5kZWdyZWUgKik7CiAgKiAgIHZvaWQgaW5pdF9pbmRlZ3JlZV93aXRoX3N0cmlkZShzdHJ1Y3QgaW5kZWdyZWUgKiwgaW50KTsKZGlmZiAtLWdpdCBhL2NvbW1pdC5jIGIvY29tbWl0LmMKaW5kZXggZDEzYTdiYy4uYTZjZmE0MSAxMDA2NDQKLS0tIGEvY29tbWl0LmMKKysrIGIvY29tbWl0LmMKQEAgLTE5LDYgKzE5LDcgQEAKICNpbmNsdWRlICJhZHZpY2UuaCIKICNpbmNsdWRlICJyZWZzLmgiCiAjaW5jbHVkZSAiY29tbWl0LXJlYWNoLmgiCisjaW5jbHVkZSAicnVuLWNvbW1hbmQuaCIKIAogc3RhdGljIHN0cnVjdCBjb21taXRfZXh0cmFfaGVhZGVyICpyZWFkX2NvbW1pdF9leHRyYV9oZWFkZXJfbGluZXMoY29uc3QgY2hhciAqYnVmLCBzaXplX3QgbGVuLCBjb25zdCBjaGFyICoqKTsKIApAQCAtNTcsMTAgKzU4LDkgQEAKIAogc3RydWN0IGNvbW1pdCAqbG9va3VwX2NvbW1pdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewotCXN0cnVjdCBvYmplY3QgKm9iaiA9IGxvb2t1cF9vYmplY3Qociwgb2lkLT5oYXNoKTsKKwlzdHJ1Y3Qgb2JqZWN0ICpvYmogPSBsb29rdXBfb2JqZWN0KHIsIG9pZCk7CiAJaWYgKCFvYmopCi0JCXJldHVybiBjcmVhdGVfb2JqZWN0KHIsIG9pZC0+aGFzaCwKLQkJCQkgICAgIGFsbG9jX2NvbW1pdF9ub2RlKHIpKTsKKwkJcmV0dXJuIGNyZWF0ZV9vYmplY3Qociwgb2lkLCBhbGxvY19jb21taXRfbm9kZShyKSk7CiAJcmV0dXJuIG9iamVjdF9hc190eXBlKHIsIG9iaiwgT0JKX0NPTU1JVCwgMCk7CiB9CiAKQEAgLTI5OSwxMyArMjk5LDE1IEBACiAJcmV0dXJuIHYtPmJ1ZmZlcjsKIH0KIAotY29uc3Qgdm9pZCAqZ2V0X2NvbW1pdF9idWZmZXIoY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0LCB1bnNpZ25lZCBsb25nICpzaXplcCkKK2NvbnN0IHZvaWQgKnJlcG9fZ2V0X2NvbW1pdF9idWZmZXIoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJICAgY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0LAorCQkJCSAgIHVuc2lnbmVkIGxvbmcgKnNpemVwKQogewotCWNvbnN0IHZvaWQgKnJldCA9IGdldF9jYWNoZWRfY29tbWl0X2J1ZmZlcih0aGVfcmVwb3NpdG9yeSwgY29tbWl0LCBzaXplcCk7CisJY29uc3Qgdm9pZCAqcmV0ID0gZ2V0X2NhY2hlZF9jb21taXRfYnVmZmVyKHIsIGNvbW1pdCwgc2l6ZXApOwogCWlmICghcmV0KSB7CiAJCWVudW0gb2JqZWN0X3R5cGUgdHlwZTsKIAkJdW5zaWduZWQgbG9uZyBzaXplOwotCQlyZXQgPSByZWFkX29iamVjdF9maWxlKCZjb21taXQtPm9iamVjdC5vaWQsICZ0eXBlLCAmc2l6ZSk7CisJCXJldCA9IHJlcG9fcmVhZF9vYmplY3RfZmlsZShyLCAmY29tbWl0LT5vYmplY3Qub2lkLCAmdHlwZSwgJnNpemUpOwogCQlpZiAoIXJldCkKIAkJCWRpZSgiY2Fubm90IHJlYWQgY29tbWl0IG9iamVjdCAlcyIsCiAJCQkgICAgb2lkX3RvX2hleCgmY29tbWl0LT5vYmplY3Qub2lkKSk7CkBAIC0zMTgsNDcgKzMyMCw1NSBAQAogCXJldHVybiByZXQ7CiB9CiAKLXZvaWQgdW51c2VfY29tbWl0X2J1ZmZlcihjb25zdCBzdHJ1Y3QgY29tbWl0ICpjb21taXQsIGNvbnN0IHZvaWQgKmJ1ZmZlcikKK3ZvaWQgcmVwb191bnVzZV9jb21taXRfYnVmZmVyKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgICAgY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0LAorCQkJICAgICAgY29uc3Qgdm9pZCAqYnVmZmVyKQogewogCXN0cnVjdCBjb21taXRfYnVmZmVyICp2ID0gYnVmZmVyX3NsYWJfcGVlaygKLQkJdGhlX3JlcG9zaXRvcnktPnBhcnNlZF9vYmplY3RzLT5idWZmZXJfc2xhYiwgY29tbWl0KTsKKwkJci0+cGFyc2VkX29iamVjdHMtPmJ1ZmZlcl9zbGFiLCBjb21taXQpOwogCWlmICghKHYgJiYgdi0+YnVmZmVyID09IGJ1ZmZlcikpCiAJCWZyZWUoKHZvaWQgKilidWZmZXIpOwogfQogCi12b2lkIGZyZWVfY29tbWl0X2J1ZmZlcihzdHJ1Y3QgY29tbWl0ICpjb21taXQpCit2b2lkIGZyZWVfY29tbWl0X2J1ZmZlcihzdHJ1Y3QgcGFyc2VkX29iamVjdF9wb29sICpwb29sLCBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCiB7CiAJc3RydWN0IGNvbW1pdF9idWZmZXIgKnYgPSBidWZmZXJfc2xhYl9wZWVrKAotCQl0aGVfcmVwb3NpdG9yeS0+cGFyc2VkX29iamVjdHMtPmJ1ZmZlcl9zbGFiLCBjb21taXQpOworCQlwb29sLT5idWZmZXJfc2xhYiwgY29tbWl0KTsKIAlpZiAodikgewogCQlGUkVFX0FORF9OVUxMKHYtPmJ1ZmZlcik7CiAJCXYtPnNpemUgPSAwOwogCX0KIH0KIAotc3RydWN0IHRyZWUgKmdldF9jb21taXRfdHJlZShjb25zdCBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCitzdGF0aWMgaW5saW5lIHZvaWQgc2V0X2NvbW1pdF90cmVlKHN0cnVjdCBjb21taXQgKmMsIHN0cnVjdCB0cmVlICp0KQoreworCWMtPm1heWJlX3RyZWUgPSB0OworfQorCitzdHJ1Y3QgdHJlZSAqcmVwb19nZXRfY29tbWl0X3RyZWUoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJICBjb25zdCBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCiB7CiAJaWYgKGNvbW1pdC0+bWF5YmVfdHJlZSB8fCAhY29tbWl0LT5vYmplY3QucGFyc2VkKQogCQlyZXR1cm4gY29tbWl0LT5tYXliZV90cmVlOwogCi0JaWYgKGNvbW1pdC0+Z3JhcGhfcG9zID09IENPTU1JVF9OT1RfRlJPTV9HUkFQSCkKLQkJQlVHKCJjb21taXQgaGFzIE5VTEwgdHJlZSwgYnV0IHdhcyBub3QgbG9hZGVkIGZyb20gY29tbWl0LWdyYXBoIik7CisJaWYgKGNvbW1pdC0+Z3JhcGhfcG9zICE9IENPTU1JVF9OT1RfRlJPTV9HUkFQSCkKKwkJcmV0dXJuIGdldF9jb21taXRfdHJlZV9pbl9ncmFwaChyLCBjb21taXQpOwogCi0JcmV0dXJuIGdldF9jb21taXRfdHJlZV9pbl9ncmFwaCh0aGVfcmVwb3NpdG9yeSwgY29tbWl0KTsKKwlyZXR1cm4gTlVMTDsKIH0KIAogc3RydWN0IG9iamVjdF9pZCAqZ2V0X2NvbW1pdF90cmVlX29pZChjb25zdCBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCiB7Ci0JcmV0dXJuICZnZXRfY29tbWl0X3RyZWUoY29tbWl0KS0+b2JqZWN0Lm9pZDsKKwlzdHJ1Y3QgdHJlZSAqdHJlZSA9IGdldF9jb21taXRfdHJlZShjb21taXQpOworCXJldHVybiB0cmVlID8gJnRyZWUtPm9iamVjdC5vaWQgOiBOVUxMOwogfQogCi12b2lkIHJlbGVhc2VfY29tbWl0X21lbW9yeShzdHJ1Y3QgY29tbWl0ICpjKQordm9pZCByZWxlYXNlX2NvbW1pdF9tZW1vcnkoc3RydWN0IHBhcnNlZF9vYmplY3RfcG9vbCAqcG9vbCwgc3RydWN0IGNvbW1pdCAqYykKIHsKLQljLT5tYXliZV90cmVlID0gTlVMTDsKKwlzZXRfY29tbWl0X3RyZWUoYywgTlVMTCk7CisJZnJlZV9jb21taXRfYnVmZmVyKHBvb2wsIGMpOwogCWMtPmluZGV4ID0gMDsKLQlmcmVlX2NvbW1pdF9idWZmZXIoYyk7CiAJZnJlZV9jb21taXRfbGlzdChjLT5wYXJlbnRzKTsKLQkvKiBUT0RPOiB3aGF0IGFib3V0IGNvbW1pdC0+dXRpbD8gKi8KIAogCWMtPm9iamVjdC5wYXJzZWQgPSAwOwogfQpAQCAtMzkyLDEwICs0MDIsMjIgQEAKIAlzdHJ1Y3QgY29tbWl0X2dyYWZ0ICpncmFmdDsKIAljb25zdCBpbnQgdHJlZV9lbnRyeV9sZW4gPSB0aGVfaGFzaF9hbGdvLT5oZXhzeiArIDU7CiAJY29uc3QgaW50IHBhcmVudF9lbnRyeV9sZW4gPSB0aGVfaGFzaF9hbGdvLT5oZXhzeiArIDc7CisJc3RydWN0IHRyZWUgKnRyZWU7CiAKIAlpZiAoaXRlbS0+b2JqZWN0LnBhcnNlZCkKIAkJcmV0dXJuIDA7Ci0JaXRlbS0+b2JqZWN0LnBhcnNlZCA9IDE7CisKKwlpZiAoaXRlbS0+cGFyZW50cykgeworCQkvKgorCQkgKiBQcmVzdW1hYmx5IHRoaXMgaXMgbGVmdG92ZXIgZnJvbSBhbiBlYXJsaWVyIGZhaWxlZCBwYXJzZTsKKwkJICogY2xlYXIgaXQgb3V0IGluIHByZXBhcmF0aW9uIGZvciB1cyByZS1wYXJzaW5nICh3ZSdsbCBoaXQgdGhlCisJCSAqIHNhbWUgZXJyb3IsIGJ1dCB0aGF0J3MgZ29vZCwgc2luY2UgaXQgbGV0cyBvdXIgY2FsbGVyIGtub3cKKwkJICogdGhlIHJlc3VsdCBjYW5ub3QgYmUgdHJ1c3RlZC4KKwkJICovCisJCWZyZWVfY29tbWl0X2xpc3QoaXRlbS0+cGFyZW50cyk7CisJCWl0ZW0tPnBhcmVudHMgPSBOVUxMOworCX0KKwogCXRhaWwgKz0gc2l6ZTsKIAlpZiAodGFpbCA8PSBidWZwdHIgKyB0cmVlX2VudHJ5X2xlbiArIDEgfHwgbWVtY21wKGJ1ZnB0ciwgInRyZWUgIiwgNSkgfHwKIAkJCWJ1ZnB0clt0cmVlX2VudHJ5X2xlbl0gIT0gJ1xuJykKQEAgLTQwMyw3ICs0MjUsMTIgQEAKIAlpZiAoZ2V0X29pZF9oZXgoYnVmcHRyICsgNSwgJnBhcmVudCkgPCAwKQogCQlyZXR1cm4gZXJyb3IoImJhZCB0cmVlIHBvaW50ZXIgaW4gY29tbWl0ICVzIiwKIAkJCSAgICAgb2lkX3RvX2hleCgmaXRlbS0+b2JqZWN0Lm9pZCkpOwotCWl0ZW0tPm1heWJlX3RyZWUgPSBsb29rdXBfdHJlZShyLCAmcGFyZW50KTsKKwl0cmVlID0gbG9va3VwX3RyZWUociwgJnBhcmVudCk7CisJaWYgKCF0cmVlKQorCQlyZXR1cm4gZXJyb3IoImJhZCB0cmVlIHBvaW50ZXIgJXMgaW4gY29tbWl0ICVzIiwKKwkJCSAgICAgb2lkX3RvX2hleCgmcGFyZW50KSwKKwkJCSAgICAgb2lkX3RvX2hleCgmaXRlbS0+b2JqZWN0Lm9pZCkpOworCXNldF9jb21taXRfdHJlZShpdGVtLCB0cmVlKTsKIAlidWZwdHIgKz0gdHJlZV9lbnRyeV9sZW4gKyAxOyAvKiAidHJlZSAiICsgImhleCBzaGExIiArICJcbiIgKi8KIAlwcHRyID0gJml0ZW0tPnBhcmVudHM7CiAKQEAgLTQyMyw4ICs0NTAsMTEgQEAKIAkJaWYgKGdyYWZ0ICYmIChncmFmdC0+bnJfcGFyZW50IDwgMCB8fCBncmFmdHNfcmVwbGFjZV9wYXJlbnRzKSkKIAkJCWNvbnRpbnVlOwogCQluZXdfcGFyZW50ID0gbG9va3VwX2NvbW1pdChyLCAmcGFyZW50KTsKLQkJaWYgKG5ld19wYXJlbnQpCi0JCQlwcHRyID0gJmNvbW1pdF9saXN0X2luc2VydChuZXdfcGFyZW50LCBwcHRyKS0+bmV4dDsKKwkJaWYgKCFuZXdfcGFyZW50KQorCQkJcmV0dXJuIGVycm9yKCJiYWQgcGFyZW50ICVzIGluIGNvbW1pdCAlcyIsCisJCQkJICAgICBvaWRfdG9faGV4KCZwYXJlbnQpLAorCQkJCSAgICAgb2lkX3RvX2hleCgmaXRlbS0+b2JqZWN0Lm9pZCkpOworCQlwcHRyID0gJmNvbW1pdF9saXN0X2luc2VydChuZXdfcGFyZW50LCBwcHRyKS0+bmV4dDsKIAl9CiAJaWYgKGdyYWZ0KSB7CiAJCWludCBpOwpAQCAtNDMzLDE5ICs0NjMsMjUgQEAKIAkJCW5ld19wYXJlbnQgPSBsb29rdXBfY29tbWl0KHIsCiAJCQkJCQkgICAmZ3JhZnQtPnBhcmVudFtpXSk7CiAJCQlpZiAoIW5ld19wYXJlbnQpCi0JCQkJY29udGludWU7CisJCQkJcmV0dXJuIGVycm9yKCJiYWQgZ3JhZnQgcGFyZW50ICVzIGluIGNvbW1pdCAlcyIsCisJCQkJCSAgICAgb2lkX3RvX2hleCgmZ3JhZnQtPnBhcmVudFtpXSksCisJCQkJCSAgICAgb2lkX3RvX2hleCgmaXRlbS0+b2JqZWN0Lm9pZCkpOwogCQkJcHB0ciA9ICZjb21taXRfbGlzdF9pbnNlcnQobmV3X3BhcmVudCwgcHB0ciktPm5leHQ7CiAJCX0KIAl9CiAJaXRlbS0+ZGF0ZSA9IHBhcnNlX2NvbW1pdF9kYXRlKGJ1ZnB0ciwgdGFpbCk7CiAKIAlpZiAoY2hlY2tfZ3JhcGgpCi0JCWxvYWRfY29tbWl0X2dyYXBoX2luZm8odGhlX3JlcG9zaXRvcnksIGl0ZW0pOworCQlsb2FkX2NvbW1pdF9ncmFwaF9pbmZvKHIsIGl0ZW0pOwogCisJaXRlbS0+b2JqZWN0LnBhcnNlZCA9IDE7CiAJcmV0dXJuIDA7CiB9CiAKLWludCBwYXJzZV9jb21taXRfaW50ZXJuYWwoc3RydWN0IGNvbW1pdCAqaXRlbSwgaW50IHF1aWV0X29uX21pc3NpbmcsIGludCB1c2VfY29tbWl0X2dyYXBoKQoraW50IHJlcG9fcGFyc2VfY29tbWl0X2ludGVybmFsKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgICAgIHN0cnVjdCBjb21taXQgKml0ZW0sCisJCQkgICAgICAgaW50IHF1aWV0X29uX21pc3NpbmcsCisJCQkgICAgICAgaW50IHVzZV9jb21taXRfZ3JhcGgpCiB7CiAJZW51bSBvYmplY3RfdHlwZSB0eXBlOwogCXZvaWQgKmJ1ZmZlcjsKQEAgLTQ1Niw5ICs0OTIsOSBAQAogCQlyZXR1cm4gLTE7CiAJaWYgKGl0ZW0tPm9iamVjdC5wYXJzZWQpCiAJCXJldHVybiAwOwotCWlmICh1c2VfY29tbWl0X2dyYXBoICYmIHBhcnNlX2NvbW1pdF9pbl9ncmFwaCh0aGVfcmVwb3NpdG9yeSwgaXRlbSkpCisJaWYgKHVzZV9jb21taXRfZ3JhcGggJiYgcGFyc2VfY29tbWl0X2luX2dyYXBoKHIsIGl0ZW0pKQogCQlyZXR1cm4gMDsKLQlidWZmZXIgPSByZWFkX29iamVjdF9maWxlKCZpdGVtLT5vYmplY3Qub2lkLCAmdHlwZSwgJnNpemUpOworCWJ1ZmZlciA9IHJlcG9fcmVhZF9vYmplY3RfZmlsZShyLCAmaXRlbS0+b2JqZWN0Lm9pZCwgJnR5cGUsICZzaXplKTsKIAlpZiAoIWJ1ZmZlcikKIAkJcmV0dXJuIHF1aWV0X29uX21pc3NpbmcgPyAtMSA6CiAJCQllcnJvcigiQ291bGQgbm90IHJlYWQgJXMiLApAQCAtNDY5LDE4ICs1MDUsMTkgQEAKIAkJCSAgICAgb2lkX3RvX2hleCgmaXRlbS0+b2JqZWN0Lm9pZCkpOwogCX0KIAotCXJldCA9IHBhcnNlX2NvbW1pdF9idWZmZXIodGhlX3JlcG9zaXRvcnksIGl0ZW0sIGJ1ZmZlciwgc2l6ZSwgMCk7CisJcmV0ID0gcGFyc2VfY29tbWl0X2J1ZmZlcihyLCBpdGVtLCBidWZmZXIsIHNpemUsIDApOwogCWlmIChzYXZlX2NvbW1pdF9idWZmZXIgJiYgIXJldCkgewotCQlzZXRfY29tbWl0X2J1ZmZlcih0aGVfcmVwb3NpdG9yeSwgaXRlbSwgYnVmZmVyLCBzaXplKTsKKwkJc2V0X2NvbW1pdF9idWZmZXIociwgaXRlbSwgYnVmZmVyLCBzaXplKTsKIAkJcmV0dXJuIDA7CiAJfQogCWZyZWUoYnVmZmVyKTsKIAlyZXR1cm4gcmV0OwogfQogCi1pbnQgcGFyc2VfY29tbWl0X2dlbnRseShzdHJ1Y3QgY29tbWl0ICppdGVtLCBpbnQgcXVpZXRfb25fbWlzc2luZykKK2ludCByZXBvX3BhcnNlX2NvbW1pdF9nZW50bHkoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgICAgIHN0cnVjdCBjb21taXQgKml0ZW0sIGludCBxdWlldF9vbl9taXNzaW5nKQogewotCXJldHVybiBwYXJzZV9jb21taXRfaW50ZXJuYWwoaXRlbSwgcXVpZXRfb25fbWlzc2luZywgMSk7CisJcmV0dXJuIHJlcG9fcGFyc2VfY29tbWl0X2ludGVybmFsKHIsIGl0ZW0sIHF1aWV0X29uX21pc3NpbmcsIDEpOwogfQogCiB2b2lkIHBhcnNlX2NvbW1pdF9vcl9kaWUoc3RydWN0IGNvbW1pdCAqaXRlbSkKQEAgLTk1Niw3ICs5OTMsNyBAQAogCQkJc3RyYnVmX2luc2VydChidWYsIGluc3BvcywgZ3BnX3NpZ19oZWFkZXIsIGdwZ19zaWdfaGVhZGVyX2xlbik7CiAJCQlpbnNwb3MgKz0gZ3BnX3NpZ19oZWFkZXJfbGVuOwogCQl9Ci0JCXN0cmJ1Zl9pbnNlcnQoYnVmLCBpbnNwb3MrKywgIiAiLCAxKTsKKwkJc3RyYnVmX2luc2VydHN0cihidWYsIGluc3BvcysrLCAiICIpOwogCQlzdHJidWZfaW5zZXJ0KGJ1ZiwgaW5zcG9zLCBib2wsIGxlbik7CiAJCWluc3BvcyArPSBsZW47CiAJCWNvcHlwb3MgKz0gbGVuOwpAQCAtMTA5OSwyMSArMTEzNiwyMyBAQAogCXJldHVybiByZXQ7CiB9CiAKLXZvaWQgdmVyaWZ5X21lcmdlX3NpZ25hdHVyZShzdHJ1Y3QgY29tbWl0ICpjb21taXQsIGludCB2ZXJib3NpdHkpCit2b2lkIHZlcmlmeV9tZXJnZV9zaWduYXR1cmUoc3RydWN0IGNvbW1pdCAqY29tbWl0LCBpbnQgdmVyYm9zaXR5LAorCQkJICAgIGludCBjaGVja190cnVzdCkKIHsKIAljaGFyIGhleFtHSVRfTUFYX0hFWFNaICsgMV07CiAJc3RydWN0IHNpZ25hdHVyZV9jaGVjayBzaWduYXR1cmVfY2hlY2s7CisJaW50IHJldDsKIAltZW1zZXQoJnNpZ25hdHVyZV9jaGVjaywgMCwgc2l6ZW9mKHNpZ25hdHVyZV9jaGVjaykpOwogCi0JY2hlY2tfY29tbWl0X3NpZ25hdHVyZShjb21taXQsICZzaWduYXR1cmVfY2hlY2spOworCXJldCA9IGNoZWNrX2NvbW1pdF9zaWduYXR1cmUoY29tbWl0LCAmc2lnbmF0dXJlX2NoZWNrKTsKIAogCWZpbmRfdW5pcXVlX2FiYnJldl9yKGhleCwgJmNvbW1pdC0+b2JqZWN0Lm9pZCwgREVGQVVMVF9BQkJSRVYpOwogCXN3aXRjaCAoc2lnbmF0dXJlX2NoZWNrLnJlc3VsdCkgewogCWNhc2UgJ0cnOgorCQlpZiAocmV0IHx8IChjaGVja190cnVzdCAmJiBzaWduYXR1cmVfY2hlY2sudHJ1c3RfbGV2ZWwgPCBUUlVTVF9NQVJHSU5BTCkpCisJCQlkaWUoXygiQ29tbWl0ICVzIGhhcyBhbiB1bnRydXN0ZWQgR1BHIHNpZ25hdHVyZSwgIgorCQkJICAgICAgImFsbGVnZWRseSBieSAlcy4iKSwgaGV4LCBzaWduYXR1cmVfY2hlY2suc2lnbmVyKTsKIAkJYnJlYWs7Ci0JY2FzZSAnVSc6Ci0JCWRpZShfKCJDb21taXQgJXMgaGFzIGFuIHVudHJ1c3RlZCBHUEcgc2lnbmF0dXJlLCAiCi0JCSAgICAgICJhbGxlZ2VkbHkgYnkgJXMuIiksIGhleCwgc2lnbmF0dXJlX2NoZWNrLnNpZ25lcik7CiAJY2FzZSAnQic6CiAJCWRpZShfKCJDb21taXQgJXMgaGFzIGEgYmFkIEdQRyBzaWduYXR1cmUgIgogCQkgICAgICAiYWxsZWdlZGx5IGJ5ICVzLiIpLCBoZXgsIHNpZ25hdHVyZV9jaGVjay5zaWduZXIpOwpAQCAtMTU2OCwzICsxNjA3LDI2IEBACiAJfQogCXJldHVybiBib2MgPyBsZW4gLSBib2MgOiBsZW4gLSBjdXRvZmY7CiB9CisKK2ludCBydW5fY29tbWl0X2hvb2soaW50IGVkaXRvcl9pc191c2VkLCBjb25zdCBjaGFyICppbmRleF9maWxlLAorCQkgICAgY29uc3QgY2hhciAqbmFtZSwgLi4uKQoreworCXN0cnVjdCBhcmd2X2FycmF5IGhvb2tfZW52ID0gQVJHVl9BUlJBWV9JTklUOworCXZhX2xpc3QgYXJnczsKKwlpbnQgcmV0OworCisJYXJndl9hcnJheV9wdXNoZigmaG9va19lbnYsICJHSVRfSU5ERVhfRklMRT0lcyIsIGluZGV4X2ZpbGUpOworCisJLyoKKwkgKiBMZXQgdGhlIGhvb2sga25vdyB0aGF0IG5vIGVkaXRvciB3aWxsIGJlIGxhdW5jaGVkLgorCSAqLworCWlmICghZWRpdG9yX2lzX3VzZWQpCisJCWFyZ3ZfYXJyYXlfcHVzaCgmaG9va19lbnYsICJHSVRfRURJVE9SPToiKTsKKworCXZhX3N0YXJ0KGFyZ3MsIG5hbWUpOworCXJldCA9IHJ1bl9ob29rX3ZlKGhvb2tfZW52LmFyZ3YsbmFtZSwgYXJncyk7CisJdmFfZW5kKGFyZ3MpOworCWFyZ3ZfYXJyYXlfY2xlYXIoJmhvb2tfZW52KTsKKworCXJldHVybiByZXQ7Cit9CmRpZmYgLS1naXQgYS9jb21taXQuaCBiL2NvbW1pdC5oCmluZGV4IDk4NjY0NTMuLjAwOGEwZmEgMTAwNjQ0Ci0tLSBhL2NvbW1pdC5oCisrKyBiL2NvbW1pdC5oCkBAIC0zMiw3ICszMiw3IEBACiAKIAkvKgogCSAqIElmIHRoZSBjb21taXQgaXMgbG9hZGVkIGZyb20gdGhlIGNvbW1pdC1ncmFwaCBmaWxlLCB0aGVuIHRoaXMKLQkgKiBtZW1iZXIgbWF5IGJlIE5VTEwuIE9ubHkgYWNjZXNzIGl0IHRocm91Z2ggZ2V0X2NvbW1pdF90cmVlKCkKKwkgKiBtZW1iZXIgbWF5IGJlIE5VTEwuIE9ubHkgYWNjZXNzIGl0IHRocm91Z2ggcmVwb19nZXRfY29tbWl0X3RyZWUoKQogCSAqIG9yIGdldF9jb21taXRfdHJlZV9vaWQoKS4KIAkgKi8KIAlzdHJ1Y3QgdHJlZSAqbWF5YmVfdHJlZTsKQEAgLTgwLDEyICs4MCwyNyBAQAogc3RydWN0IGNvbW1pdCAqbG9va3VwX2NvbW1pdF9vcl9kaWUoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBjb25zdCBjaGFyICpyZWZfbmFtZSk7CiAKIGludCBwYXJzZV9jb21taXRfYnVmZmVyKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgY29tbWl0ICppdGVtLCBjb25zdCB2b2lkICpidWZmZXIsIHVuc2lnbmVkIGxvbmcgc2l6ZSwgaW50IGNoZWNrX2dyYXBoKTsKLWludCBwYXJzZV9jb21taXRfaW50ZXJuYWwoc3RydWN0IGNvbW1pdCAqaXRlbSwgaW50IHF1aWV0X29uX21pc3NpbmcsIGludCB1c2VfY29tbWl0X2dyYXBoKTsKLWludCBwYXJzZV9jb21taXRfZ2VudGx5KHN0cnVjdCBjb21taXQgKml0ZW0sIGludCBxdWlldF9vbl9taXNzaW5nKTsKLXN0YXRpYyBpbmxpbmUgaW50IHBhcnNlX2NvbW1pdChzdHJ1Y3QgY29tbWl0ICppdGVtKQoraW50IHJlcG9fcGFyc2VfY29tbWl0X2ludGVybmFsKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgY29tbWl0ICppdGVtLAorCQkJICAgICAgIGludCBxdWlldF9vbl9taXNzaW5nLCBpbnQgdXNlX2NvbW1pdF9ncmFwaCk7CitpbnQgcmVwb19wYXJzZV9jb21taXRfZ2VudGx5KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgICBzdHJ1Y3QgY29tbWl0ICppdGVtLAorCQkJICAgICBpbnQgcXVpZXRfb25fbWlzc2luZyk7CitzdGF0aWMgaW5saW5lIGludCByZXBvX3BhcnNlX2NvbW1pdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IGNvbW1pdCAqaXRlbSkKIHsKLQlyZXR1cm4gcGFyc2VfY29tbWl0X2dlbnRseShpdGVtLCAwKTsKKwlyZXR1cm4gcmVwb19wYXJzZV9jb21taXRfZ2VudGx5KHIsIGl0ZW0sIDApOwogfQorCitzdGF0aWMgaW5saW5lIGludCBwYXJzZV9jb21taXRfbm9fZ3JhcGgoc3RydWN0IGNvbW1pdCAqY29tbWl0KQoreworCXJldHVybiByZXBvX3BhcnNlX2NvbW1pdF9pbnRlcm5hbCh0aGVfcmVwb3NpdG9yeSwgY29tbWl0LCAwLCAwKTsKK30KKworI2lmbmRlZiBOT19USEVfUkVQT1NJVE9SWV9DT01QQVRJQklMSVRZX01BQ1JPUworI2RlZmluZSBwYXJzZV9jb21taXRfaW50ZXJuYWwoaXRlbSwgcXVpZXQsIHVzZSkgcmVwb19wYXJzZV9jb21taXRfaW50ZXJuYWwodGhlX3JlcG9zaXRvcnksIGl0ZW0sIHF1aWV0LCB1c2UpCisjZGVmaW5lIHBhcnNlX2NvbW1pdF9nZW50bHkoaXRlbSwgcXVpZXQpIHJlcG9fcGFyc2VfY29tbWl0X2dlbnRseSh0aGVfcmVwb3NpdG9yeSwgaXRlbSwgcXVpZXQpCisjZGVmaW5lIHBhcnNlX2NvbW1pdChpdGVtKSByZXBvX3BhcnNlX2NvbW1pdCh0aGVfcmVwb3NpdG9yeSwgaXRlbSkKKyNlbmRpZgorCiB2b2lkIHBhcnNlX2NvbW1pdF9vcl9kaWUoc3RydWN0IGNvbW1pdCAqaXRlbSk7CiAKIHN0cnVjdCBidWZmZXJfc2xhYjsKQEAgLTEwOSwyOSArMTI0LDQwIEBACiAgKiBmcm9tIGRpc2suIFRoZSByZXN1bHRpbmcgbWVtb3J5IHNob3VsZCBub3QgYmUgbW9kaWZpZWQsIGFuZCBtdXN0IGJlIGdpdmVuCiAgKiB0byB1bnVzZV9jb21taXRfYnVmZmVyIHdoZW4gdGhlIGNhbGxlciBpcyBkb25lLgogICovCi1jb25zdCB2b2lkICpnZXRfY29tbWl0X2J1ZmZlcihjb25zdCBzdHJ1Y3QgY29tbWl0ICosIHVuc2lnbmVkIGxvbmcgKnNpemUpOworY29uc3Qgdm9pZCAqcmVwb19nZXRfY29tbWl0X2J1ZmZlcihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgICBjb25zdCBzdHJ1Y3QgY29tbWl0ICosCisJCQkJICAgdW5zaWduZWQgbG9uZyAqc2l6ZSk7CisjaWZuZGVmIE5PX1RIRV9SRVBPU0lUT1JZX0NPTVBBVElCSUxJVFlfTUFDUk9TCisjZGVmaW5lIGdldF9jb21taXRfYnVmZmVyKGMsIHMpIHJlcG9fZ2V0X2NvbW1pdF9idWZmZXIodGhlX3JlcG9zaXRvcnksIGMsIHMpCisjZW5kaWYKIAogLyoKLSAqIFRlbGwgdGhlIGNvbW1pdCBzdWJzeXRlbSB0aGF0IHdlIGFyZSBkb25lIHdpdGggYSBwYXJ0aWN1bGFyIGNvbW1pdCBidWZmZXIuCisgKiBUZWxsIHRoZSBjb21taXQgc3Vic3lzdGVtIHRoYXQgd2UgYXJlIGRvbmUgd2l0aCBhIHBhcnRpY3VsYXIgY29tbWl0IGJ1ZmZlci4KICAqIFRoZSBjb21taXQgYW5kIGJ1ZmZlciBzaG91bGQgYmUgdGhlIGlucHV0IGFuZCByZXR1cm4gdmFsdWUsIHJlc3BlY3RpdmVseSwKICAqIGZyb20gYW4gZWFybGllciBjYWxsIHRvIGdldF9jb21taXRfYnVmZmVyLiAgVGhlIGJ1ZmZlciBtYXkgb3IgbWF5IG5vdCBiZQogICogZnJlZWQgYnkgdGhpcyBjYWxsOyBjYWxsZXJzIHNob3VsZCBub3QgYWNjZXNzIHRoZSBtZW1vcnkgYWZ0ZXJ3YXJkcy4KICAqLwotdm9pZCB1bnVzZV9jb21taXRfYnVmZmVyKGNvbnN0IHN0cnVjdCBjb21taXQgKiwgY29uc3Qgdm9pZCAqYnVmZmVyKTsKK3ZvaWQgcmVwb191bnVzZV9jb21taXRfYnVmZmVyKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgICAgY29uc3Qgc3RydWN0IGNvbW1pdCAqLAorCQkJICAgICAgY29uc3Qgdm9pZCAqYnVmZmVyKTsKKyNpZm5kZWYgTk9fVEhFX1JFUE9TSVRPUllfQ09NUEFUSUJJTElUWV9NQUNST1MKKyNkZWZpbmUgdW51c2VfY29tbWl0X2J1ZmZlcihjLCBiKSByZXBvX3VudXNlX2NvbW1pdF9idWZmZXIodGhlX3JlcG9zaXRvcnksIGMsIGIpCisjZW5kaWYKIAogLyoKICAqIEZyZWUgYW55IGNhY2hlZCBvYmplY3QgYnVmZmVyIGFzc29jaWF0ZWQgd2l0aCB0aGUgY29tbWl0LgogICovCi12b2lkIGZyZWVfY29tbWl0X2J1ZmZlcihzdHJ1Y3QgY29tbWl0ICopOwordm9pZCBmcmVlX2NvbW1pdF9idWZmZXIoc3RydWN0IHBhcnNlZF9vYmplY3RfcG9vbCAqcG9vbCwgc3RydWN0IGNvbW1pdCAqKTsKIAotc3RydWN0IHRyZWUgKmdldF9jb21taXRfdHJlZShjb25zdCBzdHJ1Y3QgY29tbWl0ICopOworc3RydWN0IHRyZWUgKnJlcG9fZ2V0X2NvbW1pdF90cmVlKHN0cnVjdCByZXBvc2l0b3J5ICosIGNvbnN0IHN0cnVjdCBjb21taXQgKik7CisjZGVmaW5lIGdldF9jb21taXRfdHJlZShjKSByZXBvX2dldF9jb21taXRfdHJlZSh0aGVfcmVwb3NpdG9yeSwgYykKIHN0cnVjdCBvYmplY3RfaWQgKmdldF9jb21taXRfdHJlZV9vaWQoY29uc3Qgc3RydWN0IGNvbW1pdCAqKTsKIAogLyoKICAqIFJlbGVhc2UgbWVtb3J5IHJlbGF0ZWQgdG8gYSBjb21taXQsIGluY2x1ZGluZyB0aGUgcGFyZW50IGxpc3QgYW5kCiAgKiBhbnkgY2FjaGVkIG9iamVjdCBidWZmZXIuCiAgKi8KLXZvaWQgcmVsZWFzZV9jb21taXRfbWVtb3J5KHN0cnVjdCBjb21taXQgKmMpOwordm9pZCByZWxlYXNlX2NvbW1pdF9tZW1vcnkoc3RydWN0IHBhcnNlZF9vYmplY3RfcG9vbCAqcG9vbCwgc3RydWN0IGNvbW1pdCAqYyk7CiAKIC8qCiAgKiBEaXNhc3NvY2lhdGUgYW55IGNhY2hlZCBvYmplY3QgYnVmZmVyIGZyb20gdGhlIGNvbW1pdCwgYnV0IGRvIG5vdCBmcmVlIGl0LgpAQCAtMTU4LDExICsxODQsMTkgQEAKIAogc3RydWN0IHJldl9pbmZvOyAvKiBpbiByZXZpc2lvbi5oLCBpdCBjaXJjdWxhcmx5IHVzZXMgZW51bSBjbWl0X2ZtdCAqLwogCi1leHRlcm4gaW50IGhhc19ub25fYXNjaWkoY29uc3QgY2hhciAqdGV4dCk7Ci1leHRlcm4gY29uc3QgY2hhciAqbG9nbXNnX3JlZW5jb2RlKGNvbnN0IHN0cnVjdCBjb21taXQgKmNvbW1pdCwKLQkJCQkgICBjaGFyICoqY29tbWl0X2VuY29kaW5nLAotCQkJCSAgIGNvbnN0IGNoYXIgKm91dHB1dF9lbmNvZGluZyk7Ci1leHRlcm4gY29uc3QgY2hhciAqc2tpcF9ibGFua19saW5lcyhjb25zdCBjaGFyICptc2cpOworaW50IGhhc19ub25fYXNjaWkoY29uc3QgY2hhciAqdGV4dCk7Citjb25zdCBjaGFyICpsb2dtc2dfcmVlbmNvZGUoY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0LAorCQkJICAgIGNoYXIgKipjb21taXRfZW5jb2RpbmcsCisJCQkgICAgY29uc3QgY2hhciAqb3V0cHV0X2VuY29kaW5nKTsKK2NvbnN0IGNoYXIgKnJlcG9fbG9nbXNnX3JlZW5jb2RlKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSBjb25zdCBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCisJCQkJIGNoYXIgKipjb21taXRfZW5jb2RpbmcsCisJCQkJIGNvbnN0IGNoYXIgKm91dHB1dF9lbmNvZGluZyk7CisjaWZuZGVmIE5PX1RIRV9SRVBPU0lUT1JZX0NPTVBBVElCSUxJVFlfTUFDUk9TCisjZGVmaW5lIGxvZ21zZ19yZWVuY29kZShjLCBlbmMsIG91dCkgcmVwb19sb2dtc2dfcmVlbmNvZGUodGhlX3JlcG9zaXRvcnksIGMsIGVuYywgb3V0KQorI2VuZGlmCisKK2NvbnN0IGNoYXIgKnNraXBfYmxhbmtfbGluZXMoY29uc3QgY2hhciAqbXNnKTsKIAogLyoqIFJlbW92ZXMgdGhlIGZpcnN0IGNvbW1pdCBmcm9tIGEgbGlzdCBzb3J0ZWQgYnkgZGF0ZSwgYW5kIGFkZHMgYWxsCiAgKiBvZiBpdHMgcGFyZW50cy4KQEAgLTIxMywyMyArMjQ3LDI3IEBACiAKIHN0cnVjdCBvaWRfYXJyYXk7CiBzdHJ1Y3QgcmVmOwotZXh0ZXJuIGludCByZWdpc3Rlcl9zaGFsbG93KHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOwotZXh0ZXJuIGludCB1bnJlZ2lzdGVyX3NoYWxsb3coY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKLWV4dGVybiBpbnQgZm9yX2VhY2hfY29tbWl0X2dyYWZ0KGVhY2hfY29tbWl0X2dyYWZ0X2ZuLCB2b2lkICopOwotZXh0ZXJuIGludCBpc19yZXBvc2l0b3J5X3NoYWxsb3coc3RydWN0IHJlcG9zaXRvcnkgKnIpOwotZXh0ZXJuIHN0cnVjdCBjb21taXRfbGlzdCAqZ2V0X3NoYWxsb3dfY29tbWl0cyhzdHJ1Y3Qgb2JqZWN0X2FycmF5ICpoZWFkcywKLQkJaW50IGRlcHRoLCBpbnQgc2hhbGxvd19mbGFnLCBpbnQgbm90X3NoYWxsb3dfZmxhZyk7Ci1leHRlcm4gc3RydWN0IGNvbW1pdF9saXN0ICpnZXRfc2hhbGxvd19jb21taXRzX2J5X3Jldl9saXN0KAoraW50IHJlZ2lzdGVyX3NoYWxsb3coc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CitpbnQgdW5yZWdpc3Rlcl9zaGFsbG93KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CitpbnQgZm9yX2VhY2hfY29tbWl0X2dyYWZ0KGVhY2hfY29tbWl0X2dyYWZ0X2ZuLCB2b2lkICopOworaW50IGlzX3JlcG9zaXRvcnlfc2hhbGxvdyhzdHJ1Y3QgcmVwb3NpdG9yeSAqcik7CitzdHJ1Y3QgY29tbWl0X2xpc3QgKmdldF9zaGFsbG93X2NvbW1pdHMoc3RydWN0IG9iamVjdF9hcnJheSAqaGVhZHMsCisJCQkJCWludCBkZXB0aCwgaW50IHNoYWxsb3dfZmxhZywgaW50IG5vdF9zaGFsbG93X2ZsYWcpOworc3RydWN0IGNvbW1pdF9saXN0ICpnZXRfc2hhbGxvd19jb21taXRzX2J5X3Jldl9saXN0KAogCQlpbnQgYWMsIGNvbnN0IGNoYXIgKiphdiwgaW50IHNoYWxsb3dfZmxhZywgaW50IG5vdF9zaGFsbG93X2ZsYWcpOwotZXh0ZXJuIHZvaWQgc2V0X2FsdGVybmF0ZV9zaGFsbG93X2ZpbGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKnBhdGgsIGludCBvdmVycmlkZSk7Ci1leHRlcm4gaW50IHdyaXRlX3NoYWxsb3dfY29tbWl0cyhzdHJ1Y3Qgc3RyYnVmICpvdXQsIGludCB1c2VfcGFja19wcm90b2NvbCwKLQkJCQkgY29uc3Qgc3RydWN0IG9pZF9hcnJheSAqZXh0cmEpOwotZXh0ZXJuIHZvaWQgc2V0dXBfYWx0ZXJuYXRlX3NoYWxsb3coc3RydWN0IGxvY2tfZmlsZSAqc2hhbGxvd19sb2NrLAotCQkJCSAgICBjb25zdCBjaGFyICoqYWx0ZXJuYXRlX3NoYWxsb3dfZmlsZSwKLQkJCQkgICAgY29uc3Qgc3RydWN0IG9pZF9hcnJheSAqZXh0cmEpOwotZXh0ZXJuIGNvbnN0IGNoYXIgKnNldHVwX3RlbXBvcmFyeV9zaGFsbG93KGNvbnN0IHN0cnVjdCBvaWRfYXJyYXkgKmV4dHJhKTsKLWV4dGVybiB2b2lkIGFkdmVydGlzZV9zaGFsbG93X2dyYWZ0cyhpbnQpOwordm9pZCBzZXRfYWx0ZXJuYXRlX3NoYWxsb3dfZmlsZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqcGF0aCwgaW50IG92ZXJyaWRlKTsKK2ludCB3cml0ZV9zaGFsbG93X2NvbW1pdHMoc3RydWN0IHN0cmJ1ZiAqb3V0LCBpbnQgdXNlX3BhY2tfcHJvdG9jb2wsCisJCQkgIGNvbnN0IHN0cnVjdCBvaWRfYXJyYXkgKmV4dHJhKTsKK3ZvaWQgc2V0dXBfYWx0ZXJuYXRlX3NoYWxsb3coc3RydWN0IGxvY2tfZmlsZSAqc2hhbGxvd19sb2NrLAorCQkJICAgICBjb25zdCBjaGFyICoqYWx0ZXJuYXRlX3NoYWxsb3dfZmlsZSwKKwkJCSAgICAgY29uc3Qgc3RydWN0IG9pZF9hcnJheSAqZXh0cmEpOworY29uc3QgY2hhciAqc2V0dXBfdGVtcG9yYXJ5X3NoYWxsb3coY29uc3Qgc3RydWN0IG9pZF9hcnJheSAqZXh0cmEpOwordm9pZCBhZHZlcnRpc2Vfc2hhbGxvd19ncmFmdHMoaW50KTsKIAorLyoKKyAqIEluaXRpYWxpemUgd2l0aCBwcmVwYXJlX3NoYWxsb3dfaW5mbygpIG9yIHplcm8taW5pdGlhbGl6ZSAoZXF1aXZhbGVudCB0bworICogcHJlcGFyZV9zaGFsbG93X2luZm8gd2l0aCBhIE5VTEwgb2lkX2FycmF5KS4KKyAqLwogc3RydWN0IHNoYWxsb3dfaW5mbyB7CiAJc3RydWN0IG9pZF9hcnJheSAqc2hhbGxvdzsKIAlpbnQgKm91cnMsIG5yX291cnM7CkBAIC0yNDUsMjEgKzI4MywyMSBAQAogCWludCBucl9jb21taXRzOwogfTsKIAotZXh0ZXJuIHZvaWQgcHJlcGFyZV9zaGFsbG93X2luZm8oc3RydWN0IHNoYWxsb3dfaW5mbyAqLCBzdHJ1Y3Qgb2lkX2FycmF5ICopOwotZXh0ZXJuIHZvaWQgY2xlYXJfc2hhbGxvd19pbmZvKHN0cnVjdCBzaGFsbG93X2luZm8gKik7Ci1leHRlcm4gdm9pZCByZW1vdmVfbm9uZXhpc3RlbnRfdGhlaXJzX3NoYWxsb3coc3RydWN0IHNoYWxsb3dfaW5mbyAqKTsKLWV4dGVybiB2b2lkIGFzc2lnbl9zaGFsbG93X2NvbW1pdHNfdG9fcmVmcyhzdHJ1Y3Qgc2hhbGxvd19pbmZvICppbmZvLAotCQkJCQkgICB1aW50MzJfdCAqKnVzZWQsCi0JCQkJCSAgIGludCAqcmVmX3N0YXR1cyk7Ci1leHRlcm4gaW50IGRlbGF5ZWRfcmVhY2hhYmlsaXR5X3Rlc3Qoc3RydWN0IHNoYWxsb3dfaW5mbyAqc2ksIGludCBjKTsKK3ZvaWQgcHJlcGFyZV9zaGFsbG93X2luZm8oc3RydWN0IHNoYWxsb3dfaW5mbyAqLCBzdHJ1Y3Qgb2lkX2FycmF5ICopOwordm9pZCBjbGVhcl9zaGFsbG93X2luZm8oc3RydWN0IHNoYWxsb3dfaW5mbyAqKTsKK3ZvaWQgcmVtb3ZlX25vbmV4aXN0ZW50X3RoZWlyc19zaGFsbG93KHN0cnVjdCBzaGFsbG93X2luZm8gKik7Cit2b2lkIGFzc2lnbl9zaGFsbG93X2NvbW1pdHNfdG9fcmVmcyhzdHJ1Y3Qgc2hhbGxvd19pbmZvICppbmZvLAorCQkJCSAgICB1aW50MzJfdCAqKnVzZWQsCisJCQkJICAgIGludCAqcmVmX3N0YXR1cyk7CitpbnQgZGVsYXllZF9yZWFjaGFiaWxpdHlfdGVzdChzdHJ1Y3Qgc2hhbGxvd19pbmZvICpzaSwgaW50IGMpOwogI2RlZmluZSBQUlVORV9TSE9XX09OTFkgMQogI2RlZmluZSBQUlVORV9RVUlDSyAyCi1leHRlcm4gdm9pZCBwcnVuZV9zaGFsbG93KHVuc2lnbmVkIG9wdGlvbnMpOwordm9pZCBwcnVuZV9zaGFsbG93KHVuc2lnbmVkIG9wdGlvbnMpOwogZXh0ZXJuIHN0cnVjdCB0cmFjZV9rZXkgdHJhY2Vfc2hhbGxvdzsKIAotZXh0ZXJuIGludCBpbnRlcmFjdGl2ZV9hZGQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpwcmVmaXgsIGludCBwYXRjaCk7Ci1leHRlcm4gaW50IHJ1bl9hZGRfaW50ZXJhY3RpdmUoY29uc3QgY2hhciAqcmV2aXNpb24sIGNvbnN0IGNoYXIgKnBhdGNoX21vZGUsCi0JCQkgICAgICAgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYyk7CitpbnQgaW50ZXJhY3RpdmVfYWRkKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4LCBpbnQgcGF0Y2gpOworaW50IHJ1bl9hZGRfaW50ZXJhY3RpdmUoY29uc3QgY2hhciAqcmV2aXNpb24sIGNvbnN0IGNoYXIgKnBhdGNoX21vZGUsCisJCQljb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjKTsKIAogc3RydWN0IGNvbW1pdF9leHRyYV9oZWFkZXIgewogCXN0cnVjdCBjb21taXRfZXh0cmFfaGVhZGVyICpuZXh0OwpAQCAtMjY4LDI0ICszMDYsMjQgQEAKIAlzaXplX3QgbGVuOwogfTsKIAotZXh0ZXJuIHZvaWQgYXBwZW5kX21lcmdlX3RhZ19oZWFkZXJzKHN0cnVjdCBjb21taXRfbGlzdCAqcGFyZW50cywKLQkJCQkgICAgIHN0cnVjdCBjb21taXRfZXh0cmFfaGVhZGVyICoqKnRhaWwpOwordm9pZCBhcHBlbmRfbWVyZ2VfdGFnX2hlYWRlcnMoc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnRzLAorCQkJICAgICAgc3RydWN0IGNvbW1pdF9leHRyYV9oZWFkZXIgKioqdGFpbCk7CiAKLWV4dGVybiBpbnQgY29tbWl0X3RyZWUoY29uc3QgY2hhciAqbXNnLCBzaXplX3QgbXNnX2xlbiwKLQkJICAgICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKnRyZWUsCi0JCSAgICAgICBzdHJ1Y3QgY29tbWl0X2xpc3QgKnBhcmVudHMsIHN0cnVjdCBvYmplY3RfaWQgKnJldCwKLQkJICAgICAgIGNvbnN0IGNoYXIgKmF1dGhvciwgY29uc3QgY2hhciAqc2lnbl9jb21taXQpOworaW50IGNvbW1pdF90cmVlKGNvbnN0IGNoYXIgKm1zZywgc2l6ZV90IG1zZ19sZW4sCisJCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKnRyZWUsCisJCXN0cnVjdCBjb21taXRfbGlzdCAqcGFyZW50cywgc3RydWN0IG9iamVjdF9pZCAqcmV0LAorCQljb25zdCBjaGFyICphdXRob3IsIGNvbnN0IGNoYXIgKnNpZ25fY29tbWl0KTsKIAotZXh0ZXJuIGludCBjb21taXRfdHJlZV9leHRlbmRlZChjb25zdCBjaGFyICptc2csIHNpemVfdCBtc2dfbGVuLAotCQkJCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKnRyZWUsCi0JCQkJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnRzLAotCQkJCXN0cnVjdCBvYmplY3RfaWQgKnJldCwgY29uc3QgY2hhciAqYXV0aG9yLAotCQkJCWNvbnN0IGNoYXIgKnNpZ25fY29tbWl0LAotCQkJCXN0cnVjdCBjb21taXRfZXh0cmFfaGVhZGVyICopOworaW50IGNvbW1pdF90cmVlX2V4dGVuZGVkKGNvbnN0IGNoYXIgKm1zZywgc2l6ZV90IG1zZ19sZW4sCisJCQkgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqdHJlZSwKKwkJCSBzdHJ1Y3QgY29tbWl0X2xpc3QgKnBhcmVudHMsCisJCQkgc3RydWN0IG9iamVjdF9pZCAqcmV0LCBjb25zdCBjaGFyICphdXRob3IsCisJCQkgY29uc3QgY2hhciAqc2lnbl9jb21taXQsCisJCQkgc3RydWN0IGNvbW1pdF9leHRyYV9oZWFkZXIgKik7CiAKLWV4dGVybiBzdHJ1Y3QgY29tbWl0X2V4dHJhX2hlYWRlciAqcmVhZF9jb21taXRfZXh0cmFfaGVhZGVycyhzdHJ1Y3QgY29tbWl0ICosIGNvbnN0IGNoYXIgKiopOworc3RydWN0IGNvbW1pdF9leHRyYV9oZWFkZXIgKnJlYWRfY29tbWl0X2V4dHJhX2hlYWRlcnMoc3RydWN0IGNvbW1pdCAqLCBjb25zdCBjaGFyICoqKTsKIAotZXh0ZXJuIHZvaWQgZnJlZV9jb21taXRfZXh0cmFfaGVhZGVycyhzdHJ1Y3QgY29tbWl0X2V4dHJhX2hlYWRlciAqZXh0cmEpOwordm9pZCBmcmVlX2NvbW1pdF9leHRyYV9oZWFkZXJzKHN0cnVjdCBjb21taXRfZXh0cmFfaGVhZGVyICpleHRyYSk7CiAKIC8qCiAgKiBTZWFyY2ggdGhlIGNvbW1pdCBvYmplY3QgY29udGVudHMgZ2l2ZW4gYnkgIm1zZyIgZm9yIHRoZSBoZWFkZXIgImtleSIuCkBAIC0yOTUsMjQgKzMzMywyNCBAQAogICogTm90ZSB0aGF0IHNvbWUgaGVhZGVycyAobGlrZSBtZXJnZXRhZykgbWF5IGJlIG11bHRpLWxpbmUuIEl0IGlzIHRoZSBjYWxsZXIncwogICogcmVzcG9uc2liaWxpdHkgdG8gcGFyc2UgZnVydGhlciBpbiB0aGlzIGNhc2UhCiAgKi8KLWV4dGVybiBjb25zdCBjaGFyICpmaW5kX2NvbW1pdF9oZWFkZXIoY29uc3QgY2hhciAqbXNnLCBjb25zdCBjaGFyICprZXksCi0JCQkJICAgICAgc2l6ZV90ICpvdXRfbGVuKTsKK2NvbnN0IGNoYXIgKmZpbmRfY29tbWl0X2hlYWRlcihjb25zdCBjaGFyICptc2csIGNvbnN0IGNoYXIgKmtleSwKKwkJCSAgICAgICBzaXplX3QgKm91dF9sZW4pOwogCiAvKiBGaW5kIHRoZSBlbmQgb2YgdGhlIGxvZyBtZXNzYWdlLCB0aGUgcmlnaHQgcGxhY2UgZm9yIGEgbmV3IHRyYWlsZXIuICovCi1leHRlcm4gc2l6ZV90IGlnbm9yZV9ub25fdHJhaWxlcihjb25zdCBjaGFyICpidWYsIHNpemVfdCBsZW4pOworc2l6ZV90IGlnbm9yZV9ub25fdHJhaWxlcihjb25zdCBjaGFyICpidWYsIHNpemVfdCBsZW4pOwogCiB0eXBlZGVmIGludCAoKmVhY2hfbWVyZ2V0YWdfZm4pKHN0cnVjdCBjb21taXQgKmNvbW1pdCwgc3RydWN0IGNvbW1pdF9leHRyYV9oZWFkZXIgKmV4dHJhLAotCQkJCSB2b2lkICpjYl9kYXRhKTsKKwkJCQl2b2lkICpjYl9kYXRhKTsKIAotZXh0ZXJuIGludCBmb3JfZWFjaF9tZXJnZXRhZyhlYWNoX21lcmdldGFnX2ZuIGZuLCBzdHJ1Y3QgY29tbWl0ICpjb21taXQsIHZvaWQgKmRhdGEpOworaW50IGZvcl9lYWNoX21lcmdldGFnKGVhY2hfbWVyZ2V0YWdfZm4gZm4sIHN0cnVjdCBjb21taXQgKmNvbW1pdCwgdm9pZCAqZGF0YSk7CiAKIHN0cnVjdCBtZXJnZV9yZW1vdGVfZGVzYyB7CiAJc3RydWN0IG9iamVjdCAqb2JqOyAvKiB0aGUgbmFtZWQgb2JqZWN0LCBjb3VsZCBiZSBhIHRhZyAqLwogCWNoYXIgbmFtZVtGTEVYX0FSUkFZXTsKIH07Ci1leHRlcm4gc3RydWN0IG1lcmdlX3JlbW90ZV9kZXNjICptZXJnZV9yZW1vdGVfdXRpbChzdHJ1Y3QgY29tbWl0ICopOwotZXh0ZXJuIHZvaWQgc2V0X21lcmdlX3JlbW90ZV9kZXNjKHN0cnVjdCBjb21taXQgKmNvbW1pdCwKLQkJCQkgIGNvbnN0IGNoYXIgKm5hbWUsIHN0cnVjdCBvYmplY3QgKm9iaik7CitzdHJ1Y3QgbWVyZ2VfcmVtb3RlX2Rlc2MgKm1lcmdlX3JlbW90ZV91dGlsKHN0cnVjdCBjb21taXQgKik7Cit2b2lkIHNldF9tZXJnZV9yZW1vdGVfZGVzYyhzdHJ1Y3QgY29tbWl0ICpjb21taXQsCisJCQkgICBjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qgb2JqZWN0ICpvYmopOwogCiAvKgogICogR2l2ZW4gIm5hbWUiIGZyb20gdGhlIGNvbW1hbmQgbGluZSB0byBtZXJnZSwgZmluZCB0aGUgY29tbWl0IG9iamVjdApAQCAtMzIxLDkgKzM1OSw5IEBACiAgKi8KIHN0cnVjdCBjb21taXQgKmdldF9tZXJnZV9wYXJlbnQoY29uc3QgY2hhciAqbmFtZSk7CiAKLWV4dGVybiBpbnQgcGFyc2Vfc2lnbmVkX2NvbW1pdChjb25zdCBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCi0JCQkgICAgICAgc3RydWN0IHN0cmJ1ZiAqbWVzc2FnZSwgc3RydWN0IHN0cmJ1ZiAqc2lnbmF0dXJlKTsKLWV4dGVybiBpbnQgcmVtb3ZlX3NpZ25hdHVyZShzdHJ1Y3Qgc3RyYnVmICpidWYpOworaW50IHBhcnNlX3NpZ25lZF9jb21taXQoY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0LAorCQkJc3RydWN0IHN0cmJ1ZiAqbWVzc2FnZSwgc3RydWN0IHN0cmJ1ZiAqc2lnbmF0dXJlKTsKK2ludCByZW1vdmVfc2lnbmF0dXJlKHN0cnVjdCBzdHJidWYgKmJ1Zik7CiAKIC8qCiAgKiBDaGVjayB0aGUgc2lnbmF0dXJlIG9mIHRoZSBnaXZlbiBjb21taXQuIFRoZSByZXN1bHQgb2YgdGhlIGNoZWNrIGlzIHN0b3JlZApAQCAtMzMyLDcgKzM3MCw3IEBACiAgKiBhdCBhbGwuICBUaGlzIG1heSBhbGxvY2F0ZSBtZW1vcnkgZm9yIHNpZy0+Z3BnX291dHB1dCwgc2lnLT5ncGdfc3RhdHVzLAogICogc2lnLT5zaWduZXIgYW5kIHNpZy0+a2V5LgogICovCi1leHRlcm4gaW50IGNoZWNrX2NvbW1pdF9zaWduYXR1cmUoY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0LCBzdHJ1Y3Qgc2lnbmF0dXJlX2NoZWNrICpzaWdjKTsKK2ludCBjaGVja19jb21taXRfc2lnbmF0dXJlKGNvbnN0IHN0cnVjdCBjb21taXQgKmNvbW1pdCwgc3RydWN0IHNpZ25hdHVyZV9jaGVjayAqc2lnYyk7CiAKIC8qIHJlY29yZCBhdXRob3ItZGF0ZSBmb3IgZWFjaCBjb21taXQgb2JqZWN0ICovCiBzdHJ1Y3QgYXV0aG9yX2RhdGVfc2xhYjsKQEAgLTM0NSwxMyArMzgzLDIzIEBACiAgKiBWZXJpZnkgYSBzaW5nbGUgY29tbWl0IHdpdGggY2hlY2tfY29tbWl0X3NpZ25hdHVyZSgpIGFuZCBkaWUoKSBpZiBpdCBpcyBub3QKICAqIGEgZ29vZCBzaWduYXR1cmUuIFRoaXMgaXNuJ3QgcmVhbGx5IHN1aXRhYmxlIGZvciBnZW5lcmFsIHVzZSwgYnV0IGlzIGEKICAqIGhlbHBlciB0byBpbXBsZW1lbnQgY29uc2lzdGVudCBsb2dpYyBmb3IgcHVsbC9tZXJnZSAtLXZlcmlmeS1zaWduYXR1cmVzLgorICoKKyAqIFRoZSBjaGVja190cnVzdCBwYXJhbWV0ZXIgaXMgbWVhbnQgZm9yIGJhY2t3YXJkLWNvbXBhdGliaWxpdHkuICBUaGUgR1BHCisgKiBpbnRlcmZhY2UgdmVyaWZpZXMga2V5IHRydXN0IHdpdGggYSBkZWZhdWx0IHRydXN0IGxldmVsIHRoYXQgaXMgYmVsb3cgdGhlCisgKiBkZWZhdWx0IHRydXN0IGxldmVsIGZvciBtZXJnZSBvcGVyYXRpb25zLiAgSXRzIHZhbHVlIHNob3VsZCBiZSBub24temVybyBpZgorICogdGhlIHVzZXIgaGFzbid0IHNldCBhIG1pbmltdW0gdHJ1c3QgbGV2ZWwgZXhwbGljaXRseSBpbiB0aGVpciBjb25maWd1cmF0aW9uLgorICoKKyAqIElmIHRoZSB1c2VyIGhhcyBzZXQgYSBtaW5pbXVtIHRydXN0IGxldmVsLCB0aGVuIHRoYXQgdmFsdWUgc2hvdWxkIGJlIG9iZXllZAorICogYW5kIGNoZWNrX3RydXN0IHNob3VsZCBiZSB6ZXJvLCBldmVuIGlmIHRoZSBjb25maWd1cmVkIHRydXN0IGxldmVsIGlzIGJlbG93CisgKiB0aGUgZGVmYXVsdCB0cnVzdCBsZXZlbCBmb3IgbWVyZ2VzLgogICovCi12b2lkIHZlcmlmeV9tZXJnZV9zaWduYXR1cmUoc3RydWN0IGNvbW1pdCAqY29tbWl0LCBpbnQgdmVyYm9zZSk7Cit2b2lkIHZlcmlmeV9tZXJnZV9zaWduYXR1cmUoc3RydWN0IGNvbW1pdCAqY29tbWl0LCBpbnQgdmVyYm9zZSwKKwkJCSAgICBpbnQgY2hlY2tfdHJ1c3QpOwogCiBpbnQgY29tcGFyZV9jb21taXRzX2J5X2NvbW1pdF9kYXRlKGNvbnN0IHZvaWQgKmFfLCBjb25zdCB2b2lkICpiXywgdm9pZCAqdW51c2VkKTsKIGludCBjb21wYXJlX2NvbW1pdHNfYnlfZ2VuX3RoZW5fY29tbWl0X2RhdGUoY29uc3Qgdm9pZCAqYV8sIGNvbnN0IHZvaWQgKmJfLCB2b2lkICp1bnVzZWQpOwogCiBMQVNUX0FSR19NVVNUX0JFX05VTEwKLWV4dGVybiBpbnQgcnVuX2NvbW1pdF9ob29rKGludCBlZGl0b3JfaXNfdXNlZCwgY29uc3QgY2hhciAqaW5kZXhfZmlsZSwgY29uc3QgY2hhciAqbmFtZSwgLi4uKTsKK2ludCBydW5fY29tbWl0X2hvb2soaW50IGVkaXRvcl9pc191c2VkLCBjb25zdCBjaGFyICppbmRleF9maWxlLCBjb25zdCBjaGFyICpuYW1lLCAuLi4pOwogCiAjZW5kaWYgLyogQ09NTUlUX0ggKi8KZGlmZiAtLWdpdCBhL2NvbW1vbi1tYWluLmMgYi9jb21tb24tbWFpbi5jCmluZGV4IDM3MjhmNjYuLjcxZTIxZGQgMTAwNjQ0Ci0tLSBhL2NvbW1vbi1tYWluLmMKKysrIGIvY29tbW9uLW1haW4uYwpAQCAtMjUsMTIgKzI1LDE3IEBACiAKIGludCBtYWluKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKIHsKKwlpbnQgcmVzdWx0OworCisJdHJhY2UyX2luaXRpYWxpemVfY2xvY2soKTsKKwogCS8qCiAJICogQWx3YXlzIG9wZW4gZmlsZSBkZXNjcmlwdG9ycyAwLzEvMiB0byBhdm9pZCBjbG9iYmVyaW5nIGZpbGVzCiAJICogaW4gZGllKCkuICBJdCBhbHNvIGF2b2lkcyBtZXNzaW5nIHVwIHdoZW4gdGhlIHBpcGVzIGFyZSBkdXAnZWQKIAkgKiBvbnRvIHN0ZGluL3N0ZG91dC9zdGRlcnIgaW4gdGhlIGNoaWxkIHByb2Nlc3NlcyB3ZSBzcGF3bi4KIAkgKi8KIAlzYW5pdGl6ZV9zdGRmZHMoKTsKKwlyZXN0b3JlX3NpZ3BpcGVfdG9fZGVmYXVsdCgpOwogCiAJZ2l0X3Jlc29sdmVfZXhlY3V0YWJsZV9kaXIoYXJndlswXSk7CiAKQEAgLTQwLDcgKzQ1LDEzIEBACiAKIAlhdHRyX3N0YXJ0KCk7CiAKLQlyZXN0b3JlX3NpZ3BpcGVfdG9fZGVmYXVsdCgpOworCXRyYWNlMl9pbml0aWFsaXplKCk7CisJdHJhY2UyX2NtZF9zdGFydChhcmd2KTsKKwl0cmFjZTJfY29sbGVjdF9wcm9jZXNzX2luZm8oVFJBQ0UyX1BST0NFU1NfSU5GT19TVEFSVFVQKTsKIAotCXJldHVybiBjbWRfbWFpbihhcmdjLCBhcmd2KTsKKwlyZXN1bHQgPSBjbWRfbWFpbihhcmdjLCBhcmd2KTsKKworCXRyYWNlMl9jbWRfZXhpdChyZXN1bHQpOworCisJcmV0dXJuIHJlc3VsdDsKIH0KZGlmZiAtLWdpdCBhL2NvbXBhdC9hY2Nlc3MuYyBiL2NvbXBhdC9hY2Nlc3MuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOWZkYTNlCi0tLSAvZGV2L251bGwKKysrIGIvY29tcGF0L2FjY2Vzcy5jCkBAIC0wLDAgKzEsMzEgQEAKKyNkZWZpbmUgQ09NUEFUX0NPREVfQUNDRVNTCisjaW5jbHVkZSAiLi4vZ2l0LWNvbXBhdC11dGlsLmgiCisKKy8qIERvIHRoZSBzYW1lIHRoaW5nIGFjY2VzcygyKSBkb2VzLCBidXQgdXNlIHRoZSBlZmZlY3RpdmUgdWlkLAorICogYW5kIGRvbid0IG1ha2UgdGhlIG1pc3Rha2Ugb2YgdGVsbGluZyByb290IHRoYXQgYW55IGZpbGUgaXMKKyAqIGV4ZWN1dGFibGUuICBUaGlzIHZlcnNpb24gdXNlcyBzdGF0KDIpLgorICovCitpbnQgZ2l0X2FjY2Vzcyhjb25zdCBjaGFyICpwYXRoLCBpbnQgbW9kZSkKK3sKKwlzdHJ1Y3Qgc3RhdCBzdDsKKworCS8qIGRvIG5vdCBpbnRlcmZlcmUgYSBub3JtYWwgdXNlciAqLworCWlmIChnZXRldWlkKCkpCisJCXJldHVybiBhY2Nlc3MocGF0aCwgbW9kZSk7CisKKwlpZiAoc3RhdChwYXRoLCAmc3QpIDwgMCkKKwkJcmV0dXJuIC0xOworCisJLyogUm9vdCBjYW4gcmVhZCBvciB3cml0ZSBhbnkgZmlsZS4gKi8KKwlpZiAoIShtb2RlICYgWF9PSykpCisJCXJldHVybiAwOworCisJLyogUm9vdCBjYW4gZXhlY3V0ZSBhbnkgZmlsZSB0aGF0IGhhcyBhbnkgb25lIG9mIHRoZSBleGVjdXRlCisJICogYml0cyBzZXQuCisJICovCisJaWYgKHN0LnN0X21vZGUgJiAoU19JWFVTUiB8IFNfSVhHUlAgfCBTX0lYT1RIKSkKKwkJcmV0dXJuIDA7CisKKwllcnJubyA9IEVBQ0NFUzsKKwlyZXR1cm4gLTE7Cit9CmRpZmYgLS1naXQgYS9jb21wYXQvYnN3YXAuaCBiL2NvbXBhdC9ic3dhcC5oCmluZGV4IDUwNzhjZTUuLmU0ZTI1NzMgMTAwNjQ0Ci0tLSBhL2NvbXBhdC9ic3dhcC5oCisrKyBiL2NvbXBhdC9ic3dhcC5oCkBAIC0xLDMgKzEsNiBAQAorI2lmbmRlZiBDT01QQVRfQlNXQVBfSAorI2RlZmluZSBDT01QQVRfQlNXQVBfSAorCiAvKgogICogTGV0J3MgbWFrZSBzdXJlIHdlIGFsd2F5cyBoYXZlIGEgc2FuZSBkZWZpbml0aW9uIGZvciBudG9obCgpL2h0b25sKCkuCiAgKiBTb21lIGxpYnJhcmllcyBkZWZpbmUgdGhvc2UgYXMgYSBmdW5jdGlvbiBjYWxsLCBqdXN0IHRvIHBlcmZvcm0gYnl0ZQpAQCAtMjEwLDMgKzIxMyw1IEBACiB9CiAKICNlbmRpZgorCisjZW5kaWYgLyogQ09NUEFUX0JTV0FQX0ggKi8KZGlmZiAtLWdpdCBhL2NvbXBhdC9jeWd3aW4uYyBiL2NvbXBhdC9jeWd3aW4uYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjk4NjJkNi4uMDAwMDAwMAotLS0gYS9jb21wYXQvY3lnd2luLmMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0jaW5jbHVkZSAiLi4vZ2l0LWNvbXBhdC11dGlsLmgiCi0jaW5jbHVkZSAiLi4vY2FjaGUuaCIKLQotaW50IGN5Z3dpbl9vZmZzZXRfMXN0X2NvbXBvbmVudChjb25zdCBjaGFyICpwYXRoKQotewotCWNvbnN0IGNoYXIgKnBvcyA9IHBhdGg7Ci0JLyogdW5jIHBhdGhzICovCi0JaWYgKGlzX2Rpcl9zZXAocG9zWzBdKSAmJiBpc19kaXJfc2VwKHBvc1sxXSkpIHsKLQkJLyogc2tpcCBzZXJ2ZXIgbmFtZSAqLwotCQlwb3MgPSBzdHJjaHIocG9zICsgMiwgJy8nKTsKLQkJaWYgKCFwb3MpCi0JCQlyZXR1cm4gMDsgLyogRXJyb3I6IG1hbGZvcm1lZCB1bmMgcGF0aCAqLwotCi0JCWRvIHsKLQkJCXBvcysrOwotCQl9IHdoaWxlICgqcG9zICYmIHBvc1swXSAhPSAnLycpOwotCX0KLQlyZXR1cm4gcG9zICsgaXNfZGlyX3NlcCgqcG9zKSAtIHBhdGg7Ci19CmRpZmYgLS1naXQgYS9jb21wYXQvY3lnd2luLmggYi9jb21wYXQvY3lnd2luLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhlNTJkZTQuLjAwMDAwMDAKLS0tIGEvY29tcGF0L2N5Z3dpbi5oCisrKyAvZGV2L251bGwKQEAgLTEsMiArMCwwIEBACi1pbnQgY3lnd2luX29mZnNldF8xc3RfY29tcG9uZW50KGNvbnN0IGNoYXIgKnBhdGgpOwotI2RlZmluZSBvZmZzZXRfMXN0X2NvbXBvbmVudCBjeWd3aW5fb2Zmc2V0XzFzdF9jb21wb25lbnQKZGlmZiAtLWdpdCBhL2NvbXBhdC9maWxlbm8uYyBiL2NvbXBhdC9maWxlbm8uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZTgwZWYzCi0tLSAvZGV2L251bGwKKysrIGIvY29tcGF0L2ZpbGVuby5jCkBAIC0wLDAgKzEsNyBAQAorI2RlZmluZSBDT01QQVRfQ09ERV9GSUxFTk8KKyNpbmNsdWRlICIuLi9naXQtY29tcGF0LXV0aWwuaCIKKworaW50IGdpdF9maWxlbm8oRklMRSAqc3RyZWFtKQoreworCXJldHVybiBmaWxlbm8oc3RyZWFtKTsKK30KZGlmZiAtLWdpdCBhL2NvbXBhdC9taW5ndy5jIGIvY29tcGF0L21pbmd3LmMKaW5kZXggYTAxMGUwYi4uZDE0MDY1ZCAxMDA2NDQKLS0tIGEvY29tcGF0L21pbmd3LmMKKysrIGIvY29tcGF0L21pbmd3LmMKQEAgLTcsMTEgKzcsMjUgQEAKICNpbmNsdWRlICIuLi9jYWNoZS5oIgogI2luY2x1ZGUgIndpbjMyL2xhenlsb2FkLmgiCiAjaW5jbHVkZSAiLi4vY29uZmlnLmgiCisjaW5jbHVkZSAiZGlyLmgiCiAKICNkZWZpbmUgSENBU1QodHlwZSwgaGFuZGxlKSAoKHR5cGUpKGludHB0cl90KWhhbmRsZSkKIAogc3RhdGljIGNvbnN0IGludCBkZWxheVtdID0geyAwLCAxLCAxMCwgMjAsIDQwIH07CiAKK3ZvaWQgb3Blbl9pbl9nZGIodm9pZCkKK3sKKwlzdGF0aWMgc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisJZXh0ZXJuIGNoYXIgKl9wZ21wdHI7CisKKwlhcmd2X2FycmF5X3B1c2hsKCZjcC5hcmdzLCAibWludHR5IiwgImdkYiIsIE5VTEwpOworCWFyZ3ZfYXJyYXlfcHVzaGYoJmNwLmFyZ3MsICItLXBpZD0lZCIsIGdldHBpZCgpKTsKKwljcC5jbGVhbl9vbl9leGl0ID0gMTsKKwlpZiAoc3RhcnRfY29tbWFuZCgmY3ApIDwgMCkKKwkJZGllX2Vycm5vKCJDb3VsZCBub3Qgc3RhcnQgZ2RiIik7CisJc2xlZXAoMSk7Cit9CisKIGludCBlcnJfd2luX3RvX3Bvc2l4KERXT1JEIHdpbmVycikKIHsKIAlpbnQgZXJyb3IgPSBFTk9TWVM7CkBAIC0xMTMsNiArMTI3LDcgQEAKIAljYXNlIEVSUk9SX1NIQVJJTkdfQlVGRkVSX0VYQ0VFREVEOiBlcnJvciA9IEVORklMRTsgYnJlYWs7CiAJY2FzZSBFUlJPUl9TSEFSSU5HX1ZJT0xBVElPTjogZXJyb3IgPSBFQUNDRVM7IGJyZWFrOwogCWNhc2UgRVJST1JfU1RBQ0tfT1ZFUkZMT1c6IGVycm9yID0gRU5PTUVNOyBicmVhazsKKwljYXNlIEVSUk9SX1NVQ0NFU1M6IEJVRygiZXJyX3dpbl90b19wb3NpeCgpIGNhbGxlZCB3aXRob3V0IGFuIGVycm9yISIpOwogCWNhc2UgRVJST1JfU1dBUEVSUk9SOiBlcnJvciA9IEVOT0VOVDsgYnJlYWs7CiAJY2FzZSBFUlJPUl9UT09fTUFOWV9NT0RVTEVTOiBlcnJvciA9IEVNRklMRTsgYnJlYWs7CiAJY2FzZSBFUlJPUl9UT09fTUFOWV9PUEVOX0ZJTEVTOiBlcnJvciA9IEVNRklMRTsgYnJlYWs7CkBAIC0yMTEsNiArMjI2LDcgQEAKIAlISURFX0RPVEZJTEVTX0RPVEdJVE9OTFkKIH07CiAKK3N0YXRpYyBpbnQgY29yZV9yZXN0cmljdF9pbmhlcml0ZWRfaGFuZGxlcyA9IC0xOwogc3RhdGljIGVudW0gaGlkZV9kb3RmaWxlc190eXBlIGhpZGVfZG90ZmlsZXMgPSBISURFX0RPVEZJTEVTX0RPVEdJVE9OTFk7CiBzdGF0aWMgY2hhciAqdW5zZXRfZW52aXJvbm1lbnRfdmFyaWFibGVzOwogCkBAIC0yMzAsNiArMjQ2LDE1IEBACiAJCXJldHVybiAwOwogCX0KIAorCWlmICghc3RyY21wKHZhciwgImNvcmUucmVzdHJpY3Rpbmhlcml0ZWRoYW5kbGVzIikpIHsKKwkJaWYgKHZhbHVlICYmICFzdHJjYXNlY21wKHZhbHVlLCAiYXV0byIpKQorCQkJY29yZV9yZXN0cmljdF9pbmhlcml0ZWRfaGFuZGxlcyA9IC0xOworCQllbHNlCisJCQljb3JlX3Jlc3RyaWN0X2luaGVyaXRlZF9oYW5kbGVzID0KKwkJCQlnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSk7CisJCXJldHVybiAwOworCX0KKwogCXJldHVybiAwOwogfQogCkBAIC0zNTAsNyArMzc1LDcgQEAKIAkJcmV0dXJuIDA7CiAKIAkvKiBXZSBjYW5ub3QgdXNlIGJhc2VuYW1lKCksIGFzIGl0IHdvdWxkIHJlbW92ZSB0cmFpbGluZyBzbGFzaGVzICovCi0JbWluZ3dfc2tpcF9kb3NfZHJpdmVfcHJlZml4KChjaGFyICoqKSZwYXRoKTsKKwl3aW4zMl9za2lwX2Rvc19kcml2ZV9wcmVmaXgoKGNoYXIgKiopJnBhdGgpOwogCWlmICghKnBhdGgpCiAJCXJldHVybiAwOwogCkBAIC0zNjIsNiArMzg3LDggQEAKIAkJCS8qIGlnbm9yZSB0cmFpbGluZyBzbGFzaGVzICovCiAJCQlpZiAoKnBhdGgpCiAJCQkJYmFzZW5hbWUgPSBwYXRoOworCQkJZWxzZQorCQkJCWJyZWFrOwogCQl9CiAKIAlpZiAoaGlkZV9kb3RmaWxlcyA9PSBISURFX0RPVEZJTEVTX1RSVUUpCkBAIC0zOTAsNyArNDE3LDcgQEAKIAlpbnQgcmV0OwogCXdjaGFyX3Qgd3BhdGhbTUFYX1BBVEhdOwogCi0JaWYgKCFpc192YWxpZF93aW4zMl9wYXRoKHBhdGgpKSB7CisJaWYgKCFpc192YWxpZF93aW4zMl9wYXRoKHBhdGgsIDApKSB7CiAJCWVycm5vID0gRUlOVkFMOwogCQlyZXR1cm4gLTE7CiAJfQpAQCAtNDc2LDIxICs1MDMsMjEgQEAKIAltb2RlID0gdmFfYXJnKGFyZ3MsIGludCk7CiAJdmFfZW5kKGFyZ3MpOwogCi0JaWYgKCFpc192YWxpZF93aW4zMl9wYXRoKGZpbGVuYW1lKSkgeworCWlmICghaXNfdmFsaWRfd2luMzJfcGF0aChmaWxlbmFtZSwgIWNyZWF0ZSkpIHsKIAkJZXJybm8gPSBjcmVhdGUgPyBFSU5WQUwgOiBFTk9FTlQ7CiAJCXJldHVybiAtMTsKIAl9CiAKLQlpZiAoZmlsZW5hbWUgJiYgIXN0cmNtcChmaWxlbmFtZSwgIi9kZXYvbnVsbCIpKQotCQlmaWxlbmFtZSA9ICJudWwiOwotCiAJaWYgKChvZmxhZ3MgJiBPX0FQUEVORCkgJiYgIWlzX2xvY2FsX25hbWVkX3BpcGVfcGF0aChmaWxlbmFtZSkpCiAJCW9wZW5fZm4gPSBtaW5nd19vcGVuX2FwcGVuZDsKIAllbHNlCiAJCW9wZW5fZm4gPSBfd29wZW47CiAKLQlpZiAoeHV0ZnRvd2NzX3BhdGgod2ZpbGVuYW1lLCBmaWxlbmFtZSkgPCAwKQorCWlmIChmaWxlbmFtZSAmJiAhc3RyY21wKGZpbGVuYW1lLCAiL2Rldi9udWxsIikpCisJCXdjc2NweSh3ZmlsZW5hbWUsIEwibnVsIik7CisJZWxzZSBpZiAoeHV0ZnRvd2NzX3BhdGgod2ZpbGVuYW1lLCBmaWxlbmFtZSkgPCAwKQogCQlyZXR1cm4gLTE7CisKIAlmZCA9IG9wZW5fZm4od2ZpbGVuYW1lLCBvZmxhZ3MsIG1vZGUpOwogCiAJaWYgKGZkIDwgMCAmJiAob2ZsYWdzICYgT19BQ0NNT0RFKSAhPSBPX1JET05MWSAmJiBlcnJubyA9PSBFQUNDRVMpIHsKQEAgLTU0NywxNiArNTc0LDE4IEBACiAJaW50IGhpZGUgPSBuZWVkc19oaWRpbmcoZmlsZW5hbWUpOwogCUZJTEUgKmZpbGU7CiAJd2NoYXJfdCB3ZmlsZW5hbWVbTUFYX1BBVEhdLCB3b3R5cGVbNF07Ci0JaWYgKCFpc192YWxpZF93aW4zMl9wYXRoKGZpbGVuYW1lKSkgeworCWlmIChmaWxlbmFtZSAmJiAhc3RyY21wKGZpbGVuYW1lLCAiL2Rldi9udWxsIikpCisJCXdjc2NweSh3ZmlsZW5hbWUsIEwibnVsIik7CisJZWxzZSBpZiAoIWlzX3ZhbGlkX3dpbjMyX3BhdGgoZmlsZW5hbWUsIDEpKSB7CiAJCWludCBjcmVhdGUgPSBvdHlwZSAmJiBzdHJjaHIob3R5cGUsICd3Jyk7CiAJCWVycm5vID0gY3JlYXRlID8gRUlOVkFMIDogRU5PRU5UOwogCQlyZXR1cm4gTlVMTDsKLQl9Ci0JaWYgKGZpbGVuYW1lICYmICFzdHJjbXAoZmlsZW5hbWUsICIvZGV2L251bGwiKSkKLQkJZmlsZW5hbWUgPSAibnVsIjsKLQlpZiAoeHV0ZnRvd2NzX3BhdGgod2ZpbGVuYW1lLCBmaWxlbmFtZSkgPCAwIHx8Ci0JCXh1dGZ0b3djcyh3b3R5cGUsIG90eXBlLCBBUlJBWV9TSVpFKHdvdHlwZSkpIDwgMCkKKwl9IGVsc2UgaWYgKHh1dGZ0b3djc19wYXRoKHdmaWxlbmFtZSwgZmlsZW5hbWUpIDwgMCkKIAkJcmV0dXJuIE5VTEw7CisKKwlpZiAoeHV0ZnRvd2NzKHdvdHlwZSwgb3R5cGUsIEFSUkFZX1NJWkUod290eXBlKSkgPCAwKQorCQlyZXR1cm4gTlVMTDsKKwogCWlmIChoaWRlICYmICFhY2Nlc3MoZmlsZW5hbWUsIEZfT0spICYmIHNldF9oaWRkZW5fZmxhZyh3ZmlsZW5hbWUsIDApKSB7CiAJCWVycm9yKCJjb3VsZCBub3QgdW5oaWRlICVzIiwgZmlsZW5hbWUpOwogCQlyZXR1cm4gTlVMTDsKQEAgLTU3NCwxNiArNjAzLDE4IEBACiAJaW50IGhpZGUgPSBuZWVkc19oaWRpbmcoZmlsZW5hbWUpOwogCUZJTEUgKmZpbGU7CiAJd2NoYXJfdCB3ZmlsZW5hbWVbTUFYX1BBVEhdLCB3b3R5cGVbNF07Ci0JaWYgKCFpc192YWxpZF93aW4zMl9wYXRoKGZpbGVuYW1lKSkgeworCWlmIChmaWxlbmFtZSAmJiAhc3RyY21wKGZpbGVuYW1lLCAiL2Rldi9udWxsIikpCisJCXdjc2NweSh3ZmlsZW5hbWUsIEwibnVsIik7CisJZWxzZSBpZiAoIWlzX3ZhbGlkX3dpbjMyX3BhdGgoZmlsZW5hbWUsIDEpKSB7CiAJCWludCBjcmVhdGUgPSBvdHlwZSAmJiBzdHJjaHIob3R5cGUsICd3Jyk7CiAJCWVycm5vID0gY3JlYXRlID8gRUlOVkFMIDogRU5PRU5UOwogCQlyZXR1cm4gTlVMTDsKLQl9Ci0JaWYgKGZpbGVuYW1lICYmICFzdHJjbXAoZmlsZW5hbWUsICIvZGV2L251bGwiKSkKLQkJZmlsZW5hbWUgPSAibnVsIjsKLQlpZiAoeHV0ZnRvd2NzX3BhdGgod2ZpbGVuYW1lLCBmaWxlbmFtZSkgPCAwIHx8Ci0JCXh1dGZ0b3djcyh3b3R5cGUsIG90eXBlLCBBUlJBWV9TSVpFKHdvdHlwZSkpIDwgMCkKKwl9IGVsc2UgaWYgKHh1dGZ0b3djc19wYXRoKHdmaWxlbmFtZSwgZmlsZW5hbWUpIDwgMCkKIAkJcmV0dXJuIE5VTEw7CisKKwlpZiAoeHV0ZnRvd2NzKHdvdHlwZSwgb3R5cGUsIEFSUkFZX1NJWkUod290eXBlKSkgPCAwKQorCQlyZXR1cm4gTlVMTDsKKwogCWlmIChoaWRlICYmICFhY2Nlc3MoZmlsZW5hbWUsIEZfT0spICYmIHNldF9oaWRkZW5fZmxhZyh3ZmlsZW5hbWUsIDApKSB7CiAJCWVycm9yKCJjb3VsZCBub3QgdW5oaWRlICVzIiwgZmlsZW5hbWUpOwogCQlyZXR1cm4gTlVMTDsKQEAgLTEwMDQsMTYgKzEwMzUsMTYgQEAKIAogc3RydWN0IHRtICpnbXRpbWVfcihjb25zdCB0aW1lX3QgKnRpbWVwLCBzdHJ1Y3QgdG0gKnJlc3VsdCkKIHsKLQkvKiBnbXRpbWUoKSBpbiBNU1ZDUlQuRExMIGlzIHRocmVhZC1zYWZlLCBidXQgbm90IHJlZW50cmFudCAqLwotCW1lbWNweShyZXN1bHQsIGdtdGltZSh0aW1lcCksIHNpemVvZihzdHJ1Y3QgdG0pKTsKLQlyZXR1cm4gcmVzdWx0OworCWlmIChnbXRpbWVfcyhyZXN1bHQsIHRpbWVwKSA9PSAwKQorCQlyZXR1cm4gcmVzdWx0OworCXJldHVybiBOVUxMOwogfQogCiBzdHJ1Y3QgdG0gKmxvY2FsdGltZV9yKGNvbnN0IHRpbWVfdCAqdGltZXAsIHN0cnVjdCB0bSAqcmVzdWx0KQogewotCS8qIGxvY2FsdGltZSgpIGluIE1TVkNSVC5ETEwgaXMgdGhyZWFkLXNhZmUsIGJ1dCBub3QgcmVlbnRyYW50ICovCi0JbWVtY3B5KHJlc3VsdCwgbG9jYWx0aW1lKHRpbWVwKSwgc2l6ZW9mKHN0cnVjdCB0bSkpOwotCXJldHVybiByZXN1bHQ7CisJaWYgKGxvY2FsdGltZV9zKHJlc3VsdCwgdGltZXApID09IDApCisJCXJldHVybiByZXN1bHQ7CisJcmV0dXJuIE5VTEw7CiB9CiAKIGNoYXIgKm1pbmd3X2dldGN3ZChjaGFyICpwb2ludGVyLCBpbnQgbGVuKQpAQCAtMTA1Miw3ICsxMDgzLDcgQEAKICAqIFNlZSAiUGFyc2luZyBDKysgQ29tbWFuZC1MaW5lIEFyZ3VtZW50cyIgYXQgTWljcm9zb2Z0J3MgRG9jczoKICAqIGh0dHBzOi8vZG9jcy5taWNyb3NvZnQuY29tL2VuLXVzL2NwcC9jcHAvcGFyc2luZy1jcHAtY29tbWFuZC1saW5lLWFyZ3VtZW50cwogICovCi1zdGF0aWMgY29uc3QgY2hhciAqcXVvdGVfYXJnKGNvbnN0IGNoYXIgKmFyZykKK3N0YXRpYyBjb25zdCBjaGFyICpxdW90ZV9hcmdfbXN2Yyhjb25zdCBjaGFyICphcmcpCiB7CiAJLyogY291bnQgY2hhcnMgdG8gcXVvdGUgKi8KIAlpbnQgbGVuID0gMCwgbiA9IDA7CkBAIC0xMTEwLDYgKzExNDEsMzggQEAKIAlyZXR1cm4gcTsKIH0KIAorI2luY2x1ZGUgInF1b3RlLmgiCisKK3N0YXRpYyBjb25zdCBjaGFyICpxdW90ZV9hcmdfbXN5czIoY29uc3QgY2hhciAqYXJnKQoreworCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CisJY29uc3QgY2hhciAqcDIgPSBhcmcsICpwOworCisJZm9yIChwID0gYXJnOyAqcDsgcCsrKSB7CisJCWludCB3cyA9IGlzc3BhY2UoKnApOworCQlpZiAoIXdzICYmICpwICE9ICdcXCcgJiYgKnAgIT0gJyInICYmICpwICE9ICd7JyAmJiAqcCAhPSAnXCcnICYmCisJCSAgICAqcCAhPSAnPycgJiYgKnAgIT0gJyonICYmICpwICE9ICd+JykKKwkJCWNvbnRpbnVlOworCQlpZiAoIWJ1Zi5sZW4pCisJCQlzdHJidWZfYWRkY2goJmJ1ZiwgJyInKTsKKwkJaWYgKHAgIT0gcDIpCisJCQlzdHJidWZfYWRkKCZidWYsIHAyLCBwIC0gcDIpOworCQlpZiAoKnAgPT0gJ1xcJyB8fCAqcCA9PSAnIicpCisJCQlzdHJidWZfYWRkY2goJmJ1ZiwgJ1xcJyk7CisJCXAyID0gcDsKKwl9CisKKwlpZiAocCA9PSBhcmcpCisJCXN0cmJ1Zl9hZGRjaCgmYnVmLCAnIicpOworCWVsc2UgaWYgKCFidWYubGVuKQorCQlyZXR1cm4gYXJnOworCWVsc2UKKwkJc3RyYnVmX2FkZCgmYnVmLCBwMiwgcCAtIHAyKTsKKworCXN0cmJ1Zl9hZGRjaCgmYnVmLCAnIicpOworCXJldHVybiBzdHJidWZfZGV0YWNoKCZidWYsIDApOworfQorCiBzdGF0aWMgY29uc3QgY2hhciAqcGFyc2VfaW50ZXJwcmV0ZXIoY29uc3QgY2hhciAqY21kKQogewogCXN0YXRpYyBjaGFyIGJ1ZlsxMDBdOwpAQCAtMTE1MywxNCArMTIxNiwyMSBAQAogCQkJIGludCBpc2V4ZSwgaW50IGV4ZV9vbmx5KQogewogCWNoYXIgcGF0aFtNQVhfUEFUSF07CisJd2NoYXJfdCB3cGF0aFtNQVhfUEFUSF07CiAJc25wcmludGYocGF0aCwgc2l6ZW9mKHBhdGgpLCAiJS4qc1xcJXMuZXhlIiwgZGlybGVuLCBkaXIsIGNtZCk7CiAKLQlpZiAoIWlzZXhlICYmIGFjY2VzcyhwYXRoLCBGX09LKSA9PSAwKQorCWlmICh4dXRmdG93Y3NfcGF0aCh3cGF0aCwgcGF0aCkgPCAwKQorCQlyZXR1cm4gTlVMTDsKKworCWlmICghaXNleGUgJiYgX3dhY2Nlc3Mod3BhdGgsIEZfT0spID09IDApCiAJCXJldHVybiB4c3RyZHVwKHBhdGgpOwotCXBhdGhbc3RybGVuKHBhdGgpLTRdID0gJ1wwJzsKLQlpZiAoKCFleGVfb25seSB8fCBpc2V4ZSkgJiYgYWNjZXNzKHBhdGgsIEZfT0spID09IDApCi0JCWlmICghKEdldEZpbGVBdHRyaWJ1dGVzKHBhdGgpICYgRklMRV9BVFRSSUJVVEVfRElSRUNUT1JZKSkKKwl3cGF0aFt3Y3NsZW4od3BhdGgpLTRdID0gJ1wwJzsKKwlpZiAoKCFleGVfb25seSB8fCBpc2V4ZSkgJiYgX3dhY2Nlc3Mod3BhdGgsIEZfT0spID09IDApIHsKKwkJaWYgKCEoR2V0RmlsZUF0dHJpYnV0ZXNXKHdwYXRoKSAmIEZJTEVfQVRUUklCVVRFX0RJUkVDVE9SWSkpIHsKKwkJCXBhdGhbc3RybGVuKHBhdGgpLTRdID0gJ1wwJzsKIAkJCXJldHVybiB4c3RyZHVwKHBhdGgpOworCQl9CisJfQogCXJldHVybiBOVUxMOwogfQogCkBAIC0xMTc1LDcgKzEyNDUsNyBAQAogCWludCBsZW4gPSBzdHJsZW4oY21kKTsKIAlpbnQgaXNleGUgPSBsZW4gPj0gNCAmJiAhc3RyY2FzZWNtcChjbWQrbGVuLTQsICIuZXhlIik7CiAKLQlpZiAoc3RyY2hyKGNtZCwgJy8nKSB8fCBzdHJjaHIoY21kLCAnXFwnKSkKKwlpZiAoc3RycGJyayhjbWQsICIvXFwiKSkKIAkJcmV0dXJuIHhzdHJkdXAoY21kKTsKIAogCXBhdGggPSBtaW5nd19nZXRlbnYoIlBBVEgiKTsKQEAgLTEyMjEsMTEgKzEyOTEsNiBAQAogCXJldHVybiBfd2NzbmljbXAocCwgcSwgcF9sZW4pOwogfQogCi0vKiBXZSBuZWVkIGEgc3RhYmxlIHNvcnQgdG8gY29udmVydCB0aGUgZW52aXJvbm1lbnQgYmV0d2VlbiBVVEYtMTYgPC0+IFVURi04ICovCi0jaWZuZGVmIElOVEVSTkFMX1FTT1JUCi0jaW5jbHVkZSAicXNvcnQuYyIKLSNlbmRpZgotCiAvKgogICogQnVpbGQgYW4gZW52aXJvbm1lbnQgYmxvY2sgY29tYmluaW5nIHRoZSBpbmhlcml0ZWQgZW52aXJvbm1lbnQKICAqIG1lcmdlZCB3aXRoIHRoZSBnaXZlbiBsaXN0IG9mIHNldHRpbmdzLgpAQCAtMTI1NywxNSArMTMyMiwxNSBAQAogCQl9CiAKIAkJQUxMT0NfQVJSQVkocmVzdWx0LCBzaXplKTsKLQkJbWVtY3B5KHJlc3VsdCwgd2Vudiwgc2l6ZSAqIHNpemVvZigqd2VudikpOworCQlDT1BZX0FSUkFZKHJlc3VsdCwgd2Vudiwgc2l6ZSk7CiAJCUZyZWVFbnZpcm9ubWVudFN0cmluZ3NXKHdlbnYpOwogCQlyZXR1cm4gcmVzdWx0OwogCX0KIAogCS8qCiAJICogSWYgdGhlcmUgaXMgYSBkZWx0YWVudiwgbGV0J3MgYWNjdW11bGF0ZSBhbGwga2V5cyBpbnRvIGBhcnJheWAsCi0JICogc29ydCB0aGVtIHVzaW5nIHRoZSBzdGFibGUgZ2l0X3Fzb3J0KCkgYW5kIHRoZW4gY29weSwgc2tpcHBpbmcKLQkgKiBkdXBsaWNhdGUga2V5cworCSAqIHNvcnQgdGhlbSB1c2luZyB0aGUgc3RhYmxlIGdpdF9zdGFibGVfcXNvcnQoKSBhbmQgdGhlbiBjb3B5LAorCSAqIHNraXBwaW5nIGR1cGxpY2F0ZSBrZXlzCiAJICovCiAJZm9yIChwID0gd2VudjsgcCAmJiAqcDsgKSB7CiAJCUFMTE9DX0dST1coYXJyYXksIG5yICsgMSwgYWxsb2MpOwpAQCAtMTI4OCw3ICsxMzUzLDcgQEAKIAkJcCArPSB3bGVuICsgMTsKIAl9CiAKLQlnaXRfcXNvcnQoYXJyYXksIG5yLCBzaXplb2YoKmFycmF5KSwgd2VudmNtcCk7CisJZ2l0X3N0YWJsZV9xc29ydChhcnJheSwgbnIsIHNpemVvZigqYXJyYXkpLCB3ZW52Y21wKTsKIAlBTExPQ19BUlJBWShyZXN1bHQsIHNpemUgKyBkZWx0YV9zaXplKTsKIAogCWZvciAocCA9IHJlc3VsdCwgaSA9IDA7IGkgPCBucjsgaSsrKSB7CkBAIC0xMzAxLDcgKzEzNjYsNyBAQAogCQkJY29udGludWU7CiAKIAkJc2l6ZSA9IHdjc2xlbihhcnJheVtpXSkgKyAxOwotCQltZW1jcHkocCwgYXJyYXlbaV0sIHNpemUgKiBzaXplb2YoKnApKTsKKwkJQ09QWV9BUlJBWShwLCBhcnJheVtpXSwgc2l6ZSk7CiAJCXAgKz0gc2l6ZTsKIAl9CiAJKnAgPSBMJ1wwJzsKQEAgLTEzNDEsMjIgKzE0MDYsOTcgQEAKIHN0YXRpYyBzdHJ1Y3QgcGluZm9fdCAqcGluZm8gPSBOVUxMOwogQ1JJVElDQUxfU0VDVElPTiBwaW5mb19jczsKIAorLyogVXNlZCB0byBtYXRjaCBhbmQgY2hvbXAgb2ZmIHBhdGggY29tcG9uZW50cyAqLworc3RhdGljIGlubGluZSBpbnQgbWF0Y2hfbGFzdF9wYXRoX2NvbXBvbmVudChjb25zdCBjaGFyICpwYXRoLCBzaXplX3QgKmxlbiwKKwkJCQkJICAgIGNvbnN0IGNoYXIgKmNvbXBvbmVudCkKK3sKKwlzaXplX3QgY29tcG9uZW50X2xlbiA9IHN0cmxlbihjb21wb25lbnQpOworCWlmICgqbGVuIDwgY29tcG9uZW50X2xlbiArIDEgfHwKKwkgICAgIWlzX2Rpcl9zZXAocGF0aFsqbGVuIC0gY29tcG9uZW50X2xlbiAtIDFdKSB8fAorCSAgICBmc3BhdGhuY21wKHBhdGggKyAqbGVuIC0gY29tcG9uZW50X2xlbiwgY29tcG9uZW50LCBjb21wb25lbnRfbGVuKSkKKwkJcmV0dXJuIDA7CisJKmxlbiAtPSBjb21wb25lbnRfbGVuICsgMTsKKwkvKiBjaG9tcCBvZmYgcmVwZWF0ZWQgZGlyIHNlcGFyYXRvcnMgKi8KKwl3aGlsZSAoKmxlbiA+IDAgJiYgaXNfZGlyX3NlcChwYXRoWypsZW4gLSAxXSkpCisJCSgqbGVuKS0tOworCXJldHVybiAxOworfQorCitzdGF0aWMgaW50IGlzX21zeXMyX3NoKGNvbnN0IGNoYXIgKmNtZCkKK3sKKwlpZiAoIWNtZCkKKwkJcmV0dXJuIDA7CisKKwlpZiAoIXN0cmNtcChjbWQsICJzaCIpKSB7CisJCXN0YXRpYyBpbnQgcmV0ID0gLTE7CisJCWNoYXIgKnA7CisKKwkJaWYgKHJldCA+PSAwKQorCQkJcmV0dXJuIHJldDsKKworCQlwID0gcGF0aF9sb29rdXAoY21kLCAwKTsKKwkJaWYgKCFwKQorCQkJcmV0ID0gMDsKKwkJZWxzZSB7CisJCQlzaXplX3QgbGVuID0gc3RybGVuKHApOworCisJCQlyZXQgPSBtYXRjaF9sYXN0X3BhdGhfY29tcG9uZW50KHAsICZsZW4sICJzaC5leGUiKSAmJgorCQkJCW1hdGNoX2xhc3RfcGF0aF9jb21wb25lbnQocCwgJmxlbiwgImJpbiIpICYmCisJCQkJbWF0Y2hfbGFzdF9wYXRoX2NvbXBvbmVudChwLCAmbGVuLCAidXNyIik7CisJCQlmcmVlKHApOworCQl9CisJCXJldHVybiByZXQ7CisJfQorCisJaWYgKGVuZHNfd2l0aChjbWQsICJcXHNoLmV4ZSIpKSB7CisJCXN0YXRpYyBjaGFyICpzaDsKKworCQlpZiAoIXNoKQorCQkJc2ggPSBwYXRoX2xvb2t1cCgic2giLCAwKTsKKworCQlyZXR1cm4gIWZzcGF0aGNtcChjbWQsIHNoKTsKKwl9CisKKwlyZXR1cm4gMDsKK30KKwogc3RhdGljIHBpZF90IG1pbmd3X3NwYXdudmVfZmQoY29uc3QgY2hhciAqY21kLCBjb25zdCBjaGFyICoqYXJndiwgY2hhciAqKmRlbHRhZW52LAogCQkJICAgICAgY29uc3QgY2hhciAqZGlyLAogCQkJICAgICAgaW50IHByZXBlbmRfY21kLCBpbnQgZmhpbiwgaW50IGZob3V0LCBpbnQgZmhlcnIpCiB7Ci0JU1RBUlRVUElORk9XIHNpOworCXN0YXRpYyBpbnQgcmVzdHJpY3RfaGFuZGxlX2luaGVyaXRhbmNlID0gLTE7CisJU1RBUlRVUElORk9FWFcgc2k7CiAJUFJPQ0VTU19JTkZPUk1BVElPTiBwaTsKKwlMUFBST0NfVEhSRUFEX0FUVFJJQlVURV9MSVNUIGF0dHJfbGlzdCA9IE5VTEw7CisJSEFORExFIHN0ZGhhbmRsZXNbM107CisJRFdPUkQgc3RkaGFuZGxlc19jb3VudCA9IDA7CisJU0laRV9UIHNpemU7CiAJc3RydWN0IHN0cmJ1ZiBhcmdzOwogCXdjaGFyX3Qgd2NtZFtNQVhfUEFUSF0sIHdkaXJbTUFYX1BBVEhdLCAqd2FyZ3MsICp3ZW52YmxrID0gTlVMTDsKIAl1bnNpZ25lZCBmbGFncyA9IENSRUFURV9VTklDT0RFX0VOVklST05NRU5UOwogCUJPT0wgcmV0OwogCUhBTkRMRSBjb25zOworCWNvbnN0IGNoYXIgKigqcXVvdGVfYXJnKShjb25zdCBjaGFyICphcmcpID0KKwkJaXNfbXN5czJfc2goY21kID8gY21kIDogKmFyZ3YpID8KKwkJcXVvdGVfYXJnX21zeXMyIDogcXVvdGVfYXJnX21zdmM7CisKKwkvKiBNYWtlIHN1cmUgdG8gb3ZlcnJpZGUgcHJldmlvdXMgZXJyb3JzLCBpZiBhbnkgKi8KKwllcnJubyA9IDA7CisKKwlpZiAocmVzdHJpY3RfaGFuZGxlX2luaGVyaXRhbmNlIDwgMCkKKwkJcmVzdHJpY3RfaGFuZGxlX2luaGVyaXRhbmNlID0gY29yZV9yZXN0cmljdF9pbmhlcml0ZWRfaGFuZGxlczsKKwkvKgorCSAqIFRoZSBmb2xsb3dpbmcgY29kZSB0byByZXN0cmljdCB3aGljaCBoYW5kbGVzIGFyZSBpbmhlcml0ZWQgc2VlbXMKKwkgKiB0byB3b3JrIHByb3Blcmx5IG9ubHkgb24gV2luZG93cyA3IGFuZCBsYXRlciwgc28gbGV0J3MgZGlzYWJsZSBpdAorCSAqIG9uIFdpbmRvd3MgVmlzdGEgYW5kIDIwMDguCisJICovCisJaWYgKHJlc3RyaWN0X2hhbmRsZV9pbmhlcml0YW5jZSA8IDApCisJCXJlc3RyaWN0X2hhbmRsZV9pbmhlcml0YW5jZSA9IEdldFZlcnNpb24oKSA+PiAxNiA+PSA3NjAxOwogCiAJZG9fdW5zZXRfZW52aXJvbm1lbnRfdmFyaWFibGVzKCk7CiAKIAkvKiBEZXRlcm1pbmUgd2hldGhlciBvciBub3Qgd2UgYXJlIGFzc29jaWF0ZWQgdG8gYSBjb25zb2xlICovCi0JY29ucyA9IENyZWF0ZUZpbGUoIkNPTk9VVCQiLCBHRU5FUklDX1dSSVRFLAorCWNvbnMgPSBDcmVhdGVGaWxlVyhMIkNPTk9VVCQiLCBHRU5FUklDX1dSSVRFLAogCQkJRklMRV9TSEFSRV9XUklURSwgTlVMTCwgT1BFTl9FWElTVElORywKIAkJCUZJTEVfQVRUUklCVVRFX05PUk1BTCwgTlVMTCk7CiAJaWYgKGNvbnMgPT0gSU5WQUxJRF9IQU5ETEVfVkFMVUUpIHsKQEAgLTEzODAsMTMgKzE1MjAsMjcgQEAKIAkJQ2xvc2VIYW5kbGUoY29ucyk7CiAJfQogCW1lbXNldCgmc2ksIDAsIHNpemVvZihzaSkpOwotCXNpLmNiID0gc2l6ZW9mKHNpKTsKLQlzaS5kd0ZsYWdzID0gU1RBUlRGX1VTRVNUREhBTkRMRVM7Ci0Jc2kuaFN0ZElucHV0ID0gd2luYW5zaV9nZXRfb3NmaGFuZGxlKGZoaW4pOwotCXNpLmhTdGRPdXRwdXQgPSB3aW5hbnNpX2dldF9vc2ZoYW5kbGUoZmhvdXQpOwotCXNpLmhTdGRFcnJvciA9IHdpbmFuc2lfZ2V0X29zZmhhbmRsZShmaGVycik7CisJc2kuU3RhcnR1cEluZm8uY2IgPSBzaXplb2Yoc2kpOworCXNpLlN0YXJ0dXBJbmZvLmhTdGRJbnB1dCA9IHdpbmFuc2lfZ2V0X29zZmhhbmRsZShmaGluKTsKKwlzaS5TdGFydHVwSW5mby5oU3RkT3V0cHV0ID0gd2luYW5zaV9nZXRfb3NmaGFuZGxlKGZob3V0KTsKKwlzaS5TdGFydHVwSW5mby5oU3RkRXJyb3IgPSB3aW5hbnNpX2dldF9vc2ZoYW5kbGUoZmhlcnIpOwogCi0JaWYgKHh1dGZ0b3djc19wYXRoKHdjbWQsIGNtZCkgPCAwKQorCS8qIFRoZSBsaXN0IG9mIGhhbmRsZXMgY2Fubm90IGNvbnRhaW4gZHVwbGljYXRlcyAqLworCWlmIChzaS5TdGFydHVwSW5mby5oU3RkSW5wdXQgIT0gSU5WQUxJRF9IQU5ETEVfVkFMVUUpCisJCXN0ZGhhbmRsZXNbc3RkaGFuZGxlc19jb3VudCsrXSA9IHNpLlN0YXJ0dXBJbmZvLmhTdGRJbnB1dDsKKwlpZiAoc2kuU3RhcnR1cEluZm8uaFN0ZE91dHB1dCAhPSBJTlZBTElEX0hBTkRMRV9WQUxVRSAmJgorCSAgICBzaS5TdGFydHVwSW5mby5oU3RkT3V0cHV0ICE9IHNpLlN0YXJ0dXBJbmZvLmhTdGRJbnB1dCkKKwkJc3RkaGFuZGxlc1tzdGRoYW5kbGVzX2NvdW50KytdID0gc2kuU3RhcnR1cEluZm8uaFN0ZE91dHB1dDsKKwlpZiAoc2kuU3RhcnR1cEluZm8uaFN0ZEVycm9yICE9IElOVkFMSURfSEFORExFX1ZBTFVFICYmCisJICAgIHNpLlN0YXJ0dXBJbmZvLmhTdGRFcnJvciAhPSBzaS5TdGFydHVwSW5mby5oU3RkSW5wdXQgJiYKKwkgICAgc2kuU3RhcnR1cEluZm8uaFN0ZEVycm9yICE9IHNpLlN0YXJ0dXBJbmZvLmhTdGRPdXRwdXQpCisJCXN0ZGhhbmRsZXNbc3RkaGFuZGxlc19jb3VudCsrXSA9IHNpLlN0YXJ0dXBJbmZvLmhTdGRFcnJvcjsKKwlpZiAoc3RkaGFuZGxlc19jb3VudCkKKwkJc2kuU3RhcnR1cEluZm8uZHdGbGFncyB8PSBTVEFSVEZfVVNFU1RESEFORExFUzsKKworCWlmICgqYXJndiAmJiAhc3RyY21wKGNtZCwgKmFyZ3YpKQorCQl3Y21kWzBdID0gTCdcMCc7CisJZWxzZSBpZiAoeHV0ZnRvd2NzX3BhdGgod2NtZCwgY21kKSA8IDApCiAJCXJldHVybiAtMTsKIAlpZiAoZGlyICYmIHh1dGZ0b3djc19wYXRoKHdkaXIsIGRpcikgPCAwKQogCQlyZXR1cm4gLTE7CkBAIC0xNDE1LDE2ICsxNTY5LDk4IEBACiAJd2VudmJsayA9IG1ha2VfZW52aXJvbm1lbnRfYmxvY2soZGVsdGFlbnYpOwogCiAJbWVtc2V0KCZwaSwgMCwgc2l6ZW9mKHBpKSk7Ci0JcmV0ID0gQ3JlYXRlUHJvY2Vzc1cod2NtZCwgd2FyZ3MsIE5VTEwsIE5VTEwsIFRSVUUsIGZsYWdzLAotCQl3ZW52YmxrLCBkaXIgPyB3ZGlyIDogTlVMTCwgJnNpLCAmcGkpOworCWlmIChyZXN0cmljdF9oYW5kbGVfaW5oZXJpdGFuY2UgJiYgc3RkaGFuZGxlc19jb3VudCAmJgorCSAgICAoSW5pdGlhbGl6ZVByb2NUaHJlYWRBdHRyaWJ1dGVMaXN0KE5VTEwsIDEsIDAsICZzaXplKSB8fAorCSAgICAgR2V0TGFzdEVycm9yKCkgPT0gRVJST1JfSU5TVUZGSUNJRU5UX0JVRkZFUikgJiYKKwkgICAgKGF0dHJfbGlzdCA9IChMUFBST0NfVEhSRUFEX0FUVFJJQlVURV9MSVNUKQorCQkJKEhlYXBBbGxvYyhHZXRQcm9jZXNzSGVhcCgpLCAwLCBzaXplKSkpICYmCisJICAgIEluaXRpYWxpemVQcm9jVGhyZWFkQXR0cmlidXRlTGlzdChhdHRyX2xpc3QsIDEsIDAsICZzaXplKSAmJgorCSAgICBVcGRhdGVQcm9jVGhyZWFkQXR0cmlidXRlKGF0dHJfbGlzdCwgMCwKKwkJCQkgICAgICBQUk9DX1RIUkVBRF9BVFRSSUJVVEVfSEFORExFX0xJU1QsCisJCQkJICAgICAgc3RkaGFuZGxlcywKKwkJCQkgICAgICBzdGRoYW5kbGVzX2NvdW50ICogc2l6ZW9mKEhBTkRMRSksCisJCQkJICAgICAgTlVMTCwgTlVMTCkpIHsKKwkJc2kubHBBdHRyaWJ1dGVMaXN0ID0gYXR0cl9saXN0OworCQlmbGFncyB8PSBFWFRFTkRFRF9TVEFSVFVQSU5GT19QUkVTRU5UOworCX0KKworCXJldCA9IENyZWF0ZVByb2Nlc3NXKCp3Y21kID8gd2NtZCA6IE5VTEwsIHdhcmdzLCBOVUxMLCBOVUxMLAorCQkJICAgICBzdGRoYW5kbGVzX2NvdW50ID8gVFJVRSA6IEZBTFNFLAorCQkJICAgICBmbGFncywgd2VudmJsaywgZGlyID8gd2RpciA6IE5VTEwsCisJCQkgICAgICZzaS5TdGFydHVwSW5mbywgJnBpKTsKKworCS8qCisJICogT24gV2luZG93cyAyMDA4IFIyLCBpdCBzZWVtcyB0aGF0IHNwZWNpZnlpbmcgY2VydGFpbiB0eXBlcyBvZiBoYW5kbGVzCisJICogKHN1Y2ggYXMgRklMRV9UWVBFX0NIQVIgb3IgRklMRV9UWVBFX1BJUEUpIHdpbGwgYWx3YXlzIHByb2R1Y2UgYW4KKwkgKiBlcnJvci4gUmF0aGVyIHRoYW4gcGxheWluZyBmaW5pY2t5IGFuZCBmcmFnaWxlIGdhbWVzLCBsZXQncyBqdXN0IHRyeQorCSAqIHRvIGRldGVjdCB0aGlzIHNpdHVhdGlvbiBhbmQgc2ltcGx5IHRyeSBhZ2FpbiB3aXRob3V0IHJlc3RyaWN0aW5nIGFueQorCSAqIGhhbmRsZSBpbmhlcml0YW5jZS4gVGhpcyBpcyBzdGlsbCBiZXR0ZXIgdGhhbiBmYWlsaW5nIHRvIGNyZWF0ZQorCSAqIHByb2Nlc3Nlcy4KKwkgKi8KKwlpZiAoIXJldCAmJiByZXN0cmljdF9oYW5kbGVfaW5oZXJpdGFuY2UgJiYgc3RkaGFuZGxlc19jb3VudCkgeworCQlEV09SRCBlcnIgPSBHZXRMYXN0RXJyb3IoKTsKKwkJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKKworCQlpZiAoZXJyICE9IEVSUk9SX05PX1NZU1RFTV9SRVNPVVJDRVMgJiYKKwkJICAgIC8qCisJCSAgICAgKiBPbiBXaW5kb3dzIDcgYW5kIGVhcmxpZXIsIGhhbmRsZXMgb24gcGlwZXMgYW5kIGNoYXJhY3RlcgorCQkgICAgICogZGV2aWNlcyBhcmUgaW5oZXJpdGVkIGF1dG9tYXRpY2FsbHksIGFuZCBjYW5ub3QgYmUKKwkJICAgICAqIHNwZWNpZmllZCBpbiB0aGUgdGhyZWFkIGhhbmRsZSBsaXN0LiBSYXRoZXIgdGhhbiB0cnlpbmcKKwkJICAgICAqIHRvIGNhdGNoIGVhY2ggYW5kIGV2ZXJ5IGNvcm5lciBjYXNlIChhbmQgcnVubmluZyB0aGUKKwkJICAgICAqIGNoYW5jZSBvZiAqc3RpbGwqIGZvcmdldHRpbmcgYSBmZXcpLCBsZXQncyBqdXN0IGZhbGwKKwkJICAgICAqIGJhY2sgdG8gY3JlYXRpbmcgdGhlIHByb2Nlc3Mgd2l0aG91dCB0cnlpbmcgdG8gbGltaXQgdGhlCisJCSAgICAgKiBoYW5kbGUgaW5oZXJpdGFuY2UuCisJCSAgICAgKi8KKwkJICAgICEoZXJyID09IEVSUk9SX0lOVkFMSURfUEFSQU1FVEVSICYmCisJCSAgICAgIEdldFZlcnNpb24oKSA+PiAxNiA8IDkyMDApICYmCisJCSAgICAhZ2V0ZW52KCJTVVBQUkVTU19IQU5ETEVfSU5IRVJJVEFOQ0VfV0FSTklORyIpKSB7CisJCQlEV09SRCBmbCA9IDA7CisJCQlpbnQgaTsKKworCQkJc2V0ZW52KCJTVVBQUkVTU19IQU5ETEVfSU5IRVJJVEFOQ0VfV0FSTklORyIsICIxIiwgMSk7CisKKwkJCWZvciAoaSA9IDA7IGkgPCBzdGRoYW5kbGVzX2NvdW50OyBpKyspIHsKKwkJCQlIQU5ETEUgaCA9IHN0ZGhhbmRsZXNbaV07CisJCQkJc3RyYnVmX2FkZGYoJmJ1ZiwgImhhbmRsZSAjJWQ6ICVwICh0eXBlICVseCwgIgorCQkJCQkgICAgImhhbmRsZSBpbmZvICglZCkgJWx4XG4iLCBpLCBoLAorCQkJCQkgICAgR2V0RmlsZVR5cGUoaCksCisJCQkJCSAgICBHZXRIYW5kbGVJbmZvcm1hdGlvbihoLCAmZmwpLAorCQkJCQkgICAgZmwpOworCQkJfQorCQkJc3RyYnVmX2FkZHN0cigmYnVmLCAiXG5UaGlzIGlzIGEgYnVnOyBwbGVhc2UgcmVwb3J0IGl0ICIKKwkJCQkgICAgICAiYXRcbmh0dHBzOi8vZ2l0aHViLmNvbS9naXQtZm9yLXdpbmRvd3MvIgorCQkJCSAgICAgICJnaXQvaXNzdWVzL25ld1xuXG4iCisJCQkJICAgICAgIlRvIHN1cHByZXNzIHRoaXMgd2FybmluZywgcGxlYXNlIHNldCAiCisJCQkJICAgICAgInRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZVxuXG4iCisJCQkJICAgICAgIlx0U1VQUFJFU1NfSEFORExFX0lOSEVSSVRBTkNFX1dBUk5JTkc9MSIKKwkJCQkgICAgICAiXG4iKTsKKwkJfQorCQlyZXN0cmljdF9oYW5kbGVfaW5oZXJpdGFuY2UgPSAwOworCQlmbGFncyAmPSB+RVhURU5ERURfU1RBUlRVUElORk9fUFJFU0VOVDsKKwkJcmV0ID0gQ3JlYXRlUHJvY2Vzc1coKndjbWQgPyB3Y21kIDogTlVMTCwgd2FyZ3MsIE5VTEwsIE5VTEwsCisJCQkJICAgICBUUlVFLCBmbGFncywgd2VudmJsaywgZGlyID8gd2RpciA6IE5VTEwsCisJCQkJICAgICAmc2kuU3RhcnR1cEluZm8sICZwaSk7CisJCWlmICghcmV0KQorCQkJZXJybm8gPSBlcnJfd2luX3RvX3Bvc2l4KEdldExhc3RFcnJvcigpKTsKKwkJaWYgKHJldCAmJiBidWYubGVuKSB7CisJCQl3YXJuaW5nKCJmYWlsZWQgdG8gcmVzdHJpY3QgZmlsZSBoYW5kbGVzICglbGQpXG5cbiVzIiwKKwkJCQllcnIsIGJ1Zi5idWYpOworCQl9CisJCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOworCX0gZWxzZSBpZiAoIXJldCkKKwkJZXJybm8gPSBlcnJfd2luX3RvX3Bvc2l4KEdldExhc3RFcnJvcigpKTsKKworCWlmIChzaS5scEF0dHJpYnV0ZUxpc3QpCisJCURlbGV0ZVByb2NUaHJlYWRBdHRyaWJ1dGVMaXN0KHNpLmxwQXR0cmlidXRlTGlzdCk7CisJaWYgKGF0dHJfbGlzdCkKKwkJSGVhcEZyZWUoR2V0UHJvY2Vzc0hlYXAoKSwgMCwgYXR0cl9saXN0KTsKIAogCWZyZWUod2VudmJsayk7CiAJZnJlZSh3YXJncyk7CiAKLQlpZiAoIXJldCkgewotCQllcnJubyA9IEVOT0VOVDsKKwlpZiAoIXJldCkKIAkJcmV0dXJuIC0xOwotCX0KKwogCUNsb3NlSGFuZGxlKHBpLmhUaHJlYWQpOwogCiAJLyoKQEAgLTE1MDAsMTkgKzE3MzYsMjYgQEAKIAkJcmV0dXJuIDA7CiAJcHJvZyA9IHBhdGhfbG9va3VwKGludGVycHIsIDEpOwogCWlmIChwcm9nKSB7CisJCWludCBleGVjX2lkOwogCQlpbnQgYXJnYyA9IDA7Ci0JCWNvbnN0IGNoYXIgKiphcmd2MjsKKyNpZm5kZWYgX01TQ19WRVIKKwkJY29uc3QKKyNlbmRpZgorCQljaGFyICoqYXJndjI7CiAJCXdoaWxlIChhcmd2W2FyZ2NdKSBhcmdjKys7CiAJCUFMTE9DX0FSUkFZKGFyZ3YyLCBhcmdjICsgMSk7CiAJCWFyZ3YyWzBdID0gKGNoYXIgKiljbWQ7CS8qIGZ1bGwgcGF0aCB0byB0aGUgc2NyaXB0IGZpbGUgKi8KLQkJbWVtY3B5KCZhcmd2MlsxXSwgJmFyZ3ZbMV0sIHNpemVvZigqYXJndikgKiBhcmdjKTsKKwkJQ09QWV9BUlJBWSgmYXJndjJbMV0sICZhcmd2WzFdLCBhcmdjKTsKKwkJZXhlY19pZCA9IHRyYWNlMl9leGVjKHByb2csIGFyZ3YyKTsKIAkJcGlkID0gbWluZ3dfc3Bhd252KHByb2csIGFyZ3YyLCAxKTsKIAkJaWYgKHBpZCA+PSAwKSB7CiAJCQlpbnQgc3RhdHVzOwogCQkJaWYgKHdhaXRwaWQocGlkLCAmc3RhdHVzLCAwKSA8IDApCiAJCQkJc3RhdHVzID0gMjU1OworCQkJdHJhY2UyX2V4ZWNfcmVzdWx0KGV4ZWNfaWQsIHN0YXR1cyk7CiAJCQlleGl0KHN0YXR1cyk7CiAJCX0KKwkJdHJhY2UyX2V4ZWNfcmVzdWx0KGV4ZWNfaWQsIC0xKTsKIAkJcGlkID0gMTsJLyogaW5kaWNhdGUgdGhhdCB3ZSB0cmllZCBidXQgZmFpbGVkICovCiAJCWZyZWUocHJvZyk7CiAJCWZyZWUoYXJndjIpOwpAQCAtMTUyNSwxMiArMTc2OCwxNyBAQAogCS8qIGNoZWNrIGlmIGdpdF9jb21tYW5kIGlzIGEgc2hlbGwgc2NyaXB0ICovCiAJaWYgKCF0cnlfc2hlbGxfZXhlYyhjbWQsIGFyZ3YpKSB7CiAJCWludCBwaWQsIHN0YXR1czsKKwkJaW50IGV4ZWNfaWQ7CiAKKwkJZXhlY19pZCA9IHRyYWNlMl9leGVjKGNtZCwgKGNvbnN0IGNoYXIgKiopYXJndik7CiAJCXBpZCA9IG1pbmd3X3NwYXdudihjbWQsIChjb25zdCBjaGFyICoqKWFyZ3YsIDApOwotCQlpZiAocGlkIDwgMCkKKwkJaWYgKHBpZCA8IDApIHsKKwkJCXRyYWNlMl9leGVjX3Jlc3VsdChleGVjX2lkLCAtMSk7CiAJCQlyZXR1cm4gLTE7CisJCX0KIAkJaWYgKHdhaXRwaWQocGlkLCAmc3RhdHVzLCAwKSA8IDApCiAJCQlzdGF0dXMgPSAyNTU7CisJCXRyYWNlMl9leGVjX3Jlc3VsdChleGVjX2lkLCBzdGF0dXMpOwogCQlleGl0KHN0YXR1cyk7CiAJfQogCXJldHVybiAtMTsKQEAgLTE1ODEsNyArMTgyOSw3IEBACiAgKi8KIGNoYXIgKm1pbmd3X2dldGVudihjb25zdCBjaGFyICpuYW1lKQogewotI2RlZmluZSBHRVRFTlZfTUFYX1JFVEFJTiAzMAorI2RlZmluZSBHRVRFTlZfTUFYX1JFVEFJTiA2NAogCXN0YXRpYyBjaGFyICp2YWx1ZXNbR0VURU5WX01BWF9SRVRBSU5dOwogCXN0YXRpYyBpbnQgdmFsdWVfY291bnRlcjsKIAlpbnQgbGVuX2tleSwgbGVuX3ZhbHVlOwpAQCAtMTU5OCw2ICsxODQ2LDggQEAKIAlpZiAoIXdfa2V5KQogCQlkaWUoIk91dCBvZiBtZW1vcnksICh0cmllZCB0byBhbGxvY2F0ZSAldSB3Y2hhcl90J3MpIiwgbGVuX2tleSk7CiAJeHV0ZnRvd2NzKHdfa2V5LCBuYW1lLCBsZW5fa2V5KTsKKwkvKiBHZXRFbnZpcm9ubWVudFZhcmlhYmxlVygpIG9ubHkgc2V0cyB0aGUgbGFzdCBlcnJvciB1cG9uIGZhaWx1cmUgKi8KKwlTZXRMYXN0RXJyb3IoRVJST1JfU1VDQ0VTUyk7CiAJbGVuX3ZhbHVlID0gR2V0RW52aXJvbm1lbnRWYXJpYWJsZVcod19rZXksIHdfdmFsdWUsIEFSUkFZX1NJWkUod192YWx1ZSkpOwogCWlmICghbGVuX3ZhbHVlICYmIEdldExhc3RFcnJvcigpID09IEVSUk9SX0VOVlZBUl9OT1RfRk9VTkQpIHsKIAkJZnJlZSh3X2tleSk7CkBAIC0xNjU0LDE0MiArMTkwNCwxMCBAQAogCXJldHVybiByZXN1bHQgPyAwIDogLTE7CiB9CiAKLS8qCi0gKiBOb3RlLCB0aGlzIGlzbid0IGEgY29tcGxldGUgcmVwbGFjZW1lbnQgZm9yIGdldGFkZHJpbmZvLiBJdCBhc3N1bWVzCi0gKiB0aGF0IHNlcnZpY2UgY29udGFpbnMgYSBudW1lcmljYWwgcG9ydCwgb3IgdGhhdCBpdCBpcyBudWxsLiBJdAotICogZG9lcyBhIHNpbXBsZSBzZWFyY2ggdXNpbmcgZ2V0aG9zdGJ5bmFtZSwgYW5kIHJldHVybnMgb25lIElQdjQgaG9zdAotICogaWYgb25lIHdhcyBmb3VuZC4KLSAqLwotc3RhdGljIGludCBXU0FBUEkgZ2V0YWRkcmluZm9fc3R1Yihjb25zdCBjaGFyICpub2RlLCBjb25zdCBjaGFyICpzZXJ2aWNlLAotCQkJCSAgIGNvbnN0IHN0cnVjdCBhZGRyaW5mbyAqaGludHMsCi0JCQkJICAgc3RydWN0IGFkZHJpbmZvICoqcmVzKQotewotCXN0cnVjdCBob3N0ZW50ICpoID0gTlVMTDsKLQlzdHJ1Y3QgYWRkcmluZm8gKmFpOwotCXN0cnVjdCBzb2NrYWRkcl9pbiAqc2luOwotCi0JaWYgKG5vZGUpIHsKLQkJaCA9IGdldGhvc3RieW5hbWUobm9kZSk7Ci0JCWlmICghaCkKLQkJCXJldHVybiBXU0FHZXRMYXN0RXJyb3IoKTsKLQl9Ci0KLQlhaSA9IHhtYWxsb2Moc2l6ZW9mKHN0cnVjdCBhZGRyaW5mbykpOwotCSpyZXMgPSBhaTsKLQlhaS0+YWlfZmxhZ3MgPSAwOwotCWFpLT5haV9mYW1pbHkgPSBBRl9JTkVUOwotCWFpLT5haV9zb2NrdHlwZSA9IGhpbnRzID8gaGludHMtPmFpX3NvY2t0eXBlIDogMDsKLQlzd2l0Y2ggKGFpLT5haV9zb2NrdHlwZSkgewotCWNhc2UgU09DS19TVFJFQU06Ci0JCWFpLT5haV9wcm90b2NvbCA9IElQUFJPVE9fVENQOwotCQlicmVhazsKLQljYXNlIFNPQ0tfREdSQU06Ci0JCWFpLT5haV9wcm90b2NvbCA9IElQUFJPVE9fVURQOwotCQlicmVhazsKLQlkZWZhdWx0OgotCQlhaS0+YWlfcHJvdG9jb2wgPSAwOwotCQlicmVhazsKLQl9Ci0JYWktPmFpX2FkZHJsZW4gPSBzaXplb2Yoc3RydWN0IHNvY2thZGRyX2luKTsKLQlpZiAoaGludHMgJiYgKGhpbnRzLT5haV9mbGFncyAmIEFJX0NBTk9OTkFNRSkpCi0JCWFpLT5haV9jYW5vbm5hbWUgPSBoID8geHN0cmR1cChoLT5oX25hbWUpIDogTlVMTDsKLQllbHNlCi0JCWFpLT5haV9jYW5vbm5hbWUgPSBOVUxMOwotCi0Jc2luID0geGNhbGxvYygxLCBhaS0+YWlfYWRkcmxlbik7Ci0Jc2luLT5zaW5fZmFtaWx5ID0gQUZfSU5FVDsKLQkvKiBOb3RlOiBnZXRhZGRyaW5mbyBpcyBzdXBwb3NlZCB0byBhbGxvdyBzZXJ2aWNlIHRvIGJlIGEgc3RyaW5nLAotCSAqIHdoaWNoIHNob3VsZCBiZSBsb29rZWQgdXAgdXNpbmcgZ2V0c2VydmJ5bmFtZS4gVGhpcyBpcwotCSAqIGN1cnJlbnRseSBub3QgaW1wbGVtZW50ZWQgKi8KLQlpZiAoc2VydmljZSkKLQkJc2luLT5zaW5fcG9ydCA9IGh0b25zKGF0b2koc2VydmljZSkpOwotCWlmIChoKQotCQlzaW4tPnNpbl9hZGRyID0gKihzdHJ1Y3QgaW5fYWRkciAqKWgtPmhfYWRkcjsKLQllbHNlIGlmIChoaW50cyAmJiAoaGludHMtPmFpX2ZsYWdzICYgQUlfUEFTU0lWRSkpCi0JCXNpbi0+c2luX2FkZHIuc19hZGRyID0gSU5BRERSX0FOWTsKLQllbHNlCi0JCXNpbi0+c2luX2FkZHIuc19hZGRyID0gSU5BRERSX0xPT1BCQUNLOwotCWFpLT5haV9hZGRyID0gKHN0cnVjdCBzb2NrYWRkciAqKXNpbjsKLQlhaS0+YWlfbmV4dCA9IE5VTEw7Ci0JcmV0dXJuIDA7Ci19Ci0KLXN0YXRpYyB2b2lkIFdTQUFQSSBmcmVlYWRkcmluZm9fc3R1YihzdHJ1Y3QgYWRkcmluZm8gKnJlcykKLXsKLQlmcmVlKHJlcy0+YWlfY2Fub25uYW1lKTsKLQlmcmVlKHJlcy0+YWlfYWRkcik7Ci0JZnJlZShyZXMpOwotfQotCi1zdGF0aWMgaW50IFdTQUFQSSBnZXRuYW1laW5mb19zdHViKGNvbnN0IHN0cnVjdCBzb2NrYWRkciAqc2EsIHNvY2tsZW5fdCBzYWxlbiwKLQkJCQkgICBjaGFyICpob3N0LCBEV09SRCBob3N0bGVuLAotCQkJCSAgIGNoYXIgKnNlcnYsIERXT1JEIHNlcnZsZW4sIGludCBmbGFncykKLXsKLQljb25zdCBzdHJ1Y3Qgc29ja2FkZHJfaW4gKnNpbiA9IChjb25zdCBzdHJ1Y3Qgc29ja2FkZHJfaW4gKilzYTsKLQlpZiAoc2EtPnNhX2ZhbWlseSAhPSBBRl9JTkVUKQotCQlyZXR1cm4gRUFJX0ZBTUlMWTsKLQlpZiAoIWhvc3QgJiYgIXNlcnYpCi0JCXJldHVybiBFQUlfTk9OQU1FOwotCi0JaWYgKGhvc3QgJiYgaG9zdGxlbiA+IDApIHsKLQkJc3RydWN0IGhvc3RlbnQgKmVudCA9IE5VTEw7Ci0JCWlmICghKGZsYWdzICYgTklfTlVNRVJJQ0hPU1QpKQotCQkJZW50ID0gZ2V0aG9zdGJ5YWRkcigoY29uc3QgY2hhciAqKSZzaW4tPnNpbl9hZGRyLAotCQkJCQkgICAgc2l6ZW9mKHNpbi0+c2luX2FkZHIpLCBBRl9JTkVUKTsKLQotCQlpZiAoZW50KQotCQkJc25wcmludGYoaG9zdCwgaG9zdGxlbiwgIiVzIiwgZW50LT5oX25hbWUpOwotCQllbHNlIGlmIChmbGFncyAmIE5JX05BTUVSRVFEKQotCQkJcmV0dXJuIEVBSV9OT05BTUU7Ci0JCWVsc2UKLQkJCXNucHJpbnRmKGhvc3QsIGhvc3RsZW4sICIlcyIsIGluZXRfbnRvYShzaW4tPnNpbl9hZGRyKSk7Ci0JfQotCi0JaWYgKHNlcnYgJiYgc2VydmxlbiA+IDApIHsKLQkJc3RydWN0IHNlcnZlbnQgKmVudCA9IE5VTEw7Ci0JCWlmICghKGZsYWdzICYgTklfTlVNRVJJQ1NFUlYpKQotCQkJZW50ID0gZ2V0c2VydmJ5cG9ydChzaW4tPnNpbl9wb3J0LAotCQkJCQkgICAgZmxhZ3MgJiBOSV9ER1JBTSA/ICJ1ZHAiIDogInRjcCIpOwotCi0JCWlmIChlbnQpCi0JCQlzbnByaW50ZihzZXJ2LCBzZXJ2bGVuLCAiJXMiLCBlbnQtPnNfbmFtZSk7Ci0JCWVsc2UKLQkJCXNucHJpbnRmKHNlcnYsIHNlcnZsZW4sICIlZCIsIG50b2hzKHNpbi0+c2luX3BvcnQpKTsKLQl9Ci0KLQlyZXR1cm4gMDsKLX0KLQotc3RhdGljIEhNT0RVTEUgaXB2Nl9kbGwgPSBOVUxMOwotc3RhdGljIHZvaWQgKFdTQUFQSSAqaXB2Nl9mcmVlYWRkcmluZm8pKHN0cnVjdCBhZGRyaW5mbyAqcmVzKTsKLXN0YXRpYyBpbnQgKFdTQUFQSSAqaXB2Nl9nZXRhZGRyaW5mbykoY29uc3QgY2hhciAqbm9kZSwgY29uc3QgY2hhciAqc2VydmljZSwKLQkJCQkgICAgICBjb25zdCBzdHJ1Y3QgYWRkcmluZm8gKmhpbnRzLAotCQkJCSAgICAgIHN0cnVjdCBhZGRyaW5mbyAqKnJlcyk7Ci1zdGF0aWMgaW50IChXU0FBUEkgKmlwdjZfZ2V0bmFtZWluZm8pKGNvbnN0IHN0cnVjdCBzb2NrYWRkciAqc2EsIHNvY2tsZW5fdCBzYWxlbiwKLQkJCQkgICAgICBjaGFyICpob3N0LCBEV09SRCBob3N0bGVuLAotCQkJCSAgICAgIGNoYXIgKnNlcnYsIERXT1JEIHNlcnZsZW4sIGludCBmbGFncyk7Ci0vKgotICogZ2FpX3N0cmVycm9yIGlzIGFuIGlubGluZSBmdW5jdGlvbiBpbiB0aGUgd3MydGNwaXAuaCBoZWFkZXIsIHNvIHdlCi0gKiBkb24ndCBuZWVkIHRvIHRyeSB0byBsb2FkIHRoYXQgb25lIGR5bmFtaWNhbGx5LgotICovCi0KLXN0YXRpYyB2b2lkIHNvY2tldF9jbGVhbnVwKHZvaWQpCi17Ci0JV1NBQ2xlYW51cCgpOwotCWlmIChpcHY2X2RsbCkKLQkJRnJlZUxpYnJhcnkoaXB2Nl9kbGwpOwotCWlwdjZfZGxsID0gTlVMTDsKLQlpcHY2X2ZyZWVhZGRyaW5mbyA9IGZyZWVhZGRyaW5mb19zdHViOwotCWlwdjZfZ2V0YWRkcmluZm8gPSBnZXRhZGRyaW5mb19zdHViOwotCWlwdjZfZ2V0bmFtZWluZm8gPSBnZXRuYW1laW5mb19zdHViOwotfQotCiBzdGF0aWMgdm9pZCBlbnN1cmVfc29ja2V0X2luaXRpYWxpemF0aW9uKHZvaWQpCiB7CiAJV1NBREFUQSB3c2E7CiAJc3RhdGljIGludCBpbml0aWFsaXplZCA9IDA7Ci0JY29uc3QgY2hhciAqbGlicmFyaWVzW10gPSB7ICJ3czJfMzIuZGxsIiwgIndzaGlwNi5kbGwiLCBOVUxMIH07Ci0JY29uc3QgY2hhciAqKm5hbWU7CiAKIAlpZiAoaW5pdGlhbGl6ZWQpCiAJCXJldHVybjsKQEAgLTE3OTgsMzUgKzE5MTYsNyBAQAogCQlkaWUoInVuYWJsZSB0byBpbml0aWFsaXplIHdpbnNvY2sgc3Vic3lzdGVtLCBlcnJvciAlZCIsCiAJCQlXU0FHZXRMYXN0RXJyb3IoKSk7CiAKLQlmb3IgKG5hbWUgPSBsaWJyYXJpZXM7ICpuYW1lOyBuYW1lKyspIHsKLQkJaXB2Nl9kbGwgPSBMb2FkTGlicmFyeUV4QSgqbmFtZSwgTlVMTCwKLQkJCQkJICBMT0FEX0xJQlJBUllfU0VBUkNIX1NZU1RFTTMyKTsKLQkJaWYgKCFpcHY2X2RsbCkKLQkJCWNvbnRpbnVlOwotCi0JCWlwdjZfZnJlZWFkZHJpbmZvID0gKHZvaWQgKFdTQUFQSSAqKShzdHJ1Y3QgYWRkcmluZm8gKikpCi0JCQlHZXRQcm9jQWRkcmVzcyhpcHY2X2RsbCwgImZyZWVhZGRyaW5mbyIpOwotCQlpcHY2X2dldGFkZHJpbmZvID0gKGludCAoV1NBQVBJICopKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLAotCQkJCQkJICAgY29uc3Qgc3RydWN0IGFkZHJpbmZvICosCi0JCQkJCQkgICBzdHJ1Y3QgYWRkcmluZm8gKiopKQotCQkJR2V0UHJvY0FkZHJlc3MoaXB2Nl9kbGwsICJnZXRhZGRyaW5mbyIpOwotCQlpcHY2X2dldG5hbWVpbmZvID0gKGludCAoV1NBQVBJICopKGNvbnN0IHN0cnVjdCBzb2NrYWRkciAqLAotCQkJCQkJICAgc29ja2xlbl90LCBjaGFyICosIERXT1JELAotCQkJCQkJICAgY2hhciAqLCBEV09SRCwgaW50KSkKLQkJCUdldFByb2NBZGRyZXNzKGlwdjZfZGxsLCAiZ2V0bmFtZWluZm8iKTsKLQkJaWYgKCFpcHY2X2ZyZWVhZGRyaW5mbyB8fCAhaXB2Nl9nZXRhZGRyaW5mbyB8fCAhaXB2Nl9nZXRuYW1laW5mbykgewotCQkJRnJlZUxpYnJhcnkoaXB2Nl9kbGwpOwotCQkJaXB2Nl9kbGwgPSBOVUxMOwotCQl9IGVsc2UKLQkJCWJyZWFrOwotCX0KLQlpZiAoIWlwdjZfZnJlZWFkZHJpbmZvIHx8ICFpcHY2X2dldGFkZHJpbmZvIHx8ICFpcHY2X2dldG5hbWVpbmZvKSB7Ci0JCWlwdjZfZnJlZWFkZHJpbmZvID0gZnJlZWFkZHJpbmZvX3N0dWI7Ci0JCWlwdjZfZ2V0YWRkcmluZm8gPSBnZXRhZGRyaW5mb19zdHViOwotCQlpcHY2X2dldG5hbWVpbmZvID0gZ2V0bmFtZWluZm9fc3R1YjsKLQl9Ci0KLQlhdGV4aXQoc29ja2V0X2NsZWFudXApOworCWF0ZXhpdCgodm9pZCgqKSh2b2lkKSkgV1NBQ2xlYW51cCk7CiAJaW5pdGlhbGl6ZWQgPSAxOwogfQogCkBAIC0xODQ0LDI0ICsxOTM0LDEyIEBACiAJcmV0dXJuIGdldGhvc3RieW5hbWUoaG9zdCk7CiB9CiAKLXZvaWQgbWluZ3dfZnJlZWFkZHJpbmZvKHN0cnVjdCBhZGRyaW5mbyAqcmVzKQotewotCWlwdjZfZnJlZWFkZHJpbmZvKHJlcyk7Ci19Ci0KKyN1bmRlZiBnZXRhZGRyaW5mbwogaW50IG1pbmd3X2dldGFkZHJpbmZvKGNvbnN0IGNoYXIgKm5vZGUsIGNvbnN0IGNoYXIgKnNlcnZpY2UsCiAJCSAgICAgIGNvbnN0IHN0cnVjdCBhZGRyaW5mbyAqaGludHMsIHN0cnVjdCBhZGRyaW5mbyAqKnJlcykKIHsKIAllbnN1cmVfc29ja2V0X2luaXRpYWxpemF0aW9uKCk7Ci0JcmV0dXJuIGlwdjZfZ2V0YWRkcmluZm8obm9kZSwgc2VydmljZSwgaGludHMsIHJlcyk7Ci19Ci0KLWludCBtaW5nd19nZXRuYW1laW5mbyhjb25zdCBzdHJ1Y3Qgc29ja2FkZHIgKnNhLCBzb2NrbGVuX3Qgc2FsZW4sCi0JCSAgICAgIGNoYXIgKmhvc3QsIERXT1JEIGhvc3RsZW4sIGNoYXIgKnNlcnYsIERXT1JEIHNlcnZsZW4sCi0JCSAgICAgIGludCBmbGFncykKLXsKLQllbnN1cmVfc29ja2V0X2luaXRpYWxpemF0aW9uKCk7Ci0JcmV0dXJuIGlwdjZfZ2V0bmFtZWluZm8oc2EsIHNhbGVuLCBob3N0LCBob3N0bGVuLCBzZXJ2LCBzZXJ2bGVuLCBmbGFncyk7CisJcmV0dXJuIGdldGFkZHJpbmZvKG5vZGUsIHNlcnZpY2UsIGhpbnRzLCByZXMpOwogfQogCiBpbnQgbWluZ3dfc29ja2V0KGludCBkb21haW4sIGludCB0eXBlLCBpbnQgcHJvdG9jb2wpCkBAIC0yMDU4LDEzICsyMTM2LDE5IEBACiAJc3RhdGljIHVuc2lnbmVkIGluaXRpYWxpemVkOwogCXN0YXRpYyBjaGFyIHVzZXJfbmFtZVsxMDBdOwogCXN0YXRpYyBzdHJ1Y3QgcGFzc3dkICpwOworCXdjaGFyX3QgYnVmWzEwMF07CiAJRFdPUkQgbGVuOwogCiAJaWYgKGluaXRpYWxpemVkKQogCQlyZXR1cm4gcDsKIAotCWxlbiA9IHNpemVvZih1c2VyX25hbWUpOwotCWlmICghR2V0VXNlck5hbWUodXNlcl9uYW1lLCAmbGVuKSkgeworCWxlbiA9IEFSUkFZX1NJWkUoYnVmKTsKKwlpZiAoIUdldFVzZXJOYW1lVyhidWYsICZsZW4pKSB7CisJCWluaXRpYWxpemVkID0gMTsKKwkJcmV0dXJuIE5VTEw7CisJfQorCisJaWYgKHh3Y3N0b3V0Zih1c2VyX25hbWUsIGJ1Ziwgc2l6ZW9mKHVzZXJfbmFtZSkpIDwgMCkgewogCQlpbml0aWFsaXplZCA9IDE7CiAJCXJldHVybiBOVUxMOwogCX0KQEAgLTIxMjQsNyArMjIwOCw3IEBACiAJaWYgKHRpbWVyX2V2ZW50KQogCQlTZXRFdmVudCh0aW1lcl9ldmVudCk7CS8qIHRlbGwgdGhyZWFkIHRvIHRlcm1pbmF0ZSAqLwogCWlmICh0aW1lcl90aHJlYWQpIHsKLQkJaW50IHJjID0gV2FpdEZvclNpbmdsZU9iamVjdCh0aW1lcl90aHJlYWQsIDEwMDApOworCQlpbnQgcmMgPSBXYWl0Rm9yU2luZ2xlT2JqZWN0KHRpbWVyX3RocmVhZCwgMTAwMDApOwogCQlpZiAocmMgPT0gV0FJVF9USU1FT1VUKQogCQkJZXJyb3IoInRpbWVyIHRocmVhZCBkaWQgbm90IHRlcm1pbmF0ZSB0aW1lbHkiKTsKIAkJZWxzZSBpZiAocmMgIT0gV0FJVF9PQkpFQ1RfMCkKQEAgLTIyMjgsOCArMjMxMiwzMyBAQAogCQkJc2lnaW50X2ZuKFNJR0lOVCk7CiAJCXJldHVybiAwOwogCisjaWYgZGVmaW5lZChfTVNDX1ZFUikKKwljYXNlIFNJR0lMTDoKKwljYXNlIFNJR0ZQRToKKwljYXNlIFNJR1NFR1Y6CisJY2FzZSBTSUdURVJNOgorCWNhc2UgU0lHQlJFQUs6CisJY2FzZSBTSUdBQlJUOgorCWNhc2UgU0lHQUJSVF9DT01QQVQ6CisJCS8qCisJCSAqIFRoZSA8c2lnbmFsLmg+IGhlYWRlciBpbiB0aGUgTVMgQyBSdW50aW1lIGRlZmluZXMgOCBzaWduYWxzCisJCSAqIGFzIGJlaW5nIHN1cHBvcnRlZCBvbiB0aGUgcGxhdGZvcm0uIEFueXRoaW5nIGVsc2UgY2F1c2VzIGFuCisJCSAqICJJbnZhbGlkIHNpZ25hbCBvciBlcnJvciIgKHdoaWNoIGluIERFQlVHIGJ1aWxkcyBjYXVzZXMgdGhlCisJCSAqIEFib3J0L1JldHJ5L0lnbm9yZSBkaWFsb2cpLiBXZSBieS1wYXNzIHRoZSBDUlQgZm9yIHRoaW5ncyB3ZQorCQkgKiBhbHJlYWR5IGtub3cgd2lsbCBmYWlsLgorCQkgKi8KKwkJcmV0dXJuIHJhaXNlKHNpZyk7CisJZGVmYXVsdDoKKwkJZXJybm8gPSBFSU5WQUw7CisJCXJldHVybiAtMTsKKworI2Vsc2UKKwogCWRlZmF1bHQ6CiAJCXJldHVybiByYWlzZShzaWcpOworCisjZW5kaWYKKwogCX0KIH0KIApAQCAtMjI5OSw1NyArMjQwOCw2IEBACiAJcmV0dXJuIC0xOwogfQogCi1pbnQgbWluZ3dfaGFzX2Rvc19kcml2ZV9wcmVmaXgoY29uc3QgY2hhciAqcGF0aCkKLXsKLQlpbnQgaTsKLQotCS8qCi0JICogRG9lcyBpdCBzdGFydCB3aXRoIGFuIEFTQ0lJIGxldHRlciAoaS5lLiBoaWdoZXN0IGJpdCBub3Qgc2V0KSwKLQkgKiBmb2xsb3dlZCBieSBhIGNvbG9uPwotCSAqLwotCWlmICghKDB4ODAgJiAodW5zaWduZWQgY2hhcikqcGF0aCkpCi0JCXJldHVybiAqcGF0aCAmJiBwYXRoWzFdID09ICc6JyA/IDIgOiAwOwotCi0JLyoKLQkgKiBXaGlsZSBkcml2ZSBsZXR0ZXJzIG11c3QgYmUgbGV0dGVycyBvZiB0aGUgRW5nbGlzaCBhbHBoYWJldCwgaXQgaXMKLQkgKiBwb3NzaWJsZSB0byBhc3NpZ24gdmlydHVhbGx5IF9hbnlfIFVuaWNvZGUgY2hhcmFjdGVyIHZpYSBgc3Vic3RgIGFzCi0JICogYSBkcml2ZSBsZXR0ZXIgdG8gInZpcnR1YWwgZHJpdmVzIi4gRXZlbiBgMWAsIG9yIGDDpGAuIE9yIGZ1biBzdHVmZgotCSAqIGxpa2UgdGhpczoKLQkgKgotCSAqICAgICAgc3Vic3Qg1o06ICVVU0VSUFJPRklMRSVcRGVza3RvcAotCSAqLwotCWZvciAoaSA9IDE7IGkgPCA0ICYmICgweDgwICYgKHVuc2lnbmVkIGNoYXIpcGF0aFtpXSk7IGkrKykKLQkJOyAvKiBza2lwIGZpcnN0IFVURi04IGNoYXJhY3RlciAqLwotCXJldHVybiBwYXRoW2ldID09ICc6JyA/IGkgKyAxIDogMDsKLX0KLQotaW50IG1pbmd3X3NraXBfZG9zX2RyaXZlX3ByZWZpeChjaGFyICoqcGF0aCkKLXsKLQlpbnQgcmV0ID0gaGFzX2Rvc19kcml2ZV9wcmVmaXgoKnBhdGgpOwotCSpwYXRoICs9IHJldDsKLQlyZXR1cm4gcmV0OwotfQotCi1pbnQgbWluZ3dfb2Zmc2V0XzFzdF9jb21wb25lbnQoY29uc3QgY2hhciAqcGF0aCkKLXsKLQljaGFyICpwb3MgPSAoY2hhciAqKXBhdGg7Ci0KLQkvKiB1bmMgcGF0aHMgKi8KLQlpZiAoIXNraXBfZG9zX2RyaXZlX3ByZWZpeCgmcG9zKSAmJgotCQkJaXNfZGlyX3NlcChwb3NbMF0pICYmIGlzX2Rpcl9zZXAocG9zWzFdKSkgewotCQkvKiBza2lwIHNlcnZlciBuYW1lICovCi0JCXBvcyA9IHN0cnBicmsocG9zICsgMiwgIlxcLyIpOwotCQlpZiAoIXBvcykKLQkJCXJldHVybiAwOyAvKiBFcnJvcjogbWFsZm9ybWVkIHVuYyBwYXRoICovCi0KLQkJZG8gewotCQkJcG9zKys7Ci0JCX0gd2hpbGUgKCpwb3MgJiYgIWlzX2Rpcl9zZXAoKnBvcykpOwotCX0KLQotCXJldHVybiBwb3MgKyBpc19kaXJfc2VwKCpwb3MpIC0gcGF0aDsKLX0KLQogaW50IHh1dGZ0b3djc24od2NoYXJfdCAqd2NzLCBjb25zdCBjaGFyICp1dGZzLCBzaXplX3Qgd2NzbGVuLCBpbnQgdXRmbGVuKQogewogCWludCB1cG9zID0gMCwgd3BvcyA9IDA7CkBAIC0yNDYyLDE2ICsyNTIwLDQyIEBACiAJLyogc2ltdWxhdGUgVEVSTSB0byBlbmFibGUgYXV0by1jb2xvciAoc2VlIGNvbG9yLmMpICovCiAJaWYgKCFnZXRlbnYoIlRFUk0iKSkKIAkJc2V0ZW52KCJURVJNIiwgImN5Z3dpbiIsIDEpOworCisJLyogY2FsY3VsYXRlIEhPTUUgaWYgbm90IHNldCAqLworCWlmICghZ2V0ZW52KCJIT01FIikpIHsKKwkJLyoKKwkJICogdHJ5ICRIT01FRFJJVkUkSE9NRVBBVEggLSB0aGUgaG9tZSBzaGFyZSBtYXkgYmUgYSBuZXR3b3JrCisJCSAqIGxvY2F0aW9uLCB0aHVzIGFsc28gY2hlY2sgaWYgdGhlIHBhdGggZXhpc3RzIChpLmUuIGlzIG5vdAorCQkgKiBkaXNjb25uZWN0ZWQpCisJCSAqLworCQlpZiAoKHRtcCA9IGdldGVudigiSE9NRURSSVZFIikpKSB7CisJCQlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOworCQkJc3RyYnVmX2FkZHN0cigmYnVmLCB0bXApOworCQkJaWYgKCh0bXAgPSBnZXRlbnYoIkhPTUVQQVRIIikpKSB7CisJCQkJc3RyYnVmX2FkZHN0cigmYnVmLCB0bXApOworCQkJCWlmIChpc19kaXJlY3RvcnkoYnVmLmJ1ZikpCisJCQkJCXNldGVudigiSE9NRSIsIGJ1Zi5idWYsIDEpOworCQkJCWVsc2UKKwkJCQkJdG1wID0gTlVMTDsgLyogdXNlICRVU0VSUFJPRklMRSAqLworCQkJfQorCQkJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CisJCX0KKwkJLyogdXNlICRVU0VSUFJPRklMRSBpZiB0aGUgaG9tZSBzaGFyZSBpcyBub3QgYXZhaWxhYmxlICovCisJCWlmICghdG1wICYmICh0bXAgPSBnZXRlbnYoIlVTRVJQUk9GSUxFIikpKQorCQkJc2V0ZW52KCJIT01FIiwgdG1wLCAxKTsKKwl9CiB9CiAKLWludCBpc192YWxpZF93aW4zMl9wYXRoKGNvbnN0IGNoYXIgKnBhdGgpCitpbnQgaXNfdmFsaWRfd2luMzJfcGF0aChjb25zdCBjaGFyICpwYXRoLCBpbnQgYWxsb3dfbGl0ZXJhbF9udWwpCiB7CisJY29uc3QgY2hhciAqcCA9IHBhdGg7CiAJaW50IHByZWNlZGluZ19zcGFjZV9vcl9wZXJpb2QgPSAwLCBpID0gMCwgcGVyaW9kcyA9IDA7CiAKIAlpZiAoIXByb3RlY3RfbnRmcykKIAkJcmV0dXJuIDE7CiAKIAlza2lwX2Rvc19kcml2ZV9wcmVmaXgoKGNoYXIgKiopJnBhdGgpOworCWdvdG8gc2VnbWVudF9zdGFydDsKIAogCWZvciAoOzspIHsKIAkJY2hhciBjID0gKihwYXRoKyspOwpAQCAtMjQ4Niw3ICsyNTcwLDgzIEBACiAJCQkJcmV0dXJuIDE7CiAKIAkJCWkgPSBwZXJpb2RzID0gcHJlY2VkaW5nX3NwYWNlX29yX3BlcmlvZCA9IDA7Ci0JCQljb250aW51ZTsKKworc2VnbWVudF9zdGFydDoKKwkJCXN3aXRjaCAoKnBhdGgpIHsKKwkJCWNhc2UgJ2EnOiBjYXNlICdBJzogLyogQVVYICovCisJCQkJaWYgKCgoYyA9IHBhdGhbKytpXSkgIT0gJ3UnICYmIGMgIT0gJ1UnKSB8fAorCQkJCSAgICAoKGMgPSBwYXRoWysraV0pICE9ICd4JyAmJiBjICE9ICdYJykpIHsKK25vdF9hX3Jlc2VydmVkX25hbWU6CisJCQkJCXBhdGggKz0gaTsKKwkJCQkJY29udGludWU7CisJCQkJfQorCQkJCWJyZWFrOworCQkJY2FzZSAnYyc6IGNhc2UgJ0MnOiAvKiBDT008Tj4sIENPTiwgQ09OSU4kLCBDT05PVVQkICovCisJCQkJaWYgKChjID0gcGF0aFsrK2ldKSAhPSAnbycgJiYgYyAhPSAnTycpCisJCQkJCWdvdG8gbm90X2FfcmVzZXJ2ZWRfbmFtZTsKKwkJCQljID0gcGF0aFsrK2ldOworCQkJCWlmIChjID09ICdtJyB8fCBjID09ICdNJykgeyAvKiBDT008Tj4gKi8KKwkJCQkJaWYgKCFpc2RpZ2l0KHBhdGhbKytpXSkpCisJCQkJCQlnb3RvIG5vdF9hX3Jlc2VydmVkX25hbWU7CisJCQkJfSBlbHNlIGlmIChjID09ICduJyB8fCBjID09ICdOJykgeyAvKiBDT04gKi8KKwkJCQkJYyA9IHBhdGhbaSArIDFdOworCQkJCQlpZiAoKGMgPT0gJ2knIHx8IGMgPT0gJ0knKSAmJgorCQkJCQkgICAgKChjID0gcGF0aFtpICsgMl0pID09ICduJyB8fAorCQkJCQkgICAgIGMgPT0gJ04nKSAmJgorCQkJCQkgICAgcGF0aFtpICsgM10gPT0gJyQnKQorCQkJCQkJaSArPSAzOyAvKiBDT05JTiQgKi8KKwkJCQkJZWxzZSBpZiAoKGMgPT0gJ28nIHx8IGMgPT0gJ08nKSAmJgorCQkJCQkJICgoYyA9IHBhdGhbaSArIDJdKSA9PSAndScgfHwKKwkJCQkJCSAgYyA9PSAnVScpICYmCisJCQkJCQkgKChjID0gcGF0aFtpICsgM10pID09ICd0JyB8fAorCQkJCQkJICBjID09ICdUJykgJiYKKwkJCQkJCSBwYXRoW2kgKyA0XSA9PSAnJCcpCisJCQkJCQlpICs9IDQ7IC8qIENPTk9VVCQgKi8KKwkJCQl9IGVsc2UKKwkJCQkJZ290byBub3RfYV9yZXNlcnZlZF9uYW1lOworCQkJCWJyZWFrOworCQkJY2FzZSAnbCc6IGNhc2UgJ0wnOiAvKiBMUFQ8Tj4gKi8KKwkJCQlpZiAoKChjID0gcGF0aFsrK2ldKSAhPSAncCcgJiYgYyAhPSAnUCcpIHx8CisJCQkJICAgICgoYyA9IHBhdGhbKytpXSkgIT0gJ3QnICYmIGMgIT0gJ1QnKSB8fAorCQkJCSAgICAhaXNkaWdpdChwYXRoWysraV0pKQorCQkJCQlnb3RvIG5vdF9hX3Jlc2VydmVkX25hbWU7CisJCQkJYnJlYWs7CisJCQljYXNlICduJzogY2FzZSAnTic6IC8qIE5VTCAqLworCQkJCWlmICgoKGMgPSBwYXRoWysraV0pICE9ICd1JyAmJiBjICE9ICdVJykgfHwKKwkJCQkgICAgKChjID0gcGF0aFsrK2ldKSAhPSAnbCcgJiYgYyAhPSAnTCcpIHx8CisJCQkJICAgIChhbGxvd19saXRlcmFsX251bCAmJgorCQkJCSAgICAgIXBhdGhbaSArIDFdICYmIHAgPT0gcGF0aCkpCisJCQkJCWdvdG8gbm90X2FfcmVzZXJ2ZWRfbmFtZTsKKwkJCQlicmVhazsKKwkJCWNhc2UgJ3AnOiBjYXNlICdQJzogLyogUFJOICovCisJCQkJaWYgKCgoYyA9IHBhdGhbKytpXSkgIT0gJ3InICYmIGMgIT0gJ1InKSB8fAorCQkJCSAgICAoKGMgPSBwYXRoWysraV0pICE9ICduJyAmJiBjICE9ICdOJykpCisJCQkJCWdvdG8gbm90X2FfcmVzZXJ2ZWRfbmFtZTsKKwkJCQlicmVhazsKKwkJCWRlZmF1bHQ6CisJCQkJY29udGludWU7CisJCQl9CisKKwkJCS8qCisJCQkgKiBTbyBmYXIsIHRoaXMgbG9va3MgbGlrZSBhIHJlc2VydmVkIG5hbWUuIExldCdzIHNlZQorCQkJICogd2hldGhlciBpdCBhY3R1YWxseSBpcyBvbmU6IHRyYWlsaW5nIHNwYWNlcywgYSBmaWxlCisJCQkgKiBleHRlbnNpb24sIG9yIGFuIE5URlMgQWx0ZXJuYXRlIERhdGEgU3RyZWFtIGRvIG5vdAorCQkJICogbWF0dGVyLCB0aGUgbmFtZSBpcyBzdGlsbCByZXNlcnZlZCBpZiBhbnkgb2YgdGhvc2UKKwkJCSAqIGZvbGxvdyBpbW1lZGlhdGVseSBhZnRlciB0aGUgYWN0dWFsIG5hbWUuCisJCQkgKi8KKwkJCWkrKzsKKwkJCWlmIChwYXRoW2ldID09ICcgJykgeworCQkJCXByZWNlZGluZ19zcGFjZV9vcl9wZXJpb2QgPSAxOworCQkJCXdoaWxlIChwYXRoWysraV0gPT0gJyAnKQorCQkJCQk7IC8qIHNraXAgYWxsIHNwYWNlcyAqLworCQkJfQorCisJCQljID0gcGF0aFtpXTsKKwkJCWlmIChjICYmIGMgIT0gJy4nICYmIGMgIT0gJzonICYmIGMgIT0gJy8nICYmIGMgIT0gJ1xcJykKKwkJCQlnb3RvIG5vdF9hX3Jlc2VydmVkX25hbWU7CisKKwkJCS8qIGNvbnRhaW5zIHJlc2VydmVkIG5hbWUgKi8KKwkJCXJldHVybiAwOwogCQljYXNlICcuJzoKIAkJCXBlcmlvZHMrKzsKIAkJCS8qIGZhbGx0aHJ1ICovCkBAIC0yNTA4LDE4ICsyNjY4LDEzIEBACiAJfQogfQogCisjaWYgIWRlZmluZWQoX01TQ19WRVIpCiAvKgogICogRGlzYWJsZSBNU1ZDUlQgY29tbWFuZCBsaW5lIHdpbGRjYXJkIGV4cGFuc2lvbiAoX19nZXRtYWluYXJncyBjYWxsZWQgZnJvbQogICogbWluZ3cgc3RhcnR1cCBjb2RlLCBzZWUgaW5pdC5jIGluIG1pbmd3IHJ1bnRpbWUpLgogICovCiBpbnQgX0NSVF9nbG9iID0gMDsKLQotdHlwZWRlZiBzdHJ1Y3QgewotCWludCBuZXdtb2RlOwotfSBfc3RhcnR1cGluZm87Ci0KLWV4dGVybiBpbnQgX193Z2V0bWFpbmFyZ3MoaW50ICphcmdjLCB3Y2hhcl90ICoqKmFyZ3YsIHdjaGFyX3QgKioqZW52LCBpbnQgZ2xvYiwKLQkJX3N0YXJ0dXBpbmZvICpzaSk7CisjZW5kaWYKIAogc3RhdGljIE5PUkVUVVJOIHZvaWQgZGllX3N0YXJ0dXAodm9pZCkKIHsKQEAgLTI1OTcsMjAgKzI3NTIsNDEgQEAKIAkJCQkgIEdFTkVSSUNfV1JJVEUsIEZJTEVfRkxBR19OT19CVUZGRVJJTkcpOwogfQogCi12b2lkIG1pbmd3X3N0YXJ0dXAodm9pZCkKKyNpZmRlZiBfTVNDX1ZFUgorI2lmZGVmIF9ERUJVRworI2luY2x1ZGUgPGNydGRiZy5oPgorI2VuZGlmCisjZW5kaWYKKworLyoKKyAqIFdlIGltcGxlbWVudCB3bWFpbigpIGFuZCBjb21waWxlIHdpdGggLW11bmljb2RlLCB3aGljaCB3b3VsZAorICogbm9ybWFsbHkgaWdub3JlIG1haW4oKSwgYnV0IHdlIGNhbGwgdGhlIGxhdHRlciBmcm9tIHRoZSBmb3JtZXIKKyAqIHNvIHRoYXQgd2UgY2FuIGhhbmRsZSBub24tQVNDSUkgY29tbWFuZC1saW5lIHBhcmFtZXRlcnMKKyAqIGFwcHJvcHJpYXRlbHkuCisgKgorICogVG8gYmUgbW9yZSBjb21wYXRpYmxlIHdpdGggdGhlIGNvcmUgZ2l0IGNvZGUsIHdlIGNvbnZlcnQKKyAqIGFyZ3YgaW50byBVVEY4IGFuZCBwYXNzIHRoZW0gZGlyZWN0bHkgdG8gbWFpbigpLgorICovCitpbnQgd21haW4oaW50IGFyZ2MsIGNvbnN0IHdjaGFyX3QgKip3YXJndikKIHsKLQlpbnQgaSwgbWF4bGVuLCBhcmdjOwotCWNoYXIgKmJ1ZmZlcjsKLQl3Y2hhcl90ICoqd2VudiwgKip3YXJndjsKLQlfc3RhcnR1cGluZm8gc2k7CisJaW50IGksIG1heGxlbiwgZXhpdF9zdGF0dXM7CisJY2hhciAqYnVmZmVyLCAqKnNhdmU7CisJY29uc3QgY2hhciAqKmFyZ3Y7CisKKwl0cmFjZTJfaW5pdGlhbGl6ZV9jbG9jaygpOworCisjaWZkZWYgX01TQ19WRVIKKyNpZmRlZiBfREVCVUcKKwlfQ3J0U2V0UmVwb3J0TW9kZShfQ1JUX0FTU0VSVCwgX0NSVERCR19NT0RFX0RFQlVHKTsKKyNlbmRpZgorCisjaWZkZWYgVVNFX01TVkNfQ1JUREJHCisJX0NydFNldERiZ0ZsYWcoX0NSVERCR19BTExPQ19NRU1fREYgfCBfQ1JUREJHX0xFQUtfQ0hFQ0tfREYpOworI2VuZGlmCisjZW5kaWYKIAogCW1heWJlX3JlZGlyZWN0X3N0ZF9oYW5kbGVzKCk7CiAKLQkvKiBnZXQgd2lkZSBjaGFyIGFyZ3VtZW50cyBhbmQgZW52aXJvbm1lbnQgKi8KLQlzaS5uZXdtb2RlID0gMDsKLQlpZiAoX193Z2V0bWFpbmFyZ3MoJmFyZ2MsICZ3YXJndiwgJndlbnYsIF9DUlRfZ2xvYiwgJnNpKSA8IDApCi0JCWRpZV9zdGFydHVwKCk7Ci0KIAkvKiBkZXRlcm1pbmUgc2l6ZSBvZiBhcmd2IGFuZCBlbnZpcm9uIGNvbnZlcnNpb24gYnVmZmVyICovCiAJbWF4bGVuID0gd2NzbGVuKHdhcmd2WzBdKTsKIAlmb3IgKGkgPSAxOyBpIDwgYXJnYzsgaSsrKQpAQCAtMjYyMCw5ICsyNzk2LDE2IEBACiAJbWF4bGVuID0gMyAqIG1heGxlbiArIDE7CiAJYnVmZmVyID0gbWFsbG9jX3N0YXJ0dXAobWF4bGVuKTsKIAotCS8qIGNvbnZlcnQgY29tbWFuZCBsaW5lIGFyZ3VtZW50cyBhbmQgZW52aXJvbm1lbnQgdG8gVVRGLTggKi8KKwkvKgorCSAqIENyZWF0ZSBhIFVURi04IHZlcnNpb24gb2Ygd19hcmd2LiBBbHNvIGNyZWF0ZSBhICJzYXZlIiBjb3B5CisJICogdG8gcmVtZW1iZXIgYWxsIHRoZSBzdHJpbmcgcG9pbnRlcnMgYmVjYXVzZSBwYXJzZV9vcHRpb25zKCkKKwkgKiB3aWxsIHJlbW92ZSBjbGFpbWVkIGl0ZW1zIGZyb20gdGhlIGFyZ3YgdGhhdCB3ZSBwYXNzIGRvd24uCisJICovCisJQUxMT0NfQVJSQVkoYXJndiwgYXJnYyArIDEpOworCUFMTE9DX0FSUkFZKHNhdmUsIGFyZ2MgKyAxKTsKIAlmb3IgKGkgPSAwOyBpIDwgYXJnYzsgaSsrKQotCQlfX2FyZ3ZbaV0gPSB3Y3N0b3V0ZmR1cF9zdGFydHVwKGJ1ZmZlciwgd2FyZ3ZbaV0sIG1heGxlbik7CisJCWFyZ3ZbaV0gPSBzYXZlW2ldID0gd2NzdG91dGZkdXBfc3RhcnR1cChidWZmZXIsIHdhcmd2W2ldLCBtYXhsZW4pOworCWFyZ3ZbaV0gPSBzYXZlW2ldID0gTlVMTDsKIAlmcmVlKGJ1ZmZlcik7CiAKIAkvKiBmaXggV2luZG93cyBzcGVjaWZpYyBlbnZpcm9ubWVudCBzZXR0aW5ncyAqLwpAQCAtMjY0MSw2ICsyODI0LDE2IEBACiAKIAkvKiBpbml0aWFsaXplIFVuaWNvZGUgY29uc29sZSAqLwogCXdpbmFuc2lfaW5pdCgpOworCisJLyogaW52b2tlIHRoZSByZWFsIG1haW4oKSB1c2luZyBvdXIgdXRmOCB2ZXJzaW9uIG9mIGFyZ3YuICovCisJZXhpdF9zdGF0dXMgPSBtYWluKGFyZ2MsIGFyZ3YpOworCisJZm9yIChpID0gMDsgaSA8IGFyZ2M7IGkrKykKKwkJZnJlZShzYXZlW2ldKTsKKwlmcmVlKHNhdmUpOworCWZyZWUoYXJndik7CisKKwlyZXR1cm4gZXhpdF9zdGF0dXM7CiB9CiAKIGludCB1bmFtZShzdHJ1Y3QgdXRzbmFtZSAqYnVmKQpkaWZmIC0tZ2l0IGEvY29tcGF0L21pbmd3LmggYi9jb21wYXQvbWluZ3cuaAppbmRleCAxNjNhZTFiLi5lNmZlODEwIDEwMDY0NAotLS0gYS9jb21wYXQvbWluZ3cuaAorKysgYi9jb21wYXQvbWluZ3cuaApAQCAtMTEsNyArMTEsNyBAQAogI3VuZGVmIF9QT1NJWF9USFJFQURfU0FGRV9GVU5DVElPTlMKICNlbmRpZgogCi1leHRlcm4gaW50IG1pbmd3X2NvcmVfY29uZmlnKGNvbnN0IGNoYXIgKnZhciwgY29uc3QgY2hhciAqdmFsdWUsIHZvaWQgKmNiKTsKK2ludCBtaW5nd19jb3JlX2NvbmZpZyhjb25zdCBjaGFyICp2YXIsIGNvbnN0IGNoYXIgKnZhbHVlLCB2b2lkICpjYik7CiAjZGVmaW5lIHBsYXRmb3JtX2NvcmVfY29uZmlnIG1pbmd3X2NvcmVfY29uZmlnCiAKIC8qCkBAIC0xNDcsOCArMTQ3LDcgQEAKIAllcnJubyA9IEVJTlZBTDsKIAlyZXR1cm4gLTE7CiB9Ci0vKiBiYXNoIGNhbm5vdCByZWxpYWJseSBkZXRlY3QgbmVnYXRpdmUgcmV0dXJuIGNvZGVzIGFzIGZhaWx1cmUgKi8KLSNkZWZpbmUgZXhpdChjb2RlKSBleGl0KChjb2RlKSAmIDB4ZmYpCisKICNkZWZpbmUgc2lnZW1wdHlzZXQoeCkgKHZvaWQpMAogc3RhdGljIGlubGluZSBpbnQgc2lnYWRkc2V0KHNpZ3NldF90ICpzZXQsIGludCBzaWdudW0pCiB7IHJldHVybiAwOyB9CkBAIC0yOTYsMTggKzI5NSwxMCBAQAogc3RydWN0IGhvc3RlbnQgKm1pbmd3X2dldGhvc3RieW5hbWUoY29uc3QgY2hhciAqaG9zdCk7CiAjZGVmaW5lIGdldGhvc3RieW5hbWUgbWluZ3dfZ2V0aG9zdGJ5bmFtZQogCi12b2lkIG1pbmd3X2ZyZWVhZGRyaW5mbyhzdHJ1Y3QgYWRkcmluZm8gKnJlcyk7Ci0jZGVmaW5lIGZyZWVhZGRyaW5mbyBtaW5nd19mcmVlYWRkcmluZm8KLQogaW50IG1pbmd3X2dldGFkZHJpbmZvKGNvbnN0IGNoYXIgKm5vZGUsIGNvbnN0IGNoYXIgKnNlcnZpY2UsCiAJCSAgICAgIGNvbnN0IHN0cnVjdCBhZGRyaW5mbyAqaGludHMsIHN0cnVjdCBhZGRyaW5mbyAqKnJlcyk7CiAjZGVmaW5lIGdldGFkZHJpbmZvIG1pbmd3X2dldGFkZHJpbmZvCiAKLWludCBtaW5nd19nZXRuYW1laW5mbyhjb25zdCBzdHJ1Y3Qgc29ja2FkZHIgKnNhLCBzb2NrbGVuX3Qgc2FsZW4sCi0JCSAgICAgIGNoYXIgKmhvc3QsIERXT1JEIGhvc3RsZW4sIGNoYXIgKnNlcnYsIERXT1JEIHNlcnZsZW4sCi0JCSAgICAgIGludCBmbGFncyk7Ci0jZGVmaW5lIGdldG5hbWVpbmZvIG1pbmd3X2dldG5hbWVpbmZvCi0KIGludCBtaW5nd19zb2NrZXQoaW50IGRvbWFpbiwgaW50IHR5cGUsIGludCBwcm90b2NvbCk7CiAjZGVmaW5lIHNvY2tldCBtaW5nd19zb2NrZXQKIApAQCAtMzYxLDExICszNTIsMTMgQEAKICNpZm5kZWYgX19NSU5HVzY0X1ZFUlNJT05fTUFKT1IKICNkZWZpbmUgb2ZmX3Qgb2ZmNjRfdAogI2RlZmluZSBsc2VlayBfbHNlZWtpNjQKKyNpZm5kZWYgX01TQ19WRVIKIHN0cnVjdCB0aW1lc3BlYyB7CiAJdGltZV90IHR2X3NlYzsKIAlsb25nIHR2X25zZWM7CiB9OwogI2VuZGlmCisjZW5kaWYKIAogc3RydWN0IG1pbmd3X3N0YXQgewogICAgIF9kZXZfdCBzdF9kZXY7CkBAIC00NDMsMzQgKzQzNiwxNCBAQAogICogZ2l0IHNwZWNpZmljIGNvbXBhdGliaWxpdHkKICAqLwogCi1pbnQgbWluZ3dfaGFzX2Rvc19kcml2ZV9wcmVmaXgoY29uc3QgY2hhciAqcGF0aCk7Ci0jZGVmaW5lIGhhc19kb3NfZHJpdmVfcHJlZml4IG1pbmd3X2hhc19kb3NfZHJpdmVfcHJlZml4Ci1pbnQgbWluZ3dfc2tpcF9kb3NfZHJpdmVfcHJlZml4KGNoYXIgKipwYXRoKTsKLSNkZWZpbmUgc2tpcF9kb3NfZHJpdmVfcHJlZml4IG1pbmd3X3NraXBfZG9zX2RyaXZlX3ByZWZpeAotc3RhdGljIGlubGluZSBpbnQgbWluZ3dfaXNfZGlyX3NlcChpbnQgYykKLXsKLQlyZXR1cm4gYyA9PSAnLycgfHwgYyA9PSAnXFwnOwotfQotI2RlZmluZSBpc19kaXJfc2VwIG1pbmd3X2lzX2Rpcl9zZXAKLXN0YXRpYyBpbmxpbmUgY2hhciAqbWluZ3dfZmluZF9sYXN0X2Rpcl9zZXAoY29uc3QgY2hhciAqcGF0aCkKLXsKLQljaGFyICpyZXQgPSBOVUxMOwotCWZvciAoOyAqcGF0aDsgKytwYXRoKQotCQlpZiAoaXNfZGlyX3NlcCgqcGF0aCkpCi0JCQlyZXQgPSAoY2hhciAqKXBhdGg7Ci0JcmV0dXJuIHJldDsKLX0KIHN0YXRpYyBpbmxpbmUgdm9pZCBjb252ZXJ0X3NsYXNoZXMoY2hhciAqcGF0aCkKIHsKIAlmb3IgKDsgKnBhdGg7IHBhdGgrKykKIAkJaWYgKCpwYXRoID09ICdcXCcpCiAJCQkqcGF0aCA9ICcvJzsKIH0KLSNkZWZpbmUgZmluZF9sYXN0X2Rpcl9zZXAgbWluZ3dfZmluZF9sYXN0X2Rpcl9zZXAKLWludCBtaW5nd19vZmZzZXRfMXN0X2NvbXBvbmVudChjb25zdCBjaGFyICpwYXRoKTsKLSNkZWZpbmUgb2Zmc2V0XzFzdF9jb21wb25lbnQgbWluZ3dfb2Zmc2V0XzFzdF9jb21wb25lbnQKICNkZWZpbmUgUEFUSF9TRVAgJzsnCi1leHRlcm4gY2hhciAqbWluZ3dfcXVlcnlfdXNlcl9lbWFpbCh2b2lkKTsKK2NoYXIgKm1pbmd3X3F1ZXJ5X3VzZXJfZW1haWwodm9pZCk7CiAjZGVmaW5lIHF1ZXJ5X3VzZXJfZW1haWwgbWluZ3dfcXVlcnlfdXNlcl9lbWFpbAogI2lmICFkZWZpbmVkKF9fTUlOR1c2NF9WRVJTSU9OX01BSk9SKSAmJiAoIWRlZmluZWQoX01TQ19WRVIpIHx8IF9NU0NfVkVSIDwgMTgwMCkKICNkZWZpbmUgUFJJdU1BWCAiSTY0dSIKQEAgLTQ4OCwxMCArNDYxLDE3IEBACiAgKgogICogLSBjb250YWluIGFueSBvZiB0aGUgcmVzZXJ2ZWQgY2hhcmFjdGVycywgZS5nLiBgOmAsIGA7YCwgYCpgLCBldGMKICAqCisgKiAtIGNvcnJlc3BvbmQgdG8gcmVzZXJ2ZWQgbmFtZXMgKHN1Y2ggYXMgYEFVWGAsIGBQUk5gLCBldGMpCisgKgorICogVGhlIGBhbGxvd19saXRlcmFsX251bGAgcGFyYW1ldGVyIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHBhdGggYE5VTGAgc2hvdWxkCisgKiBiZSBjb25zaWRlcmVkIHZhbGlkICh0aGlzIG1ha2VzIHNlbnNlIGUuZy4gYmVmb3JlIG9wZW5pbmcgZmlsZXMsIGFzIGl0IGlzCisgKiBwZXJmZWN0bHkgbGVnaXRpbWF0ZSB0byBvcGVuIGBOVUxgIG9uIFdpbmRvd3MsIGp1c3QgYXMgaXQgaXMgdG8gb3BlbgorICogYC9kZXYvbnVsbGAgb24gVW5peC9MaW51eCkuCisgKgogICogUmV0dXJucyAxIHVwb24gc3VjY2Vzcywgb3RoZXJ3aXNlIDAuCiAgKi8KLWludCBpc192YWxpZF93aW4zMl9wYXRoKGNvbnN0IGNoYXIgKnBhdGgpOwotI2RlZmluZSBpc192YWxpZF9wYXRoKHBhdGgpIGlzX3ZhbGlkX3dpbjMyX3BhdGgocGF0aCkKK2ludCBpc192YWxpZF93aW4zMl9wYXRoKGNvbnN0IGNoYXIgKnBhdGgsIGludCBhbGxvd19saXRlcmFsX251bCk7CisjZGVmaW5lIGlzX3ZhbGlkX3BhdGgocGF0aCkgaXNfdmFsaWRfd2luMzJfcGF0aChwYXRoLCAwKQogCiAvKioKICAqIENvbnZlcnRzIFVURi04IGVuY29kZWQgc3RyaW5nIHRvIFVURi0xNkxFLgpAQCAtNTk5LDI2ICs1NzksMzYgQEAKIAogLyoKICAqIEEgY3JpdGljYWwgc2VjdGlvbiB1c2VkIGluIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgc3Bhd24KLSAqIGZ1bmN0aW9ucyAobWluZ3dfc3Bhd252W3BdZSgpKSBhbmQgd2FpdHBpZCgpLiBJbnRpYWxpc2VkIGluCisgKiBmdW5jdGlvbnMgKG1pbmd3X3NwYXdudltwXWUoKSkgYW5kIHdhaXRwaWQoKS4gSW5pdGlhbGlzZWQgaW4KICAqIHRoZSByZXBsYWNlbWVudCBtYWluKCkgbWFjcm8gYmVsb3cuCiAgKi8KIGV4dGVybiBDUklUSUNBTF9TRUNUSU9OIHBpbmZvX2NzOwogCiAvKgotICogQSByZXBsYWNlbWVudCBvZiBtYWluKCkgdGhhdCBhZGRzIHdpbjMyIHNwZWNpZmljIGluaXRpYWxpemF0aW9uLgorICogR2l0LCBsaWtlIG1vc3QgcG9ydGFibGUgQyBhcHBsaWNhdGlvbnMsIGltcGxlbWVudHMgYSBtYWluKCkgZnVuY3Rpb24uIE9uCisgKiBXaW5kb3dzLCB0aGlzIG1haW4oKSBmdW5jdGlvbiB3b3VsZCByZWNlaXZlIHBhcmFtZXRlcnMgZW5jb2RlZCBpbiB0aGUKKyAqIGN1cnJlbnQgbG9jYWxlLCBidXQgR2l0IGZvciBXaW5kb3dzIHdvdWxkIHByZWZlciBVVEYtOCBlbmNvZGVkICBwYXJhbWV0ZXJzLgorICoKKyAqIFRvIG1ha2UgdGhhdCBoYXBwZW4sIHdlIHN0aWxsIGRlY2xhcmUgbWFpbigpIGhlcmUsIGFuZCB0aGVuIGRlY2xhcmUgYW5kCisgKiBpbXBsZW1lbnQgd21haW4oKSAod2hpY2ggaXMgdGhlIFVuaWNvZGUgdmFyaWFudCBvZiBtYWluKCkpIGFuZCBjb21waWxlIHdpdGgKKyAqIC1tdW5pY29kZS4gVGhpcyB3bWFpbigpIGZ1bmN0aW9uIHJlZW5jb2RlcyB0aGUgcGFyYW1ldGVycyBmcm9tIFVURi0xNiB0bworICogVVRGLTggZm9ybWF0LCBzZXRzIHVwIGEgY291cGxlIG9mIG90aGVyIHRoaW5ncyBhcyByZXF1aXJlZCBvbiBXaW5kb3dzLCBhbmQKKyAqIHRoZW4gaGFuZHMgb2ZmIHRvIHRoZSBtYWluKCkgZnVuY3Rpb24uCiAgKi8KK2ludCB3bWFpbihpbnQgYXJnYywgY29uc3Qgd2NoYXJfdCAqKndfYXJndik7CitpbnQgbWFpbihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogCi12b2lkIG1pbmd3X3N0YXJ0dXAodm9pZCk7Ci0jZGVmaW5lIG1haW4oYyx2KSBkdW1teV9kZWNsX21pbmd3X21haW4odm9pZCk7IFwKLXN0YXRpYyBpbnQgbWluZ3dfbWFpbihjLHYpOyBcCi1pbnQgbWFpbihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpIFwKLXsgXAotCW1pbmd3X3N0YXJ0dXAoKTsgXAotCXJldHVybiBtaW5nd19tYWluKF9fYXJnYywgKHZvaWQgKilfX2FyZ3YpOyBcCi19IFwKLXN0YXRpYyBpbnQgbWluZ3dfbWFpbihjLHYpCisvKgorICogRm9yIGRlYnVnZ2luZzogaWYgYSBwcm9ibGVtIG9jY3Vycywgc2F5LCBpbiBhIEdpdCBwcm9jZXNzIHRoYXQgaXMgc3Bhd25lZAorICogZnJvbSBhbm90aGVyIEdpdCBwcm9jZXNzIHdoaWNoIGluIHR1cm4gaXMgc3Bhd25lZCBmcm9tIHlldCBhbm90aGVyIEdpdAorICogcHJvY2VzcywgaXQgY2FuIGJlIHF1aXRlIGRhdW50aW5nIHRvIGZpZ3VyZSBvdXQgd2hhdCBpcyBnb2luZyBvbi4KKyAqCisgKiBDYWxsIHRoaXMgZnVuY3Rpb24gdG8gb3BlbiBhIG5ldyBNaW5UVFkgKHRoaXMgYXNzdW1lcyB5b3UgYXJlIGluIEdpdCBmb3IKKyAqIFdpbmRvd3MnIFNESykgd2l0aCBhIEdEQiB0aGF0IGF0dGFjaGVzIHRvIHRoZSBjdXJyZW50IHByb2Nlc3MgcmlnaHQgYXdheS4KKyAqLworZXh0ZXJuIHZvaWQgb3Blbl9pbl9nZGIodm9pZCk7CiAKIC8qCiAgKiBVc2VkIGJ5IFB0aHJlYWQgQVBJIGltcGxlbWVudGF0aW9uIGZvciBXaW5kb3dzCiAgKi8KLWV4dGVybiBpbnQgZXJyX3dpbl90b19wb3NpeChEV09SRCB3aW5lcnIpOworaW50IGVycl93aW5fdG9fcG9zaXgoRFdPUkQgd2luZXJyKTsKZGlmZiAtLWdpdCBhL2NvbXBhdC9tc3ZjLmggYi9jb21wYXQvbXN2Yy5oCmluZGV4IDI5YThjZTguLjFkN2E4YzYgMTAwNjQ0Ci0tLSBhL2NvbXBhdC9tc3ZjLmgKKysrIGIvY29tcGF0L21zdmMuaApAQCAtNiw2ICs2LDEwIEBACiAjaW5jbHVkZSA8bWFsbG9jLmg+CiAjaW5jbHVkZSA8aW8uaD4KIAorI3ByYWdtYSB3YXJuaW5nKGRpc2FibGU6IDQwMTgpIC8qIHNpZ25lZC91bnNpZ25lZCBjb21wYXJpc29uICovCisjcHJhZ21hIHdhcm5pbmcoZGlzYWJsZTogNDI0NCkgLyogdHlwZSBjb252ZXJzaW9uLCBwb3NzaWJsZSBsb3NzIG9mIGRhdGEgKi8KKyNwcmFnbWEgd2FybmluZyhkaXNhYmxlOiA0MDkwKSAvKiAnZnVuY3Rpb24nIDogZGlmZmVyZW50ICdjb25zdCcgcXVhbGlmaWVycyAoQUxMT0NfR1JPVyBldGMuKSovCisKIC8qIHBvcnRpbmcgZnVuY3Rpb24gKi8KICNkZWZpbmUgaW5saW5lIF9faW5saW5lCiAjZGVmaW5lIF9faW5saW5lX18gX19pbmxpbmUKQEAgLTE4LDYgKzIyLDEyIEBACiAKICN1bmRlZiBFUlJPUgogCisjZGVmaW5lIGZ0ZWxsbyBfZnRlbGxpNjQKKwordHlwZWRlZiBpbnQgc2lnc2V0X3Q7CisvKiBvcGVuIGZvciByZWFkaW5nLCB3cml0aW5nLCBvciBib3RoIChub3QgaW4gZmNudGwuaCkgKi8KKyNkZWZpbmUgT19BQ0NNT0RFICAgICAoX09fUkRPTkxZIHwgX09fV1JPTkxZIHwgX09fUkRXUikKKwogI2luY2x1ZGUgImNvbXBhdC9taW5ndy5oIgogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2NvbXBhdC9uZWRtYWxsb2MvbWFsbG9jLmMuaCBiL2NvbXBhdC9uZWRtYWxsb2MvbWFsbG9jLmMuaAppbmRleCBiODMzZmY5Li44MTQ4NDVkIDEwMDY0NAotLS0gYS9jb21wYXQvbmVkbWFsbG9jL21hbGxvYy5jLmgKKysrIGIvY29tcGF0L25lZG1hbGxvYy9tYWxsb2MuYy5oCkBAIC0xNTY0LDcgKzE1NjQsNyBAQAogICByZXR1cm4gKHB0ciAhPSAwKT8gcHRyOiBNRkFJTDsKIH0KIAotLyogVGhpcyBmdW5jdGlvbiBzdXBwb3J0cyByZWxlYXNpbmcgY29hbGVzZWQgc2VnbWVudHMgKi8KKy8qIFRoaXMgZnVuY3Rpb24gc3VwcG9ydHMgcmVsZWFzaW5nIGNvYWxlc2NlZCBzZWdtZW50cyAqLwogc3RhdGljIEZPUkNFSU5MSU5FIGludCB3aW4zMm11bm1hcCh2b2lkKiBwdHIsIHNpemVfdCBzaXplKSB7CiAgIE1FTU9SWV9CQVNJQ19JTkZPUk1BVElPTiBtaW5mbzsKICAgY2hhciogY3B0ciA9IChjaGFyKilwdHI7CkBAIC0xNjU1LDcgKzE2NTUsNyBAQAogICAgICNkZWZpbmUgQ0FMTF9NUkVNQVAoYWRkciwgb3N6LCBuc3osIG12KSAgICAgTUZBSUwKICNlbmRpZiAvKiBIQVZFX01NQVAgJiYgSEFWRV9NUkVNQVAgKi8KIAotLyogbXN0YXRlIGJpdCBzZXQgaWYgY29udGluZ3VvdXMgbW9yZWNvcmUgZGlzYWJsZWQgb3IgZmFpbGVkICovCisvKiBtc3RhdGUgYml0IHNldCBpZiBjb250aWd1b3VzIG1vcmVjb3JlIGRpc2FibGVkIG9yIGZhaWxlZCAqLwogI2RlZmluZSBVU0VfTk9OQ09OVElHVU9VU19CSVQgKDRVKQogCiAvKiBzZWdtZW50IGJpdCBzZXQgaW4gY3JlYXRlX21zcGFjZV93aXRoX2Jhc2UgKi8KQEAgLTE3NTUsMTAgKzE3NTUsMTAgQEAKICAgYXNzZXJ0KHNsLT5sICE9IDApOwogICBhc3NlcnQoc2wtPnRocmVhZGlkID09IENVUlJFTlRfVEhSRUFEKTsKICAgaWYgKC0tc2wtPmMgPT0gMCkgewotICAgIHNsLT50aHJlYWRpZCA9IDA7CiAgICAgdm9sYXRpbGUgdW5zaWduZWQgaW50KiBscCA9ICZzbC0+bDsKICAgICBpbnQgcHJldiA9IDA7CiAgICAgaW50IHJldDsKKyAgICBzbC0+dGhyZWFkaWQgPSAwOwogICAgIF9fYXNtX18gX192b2xhdGlsZV9fICgibG9jazsgeGNoZ2wgJTAsICUxIgogCQkJICA6ICI9ciIgKHJldCkKIAkJCSAgOiAibSIgKCoobHApKSwgIjAiKHByZXYpCkBAIC0yNDg1LDcgKzI0ODUsNyBAQAogCiAgIFRyaW0gc3VwcG9ydAogICAgIEZpZWxkcyBob2xkaW5nIHRoZSBhbW91bnQgb2YgdW51c2VkIHRvcG1vc3QgbWVtb3J5IHRoYXQgc2hvdWxkIHRyaWdnZXIKLSAgICB0aW1taW5nLCBhbmQgYSBjb3VudGVyIHRvIGZvcmNlIHBlcmlvZGljIHNjYW5uaW5nIHRvIHJlbGVhc2UgdW51c2VkCisgICAgdGltaW5nLCBhbmQgYSBjb3VudGVyIHRvIGZvcmNlIHBlcmlvZGljIHNjYW5uaW5nIHRvIHJlbGVhc2UgdW51c2VkCiAgICAgbm9uLXRvcG1vc3Qgc2VnbWVudHMuCiAKICAgTG9ja2luZwpAQCAtMzA2Niw3ICszMDY2LDcgQEAKICNpZiAhT05MWV9NU1BBQ0VTCiAgICAgLyogU2V0IHVwIGxvY2sgZm9yIG1haW4gbWFsbG9jIGFyZWEgKi8KICAgICBnbS0+bWZsYWdzID0gbXBhcmFtcy5kZWZhdWx0X21mbGFnczsKLSAgICBJTklUSUFMX0xPQ0soJmdtLT5tdXRleCk7CisgICAgKHZvaWQpSU5JVElBTF9MT0NLKCZnbS0+bXV0ZXgpOwogI2VuZGlmCiAKICNpZiAoRk9PVEVSUyAmJiAhSU5TRUNVUkUpCkBAIC01MDE3LDcgKzUwMTcsNyBAQAogICBtY2h1bmtwdHIgbXNwID0gYWxpZ25fYXNfY2h1bmsodGJhc2UpOwogICBtc3RhdGUgbSA9IChtc3RhdGUpKGNodW5rMm1lbShtc3ApKTsKICAgbWVtc2V0KG0sIDAsIG1zaXplKTsKLSAgSU5JVElBTF9MT0NLKCZtLT5tdXRleCk7CisgICh2b2lkKUlOSVRJQUxfTE9DSygmbS0+bXV0ZXgpOwogICBtc3AtPmhlYWQgPSAobXNpemV8UElOVVNFX0JJVHxDSU5VU0VfQklUKTsKICAgbS0+c2VnLmJhc2UgPSBtLT5sZWFzdF9hZGRyID0gdGJhc2U7CiAgIG0tPnNlZy5zaXplID0gbS0+Zm9vdHByaW50ID0gbS0+bWF4X2Zvb3RwcmludCA9IHRzaXplOwpkaWZmIC0tZ2l0IGEvY29tcGF0L29ic3RhY2suYyBiL2NvbXBhdC9vYnN0YWNrLmMKaW5kZXggNGQxZDk1Yi4uMjdjZDVjMSAxMDA2NDQKLS0tIGEvY29tcGF0L29ic3RhY2suYworKysgYi9jb21wYXQvb2JzdGFjay5jCkBAIC0xMTIsMTUgKzExMiwxNSBAQAogCiAjIGRlZmluZSBDQUxMX0NIVU5LRlVOKGgsIHNpemUpIFwKICAgKCgoaCkgLT4gdXNlX2V4dHJhX2FyZykgXAotICAgPyAoKihoKS0+Y2h1bmtmdW4pICgoaCktPmV4dHJhX2FyZywgKHNpemUpKSBcCi0gICA6ICgqKHN0cnVjdCBfb2JzdGFja19jaHVuayAqKCopIChsb25nKSkgKGgpLT5jaHVua2Z1bikgKChzaXplKSkpCisgICA/ICgqKGgpLT5jaHVua2Z1bi5leHRyYSkgKChoKS0+ZXh0cmFfYXJnLCAoc2l6ZSkpIFwKKyAgIDogKCooaCktPmNodW5rZnVuLnBsYWluKSAoKHNpemUpKSkKIAogIyBkZWZpbmUgQ0FMTF9GUkVFRlVOKGgsIG9sZF9jaHVuaykgXAogICBkbyB7IFwKICAgICBpZiAoKGgpIC0+IHVzZV9leHRyYV9hcmcpIFwKLSAgICAgICgqKGgpLT5mcmVlZnVuKSAoKGgpLT5leHRyYV9hcmcsIChvbGRfY2h1bmspKTsgXAorICAgICAgKCooaCktPmZyZWVmdW4uZXh0cmEpICgoaCktPmV4dHJhX2FyZywgKG9sZF9jaHVuaykpOyBcCiAgICAgZWxzZSBcCi0gICAgICAoKih2b2lkICgqKSAodm9pZCAqKSkgKGgpLT5mcmVlZnVuKSAoKG9sZF9jaHVuaykpOyBcCisgICAgICAoKihoKS0+ZnJlZWZ1bi5wbGFpbikgKChvbGRfY2h1bmspKTsgXAogICB9IHdoaWxlICgwKQogCiAMCkBAIC0xNTksOCArMTU5LDggQEAKICAgICAgIHNpemUgPSA0MDk2IC0gZXh0cmE7CiAgICAgfQogCi0gIGgtPmNodW5rZnVuID0gKHN0cnVjdCBfb2JzdGFja19jaHVuayAqICgqKSh2b2lkICosIGxvbmcpKSBjaHVua2Z1bjsKLSAgaC0+ZnJlZWZ1biA9ICh2b2lkICgqKSAodm9pZCAqLCBzdHJ1Y3QgX29ic3RhY2tfY2h1bmsgKikpIGZyZWVmdW47CisgIGgtPmNodW5rZnVuLnBsYWluID0gY2h1bmtmdW47CisgIGgtPmZyZWVmdW4ucGxhaW4gPSBmcmVlZnVuOwogICBoLT5jaHVua19zaXplID0gc2l6ZTsKICAgaC0+YWxpZ25tZW50X21hc2sgPSBhbGlnbm1lbnQgLSAxOwogICBoLT51c2VfZXh0cmFfYXJnID0gMDsKQEAgLTIwNiw4ICsyMDYsOSBAQAogICAgICAgc2l6ZSA9IDQwOTYgLSBleHRyYTsKICAgICB9CiAKLSAgaC0+Y2h1bmtmdW4gPSAoc3RydWN0IF9vYnN0YWNrX2NodW5rICogKCopKHZvaWQgKixsb25nKSkgY2h1bmtmdW47Ci0gIGgtPmZyZWVmdW4gPSAodm9pZCAoKikgKHZvaWQgKiwgc3RydWN0IF9vYnN0YWNrX2NodW5rICopKSBmcmVlZnVuOworICBoLT5jaHVua2Z1bi5leHRyYSA9IChzdHJ1Y3QgX29ic3RhY2tfY2h1bmsgKiAoKikodm9pZCAqLGxvbmcpKSBjaHVua2Z1bjsKKyAgaC0+ZnJlZWZ1bi5leHRyYSA9ICh2b2lkICgqKSAodm9pZCAqLCBzdHJ1Y3QgX29ic3RhY2tfY2h1bmsgKikpIGZyZWVmdW47CisKICAgaC0+Y2h1bmtfc2l6ZSA9IHNpemU7CiAgIGgtPmFsaWdubWVudF9tYXNrID0gYWxpZ25tZW50IC0gMTsKICAgaC0+ZXh0cmFfYXJnID0gYXJnOwpkaWZmIC0tZ2l0IGEvY29tcGF0L29ic3RhY2suaCBiL2NvbXBhdC9vYnN0YWNrLmgKaW5kZXggNmJjMjRiNy4uZjkwYTQ2ZCAxMDA2NDQKLS0tIGEvY29tcGF0L29ic3RhY2suaAorKysgYi9jb21wYXQvb2JzdGFjay5oCkBAIC03OSw3ICs3OSw3IEBACiBXaGVuIHRoZSBjaGFycyBidXJzdCBvdmVyIGEgY2h1bmsgYm91bmRhcnksIHdlIGFsbG9jYXRlIGEgbGFyZ2VyCiBjaHVuaywgYW5kIHRoZW4gY29weSB0aGUgcGFydGx5IGZvcm1lZCBvYmplY3QgZnJvbSB0aGUgZW5kIG9mIHRoZSBvbGQKIGNodW5rIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIG5ldyBsYXJnZXIgY2h1bmsuICBXZSB0aGVuIGNhcnJ5IG9uCi1hY2NyZXRpbmcgY2hhcmFjdGVycyB0byB0aGUgZW5kIG9mIHRoZSBvYmplY3QgYXMgd2Ugbm9ybWFsbHkgd291bGQuCithY2NyZWRpdGluZyBjaGFyYWN0ZXJzIHRvIHRoZSBlbmQgb2YgdGhlIG9iamVjdCBhcyB3ZSBub3JtYWxseSB3b3VsZC4KIAogQSBzcGVjaWFsIG1hY3JvIGlzIHByb3ZpZGVkIHRvIGFkZCBhIHNpbmdsZSBjaGFyIGF0IGEgdGltZSB0byBhCiBncm93aW5nIG9iamVjdC4gIFRoaXMgYWxsb3dzIHRoZSB1c2Ugb2YgcmVnaXN0ZXIgdmFyaWFibGVzLCB3aGljaApAQCAtMTM1LDggKzEzNSwxMCBAQAogICAgYWxpZ25tZW50IHJlbGF0aXZlIHRvIDAuICAqLwogCiAjZGVmaW5lIF9fUFRSX0FMSUdOKEIsIFAsIEEpCQkJCQkJICAgIFwKLSAgX19CUFRSX0FMSUdOIChzaXplb2YgKFBUUl9JTlRfVFlQRSkgPCBzaXplb2YgKHZvaWQgKikgPyAoQikgOiAoY2hhciAqKSAwLCBcCi0JCVAsIEEpCisgIChzaXplb2YgKFBUUl9JTlRfVFlQRSkgPCBzaXplb2Yodm9pZCAqKSA/ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgX19CUFRSX0FMSUdOKChCKSwgKFApLCAoQSkpIDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICh2b2lkICopX19CUFRSX0FMSUdOKChQVFJfSU5UX1RZUEUpKHZvaWQgKikwLCAoUFRSX0lOVF9UWVBFKShQKSwgKEEpKSAgICAgICAgICAgIFwKKyAgKQogCiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAKQEAgLTE2MCwxMSArMTYyLDE1IEBACiAgICAgdm9pZCAqdGVtcHB0cjsKICAgfSB0ZW1wOwkJCS8qIFRlbXBvcmFyeSBmb3Igc29tZSBtYWNyb3MuICAqLwogICBpbnQgICBhbGlnbm1lbnRfbWFzazsJCS8qIE1hc2sgb2YgYWxpZ25tZW50IGZvciBlYWNoIG9iamVjdC4gKi8KLSAgLyogVGhlc2UgcHJvdG90eXBlcyB2YXJ5IGJhc2VkIG9uIGB1c2VfZXh0cmFfYXJnJywgYW5kIHdlIHVzZQotICAgICBjYXN0cyB0byB0aGUgcHJvdG90eXBlbGVzcyBmdW5jdGlvbiB0eXBlIGluIGFsbCBhc3NpZ25tZW50cywKLSAgICAgYnV0IGhhdmluZyBwcm90b3R5cGVzIGhlcmUgcXVpZXRzIC1Xc3RyaWN0LXByb3RvdHlwZXMuICAqLwotICBzdHJ1Y3QgX29ic3RhY2tfY2h1bmsgKigqY2h1bmtmdW4pICh2b2lkICosIGxvbmcpOwotICB2b2lkICgqZnJlZWZ1bikgKHZvaWQgKiwgc3RydWN0IF9vYnN0YWNrX2NodW5rICopOworICAvKiBUaGVzZSBwcm90b3R5cGVzIHZhcnkgYmFzZWQgb24gYHVzZV9leHRyYV9hcmcnLiAqLworICB1bmlvbiB7CisgICAgdm9pZCAqKCpwbGFpbikgKGxvbmcpOworICAgIHN0cnVjdCBfb2JzdGFja19jaHVuayAqKCpleHRyYSkgKHZvaWQgKiwgbG9uZyk7CisgIH0gY2h1bmtmdW47CisgIHVuaW9uIHsKKyAgICB2b2lkICgqcGxhaW4pICh2b2lkICopOworICAgIHZvaWQgKCpleHRyYSkgKHZvaWQgKiwgc3RydWN0IF9vYnN0YWNrX2NodW5rICopOworICB9IGZyZWVmdW47CiAgIHZvaWQgKmV4dHJhX2FyZzsJCS8qIGZpcnN0IGFyZyBmb3IgY2h1bmsgYWxsb2MvZGVhbGxvYyBmdW5jcyAqLwogICB1bnNpZ25lZCB1c2VfZXh0cmFfYXJnOjE7CS8qIGNodW5rIGFsbG9jL2RlYWxsb2MgZnVuY3MgdGFrZSBleHRyYSBhcmcgKi8KICAgdW5zaWduZWQgbWF5YmVfZW1wdHlfb2JqZWN0OjE7LyogVGhlcmUgaXMgYSBwb3NzaWJpbGl0eSB0aGF0IHRoZSBjdXJyZW50CkBAIC0yMzUsMTAgKzI0MSwxMCBAQAogCQkgICAgKHZvaWQgKCopICh2b2lkICosIHZvaWQgKikpIChmcmVlZnVuKSwgKGFyZykpCiAKICNkZWZpbmUgb2JzdGFja19jaHVua2Z1bihoLCBuZXdjaHVua2Z1bikgXAotICAoKGgpIC0+IGNodW5rZnVuID0gKHN0cnVjdCBfb2JzdGFja19jaHVuayAqKCopKHZvaWQgKiwgbG9uZykpIChuZXdjaHVua2Z1bikpCisgICgoaCktPmNodW5rZnVuLmV4dHJhID0gKHN0cnVjdCBfb2JzdGFja19jaHVuayAqKCopKHZvaWQgKiwgbG9uZykpIChuZXdjaHVua2Z1bikpCiAKICNkZWZpbmUgb2JzdGFja19mcmVlZnVuKGgsIG5ld2ZyZWVmdW4pIFwKLSAgKChoKSAtPiBmcmVlZnVuID0gKHZvaWQgKCopKHZvaWQgKiwgc3RydWN0IF9vYnN0YWNrX2NodW5rICopKSAobmV3ZnJlZWZ1bikpCisgICgoaCktPmZyZWVmdW4uZXh0cmEgPSAodm9pZCAoKikodm9pZCAqLCBzdHJ1Y3QgX29ic3RhY2tfY2h1bmsgKikpIChuZXdmcmVlZnVuKSkKIAogI2RlZmluZSBvYnN0YWNrXzFncm93X2Zhc3QoaCxhY2hhcikgKCooKGgpLT5uZXh0X2ZyZWUpKysgPSAoYWNoYXIpKQogCkBAIC00OTIsNyArNDk4LDcgQEAKICggKGgpLT50ZW1wLnRlbXBpbnQgPSAoY2hhciAqKSAob2JqKSAtIChjaGFyICopIChoKS0+Y2h1bmssCQlcCiAgICgoKChoKS0+dGVtcC50ZW1waW50ID4gMAkJCQkJCVwKICAgICAmJiAoaCktPnRlbXAudGVtcGludCA8IChoKS0+Y2h1bmtfbGltaXQgLSAoY2hhciAqKSAoaCktPmNodW5rKSkJXAotICAgPyAoaW50KSAoKGgpLT5uZXh0X2ZyZWUgPSAoaCktPm9iamVjdF9iYXNlCQkJCVwKKyAgID8gKHB0cmRpZmZfdCkgKChoKS0+bmV4dF9mcmVlID0gKGgpLT5vYmplY3RfYmFzZQkJCQlcCiAJICAgID0gKGgpLT50ZW1wLnRlbXBpbnQgKyAoY2hhciAqKSAoaCktPmNodW5rKQkJCVwKICAgIDogKCgob2JzdGFja19mcmVlKSAoKGgpLCAoaCktPnRlbXAudGVtcGludCArIChjaGFyICopIChoKS0+Y2h1bmspLCAwKSwgMCkpKQogCmRpZmYgLS1naXQgYS9jb21wYXQvcG9sbC9wb2xsLmMgYi9jb21wYXQvcG9sbC9wb2xsLmMKaW5kZXggNDQ1OTQwOC4uYWZhNmQyNCAxMDA2NDQKLS0tIGEvY29tcGF0L3BvbGwvcG9sbC5jCisrKyBiL2NvbXBhdC9wb2xsL3BvbGwuYwpAQCAtMTM5LDIyICsxMzksMTAgQEAKICAgSU5QVVRfUkVDT1JEICppcmJ1ZmZlcjsKICAgRFdPUkQgYXZhaWwsIG5idWZmZXI7CiAgIEJPT0wgYlJldDsKLSAgSU9fU1RBVFVTX0JMT0NLIGlvc2I7Ci0gIEZJTEVfUElQRV9MT0NBTF9JTkZPUk1BVElPTiBmcGxpOwotICBzdGF0aWMgUE50UXVlcnlJbmZvcm1hdGlvbkZpbGUgTnRRdWVyeUluZm9ybWF0aW9uRmlsZTsKLSAgc3RhdGljIEJPT0wgb25jZV9vbmx5OwogCiAgIHN3aXRjaCAoR2V0RmlsZVR5cGUgKGgpKQogICAgIHsKICAgICBjYXNlIEZJTEVfVFlQRV9QSVBFOgotICAgICAgaWYgKCFvbmNlX29ubHkpCi0JewotCSAgTnRRdWVyeUluZm9ybWF0aW9uRmlsZSA9IChQTnRRdWVyeUluZm9ybWF0aW9uRmlsZSkKLQkgICAgR2V0UHJvY0FkZHJlc3MgKEdldE1vZHVsZUhhbmRsZSAoIm50ZGxsLmRsbCIpLAotCQkJICAgICJOdFF1ZXJ5SW5mb3JtYXRpb25GaWxlIik7Ci0JICBvbmNlX29ubHkgPSBUUlVFOwotCX0KLQogICAgICAgaGFwcGVuZWQgPSAwOwogICAgICAgaWYgKFBlZWtOYW1lZFBpcGUgKGgsIE5VTEwsIDAsIE5VTEwsICZhdmFpbCwgTlVMTCkgIT0gMCkKIAl7CkBAIC0xNjYsMjIgKzE1NCw5IEBACiAKICAgICAgIGVsc2UKIAl7Ci0JICAvKiBJdCB3YXMgdGhlIHdyaXRlLWVuZCBvZiB0aGUgcGlwZS4gIENoZWNrIGlmIGl0IGlzIHdyaXRhYmxlLgotCSAgICAgSWYgTnRRdWVyeUluZm9ybWF0aW9uRmlsZSBmYWlscywgb3B0aW1pc3RpY2FsbHkgYXNzdW1lIHRoZSBwaXBlIGlzCi0JICAgICB3cml0YWJsZS4gIFRoaXMgY291bGQgaGFwcGVuIG9uIFdpbjl4LCB3aGVyZSBOdFF1ZXJ5SW5mb3JtYXRpb25GaWxlCi0JICAgICBpcyBub3QgYXZhaWxhYmxlLCBvciBpZiB3ZSBpbmhlcml0IGEgcGlwZSB0aGF0IGRvZXNuJ3QgcGVybWl0Ci0JICAgICBGSUxFX1JFQURfQVRUUklCVVRFUyBhY2Nlc3Mgb24gdGhlIHdyaXRlIGVuZCAoSSB0aGluayB0aGlzIHNob3VsZAotCSAgICAgbm90IGhhcHBlbiBzaW5jZSBXaW5YUCBTUDI7IFdJTkUgc2VlbXMgZmluZSB0b28pLiAgT3RoZXJ3aXNlLAotCSAgICAgZW5zdXJlIHRoYXQgZW5vdWdoIHNwYWNlIGlzIGF2YWlsYWJsZSBmb3IgYXRvbWljIHdyaXRlcy4gICovCi0JICBtZW1zZXQgKCZpb3NiLCAwLCBzaXplb2YgKGlvc2IpKTsKLQkgIG1lbXNldCAoJmZwbGksIDAsIHNpemVvZiAoZnBsaSkpOwotCi0JICBpZiAoIU50UXVlcnlJbmZvcm1hdGlvbkZpbGUKLQkgICAgICB8fCBOdFF1ZXJ5SW5mb3JtYXRpb25GaWxlIChoLCAmaW9zYiwgJmZwbGksIHNpemVvZiAoZnBsaSksCi0JCQkJCSBGaWxlUGlwZUxvY2FsSW5mb3JtYXRpb24pCi0JICAgICAgfHwgZnBsaS5Xcml0ZVF1b3RhQXZhaWxhYmxlID49IFBJUEVfQlVGCi0JICAgICAgfHwgKGZwbGkuT3V0Ym91bmRRdW90YSA8IFBJUEVfQlVGICYmCi0JCSAgZnBsaS5Xcml0ZVF1b3RhQXZhaWxhYmxlID09IGZwbGkuT3V0Ym91bmRRdW90YSkpCisJICAvKiBJdCB3YXMgdGhlIHdyaXRlLWVuZCBvZiB0aGUgcGlwZS4gVW5mb3J0dW5hdGVseSB0aGVyZSBpcyBubworCSAgICAgcmVsaWFibGUgd2F5IG9mIGtub3dpbmcgaWYgaXQgY2FuIGJlIHdyaXR0ZW4gd2l0aG91dCBibG9ja2luZy4KKwkgICAgIEp1c3Qgc2F5IHRoYXQgaXQncyBhbGwgZ29vZC4gKi8KIAkgICAgaGFwcGVuZWQgfD0gKnBfc291Z2h0ICYgKFBPTExPVVQgfCBQT0xMV1JOT1JNIHwgUE9MTFdSQkFORCk7CiAJfQogICAgICAgcmV0dXJuIGhhcHBlbmVkOwpkaWZmIC0tZ2l0IGEvY29tcGF0L3ByZWNvbXBvc2VfdXRmOC5jIGIvY29tcGF0L3ByZWNvbXBvc2VfdXRmOC5jCmluZGV4IGRlNjFjMTUuLjEzNjI1MGYgMTAwNjQ0Ci0tLSBhL2NvbXBhdC9wcmVjb21wb3NlX3V0ZjguYworKysgYi9jb21wYXQvcHJlY29tcG9zZV91dGY4LmMKQEAgLTc5LDcgKzc5LDcgQEAKIAkJc2l6ZV90IG5hbWVsZW47CiAJCW9sZGFyZyA9IGFyZ3ZbaV07CiAJCWlmIChoYXNfbm9uX2FzY2lpKG9sZGFyZywgKHNpemVfdCktMSwgJm5hbWVsZW4pKSB7Ci0JCQluZXdhcmcgPSByZWVuY29kZV9zdHJpbmdfaWNvbnYob2xkYXJnLCBuYW1lbGVuLCBpY19wcmVjb21wb3NlLCBOVUxMKTsKKwkJCW5ld2FyZyA9IHJlZW5jb2RlX3N0cmluZ19pY29udihvbGRhcmcsIG5hbWVsZW4sIGljX3ByZWNvbXBvc2UsIDAsIE5VTEwpOwogCQkJaWYgKG5ld2FyZykKIAkJCQlhcmd2W2ldID0gbmV3YXJnOwogCQl9CmRpZmYgLS1naXQgYS9jb21wYXQvcmVnZXgvcmVnY29tcC5jIGIvY29tcGF0L3JlZ2V4L3JlZ2NvbXAuYwppbmRleCA1MWNkNjBiLi5kMWJjMDllIDEwMDY0NAotLS0gYS9jb21wYXQvcmVnZXgvcmVnY29tcC5jCisrKyBiL2NvbXBhdC9yZWdleC9yZWdjb21wLmMKQEAgLTE3LDYgKzE3LDE0IEBACiAgICBMaWNlbnNlIGFsb25nIHdpdGggdGhlIEdOVSBDIExpYnJhcnk7IGlmIG5vdCwgc2VlCiAgICA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uICAqLwogCisjaWYgZGVmaW5lZCBfX1RBTkRFTQorIC8qIFRoaXMgaXMgY3VycmVudGx5IGR1cGxpY2F0ZWQgZnJvbSBnaXQtY29tcGF0LXV0aWxzLmggKi8KKyMgaWZkZWYgTk9fSU5UUFRSX1QKKyB0eXBlZGVmIGxvbmcgaW50cHRyX3Q7CisgdHlwZWRlZiB1bnNpZ25lZCBsb25nIHVpbnRwdHJfdDsKKyMgZW5kaWYKKyNlbmRpZgorCiBzdGF0aWMgcmVnX2VycmNvZGVfdCByZV9jb21waWxlX2ludGVybmFsIChyZWdleF90ICpwcmVnLCBjb25zdCBjaGFyICogcGF0dGVybiwKIAkJCQkJICBzaXplX3QgbGVuZ3RoLCByZWdfc3ludGF4X3Qgc3ludGF4KTsKIHN0YXRpYyB2b2lkIHJlX2NvbXBpbGVfZmFzdG1hcF9pdGVyIChyZWdleF90ICpidWZwLApAQCAtMzQ1NCw3ICszNDYyLDcgQEAKIAkvKiBUaGlzIGlzbid0IGEgdmFsaWQgY2hhcmFjdGVyLiAgKi8KIAlyZXR1cm4gUkVHX0VDT0xMQVRFOwogCi0gICAgICAvKiBCdWlsZCBzaW5nbGUgYnl0ZSBtYXRjaW5nIHRhYmxlIGZvciB0aGlzIGVxdWl2YWxlbmNlIGNsYXNzLiAgKi8KKyAgICAgIC8qIEJ1aWxkIHNpbmdsZSBieXRlIG1hdGNoaW5nIHRhYmxlIGZvciB0aGlzIGVxdWl2YWxlbmNlIGNsYXNzLiAgKi8KICAgICAgIGNoYXJfYnVmWzFdID0gKHVuc2lnbmVkIGNoYXIpICdcMCc7CiAgICAgICBsZW4gPSB3ZWlnaHRzW2lkeDEgJiAweGZmZmZmZl07CiAgICAgICBmb3IgKGNoID0gMDsgY2ggPCBTQkNfTUFYOyArK2NoKQpkaWZmIC0tZ2l0IGEvY29tcGF0L3JlZ2V4L3JlZ2V4LmggYi9jb21wYXQvcmVnZXgvcmVnZXguaAppbmRleCA0ZDgxMzU4Li4yZDM0MTI4IDEwMDY0NAotLS0gYS9jb21wYXQvcmVnZXgvcmVnZXguaAorKysgYi9jb21wYXQvcmVnZXgvcmVnZXguaApAQCAtNDEsNiArNDEsMTEgQEAKIGV4dGVybiAiQyIgewogI2VuZGlmCiAKKyNkZWZpbmUgcmVnY29tcCBnaXRfcmVnY29tcAorI2RlZmluZSByZWdleGVjIGdpdF9yZWdleGVjCisjZGVmaW5lIHJlZ2Vycm9yIGdpdF9yZWdlcnJvcgorI2RlZmluZSByZWdmcmVlIGdpdF9yZWdmcmVlCisKIC8qIFRoZSBmb2xsb3dpbmcgdHdvIHR5cGVzIGhhdmUgdG8gYmUgc2lnbmVkIGFuZCB1bnNpZ25lZCBpbnRlZ2VyIHR5cGUKICAgIHdpZGUgZW5vdWdoIHRvIGhvbGQgYSB2YWx1ZSBvZiBhIHBvaW50ZXIuICBGb3IgbW9zdCBBTlNJIGNvbXBpbGVycwogICAgcHRyZGlmZl90IGFuZCBzaXplX3Qgc2hvdWxkIGJlIGxpa2VseSBPSy4gIFN0aWxsIHNpemUgb2YgdGhlc2UgdHdvCkBAIC0zMjIsNyArMzI3LDcgQEAKICAgLyogUE9TSVggcmVnY29tcCByZXR1cm4gZXJyb3IgY29kZXMuICAoSW4gdGhlIG9yZGVyIGxpc3RlZCBpbiB0aGUKICAgICAgc3RhbmRhcmQuKSAgKi8KICAgUkVHX0JBRFBBVCwJCS8qIEludmFsaWQgcGF0dGVybi4gICovCi0gIFJFR19FQ09MTEFURSwJCS8qIEluYWxpZCBjb2xsYXRpbmcgZWxlbWVudC4gICovCisgIFJFR19FQ09MTEFURSwJCS8qIEludmFsaWQgY29sbGF0aW5nIGVsZW1lbnQuICAqLwogICBSRUdfRUNUWVBFLAkJLyogSW52YWxpZCBjaGFyYWN0ZXIgY2xhc3MgbmFtZS4gICovCiAgIFJFR19FRVNDQVBFLAkJLyogVHJhaWxpbmcgYmFja3NsYXNoLiAgKi8KICAgUkVHX0VTVUJSRUcsCQkvKiBJbnZhbGlkIGJhY2sgcmVmZXJlbmNlLiAgKi8KZGlmZiAtLWdpdCBhL2NvbXBhdC9yZWdleC9yZWdleF9pbnRlcm5hbC5jIGIvY29tcGF0L3JlZ2V4L3JlZ2V4X2ludGVybmFsLmMKaW5kZXggNTliZjE1MS4uZWM1MWNmMyAxMDA2NDQKLS0tIGEvY29tcGF0L3JlZ2V4L3JlZ2V4X2ludGVybmFsLmMKKysrIGIvY29tcGF0L3JlZ2V4L3JlZ2V4X2ludGVybmFsLmMKQEAgLTE2MTYsNyArMTYxNiw3IEBACiAgIHJlX2ZyZWUgKHN0YXRlKTsKIH0KIAotLyogQ3JlYXRlIHRoZSBuZXcgc3RhdGUgd2hpY2ggaXMgaW5kZXBlbmQgb2YgY29udGV4dHMuCisvKiBDcmVhdGUgdGhlIG5ldyBzdGF0ZSB3aGljaCBpcyBpbmRlcGVuZGVudCBvZiBjb250ZXh0cy4KICAgIFJldHVybiB0aGUgbmV3IHN0YXRlIGlmIHN1Y2NlZWRlZCwgb3RoZXJ3aXNlIHJldHVybiBOVUxMLiAgKi8KIAogc3RhdGljIHJlX2RmYXN0YXRlX3QgKgpkaWZmIC0tZ2l0IGEvY29tcGF0L3JlZ2V4L3JlZ2V4ZWMuYyBiL2NvbXBhdC9yZWdleC9yZWdleGVjLmMKaW5kZXggMWI1ZDg5Zi4uNDkzNThhZSAxMDA2NDQKLS0tIGEvY29tcGF0L3JlZ2V4L3JlZ2V4ZWMuYworKysgYi9jb21wYXQvcmVnZXgvcmVnZXhlYy5jCkBAIC0yNDIwLDcgKzI0MjAsNyBAQAogLyogRnJvbSB0aGUgbm9kZSBzZXQgQ1VSX05PREVTLCBwaWNrIHVwIHRoZSBub2RlcyB3aG9zZSB0eXBlcyBhcmUKICAgIE9QX09QRU5fU1VCRVhQIGFuZCB3aGljaCBoYXZlIGNvcnJlc3BvbmRpbmcgYmFjayByZWZlcmVuY2VzIGluIHRoZSByZWd1bGFyCiAgICBleHByZXNzaW9uLiBBbmQgcmVnaXN0ZXIgdGhlbSB0byB1c2UgdGhlbSBsYXRlciBmb3IgZXZhbHVhdGluZyB0aGUKLSAgIGNvcnJlc3BvZGluZyBiYWNrIHJlZmVyZW5jZXMuICAqLworICAgY29ycmVzcG9uZGluZyBiYWNrIHJlZmVyZW5jZXMuICAqLwogCiBzdGF0aWMgcmVnX2VycmNvZGVfdAogaW50ZXJuYWxfZnVuY3Rpb24KQEAgLTMzNDcsNyArMzM0Nyw3IEBACiAgIGRlc3RzX25vZGUgPSBkZXN0c19hbGxvYy0+ZGVzdHNfbm9kZTsKICAgZGVzdHNfY2ggPSBkZXN0c19hbGxvYy0+ZGVzdHNfY2g7CiAKLSAgLyogSW5pdGlhbGl6ZSB0cmFuc2l0b24gdGFibGUuICAqLworICAvKiBJbml0aWFsaXplIHRyYW5zaXRpb24gdGFibGUuICAqLwogICBzdGF0ZS0+d29yZF90cnRhYmxlID0gc3RhdGUtPnRydGFibGUgPSBOVUxMOwogCiAgIC8qIEF0IGZpcnN0LCBncm91cCBhbGwgbm9kZXMgYmVsb25naW5nIHRvIGBzdGF0ZScgaW50byBzZXZlcmFsCmRpZmYgLS1naXQgYS9jb21wYXQvdGVybWluYWwuYyBiL2NvbXBhdC90ZXJtaW5hbC5jCmluZGV4IGZhMTNlZTYuLjM1YmNhMDMgMTAwNjQ0Ci0tLSBhL2NvbXBhdC90ZXJtaW5hbC5jCisrKyBiL2NvbXBhdC90ZXJtaW5hbC5jCkBAIC0yLDYgKzIsOSBAQAogI2luY2x1ZGUgImNvbXBhdC90ZXJtaW5hbC5oIgogI2luY2x1ZGUgInNpZ2NoYWluLmgiCiAjaW5jbHVkZSAic3RyYnVmLmgiCisjaW5jbHVkZSAicnVuLWNvbW1hbmQuaCIKKyNpbmNsdWRlICJzdHJpbmctbGlzdC5oIgorI2luY2x1ZGUgImhhc2htYXAuaCIKIAogI2lmIGRlZmluZWQoSEFWRV9ERVZfVFRZKSB8fCBkZWZpbmVkKEdJVF9XSU5ET1dTX05BVElWRSkKIApAQCAtMzIsNyArMzUsNyBAQAogCXRlcm1fZmQgPSAtMTsKIH0KIAotc3RhdGljIGludCBkaXNhYmxlX2VjaG8odm9pZCkKK3N0YXRpYyBpbnQgZGlzYWJsZV9iaXRzKHRjZmxhZ190IGJpdHMpCiB7CiAJc3RydWN0IHRlcm1pb3MgdDsKIApAQCAtNDMsNyArNDYsNyBAQAogCW9sZF90ZXJtID0gdDsKIAlzaWdjaGFpbl9wdXNoX2NvbW1vbihyZXN0b3JlX3Rlcm1fb25fc2lnbmFsKTsKIAotCXQuY19sZmxhZyAmPSB+RUNITzsKKwl0LmNfbGZsYWcgJj0gfmJpdHM7CiAJaWYgKCF0Y3NldGF0dHIodGVybV9mZCwgVENTQUZMVVNILCAmdCkpCiAJCXJldHVybiAwOwogCkBAIC01MywxNyArNTYsNDQgQEAKIAlyZXR1cm4gLTE7CiB9CiAKK3N0YXRpYyBpbnQgZGlzYWJsZV9lY2hvKHZvaWQpCit7CisJcmV0dXJuIGRpc2FibGVfYml0cyhFQ0hPKTsKK30KKworc3RhdGljIGludCBlbmFibGVfbm9uX2Nhbm9uaWNhbCh2b2lkKQoreworCXJldHVybiBkaXNhYmxlX2JpdHMoSUNBTk9OIHwgRUNITyk7Cit9CisKICNlbGlmIGRlZmluZWQoR0lUX1dJTkRPV1NfTkFUSVZFKQogCiAjZGVmaW5lIElOUFVUX1BBVEggIkNPTklOJCIKICNkZWZpbmUgT1VUUFVUX1BBVEggIkNPTk9VVCQiCiAjZGVmaW5lIEZPUkNFX1RFWFQgInQiCiAKK3N0YXRpYyBpbnQgdXNlX3N0dHkgPSAxOworc3RhdGljIHN0cnVjdCBzdHJpbmdfbGlzdCBzdHR5X3Jlc3RvcmUgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKIHN0YXRpYyBIQU5ETEUgaGNvbmluID0gSU5WQUxJRF9IQU5ETEVfVkFMVUU7CiBzdGF0aWMgRFdPUkQgY21vZGU7CiAKIHN0YXRpYyB2b2lkIHJlc3RvcmVfdGVybSh2b2lkKQogeworCWlmICh1c2Vfc3R0eSkgeworCQlpbnQgaTsKKwkJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisKKwkJaWYgKHN0dHlfcmVzdG9yZS5uciA9PSAwKQorCQkJcmV0dXJuOworCisJCWFyZ3ZfYXJyYXlfcHVzaCgmY3AuYXJncywgInN0dHkiKTsKKwkJZm9yIChpID0gMDsgaSA8IHN0dHlfcmVzdG9yZS5ucjsgaSsrKQorCQkJYXJndl9hcnJheV9wdXNoKCZjcC5hcmdzLCBzdHR5X3Jlc3RvcmUuaXRlbXNbaV0uc3RyaW5nKTsKKwkJcnVuX2NvbW1hbmQoJmNwKTsKKwkJc3RyaW5nX2xpc3RfY2xlYXIoJnN0dHlfcmVzdG9yZSwgMCk7CisJCXJldHVybjsKKwl9CisKIAlpZiAoaGNvbmluID09IElOVkFMSURfSEFORExFX1ZBTFVFKQogCQlyZXR1cm47CiAKQEAgLTcyLDggKzEwMiwzOSBAQAogCWhjb25pbiA9IElOVkFMSURfSEFORExFX1ZBTFVFOwogfQogCi1zdGF0aWMgaW50IGRpc2FibGVfZWNobyh2b2lkKQorc3RhdGljIGludCBkaXNhYmxlX2JpdHMoRFdPUkQgYml0cykKIHsKKwlpZiAodXNlX3N0dHkpIHsKKwkJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisKKwkJYXJndl9hcnJheV9wdXNoKCZjcC5hcmdzLCAic3R0eSIpOworCisJCWlmIChiaXRzICYgRU5BQkxFX0xJTkVfSU5QVVQpIHsKKwkJCXN0cmluZ19saXN0X2FwcGVuZCgmc3R0eV9yZXN0b3JlLCAiaWNhbm9uIik7CisJCQlhcmd2X2FycmF5X3B1c2goJmNwLmFyZ3MsICItaWNhbm9uIik7CisJCX0KKworCQlpZiAoYml0cyAmIEVOQUJMRV9FQ0hPX0lOUFVUKSB7CisJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJnN0dHlfcmVzdG9yZSwgImVjaG8iKTsKKwkJCWFyZ3ZfYXJyYXlfcHVzaCgmY3AuYXJncywgIi1lY2hvIik7CisJCX0KKworCQlpZiAoYml0cyAmIEVOQUJMRV9QUk9DRVNTRURfSU5QVVQpIHsKKwkJCXN0cmluZ19saXN0X2FwcGVuZCgmc3R0eV9yZXN0b3JlLCAiLWlnbmJyayIpOworCQkJc3RyaW5nX2xpc3RfYXBwZW5kKCZzdHR5X3Jlc3RvcmUsICJpbnRyIik7CisJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJnN0dHlfcmVzdG9yZSwgIl5jIik7CisJCQlhcmd2X2FycmF5X3B1c2goJmNwLmFyZ3MsICJpZ25icmsiKTsKKwkJCWFyZ3ZfYXJyYXlfcHVzaCgmY3AuYXJncywgImludHIiKTsKKwkJCWFyZ3ZfYXJyYXlfcHVzaCgmY3AuYXJncywgIiIpOworCQl9CisKKwkJaWYgKHJ1bl9jb21tYW5kKCZjcCkgPT0gMCkKKwkJCXJldHVybiAwOworCisJCS8qIGBzdHR5YCBjb3VsZCBub3QgYmUgZXhlY3V0ZWQ7IGFjY2VzcyB0aGUgQ29uc29sZSBkaXJlY3RseSAqLworCQl1c2Vfc3R0eSA9IDA7CisJfQorCiAJaGNvbmluID0gQ3JlYXRlRmlsZSgiQ09OSU4kIiwgR0VORVJJQ19SRUFEIHwgR0VORVJJQ19XUklURSwKIAkgICAgRklMRV9TSEFSRV9SRUFELCBOVUxMLCBPUEVOX0VYSVNUSU5HLAogCSAgICBGSUxFX0FUVFJJQlVURV9OT1JNQUwsIE5VTEwpOwpAQCAtODIsNyArMTQzLDcgQEAKIAogCUdldENvbnNvbGVNb2RlKGhjb25pbiwgJmNtb2RlKTsKIAlzaWdjaGFpbl9wdXNoX2NvbW1vbihyZXN0b3JlX3Rlcm1fb25fc2lnbmFsKTsKLQlpZiAoIVNldENvbnNvbGVNb2RlKGhjb25pbiwgY21vZGUgJiAofkVOQUJMRV9FQ0hPX0lOUFVUKSkpIHsKKwlpZiAoIVNldENvbnNvbGVNb2RlKGhjb25pbiwgY21vZGUgJiB+Yml0cykpIHsKIAkJQ2xvc2VIYW5kbGUoaGNvbmluKTsKIAkJaGNvbmluID0gSU5WQUxJRF9IQU5ETEVfVkFMVUU7CiAJCXJldHVybiAtMTsKQEAgLTkxLDYgKzE1Miw0NyBAQAogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50IGRpc2FibGVfZWNobyh2b2lkKQoreworCXJldHVybiBkaXNhYmxlX2JpdHMoRU5BQkxFX0VDSE9fSU5QVVQpOworfQorCitzdGF0aWMgaW50IGVuYWJsZV9ub25fY2Fub25pY2FsKHZvaWQpCit7CisJcmV0dXJuIGRpc2FibGVfYml0cyhFTkFCTEVfRUNIT19JTlBVVCB8IEVOQUJMRV9MSU5FX0lOUFVUIHwgRU5BQkxFX1BST0NFU1NFRF9JTlBVVCk7Cit9CisKKy8qCisgKiBPdmVycmlkZSBgZ2V0Y2hhcigpYCwgYXMgdGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gZG9lcyBub3QgdXNlCisgKiBgUmVhZEZpbGUoKWAuCisgKgorICogVGhpcyBwb3NlcyBhIHByb2JsZW0gd2hlbiB3ZSB3YW50IHRvIHNlZSB3aGV0aGVyIHRoZSBzdGFuZGFyZAorICogaW5wdXQgaGFzIG1vcmUgY2hhcmFjdGVycywgYXMgdGhlIGRlZmF1bHQgb2YgR2l0IGZvciBXaW5kb3dzIGlzIHRvIHN0YXJ0IHRoZQorICogQmFzaCBpbiBhIE1pblRUWSwgd2hpY2ggdXNlcyBhIG5hbWVkIHBpcGUgdG8gZW11bGF0ZSBhIHB0eSwgaW4gd2hpY2ggY2FzZQorICogb3VyIGBwb2xsKClgIGVtdWxhdGlvbiBjYWxscyBgUGVla05hbWVkUGlwZSgpYCwgd2hpY2ggc2VlbXMgdG8gcmVxdWlyZQorICogYFJlYWRGaWxlKClgIHRvIGJlIGNhbGxlZCBmaXJzdCB0byB3b3JrIHByb3Blcmx5IChpdCBvbmx5IHJlcG9ydHMgMAorICogYXZhaWxhYmxlIGJ5dGVzLCBvdGhlcndpc2UpLgorICoKKyAqIFNvIGxldCdzIGp1c3Qgb3ZlcnJpZGUgYGdldGNoYXIoKWAgd2l0aCBhIHZlcnNpb24gYmFja2VkIGJ5IGBSZWFkRmlsZSgpYCBhbmQKKyAqIGdvIG91ciBtZXJyeSB3YXlzIGZyb20gaGVyZS4KKyAqLworc3RhdGljIGludCBtaW5nd19nZXRjaGFyKHZvaWQpCit7CisJRFdPUkQgcmVhZCA9IDA7CisJdW5zaWduZWQgY2hhciBjaDsKKworCWlmICghUmVhZEZpbGUoR2V0U3RkSGFuZGxlKFNURF9JTlBVVF9IQU5ETEUpLCAmY2gsIDEsICZyZWFkLCBOVUxMKSkKKwkJcmV0dXJuIEVPRjsKKworCWlmICghcmVhZCkgeworCQllcnJvcigiVW5leHBlY3RlZCAwIHJlYWQiKTsKKwkJcmV0dXJuIEVPRjsKKwl9CisKKwlyZXR1cm4gY2g7Cit9CisjZGVmaW5lIGdldGNoYXIgbWluZ3dfZ2V0Y2hhcgorCiAjZW5kaWYKIAogI2lmbmRlZiBGT1JDRV9URVhUCkBAIC0xMzcsNiArMjM5LDEyNiBAQAogCXJldHVybiBidWYuYnVmOwogfQogCisvKgorICogVGhlIGBpc19rbm93bl9lc2NhcGVfc2VxdWVuY2UoKWAgZnVuY3Rpb24gcmV0dXJucyAxIGlmIHRoZSBwYXNzZWQgc3RyaW5nCisgKiBjb3JyZXNwb25kcyB0byBhbiBFc2NhcGUgc2VxdWVuY2UgdGhhdCB0aGUgdGVybWluYWwgY2FwYWJpbGl0aWVzIGNvbnRhaW5zLgorICoKKyAqIFRvIGF2b2lkIGRlcGVuZGluZyBvbiBuY3Vyc2VzIG9yIG90aGVyIHBsYXRmb3JtLXNwZWNpZmljIGxpYnJhcmllcywgd2UgcmVseQorICogb24gdGhlIHByZXNlbmNlIG9mIHRoZSBgaW5mb2NtcGAgZXhlY3V0YWJsZSB0byBkbyB0aGUgam9iIGZvciB1cyAoZmFpbGluZworICogc2lsZW50bHkgaWYgdGhlIHByb2dyYW0gaXMgbm90IGF2YWlsYWJsZSBvciByZWZ1c2VkIHRvIHJ1bikuCisgKi8KK3N0cnVjdCBlc2NhcGVfc2VxdWVuY2VfZW50cnkgeworCXN0cnVjdCBoYXNobWFwX2VudHJ5IGVudHJ5OworCWNoYXIgc2VxdWVuY2VbRkxFWF9BUlJBWV07Cit9OworCitzdGF0aWMgaW50IHNlcXVlbmNlX2VudHJ5X2NtcChjb25zdCB2b2lkICpoYXNobWFwX2NtcF9mbl9kYXRhLAorCQkJICAgICAgY29uc3Qgc3RydWN0IGVzY2FwZV9zZXF1ZW5jZV9lbnRyeSAqZTEsCisJCQkgICAgICBjb25zdCBzdHJ1Y3QgZXNjYXBlX3NlcXVlbmNlX2VudHJ5ICplMiwKKwkJCSAgICAgIGNvbnN0IHZvaWQgKmtleWRhdGEpCit7CisJcmV0dXJuIHN0cmNtcChlMS0+c2VxdWVuY2UsIGtleWRhdGEgPyBrZXlkYXRhIDogZTItPnNlcXVlbmNlKTsKK30KKworc3RhdGljIGludCBpc19rbm93bl9lc2NhcGVfc2VxdWVuY2UoY29uc3QgY2hhciAqc2VxdWVuY2UpCit7CisJc3RhdGljIHN0cnVjdCBoYXNobWFwIHNlcXVlbmNlczsKKwlzdGF0aWMgaW50IGluaXRpYWxpemVkOworCisJaWYgKCFpbml0aWFsaXplZCkgeworCQlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjcCA9IENISUxEX1BST0NFU1NfSU5JVDsKKwkJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKKwkJY2hhciAqcCwgKmVvbDsKKworCQloYXNobWFwX2luaXQoJnNlcXVlbmNlcywgKGhhc2htYXBfY21wX2ZuKXNlcXVlbmNlX2VudHJ5X2NtcCwKKwkJCSAgICAgTlVMTCwgMCk7CisKKwkJYXJndl9hcnJheV9wdXNobCgmY3AuYXJncywgImluZm9jbXAiLCAiLUwiLCAiLTEiLCBOVUxMKTsKKwkJaWYgKHBpcGVfY29tbWFuZCgmY3AsIE5VTEwsIDAsICZidWYsIDAsIE5VTEwsIDApKQorCQkJc3RyYnVmX3NldGxlbigmYnVmLCAwKTsKKworCQlmb3IgKGVvbCA9IHAgPSBidWYuYnVmOyAqcDsgcCA9IGVvbCArIDEpIHsKKwkJCXAgPSBzdHJjaHIocCwgJz0nKTsKKwkJCWlmICghcCkKKwkJCQlicmVhazsKKwkJCXArKzsKKwkJCWVvbCA9IHN0cmNocm51bChwLCAnXG4nKTsKKworCQkJaWYgKHN0YXJ0c193aXRoKHAsICJcXEUiKSkgeworCQkJCWNoYXIgKmNvbW1hID0gbWVtY2hyKHAsICcsJywgZW9sIC0gcCk7CisJCQkJc3RydWN0IGVzY2FwZV9zZXF1ZW5jZV9lbnRyeSAqZTsKKworCQkJCXBbMF0gPSAnXic7CisJCQkJcFsxXSA9ICdbJzsKKwkJCQlGTEVYX0FMTE9DX01FTShlLCBzZXF1ZW5jZSwgcCwgY29tbWEgLSBwKTsKKwkJCQloYXNobWFwX2VudHJ5X2luaXQoJmUtPmVudHJ5LAorCQkJCQkJICAgc3RyaGFzaChlLT5zZXF1ZW5jZSkpOworCQkJCWhhc2htYXBfYWRkKCZzZXF1ZW5jZXMsICZlLT5lbnRyeSk7CisJCQl9CisJCQlpZiAoISplb2wpCisJCQkJYnJlYWs7CisJCX0KKwkJaW5pdGlhbGl6ZWQgPSAxOworCX0KKworCXJldHVybiAhIWhhc2htYXBfZ2V0X2Zyb21faGFzaCgmc2VxdWVuY2VzLCBzdHJoYXNoKHNlcXVlbmNlKSwgc2VxdWVuY2UpOworfQorCitpbnQgcmVhZF9rZXlfd2l0aG91dF9lY2hvKHN0cnVjdCBzdHJidWYgKmJ1ZikKK3sKKwlzdGF0aWMgaW50IHdhcm5pbmdfZGlzcGxheWVkOworCWludCBjaDsKKworCWlmICh3YXJuaW5nX2Rpc3BsYXllZCB8fCBlbmFibGVfbm9uX2Nhbm9uaWNhbCgpIDwgMCkgeworCQlpZiAoIXdhcm5pbmdfZGlzcGxheWVkKSB7CisJCQl3YXJuaW5nKCJyZWFkaW5nIHNpbmdsZSBrZXlzdHJva2VzIG5vdCBzdXBwb3J0ZWQgb24gIgorCQkJCSJ0aGlzIHBsYXRmb3JtOyByZWFkaW5nIGxpbmUgaW5zdGVhZCIpOworCQkJd2FybmluZ19kaXNwbGF5ZWQgPSAxOworCQl9CisKKwkJcmV0dXJuIHN0cmJ1Zl9nZXRsaW5lKGJ1Ziwgc3RkaW4pOworCX0KKworCXN0cmJ1Zl9yZXNldChidWYpOworCWNoID0gZ2V0Y2hhcigpOworCWlmIChjaCA9PSBFT0YpIHsKKwkJcmVzdG9yZV90ZXJtKCk7CisJCXJldHVybiBFT0Y7CisJfQorCXN0cmJ1Zl9hZGRjaChidWYsIGNoKTsKKworCWlmIChjaCA9PSAnXDAzMycgLyogRVNDICovKSB7CisJCS8qCisJCSAqIFdlIGFyZSBtb3N0IGxpa2VseSBsb29raW5nIGF0IGFuIEVzY2FwZSBzZXF1ZW5jZS4gTGV0J3MgdHJ5CisJCSAqIHRvIHJlYWQgbW9yZSBieXRlcywgd2FpdGluZyBhdCBtb3N0IGhhbGYgYSBzZWNvbmQsIGFzc3VtaW5nCisJCSAqIHRoYXQgdGhlIHNlcXVlbmNlIGlzIGNvbXBsZXRlIGlmIHdlIGRpZCBub3QgcmVjZWl2ZSBhbnkgYnl0ZQorCQkgKiB3aXRoaW4gdGhhdCB0aW1lLgorCQkgKgorCQkgKiBTdGFydCBieSByZXBsYWNpbmcgdGhlIEVzY2FwZSBieXRlIHdpdGggXlsgKi8KKwkJc3RyYnVmX3NwbGljZShidWYsIGJ1Zi0+bGVuIC0gMSwgMSwgIl5bIiwgMik7CisKKwkJLyoKKwkJICogUXVlcnkgdGhlIHRlcm1pbmFsIGNhcGFiaWxpdGllcyBvbmNlIGFib3V0IGFsbCB0aGUgRXNjYXBlCisJCSAqIHNlcXVlbmNlcyBpdCBrbm93cyBhYm91dCwgc28gdGhhdCB3ZSBjYW4gYXZvaWQgd2FpdGluZyBmb3IKKwkJICogaGFsZiBhIHNlY29uZCB3aGVuIHdlIGtub3cgdGhhdCB0aGUgc2VxdWVuY2UgaXMgY29tcGxldGUuCisJCSAqLworCQl3aGlsZSAoIWlzX2tub3duX2VzY2FwZV9zZXF1ZW5jZShidWYtPmJ1ZikpIHsKKwkJCXN0cnVjdCBwb2xsZmQgcGZkID0geyAuZmQgPSAwLCAuZXZlbnRzID0gUE9MTElOIH07CisKKwkJCWlmIChwb2xsKCZwZmQsIDEsIDUwMCkgPCAxKQorCQkJCWJyZWFrOworCisJCQljaCA9IGdldGNoYXIoKTsKKwkJCWlmIChjaCA9PSBFT0YpCisJCQkJcmV0dXJuIDA7CisJCQlzdHJidWZfYWRkY2goYnVmLCBjaCk7CisJCX0KKwl9CisKKwlyZXN0b3JlX3Rlcm0oKTsKKwlyZXR1cm4gMDsKK30KKwogI2Vsc2UKIAogY2hhciAqZ2l0X3Rlcm1pbmFsX3Byb21wdChjb25zdCBjaGFyICpwcm9tcHQsIGludCBlY2hvKQpAQCAtMTQ0LDQgKzM2NiwyMyBAQAogCXJldHVybiBnZXRwYXNzKHByb21wdCk7CiB9CiAKK2ludCByZWFkX2tleV93aXRob3V0X2VjaG8oc3RydWN0IHN0cmJ1ZiAqYnVmKQoreworCXN0YXRpYyBpbnQgd2FybmluZ19kaXNwbGF5ZWQ7CisJY29uc3QgY2hhciAqcmVzOworCisJaWYgKCF3YXJuaW5nX2Rpc3BsYXllZCkgeworCQl3YXJuaW5nKCJyZWFkaW5nIHNpbmdsZSBrZXlzdHJva2VzIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyAiCisJCQkicGxhdGZvcm07IHJlYWRpbmcgbGluZSBpbnN0ZWFkIik7CisJCXdhcm5pbmdfZGlzcGxheWVkID0gMTsKKwl9CisKKwlyZXMgPSBnZXRwYXNzKCIiKTsKKwlzdHJidWZfcmVzZXQoYnVmKTsKKwlpZiAoIXJlcykKKwkJcmV0dXJuIEVPRjsKKwlzdHJidWZfYWRkc3RyKGJ1ZiwgcmVzKTsKKwlyZXR1cm4gMDsKK30KKwogI2VuZGlmCmRpZmYgLS1naXQgYS9jb21wYXQvdGVybWluYWwuaCBiL2NvbXBhdC90ZXJtaW5hbC5oCmluZGV4IDk3ZGI3Y2QuLmE5ZDUyYjggMTAwNjQ0Ci0tLSBhL2NvbXBhdC90ZXJtaW5hbC5oCisrKyBiL2NvbXBhdC90ZXJtaW5hbC5oCkBAIC0zLDQgKzMsNyBAQAogCiBjaGFyICpnaXRfdGVybWluYWxfcHJvbXB0KGNvbnN0IGNoYXIgKnByb21wdCwgaW50IGVjaG8pOwogCisvKiBSZWFkIGEgc2luZ2xlIGtleXN0cm9rZSwgd2l0aG91dCBlY2hvaW5nIGl0IHRvIHRoZSB0ZXJtaW5hbCAqLworaW50IHJlYWRfa2V5X3dpdGhvdXRfZWNobyhzdHJ1Y3Qgc3RyYnVmICpidWYpOworCiAjZW5kaWYgLyogQ09NUEFUX1RFUk1JTkFMX0ggKi8KZGlmZiAtLWdpdCBhL2NvbXBhdC92Y2J1aWxkLy5naXRpZ25vcmUgYi9jb21wYXQvdmNidWlsZC8uZ2l0aWdub3JlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhmOGI3OTQKLS0tIC9kZXYvbnVsbAorKysgYi9jb21wYXQvdmNidWlsZC8uZ2l0aWdub3JlCkBAIC0wLDAgKzEsMyBAQAorL3ZjcGtnLworL01TVkMtREVGUy1HRU4KKy9WQ1BLRy1ERUZTCmRpZmYgLS1naXQgYS9jb21wYXQvdmNidWlsZC9SRUFETUUgYi9jb21wYXQvdmNidWlsZC9SRUFETUUKaW5kZXggNjBmZDg3My4uMWI2ZGFiZiAxMDA2NDQKLS0tIGEvY29tcGF0L3ZjYnVpbGQvUkVBRE1FCisrKyBiL2NvbXBhdC92Y2J1aWxkL1JFQURNRQpAQCAtMSwzICsxLDY1IEBACitUaGUgU3RlcHMgdG8gQnVpbGQgR2l0IHdpdGggVlMyMDE1IG9yIFZTMjAxNyBmcm9tIHRoZSBjb21tYW5kIGxpbmUuCisKKzEuIEluc3RhbGwgdGhlICJ2Y3BrZyIgb3BlbiBzb3VyY2UgcGFja2FnZSBtYW5hZ2VyIGFuZCBidWlsZCBlc3NlbnRpYWwKKyAgIHRoaXJkLXBhcnR5IGxpYnJhcmllcy4gIFRoZSBzdGVwcyBmb3IgdGhpcyBoYXZlIGJlZW4gY2FwdHVyZWQgaW4gYQorICAgc2V0IG9mIGNvbnZlbmllbmNlIHNjcmlwdHMuICBUaGVzZSBjYW4gYmUgcnVuIGZyb20gYSBzdG9jayBDb21tYW5kCisgICBQcm9tcHQgb3IgZnJvbSBhbiBTREsgYmFzaCB3aW5kb3c6CisKKyAgICQgY2QgPHJlcG9fcm9vdD4KKyAgICQgLi9jb21wYXQvdmNidWlsZC92Y3BrZ19pbnN0YWxsLmJhdAorCisgICBUaGUgdmNwa2cgdG9vbHMgYW5kIGFsbCBvZiB0aGUgdGhpcmQtcGFydHkgc291cmNlcyB3aWxsIGJlIGluc3RhbGxlZAorICAgaW4gdGhpcyBmb2xkZXI6CisgICAgICA8cmVwb19yb290Pi9jb21wYXQvdmNidWlsZC92Y3BrZy8KKworICAgQSBmaWxlIHdpbGwgYmUgY3JlYXRlZCB3aXRoIGEgc2V0IG9mIE1ha2VmaWxlIG1hY3JvcyBwb2ludGluZyB0byBhCisgICB1bmlmaWVkICJpbmNsdWRlIiwgImxpYiIsIGFuZCAiYmluIiBkaXJlY3RvcnkgKHJlbGVhc2UgYW5kIGRlYnVnKSBmb3IKKyAgIGFsbCBvZiB0aGUgcmVxdWlyZWQgcGFja2FnZXMuICBUaGlzIGZpbGUgd2lsbCBiZSBpbmNsdWRlZCBieSB0aGUgbWFpbgorICAgTWFrZWZpbGU6CisgICAgICA8cmVwb19yb290Pi9jb21wYXQvdmNidWlsZC9NU1ZDLURFRlMtR0VOCisKKzIuIE9QVElPTkFMTFkgY29weSB0aGUgdGhpcmQtcGFydHkgKi5kbGwgYW5kICoucGRiIGZpbGVzIGludG8gdGhlIHJlcG8KKyAgIHJvb3QgdG8gbWFrZSBpdCBlYXNpZXIgdG8gcnVuIGFuZCBkZWJ1ZyBnaXQuZXhlIHdpdGhvdXQgaGF2aW5nIHRvCisgICBtYW5pcHVsYXRlIHlvdXIgUEFUSC4gIFRoaXMgaXMgZXNwZWNpYWxseSB0cnVlIGZvciBkZWJ1ZyBzZXNzaW9ucyBpbgorICAgVmlzdWFsIFN0dWRpby4KKworICAgVXNlIE9ORSBvZiB0aGUgZm9sbG93aW5nIGZvcm1zIHdoaWNoIHNob3VsZCBtYXRjaCBob3cgeW91IHdhbnQgdG8KKyAgIGNvbXBpbGUgZ2l0LmV4ZS4KKworICAgJCAuL2NvbXBhdC92Y2J1aWxkL3ZjcGtnX2NvcHlfcGFja2FnZXMuYmF0IGRlYnVnCisgICAkIC4vY29tcGF0L3ZjYnVpbGQvdmNwa2dfY29weV9wYWNrYWdlcy5iYXQgcmVsZWFzZQorCiszLiBCdWlsZCBnaXQgdXNpbmcgTVNWQyBmcm9tIGFuIFNESyBiYXNoIHdpbmRvdyB1c2luZyBvbmUgb2YgdGhlCisgICBmb2xsb3dpbmcgY29tbWFuZHM6CisKKyAgICQgbWFrZSBNU1ZDPTEKKyAgICQgbWFrZSBNU1ZDPTEgREVCVUc9MQorCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0FsdGVybmF0aXZlbHksIHJ1biBgbWFrZSB2Y3hwcm9qYCBhbmQgdGhlbiBsb2FkIHRoZSBnZW5lcmF0ZWQgYGdpdC5zbG5gIGluCitWaXN1YWwgU3R1ZGlvLiBUaGUgaW5pdGlhbCBidWlsZCB3aWxsIGluc3RhbGwgdGhlIHZjcGtnIHN5c3RlbSBhbmQgYnVpbGQgdGhlCitkZXBlbmRlbmNpZXMgYXV0b21hdGljYWxseS4gVGhpcyB3aWxsIHRha2UgYSB3aGlsZS4KKworSW5zdGVhZCBvZiBnZW5lcmF0aW5nIHRoZSBgZ2l0LnNsbmAgZmlsZSB5b3Vyc2VsZiAod2hpY2ggcmVxdWlyZXMgYSBmdWxsIEdpdAorZm9yIFdpbmRvd3MgU0RLKSwgeW91IG1heSB3YW50IHRvIGNvbnNpZGVyIGZldGNoaW5nIHRoZSBgdnMvbWFzdGVyYCBicmFuY2ggb2YKK2h0dHBzOi8vZ2l0aHViLmNvbS9naXQtZm9yLXdpbmRvd3MvZ2l0IGluc3RlYWQgKHdoaWNoIGlzIHVwZGF0ZWQgYXV0b21hdGljYWxseQordmlhIENJIHJ1bm5pbmcgYG1ha2UgdmN4cHJvamApLiBUaGUgYHZzL21hc3RlcmAgYnJhbmNoIGRvZXMgbm90IHJlcXVpcmUgYSBHaXQKK2ZvciBXaW5kb3dzIHRvIGJ1aWxkLCBidXQgeW91IGNhbiBydW4gdGhlIHRlc3Qgc2NyaXB0cyBpbiBhIHJlZ3VsYXIgR2l0IEJhc2guCisKK05vdGUgdGhhdCBgbWFrZSB2Y3hwcm9qYCB3aWxsIGF1dG9tYXRpY2FsbHkgYWRkIGFuZCBjb21taXQgdGhlIGdlbmVyYXRlZCBgLnNsbmAKK2FuZCBgLnZjeHByb2pgIGZpbGVzIHRvIHRoZSByZXBvLiBUaGlzIGlzIG5lY2Vzc2FyeSB0byBhbGxvdyBidWlsZGluZyBhCitmdWxseS10ZXN0YWJsZSBHaXQgaW4gVmlzdWFsIFN0dWRpbywgd2hlcmUgYSByZWd1bGFyIEdpdCBCYXNoIGNhbiBiZSB1c2VkIHRvCitydW4gdGhlIHRlc3Qgc2NyaXB0cyAoYXMgb3Bwb3NlZCB0byBhIGZ1bGwgR2l0IGZvciBXaW5kb3dzIFNESyk6IGEgbnVtYmVyIG9mCitidWlsZCB0YXJnZXRzLCBzdWNoIGFzIEdpdCBjb21tYW5kcyBpbXBsZW1lbnRlZCBhcyBVbml4IHNoZWxsIHNjcmlwdHMgKHdoZXJlCitgQEBTSEVMTF9QQVRIQEBgIGFuZCBvdGhlciBwbGFjZWhvbGRlcnMgYXJlIGludGVycG9sYXRlZCkgcmVxdWlyZSBhIGZ1bGwtYmxvd24KK0dpdCBmb3IgV2luZG93cyBTREsgKHdoaWNoIGlzIGFib3V0IDEweCB0aGUgc2l6ZSBvZiBhIHJlZ3VsYXIgR2l0IGZvciBXaW5kb3dzCitpbnN0YWxsYXRpb24pLgorCitJZiB5b3VyIHBsYW4gaXMgdG8gb3BlbiBhIFB1bGwgUmVxdWVzdCB3aXRoIEdpdCBmb3IgV2luZG93cywgaXQgaXMgYSBnb29kIGlkZWEKK3RvIGRyb3AgdGhpcyBjb21taXQgYmVmb3JlIHN1Ym1pdHRpbmcuCisKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIFRoZSBTdGVwcyBvZiBCdWlsZCBHaXQgd2l0aCBWUzIwMDgKIAogMS4gWW91IG5lZWQgdGhlIGJ1aWxkIGVudmlyb25tZW50LCB3aGljaCBjb250YWlucyB0aGUgR2l0IGRlcGVuZGVuY2llcwpkaWZmIC0tZ2l0IGEvY29tcGF0L3ZjYnVpbGQvZmluZF92c19lbnYuYmF0IGIvY29tcGF0L3ZjYnVpbGQvZmluZF92c19lbnYuYmF0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIzNWQyNjQKLS0tIC9kZXYvbnVsbAorKysgYi9jb21wYXQvdmNidWlsZC9maW5kX3ZzX2Vudi5iYXQKQEAgLTAsMCArMSwxNjggQEAKK0BFQ0hPIE9GRgorUkVNID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1JFTSBZb3UgY2FuIHVzZSBlaXRoZXIgR0NDICh0aGUgZGVmYXVsdCkgb3IgTVNWQyB0byBidWlsZCBnaXQKK1JFTSB1c2luZyB0aGUgR0lULVNESyBjb21tYW5kIGxpbmUgdG9vbHMuCitSRU0gICAgICAgICQgbWFrZQorUkVNICAgICAgICAkIG1ha2UgTVNWQz0xCitSRU0KK1JFTSBHSVQtU0RLIEJBU0ggd2luZG93cyBpbmhlcml0IGVudmlyb25tZW50IHZhcmlhYmxlcyB3aXRoIGFsbCBvZgorUkVNIHRoZSBiaW4vbGliL2luY2x1ZGUgcGF0aHMgZm9yIEdDQy4gIEl0IERPRVMgTk9UIGluaGVyaXQgdmFsdWVzCitSRU0gZm9yIHRoZSBjb3JyZXNwb25kaW5nIE1TVkMgdG9vbHMuCitSRU0KK1JFTSBEdXJpbmcgbm9ybWFsIChub24tZ2l0KSBXaW5kb3dzIGRldmVsb3BtZW50LCB5b3UgbGF1bmNoIG9uZQorUkVNIG9mIHRoZSBwcm92aWRlZCAiZGV2ZWxvcGVyIGNvbW1hbmQgcHJvbXB0cyIgdG8gc2V0IGVudmlyb25tZW50CitSRU0gdmFyaWFibGVzIGZvciB0aGUgTVNWQyB0b29scy4KK1JFTQorUkVNIFRoZXJlZm9yZSwgdG8gYWxsb3cgTVNWQyBjb21tYW5kIGxpbmUgYnVpbGRzIG9mIGdpdCBmcm9tIEJBU0gKK1JFTSBhbmQgTUFLRSwgd2UgbXVzdCBibGVuZCB0aGVzZSB0d28gZGlmZmVyZW50IHdvcmxkcy4gIFRoaXMgc2NyaXB0CitSRU0gYXR0ZW1wdHMgdG8gZG8gdGhhdC4KK1JFTSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitSRU0gVGhpcyBCQVQgZmlsZSBzdGFydHMgaW4gYSBwbGFpbiAobm9uLWRldmVsb3BlcikgY29tbWFuZCBwcm9tcHQsCitSRU0gc2VhcmNoZXMgZm9yIHRoZSAiYmVzdCIgY29tbWFuZCBwcm9tcHQgc2V0dXAgc2NyaXB0LCBpbnN0YWxscworUkVNIGl0IGludG8gdGhlIGN1cnJlbnQgQ01EIHByb2Nlc3MsIGFuZCBleHBvcnRzIHRoZSB2YXJpb3VzIE1TVkMKK1JFTSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZm9yIHVzZSBieSBNQUtFLgorUkVNCitSRU0gVGhlIG91dHB1dCBvZiB0aGlzIHNjcmlwdCBzaG91bGQgYmUgd3JpdHRlbiB0byBhIG1ha2UgImluY2x1ZGUKK1JFTSBmaWxlIiBhbmQgcmVmZXJlbmNlZCBieSB0aGUgdG9wLWxldmVsIE1ha2VmaWxlLgorUkVNCitSRU0gU2VlICJjb25maWcubWFrLnVuYW1lIiAobG9vayBmb3IgY29tcGF0L3ZjYnVpbGQvTVNWQy1ERUZTLUdFTikuCitSRU0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorUkVNIFRoZSBwcm92aWRlZCBjb21tYW5kIHByb21wdHMgYXJlIGN1c3RvbSB0byBlYWNoIFZTIHJlbGVhc2UgYW5kCitSRU0gZmlsbGVkIHdpdGggbG90cyBvZiBpbnRlcm5hbCBrbm93bGVkZ2UgKHN1Y2ggYXMgUmVnaXN0cnkgc2V0dGluZ3MpOworUkVNIGV2ZW4gdGhlaXIgbmFtZXMgdmFyeSBieSByZWxlYXNlLCBzbyBpdCBpcyBub3QgYXBwcm9wcmlhdGUgZm9yIHVzCitSRU0gdG8gbG9vayBpbnNpZGUgdGhlbS4gIFJhdGhlciwganVzdCBydW4gdGhlbSBpbiBhIHN1Ym9yZGluYXRlCitSRU0gcHJvY2VzcyBhbmQgZXh0cmFjdCB0aGUgc2V0dGluZ3Mgd2UgbmVlZC4KK1JFTSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitSRU0KK1JFTSBDdXJyZW50IChWUzIwMTcgYW5kIGJleW9uZCkKK1JFTSAtLS0tLS0tLS0tLS0tLS0tLS0tCitSRU0gVmlzdWFsIFN0dWRpbyAyMDE3IGludHJvZHVjZWQgYSBuZXcgaW5zdGFsbGF0aW9uIGxheW91dCBhbmQKK1JFTSBzdXBwb3J0IGZvciBzaWRlLWJ5LXNpZGUgaW5zdGFsbGF0aW9uIG9mIG11bHRpcGxlIHZlcnNpb25zIG9mCitSRU0gVlMyMDE3LiAgRnVydGhlcm1vcmUsIHRoZXNlIGNhbiBhbGwgY29leGlzdCB3aXRoIGluc3RhbGxhdGlvbnMKK1JFTSBvZiBwcmV2aW91cyB2ZXJzaW9ucyBvZiBWUyAod2hpY2ggaGF2ZSBhIGNvbXBsZXRlbHkgZGlmZmVyZW50CitSRU0gbGF5b3V0IG9uIGRpc2spLgorUkVNCitSRU0gVlMyMDE3IFVwZGF0ZSAyIGludHJvZHVjZWQgYSAidnN3aGVyZS5leGUiIGNvbW1hbmQ6CitSRU0gaHR0cHM6Ly9naXRodWIuY29tL01pY3Jvc29mdC92c3doZXJlCitSRU0gaHR0cHM6Ly9ibG9ncy5tc2RuLm1pY3Jvc29mdC5jb20vaGVhdGhzLzIwMTcvMDIvMjUvdnN3aGVyZS1hdmFpbGFibGUvCitSRU0gaHR0cHM6Ly9ibG9ncy5tc2RuLm1pY3Jvc29mdC5jb20vdmNibG9nLzIwMTcvMDMvMDYvZmluZGluZy10aGUtdmlzdWFsLWMtY29tcGlsZXItdG9vbHMtaW4tdmlzdWFsLXN0dWRpby0yMDE3LworUkVNCitSRU0gVlMyMDE1CitSRU0gLS0tLS0tCitSRU0gVmlzdWFsIFN0dWRpbyAyMDE1IHVzZXMgdGhlIHRyYWRpdGlvbmFsIFZjVmFyc0FsbC4KK1JFTQorUkVNIEVhcmxpZXIgVmVyc2lvbnMKK1JFTSAtLS0tLS0tLS0tLS0tLS0tCitSRU0gQ3VycmVudGx5IHVuc3VwcG9ydGVkLgorUkVNCitSRU0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorUkVNIE5vdGU6IFRocm91Z2hvdXQgdGhpcyBzY3JpcHQgd2UgdXNlICJkaXIgPHBhdGg+ICYmIDxjbWQ+IiByYXRoZXIKK1JFTSB0aGFuICJpZiBleGlzdCA8cGF0aD4iIGJlY2F1c2Ugb2Ygc2NyaXB0IHByb2JsZW1zIHdpdGggcGF0aG5hbWVzCitSRU0gY29udGFpbmluZyBzcGFjZXMuCitSRU0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitSRU0gU2FuaXRpemUgUEFUSCB0byBwcmV2ZW50IGdpdC1zZGsgcGF0aHMgZnJvbSBjb25mdXNpbmcgIndtaWMuZXhlIgorUkVNIChjYWxsZWQgaW50ZXJuYWxseSBpbiBzb21lIG9mIHRoZSBzeXN0ZW0gQkFUIGZpbGVzKS4KK1NFVCBQQVRIPSVTeXN0ZW1Sb290JVxzeXN0ZW0zMjslU3lzdGVtUm9vdCU7JVN5c3RlbVJvb3QlXFN5c3RlbTMyXFdiZW07CisKK1JFTSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKzpjdXJyZW50CisgICBTRVQgdnNfd2hlcmU9QzpcUHJvZ3JhbSBGaWxlcyAoeDg2KVxNaWNyb3NvZnQgVmlzdWFsIFN0dWRpb1xJbnN0YWxsZXJcdnN3aGVyZS5leGUKKyAgIGRpciAiJXZzX3doZXJlJSIgPm51bCAyPm51bCAmJiBHT1RPIGhhdmVfdnNfd2hlcmUKKyAgIEdPVE8gbm90XzIwMTcKKworOmhhdmVfdnNfd2hlcmUKKyAgIFJFTSBUcnkgdG8gdXNlIFZzV2hlcmUgdG8gZ2V0IHRoZSBsb2NhdGlvbiBvZiBWc0RldkNtZC4KKworICAgUkVNIEtlZXAgVnNEZXZDbWQgZnJvbSBjZCdpbmcgYXdheS4KKyAgIFNFVCBWU0NNRF9TVEFSVF9ESVI9LgorCisgICBSRU0gR2V0IHRoZSByb290IG9mIHRoZSBWUyBwcm9kdWN0IGluc3RhbGxhdGlvbi4KKyAgIEZPUiAvRiAidXNlYmFja3EgdG9rZW5zPSoiICUlaSBJTiAoYCIldnNfd2hlcmUlIiAtbGF0ZXN0IC1yZXF1aXJlcyBNaWNyb3NvZnQuVmlzdWFsU3R1ZGlvLldvcmtsb2FkLk5hdGl2ZURlc2t0b3AgLXByb3BlcnR5IGluc3RhbGxhdGlvblBhdGhgKSBETyBAU0VUIHZzX2lwPSUlaQorCisgICBTRVQgdnNfZGV2Y21kPSV2c19pcCVcQ29tbW9uN1xUb29sc1xWc0RldkNtZC5iYXQKKyAgIGRpciAiJXZzX2RldmNtZCUiID5udWwgMj5udWwgJiYgR09UTyBoYXZlX3ZzX2RldmNtZAorICAgR09UTyBub3RfMjAxNworCis6aGF2ZV92c19kZXZjbWQKKyAgIFJFTSBVc2UgVnNEZXZDbWQgdG8gc2V0dXAgdGhlIGVudmlyb25tZW50IG9mIHRoaXMgcHJvY2Vzcy4KKyAgIFJFTSBTZXR1cCBDTCBmb3IgYnVpbGRpbmcgNjQtYml0IGFwcHMgdXNpbmcgNjQtYml0IHRvb2xzLgorICAgQGNhbGwgIiV2c19kZXZjbWQlIiAtbm9fbG9nbyAtYXJjaD14NjQgLWhvc3RfYXJjaD14NjQKKworICAgU0VUIHRndD0lVlNDTURfQVJHX1RHVF9BUkNIJQorCisgICBTRVQgbW49JVZDVG9vbHNJbnN0YWxsRGlyJQorICAgU0VUIG1zdmNfaW5jbHVkZXM9LUkiJW1uJUlOQ0xVREUiCisgICBTRVQgbXN2Y19saWJzPS1MIiVtbiVsaWJcJXRndCUiCisgICBTRVQgbXN2Y19iaW5fZGlyPSVtbiViaW5cSG9zdCVWU0NNRF9BUkdfSE9TVF9BUkNIJVwldGd0JQorCisgICBTRVQgc2RrX2Rpcj0lV2luZG93c1Nka0RpciUKKyAgIFNFVCBzZGtfdmVyPSVXaW5kb3dzU0RLVmVyc2lvbiUKKyAgIFNFVCBzaT0lc2RrX2RpciVJbmNsdWRlXCVzZGtfdmVyJQorICAgU0VUIHNka19pbmNsdWRlcz0tSSIlc2kldWNydCIgLUkiJXNpJXVtIiAtSSIlc2klc2hhcmVkIgorICAgU0VUIHNsPSVzZGtfZGlyJWxpYlwlc2RrX3ZlciUKKyAgIFNFVCBzZGtfbGlicz0tTCIlc2wldWNydFwldGd0JSIgLUwiJXNsJXVtXCV0Z3QlIgorCisgICBTRVQgdnNfdmVyPSVWaXN1YWxTdHVkaW9WZXJzaW9uJQorCisgICBHT1RPIHByaW50X3ZhcnMKKworUkVNID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworOm5vdF8yMDE3CisgICBSRU0gU2VlIGlmIFZTMjAxNSBpcyBpbnN0YWxsZWQuCisKKyAgIFNFVCB2c18yMDE1X2JhdD1DOlxQcm9ncmFtIEZpbGVzICh4ODYpXE1pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIDE0LjBcVkNcdmN2YXJzYWxsLmJhdAorICAgZGlyICIldnNfMjAxNV9iYXQlIiA+bnVsIDI+bnVsICYmIEdPVE8gaGF2ZV92c18yMDE1CisgICBHT1RPIG5vdF8yMDE1CisKKzpoYXZlX3ZzXzIwMTUKKyAgIFJFTSBVc2UgVmNWYXJzQWxsIGxpa2UgdGhlICJ4NjQgTmF0aXZlIiBjb21tYW5kIHByb21wdC4KKyAgIFJFTSBTZXR1cCBDTCBmb3IgYnVpbGRpbmcgNjQtYml0IGFwcHMgdXNpbmcgNjQtYml0IHRvb2xzLgorICAgQGNhbGwgIiV2c18yMDE1X2JhdCUiIGFtZDY0CisKKyAgIFJFTSBOb3RlIHRoYXQgaW4gVlMyMDE1IHRoZXkgdXNlICJ4NjQiIGluIHNvbWUgY29udGV4dHMgYW5kICJhbWQ2NCIgaW4gb3RoZXJzLgorICAgU0VUIG1uPUM6XFByb2dyYW0gRmlsZXMgKHg4NilcTWljcm9zb2Z0IFZpc3VhbCBTdHVkaW8gMTQuMFxWQ1wKKyAgIFNFVCBtc3ZjX2luY2x1ZGVzPS1JIiVtbiVJTkNMVURFIgorICAgU0VUIG1zdmNfbGlicz0tTCIlbW4lbGliXGFtZDY0IgorICAgU0VUIG1zdmNfYmluX2Rpcj0lbW4lYmluXGFtZDY0CisKKyAgIFNFVCBzZGtfZGlyPSVXaW5kb3dzU2RrRGlyJQorICAgU0VUIHNka192ZXI9JVdpbmRvd3NTREtWZXJzaW9uJQorICAgU0VUIHNpPSVzZGtfZGlyJUluY2x1ZGVcJXNka192ZXIlCisgICBTRVQgc2RrX2luY2x1ZGVzPS1JIiVzaSV1Y3J0IiAtSSIlc2kldW0iIC1JIiVzaSVzaGFyZWQiIC1JIiVzaSV3aW5ydCIKKyAgIFNFVCBzbD0lc2RrX2RpciVsaWJcJXNka192ZXIlCisgICBTRVQgc2RrX2xpYnM9LUwiJXNsJXVjcnRceDY0IiAtTCIlc2wldW1ceDY0IgorCisgICBTRVQgdnNfdmVyPSVWaXN1YWxTdHVkaW9WZXJzaW9uJQorCisgICBHT1RPIHByaW50X3ZhcnMKKworUkVNID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworOm5vdF8yMDE1CisgICBlY2hvICJFUlJPUjogdW5zdXBwb3J0ZWQgVlMgdmVyc2lvbiAob2xkZXIgdGhhbiBWUzIwMTUpIiA+JjIKKyAgIEVYSVQgL0IgMQorCitSRU0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCis6cHJpbnRfdmFycworICAgUkVNIER1bXAgdGhlIGVzc2VudGlhbCB2YXJzIHRvIHN0ZG91dCB0byBhbGxvdyB0aGUgbWFpbgorICAgUkVNIE1ha2VmaWxlIHRvIGluY2x1ZGUgaXQuICBTZWUgY29uZmlnLm1hay51bmFtZS4KKyAgIFJFTSBJbmNsdWRlIERPUy1zdHlsZSBhbmQgQkFTSC1zdHlsZSBwYXRoIGZvciBiaW4gZGlyLgorCisgICBlY2hvIG1zdmNfYmluX2Rpcj0lbXN2Y19iaW5fZGlyJQorICAgU0VUIFgxPSVtc3ZjX2Jpbl9kaXI6Qzo9L0MlCisgICBTRVQgWDI9JVgxOlw9LyUKKyAgIGVjaG8gbXN2Y19iaW5fZGlyX21zeXM9JVgyJQorCisgICBlY2hvIG1zdmNfaW5jbHVkZXM9JW1zdmNfaW5jbHVkZXMlCisgICBlY2hvIG1zdmNfbGlicz0lbXN2Y19saWJzJQorCisgICBlY2hvIHNka19pbmNsdWRlcz0lc2RrX2luY2x1ZGVzJQorICAgZWNobyBzZGtfbGlicz0lc2RrX2xpYnMlCisKKyAgIGVjaG8gdnNfdmVyPSV2c192ZXIlCisKKyAgIEVYSVQgL0IgMApkaWZmIC0tZ2l0IGEvY29tcGF0L3ZjYnVpbGQvc2NyaXB0cy9jbGluay5wbCBiL2NvbXBhdC92Y2J1aWxkL3NjcmlwdHMvY2xpbmsucGwKaW5kZXggYTg3ZDBkYS4uZDlmNzFiNyAxMDA3NTUKLS0tIGEvY29tcGF0L3ZjYnVpbGQvc2NyaXB0cy9jbGluay5wbAorKysgYi9jb21wYXQvdmNidWlsZC9zY3JpcHRzL2NsaW5rLnBsCkBAIC0xMiw0MyArMTIsMTIwIEBACiB1c2Ugc3RyaWN0OwogbXkgQGFyZ3MgPSAoKTsKIG15IEBjZmxhZ3MgPSAoKTsKK215IEBsZmxhZ3MgPSAoKTsKIG15ICRpc19saW5raW5nID0gMDsKK215ICRpc19kZWJ1ZyA9IDA7CiB3aGlsZSAoQEFSR1YpIHsKIAlteSAkYXJnID0gc2hpZnQgQEFSR1Y7Ci0JaWYgKCIkYXJnIiA9fiAvXi1bRElNR09dLykgeworCWlmICgiJGFyZyIgZXEgIi1EREVCVUciKSB7CisJICAgICMgU29tZSB2Y3BrZy1iYXNlZCBsaWJyYXJpZXMgaGF2ZSBkaWZmZXJlbnQgbmFtZXMgZm9yIHJlbGVhc2UKKwkgICAgIyBhbmQgZGVidWcgdmVyc2lvbnMuICBUaGlzIGhhY2sgYXNzdW1lcyB0aGF0IC1EREVCVUcgY29tZXMKKwkgICAgIyBiZWZvcmUgYW55ICItbCoiIGZsYWdzLgorCSAgICAkaXNfZGVidWcgPSAxOworCX0KKwlpZiAoIiRhcmciID1+IC9eLVtESU1HT1pdLykgewogCQlwdXNoKEBjZmxhZ3MsICRhcmcpOwogCX0gZWxzaWYgKCIkYXJnIiBlcSAiLW8iKSB7CiAJCW15ICRmaWxlX291dCA9IHNoaWZ0IEBBUkdWOwogCQlpZiAoIiRmaWxlX291dCIgPX4gL2V4ZSQvKSB7CiAJCQkkaXNfbGlua2luZyA9IDE7CisJCQkjIENyZWF0ZSBmb28uZXhlIGFuZCBmb28ucGRiCiAJCQlwdXNoKEBhcmdzLCAiLU9VVDokZmlsZV9vdXQiKTsKIAkJfSBlbHNlIHsKKwkJCSMgQ3JlYXRlIGZvby5vIGFuZCBmb28uby5wZGIKIAkJCXB1c2goQGFyZ3MsICItRm8kZmlsZV9vdXQiKTsKKwkJCXB1c2goQGFyZ3MsICItRmQkZmlsZV9vdXQucGRiIik7CiAJCX0KIAl9IGVsc2lmICgiJGFyZyIgZXEgIi1seiIpIHsKKwkgICAgaWYgKCRpc19kZWJ1ZykgeworCQlwdXNoKEBhcmdzLCAiemxpYmQubGliIik7CisJICAgIH0gZWxzZXsKIAkJcHVzaChAYXJncywgInpsaWIubGliIik7CisJICAgIH0KIAl9IGVsc2lmICgiJGFyZyIgZXEgIi1saWNvbnYiKSB7Ci0JCXB1c2goQGFyZ3MsICJpY29udi5saWIiKTsKKwkJcHVzaChAYXJncywgImxpYmljb252LmxpYiIpOwogCX0gZWxzaWYgKCIkYXJnIiBlcSAiLWxjcnlwdG8iKSB7Ci0JCXB1c2goQGFyZ3MsICJsaWJlYXkzMi5saWIiKTsKKwkJcHVzaChAYXJncywgImxpYmNyeXB0by5saWIiKTsKIAl9IGVsc2lmICgiJGFyZyIgZXEgIi1sc3NsIikgewotCQlwdXNoKEBhcmdzLCAic3NsZWF5MzIubGliIik7CisJCXB1c2goQGFyZ3MsICJsaWJzc2wubGliIik7CiAJfSBlbHNpZiAoIiRhcmciIGVxICItbGN1cmwiKSB7Ci0JCXB1c2goQGFyZ3MsICJsaWJjdXJsLmxpYiIpOworCQlteSAkbGliID0gIiI7CisJCSMgTmV3ZXIgdmNwa2cgZGVmaW5pdGlvbnMgY2FsbCB0aGlzIGxpYmN1cmxfaW1wLmxpYjsgRG8gd2UKKwkJIyBuZWVkIHRvIHVzZSB0aGF0IGluc3RlYWQ/CisJCWZvcmVhY2ggbXkgJGZsYWcgKEBsZmxhZ3MpIHsKKwkJCWlmICgkZmxhZyA9fiAvXi1MSUJQQVRIOiguKikvKSB7CisJCQkJZm9yZWFjaCBteSAkbCAoImxpYmN1cmxfaW1wLmxpYiIsICJsaWJjdXJsLmxpYiIpIHsKKwkJCQkJaWYgKC1mICIkMS8kbCIpIHsKKwkJCQkJCSRsaWIgPSAkbDsKKwkJCQkJCWxhc3Q7CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0KKwkJcHVzaChAYXJncywgJGxpYik7CisJfSBlbHNpZiAoIiRhcmciIGVxICItbGV4cGF0IikgeworCQlwdXNoKEBhcmdzLCAiZXhwYXQubGliIik7CiAJfSBlbHNpZiAoIiRhcmciID1+IC9eLUwvICYmICIkYXJnIiBuZSAiLUxUQ0ciKSB7CiAJCSRhcmcgPX4gcy9eLUwvLUxJQlBBVEg6LzsKLQkJcHVzaChAYXJncywgJGFyZyk7Ci0JfSBlbHNpZiAoIiRhcmciID1+IC9eLVIvKSB7CisJCXB1c2goQGxmbGFncywgJGFyZyk7CisJfSBlbHNpZiAoIiRhcmciID1+IC9eLVtSbF0vKSB7CiAJCSMgZWF0CisJfSBlbHNpZiAoIiRhcmciIGVxICItV2Vycm9yIikgeworCQlwdXNoKEBjZmxhZ3MsICItV1giKTsKKwl9IGVsc2lmICgiJGFyZyIgZXEgIi1XYWxsIikgeworCQkjIGNsLmV4ZSB1bmRlcnN0YW5kcyAtV2FsbCwgYnV0IGl0IGlzIHJlYWxseSBvdmVyemVhbG91cworCQlwdXNoKEBjZmxhZ3MsICItVzQiKTsKKwkJIyBkaXNhYmxlIHRoZSAic2lnbmVkL3Vuc2lnbmVkIG1pc21hdGNoIiB3YXJuaW5nczsgb3VyIHNvdXJjZSBjb2RlIHZpb2xhdGVzIHRoYXQKKwkJcHVzaChAY2ZsYWdzLCAiLXdkNDAxOCIpOworCQlwdXNoKEBjZmxhZ3MsICItd2Q0MjQ1Iik7CisJCXB1c2goQGNmbGFncywgIi13ZDQzODkiKTsKKwkJIyBkaXNhYmxlIHRoZSAidW5yZWZlcmVuY2VkIGZvcm1hbCBwYXJhbWV0ZXIiIHdhcm5pbmc7IG91ciBzb3VyY2UgY29kZSB2aW9sYXRlcyB0aGF0CisJCXB1c2goQGNmbGFncywgIi13ZDQxMDAiKTsKKwkJIyBkaXNhYmxlIHRoZSAiY29uZGl0aW9uYWwgZXhwcmVzc2lvbiBpcyBjb25zdGFudCIgd2FybmluZzsgb3VyIHNvdXJjZSBjb2RlIHZpb2xhdGVzIHRoYXQKKwkJcHVzaChAY2ZsYWdzLCAiLXdkNDEyNyIpOworCQkjIGRpc2FibGUgdGhlICJjb25zdCBvYmplY3Qgc2hvdWxkIGJlIGluaXRpYWxpemVkIiB3YXJuaW5nOyB0aGVzZSB3YXJuaW5ncyBhZmZlY3Qgb25seSBvYmplY3RzIHRoYXQgYXJlIGBzdGF0aWNgCisJCXB1c2goQGNmbGFncywgIi13ZDQxMzIiKTsKKwkJIyBkaXNhYmxlIHRoZSAiZnVuY3Rpb24vZGF0YSBwb2ludGVyIGNvbnZlcnNpb24gaW4gZXhwcmVzc2lvbiIgd2FybmluZzsgb3VyIHNvdXJjZSBjb2RlIHZpb2xhdGVzIHRoYXQKKwkJcHVzaChAY2ZsYWdzLCAiLXdkNDE1MiIpOworCQkjIGRpc2FibGUgdGhlICJub24tY29uc3RhbnQgYWdncmVnYXRlIGluaXRpYWxpemVyIiB3YXJuaW5nOyBvdXIgc291cmNlIGNvZGUgdmlvbGF0ZXMgdGhhdAorCQlwdXNoKEBjZmxhZ3MsICItd2Q0MjA0Iik7CisJCSMgZGlzYWJsZSB0aGUgImNhbm5vdCBiZSBpbml0aWFsaXplZCB1c2luZyBhZGRyZXNzIG9mIGF1dG9tYXRpYyB2YXJpYWJsZSIgd2FybmluZzsgb3VyIHNvdXJjZSBjb2RlIHZpb2xhdGVzIHRoYXQKKwkJcHVzaChAY2ZsYWdzLCAiLXdkNDIyMSIpOworCQkjIGRpc2FibGUgdGhlICJwb3NzaWJsZSBsb3NzIG9mIGRhdGEiIHdhcm5pbmdzOyBvdXIgc291cmNlIGNvZGUgdmlvbGF0ZXMgdGhhdAorCQlwdXNoKEBjZmxhZ3MsICItd2Q0MjQ0Iik7CisJCXB1c2goQGNmbGFncywgIi13ZDQyNjciKTsKKwkJIyBkaXNhYmxlIHRoZSAiYXJyYXkgaXMgdG9vIHNtYWxsIHRvIGluY2x1ZGUgYSB0ZXJtaW5hdGluZyBudWxsIGNoYXJhY3RlciIgd2FybmluZzsgd2UgYWItdXNlIHN0cmluZ3MgdG8gaW5pdGlhbGl6ZSBPSURzCisJCXB1c2goQGNmbGFncywgIi13ZDQyOTUiKTsKKwkJIyBkaXNhYmxlIHRoZSAiJzw8JzogcmVzdWx0IG9mIDMyLWJpdCBzaGlmdCBpbXBsaWNpdGx5IGNvbnZlcnRlZCB0byA2NCBiaXRzIiB3YXJuaW5nOyBvdXIgc291cmNlIGNvZGUgdmlvbGF0ZXMgdGhhdAorCQlwdXNoKEBjZmxhZ3MsICItd2Q0MzM0Iik7CisJCSMgZGlzYWJsZSB0aGUgImRlY2xhcmF0aW9uIGhpZGVzIHByZXZpb3VzIGxvY2FsIGRlY2xhcmF0aW9uIiB3YXJuaW5nOyBvdXIgc291cmNlIGNvZGUgdmlvbGF0ZXMgdGhhdAorCQlwdXNoKEBjZmxhZ3MsICItd2Q0NDU2Iik7CisJCSMgZGlzYWJsZSB0aGUgImRlY2xhcmF0aW9uIGhpZGVzIGZ1bmN0aW9uIHBhcmFtZXRlciIgd2FybmluZzsgb3VyIHNvdXJjZSBjb2RlIHZpb2xhdGVzIHRoYXQKKwkJcHVzaChAY2ZsYWdzLCAiLXdkNDQ1NyIpOworCQkjIGRpc2FibGUgdGhlICJkZWNsYXJhdGlvbiBoaWRlcyBnbG9iYWwgZGVjbGFyYXRpb24iIHdhcm5pbmc7IG91ciBzb3VyY2UgY29kZSB2aW9sYXRlcyB0aGF0CisJCXB1c2goQGNmbGFncywgIi13ZDQ0NTkiKTsKKwkJIyBkaXNhYmxlIHRoZSAicG90ZW50aWFsbHkgdW5pbml0aWFsaXplZCBsb2NhbCB2YXJpYWJsZSAnPG5hbWU+JyB1c2VkIiB3YXJuaW5nOyBvdXIgc291cmNlIGNvZGUgdmlvbGF0ZXMgdGhhdAorCQlwdXNoKEBjZmxhZ3MsICItd2Q0NzAxIik7CisJCSMgZGlzYWJsZSB0aGUgInVucmVhY2hhYmxlIGNvZGUiIHdhcm5pbmc7IG91ciBzb3VyY2UgY29kZSB2aW9sYXRlcyB0aGF0CisJCXB1c2goQGNmbGFncywgIi13ZDQ3MDIiKTsKKwkJIyBkaXNhYmxlIHRoZSAicG90ZW50aWFsbHkgdW5pbml0aWFsaXplZCBsb2NhbCBwb2ludGVyIHZhcmlhYmxlIHVzZWQiIHdhcm5pbmc7IG91ciBzb3VyY2UgY29kZSB2aW9sYXRlcyB0aGF0CisJCXB1c2goQGNmbGFncywgIi13ZDQ3MDMiKTsKKwkJIyBkaXNhYmxlIHRoZSAiYXNzaWdubWVudCB3aXRoaW4gY29uZGl0aW9uYWwgZXhwcmVzc2lvbiIgd2FybmluZzsgb3VyIHNvdXJjZSBjb2RlIHZpb2xhdGVzIHRoYXQKKwkJcHVzaChAY2ZsYWdzLCAiLXdkNDcwNiIpOworCQkjIGRpc2FibGUgdGhlICInaW5ldF9udG9hJzogVXNlIGluZXRfbnRvcCgpIG9yIEluZXROdG9wKCkgaW5zdGVhZCIgd2FybmluZzsgb3VyIHNvdXJjZSBjb2RlIHZpb2xhdGVzIHRoYXQKKwkJcHVzaChAY2ZsYWdzLCAiLXdkNDk5NiIpOworCX0gZWxzaWYgKCIkYXJnIiA9fiAvXi1XW2Etel0vKSB7CisJCSMgbGV0J3MgaWdub3JlIHRob3NlCiAJfSBlbHNlIHsKIAkJcHVzaChAYXJncywgJGFyZyk7CiAJfQogfQogaWYgKCRpc19saW5raW5nKSB7CisJcHVzaChAYXJncywgQGxmbGFncyk7CiAJdW5zaGlmdChAYXJncywgImxpbmsuZXhlIik7CiB9IGVsc2UgewogCXVuc2hpZnQoQGFyZ3MsICJjbC5leGUiKTsKIAlwdXNoKEBhcmdzLCBAY2ZsYWdzKTsKIH0KLSNwcmludGYoIioqKiogQGFyZ3NcbiIpOworcHJpbnRmKFNUREVSUiAiKioqKiBAYXJnc1xuXG5cbiIpIGlmICghZGVmaW5lZCgkRU5WeydRVUlFVF9HRU4nfSkpOwogZXhpdCAoc3lzdGVtKEBhcmdzKSAhPSAwKTsKZGlmZiAtLWdpdCBhL2NvbXBhdC92Y2J1aWxkL3ZjcGtnX2NvcHlfZGxscy5iYXQgYi9jb21wYXQvdmNidWlsZC92Y3BrZ19jb3B5X2RsbHMuYmF0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEzNjYxYzEKLS0tIC9kZXYvbnVsbAorKysgYi9jb21wYXQvdmNidWlsZC92Y3BrZ19jb3B5X2RsbHMuYmF0CkBAIC0wLDAgKzEsMzkgQEAKK0BFQ0hPIE9GRgorUkVNID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1JFTSBUaGlzIHNjcmlwdCBpcyBhbiBvcHRpb25hbCBzdGVwLiBJdCBjb3BpZXMgdGhlICouZGxsIGFuZCAqLnBkYgorUkVNIGZpbGVzIChjcmVhdGVkIGJ5IHZjcGtnX2luc3RhbGwuYmF0KSBpbnRvIHRoZSB0b3AtbGV2ZWwgZGlyZWN0b3J5CitSRU0gb2YgdGhlIHJlcG8gc28gdGhhdCB5b3UgY2FuIHR5cGUgIi4vZ2l0LmV4ZSIgYW5kIGZpbmQgdGhlbSB3aXRob3V0CitSRU0gaGF2aW5nIHRvIGZpeHVwIHlvdXIgUEFUSC4KK1JFTQorUkVNIE5PVEU6IEJlY2F1c2UgdGhlIG5hbWVzIG9mIHNvbWUgRExMIGZpbGVzIGNoYW5nZSBiZXR3ZWVuIERFQlVHIGFuZAorUkVNIE5PVEU6IFJFTEVBU0UgYnVpbGRzIHdoZW4gYnVpbHQgdXNpbmcgInZjcGtnLmV4ZSIsIHlvdSB3aWxsIG5lZWQKK1JFTSBOT1RFOiB0byBjb3B5IHVwIHRoZSBjb3JyZXNwb25kaW5nIHZlcnNpb24uCitSRU0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisJU0VUTE9DQUwgRW5hYmxlRGVsYXllZEV4cGFuc2lvbgorCisJQEZPUiAvRiAiZGVsaW1zPSIgJSVEIElOICgiJX5kcDAiKSBETyBAU0VUIGN3ZD0lJX5mRAorCWNkICVjd2QlCisKKwlTRVQgYXJjaD14NjQtd2luZG93cworCVNFVCBpbnN0PSVjd2QldmNwa2dcaW5zdGFsbGVkXCVhcmNoJQorCisJSUYgWyUxXT09W3JlbGVhc2VdICgKKwkJZWNobyBDb3B5aW5nIFJFTEVBU0UgbW9kZSBETExzIHRvIHJlcG8gcm9vdC4uLgorCSkgRUxTRSBJRiBbJTFdPT1bZGVidWddICgKKwkJU0VUIGluc3Q9JWluc3QlXGRlYnVnCisJCWVjaG8gQ29weWluZyBERUJVRyBtb2RlIERMTHMgdG8gcmVwbyByb290Li4uCisJKSBFTFNFICgKKwkJZWNobyBFUlJPUjogSW52YWxpZCBhcmd1bWVudC4KKwkJZWNobyBVc2FnZTogJX4wIHJlbGVhc2UKKwkJZWNobyBVc2FnZTogJX4wIGRlYnVnCisJCUVYSVQgL0IgMQorCSkKKworCXhjb3B5IC9lL3Mvdi95ICVpbnN0JVxiaW5cKi5kbGwgLi5cLi5cCisJeGNvcHkgL2Uvcy92L3kgJWluc3QlXGJpblwqLnBkYiAuLlwuLlwKKworCXhjb3B5IC9lL3Mvdi95ICVpbnN0JVxiaW5cKi5kbGwgLi5cLi5cdFxoZWxwZXJcCisJeGNvcHkgL2Uvcy92L3kgJWluc3QlXGJpblwqLnBkYiAuLlwuLlx0XGhlbHBlclwKKworCUVYSVQgL0IgMApkaWZmIC0tZ2l0IGEvY29tcGF0L3ZjYnVpbGQvdmNwa2dfaW5zdGFsbC5iYXQgYi9jb21wYXQvdmNidWlsZC92Y3BrZ19pbnN0YWxsLmJhdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYmQwYmFkCi0tLSAvZGV2L251bGwKKysrIGIvY29tcGF0L3ZjYnVpbGQvdmNwa2dfaW5zdGFsbC5iYXQKQEAgLTAsMCArMSw4MCBAQAorQEVDSE8gT0ZGCitSRU0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorUkVNIFRoaXMgc2NyaXB0IGluc3RhbGxzIHRoZSAidmNwa2ciIHNvdXJjZSBwYWNrYWdlIG1hbmFnZXIgYW5kIHVzZXMKK1JFTSBpdCB0byBidWlsZCB0aGUgdGhpcmQtcGFydHkgbGlicmFyaWVzIHRoYXQgZ2l0IHJlcXVpcmVzIHdoZW4gaXQKK1JFTSBpcyBidWlsdCB1c2luZyBNU1ZDLgorUkVNCitSRU0gWzFdIEluc3RhbGwgVkNQS0cuCitSRU0gICAgIFthXSBDcmVhdGUgPHJvb3Q+L2NvbXBhdC92Y2J1aWxkL3ZjcGtnLworUkVNICAgICBbYl0gRG93bmxvYWQgInZjcGtnIi4KK1JFTSAgICAgW2NdIENvbXBpbGUgdXNpbmcgdGhlIGN1cnJlbnRseSBpbnN0YWxsZWQgdmVyc2lvbiBvZiBWUy4KK1JFTSAgICAgW2RdIENyZWF0ZSA8cm9vdD4vY29tcGF0L3ZjYnVpbGQvdmNwa2cvdmNwa2cuZXhlCitSRU0KK1JFTSBbMl0gSW5zdGFsbCB0aGlyZC1wYXJ0eSBsaWJyYXJpZXMuCitSRU0gICAgIFthXSBEb3dubG9hZCBlYWNoICh3aGljaCBtYXkgYWxzbyBpbnN0YWxsIENNQUtFKS4KK1JFTSAgICAgW2JdIENvbXBpbGUgaW4gUkVMRUFTRSBtb2RlIGFuZCBpbnN0YWxsIGluOgorUkVNICAgICAgICAgdmNwa2cvaW5zdGFsbGVkLzxhcmNoPi97YmluLGxpYn0KK1JFTSAgICAgW2NdIENvbXBpbGUgaW4gREVCVUcgbW9kZSBhbmQgaW5zdGFsbCBpbjoKK1JFTSAgICAgICAgIHZjcGtnL2luc3RhbGxlZC88YXJjaD4vZGVidWcve2JpbixsaWJ9CitSRU0gICAgIFtkXSBJbnN0YWxsIGhlYWRlcnMgaW46CitSRU0gICAgICAgICB2Y3BrZy9pbnN0YWxsZWQvPGFyY2g+L2luY2x1ZGUKK1JFTQorUkVNIFszXSBDcmVhdGUgYSBzZXQgb2YgTUFLRSBkZWZpbml0aW9ucyBmb3IgdGhlIHRvcC1sZXZlbAorUkVNICAgICBNYWtlZmlsZSB0byBhbGxvdyAibWFrZSBNU1ZDPTEiIHRvIGZpbmQgdGhlIGFib3ZlCitSRU0gICAgIHRoaXJkLXBhcnR5IGxpYnJhcmllcy4KK1JFTSAgICAgW2FdIFdyaXRlIHZjcGtnL1ZDUEdLLURFRlMKK1JFTQorUkVNIGh0dHBzOi8vYmxvZ3MubXNkbi5taWNyb3NvZnQuY29tL3ZjYmxvZy8yMDE2LzA5LzE5L3ZjcGtnLWEtdG9vbC10by1hY3F1aXJlLWFuZC1idWlsZC1jLW9wZW4tc291cmNlLWxpYnJhcmllcy1vbi13aW5kb3dzLworUkVNIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWNyb3NvZnQvdmNwa2cKK1JFTSBodHRwczovL3ZjcGtnLnJlYWR0aGVkb2NzLmlvL2VuL2xhdGVzdC8KK1JFTSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKwlTRVRMT0NBTCBFbmFibGVEZWxheWVkRXhwYW5zaW9uCisKKwlARk9SIC9GICJkZWxpbXM9IiAlJUQgSU4gKCIlfmRwMCIpIERPIEBTRVQgY3dkPSUlfmZECisJY2QgJWN3ZCUKKworCWRpciB2Y3BrZ1x2Y3BrZy5leGUgPm51bCAyPm51bCAmJiBHT1RPIDppbnN0YWxsX2xpYnJhcmllcworCisJZWNobyBGZXRjaGluZyB2Y3BrZyBpbiAlY3dkJXZjcGtnCisJZ2l0LmV4ZSBjbG9uZSBodHRwczovL2dpdGh1Yi5jb20vTWljcm9zb2Z0L3ZjcGtnIHZjcGtnCisJSUYgRVJST1JMRVZFTCAxICggRVhJVCAvQiAxICkKKworCWNkIHZjcGtnCisJZWNobyBCdWlsZGluZyB2Y3BrZworCXBvd2Vyc2hlbGwgLWV4ZWMgYnlwYXNzIHNjcmlwdHNcYm9vdHN0cmFwLnBzMQorCUlGIEVSUk9STEVWRUwgMSAoIEVYSVQgL0IgMSApCisKKwllY2hvIFN1Y2Nlc3NmdWxseSBpbnN0YWxsZWQgJWN3ZCV2Y3BrZ1x2Y3BrZy5leGUKKworOmluc3RhbGxfbGlicmFyaWVzCisJU0VUIGFyY2g9eDY0LXdpbmRvd3MKKworCWVjaG8gSW5zdGFsbGluZyB0aGlyZC1wYXJ0eSBsaWJyYXJpZXMuLi4KKwlGT1IgJSVpIElOICh6bGliIGV4cGF0IGxpYmljb252IG9wZW5zc2wgbGlic3NoMiBjdXJsKSBETyAoCisJICAgIGNkICVjd2QldmNwa2cKKwkgICAgSUYgTk9UIEVYSVNUICJwYWNrYWdlc1wlJWlfJWFyY2glIiBDQUxMIDpzdWJfX2luc3RhbGxfb25lICUlaQorCSAgICBJRiBFUlJPUkxFVkVMIDEgKCBFWElUIC9CIDEgKQorCSkKKworOmluc3RhbGxfZGVmaW5lcworCWNkICVjd2QlCisJU0VUIGluc3Q9JWN3ZCV2Y3BrZ1xpbnN0YWxsZWRcJWFyY2glCisKKwllY2hvIHZjcGtnX2luYz0tSSIlaW5zdCVcaW5jbHVkZSI+VkNQS0ctREVGUworCWVjaG8gdmNwa2dfcmVsX2xpYj0tTCIlaW5zdCVcbGliIj4+VkNQS0ctREVGUworCWVjaG8gdmNwa2dfcmVsX2Jpbj0iJWluc3QlXGJpbiI+PlZDUEtHLURFRlMKKwllY2hvIHZjcGtnX2RiZ19saWI9LUwiJWluc3QlXGRlYnVnXGxpYiI+PlZDUEtHLURFRlMKKwllY2hvIHZjcGtnX2RiZ19iaW49IiVpbnN0JVxkZWJ1Z1xiaW4iPj5WQ1BLRy1ERUZTCisKKwlFWElUIC9CIDAKKworCis6c3ViX19pbnN0YWxsX29uZQorCWVjaG8gICAgIEluc3RhbGxpbmcgcGFja2FnZSAlMS4uLgorCisJLlx2Y3BrZy5leGUgaW5zdGFsbCAlMTolYXJjaCUKKwlJRiBFUlJPUkxFVkVMIDEgKCBFWElUIC9CIDEgKQorCisJZWNobyAgICAgRmluaXNoZWQgJTEKKwlnb3RvIDpFT0YKZGlmZiAtLWdpdCBhL2NvbXBhdC93aW4zMi9naXQubWFuaWZlc3QgYi9jb21wYXQvd2luMzIvZ2l0Lm1hbmlmZXN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc3MWUzY2MKLS0tIC9kZXYvbnVsbAorKysgYi9jb21wYXQvd2luMzIvZ2l0Lm1hbmlmZXN0CkBAIC0wLDAgKzEsMjUgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJ5ZXMiPz4KKzxhc3NlbWJseSB4bWxucz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTphc20udjEiIG1hbmlmZXN0VmVyc2lvbj0iMS4wIj4KKwk8YXNzZW1ibHlJZGVudGl0eSB0eXBlPSJ3aW4zMiIgbmFtZT0iR2l0IiB2ZXJzaW9uPSIwLjAuMC4xIiAvPgorCTx0cnVzdEluZm8geG1sbnM9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206YXNtLnYyIj4KKwkJPHNlY3VyaXR5PgorCQkJPHJlcXVlc3RlZFByaXZpbGVnZXM+CisJCQkJPHJlcXVlc3RlZEV4ZWN1dGlvbkxldmVsIGxldmVsPSJhc0ludm9rZXIiIHVpQWNjZXNzPSJmYWxzZSIgLz4KKwkJCTwvcmVxdWVzdGVkUHJpdmlsZWdlcz4KKwkJPC9zZWN1cml0eT4KKwk8L3RydXN0SW5mbz4KKwk8Y29tcGF0aWJpbGl0eSB4bWxucz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpjb21wYXRpYmlsaXR5LnYxIj4KKwkJPGFwcGxpY2F0aW9uPgorCQkJPCEtLSBXaW5kb3dzIFZpc3RhIC0tPgorCQkJPHN1cHBvcnRlZE9TIElkPSJ7ZTIwMTE0NTctMTU0Ni00M2M1LWE1ZmUtMDA4ZGVlZTNkM2YwfSIvPgorCQkJPCEtLSBXaW5kb3dzIDcgLS0+CisJCQk8c3VwcG9ydGVkT1MgSWQ9InszNTEzOGI5YS01ZDk2LTRmYmQtOGUyZC1hMjQ0MDIyNWY5M2F9Ii8+CisJCQk8IS0tIFdpbmRvd3MgOCAtLT4KKwkJCTxzdXBwb3J0ZWRPUyBJZD0iezRhMmYyOGUzLTUzYjktNDQ0MS1iYTljLWQ2OWQ0YTRhNmUzOH0iLz4KKwkJCTwhLS0gV2luZG93cyA4LjEgLS0+CisJCQk8c3VwcG9ydGVkT1MgSWQ9InsxZjY3NmM3Ni04MGUxLTQyMzktOTViYi04M2QwZjZkMGRhNzh9Ii8+CisJCQk8IS0tIFdpbmRvd3MgMTAgLS0+CisJCQk8c3VwcG9ydGVkT1MgSWQ9Ins4ZTBmN2ExMi1iZmIzLTRmZTgtYjlhNS00OGZkNTBhMTVhOWF9Ii8+CisJCTwvYXBwbGljYXRpb24+CisJPC9jb21wYXRpYmlsaXR5PgorPC9hc3NlbWJseT4KZGlmZiAtLWdpdCBhL2NvbXBhdC93aW4zMi9wYXRoLXV0aWxzLmMgYi9jb21wYXQvd2luMzIvcGF0aC11dGlscy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmViZjJmMTIKLS0tIC9kZXYvbnVsbAorKysgYi9jb21wYXQvd2luMzIvcGF0aC11dGlscy5jCkBAIC0wLDAgKzEsNTIgQEAKKyNpbmNsdWRlICIuLi8uLi9naXQtY29tcGF0LXV0aWwuaCIKKworaW50IHdpbjMyX2hhc19kb3NfZHJpdmVfcHJlZml4KGNvbnN0IGNoYXIgKnBhdGgpCit7CisJaW50IGk7CisKKwkvKgorCSAqIERvZXMgaXQgc3RhcnQgd2l0aCBhbiBBU0NJSSBsZXR0ZXIgKGkuZS4gaGlnaGVzdCBiaXQgbm90IHNldCksCisJICogZm9sbG93ZWQgYnkgYSBjb2xvbj8KKwkgKi8KKwlpZiAoISgweDgwICYgKHVuc2lnbmVkIGNoYXIpKnBhdGgpKQorCQlyZXR1cm4gKnBhdGggJiYgcGF0aFsxXSA9PSAnOicgPyAyIDogMDsKKworCS8qCisJICogV2hpbGUgZHJpdmUgbGV0dGVycyBtdXN0IGJlIGxldHRlcnMgb2YgdGhlIEVuZ2xpc2ggYWxwaGFiZXQsIGl0IGlzCisJICogcG9zc2libGUgdG8gYXNzaWduIHZpcnR1YWxseSBfYW55XyBVbmljb2RlIGNoYXJhY3RlciB2aWEgYHN1YnN0YCBhcworCSAqIGEgZHJpdmUgbGV0dGVyIHRvICJ2aXJ0dWFsIGRyaXZlcyIuIEV2ZW4gYDFgLCBvciBgw6RgLiBPciBmdW4gc3R1ZmYKKwkgKiBsaWtlIHRoaXM6CisJICoKKwkgKiAgICAgIHN1YnN0INaNOiAlVVNFUlBST0ZJTEUlXERlc2t0b3AKKwkgKi8KKwlmb3IgKGkgPSAxOyBpIDwgNCAmJiAoMHg4MCAmICh1bnNpZ25lZCBjaGFyKXBhdGhbaV0pOyBpKyspCisJCTsgLyogc2tpcCBmaXJzdCBVVEYtOCBjaGFyYWN0ZXIgKi8KKwlyZXR1cm4gcGF0aFtpXSA9PSAnOicgPyBpICsgMSA6IDA7Cit9CisKK2ludCB3aW4zMl9za2lwX2Rvc19kcml2ZV9wcmVmaXgoY2hhciAqKnBhdGgpCit7CisJaW50IHJldCA9IGhhc19kb3NfZHJpdmVfcHJlZml4KCpwYXRoKTsKKwkqcGF0aCArPSByZXQ7CisJcmV0dXJuIHJldDsKK30KKworaW50IHdpbjMyX29mZnNldF8xc3RfY29tcG9uZW50KGNvbnN0IGNoYXIgKnBhdGgpCit7CisJY2hhciAqcG9zID0gKGNoYXIgKilwYXRoOworCisJLyogdW5jIHBhdGhzICovCisJaWYgKCFza2lwX2Rvc19kcml2ZV9wcmVmaXgoJnBvcykgJiYKKwkJCWlzX2Rpcl9zZXAocG9zWzBdKSAmJiBpc19kaXJfc2VwKHBvc1sxXSkpIHsKKwkJLyogc2tpcCBzZXJ2ZXIgbmFtZSAqLworCQlwb3MgPSBzdHJwYnJrKHBvcyArIDIsICJcXC8iKTsKKwkJaWYgKCFwb3MpCisJCQlyZXR1cm4gMDsgLyogRXJyb3I6IG1hbGZvcm1lZCB1bmMgcGF0aCAqLworCisJCWRvIHsKKwkJCXBvcysrOworCQl9IHdoaWxlICgqcG9zICYmICFpc19kaXJfc2VwKCpwb3MpKTsKKwl9CisKKwlyZXR1cm4gcG9zICsgaXNfZGlyX3NlcCgqcG9zKSAtIHBhdGg7Cit9CmRpZmYgLS1naXQgYS9jb21wYXQvd2luMzIvcGF0aC11dGlscy5oIGIvY29tcGF0L3dpbjMyL3BhdGgtdXRpbHMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMmU3MDg3Ci0tLSAvZGV2L251bGwKKysrIGIvY29tcGF0L3dpbjMyL3BhdGgtdXRpbHMuaApAQCAtMCwwICsxLDI2IEBACisjaWZuZGVmIFdJTjMyX1BBVEhfVVRJTFNfSAorI2RlZmluZSBXSU4zMl9QQVRIX1VUSUxTX0gKKworaW50IHdpbjMyX2hhc19kb3NfZHJpdmVfcHJlZml4KGNvbnN0IGNoYXIgKnBhdGgpOworI2RlZmluZSBoYXNfZG9zX2RyaXZlX3ByZWZpeCB3aW4zMl9oYXNfZG9zX2RyaXZlX3ByZWZpeAorCitpbnQgd2luMzJfc2tpcF9kb3NfZHJpdmVfcHJlZml4KGNoYXIgKipwYXRoKTsKKyNkZWZpbmUgc2tpcF9kb3NfZHJpdmVfcHJlZml4IHdpbjMyX3NraXBfZG9zX2RyaXZlX3ByZWZpeAorc3RhdGljIGlubGluZSBpbnQgd2luMzJfaXNfZGlyX3NlcChpbnQgYykKK3sKKwlyZXR1cm4gYyA9PSAnLycgfHwgYyA9PSAnXFwnOworfQorI2RlZmluZSBpc19kaXJfc2VwIHdpbjMyX2lzX2Rpcl9zZXAKK3N0YXRpYyBpbmxpbmUgY2hhciAqd2luMzJfZmluZF9sYXN0X2Rpcl9zZXAoY29uc3QgY2hhciAqcGF0aCkKK3sKKwljaGFyICpyZXQgPSBOVUxMOworCWZvciAoOyAqcGF0aDsgKytwYXRoKQorCQlpZiAoaXNfZGlyX3NlcCgqcGF0aCkpCisJCQlyZXQgPSAoY2hhciAqKXBhdGg7CisJcmV0dXJuIHJldDsKK30KKyNkZWZpbmUgZmluZF9sYXN0X2Rpcl9zZXAgd2luMzJfZmluZF9sYXN0X2Rpcl9zZXAKK2ludCB3aW4zMl9vZmZzZXRfMXN0X2NvbXBvbmVudChjb25zdCBjaGFyICpwYXRoKTsKKyNkZWZpbmUgb2Zmc2V0XzFzdF9jb21wb25lbnQgd2luMzJfb2Zmc2V0XzFzdF9jb21wb25lbnQKKworI2VuZGlmCmRpZmYgLS1naXQgYS9jb21wYXQvd2luMzIvcHRocmVhZC5oIGIvY29tcGF0L3dpbjMyL3B0aHJlYWQuaAppbmRleCBjNmNiOGRkLi43Mzc5ODNkIDEwMDY0NAotLS0gYS9jb21wYXQvd2luMzIvcHRocmVhZC5oCisrKyBiL2NvbXBhdC93aW4zMi9wdGhyZWFkLmgKQEAgLTUwLDggKzUwLDggQEAKIAlEV09SRCB0aWQ7CiB9IHB0aHJlYWRfdDsKIAotZXh0ZXJuIGludCBwdGhyZWFkX2NyZWF0ZShwdGhyZWFkX3QgKnRocmVhZCwgY29uc3Qgdm9pZCAqdW51c2VkLAotCQkJICB2b2lkICooKnN0YXJ0X3JvdXRpbmUpKHZvaWQqKSwgdm9pZCAqYXJnKTsKK2ludCBwdGhyZWFkX2NyZWF0ZShwdGhyZWFkX3QgKnRocmVhZCwgY29uc3Qgdm9pZCAqdW51c2VkLAorCQkgICB2b2lkICooKnN0YXJ0X3JvdXRpbmUpKHZvaWQqKSwgdm9pZCAqYXJnKTsKIAogLyoKICAqIFRvIGF2b2lkIHRoZSBuZWVkIG9mIGNvcHlpbmcgYSBzdHJ1Y3QsIHdlIHVzZSBzbWFsbCBtYWNybyB3cmFwcGVyIHRvIHBhc3MKQEAgLTU5LDEwICs1OSwxMCBAQAogICovCiAjZGVmaW5lIHB0aHJlYWRfam9pbihhLCBiKSB3aW4zMl9wdGhyZWFkX2pvaW4oJihhKSwgKGIpKQogCi1leHRlcm4gaW50IHdpbjMyX3B0aHJlYWRfam9pbihwdGhyZWFkX3QgKnRocmVhZCwgdm9pZCAqKnZhbHVlX3B0cik7CitpbnQgd2luMzJfcHRocmVhZF9qb2luKHB0aHJlYWRfdCAqdGhyZWFkLCB2b2lkICoqdmFsdWVfcHRyKTsKIAogI2RlZmluZSBwdGhyZWFkX2VxdWFsKHQxLCB0MikgKCh0MSkudGlkID09ICh0MikudGlkKQotZXh0ZXJuIHB0aHJlYWRfdCBwdGhyZWFkX3NlbGYodm9pZCk7CitwdGhyZWFkX3QgcHRocmVhZF9zZWxmKHZvaWQpOwogCiBzdGF0aWMgaW5saW5lIHZvaWQgTk9SRVRVUk4gcHRocmVhZF9leGl0KHZvaWQgKnJldCkKIHsKZGlmZiAtLWdpdCBhL2NvbXBhdC93aW4zMi90cmFjZTJfd2luMzJfcHJvY2Vzc19pbmZvLmMgYi9jb21wYXQvd2luMzIvdHJhY2UyX3dpbjMyX3Byb2Nlc3NfaW5mby5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhjY2JkMWMKLS0tIC9kZXYvbnVsbAorKysgYi9jb21wYXQvd2luMzIvdHJhY2UyX3dpbjMyX3Byb2Nlc3NfaW5mby5jCkBAIC0wLDAgKzEsMTkxIEBACisjaW5jbHVkZSAiLi4vLi4vY2FjaGUuaCIKKyNpbmNsdWRlICIuLi8uLi9qc29uLXdyaXRlci5oIgorI2luY2x1ZGUgImxhenlsb2FkLmgiCisjaW5jbHVkZSA8UHNhcGkuaD4KKyNpbmNsdWRlIDx0bEhlbHAzMi5oPgorCisvKgorICogQW4gYXJiaXRyYXJpbHkgY2hvc2VuIHZhbHVlIHRvIGxpbWl0IHRoZSBzaXplIG9mIHRoZSBhbmNlc3RvcgorICogYXJyYXkgYnVpbHQgaW4gZ2l0X3Byb2Nlc3NlcygpLgorICovCisjZGVmaW5lIE5SX1BJRFNfTElNSVQgMTAKKworLyoKKyAqIEZpbmQgdGhlIHByb2Nlc3MgZGF0YSBmb3IgdGhlIGdpdmVuIFBJRCBpbiB0aGUgZ2l2ZW4gc25hcHNob3QKKyAqIGFuZCB1cGRhdGUgdGhlIFBST0NFU1NFTlRSWTMyIGRhdGEuCisgKi8KK3N0YXRpYyBpbnQgZmluZF9waWQoRFdPUkQgcGlkLCBIQU5ETEUgaFNuYXBzaG90LCBQUk9DRVNTRU5UUlkzMiAqcGUzMikKK3sKKwlwZTMyLT5kd1NpemUgPSBzaXplb2YoUFJPQ0VTU0VOVFJZMzIpOworCisJaWYgKFByb2Nlc3MzMkZpcnN0KGhTbmFwc2hvdCwgcGUzMikpIHsKKwkJZG8geworCQkJaWYgKHBlMzItPnRoMzJQcm9jZXNzSUQgPT0gcGlkKQorCQkJCXJldHVybiAxOworCQl9IHdoaWxlIChQcm9jZXNzMzJOZXh0KGhTbmFwc2hvdCwgcGUzMikpOworCX0KKwlyZXR1cm4gMDsKK30KKworLyoKKyAqIEFjY3VtdWxhdGUgSlNPTiBhcnJheSBvZiBvdXIgcGFyZW50IHByb2Nlc3NlczoKKyAqICAgICBbCisgKiAgICAgICAgIGV4ZS1uYW1lLXBhcmVudCwKKyAqICAgICAgICAgZXhlLW5hbWUtZ3JhbmQtcGFyZW50LAorICogICAgICAgICAuLi4KKyAqICAgICBdCisgKgorICogTm90ZTogd2Ugb25seSByZXBvcnQgdGhlIGZpbGVuYW1lIG9mIHRoZSBwcm9jZXNzIGV4ZWN1dGFibGU7IHRoZQorICogICAgICAgb25seSB3YXkgdG8gZ2V0IGl0cyBmdWxsIHBhdGhuYW1lIGlzIHRvIHVzZSBPcGVuUHJvY2VzcygpCisgKiAgICAgICBhbmQgR2V0TW9kdWxlRmlsZU5hbWVFeCgpIG9yIFF1ZXJ5ZnVsbFByb2Nlc3NJbWFnZU5hbWUoKQorICogICAgICAgYW5kIHRoYXQgc2VlbXMgcmF0aGVyIGV4cGVuc2l2ZSAob24gdG9wIG9mIHRoZSBjb3N0IG9mCisgKiAgICAgICBnZXR0aW5nIHRoZSBzbmFwc2hvdCkuCisgKgorICogTm90ZTogd2UgY29tcHV0ZSB0aGUgc2V0IG9mIHBhcmVudCBwcm9jZXNzZXMgYnkgd2Fsa2luZyB0aGUgUFBJRAorICogICAgICAgbGluayBpbiBlYWNoIHZpc2l0ZWQgUFJPQ0VTU0VOVFJZMzIgcmVjb3JkLiAgVGhpcyBzZWFyY2gKKyAqICAgICAgIHN0b3BzIHdoZW4gYW4gYW5jZXN0b3IgcHJvY2VzcyBpcyBub3QgZm91bmQgaW4gdGhlIHNuYXBzaG90CisgKiAgICAgICAoYmVjYXVzZSBpdCBleGl0ZWQgYmVmb3JlIHRoZSBjdXJyZW50IG9yIGludGVybWVkaWF0ZSBwYXJlbnQKKyAqICAgICAgIHByb2Nlc3MgZXhpdGVkKS4KKyAqCisgKiAgICAgICBUaGlzIHNlYXJjaCBtYXkgY29tcHV0ZSBhbiBpbmNvcnJlY3QgcmVzdWx0IGlmIHRoZSBQUElEIGxpbmsKKyAqICAgICAgIHJlZmVycyB0byB0aGUgUElEIG9mIGFuIGV4aXRlZCBwYXJlbnQgYW5kIHRoYXQgUElEIGhhcyBiZWVuCisgKiAgICAgICByZWN5Y2xlZCBhbmQgZ2l2ZW4gdG8gYSBuZXcgdW5yZWxhdGVkIHByb2Nlc3MuCisgKgorICogICAgICAgV29yc2UsIGl0IGlzIHBvc3NpYmxlIGZvciBhIGNoaWxkIG9yIGRlc2NlbmRhbnQgb2YgdGhlCisgKiAgICAgICBjdXJyZW50IHByb2Nlc3MgdG8gYmUgZ2l2ZW4gdGhlIHJlY3ljbGVkIFBJRCBhbmQgY2F1c2UgYQorICogICAgICAgUFBJRC1jeWNsZS4gIFRoaXMgd291bGQgY2F1c2UgYW4gaW5maW5pdGUgbG9vcCBidWlsZGluZyBvdXIKKyAqICAgICAgIHBhcmVudCBwcm9jZXNzIGFycmF5LgorICoKKyAqIE5vdGU6IGZvciBjb21wbGV0ZW5lc3MsIHRoZSAiU3lzdGVtIElkbGUiIHByb2Nlc3MgaGFzIFBJRD0wIGFuZAorICogICAgICAgUFBJRD0wIGFuZCBjb3VsZCBjYXVzZSBhbm90aGVyIFBQSUQtY3ljbGUuICBXZSBkb24ndCBleHBlY3QKKyAqICAgICAgIEdpdCB0byBiZSBhIGRlc2NlbmRhbnQgb2YgdGhlIGlkbGUgcHJvY2VzcywgYnV0IGJlY2F1c2Ugb2YKKyAqICAgICAgIFBJRCByZWN5Y2xpbmcsIGl0IG1pZ2h0IGJlIHBvc3NpYmxlIHRvIGdldCBhIFBQSUQgbGluayB2YWx1ZQorICogICAgICAgb2YgMC4gIFRoaXMgdG9vIHdvdWxkIGNhdXNlIGFuIGluZmluaXRlIGxvb3AuCisgKgorICogVGhlcmVmb3JlLCB3ZSBrZWVwIGFuIGFycmF5IG9mIHRoZSB2aXNpdGVkIFBQSURzIHRvIGd1YXJkIGFnYWluc3QKKyAqIGN5Y2xlcy4KKyAqCisgKiBXZSB1c2UgYSBmaXhlZC1zaXplIGFycmF5IHJhdGhlciB0aGFuIEFMTE9DX0dST1cgdG8ga2VlcCB0aGluZ3MKKyAqIHNpbXBsZSBhbmQgYXZvaWQgdGhlIGFsbG9jL3JlYWxsb2Mgb3ZlcmhlYWQuICBJdCBpcyBPSyBpZiB3ZQorICogdHJ1bmNhdGUgdGhlIHNlYXJjaCBhbmQgcmV0dXJuIGEgcGFydGlhbCBhbnN3ZXIuCisgKi8KK3N0YXRpYyB2b2lkIGdldF9wcm9jZXNzZXMoc3RydWN0IGpzb25fd3JpdGVyICpqdywgSEFORExFIGhTbmFwc2hvdCkKK3sKKwlQUk9DRVNTRU5UUlkzMiBwZTMyOworCURXT1JEIHBpZDsKKwlEV09SRCBwaWRfbGlzdFtOUl9QSURTX0xJTUlUXTsKKwlpbnQgaywgbnJfcGlkcyA9IDA7CisKKwlwaWQgPSBHZXRDdXJyZW50UHJvY2Vzc0lkKCk7CisJd2hpbGUgKGZpbmRfcGlkKHBpZCwgaFNuYXBzaG90LCAmcGUzMikpIHsKKwkJLyogT25seSByZXBvcnQgcGFyZW50cy4gT21pdCBzZWxmIGZyb20gdGhlIEpTT04gb3V0cHV0LiAqLworCQlpZiAobnJfcGlkcykKKwkJCWp3X2FycmF5X3N0cmluZyhqdywgcGUzMi5zekV4ZUZpbGUpOworCisJCS8qIENoZWNrIGZvciBjeWNsZSBpbiBzbmFwc2hvdC4gKFllcywgaXQgaGFwcGVuZWQuKSAqLworCQlmb3IgKGsgPSAwOyBrIDwgbnJfcGlkczsgaysrKQorCQkJaWYgKHBpZCA9PSBwaWRfbGlzdFtrXSkgeworCQkJCWp3X2FycmF5X3N0cmluZyhqdywgIihjeWNsZSkiKTsKKwkJCQlyZXR1cm47CisJCQl9CisKKwkJaWYgKG5yX3BpZHMgPT0gTlJfUElEU19MSU1JVCkgeworCQkJandfYXJyYXlfc3RyaW5nKGp3LCAiKHRydW5jYXRlZCkiKTsKKwkJCXJldHVybjsKKwkJfQorCisJCXBpZF9saXN0W25yX3BpZHMrK10gPSBwaWQ7CisKKwkJcGlkID0gcGUzMi50aDMyUGFyZW50UHJvY2Vzc0lEOworCX0KK30KKworLyoKKyAqIEVtaXQgSlNPTiBkYXRhIGZvciB0aGUgY3VycmVudCBhbmQgcGFyZW50IHByb2Nlc3Nlcy4gIEluZGl2aWR1YWwKKyAqIHRyYWNlMiB0YXJnZXRzIGNhbiBkZWNpZGUgaG93IHRvIGFjdHVhbGx5IHByaW50IGl0LgorICovCitzdGF0aWMgdm9pZCBnZXRfYW5jZXN0cnkodm9pZCkKK3sKKwlIQU5ETEUgaFNuYXBzaG90ID0gQ3JlYXRlVG9vbGhlbHAzMlNuYXBzaG90KFRIMzJDU19TTkFQUFJPQ0VTUywgMCk7CisKKwlpZiAoaFNuYXBzaG90ICE9IElOVkFMSURfSEFORExFX1ZBTFVFKSB7CisJCXN0cnVjdCBqc29uX3dyaXRlciBqdyA9IEpTT05fV1JJVEVSX0lOSVQ7CisKKwkJandfYXJyYXlfYmVnaW4oJmp3LCAwKTsKKwkJZ2V0X3Byb2Nlc3NlcygmancsIGhTbmFwc2hvdCk7CisJCWp3X2VuZCgmancpOworCisJCXRyYWNlMl9kYXRhX2pzb24oInByb2Nlc3MiLCB0aGVfcmVwb3NpdG9yeSwgIndpbmRvd3MvYW5jZXN0cnkiLAorCQkJCSAmancpOworCisJCWp3X3JlbGVhc2UoJmp3KTsKKwkJQ2xvc2VIYW5kbGUoaFNuYXBzaG90KTsKKwl9Cit9CisKKy8qCisgKiBJcyBhIGRlYnVnZ2VyIGF0dGFjaGVkIHRvIHRoZSBjdXJyZW50IHByb2Nlc3M/CisgKgorICogVGhpcyB3aWxsIGNhdGNoIGRlYnVnIHJ1bnMgKHdoZXJlIHRoZSBkZWJ1Z2dlciBzdGFydGVkIHRoZSBwcm9jZXNzKS4KKyAqIFRoaXMgaXMgdGhlIG5vcm1hbCBjYXNlLiAgU2luY2UgdGhpcyBjb2RlIGlzIGNhbGxlZCBkdXJpbmcgb3VyIHN0YXJ0dXAsCisgKiBpdCB3aWxsIG5vdCByZXBvcnQgaW5zdGFuY2VzIHdoZXJlIGEgZGVidWdnZXIgaXMgYXR0YWNoZWQgZHluYW1pY2FsbHkKKyAqIHRvIGEgcnVubmluZyBnaXQgcHJvY2VzcywgYnV0IHRoYXQgaXMgcmVsYXRpdmVseSByYXJlLgorICovCitzdGF0aWMgdm9pZCBnZXRfaXNfYmVpbmdfZGVidWdnZWQodm9pZCkKK3sKKwlpZiAoSXNEZWJ1Z2dlclByZXNlbnQoKSkKKwkJdHJhY2UyX2RhdGFfaW50bWF4KCJwcm9jZXNzIiwgdGhlX3JlcG9zaXRvcnksCisJCQkJICAgIndpbmRvd3MvZGVidWdnZXJfcHJlc2VudCIsIDEpOworfQorCisvKgorICogRW1pdCBKU09OIGRhdGEgd2l0aCB0aGUgcGVhayBtZW1vcnkgdXNhZ2Ugb2YgdGhlIGN1cnJlbnQgcHJvY2Vzcy4KKyAqLworc3RhdGljIHZvaWQgZ2V0X3BlYWtfbWVtb3J5X2luZm8odm9pZCkKK3sKKwlERUNMQVJFX1BST0NfQUREUihwc2FwaS5kbGwsIEJPT0wsIEdldFByb2Nlc3NNZW1vcnlJbmZvLCBIQU5ETEUsCisJCQkgIFBQUk9DRVNTX01FTU9SWV9DT1VOVEVSUywgRFdPUkQpOworCisJaWYgKElOSVRfUFJPQ19BRERSKEdldFByb2Nlc3NNZW1vcnlJbmZvKSkgeworCQlQUk9DRVNTX01FTU9SWV9DT1VOVEVSUyBwbWM7CisKKwkJaWYgKEdldFByb2Nlc3NNZW1vcnlJbmZvKEdldEN1cnJlbnRQcm9jZXNzKCksICZwbWMsCisJCQkJCSBzaXplb2YocG1jKSkpIHsKKwkJCXN0cnVjdCBqc29uX3dyaXRlciBqdyA9IEpTT05fV1JJVEVSX0lOSVQ7CisKKwkJCWp3X29iamVjdF9iZWdpbigmancsIDApOworCisjZGVmaW5lIEtWKGt2KSAja3YsIChpbnRtYXhfdClwbWMua3YKKworCQkJandfb2JqZWN0X2ludG1heCgmancsIEtWKFBhZ2VGYXVsdENvdW50KSk7CisJCQlqd19vYmplY3RfaW50bWF4KCZqdywgS1YoUGVha1dvcmtpbmdTZXRTaXplKSk7CisJCQlqd19vYmplY3RfaW50bWF4KCZqdywgS1YoUGVha1BhZ2VmaWxlVXNhZ2UpKTsKKworCQkJandfZW5kKCZqdyk7CisKKwkJCXRyYWNlMl9kYXRhX2pzb24oInByb2Nlc3MiLCB0aGVfcmVwb3NpdG9yeSwKKwkJCQkJICJ3aW5kb3dzL21lbW9yeSIsICZqdyk7CisJCQlqd19yZWxlYXNlKCZqdyk7CisJCX0KKwl9Cit9CisKK3ZvaWQgdHJhY2UyX2NvbGxlY3RfcHJvY2Vzc19pbmZvKGVudW0gdHJhY2UyX3Byb2Nlc3NfaW5mb19yZWFzb24gcmVhc29uKQoreworCWlmICghdHJhY2UyX2lzX2VuYWJsZWQoKSkKKwkJcmV0dXJuOworCisJc3dpdGNoIChyZWFzb24pIHsKKwljYXNlIFRSQUNFMl9QUk9DRVNTX0lORk9fU1RBUlRVUDoKKwkJZ2V0X2lzX2JlaW5nX2RlYnVnZ2VkKCk7CisJCWdldF9hbmNlc3RyeSgpOworCQlyZXR1cm47CisKKwljYXNlIFRSQUNFMl9QUk9DRVNTX0lORk9fRVhJVDoKKwkJZ2V0X3BlYWtfbWVtb3J5X2luZm8oKTsKKwkJcmV0dXJuOworCisJZGVmYXVsdDoKKwkJQlVHKCJ0cmFjZTJfY29sbGVjdF9wcm9jZXNzX2luZm86IHVua25vd24gcmVhc29uICclZCciLCByZWFzb24pOworCX0KK30KZGlmZiAtLWdpdCBhL2NvbXBhdC93aW5hbnNpLmMgYi9jb21wYXQvd2luYW5zaS5jCmluZGV4IGY0ZjA4MjMuLmMyN2IyMGEgMTAwNjQ0Ci0tLSBhL2NvbXBhdC93aW5hbnNpLmMKKysrIGIvY29tcGF0L3dpbmFuc2kuYwpAQCAtNyw2ICs3LDcgQEAKICNpbmNsdWRlIDx3aW5nZGkuaD4KICNpbmNsdWRlIDx3aW5yZWcuaD4KICNpbmNsdWRlICJ3aW4zMi5oIgorI2luY2x1ZGUgIndpbjMyL2xhenlsb2FkLmgiCiAKIHN0YXRpYyBpbnQgZmRfaXNfaW50ZXJhY3RpdmVbM10gPSB7IDAsIDAsIDAgfTsKICNkZWZpbmUgRkRfQ09OU09MRSAweDEKQEAgLTQxLDI2ICs0MiwyMSBAQAogI2VuZGlmCiAjZW5kaWYKIAotdHlwZWRlZiBCT09MIChXSU5BUEkgKlBHRVRDVVJSRU5UQ09OU09MRUZPTlRFWCkoSEFORExFLCBCT09MLAotCQlQQ09OU09MRV9GT05UX0lORk9FWCk7Ci0KIHN0YXRpYyB2b2lkIHdhcm5faWZfcmFzdGVyX2ZvbnQodm9pZCkKIHsKIAlEV09SRCBmb250RmFtaWx5ID0gMDsKLQlQR0VUQ1VSUkVOVENPTlNPTEVGT05URVggcEdldEN1cnJlbnRDb25zb2xlRm9udEV4OworCURFQ0xBUkVfUFJPQ19BRERSKGtlcm5lbDMyLmRsbCwgQk9PTCwgR2V0Q3VycmVudENvbnNvbGVGb250RXgsCisJCQlIQU5ETEUsIEJPT0wsIFBDT05TT0xFX0ZPTlRfSU5GT0VYKTsKIAogCS8qIGRvbid0IGJvdGhlciBpZiBvdXRwdXQgd2FzIGFzY2lpIG9ubHkgKi8KIAlpZiAoIW5vbl9hc2NpaV91c2VkKQogCQlyZXR1cm47CiAKIAkvKiBHZXRDdXJyZW50Q29uc29sZUZvbnRFeCBpcyBhdmFpbGFibGUgc2luY2UgVmlzdGEgKi8KLQlwR2V0Q3VycmVudENvbnNvbGVGb250RXggPSAoUEdFVENVUlJFTlRDT05TT0xFRk9OVEVYKSBHZXRQcm9jQWRkcmVzcygKLQkJCUdldE1vZHVsZUhhbmRsZSgia2VybmVsMzIuZGxsIiksCi0JCQkiR2V0Q3VycmVudENvbnNvbGVGb250RXgiKTsKLQlpZiAocEdldEN1cnJlbnRDb25zb2xlRm9udEV4KSB7CisJaWYgKElOSVRfUFJPQ19BRERSKEdldEN1cnJlbnRDb25zb2xlRm9udEV4KSkgewogCQlDT05TT0xFX0ZPTlRfSU5GT0VYIGNmaTsKIAkJY2ZpLmNiU2l6ZSA9IHNpemVvZihjZmkpOwotCQlpZiAocEdldEN1cnJlbnRDb25zb2xlRm9udEV4KGNvbnNvbGUsIDAsICZjZmkpKQorCQlpZiAoR2V0Q3VycmVudENvbnNvbGVGb250RXgoY29uc29sZSwgMCwgJmNmaSkpCiAJCQlmb250RmFtaWx5ID0gY2ZpLkZvbnRGYW1pbHk7CiAJfSBlbHNlIHsKIAkJLyogcHJlLVZpc3RhOiBjaGVjayBkZWZhdWx0IGNvbnNvbGUgZm9udCBpbiByZWdpc3RyeSAqLwpAQCAtNTQ0LDcgKzU0MCwyMCBAQAogI2lmZGVmIERFVEVDVF9NU1lTX1RUWQogCiAjaW5jbHVkZSA8d2ludGVybmwuaD4KKworI2lmIGRlZmluZWQoX01TQ19WRVIpCisKK3R5cGVkZWYgc3RydWN0IF9PQkpFQ1RfTkFNRV9JTkZPUk1BVElPTgoreworCVVOSUNPREVfU1RSSU5HIE5hbWU7CisJV0NIQVIgTmFtZUJ1ZmZlcltGTEVYX0FSUkFZXTsKK30gT0JKRUNUX05BTUVfSU5GT1JNQVRJT04sICpQT0JKRUNUX05BTUVfSU5GT1JNQVRJT047CisKKyNkZWZpbmUgT2JqZWN0TmFtZUluZm9ybWF0aW9uIDEKKworI2Vsc2UKICNpbmNsdWRlIDxudHN0YXR1cy5oPgorI2VuZGlmCiAKIHN0YXRpYyB2b2lkIGRldGVjdF9tc3lzX3R0eShpbnQgZmQpCiB7CkBAIC01OTksNyArNjA4LDcgQEAKIHZvaWQgd2luYW5zaV9pbml0KHZvaWQpCiB7CiAJaW50IGNvbjEsIGNvbjI7Ci0JY2hhciBuYW1lWzMyXTsKKwl3Y2hhcl90IG5hbWVbMzJdOwogCiAJLyogY2hlY2sgaWYgZWl0aGVyIHN0ZG91dCBvciBzdGRlcnIgaXMgYSBjb25zb2xlIG91dHB1dCBzY3JlZW4gYnVmZmVyICovCiAJY29uMSA9IGlzX2NvbnNvbGUoMSk7CkBAIC02MTksMTMgKzYyOCwxNSBAQAogCX0KIAogCS8qIGNyZWF0ZSBhIG5hbWVkIHBpcGUgdG8gY29tbXVuaWNhdGUgd2l0aCB0aGUgY29uc29sZSB0aHJlYWQgKi8KLQl4c25wcmludGYobmFtZSwgc2l6ZW9mKG5hbWUpLCAiXFxcXC5cXHBpcGVcXHdpbmFuc2klbHUiLCBHZXRDdXJyZW50UHJvY2Vzc0lkKCkpOwotCWh3cml0ZSA9IENyZWF0ZU5hbWVkUGlwZShuYW1lLCBQSVBFX0FDQ0VTU19PVVRCT1VORCwKKwlpZiAoc3dwcmludGYobmFtZSwgQVJSQVlfU0laRShuYW1lKSAtIDEsIEwiXFxcXC5cXHBpcGVcXHdpbmFuc2klbHUiLAorCQkgICAgIEdldEN1cnJlbnRQcm9jZXNzSWQoKSkgPCAwKQorCQlkaWUoIkNvdWxkIG5vdCBpbml0aWFsaXplIHdpbmFuc2kgcGlwZSBuYW1lIik7CisJaHdyaXRlID0gQ3JlYXRlTmFtZWRQaXBlVyhuYW1lLCBQSVBFX0FDQ0VTU19PVVRCT1VORCwKIAkJUElQRV9UWVBFX0JZVEUgfCBQSVBFX1dBSVQsIDEsIEJVRkZFUl9TSVpFLCAwLCAwLCBOVUxMKTsKIAlpZiAoaHdyaXRlID09IElOVkFMSURfSEFORExFX1ZBTFVFKQogCQlkaWVfbGFzdGVycigiQ3JlYXRlTmFtZWRQaXBlIGZhaWxlZCIpOwogCi0JaHJlYWQgPSBDcmVhdGVGaWxlKG5hbWUsIEdFTkVSSUNfUkVBRCwgMCwgTlVMTCwgT1BFTl9FWElTVElORywgMCwgTlVMTCk7CisJaHJlYWQgPSBDcmVhdGVGaWxlVyhuYW1lLCBHRU5FUklDX1JFQUQsIDAsIE5VTEwsIE9QRU5fRVhJU1RJTkcsIDAsIE5VTEwpOwogCWlmIChocmVhZCA9PSBJTlZBTElEX0hBTkRMRV9WQUxVRSkKIAkJZGllX2xhc3RlcnIoIkNyZWF0ZUZpbGUgZm9yIG5hbWVkIHBpcGUgZmFpbGVkIik7CiAKQEAgLTY1MSwxMCArNjYyLDIwIEBACiAgKi8KIEhBTkRMRSB3aW5hbnNpX2dldF9vc2ZoYW5kbGUoaW50IGZkKQogeworCUhBTkRMRSByZXQ7CisKIAlpZiAoZmQgPT0gMSAmJiAoZmRfaXNfaW50ZXJhY3RpdmVbMV0gJiBGRF9TV0FQUEVEKSkKIAkJcmV0dXJuIGhjb25zb2xlMTsKIAlpZiAoZmQgPT0gMiAmJiAoZmRfaXNfaW50ZXJhY3RpdmVbMl0gJiBGRF9TV0FQUEVEKSkKIAkJcmV0dXJuIGhjb25zb2xlMjsKIAotCXJldHVybiAoSEFORExFKV9nZXRfb3NmaGFuZGxlKGZkKTsKKwlyZXQgPSAoSEFORExFKV9nZXRfb3NmaGFuZGxlKGZkKTsKKworCS8qCisJICogVGhlcmUgYXJlIG9idmlvdXNseSBjaXJjdW1zdGFuY2VzIHVuZGVyIHdoaWNoIF9nZXRfb3NmaGFuZGxlKCkKKwkgKiByZXR1cm5zIChIQU5ETEUpLTIuIFRoaXMgaXMgbm90IGRvY3VtZW50ZWQgYW55d2hlcmUsIGJ1dCB0aGF0IGlzIHNvCisJICogY2xlYXJseSBhbiBpbnZhbGlkIGhhbmRsZSB2YWx1ZSB0aGF0IHdlIGNhbiBqdXN0IHdvcmsgYXJvdW5kIHRoaXMKKwkgKiBhbmQgcmV0dXJuIHRoZSBjb3JyZWN0IHZhbHVlIGZvciBpbnZhbGlkIGhhbmRsZXMuCisJICovCisJcmV0dXJuIHJldCA9PSAoSEFORExFKS0yID8gSU5WQUxJRF9IQU5ETEVfVkFMVUUgOiByZXQ7CiB9CmRpZmYgLS1naXQgYS9jb25maWcuYyBiL2NvbmZpZy5jCmluZGV4IGZmNTIxZWIuLmQxN2QyYmQgMTAwNjQ0Ci0tLSBhL2NvbmZpZy5jCisrKyBiL2NvbmZpZy5jCkBAIC0xOSw2ICsxOSw3IEBACiAjaW5jbHVkZSAidXRmOC5oIgogI2luY2x1ZGUgImRpci5oIgogI2luY2x1ZGUgImNvbG9yLmgiCisjaW5jbHVkZSAicmVmcy5oIgogCiBzdHJ1Y3QgY29uZmlnX3NvdXJjZSB7CiAJc3RydWN0IGNvbmZpZ19zb3VyY2UgKnByZXY7CkBAIC0xNzAsNiArMTcxLDEyIEBACiAJcmV0dXJuIHJldDsKIH0KIAorc3RhdGljIHZvaWQgYWRkX3RyYWlsaW5nX3N0YXJzdGFyX2Zvcl9kaXIoc3RydWN0IHN0cmJ1ZiAqcGF0KQoreworCWlmIChwYXQtPmxlbiAmJiBpc19kaXJfc2VwKHBhdC0+YnVmW3BhdC0+bGVuIC0gMV0pKQorCQlzdHJidWZfYWRkc3RyKHBhdCwgIioqIik7Cit9CisKIHN0YXRpYyBpbnQgcHJlcGFyZV9pbmNsdWRlX2NvbmRpdGlvbl9wYXR0ZXJuKHN0cnVjdCBzdHJidWYgKnBhdCkKIHsKIAlzdHJ1Y3Qgc3RyYnVmIHBhdGggPSBTVFJCVUZfSU5JVDsKQEAgLTE5NywxMCArMjA0LDkgQEAKIAkJc3RyYnVmX3NwbGljZShwYXQsIDAsIDEsIHBhdGguYnVmLCBzbGFzaCAtIHBhdGguYnVmKTsKIAkJcHJlZml4ID0gc2xhc2ggLSBwYXRoLmJ1ZiArIDEgLyogc2xhc2ggKi87CiAJfSBlbHNlIGlmICghaXNfYWJzb2x1dGVfcGF0aChwYXQtPmJ1ZikpCi0JCXN0cmJ1Zl9pbnNlcnQocGF0LCAwLCAiKiovIiwgMyk7CisJCXN0cmJ1Zl9pbnNlcnRzdHIocGF0LCAwLCAiKiovIik7CiAKLQlpZiAocGF0LT5sZW4gJiYgaXNfZGlyX3NlcChwYXQtPmJ1ZltwYXQtPmxlbiAtIDFdKSkKLQkJc3RyYnVmX2FkZHN0cihwYXQsICIqKiIpOworCWFkZF90cmFpbGluZ19zdGFyc3Rhcl9mb3JfZGlyKHBhdCk7CiAKIAlzdHJidWZfcmVsZWFzZSgmcGF0aCk7CiAJcmV0dXJuIHByZWZpeDsKQEAgLTI0Miw3ICsyNDgsNyBAQAogCX0KIAogCXJldCA9ICF3aWxkbWF0Y2gocGF0dGVybi5idWYgKyBwcmVmaXgsIHRleHQuYnVmICsgcHJlZml4LAotCQkJIGljYXNlID8gV01fQ0FTRUZPTEQgOiAwKTsKKwkJCSBXTV9QQVRITkFNRSB8IChpY2FzZSA/IFdNX0NBU0VGT0xEIDogMCkpOwogCiAJaWYgKCFyZXQgJiYgIWFscmVhZHlfdHJpZWRfYWJzb2x1dGUpIHsKIAkJLyoKQEAgLTI2NCw2ICsyNzAsMjYgQEAKIAlyZXR1cm4gcmV0OwogfQogCitzdGF0aWMgaW50IGluY2x1ZGVfYnlfYnJhbmNoKGNvbnN0IGNoYXIgKmNvbmQsIHNpemVfdCBjb25kX2xlbikKK3sKKwlpbnQgZmxhZ3M7CisJaW50IHJldDsKKwlzdHJ1Y3Qgc3RyYnVmIHBhdHRlcm4gPSBTVFJCVUZfSU5JVDsKKwljb25zdCBjaGFyICpyZWZuYW1lID0gIXRoZV9yZXBvc2l0b3J5LT5naXRkaXIgPworCQlOVUxMIDogcmVzb2x2ZV9yZWZfdW5zYWZlKCJIRUFEIiwgMCwgTlVMTCwgJmZsYWdzKTsKKwljb25zdCBjaGFyICpzaG9ydG5hbWU7CisKKwlpZiAoIXJlZm5hbWUgfHwgIShmbGFncyAmIFJFRl9JU1NZTVJFRikJfHwKKwkJCSFza2lwX3ByZWZpeChyZWZuYW1lLCAicmVmcy9oZWFkcy8iLCAmc2hvcnRuYW1lKSkKKwkJcmV0dXJuIDA7CisKKwlzdHJidWZfYWRkKCZwYXR0ZXJuLCBjb25kLCBjb25kX2xlbik7CisJYWRkX3RyYWlsaW5nX3N0YXJzdGFyX2Zvcl9kaXIoJnBhdHRlcm4pOworCXJldCA9ICF3aWxkbWF0Y2gocGF0dGVybi5idWYsIHNob3J0bmFtZSwgV01fUEFUSE5BTUUpOworCXN0cmJ1Zl9yZWxlYXNlKCZwYXR0ZXJuKTsKKwlyZXR1cm4gcmV0OworfQorCiBzdGF0aWMgaW50IGluY2x1ZGVfY29uZGl0aW9uX2lzX3RydWUoY29uc3Qgc3RydWN0IGNvbmZpZ19vcHRpb25zICpvcHRzLAogCQkJCSAgICAgY29uc3QgY2hhciAqY29uZCwgc2l6ZV90IGNvbmRfbGVuKQogewpAQCAtMjcyLDYgKzI5OCw4IEBACiAJCXJldHVybiBpbmNsdWRlX2J5X2dpdGRpcihvcHRzLCBjb25kLCBjb25kX2xlbiwgMCk7CiAJZWxzZSBpZiAoc2tpcF9wcmVmaXhfbWVtKGNvbmQsIGNvbmRfbGVuLCAiZ2l0ZGlyL2k6IiwgJmNvbmQsICZjb25kX2xlbikpCiAJCXJldHVybiBpbmNsdWRlX2J5X2dpdGRpcihvcHRzLCBjb25kLCBjb25kX2xlbiwgMSk7CisJZWxzZSBpZiAoc2tpcF9wcmVmaXhfbWVtKGNvbmQsIGNvbmRfbGVuLCAib25icmFuY2g6IiwgJmNvbmQsICZjb25kX2xlbikpCisJCXJldHVybiBpbmNsdWRlX2J5X2JyYW5jaChjb25kLCBjb25kX2xlbik7CiAKIAkvKiB1bmtub3duIGNvbmRpdGlvbmFscyBhcmUgYWx3YXlzIGZhbHNlICovCiAJcmV0dXJuIDA7CkBAIC04MzQsMjIgKzg2MiwxNiBAQAogCXJldHVybiBlcnJvcl9yZXR1cm47CiB9CiAKLXN0YXRpYyBpbnQgcGFyc2VfdW5pdF9mYWN0b3IoY29uc3QgY2hhciAqZW5kLCB1aW50bWF4X3QgKnZhbCkKK3N0YXRpYyB1aW50bWF4X3QgZ2V0X3VuaXRfZmFjdG9yKGNvbnN0IGNoYXIgKmVuZCkKIHsKIAlpZiAoISplbmQpCiAJCXJldHVybiAxOwotCWVsc2UgaWYgKCFzdHJjYXNlY21wKGVuZCwgImsiKSkgewotCQkqdmFsICo9IDEwMjQ7Ci0JCXJldHVybiAxOwotCX0KLQllbHNlIGlmICghc3RyY2FzZWNtcChlbmQsICJtIikpIHsKLQkJKnZhbCAqPSAxMDI0ICogMTAyNDsKLQkJcmV0dXJuIDE7Ci0JfQotCWVsc2UgaWYgKCFzdHJjYXNlY21wKGVuZCwgImciKSkgewotCQkqdmFsICo9IDEwMjQgKiAxMDI0ICogMTAyNDsKLQkJcmV0dXJuIDE7Ci0JfQorCWVsc2UgaWYgKCFzdHJjYXNlY21wKGVuZCwgImsiKSkKKwkJcmV0dXJuIDEwMjQ7CisJZWxzZSBpZiAoIXN0cmNhc2VjbXAoZW5kLCAibSIpKQorCQlyZXR1cm4gMTAyNCAqIDEwMjQ7CisJZWxzZSBpZiAoIXN0cmNhc2VjbXAoZW5kLCAiZyIpKQorCQlyZXR1cm4gMTAyNCAqIDEwMjQgKiAxMDI0OwogCXJldHVybiAwOwogfQogCkBAIC04NTksMTkgKzg4MSwyMCBAQAogCQljaGFyICplbmQ7CiAJCWludG1heF90IHZhbDsKIAkJdWludG1heF90IHV2YWw7Ci0JCXVpbnRtYXhfdCBmYWN0b3IgPSAxOworCQl1aW50bWF4X3QgZmFjdG9yOwogCiAJCWVycm5vID0gMDsKIAkJdmFsID0gc3RydG9pbWF4KHZhbHVlLCAmZW5kLCAwKTsKIAkJaWYgKGVycm5vID09IEVSQU5HRSkKIAkJCXJldHVybiAwOwotCQlpZiAoIXBhcnNlX3VuaXRfZmFjdG9yKGVuZCwgJmZhY3RvcikpIHsKKwkJZmFjdG9yID0gZ2V0X3VuaXRfZmFjdG9yKGVuZCk7CisJCWlmICghZmFjdG9yKSB7CiAJCQllcnJubyA9IEVJTlZBTDsKIAkJCXJldHVybiAwOwogCQl9Ci0JCXV2YWwgPSBsYWJzKHZhbCk7Ci0JCXV2YWwgKj0gZmFjdG9yOwotCQlpZiAodXZhbCA+IG1heCB8fCBsYWJzKHZhbCkgPiB1dmFsKSB7CisJCXV2YWwgPSB2YWwgPCAwID8gLXZhbCA6IHZhbDsKKwkJaWYgKHVuc2lnbmVkX211bHRfb3ZlcmZsb3dzKGZhY3RvciwgdXZhbCkgfHwKKwkJICAgIGZhY3RvciAqIHV2YWwgPiBtYXgpIHsKIAkJCWVycm5vID0gRVJBTkdFOwogCQkJcmV0dXJuIDA7CiAJCX0KQEAgLTg4OCwyMSArOTExLDIzIEBACiAJaWYgKHZhbHVlICYmICp2YWx1ZSkgewogCQljaGFyICplbmQ7CiAJCXVpbnRtYXhfdCB2YWw7Ci0JCXVpbnRtYXhfdCBvbGR2YWw7CisJCXVpbnRtYXhfdCBmYWN0b3I7CiAKIAkJZXJybm8gPSAwOwogCQl2YWwgPSBzdHJ0b3VtYXgodmFsdWUsICZlbmQsIDApOwogCQlpZiAoZXJybm8gPT0gRVJBTkdFKQogCQkJcmV0dXJuIDA7Ci0JCW9sZHZhbCA9IHZhbDsKLQkJaWYgKCFwYXJzZV91bml0X2ZhY3RvcihlbmQsICZ2YWwpKSB7CisJCWZhY3RvciA9IGdldF91bml0X2ZhY3RvcihlbmQpOworCQlpZiAoIWZhY3RvcikgewogCQkJZXJybm8gPSBFSU5WQUw7CiAJCQlyZXR1cm4gMDsKIAkJfQotCQlpZiAodmFsID4gbWF4IHx8IG9sZHZhbCA+IHZhbCkgeworCQlpZiAodW5zaWduZWRfbXVsdF9vdmVyZmxvd3MoZmFjdG9yLCB2YWwpIHx8CisJCSAgICBmYWN0b3IgKiB2YWwgPiBtYXgpIHsKIAkJCWVycm5vID0gRVJBTkdFOwogCQkJcmV0dXJuIDA7CiAJCX0KKwkJdmFsICo9IGZhY3RvcjsKIAkJKnJldCA9IHZhbDsKIAkJcmV0dXJuIDE7CiAJfQpAQCAtOTQ5LDM0ICs5NzQsNDQgQEAKIE5PUkVUVVJOCiBzdGF0aWMgdm9pZCBkaWVfYmFkX251bWJlcihjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICp2YWx1ZSkKIHsKLQljb25zdCBjaGFyICogZXJyb3JfdHlwZSA9IChlcnJubyA9PSBFUkFOR0UpPyBfKCJvdXQgb2YgcmFuZ2UiKTpfKCJpbnZhbGlkIHVuaXQiKTsKKwljb25zdCBjaGFyICplcnJvcl90eXBlID0gKGVycm5vID09IEVSQU5HRSkgPworCQlOXygib3V0IG9mIHJhbmdlIikgOiBOXygiaW52YWxpZCB1bml0Iik7CisJY29uc3QgY2hhciAqYmFkX251bWVyaWMgPSBOXygiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcyc6ICVzIik7CiAKIAlpZiAoIXZhbHVlKQogCQl2YWx1ZSA9ICIiOwogCisJaWYgKCFzdHJjbXAobmFtZSwgIkdJVF9URVNUX0dFVFRFWFRfUE9JU09OIikpCisJCS8qCisJCSAqIFdlIGV4cGxpY2l0bHkgKmRvbid0KiB1c2UgXygpIGhlcmUgc2luY2UgaXQgd291bGQKKwkJICogY2F1c2UgYW4gaW5maW5pdGUgbG9vcCB3aXRoIF8oKSBuZWVkaW5nIHRvIGNhbGwKKwkJICogdXNlX2dldHRleHRfcG9pc29uKCkuIFRoaXMgaXMgd2h5IG1hcmtlZCB1cAorCQkgKiB0cmFuc2xhdGlvbnMgd2l0aCBOXygpIGFib3ZlLgorCQkgKi8KKwkJZGllKGJhZF9udW1lcmljLCB2YWx1ZSwgbmFtZSwgZXJyb3JfdHlwZSk7CisKIAlpZiAoIShjZiAmJiBjZi0+bmFtZSkpCi0JCWRpZShfKCJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJzogJXMiKSwKLQkJICAgIHZhbHVlLCBuYW1lLCBlcnJvcl90eXBlKTsKKwkJZGllKF8oYmFkX251bWVyaWMpLCB2YWx1ZSwgbmFtZSwgXyhlcnJvcl90eXBlKSk7CiAKIAlzd2l0Y2ggKGNmLT5vcmlnaW5fdHlwZSkgewogCWNhc2UgQ09ORklHX09SSUdJTl9CTE9COgogCQlkaWUoXygiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gYmxvYiAlczogJXMiKSwKLQkJICAgIHZhbHVlLCBuYW1lLCBjZi0+bmFtZSwgZXJyb3JfdHlwZSk7CisJCSAgICB2YWx1ZSwgbmFtZSwgY2YtPm5hbWUsIF8oZXJyb3JfdHlwZSkpOwogCWNhc2UgQ09ORklHX09SSUdJTl9GSUxFOgogCQlkaWUoXygiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gZmlsZSAlczogJXMiKSwKLQkJICAgIHZhbHVlLCBuYW1lLCBjZi0+bmFtZSwgZXJyb3JfdHlwZSk7CisJCSAgICB2YWx1ZSwgbmFtZSwgY2YtPm5hbWUsIF8oZXJyb3JfdHlwZSkpOwogCWNhc2UgQ09ORklHX09SSUdJTl9TVERJTjoKIAkJZGllKF8oImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN0YW5kYXJkIGlucHV0OiAlcyIpLAotCQkgICAgdmFsdWUsIG5hbWUsIGVycm9yX3R5cGUpOworCQkgICAgdmFsdWUsIG5hbWUsIF8oZXJyb3JfdHlwZSkpOwogCWNhc2UgQ09ORklHX09SSUdJTl9TVUJNT0RVTEVfQkxPQjoKIAkJZGllKF8oImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN1Ym1vZHVsZS1ibG9iICVzOiAlcyIpLAotCQkgICAgdmFsdWUsIG5hbWUsIGNmLT5uYW1lLCBlcnJvcl90eXBlKTsKKwkJICAgIHZhbHVlLCBuYW1lLCBjZi0+bmFtZSwgXyhlcnJvcl90eXBlKSk7CiAJY2FzZSBDT05GSUdfT1JJR0lOX0NNRExJTkU6CiAJCWRpZShfKCJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBjb21tYW5kIGxpbmUgJXM6ICVzIiksCi0JCSAgICB2YWx1ZSwgbmFtZSwgY2YtPm5hbWUsIGVycm9yX3R5cGUpOworCQkgICAgdmFsdWUsIG5hbWUsIGNmLT5uYW1lLCBfKGVycm9yX3R5cGUpKTsKIAlkZWZhdWx0OgogCQlkaWUoXygiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gJXM6ICVzIiksCi0JCSAgICB2YWx1ZSwgbmFtZSwgY2YtPm5hbWUsIGVycm9yX3R5cGUpOworCQkgICAgdmFsdWUsIG5hbWUsIGNmLT5uYW1lLCBfKGVycm9yX3R5cGUpKTsKIAl9CiB9CiAKQEAgLTExNjksNyArMTIwNCw3IEBACiAJCQlkZWZhdWx0X2FiYnJldiA9IC0xOwogCQllbHNlIHsKIAkJCWludCBhYmJyZXYgPSBnaXRfY29uZmlnX2ludCh2YXIsIHZhbHVlKTsKLQkJCWlmIChhYmJyZXYgPCBtaW5pbXVtX2FiYnJldiB8fCBhYmJyZXYgPiA0MCkKKwkJCWlmIChhYmJyZXYgPCBtaW5pbXVtX2FiYnJldiB8fCBhYmJyZXYgPiB0aGVfaGFzaF9hbGdvLT5oZXhzeikKIAkJCQlyZXR1cm4gZXJyb3IoXygiYWJicmV2IGxlbmd0aCBvdXQgb2YgcmFuZ2U6ICVkIiksIGFiYnJldik7CiAJCQlkZWZhdWx0X2FiYnJldiA9IGFiYnJldjsKIAkJfQpAQCAtMTMyOSw2ICsxMzY0LDExIEBACiAJCXJldHVybiAwOwogCX0KIAorCWlmICghc3RyY21wKHZhciwgImNvcmUuc3BhcnNlY2hlY2tvdXRjb25lIikpIHsKKwkJY29yZV9zcGFyc2VfY2hlY2tvdXRfY29uZSA9IGdpdF9jb25maWdfYm9vbCh2YXIsIHZhbHVlKTsKKwkJcmV0dXJuIDA7CisJfQorCiAJaWYgKCFzdHJjbXAodmFyLCAiY29yZS5wcmVjb21wb3NldW5pY29kZSIpKSB7CiAJCXByZWNvbXBvc2VkX3VuaWNvZGUgPSBnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSk7CiAJCXJldHVybiAwOwpAQCAtMTM0NCwxMSArMTM4NCw2IEBACiAJCXJldHVybiAwOwogCX0KIAotCWlmICghc3RyY21wKHZhciwgImNvcmUucGFydGlhbGNsb25lZmlsdGVyIikpIHsKLQkJcmV0dXJuIGdpdF9jb25maWdfc3RyaW5nKCZjb3JlX3BhcnRpYWxfY2xvbmVfZmlsdGVyX2RlZmF1bHQsCi0JCQkJCSB2YXIsIHZhbHVlKTsKLQl9Ci0KIAlpZiAoIXN0cmNtcCh2YXIsICJjb3JlLnVzZXJlcGxhY2VyZWZzIikpIHsKIAkJcmVhZF9yZXBsYWNlX3JlZnMgPSBnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSk7CiAJCXJldHVybiAwOwpAQCAtMTQ0NSw3ICsxNDgwLDkgQEAKIAlpZiAoc3RhcnRzX3dpdGgodmFyLCAiY29yZS4iKSkKIAkJcmV0dXJuIGdpdF9kZWZhdWx0X2NvcmVfY29uZmlnKHZhciwgdmFsdWUsIGNiKTsKIAotCWlmIChzdGFydHNfd2l0aCh2YXIsICJ1c2VyLiIpKQorCWlmIChzdGFydHNfd2l0aCh2YXIsICJ1c2VyLiIpIHx8CisJICAgIHN0YXJ0c193aXRoKHZhciwgImF1dGhvci4iKSB8fAorCSAgICBzdGFydHNfd2l0aCh2YXIsICJjb21taXR0ZXIuIikpCiAJCXJldHVybiBnaXRfaWRlbnRfY29uZmlnKHZhciwgdmFsdWUsIGNiKTsKIAogCWlmIChzdGFydHNfd2l0aCh2YXIsICJpMThuLiIpKQpAQCAtMTY2NSw2ICsxNzAyLDcgQEAKIAljaGFyICp4ZGdfY29uZmlnID0geGRnX2NvbmZpZ19ob21lKCJjb25maWciKTsKIAljaGFyICp1c2VyX2NvbmZpZyA9IGV4cGFuZF91c2VyX3BhdGgoIn4vLmdpdGNvbmZpZyIsIDApOwogCWNoYXIgKnJlcG9fY29uZmlnOworCWVudW0gY29uZmlnX3Njb3BlIHByZXZfcGFyc2luZ19zY29wZSA9IGN1cnJlbnRfcGFyc2luZ19zY29wZTsKIAogCWlmIChvcHRzLT5jb21tb25kaXIpCiAJCXJlcG9fY29uZmlnID0gbWtwYXRoZHVwKCIlcy9jb25maWciLCBvcHRzLT5jb21tb25kaXIpOwpAQCAtMTY3NCw3ICsxNzEyLDkgQEAKIAkJcmVwb19jb25maWcgPSBOVUxMOwogCiAJY3VycmVudF9wYXJzaW5nX3Njb3BlID0gQ09ORklHX1NDT1BFX1NZU1RFTTsKLQlpZiAoZ2l0X2NvbmZpZ19zeXN0ZW0oKSAmJiAhYWNjZXNzX29yX2RpZShnaXRfZXRjX2dpdGNvbmZpZygpLCBSX09LLCAwKSkKKwlpZiAoZ2l0X2NvbmZpZ19zeXN0ZW0oKSAmJiAhYWNjZXNzX29yX2RpZShnaXRfZXRjX2dpdGNvbmZpZygpLCBSX09LLAorCQkJCQkJICBvcHRzLT5zeXN0ZW1fZ2VudGx5ID8KKwkJCQkJCSAgQUNDRVNTX0VBQ0NFU19PSyA6IDApKQogCQlyZXQgKz0gZ2l0X2NvbmZpZ19mcm9tX2ZpbGUoZm4sIGdpdF9ldGNfZ2l0Y29uZmlnKCksCiAJCQkJCSAgICBkYXRhKTsKIApAQCAtMTY4NSwyNiArMTcyNSwyNCBAQAogCWlmICh1c2VyX2NvbmZpZyAmJiAhYWNjZXNzX29yX2RpZSh1c2VyX2NvbmZpZywgUl9PSywgQUNDRVNTX0VBQ0NFU19PSykpCiAJCXJldCArPSBnaXRfY29uZmlnX2Zyb21fZmlsZShmbiwgdXNlcl9jb25maWcsIGRhdGEpOwogCi0JY3VycmVudF9wYXJzaW5nX3Njb3BlID0gQ09ORklHX1NDT1BFX1JFUE87Ci0JaWYgKHJlcG9fY29uZmlnICYmICFhY2Nlc3Nfb3JfZGllKHJlcG9fY29uZmlnLCBSX09LLCAwKSkKKwljdXJyZW50X3BhcnNpbmdfc2NvcGUgPSBDT05GSUdfU0NPUEVfTE9DQUw7CisJaWYgKCFvcHRzLT5pZ25vcmVfcmVwbyAmJiByZXBvX2NvbmZpZyAmJgorCSAgICAhYWNjZXNzX29yX2RpZShyZXBvX2NvbmZpZywgUl9PSywgMCkpCiAJCXJldCArPSBnaXRfY29uZmlnX2Zyb21fZmlsZShmbiwgcmVwb19jb25maWcsIGRhdGEpOwogCi0JLyoKLQkgKiBOb3RlOiB0aGlzIHNob3VsZCBoYXZlIGEgbmV3IHNjb3BlLCBDT05GSUdfU0NPUEVfV09SS1RSRUUuCi0JICogQnV0IGxldCdzIG5vdCBjb21wbGljYXRlIHRoaW5ncyBiZWZvcmUgaXQncyBhY3R1YWxseSBuZWVkZWQuCi0JICovCi0JaWYgKHJlcG9zaXRvcnlfZm9ybWF0X3dvcmt0cmVlX2NvbmZpZykgeworCWN1cnJlbnRfcGFyc2luZ19zY29wZSA9IENPTkZJR19TQ09QRV9XT1JLVFJFRTsKKwlpZiAoIW9wdHMtPmlnbm9yZV93b3JrdHJlZSAmJiByZXBvc2l0b3J5X2Zvcm1hdF93b3JrdHJlZV9jb25maWcpIHsKIAkJY2hhciAqcGF0aCA9IGdpdF9wYXRoZHVwKCJjb25maWcud29ya3RyZWUiKTsKIAkJaWYgKCFhY2Nlc3Nfb3JfZGllKHBhdGgsIFJfT0ssIDApKQogCQkJcmV0ICs9IGdpdF9jb25maWdfZnJvbV9maWxlKGZuLCBwYXRoLCBkYXRhKTsKIAkJZnJlZShwYXRoKTsKIAl9CiAKLQljdXJyZW50X3BhcnNpbmdfc2NvcGUgPSBDT05GSUdfU0NPUEVfQ01ETElORTsKLQlpZiAoZ2l0X2NvbmZpZ19mcm9tX3BhcmFtZXRlcnMoZm4sIGRhdGEpIDwgMCkKKwljdXJyZW50X3BhcnNpbmdfc2NvcGUgPSBDT05GSUdfU0NPUEVfQ09NTUFORDsKKwlpZiAoIW9wdHMtPmlnbm9yZV9jbWRsaW5lICYmIGdpdF9jb25maWdfZnJvbV9wYXJhbWV0ZXJzKGZuLCBkYXRhKSA8IDApCiAJCWRpZShfKCJ1bmFibGUgdG8gcGFyc2UgY29tbWFuZC1saW5lIGNvbmZpZyIpKTsKIAotCWN1cnJlbnRfcGFyc2luZ19zY29wZSA9IENPTkZJR19TQ09QRV9VTktOT1dOOworCWN1cnJlbnRfcGFyc2luZ19zY29wZSA9IHByZXZfcGFyc2luZ19zY29wZTsKIAlmcmVlKHhkZ19jb25maWcpOwogCWZyZWUodXNlcl9jb25maWcpOwogCWZyZWUocmVwb19jb25maWcpOwpAQCAtMTcyNSw2ICsxNzYzLDkgQEAKIAkJZGF0YSA9ICZpbmM7CiAJfQogCisJaWYgKGNvbmZpZ19zb3VyY2UpCisJCWN1cnJlbnRfcGFyc2luZ19zY29wZSA9IGNvbmZpZ19zb3VyY2UtPnNjb3BlOworCiAJLyoKIAkgKiBJZiB3ZSBoYXZlIGEgc3BlY2lmaWMgZmlsZW5hbWUsIHVzZSBpdC4gT3RoZXJ3aXNlLCBmb2xsb3cgdGhlCiAJICogcmVndWxhciBsb29rdXAgc2VxdWVuY2UuCkBAIC0xNzkyLDYgKzE4MzMsMjMgQEAKIAlzdHJidWZfcmVsZWFzZSgmZ2l0ZGlyKTsKIH0KIAorLyoKKyAqIFJlYWQgY29uZmlnIGJ1dCBvbmx5IGVudW1lcmF0ZSBzeXN0ZW0gYW5kIGdsb2JhbCBzZXR0aW5ncy4KKyAqIE9taXQgYW55IHJlcG8tbG9jYWwsIHdvcmt0cmVlLWxvY2FsLCBvciBjb21tYW5kLWxpbmUgc2V0dGluZ3MuCisgKi8KK3ZvaWQgcmVhZF92ZXJ5X2Vhcmx5X2NvbmZpZyhjb25maWdfZm5fdCBjYiwgdm9pZCAqZGF0YSkKK3sKKwlzdHJ1Y3QgY29uZmlnX29wdGlvbnMgb3B0cyA9IHsgMCB9OworCisJb3B0cy5yZXNwZWN0X2luY2x1ZGVzID0gMTsKKwlvcHRzLmlnbm9yZV9yZXBvID0gMTsKKwlvcHRzLmlnbm9yZV93b3JrdHJlZSA9IDE7CisJb3B0cy5pZ25vcmVfY21kbGluZSA9IDE7CisJb3B0cy5zeXN0ZW1fZ2VudGx5ID0gMTsKKworCWNvbmZpZ193aXRoX29wdGlvbnMoY2IsIGRhdGEsIE5VTEwsICZvcHRzKTsKK30KKwogc3RhdGljIHN0cnVjdCBjb25maWdfc2V0X2VsZW1lbnQgKmNvbmZpZ3NldF9maW5kX2VsZW1lbnQoc3RydWN0IGNvbmZpZ19zZXQgKmNzLCBjb25zdCBjaGFyICprZXkpCiB7CiAJc3RydWN0IGNvbmZpZ19zZXRfZWxlbWVudCBrOwpAQCAtMTgwNCw5ICsxODYyLDkgQEAKIAlpZiAoZ2l0X2NvbmZpZ19wYXJzZV9rZXkoa2V5LCAmbm9ybWFsaXplZF9rZXksIE5VTEwpKQogCQlyZXR1cm4gTlVMTDsKIAotCWhhc2htYXBfZW50cnlfaW5pdCgmaywgc3RyaGFzaChub3JtYWxpemVkX2tleSkpOworCWhhc2htYXBfZW50cnlfaW5pdCgmay5lbnQsIHN0cmhhc2gobm9ybWFsaXplZF9rZXkpKTsKIAlrLmtleSA9IG5vcm1hbGl6ZWRfa2V5OwotCWZvdW5kX2VudHJ5ID0gaGFzaG1hcF9nZXQoJmNzLT5jb25maWdfaGFzaCwgJmssIE5VTEwpOworCWZvdW5kX2VudHJ5ID0gaGFzaG1hcF9nZXRfZW50cnkoJmNzLT5jb25maWdfaGFzaCwgJmssIGVudCwgTlVMTCk7CiAJZnJlZShub3JtYWxpemVkX2tleSk7CiAJcmV0dXJuIGZvdW5kX2VudHJ5OwogfQpAQCAtMTgyNSwxMCArMTg4MywxMCBAQAogCSAqLwogCWlmICghZSkgewogCQllID0geG1hbGxvYyhzaXplb2YoKmUpKTsKLQkJaGFzaG1hcF9lbnRyeV9pbml0KGUsIHN0cmhhc2goa2V5KSk7CisJCWhhc2htYXBfZW50cnlfaW5pdCgmZS0+ZW50LCBzdHJoYXNoKGtleSkpOwogCQllLT5rZXkgPSB4c3RyZHVwKGtleSk7CiAJCXN0cmluZ19saXN0X2luaXQoJmUtPnZhbHVlX2xpc3QsIDEpOwotCQloYXNobWFwX2FkZCgmY3MtPmNvbmZpZ19oYXNoLCBlKTsKKwkJaGFzaG1hcF9hZGQoJmNzLT5jb25maWdfaGFzaCwgJmUtPmVudCk7CiAJfQogCXNpID0gc3RyaW5nX2xpc3RfYXBwZW5kX25vZHVwKCZlLT52YWx1ZV9saXN0LCB4c3RyZHVwX29yX251bGwodmFsdWUpKTsKIApAQCAtMTg1NiwxMiArMTkxNCwxNCBAQAogfQogCiBzdGF0aWMgaW50IGNvbmZpZ19zZXRfZWxlbWVudF9jbXAoY29uc3Qgdm9pZCAqdW51c2VkX2NtcF9kYXRhLAotCQkJCSAgY29uc3Qgdm9pZCAqZW50cnksCi0JCQkJICBjb25zdCB2b2lkICplbnRyeV9vcl9rZXksCisJCQkJICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJCQkgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplbnRyeV9vcl9rZXksCiAJCQkJICBjb25zdCB2b2lkICp1bnVzZWRfa2V5ZGF0YSkKIHsKLQljb25zdCBzdHJ1Y3QgY29uZmlnX3NldF9lbGVtZW50ICplMSA9IGVudHJ5OwotCWNvbnN0IHN0cnVjdCBjb25maWdfc2V0X2VsZW1lbnQgKmUyID0gZW50cnlfb3Jfa2V5OworCWNvbnN0IHN0cnVjdCBjb25maWdfc2V0X2VsZW1lbnQgKmUxLCAqZTI7CisKKwllMSA9IGNvbnRhaW5lcl9vZihlcHRyLCBjb25zdCBzdHJ1Y3QgY29uZmlnX3NldF9lbGVtZW50LCBlbnQpOworCWUyID0gY29udGFpbmVyX29mKGVudHJ5X29yX2tleSwgY29uc3Qgc3RydWN0IGNvbmZpZ19zZXRfZWxlbWVudCwgZW50KTsKIAogCXJldHVybiBzdHJjbXAoZTEtPmtleSwgZTItPmtleSk7CiB9CkBAIC0xODgyLDEyICsxOTQyLDEyIEBACiAJaWYgKCFjcy0+aGFzaF9pbml0aWFsaXplZCkKIAkJcmV0dXJuOwogCi0JaGFzaG1hcF9pdGVyX2luaXQoJmNzLT5jb25maWdfaGFzaCwgJml0ZXIpOwotCXdoaWxlICgoZW50cnkgPSBoYXNobWFwX2l0ZXJfbmV4dCgmaXRlcikpKSB7CisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeSgmY3MtPmNvbmZpZ19oYXNoLCAmaXRlciwgZW50cnksCisJCQkJZW50IC8qIG1lbWJlciBuYW1lICovKSB7CiAJCWZyZWUoZW50cnktPmtleSk7CiAJCXN0cmluZ19saXN0X2NsZWFyKCZlbnRyeS0+dmFsdWVfbGlzdCwgMSk7CiAJfQotCWhhc2htYXBfZnJlZSgmY3MtPmNvbmZpZ19oYXNoLCAxKTsKKwloYXNobWFwX2ZyZWVfZW50cmllcygmY3MtPmNvbmZpZ19oYXNoLCBzdHJ1Y3QgY29uZmlnX3NldF9lbGVtZW50LCBlbnQpOwogCWNzLT5oYXNoX2luaXRpYWxpemVkID0gMDsKIAlmcmVlKGNzLT5saXN0Lml0ZW1zKTsKIAljcy0+bGlzdC5uciA9IDA7CkBAIC0yMDA5LDcgKzIwNjksNyBAQAogLyogRnVuY3Rpb25zIHVzZSB0byByZWFkIGNvbmZpZ3VyYXRpb24gZnJvbSBhIHJlcG9zaXRvcnkgKi8KIHN0YXRpYyB2b2lkIHJlcG9fcmVhZF9jb25maWcoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8pCiB7Ci0Jc3RydWN0IGNvbmZpZ19vcHRpb25zIG9wdHM7CisJc3RydWN0IGNvbmZpZ19vcHRpb25zIG9wdHMgPSB7IDAgfTsKIAogCW9wdHMucmVzcGVjdF9pbmNsdWRlcyA9IDE7CiAJb3B0cy5jb21tb25kaXIgPSByZXBvLT5jb21tb25kaXI7CkBAIC0yMjMxLDMwICsyMjkxLDYgQEAKIAlyZXR1cm4gLTE7IC8qIHRoaW5nIGV4aXN0cyBidXQgY2Fubm90IGJlIHBhcnNlZCAqLwogfQogCi1pbnQgZ2l0X2NvbmZpZ19nZXRfdW50cmFja2VkX2NhY2hlKHZvaWQpCi17Ci0JaW50IHZhbCA9IC0xOwotCWNvbnN0IGNoYXIgKnY7Ci0KLQkvKiBIYWNrIGZvciB0ZXN0IHByb2dyYW1zIGxpa2UgdGVzdC1kdW1wLXVudHJhY2tlZC1jYWNoZSAqLwotCWlmIChpZ25vcmVfdW50cmFja2VkX2NhY2hlX2NvbmZpZykKLQkJcmV0dXJuIC0xOwotCi0JaWYgKCFnaXRfY29uZmlnX2dldF9tYXliZV9ib29sKCJjb3JlLnVudHJhY2tlZGNhY2hlIiwgJnZhbCkpCi0JCXJldHVybiB2YWw7Ci0KLQlpZiAoIWdpdF9jb25maWdfZ2V0X3ZhbHVlKCJjb3JlLnVudHJhY2tlZGNhY2hlIiwgJnYpKSB7Ci0JCWlmICghc3RyY2FzZWNtcCh2LCAia2VlcCIpKQotCQkJcmV0dXJuIC0xOwotCi0JCWVycm9yKF8oInVua25vd24gY29yZS51bnRyYWNrZWRDYWNoZSB2YWx1ZSAnJXMnOyAiCi0JCQkidXNpbmcgJ2tlZXAnIGRlZmF1bHQgdmFsdWUiKSwgdik7Ci0JCXJldHVybiAtMTsKLQl9Ci0KLQlyZXR1cm4gLTE7IC8qIGRlZmF1bHQgdmFsdWUgKi8KLX0KLQogaW50IGdpdF9jb25maWdfZ2V0X3NwbGl0X2luZGV4KHZvaWQpCiB7CiAJaW50IHZhbDsKQEAgLTI1NjUsNyArMjYwMSw2IEBACiAgKiBlbnRyeSAod2hpY2ggYWxsIGFyZSB0byBiZSByZW1vdmVkKS4KICAqLwogc3RhdGljIHZvaWQgbWF5YmVfcmVtb3ZlX3NlY3Rpb24oc3RydWN0IGNvbmZpZ19zdG9yZV9kYXRhICpzdG9yZSwKLQkJCQkgY29uc3QgY2hhciAqY29udGVudHMsCiAJCQkJIHNpemVfdCAqYmVnaW5fb2Zmc2V0LCBzaXplX3QgKmVuZF9vZmZzZXQsCiAJCQkJIGludCAqc2Vlbl9wdHIpCiB7CkBAIC0yNjU2LDYgKzI2OTEsOCBAQAogdm9pZCBnaXRfY29uZmlnX3NldChjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKnZhbHVlKQogewogCWdpdF9jb25maWdfc2V0X211bHRpdmFyKGtleSwgdmFsdWUsIE5VTEwsIDApOworCisJdHJhY2UyX2NtZF9zZXRfY29uZmlnKGtleSwgdmFsdWUpOwogfQogCiAvKgpAQCAtMjg1MCw3ICsyODg3LDcgQEAKIAkJCQlyZXBsYWNlX2VuZCA9IHN0b3JlLnBhcnNlZFtqXS5lbmQ7CiAJCQkJY29weV9lbmQgPSBzdG9yZS5wYXJzZWRbal0uYmVnaW47CiAJCQkJaWYgKCF2YWx1ZSkKLQkJCQkJbWF5YmVfcmVtb3ZlX3NlY3Rpb24oJnN0b3JlLCBjb250ZW50cywKKwkJCQkJbWF5YmVfcmVtb3ZlX3NlY3Rpb24oJnN0b3JlLAogCQkJCQkJCSAgICAgJmNvcHlfZW5kLAogCQkJCQkJCSAgICAgJnJlcGxhY2VfZW5kLCAmaSk7CiAJCQkJLyoKQEAgLTMyNjEsNiArMzI5OCwyNiBAQAogCX0KIH0KIAorY29uc3QgY2hhciAqY29uZmlnX3Njb3BlX25hbWUoZW51bSBjb25maWdfc2NvcGUgc2NvcGUpCit7CisJc3dpdGNoIChzY29wZSkgeworCWNhc2UgQ09ORklHX1NDT1BFX1NZU1RFTToKKwkJcmV0dXJuICJzeXN0ZW0iOworCWNhc2UgQ09ORklHX1NDT1BFX0dMT0JBTDoKKwkJcmV0dXJuICJnbG9iYWwiOworCWNhc2UgQ09ORklHX1NDT1BFX0xPQ0FMOgorCQlyZXR1cm4gImxvY2FsIjsKKwljYXNlIENPTkZJR19TQ09QRV9XT1JLVFJFRToKKwkJcmV0dXJuICJ3b3JrdHJlZSI7CisJY2FzZSBDT05GSUdfU0NPUEVfQ09NTUFORDoKKwkJcmV0dXJuICJjb21tYW5kIjsKKwljYXNlIENPTkZJR19TQ09QRV9TVUJNT0RVTEU6CisJCXJldHVybiAic3VibW9kdWxlIjsKKwlkZWZhdWx0OgorCQlyZXR1cm4gInVua25vd24iOworCX0KK30KKwogY29uc3QgY2hhciAqY3VycmVudF9jb25maWdfbmFtZSh2b2lkKQogewogCWNvbnN0IGNoYXIgKm5hbWU7CkBAIC0zMjgxLDYgKzMzMzgsMTQgQEAKIAkJcmV0dXJuIGN1cnJlbnRfcGFyc2luZ19zY29wZTsKIH0KIAoraW50IGN1cnJlbnRfY29uZmlnX2xpbmUodm9pZCkKK3sKKwlpZiAoY3VycmVudF9jb25maWdfa3ZpKQorCQlyZXR1cm4gY3VycmVudF9jb25maWdfa3ZpLT5saW5lbnI7CisJZWxzZQorCQlyZXR1cm4gY2YtPmxpbmVucjsKK30KKwogaW50IGxvb2t1cF9jb25maWcoY29uc3QgY2hhciAqKm1hcHBpbmcsIGludCBucl9tYXBwaW5nLCBjb25zdCBjaGFyICp2YXIpCiB7CiAJaW50IGk7CmRpZmYgLS1naXQgYS9jb25maWcuaCBiL2NvbmZpZy5oCmluZGV4IGVlNWQzZmEuLjliMzc3M2YgMTAwNjQ0Ci0tLSBhL2NvbmZpZy5oCisrKyBiL2NvbmZpZy5oCkBAIC00LDYgKzQsMjIgQEAKICNpbmNsdWRlICJoYXNobWFwLmgiCiAjaW5jbHVkZSAic3RyaW5nLWxpc3QuaCIKIAorCisvKioKKyAqIFRoZSBjb25maWcgQVBJIGdpdmVzIGNhbGxlcnMgYSB3YXkgdG8gYWNjZXNzIEdpdCBjb25maWd1cmF0aW9uIGZpbGVzCisgKiAoYW5kIGZpbGVzIHdoaWNoIGhhdmUgdGhlIHNhbWUgc3ludGF4KS4KKyAqCisgKiBHZW5lcmFsIFVzYWdlCisgKiAtLS0tLS0tLS0tLS0tCisgKgorICogQ29uZmlnIGZpbGVzIGFyZSBwYXJzZWQgbGluZWFybHksIGFuZCBlYWNoIHZhcmlhYmxlIGZvdW5kIGlzIHBhc3NlZCB0byBhCisgKiBjYWxsZXItcHJvdmlkZWQgY2FsbGJhY2sgZnVuY3Rpb24uIFRoZSBjYWxsYmFjayBmdW5jdGlvbiBpcyByZXNwb25zaWJsZQorICogZm9yIGFueSBhY3Rpb25zIHRvIGJlIHRha2VuIG9uIHRoZSBjb25maWcgb3B0aW9uLCBhbmQgaXMgZnJlZSB0byBpZ25vcmUKKyAqIHNvbWUgb3B0aW9ucy4gSXQgaXMgbm90IHVuY29tbW9uIGZvciB0aGUgY29uZmlndXJhdGlvbiB0byBiZSBwYXJzZWQKKyAqIHNldmVyYWwgdGltZXMgZHVyaW5nIHRoZSBydW4gb2YgYSBHaXQgcHJvZ3JhbSwgd2l0aCBkaWZmZXJlbnQgY2FsbGJhY2tzCisgKiBwaWNraW5nIG91dCBkaWZmZXJlbnQgdmFyaWFibGVzIHVzZWZ1bCB0byB0aGVtc2VsdmVzLgorICovCisKIHN0cnVjdCBvYmplY3RfaWQ7CiAKIC8qIGdpdF9jb25maWdfcGFyc2Vfa2V5KCkgcmV0dXJucyB0aGVzZSBuZWdhdGVkOiAqLwpAQCAtMTksMTAgKzM1LDIyIEBACiAKICNkZWZpbmUgQ09ORklHX1JFR0VYX05PTkUgKCh2b2lkICopMSkKIAorZW51bSBjb25maWdfc2NvcGUgeworCUNPTkZJR19TQ09QRV9VTktOT1dOID0gMCwKKwlDT05GSUdfU0NPUEVfU1lTVEVNLAorCUNPTkZJR19TQ09QRV9HTE9CQUwsCisJQ09ORklHX1NDT1BFX0xPQ0FMLAorCUNPTkZJR19TQ09QRV9XT1JLVFJFRSwKKwlDT05GSUdfU0NPUEVfQ09NTUFORCwKKwlDT05GSUdfU0NPUEVfU1VCTU9EVUxFLAorfTsKK2NvbnN0IGNoYXIgKmNvbmZpZ19zY29wZV9uYW1lKGVudW0gY29uZmlnX3Njb3BlIHNjb3BlKTsKKwogc3RydWN0IGdpdF9jb25maWdfc291cmNlIHsKIAl1bnNpZ25lZCBpbnQgdXNlX3N0ZGluOjE7CiAJY29uc3QgY2hhciAqZmlsZTsKIAljb25zdCBjaGFyICpibG9iOworCWVudW0gY29uZmlnX3Njb3BlIHNjb3BlOwogfTsKIAogZW51bSBjb25maWdfb3JpZ2luX3R5cGUgewpAQCAtNTUsNiArODMsMTAgQEAKIAogc3RydWN0IGNvbmZpZ19vcHRpb25zIHsKIAl1bnNpZ25lZCBpbnQgcmVzcGVjdF9pbmNsdWRlcyA6IDE7CisJdW5zaWduZWQgaW50IGlnbm9yZV9yZXBvIDogMTsKKwl1bnNpZ25lZCBpbnQgaWdub3JlX3dvcmt0cmVlIDogMTsKKwl1bnNpZ25lZCBpbnQgaWdub3JlX2NtZGxpbmUgOiAxOworCXVuc2lnbmVkIGludCBzeXN0ZW1fZ2VudGx5IDogMTsKIAljb25zdCBjaGFyICpjb21tb25kaXI7CiAJY29uc3QgY2hhciAqZ2l0X2RpcjsKIAljb25maWdfcGFyc2VyX2V2ZW50X2ZuX3QgZXZlbnRfZm47CkBAIC02Nyw3NiArOTksMjQyIEBACiAJfSBlcnJvcl9hY3Rpb247CiB9OwogCisvKioKKyAqIEEgY29uZmlnIGNhbGxiYWNrIGZ1bmN0aW9uIHRha2VzIHRocmVlIHBhcmFtZXRlcnM6CisgKgorICogLSB0aGUgbmFtZSBvZiB0aGUgcGFyc2VkIHZhcmlhYmxlLiBUaGlzIGlzIGluIGNhbm9uaWNhbCAiZmxhdCIgZm9ybTogdGhlCisgKiAgIHNlY3Rpb24sIHN1YnNlY3Rpb24sIGFuZCB2YXJpYWJsZSBzZWdtZW50cyB3aWxsIGJlIHNlcGFyYXRlZCBieSBkb3RzLAorICogICBhbmQgdGhlIHNlY3Rpb24gYW5kIHZhcmlhYmxlIHNlZ21lbnRzIHdpbGwgYmUgYWxsIGxvd2VyY2FzZS4gRS5nLiwKKyAqICAgYGNvcmUuaWdub3JlY2FzZWAsIGBkaWZmLlNvbWVUeXBlLnRleHRjb252YC4KKyAqCisgKiAtIHRoZSB2YWx1ZSBvZiB0aGUgZm91bmQgdmFyaWFibGUsIGFzIGEgc3RyaW5nLiBJZiB0aGUgdmFyaWFibGUgaGFkIG5vCisgKiAgIHZhbHVlIHNwZWNpZmllZCwgdGhlIHZhbHVlIHdpbGwgYmUgTlVMTCAodHlwaWNhbGx5IHRoaXMgbWVhbnMgaXQKKyAqICAgc2hvdWxkIGJlIGludGVycHJldGVkIGFzIGJvb2xlYW4gdHJ1ZSkuCisgKgorICogLSBhIHZvaWQgcG9pbnRlciBwYXNzZWQgaW4gYnkgdGhlIGNhbGxlciBvZiB0aGUgY29uZmlnIEFQSTsgdGhpcyBjYW4KKyAqICAgY29udGFpbiBjYWxsYmFjay1zcGVjaWZpYyBkYXRhCisgKgorICogQSBjb25maWcgY2FsbGJhY2sgc2hvdWxkIHJldHVybiAwIGZvciBzdWNjZXNzLCBvciAtMSBpZiB0aGUgdmFyaWFibGUKKyAqIGNvdWxkIG5vdCBiZSBwYXJzZWQgcHJvcGVybHkuCisgKi8KIHR5cGVkZWYgaW50ICgqY29uZmlnX2ZuX3QpKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCB2b2lkICopOwotZXh0ZXJuIGludCBnaXRfZGVmYXVsdF9jb25maWcoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIHZvaWQgKik7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfZnJvbV9maWxlKGNvbmZpZ19mbl90IGZuLCBjb25zdCBjaGFyICosIHZvaWQgKik7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfZnJvbV9maWxlX3dpdGhfb3B0aW9ucyhjb25maWdfZm5fdCBmbiwgY29uc3QgY2hhciAqLAotCQkJCQkgICAgIHZvaWQgKiwKLQkJCQkJICAgICBjb25zdCBzdHJ1Y3QgY29uZmlnX29wdGlvbnMgKik7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfZnJvbV9tZW0oY29uZmlnX2ZuX3QgZm4sCi0JCQkgICAgICAgY29uc3QgZW51bSBjb25maWdfb3JpZ2luX3R5cGUsCi0JCQkgICAgICAgY29uc3QgY2hhciAqbmFtZSwKLQkJCSAgICAgICBjb25zdCBjaGFyICpidWYsIHNpemVfdCBsZW4sCi0JCQkgICAgICAgdm9pZCAqZGF0YSwgY29uc3Qgc3RydWN0IGNvbmZpZ19vcHRpb25zICpvcHRzKTsKLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ19mcm9tX2Jsb2Jfb2lkKGNvbmZpZ19mbl90IGZuLCBjb25zdCBjaGFyICpuYW1lLAotCQkJCSAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHZvaWQgKmRhdGEpOwotZXh0ZXJuIHZvaWQgZ2l0X2NvbmZpZ19wdXNoX3BhcmFtZXRlcihjb25zdCBjaGFyICp0ZXh0KTsKLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ19mcm9tX3BhcmFtZXRlcnMoY29uZmlnX2ZuX3QgZm4sIHZvaWQgKmRhdGEpOwotZXh0ZXJuIHZvaWQgcmVhZF9lYXJseV9jb25maWcoY29uZmlnX2ZuX3QgY2IsIHZvaWQgKmRhdGEpOwotZXh0ZXJuIHZvaWQgZ2l0X2NvbmZpZyhjb25maWdfZm5fdCBmbiwgdm9pZCAqKTsKLWV4dGVybiBpbnQgY29uZmlnX3dpdGhfb3B0aW9ucyhjb25maWdfZm5fdCBmbiwgdm9pZCAqLAotCQkJICAgICAgIHN0cnVjdCBnaXRfY29uZmlnX3NvdXJjZSAqY29uZmlnX3NvdXJjZSwKLQkJCSAgICAgICBjb25zdCBzdHJ1Y3QgY29uZmlnX29wdGlvbnMgKm9wdHMpOwotZXh0ZXJuIGludCBnaXRfcGFyc2Vfc3NpemVfdChjb25zdCBjaGFyICosIHNzaXplX3QgKik7Ci1leHRlcm4gaW50IGdpdF9wYXJzZV91bG9uZyhjb25zdCBjaGFyICosIHVuc2lnbmVkIGxvbmcgKik7Ci1leHRlcm4gaW50IGdpdF9wYXJzZV9tYXliZV9ib29sKGNvbnN0IGNoYXIgKik7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfaW50KGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKLWV4dGVybiBpbnQ2NF90IGdpdF9jb25maWdfaW50NjQoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwotZXh0ZXJuIHVuc2lnbmVkIGxvbmcgZ2l0X2NvbmZpZ191bG9uZyhjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7Ci1leHRlcm4gc3NpemVfdCBnaXRfY29uZmlnX3NzaXplX3QoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwotZXh0ZXJuIGludCBnaXRfY29uZmlnX2Jvb2xfb3JfaW50KGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBpbnQgKik7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfYm9vbChjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfc3RyaW5nKGNvbnN0IGNoYXIgKiosIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ19wYXRobmFtZShjb25zdCBjaGFyICoqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfZXhwaXJ5X2RhdGUodGltZXN0YW1wX3QgKiwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwotZXh0ZXJuIGludCBnaXRfY29uZmlnX2NvbG9yKGNoYXIgKiwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwotZXh0ZXJuIGludCBnaXRfY29uZmlnX3NldF9pbl9maWxlX2dlbnRseShjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKLWV4dGVybiB2b2lkIGdpdF9jb25maWdfc2V0X2luX2ZpbGUoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfc2V0X2dlbnRseShjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7Ci1leHRlcm4gdm9pZCBnaXRfY29uZmlnX3NldChjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfcGFyc2Vfa2V5KGNvbnN0IGNoYXIgKiwgY2hhciAqKiwgaW50ICopOwotZXh0ZXJuIGludCBnaXRfY29uZmlnX2tleV9pc192YWxpZChjb25zdCBjaGFyICprZXkpOwotZXh0ZXJuIGludCBnaXRfY29uZmlnX3NldF9tdWx0aXZhcl9nZW50bHkoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgaW50KTsKLWV4dGVybiB2b2lkIGdpdF9jb25maWdfc2V0X211bHRpdmFyKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGludCk7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfc2V0X211bHRpdmFyX2luX2ZpbGVfZ2VudGx5KGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgaW50KTsKLWV4dGVybiB2b2lkIGdpdF9jb25maWdfc2V0X211bHRpdmFyX2luX2ZpbGUoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBpbnQpOwotZXh0ZXJuIGludCBnaXRfY29uZmlnX3JlbmFtZV9zZWN0aW9uKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ19yZW5hbWVfc2VjdGlvbl9pbl9maWxlKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwotZXh0ZXJuIGludCBnaXRfY29uZmlnX2NvcHlfc2VjdGlvbihjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfY29weV9zZWN0aW9uX2luX2ZpbGUoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7Ci1leHRlcm4gY29uc3QgY2hhciAqZ2l0X2V0Y19naXRjb25maWcodm9pZCk7Ci1leHRlcm4gaW50IGdpdF9lbnZfYm9vbChjb25zdCBjaGFyICosIGludCk7Ci1leHRlcm4gdW5zaWduZWQgbG9uZyBnaXRfZW52X3Vsb25nKGNvbnN0IGNoYXIgKiwgdW5zaWduZWQgbG9uZyk7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfc3lzdGVtKHZvaWQpOwotZXh0ZXJuIGludCBjb25maWdfZXJyb3Jfbm9uYm9vbChjb25zdCBjaGFyICopOworCitpbnQgZ2l0X2RlZmF1bHRfY29uZmlnKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCB2b2lkICopOworCisvKioKKyAqIFJlYWQgYSBzcGVjaWZpYyBmaWxlIGluIGdpdC1jb25maWcgZm9ybWF0LgorICogVGhpcyBmdW5jdGlvbiB0YWtlcyB0aGUgc2FtZSBjYWxsYmFjayBhbmQgZGF0YSBwYXJhbWV0ZXJzIGFzIGBnaXRfY29uZmlnYC4KKyAqLworaW50IGdpdF9jb25maWdfZnJvbV9maWxlKGNvbmZpZ19mbl90IGZuLCBjb25zdCBjaGFyICosIHZvaWQgKik7CisKK2ludCBnaXRfY29uZmlnX2Zyb21fZmlsZV93aXRoX29wdGlvbnMoY29uZmlnX2ZuX3QgZm4sIGNvbnN0IGNoYXIgKiwKKwkJCQkgICAgICB2b2lkICosCisJCQkJICAgICAgY29uc3Qgc3RydWN0IGNvbmZpZ19vcHRpb25zICopOworaW50IGdpdF9jb25maWdfZnJvbV9tZW0oY29uZmlnX2ZuX3QgZm4sCisJCQljb25zdCBlbnVtIGNvbmZpZ19vcmlnaW5fdHlwZSwKKwkJCWNvbnN0IGNoYXIgKm5hbWUsCisJCQljb25zdCBjaGFyICpidWYsIHNpemVfdCBsZW4sCisJCQl2b2lkICpkYXRhLCBjb25zdCBzdHJ1Y3QgY29uZmlnX29wdGlvbnMgKm9wdHMpOworaW50IGdpdF9jb25maWdfZnJvbV9ibG9iX29pZChjb25maWdfZm5fdCBmbiwgY29uc3QgY2hhciAqbmFtZSwKKwkJCSAgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCB2b2lkICpkYXRhKTsKK3ZvaWQgZ2l0X2NvbmZpZ19wdXNoX3BhcmFtZXRlcihjb25zdCBjaGFyICp0ZXh0KTsKK2ludCBnaXRfY29uZmlnX2Zyb21fcGFyYW1ldGVycyhjb25maWdfZm5fdCBmbiwgdm9pZCAqZGF0YSk7Cit2b2lkIHJlYWRfZWFybHlfY29uZmlnKGNvbmZpZ19mbl90IGNiLCB2b2lkICpkYXRhKTsKK3ZvaWQgcmVhZF92ZXJ5X2Vhcmx5X2NvbmZpZyhjb25maWdfZm5fdCBjYiwgdm9pZCAqZGF0YSk7CisKKy8qKgorICogTW9zdCBwcm9ncmFtcyB3aWxsIHNpbXBseSB3YW50IHRvIGxvb2sgdXAgdmFyaWFibGVzIGluIGFsbCBjb25maWcgZmlsZXMKKyAqIHRoYXQgR2l0IGtub3dzIGFib3V0LCB1c2luZyB0aGUgbm9ybWFsIHByZWNlZGVuY2UgcnVsZXMuIFRvIGRvIHRoaXMsCisgKiBjYWxsIGBnaXRfY29uZmlnYCB3aXRoIGEgY2FsbGJhY2sgZnVuY3Rpb24gYW5kIHZvaWQgZGF0YSBwb2ludGVyLgorICoKKyAqIGBnaXRfY29uZmlnYCB3aWxsIHJlYWQgYWxsIGNvbmZpZyBzb3VyY2VzIGluIG9yZGVyIG9mIGluY3JlYXNpbmcKKyAqIHByaW9yaXR5LiBUaHVzIGEgY2FsbGJhY2sgc2hvdWxkIHR5cGljYWxseSBvdmVyd3JpdGUgcHJldmlvdXNseS1zZWVuCisgKiBlbnRyaWVzIHdpdGggbmV3IG9uZXMgKGUuZy4sIGlmIGJvdGggdGhlIHVzZXItd2lkZSBgfi8uZ2l0Y29uZmlnYCBhbmQKKyAqIHJlcG8tc3BlY2lmaWMgYC5naXQvY29uZmlnYCBjb250YWluIGBjb2xvci51aWAsIHRoZSBjb25maWcgbWFjaGluZXJ5CisgKiB3aWxsIGZpcnN0IGZlZWQgdGhlIHVzZXItd2lkZSBvbmUgdG8gdGhlIGNhbGxiYWNrLCBhbmQgdGhlbiB0aGUKKyAqIHJlcG8tc3BlY2lmaWMgb25lOyBieSBvdmVyd3JpdGluZywgdGhlIGhpZ2hlci1wcmlvcml0eSByZXBvLXNwZWNpZmljCisgKiB2YWx1ZSBpcyBsZWZ0IGF0IHRoZSBlbmQpLgorICovCit2b2lkIGdpdF9jb25maWcoY29uZmlnX2ZuX3QgZm4sIHZvaWQgKik7CisKKy8qKgorICogTGV0cyB0aGUgY2FsbGVyIGV4YW1pbmUgY29uZmlnIHdoaWxlIGFkanVzdGluZyBzb21lIG9mIHRoZSBkZWZhdWx0CisgKiBiZWhhdmlvciBvZiBgZ2l0X2NvbmZpZ2AuIEl0IHNob3VsZCBhbG1vc3QgbmV2ZXIgYmUgdXNlZCBieSAicmVndWxhciIKKyAqIEdpdCBjb2RlIHRoYXQgaXMgbG9va2luZyB1cCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4KKyAqIEl0IGlzIGludGVuZGVkIGZvciBhZHZhbmNlZCBjYWxsZXJzIGxpa2UgYGdpdC1jb25maWdgLCB3aGljaCBhcmUKKyAqIGludGVudGlvbmFsbHkgdHdlYWtpbmcgdGhlIG5vcm1hbCBjb25maWctbG9va3VwIHByb2Nlc3MuCisgKiBJdCB0YWtlcyB0d28gZXh0cmEgcGFyYW1ldGVyczoKKyAqCisgKiAtIGBjb25maWdfc291cmNlYAorICogSWYgdGhpcyBwYXJhbWV0ZXIgaXMgbm9uLU5VTEwsIGl0IHNwZWNpZmllcyB0aGUgc291cmNlIHRvIHBhcnNlIGZvcgorICogY29uZmlndXJhdGlvbiwgcmF0aGVyIHRoYW4gbG9va2luZyBpbiB0aGUgdXN1YWwgZmlsZXMuIFNlZSBgc3RydWN0CisgKiBnaXRfY29uZmlnX3NvdXJjZWAgaW4gYGNvbmZpZy5oYCBmb3IgZGV0YWlscy4gUmVndWxhciBgZ2l0X2NvbmZpZ2AgZGVmYXVsdHMKKyAqIHRvIGBOVUxMYC4KKyAqCisgKiAtIGBvcHRzYAorICogU3BlY2lmeSBvcHRpb25zIHRvIGFkanVzdCB0aGUgYmVoYXZpb3Igb2YgcGFyc2luZyBjb25maWcgZmlsZXMuIFNlZSBgc3RydWN0CisgKiBjb25maWdfb3B0aW9uc2AgaW4gYGNvbmZpZy5oYCBmb3IgZGV0YWlscy4gQXMgYW4gZXhhbXBsZTogcmVndWxhciBgZ2l0X2NvbmZpZ2AKKyAqIHNldHMgYG9wdHMucmVzcGVjdF9pbmNsdWRlc2AgdG8gYDFgIGJ5IGRlZmF1bHQuCisgKi8KK2ludCBjb25maWdfd2l0aF9vcHRpb25zKGNvbmZpZ19mbl90IGZuLCB2b2lkICosCisJCQlzdHJ1Y3QgZ2l0X2NvbmZpZ19zb3VyY2UgKmNvbmZpZ19zb3VyY2UsCisJCQljb25zdCBzdHJ1Y3QgY29uZmlnX29wdGlvbnMgKm9wdHMpOworCisvKioKKyAqIFZhbHVlIFBhcnNpbmcgSGVscGVycworICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKgorICogVGhlIGZvbGxvd2luZyBoZWxwZXIgZnVuY3Rpb25zIGFpZCBpbiBwYXJzaW5nIHN0cmluZyB2YWx1ZXMKKyAqLworCitpbnQgZ2l0X3BhcnNlX3NzaXplX3QoY29uc3QgY2hhciAqLCBzc2l6ZV90ICopOworaW50IGdpdF9wYXJzZV91bG9uZyhjb25zdCBjaGFyICosIHVuc2lnbmVkIGxvbmcgKik7CisKKy8qKgorICogU2FtZSBhcyBgZ2l0X2NvbmZpZ19ib29sYCwgZXhjZXB0IHRoYXQgaXQgcmV0dXJucyAtMSBvbiBlcnJvciByYXRoZXIKKyAqIHRoYW4gZHlpbmcuCisgKi8KK2ludCBnaXRfcGFyc2VfbWF5YmVfYm9vbChjb25zdCBjaGFyICopOworCisvKioKKyAqIFBhcnNlIHRoZSBzdHJpbmcgdG8gYW4gaW50ZWdlciwgaW5jbHVkaW5nIHVuaXQgZmFjdG9ycy4gRGllcyBvbiBlcnJvcjsKKyAqIG90aGVyd2lzZSwgcmV0dXJucyB0aGUgcGFyc2VkIHJlc3VsdC4KKyAqLworaW50IGdpdF9jb25maWdfaW50KGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKKworaW50NjRfdCBnaXRfY29uZmlnX2ludDY0KGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKKworLyoqCisgKiBJZGVudGljYWwgdG8gYGdpdF9jb25maWdfaW50YCwgYnV0IGZvciB1bnNpZ25lZCBsb25ncy4KKyAqLwordW5zaWduZWQgbG9uZyBnaXRfY29uZmlnX3Vsb25nKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKKworc3NpemVfdCBnaXRfY29uZmlnX3NzaXplX3QoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOworCisvKioKKyAqIFNhbWUgYXMgYGdpdF9jb25maWdfYm9vbGAsIGV4Y2VwdCB0aGF0IGludGVnZXJzIGFyZSByZXR1cm5lZCBhcy1pcywgYW5kCisgKiBhbiBgaXNfYm9vbGAgZmxhZyBpcyB1bnNldC4KKyAqLworaW50IGdpdF9jb25maWdfYm9vbF9vcl9pbnQoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGludCAqKTsKKworLyoqCisgKiBQYXJzZSBhIHN0cmluZyBpbnRvIGEgYm9vbGVhbiB2YWx1ZSwgcmVzcGVjdGluZyBrZXl3b3JkcyBsaWtlICJ0cnVlIiBhbmQKKyAqICJmYWxzZSIuIEludGVnZXIgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgaW50byB0cnVlL2ZhbHNlIHZhbHVlcyAod2hlbiB0aGV5CisgKiBhcmUgbm9uLXplcm8gb3IgemVybywgcmVzcGVjdGl2ZWx5KS4gT3RoZXIgdmFsdWVzIGNhdXNlIGEgZGllKCkuIElmCisgKiBwYXJzaW5nIGlzIHN1Y2Nlc3NmdWwsIHRoZSByZXR1cm4gdmFsdWUgaXMgdGhlIHJlc3VsdC4KKyAqLworaW50IGdpdF9jb25maWdfYm9vbChjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7CisKKy8qKgorICogQWxsb2NhdGVzIGFuZCBjb3BpZXMgdGhlIHZhbHVlIHN0cmluZyBpbnRvIHRoZSBgZGVzdGAgcGFyYW1ldGVyOyBpZiBubworICogc3RyaW5nIGlzIGdpdmVuLCBwcmludHMgYW4gZXJyb3IgbWVzc2FnZSBhbmQgcmV0dXJucyAtMS4KKyAqLworaW50IGdpdF9jb25maWdfc3RyaW5nKGNvbnN0IGNoYXIgKiosIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKKworLyoqCisgKiBTaW1pbGFyIHRvIGBnaXRfY29uZmlnX3N0cmluZ2AsIGJ1dCBleHBhbmRzIGB+YCBvciBgfnVzZXJgIGludG8gdGhlCisgKiB1c2VyJ3MgaG9tZSBkaXJlY3Rvcnkgd2hlbiBmb3VuZCBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBwYXRoLgorICovCitpbnQgZ2l0X2NvbmZpZ19wYXRobmFtZShjb25zdCBjaGFyICoqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7CisKK2ludCBnaXRfY29uZmlnX2V4cGlyeV9kYXRlKHRpbWVzdGFtcF90ICosIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKK2ludCBnaXRfY29uZmlnX2NvbG9yKGNoYXIgKiwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOworaW50IGdpdF9jb25maWdfc2V0X2luX2ZpbGVfZ2VudGx5KGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOworCisvKioKKyAqIHdyaXRlIGNvbmZpZyB2YWx1ZXMgdG8gYSBzcGVjaWZpYyBjb25maWcgZmlsZSwgdGFrZXMgYSBrZXkvdmFsdWUgcGFpciBhcworICogcGFyYW1ldGVyLgorICovCit2b2lkIGdpdF9jb25maWdfc2V0X2luX2ZpbGUoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7CisKK2ludCBnaXRfY29uZmlnX3NldF9nZW50bHkoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOworCisvKioKKyAqIHdyaXRlIGNvbmZpZyB2YWx1ZXMgdG8gYC5naXQvY29uZmlnYCwgdGFrZXMgYSBrZXkvdmFsdWUgcGFpciBhcyBwYXJhbWV0ZXIuCisgKi8KK3ZvaWQgZ2l0X2NvbmZpZ19zZXQoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOworCitpbnQgZ2l0X2NvbmZpZ19wYXJzZV9rZXkoY29uc3QgY2hhciAqLCBjaGFyICoqLCBpbnQgKik7CitpbnQgZ2l0X2NvbmZpZ19rZXlfaXNfdmFsaWQoY29uc3QgY2hhciAqa2V5KTsKK2ludCBnaXRfY29uZmlnX3NldF9tdWx0aXZhcl9nZW50bHkoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgaW50KTsKK3ZvaWQgZ2l0X2NvbmZpZ19zZXRfbXVsdGl2YXIoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgaW50KTsKK2ludCBnaXRfY29uZmlnX3NldF9tdWx0aXZhcl9pbl9maWxlX2dlbnRseShjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGludCk7CisKKy8qKgorICogdGFrZXMgZm91ciBwYXJhbWV0ZXJzOgorICoKKyAqIC0gdGhlIG5hbWUgb2YgdGhlIGZpbGUsIGFzIGEgc3RyaW5nLCB0byB3aGljaCBrZXkvdmFsdWUgcGFpcnMgd2lsbCBiZSB3cml0dGVuLgorICoKKyAqIC0gdGhlIG5hbWUgb2Yga2V5LCBhcyBhIHN0cmluZy4gVGhpcyBpcyBpbiBjYW5vbmljYWwgImZsYXQiIGZvcm06IHRoZSBzZWN0aW9uLAorICogICBzdWJzZWN0aW9uLCBhbmQgdmFyaWFibGUgc2VnbWVudHMgd2lsbCBiZSBzZXBhcmF0ZWQgYnkgZG90cywgYW5kIHRoZSBzZWN0aW9uCisgKiAgIGFuZCB2YXJpYWJsZSBzZWdtZW50cyB3aWxsIGJlIGFsbCBsb3dlcmNhc2UuCisgKiAgIEUuZy4sIGBjb3JlLmlnbm9yZWNhc2VgLCBgZGlmZi5Tb21lVHlwZS50ZXh0Y29udmAuCisgKgorICogLSB0aGUgdmFsdWUgb2YgdGhlIHZhcmlhYmxlLCBhcyBhIHN0cmluZy4gSWYgdmFsdWUgaXMgZXF1YWwgdG8gTlVMTCwgaXQgd2lsbAorICogICByZW1vdmUgdGhlIG1hdGNoaW5nIGtleSBmcm9tIHRoZSBjb25maWcgZmlsZS4KKyAqCisgKiAtIHRoZSB2YWx1ZSByZWdleCwgYXMgYSBzdHJpbmcuIEl0IHdpbGwgZGlzcmVnYXJkIGtleS92YWx1ZSBwYWlycyB3aGVyZSB2YWx1ZQorICogICBkb2VzIG5vdCBtYXRjaC4KKyAqCisgKiAtIGEgbXVsdGlfcmVwbGFjZSB2YWx1ZSwgYXMgYW4gaW50LiBJZiB2YWx1ZSBpcyBlcXVhbCB0byB6ZXJvLCBub3RoaW5nIG9yIG9ubHkKKyAqICAgb25lIG1hdGNoaW5nIGtleS92YWx1ZSBpcyByZXBsYWNlZCwgZWxzZSBhbGwgbWF0Y2hpbmcga2V5L3ZhbHVlcyAocmVnYXJkbGVzcworICogICBob3cgbWFueSkgYXJlIHJlbW92ZWQsIGJlZm9yZSB0aGUgbmV3IHBhaXIgaXMgd3JpdHRlbi4KKyAqCisgKiBJdCByZXR1cm5zIDAgb24gc3VjY2Vzcy4KKyAqLwordm9pZCBnaXRfY29uZmlnX3NldF9tdWx0aXZhcl9pbl9maWxlKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgaW50KTsKKworLyoqCisgKiByZW5hbWUgb3IgcmVtb3ZlIHNlY3Rpb25zIGluIHRoZSBjb25maWcgZmlsZQorICogcGFyYW1ldGVycyBgb2xkX25hbWVgIGFuZCBgbmV3X25hbWVgCisgKiBJZiBOVUxMIGlzIHBhc3NlZCB0aHJvdWdoIGBuZXdfbmFtZWAgcGFyYW1ldGVyLAorICogdGhlIHNlY3Rpb24gd2lsbCBiZSByZW1vdmVkIGZyb20gdGhlIGNvbmZpZyBmaWxlLgorICovCitpbnQgZ2l0X2NvbmZpZ19yZW5hbWVfc2VjdGlvbihjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7CisKK2ludCBnaXRfY29uZmlnX3JlbmFtZV9zZWN0aW9uX2luX2ZpbGUoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7CitpbnQgZ2l0X2NvbmZpZ19jb3B5X3NlY3Rpb24oY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOworaW50IGdpdF9jb25maWdfY29weV9zZWN0aW9uX2luX2ZpbGUoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7Citjb25zdCBjaGFyICpnaXRfZXRjX2dpdGNvbmZpZyh2b2lkKTsKK2ludCBnaXRfZW52X2Jvb2woY29uc3QgY2hhciAqLCBpbnQpOwordW5zaWduZWQgbG9uZyBnaXRfZW52X3Vsb25nKGNvbnN0IGNoYXIgKiwgdW5zaWduZWQgbG9uZyk7CitpbnQgZ2l0X2NvbmZpZ19zeXN0ZW0odm9pZCk7CitpbnQgY29uZmlnX2Vycm9yX25vbmJvb2woY29uc3QgY2hhciAqKTsKICNpZiBkZWZpbmVkKF9fR05VQ19fKQogI2RlZmluZSBjb25maWdfZXJyb3Jfbm9uYm9vbChzKSAoY29uZmlnX2Vycm9yX25vbmJvb2wocyksIGNvbnN0X2Vycm9yKCkpCiAjZW5kaWYKIAotZXh0ZXJuIGludCBnaXRfY29uZmlnX3BhcnNlX3BhcmFtZXRlcihjb25zdCBjaGFyICosIGNvbmZpZ19mbl90IGZuLCB2b2lkICpkYXRhKTsKK2ludCBnaXRfY29uZmlnX3BhcnNlX3BhcmFtZXRlcihjb25zdCBjaGFyICosIGNvbmZpZ19mbl90IGZuLCB2b2lkICpkYXRhKTsKIAotZW51bSBjb25maWdfc2NvcGUgewotCUNPTkZJR19TQ09QRV9VTktOT1dOID0gMCwKLQlDT05GSUdfU0NPUEVfU1lTVEVNLAotCUNPTkZJR19TQ09QRV9HTE9CQUwsCi0JQ09ORklHX1NDT1BFX1JFUE8sCi0JQ09ORklHX1NDT1BFX0NNRExJTkUsCi19OworZW51bSBjb25maWdfc2NvcGUgY3VycmVudF9jb25maWdfc2NvcGUodm9pZCk7Citjb25zdCBjaGFyICpjdXJyZW50X2NvbmZpZ19vcmlnaW5fdHlwZSh2b2lkKTsKK2NvbnN0IGNoYXIgKmN1cnJlbnRfY29uZmlnX25hbWUodm9pZCk7CitpbnQgY3VycmVudF9jb25maWdfbGluZSh2b2lkKTsKIAotZXh0ZXJuIGVudW0gY29uZmlnX3Njb3BlIGN1cnJlbnRfY29uZmlnX3Njb3BlKHZvaWQpOwotZXh0ZXJuIGNvbnN0IGNoYXIgKmN1cnJlbnRfY29uZmlnX29yaWdpbl90eXBlKHZvaWQpOwotZXh0ZXJuIGNvbnN0IGNoYXIgKmN1cnJlbnRfY29uZmlnX25hbWUodm9pZCk7Ci0KKy8qKgorICogSW5jbHVkZSBEaXJlY3RpdmVzCisgKiAtLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiBCeSBkZWZhdWx0LCB0aGUgY29uZmlnIHBhcnNlciBkb2VzIG5vdCByZXNwZWN0IGluY2x1ZGUgZGlyZWN0aXZlcy4KKyAqIEhvd2V2ZXIsIGEgY2FsbGVyIGNhbiB1c2UgdGhlIHNwZWNpYWwgYGdpdF9jb25maWdfaW5jbHVkZWAgd3JhcHBlcgorICogY2FsbGJhY2sgdG8gc3VwcG9ydCB0aGVtLiBUbyBkbyBzbywgeW91IHNpbXBseSB3cmFwIHlvdXIgInJlYWwiIGNhbGxiYWNrCisgKiBmdW5jdGlvbiBhbmQgZGF0YSBwb2ludGVyIGluIGEgYHN0cnVjdCBjb25maWdfaW5jbHVkZV9kYXRhYCwgYW5kIHBhc3MKKyAqIHRoZSB3cmFwcGVyIHRvIHRoZSByZWd1bGFyIGNvbmZpZy1yZWFkaW5nIGZ1bmN0aW9ucy4gRm9yIGV4YW1wbGU6CisgKgorICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICogaW50IHJlYWRfZmlsZV93aXRoX2luY2x1ZGUoY29uc3QgY2hhciAqZmlsZSwgY29uZmlnX2ZuX3QgZm4sIHZvaWQgKmRhdGEpCisgKiB7CisgKiBzdHJ1Y3QgY29uZmlnX2luY2x1ZGVfZGF0YSBpbmMgPSBDT05GSUdfSU5DTFVERV9JTklUOworICogaW5jLmZuID0gZm47CisgKiBpbmMuZGF0YSA9IGRhdGE7CisgKiByZXR1cm4gZ2l0X2NvbmZpZ19mcm9tX2ZpbGUoZ2l0X2NvbmZpZ19pbmNsdWRlLCBmaWxlLCAmaW5jKTsKKyAqIH0KKyAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiBgZ2l0X2NvbmZpZ2AgcmVzcGVjdHMgaW5jbHVkZXMgYXV0b21hdGljYWxseS4gVGhlIGxvd2VyLWxldmVsCisgKiBgZ2l0X2NvbmZpZ19mcm9tX2ZpbGVgIGRvZXMgbm90LgorICoKKyAqLwogc3RydWN0IGNvbmZpZ19pbmNsdWRlX2RhdGEgewogCWludCBkZXB0aDsKIAljb25maWdfZm5fdCBmbjsKQEAgLTE0NCw3ICszNDIsNyBAQAogCWNvbnN0IHN0cnVjdCBjb25maWdfb3B0aW9ucyAqb3B0czsKIH07CiAjZGVmaW5lIENPTkZJR19JTkNMVURFX0lOSVQgeyAwIH0KLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ19pbmNsdWRlKGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKnZhbHVlLCB2b2lkICpkYXRhKTsKK2ludCBnaXRfY29uZmlnX2luY2x1ZGUoY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqdmFsdWUsIHZvaWQgKmRhdGEpOwogCiAvKgogICogTWF0Y2ggYW5kIHBhcnNlIGEgY29uZmlnIGtleSBvZiB0aGUgZm9ybToKQEAgLTE1OSwxMCArMzU3LDM3IEBACiAgKiBJZiB0aGUgc3Vic2VjdGlvbiBwb2ludGVyLXRvLXBvaW50ZXIgcGFzc2VkIGluIGlzIE5VTEwsIHJldHVybnMgMCBvbmx5IGlmCiAgKiB0aGVyZSBpcyBubyBzdWJzZWN0aW9uIGF0IGFsbC4KICAqLwotZXh0ZXJuIGludCBwYXJzZV9jb25maWdfa2V5KGNvbnN0IGNoYXIgKnZhciwKLQkJCSAgICBjb25zdCBjaGFyICpzZWN0aW9uLAotCQkJICAgIGNvbnN0IGNoYXIgKipzdWJzZWN0aW9uLCBpbnQgKnN1YnNlY3Rpb25fbGVuLAotCQkJICAgIGNvbnN0IGNoYXIgKiprZXkpOworaW50IHBhcnNlX2NvbmZpZ19rZXkoY29uc3QgY2hhciAqdmFyLAorCQkgICAgIGNvbnN0IGNoYXIgKnNlY3Rpb24sCisJCSAgICAgY29uc3QgY2hhciAqKnN1YnNlY3Rpb24sIGludCAqc3Vic2VjdGlvbl9sZW4sCisJCSAgICAgY29uc3QgY2hhciAqKmtleSk7CisKKy8qKgorICogQ3VzdG9tIENvbmZpZ3NldHMKKyAqIC0tLS0tLS0tLS0tLS0tLS0tCisgKgorICogQSBgY29uZmlnX3NldGAgY2FuIGJlIHVzZWQgdG8gY29uc3RydWN0IGFuIGluLW1lbW9yeSBjYWNoZSBmb3IKKyAqIGNvbmZpZy1saWtlIGZpbGVzIHRoYXQgdGhlIGNhbGxlciBzcGVjaWZpZXMgKGkuZS4sIGZpbGVzIGxpa2UgYC5naXRtb2R1bGVzYCwKKyAqIGB+Ly5naXRjb25maWdgIGV0Yy4pLiBGb3IgZXhhbXBsZSwKKyAqCisgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKiBzdHJ1Y3QgY29uZmlnX3NldCBnbV9jb25maWc7CisgKiBnaXRfY29uZmlnc2V0X2luaXQoJmdtX2NvbmZpZyk7CisgKiBpbnQgYjsKKyAqIC8vd2UgYWRkIGNvbmZpZyBmaWxlcyB0byB0aGUgY29uZmlnX3NldAorICogZ2l0X2NvbmZpZ3NldF9hZGRfZmlsZSgmZ21fY29uZmlnLCAiLmdpdG1vZHVsZXMiKTsKKyAqIGdpdF9jb25maWdzZXRfYWRkX2ZpbGUoJmdtX2NvbmZpZywgIi5naXRtb2R1bGVzX2FsdCIpOworICoKKyAqIGlmICghZ2l0X2NvbmZpZ3NldF9nZXRfYm9vbChnbV9jb25maWcsICJzdWJtb2R1bGUuZnJvdHouaWdub3JlIiwgJmIpKSB7CisgKiAvL2hhY2sgaGFjayBoYWNrCisgKiB9CisgKgorICogd2hlbiB3ZSBhcmUgZG9uZSB3aXRoIHRoZSBjb25maWdzZXQ6CisgKiBnaXRfY29uZmlnc2V0X2NsZWFyKCZnbV9jb25maWcpOworICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICoKKyAqIENvbmZpZ3NldCBBUEkgcHJvdmlkZXMgZnVuY3Rpb25zIGZvciB0aGUgYWJvdmUgbWVudGlvbmVkIHdvcmsgZmxvdworICovCiAKIHN0cnVjdCBjb25maWdfc2V0X2VsZW1lbnQgewogCXN0cnVjdCBoYXNobWFwX2VudHJ5IGVudDsKQEAgLTE5Miw3MSArNDE3LDE3OSBAQAogCXN0cnVjdCBjb25maWdzZXRfbGlzdCBsaXN0OwogfTsKIAotZXh0ZXJuIHZvaWQgZ2l0X2NvbmZpZ3NldF9pbml0KHN0cnVjdCBjb25maWdfc2V0ICpjcyk7Ci1leHRlcm4gaW50IGdpdF9jb25maWdzZXRfYWRkX2ZpbGUoc3RydWN0IGNvbmZpZ19zZXQgKmNzLCBjb25zdCBjaGFyICpmaWxlbmFtZSk7Ci1leHRlcm4gY29uc3Qgc3RydWN0IHN0cmluZ19saXN0ICpnaXRfY29uZmlnc2V0X2dldF92YWx1ZV9tdWx0aShzdHJ1Y3QgY29uZmlnX3NldCAqY3MsIGNvbnN0IGNoYXIgKmtleSk7Ci1leHRlcm4gdm9pZCBnaXRfY29uZmlnc2V0X2NsZWFyKHN0cnVjdCBjb25maWdfc2V0ICpjcyk7CisvKioKKyAqIEluaXRpYWxpemVzIHRoZSBjb25maWdfc2V0IGBjc2AuCisgKi8KK3ZvaWQgZ2l0X2NvbmZpZ3NldF9pbml0KHN0cnVjdCBjb25maWdfc2V0ICpjcyk7CisKKy8qKgorICogUGFyc2VzIHRoZSBmaWxlIGFuZCBhZGRzIHRoZSB2YXJpYWJsZS12YWx1ZSBwYWlycyB0byB0aGUgYGNvbmZpZ19zZXRgLAorICogZGllcyBpZiB0aGVyZSBpcyBhbiBlcnJvciBpbiBwYXJzaW5nIHRoZSBmaWxlLiBSZXR1cm5zIDAgb24gc3VjY2Vzcywgb3IKKyAqIC0xIGlmIHRoZSBmaWxlIGRvZXMgbm90IGV4aXN0IG9yIGlzIGluYWNjZXNzaWJsZS4gVGhlIHVzZXIgaGFzIHRvIGRlY2lkZQorICogaWYgaGUgd2FudHMgdG8gZnJlZSB0aGUgaW5jb21wbGV0ZSBjb25maWdzZXQgb3IgY29udGludWUgdXNpbmcgaXQgd2hlbgorICogdGhlIGZ1bmN0aW9uIHJldHVybnMgLTEuCisgKi8KK2ludCBnaXRfY29uZmlnc2V0X2FkZF9maWxlKHN0cnVjdCBjb25maWdfc2V0ICpjcywgY29uc3QgY2hhciAqZmlsZW5hbWUpOworCisvKioKKyAqIEZpbmRzIGFuZCByZXR1cm5zIHRoZSB2YWx1ZSBsaXN0LCBzb3J0ZWQgaW4gb3JkZXIgb2YgaW5jcmVhc2luZyBwcmlvcml0eQorICogZm9yIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBrZXlgIGFuZCBjb25maWcgc2V0IGBjc2AuIFdoZW4gdGhlCisgKiBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBrZXlgIGlzIG5vdCBmb3VuZCwgcmV0dXJucyBOVUxMLiBUaGUgY2FsbGVyCisgKiBzaG91bGQgbm90IGZyZWUgb3IgbW9kaWZ5IHRoZSByZXR1cm5lZCBwb2ludGVyLCBhcyBpdCBpcyBvd25lZCBieSB0aGUgY2FjaGUuCisgKi8KK2NvbnN0IHN0cnVjdCBzdHJpbmdfbGlzdCAqZ2l0X2NvbmZpZ3NldF9nZXRfdmFsdWVfbXVsdGkoc3RydWN0IGNvbmZpZ19zZXQgKmNzLCBjb25zdCBjaGFyICprZXkpOworCisvKioKKyAqIENsZWFycyBgY29uZmlnX3NldGAgc3RydWN0dXJlLCByZW1vdmVzIGFsbCBzYXZlZCB2YXJpYWJsZS12YWx1ZSBwYWlycy4KKyAqLwordm9pZCBnaXRfY29uZmlnc2V0X2NsZWFyKHN0cnVjdCBjb25maWdfc2V0ICpjcyk7CiAKIC8qCiAgKiBUaGVzZSBmdW5jdGlvbnMgcmV0dXJuIDEgaWYgbm90IGZvdW5kLCBhbmQgMCBpZiBmb3VuZCwgbGVhdmluZyB0aGUgZm91bmQKICAqIHZhbHVlIGluIHRoZSAnZGVzdCcgcG9pbnRlci4KICAqLwotZXh0ZXJuIGludCBnaXRfY29uZmlnc2V0X2dldF92YWx1ZShzdHJ1Y3QgY29uZmlnX3NldCAqY3MsIGNvbnN0IGNoYXIgKmtleSwgY29uc3QgY2hhciAqKmRlc3QpOwotZXh0ZXJuIGludCBnaXRfY29uZmlnc2V0X2dldF9zdHJpbmdfY29uc3Qoc3RydWN0IGNvbmZpZ19zZXQgKmNzLCBjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKipkZXN0KTsKLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ3NldF9nZXRfc3RyaW5nKHN0cnVjdCBjb25maWdfc2V0ICpjcywgY29uc3QgY2hhciAqa2V5LCBjaGFyICoqZGVzdCk7Ci1leHRlcm4gaW50IGdpdF9jb25maWdzZXRfZ2V0X2ludChzdHJ1Y3QgY29uZmlnX3NldCAqY3MsIGNvbnN0IGNoYXIgKmtleSwgaW50ICpkZXN0KTsKLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ3NldF9nZXRfdWxvbmcoc3RydWN0IGNvbmZpZ19zZXQgKmNzLCBjb25zdCBjaGFyICprZXksIHVuc2lnbmVkIGxvbmcgKmRlc3QpOwotZXh0ZXJuIGludCBnaXRfY29uZmlnc2V0X2dldF9ib29sKHN0cnVjdCBjb25maWdfc2V0ICpjcywgY29uc3QgY2hhciAqa2V5LCBpbnQgKmRlc3QpOwotZXh0ZXJuIGludCBnaXRfY29uZmlnc2V0X2dldF9ib29sX29yX2ludChzdHJ1Y3QgY29uZmlnX3NldCAqY3MsIGNvbnN0IGNoYXIgKmtleSwgaW50ICppc19ib29sLCBpbnQgKmRlc3QpOwotZXh0ZXJuIGludCBnaXRfY29uZmlnc2V0X2dldF9tYXliZV9ib29sKHN0cnVjdCBjb25maWdfc2V0ICpjcywgY29uc3QgY2hhciAqa2V5LCBpbnQgKmRlc3QpOwotZXh0ZXJuIGludCBnaXRfY29uZmlnc2V0X2dldF9wYXRobmFtZShzdHJ1Y3QgY29uZmlnX3NldCAqY3MsIGNvbnN0IGNoYXIgKmtleSwgY29uc3QgY2hhciAqKmRlc3QpOworCisvKgorICogRmluZHMgdGhlIGhpZ2hlc3QtcHJpb3JpdHkgdmFsdWUgZm9yIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBrZXlgCisgKiBhbmQgY29uZmlnIHNldCBgY3NgLCBzdG9yZXMgdGhlIHBvaW50ZXIgdG8gaXQgaW4gYHZhbHVlYCBhbmQgcmV0dXJucyAwLgorICogV2hlbiB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBga2V5YCBpcyBub3QgZm91bmQsIHJldHVybnMgMSB3aXRob3V0CisgKiB0b3VjaGluZyBgdmFsdWVgLiBUaGUgY2FsbGVyIHNob3VsZCBub3QgZnJlZSBvciBtb2RpZnkgYHZhbHVlYCwgYXMgaXQKKyAqIGlzIG93bmVkIGJ5IHRoZSBjYWNoZS4KKyAqLworaW50IGdpdF9jb25maWdzZXRfZ2V0X3ZhbHVlKHN0cnVjdCBjb25maWdfc2V0ICpjcywgY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICoqZGVzdCk7CisKK2ludCBnaXRfY29uZmlnc2V0X2dldF9zdHJpbmdfY29uc3Qoc3RydWN0IGNvbmZpZ19zZXQgKmNzLCBjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKipkZXN0KTsKK2ludCBnaXRfY29uZmlnc2V0X2dldF9zdHJpbmcoc3RydWN0IGNvbmZpZ19zZXQgKmNzLCBjb25zdCBjaGFyICprZXksIGNoYXIgKipkZXN0KTsKK2ludCBnaXRfY29uZmlnc2V0X2dldF9pbnQoc3RydWN0IGNvbmZpZ19zZXQgKmNzLCBjb25zdCBjaGFyICprZXksIGludCAqZGVzdCk7CitpbnQgZ2l0X2NvbmZpZ3NldF9nZXRfdWxvbmcoc3RydWN0IGNvbmZpZ19zZXQgKmNzLCBjb25zdCBjaGFyICprZXksIHVuc2lnbmVkIGxvbmcgKmRlc3QpOworaW50IGdpdF9jb25maWdzZXRfZ2V0X2Jvb2woc3RydWN0IGNvbmZpZ19zZXQgKmNzLCBjb25zdCBjaGFyICprZXksIGludCAqZGVzdCk7CitpbnQgZ2l0X2NvbmZpZ3NldF9nZXRfYm9vbF9vcl9pbnQoc3RydWN0IGNvbmZpZ19zZXQgKmNzLCBjb25zdCBjaGFyICprZXksIGludCAqaXNfYm9vbCwgaW50ICpkZXN0KTsKK2ludCBnaXRfY29uZmlnc2V0X2dldF9tYXliZV9ib29sKHN0cnVjdCBjb25maWdfc2V0ICpjcywgY29uc3QgY2hhciAqa2V5LCBpbnQgKmRlc3QpOworaW50IGdpdF9jb25maWdzZXRfZ2V0X3BhdGhuYW1lKHN0cnVjdCBjb25maWdfc2V0ICpjcywgY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICoqZGVzdCk7CiAKIC8qIEZ1bmN0aW9ucyBmb3IgcmVhZGluZyBhIHJlcG9zaXRvcnkncyBjb25maWcgKi8KIHN0cnVjdCByZXBvc2l0b3J5OwotZXh0ZXJuIHZvaWQgcmVwb19jb25maWcoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIGNvbmZpZ19mbl90IGZuLCB2b2lkICpkYXRhKTsKLWV4dGVybiBpbnQgcmVwb19jb25maWdfZ2V0X3ZhbHVlKHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAotCQkJCSBjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKip2YWx1ZSk7Ci1leHRlcm4gY29uc3Qgc3RydWN0IHN0cmluZ19saXN0ICpyZXBvX2NvbmZpZ19nZXRfdmFsdWVfbXVsdGkoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCi0JCQkJCQkJICAgICBjb25zdCBjaGFyICprZXkpOwotZXh0ZXJuIGludCByZXBvX2NvbmZpZ19nZXRfc3RyaW5nX2NvbnN0KHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAotCQkJCQljb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKipkZXN0KTsKLWV4dGVybiBpbnQgcmVwb19jb25maWdfZ2V0X3N0cmluZyhzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKLQkJCQkgIGNvbnN0IGNoYXIgKmtleSwgY2hhciAqKmRlc3QpOwotZXh0ZXJuIGludCByZXBvX2NvbmZpZ19nZXRfaW50KHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAordm9pZCByZXBvX2NvbmZpZyhzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgY29uZmlnX2ZuX3QgZm4sIHZvaWQgKmRhdGEpOworaW50IHJlcG9fY29uZmlnX2dldF92YWx1ZShzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCSAgY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICoqdmFsdWUpOworY29uc3Qgc3RydWN0IHN0cmluZ19saXN0ICpyZXBvX2NvbmZpZ19nZXRfdmFsdWVfbXVsdGkoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkJCQkgICAgICBjb25zdCBjaGFyICprZXkpOworaW50IHJlcG9fY29uZmlnX2dldF9zdHJpbmdfY29uc3Qoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkJIGNvbnN0IGNoYXIgKmtleSwgY29uc3QgY2hhciAqKmRlc3QpOworaW50IHJlcG9fY29uZmlnX2dldF9zdHJpbmcoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkgICBjb25zdCBjaGFyICprZXksIGNoYXIgKipkZXN0KTsKK2ludCByZXBvX2NvbmZpZ19nZXRfaW50KHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkJY29uc3QgY2hhciAqa2V5LCBpbnQgKmRlc3QpOworaW50IHJlcG9fY29uZmlnX2dldF91bG9uZyhzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCSAgY29uc3QgY2hhciAqa2V5LCB1bnNpZ25lZCBsb25nICpkZXN0KTsKK2ludCByZXBvX2NvbmZpZ19nZXRfYm9vbChzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCSBjb25zdCBjaGFyICprZXksIGludCAqZGVzdCk7CitpbnQgcmVwb19jb25maWdfZ2V0X2Jvb2xfb3JfaW50KHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkJCWNvbnN0IGNoYXIgKmtleSwgaW50ICppc19ib29sLCBpbnQgKmRlc3QpOworaW50IHJlcG9fY29uZmlnX2dldF9tYXliZV9ib29sKHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAogCQkJICAgICAgIGNvbnN0IGNoYXIgKmtleSwgaW50ICpkZXN0KTsKLWV4dGVybiBpbnQgcmVwb19jb25maWdfZ2V0X3Vsb25nKHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAotCQkJCSBjb25zdCBjaGFyICprZXksIHVuc2lnbmVkIGxvbmcgKmRlc3QpOwotZXh0ZXJuIGludCByZXBvX2NvbmZpZ19nZXRfYm9vbChzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKLQkJCQljb25zdCBjaGFyICprZXksIGludCAqZGVzdCk7Ci1leHRlcm4gaW50IHJlcG9fY29uZmlnX2dldF9ib29sX29yX2ludChzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKLQkJCQkgICAgICAgY29uc3QgY2hhciAqa2V5LCBpbnQgKmlzX2Jvb2wsIGludCAqZGVzdCk7Ci1leHRlcm4gaW50IHJlcG9fY29uZmlnX2dldF9tYXliZV9ib29sKHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAotCQkJCSAgICAgIGNvbnN0IGNoYXIgKmtleSwgaW50ICpkZXN0KTsKLWV4dGVybiBpbnQgcmVwb19jb25maWdfZ2V0X3BhdGhuYW1lKHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAotCQkJCSAgICBjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKipkZXN0KTsKK2ludCByZXBvX2NvbmZpZ19nZXRfcGF0aG5hbWUoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkgICAgIGNvbnN0IGNoYXIgKmtleSwgY29uc3QgY2hhciAqKmRlc3QpOwogCi1leHRlcm4gaW50IGdpdF9jb25maWdfZ2V0X3ZhbHVlKGNvbnN0IGNoYXIgKmtleSwgY29uc3QgY2hhciAqKnZhbHVlKTsKLWV4dGVybiBjb25zdCBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmdpdF9jb25maWdfZ2V0X3ZhbHVlX211bHRpKGNvbnN0IGNoYXIgKmtleSk7Ci1leHRlcm4gdm9pZCBnaXRfY29uZmlnX2NsZWFyKHZvaWQpOwotZXh0ZXJuIGludCBnaXRfY29uZmlnX2dldF9zdHJpbmdfY29uc3QoY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICoqZGVzdCk7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfZ2V0X3N0cmluZyhjb25zdCBjaGFyICprZXksIGNoYXIgKipkZXN0KTsKLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ19nZXRfaW50KGNvbnN0IGNoYXIgKmtleSwgaW50ICpkZXN0KTsKLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ19nZXRfdWxvbmcoY29uc3QgY2hhciAqa2V5LCB1bnNpZ25lZCBsb25nICpkZXN0KTsKLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ19nZXRfYm9vbChjb25zdCBjaGFyICprZXksIGludCAqZGVzdCk7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfZ2V0X2Jvb2xfb3JfaW50KGNvbnN0IGNoYXIgKmtleSwgaW50ICppc19ib29sLCBpbnQgKmRlc3QpOwotZXh0ZXJuIGludCBnaXRfY29uZmlnX2dldF9tYXliZV9ib29sKGNvbnN0IGNoYXIgKmtleSwgaW50ICpkZXN0KTsKLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ19nZXRfcGF0aG5hbWUoY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICoqZGVzdCk7Ci1leHRlcm4gaW50IGdpdF9jb25maWdfZ2V0X2luZGV4X3RocmVhZHMoaW50ICpkZXN0KTsKLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ19nZXRfdW50cmFja2VkX2NhY2hlKHZvaWQpOwotZXh0ZXJuIGludCBnaXRfY29uZmlnX2dldF9zcGxpdF9pbmRleCh2b2lkKTsKLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ19nZXRfbWF4X3BlcmNlbnRfc3BsaXRfY2hhbmdlKHZvaWQpOwotZXh0ZXJuIGludCBnaXRfY29uZmlnX2dldF9mc21vbml0b3Iodm9pZCk7CisvKioKKyAqIFF1ZXJ5aW5nIEZvciBTcGVjaWZpYyBWYXJpYWJsZXMKKyAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiBGb3IgcHJvZ3JhbXMgd2FudGluZyB0byBxdWVyeSBmb3Igc3BlY2lmaWMgdmFyaWFibGVzIGluIGEgbm9uLWNhbGxiYWNrCisgKiBtYW5uZXIsIHRoZSBjb25maWcgQVBJIHByb3ZpZGVzIHR3byBmdW5jdGlvbnMgYGdpdF9jb25maWdfZ2V0X3ZhbHVlYAorICogYW5kIGBnaXRfY29uZmlnX2dldF92YWx1ZV9tdWx0aWAuIFRoZXkgYm90aCByZWFkIHZhbHVlcyBmcm9tIGFuIGludGVybmFsCisgKiBjYWNoZSBnZW5lcmF0ZWQgcHJldmlvdXNseSBmcm9tIHJlYWRpbmcgdGhlIGNvbmZpZyBmaWxlcy4KKyAqLworCisvKioKKyAqIEZpbmRzIHRoZSBoaWdoZXN0LXByaW9yaXR5IHZhbHVlIGZvciB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBga2V5YCwKKyAqIHN0b3JlcyB0aGUgcG9pbnRlciB0byBpdCBpbiBgdmFsdWVgIGFuZCByZXR1cm5zIDAuIFdoZW4gdGhlCisgKiBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBrZXlgIGlzIG5vdCBmb3VuZCwgcmV0dXJucyAxIHdpdGhvdXQgdG91Y2hpbmcKKyAqIGB2YWx1ZWAuIFRoZSBjYWxsZXIgc2hvdWxkIG5vdCBmcmVlIG9yIG1vZGlmeSBgdmFsdWVgLCBhcyBpdCBpcyBvd25lZAorICogYnkgdGhlIGNhY2hlLgorICovCitpbnQgZ2l0X2NvbmZpZ19nZXRfdmFsdWUoY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICoqdmFsdWUpOworCisvKioKKyAqIEZpbmRzIGFuZCByZXR1cm5zIHRoZSB2YWx1ZSBsaXN0LCBzb3J0ZWQgaW4gb3JkZXIgb2YgaW5jcmVhc2luZyBwcmlvcml0eQorICogZm9yIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBrZXlgLiBXaGVuIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlCisgKiBga2V5YCBpcyBub3QgZm91bmQsIHJldHVybnMgTlVMTC4gVGhlIGNhbGxlciBzaG91bGQgbm90IGZyZWUgb3IgbW9kaWZ5CisgKiB0aGUgcmV0dXJuZWQgcG9pbnRlciwgYXMgaXQgaXMgb3duZWQgYnkgdGhlIGNhY2hlLgorICovCitjb25zdCBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmdpdF9jb25maWdfZ2V0X3ZhbHVlX211bHRpKGNvbnN0IGNoYXIgKmtleSk7CisKKy8qKgorICogUmVzZXRzIGFuZCBpbnZhbGlkYXRlcyB0aGUgY29uZmlnIGNhY2hlLgorICovCit2b2lkIGdpdF9jb25maWdfY2xlYXIodm9pZCk7CisKKy8qKgorICogQWxsb2NhdGVzIGFuZCBjb3BpZXMgdGhlIHJldHJpZXZlZCBzdHJpbmcgaW50byB0aGUgYGRlc3RgIHBhcmFtZXRlciBmb3IKKyAqIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBrZXlgOyBpZiBOVUxMIHN0cmluZyBpcyBnaXZlbiwgcHJpbnRzIGFuCisgKiBlcnJvciBtZXNzYWdlIGFuZCByZXR1cm5zIC0xLiBXaGVuIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBrZXlgIGlzCisgKiBub3QgZm91bmQsIHJldHVybnMgMSB3aXRob3V0IHRvdWNoaW5nIGBkZXN0YC4KKyAqLworaW50IGdpdF9jb25maWdfZ2V0X3N0cmluZ19jb25zdChjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKipkZXN0KTsKKworLyoqCisgKiBTaW1pbGFyIHRvIGBnaXRfY29uZmlnX2dldF9zdHJpbmdfY29uc3RgLCBleGNlcHQgdGhhdCByZXRyaWV2ZWQgdmFsdWUKKyAqIGNvcGllZCBpbnRvIHRoZSBgZGVzdGAgcGFyYW1ldGVyIGlzIGEgbXV0YWJsZSBzdHJpbmcuCisgKi8KK2ludCBnaXRfY29uZmlnX2dldF9zdHJpbmcoY29uc3QgY2hhciAqa2V5LCBjaGFyICoqZGVzdCk7CisKKy8qKgorICogRmluZHMgYW5kIHBhcnNlcyB0aGUgdmFsdWUgdG8gYW4gaW50ZWdlciBmb3IgdGhlIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUKKyAqIGBrZXlgLiBEaWVzIG9uIGVycm9yOyBvdGhlcndpc2UsIHN0b3JlcyB0aGUgdmFsdWUgb2YgdGhlIHBhcnNlZCBpbnRlZ2VyIGluCisgKiBgZGVzdGAgYW5kIHJldHVybnMgMC4gV2hlbiB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBga2V5YCBpcyBub3QgZm91bmQsCisgKiByZXR1cm5zIDEgd2l0aG91dCB0b3VjaGluZyBgZGVzdGAuCisgKi8KK2ludCBnaXRfY29uZmlnX2dldF9pbnQoY29uc3QgY2hhciAqa2V5LCBpbnQgKmRlc3QpOworCisvKioKKyAqIFNpbWlsYXIgdG8gYGdpdF9jb25maWdfZ2V0X2ludGAgYnV0IGZvciB1bnNpZ25lZCBsb25ncy4KKyAqLworaW50IGdpdF9jb25maWdfZ2V0X3Vsb25nKGNvbnN0IGNoYXIgKmtleSwgdW5zaWduZWQgbG9uZyAqZGVzdCk7CisKKy8qKgorICogRmluZHMgYW5kIHBhcnNlcyB0aGUgdmFsdWUgaW50byBhIGJvb2xlYW4gdmFsdWUsIGZvciB0aGUgY29uZmlndXJhdGlvbgorICogdmFyaWFibGUgYGtleWAgcmVzcGVjdGluZyBrZXl3b3JkcyBsaWtlICJ0cnVlIiBhbmQgImZhbHNlIi4gSW50ZWdlcgorICogdmFsdWVzIGFyZSBjb252ZXJ0ZWQgaW50byB0cnVlL2ZhbHNlIHZhbHVlcyAod2hlbiB0aGV5IGFyZSBub24temVybyBvcgorICogemVybywgcmVzcGVjdGl2ZWx5KS4gT3RoZXIgdmFsdWVzIGNhdXNlIGEgZGllKCkuIElmIHBhcnNpbmcgaXMgc3VjY2Vzc2Z1bCwKKyAqIHN0b3JlcyB0aGUgdmFsdWUgb2YgdGhlIHBhcnNlZCByZXN1bHQgaW4gYGRlc3RgIGFuZCByZXR1cm5zIDAuIFdoZW4gdGhlCisgKiBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGBrZXlgIGlzIG5vdCBmb3VuZCwgcmV0dXJucyAxIHdpdGhvdXQgdG91Y2hpbmcKKyAqIGBkZXN0YC4KKyAqLworaW50IGdpdF9jb25maWdfZ2V0X2Jvb2woY29uc3QgY2hhciAqa2V5LCBpbnQgKmRlc3QpOworCisvKioKKyAqIFNpbWlsYXIgdG8gYGdpdF9jb25maWdfZ2V0X2Jvb2xgLCBleGNlcHQgdGhhdCBpbnRlZ2VycyBhcmUgY29waWVkIGFzLWlzLAorICogYW5kIGBpc19ib29sYCBmbGFnIGlzIHVuc2V0LgorICovCitpbnQgZ2l0X2NvbmZpZ19nZXRfYm9vbF9vcl9pbnQoY29uc3QgY2hhciAqa2V5LCBpbnQgKmlzX2Jvb2wsIGludCAqZGVzdCk7CisKKy8qKgorICogU2ltaWxhciB0byBgZ2l0X2NvbmZpZ19nZXRfYm9vbGAsIGV4Y2VwdCB0aGF0IGl0IHJldHVybnMgLTEgb24gZXJyb3IKKyAqIHJhdGhlciB0aGFuIGR5aW5nLgorICovCitpbnQgZ2l0X2NvbmZpZ19nZXRfbWF5YmVfYm9vbChjb25zdCBjaGFyICprZXksIGludCAqZGVzdCk7CisKKy8qKgorICogU2ltaWxhciB0byBgZ2l0X2NvbmZpZ19nZXRfc3RyaW5nYCwgYnV0IGV4cGFuZHMgYH5gIG9yIGB+dXNlcmAgaW50bworICogdGhlIHVzZXIncyBob21lIGRpcmVjdG9yeSB3aGVuIGZvdW5kIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIHBhdGguCisgKi8KK2ludCBnaXRfY29uZmlnX2dldF9wYXRobmFtZShjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKipkZXN0KTsKKworaW50IGdpdF9jb25maWdfZ2V0X2luZGV4X3RocmVhZHMoaW50ICpkZXN0KTsKK2ludCBnaXRfY29uZmlnX2dldF91bnRyYWNrZWRfY2FjaGUodm9pZCk7CitpbnQgZ2l0X2NvbmZpZ19nZXRfc3BsaXRfaW5kZXgodm9pZCk7CitpbnQgZ2l0X2NvbmZpZ19nZXRfbWF4X3BlcmNlbnRfc3BsaXRfY2hhbmdlKHZvaWQpOworaW50IGdpdF9jb25maWdfZ2V0X2ZzbW9uaXRvcih2b2lkKTsKIAogLyogVGhpcyBkaWVzIGlmIHRoZSBjb25maWd1cmVkIG9yIGRlZmF1bHQgZGF0ZSBpcyBpbiB0aGUgZnV0dXJlICovCi1leHRlcm4gaW50IGdpdF9jb25maWdfZ2V0X2V4cGlyeShjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKipvdXRwdXQpOworaW50IGdpdF9jb25maWdfZ2V0X2V4cGlyeShjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKipvdXRwdXQpOwogCiAvKiBwYXJzZSBlaXRoZXIgInRoaXMgbWFueSBkYXlzIiBpbnRlZ2VyLCBvciAiNS5kYXlzLmFnbyIgYXBwcm94aWRhdGUgKi8KLWV4dGVybiBpbnQgZ2l0X2NvbmZpZ19nZXRfZXhwaXJ5X2luX2RheXMoY29uc3QgY2hhciAqa2V5LCB0aW1lc3RhbXBfdCAqLCB0aW1lc3RhbXBfdCBub3cpOworaW50IGdpdF9jb25maWdfZ2V0X2V4cGlyeV9pbl9kYXlzKGNvbnN0IGNoYXIgKmtleSwgdGltZXN0YW1wX3QgKiwgdGltZXN0YW1wX3Qgbm93KTsKIAogc3RydWN0IGtleV92YWx1ZV9pbmZvIHsKIAljb25zdCBjaGFyICpmaWxlbmFtZTsKQEAgLTI2NSw4ICs1OTgsMjAgQEAKIAllbnVtIGNvbmZpZ19zY29wZSBzY29wZTsKIH07CiAKLWV4dGVybiBOT1JFVFVSTiB2b2lkIGdpdF9kaWVfY29uZmlnKGNvbnN0IGNoYXIgKmtleSwgY29uc3QgY2hhciAqZXJyLCAuLi4pIF9fYXR0cmlidXRlX18oKGZvcm1hdChwcmludGYsIDIsIDMpKSk7Ci1leHRlcm4gTk9SRVRVUk4gdm9pZCBnaXRfZGllX2NvbmZpZ19saW5lbnIoY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICpmaWxlbmFtZSwgaW50IGxpbmVucik7CisvKioKKyAqIEZpcnN0IHByaW50cyB0aGUgZXJyb3IgbWVzc2FnZSBzcGVjaWZpZWQgYnkgdGhlIGNhbGxlciBpbiBgZXJyYCBhbmQgdGhlbgorICogZGllcyBwcmludGluZyB0aGUgbGluZSBudW1iZXIgYW5kIHRoZSBmaWxlIG5hbWUgb2YgdGhlIGhpZ2hlc3QgcHJpb3JpdHkKKyAqIHZhbHVlIGZvciB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBga2V5YC4KKyAqLworTk9SRVRVUk4gdm9pZCBnaXRfZGllX2NvbmZpZyhjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKmVyciwgLi4uKSBfX2F0dHJpYnV0ZV9fKChmb3JtYXQocHJpbnRmLCAyLCAzKSkpOworCisvKioKKyAqIEhlbHBlciBmdW5jdGlvbiB3aGljaCBmb3JtYXRzIHRoZSBkaWUgZXJyb3IgbWVzc2FnZSBhY2NvcmRpbmcgdG8gdGhlCisgKiBwYXJhbWV0ZXJzIGVudGVyZWQuIFVzZWQgYnkgYGdpdF9kaWVfY29uZmlnKClgLiBJdCBjYW4gYmUgdXNlZCBieSBjYWxsZXJzCisgKiBoYW5kbGluZyBgZ2l0X2NvbmZpZ19nZXRfdmFsdWVfbXVsdGkoKWAgdG8gcHJpbnQgdGhlIGNvcnJlY3QgZXJyb3IgbWVzc2FnZQorICogZm9yIHRoZSBkZXNpcmVkIHZhbHVlLgorICovCitOT1JFVFVSTiB2b2lkIGdpdF9kaWVfY29uZmlnX2xpbmVucihjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBpbnQgbGluZW5yKTsKIAogI2RlZmluZSBMT09LVVBfQ09ORklHKG1hcHBpbmcsIHZhcikgXAogCWxvb2t1cF9jb25maWcobWFwcGluZywgQVJSQVlfU0laRShtYXBwaW5nKSwgdmFyKQpkaWZmIC0tZ2l0IGEvY29uZmlnLm1hay5kZXYgYi9jb25maWcubWFrLmRldgppbmRleCBiYmVlZmY0Li44OWIyMThkIDEwMDY0NAotLS0gYS9jb25maWcubWFrLmRldgorKysgYi9jb25maWcubWFrLmRldgpAQCAtMSw0MCArMSw0MCBAQAogaWZlcSAoJChmaWx0ZXIgbm8tZXJyb3IsJChERVZPUFRTKSksKQotQ0ZMQUdTICs9IC1XZXJyb3IKK0RFVkVMT1BFUl9DRkxBR1MgKz0gLVdlcnJvcgogZW5kaWYKIGlmbmVxICgkKGZpbHRlciBwZWRhbnRpYywkKERFVk9QVFMpKSwpCi1DRkxBR1MgKz0gLXBlZGFudGljCitERVZFTE9QRVJfQ0ZMQUdTICs9IC1wZWRhbnRpYwogIyBkb24ndCB3YXJuIGZvciBlYWNoIE5fIHVzZQotQ0ZMQUdTICs9IC1EVVNFX1BBUkVOU19BUk9VTkRfR0VUVEVYVF9OPTAKK0RFVkVMT1BFUl9DRkxBR1MgKz0gLURVU0VfUEFSRU5TX0FST1VORF9HRVRURVhUX049MAogZW5kaWYKLUNGTEFHUyArPSAtV2RlY2xhcmF0aW9uLWFmdGVyLXN0YXRlbWVudAotQ0ZMQUdTICs9IC1XZm9ybWF0LXNlY3VyaXR5Ci1DRkxBR1MgKz0gLVduby1mb3JtYXQtemVyby1sZW5ndGgKLUNGTEFHUyArPSAtV29sZC1zdHlsZS1kZWZpbml0aW9uCi1DRkxBR1MgKz0gLVdvdmVyZmxvdwotQ0ZMQUdTICs9IC1XcG9pbnRlci1hcml0aAotQ0ZMQUdTICs9IC1Xc3RyaWN0LXByb3RvdHlwZXMKLUNGTEFHUyArPSAtV3VudXNlZAotQ0ZMQUdTICs9IC1XdmxhCitERVZFTE9QRVJfQ0ZMQUdTICs9IC1XYWxsCitERVZFTE9QRVJfQ0ZMQUdTICs9IC1XZGVjbGFyYXRpb24tYWZ0ZXItc3RhdGVtZW50CitERVZFTE9QRVJfQ0ZMQUdTICs9IC1XZm9ybWF0LXNlY3VyaXR5CitERVZFTE9QRVJfQ0ZMQUdTICs9IC1Xb2xkLXN0eWxlLWRlZmluaXRpb24KK0RFVkVMT1BFUl9DRkxBR1MgKz0gLVdvdmVyZmxvdworREVWRUxPUEVSX0NGTEFHUyArPSAtV3BvaW50ZXItYXJpdGgKK0RFVkVMT1BFUl9DRkxBR1MgKz0gLVdzdHJpY3QtcHJvdG90eXBlcworREVWRUxPUEVSX0NGTEFHUyArPSAtV3VudXNlZAorREVWRUxPUEVSX0NGTEFHUyArPSAtV3ZsYQogCiBpZm5kZWYgQ09NUElMRVJfRkVBVFVSRVMKIENPTVBJTEVSX0ZFQVRVUkVTIDo9ICQoc2hlbGwgLi9kZXRlY3QtY29tcGlsZXIgJChDQykpCiBlbmRpZgogCiBpZm5lcSAoJChmaWx0ZXIgY2xhbmc0LCQoQ09NUElMRVJfRkVBVFVSRVMpKSwpCi1DRkxBR1MgKz0gLVd0YXV0b2xvZ2ljYWwtY29uc3RhbnQtb3V0LW9mLXJhbmdlLWNvbXBhcmUKK0RFVkVMT1BFUl9DRkxBR1MgKz0gLVd0YXV0b2xvZ2ljYWwtY29uc3RhbnQtb3V0LW9mLXJhbmdlLWNvbXBhcmUKIGVuZGlmCiAKIGlmbmVxICgkKG9yICQoZmlsdGVyIGdjYzYsJChDT01QSUxFUl9GRUFUVVJFUykpLCQoZmlsdGVyIGNsYW5nNCwkKENPTVBJTEVSX0ZFQVRVUkVTKSkpLCkKLUNGTEFHUyArPSAtV2V4dHJhCitERVZFTE9QRVJfQ0ZMQUdTICs9IC1XZXh0cmEKICMgaWYgYSBmdW5jdGlvbiBpcyBwdWJsaWMsIHRoZXJlIHNob3VsZCBiZSBhIHByb3RvdHlwZSBhbmQgdGhlIHJpZ2h0CiAjIGhlYWRlciBmaWxlIHNob3VsZCBiZSBpbmNsdWRlZC4gSWYgbm90LCBpdCBzaG91bGQgYmUgc3RhdGljLgotQ0ZMQUdTICs9IC1XbWlzc2luZy1wcm90b3R5cGVzCitERVZFTE9QRVJfQ0ZMQUdTICs9IC1XbWlzc2luZy1wcm90b3R5cGVzCiBpZmVxICgkKGZpbHRlciBleHRyYS1hbGwsJChERVZPUFRTKSksKQogIyBUaGVzZSBhcmUgZGlzYWJsZWQgYmVjYXVzZSB3ZSBoYXZlIHRoZXNlIGFsbCBvdmVyIHRoZSBwbGFjZS4KLUNGTEFHUyArPSAtV25vLWVtcHR5LWJvZHkKLUNGTEFHUyArPSAtV25vLW1pc3NpbmctZmllbGQtaW5pdGlhbGl6ZXJzCi1DRkxBR1MgKz0gLVduby1zaWduLWNvbXBhcmUKLUNGTEFHUyArPSAtV25vLXVudXNlZC1wYXJhbWV0ZXIKK0RFVkVMT1BFUl9DRkxBR1MgKz0gLVduby1lbXB0eS1ib2R5CitERVZFTE9QRVJfQ0ZMQUdTICs9IC1Xbm8tbWlzc2luZy1maWVsZC1pbml0aWFsaXplcnMKK0RFVkVMT1BFUl9DRkxBR1MgKz0gLVduby1zaWduLWNvbXBhcmUKK0RFVkVMT1BFUl9DRkxBR1MgKz0gLVduby11bnVzZWQtcGFyYW1ldGVyCiBlbmRpZgogZW5kaWYKIApAQCAtNDIsNiArNDIsNiBAQAogIyBub3Qgd29ydGggZml4aW5nIHNpbmNlIG5ld2VyIGNvbXBpbGVycyBjb3JyZWN0bHkgc3RvcCBjb21wbGFpbmluZwogaWZuZXEgKCQoZmlsdGVyIGdjYzQsJChDT01QSUxFUl9GRUFUVVJFUykpLCkKIGlmZXEgKCQoZmlsdGVyIGdjYzUsJChDT01QSUxFUl9GRUFUVVJFUykpLCkKLUNGTEFHUyArPSAtV25vLXVuaW5pdGlhbGl6ZWQKK0RFVkVMT1BFUl9DRkxBR1MgKz0gLVduby11bmluaXRpYWxpemVkCiBlbmRpZgogZW5kaWYKZGlmZiAtLWdpdCBhL2NvbmZpZy5tYWsudW5hbWUgYi9jb25maWcubWFrLnVuYW1lCmluZGV4IDg1YWY5ZjkuLjBhYjhlMDAgMTAwNjQ0Ci0tLSBhL2NvbmZpZy5tYWsudW5hbWUKKysrIGIvY29uZmlnLm1hay51bmFtZQpAQCAtMSw1ICsxLDkgQEAKICMgUGxhdGZvcm0gc3BlY2lmaWMgTWFrZWZpbGUgdHdlYWtzIGJhc2VkIG9uIHVuYW1lIGRldGVjdGlvbgogCisjIERlZmluZSBOT19TQUZFU0VIIGlmIHlvdSBuZWVkIE1TVkMvVmlzdWFsIFN0dWRpbyB0byBpZ25vcmUgdGhlIGxhY2sgb2YKKyMgTWljcm9zb2Z0J3MgU2FmZSBFeGNlcHRpb24gSGFuZGxpbmcgaW4gbGlicmFyaWVzIChzdWNoIGFzIHpsaWIpLgorIyBUeXBpY2FsbHkgcmVxdWlyZWQgZm9yIFZTMjAxMysvMzItYml0IGNvbXBpbGF0aW9uIG9uIFZpc3RhKyB2ZXJzaW9ucy4KKwogdW5hbWVfUyA6PSAkKHNoZWxsIHNoIC1jICd1bmFtZSAtcyAyPi9kZXYvbnVsbCB8fCBlY2hvIG5vdCcpCiB1bmFtZV9NIDo9ICQoc2hlbGwgc2ggLWMgJ3VuYW1lIC1tIDI+L2Rldi9udWxsIHx8IGVjaG8gbm90JykKIHVuYW1lX08gOj0gJChzaGVsbCBzaCAtYyAndW5hbWUgLW8gMj4vZGV2L251bGwgfHwgZWNobyBub3QnKQpAQCAtMTEsNiArMTUsMjEgQEAKIAkjIGF2b2lkIHRoZSBNaW5nVyBhbmQgQ3lnd2luIGNvbmZpZ3VyYXRpb24gc2VjdGlvbnMKIAl1bmFtZV9TIDo9IFdpbmRvd3MKIAl1bmFtZV9PIDo9IFdpbmRvd3MKKworCSMgR2VuZXJhdGUgYW5kIGluY2x1ZGUgbWFrZWZpbGUgdmFyaWFibGVzIHRoYXQgcG9pbnQgdG8gdGhlCisJIyBjdXJyZW50bHkgaW5zdGFsbGVkIHNldCBvZiBNU1ZDIGNvbW1hbmQgbGluZSB0b29scy4KK2NvbXBhdC92Y2J1aWxkL01TVkMtREVGUy1HRU46IGNvbXBhdC92Y2J1aWxkL2ZpbmRfdnNfZW52LmJhdAorCUAiJDwiIHwgdHIgJ1xcJyAvID4iJEAiCitpbmNsdWRlIGNvbXBhdC92Y2J1aWxkL01TVkMtREVGUy1HRU4KKworCSMgU2VlIGlmIHZjcGtnIGFuZCB0aGUgdmNwa2ctYnVpbGQgdmVyc2lvbnMgb2YgdGhlIHRoaXJkLXBhcnR5CisJIyBsaWJyYXJpZXMgdGhhdCB3ZSB1c2UgYXJlIGluc3RhbGxlZC4gIFdlIGluY2x1ZGUgdGhlIHJlc3VsdAorCSMgdG8gZ2V0ICQodmNwa2dfKikgdmFyaWFibGVzIGRlZmluZWQgZm9yIHRoZSBNYWtlZmlsZS4KK2lmZXEgKCwkKFNLSVBfVkNQS0cpKQorY29tcGF0L3ZjYnVpbGQvVkNQS0ctREVGUzogY29tcGF0L3ZjYnVpbGQvdmNwa2dfaW5zdGFsbC5iYXQKKwlAIiQ8IgoraW5jbHVkZSBjb21wYXQvdmNidWlsZC9WQ1BLRy1ERUZTCitlbmRpZgogZW5kaWYKIAogIyBXZSBjaG9vc2UgdG8gYXZvaWQgImlmIC4uIGVsc2UgaWYgLi4gZWxzZSAuLiBlbmRpZiBlbmRpZiIKQEAgLTExNCw2ICsxMzMsOCBAQAogCUhBVkVfQlNEX1NZU0NUTCA9IFllc1BsZWFzZQogCUZSRUFEX1JFQURTX0RJUkVDVE9SSUVTID0gVW5mb3J0dW5hdGVseVllcwogCUhBVkVfTlNfR0VUX0VYRUNVVEFCTEVfUEFUSCA9IFllc1BsZWFzZQorCUJBU0lDX0NGTEFHUyArPSAtSS91c3IvbG9jYWwvaW5jbHVkZQorCUJBU0lDX0xERkxBR1MgKz0gLUwvdXNyL2xvY2FsL2xpYgogZW5kaWYKIGlmZXEgKCQodW5hbWVfUyksU3VuT1MpCiAJTkVFRFNfU09DS0VUID0gWWVzUGxlYXNlCkBAIC0xODcsNyArMjA4LDcgQEAKIAlVTlJFTElBQkxFX0ZTVEFUID0gVW5mb3J0dW5hdGVseVllcwogCU9CSkVDVF9DUkVBVElPTl9VU0VTX1JFTkFNRVMgPSBVbmZvcnR1bmF0ZWx5TmVlZHNUbwogCU1NQVBfUFJFVkVOVFNfREVMRVRFID0gVW5mb3J0dW5hdGVseVllcwotCUNPTVBBVF9PQkpTICs9IGNvbXBhdC9jeWd3aW4ubworCUNPTVBBVF9PQkpTICs9IGNvbXBhdC93aW4zMi9wYXRoLXV0aWxzLm8KIAlGUkVBRF9SRUFEU19ESVJFQ1RPUklFUyA9IFVuZm9ydHVuYXRlbHlZZXMKIGVuZGlmCiBpZmVxICgkKHVuYW1lX1MpLEZyZWVCU0QpCkBAIC0yMjEsNiArMjQyLDcgQEAKIAlIQVZFX0JTRF9LRVJOX1BST0NfU1lTQ1RMID0gWWVzUGxlYXNlCiAJUEFHRVJfRU5WID0gTEVTUz1GUlggTFY9LWMgTU9SRT1GUlgKIAlGUkVBRF9SRUFEU19ESVJFQ1RPUklFUyA9IFVuZm9ydHVuYXRlbHlZZXMKKwlGSUxFTk9fSVNfQV9NQUNSTyA9IFVuZm9ydHVuYXRlbHlZZXMKIGVuZGlmCiBpZmVxICgkKHVuYW1lX1MpLE9wZW5CU0QpCiAJTk9fU1RSQ0FTRVNUUiA9IFllc1BsZWFzZQpAQCAtMjMzLDYgKzI1NSw4IEBACiAJSEFWRV9CU0RfU1lTQ1RMID0gWWVzUGxlYXNlCiAJSEFWRV9CU0RfS0VSTl9QUk9DX1NZU0NUTCA9IFllc1BsZWFzZQogCVBST0NGU19FWEVDVVRBQkxFX1BBVEggPSAvcHJvYy9jdXJwcm9jL2ZpbGUKKwlGUkVBRF9SRUFEU19ESVJFQ1RPUklFUyA9IFVuZm9ydHVuYXRlbHlZZXMKKwlGSUxFTk9fSVNfQV9NQUNSTyA9IFVuZm9ydHVuYXRlbHlZZXMKIGVuZGlmCiBpZmVxICgkKHVuYW1lX1MpLE1pckJTRCkKIAlOT19TVFJDQVNFU1RSID0gWWVzUGxlYXNlCkBAIC0yNjYsNiArMjkwLDggQEAKIAlJTlRFUk5BTF9RU09SVCA9IFVuZm9ydHVuYXRlbHlZZXMKIAlORUVEU19MSUJJQ09OViA9IFllc1BsZWFzZQogCUJBU0lDX0NGTEFHUyArPSAtRF9MQVJHRV9GSUxFUworCUZJTEVOT19JU19BX01BQ1JPID0gVW5mb3J0dW5hdGVseVllcworCU5FRURfQUNDRVNTX1JPT1RfSEFORExFUiA9IFVuZm9ydHVuYXRlbHlZZXMKIAlpZmVxICgkKHNoZWxsIGV4cHIgIiQodW5hbWVfVikiIDogJ1sxMjM0XScpLDEpCiAJCU5PX1BUSFJFQURTID0gWWVzUGxlYXNlCiAJZWxzZQpAQCAtMzQ5LDYgKzM3NSwxOSBAQAogaWZlcSAoJCh1bmFtZV9TKSxXaW5kb3dzKQogCUdJVF9WRVJTSU9OIDo9ICQoR0lUX1ZFUlNJT04pLk1TVkMKIAlwYXRoc2VwID0gOworCSMgQXNzdW1lIHRoYXQgdGhpcyBpcyBidWlsdCBpbiBHaXQgZm9yIFdpbmRvd3MnIFNESworCWlmZXEgKE1JTkdXMzIsJChNU1lTVEVNKSkKKwkJcHJlZml4ID0gL21pbmd3MzIKKwllbHNlCisJCXByZWZpeCA9IC9taW5ndzY0CisJZW5kaWYKKwkjIFByZXBlbmQgTVNWQyA2NC1iaXQgdG9vbC1jaGFpbiB0byBQQVRILgorCSMKKwkjIEEgcmVndWxhciBHaXQgQmFzaCAqZG9lcyBub3QqIGhhdmUgY2wuZXhlIGluIGl0cyAkUEFUSC4gQXMgdGhlcmUgaXMgYQorCSMgbGluay5leGUgbmV4dCB0bywgYW5kIHJlcXVpcmVkIGJ5LCBjbC5leGUsIHdlIGhhdmUgdG8gcHJlcGVuZCB0aGlzCisJIyBvbnRvIHRoZSBleGlzdGluZyAkUEFUSC4KKwkjCisJU0FORV9UT09MX1BBVEggPz0gJChtc3ZjX2Jpbl9kaXJfbXN5cykKIAlIQVZFX0FMTE9DQV9IID0gWWVzUGxlYXNlCiAJTk9fUFJFQUQgPSBZZXNQbGVhc2UKIAlORUVEU19DUllQVE9fV0lUSF9TU0wgPSBZZXNQbGVhc2UKQEAgLTM2MSwxMSArNDAwLDE0IEBACiAJTk9fU1RSQ0FTRVNUUiA9IFllc1BsZWFzZQogCU5PX1NUUkxDUFkgPSBZZXNQbGVhc2UKIAlOT19NRU1NRU0gPSBZZXNQbGVhc2UKLQkjIE5FRURTX0xJQklDT05WID0gWWVzUGxlYXNlCi0JTk9fSUNPTlYgPSBZZXNQbGVhc2UKKwlORUVEU19MSUJJQ09OViA9IFllc1BsZWFzZQogCU5PX1NUUlRPVU1BWCA9IFllc1BsZWFzZQogCU5PX01LRFRFTVAgPSBZZXNQbGVhc2UKLQlTTlBSSU5URl9SRVRVUk5TX0JPR1VTID0gWWVzUGxlYXNlCisJTk9fSU5UVFlQRVNfSCA9IFllc1BsZWFzZQorCSMgVlMyMDE1IHdpdGggVUNSVCBjbGFpbXMgdGhhdCBzbnByaW50ZiBhbmQgZnJpZW5kcyBhcmUgQzk5IGNvbXBsaWFudCwKKwkjIHNvIHdlIGRvbid0IG5lZWQgdGhpczoKKwkjCisJIyAgIFNOUFJJTlRGX1JFVFVSTlNfQk9HVVMgPSBZZXNQbGVhc2UKIAlOT19TVk5fVEVTVFMgPSBZZXNQbGVhc2UKIAlSVU5USU1FX1BSRUZJWCA9IFllc1BsZWFzZQogCUhBVkVfV1BHTVBUUiA9IFllc1dlRG8KQEAgLTM3OCw3ICs0MjAsNiBAQAogCU5PX1JFR0VYID0gWWVzUGxlYXNlCiAJTk9fR0VUVEVYVCA9IFllc1BsZWFzZQogCU5PX1BZVEhPTiA9IFllc1BsZWFzZQotCUJMS19TSEExID0gWWVzUGxlYXNlCiAJRVRBR1NfVEFSR0VUID0gRVRBR1MKIAlOT19QT1NJWF9HT09ESUVTID0gVW5mb3J0dW5hdGVseVllcwogCU5BVElWRV9DUkxGID0gWWVzUGxlYXNlCkBAIC0zODcsMjMgKzQyOCw1MSBAQAogCUNDID0gY29tcGF0L3ZjYnVpbGQvc2NyaXB0cy9jbGluay5wbAogCUFSID0gY29tcGF0L3ZjYnVpbGQvc2NyaXB0cy9saWIucGwKIAlDRkxBR1MgPQotCUJBU0lDX0NGTEFHUyA9IC1ub2xvZ28gLUkuIC1JLi4vemxpYiAtSWNvbXBhdC92Y2J1aWxkIC1JY29tcGF0L3ZjYnVpbGQvaW5jbHVkZSAtRFdJTjMyIC1EX0NPTlNPTEUgLURIQVZFX1NUUklOR19IIC1EX0NSVF9TRUNVUkVfTk9fV0FSTklOR1MgLURfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFCisJQkFTSUNfQ0ZMQUdTID0gLW5vbG9nbyAtSS4gLUljb21wYXQvdmNidWlsZC9pbmNsdWRlIC1EV0lOMzIgLURfQ09OU09MRSAtREhBVkVfU1RSSU5HX0ggLURfQ1JUX1NFQ1VSRV9OT19XQVJOSU5HUyAtRF9DUlRfTk9OU1REQ19OT19ERVBSRUNBVEUKIAlDT01QQVRfT0JKUyA9IGNvbXBhdC9tc3ZjLm8gY29tcGF0L3dpbmFuc2kubyBcCisJCWNvbXBhdC93aW4zMi9wYXRoLXV0aWxzLm8gXAogCQljb21wYXQvd2luMzIvcHRocmVhZC5vIGNvbXBhdC93aW4zMi9zeXNsb2cubyBcCisJCWNvbXBhdC93aW4zMi90cmFjZTJfd2luMzJfcHJvY2Vzc19pbmZvLm8gXAogCQljb21wYXQvd2luMzIvZGlyZW50Lm8KLQlDT01QQVRfQ0ZMQUdTID0gLURfX1VTRV9NSU5HV19BQ0NFU1MgLUROT0dESSAtREhBVkVfU1RSSU5HX0ggLUljb21wYXQgLUljb21wYXQvcmVnZXggLUljb21wYXQvd2luMzIgLURTVFJJUF9FWFRFTlNJT049XCIuZXhlXCIKLQlCQVNJQ19MREZMQUdTID0gLUlHTk9SRTo0MjE3IC1JR05PUkU6NDA0OSAtTk9MT0dPIC1TVUJTWVNURU06Q09OU09MRQotCUVYVExJQlMgPSB1c2VyMzIubGliIGFkdmFwaTMyLmxpYiBzaGVsbDMyLmxpYiB3aW5pbmV0LmxpYiB3czJfMzIubGliIGludmFsaWRjb250aW51ZS5vYmoKKwlDT01QQVRfQ0ZMQUdTID0gLURfX1VTRV9NSU5HV19BQ0NFU1MgLURERVRFQ1RfTVNZU19UVFkgLUROT0dESSAtREhBVkVfU1RSSU5HX0ggLUljb21wYXQgLUljb21wYXQvcmVnZXggLUljb21wYXQvd2luMzIgLURTVFJJUF9FWFRFTlNJT049XCIuZXhlXCIKKwlCQVNJQ19MREZMQUdTID0gLUlHTk9SRTo0MjE3IC1JR05PUkU6NDA0OSAtTk9MT0dPIC1FTlRSWTp3bWFpbkNSVFN0YXJ0dXAgLVNVQlNZU1RFTTpDT05TT0xFCisJIyBpbnZhbGlkY29udGludWUub2JqIGFsbG93cyBHaXQncyBzb3VyY2UgY29kZSB0byBjbG9zZSB0aGUgc2FtZSBmaWxlCisJIyBoYW5kbGUgdHdpY2UsIG9yIHRvIGFjY2VzcyB0aGUgb3NmaGFuZGxlIG9mIGFuIGFscmVhZHktY2xvc2VkIHN0ZG91dAorCSMgU2VlIGh0dHBzOi8vbXNkbi5taWNyb3NvZnQuY29tL2VuLXVzL2xpYnJhcnkvbXMyMzUzMzAuYXNweAorCUVYVExJQlMgPSB1c2VyMzIubGliIGFkdmFwaTMyLmxpYiBzaGVsbDMyLmxpYiB3aW5pbmV0LmxpYiB3czJfMzIubGliIGludmFsaWRjb250aW51ZS5vYmoga2VybmVsMzIubGliIG50ZGxsLmxpYgogCVBUSFJFQURfTElCUyA9CiAJbGliID0KKwlCQVNJQ19DRkxBR1MgKz0gJCh2Y3BrZ19pbmMpICQoc2RrX2luY2x1ZGVzKSAkKG1zdmNfaW5jbHVkZXMpCiBpZm5kZWYgREVCVUcKLQlCQVNJQ19DRkxBR1MgKz0gLUdMIC1PcyAtTUQKLQlCQVNJQ19MREZMQUdTICs9IC1MVENHCisJQkFTSUNfQ0ZMQUdTICs9ICQodmNwa2dfcmVsX2xpYikKK2Vsc2UKKwlCQVNJQ19DRkxBR1MgKz0gJCh2Y3BrZ19kYmdfbGliKQorZW5kaWYKKwlCQVNJQ19DRkxBR1MgKz0gJChzZGtfbGlicykgJChtc3ZjX2xpYnMpCisKK2lmbmVxICgkKFVTRV9NU1ZDX0NSVERCRyksKQorCSMgT3B0aW9uYWxseSBlbmFibGUgbWVtb3J5IGxlYWsgcmVwb3J0aW5nLgorCUJBU0lDX0NGTEFHUyArPSAtRFVTRV9NU1ZDX0NSVERCRworZW5kaWYKKwkjIEFsd2F5cyBnaXZlICItWmkiIHRvIHRoZSBjb21waWxlciBhbmQgIi1kZWJ1ZyIgdG8gbGlua2VyIChldmVuIGluCisJIyByZWxlYXNlIG1vZGUpIHRvIGZvcmNlIGEgUERCIHRvIGJlIGdlbmVyYXRlZCAobGlrZSBSZWxXaXRoRGViSW5mbykuCisJQkFTSUNfQ0ZMQUdTICs9IC1aaQorCUJBU0lDX0xERkxBR1MgKz0gLWRlYnVnIC1aZgorCitpZmRlZiBOT19TQUZFU0VICisJTERGTEFHUyArPSAtU0FGRVNFSDpOTworZW5kaWYKKworaWZuZGVmIERFQlVHCisJQkFTSUNfQ0ZMQUdTICs9IC1HTCAtR3kgLU8yIC1PeS0gLU1EIC1ETkRFQlVHCisJQkFTSUNfTERGTEFHUyArPSAtcmVsZWFzZSAtTFRDRyAvT1BUOlJFRiAvT1BUOklDRiAvSU5DUkVNRU5UQUw6Tk8gL0RFQlVHVFlQRTpDVixGSVhVUAogCUFSICs9IC1MVENHCiBlbHNlCi0JQkFTSUNfQ0ZMQUdTICs9IC1aaSAtTURkCisJQkFTSUNfQ0ZMQUdTICs9IC1NRGQgLURERUJVRyAtRF9ERUJVRwogZW5kaWYKIAlYID0gLmV4ZQorCitjb21wYXQvbXN2Yy5vOiBjb21wYXQvbXN2Yy5jIGNvbXBhdC9taW5ndy5jIEdJVC1DRkxBR1MKIGVuZGlmCiBpZmVxICgkKHVuYW1lX1MpLEludGVyaXgpCiAJTk9fSU5JVEdST1VQUyA9IFllc1BsZWFzZQpAQCAtNDQwLDI2ICs1MDksNDMgQEAKIAkjIElOTElORT0nJyB3b3VsZCBqdXN0IHJlcGxhY2Ugb25lIHNldCBvZiB3YXJuaW5ncyB3aXRoIGFub3RoZXIgYW5kCiAJIyBzdGlsbCBub3QgY29tcGlsZSBpbiBjODkgbW9kZSwgZHVlIHRvIG5vbi1jb25zdCBhcnJheSBpbml0aWFsaXphdGlvbnMuCiAJQ0MgPSBjYyAtYzk5CisJIyBCdWlsZCBkb3duLXJldiBjb21wYXRpYmxlIG9iamVjdHMgdGhhdCBkb24ndCB1c2Ugb3VyIG5ldyBnZXRvcHRfbG9uZy4KKwlpZmVxICgkKHVuYW1lX1IpLiQodW5hbWVfViksSjA2LjIxKQorCQlDQyArPSAtV1JWVT1KMDYuMjAKKwllbmRpZgorCWlmZXEgKCQodW5hbWVfUikuJCh1bmFtZV9WKSxMMTcuMDIpCisJCUNDICs9IC1XUlZVPUwxNi4wNQorCWVuZGlmCiAJIyBEaXNhYmxlIGFsbCBvcHRpbWl6YXRpb24sIHNlZW1zIHRvIHJlc3VsdCBpbiBiYWQgY29kZSwgd2l0aCAtTyBvciAtTzIKIAkjIG9yIGV2ZW4gLU8xIChkZWZhdWx0KSwgL3Vzci9sb2NhbC9saWJleGVjL2dpdC1jb3JlL2dpdC1wYWNrLW9iamVjdHMKIAkjIGFiZW5kcyBvbiAiZ2l0IHB1c2giLiBOZWVkcyBtb3JlIGludmVzdGlnYXRpb24uCi0JQ0ZMQUdTID0gLWcgLU8wCisJQ0ZMQUdTID0gLWcgLU8wIC1XaW5saW5lCiAJIyBXZSdkIHdhbnQgaXQgdG8gYmUgaGVyZS4KIAlwcmVmaXggPSAvdXNyL2xvY2FsCi0JIyBPdXIncyBhcmUgaW4gJHtwcmVmaXh9L2JpbiAocGVybCBtaWdodCBhbHNvIGJlIGluIC91c3IvYmluL3BlcmwpLgotCVBFUkxfUEFUSCA9ICR7cHJlZml4fS9iaW4vcGVybAotCVBZVEhPTl9QQVRIID0gJHtwcmVmaXh9L2Jpbi9weXRob24KLQorCSMgcGVybCBhbmQgcHl0aG9uIG11c3QgYmUgaW4gL3Vzci9iaW4gb24gTm9uU3RvcCAtIHN1cHBsaWVkIGJ5IEhQRQorCSMgd2l0aCBvcGVyYXRpbmcgc3lzdGVtIGluIHRoYXQgbWFuYWdlZCBkaXJlY3RvcnkuCisJUEVSTF9QQVRIID0gL3Vzci9iaW4vcGVybAorCVBZVEhPTl9QQVRIID0gL3Vzci9iaW4vcHl0aG9uCisJIyBUaGUgY3VycmVudCAvdXNyL2NvcmV1dGlscy9ybSBhdCBsb3dlc3Qgc3VwcG9ydCBsZXZlbCBkb2VzIG5vdCB3b3JrCisJIyB3aXRoIHRoZSBnaXQgdGVzdCBzdHJ1Y3R1cmUuIExvbmcgcGF0aHMgYXMgaW4KKwkjICd0cmFzaCBkaXJlY3RvcnkuLi4nIGNhdXNlIHJtIHRvIHRlcm1pbmF0ZSBwcmVtYXR1cmVseSB3aXRob3V0IGZ1bGx5CisJIyByZW1vdmluZyB0aGUgZGlyZWN0b3J5IGF0IE9TIHJlbGVhc2VzIEowNi4yMSBhbmQgTDE3LjAyLgorCSMgRGVmYXVsdCB0byB0aGUgb2xkZXIgcm0gdW50aWwgdGhvc2UgdHdvIHJlbGVhc2VzIGFyZSBkZXByZWNhdGVkLgorCVJNID0gL2Jpbi9ybSAtZgogCSMgQXMgZGV0ZWN0ZWQgYnkgJy4vY29uZmlndXJlJy4KIAkjIE1pc3NkZXRlY3RlZCwgaGVuY2UgY29tbWVudGVkIG91dCwgc2VlIGJlbG93LgogCSNOT19DVVJMID0gWWVzUGxlYXNlCiAJIyBBZGRlZCBtYW51YWxseSwgc2VlIGFib3ZlLgorCU5FRURTX1NTTF9XSVRIX0NVUkwgPSBZZXNQbGVhc2UKKwlORUVEU19DUllQVE9fV0lUSF9TU0wgPSBZZXNQbGVhc2UKKwlIQVZFX0RFVl9UVFkgPSBZZXNQbGVhc2UKIAlIQVZFX0xJQkNIQVJTRVRfSCA9IFllc1BsZWFzZQogCUhBVkVfU1RSSU5HU19IID0gWWVzUGxlYXNlCiAJTkVFRFNfTElCSUNPTlYgPSBZZXNQbGVhc2UKIAlORUVEU19MSUJJTlRMX0JFRk9SRV9MSUJJQ09OViA9IFllc1BsZWFzZQogCU5PX1NZU19TRUxFQ1RfSCA9IFVuZm9ydHVuYXRlbHlZZXMKIAlOT19EX1RZUEVfSU5fRElSRU5UID0gWWVzUGxlYXNlCisJTk9fR0VUVEVYVCA9IFllc1BsZWFzZQogCU5PX0hTVFJFUlJPUiA9IFllc1BsZWFzZQogCU5PX1NUUkNBU0VTVFIgPSBZZXNQbGVhc2UKIAlOT19NRU1NRU0gPSBZZXNQbGVhc2UKQEAgLTQ2OSw4ICs1NTUsOSBAQAogCU5PX01LRFRFTVAgPSBZZXNQbGVhc2UKIAkjIEN1cnJlbnRseSBsaWJpY29udi0xLjkuMS4KIAlPTERfSUNPTlYgPSBVbmZvcnR1bmF0ZWx5WWVzCi0JTk9fUkVHRVggPSBZZXNQbGVhc2UKKwlOT19SRUdFWCA9IE5lZWRzU3RhcnRFbmQKIAlOT19QVEhSRUFEUyA9IFVuZm9ydHVuYXRlbHlZZXMKKwlGUkVBRF9SRUFEU19ESVJFQ1RPUklFUyA9IFVuZm9ydHVuYXRlbHlZZXMKIAogCSMgTm90IGRldGVjdGVkIChub3IgY2hlY2tlZCBmb3IpIGJ5ICcuL2NvbmZpZ3VyZScuCiAJIyBXZSBkb24ndCBoYXZlIFNBX1JFU1RBUlQgb24gTm9uU3RvcCwgdW5mb3J0dW5hbGV0eS4KQEAgLTQ4OCw5ICs1NzUsNyBAQAogCSMgUkZFIDEwLTEyMDkxMi00NjkzIHN1Ym1pdHRlZCB0byBIUCBOb25TdG9wIGRldmVsb3BtZW50LgogCU5PX1NFVElUSU1FUiA9IFVuZm9ydHVuYXRlbHlZZXMKIAlTQU5FX1RPT0xfUEFUSCA9IC91c3IvY29yZXV0aWxzL2JpbjovdXNyL2xvY2FsL2JpbgotCVNIRUxMX1BBVEggPSAvdXNyL2xvY2FsL2Jpbi9iYXNoCi0JIyBhcyBvZiBIMDYuMjUvSjA2LjE0LCB3ZSBtaWdodCBiZXR0ZXIgdXNlIHRoaXMKLQkjU0hFTExfUEFUSCA9IC91c3IvY29yZXV0aWxzL2Jpbi9iYXNoCisJU0hFTExfUEFUSCA9IC91c3IvY29yZXV0aWxzL2Jpbi9iYXNoCiBlbmRpZgogaWZuZXEgKCwkKGZpbmRzdHJpbmcgTUlOR1csJCh1bmFtZV9TKSkpCiAJcGF0aHNlcCA9IDsKQEAgLTUwOSw3ICs1OTQsNiBAQAogCU5PX1NUUlRPVU1BWCA9IFllc1BsZWFzZQogCU5PX01LRFRFTVAgPSBZZXNQbGVhc2UKIAlOT19TVk5fVEVTVFMgPSBZZXNQbGVhc2UKLQlOT19QRVJMX01BS0VNQUtFUiA9IFllc1BsZWFzZQogCVJVTlRJTUVfUFJFRklYID0gWWVzUGxlYXNlCiAJSEFWRV9XUEdNUFRSID0gWWVzV2VEbwogCU5PX1NUX0JMT0NLU19JTl9TVFJVQ1RfU1RBVCA9IFllc1BsZWFzZQpAQCAtNTIzLDkgKzYwNywxMiBAQAogCUVUQUdTX1RBUkdFVCA9IEVUQUdTCiAJTk9fUE9TSVhfR09PRElFUyA9IFVuZm9ydHVuYXRlbHlZZXMKIAlERUZBVUxUX0hFTFBfRk9STUFUID0gaHRtbAorCUJBU0lDX0xERkxBR1MgKz0gLW11bmljb2RlCiAJQ09NUEFUX0NGTEFHUyArPSAtRE5PR0RJIC1JY29tcGF0IC1JY29tcGF0L3dpbjMyCiAJQ09NUEFUX0NGTEFHUyArPSAtRFNUUklQX0VYVEVOU0lPTj1cIi5leGVcIgogCUNPTVBBVF9PQkpTICs9IGNvbXBhdC9taW5ndy5vIGNvbXBhdC93aW5hbnNpLm8gXAorCQljb21wYXQvd2luMzIvdHJhY2UyX3dpbjMyX3Byb2Nlc3NfaW5mby5vIFwKKwkJY29tcGF0L3dpbjMyL3BhdGgtdXRpbHMubyBcCiAJCWNvbXBhdC93aW4zMi9wdGhyZWFkLm8gY29tcGF0L3dpbjMyL3N5c2xvZy5vIFwKIAkJY29tcGF0L3dpbjMyL2RpcmVudC5vCiAJQkFTSUNfQ0ZMQUdTICs9IC1EV0lOMzIKQEAgLTUzNSw3ICs2MjIsNiBAQAogCVJDID0gd2luZHJlcyAtTyBjb2ZmCiAJTkFUSVZFX0NSTEYgPSBZZXNQbGVhc2UKIAlYID0gLmV4ZQotCVNQQVJTRV9GTEFHUyA9IC1Xbm8tb25lLWJpdC1zaWduZWQtYml0ZmllbGQKIGlmbmVxICgsJCh3aWxkY2FyZCAuLi9USElTX0lTX01TWVNHSVQpKQogCWh0bWxkaXIgPSBkb2MvZ2l0L2h0bWwvCiAJcHJlZml4ID0KQEAgLTU0NSwyMiArNjMxLDMzIEBACiAJSU5URVJOQUxfUVNPUlQgPSBZZXNQbGVhc2UKIAlIQVZFX0xJQkNIQVJTRVRfSCA9IFllc1BsZWFzZQogCU5PX0dFVFRFWFQgPSBZZXNQbGVhc2UKLQlDT01QQVRfQ0xGQUdTICs9IC1EX19VU0VfTUlOR1dfQUNDRVNTCisJQ09NUEFUX0NGTEFHUyArPSAtRF9fVVNFX01JTkdXX0FDQ0VTUwogZWxzZQotCWlmZXEgKCQoc2hlbGwgZXhwciAiJCh1bmFtZV9SKSIgOiAnMlwuJyksMikKKwlpZm5lcSAoJChzaGVsbCBleHByICIkKHVuYW1lX1IpIiA6ICcxXC4nKSwyKQogCQkjIE1TeXMyCiAJCXByZWZpeCA9IC91c3IvCisJCSMgRW5hYmxlIERFUAorCQlCQVNJQ19MREZMQUdTICs9IC1XbCwtLW54Y29tcGF0CisJCSMgRW5hYmxlIEFTTFIgKHVubGVzcyBkZWJ1Z2dpbmcpCisJCWlmbmVxICgsJChmaW5kc3RyaW5nIC1PLCQoZmlsdGVyLW91dCAtTzAgLU9nLCQoQ0ZMQUdTKSkpKQorCQkJQkFTSUNfTERGTEFHUyArPSAtV2wsLS1keW5hbWljYmFzZQorCQllbmRpZgogCQlpZmVxIChNSU5HVzMyLCQoTVNZU1RFTSkpCiAJCQlwcmVmaXggPSAvbWluZ3czMgorCQkJSE9TVF9DUFUgPSBpNjg2CisJCQlCQVNJQ19MREZMQUdTICs9IC1XbCwtLXBpYy1leGVjdXRhYmxlLC1lLF9tYWluQ1JUU3RhcnR1cAogCQllbmRpZgogCQlpZmVxIChNSU5HVzY0LCQoTVNZU1RFTSkpCiAJCQlwcmVmaXggPSAvbWluZ3c2NAorCQkJSE9TVF9DUFUgPSB4ODZfNjQKKwkJCUJBU0lDX0xERkxBR1MgKz0gLVdsLC0tcGljLWV4ZWN1dGFibGUsLWUsbWFpbkNSVFN0YXJ0dXAKIAkJZWxzZQogCQkJQ09NUEFUX0NGTEFHUyArPSAtRF9VU0VfMzJCSVRfVElNRV9UCiAJCQlCQVNJQ19MREZMQUdTICs9IC1XbCwtLWxhcmdlLWFkZHJlc3MtYXdhcmUKIAkJZW5kaWYKIAkJQ0MgPSBnY2MKLQkJQ09NUEFUX0NGTEFHUyArPSAtRF9fVVNFX01JTkdXX0FOU0lfU1RESU89MCAtRERFVEVDVF9NU1lTX1RUWQorCQlDT01QQVRfQ0ZMQUdTICs9IC1EX19VU0VfTUlOR1dfQU5TSV9TVERJTz0wIC1EREVURUNUX01TWVNfVFRZIFwKKwkJCS1mc3RhY2stcHJvdGVjdG9yLXN0cm9uZwogCQlFWFRMSUJTICs9IC1sbnRkbGwKIAkJSU5TVEFMTCA9IC9iaW4vaW5zdGFsbAogCQlOT19SX1RPX0dDQ19MSU5LRVIgPSBZZXNQbGVhc2UKQEAgLTU5MywzICs2OTAsODQgQEAKIAlOT19TVFJDQVNFU1RSID0gWWVzUGxlYXNlCiAJTk9fU1RSTENQWSA9IFllc1BsZWFzZQogZW5kaWYKKwordmN4cHJvajoKKwkjIFJlcXVpcmUgY2xlYW4gd29yayB0cmVlCisJZ2l0IHVwZGF0ZS1pbmRleCAtcSAtLXJlZnJlc2ggJiYgXAorCWdpdCBkaWZmLWZpbGVzIC0tcXVpZXQgJiYgXAorCWdpdCBkaWZmLWluZGV4IC0tY2FjaGVkIC0tcXVpZXQgSEVBRCAtLQorCisJIyBNYWtlIC52Y3hwcm9qIGZpbGVzIGFuZCBhZGQgdGhlbQorCXVuc2V0IFFVSUVUX0dFTiBRVUlFVF9CVUlMVF9JTjsgXAorCXBlcmwgY29udHJpYi9idWlsZHN5c3RlbXMvZ2VuZXJhdGUgLWcgVmN4cHJvagorCWdpdCBhZGQgLWYgZ2l0LnNsbiB7KiwqL2xpYix0L2hlbHBlci8qfS8qLnZjeHByb2oKKworCSMgR2VuZXJhdGUgdGhlIExpbmtPckNvcHlCdWlsdGlucy50YXJnZXRzIGFuZCBMaW5rT3JDb3B5UmVtb3RlSHR0cC50YXJnZXRzIGZpbGUKKwkoZWNobyAnPFByb2plY3QgeG1sbnM9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vZGV2ZWxvcGVyL21zYnVpbGQvMjAwMyI+JyAmJiBcCisJIGVjaG8gJyAgPFRhcmdldCBOYW1lPSJDb3B5QnVpbHRpbnNfQWZ0ZXJCdWlsZCIgQWZ0ZXJUYXJnZXRzPSJBZnRlckJ1aWxkIj4nICYmIFwKKwkgZm9yIG5hbWUgaW4gJChCVUlMVF9JTlMpO1wKKwkgZG8gXAorCSAgIGVjaG8gJyAgICA8Q29weSBTb3VyY2VGaWxlcz0iJCQoT3V0RGlyKVxnaXQuZXhlIiBEZXN0aW5hdGlvbkZpbGVzPSIkJChPdXREaXIpXCciJCRuYW1lIiciIFNraXBVbmNoYW5nZWRGaWxlcz0idHJ1ZSIgVXNlSGFyZGxpbmtzSWZQb3NzaWJsZT0idHJ1ZSIgLz4nOyBcCisJIGRvbmUgJiYgXAorCSBlY2hvICcgIDwvVGFyZ2V0PicgJiYgXAorCSBlY2hvICc8L1Byb2plY3Q+JykgPmdpdC9MaW5rT3JDb3B5QnVpbHRpbnMudGFyZ2V0cworCShlY2hvICc8UHJvamVjdCB4bWxucz0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9kZXZlbG9wZXIvbXNidWlsZC8yMDAzIj4nICYmIFwKKwkgZWNobyAnICA8VGFyZ2V0IE5hbWU9IkNvcHlCdWlsdGluc19BZnRlckJ1aWxkIiBBZnRlclRhcmdldHM9IkFmdGVyQnVpbGQiPicgJiYgXAorCSBmb3IgbmFtZSBpbiAkKFJFTU9URV9DVVJMX0FMSUFTRVMpOyBcCisJIGRvIFwKKwkgICBlY2hvICcgICAgPENvcHkgU291cmNlRmlsZXM9IiQkKE91dERpcilcJyIkKFJFTU9URV9DVVJMX1BSSU1BUlkpIiciIERlc3RpbmF0aW9uRmlsZXM9IiQkKE91dERpcilcJyIkJG5hbWUiJyIgU2tpcFVuY2hhbmdlZEZpbGVzPSJ0cnVlIiBVc2VIYXJkbGlua3NJZlBvc3NpYmxlPSJ0cnVlIiAvPic7IFwKKwkgZG9uZSAmJiBcCisJIGVjaG8gJyAgPC9UYXJnZXQ+JyAmJiBcCisJIGVjaG8gJzwvUHJvamVjdD4nKSA+Z2l0LXJlbW90ZS1odHRwL0xpbmtPckNvcHlSZW1vdGVIdHRwLnRhcmdldHMKKwlnaXQgYWRkIC1mIGdpdC9MaW5rT3JDb3B5QnVpbHRpbnMudGFyZ2V0cyBnaXQtcmVtb3RlLWh0dHAvTGlua09yQ29weVJlbW90ZUh0dHAudGFyZ2V0cworCisJIyBBZGQgY29tbWFuZC1saXN0LmgKKwkkKE1BS0UpIE1TVkM9MSBTS0lQX1ZDUEtHPTEgcHJlZml4PS9taW5ndzY0IGNvbW1hbmQtbGlzdC5oCisJZ2l0IGFkZCAtZiBjb21tYW5kLWxpc3QuaAorCisJIyBBZGQgc2NyaXB0cworCXJtIC1mIHBlcmwvcGVybC5tYWsKKwkkKE1BS0UpIE1TVkM9MSBTS0lQX1ZDUEtHPTEgcHJlZml4PS9taW5ndzY0ICQoU0NSSVBUX0xJQikgJChTQ1JJUFRTKQorCSMgU3RyaXAgb3V0IHRoZSBzYW5lIHRvb2wgcGF0aCwgbmVlZGVkIG9ubHkgZm9yIGJ1aWxkaW5nCisJc2VkIC1pICcvXmdpdF9icm9rZW5fcGF0aF9maXggIi4qL2QnIGdpdC1zaC1zZXR1cAorCWdpdCBhZGQgLWYgJChTQ1JJUFRfTElCKSAkKFNDUklQVFMpCisKKwkjIEFkZCBQZXJsIG1vZHVsZQorCSQoTUFLRSkgJChMSUJfUEVSTF9HRU4pCisJZ2l0IGFkZCAtZiBwZXJsL2J1aWxkCisKKwkjIEFkZCBiaW4td3JhcHBlcnMsIGZvciB0ZXN0aW5nCisJcm0gLXJmIGJpbi13cmFwcGVycy8KKwkkKE1BS0UpIE1TVkM9MSBTS0lQX1ZDUEtHPTEgcHJlZml4PS9taW5ndzY0ICQodGVzdF9iaW5kaXJfcHJvZ3JhbXMpCisJIyBFbnN1cmUgdGhhdCB0aGUgR0lUX0VYRUNfUEFUSCBpcyBhIFVuaXgteSBvbmUsIGFuZCB0aGF0IHRoZSBhYnNvbHV0ZQorCSMgcGF0aCBvZiB0aGUgcmVwb3NpdG9yeSBpcyBub3QgaGFyZC1jb2RlZCAoR0lUX0VYRUNfUEFUSCB3aWxsIGJlIHNldAorCSMgYnkgdGVzdC1saWIuc2ggYWNjb3JkaW5nIHRvIHRoZSBjdXJyZW50IHNldHVwKQorCXNlZCAtaSAtZSAncy9eXChHSVRfRVhFQ19QQVRIXCk9LiovdGVzdCAtbiAiJCR7XDEjIyo6Kn0iIHx8XAorCQkJXDE9IiQkKGN5Z3BhdGggLXUgIiQkXDEiKSIvJyBcCisJCS1lICJzfCckJChwd2QpfFwiXCQkR0lUX0VYRUNfUEFUSFwiJ3xnIiBiaW4td3JhcHBlcnMvKgorCSMgRW5zdXJlIHRoYXQgdGVzdC0qIGhlbHBlcnMgZmluZCB0aGUgLmRsbCBmaWxlcyBjb3BpZWQgdG8gdG9wLWxldmVsCisJc2VkIC1pICdzfF5QQVRIPS4qfCY6IiQkR0lUX0VYRUNfUEFUSCJ8JyBiaW4td3JhcHBlcnMvdGVzdC0qCisJIyBXZSBkbyBub3Qgd2FudCB0byBmb3JjZSBoYXJkLWxpbmtpbmcgYnVpbHRpbnMKKwlzZWQgLWkgJ3N8XChnaXRcKS1cKFstYS16XSpcKVwuZXhlInxcMS5leGUiIFwyfGcnIFwKKwkJYmluLXdyYXBwZXJzL2dpdC17cmVjZWl2ZS1wYWNrLHVwbG9hZC1hcmNoaXZlfQorCWdpdCBhZGQgLWYgJCh0ZXN0X2JpbmRpcl9wcm9ncmFtcykKKwkjIHJlbW90ZS1leHQgaXMgYSBidWlsdGluLCBidXQgaW52b2tlZCBhcyBpZiBpdCB3ZXJlIGV4dGVybmFsCisJc2VkICdzfHJlY2VpdmUtcGFja3xyZW1vdGUtZXh0fGcnIFwKKwkJPGJpbi13cmFwcGVycy9naXQtcmVjZWl2ZS1wYWNrID5iaW4td3JhcHBlcnMvZ2l0LXJlbW90ZS1leHQKKwlnaXQgYWRkIC1mIGJpbi13cmFwcGVycy9naXQtcmVtb3RlLWV4dAorCisJIyBBZGQgdGVtcGxhdGVzCisJJChNQUtFKSAtQyB0ZW1wbGF0ZXMKKwlnaXQgYWRkIC1mIHRlbXBsYXRlcy9ib2lsZXJwbGF0ZXMubWFkZSB0ZW1wbGF0ZXMvYmx0LworCisJIyBBZGQgdGhlIHRyYW5zbGF0ZWQgbWVzc2FnZXMKKwltYWtlIE1TVkM9MSBTS0lQX1ZDUEtHPTEgcHJlZml4PS9taW5ndzY0ICQoTU9GSUxFUykKKwlnaXQgYWRkIC1mICQoTU9GSUxFUykKKworCSMgQWRkIGJ1aWxkIG9wdGlvbnMKKwkkKE1BS0UpIE1TVkM9MSBTS0lQX1ZDUEtHPTEgcHJlZml4PS9taW5ndzY0IEdJVC1CVUlMRC1PUFRJT05TCisJZ2l0IGFkZCAtZiBHSVQtQlVJTEQtT1BUSU9OUworCisJIyBDb21taXQgdGhlIHdob2xlIHNoZWJhbmcKKwlnaXQgY29tbWl0IC1tICJHZW5lcmF0ZSBWaXN1YWwgU3R1ZGlvIHNvbHV0aW9uIiBcCisJCS1tICJBdXRvLWdlbmVyYXRlZCBieSBcYCQoTUFLRSkkKE1BS0VGTEFHUykgJEBcYCIKZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBiL2NvbmZpZ3VyZS5hYwppbmRleCBlMGQwZGEzLi42NmFlZGI5IDEwMDY0NAotLS0gYS9jb25maWd1cmUuYWMKKysrIGIvY29uZmlndXJlLmFjCkBAIC04NSw3ICs4NSw3IEBACiAKICMgR0lUX1BBUlNFX1dJVEhfU0VUX01BS0VfVkFSKFdJVEhOQU1FLCBWQVIsIEhFTFBfVEVYVCkKICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSMgU2V0IFZBUiB0byB0aGUgdmFsdWUgc3BlY2llZCBieSAtLXdpdGgtV0lUSE5BTUUuCisjIFNldCBWQVIgdG8gdGhlIHZhbHVlIHNwZWNpZmllZCBieSAtLXdpdGgtV0lUSE5BTUUuCiAjIE5vIHZlcmlmaWNhdGlvbiBvZiBhcmd1bWVudHMgaXMgcGVyZm9ybWVkLCBidXQgd2FybmluZ3MgYXJlIGlzc3VlZAogIyBpZiBlaXRoZXIgJ3llcycgb3IgJ25vJyBpcyBzcGVjaWZpZWQuCiAjIEhFTFBfVEVYVCBpcyBwcmVzZW50ZWQgd2hlbiAtLWhlbHAgaXMgY2FsbGVkLgpAQCAtNDc1LDggKzQ3NSwxOCBAQAogICAgICAgaWYgdGVzdCAiJGdpdF9jdl9sZF9ycGF0aCIgPSAieWVzIjsgdGhlbgogICAgICAgICAgQ0NfTERfRFlOUEFUSD0tcnBhdGgKICAgICAgIGVsc2UKLSAgICAgICAgIENDX0xEX0RZTlBBVEg9Ci0gICAgICAgICBBQ19NU0dfV0FSTihbbGlua2VyIGRvZXMgbm90IHN1cHBvcnQgcnVudGltZSBwYXRoIHRvIGR5bmFtaWMgbGlicmFyaWVzXSkKKyAgICAgICAgIEFDX0NBQ0hFX0NIRUNLKFtpZiBsaW5rZXIgc3VwcG9ydHMgLVdsLCtiLF0sIGdpdF9jdl9sZF93bF9iLCBbCisgICAgICAgICAgICBTQVZFX0xERkxBR1M9IiR7TERGTEFHU30iCisgICAgICAgICAgICBMREZMQUdTPSIke1NBVkVfTERGTEFHU30gLVdsLCtiLC8iCisgICAgICAgICAgICBBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtdLCBbXSldLCBbZ2l0X2N2X2xkX3dsX2I9eWVzXSwgW2dpdF9jdl9sZF93bF9iPW5vXSkKKyAgICAgICAgICAgIExERkxBR1M9IiR7U0FWRV9MREZMQUdTfSIKKyAgICAgICAgIF0pCisgICAgICAgICBpZiB0ZXN0ICIkZ2l0X2N2X2xkX3dsX2IiID0gInllcyI7IHRoZW4KKyAgICAgICAgICAgIENDX0xEX0RZTlBBVEg9LVdsLCtiLAorICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICBDQ19MRF9EWU5QQVRIPQorICAgICAgICAgICAgIEFDX01TR19XQVJOKFtsaW5rZXIgZG9lcyBub3Qgc3VwcG9ydCBydW50aW1lIHBhdGggdG8gZHluYW1pYyBsaWJyYXJpZXNdKQorICAgICAgICAgIGZpCiAgICAgICBmaQogICAgZmkKIGZpCkBAIC03NjMsOSArNzczLDE5IEBACiBHSVRfQ09ORl9TVUJTVChbTkVFRFNfTElCR0VOXSkKIHRlc3QgLW4gIiRORUVEU19MSUJHRU4iICYmIExJQlM9IiRMSUJTIC1sZ2VuIgogCi1BQ19DSEVDS19MSUIoW2NdLCBbZ2V0dGV4dF0sCi1bTElCQ19DT05UQUlOU19MSUJJTlRMPVllc1BsZWFzZV0sCi1bTElCQ19DT05UQUlOU19MSUJJTlRMPV0pCitBQ19ERUZVTihbTElCSU5UTF9TUkNdLCBbCitBQ19MQU5HX1BST0dSQU0oW1sKKyNpbmNsdWRlIDxsaWJpbnRsLmg+CitdXSxbWworY2hhciAqbXNnID0gZ2V0dGV4dCgidGVzdCIpOworXV0pXSkKKworQUNfTVNHX0NIRUNLSU5HKFtpZiBsaWJjIGNvbnRhaW5zIGxpYmludGxdKQorQUNfTElOS19JRkVMU0UoW0xJQklOVExfU1JDXSwKKwlbQUNfTVNHX1JFU1VMVChbeWVzXSkKKwlMSUJDX0NPTlRBSU5TX0xJQklOVEw9WWVzUGxlYXNlXSwKKwlbQUNfTVNHX1JFU1VMVChbbm9dKQorCUxJQkNfQ09OVEFJTlNfTElCSU5UTD1dKQogR0lUX0NPTkZfU1VCU1QoW0xJQkNfQ09OVEFJTlNfTElCSU5UTF0pCiAKICMKQEAgLTgyNCwxMiArODQ0LDYxIEBACiBBQ19DT01QSUxFX0lGRUxTRShbT0xESUNPTlZURVNUX1NSQ10sCiAJW0FDX01TR19SRVNVTFQoW25vXSldLAogCVtBQ19NU0dfUkVTVUxUKFt5ZXNdKQorCUFDX0RFRklORShIQVZFX09MRF9JQ09OViwgMSkKIAlPTERfSUNPTlY9VW5mb3J0dW5hdGVseVllc10pCiAKIEdJVF9VTlNUQVNIX0ZMQUdTKCRJQ09OVkRJUikKIAogR0lUX0NPTkZfU1VCU1QoW09MRF9JQ09OVl0pCiAKKyMKKyMgRGVmaW5lIElDT05WX09NSVRTX0JPTSBpZiB5b3UgYXJlIG9uIGEgc3lzdGVtIHdoaWNoCisjIGljb252IG9taXRzIGJvbSBmb3IgdXRmLXsxNiwzMn0KK2lmIHRlc3QgLXogIiROT19JQ09OViI7IHRoZW4KK0FDX0NBQ0hFX0NIRUNLKFt3aGV0aGVyIGljb252IG9taXRzIGJvbSBmb3IgdXRmLTE2IGFuZCB1dGYtMzJdLAorIFthY19jdl9pY29udl9vbWl0c19ib21dLAorWworb2xkX0xJQlM9IiRMSUJTIgoraWYgdGVzdCAtbiAiJE5FRURTX0xJQklDT05WIjsgdGhlbgorCUxJQlM9IiRMSUJTIC1saWNvbnYiCitmaQorCitBQ19SVU5fSUZFTFNFKAorCVtBQ19MQU5HX1BST0dSQU0oW0FDX0lOQ0xVREVTX0RFRkFVTFQKKwkjaW5jbHVkZSA8aWNvbnYuaD4KKwkjaWZkZWYgSEFWRV9PTERfSUNPTlYKKwl0eXBlZGVmIGNvbnN0IGNoYXIgKmljb252X2licDsKKwkjZWxzZQorCXR5cGVkZWYgY2hhciAqaWNvbnZfaWJwOworCSNlbmRpZgorCV0sCisJW1sKKwlpbnQgdjsKKwlpY29udl90IGNvbnY7CisJY2hhciBpbltdID0gImEiOyBpY29udl9pYnAgcGluID0gaW47CisJY2hhciBvdXRbMjBdID0gIiI7IGNoYXIgKnBvdXQgPSBvdXQ7CisJc2l6ZV90IGlzeiA9IHNpemVvZiBpbjsKKwlzaXplX3Qgb3N6ID0gc2l6ZW9mIG91dDsKKworCWNvbnYgPSBpY29udl9vcGVuKCJVVEYtMTYiLCAiVVRGLTgiKTsKKwlpY29udihjb252LCAmcGluLCAmaXN6LCAmcG91dCwgJm9zeik7CisJaWNvbnZfY2xvc2UoY29udik7CisJdiA9ICh1bnNpZ25lZCBjaGFyKShvdXRbMF0pICsgKHVuc2lnbmVkIGNoYXIpKG91dFsxXSk7CisJcmV0dXJuIHYgIT0gMHhmZSArIDB4ZmY7CisJXV0pXSwKKwlbYWNfY3ZfaWNvbnZfb21pdHNfYm9tPW5vXSwKKwlbYWNfY3ZfaWNvbnZfb21pdHNfYm9tPXllc10pCisKK0xJQlM9IiRvbGRfTElCUyIKK10pCitpZiB0ZXN0ICJ4JGFjX2N2X2ljb252X29taXRzX2JvbSIgPSB4eWVzOyB0aGVuCisJSUNPTlZfT01JVFNfQk9NPVllcworZWxzZQorCUlDT05WX09NSVRTX0JPTT0KK2ZpCitHSVRfQ09ORl9TVUJTVChbSUNPTlZfT01JVFNfQk9NXSkKK2ZpCisKICMjIENoZWNrcyBmb3IgdHlwZWRlZnMsIHN0cnVjdHVyZXMsIGFuZCBjb21waWxlciBjaGFyYWN0ZXJpc3RpY3MuCiBBQ19NU0dfTk9USUNFKFtDSEVDS1MgZm9yIHR5cGVkZWZzLCBzdHJ1Y3R1cmVzLCBhbmQgY29tcGlsZXIgY2hhcmFjdGVyaXN0aWNzXSkKICMKZGlmZiAtLWdpdCBhL2Nvbm5lY3QuYyBiL2Nvbm5lY3QuYwppbmRleCA3OWYxYjNiLi5iNjQ1MWFiIDEwMDY0NAotLS0gYS9jb25uZWN0LmMKKysrIGIvY29ubmVjdC5jCkBAIC0yOTYsNyArMjk2LDYgQEAKIAlzdHJ1Y3QgcmVmICoqb3JpZ19saXN0ID0gbGlzdDsKIAlpbnQgbGVuID0gMDsKIAllbnVtIGdldF9yZW1vdGVfaGVhZHNfc3RhdGUgc3RhdGUgPSBFWFBFQ1RJTkdfRklSU1RfUkVGOwotCWNvbnN0IGNoYXIgKmFyZzsKIAogCSpsaXN0ID0gTlVMTDsKIApAQCAtMzA2LDggKzMwNSw2IEBACiAJCQlkaWVfaW5pdGlhbF9jb250YWN0KDEpOwogCQljYXNlIFBBQ0tFVF9SRUFEX05PUk1BTDoKIAkJCWxlbiA9IHJlYWRlci0+cGt0bGVuOwotCQkJaWYgKGxlbiA+IDQgJiYgc2tpcF9wcmVmaXgocmVhZGVyLT5saW5lLCAiRVJSICIsICZhcmcpKQotCQkJCWRpZShfKCJyZW1vdGUgZXJyb3I6ICVzIiksIGFyZyk7CiAJCQlicmVhazsKIAkJY2FzZSBQQUNLRVRfUkVBRF9GTFVTSDoKIAkJCXN0YXRlID0gRVhQRUNUSU5HX0RPTkU7CkBAIC05MTgsNiArOTE1LDEwIEBACiAKIAlpZiAocHJvdG9jb2wgPT0gUFJPVE9fTE9DQUwpCiAJCXBhdGggPSBlbmQ7CisJZWxzZSBpZiAocHJvdG9jb2wgPT0gUFJPVE9fRklMRSAmJiAqaG9zdCAhPSAnLycgJiYKKwkJICFoYXNfZG9zX2RyaXZlX3ByZWZpeChob3N0KSAmJgorCQkgb2Zmc2V0XzFzdF9jb21wb25lbnQoaG9zdCAtIDIpID4gMSkKKwkJcGF0aCA9IGhvc3QgLSAyOyAvKiBpbmNsdWRlIHRoZSBsZWFkaW5nICIvLyIgKi8KIAllbHNlIGlmIChwcm90b2NvbCA9PSBQUk9UT19GSUxFICYmIGhhc19kb3NfZHJpdmVfcHJlZml4KGVuZCkpCiAJCXBhdGggPSBlbmQ7IC8qICJmaWxlOi8vJChwd2QpIiBtYXkgYmUgImZpbGU6Ly9DOi9wcm9qZWN0cy9yZXBvIiAqLwogCWVsc2UKQEAgLTEyNTEsNiArMTI1Miw3IEBACiAJCWNvbm4gPSBOVUxMOwogCX0gZWxzZSBpZiAocHJvdG9jb2wgPT0gUFJPVE9fR0lUKSB7CiAJCWNvbm4gPSBnaXRfY29ubmVjdF9naXQoZmQsIGhvc3RhbmRwb3J0LCBwYXRoLCBwcm9nLCB2ZXJzaW9uLCBmbGFncyk7CisJCWNvbm4tPnRyYWNlMl9jaGlsZF9jbGFzcyA9ICJ0cmFuc3BvcnQvZ2l0IjsKIAl9IGVsc2UgewogCQlzdHJ1Y3Qgc3RyYnVmIGNtZCA9IFNUUkJVRl9JTklUOwogCQljb25zdCBjaGFyICpjb25zdCAqdmFyOwpAQCAtMTI5Myw5ICsxMjk1LDExIEBACiAJCQkJc3RyYnVmX3JlbGVhc2UoJmNtZCk7CiAJCQkJcmV0dXJuIE5VTEw7CiAJCQl9CisJCQljb25uLT50cmFjZTJfY2hpbGRfY2xhc3MgPSAidHJhbnNwb3J0L3NzaCI7CiAJCQlmaWxsX3NzaF9hcmdzKGNvbm4sIHNzaF9ob3N0LCBwb3J0LCB2ZXJzaW9uLCBmbGFncyk7CiAJCX0gZWxzZSB7CiAJCQl0cmFuc3BvcnRfY2hlY2tfYWxsb3dlZCgiZmlsZSIpOworCQkJY29ubi0+dHJhY2UyX2NoaWxkX2NsYXNzID0gInRyYW5zcG9ydC9maWxlIjsKIAkJCWlmICh2ZXJzaW9uID4gMCkgewogCQkJCWFyZ3ZfYXJyYXlfcHVzaGYoJmNvbm4tPmVudl9hcnJheSwgR0lUX1BST1RPQ09MX0VOVklST05NRU5UICI9dmVyc2lvbj0lZCIsCiAJCQkJCQkgdmVyc2lvbik7CmRpZmYgLS1naXQgYS9jb25uZWN0LmggYi9jb25uZWN0LmgKaW5kZXggMzJhZmY2MC4uNWYyMzgyZSAxMDA2NDQKLS0tIGEvY29ubmVjdC5oCisrKyBiL2Nvbm5lY3QuaApAQCAtNywxOSArNywxOSBAQAogI2RlZmluZSBDT05ORUNUX0RJQUdfVVJMICAgICAgKDF1IDw8IDEpCiAjZGVmaW5lIENPTk5FQ1RfSVBWNCAgICAgICAgICAoMXUgPDwgMikKICNkZWZpbmUgQ09OTkVDVF9JUFY2ICAgICAgICAgICgxdSA8PCAzKQotZXh0ZXJuIHN0cnVjdCBjaGlsZF9wcm9jZXNzICpnaXRfY29ubmVjdChpbnQgZmRbMl0sIGNvbnN0IGNoYXIgKnVybCwgY29uc3QgY2hhciAqcHJvZywgaW50IGZsYWdzKTsKLWV4dGVybiBpbnQgZmluaXNoX2Nvbm5lY3Qoc3RydWN0IGNoaWxkX3Byb2Nlc3MgKmNvbm4pOwotZXh0ZXJuIGludCBnaXRfY29ubmVjdGlvbl9pc19zb2NrZXQoc3RydWN0IGNoaWxkX3Byb2Nlc3MgKmNvbm4pOwotZXh0ZXJuIGludCBzZXJ2ZXJfc3VwcG9ydHMoY29uc3QgY2hhciAqZmVhdHVyZSk7Ci1leHRlcm4gaW50IHBhcnNlX2ZlYXR1cmVfcmVxdWVzdChjb25zdCBjaGFyICpmZWF0dXJlcywgY29uc3QgY2hhciAqZmVhdHVyZSk7Ci1leHRlcm4gY29uc3QgY2hhciAqc2VydmVyX2ZlYXR1cmVfdmFsdWUoY29uc3QgY2hhciAqZmVhdHVyZSwgaW50ICpsZW5fcmV0KTsKLWV4dGVybiBpbnQgdXJsX2lzX2xvY2FsX25vdF9zc2goY29uc3QgY2hhciAqdXJsKTsKK3N0cnVjdCBjaGlsZF9wcm9jZXNzICpnaXRfY29ubmVjdChpbnQgZmRbMl0sIGNvbnN0IGNoYXIgKnVybCwgY29uc3QgY2hhciAqcHJvZywgaW50IGZsYWdzKTsKK2ludCBmaW5pc2hfY29ubmVjdChzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqY29ubik7CitpbnQgZ2l0X2Nvbm5lY3Rpb25faXNfc29ja2V0KHN0cnVjdCBjaGlsZF9wcm9jZXNzICpjb25uKTsKK2ludCBzZXJ2ZXJfc3VwcG9ydHMoY29uc3QgY2hhciAqZmVhdHVyZSk7CitpbnQgcGFyc2VfZmVhdHVyZV9yZXF1ZXN0KGNvbnN0IGNoYXIgKmZlYXR1cmVzLCBjb25zdCBjaGFyICpmZWF0dXJlKTsKK2NvbnN0IGNoYXIgKnNlcnZlcl9mZWF0dXJlX3ZhbHVlKGNvbnN0IGNoYXIgKmZlYXR1cmUsIGludCAqbGVuX3JldCk7CitpbnQgdXJsX2lzX2xvY2FsX25vdF9zc2goY29uc3QgY2hhciAqdXJsKTsKIAogc3RydWN0IHBhY2tldF9yZWFkZXI7Ci1leHRlcm4gZW51bSBwcm90b2NvbF92ZXJzaW9uIGRpc2NvdmVyX3ZlcnNpb24oc3RydWN0IHBhY2tldF9yZWFkZXIgKnJlYWRlcik7CitlbnVtIHByb3RvY29sX3ZlcnNpb24gZGlzY292ZXJfdmVyc2lvbihzdHJ1Y3QgcGFja2V0X3JlYWRlciAqcmVhZGVyKTsKIAotZXh0ZXJuIGludCBzZXJ2ZXJfc3VwcG9ydHNfdjIoY29uc3QgY2hhciAqYywgaW50IGRpZV9vbl9lcnJvcik7Ci1leHRlcm4gaW50IHNlcnZlcl9zdXBwb3J0c19mZWF0dXJlKGNvbnN0IGNoYXIgKmMsIGNvbnN0IGNoYXIgKmZlYXR1cmUsCi0JCQkJICAgaW50IGRpZV9vbl9lcnJvcik7CitpbnQgc2VydmVyX3N1cHBvcnRzX3YyKGNvbnN0IGNoYXIgKmMsIGludCBkaWVfb25fZXJyb3IpOworaW50IHNlcnZlcl9zdXBwb3J0c19mZWF0dXJlKGNvbnN0IGNoYXIgKmMsIGNvbnN0IGNoYXIgKmZlYXR1cmUsCisJCQkgICAgaW50IGRpZV9vbl9lcnJvcik7CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvY29ubmVjdGVkLmMgYi9jb25uZWN0ZWQuYwppbmRleCAxYmJhODg4Li5hYzUyYjA3IDEwMDY0NAotLS0gYS9jb25uZWN0ZWQuYworKysgYi9jb25uZWN0ZWQuYwpAQCAtMSw5ICsxLDExIEBACiAjaW5jbHVkZSAiY2FjaGUuaCIKKyNpbmNsdWRlICJvYmplY3Qtc3RvcmUuaCIKICNpbmNsdWRlICJydW4tY29tbWFuZC5oIgogI2luY2x1ZGUgInNpZ2NoYWluLmgiCiAjaW5jbHVkZSAiY29ubmVjdGVkLmgiCiAjaW5jbHVkZSAidHJhbnNwb3J0LmgiCiAjaW5jbHVkZSAicGFja2ZpbGUuaCIKKyNpbmNsdWRlICJwcm9taXNvci1yZW1vdGUuaCIKIAogLyoKICAqIElmIHdlIGZlZWQgYWxsIHRoZSBjb21taXRzIHdlIHdhbnQgdG8gdmVyaWZ5IHRvIHRoaXMgY29tbWFuZApAQCAtMjcsNiArMjksNyBAQAogCXN0cnVjdCBwYWNrZWRfZ2l0ICpuZXdfcGFjayA9IE5VTEw7CiAJc3RydWN0IHRyYW5zcG9ydCAqdHJhbnNwb3J0OwogCXNpemVfdCBiYXNlX2xlbjsKKwljb25zdCB1bnNpZ25lZCBoZXhzeiA9IHRoZV9oYXNoX2FsZ28tPmhleHN6OwogCiAJaWYgKCFvcHQpCiAJCW9wdCA9ICZkZWZhdWx0czsKQEAgLTQ5LDYgKzUyLDM2IEBACiAJCXN0cmJ1Zl9yZWxlYXNlKCZpZHhfZmlsZSk7CiAJfQogCisJaWYgKG9wdC0+Y2hlY2tfcmVmc19hcmVfcHJvbWlzb3Jfb2JqZWN0c19vbmx5KSB7CisJCS8qCisJCSAqIEZvciBwYXJ0aWFsIGNsb25lcywgd2UgZG9uJ3Qgd2FudCB0byBoYXZlIHRvIGRvIGEgcmVndWxhcgorCQkgKiBjb25uZWN0aXZpdHkgY2hlY2sgYmVjYXVzZSB3ZSBoYXZlIHRvIGVudW1lcmF0ZSBhbmQgZXhjbHVkZQorCQkgKiBhbGwgcHJvbWlzb3Igb2JqZWN0cyAoc2xvdyksIGFuZCB0aGVuIHRoZSBjb25uZWN0aXZpdHkgY2hlY2sKKwkJICogaXRzZWxmIGJlY29tZXMgYSBuby1vcCBiZWNhdXNlIGluIGEgcGFydGlhbCBjbG9uZSBldmVyeQorCQkgKiBvYmplY3QgaXMgYSBwcm9taXNvciBvYmplY3QuIEluc3RlYWQsIGp1c3QgbWFrZSBzdXJlIHdlCisJCSAqIHJlY2VpdmVkLCBpbiBhIHByb21pc29yIHBhY2tmaWxlLCB0aGUgb2JqZWN0cyBwb2ludGVkIHRvIGJ5CisJCSAqIGVhY2ggd2FudGVkIHJlZi4KKwkJICoKKwkJICogQmVmb3JlIGNoZWNraW5nIGZvciBwcm9taXNvciBwYWNrcywgYmUgc3VyZSB3ZSBoYXZlIHRoZQorCQkgKiBsYXRlc3QgcGFjay1maWxlcyBsb2FkZWQgaW50byBtZW1vcnkuCisJCSAqLworCQlyZXByZXBhcmVfcGFja2VkX2dpdCh0aGVfcmVwb3NpdG9yeSk7CisJCWRvIHsKKwkJCXN0cnVjdCBwYWNrZWRfZ2l0ICpwOworCisJCQlmb3IgKHAgPSBnZXRfYWxsX3BhY2tzKHRoZV9yZXBvc2l0b3J5KTsgcDsgcCA9IHAtPm5leHQpIHsKKwkJCQlpZiAoIXAtPnBhY2tfcHJvbWlzb3IpCisJCQkJCWNvbnRpbnVlOworCQkJCWlmIChmaW5kX3BhY2tfZW50cnlfb25lKG9pZC5oYXNoLCBwKSkKKwkJCQkJZ290byBwcm9taXNvcl9wYWNrX2ZvdW5kOworCQkJfQorCQkJcmV0dXJuIDE7Citwcm9taXNvcl9wYWNrX2ZvdW5kOgorCQkJOworCQl9IHdoaWxlICghZm4oY2JfZGF0YSwgJm9pZCkpOworCQlyZXR1cm4gMDsKKwl9CisKIAlpZiAob3B0LT5zaGFsbG93X2ZpbGUpIHsKIAkJYXJndl9hcnJheV9wdXNoKCZyZXZfbGlzdC5hcmdzLCAiLS1zaGFsbG93LWZpbGUiKTsKIAkJYXJndl9hcnJheV9wdXNoKCZyZXZfbGlzdC5hcmdzLCBvcHQtPnNoYWxsb3dfZmlsZSk7CkBAIC01NiwxMyArODksMTQgQEAKIAlhcmd2X2FycmF5X3B1c2goJnJldl9saXN0LmFyZ3MsInJldi1saXN0Iik7CiAJYXJndl9hcnJheV9wdXNoKCZyZXZfbGlzdC5hcmdzLCAiLS1vYmplY3RzIik7CiAJYXJndl9hcnJheV9wdXNoKCZyZXZfbGlzdC5hcmdzLCAiLS1zdGRpbiIpOwotCWlmIChyZXBvc2l0b3J5X2Zvcm1hdF9wYXJ0aWFsX2Nsb25lKQorCWlmIChoYXNfcHJvbWlzb3JfcmVtb3RlKCkpCiAJCWFyZ3ZfYXJyYXlfcHVzaCgmcmV2X2xpc3QuYXJncywgIi0tZXhjbHVkZS1wcm9taXNvci1vYmplY3RzIik7CiAJaWYgKCFvcHQtPmlzX2RlZXBlbmluZ19mZXRjaCkgewogCQlhcmd2X2FycmF5X3B1c2goJnJldl9saXN0LmFyZ3MsICItLW5vdCIpOwogCQlhcmd2X2FycmF5X3B1c2goJnJldl9saXN0LmFyZ3MsICItLWFsbCIpOwogCX0KIAlhcmd2X2FycmF5X3B1c2goJnJldl9saXN0LmFyZ3MsICItLXF1aWV0Iik7CisJYXJndl9hcnJheV9wdXNoKCZyZXZfbGlzdC5hcmdzLCAiLS1hbHRlcm5hdGUtcmVmcyIpOwogCWlmIChvcHQtPnByb2dyZXNzKQogCQlhcmd2X2FycmF5X3B1c2hmKCZyZXZfbGlzdC5hcmdzLCAiLS1wcm9ncmVzcz0lcyIsCiAJCQkJIF8oIkNoZWNraW5nIGNvbm5lY3Rpdml0eSIpKTsKQEAgLTgxLDcgKzExNSw3IEBACiAKIAlzaWdjaGFpbl9wdXNoKFNJR1BJUEUsIFNJR19JR04pOwogCi0JY29tbWl0W0dJVF9TSEExX0hFWFNaXSA9ICdcbic7CisJY29tbWl0W2hleHN6XSA9ICdcbic7CiAJZG8gewogCQkvKgogCQkgKiBJZiBpbmRleC1wYWNrIGFscmVhZHkgY2hlY2tlZCB0aGF0OgpAQCAtOTQsOCArMTI4LDggQEAKIAkJaWYgKG5ld19wYWNrICYmIGZpbmRfcGFja19lbnRyeV9vbmUob2lkLmhhc2gsIG5ld19wYWNrKSkKIAkJCWNvbnRpbnVlOwogCi0JCW1lbWNweShjb21taXQsIG9pZF90b19oZXgoJm9pZCksIEdJVF9TSEExX0hFWFNaKTsKLQkJaWYgKHdyaXRlX2luX2Z1bGwocmV2X2xpc3QuaW4sIGNvbW1pdCwgR0lUX1NIQTFfSEVYU1ogKyAxKSA8IDApIHsKKwkJbWVtY3B5KGNvbW1pdCwgb2lkX3RvX2hleCgmb2lkKSwgaGV4c3opOworCQlpZiAod3JpdGVfaW5fZnVsbChyZXZfbGlzdC5pbiwgY29tbWl0LCBoZXhzeiArIDEpIDwgMCkgewogCQkJaWYgKGVycm5vICE9IEVQSVBFICYmIGVycm5vICE9IEVJTlZBTCkKIAkJCQllcnJvcl9lcnJubyhfKCJmYWlsZWQgd3JpdGUgdG8gcmV2LWxpc3QiKSk7CiAJCQllcnIgPSAtMTsKZGlmZiAtLWdpdCBhL2Nvbm5lY3RlZC5oIGIvY29ubmVjdGVkLmgKaW5kZXggOGQ1YTZiMy4uZWJhNWMyNiAxMDA2NDQKLS0tIGEvY29ubmVjdGVkLmgKKysrIGIvY29ubmVjdGVkLmgKQEAgLTQ2LDYgKzQ2LDE1IEBACiAJICogZHVyaW5nIGEgZmV0Y2guCiAJICovCiAJdW5zaWduZWQgaXNfZGVlcGVuaW5nX2ZldGNoIDogMTsKKworCS8qCisJICogSWYgbm9uLXplcm8sIG9ubHkgY2hlY2sgdGhhdCB0aGUgdG9wLWxldmVsIG9iamVjdHMgcmVmZXJlbmNlZCBieSB0aGUKKwkgKiB3YW50ZWQgcmVmcyAocGFzc2VkIGluIGFzIGNiX2RhdGEpIGFyZSBwcm9taXNvciBvYmplY3RzLiBUaGlzIGlzCisJICogdXNlZnVsIGZvciBwYXJ0aWFsIGNsb25lcywgd2hlcmUgZW51bWVyYXRpbmcgYW5kIGV4Y2x1ZGluZyBhbGwKKwkgKiBwcm9taXNvciBvYmplY3RzIGlzIHZlcnkgc2xvdyBhbmQgdGhlIGNvbW1pdC13YWxrIGl0c2VsZiBiZWNvbWVzIGEKKwkgKiBuby1vcC4KKwkgKi8KKwl1bnNpZ25lZCBjaGVja19yZWZzX2FyZV9wcm9taXNvcl9vYmplY3RzX29ubHkgOiAxOwogfTsKIAogI2RlZmluZSBDSEVDS19DT05ORUNURURfSU5JVCB7IDAgfQpkaWZmIC0tZ2l0IGEvY29udHJpYi9idWlsZHN5c3RlbXMvR2VuZXJhdG9ycy5wbSBiL2NvbnRyaWIvYnVpbGRzeXN0ZW1zL0dlbmVyYXRvcnMucG0KaW5kZXggNDA4ZWY3MS4uYWE0Y2JhYSAxMDA2NDQKLS0tIGEvY29udHJpYi9idWlsZHN5c3RlbXMvR2VuZXJhdG9ycy5wbQorKysgYi9jb250cmliL2J1aWxkc3lzdGVtcy9HZW5lcmF0b3JzLnBtCkBAIC0xNyw3ICsxNyw3IEBACiAgICAgJG1lID0gZGlybmFtZSgkbWUpOwogICAgIGlmIChvcGVuZGlyKEQsIiRtZS9HZW5lcmF0b3JzIikpIHsKICAgICAgICAgZm9yZWFjaCBteSAkZ2VuIChyZWFkZGlyKEQpKSB7Ci0gICAgICAgICAgICBuZXh0IGlmICgkZ2VuICA9fiAvXlwuXC4/JC8pOworICAgICAgICAgICAgbmV4dCB1bmxlc3MgKCRnZW4gID1+IC9cLnBtJC8pOwogICAgICAgICAgICAgcmVxdWlyZSAiJHttZX0vR2VuZXJhdG9ycy8kZ2VuIjsKICAgICAgICAgICAgICRnZW4gPX4gcyxcLnBtLCw7CiAgICAgICAgICAgICBwdXNoKEBBVkFJTEFCTEUsICRnZW4pOwpkaWZmIC0tZ2l0IGEvY29udHJpYi9idWlsZHN5c3RlbXMvR2VuZXJhdG9ycy9WY3Byb2oucG0gYi9jb250cmliL2J1aWxkc3lzdGVtcy9HZW5lcmF0b3JzL1ZjcHJvai5wbQppbmRleCBjZmE3NGFkLi43Mzc2NDdlIDEwMDY0NAotLS0gYS9jb250cmliL2J1aWxkc3lzdGVtcy9HZW5lcmF0b3JzL1ZjcHJvai5wbQorKysgYi9jb250cmliL2J1aWxkc3lzdGVtcy9HZW5lcmF0b3JzL1ZjcHJvai5wbQpAQCAtMyw2ICszLDcgQEAKIAogdXNlIHN0cmljdDsKIHVzZSB2YXJzIHF3KCRWRVJTSU9OKTsKK3VzZSBEaWdlc3Q6OlNIQSBxdyhzaGEyNTZfaGV4KTsKIAogb3VyICRWRVJTSU9OID0gJzEuMDAnOwogb3VyKEBJU0EsIEBFWFBPUlQsIEBFWFBPUlRfT0ssIEBBVkFJTEFCTEUpOwpAQCAtMTIsNTkgKzEzLDEyIEBACiAgICAgcHVzaCBARVhQT1JUX09LLCBxdyhnZW5lcmF0ZSk7CiB9CiAKLW15ICRndWlkX2luZGV4ID0gMDsKLW15IEBHVUlEUyA9ICgKLSAgICAie0UwN0I5OTg5LTJCRjctNEYyMS04OTE4LUJFMjJCQTQ2N0FDM30iLAotICAgICJ7Mjc4RkZCNTEtMDI5Ni00QTQ0LUE4MUEtMjJCODdCN0MzNTkyfSIsCi0gICAgIns3MzQ2QTJDNC1GMEZELTQ0NEYtOUVCRS0xQUYyM0IyQjU2NTB9IiwKLSAgICAiezY3RjQyMUFDLUVCMzQtNEQ0OS04MjBCLTMxOTY4MDdCNDIzRn0iLAotICAgICJ7Mzg1RENGRTEtQ0M4Qy00MjExLUE0NTEtODBGQ0ZDMzFDQTUxfSIsCi0gICAgIns5N0NDNDZDNS1EMkNDLTREMjYtQjYzNC1FNzU3OTJCNzk5MTZ9IiwKLSAgICAie0M3Q0UyMUZFLTZFRjgtNDAxMi1BNUM3LUEyMkJDRURGQkExMX0iLAotICAgICJ7NTE1NzUxMzQtM0ZERi00MkQxLUJBQkQtM0ZCMTI2NjlDNkM5fSIsCi0gICAgInswQUUxOTVFNC05ODIzLTRCODctOEU2Ri0yMEM1NjE0QUYyRkZ9IiwKLSAgICAiezRCOTE4MjU1LTY3Q0EtNDNCQi1BNDZDLTI2NzA0QjY2NkU2Qn0iLAotICAgICJ7MThDQ0ZFRUYtQzhFRS00Q0MxLUEyNjUtMjZGOTVDOUY0NjQ5fSIsCi0gICAgIns1RDVEOTBGQS0wMUI3LTQ5NzMtQUZFNS1DQTg4QzUzQUMxOTd9IiwKLSAgICAiezFGMDU0MzIwLTAzNkQtNDlFMS1CMzg0LUZCNURGMEJDOEFDMH0iLAotICAgICJ7N0NFRDY1RUUtRjJEOS00MTcxLTgyNUItQzdENTYxRkU1Nzg2fSIsCi0gICAgIns4RDM0MTY3OS0wRjA3LTQ2NjQtOUE1Ni0zQkEwREU4OEI5QkN9IiwKLSAgICAie0MxODlGRURDLTI5NTctNEJENy05RkE0LTc2MjIyNDFFQTE0NX0iLAotICAgICJ7NjY4NDQyMDMtMUI5Ri00QzUzLTkyNzQtMTY0RkZGOTVCODQ3fSIsCi0gICAgIntFNEZFQTE0NS1ERUNDLTQ0MEQtQUVFQS01OThDRjM4MUZENDN9IiwKLSAgICAiezczMzAwQThFLUM4QUMtNDFCMC1CNTU1LTRGNTk2QjY4MUJBN30iLAotICAgICJ7ODczRkRFQjEtRDAxRC00MEJGLUExQkYtOEJCQzU4RUMwRjUxfSIsCi0gICAgIns3OTIyQzhCRS03NkM1LTRBQzYtOEJGNy04ODVDMEY5M0I3ODJ9IiwKLSAgICAie0UyNDVEMzcwLTMwOEItNEE0OS1CRkMxLTFFNTI3ODI3OTc1Rn0iLAotICAgICJ7RjZGQTk1N0ItNjZGQy00RUQ3LUIyNjAtRTU5QkJFNEZFODEzfSIsCi0gICAgIntFNjA1NTA3MC0wMTk4LTQzMUEtQkM0OS04REI2Q0VFNzcwQUV9IiwKLSAgICAiezU0MTU5MjM0LUMzRUItNDNEQS05MDZCLUNFNURBNUM3NDY1NH0iLAotICAgICJ7NTk0Q0ZDMzUtMEI2MC00NkY2LUI4RUYtOTk4M0FDQzExODdEfSIsCi0gICAgIntEOTNGQ0FCNy0xRjAxLTQ4RDItQjgzMi1GNzYxQjgzMjMxQTV9IiwKLSAgICAie0RCQTVFNkFDLUU3QkUtNDJEMy04NzAzLTRFNzg3MTQxNTI2RX0iLAotICAgICJ7NjE3MTk1M0YtREQyNi00NEM3LUEzQkUtQ0M0NUY4NkZDMTFGfSIsCi0gICAgIns5RTE5RERCRS1GNUU0LTRBMjYtQTJGRS0wNjE2RTA0ODc5Qjh9IiwKLSAgICAie0FFODFBNjE1LTk5RTMtNDg4NS05Q0UwLUQ5Q0FBMTkzRTg2N30iLAotICAgICJ7RkJGNDA2N0UtMTg1NS00RjZDLThCQ0QtNEQ2MkU4MDFBMDREfSIsCi0gICAgInsxNzAwNzk0OC02NTkzLTRBRUItODEwNi1GNzg4NEI0RjJDMTl9IiwKLSAgICAiezE5OUQ0QzhELTg2MzktNERBNi04MkVGLTA4NjY4QzM1REVFMH0iLAotICAgICJ7RTA4NUU1MEUtQzE0MC00Q0YzLUJFNEItMDk0QjE0RjBEREQ2fSIsCi0gICAgInswMDc4NTI2OC1BOUNDLTRFNDAtQUMyOS1CQUMwMDE5MTU5Q0V9IiwKLSAgICAiezRDMDZGNTZBLURDREItNDZBNi1CNjdDLTAyMzM5OTM1Q0YxMn0iLAotICAgICJ7M0E2MkQzRkQtNTE5RS00RUM5LTgxNzEtRDJDMUJGRUEwMjJGfSIsCi0gICAgInszQTYyRDNGRC01MTlFLTRFQzktODE3MS1EMkMxQkZFQTAyMkZ9IiwKLSAgICAiezkzOTJFQjU4LUQ3QkEtNDEwQi1CMUYwLUIyRkFBNkJDODlBN30iLAotICAgICJ7MkFDQUIyRDUtRTBDRS00MDI3LUJDQTAtRDc4QjJEN0E2QzY2fSIsCi0gICAgIns4NkUyMTZDMy00M0NFLTQ4MUEtQkNCMi1CRTVFNjI4NTA2MzV9IiwKLSAgICAie0ZCNjMxMjkxLTc5MjMtNEI5MS05QTU3LTdCMThGREJCN0E0Mn0iLAotICAgICJ7MEExNzZFQzktRTkzNC00NUI4LUI4N0YtMTZDN0Y0QzgwMDM5fSIsCi0gICAgIntERjU1Q0E4MC00NkU4LTRDNTMtQjY1Qi00OTkwQTIzREQ0NDR9IiwKLSAgICAiezNBMEY5ODk1LTU1RDItNDcxMC1CRTVFLUFENzQ5OEI1QkY0NH0iLAotICAgICJ7Mjk0QkRDNUEtRjQ0OC00OEI2LTgxMTAtREQwQTgxODIwRjhDfSIsCi0gICAgIns0QjlGNjZFOS1GQUM5LTQ3QUItQjFFRi1DMTY3NTZGQkZEMDZ9IiwKLSAgICAiezcyRUE0OUM2LTI4MDYtNDhCRC1CODFCLUQ0OTA1MTAyRTE5Q30iLAotICAgICJ7NTcyOEVCN0UtODkyOS00ODZDLThDRDUtMzIzOEQwNjBFNzY4fSIKLSk7CitzdWIgZ2VuZXJhdGVfZ3VpZCAoJCkgeworICAgIG15ICRoZXggPSBzaGEyNTZfaGV4KCRfWzBdKTsKKyAgICAkaGV4ID1+IHMvXiguezh9KSguezR9KSguezR9KSguezR9KSguezEyfSkuKi97JDEtJDItJDMtJDQtJDV9LzsKKyAgICAkaGV4ID1+IHRyL2Etei9BLVovOworICAgIHJldHVybiAkaGV4OworfQogCiBzdWIgZ2VuZXJhdGUgewogICAgIG15ICgkZ2l0X2RpciwgJG91dF9kaXIsICRyZWxfZGlyLCAlYnVpbGRfc3RydWN0dXJlKSA9IEBfOwpAQCAtOTIsOSArNDYsOCBAQAogICAgICR0YXJnZXQgPX4gcy9cLy9fL2c7CiAgICAgJHRhcmdldCA9fiBzL1wuYS8vOwogCi0gICAgbXkgJHV1aWQgPSAkR1VJRFNbJGd1aWRfaW5kZXhdOworICAgIG15ICR1dWlkID0gZ2VuZXJhdGVfZ3VpZCgkbGlibmFtZSk7CiAgICAgJCRidWlsZF9zdHJ1Y3R1cmV7IkxJQlNfJHt0YXJnZXR9X0dVSUQifSA9ICR1dWlkOwotICAgICRndWlkX2luZGV4ICs9IDE7CiAKICAgICBteSBAc3JjcyA9IHNvcnQobWFwKCIkcmVsX2RpclxcJF8iLCBAeyQkYnVpbGRfc3RydWN0dXJleyJMSUJTXyR7bGlibmFtZX1fU09VUkNFUyJ9fSkpOwogICAgIG15IEBzb3VyY2VzOwpAQCAtMTA2LDYgKzU5LDggQEAKICAgICBteSAkaW5jbHVkZXM9IGpvaW4oIjsiLCBzb3J0KG1hcCgiJnF1b3Q7JHJlbF9kaXJcXCRfJnF1b3Q7IiwgQHskJGJ1aWxkX3N0cnVjdHVyZXsiTElCU18ke2xpYm5hbWV9X0lOQ0xVREVTIn19KSkpOwogICAgIG15ICRjZmxhZ3MgID0gam9pbigiICIsIHNvcnQoQHskJGJ1aWxkX3N0cnVjdHVyZXsiTElCU18ke2xpYm5hbWV9X0NGTEFHUyJ9fSkpOwogICAgICRjZmxhZ3MgPX4gcy9cIi8mcXVvdDsvZzsKKyAgICAkY2ZsYWdzID1+IHMvPC8mbHQ7L2c7CisgICAgJGNmbGFncyA9fiBzLz4vJmd0Oy9nOwogCiAgICAgbXkgJGNmbGFnc19kZWJ1ZyA9ICRjZmxhZ3M7CiAgICAgJGNmbGFnc19kZWJ1ZyA9fiBzLy1NVC8tTVRkLzsKQEAgLTEyNyw2ICs4Miw4IEBACiAKICAgICAkZGVmaW5lcyA9fiBzLy1ELy9nOwogICAgICRkZWZpbmVzID1+IHMvXCIvXFwmcXVvdDsvZzsKKyAgICAkZGVmaW5lcyA9fiBzLzwvJmx0Oy9nOworICAgICRkZWZpbmVzID1+IHMvPi8mZ3Q7L2c7CiAgICAgJGRlZmluZXMgPX4gcy9cJy8vZzsKICAgICAkaW5jbHVkZXMgPX4gcy8tSS8vZzsKICAgICBta2RpciAiJHRhcmdldCIgfHwgZGllICJDb3VsZCBub3QgY3JlYXRlIHRoZSBkaXJlY3RvcnkgJHRhcmdldCBmb3IgbGliIHByb2plY3QhXG4iOwpAQCAtMTYzLDkgKzEyMCw2IEBACiAJCQkJTmFtZT0iVkNYTUxEYXRhR2VuZXJhdG9yVG9vbCIKIAkJCS8+CiAJCQk8VG9vbAotCQkJCU5hbWU9IlZDV2ViU2VydmljZVByb3h5R2VuZXJhdG9yVG9vbCIKLQkJCS8+Ci0JCQk8VG9vbAogCQkJCU5hbWU9IlZDTUlETFRvb2wiCiAJCQkvPgogCQkJPFRvb2wKQEAgLTIyOSw5ICsxODMsNiBAQAogCQkJCU5hbWU9IlZDWE1MRGF0YUdlbmVyYXRvclRvb2wiCiAJCQkvPgogCQkJPFRvb2wKLQkJCQlOYW1lPSJWQ1dlYlNlcnZpY2VQcm94eUdlbmVyYXRvclRvb2wiCi0JCQkvPgotCQkJPFRvb2wKIAkJCQlOYW1lPSJWQ01JRExUb29sIgogCQkJLz4KIAkJCTxUb29sCkBAIC0zMTEsOSArMjYyLDggQEAKICAgICAkdGFyZ2V0ID1+IHMvXC8vXy9nOwogICAgICR0YXJnZXQgPX4gcy9cLmV4ZS8vOwogCi0gICAgbXkgJHV1aWQgPSAkR1VJRFNbJGd1aWRfaW5kZXhdOworICAgIG15ICR1dWlkID0gZ2VuZXJhdGVfZ3VpZCgkYXBwbmFtZSk7CiAgICAgJCRidWlsZF9zdHJ1Y3R1cmV7IkFQUFNfJHt0YXJnZXR9X0dVSUQifSA9ICR1dWlkOwotICAgICRndWlkX2luZGV4ICs9IDE7CiAKICAgICBteSBAc3JjcyA9IHNvcnQobWFwKCIkcmVsX2RpclxcJF8iLCBAeyQkYnVpbGRfc3RydWN0dXJleyJBUFBTXyR7YXBwbmFtZX1fU09VUkNFUyJ9fSkpOwogICAgIG15IEBzb3VyY2VzOwpAQCAtMzI1LDYgKzI3NSw4IEBACiAgICAgbXkgJGluY2x1ZGVzPSBqb2luKCI7Iiwgc29ydChtYXAoIiZxdW90OyRyZWxfZGlyXFwkXyZxdW90OyIsIEB7JCRidWlsZF9zdHJ1Y3R1cmV7IkFQUFNfJHthcHBuYW1lfV9JTkNMVURFUyJ9fSkpKTsKICAgICBteSAkY2ZsYWdzICA9IGpvaW4oIiAiLCBzb3J0KEB7JCRidWlsZF9zdHJ1Y3R1cmV7IkFQUFNfJHthcHBuYW1lfV9DRkxBR1MifX0pKTsKICAgICAkY2ZsYWdzID1+IHMvXCIvJnF1b3Q7L2c7CisgICAgJGNmbGFncyA9fiBzLzwvJmx0Oy9nOworICAgICRjZmxhZ3MgPX4gcy8+LyZndDsvZzsKIAogICAgIG15ICRjZmxhZ3NfZGVidWcgPSAkY2ZsYWdzOwogICAgICRjZmxhZ3NfZGVidWcgPX4gcy8tTVQvLU1UZC87CkBAIC0zNTEsNiArMzAzLDggQEAKIAogICAgICRkZWZpbmVzID1+IHMvLUQvL2c7CiAgICAgJGRlZmluZXMgPX4gcy9cIi9cXCZxdW90Oy9nOworICAgICRkZWZpbmVzID1+IHMvPC8mbHQ7L2c7CisgICAgJGRlZmluZXMgPX4gcy8+LyZndDsvZzsKICAgICAkZGVmaW5lcyA9fiBzL1wnLy9nOwogICAgICRkZWZpbmVzID1+IHMvXFxcXC9cXC9nOwogICAgICRpbmNsdWRlcyA9fiBzLy1JLy9nOwpAQCAtMzg4LDkgKzM0Miw2IEBACiAJCQkJTmFtZT0iVkNYTUxEYXRhR2VuZXJhdG9yVG9vbCIKIAkJCS8+CiAJCQk8VG9vbAotCQkJCU5hbWU9IlZDV2ViU2VydmljZVByb3h5R2VuZXJhdG9yVG9vbCIKLQkJCS8+Ci0JCQk8VG9vbAogCQkJCU5hbWU9IlZDTUlETFRvb2wiCiAJCQkvPgogCQkJPFRvb2wKQEAgLTQ1OSw5ICs0MTAsNiBAQAogCQkJCU5hbWU9IlZDWE1MRGF0YUdlbmVyYXRvclRvb2wiCiAJCQkvPgogCQkJPFRvb2wKLQkJCQlOYW1lPSJWQ1dlYlNlcnZpY2VQcm94eUdlbmVyYXRvclRvb2wiCi0JCQkvPgotCQkJPFRvb2wKIAkJCQlOYW1lPSJWQ01JRExUb29sIgogCQkJLz4KIAkJCTxUb29sCkBAIC01NjEsMjAgKzUwOSwxOCBAQAogICAgIGZvcmVhY2ggKEBhcHBzKSB7CiAgICAgICAgICRfID1+IHMvXC8vXy9nOwogICAgICAgICAkXyA9fiBzL1wuZXhlLy87Ci0gICAgICAgIHB1c2goQHRtcCwgJF8pOworICAgICAgICBpZiAoJF8gZXEgImdpdCIgKSB7CisgICAgICAgICAgICB1bnNoaWZ0KEB0bXAsICRfKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHB1c2goQHRtcCwgJF8pOworICAgICAgICB9CiAgICAgfQogICAgIEBhcHBzID0gQHRtcDsKIAogICAgIG9wZW4gRiwgIj5naXQuc2xuIiB8fCBkaWUgIkNvdWxkIG5vdCBvcGVuIGdpdC5zbG4gZm9yIHdyaXRpbmchXG4iOwogICAgIGJpbm1vZGUgRiwgIjpjcmxmIjsKICAgICBwcmludCBGICIkU0xOX0hFQUQiOwotICAgIGZvcmVhY2ggKEBsaWJzKSB7Ci0gICAgICAgIG15ICRsaWJuYW1lID0gJF87Ci0gICAgICAgIG15ICR1dWlkID0gJGJ1aWxkX3N0cnVjdHVyZXsiTElCU18ke2xpYm5hbWV9X0dVSUQifTsKLSAgICAgICAgcHJpbnQgRiAiJFNMTl9QUkUiOwotICAgICAgICBwcmludCBGICJcIiR7bGlibmFtZX1cIiwgXCIke2xpYm5hbWV9XFwke2xpYm5hbWV9LnZjcHJvalwiLCBcIiR7dXVpZH1cIiI7Ci0gICAgICAgIHByaW50IEYgIiRTTE5fUE9TVCI7Ci0gICAgfQorCiAgICAgbXkgJHV1aWRfbGliZ2l0ID0gJGJ1aWxkX3N0cnVjdHVyZXsiTElCU19saWJnaXRfR1VJRCJ9OwogICAgIG15ICR1dWlkX3hkaWZmX2xpYiA9ICRidWlsZF9zdHJ1Y3R1cmV7IkxJQlNfeGRpZmZfbGliX0dVSUQifTsKICAgICBmb3JlYWNoIChAYXBwcykgewpAQCAtNTg4LDYgKzUzNCwxMyBAQAogICAgICAgICBwcmludCBGICIJRW5kUHJvamVjdFNlY3Rpb24iOwogICAgICAgICBwcmludCBGICIkU0xOX1BPU1QiOwogICAgIH0KKyAgICBmb3JlYWNoIChAbGlicykgeworICAgICAgICBteSAkbGlibmFtZSA9ICRfOworICAgICAgICBteSAkdXVpZCA9ICRidWlsZF9zdHJ1Y3R1cmV7IkxJQlNfJHtsaWJuYW1lfV9HVUlEIn07CisgICAgICAgIHByaW50IEYgIiRTTE5fUFJFIjsKKyAgICAgICAgcHJpbnQgRiAiXCIke2xpYm5hbWV9XCIsIFwiJHtsaWJuYW1lfVxcJHtsaWJuYW1lfS52Y3Byb2pcIiwgXCIke3V1aWR9XCIiOworICAgICAgICBwcmludCBGICIkU0xOX1BPU1QiOworICAgIH0KIAogICAgIHByaW50IEYgPDwgIkVPTSI7CiBHbG9iYWwKQEAgLTU5OSwxNyArNTUyLDE3IEBACiAgICAgcHJpbnQgRiA8PCAiRU9NIjsKIAlHbG9iYWxTZWN0aW9uKFByb2plY3RDb25maWd1cmF0aW9uUGxhdGZvcm1zKSA9IHBvc3RTb2x1dGlvbgogRU9NCi0gICAgZm9yZWFjaCAoQGxpYnMpIHsKLSAgICAgICAgbXkgJGxpYm5hbWUgPSAkXzsKLSAgICAgICAgbXkgJHV1aWQgPSAkYnVpbGRfc3RydWN0dXJleyJMSUJTXyR7bGlibmFtZX1fR1VJRCJ9OworICAgIGZvcmVhY2ggKEBhcHBzKSB7CisgICAgICAgIG15ICRhcHBuYW1lID0gJF87CisgICAgICAgIG15ICR1dWlkID0gJGJ1aWxkX3N0cnVjdHVyZXsiQVBQU18ke2FwcG5hbWV9X0dVSUQifTsKICAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uRGVidWd8V2luMzIuQWN0aXZlQ2ZnID0gRGVidWd8V2luMzJcbiI7CiAgICAgICAgIHByaW50IEYgIlx0XHQke3V1aWR9LkRlYnVnfFdpbjMyLkJ1aWxkLjAgPSBEZWJ1Z3xXaW4zMlxuIjsKICAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uUmVsZWFzZXxXaW4zMi5BY3RpdmVDZmcgPSBSZWxlYXNlfFdpbjMyXG4iOwogICAgICAgICBwcmludCBGICJcdFx0JHt1dWlkfS5SZWxlYXNlfFdpbjMyLkJ1aWxkLjAgPSBSZWxlYXNlfFdpbjMyXG4iOwogICAgIH0KLSAgICBmb3JlYWNoIChAYXBwcykgewotICAgICAgICBteSAkYXBwbmFtZSA9ICRfOwotICAgICAgICBteSAkdXVpZCA9ICRidWlsZF9zdHJ1Y3R1cmV7IkFQUFNfJHthcHBuYW1lfV9HVUlEIn07CisgICAgZm9yZWFjaCAoQGxpYnMpIHsKKyAgICAgICAgbXkgJGxpYm5hbWUgPSAkXzsKKyAgICAgICAgbXkgJHV1aWQgPSAkYnVpbGRfc3RydWN0dXJleyJMSUJTXyR7bGlibmFtZX1fR1VJRCJ9OwogICAgICAgICBwcmludCBGICJcdFx0JHt1dWlkfS5EZWJ1Z3xXaW4zMi5BY3RpdmVDZmcgPSBEZWJ1Z3xXaW4zMlxuIjsKICAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uRGVidWd8V2luMzIuQnVpbGQuMCA9IERlYnVnfFdpbjMyXG4iOwogICAgICAgICBwcmludCBGICJcdFx0JHt1dWlkfS5SZWxlYXNlfFdpbjMyLkFjdGl2ZUNmZyA9IFJlbGVhc2V8V2luMzJcbiI7CmRpZmYgLS1naXQgYS9jb250cmliL2J1aWxkc3lzdGVtcy9HZW5lcmF0b3JzL1ZjeHByb2oucG0gYi9jb250cmliL2J1aWxkc3lzdGVtcy9HZW5lcmF0b3JzL1ZjeHByb2oucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWM2NjZmOQotLS0gL2Rldi9udWxsCisrKyBiL2NvbnRyaWIvYnVpbGRzeXN0ZW1zL0dlbmVyYXRvcnMvVmN4cHJvai5wbQpAQCAtMCwwICsxLDM5MiBAQAorcGFja2FnZSBHZW5lcmF0b3JzOjpWY3hwcm9qOworcmVxdWlyZSBFeHBvcnRlcjsKKwordXNlIHN0cmljdDsKK3VzZSB2YXJzIHF3KCRWRVJTSU9OKTsKK3VzZSBEaWdlc3Q6OlNIQSBxdyhzaGEyNTZfaGV4KTsKKworb3VyICRWRVJTSU9OID0gJzEuMDAnOworb3VyKEBJU0EsIEBFWFBPUlQsIEBFWFBPUlRfT0ssIEBBVkFJTEFCTEUpOworQElTQSA9IHF3KEV4cG9ydGVyKTsKKworQkVHSU4geworICAgIHB1c2ggQEVYUE9SVF9PSywgcXcoZ2VuZXJhdGUpOworfQorCitzdWIgZ2VuZXJhdGVfZ3VpZCAoJCkgeworCW15ICRoZXggPSBzaGEyNTZfaGV4KCRfWzBdKTsKKwkkaGV4ID1+IHMvXiguezh9KSguezR9KSguezR9KSguezR9KSguezEyfSkuKi97JDEtJDItJDMtJDQtJDV9LzsKKwkkaGV4ID1+IHRyL2Etei9BLVovOworCXJldHVybiAkaGV4OworfQorCitzdWIgZ2VuZXJhdGUgeworICAgIG15ICgkZ2l0X2RpciwgJG91dF9kaXIsICRyZWxfZGlyLCAlYnVpbGRfc3RydWN0dXJlKSA9IEBfOworICAgIG15IEBsaWJzID0gQHskYnVpbGRfc3RydWN0dXJleyJMSUJTIn19OworICAgIGZvcmVhY2ggKEBsaWJzKSB7CisgICAgICAgIGNyZWF0ZVByb2plY3QoJF8sICRnaXRfZGlyLCAkb3V0X2RpciwgJHJlbF9kaXIsIFwlYnVpbGRfc3RydWN0dXJlLCAxKTsKKyAgICB9CisKKyAgICBteSBAYXBwcyA9IEB7JGJ1aWxkX3N0cnVjdHVyZXsiQVBQUyJ9fTsKKyAgICBmb3JlYWNoIChAYXBwcykgeworICAgICAgICBjcmVhdGVQcm9qZWN0KCRfLCAkZ2l0X2RpciwgJG91dF9kaXIsICRyZWxfZGlyLCBcJWJ1aWxkX3N0cnVjdHVyZSwgMCk7CisgICAgfQorCisgICAgY3JlYXRlR2x1ZVByb2plY3QoJGdpdF9kaXIsICRvdXRfZGlyLCAkcmVsX2RpciwgJWJ1aWxkX3N0cnVjdHVyZSk7CisgICAgcmV0dXJuIDA7Cit9CisKK3N1YiBjcmVhdGVQcm9qZWN0IHsKKyAgICBteSAoJG5hbWUsICRnaXRfZGlyLCAkb3V0X2RpciwgJHJlbF9kaXIsICRidWlsZF9zdHJ1Y3R1cmUsICRzdGF0aWNfbGlicmFyeSkgPSBAXzsKKyAgICBteSAkbGFiZWwgPSAkc3RhdGljX2xpYnJhcnkgPyAibGliIiA6ICJhcHAiOworICAgIG15ICRwcmVmaXggPSAkc3RhdGljX2xpYnJhcnkgPyAiTElCU18iIDogIkFQUFNfIjsKKyAgICBteSAkY29uZmlnX3R5cGUgPSAkc3RhdGljX2xpYnJhcnkgPyAiU3RhdGljTGlicmFyeSIgOiAiQXBwbGljYXRpb24iOworICAgIHByaW50ICJHZW5lcmF0ZSAkbmFtZSB2Y3hwcm9qICRsYWJlbCBwcm9qZWN0XG4iOworICAgIG15ICRjZHVwID0gJG5hbWU7CisgICAgJGNkdXAgPX4gcy9bXlwvXSsvLi4vZzsKKyAgICAkY2R1cCA9fiBzL1wvL1xcL2c7CisgICAgJHJlbF9kaXIgPSAkcmVsX2RpciBlcSAiLiIgPyAkY2R1cCA6ICIkY2R1cFxcJHJlbF9kaXIiOworICAgICRyZWxfZGlyID1+IHMvXC8vXFwvZzsKKworICAgIG15ICR0YXJnZXQgPSAkbmFtZTsKKyAgICBpZiAoJHN0YXRpY19saWJyYXJ5KSB7CisgICAgICAkdGFyZ2V0ID1+IHMvXC5hLy87CisgICAgfSBlbHNlIHsKKyAgICAgICR0YXJnZXQgPX4gcy9cLmV4ZS8vOworICAgIH0KKworICAgIG15ICR1dWlkID0gZ2VuZXJhdGVfZ3VpZCgkbmFtZSk7CisgICAgJCRidWlsZF9zdHJ1Y3R1cmV7IiRwcmVmaXgke3RhcmdldH1fR1VJRCJ9ID0gJHV1aWQ7CisgICAgbXkgJHZjeHByb2ogPSAkdGFyZ2V0OworICAgICR2Y3hwcm9qID1+IHMvKC4qXC8pPyguKikvJCZcLyQyLnZjeHByb2ovOworICAgICR2Y3hwcm9qID1+IHMvKFteXC9dKikoXC9saWIpXC8obGliLnZjeHByb2opLyQxJDJcLyQxXyQzLzsKKyAgICAkJGJ1aWxkX3N0cnVjdHVyZXsiJHByZWZpeCR7dGFyZ2V0fV9WQ1hQUk9KIn0gPSAkdmN4cHJvajsKKworICAgIG15IEBzcmNzID0gc29ydChtYXAoIiRyZWxfZGlyXFwkXyIsIEB7JCRidWlsZF9zdHJ1Y3R1cmV7IiRwcmVmaXgke25hbWV9X1NPVVJDRVMifX0pKTsKKyAgICBteSBAc291cmNlczsKKyAgICBmb3JlYWNoIChAc3JjcykgeworICAgICAgICAkXyA9fiBzL1wvL1xcL2c7CisgICAgICAgIHB1c2goQHNvdXJjZXMsICRfKTsKKyAgICB9CisgICAgbXkgJGRlZmluZXMgPSBqb2luKCI7Iiwgc29ydChAeyQkYnVpbGRfc3RydWN0dXJleyIkcHJlZml4JHtuYW1lfV9ERUZJTkVTIn19KSk7CisgICAgbXkgJGluY2x1ZGVzPSBqb2luKCI7Iiwgc29ydChtYXAgeyBzL14tSS8vOyBzL1wvL1xcL2c7IEZpbGU6OlNwZWMtPmZpbGVfbmFtZV9pc19hYnNvbHV0ZSgkXykgPyAkXyA6ICIkcmVsX2RpclxcJF8iIH0gQHskJGJ1aWxkX3N0cnVjdHVyZXsiJHByZWZpeCR7bmFtZX1fSU5DTFVERVMifX0pKTsKKyAgICBteSAkY2ZsYWdzID0gam9pbigiICIsIHNvcnQobWFwIHsgcy9eLVtHTE1PV1pdLiovLzsgcy8uKiAuKi8iJCYiLzsgJF87IH0gQHskJGJ1aWxkX3N0cnVjdHVyZXsiJHByZWZpeCR7bmFtZX1fQ0ZMQUdTIn19KSk7CisgICAgJGNmbGFncyA9fiBzLzwvJmx0Oy9nOworICAgICRjZmxhZ3MgPX4gcy8+LyZndDsvZzsKKworICAgIG15ICRsaWJzX3JlbGVhc2UgPSAiXG4gICAgIjsKKyAgICBteSAkbGlic19kZWJ1ZyA9ICJcbiAgICAiOworICAgIGlmICghJHN0YXRpY19saWJyYXJ5KSB7CisgICAgICAkbGlic19yZWxlYXNlID0gam9pbigiOyIsIHNvcnQoZ3JlcCAvXig/IWxpYmdpdFwubGlifHhkaWZmXC9saWJcLmxpYnx2Y3Mtc3ZuXC9saWJcLmxpYikvLCBAeyQkYnVpbGRfc3RydWN0dXJleyIkcHJlZml4JHtuYW1lfV9MSUJTIn19KSk7CisgICAgICAkbGlic19kZWJ1ZyA9ICRsaWJzX3JlbGVhc2U7CisgICAgICAkbGlic19kZWJ1ZyA9fiBzL3psaWJcLmxpYi96bGliZFwubGliL2c7CisgICAgICAkbGlic19kZWJ1ZyA9fiBzL2xpYmN1cmxcLmxpYi9saWJjdXJsLWRcLmxpYi9nOworICAgIH0KKworICAgICRkZWZpbmVzID1+IHMvLUQvL2c7CisgICAgJGRlZmluZXMgPX4gcy88LyZsdDsvZzsKKyAgICAkZGVmaW5lcyA9fiBzLz4vJmd0Oy9nOworICAgICRkZWZpbmVzID1+IHMvXCcvL2c7CisKKyAgICBkaWUgIkNvdWxkIG5vdCBjcmVhdGUgdGhlIGRpcmVjdG9yeSAkdGFyZ2V0IGZvciAkbGFiZWwgcHJvamVjdCFcbiIgdW5sZXNzICgtZCAiJHRhcmdldCIgfHwgbWtkaXIgIiR0YXJnZXQiKTsKKworICAgIG9wZW4gRiwgIj4kdmN4cHJvaiIgb3IgZGllICJDb3VsZCBub3Qgb3BlbiAkdmN4cHJvaiBmb3Igd3JpdGluZyFcbiI7CisgICAgYmlubW9kZSBGLCAiOmNybGYgOnV0ZjgiOworICAgIHByaW50IEYgY2hyKDB4RkVGRik7CisgICAgcHJpbnQgRiA8PCAiRU9NIjsKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04Ij8+Cis8UHJvamVjdCBEZWZhdWx0VGFyZ2V0cz0iQnVpbGQiIFRvb2xzVmVyc2lvbj0iMTQuMCIgeG1sbnM9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vZGV2ZWxvcGVyL21zYnVpbGQvMjAwMyI+CisgIDxJdGVtR3JvdXAgTGFiZWw9IlByb2plY3RDb25maWd1cmF0aW9ucyI+CisgICAgPFByb2plY3RDb25maWd1cmF0aW9uIEluY2x1ZGU9IkRlYnVnfFdpbjMyIj4KKyAgICAgIDxDb25maWd1cmF0aW9uPkRlYnVnPC9Db25maWd1cmF0aW9uPgorICAgICAgPFBsYXRmb3JtPldpbjMyPC9QbGF0Zm9ybT4KKyAgICA8L1Byb2plY3RDb25maWd1cmF0aW9uPgorICAgIDxQcm9qZWN0Q29uZmlndXJhdGlvbiBJbmNsdWRlPSJSZWxlYXNlfFdpbjMyIj4KKyAgICAgIDxDb25maWd1cmF0aW9uPlJlbGVhc2U8L0NvbmZpZ3VyYXRpb24+CisgICAgICA8UGxhdGZvcm0+V2luMzI8L1BsYXRmb3JtPgorICAgIDwvUHJvamVjdENvbmZpZ3VyYXRpb24+CisgICAgPFByb2plY3RDb25maWd1cmF0aW9uIEluY2x1ZGU9IkRlYnVnfHg2NCI+CisgICAgICA8Q29uZmlndXJhdGlvbj5EZWJ1ZzwvQ29uZmlndXJhdGlvbj4KKyAgICAgIDxQbGF0Zm9ybT54NjQ8L1BsYXRmb3JtPgorICAgIDwvUHJvamVjdENvbmZpZ3VyYXRpb24+CisgICAgPFByb2plY3RDb25maWd1cmF0aW9uIEluY2x1ZGU9IlJlbGVhc2V8eDY0Ij4KKyAgICAgIDxDb25maWd1cmF0aW9uPlJlbGVhc2U8L0NvbmZpZ3VyYXRpb24+CisgICAgICA8UGxhdGZvcm0+eDY0PC9QbGF0Zm9ybT4KKyAgICA8L1Byb2plY3RDb25maWd1cmF0aW9uPgorICA8L0l0ZW1Hcm91cD4KKyAgPFByb3BlcnR5R3JvdXAgTGFiZWw9Ikdsb2JhbHMiPgorICAgIDxQcm9qZWN0R3VpZD4kdXVpZDwvUHJvamVjdEd1aWQ+CisgICAgPEtleXdvcmQ+V2luMzJQcm9qPC9LZXl3b3JkPgorICAgIDxWQ1BLR0FyY2ggQ29uZGl0aW9uPSInXCQoUGxhdGZvcm0pJz09J1dpbjMyJyI+eDg2LXdpbmRvd3M8L1ZDUEtHQXJjaD4KKyAgICA8VkNQS0dBcmNoIENvbmRpdGlvbj0iJ1wkKFBsYXRmb3JtKSchPSdXaW4zMiciPng2NC13aW5kb3dzPC9WQ1BLR0FyY2g+CisgICAgPFZDUEtHQXJjaERpcmVjdG9yeT4kY2R1cFxcY29tcGF0XFx2Y2J1aWxkXFx2Y3BrZ1xcaW5zdGFsbGVkXFxcJChWQ1BLR0FyY2gpPC9WQ1BLR0FyY2hEaXJlY3Rvcnk+CisgICAgPFZDUEtHQmluRGlyZWN0b3J5IENvbmRpdGlvbj0iJ1wkKENvbmZpZ3VyYXRpb24pJz09J0RlYnVnJyI+XCQoVkNQS0dBcmNoRGlyZWN0b3J5KVxcZGVidWdcXGJpbjwvVkNQS0dCaW5EaXJlY3Rvcnk+CisgICAgPFZDUEtHTGliRGlyZWN0b3J5IENvbmRpdGlvbj0iJ1wkKENvbmZpZ3VyYXRpb24pJz09J0RlYnVnJyI+XCQoVkNQS0dBcmNoRGlyZWN0b3J5KVxcZGVidWdcXGxpYjwvVkNQS0dMaWJEaXJlY3Rvcnk+CisgICAgPFZDUEtHQmluRGlyZWN0b3J5IENvbmRpdGlvbj0iJ1wkKENvbmZpZ3VyYXRpb24pJyE9J0RlYnVnJyI+XCQoVkNQS0dBcmNoRGlyZWN0b3J5KVxcYmluPC9WQ1BLR0JpbkRpcmVjdG9yeT4KKyAgICA8VkNQS0dMaWJEaXJlY3RvcnkgQ29uZGl0aW9uPSInXCQoQ29uZmlndXJhdGlvbiknIT0nRGVidWcnIj5cJChWQ1BLR0FyY2hEaXJlY3RvcnkpXFxsaWI8L1ZDUEtHTGliRGlyZWN0b3J5PgorICAgIDxWQ1BLR0luY2x1ZGVEaXJlY3Rvcnk+XCQoVkNQS0dBcmNoRGlyZWN0b3J5KVxcaW5jbHVkZTwvVkNQS0dJbmNsdWRlRGlyZWN0b3J5PgorICAgIDxWQ1BLR0xpYnMgQ29uZGl0aW9uPSInXCQoQ29uZmlndXJhdGlvbiknPT0nRGVidWcnIj4kbGlic19kZWJ1ZzwvVkNQS0dMaWJzPgorICAgIDxWQ1BLR0xpYnMgQ29uZGl0aW9uPSInXCQoQ29uZmlndXJhdGlvbiknIT0nRGVidWcnIj4kbGlic19yZWxlYXNlPC9WQ1BLR0xpYnM+CisgIDwvUHJvcGVydHlHcm91cD4KKyAgPEltcG9ydCBQcm9qZWN0PSJcJChWQ1RhcmdldHNQYXRoKVxcTWljcm9zb2Z0LkNwcC5EZWZhdWx0LnByb3BzIiAvPgorICA8UHJvcGVydHlHcm91cCBDb25kaXRpb249IidcJChDb25maWd1cmF0aW9uKSc9PSdEZWJ1ZyciIExhYmVsPSJDb25maWd1cmF0aW9uIj4KKyAgICA8VXNlRGVidWdMaWJyYXJpZXM+dHJ1ZTwvVXNlRGVidWdMaWJyYXJpZXM+CisgICAgPExpbmtJbmNyZW1lbnRhbD50cnVlPC9MaW5rSW5jcmVtZW50YWw+CisgIDwvUHJvcGVydHlHcm91cD4KKyAgPFByb3BlcnR5R3JvdXAgQ29uZGl0aW9uPSInXCQoQ29uZmlndXJhdGlvbiknPT0nUmVsZWFzZSciIExhYmVsPSJDb25maWd1cmF0aW9uIj4KKyAgICA8VXNlRGVidWdMaWJyYXJpZXM+ZmFsc2U8L1VzZURlYnVnTGlicmFyaWVzPgorICAgIDxXaG9sZVByb2dyYW1PcHRpbWl6YXRpb24+dHJ1ZTwvV2hvbGVQcm9ncmFtT3B0aW1pemF0aW9uPgorICA8L1Byb3BlcnR5R3JvdXA+CisgIDxQcm9wZXJ0eUdyb3VwPgorICAgIDxDb25maWd1cmF0aW9uVHlwZT4kY29uZmlnX3R5cGU8L0NvbmZpZ3VyYXRpb25UeXBlPgorICAgIDxQbGF0Zm9ybVRvb2xzZXQ+djE0MDwvUGxhdGZvcm1Ub29sc2V0PgorICAgIDwhLS0gPENoYXJhY3RlclNldD5VVEYtODwvQ2hhcmFjdGVyU2V0PiAtLT4KKyAgICA8T3V0RGlyPi4uXFw8L091dERpcj4KKyAgICA8IS0tIDxJbnREaXI+XCQoUHJvamVjdERpcilcJChDb25maWd1cmF0aW9uKVxcPC9JbnREaXI+IC0tPgorICA8L1Byb3BlcnR5R3JvdXA+CisgIDxJbXBvcnQgUHJvamVjdD0iXCQoVkNUYXJnZXRzUGF0aClcXE1pY3Jvc29mdC5DcHAucHJvcHMiIC8+CisgIDxJbXBvcnRHcm91cCBMYWJlbD0iRXh0ZW5zaW9uU2V0dGluZ3MiPgorICA8L0ltcG9ydEdyb3VwPgorICA8SW1wb3J0R3JvdXAgTGFiZWw9IlNoYXJlZCI+CisgIDwvSW1wb3J0R3JvdXA+CisgIDxJbXBvcnRHcm91cCBMYWJlbD0iUHJvcGVydHlTaGVldHMiPgorICAgIDxJbXBvcnQgUHJvamVjdD0iXCQoVXNlclJvb3REaXIpXFxNaWNyb3NvZnQuQ3BwLlwkKFBsYXRmb3JtKS51c2VyLnByb3BzIiBDb25kaXRpb249ImV4aXN0cygnXCQoVXNlclJvb3REaXIpXFxNaWNyb3NvZnQuQ3BwLlwkKFBsYXRmb3JtKS51c2VyLnByb3BzJykiIExhYmVsPSJMb2NhbEFwcERhdGFQbGF0Zm9ybSIgLz4KKyAgPC9JbXBvcnRHcm91cD4KKyAgPFByb3BlcnR5R3JvdXAgTGFiZWw9IlVzZXJNYWNyb3MiIC8+CisgIDxQcm9wZXJ0eUdyb3VwPgorICAgIDxHZW5lcmF0ZU1hbmlmZXN0PmZhbHNlPC9HZW5lcmF0ZU1hbmlmZXN0PgorICAgIDxFbmFibGVNYW5hZ2VkSW5jcmVtZW50YWxCdWlsZD50cnVlPC9FbmFibGVNYW5hZ2VkSW5jcmVtZW50YWxCdWlsZD4KKyAgPC9Qcm9wZXJ0eUdyb3VwPgorICA8SXRlbURlZmluaXRpb25Hcm91cD4KKyAgICA8Q2xDb21waWxlPgorICAgICAgPEFkZGl0aW9uYWxPcHRpb25zPiRjZmxhZ3MgJShBZGRpdGlvbmFsT3B0aW9ucyk8L0FkZGl0aW9uYWxPcHRpb25zPgorICAgICAgPEFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM+JGNkdXA7JGNkdXBcXGNvbXBhdDskY2R1cFxcY29tcGF0XFxyZWdleDskY2R1cFxcY29tcGF0XFx3aW4zMjskY2R1cFxcY29tcGF0XFxwb2xsOyRjZHVwXFxjb21wYXRcXHZjYnVpbGRcXGluY2x1ZGU7XCQoVkNQS0dJbmNsdWRlRGlyZWN0b3J5KTslKEFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXMpPC9BZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPgorICAgICAgPEVuYWJsZVBhcmFsbGVsQ29kZUdlbmVyYXRpb24gLz4KKyAgICAgIDxJbmxpbmVGdW5jdGlvbkV4cGFuc2lvbj5Pbmx5RXhwbGljaXRJbmxpbmU8L0lubGluZUZ1bmN0aW9uRXhwYW5zaW9uPgorICAgICAgPFByZWNvbXBpbGVkSGVhZGVyIC8+CisgICAgICA8RGVidWdJbmZvcm1hdGlvbkZvcm1hdD5Qcm9ncmFtRGF0YWJhc2U8L0RlYnVnSW5mb3JtYXRpb25Gb3JtYXQ+CisgICAgPC9DbENvbXBpbGU+CisgICAgPExpYj4KKyAgICAgIDxTdXBwcmVzc1N0YXJ0dXBCYW5uZXI+dHJ1ZTwvU3VwcHJlc3NTdGFydHVwQmFubmVyPgorICAgIDwvTGliPgorICAgIDxMaW5rPgorICAgICAgPEFkZGl0aW9uYWxMaWJyYXJ5RGlyZWN0b3JpZXM+XCQoVkNQS0dMaWJEaXJlY3RvcnkpOyUoQWRkaXRpb25hbExpYnJhcnlEaXJlY3Rvcmllcyk8L0FkZGl0aW9uYWxMaWJyYXJ5RGlyZWN0b3JpZXM+CisgICAgICA8QWRkaXRpb25hbERlcGVuZGVuY2llcz5cJChWQ1BLR0xpYnMpO1wkKEFkZGl0aW9uYWxEZXBlbmRlbmNpZXMpPC9BZGRpdGlvbmFsRGVwZW5kZW5jaWVzPgorICAgICAgPEFkZGl0aW9uYWxPcHRpb25zPmludmFsaWRjb250aW51ZS5vYmogJShBZGRpdGlvbmFsT3B0aW9ucyk8L0FkZGl0aW9uYWxPcHRpb25zPgorICAgICAgPEVudHJ5UG9pbnRTeW1ib2w+d21haW5DUlRTdGFydHVwPC9FbnRyeVBvaW50U3ltYm9sPgorICAgICAgPE1hbmlmZXN0RmlsZT4kY2R1cFxcY29tcGF0XFx3aW4zMlxcZ2l0Lm1hbmlmZXN0PC9NYW5pZmVzdEZpbGU+CisgICAgICA8U3ViU3lzdGVtPkNvbnNvbGU8L1N1YlN5c3RlbT4KKyAgICA8L0xpbms+CitFT00KKyAgICBpZiAoJHRhcmdldCBlcSAnbGliZ2l0JykgeworICAgICAgICBwcmludCBGIDw8ICJFT00iOworICAgIDxQcmVCdWlsZEV2ZW50IENvbmRpdGlvbj0iIUV4aXN0cygnJGNkdXBcXGNvbXBhdFxcdmNidWlsZFxcdmNwa2dcXGluc3RhbGxlZFxcXCQoVkNQS0dBcmNoKVxcaW5jbHVkZVxcb3BlbnNzbFxcc3NsLmgnKSI+CisgICAgICA8TWVzc2FnZT5Jbml0aWFsaXplIFZDUEtHPC9NZXNzYWdlPgorICAgICAgPENvbW1hbmQ+ZGVsICIkY2R1cFxcY29tcGF0XFx2Y2J1aWxkXFx2Y3BrZyI8L0NvbW1hbmQ+CisgICAgICA8Q29tbWFuZD5jYWxsICIkY2R1cFxcY29tcGF0XFx2Y2J1aWxkXFx2Y3BrZ19pbnN0YWxsLmJhdCI8L0NvbW1hbmQ+CisgICAgPC9QcmVCdWlsZEV2ZW50PgorRU9NCisgICAgfQorICAgIHByaW50IEYgPDwgIkVPTSI7CisgIDwvSXRlbURlZmluaXRpb25Hcm91cD4KKyAgPEl0ZW1EZWZpbml0aW9uR3JvdXAgQ29uZGl0aW9uPSInXCQoUGxhdGZvcm0pJz09J1dpbjMyJyI+CisgICAgPExpbms+CisgICAgICA8VGFyZ2V0TWFjaGluZT5NYWNoaW5lWDg2PC9UYXJnZXRNYWNoaW5lPgorICAgIDwvTGluaz4KKyAgPC9JdGVtRGVmaW5pdGlvbkdyb3VwPgorICA8SXRlbURlZmluaXRpb25Hcm91cCBDb25kaXRpb249IidcJChDb25maWd1cmF0aW9uKSc9PSdEZWJ1ZyciPgorICAgIDxDbENvbXBpbGU+CisgICAgICA8T3B0aW1pemF0aW9uPkRpc2FibGVkPC9PcHRpbWl6YXRpb24+CisgICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+V0lOMzI7X0RFQlVHOyRkZWZpbmVzOyUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4KKyAgICAgIDxSdW50aW1lTGlicmFyeT5NdWx0aVRocmVhZGVkRGVidWdETEw8L1J1bnRpbWVMaWJyYXJ5PgorICAgIDwvQ2xDb21waWxlPgorICAgIDxMaW5rPgorICAgICAgPEdlbmVyYXRlRGVidWdJbmZvcm1hdGlvbj50cnVlPC9HZW5lcmF0ZURlYnVnSW5mb3JtYXRpb24+CisgICAgPC9MaW5rPgorICA8L0l0ZW1EZWZpbml0aW9uR3JvdXA+CisgIDxJdGVtRGVmaW5pdGlvbkdyb3VwIENvbmRpdGlvbj0iJ1wkKENvbmZpZ3VyYXRpb24pJz09J1JlbGVhc2UnIj4KKyAgICA8Q2xDb21waWxlPgorICAgICAgPE9wdGltaXphdGlvbj5NYXhTcGVlZDwvT3B0aW1pemF0aW9uPgorICAgICAgPEludHJpbnNpY0Z1bmN0aW9ucz50cnVlPC9JbnRyaW5zaWNGdW5jdGlvbnM+CisgICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+V0lOMzI7TkRFQlVHOyRkZWZpbmVzOyUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4KKyAgICAgIDxSdW50aW1lTGlicmFyeT5NdWx0aVRocmVhZGVkRExMPC9SdW50aW1lTGlicmFyeT4KKyAgICAgIDxGdW5jdGlvbkxldmVsTGlua2luZz50cnVlPC9GdW5jdGlvbkxldmVsTGlua2luZz4KKyAgICAgIDxGYXZvclNpemVPclNwZWVkPlNwZWVkPC9GYXZvclNpemVPclNwZWVkPgorICAgIDwvQ2xDb21waWxlPgorICAgIDxMaW5rPgorICAgICAgPEdlbmVyYXRlRGVidWdJbmZvcm1hdGlvbj50cnVlPC9HZW5lcmF0ZURlYnVnSW5mb3JtYXRpb24+CisgICAgICA8RW5hYmxlQ09NREFURm9sZGluZz50cnVlPC9FbmFibGVDT01EQVRGb2xkaW5nPgorICAgICAgPE9wdGltaXplUmVmZXJlbmNlcz50cnVlPC9PcHRpbWl6ZVJlZmVyZW5jZXM+CisgICAgPC9MaW5rPgorICA8L0l0ZW1EZWZpbml0aW9uR3JvdXA+CisgIDxJdGVtR3JvdXA+CitFT00KKyAgICBmb3JlYWNoKEBzb3VyY2VzKSB7CisgICAgICAgIHByaW50IEYgPDwgIkVPTSI7CisgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIkXyIgLz4KK0VPTQorICAgIH0KKyAgICBwcmludCBGIDw8ICJFT00iOworICA8L0l0ZW1Hcm91cD4KK0VPTQorICAgIGlmICghJHN0YXRpY19saWJyYXJ5IHx8ICR0YXJnZXQgPX4gJ3Zjcy1zdm4nIHx8ICR0YXJnZXQgPX4gJ3hkaWZmJykgeworICAgICAgbXkgJHV1aWRfbGliZ2l0ID0gJCRidWlsZF9zdHJ1Y3R1cmV7IkxJQlNfbGliZ2l0X0dVSUQifTsKKyAgICAgIG15ICR1dWlkX3hkaWZmX2xpYiA9ICQkYnVpbGRfc3RydWN0dXJleyJMSUJTX3hkaWZmL2xpYl9HVUlEIn07CisKKyAgICAgIHByaW50IEYgPDwgIkVPTSI7CisgIDxJdGVtR3JvdXA+CisgICAgPFByb2plY3RSZWZlcmVuY2UgSW5jbHVkZT0iJGNkdXBcXGxpYmdpdFxcbGliZ2l0LnZjeHByb2oiPgorICAgICAgPFByb2plY3Q+JHV1aWRfbGliZ2l0PC9Qcm9qZWN0PgorICAgICAgPFJlZmVyZW5jZU91dHB1dEFzc2VtYmx5PmZhbHNlPC9SZWZlcmVuY2VPdXRwdXRBc3NlbWJseT4KKyAgICA8L1Byb2plY3RSZWZlcmVuY2U+CitFT00KKyAgICAgIGlmICghKCRuYW1lID1+ICd4ZGlmZicpKSB7CisgICAgICAgIHByaW50IEYgPDwgIkVPTSI7CisgICAgPFByb2plY3RSZWZlcmVuY2UgSW5jbHVkZT0iJGNkdXBcXHhkaWZmXFxsaWJcXHhkaWZmX2xpYi52Y3hwcm9qIj4KKyAgICAgIDxQcm9qZWN0PiR1dWlkX3hkaWZmX2xpYjwvUHJvamVjdD4KKyAgICAgIDxSZWZlcmVuY2VPdXRwdXRBc3NlbWJseT5mYWxzZTwvUmVmZXJlbmNlT3V0cHV0QXNzZW1ibHk+CisgICAgPC9Qcm9qZWN0UmVmZXJlbmNlPgorRU9NCisgICAgICB9CisgICAgICBpZiAoJG5hbWUgPX4gLyh0ZXN0LShsaW5lLWJ1ZmZlcnxzdm4tZmUpfF5naXQtcmVtb3RlLXRlc3Rzdm4pXC5leGUkLykgeworICAgICAgICBteSAkdXVpZF92Y3Nfc3ZuX2xpYiA9ICQkYnVpbGRfc3RydWN0dXJleyJMSUJTX3Zjcy1zdm4vbGliX0dVSUQifTsKKyAgICAgICAgcHJpbnQgRiA8PCAiRU9NIjsKKyAgICA8UHJvamVjdFJlZmVyZW5jZSBJbmNsdWRlPSIkY2R1cFxcdmNzLXN2blxcbGliXFx2Y3Mtc3ZuX2xpYi52Y3hwcm9qIj4KKyAgICAgIDxQcm9qZWN0PiR1dWlkX3Zjc19zdm5fbGliPC9Qcm9qZWN0PgorICAgICAgPFJlZmVyZW5jZU91dHB1dEFzc2VtYmx5PmZhbHNlPC9SZWZlcmVuY2VPdXRwdXRBc3NlbWJseT4KKyAgICA8L1Byb2plY3RSZWZlcmVuY2U+CitFT00KKyAgICAgIH0KKyAgICAgIHByaW50IEYgPDwgIkVPTSI7CisgIDwvSXRlbUdyb3VwPgorRU9NCisgICAgfQorICAgIHByaW50IEYgPDwgIkVPTSI7CisgIDxJbXBvcnQgUHJvamVjdD0iXCQoVkNUYXJnZXRzUGF0aClcXE1pY3Jvc29mdC5DcHAudGFyZ2V0cyIgLz4KK0VPTQorICAgIGlmICghJHN0YXRpY19saWJyYXJ5KSB7CisgICAgICBwcmludCBGIDw8ICJFT00iOworICA8VGFyZ2V0IE5hbWU9IiR7dGFyZ2V0fV9BZnRlckJ1aWxkIiBBZnRlclRhcmdldHM9IkFmdGVyQnVpbGQiPgorICAgIDxJdGVtR3JvdXA+CisgICAgICA8RExMc0FuZFBEQnMgSW5jbHVkZT0iXCQoVkNQS0dCaW5EaXJlY3RvcnkpXFwqLmRsbDtcJChWQ1BLR0JpbkRpcmVjdG9yeSlcXCoucGRiIiAvPgorICAgIDwvSXRlbUdyb3VwPgorICAgIDxDb3B5IFNvdXJjZUZpbGVzPSJAKERMTHNBbmRQREJzKSIgRGVzdGluYXRpb25Gb2xkZXI9IlwkKE91dERpcikiIFNraXBVbmNoYW5nZWRGaWxlcz0idHJ1ZSIgVXNlSGFyZGxpbmtzSWZQb3NzaWJsZT0idHJ1ZSIgLz4KKyAgICA8TWFrZURpciBEaXJlY3Rvcmllcz0iLi5cXHRlbXBsYXRlc1xcYmx0XFxicmFuY2hlcyIgLz4KKyAgPC9UYXJnZXQ+CitFT00KKyAgICB9CisgICAgaWYgKCR0YXJnZXQgZXEgJ2dpdCcpIHsKKyAgICAgIHByaW50IEYgIiAgPEltcG9ydCBQcm9qZWN0PVwiTGlua09yQ29weUJ1aWx0aW5zLnRhcmdldHNcIiAvPlxuIjsKKyAgICB9CisgICAgaWYgKCR0YXJnZXQgZXEgJ2dpdC1yZW1vdGUtaHR0cCcpIHsKKyAgICAgIHByaW50IEYgIiAgPEltcG9ydCBQcm9qZWN0PVwiTGlua09yQ29weVJlbW90ZUh0dHAudGFyZ2V0c1wiIC8+XG4iOworICAgIH0KKyAgICBwcmludCBGIDw8ICJFT00iOworPC9Qcm9qZWN0PgorRU9NCisgICAgY2xvc2UgRjsKK30KKworc3ViIGNyZWF0ZUdsdWVQcm9qZWN0IHsKKyAgICBteSAoJGdpdF9kaXIsICRvdXRfZGlyLCAkcmVsX2RpciwgJWJ1aWxkX3N0cnVjdHVyZSkgPSBAXzsKKyAgICBwcmludCAiR2VuZXJhdGUgc29sdXRpb25zIGZpbGVcbiI7CisgICAgJHJlbF9kaXIgPSAiLi5cXCRyZWxfZGlyIjsKKyAgICAkcmVsX2RpciA9fiBzL1wvL1xcL2c7CisgICAgbXkgJFNMTl9IRUFEID0gIk1pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIFNvbHV0aW9uIEZpbGUsIEZvcm1hdCBWZXJzaW9uIDExLjAwXG4jIFZpc3VhbCBTdHVkaW8gMjAxMFxuIjsKKyAgICBteSAkU0xOX1BSRSAgPSAiUHJvamVjdChcIns4QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9XCIpID0gIjsKKyAgICBteSAkU0xOX1BPU1QgPSAiXG5FbmRQcm9qZWN0XG4iOworCisgICAgbXkgQGxpYnMgPSBAeyRidWlsZF9zdHJ1Y3R1cmV7IkxJQlMifX07CisgICAgbXkgQHRtcDsKKyAgICBmb3JlYWNoIChAbGlicykgeworICAgICAgICAkXyA9fiBzL1wuYS8vOworICAgICAgICBwdXNoKEB0bXAsICRfKTsKKyAgICB9CisgICAgQGxpYnMgPSBAdG1wOworCisgICAgbXkgQGFwcHMgPSBAeyRidWlsZF9zdHJ1Y3R1cmV7IkFQUFMifX07CisgICAgQHRtcCA9ICgpOworICAgIGZvcmVhY2ggKEBhcHBzKSB7CisgICAgICAgICRfID1+IHMvXC5leGUvLzsKKyAgICAgICAgaWYgKCRfIGVxICJnaXQiICkgeworICAgICAgICAgICAgdW5zaGlmdChAdG1wLCAkXyk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBwdXNoKEB0bXAsICRfKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBAYXBwcyA9IEB0bXA7CisKKyAgICBvcGVuIEYsICI+Z2l0LnNsbiIgfHwgZGllICJDb3VsZCBub3Qgb3BlbiBnaXQuc2xuIGZvciB3cml0aW5nIVxuIjsKKyAgICBiaW5tb2RlIEYsICI6Y3JsZiA6dXRmOCI7CisgICAgcHJpbnQgRiBjaHIoMHhGRUZGKTsKKyAgICBwcmludCBGICIkU0xOX0hFQUQiOworCisgICAgZm9yZWFjaCAoQGFwcHMpIHsKKyAgICAgICAgbXkgJGFwcG5hbWUgPSAkXzsKKyAgICAgICAgbXkgJHV1aWQgPSAkYnVpbGRfc3RydWN0dXJleyJBUFBTXyR7YXBwbmFtZX1fR1VJRCJ9OworICAgICAgICBwcmludCBGICIkU0xOX1BSRSI7CisJbXkgJHZjeHByb2ogPSAkYnVpbGRfc3RydWN0dXJleyJBUFBTXyR7YXBwbmFtZX1fVkNYUFJPSiJ9OworCSR2Y3hwcm9qID1+IHMvXC8vXFwvZzsKKyAgICAgICAgJGFwcG5hbWUgPX4gcy8uKlwvLy87CisgICAgICAgIHByaW50IEYgIlwiJHthcHBuYW1lfVwiLCBcIiR7dmN4cHJvan1cIiwgXCIke3V1aWR9XCIiOworICAgICAgICBwcmludCBGICIkU0xOX1BPU1QiOworICAgIH0KKyAgICBmb3JlYWNoIChAbGlicykgeworICAgICAgICBteSAkbGlibmFtZSA9ICRfOworICAgICAgICBteSAkdXVpZCA9ICRidWlsZF9zdHJ1Y3R1cmV7IkxJQlNfJHtsaWJuYW1lfV9HVUlEIn07CisgICAgICAgIHByaW50IEYgIiRTTE5fUFJFIjsKKyAgICAgICAgbXkgJHZjeHByb2ogPSAkYnVpbGRfc3RydWN0dXJleyJMSUJTXyR7bGlibmFtZX1fVkNYUFJPSiJ9OworCSR2Y3hwcm9qID1+IHMvXC8vXFwvZzsKKyAgICAgICAgJGxpYm5hbWUgPX4gcy9cLy9fL2c7CisgICAgICAgIHByaW50IEYgIlwiJHtsaWJuYW1lfVwiLCBcIiR7dmN4cHJvan1cIiwgXCIke3V1aWR9XCIiOworICAgICAgICBwcmludCBGICIkU0xOX1BPU1QiOworICAgIH0KKworICAgIHByaW50IEYgPDwgIkVPTSI7CitHbG9iYWwKKwlHbG9iYWxTZWN0aW9uKFNvbHV0aW9uQ29uZmlndXJhdGlvblBsYXRmb3JtcykgPSBwcmVTb2x1dGlvbgorCQlEZWJ1Z3x4NjQgPSBEZWJ1Z3x4NjQKKwkJRGVidWd8eDg2ID0gRGVidWd8eDg2CisJCVJlbGVhc2V8eDY0ID0gUmVsZWFzZXx4NjQKKwkJUmVsZWFzZXx4ODYgPSBSZWxlYXNlfHg4NgorCUVuZEdsb2JhbFNlY3Rpb24KK0VPTQorICAgIHByaW50IEYgPDwgIkVPTSI7CisJR2xvYmFsU2VjdGlvbihQcm9qZWN0Q29uZmlndXJhdGlvblBsYXRmb3JtcykgPSBwb3N0U29sdXRpb24KK0VPTQorICAgIGZvcmVhY2ggKEBhcHBzKSB7CisgICAgICAgIG15ICRhcHBuYW1lID0gJF87CisgICAgICAgIG15ICR1dWlkID0gJGJ1aWxkX3N0cnVjdHVyZXsiQVBQU18ke2FwcG5hbWV9X0dVSUQifTsKKyAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uRGVidWd8eDY0LkFjdGl2ZUNmZyA9IERlYnVnfHg2NFxuIjsKKyAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uRGVidWd8eDY0LkJ1aWxkLjAgPSBEZWJ1Z3x4NjRcbiI7CisgICAgICAgIHByaW50IEYgIlx0XHQke3V1aWR9LkRlYnVnfHg4Ni5BY3RpdmVDZmcgPSBEZWJ1Z3xXaW4zMlxuIjsKKyAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uRGVidWd8eDg2LkJ1aWxkLjAgPSBEZWJ1Z3xXaW4zMlxuIjsKKyAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uUmVsZWFzZXx4NjQuQWN0aXZlQ2ZnID0gUmVsZWFzZXx4NjRcbiI7CisgICAgICAgIHByaW50IEYgIlx0XHQke3V1aWR9LlJlbGVhc2V8eDY0LkJ1aWxkLjAgPSBSZWxlYXNlfHg2NFxuIjsKKyAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uUmVsZWFzZXx4ODYuQWN0aXZlQ2ZnID0gUmVsZWFzZXxXaW4zMlxuIjsKKyAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uUmVsZWFzZXx4ODYuQnVpbGQuMCA9IFJlbGVhc2V8V2luMzJcbiI7CisgICAgfQorICAgIGZvcmVhY2ggKEBsaWJzKSB7CisgICAgICAgIG15ICRsaWJuYW1lID0gJF87CisgICAgICAgIG15ICR1dWlkID0gJGJ1aWxkX3N0cnVjdHVyZXsiTElCU18ke2xpYm5hbWV9X0dVSUQifTsKKyAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uRGVidWd8eDY0LkFjdGl2ZUNmZyA9IERlYnVnfHg2NFxuIjsKKyAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uRGVidWd8eDY0LkJ1aWxkLjAgPSBEZWJ1Z3x4NjRcbiI7CisgICAgICAgIHByaW50IEYgIlx0XHQke3V1aWR9LkRlYnVnfHg4Ni5BY3RpdmVDZmcgPSBEZWJ1Z3xXaW4zMlxuIjsKKyAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uRGVidWd8eDg2LkJ1aWxkLjAgPSBEZWJ1Z3xXaW4zMlxuIjsKKyAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uUmVsZWFzZXx4NjQuQWN0aXZlQ2ZnID0gUmVsZWFzZXx4NjRcbiI7CisgICAgICAgIHByaW50IEYgIlx0XHQke3V1aWR9LlJlbGVhc2V8eDY0LkJ1aWxkLjAgPSBSZWxlYXNlfHg2NFxuIjsKKyAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uUmVsZWFzZXx4ODYuQWN0aXZlQ2ZnID0gUmVsZWFzZXxXaW4zMlxuIjsKKyAgICAgICAgcHJpbnQgRiAiXHRcdCR7dXVpZH0uUmVsZWFzZXx4ODYuQnVpbGQuMCA9IFJlbGVhc2V8V2luMzJcbiI7CisgICAgfQorCisgICAgcHJpbnQgRiA8PCAiRU9NIjsKKwlFbmRHbG9iYWxTZWN0aW9uCisJR2xvYmFsU2VjdGlvbihTb2x1dGlvblByb3BlcnRpZXMpID0gcHJlU29sdXRpb24KKwkJSGlkZVNvbHV0aW9uTm9kZSA9IEZBTFNFCisJRW5kR2xvYmFsU2VjdGlvbgorRW5kR2xvYmFsCitFT00KKyAgICBjbG9zZSBGOworfQorCisxOwpkaWZmIC0tZ2l0IGEvY29udHJpYi9idWlsZHN5c3RlbXMvZW5naW5lLnBsIGIvY29udHJpYi9idWlsZHN5c3RlbXMvZW5naW5lLnBsCmluZGV4IDIzZGE3ODcuLjA3MDk3ODUgMTAwNzU1Ci0tLSBhL2NvbnRyaWIvYnVpbGRzeXN0ZW1zL2VuZ2luZS5wbAorKysgYi9jb250cmliL2J1aWxkc3lzdGVtcy9lbmdpbmUucGwKQEAgLTEyLDYgKzEyLDcgQEAKIHVzZSBGaWxlOjpTcGVjOwogdXNlIEN3ZDsKIHVzZSBHZW5lcmF0b3JzOwordXNlIFRleHQ6OlBhcnNlV29yZHM7CiAKIG15ICglYnVpbGRfc3RydWN0dXJlLCAlY29tcGlsZV9vcHRpb25zLCBAbWFrZWRyeSk7CiBteSAkb3V0X2RpciA9IGdldGN3ZCgpOwpAQCAtMzEsNiArMzIsNyBAQAogICAtZyA8R0VORVJBVE9SPiAgLS1nZW4gPEdFTkVSQVRPUj4gU3BlY2lmeSB0aGUgYnVpbGRzeXN0ZW0gZ2VuZXJhdG9yICAgIChkZWZhdWx0OiAkZ2VuKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXZhaWxhYmxlOiAkZ2VubGlzdAogICAtbyA8UEFUSD4gICAgICAgLS1vdXQgPFBBVEg+ICAgICAgU3BlY2lmeSBvdXRwdXQgZGlyZWN0b3J5IGdlbmVyYXRpb24gIChkZWZhdWx0OiAuKQorICAgICAgICAgICAgICAgICAgLS1tYWtlLW91dCA8UEFUSD4gV3JpdGUgdGhlIG91dHB1dCBvZiBHTlUgTWFrZSBpbnRvIGEgZmlsZQogICAtaSA8RklMRT4gICAgICAgLS1pbiA8RklMRT4gICAgICAgU3BlY2lmeSBpbnB1dCBmaWxlLCBpbnN0ZWFkIG9mIHJ1bm5pbmcgR05VIE1ha2UKICAgLWgsLT8gICAgICAgICAgIC0taGVscCAgICAgICAgICAgIFRoaXMgaGVscAogRU9NCkBAIC0zOCw2ICs0MCw3IEBACiB9CiAKICMgUGFyc2UgY29tbWFuZC1saW5lIG9wdGlvbnMKK215ICRtYWtlX291dDsKIHdoaWxlIChAQVJHVikgewogICAgIG15ICRhcmcgPSBzaGlmdCBAQVJHVjsKICAgICBpZiAoIiRhcmciIGVxICItaCIgfHwgIiRhcmciIGVxICItLWhlbHAiIHx8ICIkYXJnIiBlcSAiLT8iKSB7CkBAIC00NSw2ICs0OCw4IEBACiAJZXhpdCgwKTsKICAgICB9IGVsc2lmKCIkYXJnIiBlcSAiLS1vdXQiIHx8ICIkYXJnIiBlcSAiLW8iKSB7CiAJJG91dF9kaXIgPSBzaGlmdCBAQVJHVjsKKyAgICB9IGVsc2lmKCIkYXJnIiBlcSAiLS1tYWtlLW91dCIpIHsKKwkkbWFrZV9vdXQgPSBzaGlmdCBAQVJHVjsKICAgICB9IGVsc2lmKCIkYXJnIiBlcSAiLS1nZW4iIHx8ICIkYXJnIiBlcSAiLWciKSB7CiAJJGdlbiA9IHNoaWZ0IEBBUkdWOwogICAgIH0gZWxzaWYoIiRhcmciIGVxICItLWluIiB8fCAiJGFyZyIgZXEgIi1pIikgewpAQCAtNTIsNiArNTcsOCBAQAogICAgICAgICBvcGVuKEYsICI8JGluZmlsZSIpIHx8IGRpZSAiQ291bGRuJ3Qgb3BlbiBmaWxlICRpbmZpbGUiOwogICAgICAgICBAbWFrZWRyeSA9IDxGPjsKICAgICAgICAgY2xvc2UoRik7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZGllICJVbmtub3duIG9wdGlvbjogIiAuICRhcmc7CiAgICAgfQogfQogCkBAIC03Miw3ICs3OSwxOSBAQAogRU9NCiAKICMgUGlwZSBhIG1ha2UgLS1kcnktcnVuIGludG8gYSB2YXJpYWJsZSwgaWYgbm90IGFscmVhZHkgbG9hZGVkIGZyb20gZmlsZQotQG1ha2VkcnkgPSBgY2QgJGdpdF9kaXIgJiYgbWFrZSAtbiBNU1ZDPTEgVj0xIDI+L2Rldi9udWxsYCBpZiAhQG1ha2Vkcnk7CisjIENhcHR1cmUgdGhlIG1ha2UgZHJ5IHN0ZGVyciB0byBmaWxlIGZvciByZXZpZXcgKHdpbGwgYmUgZW1wdHkgZm9yIGEgcmVsZWFzZSBidWlsZCkuCisKK215ICRFcnJzRmlsZSA9ICJtc3ZjLWJ1aWxkLW1ha2VkcnllcnJvcnMudHh0IjsKK0BtYWtlZHJ5ID0gYG1ha2UgLUMgJGdpdF9kaXIgLW4gTVNWQz0xIFNLSVBfVkNQS0c9MSBWPTEgMj4kRXJyc0ZpbGVgCitpZiAhQG1ha2Vkcnk7CisjIHRlc3QgZm9yIGFuIGVtcHR5IEVycm9ycyBmaWxlIGFuZCByZW1vdmUgaXQKK3VubGluayAkRXJyc0ZpbGUgaWYgLWYgLXogJEVycnNGaWxlOworCitpZiAoZGVmaW5lZCAkbWFrZV9vdXQpIHsKKyAgICBvcGVuIE9VVCwgIj4iIC4gJG1ha2Vfb3V0OworICAgIHByaW50IE9VVCBAbWFrZWRyeTsKKyAgICBjbG9zZSBPVVQ7Cit9CiAKICMgUGFyc2UgdGhlIG1ha2Ugb3V0cHV0IGludG8gdXNhYmxlIGluZm8KIHBhcnNlTWFrZU91dHB1dCgpOwpAQCAtMTQwLDYgKzE1OSwxMiBAQAogICAgICAgICAgICAgbmV4dDsKICAgICAgICAgfQogCisgICAgICAgIGlmICgkdGV4dCA9fiAvXihta2Rpcnxtc2dmbXQpIC8pIHsKKyAgICAgICAgICAgICMgb3B0aW9ucyB0byB0aGUgUG9ydGFibGUgT2JqZWN0IHRyYW5zbGF0aW9ucworICAgICAgICAgICAgIyB0aGUgbGluZSAibWtkaXIgLi4uICYmIG1zZ2ZtdCAuLi4iIGNvbnRhaW5zIG5vIGxpbmtlciBvcHRpb25zCisgICAgICAgICAgICBuZXh0OworICAgICAgICB9CisKICAgICAgICAgaWYoJHRleHQgPX4gLyAtYyAvKSB7CiAgICAgICAgICAgICAjIGNvbXBpbGF0aW9uCiAgICAgICAgICAgICBoYW5kbGVDb21waWxlTGluZSgkdGV4dCwgJGxpbmUpOwpAQCAtMjMxLDcgKzI1Niw3IEBACiBzdWIgaGFuZGxlQ29tcGlsZUxpbmUKIHsKICAgICBteSAoJGxpbmUsICRsaW5lbm8pID0gQF87Ci0gICAgbXkgQHBhcnRzID0gc3BsaXQoJyAnLCAkbGluZSk7CisgICAgbXkgQHBhcnRzID0gc2hlbGx3b3JkcygkbGluZSk7CiAgICAgbXkgJHNvdXJjZWZpbGU7CiAgICAgc2hpZnQoQHBhcnRzKTsgIyBpZ25vcmUgY21kCiAgICAgd2hpbGUgKG15ICRwYXJ0ID0gc2hpZnQgQHBhcnRzKSB7CkBAIC0yNjUsNyArMjkwLDcgQEAKICAgICBteSAoQG9iamZpbGVzLCBAbGZsYWdzLCAkbGlib3V0LCAkcGFydCk7CiAgICAgIyBraWxsIGNtZCBhbmQgcm0gJ3ByZWZpeCcKICAgICAkbGluZSA9fiBzL15ybSAtZiAuKiAmJiAuKiByY3MgLy87Ci0gICAgbXkgQHBhcnRzID0gc3BsaXQoJyAnLCAkbGluZSk7CisgICAgbXkgQHBhcnRzID0gc2hlbGx3b3JkcygkbGluZSk7CiAgICAgd2hpbGUgKCRwYXJ0ID0gc2hpZnQgQHBhcnRzKSB7CiAgICAgICAgIGlmICgkcGFydCA9fiAvXi0vKSB7CiAgICAgICAgICAgICBwdXNoKEBsZmxhZ3MsICRwYXJ0KTsKQEAgLTI4Miw3ICszMDcsNyBAQAogIyAgICBleGl0KDEpOwogICAgIGZvcmVhY2ggKEBvYmpmaWxlcykgewogICAgICAgICBteSAkc291cmNlZmlsZSA9ICRfOwotICAgICAgICAkc291cmNlZmlsZSA9fiBzL1wuby8uYy87CisgICAgICAgICRzb3VyY2VmaWxlID1+IHMvXC5vJC8uYy87CiAgICAgICAgIHB1c2goQHNvdXJjZXMsICRzb3VyY2VmaWxlKTsKICAgICAgICAgcHVzaChAY2ZsYWdzLCBAeyRjb21waWxlX29wdGlvbnN7IiR7c291cmNlZmlsZX1fQ0ZMQUdTIn19KTsKICAgICAgICAgcHVzaChAZGVmaW5lcywgQHskY29tcGlsZV9vcHRpb25zeyIke3NvdXJjZWZpbGV9X0RFRklORVMifX0pOwpAQCAtMzA2LDcgKzMzMSw3IEBACiB7CiAgICAgbXkgKCRsaW5lLCAkbGluZW5vKSA9IEBfOwogICAgIG15IChAb2JqZmlsZXMsIEBsZmxhZ3MsIEBsaWJzLCAkYXBwb3V0LCAkcGFydCk7Ci0gICAgbXkgQHBhcnRzID0gc3BsaXQoJyAnLCAkbGluZSk7CisgICAgbXkgQHBhcnRzID0gc2hlbGx3b3JkcygkbGluZSk7CiAgICAgc2hpZnQoQHBhcnRzKTsgIyBpZ25vcmUgY21kCiAgICAgd2hpbGUgKCRwYXJ0ID0gc2hpZnQgQHBhcnRzKSB7CiAgICAgICAgIGlmICgkcGFydCA9fiAvXi1JR05PUkUvKSB7CkBAIC0zMTcsMjYgKzM0MiwzNiBAQAogICAgICAgICAgICAgJGFwcG91dCA9IHNoaWZ0IEBwYXJ0czsKICAgICAgICAgfSBlbHNpZiAoIiRwYXJ0IiBlcSAiLWx6IikgewogICAgICAgICAgICAgcHVzaChAbGlicywgInpsaWIubGliIik7Ci0JfSBlbHNpZiAoIiRwYXJ0IiBlcSAiLWxjcnlwdG8iKSB7Ci0gICAgICAgICAgICBwdXNoKEBsaWJzLCAibGliZWF5MzIubGliIik7CisgICAgICAgIH0gZWxzaWYgKCIkcGFydCIgZXEgIi1sY3J5cHRvIikgeworICAgICAgICAgICAgcHVzaChAbGlicywgImxpYmNyeXB0by5saWIiKTsKICAgICAgICAgfSBlbHNpZiAoIiRwYXJ0IiBlcSAiLWxzc2wiKSB7Ci0gICAgICAgICAgICBwdXNoKEBsaWJzLCAic3NsZWF5MzIubGliIik7Ci0gICAgICAgIH0gZWxzaWYgKCRwYXJ0ID1+IC9eLS8pIHsKKyAgICAgICAgICAgIHB1c2goQGxpYnMsICJsaWJzc2wubGliIik7CisgICAgICAgIH0gZWxzaWYgKCIkcGFydCIgZXEgIi1sY3VybCIpIHsKKyAgICAgICAgICAgIHB1c2goQGxpYnMsICJsaWJjdXJsLmxpYiIpOworICAgICAgICB9IGVsc2lmICgiJHBhcnQiIGVxICItbGV4cGF0IikgeworICAgICAgICAgICAgcHVzaChAbGlicywgImV4cGF0LmxpYiIpOworICAgICAgICB9IGVsc2lmICgiJHBhcnQiIGVxICItbGljb252IikgeworICAgICAgICAgICAgcHVzaChAbGlicywgImxpYmljb252LmxpYiIpOworICAgICAgICB9IGVsc2lmICgkcGFydCA9fiAvXlstXC9dLykgewogICAgICAgICAgICAgcHVzaChAbGZsYWdzLCAkcGFydCk7CiAgICAgICAgIH0gZWxzaWYgKCRwYXJ0ID1+IC9cLihhfGxpYikkLykgewogICAgICAgICAgICAgJHBhcnQgPX4gcy9cLmEkLy5saWIvOwogICAgICAgICAgICAgcHVzaChAbGlicywgJHBhcnQpOwotICAgICAgICB9IGVsc2lmICgkcGFydCA9fiAvXC4ob3xvYmopJC8pIHsKKyAgICAgICAgfSBlbHNpZiAoJHBhcnQgZXEgJ2ludmFsaWRjb250aW51ZS5vYmonKSB7CisgICAgICAgICAgICAjIGlnbm9yZSAtIGtub3duIHRvIE1TVkMKKyAgICAgICAgfSBlbHNpZiAoJHBhcnQgPX4gL1wubyQvKSB7CiAgICAgICAgICAgICBwdXNoKEBvYmpmaWxlcywgJHBhcnQpOworICAgICAgICB9IGVsc2lmICgkcGFydCA9fiAvXC5vYmokLykgeworICAgICAgICAgICAgIyBkbyBub3RoaW5nLCAnbWFrZScgc2hvdWxkIG5vdCBiZSBwcm9kdWNpbmcgLm9iaiwgb25seSAubyBmaWxlcwogICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgZGllICJVbmhhbmRsZWQgbGliIG9wdGlvbiBAIGxpbmUgJGxpbmVubzogJHBhcnQiOworICAgICAgICAgICAgZGllICJVbmhhbmRsZWQgbGluayBvcHRpb24gQCBsaW5lICRsaW5lbm86ICRwYXJ0IjsKICAgICAgICAgfQogICAgIH0KICMgICAgcHJpbnQgIkFwcE91dDogJyRhcHBvdXQnXG5MRmxhZ3M6IEBsZmxhZ3NcbkxpYnMgIDogQGxpYnNcbk9maWxlczogQG9iamZpbGVzXG4iOwogIyAgICBleGl0KDEpOwogICAgIGZvcmVhY2ggKEBvYmpmaWxlcykgewogICAgICAgICBteSAkc291cmNlZmlsZSA9ICRfOwotICAgICAgICAkc291cmNlZmlsZSA9fiBzL1wuby8uYy87CisgICAgICAgICRzb3VyY2VmaWxlID1+IHMvXC5vJC8uYy87CiAgICAgICAgIHB1c2goQHNvdXJjZXMsICRzb3VyY2VmaWxlKTsKICAgICAgICAgcHVzaChAY2ZsYWdzLCBAeyRjb21waWxlX29wdGlvbnN7IiR7c291cmNlZmlsZX1fQ0ZMQUdTIn19KTsKICAgICAgICAgcHVzaChAZGVmaW5lcywgQHskY29tcGlsZV9vcHRpb25zeyIke3NvdXJjZWZpbGV9X0RFRklORVMifX0pOwpkaWZmIC0tZ2l0IGEvY29udHJpYi9jb2NjaW5lbGxlL2FycmF5LmNvY2NpIGIvY29udHJpYi9jb2NjaW5lbGxlL2FycmF5LmNvY2NpCmluZGV4IDAxNTg2ODIuLjQ2YjhkMmUgMTAwNjQ0Ci0tLSBhL2NvbnRyaWIvY29jY2luZWxsZS9hcnJheS5jb2NjaQorKysgYi9jb250cmliL2NvY2NpbmVsbGUvYXJyYXkuY29jY2kKQEAgLTEsMjkgKzEsNjAgQEAKIEBACi10eXBlIFQ7Ci1UICpkc3Q7Ci1UICpzcmM7Ci1leHByZXNzaW9uIG47CitleHByZXNzaW9uIGRzdCwgc3JjLCBuLCBFOwogQEAKLS0gbWVtY3B5KGRzdCwgc3JjLCAobikgKiBzaXplb2YoKmRzdCkpOwotKyBDT1BZX0FSUkFZKGRzdCwgc3JjLCBuKTsKKyAgbWVtY3B5KGRzdCwgc3JjLCBuICogc2l6ZW9mKAorLSBFWy4uLl0KKysgKihFKQorICApKQogCiBAQAogdHlwZSBUOwotVCAqZHN0OwotVCAqc3JjOwotZXhwcmVzc2lvbiBuOworVCAqcHRyOworVFtdIGFycjsKK2V4cHJlc3Npb24gRSwgbjsKIEBACi0tIG1lbWNweShkc3QsIHNyYywgKG4pICogc2l6ZW9mKCpzcmMpKTsKLSsgQ09QWV9BUlJBWShkc3QsIHNyYywgbik7CisoCisgIG1lbWNweShwdHIsIEUsCistIG4gKiBzaXplb2YoKihwdHIpKQorKyBuICogc2l6ZW9mKFQpCisgICkKK3wKKyAgbWVtY3B5KGFyciwgRSwKKy0gbiAqIHNpemVvZigqKGFycikpCisrIG4gKiBzaXplb2YoVCkKKyAgKQorfAorICBtZW1jcHkoRSwgcHRyLAorLSBuICogc2l6ZW9mKCoocHRyKSkKKysgbiAqIHNpemVvZihUKQorICApCit8CisgIG1lbWNweShFLCBhcnIsCistIG4gKiBzaXplb2YoKihhcnIpKQorKyBuICogc2l6ZW9mKFQpCisgICkKKykKIAogQEAKIHR5cGUgVDsKLVQgKmRzdDsKLVQgKnNyYzsKK1QgKmRzdF9wdHI7CitUICpzcmNfcHRyOworVFtdIGRzdF9hcnI7CitUW10gc3JjX2FycjsKIGV4cHJlc3Npb24gbjsKIEBACi0tIG1lbWNweShkc3QsIHNyYywgKG4pICogc2l6ZW9mKFQpKTsKLSsgQ09QWV9BUlJBWShkc3QsIHNyYywgbik7CisoCistIG1lbWNweShkc3RfcHRyLCBzcmNfcHRyLCAobikgKiBzaXplb2YoVCkpCisrIENPUFlfQVJSQVkoZHN0X3B0ciwgc3JjX3B0ciwgbikKK3wKKy0gbWVtY3B5KGRzdF9wdHIsIHNyY19hcnIsIChuKSAqIHNpemVvZihUKSkKKysgQ09QWV9BUlJBWShkc3RfcHRyLCBzcmNfYXJyLCBuKQorfAorLSBtZW1jcHkoZHN0X2Fyciwgc3JjX3B0ciwgKG4pICogc2l6ZW9mKFQpKQorKyBDT1BZX0FSUkFZKGRzdF9hcnIsIHNyY19wdHIsIG4pCit8CistIG1lbWNweShkc3RfYXJyLCBzcmNfYXJyLCAobikgKiBzaXplb2YoVCkpCisrIENPUFlfQVJSQVkoZHN0X2Fyciwgc3JjX2FyciwgbikKKykKIAogQEAKIHR5cGUgVDsKZGlmZiAtLWdpdCBhL2NvbnRyaWIvY29jY2luZWxsZS9jb21taXQuY29jY2kgYi9jb250cmliL2NvY2NpbmVsbGUvY29tbWl0LmNvY2NpCmluZGV4IGM0OWFhNTUuLjc3OGU0NzAgMTAwNjQ0Ci0tLSBhL2NvbnRyaWIvY29jY2luZWxsZS9jb21taXQuY29jY2kKKysrIGIvY29udHJpYi9jb2NjaW5lbGxlL2NvbW1pdC5jb2NjaQpAQCAtMTAsMTkgKzEwLDI1IEBACiAtIGMtPm1heWJlX3RyZWUtPm9iamVjdC5vaWQuaGFzaAogKyBnZXRfY29tbWl0X3RyZWVfb2lkKGMpLT5oYXNoCiAKLS8vIFRoZXNlIGV4Y2x1ZGVkIGZ1bmN0aW9ucyBtdXN0IGFjY2VzcyBjLT5tYXliZV90cmVlIGRpcmVjbHkuCiBAQAotaWRlbnRpZmllciBmICF+ICJeKGdldF9jb21taXRfdHJlZXxnZXRfY29tbWl0X3RyZWVfaW5fZ3JhcGhfb25lfGxvYWRfdHJlZV9mb3JfY29tbWl0KSQiOworaWRlbnRpZmllciBmICF+ICJec2V0X2NvbW1pdF90cmVlJCI7CitleHByZXNzaW9uIGM7CitleHByZXNzaW9uIHM7CitAQAorICBmKC4uLikgezwuLi4KKy0gYy0+bWF5YmVfdHJlZSA9IHMKKysgc2V0X2NvbW1pdF90cmVlKGMsIHMpCisgIC4uLj59CisKKy8vIFRoZXNlIGV4Y2x1ZGVkIGZ1bmN0aW9ucyBtdXN0IGFjY2VzcyBjLT5tYXliZV90cmVlIGRpcmVjdGx5LgorLy8gTm90ZSB0aGF0IGlmIGMtPm1heWJlX3RyZWUgaXMgd3JpdHRlbiBzb21ld2hlcmUgb3V0c2lkZSBvZiB0aGVzZQorLy8gZnVuY3Rpb25zLCB0aGVuIHRoZSByZWNvbW1lbmRlZCB0cmFuc2Zvcm1hdGlvbiB3aWxsIGJlIGJvZ3VzIHdpdGgKKy8vIHJlcG9fZ2V0X2NvbW1pdF90cmVlKCkgb24gdGhlIExIUy4KK0BACitpZGVudGlmaWVyIGYgIX4gIl4ocmVwb19nZXRfY29tbWl0X3RyZWV8Z2V0X2NvbW1pdF90cmVlX2luX2dyYXBoX29uZXxsb2FkX3RyZWVfZm9yX2NvbW1pdHxzZXRfY29tbWl0X3RyZWUpJCI7CiBleHByZXNzaW9uIGM7CiBAQAogICBmKC4uLikgezwuLi4KIC0gYy0+bWF5YmVfdHJlZQotKyBnZXRfY29tbWl0X3RyZWUoYykKKysgcmVwb19nZXRfY29tbWl0X3RyZWUoc3BlY2lmeV90aGVfcmlnaHRfcmVwb19oZXJlLCBjKQogICAuLi4+fQotCi1AQAotZXhwcmVzc2lvbiBjOwotZXhwcmVzc2lvbiBzOwotQEAKLS0gZ2V0X2NvbW1pdF90cmVlKGMpID0gcwotKyBjLT5tYXliZV90cmVlID0gcwpkaWZmIC0tZ2l0IGEvY29udHJpYi9jb2NjaW5lbGxlL2ZsZXhfYWxsb2MuY29jY2kgYi9jb250cmliL2NvY2NpbmVsbGUvZmxleF9hbGxvYy5jb2NjaQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOWY3ZjZkCi0tLSAvZGV2L251bGwKKysrIGIvY29udHJpYi9jb2NjaW5lbGxlL2ZsZXhfYWxsb2MuY29jY2kKQEAgLTAsMCArMSwxMyBAQAorQEAKK2V4cHJlc3Npb24gc3RyOworaWRlbnRpZmllciB4LCBmbGV4bmFtZTsKK0BACistIEZMRVhfQUxMT0NfTUVNKHgsIGZsZXhuYW1lLCBzdHIsIHN0cmxlbihzdHIpKTsKKysgRkxFWF9BTExPQ19TVFIoeCwgZmxleG5hbWUsIHN0cik7CisKK0BACitleHByZXNzaW9uIHN0cjsKK2lkZW50aWZpZXIgeCwgcHRybmFtZTsKK0BACistIEZMRVhQVFJfQUxMT0NfTUVNKHgsIHB0cm5hbWUsIHN0ciwgc3RybGVuKHN0cikpOworKyBGTEVYUFRSX0FMTE9DX1NUUih4LCBwdHJuYW1lLCBzdHIpOwpkaWZmIC0tZ2l0IGEvY29udHJpYi9jb2NjaW5lbGxlL2hhc2htYXAuY29jY2kgYi9jb250cmliL2NvY2NpbmVsbGUvaGFzaG1hcC5jb2NjaQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNjllMTIwCi0tLSAvZGV2L251bGwKKysrIGIvY29udHJpYi9jb2NjaW5lbGxlL2hhc2htYXAuY29jY2kKQEAgLTAsMCArMSwxNiBAQAorQCBoYXNobWFwX2VudHJ5X2luaXRfdXNhZ2UgQAorZXhwcmVzc2lvbiBFOworc3RydWN0IGhhc2htYXBfZW50cnkgSE1FOworQEAKKy0gSE1FLmhhc2ggPSBFOworKyBoYXNobWFwX2VudHJ5X2luaXQoJkhNRSwgRSk7CisKK0BACitpZGVudGlmaWVyIGYgIX4gIl5oYXNobWFwX2VudHJ5X2luaXQkIjsKK2V4cHJlc3Npb24gRTsKK3N0cnVjdCBoYXNobWFwX2VudHJ5ICpITUVQOworQEAKKyAgZiguLi4pIHs8Li4uCistIEhNRVAtPmhhc2ggPSBFOworKyBoYXNobWFwX2VudHJ5X2luaXQoSE1FUCwgRSk7CisgIC4uLj59CmRpZmYgLS1naXQgYS9jb250cmliL2NvY2NpbmVsbGUvb2JqZWN0X2lkLmNvY2NpIGIvY29udHJpYi9jb2NjaW5lbGxlL29iamVjdF9pZC5jb2NjaQppbmRleCA2YTdjZjNlLi5kZGY0ZjIyIDEwMDY0NAotLS0gYS9jb250cmliL2NvY2NpbmVsbGUvb2JqZWN0X2lkLmNvY2NpCisrKyBiL2NvbnRyaWIvY29jY2luZWxsZS9vYmplY3RfaWQuY29jY2kKQEAgLTEzLDM4ICsxMyw2IEBACiBAQAogc3RydWN0IG9iamVjdF9pZCBPSUQ7CiBAQAotLSBzaGExX3RvX2hleChPSUQuaGFzaCkKLSsgb2lkX3RvX2hleCgmT0lEKQotCi1AQAotaWRlbnRpZmllciBmICE9IG9pZF90b19oZXg7Ci1zdHJ1Y3Qgb2JqZWN0X2lkICpPSURQVFI7Ci1AQAotICBmKC4uLikgezwuLi4KLS0gc2hhMV90b19oZXgoT0lEUFRSLT5oYXNoKQotKyBvaWRfdG9faGV4KE9JRFBUUikKLSAgLi4uPn0KLQotQEAKLWV4cHJlc3Npb24gRTsKLXN0cnVjdCBvYmplY3RfaWQgT0lEOwotQEAKLS0gc2hhMV90b19oZXhfcihFLCBPSUQuaGFzaCkKLSsgb2lkX3RvX2hleF9yKEUsICZPSUQpCi0KLUBACi1pZGVudGlmaWVyIGYgIT0gb2lkX3RvX2hleF9yOwotZXhwcmVzc2lvbiBFOwotc3RydWN0IG9iamVjdF9pZCAqT0lEUFRSOwotQEAKLSAgIGYoLi4uKSB7PC4uLgotLSBzaGExX3RvX2hleF9yKEUsIE9JRFBUUi0+aGFzaCkKLSsgb2lkX3RvX2hleF9yKEUsIE9JRFBUUikKLSAgLi4uPn0KLQotQEAKLXN0cnVjdCBvYmplY3RfaWQgT0lEOwotQEAKIC0gaGFzaGNscihPSUQuaGFzaCkKICsgb2lkY2xyKCZPSUQpCiAKQEAgLTg3LDM2ICs1NSw2IEBACiArIG9pZGNtcCgmT0lELCBPSURQVFIpCiAKIEBACi1zdHJ1Y3Qgb2JqZWN0X2lkIE9JRDEsIE9JRDI7Ci1AQAotLSBoYXNoY3B5KE9JRDEuaGFzaCwgT0lEMi5oYXNoKQotKyBvaWRjcHkoJk9JRDEsICZPSUQyKQotCi1AQAotaWRlbnRpZmllciBmICE9IG9pZGNweTsKLXN0cnVjdCBvYmplY3RfaWQgKk9JRFBUUjE7Ci1zdHJ1Y3Qgb2JqZWN0X2lkICpPSURQVFIyOwotQEAKLSAgZiguLi4pIHs8Li4uCi0tIGhhc2hjcHkoT0lEUFRSMS0+aGFzaCwgT0lEUFRSMi0+aGFzaCkKLSsgb2lkY3B5KE9JRFBUUjEsIE9JRFBUUjIpCi0gIC4uLj59Ci0KLUBACi1zdHJ1Y3Qgb2JqZWN0X2lkICpPSURQVFI7Ci1zdHJ1Y3Qgb2JqZWN0X2lkIE9JRDsKLUBACi0tIGhhc2hjcHkoT0lEUFRSLT5oYXNoLCBPSUQuaGFzaCkKLSsgb2lkY3B5KE9JRFBUUiwgJk9JRCkKLQotQEAKLXN0cnVjdCBvYmplY3RfaWQgKk9JRFBUUjsKLXN0cnVjdCBvYmplY3RfaWQgT0lEOwotQEAKLS0gaGFzaGNweShPSUQuaGFzaCwgT0lEUFRSLT5oYXNoKQotKyBvaWRjcHkoJk9JRCwgT0lEUFRSKQotCi1AQAogc3RydWN0IG9iamVjdF9pZCAqT0lEUFRSMTsKIHN0cnVjdCBvYmplY3RfaWQgKk9JRFBUUjI7CiBAQApkaWZmIC0tZ2l0IGEvY29udHJpYi9jb2NjaW5lbGxlL3N0cmJ1Zi5jb2NjaSBiL2NvbnRyaWIvY29jY2luZWxsZS9zdHJidWYuY29jY2kKaW5kZXggZTM0ZWFkYS4uZDlhZGE2OSAxMDA2NDQKLS0tIGEvY29udHJpYi9jb2NjaW5lbGxlL3N0cmJ1Zi5jb2NjaQorKysgYi9jb250cmliL2NvY2NpbmVsbGUvc3RyYnVmLmNvY2NpCkBAIC0xMyw2ICsxMywzNiBAQAogICApOwogCiBAQAorZXhwcmVzc2lvbiBFOworc3RydWN0IHN0cmJ1ZiBTQjsKK2Zvcm1hdCBGID1+ICJzIjsKK0BACistIHN0cmJ1Zl9hZGRmKEUsICIlQEZAIiwgU0IuYnVmKTsKKysgc3RyYnVmX2FkZGJ1ZihFLCAmU0IpOworCitAQAorZXhwcmVzc2lvbiBFOworc3RydWN0IHN0cmJ1ZiAqU0JQOworZm9ybWF0IEYgPX4gInMiOworQEAKKy0gc3RyYnVmX2FkZGYoRSwgIiVARkAiLCBTQlAtPmJ1Zik7CisrIHN0cmJ1Zl9hZGRidWYoRSwgU0JQKTsKKworQEAKK2V4cHJlc3Npb24gRTsKK3N0cnVjdCBzdHJidWYgU0I7CitAQAorLSBzdHJidWZfYWRkc3RyKEUsIFNCLmJ1Zik7CisrIHN0cmJ1Zl9hZGRidWYoRSwgJlNCKTsKKworQEAKK2V4cHJlc3Npb24gRTsKK3N0cnVjdCBzdHJidWYgKlNCUDsKK0BACistIHN0cmJ1Zl9hZGRzdHIoRSwgU0JQLT5idWYpOworKyBzdHJidWZfYWRkYnVmKEUsIFNCUCk7CisKK0BACiBleHByZXNzaW9uIEUxLCBFMjsKIGZvcm1hdCBGID1+ICJzIjsKIEBACmRpZmYgLS1naXQgYS9jb250cmliL2NvY2NpbmVsbGUvdGhlX3JlcG9zaXRvcnkucGVuZGluZy5jb2NjaSBiL2NvbnRyaWIvY29jY2luZWxsZS90aGVfcmVwb3NpdG9yeS5wZW5kaW5nLmNvY2NpCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJlZTcwMmUKLS0tIC9kZXYvbnVsbAorKysgYi9jb250cmliL2NvY2NpbmVsbGUvdGhlX3JlcG9zaXRvcnkucGVuZGluZy5jb2NjaQpAQCAtMCwwICsxLDE0NCBAQAorLy8gVGhpcyBmaWxlIGlzIHVzZWQgZm9yIHRoZSBvbmdvaW5nIHJlZmFjdG9yaW5nIG9mCisvLyBicmluZ2luZyB0aGUgaW5kZXggb3IgcmVwb3NpdG9yeSBzdHJ1Y3QgaW4gYWxsIG9mCisvLyBvdXIgY29kZSBiYXNlLgorCitAQAorZXhwcmVzc2lvbiBFOworZXhwcmVzc2lvbiBGOworZXhwcmVzc2lvbiBHOworQEAKKy0gcmVhZF9vYmplY3RfZmlsZSgKKysgcmVwb19yZWFkX29iamVjdF9maWxlKHRoZV9yZXBvc2l0b3J5LAorICBFLCBGLCBHKQorCitAQAorZXhwcmVzc2lvbiBFOworQEAKKy0gaGFzX3NoYTFfZmlsZSgKKysgcmVwb19oYXNfc2hhMV9maWxlKHRoZV9yZXBvc2l0b3J5LAorICBFKQorCitAQAorZXhwcmVzc2lvbiBFOworZXhwcmVzc2lvbiBGOworQEAKKy0gaGFzX3NoYTFfZmlsZV93aXRoX2ZsYWdzKAorKyByZXBvX2hhc19zaGExX2ZpbGVfd2l0aF9mbGFncyh0aGVfcmVwb3NpdG9yeSwKKyAgRSkKKworQEAKK2V4cHJlc3Npb24gRTsKK0BACistIGhhc19vYmplY3RfZmlsZSgKKysgcmVwb19oYXNfb2JqZWN0X2ZpbGUodGhlX3JlcG9zaXRvcnksCisgIEUpCisKK0BACitleHByZXNzaW9uIEU7CitleHByZXNzaW9uIEY7CitAQAorLSBoYXNfb2JqZWN0X2ZpbGVfd2l0aF9mbGFncygKKysgcmVwb19oYXNfb2JqZWN0X2ZpbGVfd2l0aF9mbGFncyh0aGVfcmVwb3NpdG9yeSwKKyAgRSkKKworQEAKK2V4cHJlc3Npb24gRTsKK2V4cHJlc3Npb24gRjsKK2V4cHJlc3Npb24gRzsKK0BACistIHBhcnNlX2NvbW1pdF9pbnRlcm5hbCgKKysgcmVwb19wYXJzZV9jb21taXRfaW50ZXJuYWwodGhlX3JlcG9zaXRvcnksCisgIEUsIEYsIEcpCisKK0BACitleHByZXNzaW9uIEU7CitleHByZXNzaW9uIEY7CitAQAorLSBwYXJzZV9jb21taXRfZ2VudGx5KAorKyByZXBvX3BhcnNlX2NvbW1pdF9nZW50bHkodGhlX3JlcG9zaXRvcnksCisgIEUsIEYpCisKK0BACitleHByZXNzaW9uIEU7CitAQAorLSBwYXJzZV9jb21taXQoCisrIHJlcG9fcGFyc2VfY29tbWl0KHRoZV9yZXBvc2l0b3J5LAorICBFKQorCitAQAorZXhwcmVzc2lvbiBFOworZXhwcmVzc2lvbiBGOworQEAKKy0gZ2V0X21lcmdlX2Jhc2VzKAorKyByZXBvX2dldF9tZXJnZV9iYXNlcyh0aGVfcmVwb3NpdG9yeSwKKyAgRSwgRik7CisKK0BACitleHByZXNzaW9uIEU7CitleHByZXNzaW9uIEY7CitleHByZXNzaW9uIEc7CitAQAorLSBnZXRfbWVyZ2VfYmFzZXNfbWFueSgKKysgcmVwb19nZXRfbWVyZ2VfYmFzZXNfbWFueSh0aGVfcmVwb3NpdG9yeSwKKyAgRSwgRiwgRyk7CisKK0BACitleHByZXNzaW9uIEU7CitleHByZXNzaW9uIEY7CitleHByZXNzaW9uIEc7CitAQAorLSBnZXRfbWVyZ2VfYmFzZXNfbWFueV9kaXJ0eSgKKysgcmVwb19nZXRfbWVyZ2VfYmFzZXNfbWFueV9kaXJ0eSh0aGVfcmVwb3NpdG9yeSwKKyAgRSwgRiwgRyk7CisKK0BACitleHByZXNzaW9uIEU7CitleHByZXNzaW9uIEY7CitAQAorLSBpbl9tZXJnZV9iYXNlcygKKysgcmVwb19pbl9tZXJnZV9iYXNlcyh0aGVfcmVwb3NpdG9yeSwKKyAgRSwgRik7CisKK0BACitleHByZXNzaW9uIEU7CitleHByZXNzaW9uIEY7CitleHByZXNzaW9uIEc7CitAQAorLSBpbl9tZXJnZV9iYXNlc19tYW55KAorKyByZXBvX2luX21lcmdlX2Jhc2VzX21hbnkodGhlX3JlcG9zaXRvcnksCisgIEUsIEYsIEcpOworCitAQAorZXhwcmVzc2lvbiBFOworZXhwcmVzc2lvbiBGOworQEAKKy0gZ2V0X2NvbW1pdF9idWZmZXIoCisrIHJlcG9fZ2V0X2NvbW1pdF9idWZmZXIodGhlX3JlcG9zaXRvcnksCisgIEUsIEYpOworCitAQAorZXhwcmVzc2lvbiBFOworZXhwcmVzc2lvbiBGOworQEAKKy0gdW51c2VfY29tbWl0X2J1ZmZlcigKKysgcmVwb191bnVzZV9jb21taXRfYnVmZmVyKHRoZV9yZXBvc2l0b3J5LAorICBFLCBGKTsKKworQEAKK2V4cHJlc3Npb24gRTsKK2V4cHJlc3Npb24gRjsKK2V4cHJlc3Npb24gRzsKK0BACistIGxvZ21zZ19yZWVuY29kZSgKKysgcmVwb19sb2dtc2dfcmVlbmNvZGUodGhlX3JlcG9zaXRvcnksCisgIEUsIEYsIEcpOworCitAQAorZXhwcmVzc2lvbiBFOworZXhwcmVzc2lvbiBGOworZXhwcmVzc2lvbiBHOworZXhwcmVzc2lvbiBIOworQEAKKy0gZm9ybWF0X2NvbW1pdF9tZXNzYWdlKAorKyByZXBvX2Zvcm1hdF9jb21taXRfbWVzc2FnZSh0aGVfcmVwb3NpdG9yeSwKKyAgRSwgRiwgRywgSCk7CmRpZmYgLS1naXQgYS9jb250cmliL2NvbXBsZXRpb24vZ2l0LWNvbXBsZXRpb24uYmFzaCBiL2NvbnRyaWIvY29tcGxldGlvbi9naXQtY29tcGxldGlvbi5iYXNoCmluZGV4IDllOGVjOTUuLmMyMTc4NmYgMTAwNjQ0Ci0tLSBhL2NvbnRyaWIvY29tcGxldGlvbi9naXQtY29tcGxldGlvbi5iYXNoCisrKyBiL2NvbnRyaWIvY29tcGxldGlvbi9naXQtY29tcGxldGlvbi5iYXNoCkBAIC0zNyw3ICszNyw4IEBACiAjICAgR0lUX0NPTVBMRVRJT05fQ0hFQ0tPVVRfTk9fR1VFU1MKICMKICMgICAgIFdoZW4gc2V0IHRvICIxIiwgZG8gbm90IGluY2x1ZGUgIkRXSU0iIHN1Z2dlc3Rpb25zIGluIGdpdC1jaGVja291dAotIyAgICAgY29tcGxldGlvbiAoZS5nLiwgY29tcGxldGluZyAiZm9vIiB3aGVuICJvcmlnaW4vZm9vIiBleGlzdHMpLgorIyAgICAgYW5kIGdpdC1zd2l0Y2ggY29tcGxldGlvbiAoZS5nLiwgY29tcGxldGluZyAiZm9vIiB3aGVuICJvcmlnaW4vZm9vIgorIyAgICAgZXhpc3RzKS4KIAogY2FzZSAiJENPTVBfV09SREJSRUFLUyIgaW4KICo6KikgOiBncmVhdCA7OwpAQCAtMzM5LDcgKzM0MCw3IEBACiAJCQljPSIkYyR7NC19IgogCQkJaWYgW1sgJGMgPT0gIiRjdXJfIiogXV07IHRoZW4KIAkJCQljYXNlICRjIGluCi0JCQkJLS0qPSp8Ki4pIDs7CisJCQkJLS0qPXwqLikgOzsKIAkJCQkqKSBjPSIkYyAiIDs7CiAJCQkJZXNhYwogCQkJCUNPTVBSRVBMWVtpKytdPSIkezItfSRjIgpAQCAtMzU5LDcgKzM2MCw3IEBACiAJCQljPSIkYyR7NC19IgogCQkJaWYgW1sgJGMgPT0gIiRjdXJfIiogXV07IHRoZW4KIAkJCQljYXNlICRjIGluCi0JCQkJLS0qPSp8Ki4pIDs7CisJCQkJKj18Ki4pIDs7CiAJCQkJKikgYz0iJGMgIiA7OwogCQkJCWVzYWMKIAkJCQlDT01QUkVQTFlbaSsrXT0iJHsyLX0kYyIKQEAgLTQwMCw3ICs0MDEsOCBAQAogCWlmIFsgLXogIiRvcHRpb25zIiBdOyB0aGVuCiAJCSMgbGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSBzaWduaWZpY2FudCB0byBtYWtlCiAJCSMgb3B0aW9uIHJlbW92YWwgd29yayBjb3JyZWN0bHkuCi0JCW9wdGlvbnM9IiAkaW5jbCAkKF9fZ2l0ICR7Y21kL18vIH0gLS1naXQtY29tcGxldGlvbi1oZWxwZXIpICIKKwkJb3B0aW9ucz0iICRpbmNsICQoX19naXQgJHtjbWQvXy8gfSAtLWdpdC1jb21wbGV0aW9uLWhlbHBlcikgIiB8fCByZXR1cm4KKwogCQlmb3IgaSBpbiAkZXhjbDsgZG8KIAkJCW9wdGlvbnM9IiR7b3B0aW9ucy8gJGkgLyB9IgogCQlkb25lCkBAIC00MzgsNyArNDQwLDcgQEAKICMgQ2FsbGVycyBtdXN0IHRha2UgY2FyZSBvZiBwcm92aWRpbmcgb25seSBwYXRocyB0aGF0IG1hdGNoIHRoZSBjdXJyZW50IHBhdGgKICMgdG8gYmUgY29tcGxldGVkIGFuZCBhZGRpbmcgYW55IHByZWZpeCBwYXRoIGNvbXBvbmVudHMsIGlmIG5lY2Vzc2FyeS4KICMgMTogTGlzdCBvZiBuZXdsaW5lLXNlcGFyYXRlZCBtYXRjaGluZyBwYXRocywgY29tcGxldGUgd2l0aCBhbGwgcHJlZml4Ci0jICAgIHBhdGggY29tcG9uZW5zLgorIyAgICBwYXRoIGNvbXBvbmVudHMuCiBfX2dpdGNvbXBfZmlsZV9kaXJlY3QgKCkKIHsKIAlsb2NhbCBJRlM9JCdcbicKQEAgLTUyMiw3ICs1MjQsNyBAQAogCQkJIyBFdmVuIHdoZW4gYSBkaXJlY3RvcnkgbmFtZSBpdHNlbGYgZG9lcyBub3QgY29udGFpbgogCQkJIyBhbnkgc3BlY2lhbCBjaGFyYWN0ZXJzLCBpdCB3aWxsIHN0aWxsIGJlIHF1b3RlZCBpZgogCQkJIyBhbnkgb2YgaXRzIChzdHJpcHBlZCkgdHJhaWxpbmcgcGF0aCBjb21wb25lbnRzIGRvLgotCQkJIyBCZWNhdXNlIG9mIHRoaXMgd2UgbWF5IGhhdmUgc2VlbiB0aGUgc2FtZSBkaXJlY29yeQorCQkJIyBCZWNhdXNlIG9mIHRoaXMgd2UgbWF5IGhhdmUgc2VlbiB0aGUgc2FtZSBkaXJlY3RvcnkKIAkJCSMgYm90aCBxdW90ZWQgYW5kIHVucXVvdGVkLgogCQkJaWYgKHAgaW4gcGF0aHMpCiAJCQkJIyBXZSBoYXZlIHNlZW4gdGhlIHNhbWUgZGlyZWN0b3J5IHVucXVvdGVkLApAQCAtNTQ4LDcgKzU1MCw3IEBACiAJCQkJCQkgZXNjX2lkeCwgMSkKIAkJCX0gZWxzZSBpZiAoZXNjID09ICJuIikgewogCQkJCSMgVWgtb2gsIGEgbmV3bGluZSBjaGFyYWN0ZXIuCi0JCQkJIyBXZSBjYW50IHJlbGlhYmx5IHB1dCBhIHBhdGhuYW1lCisJCQkJIyBXZSBjYW5ub3QgcmVsaWFibHkgcHV0IGEgcGF0aG5hbWUKIAkJCQkjIGNvbnRhaW5pbmcgYSBuZXdsaW5lIGludG8gQ09NUFJFUExZLAogCQkJCSMgYW5kIHRoZSBuZXdsaW5lIHdvdWxkIGNyZWF0ZSBhIG1lc3MuCiAJCQkJIyBTa2lwIHRoaXMgcGF0aC4KQEAgLTU2Myw3ICs1NjUsNyBAQAogCQkJfQogCQl9CiAJCSMgRHJvcCBjbG9zaW5nIGRvdWJsZSBxdW90ZSwgaWYgdGhlcmUgaXMgb25lLgotCQkjIChUaGVyZSBpc250IGFueSBpZiB0aGlzIGlzIGEgZGlyZWN0b3J5LCBhcyBpdCB3YXMKKwkJIyAoVGhlcmUgaXMgbm90IGFueSBpZiB0aGlzIGlzIGEgZGlyZWN0b3J5LCBhcyBpdCB3YXMKIAkJIyBhbHJlYWR5IHN0cmlwcGVkIHdpdGggdGhlIHRyYWlsaW5nIHBhdGggY29tcG9uZW50cy4pCiAJCWlmIChzdWJzdHIocCwgbGVuZ3RoKHApLCAxKSA9PSAiXCIiKQogCQkJb3V0ID0gb3V0IHN1YnN0cihwLCAxLCBsZW5ndGgocCkgLSAxKQpAQCAtODUzLDkgKzg1NSwxNCBAQAogCV9fZ2l0X21lcmdlX3N0cmF0ZWdpZXM9JChfX2dpdF9saXN0X21lcmdlX3N0cmF0ZWdpZXMpCiB9CiAKK19fZ2l0X21lcmdlX3N0cmF0ZWd5X29wdGlvbnM9Im91cnMgdGhlaXJzIHN1YnRyZWUgc3VidHJlZT0gcGF0aWVuY2UKKwloaXN0b2dyYW0gZGlmZi1hbGdvcml0aG09IGlnbm9yZS1zcGFjZS1jaGFuZ2UgaWdub3JlLWFsbC1zcGFjZQorCWlnbm9yZS1zcGFjZS1hdC1lb2wgcmVub3JtYWxpemUgbm8tcmVub3JtYWxpemUgbm8tcmVuYW1lcworCWZpbmQtcmVuYW1lcyBmaW5kLXJlbmFtZXM9IHJlbmFtZS10aHJlc2hvbGQ9IgorCiBfX2dpdF9jb21wbGV0ZV9yZXZsaXN0X2ZpbGUgKCkKIHsKLQlsb2NhbCBwZnggbHMgcmVmIGN1cl89IiRjdXIiCisJbG9jYWwgZGVxdW90ZWRfd29yZCBwZnggbHMgcmVmIGN1cl89IiRjdXIiCiAJY2FzZSAiJGN1cl8iIGluCiAJKi4uPyo6KikKIAkJcmV0dXJuCkBAIC04NjMsMTQgKzg3MCwxOCBAQAogCT8qOiopCiAJCXJlZj0iJHtjdXJfJSU6Kn0iCiAJCWN1cl89IiR7Y3VyXyMqOn0iCi0JCWNhc2UgIiRjdXJfIiBpbgorCisJCV9fZ2l0X2RlcXVvdGUgIiRjdXJfIgorCisJCWNhc2UgIiRkZXF1b3RlZF93b3JkIiBpbgogCQk/Ki8qKQotCQkJcGZ4PSIke2N1cl8lLyp9IgotCQkJY3VyXz0iJHtjdXJfIyMqL30iCisJCQlwZng9IiR7ZGVxdW90ZWRfd29yZCUvKn0iCisJCQljdXJfPSIke2RlcXVvdGVkX3dvcmQjIyovfSIKIAkJCWxzPSIkcmVmOiRwZngiCiAJCQlwZng9IiRwZngvIgogCQkJOzsKIAkJKikKKwkJCWN1cl89IiRkZXF1b3RlZF93b3JkIgogCQkJbHM9IiRyZWYiCiAJCQk7OwogCQllc2FjCkBAIC04ODAsMjEgKzg5MSwxMCBAQAogCQkqKSAgIHBmeD0iJHJlZjokcGZ4IiA7OwogCQllc2FjCiAKLQkJX19naXRjb21wX25sICIkKF9fZ2l0IGxzLXRyZWUgIiRscyIgXAotCQkJCXwgc2VkICcvXjEwMC4uLiBibG9iIC97Ci0JCQkJICAgICAgICAgICBzLF4uKgksLAotCQkJCSAgICAgICAgICAgcywkLCAsCi0JCQkJICAgICAgIH0KLQkJCQkgICAgICAgL14xMjAwMDAgYmxvYiAvewotCQkJCSAgICAgICAgICAgcyxeLioJLCwKLQkJCQkgICAgICAgICAgIHMsJCwgLAotCQkJCSAgICAgICB9Ci0JCQkJICAgICAgIC9eMDQwMDAwIHRyZWUgL3sKLQkJCQkgICAgICAgICAgIHMsXi4qCSwsCi0JCQkJICAgICAgICAgICBzLCQsLywKLQkJCQkgICAgICAgfQotCQkJCSAgICAgICBzL14uKgkvLycpIiBcCi0JCQkiJHBmeCIgIiRjdXJfIiAiIgorCQlfX2dpdGNvbXBfZmlsZSAiJChfX2dpdCBscy10cmVlICIkbHMiIFwKKwkJCQl8IHNlZCAncy9eLioJLy8KKwkJCQkgICAgICAgcy8kLy8nKSIgXAorCQkJIiRwZngiICIkY3VyXyIKIAkJOzsKIAkqLi4uKikKIAkJcGZ4PSIke2N1cl8lLi4uKn0uLi4iCkBAIC0xMDAzLDEyICsxMDAzLDIxIEBACiAJLXN8LS1zdHJhdGVneSkKIAkJX19naXRjb21wICIkX19naXRfbWVyZ2Vfc3RyYXRlZ2llcyIKIAkJcmV0dXJuIDAKKwkJOzsKKwktWCkKKwkJX19naXRjb21wICIkX19naXRfbWVyZ2Vfc3RyYXRlZ3lfb3B0aW9ucyIKKwkJcmV0dXJuIDAKKwkJOzsKIAllc2FjCiAJY2FzZSAiJGN1ciIgaW4KIAktLXN0cmF0ZWd5PSopCiAJCV9fZ2l0Y29tcCAiJF9fZ2l0X21lcmdlX3N0cmF0ZWdpZXMiICIiICIke2N1ciMjLS1zdHJhdGVneT19IgogCQlyZXR1cm4gMAogCQk7OworCS0tc3RyYXRlZ3ktb3B0aW9uPSopCisJCV9fZ2l0Y29tcCAiJF9fZ2l0X21lcmdlX3N0cmF0ZWd5X29wdGlvbnMiICIiICIke2N1ciMjLS1zdHJhdGVneS1vcHRpb249fSIKKwkJcmV0dXJuIDAKKwkJOzsKIAllc2FjCiAJcmV0dXJuIDEKIH0KQEAgLTEwMTcsNyArMTAyNiw3IEBACiBfX2dpdF9jb21wdXRlX2FsbF9jb21tYW5kcyAoKQogewogCXRlc3QgLW4gIiRfX2dpdF9hbGxfY29tbWFuZHMiIHx8Ci0JX19naXRfYWxsX2NvbW1hbmRzPSQoZ2l0IC0tbGlzdC1jbWRzPW1haW4sb3RoZXJzLGFsaWFzLG5vaGVscGVycykKKwlfX2dpdF9hbGxfY29tbWFuZHM9JChfX2dpdCAtLWxpc3QtY21kcz1tYWluLG90aGVycyxhbGlhcyxub2hlbHBlcnMpCiB9CiAKICMgTGlzdHMgYWxsIHNldCBjb25maWcgdmFyaWFibGVzIHN0YXJ0aW5nIHdpdGggdGhlIGdpdmVuIHNlY3Rpb24gcHJlZml4LApAQCAtMTA2MCwxNSArMTA2OSwzMiBAQAogCWRvbmUKIH0KIAotIyBfX2dpdF9maW5kX29uX2NtZGxpbmUgcmVxdWlyZXMgMSBhcmd1bWVudAorIyBDaGVjayB3aGV0aGVyIG9uZSBvZiB0aGUgZ2l2ZW4gd29yZHMgaXMgcHJlc2VudCBvbiB0aGUgY29tbWFuZCBsaW5lLAorIyBhbmQgcHJpbnQgdGhlIGZpcnN0IHdvcmQgZm91bmQuCisjCisjIFVzYWdlOiBfX2dpdF9maW5kX29uX2NtZGxpbmUgWzxvcHRpb24+XS4uLiAiPHdvcmRsaXN0PiIKKyMgLS1zaG93LWlkeDogT3B0aW9uYWxseSBzaG93IHRoZSBpbmRleCBvZiB0aGUgZm91bmQgd29yZCBpbiB0aGUgJHdvcmRzIGFycmF5LgogX19naXRfZmluZF9vbl9jbWRsaW5lICgpCiB7Ci0JbG9jYWwgd29yZCBzdWJjb21tYW5kIGM9MQorCWxvY2FsIHdvcmQgYz0xIHNob3dfaWR4CisKKwl3aGlsZSB0ZXN0ICQjIC1ndCAxOyBkbworCQljYXNlICIkMSIgaW4KKwkJLS1zaG93LWlkeCkJc2hvd19pZHg9eSA7OworCQkqKQkJcmV0dXJuIDEgOzsKKwkJZXNhYworCQlzaGlmdAorCWRvbmUKKwlsb2NhbCB3b3JkbGlzdD0iJDEiCisKIAl3aGlsZSBbICRjIC1sdCAkY3dvcmQgXTsgZG8KLQkJd29yZD0iJHt3b3Jkc1tjXX0iCi0JCWZvciBzdWJjb21tYW5kIGluICQxOyBkbwotCQkJaWYgWyAiJHN1YmNvbW1hbmQiID0gIiR3b3JkIiBdOyB0aGVuCi0JCQkJZWNobyAiJHN1YmNvbW1hbmQiCisJCWZvciB3b3JkIGluICR3b3JkbGlzdDsgZG8KKwkJCWlmIFsgIiR3b3JkIiA9ICIke3dvcmRzW2NdfSIgXTsgdGhlbgorCQkJCWlmIFsgLW4gIiRzaG93X2lkeCIgXTsgdGhlbgorCQkJCQllY2hvICIkYyAkd29yZCIKKwkJCQllbHNlCisJCQkJCWVjaG8gIiR3b3JkIgorCQkJCWZpCiAJCQkJcmV0dXJuCiAJCQlmaQogCQlkb25lCkBAIC0xMTcwLDYgKzExOTYsOCBAQAogfQogCiBfX2dpdF93aGl0ZXNwYWNlbGlzdD0ibm93YXJuIHdhcm4gZXJyb3IgZXJyb3ItYWxsIGZpeCIKK19fZ2l0X3BhdGNoZm9ybWF0PSJtYm94IHN0Z2l0IHN0Z2l0LXNlcmllcyBoZyBtYm94cmQiCitfX2dpdF9zaG93Y3VycmVudHBhdGNoPSJkaWZmIHJhdyIKIF9fZ2l0X2FtX2lucHJvZ3Jlc3Nfb3B0aW9ucz0iLS1za2lwIC0tY29udGludWUgLS1yZXNvbHZlZCAtLWFib3J0IC0tcXVpdCAtLXNob3ctY3VycmVudC1wYXRjaCIKIAogX2dpdF9hbSAoKQpAQCAtMTE4NCw2ICsxMjEyLDE0IEBACiAJCV9fZ2l0Y29tcCAiJF9fZ2l0X3doaXRlc3BhY2VsaXN0IiAiIiAiJHtjdXIjIy0td2hpdGVzcGFjZT19IgogCQlyZXR1cm4KIAkJOzsKKwktLXBhdGNoLWZvcm1hdD0qKQorCQlfX2dpdGNvbXAgIiRfX2dpdF9wYXRjaGZvcm1hdCIgIiIgIiR7Y3VyIyMtLXBhdGNoLWZvcm1hdD19IgorCQlyZXR1cm4KKwkJOzsKKwktLXNob3ctY3VycmVudC1wYXRjaD0qKQorCQlfX2dpdGNvbXAgIiRfX2dpdF9zaG93Y3VycmVudHBhdGNoIiAiIiAiJHtjdXIjIy0tc2hvdy1jdXJyZW50LXBhdGNoPX0iCisJCXJldHVybgorCQk7OwogCS0tKikKIAkJX19naXRjb21wX2J1aWx0aW4gYW0gIiIgXAogCQkJIiRfX2dpdF9hbV9pbnByb2dyZXNzX29wdGlvbnMiCkBAIC0xMjA3LDYgKzEyNDMsMTAgQEAKIF9naXRfYWRkICgpCiB7CiAJY2FzZSAiJGN1ciIgaW4KKwktLWNobW9kPSopCisJCV9fZ2l0Y29tcCAiK3ggLXgiICIiICIke2N1ciMjLS1jaG1vZD19IgorCQlyZXR1cm4KKwkJOzsKIAktLSopCiAJCV9fZ2l0Y29tcF9idWlsdGluIGFkZAogCQlyZXR1cm4KQEAgLTEyMzIsMTAgKzEyNzIsNyBAQAogCQlyZXR1cm4KIAkJOzsKIAktLSopCi0JCV9fZ2l0Y29tcCAiCi0JCQktLWZvcm1hdD0gLS1saXN0IC0tdmVyYm9zZQotCQkJLS1wcmVmaXg9IC0tcmVtb3RlPSAtLWV4ZWM9IC0tb3V0cHV0Ci0JCQkiCisJCV9fZ2l0Y29tcF9idWlsdGluIGFyY2hpdmUgIi0tZm9ybWF0PSAtLWxpc3QgLS12ZXJib3NlIC0tcHJlZml4PSAtLXdvcmt0cmVlLWF0dHJpYnV0ZXMiCiAJCXJldHVybgogCQk7OwogCWVzYWMKQEAgLTEyNjcsNiArMTMwNCw4IEBACiAJZXNhYwogfQogCitfX2dpdF9yZWZfZmllbGRsaXN0PSJyZWZuYW1lIG9iamVjdHR5cGUgb2JqZWN0c2l6ZSBvYmplY3RuYW1lIHVwc3RyZWFtIHB1c2ggSEVBRCBzeW1yZWYiCisKIF9naXRfYnJhbmNoICgpCiB7CiAJbG9jYWwgaSBjPTEgb25seV9sb2NhbF9yZWY9Im4iIGhhc19yPSJuIgpAQCAtMTM0MSw3ICsxMzgwLDkgQEAKIAllc2FjCiB9CiAKLV9fZ2l0X2NoZXJyeV9waWNrX2lucHJvZ3Jlc3Nfb3B0aW9ucz0iLS1jb250aW51ZSAtLXF1aXQgLS1hYm9ydCIKK19fZ2l0X3NlcXVlbmNlcl9pbnByb2dyZXNzX29wdGlvbnM9Ii0tY29udGludWUgLS1xdWl0IC0tYWJvcnQgLS1za2lwIgorCitfX2dpdF9jaGVycnlfcGlja19pbnByb2dyZXNzX29wdGlvbnM9JF9fZ2l0X3NlcXVlbmNlcl9pbnByb2dyZXNzX29wdGlvbnMKIAogX2dpdF9jaGVycnlfcGljayAoKQogewpAQCAtMTM1MCw2ICsxMzkxLDkgQEAKIAkJX19naXRjb21wICIkX19naXRfY2hlcnJ5X3BpY2tfaW5wcm9ncmVzc19vcHRpb25zIgogCQlyZXR1cm4KIAlmaQorCisJX19naXRfY29tcGxldGVfc3RyYXRlZ3kgJiYgcmV0dXJuCisKIAljYXNlICIkY3VyIiBpbgogCS0tKikKIAkJX19naXRjb21wX2J1aWx0aW4gY2hlcnJ5LXBpY2sgIiIgXApAQCAtMTM3Niw3ICsxNDIwLDE4IEBACiAKIF9naXRfY2xvbmUgKCkKIHsKKwljYXNlICIkcHJldiIgaW4KKwktY3wtLWNvbmZpZykKKwkJX19naXRfY29tcGxldGVfY29uZmlnX3ZhcmlhYmxlX25hbWVfYW5kX3ZhbHVlCisJCXJldHVybgorCQk7OworCWVzYWMKIAljYXNlICIkY3VyIiBpbgorCS0tY29uZmlnPSopCisJCV9fZ2l0X2NvbXBsZXRlX2NvbmZpZ192YXJpYWJsZV9uYW1lX2FuZF92YWx1ZSBcCisJCQktLWN1cj0iJHtjdXIjIy0tY29uZmlnPX0iCisJCXJldHVybgorCQk7OwogCS0tKikKIAkJX19naXRjb21wX2J1aWx0aW4gY2xvbmUKIAkJcmV0dXJuCkBAIC0xNDM3LDkgKzE0OTIsMTYgQEAKIAogX19naXRfZGlmZl9zdWJtb2R1bGVfZm9ybWF0cz0iZGlmZiBsb2cgc2hvcnQiCiAKK19fZ2l0X2NvbG9yX21vdmVkX29wdHM9Im5vIGRlZmF1bHQgcGxhaW4gYmxvY2tzIHplYnJhIGRpbW1lZC16ZWJyYSIKKworX19naXRfY29sb3JfbW92ZWRfd3Nfb3B0cz0ibm8gaWdub3JlLXNwYWNlLWF0LWVvbCBpZ25vcmUtc3BhY2UtY2hhbmdlCisJCQlpZ25vcmUtYWxsLXNwYWNlIGFsbG93LWluZGVudGF0aW9uLWNoYW5nZSIKKwogX19naXRfZGlmZl9jb21tb25fb3B0aW9ucz0iLS1zdGF0IC0tbnVtc3RhdCAtLXNob3J0c3RhdCAtLXN1bW1hcnkKIAkJCS0tcGF0Y2gtd2l0aC1zdGF0IC0tbmFtZS1vbmx5IC0tbmFtZS1zdGF0dXMgLS1jb2xvcgogCQkJLS1uby1jb2xvciAtLWNvbG9yLXdvcmRzIC0tbm8tcmVuYW1lcyAtLWNoZWNrCisJCQktLWNvbG9yLW1vdmVkIC0tY29sb3ItbW92ZWQ9IC0tbm8tY29sb3ItbW92ZWQKKwkJCS0tY29sb3ItbW92ZWQtd3M9IC0tbm8tY29sb3ItbW92ZWQtd3MKIAkJCS0tZnVsbC1pbmRleCAtLWJpbmFyeSAtLWFiYnJldiAtLWRpZmYtZmlsdGVyPQogCQkJLS1maW5kLWNvcGllcy1oYXJkZXIgLS1pZ25vcmUtY3ItYXQtZW9sCiAJCQktLXRleHQgLS1pZ25vcmUtc3BhY2UtYXQtZW9sIC0taWdub3JlLXNwYWNlLWNoYW5nZQpAQCAtMTQ1Myw2ICsxNTE1LDggQEAKIAkJCS0tZGlyc3RhdC1ieS1maWxlPSAtLWN1bXVsYXRpdmUKIAkJCS0tZGlmZi1hbGdvcml0aG09CiAJCQktLXN1Ym1vZHVsZSAtLXN1Ym1vZHVsZT0gLS1pZ25vcmUtc3VibW9kdWxlcworCQkJLS1pbmRlbnQtaGV1cmlzdGljIC0tbm8taW5kZW50LWhldXJpc3RpYworCQkJLS10ZXh0Y29udiAtLW5vLXRleHRjb252CiAiCiAKIF9naXRfZGlmZiAoKQpAQCAtMTQ2OCw2ICsxNTMyLDE0IEBACiAJCV9fZ2l0Y29tcCAiJF9fZ2l0X2RpZmZfc3VibW9kdWxlX2Zvcm1hdHMiICIiICIke2N1ciMjLS1zdWJtb2R1bGU9fSIKIAkJcmV0dXJuCiAJCTs7CisJLS1jb2xvci1tb3ZlZD0qKQorCQlfX2dpdGNvbXAgIiRfX2dpdF9jb2xvcl9tb3ZlZF9vcHRzIiAiIiAiJHtjdXIjIy0tY29sb3ItbW92ZWQ9fSIKKwkJcmV0dXJuCisJCTs7CisJLS1jb2xvci1tb3ZlZC13cz0qKQorCQlfX2dpdGNvbXAgIiRfX2dpdF9jb2xvcl9tb3ZlZF93c19vcHRzIiAiIiAiJHtjdXIjIy0tY29sb3ItbW92ZWQtd3M9fSIKKwkJcmV0dXJuCisJCTs7CiAJLS0qKQogCQlfX2dpdGNvbXAgIi0tY2FjaGVkIC0tc3RhZ2VkIC0tcGlja2F4ZS1hbGwgLS1waWNrYXhlLXJlZ2V4CiAJCQktLWJhc2UgLS1vdXJzIC0tdGhlaXJzIC0tbm8taW5kZXgKQEAgLTE0ODAsNyArMTU1Miw4IEBACiB9CiAKIF9fZ2l0X21lcmdldG9vbHNfY29tbW9uPSJkaWZmdXNlIGRpZmZtZXJnZSBlY21lcmdlIGVtZXJnZSBrZGlmZjMgbWVsZCBvcGVuZGlmZgotCQkJdGtkaWZmIHZpbWRpZmYgZ3ZpbWRpZmYgeHhkaWZmIGFyYXhpcyBwNG1lcmdlIGJjIGNvZGVjb21wYXJlCisJCQl0a2RpZmYgdmltZGlmZiBndmltZGlmZiB4eGRpZmYgYXJheGlzIHA0bWVyZ2UgYmMKKwkJCWNvZGVjb21wYXJlIHNtZXJnZQogIgogCiBfZ2l0X2RpZmZ0b29sICgpCkBAIC0xNTEzLDYgKzE1ODYsMTAgQEAKIAkJX19naXRjb21wICIkX19naXRfZmV0Y2hfcmVjdXJzZV9zdWJtb2R1bGVzIiAiIiAiJHtjdXIjIy0tcmVjdXJzZS1zdWJtb2R1bGVzPX0iCiAJCXJldHVybgogCQk7OworCS0tZmlsdGVyPSopCisJCV9fZ2l0Y29tcCAiYmxvYjpub25lIGJsb2I6bGltaXQ9IHNwYXJzZTpvaWQ9IiAiIiAiJHtjdXIjIy0tZmlsdGVyPX0iCisJCXJldHVybgorCQk7OwogCS0tKikKIAkJX19naXRjb21wX2J1aWx0aW4gZmV0Y2gKIAkJcmV0dXJuCkBAIC0xNjI3LDkgKzE3MDQsOSBAQAogCWVzYWMKIAlpZiB0ZXN0IC1uICIkR0lUX1RFU1RJTkdfQUxMX0NPTU1BTkRfTElTVCIKIAl0aGVuCi0JCV9fZ2l0Y29tcCAiJEdJVF9URVNUSU5HX0FMTF9DT01NQU5EX0xJU1QgJChnaXQgLS1saXN0LWNtZHM9YWxpYXMsbGlzdC1ndWlkZSkgZ2l0ayIKKwkJX19naXRjb21wICIkR0lUX1RFU1RJTkdfQUxMX0NPTU1BTkRfTElTVCAkKF9fZ2l0IC0tbGlzdC1jbWRzPWFsaWFzLGxpc3QtZ3VpZGUpIGdpdGsiCiAJZWxzZQotCQlfX2dpdGNvbXAgIiQoZ2l0IC0tbGlzdC1jbWRzPW1haW4sbm9oZWxwZXJzLGFsaWFzLGxpc3QtZ3VpZGUpIGdpdGsiCisJCV9fZ2l0Y29tcCAiJChfX2dpdCAtLWxpc3QtY21kcz1tYWluLG5vaGVscGVycyxhbGlhcyxsaXN0LWd1aWRlKSBnaXRrIgogCWZpCiB9CiAKQEAgLTE3MDksOCArMTc4Niw4IEBACiAJLS1hbGwtbWF0Y2ggLS1pbnZlcnQtZ3JlcAogIgogCi1fX2dpdF9sb2dfcHJldHR5X2Zvcm1hdHM9Im9uZWxpbmUgc2hvcnQgbWVkaXVtIGZ1bGwgZnVsbGVyIGVtYWlsIHJhdyBmb3JtYXQ6IgotX19naXRfbG9nX2RhdGVfZm9ybWF0cz0icmVsYXRpdmUgaXNvODYwMSByZmMyODIyIHNob3J0IGxvY2FsIGRlZmF1bHQgcmF3IgorX19naXRfbG9nX3ByZXR0eV9mb3JtYXRzPSJvbmVsaW5lIHNob3J0IG1lZGl1bSBmdWxsIGZ1bGxlciByZWZlcmVuY2UgZW1haWwgcmF3IGZvcm1hdDogdGZvcm1hdDogbWJveHJkIgorX19naXRfbG9nX2RhdGVfZm9ybWF0cz0icmVsYXRpdmUgaXNvODYwMSBpc284NjAxLXN0cmljdCByZmMyODIyIHNob3J0IGxvY2FsIGRlZmF1bHQgcmF3IHVuaXggZm9ybWF0OiIKIAogX2dpdF9sb2cgKCkKIHsKQEAgLTE3NTYsNiArMTgzMywxMCBAQAogCQlfX2dpdGNvbXAgIiRfX2dpdF9kaWZmX3N1Ym1vZHVsZV9mb3JtYXRzIiAiIiAiJHtjdXIjIy0tc3VibW9kdWxlPX0iCiAJCXJldHVybgogCQk7OworCS0tbm8td2Fsaz0qKQorCQlfX2dpdGNvbXAgInNvcnRlZCB1bnNvcnRlZCIgIiIgIiR7Y3VyIyMtLW5vLXdhbGs9fSIKKwkJcmV0dXJuCisJCTs7CiAJLS0qKQogCQlfX2dpdGNvbXAgIgogCQkJJF9fZ2l0X2xvZ19jb21tb25fb3B0aW9ucwpAQCAtMTc2MywxNiArMTg0NCwxOSBAQAogCQkJJF9fZ2l0X2xvZ19naXRrX29wdGlvbnMKIAkJCS0tcm9vdCAtLXRvcG8tb3JkZXIgLS1kYXRlLW9yZGVyIC0tcmV2ZXJzZQogCQkJLS1mb2xsb3cgLS1mdWxsLWRpZmYKLQkJCS0tYWJicmV2LWNvbW1pdCAtLWFiYnJldj0KKwkJCS0tYWJicmV2LWNvbW1pdCAtLW5vLWFiYnJldi1jb21taXQgLS1hYmJyZXY9CiAJCQktLXJlbGF0aXZlLWRhdGUgLS1kYXRlPQogCQkJLS1wcmV0dHk9IC0tZm9ybWF0PSAtLW9uZWxpbmUKIAkJCS0tc2hvdy1zaWduYXR1cmUKIAkJCS0tY2hlcnJ5LW1hcmsKIAkJCS0tY2hlcnJ5LXBpY2sKIAkJCS0tZ3JhcGgKLQkJCS0tZGVjb3JhdGUgLS1kZWNvcmF0ZT0KKwkJCS0tZGVjb3JhdGUgLS1kZWNvcmF0ZT0gLS1uby1kZWNvcmF0ZQogCQkJLS13YWxrLXJlZmxvZ3MKKwkJCS0tbm8td2FsayAtLW5vLXdhbGs9IC0tZG8td2FsawogCQkJLS1wYXJlbnRzIC0tY2hpbGRyZW4KKwkJCS0tZXhwYW5kLXRhYnMgLS1leHBhbmQtdGFicz0gLS1uby1leHBhbmQtdGFicworCQkJLS1wYXRjaAogCQkJJG1lcmdlCiAJCQkkX19naXRfZGlmZl9jb21tb25fb3B0aW9ucwogCQkJLS1waWNrYXhlLWFsbCAtLXBpY2theGUtcmVnZXgKQEAgLTE5NzYsMTUgKzIwNjAsMTggQEAKIAlfX2dpdF9jb21wbGV0ZV9yZXZsaXN0CiB9CiAKK19fZ2l0X3JlYmFzZV9pbnByb2dyZXNzX29wdGlvbnM9Ii0tY29udGludWUgLS1za2lwIC0tYWJvcnQgLS1xdWl0IC0tc2hvdy1jdXJyZW50LXBhdGNoIgorX19naXRfcmViYXNlX2ludGVyYWN0aXZlX2lucHJvZ3Jlc3Nfb3B0aW9ucz0iJF9fZ2l0X3JlYmFzZV9pbnByb2dyZXNzX29wdGlvbnMgLS1lZGl0LXRvZG8iCisKIF9naXRfcmViYXNlICgpCiB7CiAJX19naXRfZmluZF9yZXBvX3BhdGgKIAlpZiBbIC1mICIkX19naXRfcmVwb19wYXRoIi9yZWJhc2UtbWVyZ2UvaW50ZXJhY3RpdmUgXTsgdGhlbgotCQlfX2dpdGNvbXAgIi0tY29udGludWUgLS1za2lwIC0tYWJvcnQgLS1xdWl0IC0tZWRpdC10b2RvIC0tc2hvdy1jdXJyZW50LXBhdGNoIgorCQlfX2dpdGNvbXAgIiRfX2dpdF9yZWJhc2VfaW50ZXJhY3RpdmVfaW5wcm9ncmVzc19vcHRpb25zIgogCQlyZXR1cm4KIAllbGlmIFsgLWQgIiRfX2dpdF9yZXBvX3BhdGgiL3JlYmFzZS1hcHBseSBdIHx8IFwKIAkgICAgIFsgLWQgIiRfX2dpdF9yZXBvX3BhdGgiL3JlYmFzZS1tZXJnZSBdOyB0aGVuCi0JCV9fZ2l0Y29tcCAiLS1jb250aW51ZSAtLXNraXAgLS1hYm9ydCAtLXF1aXQgLS1zaG93LWN1cnJlbnQtcGF0Y2giCisJCV9fZ2l0Y29tcCAiJF9fZ2l0X3JlYmFzZV9pbnByb2dyZXNzX29wdGlvbnMiCiAJCXJldHVybgogCWZpCiAJX19naXRfY29tcGxldGVfc3RyYXRlZ3kgJiYgcmV0dXJuCkBAIC0xOTkzLDIwICsyMDgwLDEzIEBACiAJCV9fZ2l0Y29tcCAiJF9fZ2l0X3doaXRlc3BhY2VsaXN0IiAiIiAiJHtjdXIjIy0td2hpdGVzcGFjZT19IgogCQlyZXR1cm4KIAkJOzsKKwktLW9udG89KikKKwkJX19naXRfY29tcGxldGVfcmVmcyAtLWN1cj0iJHtjdXIjIy0tb250bz19IgorCQlyZXR1cm4KKwkJOzsKIAktLSopCi0JCV9fZ2l0Y29tcCAiCi0JCQktLW9udG8gLS1tZXJnZSAtLXN0cmF0ZWd5IC0taW50ZXJhY3RpdmUKLQkJCS0tcmViYXNlLW1lcmdlcyAtLXByZXNlcnZlLW1lcmdlcyAtLXN0YXQgLS1uby1zdGF0Ci0JCQktLWNvbW1pdHRlci1kYXRlLWlzLWF1dGhvci1kYXRlIC0taWdub3JlLWRhdGUKLQkJCS0taWdub3JlLXdoaXRlc3BhY2UgLS13aGl0ZXNwYWNlPQotCQkJLS1hdXRvc3F1YXNoIC0tbm8tYXV0b3NxdWFzaAotCQkJLS1mb3JrLXBvaW50IC0tbm8tZm9yay1wb2ludAotCQkJLS1hdXRvc3Rhc2ggLS1uby1hdXRvc3Rhc2gKLQkJCS0tdmVyaWZ5IC0tbm8tdmVyaWZ5Ci0JCQktLWtlZXAtZW1wdHkgLS1yb290IC0tZm9yY2UtcmViYXNlIC0tbm8tZmYKLQkJCS0tcmVyZXJlLWF1dG91cGRhdGUKLQkJCS0tZXhlYwotCQkJIgorCQlfX2dpdGNvbXBfYnVpbHRpbiByZWJhc2UgIiIgXAorCQkJIiRfX2dpdF9yZWJhc2VfaW50ZXJhY3RpdmVfaW5wcm9ncmVzc19vcHRpb25zIgogCiAJCXJldHVybgogCWVzYWMKQEAgLTIxMzMsNiArMjIxMyw0NCBAQAogCV9fZ2l0X2NvbXBsZXRlX2luZGV4X2ZpbGUgIiRjb21wbGV0ZV9vcHQiCiB9CiAKK19naXRfc3dpdGNoICgpCit7CisJY2FzZSAiJGN1ciIgaW4KKwktLWNvbmZsaWN0PSopCisJCV9fZ2l0Y29tcCAiZGlmZjMgbWVyZ2UiICIiICIke2N1ciMjLS1jb25mbGljdD19IgorCQk7OworCS0tKikKKwkJX19naXRjb21wX2J1aWx0aW4gc3dpdGNoCisJCTs7CisJKikKKwkJIyBjaGVjayBpZiAtLXRyYWNrLCAtLW5vLXRyYWNrLCBvciAtLW5vLWd1ZXNzIHdhcyBzcGVjaWZpZWQKKwkJIyBpZiBzbywgZGlzYWJsZSBEV0lNIG1vZGUKKwkJbG9jYWwgdHJhY2tfb3B0PSItLXRyYWNrIiBvbmx5X2xvY2FsX3JlZj1uCisJCWlmIFsgIiRHSVRfQ09NUExFVElPTl9DSEVDS09VVF9OT19HVUVTUyIgPSAiMSIgXSB8fAorCQkgICBbIC1uICIkKF9fZ2l0X2ZpbmRfb25fY21kbGluZSAiLS10cmFjayAtLW5vLXRyYWNrIC0tbm8tZ3Vlc3MiKSIgXTsgdGhlbgorCQkJdHJhY2tfb3B0PScnCisJCWZpCisJCSMgZXhwbGljaXQgLS1ndWVzcyBlbmFibGVzIERXSU0gbW9kZSByZWdhcmRsZXNzIG9mCisJCSMgJEdJVF9DT01QTEVUSU9OX0NIRUNLT1VUX05PX0dVRVNTCisJCWlmIFsgLW4gIiQoX19naXRfZmluZF9vbl9jbWRsaW5lICItLWd1ZXNzIikiIF07IHRoZW4KKwkJCXRyYWNrX29wdD0nLS10cmFjaycKKwkJZmkKKwkJaWYgWyAteiAiJChfX2dpdF9maW5kX29uX2NtZGxpbmUgIi1kIC0tZGV0YWNoIikiIF07IHRoZW4KKwkJCW9ubHlfbG9jYWxfcmVmPXkKKwkJZWxzZQorCQkJIyAtLWd1ZXNzIC0tZGV0YWNoIGlzIGludmFsaWQgY29tYmluYXRpb24sIG5vCisJCQkjIGR3aW0gd2lsbCBiZSBkb25lIHdoZW4gLS1kZXRhY2ggaXMgc3BlY2lmaWVkCisJCQl0cmFja19vcHQ9CisJCWZpCisJCWlmIFsgJG9ubHlfbG9jYWxfcmVmID0geSAtYSAteiAiJHRyYWNrX29wdCIgXTsgdGhlbgorCQkJX19naXRjb21wX2RpcmVjdCAiJChfX2dpdF9oZWFkcyAiIiAiJGN1ciIgIiAiKSIKKwkJZWxzZQorCQkJX19naXRfY29tcGxldGVfcmVmcyAkdHJhY2tfb3B0CisJCWZpCisJCTs7CisJZXNhYworfQorCiBfX2dpdF9jb25maWdfZ2V0X3NldF92YXJpYWJsZXMgKCkKIHsKIAlsb2NhbCBwcmV2d29yZCB3b3JkIGNvbmZpZ19maWxlPSBjPSRjd29yZApAQCAtMjE1OSwxODEgKzIyNzcsMjgyIEBACiBfX2dpdF9jb21wdXRlX2NvbmZpZ192YXJzICgpCiB7CiAJdGVzdCAtbiAiJF9fZ2l0X2NvbmZpZ192YXJzIiB8fAotCV9fZ2l0X2NvbmZpZ192YXJzPSIkKGdpdCBoZWxwIC0tY29uZmlnLWZvci1jb21wbGV0aW9uIHwgc29ydCB8IHVuaXEpIgorCV9fZ2l0X2NvbmZpZ192YXJzPSIkKGdpdCBoZWxwIC0tY29uZmlnLWZvci1jb21wbGV0aW9uIHwgc29ydCAtdSkiCiB9CiAKLV9naXRfY29uZmlnICgpCisjIENvbXBsZXRlcyBwb3NzaWJsZSB2YWx1ZXMgb2YgdmFyaW91cyBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4KKyMKKyMgVXNhZ2U6IF9fZ2l0X2NvbXBsZXRlX2NvbmZpZ192YXJpYWJsZV92YWx1ZSBbPG9wdGlvbj5dLi4uCisjIC0tdmFybmFtZT08d29yZD46IFRoZSBuYW1lIG9mIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIHdob3NlIHZhbHVlIGlzCisjICAgICAgICAgICAgICAgICAgIHRvIGJlIGNvbXBsZXRlZC4gIERlZmF1bHRzIHRvIHRoZSBwcmV2aW91cyB3b3JkIG9uIHRoZQorIyAgICAgICAgICAgICAgICAgICBjb21tYW5kIGxpbmUuCisjIC0tY3VyPTx3b3JkPjogVGhlIGN1cnJlbnQgdmFsdWUgdG8gYmUgY29tcGxldGVkLiAgRGVmYXVsdHMgdG8gdGhlIGN1cnJlbnQKKyMgICAgICAgICAgICAgICB3b3JkIHRvIGJlIGNvbXBsZXRlZC4KK19fZ2l0X2NvbXBsZXRlX2NvbmZpZ192YXJpYWJsZV92YWx1ZSAoKQogewotCWxvY2FsIHZhcm5hbWUKKwlsb2NhbCB2YXJuYW1lPSIkcHJldiIgY3VyXz0iJGN1ciIKKworCXdoaWxlIHRlc3QgJCMgIT0gMDsgZG8KKwkJY2FzZSAiJDEiIGluCisJCS0tdmFybmFtZT0qKQl2YXJuYW1lPSIkezEjIy0tdmFybmFtZT19IiA7OworCQktLWN1cj0qKQljdXJfPSIkezEjIy0tY3VyPX0iIDs7CisJCSopCQlyZXR1cm4gMSA7OworCQllc2FjCisJCXNoaWZ0CisJZG9uZQogCiAJaWYgWyAiJHtCQVNIX1ZFUlNJTkZPWzBdOi0wfSIgLWdlIDQgXTsgdGhlbgotCQl2YXJuYW1lPSIke3ByZXYsLH0iCisJCXZhcm5hbWU9IiR7dmFybmFtZSwsfSIKIAllbHNlCi0JCXZhcm5hbWU9IiQoZWNobyAiJHByZXYiIHx0ciBBLVogYS16KSIKKwkJdmFybmFtZT0iJChlY2hvICIkdmFybmFtZSIgfHRyIEEtWiBhLXopIgogCWZpCiAKIAljYXNlICIkdmFybmFtZSIgaW4KIAlicmFuY2guKi5yZW1vdGV8YnJhbmNoLioucHVzaHJlbW90ZSkKLQkJX19naXRjb21wX25sICIkKF9fZ2l0X3JlbW90ZXMpIgorCQlfX2dpdGNvbXBfbmwgIiQoX19naXRfcmVtb3RlcykiICIiICIkY3VyXyIKIAkJcmV0dXJuCiAJCTs7CiAJYnJhbmNoLioubWVyZ2UpCi0JCV9fZ2l0X2NvbXBsZXRlX3JlZnMKKwkJX19naXRfY29tcGxldGVfcmVmcyAtLWN1cj0iJGN1cl8iCiAJCXJldHVybgogCQk7OwogCWJyYW5jaC4qLnJlYmFzZSkKLQkJX19naXRjb21wICJmYWxzZSB0cnVlIG1lcmdlcyBwcmVzZXJ2ZSBpbnRlcmFjdGl2ZSIKKwkJX19naXRjb21wICJmYWxzZSB0cnVlIG1lcmdlcyBwcmVzZXJ2ZSBpbnRlcmFjdGl2ZSIgIiIgIiRjdXJfIgogCQlyZXR1cm4KIAkJOzsKIAlyZW1vdGUucHVzaGRlZmF1bHQpCi0JCV9fZ2l0Y29tcF9ubCAiJChfX2dpdF9yZW1vdGVzKSIKKwkJX19naXRjb21wX25sICIkKF9fZ2l0X3JlbW90ZXMpIiAiIiAiJGN1cl8iCiAJCXJldHVybgogCQk7OwogCXJlbW90ZS4qLmZldGNoKQotCQlsb2NhbCByZW1vdGU9IiR7cHJldiNyZW1vdGUufSIKKwkJbG9jYWwgcmVtb3RlPSIke3Zhcm5hbWUjcmVtb3RlLn0iCiAJCXJlbW90ZT0iJHtyZW1vdGUlLmZldGNofSIKLQkJaWYgWyAteiAiJGN1ciIgXTsgdGhlbgorCQlpZiBbIC16ICIkY3VyXyIgXTsgdGhlbgogCQkJX19naXRjb21wX25sICJyZWZzL2hlYWRzLyIgIiIgIiIgIiIKIAkJCXJldHVybgogCQlmaQotCQlfX2dpdGNvbXBfbmwgIiQoX19naXRfcmVmc19yZW1vdGVzICIkcmVtb3RlIikiCisJCV9fZ2l0Y29tcF9ubCAiJChfX2dpdF9yZWZzX3JlbW90ZXMgIiRyZW1vdGUiKSIgIiIgIiRjdXJfIgogCQlyZXR1cm4KIAkJOzsKIAlyZW1vdGUuKi5wdXNoKQotCQlsb2NhbCByZW1vdGU9IiR7cHJldiNyZW1vdGUufSIKKwkJbG9jYWwgcmVtb3RlPSIke3Zhcm5hbWUjcmVtb3RlLn0iCiAJCXJlbW90ZT0iJHtyZW1vdGUlLnB1c2h9IgogCQlfX2dpdGNvbXBfbmwgIiQoX19naXQgZm9yLWVhY2gtcmVmIFwKLQkJCS0tZm9ybWF0PSclKHJlZm5hbWUpOiUocmVmbmFtZSknIHJlZnMvaGVhZHMpIgorCQkJLS1mb3JtYXQ9JyUocmVmbmFtZSk6JShyZWZuYW1lKScgcmVmcy9oZWFkcykiICIiICIkY3VyXyIKIAkJcmV0dXJuCiAJCTs7CiAJcHVsbC50d29oZWFkfHB1bGwub2N0b3B1cykKIAkJX19naXRfY29tcHV0ZV9tZXJnZV9zdHJhdGVnaWVzCi0JCV9fZ2l0Y29tcCAiJF9fZ2l0X21lcmdlX3N0cmF0ZWdpZXMiCi0JCXJldHVybgotCQk7OwotCWNvbG9yLmJyYW5jaHxjb2xvci5kaWZmfGNvbG9yLmludGVyYWN0aXZlfFwKLQljb2xvci5zaG93YnJhbmNofGNvbG9yLnN0YXR1c3xjb2xvci51aSkKLQkJX19naXRjb21wICJhbHdheXMgbmV2ZXIgYXV0byIKKwkJX19naXRjb21wICIkX19naXRfbWVyZ2Vfc3RyYXRlZ2llcyIgIiIgIiRjdXJfIgogCQlyZXR1cm4KIAkJOzsKIAljb2xvci5wYWdlcikKLQkJX19naXRjb21wICJmYWxzZSB0cnVlIgorCQlfX2dpdGNvbXAgImZhbHNlIHRydWUiICIiICIkY3VyXyIKIAkJcmV0dXJuCiAJCTs7CiAJY29sb3IuKi4qKQogCQlfX2dpdGNvbXAgIgogCQkJbm9ybWFsIGJsYWNrIHJlZCBncmVlbiB5ZWxsb3cgYmx1ZSBtYWdlbnRhIGN5YW4gd2hpdGUKIAkJCWJvbGQgZGltIHVsIGJsaW5rIHJldmVyc2UKLQkJCSIKKwkJCSIgIiIgIiRjdXJfIgorCQlyZXR1cm4KKwkJOzsKKwljb2xvci4qKQorCQlfX2dpdGNvbXAgImZhbHNlIHRydWUgYWx3YXlzIG5ldmVyIGF1dG8iICIiICIkY3VyXyIKIAkJcmV0dXJuCiAJCTs7CiAJZGlmZi5zdWJtb2R1bGUpCi0JCV9fZ2l0Y29tcCAibG9nIHNob3J0IgorCQlfX2dpdGNvbXAgIiRfX2dpdF9kaWZmX3N1Ym1vZHVsZV9mb3JtYXRzIiAiIiAiJGN1cl8iCiAJCXJldHVybgogCQk7OwogCWhlbHAuZm9ybWF0KQotCQlfX2dpdGNvbXAgIm1hbiBpbmZvIHdlYiBodG1sIgorCQlfX2dpdGNvbXAgIm1hbiBpbmZvIHdlYiBodG1sIiAiIiAiJGN1cl8iCiAJCXJldHVybgogCQk7OwogCWxvZy5kYXRlKQotCQlfX2dpdGNvbXAgIiRfX2dpdF9sb2dfZGF0ZV9mb3JtYXRzIgorCQlfX2dpdGNvbXAgIiRfX2dpdF9sb2dfZGF0ZV9mb3JtYXRzIiAiIiAiJGN1cl8iCiAJCXJldHVybgogCQk7OwogCXNlbmRlbWFpbC5hbGlhc2ZpbGV0eXBlKQotCQlfX2dpdGNvbXAgIm11dHQgbWFpbHJjIHBpbmUgZWxtIGdudXMiCisJCV9fZ2l0Y29tcCAibXV0dCBtYWlscmMgcGluZSBlbG0gZ251cyIgIiIgIiRjdXJfIgogCQlyZXR1cm4KIAkJOzsKIAlzZW5kZW1haWwuY29uZmlybSkKLQkJX19naXRjb21wICIkX19naXRfc2VuZF9lbWFpbF9jb25maXJtX29wdGlvbnMiCisJCV9fZ2l0Y29tcCAiJF9fZ2l0X3NlbmRfZW1haWxfY29uZmlybV9vcHRpb25zIiAiIiAiJGN1cl8iCiAJCXJldHVybgogCQk7OwogCXNlbmRlbWFpbC5zdXBwcmVzc2NjKQotCQlfX2dpdGNvbXAgIiRfX2dpdF9zZW5kX2VtYWlsX3N1cHByZXNzY2Nfb3B0aW9ucyIKKwkJX19naXRjb21wICIkX19naXRfc2VuZF9lbWFpbF9zdXBwcmVzc2NjX29wdGlvbnMiICIiICIkY3VyXyIKIAkJcmV0dXJuCiAJCTs7CiAJc2VuZGVtYWlsLnRyYW5zZmVyZW5jb2RpbmcpCi0JCV9fZ2l0Y29tcCAiN2JpdCA4Yml0IHF1b3RlZC1wcmludGFibGUgYmFzZTY0IgotCQlyZXR1cm4KLQkJOzsKLQktLWdldHwtLWdldC1hbGx8LS11bnNldHwtLXVuc2V0LWFsbCkKLQkJX19naXRjb21wX25sICIkKF9fZ2l0X2NvbmZpZ19nZXRfc2V0X3ZhcmlhYmxlcykiCisJCV9fZ2l0Y29tcCAiN2JpdCA4Yml0IHF1b3RlZC1wcmludGFibGUgYmFzZTY0IiAiIiAiJGN1cl8iCiAJCXJldHVybgogCQk7OwogCSouKikKIAkJcmV0dXJuCiAJCTs7CiAJZXNhYwotCWNhc2UgIiRjdXIiIGluCi0JLS0qKQotCQlfX2dpdGNvbXBfYnVpbHRpbiBjb25maWcKLQkJcmV0dXJuCi0JCTs7Cit9CisKKyMgQ29tcGxldGVzIGNvbmZpZ3VyYXRpb24gc2VjdGlvbnMsIHN1YnNlY3Rpb25zLCB2YXJpYWJsZSBuYW1lcy4KKyMKKyMgVXNhZ2U6IF9fZ2l0X2NvbXBsZXRlX2NvbmZpZ192YXJpYWJsZV9uYW1lIFs8b3B0aW9uPl0uLi4KKyMgLS1jdXI9PHdvcmQ+OiBUaGUgY3VycmVudCBjb25maWd1cmF0aW9uIHNlY3Rpb24vdmFyaWFibGUgbmFtZSB0byBiZQorIyAgICAgICAgICAgICAgIGNvbXBsZXRlZC4gIERlZmF1bHRzIHRvIHRoZSBjdXJyZW50IHdvcmQgdG8gYmUgY29tcGxldGVkLgorIyAtLXNmeD08c3VmZml4PjogQSBzdWZmaXggdG8gYmUgYXBwZW5kZWQgdG8gZWFjaCBmdWxseSBjb21wbGV0ZWQKKyMgICAgICAgICAgICAgICAgIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgbmFtZSAoYnV0IG5vdCB0byBzZWN0aW9ucyBvcgorIyAgICAgICAgICAgICAgICAgc3Vic2VjdGlvbnMpIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgc3BhY2UuCitfX2dpdF9jb21wbGV0ZV9jb25maWdfdmFyaWFibGVfbmFtZSAoKQoreworCWxvY2FsIGN1cl89IiRjdXIiIHNmeAorCisJd2hpbGUgdGVzdCAkIyAhPSAwOyBkbworCQljYXNlICIkMSIgaW4KKwkJLS1jdXI9KikJY3VyXz0iJHsxIyMtLWN1cj19IiA7OworCQktLXNmeD0qKQlzZng9IiR7MSMjLS1zZng9fSIgOzsKKwkJKikJCXJldHVybiAxIDs7CisJCWVzYWMKKwkJc2hpZnQKKwlkb25lCisKKwljYXNlICIkY3VyXyIgaW4KIAlicmFuY2guKi4qKQotCQlsb2NhbCBwZng9IiR7Y3VyJS4qfS4iIGN1cl89IiR7Y3VyIyMqLn0iCi0JCV9fZ2l0Y29tcCAicmVtb3RlIHB1c2hSZW1vdGUgbWVyZ2UgbWVyZ2VPcHRpb25zIHJlYmFzZSIgIiRwZngiICIkY3VyXyIKKwkJbG9jYWwgcGZ4PSIke2N1cl8lLip9LiIKKwkJY3VyXz0iJHtjdXJfIyMqLn0iCisJCV9fZ2l0Y29tcCAicmVtb3RlIHB1c2hSZW1vdGUgbWVyZ2UgbWVyZ2VPcHRpb25zIHJlYmFzZSIgIiRwZngiICIkY3VyXyIgIiRzZngiCiAJCXJldHVybgogCQk7OwogCWJyYW5jaC4qKQotCQlsb2NhbCBwZng9IiR7Y3VyJS4qfS4iIGN1cl89IiR7Y3VyIyoufSIKKwkJbG9jYWwgcGZ4PSIke2N1ciUuKn0uIgorCQljdXJfPSIke2N1ciMqLn0iCiAJCV9fZ2l0Y29tcF9kaXJlY3QgIiQoX19naXRfaGVhZHMgIiRwZngiICIkY3VyXyIgIi4iKSIKLQkJX19naXRjb21wX25sX2FwcGVuZCAkJ2F1dG9TZXR1cE1lcmdlXG5hdXRvU2V0dXBSZWJhc2VcbicgIiRwZngiICIkY3VyXyIKKwkJX19naXRjb21wX25sX2FwcGVuZCAkJ2F1dG9TZXR1cE1lcmdlXG5hdXRvU2V0dXBSZWJhc2VcbicgIiRwZngiICIkY3VyXyIgIiRzZngiCiAJCXJldHVybgogCQk7OwogCWd1aXRvb2wuKi4qKQotCQlsb2NhbCBwZng9IiR7Y3VyJS4qfS4iIGN1cl89IiR7Y3VyIyMqLn0iCisJCWxvY2FsIHBmeD0iJHtjdXJfJS4qfS4iCisJCWN1cl89IiR7Y3VyXyMjKi59IgogCQlfX2dpdGNvbXAgIgogCQkJYXJnUHJvbXB0IGNtZCBjb25maXJtIG5lZWRzRmlsZSBub0NvbnNvbGUgbm9SZXNjYW4KIAkJCXByb21wdCByZXZQcm9tcHQgcmV2VW5tZXJnZWQgdGl0bGUKLQkJCSIgIiRwZngiICIkY3VyXyIKKwkJCSIgIiRwZngiICIkY3VyXyIgIiRzZngiCiAJCXJldHVybgogCQk7OwogCWRpZmZ0b29sLiouKikKLQkJbG9jYWwgcGZ4PSIke2N1ciUuKn0uIiBjdXJfPSIke2N1ciMjKi59IgotCQlfX2dpdGNvbXAgImNtZCBwYXRoIiAiJHBmeCIgIiRjdXJfIgorCQlsb2NhbCBwZng9IiR7Y3VyXyUuKn0uIgorCQljdXJfPSIke2N1cl8jIyoufSIKKwkJX19naXRjb21wICJjbWQgcGF0aCIgIiRwZngiICIkY3VyXyIgIiRzZngiCiAJCXJldHVybgogCQk7OwogCW1hbi4qLiopCi0JCWxvY2FsIHBmeD0iJHtjdXIlLip9LiIgY3VyXz0iJHtjdXIjIyoufSIKLQkJX19naXRjb21wICJjbWQgcGF0aCIgIiRwZngiICIkY3VyXyIKKwkJbG9jYWwgcGZ4PSIke2N1cl8lLip9LiIKKwkJY3VyXz0iJHtjdXJfIyMqLn0iCisJCV9fZ2l0Y29tcCAiY21kIHBhdGgiICIkcGZ4IiAiJGN1cl8iICIkc2Z4IgogCQlyZXR1cm4KIAkJOzsKIAltZXJnZXRvb2wuKi4qKQotCQlsb2NhbCBwZng9IiR7Y3VyJS4qfS4iIGN1cl89IiR7Y3VyIyMqLn0iCi0JCV9fZ2l0Y29tcCAiY21kIHBhdGggdHJ1c3RFeGl0Q29kZSIgIiRwZngiICIkY3VyXyIKKwkJbG9jYWwgcGZ4PSIke2N1cl8lLip9LiIKKwkJY3VyXz0iJHtjdXJfIyMqLn0iCisJCV9fZ2l0Y29tcCAiY21kIHBhdGggdHJ1c3RFeGl0Q29kZSIgIiRwZngiICIkY3VyXyIgIiRzZngiCiAJCXJldHVybgogCQk7OwogCXBhZ2VyLiopCi0JCWxvY2FsIHBmeD0iJHtjdXIlLip9LiIgY3VyXz0iJHtjdXIjKi59IgorCQlsb2NhbCBwZng9IiR7Y3VyXyUuKn0uIgorCQljdXJfPSIke2N1cl8jKi59IgogCQlfX2dpdF9jb21wdXRlX2FsbF9jb21tYW5kcwotCQlfX2dpdGNvbXBfbmwgIiRfX2dpdF9hbGxfY29tbWFuZHMiICIkcGZ4IiAiJGN1cl8iCisJCV9fZ2l0Y29tcF9ubCAiJF9fZ2l0X2FsbF9jb21tYW5kcyIgIiRwZngiICIkY3VyXyIgIiRzZngiCiAJCXJldHVybgogCQk7OwogCXJlbW90ZS4qLiopCi0JCWxvY2FsIHBmeD0iJHtjdXIlLip9LiIgY3VyXz0iJHtjdXIjIyoufSIKKwkJbG9jYWwgcGZ4PSIke2N1cl8lLip9LiIKKwkJY3VyXz0iJHtjdXJfIyMqLn0iCiAJCV9fZ2l0Y29tcCAiCiAJCQl1cmwgcHJveHkgZmV0Y2ggcHVzaCBtaXJyb3Igc2tpcERlZmF1bHRVcGRhdGUKIAkJCXJlY2VpdmVwYWNrIHVwbG9hZHBhY2sgdGFnT3B0IHB1c2h1cmwKLQkJCSIgIiRwZngiICIkY3VyXyIKKwkJCSIgIiRwZngiICIkY3VyXyIgIiRzZngiCiAJCXJldHVybgogCQk7OwogCXJlbW90ZS4qKQotCQlsb2NhbCBwZng9IiR7Y3VyJS4qfS4iIGN1cl89IiR7Y3VyIyoufSIKKwkJbG9jYWwgcGZ4PSIke2N1cl8lLip9LiIKKwkJY3VyXz0iJHtjdXJfIyoufSIKIAkJX19naXRjb21wX25sICIkKF9fZ2l0X3JlbW90ZXMpIiAiJHBmeCIgIiRjdXJfIiAiLiIKLQkJX19naXRjb21wX25sX2FwcGVuZCAicHVzaERlZmF1bHQiICIkcGZ4IiAiJGN1cl8iCisJCV9fZ2l0Y29tcF9ubF9hcHBlbmQgInB1c2hEZWZhdWx0IiAiJHBmeCIgIiRjdXJfIiAiJHNmeCIKIAkJcmV0dXJuCiAJCTs7CiAJdXJsLiouKikKLQkJbG9jYWwgcGZ4PSIke2N1ciUuKn0uIiBjdXJfPSIke2N1ciMjKi59IgotCQlfX2dpdGNvbXAgImluc3RlYWRPZiBwdXNoSW5zdGVhZE9mIiAiJHBmeCIgIiRjdXJfIgorCQlsb2NhbCBwZng9IiR7Y3VyXyUuKn0uIgorCQljdXJfPSIke2N1cl8jIyoufSIKKwkJX19naXRjb21wICJpbnN0ZWFkT2YgcHVzaEluc3RlYWRPZiIgIiRwZngiICIkY3VyXyIgIiRzZngiCiAJCXJldHVybgogCQk7OwogCSouKikKIAkJX19naXRfY29tcHV0ZV9jb25maWdfdmFycwotCQlfX2dpdGNvbXAgIiRfX2dpdF9jb25maWdfdmFycyIKKwkJX19naXRjb21wICIkX19naXRfY29uZmlnX3ZhcnMiICIiICIkY3VyXyIgIiRzZngiCiAJCTs7CiAJKikKIAkJX19naXRfY29tcHV0ZV9jb25maWdfdmFycwotCQlfX2dpdGNvbXAgIiQoZWNobyAiJF9fZ2l0X2NvbmZpZ192YXJzIiB8IHNlZCAncy9cLlteIF0qLy4vZycpIgorCQlfX2dpdGNvbXAgIiQoZWNobyAiJF9fZ2l0X2NvbmZpZ192YXJzIiB8CisJCQkJYXdrIC1GIC4gJ3sKKwkJCQkJc2VjdGlvbnNbJDFdID0gMQorCQkJCX0KKwkJCQlFTkQgeworCQkJCQlmb3IgKHMgaW4gc2VjdGlvbnMpCisJCQkJCQlwcmludCBzICIuIgorCQkJCX0KKwkJCQknKSIgIiIgIiRjdXJfIgorCQk7OworCWVzYWMKK30KKworIyBDb21wbGV0ZXMgJz0nLXNlcGFyYXRlZCBjb25maWd1cmF0aW9uIHNlY3Rpb25zL3ZhcmlhYmxlIG5hbWVzIGFuZCB2YWx1ZXMKKyMgZm9yICdnaXQgLWMgc2VjdGlvbi5uYW1lPXZhbHVlJy4KKyMKKyMgVXNhZ2U6IF9fZ2l0X2NvbXBsZXRlX2NvbmZpZ192YXJpYWJsZV9uYW1lX2FuZF92YWx1ZSBbPG9wdGlvbj5dLi4uCisjIC0tY3VyPTx3b3JkPjogVGhlIGN1cnJlbnQgY29uZmlndXJhdGlvbiBzZWN0aW9uL3ZhcmlhYmxlIG5hbWUvdmFsdWUgdG8gYmUKKyMgICAgICAgICAgICAgICBjb21wbGV0ZWQuIERlZmF1bHRzIHRvIHRoZSBjdXJyZW50IHdvcmQgdG8gYmUgY29tcGxldGVkLgorX19naXRfY29tcGxldGVfY29uZmlnX3ZhcmlhYmxlX25hbWVfYW5kX3ZhbHVlICgpCit7CisJbG9jYWwgY3VyXz0iJGN1ciIKKworCXdoaWxlIHRlc3QgJCMgIT0gMDsgZG8KKwkJY2FzZSAiJDEiIGluCisJCS0tY3VyPSopCWN1cl89IiR7MSMjLS1jdXI9fSIgOzsKKwkJKikJCXJldHVybiAxIDs7CisJCWVzYWMKKwkJc2hpZnQKKwlkb25lCisKKwljYXNlICIkY3VyXyIgaW4KKwkqPSopCisJCV9fZ2l0X2NvbXBsZXRlX2NvbmZpZ192YXJpYWJsZV92YWx1ZSBcCisJCQktLXZhcm5hbWU9IiR7Y3VyXyUlPSp9IiAtLWN1cj0iJHtjdXJfIyo9fSIKKwkJOzsKKwkqKQorCQlfX2dpdF9jb21wbGV0ZV9jb25maWdfdmFyaWFibGVfbmFtZSAtLWN1cj0iJGN1cl8iIC0tc2Z4PSc9JworCQk7OworCWVzYWMKK30KKworX2dpdF9jb25maWcgKCkKK3sKKwljYXNlICIkcHJldiIgaW4KKwktLWdldHwtLWdldC1hbGx8LS11bnNldHwtLXVuc2V0LWFsbCkKKwkJX19naXRjb21wX25sICIkKF9fZ2l0X2NvbmZpZ19nZXRfc2V0X3ZhcmlhYmxlcykiCisJCXJldHVybgorCQk7OworCSouKikKKwkJX19naXRfY29tcGxldGVfY29uZmlnX3ZhcmlhYmxlX3ZhbHVlCisJCXJldHVybgorCQk7OworCWVzYWMKKwljYXNlICIkY3VyIiBpbgorCS0tKikKKwkJX19naXRjb21wX2J1aWx0aW4gY29uZmlnCisJCTs7CisJKikKKwkJX19naXRfY29tcGxldGVfY29uZmlnX3ZhcmlhYmxlX25hbWUKKwkJOzsKIAllc2FjCiB9CiAKQEAgLTIzOTUsNiArMjYxNCwxMCBAQAogX2dpdF9yZXBsYWNlICgpCiB7CiAJY2FzZSAiJGN1ciIgaW4KKwktLWZvcm1hdD0qKQorCQlfX2dpdGNvbXAgInNob3J0IG1lZGl1bSBsb25nIiAiIiAiJHtjdXIjIy0tZm9ybWF0PX0iCisJCXJldHVybgorCQk7OwogCS0tKikKIAkJX19naXRjb21wX2J1aWx0aW4gcmVwbGFjZQogCQlyZXR1cm4KQEAgLTI0MjcsNyArMjY1MCwyMiBAQAogCV9fZ2l0X2NvbXBsZXRlX3JlZnMKIH0KIAotX19naXRfcmV2ZXJ0X2lucHJvZ3Jlc3Nfb3B0aW9ucz0iLS1jb250aW51ZSAtLXF1aXQgLS1hYm9ydCIKK19naXRfcmVzdG9yZSAoKQoreworCWNhc2UgIiRjdXIiIGluCisJLS1jb25mbGljdD0qKQorCQlfX2dpdGNvbXAgImRpZmYzIG1lcmdlIiAiIiAiJHtjdXIjIy0tY29uZmxpY3Q9fSIKKwkJOzsKKwktLXNvdXJjZT0qKQorCQlfX2dpdF9jb21wbGV0ZV9yZWZzIC0tY3VyPSIke2N1ciMjLS1zb3VyY2U9fSIKKwkJOzsKKwktLSopCisJCV9fZ2l0Y29tcF9idWlsdGluIHJlc3RvcmUKKwkJOzsKKwllc2FjCit9CisKK19fZ2l0X3JldmVydF9pbnByb2dyZXNzX29wdGlvbnM9JF9fZ2l0X3NlcXVlbmNlcl9pbnByb2dyZXNzX29wdGlvbnMKIAogX2dpdF9yZXZlcnQgKCkKIHsKQEAgLTI0MzYsNiArMjY3NCw3IEBACiAJCV9fZ2l0Y29tcCAiJF9fZ2l0X3JldmVydF9pbnByb2dyZXNzX29wdGlvbnMiCiAJCXJldHVybgogCWZpCisJX19naXRfY29tcGxldGVfc3RyYXRlZ3kgJiYgcmV0dXJuCiAJY2FzZSAiJGN1ciIgaW4KIAktLSopCiAJCV9fZ2l0Y29tcF9idWlsdGluIHJldmVydCAiIiBcCkBAIC0yNDk0LDggKzI3MzMsOSBAQAogCQlyZXR1cm4KIAkJOzsKIAktLSopCi0JCV9fZ2l0Y29tcCAiLS1wcmV0dHk9IC0tZm9ybWF0PSAtLWFiYnJldi1jb21taXQgLS1vbmVsaW5lCi0JCQktLXNob3ctc2lnbmF0dXJlCisJCV9fZ2l0Y29tcCAiLS1wcmV0dHk9IC0tZm9ybWF0PSAtLWFiYnJldi1jb21taXQgLS1uby1hYmJyZXYtY29tbWl0CisJCQktLW9uZWxpbmUgLS1zaG93LXNpZ25hdHVyZSAtLXBhdGNoCisJCQktLWV4cGFuZC10YWJzIC0tZXhwYW5kLXRhYnM9IC0tbm8tZXhwYW5kLXRhYnMKIAkJCSRfX2dpdF9kaWZmX2NvbW1vbl9vcHRpb25zCiAJCQkiCiAJCXJldHVybgpAQCAtMjUxNSw2ICsyNzU1LDI3IEBACiAJX19naXRfY29tcGxldGVfcmV2bGlzdAogfQogCitfZ2l0X3NwYXJzZV9jaGVja291dCAoKQoreworCWxvY2FsIHN1YmNvbW1hbmRzPSJsaXN0IGluaXQgc2V0IGRpc2FibGUiCisJbG9jYWwgc3ViY29tbWFuZD0iJChfX2dpdF9maW5kX29uX2NtZGxpbmUgIiRzdWJjb21tYW5kcyIpIgorCWlmIFsgLXogIiRzdWJjb21tYW5kIiBdOyB0aGVuCisJCV9fZ2l0Y29tcCAiJHN1YmNvbW1hbmRzIgorCQlyZXR1cm4KKwlmaQorCisJY2FzZSAiJHN1YmNvbW1hbmQsJGN1ciIgaW4KKwlpbml0LC0tKikKKwkJX19naXRjb21wICItLWNvbmUiCisJCTs7CisJc2V0LC0tKikKKwkJX19naXRjb21wICItLXN0ZGluIgorCQk7OworCSopCisJCTs7CisJZXNhYworfQorCiBfZ2l0X3N0YXNoICgpCiB7CiAJbG9jYWwgc2F2ZV9vcHRzPSctLWFsbCAtLWtlZXAtaW5kZXggLS1uby1rZWVwLWluZGV4IC0tcXVpZXQgLS1wYXRjaCAtLWluY2x1ZGUtdW50cmFja2VkJwpAQCAtMjU4MCw3ICsyODQxLDcgQEAKIHsKIAlfX2dpdF9oYXNfZG91YmxlZGFzaCAmJiByZXR1cm4KIAotCWxvY2FsIHN1YmNvbW1hbmRzPSJhZGQgc3RhdHVzIGluaXQgZGVpbml0IHVwZGF0ZSBzdW1tYXJ5IGZvcmVhY2ggc3luYyIKKwlsb2NhbCBzdWJjb21tYW5kcz0iYWRkIHN0YXR1cyBpbml0IGRlaW5pdCB1cGRhdGUgc2V0LWJyYW5jaCBzZXQtdXJsIHN1bW1hcnkgZm9yZWFjaCBzeW5jIGFic29yYmdpdGRpcnMiCiAJbG9jYWwgc3ViY29tbWFuZD0iJChfX2dpdF9maW5kX29uX2NtZGxpbmUgIiRzdWJjb21tYW5kcyIpIgogCWlmIFsgLXogIiRzdWJjb21tYW5kIiBdOyB0aGVuCiAJCWNhc2UgIiRjdXIiIGluCkBAIC0yNjExLDYgKzI4NzIsOSBAQAogCQkJLS1mb3JjZSAtLXJlYmFzZSAtLW1lcmdlIC0tcmVmZXJlbmNlIC0tZGVwdGggLS1yZWN1cnNpdmUgLS1qb2JzCiAJCSIKIAkJOzsKKwlzZXQtYnJhbmNoLC0tKikKKwkJX19naXRjb21wICItLWRlZmF1bHQgLS1icmFuY2giCisJCTs7CiAJc3VtbWFyeSwtLSopCiAJCV9fZ2l0Y29tcCAiLS1jYWNoZWQgLS1maWxlcyAtLXN1bW1hcnktbGltaXQiCiAJCTs7CkBAIC0yNjQxLDYgKzI5MDUsNyBAQAogCQkJLS1sb2ctd2luZG93LXNpemU9IC0tbm8tY2hlY2tvdXQgLS1xdWlldAogCQkJLS1yZXBhY2stZmxhZ3MgLS11c2UtbG9nLWF1dGhvciAtLWxvY2FsdGltZQogCQkJLS1hZGQtYXV0aG9yLWZyb20KKwkJCS0tcmVjdXJzaXZlCiAJCQktLWlnbm9yZS1wYXRocz0gLS1pbmNsdWRlLXBhdGhzPSAkcmVtb3RlX29wdHMKIAkJCSIKIAkJbG9jYWwgaW5pdF9vcHRzPSIKQEAgLTI3NjIsMzMgKzMwMjcsODMgQEAKIAlfZ2l0X2xvZwogfQogCitfX2dpdF9jb21wbGV0ZV93b3JrdHJlZV9wYXRocyAoKQoreworCWxvY2FsIElGUz0kJ1xuJworCV9fZ2l0Y29tcF9ubCAiJChnaXQgd29ya3RyZWUgbGlzdCAtLXBvcmNlbGFpbiB8CisJCSMgU2tpcCB0aGUgZmlyc3QgZW50cnk6IGl0J3MgdGhlIHBhdGggb2YgdGhlIG1haW4gd29ya3RyZWUsCisJCSMgd2hpY2ggY2FuJ3QgYmUgbW92ZWQsIHJlbW92ZWQsIGxvY2tlZCwgZXRjLgorCQlzZWQgLW4gLWUgJzIsJCBzL153b3JrdHJlZSAvL3AnKSIKK30KKwogX2dpdF93b3JrdHJlZSAoKQogewogCWxvY2FsIHN1YmNvbW1hbmRzPSJhZGQgbGlzdCBsb2NrIG1vdmUgcHJ1bmUgcmVtb3ZlIHVubG9jayIKLQlsb2NhbCBzdWJjb21tYW5kPSIkKF9fZ2l0X2ZpbmRfb25fY21kbGluZSAiJHN1YmNvbW1hbmRzIikiCi0JaWYgWyAteiAiJHN1YmNvbW1hbmQiIF07IHRoZW4KKwlsb2NhbCBzdWJjb21tYW5kIHN1YmNvbW1hbmRfaWR4CisKKwlzdWJjb21tYW5kPSIkKF9fZ2l0X2ZpbmRfb25fY21kbGluZSAtLXNob3ctaWR4ICIkc3ViY29tbWFuZHMiKSIKKwlzdWJjb21tYW5kX2lkeD0iJHtzdWJjb21tYW5kJSAqfSIKKwlzdWJjb21tYW5kPSIke3N1YmNvbW1hbmQjKiB9IgorCisJY2FzZSAiJHN1YmNvbW1hbmQsJGN1ciIgaW4KKwksKikKIAkJX19naXRjb21wICIkc3ViY29tbWFuZHMiCi0JZWxzZQotCQljYXNlICIkc3ViY29tbWFuZCwkY3VyIiBpbgotCQlhZGQsLS0qKQotCQkJX19naXRjb21wX2J1aWx0aW4gd29ya3RyZWVfYWRkCisJCTs7CisJKiwtLSopCisJCV9fZ2l0Y29tcF9idWlsdGluIHdvcmt0cmVlXyRzdWJjb21tYW5kCisJCTs7CisJYWRkLCopCSMgdXNhZ2U6IGdpdCB3b3JrdHJlZSBhZGQgWzxvcHRpb25zPl0gPHBhdGg+IFs8Y29tbWl0LWlzaD5dCisJCSMgSGVyZSB3ZSBhcmUgbm90IGNvbXBsZXRpbmcgYW4gLS1vcHRpb24sIGl0J3MgZWl0aGVyIHRoZQorCQkjIHBhdGggb3IgYSByZWYuCisJCWNhc2UgIiRwcmV2IiBpbgorCQktYnwtQikJIyBDb21wbGV0ZSByZWZzIGZvciBicmFuY2ggdG8gYmUgY3JlYXRlZC9yZXNldGVkLgorCQkJX19naXRfY29tcGxldGVfcmVmcwogCQkJOzsKLQkJbGlzdCwtLSopCi0JCQlfX2dpdGNvbXBfYnVpbHRpbiB3b3JrdHJlZV9saXN0CisJCS0qKQkjIFRoZSBwcmV2aW91cyB3b3JkIGlzIGFuIC1vfC0tb3B0aW9uIHdpdGhvdXQgYW4KKwkJCSMgdW5zdHVjayBhcmd1bWVudDogaGF2ZSB0byBjb21wbGV0ZSB0aGUgcGF0aCBmb3IKKwkJCSMgdGhlIG5ldyB3b3JrdHJlZSwgc28gZG9uJ3QgbGlzdCBhbnl0aGluZywgYnV0IGxldAorCQkJIyBCYXNoIGZhbGwgYmFjayB0byBmaWxlbmFtZSBjb21wbGV0aW9uLgogCQkJOzsKLQkJbG9jaywtLSopCi0JCQlfX2dpdGNvbXBfYnVpbHRpbiB3b3JrdHJlZV9sb2NrCi0JCQk7OwotCQlwcnVuZSwtLSopCi0JCQlfX2dpdGNvbXBfYnVpbHRpbiB3b3JrdHJlZV9wcnVuZQotCQkJOzsKLQkJcmVtb3ZlLC0tKikKLQkJCV9fZ2l0Y29tcCAiLS1mb3JjZSIKLQkJCTs7Ci0JCSopCisJCSopCSMgVGhlIHByZXZpb3VzIHdvcmQgaXMgbm90IGFuIC0tb3B0aW9uLCBzbyBpdCBtdXN0CisJCQkjIGJlIGVpdGhlciB0aGUgJ2FkZCcgc3ViY29tbWFuZCwgdGhlIHVuc3R1Y2sKKwkJCSMgYXJndW1lbnQgb2YgYW4gb3B0aW9uIChlLmcuIGJyYW5jaCBmb3IgLWJ8LUIpLCBvcgorCQkJIyB0aGUgcGF0aCBmb3IgdGhlIG5ldyB3b3JrdHJlZS4KKwkJCWlmIFsgJGN3b3JkIC1lcSAkKChzdWJjb21tYW5kX2lkeCsxKSkgXTsgdGhlbgorCQkJCSMgUmlnaHQgYWZ0ZXIgdGhlICdhZGQnIHN1YmNvbW1hbmQ6IGhhdmUgdG8KKwkJCQkjIGNvbXBsZXRlIHRoZSBwYXRoLCBzbyBmYWxsIGJhY2sgdG8gQmFzaAorCQkJCSMgZmlsZW5hbWUgY29tcGxldGlvbi4KKwkJCQk6CisJCQllbHNlCisJCQkJY2FzZSAiJHt3b3Jkc1tjd29yZC0yXX0iIGluCisJCQkJLWJ8LUIpCSMgQWZ0ZXIgJy1iIDxicmFuY2g+JzogaGF2ZSB0bworCQkJCQkjIGNvbXBsZXRlIHRoZSBwYXRoLCBzbyBmYWxsIGJhY2sKKwkJCQkJIyB0byBCYXNoIGZpbGVuYW1lIGNvbXBsZXRpb24uCisJCQkJCTs7CisJCQkJKikJIyBBZnRlciB0aGUgcGF0aDogaGF2ZSB0byBjb21wbGV0ZQorCQkJCQkjIHRoZSByZWYgdG8gYmUgY2hlY2tlZCBvdXQuCisJCQkJCV9fZ2l0X2NvbXBsZXRlX3JlZnMKKwkJCQkJOzsKKwkJCQllc2FjCisJCQlmaQogCQkJOzsKIAkJZXNhYwotCWZpCisJCTs7CisJbG9jaywqfHJlbW92ZSwqfHVubG9jaywqKQorCQlfX2dpdF9jb21wbGV0ZV93b3JrdHJlZV9wYXRocworCQk7OworCW1vdmUsKikKKwkJaWYgWyAkY3dvcmQgLWVxICQoKHN1YmNvbW1hbmRfaWR4KzEpKSBdOyB0aGVuCisJCQkjIFRoZSBmaXJzdCBwYXJhbWV0ZXIgbXVzdCBiZSBhbiBleGlzdGluZyB3b3JraW5nCisJCQkjIHRyZWUgdG8gYmUgbW92ZWQuCisJCQlfX2dpdF9jb21wbGV0ZV93b3JrdHJlZV9wYXRocworCQllbHNlCisJCQkjIFRoZSBzZWNvbmQgcGFyYW1ldGVyIGlzIHRoZSBkZXN0aW5hdGlvbjogaXQgY291bGQKKwkJCSMgYmUgYW55IHBhdGgsIHNvIGRvbid0IGxpc3QgYW55dGhpbmcsIGJ1dCBsZXQgQmFzaAorCQkJIyBmYWxsIGJhY2sgdG8gZmlsZW5hbWUgY29tcGxldGlvbi4KKwkJCToKKwkJZmkKKwkJOzsKKwllc2FjCiB9CiAKIF9fZ2l0X2NvbXBsZXRlX2NvbW1vbiAoKSB7CkBAIC0yODY3LDcgKzMxODIsMTEgQEAKIAkJCSMgQmFzaCBmaWxlbmFtZSBjb21wbGV0aW9uCiAJCQlyZXR1cm4KIAkJCTs7Ci0JCS1jfC0tbmFtZXNwYWNlKQorCQktYykKKwkJCV9fZ2l0X2NvbXBsZXRlX2NvbmZpZ192YXJpYWJsZV9uYW1lX2FuZF92YWx1ZQorCQkJcmV0dXJuCisJCQk7OworCQktLW5hbWVzcGFjZSkKIAkJCSMgd2UgZG9uJ3Qgc3VwcG9ydCBjb21wbGV0aW5nIHRoZXNlIG9wdGlvbnMnIGFyZ3VtZW50cwogCQkJcmV0dXJuCiAJCQk7OwpAQCAtMjg5NSw3ICszMjE0LDcgQEAKIAkJCXRoZW4KIAkJCQlfX2dpdGNvbXAgIiRHSVRfVEVTVElOR19QT1JDRUxBSU5fQ09NTUFORF9MSVNUIgogCQkJZWxzZQotCQkJCV9fZ2l0Y29tcCAiJChnaXQgLS1saXN0LWNtZHM9bGlzdC1tYWlucG9yY2VsYWluLG90aGVycyxub2hlbHBlcnMsYWxpYXMsbGlzdC1jb21wbGV0ZSxjb25maWcpIgorCQkJCV9fZ2l0Y29tcCAiJChfX2dpdCAtLWxpc3QtY21kcz1saXN0LW1haW5wb3JjZWxhaW4sb3RoZXJzLG5vaGVscGVycyxhbGlhcyxsaXN0LWNvbXBsZXRlLGNvbmZpZykiCiAJCQlmaQogCQkJOzsKIAkJZXNhYwpAQCAtMjk5Myw3ICszMzEyLDcgQEAKIAogCQlsb2NhbCBJRlM9JCdcbicKIAkJY29tcHNldCAtUCAnKls9Ol0nCi0JCWNvbXBhZGQgLVEgLWYgLS0gJHs9MX0gJiYgX3JldD0wCisJCWNvbXBhZGQgLWYgLS0gJHs9MX0gJiYgX3JldD0wCiAJfQogCiAJX19naXRjb21wX2ZpbGUgKCkKQEAgLTMwMDIsNyArMzMyMSw3IEBACiAKIAkJbG9jYWwgSUZTPSQnXG4nCiAJCWNvbXBzZXQgLVAgJypbPTpdJwotCQljb21wYWRkIC1RIC1wICIkezItfSIgLWYgLS0gJHs9MX0gJiYgX3JldD0wCisJCWNvbXBhZGQgLXAgIiR7Mi19IiAtZiAtLSAkez0xfSAmJiBfcmV0PTAKIAl9CiAKIAlfZ2l0ICgpCmRpZmYgLS1naXQgYS9jb250cmliL2NvbXBsZXRpb24vZ2l0LWNvbXBsZXRpb24uenNoIGIvY29udHJpYi9jb21wbGV0aW9uL2dpdC1jb21wbGV0aW9uLnpzaAppbmRleCAwNDlkNmI4Li5lZWY0ZWZmIDEwMDY0NAotLS0gYS9jb250cmliL2NvbXBsZXRpb24vZ2l0LWNvbXBsZXRpb24uenNoCisrKyBiL2NvbnRyaWIvY29tcGxldGlvbi9naXQtY29tcGxldGlvbi56c2gKQEAgLTExLDggKzExLDkgQEAKICMKICMgIHpzdHlsZSAnOmNvbXBsZXRpb246KjoqOmdpdDoqJyBzY3JpcHQgfi8uZ2l0LWNvbXBsZXRpb24uenNoCiAjCi0jIFRoZSByZWNvbW1lbmRlZCB3YXkgdG8gaW5zdGFsbCB0aGlzIHNjcmlwdCBpcyB0byBjb3B5IHRvICd+Ly56c2gvX2dpdCcsIGFuZAotIyB0aGVuIGFkZCB0aGUgZm9sbG93aW5nIHRvIHlvdXIgfi8uenNocmMgZmlsZToKKyMgVGhlIHJlY29tbWVuZGVkIHdheSB0byBpbnN0YWxsIHRoaXMgc2NyaXB0IGlzIHRvIG1ha2UgYSBjb3B5IG9mIGl0IGluCisjIH4vLnpzaC8gZGlyZWN0b3J5IGFzIH4vLnpzaC9naXQtY29tcGxldGlvbi56c2ggYW5kIHRoZW4gYWRkIHRoZSBmb2xsb3dpbmcKKyMgdG8geW91ciB+Ly56c2hyYyBmaWxlOgogIwogIyAgZnBhdGg9KH4vLnpzaCAkZnBhdGgpCiAKQEAgLTk5LDcgKzEwMCw3IEBACiAKIAlsb2NhbCBJRlM9JCdcbicKIAljb21wc2V0IC1QICcqWz06XScKLQljb21wYWRkIC1RIC1mIC0tICR7PTF9ICYmIF9yZXQ9MAorCWNvbXBhZGQgLWYgLS0gJHs9MX0gJiYgX3JldD0wCiB9CiAKIF9fZ2l0Y29tcF9maWxlICgpCkBAIC0xMDgsNyArMTA5LDcgQEAKIAogCWxvY2FsIElGUz0kJ1xuJwogCWNvbXBzZXQgLVAgJypbPTpdJwotCWNvbXBhZGQgLVEgLXAgIiR7Mi19IiAtZiAtLSAkez0xfSAmJiBfcmV0PTAKKwljb21wYWRkIC1wICIkezItfSIgLWYgLS0gJHs9MX0gJiYgX3JldD0wCiB9CiAKIF9fZ2l0X3pzaF9iYXNoX2Z1bmMgKCkKZGlmZiAtLWdpdCBhL2NvbnRyaWIvY29tcGxldGlvbi9naXQtcHJvbXB0LnNoIGIvY29udHJpYi9jb21wbGV0aW9uL2dpdC1wcm9tcHQuc2gKaW5kZXggOTgzZTQxOS4uMDE0Y2Q3YyAxMDA2NDQKLS0tIGEvY29udHJpYi9jb21wbGV0aW9uL2dpdC1wcm9tcHQuc2gKKysrIGIvY29udHJpYi9jb21wbGV0aW9uL2dpdC1wcm9tcHQuc2gKQEAgLTI4Niw2ICsyODYsMzcgQEAKIAl0ZXN0IC1yICIkMSIgJiYgSUZTPSQnXHJcbicgcmVhZCAiJDIiIDwiJDEiCiB9CiAKKyMgc2VlIGlmIGEgY2hlcnJ5LXBpY2sgb3IgcmV2ZXJ0IGlzIGluIHByb2dyZXNzLCBpZiB0aGUgdXNlciBoYXMgY29tbWl0dGVkIGEKKyMgY29uZmxpY3QgcmVzb2x1dGlvbiB3aXRoICdnaXQgY29tbWl0JyBpbiB0aGUgbWlkZGxlIG9mIGEgc2VxdWVuY2Ugb2YgcGlja3Mgb3IKKyMgcmV2ZXJ0cyB0aGVuIENIRVJSWV9QSUNLX0hFQUQvUkVWRVJUX0hFQUQgd2lsbCBub3QgZXhpc3Qgc28gd2UgaGF2ZSB0byByZWFkCisjIHRoZSB0b2RvIGZpbGUuCitfX2dpdF9zZXF1ZW5jZXJfc3RhdHVzICgpCit7CisJbG9jYWwgdG9kbworCWlmIHRlc3QgLWYgIiRnL0NIRVJSWV9QSUNLX0hFQUQiCisJdGhlbgorCQlyPSJ8Q0hFUlJZLVBJQ0tJTkciCisJCXJldHVybiAwOworCWVsaWYgdGVzdCAtZiAiJGcvUkVWRVJUX0hFQUQiCisJdGhlbgorCQlyPSJ8UkVWRVJUSU5HIgorCQlyZXR1cm4gMDsKKwllbGlmIF9fZ2l0X2VyZWFkICIkZy9zZXF1ZW5jZXIvdG9kbyIgdG9kbworCXRoZW4KKwkJY2FzZSAiJHRvZG8iIGluCisJCXBbXCBcCV18cGlja1tcIFwJXSopCisJCQlyPSJ8Q0hFUlJZLVBJQ0tJTkciCisJCQlyZXR1cm4gMAorCQk7OworCQlyZXZlcnRbXCBcCV0qKQorCQkJcj0ifFJFVkVSVElORyIKKwkJCXJldHVybiAwCisJCTs7CisJCWVzYWMKKwlmaQorCXJldHVybiAxCit9CisKICMgX19naXRfcHMxIGFjY2VwdHMgMCBvciAxIGFyZ3VtZW50cyAoaS5lLiwgZm9ybWF0IHN0cmluZykKICMgd2hlbiBjYWxsZWQgZnJvbSBQUzEgdXNpbmcgY29tbWFuZCBzdWJzdGl0dXRpb24KICMgaW4gdGhpcyBtb2RlIGl0IHByaW50cyB0ZXh0IHRvIGFkZCB0byBiYXNoIFBTMSBwcm9tcHQgKGluY2x1ZGVzIGJyYW5jaCBuYW1lKQpAQCAtMzk4LDExICs0MjksNyBAQAogCQlfX2dpdF9lcmVhZCAiJGcvcmViYXNlLW1lcmdlL2hlYWQtbmFtZSIgYgogCQlfX2dpdF9lcmVhZCAiJGcvcmViYXNlLW1lcmdlL21zZ251bSIgc3RlcAogCQlfX2dpdF9lcmVhZCAiJGcvcmViYXNlLW1lcmdlL2VuZCIgdG90YWwKLQkJaWYgWyAtZiAiJGcvcmViYXNlLW1lcmdlL2ludGVyYWN0aXZlIiBdOyB0aGVuCi0JCQlyPSJ8UkVCQVNFLWkiCi0JCWVsc2UKLQkJCXI9InxSRUJBU0UtbSIKLQkJZmkKKwkJcj0ifFJFQkFTRSIKIAllbHNlCiAJCWlmIFsgLWQgIiRnL3JlYmFzZS1hcHBseSIgXTsgdGhlbgogCQkJX19naXRfZXJlYWQgIiRnL3JlYmFzZS1hcHBseS9uZXh0IiBzdGVwCkBAIC00MTcsMTAgKzQ0NCw4IEBACiAJCQlmaQogCQllbGlmIFsgLWYgIiRnL01FUkdFX0hFQUQiIF07IHRoZW4KIAkJCXI9InxNRVJHSU5HIgotCQllbGlmIFsgLWYgIiRnL0NIRVJSWV9QSUNLX0hFQUQiIF07IHRoZW4KLQkJCXI9InxDSEVSUlktUElDS0lORyIKLQkJZWxpZiBbIC1mICIkZy9SRVZFUlRfSEVBRCIgXTsgdGhlbgotCQkJcj0ifFJFVkVSVElORyIKKwkJZWxpZiBfX2dpdF9zZXF1ZW5jZXJfc3RhdHVzOyB0aGVuCisJCQk6CiAJCWVsaWYgWyAtZiAiJGcvQklTRUNUX0xPRyIgXTsgdGhlbgogCQkJcj0ifEJJU0VDVElORyIKIAkJZmkKZGlmZiAtLWdpdCBhL2NvbnRyaWIvY3JlZGVudGlhbC9uZXRyYy8uZ2l0aWdub3JlIGIvY29udHJpYi9jcmVkZW50aWFsL25ldHJjLy5naXRpZ25vcmUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDQxY2RkZQotLS0gL2Rldi9udWxsCisrKyBiL2NvbnRyaWIvY3JlZGVudGlhbC9uZXRyYy8uZ2l0aWdub3JlCkBAIC0wLDAgKzEgQEAKK2dpdC1jcmVkZW50aWFsLW5ldHJjCmRpZmYgLS1naXQgYS9jb250cmliL2NyZWRlbnRpYWwvbmV0cmMvTWFrZWZpbGUgYi9jb250cmliL2NyZWRlbnRpYWwvbmV0cmMvTWFrZWZpbGUKaW5kZXggNjE3NGUzYi4uYzI4NGZiOCAxMDA2NDQKLS0tIGEvY29udHJpYi9jcmVkZW50aWFsL25ldHJjL01ha2VmaWxlCisrKyBiL2NvbnRyaWIvY3JlZGVudGlhbC9uZXRyYy9NYWtlZmlsZQpAQCAtMSw4ICsxLDMwIEBACiAjIFRoZSBkZWZhdWx0IHRhcmdldCBvZiB0aGlzIE1ha2VmaWxlIGlzLi4uCiBhbGw6OgogCi10ZXN0OgorU0NSSVBUX1BFUkwgPSBnaXQtY3JlZGVudGlhbC1uZXRyYy5wZXJsCitHSVRfUk9PVF9ESVIgPSAuLi8uLi8uLgorSEVSRSA9IGNvbnRyaWIvY3JlZGVudGlhbC9uZXRyYworCitTQ1JJUFRfUEVSTF9GVUxMID0gJChwYXRzdWJzdCAlLCQoSEVSRSkvJSwkKFNDUklQVF9QRVJMKSkKKworYWxsOjogYnVpbGQKKworYnVpbGQ6CisJJChNQUtFKSAtQyAkKEdJVF9ST09UX0RJUikgU0NSSVBUX1BFUkw9IiQoU0NSSVBUX1BFUkxfRlVMTCkiIFwKKyAgICAgICAgICAgICAgICBidWlsZC1wZXJsLXNjcmlwdAorCitpbnN0YWxsOiBidWlsZAorCSQoTUFLRSkgLUMgJChHSVRfUk9PVF9ESVIpIFNDUklQVF9QRVJMPSIkKFNDUklQVF9QRVJMX0ZVTEwpIiBcCisgICAgICAgICAgICAgICAgaW5zdGFsbC1wZXJsLXNjcmlwdAorCitjbGVhbjoKKwkkKE1BS0UpIC1DICQoR0lUX1JPT1RfRElSKSBTQ1JJUFRfUEVSTD0iJChTQ1JJUFRfUEVSTF9GVUxMKSIgXAorICAgICAgICAgICAgICAgIGNsZWFuLXBlcmwtc2NyaXB0CisKK3Rlc3Q6IGJ1aWxkCiAJLi90LWdpdC1jcmVkZW50aWFsLW5ldHJjLnNoCiAKLXRlc3R2ZXJib3NlOgordGVzdHZlcmJvc2U6IGJ1aWxkCiAJLi90LWdpdC1jcmVkZW50aWFsLW5ldHJjLnNoIC1kIC12CisKKy5QSE9OWTogYWxsIGJ1aWxkIGluc3RhbGwgY2xlYW4gdGVzdCB0ZXN0dmVyYm9zZQpkaWZmIC0tZ2l0IGEvY29udHJpYi9jcmVkZW50aWFsL25ldHJjL2dpdC1jcmVkZW50aWFsLW5ldHJjIGIvY29udHJpYi9jcmVkZW50aWFsL25ldHJjL2dpdC1jcmVkZW50aWFsLW5ldHJjLnBlcmwKc2ltaWxhcml0eSBpbmRleCA5OCUKcmVuYW1lIGZyb20gY29udHJpYi9jcmVkZW50aWFsL25ldHJjL2dpdC1jcmVkZW50aWFsLW5ldHJjCnJlbmFtZSB0byBjb250cmliL2NyZWRlbnRpYWwvbmV0cmMvZ2l0LWNyZWRlbnRpYWwtbmV0cmMucGVybAppbmRleCBlYmZjMTIzLi5iYzU3Y2M2IDEwMDc1NQotLS0gYS9jb250cmliL2NyZWRlbnRpYWwvbmV0cmMvZ2l0LWNyZWRlbnRpYWwtbmV0cmMKKysrIGIvY29udHJpYi9jcmVkZW50aWFsL25ldHJjL2dpdC1jcmVkZW50aWFsLW5ldHJjLnBlcmwKQEAgLTQyMyw3ICs0MjMsNyBAQAogCSMgbG9hZCBzZXR0aW5ncyBmcm9tIGdpdCBjb25maWcKIAlteSAkb3B0aW9ucyA9IHNoaWZ0OwogCSMgc2V0IGZyb20gY29tbWFuZCBhcmd1bWVudCwgZ3BnLnByb2dyYW0gb3B0aW9uLCBvciBkZWZhdWx0IHRvIGdwZwotCSRvcHRpb25zLT57J2dwZyd9IC8vPSBHaXQtPnJlcG9zaXRvcnkoKS0+Y29uZmlnKCdncGcucHJvZ3JhbScpCisJJG9wdGlvbnMtPnsnZ3BnJ30gLy89IEdpdDo6Y29uZmlnKCdncGcucHJvZ3JhbScpCiAJICAgICAgICAgICAgICAgICAgLy8gJ2dwZyc7CiAJbG9nX3ZlcmJvc2UoInVzaW5nICRvcHRpb25zeydncGcnfSBmb3IgR1BHIG9wZXJhdGlvbnMiKTsKIH0KZGlmZiAtLWdpdCBhL2NvbnRyaWIvZGlmZi1oaWdobGlnaHQvRGlmZkhpZ2hsaWdodC5wbSBiL2NvbnRyaWIvZGlmZi1oaWdobGlnaHQvRGlmZkhpZ2hsaWdodC5wbQppbmRleCA1MzY3NTQ1Li5lMjU4OTkyIDEwMDY0NAotLS0gYS9jb250cmliL2RpZmYtaGlnaGxpZ2h0L0RpZmZIaWdobGlnaHQucG0KKysrIGIvY29udHJpYi9kaWZmLWhpZ2hsaWdodC9EaWZmSGlnaGxpZ2h0LnBtCkBAIC00LDYgKzQsMTEgQEAKIHVzZSB3YXJuaW5ncyBGQVRBTCA9PiAnYWxsJzsKIHVzZSBzdHJpY3Q7CiAKKyMgVXNlIHRoZSBjb3JyZWN0IHZhbHVlIGZvciBib3RoIFVOSVggYW5kIFdpbmRvd3MgKC9kZXYvbnVsbCB2cyBudWwpCit1c2UgRmlsZTo6U3BlYzsKKworbXkgJE5VTEwgPSBGaWxlOjpTcGVjLT5kZXZudWxsKCk7CisKICMgSGlnaGxpZ2h0IGJ5IHJldmVyc2luZyBmb3JlZ3JvdW5kIGFuZCBiYWNrZ3JvdW5kLiBZb3UgY291bGQgZG8KICMgb3RoZXIgdGhpbmdzIGxpa2UgYm9sZCBvciB1bmRlcmxpbmUgaWYgeW91IHByZWZlci4KIG15IEBPTERfSElHSExJR0hUID0gKApAQCAtNjcsNyArNzIsNyBAQAogCSAgICAgICg/OiRDT0xPUj9cfCRDT0xPUj9bIF0pKiAjIHplcm8gb3IgbW9yZSB0cmFpbGluZyAifCIKIAkgICAgICAgICAgICAgICAgICAgICAgICAgWyBdKiAgIyB0cmFpbGluZyB3aGl0ZXNwYWNlIGZvciBtZXJnZXMKIAkgICAgL3gpIHsKLQkgICAgICAgIG15ICRncmFwaF9wcmVmaXggPSAkJjsKKwkJbXkgJGdyYXBoX3ByZWZpeCA9ICQmOwogCiAJCSMgV2UgbXVzdCBmbHVzaCBiZWZvcmUgc2V0dGluZyBncmFwaCBpbmRlbnQsIHNpbmNlIHRoZQogCQkjIG5ldyBjb21taXQgbWF5IGJlIGluZGVudGVkIGRpZmZlcmVudGx5IGZyb20gd2hhdCB3ZQpAQCAtMTM0LDcgKzEzOSw3IEBACiAjIGZhbGxiYWNrLCB3aGljaCBtZWFucyB3ZSB3aWxsIHdvcmsgZXZlbiBpZiBnaXQgY2FuJ3QgYmUgcnVuLgogc3ViIGNvbG9yX2NvbmZpZyB7CiAJbXkgKCRrZXksICRkZWZhdWx0KSA9IEBfOwotCW15ICRzID0gYGdpdCBjb25maWcgLS1nZXQtY29sb3IgJGtleSAyPi9kZXYvbnVsbGA7CisJbXkgJHMgPSBgZ2l0IGNvbmZpZyAtLWdldC1jb2xvciAka2V5IDI+JE5VTExgOwogCXJldHVybiBsZW5ndGgoJHMpID8gJHMgOiAkZGVmYXVsdDsKIH0KIApkaWZmIC0tZ2l0IGEvY29udHJpYi9oZy10by1naXQvaGctdG8tZ2l0LnB5IGIvY29udHJpYi9oZy10by1naXQvaGctdG8tZ2l0LnB5CmluZGV4IGRlM2Y4MTYuLjdlYjFiMjQgMTAwNzU1Ci0tLSBhL2NvbnRyaWIvaGctdG8tZ2l0L2hnLXRvLWdpdC5weQorKysgYi9jb250cmliL2hnLXRvLWdpdC9oZy10by1naXQucHkKQEAgLTQyLDcgKzQyLDcgQEAKIAogZGVmIHVzYWdlKCk6CiAKLSAgICAgICAgcHJpbnQgIiIiXAorICAgICAgICBwcmludCgiIiJcCiAlczogW09QVElPTlNdIDxoZ3Byaj4KIAogb3B0aW9uczoKQEAgLTU0LDcgKzU0LDcgQEAKIAogcmVxdWlyZWQ6CiAgICAgaGdwcmo6ICBuYW1lIG9mIHRoZSBIRyBwcm9qZWN0IHRvIGltcG9ydCAoZGlyZWN0b3J5KQotIiIiICUgc3lzLmFyZ3ZbMF0KKyIiIiAlIHN5cy5hcmd2WzBdKQogCiAjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKQEAgLTEwNCwyMiArMTA0LDIyIEBACiBpZiBzdGF0ZToKICAgICBpZiBvcy5wYXRoLmV4aXN0cyhzdGF0ZSk6CiAgICAgICAgIGlmIHZlcmJvc2U6Ci0gICAgICAgICAgICBwcmludCAnU3RhdGUgZG9lcyBleGlzdCwgcmVhZGluZycKKyAgICAgICAgICAgIHByaW50KCdTdGF0ZSBkb2VzIGV4aXN0LCByZWFkaW5nJykKICAgICAgICAgZiA9IG9wZW4oc3RhdGUsICdyJykKICAgICAgICAgaGd2ZXJzID0gcGlja2xlLmxvYWQoZikKICAgICBlbHNlOgotICAgICAgICBwcmludCAnU3RhdGUgZG9lcyBub3QgZXhpc3QsIGZpcnN0IHJ1bicKKyAgICAgICAgcHJpbnQoJ1N0YXRlIGRvZXMgbm90IGV4aXN0LCBmaXJzdCBydW4nKQogCiBzb2NrID0gb3MucG9wZW4oJ2hnIHRpcCAtLXRlbXBsYXRlICJ7cmV2fSInKQogdGlwID0gc29jay5yZWFkKCkKIGlmIHNvY2suY2xvc2UoKToKICAgICBzeXMuZXhpdCgxKQogaWYgdmVyYm9zZToKLSAgICBwcmludCAndGlwIGlzJywgdGlwCisgICAgcHJpbnQoJ3RpcCBpcycsIHRpcCkKIAogIyBDYWxjdWxhdGUgdGhlIGJyYW5jaGVzCiBpZiB2ZXJib3NlOgotICAgIHByaW50ICdhbmFseXNpbmcgdGhlIGJyYW5jaGVzLi4uJworICAgIHByaW50KCdhbmFseXNpbmcgdGhlIGJyYW5jaGVzLi4uJykKIGhnY2hpbGRyZW5bIjAiXSA9ICgpCiBoZ3BhcmVudHNbIjAiXSA9IChOb25lLCBOb25lKQogaGdicmFuY2hbIjAiXSA9ICJtYXN0ZXIiCkBAIC0xNTQsMTUgKzE1NCwxNSBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgaGdicmFuY2hbc3RyKGNzZXQpXSA9ICJicmFuY2gtIiArIHN0cihjc2V0KQogCi1pZiBub3QgaGd2ZXJzLmhhc19rZXkoIjAiKToKLSAgICBwcmludCAnY3JlYXRpbmcgcmVwb3NpdG9yeScKK2lmICIwIiBub3QgaW4gaGd2ZXJzOgorICAgIHByaW50KCdjcmVhdGluZyByZXBvc2l0b3J5JykKICAgICBvcy5zeXN0ZW0oJ2dpdCBpbml0JykKIAogIyBsb29wIHRocm91Z2ggZXZlcnkgaGcgY2hhbmdlc2V0CiBmb3IgY3NldCBpbiByYW5nZShpbnQodGlwKSArIDEpOgogCiAgICAgIyBpbmNyZW1lbnRhbCwgYWxyZWFkeSBzZWVuCi0gICAgaWYgaGd2ZXJzLmhhc19rZXkoc3RyKGNzZXQpKToKKyAgICBpZiBzdHIoY3NldCkgaW4gaGd2ZXJzOgogICAgICAgICBjb250aW51ZQogICAgIGhnbmV3Y3NldHMgKz0gMQogCkBAIC0xODAsMjcgKzE4MCwyNyBAQAogICAgIG9zLndyaXRlKGZkY29tbWVudCwgY3NldGNvbW1lbnQpCiAgICAgb3MuY2xvc2UoZmRjb21tZW50KQogCi0gICAgcHJpbnQgJy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJwotICAgIHByaW50ICdjc2V0OicsIGNzZXQKLSAgICBwcmludCAnYnJhbmNoOicsIGhnYnJhbmNoW3N0cihjc2V0KV0KLSAgICBwcmludCAndXNlcjonLCB1c2VyCi0gICAgcHJpbnQgJ2RhdGU6JywgZGF0ZQotICAgIHByaW50ICdjb21tZW50OicsIGNzZXRjb21tZW50CisgICAgcHJpbnQoJy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJykKKyAgICBwcmludCgnY3NldDonLCBjc2V0KQorICAgIHByaW50KCdicmFuY2g6JywgaGdicmFuY2hbc3RyKGNzZXQpXSkKKyAgICBwcmludCgndXNlcjonLCB1c2VyKQorICAgIHByaW50KCdkYXRlOicsIGRhdGUpCisgICAgcHJpbnQoJ2NvbW1lbnQ6JywgY3NldGNvbW1lbnQpCiAgICAgaWYgcGFyZW50OgotCXByaW50ICdwYXJlbnQ6JywgcGFyZW50CisgICAgICAgIHByaW50KCdwYXJlbnQ6JywgcGFyZW50KQogICAgIGlmIG1wYXJlbnQ6Ci0gICAgICAgIHByaW50ICdtcGFyZW50OicsIG1wYXJlbnQKKyAgICAgICAgcHJpbnQoJ21wYXJlbnQ6JywgbXBhcmVudCkKICAgICBpZiB0YWc6Ci0gICAgICAgIHByaW50ICd0YWc6JywgdGFnCi0gICAgcHJpbnQgJy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJworICAgICAgICBwcmludCgndGFnOicsIHRhZykKKyAgICBwcmludCgnLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0nKQogCiAgICAgIyBjaGVja291dCB0aGUgcGFyZW50IGlmIG5lY2Vzc2FyeQogICAgIGlmIGNzZXQgIT0gMDoKICAgICAgICAgaWYgaGdicmFuY2hbc3RyKGNzZXQpXSA9PSAiYnJhbmNoLSIgKyBzdHIoY3NldCk6Ci0gICAgICAgICAgICBwcmludCAnY3JlYXRpbmcgbmV3IGJyYW5jaCcsIGhnYnJhbmNoW3N0cihjc2V0KV0KKyAgICAgICAgICAgIHByaW50KCdjcmVhdGluZyBuZXcgYnJhbmNoJywgaGdicmFuY2hbc3RyKGNzZXQpXSkKICAgICAgICAgICAgIG9zLnN5c3RlbSgnZ2l0IGNoZWNrb3V0IC1iICVzICVzJyAlIChoZ2JyYW5jaFtzdHIoY3NldCldLCBoZ3ZlcnNbcGFyZW50XSkpCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBwcmludCAnY2hlY2tpbmcgb3V0IGJyYW5jaCcsIGhnYnJhbmNoW3N0cihjc2V0KV0KKyAgICAgICAgICAgIHByaW50KCdjaGVja2luZyBvdXQgYnJhbmNoJywgaGdicmFuY2hbc3RyKGNzZXQpXSkKICAgICAgICAgICAgIG9zLnN5c3RlbSgnZ2l0IGNoZWNrb3V0ICVzJyAlIGhnYnJhbmNoW3N0cihjc2V0KV0pCiAKICAgICAjIG1lcmdlCkBAIC0yMDksNyArMjA5LDcgQEAKICAgICAgICAgICAgIG90aGVyYnJhbmNoID0gaGdicmFuY2hbbXBhcmVudF0KICAgICAgICAgZWxzZToKICAgICAgICAgICAgIG90aGVyYnJhbmNoID0gaGdicmFuY2hbcGFyZW50XQotICAgICAgICBwcmludCAnbWVyZ2luZycsIG90aGVyYnJhbmNoLCAnaW50bycsIGhnYnJhbmNoW3N0cihjc2V0KV0KKyAgICAgICAgcHJpbnQoJ21lcmdpbmcnLCBvdGhlcmJyYW5jaCwgJ2ludG8nLCBoZ2JyYW5jaFtzdHIoY3NldCldKQogICAgICAgICBvcy5zeXN0ZW0oZ2V0Z2l0ZW52KHVzZXIsIGRhdGUpICsgJ2dpdCBtZXJnZSAtLW5vLWNvbW1pdCAtcyBvdXJzICIiICVzICVzJyAlIChoZ2JyYW5jaFtzdHIoY3NldCldLCBvdGhlcmJyYW5jaCkpCiAKICAgICAjIHJlbW92ZSBldmVyeXRoaW5nIGV4Y2VwdCAuZ2l0IGFuZCAuaGcgZGlyZWN0b3JpZXMKQEAgLTIzMywxMiArMjMzLDEyIEBACiAKICAgICAjIGRlbGV0ZSBicmFuY2ggaWYgbm90IHVzZWQgYW55bW9yZS4uLgogICAgIGlmIG1wYXJlbnQgYW5kIGxlbihoZ2NoaWxkcmVuW3N0cihjc2V0KV0pOgotICAgICAgICBwcmludCAiRGVsZXRpbmcgdW51c2VkIGJyYW5jaDoiLCBvdGhlcmJyYW5jaAorICAgICAgICBwcmludCgiRGVsZXRpbmcgdW51c2VkIGJyYW5jaDoiLCBvdGhlcmJyYW5jaCkKICAgICAgICAgb3Muc3lzdGVtKCdnaXQgYnJhbmNoIC1kICVzJyAlIG90aGVyYnJhbmNoKQogCiAgICAgIyByZXRyaWV2ZSBhbmQgcmVjb3JkIHRoZSB2ZXJzaW9uCiAgICAgdnZ2ID0gb3MucG9wZW4oJ2dpdCBzaG93IC0tcXVpZXQgLS1wcmV0dHk9Zm9ybWF0OiVIJykucmVhZCgpCi0gICAgcHJpbnQgJ3JlY29yZCcsIGNzZXQsICctPicsIHZ2dgorICAgIHByaW50KCdyZWNvcmQnLCBjc2V0LCAnLT4nLCB2dnYpCiAgICAgaGd2ZXJzW3N0cihjc2V0KV0gPSB2dnYKIAogaWYgaGduZXdjc2V0cyA+PSBvcHRfbnJlcGFjayBhbmQgb3B0X25yZXBhY2sgIT0gLTE6CkBAIC0yNDcsNyArMjQ3LDcgQEAKICMgd3JpdGUgdGhlIHN0YXRlIGZvciBpbmNyZW1lbnRhbHMKIGlmIHN0YXRlOgogICAgIGlmIHZlcmJvc2U6Ci0gICAgICAgIHByaW50ICdXcml0aW5nIHN0YXRlJworICAgICAgICBwcmludCgnV3JpdGluZyBzdGF0ZScpCiAgICAgZiA9IG9wZW4oc3RhdGUsICd3JykKICAgICBwaWNrbGUuZHVtcChoZ3ZlcnMsIGYpCiAKZGlmZiAtLWdpdCBhL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL0NIQU5HRVMgYi9jb250cmliL2hvb2tzL211bHRpbWFpbC9DSEFOR0VTCmluZGV4IDIwNzZjZjkuLjM1NzkxZmQgMTAwNjQ0Ci0tLSBhL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL0NIQU5HRVMKKysrIGIvY29udHJpYi9ob29rcy9tdWx0aW1haWwvQ0hBTkdFUwpAQCAtMSwzICsxLDU5IEBACitSZWxlYXNlIDEuNS4wCis9PT09PT09PT09PT09CisKK0JhY2t3YXJkLWluY29tcGF0aWJsZSBjaGFuZ2UKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIG5hbWUgb2YgY2xhc3NlcyBmb3IgZW52aXJvbm1lbnQgd2FzIG1pc25hbWVkIGFzIGAqRW52aXJvbmVtZW50YC4KK0l0IGlzIG5vdyBgKkVudmlyb25tZW50YC4KKworTmV3IGZlYXR1cmVzCistLS0tLS0tLS0tLS0KKworKiBBIFRocmVhZC1JbmRleCBoZWFkZXIgaXMgbm93IGFkZGVkIHRvIGVhY2ggZW1haWwgc2VudCAoZXhjZXB0IGZvcgorICBjb21iaW5lZCBlbWFpbHMgd2hlcmUgaXQgd291bGQgbm90IG1ha2Ugc2Vuc2UpLCBzbyB0aGF0IE1TIE91dGxvb2sKKyAgcHJvcGVybHkgZ3JvdXBzIG1lc3NhZ2VzIGJ5IHRocmVhZHMgZXZlbiB0aG91Z2ggdGhleSBoYXZlIGEKKyAgZGlmZmVyZW50IHN1YmplY3QgbGluZS4gVW5mb3J0dW5hdGVseSwgZXZlbiBhZGRpbmcgdGhpcyBoZWFkZXIgdGhlCisgIHRocmVhZGluZyBzdGlsbCBzZWVtcyB0byBiZSB1bnJlbGlhYmxlLCBidXQgaXQgaXMgdW5jbGVhciB3aGV0aGVyCisgIHRoaXMgaXMgYW4gaXNzdWUgb24gb3VyIHNpZGUgb3Igb24gTVMgT3V0bG9vaydzIHNpZGUgKHNlZSBkaXNjdXNzaW9uCisgIGhlcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9naXQtbXVsdGltYWlsL2dpdC1tdWx0aW1haWwvcHVsbC8xOTQpLgorCisqIEEgbmV3IHZhcmlhYmxlIG11bHRpbWFpbGhvb2suRXhjbHVkZU1lcmdlUmV2aXNpb25zIHdhcyBhZGRlZCB0byBzZW5kCisgIG5vdGlmaWNhdGlvbiBlbWFpbHMgb25seSBmb3Igbm9uLW1lcmdlIGNvbW1pdHMuCisKKyogRm9yIGdpdG9saXRlIGVudmlyb25tZW50LCBpdCBpcyBub3cgcG9zc2libGUgdG8gc3BlY2lmeSB0aGUgbWFpbCBtYXAKKyAgaW4gYSBzZXBhcmF0ZSBmaWxlIGluIGFkZGl0aW9uIHRvIGdpdG9saXRlLmNvbmYsIHVzaW5nIHRoZSB2YXJpYWJsZQorICBtdWx0aW1haWxob29rLk1haWxhZGRyZXNzTWFwLgorCitJbnRlcm5hbCBjaGFuZ2VzCistLS0tLS0tLS0tLS0tLS0tCisKKyogVGhlIHRlc3RzdWl0ZSBub3cgdXNlcyBHSVRfUFJJTlRfU0hBMV9FTExJUFNJUyB3aGVyZSBuZWVkZWQgZm9yCisgIGNvbXBhdGliaWxpdHkgd2l0aCByZWNlbnQgR2l0IHZlcnNpb25zLiBPbmx5IHRlc3RzIGFyZSBhZmZlY3RlZC4KKworKiBXZSBkb24ndCB0cnkgdG8gaW5zdGFsbCBweWZsYWtlcyBpbiB0aGUgY29udGludW91cyBpbnRlZ3JhdGlvbiBqb2IKKyAgZm9yIG9sZCBQeXRob24gdmVyc2lvbnMgd2hlcmUgaXQncyBubyBsb25nZXIgYXZhaWxhYmxlLgorCisqIFN0b3AgdXNpbmcgdGhlIGRlcHJlY2F0ZWQgY2dpLmVzY2FwZSBpbiBQeXRob24gMy4KKworKiBOZXcgZmxha2U4IHdhcm5pbmdzIGhhdmUgYmVlbiBmaXhlZC4KKworKiBQeXRob24gMy42IGlzIG5vdyB0ZXN0ZWQgYWdhaW5zdCBvbiBUcmF2aXMtQ0kuCisKKyogQSBidW5jaCBvZiBsZ3RtLmNvbSB3YXJuaW5ncyBoYXZlIGJlZW4gZml4ZWQuCisKK0J1ZyBmaXhlcworLS0tLS0tLS0tCisKKyogU01UUE1haWxlciBsb2dzIGluIG9ubHkgb25jZSBub3cuIEl0IHVzZWQgdG8gcmUtbG9naW4gZm9yIGVhY2ggZW1haWwKKyAgc2VudCB3aGljaCB0cmlnZ2VyZWQgZXJyb3JzIGZvciBzb21lIFNNVFAgc2VydmVycy4KKworKiBtaWdyYXRlLW1haWxob29rLWNvbmZpZyB3YXMgYnJva2VuIGJ5IGludGVybmFsIHJlZmFjdG9yaW5nLCBpdAorICBzaG91bGQgbm93IHdvcmsgYWdhaW4uCisKK1RoaXMgdmVyc2lvbiB3YXMgdGVzdGVkIHdpdGggUHl0aG9uIDIuNiB0byAzLjcuIEl0IHdhcyB0ZXN0ZWQgd2l0aCBHaXQKKzEuNy4xMC40MDYuZ2RjODAxLCAyLjE1LjEgYW5kIDIuMjAuMS45OC5nZWNiZGFmMC4KKwogUmVsZWFzZSAxLjQuMAogPT09PT09PT09PT09PQogCmRpZmYgLS1naXQgYS9jb250cmliL2hvb2tzL211bHRpbWFpbC9DT05UUklCVVRJTkcucnN0IGIvY29udHJpYi9ob29rcy9tdWx0aW1haWwvQ09OVFJJQlVUSU5HLnJzdAppbmRleCBkYTY1NTcwLi5kZTIwYTU0IDEwMDY0NAotLS0gYS9jb250cmliL2hvb2tzL211bHRpbWFpbC9DT05UUklCVVRJTkcucnN0CisrKyBiL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL0NPTlRSSUJVVElORy5yc3QKQEAgLTQsOSArNCw4IEBACiBnaXQtbXVsdGltYWlsIGlzIGFuIG9wZW4tc291cmNlIHByb2plY3QsIGJ1aWx0IGJ5IHZvbHVudGVlcnMuIFdlIHdvdWxkCiB3ZWxjb21lIHlvdXIgaGVscCEKIAotVGhlIGN1cnJlbnQgbWFpbnRhaW5lcnMgYXJlIE1hdHRoaWV1IE1veQotPG1hdHRoaWV1Lm1veUBncmVub2JsZS1pbnAuZnI+IGFuZCBNaWNoYWVsIEhhZ2dlcnR5Ci08bWhhZ2dlckBhbHVtLm1pdC5lZHU+LgorVGhlIGN1cnJlbnQgbWFpbnRhaW5lcnMgYXJlIGBNYXR0aGlldSBNb3kgPGh0dHA6Ly9tYXR0aGlldS1tb3kuZnI+YF9fIGFuZAorYE1pY2hhZWwgSGFnZ2VydHkgPGh0dHBzOi8vZ2l0aHViLmNvbS9taGFnZ2VyPmBfXy4KIAogUGxlYXNlIG5vdGUgdGhhdCBhbHRob3VnaCBhIGNvcHkgb2YgZ2l0LW11bHRpbWFpbCBpcyBkaXN0cmlidXRlZCBpbgogdGhlICJjb250cmliIiBzZWN0aW9uIG9mIHRoZSBtYWluIEdpdCBwcm9qZWN0LCBkZXZlbG9wbWVudCB0YWtlcyBwbGFjZQpAQCAtMzMsNiArMzIsMjkgQEAKIFBsZWFzZSBDQyBlbWFpbHMgcmVnYXJkaW5nIGdpdC1tdWx0aW1haWwgdG8gdGhlIG1haW50YWluZXJzIHNvIHRoYXQgd2UKIGRvbid0IG92ZXJsb29rIHRoZW0uCiAKK0hlbHAgbmVlZGVkOiB0ZXN0ZXJzL21haW50YWluZXIgZm9yIHNwZWNpZmljIGVudmlyb25tZW50cy9PUworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoZSBjdXJyZW50IG1haW50YWluZXIgdXNlcyBhbmQgdGVzdHMgZ2l0LW11bHRpbWFpbCBvbiBMaW51eCB3aXRoIHRoZQorR2VuZXJpYyBlbnZpcm9ubWVudC4gTW9yZSB0ZXN0ZXJzLCBvciBiZXR0ZXIgY29udHJpYnV0b3JzIGFyZSBuZWVkZWQKK3RvIHRlc3QgZ2l0LW11bHRpbWFpbCBvbiBvdGhlciByZWFsLWxpZmUgc2V0dXBzOgorCisqIE1hYyBPUyBYLCBXaW5kb3dzOiBnaXQtbXVsdGltYWlsIGlzIGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkIG9uIHRoZXNlCisgIHBsYXRmb3Jtcy4gQnV0IHNpbmNlIHdlIGhhdmUgbm8gZXh0ZXJuYWwgZGVwZW5kZW5jaWVzIGFuZCB0cnkgdG8KKyAgd3JpdGUgY29kZSBhcyBwb3J0YWJsZSBhcyBwb3NzaWJsZSwgaXQgaXMgcG9zc2libGUgdGhhdAorICBnaXQtbXVsdGltYWlsIGFscmVhZHkgcnVucyB0aGVyZSBhbmQgaWYgbm90LCBpdCBpcyBsaWtlbHkgdGhhdCBpdAorICBjb3VsZCBiZSBwb3J0ZWQgZWFzaWx5LgorCisgIFBhdGNoZXMgdG8gaW1wcm92ZSBzdXBwb3J0IGZvciBXaW5kb3dzIGFuZCBPUyBYIGFyZSB3ZWxjb21lLgorICBJZGVhbGx5LCB0aGVyZSB3b3VsZCBiZSBhIHN1Yi1tYWludGFpbmVyIGZvciBlYWNoIE9TIHdobyB3b3VsZCB0ZXN0CisgIGF0IGxlYXN0IG9uY2UgYmVmb3JlIGVhY2ggcmVsZWFzZSAoYXJvdW5kIHR3aWNlIGEgeWVhcikuCisKKyogR2Vycml0LCBTdGFzaCwgR2l0b2xpdGUgZW52aXJvbm1lbnRzOiBhbHRob3VnaCB0aGUgdGVzdHN1aXRlCisgIGNvbnRhaW5zIHRlc3RzIGZvciB0aGVzZSBlbnZpcm9ubWVudHMsIGEgdGVzdGVyL21haW50YWluZXIgZm9yIGVhY2gKKyAgZW52aXJvbm1lbnQgd291bGQgYmUgd2VsY29tZSB0byB0ZXN0IGFuZCByZXBvcnQgZmFpbHVyZSAob3Igc3VjY2VzcykKKyAgb24gcmVhbC1saWZlIGVudmlyb25tZW50cyBwZXJpb2RpY2FsbHkgKGhlcmUgYWxzbywgZmVlZGJhY2sgYmVmb3JlCisgIGVhY2ggcmVsZWFzZSB3b3VsZCBiZSBoaWdobHkgYXBwcmVjaWF0ZWQpLgorCiAKIC4uIF9gZ2l0LW11bHRpbWFpbCByZXBvc2l0b3J5IG9uIEdpdEh1YmA6IGh0dHBzOi8vZ2l0aHViLmNvbS9naXQtbXVsdGltYWlsL2dpdC1tdWx0aW1haWwKIC4uIF9gR2l0IG1haWxpbmcgbGlzdGA6IGdpdEB2Z2VyLmtlcm5lbC5vcmcKZGlmZiAtLWdpdCBhL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL1JFQURNRS5HaXQgYi9jb250cmliL2hvb2tzL211bHRpbWFpbC9SRUFETUUuR2l0CmluZGV4IDE2MWIwMjMuLjA0NDQ0NDIgMTAwNjQ0Ci0tLSBhL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL1JFQURNRS5HaXQKKysrIGIvY29udHJpYi9ob29rcy9tdWx0aW1haWwvUkVBRE1FLkdpdApAQCAtNiwxMCArNiwxMCBAQAogICAgIGh0dHBzOi8vZ2l0aHViLmNvbS9naXQtbXVsdGltYWlsL2dpdC1tdWx0aW1haWwKIAogVGhlIHZlcnNpb24gaW4gdGhpcyBkaXJlY3Rvcnkgd2FzIG9idGFpbmVkIGZyb20gdGhlIHVwc3RyZWFtIHByb2plY3QKLW9uIEF1Z3VzdCAxNyAyMDE2IGFuZCBjb25zaXN0cyBvZiB0aGUgImdpdC1tdWx0aW1haWwiIHN1YmRpcmVjdG9yeSBmcm9tCitvbiBKYW51YXJ5IDA3IDIwMTkgYW5kIGNvbnNpc3RzIG9mIHRoZSAiZ2l0LW11bHRpbWFpbCIgc3ViZGlyZWN0b3J5IGZyb20KIHJldmlzaW9uCiAKLSAgICAwN2IxY2I2YmZkN2JlMTU2YzYyZTFhZmExN2NhZTEzYjg1MGE4NjlmIHJlZnMvdGFncy8xLjQuMAorICAgIDA0ZTgwZTZjNDBiZTQ2NWNjNjJiNmMyNDZmMGZjYjhmZDJjZmQ0NTQgcmVmcy90YWdzLzEuNS4wCiAKIFBsZWFzZSBzZWUgdGhlIFJFQURNRSBmaWxlIGluIHRoaXMgZGlyZWN0b3J5IGZvciBpbmZvcm1hdGlvbiBhYm91dCBob3cKIHRvIHJlcG9ydCBidWdzIG9yIGNvbnRyaWJ1dGUgdG8gZ2l0LW11bHRpbWFpbC4KZGlmZiAtLWdpdCBhL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL1JFQURNRSBiL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL1JFQURNRS5yc3QKc2ltaWxhcml0eSBpbmRleCA5NSUKcmVuYW1lIGZyb20gY29udHJpYi9ob29rcy9tdWx0aW1haWwvUkVBRE1FCnJlbmFtZSB0byBjb250cmliL2hvb2tzL211bHRpbWFpbC9SRUFETUUucnN0CmluZGV4IDUxMDUzNzMuLjdjMGZjNGEgMTAwNjQ0Ci0tLSBhL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL1JFQURNRQorKysgYi9jb250cmliL2hvb2tzL211bHRpbWFpbC9SRUFETUUucnN0CkBAIC0xLDQgKzEsNCBAQAotZ2l0LW11bHRpbWFpbCB2ZXJzaW9uIDEuNC4wCitnaXQtbXVsdGltYWlsIHZlcnNpb24gMS41LjAKID09PT09PT09PT09PT09PT09PT09PT09PT09PQogCiAuLiBpbWFnZTo6IGh0dHBzOi8vdHJhdmlzLWNpLm9yZy9naXQtbXVsdGltYWlsL2dpdC1tdWx0aW1haWwuc3ZnP2JyYW5jaD1tYXN0ZXIKQEAgLTIwLDggKzIwLDggQEAKIAogUGxlYXNlIG5vdGU6IGFsdGhvdWdoLCBhcyBhIGNvbnZlbmllbmNlLCBnaXQtbXVsdGltYWlsIG1heSBiZQogZGlzdHJpYnV0ZWQgYWxvbmcgd2l0aCB0aGUgbWFpbiBHaXQgcHJvamVjdCwgZGV2ZWxvcG1lbnQgb2YKLWdpdC1tdWx0aW1haWwgdGFrZXMgcGxhY2UgaW4gaXRzIG93biwgc2VwYXJhdGUgcHJvamVjdC4gIFNlZSBzZWN0aW9uCi0iR2V0dGluZyBpbnZvbHZlZCIgYmVsb3cgZm9yIG1vcmUgaW5mb3JtYXRpb24uCitnaXQtbXVsdGltYWlsIHRha2VzIHBsYWNlIGluIGl0cyBvd24sIHNlcGFyYXRlIHByb2plY3QuICBQbGVhc2UsIHJlYWQKK2A8Q09OVFJJQlVUSU5HLnJzdD5gX18gZm9yIG1vcmUgaW5mb3JtYXRpb24uCiAKIAogQnkgZGVmYXVsdCwgZm9yIGVhY2ggcHVzaCByZWNlaXZlZCBieSB0aGUgcmVwb3NpdG9yeSwgZ2l0LW11bHRpbWFpbDoKQEAgLTg5LDYgKzg5LDEwIEBACiAgIHRoZSBtdWx0aW1haWxob29rLm1haWxlciBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGJlbG93IGZvciBob3cgdG8KICAgY29uZmlndXJlIGdpdC1tdWx0aW1haWwgdG8gc2VuZCBlbWFpbHMgdmlhIGFuIFNNVFAgc2VydmVyLgogCisqIGdpdC1tdWx0aW1haWwgaXMgY3VycmVudGx5IHRlc3RlZCBvbmx5IG9uIExpbnV4LiBJdCBtYXkgb3IgbWF5IG5vdAorICB3b3JrIG9uIG90aGVyIHBsYXRmb3JtcyBzdWNoIGFzIFdpbmRvd3MgYW5kIE1hYyBPUy4gU2VlCisgIGA8Q09OVFJJQlVUSU5HLnJzdD5gX18gdG8gaW1wcm92ZSB0aGUgc2l0dWF0aW9uLgorCiAKIEludm9jYXRpb24KIC0tLS0tLS0tLS0KQEAgLTM2OSw3ICszNzMsNyBAQAogICAgICAgICB1bnNldCwgdGhlbiB0aGUgdmFsdWUgb2YgbXVsdGltYWlsaG9vay5mcm9tIGlzIHVzZWQuCiAKICAgICAgIG11bHRpbWFpbGhvb2suc210cFNlcnZlclRpbWVvdXQKLSAgICAgICAgVGltZW91dCBpbiBzZWNvbmRzLgorICAgICAgICBUaW1lb3V0IGluIHNlY29uZHMuIERlZmF1bHQgaXMgMTAuCiAKICAgICAgIG11bHRpbWFpbGhvb2suc210cEVuY3J5cHRpb24KICAgICAgICAgU2V0IHRoZSBzZWN1cml0eSB0eXBlLiBBbGxvd2VkIHZhbHVlczogYGBub25lYGAsIGBgc3NsYGAsIGBgdGxzYGAgKHN0YXJ0dGxzKS4KQEAgLTQxOSw4ICs0MjMsMjAgQEAKICAgICBJZiBjb25maWcgdmFsdWVzIGFyZSB1bnNldCwgdGhlIHZhbHVlIG9mIHRoZSBGcm9tOiBoZWFkZXIgaXMKICAgICBkZXRlcm1pbmVkIGFzIGZvbGxvd3M6CiAKLSAgICAxLiAoZ2l0b2xpdGUgZW52aXJvbm1lbnQgb25seSkgUGFyc2UgZ2l0b2xpdGUuY29uZiwgbG9va2luZyBmb3IgYQotICAgICAgIGJsb2NrIG9mIGNvbW1lbnRzIHRoYXQgbG9va3MgbGlrZSB0aGlzOjoKKyAgICAxLiAoZ2l0b2xpdGUgZW52aXJvbm1lbnQgb25seSkKKyAgICAgICAxLmEpIElmIGBgbXVsdGltYWlsaG9vay5NYWlsYWRkcmVzc01hcGBgIGlzIHNldCwgYW5kIGlzIGEgcGF0aAorICAgICAgIHRvIGFuIGV4aXN0aW5nIGZpbGUgKGlmIHJlbGF0aXZlLCBpdCBpcyBjb25zaWRlcmVkIHJlbGF0aXZlIHRvCisgICAgICAgdGhlIHBsYWNlIHdoZXJlIGBgZ2l0b2xpdGUuY29uZmBgIGlzIGxvY2F0ZWQpLCB0aGVuIHRoaXMgZmlsZQorICAgICAgIHNob3VsZCBjb250YWluIGxpbmVzIGxpa2U6OgorCisgICAgICAgICAgIHVzZXJuYW1lIEZpcnN0bmFtZSBMYXN0bmFtZSA8ZW1haWxAZXhhbXBsZS5jb20+CisKKyAgICAgICBnaXQtbXVsdGltYWlsIHdpbGwgdGhlbiBsb29rIGZvciBhIGxpbmUgd2hlcmUgYGAkR0xfVVNFUmBgCisgICAgICAgbWF0Y2hlcyB0aGUgYGB1c2VybmFtZWBgIHBhcnQsIGFuZCB1c2UgdGhlIHJlc3Qgb2YgdGhlIGxpbmUgZm9yCisgICAgICAgdGhlIGBgRnJvbTpgYCBoZWFkZXIuCisKKyAgICAgICAxLmIpIFBhcnNlIGdpdG9saXRlLmNvbmYsIGxvb2tpbmcgZm9yIGEgYmxvY2sgb2YgY29tbWVudHMgdGhhdAorICAgICAgIGxvb2tzIGxpa2UgdGhpczo6CiAKICAgICAgICAgICAgIyBCRUdJTiBVU0VSIEVNQUlMUwogICAgICAgICAgICAjIHVzZXJuYW1lIEZpcnN0bmFtZSBMYXN0bmFtZSA8ZW1haWxAZXhhbXBsZS5jb20+CkBAIC00MzYsNiArNDUyLDExIEBACiAKICAgICAzLiBVc2UgdGhlIHZhbHVlIG9mIG11bHRpbWFpbGhvb2suZW52ZWxvcGVTZW5kZXIuCiAKK211bHRpbWFpbGhvb2suTWFpbGFkZHJlc3NNYXAKKyAgICAoZ2l0b2xpdGUgZW52aXJvbm1lbnQgb25seSkKKyAgICBGaWxlIHRvIGxvb2sgZm9yIGEgYGBGcm9tOmBgIGFkZHJlc3MgYmFzZWQgb24gdGhlIHVzZXIgZG9pbmcgdGhlCisgICAgcHVzaC4gRGVmYXVsdHMgdG8gdW5zZXQuIFNlZSBgYG11bHRpbWFpbGhvb2suZnJvbWBgIGZvciBkZXRhaWxzLgorCiBtdWx0aW1haWxob29rLmFkbWluaXN0cmF0b3IKICAgICBUaGUgbmFtZSBhbmQvb3IgZW1haWwgYWRkcmVzcyBvZiB0aGUgYWRtaW5pc3RyYXRvciBvZiB0aGUgR2l0CiAgICAgcmVwb3NpdG9yeTsgdXNlZCBpbiBGT09URVJfVEVNUExBVEUuICBEZWZhdWx0IGlzCkBAIC00ODQsNiArNTA1LDExIEBACiAgICAgbWFpbGJvbWJpbmcsIGZvciBleGFtcGxlIG9uIGFuIGluaXRpYWwgcHVzaC4gIFRvIGRpc2FibGUgY29tbWl0CiAgICAgZW1haWxzIGxpbWl0LCBzZXQgdGhpcyBvcHRpb24gdG8gMC4gIFRoZSBkZWZhdWx0IGlzIDUwMC4KIAorbXVsdGltYWlsaG9vay5leGNsdWRlTWVyZ2VSZXZpc2lvbnMKKyAgICBXaGVuIHNlbmRpbmcgb3V0IHJldmlzaW9uIGVtYWlscywgZG8gbm90IGNvbnNpZGVyIG1lcmdlIGNvbW1pdHMgKHRoZQorICAgIGZ1bmN0aW9uYWwgZXF1aXZhbGVudCBvZiBgcmV2LWxpc3QgLS1uby1tZXJnZXNgKS4KKyAgICBUaGUgZGVmYXVsdCBpcyBgZmFsc2VgIChzZW5kIG1lcmdlIGNvbW1pdCBlbWFpbHMpLgorCiBtdWx0aW1haWxob29rLmVtYWlsU3RyaWN0VVRGOAogICAgIElmIHRoaXMgYm9vbGVhbiBvcHRpb24gaXMgc2V0IHRvIGB0cnVlYCwgdGhlbiB0aGUgbWFpbiBwYXJ0IG9mIHRoZQogICAgIGVtYWlsIGJvZHkgaXMgZm9yY2VkIHRvIGJlIHZhbGlkIFVURi04LiAgQW55IGNoYXJhY3RlcnMgdGhhdCBhcmUKZGlmZiAtLWdpdCBhL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL2RvYy9naXRvbGl0ZS5yc3QgYi9jb250cmliL2hvb2tzL211bHRpbWFpbC9kb2MvZ2l0b2xpdGUucnN0CmluZGV4IDAwYWVkZDkuLjUwNTQ4MzMgMTAwNjQ0Ci0tLSBhL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL2RvYy9naXRvbGl0ZS5yc3QKKysrIGIvY29udHJpYi9ob29rcy9tdWx0aW1haWwvZG9jL2dpdG9saXRlLnJzdApAQCAtNDYsNiArNDYsMTUgQEAKICAgICAgIGNvbmZpZyBtdWx0aW1haWxob29rLm1haWxpbmdMaXN0ID0gIyBXaGVyZSBlbWFpbHMgc2hvdWxkIGJlIHNlbnQKICAgICAgIGNvbmZpZyBtdWx0aW1haWxob29rLmZyb20gPSAjIEZyb20gYWRkcmVzcyB0byB1c2UKIAorTm90ZSB0aGF0IGJ5IGRlZmF1bHQsIGdpdG9saXRlIGZvcmJpZHMgYGA8YGAgYW5kIGBgPmBgIGluIHZhcmlhYmxlCit2YWx1ZXMgKGZvciBzZWN1cml0eS9wYXJhbm9pYSByZWFzb25zLCBzZWUKK2Bjb21wZW5zYXRpbmcgZm9yIFVOU0FGRV9QQVRUCis8aHR0cDovL2dpdG9saXRlLmNvbS9naXRvbGl0ZS9naXQtY29uZmlnL2luZGV4Lmh0bWwjY29tcGVuc2F0aW5nLWZvci11bnNhZmU5NXBhdHQ+YF9fCitpbiBnaXRvbGl0ZSdzIGRvY3VtZW50YXRpb24gZm9yIGV4cGxhbmF0aW9ucyBhbmQgYSB3YXkgdG8gZGlzYWJsZQordGhpcykuIEFzIGEgY29uc2VxdWVuY2UsIHlvdSB3aWxsIG5vdCBiZSBhYmxlIHRvIHVzZSBgYEZpcnN0IExhc3QKKzxGaXJzdC5MYXN0QGV4YW1wbGUuY29tPmBgIGFzIHJlY2lwaWVudCBlbWFpbCwgYnV0IHNwZWNpZnlpbmcKK2BgRmlyc3QuTGFzdEBleGFtcGxlLmNvbWBgIGFsb25lIHdvcmtzLgorCiBPYnZpb3VzbHksIHlvdSBjYW4gY3VzdG9taXplIGFsbCBwYXJhbWV0ZXJzIG9uIGEgcGVyLXJlcG9zaXRvcnkgYmFzaXMgYnkKIGFkZGluZyB0aGVzZSBgYGNvbmZpZyBtdWx0aW1haWxob29rLipgYCBsaW5lcyBpbiB0aGUgc2VjdGlvbgogY29ycmVzcG9uZGluZyB0byBhIHJlcG9zaXRvcnkgb3Igc2V0IG9mIHJlcG9zaXRvcmllcy4KZGlmZiAtLWdpdCBhL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL2dpdF9tdWx0aW1haWwucHkgYi9jb250cmliL2hvb2tzL211bHRpbWFpbC9naXRfbXVsdGltYWlsLnB5CmluZGV4IDczZmRkYTYuLmY1NjNiZTggMTAwNzU1Ci0tLSBhL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL2dpdF9tdWx0aW1haWwucHkKKysrIGIvY29udHJpYi9ob29rcy9tdWx0aW1haWwvZ2l0X211bHRpbWFpbC5weQpAQCAtMSw2ICsxLDYgQEAKICMhIC91c3IvYmluL2VudiBweXRob24KIAotX192ZXJzaW9uX18gPSAnMS40LjAnCitfX3ZlcnNpb25fXyA9ICcxLjUuMCcKIAogIyBDb3B5cmlnaHQgKGMpIDIwMTUtMjAxNiBNYXR0aGlldSBNb3kgYW5kIG90aGVycwogIyBDb3B5cmlnaHQgKGMpIDIwMTItMjAxNCBNaWNoYWVsIEhhZ2dlcnR5IGFuZCBvdGhlcnMKQEAgLTY0LDcgKzY0LDkgQEAKICAgICAjIFB5dGhvbiA8IDIuNiBkbyBub3QgaGF2ZSBzc2wsIGJ1dCB0aGF0J3MgT0sgaWYgd2UgZG9uJ3QgdXNlIGl0LgogICAgIHBhc3MKIGltcG9ydCB0aW1lCi1pbXBvcnQgY2dpCisKK2ltcG9ydCB1dWlkCitpbXBvcnQgYmFzZTY0CiAKIFBZVEhPTjMgPSBzeXMudmVyc2lvbl9pbmZvID49ICgzLCAwKQogCkBAIC03Myw3ICs3NSw3IEBACiAgICAgICAgIGZvciBlbGVtZW50IGluIGl0ZXJhYmxlOgogICAgICAgICAgICAgaWYgbm90IGVsZW1lbnQ6CiAgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCi0gICAgICAgICAgICByZXR1cm4gVHJ1ZQorICAgICAgICByZXR1cm4gVHJ1ZQogCiAKIGRlZiBpc19hc2NpaShzKToKQEAgLTkzLDcgKzk1LDcgQEAKICAgICB1bmljb2RlID0gc3RyCiAKICAgICBkZWYgd3JpdGVfc3RyKGYsIG1zZyk6Ci0gICAgICAgICMgVHJ5IG91dHB1dGluZyB3aXRoIHRoZSBkZWZhdWx0IGVuY29kaW5nLiBJZiBpdCBmYWlscywKKyAgICAgICAgIyBUcnkgb3V0cHV0dGluZyB3aXRoIHRoZSBkZWZhdWx0IGVuY29kaW5nLiBJZiBpdCBmYWlscywKICAgICAgICAgIyB0cnkgVVRGLTguCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGYuYnVmZmVyLndyaXRlKG1zZy5lbmNvZGUoc3lzLmdldGRlZmF1bHRlbmNvZGluZygpKSkKQEAgLTEwOCw2ICsxMTAsMTIgQEAKICAgICAgICAgICAgIHJldHVybiBvdXQuZGVjb2RlKHN5cy5nZXRkZWZhdWx0ZW5jb2RpbmcoKSkKICAgICAgICAgZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvcjoKICAgICAgICAgICAgIHJldHVybiBvdXQuZGVjb2RlKEVOQ09ESU5HKQorCisgICAgaW1wb3J0IGh0bWwKKworICAgIGRlZiBodG1sX2VzY2FwZShzKToKKyAgICAgICAgcmV0dXJuIGh0bWwuZXNjYXBlKHMpCisKIGVsc2U6CiAgICAgZGVmIGlzX3N0cmluZyhzKToKICAgICAgICAgdHJ5OgpAQCAtMTMwLDYgKzEzOCwxMCBAQAogICAgIGRlZiBuZXh0KGl0KToKICAgICAgICAgcmV0dXJuIGl0Lm5leHQoKQogCisgICAgaW1wb3J0IGNnaQorCisgICAgZGVmIGh0bWxfZXNjYXBlKHMpOgorICAgICAgICByZXR1cm4gY2dpLmVzY2FwZShzLCBUcnVlKQogCiB0cnk6CiAgICAgZnJvbSBlbWFpbC5jaGFyc2V0IGltcG9ydCBDaGFyc2V0CkBAIC0xOTAsNiArMjAyLDcgQEAKIE1lc3NhZ2UtSUQ6ICUobXNnaWQpcwogRnJvbTogJShmcm9tYWRkcilzCiBSZXBseS1UbzogJShyZXBseV90bylzCitUaHJlYWQtSW5kZXg6ICUodGhyZWFkX2luZGV4KXMKIFgtR2l0LUhvc3Q6ICUoZnFkbilzCiBYLUdpdC1SZXBvOiAlKHJlcG9fc2hvcnRuYW1lKXMKIFgtR2l0LVJlZm5hbWU6ICUocmVmbmFtZSlzCkBAIC0zMjIsNiArMzM1LDcgQEAKIFJlcGx5LVRvOiAlKHJlcGx5X3RvKXMKIEluLVJlcGx5LVRvOiAlKHJlcGx5X3RvX21zZ2lkKXMKIFJlZmVyZW5jZXM6ICUocmVwbHlfdG9fbXNnaWQpcworVGhyZWFkLUluZGV4OiAlKHRocmVhZF9pbmRleClzCiBYLUdpdC1Ib3N0OiAlKGZxZG4pcwogWC1HaXQtUmVwbzogJShyZXBvX3Nob3J0bmFtZSlzCiBYLUdpdC1SZWZuYW1lOiAlKHJlZm5hbWUpcwpAQCAtNzYzLDYgKzc3Nyw5IEBACiAgICAgZGVmIF9fZXFfXyhzZWxmLCBvdGhlcik6CiAgICAgICAgIHJldHVybiBpc2luc3RhbmNlKG90aGVyLCBHaXRPYmplY3QpIGFuZCBzZWxmLnNoYTEgPT0gb3RoZXIuc2hhMQogCisgICAgZGVmIF9fbmVfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIHJldHVybiBub3Qgc2VsZiA9PSBvdGhlcgorCiAgICAgZGVmIF9faGFzaF9fKHNlbGYpOgogICAgICAgICByZXR1cm4gaGFzaChzZWxmLnNoYTEpCiAKQEAgLTg1Miw3ICs4NjksNyBAQAogICAgICAgICBpZiBodG1sX2VzY2FwZV92YWw6CiAgICAgICAgICAgICBmb3IgayBpbiB2YWx1ZXM6CiAgICAgICAgICAgICAgICAgaWYgaXNfc3RyaW5nKHZhbHVlc1trXSk6Ci0gICAgICAgICAgICAgICAgICAgIHZhbHVlc1trXSA9IGNnaS5lc2NhcGUodmFsdWVzW2tdLCBUcnVlKQorICAgICAgICAgICAgICAgICAgICB2YWx1ZXNba10gPSBodG1sX2VzY2FwZSh2YWx1ZXNba10pCiAgICAgICAgIGZvciBsaW5lIGluIHRlbXBsYXRlLnNwbGl0bGluZXMoVHJ1ZSk6CiAgICAgICAgICAgICB5aWVsZCBsaW5lICUgdmFsdWVzCiAKQEAgLTkwOSw3ICs5MjYsNyBAQAogCiAgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IoKQogCi0gICAgZGVmIGdlbmVyYXRlX2VtYWlsX2JvZHkoc2VsZik6CisgICAgZGVmIGdlbmVyYXRlX2VtYWlsX2JvZHkoc2VsZiwgcHVzaCk6CiAgICAgICAgICIiIkdlbmVyYXRlIHRoZSBtYWluIHBhcnQgb2YgdGhlIGVtYWlsIGJvZHksIGEgbGluZSBhdCBhIHRpbWUuCiAKICAgICAgICAgVGhlIHRleHQgaW4gdGhlIGJvZHkgbWlnaHQgYmUgdHJ1bmNhdGVkIGFmdGVyIGEgc3BlY2lmaWVkCkBAIC05MzYsNyArOTUzLDcgQEAKICAgICAgICAgICAgIHlpZWxkICI8cHJlIHN0eWxlPSdtYXJnaW46MCc+XG4iCiAKICAgICAgICAgICAgIGZvciBsaW5lIGluIGxpbmVzOgotICAgICAgICAgICAgICAgIHlpZWxkIGNnaS5lc2NhcGUobGluZSkKKyAgICAgICAgICAgICAgICB5aWVsZCBodG1sX2VzY2FwZShsaW5lKQogCiAgICAgICAgICAgICB5aWVsZCAnPC9wcmU+XG4nCiAgICAgICAgIGVsc2U6CkBAIC0xMDExLDcgKzEwMjgsNyBAQAogICAgICAgICAgICAgICAgICAgICBmZ2NvbG9yID0gJzQwNDA0MCcKIAogICAgICAgICAgICAgICAgICMgQ2hvcCB0aGUgdHJhaWxpbmcgTEYsIHdlIGRvbid0IHdhbnQgaXQgaW5zaWRlIDxwcmU+LgotICAgICAgICAgICAgICAgIGxpbmUgPSBjZ2kuZXNjYXBlKGxpbmVbOi0xXSkKKyAgICAgICAgICAgICAgICBsaW5lID0gaHRtbF9lc2NhcGUobGluZVs6LTFdKQogCiAgICAgICAgICAgICAgICAgaWYgYmdjb2xvciBvciBmZ2NvbG9yOgogICAgICAgICAgICAgICAgICAgICBzdHlsZSA9ICdkaXNwbGF5OmJsb2NrOyB3aGl0ZS1zcGFjZTpwcmU7JwpAQCAtMTA2MCw2ICsxMDc3LDEwIEBACiAgICAgICAgIHNlbGYuYXV0aG9yID0gcmVhZF9naXRfb3V0cHV0KFsnbG9nJywgJy0tbm8td2FsaycsICctLWZvcm1hdD0lYU4gPCVhRT4nLCBzZWxmLnJldi5zaGExXSkKICAgICAgICAgc2VsZi5yZWNpcGllbnRzID0gc2VsZi5lbnZpcm9ubWVudC5nZXRfcmV2aXNpb25fcmVjaXBpZW50cyhzZWxmKQogCisgICAgICAgICMgLXMgaXMgc2hvcnQgZm9yIC0tbm8tcGF0Y2gsIGJ1dCAtcyB3b3JrcyBvbiBvbGRlciBnaXQncyAoZS5nLiAxLjcpCisgICAgICAgIHNlbGYucGFyZW50cyA9IHJlYWRfZ2l0X2xpbmVzKFsnc2hvdycsICctcycsICctLWZvcm1hdD0lUCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYucmV2LnNoYTFdKVswXS5zcGxpdCgpCisKICAgICAgICAgc2VsZi5jY19yZWNpcGllbnRzID0gJycKICAgICAgICAgaWYgc2VsZi5lbnZpcm9ubWVudC5nZXRfc2NhbmNvbW1pdGZvcmNjKCk6CiAgICAgICAgICAgICBzZWxmLmNjX3JlY2lwaWVudHMgPSAnLCAnLmpvaW4odG8uc3RyaXAoKSBmb3IgdG8gaW4gc2VsZi5fY2NfcmVjaXBpZW50cygpKQpAQCAtMTA5MCw2ICsxMTExLDcgQEAKICAgICAgICAgICAgIG9uZWxpbmUgPSBvbmVsaW5lWzptYXhfc3ViamVjdF9sZW5ndGggLSA2XSArICcgWy4uLl0nCiAKICAgICAgICAgdmFsdWVzWydyZXYnXSA9IHNlbGYucmV2LnNoYTEKKyAgICAgICAgdmFsdWVzWydwYXJlbnRzJ10gPSAnICcuam9pbihzZWxmLnBhcmVudHMpCiAgICAgICAgIHZhbHVlc1sncmV2X3Nob3J0J10gPSBzZWxmLnJldi5zaG9ydAogICAgICAgICB2YWx1ZXNbJ2NoYW5nZV90eXBlJ10gPSBzZWxmLmNoYW5nZV90eXBlCiAgICAgICAgIHZhbHVlc1sncmVmbmFtZSddID0gc2VsZi5yZWZuYW1lCkBAIC0xMDk3LDYgKzExMTksNyBAQAogICAgICAgICB2YWx1ZXNbJ3Nob3J0X3JlZm5hbWUnXSA9IHNlbGYucmVmZXJlbmNlX2NoYW5nZS5zaG9ydF9yZWZuYW1lCiAgICAgICAgIHZhbHVlc1sncmVmbmFtZV90eXBlJ10gPSBzZWxmLnJlZmVyZW5jZV9jaGFuZ2UucmVmbmFtZV90eXBlCiAgICAgICAgIHZhbHVlc1sncmVwbHlfdG9fbXNnaWQnXSA9IHNlbGYucmVmZXJlbmNlX2NoYW5nZS5tc2dpZAorICAgICAgICB2YWx1ZXNbJ3RocmVhZF9pbmRleCddID0gc2VsZi5yZWZlcmVuY2VfY2hhbmdlLnRocmVhZF9pbmRleAogICAgICAgICB2YWx1ZXNbJ251bSddID0gc2VsZi5udW0KICAgICAgICAgdmFsdWVzWyd0b3QnXSA9IHNlbGYudG90CiAgICAgICAgIHZhbHVlc1sncmVjaXBpZW50cyddID0gc2VsZi5yZWNpcGllbnRzCkBAIC0xMjQ0LDYgKzEyNjcsMjMgQEAKICAgICAgICAgICAgIG9sZD1vbGQsIG5ldz1uZXcsIHJldj1yZXYsCiAgICAgICAgICAgICApCiAKKyAgICBAc3RhdGljbWV0aG9kCisgICAgZGVmIG1ha2VfdGhyZWFkX2luZGV4KCk6CisgICAgICAgICIiIlJldHVybiBhIHN0cmluZyBhcHByb3ByaWF0ZSBmb3IgdGhlIFRocmVhZC1JbmRleCBoZWFkZXIsCisgICAgICAgIG5lZWRlZCBieSBNUyBPdXRsb29rIHRvIGdldCB0aHJlYWRpbmcgcmlnaHQuCisKKyAgICAgICAgVGhlIGZvcm1hdCBpcyAoYmFzZTY0LWVuY29kZWQpOgorICAgICAgICAtIDEgYnl0ZSBtdXN0IGJlIDEKKyAgICAgICAgLSA1IGJ5dGVzIGVuY29kZSBhIGRhdGUgKGhhcmRjb2RlZCBoZXJlKQorICAgICAgICAtIDE2IGJ5dGVzIGZvciBhIGdsb2JhbGx5IHVuaXF1ZSBpZGVudGlmaWVyCisKKyAgICAgICAgRklYTUU6IFVuZm9ydHVuYXRlbHksIGV2ZW4gd2l0aCB0aGUgVGhyZWFkLUluZGV4IGZpZWxkLCBNUworICAgICAgICBPdXRsb29rIGRvZXNuJ3Qgc2VlbSB0byBkbyB0aGUgdGhyZWFkaW5nIHJlbGlhYmx5IChzZWUKKyAgICAgICAgaHR0cHM6Ly9naXRodWIuY29tL2dpdC1tdWx0aW1haWwvZ2l0LW11bHRpbWFpbC9wdWxsLzE5NCkuCisgICAgICAgICIiIgorICAgICAgICB0aHJlYWRfaW5kZXggPSBiJ1x4MDFceDAwXHgwMFx4MTJceDM0XHg1NicgKyB1dWlkLnV1aWQ0KCkuYnl0ZXMKKyAgICAgICAgcmV0dXJuIGJhc2U2NC5zdGFuZGFyZF9iNjRlbmNvZGUodGhyZWFkX2luZGV4KS5kZWNvZGUoJ2FzY2lpJykKKwogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBlbnZpcm9ubWVudCwgcmVmbmFtZSwgc2hvcnRfcmVmbmFtZSwgb2xkLCBuZXcsIHJldik6CiAgICAgICAgIENoYW5nZS5fX2luaXRfXyhzZWxmLCBlbnZpcm9ubWVudCkKICAgICAgICAgc2VsZi5jaGFuZ2VfdHlwZSA9IHsKQEAgLTEyNTcsNiArMTI5Nyw3IEBACiAgICAgICAgIHNlbGYubmV3ID0gbmV3CiAgICAgICAgIHNlbGYucmV2ID0gcmV2CiAgICAgICAgIHNlbGYubXNnaWQgPSBtYWtlX21zZ2lkKCkKKyAgICAgICAgc2VsZi50aHJlYWRfaW5kZXggPSBzZWxmLm1ha2VfdGhyZWFkX2luZGV4KCkKICAgICAgICAgc2VsZi5kaWZmb3B0cyA9IGVudmlyb25tZW50LmRpZmZvcHRzCiAgICAgICAgIHNlbGYuZ3JhcGhvcHRzID0gZW52aXJvbm1lbnQuZ3JhcGhvcHRzCiAgICAgICAgIHNlbGYubG9nb3B0cyA9IGVudmlyb25tZW50LmxvZ29wdHMKQEAgLTEyNzYsNiArMTMxNyw3IEBACiAgICAgICAgIHZhbHVlc1sncmVmbmFtZSddID0gc2VsZi5yZWZuYW1lCiAgICAgICAgIHZhbHVlc1snc2hvcnRfcmVmbmFtZSddID0gc2VsZi5zaG9ydF9yZWZuYW1lCiAgICAgICAgIHZhbHVlc1snbXNnaWQnXSA9IHNlbGYubXNnaWQKKyAgICAgICAgdmFsdWVzWyd0aHJlYWRfaW5kZXgnXSA9IHNlbGYudGhyZWFkX2luZGV4CiAgICAgICAgIHZhbHVlc1sncmVjaXBpZW50cyddID0gc2VsZi5yZWNpcGllbnRzCiAgICAgICAgIHZhbHVlc1snb2xkcmV2J10gPSBzdHIoc2VsZi5vbGQpCiAgICAgICAgIHZhbHVlc1snb2xkcmV2X3Nob3J0J10gPSBzZWxmLm9sZC5zaG9ydApAQCAtMTk0MSw2ICsxOTgzLDkgQEAKICAgICBkZWYgX19pbml0X18oc2VsZiwgZW52aXJvbm1lbnQpOgogICAgICAgICBzZWxmLmVudmlyb25tZW50ID0gZW52aXJvbm1lbnQKIAorICAgIGRlZiBjbG9zZShzZWxmKToKKyAgICAgICAgcGFzcworCiAgICAgZGVmIHNlbmQoc2VsZiwgbGluZXMsIHRvX2FkZHJzKToKICAgICAgICAgIiIiU2VuZCBhbiBlbWFpbCBjb25zaXN0aW5nIG9mIGxpbmVzLgogCkBAIC0yMDU0LDYgKzIwOTksNyBAQAogICAgICAgICBzZWxmLnVzZXJuYW1lID0gc210cHVzZXIKICAgICAgICAgc2VsZi5wYXNzd29yZCA9IHNtdHBwYXNzCiAgICAgICAgIHNlbGYuc210cGNhY2VydHMgPSBzbXRwY2FjZXJ0cworICAgICAgICBzZWxmLmxvZ2dlZGluID0gRmFsc2UKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgZGVmIGNhbGwoa2xhc3MsIHNlcnZlciwgdGltZW91dCk6CiAgICAgICAgICAgICAgICAgdHJ5OgpAQCAtMjA4Myw3ICsyMTI5LDcgQEAKICAgICAgICAgICAgICAgICAjIGVxdWl2YWxlbnQgdG8KICAgICAgICAgICAgICAgICAjICAgICBzZWxmLnNtdHAuZWhsbygpCiAgICAgICAgICAgICAgICAgIyAgICAgc2VsZi5zbXRwLnN0YXJ0dGxzKCkKLSAgICAgICAgICAgICAgICAjIHdpdGggYWNjZXMgdG8gdGhlIHNzbCBsYXllcgorICAgICAgICAgICAgICAgICMgd2l0aCBhY2Nlc3MgdG8gdGhlIHNzbCBsYXllcgogICAgICAgICAgICAgICAgIHNlbGYuc210cC5laGxvKCkKICAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5zbXRwLmhhc19leHRuKCJzdGFydHRscyIpOgogICAgICAgICAgICAgICAgICAgICByYWlzZSBzbXRwbGliLlNNVFBFeGNlcHRpb24oIlNUQVJUVExTIGV4dGVuc2lvbiBub3Qgc3VwcG9ydGVkIGJ5IHNlcnZlciIpCkBAIC0yMTAyLDcgKzIxNDgsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgY2VydF9yZXFzPXNzbC5DRVJUX05PTkUKICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgc2VsZi5lbnZpcm9ubWVudC5nZXRfbG9nZ2VyKCkuZXJyb3IoCi0gICAgICAgICAgICAgICAgICAgICAgICAnKioqIFdhcm5pbmcsIHRoZSBzZXJ2ZXIgY2VydGlmaWNhdCBpcyBub3QgdmVyaWZpZWQgKHNtdHApICoqKlxuJworICAgICAgICAgICAgICAgICAgICAgICAgJyoqKiBXYXJuaW5nLCB0aGUgc2VydmVyIGNlcnRpZmljYXRlIGlzIG5vdCB2ZXJpZmllZCAoc210cCkgKioqXG4nCiAgICAgICAgICAgICAgICAgICAgICAgICAnKioqICAgICAgICAgIHNldCB0aGUgb3B0aW9uIHNtdHBDQUNlcnRzICAgICAgICAgICAgICAgICAgICoqKlxuJwogICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgIGlmIG5vdCBoYXNhdHRyKHNlbGYuc210cC5zb2NrLCAicmVhZCIpOgpAQCAtMjEzMCwyMCArMjE3NiwzMCBAQAogICAgICAgICAgICAgICAgICUgKHNlbGYuc210cHNlcnZlciwgc3lzLmV4Y19pbmZvKClbMV0pKQogICAgICAgICAgICAgc3lzLmV4aXQoMSkKIAotICAgIGRlZiBfX2RlbF9fKHNlbGYpOgorICAgIGRlZiBjbG9zZShzZWxmKToKICAgICAgICAgaWYgaGFzYXR0cihzZWxmLCAnc210cCcpOgogICAgICAgICAgICAgc2VsZi5zbXRwLnF1aXQoKQogICAgICAgICAgICAgZGVsIHNlbGYuc210cAogCisgICAgZGVmIF9fZGVsX18oc2VsZik6CisgICAgICAgIHNlbGYuY2xvc2UoKQorCiAgICAgZGVmIHNlbmQoc2VsZiwgbGluZXMsIHRvX2FkZHJzKToKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgaWYgc2VsZi51c2VybmFtZSBvciBzZWxmLnBhc3N3b3JkOgotICAgICAgICAgICAgICAgIHNlbGYuc210cC5sb2dpbihzZWxmLnVzZXJuYW1lLCBzZWxmLnBhc3N3b3JkKQorICAgICAgICAgICAgICAgIGlmIG5vdCBzZWxmLmxvZ2dlZGluOgorICAgICAgICAgICAgICAgICAgICBzZWxmLnNtdHAubG9naW4oc2VsZi51c2VybmFtZSwgc2VsZi5wYXNzd29yZCkKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5sb2dnZWRpbiA9IFRydWUKICAgICAgICAgICAgIG1zZyA9ICcnLmpvaW4obGluZXMpCiAgICAgICAgICAgICAjIHR1cm4gY29tbWEtc2VwYXJhdGVkIGxpc3QgaW50byBQeXRob24gbGlzdCBpZiBuZWVkZWQuCiAgICAgICAgICAgICBpZiBpc19zdHJpbmcodG9fYWRkcnMpOgogICAgICAgICAgICAgICAgIHRvX2FkZHJzID0gW2VtYWlsIGZvciAobmFtZSwgZW1haWwpIGluIGdldGFkZHJlc3NlcyhbdG9fYWRkcnNdKV0KICAgICAgICAgICAgIHNlbGYuc210cC5zZW5kbWFpbChzZWxmLmVudmVsb3Blc2VuZGVyLCB0b19hZGRycywgbXNnKQorICAgICAgICBleGNlcHQgc29ja2V0LnRpbWVvdXQ6CisgICAgICAgICAgICBzZWxmLmVudmlyb25tZW50LmdldF9sb2dnZXIoKS5lcnJvcigKKyAgICAgICAgICAgICAgICAnKioqIEVycm9yIHNlbmRpbmcgZW1haWwgKioqXG4nCisgICAgICAgICAgICAgICAgJyoqKiBTTVRQIHNlcnZlciB0aW1lZCBvdXQgKHRpbWVvdXQgaXMgJXMpXG4nCisgICAgICAgICAgICAgICAgJSBzZWxmLnNtdHBzZXJ2ZXJ0aW1lb3V0KQogICAgICAgICBleGNlcHQgc210cGxpYi5TTVRQUmVzcG9uc2VFeGNlcHRpb246CiAgICAgICAgICAgICBlcnIgPSBzeXMuZXhjX2luZm8oKVsxXQogICAgICAgICAgICAgc2VsZi5lbnZpcm9ubWVudC5nZXRfbG9nZ2VyKCkuZXJyb3IoCkBAIC0yMTcxLDcgKzIyMjcsOCBAQAogCiAgICAgU0VQQVJBVE9SID0gJz0nICogNzUgKyAnXG4nCiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgZik6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGYsIGVudmlyb25tZW50PU5vbmUpOgorICAgICAgICBzdXBlcihPdXRwdXRNYWlsZXIsIHNlbGYpLl9faW5pdF9fKGVudmlyb25tZW50PWVudmlyb25tZW50KQogICAgICAgICBzZWxmLmYgPSBmCiAKICAgICBkZWYgc2VuZChzZWxmLCBsaW5lcywgdG9fYWRkcnMpOgpAQCAtMjM4Miw2ICsyNDM5LDcgQEAKICAgICAgICAgc2VsZi5odG1sX2luX2Zvb3RlciA9IEZhbHNlCiAgICAgICAgIHNlbGYuY29tbWl0QnJvd3NlVVJMID0gTm9uZQogICAgICAgICBzZWxmLm1heGNvbW1pdGVtYWlscyA9IDUwMAorICAgICAgICBzZWxmLmV4Y2x1ZGVtZXJnZXJldmlzaW9ucyA9IEZhbHNlCiAgICAgICAgIHNlbGYuZGlmZm9wdHMgPSBbJy0tc3RhdCcsICctLXN1bW1hcnknLCAnLS1maW5kLWNvcGllcy1oYXJkZXInXQogICAgICAgICBzZWxmLmdyYXBob3B0cyA9IFsnLS1vbmVsaW5lJywgJy0tZGVjb3JhdGUnXQogICAgICAgICBzZWxmLmxvZ29wdHMgPSBbXQpAQCAtMjYyMSw2ICsyNjc5LDggQEAKIAogICAgICAgICBzZWxmLmNvbW1pdEJyb3dzZVVSTCA9IGNvbmZpZy5nZXQoJ2NvbW1pdEJyb3dzZVVSTCcpCiAKKyAgICAgICAgc2VsZi5leGNsdWRlbWVyZ2VyZXZpc2lvbnMgPSBjb25maWcuZ2V0KCdleGNsdWRlTWVyZ2VSZXZpc2lvbnMnKQorCiAgICAgICAgIG1heGNvbW1pdGVtYWlscyA9IGNvbmZpZy5nZXQoJ21heGNvbW1pdGVtYWlscycpCiAgICAgICAgIGlmIG1heGNvbW1pdGVtYWlscyBpcyBub3QgTm9uZToKICAgICAgICAgICAgIHRyeToKQEAgLTMxMjksNyArMzE4OSw3IEBACiAgICAgICAgIHNlbGYuQ09NUFVURURfS0VZUyArPSBbJ3Byb2plY3RkZXNjJ10KIAogICAgIGRlZiBnZXRfcHJvamVjdGRlc2Moc2VsZik6Ci0gICAgICAgICIiIlJldHVybiBhIG9uZS1saW5lIGRlc2NyaXBpdGlvbiBvZiB0aGUgcHJvamVjdC4iIiIKKyAgICAgICAgIiIiUmV0dXJuIGEgb25lLWxpbmUgZGVzY3JpcHRpb24gb2YgdGhlIHByb2plY3QuIiIiCiAKICAgICAgICAgZ2l0X2RpciA9IGdldF9naXRfZGlyKCkKICAgICAgICAgdHJ5OgpAQCAtMzE1Miw3ICszMjEyLDEwIEBACiAgICAgICAgIHJldHVybiBzZWxmLm9zZW52LmdldCgnR0xfVVNFUicsICd1bmtub3duIHVzZXInKQogCiAKLWNsYXNzIEdpdG9saXRlRW52aXJvbm1lbnRMb3dQcmVjTWl4aW4oRW52aXJvbm1lbnQpOgorY2xhc3MgR2l0b2xpdGVFbnZpcm9ubWVudExvd1ByZWNNaXhpbigKKyAgICAgICAgQ29uZmlnRW52aXJvbm1lbnRNaXhpbiwKKyAgICAgICAgRW52aXJvbm1lbnQpOgorCiAgICAgZGVmIGdldF9yZXBvX3Nob3J0bmFtZShzZWxmKToKICAgICAgICAgIyBUaGUgZ2l0b2xpdGUgZW52aXJvbm1lbnQgdmFyaWFibGUgJEdMX1JFUE8gaXMgYSBwcmV0dHkgZ29vZAogICAgICAgICAjIHJlcG9fc2hvcnRuYW1lICh0aG91Z2ggaXQncyBwcm9iYWJseSBub3QgYXMgZ29vZCBhcyBhIHZhbHVlCkBAIC0zMTYyLDYgKzMyMjUsMTYgQEAKICAgICAgICAgICAgIHN1cGVyKEdpdG9saXRlRW52aXJvbm1lbnRMb3dQcmVjTWl4aW4sIHNlbGYpLmdldF9yZXBvX3Nob3J0bmFtZSgpCiAgICAgICAgICAgICApCiAKKyAgICBAc3RhdGljbWV0aG9kCisgICAgZGVmIF9jb21waWxlX3JlZ2V4KHJlX3RlbXBsYXRlKToKKyAgICAgICAgcmV0dXJuICgKKyAgICAgICAgICAgIHJlLmNvbXBpbGUocmVfdGVtcGxhdGUgJSB4KQorICAgICAgICAgICAgZm9yIHggaW4gKAorICAgICAgICAgICAgICAgIHInQkVHSU5ccytVU0VSXHMrRU1BSUxTJywKKyAgICAgICAgICAgICAgICByJyhbXlxzXSspXHMrKC4qKScsCisgICAgICAgICAgICAgICAgcidFTkRccytVU0VSXHMrRU1BSUxTJywKKyAgICAgICAgICAgICAgICApKQorCiAgICAgZGVmIGdldF9mcm9tYWRkcihzZWxmLCBjaGFuZ2U9Tm9uZSk6CiAgICAgICAgIEdMX1VTRVIgPSBzZWxmLm9zZW52LmdldCgnR0xfVVNFUicpCiAgICAgICAgIGlmIEdMX1VTRVIgaXMgbm90IE5vbmU6CkBAIC0zMTc0LDE4ICszMjQ3LDQyIEBACiAgICAgICAgICAgICBHTF9DT05GID0gc2VsZi5vc2Vudi5nZXQoCiAgICAgICAgICAgICAgICAgJ0dMX0NPTkYnLAogICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbihHTF9BRE1JTkRJUiwgJ2NvbmYnLCAnZ2l0b2xpdGUuY29uZicpKQorCisgICAgICAgICAgICBtYWlsYWRkcmVzc19tYXAgPSBzZWxmLmNvbmZpZy5nZXQoJ01haWxhZGRyZXNzTWFwJykKKyAgICAgICAgICAgICMgSWYgcmVsYXRpdmUsIGNvbnNpZGVyIHJlbGF0aXZlIHRvIEdMX0NPTkY6CisgICAgICAgICAgICBpZiBtYWlsYWRkcmVzc19tYXA6CisgICAgICAgICAgICAgICAgbWFpbGFkZHJlc3NfbWFwID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShHTF9DT05GKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFpbGFkZHJlc3NfbWFwKQorICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKG1haWxhZGRyZXNzX21hcCk6CisgICAgICAgICAgICAgICAgICAgIGYgPSBvcGVuKG1haWxhZGRyZXNzX21hcCwgJ3JVJykKKyAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgIyBMZWFkaW5nICcjJyBpcyBvcHRpb25hbAorICAgICAgICAgICAgICAgICAgICAgICAgcmVfYmVnaW4sIHJlX3VzZXIsIHJlX2VuZCA9IHNlbGYuX2NvbXBpbGVfcmVnZXgoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcideKD86XHMqIyk/XHMqJXNccyokJykKKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciBsIGluIGY6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbCA9IGwucnN0cmlwKCdcbicpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgcmVfYmVnaW4ubWF0Y2gobCkgb3IgcmVfZW5kLm1hdGNoKGwpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZSAgIyBJZ25vcmUgdGhlc2UgbGluZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtID0gcmVfdXNlci5tYXRjaChsKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIG06CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIG0uZ3JvdXAoMSkgPT0gR0xfVVNFUjoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBtLmdyb3VwKDIpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZSAgIyBOb3QgdGhpcyB1c2VyLCBidXQgbm90IGFuIGVycm9yCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UgQ29uZmlndXJhdGlvbkV4Y2VwdGlvbigKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlN5bnRheCBlcnJvciBpbiBtYWlsIGFkZHJlc3MgbWFwLlxuIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ2hlY2sgZmlsZSB7fS5cbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkxpbmU6IHt9Ii5mb3JtYXQobWFpbGFkZHJlc3NfbWFwLCBsKSkKKworICAgICAgICAgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgICAgICAgICAgZi5jbG9zZSgpCisKICAgICAgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKEdMX0NPTkYpOgogICAgICAgICAgICAgICAgIGYgPSBvcGVuKEdMX0NPTkYsICdyVScpCiAgICAgICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgICAgICBpbl91c2VyX2VtYWlsc19zZWN0aW9uID0gRmFsc2UKLSAgICAgICAgICAgICAgICAgICAgcmVfdGVtcGxhdGUgPSByJ15ccyojXHMqJXNccyokJwotICAgICAgICAgICAgICAgICAgICByZV9iZWdpbiwgcmVfdXNlciwgcmVfZW5kID0gKAotICAgICAgICAgICAgICAgICAgICAgICAgcmUuY29tcGlsZShyZV90ZW1wbGF0ZSAlIHgpCi0gICAgICAgICAgICAgICAgICAgICAgICBmb3IgeCBpbiAoCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcidCRUdJTlxzK1VTRVJccytFTUFJTFMnLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlLmVzY2FwZShHTF9VU0VSKSArIHInXHMrKC4qKScsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcidFTkRccytVU0VSXHMrRU1BSUxTJywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICApKQorICAgICAgICAgICAgICAgICAgICByZV9iZWdpbiwgcmVfdXNlciwgcmVfZW5kID0gc2VsZi5fY29tcGlsZV9yZWdleCgKKyAgICAgICAgICAgICAgICAgICAgICAgIHInXlxzKiNccyolc1xzKiQnKQogICAgICAgICAgICAgICAgICAgICBmb3IgbCBpbiBmOgogICAgICAgICAgICAgICAgICAgICAgICAgbCA9IGwucnN0cmlwKCdcbicpCiAgICAgICAgICAgICAgICAgICAgICAgICBpZiBub3QgaW5fdXNlcl9lbWFpbHNfc2VjdGlvbjoKQEAgLTMxOTUsOCArMzI5Miw4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBpZiByZV9lbmQubWF0Y2gobCk6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgICAgICAgICAgIG0gPSByZV91c2VyLm1hdGNoKGwpCi0gICAgICAgICAgICAgICAgICAgICAgICBpZiBtOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBtLmdyb3VwKDEpCisgICAgICAgICAgICAgICAgICAgICAgICBpZiBtIGFuZCBtLmdyb3VwKDEpID09IEdMX1VTRVI6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG0uZ3JvdXAoMikKICAgICAgICAgICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgICAgICAgICBmLmNsb3NlKCkKICAgICAgICAgcmV0dXJuIHN1cGVyKEdpdG9saXRlRW52aXJvbm1lbnRMb3dQcmVjTWl4aW4sIHNlbGYpLmdldF9mcm9tYWRkcihjaGFuZ2UpCkBAIC0zMjI4LDcgKzMzMjUsNyBAQAogICAgICAgICBzZWxmLl9fcmVwbyA9IHJlcG8KIAogICAgIGRlZiBnZXRfcHVzaGVyKHNlbGYpOgotICAgICAgICByZXR1cm4gcmUubWF0Y2goJyguKj8pXHMqPCcsIHNlbGYuX191c2VyKS5ncm91cCgxKQorICAgICAgICByZXR1cm4gcmUubWF0Y2gocicoLio/KVxzKjwnLCBzZWxmLl9fdXNlcikuZ3JvdXAoMSkKIAogICAgIGRlZiBnZXRfcHVzaGVyX2VtYWlsKHNlbGYpOgogICAgICAgICByZXR1cm4gc2VsZi5fX3VzZXIKQEAgLTMyNjIsNyArMzM1OSw3IEBACiAgICAgICAgICAgICBpZiBzZWxmLl9fc3VibWl0dGVyLmZpbmQoJzwnKSAhPSAtMToKICAgICAgICAgICAgICAgICAjIFN1Ym1pdHRlciBoYXMgYSBjb25maWd1cmVkIGVtYWlsLCB3ZSB0cmFuc2Zvcm1lZAogICAgICAgICAgICAgICAgICMgX19zdWJtaXR0ZXIgaW50byBhbiBSRkMgMjgyMiBzdHJpbmcgYWxyZWFkeS4KLSAgICAgICAgICAgICAgICByZXR1cm4gcmUubWF0Y2goJyguKj8pXHMqPCcsIHNlbGYuX19zdWJtaXR0ZXIpLmdyb3VwKDEpCisgICAgICAgICAgICAgICAgcmV0dXJuIHJlLm1hdGNoKHInKC4qPylccyo8Jywgc2VsZi5fX3N1Ym1pdHRlcikuZ3JvdXAoMSkKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgIyBTdWJtaXR0ZXIgaGFzIG5vIGNvbmZpZ3VyZWQgZW1haWwsIGl0J3MganVzdCBoaXMgbmFtZS4KICAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5fX3N1Ym1pdHRlcgpAQCAtMzYxNSw2ICszNzEyLDkgQEAKIAogICAgICAgICAgICAgZm9yIChudW0sIHNoYTEpIGluIGVudW1lcmF0ZShzaGExcyk6CiAgICAgICAgICAgICAgICAgcmV2ID0gUmV2aXNpb24oY2hhbmdlLCBHaXRPYmplY3Qoc2hhMSksIG51bT1udW0gKyAxLCB0b3Q9bGVuKHNoYTFzKSkKKyAgICAgICAgICAgICAgICBpZiBsZW4ocmV2LnBhcmVudHMpID4gMSBhbmQgY2hhbmdlLmVudmlyb25tZW50LmV4Y2x1ZGVtZXJnZXJldmlzaW9uczoKKyAgICAgICAgICAgICAgICAgICAgIyBza2lwcGluZyBhIG1lcmdlIGNvbW1pdAorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICAgICAgICAgIGlmIG5vdCByZXYucmVjaXBpZW50cyBhbmQgcmV2LmNjX3JlY2lwaWVudHM6CiAgICAgICAgICAgICAgICAgICAgIGNoYW5nZS5lbnZpcm9ubWVudC5sb2dfbXNnKCcqKiogUmVwbGFjaW5nIENjOiB3aXRoIFRvOicpCiAgICAgICAgICAgICAgICAgICAgIHJldi5yZWNpcGllbnRzID0gcmV2LmNjX3JlY2lwaWVudHMKQEAgLTM2NjQsMTEgKzM3NjQsMTQgQEAKICAgICAgICAgY2hhbmdlcy5hcHBlbmQoCiAgICAgICAgICAgICBSZWZlcmVuY2VDaGFuZ2UuY3JlYXRlKGVudmlyb25tZW50LCBvbGRyZXYsIG5ld3JldiwgcmVmbmFtZSkKICAgICAgICAgICAgICkKLSAgICBpZiBjaGFuZ2VzOgotICAgICAgICBwdXNoID0gUHVzaChlbnZpcm9ubWVudCwgY2hhbmdlcykKKyAgICBpZiBub3QgY2hhbmdlczoKKyAgICAgICAgbWFpbGVyLmNsb3NlKCkKKyAgICAgICAgcmV0dXJuCisgICAgcHVzaCA9IFB1c2goZW52aXJvbm1lbnQsIGNoYW5nZXMpCisgICAgdHJ5OgogICAgICAgICBwdXNoLnNlbmRfZW1haWxzKG1haWxlciwgYm9keV9maWx0ZXI9ZW52aXJvbm1lbnQuZmlsdGVyX2JvZHkpCi0gICAgaWYgaGFzYXR0cihtYWlsZXIsICdfX2RlbF9fJyk6Ci0gICAgICAgIG1haWxlci5fX2RlbF9fKCkKKyAgICBmaW5hbGx5OgorICAgICAgICBtYWlsZXIuY2xvc2UoKQogCiAKIGRlZiBydW5fYXNfdXBkYXRlX2hvb2soZW52aXJvbm1lbnQsIG1haWxlciwgcmVmbmFtZSwgb2xkcmV2LCBuZXdyZXYsIGZvcmNlX3NlbmQ9RmFsc2UpOgpAQCAtMzY4NywxMCArMzc5MCwxNCBAQAogICAgICAgICAgICAgcmVmbmFtZSwKICAgICAgICAgICAgICksCiAgICAgICAgIF0KKyAgICBpZiBub3QgY2hhbmdlczoKKyAgICAgICAgbWFpbGVyLmNsb3NlKCkKKyAgICAgICAgcmV0dXJuCiAgICAgcHVzaCA9IFB1c2goZW52aXJvbm1lbnQsIGNoYW5nZXMsIGZvcmNlX3NlbmQpCi0gICAgcHVzaC5zZW5kX2VtYWlscyhtYWlsZXIsIGJvZHlfZmlsdGVyPWVudmlyb25tZW50LmZpbHRlcl9ib2R5KQotICAgIGlmIGhhc2F0dHIobWFpbGVyLCAnX19kZWxfXycpOgotICAgICAgICBtYWlsZXIuX19kZWxfXygpCisgICAgdHJ5OgorICAgICAgICBwdXNoLnNlbmRfZW1haWxzKG1haWxlciwgYm9keV9maWx0ZXI9ZW52aXJvbm1lbnQuZmlsdGVyX2JvZHkpCisgICAgZmluYWxseToKKyAgICAgICAgbWFpbGVyLmNsb3NlKCkKIAogCiBkZWYgY2hlY2tfcmVmX2ZpbHRlcihlbnZpcm9ubWVudCk6CkBAIC0zODYwLDcgKzM5NjcsNyBAQAogICAgICAgICBsb3dfcHJlY19taXhpbiA9IGtub3duX2VudlsnbG93cHJlYyddCiAgICAgICAgIGVudmlyb25tZW50X21peGlucy5hcHBlbmQobG93X3ByZWNfbWl4aW4pCiAgICAgZW52aXJvbm1lbnRfbWl4aW5zLmFwcGVuZChFbnZpcm9ubWVudCkKLSAgICBrbGFzc19uYW1lID0gZW52X25hbWUuY2FwaXRhbGl6ZSgpICsgJ0Vudmlyb25lbWVudCcKKyAgICBrbGFzc19uYW1lID0gZW52X25hbWUuY2FwaXRhbGl6ZSgpICsgJ0Vudmlyb25tZW50JwogICAgIGVudmlyb25tZW50X2tsYXNzID0gdHlwZSgKICAgICAgICAga2xhc3NfbmFtZSwKICAgICAgICAgdHVwbGUoZW52aXJvbm1lbnRfbWl4aW5zKSwKQEAgLTQwNTcsMjEgKzQxNjQsMjEgQEAKICAgICAgICAgICAgICAgICBlbnZpcm9ubWVudCwgJ2dpdF9tdWx0aW1haWwuZXJyb3InLCBlbnZpcm9ubWVudC5lcnJvcl9sb2dfZmlsZSwgbG9nZ2luZy5FUlJPUikKICAgICAgICAgICAgIHNlbGYubG9nZ2Vycy5hcHBlbmQoZXJyb3JfbG9nX2ZpbGUpCiAKLSAgICBkZWYgaW5mbyhzZWxmLCBtc2cpOgorICAgIGRlZiBpbmZvKHNlbGYsIG1zZywgKmFyZ3MsICoqa3dhcmdzKToKICAgICAgICAgZm9yIGwgaW4gc2VsZi5sb2dnZXJzOgotICAgICAgICAgICAgbC5pbmZvKG1zZykKKyAgICAgICAgICAgIGwuaW5mbyhtc2csICphcmdzLCAqKmt3YXJncykKIAotICAgIGRlZiBkZWJ1ZyhzZWxmLCBtc2cpOgorICAgIGRlZiBkZWJ1ZyhzZWxmLCBtc2csICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgIGZvciBsIGluIHNlbGYubG9nZ2VyczoKLSAgICAgICAgICAgIGwuZGVidWcobXNnKQorICAgICAgICAgICAgbC5kZWJ1Zyhtc2csICphcmdzLCAqKmt3YXJncykKIAotICAgIGRlZiB3YXJuaW5nKHNlbGYsIG1zZyk6CisgICAgZGVmIHdhcm5pbmcoc2VsZiwgbXNnLCAqYXJncywgKiprd2FyZ3MpOgogICAgICAgICBmb3IgbCBpbiBzZWxmLmxvZ2dlcnM6Ci0gICAgICAgICAgICBsLndhcm5pbmcobXNnKQorICAgICAgICAgICAgbC53YXJuaW5nKG1zZywgKmFyZ3MsICoqa3dhcmdzKQogCi0gICAgZGVmIGVycm9yKHNlbGYsIG1zZyk6CisgICAgZGVmIGVycm9yKHNlbGYsIG1zZywgKmFyZ3MsICoqa3dhcmdzKToKICAgICAgICAgZm9yIGwgaW4gc2VsZi5sb2dnZXJzOgotICAgICAgICAgICAgbC5lcnJvcihtc2cpCisgICAgICAgICAgICBsLmVycm9yKG1zZywgKmFyZ3MsICoqa3dhcmdzKQogCiAKIGRlZiBtYWluKGFyZ3MpOgpAQCAtNDE4OSw3ICs0Mjk2LDcgQEAKICAgICAgICAgICAgIHNob3dfZW52KGVudmlyb25tZW50LCBzeXMuc3RkZXJyKQogCiAgICAgICAgIGlmIG9wdGlvbnMuc3Rkb3V0IG9yIGVudmlyb25tZW50LnN0ZG91dDoKLSAgICAgICAgICAgIG1haWxlciA9IE91dHB1dE1haWxlcihzeXMuc3Rkb3V0KQorICAgICAgICAgICAgbWFpbGVyID0gT3V0cHV0TWFpbGVyKHN5cy5zdGRvdXQsIGVudmlyb25tZW50KQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgbWFpbGVyID0gY2hvb3NlX21haWxlcihjb25maWcsIGVudmlyb25tZW50KQogCkBAIC00MjM0LDUgKzQzNDEsNiBAQAogICAgICAgICAgICAgc3lzLnN0ZGVyci53cml0ZShtc2cpCiAgICAgICAgIHN5cy5leGl0KDEpCiAKKwogaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKICAgICBtYWluKHN5cy5hcmd2WzE6XSkKZGlmZiAtLWdpdCBhL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL21pZ3JhdGUtbWFpbGhvb2stY29uZmlnIGIvY29udHJpYi9ob29rcy9tdWx0aW1haWwvbWlncmF0ZS1tYWlsaG9vay1jb25maWcKaW5kZXggOTkyNjU3Yi4uMjQxYmEyMiAxMDA3NTUKLS0tIGEvY29udHJpYi9ob29rcy9tdWx0aW1haWwvbWlncmF0ZS1tYWlsaG9vay1jb25maWcKKysrIGIvY29udHJpYi9ob29rcy9tdWx0aW1haWwvbWlncmF0ZS1tYWlsaG9vay1jb25maWcKQEAgLTExMCwxMSArMTEwLDEyIEBACiAKICAgICB0cnk6CiAgICAgICAgIHJlYWRfb3V0cHV0KAotICAgICAgICAgICAgWydnaXQnLCAnY29uZmlnJ10KLSAgICAgICAgICAgICsgbG9jYWxfb3B0aW9uCi0gICAgICAgICAgICArIFsnLS1nZXQtcmVnZXhwJywgJ14lc1wuJyAlIChzZWN0aW9uLCldCisgICAgICAgICAgICBbJ2dpdCcsICdjb25maWcnXSArCisgICAgICAgICAgICBsb2NhbF9vcHRpb24gKworICAgICAgICAgICAgWyctLWdldC1yZWdleHAnLCAnXiVzXC4nICUgKHNlY3Rpb24sKV0KICAgICAgICAgICAgICkKLSAgICBleGNlcHQgQ29tbWFuZEVycm9yLCBlOgorICAgIGV4Y2VwdCBDb21tYW5kRXJyb3I6CisgICAgICAgIHQsIGUsIHRyYWNlYmFjayA9IHN5cy5leGNfaW5mbygpCiAgICAgICAgIGlmIGUucmV0Y29kZSA9PSAxOgogICAgICAgICAgICAgIyBUaGlzIG1lYW5zIHRoYXQgbm8gc2V0dGluZ3Mgd2VyZSBmb3VuZC4KICAgICAgICAgICAgIHJldHVybiBUcnVlCkBAIC0xODgsNyArMTg5LDkgQEAKICAgICAgICAgICAgIHN5cy5zdGRlcnIud3JpdGUoCiAgICAgICAgICAgICAgICAgJy4uLmNvcHlpbmcgIiVzLiVzIiB0byAiJXMuJXMiXG4nICUgKG9sZC5zZWN0aW9uLCBuYW1lLCBuZXcuc2VjdGlvbiwgbmFtZSkKICAgICAgICAgICAgICAgICApCi0gICAgICAgICAgICBuZXcuc2V0X3JlY2lwaWVudHMobmFtZSwgb2xkLmdldF9yZWNpcGllbnRzKG5hbWUpKQorICAgICAgICAgICAgb2xkX3JlY2lwaWVudHMgPSBvbGQuZ2V0X2FsbChuYW1lLCBkZWZhdWx0PU5vbmUpCisgICAgICAgICAgICBvbGRfcmVjaXBpZW50cyA9ICcsICcuam9pbihvLnN0cmlwKCkgZm9yIG8gaW4gb2xkX3JlY2lwaWVudHMpCisgICAgICAgICAgICBuZXcuc2V0X3JlY2lwaWVudHMobmFtZSwgb2xkX3JlY2lwaWVudHMpCiAKICAgICBpZiBzdHJpY3Q6CiAgICAgICAgIHN5cy5zdGRlcnIud3JpdGUoCmRpZmYgLS1naXQgYS9jb250cmliL2hvb2tzL211bHRpbWFpbC9wb3N0LXJlY2VpdmUuZXhhbXBsZSBiL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL3Bvc3QtcmVjZWl2ZS5leGFtcGxlCmluZGV4IDFlYTExM2QuLjBmOThjNWEgMTAwNzU1Ci0tLSBhL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL3Bvc3QtcmVjZWl2ZS5leGFtcGxlCisrKyBiL2NvbnRyaWIvaG9va3MvbXVsdGltYWlsL3Bvc3QtcmVjZWl2ZS5leGFtcGxlCkBAIC0zMCw3ICszMCw2IEBACiAiIiIKIAogaW1wb3J0IHN5cwotaW1wb3J0IG9zCiAKICMgSWYgbmVjZXNzYXJ5LCBhZGQgdGhlIHBhdGggdG8gdGhlIGRpcmVjdG9yeSBjb250YWluaW5nCiAjIGdpdF9tdWx0aW1haWwucHkgdG8gdGhlIFB5dGhvbiBwYXRoIGFzIGZvbGxvd3MuICAoVGhpcyBpcyBub3QKQEAgLTU3LDcgKzU2LDcgQEAKIAogIyBTZXQgc29tZSBHaXQgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMuIEVxdWl2YWxlbnQgdG8gcGFzc2luZyB2YXI9dmFsCiAjIHRvICJnaXQgLWMgdmFyPXZhbCIgZWFjaCB0aW1lIGdpdCBpcyBjYWxsZWQsIG9yIHRvIGFkZGluZyB0aGUKLSMgY29uZmlndXJhdGlvbiBpbiAuZ2l0L2NvbmZpZyAobXVzdCBjb21lIGJlZm9yZSBpbnN0YW5jaWF0aW5nIHRoZQorIyBjb25maWd1cmF0aW9uIGluIC5naXQvY29uZmlnIChtdXN0IGNvbWUgYmVmb3JlIGluc3RhbnRpYXRpbmcgdGhlCiAjIGVudmlyb25tZW50KSA6CiAjZ2l0X211bHRpbWFpbC5Db25maWcuYWRkX2NvbmZpZ19wYXJhbWV0ZXJzKCdtdWx0aW1haWxob29rLmNvbW1pdEVtYWlsRm9ybWF0PWh0bWwnKQogI2dpdF9tdWx0aW1haWwuQ29uZmlnLmFkZF9jb25maWdfcGFyYW1ldGVycygoJ3VzZXIubmFtZT1mb28nLCAndXNlci5lbWFpbD1mb29AZXhhbXBsZS5jb20nKSkKQEAgLTg2LDYgKzg1LDcgQEAKIAogIyBVc2UgUHl0aG9uJ3Mgc210cGxpYiB0byBzZW5kIGVtYWlscy4gIEJvdGggYXJndW1lbnRzIGFyZSByZXF1aXJlZC4KICNtYWlsZXIgPSBnaXRfbXVsdGltYWlsLlNNVFBNYWlsZXIoCisjICAgIGVudmlyb25tZW50PWVudmlyb25tZW50LAogIyAgICBlbnZlbG9wZXNlbmRlcj0nZ2l0LXJlcG9AZXhhbXBsZS5jb20nLAogIyAgICAjIFRoZSBzbXRwc2VydmVyIGFyZ3VtZW50IGNhbiBhbHNvIGluY2x1ZGUgYSBwb3J0IG51bWJlcjsgZS5nLiwKICMgICAgIyAgICAgc210cHNlcnZlcj0nbWFpbC5leGFtcGxlLmNvbToyNScKZGlmZiAtLWdpdCBhL2NvbnRyaWIvaG9va3MvcG9zdC1yZWNlaXZlLWVtYWlsIGIvY29udHJpYi9ob29rcy9wb3N0LXJlY2VpdmUtZW1haWwKaW5kZXggODc0N2I4NC4uZmY1NjVlYiAxMDA3NTUKLS0tIGEvY29udHJpYi9ob29rcy9wb3N0LXJlY2VpdmUtZW1haWwKKysrIGIvY29udHJpYi9ob29rcy9wb3N0LXJlY2VpdmUtZW1haWwKQEAgLTMyOSw3ICszMjksNyBAQAogCSMKIAkjICBnaXQgcmV2LXBhcnNlIC0tbm90IC0tYWxsIHwgZ3JlcCAtdiAkKGdpdCByZXYtcGFyc2UgJHJlZm5hbWUpCiAJIwotCSMgR2V0J3MgdXMgdG8gc29tZXRoaW5nIHByZXR0eSBzYWZlIChhcGFydCBmcm9tIHRoZSBzbWFsbCB0aW1lCisJIyBHZXRzIHVzIHRvIHNvbWV0aGluZyBwcmV0dHkgc2FmZSAoYXBhcnQgZnJvbSB0aGUgc21hbGwgdGltZQogCSMgYmV0d2VlbiByZWZuYW1lIGJlaW5nIHJlYWQsIGFuZCBnaXQgcmV2LXBhcnNlIHJ1bm5pbmcgLSBmb3IgdGhhdCwKIAkjIEkgZ2l2ZSB1cCkKIAkjCmRpZmYgLS1naXQgYS9jb250cmliL2hvb2tzL3VwZGF0ZS1wYXJhbm9pZCBiL2NvbnRyaWIvaG9va3MvdXBkYXRlLXBhcmFub2lkCmluZGV4IGQxOGIzMTcuLjAwOTJkNjcgMTAwNzU1Ci0tLSBhL2NvbnRyaWIvaG9va3MvdXBkYXRlLXBhcmFub2lkCisrKyBiL2NvbnRyaWIvaG9va3MvdXBkYXRlLXBhcmFub2lkCkBAIC00OSw3ICs0OSw3IEBACiBSZXBvc2l0b3J5IHNlY3Rpb25zIGFyZSBtYXRjaGVkIG9uIHRoZSBiYXNlbmFtZSBvZiB0aGUgcmVwb3NpdG9yeQogKGFmdGVyIHJlbW92aW5nIHRoZSAuZ2l0IHN1ZmZpeCkuCiAKLVRoZSBvcGNvZGUgYWJicmV2YXRpb25zIGFyZToKK1RoZSBvcGNvZGUgYWJicmV2aWF0aW9ucyBhcmU6CiAKICAgQzogY3JlYXRlIG5ldyByZWYKICAgRDogZGVsZXRlIGV4aXN0aW5nIHJlZgpkaWZmIC0tZ2l0IGEvY29udHJpYi9tdy10by1naXQvLnBlcmxjcml0aWNyYyBiL2NvbnRyaWIvbXctdG8tZ2l0Ly5wZXJsY3JpdGljcmMKaW5kZXggMTU4OTU4ZC4uYjczMzMyNiAxMDA2NDQKLS0tIGEvY29udHJpYi9tdy10by1naXQvLnBlcmxjcml0aWNyYworKysgYi9jb250cmliL213LXRvLWdpdC8ucGVybGNyaXRpY3JjCkBAIC0xNCw3ICsxNCw3IEBACiAKICMgVGhpcyBydWxlIHN0YXRlcyB0aGF0IGVhY2ggc3lzdGVtIGNhbGwgc2hvdWxkIGhhdmUgaXRzIHJldHVybiB2YWx1ZSBjaGVja2VkCiAjIFRoZSBwcm9ibGVtIGlzIHRoYXQgaXQgaW5jbHVkZXMgdGhlIHByaW50IGNhbGwuIENoZWNraW5nIGV2ZXJ5IHByaW50IGNhbGwncwotIyByZXR1cm4gdmFsdWUgd291bGQgYmUgaGFybWZ1bCB0byB0aGUgY29kZSByZWFkYWJpbHR5LgorIyByZXR1cm4gdmFsdWUgd291bGQgYmUgaGFybWZ1bCB0byB0aGUgY29kZSByZWFkYWJpbGl0eS4KICMgVGhpcyBjb25maWd1cmF0aW9uIGtlZXBzIGFsbCBkZWZhdWx0IGZ1bmN0aW9uIGJ1dCBwcmludC4KIFtJbnB1dE91dHB1dDo6UmVxdWlyZUNoZWNrZWRTeXNjYWxsc10KIGZ1bmN0aW9ucyA9IG9wZW4gc2F5IGNsb3NlCmRpZmYgLS1naXQgYS9jb250cmliL213LXRvLWdpdC9naXQtcmVtb3RlLW1lZGlhd2lraS5wZXJsIGIvY29udHJpYi9tdy10by1naXQvZ2l0LXJlbW90ZS1tZWRpYXdpa2kucGVybAppbmRleCBhZjljYmM5Li5kOGZmMmU2IDEwMDc1NQotLS0gYS9jb250cmliL213LXRvLWdpdC9naXQtcmVtb3RlLW1lZGlhd2lraS5wZXJsCisrKyBiL2NvbnRyaWIvbXctdG8tZ2l0L2dpdC1yZW1vdGUtbWVkaWF3aWtpLnBlcmwKQEAgLTc5LDcgKzc5LDcgQEAKICRleHBvcnRfbWVkaWEgPSAhKCRleHBvcnRfbWVkaWEgZXEgJ2ZhbHNlJyk7CiAKIG15ICR3aWtpX2xvZ2luID0gcnVuX2dpdCgiY29uZmlnIC0tZ2V0IHJlbW90ZS4ke3JlbW90ZW5hbWV9Lm13TG9naW4iKTsKLSMgTm90ZTogbXdQYXNzd29yZCBpcyBkaXNjb3VycmFnZWQuIFVzZSB0aGUgY3JlZGVudGlhbCBzeXN0ZW0gaW5zdGVhZC4KKyMgTm90ZTogbXdQYXNzd29yZCBpcyBkaXNjb3VyYWdlZC4gVXNlIHRoZSBjcmVkZW50aWFsIHN5c3RlbSBpbnN0ZWFkLgogbXkgJHdpa2lfcGFzc3dkID0gcnVuX2dpdCgiY29uZmlnIC0tZ2V0IHJlbW90ZS4ke3JlbW90ZW5hbWV9Lm13UGFzc3dvcmQiKTsKIG15ICR3aWtpX2RvbWFpbiA9IHJ1bl9naXQoImNvbmZpZyAtLWdldCByZW1vdGUuJHtyZW1vdGVuYW1lfS5td0RvbWFpbiIpOwogY2hvbXAoJHdpa2lfbG9naW4pOwpkaWZmIC0tZ2l0IGEvY29udHJpYi9tdy10by1naXQvdC9pbnN0YWxsLXdpa2kvZGJfaW5zdGFsbC5waHAgYi9jb250cmliL213LXRvLWdpdC90L2luc3RhbGwtd2lraS9kYl9pbnN0YWxsLnBocAppbmRleCAwZjNmNGUwLi5iMDMzODQ5IDEwMDY0NAotLS0gYS9jb250cmliL213LXRvLWdpdC90L2luc3RhbGwtd2lraS9kYl9pbnN0YWxsLnBocAorKysgYi9jb250cmliL213LXRvLWdpdC90L2luc3RhbGwtd2lraS9kYl9pbnN0YWxsLnBocApAQCAtMjQsNyArMjQsNyBAQAogJGRiX2RpciA9IHVybGVuY29kZSgkdG1wKTsKICR0bXBfY29va2llID0gdGVtcG5hbSgkdG1wLCAiQ09PS0lFXyIpOwogLyoKLSAqIEZldGNocyBhIHBhZ2Ugd2l0aCBjVVJMLgorICogRmV0Y2hlcyBhIHBhZ2Ugd2l0aCBjVVJMLgogICovCiBmdW5jdGlvbiBnZXQoJHBhZ2VfbmFtZSA9ICIiKSB7CiAJJGN1cmwgPSBjdXJsX2luaXQoKTsKZGlmZiAtLWdpdCBhL2NvbnRyaWIvbXctdG8tZ2l0L3QvdDkzNjAtbXctdG8tZ2l0LWNsb25lLnNoIGIvY29udHJpYi9tdy10by1naXQvdC90OTM2MC1tdy10by1naXQtY2xvbmUuc2gKaW5kZXggY2ZiZmU3ZC4uOTEwNjgzMyAxMDA3NTUKLS0tIGEvY29udHJpYi9tdy10by1naXQvdC90OTM2MC1tdy10by1naXQtY2xvbmUuc2gKKysrIGIvY29udHJpYi9tdy10by1naXQvdC90OTM2MC1tdy10by1naXQtY2xvbmUuc2gKQEAgLTE0Myw3ICsxNDMsNyBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnR2l0IGNsb25lIHdvcmtzIHdpdGggbXVsdGlwbGUgc3BlY2lmaWMgcGFnZSBjbG9uZWQgJyAnCiAJd2lraV9yZXNldCAmJgogCXdpa2lfZWRpdHBhZ2UgZm9vICJJIHdpbGwgYmUgdGhlcmUiIGZhbHNlICYmCi0Jd2lraV9lZGl0cGFnZSBiYXIgIkkgd2lsbCBub3QgZGlzYXBlYXIiIGZhbHNlICYmCisJd2lraV9lZGl0cGFnZSBiYXIgIkkgd2lsbCBub3QgZGlzYXBwZWFyIiBmYWxzZSAmJgogCXdpa2lfZWRpdHBhZ2UgbmFtbmFtICJJIGJlIGVyYXNlZCIgZmFsc2UgJiYKIAl3aWtpX2VkaXRwYWdlIG55YW5jYXQgIm55YW4gbnlhbiBueWFuIHlvdSB3aWxsIG5vdCBlcmFzZSBtZSIgZmFsc2UgJiYKIAl3aWtpX2RlbGV0ZV9wYWdlIG5hbW5hbSAmJgpkaWZmIC0tZ2l0IGEvY29udHJpYi9tdy10by1naXQvdC90ZXN0LWdpdG13LWxpYi5zaCBiL2NvbnRyaWIvbXctdG8tZ2l0L3QvdGVzdC1naXRtdy1saWIuc2gKaW5kZXggNjU0NjI5NC4uMzk0OGEwMCAxMDA3NTUKLS0tIGEvY29udHJpYi9tdy10by1naXQvdC90ZXN0LWdpdG13LWxpYi5zaAorKysgYi9jb250cmliL213LXRvLWdpdC90L3Rlc3QtZ2l0bXctbGliLnNoCkBAIC0yNzksNyArMjc5LDcgQEAKIAkiJExJR0hUVFBEX0RJUiIvbGlnaHR0cGQgLWYgIiRXRUIiL2xpZ2h0dHBkLmNvbmYKIAogCWlmIHRlc3QgJD8gLW5lIDAgOyB0aGVuCi0JCWVjaG8gIkNvdWxkIG5vdCBleGVjdXRlIGh0dHAgZGVhbW9uIGxpZ2h0dHBkIgorCQllY2hvICJDb3VsZCBub3QgZXhlY3V0ZSBodHRwIGRhZW1vbiBsaWdodHRwZCIKIAkJZXhpdCAxCiAJZmkKIH0KZGlmZiAtLWdpdCBhL2NvbnRyaWIvc3VidHJlZS9naXQtc3VidHJlZS5zaCBiL2NvbnRyaWIvc3VidHJlZS9naXQtc3VidHJlZS5zaAppbmRleCAxNDcyMDFkLi44NjhlMThiIDEwMDc1NQotLS0gYS9jb250cmliL3N1YnRyZWUvZ2l0LXN1YnRyZWUuc2gKKysrIGIvY29udHJpYi9zdWJ0cmVlL2dpdC1zdWJ0cmVlLnNoCkBAIC0xNCw3ICsxNCw3IEBACiBnaXQgc3VidHJlZSBtZXJnZSAtLXByZWZpeD08cHJlZml4PiA8Y29tbWl0PgogZ2l0IHN1YnRyZWUgcHVsbCAgLS1wcmVmaXg9PHByZWZpeD4gPHJlcG9zaXRvcnk+IDxyZWY+CiBnaXQgc3VidHJlZSBwdXNoICAtLXByZWZpeD08cHJlZml4PiA8cmVwb3NpdG9yeT4gPHJlZj4KLWdpdCBzdWJ0cmVlIHNwbGl0IC0tcHJlZml4PTxwcmVmaXg+IDxjb21taXQuLi4+CitnaXQgc3VidHJlZSBzcGxpdCAtLXByZWZpeD08cHJlZml4PiA8Y29tbWl0PgogLS0KIGgsaGVscCAgICAgICAgc2hvdyB0aGUgaGVscAogcSAgICAgICAgICAgICBxdWlldApAQCAtNzcsNiArNzcsMTIgQEAKIAlmaQogfQogCitlbnN1cmVfc2luZ2xlX3JldiAoKSB7CisJaWYgdGVzdCAkIyAtbmUgMQorCXRoZW4KKwkJZGllICJZb3UgbXVzdCBwcm92aWRlIGV4YWN0bHkgb25lIHJldmlzaW9uLiAgR290OiAnJEAnIgorCWZpCit9CiAKIHdoaWxlIHRlc3QgJCMgLWd0IDAKIGRvCkBAIC0xODUsNiArMTkxLDcgQEAKIHRoZW4KIAlyZXZzPSQoZ2l0IHJldi1wYXJzZSAkZGVmYXVsdCAtLXJldnMtb25seSAiJEAiKSB8fCBleGl0ICQ/CiAJZGlycz0kKGdpdCByZXYtcGFyc2UgLS1uby1yZXZzIC0tbm8tZmxhZ3MgIiRAIikgfHwgZXhpdCAkPworCWVuc3VyZV9zaW5nbGVfcmV2ICRyZXZzCiAJaWYgdGVzdCAtbiAiJGRpcnMiCiAJdGhlbgogCQlkaWUgIkVycm9yOiBVc2UgLS1wcmVmaXggaW5zdGVhZCBvZiBiYXJlIGZpbGVuYW1lcy4iCkBAIC03MTYsOSArNzIzLDggQEAKIH0KIAogY21kX2FkZF9jb21taXQgKCkgewotCXJldnM9JChnaXQgcmV2LXBhcnNlICRkZWZhdWx0IC0tcmV2cy1vbmx5ICIkQCIpIHx8IGV4aXQgJD8KLQlzZXQgLS0gJHJldnMKLQlyZXY9IiQxIgorCXJldj0kKGdpdCByZXYtcGFyc2UgJGRlZmF1bHQgLS1yZXZzLW9ubHkgIiRAIikgfHwgZXhpdCAkPworCWVuc3VyZV9zaW5nbGVfcmV2ICRyZXYKIAogCWRlYnVnICJBZGRpbmcgJGRpciBhcyAnJHJldicuLi4iCiAJZ2l0IHJlYWQtdHJlZSAtLXByZWZpeD0iJGRpciIgJHJldiB8fCBleGl0ICQ/CkBAIC04MTcsMTYgKzgyMywxMCBAQAogfQogCiBjbWRfbWVyZ2UgKCkgewotCXJldnM9JChnaXQgcmV2LXBhcnNlICRkZWZhdWx0IC0tcmV2cy1vbmx5ICIkQCIpIHx8IGV4aXQgJD8KKwlyZXY9JChnaXQgcmV2LXBhcnNlICRkZWZhdWx0IC0tcmV2cy1vbmx5ICIkQCIpIHx8IGV4aXQgJD8KKwllbnN1cmVfc2luZ2xlX3JldiAkcmV2CiAJZW5zdXJlX2NsZWFuCiAKLQlzZXQgLS0gJHJldnMKLQlpZiB0ZXN0ICQjIC1uZSAxCi0JdGhlbgotCQlkaWUgIllvdSBtdXN0IHByb3ZpZGUgZXhhY3RseSBvbmUgcmV2aXNpb24uICBHb3Q6ICckcmV2cyciCi0JZmkKLQlyZXY9IiQxIgotCiAJaWYgdGVzdCAtbiAiJHNxdWFzaCIKIAl0aGVuCiAJCWZpcnN0X3NwbGl0PSIkKGZpbmRfbGF0ZXN0X3NxdWFzaCAiJGRpciIpIgpkaWZmIC0tZ2l0IGEvY29udHJpYi9zdm4tZmUvc3ZuLWZlLnR4dCBiL2NvbnRyaWIvc3ZuLWZlL3N2bi1mZS50eHQKaW5kZXggYTM0MjVmNC4uMTkzMzNmYyAxMDA2NDQKLS0tIGEvY29udHJpYi9zdm4tZmUvc3ZuLWZlLnR4dAorKysgYi9jb250cmliL3N2bi1mZS9zdm4tZmUudHh0CkBAIC01Niw3ICs1Niw3IEBACiAKIFRoZSByZXN1bHRpbmcgcmVwb3NpdG9yeSB3aWxsIGdlbmVyYWxseSByZXF1aXJlIGZ1cnRoZXIgcHJvY2Vzc2luZwogdG8gcHV0IGVhY2ggcHJvamVjdCBpbiBpdHMgb3duIHJlcG9zaXRvcnkgYW5kIHRvIHNlcGFyYXRlIHRoZSBoaXN0b3J5Ci1vZiBlYWNoIGJyYW5jaC4gIFRoZSAnZ2l0IGZpbHRlci1icmFuY2ggLS1zdWJkaXJlY3RvcnktZmlsdGVyJyBjb21tYW5kCitvZiBlYWNoIGJyYW5jaC4gIFRoZSAnZ2l0IGZpbHRlci1yZXBvIC0tc3ViZGlyZWN0b3J5LWZpbHRlcicgY29tbWFuZAogbWF5IGJlIHVzZWZ1bCBmb3IgdGhpcyBwdXJwb3NlLgogCiBCVUdTCkBAIC02Nyw1ICs2Nyw1IEBACiAKIFNFRSBBTFNPCiAtLS0tLS0tLQotZ2l0LXN2bigxKSwgc3ZuMmdpdCgxKSwgc3ZrKDEpLCBnaXQtZmlsdGVyLWJyYW5jaCgxKSwgZ2l0LWZhc3QtaW1wb3J0KDEpLAorZ2l0LXN2bigxKSwgc3ZuMmdpdCgxKSwgc3ZrKDEpLCBnaXQtZmlsdGVyLXJlcG8oMSksIGdpdC1mYXN0LWltcG9ydCgxKSwKIGh0dHBzOi8vc3ZuLmFwYWNoZS5vcmcvcmVwb3MvYXNmL3N1YnZlcnNpb24vdHJ1bmsvbm90ZXMvZHVtcC1sb2FkLWZvcm1hdC50eHQKZGlmZiAtLWdpdCBhL2NvbnRyaWIvc3ZuLWZlL3N2bnJkdW1wX3NpbS5weSBiL2NvbnRyaWIvc3ZuLWZlL3N2bnJkdW1wX3NpbS5weQppbmRleCAxMWFjNmY2Li44YTNjZWU2IDEwMDc1NQotLS0gYS9jb250cmliL3N2bi1mZS9zdm5yZHVtcF9zaW0ucHkKKysrIGIvY29udHJpYi9zdm4tZmUvc3ZucmR1bXBfc2ltLnB5CkBAIC0xLDQgKzEsNCBAQAotIyEvdXNyL2Jpbi9weXRob24KKyMhL3Vzci9iaW4vZW52IHB5dGhvbgogIiIiCiBTaW11bGF0ZXMgc3ZucmR1bXAgYnkgcmVwbGF5aW5nIGFuIGV4aXN0aW5nIGR1bXAgZnJvbSBhIGZpbGUsIHRha2luZyBjYXJlCiBvZiB0aGUgc3BlY2lmaWVkIHJldmlzaW9uIHJhbmdlLgpAQCAtNTQsNyArNTQsNyBAQAogICAgICAgICBwcmludCgidXNhZ2U6ICVzIGR1bXAgVVJMIC1yTE9XRVI6VVBQRVIiKQogICAgICAgICBzeXMuZXhpdCgxKQogICAgIGlmIG5vdCBzeXMuYXJndlsxXSA9PSAnZHVtcCc6Ci0gICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IoJ29ubHkgImR1bXAiIGlzIHN1cHBwb3J0ZWQuJykKKyAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcignb25seSAiZHVtcCIgaXMgc3VwcG9ydGVkLicpCiAgICAgdXJsID0gc3lzLmFyZ3ZbMl0KICAgICByID0gKCcwJywgJ0hFQUQnKQogICAgIGlmIGxlbihzeXMuYXJndikgPT0gNCBhbmQgc3lzLmFyZ3ZbM11bMDoyXSA9PSAnLXInOgpkaWZmIC0tZ2l0IGEvY29udmVydC5jIGIvY29udmVydC5jCmluZGV4IGUwODQ4MjIuLjVlYWQzY2UgMTAwNjQ0Ci0tLSBhL2NvbnZlcnQuYworKysgYi9jb252ZXJ0LmMKQEAgLTEsNCArMSwzIEBACi0jZGVmaW5lIE5PX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCkBAIC05LDYgKzgsNyBAQAogI2luY2x1ZGUgInBrdC1saW5lLmgiCiAjaW5jbHVkZSAic3ViLXByb2Nlc3MuaCIKICNpbmNsdWRlICJ1dGY4LmgiCisjaW5jbHVkZSAibGwtbWVyZ2UuaCIKIAogLyoKICAqIGNvbnZlcnQuYyAtIGNvbnZlcnQgYSBmaWxlIHdoZW4gY2hlY2tpbmcgaXQgb3V0IGFuZCBjaGVja2luZyBpdCBpbi4KQEAgLTkyLDcgKzkyLDcgQEAKICAqIFRoZSBzYW1lIGhldXJpc3RpY3MgYXMgZGlmZi5jOjptbWZpbGVfaXNfYmluYXJ5KCkKICAqIFdlIHRyZWF0IGZpbGVzIHdpdGggYmFyZSBDUiBhcyBiaW5hcnkKICAqLwotc3RhdGljIGludCBjb252ZXJ0X2lzX2JpbmFyeSh1bnNpZ25lZCBsb25nIHNpemUsIGNvbnN0IHN0cnVjdCB0ZXh0X3N0YXQgKnN0YXRzKQorc3RhdGljIGludCBjb252ZXJ0X2lzX2JpbmFyeShjb25zdCBzdHJ1Y3QgdGV4dF9zdGF0ICpzdGF0cykKIHsKIAlpZiAoc3RhdHMtPmxvbmVjcikKIAkJcmV0dXJuIDE7CkBAIC0xMTAsNyArMTEwLDcgQEAKIAlpZiAoIWRhdGEgfHwgIXNpemUpCiAJCXJldHVybiAwOwogCWdhdGhlcl9zdGF0cyhkYXRhLCBzaXplLCAmc3RhdHMpOwotCWlmIChjb252ZXJ0X2lzX2JpbmFyeShzaXplLCAmc3RhdHMpKQorCWlmIChjb252ZXJ0X2lzX2JpbmFyeSgmc3RhdHMpKQogCQlyZXQgfD0gQ09OVkVSVF9TVEFUX0JJVFNfQklOOwogCWlmIChzdGF0cy5jcmxmKQogCQlyZXQgfD0gQ09OVkVSVF9TVEFUX0JJVFNfVFhUX0NSTEY7CkBAIC0yNDUsNyArMjQ1LDcgQEAKIAlyZXR1cm4gaGFzX2NybGY7CiB9CiAKLXN0YXRpYyBpbnQgd2lsbF9jb252ZXJ0X2xmX3RvX2NybGYoc2l6ZV90IGxlbiwgc3RydWN0IHRleHRfc3RhdCAqc3RhdHMsCitzdGF0aWMgaW50IHdpbGxfY29udmVydF9sZl90b19jcmxmKHN0cnVjdCB0ZXh0X3N0YXQgKnN0YXRzLAogCQkJCSAgIGVudW0gY3JsZl9hY3Rpb24gY3JsZl9hY3Rpb24pCiB7CiAJaWYgKG91dHB1dF9lb2woY3JsZl9hY3Rpb24pICE9IEVPTF9DUkxGKQpAQCAtMjYwLDcgKzI2MCw3IEBACiAJCWlmIChzdGF0cy0+bG9uZWNyIHx8IHN0YXRzLT5jcmxmKQogCQkJcmV0dXJuIDA7CiAKLQkJaWYgKGNvbnZlcnRfaXNfYmluYXJ5KGxlbiwgc3RhdHMpKQorCQlpZiAoY29udmVydF9pc19iaW5hcnkoc3RhdHMpKQogCQkJcmV0dXJuIDA7CiAJfQogCXJldHVybiAxOwpAQCAtMjcwLDggKzI3MCwxMiBAQAogc3RhdGljIGludCB2YWxpZGF0ZV9lbmNvZGluZyhjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICplbmMsCiAJCSAgICAgIGNvbnN0IGNoYXIgKmRhdGEsIHNpemVfdCBsZW4sIGludCBkaWVfb25fZXJyb3IpCiB7CisJY29uc3QgY2hhciAqc3RyaXBwZWQ7CisKIAkvKiBXZSBvbmx5IGNoZWNrIGZvciBVVEYgaGVyZSBhcyBVVEY/PyBjYW4gYmUgYW4gYWxpYXMgZm9yIFVURi0/PyAqLwotCWlmIChpc3RhcnRzX3dpdGgoZW5jLCAiVVRGIikpIHsKKwlpZiAoc2tpcF9pcHJlZml4KGVuYywgIlVURiIsICZzdHJpcHBlZCkpIHsKKwkJc2tpcF9wcmVmaXgoc3RyaXBwZWQsICItIiwgJnN0cmlwcGVkKTsKKwogCQkvKgogCQkgKiBDaGVjayBmb3IgZGV0ZWN0YWJsZSBlcnJvcnMgaW4gVVRGIGVuY29kaW5ncwogCQkgKi8KQEAgLTI4NSwxNSArMjg5LDEwIEBACiAJCQkgKi8KIAkJCWNvbnN0IGNoYXIgKmFkdmlzZV9tc2cgPSBfKAogCQkJCSJUaGUgZmlsZSAnJXMnIGNvbnRhaW5zIGEgYnl0ZSBvcmRlciAiCi0JCQkJIm1hcmsgKEJPTSkuIFBsZWFzZSB1c2UgVVRGLSVzIGFzICIKKwkJCQkibWFyayAoQk9NKS4gUGxlYXNlIHVzZSBVVEYtJS4qcyBhcyAiCiAJCQkJIndvcmtpbmctdHJlZS1lbmNvZGluZy4iKTsKLQkJCWNvbnN0IGNoYXIgKnN0cmlwcGVkID0gTlVMTDsKLQkJCWNoYXIgKnVwcGVyID0geHN0cmR1cF90b3VwcGVyKGVuYyk7Ci0JCQl1cHBlcltzdHJsZW4odXBwZXIpLTJdID0gJ1wwJzsKLQkJCWlmICghc2tpcF9wcmVmaXgodXBwZXIsICJVVEYtIiwgJnN0cmlwcGVkKSkKLQkJCQlza2lwX3ByZWZpeChzdHJpcHBlZCwgIlVURiIsICZzdHJpcHBlZCk7Ci0JCQlhZHZpc2UoYWR2aXNlX21zZywgcGF0aCwgc3RyaXBwZWQpOwotCQkJZnJlZSh1cHBlcik7CisJCQlpbnQgc3RyaXBwZWRfbGVuID0gc3RybGVuKHN0cmlwcGVkKSAtIHN0cmxlbigiQkUiKTsKKwkJCWFkdmlzZShhZHZpc2VfbXNnLCBwYXRoLCBzdHJpcHBlZF9sZW4sIHN0cmlwcGVkKTsKIAkJCWlmIChkaWVfb25fZXJyb3IpCiAJCQkJZGllKGVycm9yX21zZywgcGF0aCwgZW5jKTsKIAkJCWVsc2UgewpAQCAtMzA4LDEyICszMDcsNyBAQAogCQkJCSJtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lc0JFIG9yIFVURi0lc0xFICIKIAkJCQkiKGRlcGVuZGluZyBvbiB0aGUgYnl0ZSBvcmRlcikgYXMgIgogCQkJCSJ3b3JraW5nLXRyZWUtZW5jb2RpbmcuIik7Ci0JCQljb25zdCBjaGFyICpzdHJpcHBlZCA9IE5VTEw7Ci0JCQljaGFyICp1cHBlciA9IHhzdHJkdXBfdG91cHBlcihlbmMpOwotCQkJaWYgKCFza2lwX3ByZWZpeCh1cHBlciwgIlVURi0iLCAmc3RyaXBwZWQpKQotCQkJCXNraXBfcHJlZml4KHN0cmlwcGVkLCAiVVRGIiwgJnN0cmlwcGVkKTsKIAkJCWFkdmlzZShhZHZpc2VfbXNnLCBwYXRoLCBzdHJpcHBlZCwgc3RyaXBwZWQpOwotCQkJZnJlZSh1cHBlcik7CiAJCQlpZiAoZGllX29uX2Vycm9yKQogCQkJCWRpZShlcnJvcl9tc2csIHBhdGgsIGVuYyk7CiAJCQllbHNlIHsKQEAgLTQxOCw3ICs0MTIsNyBAQAogCWlmICghZHN0KSB7CiAJCS8qCiAJCSAqIFdlIGNvdWxkIGFkZCB0aGUgYmxvYiAiYXMtaXMiIHRvIEdpdC4gSG93ZXZlciwgb24gY2hlY2tvdXQKLQkJICogd2Ugd291bGQgdHJ5IHRvIHJlZW5jb2RlIHRvIHRoZSBvcmlnaW5hbCBlbmNvZGluZy4gVGhpcworCQkgKiB3ZSB3b3VsZCB0cnkgdG8gcmUtZW5jb2RlIHRvIHRoZSBvcmlnaW5hbCBlbmNvZGluZy4gVGhpcwogCQkgKiB3b3VsZCBmYWlsIGFuZCB3ZSB3b3VsZCBsZWF2ZSB0aGUgdXNlciB3aXRoIGEgbWVzc2VkLXVwCiAJCSAqIHdvcmtpbmcgdHJlZS4gTGV0J3MgdHJ5IHRvIGF2b2lkIHRoaXMgYnkgc2NyZWFtaW5nIGxvdWQuCiAJCSAqLwpAQCAtNTI3LDcgKzUyMSw3IEBACiAJY29udmVydF9jcmxmX2ludG9fbGYgPSAhIXN0YXRzLmNybGY7CiAKIAlpZiAoY3JsZl9hY3Rpb24gPT0gQ1JMRl9BVVRPIHx8IGNybGZfYWN0aW9uID09IENSTEZfQVVUT19JTlBVVCB8fCBjcmxmX2FjdGlvbiA9PSBDUkxGX0FVVE9fQ1JMRikgewotCQlpZiAoY29udmVydF9pc19iaW5hcnkobGVuLCAmc3RhdHMpKQorCQlpZiAoY29udmVydF9pc19iaW5hcnkoJnN0YXRzKSkKIAkJCXJldHVybiAwOwogCQkvKgogCQkgKiBJZiB0aGUgZmlsZSBpbiB0aGUgaW5kZXggaGFzIGFueSBDUiBpbiBpdCwgZG8gbm90CkBAIC01NDksNyArNTQzLDcgQEAKIAkJCW5ld19zdGF0cy5jcmxmID0gMDsKIAkJfQogCQkvKiBzaW11bGF0ZSAiZ2l0IGNoZWNrb3V0IiAqLwotCQlpZiAod2lsbF9jb252ZXJ0X2xmX3RvX2NybGYobGVuLCAmbmV3X3N0YXRzLCBjcmxmX2FjdGlvbikpIHsKKwkJaWYgKHdpbGxfY29udmVydF9sZl90b19jcmxmKCZuZXdfc3RhdHMsIGNybGZfYWN0aW9uKSkgewogCQkJbmV3X3N0YXRzLmNybGYgKz0gbmV3X3N0YXRzLmxvbmVsZjsKIAkJCW5ld19zdGF0cy5sb25lbGYgPSAwOwogCQl9CkBAIC01OTEsNyArNTg1LDcgQEAKIAlyZXR1cm4gMTsKIH0KIAotc3RhdGljIGludCBjcmxmX3RvX3dvcmt0cmVlKGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IGNoYXIgKnNyYywgc2l6ZV90IGxlbiwKK3N0YXRpYyBpbnQgY3JsZl90b193b3JrdHJlZShjb25zdCBjaGFyICpzcmMsIHNpemVfdCBsZW4sCiAJCQkgICAgc3RydWN0IHN0cmJ1ZiAqYnVmLCBlbnVtIGNybGZfYWN0aW9uIGNybGZfYWN0aW9uKQogewogCWNoYXIgKnRvX2ZyZWUgPSBOVUxMOwpAQCAtNjAxLDcgKzU5NSw3IEBACiAJCXJldHVybiAwOwogCiAJZ2F0aGVyX3N0YXRzKHNyYywgbGVuLCAmc3RhdHMpOwotCWlmICghd2lsbF9jb252ZXJ0X2xmX3RvX2NybGYobGVuLCAmc3RhdHMsIGNybGZfYWN0aW9uKSkKKwlpZiAoIXdpbGxfY29udmVydF9sZl90b19jcmxmKCZzdGF0cywgY3JsZl9hY3Rpb24pKQogCQlyZXR1cm4gMDsKIAogCS8qIGFyZSB3ZSAiZmFraW5nIiBpbiBwbGFjZSBlZGl0aW5nID8gKi8KQEAgLTcwNSw3ICs2OTksNyBAQAogfQogCiBzdGF0aWMgaW50IGFwcGx5X3NpbmdsZV9maWxlX2ZpbHRlcihjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICpzcmMsIHNpemVfdCBsZW4sIGludCBmZCwKLSAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBzdHJidWYgKmRzdCwgY29uc3QgY2hhciAqY21kKQorCQkJCSAgICBzdHJ1Y3Qgc3RyYnVmICpkc3QsIGNvbnN0IGNoYXIgKmNtZCkKIHsKIAkvKgogCSAqIENyZWF0ZSBhIHBpcGVsaW5lIHRvIGhhdmUgdGhlIGNvbW1hbmQgZmlsdGVyIHRoZSBidWZmZXIncwpAQCAtNzMyLDcgKzcyNiw3IEBACiAJaWYgKHN0YXJ0X2FzeW5jKCZhc3luYykpCiAJCXJldHVybiAwOwkvKiBlcnJvciB3YXMgYWxyZWFkeSByZXBvcnRlZCAqLwogCi0JaWYgKHN0cmJ1Zl9yZWFkKCZuYnVmLCBhc3luYy5vdXQsIGxlbikgPCAwKSB7CisJaWYgKHN0cmJ1Zl9yZWFkKCZuYnVmLCBhc3luYy5vdXQsIDApIDwgMCkgewogCQllcnIgPSBlcnJvcihfKCJyZWFkIGZyb20gZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkIiksIGNtZCk7CiAJfQogCWlmIChjbG9zZShhc3luYy5vdXQpKSB7CkBAIC03NzgsNyArNzcyLDggQEAKIAogc3RhdGljIHZvaWQgaGFuZGxlX2ZpbHRlcl9lcnJvcihjb25zdCBzdHJ1Y3Qgc3RyYnVmICpmaWx0ZXJfc3RhdHVzLAogCQkJCXN0cnVjdCBjbWQycHJvY2VzcyAqZW50cnksCi0JCQkJY29uc3QgdW5zaWduZWQgaW50IHdhbnRlZF9jYXBhYmlsaXR5KSB7CisJCQkJY29uc3QgdW5zaWduZWQgaW50IHdhbnRlZF9jYXBhYmlsaXR5KQorewogCWlmICghc3RyY21wKGZpbHRlcl9zdGF0dXMtPmJ1ZiwgImVycm9yIikpCiAJCTsgLyogVGhlIGZpbHRlciBzaWduYWxlZCBhIHByb2JsZW0gd2l0aCB0aGUgZmlsZS4gKi8KIAllbHNlIGlmICghc3RyY21wKGZpbHRlcl9zdGF0dXMtPmJ1ZiwgImFib3J0IikgJiYgd2FudGVkX2NhcGFiaWxpdHkpIHsKQEAgLTEwOTAsOCArMTA4NSw4IEBACiAJcmV0dXJuIGNudDsKIH0KIAotc3RhdGljIGludCBpZGVudF90b19naXQoY29uc3QgY2hhciAqcGF0aCwgY29uc3QgY2hhciAqc3JjLCBzaXplX3QgbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHN0cmJ1ZiAqYnVmLCBpbnQgaWRlbnQpCitzdGF0aWMgaW50IGlkZW50X3RvX2dpdChjb25zdCBjaGFyICpzcmMsIHNpemVfdCBsZW4sCisJCQlzdHJ1Y3Qgc3RyYnVmICpidWYsIGludCBpZGVudCkKIHsKIAljaGFyICpkc3QsICpkb2xsYXI7CiAKQEAgLTExMzQsOCArMTEyOSw4IEBACiAJcmV0dXJuIDE7CiB9CiAKLXN0YXRpYyBpbnQgaWRlbnRfdG9fd29ya3RyZWUoY29uc3QgY2hhciAqcGF0aCwgY29uc3QgY2hhciAqc3JjLCBzaXplX3QgbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgc3RyYnVmICpidWYsIGludCBpZGVudCkKK3N0YXRpYyBpbnQgaWRlbnRfdG9fd29ya3RyZWUoY29uc3QgY2hhciAqc3JjLCBzaXplX3QgbGVuLAorCQkJICAgICBzdHJ1Y3Qgc3RyYnVmICpidWYsIGludCBpZGVudCkKIHsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAljaGFyICp0b19mcmVlID0gTlVMTCwgKmRvbGxhciwgKnNwYzsKQEAgLTExNTEsNyArMTE0Niw3IEBACiAJLyogYXJlIHdlICJmYWtpbmciIGluIHBsYWNlIGVkaXRpbmcgPyAqLwogCWlmIChzcmMgPT0gYnVmLT5idWYpCiAJCXRvX2ZyZWUgPSBzdHJidWZfZGV0YWNoKGJ1ZiwgTlVMTCk7Ci0JaGFzaF9vYmplY3RfZmlsZShzcmMsIGxlbiwgImJsb2IiLCAmb2lkKTsKKwloYXNoX29iamVjdF9maWxlKHRoZV9oYXNoX2FsZ28sIHNyYywgbGVuLCAiYmxvYiIsICZvaWQpOwogCiAJc3RyYnVmX2dyb3coYnVmLCBsZW4gKyBjbnQgKiAodGhlX2hhc2hfYWxnby0+aGV4c3ogKyAzKSk7CiAJZm9yICg7OykgewpAQCAtMTI5MywxMCArMTI4OCwxMSBAQAogCWNvbnN0IGNoYXIgKndvcmtpbmdfdHJlZV9lbmNvZGluZzsgLyogU3VwcG9ydGVkIGVuY29kaW5nIG9yIGRlZmF1bHQgZW5jb2RpbmcgaWYgTlVMTCAqLwogfTsKIAorc3RhdGljIHN0cnVjdCBhdHRyX2NoZWNrICpjaGVjazsKKwogc3RhdGljIHZvaWQgY29udmVydF9hdHRycyhjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKIAkJCSAgc3RydWN0IGNvbnZfYXR0cnMgKmNhLCBjb25zdCBjaGFyICpwYXRoKQogewotCXN0YXRpYyBzdHJ1Y3QgYXR0cl9jaGVjayAqY2hlY2s7CiAJc3RydWN0IGF0dHJfY2hlY2tfaXRlbSAqY2NoZWNrID0gTlVMTDsKIAogCWlmICghY2hlY2spIHsKQEAgLTEzMzksNiArMTMzNSwyMyBAQAogCQljYS0+Y3JsZl9hY3Rpb24gPSBDUkxGX0FVVE9fSU5QVVQ7CiB9CiAKK3ZvaWQgcmVzZXRfcGFyc2VkX2F0dHJpYnV0ZXModm9pZCkKK3sKKwlzdHJ1Y3QgY29udmVydF9kcml2ZXIgKmRydiwgKm5leHQ7CisKKwlhdHRyX2NoZWNrX2ZyZWUoY2hlY2spOworCWNoZWNrID0gTlVMTDsKKwlyZXNldF9tZXJnZV9hdHRyaWJ1dGVzKCk7CisKKwlmb3IgKGRydiA9IHVzZXJfY29udmVydDsgZHJ2OyBkcnYgPSBuZXh0KSB7CisJCW5leHQgPSBkcnYtPm5leHQ7CisJCWZyZWUoKHZvaWQgKilkcnYtPm5hbWUpOworCQlmcmVlKGRydik7CisJfQorCXVzZXJfY29udmVydCA9IE5VTEw7CisJdXNlcl9jb252ZXJ0X3RhaWwgPSBOVUxMOworfQorCiBpbnQgd291bGRfY29udmVydF90b19naXRfZmlsdGVyX2ZkKGNvbnN0IHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLCBjb25zdCBjaGFyICpwYXRoKQogewogCXN0cnVjdCBjb252X2F0dHJzIGNhOwpAQCAtMTQxNSw3ICsxNDI4LDcgQEAKIAkJCWxlbiA9IGRzdC0+bGVuOwogCQl9CiAJfQotCXJldHVybiByZXQgfCBpZGVudF90b19naXQocGF0aCwgc3JjLCBsZW4sIGRzdCwgY2EuaWRlbnQpOworCXJldHVybiByZXQgfCBpZGVudF90b19naXQoc3JjLCBsZW4sIGRzdCwgY2EuaWRlbnQpOwogfQogCiB2b2lkIGNvbnZlcnRfdG9fZ2l0X2ZpbHRlcl9mZChjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKQEAgLTE0MzMsNyArMTQ0Niw3IEBACiAKIAllbmNvZGVfdG9fZ2l0KHBhdGgsIGRzdC0+YnVmLCBkc3QtPmxlbiwgZHN0LCBjYS53b3JraW5nX3RyZWVfZW5jb2RpbmcsIGNvbnZfZmxhZ3MpOwogCWNybGZfdG9fZ2l0KGlzdGF0ZSwgcGF0aCwgZHN0LT5idWYsIGRzdC0+bGVuLCBkc3QsIGNhLmNybGZfYWN0aW9uLCBjb252X2ZsYWdzKTsKLQlpZGVudF90b19naXQocGF0aCwgZHN0LT5idWYsIGRzdC0+bGVuLCBkc3QsIGNhLmlkZW50KTsKKwlpZGVudF90b19naXQoZHN0LT5idWYsIGRzdC0+bGVuLCBkc3QsIGNhLmlkZW50KTsKIH0KIAogc3RhdGljIGludCBjb252ZXJ0X3RvX3dvcmtpbmdfdHJlZV9pbnRlcm5hbChjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKQEAgLTE0NDYsNyArMTQ1OSw3IEBACiAKIAljb252ZXJ0X2F0dHJzKGlzdGF0ZSwgJmNhLCBwYXRoKTsKIAotCXJldCB8PSBpZGVudF90b193b3JrdHJlZShwYXRoLCBzcmMsIGxlbiwgZHN0LCBjYS5pZGVudCk7CisJcmV0IHw9IGlkZW50X3RvX3dvcmt0cmVlKHNyYywgbGVuLCBkc3QsIGNhLmlkZW50KTsKIAlpZiAocmV0KSB7CiAJCXNyYyA9IGRzdC0+YnVmOwogCQlsZW4gPSBkc3QtPmxlbjsKQEAgLTE0NTcsNyArMTQ3MCw3IEBACiAJICogc3VwcG9ydCBzbXVkZ2UpLiAgVGhlIGZpbHRlcnMgbWlnaHQgZXhwZWN0IENSTEZzLgogCSAqLwogCWlmICgoY2EuZHJ2ICYmIChjYS5kcnYtPnNtdWRnZSB8fCBjYS5kcnYtPnByb2Nlc3MpKSB8fCAhbm9ybWFsaXppbmcpIHsKLQkJcmV0IHw9IGNybGZfdG9fd29ya3RyZWUocGF0aCwgc3JjLCBsZW4sIGRzdCwgY2EuY3JsZl9hY3Rpb24pOworCQlyZXQgfD0gY3JsZl90b193b3JrdHJlZShzcmMsIGxlbiwgZHN0LCBjYS5jcmxmX2FjdGlvbik7CiAJCWlmIChyZXQpIHsKIAkJCXNyYyA9IGRzdC0+YnVmOwogCQkJbGVuID0gZHN0LT5sZW47CkBAIC0xOTI3LDcgKzE5NDAsNyBAQAogICogdGhlIGNvbnRlbnRzIGNhbm5vdCBiZSBmaWx0ZXJlZCB3aXRob3V0IHJlYWRpbmcgdGhlIHdob2xlIHRoaW5nCiAgKiBpbi1jb3JlLgogICoKLSAqIE5vdGUgdGhhdCB5b3Ugd291bGQgYmUgY3JhenkgdG8gc2V0IENSTEYsIHNtdWdlL2NsZWFuIG9yIGlkZW50IHRvIGEKKyAqIE5vdGUgdGhhdCB5b3Ugd291bGQgYmUgY3JhenkgdG8gc2V0IENSTEYsIHNtdWRnZS9jbGVhbiBvciBpZGVudCB0byBhCiAgKiBsYXJnZSBiaW5hcnkgYmxvYiB5b3Ugd291bGQgd2FudCB1cyBub3QgdG8gc2x1cnAgaW50byB0aGUgbWVtb3J5IQogICovCiBzdHJ1Y3Qgc3RyZWFtX2ZpbHRlciAqZ2V0X3N0cmVhbV9maWx0ZXIoY29uc3Qgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCmRpZmYgLS1naXQgYS9jb252ZXJ0LmggYi9jb252ZXJ0LmgKaW5kZXggODMxNTU5Zi4uMzcxMDk2OSAxMDA2NDQKLS0tIGEvY29udmVydC5oCisrKyBiL2NvbnZlcnQuaApAQCAtOTQsNiArOTQsMTIgQEAKIGludCB3b3VsZF9jb252ZXJ0X3RvX2dpdF9maWx0ZXJfZmQoY29uc3Qgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCiAJCQkJICAgY29uc3QgY2hhciAqcGF0aCk7CiAKKy8qCisgKiBSZXNldCB0aGUgaW50ZXJuYWwgbGlzdCBvZiBhdHRyaWJ1dGVzIHVzZWQgYnkgY29udmVydF90b19naXQgYW5kCisgKiBjb252ZXJ0X3RvX3dvcmtpbmdfdHJlZS4KKyAqLwordm9pZCByZXNldF9wYXJzZWRfYXR0cmlidXRlcyh2b2lkKTsKKwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgKgogICogU3RyZWFtaW5nIGNvbnZlcnNpb24gc3VwcG9ydApkaWZmIC0tZ2l0IGEvY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmMgYi9jcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYwppbmRleCA0ZGZiYzhjLi5lYzEyNzFmIDEwMDY0NAotLS0gYS9jcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYworKysgYi9jcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYwpAQCAtOTEsNyArOTEsOCBAQAogfQogCiBzdGF0aWMgaW50IHJlYWRfcmVxdWVzdChGSUxFICpmaCwgc3RydWN0IGNyZWRlbnRpYWwgKmMsCi0JCQlzdHJ1Y3Qgc3RyYnVmICphY3Rpb24sIGludCAqdGltZW91dCkgeworCQkJc3RydWN0IHN0cmJ1ZiAqYWN0aW9uLCBpbnQgKnRpbWVvdXQpCit7CiAJc3RhdGljIHN0cnVjdCBzdHJidWYgaXRlbSA9IFNUUkJVRl9JTklUOwogCWNvbnN0IGNoYXIgKnA7CiAKZGlmZiAtLWdpdCBhL2NyZWRlbnRpYWwtc3RvcmUuYyBiL2NyZWRlbnRpYWwtc3RvcmUuYwppbmRleCBhYzI5NTQyLi5jMDEwNDk3IDEwMDY0NAotLS0gYS9jcmVkZW50aWFsLXN0b3JlLmMKKysrIGIvY3JlZGVudGlhbC1zdG9yZS5jCkBAIC03MiwxNSArNzIsMTYgQEAKIAlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCiAJc3RyYnVmX2FkZGYoJmJ1ZiwgIiVzOi8vIiwgYy0+cHJvdG9jb2wpOwotCXN0cmJ1Zl9hZGRzdHJfdXJsZW5jb2RlKCZidWYsIGMtPnVzZXJuYW1lLCAxKTsKKwlzdHJidWZfYWRkc3RyX3VybGVuY29kZSgmYnVmLCBjLT51c2VybmFtZSwgaXNfcmZjMzk4Nl91bnJlc2VydmVkKTsKIAlzdHJidWZfYWRkY2goJmJ1ZiwgJzonKTsKLQlzdHJidWZfYWRkc3RyX3VybGVuY29kZSgmYnVmLCBjLT5wYXNzd29yZCwgMSk7CisJc3RyYnVmX2FkZHN0cl91cmxlbmNvZGUoJmJ1ZiwgYy0+cGFzc3dvcmQsIGlzX3JmYzM5ODZfdW5yZXNlcnZlZCk7CiAJc3RyYnVmX2FkZGNoKCZidWYsICdAJyk7CiAJaWYgKGMtPmhvc3QpCi0JCXN0cmJ1Zl9hZGRzdHJfdXJsZW5jb2RlKCZidWYsIGMtPmhvc3QsIDEpOworCQlzdHJidWZfYWRkc3RyX3VybGVuY29kZSgmYnVmLCBjLT5ob3N0LCBpc19yZmMzOTg2X3VucmVzZXJ2ZWQpOwogCWlmIChjLT5wYXRoKSB7CiAJCXN0cmJ1Zl9hZGRjaCgmYnVmLCAnLycpOwotCQlzdHJidWZfYWRkc3RyX3VybGVuY29kZSgmYnVmLCBjLT5wYXRoLCAwKTsKKwkJc3RyYnVmX2FkZHN0cl91cmxlbmNvZGUoJmJ1ZiwgYy0+cGF0aCwKKwkJCQkJaXNfcmZjMzk4Nl9yZXNlcnZlZF9vcl91bnJlc2VydmVkKTsKIAl9CiAKIAlyZXdyaXRlX2NyZWRlbnRpYWxfZmlsZShmbiwgYywgJmJ1Zik7CmRpZmYgLS1naXQgYS9jcmVkZW50aWFsLmMgYi9jcmVkZW50aWFsLmMKaW5kZXggNjJiZTY1MS4uNzdkZmRlNCAxMDA2NDQKLS0tIGEvY3JlZGVudGlhbC5jCisrKyBiL2NyZWRlbnRpYWwuYwpAQCAtNiw2ICs2LDcgQEAKICNpbmNsdWRlICJ1cmwuaCIKICNpbmNsdWRlICJwcm9tcHQuaCIKICNpbmNsdWRlICJzaWdjaGFpbi5oIgorI2luY2x1ZGUgInVybG1hdGNoLmgiCiAKIHZvaWQgY3JlZGVudGlhbF9pbml0KHN0cnVjdCBjcmVkZW50aWFsICpjKQogewpAQCAtNDAsNyArNDEsNyBAQAogCQkJCSAgICAgIHZvaWQgKmRhdGEpCiB7CiAJc3RydWN0IGNyZWRlbnRpYWwgKmMgPSBkYXRhOwotCWNvbnN0IGNoYXIgKmtleSwgKmRvdDsKKwljb25zdCBjaGFyICprZXk7CiAKIAlpZiAoIXNraXBfcHJlZml4KHZhciwgImNyZWRlbnRpYWwuIiwgJmtleSkpCiAJCXJldHVybiAwOwpAQCAtNDgsMzEgKzQ5LDE2IEBACiAJaWYgKCF2YWx1ZSkKIAkJcmV0dXJuIGNvbmZpZ19lcnJvcl9ub25ib29sKHZhcik7CiAKLQlkb3QgPSBzdHJyY2hyKGtleSwgJy4nKTsKLQlpZiAoZG90KSB7Ci0JCXN0cnVjdCBjcmVkZW50aWFsIHdhbnQgPSBDUkVERU5USUFMX0lOSVQ7Ci0JCWNoYXIgKnVybCA9IHhtZW1kdXB6KGtleSwgZG90IC0ga2V5KTsKLQkJaW50IG1hdGNoZWQ7Ci0KLQkJY3JlZGVudGlhbF9mcm9tX3VybCgmd2FudCwgdXJsKTsKLQkJbWF0Y2hlZCA9IGNyZWRlbnRpYWxfbWF0Y2goJndhbnQsIGMpOwotCi0JCWNyZWRlbnRpYWxfY2xlYXIoJndhbnQpOwotCQlmcmVlKHVybCk7Ci0KLQkJaWYgKCFtYXRjaGVkKQotCQkJcmV0dXJuIDA7Ci0JCWtleSA9IGRvdCArIDE7Ci0JfQotCiAJaWYgKCFzdHJjbXAoa2V5LCAiaGVscGVyIikpIHsKIAkJaWYgKCp2YWx1ZSkKIAkJCXN0cmluZ19saXN0X2FwcGVuZCgmYy0+aGVscGVycywgdmFsdWUpOwogCQllbHNlCiAJCQlzdHJpbmdfbGlzdF9jbGVhcigmYy0+aGVscGVycywgMCk7CiAJfSBlbHNlIGlmICghc3RyY21wKGtleSwgInVzZXJuYW1lIikpIHsKLQkJaWYgKCFjLT51c2VybmFtZSkKKwkJaWYgKCFjLT51c2VybmFtZV9mcm9tX3Byb3RvKSB7CisJCQlmcmVlKGMtPnVzZXJuYW1lKTsKIAkJCWMtPnVzZXJuYW1lID0geHN0cmR1cCh2YWx1ZSk7CisJCX0KIAl9CiAJZWxzZSBpZiAoIXN0cmNtcChrZXksICJ1c2VodHRwcGF0aCIpKQogCQljLT51c2VfaHR0cF9wYXRoID0gZ2l0X2NvbmZpZ19ib29sKHZhciwgdmFsdWUpOwpAQCAtODcsMTEgKzczLDM4IEBACiAJcmV0dXJuICFzdHJjbXAocywgImh0dHBzIikgfHwgIXN0cmNtcChzLCAiaHR0cCIpOwogfQogCitzdGF0aWMgdm9pZCBjcmVkZW50aWFsX2Rlc2NyaWJlKHN0cnVjdCBjcmVkZW50aWFsICpjLCBzdHJ1Y3Qgc3RyYnVmICpvdXQpOworc3RhdGljIHZvaWQgY3JlZGVudGlhbF9mb3JtYXQoc3RydWN0IGNyZWRlbnRpYWwgKmMsIHN0cnVjdCBzdHJidWYgKm91dCk7CisKK3N0YXRpYyBpbnQgc2VsZWN0X2FsbChjb25zdCBzdHJ1Y3QgdXJsbWF0Y2hfaXRlbSAqYSwKKwkJICAgICAgY29uc3Qgc3RydWN0IHVybG1hdGNoX2l0ZW0gKmIpCit7CisJcmV0dXJuIDA7Cit9CisKIHN0YXRpYyB2b2lkIGNyZWRlbnRpYWxfYXBwbHlfY29uZmlnKHN0cnVjdCBjcmVkZW50aWFsICpjKQogeworCWNoYXIgKm5vcm1hbGl6ZWRfdXJsOworCXN0cnVjdCB1cmxtYXRjaF9jb25maWcgY29uZmlnID0geyBTVFJJTkdfTElTVF9JTklUX0RVUCB9OworCXN0cnVjdCBzdHJidWYgdXJsID0gU1RSQlVGX0lOSVQ7CisKIAlpZiAoYy0+Y29uZmlndXJlZCkKIAkJcmV0dXJuOwotCWdpdF9jb25maWcoY3JlZGVudGlhbF9jb25maWdfY2FsbGJhY2ssIGMpOworCisJY29uZmlnLnNlY3Rpb24gPSAiY3JlZGVudGlhbCI7CisJY29uZmlnLmtleSA9IE5VTEw7CisJY29uZmlnLmNvbGxlY3RfZm4gPSBjcmVkZW50aWFsX2NvbmZpZ19jYWxsYmFjazsKKwljb25maWcuY2FzY2FkZV9mbiA9IE5VTEw7CisJY29uZmlnLnNlbGVjdF9mbiA9IHNlbGVjdF9hbGw7CisJY29uZmlnLmNiID0gYzsKKworCWNyZWRlbnRpYWxfZm9ybWF0KGMsICZ1cmwpOworCW5vcm1hbGl6ZWRfdXJsID0gdXJsX25vcm1hbGl6ZSh1cmwuYnVmLCAmY29uZmlnLnVybCk7CisKKwlnaXRfY29uZmlnKHVybG1hdGNoX2NvbmZpZ19lbnRyeSwgJmNvbmZpZyk7CisJZnJlZShub3JtYWxpemVkX3VybCk7CisJc3RyYnVmX3JlbGVhc2UoJnVybCk7CisKIAljLT5jb25maWd1cmVkID0gMTsKIAogCWlmICghYy0+dXNlX2h0dHBfcGF0aCAmJiBwcm90b19pc19odHRwKGMtPnByb3RvY29sKSkgewpAQCAtMTEyLDYgKzEyNSwyMyBAQAogCQlzdHJidWZfYWRkZihvdXQsICIvJXMiLCBjLT5wYXRoKTsKIH0KIAorc3RhdGljIHZvaWQgY3JlZGVudGlhbF9mb3JtYXQoc3RydWN0IGNyZWRlbnRpYWwgKmMsIHN0cnVjdCBzdHJidWYgKm91dCkKK3sKKwlpZiAoIWMtPnByb3RvY29sKQorCQlyZXR1cm47CisJc3RyYnVmX2FkZGYob3V0LCAiJXM6Ly8iLCBjLT5wcm90b2NvbCk7CisJaWYgKGMtPnVzZXJuYW1lICYmICpjLT51c2VybmFtZSkgeworCQlzdHJidWZfYWRkX3BlcmNlbnRlbmNvZGUob3V0LCBjLT51c2VybmFtZSk7CisJCXN0cmJ1Zl9hZGRjaChvdXQsICdAJyk7CisJfQorCWlmIChjLT5ob3N0KQorCQlzdHJidWZfYWRkc3RyKG91dCwgYy0+aG9zdCk7CisJaWYgKGMtPnBhdGgpIHsKKwkJc3RyYnVmX2FkZGNoKG91dCwgJy8nKTsKKwkJc3RyYnVmX2FkZF9wZXJjZW50ZW5jb2RlKG91dCwgYy0+cGF0aCk7CisJfQorfQorCiBzdGF0aWMgY2hhciAqY3JlZGVudGlhbF9hc2tfb25lKGNvbnN0IGNoYXIgKndoYXQsIHN0cnVjdCBjcmVkZW50aWFsICpjLAogCQkJCWludCBmbGFncykKIHsKQEAgLTE2Myw2ICsxOTMsNyBAQAogCQlpZiAoIXN0cmNtcChrZXksICJ1c2VybmFtZSIpKSB7CiAJCQlmcmVlKGMtPnVzZXJuYW1lKTsKIAkJCWMtPnVzZXJuYW1lID0geHN0cmR1cCh2YWx1ZSk7CisJCQljLT51c2VybmFtZV9mcm9tX3Byb3RvID0gMTsKIAkJfSBlbHNlIGlmICghc3RyY21wKGtleSwgInBhc3N3b3JkIikpIHsKIAkJCWZyZWUoYy0+cGFzc3dvcmQpOwogCQkJYy0+cGFzc3dvcmQgPSB4c3RyZHVwKHZhbHVlKTsKQEAgLTM0OSwxMCArMzgwLDE0IEBACiAJZWxzZSBpZiAoIWNvbG9uIHx8IGF0IDw9IGNvbG9uKSB7CiAJCS8qIENhc2UgKDIpICovCiAJCWMtPnVzZXJuYW1lID0gdXJsX2RlY29kZV9tZW0oY3AsIGF0IC0gY3ApOworCQlpZiAoYy0+dXNlcm5hbWUgJiYgKmMtPnVzZXJuYW1lKQorCQkJYy0+dXNlcm5hbWVfZnJvbV9wcm90byA9IDE7CiAJCWhvc3QgPSBhdCArIDE7CiAJfSBlbHNlIHsKIAkJLyogQ2FzZSAoMykgKi8KIAkJYy0+dXNlcm5hbWUgPSB1cmxfZGVjb2RlX21lbShjcCwgY29sb24gLSBjcCk7CisJCWlmIChjLT51c2VybmFtZSAmJiAqYy0+dXNlcm5hbWUpCisJCQljLT51c2VybmFtZV9mcm9tX3Byb3RvID0gMTsKIAkJYy0+cGFzc3dvcmQgPSB1cmxfZGVjb2RlX21lbShjb2xvbiArIDEsIGF0IC0gKGNvbG9uICsgMSkpOwogCQlob3N0ID0gYXQgKyAxOwogCX0KZGlmZiAtLWdpdCBhL2NyZWRlbnRpYWwuaCBiL2NyZWRlbnRpYWwuaAppbmRleCA2YjBjZDE2Li5mZWM3ODE1IDEwMDY0NAotLS0gYS9jcmVkZW50aWFsLmgKKysrIGIvY3JlZGVudGlhbC5oCkBAIC0zLDEyICszLDEyMyBAQAogCiAjaW5jbHVkZSAic3RyaW5nLWxpc3QuaCIKIAorLyoqCisgKiBUaGUgY3JlZGVudGlhbHMgQVBJIHByb3ZpZGVzIGFuIGFic3RyYWN0ZWQgd2F5IG9mIGdhdGhlcmluZyB1c2VybmFtZSBhbmQKKyAqIHBhc3N3b3JkIGNyZWRlbnRpYWxzIGZyb20gdGhlIHVzZXIuCisgKgorICogVHlwaWNhbCBzZXR1cAorICogLS0tLS0tLS0tLS0tLQorICoKKyAqIC0tLS0tLS0tLS0tLQorICogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICogfCBHaXQgY29kZSAoQykgICAgICAgICAgfC0tLSB0byBzZXJ2ZXIgcmVxdWlyaW5nIC0tLT4KKyAqIHwgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgIGF1dGhlbnRpY2F0aW9uCisgKiB8Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi58CisgKiB8IEMgY3JlZGVudGlhbCBBUEkgICAgICB8LS0tIHByb21wdCAtLS0+IFVzZXIKKyAqICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAqIAleICAgICAgfAorICogCXwgcGlwZSB8CisgKiAJfCAgICAgIHYKKyAqICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgR2l0IGNyZWRlbnRpYWwgaGVscGVyIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAqIC0tLS0tLS0tLS0tLQorICoKKyAqIFRoZSBHaXQgY29kZSAodHlwaWNhbGx5IGEgcmVtb3RlLWhlbHBlcikgd2lsbCBjYWxsIHRoZSBDIEFQSSB0byBvYnRhaW4KKyAqIGNyZWRlbnRpYWwgZGF0YSBsaWtlIGEgbG9naW4vcGFzc3dvcmQgcGFpciAoY3JlZGVudGlhbF9maWxsKS4gVGhlCisgKiBBUEkgd2lsbCBpdHNlbGYgY2FsbCBhIHJlbW90ZSBoZWxwZXIgKGUuZy4gImdpdCBjcmVkZW50aWFsLWNhY2hlIiBvcgorICogImdpdCBjcmVkZW50aWFsLXN0b3JlIikgdGhhdCBtYXkgcmV0cmlldmUgY3JlZGVudGlhbCBkYXRhIGZyb20gYQorICogc3RvcmUuIElmIHRoZSBjcmVkZW50aWFsIGhlbHBlciBjYW5ub3QgZmluZCB0aGUgaW5mb3JtYXRpb24sIHRoZSBDIEFQSQorICogd2lsbCBwcm9tcHQgdGhlIHVzZXIuIFRoZW4sIHRoZSBjYWxsZXIgb2YgdGhlIEFQSSB0YWtlcyBjYXJlIG9mCisgKiBjb250YWN0aW5nIHRoZSBzZXJ2ZXIsIGFuZCBkb2VzIHRoZSBhY3R1YWwgYXV0aGVudGljYXRpb24uCisgKgorICogQyBBUEkKKyAqIC0tLS0tCisgKgorICogVGhlIGNyZWRlbnRpYWwgQyBBUEkgaXMgbWVhbnQgdG8gYmUgY2FsbGVkIGJ5IEdpdCBjb2RlIHdoaWNoIG5lZWRzIHRvCisgKiBhY3F1aXJlIG9yIHN0b3JlIGEgY3JlZGVudGlhbC4gSXQgaXMgY2VudGVyZWQgYXJvdW5kIGFuIG9iamVjdAorICogcmVwcmVzZW50aW5nIGEgc2luZ2xlIGNyZWRlbnRpYWwgYW5kIHByb3ZpZGVzIHRocmVlIGJhc2ljIG9wZXJhdGlvbnM6CisgKiBmaWxsIChhY3F1aXJlIGNyZWRlbnRpYWxzIGJ5IGNhbGxpbmcgaGVscGVycyBhbmQvb3IgcHJvbXB0aW5nIHRoZSB1c2VyKSwKKyAqIGFwcHJvdmUgKG1hcmsgYSBjcmVkZW50aWFsIGFzIHN1Y2Nlc3NmdWxseSB1c2VkIHNvIHRoYXQgaXQgY2FuIGJlIHN0b3JlZAorICogZm9yIGxhdGVyIHVzZSksIGFuZCByZWplY3QgKG1hcmsgYSBjcmVkZW50aWFsIGFzIHVuc3VjY2Vzc2Z1bCBzbyB0aGF0IGl0CisgKiBjYW4gYmUgZXJhc2VkIGZyb20gYW55IHBlcnNpc3RlbnQgc3RvcmFnZSkuCisgKgorICogRXhhbXBsZQorICogfn5+fn5+fgorICoKKyAqIFRoZSBleGFtcGxlIGJlbG93IHNob3dzIGhvdyB0aGUgZnVuY3Rpb25zIG9mIHRoZSBjcmVkZW50aWFsIEFQSSBjb3VsZCBiZQorICogdXNlZCB0byBsb2dpbiB0byBhIGZpY3RpdGlvdXMgImZvbyIgc2VydmljZSBvbiBhIHJlbW90ZSBob3N0OgorICoKKyAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKiBpbnQgZm9vX2xvZ2luKHN0cnVjdCBmb29fY29ubmVjdGlvbiAqZikKKyAqIHsKKyAqIAlpbnQgc3RhdHVzOworICogCS8vIENyZWF0ZSBhIGNyZWRlbnRpYWwgd2l0aCBzb21lIGNvbnRleHQ7IHdlIGRvbid0IHlldCBrbm93IHRoZQorICogCS8vIHVzZXJuYW1lIG9yIHBhc3N3b3JkLgorICoKKyAqIHN0cnVjdCBjcmVkZW50aWFsIGMgPSBDUkVERU5USUFMX0lOSVQ7CisgKiBjLnByb3RvY29sID0geHN0cmR1cCgiZm9vIik7CisgKiBjLmhvc3QgPSB4c3RyZHVwKGYtPmhvc3RuYW1lKTsKKyAqCisgKiAvLyBGaWxsIGluIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgZmllbGRzIGJ5IGNvbnRhY3RpbmcKKyAqIC8vIGhlbHBlcnMgYW5kL29yIGFza2luZyB0aGUgdXNlci4gVGhlIGZ1bmN0aW9uIHdpbGwgZGllIGlmIGl0CisgKiAvLyBmYWlscy4KKyAqIGNyZWRlbnRpYWxfZmlsbCgmYyk7CisgKgorICogLy8gT3RoZXJ3aXNlLCB3ZSBoYXZlIGEgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLiBUcnkgdG8gdXNlIGl0LgorICoKKyAqIHN0YXR1cyA9IHNlbmRfZm9vX2xvZ2luKGYsIGMudXNlcm5hbWUsIGMucGFzc3dvcmQpOworICogc3dpdGNoIChzdGF0dXMpIHsKKyAqIGNhc2UgRk9PX09LOgorICogLy8gSXQgd29ya2VkLiBTdG9yZSB0aGUgY3JlZGVudGlhbCBmb3IgbGF0ZXIgdXNlLgorICogY3JlZGVudGlhbF9hY2NlcHQoJmMpOworICogYnJlYWs7CisgKiBjYXNlIEZPT19CQURfTE9HSU46CisgKiAvLyBFcmFzZSB0aGUgY3JlZGVudGlhbCBmcm9tIHN0b3JhZ2Ugc28gd2UgZG9uJ3QgdHJ5IGl0IGFnYWluLgorICogY3JlZGVudGlhbF9yZWplY3QoJmMpOworICogYnJlYWs7CisgKiBkZWZhdWx0OgorICogLy8gU29tZSBvdGhlciBlcnJvciBvY2N1cnJlZC4gV2UgZG9uJ3Qga25vdyBpZiB0aGUKKyAqIC8vIGNyZWRlbnRpYWwgaXMgZ29vZCBvciBiYWQsIHNvIHJlcG9ydCBub3RoaW5nIHRvIHRoZQorICogLy8gY3JlZGVudGlhbCBzdWJzeXN0ZW0uCisgKiB9CisgKgorICogLy8gRnJlZSBhbnkgYXNzb2NpYXRlZCByZXNvdXJjZXMuCisgKiBjcmVkZW50aWFsX2NsZWFyKCZjKTsKKyAqCisgKiByZXR1cm4gc3RhdHVzOworICogfQorICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqLworCisKKy8qKgorICogVGhpcyBzdHJ1Y3QgcmVwcmVzZW50cyBhIHNpbmdsZSB1c2VybmFtZS9wYXNzd29yZCBjb21iaW5hdGlvbgorICogYWxvbmcgd2l0aCBhbnkgYXNzb2NpYXRlZCBjb250ZXh0LiBBbGwgc3RyaW5nIGZpZWxkcyBzaG91bGQgYmUKKyAqIGhlYXAtYWxsb2NhdGVkIChvciBOVUxMIGlmIHRoZXkgYXJlIG5vdCBrbm93biBvciBub3QgYXBwbGljYWJsZSkuCisgKiBUaGUgbWVhbmluZyBvZiB0aGUgaW5kaXZpZHVhbCBjb250ZXh0IGZpZWxkcyBpcyB0aGUgc2FtZSBhcworICogdGhlaXIgY291bnRlcnBhcnRzIGluIHRoZSBoZWxwZXIgcHJvdG9jb2wuCisgKgorICogVGhpcyBzdHJ1Y3Qgc2hvdWxkIGFsd2F5cyBiZSBpbml0aWFsaXplZCB3aXRoIGBDUkVERU5USUFMX0lOSVRgIG9yCisgKiBgY3JlZGVudGlhbF9pbml0YC4KKyAqLwogc3RydWN0IGNyZWRlbnRpYWwgeworCisJLyoqCisJICogQSBgc3RyaW5nX2xpc3RgIG9mIGhlbHBlcnMuIEVhY2ggc3RyaW5nIHNwZWNpZmllcyBhbiBleHRlcm5hbAorCSAqIGhlbHBlciB3aGljaCB3aWxsIGJlIHJ1biwgaW4gb3JkZXIsIHRvIGVpdGhlciBhY3F1aXJlIG9yIHN0b3JlCisJICogY3JlZGVudGlhbHMuIFRoaXMgbGlzdCBpcyBmaWxsZWQtaW4gYnkgdGhlIEFQSSBmdW5jdGlvbnMKKwkgKiBhY2NvcmRpbmcgdG8gdGhlIGNvcnJlc3BvbmRpbmcgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMgYmVmb3JlCisJICogY29uc3VsdGluZyBoZWxwZXJzLCBzbyB0aGVyZSB1c3VhbGx5IGlzIG5vIG5lZWQgZm9yIGEgY2FsbGVyIHRvCisJICogbW9kaWZ5IHRoZSBoZWxwZXJzIGZpZWxkIGF0IGFsbC4KKwkgKi8KIAlzdHJ1Y3Qgc3RyaW5nX2xpc3QgaGVscGVyczsKKwogCXVuc2lnbmVkIGFwcHJvdmVkOjEsCiAJCSBjb25maWd1cmVkOjEsCiAJCSBxdWl0OjEsCi0JCSB1c2VfaHR0cF9wYXRoOjE7CisJCSB1c2VfaHR0cF9wYXRoOjEsCisJCSB1c2VybmFtZV9mcm9tX3Byb3RvOjE7CiAKIAljaGFyICp1c2VybmFtZTsKIAljaGFyICpwYXNzd29yZDsKQEAgLTE5LDE2ICsxMzAsNTIgQEAKIAogI2RlZmluZSBDUkVERU5USUFMX0lOSVQgeyBTVFJJTkdfTElTVF9JTklUX0RVUCB9CiAKKy8qIEluaXRpYWxpemUgYSBjcmVkZW50aWFsIHN0cnVjdHVyZSwgc2V0dGluZyBhbGwgZmllbGRzIHRvIGVtcHR5LiAqLwogdm9pZCBjcmVkZW50aWFsX2luaXQoc3RydWN0IGNyZWRlbnRpYWwgKik7CisKKy8qKgorICogRnJlZSBhbnkgcmVzb3VyY2VzIGFzc29jaWF0ZWQgd2l0aCB0aGUgY3JlZGVudGlhbCBzdHJ1Y3R1cmUsIHJldHVybmluZworICogaXQgdG8gYSBwcmlzdGluZSBpbml0aWFsaXplZCBzdGF0ZS4KKyAqLwogdm9pZCBjcmVkZW50aWFsX2NsZWFyKHN0cnVjdCBjcmVkZW50aWFsICopOwogCisvKioKKyAqIEluc3RydWN0IHRoZSBjcmVkZW50aWFsIHN1YnN5c3RlbSB0byBmaWxsIHRoZSB1c2VybmFtZSBhbmQKKyAqIHBhc3N3b3JkIGZpZWxkcyBvZiB0aGUgcGFzc2VkIGNyZWRlbnRpYWwgc3RydWN0IGJ5IGZpcnN0CisgKiBjb25zdWx0aW5nIGhlbHBlcnMsIHRoZW4gYXNraW5nIHRoZSB1c2VyLiBBZnRlciB0aGlzIGZ1bmN0aW9uCisgKiByZXR1cm5zLCB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIGZpZWxkcyBvZiB0aGUgY3JlZGVudGlhbCBhcmUKKyAqIGd1YXJhbnRlZWQgdG8gYmUgbm9uLU5VTEwuIElmIGFuIGVycm9yIG9jY3VycywgdGhlIGZ1bmN0aW9uIHdpbGwKKyAqIGRpZSgpLgorICovCiB2b2lkIGNyZWRlbnRpYWxfZmlsbChzdHJ1Y3QgY3JlZGVudGlhbCAqKTsKKworLyoqCisgKiBJbmZvcm0gdGhlIGNyZWRlbnRpYWwgc3Vic3lzdGVtIHRoYXQgdGhlIHByb3ZpZGVkIGNyZWRlbnRpYWxzCisgKiB3ZXJlIHN1Y2Nlc3NmdWxseSB1c2VkIGZvciBhdXRoZW50aWNhdGlvbi4gIFRoaXMgd2lsbCBjYXVzZSB0aGUKKyAqIGNyZWRlbnRpYWwgc3Vic3lzdGVtIHRvIG5vdGlmeSBhbnkgaGVscGVycyBvZiB0aGUgYXBwcm92YWwsIHNvCisgKiB0aGF0IHRoZXkgbWF5IHN0b3JlIHRoZSByZXN1bHQgdG8gYmUgdXNlZCBhZ2Fpbi4gIEFueSBlcnJvcnMKKyAqIGZyb20gaGVscGVycyBhcmUgaWdub3JlZC4KKyAqLwogdm9pZCBjcmVkZW50aWFsX2FwcHJvdmUoc3RydWN0IGNyZWRlbnRpYWwgKik7CisKKy8qKgorICogSW5mb3JtIHRoZSBjcmVkZW50aWFsIHN1YnN5c3RlbSB0aGF0IHRoZSBwcm92aWRlZCBjcmVkZW50aWFscworICogaGF2ZSBiZWVuIHJlamVjdGVkLiBUaGlzIHdpbGwgY2F1c2UgdGhlIGNyZWRlbnRpYWwgc3Vic3lzdGVtIHRvCisgKiBub3RpZnkgYW55IGhlbHBlcnMgb2YgdGhlIHJlamVjdGlvbiAod2hpY2ggYWxsb3dzIHRoZW0sIGZvcgorICogZXhhbXBsZSwgdG8gcHVyZ2UgdGhlIGludmFsaWQgY3JlZGVudGlhbHMgZnJvbSBzdG9yYWdlKS4gSXQKKyAqIHdpbGwgYWxzbyBmcmVlKCkgdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZHMgb2YgdGhlCisgKiBjcmVkZW50aWFsIGFuZCBzZXQgdGhlbSB0byBOVUxMIChyZWFkeWluZyB0aGUgY3JlZGVudGlhbCBmb3IKKyAqIGFub3RoZXIgY2FsbCB0byBgY3JlZGVudGlhbF9maWxsYCkuIEFueSBlcnJvcnMgZnJvbSBoZWxwZXJzIGFyZQorICogaWdub3JlZC4KKyAqLwogdm9pZCBjcmVkZW50aWFsX3JlamVjdChzdHJ1Y3QgY3JlZGVudGlhbCAqKTsKIAogaW50IGNyZWRlbnRpYWxfcmVhZChzdHJ1Y3QgY3JlZGVudGlhbCAqLCBGSUxFICopOwogdm9pZCBjcmVkZW50aWFsX3dyaXRlKGNvbnN0IHN0cnVjdCBjcmVkZW50aWFsICosIEZJTEUgKik7CisKKy8qIFBhcnNlIGEgVVJMIGludG8gYnJva2VuLWRvd24gY3JlZGVudGlhbCBmaWVsZHMuICovCiB2b2lkIGNyZWRlbnRpYWxfZnJvbV91cmwoc3RydWN0IGNyZWRlbnRpYWwgKiwgY29uc3QgY2hhciAqdXJsKTsKKwogaW50IGNyZWRlbnRpYWxfbWF0Y2goY29uc3Qgc3RydWN0IGNyZWRlbnRpYWwgKmhhdmUsCiAJCSAgICAgY29uc3Qgc3RydWN0IGNyZWRlbnRpYWwgKndhbnQpOwogCmRpZmYgLS1naXQgYS9jc3VtLWZpbGUuaCBiL2NzdW0tZmlsZS5oCmluZGV4IDNiZjcxODQuLmY5Y2JkMzEgMTAwNjQ0Ci0tLSBhL2NzdW0tZmlsZS5oCisrKyBiL2NzdW0tZmlsZS5oCkBAIC0yNSwyMiArMjUsMzEgQEAKIAlnaXRfaGFzaF9jdHggY3R4OwogfTsKIAotZXh0ZXJuIHZvaWQgaGFzaGZpbGVfY2hlY2twb2ludChzdHJ1Y3QgaGFzaGZpbGUgKiwgc3RydWN0IGhhc2hmaWxlX2NoZWNrcG9pbnQgKik7Ci1leHRlcm4gaW50IGhhc2hmaWxlX3RydW5jYXRlKHN0cnVjdCBoYXNoZmlsZSAqLCBzdHJ1Y3QgaGFzaGZpbGVfY2hlY2twb2ludCAqKTsKK3ZvaWQgaGFzaGZpbGVfY2hlY2twb2ludChzdHJ1Y3QgaGFzaGZpbGUgKiwgc3RydWN0IGhhc2hmaWxlX2NoZWNrcG9pbnQgKik7CitpbnQgaGFzaGZpbGVfdHJ1bmNhdGUoc3RydWN0IGhhc2hmaWxlICosIHN0cnVjdCBoYXNoZmlsZV9jaGVja3BvaW50ICopOwogCiAvKiBmaW5hbGl6ZV9oYXNoZmlsZSBmbGFncyAqLwogI2RlZmluZSBDU1VNX0NMT1NFCQkxCiAjZGVmaW5lIENTVU1fRlNZTkMJCTIKICNkZWZpbmUgQ1NVTV9IQVNIX0lOX1NUUkVBTQk0CiAKLWV4dGVybiBzdHJ1Y3QgaGFzaGZpbGUgKmhhc2hmZChpbnQgZmQsIGNvbnN0IGNoYXIgKm5hbWUpOwotZXh0ZXJuIHN0cnVjdCBoYXNoZmlsZSAqaGFzaGZkX2NoZWNrKGNvbnN0IGNoYXIgKm5hbWUpOwotZXh0ZXJuIHN0cnVjdCBoYXNoZmlsZSAqaGFzaGZkX3Rocm91Z2hwdXQoaW50IGZkLCBjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3QgcHJvZ3Jlc3MgKnRwKTsKLWV4dGVybiBpbnQgZmluYWxpemVfaGFzaGZpbGUoc3RydWN0IGhhc2hmaWxlICosIHVuc2lnbmVkIGNoYXIgKiwgdW5zaWduZWQgaW50KTsKLWV4dGVybiB2b2lkIGhhc2h3cml0ZShzdHJ1Y3QgaGFzaGZpbGUgKiwgY29uc3Qgdm9pZCAqLCB1bnNpZ25lZCBpbnQpOwotZXh0ZXJuIHZvaWQgaGFzaGZsdXNoKHN0cnVjdCBoYXNoZmlsZSAqZik7Ci1leHRlcm4gdm9pZCBjcmMzMl9iZWdpbihzdHJ1Y3QgaGFzaGZpbGUgKik7Ci1leHRlcm4gdWludDMyX3QgY3JjMzJfZW5kKHN0cnVjdCBoYXNoZmlsZSAqKTsKK3N0cnVjdCBoYXNoZmlsZSAqaGFzaGZkKGludCBmZCwgY29uc3QgY2hhciAqbmFtZSk7CitzdHJ1Y3QgaGFzaGZpbGUgKmhhc2hmZF9jaGVjayhjb25zdCBjaGFyICpuYW1lKTsKK3N0cnVjdCBoYXNoZmlsZSAqaGFzaGZkX3Rocm91Z2hwdXQoaW50IGZkLCBjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3QgcHJvZ3Jlc3MgKnRwKTsKK2ludCBmaW5hbGl6ZV9oYXNoZmlsZShzdHJ1Y3QgaGFzaGZpbGUgKiwgdW5zaWduZWQgY2hhciAqLCB1bnNpZ25lZCBpbnQpOwordm9pZCBoYXNod3JpdGUoc3RydWN0IGhhc2hmaWxlICosIGNvbnN0IHZvaWQgKiwgdW5zaWduZWQgaW50KTsKK3ZvaWQgaGFzaGZsdXNoKHN0cnVjdCBoYXNoZmlsZSAqZik7Cit2b2lkIGNyYzMyX2JlZ2luKHN0cnVjdCBoYXNoZmlsZSAqKTsKK3VpbnQzMl90IGNyYzMyX2VuZChzdHJ1Y3QgaGFzaGZpbGUgKik7CisKKy8qCisgKiBSZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMgZmVkIHRvIHRoZSBoYXNoZmlsZSBzbyBmYXIgKGluY2x1ZGluZyBvbmVzCisgKiB0aGF0IGhhdmUgbm90IGJlZW4gd3JpdHRlbiBvdXQgdG8gdGhlIGRlc2NyaXB0b3IgeWV0KS4KKyAqLworc3RhdGljIGlubGluZSBvZmZfdCBoYXNoZmlsZV90b3RhbChzdHJ1Y3QgaGFzaGZpbGUgKmYpCit7CisJcmV0dXJuIGYtPnRvdGFsICsgZi0+b2Zmc2V0OworfQogCiBzdGF0aWMgaW5saW5lIHZvaWQgaGFzaHdyaXRlX3U4KHN0cnVjdCBoYXNoZmlsZSAqZiwgdWludDhfdCBkYXRhKQogewpkaWZmIC0tZ2l0IGEvZGFlbW9uLmMgYi9kYWVtb24uYwppbmRleCA5ZDJlMGQyLi5mZDY2OWVkIDEwMDY0NAotLS0gYS9kYWVtb24uYworKysgYi9kYWVtb24uYwpAQCAtNTk4LDcgKzU5OCw3IEBACiAgKiBSZWFkIHRoZSBob3N0IGFzIHN1cHBsaWVkIGJ5IHRoZSBjbGllbnQgY29ubmVjdGlvbi4KICAqCiAgKiBSZXR1cm5zIGEgcG9pbnRlciB0byB0aGUgY2hhcmFjdGVyIGFmdGVyIHRoZSBOVUwgYnl0ZSB0ZXJtaW5hdGluZyB0aGUgaG9zdAotICogYXJndWVtbnQsIG9yICdleHRyYV9hcmdzJyBpZiB0aGVyZSBpcyBubyBob3N0IGFyZ3VlbW50LgorICogYXJndW1lbnQsIG9yICdleHRyYV9hcmdzJyBpZiB0aGVyZSBpcyBubyBob3N0IGFyZ3VtZW50LgogICovCiBzdGF0aWMgY2hhciAqcGFyc2VfaG9zdF9hcmcoc3RydWN0IGhvc3RpbmZvICpoaSwgY2hhciAqZXh0cmFfYXJncywgaW50IGJ1ZmxlbikKIHsKQEAgLTY1Miw3ICs2NTIsNyBAQAogCQkgKiBzZXJ2aWNlIHRoYXQgd2lsbCBiZSBydW4uCiAJCSAqCiAJCSAqIElmIHRoZXJlIGVuZHMgdXAgYmVpbmcgYSBwYXJ0aWN1bGFyIGFyZyBpbiB0aGUgZnV0dXJlIHRoYXQKLQkJICogZ2l0LWRhZW1vbiBuZWVkcyB0byBwYXJzZSBzcGVjaWZpY2x5IChsaWtlIHRoZSAnaG9zdCcgYXJnKQorCQkgKiBnaXQtZGFlbW9uIG5lZWRzIHRvIHBhcnNlIHNwZWNpZmljYWxseSAobGlrZSB0aGUgJ2hvc3QnIGFyZykKIAkJICogdGhlbiBpdCBjYW4gYmUgcGFyc2VkIGhlcmUgYW5kIG5vdCBhZGRlZCB0byAnZ2l0X3Byb3RvY29sJy4KIAkJICovCiAJCWlmICgqYXJnKSB7CmRpZmYgLS1naXQgYS9kYXRlLmMgYi9kYXRlLmMKaW5kZXggOWJjMTVkZi4uYjBkOWE4NCAxMDA2NDQKLS0tIGEvZGF0ZS5jCisrKyBiL2RhdGUuYwpAQCAtNjQsMzUgKzY0LDI5IEBACiAgKiB0aGluZywgd2hpY2ggbWVhbnMgdGhhdCB0eiAtMDEwMCBpcyBwYXNzZWQgaW4gYXMgdGhlIGludGVnZXIgLTEwMCwKICAqIGV2ZW4gdGhvdWdoIGl0IG1lYW5zICJzaXh0eSBtaW51dGVzIG9mZiIKICAqLwotc3RhdGljIHN0cnVjdCB0bSAqdGltZV90b190bSh0aW1lc3RhbXBfdCB0aW1lLCBpbnQgdHopCitzdGF0aWMgc3RydWN0IHRtICp0aW1lX3RvX3RtKHRpbWVzdGFtcF90IHRpbWUsIGludCB0eiwgc3RydWN0IHRtICp0bSkKIHsKIAl0aW1lX3QgdCA9IGdtX3RpbWVfdCh0aW1lLCB0eik7Ci0JcmV0dXJuIGdtdGltZSgmdCk7CisJcmV0dXJuIGdtdGltZV9yKCZ0LCB0bSk7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgdG0gKnRpbWVfdG9fdG1fbG9jYWwodGltZXN0YW1wX3QgdGltZSkKK3N0YXRpYyBzdHJ1Y3QgdG0gKnRpbWVfdG9fdG1fbG9jYWwodGltZXN0YW1wX3QgdGltZSwgc3RydWN0IHRtICp0bSkKIHsKIAl0aW1lX3QgdCA9IHRpbWU7Ci0JcmV0dXJuIGxvY2FsdGltZSgmdCk7CisJcmV0dXJuIGxvY2FsdGltZV9yKCZ0LCB0bSk7CiB9CiAKIC8qCi0gKiBXaGF0IHZhbHVlIG9mICJ0eiIgd2FzIGluIGVmZmVjdCBiYWNrIHRoZW4gYXQgInRpbWUiIGluIHRoZQotICogbG9jYWwgdGltZXpvbmU/CisgKiBGaWxsIGluIHRoZSBsb2NhbHRpbWUgJ3N0cnVjdCB0bScgZm9yIHRoZSBzdXBwbGllZCB0aW1lLAorICogYW5kIHJldHVybiB0aGUgbG9jYWwgdHouCiAgKi8KLXN0YXRpYyBpbnQgbG9jYWxfdHpvZmZzZXQodGltZXN0YW1wX3QgdGltZSkKK3N0YXRpYyBpbnQgbG9jYWxfdGltZV90em9mZnNldCh0aW1lX3QgdCwgc3RydWN0IHRtICp0bSkKIHsKLQl0aW1lX3QgdCwgdF9sb2NhbDsKLQlzdHJ1Y3QgdG0gdG07CisJdGltZV90IHRfbG9jYWw7CiAJaW50IG9mZnNldCwgZWFzdHdlc3Q7CiAKLQlpZiAoZGF0ZV9vdmVyZmxvd3ModGltZSkpCi0JCWRpZSgiVGltZXN0YW1wIHRvbyBsYXJnZSBmb3IgdGhpcyBzeXN0ZW06ICUiUFJJdGltZSwgdGltZSk7Ci0KLQl0ID0gKHRpbWVfdCl0aW1lOwotCWxvY2FsdGltZV9yKCZ0LCAmdG0pOwotCXRfbG9jYWwgPSB0bV90b190aW1lX3QoJnRtKTsKLQorCWxvY2FsdGltZV9yKCZ0LCB0bSk7CisJdF9sb2NhbCA9IHRtX3RvX3RpbWVfdCh0bSk7CiAJaWYgKHRfbG9jYWwgPT0gLTEpCiAJCXJldHVybiAwOyAvKiBlcnJvcjsganVzdCB1c2UgKzAwMDAgKi8KIAlpZiAodF9sb2NhbCA8IHQpIHsKQEAgLTEwNywxNiArMTAxLDQ0IEBACiAJcmV0dXJuIG9mZnNldCAqIGVhc3R3ZXN0OwogfQogCi12b2lkIHNob3dfZGF0ZV9yZWxhdGl2ZSh0aW1lc3RhbXBfdCB0aW1lLCBpbnQgdHosCi0JCQkgICAgICAgY29uc3Qgc3RydWN0IHRpbWV2YWwgKm5vdywKLQkJCSAgICAgICBzdHJ1Y3Qgc3RyYnVmICp0aW1lYnVmKQorLyoKKyAqIFdoYXQgdmFsdWUgb2YgInR6IiB3YXMgaW4gZWZmZWN0IGJhY2sgdGhlbiBhdCAidGltZSIgaW4gdGhlCisgKiBsb2NhbCB0aW1lem9uZT8KKyAqLworc3RhdGljIGludCBsb2NhbF90em9mZnNldCh0aW1lc3RhbXBfdCB0aW1lKQogeworCXN0cnVjdCB0bSB0bTsKKworCWlmIChkYXRlX292ZXJmbG93cyh0aW1lKSkKKwkJZGllKCJUaW1lc3RhbXAgdG9vIGxhcmdlIGZvciB0aGlzIHN5c3RlbTogJSJQUkl0aW1lLCB0aW1lKTsKKworCXJldHVybiBsb2NhbF90aW1lX3R6b2Zmc2V0KCh0aW1lX3QpdGltZSwgJnRtKTsKK30KKworc3RhdGljIHZvaWQgZ2V0X3RpbWUoc3RydWN0IHRpbWV2YWwgKm5vdykKK3sKKwljb25zdCBjaGFyICp4OworCisJeCA9IGdldGVudigiR0lUX1RFU1RfREFURV9OT1ciKTsKKwlpZiAoeCkgeworCQlub3ctPnR2X3NlYyA9IGF0b2koeCk7CisJCW5vdy0+dHZfdXNlYyA9IDA7CisJfQorCWVsc2UKKwkJZ2V0dGltZW9mZGF5KG5vdywgTlVMTCk7Cit9CisKK3ZvaWQgc2hvd19kYXRlX3JlbGF0aXZlKHRpbWVzdGFtcF90IHRpbWUsIHN0cnVjdCBzdHJidWYgKnRpbWVidWYpCit7CisJc3RydWN0IHRpbWV2YWwgbm93OwogCXRpbWVzdGFtcF90IGRpZmY7Ci0JaWYgKG5vdy0+dHZfc2VjIDwgdGltZSkgeworCisJZ2V0X3RpbWUoJm5vdyk7CisJaWYgKG5vdy50dl9zZWMgPCB0aW1lKSB7CiAJCXN0cmJ1Zl9hZGRzdHIodGltZWJ1ZiwgXygiaW4gdGhlIGZ1dHVyZSIpKTsKIAkJcmV0dXJuOwogCX0KLQlkaWZmID0gbm93LT50dl9zZWMgLSB0aW1lOworCWRpZmYgPSBub3cudHZfc2VjIC0gdGltZTsKIAlpZiAoZGlmZiA8IDkwKSB7CiAJCXN0cmJ1Zl9hZGRmKHRpbWVidWYsCiAJCQkgUV8oIiUiUFJJdGltZSIgc2Vjb25kIGFnbyIsICIlIlBSSXRpbWUiIHNlY29uZHMgYWdvIiwgZGlmZiksIGRpZmYpOwpAQCAtMTkxLDkgKzIxMyw3OSBAQAogCXJldHVybiAmbW9kZTsKIH0KIAorc3RhdGljIHZvaWQgc2hvd19kYXRlX25vcm1hbChzdHJ1Y3Qgc3RyYnVmICpidWYsIHRpbWVzdGFtcF90IHRpbWUsIHN0cnVjdCB0bSAqdG0sIGludCB0eiwgc3RydWN0IHRtICpodW1hbl90bSwgaW50IGh1bWFuX3R6LCBpbnQgbG9jYWwpCit7CisJc3RydWN0IHsKKwkJdW5zaWduZWQgaW50CXllYXI6MSwKKwkJCQlkYXRlOjEsCisJCQkJd2RheToxLAorCQkJCXRpbWU6MSwKKwkJCQlzZWNvbmRzOjEsCisJCQkJdHo6MTsKKwl9IGhpZGUgPSB7IDAgfTsKKworCWhpZGUudHogPSBsb2NhbCB8fCB0eiA9PSBodW1hbl90ejsKKwloaWRlLnllYXIgPSB0bS0+dG1feWVhciA9PSBodW1hbl90bS0+dG1feWVhcjsKKwlpZiAoaGlkZS55ZWFyKSB7CisJCWlmICh0bS0+dG1fbW9uID09IGh1bWFuX3RtLT50bV9tb24pIHsKKwkJCWlmICh0bS0+dG1fbWRheSA+IGh1bWFuX3RtLT50bV9tZGF5KSB7CisJCQkJLyogRnV0dXJlIGRhdGU6IHRoaW5rIHRpbWV6b25lcyAqLworCQkJfSBlbHNlIGlmICh0bS0+dG1fbWRheSA9PSBodW1hbl90bS0+dG1fbWRheSkgeworCQkJCWhpZGUuZGF0ZSA9IGhpZGUud2RheSA9IDE7CisJCQl9IGVsc2UgaWYgKHRtLT50bV9tZGF5ICsgNSA+IGh1bWFuX3RtLT50bV9tZGF5KSB7CisJCQkJLyogTGVhdmUganVzdCB3ZWVrZGF5IGlmIGl0IHdhcyBhIGZldyBkYXlzIGFnbyAqLworCQkJCWhpZGUuZGF0ZSA9IDE7CisJCQl9CisJCX0KKwl9CisKKwkvKiBTaG93ICJ0b2RheSIgdGltZXMgYXMganVzdCByZWxhdGl2ZSB0aW1lcyAqLworCWlmIChoaWRlLndkYXkpIHsKKwkJc2hvd19kYXRlX3JlbGF0aXZlKHRpbWUsIGJ1Zik7CisJCXJldHVybjsKKwl9CisKKwkvKgorCSAqIEFsd2F5cyBoaWRlIHNlY29uZHMgZm9yIGh1bWFuLXJlYWRhYmxlLgorCSAqIEhpZGUgdGltZXpvbmUgaWYgc2hvd2luZyBkYXRlLgorCSAqIEhpZGUgd2Vla2RheSBhbmQgdGltZSBpZiBzaG93aW5nIHllYXIuCisJICoKKwkgKiBUaGUgbG9naWMgaGVyZSBpcyB0d28tZm9sZDoKKwkgKiAgKGEpIG9ubHkgc2hvdyBkZXRhaWxzIHdoZW4gcmVjZW50IGVub3VnaCB0byBtYXR0ZXIKKwkgKiAgKGIpIGtlZXAgdGhlIG1heGltdW0gbGVuZ3RoICJzaW1pbGFyIiwgYW5kIGluIGNoZWNrCisJICovCisJaWYgKGh1bWFuX3RtLT50bV95ZWFyKSB7CisJCWhpZGUuc2Vjb25kcyA9IDE7CisJCWhpZGUudHogfD0gIWhpZGUuZGF0ZTsKKwkJaGlkZS53ZGF5ID0gaGlkZS50aW1lID0gIWhpZGUueWVhcjsKKwl9CisKKwlpZiAoIWhpZGUud2RheSkKKwkJc3RyYnVmX2FkZGYoYnVmLCAiJS4zcyAiLCB3ZWVrZGF5X25hbWVzW3RtLT50bV93ZGF5XSk7CisJaWYgKCFoaWRlLmRhdGUpCisJCXN0cmJ1Zl9hZGRmKGJ1ZiwgIiUuM3MgJWQgIiwgbW9udGhfbmFtZXNbdG0tPnRtX21vbl0sIHRtLT50bV9tZGF5KTsKKworCS8qIERvIHdlIHdhbnQgQU0vUE0gZGVwZW5kaW5nIG9uIGxvY2FsZT8gKi8KKwlpZiAoIWhpZGUudGltZSkgeworCQlzdHJidWZfYWRkZihidWYsICIlMDJkOiUwMmQiLCB0bS0+dG1faG91ciwgdG0tPnRtX21pbik7CisJCWlmICghaGlkZS5zZWNvbmRzKQorCQkJc3RyYnVmX2FkZGYoYnVmLCAiOiUwMmQiLCB0bS0+dG1fc2VjKTsKKwl9IGVsc2UKKwkJc3RyYnVmX3J0cmltKGJ1Zik7CisKKwlpZiAoIWhpZGUueWVhcikKKwkJc3RyYnVmX2FkZGYoYnVmLCAiICVkIiwgdG0tPnRtX3llYXIgKyAxOTAwKTsKKworCWlmICghaGlkZS50eikKKwkJc3RyYnVmX2FkZGYoYnVmLCAiICUrMDVkIiwgdHopOworfQorCiBjb25zdCBjaGFyICpzaG93X2RhdGUodGltZXN0YW1wX3QgdGltZSwgaW50IHR6LCBjb25zdCBzdHJ1Y3QgZGF0ZV9tb2RlICptb2RlKQogewogCXN0cnVjdCB0bSAqdG07CisJc3RydWN0IHRtIHRtYnVmID0geyAwIH07CisJc3RydWN0IHRtIGh1bWFuX3RtID0geyAwIH07CisJaW50IGh1bWFuX3R6ID0gLTE7CiAJc3RhdGljIHN0cnVjdCBzdHJidWYgdGltZWJ1ZiA9IFNUUkJVRl9JTklUOwogCiAJaWYgKG1vZGUtPnR5cGUgPT0gREFURV9VTklYKSB7CkBAIC0yMDIsNiArMjk0LDE1IEBACiAJCXJldHVybiB0aW1lYnVmLmJ1ZjsKIAl9CiAKKwlpZiAobW9kZS0+dHlwZSA9PSBEQVRFX0hVTUFOKSB7CisJCXN0cnVjdCB0aW1ldmFsIG5vdzsKKworCQlnZXRfdGltZSgmbm93KTsKKworCQkvKiBGaWxsIGluIHRoZSBkYXRhIGZvciAiY3VycmVudCB0aW1lIiBpbiBodW1hbl90eiBhbmQgaHVtYW5fdG0gKi8KKwkJaHVtYW5fdHogPSBsb2NhbF90aW1lX3R6b2Zmc2V0KG5vdy50dl9zZWMsICZodW1hbl90bSk7CisJfQorCiAJaWYgKG1vZGUtPmxvY2FsKQogCQl0eiA9IGxvY2FsX3R6b2Zmc2V0KHRpbWUpOwogCkBAIC0yMTIsMjAgKzMxMywxNyBAQAogCX0KIAogCWlmIChtb2RlLT50eXBlID09IERBVEVfUkVMQVRJVkUpIHsKLQkJc3RydWN0IHRpbWV2YWwgbm93OwotCiAJCXN0cmJ1Zl9yZXNldCgmdGltZWJ1Zik7Ci0JCWdldHRpbWVvZmRheSgmbm93LCBOVUxMKTsKLQkJc2hvd19kYXRlX3JlbGF0aXZlKHRpbWUsIHR6LCAmbm93LCAmdGltZWJ1Zik7CisJCXNob3dfZGF0ZV9yZWxhdGl2ZSh0aW1lLCAmdGltZWJ1Zik7CiAJCXJldHVybiB0aW1lYnVmLmJ1ZjsKIAl9CiAKIAlpZiAobW9kZS0+bG9jYWwpCi0JCXRtID0gdGltZV90b190bV9sb2NhbCh0aW1lKTsKKwkJdG0gPSB0aW1lX3RvX3RtX2xvY2FsKHRpbWUsICZ0bWJ1Zik7CiAJZWxzZQotCQl0bSA9IHRpbWVfdG9fdG0odGltZSwgdHopOworCQl0bSA9IHRpbWVfdG9fdG0odGltZSwgdHosICZ0bWJ1Zik7CiAJaWYgKCF0bSkgewotCQl0bSA9IHRpbWVfdG9fdG0oMCwgMCk7CisJCXRtID0gdGltZV90b190bSgwLCAwLCAmdG1idWYpOwogCQl0eiA9IDA7CiAJfQogCkBAIC0yNTgsMTQgKzM1Niw3IEBACiAJCXN0cmJ1Zl9hZGRmdGltZSgmdGltZWJ1ZiwgbW9kZS0+c3RyZnRpbWVfZm10LCB0bSwgdHosCiAJCQkJIW1vZGUtPmxvY2FsKTsKIAllbHNlCi0JCXN0cmJ1Zl9hZGRmKCZ0aW1lYnVmLCAiJS4zcyAlLjNzICVkICUwMmQ6JTAyZDolMDJkICVkJWMlKzA1ZCIsCi0JCQkJd2Vla2RheV9uYW1lc1t0bS0+dG1fd2RheV0sCi0JCQkJbW9udGhfbmFtZXNbdG0tPnRtX21vbl0sCi0JCQkJdG0tPnRtX21kYXksCi0JCQkJdG0tPnRtX2hvdXIsIHRtLT50bV9taW4sIHRtLT50bV9zZWMsCi0JCQkJdG0tPnRtX3llYXIgKyAxOTAwLAotCQkJCW1vZGUtPmxvY2FsID8gMCA6ICcgJywKLQkJCQl0eik7CisJCXNob3dfZGF0ZV9ub3JtYWwoJnRpbWVidWYsIHRpbWUsIHRtLCB0eiwgJmh1bWFuX3RtLCBodW1hbl90eiwgbW9kZS0+bG9jYWwpOwogCXJldHVybiB0aW1lYnVmLmJ1ZjsKIH0KIApAQCAtODE5LDEyICs5MTAsMTggQEAKIAkJcmV0dXJuIERBVEVfU0hPUlQ7CiAJaWYgKHNraXBfcHJlZml4KGZvcm1hdCwgImRlZmF1bHQiLCBlbmQpKQogCQlyZXR1cm4gREFURV9OT1JNQUw7CisJaWYgKHNraXBfcHJlZml4KGZvcm1hdCwgImh1bWFuIiwgZW5kKSkKKwkJcmV0dXJuIERBVEVfSFVNQU47CiAJaWYgKHNraXBfcHJlZml4KGZvcm1hdCwgInJhdyIsIGVuZCkpCiAJCXJldHVybiBEQVRFX1JBVzsKIAlpZiAoc2tpcF9wcmVmaXgoZm9ybWF0LCAidW5peCIsIGVuZCkpCiAJCXJldHVybiBEQVRFX1VOSVg7CiAJaWYgKHNraXBfcHJlZml4KGZvcm1hdCwgImZvcm1hdCIsIGVuZCkpCiAJCXJldHVybiBEQVRFX1NUUkZUSU1FOworCS8qCisJICogUGxlYXNlIHVwZGF0ZSAkX19naXRfbG9nX2RhdGVfZm9ybWF0cyBpbgorCSAqIGdpdC1jb21wbGV0aW9uLmJhc2ggd2hlbiB5b3UgYWRkIG5ldyBmb3JtYXRzLgorCSAqLwogCiAJZGllKCJ1bmtub3duIGRhdGUgZm9ybWF0ICVzIiwgZm9ybWF0KTsKIH0KQEAgLTgzMyw2ICs5MzAsMTQgQEAKIHsKIAljb25zdCBjaGFyICpwOwogCisJLyogImF1dG86Zm9vIiBpcyAiaWYgdHR5L3BhZ2VyLCB0aGVuIGZvbywgb3RoZXJ3aXNlIG5vcm1hbCIgKi8KKwlpZiAoc2tpcF9wcmVmaXgoZm9ybWF0LCAiYXV0bzoiLCAmcCkpIHsKKwkJaWYgKGlzYXR0eSgxKSB8fCBwYWdlcl9pbl91c2UoKSkKKwkJCWZvcm1hdCA9IHA7CisJCWVsc2UKKwkJCWZvcm1hdCA9ICJkZWZhdWx0IjsKKwl9CisKIAkvKiBoaXN0b3JpY2FsIGFsaWFzICovCiAJaWYgKCFzdHJjbXAoZm9ybWF0LCAibG9jYWwiKSkKIAkJZm9ybWF0ID0gImRlZmF1bHQtbG9jYWwiOwpAQCAtODU1LDEwICs5NjAsMTEgQEAKIHsKIAl0aW1lX3Qgbm93OwogCWludCBvZmZzZXQ7CisJc3RydWN0IHRtIHRtID0geyAwIH07CiAKIAl0aW1lKCZub3cpOwogCi0Jb2Zmc2V0ID0gdG1fdG9fdGltZV90KGxvY2FsdGltZSgmbm93KSkgLSBub3c7CisJb2Zmc2V0ID0gdG1fdG9fdGltZV90KGxvY2FsdGltZV9yKCZub3csICZ0bSkpIC0gbm93OwogCW9mZnNldCAvPSA2MDsKIAogCWRhdGVfc3RyaW5nKG5vdywgb2Zmc2V0LCBvdXQpOwpAQCAtMTE4MCwxNSArMTI4NiwxOCBAQAogCXJldHVybiAodGltZXN0YW1wX3QpdXBkYXRlX3RtKCZ0bSwgJm5vdywgMCk7CiB9CiAKLXRpbWVzdGFtcF90IGFwcHJveGlkYXRlX3JlbGF0aXZlKGNvbnN0IGNoYXIgKmRhdGUsIGNvbnN0IHN0cnVjdCB0aW1ldmFsICp0dikKK3RpbWVzdGFtcF90IGFwcHJveGlkYXRlX3JlbGF0aXZlKGNvbnN0IGNoYXIgKmRhdGUpCiB7CisJc3RydWN0IHRpbWV2YWwgdHY7CiAJdGltZXN0YW1wX3QgdGltZXN0YW1wOwogCWludCBvZmZzZXQ7CiAJaW50IGVycm9ycyA9IDA7CiAKIAlpZiAoIXBhcnNlX2RhdGVfYmFzaWMoZGF0ZSwgJnRpbWVzdGFtcCwgJm9mZnNldCkpCiAJCXJldHVybiB0aW1lc3RhbXA7Ci0JcmV0dXJuIGFwcHJveGlkYXRlX3N0cihkYXRlLCB0diwgJmVycm9ycyk7CisKKwlnZXRfdGltZSgmdHYpOworCXJldHVybiBhcHByb3hpZGF0ZV9zdHIoZGF0ZSwgKGNvbnN0IHN0cnVjdCB0aW1ldmFsICopICZ0diwgJmVycm9ycyk7CiB9CiAKIHRpbWVzdGFtcF90IGFwcHJveGlkYXRlX2NhcmVmdWwoY29uc3QgY2hhciAqZGF0ZSwgaW50ICplcnJvcl9yZXQpCkBAIC0xMjA1LDcgKzEzMTQsNyBAQAogCQlyZXR1cm4gdGltZXN0YW1wOwogCX0KIAotCWdldHRpbWVvZmRheSgmdHYsIE5VTEwpOworCWdldF90aW1lKCZ0dik7CiAJcmV0dXJuIGFwcHJveGlkYXRlX3N0cihkYXRlLCAmdHYsIGVycm9yX3JldCk7CiB9CiAKZGlmZiAtLWdpdCBhL2RlY29yYXRlLmMgYi9kZWNvcmF0ZS5jCmluZGV4IGRlMzEzMzEuLmE2MDViMWIgMTAwNjQ0Ci0tLSBhL2RlY29yYXRlLmMKKysrIGIvZGVjb3JhdGUuYwpAQCAtOCw3ICs4LDcgQEAKIAogc3RhdGljIHVuc2lnbmVkIGludCBoYXNoX29iaihjb25zdCBzdHJ1Y3Qgb2JqZWN0ICpvYmosIHVuc2lnbmVkIGludCBuKQogewotCXJldHVybiBzaGExaGFzaChvYmotPm9pZC5oYXNoKSAlIG47CisJcmV0dXJuIG9pZGhhc2goJm9iai0+b2lkKSAlIG47CiB9CiAKIHN0YXRpYyB2b2lkICppbnNlcnRfZGVjb3JhdGlvbihzdHJ1Y3QgZGVjb3JhdGlvbiAqbiwgY29uc3Qgc3RydWN0IG9iamVjdCAqYmFzZSwgdm9pZCAqZGVjb3JhdGlvbikKZGlmZiAtLWdpdCBhL2RlY29yYXRlLmggYi9kZWNvcmF0ZS5oCmluZGV4IDkwMTRjMWUuLmVlNDNkZWUgMTAwNjQ0Ci0tLSBhL2RlY29yYXRlLmgKKysrIGIvZGVjb3JhdGUuaApAQCAtNTAsMTIgKzUwLDEyIEBACiAgKiBOVUxMKSwgcmV0dXJuaW5nIHRoZSBwcmV2aW91c2x5IGFzc29jaWF0ZWQgcG9pbnRlci4gSWYgdGhlcmUgaXMgbm8gcHJldmlvdXMKICAqIGFzc29jaWF0aW9uLCB0aGlzIGZ1bmN0aW9uIHJldHVybnMgTlVMTC4KICAqLwotZXh0ZXJuIHZvaWQgKmFkZF9kZWNvcmF0aW9uKHN0cnVjdCBkZWNvcmF0aW9uICpuLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0ICpvYmosIHZvaWQgKmRlY29yYXRpb24pOwordm9pZCAqYWRkX2RlY29yYXRpb24oc3RydWN0IGRlY29yYXRpb24gKm4sIGNvbnN0IHN0cnVjdCBvYmplY3QgKm9iaiwgdm9pZCAqZGVjb3JhdGlvbik7CiAKIC8qCiAgKiBSZXR1cm4gdGhlIHBvaW50ZXIgYXNzb2NpYXRlZCB0byB0aGUgZ2l2ZW4gb2JqZWN0LiBJZiB0aGVyZSBpcyBubwogICogYXNzb2NpYXRpb24sIHRoaXMgZnVuY3Rpb24gcmV0dXJucyBOVUxMLgogICovCi1leHRlcm4gdm9pZCAqbG9va3VwX2RlY29yYXRpb24oc3RydWN0IGRlY29yYXRpb24gKm4sIGNvbnN0IHN0cnVjdCBvYmplY3QgKm9iaik7Cit2b2lkICpsb29rdXBfZGVjb3JhdGlvbihzdHJ1Y3QgZGVjb3JhdGlvbiAqbiwgY29uc3Qgc3RydWN0IG9iamVjdCAqb2JqKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9kZWx0YS1pc2xhbmRzLmMgYi9kZWx0YS1pc2xhbmRzLmMKaW5kZXggOGU1MDE4ZS4uMDlkYmQzYyAxMDA2NDQKLS0tIGEvZGVsdGEtaXNsYW5kcy5jCisrKyBiL2RlbHRhLWlzbGFuZHMuYwpAQCAtMjIsNyArMjIsNyBAQAogCiBLSEFTSF9JTklUKHN0ciwgY29uc3QgY2hhciAqLCB2b2lkICosIDEsIGtoX3N0cl9oYXNoX2Z1bmMsIGtoX3N0cl9oYXNoX2VxdWFsKQogCi1zdGF0aWMga2hhc2hfc2hhMSAqaXNsYW5kX21hcmtzOworc3RhdGljIGtoX29pZF9tYXBfdCAqaXNsYW5kX21hcmtzOwogc3RhdGljIHVuc2lnbmVkIGlzbGFuZF9jb3VudGVyOwogc3RhdGljIHVuc2lnbmVkIGlzbGFuZF9jb3VudGVyX2NvcmU7CiAKQEAgLTEwNSw3ICsxMDUsNyBAQAogCSAqIElmIHdlIGRvbid0IGhhdmUgYSBiaXRtYXAgZm9yIHRoZSB0YXJnZXQsIHdlIGNhbiBkZWx0YSBpdAogCSAqIGFnYWluc3QgYW55dGhpbmcgLS0gaXQncyBub3QgYW4gaW1wb3J0YW50IG9iamVjdAogCSAqLwotCXRyZ19wb3MgPSBraF9nZXRfc2hhMShpc2xhbmRfbWFya3MsIHRyZ19vaWQtPmhhc2gpOworCXRyZ19wb3MgPSBraF9nZXRfb2lkX21hcChpc2xhbmRfbWFya3MsICp0cmdfb2lkKTsKIAlpZiAodHJnX3BvcyA+PSBraF9lbmQoaXNsYW5kX21hcmtzKSkKIAkJcmV0dXJuIDE7CiAKQEAgLTExMyw3ICsxMTMsNyBAQAogCSAqIGlmIHRoZSBzb3VyY2UgKG91ciBkZWx0YSBiYXNlKSBkb2Vzbid0IGhhdmUgYSBiaXRtYXAsCiAJICogd2UgZG9uJ3Qgd2FudCB0byBiYXNlIGFueSBkZWx0YXMgb24gaXQhCiAJICovCi0Jc3JjX3BvcyA9IGtoX2dldF9zaGExKGlzbGFuZF9tYXJrcywgc3JjX29pZC0+aGFzaCk7CisJc3JjX3BvcyA9IGtoX2dldF9vaWRfbWFwKGlzbGFuZF9tYXJrcywgKnNyY19vaWQpOwogCWlmIChzcmNfcG9zID49IGtoX2VuZChpc2xhbmRfbWFya3MpKQogCQlyZXR1cm4gMDsKIApAQCAtMTI5LDExICsxMjksMTEgQEAKIAlpZiAoIWlzbGFuZF9tYXJrcykKIAkJcmV0dXJuIDA7CiAKLQlhX3BvcyA9IGtoX2dldF9zaGExKGlzbGFuZF9tYXJrcywgYS0+aGFzaCk7CisJYV9wb3MgPSBraF9nZXRfb2lkX21hcChpc2xhbmRfbWFya3MsICphKTsKIAlpZiAoYV9wb3MgPCBraF9lbmQoaXNsYW5kX21hcmtzKSkKIAkJYV9iaXRtYXAgPSBraF92YWx1ZShpc2xhbmRfbWFya3MsIGFfcG9zKTsKIAotCWJfcG9zID0ga2hfZ2V0X3NoYTEoaXNsYW5kX21hcmtzLCBiLT5oYXNoKTsKKwliX3BvcyA9IGtoX2dldF9vaWRfbWFwKGlzbGFuZF9tYXJrcywgKmIpOwogCWlmIChiX3BvcyA8IGtoX2VuZChpc2xhbmRfbWFya3MpKQogCQliX2JpdG1hcCA9IGtoX3ZhbHVlKGlzbGFuZF9tYXJrcywgYl9wb3MpOwogCkBAIC0xNTQsNyArMTU0LDcgQEAKIAlraGl0ZXJfdCBwb3M7CiAJaW50IGhhc2hfcmV0OwogCi0JcG9zID0ga2hfcHV0X3NoYTEoaXNsYW5kX21hcmtzLCBvYmotPm9pZC5oYXNoLCAmaGFzaF9yZXQpOworCXBvcyA9IGtoX3B1dF9vaWRfbWFwKGlzbGFuZF9tYXJrcywgb2JqLT5vaWQsICZoYXNoX3JldCk7CiAJaWYgKGhhc2hfcmV0KQogCQlraF92YWx1ZShpc2xhbmRfbWFya3MsIHBvcykgPSBpc2xhbmRfYml0bWFwX25ldyhOVUxMKTsKIApAQCAtMTY3LDcgKzE2Nyw3IEBACiAJa2hpdGVyX3QgcG9zOwogCWludCBoYXNoX3JldDsKIAotCXBvcyA9IGtoX3B1dF9zaGExKGlzbGFuZF9tYXJrcywgb2JqLT5vaWQuaGFzaCwgJmhhc2hfcmV0KTsKKwlwb3MgPSBraF9wdXRfb2lkX21hcChpc2xhbmRfbWFya3MsIG9iai0+b2lkLCAmaGFzaF9yZXQpOwogCWlmIChoYXNoX3JldCkgewogCQkvKgogCQkgKiBXZSBkb24ndCBoYXZlIG9uZSB5ZXQ7IG1ha2UgYSBjb3B5LW9uLXdyaXRlIG9mIHRoZQpAQCAtMTkwLDEzICsxOTAsMTUgQEAKIAlpc2xhbmRfYml0bWFwX29yKGIsIG1hcmtzKTsKIH0KIAotc3RhdGljIHZvaWQgbWFya19yZW1vdGVfaXNsYW5kXzEoc3RydWN0IHJlbW90ZV9pc2xhbmQgKnJsLCBpbnQgaXNfY29yZV9pc2xhbmQpCitzdGF0aWMgdm9pZCBtYXJrX3JlbW90ZV9pc2xhbmRfMShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgc3RydWN0IHJlbW90ZV9pc2xhbmQgKnJsLAorCQkJCSBpbnQgaXNfY29yZV9pc2xhbmQpCiB7CiAJdWludDMyX3QgaTsKIAogCWZvciAoaSA9IDA7IGkgPCBybC0+b2lkcy5ucjsgKytpKSB7CiAJCXN0cnVjdCBpc2xhbmRfYml0bWFwICptYXJrczsKLQkJc3RydWN0IG9iamVjdCAqb2JqID0gcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCAmcmwtPm9pZHMub2lkW2ldKTsKKwkJc3RydWN0IG9iamVjdCAqb2JqID0gcGFyc2Vfb2JqZWN0KHIsICZybC0+b2lkcy5vaWRbaV0pOwogCiAJCWlmICghb2JqKQogCQkJY29udGludWU7CkBAIC0yMTEsNyArMjEzLDcgQEAKIAkJd2hpbGUgKG9iaiAmJiBvYmotPnR5cGUgPT0gT0JKX1RBRykgewogCQkJb2JqID0gKChzdHJ1Y3QgdGFnICopb2JqKS0+dGFnZ2VkOwogCQkJaWYgKG9iaikgewotCQkJCXBhcnNlX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgJm9iai0+b2lkKTsKKwkJCQlwYXJzZV9vYmplY3QociwgJm9iai0+b2lkKTsKIAkJCQltYXJrcyA9IGNyZWF0ZV9vcl9nZXRfaXNsYW5kX21hcmtzKG9iaik7CiAJCQkJaXNsYW5kX2JpdG1hcF9zZXQobWFya3MsIGlzbGFuZF9jb3VudGVyKTsKIAkJCX0KQEAgLTIzNyw3ICsyMzksOSBAQAogCXJldHVybiB0b2RvX2EtPmRlcHRoIC0gdG9kb19iLT5kZXB0aDsKIH0KIAotdm9pZCByZXNvbHZlX3RyZWVfaXNsYW5kcyhpbnQgcHJvZ3Jlc3MsIHN0cnVjdCBwYWNraW5nX2RhdGEgKnRvX3BhY2spCit2b2lkIHJlc29sdmVfdHJlZV9pc2xhbmRzKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICBpbnQgcHJvZ3Jlc3MsCisJCQkgIHN0cnVjdCBwYWNraW5nX2RhdGEgKnRvX3BhY2spCiB7CiAJc3RydWN0IHByb2dyZXNzICpwcm9ncmVzc19zdGF0ZSA9IE5VTEw7CiAJc3RydWN0IHRyZWVfaXNsYW5kc190b2RvICp0b2RvOwpAQCAtMjc1LDEzICsyNzksMTMgQEAKIAkJc3RydWN0IG5hbWVfZW50cnkgZW50cnk7CiAJCWtoaXRlcl90IHBvczsKIAotCQlwb3MgPSBraF9nZXRfc2hhMShpc2xhbmRfbWFya3MsIGVudC0+aWR4Lm9pZC5oYXNoKTsKKwkJcG9zID0ga2hfZ2V0X29pZF9tYXAoaXNsYW5kX21hcmtzLCBlbnQtPmlkeC5vaWQpOwogCQlpZiAocG9zID49IGtoX2VuZChpc2xhbmRfbWFya3MpKQogCQkJY29udGludWU7CiAKIAkJcm9vdF9tYXJrcyA9IGtoX3ZhbHVlKGlzbGFuZF9tYXJrcywgcG9zKTsKIAotCQl0cmVlID0gbG9va3VwX3RyZWUodGhlX3JlcG9zaXRvcnksICZlbnQtPmlkeC5vaWQpOworCQl0cmVlID0gbG9va3VwX3RyZWUociwgJmVudC0+aWR4Lm9pZCk7CiAJCWlmICghdHJlZSB8fCBwYXJzZV90cmVlKHRyZWUpIDwgMCkKIAkJCWRpZShfKCJiYWQgdHJlZSBvYmplY3QgJXMiKSwgb2lkX3RvX2hleCgmZW50LT5pZHgub2lkKSk7CiAKQEAgLTI5Miw3ICsyOTYsNyBAQAogCQkJaWYgKFNfSVNHSVRMSU5LKGVudHJ5Lm1vZGUpKQogCQkJCWNvbnRpbnVlOwogCi0JCQlvYmogPSBsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBlbnRyeS5vaWQtPmhhc2gpOworCQkJb2JqID0gbG9va3VwX29iamVjdChyLCAmZW50cnkub2lkKTsKIAkJCWlmICghb2JqKQogCQkJCWNvbnRpbnVlOwogCkBAIC00MTUsNyArNDE5LDcgQEAKIAlyZXR1cm4gTlVMTDsKIH0KIAotc3RhdGljIHZvaWQgZGVkdXBsaWNhdGVfaXNsYW5kcyh2b2lkKQorc3RhdGljIHZvaWQgZGVkdXBsaWNhdGVfaXNsYW5kcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqcikKIHsKIAlzdHJ1Y3QgcmVtb3RlX2lzbGFuZCAqaXNsYW5kLCAqY29yZSA9IE5VTEwsICoqbGlzdDsKIAl1bnNpZ25lZCBpbnQgaXNsYW5kX2NvdW50LCBkc3QsIHNyYywgcmVmLCBpID0gMDsKQEAgLTQ0NCwyNyArNDQ4LDI4IEBACiAJY29yZSA9IGdldF9jb3JlX2lzbGFuZCgpOwogCiAJZm9yIChpID0gMDsgaSA8IGlzbGFuZF9jb3VudDsgKytpKSB7Ci0JCW1hcmtfcmVtb3RlX2lzbGFuZF8xKGxpc3RbaV0sIGNvcmUgJiYgbGlzdFtpXS0+aGFzaCA9PSBjb3JlLT5oYXNoKTsKKwkJbWFya19yZW1vdGVfaXNsYW5kXzEociwgbGlzdFtpXSwgY29yZSAmJiBsaXN0W2ldLT5oYXNoID09IGNvcmUtPmhhc2gpOwogCX0KIAogCWZyZWUobGlzdCk7CiB9CiAKLXZvaWQgbG9hZF9kZWx0YV9pc2xhbmRzKHZvaWQpCit2b2lkIGxvYWRfZGVsdGFfaXNsYW5kcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgaW50IHByb2dyZXNzKQogewotCWlzbGFuZF9tYXJrcyA9IGtoX2luaXRfc2hhMSgpOworCWlzbGFuZF9tYXJrcyA9IGtoX2luaXRfb2lkX21hcCgpOwogCXJlbW90ZV9pc2xhbmRzID0ga2hfaW5pdF9zdHIoKTsKIAogCWdpdF9jb25maWcoaXNsYW5kX2NvbmZpZ19jYWxsYmFjaywgTlVMTCk7CiAJZm9yX2VhY2hfcmVmKGZpbmRfaXNsYW5kX2Zvcl9yZWYsIE5VTEwpOwotCWRlZHVwbGljYXRlX2lzbGFuZHMoKTsKKwlkZWR1cGxpY2F0ZV9pc2xhbmRzKHIpOwogCi0JZnByaW50ZihzdGRlcnIsIF8oIk1hcmtlZCAlZCBpc2xhbmRzLCBkb25lLlxuIiksIGlzbGFuZF9jb3VudGVyKTsKKwlpZiAocHJvZ3Jlc3MpCisJCWZwcmludGYoc3RkZXJyLCBfKCJNYXJrZWQgJWQgaXNsYW5kcywgZG9uZS5cbiIpLCBpc2xhbmRfY291bnRlcik7CiB9CiAKIHZvaWQgcHJvcGFnYXRlX2lzbGFuZF9tYXJrcyhzdHJ1Y3QgY29tbWl0ICpjb21taXQpCiB7Ci0Ja2hpdGVyX3QgcG9zID0ga2hfZ2V0X3NoYTEoaXNsYW5kX21hcmtzLCBjb21taXQtPm9iamVjdC5vaWQuaGFzaCk7CisJa2hpdGVyX3QgcG9zID0ga2hfZ2V0X29pZF9tYXAoaXNsYW5kX21hcmtzLCBjb21taXQtPm9iamVjdC5vaWQpOwogCiAJaWYgKHBvcyA8IGtoX2VuZChpc2xhbmRfbWFya3MpKSB7CiAJCXN0cnVjdCBjb21taXRfbGlzdCAqcDsKQEAgLTQ4Niw3ICs0OTEsNyBAQAogCiAJZm9yIChpID0gMDsgaSA8IHRvX3BhY2stPm5yX29iamVjdHM7ICsraSkgewogCQlzdHJ1Y3Qgb2JqZWN0X2VudHJ5ICplbnRyeSA9ICZ0b19wYWNrLT5vYmplY3RzW2ldOwotCQlraGl0ZXJfdCBwb3MgPSBraF9nZXRfc2hhMShpc2xhbmRfbWFya3MsIGVudHJ5LT5pZHgub2lkLmhhc2gpOworCQlraGl0ZXJfdCBwb3MgPSBraF9nZXRfb2lkX21hcChpc2xhbmRfbWFya3MsIGVudHJ5LT5pZHgub2lkKTsKIAogCQlvZV9zZXRfbGF5ZXIodG9fcGFjaywgZW50cnksIDEpOwogCmRpZmYgLS1naXQgYS9kZWx0YS1pc2xhbmRzLmggYi9kZWx0YS1pc2xhbmRzLmgKaW5kZXggYjYzNWNkMC4uZWIwZjk1MiAxMDA2NDQKLS0tIGEvZGVsdGEtaXNsYW5kcy5oCisrKyBiL2RlbHRhLWlzbGFuZHMuaApAQCAtMSwxNCArMSwxNyBAQAogI2lmbmRlZiBERUxUQV9JU0xBTkRTX0gKICNkZWZpbmUgREVMVEFfSVNMQU5EU19ICiAKK3N0cnVjdCBjb21taXQ7CiBzdHJ1Y3Qgb2JqZWN0X2lkOwogc3RydWN0IHBhY2tpbmdfZGF0YTsKLXN0cnVjdCBjb21taXQ7CitzdHJ1Y3QgcmVwb3NpdG9yeTsKIAogaW50IGlzbGFuZF9kZWx0YV9jbXAoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqYSwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqYik7CiBpbnQgaW5fc2FtZV9pc2xhbmQoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICopOwotdm9pZCByZXNvbHZlX3RyZWVfaXNsYW5kcyhpbnQgcHJvZ3Jlc3MsIHN0cnVjdCBwYWNraW5nX2RhdGEgKnRvX3BhY2spOwotdm9pZCBsb2FkX2RlbHRhX2lzbGFuZHModm9pZCk7Cit2b2lkIHJlc29sdmVfdHJlZV9pc2xhbmRzKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICBpbnQgcHJvZ3Jlc3MsCisJCQkgIHN0cnVjdCBwYWNraW5nX2RhdGEgKnRvX3BhY2spOwordm9pZCBsb2FkX2RlbHRhX2lzbGFuZHMoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGludCBwcm9ncmVzcyk7CiB2b2lkIHByb3BhZ2F0ZV9pc2xhbmRfbWFya3Moc3RydWN0IGNvbW1pdCAqY29tbWl0KTsKIGludCBjb21wdXRlX3BhY2tfbGF5ZXJzKHN0cnVjdCBwYWNraW5nX2RhdGEgKnRvX3BhY2spOwogCmRpZmYgLS1naXQgYS9kZWx0YS5oIGIvZGVsdGEuaAppbmRleCA5YjY3NTMxLi4yZGY1ZmUxIDEwMDY0NAotLS0gYS9kZWx0YS5oCisrKyBiL2RlbHRhLmgKQEAgLTEzLDcgKzEzLDcgQEAKICAqIGJlZm9yZSBmcmVlX2RlbHRhX2luZGV4KCkgaXMgY2FsbGVkLiAgVGhlIHJldHVybmVkIHBvaW50ZXIgbXVzdCBiZSBmcmVlZAogICogdXNpbmcgZnJlZV9kZWx0YV9pbmRleCgpLgogICovCi1leHRlcm4gc3RydWN0IGRlbHRhX2luZGV4ICoKK3N0cnVjdCBkZWx0YV9pbmRleCAqCiBjcmVhdGVfZGVsdGFfaW5kZXgoY29uc3Qgdm9pZCAqYnVmLCB1bnNpZ25lZCBsb25nIGJ1ZnNpemUpOwogCiAvKgpAQCAtMjEsMTQgKzIxLDE0IEBACiAgKgogICogR2l2ZW4gcG9pbnRlciBtdXN0IGJlIHdoYXQgY3JlYXRlX2RlbHRhX2luZGV4KCkgcmV0dXJuZWQsIG9yIE5VTEwuCiAgKi8KLWV4dGVybiB2b2lkIGZyZWVfZGVsdGFfaW5kZXgoc3RydWN0IGRlbHRhX2luZGV4ICppbmRleCk7Cit2b2lkIGZyZWVfZGVsdGFfaW5kZXgoc3RydWN0IGRlbHRhX2luZGV4ICppbmRleCk7CiAKIC8qCiAgKiBzaXplb2ZfZGVsdGFfaW5kZXg6IHJldHVybnMgbWVtb3J5IHVzYWdlIG9mIGRlbHRhIGluZGV4CiAgKgogICogR2l2ZW4gcG9pbnRlciBtdXN0IGJlIHdoYXQgY3JlYXRlX2RlbHRhX2luZGV4KCkgcmV0dXJuZWQsIG9yIE5VTEwuCiAgKi8KLWV4dGVybiB1bnNpZ25lZCBsb25nIHNpemVvZl9kZWx0YV9pbmRleChzdHJ1Y3QgZGVsdGFfaW5kZXggKmluZGV4KTsKK3Vuc2lnbmVkIGxvbmcgc2l6ZW9mX2RlbHRhX2luZGV4KHN0cnVjdCBkZWx0YV9pbmRleCAqaW5kZXgpOwogCiAvKgogICogY3JlYXRlX2RlbHRhOiBjcmVhdGUgYSBkZWx0YSBmcm9tIGdpdmVuIGluZGV4IGZvciB0aGUgZ2l2ZW4gYnVmZmVyCkBAIC00MCw3ICs0MCw3IEBACiAgKiByZXR1cm5lZCBhbmQgKmRlbHRhX3NpemUgaXMgdXBkYXRlZCB3aXRoIGl0cyBzaXplLiAgVGhlIHJldHVybmVkIGJ1ZmZlcgogICogbXVzdCBiZSBmcmVlZCBieSB0aGUgY2FsbGVyLgogICovCi1leHRlcm4gdm9pZCAqCit2b2lkICoKIGNyZWF0ZV9kZWx0YShjb25zdCBzdHJ1Y3QgZGVsdGFfaW5kZXggKmluZGV4LAogCSAgICAgY29uc3Qgdm9pZCAqYnVmLCB1bnNpZ25lZCBsb25nIGJ1ZnNpemUsCiAJICAgICB1bnNpZ25lZCBsb25nICpkZWx0YV9zaXplLCB1bnNpZ25lZCBsb25nIG1heF9kZWx0YV9zaXplKTsKQEAgLTc1LDkgKzc1LDkgQEAKICAqICp0cmdfYnVmc2l6ZSBpcyB1cGRhdGVkIHdpdGggaXRzIHNpemUuICBPbiBmYWlsdXJlIGEgTlVMTCBwb2ludGVyIGlzCiAgKiByZXR1cm5lZC4gIFRoZSByZXR1cm5lZCBidWZmZXIgbXVzdCBiZSBmcmVlZCBieSB0aGUgY2FsbGVyLgogICovCi1leHRlcm4gdm9pZCAqcGF0Y2hfZGVsdGEoY29uc3Qgdm9pZCAqc3JjX2J1ZiwgdW5zaWduZWQgbG9uZyBzcmNfc2l6ZSwKLQkJCSBjb25zdCB2b2lkICpkZWx0YV9idWYsIHVuc2lnbmVkIGxvbmcgZGVsdGFfc2l6ZSwKLQkJCSB1bnNpZ25lZCBsb25nICpkc3Rfc2l6ZSk7Cit2b2lkICpwYXRjaF9kZWx0YShjb25zdCB2b2lkICpzcmNfYnVmLCB1bnNpZ25lZCBsb25nIHNyY19zaXplLAorCQkgIGNvbnN0IHZvaWQgKmRlbHRhX2J1ZiwgdW5zaWduZWQgbG9uZyBkZWx0YV9zaXplLAorCQkgIHVuc2lnbmVkIGxvbmcgKmRzdF9zaXplKTsKIAogLyogdGhlIHNtYWxsZXN0IHBvc3NpYmxlIGRlbHRhIHNpemUgaXMgNCBieXRlcyAqLwogI2RlZmluZSBERUxUQV9TSVpFX01JTgk0CmRpZmYgLS1naXQgYS9kaWZmLWRlbHRhLmMgYi9kaWZmLWRlbHRhLmMKaW5kZXggZTQ5NjQzMy4uNzdmZWEwOCAxMDA2NDQKLS0tIGEvZGlmZi1kZWx0YS5jCisrKyBiL2RpZmYtZGVsdGEuYwpAQCAtMzI2LDYgKzMyNiw4IEBACiAJY29uc3QgdW5zaWduZWQgY2hhciAqcmVmX2RhdGEsICpyZWZfdG9wLCAqZGF0YSwgKnRvcDsKIAl1bnNpZ25lZCBjaGFyICpvdXQ7CiAKKwkqZGVsdGFfc2l6ZSA9IDA7CisKIAlpZiAoIXRyZ19idWYgfHwgIXRyZ19zaXplKQogCQlyZXR1cm4gTlVMTDsKIApkaWZmIC0tZ2l0IGEvZGlmZi1saWIuYyBiL2RpZmYtbGliLmMKaW5kZXggODNmY2U1MS4uNjE4MTJmNCAxMDA2NDQKLS0tIGEvZGlmZi1saWIuYworKysgYi9kaWZmLWxpYi5jCkBAIC0yMzIsNyArMjMyLDcgQEAKIAogCQlpZiAoIWNoYW5nZWQgJiYgIWRpcnR5X3N1Ym1vZHVsZSkgewogCQkJY2VfbWFya191cHRvZGF0ZShjZSk7Ci0JCQltYXJrX2ZzbW9uaXRvcl92YWxpZChjZSk7CisJCQltYXJrX2ZzbW9uaXRvcl92YWxpZChpc3RhdGUsIGNlKTsKIAkJCWlmICghcmV2cy0+ZGlmZm9wdC5mbGFncy5maW5kX2NvcGllc19oYXJkZXIpCiAJCQkJY29udGludWU7CiAJCX0KQEAgLTUzMSw3ICs1MzEsNyBAQAogCQlleGl0KDEyOCk7CiAKIAlkaWZmX3NldF9tbmVtb25pY19wcmVmaXgoJnJldnMtPmRpZmZvcHQsICJjLyIsIGNhY2hlZCA/ICJpLyIgOiAidy8iKTsKLQlkaWZmY29yZV9maXhfZGlmZl9pbmRleCgmcmV2cy0+ZGlmZm9wdCk7CisJZGlmZmNvcmVfZml4X2RpZmZfaW5kZXgoKTsKIAlkaWZmY29yZV9zdGQoJnJldnMtPmRpZmZvcHQpOwogCWRpZmZfZmx1c2goJnJldnMtPmRpZmZvcHQpOwogCXRyYWNlX3BlcmZvcm1hbmNlX2xlYXZlKCJkaWZmLWluZGV4Iik7CkBAIC01NDIsNyArNTQyLDcgQEAKIHsKIAlzdHJ1Y3QgcmV2X2luZm8gcmV2czsKIAotCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksICZyZXZzLCBOVUxMKTsKKwlyZXBvX2luaXRfcmV2aXNpb25zKG9wdC0+cmVwbywgJnJldnMsIE5VTEwpOwogCWNvcHlfcGF0aHNwZWMoJnJldnMucHJ1bmVfZGF0YSwgJm9wdC0+cGF0aHNwZWMpOwogCXJldnMuZGlmZm9wdCA9ICpvcHQ7CiAKQEAgLTU1MSwxMyArNTUxLDE0IEBACiAJcmV0dXJuIDA7CiB9CiAKLWludCBpbmRleF9kaWZmZXJzX2Zyb20oY29uc3QgY2hhciAqZGVmLCBjb25zdCBzdHJ1Y3QgZGlmZl9mbGFncyAqZmxhZ3MsCitpbnQgaW5kZXhfZGlmZmVyc19mcm9tKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkgICAgICAgY29uc3QgY2hhciAqZGVmLCBjb25zdCBzdHJ1Y3QgZGlmZl9mbGFncyAqZmxhZ3MsCiAJCSAgICAgICBpbnQgaXRhX2ludmlzaWJsZV9pbl9pbmRleCkKIHsKIAlzdHJ1Y3QgcmV2X2luZm8gcmV2OwogCXN0cnVjdCBzZXR1cF9yZXZpc2lvbl9vcHQgb3B0OwogCi0JcmVwb19pbml0X3JldmlzaW9ucyh0aGVfcmVwb3NpdG9yeSwgJnJldiwgTlVMTCk7CisJcmVwb19pbml0X3JldmlzaW9ucyhyLCAmcmV2LCBOVUxMKTsKIAltZW1zZXQoJm9wdCwgMCwgc2l6ZW9mKG9wdCkpOwogCW9wdC5kZWYgPSBkZWY7CiAJc2V0dXBfcmV2aXNpb25zKDAsIE5VTEwsICZyZXYsICZvcHQpOwpkaWZmIC0tZ2l0IGEvZGlmZi1uby1pbmRleC5jIGIvZGlmZi1uby1pbmRleC5jCmluZGV4IDk0MTRlOTIuLjc4MTRlYWIgMTAwNjQ0Ci0tLSBhL2RpZmYtbm8taW5kZXguYworKysgYi9kaWZmLW5vLWluZGV4LmMKQEAgLTE0LDYgKzE0LDcgQEAKICNpbmNsdWRlICJyZXZpc2lvbi5oIgogI2luY2x1ZGUgImxvZy10cmVlLmgiCiAjaW5jbHVkZSAiYnVpbHRpbi5oIgorI2luY2x1ZGUgInBhcnNlLW9wdGlvbnMuaCIKICNpbmNsdWRlICJzdHJpbmctbGlzdC5oIgogI2luY2x1ZGUgImRpci5oIgogCkBAIC0yMzMsMzUgKzIzNCwzNyBAQAogCX0KIH0KIAotdm9pZCBkaWZmX25vX2luZGV4KHN0cnVjdCByZXBvc2l0b3J5ICpyLAotCQkgICBzdHJ1Y3QgcmV2X2luZm8gKnJldnMsCi0JCSAgIGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKK3N0YXRpYyBjb25zdCBjaGFyICogY29uc3QgZGlmZl9ub19pbmRleF91c2FnZVtdID0geworCU5fKCJnaXQgZGlmZiAtLW5vLWluZGV4IFs8b3B0aW9ucz5dIDxwYXRoPiA8cGF0aD4iKSwKKwlOVUxMCit9OworCitpbnQgZGlmZl9ub19pbmRleChzdHJ1Y3QgcmV2X2luZm8gKnJldnMsCisJCSAgaW50IGltcGxpY2l0X25vX2luZGV4LAorCQkgIGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKIHsKLQlpbnQgaTsKKwlpbnQgaSwgbm9faW5kZXg7CiAJY29uc3QgY2hhciAqcGF0aHNbMl07CiAJc3RydWN0IHN0cmJ1ZiByZXBsYWNlbWVudCA9IFNUUkJVRl9JTklUOwogCWNvbnN0IGNoYXIgKnByZWZpeCA9IHJldnMtPnByZWZpeDsKKwlzdHJ1Y3Qgb3B0aW9uIG5vX2luZGV4X29wdGlvbnNbXSA9IHsKKwkJT1BUX0JPT0xfRigwLCAibm8taW5kZXgiLCAmbm9faW5kZXgsICIiLAorCQkJICAgUEFSU0VfT1BUX05PTkVHIHwgUEFSU0VfT1BUX0hJRERFTiksCisJCU9QVF9FTkQoKSwKKwl9OworCXN0cnVjdCBvcHRpb24gKm9wdGlvbnM7CiAKLQkvKgotCSAqIEZJWE1FOiAtLW5vLWluZGV4IHNob3VsZCBub3QgbG9vayBhdCBpbmRleCBhbmQgd2Ugc2hvdWxkIGJlCi0JICogYWJsZSB0byBwYXNzIE5VTEwgcmVwby4gTWF5YmUgbGF0ZXIuCi0JICovCi0JcmVwb19kaWZmX3NldHVwKHIsICZyZXZzLT5kaWZmb3B0KTsKLQlmb3IgKGkgPSAxOyBpIDwgYXJnYyAtIDI7ICkgewotCQlpbnQgajsKLQkJaWYgKCFzdHJjbXAoYXJndltpXSwgIi0tbm8taW5kZXgiKSkKLQkJCWkrKzsKLQkJZWxzZSBpZiAoIXN0cmNtcChhcmd2W2ldLCAiLS0iKSkKLQkJCWkrKzsKLQkJZWxzZSB7Ci0JCQlqID0gZGlmZl9vcHRfcGFyc2UoJnJldnMtPmRpZmZvcHQsIGFyZ3YgKyBpLCBhcmdjIC0gaSwKLQkJCQkJICAgcmV2cy0+cHJlZml4KTsKLQkJCWlmIChqIDw9IDApCi0JCQkJZGllKCJpbnZhbGlkIGRpZmYgb3B0aW9uL3ZhbHVlOiAlcyIsIGFyZ3ZbaV0pOwotCQkJaSArPSBqOwotCQl9CisJb3B0aW9ucyA9IHBhcnNlX29wdGlvbnNfY29uY2F0KG5vX2luZGV4X29wdGlvbnMsCisJCQkJICAgICAgIHJldnMtPmRpZmZvcHQucGFyc2VvcHRzKTsKKwlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCByZXZzLT5wcmVmaXgsIG9wdGlvbnMsCisJCQkgICAgIGRpZmZfbm9faW5kZXhfdXNhZ2UsIDApOworCWlmIChhcmdjICE9IDIpIHsKKwkJaWYgKGltcGxpY2l0X25vX2luZGV4KQorCQkJd2FybmluZyhfKCJOb3QgYSBnaXQgcmVwb3NpdG9yeS4gVXNlIC0tbm8taW5kZXggdG8gIgorCQkJCSAgImNvbXBhcmUgdHdvIHBhdGhzIG91dHNpZGUgYSB3b3JraW5nIHRyZWUiKSk7CisJCXVzYWdlX3dpdGhfb3B0aW9ucyhkaWZmX25vX2luZGV4X3VzYWdlLCBvcHRpb25zKTsKIAl9Ci0KKwlGUkVFX0FORF9OVUxMKG9wdGlvbnMpOwogCWZvciAoaSA9IDA7IGkgPCAyOyBpKyspIHsKIAkJY29uc3QgY2hhciAqcCA9IGFyZ3ZbYXJnYyAtIDIgKyBpXTsKIAkJaWYgKCFzdHJjbXAocCwgIi0iKSkKQEAgLTI5Myw3ICsyOTYsNyBAQAogCXJldnMtPmRpZmZvcHQuZmxhZ3MuZXhpdF93aXRoX3N0YXR1cyA9IDE7CiAKIAlpZiAocXVldWVfZGlmZigmcmV2cy0+ZGlmZm9wdCwgcGF0aHNbMF0sIHBhdGhzWzFdKSkKLQkJZXhpdCgxKTsKKwkJcmV0dXJuIDE7CiAJZGlmZl9zZXRfbW5lbW9uaWNfcHJlZml4KCZyZXZzLT5kaWZmb3B0LCAiMS8iLCAiMi8iKTsKIAlkaWZmY29yZV9zdGQoJnJldnMtPmRpZmZvcHQpOwogCWRpZmZfZmx1c2goJnJldnMtPmRpZmZvcHQpOwpAQCAtMzA0LDUgKzMwNyw1IEBACiAJICogVGhlIHJldHVybiBjb2RlIGZvciAtLW5vLWluZGV4IGltaXRhdGVzIGRpZmYoMSk6CiAJICogMCA9IG5vIGNoYW5nZXMsIDEgPSBjaGFuZ2VzLCBlbHNlIGVycm9yCiAJICovCi0JZXhpdChkaWZmX3Jlc3VsdF9jb2RlKCZyZXZzLT5kaWZmb3B0LCAwKSk7CisJcmV0dXJuIGRpZmZfcmVzdWx0X2NvZGUoJnJldnMtPmRpZmZvcHQsIDApOwogfQpkaWZmIC0tZ2l0IGEvZGlmZi5jIGIvZGlmZi5jCmluZGV4IGRjOTk2NWUuLmYyY2ZiZjIgMTAwNjQ0Ci0tLSBhL2RpZmYuYworKysgYi9kaWZmLmMKQEAgLTIzLDcgKzIzLDkgQEAKICNpbmNsdWRlICJhcmd2LWFycmF5LmgiCiAjaW5jbHVkZSAiZ3JhcGguaCIKICNpbmNsdWRlICJwYWNrZmlsZS5oIgorI2luY2x1ZGUgInBhcnNlLW9wdGlvbnMuaCIKICNpbmNsdWRlICJoZWxwLmgiCisjaW5jbHVkZSAicHJvbWlzb3ItcmVtb3RlLmgiCiAKICNpZmRlZiBOT19GQVNUX1dPUktJTkdfRElSRUNUT1JZCiAjZGVmaW5lIEZBU1RfV09SS0lOR19ESVJFQ1RPUlkgMApAQCAtMTAzLDExICsxMDUsNiBAQAogCVtESUZGX0ZJTEVfTkVXX0JPTERdCSAgICAgID0gIm5ld0JvbGQiLAogfTsKIAotc3RhdGljIE5PUkVUVVJOIHZvaWQgZGllX3dhbnRfb3B0aW9uKGNvbnN0IGNoYXIgKm9wdGlvbl9uYW1lKQotewotCWRpZShfKCJvcHRpb24gJyVzJyByZXF1aXJlcyBhIHZhbHVlIiksIG9wdGlvbl9uYW1lKTsKLX0KLQogZGVmaW5lX2xpc3RfY29uZmlnX2FycmF5X2V4dHJhKGNvbG9yX2RpZmZfc2xvdHMsIHsicGxhaW4ifSk7CiAKIHN0YXRpYyBpbnQgcGFyc2VfZGlmZl9jb2xvcl9zbG90KGNvbnN0IGNoYXIgKnZhcikKQEAgLTE3OCw2ICsxNzUsMTAgQEAKIAkJb3B0aW9ucy0+c3VibW9kdWxlX2Zvcm1hdCA9IERJRkZfU1VCTU9EVUxFX1NIT1JUOwogCWVsc2UgaWYgKCFzdHJjbXAodmFsdWUsICJkaWZmIikpCiAJCW9wdGlvbnMtPnN1Ym1vZHVsZV9mb3JtYXQgPSBESUZGX1NVQk1PRFVMRV9JTkxJTkVfRElGRjsKKwkvKgorCSAqIFBsZWFzZSB1cGRhdGUgJF9fZ2l0X2RpZmZfc3VibW9kdWxlX2Zvcm1hdHMgaW4KKwkgKiBnaXQtY29tcGxldGlvbi5iYXNoIHdoZW4geW91IGFkZCBuZXcgZm9ybWF0cy4KKwkgKi8KIAllbHNlCiAJCXJldHVybiAtMTsKIAlyZXR1cm4gMDsKQEAgLTIwNCw2ICsyMDUsMTAgQEAKIAkJcmV0dXJuIFhERl9QQVRJRU5DRV9ESUZGOwogCWVsc2UgaWYgKCFzdHJjYXNlY21wKHZhbHVlLCAiaGlzdG9ncmFtIikpCiAJCXJldHVybiBYREZfSElTVE9HUkFNX0RJRkY7CisJLyoKKwkgKiBQbGVhc2UgdXBkYXRlICRfX2dpdF9kaWZmX2FsZ29yaXRobXMgaW4gZ2l0LWNvbXBsZXRpb24uYmFzaAorCSAqIHdoZW4geW91IGFkZCBuZXcgYWxnb3JpdGhtcy4KKwkgKi8KIAlyZXR1cm4gLTE7CiB9CiAKQEAgLTI5MSw3ICsyOTYsNyBAQAogCQlyZXR1cm4gZXJyb3IoXygiY29sb3IgbW92ZWQgc2V0dGluZyBtdXN0IGJlIG9uZSBvZiAnbm8nLCAnZGVmYXVsdCcsICdibG9ja3MnLCAnemVicmEnLCAnZGltbWVkLXplYnJhJywgJ3BsYWluJyIpKTsKIH0KIAotc3RhdGljIGludCBwYXJzZV9jb2xvcl9tb3ZlZF93cyhjb25zdCBjaGFyICphcmcpCitzdGF0aWMgdW5zaWduZWQgcGFyc2VfY29sb3JfbW92ZWRfd3MoY29uc3QgY2hhciAqYXJnKQogewogCWludCByZXQgPSAwOwogCXN0cnVjdCBzdHJpbmdfbGlzdCBsID0gU1RSSU5HX0xJU1RfSU5JVF9EVVA7CkBAIC0zMDQsNyArMzA5LDkgQEAKIAkJc3RyYnVmX2FkZHN0cigmc2IsIGktPnN0cmluZyk7CiAJCXN0cmJ1Zl90cmltKCZzYik7CiAKLQkJaWYgKCFzdHJjbXAoc2IuYnVmLCAiaWdub3JlLXNwYWNlLWNoYW5nZSIpKQorCQlpZiAoIXN0cmNtcChzYi5idWYsICJubyIpKQorCQkJcmV0ID0gMDsKKwkJZWxzZSBpZiAoIXN0cmNtcChzYi5idWYsICJpZ25vcmUtc3BhY2UtY2hhbmdlIikpCiAJCQlyZXQgfD0gWERGX0lHTk9SRV9XSElURVNQQUNFX0NIQU5HRTsKIAkJZWxzZSBpZiAoIXN0cmNtcChzYi5idWYsICJpZ25vcmUtc3BhY2UtYXQtZW9sIikpCiAJCQlyZXQgfD0gWERGX0lHTk9SRV9XSElURVNQQUNFX0FUX0VPTDsKQEAgLTMxMiwxNSArMzE5LDE5IEBACiAJCQlyZXQgfD0gWERGX0lHTk9SRV9XSElURVNQQUNFOwogCQllbHNlIGlmICghc3RyY21wKHNiLmJ1ZiwgImFsbG93LWluZGVudGF0aW9uLWNoYW5nZSIpKQogCQkJcmV0IHw9IENPTE9SX01PVkVEX1dTX0FMTE9XX0lOREVOVEFUSU9OX0NIQU5HRTsKLQkJZWxzZQotCQkJZXJyb3IoXygiaWdub3JpbmcgdW5rbm93biBjb2xvci1tb3ZlZC13cyBtb2RlICclcyciKSwgc2IuYnVmKTsKKwkJZWxzZSB7CisJCQlyZXQgfD0gQ09MT1JfTU9WRURfV1NfRVJST1I7CisJCQllcnJvcihfKCJ1bmtub3duIGNvbG9yLW1vdmVkLXdzIG1vZGUgJyVzJywgcG9zc2libGUgdmFsdWVzIGFyZSAnaWdub3JlLXNwYWNlLWNoYW5nZScsICdpZ25vcmUtc3BhY2UtYXQtZW9sJywgJ2lnbm9yZS1hbGwtc3BhY2UnLCAnYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlJyIpLCBzYi5idWYpOworCQl9CiAKIAkJc3RyYnVmX3JlbGVhc2UoJnNiKTsKIAl9CiAKIAlpZiAoKHJldCAmIENPTE9SX01PVkVEX1dTX0FMTE9XX0lOREVOVEFUSU9OX0NIQU5HRSkgJiYKLQkgICAgKHJldCAmIFhERl9XSElURVNQQUNFX0ZMQUdTKSkKLQkJZGllKF8oImNvbG9yLW1vdmVkLXdzOiBhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UgY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgd2hpdGUgc3BhY2UgbW9kZXMiKSk7CisJICAgIChyZXQgJiBYREZfV0hJVEVTUEFDRV9GTEFHUykpIHsKKwkJZXJyb3IoXygiY29sb3ItbW92ZWQtd3M6IGFsbG93LWluZGVudGF0aW9uLWNoYW5nZSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB3aGl0ZXNwYWNlIG1vZGVzIikpOworCQlyZXQgfD0gQ09MT1JfTU9WRURfV1NfRVJST1I7CisJfQogCiAJc3RyaW5nX2xpc3RfY2xlYXIoJmwsIDApOwogCkBAIC0zNDEsOCArMzUyLDggQEAKIAkJcmV0dXJuIDA7CiAJfQogCWlmICghc3RyY21wKHZhciwgImRpZmYuY29sb3Jtb3ZlZHdzIikpIHsKLQkJaW50IGNtID0gcGFyc2VfY29sb3JfbW92ZWRfd3ModmFsdWUpOwotCQlpZiAoY20gPCAwKQorCQl1bnNpZ25lZCBjbSA9IHBhcnNlX2NvbG9yX21vdmVkX3dzKHZhbHVlKTsKKwkJaWYgKGNtICYgQ09MT1JfTU9WRURfV1NfRVJST1IpCiAJCQlyZXR1cm4gLTE7CiAJCWRpZmZfY29sb3JfbW92ZWRfd3NfZGVmYXVsdCA9IGNtOwogCQlyZXR1cm4gMDsKQEAgLTQwMywxNCArNDE0LDYgQEAKIAkJcmV0dXJuIDA7CiAJfQogCi0JaWYgKCFzdHJjbXAodmFyLCAiZGlmZi53c2Vycm9yaGlnaGxpZ2h0IikpIHsKLQkJaW50IHZhbCA9IHBhcnNlX3dzX2Vycm9yX2hpZ2hsaWdodCh2YWx1ZSk7Ci0JCWlmICh2YWwgPCAwKQotCQkJcmV0dXJuIC0xOwotCQl3c19lcnJvcl9oaWdobGlnaHRfZGVmYXVsdCA9IHZhbDsKLQkJcmV0dXJuIDA7Ci0JfQotCiAJaWYgKGdpdF9jb2xvcl9jb25maWcodmFyLCB2YWx1ZSwgY2IpIDwgMCkKIAkJcmV0dXJuIC0xOwogCkBAIC00MzksNiArNDQyLDE0IEBACiAJCXJldHVybiBjb2xvcl9wYXJzZSh2YWx1ZSwgZGlmZl9jb2xvcnNbc2xvdF0pOwogCX0KIAorCWlmICghc3RyY21wKHZhciwgImRpZmYud3NlcnJvcmhpZ2hsaWdodCIpKSB7CisJCWludCB2YWwgPSBwYXJzZV93c19lcnJvcl9oaWdobGlnaHQodmFsdWUpOworCQlpZiAodmFsIDwgMCkKKwkJCXJldHVybiAtMTsKKwkJd3NfZXJyb3JfaGlnaGxpZ2h0X2RlZmF1bHQgPSB2YWw7CisJCXJldHVybiAwOworCX0KKwogCS8qIGxpa2UgR05VIGRpZmYncyAtLXN1cHByZXNzLWJsYW5rLWVtcHR5IG9wdGlvbiAgKi8KIAlpZiAoIXN0cmNtcCh2YXIsICJkaWZmLnN1cHByZXNzYmxhbmtlbXB0eSIpIHx8CiAJCQkvKiBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgKi8KQEAgLTQ4OSw3ICs1MDAsNyBAQAogCiAJaWYgKGRvbmVfcHJlcGFyaW5nKQogCQlyZXR1cm4gZXh0ZXJuYWxfZGlmZl9jbWQ7Ci0JZXh0ZXJuYWxfZGlmZl9jbWQgPSBnZXRlbnYoIkdJVF9FWFRFUk5BTF9ESUZGIik7CisJZXh0ZXJuYWxfZGlmZl9jbWQgPSB4c3RyZHVwX29yX251bGwoZ2V0ZW52KCJHSVRfRVhURVJOQUxfRElGRiIpKTsKIAlpZiAoIWV4dGVybmFsX2RpZmZfY21kKQogCQlleHRlcm5hbF9kaWZmX2NtZCA9IGV4dGVybmFsX2RpZmZfY21kX2NmZzsKIAlkb25lX3ByZXBhcmluZyA9IDE7CkBAIC03NTAsNiArNzYxLDggQEAKIAljb25zdCBjaGFyICpsaW5lOwogCWludCBsZW47CiAJaW50IGZsYWdzOworCWludCBpbmRlbnRfb2ZmOyAgIC8qIE9mZnNldCB0byBmaXJzdCBub24td2hpdGVzcGFjZSBjaGFyYWN0ZXIgKi8KKwlpbnQgaW5kZW50X3dpZHRoOyAvKiBUaGUgdmlzdWFsIHdpZHRoIG9mIHRoZSBpbmRlbnRhdGlvbiAqLwogCWVudW0gZGlmZl9zeW1ib2wgczsKIH07CiAjZGVmaW5lIEVNSVRURURfRElGRl9TWU1CT0xfSU5JVCB7TlVMTH0KQEAgLTc4MCw0NCArNzkzLDg1IEBACiAJc3RydWN0IG1vdmVkX2VudHJ5ICpuZXh0X2xpbmU7CiB9OwogCi0vKioKLSAqIFRoZSBzdHJ1Y3Qgd3NfZGVsdGEgaG9sZHMgd2hpdGUgc3BhY2UgZGlmZmVyZW5jZXMgYmV0d2VlbiBtb3ZlZCBsaW5lcywgaS5lLgotICogYmV0d2VlbiAnKycgYW5kICctJyBsaW5lcyB0aGF0IGhhdmUgYmVlbiBkZXRlY3RlZCB0byBiZSBhIG1vdmUuCi0gKiBUaGUgc3RyaW5nIGNvbnRhaW5zIHRoZSBkaWZmZXJlbmNlIGluIGxlYWRpbmcgd2hpdGUgc3BhY2VzLCBiZWZvcmUgdGhlCi0gKiByZXN0IG9mIHRoZSBsaW5lIGlzIGNvbXBhcmVkIHVzaW5nIHRoZSB3aGl0ZSBzcGFjZSBjb25maWcgZm9yIG1vdmUKLSAqIGNvbG9yaW5nLiBUaGUgY3VycmVudF9sb25nZXIgaW5kaWNhdGVzIGlmIHRoZSBmaXJzdCBzdHJpbmcgaW4gdGhlCi0gKiBjb21wYXJpc2lvbiBpcyBsb25nZXIgdGhhbiB0aGUgc2Vjb25kLgotICovCi1zdHJ1Y3Qgd3NfZGVsdGEgewotCWNoYXIgKnN0cmluZzsKLQl1bnNpZ25lZCBpbnQgY3VycmVudF9sb25nZXIgOiAxOwotfTsKLSNkZWZpbmUgV1NfREVMVEFfSU5JVCB7IE5VTEwsIDAgfQotCiBzdHJ1Y3QgbW92ZWRfYmxvY2sgewogCXN0cnVjdCBtb3ZlZF9lbnRyeSAqbWF0Y2g7Ci0Jc3RydWN0IHdzX2RlbHRhIHdzZDsKKwlpbnQgd3NkOyAvKiBUaGUgd2hpdGVzcGFjZSBkZWx0YSBvZiB0aGlzIGJsb2NrICovCiB9OwogCiBzdGF0aWMgdm9pZCBtb3ZlZF9ibG9ja19jbGVhcihzdHJ1Y3QgbW92ZWRfYmxvY2sgKmIpCiB7Ci0JRlJFRV9BTkRfTlVMTChiLT53c2Quc3RyaW5nKTsKLQliLT5tYXRjaCA9IE5VTEw7CisJbWVtc2V0KGIsIDAsIHNpemVvZigqYikpOworfQorCisjZGVmaW5lIElOREVOVF9CTEFOS0xJTkUgSU5UX01JTgorCitzdGF0aWMgdm9pZCBmaWxsX2VzX2luZGVudF9kYXRhKHN0cnVjdCBlbWl0dGVkX2RpZmZfc3ltYm9sICplcykKK3sKKwl1bnNpZ25lZCBpbnQgb2ZmID0gMCwgaTsKKwlpbnQgd2lkdGggPSAwLCB0YWJfd2lkdGggPSBlcy0+ZmxhZ3MgJiBXU19UQUJfV0lEVEhfTUFTSzsKKwljb25zdCBjaGFyICpzID0gZXMtPmxpbmU7CisJY29uc3QgaW50IGxlbiA9IGVzLT5sZW47CisKKwkvKiBza2lwIGFueSBcdiBcZiBcciBhdCBzdGFydCBvZiBpbmRlbnRhdGlvbiAqLworCXdoaWxlIChzW29mZl0gPT0gJ1xmJyB8fCBzW29mZl0gPT0gJ1x2JyB8fAorCSAgICAgICAoc1tvZmZdID09ICdccicgJiYgb2ZmIDwgbGVuIC0gMSkpCisJCW9mZisrOworCisJLyogY2FsY3VsYXRlIHRoZSB2aXN1YWwgd2lkdGggb2YgaW5kZW50YXRpb24gKi8KKwl3aGlsZSgxKSB7CisJCWlmIChzW29mZl0gPT0gJyAnKSB7CisJCQl3aWR0aCsrOworCQkJb2ZmKys7CisJCX0gZWxzZSBpZiAoc1tvZmZdID09ICdcdCcpIHsKKwkJCXdpZHRoICs9IHRhYl93aWR0aCAtICh3aWR0aCAlIHRhYl93aWR0aCk7CisJCQl3aGlsZSAoc1srK29mZl0gPT0gJ1x0JykKKwkJCQl3aWR0aCArPSB0YWJfd2lkdGg7CisJCX0gZWxzZSB7CisJCQlicmVhazsKKwkJfQorCX0KKworCS8qIGNoZWNrIGlmIHRoaXMgbGluZSBpcyBibGFuayAqLworCWZvciAoaSA9IG9mZjsgaSA8IGxlbjsgaSsrKQorCQlpZiAoIWlzc3BhY2Uoc1tpXSkpCisJCSAgICBicmVhazsKKworCWlmIChpID09IGxlbikgeworCQllcy0+aW5kZW50X3dpZHRoID0gSU5ERU5UX0JMQU5LTElORTsKKwkJZXMtPmluZGVudF9vZmYgPSBsZW47CisJfSBlbHNlIHsKKwkJZXMtPmluZGVudF9vZmYgPSBvZmY7CisJCWVzLT5pbmRlbnRfd2lkdGggPSB3aWR0aDsKKwl9CiB9CiAKIHN0YXRpYyBpbnQgY29tcHV0ZV93c19kZWx0YShjb25zdCBzdHJ1Y3QgZW1pdHRlZF9kaWZmX3N5bWJvbCAqYSwKLQkJCSAgICAgY29uc3Qgc3RydWN0IGVtaXR0ZWRfZGlmZl9zeW1ib2wgKmIsCi0JCQkgICAgIHN0cnVjdCB3c19kZWx0YSAqb3V0KQorCQkJICAgIGNvbnN0IHN0cnVjdCBlbWl0dGVkX2RpZmZfc3ltYm9sICpiLAorCQkJICAgIGludCAqb3V0KQogewotCWNvbnN0IHN0cnVjdCBlbWl0dGVkX2RpZmZfc3ltYm9sICpsb25nZXIgPSAgYS0+bGVuID4gYi0+bGVuID8gYSA6IGI7Ci0JY29uc3Qgc3RydWN0IGVtaXR0ZWRfZGlmZl9zeW1ib2wgKnNob3J0ZXIgPSBhLT5sZW4gPiBiLT5sZW4gPyBiIDogYTsKLQlpbnQgZCA9IGxvbmdlci0+bGVuIC0gc2hvcnRlci0+bGVuOworCWludCBhX2xlbiA9IGEtPmxlbiwKKwkgICAgYl9sZW4gPSBiLT5sZW4sCisJICAgIGFfb2ZmID0gYS0+aW5kZW50X29mZiwKKwkgICAgYV93aWR0aCA9IGEtPmluZGVudF93aWR0aCwKKwkgICAgYl9vZmYgPSBiLT5pbmRlbnRfb2ZmLAorCSAgICBiX3dpZHRoID0gYi0+aW5kZW50X3dpZHRoOworCWludCBkZWx0YTsKIAotCWlmIChzdHJuY21wKGxvbmdlci0+bGluZSArIGQsIHNob3J0ZXItPmxpbmUsIHNob3J0ZXItPmxlbikpCisJaWYgKGFfd2lkdGggPT0gSU5ERU5UX0JMQU5LTElORSAmJiBiX3dpZHRoID09IElOREVOVF9CTEFOS0xJTkUpIHsKKwkJKm91dCA9IElOREVOVF9CTEFOS0xJTkU7CisJCXJldHVybiAxOworCX0KKworCWlmIChhLT5zID09IERJRkZfU1lNQk9MX1BMVVMpCisJCWRlbHRhID0gYV93aWR0aCAtIGJfd2lkdGg7CisJZWxzZQorCQlkZWx0YSA9IGJfd2lkdGggLSBhX3dpZHRoOworCisJaWYgKGFfbGVuIC0gYV9vZmYgIT0gYl9sZW4gLSBiX29mZiB8fAorCSAgICBtZW1jbXAoYS0+bGluZSArIGFfb2ZmLCBiLT5saW5lICsgYl9vZmYsIGFfbGVuIC0gYV9vZmYpKQogCQlyZXR1cm4gMDsKIAotCW91dC0+c3RyaW5nID0geG1lbWR1cHoobG9uZ2VyLT5saW5lLCBkKTsKLQlvdXQtPmN1cnJlbnRfbG9uZ2VyID0gKGEgPT0gbG9uZ2VyKTsKKwkqb3V0ID0gZGVsdGE7CiAKIAlyZXR1cm4gMTsKIH0KQEAgLTgyOSw2NCArODgzLDY4IEBACiAJCQkJIGludCBuKQogewogCXN0cnVjdCBlbWl0dGVkX2RpZmZfc3ltYm9sICpsID0gJm8tPmVtaXR0ZWRfc3ltYm9scy0+YnVmW25dOwotCWludCBhbCA9IGN1ci0+ZXMtPmxlbiwgY2wgPSBsLT5sZW47CisJaW50IGFsID0gY3VyLT5lcy0+bGVuLCBibCA9IG1hdGNoLT5lcy0+bGVuLCBjbCA9IGwtPmxlbjsKIAljb25zdCBjaGFyICphID0gY3VyLT5lcy0+bGluZSwKIAkJICAgKmIgPSBtYXRjaC0+ZXMtPmxpbmUsCiAJCSAgICpjID0gbC0+bGluZTsKLQotCWludCB3c2xlbjsKKwlpbnQgYV9vZmYgPSBjdXItPmVzLT5pbmRlbnRfb2ZmLAorCSAgICBhX3dpZHRoID0gY3VyLT5lcy0+aW5kZW50X3dpZHRoLAorCSAgICBjX29mZiA9IGwtPmluZGVudF9vZmYsCisJICAgIGNfd2lkdGggPSBsLT5pbmRlbnRfd2lkdGg7CisJaW50IGRlbHRhOwogCiAJLyoKLQkgKiBXZSBuZWVkIHRvIGNoZWNrIGlmICdjdXInIGlzIGVxdWFsIHRvICdtYXRjaCcuCi0JICogQXMgdGhvc2UgYXJlIGZyb20gdGhlIHNhbWUgKCsvLSkgc2lkZSwgd2UgZG8gbm90IG5lZWQgdG8gYWRqdXN0IGZvcgotCSAqIGluZGVudCBjaGFuZ2VzLiBIb3dldmVyIHRoZXNlIHdlcmUgZm91bmQgdXNpbmcgZnV6enkgbWF0Y2hpbmcKLQkgKiBzbyB3ZSBkbyBoYXZlIHRvIGNoZWNrIGlmIHRoZXkgYXJlIGVxdWFsLgorCSAqIFdlIG5lZWQgdG8gY2hlY2sgaWYgJ2N1cicgaXMgZXF1YWwgdG8gJ21hdGNoJy4gIEFzIHRob3NlCisJICogYXJlIGZyb20gdGhlIHNhbWUgKCsvLSkgc2lkZSwgd2UgZG8gbm90IG5lZWQgdG8gYWRqdXN0IGZvcgorCSAqIGluZGVudCBjaGFuZ2VzLiBIb3dldmVyIHRoZXNlIHdlcmUgZm91bmQgdXNpbmcgZnV6enkKKwkgKiBtYXRjaGluZyBzbyB3ZSBkbyBoYXZlIHRvIGNoZWNrIGlmIHRoZXkgYXJlIGVxdWFsLiBIZXJlIHdlCisJICoganVzdCBjaGVjayB0aGUgbGVuZ3Rocy4gV2UgZGVsYXkgY2FsbGluZyBtZW1jbXAoKSB0byBjaGVjaworCSAqIHRoZSBjb250ZW50cyB1bnRpbCBsYXRlciBhcyBpZiB0aGUgbGVuZ3RoIGNvbXBhcmlzb24gZm9yIGEKKwkgKiBhbmQgYyBmYWlscyB3ZSBjYW4gYXZvaWQgdGhlIGNhbGwgYWxsIHRvZ2V0aGVyLgogCSAqLwotCWlmIChzdHJjbXAoYSwgYikpCisJaWYgKGFsICE9IGJsKQogCQlyZXR1cm4gMTsKIAotCWlmICghcG1iLT53c2Quc3RyaW5nKQotCQkvKgotCQkgKiBUaGUgd2hpdGUgc3BhY2UgZGVsdGEgaXMgbm90IGFjdGl2ZT8gVGhpcyBjYW4gaGFwcGVuCi0JCSAqIHdoZW4gd2UgZXhpdCBlYXJseSBpbiB0aGlzIGZ1bmN0aW9uLgotCQkgKi8KLQkJcmV0dXJuIDE7CisJLyogSWYgJ2wnIGFuZCAnY3VyJyBhcmUgYm90aCBibGFuayB0aGVuIHRoZXkgbWF0Y2guICovCisJaWYgKGFfd2lkdGggPT0gSU5ERU5UX0JMQU5LTElORSAmJiBjX3dpZHRoID09IElOREVOVF9CTEFOS0xJTkUpCisJCXJldHVybiAwOwogCiAJLyoKLQkgKiBUaGUgaW5kZW50IGNoYW5nZXMgb2YgdGhlIGJsb2NrIGFyZSBrbm93biBhbmQgc3RvcmVkIGluCi0JICogcG1iLT53c2Q7IGhvd2V2ZXIgd2UgbmVlZCB0byBjaGVjayBpZiB0aGUgaW5kZW50IGNoYW5nZXMgb2YgdGhlCi0JICogY3VycmVudCBsaW5lIGFyZSBzdGlsbCB0aGUgc2FtZSBhcyBiZWZvcmUuCi0JICoKLQkgKiBUbyBkbyBzbyB3ZSBuZWVkIHRvIGNvbXBhcmUgJ2wnIHRvICdjdXInLCBhZGp1c3RpbmcgdGhlCi0JICogb25lIG9mIHRoZW0gZm9yIHRoZSB3aGl0ZSBzcGFjZXMsIGRlcGVuZGluZyB3aGljaCB3YXMgbG9uZ2VyLgorCSAqIFRoZSBpbmRlbnQgY2hhbmdlcyBvZiB0aGUgYmxvY2sgYXJlIGtub3duIGFuZCBzdG9yZWQgaW4gcG1iLT53c2Q7CisJICogaG93ZXZlciB3ZSBuZWVkIHRvIGNoZWNrIGlmIHRoZSBpbmRlbnQgY2hhbmdlcyBvZiB0aGUgY3VycmVudCBsaW5lCisJICogbWF0Y2ggdGhvc2Ugb2YgdGhlIGN1cnJlbnQgYmxvY2sgYW5kIHRoYXQgdGhlIHRleHQgb2YgJ2wnIGFuZCAnY3VyJworCSAqIGFmdGVyIHRoZSBpbmRlbnRhdGlvbiBtYXRjaC4KIAkgKi8KKwlpZiAoY3VyLT5lcy0+cyA9PSBESUZGX1NZTUJPTF9QTFVTKQorCQlkZWx0YSA9IGFfd2lkdGggLSBjX3dpZHRoOworCWVsc2UKKwkJZGVsdGEgPSBjX3dpZHRoIC0gYV93aWR0aDsKIAotCXdzbGVuID0gc3RybGVuKHBtYi0+d3NkLnN0cmluZyk7Ci0JaWYgKHBtYi0+d3NkLmN1cnJlbnRfbG9uZ2VyKSB7Ci0JCWMgKz0gd3NsZW47Ci0JCWNsIC09IHdzbGVuOwotCX0gZWxzZSB7Ci0JCWEgKz0gd3NsZW47Ci0JCWFsIC09IHdzbGVuOwotCX0KKwkvKgorCSAqIElmIHRoZSBwcmV2aW91cyBsaW5lcyBvZiB0aGlzIGJsb2NrIHdlcmUgYWxsIGJsYW5rIHRoZW4gc2V0IGl0cworCSAqIHdoaXRlc3BhY2UgZGVsdGEuCisJICovCisJaWYgKHBtYi0+d3NkID09IElOREVOVF9CTEFOS0xJTkUpCisJCXBtYi0+d3NkID0gZGVsdGE7CiAKLQlpZiAoYWwgIT0gY2wgfHwgbWVtY21wKGEsIGMsIGFsKSkKLQkJcmV0dXJuIDE7Ci0KLQlyZXR1cm4gMDsKKwlyZXR1cm4gIShkZWx0YSA9PSBwbWItPndzZCAmJiBhbCAtIGFfb2ZmID09IGNsIC0gY19vZmYgJiYKKwkJICFtZW1jbXAoYSwgYiwgYWwpICYmICEKKwkJIG1lbWNtcChhICsgYV9vZmYsIGMgKyBjX29mZiwgYWwgLSBhX29mZikpOwogfQogCiBzdGF0aWMgaW50IG1vdmVkX2VudHJ5X2NtcChjb25zdCB2b2lkICpoYXNobWFwX2NtcF9mbl9kYXRhLAotCQkJICAgY29uc3Qgdm9pZCAqZW50cnksCi0JCQkgICBjb25zdCB2b2lkICplbnRyeV9vcl9rZXksCisJCQkgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJCSAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplbnRyeV9vcl9rZXksCiAJCQkgICBjb25zdCB2b2lkICprZXlkYXRhKQogewogCWNvbnN0IHN0cnVjdCBkaWZmX29wdGlvbnMgKmRpZmZvcHQgPSBoYXNobWFwX2NtcF9mbl9kYXRhOwotCWNvbnN0IHN0cnVjdCBtb3ZlZF9lbnRyeSAqYSA9IGVudHJ5OwotCWNvbnN0IHN0cnVjdCBtb3ZlZF9lbnRyeSAqYiA9IGVudHJ5X29yX2tleTsKKwljb25zdCBzdHJ1Y3QgbW92ZWRfZW50cnkgKmEsICpiOwogCXVuc2lnbmVkIGZsYWdzID0gZGlmZm9wdC0+Y29sb3JfbW92ZWRfd3NfaGFuZGxpbmcKIAkJCSAmIFhERl9XSElURVNQQUNFX0ZMQUdTOwogCisJYSA9IGNvbnRhaW5lcl9vZihlcHRyLCBjb25zdCBzdHJ1Y3QgbW92ZWRfZW50cnksIGVudCk7CisJYiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIGNvbnN0IHN0cnVjdCBtb3ZlZF9lbnRyeSwgZW50KTsKKwogCWlmIChkaWZmb3B0LT5jb2xvcl9tb3ZlZF93c19oYW5kbGluZyAmCiAJICAgIENPTE9SX01PVkVEX1dTX0FMTE9XX0lOREVOVEFUSU9OX0NIQU5HRSkKIAkJLyoKQEAgLTkwOCw4ICs5NjYsOSBAQAogCXN0cnVjdCBtb3ZlZF9lbnRyeSAqcmV0ID0geG1hbGxvYyhzaXplb2YoKnJldCkpOwogCXN0cnVjdCBlbWl0dGVkX2RpZmZfc3ltYm9sICpsID0gJm8tPmVtaXR0ZWRfc3ltYm9scy0+YnVmW2xpbmVfbm9dOwogCXVuc2lnbmVkIGZsYWdzID0gby0+Y29sb3JfbW92ZWRfd3NfaGFuZGxpbmcgJiBYREZfV0hJVEVTUEFDRV9GTEFHUzsKKwl1bnNpZ25lZCBpbnQgaGFzaCA9IHhkaWZmX2hhc2hfc3RyaW5nKGwtPmxpbmUsIGwtPmxlbiwgZmxhZ3MpOwogCi0JcmV0LT5lbnQuaGFzaCA9IHhkaWZmX2hhc2hfc3RyaW5nKGwtPmxpbmUsIGwtPmxlbiwgZmxhZ3MpOworCWhhc2htYXBfZW50cnlfaW5pdCgmcmV0LT5lbnQsIGhhc2gpOwogCXJldC0+ZXMgPSBsOwogCXJldC0+bmV4dF9saW5lID0gTlVMTDsKIApAQCAtOTM5LDExICs5OTgsMTQgQEAKIAkJCWNvbnRpbnVlOwogCQl9CiAKKwkJaWYgKG8tPmNvbG9yX21vdmVkX3dzX2hhbmRsaW5nICYKKwkJICAgIENPTE9SX01PVkVEX1dTX0FMTE9XX0lOREVOVEFUSU9OX0NIQU5HRSkKKwkJCWZpbGxfZXNfaW5kZW50X2RhdGEoJm8tPmVtaXR0ZWRfc3ltYm9scy0+YnVmW25dKTsKIAkJa2V5ID0gcHJlcGFyZV9lbnRyeShvLCBuKTsKIAkJaWYgKHByZXZfbGluZSAmJiBwcmV2X2xpbmUtPmVzLT5zID09IG8tPmVtaXR0ZWRfc3ltYm9scy0+YnVmW25dLnMpCiAJCQlwcmV2X2xpbmUtPm5leHRfbGluZSA9IGtleTsKIAotCQloYXNobWFwX2FkZChobSwga2V5KTsKKwkJaGFzaG1hcF9hZGQoaG0sICZrZXktPmVudCk7CiAJCXByZXZfbGluZSA9IGtleTsKIAl9CiB9CkBAIC05NTksNyArMTAyMSw3IEBACiAJCXN0cnVjdCBtb3ZlZF9lbnRyeSAqcHJldiA9IHBtYltpXS5tYXRjaDsKIAkJc3RydWN0IG1vdmVkX2VudHJ5ICpjdXIgPSAocHJldiAmJiBwcmV2LT5uZXh0X2xpbmUpID8KIAkJCQlwcmV2LT5uZXh0X2xpbmUgOiBOVUxMOwotCQlpZiAoY3VyICYmICFobS0+Y21wZm4obywgY3VyLCBtYXRjaCwgTlVMTCkpIHsKKwkJaWYgKGN1ciAmJiAhaG0tPmNtcGZuKG8sICZjdXItPmVudCwgJm1hdGNoLT5lbnQsIE5VTEwpKSB7CiAJCQlwbWJbaV0ubWF0Y2ggPSBjdXI7CiAJCX0gZWxzZSB7CiAJCQlwbWJbaV0ubWF0Y2ggPSBOVUxMOwpAQCAtOTc2LDcgKzEwMzgsNyBAQAogCWludCBpOwogCWNoYXIgKmdvdF9tYXRjaCA9IHhjYWxsb2MoMSwgcG1iX25yKTsKIAotCWZvciAoOyBtYXRjaDsgbWF0Y2ggPSBoYXNobWFwX2dldF9uZXh0KGhtLCBtYXRjaCkpIHsKKwloYXNobWFwX2Zvcl9lYWNoX2VudHJ5X2Zyb20oaG0sIG1hdGNoLCBlbnQpIHsKIAkJZm9yIChpID0gMDsgaSA8IHBtYl9ucjsgaSsrKSB7CiAJCQlzdHJ1Y3QgbW92ZWRfZW50cnkgKnByZXYgPSBwbWJbaV0ubWF0Y2g7CiAJCQlzdHJ1Y3QgbW92ZWRfZW50cnkgKmN1ciA9IChwcmV2ICYmIHByZXYtPm5leHRfbGluZSkgPwpAQCAtMTAxNyw4ICsxMDc5LDcgQEAKIAogCQlpZiAobHAgPCBwbWJfbnIgJiYgcnAgPiAtMSAmJiBscCA8IHJwKSB7CiAJCQlwbWJbbHBdID0gcG1iW3JwXTsKLQkJCXBtYltycF0ubWF0Y2ggPSBOVUxMOwotCQkJcG1iW3JwXS53c2Quc3RyaW5nID0gTlVMTDsKKwkJCW1lbXNldCgmcG1iW3JwXSwgMCwgc2l6ZW9mKHBtYltycF0pKTsKIAkJCXJwLS07CiAJCQlscCsrOwogCQl9CkBAIC0xMDM4LDE0ICsxMDk5LDE3IEBACiAgKiBUaGUgbGFzdCBibG9jayBjb25zaXN0cyBvZiB0aGUgKG4gLSBibG9ja19sZW5ndGgpJ3RoIGxpbmUgdXAgdG8gYnV0IG5vdAogICogaW5jbHVkaW5nIHRoZSBudGggbGluZS4KICAqCisgKiBSZXR1cm5zIDAgaWYgdGhlIGxhc3QgYmxvY2sgaXMgZW1wdHkgb3IgaXMgdW5zZXQgYnkgdGhpcyBmdW5jdGlvbiwgbm9uIHplcm8KKyAqIG90aGVyd2lzZS4KKyAqCiAgKiBORUVEU1dPUks6IFRoaXMgdXNlcyB0aGUgc2FtZSBoZXVyaXN0aWMgYXMgYmxhbWVfZW50cnlfc2NvcmUoKSBpbiBibGFtZS5jLgogICogVGhpbmsgb2YgYSB3YXkgdG8gdW5pZnkgdGhlbS4KICAqLwotc3RhdGljIHZvaWQgYWRqdXN0X2xhc3RfYmxvY2soc3RydWN0IGRpZmZfb3B0aW9ucyAqbywgaW50IG4sIGludCBibG9ja19sZW5ndGgpCitzdGF0aWMgaW50IGFkanVzdF9sYXN0X2Jsb2NrKHN0cnVjdCBkaWZmX29wdGlvbnMgKm8sIGludCBuLCBpbnQgYmxvY2tfbGVuZ3RoKQogewogCWludCBpLCBhbG51bV9jb3VudCA9IDA7CiAJaWYgKG8tPmNvbG9yX21vdmVkID09IENPTE9SX01PVkVEX1BMQUlOKQotCQlyZXR1cm47CisJCXJldHVybiBibG9ja19sZW5ndGg7CiAJZm9yIChpID0gMTsgaSA8IGJsb2NrX2xlbmd0aCArIDE7IGkrKykgewogCQljb25zdCBjaGFyICpjID0gby0+ZW1pdHRlZF9zeW1ib2xzLT5idWZbbiAtIGldLmxpbmU7CiAJCWZvciAoOyAqYzsgYysrKSB7CkBAIC0xMDUzLDExICsxMTE3LDEyIEBACiAJCQkJY29udGludWU7CiAJCQlhbG51bV9jb3VudCsrOwogCQkJaWYgKGFsbnVtX2NvdW50ID49IENPTE9SX01PVkVEX01JTl9BTE5VTV9DT1VOVCkKLQkJCQlyZXR1cm47CisJCQkJcmV0dXJuIDE7CiAJCX0KIAl9CiAJZm9yIChpID0gMTsgaSA8IGJsb2NrX2xlbmd0aCArIDE7IGkrKykKIAkJby0+ZW1pdHRlZF9zeW1ib2xzLT5idWZbbiAtIGldLmZsYWdzICY9IH5ESUZGX1NZTUJPTF9NT1ZFRF9MSU5FOworCXJldHVybiAwOwogfQogCiAvKiBGaW5kIGJsb2NrcyBvZiBtb3ZlZCBjb2RlLCBkZWxlZ2F0ZSBhY3R1YWwgY29sb3JpbmcgZGVjaXNpb24gdG8gaGVscGVyICovCkBAIC0xMDY3LDcgKzExMzIsNyBAQAogewogCXN0cnVjdCBtb3ZlZF9ibG9jayAqcG1iID0gTlVMTDsgLyogcG90ZW50aWFsbHkgbW92ZWQgYmxvY2tzICovCiAJaW50IHBtYl9uciA9IDAsIHBtYl9hbGxvYyA9IDA7Ci0JaW50IG4sIGZsaXBwZWRfYmxvY2sgPSAxLCBibG9ja19sZW5ndGggPSAwOworCWludCBuLCBmbGlwcGVkX2Jsb2NrID0gMCwgYmxvY2tfbGVuZ3RoID0gMDsKIAogCiAJZm9yIChuID0gMDsgbiA8IG8tPmVtaXR0ZWRfc3ltYm9scy0+bnI7IG4rKykgewpAQCAtMTA3NSwyMiArMTE0MCwyMyBAQAogCQlzdHJ1Y3QgbW92ZWRfZW50cnkgKmtleTsKIAkJc3RydWN0IG1vdmVkX2VudHJ5ICptYXRjaCA9IE5VTEw7CiAJCXN0cnVjdCBlbWl0dGVkX2RpZmZfc3ltYm9sICpsID0gJm8tPmVtaXR0ZWRfc3ltYm9scy0+YnVmW25dOworCQllbnVtIGRpZmZfc3ltYm9sIGxhc3Rfc3ltYm9sID0gMDsKIAogCQlzd2l0Y2ggKGwtPnMpIHsKIAkJY2FzZSBESUZGX1NZTUJPTF9QTFVTOgogCQkJaG0gPSBkZWxfbGluZXM7CiAJCQlrZXkgPSBwcmVwYXJlX2VudHJ5KG8sIG4pOwotCQkJbWF0Y2ggPSBoYXNobWFwX2dldChobSwga2V5LCBOVUxMKTsKKwkJCW1hdGNoID0gaGFzaG1hcF9nZXRfZW50cnkoaG0sIGtleSwgZW50LCBOVUxMKTsKIAkJCWZyZWUoa2V5KTsKIAkJCWJyZWFrOwogCQljYXNlIERJRkZfU1lNQk9MX01JTlVTOgogCQkJaG0gPSBhZGRfbGluZXM7CiAJCQlrZXkgPSBwcmVwYXJlX2VudHJ5KG8sIG4pOwotCQkJbWF0Y2ggPSBoYXNobWFwX2dldChobSwga2V5LCBOVUxMKTsKKwkJCW1hdGNoID0gaGFzaG1hcF9nZXRfZW50cnkoaG0sIGtleSwgZW50LCBOVUxMKTsKIAkJCWZyZWUoa2V5KTsKIAkJCWJyZWFrOwogCQlkZWZhdWx0OgotCQkJZmxpcHBlZF9ibG9jayA9IDE7CisJCQlmbGlwcGVkX2Jsb2NrID0gMDsKIAkJfQogCiAJCWlmICghbWF0Y2gpIHsKQEAgLTExMDEsMTMgKzExNjcsMTYgQEAKIAkJCQltb3ZlZF9ibG9ja19jbGVhcigmcG1iW2ldKTsKIAkJCXBtYl9uciA9IDA7CiAJCQlibG9ja19sZW5ndGggPSAwOworCQkJZmxpcHBlZF9ibG9jayA9IDA7CisJCQlsYXN0X3N5bWJvbCA9IGwtPnM7CiAJCQljb250aW51ZTsKIAkJfQogCi0JCWwtPmZsYWdzIHw9IERJRkZfU1lNQk9MX01PVkVEX0xJTkU7Ci0KLQkJaWYgKG8tPmNvbG9yX21vdmVkID09IENPTE9SX01PVkVEX1BMQUlOKQorCQlpZiAoby0+Y29sb3JfbW92ZWQgPT0gQ09MT1JfTU9WRURfUExBSU4pIHsKKwkJCWxhc3Rfc3ltYm9sID0gbC0+czsKKwkJCWwtPmZsYWdzIHw9IERJRkZfU1lNQk9MX01PVkVEX0xJTkU7CiAJCQljb250aW51ZTsKKwkJfQogCiAJCWlmIChvLT5jb2xvcl9tb3ZlZF93c19oYW5kbGluZyAmCiAJCSAgICBDT0xPUl9NT1ZFRF9XU19BTExPV19JTkRFTlRBVElPTl9DSEFOR0UpCkBAIC0xMTIyLDcgKzExOTEsNyBAQAogCQkJICogVGhlIGN1cnJlbnQgbGluZSBpcyB0aGUgc3RhcnQgb2YgYSBuZXcgYmxvY2suCiAJCQkgKiBTZXR1cCB0aGUgc2V0IG9mIHBvdGVudGlhbCBibG9ja3MuCiAJCQkgKi8KLQkJCWZvciAoOyBtYXRjaDsgbWF0Y2ggPSBoYXNobWFwX2dldF9uZXh0KGhtLCBtYXRjaCkpIHsKKwkJCWhhc2htYXBfZm9yX2VhY2hfZW50cnlfZnJvbShobSwgbWF0Y2gsIGVudCkgewogCQkJCUFMTE9DX0dST1cocG1iLCBwbWJfbnIgKyAxLCBwbWJfYWxsb2MpOwogCQkJCWlmIChvLT5jb2xvcl9tb3ZlZF93c19oYW5kbGluZyAmCiAJCQkJICAgIENPTE9SX01PVkVEX1dTX0FMTE9XX0lOREVOVEFUSU9OX0NIQU5HRSkgewpAQCAtMTEzMCwyMSArMTE5OSwyNyBAQAogCQkJCQkJCSAgICAgJnBtYltwbWJfbnJdLndzZCkpCiAJCQkJCQlwbWJbcG1iX25yKytdLm1hdGNoID0gbWF0Y2g7CiAJCQkJfSBlbHNlIHsKLQkJCQkJcG1iW3BtYl9ucl0ud3NkLnN0cmluZyA9IE5VTEw7CisJCQkJCXBtYltwbWJfbnJdLndzZCA9IDA7CiAJCQkJCXBtYltwbWJfbnIrK10ubWF0Y2ggPSBtYXRjaDsKIAkJCQl9CiAJCQl9CiAKLQkJCWZsaXBwZWRfYmxvY2sgPSAoZmxpcHBlZF9ibG9jayArIDEpICUgMjsKKwkJCWlmIChhZGp1c3RfbGFzdF9ibG9jayhvLCBuLCBibG9ja19sZW5ndGgpICYmCisJCQkgICAgcG1iX25yICYmIGxhc3Rfc3ltYm9sICE9IGwtPnMpCisJCQkJZmxpcHBlZF9ibG9jayA9IChmbGlwcGVkX2Jsb2NrICsgMSkgJSAyOworCQkJZWxzZQorCQkJCWZsaXBwZWRfYmxvY2sgPSAwOwogCi0JCQlhZGp1c3RfbGFzdF9ibG9jayhvLCBuLCBibG9ja19sZW5ndGgpOwogCQkJYmxvY2tfbGVuZ3RoID0gMDsKIAkJfQogCi0JCWJsb2NrX2xlbmd0aCsrOwotCi0JCWlmIChmbGlwcGVkX2Jsb2NrICYmIG8tPmNvbG9yX21vdmVkICE9IENPTE9SX01PVkVEX0JMT0NLUykKLQkJCWwtPmZsYWdzIHw9IERJRkZfU1lNQk9MX01PVkVEX0xJTkVfQUxUOworCQlpZiAocG1iX25yKSB7CisJCQlibG9ja19sZW5ndGgrKzsKKwkJCWwtPmZsYWdzIHw9IERJRkZfU1lNQk9MX01PVkVEX0xJTkU7CisJCQlpZiAoZmxpcHBlZF9ibG9jayAmJiBvLT5jb2xvcl9tb3ZlZCAhPSBDT0xPUl9NT1ZFRF9CTE9DS1MpCisJCQkJbC0+ZmxhZ3MgfD0gRElGRl9TWU1CT0xfTU9WRURfTElORV9BTFQ7CisJCX0KKwkJbGFzdF9zeW1ib2wgPSBsLT5zOwogCX0KIAlhZGp1c3RfbGFzdF9ibG9jayhvLCBuLCBibG9ja19sZW5ndGgpOwogCkBAIC0xNDg4LDcgKzE1NjMsNyBAQAogc3RhdGljIHZvaWQgZW1pdF9kaWZmX3N5bWJvbChzdHJ1Y3QgZGlmZl9vcHRpb25zICpvLCBlbnVtIGRpZmZfc3ltYm9sIHMsCiAJCQkgICAgIGNvbnN0IGNoYXIgKmxpbmUsIGludCBsZW4sIHVuc2lnbmVkIGZsYWdzKQogewotCXN0cnVjdCBlbWl0dGVkX2RpZmZfc3ltYm9sIGUgPSB7bGluZSwgbGVuLCBmbGFncywgc307CisJc3RydWN0IGVtaXR0ZWRfZGlmZl9zeW1ib2wgZSA9IHtsaW5lLCBsZW4sIGZsYWdzLCAwLCAwLCBzfTsKIAogCWlmIChvLT5lbWl0dGVkX3N5bWJvbHMpCiAJCWFwcGVuZF9lbWl0dGVkX2RpZmZfc3ltYm9sKG8sICZlKTsKQEAgLTE1NDYsOCArMTYyMSw3IEBACiAJcmV0dXJuIHdzX2JsYW5rX2xpbmUobGluZSwgbGVuLCBlY2JkYXRhLT53c19ydWxlKTsKIH0KIAotc3RhdGljIHZvaWQgZW1pdF9hZGRfbGluZShjb25zdCBjaGFyICpyZXNldCwKLQkJCSAgc3RydWN0IGVtaXRfY2FsbGJhY2sgKmVjYmRhdGEsCitzdGF0aWMgdm9pZCBlbWl0X2FkZF9saW5lKHN0cnVjdCBlbWl0X2NhbGxiYWNrICplY2JkYXRhLAogCQkJICBjb25zdCBjaGFyICpsaW5lLCBpbnQgbGVuKQogewogCXVuc2lnbmVkIGZsYWdzID0gV1NFSF9ORVcgfCBlY2JkYXRhLT53c19ydWxlOwpAQCAtMTU1NywxNiArMTYzMSwxNCBAQAogCWVtaXRfZGlmZl9zeW1ib2woZWNiZGF0YS0+b3B0LCBESUZGX1NZTUJPTF9QTFVTLCBsaW5lLCBsZW4sIGZsYWdzKTsKIH0KIAotc3RhdGljIHZvaWQgZW1pdF9kZWxfbGluZShjb25zdCBjaGFyICpyZXNldCwKLQkJCSAgc3RydWN0IGVtaXRfY2FsbGJhY2sgKmVjYmRhdGEsCitzdGF0aWMgdm9pZCBlbWl0X2RlbF9saW5lKHN0cnVjdCBlbWl0X2NhbGxiYWNrICplY2JkYXRhLAogCQkJICBjb25zdCBjaGFyICpsaW5lLCBpbnQgbGVuKQogewogCXVuc2lnbmVkIGZsYWdzID0gV1NFSF9PTEQgfCBlY2JkYXRhLT53c19ydWxlOwogCWVtaXRfZGlmZl9zeW1ib2woZWNiZGF0YS0+b3B0LCBESUZGX1NZTUJPTF9NSU5VUywgbGluZSwgbGVuLCBmbGFncyk7CiB9CiAKLXN0YXRpYyB2b2lkIGVtaXRfY29udGV4dF9saW5lKGNvbnN0IGNoYXIgKnJlc2V0LAotCQkJICAgICAgc3RydWN0IGVtaXRfY2FsbGJhY2sgKmVjYmRhdGEsCitzdGF0aWMgdm9pZCBlbWl0X2NvbnRleHRfbGluZShzdHJ1Y3QgZW1pdF9jYWxsYmFjayAqZWNiZGF0YSwKIAkJCSAgICAgIGNvbnN0IGNoYXIgKmxpbmUsIGludCBsZW4pCiB7CiAJdW5zaWduZWQgZmxhZ3MgPSBXU0VIX0NPTlRFWFQgfCBlY2JkYXRhLT53c19ydWxlOwpAQCAtMTYwNCw3ICsxNjc2LDEwIEBACiAJaWYgKGVjYmRhdGEtPm9wdC0+ZmxhZ3MuZHVhbF9jb2xvcl9kaWZmZWRfZGlmZnMpCiAJCXN0cmJ1Zl9hZGRzdHIoJm1zZ2J1ZiwgcmV2ZXJzZSk7CiAJc3RyYnVmX2FkZHN0cigmbXNnYnVmLCBmcmFnKTsKLQlzdHJidWZfYWRkKCZtc2didWYsIGxpbmUsIGVwIC0gbGluZSk7CisJaWYgKGVjYmRhdGEtPm9wdC0+ZmxhZ3Muc3VwcHJlc3NfaHVua19oZWFkZXJfbGluZV9jb3VudCkKKwkJc3RyYnVmX2FkZCgmbXNnYnVmLCBhdGF0LCBzaXplb2YoYXRhdCkpOworCWVsc2UKKwkJc3RyYnVmX2FkZCgmbXNnYnVmLCBsaW5lLCBlcCAtIGxpbmUpOwogCXN0cmJ1Zl9hZGRzdHIoJm1zZ2J1ZiwgcmVzZXQpOwogCiAJLyoKQEAgLTE2MzcsNyArMTcxMiw4IEBACiAJc3RyYnVmX3JlbGVhc2UoJm1zZ2J1Zik7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgZGlmZl90ZW1wZmlsZSAqY2xhaW1fZGlmZl90ZW1wZmlsZSh2b2lkKSB7CitzdGF0aWMgc3RydWN0IGRpZmZfdGVtcGZpbGUgKmNsYWltX2RpZmZfdGVtcGZpbGUodm9pZCkKK3sKIAlpbnQgaTsKIAlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShkaWZmX3RlbXApOyBpKyspCiAJCWlmICghZGlmZl90ZW1wW2ldLm5hbWUpCkBAIC0xNjc0LDcgKzE3NTAsNiBAQAogCQkJICAgICAgIGludCBwcmVmaXgsIGNvbnN0IGNoYXIgKmRhdGEsIGludCBzaXplKQogewogCWNvbnN0IGNoYXIgKmVuZHAgPSBOVUxMOwotCWNvbnN0IGNoYXIgKnJlc2V0ID0gZGlmZl9nZXRfY29sb3IoZWNiLT5jb2xvcl9kaWZmLCBESUZGX1JFU0VUKTsKIAogCXdoaWxlICgwIDwgc2l6ZSkgewogCQlpbnQgbGVuOwpAQCAtMTY4MywxMCArMTc1OCwxMCBAQAogCQlsZW4gPSBlbmRwID8gKGVuZHAgLSBkYXRhICsgMSkgOiBzaXplOwogCQlpZiAocHJlZml4ICE9ICcrJykgewogCQkJZWNiLT5sbm9faW5fcHJlaW1hZ2UrKzsKLQkJCWVtaXRfZGVsX2xpbmUocmVzZXQsIGVjYiwgZGF0YSwgbGVuKTsKKwkJCWVtaXRfZGVsX2xpbmUoZWNiLCBkYXRhLCBsZW4pOwogCQl9IGVsc2UgewogCQkJZWNiLT5sbm9faW5fcG9zdGltYWdlKys7Ci0JCQllbWl0X2FkZF9saW5lKHJlc2V0LCBlY2IsIGRhdGEsIGxlbik7CisJCQllbWl0X2FkZF9saW5lKGVjYiwgZGF0YSwgbGVuKTsKIAkJfQogCQlzaXplIC09IGxlbjsKIAkJZGF0YSArPSBsZW47CkBAIC0yMjIzLDcgKzIyOTgsNyBAQAogCXJldHVybiBtc2didWYtPmJ1ZjsKIH0KIAotc3RhdGljIHVuc2lnbmVkIGxvbmcgc2FuZV90cnVuY2F0ZV9saW5lKHN0cnVjdCBlbWl0X2NhbGxiYWNrICplY2IsIGNoYXIgKmxpbmUsIHVuc2lnbmVkIGxvbmcgbGVuKQorc3RhdGljIHVuc2lnbmVkIGxvbmcgc2FuZV90cnVuY2F0ZV9saW5lKGNoYXIgKmxpbmUsIHVuc2lnbmVkIGxvbmcgbGVuKQogewogCWNvbnN0IGNoYXIgKmNwOwogCXVuc2lnbmVkIGxvbmcgYWxsb3Q7CkBAIC0yMjU3LDcgKzIzMzIsNiBAQAogc3RhdGljIHZvaWQgZm5fb3V0X2NvbnN1bWUodm9pZCAqcHJpdiwgY2hhciAqbGluZSwgdW5zaWduZWQgbG9uZyBsZW4pCiB7CiAJc3RydWN0IGVtaXRfY2FsbGJhY2sgKmVjYmRhdGEgPSBwcml2OwotCWNvbnN0IGNoYXIgKnJlc2V0ID0gZGlmZl9nZXRfY29sb3IoZWNiZGF0YS0+Y29sb3JfZGlmZiwgRElGRl9SRVNFVCk7CiAJc3RydWN0IGRpZmZfb3B0aW9ucyAqbyA9IGVjYmRhdGEtPm9wdDsKIAogCW8tPmZvdW5kX2NoYW5nZXMgPSAxOwpAQCAtMjI4OCw3ICsyMzYyLDcgQEAKIAlpZiAobGluZVswXSA9PSAnQCcpIHsKIAkJaWYgKGVjYmRhdGEtPmRpZmZfd29yZHMpCiAJCQlkaWZmX3dvcmRzX2ZsdXNoKGVjYmRhdGEpOwotCQlsZW4gPSBzYW5lX3RydW5jYXRlX2xpbmUoZWNiZGF0YSwgbGluZSwgbGVuKTsKKwkJbGVuID0gc2FuZV90cnVuY2F0ZV9saW5lKGxpbmUsIGxlbik7CiAJCWZpbmRfbG5vKGxpbmUsIGVjYmRhdGEpOwogCQllbWl0X2h1bmtfaGVhZGVyKGVjYmRhdGEsIGxpbmUsIGxlbik7CiAJCXJldHVybjsKQEAgLTIzMjQsMTYgKzIzOTgsMTYgQEAKIAlzd2l0Y2ggKGxpbmVbMF0pIHsKIAljYXNlICcrJzoKIAkJZWNiZGF0YS0+bG5vX2luX3Bvc3RpbWFnZSsrOwotCQllbWl0X2FkZF9saW5lKHJlc2V0LCBlY2JkYXRhLCBsaW5lICsgMSwgbGVuIC0gMSk7CisJCWVtaXRfYWRkX2xpbmUoZWNiZGF0YSwgbGluZSArIDEsIGxlbiAtIDEpOwogCQlicmVhazsKIAljYXNlICctJzoKIAkJZWNiZGF0YS0+bG5vX2luX3ByZWltYWdlKys7Ci0JCWVtaXRfZGVsX2xpbmUocmVzZXQsIGVjYmRhdGEsIGxpbmUgKyAxLCBsZW4gLSAxKTsKKwkJZW1pdF9kZWxfbGluZShlY2JkYXRhLCBsaW5lICsgMSwgbGVuIC0gMSk7CiAJCWJyZWFrOwogCWNhc2UgJyAnOgogCQllY2JkYXRhLT5sbm9faW5fcG9zdGltYWdlKys7CiAJCWVjYmRhdGEtPmxub19pbl9wcmVpbWFnZSsrOwotCQllbWl0X2NvbnRleHRfbGluZShyZXNldCwgZWNiZGF0YSwgbGluZSArIDEsIGxlbiAtIDEpOworCQllbWl0X2NvbnRleHRfbGluZShlY2JkYXRhLCBsaW5lICsgMSwgbGVuIC0gMSk7CiAJCWJyZWFrOwogCWRlZmF1bHQ6CiAJCS8qIGluY29tcGxldGUgbGluZSBhdCB0aGUgZW5kICovCkBAIC0yNDIxLDIyICsyNDk1LDYgQEAKIAl9CiB9CiAKLXN0cnVjdCBkaWZmc3RhdF90IHsKLQlpbnQgbnI7Ci0JaW50IGFsbG9jOwotCXN0cnVjdCBkaWZmc3RhdF9maWxlIHsKLQkJY2hhciAqZnJvbV9uYW1lOwotCQljaGFyICpuYW1lOwotCQljaGFyICpwcmludF9uYW1lOwotCQljb25zdCBjaGFyICpjb21tZW50czsKLQkJdW5zaWduZWQgaXNfdW5tZXJnZWQ6MTsKLQkJdW5zaWduZWQgaXNfYmluYXJ5OjE7Ci0JCXVuc2lnbmVkIGlzX3JlbmFtZWQ6MTsKLQkJdW5zaWduZWQgaXNfaW50ZXJlc3Rpbmc6MTsKLQkJdWludG1heF90IGFkZGVkLCBkZWxldGVkOwotCX0gKipmaWxlczsKLX07Ci0KIHN0YXRpYyBzdHJ1Y3QgZGlmZnN0YXRfZmlsZSAqZGlmZnN0YXRfYWRkKHN0cnVjdCBkaWZmc3RhdF90ICpkaWZmc3RhdCwKIAkJCQkJICBjb25zdCBjaGFyICpuYW1lX2EsCiAJCQkJCSAgY29uc3QgY2hhciAqbmFtZV9iKQpAQCAtMjQ3Nyw3ICsyNTM1LDcgQEAKIAkvKgogCSAqIG1ha2Ugc3VyZSB0aGF0IGF0IGxlYXN0IG9uZSAnLScgb3IgJysnIGlzIHByaW50ZWQgaWYKIAkgKiB0aGVyZSBpcyBhbnkgY2hhbmdlIHRvIHRoaXMgcGF0aC4gVGhlIGVhc2llc3Qgd2F5IGlzIHRvCi0JICogc2NhbGUgbGluZWFybHkgYXMgaWYgdGhlIGFsbG90ZWQgd2lkdGggaXMgb25lIGNvbHVtbiBzaG9ydGVyCisJICogc2NhbGUgbGluZWFybHkgYXMgaWYgdGhlIGFsbG90dGVkIHdpZHRoIGlzIG9uZSBjb2x1bW4gc2hvcnRlcgogCSAqIHRoYW4gaXQgaXMsIGFuZCB0aGVuIGFkZCAxIHRvIHRoZSByZXN1bHQuCiAJICovCiAJcmV0dXJuIDEgKyAoaXQgKiAod2lkdGggLSAxKSAvIG1heF9jaGFuZ2UpOwpAQCAtMzA4Myw3ICszMTQxLDcgQEAKIAlnYXRoZXJfZGlyc3RhdChvcHRpb25zLCAmZGlyLCBjaGFuZ2VkLCAiIiwgMCk7CiB9CiAKLXN0YXRpYyB2b2lkIGZyZWVfZGlmZnN0YXRfaW5mbyhzdHJ1Y3QgZGlmZnN0YXRfdCAqZGlmZnN0YXQpCit2b2lkIGZyZWVfZGlmZnN0YXRfaW5mbyhzdHJ1Y3QgZGlmZnN0YXRfdCAqZGlmZnN0YXQpCiB7CiAJaW50IGk7CiAJZm9yIChpID0gMDsgaSA8IGRpZmZzdGF0LT5ucjsgaSsrKSB7CkBAIC0zMTIyLDcgKzMxODAsNyBAQAogCWZvciAoY250ID0gMTsgY250IDwgbWFya2VyX3NpemU7IGNudCsrKQogCQlpZiAobGluZVtjbnRdICE9IGZpcnN0Y2hhcikKIAkJCXJldHVybiAwOwotCS8qIGxpbmVbMV0gdGhydSBsaW5lW21hcmtlcl9zaXplLTFdIGFyZSBzYW1lIGFzIGZpcnN0Y2hhciAqLworCS8qIGxpbmVbMV0gdGhyb3VnaCBsaW5lW21hcmtlcl9zaXplLTFdIGFyZSBzYW1lIGFzIGZpcnN0Y2hhciAqLwogCWlmIChsZW4gPCBtYXJrZXJfc2l6ZSArIDEgfHwgIWlzc3BhY2UobGluZVttYXJrZXJfc2l6ZV0pKQogCQlyZXR1cm4gMDsKIAlyZXR1cm4gMTsKQEAgLTMzMTMsMTQgKzMzNzEsMTQgQEAKIAkJb3B0aW9ucy0+Yl9wcmVmaXggPSBiOwogfQogCi1zdHJ1Y3QgdXNlcmRpZmZfZHJpdmVyICpnZXRfdGV4dGNvbnYoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCitzdHJ1Y3QgdXNlcmRpZmZfZHJpdmVyICpnZXRfdGV4dGNvbnYoc3RydWN0IHJlcG9zaXRvcnkgKnIsCiAJCQkJICAgICBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqb25lKQogewogCWlmICghRElGRl9GSUxFX1ZBTElEKG9uZSkpCiAJCXJldHVybiBOVUxMOwogCi0JZGlmZl9maWxlc3BlY19sb2FkX2RyaXZlcihvbmUsIGlzdGF0ZSk7Ci0JcmV0dXJuIHVzZXJkaWZmX2dldF90ZXh0Y29udihvbmUtPmRyaXZlcik7CisJZGlmZl9maWxlc3BlY19sb2FkX2RyaXZlcihvbmUsIHItPmluZGV4KTsKKwlyZXR1cm4gdXNlcmRpZmZfZ2V0X3RleHRjb252KHIsIG9uZS0+ZHJpdmVyKTsKIH0KIAogc3RhdGljIHZvaWQgYnVpbHRpbl9kaWZmKGNvbnN0IGNoYXIgKm5hbWVfYSwKQEAgLTMzNjksOCArMzQyNyw4IEBACiAJfQogCiAJaWYgKG8tPmZsYWdzLmFsbG93X3RleHRjb252KSB7Ci0JCXRleHRjb252X29uZSA9IGdldF90ZXh0Y29udihvLT5yZXBvLT5pbmRleCwgb25lKTsKLQkJdGV4dGNvbnZfdHdvID0gZ2V0X3RleHRjb252KG8tPnJlcG8tPmluZGV4LCB0d28pOworCQl0ZXh0Y29udl9vbmUgPSBnZXRfdGV4dGNvbnYoby0+cmVwbywgb25lKTsKKwkJdGV4dGNvbnZfdHdvID0gZ2V0X3RleHRjb252KG8tPnJlcG8sIHR3byk7CiAJfQogCiAJLyogTmV2ZXIgdXNlIGEgbm9uLXZhbGlkIGZpbGVuYW1lIGFueXdoZXJlIGlmIGF0IGFsbCBwb3NzaWJsZSAqLwpAQCAtMzQ3Niw3ICszNTM0LDcgQEAKIAkJby0+Zm91bmRfY2hhbmdlcyA9IDE7CiAJfSBlbHNlIHsKIAkJLyogQ3JhenkgeGRsIGludGVyZmFjZXMuLiAqLwotCQljb25zdCBjaGFyICpkaWZmb3B0cyA9IGdldGVudigiR0lUX0RJRkZfT1BUUyIpOworCQljb25zdCBjaGFyICpkaWZmb3B0czsKIAkJY29uc3QgY2hhciAqdjsKIAkJeHBwYXJhbV90IHhwcDsKIAkJeGRlbWl0Y29uZl90IHhlY2ZnOwpAQCAtMzUxOSwxMiArMzU3NywxNSBAQAogCQkJeGVjZmcuZmxhZ3MgfD0gWERMX0VNSVRfRlVOQ0NPTlRFWFQ7CiAJCWlmIChwZSkKIAkJCXhkaWZmX3NldF9maW5kX2Z1bmMoJnhlY2ZnLCBwZS0+cGF0dGVybiwgcGUtPmNmbGFncyk7CisKKwkJZGlmZm9wdHMgPSBnZXRlbnYoIkdJVF9ESUZGX09QVFMiKTsKIAkJaWYgKCFkaWZmb3B0cykKIAkJCTsKIAkJZWxzZSBpZiAoc2tpcF9wcmVmaXgoZGlmZm9wdHMsICItLXVuaWZpZWQ9IiwgJnYpKQogCQkJeGVjZmcuY3R4bGVuID0gc3RydG91bCh2LCBOVUxMLCAxMCk7CiAJCWVsc2UgaWYgKHNraXBfcHJlZml4KGRpZmZvcHRzLCAiLXUiLCAmdikpCiAJCQl4ZWNmZy5jdHhsZW4gPSBzdHJ0b3VsKHYsIE5VTEwsIDEwKTsKKwogCQlpZiAoby0+d29yZF9kaWZmKQogCQkJaW5pdF9kaWZmX3dvcmRzX2RhdGEoJmVjYmRhdGEsIG8sIG9uZSwgdHdvKTsKIAkJaWYgKHhkaV9kaWZmX291dGYoJm1mMSwgJm1mMiwgTlVMTCwgZm5fb3V0X2NvbnN1bWUsCkBAIC0zOTYzLDcgKzQwMjQsNyBAQAogCQkJCXJldHVybiAwOwogCQkJfQogCQl9Ci0JCXMtPmRhdGEgPSByZWFkX29iamVjdF9maWxlKCZzLT5vaWQsICZ0eXBlLCAmcy0+c2l6ZSk7CisJCXMtPmRhdGEgPSByZXBvX3JlYWRfb2JqZWN0X2ZpbGUociwgJnMtPm9pZCwgJnR5cGUsICZzLT5zaXplKTsKIAkJaWYgKCFzLT5kYXRhKQogCQkJZGllKCJ1bmFibGUgdG8gcmVhZCAlcyIsIG9pZF90b19oZXgoJnMtPm9pZCkpOwogCQlzLT5zaG91bGRfZnJlZSA9IDE7CkBAIC00MTEyLDcgKzQxNzMsNiBAQAogCQkJICAgICAgc3RydWN0IGRpZmZfZmlsZXNwZWMgKm9uZSwKIAkJCSAgICAgIHN0cnVjdCBkaWZmX2ZpbGVzcGVjICp0d28sCiAJCQkgICAgICBjb25zdCBjaGFyICp4ZnJtX21zZywKLQkJCSAgICAgIGludCBjb21wbGV0ZV9yZXdyaXRlLAogCQkJICAgICAgc3RydWN0IGRpZmZfb3B0aW9ucyAqbykKIHsKIAlzdHJ1Y3QgYXJndl9hcnJheSBhcmd2ID0gQVJHVl9BUlJBWV9JTklUOwpAQCAtNDEzNiw2ICs0MTk2LDggQEAKIAlhcmd2X2FycmF5X3B1c2hmKCZlbnYsICJHSVRfRElGRl9QQVRIX0NPVU5URVI9JWQiLCArK28tPmRpZmZfcGF0aF9jb3VudGVyKTsKIAlhcmd2X2FycmF5X3B1c2hmKCZlbnYsICJHSVRfRElGRl9QQVRIX1RPVEFMPSVkIiwgcS0+bnIpOwogCisJZGlmZl9mcmVlX2ZpbGVzcGVjX2RhdGEob25lKTsKKwlkaWZmX2ZyZWVfZmlsZXNwZWNfZGF0YSh0d28pOwogCWlmIChydW5fY29tbWFuZF92X29wdF9jZF9lbnYoYXJndi5hcmd2LCBSVU5fVVNJTkdfU0hFTEwsIE5VTEwsIGVudi5hcmd2KSkKIAkJZGllKF8oImV4dGVybmFsIGRpZmYgZGllZCwgc3RvcHBpbmcgYXQgJXMiKSwgbmFtZSk7CiAKQEAgLTQyNzAsOCArNDMzMiw3IEBACiAJfQogCiAJaWYgKHBnbSkgewotCQlydW5fZXh0ZXJuYWxfZGlmZihwZ20sIG5hbWUsIG90aGVyLCBvbmUsIHR3bywgeGZybV9tc2csCi0JCQkJICBjb21wbGV0ZV9yZXdyaXRlLCBvKTsKKwkJcnVuX2V4dGVybmFsX2RpZmYocGdtLCBuYW1lLCBvdGhlciwgb25lLCB0d28sIHhmcm1fbXNnLCBvKTsKIAkJcmV0dXJuOwogCX0KIAlpZiAob25lICYmIHR3bykKQEAgLTQ0MjAsNiArNDQ4MSw4IEBACiAJYnVpbHRpbl9jaGVja2RpZmYobmFtZSwgb3RoZXIsIGF0dHJfcGF0aCwgcC0+b25lLCBwLT50d28sIG8pOwogfQogCitzdGF0aWMgdm9pZCBwcmVwX3BhcnNlX29wdGlvbnMoc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyk7CisKIHZvaWQgcmVwb19kaWZmX3NldHVwKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zKQogewogCW1lbWNweShvcHRpb25zLCAmZGVmYXVsdF9kaWZmX29wdGlvbnMsIHNpemVvZigqb3B0aW9ucykpOwpAQCAtNDQ2MSw2ICs0NTI0LDggQEAKIAogCW9wdGlvbnMtPmNvbG9yX21vdmVkID0gZGlmZl9jb2xvcl9tb3ZlZF9kZWZhdWx0OwogCW9wdGlvbnMtPmNvbG9yX21vdmVkX3dzX2hhbmRsaW5nID0gZGlmZl9jb2xvcl9tb3ZlZF93c19kZWZhdWx0OworCisJcHJlcF9wYXJzZV9vcHRpb25zKG9wdGlvbnMpOwogfQogCiB2b2lkIGRpZmZfc2V0dXBfZG9uZShzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zKQpAQCAtNDU2NCw2OCArNDYyOSw4IEBACiAKIAlpZiAoIW9wdGlvbnMtPnVzZV9jb2xvciB8fCBleHRlcm5hbF9kaWZmKCkpCiAJCW9wdGlvbnMtPmNvbG9yX21vdmVkID0gMDsKLX0KIAotc3RhdGljIGludCBvcHRfYXJnKGNvbnN0IGNoYXIgKmFyZywgaW50IGFyZ19zaG9ydCwgY29uc3QgY2hhciAqYXJnX2xvbmcsIGludCAqdmFsKQotewotCWNoYXIgYywgKmVxOwotCWludCBsZW47Ci0KLQlpZiAoKmFyZyAhPSAnLScpCi0JCXJldHVybiAwOwotCWMgPSAqKythcmc7Ci0JaWYgKCFjKQotCQlyZXR1cm4gMDsKLQlpZiAoYyA9PSBhcmdfc2hvcnQpIHsKLQkJYyA9ICorK2FyZzsKLQkJaWYgKCFjKQotCQkJcmV0dXJuIDE7Ci0JCWlmICh2YWwgJiYgaXNkaWdpdChjKSkgewotCQkJY2hhciAqZW5kOwotCQkJaW50IG4gPSBzdHJ0b3VsKGFyZywgJmVuZCwgMTApOwotCQkJaWYgKCplbmQpCi0JCQkJcmV0dXJuIDA7Ci0JCQkqdmFsID0gbjsKLQkJCXJldHVybiAxOwotCQl9Ci0JCXJldHVybiAwOwotCX0KLQlpZiAoYyAhPSAnLScpCi0JCXJldHVybiAwOwotCWFyZysrOwotCWVxID0gc3RyY2hybnVsKGFyZywgJz0nKTsKLQlsZW4gPSBlcSAtIGFyZzsKLQlpZiAoIWxlbiB8fCBzdHJuY21wKGFyZywgYXJnX2xvbmcsIGxlbikpCi0JCXJldHVybiAwOwotCWlmICgqZXEpIHsKLQkJaW50IG47Ci0JCWNoYXIgKmVuZDsKLQkJaWYgKCFpc2RpZ2l0KCorK2VxKSkKLQkJCXJldHVybiAwOwotCQluID0gc3RydG91bChlcSwgJmVuZCwgMTApOwotCQlpZiAoKmVuZCkKLQkJCXJldHVybiAwOwotCQkqdmFsID0gbjsKLQl9Ci0JcmV0dXJuIDE7Ci19Ci0KLXN0YXRpYyBpbnQgZGlmZl9zY29yZW9wdF9wYXJzZShjb25zdCBjaGFyICpvcHQpOwotCi1zdGF0aWMgaW5saW5lIGludCBzaG9ydF9vcHQoY2hhciBvcHQsIGNvbnN0IGNoYXIgKiphcmd2LAotCQkJICAgIGNvbnN0IGNoYXIgKipvcHRhcmcpCi17Ci0JY29uc3QgY2hhciAqYXJnID0gYXJndlswXTsKLQlpZiAoYXJnWzBdICE9ICctJyB8fCBhcmdbMV0gIT0gb3B0KQotCQlyZXR1cm4gMDsKLQlpZiAoYXJnWzJdICE9ICdcMCcpIHsKLQkJKm9wdGFyZyA9IGFyZyArIDI7Ci0JCXJldHVybiAxOwotCX0KLQlpZiAoIWFyZ3ZbMV0pCi0JCWRpZSgiT3B0aW9uICclYycgcmVxdWlyZXMgYSB2YWx1ZSIsIG9wdCk7Ci0JKm9wdGFyZyA9IGFyZ3ZbMV07Ci0JcmV0dXJuIDI7CisJRlJFRV9BTkRfTlVMTChvcHRpb25zLT5wYXJzZW9wdHMpOwogfQogCiBpbnQgcGFyc2VfbG9uZ19vcHQoY29uc3QgY2hhciAqb3B0LCBjb25zdCBjaGFyICoqYXJndiwKQEAgLTQ2NDksNzcgKzQ2NTQsNTYgQEAKIAlyZXR1cm4gMjsKIH0KIAotc3RhdGljIGludCBzdGF0X29wdChzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zLCBjb25zdCBjaGFyICoqYXYpCitzdGF0aWMgaW50IGRpZmZfb3B0X3N0YXQoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LCBjb25zdCBjaGFyICp2YWx1ZSwgaW50IHVuc2V0KQogewotCWNvbnN0IGNoYXIgKmFyZyA9IGF2WzBdOwotCWNoYXIgKmVuZDsKKwlzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zID0gb3B0LT52YWx1ZTsKIAlpbnQgd2lkdGggPSBvcHRpb25zLT5zdGF0X3dpZHRoOwogCWludCBuYW1lX3dpZHRoID0gb3B0aW9ucy0+c3RhdF9uYW1lX3dpZHRoOwogCWludCBncmFwaF93aWR0aCA9IG9wdGlvbnMtPnN0YXRfZ3JhcGhfd2lkdGg7CiAJaW50IGNvdW50ID0gb3B0aW9ucy0+c3RhdF9jb3VudDsKLQlpbnQgYXJnY291bnQgPSAxOworCWNoYXIgKmVuZDsKIAotCWlmICghc2tpcF9wcmVmaXgoYXJnLCAiLS1zdGF0IiwgJmFyZykpCi0JCUJVRygic3RhdCBvcHRpb24gZG9lcyBub3QgYmVnaW4gd2l0aCAtLXN0YXQ6ICVzIiwgYXJnKTsKLQllbmQgPSAoY2hhciAqKWFyZzsKKwlCVUdfT05fT1BUX05FRyh1bnNldCk7CiAKLQlzd2l0Y2ggKCphcmcpIHsKLQljYXNlICctJzoKLQkJaWYgKHNraXBfcHJlZml4KGFyZywgIi13aWR0aCIsICZhcmcpKSB7Ci0JCQlpZiAoKmFyZyA9PSAnPScpCi0JCQkJd2lkdGggPSBzdHJ0b3VsKGFyZyArIDEsICZlbmQsIDEwKTsKLQkJCWVsc2UgaWYgKCEqYXJnICYmICFhdlsxXSkKLQkJCQlkaWVfd2FudF9vcHRpb24oIi0tc3RhdC13aWR0aCIpOwotCQkJZWxzZSBpZiAoISphcmcpIHsKLQkJCQl3aWR0aCA9IHN0cnRvdWwoYXZbMV0sICZlbmQsIDEwKTsKLQkJCQlhcmdjb3VudCA9IDI7Ci0JCQl9Ci0JCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgoYXJnLCAiLW5hbWUtd2lkdGgiLCAmYXJnKSkgewotCQkJaWYgKCphcmcgPT0gJz0nKQotCQkJCW5hbWVfd2lkdGggPSBzdHJ0b3VsKGFyZyArIDEsICZlbmQsIDEwKTsKLQkJCWVsc2UgaWYgKCEqYXJnICYmICFhdlsxXSkKLQkJCQlkaWVfd2FudF9vcHRpb24oIi0tc3RhdC1uYW1lLXdpZHRoIik7Ci0JCQllbHNlIGlmICghKmFyZykgewotCQkJCW5hbWVfd2lkdGggPSBzdHJ0b3VsKGF2WzFdLCAmZW5kLCAxMCk7Ci0JCQkJYXJnY291bnQgPSAyOwotCQkJfQotCQl9IGVsc2UgaWYgKHNraXBfcHJlZml4KGFyZywgIi1ncmFwaC13aWR0aCIsICZhcmcpKSB7Ci0JCQlpZiAoKmFyZyA9PSAnPScpCi0JCQkJZ3JhcGhfd2lkdGggPSBzdHJ0b3VsKGFyZyArIDEsICZlbmQsIDEwKTsKLQkJCWVsc2UgaWYgKCEqYXJnICYmICFhdlsxXSkKLQkJCQlkaWVfd2FudF9vcHRpb24oIi0tc3RhdC1ncmFwaC13aWR0aCIpOwotCQkJZWxzZSBpZiAoISphcmcpIHsKLQkJCQlncmFwaF93aWR0aCA9IHN0cnRvdWwoYXZbMV0sICZlbmQsIDEwKTsKLQkJCQlhcmdjb3VudCA9IDI7Ci0JCQl9Ci0JCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgoYXJnLCAiLWNvdW50IiwgJmFyZykpIHsKLQkJCWlmICgqYXJnID09ICc9JykKLQkJCQljb3VudCA9IHN0cnRvdWwoYXJnICsgMSwgJmVuZCwgMTApOwotCQkJZWxzZSBpZiAoISphcmcgJiYgIWF2WzFdKQotCQkJCWRpZV93YW50X29wdGlvbigiLS1zdGF0LWNvdW50Iik7Ci0JCQllbHNlIGlmICghKmFyZykgewotCQkJCWNvdW50ID0gc3RydG91bChhdlsxXSwgJmVuZCwgMTApOwotCQkJCWFyZ2NvdW50ID0gMjsKLQkJCX0KKwlpZiAoIXN0cmNtcChvcHQtPmxvbmdfbmFtZSwgInN0YXQiKSkgeworCQlpZiAodmFsdWUpIHsKKwkJCXdpZHRoID0gc3RydG91bCh2YWx1ZSwgJmVuZCwgMTApOworCQkJaWYgKCplbmQgPT0gJywnKQorCQkJCW5hbWVfd2lkdGggPSBzdHJ0b3VsKGVuZCsxLCAmZW5kLCAxMCk7CisJCQlpZiAoKmVuZCA9PSAnLCcpCisJCQkJY291bnQgPSBzdHJ0b3VsKGVuZCsxLCAmZW5kLCAxMCk7CisJCQlpZiAoKmVuZCkKKwkJCQlyZXR1cm4gZXJyb3IoXygiaW52YWxpZCAtLXN0YXQgdmFsdWU6ICVzIiksIHZhbHVlKTsKIAkJfQotCQlicmVhazsKLQljYXNlICc9JzoKLQkJd2lkdGggPSBzdHJ0b3VsKGFyZysxLCAmZW5kLCAxMCk7Ci0JCWlmICgqZW5kID09ICcsJykKLQkJCW5hbWVfd2lkdGggPSBzdHJ0b3VsKGVuZCsxLCAmZW5kLCAxMCk7Ci0JCWlmICgqZW5kID09ICcsJykKLQkJCWNvdW50ID0gc3RydG91bChlbmQrMSwgJmVuZCwgMTApOwotCX0KKwl9IGVsc2UgaWYgKCFzdHJjbXAob3B0LT5sb25nX25hbWUsICJzdGF0LXdpZHRoIikpIHsKKwkJd2lkdGggPSBzdHJ0b3VsKHZhbHVlLCAmZW5kLCAxMCk7CisJCWlmICgqZW5kKQorCQkJcmV0dXJuIGVycm9yKF8oIiVzIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiKSwKKwkJCQkgICAgIG9wdC0+bG9uZ19uYW1lKTsKKwl9IGVsc2UgaWYgKCFzdHJjbXAob3B0LT5sb25nX25hbWUsICJzdGF0LW5hbWUtd2lkdGgiKSkgeworCQluYW1lX3dpZHRoID0gc3RydG91bCh2YWx1ZSwgJmVuZCwgMTApOworCQlpZiAoKmVuZCkKKwkJCXJldHVybiBlcnJvcihfKCIlcyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIiksCisJCQkJICAgICBvcHQtPmxvbmdfbmFtZSk7CisJfSBlbHNlIGlmICghc3RyY21wKG9wdC0+bG9uZ19uYW1lLCAic3RhdC1ncmFwaC13aWR0aCIpKSB7CisJCWdyYXBoX3dpZHRoID0gc3RydG91bCh2YWx1ZSwgJmVuZCwgMTApOworCQlpZiAoKmVuZCkKKwkJCXJldHVybiBlcnJvcihfKCIlcyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIiksCisJCQkJICAgICBvcHQtPmxvbmdfbmFtZSk7CisJfSBlbHNlIGlmICghc3RyY21wKG9wdC0+bG9uZ19uYW1lLCAic3RhdC1jb3VudCIpKSB7CisJCWNvdW50ID0gc3RydG91bCh2YWx1ZSwgJmVuZCwgMTApOworCQlpZiAoKmVuZCkKKwkJCXJldHVybiBlcnJvcihfKCIlcyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIiksCisJCQkJICAgICBvcHQtPmxvbmdfbmFtZSk7CisJfSBlbHNlCisJCUJVRygiJXMgc2hvdWxkIG5vdCBnZXQgaGVyZSIsIG9wdC0+bG9uZ19uYW1lKTsKIAotCS8qIEltcG9ydGFudCEgVGhpcyBjaGVja3MgYWxsIHRoZSBlcnJvciBjYXNlcyEgKi8KLQlpZiAoKmVuZCkKLQkJcmV0dXJuIDA7CiAJb3B0aW9ucy0+b3V0cHV0X2Zvcm1hdCB8PSBESUZGX0ZPUk1BVF9ESUZGU1RBVDsKIAlvcHRpb25zLT5zdGF0X25hbWVfd2lkdGggPSBuYW1lX3dpZHRoOwogCW9wdGlvbnMtPnN0YXRfZ3JhcGhfd2lkdGggPSBncmFwaF93aWR0aDsKIAlvcHRpb25zLT5zdGF0X3dpZHRoID0gd2lkdGg7CiAJb3B0aW9ucy0+c3RhdF9jb3VudCA9IGNvdW50OwotCXJldHVybiBhcmdjb3VudDsKKwlyZXR1cm4gMDsKIH0KIAogc3RhdGljIGludCBwYXJzZV9kaXJzdGF0X29wdChzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zLCBjb25zdCBjaGFyICpwYXJhbXMpCkBAIC00NzM3LDE0ICs0NzIxLDYgQEAKIAlyZXR1cm4gMTsKIH0KIAotc3RhdGljIGludCBwYXJzZV9zdWJtb2R1bGVfb3B0KHN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMsIGNvbnN0IGNoYXIgKnZhbHVlKQotewotCWlmIChwYXJzZV9zdWJtb2R1bGVfcGFyYW1zKG9wdGlvbnMsIHZhbHVlKSkKLQkJZGllKF8oIkZhaWxlZCB0byBwYXJzZSAtLXN1Ym1vZHVsZSBvcHRpb24gcGFyYW1ldGVyOiAnJXMnIiksCi0JCQl2YWx1ZSk7Ci0JcmV0dXJuIDE7Ci19Ci0KIHN0YXRpYyBjb25zdCBjaGFyIGRpZmZfc3RhdHVzX2xldHRlcnNbXSA9IHsKIAlESUZGX1NUQVRVU19BRERFRCwKIAlESUZGX1NUQVRVU19DT1BJRUQsCkBAIC00Nzc2LDEwICs0NzUyLDE5IEBACiAJcmV0dXJuIG9wdC0+ZmlsdGVyICYgZmlsdGVyX2JpdFsoaW50KSBzdGF0dXNdOwogfQogCi1zdGF0aWMgaW50IHBhcnNlX2RpZmZfZmlsdGVyX29wdChjb25zdCBjaGFyICpvcHRhcmcsIHN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdCkKK3Vuc2lnbmVkIGRpZmZfZmlsdGVyX2JpdChjaGFyIHN0YXR1cykKIHsKKwlwcmVwYXJlX2ZpbHRlcl9iaXRzKCk7CisJcmV0dXJuIGZpbHRlcl9iaXRbKGludCkgc3RhdHVzXTsKK30KKworc3RhdGljIGludCBkaWZmX29wdF9kaWZmX2ZpbHRlcihjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb24sCisJCQkJY29uc3QgY2hhciAqb3B0YXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0ID0gb3B0aW9uLT52YWx1ZTsKIAlpbnQgaSwgb3B0Y2g7CiAKKwlCVUdfT05fT1BUX05FRyh1bnNldCk7CiAJcHJlcGFyZV9maWx0ZXJfYml0cygpOwogCiAJLyoKQEAgLTQ4MTAsNyArNDc5NSw4IEBACiAKIAkJYml0ID0gKDAgPD0gb3B0Y2ggJiYgb3B0Y2ggPD0gJ1onKSA/IGZpbHRlcl9iaXRbb3B0Y2hdIDogMDsKIAkJaWYgKCFiaXQpCi0JCQlyZXR1cm4gb3B0YXJnW2ldOworCQkJcmV0dXJuIGVycm9yKF8oInVua25vd24gY2hhbmdlIGNsYXNzICclYycgaW4gLS1kaWZmLWZpbHRlcj0lcyIpLAorCQkJCSAgICAgb3B0YXJnW2ldLCBvcHRhcmcpOwogCQlpZiAobmVnYXRlKQogCQkJb3B0LT5maWx0ZXIgJj0gfmJpdDsKIAkJZWxzZQpAQCAtNDgxOSwzMCArNDgwNSwzNSBAQAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgdm9pZCBlbmFibGVfcGF0Y2hfb3V0cHV0KGludCAqZm10KSB7CitzdGF0aWMgdm9pZCBlbmFibGVfcGF0Y2hfb3V0cHV0KGludCAqZm10KQorewogCSpmbXQgJj0gfkRJRkZfRk9STUFUX05PX09VVFBVVDsKIAkqZm10IHw9IERJRkZfRk9STUFUX1BBVENIOwogfQogCi1zdGF0aWMgaW50IHBhcnNlX3dzX2Vycm9yX2hpZ2hsaWdodF9vcHQoc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0LCBjb25zdCBjaGFyICphcmcpCitzdGF0aWMgaW50IGRpZmZfb3B0X3dzX2Vycm9yX2hpZ2hsaWdodChjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb24sCisJCQkJICAgICAgIGNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQogeworCXN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdCA9IG9wdGlvbi0+dmFsdWU7CiAJaW50IHZhbCA9IHBhcnNlX3dzX2Vycm9yX2hpZ2hsaWdodChhcmcpOwogCi0JaWYgKHZhbCA8IDApIHsKLQkJZXJyb3IoInVua25vd24gdmFsdWUgYWZ0ZXIgd3MtZXJyb3ItaGlnaGxpZ2h0PSUuKnMiLAotCQkgICAgICAtMSAtIHZhbCwgYXJnKTsKLQkJcmV0dXJuIDA7Ci0JfQorCUJVR19PTl9PUFRfTkVHKHVuc2V0KTsKKwlpZiAodmFsIDwgMCkKKwkJcmV0dXJuIGVycm9yKF8oInVua25vd24gdmFsdWUgYWZ0ZXIgd3MtZXJyb3ItaGlnaGxpZ2h0PSUuKnMiKSwKKwkJCSAgICAgLTEgLSB2YWwsIGFyZyk7CiAJb3B0LT53c19lcnJvcl9oaWdobGlnaHQgPSB2YWw7Ci0JcmV0dXJuIDE7CisJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgcGFyc2Vfb2JqZmluZF9vcHQoc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0LCBjb25zdCBjaGFyICphcmcpCitzdGF0aWMgaW50IGRpZmZfb3B0X2ZpbmRfb2JqZWN0KGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdGlvbiwKKwkJCQljb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKIHsKKwlzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHQgPSBvcHRpb24tPnZhbHVlOwogCXN0cnVjdCBvYmplY3RfaWQgb2lkOwogCisJQlVHX09OX09QVF9ORUcodW5zZXQpOwogCWlmIChnZXRfb2lkKGFyZywgJm9pZCkpCi0JCXJldHVybiBlcnJvcigidW5hYmxlIHRvIHJlc29sdmUgJyVzJyIsIGFyZyk7CisJCXJldHVybiBlcnJvcihfKCJ1bmFibGUgdG8gcmVzb2x2ZSAnJXMnIiksIGFyZyk7CiAKIAlpZiAoIW9wdC0+b2JqZmluZCkKIAkJb3B0LT5vYmpmaW5kID0geGNhbGxvYygxLCBzaXplb2YoKm9wdC0+b2JqZmluZCkpOwpAQCAtNDg1MSwyMDIgKzQ4NDIsMzg0IEBACiAJb3B0LT5mbGFncy5yZWN1cnNpdmUgPSAxOwogCW9wdC0+ZmxhZ3MudHJlZV9pbl9yZWN1cnNpdmUgPSAxOwogCW9pZHNldF9pbnNlcnQob3B0LT5vYmpmaW5kLCAmb2lkKTsKLQlyZXR1cm4gMTsKKwlyZXR1cm4gMDsKIH0KIAotaW50IGRpZmZfb3B0X3BhcnNlKHN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMsCi0JCSAgIGNvbnN0IGNoYXIgKiphdiwgaW50IGFjLCBjb25zdCBjaGFyICpwcmVmaXgpCitzdGF0aWMgaW50IGRpZmZfb3B0X2FuY2hvcmVkKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKKwkJCSAgICAgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCiB7Ci0JY29uc3QgY2hhciAqYXJnID0gYXZbMF07Ci0JY29uc3QgY2hhciAqb3B0YXJnOwotCWludCBhcmdjb3VudDsKKwlzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zID0gb3B0LT52YWx1ZTsKIAotCWlmICghcHJlZml4KQotCQlwcmVmaXggPSAiIjsKKwlCVUdfT05fT1BUX05FRyh1bnNldCk7CisJb3B0aW9ucy0+eGRsX29wdHMgPSBESUZGX1dJVEhfQUxHKG9wdGlvbnMsIFBBVElFTkNFX0RJRkYpOworCUFMTE9DX0dST1cob3B0aW9ucy0+YW5jaG9ycywgb3B0aW9ucy0+YW5jaG9yc19uciArIDEsCisJCSAgIG9wdGlvbnMtPmFuY2hvcnNfYWxsb2MpOworCW9wdGlvbnMtPmFuY2hvcnNbb3B0aW9ucy0+YW5jaG9yc19ucisrXSA9IHhzdHJkdXAoYXJnKTsKKwlyZXR1cm4gMDsKK30KIAotCS8qIE91dHB1dCBmb3JtYXQgb3B0aW9ucyAqLwotCWlmICghc3RyY21wKGFyZywgIi1wIikgfHwgIXN0cmNtcChhcmcsICItdSIpIHx8ICFzdHJjbXAoYXJnLCAiLS1wYXRjaCIpCi0JICAgIHx8IG9wdF9hcmcoYXJnLCAnVScsICJ1bmlmaWVkIiwgJm9wdGlvbnMtPmNvbnRleHQpKQotCQllbmFibGVfcGF0Y2hfb3V0cHV0KCZvcHRpb25zLT5vdXRwdXRfZm9ybWF0KTsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tcmF3IikpCi0JCW9wdGlvbnMtPm91dHB1dF9mb3JtYXQgfD0gRElGRl9GT1JNQVRfUkFXOwotCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1wYXRjaC13aXRoLXJhdyIpKSB7Ci0JCWVuYWJsZV9wYXRjaF9vdXRwdXQoJm9wdGlvbnMtPm91dHB1dF9mb3JtYXQpOwotCQlvcHRpb25zLT5vdXRwdXRfZm9ybWF0IHw9IERJRkZfRk9STUFUX1JBVzsKLQl9IGVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1udW1zdGF0IikpCi0JCW9wdGlvbnMtPm91dHB1dF9mb3JtYXQgfD0gRElGRl9GT1JNQVRfTlVNU1RBVDsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tc2hvcnRzdGF0IikpCi0JCW9wdGlvbnMtPm91dHB1dF9mb3JtYXQgfD0gRElGRl9GT1JNQVRfU0hPUlRTVEFUOwotCWVsc2UgaWYgKHNraXBfcHJlZml4KGFyZywgIi1YIiwgJmFyZykgfHwKLQkJIHNraXBfdG9fb3B0aW9uYWxfYXJnKGFyZywgIi0tZGlyc3RhdCIsICZhcmcpKQotCQlyZXR1cm4gcGFyc2VfZGlyc3RhdF9vcHQob3B0aW9ucywgYXJnKTsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tY3VtdWxhdGl2ZSIpKQotCQlyZXR1cm4gcGFyc2VfZGlyc3RhdF9vcHQob3B0aW9ucywgImN1bXVsYXRpdmUiKTsKLQllbHNlIGlmIChza2lwX3RvX29wdGlvbmFsX2FyZyhhcmcsICItLWRpcnN0YXQtYnktZmlsZSIsICZhcmcpKSB7Ci0JCXBhcnNlX2RpcnN0YXRfb3B0KG9wdGlvbnMsICJmaWxlcyIpOwotCQlyZXR1cm4gcGFyc2VfZGlyc3RhdF9vcHQob3B0aW9ucywgYXJnKTsKLQl9Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWNoZWNrIikpCi0JCW9wdGlvbnMtPm91dHB1dF9mb3JtYXQgfD0gRElGRl9GT1JNQVRfQ0hFQ0tESUZGOwotCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1zdW1tYXJ5IikpCi0JCW9wdGlvbnMtPm91dHB1dF9mb3JtYXQgfD0gRElGRl9GT1JNQVRfU1VNTUFSWTsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tcGF0Y2gtd2l0aC1zdGF0IikpIHsKLQkJZW5hYmxlX3BhdGNoX291dHB1dCgmb3B0aW9ucy0+b3V0cHV0X2Zvcm1hdCk7Ci0JCW9wdGlvbnMtPm91dHB1dF9mb3JtYXQgfD0gRElGRl9GT1JNQVRfRElGRlNUQVQ7Ci0JfSBlbHNlIGlmICghc3RyY21wKGFyZywgIi0tbmFtZS1vbmx5IikpCi0JCW9wdGlvbnMtPm91dHB1dF9mb3JtYXQgfD0gRElGRl9GT1JNQVRfTkFNRTsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tbmFtZS1zdGF0dXMiKSkKLQkJb3B0aW9ucy0+b3V0cHV0X2Zvcm1hdCB8PSBESUZGX0ZPUk1BVF9OQU1FX1NUQVRVUzsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi1zIikgfHwgIXN0cmNtcChhcmcsICItLW5vLXBhdGNoIikpCi0JCW9wdGlvbnMtPm91dHB1dF9mb3JtYXQgfD0gRElGRl9GT1JNQVRfTk9fT1VUUFVUOwotCWVsc2UgaWYgKHN0YXJ0c193aXRoKGFyZywgIi0tc3RhdCIpKQotCQkvKiAtLXN0YXQsIC0tc3RhdC13aWR0aCwgLS1zdGF0LW5hbWUtd2lkdGgsIG9yIC0tc3RhdC1jb3VudCAqLwotCQlyZXR1cm4gc3RhdF9vcHQob3B0aW9ucywgYXYpOwotCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1jb21wYWN0LXN1bW1hcnkiKSkgewotCQkgb3B0aW9ucy0+ZmxhZ3Muc3RhdF93aXRoX3N1bW1hcnkgPSAxOwotCQkgb3B0aW9ucy0+b3V0cHV0X2Zvcm1hdCB8PSBESUZGX0ZPUk1BVF9ESUZGU1RBVDsKLQl9IGVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1uby1jb21wYWN0LXN1bW1hcnkiKSkKLQkJIG9wdGlvbnMtPmZsYWdzLnN0YXRfd2l0aF9zdW1tYXJ5ID0gMDsKLQllbHNlIGlmIChza2lwX3ByZWZpeChhcmcsICItLW91dHB1dC1pbmRpY2F0b3ItbmV3PSIsICZhcmcpKQotCQlvcHRpb25zLT5vdXRwdXRfaW5kaWNhdG9yc1tPVVRQVVRfSU5ESUNBVE9SX05FV10gPSBhcmdbMF07Ci0JZWxzZSBpZiAoc2tpcF9wcmVmaXgoYXJnLCAiLS1vdXRwdXQtaW5kaWNhdG9yLW9sZD0iLCAmYXJnKSkKLQkJb3B0aW9ucy0+b3V0cHV0X2luZGljYXRvcnNbT1VUUFVUX0lORElDQVRPUl9PTERdID0gYXJnWzBdOwotCWVsc2UgaWYgKHNraXBfcHJlZml4KGFyZywgIi0tb3V0cHV0LWluZGljYXRvci1jb250ZXh0PSIsICZhcmcpKQotCQlvcHRpb25zLT5vdXRwdXRfaW5kaWNhdG9yc1tPVVRQVVRfSU5ESUNBVE9SX0NPTlRFWFRdID0gYXJnWzBdOworc3RhdGljIGludCBkaWZmX29wdF9iaW5hcnkoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQkJICAgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CiAKLQkvKiByZW5hbWVzIG9wdGlvbnMgKi8KLQllbHNlIGlmIChzdGFydHNfd2l0aChhcmcsICItQiIpIHx8Ci0JCSBza2lwX3RvX29wdGlvbmFsX2FyZyhhcmcsICItLWJyZWFrLXJld3JpdGVzIiwgTlVMTCkpIHsKLQkJaWYgKChvcHRpb25zLT5icmVha19vcHQgPSBkaWZmX3Njb3Jlb3B0X3BhcnNlKGFyZykpID09IC0xKQotCQkJcmV0dXJuIGVycm9yKCJpbnZhbGlkIGFyZ3VtZW50IHRvIC1COiAlcyIsIGFyZysyKTsKLQl9Ci0JZWxzZSBpZiAoc3RhcnRzX3dpdGgoYXJnLCAiLU0iKSB8fAotCQkgc2tpcF90b19vcHRpb25hbF9hcmcoYXJnLCAiLS1maW5kLXJlbmFtZXMiLCBOVUxMKSkgewotCQlpZiAoKG9wdGlvbnMtPnJlbmFtZV9zY29yZSA9IGRpZmZfc2NvcmVvcHRfcGFyc2UoYXJnKSkgPT0gLTEpCi0JCQlyZXR1cm4gZXJyb3IoImludmFsaWQgYXJndW1lbnQgdG8gLU06ICVzIiwgYXJnKzIpOwotCQlvcHRpb25zLT5kZXRlY3RfcmVuYW1lID0gRElGRl9ERVRFQ1RfUkVOQU1FOwotCX0KLQllbHNlIGlmICghc3RyY21wKGFyZywgIi1EIikgfHwgIXN0cmNtcChhcmcsICItLWlycmV2ZXJzaWJsZS1kZWxldGUiKSkgewotCQlvcHRpb25zLT5pcnJldmVyc2libGVfZGVsZXRlID0gMTsKLQl9Ci0JZWxzZSBpZiAoc3RhcnRzX3dpdGgoYXJnLCAiLUMiKSB8fAotCQkgc2tpcF90b19vcHRpb25hbF9hcmcoYXJnLCAiLS1maW5kLWNvcGllcyIsIE5VTEwpKSB7Ci0JCWlmIChvcHRpb25zLT5kZXRlY3RfcmVuYW1lID09IERJRkZfREVURUNUX0NPUFkpCi0JCQlvcHRpb25zLT5mbGFncy5maW5kX2NvcGllc19oYXJkZXIgPSAxOwotCQlpZiAoKG9wdGlvbnMtPnJlbmFtZV9zY29yZSA9IGRpZmZfc2NvcmVvcHRfcGFyc2UoYXJnKSkgPT0gLTEpCi0JCQlyZXR1cm4gZXJyb3IoImludmFsaWQgYXJndW1lbnQgdG8gLUM6ICVzIiwgYXJnKzIpOwotCQlvcHRpb25zLT5kZXRlY3RfcmVuYW1lID0gRElGRl9ERVRFQ1RfQ09QWTsKLQl9Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLW5vLXJlbmFtZXMiKSkKLQkJb3B0aW9ucy0+ZGV0ZWN0X3JlbmFtZSA9IDA7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLXJlbmFtZS1lbXB0eSIpKQotCQlvcHRpb25zLT5mbGFncy5yZW5hbWVfZW1wdHkgPSAxOwotCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1uby1yZW5hbWUtZW1wdHkiKSkKLQkJb3B0aW9ucy0+ZmxhZ3MucmVuYW1lX2VtcHR5ID0gMDsKLQllbHNlIGlmIChza2lwX3RvX29wdGlvbmFsX2FyZ19kZWZhdWx0KGFyZywgIi0tcmVsYXRpdmUiLCAmYXJnLCBOVUxMKSkgewotCQlvcHRpb25zLT5mbGFncy5yZWxhdGl2ZV9uYW1lID0gMTsKLQkJaWYgKGFyZykKLQkJCW9wdGlvbnMtPnByZWZpeCA9IGFyZzsKLQl9CisJQlVHX09OX09QVF9ORUcodW5zZXQpOworCUJVR19PTl9PUFRfQVJHKGFyZyk7CisJZW5hYmxlX3BhdGNoX291dHB1dCgmb3B0aW9ucy0+b3V0cHV0X2Zvcm1hdCk7CisJb3B0aW9ucy0+ZmxhZ3MuYmluYXJ5ID0gMTsKKwlyZXR1cm4gMDsKK30KIAotCS8qIHhkaWZmIG9wdGlvbnMgKi8KLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tbWluaW1hbCIpKQotCQlESUZGX1hETF9TRVQob3B0aW9ucywgTkVFRF9NSU5JTUFMKTsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tbm8tbWluaW1hbCIpKQotCQlESUZGX1hETF9DTFIob3B0aW9ucywgTkVFRF9NSU5JTUFMKTsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi13IikgfHwgIXN0cmNtcChhcmcsICItLWlnbm9yZS1hbGwtc3BhY2UiKSkKLQkJRElGRl9YRExfU0VUKG9wdGlvbnMsIElHTk9SRV9XSElURVNQQUNFKTsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi1iIikgfHwgIXN0cmNtcChhcmcsICItLWlnbm9yZS1zcGFjZS1jaGFuZ2UiKSkKLQkJRElGRl9YRExfU0VUKG9wdGlvbnMsIElHTk9SRV9XSElURVNQQUNFX0NIQU5HRSk7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWlnbm9yZS1zcGFjZS1hdC1lb2wiKSkKLQkJRElGRl9YRExfU0VUKG9wdGlvbnMsIElHTk9SRV9XSElURVNQQUNFX0FUX0VPTCk7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWlnbm9yZS1jci1hdC1lb2wiKSkKLQkJRElGRl9YRExfU0VUKG9wdGlvbnMsIElHTk9SRV9DUl9BVF9FT0wpOwotCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1pZ25vcmUtYmxhbmstbGluZXMiKSkKLQkJRElGRl9YRExfU0VUKG9wdGlvbnMsIElHTk9SRV9CTEFOS19MSU5FUyk7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWluZGVudC1oZXVyaXN0aWMiKSkKLQkJRElGRl9YRExfU0VUKG9wdGlvbnMsIElOREVOVF9IRVVSSVNUSUMpOwotCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1uby1pbmRlbnQtaGV1cmlzdGljIikpCi0JCURJRkZfWERMX0NMUihvcHRpb25zLCBJTkRFTlRfSEVVUklTVElDKTsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tcGF0aWVuY2UiKSkgewotCQlpbnQgaTsKLQkJb3B0aW9ucy0+eGRsX29wdHMgPSBESUZGX1dJVEhfQUxHKG9wdGlvbnMsIFBBVElFTkNFX0RJRkYpOwotCQkvKgotCQkgKiBCb3RoIC0tcGF0aWVuY2UgYW5kIC0tYW5jaG9yZWQgdXNlIFBBVElFTkNFX0RJRkYKLQkJICogaW50ZXJuYWxseSwgc28gcmVtb3ZlIGFueSBhbmNob3JzIHByZXZpb3VzbHkKLQkJICogc3BlY2lmaWVkLgotCQkgKi8KLQkJZm9yIChpID0gMDsgaSA8IG9wdGlvbnMtPmFuY2hvcnNfbnI7IGkrKykKLQkJCWZyZWUob3B0aW9ucy0+YW5jaG9yc1tpXSk7Ci0JCW9wdGlvbnMtPmFuY2hvcnNfbnIgPSAwOwotCX0gZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWhpc3RvZ3JhbSIpKQotCQlvcHRpb25zLT54ZGxfb3B0cyA9IERJRkZfV0lUSF9BTEcob3B0aW9ucywgSElTVE9HUkFNX0RJRkYpOwotCWVsc2UgaWYgKChhcmdjb3VudCA9IHBhcnNlX2xvbmdfb3B0KCJkaWZmLWFsZ29yaXRobSIsIGF2LCAmb3B0YXJnKSkpIHsKLQkJbG9uZyB2YWx1ZSA9IHBhcnNlX2FsZ29yaXRobV92YWx1ZShvcHRhcmcpOwotCQlpZiAodmFsdWUgPCAwKQotCQkJcmV0dXJuIGVycm9yKCJvcHRpb24gZGlmZi1hbGdvcml0aG0gYWNjZXB0cyBcIm15ZXJzXCIsICIKLQkJCQkgICAgICJcIm1pbmltYWxcIiwgXCJwYXRpZW5jZVwiIGFuZCBcImhpc3RvZ3JhbVwiIik7Ci0JCS8qIGNsZWFyIG91dCBwcmV2aW91cyBzZXR0aW5ncyAqLwotCQlESUZGX1hETF9DTFIob3B0aW9ucywgTkVFRF9NSU5JTUFMKTsKLQkJb3B0aW9ucy0+eGRsX29wdHMgJj0gflhERl9ESUZGX0FMR09SSVRITV9NQVNLOwotCQlvcHRpb25zLT54ZGxfb3B0cyB8PSB2YWx1ZTsKLQkJcmV0dXJuIGFyZ2NvdW50OwotCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgoYXJnLCAiLS1hbmNob3JlZD0iLCAmYXJnKSkgewotCQlvcHRpb25zLT54ZGxfb3B0cyA9IERJRkZfV0lUSF9BTEcob3B0aW9ucywgUEFUSUVOQ0VfRElGRik7Ci0JCUFMTE9DX0dST1cob3B0aW9ucy0+YW5jaG9ycywgb3B0aW9ucy0+YW5jaG9yc19uciArIDEsCi0JCQkgICBvcHRpb25zLT5hbmNob3JzX2FsbG9jKTsKLQkJb3B0aW9ucy0+YW5jaG9yc1tvcHRpb25zLT5hbmNob3JzX25yKytdID0geHN0cmR1cChhcmcpOwotCX0KK3N0YXRpYyBpbnQgZGlmZl9vcHRfYnJlYWtfcmV3cml0ZXMoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQkJCSAgIGNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQoreworCWludCAqYnJlYWtfb3B0ID0gb3B0LT52YWx1ZTsKKwlpbnQgb3B0MSwgb3B0MjsKIAotCS8qIGZsYWdzIG9wdGlvbnMgKi8KLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tYmluYXJ5IikpIHsKLQkJZW5hYmxlX3BhdGNoX291dHB1dCgmb3B0aW9ucy0+b3V0cHV0X2Zvcm1hdCk7Ci0JCW9wdGlvbnMtPmZsYWdzLmJpbmFyeSA9IDE7CisJQlVHX09OX09QVF9ORUcodW5zZXQpOworCWlmICghYXJnKQorCQlhcmcgPSAiIjsKKwlvcHQxID0gcGFyc2VfcmVuYW1lX3Njb3JlKCZhcmcpOworCWlmICgqYXJnID09IDApCisJCW9wdDIgPSAwOworCWVsc2UgaWYgKCphcmcgIT0gJy8nKQorCQlyZXR1cm4gZXJyb3IoXygiJXMgZXhwZWN0cyA8bj4vPG0+IGZvcm0iKSwgb3B0LT5sb25nX25hbWUpOworCWVsc2UgeworCQlhcmcrKzsKKwkJb3B0MiA9IHBhcnNlX3JlbmFtZV9zY29yZSgmYXJnKTsKIAl9Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWZ1bGwtaW5kZXgiKSkKLQkJb3B0aW9ucy0+ZmxhZ3MuZnVsbF9pbmRleCA9IDE7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItYSIpIHx8ICFzdHJjbXAoYXJnLCAiLS10ZXh0IikpCi0JCW9wdGlvbnMtPmZsYWdzLnRleHQgPSAxOwotCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLVIiKSkKLQkJb3B0aW9ucy0+ZmxhZ3MucmV2ZXJzZV9kaWZmID0gMTsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tZmluZC1jb3BpZXMtaGFyZGVyIikpCi0JCW9wdGlvbnMtPmZsYWdzLmZpbmRfY29waWVzX2hhcmRlciA9IDE7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWZvbGxvdyIpKQotCQlvcHRpb25zLT5mbGFncy5mb2xsb3dfcmVuYW1lcyA9IDE7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLW5vLWZvbGxvdyIpKSB7Ci0JCW9wdGlvbnMtPmZsYWdzLmZvbGxvd19yZW5hbWVzID0gMDsKLQkJb3B0aW9ucy0+ZmxhZ3MuZGVmYXVsdF9mb2xsb3dfcmVuYW1lcyA9IDA7Ci0JfSBlbHNlIGlmIChza2lwX3RvX29wdGlvbmFsX2FyZ19kZWZhdWx0KGFyZywgIi0tY29sb3IiLCAmYXJnLCAiYWx3YXlzIikpIHsKLQkJaW50IHZhbHVlID0gZ2l0X2NvbmZpZ19jb2xvcmJvb2woTlVMTCwgYXJnKTsKLQkJaWYgKHZhbHVlIDwgMCkKLQkJCXJldHVybiBlcnJvcigib3B0aW9uIGBjb2xvcicgZXhwZWN0cyBcImFsd2F5c1wiLCBcImF1dG9cIiwgb3IgXCJuZXZlclwiIik7Ci0JCW9wdGlvbnMtPnVzZV9jb2xvciA9IHZhbHVlOwotCX0KLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tbm8tY29sb3IiKSkKLQkJb3B0aW9ucy0+dXNlX2NvbG9yID0gMDsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tY29sb3ItbW92ZWQiKSkgeworCWlmICgqYXJnICE9IDApCisJCXJldHVybiBlcnJvcihfKCIlcyBleHBlY3RzIDxuPi88bT4gZm9ybSIpLCBvcHQtPmxvbmdfbmFtZSk7CisJKmJyZWFrX29wdCA9IG9wdDEgfCAob3B0MiA8PCAxNik7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgZGlmZl9vcHRfY2hhcihjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJCQkgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJY2hhciAqdmFsdWUgPSBvcHQtPnZhbHVlOworCisJQlVHX09OX09QVF9ORUcodW5zZXQpOworCWlmIChhcmdbMV0pCisJCXJldHVybiBlcnJvcihfKCIlcyBleHBlY3RzIGEgY2hhcmFjdGVyLCBnb3QgJyVzJyIpLAorCQkJICAgICBvcHQtPmxvbmdfbmFtZSwgYXJnKTsKKwkqdmFsdWUgPSBhcmdbMF07CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgZGlmZl9vcHRfY29sb3JfbW92ZWQoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQkJCWNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQoreworCXN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMgPSBvcHQtPnZhbHVlOworCisJaWYgKHVuc2V0KSB7CisJCW9wdGlvbnMtPmNvbG9yX21vdmVkID0gQ09MT1JfTU9WRURfTk87CisJfSBlbHNlIGlmICghYXJnKSB7CiAJCWlmIChkaWZmX2NvbG9yX21vdmVkX2RlZmF1bHQpCiAJCQlvcHRpb25zLT5jb2xvcl9tb3ZlZCA9IGRpZmZfY29sb3JfbW92ZWRfZGVmYXVsdDsKIAkJaWYgKG9wdGlvbnMtPmNvbG9yX21vdmVkID09IENPTE9SX01PVkVEX05PKQogCQkJb3B0aW9ucy0+Y29sb3JfbW92ZWQgPSBDT0xPUl9NT1ZFRF9ERUZBVUxUOwotCX0gZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLW5vLWNvbG9yLW1vdmVkIikpCi0JCW9wdGlvbnMtPmNvbG9yX21vdmVkID0gQ09MT1JfTU9WRURfTk87Ci0JZWxzZSBpZiAoc2tpcF9wcmVmaXgoYXJnLCAiLS1jb2xvci1tb3ZlZD0iLCAmYXJnKSkgeworCX0gZWxzZSB7CiAJCWludCBjbSA9IHBhcnNlX2NvbG9yX21vdmVkKGFyZyk7CiAJCWlmIChjbSA8IDApCi0JCQlkaWUoImJhZCAtLWNvbG9yLW1vdmVkIGFyZ3VtZW50OiAlcyIsIGFyZyk7CisJCQlyZXR1cm4gZXJyb3IoXygiYmFkIC0tY29sb3ItbW92ZWQgYXJndW1lbnQ6ICVzIiksIGFyZyk7CiAJCW9wdGlvbnMtPmNvbG9yX21vdmVkID0gY207Ci0JfSBlbHNlIGlmIChza2lwX3ByZWZpeChhcmcsICItLWNvbG9yLW1vdmVkLXdzPSIsICZhcmcpKSB7Ci0JCW9wdGlvbnMtPmNvbG9yX21vdmVkX3dzX2hhbmRsaW5nID0gcGFyc2VfY29sb3JfbW92ZWRfd3MoYXJnKTsKLQl9IGVsc2UgaWYgKHNraXBfdG9fb3B0aW9uYWxfYXJnX2RlZmF1bHQoYXJnLCAiLS1jb2xvci13b3JkcyIsICZvcHRpb25zLT53b3JkX3JlZ2V4LCBOVUxMKSkgewotCQlvcHRpb25zLT51c2VfY29sb3IgPSAxOwotCQlvcHRpb25zLT53b3JkX2RpZmYgPSBESUZGX1dPUkRTX0NPTE9SOwogCX0KLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0td29yZC1kaWZmIikpIHsKLQkJaWYgKG9wdGlvbnMtPndvcmRfZGlmZiA9PSBESUZGX1dPUkRTX05PTkUpCi0JCQlvcHRpb25zLT53b3JkX2RpZmYgPSBESUZGX1dPUkRTX1BMQUlOOworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGRpZmZfb3B0X2NvbG9yX21vdmVkX3dzKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKKwkJCQkgICBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKK3sKKwlzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zID0gb3B0LT52YWx1ZTsKKwl1bnNpZ25lZCBjbTsKKworCWlmICh1bnNldCkgeworCQlvcHRpb25zLT5jb2xvcl9tb3ZlZF93c19oYW5kbGluZyA9IDA7CisJCXJldHVybiAwOwogCX0KLQllbHNlIGlmIChza2lwX3ByZWZpeChhcmcsICItLXdvcmQtZGlmZj0iLCAmYXJnKSkgeworCisJY20gPSBwYXJzZV9jb2xvcl9tb3ZlZF93cyhhcmcpOworCWlmIChjbSAmIENPTE9SX01PVkVEX1dTX0VSUk9SKQorCQlyZXR1cm4gZXJyb3IoXygiaW52YWxpZCBtb2RlICclcycgaW4gLS1jb2xvci1tb3ZlZC13cyIpLCBhcmcpOworCW9wdGlvbnMtPmNvbG9yX21vdmVkX3dzX2hhbmRsaW5nID0gY207CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgZGlmZl9vcHRfY29sb3Jfd29yZHMoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQkJCWNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQoreworCXN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMgPSBvcHQtPnZhbHVlOworCisJQlVHX09OX09QVF9ORUcodW5zZXQpOworCW9wdGlvbnMtPnVzZV9jb2xvciA9IDE7CisJb3B0aW9ucy0+d29yZF9kaWZmID0gRElGRl9XT1JEU19DT0xPUjsKKwlvcHRpb25zLT53b3JkX3JlZ2V4ID0gYXJnOworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGRpZmZfb3B0X2NvbXBhY3Rfc3VtbWFyeShjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJCQkJICAgIGNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQoreworCXN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMgPSBvcHQtPnZhbHVlOworCisJQlVHX09OX09QVF9BUkcoYXJnKTsKKwlpZiAodW5zZXQpIHsKKwkJb3B0aW9ucy0+ZmxhZ3Muc3RhdF93aXRoX3N1bW1hcnkgPSAwOworCX0gZWxzZSB7CisJCW9wdGlvbnMtPmZsYWdzLnN0YXRfd2l0aF9zdW1tYXJ5ID0gMTsKKwkJb3B0aW9ucy0+b3V0cHV0X2Zvcm1hdCB8PSBESUZGX0ZPUk1BVF9ESUZGU1RBVDsKKwl9CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgZGlmZl9vcHRfZGlmZl9hbGdvcml0aG0oY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQkJCSAgIGNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQoreworCXN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMgPSBvcHQtPnZhbHVlOworCWxvbmcgdmFsdWUgPSBwYXJzZV9hbGdvcml0aG1fdmFsdWUoYXJnKTsKKworCUJVR19PTl9PUFRfTkVHKHVuc2V0KTsKKwlpZiAodmFsdWUgPCAwKQorCQlyZXR1cm4gZXJyb3IoXygib3B0aW9uIGRpZmYtYWxnb3JpdGhtIGFjY2VwdHMgXCJteWVyc1wiLCAiCisJCQkgICAgICAgIlwibWluaW1hbFwiLCBcInBhdGllbmNlXCIgYW5kIFwiaGlzdG9ncmFtXCIiKSk7CisKKwkvKiBjbGVhciBvdXQgcHJldmlvdXMgc2V0dGluZ3MgKi8KKwlESUZGX1hETF9DTFIob3B0aW9ucywgTkVFRF9NSU5JTUFMKTsKKwlvcHRpb25zLT54ZGxfb3B0cyAmPSB+WERGX0RJRkZfQUxHT1JJVEhNX01BU0s7CisJb3B0aW9ucy0+eGRsX29wdHMgfD0gdmFsdWU7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgZGlmZl9vcHRfZGlyc3RhdChjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJCQkgICAgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CisKKwlCVUdfT05fT1BUX05FRyh1bnNldCk7CisJaWYgKCFzdHJjbXAob3B0LT5sb25nX25hbWUsICJjdW11bGF0aXZlIikpIHsKKwkJaWYgKGFyZykKKwkJCUJVRygiaG93IGNvbWUgLS1jdW11bGF0aXZlIHRha2UgYSB2YWx1ZT8iKTsKKwkJYXJnID0gImN1bXVsYXRpdmUiOworCX0gZWxzZSBpZiAoIXN0cmNtcChvcHQtPmxvbmdfbmFtZSwgImRpcnN0YXQtYnktZmlsZSIpKQorCQlwYXJzZV9kaXJzdGF0X29wdChvcHRpb25zLCAiZmlsZXMiKTsKKwlwYXJzZV9kaXJzdGF0X29wdChvcHRpb25zLCBhcmcgPyBhcmcgOiAiIik7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgZGlmZl9vcHRfZmluZF9jb3BpZXMoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQkJCWNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQoreworCXN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMgPSBvcHQtPnZhbHVlOworCisJQlVHX09OX09QVF9ORUcodW5zZXQpOworCWlmICghYXJnKQorCQlhcmcgPSAiIjsKKwlvcHRpb25zLT5yZW5hbWVfc2NvcmUgPSBwYXJzZV9yZW5hbWVfc2NvcmUoJmFyZyk7CisJaWYgKCphcmcgIT0gMCkKKwkJcmV0dXJuIGVycm9yKF8oImludmFsaWQgYXJndW1lbnQgdG8gJXMiKSwgb3B0LT5sb25nX25hbWUpOworCisJaWYgKG9wdGlvbnMtPmRldGVjdF9yZW5hbWUgPT0gRElGRl9ERVRFQ1RfQ09QWSkKKwkJb3B0aW9ucy0+ZmxhZ3MuZmluZF9jb3BpZXNfaGFyZGVyID0gMTsKKwllbHNlCisJCW9wdGlvbnMtPmRldGVjdF9yZW5hbWUgPSBESUZGX0RFVEVDVF9DT1BZOworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgZGlmZl9vcHRfZmluZF9yZW5hbWVzKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKKwkJCQkgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CisKKwlCVUdfT05fT1BUX05FRyh1bnNldCk7CisJaWYgKCFhcmcpCisJCWFyZyA9ICIiOworCW9wdGlvbnMtPnJlbmFtZV9zY29yZSA9IHBhcnNlX3JlbmFtZV9zY29yZSgmYXJnKTsKKwlpZiAoKmFyZyAhPSAwKQorCQlyZXR1cm4gZXJyb3IoXygiaW52YWxpZCBhcmd1bWVudCB0byAlcyIpLCBvcHQtPmxvbmdfbmFtZSk7CisKKwlvcHRpb25zLT5kZXRlY3RfcmVuYW1lID0gRElGRl9ERVRFQ1RfUkVOQU1FOworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGRpZmZfb3B0X2ZvbGxvdyhjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJCQkgICBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKK3sKKwlzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zID0gb3B0LT52YWx1ZTsKKworCUJVR19PTl9PUFRfQVJHKGFyZyk7CisJaWYgKHVuc2V0KSB7CisJCW9wdGlvbnMtPmZsYWdzLmZvbGxvd19yZW5hbWVzID0gMDsKKwkJb3B0aW9ucy0+ZmxhZ3MuZGVmYXVsdF9mb2xsb3dfcmVuYW1lcyA9IDA7CisJfSBlbHNlIHsKKwkJb3B0aW9ucy0+ZmxhZ3MuZm9sbG93X3JlbmFtZXMgPSAxOworCX0KKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBkaWZmX29wdF9pZ25vcmVfc3VibW9kdWxlcyhjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJCQkJICAgICAgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CisKKwlCVUdfT05fT1BUX05FRyh1bnNldCk7CisJaWYgKCFhcmcpCisJCWFyZyA9ICJhbGwiOworCW9wdGlvbnMtPmZsYWdzLm92ZXJyaWRlX3N1Ym1vZHVsZV9jb25maWcgPSAxOworCWhhbmRsZV9pZ25vcmVfc3VibW9kdWxlc19hcmcob3B0aW9ucywgYXJnKTsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBkaWZmX29wdF9saW5lX3ByZWZpeChjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJCQkJY29uc3QgY2hhciAqb3B0YXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CisKKwlCVUdfT05fT1BUX05FRyh1bnNldCk7CisJb3B0aW9ucy0+bGluZV9wcmVmaXggPSBvcHRhcmc7CisJb3B0aW9ucy0+bGluZV9wcmVmaXhfbGVuZ3RoID0gc3RybGVuKG9wdGlvbnMtPmxpbmVfcHJlZml4KTsKKwlncmFwaF9zZXR1cF9saW5lX3ByZWZpeChvcHRpb25zKTsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBkaWZmX29wdF9ub19wcmVmaXgoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQkJICAgICAgY29uc3QgY2hhciAqb3B0YXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CisKKwlCVUdfT05fT1BUX05FRyh1bnNldCk7CisJQlVHX09OX09QVF9BUkcob3B0YXJnKTsKKwlvcHRpb25zLT5hX3ByZWZpeCA9ICIiOworCW9wdGlvbnMtPmJfcHJlZml4ID0gIiI7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBlbnVtIHBhcnNlX29wdF9yZXN1bHQgZGlmZl9vcHRfb3V0cHV0KHN0cnVjdCBwYXJzZV9vcHRfY3R4X3QgKmN0eCwKKwkJCQkJICAgICBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJCQkJCSAgICAgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CisJY2hhciAqcGF0aDsKKworCUJVR19PTl9PUFRfTkVHKHVuc2V0KTsKKwlwYXRoID0gcHJlZml4X2ZpbGVuYW1lKGN0eC0+cHJlZml4LCBhcmcpOworCW9wdGlvbnMtPmZpbGUgPSB4Zm9wZW4ocGF0aCwgInciKTsKKwlvcHRpb25zLT5jbG9zZV9maWxlID0gMTsKKwlpZiAob3B0aW9ucy0+dXNlX2NvbG9yICE9IEdJVF9DT0xPUl9BTFdBWVMpCisJCW9wdGlvbnMtPnVzZV9jb2xvciA9IEdJVF9DT0xPUl9ORVZFUjsKKwlmcmVlKHBhdGgpOworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGRpZmZfb3B0X3BhdGllbmNlKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKKwkJCSAgICAgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CisJaW50IGk7CisKKwlCVUdfT05fT1BUX05FRyh1bnNldCk7CisJQlVHX09OX09QVF9BUkcoYXJnKTsKKwlvcHRpb25zLT54ZGxfb3B0cyA9IERJRkZfV0lUSF9BTEcob3B0aW9ucywgUEFUSUVOQ0VfRElGRik7CisJLyoKKwkgKiBCb3RoIC0tcGF0aWVuY2UgYW5kIC0tYW5jaG9yZWQgdXNlIFBBVElFTkNFX0RJRkYKKwkgKiBpbnRlcm5hbGx5LCBzbyByZW1vdmUgYW55IGFuY2hvcnMgcHJldmlvdXNseQorCSAqIHNwZWNpZmllZC4KKwkgKi8KKwlmb3IgKGkgPSAwOyBpIDwgb3B0aW9ucy0+YW5jaG9yc19ucjsgaSsrKQorCQlmcmVlKG9wdGlvbnMtPmFuY2hvcnNbaV0pOworCW9wdGlvbnMtPmFuY2hvcnNfbnIgPSAwOworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGRpZmZfb3B0X3BpY2theGVfcmVnZXgoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQkJCSAgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CisKKwlCVUdfT05fT1BUX05FRyh1bnNldCk7CisJb3B0aW9ucy0+cGlja2F4ZSA9IGFyZzsKKwlvcHRpb25zLT5waWNrYXhlX29wdHMgfD0gRElGRl9QSUNLQVhFX0tJTkRfRzsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBkaWZmX29wdF9waWNrYXhlX3N0cmluZyhjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJCQkJICAgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CisKKwlCVUdfT05fT1BUX05FRyh1bnNldCk7CisJb3B0aW9ucy0+cGlja2F4ZSA9IGFyZzsKKwlvcHRpb25zLT5waWNrYXhlX29wdHMgfD0gRElGRl9QSUNLQVhFX0tJTkRfUzsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBkaWZmX29wdF9yZWxhdGl2ZShjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJCQkgICAgIGNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQoreworCXN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMgPSBvcHQtPnZhbHVlOworCisJQlVHX09OX09QVF9ORUcodW5zZXQpOworCW9wdGlvbnMtPmZsYWdzLnJlbGF0aXZlX25hbWUgPSAxOworCWlmIChhcmcpCisJCW9wdGlvbnMtPnByZWZpeCA9IGFyZzsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBkaWZmX29wdF9zdWJtb2R1bGUoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQkJICAgICAgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CisKKwlCVUdfT05fT1BUX05FRyh1bnNldCk7CisJaWYgKCFhcmcpCisJCWFyZyA9ICJsb2ciOworCWlmIChwYXJzZV9zdWJtb2R1bGVfcGFyYW1zKG9wdGlvbnMsIGFyZykpCisJCXJldHVybiBlcnJvcihfKCJmYWlsZWQgdG8gcGFyc2UgLS1zdWJtb2R1bGUgb3B0aW9uIHBhcmFtZXRlcjogJyVzJyIpLAorCQkJICAgICBhcmcpOworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGRpZmZfb3B0X3RleHRjb252KGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKKwkJCSAgICAgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucyA9IG9wdC0+dmFsdWU7CisKKwlCVUdfT05fT1BUX0FSRyhhcmcpOworCWlmICh1bnNldCkgeworCQlvcHRpb25zLT5mbGFncy5hbGxvd190ZXh0Y29udiA9IDA7CisJfSBlbHNlIHsKKwkJb3B0aW9ucy0+ZmxhZ3MuYWxsb3dfdGV4dGNvbnYgPSAxOworCQlvcHRpb25zLT5mbGFncy50ZXh0Y29udl9zZXRfdmlhX2NtZGxpbmUgPSAxOworCX0KKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBkaWZmX29wdF91bmlmaWVkKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKKwkJCSAgICBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKK3sKKwlzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zID0gb3B0LT52YWx1ZTsKKwljaGFyICpzOworCisJQlVHX09OX09QVF9ORUcodW5zZXQpOworCisJaWYgKGFyZykgeworCQlvcHRpb25zLT5jb250ZXh0ID0gc3RydG9sKGFyZywgJnMsIDEwKTsKKwkJaWYgKCpzKQorCQkJcmV0dXJuIGVycm9yKF8oIiVzIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiKSwgIi0tdW5pZmllZCIpOworCX0KKwllbmFibGVfcGF0Y2hfb3V0cHV0KCZvcHRpb25zLT5vdXRwdXRfZm9ybWF0KTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGRpZmZfb3B0X3dvcmRfZGlmZihjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJCQkgICAgICBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKK3sKKwlzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zID0gb3B0LT52YWx1ZTsKKworCUJVR19PTl9PUFRfTkVHKHVuc2V0KTsKKwlpZiAoYXJnKSB7CiAJCWlmICghc3RyY21wKGFyZywgInBsYWluIikpCiAJCQlvcHRpb25zLT53b3JkX2RpZmYgPSBESUZGX1dPUkRTX1BMQUlOOwogCQllbHNlIGlmICghc3RyY21wKGFyZywgImNvbG9yIikpIHsKQEAgLTUwNTgsMTE4ICs1MjMxLDMwNSBAQAogCQllbHNlIGlmICghc3RyY21wKGFyZywgIm5vbmUiKSkKIAkJCW9wdGlvbnMtPndvcmRfZGlmZiA9IERJRkZfV09SRFNfTk9ORTsKIAkJZWxzZQotCQkJZGllKCJiYWQgLS13b3JkLWRpZmYgYXJndW1lbnQ6ICVzIiwgYXJnKTsKLQl9Ci0JZWxzZSBpZiAoKGFyZ2NvdW50ID0gcGFyc2VfbG9uZ19vcHQoIndvcmQtZGlmZi1yZWdleCIsIGF2LCAmb3B0YXJnKSkpIHsKKwkJCXJldHVybiBlcnJvcihfKCJiYWQgLS13b3JkLWRpZmYgYXJndW1lbnQ6ICVzIiksIGFyZyk7CisJfSBlbHNlIHsKIAkJaWYgKG9wdGlvbnMtPndvcmRfZGlmZiA9PSBESUZGX1dPUkRTX05PTkUpCiAJCQlvcHRpb25zLT53b3JkX2RpZmYgPSBESUZGX1dPUkRTX1BMQUlOOwotCQlvcHRpb25zLT53b3JkX3JlZ2V4ID0gb3B0YXJnOwotCQlyZXR1cm4gYXJnY291bnQ7CiAJfQotCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1leGl0LWNvZGUiKSkKLQkJb3B0aW9ucy0+ZmxhZ3MuZXhpdF93aXRoX3N0YXR1cyA9IDE7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLXF1aWV0IikpCi0JCW9wdGlvbnMtPmZsYWdzLnF1aWNrID0gMTsKLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tZXh0LWRpZmYiKSkKLQkJb3B0aW9ucy0+ZmxhZ3MuYWxsb3dfZXh0ZXJuYWwgPSAxOwotCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1uby1leHQtZGlmZiIpKQotCQlvcHRpb25zLT5mbGFncy5hbGxvd19leHRlcm5hbCA9IDA7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLXRleHRjb252IikpIHsKLQkJb3B0aW9ucy0+ZmxhZ3MuYWxsb3dfdGV4dGNvbnYgPSAxOwotCQlvcHRpb25zLT5mbGFncy50ZXh0Y29udl9zZXRfdmlhX2NtZGxpbmUgPSAxOwotCX0gZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLW5vLXRleHRjb252IikpCi0JCW9wdGlvbnMtPmZsYWdzLmFsbG93X3RleHRjb252ID0gMDsKLQllbHNlIGlmIChza2lwX3RvX29wdGlvbmFsX2FyZ19kZWZhdWx0KGFyZywgIi0taWdub3JlLXN1Ym1vZHVsZXMiLCAmYXJnLCAiYWxsIikpIHsKLQkJb3B0aW9ucy0+ZmxhZ3Mub3ZlcnJpZGVfc3VibW9kdWxlX2NvbmZpZyA9IDE7Ci0JCWhhbmRsZV9pZ25vcmVfc3VibW9kdWxlc19hcmcob3B0aW9ucywgYXJnKTsKLQl9IGVsc2UgaWYgKHNraXBfdG9fb3B0aW9uYWxfYXJnX2RlZmF1bHQoYXJnLCAiLS1zdWJtb2R1bGUiLCAmYXJnLCAibG9nIikpCi0JCXJldHVybiBwYXJzZV9zdWJtb2R1bGVfb3B0KG9wdGlvbnMsIGFyZyk7Ci0JZWxzZSBpZiAoc2tpcF9wcmVmaXgoYXJnLCAiLS13cy1lcnJvci1oaWdobGlnaHQ9IiwgJmFyZykpCi0JCXJldHVybiBwYXJzZV93c19lcnJvcl9oaWdobGlnaHRfb3B0KG9wdGlvbnMsIGFyZyk7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWl0YS1pbnZpc2libGUtaW4taW5kZXgiKSkKLQkJb3B0aW9ucy0+aXRhX2ludmlzaWJsZV9pbl9pbmRleCA9IDE7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWl0YS12aXNpYmxlLWluLWluZGV4IikpCi0JCW9wdGlvbnMtPml0YV9pbnZpc2libGVfaW5faW5kZXggPSAwOworCXJldHVybiAwOworfQogCi0JLyogbWlzYyBvcHRpb25zICovCi0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICIteiIpKQotCQlvcHRpb25zLT5saW5lX3Rlcm1pbmF0aW9uID0gMDsKLQllbHNlIGlmICgoYXJnY291bnQgPSBzaG9ydF9vcHQoJ2wnLCBhdiwgJm9wdGFyZykpKSB7Ci0JCW9wdGlvbnMtPnJlbmFtZV9saW1pdCA9IHN0cnRvdWwob3B0YXJnLCBOVUxMLCAxMCk7Ci0JCXJldHVybiBhcmdjb3VudDsKLQl9Ci0JZWxzZSBpZiAoKGFyZ2NvdW50ID0gc2hvcnRfb3B0KCdTJywgYXYsICZvcHRhcmcpKSkgewotCQlvcHRpb25zLT5waWNrYXhlID0gb3B0YXJnOwotCQlvcHRpb25zLT5waWNrYXhlX29wdHMgfD0gRElGRl9QSUNLQVhFX0tJTkRfUzsKLQkJcmV0dXJuIGFyZ2NvdW50OwotCX0gZWxzZSBpZiAoKGFyZ2NvdW50ID0gc2hvcnRfb3B0KCdHJywgYXYsICZvcHRhcmcpKSkgewotCQlvcHRpb25zLT5waWNrYXhlID0gb3B0YXJnOwotCQlvcHRpb25zLT5waWNrYXhlX29wdHMgfD0gRElGRl9QSUNLQVhFX0tJTkRfRzsKLQkJcmV0dXJuIGFyZ2NvdW50OwotCX0KLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tcGlja2F4ZS1hbGwiKSkKLQkJb3B0aW9ucy0+cGlja2F4ZV9vcHRzIHw9IERJRkZfUElDS0FYRV9BTEw7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLXBpY2theGUtcmVnZXgiKSkKLQkJb3B0aW9ucy0+cGlja2F4ZV9vcHRzIHw9IERJRkZfUElDS0FYRV9SRUdFWDsKLQllbHNlIGlmICgoYXJnY291bnQgPSBzaG9ydF9vcHQoJ08nLCBhdiwgJm9wdGFyZykpKSB7Ci0JCW9wdGlvbnMtPm9yZGVyZmlsZSA9IHByZWZpeF9maWxlbmFtZShwcmVmaXgsIG9wdGFyZyk7Ci0JCXJldHVybiBhcmdjb3VudDsKLQl9IGVsc2UgaWYgKHNraXBfcHJlZml4KGFyZywgIi0tZmluZC1vYmplY3Q9IiwgJmFyZykpCi0JCXJldHVybiBwYXJzZV9vYmpmaW5kX29wdChvcHRpb25zLCBhcmcpOwotCWVsc2UgaWYgKChhcmdjb3VudCA9IHBhcnNlX2xvbmdfb3B0KCJkaWZmLWZpbHRlciIsIGF2LCAmb3B0YXJnKSkpIHsKLQkJaW50IG9mZmVuZGluZyA9IHBhcnNlX2RpZmZfZmlsdGVyX29wdChvcHRhcmcsIG9wdGlvbnMpOwotCQlpZiAob2ZmZW5kaW5nKQotCQkJZGllKCJ1bmtub3duIGNoYW5nZSBjbGFzcyAnJWMnIGluIC0tZGlmZi1maWx0ZXI9JXMiLAotCQkJICAgIG9mZmVuZGluZywgb3B0YXJnKTsKLQkJcmV0dXJuIGFyZ2NvdW50OwotCX0KLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tbm8tYWJicmV2IikpCi0JCW9wdGlvbnMtPmFiYnJldiA9IDA7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWFiYnJldiIpKQotCQlvcHRpb25zLT5hYmJyZXYgPSBERUZBVUxUX0FCQlJFVjsKLQllbHNlIGlmIChza2lwX3ByZWZpeChhcmcsICItLWFiYnJldj0iLCAmYXJnKSkgewotCQlvcHRpb25zLT5hYmJyZXYgPSBzdHJ0b3VsKGFyZywgTlVMTCwgMTApOwotCQlpZiAob3B0aW9ucy0+YWJicmV2IDwgTUlOSU1VTV9BQkJSRVYpCi0JCQlvcHRpb25zLT5hYmJyZXYgPSBNSU5JTVVNX0FCQlJFVjsKLQkJZWxzZSBpZiAodGhlX2hhc2hfYWxnby0+aGV4c3ogPCBvcHRpb25zLT5hYmJyZXYpCi0JCQlvcHRpb25zLT5hYmJyZXYgPSB0aGVfaGFzaF9hbGdvLT5oZXhzejsKLQl9Ci0JZWxzZSBpZiAoKGFyZ2NvdW50ID0gcGFyc2VfbG9uZ19vcHQoInNyYy1wcmVmaXgiLCBhdiwgJm9wdGFyZykpKSB7Ci0JCW9wdGlvbnMtPmFfcHJlZml4ID0gb3B0YXJnOwotCQlyZXR1cm4gYXJnY291bnQ7Ci0JfQotCWVsc2UgaWYgKChhcmdjb3VudCA9IHBhcnNlX2xvbmdfb3B0KCJsaW5lLXByZWZpeCIsIGF2LCAmb3B0YXJnKSkpIHsKLQkJb3B0aW9ucy0+bGluZV9wcmVmaXggPSBvcHRhcmc7Ci0JCW9wdGlvbnMtPmxpbmVfcHJlZml4X2xlbmd0aCA9IHN0cmxlbihvcHRpb25zLT5saW5lX3ByZWZpeCk7Ci0JCWdyYXBoX3NldHVwX2xpbmVfcHJlZml4KG9wdGlvbnMpOwotCQlyZXR1cm4gYXJnY291bnQ7Ci0JfQotCWVsc2UgaWYgKChhcmdjb3VudCA9IHBhcnNlX2xvbmdfb3B0KCJkc3QtcHJlZml4IiwgYXYsICZvcHRhcmcpKSkgewotCQlvcHRpb25zLT5iX3ByZWZpeCA9IG9wdGFyZzsKLQkJcmV0dXJuIGFyZ2NvdW50OwotCX0KLQllbHNlIGlmICghc3RyY21wKGFyZywgIi0tbm8tcHJlZml4IikpCi0JCW9wdGlvbnMtPmFfcHJlZml4ID0gb3B0aW9ucy0+Yl9wcmVmaXggPSAiIjsKLQllbHNlIGlmIChvcHRfYXJnKGFyZywgJ1wwJywgImludGVyLWh1bmstY29udGV4dCIsCi0JCQkgJm9wdGlvbnMtPmludGVyaHVua2NvbnRleHQpKQotCQk7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItVyIpKQotCQlvcHRpb25zLT5mbGFncy5mdW5jY29udGV4dCA9IDE7Ci0JZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWZ1bmN0aW9uLWNvbnRleHQiKSkKLQkJb3B0aW9ucy0+ZmxhZ3MuZnVuY2NvbnRleHQgPSAxOwotCWVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1uby1mdW5jdGlvbi1jb250ZXh0IikpCi0JCW9wdGlvbnMtPmZsYWdzLmZ1bmNjb250ZXh0ID0gMDsKLQllbHNlIGlmICgoYXJnY291bnQgPSBwYXJzZV9sb25nX29wdCgib3V0cHV0IiwgYXYsICZvcHRhcmcpKSkgewotCQljaGFyICpwYXRoID0gcHJlZml4X2ZpbGVuYW1lKHByZWZpeCwgb3B0YXJnKTsKLQkJb3B0aW9ucy0+ZmlsZSA9IHhmb3BlbihwYXRoLCAidyIpOwotCQlvcHRpb25zLT5jbG9zZV9maWxlID0gMTsKLQkJaWYgKG9wdGlvbnMtPnVzZV9jb2xvciAhPSBHSVRfQ09MT1JfQUxXQVlTKQotCQkJb3B0aW9ucy0+dXNlX2NvbG9yID0gR0lUX0NPTE9SX05FVkVSOwotCQlmcmVlKHBhdGgpOwotCQlyZXR1cm4gYXJnY291bnQ7Ci0JfSBlbHNlCi0JCXJldHVybiAwOwotCXJldHVybiAxOworc3RhdGljIGludCBkaWZmX29wdF93b3JkX2RpZmZfcmVnZXgoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQkJCSAgICBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKK3sKKwlzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zID0gb3B0LT52YWx1ZTsKKworCUJVR19PTl9PUFRfTkVHKHVuc2V0KTsKKwlpZiAob3B0aW9ucy0+d29yZF9kaWZmID09IERJRkZfV09SRFNfTk9ORSkKKwkJb3B0aW9ucy0+d29yZF9kaWZmID0gRElGRl9XT1JEU19QTEFJTjsKKwlvcHRpb25zLT53b3JkX3JlZ2V4ID0gYXJnOworCXJldHVybiAwOworfQorCitzdGF0aWMgdm9pZCBwcmVwX3BhcnNlX29wdGlvbnMoc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucykKK3sKKwlzdHJ1Y3Qgb3B0aW9uIHBhcnNlb3B0c1tdID0geworCQlPUFRfR1JPVVAoTl8oIkRpZmYgb3V0cHV0IGZvcm1hdCBvcHRpb25zIikpLAorCQlPUFRfQklUT1AoJ3AnLCAicGF0Y2giLCAmb3B0aW9ucy0+b3V0cHV0X2Zvcm1hdCwKKwkJCSAgTl8oImdlbmVyYXRlIHBhdGNoIiksCisJCQkgIERJRkZfRk9STUFUX1BBVENILCBESUZGX0ZPUk1BVF9OT19PVVRQVVQpLAorCQlPUFRfQklUX0YoJ3MnLCAibm8tcGF0Y2giLCAmb3B0aW9ucy0+b3V0cHV0X2Zvcm1hdCwKKwkJCSAgTl8oInN1cHByZXNzIGRpZmYgb3V0cHV0IiksCisJCQkgIERJRkZfRk9STUFUX05PX09VVFBVVCwgUEFSU0VfT1BUX05PTkVHKSwKKwkJT1BUX0JJVE9QKCd1JywgTlVMTCwgJm9wdGlvbnMtPm91dHB1dF9mb3JtYXQsCisJCQkgIE5fKCJnZW5lcmF0ZSBwYXRjaCIpLAorCQkJICBESUZGX0ZPUk1BVF9QQVRDSCwgRElGRl9GT1JNQVRfTk9fT1VUUFVUKSwKKwkJT1BUX0NBTExCQUNLX0YoJ1UnLCAidW5pZmllZCIsIG9wdGlvbnMsIE5fKCI8bj4iKSwKKwkJCSAgICAgICBOXygiZ2VuZXJhdGUgZGlmZnMgd2l0aCA8bj4gbGluZXMgY29udGV4dCIpLAorCQkJICAgICAgIFBBUlNFX09QVF9OT05FRyB8IFBBUlNFX09QVF9PUFRBUkcsIGRpZmZfb3B0X3VuaWZpZWQpLAorCQlPUFRfQk9PTCgnVycsICJmdW5jdGlvbi1jb250ZXh0IiwgJm9wdGlvbnMtPmZsYWdzLmZ1bmNjb250ZXh0LAorCQkJIE5fKCJnZW5lcmF0ZSBkaWZmcyB3aXRoIDxuPiBsaW5lcyBjb250ZXh0IikpLAorCQlPUFRfQklUX0YoMCwgInJhdyIsICZvcHRpb25zLT5vdXRwdXRfZm9ybWF0LAorCQkJICBOXygiZ2VuZXJhdGUgdGhlIGRpZmYgaW4gcmF3IGZvcm1hdCIpLAorCQkJICBESUZGX0ZPUk1BVF9SQVcsIFBBUlNFX09QVF9OT05FRyksCisJCU9QVF9CSVRPUCgwLCAicGF0Y2gtd2l0aC1yYXciLCAmb3B0aW9ucy0+b3V0cHV0X2Zvcm1hdCwKKwkJCSAgTl8oInN5bm9ueW0gZm9yICctcCAtLXJhdyciKSwKKwkJCSAgRElGRl9GT1JNQVRfUEFUQ0ggfCBESUZGX0ZPUk1BVF9SQVcsCisJCQkgIERJRkZfRk9STUFUX05PX09VVFBVVCksCisJCU9QVF9CSVRPUCgwLCAicGF0Y2gtd2l0aC1zdGF0IiwgJm9wdGlvbnMtPm91dHB1dF9mb3JtYXQsCisJCQkgIE5fKCJzeW5vbnltIGZvciAnLXAgLS1zdGF0JyIpLAorCQkJICBESUZGX0ZPUk1BVF9QQVRDSCB8IERJRkZfRk9STUFUX0RJRkZTVEFULAorCQkJICBESUZGX0ZPUk1BVF9OT19PVVRQVVQpLAorCQlPUFRfQklUX0YoMCwgIm51bXN0YXQiLCAmb3B0aW9ucy0+b3V0cHV0X2Zvcm1hdCwKKwkJCSAgTl8oIm1hY2hpbmUgZnJpZW5kbHkgLS1zdGF0IiksCisJCQkgIERJRkZfRk9STUFUX05VTVNUQVQsIFBBUlNFX09QVF9OT05FRyksCisJCU9QVF9CSVRfRigwLCAic2hvcnRzdGF0IiwgJm9wdGlvbnMtPm91dHB1dF9mb3JtYXQsCisJCQkgIE5fKCJvdXRwdXQgb25seSB0aGUgbGFzdCBsaW5lIG9mIC0tc3RhdCIpLAorCQkJICBESUZGX0ZPUk1BVF9TSE9SVFNUQVQsIFBBUlNFX09QVF9OT05FRyksCisJCU9QVF9DQUxMQkFDS19GKCdYJywgImRpcnN0YXQiLCBvcHRpb25zLCBOXygiPHBhcmFtMSxwYXJhbTI+Li4uIiksCisJCQkgICAgICAgTl8oIm91dHB1dCB0aGUgZGlzdHJpYnV0aW9uIG9mIHJlbGF0aXZlIGFtb3VudCBvZiBjaGFuZ2VzIGZvciBlYWNoIHN1Yi1kaXJlY3RvcnkiKSwKKwkJCSAgICAgICBQQVJTRV9PUFRfTk9ORUcgfCBQQVJTRV9PUFRfT1BUQVJHLAorCQkJICAgICAgIGRpZmZfb3B0X2RpcnN0YXQpLAorCQlPUFRfQ0FMTEJBQ0tfRigwLCAiY3VtdWxhdGl2ZSIsIG9wdGlvbnMsIE5VTEwsCisJCQkgICAgICAgTl8oInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1jdW11bGF0aXZlIiksCisJCQkgICAgICAgUEFSU0VfT1BUX05PTkVHIHwgUEFSU0VfT1BUX05PQVJHLAorCQkJICAgICAgIGRpZmZfb3B0X2RpcnN0YXQpLAorCQlPUFRfQ0FMTEJBQ0tfRigwLCAiZGlyc3RhdC1ieS1maWxlIiwgb3B0aW9ucywgTl8oIjxwYXJhbTEscGFyYW0yPi4uLiIpLAorCQkJICAgICAgIE5fKCJzeW5vbnltIGZvciAtLWRpcnN0YXQ9ZmlsZXMscGFyYW0xLHBhcmFtMi4uLiIpLAorCQkJICAgICAgIFBBUlNFX09QVF9OT05FRyB8IFBBUlNFX09QVF9PUFRBUkcsCisJCQkgICAgICAgZGlmZl9vcHRfZGlyc3RhdCksCisJCU9QVF9CSVRfRigwLCAiY2hlY2siLCAmb3B0aW9ucy0+b3V0cHV0X2Zvcm1hdCwKKwkJCSAgTl8oIndhcm4gaWYgY2hhbmdlcyBpbnRyb2R1Y2UgY29uZmxpY3QgbWFya2VycyBvciB3aGl0ZXNwYWNlIGVycm9ycyIpLAorCQkJICBESUZGX0ZPUk1BVF9DSEVDS0RJRkYsIFBBUlNFX09QVF9OT05FRyksCisJCU9QVF9CSVRfRigwLCAic3VtbWFyeSIsICZvcHRpb25zLT5vdXRwdXRfZm9ybWF0LAorCQkJICBOXygiY29uZGVuc2VkIHN1bW1hcnkgc3VjaCBhcyBjcmVhdGlvbnMsIHJlbmFtZXMgYW5kIG1vZGUgY2hhbmdlcyIpLAorCQkJICBESUZGX0ZPUk1BVF9TVU1NQVJZLCBQQVJTRV9PUFRfTk9ORUcpLAorCQlPUFRfQklUX0YoMCwgIm5hbWUtb25seSIsICZvcHRpb25zLT5vdXRwdXRfZm9ybWF0LAorCQkJICBOXygic2hvdyBvbmx5IG5hbWVzIG9mIGNoYW5nZWQgZmlsZXMiKSwKKwkJCSAgRElGRl9GT1JNQVRfTkFNRSwgUEFSU0VfT1BUX05PTkVHKSwKKwkJT1BUX0JJVF9GKDAsICJuYW1lLXN0YXR1cyIsICZvcHRpb25zLT5vdXRwdXRfZm9ybWF0LAorCQkJICBOXygic2hvdyBvbmx5IG5hbWVzIGFuZCBzdGF0dXMgb2YgY2hhbmdlZCBmaWxlcyIpLAorCQkJICBESUZGX0ZPUk1BVF9OQU1FX1NUQVRVUywgUEFSU0VfT1BUX05PTkVHKSwKKwkJT1BUX0NBTExCQUNLX0YoMCwgInN0YXQiLCBvcHRpb25zLCBOXygiPHdpZHRoPlssPG5hbWUtd2lkdGg+Wyw8Y291bnQ+XV0iKSwKKwkJCSAgICAgICBOXygiZ2VuZXJhdGUgZGlmZnN0YXQiKSwKKwkJCSAgICAgICBQQVJTRV9PUFRfTk9ORUcgfCBQQVJTRV9PUFRfT1BUQVJHLCBkaWZmX29wdF9zdGF0KSwKKwkJT1BUX0NBTExCQUNLX0YoMCwgInN0YXQtd2lkdGgiLCBvcHRpb25zLCBOXygiPHdpZHRoPiIpLAorCQkJICAgICAgIE5fKCJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGEgZ2l2ZW4gd2lkdGgiKSwKKwkJCSAgICAgICBQQVJTRV9PUFRfTk9ORUcsIGRpZmZfb3B0X3N0YXQpLAorCQlPUFRfQ0FMTEJBQ0tfRigwLCAic3RhdC1uYW1lLXdpZHRoIiwgb3B0aW9ucywgTl8oIjx3aWR0aD4iKSwKKwkJCSAgICAgICBOXygiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBhIGdpdmVuIG5hbWUgd2lkdGgiKSwKKwkJCSAgICAgICBQQVJTRV9PUFRfTk9ORUcsIGRpZmZfb3B0X3N0YXQpLAorCQlPUFRfQ0FMTEJBQ0tfRigwLCAic3RhdC1ncmFwaC13aWR0aCIsIG9wdGlvbnMsIE5fKCI8d2lkdGg+IiksCisJCQkgICAgICAgTl8oImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBncmFwaCB3aWR0aCIpLAorCQkJICAgICAgIFBBUlNFX09QVF9OT05FRywgZGlmZl9vcHRfc3RhdCksCisJCU9QVF9DQUxMQkFDS19GKDAsICJzdGF0LWNvdW50Iiwgb3B0aW9ucywgTl8oIjxjb3VudD4iKSwKKwkJCSAgICAgICBOXygiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBsaW1pdGVkIGxpbmVzIiksCisJCQkgICAgICAgUEFSU0VfT1BUX05PTkVHLCBkaWZmX29wdF9zdGF0KSwKKwkJT1BUX0NBTExCQUNLX0YoMCwgImNvbXBhY3Qtc3VtbWFyeSIsIG9wdGlvbnMsIE5VTEwsCisJCQkgICAgICAgTl8oImdlbmVyYXRlIGNvbXBhY3Qgc3VtbWFyeSBpbiBkaWZmc3RhdCIpLAorCQkJICAgICAgIFBBUlNFX09QVF9OT0FSRywgZGlmZl9vcHRfY29tcGFjdF9zdW1tYXJ5KSwKKwkJT1BUX0NBTExCQUNLX0YoMCwgImJpbmFyeSIsIG9wdGlvbnMsIE5VTEwsCisJCQkgICAgICAgTl8oIm91dHB1dCBhIGJpbmFyeSBkaWZmIHRoYXQgY2FuIGJlIGFwcGxpZWQiKSwKKwkJCSAgICAgICBQQVJTRV9PUFRfTk9ORUcgfCBQQVJTRV9PUFRfTk9BUkcsIGRpZmZfb3B0X2JpbmFyeSksCisJCU9QVF9CT09MKDAsICJmdWxsLWluZGV4IiwgJm9wdGlvbnMtPmZsYWdzLmZ1bGxfaW5kZXgsCisJCQkgTl8oInNob3cgZnVsbCBwcmUtIGFuZCBwb3N0LWltYWdlIG9iamVjdCBuYW1lcyBvbiB0aGUgXCJpbmRleFwiIGxpbmVzIikpLAorCQlPUFRfQ09MT1JfRkxBRygwLCAiY29sb3IiLCAmb3B0aW9ucy0+dXNlX2NvbG9yLAorCQkJICAgICAgIE5fKCJzaG93IGNvbG9yZWQgZGlmZiIpKSwKKwkJT1BUX0NBTExCQUNLX0YoMCwgIndzLWVycm9yLWhpZ2hsaWdodCIsIG9wdGlvbnMsIE5fKCI8a2luZD4iKSwKKwkJCSAgICAgICBOXygiaGlnaGxpZ2h0IHdoaXRlc3BhY2UgZXJyb3JzIGluIHRoZSAnY29udGV4dCcsICdvbGQnIG9yICduZXcnIGxpbmVzIGluIHRoZSBkaWZmIiksCisJCQkgICAgICAgUEFSU0VfT1BUX05PTkVHLCBkaWZmX29wdF93c19lcnJvcl9oaWdobGlnaHQpLAorCQlPUFRfU0VUX0lOVCgneicsIE5VTEwsICZvcHRpb25zLT5saW5lX3Rlcm1pbmF0aW9uLAorCQkJICAgIE5fKCJkbyBub3QgbXVuZ2UgcGF0aG5hbWVzIGFuZCB1c2UgTlVMcyBhcyBvdXRwdXQgZmllbGQgdGVybWluYXRvcnMgaW4gLS1yYXcgb3IgLS1udW1zdGF0IiksCisJCQkgICAgMCksCisJCU9QVF9fQUJCUkVWKCZvcHRpb25zLT5hYmJyZXYpLAorCQlPUFRfU1RSSU5HX0YoMCwgInNyYy1wcmVmaXgiLCAmb3B0aW9ucy0+YV9wcmVmaXgsIE5fKCI8cHJlZml4PiIpLAorCQkJICAgICBOXygic2hvdyB0aGUgZ2l2ZW4gc291cmNlIHByZWZpeCBpbnN0ZWFkIG9mIFwiYS9cIiIpLAorCQkJICAgICBQQVJTRV9PUFRfTk9ORUcpLAorCQlPUFRfU1RSSU5HX0YoMCwgImRzdC1wcmVmaXgiLCAmb3B0aW9ucy0+Yl9wcmVmaXgsIE5fKCI8cHJlZml4PiIpLAorCQkJICAgICBOXygic2hvdyB0aGUgZ2l2ZW4gZGVzdGluYXRpb24gcHJlZml4IGluc3RlYWQgb2YgXCJiL1wiIiksCisJCQkgICAgIFBBUlNFX09QVF9OT05FRyksCisJCU9QVF9DQUxMQkFDS19GKDAsICJsaW5lLXByZWZpeCIsIG9wdGlvbnMsIE5fKCI8cHJlZml4PiIpLAorCQkJICAgICAgIE5fKCJwcmVwZW5kIGFuIGFkZGl0aW9uYWwgcHJlZml4IHRvIGV2ZXJ5IGxpbmUgb2Ygb3V0cHV0IiksCisJCQkgICAgICAgUEFSU0VfT1BUX05PTkVHLCBkaWZmX29wdF9saW5lX3ByZWZpeCksCisJCU9QVF9DQUxMQkFDS19GKDAsICJuby1wcmVmaXgiLCBvcHRpb25zLCBOVUxMLAorCQkJICAgICAgIE5fKCJkbyBub3Qgc2hvdyBhbnkgc291cmNlIG9yIGRlc3RpbmF0aW9uIHByZWZpeCIpLAorCQkJICAgICAgIFBBUlNFX09QVF9OT05FRyB8IFBBUlNFX09QVF9OT0FSRywgZGlmZl9vcHRfbm9fcHJlZml4KSwKKwkJT1BUX0lOVEVHRVJfRigwLCAiaW50ZXItaHVuay1jb250ZXh0IiwgJm9wdGlvbnMtPmludGVyaHVua2NvbnRleHQsCisJCQkgICAgICBOXygic2hvdyBjb250ZXh0IGJldHdlZW4gZGlmZiBodW5rcyB1cCB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiBsaW5lcyIpLAorCQkJICAgICAgUEFSU0VfT1BUX05PTkVHKSwKKwkJT1BUX0NBTExCQUNLX0YoMCwgIm91dHB1dC1pbmRpY2F0b3ItbmV3IiwKKwkJCSAgICAgICAmb3B0aW9ucy0+b3V0cHV0X2luZGljYXRvcnNbT1VUUFVUX0lORElDQVRPUl9ORVddLAorCQkJICAgICAgIE5fKCI8Y2hhcj4iKSwKKwkJCSAgICAgICBOXygic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGEgbmV3IGxpbmUgaW5zdGVhZCBvZiAnKyciKSwKKwkJCSAgICAgICBQQVJTRV9PUFRfTk9ORUcsIGRpZmZfb3B0X2NoYXIpLAorCQlPUFRfQ0FMTEJBQ0tfRigwLCAib3V0cHV0LWluZGljYXRvci1vbGQiLAorCQkJICAgICAgICZvcHRpb25zLT5vdXRwdXRfaW5kaWNhdG9yc1tPVVRQVVRfSU5ESUNBVE9SX09MRF0sCisJCQkgICAgICAgTl8oIjxjaGFyPiIpLAorCQkJICAgICAgIE5fKCJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYW4gb2xkIGxpbmUgaW5zdGVhZCBvZiAnLSciKSwKKwkJCSAgICAgICBQQVJTRV9PUFRfTk9ORUcsIGRpZmZfb3B0X2NoYXIpLAorCQlPUFRfQ0FMTEJBQ0tfRigwLCAib3V0cHV0LWluZGljYXRvci1jb250ZXh0IiwKKwkJCSAgICAgICAmb3B0aW9ucy0+b3V0cHV0X2luZGljYXRvcnNbT1VUUFVUX0lORElDQVRPUl9DT05URVhUXSwKKwkJCSAgICAgICBOXygiPGNoYXI+IiksCisJCQkgICAgICAgTl8oInNwZWNpZnkgdGhlIGNoYXJhY3RlciB0byBpbmRpY2F0ZSBhIGNvbnRleHQgaW5zdGVhZCBvZiAnICciKSwKKwkJCSAgICAgICBQQVJTRV9PUFRfTk9ORUcsIGRpZmZfb3B0X2NoYXIpLAorCisJCU9QVF9HUk9VUChOXygiRGlmZiByZW5hbWUgb3B0aW9ucyIpKSwKKwkJT1BUX0NBTExCQUNLX0YoJ0InLCAiYnJlYWstcmV3cml0ZXMiLCAmb3B0aW9ucy0+YnJlYWtfb3B0LCBOXygiPG4+Wy88bT5dIiksCisJCQkgICAgICAgTl8oImJyZWFrIGNvbXBsZXRlIHJld3JpdGUgY2hhbmdlcyBpbnRvIHBhaXJzIG9mIGRlbGV0ZSBhbmQgY3JlYXRlIiksCisJCQkgICAgICAgUEFSU0VfT1BUX05PTkVHIHwgUEFSU0VfT1BUX09QVEFSRywKKwkJCSAgICAgICBkaWZmX29wdF9icmVha19yZXdyaXRlcyksCisJCU9QVF9DQUxMQkFDS19GKCdNJywgImZpbmQtcmVuYW1lcyIsIG9wdGlvbnMsIE5fKCI8bj4iKSwKKwkJCSAgICAgICBOXygiZGV0ZWN0IHJlbmFtZXMiKSwKKwkJCSAgICAgICBQQVJTRV9PUFRfTk9ORUcgfCBQQVJTRV9PUFRfT1BUQVJHLAorCQkJICAgICAgIGRpZmZfb3B0X2ZpbmRfcmVuYW1lcyksCisJCU9QVF9TRVRfSU5UX0YoJ0QnLCAiaXJyZXZlcnNpYmxlLWRlbGV0ZSIsICZvcHRpb25zLT5pcnJldmVyc2libGVfZGVsZXRlLAorCQkJICAgICAgTl8oIm9taXQgdGhlIHByZWltYWdlIGZvciBkZWxldGVzIiksCisJCQkgICAgICAxLCBQQVJTRV9PUFRfTk9ORUcpLAorCQlPUFRfQ0FMTEJBQ0tfRignQycsICJmaW5kLWNvcGllcyIsIG9wdGlvbnMsIE5fKCI8bj4iKSwKKwkJCSAgICAgICBOXygiZGV0ZWN0IGNvcGllcyIpLAorCQkJICAgICAgIFBBUlNFX09QVF9OT05FRyB8IFBBUlNFX09QVF9PUFRBUkcsCisJCQkgICAgICAgZGlmZl9vcHRfZmluZF9jb3BpZXMpLAorCQlPUFRfQk9PTCgwLCAiZmluZC1jb3BpZXMtaGFyZGVyIiwgJm9wdGlvbnMtPmZsYWdzLmZpbmRfY29waWVzX2hhcmRlciwKKwkJCSBOXygidXNlIHVubW9kaWZpZWQgZmlsZXMgYXMgc291cmNlIHRvIGZpbmQgY29waWVzIikpLAorCQlPUFRfU0VUX0lOVF9GKDAsICJuby1yZW5hbWVzIiwgJm9wdGlvbnMtPmRldGVjdF9yZW5hbWUsCisJCQkgICAgICBOXygiZGlzYWJsZSByZW5hbWUgZGV0ZWN0aW9uIiksCisJCQkgICAgICAwLCBQQVJTRV9PUFRfTk9ORUcpLAorCQlPUFRfQk9PTCgwLCAicmVuYW1lLWVtcHR5IiwgJm9wdGlvbnMtPmZsYWdzLnJlbmFtZV9lbXB0eSwKKwkJCSBOXygidXNlIGVtcHR5IGJsb2JzIGFzIHJlbmFtZSBzb3VyY2UiKSksCisJCU9QVF9DQUxMQkFDS19GKDAsICJmb2xsb3ciLCBvcHRpb25zLCBOVUxMLAorCQkJICAgICAgIE5fKCJjb250aW51ZSBsaXN0aW5nIHRoZSBoaXN0b3J5IG9mIGEgZmlsZSBiZXlvbmQgcmVuYW1lcyIpLAorCQkJICAgICAgIFBBUlNFX09QVF9OT0FSRywgZGlmZl9vcHRfZm9sbG93KSwKKwkJT1BUX0lOVEVHRVIoJ2wnLCBOVUxMLCAmb3B0aW9ucy0+cmVuYW1lX2xpbWl0LAorCQkJICAgIE5fKCJwcmV2ZW50IHJlbmFtZS9jb3B5IGRldGVjdGlvbiBpZiB0aGUgbnVtYmVyIG9mIHJlbmFtZS9jb3B5IHRhcmdldHMgZXhjZWVkcyBnaXZlbiBsaW1pdCIpKSwKKworCQlPUFRfR1JPVVAoTl8oIkRpZmYgYWxnb3JpdGhtIG9wdGlvbnMiKSksCisJCU9QVF9CSVQoMCwgIm1pbmltYWwiLCAmb3B0aW9ucy0+eGRsX29wdHMsCisJCQlOXygicHJvZHVjZSB0aGUgc21hbGxlc3QgcG9zc2libGUgZGlmZiIpLAorCQkJWERGX05FRURfTUlOSU1BTCksCisJCU9QVF9CSVRfRigndycsICJpZ25vcmUtYWxsLXNwYWNlIiwgJm9wdGlvbnMtPnhkbF9vcHRzLAorCQkJICBOXygiaWdub3JlIHdoaXRlc3BhY2Ugd2hlbiBjb21wYXJpbmcgbGluZXMiKSwKKwkJCSAgWERGX0lHTk9SRV9XSElURVNQQUNFLCBQQVJTRV9PUFRfTk9ORUcpLAorCQlPUFRfQklUX0YoJ2InLCAiaWdub3JlLXNwYWNlLWNoYW5nZSIsICZvcHRpb25zLT54ZGxfb3B0cywKKwkJCSAgTl8oImlnbm9yZSBjaGFuZ2VzIGluIGFtb3VudCBvZiB3aGl0ZXNwYWNlIiksCisJCQkgIFhERl9JR05PUkVfV0hJVEVTUEFDRV9DSEFOR0UsIFBBUlNFX09QVF9OT05FRyksCisJCU9QVF9CSVRfRigwLCAiaWdub3JlLXNwYWNlLWF0LWVvbCIsICZvcHRpb25zLT54ZGxfb3B0cywKKwkJCSAgTl8oImlnbm9yZSBjaGFuZ2VzIGluIHdoaXRlc3BhY2UgYXQgRU9MIiksCisJCQkgIFhERl9JR05PUkVfV0hJVEVTUEFDRV9BVF9FT0wsIFBBUlNFX09QVF9OT05FRyksCisJCU9QVF9CSVRfRigwLCAiaWdub3JlLWNyLWF0LWVvbCIsICZvcHRpb25zLT54ZGxfb3B0cywKKwkJCSAgTl8oImlnbm9yZSBjYXJyaWVyLXJldHVybiBhdCB0aGUgZW5kIG9mIGxpbmUiKSwKKwkJCSAgWERGX0lHTk9SRV9DUl9BVF9FT0wsIFBBUlNFX09QVF9OT05FRyksCisJCU9QVF9CSVRfRigwLCAiaWdub3JlLWJsYW5rLWxpbmVzIiwgJm9wdGlvbnMtPnhkbF9vcHRzLAorCQkJICBOXygiaWdub3JlIGNoYW5nZXMgd2hvc2UgbGluZXMgYXJlIGFsbCBibGFuayIpLAorCQkJICBYREZfSUdOT1JFX0JMQU5LX0xJTkVTLCBQQVJTRV9PUFRfTk9ORUcpLAorCQlPUFRfQklUKDAsICJpbmRlbnQtaGV1cmlzdGljIiwgJm9wdGlvbnMtPnhkbF9vcHRzLAorCQkJTl8oImhldXJpc3RpYyB0byBzaGlmdCBkaWZmIGh1bmsgYm91bmRhcmllcyBmb3IgZWFzeSByZWFkaW5nIiksCisJCQlYREZfSU5ERU5UX0hFVVJJU1RJQyksCisJCU9QVF9DQUxMQkFDS19GKDAsICJwYXRpZW5jZSIsIG9wdGlvbnMsIE5VTEwsCisJCQkgICAgICAgTl8oImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwicGF0aWVuY2UgZGlmZlwiIGFsZ29yaXRobSIpLAorCQkJICAgICAgIFBBUlNFX09QVF9OT05FRyB8IFBBUlNFX09QVF9OT0FSRywKKwkJCSAgICAgICBkaWZmX29wdF9wYXRpZW5jZSksCisJCU9QVF9CSVRPUCgwLCAiaGlzdG9ncmFtIiwgJm9wdGlvbnMtPnhkbF9vcHRzLAorCQkJICBOXygiZ2VuZXJhdGUgZGlmZiB1c2luZyB0aGUgXCJoaXN0b2dyYW0gZGlmZlwiIGFsZ29yaXRobSIpLAorCQkJICBYREZfSElTVE9HUkFNX0RJRkYsIFhERl9ESUZGX0FMR09SSVRITV9NQVNLKSwKKwkJT1BUX0NBTExCQUNLX0YoMCwgImRpZmYtYWxnb3JpdGhtIiwgb3B0aW9ucywgTl8oIjxhbGdvcml0aG0+IiksCisJCQkgICAgICAgTl8oImNob29zZSBhIGRpZmYgYWxnb3JpdGhtIiksCisJCQkgICAgICAgUEFSU0VfT1BUX05PTkVHLCBkaWZmX29wdF9kaWZmX2FsZ29yaXRobSksCisJCU9QVF9DQUxMQkFDS19GKDAsICJhbmNob3JlZCIsIG9wdGlvbnMsIE5fKCI8dGV4dD4iKSwKKwkJCSAgICAgICBOXygiZ2VuZXJhdGUgZGlmZiB1c2luZyB0aGUgXCJhbmNob3JlZCBkaWZmXCIgYWxnb3JpdGhtIiksCisJCQkgICAgICAgUEFSU0VfT1BUX05PTkVHLCBkaWZmX29wdF9hbmNob3JlZCksCisJCU9QVF9DQUxMQkFDS19GKDAsICJ3b3JkLWRpZmYiLCBvcHRpb25zLCBOXygiPG1vZGU+IiksCisJCQkgICAgICAgTl8oInNob3cgd29yZCBkaWZmLCB1c2luZyA8bW9kZT4gdG8gZGVsaW1pdCBjaGFuZ2VkIHdvcmRzIiksCisJCQkgICAgICAgUEFSU0VfT1BUX05PTkVHIHwgUEFSU0VfT1BUX09QVEFSRywgZGlmZl9vcHRfd29yZF9kaWZmKSwKKwkJT1BUX0NBTExCQUNLX0YoMCwgIndvcmQtZGlmZi1yZWdleCIsIG9wdGlvbnMsIE5fKCI8cmVnZXg+IiksCisJCQkgICAgICAgTl8oInVzZSA8cmVnZXg+IHRvIGRlY2lkZSB3aGF0IGEgd29yZCBpcyIpLAorCQkJICAgICAgIFBBUlNFX09QVF9OT05FRywgZGlmZl9vcHRfd29yZF9kaWZmX3JlZ2V4KSwKKwkJT1BUX0NBTExCQUNLX0YoMCwgImNvbG9yLXdvcmRzIiwgb3B0aW9ucywgTl8oIjxyZWdleD4iKSwKKwkJCSAgICAgICBOXygiZXF1aXZhbGVudCB0byAtLXdvcmQtZGlmZj1jb2xvciAtLXdvcmQtZGlmZi1yZWdleD08cmVnZXg+IiksCisJCQkgICAgICAgUEFSU0VfT1BUX05PTkVHIHwgUEFSU0VfT1BUX09QVEFSRywgZGlmZl9vcHRfY29sb3Jfd29yZHMpLAorCQlPUFRfQ0FMTEJBQ0tfRigwLCAiY29sb3ItbW92ZWQiLCBvcHRpb25zLCBOXygiPG1vZGU+IiksCisJCQkgICAgICAgTl8oIm1vdmVkIGxpbmVzIG9mIGNvZGUgYXJlIGNvbG9yZWQgZGlmZmVyZW50bHkiKSwKKwkJCSAgICAgICBQQVJTRV9PUFRfT1BUQVJHLCBkaWZmX29wdF9jb2xvcl9tb3ZlZCksCisJCU9QVF9DQUxMQkFDS19GKDAsICJjb2xvci1tb3ZlZC13cyIsIG9wdGlvbnMsIE5fKCI8bW9kZT4iKSwKKwkJCSAgICAgICBOXygiaG93IHdoaXRlIHNwYWNlcyBhcmUgaWdub3JlZCBpbiAtLWNvbG9yLW1vdmVkIiksCisJCQkgICAgICAgMCwgZGlmZl9vcHRfY29sb3JfbW92ZWRfd3MpLAorCisJCU9QVF9HUk9VUChOXygiT3RoZXIgZGlmZiBvcHRpb25zIikpLAorCQlPUFRfQ0FMTEJBQ0tfRigwLCAicmVsYXRpdmUiLCBvcHRpb25zLCBOXygiPHByZWZpeD4iKSwKKwkJCSAgICAgICBOXygid2hlbiBydW4gZnJvbSBzdWJkaXIsIGV4Y2x1ZGUgY2hhbmdlcyBvdXRzaWRlIGFuZCBzaG93IHJlbGF0aXZlIHBhdGhzIiksCisJCQkgICAgICAgUEFSU0VfT1BUX05PTkVHIHwgUEFSU0VfT1BUX09QVEFSRywKKwkJCSAgICAgICBkaWZmX29wdF9yZWxhdGl2ZSksCisJCU9QVF9CT09MKCdhJywgInRleHQiLCAmb3B0aW9ucy0+ZmxhZ3MudGV4dCwKKwkJCSBOXygidHJlYXQgYWxsIGZpbGVzIGFzIHRleHQiKSksCisJCU9QVF9CT09MKCdSJywgTlVMTCwgJm9wdGlvbnMtPmZsYWdzLnJldmVyc2VfZGlmZiwKKwkJCSBOXygic3dhcCB0d28gaW5wdXRzLCByZXZlcnNlIHRoZSBkaWZmIikpLAorCQlPUFRfQk9PTCgwLCAiZXhpdC1jb2RlIiwgJm9wdGlvbnMtPmZsYWdzLmV4aXRfd2l0aF9zdGF0dXMsCisJCQkgTl8oImV4aXQgd2l0aCAxIGlmIHRoZXJlIHdlcmUgZGlmZmVyZW5jZXMsIDAgb3RoZXJ3aXNlIikpLAorCQlPUFRfQk9PTCgwLCAicXVpZXQiLCAmb3B0aW9ucy0+ZmxhZ3MucXVpY2ssCisJCQkgTl8oImRpc2FibGUgYWxsIG91dHB1dCBvZiB0aGUgcHJvZ3JhbSIpKSwKKwkJT1BUX0JPT0woMCwgImV4dC1kaWZmIiwgJm9wdGlvbnMtPmZsYWdzLmFsbG93X2V4dGVybmFsLAorCQkJIE5fKCJhbGxvdyBhbiBleHRlcm5hbCBkaWZmIGhlbHBlciB0byBiZSBleGVjdXRlZCIpKSwKKwkJT1BUX0NBTExCQUNLX0YoMCwgInRleHRjb252Iiwgb3B0aW9ucywgTlVMTCwKKwkJCSAgICAgICBOXygicnVuIGV4dGVybmFsIHRleHQgY29udmVyc2lvbiBmaWx0ZXJzIHdoZW4gY29tcGFyaW5nIGJpbmFyeSBmaWxlcyIpLAorCQkJICAgICAgIFBBUlNFX09QVF9OT0FSRywgZGlmZl9vcHRfdGV4dGNvbnYpLAorCQlPUFRfQ0FMTEJBQ0tfRigwLCAiaWdub3JlLXN1Ym1vZHVsZXMiLCBvcHRpb25zLCBOXygiPHdoZW4+IiksCisJCQkgICAgICAgTl8oImlnbm9yZSBjaGFuZ2VzIHRvIHN1Ym1vZHVsZXMgaW4gdGhlIGRpZmYgZ2VuZXJhdGlvbiIpLAorCQkJICAgICAgIFBBUlNFX09QVF9OT05FRyB8IFBBUlNFX09QVF9PUFRBUkcsCisJCQkgICAgICAgZGlmZl9vcHRfaWdub3JlX3N1Ym1vZHVsZXMpLAorCQlPUFRfQ0FMTEJBQ0tfRigwLCAic3VibW9kdWxlIiwgb3B0aW9ucywgTl8oIjxmb3JtYXQ+IiksCisJCQkgICAgICAgTl8oInNwZWNpZnkgaG93IGRpZmZlcmVuY2VzIGluIHN1Ym1vZHVsZXMgYXJlIHNob3duIiksCisJCQkgICAgICAgUEFSU0VfT1BUX05PTkVHIHwgUEFSU0VfT1BUX09QVEFSRywKKwkJCSAgICAgICBkaWZmX29wdF9zdWJtb2R1bGUpLAorCQlPUFRfU0VUX0lOVF9GKDAsICJpdGEtaW52aXNpYmxlLWluLWluZGV4IiwgJm9wdGlvbnMtPml0YV9pbnZpc2libGVfaW5faW5kZXgsCisJCQkgICAgICBOXygiaGlkZSAnZ2l0IGFkZCAtTicgZW50cmllcyBmcm9tIHRoZSBpbmRleCIpLAorCQkJICAgICAgMSwgUEFSU0VfT1BUX05PTkVHKSwKKwkJT1BUX1NFVF9JTlRfRigwLCAiaXRhLXZpc2libGUtaW4taW5kZXgiLCAmb3B0aW9ucy0+aXRhX2ludmlzaWJsZV9pbl9pbmRleCwKKwkJCSAgICAgIE5fKCJ0cmVhdCAnZ2l0IGFkZCAtTicgZW50cmllcyBhcyByZWFsIGluIHRoZSBpbmRleCIpLAorCQkJICAgICAgMCwgUEFSU0VfT1BUX05PTkVHKSwKKwkJT1BUX0NBTExCQUNLX0YoJ1MnLCBOVUxMLCBvcHRpb25zLCBOXygiPHN0cmluZz4iKSwKKwkJCSAgICAgICBOXygibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkIHN0cmluZyIpLAorCQkJICAgICAgIDAsIGRpZmZfb3B0X3BpY2theGVfc3RyaW5nKSwKKwkJT1BUX0NBTExCQUNLX0YoJ0cnLCBOVUxMLCBvcHRpb25zLCBOXygiPHJlZ2V4PiIpLAorCQkJICAgICAgIE5fKCJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgcmVnZXgiKSwKKwkJCSAgICAgICAwLCBkaWZmX29wdF9waWNrYXhlX3JlZ2V4KSwKKwkJT1BUX0JJVF9GKDAsICJwaWNrYXhlLWFsbCIsICZvcHRpb25zLT5waWNrYXhlX29wdHMsCisJCQkgIE5fKCJzaG93IGFsbCBjaGFuZ2VzIGluIHRoZSBjaGFuZ2VzZXQgd2l0aCAtUyBvciAtRyIpLAorCQkJICBESUZGX1BJQ0tBWEVfQUxMLCBQQVJTRV9PUFRfTk9ORUcpLAorCQlPUFRfQklUX0YoMCwgInBpY2theGUtcmVnZXgiLCAmb3B0aW9ucy0+cGlja2F4ZV9vcHRzLAorCQkJICBOXygidHJlYXQgPHN0cmluZz4gaW4gLVMgYXMgZXh0ZW5kZWQgUE9TSVggcmVndWxhciBleHByZXNzaW9uIiksCisJCQkgIERJRkZfUElDS0FYRV9SRUdFWCwgUEFSU0VfT1BUX05PTkVHKSwKKwkJT1BUX0ZJTEVOQU1FKCdPJywgTlVMTCwgJm9wdGlvbnMtPm9yZGVyZmlsZSwKKwkJCSAgICAgTl8oImNvbnRyb2wgdGhlIG9yZGVyIGluIHdoaWNoIGZpbGVzIGFwcGVhciBpbiB0aGUgb3V0cHV0IikpLAorCQlPUFRfQ0FMTEJBQ0tfRigwLCAiZmluZC1vYmplY3QiLCBvcHRpb25zLCBOXygiPG9iamVjdC1pZD4iKSwKKwkJCSAgICAgICBOXygibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkIG9iamVjdCIpLAorCQkJICAgICAgIFBBUlNFX09QVF9OT05FRywgZGlmZl9vcHRfZmluZF9vYmplY3QpLAorCQlPUFRfQ0FMTEJBQ0tfRigwLCAiZGlmZi1maWx0ZXIiLCBvcHRpb25zLCBOXygiWyhBfEN8RHxNfFJ8VHxVfFh8QikuLi5bKl1dIiksCisJCQkgICAgICAgTl8oInNlbGVjdCBmaWxlcyBieSBkaWZmIHR5cGUiKSwKKwkJCSAgICAgICBQQVJTRV9PUFRfTk9ORUcsIGRpZmZfb3B0X2RpZmZfZmlsdGVyKSwKKwkJeyBPUFRJT05fQ0FMTEJBQ0ssIDAsICJvdXRwdXQiLCBvcHRpb25zLCBOXygiPGZpbGU+IiksCisJCSAgTl8oIk91dHB1dCB0byBhIHNwZWNpZmljIGZpbGUiKSwKKwkJICBQQVJTRV9PUFRfTk9ORUcsIE5VTEwsIDAsIGRpZmZfb3B0X291dHB1dCB9LAorCisJCU9QVF9FTkQoKQorCX07CisKKwlBTExPQ19BUlJBWShvcHRpb25zLT5wYXJzZW9wdHMsIEFSUkFZX1NJWkUocGFyc2VvcHRzKSk7CisJbWVtY3B5KG9wdGlvbnMtPnBhcnNlb3B0cywgcGFyc2VvcHRzLCBzaXplb2YocGFyc2VvcHRzKSk7Cit9CisKK2ludCBkaWZmX29wdF9wYXJzZShzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zLAorCQkgICBjb25zdCBjaGFyICoqYXYsIGludCBhYywgY29uc3QgY2hhciAqcHJlZml4KQoreworCWlmICghcHJlZml4KQorCQlwcmVmaXggPSAiIjsKKworCWFjID0gcGFyc2Vfb3B0aW9ucyhhYywgYXYsIHByZWZpeCwgb3B0aW9ucy0+cGFyc2VvcHRzLCBOVUxMLAorCQkJICAgUEFSU0VfT1BUX0tFRVBfREFTSERBU0ggfAorCQkJICAgUEFSU0VfT1BUX0tFRVBfVU5LTk9XTiB8CisJCQkgICBQQVJTRV9PUFRfTk9fSU5URVJOQUxfSEVMUCB8CisJCQkgICBQQVJTRV9PUFRfT05FX1NIT1QgfAorCQkJICAgUEFSU0VfT1BUX1NUT1BfQVRfTk9OX09QVElPTik7CisKKwlyZXR1cm4gYWM7CiB9CiAKIGludCBwYXJzZV9yZW5hbWVfc2NvcmUoY29uc3QgY2hhciAqKmNwX3ApCkBAIC01MjA4LDQ3ICs1NTY4LDYgQEAKIAlyZXR1cm4gKGludCkoKG51bSA+PSBzY2FsZSkgPyBNQVhfU0NPUkUgOiAoTUFYX1NDT1JFICogbnVtIC8gc2NhbGUpKTsKIH0KIAotc3RhdGljIGludCBkaWZmX3Njb3Jlb3B0X3BhcnNlKGNvbnN0IGNoYXIgKm9wdCkKLXsKLQlpbnQgb3B0MSwgb3B0MiwgY21kOwotCi0JaWYgKCpvcHQrKyAhPSAnLScpCi0JCXJldHVybiAtMTsKLQljbWQgPSAqb3B0Kys7Ci0JaWYgKGNtZCA9PSAnLScpIHsKLQkJLyogY29udmVydCB0aGUgbG9uZy1mb3JtIGFyZ3VtZW50cyBpbnRvIHNob3J0LWZvcm0gdmVyc2lvbnMgKi8KLQkJaWYgKHNraXBfcHJlZml4KG9wdCwgImJyZWFrLXJld3JpdGVzIiwgJm9wdCkpIHsKLQkJCWlmICgqb3B0ID09IDAgfHwgKm9wdCsrID09ICc9JykKLQkJCQljbWQgPSAnQic7Ci0JCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgob3B0LCAiZmluZC1jb3BpZXMiLCAmb3B0KSkgewotCQkJaWYgKCpvcHQgPT0gMCB8fCAqb3B0KysgPT0gJz0nKQotCQkJCWNtZCA9ICdDJzsKLQkJfSBlbHNlIGlmIChza2lwX3ByZWZpeChvcHQsICJmaW5kLXJlbmFtZXMiLCAmb3B0KSkgewotCQkJaWYgKCpvcHQgPT0gMCB8fCAqb3B0KysgPT0gJz0nKQotCQkJCWNtZCA9ICdNJzsKLQkJfQotCX0KLQlpZiAoY21kICE9ICdNJyAmJiBjbWQgIT0gJ0MnICYmIGNtZCAhPSAnQicpCi0JCXJldHVybiAtMTsgLyogdGhhdCBpcyBub3QgYSAtTSwgLUMsIG9yIC1CIG9wdGlvbiAqLwotCi0Jb3B0MSA9IHBhcnNlX3JlbmFtZV9zY29yZSgmb3B0KTsKLQlpZiAoY21kICE9ICdCJykKLQkJb3B0MiA9IDA7Ci0JZWxzZSB7Ci0JCWlmICgqb3B0ID09IDApCi0JCQlvcHQyID0gMDsKLQkJZWxzZSBpZiAoKm9wdCAhPSAnLycpCi0JCQlyZXR1cm4gLTE7IC8qIHdlIGV4cGVjdCAtQjgwLzk5IG9yIC1CODAgKi8KLQkJZWxzZSB7Ci0JCQlvcHQrKzsKLQkJCW9wdDIgPSBwYXJzZV9yZW5hbWVfc2NvcmUoJm9wdCk7Ci0JCX0KLQl9Ci0JaWYgKCpvcHQgIT0gMCkKLQkJcmV0dXJuIC0xOwotCXJldHVybiBvcHQxIHwgKG9wdDIgPDwgMTYpOwotfQotCiBzdHJ1Y3QgZGlmZl9xdWV1ZV9zdHJ1Y3QgZGlmZl9xdWV1ZWRfZGlmZjsKIAogdm9pZCBkaWZmX3Eoc3RydWN0IGRpZmZfcXVldWVfc3RydWN0ICpxdWV1ZSwgc3RydWN0IGRpZmZfZmlsZXBhaXIgKmRwKQpAQCAtNTY0Niw3ICs1OTY1LDcgQEAKIH0KIAogc3RydWN0IHBhdGNoX2lkX3QgewotCWdpdF9TSEFfQ1RYICpjdHg7CisJZ2l0X2hhc2hfY3R4ICpjdHg7CiAJaW50IHBhdGNobGVuOwogfTsKIApAQCAtNTY2Myw2ICs1OTgyLDIyIEBACiAJcmV0dXJuIGRzdCAtIGxpbmU7CiB9CiAKK3ZvaWQgZmx1c2hfb25lX2h1bmsoc3RydWN0IG9iamVjdF9pZCAqcmVzdWx0LCBnaXRfaGFzaF9jdHggKmN0eCkKK3sKKwl1bnNpZ25lZCBjaGFyIGhhc2hbR0lUX01BWF9SQVdTWl07CisJdW5zaWduZWQgc2hvcnQgY2FycnkgPSAwOworCWludCBpOworCisJdGhlX2hhc2hfYWxnby0+ZmluYWxfZm4oaGFzaCwgY3R4KTsKKwl0aGVfaGFzaF9hbGdvLT5pbml0X2ZuKGN0eCk7CisJLyogMjAtYnl0ZSBzdW0sIHdpdGggY2FycnkgKi8KKwlmb3IgKGkgPSAwOyBpIDwgdGhlX2hhc2hfYWxnby0+cmF3c3o7ICsraSkgeworCQljYXJyeSArPSByZXN1bHQtPmhhc2hbaV0gKyBoYXNoW2ldOworCQlyZXN1bHQtPmhhc2hbaV0gPSBjYXJyeTsKKwkJY2FycnkgPj49IDg7CisJfQorfQorCiBzdGF0aWMgdm9pZCBwYXRjaF9pZF9jb25zdW1lKHZvaWQgKnByaXYsIGNoYXIgKmxpbmUsIHVuc2lnbmVkIGxvbmcgbGVuKQogewogCXN0cnVjdCBwYXRjaF9pZF90ICpkYXRhID0gcHJpdjsKQEAgLTU2NzAsMzQgKzYwMDUsMzUgQEAKIAogCW5ld19sZW4gPSByZW1vdmVfc3BhY2UobGluZSwgbGVuKTsKIAotCWdpdF9TSEExX1VwZGF0ZShkYXRhLT5jdHgsIGxpbmUsIG5ld19sZW4pOworCXRoZV9oYXNoX2FsZ28tPnVwZGF0ZV9mbihkYXRhLT5jdHgsIGxpbmUsIG5ld19sZW4pOwogCWRhdGEtPnBhdGNobGVuICs9IG5ld19sZW47CiB9CiAKLXN0YXRpYyB2b2lkIHBhdGNoX2lkX2FkZF9zdHJpbmcoZ2l0X1NIQV9DVFggKmN0eCwgY29uc3QgY2hhciAqc3RyKQorc3RhdGljIHZvaWQgcGF0Y2hfaWRfYWRkX3N0cmluZyhnaXRfaGFzaF9jdHggKmN0eCwgY29uc3QgY2hhciAqc3RyKQogewotCWdpdF9TSEExX1VwZGF0ZShjdHgsIHN0ciwgc3RybGVuKHN0cikpOworCXRoZV9oYXNoX2FsZ28tPnVwZGF0ZV9mbihjdHgsIHN0ciwgc3RybGVuKHN0cikpOwogfQogCi1zdGF0aWMgdm9pZCBwYXRjaF9pZF9hZGRfbW9kZShnaXRfU0hBX0NUWCAqY3R4LCB1bnNpZ25lZCBtb2RlKQorc3RhdGljIHZvaWQgcGF0Y2hfaWRfYWRkX21vZGUoZ2l0X2hhc2hfY3R4ICpjdHgsIHVuc2lnbmVkIG1vZGUpCiB7CiAJLyogbGFyZ2UgZW5vdWdoIGZvciAyXjMyIGluIG9jdGFsICovCiAJY2hhciBidWZbMTJdOwogCWludCBsZW4gPSB4c25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgIiUwNm8iLCBtb2RlKTsKLQlnaXRfU0hBMV9VcGRhdGUoY3R4LCBidWYsIGxlbik7CisJdGhlX2hhc2hfYWxnby0+dXBkYXRlX2ZuKGN0eCwgYnVmLCBsZW4pOwogfQogCi0vKiByZXR1cm5zIDAgdXBvbiBzdWNjZXNzLCBhbmQgd3JpdGVzIHJlc3VsdCBpbnRvIHNoYTEgKi8KLXN0YXRpYyBpbnQgZGlmZl9nZXRfcGF0Y2hfaWQoc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucywgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBpbnQgZGlmZl9oZWFkZXJfb25seSkKKy8qIHJldHVybnMgMCB1cG9uIHN1Y2Nlc3MsIGFuZCB3cml0ZXMgcmVzdWx0IGludG8gb2lkICovCitzdGF0aWMgaW50IGRpZmZfZ2V0X3BhdGNoX2lkKHN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgaW50IGRpZmZfaGVhZGVyX29ubHksIGludCBzdGFibGUpCiB7CiAJc3RydWN0IGRpZmZfcXVldWVfc3RydWN0ICpxID0gJmRpZmZfcXVldWVkX2RpZmY7CiAJaW50IGk7Ci0JZ2l0X1NIQV9DVFggY3R4OworCWdpdF9oYXNoX2N0eCBjdHg7CiAJc3RydWN0IHBhdGNoX2lkX3QgZGF0YTsKIAotCWdpdF9TSEExX0luaXQoJmN0eCk7CisJdGhlX2hhc2hfYWxnby0+aW5pdF9mbigmY3R4KTsKIAltZW1zZXQoJmRhdGEsIDAsIHNpemVvZihzdHJ1Y3QgcGF0Y2hfaWRfdCkpOwogCWRhdGEuY3R4ID0gJmN0eDsKKwlvaWRjbHIob2lkKTsKIAogCWZvciAoaSA9IDA7IGkgPCBxLT5ucjsgaSsrKSB7CiAJCXhwcGFyYW1fdCB4cHA7CkBAIC01NzI3LDI3ICs2MDYzLDI3IEBACiAJCWxlbjIgPSByZW1vdmVfc3BhY2UocC0+dHdvLT5wYXRoLCBzdHJsZW4ocC0+dHdvLT5wYXRoKSk7CiAJCXBhdGNoX2lkX2FkZF9zdHJpbmcoJmN0eCwgImRpZmYtLWdpdCIpOwogCQlwYXRjaF9pZF9hZGRfc3RyaW5nKCZjdHgsICJhLyIpOwotCQlnaXRfU0hBMV9VcGRhdGUoJmN0eCwgcC0+b25lLT5wYXRoLCBsZW4xKTsKKwkJdGhlX2hhc2hfYWxnby0+dXBkYXRlX2ZuKCZjdHgsIHAtPm9uZS0+cGF0aCwgbGVuMSk7CiAJCXBhdGNoX2lkX2FkZF9zdHJpbmcoJmN0eCwgImIvIik7Ci0JCWdpdF9TSEExX1VwZGF0ZSgmY3R4LCBwLT50d28tPnBhdGgsIGxlbjIpOworCQl0aGVfaGFzaF9hbGdvLT51cGRhdGVfZm4oJmN0eCwgcC0+dHdvLT5wYXRoLCBsZW4yKTsKIAogCQlpZiAocC0+b25lLT5tb2RlID09IDApIHsKIAkJCXBhdGNoX2lkX2FkZF9zdHJpbmcoJmN0eCwgIm5ld2ZpbGVtb2RlIik7CiAJCQlwYXRjaF9pZF9hZGRfbW9kZSgmY3R4LCBwLT50d28tPm1vZGUpOwogCQkJcGF0Y2hfaWRfYWRkX3N0cmluZygmY3R4LCAiLS0tL2Rldi9udWxsIik7CiAJCQlwYXRjaF9pZF9hZGRfc3RyaW5nKCZjdHgsICIrKytiLyIpOwotCQkJZ2l0X1NIQTFfVXBkYXRlKCZjdHgsIHAtPnR3by0+cGF0aCwgbGVuMik7CisJCQl0aGVfaGFzaF9hbGdvLT51cGRhdGVfZm4oJmN0eCwgcC0+dHdvLT5wYXRoLCBsZW4yKTsKIAkJfSBlbHNlIGlmIChwLT50d28tPm1vZGUgPT0gMCkgewogCQkJcGF0Y2hfaWRfYWRkX3N0cmluZygmY3R4LCAiZGVsZXRlZGZpbGVtb2RlIik7CiAJCQlwYXRjaF9pZF9hZGRfbW9kZSgmY3R4LCBwLT5vbmUtPm1vZGUpOwogCQkJcGF0Y2hfaWRfYWRkX3N0cmluZygmY3R4LCAiLS0tYS8iKTsKLQkJCWdpdF9TSEExX1VwZGF0ZSgmY3R4LCBwLT5vbmUtPnBhdGgsIGxlbjEpOworCQkJdGhlX2hhc2hfYWxnby0+dXBkYXRlX2ZuKCZjdHgsIHAtPm9uZS0+cGF0aCwgbGVuMSk7CiAJCQlwYXRjaF9pZF9hZGRfc3RyaW5nKCZjdHgsICIrKysvZGV2L251bGwiKTsKIAkJfSBlbHNlIHsKIAkJCXBhdGNoX2lkX2FkZF9zdHJpbmcoJmN0eCwgIi0tLWEvIik7Ci0JCQlnaXRfU0hBMV9VcGRhdGUoJmN0eCwgcC0+b25lLT5wYXRoLCBsZW4xKTsKKwkJCXRoZV9oYXNoX2FsZ28tPnVwZGF0ZV9mbigmY3R4LCBwLT5vbmUtPnBhdGgsIGxlbjEpOwogCQkJcGF0Y2hfaWRfYWRkX3N0cmluZygmY3R4LCAiKysrYi8iKTsKLQkJCWdpdF9TSEExX1VwZGF0ZSgmY3R4LCBwLT50d28tPnBhdGgsIGxlbjIpOworCQkJdGhlX2hhc2hfYWxnby0+dXBkYXRlX2ZuKCZjdHgsIHAtPnR3by0+cGF0aCwgbGVuMik7CiAJCX0KIAogCQlpZiAoZGlmZl9oZWFkZXJfb25seSkKQEAgLTU3NTksMTAgKzYwOTUsMTAgQEAKIAogCQlpZiAoZGlmZl9maWxlc3BlY19pc19iaW5hcnkob3B0aW9ucy0+cmVwbywgcC0+b25lKSB8fAogCQkgICAgZGlmZl9maWxlc3BlY19pc19iaW5hcnkob3B0aW9ucy0+cmVwbywgcC0+dHdvKSkgewotCQkJZ2l0X1NIQTFfVXBkYXRlKCZjdHgsIG9pZF90b19oZXgoJnAtPm9uZS0+b2lkKSwKLQkJCQkJR0lUX1NIQTFfSEVYU1opOwotCQkJZ2l0X1NIQTFfVXBkYXRlKCZjdHgsIG9pZF90b19oZXgoJnAtPnR3by0+b2lkKSwKLQkJCQkJR0lUX1NIQTFfSEVYU1opOworCQkJdGhlX2hhc2hfYWxnby0+dXBkYXRlX2ZuKCZjdHgsIG9pZF90b19oZXgoJnAtPm9uZS0+b2lkKSwKKwkJCQkJdGhlX2hhc2hfYWxnby0+aGV4c3opOworCQkJdGhlX2hhc2hfYWxnby0+dXBkYXRlX2ZuKCZjdHgsIG9pZF90b19oZXgoJnAtPnR3by0+b2lkKSwKKwkJCQkJdGhlX2hhc2hfYWxnby0+aGV4c3opOwogCQkJY29udGludWU7CiAJCX0KIApAQCAtNTc3MywxNyArNjEwOSwyMiBAQAogCQkJCSAgcGF0Y2hfaWRfY29uc3VtZSwgJmRhdGEsICZ4cHAsICZ4ZWNmZykpCiAJCQlyZXR1cm4gZXJyb3IoInVuYWJsZSB0byBnZW5lcmF0ZSBwYXRjaC1pZCBkaWZmIGZvciAlcyIsCiAJCQkJICAgICBwLT5vbmUtPnBhdGgpOworCisJCWlmIChzdGFibGUpCisJCQlmbHVzaF9vbmVfaHVuayhvaWQsICZjdHgpOwogCX0KIAotCWdpdF9TSEExX0ZpbmFsKG9pZC0+aGFzaCwgJmN0eCk7CisJaWYgKCFzdGFibGUpCisJCXRoZV9oYXNoX2FsZ28tPmZpbmFsX2ZuKG9pZC0+aGFzaCwgJmN0eCk7CisKIAlyZXR1cm4gMDsKIH0KIAotaW50IGRpZmZfZmx1c2hfcGF0Y2hfaWQoc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucywgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBpbnQgZGlmZl9oZWFkZXJfb25seSkKK2ludCBkaWZmX2ZsdXNoX3BhdGNoX2lkKHN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgaW50IGRpZmZfaGVhZGVyX29ubHksIGludCBzdGFibGUpCiB7CiAJc3RydWN0IGRpZmZfcXVldWVfc3RydWN0ICpxID0gJmRpZmZfcXVldWVkX2RpZmY7CiAJaW50IGk7Ci0JaW50IHJlc3VsdCA9IGRpZmZfZ2V0X3BhdGNoX2lkKG9wdGlvbnMsIG9pZCwgZGlmZl9oZWFkZXJfb25seSk7CisJaW50IHJlc3VsdCA9IGRpZmZfZ2V0X3BhdGNoX2lkKG9wdGlvbnMsIG9pZCwgZGlmZl9oZWFkZXJfb25seSwgc3RhYmxlKTsKIAogCWZvciAoaSA9IDA7IGkgPCBxLT5ucjsgaSsrKQogCQlkaWZmX2ZyZWVfZmlsZXBhaXIocS0+cXVldWVbaV0pOwpAQCAtNTg3Niw4ICs2MjE3LDEwIEBACiAJCQlpZiAoby0+Y29sb3JfbW92ZWQgPT0gQ09MT1JfTU9WRURfWkVCUkFfRElNKQogCQkJCWRpbV9tb3ZlZF9saW5lcyhvKTsKIAotCQkJaGFzaG1hcF9mcmVlKCZhZGRfbGluZXMsIDEpOwotCQkJaGFzaG1hcF9mcmVlKCZkZWxfbGluZXMsIDEpOworCQkJaGFzaG1hcF9mcmVlX2VudHJpZXMoJmFkZF9saW5lcywgc3RydWN0IG1vdmVkX2VudHJ5LAorCQkJCQkJZW50KTsKKwkJCWhhc2htYXBfZnJlZV9lbnRyaWVzKCZkZWxfbGluZXMsIHN0cnVjdCBtb3ZlZF9lbnRyeSwKKwkJCQkJCWVudCk7CiAJCX0KIAogCQlmb3IgKGkgPSAwOyBpIDwgZXNtLm5yOyBpKyspCkBAIC01ODg1LDggKzYyMjgsMTAgQEAKIAogCQlmb3IgKGkgPSAwOyBpIDwgZXNtLm5yOyBpKyspCiAJCQlmcmVlKCh2b2lkICopZXNtLmJ1ZltpXS5saW5lKTsKKwkJZXNtLm5yID0gMDsKKworCQlvLT5lbWl0dGVkX3N5bWJvbHMgPSBOVUxMOwogCX0KLQllc20ubnIgPSAwOwogfQogCiB2b2lkIGRpZmZfZmx1c2goc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucykKQEAgLTU5MjIsMTIgKzYyNjcsNyBAQAogCSAgICBkaXJzdGF0X2J5X2xpbmUpIHsKIAkJc3RydWN0IGRpZmZzdGF0X3QgZGlmZnN0YXQ7CiAKLQkJbWVtc2V0KCZkaWZmc3RhdCwgMCwgc2l6ZW9mKHN0cnVjdCBkaWZmc3RhdF90KSk7Ci0JCWZvciAoaSA9IDA7IGkgPCBxLT5ucjsgaSsrKSB7Ci0JCQlzdHJ1Y3QgZGlmZl9maWxlcGFpciAqcCA9IHEtPnF1ZXVlW2ldOwotCQkJaWYgKGNoZWNrX3BhaXJfc3RhdHVzKHApKQotCQkJCWRpZmZfZmx1c2hfc3RhdChwLCBvcHRpb25zLCAmZGlmZnN0YXQpOwotCQl9CisJCWNvbXB1dGVfZGlmZnN0YXQob3B0aW9ucywgJmRpZmZzdGF0LCBxKTsKIAkJaWYgKG91dHB1dF9mb3JtYXQgJiBESUZGX0ZPUk1BVF9OVU1TVEFUKQogCQkJc2hvd19udW1zdGF0KCZkaWZmc3RhdCwgb3B0aW9ucyk7CiAJCWlmIChvdXRwdXRfZm9ybWF0ICYgRElGRl9GT1JNQVRfRElGRlNUQVQpCkBAIC02MTQ1LDE0ICs2NDg1LDQ3IEBACiAJcmV0dXJuIHN0cmNtcChuYW1lX2EsIG5hbWVfYik7CiB9CiAKLXZvaWQgZGlmZmNvcmVfZml4X2RpZmZfaW5kZXgoc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucykKK3ZvaWQgZGlmZmNvcmVfZml4X2RpZmZfaW5kZXgodm9pZCkKIHsKIAlzdHJ1Y3QgZGlmZl9xdWV1ZV9zdHJ1Y3QgKnEgPSAmZGlmZl9xdWV1ZWRfZGlmZjsKIAlRU09SVChxLT5xdWV1ZSwgcS0+bnIsIGRpZmZuYW1lY21wKTsKIH0KIAorc3RhdGljIHZvaWQgYWRkX2lmX21pc3Npbmcoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgICBzdHJ1Y3Qgb2lkX2FycmF5ICp0b19mZXRjaCwKKwkJCSAgIGNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpmaWxlc3BlYykKK3sKKwlpZiAoZmlsZXNwZWMgJiYgZmlsZXNwZWMtPm9pZF92YWxpZCAmJgorCSAgICAhU19JU0dJVExJTksoZmlsZXNwZWMtPm1vZGUpICYmCisJICAgIG9pZF9vYmplY3RfaW5mb19leHRlbmRlZChyLCAmZmlsZXNwZWMtPm9pZCwgTlVMTCwKKwkJCQkgICAgIE9CSkVDVF9JTkZPX0ZPUl9QUkVGRVRDSCkpCisJCW9pZF9hcnJheV9hcHBlbmQodG9fZmV0Y2gsICZmaWxlc3BlYy0+b2lkKTsKK30KKwogdm9pZCBkaWZmY29yZV9zdGQoc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucykKIHsKKwlpZiAob3B0aW9ucy0+cmVwbyA9PSB0aGVfcmVwb3NpdG9yeSAmJiBoYXNfcHJvbWlzb3JfcmVtb3RlKCkpIHsKKwkJLyoKKwkJICogUHJlZmV0Y2ggdGhlIGRpZmYgcGFpcnMgdGhhdCBhcmUgYWJvdXQgdG8gYmUgZmx1c2hlZC4KKwkJICovCisJCWludCBpOworCQlzdHJ1Y3QgZGlmZl9xdWV1ZV9zdHJ1Y3QgKnEgPSAmZGlmZl9xdWV1ZWRfZGlmZjsKKwkJc3RydWN0IG9pZF9hcnJheSB0b19mZXRjaCA9IE9JRF9BUlJBWV9JTklUOworCisJCWZvciAoaSA9IDA7IGkgPCBxLT5ucjsgaSsrKSB7CisJCQlzdHJ1Y3QgZGlmZl9maWxlcGFpciAqcCA9IHEtPnF1ZXVlW2ldOworCQkJYWRkX2lmX21pc3Npbmcob3B0aW9ucy0+cmVwbywgJnRvX2ZldGNoLCBwLT5vbmUpOworCQkJYWRkX2lmX21pc3Npbmcob3B0aW9ucy0+cmVwbywgJnRvX2ZldGNoLCBwLT50d28pOworCQl9CisJCWlmICh0b19mZXRjaC5ucikKKwkJCS8qCisJCQkgKiBORUVEU1dPUks6IENvbnNpZGVyIGRlZHVwbGljYXRpbmcgdGhlIE9JRHMgc2VudC4KKwkJCSAqLworCQkJcHJvbWlzb3JfcmVtb3RlX2dldF9kaXJlY3Qob3B0aW9ucy0+cmVwbywKKwkJCQkJCSAgIHRvX2ZldGNoLm9pZCwgdG9fZmV0Y2gubnIpOworCQlvaWRfYXJyYXlfY2xlYXIoJnRvX2ZldGNoKTsKKwl9CisKIAkvKiBOT1RFIHBsZWFzZSBrZWVwIHRoZSBmb2xsb3dpbmcgaW4gc3luYyB3aXRoIGRpZmZfdHJlZV9jb21iaW5lZCgpICovCiAJaWYgKG9wdGlvbnMtPnNraXBfc3RhdF91bm1hdGNoKQogCQlkaWZmY29yZV9za2lwX3N0YXRfdW5tYXRjaChvcHRpb25zKTsKQEAgLTYyMjcsNiArNjYwMCwyMCBAQAogCXJldHVybiBpZ25vcmVkOwogfQogCit2b2lkIGNvbXB1dGVfZGlmZnN0YXQoc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucywKKwkJICAgICAgc3RydWN0IGRpZmZzdGF0X3QgKmRpZmZzdGF0LAorCQkgICAgICBzdHJ1Y3QgZGlmZl9xdWV1ZV9zdHJ1Y3QgKnEpCit7CisJaW50IGk7CisKKwltZW1zZXQoZGlmZnN0YXQsIDAsIHNpemVvZihzdHJ1Y3QgZGlmZnN0YXRfdCkpOworCWZvciAoaSA9IDA7IGkgPCBxLT5ucjsgaSsrKSB7CisJCXN0cnVjdCBkaWZmX2ZpbGVwYWlyICpwID0gcS0+cXVldWVbaV07CisJCWlmIChjaGVja19wYWlyX3N0YXR1cyhwKSkKKwkJCWRpZmZfZmx1c2hfc3RhdChwLCBvcHRpb25zLCBkaWZmc3RhdCk7CisJfQorfQorCiB2b2lkIGRpZmZfYWRkcmVtb3ZlKHN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMsCiAJCSAgICBpbnQgYWRkcmVtb3ZlLCB1bnNpZ25lZCBtb2RlLAogCQkgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLApAQCAtNjQzNCw3ICs2ODIxLDcgQEAKIAogCWRmID0gYWxsb2NfZmlsZXNwZWMocGF0aCk7CiAJZmlsbF9maWxlc3BlYyhkZiwgb2lkLCBvaWRfdmFsaWQsIG1vZGUpOwotCXRleHRjb252ID0gZ2V0X3RleHRjb252KHItPmluZGV4LCBkZik7CisJdGV4dGNvbnYgPSBnZXRfdGV4dGNvbnYociwgZGYpOwogCWlmICghdGV4dGNvbnYpIHsKIAkJZnJlZV9maWxlc3BlYyhkZik7CiAJCXJldHVybiAwOwpkaWZmIC0tZ2l0IGEvZGlmZi5oIGIvZGlmZi5oCmluZGV4IGNlNWU4YTguLjZmZWJlN2UgMTAwNjQ0Ci0tLSBhL2RpZmYuaAorKysgYi9kaWZmLmgKQEAgLTksMTYgKzksNjAgQEAKICNpbmNsdWRlICJvYmplY3QuaCIKICNpbmNsdWRlICJvaWRzZXQuaCIKIAotc3RydWN0IHJldl9pbmZvOworLyoqCisgKiBUaGUgZGlmZiBBUEkgaXMgZm9yIHByb2dyYW1zIHRoYXQgY29tcGFyZSB0d28gc2V0cyBvZiBmaWxlcyAoZS5nLiB0d28gdHJlZXMsCisgKiBvbmUgdHJlZSBhbmQgdGhlIGluZGV4KSBhbmQgcHJlc2VudCB0aGUgZm91bmQgZGlmZmVyZW5jZSBpbiB2YXJpb3VzIHdheXMuCisgKiBUaGUgY2FsbGluZyBwcm9ncmFtIGlzIHJlc3BvbnNpYmxlIGZvciBmZWVkaW5nIHRoZSBBUEkgcGFpcnMgb2YgZmlsZXMsIG9uZQorICogZnJvbSB0aGUgIm9sZCIgc2V0IGFuZCB0aGUgY29ycmVzcG9uZGluZyBvbmUgZnJvbSAibmV3IiBzZXQsIHRoYXQgYXJlCisgKiBkaWZmZXJlbnQuCisgKiBUaGUgbGlicmFyeSBjYWxsZWQgdGhyb3VnaCB0aGlzIEFQSSBpcyBjYWxsZWQgZGlmZmNvcmUsIGFuZCBpcyByZXNwb25zaWJsZQorICogZm9yIHR3byB0aGluZ3MuCisgKgorICogLSBmaW5kaW5nIHRvdGFsIHJld3JpdGVzIChgLUJgKSwgcmVuYW1lcyAoYC1NYCkgYW5kIGNvcGllcyAoYC1DYCksIGFuZAorICogY2hhbmdlcyB0aGF0IHRvdWNoIGEgc3RyaW5nIChgLVNgKSwgYXMgc3BlY2lmaWVkIGJ5IHRoZSBjYWxsZXIuCisgKgorICogLSBvdXRwdXR0aW5nIHRoZSBkaWZmZXJlbmNlcyBpbiB2YXJpb3VzIGZvcm1hdHMsIGFzIHNwZWNpZmllZCBieSB0aGUgY2FsbGVyLgorICoKKyAqIENhbGxpbmcgc2VxdWVuY2UKKyAqIC0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiAtIFByZXBhcmUgYHN0cnVjdCBkaWZmX29wdGlvbnNgIHRvIHJlY29yZCB0aGUgc2V0IG9mIGRpZmYgb3B0aW9ucywgYW5kIHRoZW4KKyAqIGNhbGwgYHJlcG9fZGlmZl9zZXR1cCgpYCB0byBpbml0aWFsaXplIHRoaXMgc3RydWN0dXJlLiAgVGhpcyBzZXRzIHVwIHRoZQorICogdmFuaWxsYSBkZWZhdWx0LgorICoKKyAqIC0gRmlsbCBpbiB0aGUgb3B0aW9ucyBzdHJ1Y3R1cmUgdG8gc3BlY2lmeSBkZXNpcmVkIG91dHB1dCBmb3JtYXQsIHJlbmFtZQorICogZGV0ZWN0aW9uLCBldGMuICBgZGlmZl9vcHRfcGFyc2UoKWAgY2FuIGJlIHVzZWQgdG8gcGFyc2Ugb3B0aW9ucyBnaXZlbgorICogZnJvbSB0aGUgY29tbWFuZCBsaW5lIGluIGEgd2F5IGNvbnNpc3RlbnQgd2l0aCBleGlzdGluZyBnaXQtZGlmZiBmYW1pbHkKKyAqIG9mIHByb2dyYW1zLgorICoKKyAqIC0gQ2FsbCBgZGlmZl9zZXR1cF9kb25lKClgOyB0aGlzIGluc3BlY3RzIHRoZSBvcHRpb25zIHNldCB1cCBzbyBmYXIgZm9yCisgKiBpbnRlcm5hbCBjb25zaXN0ZW5jeSBhbmQgbWFrZSBuZWNlc3NhcnkgdHdlYWtpbmcgdG8gaXQgKGUuZy4gaWYgdGV4dHVhbAorICogcGF0Y2ggb3V0cHV0IHdhcyBhc2tlZCwgcmVjdXJzaXZlIGJlaGF2aW91ciBpcyB0dXJuZWQgb24pOyB0aGUgY2FsbGJhY2sKKyAqIHNldF9kZWZhdWx0IGluIGRpZmZfb3B0aW9ucyBjYW4gYmUgdXNlZCB0byB0d2VhayB0aGlzIG1vcmUuCisgKgorICogLSBBcyB5b3UgZmluZCBkaWZmZXJlbnQgcGFpcnMgb2YgZmlsZXMsIGNhbGwgYGRpZmZfY2hhbmdlKClgIHRvIGZlZWQKKyAqIG1vZGlmaWVkIGZpbGVzLCBgZGlmZl9hZGRyZW1vdmUoKWAgdG8gZmVlZCBjcmVhdGVkIG9yIGRlbGV0ZWQgZmlsZXMsIG9yCisgKiBgZGlmZl91bm1lcmdlKClgIHRvIGZlZWQgYSBmaWxlIHdob3NlIHN0YXRlIGlzICd1bm1lcmdlZCcgdG8gdGhlIEFQSS4KKyAqIFRoZXNlIGFyZSB0aGluIHdyYXBwZXJzIHRvIGEgbG93ZXItbGV2ZWwgYGRpZmZfcXVldWUoKWAgZnVuY3Rpb24gdGhhdCBpcworICogZmxleGlibGUgZW5vdWdoIHRvIHJlY29yZCBhbnkgb2YgdGhlc2Uga2luZHMgb2YgY2hhbmdlcy4KKyAqCisgKiAtIE9uY2UgeW91IGZpbmlzaCBmZWVkaW5nIHRoZSBwYWlycyBvZiBmaWxlcywgY2FsbCBgZGlmZmNvcmVfc3RkKClgLgorICogVGhpcyB3aWxsIHRlbGwgdGhlIGRpZmZjb3JlIGxpYnJhcnkgdG8gZ28gYWhlYWQgYW5kIGRvIGl0cyB3b3JrLgorICoKKyAqIC0gQ2FsbGluZyBgZGlmZl9mbHVzaCgpYCB3aWxsIHByb2R1Y2UgdGhlIG91dHB1dC4KKyAqLworCitzdHJ1Y3QgY29tYmluZV9kaWZmX3BhdGg7CitzdHJ1Y3QgY29tbWl0Oworc3RydWN0IGRpZmZfZmlsZXNwZWM7CiBzdHJ1Y3QgZGlmZl9vcHRpb25zOwogc3RydWN0IGRpZmZfcXVldWVfc3RydWN0Owotc3RydWN0IHN0cmJ1ZjsKLXN0cnVjdCBkaWZmX2ZpbGVzcGVjOwotc3RydWN0IHVzZXJkaWZmX2RyaXZlcjsKIHN0cnVjdCBvaWRfYXJyYXk7Ci1zdHJ1Y3QgY29tbWl0Owotc3RydWN0IGNvbWJpbmVfZGlmZl9wYXRoOworc3RydWN0IG9wdGlvbjsKIHN0cnVjdCByZXBvc2l0b3J5Oworc3RydWN0IHJldl9pbmZvOworc3RydWN0IHN0cmJ1ZjsKK3N0cnVjdCB1c2VyZGlmZl9kcml2ZXI7CiAKIHR5cGVkZWYgaW50ICgqcGF0aGNoYW5nZV9mbl90KShzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zLAogCQkgc3RydWN0IGNvbWJpbmVfZGlmZl9wYXRoICpwYXRoKTsKQEAgLTY0LDM5ICsxMDgsODUgQEAKIAogI2RlZmluZSBESUZGX0ZMQUdTX0lOSVQgeyAwIH0KIHN0cnVjdCBkaWZmX2ZsYWdzIHsKLQl1bnNpZ25lZCByZWN1cnNpdmU6MTsKLQl1bnNpZ25lZCB0cmVlX2luX3JlY3Vyc2l2ZToxOwotCXVuc2lnbmVkIGJpbmFyeToxOwotCXVuc2lnbmVkIHRleHQ6MTsKLQl1bnNpZ25lZCBmdWxsX2luZGV4OjE7Ci0JdW5zaWduZWQgc2lsZW50X29uX3JlbW92ZToxOwotCXVuc2lnbmVkIGZpbmRfY29waWVzX2hhcmRlcjoxOwotCXVuc2lnbmVkIGZvbGxvd19yZW5hbWVzOjE7Ci0JdW5zaWduZWQgcmVuYW1lX2VtcHR5OjE7Ci0JdW5zaWduZWQgaGFzX2NoYW5nZXM6MTsKLQl1bnNpZ25lZCBxdWljazoxOwotCXVuc2lnbmVkIG5vX2luZGV4OjE7Ci0JdW5zaWduZWQgYWxsb3dfZXh0ZXJuYWw6MTsKLQl1bnNpZ25lZCBleGl0X3dpdGhfc3RhdHVzOjE7Ci0JdW5zaWduZWQgcmV2ZXJzZV9kaWZmOjE7Ci0JdW5zaWduZWQgY2hlY2tfZmFpbGVkOjE7Ci0JdW5zaWduZWQgcmVsYXRpdmVfbmFtZToxOwotCXVuc2lnbmVkIGlnbm9yZV9zdWJtb2R1bGVzOjE7Ci0JdW5zaWduZWQgZGlyc3RhdF9jdW11bGF0aXZlOjE7Ci0JdW5zaWduZWQgZGlyc3RhdF9ieV9maWxlOjE7Ci0JdW5zaWduZWQgYWxsb3dfdGV4dGNvbnY6MTsKLQl1bnNpZ25lZCB0ZXh0Y29udl9zZXRfdmlhX2NtZGxpbmU6MTsKLQl1bnNpZ25lZCBkaWZmX2Zyb21fY29udGVudHM6MTsKLQl1bnNpZ25lZCBkaXJ0eV9zdWJtb2R1bGVzOjE7Ci0JdW5zaWduZWQgaWdub3JlX3VudHJhY2tlZF9pbl9zdWJtb2R1bGVzOjE7Ci0JdW5zaWduZWQgaWdub3JlX2RpcnR5X3N1Ym1vZHVsZXM6MTsKLQl1bnNpZ25lZCBvdmVycmlkZV9zdWJtb2R1bGVfY29uZmlnOjE7Ci0JdW5zaWduZWQgZGlyc3RhdF9ieV9saW5lOjE7Ci0JdW5zaWduZWQgZnVuY2NvbnRleHQ6MTsKLQl1bnNpZ25lZCBkZWZhdWx0X2ZvbGxvd19yZW5hbWVzOjE7Ci0JdW5zaWduZWQgc3RhdF93aXRoX3N1bW1hcnk6MTsKLQl1bnNpZ25lZCBzdXBwcmVzc19kaWZmX2hlYWRlcnM6MTsKLQl1bnNpZ25lZCBkdWFsX2NvbG9yX2RpZmZlZF9kaWZmczoxOworCisJLyoqCisJICogVGVsbHMgaWYgdHJlZSB0cmF2ZXJzYWwgZG9uZSBieSB0cmVlLWRpZmYgc2hvdWxkIHJlY3Vyc2l2ZWx5IGRlc2NlbmQKKwkgKiBpbnRvIGEgdHJlZSBvYmplY3QgcGFpciB0aGF0IGFyZSBkaWZmZXJlbnQgaW4gcHJlaW1hZ2UgYW5kIHBvc3RpbWFnZSBzZXQuCisJICovCisJdW5zaWduZWQgcmVjdXJzaXZlOworCXVuc2lnbmVkIHRyZWVfaW5fcmVjdXJzaXZlOworCisJLyogQWZmZWN0cyB0aGUgd2F5IGhvdyBhIGZpbGUgdGhhdCBpcyBzZWVtaW5nbHkgYmluYXJ5IGlzIHRyZWF0ZWQuICovCisJdW5zaWduZWQgYmluYXJ5OworCXVuc2lnbmVkIHRleHQ7CisKKwkvKioKKwkgKiBUZWxscyB0aGUgcGF0Y2ggb3V0cHV0IGZvcm1hdCBub3QgdG8gdXNlIGFiYnJldmlhdGVkIG9iamVjdCBuYW1lcyBvbiB0aGUKKwkgKiAiaW5kZXgiIGxpbmVzLgorCSAqLworCXVuc2lnbmVkIGZ1bGxfaW5kZXg7CisKKwkvKiBBZmZlY3RzIGlmIGRpZmYtZmlsZXMgc2hvd3MgcmVtb3ZlZCBmaWxlcy4gKi8KKwl1bnNpZ25lZCBzaWxlbnRfb25fcmVtb3ZlOworCisJLyoqCisJICogVGVsbHMgdGhlIGRpZmZjb3JlIGxpYnJhcnkgdGhhdCB0aGUgY2FsbGVyIGlzIGZlZWRpbmcgdW5jaGFuZ2VkCisJICogZmlsZXBhaXJzIHRvIGFsbG93IGNvcGllcyBmcm9tIHVubW9kaWZpZWQgZmlsZXMgYmUgZGV0ZWN0ZWQuCisJICovCisJdW5zaWduZWQgZmluZF9jb3BpZXNfaGFyZGVyOworCisJdW5zaWduZWQgZm9sbG93X3JlbmFtZXM7CisJdW5zaWduZWQgcmVuYW1lX2VtcHR5OworCisJLyogSW50ZXJuYWw7IHVzZWQgZm9yIG9wdGltaXphdGlvbiB0byBzZWUgaWYgdGhlcmUgaXMgYW55IGNoYW5nZS4gKi8KKwl1bnNpZ25lZCBoYXNfY2hhbmdlczsKKworCXVuc2lnbmVkIHF1aWNrOworCisJLyoqCisJICogVGVsbHMgZGlmZi1maWxlcyB0aGF0IHRoZSBpbnB1dCBpcyBub3QgdHJhY2tlZCBmaWxlcyBidXQgZmlsZXMgaW4gcmFuZG9tCisJICogbG9jYXRpb25zIG9uIHRoZSBmaWxlc3lzdGVtLgorCSAqLworCXVuc2lnbmVkIG5vX2luZGV4OworCisJLyoqCisJICogVGVsbHMgb3V0cHV0IHJvdXRpbmUgdGhhdCBpdCBpcyBPayB0byBjYWxsIHVzZXIgc3BlY2lmaWVkIHBhdGNoIG91dHB1dAorCSAqIHJvdXRpbmUuICBQbHVtYmluZyBkaXNhYmxlcyB0aGlzIHRvIGVuc3VyZSBzdGFibGUgb3V0cHV0LgorCSAqLworCXVuc2lnbmVkIGFsbG93X2V4dGVybmFsOworCisJLyoqCisJICogRm9yIGNvbW11bmljYXRpb24gYmV0d2VlbiB0aGUgY2FsbGluZyBwcm9ncmFtIGFuZCB0aGUgb3B0aW9ucyBwYXJzZXI7CisJICogdGVsbCB0aGUgY2FsbGluZyBwcm9ncmFtIHRvIHNpZ25hbCB0aGUgcHJlc2VuY2Ugb2YgZGlmZmVyZW5jZSB1c2luZworCSAqIHByb2dyYW0gZXhpdCBjb2RlLgorCSAqLworCXVuc2lnbmVkIGV4aXRfd2l0aF9zdGF0dXM7CisKKwkvKioKKwkgKiBUZWxscyB0aGUgbGlicmFyeSB0aGF0IHRoZSBjYWxsaW5nIHByb2dyYW0gaXMgZmVlZGluZyB0aGUgZmlsZXBhaXJzCisJICogcmV2ZXJzZWQ7IGBvbmVgIGlzIHR3bywgYW5kIGB0d29gIGlzIG9uZS4KKwkgKi8KKwl1bnNpZ25lZCByZXZlcnNlX2RpZmY7CisKKwl1bnNpZ25lZCBjaGVja19mYWlsZWQ7CisJdW5zaWduZWQgcmVsYXRpdmVfbmFtZTsKKwl1bnNpZ25lZCBpZ25vcmVfc3VibW9kdWxlczsKKwl1bnNpZ25lZCBkaXJzdGF0X2N1bXVsYXRpdmU7CisJdW5zaWduZWQgZGlyc3RhdF9ieV9maWxlOworCXVuc2lnbmVkIGFsbG93X3RleHRjb252OworCXVuc2lnbmVkIHRleHRjb252X3NldF92aWFfY21kbGluZTsKKwl1bnNpZ25lZCBkaWZmX2Zyb21fY29udGVudHM7CisJdW5zaWduZWQgZGlydHlfc3VibW9kdWxlczsKKwl1bnNpZ25lZCBpZ25vcmVfdW50cmFja2VkX2luX3N1Ym1vZHVsZXM7CisJdW5zaWduZWQgaWdub3JlX2RpcnR5X3N1Ym1vZHVsZXM7CisJdW5zaWduZWQgb3ZlcnJpZGVfc3VibW9kdWxlX2NvbmZpZzsKKwl1bnNpZ25lZCBkaXJzdGF0X2J5X2xpbmU7CisJdW5zaWduZWQgZnVuY2NvbnRleHQ7CisJdW5zaWduZWQgZGVmYXVsdF9mb2xsb3dfcmVuYW1lczsKKwl1bnNpZ25lZCBzdGF0X3dpdGhfc3VtbWFyeTsKKwl1bnNpZ25lZCBzdXBwcmVzc19kaWZmX2hlYWRlcnM7CisJdW5zaWduZWQgZHVhbF9jb2xvcl9kaWZmZWRfZGlmZnM7CisJdW5zaWduZWQgc3VwcHJlc3NfaHVua19oZWFkZXJfbGluZV9jb3VudDsKIH07CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBkaWZmX2ZsYWdzX29yKHN0cnVjdCBkaWZmX2ZsYWdzICphLApAQCAtMTI5LDM2ICsyMTksNzIgQEAKIAlESUZGX1NVQk1PRFVMRV9JTkxJTkVfRElGRgogfTsKIAorLyoqCisgKiB0aGUgc2V0IG9mIG9wdGlvbnMgdGhlIGNhbGxpbmcgcHJvZ3JhbSB3YW50cyB0byBhZmZlY3QgdGhlIG9wZXJhdGlvbiBvZgorICogZGlmZmNvcmUgbGlicmFyeSB3aXRoLgorICovCiBzdHJ1Y3QgZGlmZl9vcHRpb25zIHsKIAljb25zdCBjaGFyICpvcmRlcmZpbGU7CisKKwkvKioKKwkgKiBBIGNvbnN0YW50IHN0cmluZyAoY2FuIGFuZCB0eXBpY2FsbHkgZG9lcyBjb250YWluIG5ld2xpbmVzIHRvIGxvb2sgZm9yCisJICogYSBibG9jayBvZiB0ZXh0LCBub3QganVzdCBhIHNpbmdsZSBsaW5lKSB0byBmaWx0ZXIgb3V0IHRoZSBmaWxlcGFpcnMKKwkgKiB0aGF0IGRvIG5vdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBzdHJpbmdzIGNvbnRhaW5lZCBpbiBpdHMgcHJlaW1hZ2UgYW5kCisJICogcG9zdGltYWdlIG9mIHRoZSBkaWZmX3F1ZXVlLgorCSAqLwogCWNvbnN0IGNoYXIgKnBpY2theGU7CisKIAljb25zdCBjaGFyICpzaW5nbGVfZm9sbG93OwogCWNvbnN0IGNoYXIgKmFfcHJlZml4LCAqYl9wcmVmaXg7CiAJY29uc3QgY2hhciAqbGluZV9wcmVmaXg7CiAJc2l6ZV90IGxpbmVfcHJlZml4X2xlbmd0aDsKKworCS8qKgorCSAqIGNvbGxlY3Rpb24gb2YgYm9vbGVhbiBvcHRpb25zIHRoYXQgYWZmZWN0cyB0aGUgb3BlcmF0aW9uLCBidXQgc29tZSBkbworCSAqIG5vdCBoYXZlIGFueXRoaW5nIHRvIGRvIHdpdGggdGhlIGRpZmZjb3JlIGxpYnJhcnkuCisJICovCiAJc3RydWN0IGRpZmZfZmxhZ3MgZmxhZ3M7CiAKIAkvKiBkaWZmLWZpbHRlciBiaXRzICovCiAJdW5zaWduZWQgaW50IGZpbHRlcjsKIAogCWludCB1c2VfY29sb3I7CisKKwkvKiBOdW1iZXIgb2YgY29udGV4dCBsaW5lcyB0byBnZW5lcmF0ZSBpbiBwYXRjaCBvdXRwdXQuICovCiAJaW50IGNvbnRleHQ7CisKIAlpbnQgaW50ZXJodW5rY29udGV4dDsKKworCS8qIEFmZmVjdHMgdGhlIHdheSBkZXRlY3Rpb24gbG9naWMgZm9yIGNvbXBsZXRlIHJld3JpdGVzLCByZW5hbWVzIGFuZAorCSAqIGNvcGllcy4KKwkgKi8KIAlpbnQgYnJlYWtfb3B0OwogCWludCBkZXRlY3RfcmVuYW1lOworCiAJaW50IGlycmV2ZXJzaWJsZV9kZWxldGU7CiAJaW50IHNraXBfc3RhdF91bm1hdGNoOwogCWludCBsaW5lX3Rlcm1pbmF0aW9uOworCisJLyogVGhlIG91dHB1dCBmb3JtYXQgdXNlZCB3aGVuIGBkaWZmX2ZsdXNoKClgIGlzIHJ1bi4gKi8KIAlpbnQgb3V0cHV0X2Zvcm1hdDsKKwogCXVuc2lnbmVkIHBpY2theGVfb3B0czsKKworCS8qIEFmZmVjdHMgdGhlIHdheSBkZXRlY3Rpb24gbG9naWMgZm9yIGNvbXBsZXRlIHJld3JpdGVzLCByZW5hbWVzIGFuZAorCSAqIGNvcGllcy4KKwkgKi8KIAlpbnQgcmVuYW1lX3Njb3JlOwogCWludCByZW5hbWVfbGltaXQ7CisKIAlpbnQgbmVlZGVkX3JlbmFtZV9saW1pdDsKIAlpbnQgZGVncmFkZWRfY2NfdG9fYzsKIAlpbnQgc2hvd19yZW5hbWVfcHJvZ3Jlc3M7CiAJaW50IGRpcnN0YXRfcGVybWlsbGU7CiAJaW50IHNldHVwOworCisJLyogTnVtYmVyIG9mIGhleGRpZ2l0cyB0byBhYmJyZXZpYXRlIHJhdyBmb3JtYXQgb3V0cHV0IHRvLiAqLwogCWludCBhYmJyZXY7CisKIAlpbnQgaXRhX2ludmlzaWJsZV9pbl9pbmRleDsKIC8qIHdoaXRlLXNwYWNlIGVycm9yIGhpZ2hsaWdodGluZyAqLwogI2RlZmluZSBXU0VIX05FVyAoMTw8MTIpCkBAIC0xNjgsNyArMjk0LDcgQEAKIAljb25zdCBjaGFyICpwcmVmaXg7CiAJaW50IHByZWZpeF9sZW5ndGg7CiAJY29uc3QgY2hhciAqc3RhdF9zZXA7Ci0JbG9uZyB4ZGxfb3B0czsKKwlpbnQgeGRsX29wdHM7CiAKIAkvKiBzZWUgRG9jdW1lbnRhdGlvbi9kaWZmLW9wdGlvbnMudHh0ICovCiAJY2hhciAqKmFuY2hvcnM7CkBAIC0xOTAsNiArMzE2LDcgQEAKIAkvKiB0byBzdXBwb3J0IGludGVybmFsIGRpZmYgcmVjdXJzaW9uIGJ5IC0tZm9sbG93IGhhY2sqLwogCWludCBmb3VuZF9mb2xsb3c7CiAKKwkvKiBDYWxsYmFjayB3aGljaCBhbGxvd3MgdHdlYWtpbmcgdGhlIG9wdGlvbnMgaW4gZGlmZl9zZXR1cF9kb25lKCkuICovCiAJdm9pZCAoKnNldF9kZWZhdWx0KShzdHJ1Y3QgZGlmZl9vcHRpb25zICopOwogCiAJRklMRSAqZmlsZTsKQEAgLTIyNSwxMSArMzUyLDE1IEBACiAKIAkvKiBYREZfV0hJVEVTUEFDRV9GTEFHUyByZWdhcmRpbmcgYmxvY2sgZGV0ZWN0aW9uIGFyZSBzZXQgYXQgMiwgMywgNCAqLwogCSNkZWZpbmUgQ09MT1JfTU9WRURfV1NfQUxMT1dfSU5ERU5UQVRJT05fQ0hBTkdFICgxPDw1KQotCWludCBjb2xvcl9tb3ZlZF93c19oYW5kbGluZzsKKwkjZGVmaW5lIENPTE9SX01PVkVEX1dTX0VSUk9SICgxPDwwKQorCXVuc2lnbmVkIGNvbG9yX21vdmVkX3dzX2hhbmRsaW5nOwogCiAJc3RydWN0IHJlcG9zaXRvcnkgKnJlcG87CisJc3RydWN0IG9wdGlvbiAqcGFyc2VvcHRzOwogfTsKIAordW5zaWduZWQgZGlmZl9maWx0ZXJfYml0KGNoYXIgc3RhdHVzKTsKKwogdm9pZCBkaWZmX2VtaXRfc3VibW9kdWxlX2RlbChzdHJ1Y3QgZGlmZl9vcHRpb25zICpvLCBjb25zdCBjaGFyICpsaW5lKTsKIHZvaWQgZGlmZl9lbWl0X3N1Ym1vZHVsZV9hZGQoc3RydWN0IGRpZmZfb3B0aW9ucyAqbywgY29uc3QgY2hhciAqbGluZSk7CiB2b2lkIGRpZmZfZW1pdF9zdWJtb2R1bGVfdW50cmFja2VkKHN0cnVjdCBkaWZmX29wdGlvbnMgKm8sIGNvbnN0IGNoYXIgKnBhdGgpOwpAQCAtMjM5LDYgKzM3MCwyMiBAQAogdm9pZCBkaWZmX2VtaXRfc3VibW9kdWxlX3BpcGV0aHJvdWdoKHN0cnVjdCBkaWZmX29wdGlvbnMgKm8sCiAJCQkJICAgICBjb25zdCBjaGFyICpsaW5lLCBpbnQgbGVuKTsKIAorc3RydWN0IGRpZmZzdGF0X3QgeworCWludCBucjsKKwlpbnQgYWxsb2M7CisJc3RydWN0IGRpZmZzdGF0X2ZpbGUgeworCQljaGFyICpmcm9tX25hbWU7CisJCWNoYXIgKm5hbWU7CisJCWNoYXIgKnByaW50X25hbWU7CisJCWNvbnN0IGNoYXIgKmNvbW1lbnRzOworCQl1bnNpZ25lZCBpc191bm1lcmdlZDoxOworCQl1bnNpZ25lZCBpc19iaW5hcnk6MTsKKwkJdW5zaWduZWQgaXNfcmVuYW1lZDoxOworCQl1bnNpZ25lZCBpc19pbnRlcmVzdGluZzoxOworCQl1aW50bWF4X3QgYWRkZWQsIGRlbGV0ZWQ7CisJfSAqKmZpbGVzOworfTsKKwogZW51bSBjb2xvcl9kaWZmIHsKIAlESUZGX1JFU0VUID0gMCwKIAlESUZGX0NPTlRFWFQgPSAxLApAQCAtMjY0LDYgKzQxMSw3IEBACiAJRElGRl9GSUxFX09MRF9CT0xEID0gMjEsCiAJRElGRl9GSUxFX05FV19CT0xEID0gMjIsCiB9OworCiBjb25zdCBjaGFyICpkaWZmX2dldF9jb2xvcihpbnQgZGlmZl91c2VfY29sb3IsIGVudW0gY29sb3JfZGlmZiBpeCk7CiAjZGVmaW5lIGRpZmZfZ2V0X2NvbG9yX29wdChvLCBpeCkgXAogCWRpZmZfZ2V0X2NvbG9yKChvKS0+dXNlX2NvbG9yLCBpeCkKQEAgLTI5Myw2ICs0NDEsNyBAQAogCQljaGFyIHN0YXR1czsKIAkJdW5zaWduZWQgaW50IG1vZGU7CiAJCXN0cnVjdCBvYmplY3RfaWQgb2lkOworCQlzdHJ1Y3Qgc3RyYnVmIHBhdGg7CiAJfSBwYXJlbnRbRkxFWF9BUlJBWV07CiB9OwogI2RlZmluZSBjb21iaW5lX2RpZmZfcGF0aF9zaXplKG4sIGwpIFwKQEAgLTMyNyw2ICs0NzYsMTAgQEAKIAogc3RydWN0IGRpZmZfZmlsZXBhaXIgKmRpZmZfdW5tZXJnZShzdHJ1Y3QgZGlmZl9vcHRpb25zICosIGNvbnN0IGNoYXIgKnBhdGgpOwogCit2b2lkIGNvbXB1dGVfZGlmZnN0YXQoc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucywgc3RydWN0IGRpZmZzdGF0X3QgKmRpZmZzdGF0LAorCQkgICAgICBzdHJ1Y3QgZGlmZl9xdWV1ZV9zdHJ1Y3QgKnEpOwordm9pZCBmcmVlX2RpZmZzdGF0X2luZm8oc3RydWN0IGRpZmZzdGF0X3QgKmRpZmZzdGF0KTsKKwogI2RlZmluZSBESUZGX1NFVFVQX1JFVkVSU0UgICAgICAJMQogI2RlZmluZSBESUZGX1NFVFVQX1VTRV9TSVpFX0NBQ0hFCTQKIApAQCAtMzY2LDcgKzUxOSw3IEBACiAjZGVmaW5lIERJRkZfUElDS0FYRV9JR05PUkVfQ0FTRQkzMgogCiB2b2lkIGRpZmZjb3JlX3N0ZChzdHJ1Y3QgZGlmZl9vcHRpb25zICopOwotdm9pZCBkaWZmY29yZV9maXhfZGlmZl9pbmRleChzdHJ1Y3QgZGlmZl9vcHRpb25zICopOwordm9pZCBkaWZmY29yZV9maXhfZGlmZl9pbmRleCh2b2lkKTsKIAogI2RlZmluZSBDT01NT05fRElGRl9PUFRJT05TX0hFTFAgXAogIlxuY29tbW9uIGRpZmYgb3B0aW9uczpcbiIgXApAQCAtNDMwLDEzICs1ODMsMTYgQEAKIGludCBydW5fZGlmZl9pbmRleChzdHJ1Y3QgcmV2X2luZm8gKnJldnMsIGludCBjYWNoZWQpOwogCiBpbnQgZG9fZGlmZl9jYWNoZShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICosIHN0cnVjdCBkaWZmX29wdGlvbnMgKik7Ci1pbnQgZGlmZl9mbHVzaF9wYXRjaF9pZChzdHJ1Y3QgZGlmZl9vcHRpb25zICosIHN0cnVjdCBvYmplY3RfaWQgKiwgaW50KTsKK2ludCBkaWZmX2ZsdXNoX3BhdGNoX2lkKHN0cnVjdCBkaWZmX29wdGlvbnMgKiwgc3RydWN0IG9iamVjdF9pZCAqLCBpbnQsIGludCk7Cit2b2lkIGZsdXNoX29uZV9odW5rKHN0cnVjdCBvYmplY3RfaWQgKnJlc3VsdCwgZ2l0X2hhc2hfY3R4ICpjdHgpOwogCiBpbnQgZGlmZl9yZXN1bHRfY29kZShzdHJ1Y3QgZGlmZl9vcHRpb25zICosIGludCk7CiAKLXZvaWQgZGlmZl9ub19pbmRleChzdHJ1Y3QgcmVwb3NpdG9yeSAqLCBzdHJ1Y3QgcmV2X2luZm8gKiwgaW50LCBjb25zdCBjaGFyICoqKTsKK2ludCBkaWZmX25vX2luZGV4KHN0cnVjdCByZXZfaW5mbyAqLAorCQkgIGludCBpbXBsaWNpdF9ub19pbmRleCwgaW50LCBjb25zdCBjaGFyICoqKTsKIAotaW50IGluZGV4X2RpZmZlcnNfZnJvbShjb25zdCBjaGFyICpkZWYsIGNvbnN0IHN0cnVjdCBkaWZmX2ZsYWdzICpmbGFncywKK2ludCBpbmRleF9kaWZmZXJzX2Zyb20oc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKmRlZiwKKwkJICAgICAgIGNvbnN0IHN0cnVjdCBkaWZmX2ZsYWdzICpmbGFncywKIAkJICAgICAgIGludCBpdGFfaW52aXNpYmxlX2luX2luZGV4KTsKIAogLyoKQEAgLTQ2MCw3ICs2MTYsNyBAQAogICogYW5kIG9ubHkgaWYgaXQgaGFzIHRleHRjb252IGVuYWJsZWQgKG90aGVyd2lzZSByZXR1cm4gTlVMTCkuIFRoZSByZXN1bHQKICAqIGNhbiBiZSBwYXNzZWQgdG8gZmlsbF90ZXh0Y29udigpLgogICovCi1zdHJ1Y3QgdXNlcmRpZmZfZHJpdmVyICpnZXRfdGV4dGNvbnYoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCitzdHJ1Y3QgdXNlcmRpZmZfZHJpdmVyICpnZXRfdGV4dGNvbnYoc3RydWN0IHJlcG9zaXRvcnkgKnIsCiAJCQkJICAgICBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqb25lKTsKIAogLyoKZGlmZiAtLWdpdCBhL2RpZmZjb3JlLWJyZWFrLmMgYi9kaWZmY29yZS1icmVhay5jCmluZGV4IDg3NWFlZmQuLjlkMjBhNmEgMTAwNjQ0Ci0tLSBhL2RpZmZjb3JlLWJyZWFrLmMKKysrIGIvZGlmZmNvcmUtYnJlYWsuYwpAQCAtMjg2LDE3ICsyODYsMTcgQEAKIAkJCQkJLyogUGVlciBzdXJ2aXZlZC4gIE1lcmdlIHRoZW0gKi8KIAkJCQkJbWVyZ2VfYnJva2VuKHAsIHBwLCAmb3V0cSk7CiAJCQkJCXEtPnF1ZXVlW2pdID0gTlVMTDsKLQkJCQkJYnJlYWs7CisJCQkJCWdvdG8gbmV4dDsKIAkJCQl9CiAJCQl9Ci0JCQlpZiAocS0+bnIgPD0gaikKLQkJCQkvKiBUaGUgcGVlciBkaWQgbm90IHN1cnZpdmUsIHNvIHdlIGtlZXAKLQkJCQkgKiBpdCBpbiB0aGUgb3V0cHV0LgotCQkJCSAqLwotCQkJCWRpZmZfcSgmb3V0cSwgcCk7CisJCQkvKiBUaGUgcGVlciBkaWQgbm90IHN1cnZpdmUsIHNvIHdlIGtlZXAKKwkJCSAqIGl0IGluIHRoZSBvdXRwdXQuCisJCQkgKi8KKwkJCWRpZmZfcSgmb3V0cSwgcCk7CiAJCX0KIAkJZWxzZQogCQkJZGlmZl9xKCZvdXRxLCBwKTsKK25leHQ6OwogCX0KIAlmcmVlKHEtPnF1ZXVlKTsKIAkqcSA9IG91dHE7CmRpZmYgLS1naXQgYS9kaWZmY29yZS1waWNrYXhlLmMgYi9kaWZmY29yZS1waWNrYXhlLmMKaW5kZXggNjlmYzU1ZS4uYTljNmQ2MCAxMDA2NDQKLS0tIGEvZGlmZmNvcmUtcGlja2F4ZS5jCisrKyBiL2RpZmZjb3JlLXBpY2theGUuYwpAQCAtMTQwLDggKzE0MCw4IEBACiAJCXJldHVybiAwOwogCiAJaWYgKG8tPmZsYWdzLmFsbG93X3RleHRjb252KSB7Ci0JCXRleHRjb252X29uZSA9IGdldF90ZXh0Y29udihvLT5yZXBvLT5pbmRleCwgcC0+b25lKTsKLQkJdGV4dGNvbnZfdHdvID0gZ2V0X3RleHRjb252KG8tPnJlcG8tPmluZGV4LCBwLT50d28pOworCQl0ZXh0Y29udl9vbmUgPSBnZXRfdGV4dGNvbnYoby0+cmVwbywgcC0+b25lKTsKKwkJdGV4dGNvbnZfdHdvID0gZ2V0X3RleHRjb252KG8tPnJlcG8sIHAtPnR3byk7CiAJfQogCiAJLyoKQEAgLTE1NCw2ICsxNTQsMTIgQEAKIAlpZiAodGV4dGNvbnZfb25lID09IHRleHRjb252X3R3byAmJiBkaWZmX3VubW9kaWZpZWRfcGFpcihwKSkKIAkJcmV0dXJuIDA7CiAKKwlpZiAoKG8tPnBpY2theGVfb3B0cyAmIERJRkZfUElDS0FYRV9LSU5EX0cpICYmCisJICAgICFvLT5mbGFncy50ZXh0ICYmCisJICAgICgoIXRleHRjb252X29uZSAmJiBkaWZmX2ZpbGVzcGVjX2lzX2JpbmFyeShvLT5yZXBvLCBwLT5vbmUpKSB8fAorCSAgICAgKCF0ZXh0Y29udl90d28gJiYgZGlmZl9maWxlc3BlY19pc19iaW5hcnkoby0+cmVwbywgcC0+dHdvKSkpKQorCQlyZXR1cm4gMDsKKwogCW1mMS5zaXplID0gZmlsbF90ZXh0Y29udihvLT5yZXBvLCB0ZXh0Y29udl9vbmUsIHAtPm9uZSwgJm1mMS5wdHIpOwogCW1mMi5zaXplID0gZmlsbF90ZXh0Y29udihvLT5yZXBvLCB0ZXh0Y29udl90d28sIHAtPnR3bywgJm1mMi5wdHIpOwogCmRpZmYgLS1naXQgYS9kaWZmY29yZS1yZW5hbWUuYyBiL2RpZmZjb3JlLXJlbmFtZS5jCmluZGV4IDA3YmQzNGIuLmUxODlmNDAgMTAwNjQ0Ci0tLSBhL2RpZmZjb3JlLXJlbmFtZS5jCisrKyBiL2RpZmZjb3JlLXJlbmFtZS5jCkBAIC0yMyw3ICsyMyw3IEBACiAJZmlyc3QgPSAwOwogCWxhc3QgPSByZW5hbWVfZHN0X25yOwogCXdoaWxlIChsYXN0ID4gZmlyc3QpIHsKLQkJaW50IG5leHQgPSAobGFzdCArIGZpcnN0KSA+PiAxOworCQlpbnQgbmV4dCA9IGZpcnN0ICsgKChsYXN0IC0gZmlyc3QpID4+IDEpOwogCQlzdHJ1Y3QgZGlmZl9yZW5hbWVfZHN0ICpkc3QgPSAmKHJlbmFtZV9kc3RbbmV4dF0pOwogCQlpbnQgY21wID0gc3RyY21wKHR3by0+cGF0aCwgZHN0LT50d28tPnBhdGgpOwogCQlpZiAoIWNtcCkKQEAgLTgzLDcgKzgzLDcgQEAKIAlmaXJzdCA9IDA7CiAJbGFzdCA9IHJlbmFtZV9zcmNfbnI7CiAJd2hpbGUgKGxhc3QgPiBmaXJzdCkgewotCQlpbnQgbmV4dCA9IChsYXN0ICsgZmlyc3QpID4+IDE7CisJCWludCBuZXh0ID0gZmlyc3QgKyAoKGxhc3QgLSBmaXJzdCkgPj4gMSk7CiAJCXN0cnVjdCBkaWZmX3JlbmFtZV9zcmMgKnNyYyA9ICYocmVuYW1lX3NyY1tuZXh0XSk7CiAJCWludCBjbXAgPSBzdHJjbXAob25lLT5wYXRoLCBzcmMtPnAtPm9uZS0+cGF0aCk7CiAJCWlmICghY21wKQpAQCAtMjYzLDEwICsyNjMsMTAgQEAKIAlpZiAoIWZpbGVzcGVjLT5vaWRfdmFsaWQpIHsKIAkJaWYgKGRpZmZfcG9wdWxhdGVfZmlsZXNwZWMociwgZmlsZXNwZWMsIDApKQogCQkJcmV0dXJuIDA7Ci0JCWhhc2hfb2JqZWN0X2ZpbGUoZmlsZXNwZWMtPmRhdGEsIGZpbGVzcGVjLT5zaXplLCAiYmxvYiIsCi0JCQkJICZmaWxlc3BlYy0+b2lkKTsKKwkJaGFzaF9vYmplY3RfZmlsZShyLT5oYXNoX2FsZ28sIGZpbGVzcGVjLT5kYXRhLCBmaWxlc3BlYy0+c2l6ZSwKKwkJCQkgImJsb2IiLCAmZmlsZXNwZWMtPm9pZCk7CiAJfQotCXJldHVybiBzaGExaGFzaChmaWxlc3BlYy0+b2lkLmhhc2gpOworCXJldHVybiBvaWRoYXNoKCZmaWxlc3BlYy0+b2lkKTsKIH0KIAogc3RhdGljIGludCBmaW5kX2lkZW50aWNhbF9maWxlcyhzdHJ1Y3QgaGFzaG1hcCAqc3JjcywKQEAgLTI3NCwxOCArMjc0LDE3IEBACiAJCQkJc3RydWN0IGRpZmZfb3B0aW9ucyAqb3B0aW9ucykKIHsKIAlpbnQgcmVuYW1lcyA9IDA7Ci0KIAlzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqdGFyZ2V0ID0gcmVuYW1lX2RzdFtkc3RfaW5kZXhdLnR3bzsKIAlzdHJ1Y3QgZmlsZV9zaW1pbGFyaXR5ICpwLCAqYmVzdCA9IE5VTEw7CiAJaW50IGkgPSAxMDAsIGJlc3Rfc2NvcmUgPSAtMTsKKwl1bnNpZ25lZCBpbnQgaGFzaCA9IGhhc2hfZmlsZXNwZWMob3B0aW9ucy0+cmVwbywgdGFyZ2V0KTsKIAogCS8qCiAJICogRmluZCB0aGUgYmVzdCBzb3VyY2UgbWF0Y2ggZm9yIHNwZWNpZmllZCBkZXN0aW5hdGlvbi4KIAkgKi8KLQlwID0gaGFzaG1hcF9nZXRfZnJvbV9oYXNoKHNyY3MsCi0JCQkJICBoYXNoX2ZpbGVzcGVjKG9wdGlvbnMtPnJlcG8sIHRhcmdldCksCi0JCQkJICBOVUxMKTsKLQlmb3IgKDsgcDsgcCA9IGhhc2htYXBfZ2V0X25leHQoc3JjcywgcCkpIHsKKwlwID0gaGFzaG1hcF9nZXRfZW50cnlfZnJvbV9oYXNoKHNyY3MsIGhhc2gsIE5VTEwsCisJCQkJCXN0cnVjdCBmaWxlX3NpbWlsYXJpdHksIGVudHJ5KTsKKwloYXNobWFwX2Zvcl9lYWNoX2VudHJ5X2Zyb20oc3JjcywgcCwgZW50cnkpIHsKIAkJaW50IHNjb3JlOwogCQlzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqc291cmNlID0gcC0+ZmlsZXNwZWM7CiAKQEAgLTMyOSw4ICszMjgsOCBAQAogCWVudHJ5LT5pbmRleCA9IGluZGV4OwogCWVudHJ5LT5maWxlc3BlYyA9IGZpbGVzcGVjOwogCi0JaGFzaG1hcF9lbnRyeV9pbml0KGVudHJ5LCBoYXNoX2ZpbGVzcGVjKHIsIGZpbGVzcGVjKSk7Ci0JaGFzaG1hcF9hZGQodGFibGUsIGVudHJ5KTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmVudHJ5LT5lbnRyeSwgaGFzaF9maWxlc3BlYyhyLCBmaWxlc3BlYykpOworCWhhc2htYXBfYWRkKHRhYmxlLCAmZW50cnktPmVudHJ5KTsKIH0KIAogLyoKQEAgLTM1OSw3ICszNTgsNyBAQAogCQlyZW5hbWVzICs9IGZpbmRfaWRlbnRpY2FsX2ZpbGVzKCZmaWxlX3RhYmxlLCBpLCBvcHRpb25zKTsKIAogCS8qIEZyZWUgdGhlIGhhc2ggZGF0YSBzdHJ1Y3R1cmUgYW5kIGVudHJpZXMgKi8KLQloYXNobWFwX2ZyZWUoJmZpbGVfdGFibGUsIDEpOworCWhhc2htYXBfZnJlZV9lbnRyaWVzKCZmaWxlX3RhYmxlLCBzdHJ1Y3QgZmlsZV9zaW1pbGFyaXR5LCBlbnRyeSk7CiAKIAlyZXR1cm4gcmVuYW1lczsKIH0KQEAgLTU4NSw3ICs1ODQsNyBAQAogCXN0b3BfcHJvZ3Jlc3MoJnByb2dyZXNzKTsKIAogCS8qIGNvc3QgbWF0cml4IHNvcnRlZCBieSBtb3N0IHRvIGxlYXN0IHNpbWlsYXIgcGFpciAqLwotCVFTT1JUKG14LCBkc3RfY250ICogTlVNX0NBTkRJREFURV9QRVJfRFNULCBzY29yZV9jb21wYXJlKTsKKwlTVEFCTEVfUVNPUlQobXgsIGRzdF9jbnQgKiBOVU1fQ0FORElEQVRFX1BFUl9EU1QsIHNjb3JlX2NvbXBhcmUpOwogCiAJcmVuYW1lX2NvdW50ICs9IGZpbmRfcmVuYW1lcyhteCwgZHN0X2NudCwgbWluaW11bV9zY29yZSwgMCk7CiAJaWYgKGRldGVjdF9yZW5hbWUgPT0gRElGRl9ERVRFQ1RfQ09QWSkKZGlmZiAtLWdpdCBhL2RpZmZjb3JlLmggYi9kaWZmY29yZS5oCmluZGV4IGI2NTEwNjEuLjdjMDczNDcgMTAwNjQ0Ci0tLSBhL2RpZmZjb3JlLmgKKysrIGIvZGlmZmNvcmUuaApAQCAtMjgsNiArMjgsMTIgQEAKIAogI2RlZmluZSBNSU5JTVVNX0JSRUFLX1NJWkUgICAgIDQwMCAvKiBkbyBub3QgYnJlYWsgYSBmaWxlIHNtYWxsZXIgdGhhbiB0aGlzICovCiAKKy8qKgorICogdGhlIGludGVybmFsIHJlcHJlc2VudGF0aW9uIGZvciBhIHNpbmdsZSBmaWxlIChibG9iKS4gIEl0IHJlY29yZHMgdGhlIGJsb2IKKyAqIG9iamVjdCBuYW1lIChpZiBrbm93biAtLSBmb3IgYSB3b3JrIHRyZWUgZmlsZSBpdCB0eXBpY2FsbHkgaXMgYSBOVUwgU0hBLTEpLAorICogZmlsZW1vZGUgYW5kIHBhdGhuYW1lLiAgVGhpcyBpcyB3aGF0IHRoZSBgZGlmZl9hZGRyZW1vdmUoKWAsIGBkaWZmX2NoYW5nZSgpYAorICogYW5kIGBkaWZmX3VubWVyZ2UoKWAgc3ludGhlc2l6ZSBhbmQgZmVlZCBgZGlmZl9xdWV1ZSgpYCBmdW5jdGlvbiB3aXRoLgorICovCiBzdHJ1Y3QgZGlmZl9maWxlc3BlYyB7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJY2hhciAqcGF0aDsKQEAgLTY2LDYgKzcyLDE3IEBACiB2b2lkIGRpZmZfZnJlZV9maWxlc3BlY19ibG9iKHN0cnVjdCBkaWZmX2ZpbGVzcGVjICopOwogaW50IGRpZmZfZmlsZXNwZWNfaXNfYmluYXJ5KHN0cnVjdCByZXBvc2l0b3J5ICosIHN0cnVjdCBkaWZmX2ZpbGVzcGVjICopOwogCisvKioKKyAqIFRoaXMgcmVjb3JkcyBhIHBhaXIgb2YgYHN0cnVjdCBkaWZmX2ZpbGVzcGVjYDsgdGhlIGZpbGVzcGVjIGZvciBhIGZpbGUgaW4KKyAqIHRoZSAib2xkIiBzZXQgKGkuZS4gcHJlaW1hZ2UpIGlzIGNhbGxlZCBgb25lYCwgYW5kIHRoZSBmaWxlc3BlYyBmb3IgYSBmaWxlCisgKiBpbiB0aGUgIm5ldyIgc2V0IChpLmUuIHBvc3RpbWFnZSkgaXMgY2FsbGVkIGB0d29gLiAgQSBjaGFuZ2UgdGhhdCByZXByZXNlbnRzCisgKiBmaWxlIGNyZWF0aW9uIGhhcyBOVUxMIGluIGBvbmVgLCBhbmQgZmlsZSBkZWxldGlvbiBoYXMgTlVMTCBpbiBgdHdvYC4KKyAqCisgKiBBIGBmaWxlcGFpcmAgc3RhcnRzIHBvaW50aW5nIGF0IGBvbmVgIGFuZCBgdHdvYCB0aGF0IGFyZSBmcm9tIHRoZSBzYW1lCisgKiBmaWxlbmFtZSwgYnV0IGBkaWZmY29yZV9zdGQoKWAgY2FuIGJyZWFrIHBhaXJzIGFuZCBtYXRjaCBjb21wb25lbnQgZmlsZXNwZWNzCisgKiB3aXRoIG90aGVyIGZpbGVzcGVjcyBmcm9tIGEgZGlmZmVyZW50IGZpbGVwYWlyIHRvIGZvcm0gbmV3IGZpbGVwYWlyLiBUaGlzIGlzCisgKiBjYWxsZWQgJ3JlbmFtZSBkZXRlY3Rpb24nLgorICovCiBzdHJ1Y3QgZGlmZl9maWxlcGFpciB7CiAJc3RydWN0IGRpZmZfZmlsZXNwZWMgKm9uZTsKIAlzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqdHdvOwpAQCAtNzcsNiArOTQsNyBAQAogCXVuc2lnbmVkIGRvbmVfc2tpcF9zdGF0X3VubWF0Y2ggOiAxOwogCXVuc2lnbmVkIHNraXBfc3RhdF91bm1hdGNoX3Jlc3VsdCA6IDE7CiB9OworCiAjZGVmaW5lIERJRkZfUEFJUl9VTk1FUkdFRChwKSAoKHApLT5pc191bm1lcmdlZCkKIAogI2RlZmluZSBESUZGX1BBSVJfUkVOQU1FKHApICgocCktPnJlbmFtZWRfcGFpcikKQEAgLTk0LDExICsxMTIsMjUgQEAKIAogaW50IGRpZmZfdW5tb2RpZmllZF9wYWlyKHN0cnVjdCBkaWZmX2ZpbGVwYWlyICopOwogCisvKioKKyAqIFRoaXMgaXMgYSBjb2xsZWN0aW9uIG9mIGZpbGVwYWlycy4gIE5vdGFibGUgbWVtYmVycyBhcmU6CisgKgorICogLSBgcXVldWVgOgorICogQW4gYXJyYXkgb2YgcG9pbnRlcnMgdG8gYHN0cnVjdCBkaWZmX2ZpbGVwYWlyYC4gVGhpcyBkeW5hbWljYWxseSBncm93cyBhcworICogeW91IGFkZCBmaWxlcGFpcnM7CisgKgorICogLSBgYWxsb2NgOgorICogVGhlIGFsbG9jYXRlZCBzaXplIG9mIHRoZSBgcXVldWVgIGFycmF5OworICoKKyAqIC0gYG5yYDoKKyAqIFRoZSBudW1iZXIgb2YgZWxlbWVudHMgaW4gdGhlIGBxdWV1ZWAgYXJyYXkuCisgKi8KIHN0cnVjdCBkaWZmX3F1ZXVlX3N0cnVjdCB7CiAJc3RydWN0IGRpZmZfZmlsZXBhaXIgKipxdWV1ZTsKIAlpbnQgYWxsb2M7CiAJaW50IG5yOwogfTsKKwogI2RlZmluZSBESUZGX1FVRVVFX0NMRUFSKHEpIFwKIAlkbyB7IFwKIAkJKHEpLT5xdWV1ZSA9IE5VTEw7IFwKZGlmZiAtLWdpdCBhL2Rpci1pdGVyYXRvci5jIGIvZGlyLWl0ZXJhdG9yLmMKaW5kZXggZjJkY2Q4Mi4uYjE3ZTlmOSAxMDA2NDQKLS0tIGEvZGlyLWl0ZXJhdG9yLmMKKysrIGIvZGlyLWl0ZXJhdG9yLmMKQEAgLTQsOCArNCw2IEBACiAjaW5jbHVkZSAiZGlyLWl0ZXJhdG9yLmgiCiAKIHN0cnVjdCBkaXJfaXRlcmF0b3JfbGV2ZWwgewotCWludCBpbml0aWFsaXplZDsKLQogCURJUiAqZGlyOwogCiAJLyoKQEAgLTEzLDE2ICsxMSw2IEBACiAJICogKGluY2x1ZGluZyBhIHRyYWlsaW5nICcvJyk6CiAJICovCiAJc2l6ZV90IHByZWZpeF9sZW47Ci0KLQkvKgotCSAqIFRoZSBsYXN0IGFjdGlvbiB0aGF0IGhhcyBiZWVuIHRha2VuIHdpdGggdGhlIGN1cnJlbnQgZW50cnkKLQkgKiAobmVlZGVkIGZvciBkaXJlY3Rvcmllcywgd2hpY2ggaGF2ZSB0byBiZSBpbmNsdWRlZCBpbiB0aGUKLQkgKiBpdGVyYXRpb24gYW5kIGFsc28gaXRlcmF0ZWQgaW50byk6Ci0JICovCi0JZW51bSB7Ci0JCURJUl9TVEFURV9JVEVSLAotCQlESVJfU1RBVEVfUkVDVVJTRQotCX0gZGlyX3N0YXRlOwogfTsKIAogLyoKQEAgLTM0LDkgKzIyLDExIEBACiAJc3RydWN0IGRpcl9pdGVyYXRvciBiYXNlOwogCiAJLyoKLQkgKiBUaGUgbnVtYmVyIG9mIGxldmVscyBjdXJyZW50bHkgb24gdGhlIHN0YWNrLiBUaGlzIGlzIGFsd2F5cwotCSAqIGF0IGxlYXN0IDEsIGJlY2F1c2Ugd2hlbiBpdCBiZWNvbWVzIHplcm8gdGhlIGl0ZXJhdGlvbiBpcwotCSAqIGVuZGVkIGFuZCB0aGlzIHN0cnVjdCBpcyBmcmVlZC4KKwkgKiBUaGUgbnVtYmVyIG9mIGxldmVscyBjdXJyZW50bHkgb24gdGhlIHN0YWNrLiBBZnRlciB0aGUgZmlyc3QKKwkgKiBjYWxsIHRvIGRpcl9pdGVyYXRvcl9iZWdpbigpLCBpZiBpdCBzdWNjZWVkcyB0byBvcGVuIHRoZQorCSAqIGZpcnN0IGxldmVsJ3MgZGlyLCB0aGlzIHdpbGwgYWx3YXlzIGJlIGF0IGxlYXN0IDEuIFRoZW4sCisJICogd2hlbiBpdCBjb21lcyB0byB6ZXJvIHRoZSBpdGVyYXRpb24gaXMgZW5kZWQgYW5kIHRoaXMKKwkgKiBzdHJ1Y3QgaXMgZnJlZWQuCiAJICovCiAJc2l6ZV90IGxldmVsc19ucjsKIApAQCAtNDgsMTE3ICszOCwxNDIgQEAKIAkgKiB0aGF0IHdpbGwgYmUgaW5jbHVkZWQgaW4gdGhpcyBpdGVyYXRpb24uCiAJICovCiAJc3RydWN0IGRpcl9pdGVyYXRvcl9sZXZlbCAqbGV2ZWxzOworCisJLyogQ29tYmluYXRpb24gb2YgZmxhZ3MgZm9yIHRoaXMgZGlyLWl0ZXJhdG9yICovCisJdW5zaWduZWQgaW50IGZsYWdzOwogfTsKIAorLyoKKyAqIFB1c2ggYSBsZXZlbCBpbiB0aGUgaXRlciBzdGFjayBhbmQgaW5pdGlhbGl6ZSBpdCB3aXRoIGluZm9ybWF0aW9uIGZyb20KKyAqIHRoZSBkaXJlY3RvcnkgcG9pbnRlZCBieSBpdGVyLT5iYXNlLT5wYXRoLiBJdCBpcyBhc3N1bWVkIHRoYXQgdGhpcworICogc3RyYnVmIHBvaW50cyB0byBhIHZhbGlkIGRpcmVjdG9yeSBwYXRoLiBSZXR1cm4gMCBvbiBzdWNjZXNzIGFuZCAtMQorICogb3RoZXJ3aXNlLCBzZXR0aW5nIGVycm5vIGFjY29yZGluZ2x5IGFuZCBsZWF2aW5nIHRoZSBzdGFjayB1bmNoYW5nZWQuCisgKi8KK3N0YXRpYyBpbnQgcHVzaF9sZXZlbChzdHJ1Y3QgZGlyX2l0ZXJhdG9yX2ludCAqaXRlcikKK3sKKwlzdHJ1Y3QgZGlyX2l0ZXJhdG9yX2xldmVsICpsZXZlbDsKKworCUFMTE9DX0dST1coaXRlci0+bGV2ZWxzLCBpdGVyLT5sZXZlbHNfbnIgKyAxLCBpdGVyLT5sZXZlbHNfYWxsb2MpOworCWxldmVsID0gJml0ZXItPmxldmVsc1tpdGVyLT5sZXZlbHNfbnIrK107CisKKwlpZiAoIWlzX2Rpcl9zZXAoaXRlci0+YmFzZS5wYXRoLmJ1ZltpdGVyLT5iYXNlLnBhdGgubGVuIC0gMV0pKQorCQlzdHJidWZfYWRkY2goJml0ZXItPmJhc2UucGF0aCwgJy8nKTsKKwlsZXZlbC0+cHJlZml4X2xlbiA9IGl0ZXItPmJhc2UucGF0aC5sZW47CisKKwlsZXZlbC0+ZGlyID0gb3BlbmRpcihpdGVyLT5iYXNlLnBhdGguYnVmKTsKKwlpZiAoIWxldmVsLT5kaXIpIHsKKwkJaW50IHNhdmVkX2Vycm5vID0gZXJybm87CisJCWlmIChlcnJubyAhPSBFTk9FTlQpIHsKKwkJCXdhcm5pbmdfZXJybm8oImVycm9yIG9wZW5pbmcgZGlyZWN0b3J5ICclcyciLAorCQkJCSAgICAgIGl0ZXItPmJhc2UucGF0aC5idWYpOworCQl9CisJCWl0ZXItPmxldmVsc19uci0tOworCQllcnJubyA9IHNhdmVkX2Vycm5vOworCQlyZXR1cm4gLTE7CisJfQorCisJcmV0dXJuIDA7Cit9CisKKy8qCisgKiBQb3AgdGhlIHRvcCBsZXZlbCBvbiB0aGUgaXRlciBzdGFjaywgcmVsZWFzaW5nIGFueSByZXNvdXJjZXMgYXNzb2NpYXRlZAorICogd2l0aCBpdC4gUmV0dXJuIHRoZSBuZXcgdmFsdWUgb2YgaXRlci0+bGV2ZWxzX25yLgorICovCitzdGF0aWMgaW50IHBvcF9sZXZlbChzdHJ1Y3QgZGlyX2l0ZXJhdG9yX2ludCAqaXRlcikKK3sKKwlzdHJ1Y3QgZGlyX2l0ZXJhdG9yX2xldmVsICpsZXZlbCA9CisJCSZpdGVyLT5sZXZlbHNbaXRlci0+bGV2ZWxzX25yIC0gMV07CisKKwlpZiAobGV2ZWwtPmRpciAmJiBjbG9zZWRpcihsZXZlbC0+ZGlyKSkKKwkJd2FybmluZ19lcnJubygiZXJyb3IgY2xvc2luZyBkaXJlY3RvcnkgJyVzJyIsCisJCQkgICAgICBpdGVyLT5iYXNlLnBhdGguYnVmKTsKKwlsZXZlbC0+ZGlyID0gTlVMTDsKKworCXJldHVybiAtLWl0ZXItPmxldmVsc19ucjsKK30KKworLyoKKyAqIFBvcHVsYXRlIGl0ZXItPmJhc2Ugd2l0aCB0aGUgbmVjZXNzYXJ5IGluZm9ybWF0aW9uIG9uIHRoZSBuZXh0IGl0ZXJhdGlvbgorICogZW50cnksIHJlcHJlc2VudGVkIGJ5IHRoZSBnaXZlbiBkaXJlbnQgZGUuIFJldHVybiAwIG9uIHN1Y2Nlc3MgYW5kIC0xCisgKiBvdGhlcndpc2UsIHNldHRpbmcgZXJybm8gYWNjb3JkaW5nbHkuCisgKi8KK3N0YXRpYyBpbnQgcHJlcGFyZV9uZXh0X2VudHJ5X2RhdGEoc3RydWN0IGRpcl9pdGVyYXRvcl9pbnQgKml0ZXIsCisJCQkJICAgc3RydWN0IGRpcmVudCAqZGUpCit7CisJaW50IGVyciwgc2F2ZWRfZXJybm87CisKKwlzdHJidWZfYWRkc3RyKCZpdGVyLT5iYXNlLnBhdGgsIGRlLT5kX25hbWUpOworCS8qCisJICogV2UgaGF2ZSB0byByZXNldCB0aGVzZSBiZWNhdXNlIHRoZSBwYXRoIHN0cmJ1ZiBtaWdodCBoYXZlCisJICogYmVlbiByZWFsbG9jKCllZCBhdCB0aGUgcHJldmlvdXMgc3RyYnVmX2FkZHN0cigpLgorCSAqLworCWl0ZXItPmJhc2UucmVsYXRpdmVfcGF0aCA9IGl0ZXItPmJhc2UucGF0aC5idWYgKworCQkJCSAgIGl0ZXItPmxldmVsc1swXS5wcmVmaXhfbGVuOworCWl0ZXItPmJhc2UuYmFzZW5hbWUgPSBpdGVyLT5iYXNlLnBhdGguYnVmICsKKwkJCSAgICAgIGl0ZXItPmxldmVsc1tpdGVyLT5sZXZlbHNfbnIgLSAxXS5wcmVmaXhfbGVuOworCisJaWYgKGl0ZXItPmZsYWdzICYgRElSX0lURVJBVE9SX0ZPTExPV19TWU1MSU5LUykKKwkJZXJyID0gc3RhdChpdGVyLT5iYXNlLnBhdGguYnVmLCAmaXRlci0+YmFzZS5zdCk7CisJZWxzZQorCQllcnIgPSBsc3RhdChpdGVyLT5iYXNlLnBhdGguYnVmLCAmaXRlci0+YmFzZS5zdCk7CisKKwlzYXZlZF9lcnJubyA9IGVycm5vOworCWlmIChlcnIgJiYgZXJybm8gIT0gRU5PRU5UKQorCQl3YXJuaW5nX2Vycm5vKCJmYWlsZWQgdG8gc3RhdCAnJXMnIiwgaXRlci0+YmFzZS5wYXRoLmJ1Zik7CisKKwllcnJubyA9IHNhdmVkX2Vycm5vOworCXJldHVybiBlcnI7Cit9CisKIGludCBkaXJfaXRlcmF0b3JfYWR2YW5jZShzdHJ1Y3QgZGlyX2l0ZXJhdG9yICpkaXJfaXRlcmF0b3IpCiB7CiAJc3RydWN0IGRpcl9pdGVyYXRvcl9pbnQgKml0ZXIgPQogCQkoc3RydWN0IGRpcl9pdGVyYXRvcl9pbnQgKilkaXJfaXRlcmF0b3I7CiAKKwlpZiAoU19JU0RJUihpdGVyLT5iYXNlLnN0LnN0X21vZGUpICYmIHB1c2hfbGV2ZWwoaXRlcikpIHsKKwkJaWYgKGVycm5vICE9IEVOT0VOVCAmJiBpdGVyLT5mbGFncyAmIERJUl9JVEVSQVRPUl9QRURBTlRJQykKKwkJCWdvdG8gZXJyb3Jfb3V0OworCQlpZiAoaXRlci0+bGV2ZWxzX25yID09IDApCisJCQlnb3RvIGVycm9yX291dDsKKwl9CisKKwkvKiBMb29wIHVudGlsIHdlIGZpbmQgYW4gZW50cnkgdGhhdCB3ZSBjYW4gZ2l2ZSBiYWNrIHRvIHRoZSBjYWxsZXIuICovCiAJd2hpbGUgKDEpIHsKKwkJc3RydWN0IGRpcmVudCAqZGU7CiAJCXN0cnVjdCBkaXJfaXRlcmF0b3JfbGV2ZWwgKmxldmVsID0KIAkJCSZpdGVyLT5sZXZlbHNbaXRlci0+bGV2ZWxzX25yIC0gMV07Ci0JCXN0cnVjdCBkaXJlbnQgKmRlOwogCi0JCWlmICghbGV2ZWwtPmluaXRpYWxpemVkKSB7Ci0JCQkvKgotCQkJICogTm90ZTogZGlyX2l0ZXJhdG9yX2JlZ2luKCkgZW5zdXJlcyB0aGF0Ci0JCQkgKiBwYXRoIGlzIG5vdCB0aGUgZW1wdHkgc3RyaW5nLgotCQkJICovCi0JCQlpZiAoIWlzX2Rpcl9zZXAoaXRlci0+YmFzZS5wYXRoLmJ1ZltpdGVyLT5iYXNlLnBhdGgubGVuIC0gMV0pKQotCQkJCXN0cmJ1Zl9hZGRjaCgmaXRlci0+YmFzZS5wYXRoLCAnLycpOwotCQkJbGV2ZWwtPnByZWZpeF9sZW4gPSBpdGVyLT5iYXNlLnBhdGgubGVuOworCQlzdHJidWZfc2V0bGVuKCZpdGVyLT5iYXNlLnBhdGgsIGxldmVsLT5wcmVmaXhfbGVuKTsKKwkJZXJybm8gPSAwOworCQlkZSA9IHJlYWRkaXIobGV2ZWwtPmRpcik7CiAKLQkJCWxldmVsLT5kaXIgPSBvcGVuZGlyKGl0ZXItPmJhc2UucGF0aC5idWYpOwotCQkJaWYgKCFsZXZlbC0+ZGlyICYmIGVycm5vICE9IEVOT0VOVCkgewotCQkJCXdhcm5pbmcoImVycm9yIG9wZW5pbmcgZGlyZWN0b3J5ICVzOiAlcyIsCi0JCQkJCWl0ZXItPmJhc2UucGF0aC5idWYsIHN0cmVycm9yKGVycm5vKSk7Ci0JCQkJLyogUG9wcGluZyB0aGUgbGV2ZWwgaXMgaGFuZGxlZCBiZWxvdyAqLwotCQkJfQotCi0JCQlsZXZlbC0+aW5pdGlhbGl6ZWQgPSAxOwotCQl9IGVsc2UgaWYgKFNfSVNESVIoaXRlci0+YmFzZS5zdC5zdF9tb2RlKSkgewotCQkJaWYgKGxldmVsLT5kaXJfc3RhdGUgPT0gRElSX1NUQVRFX0lURVIpIHsKLQkJCQkvKgotCQkJCSAqIFRoZSBkaXJlY3Rvcnkgd2FzIGp1c3QgaXRlcmF0ZWQKLQkJCQkgKiBvdmVyOyBub3cgcHJlcGFyZSB0byBpdGVyYXRlIGludG8KLQkJCQkgKiBpdC4KLQkJCQkgKi8KLQkJCQlsZXZlbC0+ZGlyX3N0YXRlID0gRElSX1NUQVRFX1JFQ1VSU0U7Ci0JCQkJQUxMT0NfR1JPVyhpdGVyLT5sZXZlbHMsIGl0ZXItPmxldmVsc19uciArIDEsCi0JCQkJCSAgIGl0ZXItPmxldmVsc19hbGxvYyk7Ci0JCQkJbGV2ZWwgPSAmaXRlci0+bGV2ZWxzW2l0ZXItPmxldmVsc19ucisrXTsKLQkJCQlsZXZlbC0+aW5pdGlhbGl6ZWQgPSAwOwotCQkJCWNvbnRpbnVlOwotCQkJfSBlbHNlIHsKLQkJCQkvKgotCQkJCSAqIFRoZSBkaXJlY3RvcnkgaGFzIGFscmVhZHkgYmVlbgotCQkJCSAqIGl0ZXJhdGVkIG92ZXIgYW5kIGl0ZXJhdGVkIGludG87Ci0JCQkJICogd2UncmUgZG9uZSB3aXRoIGl0LgotCQkJCSAqLwotCQkJfQotCQl9Ci0KLQkJaWYgKCFsZXZlbC0+ZGlyKSB7Ci0JCQkvKgotCQkJICogVGhpcyBsZXZlbCBpcyBleGhhdXN0ZWQgKG9yIHdhc24ndCBvcGVuZWQKLQkJCSAqIHN1Y2Nlc3NmdWxseSk7IHBvcCB1cCBhIGxldmVsLgotCQkJICovCi0JCQlpZiAoLS1pdGVyLT5sZXZlbHNfbnIgPT0gMCkKKwkJaWYgKCFkZSkgeworCQkJaWYgKGVycm5vKSB7CisJCQkJd2FybmluZ19lcnJubygiZXJyb3IgcmVhZGluZyBkaXJlY3RvcnkgJyVzJyIsCisJCQkJCSAgICAgIGl0ZXItPmJhc2UucGF0aC5idWYpOworCQkJCWlmIChpdGVyLT5mbGFncyAmIERJUl9JVEVSQVRPUl9QRURBTlRJQykKKwkJCQkJZ290byBlcnJvcl9vdXQ7CisJCQl9IGVsc2UgaWYgKHBvcF9sZXZlbChpdGVyKSA9PSAwKSB7CiAJCQkJcmV0dXJuIGRpcl9pdGVyYXRvcl9hYm9ydChkaXJfaXRlcmF0b3IpOwotCisJCQl9CiAJCQljb250aW51ZTsKIAkJfQogCi0JCS8qCi0JCSAqIExvb3AgdW50aWwgd2UgZmluZCBhbiBlbnRyeSB0aGF0IHdlIGNhbiBnaXZlIGJhY2sKLQkJICogdG8gdGhlIGNhbGxlcjoKLQkJICovCi0JCXdoaWxlICgxKSB7Ci0JCQlzdHJidWZfc2V0bGVuKCZpdGVyLT5iYXNlLnBhdGgsIGxldmVsLT5wcmVmaXhfbGVuKTsKLQkJCWVycm5vID0gMDsKLQkJCWRlID0gcmVhZGRpcihsZXZlbC0+ZGlyKTsKKwkJaWYgKGlzX2RvdF9vcl9kb3Rkb3QoZGUtPmRfbmFtZSkpCisJCQljb250aW51ZTsKIAotCQkJaWYgKCFkZSkgewotCQkJCS8qIFRoaXMgbGV2ZWwgaXMgZXhoYXVzdGVkOyBwb3AgdXAgYSBsZXZlbC4gKi8KLQkJCQlpZiAoZXJybm8pIHsKLQkJCQkJd2FybmluZygiZXJyb3IgcmVhZGluZyBkaXJlY3RvcnkgJXM6ICVzIiwKLQkJCQkJCWl0ZXItPmJhc2UucGF0aC5idWYsIHN0cmVycm9yKGVycm5vKSk7Ci0JCQkJfSBlbHNlIGlmIChjbG9zZWRpcihsZXZlbC0+ZGlyKSkKLQkJCQkJd2FybmluZygiZXJyb3IgY2xvc2luZyBkaXJlY3RvcnkgJXM6ICVzIiwKLQkJCQkJCWl0ZXItPmJhc2UucGF0aC5idWYsIHN0cmVycm9yKGVycm5vKSk7Ci0KLQkJCQlsZXZlbC0+ZGlyID0gTlVMTDsKLQkJCQlpZiAoLS1pdGVyLT5sZXZlbHNfbnIgPT0gMCkKLQkJCQkJcmV0dXJuIGRpcl9pdGVyYXRvcl9hYm9ydChkaXJfaXRlcmF0b3IpOwotCQkJCWJyZWFrOwotCQkJfQotCi0JCQlpZiAoaXNfZG90X29yX2RvdGRvdChkZS0+ZF9uYW1lKSkKLQkJCQljb250aW51ZTsKLQotCQkJc3RyYnVmX2FkZHN0cigmaXRlci0+YmFzZS5wYXRoLCBkZS0+ZF9uYW1lKTsKLQkJCWlmIChsc3RhdChpdGVyLT5iYXNlLnBhdGguYnVmLCAmaXRlci0+YmFzZS5zdCkgPCAwKSB7Ci0JCQkJaWYgKGVycm5vICE9IEVOT0VOVCkKLQkJCQkJd2FybmluZygiZXJyb3IgcmVhZGluZyBwYXRoICclcyc6ICVzIiwKLQkJCQkJCWl0ZXItPmJhc2UucGF0aC5idWYsCi0JCQkJCQlzdHJlcnJvcihlcnJubykpOwotCQkJCWNvbnRpbnVlOwotCQkJfQotCi0JCQkvKgotCQkJICogV2UgaGF2ZSB0byBzZXQgdGhlc2UgZWFjaCB0aW1lIGJlY2F1c2UKLQkJCSAqIHRoZSBwYXRoIHN0cmJ1ZiBtaWdodCBoYXZlIGJlZW4gcmVhbGxvYygpZWQuCi0JCQkgKi8KLQkJCWl0ZXItPmJhc2UucmVsYXRpdmVfcGF0aCA9Ci0JCQkJaXRlci0+YmFzZS5wYXRoLmJ1ZiArIGl0ZXItPmxldmVsc1swXS5wcmVmaXhfbGVuOwotCQkJaXRlci0+YmFzZS5iYXNlbmFtZSA9Ci0JCQkJaXRlci0+YmFzZS5wYXRoLmJ1ZiArIGxldmVsLT5wcmVmaXhfbGVuOwotCQkJbGV2ZWwtPmRpcl9zdGF0ZSA9IERJUl9TVEFURV9JVEVSOwotCi0JCQlyZXR1cm4gSVRFUl9PSzsKKwkJaWYgKHByZXBhcmVfbmV4dF9lbnRyeV9kYXRhKGl0ZXIsIGRlKSkgeworCQkJaWYgKGVycm5vICE9IEVOT0VOVCAmJiBpdGVyLT5mbGFncyAmIERJUl9JVEVSQVRPUl9QRURBTlRJQykKKwkJCQlnb3RvIGVycm9yX291dDsKKwkJCWNvbnRpbnVlOwogCQl9CisKKwkJcmV0dXJuIElURVJfT0s7CiAJfQorCitlcnJvcl9vdXQ6CisJZGlyX2l0ZXJhdG9yX2Fib3J0KGRpcl9pdGVyYXRvcik7CisJcmV0dXJuIElURVJfRVJST1I7CiB9CiAKIGludCBkaXJfaXRlcmF0b3JfYWJvcnQoc3RydWN0IGRpcl9pdGVyYXRvciAqZGlyX2l0ZXJhdG9yKQpAQCAtMTcwLDkgKzE4NSwxMSBAQAogCQkJJml0ZXItPmxldmVsc1tpdGVyLT5sZXZlbHNfbnIgLSAxXTsKIAogCQlpZiAobGV2ZWwtPmRpciAmJiBjbG9zZWRpcihsZXZlbC0+ZGlyKSkgeworCQkJaW50IHNhdmVkX2Vycm5vID0gZXJybm87CiAJCQlzdHJidWZfc2V0bGVuKCZpdGVyLT5iYXNlLnBhdGgsIGxldmVsLT5wcmVmaXhfbGVuKTsKLQkJCXdhcm5pbmcoImVycm9yIGNsb3NpbmcgZGlyZWN0b3J5ICVzOiAlcyIsCi0JCQkJaXRlci0+YmFzZS5wYXRoLmJ1Ziwgc3RyZXJyb3IoZXJybm8pKTsKKwkJCWVycm5vID0gc2F2ZWRfZXJybm87CisJCQl3YXJuaW5nX2Vycm5vKCJlcnJvciBjbG9zaW5nIGRpcmVjdG9yeSAnJXMnIiwKKwkJCQkgICAgICBpdGVyLT5iYXNlLnBhdGguYnVmKTsKIAkJfQogCX0KIApAQCAtMTgyLDIxICsxOTksMzcgQEAKIAlyZXR1cm4gSVRFUl9ET05FOwogfQogCi1zdHJ1Y3QgZGlyX2l0ZXJhdG9yICpkaXJfaXRlcmF0b3JfYmVnaW4oY29uc3QgY2hhciAqcGF0aCkKK3N0cnVjdCBkaXJfaXRlcmF0b3IgKmRpcl9pdGVyYXRvcl9iZWdpbihjb25zdCBjaGFyICpwYXRoLCB1bnNpZ25lZCBpbnQgZmxhZ3MpCiB7CiAJc3RydWN0IGRpcl9pdGVyYXRvcl9pbnQgKml0ZXIgPSB4Y2FsbG9jKDEsIHNpemVvZigqaXRlcikpOwogCXN0cnVjdCBkaXJfaXRlcmF0b3IgKmRpcl9pdGVyYXRvciA9ICZpdGVyLT5iYXNlOwotCi0JaWYgKCFwYXRoIHx8ICEqcGF0aCkKLQkJQlVHKCJlbXB0eSBwYXRoIHBhc3NlZCB0byBkaXJfaXRlcmF0b3JfYmVnaW4oKSIpOworCWludCBzYXZlZF9lcnJubzsKIAogCXN0cmJ1Zl9pbml0KCZpdGVyLT5iYXNlLnBhdGgsIFBBVEhfTUFYKTsKIAlzdHJidWZfYWRkc3RyKCZpdGVyLT5iYXNlLnBhdGgsIHBhdGgpOwogCiAJQUxMT0NfR1JPVyhpdGVyLT5sZXZlbHMsIDEwLCBpdGVyLT5sZXZlbHNfYWxsb2MpOworCWl0ZXItPmxldmVsc19uciA9IDA7CisJaXRlci0+ZmxhZ3MgPSBmbGFnczsKIAotCWl0ZXItPmxldmVsc19uciA9IDE7Ci0JaXRlci0+bGV2ZWxzWzBdLmluaXRpYWxpemVkID0gMDsKKwkvKgorCSAqIE5vdGU6IHN0YXQgYWxyZWFkeSBjaGVja3MgZm9yIE5VTEwgb3IgZW1wdHkgc3RyaW5ncyBhbmQKKwkgKiBpbmV4aXN0ZW50IHBhdGhzLgorCSAqLworCWlmIChzdGF0KGl0ZXItPmJhc2UucGF0aC5idWYsICZpdGVyLT5iYXNlLnN0KSA8IDApIHsKKwkJc2F2ZWRfZXJybm8gPSBlcnJubzsKKwkJZ290byBlcnJvcl9vdXQ7CisJfQorCisJaWYgKCFTX0lTRElSKGl0ZXItPmJhc2Uuc3Quc3RfbW9kZSkpIHsKKwkJc2F2ZWRfZXJybm8gPSBFTk9URElSOworCQlnb3RvIGVycm9yX291dDsKKwl9CiAKIAlyZXR1cm4gZGlyX2l0ZXJhdG9yOworCitlcnJvcl9vdXQ6CisJZGlyX2l0ZXJhdG9yX2Fib3J0KGRpcl9pdGVyYXRvcik7CisJZXJybm8gPSBzYXZlZF9lcnJubzsKKwlyZXR1cm4gTlVMTDsKIH0KZGlmZiAtLWdpdCBhL2Rpci1pdGVyYXRvci5oIGIvZGlyLWl0ZXJhdG9yLmgKaW5kZXggOTcwNzkzZC4uMDgyMjkxNSAxMDA2NDQKLS0tIGEvZGlyLWl0ZXJhdG9yLmgKKysrIGIvZGlyLWl0ZXJhdG9yLmgKQEAgLTgsMTggKzgsMjMgQEAKICAqCiAgKiBJdGVyYXRlIG92ZXIgYSBkaXJlY3RvcnkgdHJlZSwgcmVjdXJzaXZlbHksIGluY2x1ZGluZyBwYXRocyBvZiBhbGwKICAqIHR5cGVzIGFuZCBoaWRkZW4gcGF0aHMuIFNraXAgIi4iIGFuZCAiLi4iIGVudHJpZXMgYW5kIGRvbid0IGZvbGxvdwotICogc3ltbGlua3MgZXhjZXB0IGZvciB0aGUgb3JpZ2luYWwgcGF0aC4KKyAqIHN5bWxpbmtzIGV4Y2VwdCBmb3IgdGhlIG9yaWdpbmFsIHBhdGguIE5vdGUgdGhhdCB0aGUgb3JpZ2luYWwgcGF0aAorICogaXMgbm90IGluY2x1ZGVkIGluIHRoZSBpdGVyYXRpb24uCiAgKgogICogRXZlcnkgdGltZSBkaXJfaXRlcmF0b3JfYWR2YW5jZSgpIGlzIGNhbGxlZCwgdXBkYXRlIHRoZSBtZW1iZXJzIG9mCiAgKiB0aGUgZGlyX2l0ZXJhdG9yIHN0cnVjdHVyZSB0byByZWZsZWN0IHRoZSBuZXh0IHBhdGggaW4gdGhlCiAgKiBpdGVyYXRpb24uIFRoZSBvcmRlciB0aGF0IHBhdGhzIGFyZSBpdGVyYXRlZCBvdmVyIHdpdGhpbiBhCi0gKiBkaXJlY3RvcnkgaXMgdW5kZWZpbmVkLCBidXQgZGlyZWN0b3J5IHBhdGhzIGFyZSBhbHdheXMgaXRlcmF0ZWQKLSAqIG92ZXIgYmVmb3JlIHRoZSBzdWJkaXJlY3RvcnkgY29udGVudHMuCisgKiBkaXJlY3RvcnkgaXMgdW5kZWZpbmVkLCBkaXJlY3RvcnkgcGF0aHMgYXJlIGFsd2F5cyBnaXZlbiBiZWZvcmUKKyAqIHRoZWlyIGNvbnRlbnRzLgogICoKICAqIEEgdHlwaWNhbCBpdGVyYXRpb24gbG9va3MgbGlrZSB0aGlzOgogICoKICAqICAgICBpbnQgb2s7Ci0gKiAgICAgc3RydWN0IGl0ZXJhdG9yICppdGVyID0gZGlyX2l0ZXJhdG9yX2JlZ2luKHBhdGgpOworICogICAgIHVuc2lnbmVkIGludCBmbGFncyA9IERJUl9JVEVSQVRPUl9QRURBTlRJQzsKKyAqICAgICBzdHJ1Y3QgZGlyX2l0ZXJhdG9yICppdGVyID0gZGlyX2l0ZXJhdG9yX2JlZ2luKHBhdGgsIGZsYWdzKTsKKyAqCisgKiAgICAgaWYgKCFpdGVyKQorICogICAgICAgICAgICAgZ290byBlcnJvcl9oYW5kbGVyOwogICoKICAqICAgICB3aGlsZSAoKG9rID0gZGlyX2l0ZXJhdG9yX2FkdmFuY2UoaXRlcikpID09IElURVJfT0spIHsKICAqICAgICAgICAgICAgIGlmICh3YW50X3RvX3N0b3BfaXRlcmF0aW9uKCkpIHsKQEAgLTQwLDYgKzQ1LDI5IEBACiAgKiBkaXJfaXRlcmF0b3JfYWR2YW5jZSgpIGFnYWluLgogICovCiAKKy8qCisgKiBGbGFncyBmb3IgZGlyX2l0ZXJhdG9yX2JlZ2luOgorICoKKyAqIC0gRElSX0lURVJBVE9SX1BFREFOVElDOiBvdmVycmlkZSBkaXItaXRlcmF0b3IncyBkZWZhdWx0IGJlaGF2aW9yCisgKiAgIGluIGNhc2Ugb2YgYW4gZXJyb3IgYXQgZGlyX2l0ZXJhdG9yX2FkdmFuY2UoKSwgd2hpY2ggaXMgdG8ga2VlcAorICogICBsb29raW5nIGZvciBhIG5leHQgdmFsaWQgZW50cnkuIFdpdGggdGhpcyBmbGFnLCByZXNvdXJjZXMgYXJlIGZyZWVkCisgKiAgIGFuZCBJVEVSX0VSUk9SIGlzIHJldHVybmVkIGltbWVkaWF0ZWx5LiBJbiBib3RoIGNhc2VzLCBhIG1lYW5pbmdmdWwKKyAqICAgd2FybmluZyBpcyBlbWl0dGVkLiBOb3RlOiBFTk9FTlQgZXJyb3JzIGFyZSBhbHdheXMgaWdub3JlZCBzbyB0aGF0CisgKiAgIHRoZSBBUEkgdXNlcnMgbWF5IHJlbW92ZSBmaWxlcyBkdXJpbmcgaXRlcmF0aW9uLgorICoKKyAqIC0gRElSX0lURVJBVE9SX0ZPTExPV19TWU1MSU5LUzogbWFrZSBkaXItaXRlcmF0b3IgZm9sbG93IHN5bWxpbmtzLgorICogICBpLmUuLCBsaW5rZWQgZGlyZWN0b3JpZXMnIGNvbnRlbnRzIHdpbGwgYmUgaXRlcmF0ZWQgb3ZlciBhbmQKKyAqICAgaXRlci0+YmFzZS5zdCB3aWxsIGNvbnRhaW4gaW5mb3JtYXRpb24gb24gdGhlIHJlZmVycmVkIGZpbGVzLAorICogICBub3QgdGhlIHN5bWxpbmtzIHRoZW1zZWx2ZXMsIHdoaWNoIGlzIHRoZSBkZWZhdWx0IGJlaGF2aW9yLiBCcm9rZW4KKyAqICAgc3ltbGlua3MgYXJlIGlnbm9yZWQuCisgKgorICogV2FybmluZzogY2lyY3VsYXIgc3ltbGlua3MgYXJlIGFsc28gZm9sbG93ZWQgd2hlbgorICogRElSX0lURVJBVE9SX0ZPTExPV19TWU1MSU5LUyBpcyBzZXQuIFRoZSBpdGVyYXRpb24gbWF5IGVuZCB1cCB3aXRoCisgKiBhbiBFTE9PUCBpZiB0aGV5IGhhcHBlbiBhbmQgRElSX0lURVJBVE9SX1BFREFOVElDIGlzIHNldC4KKyAqLworI2RlZmluZSBESVJfSVRFUkFUT1JfUEVEQU5USUMgKDEgPDwgMCkKKyNkZWZpbmUgRElSX0lURVJBVE9SX0ZPTExPV19TWU1MSU5LUyAoMSA8PCAxKQorCiBzdHJ1Y3QgZGlyX2l0ZXJhdG9yIHsKIAkvKiBUaGUgY3VycmVudCBwYXRoOiAqLwogCXN0cnVjdCBzdHJidWYgcGF0aDsKQEAgLTU0LDI4ICs4MiwzOCBAQAogCS8qIFRoZSBjdXJyZW50IGJhc2VuYW1lOiAqLwogCWNvbnN0IGNoYXIgKmJhc2VuYW1lOwogCi0JLyogVGhlIHJlc3VsdCBvZiBjYWxsaW5nIGxzdGF0KCkgb24gcGF0aDogKi8KKwkvKgorCSAqIFRoZSByZXN1bHQgb2YgY2FsbGluZyBsc3RhdCgpIG9uIHBhdGg7IG9yIHN0YXQoKSwgaWYgdGhlCisJICogRElSX0lURVJBVE9SX0ZPTExPV19TWU1MSU5LUyBmbGFnIHdhcyBzZXQgYXQKKwkgKiBkaXJfaXRlcmF0b3IncyBpbml0aWFsaXphdGlvbi4KKwkgKi8KIAlzdHJ1Y3Qgc3RhdCBzdDsKIH07CiAKIC8qCi0gKiBTdGFydCBhIGRpcmVjdG9yeSBpdGVyYXRpb24gb3ZlciBwYXRoLiBSZXR1cm4gYSBkaXJfaXRlcmF0b3IgdGhhdAotICogaG9sZHMgdGhlIGludGVybmFsIHN0YXRlIG9mIHRoZSBpdGVyYXRpb24uCisgKiBTdGFydCBhIGRpcmVjdG9yeSBpdGVyYXRpb24gb3ZlciBwYXRoIHdpdGggdGhlIGNvbWJpbmF0aW9uIG9mCisgKiBvcHRpb25zIHNwZWNpZmllZCBieSBmbGFncy4gT24gc3VjY2VzcywgcmV0dXJuIGEgZGlyX2l0ZXJhdG9yCisgKiB0aGF0IGhvbGRzIHRoZSBpbnRlcm5hbCBzdGF0ZSBvZiB0aGUgaXRlcmF0aW9uLiBJbiBjYXNlIG9mCisgKiBmYWlsdXJlLCByZXR1cm4gTlVMTCBhbmQgc2V0IGVycm5vIGFjY29yZGluZ2x5LgogICoKICAqIFRoZSBpdGVyYXRpb24gaW5jbHVkZXMgYWxsIHBhdGhzIHVuZGVyIHBhdGgsIG5vdCBpbmNsdWRpbmcgcGF0aAogICogaXRzZWxmIGFuZCBub3QgaW5jbHVkaW5nICIuIiBvciAiLi4iIGVudHJpZXMuCiAgKgotICogcGF0aCBpcyB0aGUgc3RhcnRpbmcgZGlyZWN0b3J5LiBBbiBpbnRlcm5hbCBjb3B5IHdpbGwgYmUgbWFkZS4KKyAqIFBhcmFtZXRlcnMgYXJlOgorICogIC0gcGF0aCBpcyB0aGUgc3RhcnRpbmcgZGlyZWN0b3J5LiBBbiBpbnRlcm5hbCBjb3B5IHdpbGwgYmUgbWFkZS4KKyAqICAtIGZsYWdzIGlzIGEgY29tYmluYXRpb24gb2YgdGhlIHBvc3NpYmxlIGZsYWdzIHRvIGluaXRpYWxpemUgYQorICogICAgZGlyLWl0ZXJhdG9yIG9yIDAgZm9yIGRlZmF1bHQgYmVoYXZpb3IuCiAgKi8KLXN0cnVjdCBkaXJfaXRlcmF0b3IgKmRpcl9pdGVyYXRvcl9iZWdpbihjb25zdCBjaGFyICpwYXRoKTsKK3N0cnVjdCBkaXJfaXRlcmF0b3IgKmRpcl9pdGVyYXRvcl9iZWdpbihjb25zdCBjaGFyICpwYXRoLCB1bnNpZ25lZCBpbnQgZmxhZ3MpOwogCiAvKgogICogQWR2YW5jZSB0aGUgaXRlcmF0b3IgdG8gdGhlIGZpcnN0IG9yIG5leHQgaXRlbSBhbmQgcmV0dXJuIElURVJfT0suCiAgKiBJZiB0aGUgaXRlcmF0aW9uIGlzIGV4aGF1c3RlZCwgZnJlZSB0aGUgZGlyX2l0ZXJhdG9yIGFuZCBhbnkKLSAqIHJlc291cmNlcyBhc3NvY2lhdGVkIHdpdGggaXQgYW5kIHJldHVybiBJVEVSX0RPTkUuIE9uIGVycm9yLCBmcmVlCi0gKiBkaXJfaXRlcmF0b3IgYW5kIGFzc29jaWF0ZWQgcmVzb3VyY2VzIGFuZCByZXR1cm4gSVRFUl9FUlJPUi4gSXQgaXMKLSAqIGEgYnVnIHRvIHVzZSBpdGVyYXRvciBvciBjYWxsIHRoaXMgZnVuY3Rpb24gYWdhaW4gYWZ0ZXIgaXQgaGFzCi0gKiByZXR1cm5lZCBJVEVSX0RPTkUgb3IgSVRFUl9FUlJPUi4KKyAqIHJlc291cmNlcyBhc3NvY2lhdGVkIHdpdGggaXQgYW5kIHJldHVybiBJVEVSX0RPTkUuCisgKgorICogSXQgaXMgYSBidWcgdG8gdXNlIGl0ZXJhdG9yIG9yIGNhbGwgdGhpcyBmdW5jdGlvbiBhZ2FpbiBhZnRlciBpdAorICogaGFzIHJldHVybmVkIElURVJfRE9ORSBvciBJVEVSX0VSUk9SICh3aGljaCBtYXkgYmUgcmV0dXJuZWQgaWZmCisgKiB0aGUgRElSX0lURVJBVE9SX1BFREFOVElDIGZsYWcgd2FzIHNldCkuCiAgKi8KIGludCBkaXJfaXRlcmF0b3JfYWR2YW5jZShzdHJ1Y3QgZGlyX2l0ZXJhdG9yICppdGVyYXRvcik7CiAKZGlmZiAtLWdpdCBhL2Rpci5jIGIvZGlyLmMKaW5kZXggYWI2NDc3ZC4uMGZmYjFiMyAxMDA2NDQKLS0tIGEvZGlyLmMKKysrIGIvZGlyLmMKQEAgLTIsMTIgKzIsOSBAQAogICogVGhpcyBoYW5kbGVzIHJlY3Vyc2l2ZSBmaWxlbmFtZSBkZXRlY3Rpb24gd2l0aCBleGNsdWRlCiAgKiBmaWxlcywgaW5kZXgga25vd2xlZGdlIGV0Yy4uCiAgKgotICogU2VlIERvY3VtZW50YXRpb24vdGVjaG5pY2FsL2FwaS1kaXJlY3RvcnktbGlzdGluZy50eHQKLSAqCiAgKiBDb3B5cmlnaHQgKEMpIExpbnVzIFRvcnZhbGRzLCAyMDA1LTIwMDYKICAqCQkgSnVuaW8gSGFtYW5vLCAyMDA1LTIwMDYKICAqLwotI2RlZmluZSBOT19USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgImRpci5oIgpAQCAtNDQsNyArNDEsOCBAQAogCWludCBucl9maWxlczsKIAlpbnQgbnJfZGlyczsKIAotCXN0cnVjdCBkaXJlbnQgKmRlOworCWNvbnN0IGNoYXIgKmRfbmFtZTsKKwlpbnQgZF90eXBlOwogCWNvbnN0IGNoYXIgKmZpbGU7CiAJc3RydWN0IHVudHJhY2tlZF9jYWNoZV9kaXIgKnVjZDsKIH07CkBAIC01Myw4ICs1MSw4IEBACiAJc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIGNvbnN0IGNoYXIgKnBhdGgsIGludCBsZW4sCiAJc3RydWN0IHVudHJhY2tlZF9jYWNoZV9kaXIgKnVudHJhY2tlZCwKIAlpbnQgY2hlY2tfb25seSwgaW50IHN0b3BfYXRfZmlyc3RfZmlsZSwgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYyk7Ci1zdGF0aWMgaW50IGdldF9kdHlwZShzdHJ1Y3QgZGlyZW50ICpkZSwgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCi0JCSAgICAgY29uc3QgY2hhciAqcGF0aCwgaW50IGxlbik7CitzdGF0aWMgaW50IHJlc29sdmVfZHR5cGUoaW50IGR0eXBlLCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKKwkJCSBjb25zdCBjaGFyICpwYXRoLCBpbnQgbGVuKTsKIAogaW50IGNvdW50X3NsYXNoZXMoY29uc3QgY2hhciAqcykKIHsKQEAgLTE0MCw3ICsxMzgsNyBAQAogCSAqICI6KGljYXNlKXBhdGgiIGlzIHRyZWF0ZWQgYXMgYSBwYXRoc3BlYyBmdWxsIG9mCiAJICogd2lsZGNhcmQuIEluIG90aGVyIHdvcmRzLCBvbmx5IHByZWZpeCBpcyBjb25zaWRlcmVkIGNvbW1vbgogCSAqIHByZWZpeC4gSWYgdGhlIHBhdGhzcGVjIGlzIGFiYy9mb28gYWJjL2JhciwgcnVubmluZyBpbgotCSAqIHN1YmRpciB4eXosIHRoZSBjb21tb24gcHJlZml4IGlzIHN0aWxsIHh5eiwgbm90IHh1ei9hYmMgYXMKKwkgKiBzdWJkaXIgeHl6LCB0aGUgY29tbW9uIHByZWZpeCBpcyBzdGlsbCB4eXosIG5vdCB4eXovYWJjIGFzCiAJICogaW4gbm9uLTooaWNhc2UpLgogCSAqLwogCUdVQVJEX1BBVEhTUEVDKHBhdGhzcGVjLApAQCAtMjc0LDU3ICsyNzIsMzAgQEAKIAogI2RlZmluZSBET19NQVRDSF9FWENMVURFICAgKDE8PDApCiAjZGVmaW5lIERPX01BVENIX0RJUkVDVE9SWSAoMTw8MSkKLSNkZWZpbmUgRE9fTUFUQ0hfU1VCTU9EVUxFICgxPDwyKQotCi1zdGF0aWMgaW50IG1hdGNoX2F0dHJzKGNvbnN0IHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAotCQkgICAgICAgY29uc3QgY2hhciAqbmFtZSwgaW50IG5hbWVsZW4sCi0JCSAgICAgICBjb25zdCBzdHJ1Y3QgcGF0aHNwZWNfaXRlbSAqaXRlbSkKLXsKLQlpbnQgaTsKLQljaGFyICp0b19mcmVlID0gTlVMTDsKLQotCWlmIChuYW1lW25hbWVsZW5dKQotCQluYW1lID0gdG9fZnJlZSA9IHhtZW1kdXB6KG5hbWUsIG5hbWVsZW4pOwotCi0JZ2l0X2NoZWNrX2F0dHIoaXN0YXRlLCBuYW1lLCBpdGVtLT5hdHRyX2NoZWNrKTsKLQotCWZyZWUodG9fZnJlZSk7Ci0KLQlmb3IgKGkgPSAwOyBpIDwgaXRlbS0+YXR0cl9tYXRjaF9ucjsgaSsrKSB7Ci0JCWNvbnN0IGNoYXIgKnZhbHVlOwotCQlpbnQgbWF0Y2hlZDsKLQkJZW51bSBhdHRyX21hdGNoX21vZGUgbWF0Y2hfbW9kZTsKLQotCQl2YWx1ZSA9IGl0ZW0tPmF0dHJfY2hlY2stPml0ZW1zW2ldLnZhbHVlOwotCQltYXRjaF9tb2RlID0gaXRlbS0+YXR0cl9tYXRjaFtpXS5tYXRjaF9tb2RlOwotCi0JCWlmIChBVFRSX1RSVUUodmFsdWUpKQotCQkJbWF0Y2hlZCA9IChtYXRjaF9tb2RlID09IE1BVENIX1NFVCk7Ci0JCWVsc2UgaWYgKEFUVFJfRkFMU0UodmFsdWUpKQotCQkJbWF0Y2hlZCA9IChtYXRjaF9tb2RlID09IE1BVENIX1VOU0VUKTsKLQkJZWxzZSBpZiAoQVRUUl9VTlNFVCh2YWx1ZSkpCi0JCQltYXRjaGVkID0gKG1hdGNoX21vZGUgPT0gTUFUQ0hfVU5TUEVDSUZJRUQpOwotCQllbHNlCi0JCQltYXRjaGVkID0gKG1hdGNoX21vZGUgPT0gTUFUQ0hfVkFMVUUgJiYKLQkJCQkgICAhc3RyY21wKGl0ZW0tPmF0dHJfbWF0Y2hbaV0udmFsdWUsIHZhbHVlKSk7Ci0JCWlmICghbWF0Y2hlZCkKLQkJCXJldHVybiAwOwotCX0KLQotCXJldHVybiAxOwotfQorI2RlZmluZSBET19NQVRDSF9MRUFESU5HX1BBVEhTUEVDICgxPDwyKQogCiAvKgotICogRG9lcyAnbWF0Y2gnIG1hdGNoIHRoZSBnaXZlbiBuYW1lPwotICogQSBtYXRjaCBpcyBmb3VuZCBpZgorICogRG9lcyB0aGUgZ2l2ZW4gcGF0aHNwZWMgbWF0Y2ggdGhlIGdpdmVuIG5hbWU/ICBBIG1hdGNoIGlzIGZvdW5kIGlmCiAgKgotICogKDEpIHRoZSAnbWF0Y2gnIHN0cmluZyBpcyBsZWFkaW5nIGRpcmVjdG9yeSBvZiAnbmFtZScsIG9yCi0gKiAoMikgdGhlICdtYXRjaCcgc3RyaW5nIGlzIGEgd2lsZGNhcmQgYW5kIG1hdGNoZXMgJ25hbWUnLCBvcgotICogKDMpIHRoZSAnbWF0Y2gnIHN0cmluZyBpcyBleGFjdGx5IHRoZSBzYW1lIGFzICduYW1lJy4KKyAqICgxKSB0aGUgcGF0aHNwZWMgc3RyaW5nIGlzIGxlYWRpbmcgZGlyZWN0b3J5IG9mICduYW1lJyAoIlJFQ1VSU0lWRUxZIiksIG9yCisgKiAoMikgdGhlIHBhdGhzcGVjIHN0cmluZyBoYXMgYSBsZWFkaW5nIHBhcnQgbWF0Y2hpbmcgJ25hbWUnICgiTEVBRElORyIpLCBvcgorICogKDMpIHRoZSBwYXRoc3BlYyBzdHJpbmcgaXMgYSB3aWxkY2FyZCBhbmQgbWF0Y2hlcyAnbmFtZScgKCJXSUxEQ0FSRCIpLCBvcgorICogKDQpIHRoZSBwYXRoc3BlYyBzdHJpbmcgaXMgZXhhY3RseSB0aGUgc2FtZSBhcyAnbmFtZScgKCJFWEFDVCIpLgogICoKLSAqIGFuZCB0aGUgcmV0dXJuIHZhbHVlIHRlbGxzIHdoaWNoIGNhc2UgaXQgd2FzLgorICogUmV0dXJuIHZhbHVlIHRlbGxzIHdoaWNoIGNhc2UgaXQgd2FzICgxLTQpLCBvciAwIHdoZW4gdGhlcmUgaXMgbm8gbWF0Y2guCiAgKgotICogSXQgcmV0dXJucyAwIHdoZW4gdGhlcmUgaXMgbm8gbWF0Y2guCisgKiBJdCBtYXkgYmUgaW5zdHJ1Y3RpdmUgdG8gbG9vayBhdCBhIHNtYWxsIHRhYmxlIG9mIGNvbmNyZXRlIGV4YW1wbGVzCisgKiB0byB1bmRlcnN0YW5kIHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIDEsIDIsIGFuZCA0OgorICoKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGF0aHNwZWNzCisgKiAgICAgICAgICAgICAgICB8ICAgIGEvYiAgICB8ICAgYS9iLyAgICB8ICAgYS9iL2MKKyAqICAgICAgICAgIC0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyAqICAgICAgICAgIGEvYiAgIHwgIEVYQUNUICAgIHwgIEVYQUNUWzFdIHwgTEVBRElOR1syXQorICogIE5hbWVzICAgYS9iLyAgfCBSRUNVUlNJVkUgfCAgIEVYQUNUICAgfCBMRUFESU5HWzJdCisgKiAgICAgICAgICBhL2IvYyB8IFJFQ1VSU0lWRSB8IFJFQ1VSU0lWRSB8ICAgRVhBQ1QKKyAqCisgKiBbMV0gT25seSBpZiBET19NQVRDSF9ESVJFQ1RPUlkgaXMgcGFzc2VkOyBvdGhlcndpc2UsIHRoaXMgaXMgTk9UIGEgbWF0Y2guCisgKiBbMl0gT25seSBpZiBET19NQVRDSF9MRUFESU5HX1BBVEhTUEVDIGlzIHBhc3NlZDsgb3RoZXJ3aXNlLCBub3QgYSBtYXRjaC4KICAqLwogc3RhdGljIGludCBtYXRjaF9wYXRoc3BlY19pdGVtKGNvbnN0IHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAogCQkJICAgICAgIGNvbnN0IHN0cnVjdCBwYXRoc3BlY19pdGVtICppdGVtLCBpbnQgcHJlZml4LApAQCAtMzY3LDcgKzMzOCw4IEBACiAJICAgIHN0cm5jbXAoaXRlbS0+bWF0Y2gsIG5hbWUgLSBwcmVmaXgsIGl0ZW0tPnByZWZpeCkpCiAJCXJldHVybiAwOwogCi0JaWYgKGl0ZW0tPmF0dHJfbWF0Y2hfbnIgJiYgIW1hdGNoX2F0dHJzKGlzdGF0ZSwgbmFtZSwgbmFtZWxlbiwgaXRlbSkpCisJaWYgKGl0ZW0tPmF0dHJfbWF0Y2hfbnIgJiYKKwkgICAgIW1hdGNoX3BhdGhzcGVjX2F0dHJzKGlzdGF0ZSwgbmFtZSwgbmFtZWxlbiwgaXRlbSkpCiAJCXJldHVybiAwOwogCiAJLyogSWYgdGhlIG1hdGNoIHdhcyBqdXN0IHRoZSBwcmVmaXgsIHdlIG1hdGNoZWQgKi8KQEAgLTM5MSwyMSArMzYzLDI5IEBACiAJCQkgaXRlbS0+bm93aWxkY2FyZF9sZW4gLSBwcmVmaXgpKQogCQlyZXR1cm4gTUFUQ0hFRF9GTk1BVENIOwogCi0JLyogUGVyZm9ybSBjaGVja3MgdG8gc2VlIGlmICJuYW1lIiBpcyBhIHN1cGVyIHNldCBvZiB0aGUgcGF0aHNwZWMgKi8KLQlpZiAoZmxhZ3MgJiBET19NQVRDSF9TVUJNT0RVTEUpIHsKKwkvKiBQZXJmb3JtIGNoZWNrcyB0byBzZWUgaWYgIm5hbWUiIGlzIGEgbGVhZGluZyBzdHJpbmcgb2YgdGhlIHBhdGhzcGVjICovCisJaWYgKGZsYWdzICYgRE9fTUFUQ0hfTEVBRElOR19QQVRIU1BFQykgewogCQkvKiBuYW1lIGlzIGEgbGl0ZXJhbCBwcmVmaXggb2YgdGhlIHBhdGhzcGVjICovCisJCWludCBvZmZzZXQgPSBuYW1lW25hbWVsZW4tMV0gPT0gJy8nID8gMSA6IDA7CiAJCWlmICgobmFtZWxlbiA8IG1hdGNobGVuKSAmJgotCQkgICAgKG1hdGNoW25hbWVsZW5dID09ICcvJykgJiYKKwkJICAgIChtYXRjaFtuYW1lbGVuLW9mZnNldF0gPT0gJy8nKSAmJgogCQkgICAgIXBzX3N0cm5jbXAoaXRlbSwgbWF0Y2gsIG5hbWUsIG5hbWVsZW4pKQotCQkJcmV0dXJuIE1BVENIRURfUkVDVVJTSVZFTFk7CisJCQlyZXR1cm4gTUFUQ0hFRF9SRUNVUlNJVkVMWV9MRUFESU5HX1BBVEhTUEVDOwogCi0JCS8qIG5hbWUiIGRvZXNuJ3QgbWF0Y2ggdXAgdG8gdGhlIGZpcnN0IHdpbGQgY2hhcmFjdGVyICovCisJCS8qIG5hbWUgZG9lc24ndCBtYXRjaCB1cCB0byB0aGUgZmlyc3Qgd2lsZCBjaGFyYWN0ZXIgKi8KIAkJaWYgKGl0ZW0tPm5vd2lsZGNhcmRfbGVuIDwgaXRlbS0+bGVuICYmCiAJCSAgICBwc19zdHJuY21wKGl0ZW0sIG1hdGNoLCBuYW1lLAogCQkJICAgICAgIGl0ZW0tPm5vd2lsZGNhcmRfbGVuIC0gcHJlZml4KSkKIAkJCXJldHVybiAwOwogCiAJCS8qCisJCSAqIG5hbWUgaGFzIG5vIHdpbGRjYXJkLCBhbmQgaXQgZGlkbid0IG1hdGNoIGFzIGEgbGVhZGluZworCQkgKiBwYXRoc3BlYyBzbyByZXR1cm4uCisJCSAqLworCQlpZiAoaXRlbS0+bm93aWxkY2FyZF9sZW4gPT0gaXRlbS0+bGVuKQorCQkJcmV0dXJuIDA7CisKKwkJLyoKIAkJICogSGVyZSBpcyB3aGVyZSB3ZSB3b3VsZCBwZXJmb3JtIGEgd2lsZG1hdGNoIHRvIGNoZWNrIGlmCiAJCSAqICJuYW1lIiBjYW4gYmUgbWF0Y2hlZCBhcyBhIGRpcmVjdG9yeSAob3IgYSBwcmVmaXgpIGFnYWluc3QKIAkJICogdGhlIHBhdGhzcGVjLiAgU2luY2Ugd2lsZG1hdGNoIGRvZXNuJ3QgaGF2ZSB0aGlzIGNhcGFiaWxpdHkKQEAgLTQxNCw3ICszOTQsNyBAQAogCQkgKiBUaGUgc3VibW9kdWxlcyB0aGVtc2VsdmVzIHdpbGwgYmUgYWJsZSB0byBwZXJmb3JtIG1vcmUKIAkJICogYWNjdXJhdGUgbWF0Y2hpbmcgdG8gZGV0ZXJtaW5lIGlmIHRoZSBwYXRoc3BlYyBtYXRjaGVzLgogCQkgKi8KLQkJcmV0dXJuIE1BVENIRURfUkVDVVJTSVZFTFk7CisJCXJldHVybiBNQVRDSEVEX1JFQ1VSU0lWRUxZX0xFQURJTkdfUEFUSFNQRUM7CiAJfQogCiAJcmV0dXJuIDA7CkBAIC01MzUsMTMgKzUxNSwxMiBAQAogCQkJCQlzdHJsZW4oc3VibW9kdWxlX25hbWUpLAogCQkJCQkwLCBzZWVuLAogCQkJCQlET19NQVRDSF9ESVJFQ1RPUlkgfAotCQkJCQlET19NQVRDSF9TVUJNT0RVTEUpOworCQkJCQlET19NQVRDSF9MRUFESU5HX1BBVEhTUEVDKTsKIAlyZXR1cm4gbWF0Y2hlZDsKIH0KIAogaW50IHJlcG9ydF9wYXRoX2Vycm9yKGNvbnN0IGNoYXIgKnBzX21hdGNoZWQsCi0JCSAgICAgIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCi0JCSAgICAgIGNvbnN0IGNoYXIgKnByZWZpeCkKKwkJICAgICAgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYykKIHsKIAkvKgogCSAqIE1ha2Ugc3VyZSBhbGwgcGF0aHNwZWMgbWF0Y2hlZDsgb3RoZXJ3aXNlIGl0IGlzIGFuIGVycm9yLgpAQCAtNjAwLDcgKzU3OSw3IEBACiAJcmV0dXJuIHN0cmluZ1tzaW1wbGVfbGVuZ3RoKHN0cmluZyldID09ICdcMCc7CiB9CiAKLXZvaWQgcGFyc2VfZXhjbHVkZV9wYXR0ZXJuKGNvbnN0IGNoYXIgKipwYXR0ZXJuLAordm9pZCBwYXJzZV9wYXRoX3BhdHRlcm4oY29uc3QgY2hhciAqKnBhdHRlcm4sCiAJCQkgICBpbnQgKnBhdHRlcm5sZW4sCiAJCQkgICB1bnNpZ25lZCAqZmxhZ3MsCiAJCQkgICBpbnQgKm5vd2lsZGNhcmRsZW4pCkBAIC02MTAsMjAgKzU4OSwyMCBAQAogCiAJKmZsYWdzID0gMDsKIAlpZiAoKnAgPT0gJyEnKSB7Ci0JCSpmbGFncyB8PSBFWENfRkxBR19ORUdBVElWRTsKKwkJKmZsYWdzIHw9IFBBVFRFUk5fRkxBR19ORUdBVElWRTsKIAkJcCsrOwogCX0KIAlsZW4gPSBzdHJsZW4ocCk7CiAJaWYgKGxlbiAmJiBwW2xlbiAtIDFdID09ICcvJykgewogCQlsZW4tLTsKLQkJKmZsYWdzIHw9IEVYQ19GTEFHX01VU1RCRURJUjsKKwkJKmZsYWdzIHw9IFBBVFRFUk5fRkxBR19NVVNUQkVESVI7CiAJfQogCWZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykgewogCQlpZiAocFtpXSA9PSAnLycpCiAJCQlicmVhazsKIAl9CiAJaWYgKGkgPT0gbGVuKQotCQkqZmxhZ3MgfD0gRVhDX0ZMQUdfTk9ESVI7CisJCSpmbGFncyB8PSBQQVRURVJOX0ZMQUdfTk9ESVI7CiAJKm5vd2lsZGNhcmRsZW4gPSBzaW1wbGVfbGVuZ3RoKHApOwogCS8qCiAJICogd2Ugc2hvdWxkIGhhdmUgZXhjbHVkZWQgdGhlIHRyYWlsaW5nIHNsYXNoIGZyb20gJ3AnIHRvbywKQEAgLTYzMywzNSArNjEyLDI2MSBAQAogCWlmICgqbm93aWxkY2FyZGxlbiA+IGxlbikKIAkJKm5vd2lsZGNhcmRsZW4gPSBsZW47CiAJaWYgKCpwID09ICcqJyAmJiBub193aWxkY2FyZChwICsgMSkpCi0JCSpmbGFncyB8PSBFWENfRkxBR19FTkRTV0lUSDsKKwkJKmZsYWdzIHw9IFBBVFRFUk5fRkxBR19FTkRTV0lUSDsKIAkqcGF0dGVybiA9IHA7CiAJKnBhdHRlcm5sZW4gPSBsZW47CiB9CiAKLXZvaWQgYWRkX2V4Y2x1ZGUoY29uc3QgY2hhciAqc3RyaW5nLCBjb25zdCBjaGFyICpiYXNlLAotCQkgaW50IGJhc2VsZW4sIHN0cnVjdCBleGNsdWRlX2xpc3QgKmVsLCBpbnQgc3JjcG9zKQoraW50IHBsX2hhc2htYXBfY21wKGNvbnN0IHZvaWQgKnVudXNlZF9jbXBfZGF0YSwKKwkJICAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmEsCisJCSAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICpiLAorCQkgICBjb25zdCB2b2lkICprZXkpCiB7Ci0Jc3RydWN0IGV4Y2x1ZGUgKng7CisJY29uc3Qgc3RydWN0IHBhdHRlcm5fZW50cnkgKmVlMSA9CisJCQljb250YWluZXJfb2YoYSwgc3RydWN0IHBhdHRlcm5fZW50cnksIGVudCk7CisJY29uc3Qgc3RydWN0IHBhdHRlcm5fZW50cnkgKmVlMiA9CisJCQljb250YWluZXJfb2YoYiwgc3RydWN0IHBhdHRlcm5fZW50cnksIGVudCk7CisKKwlzaXplX3QgbWluX2xlbiA9IGVlMS0+cGF0dGVybmxlbiA8PSBlZTItPnBhdHRlcm5sZW4KKwkJCSA/IGVlMS0+cGF0dGVybmxlbgorCQkJIDogZWUyLT5wYXR0ZXJubGVuOworCisJaWYgKGlnbm9yZV9jYXNlKQorCQlyZXR1cm4gc3RybmNhc2VjbXAoZWUxLT5wYXR0ZXJuLCBlZTItPnBhdHRlcm4sIG1pbl9sZW4pOworCXJldHVybiBzdHJuY21wKGVlMS0+cGF0dGVybiwgZWUyLT5wYXR0ZXJuLCBtaW5fbGVuKTsKK30KKworc3RhdGljIGNoYXIgKmR1cF9hbmRfZmlsdGVyX3BhdHRlcm4oY29uc3QgY2hhciAqcGF0dGVybikKK3sKKwljaGFyICpzZXQsICpyZWFkOworCXNpemVfdCBjb3VudCAgPSAwOworCWNoYXIgKnJlc3VsdCA9IHhzdHJkdXAocGF0dGVybik7CisKKwlzZXQgPSByZXN1bHQ7CisJcmVhZCA9IHJlc3VsdDsKKworCXdoaWxlICgqcmVhZCkgeworCQkvKiBza2lwIGVzY2FwZSBjaGFyYWN0ZXJzIChvbmNlKSAqLworCQlpZiAoKnJlYWQgPT0gJ1xcJykKKwkJCXJlYWQrKzsKKworCQkqc2V0ID0gKnJlYWQ7CisKKwkJc2V0Kys7CisJCXJlYWQrKzsKKwkJY291bnQrKzsKKwl9CisJKnNldCA9IDA7CisKKwlpZiAoY291bnQgPiAyICYmCisJICAgICooc2V0IC0gMSkgPT0gJyonICYmCisJICAgICooc2V0IC0gMikgPT0gJy8nKQorCQkqKHNldCAtIDIpID0gMDsKKworCXJldHVybiByZXN1bHQ7Cit9CisKK3N0YXRpYyB2b2lkIGFkZF9wYXR0ZXJuX3RvX2hhc2hzZXRzKHN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsLCBzdHJ1Y3QgcGF0aF9wYXR0ZXJuICpnaXZlbikKK3sKKwlzdHJ1Y3QgcGF0dGVybl9lbnRyeSAqdHJhbnNsYXRlZDsKKwljaGFyICp0cnVuY2F0ZWQ7CisJY2hhciAqZGF0YSA9IE5VTEw7CisJY29uc3QgY2hhciAqcHJldiwgKmN1ciwgKm5leHQ7CisKKwlpZiAoIXBsLT51c2VfY29uZV9wYXR0ZXJucykKKwkJcmV0dXJuOworCisJaWYgKGdpdmVuLT5mbGFncyAmIFBBVFRFUk5fRkxBR19ORUdBVElWRSAmJgorCSAgICBnaXZlbi0+ZmxhZ3MgJiBQQVRURVJOX0ZMQUdfTVVTVEJFRElSICYmCisJICAgICFzdHJjbXAoZ2l2ZW4tPnBhdHRlcm4sICIvKiIpKSB7CisJCXBsLT5mdWxsX2NvbmUgPSAwOworCQlyZXR1cm47CisJfQorCisJaWYgKCFnaXZlbi0+ZmxhZ3MgJiYgIXN0cmNtcChnaXZlbi0+cGF0dGVybiwgIi8qIikpIHsKKwkJcGwtPmZ1bGxfY29uZSA9IDE7CisJCXJldHVybjsKKwl9CisKKwlpZiAoZ2l2ZW4tPnBhdHRlcm5sZW4gPCAyIHx8CisJICAgICpnaXZlbi0+cGF0dGVybiA9PSAnKicgfHwKKwkgICAgc3Ryc3RyKGdpdmVuLT5wYXR0ZXJuLCAiKioiKSkgeworCQkvKiBOb3QgYSBjb25lIHBhdHRlcm4uICovCisJCXdhcm5pbmcoXygidW5yZWNvZ25pemVkIHBhdHRlcm46ICclcyciKSwgZ2l2ZW4tPnBhdHRlcm4pOworCQlnb3RvIGNsZWFyX2hhc2htYXBzOworCX0KKworCXByZXYgPSBnaXZlbi0+cGF0dGVybjsKKwljdXIgPSBnaXZlbi0+cGF0dGVybiArIDE7CisJbmV4dCA9IGdpdmVuLT5wYXR0ZXJuICsgMjsKKworCXdoaWxlICgqY3VyKSB7CisJCS8qIFdhdGNoIGZvciBnbG9iIGNoYXJhY3RlcnMgJyonLCAnXCcsICdbJywgJz8nICovCisJCWlmICghaXNfZ2xvYl9zcGVjaWFsKCpjdXIpKQorCQkJZ290byBpbmNyZW1lbnQ7CisKKwkJLyogQnV0IG9ubHkgaWYgKnByZXYgIT0gJ1xcJyAqLworCQlpZiAoKnByZXYgPT0gJ1xcJykKKwkJCWdvdG8gaW5jcmVtZW50OworCisJCS8qIEJ1dCBhbGxvdyB0aGUgaW5pdGlhbCAnXCcgKi8KKwkJaWYgKCpjdXIgPT0gJ1xcJyAmJgorCQkgICAgaXNfZ2xvYl9zcGVjaWFsKCpuZXh0KSkKKwkJCWdvdG8gaW5jcmVtZW50OworCisJCS8qIEJ1dCBhIHRyYWlsaW5nICcvJyB0aGVuICcqJyBpcyBmaW5lICovCisJCWlmICgqcHJldiA9PSAnLycgJiYKKwkJICAgICpjdXIgPT0gJyonICYmCisJCSAgICAqbmV4dCA9PSAwKQorCQkJZ290byBpbmNyZW1lbnQ7CisKKwkJLyogTm90IGEgY29uZSBwYXR0ZXJuLiAqLworCQl3YXJuaW5nKF8oInVucmVjb2duaXplZCBwYXR0ZXJuOiAnJXMnIiksIGdpdmVuLT5wYXR0ZXJuKTsKKwkJZ290byBjbGVhcl9oYXNobWFwczsKKworCWluY3JlbWVudDoKKwkJcHJldisrOworCQljdXIrKzsKKwkJbmV4dCsrOworCX0KKworCWlmIChnaXZlbi0+cGF0dGVybmxlbiA+IDIgJiYKKwkgICAgIXN0cmNtcChnaXZlbi0+cGF0dGVybiArIGdpdmVuLT5wYXR0ZXJubGVuIC0gMiwgIi8qIikpIHsKKwkJaWYgKCEoZ2l2ZW4tPmZsYWdzICYgUEFUVEVSTl9GTEFHX05FR0FUSVZFKSkgeworCQkJLyogTm90IGEgY29uZSBwYXR0ZXJuLiAqLworCQkJd2FybmluZyhfKCJ1bnJlY29nbml6ZWQgcGF0dGVybjogJyVzJyIpLCBnaXZlbi0+cGF0dGVybik7CisJCQlnb3RvIGNsZWFyX2hhc2htYXBzOworCQl9CisKKwkJdHJ1bmNhdGVkID0gZHVwX2FuZF9maWx0ZXJfcGF0dGVybihnaXZlbi0+cGF0dGVybik7CisKKwkJdHJhbnNsYXRlZCA9IHhtYWxsb2Moc2l6ZW9mKHN0cnVjdCBwYXR0ZXJuX2VudHJ5KSk7CisJCXRyYW5zbGF0ZWQtPnBhdHRlcm4gPSB0cnVuY2F0ZWQ7CisJCXRyYW5zbGF0ZWQtPnBhdHRlcm5sZW4gPSBnaXZlbi0+cGF0dGVybmxlbiAtIDI7CisJCWhhc2htYXBfZW50cnlfaW5pdCgmdHJhbnNsYXRlZC0+ZW50LAorCQkJCSAgIGlnbm9yZV9jYXNlID8KKwkJCQkgICBzdHJpaGFzaCh0cmFuc2xhdGVkLT5wYXR0ZXJuKSA6CisJCQkJICAgc3RyaGFzaCh0cmFuc2xhdGVkLT5wYXR0ZXJuKSk7CisKKwkJaWYgKCFoYXNobWFwX2dldF9lbnRyeSgmcGwtPnJlY3Vyc2l2ZV9oYXNobWFwLAorCQkJCSAgICAgICB0cmFuc2xhdGVkLCBlbnQsIE5VTEwpKSB7CisJCQkvKiBXZSBkaWQgbm90IHNlZSB0aGUgInBhcmVudCIgaW5jbHVkZWQgKi8KKwkJCXdhcm5pbmcoXygidW5yZWNvZ25pemVkIG5lZ2F0aXZlIHBhdHRlcm46ICclcyciKSwKKwkJCQlnaXZlbi0+cGF0dGVybik7CisJCQlmcmVlKHRydW5jYXRlZCk7CisJCQlmcmVlKHRyYW5zbGF0ZWQpOworCQkJZ290byBjbGVhcl9oYXNobWFwczsKKwkJfQorCisJCWhhc2htYXBfYWRkKCZwbC0+cGFyZW50X2hhc2htYXAsICZ0cmFuc2xhdGVkLT5lbnQpOworCQloYXNobWFwX3JlbW92ZSgmcGwtPnJlY3Vyc2l2ZV9oYXNobWFwLCAmdHJhbnNsYXRlZC0+ZW50LCAmZGF0YSk7CisJCWZyZWUoZGF0YSk7CisJCXJldHVybjsKKwl9CisKKwlpZiAoZ2l2ZW4tPmZsYWdzICYgUEFUVEVSTl9GTEFHX05FR0FUSVZFKSB7CisJCXdhcm5pbmcoXygidW5yZWNvZ25pemVkIG5lZ2F0aXZlIHBhdHRlcm46ICclcyciKSwKKwkJCWdpdmVuLT5wYXR0ZXJuKTsKKwkJZ290byBjbGVhcl9oYXNobWFwczsKKwl9CisKKwl0cmFuc2xhdGVkID0geG1hbGxvYyhzaXplb2Yoc3RydWN0IHBhdHRlcm5fZW50cnkpKTsKKworCXRyYW5zbGF0ZWQtPnBhdHRlcm4gPSBkdXBfYW5kX2ZpbHRlcl9wYXR0ZXJuKGdpdmVuLT5wYXR0ZXJuKTsKKwl0cmFuc2xhdGVkLT5wYXR0ZXJubGVuID0gZ2l2ZW4tPnBhdHRlcm5sZW47CisJaGFzaG1hcF9lbnRyeV9pbml0KCZ0cmFuc2xhdGVkLT5lbnQsCisJCQkgICBpZ25vcmVfY2FzZSA/CisJCQkgICBzdHJpaGFzaCh0cmFuc2xhdGVkLT5wYXR0ZXJuKSA6CisJCQkgICBzdHJoYXNoKHRyYW5zbGF0ZWQtPnBhdHRlcm4pKTsKKworCWhhc2htYXBfYWRkKCZwbC0+cmVjdXJzaXZlX2hhc2htYXAsICZ0cmFuc2xhdGVkLT5lbnQpOworCisJaWYgKGhhc2htYXBfZ2V0X2VudHJ5KCZwbC0+cGFyZW50X2hhc2htYXAsIHRyYW5zbGF0ZWQsIGVudCwgTlVMTCkpIHsKKwkJLyogd2UgYWxyZWFkeSBpbmNsdWRlZCB0aGlzIGF0IHRoZSBwYXJlbnQgbGV2ZWwgKi8KKwkJd2FybmluZyhfKCJ5b3VyIHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBoYXZlIGlzc3VlczogcGF0dGVybiAnJXMnIGlzIHJlcGVhdGVkIiksCisJCQlnaXZlbi0+cGF0dGVybik7CisJCWhhc2htYXBfcmVtb3ZlKCZwbC0+cGFyZW50X2hhc2htYXAsICZ0cmFuc2xhdGVkLT5lbnQsICZkYXRhKTsKKwkJZnJlZShkYXRhKTsKKwkJZnJlZSh0cmFuc2xhdGVkKTsKKwl9CisKKwlyZXR1cm47CisKK2NsZWFyX2hhc2htYXBzOgorCXdhcm5pbmcoXygiZGlzYWJsaW5nIGNvbmUgcGF0dGVybiBtYXRjaGluZyIpKTsKKwloYXNobWFwX2ZyZWVfZW50cmllcygmcGwtPnBhcmVudF9oYXNobWFwLCBzdHJ1Y3QgcGF0dGVybl9lbnRyeSwgZW50KTsKKwloYXNobWFwX2ZyZWVfZW50cmllcygmcGwtPnJlY3Vyc2l2ZV9oYXNobWFwLCBzdHJ1Y3QgcGF0dGVybl9lbnRyeSwgZW50KTsKKwlwbC0+dXNlX2NvbmVfcGF0dGVybnMgPSAwOworfQorCitzdGF0aWMgaW50IGhhc2htYXBfY29udGFpbnNfcGF0aChzdHJ1Y3QgaGFzaG1hcCAqbWFwLAorCQkJCSBzdHJ1Y3Qgc3RyYnVmICpwYXR0ZXJuKQoreworCXN0cnVjdCBwYXR0ZXJuX2VudHJ5IHA7CisKKwkvKiBDaGVjayBzdHJhaWdodCBtYXBwaW5nICovCisJcC5wYXR0ZXJuID0gcGF0dGVybi0+YnVmOworCXAucGF0dGVybmxlbiA9IHBhdHRlcm4tPmxlbjsKKwloYXNobWFwX2VudHJ5X2luaXQoJnAuZW50LAorCQkJICAgaWdub3JlX2Nhc2UgPworCQkJICAgc3RyaWhhc2gocC5wYXR0ZXJuKSA6CisJCQkgICBzdHJoYXNoKHAucGF0dGVybikpOworCXJldHVybiAhIWhhc2htYXBfZ2V0X2VudHJ5KG1hcCwgJnAsIGVudCwgTlVMTCk7Cit9CisKK2ludCBoYXNobWFwX2NvbnRhaW5zX3BhcmVudChzdHJ1Y3QgaGFzaG1hcCAqbWFwLAorCQkJICAgIGNvbnN0IGNoYXIgKnBhdGgsCisJCQkgICAgc3RydWN0IHN0cmJ1ZiAqYnVmZmVyKQoreworCWNoYXIgKnNsYXNoX3BvczsKKworCXN0cmJ1Zl9zZXRsZW4oYnVmZmVyLCAwKTsKKworCWlmIChwYXRoWzBdICE9ICcvJykKKwkJc3RyYnVmX2FkZGNoKGJ1ZmZlciwgJy8nKTsKKworCXN0cmJ1Zl9hZGRzdHIoYnVmZmVyLCBwYXRoKTsKKworCXNsYXNoX3BvcyA9IHN0cnJjaHIoYnVmZmVyLT5idWYsICcvJyk7CisKKwl3aGlsZSAoc2xhc2hfcG9zID4gYnVmZmVyLT5idWYpIHsKKwkJc3RyYnVmX3NldGxlbihidWZmZXIsIHNsYXNoX3BvcyAtIGJ1ZmZlci0+YnVmKTsKKworCQlpZiAoaGFzaG1hcF9jb250YWluc19wYXRoKG1hcCwgYnVmZmVyKSkKKwkJCXJldHVybiAxOworCisJCXNsYXNoX3BvcyA9IHN0cnJjaHIoYnVmZmVyLT5idWYsICcvJyk7CisJfQorCisJcmV0dXJuIDA7Cit9CisKK3ZvaWQgYWRkX3BhdHRlcm4oY29uc3QgY2hhciAqc3RyaW5nLCBjb25zdCBjaGFyICpiYXNlLAorCQkgaW50IGJhc2VsZW4sIHN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsLCBpbnQgc3JjcG9zKQoreworCXN0cnVjdCBwYXRoX3BhdHRlcm4gKnBhdHRlcm47CiAJaW50IHBhdHRlcm5sZW47CiAJdW5zaWduZWQgZmxhZ3M7CiAJaW50IG5vd2lsZGNhcmRsZW47CiAKLQlwYXJzZV9leGNsdWRlX3BhdHRlcm4oJnN0cmluZywgJnBhdHRlcm5sZW4sICZmbGFncywgJm5vd2lsZGNhcmRsZW4pOwotCWlmIChmbGFncyAmIEVYQ19GTEFHX01VU1RCRURJUikgewotCQlGTEVYUFRSX0FMTE9DX01FTSh4LCBwYXR0ZXJuLCBzdHJpbmcsIHBhdHRlcm5sZW4pOworCXBhcnNlX3BhdGhfcGF0dGVybigmc3RyaW5nLCAmcGF0dGVybmxlbiwgJmZsYWdzLCAmbm93aWxkY2FyZGxlbik7CisJaWYgKGZsYWdzICYgUEFUVEVSTl9GTEFHX01VU1RCRURJUikgeworCQlGTEVYUFRSX0FMTE9DX01FTShwYXR0ZXJuLCBwYXR0ZXJuLCBzdHJpbmcsIHBhdHRlcm5sZW4pOwogCX0gZWxzZSB7Ci0JCXggPSB4bWFsbG9jKHNpemVvZigqeCkpOwotCQl4LT5wYXR0ZXJuID0gc3RyaW5nOworCQlwYXR0ZXJuID0geG1hbGxvYyhzaXplb2YoKnBhdHRlcm4pKTsKKwkJcGF0dGVybi0+cGF0dGVybiA9IHN0cmluZzsKIAl9Ci0JeC0+cGF0dGVybmxlbiA9IHBhdHRlcm5sZW47Ci0JeC0+bm93aWxkY2FyZGxlbiA9IG5vd2lsZGNhcmRsZW47Ci0JeC0+YmFzZSA9IGJhc2U7Ci0JeC0+YmFzZWxlbiA9IGJhc2VsZW47Ci0JeC0+ZmxhZ3MgPSBmbGFnczsKLQl4LT5zcmNwb3MgPSBzcmNwb3M7Ci0JQUxMT0NfR1JPVyhlbC0+ZXhjbHVkZXMsIGVsLT5uciArIDEsIGVsLT5hbGxvYyk7Ci0JZWwtPmV4Y2x1ZGVzW2VsLT5ucisrXSA9IHg7Ci0JeC0+ZWwgPSBlbDsKKwlwYXR0ZXJuLT5wYXR0ZXJubGVuID0gcGF0dGVybmxlbjsKKwlwYXR0ZXJuLT5ub3dpbGRjYXJkbGVuID0gbm93aWxkY2FyZGxlbjsKKwlwYXR0ZXJuLT5iYXNlID0gYmFzZTsKKwlwYXR0ZXJuLT5iYXNlbGVuID0gYmFzZWxlbjsKKwlwYXR0ZXJuLT5mbGFncyA9IGZsYWdzOworCXBhdHRlcm4tPnNyY3BvcyA9IHNyY3BvczsKKwlBTExPQ19HUk9XKHBsLT5wYXR0ZXJucywgcGwtPm5yICsgMSwgcGwtPmFsbG9jKTsKKwlwbC0+cGF0dGVybnNbcGwtPm5yKytdID0gcGF0dGVybjsKKwlwYXR0ZXJuLT5wbCA9IHBsOworCisJYWRkX3BhdHRlcm5fdG9faGFzaHNldHMocGwsIHBhdHRlcm4pOwogfQogCiBzdGF0aWMgaW50IHJlYWRfc2tpcF93b3JrdHJlZV9maWxlX2Zyb21faW5kZXgoY29uc3Qgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCkBAIC02ODIsMTkgKzg4NywxOSBAQAogfQogCiAvKgotICogRnJlZXMgbWVtb3J5IHdpdGhpbiBlbCB3aGljaCB3YXMgYWxsb2NhdGVkIGZvciBleGNsdWRlIHBhdHRlcm5zIGFuZAotICogdGhlIGZpbGUgYnVmZmVyLiAgRG9lcyBub3QgZnJlZSBlbCBpdHNlbGYuCisgKiBGcmVlcyBtZW1vcnkgd2l0aGluIHBsIHdoaWNoIHdhcyBhbGxvY2F0ZWQgZm9yIGV4Y2x1ZGUgcGF0dGVybnMgYW5kCisgKiB0aGUgZmlsZSBidWZmZXIuICBEb2VzIG5vdCBmcmVlIHBsIGl0c2VsZi4KICAqLwotdm9pZCBjbGVhcl9leGNsdWRlX2xpc3Qoc3RydWN0IGV4Y2x1ZGVfbGlzdCAqZWwpCit2b2lkIGNsZWFyX3BhdHRlcm5fbGlzdChzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbCkKIHsKIAlpbnQgaTsKIAotCWZvciAoaSA9IDA7IGkgPCBlbC0+bnI7IGkrKykKLQkJZnJlZShlbC0+ZXhjbHVkZXNbaV0pOwotCWZyZWUoZWwtPmV4Y2x1ZGVzKTsKLQlmcmVlKGVsLT5maWxlYnVmKTsKKwlmb3IgKGkgPSAwOyBpIDwgcGwtPm5yOyBpKyspCisJCWZyZWUocGwtPnBhdHRlcm5zW2ldKTsKKwlmcmVlKHBsLT5wYXR0ZXJucyk7CisJZnJlZShwbC0+ZmlsZWJ1Zik7CiAKLQltZW1zZXQoZWwsIDAsIHNpemVvZigqZWwpKTsKKwltZW1zZXQocGwsIDAsIHNpemVvZigqcGwpKTsKIH0KIAogc3RhdGljIHZvaWQgdHJpbV90cmFpbGluZ19zcGFjZXMoY2hhciAqYnVmKQpAQCAtNzQwLDcgKzk0NSw3IEBACiAJZmlyc3QgPSAwOwogCWxhc3QgPSBkaXItPmRpcnNfbnI7CiAJd2hpbGUgKGxhc3QgPiBmaXJzdCkgewotCQlpbnQgY21wLCBuZXh0ID0gKGxhc3QgKyBmaXJzdCkgPj4gMTsKKwkJaW50IGNtcCwgbmV4dCA9IGZpcnN0ICsgKChsYXN0IC0gZmlyc3QpID4+IDEpOwogCQlkID0gZGlyLT5kaXJzW25leHRdOwogCQljbXAgPSBzdHJuY21wKG5hbWUsIGQtPm5hbWUsIGxlbik7CiAJCWlmICghY21wICYmIHN0cmxlbihkLT5uYW1lKSA+IGxlbikKQEAgLTgwMSwyMSArMTAwNiwyMSBAQAogCQlkaXItPmRpcnNbaV0tPnJlY3Vyc2UgPSAwOwogfQogCi1zdGF0aWMgaW50IGFkZF9leGNsdWRlc19mcm9tX2J1ZmZlcihjaGFyICpidWYsIHNpemVfdCBzaXplLAorc3RhdGljIGludCBhZGRfcGF0dGVybnNfZnJvbV9idWZmZXIoY2hhciAqYnVmLCBzaXplX3Qgc2l6ZSwKIAkJCQkgICAgY29uc3QgY2hhciAqYmFzZSwgaW50IGJhc2VsZW4sCi0JCQkJICAgIHN0cnVjdCBleGNsdWRlX2xpc3QgKmVsKTsKKwkJCQkgICAgc3RydWN0IHBhdHRlcm5fbGlzdCAqcGwpOwogCiAvKgogICogR2l2ZW4gYSBmaWxlIHdpdGggbmFtZSAiZm5hbWUiLCByZWFkIGl0IChlaXRoZXIgZnJvbSBkaXNrLCBvciBmcm9tCiAgKiBhbiBpbmRleCBpZiAnaXN0YXRlJyBpcyBub24tbnVsbCksIHBhcnNlIGl0IGFuZCBzdG9yZSB0aGUKLSAqIGV4Y2x1ZGUgcnVsZXMgaW4gImVsIi4KKyAqIGV4Y2x1ZGUgcnVsZXMgaW4gInBsIi4KICAqCiAgKiBJZiAic3MiIGlzIG5vdCBOVUxMLCBjb21wdXRlIFNIQS0xIG9mIHRoZSBleGNsdWRlIGZpbGUgYW5kIGZpbGwKLSAqIHN0YXQgZGF0YSBmcm9tIGRpc2sgKG9ubHkgdmFsaWQgaWYgYWRkX2V4Y2x1ZGVzIHJldHVybnMgemVybykuIElmCisgKiBzdGF0IGRhdGEgZnJvbSBkaXNrIChvbmx5IHZhbGlkIGlmIGFkZF9wYXR0ZXJucyByZXR1cm5zIHplcm8pLiBJZgogICogc3NfdmFsaWQgaXMgbm9uLXplcm8sICJzcyIgbXVzdCBjb250YWluIGdvb2QgdmFsdWUgYXMgaW5wdXQuCiAgKi8KLXN0YXRpYyBpbnQgYWRkX2V4Y2x1ZGVzKGNvbnN0IGNoYXIgKmZuYW1lLCBjb25zdCBjaGFyICpiYXNlLCBpbnQgYmFzZWxlbiwKLQkJCXN0cnVjdCBleGNsdWRlX2xpc3QgKmVsLCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKK3N0YXRpYyBpbnQgYWRkX3BhdHRlcm5zKGNvbnN0IGNoYXIgKmZuYW1lLCBjb25zdCBjaGFyICpiYXNlLCBpbnQgYmFzZWxlbiwKKwkJCXN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsLCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKIAkJCXN0cnVjdCBvaWRfc3RhdCAqb2lkX3N0YXQpCiB7CiAJc3RydWN0IHN0YXQgc3Q7CkBAIC04NjksMjggKzEwNzQsMzEgQEAKIAkJCQlvaWRjcHkoJm9pZF9zdGF0LT5vaWQsCiAJCQkJICAgICAgICZpc3RhdGUtPmNhY2hlW3Bvc10tPm9pZCk7CiAJCQllbHNlCi0JCQkJaGFzaF9vYmplY3RfZmlsZShidWYsIHNpemUsICJibG9iIiwKLQkJCQkJCSAmb2lkX3N0YXQtPm9pZCk7CisJCQkJaGFzaF9vYmplY3RfZmlsZSh0aGVfaGFzaF9hbGdvLCBidWYsIHNpemUsCisJCQkJCQkgImJsb2IiLCAmb2lkX3N0YXQtPm9pZCk7CiAJCQlmaWxsX3N0YXRfZGF0YSgmb2lkX3N0YXQtPnN0YXQsICZzdCk7CiAJCQlvaWRfc3RhdC0+dmFsaWQgPSAxOwogCQl9CiAJfQogCi0JYWRkX2V4Y2x1ZGVzX2Zyb21fYnVmZmVyKGJ1Ziwgc2l6ZSwgYmFzZSwgYmFzZWxlbiwgZWwpOworCWFkZF9wYXR0ZXJuc19mcm9tX2J1ZmZlcihidWYsIHNpemUsIGJhc2UsIGJhc2VsZW4sIHBsKTsKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBhZGRfZXhjbHVkZXNfZnJvbV9idWZmZXIoY2hhciAqYnVmLCBzaXplX3Qgc2l6ZSwKK3N0YXRpYyBpbnQgYWRkX3BhdHRlcm5zX2Zyb21fYnVmZmVyKGNoYXIgKmJ1Ziwgc2l6ZV90IHNpemUsCiAJCQkJICAgIGNvbnN0IGNoYXIgKmJhc2UsIGludCBiYXNlbGVuLAotCQkJCSAgICBzdHJ1Y3QgZXhjbHVkZV9saXN0ICplbCkKKwkJCQkgICAgc3RydWN0IHBhdHRlcm5fbGlzdCAqcGwpCiB7CiAJaW50IGksIGxpbmVubyA9IDE7CiAJY2hhciAqZW50cnk7CiAKLQllbC0+ZmlsZWJ1ZiA9IGJ1ZjsKKwloYXNobWFwX2luaXQoJnBsLT5yZWN1cnNpdmVfaGFzaG1hcCwgcGxfaGFzaG1hcF9jbXAsIE5VTEwsIDApOworCWhhc2htYXBfaW5pdCgmcGwtPnBhcmVudF9oYXNobWFwLCBwbF9oYXNobWFwX2NtcCwgTlVMTCwgMCk7CisKKwlwbC0+ZmlsZWJ1ZiA9IGJ1ZjsKIAogCWlmIChza2lwX3V0ZjhfYm9tKCZidWYsIHNpemUpKQotCQlzaXplIC09IGJ1ZiAtIGVsLT5maWxlYnVmOworCQlzaXplIC09IGJ1ZiAtIHBsLT5maWxlYnVmOwogCiAJZW50cnkgPSBidWY7CiAKQEAgLTg5OSw3ICsxMTA3LDcgQEAKIAkJCWlmIChlbnRyeSAhPSBidWYgKyBpICYmIGVudHJ5WzBdICE9ICcjJykgewogCQkJCWJ1ZltpIC0gKGkgJiYgYnVmW2ktMV0gPT0gJ1xyJyldID0gMDsKIAkJCQl0cmltX3RyYWlsaW5nX3NwYWNlcyhlbnRyeSk7Ci0JCQkJYWRkX2V4Y2x1ZGUoZW50cnksIGJhc2UsIGJhc2VsZW4sIGVsLCBsaW5lbm8pOworCQkJCWFkZF9wYXR0ZXJuKGVudHJ5LCBiYXNlLCBiYXNlbGVuLCBwbCwgbGluZW5vKTsKIAkJCX0KIAkJCWxpbmVubysrOwogCQkJZW50cnkgPSBidWYgKyBpICsgMTsKQEAgLTkwOCwxNyArMTExNiwxNyBAQAogCXJldHVybiAwOwogfQogCi1pbnQgYWRkX2V4Y2x1ZGVzX2Zyb21fZmlsZV90b19saXN0KGNvbnN0IGNoYXIgKmZuYW1lLCBjb25zdCBjaGFyICpiYXNlLAotCQkJCSAgIGludCBiYXNlbGVuLCBzdHJ1Y3QgZXhjbHVkZV9saXN0ICplbCwKK2ludCBhZGRfcGF0dGVybnNfZnJvbV9maWxlX3RvX2xpc3QoY29uc3QgY2hhciAqZm5hbWUsIGNvbnN0IGNoYXIgKmJhc2UsCisJCQkJICAgaW50IGJhc2VsZW4sIHN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsLAogCQkJCSAgIHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKQogewotCXJldHVybiBhZGRfZXhjbHVkZXMoZm5hbWUsIGJhc2UsIGJhc2VsZW4sIGVsLCBpc3RhdGUsIE5VTEwpOworCXJldHVybiBhZGRfcGF0dGVybnMoZm5hbWUsIGJhc2UsIGJhc2VsZW4sIHBsLCBpc3RhdGUsIE5VTEwpOwogfQogCi1pbnQgYWRkX2V4Y2x1ZGVzX2Zyb21fYmxvYl90b19saXN0KAoraW50IGFkZF9wYXR0ZXJuc19mcm9tX2Jsb2JfdG9fbGlzdCgKIAlzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCiAJY29uc3QgY2hhciAqYmFzZSwgaW50IGJhc2VsZW4sCi0Jc3RydWN0IGV4Y2x1ZGVfbGlzdCAqZWwpCisJc3RydWN0IHBhdHRlcm5fbGlzdCAqcGwpCiB7CiAJY2hhciAqYnVmOwogCXNpemVfdCBzaXplOwpAQCAtOTI4LDMxICsxMTM2LDMxIEBACiAJaWYgKHIgIT0gMSkKIAkJcmV0dXJuIHI7CiAKLQlhZGRfZXhjbHVkZXNfZnJvbV9idWZmZXIoYnVmLCBzaXplLCBiYXNlLCBiYXNlbGVuLCBlbCk7CisJYWRkX3BhdHRlcm5zX2Zyb21fYnVmZmVyKGJ1Ziwgc2l6ZSwgYmFzZSwgYmFzZWxlbiwgcGwpOwogCXJldHVybiAwOwogfQogCi1zdHJ1Y3QgZXhjbHVkZV9saXN0ICphZGRfZXhjbHVkZV9saXN0KHN0cnVjdCBkaXJfc3RydWN0ICpkaXIsCitzdHJ1Y3QgcGF0dGVybl9saXN0ICphZGRfcGF0dGVybl9saXN0KHN0cnVjdCBkaXJfc3RydWN0ICpkaXIsCiAJCQkJICAgICAgaW50IGdyb3VwX3R5cGUsIGNvbnN0IGNoYXIgKnNyYykKIHsKLQlzdHJ1Y3QgZXhjbHVkZV9saXN0ICplbDsKKwlzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbDsKIAlzdHJ1Y3QgZXhjbHVkZV9saXN0X2dyb3VwICpncm91cDsKIAogCWdyb3VwID0gJmRpci0+ZXhjbHVkZV9saXN0X2dyb3VwW2dyb3VwX3R5cGVdOwotCUFMTE9DX0dST1coZ3JvdXAtPmVsLCBncm91cC0+bnIgKyAxLCBncm91cC0+YWxsb2MpOwotCWVsID0gJmdyb3VwLT5lbFtncm91cC0+bnIrK107Ci0JbWVtc2V0KGVsLCAwLCBzaXplb2YoKmVsKSk7Ci0JZWwtPnNyYyA9IHNyYzsKLQlyZXR1cm4gZWw7CisJQUxMT0NfR1JPVyhncm91cC0+cGwsIGdyb3VwLT5uciArIDEsIGdyb3VwLT5hbGxvYyk7CisJcGwgPSAmZ3JvdXAtPnBsW2dyb3VwLT5ucisrXTsKKwltZW1zZXQocGwsIDAsIHNpemVvZigqcGwpKTsKKwlwbC0+c3JjID0gc3JjOworCXJldHVybiBwbDsKIH0KIAogLyoKICAqIFVzZWQgdG8gc2V0IHVwIGNvcmUuZXhjbHVkZXNmaWxlIGFuZCAuZ2l0L2luZm8vZXhjbHVkZSBsaXN0cy4KICAqLwotc3RhdGljIHZvaWQgYWRkX2V4Y2x1ZGVzX2Zyb21fZmlsZV8xKHN0cnVjdCBkaXJfc3RydWN0ICpkaXIsIGNvbnN0IGNoYXIgKmZuYW1lLAorc3RhdGljIHZvaWQgYWRkX3BhdHRlcm5zX2Zyb21fZmlsZV8xKHN0cnVjdCBkaXJfc3RydWN0ICpkaXIsIGNvbnN0IGNoYXIgKmZuYW1lLAogCQkJCSAgICAgc3RydWN0IG9pZF9zdGF0ICpvaWRfc3RhdCkKIHsKLQlzdHJ1Y3QgZXhjbHVkZV9saXN0ICplbDsKKwlzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbDsKIAkvKgogCSAqIGNhdGNoIHNldHVwX3N0YW5kYXJkX2V4Y2x1ZGVzKCkgdGhhdCdzIGNhbGxlZCBiZWZvcmUKIAkgKiBkaXItPnVudHJhY2tlZCBpcyBhc3NpZ25lZC4gVGhhdCBmdW5jdGlvbiBiZWhhdmVzCkBAIC05NjAsMTUgKzExNjgsMTUgQEAKIAkgKi8KIAlpZiAoIWRpci0+dW50cmFja2VkKQogCQlkaXItPnVubWFuYWdlZF9leGNsdWRlX2ZpbGVzKys7Ci0JZWwgPSBhZGRfZXhjbHVkZV9saXN0KGRpciwgRVhDX0ZJTEUsIGZuYW1lKTsKLQlpZiAoYWRkX2V4Y2x1ZGVzKGZuYW1lLCAiIiwgMCwgZWwsIE5VTEwsIG9pZF9zdGF0KSA8IDApCisJcGwgPSBhZGRfcGF0dGVybl9saXN0KGRpciwgRVhDX0ZJTEUsIGZuYW1lKTsKKwlpZiAoYWRkX3BhdHRlcm5zKGZuYW1lLCAiIiwgMCwgcGwsIE5VTEwsIG9pZF9zdGF0KSA8IDApCiAJCWRpZShfKCJjYW5ub3QgdXNlICVzIGFzIGFuIGV4Y2x1ZGUgZmlsZSIpLCBmbmFtZSk7CiB9CiAKLXZvaWQgYWRkX2V4Y2x1ZGVzX2Zyb21fZmlsZShzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyLCBjb25zdCBjaGFyICpmbmFtZSkKK3ZvaWQgYWRkX3BhdHRlcm5zX2Zyb21fZmlsZShzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyLCBjb25zdCBjaGFyICpmbmFtZSkKIHsKIAlkaXItPnVubWFuYWdlZF9leGNsdWRlX2ZpbGVzKys7IC8qIHNlZSB2YWxpZGF0ZV91bnRyYWNrZWRfY2FjaGUoKSAqLwotCWFkZF9leGNsdWRlc19mcm9tX2ZpbGVfMShkaXIsIGZuYW1lLCBOVUxMKTsKKwlhZGRfcGF0dGVybnNfZnJvbV9maWxlXzEoZGlyLCBmbmFtZSwgTlVMTCk7CiB9CiAKIGludCBtYXRjaF9iYXNlbmFtZShjb25zdCBjaGFyICpiYXNlbmFtZSwgaW50IGJhc2VuYW1lbGVuLApAQCAtOTc5LDcgKzExODcsNyBAQAogCQlpZiAocGF0dGVybmxlbiA9PSBiYXNlbmFtZWxlbiAmJgogCQkgICAgIWZzcGF0aG5jbXAocGF0dGVybiwgYmFzZW5hbWUsIGJhc2VuYW1lbGVuKSkKIAkJCXJldHVybiAxOwotCX0gZWxzZSBpZiAoZmxhZ3MgJiBFWENfRkxBR19FTkRTV0lUSCkgeworCX0gZWxzZSBpZiAoZmxhZ3MgJiBQQVRURVJOX0ZMQUdfRU5EU1dJVEgpIHsKIAkJLyogIipsaXRlcmFsIiBtYXRjaGluZyBhZ2FpbnN0ICJmb29saXRlcmFsIiAqLwogCQlpZiAocGF0dGVybmxlbiAtIDEgPD0gYmFzZW5hbWVsZW4gJiYKIAkJICAgICFmc3BhdGhuY21wKHBhdHRlcm4gKyAxLApAQCAtMTA2MCw4NSArMTI2OCwxMzggQEAKICAqIGFueSwgZGV0ZXJtaW5lcyB0aGUgZmF0ZS4gIFJldHVybnMgdGhlIGV4Y2x1ZGVfbGlzdCBlbGVtZW50IHdoaWNoCiAgKiBtYXRjaGVkLCBvciBOVUxMIGZvciB1bmRlY2lkZWQuCiAgKi8KLXN0YXRpYyBzdHJ1Y3QgZXhjbHVkZSAqbGFzdF9leGNsdWRlX21hdGNoaW5nX2Zyb21fbGlzdChjb25zdCBjaGFyICpwYXRobmFtZSwKK3N0YXRpYyBzdHJ1Y3QgcGF0aF9wYXR0ZXJuICpsYXN0X21hdGNoaW5nX3BhdHRlcm5fZnJvbV9saXN0KGNvbnN0IGNoYXIgKnBhdGhuYW1lLAogCQkJCQkJICAgICAgIGludCBwYXRobGVuLAogCQkJCQkJICAgICAgIGNvbnN0IGNoYXIgKmJhc2VuYW1lLAogCQkJCQkJICAgICAgIGludCAqZHR5cGUsCi0JCQkJCQkgICAgICAgc3RydWN0IGV4Y2x1ZGVfbGlzdCAqZWwsCisJCQkJCQkgICAgICAgc3RydWN0IHBhdHRlcm5fbGlzdCAqcGwsCiAJCQkJCQkgICAgICAgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpCiB7Ci0Jc3RydWN0IGV4Y2x1ZGUgKmV4YyA9IE5VTEw7IC8qIHVuZGVjaWRlZCAqLworCXN0cnVjdCBwYXRoX3BhdHRlcm4gKnJlcyA9IE5VTEw7IC8qIHVuZGVjaWRlZCAqLwogCWludCBpOwogCi0JaWYgKCFlbC0+bnIpCisJaWYgKCFwbC0+bnIpCiAJCXJldHVybiBOVUxMOwkvKiB1bmRlZmluZWQgKi8KIAotCWZvciAoaSA9IGVsLT5uciAtIDE7IDAgPD0gaTsgaS0tKSB7Ci0JCXN0cnVjdCBleGNsdWRlICp4ID0gZWwtPmV4Y2x1ZGVzW2ldOwotCQljb25zdCBjaGFyICpleGNsdWRlID0geC0+cGF0dGVybjsKLQkJaW50IHByZWZpeCA9IHgtPm5vd2lsZGNhcmRsZW47CisJZm9yIChpID0gcGwtPm5yIC0gMTsgMCA8PSBpOyBpLS0pIHsKKwkJc3RydWN0IHBhdGhfcGF0dGVybiAqcGF0dGVybiA9IHBsLT5wYXR0ZXJuc1tpXTsKKwkJY29uc3QgY2hhciAqZXhjbHVkZSA9IHBhdHRlcm4tPnBhdHRlcm47CisJCWludCBwcmVmaXggPSBwYXR0ZXJuLT5ub3dpbGRjYXJkbGVuOwogCi0JCWlmICh4LT5mbGFncyAmIEVYQ19GTEFHX01VU1RCRURJUikgewotCQkJaWYgKCpkdHlwZSA9PSBEVF9VTktOT1dOKQotCQkJCSpkdHlwZSA9IGdldF9kdHlwZShOVUxMLCBpc3RhdGUsIHBhdGhuYW1lLCBwYXRobGVuKTsKKwkJaWYgKHBhdHRlcm4tPmZsYWdzICYgUEFUVEVSTl9GTEFHX01VU1RCRURJUikgeworCQkJKmR0eXBlID0gcmVzb2x2ZV9kdHlwZSgqZHR5cGUsIGlzdGF0ZSwgcGF0aG5hbWUsIHBhdGhsZW4pOwogCQkJaWYgKCpkdHlwZSAhPSBEVF9ESVIpCiAJCQkJY29udGludWU7CiAJCX0KIAotCQlpZiAoeC0+ZmxhZ3MgJiBFWENfRkxBR19OT0RJUikgeworCQlpZiAocGF0dGVybi0+ZmxhZ3MgJiBQQVRURVJOX0ZMQUdfTk9ESVIpIHsKIAkJCWlmIChtYXRjaF9iYXNlbmFtZShiYXNlbmFtZSwKIAkJCQkJICAgcGF0aGxlbiAtIChiYXNlbmFtZSAtIHBhdGhuYW1lKSwKLQkJCQkJICAgZXhjbHVkZSwgcHJlZml4LCB4LT5wYXR0ZXJubGVuLAotCQkJCQkgICB4LT5mbGFncykpIHsKLQkJCQlleGMgPSB4OworCQkJCQkgICBleGNsdWRlLCBwcmVmaXgsIHBhdHRlcm4tPnBhdHRlcm5sZW4sCisJCQkJCSAgIHBhdHRlcm4tPmZsYWdzKSkgeworCQkJCXJlcyA9IHBhdHRlcm47CiAJCQkJYnJlYWs7CiAJCQl9CiAJCQljb250aW51ZTsKIAkJfQogCi0JCWFzc2VydCh4LT5iYXNlbGVuID09IDAgfHwgeC0+YmFzZVt4LT5iYXNlbGVuIC0gMV0gPT0gJy8nKTsKKwkJYXNzZXJ0KHBhdHRlcm4tPmJhc2VsZW4gPT0gMCB8fAorCQkgICAgICAgcGF0dGVybi0+YmFzZVtwYXR0ZXJuLT5iYXNlbGVuIC0gMV0gPT0gJy8nKTsKIAkJaWYgKG1hdGNoX3BhdGhuYW1lKHBhdGhuYW1lLCBwYXRobGVuLAotCQkJCSAgIHgtPmJhc2UsIHgtPmJhc2VsZW4gPyB4LT5iYXNlbGVuIC0gMSA6IDAsCi0JCQkJICAgZXhjbHVkZSwgcHJlZml4LCB4LT5wYXR0ZXJubGVuLCB4LT5mbGFncykpIHsKLQkJCWV4YyA9IHg7CisJCQkJICAgcGF0dGVybi0+YmFzZSwKKwkJCQkgICBwYXR0ZXJuLT5iYXNlbGVuID8gcGF0dGVybi0+YmFzZWxlbiAtIDEgOiAwLAorCQkJCSAgIGV4Y2x1ZGUsIHByZWZpeCwgcGF0dGVybi0+cGF0dGVybmxlbiwKKwkJCQkgICBwYXR0ZXJuLT5mbGFncykpIHsKKwkJCXJlcyA9IHBhdHRlcm47CiAJCQlicmVhazsKIAkJfQogCX0KLQlyZXR1cm4gZXhjOworCXJldHVybiByZXM7CiB9CiAKIC8qCi0gKiBTY2FuIHRoZSBsaXN0IGFuZCBsZXQgdGhlIGxhc3QgbWF0Y2ggZGV0ZXJtaW5lIHRoZSBmYXRlLgotICogUmV0dXJuIDEgZm9yIGV4Y2x1ZGUsIDAgZm9yIGluY2x1ZGUgYW5kIC0xIGZvciB1bmRlY2lkZWQuCisgKiBTY2FuIHRoZSBsaXN0IG9mIHBhdHRlcm5zIHRvIGRldGVybWluZSBpZiB0aGUgb3JkZXJlZCBsaXN0CisgKiBvZiBwYXR0ZXJucyBtYXRjaGVzIG9uICdwYXRobmFtZScuCisgKgorICogUmV0dXJuIDEgZm9yIGEgbWF0Y2gsIDAgZm9yIG5vdCBtYXRjaGVkIGFuZCAtMSBmb3IgdW5kZWNpZGVkLgogICovCi1pbnQgaXNfZXhjbHVkZWRfZnJvbV9saXN0KGNvbnN0IGNoYXIgKnBhdGhuYW1lLAotCQkJICBpbnQgcGF0aGxlbiwgY29uc3QgY2hhciAqYmFzZW5hbWUsIGludCAqZHR5cGUsCi0JCQkgIHN0cnVjdCBleGNsdWRlX2xpc3QgKmVsLCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSkKK2VudW0gcGF0dGVybl9tYXRjaF9yZXN1bHQgcGF0aF9tYXRjaGVzX3BhdHRlcm5fbGlzdCgKKwkJCQljb25zdCBjaGFyICpwYXRobmFtZSwgaW50IHBhdGhsZW4sCisJCQkJY29uc3QgY2hhciAqYmFzZW5hbWUsIGludCAqZHR5cGUsCisJCQkJc3RydWN0IHBhdHRlcm5fbGlzdCAqcGwsCisJCQkJc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpCiB7Ci0Jc3RydWN0IGV4Y2x1ZGUgKmV4Y2x1ZGU7Ci0JZXhjbHVkZSA9IGxhc3RfZXhjbHVkZV9tYXRjaGluZ19mcm9tX2xpc3QocGF0aG5hbWUsIHBhdGhsZW4sIGJhc2VuYW1lLAotCQkJCQkJICBkdHlwZSwgZWwsIGlzdGF0ZSk7Ci0JaWYgKGV4Y2x1ZGUpCi0JCXJldHVybiBleGNsdWRlLT5mbGFncyAmIEVYQ19GTEFHX05FR0FUSVZFID8gMCA6IDE7Ci0JcmV0dXJuIC0xOyAvKiB1bmRlY2lkZWQgKi8KKwlzdHJ1Y3QgcGF0aF9wYXR0ZXJuICpwYXR0ZXJuOworCXN0cnVjdCBzdHJidWYgcGFyZW50X3BhdGhuYW1lID0gU1RSQlVGX0lOSVQ7CisJaW50IHJlc3VsdCA9IE5PVF9NQVRDSEVEOworCWNvbnN0IGNoYXIgKnNsYXNoX3BvczsKKworCWlmICghcGwtPnVzZV9jb25lX3BhdHRlcm5zKSB7CisJCXBhdHRlcm4gPSBsYXN0X21hdGNoaW5nX3BhdHRlcm5fZnJvbV9saXN0KHBhdGhuYW1lLCBwYXRobGVuLCBiYXNlbmFtZSwKKwkJCQkJCQlkdHlwZSwgcGwsIGlzdGF0ZSk7CisJCWlmIChwYXR0ZXJuKSB7CisJCQlpZiAocGF0dGVybi0+ZmxhZ3MgJiBQQVRURVJOX0ZMQUdfTkVHQVRJVkUpCisJCQkJcmV0dXJuIE5PVF9NQVRDSEVEOworCQkJZWxzZQorCQkJCXJldHVybiBNQVRDSEVEOworCQl9CisKKwkJcmV0dXJuIFVOREVDSURFRDsKKwl9CisKKwlpZiAocGwtPmZ1bGxfY29uZSkKKwkJcmV0dXJuIE1BVENIRUQ7CisKKwlzdHJidWZfYWRkY2goJnBhcmVudF9wYXRobmFtZSwgJy8nKTsKKwlzdHJidWZfYWRkKCZwYXJlbnRfcGF0aG5hbWUsIHBhdGhuYW1lLCBwYXRobGVuKTsKKworCWlmIChoYXNobWFwX2NvbnRhaW5zX3BhdGgoJnBsLT5yZWN1cnNpdmVfaGFzaG1hcCwKKwkJCQkgICZwYXJlbnRfcGF0aG5hbWUpKSB7CisJCXJlc3VsdCA9IE1BVENIRURfUkVDVVJTSVZFOworCQlnb3RvIGRvbmU7CisJfQorCisJc2xhc2hfcG9zID0gc3RycmNocihwYXJlbnRfcGF0aG5hbWUuYnVmLCAnLycpOworCisJaWYgKHNsYXNoX3BvcyA9PSBwYXJlbnRfcGF0aG5hbWUuYnVmKSB7CisJCS8qIGluY2x1ZGUgZXZlcnkgZmlsZSBpbiByb290ICovCisJCXJlc3VsdCA9IE1BVENIRUQ7CisJCWdvdG8gZG9uZTsKKwl9CisKKwlzdHJidWZfc2V0bGVuKCZwYXJlbnRfcGF0aG5hbWUsIHNsYXNoX3BvcyAtIHBhcmVudF9wYXRobmFtZS5idWYpOworCisJaWYgKGhhc2htYXBfY29udGFpbnNfcGF0aCgmcGwtPnBhcmVudF9oYXNobWFwLCAmcGFyZW50X3BhdGhuYW1lKSkgeworCQlyZXN1bHQgPSBNQVRDSEVEOworCQlnb3RvIGRvbmU7CisJfQorCisJaWYgKGhhc2htYXBfY29udGFpbnNfcGFyZW50KCZwbC0+cmVjdXJzaXZlX2hhc2htYXAsCisJCQkJICAgIHBhdGhuYW1lLAorCQkJCSAgICAmcGFyZW50X3BhdGhuYW1lKSkKKwkJcmVzdWx0ID0gTUFUQ0hFRF9SRUNVUlNJVkU7CisKK2RvbmU6CisJc3RyYnVmX3JlbGVhc2UoJnBhcmVudF9wYXRobmFtZSk7CisJcmV0dXJuIHJlc3VsdDsKIH0KIAotc3RhdGljIHN0cnVjdCBleGNsdWRlICpsYXN0X2V4Y2x1ZGVfbWF0Y2hpbmdfZnJvbV9saXN0cyhzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyLAotCQkJCQkJCXN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAotCQljb25zdCBjaGFyICpwYXRobmFtZSwgaW50IHBhdGhsZW4sIGNvbnN0IGNoYXIgKmJhc2VuYW1lLAotCQlpbnQgKmR0eXBlX3ApCitzdGF0aWMgc3RydWN0IHBhdGhfcGF0dGVybiAqbGFzdF9tYXRjaGluZ19wYXR0ZXJuX2Zyb21fbGlzdHMoCisJCXN0cnVjdCBkaXJfc3RydWN0ICpkaXIsIHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAorCQljb25zdCBjaGFyICpwYXRobmFtZSwgaW50IHBhdGhsZW4sCisJCWNvbnN0IGNoYXIgKmJhc2VuYW1lLCBpbnQgKmR0eXBlX3ApCiB7CiAJaW50IGksIGo7CiAJc3RydWN0IGV4Y2x1ZGVfbGlzdF9ncm91cCAqZ3JvdXA7Ci0Jc3RydWN0IGV4Y2x1ZGUgKmV4Y2x1ZGU7CisJc3RydWN0IHBhdGhfcGF0dGVybiAqcGF0dGVybjsKIAlmb3IgKGkgPSBFWENfQ01ETDsgaSA8PSBFWENfRklMRTsgaSsrKSB7CiAJCWdyb3VwID0gJmRpci0+ZXhjbHVkZV9saXN0X2dyb3VwW2ldOwogCQlmb3IgKGogPSBncm91cC0+bnIgLSAxOyBqID49IDA7IGotLSkgewotCQkJZXhjbHVkZSA9IGxhc3RfZXhjbHVkZV9tYXRjaGluZ19mcm9tX2xpc3QoCisJCQlwYXR0ZXJuID0gbGFzdF9tYXRjaGluZ19wYXR0ZXJuX2Zyb21fbGlzdCgKIAkJCQlwYXRobmFtZSwgcGF0aGxlbiwgYmFzZW5hbWUsIGR0eXBlX3AsCi0JCQkJJmdyb3VwLT5lbFtqXSwgaXN0YXRlKTsKLQkJCWlmIChleGNsdWRlKQotCQkJCXJldHVybiBleGNsdWRlOworCQkJCSZncm91cC0+cGxbal0sIGlzdGF0ZSk7CisJCQlpZiAocGF0dGVybikKKwkJCQlyZXR1cm4gcGF0dGVybjsKIAkJfQogCX0KIAlyZXR1cm4gTlVMTDsKQEAgLTExNTMsNyArMTQxNCw3IEBACiAJCQkgY29uc3QgY2hhciAqYmFzZSwgaW50IGJhc2VsZW4pCiB7CiAJc3RydWN0IGV4Y2x1ZGVfbGlzdF9ncm91cCAqZ3JvdXA7Ci0Jc3RydWN0IGV4Y2x1ZGVfbGlzdCAqZWw7CisJc3RydWN0IHBhdHRlcm5fbGlzdCAqcGw7CiAJc3RydWN0IGV4Y2x1ZGVfc3RhY2sgKnN0ayA9IE5VTEw7CiAJc3RydWN0IHVudHJhY2tlZF9jYWNoZV9kaXIgKnVudHJhY2tlZDsKIAlpbnQgY3VycmVudDsKQEAgLTExNjksMTcgKzE0MzAsMTcgQEAKIAkJaWYgKHN0ay0+YmFzZWxlbiA8PSBiYXNlbGVuICYmCiAJCSAgICAhc3RybmNtcChkaXItPmJhc2VidWYuYnVmLCBiYXNlLCBzdGstPmJhc2VsZW4pKQogCQkJYnJlYWs7Ci0JCWVsID0gJmdyb3VwLT5lbFtkaXItPmV4Y2x1ZGVfc3RhY2stPmV4Y2x1ZGVfaXhdOworCQlwbCA9ICZncm91cC0+cGxbZGlyLT5leGNsdWRlX3N0YWNrLT5leGNsdWRlX2l4XTsKIAkJZGlyLT5leGNsdWRlX3N0YWNrID0gc3RrLT5wcmV2OwotCQlkaXItPmV4Y2x1ZGUgPSBOVUxMOwotCQlmcmVlKChjaGFyICopZWwtPnNyYyk7IC8qIHNlZSBzdHJidWZfZGV0YWNoKCkgYmVsb3cgKi8KLQkJY2xlYXJfZXhjbHVkZV9saXN0KGVsKTsKKwkJZGlyLT5wYXR0ZXJuID0gTlVMTDsKKwkJZnJlZSgoY2hhciAqKXBsLT5zcmMpOyAvKiBzZWUgc3RyYnVmX2RldGFjaCgpIGJlbG93ICovCisJCWNsZWFyX3BhdHRlcm5fbGlzdChwbCk7CiAJCWZyZWUoc3RrKTsKIAkJZ3JvdXAtPm5yLS07CiAJfQogCiAJLyogU2tpcCB0cmF2ZXJzaW5nIGludG8gc3ViIGRpcmVjdG9yaWVzIGlmIHRoZSBwYXJlbnQgaXMgZXhjbHVkZWQgKi8KLQlpZiAoZGlyLT5leGNsdWRlKQorCWlmIChkaXItPnBhdHRlcm4pCiAJCXJldHVybjsKIAogCS8qCkBAIC0xMjIwLDcgKzE0ODEsNyBAQAogCQlzdGstPmJhc2VsZW4gPSBjcCAtIGJhc2U7CiAJCXN0ay0+ZXhjbHVkZV9peCA9IGdyb3VwLT5ucjsKIAkJc3RrLT51Y2QgPSB1bnRyYWNrZWQ7Ci0JCWVsID0gYWRkX2V4Y2x1ZGVfbGlzdChkaXIsIEVYQ19ESVJTLCBOVUxMKTsKKwkJcGwgPSBhZGRfcGF0dGVybl9saXN0KGRpciwgRVhDX0RJUlMsIE5VTEwpOwogCQlzdHJidWZfYWRkKCZkaXItPmJhc2VidWYsIGJhc2UgKyBjdXJyZW50LCBzdGstPmJhc2VsZW4gLSBjdXJyZW50KTsKIAkJYXNzZXJ0KHN0ay0+YmFzZWxlbiA9PSBkaXItPmJhc2VidWYubGVuKTsKIApAQCAtMTIyOCwxNSArMTQ4OSwxNSBAQAogCQlpZiAoc3RrLT5iYXNlbGVuKSB7CiAJCQlpbnQgZHQgPSBEVF9ESVI7CiAJCQlkaXItPmJhc2VidWYuYnVmW3N0ay0+YmFzZWxlbiAtIDFdID0gMDsKLQkJCWRpci0+ZXhjbHVkZSA9IGxhc3RfZXhjbHVkZV9tYXRjaGluZ19mcm9tX2xpc3RzKGRpciwKKwkJCWRpci0+cGF0dGVybiA9IGxhc3RfbWF0Y2hpbmdfcGF0dGVybl9mcm9tX2xpc3RzKGRpciwKIAkJCQkJCQkJCWlzdGF0ZSwKIAkJCQlkaXItPmJhc2VidWYuYnVmLCBzdGstPmJhc2VsZW4gLSAxLAogCQkJCWRpci0+YmFzZWJ1Zi5idWYgKyBjdXJyZW50LCAmZHQpOwogCQkJZGlyLT5iYXNlYnVmLmJ1ZltzdGstPmJhc2VsZW4gLSAxXSA9ICcvJzsKLQkJCWlmIChkaXItPmV4Y2x1ZGUgJiYKLQkJCSAgICBkaXItPmV4Y2x1ZGUtPmZsYWdzICYgRVhDX0ZMQUdfTkVHQVRJVkUpCi0JCQkJZGlyLT5leGNsdWRlID0gTlVMTDsKLQkJCWlmIChkaXItPmV4Y2x1ZGUpIHsKKwkJCWlmIChkaXItPnBhdHRlcm4gJiYKKwkJCSAgICBkaXItPnBhdHRlcm4tPmZsYWdzICYgUEFUVEVSTl9GTEFHX05FR0FUSVZFKQorCQkJCWRpci0+cGF0dGVybiA9IE5VTEw7CisJCQlpZiAoZGlyLT5wYXR0ZXJuKSB7CiAJCQkJZGlyLT5leGNsdWRlX3N0YWNrID0gc3RrOwogCQkJCXJldHVybjsKIAkJCX0KQEAgLTEyNjIsMzAgKzE1MjMsMzAgQEAKIAkJCS8qCiAJCQkgKiBkaXItPmJhc2VidWYgZ2V0cyByZXVzZWQgYnkgdGhlIHRyYXZlcnNhbCwgYnV0IHdlCiAJCQkgKiBuZWVkIGZuYW1lIHRvIHJlbWFpbiB1bmNoYW5nZWQgdG8gZW5zdXJlIHRoZSBzcmMKLQkJCSAqIG1lbWJlciBvZiBlYWNoIHN0cnVjdCBleGNsdWRlIGNvcnJlY3RseQorCQkJICogbWVtYmVyIG9mIGVhY2ggc3RydWN0IHBhdGhfcGF0dGVybiBjb3JyZWN0bHkKIAkJCSAqIGJhY2stcmVmZXJlbmNlcyBpdHMgc291cmNlIGZpbGUuICBPdGhlciBpbnZvY2F0aW9ucwotCQkJICogb2YgYWRkX2V4Y2x1ZGVfbGlzdCBwcm92aWRlIHN0YWJsZSBzdHJpbmdzLCBzbyB3ZQorCQkJICogb2YgYWRkX3BhdHRlcm5fbGlzdCBwcm92aWRlIHN0YWJsZSBzdHJpbmdzLCBzbyB3ZQogCQkJICogc3RyYnVmX2RldGFjaCgpIGFuZCBmcmVlKCkgaGVyZSBpbiB0aGUgY2FsbGVyLgogCQkJICovCiAJCQlzdHJ1Y3Qgc3RyYnVmIHNiID0gU1RSQlVGX0lOSVQ7CiAJCQlzdHJidWZfYWRkYnVmKCZzYiwgJmRpci0+YmFzZWJ1Zik7CiAJCQlzdHJidWZfYWRkc3RyKCZzYiwgZGlyLT5leGNsdWRlX3Blcl9kaXIpOwotCQkJZWwtPnNyYyA9IHN0cmJ1Zl9kZXRhY2goJnNiLCBOVUxMKTsKLQkJCWFkZF9leGNsdWRlcyhlbC0+c3JjLCBlbC0+c3JjLCBzdGstPmJhc2VsZW4sIGVsLCBpc3RhdGUsCisJCQlwbC0+c3JjID0gc3RyYnVmX2RldGFjaCgmc2IsIE5VTEwpOworCQkJYWRkX3BhdHRlcm5zKHBsLT5zcmMsIHBsLT5zcmMsIHN0ay0+YmFzZWxlbiwgcGwsIGlzdGF0ZSwKIAkJCQkgICAgIHVudHJhY2tlZCA/ICZvaWRfc3RhdCA6IE5VTEwpOwogCQl9CiAJCS8qCiAJCSAqIE5FRURTV09SSzogd2hlbiB1bnRyYWNrZWQgY2FjaGUgaXMgZW5hYmxlZCwgcHJlcF9leGNsdWRlKCkKIAkJICogd2lsbCBmaXJzdCBiZSBjYWxsZWQgaW4gdmFsaWRfY2FjaGVkX2RpcigpIHRoZW4gbWF5YmUgbWFueQotCQkgKiB0aW1lcyBtb3JlIGluIGxhc3RfZXhjbHVkZV9tYXRjaGluZygpLiBXaGVuIHRoZSBjYWNoZSBpcwotCQkgKiB1c2VkLCBsYXN0X2V4Y2x1ZGVfbWF0Y2hpbmcoKSB3aWxsIG5vdCBiZSBjYWxsZWQgYW5kCisJCSAqIHRpbWVzIG1vcmUgaW4gbGFzdF9tYXRjaGluZ19wYXR0ZXJuKCkuIFdoZW4gdGhlIGNhY2hlIGlzCisJCSAqIHVzZWQsIGxhc3RfbWF0Y2hpbmdfcGF0dGVybigpIHdpbGwgbm90IGJlIGNhbGxlZCBhbmQKIAkJICogcmVhZGluZyAuZ2l0aWdub3JlIGNvbnRlbnQgd2lsbCBiZSBhIHdhc3RlLgogCQkgKgogCQkgKiBTbyB3aGVuIGl0J3MgY2FsbGVkIGJ5IHZhbGlkX2NhY2hlZF9kaXIoKSBhbmQgd2UgY2FuIGdldAogCQkgKiAuZ2l0aWdub3JlIFNIQS0xIGZyb20gdGhlIGluZGV4IChpLmUuIC5naXRpZ25vcmUgaXMgbm90CiAJCSAqIG1vZGlmaWVkIG9uIHdvcmsgdHJlZSksIHdlIGNvdWxkIGRlbGF5IHJlYWRpbmcgdGhlCiAJCSAqIC5naXRpZ25vcmUgY29udGVudCB1bnRpbCB3ZSBhYnNvbHV0ZWx5IG5lZWQgaXQgaW4KLQkJICogbGFzdF9leGNsdWRlX21hdGNoaW5nKCkuIEJlIGNhcmVmdWwgYWJvdXQgaWdub3JlIHJ1bGUKKwkJICogbGFzdF9tYXRjaGluZ19wYXR0ZXJuKCkuIEJlIGNhcmVmdWwgYWJvdXQgaWdub3JlIHJ1bGUKIAkJICogb3JkZXIsIHRob3VnaCwgaWYgeW91IGRvIHRoYXQuCiAJCSAqLwogCQlpZiAodW50cmFja2VkICYmCkBAIC0xMzA1LDcgKzE1NjYsNyBAQAogICogUmV0dXJucyB0aGUgZXhjbHVkZV9saXN0IGVsZW1lbnQgd2hpY2ggbWF0Y2hlZCwgb3IgTlVMTCBmb3IKICAqIHVuZGVjaWRlZC4KICAqLwotc3RydWN0IGV4Y2x1ZGUgKmxhc3RfZXhjbHVkZV9tYXRjaGluZyhzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyLAorc3RydWN0IHBhdGhfcGF0dGVybiAqbGFzdF9tYXRjaGluZ19wYXR0ZXJuKHN0cnVjdCBkaXJfc3RydWN0ICpkaXIsCiAJCQkJICAgICAgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCiAJCQkJICAgICAgY29uc3QgY2hhciAqcGF0aG5hbWUsCiAJCQkJICAgICAgaW50ICpkdHlwZV9wKQpAQCAtMTMxNiwxMCArMTU3NywxMCBAQAogCiAJcHJlcF9leGNsdWRlKGRpciwgaXN0YXRlLCBwYXRobmFtZSwgYmFzZW5hbWUtcGF0aG5hbWUpOwogCi0JaWYgKGRpci0+ZXhjbHVkZSkKLQkJcmV0dXJuIGRpci0+ZXhjbHVkZTsKKwlpZiAoZGlyLT5wYXR0ZXJuKQorCQlyZXR1cm4gZGlyLT5wYXR0ZXJuOwogCi0JcmV0dXJuIGxhc3RfZXhjbHVkZV9tYXRjaGluZ19mcm9tX2xpc3RzKGRpciwgaXN0YXRlLCBwYXRobmFtZSwgcGF0aGxlbiwKKwlyZXR1cm4gbGFzdF9tYXRjaGluZ19wYXR0ZXJuX2Zyb21fbGlzdHMoZGlyLCBpc3RhdGUsIHBhdGhuYW1lLCBwYXRobGVuLAogCQkJYmFzZW5hbWUsIGR0eXBlX3ApOwogfQogCkBAIC0xMzMxLDEwICsxNTkyLDEwIEBACiBpbnQgaXNfZXhjbHVkZWQoc3RydWN0IGRpcl9zdHJ1Y3QgKmRpciwgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCiAJCWNvbnN0IGNoYXIgKnBhdGhuYW1lLCBpbnQgKmR0eXBlX3ApCiB7Ci0Jc3RydWN0IGV4Y2x1ZGUgKmV4Y2x1ZGUgPQotCQlsYXN0X2V4Y2x1ZGVfbWF0Y2hpbmcoZGlyLCBpc3RhdGUsIHBhdGhuYW1lLCBkdHlwZV9wKTsKLQlpZiAoZXhjbHVkZSkKLQkJcmV0dXJuIGV4Y2x1ZGUtPmZsYWdzICYgRVhDX0ZMQUdfTkVHQVRJVkUgPyAwIDogMTsKKwlzdHJ1Y3QgcGF0aF9wYXR0ZXJuICpwYXR0ZXJuID0KKwkJbGFzdF9tYXRjaGluZ19wYXR0ZXJuKGRpciwgaXN0YXRlLCBwYXRobmFtZSwgZHR5cGVfcCk7CisJaWYgKHBhdHRlcm4pCisJCXJldHVybiBwYXR0ZXJuLT5mbGFncyAmIFBBVFRFUk5fRkxBR19ORUdBVElWRSA/IDAgOiAxOwogCXJldHVybiAwOwogfQogCkBAIC0xNDY5LDYgKzE3MzAsOCBAQAogCWNvbnN0IGNoYXIgKmRpcm5hbWUsIGludCBsZW4sIGludCBiYXNlbGVuLCBpbnQgZXhjbHVkZSwKIAljb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjKQogeworCWludCBuZXN0ZWRfcmVwbyA9IDA7CisKIAkvKiBUaGUgImxlbi0xIiBpcyB0byBzdHJpcCB0aGUgZmluYWwgJy8nICovCiAJc3dpdGNoIChkaXJlY3RvcnlfZXhpc3RzX2luX2luZGV4KGlzdGF0ZSwgZGlybmFtZSwgbGVuLTEpKSB7CiAJY2FzZSBpbmRleF9kaXJlY3Rvcnk6CkBAIC0xNDc4LDYgKzE3NDEsMTcgQEAKIAkJcmV0dXJuIHBhdGhfbm9uZTsKIAogCWNhc2UgaW5kZXhfbm9uZXhpc3RlbnQ6CisJCWlmICgoZGlyLT5mbGFncyAmIERJUl9TS0lQX05FU1RFRF9HSVQpIHx8CisJCSAgICAhKGRpci0+ZmxhZ3MgJiBESVJfTk9fR0lUTElOS1MpKSB7CisJCQlzdHJ1Y3Qgc3RyYnVmIHNiID0gU1RSQlVGX0lOSVQ7CisJCQlzdHJidWZfYWRkc3RyKCZzYiwgZGlybmFtZSk7CisJCQluZXN0ZWRfcmVwbyA9IGlzX25vbmJhcmVfcmVwb3NpdG9yeV9kaXIoJnNiKTsKKwkJCXN0cmJ1Zl9yZWxlYXNlKCZzYik7CisJCX0KKwkJaWYgKG5lc3RlZF9yZXBvKQorCQkJcmV0dXJuICgoZGlyLT5mbGFncyAmIERJUl9TS0lQX05FU1RFRF9HSVQpID8gcGF0aF9ub25lIDoKKwkJCQkoZXhjbHVkZSA/IHBhdGhfZXhjbHVkZWQgOiBwYXRoX3VudHJhY2tlZCkpOworCiAJCWlmIChkaXItPmZsYWdzICYgRElSX1NIT1dfT1RIRVJfRElSRUNUT1JJRVMpCiAJCQlicmVhazsKIAkJaWYgKGV4Y2x1ZGUgJiYKQEAgLTE1MDQsMTEgKzE3NzgsNiBAQAogCiAJCQlyZXR1cm4gcGF0aF9ub25lOwogCQl9Ci0JCWlmICghKGRpci0+ZmxhZ3MgJiBESVJfTk9fR0lUTElOS1MpKSB7Ci0JCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKLQkJCWlmIChyZXNvbHZlX2dpdGxpbmtfcmVmKGRpcm5hbWUsICJIRUFEIiwgJm9pZCkgPT0gMCkKLQkJCQlyZXR1cm4gZXhjbHVkZSA/IHBhdGhfZXhjbHVkZWQgOiBwYXRoX3VudHJhY2tlZDsKLQkJfQogCQlyZXR1cm4gcGF0aF9yZWN1cnNlOwogCX0KIApAQCAtMTY0NCwxMCArMTkxMyw5IEBACiAJcmV0dXJuIERUX1VOS05PV047CiB9CiAKLXN0YXRpYyBpbnQgZ2V0X2R0eXBlKHN0cnVjdCBkaXJlbnQgKmRlLCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKLQkJICAgICBjb25zdCBjaGFyICpwYXRoLCBpbnQgbGVuKQorc3RhdGljIGludCByZXNvbHZlX2R0eXBlKGludCBkdHlwZSwgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCisJCQkgY29uc3QgY2hhciAqcGF0aCwgaW50IGxlbikKIHsKLQlpbnQgZHR5cGUgPSBkZSA/IERUWVBFKGRlKSA6IERUX1VOS05PV047CiAJc3RydWN0IHN0YXQgc3Q7CiAKIAlpZiAoZHR5cGUgIT0gRFRfVU5LTk9XTikKQEAgLTE2NzIsMTQgKzE5NDAsMTMgQEAKIAkJCQkJICBzdHJ1Y3Qgc3RyYnVmICpwYXRoLAogCQkJCQkgIGludCBiYXNlbGVuLAogCQkJCQkgIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCi0JCQkJCSAgaW50IGR0eXBlLCBzdHJ1Y3QgZGlyZW50ICpkZSkKKwkJCQkJICBpbnQgZHR5cGUpCiB7CiAJaW50IGV4Y2x1ZGU7CiAJaW50IGhhc19wYXRoX2luX2luZGV4ID0gISFpbmRleF9maWxlX2V4aXN0cyhpc3RhdGUsIHBhdGgtPmJ1ZiwgcGF0aC0+bGVuLCBpZ25vcmVfY2FzZSk7CiAJZW51bSBwYXRoX3RyZWF0bWVudCBwYXRoX3RyZWF0bWVudDsKIAotCWlmIChkdHlwZSA9PSBEVF9VTktOT1dOKQotCQlkdHlwZSA9IGdldF9kdHlwZShkZSwgaXN0YXRlLCBwYXRoLT5idWYsIHBhdGgtPmxlbik7CisJZHR5cGUgPSByZXNvbHZlX2R0eXBlKGR0eXBlLCBpc3RhdGUsIHBhdGgtPmJ1ZiwgcGF0aC0+bGVuKTsKIAogCS8qIEFsd2F5cyBleGNsdWRlIGluZGV4ZWQgZmlsZXMgKi8KIAlpZiAoZHR5cGUgIT0gRFRfRElSICYmIGhhc19wYXRoX2luX2luZGV4KQpAQCAtMTc4NywyMSArMjA1NCwxOCBAQAogCQkJCSAgICAgIGludCBiYXNlbGVuLAogCQkJCSAgICAgIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMpCiB7Ci0JaW50IGR0eXBlOwotCXN0cnVjdCBkaXJlbnQgKmRlID0gY2Rpci0+ZGU7Ci0KLQlpZiAoIWRlKQorCWlmICghY2Rpci0+ZF9uYW1lKQogCQlyZXR1cm4gdHJlYXRfcGF0aF9mYXN0KGRpciwgdW50cmFja2VkLCBjZGlyLCBpc3RhdGUsIHBhdGgsCiAJCQkJICAgICAgIGJhc2VsZW4sIHBhdGhzcGVjKTsKLQlpZiAoaXNfZG90X29yX2RvdGRvdChkZS0+ZF9uYW1lKSB8fCAhZnNwYXRoY21wKGRlLT5kX25hbWUsICIuZ2l0IikpCisJaWYgKGlzX2RvdF9vcl9kb3Rkb3QoY2Rpci0+ZF9uYW1lKSB8fCAhZnNwYXRoY21wKGNkaXItPmRfbmFtZSwgIi5naXQiKSkKIAkJcmV0dXJuIHBhdGhfbm9uZTsKIAlzdHJidWZfc2V0bGVuKHBhdGgsIGJhc2VsZW4pOwotCXN0cmJ1Zl9hZGRzdHIocGF0aCwgZGUtPmRfbmFtZSk7CisJc3RyYnVmX2FkZHN0cihwYXRoLCBjZGlyLT5kX25hbWUpOwogCWlmIChzaW1wbGlmeV9hd2F5KHBhdGgtPmJ1ZiwgcGF0aC0+bGVuLCBwYXRoc3BlYykpCiAJCXJldHVybiBwYXRoX25vbmU7CiAKLQlkdHlwZSA9IERUWVBFKGRlKTsKLQlyZXR1cm4gdHJlYXRfb25lX3BhdGgoZGlyLCB1bnRyYWNrZWQsIGlzdGF0ZSwgcGF0aCwgYmFzZWxlbiwgcGF0aHNwZWMsIGR0eXBlLCBkZSk7CisJcmV0dXJuIHRyZWF0X29uZV9wYXRoKGRpciwgdW50cmFja2VkLCBpc3RhdGUsIHBhdGgsIGJhc2VsZW4sIHBhdGhzcGVjLAorCQkJICAgICAgY2Rpci0+ZF90eXBlKTsKIH0KIAogc3RhdGljIHZvaWQgYWRkX3VudHJhY2tlZChzdHJ1Y3QgdW50cmFja2VkX2NhY2hlX2RpciAqZGlyLCBjb25zdCBjaGFyICpuYW1lKQpAQCAtMTg0NSw3ICsyMTA5LDcgQEAKIAogCS8qCiAJICogcHJlcF9leGNsdWRlIHdpbGwgYmUgY2FsbGVkIGV2ZW50dWFsbHkgb24gdGhpcyBkaXJlY3RvcnksCi0JICogYnV0IGl0J3MgY2FsbGVkIG11Y2ggbGF0ZXIgaW4gbGFzdF9leGNsdWRlX21hdGNoaW5nKCkuIFdlCisJICogYnV0IGl0J3MgY2FsbGVkIG11Y2ggbGF0ZXIgaW4gbGFzdF9tYXRjaGluZ19wYXR0ZXJuKCkuIFdlCiAJICogbmVlZCBpdCBub3cgdG8gZGV0ZXJtaW5lIHRoZSB2YWxpZGl0eSBvZiB0aGUgY2FjaGUgZm9yIHRoaXMKIAkgKiBwYXRoLiBUaGUgbmV4dCBjYWxscyB3aWxsIGJlIG5lYXJseSBuby1vcCwgdGhlIHdheQogCSAqIHByZXBfZXhjbHVkZSgpIGlzIGRlc2lnbmVkLgpAQCAtMTg4OSwxMCArMjE1MywxNyBAQAogCiBzdGF0aWMgaW50IHJlYWRfY2FjaGVkX2RpcihzdHJ1Y3QgY2FjaGVkX2RpciAqY2RpcikKIHsKKwlzdHJ1Y3QgZGlyZW50ICpkZTsKKwogCWlmIChjZGlyLT5mZGlyKSB7Ci0JCWNkaXItPmRlID0gcmVhZGRpcihjZGlyLT5mZGlyKTsKLQkJaWYgKCFjZGlyLT5kZSkKKwkJZGUgPSByZWFkZGlyKGNkaXItPmZkaXIpOworCQlpZiAoIWRlKSB7CisJCQljZGlyLT5kX25hbWUgPSBOVUxMOworCQkJY2Rpci0+ZF90eXBlID0gRFRfVU5LTk9XTjsKIAkJCXJldHVybiAtMTsKKwkJfQorCQljZGlyLT5kX25hbWUgPSBkZS0+ZF9uYW1lOworCQljZGlyLT5kX3R5cGUgPSBEVFlQRShkZSk7CiAJCXJldHVybiAwOwogCX0KIAl3aGlsZSAoY2Rpci0+bnJfZGlycyA8IGNkaXItPnVudHJhY2tlZC0+ZGlyc19ucikgewpAQCAtMTkyOCw2ICsyMTk5LDQwIEBACiAJfQogfQogCitzdGF0aWMgdm9pZCBhZGRfcGF0aF90b19hcHByb3ByaWF0ZV9yZXN1bHRfbGlzdChzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyLAorCXN0cnVjdCB1bnRyYWNrZWRfY2FjaGVfZGlyICp1bnRyYWNrZWQsCisJc3RydWN0IGNhY2hlZF9kaXIgKmNkaXIsCisJc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCisJc3RydWN0IHN0cmJ1ZiAqcGF0aCwKKwlpbnQgYmFzZWxlbiwKKwljb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjLAorCWVudW0gcGF0aF90cmVhdG1lbnQgc3RhdGUpCit7CisJLyogYWRkIHRoZSBwYXRoIHRvIHRoZSBhcHByb3ByaWF0ZSByZXN1bHQgbGlzdCAqLworCXN3aXRjaCAoc3RhdGUpIHsKKwljYXNlIHBhdGhfZXhjbHVkZWQ6CisJCWlmIChkaXItPmZsYWdzICYgRElSX1NIT1dfSUdOT1JFRCkKKwkJCWRpcl9hZGRfbmFtZShkaXIsIGlzdGF0ZSwgcGF0aC0+YnVmLCBwYXRoLT5sZW4pOworCQllbHNlIGlmICgoZGlyLT5mbGFncyAmIERJUl9TSE9XX0lHTk9SRURfVE9PKSB8fAorCQkJKChkaXItPmZsYWdzICYgRElSX0NPTExFQ1RfSUdOT1JFRCkgJiYKKwkJCWV4Y2x1ZGVfbWF0Y2hlc19wYXRoc3BlYyhwYXRoLT5idWYsIHBhdGgtPmxlbiwKKwkJCQkJCSBwYXRoc3BlYykpKQorCQkJZGlyX2FkZF9pZ25vcmVkKGRpciwgaXN0YXRlLCBwYXRoLT5idWYsIHBhdGgtPmxlbik7CisJCWJyZWFrOworCisJY2FzZSBwYXRoX3VudHJhY2tlZDoKKwkJaWYgKGRpci0+ZmxhZ3MgJiBESVJfU0hPV19JR05PUkVEKQorCQkJYnJlYWs7CisJCWRpcl9hZGRfbmFtZShkaXIsIGlzdGF0ZSwgcGF0aC0+YnVmLCBwYXRoLT5sZW4pOworCQlpZiAoY2Rpci0+ZmRpcikKKwkJCWFkZF91bnRyYWNrZWQodW50cmFja2VkLCBwYXRoLT5idWYgKyBiYXNlbGVuKTsKKwkJYnJlYWs7CisKKwlkZWZhdWx0OgorCQlicmVhazsKKwl9Cit9CisKIC8qCiAgKiBSZWFkIGEgZGlyZWN0b3J5IHRyZWUuIFdlIGN1cnJlbnRseSBpZ25vcmUgYW55dGhpbmcgYnV0CiAgKiBkaXJlY3RvcmllcywgcmVndWxhciBmaWxlcyBhbmQgc3ltbGlua3MuIFRoYXQncyBiZWNhdXNlIGdpdApAQCAtMTk1Miw2ICsyMjU3LDE1IEBACiAJc3RydWN0IHVudHJhY2tlZF9jYWNoZV9kaXIgKnVudHJhY2tlZCwgaW50IGNoZWNrX29ubHksCiAJaW50IHN0b3BfYXRfZmlyc3RfZmlsZSwgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYykKIHsKKwkvKgorCSAqIFdBUk5JTkcgV0FSTklORyBXQVJOSU5HOgorCSAqCisJICogQW55IHVwZGF0ZXMgdG8gdGhlIHRyYXZlcnNhbCBsb2dpYyBoZXJlIG1heSBuZWVkIGNvcnJlc3BvbmRpbmcKKwkgKiB1cGRhdGVzIGluIHRyZWF0X2xlYWRpbmdfcGF0aCgpLiAgU2VlIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgdGhlCisJICogY29tbWl0IGFkZGluZyB0aGlzIHdhcm5pbmcgYXMgd2VsbCBhcyB0aGUgY29tbWl0IHByZWNlZGluZyBpdAorCSAqIGZvciBkZXRhaWxzLgorCSAqLworCiAJc3RydWN0IGNhY2hlZF9kaXIgY2RpcjsKIAllbnVtIHBhdGhfdHJlYXRtZW50IHN0YXRlLCBzdWJkaXJfc3RhdGUsIGRpcl9zdGF0ZSA9IHBhdGhfbm9uZTsKIAlzdHJ1Y3Qgc3RyYnVmIHBhdGggPSBTVFJCVUZfSU5JVDsKQEAgLTE5NzUsOCArMjI4OSwxMSBAQAogCQkvKiByZWN1cnNlIGludG8gc3ViZGlyIGlmIGluc3RydWN0ZWQgYnkgdHJlYXRfcGF0aCAqLwogCQlpZiAoKHN0YXRlID09IHBhdGhfcmVjdXJzZSkgfHwKIAkJCSgoc3RhdGUgPT0gcGF0aF91bnRyYWNrZWQpICYmCi0JCQkgKGRpci0+ZmxhZ3MgJiBESVJfU0hPV19JR05PUkVEX1RPTykgJiYKLQkJCSAoZ2V0X2R0eXBlKGNkaXIuZGUsIGlzdGF0ZSwgcGF0aC5idWYsIHBhdGgubGVuKSA9PSBEVF9ESVIpKSkgeworCQkJIChyZXNvbHZlX2R0eXBlKGNkaXIuZF90eXBlLCBpc3RhdGUsIHBhdGguYnVmLCBwYXRoLmxlbikgPT0gRFRfRElSKSAmJgorCQkJICgoZGlyLT5mbGFncyAmIERJUl9TSE9XX0lHTk9SRURfVE9PKSB8fAorCQkJICAocGF0aHNwZWMgJiYKKwkJCSAgIGRvX21hdGNoX3BhdGhzcGVjKGlzdGF0ZSwgcGF0aHNwZWMsIHBhdGguYnVmLCBwYXRoLmxlbiwKKwkJCQkJICAgICBiYXNlbGVuLCBOVUxMLCBET19NQVRDSF9MRUFESU5HX1BBVEhTUEVDKSA9PSBNQVRDSEVEX1JFQ1VSU0lWRUxZX0xFQURJTkdfUEFUSFNQRUMpKSkpIHsKIAkJCXN0cnVjdCB1bnRyYWNrZWRfY2FjaGVfZGlyICp1ZDsKIAkJCXVkID0gbG9va3VwX3VudHJhY2tlZChkaXItPnVudHJhY2tlZCwgdW50cmFja2VkLAogCQkJCQkgICAgICBwYXRoLmJ1ZiArIGJhc2VsZW4sCkBAIC0xOTg3LDYgKzIzMDQsMTIgQEAKIAkJCQkJCQkgY2hlY2tfb25seSwgc3RvcF9hdF9maXJzdF9maWxlLCBwYXRoc3BlYyk7CiAJCQlpZiAoc3ViZGlyX3N0YXRlID4gZGlyX3N0YXRlKQogCQkJCWRpcl9zdGF0ZSA9IHN1YmRpcl9zdGF0ZTsKKworCQkJaWYgKHBhdGhzcGVjICYmCisJCQkgICAgIW1hdGNoX3BhdGhzcGVjKGlzdGF0ZSwgcGF0aHNwZWMsIHBhdGguYnVmLCBwYXRoLmxlbiwKKwkJCQkJICAgIDAgLyogcHJlZml4ICovLCBOVUxMLAorCQkJCQkgICAgMCAvKiBkbyBOT1Qgc3BlY2lhbCBjYXNlIGRpcnMgKi8pKQorCQkJCXN0YXRlID0gcGF0aF9ub25lOwogCQl9CiAKIAkJaWYgKGNoZWNrX29ubHkpIHsKQEAgLTIwMjIsMjkgKzIzNDUsOSBAQAogCQkJY29udGludWU7CiAJCX0KIAotCQkvKiBhZGQgdGhlIHBhdGggdG8gdGhlIGFwcHJvcHJpYXRlIHJlc3VsdCBsaXN0ICovCi0JCXN3aXRjaCAoc3RhdGUpIHsKLQkJY2FzZSBwYXRoX2V4Y2x1ZGVkOgotCQkJaWYgKGRpci0+ZmxhZ3MgJiBESVJfU0hPV19JR05PUkVEKQotCQkJCWRpcl9hZGRfbmFtZShkaXIsIGlzdGF0ZSwgcGF0aC5idWYsIHBhdGgubGVuKTsKLQkJCWVsc2UgaWYgKChkaXItPmZsYWdzICYgRElSX1NIT1dfSUdOT1JFRF9UT08pIHx8Ci0JCQkJKChkaXItPmZsYWdzICYgRElSX0NPTExFQ1RfSUdOT1JFRCkgJiYKLQkJCQlleGNsdWRlX21hdGNoZXNfcGF0aHNwZWMocGF0aC5idWYsIHBhdGgubGVuLAotCQkJCQkJCSBwYXRoc3BlYykpKQotCQkJCWRpcl9hZGRfaWdub3JlZChkaXIsIGlzdGF0ZSwgcGF0aC5idWYsIHBhdGgubGVuKTsKLQkJCWJyZWFrOwotCi0JCWNhc2UgcGF0aF91bnRyYWNrZWQ6Ci0JCQlpZiAoZGlyLT5mbGFncyAmIERJUl9TSE9XX0lHTk9SRUQpCi0JCQkJYnJlYWs7Ci0JCQlkaXJfYWRkX25hbWUoZGlyLCBpc3RhdGUsIHBhdGguYnVmLCBwYXRoLmxlbik7Ci0JCQlpZiAoY2Rpci5mZGlyKQotCQkJCWFkZF91bnRyYWNrZWQodW50cmFja2VkLCBwYXRoLmJ1ZiArIGJhc2VsZW4pOwotCQkJYnJlYWs7Ci0KLQkJZGVmYXVsdDoKLQkJCWJyZWFrOwotCQl9CisJCWFkZF9wYXRoX3RvX2FwcHJvcHJpYXRlX3Jlc3VsdF9saXN0KGRpciwgdW50cmFja2VkLCAmY2RpciwKKwkJCQkJCSAgICBpc3RhdGUsICZwYXRoLCBiYXNlbGVuLAorCQkJCQkJICAgIHBhdGhzcGVjLCBzdGF0ZSk7CiAJfQogCWNsb3NlX2NhY2hlZF9kaXIoJmNkaXIpOwogIG91dDoKQEAgLTIwNzQsNDEgKzIzNzcsOTUgQEAKIAkJCSAgICAgIGNvbnN0IGNoYXIgKnBhdGgsIGludCBsZW4sCiAJCQkgICAgICBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjKQogeworCS8qCisJICogV0FSTklORyBXQVJOSU5HIFdBUk5JTkc6CisJICoKKwkgKiBBbnkgdXBkYXRlcyB0byB0aGUgdHJhdmVyc2FsIGxvZ2ljIGhlcmUgbWF5IG5lZWQgY29ycmVzcG9uZGluZworCSAqIHVwZGF0ZXMgaW4gcmVhZF9kaXJlY3RvcnlfcmVjdXJzaXZlKCkuICBTZWUgNzc3YjQyMDM0NyAoZGlyOgorCSAqIHN5bmNocm9uaXplIHRyZWF0X2xlYWRpbmdfcGF0aCgpIGFuZCByZWFkX2RpcmVjdG9yeV9yZWN1cnNpdmUoKSwKKwkgKiAyMDE5LTEyLTE5KSBhbmQgaXRzIHBhcmVudCBjb21taXQgZm9yIGRldGFpbHMuCisJICovCisKIAlzdHJ1Y3Qgc3RyYnVmIHNiID0gU1RSQlVGX0lOSVQ7Ci0JaW50IGJhc2VsZW4sIHJjID0gMDsKKwlzdHJ1Y3Qgc3RyYnVmIHN1YmRpciA9IFNUUkJVRl9JTklUOworCWludCBwcmV2bGVuLCBiYXNlbGVuOwogCWNvbnN0IGNoYXIgKmNwOwotCWludCBvbGRfZmxhZ3MgPSBkaXItPmZsYWdzOworCXN0cnVjdCBjYWNoZWRfZGlyIGNkaXI7CisJZW51bSBwYXRoX3RyZWF0bWVudCBzdGF0ZSA9IHBhdGhfbm9uZTsKKworCS8qCisJICogRm9yIGVhY2ggZGlyZWN0b3J5IGNvbXBvbmVudCBvZiBwYXRoLCB3ZSBhcmUgZ29pbmcgdG8gY2hlY2sgd2hldGhlcgorCSAqIHRoYXQgcGF0aCBpcyByZWxldmFudCBnaXZlbiB0aGUgcGF0aHNwZWMuICBGb3IgZXhhbXBsZSwgaWYgcGF0aCBpcworCSAqICAgIGZvby9iYXIvYmF6LworCSAqIHRoZW4gd2Ugd2lsbCBhc2sgdHJlYXRfcGF0aCgpIHdoZXRoZXIgd2Ugc2hvdWxkIGdvIGludG8gZm9vLCB0aGVuCisJICogd2hldGhlciB3ZSBzaG91bGQgZ28gaW50byBiYXIsIHRoZW4gd2hldGhlciBiYXogaXMgcmVsZXZhbnQuCisJICogQ2hlY2tpbmcgZWFjaCBpcyBpbXBvcnRhbnQgYmVjYXVzZSBlLmcuIGlmIHBhdGggaXMKKwkgKiAgICAuZ2l0L2luZm8vCisJICogdGhlbiB3ZSBuZWVkIHRvIGNoZWNrIC5naXQgdG8ga25vdyB3ZSBzaG91bGRuJ3QgdHJhdmVyc2UgaXQuCisJICogSWYgdGhlIHJldHVybiBmcm9tIHRyZWF0X3BhdGgoKSBpczoKKwkgKiAgICAqIHBhdGhfbm9uZSwgZm9yIGFueSBwYXRoLCB3ZSByZXR1cm4gZmFsc2UuCisJICogICAgKiBwYXRoX3JlY3Vyc2UsIGZvciBhbGwgcGF0aCBjb21wb25lbnRzLCB3ZSByZXR1cm4gdHJ1ZQorCSAqICAgICogPGFueXRoaW5nIGVsc2U+IGZvciBzb21lIGludGVybWVkaWF0ZSBjb21wb25lbnQsIHdlIG1ha2Ugc3VyZQorCSAqICAgICAgICB0byBhZGQgdGhhdCBwYXRoIHRvIHRoZSByZWxldmFudCBsaXN0IGJ1dCByZXR1cm4gZmFsc2UKKwkgKiAgICAgICAgc2lnbmlmeWluZyB0aGF0IHdlIHNob3VsZG4ndCByZWN1cnNlIGludG8gaXQuCisJICovCiAKIAl3aGlsZSAobGVuICYmIHBhdGhbbGVuIC0gMV0gPT0gJy8nKQogCQlsZW4tLTsKIAlpZiAoIWxlbikKIAkJcmV0dXJuIDE7CisKKwltZW1zZXQoJmNkaXIsIDAsIHNpemVvZihjZGlyKSk7CisJY2Rpci5kX3R5cGUgPSBEVF9ESVI7CiAJYmFzZWxlbiA9IDA7Ci0JZGlyLT5mbGFncyAmPSB+RElSX1NIT1dfT1RIRVJfRElSRUNUT1JJRVM7CisJcHJldmxlbiA9IDA7CiAJd2hpbGUgKDEpIHsKLQkJY3AgPSBwYXRoICsgYmFzZWxlbiArICEhYmFzZWxlbjsKKwkJcHJldmxlbiA9IGJhc2VsZW4gKyAhIWJhc2VsZW47CisJCWNwID0gcGF0aCArIHByZXZsZW47CiAJCWNwID0gbWVtY2hyKGNwLCAnLycsIHBhdGggKyBsZW4gLSBjcCk7CiAJCWlmICghY3ApCiAJCQliYXNlbGVuID0gbGVuOwogCQllbHNlCiAJCQliYXNlbGVuID0gY3AgLSBwYXRoOwotCQlzdHJidWZfc2V0bGVuKCZzYiwgMCk7CisJCXN0cmJ1Zl9yZXNldCgmc2IpOwogCQlzdHJidWZfYWRkKCZzYiwgcGF0aCwgYmFzZWxlbik7CiAJCWlmICghaXNfZGlyZWN0b3J5KHNiLmJ1ZikpCiAJCQlicmVhazsKLQkJaWYgKHNpbXBsaWZ5X2F3YXkoc2IuYnVmLCBzYi5sZW4sIHBhdGhzcGVjKSkKLQkJCWJyZWFrOwotCQlpZiAodHJlYXRfb25lX3BhdGgoZGlyLCBOVUxMLCBpc3RhdGUsICZzYiwgYmFzZWxlbiwgcGF0aHNwZWMsCi0JCQkJICAgRFRfRElSLCBOVUxMKSA9PSBwYXRoX25vbmUpCi0JCQlicmVhazsgLyogZG8gbm90IHJlY3Vyc2UgaW50byBpdCAqLwotCQlpZiAobGVuIDw9IGJhc2VsZW4pIHsKLQkJCXJjID0gMTsKLQkJCWJyZWFrOyAvKiBmaW5pc2hlZCBjaGVja2luZyAqLworCQlzdHJidWZfcmVzZXQoJnNiKTsKKwkJc3RyYnVmX2FkZCgmc2IsIHBhdGgsIHByZXZsZW4pOworCQlzdHJidWZfcmVzZXQoJnN1YmRpcik7CisJCXN0cmJ1Zl9hZGQoJnN1YmRpciwgcGF0aCtwcmV2bGVuLCBiYXNlbGVuLXByZXZsZW4pOworCQljZGlyLmRfbmFtZSA9IHN1YmRpci5idWY7CisJCXN0YXRlID0gdHJlYXRfcGF0aChkaXIsIE5VTEwsICZjZGlyLCBpc3RhdGUsICZzYiwgcHJldmxlbiwKKwkJCQkgICAgcGF0aHNwZWMpOworCQlpZiAoc3RhdGUgPT0gcGF0aF91bnRyYWNrZWQgJiYKKwkJICAgIHJlc29sdmVfZHR5cGUoY2Rpci5kX3R5cGUsIGlzdGF0ZSwgc2IuYnVmLCBzYi5sZW4pID09IERUX0RJUiAmJgorCQkgICAgKGRpci0+ZmxhZ3MgJiBESVJfU0hPV19JR05PUkVEX1RPTyB8fAorCQkgICAgIGRvX21hdGNoX3BhdGhzcGVjKGlzdGF0ZSwgcGF0aHNwZWMsIHNiLmJ1Ziwgc2IubGVuLAorCQkJCSAgICAgICBiYXNlbGVuLCBOVUxMLCBET19NQVRDSF9MRUFESU5HX1BBVEhTUEVDKSA9PSBNQVRDSEVEX1JFQ1VSU0lWRUxZX0xFQURJTkdfUEFUSFNQRUMpKSB7CisJCQlpZiAoIW1hdGNoX3BhdGhzcGVjKGlzdGF0ZSwgcGF0aHNwZWMsIHNiLmJ1Ziwgc2IubGVuLAorCQkJCQkgICAgMCAvKiBwcmVmaXggKi8sIE5VTEwsCisJCQkJCSAgICAwIC8qIGRvIE5PVCBzcGVjaWFsIGNhc2UgZGlycyAqLykpCisJCQkJc3RhdGUgPSBwYXRoX25vbmU7CisJCQlhZGRfcGF0aF90b19hcHByb3ByaWF0ZV9yZXN1bHRfbGlzdChkaXIsIE5VTEwsICZjZGlyLAorCQkJCQkJCSAgICBpc3RhdGUsCisJCQkJCQkJICAgICZzYiwgYmFzZWxlbiwKKwkJCQkJCQkgICAgcGF0aHNwZWMsIHN0YXRlKTsKKwkJCXN0YXRlID0gcGF0aF9yZWN1cnNlOwogCQl9CisKKwkJaWYgKHN0YXRlICE9IHBhdGhfcmVjdXJzZSkKKwkJCWJyZWFrOyAvKiBkbyBub3QgcmVjdXJzZSBpbnRvIGl0ICovCisJCWlmIChsZW4gPD0gYmFzZWxlbikKKwkJCWJyZWFrOyAvKiBmaW5pc2hlZCBjaGVja2luZyAqLwogCX0KKwlhZGRfcGF0aF90b19hcHByb3ByaWF0ZV9yZXN1bHRfbGlzdChkaXIsIE5VTEwsICZjZGlyLCBpc3RhdGUsCisJCQkJCSAgICAmc2IsIGJhc2VsZW4sIHBhdGhzcGVjLAorCQkJCQkgICAgc3RhdGUpOworCisJc3RyYnVmX3JlbGVhc2UoJnN1YmRpcik7CiAJc3RyYnVmX3JlbGVhc2UoJnNiKTsKLQlkaXItPmZsYWdzID0gb2xkX2ZsYWdzOwotCXJldHVybiByYzsKKwlyZXR1cm4gc3RhdGUgPT0gcGF0aF9yZWN1cnNlOwogfQogCiBzdGF0aWMgY29uc3QgY2hhciAqZ2V0X2lkZW50X3N0cmluZyh2b2lkKQpAQCAtMjM1Myw2ICsyNzEwLDE0IEBACiAJcmV0dXJuIGxzdGF0KGYsICZzYikgPT0gMDsKIH0KIAoraW50IHJlcG9fZmlsZV9leGlzdHMoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIGNvbnN0IGNoYXIgKnBhdGgpCit7CisJaWYgKHJlcG8gIT0gdGhlX3JlcG9zaXRvcnkpCisJCUJVRygiZG8gbm90IGtub3cgaG93IHRvIGNoZWNrIGZpbGUgZXhpc3RlbmNlIGluIGFyYml0cmFyeSByZXBvIik7CisKKwlyZXR1cm4gZmlsZV9leGlzdHMocGF0aCk7Cit9CisKIHN0YXRpYyBpbnQgY21wX2ljYXNlKGNoYXIgYSwgY2hhciBiKQogewogCWlmIChhID09IGIpCkBAIC0yNDc1LDcgKzI4NDAsNyBAQAogCQkJCSAqIHdhbnRlZCBhbnl3YXkKIAkJCQkgKi8KIAkJCQljb250aW51ZTsKLQkJCS8qIGZhbGwgdGhydSAqLworCQkJLyogZmFsbCB0aHJvdWdoICovCiAJCX0gZWxzZSBpZiAoU19JU0RJUihzdC5zdF9tb2RlKSkgewogCQkJaWYgKCFyZW1vdmVfZGlyX3JlY3Vyc2UocGF0aCwgZmxhZywgJmtlcHRfZG93bikpCiAJCQkJY29udGludWU7IC8qIGhhcHB5ICovCkBAIC0yNTE3LDE0ICsyODgyLDE0IEBACiAJaWYgKCFleGNsdWRlc19maWxlKQogCQlleGNsdWRlc19maWxlID0geGRnX2NvbmZpZ19ob21lKCJpZ25vcmUiKTsKIAlpZiAoZXhjbHVkZXNfZmlsZSAmJiAhYWNjZXNzX29yX3dhcm4oZXhjbHVkZXNfZmlsZSwgUl9PSywgMCkpCi0JCWFkZF9leGNsdWRlc19mcm9tX2ZpbGVfMShkaXIsIGV4Y2x1ZGVzX2ZpbGUsCisJCWFkZF9wYXR0ZXJuc19mcm9tX2ZpbGVfMShkaXIsIGV4Y2x1ZGVzX2ZpbGUsCiAJCQkJCSBkaXItPnVudHJhY2tlZCA/ICZkaXItPnNzX2V4Y2x1ZGVzX2ZpbGUgOiBOVUxMKTsKIAogCS8qIHBlciByZXBvc2l0b3J5IHVzZXIgcHJlZmVyZW5jZSAqLwogCWlmIChzdGFydHVwX2luZm8tPmhhdmVfcmVwb3NpdG9yeSkgewogCQljb25zdCBjaGFyICpwYXRoID0gZ2l0X3BhdGhfaW5mb19leGNsdWRlKCk7CiAJCWlmICghYWNjZXNzX29yX3dhcm4ocGF0aCwgUl9PSywgMCkpCi0JCQlhZGRfZXhjbHVkZXNfZnJvbV9maWxlXzEoZGlyLCBwYXRoLAorCQkJYWRkX3BhdHRlcm5zX2Zyb21fZmlsZV8xKGRpciwgcGF0aCwKIAkJCQkJCSBkaXItPnVudHJhY2tlZCA/ICZkaXItPnNzX2luZm9fZXhjbHVkZSA6IE5VTEwpOwogCX0KIH0KQEAgLTI1NTYsMTggKzI5MjEsMTggQEAKIHsKIAlpbnQgaSwgajsKIAlzdHJ1Y3QgZXhjbHVkZV9saXN0X2dyb3VwICpncm91cDsKLQlzdHJ1Y3QgZXhjbHVkZV9saXN0ICplbDsKKwlzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbDsKIAlzdHJ1Y3QgZXhjbHVkZV9zdGFjayAqc3RrOwogCiAJZm9yIChpID0gRVhDX0NNREw7IGkgPD0gRVhDX0ZJTEU7IGkrKykgewogCQlncm91cCA9ICZkaXItPmV4Y2x1ZGVfbGlzdF9ncm91cFtpXTsKIAkJZm9yIChqID0gMDsgaiA8IGdyb3VwLT5ucjsgaisrKSB7Ci0JCQllbCA9ICZncm91cC0+ZWxbal07CisJCQlwbCA9ICZncm91cC0+cGxbal07CiAJCQlpZiAoaSA9PSBFWENfRElSUykKLQkJCQlmcmVlKChjaGFyICopZWwtPnNyYyk7Ci0JCQljbGVhcl9leGNsdWRlX2xpc3QoZWwpOworCQkJCWZyZWUoKGNoYXIgKilwbC0+c3JjKTsKKwkJCWNsZWFyX3BhdHRlcm5fbGlzdChwbCk7CiAJCX0KLQkJZnJlZShncm91cC0+ZWwpOworCQlmcmVlKGdyb3VwLT5wbCk7CiAJfQogCiAJc3RrID0gZGlyLT5leGNsdWRlX3N0YWNrOwpAQCAtMjU4MywxMyArMjk0OCw5IEBACiAJc3RydWN0IHN0YXRfZGF0YSBpbmZvX2V4Y2x1ZGVfc3RhdDsKIAlzdHJ1Y3Qgc3RhdF9kYXRhIGV4Y2x1ZGVzX2ZpbGVfc3RhdDsKIAl1aW50MzJfdCBkaXJfZmxhZ3M7Ci0JdW5zaWduZWQgY2hhciBpbmZvX2V4Y2x1ZGVfc2hhMVsyMF07Ci0JdW5zaWduZWQgY2hhciBleGNsdWRlc19maWxlX3NoYTFbMjBdOwotCWNoYXIgZXhjbHVkZV9wZXJfZGlyW0ZMRVhfQVJSQVldOwogfTsKIAogI2RlZmluZSBvdWNfb2Zmc2V0KHgpIG9mZnNldG9mKHN0cnVjdCBvbmRpc2tfdW50cmFja2VkX2NhY2hlLCB4KQotI2RlZmluZSBvdWNfc2l6ZShsZW4pIChvdWNfb2Zmc2V0KGV4Y2x1ZGVfcGVyX2RpcikgKyBsZW4gKyAxKQogCiBzdHJ1Y3Qgd3JpdGVfZGF0YSB7CiAJaW50IGluZGV4OwkgICAvKiBudW1iZXIgb2Ygd3JpdHRlbiB1bnRyYWNrZWRfY2FjaGVfZGlyICovCkBAIC0yNjcyLDIwICszMDMzLDIxIEBACiAJc3RydWN0IHdyaXRlX2RhdGEgd2Q7CiAJdW5zaWduZWQgY2hhciB2YXJidWZbMTZdOwogCWludCB2YXJpbnRfbGVuOwotCXNpemVfdCBsZW4gPSBzdHJsZW4odW50cmFja2VkLT5leGNsdWRlX3Blcl9kaXIpOworCWNvbnN0IHVuc2lnbmVkIGhhc2hzeiA9IHRoZV9oYXNoX2FsZ28tPnJhd3N6OwogCi0JRkxFWF9BTExPQ19NRU0ob3VjLCBleGNsdWRlX3Blcl9kaXIsIHVudHJhY2tlZC0+ZXhjbHVkZV9wZXJfZGlyLCBsZW4pOworCW91YyA9IHhjYWxsb2MoMSwgc2l6ZW9mKCpvdWMpKTsKIAlzdGF0X2RhdGFfdG9fZGlzaygmb3VjLT5pbmZvX2V4Y2x1ZGVfc3RhdCwgJnVudHJhY2tlZC0+c3NfaW5mb19leGNsdWRlLnN0YXQpOwogCXN0YXRfZGF0YV90b19kaXNrKCZvdWMtPmV4Y2x1ZGVzX2ZpbGVfc3RhdCwgJnVudHJhY2tlZC0+c3NfZXhjbHVkZXNfZmlsZS5zdGF0KTsKLQloYXNoY3B5KG91Yy0+aW5mb19leGNsdWRlX3NoYTEsIHVudHJhY2tlZC0+c3NfaW5mb19leGNsdWRlLm9pZC5oYXNoKTsKLQloYXNoY3B5KG91Yy0+ZXhjbHVkZXNfZmlsZV9zaGExLCB1bnRyYWNrZWQtPnNzX2V4Y2x1ZGVzX2ZpbGUub2lkLmhhc2gpOwogCW91Yy0+ZGlyX2ZsYWdzID0gaHRvbmwodW50cmFja2VkLT5kaXJfZmxhZ3MpOwogCiAJdmFyaW50X2xlbiA9IGVuY29kZV92YXJpbnQodW50cmFja2VkLT5pZGVudC5sZW4sIHZhcmJ1Zik7CiAJc3RyYnVmX2FkZChvdXQsIHZhcmJ1ZiwgdmFyaW50X2xlbik7CiAJc3RyYnVmX2FkZGJ1ZihvdXQsICZ1bnRyYWNrZWQtPmlkZW50KTsKIAotCXN0cmJ1Zl9hZGQob3V0LCBvdWMsIG91Y19zaXplKGxlbikpOworCXN0cmJ1Zl9hZGQob3V0LCBvdWMsIHNpemVvZigqb3VjKSk7CisJc3RyYnVmX2FkZChvdXQsIHVudHJhY2tlZC0+c3NfaW5mb19leGNsdWRlLm9pZC5oYXNoLCBoYXNoc3opOworCXN0cmJ1Zl9hZGQob3V0LCB1bnRyYWNrZWQtPnNzX2V4Y2x1ZGVzX2ZpbGUub2lkLmhhc2gsIGhhc2hzeik7CisJc3RyYnVmX2FkZChvdXQsIHVudHJhY2tlZC0+ZXhjbHVkZV9wZXJfZGlyLCBzdHJsZW4odW50cmFja2VkLT5leGNsdWRlX3Blcl9kaXIpICsgMSk7CiAJRlJFRV9BTkRfTlVMTChvdWMpOwogCiAJaWYgKCF1bnRyYWNrZWQtPnJvb3QpIHsKQEAgLTI3NzAsNTQgKzMxMzIsNDkgQEAKIAkJCXN0cnVjdCByZWFkX2RhdGEgKnJkKQogewogCXN0cnVjdCB1bnRyYWNrZWRfY2FjaGVfZGlyIHVkLCAqdW50cmFja2VkOwotCWNvbnN0IHVuc2lnbmVkIGNoYXIgKm5leHQsICpkYXRhID0gcmQtPmRhdGEsICplbmQgPSByZC0+ZW5kOworCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmRhdGEgPSByZC0+ZGF0YSwgKmVuZCA9IHJkLT5lbmQ7CisJY29uc3QgdW5zaWduZWQgY2hhciAqZW9zOwogCXVuc2lnbmVkIGludCB2YWx1ZTsKLQlpbnQgaSwgbGVuOworCWludCBpOwogCiAJbWVtc2V0KCZ1ZCwgMCwgc2l6ZW9mKHVkKSk7CiAKLQluZXh0ID0gZGF0YTsKLQl2YWx1ZSA9IGRlY29kZV92YXJpbnQoJm5leHQpOwotCWlmIChuZXh0ID4gZW5kKQorCXZhbHVlID0gZGVjb2RlX3ZhcmludCgmZGF0YSk7CisJaWYgKGRhdGEgPiBlbmQpCiAJCXJldHVybiAtMTsKIAl1ZC5yZWN1cnNlCSAgID0gMTsKIAl1ZC51bnRyYWNrZWRfYWxsb2MgPSB2YWx1ZTsKIAl1ZC51bnRyYWNrZWRfbnIJICAgPSB2YWx1ZTsKIAlpZiAodWQudW50cmFja2VkX25yKQogCQlBTExPQ19BUlJBWSh1ZC51bnRyYWNrZWQsIHVkLnVudHJhY2tlZF9ucik7Ci0JZGF0YSA9IG5leHQ7CiAKLQluZXh0ID0gZGF0YTsKLQl1ZC5kaXJzX2FsbG9jID0gdWQuZGlyc19uciA9IGRlY29kZV92YXJpbnQoJm5leHQpOwotCWlmIChuZXh0ID4gZW5kKQorCXVkLmRpcnNfYWxsb2MgPSB1ZC5kaXJzX25yID0gZGVjb2RlX3ZhcmludCgmZGF0YSk7CisJaWYgKGRhdGEgPiBlbmQpCiAJCXJldHVybiAtMTsKIAlBTExPQ19BUlJBWSh1ZC5kaXJzLCB1ZC5kaXJzX25yKTsKLQlkYXRhID0gbmV4dDsKIAotCWxlbiA9IHN0cmxlbigoY29uc3QgY2hhciAqKWRhdGEpOwotCW5leHQgPSBkYXRhICsgbGVuICsgMTsKLQlpZiAobmV4dCA+IHJkLT5lbmQpCisJZW9zID0gbWVtY2hyKGRhdGEsICdcMCcsIGVuZCAtIGRhdGEpOworCWlmICghZW9zIHx8IGVvcyA9PSBlbmQpCiAJCXJldHVybiAtMTsKLQkqdW50cmFja2VkXyA9IHVudHJhY2tlZCA9IHhtYWxsb2Moc3RfYWRkKHNpemVvZigqdW50cmFja2VkKSwgbGVuKSk7CisKKwkqdW50cmFja2VkXyA9IHVudHJhY2tlZCA9IHhtYWxsb2Moc3RfYWRkMyhzaXplb2YoKnVudHJhY2tlZCksIGVvcyAtIGRhdGEsIDEpKTsKIAltZW1jcHkodW50cmFja2VkLCAmdWQsIHNpemVvZih1ZCkpOwotCW1lbWNweSh1bnRyYWNrZWQtPm5hbWUsIGRhdGEsIGxlbiArIDEpOwotCWRhdGEgPSBuZXh0OworCW1lbWNweSh1bnRyYWNrZWQtPm5hbWUsIGRhdGEsIGVvcyAtIGRhdGEgKyAxKTsKKwlkYXRhID0gZW9zICsgMTsKIAogCWZvciAoaSA9IDA7IGkgPCB1bnRyYWNrZWQtPnVudHJhY2tlZF9ucjsgaSsrKSB7Ci0JCWxlbiA9IHN0cmxlbigoY29uc3QgY2hhciAqKWRhdGEpOwotCQluZXh0ID0gZGF0YSArIGxlbiArIDE7Ci0JCWlmIChuZXh0ID4gcmQtPmVuZCkKKwkJZW9zID0gbWVtY2hyKGRhdGEsICdcMCcsIGVuZCAtIGRhdGEpOworCQlpZiAoIWVvcyB8fCBlb3MgPT0gZW5kKQogCQkJcmV0dXJuIC0xOwotCQl1bnRyYWNrZWQtPnVudHJhY2tlZFtpXSA9IHhzdHJkdXAoKGNvbnN0IGNoYXIqKWRhdGEpOwotCQlkYXRhID0gbmV4dDsKKwkJdW50cmFja2VkLT51bnRyYWNrZWRbaV0gPSB4bWVtZHVweihkYXRhLCBlb3MgLSBkYXRhKTsKKwkJZGF0YSA9IGVvcyArIDE7CiAJfQogCiAJcmQtPnVjZFtyZC0+aW5kZXgrK10gPSB1bnRyYWNrZWQ7CiAJcmQtPmRhdGEgPSBkYXRhOwogCiAJZm9yIChpID0gMDsgaSA8IHVudHJhY2tlZC0+ZGlyc19ucjsgaSsrKSB7Ci0JCWxlbiA9IHJlYWRfb25lX2Rpcih1bnRyYWNrZWQtPmRpcnMgKyBpLCByZCk7Ci0JCWlmIChsZW4gPCAwKQorCQlpZiAocmVhZF9vbmVfZGlyKHVudHJhY2tlZC0+ZGlycyArIGksIHJkKSA8IDApCiAJCQlyZXR1cm4gLTE7CiAJfQogCXJldHVybiAwOwpAQCAtMjg3Miw2ICszMjI5LDkgQEAKIAlpbnQgaWRlbnRfbGVuOwogCXNzaXplX3QgbGVuOwogCWNvbnN0IGNoYXIgKmV4Y2x1ZGVfcGVyX2RpcjsKKwljb25zdCB1bnNpZ25lZCBoYXNoc3ogPSB0aGVfaGFzaF9hbGdvLT5yYXdzejsKKwljb25zdCB1bnNpZ25lZCBvZmZzZXQgPSBzaXplb2Yoc3RydWN0IG9uZGlza191bnRyYWNrZWRfY2FjaGUpOworCWNvbnN0IHVuc2lnbmVkIGV4Y2x1ZGVfcGVyX2Rpcl9vZmZzZXQgPSBvZmZzZXQgKyAyICogaGFzaHN6OwogCiAJaWYgKHN6IDw9IDEgfHwgZW5kWy0xXSAhPSAnXDAnKQogCQlyZXR1cm4gTlVMTDsKQEAgLTI4ODMsNyArMzI0Myw3IEBACiAJaWRlbnQgPSAoY29uc3QgY2hhciAqKW5leHQ7CiAJbmV4dCArPSBpZGVudF9sZW47CiAKLQlpZiAobmV4dCArIG91Y19zaXplKDApID4gZW5kKQorCWlmIChuZXh0ICsgZXhjbHVkZV9wZXJfZGlyX29mZnNldCArIDEgPiBlbmQpCiAJCXJldHVybiBOVUxMOwogCiAJdWMgPSB4Y2FsbG9jKDEsIHNpemVvZigqdWMpKTsKQEAgLTI4OTEsMTUgKzMyNTEsMTUgQEAKIAlzdHJidWZfYWRkKCZ1Yy0+aWRlbnQsIGlkZW50LCBpZGVudF9sZW4pOwogCWxvYWRfb2lkX3N0YXQoJnVjLT5zc19pbmZvX2V4Y2x1ZGUsCiAJCSAgICAgIG5leHQgKyBvdWNfb2Zmc2V0KGluZm9fZXhjbHVkZV9zdGF0KSwKLQkJICAgICAgbmV4dCArIG91Y19vZmZzZXQoaW5mb19leGNsdWRlX3NoYTEpKTsKKwkJICAgICAgbmV4dCArIG9mZnNldCk7CiAJbG9hZF9vaWRfc3RhdCgmdWMtPnNzX2V4Y2x1ZGVzX2ZpbGUsCiAJCSAgICAgIG5leHQgKyBvdWNfb2Zmc2V0KGV4Y2x1ZGVzX2ZpbGVfc3RhdCksCi0JCSAgICAgIG5leHQgKyBvdWNfb2Zmc2V0KGV4Y2x1ZGVzX2ZpbGVfc2hhMSkpOworCQkgICAgICBuZXh0ICsgb2Zmc2V0ICsgaGFzaHN6KTsKIAl1Yy0+ZGlyX2ZsYWdzID0gZ2V0X2JlMzIobmV4dCArIG91Y19vZmZzZXQoZGlyX2ZsYWdzKSk7Ci0JZXhjbHVkZV9wZXJfZGlyID0gKGNvbnN0IGNoYXIgKiluZXh0ICsgb3VjX29mZnNldChleGNsdWRlX3Blcl9kaXIpOworCWV4Y2x1ZGVfcGVyX2RpciA9IChjb25zdCBjaGFyICopbmV4dCArIGV4Y2x1ZGVfcGVyX2Rpcl9vZmZzZXQ7CiAJdWMtPmV4Y2x1ZGVfcGVyX2RpciA9IHhzdHJkdXAoZXhjbHVkZV9wZXJfZGlyKTsKIAkvKiBOVUwgYWZ0ZXIgZXhjbHVkZV9wZXJfZGlyIGlzIGNvdmVyZWQgYnkgc2l6ZW9mKCpvdWMpICovCi0JbmV4dCArPSBvdWNfc2l6ZShzdHJsZW4oZXhjbHVkZV9wZXJfZGlyKSk7CisJbmV4dCArPSBleGNsdWRlX3Blcl9kaXJfb2Zmc2V0ICsgc3RybGVuKGV4Y2x1ZGVfcGVyX2RpcikgKyAxOwogCWlmIChuZXh0ID49IGVuZCkKIAkJZ290byBkb25lMjsKIApkaWZmIC0tZ2l0IGEvZGlyLmggYi9kaXIuaAppbmRleCBlM2VjMjYxLi41ODU1YzA2IDEwMDY0NAotLS0gYS9kaXIuaAorKysgYi9kaXIuaApAQCAtMSwzNCArMSw2OCBAQAogI2lmbmRlZiBESVJfSAogI2RlZmluZSBESVJfSAogCi0vKiBTZWUgRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLWRpcmVjdG9yeS1saXN0aW5nLnR4dCAqLwotCiAjaW5jbHVkZSAiY2FjaGUuaCIKKyNpbmNsdWRlICJoYXNobWFwLmgiCiAjaW5jbHVkZSAic3RyYnVmLmgiCiAKKy8qKgorICogVGhlIGRpcmVjdG9yeSBsaXN0aW5nIEFQSSBpcyB1c2VkIHRvIGVudW1lcmF0ZSBwYXRocyBpbiB0aGUgd29yayB0cmVlLAorICogb3B0aW9uYWxseSB0YWtpbmcgYC5naXQvaW5mby9leGNsdWRlYCBhbmQgYC5naXRpZ25vcmVgIGZpbGVzIHBlciBkaXJlY3RvcnkKKyAqIGludG8gYWNjb3VudC4KKyAqLworCisvKioKKyAqIENhbGxpbmcgc2VxdWVuY2UKKyAqIC0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiBOb3RlOiBUaGUgaW5kZXggbWF5IGJlIGNoZWNrZWQgZm9yIC5naXRpZ25vcmUgZmlsZXMgdGhhdCBhcmUKKyAqIENFX1NLSVBfV09SS1RSRUUgbWFya2VkLiBJZiB5b3Ugd2FudCB0byBleGNsdWRlIGZpbGVzLCBtYWtlIHN1cmUgeW91IGhhdmUKKyAqIGxvYWRlZCB0aGUgaW5kZXggZmlyc3QuCisgKgorICogLSBQcmVwYXJlIGBzdHJ1Y3QgZGlyX3N0cnVjdCBkaXJgIGFuZCBjbGVhciBpdCB3aXRoIGBtZW1zZXQoJmRpciwgMCwKKyAqIHNpemVvZihkaXIpKWAuCisgKgorICogLSBUbyBhZGQgc2luZ2xlIGV4Y2x1ZGUgcGF0dGVybiwgY2FsbCBgYWRkX3BhdHRlcm5fbGlzdCgpYCBhbmQgdGhlbgorICogICBgYWRkX3BhdHRlcm4oKWAuCisgKgorICogLSBUbyBhZGQgcGF0dGVybnMgZnJvbSBhIGZpbGUgKGUuZy4gYC5naXQvaW5mby9leGNsdWRlYCksIGNhbGwKKyAqICAgYGFkZF9wYXR0ZXJuc19mcm9tX2ZpbGUoKWAgLCBhbmQvb3Igc2V0IGBkaXIuZXhjbHVkZV9wZXJfZGlyYC4gIEEKKyAqICAgc2hvcnQtaGFuZCBmdW5jdGlvbiBgc2V0dXBfc3RhbmRhcmRfZXhjbHVkZXMoKWAgY2FuIGJlIHVzZWQgdG8gc2V0CisgKiAgIHVwIHRoZSBzdGFuZGFyZCBzZXQgb2YgZXhjbHVkZSBzZXR0aW5ncy4KKyAqCisgKiAtIFNldCBvcHRpb25zIGRlc2NyaWJlZCBpbiB0aGUgRGF0YSBTdHJ1Y3R1cmUgc2VjdGlvbiBhYm92ZS4KKyAqCisgKiAtIENhbGwgYHJlYWRfZGlyZWN0b3J5KClgLgorICoKKyAqIC0gVXNlIGBkaXIuZW50cmllc1tdYC4KKyAqCisgKiAtIENhbGwgYGNsZWFyX2RpcmVjdG9yeSgpYCB3aGVuIG5vbmUgb2YgdGhlIGNvbnRhaW5lZCBlbGVtZW50cyBhcmUgbm8gbG9uZ2VyIGluIHVzZS4KKyAqCisgKi8KKwogc3RydWN0IGRpcl9lbnRyeSB7CiAJdW5zaWduZWQgaW50IGxlbjsKIAljaGFyIG5hbWVbRkxFWF9BUlJBWV07IC8qIG1vcmUgKi8KIH07CiAKLSNkZWZpbmUgRVhDX0ZMQUdfTk9ESVIgMQotI2RlZmluZSBFWENfRkxBR19FTkRTV0lUSCA0Ci0jZGVmaW5lIEVYQ19GTEFHX01VU1RCRURJUiA4Ci0jZGVmaW5lIEVYQ19GTEFHX05FR0FUSVZFIDE2CisjZGVmaW5lIFBBVFRFUk5fRkxBR19OT0RJUiAxCisjZGVmaW5lIFBBVFRFUk5fRkxBR19FTkRTV0lUSCA0CisjZGVmaW5lIFBBVFRFUk5fRkxBR19NVVNUQkVESVIgOAorI2RlZmluZSBQQVRURVJOX0ZMQUdfTkVHQVRJVkUgMTYKIAotc3RydWN0IGV4Y2x1ZGUgeworc3RydWN0IHBhdGhfcGF0dGVybiB7CiAJLyoKLQkgKiBUaGlzIGFsbG93cyBjYWxsZXJzIG9mIGxhc3RfZXhjbHVkZV9tYXRjaGluZygpIGV0Yy4KKwkgKiBUaGlzIGFsbG93cyBjYWxsZXJzIG9mIGxhc3RfbWF0Y2hpbmdfcGF0dGVybigpIGV0Yy4KIAkgKiB0byBkZXRlcm1pbmUgdGhlIG9yaWdpbiBvZiB0aGUgbWF0Y2hpbmcgcGF0dGVybi4KIAkgKi8KLQlzdHJ1Y3QgZXhjbHVkZV9saXN0ICplbDsKKwlzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbDsKIAogCWNvbnN0IGNoYXIgKnBhdHRlcm47CiAJaW50IHBhdHRlcm5sZW47CiAJaW50IG5vd2lsZGNhcmRsZW47CiAJY29uc3QgY2hhciAqYmFzZTsKIAlpbnQgYmFzZWxlbjsKLQl1bnNpZ25lZCBmbGFnczsJCS8qIEVYQ19GTEFHXyogKi8KKwl1bnNpZ25lZCBmbGFnczsJCS8qIFBBVFRFUk5fRkxBR18qICovCiAKIAkvKgogCSAqIENvdW50aW5nIHN0YXJ0cyBmcm9tIDEgZm9yIGxpbmUgbnVtYmVycyBpbiBpZ25vcmUgZmlsZXMsCkBAIC0zNyw2ICs3MSwxMyBAQAogCWludCBzcmNwb3M7CiB9OwogCisvKiB1c2VkIGZvciBoYXNobWFwcyBmb3IgY29uZSBwYXR0ZXJucyAqLworc3RydWN0IHBhdHRlcm5fZW50cnkgeworCXN0cnVjdCBoYXNobWFwX2VudHJ5IGVudDsKKwljaGFyICpwYXR0ZXJuOworCXNpemVfdCBwYXR0ZXJubGVuOworfTsKKwogLyoKICAqIEVhY2ggZXhjbHVkZXMgZmlsZSB3aWxsIGJlIHBhcnNlZCBpbnRvIGEgZnJlc2ggZXhjbHVkZV9saXN0IHdoaWNoCiAgKiBpcyBhcHBlbmRlZCB0byB0aGUgcmVsZXZhbnQgZXhjbHVkZV9saXN0X2dyb3VwIChlaXRoZXIgRVhDX0RJUlMgb3IKQEAgLTQ0LDcgKzg1LDcgQEAKICAqIGNhbiBhbHNvIGJlIHVzZWQgdG8gcmVwcmVzZW50IHRoZSBsaXN0IG9mIC0tZXhjbHVkZSB2YWx1ZXMgcGFzc2VkCiAgKiB2aWEgQ0xJIGFyZ3MuCiAgKi8KLXN0cnVjdCBleGNsdWRlX2xpc3Qgeworc3RydWN0IHBhdHRlcm5fbGlzdCB7CiAJaW50IG5yOwogCWludCBhbGxvYzsKIApAQCAtNTQsNyArOTUsMjcgQEAKIAkvKiBvcmlnaW4gb2YgbGlzdCwgZS5nLiBwYXRoIHRvIGZpbGVuYW1lLCBvciBkZXNjcmlwdGl2ZSBzdHJpbmcgKi8KIAljb25zdCBjaGFyICpzcmM7CiAKLQlzdHJ1Y3QgZXhjbHVkZSAqKmV4Y2x1ZGVzOworCXN0cnVjdCBwYXRoX3BhdHRlcm4gKipwYXR0ZXJuczsKKworCS8qCisJICogV2hpbGUgc2Nhbm5pbmcgdGhlIGV4Y2x1ZGVzLCB3ZSBhdHRlbXB0IHRvIG1hdGNoIHRoZSBwYXR0ZXJucworCSAqIHdpdGggYSBtb3JlIHJlc3RyaWN0ZWQgc2V0IHRoYXQgYWxsb3dzIHVzIHRvIHVzZSBoYXNoc2V0cyBmb3IKKwkgKiBtYXRjaGluZyBsb2dpYywgd2hpY2ggaXMgZmFzdGVyIHRoYW4gdGhlIGxpbmVhciBsb29rdXAgaW4gdGhlCisJICogZXhjbHVkZXMgYXJyYXkgYWJvdmUuIElmIG5vbi16ZXJvLCB0aGF0IGNoZWNrIHN1Y2NlZWRlZC4KKwkgKi8KKwl1bnNpZ25lZCB1c2VfY29uZV9wYXR0ZXJuczsKKwl1bnNpZ25lZCBmdWxsX2NvbmU7CisKKwkvKgorCSAqIFN0b3JlcyBwYXRocyB3aGVyZSBldmVyeXRoaW5nIHN0YXJ0aW5nIHdpdGggdGhvc2UgcGF0aHMKKwkgKiBpcyBpbmNsdWRlZC4KKwkgKi8KKwlzdHJ1Y3QgaGFzaG1hcCByZWN1cnNpdmVfaGFzaG1hcDsKKworCS8qCisJICogVXNlZCB0byBjaGVjayBzaW5nbGUtbGV2ZWwgcGFyZW50cyBvZiBibG9icy4KKwkgKi8KKwlzdHJ1Y3QgaGFzaG1hcCBwYXJlbnRfaGFzaG1hcDsKIH07CiAKIC8qCkBAIC03Miw3ICsxMzMsNyBAQAogCiBzdHJ1Y3QgZXhjbHVkZV9saXN0X2dyb3VwIHsKIAlpbnQgbnIsIGFsbG9jOwotCXN0cnVjdCBleGNsdWRlX2xpc3QgKmVsOworCXN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsOwogfTsKIAogc3RydWN0IG9pZF9zdGF0IHsKQEAgLTE0NCwyNCArMjA1LDEwMSBAQAogCXVuc2lnbmVkIGludCB1c2VfZnNtb25pdG9yIDogMTsKIH07CiAKKy8qKgorICogc3RydWN0dXJlIGlzIHVzZWQgdG8gcGFzcyBkaXJlY3RvcnkgdHJhdmVyc2FsIG9wdGlvbnMgdG8gdGhlIGxpYnJhcnkgYW5kIHRvCisgKiByZWNvcmQgdGhlIHBhdGhzIGRpc2NvdmVyZWQuIEEgc2luZ2xlIGBzdHJ1Y3QgZGlyX3N0cnVjdGAgaXMgdXNlZCByZWdhcmRsZXNzCisgKiBvZiB3aGV0aGVyIG9yIG5vdCB0aGUgdHJhdmVyc2FsIHJlY3Vyc2l2ZWx5IGRlc2NlbmRzIGludG8gc3ViZGlyZWN0b3JpZXMuCisgKi8KIHN0cnVjdCBkaXJfc3RydWN0IHsKLQlpbnQgbnIsIGFsbG9jOwotCWludCBpZ25vcmVkX25yLCBpZ25vcmVkX2FsbG9jOworCisJLyogVGhlIG51bWJlciBvZiBtZW1iZXJzIGluIGBlbnRyaWVzW11gIGFycmF5LiAqLworCWludCBucjsKKworCS8qIEludGVybmFsIHVzZTsga2VlcHMgdHJhY2sgb2YgYWxsb2NhdGlvbiBvZiBgZW50cmllc1tdYCBhcnJheS4qLworCWludCBhbGxvYzsKKworCS8qIFRoZSBudW1iZXIgb2YgbWVtYmVycyBpbiBgaWdub3JlZFtdYCBhcnJheS4gKi8KKwlpbnQgaWdub3JlZF9ucjsKKworCWludCBpZ25vcmVkX2FsbG9jOworCisJLyogYml0LWZpZWxkIG9mIG9wdGlvbnMgKi8KIAllbnVtIHsKKworCQkvKioKKwkJICogUmV0dXJuIGp1c3QgaWdub3JlZCBmaWxlcyBpbiBgZW50cmllc1tdYCwgbm90IHVudHJhY2tlZCBmaWxlcy4KKwkJICogVGhpcyBmbGFnIGlzIG11dHVhbGx5IGV4Y2x1c2l2ZSB3aXRoIGBESVJfU0hPV19JR05PUkVEX1RPT2AuCisJCSAqLwogCQlESVJfU0hPV19JR05PUkVEID0gMTw8MCwKKworCQkvKiBJbmNsdWRlIGEgZGlyZWN0b3J5IHRoYXQgaXMgbm90IHRyYWNrZWQuICovCiAJCURJUl9TSE9XX09USEVSX0RJUkVDVE9SSUVTID0gMTw8MSwKKworCQkvKiBEbyBub3QgaW5jbHVkZSBhIGRpcmVjdG9yeSB0aGF0IGlzIG5vdCB0cmFja2VkIGFuZCBpcyBlbXB0eS4gKi8KIAkJRElSX0hJREVfRU1QVFlfRElSRUNUT1JJRVMgPSAxPDwyLAorCisJCS8qKgorCQkgKiBJZiBzZXQsIHJlY3Vyc2UgaW50byBhIGRpcmVjdG9yeSB0aGF0IGxvb2tzIGxpa2UgYSBHaXQgZGlyZWN0b3J5LgorCQkgKiBPdGhlcndpc2UgaXQgaXMgc2hvd24gYXMgYSBkaXJlY3RvcnkuCisJCSAqLwogCQlESVJfTk9fR0lUTElOS1MgPSAxPDwzLAorCisJCS8qKgorCQkgKiBTcGVjaWFsIG1vZGUgZm9yIGdpdC1hZGQuIFJldHVybiBpZ25vcmVkIGZpbGVzIGluIGBpZ25vcmVkW11gIGFuZAorCQkgKiB1bnRyYWNrZWQgZmlsZXMgaW4gYGVudHJpZXNbXWAuIE9ubHkgcmV0dXJucyBpZ25vcmVkIGZpbGVzIHRoYXQgbWF0Y2gKKwkJICogcGF0aHNwZWMgZXhhY3RseSAobm8gd2lsZGNhcmRzKS4gRG9lcyBub3QgcmVjdXJzZSBpbnRvIGlnbm9yZWQKKwkJICogZGlyZWN0b3JpZXMuCisJCSAqLwogCQlESVJfQ09MTEVDVF9JR05PUkVEID0gMTw8NCwKKworCQkvKioKKwkJICogU2ltaWxhciB0byBgRElSX1NIT1dfSUdOT1JFRGAsIGJ1dCByZXR1cm4gaWdub3JlZCBmaWxlcyBpbgorCQkgKiBgaWdub3JlZFtdYCBpbiBhZGRpdGlvbiB0byB1bnRyYWNrZWQgZmlsZXMgaW4gYGVudHJpZXNbXWAuCisJCSAqIFRoaXMgZmxhZyBpcyBtdXR1YWxseSBleGNsdXNpdmUgd2l0aCBgRElSX1NIT1dfSUdOT1JFRGAuCisJCSAqLwogCQlESVJfU0hPV19JR05PUkVEX1RPTyA9IDE8PDUsCisKIAkJRElSX0NPTExFQ1RfS0lMTEVEX09OTFkgPSAxPDw2LAorCisJCS8qKgorCQkgKiBPbmx5IGhhcyBtZWFuaW5nIGlmIGBESVJfU0hPV19JR05PUkVEX1RPT2AgaXMgYWxzbyBzZXQ7IGlmIHRoaXMgaXMKKwkJICogc2V0LCB0aGUgdW50cmFja2VkIGNvbnRlbnRzIG9mIHVudHJhY2tlZCBkaXJlY3RvcmllcyBhcmUgYWxzbworCQkgKiByZXR1cm5lZCBpbiBgZW50cmllc1tdYC4KKwkJICovCiAJCURJUl9LRUVQX1VOVFJBQ0tFRF9DT05URU5UUyA9IDE8PDcsCi0JCURJUl9TSE9XX0lHTk9SRURfVE9PX01PREVfTUFUQ0hJTkcgPSAxPDw4CisKKwkJLyoqCisJCSAqIE9ubHkgaGFzIG1lYW5pbmcgaWYgYERJUl9TSE9XX0lHTk9SRURfVE9PYCBpcyBhbHNvIHNldDsgaWYgdGhpcyBpcworCQkgKiBzZXQsIHJldHVybnMgaWdub3JlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgdGhhdCBtYXRjaCBhbiBleGNsdWRlCisJCSAqIHBhdHRlcm4uIElmIGEgZGlyZWN0b3J5IG1hdGNoZXMgYW4gZXhjbHVkZSBwYXR0ZXJuLCB0aGVuIHRoZQorCQkgKiBkaXJlY3RvcnkgaXMgcmV0dXJuZWQgYW5kIHRoZSBjb250YWluZWQgcGF0aHMgYXJlIG5vdC4gQSBkaXJlY3RvcnkKKwkJICogdGhhdCBkb2VzIG5vdCBtYXRjaCBhbiBleGNsdWRlIHBhdHRlcm4gd2lsbCBub3QgYmUgcmV0dXJuZWQgZXZlbiBpZgorCQkgKiBhbGwgb2YgaXRzIGNvbnRlbnRzIGFyZSBpZ25vcmVkLiBJbiB0aGlzIGNhc2UsIHRoZSBjb250ZW50cyBhcmUKKwkJICogcmV0dXJuZWQgYXMgaW5kaXZpZHVhbCBlbnRyaWVzLgorCQkgKgorCQkgKiBJZiB0aGlzIGlzIHNldCwgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHRoYXQgZXhwbGljaXRseSBtYXRjaCBhbiBpZ25vcmUKKwkJICogcGF0dGVybiBhcmUgcmVwb3J0ZWQuIEltcGxpY2l0bHkgaWdub3JlZCBkaXJlY3RvcmllcyAoZGlyZWN0b3JpZXMgdGhhdAorCQkgKiBkbyBub3QgbWF0Y2ggYW4gaWdub3JlIHBhdHRlcm4sIGJ1dCB3aG9zZSBjb250ZW50cyBhcmUgYWxsIGlnbm9yZWQpCisJCSAqIGFyZSBub3QgcmVwb3J0ZWQsIGluc3RlYWQgYWxsIG9mIHRoZSBjb250ZW50cyBhcmUgcmVwb3J0ZWQuCisJCSAqLworCQlESVJfU0hPV19JR05PUkVEX1RPT19NT0RFX01BVENISU5HID0gMTw8OCwKKworCQlESVJfU0tJUF9ORVNURURfR0lUID0gMTw8OQogCX0gZmxhZ3M7CisKKwkvKiBBbiBhcnJheSBvZiBgc3RydWN0IGRpcl9lbnRyeWAsIGVhY2ggZWxlbWVudCBvZiB3aGljaCBkZXNjcmliZXMgYSBwYXRoLiAqLwogCXN0cnVjdCBkaXJfZW50cnkgKiplbnRyaWVzOworCisJLyoqCisJICogdXNlZCBmb3IgaWdub3JlZCBwYXRocyB3aXRoIHRoZSBgRElSX1NIT1dfSUdOT1JFRF9UT09gIGFuZAorCSAqIGBESVJfQ09MTEVDVF9JR05PUkVEYCBmbGFncy4KKwkgKi8KIAlzdHJ1Y3QgZGlyX2VudHJ5ICoqaWdub3JlZDsKIAotCS8qIEV4Y2x1ZGUgaW5mbyAqLworCS8qKgorCSAqIFRoZSBuYW1lIG9mIHRoZSBmaWxlIHRvIGJlIHJlYWQgaW4gZWFjaCBkaXJlY3RvcnkgZm9yIGV4Y2x1ZGVkIGZpbGVzCisJICogKHR5cGljYWxseSBgLmdpdGlnbm9yZWApLgorCSAqLwogCWNvbnN0IGNoYXIgKmV4Y2x1ZGVfcGVyX2RpcjsKIAogCS8qCkBAIC0xOTEsNyArMzI5LDcgQEAKIAkgKiBtYXRjaGluZyBleGNsdWRlIHN0cnVjdCBpZiB0aGUgZGlyZWN0b3J5IGlzIGV4Y2x1ZGVkLgogCSAqLwogCXN0cnVjdCBleGNsdWRlX3N0YWNrICpleGNsdWRlX3N0YWNrOwotCXN0cnVjdCBleGNsdWRlICpleGNsdWRlOworCXN0cnVjdCBwYXRoX3BhdHRlcm4gKnBhdHRlcm47CiAJc3RydWN0IHN0cmJ1ZiBiYXNlYnVmOwogCiAJLyogRW5hYmxlIHVudHJhY2tlZCBmaWxlIGNhY2hlIGlmIHNldCAqLwpAQCAtMjAyLDcgKzM0MCw3IEBACiB9OwogCiAvKkNvdW50IHRoZSBudW1iZXIgb2Ygc2xhc2hlcyBmb3Igc3RyaW5nIHMqLwotZXh0ZXJuIGludCBjb3VudF9zbGFzaGVzKGNvbnN0IGNoYXIgKnMpOworaW50IGNvdW50X3NsYXNoZXMoY29uc3QgY2hhciAqcyk7CiAKIC8qCiAgKiBUaGUgb3JkZXJpbmcgb2YgdGhlc2UgY29uc3RhbnRzIGlzIHNpZ25pZmljYW50LCB3aXRoCkBAIC0yMTEsMjkgKzM0OSw0NCBAQAogICogd2hlbiBwb3B1bGF0aW5nIHRoZSBzZWVuW10gYXJyYXkuCiAgKi8KICNkZWZpbmUgTUFUQ0hFRF9SRUNVUlNJVkVMWSAxCi0jZGVmaW5lIE1BVENIRURfRk5NQVRDSCAyCi0jZGVmaW5lIE1BVENIRURfRVhBQ1RMWSAzCi1leHRlcm4gaW50IHNpbXBsZV9sZW5ndGgoY29uc3QgY2hhciAqbWF0Y2gpOwotZXh0ZXJuIGludCBub193aWxkY2FyZChjb25zdCBjaGFyICpzdHJpbmcpOwotZXh0ZXJuIGNoYXIgKmNvbW1vbl9wcmVmaXgoY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYyk7Ci1leHRlcm4gaW50IG1hdGNoX3BhdGhzcGVjKGNvbnN0IHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAotCQkJICBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjLAotCQkJICBjb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbiwKLQkJCSAgaW50IHByZWZpeCwgY2hhciAqc2VlbiwgaW50IGlzX2Rpcik7Ci1leHRlcm4gaW50IHJlcG9ydF9wYXRoX2Vycm9yKGNvbnN0IGNoYXIgKnBzX21hdGNoZWQsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IHdpdGhpbl9kZXB0aChjb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbiwgaW50IGRlcHRoLCBpbnQgbWF4X2RlcHRoKTsKKyNkZWZpbmUgTUFUQ0hFRF9SRUNVUlNJVkVMWV9MRUFESU5HX1BBVEhTUEVDIDIKKyNkZWZpbmUgTUFUQ0hFRF9GTk1BVENIIDMKKyNkZWZpbmUgTUFUQ0hFRF9FWEFDVExZIDQKK2ludCBzaW1wbGVfbGVuZ3RoKGNvbnN0IGNoYXIgKm1hdGNoKTsKK2ludCBub193aWxkY2FyZChjb25zdCBjaGFyICpzdHJpbmcpOworY2hhciAqY29tbW9uX3ByZWZpeChjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjKTsKK2ludCBtYXRjaF9wYXRoc3BlYyhjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKKwkJICAgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYywKKwkJICAgY29uc3QgY2hhciAqbmFtZSwgaW50IG5hbWVsZW4sCisJCSAgIGludCBwcmVmaXgsIGNoYXIgKnNlZW4sIGludCBpc19kaXIpOworaW50IHJlcG9ydF9wYXRoX2Vycm9yKGNvbnN0IGNoYXIgKnBzX21hdGNoZWQsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMpOworaW50IHdpdGhpbl9kZXB0aChjb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbiwgaW50IGRlcHRoLCBpbnQgbWF4X2RlcHRoKTsKIAotZXh0ZXJuIGludCBmaWxsX2RpcmVjdG9yeShzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyLAotCQkJICBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKLQkJCSAgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYyk7Ci1leHRlcm4gaW50IHJlYWRfZGlyZWN0b3J5KHN0cnVjdCBkaXJfc3RydWN0ICosIHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAotCQkJICBjb25zdCBjaGFyICpwYXRoLCBpbnQgbGVuLAotCQkJICBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjKTsKK2ludCBmaWxsX2RpcmVjdG9yeShzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyLAorCQkgICBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKKwkJICAgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYyk7CitpbnQgcmVhZF9kaXJlY3Rvcnkoc3RydWN0IGRpcl9zdHJ1Y3QgKiwgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCisJCSAgIGNvbnN0IGNoYXIgKnBhdGgsIGludCBsZW4sCisJCSAgIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMpOwogCi1leHRlcm4gaW50IGlzX2V4Y2x1ZGVkX2Zyb21fbGlzdChjb25zdCBjaGFyICpwYXRobmFtZSwgaW50IHBhdGhsZW4sCi0JCQkJIGNvbnN0IGNoYXIgKmJhc2VuYW1lLCBpbnQgKmR0eXBlLAotCQkJCSBzdHJ1Y3QgZXhjbHVkZV9saXN0ICplbCwKLQkJCQkgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpOworZW51bSBwYXR0ZXJuX21hdGNoX3Jlc3VsdCB7CisJVU5ERUNJREVEID0gLTEsCisJTk9UX01BVENIRUQgPSAwLAorCU1BVENIRUQgPSAxLAorCU1BVENIRURfUkVDVVJTSVZFID0gMiwKK307CisKKy8qCisgKiBTY2FuIHRoZSBsaXN0IG9mIHBhdHRlcm5zIHRvIGRldGVybWluZSBpZiB0aGUgb3JkZXJlZCBsaXN0CisgKiBvZiBwYXR0ZXJucyBtYXRjaGVzIG9uICdwYXRobmFtZScuCisgKgorICogUmV0dXJuIDEgZm9yIGEgbWF0Y2gsIDAgZm9yIG5vdCBtYXRjaGVkIGFuZCAtMSBmb3IgdW5kZWNpZGVkLgorICovCitlbnVtIHBhdHRlcm5fbWF0Y2hfcmVzdWx0IHBhdGhfbWF0Y2hlc19wYXR0ZXJuX2xpc3QoY29uc3QgY2hhciAqcGF0aG5hbWUsCisJCQkJaW50IHBhdGhsZW4sCisJCQkJY29uc3QgY2hhciAqYmFzZW5hbWUsIGludCAqZHR5cGUsCisJCQkJc3RydWN0IHBhdHRlcm5fbGlzdCAqcGwsCisJCQkJc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpOwogc3RydWN0IGRpcl9lbnRyeSAqZGlyX2FkZF9pZ25vcmVkKHN0cnVjdCBkaXJfc3RydWN0ICpkaXIsCiAJCQkJICBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKIAkJCQkgIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBpbnQgbGVuKTsKQEAgLTI0MiwzNyArMzk1LDQ2IEBACiAgKiB0aGVzZSBpbXBsZW1lbnQgdGhlIG1hdGNoaW5nIGxvZ2ljIGZvciBkaXIuYzpleGNsdWRlZF9mcm9tX2xpc3QgYW5kCiAgKiBhdHRyLmM6cGF0aF9tYXRjaGVzKCkKICAqLwotZXh0ZXJuIGludCBtYXRjaF9iYXNlbmFtZShjb25zdCBjaGFyICosIGludCwKLQkJCSAgY29uc3QgY2hhciAqLCBpbnQsIGludCwgdW5zaWduZWQpOwotZXh0ZXJuIGludCBtYXRjaF9wYXRobmFtZShjb25zdCBjaGFyICosIGludCwKLQkJCSAgY29uc3QgY2hhciAqLCBpbnQsCi0JCQkgIGNvbnN0IGNoYXIgKiwgaW50LCBpbnQsIHVuc2lnbmVkKTsKK2ludCBtYXRjaF9iYXNlbmFtZShjb25zdCBjaGFyICosIGludCwKKwkJICAgY29uc3QgY2hhciAqLCBpbnQsIGludCwgdW5zaWduZWQpOworaW50IG1hdGNoX3BhdGhuYW1lKGNvbnN0IGNoYXIgKiwgaW50LAorCQkgICBjb25zdCBjaGFyICosIGludCwKKwkJICAgY29uc3QgY2hhciAqLCBpbnQsIGludCwgdW5zaWduZWQpOwogCi1leHRlcm4gc3RydWN0IGV4Y2x1ZGUgKmxhc3RfZXhjbHVkZV9tYXRjaGluZyhzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyLAotCQkJCQkgICAgIHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAotCQkJCQkgICAgIGNvbnN0IGNoYXIgKm5hbWUsIGludCAqZHR5cGUpOworc3RydWN0IHBhdGhfcGF0dGVybiAqbGFzdF9tYXRjaGluZ19wYXR0ZXJuKHN0cnVjdCBkaXJfc3RydWN0ICpkaXIsCisJCQkJCSAgIHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAorCQkJCQkgICBjb25zdCBjaGFyICpuYW1lLCBpbnQgKmR0eXBlKTsKIAotZXh0ZXJuIGludCBpc19leGNsdWRlZChzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyLAotCQkgICAgICAgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCi0JCSAgICAgICBjb25zdCBjaGFyICpuYW1lLCBpbnQgKmR0eXBlKTsKK2ludCBpc19leGNsdWRlZChzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyLAorCQlzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKKwkJY29uc3QgY2hhciAqbmFtZSwgaW50ICpkdHlwZSk7CiAKLWV4dGVybiBzdHJ1Y3QgZXhjbHVkZV9saXN0ICphZGRfZXhjbHVkZV9saXN0KHN0cnVjdCBkaXJfc3RydWN0ICpkaXIsCi0JCQkJCSAgICAgaW50IGdyb3VwX3R5cGUsIGNvbnN0IGNoYXIgKnNyYyk7Ci1leHRlcm4gaW50IGFkZF9leGNsdWRlc19mcm9tX2ZpbGVfdG9fbGlzdChjb25zdCBjaGFyICpmbmFtZSwgY29uc3QgY2hhciAqYmFzZSwgaW50IGJhc2VsZW4sCi0JCQkJCSAgc3RydWN0IGV4Y2x1ZGVfbGlzdCAqZWwsIHN0cnVjdCAgaW5kZXhfc3RhdGUgKmlzdGF0ZSk7Ci1leHRlcm4gdm9pZCBhZGRfZXhjbHVkZXNfZnJvbV9maWxlKHN0cnVjdCBkaXJfc3RydWN0ICosIGNvbnN0IGNoYXIgKmZuYW1lKTsKLWV4dGVybiBpbnQgYWRkX2V4Y2x1ZGVzX2Zyb21fYmxvYl90b19saXN0KHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKLQkJCQkJICBjb25zdCBjaGFyICpiYXNlLCBpbnQgYmFzZWxlbiwKLQkJCQkJICBzdHJ1Y3QgZXhjbHVkZV9saXN0ICplbCk7Ci1leHRlcm4gdm9pZCBwYXJzZV9leGNsdWRlX3BhdHRlcm4oY29uc3QgY2hhciAqKnN0cmluZywgaW50ICpwYXR0ZXJubGVuLCB1bnNpZ25lZCAqZmxhZ3MsIGludCAqbm93aWxkY2FyZGxlbik7Ci1leHRlcm4gdm9pZCBhZGRfZXhjbHVkZShjb25zdCBjaGFyICpzdHJpbmcsIGNvbnN0IGNoYXIgKmJhc2UsCi0JCQlpbnQgYmFzZWxlbiwgc3RydWN0IGV4Y2x1ZGVfbGlzdCAqZWwsIGludCBzcmNwb3MpOwotZXh0ZXJuIHZvaWQgY2xlYXJfZXhjbHVkZV9saXN0KHN0cnVjdCBleGNsdWRlX2xpc3QgKmVsKTsKLWV4dGVybiB2b2lkIGNsZWFyX2RpcmVjdG9yeShzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyKTsKLWV4dGVybiBpbnQgZmlsZV9leGlzdHMoY29uc3QgY2hhciAqKTsKK2ludCBwbF9oYXNobWFwX2NtcChjb25zdCB2b2lkICp1bnVzZWRfY21wX2RhdGEsCisJCSAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICphLAorCQkgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqYiwKKwkJICAgY29uc3Qgdm9pZCAqa2V5KTsKK2ludCBoYXNobWFwX2NvbnRhaW5zX3BhcmVudChzdHJ1Y3QgaGFzaG1hcCAqbWFwLAorCQkJICAgIGNvbnN0IGNoYXIgKnBhdGgsCisJCQkgICAgc3RydWN0IHN0cmJ1ZiAqYnVmZmVyKTsKK3N0cnVjdCBwYXR0ZXJuX2xpc3QgKmFkZF9wYXR0ZXJuX2xpc3Qoc3RydWN0IGRpcl9zdHJ1Y3QgKmRpciwKKwkJCQkgICAgICBpbnQgZ3JvdXBfdHlwZSwgY29uc3QgY2hhciAqc3JjKTsKK2ludCBhZGRfcGF0dGVybnNfZnJvbV9maWxlX3RvX2xpc3QoY29uc3QgY2hhciAqZm5hbWUsIGNvbnN0IGNoYXIgKmJhc2UsIGludCBiYXNlbGVuLAorCQkJCSAgIHN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsLCBzdHJ1Y3QgIGluZGV4X3N0YXRlICppc3RhdGUpOwordm9pZCBhZGRfcGF0dGVybnNfZnJvbV9maWxlKHN0cnVjdCBkaXJfc3RydWN0ICosIGNvbnN0IGNoYXIgKmZuYW1lKTsKK2ludCBhZGRfcGF0dGVybnNfZnJvbV9ibG9iX3RvX2xpc3Qoc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJCSAgIGNvbnN0IGNoYXIgKmJhc2UsIGludCBiYXNlbGVuLAorCQkJCSAgIHN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsKTsKK3ZvaWQgcGFyc2VfcGF0aF9wYXR0ZXJuKGNvbnN0IGNoYXIgKipzdHJpbmcsIGludCAqcGF0dGVybmxlbiwgdW5zaWduZWQgKmZsYWdzLCBpbnQgKm5vd2lsZGNhcmRsZW4pOwordm9pZCBhZGRfcGF0dGVybihjb25zdCBjaGFyICpzdHJpbmcsIGNvbnN0IGNoYXIgKmJhc2UsCisJCSBpbnQgYmFzZWxlbiwgc3RydWN0IHBhdHRlcm5fbGlzdCAqcGwsIGludCBzcmNwb3MpOwordm9pZCBjbGVhcl9wYXR0ZXJuX2xpc3Qoc3RydWN0IHBhdHRlcm5fbGlzdCAqcGwpOwordm9pZCBjbGVhcl9kaXJlY3Rvcnkoc3RydWN0IGRpcl9zdHJ1Y3QgKmRpcik7CiAKLWV4dGVybiBpbnQgaXNfaW5zaWRlX2Rpcihjb25zdCBjaGFyICpkaXIpOwotZXh0ZXJuIGludCBkaXJfaW5zaWRlX29mKGNvbnN0IGNoYXIgKnN1YmRpciwgY29uc3QgY2hhciAqZGlyKTsKK2ludCByZXBvX2ZpbGVfZXhpc3RzKHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLCBjb25zdCBjaGFyICpwYXRoKTsKK2ludCBmaWxlX2V4aXN0cyhjb25zdCBjaGFyICopOworCitpbnQgaXNfaW5zaWRlX2Rpcihjb25zdCBjaGFyICpkaXIpOworaW50IGRpcl9pbnNpZGVfb2YoY29uc3QgY2hhciAqc3ViZGlyLCBjb25zdCBjaGFyICpkaXIpOwogCiBzdGF0aWMgaW5saW5lIGludCBpc19kb3Rfb3JfZG90ZG90KGNvbnN0IGNoYXIgKm5hbWUpCiB7CkBAIC0yODEsOSArNDQzLDkgQEAKIAkJIChuYW1lWzFdID09ICcuJyAmJiBuYW1lWzJdID09ICdcMCcpKSk7CiB9CiAKLWV4dGVybiBpbnQgaXNfZW1wdHlfZGlyKGNvbnN0IGNoYXIgKmRpcik7CitpbnQgaXNfZW1wdHlfZGlyKGNvbnN0IGNoYXIgKmRpcik7CiAKLWV4dGVybiB2b2lkIHNldHVwX3N0YW5kYXJkX2V4Y2x1ZGVzKHN0cnVjdCBkaXJfc3RydWN0ICpkaXIpOwordm9pZCBzZXR1cF9zdGFuZGFyZF9leGNsdWRlcyhzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyKTsKIAogCiAvKiBDb25zdGFudHMgZm9yIHJlbW92ZV9kaXJfcmVjdXJzaXZlbHk6ICovCkBAIC0zMTEsMjYgKzQ3MywyNiBAQAogICogVGhpcyBmdW5jdGlvbiB1c2VzIHBhdGggYXMgdGVtcG9yYXJ5IHNjcmF0Y2ggc3BhY2UsIGJ1dCByZXN0b3JlcyBpdAogICogYmVmb3JlIHJldHVybmluZy4KICAqLwotZXh0ZXJuIGludCByZW1vdmVfZGlyX3JlY3Vyc2l2ZWx5KHN0cnVjdCBzdHJidWYgKnBhdGgsIGludCBmbGFnKTsKK2ludCByZW1vdmVfZGlyX3JlY3Vyc2l2ZWx5KHN0cnVjdCBzdHJidWYgKnBhdGgsIGludCBmbGFnKTsKIAogLyogdHJpZXMgdG8gcmVtb3ZlIHRoZSBwYXRoIHdpdGggZW1wdHkgZGlyZWN0b3JpZXMgYWxvbmcgaXQsIGlnbm9yZXMgRU5PRU5UICovCi1leHRlcm4gaW50IHJlbW92ZV9wYXRoKGNvbnN0IGNoYXIgKnBhdGgpOworaW50IHJlbW92ZV9wYXRoKGNvbnN0IGNoYXIgKnBhdGgpOwogCi1leHRlcm4gaW50IGZzcGF0aGNtcChjb25zdCBjaGFyICphLCBjb25zdCBjaGFyICpiKTsKLWV4dGVybiBpbnQgZnNwYXRobmNtcChjb25zdCBjaGFyICphLCBjb25zdCBjaGFyICpiLCBzaXplX3QgY291bnQpOworaW50IGZzcGF0aGNtcChjb25zdCBjaGFyICphLCBjb25zdCBjaGFyICpiKTsKK2ludCBmc3BhdGhuY21wKGNvbnN0IGNoYXIgKmEsIGNvbnN0IGNoYXIgKmIsIHNpemVfdCBjb3VudCk7CiAKIC8qCiAgKiBUaGUgcHJlZml4IHBhcnQgb2YgcGF0dGVybiBtdXN0IG5vdCBjb250YWlucyB3aWxkY2FyZHMuCiAgKi8KIHN0cnVjdCBwYXRoc3BlY19pdGVtOwotZXh0ZXJuIGludCBnaXRfZm5tYXRjaChjb25zdCBzdHJ1Y3QgcGF0aHNwZWNfaXRlbSAqaXRlbSwKLQkJICAgICAgIGNvbnN0IGNoYXIgKnBhdHRlcm4sIGNvbnN0IGNoYXIgKnN0cmluZywKLQkJICAgICAgIGludCBwcmVmaXgpOworaW50IGdpdF9mbm1hdGNoKGNvbnN0IHN0cnVjdCBwYXRoc3BlY19pdGVtICppdGVtLAorCQljb25zdCBjaGFyICpwYXR0ZXJuLCBjb25zdCBjaGFyICpzdHJpbmcsCisJCWludCBwcmVmaXgpOwogCi1leHRlcm4gaW50IHN1Ym1vZHVsZV9wYXRoX21hdGNoKGNvbnN0IHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAotCQkJCWNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcHMsCi0JCQkJY29uc3QgY2hhciAqc3VibW9kdWxlX25hbWUsCi0JCQkJY2hhciAqc2Vlbik7CitpbnQgc3VibW9kdWxlX3BhdGhfbWF0Y2goY29uc3Qgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCisJCQkgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwcywKKwkJCSBjb25zdCBjaGFyICpzdWJtb2R1bGVfbmFtZSwKKwkJCSBjaGFyICpzZWVuKTsKIAogc3RhdGljIGlubGluZSBpbnQgY2VfcGF0aF9tYXRjaChjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKIAkJCQljb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlLApAQCAtMzcyLDEwICs1MzQsMTAgQEAKICAqIFdoZW4gYHJlY3Vyc2VfaW50b19uZXN0ZWRgIGlzIHNldCwgcmVjdXJzZSBpbnRvIGFueSBuZXN0ZWQgc3VibW9kdWxlcywKICAqIGNvbm5lY3RpbmcgdGhlbSBhcyB3ZWxsLgogICovCi1leHRlcm4gdm9pZCBjb25uZWN0X3dvcmtfdHJlZV9hbmRfZ2l0X2Rpcihjb25zdCBjaGFyICp3b3JrX3RyZWUsCi0JCQkJCSAgY29uc3QgY2hhciAqZ2l0X2RpciwKLQkJCQkJICBpbnQgcmVjdXJzZV9pbnRvX25lc3RlZCk7Ci1leHRlcm4gdm9pZCByZWxvY2F0ZV9naXRkaXIoY29uc3QgY2hhciAqcGF0aCwKLQkJCSAgICBjb25zdCBjaGFyICpvbGRfZ2l0X2RpciwKLQkJCSAgICBjb25zdCBjaGFyICpuZXdfZ2l0X2Rpcik7Cit2b2lkIGNvbm5lY3Rfd29ya190cmVlX2FuZF9naXRfZGlyKGNvbnN0IGNoYXIgKndvcmtfdHJlZSwKKwkJCQkgICBjb25zdCBjaGFyICpnaXRfZGlyLAorCQkJCSAgIGludCByZWN1cnNlX2ludG9fbmVzdGVkKTsKK3ZvaWQgcmVsb2NhdGVfZ2l0ZGlyKGNvbnN0IGNoYXIgKnBhdGgsCisJCSAgICAgY29uc3QgY2hhciAqb2xkX2dpdF9kaXIsCisJCSAgICAgY29uc3QgY2hhciAqbmV3X2dpdF9kaXIpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9lZGl0b3IuYyBiL2VkaXRvci5jCmluZGV4IGM5ODVlZWUuLjkxOTg5ZWUgMTAwNjQ0Ci0tLSBhL2VkaXRvci5jCisrKyBiL2VkaXRvci5jCkBAIC01NCw3ICs1NCw4IEBACiAJCXJldHVybiBlcnJvcigiVGVybWluYWwgaXMgZHVtYiwgYnV0IEVESVRPUiB1bnNldCIpOwogCiAJaWYgKHN0cmNtcChlZGl0b3IsICI6IikpIHsKLQkJY29uc3QgY2hhciAqYXJnc1tdID0geyBlZGl0b3IsIHJlYWxfcGF0aChwYXRoKSwgTlVMTCB9OworCQlzdHJ1Y3Qgc3RyYnVmIHJlYWxwYXRoID0gU1RSQlVGX0lOSVQ7CisJCWNvbnN0IGNoYXIgKmFyZ3NbXSA9IHsgZWRpdG9yLCBOVUxMLCBOVUxMIH07CiAJCXN0cnVjdCBjaGlsZF9wcm9jZXNzIHAgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CiAJCWludCByZXQsIHNpZzsKIAkJaW50IHByaW50X3dhaXRpbmdfZm9yX2VkaXRvciA9IGFkdmljZV93YWl0aW5nX2Zvcl9lZGl0b3IgJiYgaXNhdHR5KDIpOwpAQCAtNzUsMTUgKzc2LDIyIEBACiAJCQlmZmx1c2goc3RkZXJyKTsKIAkJfQogCisJCXN0cmJ1Zl9yZWFscGF0aCgmcmVhbHBhdGgsIHBhdGgsIDEpOworCQlhcmdzWzFdID0gcmVhbHBhdGguYnVmOworCiAJCXAuYXJndiA9IGFyZ3M7CiAJCXAuZW52ID0gZW52OwogCQlwLnVzZV9zaGVsbCA9IDE7Ci0JCWlmIChzdGFydF9jb21tYW5kKCZwKSA8IDApCisJCXAudHJhY2UyX2NoaWxkX2NsYXNzID0gImVkaXRvciI7CisJCWlmIChzdGFydF9jb21tYW5kKCZwKSA8IDApIHsKKwkJCXN0cmJ1Zl9yZWxlYXNlKCZyZWFscGF0aCk7CiAJCQlyZXR1cm4gZXJyb3IoInVuYWJsZSB0byBzdGFydCBlZGl0b3IgJyVzJyIsIGVkaXRvcik7CisJCX0KIAogCQlzaWdjaGFpbl9wdXNoKFNJR0lOVCwgU0lHX0lHTik7CiAJCXNpZ2NoYWluX3B1c2goU0lHUVVJVCwgU0lHX0lHTik7CiAJCXJldCA9IGZpbmlzaF9jb21tYW5kKCZwKTsKKwkJc3RyYnVmX3JlbGVhc2UoJnJlYWxwYXRoKTsKIAkJc2lnID0gcmV0IC0gMTI4OwogCQlzaWdjaGFpbl9wb3AoU0lHSU5UKTsKIAkJc2lnY2hhaW5fcG9wKFNJR1FVSVQpOwpAQCAtOTUsMTAgKzEwMywxMCBAQAogCiAJCWlmIChwcmludF93YWl0aW5nX2Zvcl9lZGl0b3IgJiYgIWlzX3Rlcm1pbmFsX2R1bWIoKSkKIAkJCS8qCi0JCQkgKiBHbyBiYWNrIHRvIHRoZSBiZWdpbm5pbmcgYW5kIGVyYXNlIHRoZSBlbnRpcmUgbGluZSB0bwotCQkJICogYXZvaWQgd2FzdGluZyB0aGUgdmVydGljYWwgc3BhY2UuCisJCQkgKiBFcmFzZSB0aGUgZW50aXJlIGxpbmUgdG8gYXZvaWQgd2FzdGluZyB0aGUKKwkJCSAqIHZlcnRpY2FsIHNwYWNlLgogCQkJICovCi0JCQlmcHV0cygiXHJcMDMzW0siLCBzdGRlcnIpOworCQkJdGVybV9jbGVhcl9saW5lKCk7CiAJfQogCiAJaWYgKCFidWZmZXIpCmRpZmYgLS1naXQgYS9lbnRyeS5jIGIvZW50cnkuYwppbmRleCAwYTNjNDUxLi41MzM4MGJiIDEwMDY0NAotLS0gYS9lbnRyeS5jCisrKyBiL2VudHJ5LmMKQEAgLTE2MSw3ICsxNjEsNyBAQAogCXJldHVybiAhYXZhaWxhYmxlOwogfQogCi1pbnQgZmluaXNoX2RlbGF5ZWRfY2hlY2tvdXQoc3RydWN0IGNoZWNrb3V0ICpzdGF0ZSkKK2ludCBmaW5pc2hfZGVsYXllZF9jaGVja291dChzdHJ1Y3QgY2hlY2tvdXQgKnN0YXRlLCBpbnQgKm5yX2NoZWNrb3V0cykKIHsKIAlpbnQgZXJycyA9IDA7CiAJdW5zaWduZWQgZGVsYXllZF9vYmplY3RfY291bnQ7CkBAIC0yMjYsNyArMjI2LDcgQEAKIAkJCQljZSA9IGluZGV4X2ZpbGVfZXhpc3RzKHN0YXRlLT5pc3RhdGUsIHBhdGgtPnN0cmluZywKIAkJCQkJCSAgICAgICBzdHJsZW4ocGF0aC0+c3RyaW5nKSwgMCk7CiAJCQkJaWYgKGNlKSB7Ci0JCQkJCWVycnMgfD0gY2hlY2tvdXRfZW50cnkoY2UsIHN0YXRlLCBOVUxMKTsKKwkJCQkJZXJycyB8PSBjaGVja291dF9lbnRyeShjZSwgc3RhdGUsIE5VTEwsIG5yX2NoZWNrb3V0cyk7CiAJCQkJCWZpbHRlcmVkX2J5dGVzICs9IGNlLT5jZV9zdGF0X2RhdGEuc2Rfc2l6ZTsKIAkJCQkJZGlzcGxheV90aHJvdWdocHV0KHByb2dyZXNzLCBmaWx0ZXJlZF9ieXRlcyk7CiAJCQkJfSBlbHNlCkBAIC0zNzMsNyArMzczLDcgQEAKIAkJCWlmIChsc3RhdChjZS0+bmFtZSwgJnN0KSA8IDApCiAJCQkJcmV0dXJuIGVycm9yX2Vycm5vKCJ1bmFibGUgdG8gc3RhdCBqdXN0LXdyaXR0ZW4gZmlsZSAlcyIsCiAJCQkJCQkgICBjZS0+bmFtZSk7Ci0JCWZpbGxfc3RhdF9jYWNoZV9pbmZvKGNlLCAmc3QpOworCQlmaWxsX3N0YXRfY2FjaGVfaW5mbyhzdGF0ZS0+aXN0YXRlLCBjZSwgJnN0KTsKIAkJY2UtPmNlX2ZsYWdzIHw9IENFX1VQREFURV9JTl9CQVNFOwogCQltYXJrX2ZzbW9uaXRvcl9pbnZhbGlkKHN0YXRlLT5pc3RhdGUsIGNlKTsKIAkJc3RhdGUtPmlzdGF0ZS0+Y2FjaGVfY2hhbmdlZCB8PSBDRV9FTlRSWV9DSEFOR0VEOwpAQCAtNDM1LDEyICs0MzUsMjMgQEAKICAqIGl0cyBuYW1lIGlzIHJldHVybmVkIGluIHRvcGF0aFtdLCB3aGljaCBtdXN0IGJlIGFibGUgdG8gaG9sZCBhdAogICogbGVhc3QgVEVNUE9SQVJZX0ZJTEVOQU1FX0xFTkdUSCBieXRlcyBsb25nLgogICovCi1pbnQgY2hlY2tvdXRfZW50cnkoc3RydWN0IGNhY2hlX2VudHJ5ICpjZSwKLQkJICAgY29uc3Qgc3RydWN0IGNoZWNrb3V0ICpzdGF0ZSwgY2hhciAqdG9wYXRoKQoraW50IGNoZWNrb3V0X2VudHJ5KHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UsIGNvbnN0IHN0cnVjdCBjaGVja291dCAqc3RhdGUsCisJCSAgIGNoYXIgKnRvcGF0aCwgaW50ICpucl9jaGVja291dHMpCiB7CiAJc3RhdGljIHN0cnVjdCBzdHJidWYgcGF0aCA9IFNUUkJVRl9JTklUOwogCXN0cnVjdCBzdGF0IHN0OwogCisJaWYgKGNlLT5jZV9mbGFncyAmIENFX1dUX1JFTU9WRSkgeworCQlpZiAodG9wYXRoKQorCQkJLyoKKwkJCSAqIE5vIGNvbnRlbnQgYW5kIHRodXMgbm8gcGF0aCB0byBjcmVhdGUsIHNvIHdlIGhhdmUKKwkJCSAqIG5vIHBhdGhuYW1lIHRvIHJldHVybi4KKwkJCSAqLworCQkJQlVHKCJDYW4ndCByZW1vdmUgZW50cnkgdG8gYSBwYXRoIik7CisJCXVubGlua19lbnRyeShjZSk7CisJCXJldHVybiAwOworCX0KKwogCWlmICh0b3BhdGgpCiAJCXJldHVybiB3cml0ZV9lbnRyeShjZSwgdG9wYXRoLCBzdGF0ZSwgMSk7CiAKQEAgLTUwNiw1ICs1MTcsMjIgQEAKIAkJcmV0dXJuIDA7CiAKIAljcmVhdGVfZGlyZWN0b3JpZXMocGF0aC5idWYsIHBhdGgubGVuLCBzdGF0ZSk7CisJaWYgKG5yX2NoZWNrb3V0cykKKwkJKCpucl9jaGVja291dHMpKys7CiAJcmV0dXJuIHdyaXRlX2VudHJ5KGNlLCBwYXRoLmJ1Ziwgc3RhdGUsIDApOwogfQorCit2b2lkIHVubGlua19lbnRyeShjb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlKQoreworCWNvbnN0IHN0cnVjdCBzdWJtb2R1bGUgKnN1YiA9IHN1Ym1vZHVsZV9mcm9tX2NlKGNlKTsKKwlpZiAoc3ViKSB7CisJCS8qIHN0YXRlLmZvcmNlIGlzIHNldCBhdCB0aGUgY2FsbGVyLiAqLworCQlzdWJtb2R1bGVfbW92ZV9oZWFkKGNlLT5uYW1lLCAiSEVBRCIsIE5VTEwsCisJCQkJICAgIFNVQk1PRFVMRV9NT1ZFX0hFQURfRk9SQ0UpOworCX0KKwlpZiAoIWNoZWNrX2xlYWRpbmdfcGF0aChjZS0+bmFtZSwgY2VfbmFtZWxlbihjZSkpKQorCQlyZXR1cm47CisJaWYgKHJlbW92ZV9vcl93YXJuKGNlLT5jZV9tb2RlLCBjZS0+bmFtZSkpCisJCXJldHVybjsKKwlzY2hlZHVsZV9kaXJfZm9yX3JlbW92YWwoY2UtPm5hbWUsIGNlX25hbWVsZW4oY2UpKTsKK30KZGlmZiAtLWdpdCBhL2Vudmlyb25tZW50LmMgYi9lbnZpcm9ubWVudC5jCmluZGV4IGM3Yjc2ZDMuLjEwYzkwNjEgMTAwNjQ0Ci0tLSBhL2Vudmlyb25tZW50LmMKKysrIGIvZW52aXJvbm1lbnQuYwpAQCAtMzEsOCArMzEsNiBAQAogaW50IHdhcm5fb25fb2JqZWN0X3JlZm5hbWVfYW1iaWd1aXR5ID0gMTsKIGludCByZWZfcGFyYW5vaWEgPSAtMTsKIGludCByZXBvc2l0b3J5X2Zvcm1hdF9wcmVjaW91c19vYmplY3RzOwotY2hhciAqcmVwb3NpdG9yeV9mb3JtYXRfcGFydGlhbF9jbG9uZTsKLWNvbnN0IGNoYXIgKmNvcmVfcGFydGlhbF9jbG9uZV9maWx0ZXJfZGVmYXVsdDsKIGludCByZXBvc2l0b3J5X2Zvcm1hdF93b3JrdHJlZV9jb25maWc7CiBjb25zdCBjaGFyICpnaXRfY29tbWl0X2VuY29kaW5nOwogY29uc3QgY2hhciAqZ2l0X2xvZ19vdXRwdXRfZW5jb2Rpbmc7CkBAIC02OSw2ICs2Nyw3IEBACiBjaGFyICpub3Rlc19yZWZfbmFtZTsKIGludCBncmFmdHNfcmVwbGFjZV9wYXJlbnRzID0gMTsKIGludCBjb3JlX2FwcGx5X3NwYXJzZV9jaGVja291dDsKK2ludCBjb3JlX3NwYXJzZV9jaGVja291dF9jb25lOwogaW50IG1lcmdlX2xvZ19jb25maWcgPSAtMTsKIGludCBwcmVjb21wb3NlZF91bmljb2RlID0gLTE7IC8qIHNlZSBwcm9iZV91dGY4X3BhdGhuYW1lX2NvbXBvc2l0aW9uKCkgKi8KIHVuc2lnbmVkIGxvbmcgcGFja19zaXplX2xpbWl0X2NmZzsKQEAgLTEwNyw3ICsxMDYsNyBAQAogCiBzdGF0aWMgY2hhciAqZ2l0X25hbWVzcGFjZTsKIAotc3RhdGljIGNvbnN0IGNoYXIgKnN1cGVyX3ByZWZpeDsKK3N0YXRpYyBjaGFyICpzdXBlcl9wcmVmaXg7CiAKIC8qCiAgKiBSZXBvc2l0b3J5LWxvY2FsIEdJVF8qIGVudmlyb25tZW50IHZhcmlhYmxlczsgc2VlIGNhY2hlLmggZm9yIGRldGFpbHMuCkBAIC0yNDAsNyArMjM5LDcgQEAKIHsKIAlzdGF0aWMgaW50IGluaXRpYWxpemVkOwogCWlmICghaW5pdGlhbGl6ZWQpIHsKLQkJc3VwZXJfcHJlZml4ID0gZ2V0ZW52KEdJVF9TVVBFUl9QUkVGSVhfRU5WSVJPTk1FTlQpOworCQlzdXBlcl9wcmVmaXggPSB4c3RyZHVwX29yX251bGwoZ2V0ZW52KEdJVF9TVVBFUl9QUkVGSVhfRU5WSVJPTk1FTlQpKTsKIAkJaW5pdGlhbGl6ZWQgPSAxOwogCX0KIAlyZXR1cm4gc3VwZXJfcHJlZml4OwpAQCAtMjU1LDggKzI1NCwxMSBAQAogICovCiB2b2lkIHNldF9naXRfd29ya190cmVlKGNvbnN0IGNoYXIgKm5ld193b3JrX3RyZWUpCiB7CisJc3RydWN0IHN0cmJ1ZiByZWFscGF0aCA9IFNUUkJVRl9JTklUOworCiAJaWYgKGdpdF93b3JrX3RyZWVfaW5pdGlhbGl6ZWQpIHsKLQkJbmV3X3dvcmtfdHJlZSA9IHJlYWxfcGF0aChuZXdfd29ya190cmVlKTsKKwkJc3RyYnVmX3JlYWxwYXRoKCZyZWFscGF0aCwgbmV3X3dvcmtfdHJlZSwgMSk7CisJCW5ld193b3JrX3RyZWUgPSByZWFscGF0aC5idWY7CiAJCWlmIChzdHJjbXAobmV3X3dvcmtfdHJlZSwgdGhlX3JlcG9zaXRvcnktPndvcmt0cmVlKSkKIAkJCWRpZSgiaW50ZXJuYWwgZXJyb3I6IHdvcmsgdHJlZSBoYXMgYWxyZWFkeSBiZWVuIHNldFxuIgogCQkJICAgICJDdXJyZW50IHdvcmt0cmVlOiAlc1xuTmV3IHdvcmt0cmVlOiAlcyIsCkBAIC0yNjUsNiArMjY3LDggQEAKIAl9CiAJZ2l0X3dvcmtfdHJlZV9pbml0aWFsaXplZCA9IDE7CiAJcmVwb19zZXRfd29ya3RyZWUodGhlX3JlcG9zaXRvcnksIG5ld193b3JrX3RyZWUpOworCisJc3RyYnVmX3JlbGVhc2UoJnJlYWxwYXRoKTsKIH0KIAogY29uc3QgY2hhciAqZ2V0X2dpdF93b3JrX3RyZWUodm9pZCkKQEAgLTI3NCw5ICsyNzgsOSBAQAogCiBjaGFyICpnZXRfb2JqZWN0X2RpcmVjdG9yeSh2b2lkKQogewotCWlmICghdGhlX3JlcG9zaXRvcnktPm9iamVjdHMtPm9iamVjdGRpcikKKwlpZiAoIXRoZV9yZXBvc2l0b3J5LT5vYmplY3RzLT5vZGIpCiAJCUJVRygiZ2l0IGVudmlyb25tZW50IGhhc24ndCBiZWVuIHNldHVwIik7Ci0JcmV0dXJuIHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzLT5vYmplY3RkaXI7CisJcmV0dXJuIHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzLT5vZGItPnBhdGg7CiB9CiAKIGludCBvZGJfbWtzdGVtcChzdHJ1Y3Qgc3RyYnVmICp0ZW1wX2ZpbGVuYW1lLCBjb25zdCBjaGFyICpwYXR0ZXJuKQpAQCAtMzQ2LDExICszNTAsMjAgQEAKIAlmcmVlKHBhdGgpOwogfQogCi12b2lkIHNldF9naXRfZGlyKGNvbnN0IGNoYXIgKnBhdGgpCit2b2lkIHNldF9naXRfZGlyKGNvbnN0IGNoYXIgKnBhdGgsIGludCBtYWtlX3JlYWxwYXRoKQogeworCXN0cnVjdCBzdHJidWYgcmVhbHBhdGggPSBTVFJCVUZfSU5JVDsKKworCWlmIChtYWtlX3JlYWxwYXRoKSB7CisJCXN0cmJ1Zl9yZWFscGF0aCgmcmVhbHBhdGgsIHBhdGgsIDEpOworCQlwYXRoID0gcmVhbHBhdGguYnVmOworCX0KKwogCXNldF9naXRfZGlyXzEocGF0aCk7CiAJaWYgKCFpc19hYnNvbHV0ZV9wYXRoKHBhdGgpKQogCQljaGRpcl9ub3RpZnlfcmVnaXN0ZXIoTlVMTCwgdXBkYXRlX3JlbGF0aXZlX2dpdGRpciwgTlVMTCk7CisKKwlzdHJidWZfcmVsZWFzZSgmcmVhbHBhdGgpOwogfQogCiBjb25zdCBjaGFyICpnZXRfbG9nX291dHB1dF9lbmNvZGluZyh2b2lkKQpkaWZmIC0tZ2l0IGEvZXdhaC9iaXRtYXAuYyBiL2V3YWgvYml0bWFwLmMKaW5kZXggNTJmMTE3OC4uZDhjZWM1OCAxMDA2NDQKLS0tIGEvZXdhaC9iaXRtYXAuYworKysgYi9ld2FoL2JpdG1hcC5jCkBAIC0yMiwyMSArMjIsMjYgQEAKICNkZWZpbmUgRVdBSF9NQVNLKHgpICgoZXdvcmRfdCkxIDw8ICh4ICUgQklUU19JTl9FV09SRCkpCiAjZGVmaW5lIEVXQUhfQkxPQ0soeCkgKHggLyBCSVRTX0lOX0VXT1JEKQogCi1zdHJ1Y3QgYml0bWFwICpiaXRtYXBfbmV3KHZvaWQpCitzdHJ1Y3QgYml0bWFwICpiaXRtYXBfd29yZF9hbGxvYyhzaXplX3Qgd29yZF9hbGxvYykKIHsKIAlzdHJ1Y3QgYml0bWFwICpiaXRtYXAgPSB4bWFsbG9jKHNpemVvZihzdHJ1Y3QgYml0bWFwKSk7Ci0JYml0bWFwLT53b3JkcyA9IHhjYWxsb2MoMzIsIHNpemVvZihld29yZF90KSk7Ci0JYml0bWFwLT53b3JkX2FsbG9jID0gMzI7CisJYml0bWFwLT53b3JkcyA9IHhjYWxsb2Mod29yZF9hbGxvYywgc2l6ZW9mKGV3b3JkX3QpKTsKKwliaXRtYXAtPndvcmRfYWxsb2MgPSB3b3JkX2FsbG9jOwogCXJldHVybiBiaXRtYXA7CiB9CiAKK3N0cnVjdCBiaXRtYXAgKmJpdG1hcF9uZXcodm9pZCkKK3sKKwlyZXR1cm4gYml0bWFwX3dvcmRfYWxsb2MoMzIpOworfQorCiB2b2lkIGJpdG1hcF9zZXQoc3RydWN0IGJpdG1hcCAqc2VsZiwgc2l6ZV90IHBvcykKIHsKIAlzaXplX3QgYmxvY2sgPSBFV0FIX0JMT0NLKHBvcyk7CiAKIAlpZiAoYmxvY2sgPj0gc2VsZi0+d29yZF9hbGxvYykgewogCQlzaXplX3Qgb2xkX3NpemUgPSBzZWxmLT53b3JkX2FsbG9jOwotCQlzZWxmLT53b3JkX2FsbG9jID0gYmxvY2sgKiAyOworCQlzZWxmLT53b3JkX2FsbG9jID0gYmxvY2sgPyBibG9jayAqIDIgOiAxOwogCQlSRUFMTE9DX0FSUkFZKHNlbGYtPndvcmRzLCBzZWxmLT53b3JkX2FsbG9jKTsKIAkJbWVtc2V0KHNlbGYtPndvcmRzICsgb2xkX3NpemUsIDB4MCwKIAkJCShzZWxmLT53b3JkX2FsbG9jIC0gb2xkX3NpemUpICogc2l6ZW9mKGV3b3JkX3QpKTsKQEAgLTQ1LDYgKzUwLDE0IEBACiAJc2VsZi0+d29yZHNbYmxvY2tdIHw9IEVXQUhfTUFTSyhwb3MpOwogfQogCit2b2lkIGJpdG1hcF91bnNldChzdHJ1Y3QgYml0bWFwICpzZWxmLCBzaXplX3QgcG9zKQoreworCXNpemVfdCBibG9jayA9IEVXQUhfQkxPQ0socG9zKTsKKworCWlmIChibG9jayA8IHNlbGYtPndvcmRfYWxsb2MpCisJCXNlbGYtPndvcmRzW2Jsb2NrXSAmPSB+RVdBSF9NQVNLKHBvcyk7Cit9CisKIGludCBiaXRtYXBfZ2V0KHN0cnVjdCBiaXRtYXAgKnNlbGYsIHNpemVfdCBwb3MpCiB7CiAJc2l6ZV90IGJsb2NrID0gRVdBSF9CTE9DSyhwb3MpOwpkaWZmIC0tZ2l0IGEvZXdhaC9ld29rLmggYi9ld2FoL2V3b2suaAppbmRleCA4NGIyYTI5Li4wMTE4NTJiIDEwMDY0NAotLS0gYS9ld2FoL2V3b2suaAorKysgYi9ld2FoL2V3b2suaApAQCAtMTcyLDcgKzE3Miw5IEBACiB9OwogCiBzdHJ1Y3QgYml0bWFwICpiaXRtYXBfbmV3KHZvaWQpOworc3RydWN0IGJpdG1hcCAqYml0bWFwX3dvcmRfYWxsb2Moc2l6ZV90IHdvcmRfYWxsb2MpOwogdm9pZCBiaXRtYXBfc2V0KHN0cnVjdCBiaXRtYXAgKnNlbGYsIHNpemVfdCBwb3MpOwordm9pZCBiaXRtYXBfdW5zZXQoc3RydWN0IGJpdG1hcCAqc2VsZiwgc2l6ZV90IHBvcyk7CiBpbnQgYml0bWFwX2dldChzdHJ1Y3QgYml0bWFwICpzZWxmLCBzaXplX3QgcG9zKTsKIHZvaWQgYml0bWFwX3Jlc2V0KHN0cnVjdCBiaXRtYXAgKnNlbGYpOwogdm9pZCBiaXRtYXBfZnJlZShzdHJ1Y3QgYml0bWFwICpzZWxmKTsKZGlmZiAtLWdpdCBhL2V4ZWMtY21kLmMgYi9leGVjLWNtZC5jCmluZGV4IDRmODFmNDQuLjdkZWVhYjMgMTAwNjQ0Ci0tLSBhL2V4ZWMtY21kLmMKKysrIGIvZXhlYy1jbWQuYwpAQCAtMjA5LDYgKzIwOSw4IEBACiAJCXJldHVybiAtMTsKIAl9CiAKKwl0cmFjZTJfY21kX3BhdGgoYnVmLT5idWYpOworCiAJcmV0dXJuIDA7CiB9CiAKZGlmZiAtLWdpdCBhL2V4ZWMtY21kLmggYi9leGVjLWNtZC5oCmluZGV4IDI1MjI0NTMuLjhjZDFkZjIgMTAwNjQ0Ci0tLSBhL2V4ZWMtY21kLmgKKysrIGIvZXhlYy1jbWQuaApAQCAtMywxNCArMywxNCBAQAogCiBzdHJ1Y3QgYXJndl9hcnJheTsKIAotZXh0ZXJuIHZvaWQgZ2l0X3NldF9leGVjX3BhdGgoY29uc3QgY2hhciAqZXhlY19wYXRoKTsKLWV4dGVybiB2b2lkIGdpdF9yZXNvbHZlX2V4ZWN1dGFibGVfZGlyKGNvbnN0IGNoYXIgKnBhdGgpOwotZXh0ZXJuIGNvbnN0IGNoYXIgKmdpdF9leGVjX3BhdGgodm9pZCk7Ci1leHRlcm4gdm9pZCBzZXR1cF9wYXRoKHZvaWQpOwotZXh0ZXJuIGNvbnN0IGNoYXIgKipwcmVwYXJlX2dpdF9jbWQoc3RydWN0IGFyZ3ZfYXJyYXkgKm91dCwgY29uc3QgY2hhciAqKmFyZ3YpOwotZXh0ZXJuIGludCBleGVjdl9naXRfY21kKGNvbnN0IGNoYXIgKiphcmd2KTsgLyogTlVMTCB0ZXJtaW5hdGVkICovCit2b2lkIGdpdF9zZXRfZXhlY19wYXRoKGNvbnN0IGNoYXIgKmV4ZWNfcGF0aCk7Cit2b2lkIGdpdF9yZXNvbHZlX2V4ZWN1dGFibGVfZGlyKGNvbnN0IGNoYXIgKnBhdGgpOworY29uc3QgY2hhciAqZ2l0X2V4ZWNfcGF0aCh2b2lkKTsKK3ZvaWQgc2V0dXBfcGF0aCh2b2lkKTsKK2NvbnN0IGNoYXIgKipwcmVwYXJlX2dpdF9jbWQoc3RydWN0IGFyZ3ZfYXJyYXkgKm91dCwgY29uc3QgY2hhciAqKmFyZ3YpOworaW50IGV4ZWN2X2dpdF9jbWQoY29uc3QgY2hhciAqKmFyZ3YpOyAvKiBOVUxMIHRlcm1pbmF0ZWQgKi8KIExBU1RfQVJHX01VU1RfQkVfTlVMTAotZXh0ZXJuIGludCBleGVjbF9naXRfY21kKGNvbnN0IGNoYXIgKmNtZCwgLi4uKTsKLWV4dGVybiBjaGFyICpzeXN0ZW1fcGF0aChjb25zdCBjaGFyICpwYXRoKTsKK2ludCBleGVjbF9naXRfY21kKGNvbnN0IGNoYXIgKmNtZCwgLi4uKTsKK2NoYXIgKnN5c3RlbV9wYXRoKGNvbnN0IGNoYXIgKnBhdGgpOwogCiAjZW5kaWYgLyogR0lUX0VYRUNfQ01EX0ggKi8KZGlmZiAtLWdpdCBhL2Zhc3QtaW1wb3J0LmMgYi9mYXN0LWltcG9ydC5jCmluZGV4IGM4YjM3MmIuLmI4YjY1YTggMTAwNjQ0Ci0tLSBhL2Zhc3QtaW1wb3J0LmMKKysrIGIvZmFzdC1pbXBvcnQuYwpAQCAtMSwxNTcgKzEsMyBAQAotLyoKLShTZWUgRG9jdW1lbnRhdGlvbi9naXQtZmFzdC1pbXBvcnQudHh0IGZvciBtYWludGFpbmVkIGRvY3VtZW50YXRpb24uKQotRm9ybWF0IG9mIFNURElOIHN0cmVhbToKLQotICBzdHJlYW0gOjo9IGNtZCo7Ci0KLSAgY21kIDo6PSBuZXdfYmxvYgotICAgICAgICB8IG5ld19jb21taXQKLSAgICAgICAgfCBuZXdfdGFnCi0gICAgICAgIHwgcmVzZXRfYnJhbmNoCi0gICAgICAgIHwgY2hlY2twb2ludAotICAgICAgICB8IHByb2dyZXNzCi0gICAgICAgIDsKLQotICBuZXdfYmxvYiA6Oj0gJ2Jsb2InIGxmCi0gICAgbWFyaz8KLSAgICBmaWxlX2NvbnRlbnQ7Ci0gIGZpbGVfY29udGVudCA6Oj0gZGF0YTsKLQotICBuZXdfY29tbWl0IDo6PSAnY29tbWl0JyBzcCByZWZfc3RyIGxmCi0gICAgbWFyaz8KLSAgICAoJ2F1dGhvcicgKHNwIG5hbWUpPyBzcCAnPCcgZW1haWwgJz4nIHNwIHdoZW4gbGYpPwotICAgICdjb21taXR0ZXInIChzcCBuYW1lKT8gc3AgJzwnIGVtYWlsICc+JyBzcCB3aGVuIGxmCi0gICAgY29tbWl0X21zZwotICAgICgnZnJvbScgc3AgY29tbWl0LWlzaCBsZik/Ci0gICAgKCdtZXJnZScgc3AgY29tbWl0LWlzaCBsZikqCi0gICAgKGZpbGVfY2hhbmdlIHwgbHMpKgotICAgIGxmPzsKLSAgY29tbWl0X21zZyA6Oj0gZGF0YTsKLQotICBscyA6Oj0gJ2xzJyBzcCAnIicgcXVvdGVkKHBhdGgpICciJyBsZjsKLQotICBmaWxlX2NoYW5nZSA6Oj0gZmlsZV9jbHIKLSAgICB8IGZpbGVfZGVsCi0gICAgfCBmaWxlX3JubQotICAgIHwgZmlsZV9jcHkKLSAgICB8IGZpbGVfb2JtCi0gICAgfCBmaWxlX2lubTsKLSAgZmlsZV9jbHIgOjo9ICdkZWxldGVhbGwnIGxmOwotICBmaWxlX2RlbCA6Oj0gJ0QnIHNwIHBhdGhfc3RyIGxmOwotICBmaWxlX3JubSA6Oj0gJ1InIHNwIHBhdGhfc3RyIHNwIHBhdGhfc3RyIGxmOwotICBmaWxlX2NweSA6Oj0gJ0MnIHNwIHBhdGhfc3RyIHNwIHBhdGhfc3RyIGxmOwotICBmaWxlX29ibSA6Oj0gJ00nIHNwIG1vZGUgc3AgKGhleHNoYTEgfCBpZG51bSkgc3AgcGF0aF9zdHIgbGY7Ci0gIGZpbGVfaW5tIDo6PSAnTScgc3AgbW9kZSBzcCAnaW5saW5lJyBzcCBwYXRoX3N0ciBsZgotICAgIGRhdGE7Ci0gIG5vdGVfb2JtIDo6PSAnTicgc3AgKGhleHNoYTEgfCBpZG51bSkgc3AgY29tbWl0LWlzaCBsZjsKLSAgbm90ZV9pbm0gOjo9ICdOJyBzcCAnaW5saW5lJyBzcCBjb21taXQtaXNoIGxmCi0gICAgZGF0YTsKLQotICBuZXdfdGFnIDo6PSAndGFnJyBzcCB0YWdfc3RyIGxmCi0gICAgJ2Zyb20nIHNwIGNvbW1pdC1pc2ggbGYKLSAgICAoJ3RhZ2dlcicgKHNwIG5hbWUpPyBzcCAnPCcgZW1haWwgJz4nIHNwIHdoZW4gbGYpPwotICAgIHRhZ19tc2c7Ci0gIHRhZ19tc2cgOjo9IGRhdGE7Ci0KLSAgcmVzZXRfYnJhbmNoIDo6PSAncmVzZXQnIHNwIHJlZl9zdHIgbGYKLSAgICAoJ2Zyb20nIHNwIGNvbW1pdC1pc2ggbGYpPwotICAgIGxmPzsKLQotICBjaGVja3BvaW50IDo6PSAnY2hlY2twb2ludCcgbGYKLSAgICBsZj87Ci0KLSAgcHJvZ3Jlc3MgOjo9ICdwcm9ncmVzcycgc3Agbm90X2xmKiBsZgotICAgIGxmPzsKLQotICAgICAjIG5vdGU6IHRoZSBmaXJzdCBpZG51bSBpbiBhIHN0cmVhbSBzaG91bGQgYmUgMSBhbmQgc3Vic2VxdWVudAotICAgICAjIGlkbnVtcyBzaG91bGQgbm90IGhhdmUgZ2FwcyBiZXR3ZWVuIHZhbHVlcyBhcyB0aGlzIHdpbGwgY2F1c2UKLSAgICAgIyB0aGUgc3RyZWFtIHBhcnNlciB0byByZXNlcnZlIHNwYWNlIGZvciB0aGUgZ2FwcGVkIHZhbHVlcy4gIEFuCi0gICAgICMgaWRudW0gY2FuIGJlIHVwZGF0ZWQgaW4gdGhlIGZ1dHVyZSB0byBhIG5ldyBvYmplY3QgYnkgaXNzdWluZwotICAgICAjIGEgbmV3IG1hcmsgZGlyZWN0aXZlIHdpdGggdGhlIG9sZCBpZG51bS4KLSAgICAgIwotICBtYXJrIDo6PSAnbWFyaycgc3AgaWRudW0gbGY7Ci0gIGRhdGEgOjo9IChkZWxpbWl0ZWRfZGF0YSB8IGV4YWN0X2RhdGEpCi0gICAgbGY/OwotCi0gICAgIyBub3RlOiBkZWxpbSBtYXkgYmUgYW55IHN0cmluZyBidXQgbXVzdCBub3QgY29udGFpbiBsZi4KLSAgICAjIGRhdGFfbGluZSBtYXkgY29udGFpbiBhbnkgZGF0YSBidXQgbXVzdCBub3QgYmUgZXhhY3RseQotICAgICMgZGVsaW0uCi0gIGRlbGltaXRlZF9kYXRhIDo6PSAnZGF0YScgc3AgJzw8JyBkZWxpbSBsZgotICAgIChkYXRhX2xpbmUgbGYpKgotICAgIGRlbGltIGxmOwotCi0gICAgICMgbm90ZTogZGVjbGVuIGluZGljYXRlcyB0aGUgbGVuZ3RoIG9mIGJpbmFyeV9kYXRhIGluIGJ5dGVzLgotICAgICAjIGRlY2xlbiBkb2VzIG5vdCBpbmNsdWRlIHRoZSBsZiBwcmVjZWRpbmcgdGhlIGJpbmFyeSBkYXRhLgotICAgICAjCi0gIGV4YWN0X2RhdGEgOjo9ICdkYXRhJyBzcCBkZWNsZW4gbGYKLSAgICBiaW5hcnlfZGF0YTsKLQotICAgICAjIG5vdGU6IHF1b3RlZCBzdHJpbmdzIGFyZSBDLXN0eWxlIHF1b3Rpbmcgc3VwcG9ydGluZyBcYyBmb3IKLSAgICAgIyBjb21tb24gZXNjYXBlcyBvZiAnYycgKGUuLmcgXG4sIFx0LCBcXCwgXCIpIG9yIFxubm4gd2hlcmUgbm5uCi0gICAgICMgaXMgdGhlIHNpZ25lZCBieXRlIHZhbHVlIGluIG9jdGFsLiAgTm90ZSB0aGF0IHRoZSBvbmx5Ci0gICAgICMgY2hhcmFjdGVycyB3aGljaCBtdXN0IGFjdHVhbGx5IGJlIGVzY2FwZWQgdG8gcHJvdGVjdCB0aGUKLSAgICAgIyBzdHJlYW0gZm9ybWF0dGluZyBpczogXCwgIiBhbmQgTEYuICBPdGhlcndpc2UgdGhlc2UgdmFsdWVzCi0gICAgICMgYXJlIFVURjguCi0gICAgICMKLSAgY29tbWl0LWlzaCAgOjo9IChyZWZfc3RyIHwgaGV4c2hhMSB8IHNoYTFleHBfc3RyIHwgaWRudW0pOwotICByZWZfc3RyICAgICA6Oj0gcmVmOwotICBzaGExZXhwX3N0ciA6Oj0gc2hhMWV4cDsKLSAgdGFnX3N0ciAgICAgOjo9IHRhZzsKLSAgcGF0aF9zdHIgICAgOjo9IHBhdGggICAgfCAnIicgcXVvdGVkKHBhdGgpICAgICciJyA7Ci0gIG1vZGUgICAgICAgIDo6PSAnMTAwNjQ0JyB8ICc2NDQnCi0gICAgICAgICAgICAgICAgfCAnMTAwNzU1JyB8ICc3NTUnCi0gICAgICAgICAgICAgICAgfCAnMTIwMDAwJwotICAgICAgICAgICAgICAgIDsKLQotICBkZWNsZW4gOjo9ICMgdW5zaWduZWQgMzIgYml0IHZhbHVlLCBhc2NpaSBiYXNlMTAgbm90YXRpb247Ci0gIGJpZ2ludCA6Oj0gIyB1bnNpZ25lZCBpbnRlZ2VyIHZhbHVlLCBhc2NpaSBiYXNlMTAgbm90YXRpb247Ci0gIGJpbmFyeV9kYXRhIDo6PSAjIGZpbGUgY29udGVudCwgbm90IGludGVycHJldGVkOwotCi0gIHdoZW4gICAgICAgICA6Oj0gcmF3X3doZW4gfCByZmMyODIyX3doZW47Ci0gIHJhd193aGVuICAgICA6Oj0gdHMgc3AgdHo7Ci0gIHJmYzI4MjJfd2hlbiA6Oj0gIyBWYWxpZCBSRkMgMjgyMiBkYXRlIGFuZCB0aW1lOwotCi0gIHNwIDo6PSAjIEFTQ0lJIHNwYWNlIGNoYXJhY3RlcjsKLSAgbGYgOjo9ICMgQVNDSUkgbmV3bGluZSAoTEYpIGNoYXJhY3RlcjsKLQotICAgICAjIG5vdGU6IGEgY29sb24gKCc6JykgbXVzdCBwcmVjZWRlIHRoZSBudW1lcmljYWwgdmFsdWUgYXNzaWduZWQgdG8KLSAgICAgIyBhbiBpZG51bS4gIFRoaXMgaXMgdG8gZGlzdGluZ3Vpc2ggaXQgZnJvbSBhIHJlZiBvciB0YWcgbmFtZSBhcwotICAgICAjIEdJVCBkb2VzIG5vdCBwZXJtaXQgJzonIGluIHJlZiBvciB0YWcgc3RyaW5ncy4KLSAgICAgIwotICBpZG51bSAgIDo6PSAnOicgYmlnaW50OwotICBwYXRoICAgIDo6PSAjIEdJVCBzdHlsZSBmaWxlIHBhdGgsIGUuZy4gImEvYi9jIjsKLSAgcmVmICAgICA6Oj0gIyBHSVQgcmVmIG5hbWUsIGUuZy4gInJlZnMvaGVhZHMvTU9aX0dFQ0tPX0VYUEVSSU1FTlQiOwotICB0YWcgICAgIDo6PSAjIEdJVCB0YWcgbmFtZSwgZS5nLiAiRklSRUZPWF8xXzUiOwotICBzaGExZXhwIDo6PSAjIEFueSB2YWxpZCBHSVQgU0hBMSBleHByZXNzaW9uOwotICBoZXhzaGExIDo6PSAjIFNIQTEgaW4gaGV4YWRlY2ltYWwgZm9ybWF0OwotCi0gICAgICMgbm90ZTogbmFtZSBhbmQgZW1haWwgYXJlIFVURjggc3RyaW5ncywgaG93ZXZlciBuYW1lIG11c3Qgbm90Ci0gICAgICMgY29udGFpbiAnPCcgb3IgbGYgYW5kIGVtYWlsIG11c3Qgbm90IGNvbnRhaW4gYW55IG9mIHRoZQotICAgICAjIGZvbGxvd2luZzogJzwnLCAnPicsIGxmLgotICAgICAjCi0gIG5hbWUgIDo6PSAjIHZhbGlkIEdJVCBhdXRob3IvY29tbWl0dGVyIG5hbWU7Ci0gIGVtYWlsIDo6PSAjIHZhbGlkIEdJVCBhdXRob3IvY29tbWl0dGVyIGVtYWlsOwotICB0cyAgICA6Oj0gIyB0aW1lIHNpbmNlIHRoZSBlcG9jaCBpbiBzZWNvbmRzLCBhc2NpaSBiYXNlMTAgbm90YXRpb247Ci0gIHR6ICAgIDo6PSAjIEdJVCBzdHlsZSB0aW1lem9uZTsKLQotICAgICAjIG5vdGU6IGNvbW1lbnRzLCBnZXQtbWFyaywgbHMtdHJlZSwgYW5kIGNhdC1ibG9iIHJlcXVlc3RzIG1heQotICAgICAjIGFwcGVhciBhbnl3aGVyZSBpbiB0aGUgaW5wdXQsIGV4Y2VwdCB3aXRoaW4gYSBkYXRhIGNvbW1hbmQuIEFueQotICAgICAjIGZvcm0gb2YgdGhlIGRhdGEgY29tbWFuZCBhbHdheXMgZXNjYXBlcyB0aGUgcmVsYXRlZCBpbnB1dCBmcm9tCi0gICAgICMgY29tbWVudCBwcm9jZXNzaW5nLgotICAgICAjCi0gICAgICMgSW4gY2FzZSBpdCBpcyBub3QgY2xlYXIsIHRoZSAnIycgdGhhdCBzdGFydHMgdGhlIGNvbW1lbnQKLSAgICAgIyBtdXN0IGJlIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb24gdGhhdCBsaW5lIChhbiBsZgotICAgICAjIHByZWNlZGVkIGl0KS4KLSAgICAgIwotCi0gIGdldF9tYXJrIDo6PSAnZ2V0LW1hcmsnIHNwIGlkbnVtIGxmOwotICBjYXRfYmxvYiA6Oj0gJ2NhdC1ibG9iJyBzcCAoaGV4c2hhMSB8IGlkbnVtKSBsZjsKLSAgbHNfdHJlZSAgOjo9ICdscycgc3AgKGhleHNoYTEgfCBpZG51bSkgc3AgcGF0aF9zdHIgbGY7Ci0KLSAgY29tbWVudCA6Oj0gJyMnIG5vdF9sZiogbGY7Ci0gIG5vdF9sZiAgOjo9ICMgQW55IGJ5dGUgdGhhdCBpcyBub3QgQVNDSUkgbmV3bGluZSAoTEYpOwotKi8KLQogI2luY2x1ZGUgImJ1aWx0aW4uaCIKICNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKQEAgLTE4Myw2ICsyOSwxMyBAQAogICovCiAjZGVmaW5lIE5PX0RFTFRBIFNfSVNVSUQKIAorLyoKKyAqIFRoZSBhbW91bnQgb2YgYWRkaXRpb25hbCBzcGFjZSByZXF1aXJlZCBpbiBvcmRlciB0byB3cml0ZSBhbiBvYmplY3QgaW50byB0aGUKKyAqIGN1cnJlbnQgcGFjay4gVGhpcyBpcyB0aGUgaGFzaCBsZW5ndGhzIGF0IHRoZSBlbmQgb2YgdGhlIHBhY2ssIHBsdXMgdGhlCisgKiBsZW5ndGggb2Ygb25lIG9iamVjdCBJRC4KKyAqLworI2RlZmluZSBQQUNLX1NJWkVfVEhSRVNIT0xEICh0aGVfaGFzaF9hbGdvLT5yYXdzeiAqIDMpCisKIHN0cnVjdCBvYmplY3RfZW50cnkgewogCXN0cnVjdCBwYWNrX2lkeF9lbnRyeSBpZHg7CiAJc3RydWN0IG9iamVjdF9lbnRyeSAqbmV4dDsKQEAgLTc5Miw3ICs2NDUsNyBAQAogCXN0cnVjdCB0cmVlX2NvbnRlbnQgKnIgPSBuZXdfdHJlZV9jb250ZW50KHQtPmVudHJ5X2NvdW50ICsgYW10KTsKIAlyLT5lbnRyeV9jb3VudCA9IHQtPmVudHJ5X2NvdW50OwogCXItPmRlbHRhX2RlcHRoID0gdC0+ZGVsdGFfZGVwdGg7Ci0JbWVtY3B5KHItPmVudHJpZXMsdC0+ZW50cmllcyx0LT5lbnRyeV9jb3VudCpzaXplb2YodC0+ZW50cmllc1swXSkpOworCUNPUFlfQVJSQVkoci0+ZW50cmllcywgdC0+ZW50cmllcywgdC0+ZW50cnlfY291bnQpOwogCXJlbGVhc2VfdHJlZV9jb250ZW50KHQpOwogCXJldHVybiByOwogfQpAQCAtODk3LDcgKzc1MCw4IEBACiAJaWYgKGMgIT0gbGFzdCkKIAkJZGllKCJpbnRlcm5hbCBjb25zaXN0ZW5jeSBlcnJvciBjcmVhdGluZyB0aGUgaW5kZXgiKTsKIAotCXRtcGZpbGUgPSB3cml0ZV9pZHhfZmlsZShOVUxMLCBpZHgsIG9iamVjdF9jb3VudCwgJnBhY2tfaWR4X29wdHMsIHBhY2tfZGF0YS0+c2hhMSk7CisJdG1wZmlsZSA9IHdyaXRlX2lkeF9maWxlKE5VTEwsIGlkeCwgb2JqZWN0X2NvdW50LCAmcGFja19pZHhfb3B0cywKKwkJCQkgcGFja19kYXRhLT5oYXNoKTsKIAlmcmVlKGlkeCk7CiAJcmV0dXJuIHRtcGZpbGU7CiB9CkBAIC05MDgsNyArNzYyLDcgQEAKIAlzdHJ1Y3Qgc3RyYnVmIG5hbWUgPSBTVFJCVUZfSU5JVDsKIAlpbnQga2VlcF9mZDsKIAotCW9kYl9wYWNrX25hbWUoJm5hbWUsIHBhY2tfZGF0YS0+c2hhMSwgImtlZXAiKTsKKwlvZGJfcGFja19uYW1lKCZuYW1lLCBwYWNrX2RhdGEtPmhhc2gsICJrZWVwIik7CiAJa2VlcF9mZCA9IG9kYl9wYWNrX2tlZXAobmFtZS5idWYpOwogCWlmIChrZWVwX2ZkIDwgMCkKIAkJZGllX2Vycm5vKCJjYW5ub3QgY3JlYXRlIGtlZXAgZmlsZSIpOwpAQCAtOTE2LDExICs3NzAsMTEgQEAKIAlpZiAoY2xvc2Uoa2VlcF9mZCkpCiAJCWRpZV9lcnJubygiZmFpbGVkIHRvIHdyaXRlIGtlZXAgZmlsZSIpOwogCi0Jb2RiX3BhY2tfbmFtZSgmbmFtZSwgcGFja19kYXRhLT5zaGExLCAicGFjayIpOworCW9kYl9wYWNrX25hbWUoJm5hbWUsIHBhY2tfZGF0YS0+aGFzaCwgInBhY2siKTsKIAlpZiAoZmluYWxpemVfb2JqZWN0X2ZpbGUocGFja19kYXRhLT5wYWNrX25hbWUsIG5hbWUuYnVmKSkKIAkJZGllKCJjYW5ub3Qgc3RvcmUgcGFjayBmaWxlIik7CiAKLQlvZGJfcGFja19uYW1lKCZuYW1lLCBwYWNrX2RhdGEtPnNoYTEsICJpZHgiKTsKKwlvZGJfcGFja19uYW1lKCZuYW1lLCBwYWNrX2RhdGEtPmhhc2gsICJpZHgiKTsKIAlpZiAoZmluYWxpemVfb2JqZWN0X2ZpbGUoY3Vycl9pbmRleF9uYW1lLCBuYW1lLmJ1ZikpCiAJCWRpZSgiY2Fubm90IHN0b3JlIGluZGV4IGZpbGUiKTsKIAlmcmVlKCh2b2lkICopY3Vycl9pbmRleF9uYW1lKTsKQEAgLTkzNCw3ICs3ODgsNyBAQAogCiAJZm9yIChrID0gMDsgayA8IHBhY2tfaWQ7IGsrKykgewogCQlzdHJ1Y3QgcGFja2VkX2dpdCAqcCA9IGFsbF9wYWNrc1trXTsKLQkJb2RiX3BhY2tfbmFtZSgmbmFtZSwgcC0+c2hhMSwgImtlZXAiKTsKKwkJb2RiX3BhY2tfbmFtZSgmbmFtZSwgcC0+aGFzaCwgImtlZXAiKTsKIAkJdW5saW5rX29yX3dhcm4obmFtZS5idWYpOwogCX0KIAlzdHJidWZfcmVsZWFzZSgmbmFtZSk7CkBAIC05NzYsOSArODMwLDkgQEAKIAogCQljbG9zZV9wYWNrX3dpbmRvd3MocGFja19kYXRhKTsKIAkJZmluYWxpemVfaGFzaGZpbGUocGFja19maWxlLCBjdXJfcGFja19vaWQuaGFzaCwgMCk7Ci0JCWZpeHVwX3BhY2tfaGVhZGVyX2Zvb3RlcihwYWNrX2RhdGEtPnBhY2tfZmQsIHBhY2tfZGF0YS0+c2hhMSwKLQkJCQkgICAgcGFja19kYXRhLT5wYWNrX25hbWUsIG9iamVjdF9jb3VudCwKLQkJCQkgICAgY3VyX3BhY2tfb2lkLmhhc2gsIHBhY2tfc2l6ZSk7CisJCWZpeHVwX3BhY2tfaGVhZGVyX2Zvb3RlcihwYWNrX2RhdGEtPnBhY2tfZmQsIHBhY2tfZGF0YS0+aGFzaCwKKwkJCQkJIHBhY2tfZGF0YS0+cGFja19uYW1lLCBvYmplY3RfY291bnQsCisJCQkJCSBjdXJfcGFja19vaWQuaGFzaCwgcGFja19zaXplKTsKIAogCQlpZiAob2JqZWN0X2NvdW50IDw9IHVucGFja19saW1pdCkgewogCQkJaWYgKCFsb29zZW5fc21hbGxfcGFjayhwYWNrX2RhdGEpKSB7CkBAIC0xMTAzLDggKzk1Nyw5IEBACiAJZ2l0X2RlZmxhdGVfZW5kKCZzKTsKIAogCS8qIERldGVybWluZSBpZiB3ZSBzaG91bGQgYXV0by1jaGVja3BvaW50LiAqLwotCWlmICgobWF4X3BhY2tzaXplICYmIChwYWNrX3NpemUgKyA2MCArIHMudG90YWxfb3V0KSA+IG1heF9wYWNrc2l6ZSkKLQkJfHwgKHBhY2tfc2l6ZSArIDYwICsgcy50b3RhbF9vdXQpIDwgcGFja19zaXplKSB7CisJaWYgKChtYXhfcGFja3NpemUKKwkJJiYgKHBhY2tfc2l6ZSArIFBBQ0tfU0laRV9USFJFU0hPTEQgKyBzLnRvdGFsX291dCkgPiBtYXhfcGFja3NpemUpCisJCXx8IChwYWNrX3NpemUgKyBQQUNLX1NJWkVfVEhSRVNIT0xEICsgcy50b3RhbF9vdXQpIDwgcGFja19zaXplKSB7CiAKIAkJLyogVGhpcyBuZXcgb2JqZWN0IG5lZWRzIHRvICpub3QqIGhhdmUgdGhlIGN1cnJlbnQgcGFja19pZC4gKi8KIAkJZS0+cGFja19pZCA9IHBhY2tfaWQgKyAxOwpAQCAtMTE5OSw4ICsxMDU0LDkgQEAKIAlpbnQgc3RhdHVzID0gWl9PSzsKIAogCS8qIERldGVybWluZSBpZiB3ZSBzaG91bGQgYXV0by1jaGVja3BvaW50LiAqLwotCWlmICgobWF4X3BhY2tzaXplICYmIChwYWNrX3NpemUgKyA2MCArIGxlbikgPiBtYXhfcGFja3NpemUpCi0JCXx8IChwYWNrX3NpemUgKyA2MCArIGxlbikgPCBwYWNrX3NpemUpCisJaWYgKChtYXhfcGFja3NpemUKKwkJJiYgKHBhY2tfc2l6ZSArIFBBQ0tfU0laRV9USFJFU0hPTEQgKyBsZW4pID4gbWF4X3BhY2tzaXplKQorCQl8fCAocGFja19zaXplICsgUEFDS19TSVpFX1RIUkVTSE9MRCArIGxlbikgPCBwYWNrX3NpemUpCiAJCWN5Y2xlX3BhY2tmaWxlKCk7CiAKIAloYXNoZmlsZV9jaGVja3BvaW50KHBhY2tfZmlsZSwgJmNoZWNrcG9pbnQpOwpAQCAtMTM5NSw3ICsxMjUxLDcgQEAKIAkJYyArPSBlLT5uYW1lLT5zdHJfbGVuICsgMTsKIAkJaGFzaGNweShlLT52ZXJzaW9uc1swXS5vaWQuaGFzaCwgKHVuc2lnbmVkIGNoYXIgKiljKTsKIAkJaGFzaGNweShlLT52ZXJzaW9uc1sxXS5vaWQuaGFzaCwgKHVuc2lnbmVkIGNoYXIgKiljKTsKLQkJYyArPSBHSVRfU0hBMV9SQVdTWjsKKwkJYyArPSB0aGVfaGFzaF9hbGdvLT5yYXdzejsKIAl9CiAJZnJlZShidWYpOwogfQpAQCAtMTQ0Miw3ICsxMjk4LDcgQEAKIAkJc3RyYnVmX2FkZGYoYiwgIiVvICVzJWMiLAogCQkJKHVuc2lnbmVkIGludCkoZS0+dmVyc2lvbnNbdl0ubW9kZSAmIH5OT19ERUxUQSksCiAJCQllLT5uYW1lLT5zdHJfZGF0LCAnXDAnKTsKLQkJc3RyYnVmX2FkZChiLCBlLT52ZXJzaW9uc1t2XS5vaWQuaGFzaCwgR0lUX1NIQTFfUkFXU1opOworCQlzdHJidWZfYWRkKGIsIGUtPnZlcnNpb25zW3ZdLm9pZC5oYXNoLCB0aGVfaGFzaF9hbGdvLT5yYXdzeik7CiAJfQogfQogCkBAIC0xOTA5LDE0ICsxNzY1LDExIEBACiAJfQogCiAJZm9yICg7OykgewotCQljb25zdCBjaGFyICpwOwotCiAJCWlmICh1bnJlYWRfY29tbWFuZF9idWYpIHsKIAkJCXVucmVhZF9jb21tYW5kX2J1ZiA9IDA7CiAJCX0gZWxzZSB7CiAJCQlzdHJ1Y3QgcmVjZW50X2NvbW1hbmQgKnJjOwogCi0JCQlzdHJidWZfZGV0YWNoKCZjb21tYW5kX2J1ZiwgTlVMTCk7CiAJCQlzdGRpbl9lb2YgPSBzdHJidWZfZ2V0bGluZV9sZigmY29tbWFuZF9idWYsIHN0ZGluKTsKIAkJCWlmIChzdGRpbl9lb2YpCiAJCQkJcmV0dXJuIEVPRjsKQEAgLTE5MzcsMjAgKzE3OTAsMTIgQEAKIAkJCQlmcmVlKHJjLT5idWYpOwogCQkJfQogCi0JCQlyYy0+YnVmID0gY29tbWFuZF9idWYuYnVmOworCQkJcmMtPmJ1ZiA9IHhzdHJkdXAoY29tbWFuZF9idWYuYnVmKTsKIAkJCXJjLT5wcmV2ID0gY21kX3RhaWw7CiAJCQlyYy0+bmV4dCA9IGNtZF9oaXN0LnByZXY7CiAJCQlyYy0+cHJldi0+bmV4dCA9IHJjOwogCQkJY21kX3RhaWwgPSByYzsKIAkJfQotCQlpZiAoc2tpcF9wcmVmaXgoY29tbWFuZF9idWYuYnVmLCAiZ2V0LW1hcmsgIiwgJnApKSB7Ci0JCQlwYXJzZV9nZXRfbWFyayhwKTsKLQkJCWNvbnRpbnVlOwotCQl9Ci0JCWlmIChza2lwX3ByZWZpeChjb21tYW5kX2J1Zi5idWYsICJjYXQtYmxvYiAiLCAmcCkpIHsKLQkJCXBhcnNlX2NhdF9ibG9iKHApOwotCQkJY29udGludWU7Ci0JCX0KIAkJaWYgKGNvbW1hbmRfYnVmLmJ1ZlswXSA9PSAnIycpCiAJCQljb250aW51ZTsKIAkJcmV0dXJuIDA7CkBAIC0xOTc1LDYgKzE4MjAsMTMgQEAKIAkJbmV4dF9tYXJrID0gMDsKIH0KIAorc3RhdGljIHZvaWQgcGFyc2Vfb3JpZ2luYWxfaWRlbnRpZmllcih2b2lkKQoreworCWNvbnN0IGNoYXIgKnY7CisJaWYgKHNraXBfcHJlZml4KGNvbW1hbmRfYnVmLmJ1ZiwgIm9yaWdpbmFsLW9pZCAiLCAmdikpCisJCXJlYWRfbmV4dF9jb21tYW5kKCk7Cit9CisKIHN0YXRpYyBpbnQgcGFyc2VfZGF0YShzdHJ1Y3Qgc3RyYnVmICpzYiwgdWludG1heF90IGxpbWl0LCB1aW50bWF4X3QgKmxlbl9yZXMpCiB7CiAJY29uc3QgY2hhciAqZGF0YTsKQEAgLTE5ODcsNyArMTgzOSw2IEBACiAJCWNoYXIgKnRlcm0gPSB4c3RyZHVwKGRhdGEpOwogCQlzaXplX3QgdGVybV9sZW4gPSBjb21tYW5kX2J1Zi5sZW4gLSAoZGF0YSAtIGNvbW1hbmRfYnVmLmJ1Zik7CiAKLQkJc3RyYnVmX2RldGFjaCgmY29tbWFuZF9idWYsIE5VTEwpOwogCQlmb3IgKDs7KSB7CiAJCQlpZiAoc3RyYnVmX2dldGxpbmVfbGYoJmNvbW1hbmRfYnVmLCBzdGRpbikgPT0gRU9GKQogCQkJCWRpZSgiRU9GIGluIGRhdGEgKHRlcm1pbmF0b3IgJyVzJyBub3QgZm91bmQpIiwgdGVybSk7CkBAIC0yMTE3LDYgKzE5NjgsNyBAQAogewogCXJlYWRfbmV4dF9jb21tYW5kKCk7CiAJcGFyc2VfbWFyaygpOworCXBhcnNlX29yaWdpbmFsX2lkZW50aWZpZXIoKTsKIAlwYXJzZV9hbmRfc3RvcmVfYmxvYigmbGFzdF9ibG9iLCBOVUxMLCBuZXh0X21hcmspOwogfQogCkBAIC0yMTk5LDcgKzIwNTEsOSBAQAogCXVuc2lnbmVkIGludCBpLCB0bXBfaGV4X29pZF9sZW4sIHRtcF9mdWxscGF0aF9sZW47CiAJdWludG1heF90IG51bV9ub3RlcyA9IDA7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7Ci0JY2hhciByZWFscGF0aFs2MF07CisJLyogaGV4IG9pZCArICcvJyBiZXR3ZWVuIGVhY2ggcGFpciBvZiBoZXggZGlnaXRzICsgTlVMICovCisJY2hhciByZWFscGF0aFtHSVRfTUFYX0hFWFNaICsgKChHSVRfTUFYX0hFWFNaIC8gMikgLSAxKSArIDFdOworCWNvbnN0IHVuc2lnbmVkIGhleHN6ID0gdGhlX2hhc2hfYWxnby0+aGV4c3o7CiAKIAlpZiAoIXJvb3QtPnRyZWUpCiAJCWxvYWRfdHJlZShyb290KTsKQEAgLTIyMTksNyArMjA3Myw3IEBACiAJCSAqIG9mIDIgY2hhcnMuCiAJCSAqLwogCQlpZiAoIWUtPnZlcnNpb25zWzFdLm1vZGUgfHwKLQkJICAgIHRtcF9oZXhfb2lkX2xlbiA+IEdJVF9TSEExX0hFWFNaIHx8CisJCSAgICB0bXBfaGV4X29pZF9sZW4gPiBoZXhzeiB8fAogCQkgICAgZS0+bmFtZS0+c3RyX2xlbiAlIDIpCiAJCQljb250aW51ZTsKIApAQCAtMjIzMyw3ICsyMDg3LDcgQEAKIAkJdG1wX2Z1bGxwYXRoX2xlbiArPSBlLT5uYW1lLT5zdHJfbGVuOwogCQlmdWxscGF0aFt0bXBfZnVsbHBhdGhfbGVuXSA9ICdcMCc7CiAKLQkJaWYgKHRtcF9oZXhfb2lkX2xlbiA9PSBHSVRfU0hBMV9IRVhTWiAmJiAhZ2V0X29pZF9oZXgoaGV4X29pZCwgJm9pZCkpIHsKKwkJaWYgKHRtcF9oZXhfb2lkX2xlbiA9PSBoZXhzeiAmJiAhZ2V0X29pZF9oZXgoaGV4X29pZCwgJm9pZCkpIHsKIAkJCS8qIFRoaXMgaXMgYSBub3RlIGVudHJ5ICovCiAJCQlpZiAoZmFub3V0ID09IDB4ZmYpIHsKIAkJCQkvKiBDb3VudGluZyBtb2RlLCBubyByZW5hbWUgKi8KQEAgLTI0MDcsOCArMjI2MSwxNSBAQAogCQkJc3RyYnVmX2FkZHN0cigmdXEsIHApOwogCQkJcCA9IHVxLmJ1ZjsKIAkJfQotCQlyZWFkX25leHRfY29tbWFuZCgpOwotCQlwYXJzZV9hbmRfc3RvcmVfYmxvYigmbGFzdF9ibG9iLCAmb2lkLCAwKTsKKwkJd2hpbGUgKHJlYWRfbmV4dF9jb21tYW5kKCkgIT0gRU9GKSB7CisJCQljb25zdCBjaGFyICp2OworCQkJaWYgKHNraXBfcHJlZml4KGNvbW1hbmRfYnVmLmJ1ZiwgImNhdC1ibG9iICIsICZ2KSkKKwkJCQlwYXJzZV9jYXRfYmxvYih2KTsKKwkJCWVsc2UgeworCQkJCXBhcnNlX2FuZF9zdG9yZV9ibG9iKCZsYXN0X2Jsb2IsICZvaWQsIDApOworCQkJCWJyZWFrOworCQkJfQorCQl9CiAJfSBlbHNlIHsKIAkJZW51bSBvYmplY3RfdHlwZSBleHBlY3RlZCA9IFNfSVNESVIobW9kZSkgPwogCQkJCQkJT0JKX1RSRUU6IE9CSl9CTE9COwpAQCAtMjUwNCw3ICsyMzY1LDcgQEAKIAlzdHJ1Y3Qgb2JqZWN0X2VudHJ5ICpvZTsKIAlzdHJ1Y3QgYnJhbmNoICpzOwogCXN0cnVjdCBvYmplY3RfaWQgb2lkLCBjb21taXRfb2lkOwotCWNoYXIgcGF0aFs2MF07CisJY2hhciBwYXRoW0dJVF9NQVhfUkFXU1ogKiAzXTsKIAl1aW50MTZfdCBpbmxpbmVfZGF0YSA9IDA7CiAJdW5zaWduZWQgY2hhciBuZXdfZmFub3V0OwogCkBAIC0yNTU0LDEwICsyNDE1LDExIEBACiAJCW9pZGNweSgmY29tbWl0X29pZCwgJmNvbW1pdF9vZS0+aWR4Lm9pZCk7CiAJfSBlbHNlIGlmICghZ2V0X29pZChwLCAmY29tbWl0X29pZCkpIHsKIAkJdW5zaWduZWQgbG9uZyBzaXplOwotCQljaGFyICpidWYgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZSgmY29tbWl0X29pZCwKKwkJY2hhciAqYnVmID0gcmVhZF9vYmplY3Rfd2l0aF9yZWZlcmVuY2UodGhlX3JlcG9zaXRvcnksCisJCQkJCQkgICAgICAgJmNvbW1pdF9vaWQsCiAJCQkJCQkgICAgICAgY29tbWl0X3R5cGUsICZzaXplLAogCQkJCQkJICAgICAgICZjb21taXRfb2lkKTsKLQkJaWYgKCFidWYgfHwgc2l6ZSA8IDQ2KQorCQlpZiAoIWJ1ZiB8fCBzaXplIDwgdGhlX2hhc2hfYWxnby0+aGV4c3ogKyA2KQogCQkJZGllKCJOb3QgYSB2YWxpZCBjb21taXQ6ICVzIiwgcCk7CiAJCWZyZWUoYnVmKTsKIAl9IGVsc2UKQEAgLTI2MDgsNyArMjQ3MCw3IEBACiAKIHN0YXRpYyB2b2lkIHBhcnNlX2Zyb21fY29tbWl0KHN0cnVjdCBicmFuY2ggKmIsIGNoYXIgKmJ1ZiwgdW5zaWduZWQgbG9uZyBzaXplKQogewotCWlmICghYnVmIHx8IHNpemUgPCBHSVRfU0hBMV9IRVhTWiArIDYpCisJaWYgKCFidWYgfHwgc2l6ZSA8IHRoZV9oYXNoX2FsZ28tPmhleHN6ICsgNikKIAkJZGllKCJOb3QgYSB2YWxpZCBjb21taXQ6ICVzIiwgb2lkX3RvX2hleCgmYi0+b2lkKSk7CiAJaWYgKG1lbWNtcCgidHJlZSAiLCBidWYsIDUpCiAJCXx8IGdldF9vaWRfaGV4KGJ1ZiArIDUsICZiLT5icmFuY2hfdHJlZS52ZXJzaW9uc1sxXS5vaWQpKQpAQCAtMjYyNiwyNSArMjQ4OCwyMiBAQAogCQl1bnNpZ25lZCBsb25nIHNpemU7CiAJCWNoYXIgKmJ1ZjsKIAotCQlidWYgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZSgmYi0+b2lkLCBjb21taXRfdHlwZSwgJnNpemUsCisJCWJ1ZiA9IHJlYWRfb2JqZWN0X3dpdGhfcmVmZXJlbmNlKHRoZV9yZXBvc2l0b3J5LAorCQkJCQkJICZiLT5vaWQsIGNvbW1pdF90eXBlLCAmc2l6ZSwKIAkJCQkJCSAmYi0+b2lkKTsKIAkJcGFyc2VfZnJvbV9jb21taXQoYiwgYnVmLCBzaXplKTsKIAkJZnJlZShidWYpOwogCX0KIH0KIAotc3RhdGljIGludCBwYXJzZV9mcm9tKHN0cnVjdCBicmFuY2ggKmIpCitzdGF0aWMgaW50IHBhcnNlX29iamVjdGlzaChzdHJ1Y3QgYnJhbmNoICpiLCBjb25zdCBjaGFyICpvYmplY3Rpc2gpCiB7Ci0JY29uc3QgY2hhciAqZnJvbTsKIAlzdHJ1Y3QgYnJhbmNoICpzOwogCXN0cnVjdCBvYmplY3RfaWQgb2lkOwogCi0JaWYgKCFza2lwX3ByZWZpeChjb21tYW5kX2J1Zi5idWYsICJmcm9tICIsICZmcm9tKSkKLQkJcmV0dXJuIDA7Ci0KIAlvaWRjcHkoJm9pZCwgJmItPmJyYW5jaF90cmVlLnZlcnNpb25zWzFdLm9pZCk7CiAKLQlzID0gbG9va3VwX2JyYW5jaChmcm9tKTsKKwlzID0gbG9va3VwX2JyYW5jaChvYmplY3Rpc2gpOwogCWlmIChiID09IHMpCiAJCWRpZSgiQ2FuJ3QgY3JlYXRlIGEgYnJhbmNoIGZyb20gaXRzZWxmOiAlcyIsIGItPm5hbWUpOwogCWVsc2UgaWYgKHMpIHsKQEAgLTI2NTIsOCArMjUxMSw4IEBACiAJCW9pZGNweSgmYi0+b2lkLCAmcy0+b2lkKTsKIAkJb2lkY3B5KCZiLT5icmFuY2hfdHJlZS52ZXJzaW9uc1swXS5vaWQsIHQpOwogCQlvaWRjcHkoJmItPmJyYW5jaF90cmVlLnZlcnNpb25zWzFdLm9pZCwgdCk7Ci0JfSBlbHNlIGlmICgqZnJvbSA9PSAnOicpIHsKLQkJdWludG1heF90IGlkbnVtID0gcGFyc2VfbWFya19yZWZfZW9sKGZyb20pOworCX0gZWxzZSBpZiAoKm9iamVjdGlzaCA9PSAnOicpIHsKKwkJdWludG1heF90IGlkbnVtID0gcGFyc2VfbWFya19yZWZfZW9sKG9iamVjdGlzaCk7CiAJCXN0cnVjdCBvYmplY3RfZW50cnkgKm9lID0gZmluZF9tYXJrKGlkbnVtKTsKIAkJaWYgKG9lLT50eXBlICE9IE9CSl9DT01NSVQpCiAJCQlkaWUoIk1hcmsgOiUiIFBSSXVNQVggIiBub3QgYSBjb21taXQiLCBpZG51bSk7CkBAIC0yNjY3LDEzICsyNTI2LDEzIEBACiAJCQl9IGVsc2UKIAkJCQlwYXJzZV9mcm9tX2V4aXN0aW5nKGIpOwogCQl9Ci0JfSBlbHNlIGlmICghZ2V0X29pZChmcm9tLCAmYi0+b2lkKSkgeworCX0gZWxzZSBpZiAoIWdldF9vaWQob2JqZWN0aXNoLCAmYi0+b2lkKSkgewogCQlwYXJzZV9mcm9tX2V4aXN0aW5nKGIpOwogCQlpZiAoaXNfbnVsbF9vaWQoJmItPm9pZCkpCiAJCQliLT5kZWxldGUgPSAxOwogCX0KIAllbHNlCi0JCWRpZSgiSW52YWxpZCByZWYgbmFtZSBvciBTSEExIGV4cHJlc3Npb246ICVzIiwgZnJvbSk7CisJCWRpZSgiSW52YWxpZCByZWYgbmFtZSBvciBTSEExIGV4cHJlc3Npb246ICVzIiwgb2JqZWN0aXNoKTsKIAogCWlmIChiLT5icmFuY2hfdHJlZS50cmVlICYmICFvaWRlcSgmb2lkLCAmYi0+YnJhbmNoX3RyZWUudmVyc2lvbnNbMV0ub2lkKSkgewogCQlyZWxlYXNlX3RyZWVfY29udGVudF9yZWN1cnNpdmUoYi0+YnJhbmNoX3RyZWUudHJlZSk7CkBAIC0yNjg0LDYgKzI1NDMsMjYgQEAKIAlyZXR1cm4gMTsKIH0KIAorc3RhdGljIGludCBwYXJzZV9mcm9tKHN0cnVjdCBicmFuY2ggKmIpCit7CisJY29uc3QgY2hhciAqZnJvbTsKKworCWlmICghc2tpcF9wcmVmaXgoY29tbWFuZF9idWYuYnVmLCAiZnJvbSAiLCAmZnJvbSkpCisJCXJldHVybiAwOworCisJcmV0dXJuIHBhcnNlX29iamVjdGlzaChiLCBmcm9tKTsKK30KKworc3RhdGljIGludCBwYXJzZV9vYmplY3Rpc2hfd2l0aF9wcmVmaXgoc3RydWN0IGJyYW5jaCAqYiwgY29uc3QgY2hhciAqcHJlZml4KQoreworCWNvbnN0IGNoYXIgKmJhc2U7CisKKwlpZiAoIXNraXBfcHJlZml4KGNvbW1hbmRfYnVmLmJ1ZiwgcHJlZml4LCAmYmFzZSkpCisJCXJldHVybiAwOworCisJcmV0dXJuIHBhcnNlX29iamVjdGlzaChiLCBiYXNlKTsKK30KKwogc3RhdGljIHN0cnVjdCBoYXNoX2xpc3QgKnBhcnNlX21lcmdlKHVuc2lnbmVkIGludCAqY291bnQpCiB7CiAJc3RydWN0IGhhc2hfbGlzdCAqbGlzdCA9IE5VTEwsICoqdGFpbCA9ICZsaXN0LCAqbjsKQEAgLTI3MDQsMTAgKzI1ODMsMTEgQEAKIAkJCW9pZGNweSgmbi0+b2lkLCAmb2UtPmlkeC5vaWQpOwogCQl9IGVsc2UgaWYgKCFnZXRfb2lkKGZyb20sICZuLT5vaWQpKSB7CiAJCQl1bnNpZ25lZCBsb25nIHNpemU7Ci0JCQljaGFyICpidWYgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZSgmbi0+b2lkLAorCQkJY2hhciAqYnVmID0gcmVhZF9vYmplY3Rfd2l0aF9yZWZlcmVuY2UodGhlX3JlcG9zaXRvcnksCisJCQkJCQkJICAgICAgICZuLT5vaWQsCiAJCQkJCQkJICAgICAgIGNvbW1pdF90eXBlLAogCQkJCQkJCSAgICAgICAmc2l6ZSwgJm4tPm9pZCk7Ci0JCQlpZiAoIWJ1ZiB8fCBzaXplIDwgNDYpCisJCQlpZiAoIWJ1ZiB8fCBzaXplIDwgdGhlX2hhc2hfYWxnby0+aGV4c3ogKyA2KQogCQkJCWRpZSgiTm90IGEgdmFsaWQgY29tbWl0OiAlcyIsIGZyb20pOwogCQkJZnJlZShidWYpOwogCQl9IGVsc2UKQEAgLTI3MjksNiArMjYwOSw3IEBACiAJc3RydWN0IGJyYW5jaCAqYjsKIAljaGFyICphdXRob3IgPSBOVUxMOwogCWNoYXIgKmNvbW1pdHRlciA9IE5VTEw7CisJY2hhciAqZW5jb2RpbmcgPSBOVUxMOwogCXN0cnVjdCBoYXNoX2xpc3QgKm1lcmdlX2xpc3QgPSBOVUxMOwogCXVuc2lnbmVkIGludCBtZXJnZV9jb3VudDsKIAl1bnNpZ25lZCBjaGFyIHByZXZfZmFub3V0LCBuZXdfZmFub3V0OwpAQCAtMjc0MCw2ICsyNjIxLDcgQEAKIAogCXJlYWRfbmV4dF9jb21tYW5kKCk7CiAJcGFyc2VfbWFyaygpOworCXBhcnNlX29yaWdpbmFsX2lkZW50aWZpZXIoKTsKIAlpZiAoc2tpcF9wcmVmaXgoY29tbWFuZF9idWYuYnVmLCAiYXV0aG9yICIsICZ2KSkgewogCQlhdXRob3IgPSBwYXJzZV9pZGVudCh2KTsKIAkJcmVhZF9uZXh0X2NvbW1hbmQoKTsKQEAgLTI3NTAsNiArMjYzMiwxMCBAQAogCX0KIAlpZiAoIWNvbW1pdHRlcikKIAkJZGllKCJFeHBlY3RlZCBjb21taXR0ZXIgYnV0IGRpZG4ndCBnZXQgb25lIik7CisJaWYgKHNraXBfcHJlZml4KGNvbW1hbmRfYnVmLmJ1ZiwgImVuY29kaW5nICIsICZ2KSkgeworCQllbmNvZGluZyA9IHhzdHJkdXAodik7CisJCXJlYWRfbmV4dF9jb21tYW5kKCk7CisJfQogCXBhcnNlX2RhdGEoJm1zZywgMCwgTlVMTCk7CiAJcmVhZF9uZXh0X2NvbW1hbmQoKTsKIAlwYXJzZV9mcm9tKGIpOwpAQCAtMjc3OSw2ICsyNjY1LDggQEAKIAkJCWZpbGVfY2hhbmdlX2RlbGV0ZWFsbChiKTsKIAkJZWxzZSBpZiAoc2tpcF9wcmVmaXgoY29tbWFuZF9idWYuYnVmLCAibHMgIiwgJnYpKQogCQkJcGFyc2VfbHModiwgYik7CisJCWVsc2UgaWYgKHNraXBfcHJlZml4KGNvbW1hbmRfYnVmLmJ1ZiwgImNhdC1ibG9iICIsICZ2KSkKKwkJCXBhcnNlX2NhdF9ibG9iKHYpOwogCQllbHNlIHsKIAkJCXVucmVhZF9jb21tYW5kX2J1ZiA9IDE7CiAJCQlicmVhazsKQEAgLTI4MTEsMTIgKzI2OTksMTcgQEAKIAl9CiAJc3RyYnVmX2FkZGYoJm5ld19kYXRhLAogCQkiYXV0aG9yICVzXG4iCi0JCSJjb21taXR0ZXIgJXNcbiIKLQkJIlxuIiwKKwkJImNvbW1pdHRlciAlc1xuIiwKIAkJYXV0aG9yID8gYXV0aG9yIDogY29tbWl0dGVyLCBjb21taXR0ZXIpOworCWlmIChlbmNvZGluZykKKwkJc3RyYnVmX2FkZGYoJm5ld19kYXRhLAorCQkJImVuY29kaW5nICVzXG4iLAorCQkJZW5jb2RpbmcpOworCXN0cmJ1Zl9hZGRjaCgmbmV3X2RhdGEsICdcbicpOwogCXN0cmJ1Zl9hZGRidWYoJm5ld19kYXRhLCAmbXNnKTsKIAlmcmVlKGF1dGhvcik7CiAJZnJlZShjb21taXR0ZXIpOworCWZyZWUoZW5jb2RpbmcpOwogCiAJaWYgKCFzdG9yZV9vYmplY3QoT0JKX0NPTU1JVCwgJm5ld19kYXRhLCBOVUxMLCAmYi0+b2lkLCBuZXh0X21hcmspKQogCQliLT5wYWNrX2lkID0gcGFja19pZDsKQEAgLTI4NDQsNiArMjczNyw3IEBACiAJCWZpcnN0X3RhZyA9IHQ7CiAJbGFzdF90YWcgPSB0OwogCXJlYWRfbmV4dF9jb21tYW5kKCk7CisJcGFyc2VfbWFyaygpOwogCiAJLyogZnJvbSAuLi4gKi8KIAlpZiAoIXNraXBfcHJlZml4KGNvbW1hbmRfYnVmLmJ1ZiwgImZyb20gIiwgJmZyb20pKQpAQCAtMjg3Miw2ICsyNzY2LDkgQEAKIAkJZGllKCJJbnZhbGlkIHJlZiBuYW1lIG9yIFNIQTEgZXhwcmVzc2lvbjogJXMiLCBmcm9tKTsKIAlyZWFkX25leHRfY29tbWFuZCgpOwogCisJLyogb3JpZ2luYWwtb2lkIC4uLiAqLworCXBhcnNlX29yaWdpbmFsX2lkZW50aWZpZXIoKTsKKwogCS8qIHRhZ2dlciAuLi4gKi8KIAlpZiAoc2tpcF9wcmVmaXgoY29tbWFuZF9idWYuYnVmLCAidGFnZ2VyICIsICZ2KSkgewogCQl0YWdnZXIgPSBwYXJzZV9pZGVudCh2KTsKQEAgLTI4OTcsNyArMjc5NCw3IEBACiAJc3RyYnVmX2FkZGJ1ZigmbmV3X2RhdGEsICZtc2cpOwogCWZyZWUodGFnZ2VyKTsKIAotCWlmIChzdG9yZV9vYmplY3QoT0JKX1RBRywgJm5ld19kYXRhLCBOVUxMLCAmdC0+b2lkLCAwKSkKKwlpZiAoc3RvcmVfb2JqZWN0KE9CSl9UQUcsICZuZXdfZGF0YSwgTlVMTCwgJnQtPm9pZCwgbmV4dF9tYXJrKSkKIAkJdC0+cGFja19pZCA9IE1BWF9QQUNLX0lEOwogCWVsc2UKIAkJdC0+cGFja19pZCA9IHBhY2tfaWQ7CkBAIC0yOTA2LDYgKzI4MDMsNyBAQAogc3RhdGljIHZvaWQgcGFyc2VfcmVzZXRfYnJhbmNoKGNvbnN0IGNoYXIgKmFyZykKIHsKIAlzdHJ1Y3QgYnJhbmNoICpiOworCWNvbnN0IGNoYXIgKnRhZ19uYW1lOwogCiAJYiA9IGxvb2t1cF9icmFuY2goYXJnKTsKIAlpZiAoYikgewpAQCAtMjkyMSw2ICsyODE5LDMyIEBACiAJCWIgPSBuZXdfYnJhbmNoKGFyZyk7CiAJcmVhZF9uZXh0X2NvbW1hbmQoKTsKIAlwYXJzZV9mcm9tKGIpOworCWlmIChiLT5kZWxldGUgJiYgc2tpcF9wcmVmaXgoYi0+bmFtZSwgInJlZnMvdGFncy8iLCAmdGFnX25hbWUpKSB7CisJCS8qCisJCSAqIEVsc2V3aGVyZSwgd2UgY2FsbCBkdW1wX2JyYW5jaGVzKCkgYmVmb3JlIGR1bXBfdGFncygpLAorCQkgKiBhbmQgZHVtcF9icmFuY2hlcygpIHdpbGwgaGFuZGxlIHJlZiBkZWxldGlvbnMgZmlyc3QsIHNvCisJCSAqIGluIG9yZGVyIHRvIG1ha2Ugc3VyZSB0aGUgZGVsZXRpb24gYWN0dWFsbHkgdGFrZXMgZWZmZWN0LAorCQkgKiB3ZSBuZWVkIHRvIHJlbW92ZSB0aGUgdGFnIGZyb20gb3VyIGxpc3Qgb2YgdGFncyB0byB1cGRhdGUuCisJCSAqCisJCSAqIE5FRURTV09SSzogcmVwbGFjZSBsaXN0IG9mIHRhZ3Mgd2l0aCBoYXNobWFwIGZvciBmYXN0ZXIKKwkJICogZGVsZXRpb24/CisJCSAqLworCQlzdHJ1Y3QgdGFnICp0LCAqcHJldiA9IE5VTEw7CisJCWZvciAodCA9IGZpcnN0X3RhZzsgdDsgdCA9IHQtPm5leHRfdGFnKSB7CisJCQlpZiAoIXN0cmNtcCh0LT5uYW1lLCB0YWdfbmFtZSkpCisJCQkJYnJlYWs7CisJCQlwcmV2ID0gdDsKKwkJfQorCQlpZiAodCkgeworCQkJaWYgKHByZXYpCisJCQkJcHJldi0+bmV4dF90YWcgPSB0LT5uZXh0X3RhZzsKKwkJCWVsc2UKKwkJCQlmaXJzdF90YWcgPSB0LT5uZXh0X3RhZzsKKwkJCWlmICghdC0+bmV4dF90YWcpCisJCQkJbGFzdF90YWcgPSBwcmV2OworCQkJLyogVGhlcmUgaXMgbm8gbWVtX3Bvb2xfZnJlZSh0KSBmdW5jdGlvbiB0byBjYWxsLiAqLworCQl9CisJfQogCWlmIChjb21tYW5kX2J1Zi5sZW4gPiAwKQogCQl1bnJlYWRfY29tbWFuZF9idWYgPSAxOwogfQpAQCAtMjk5MCw3ICsyOTE0LDcgQEAKIAkJZGllKCJVbmtub3duIG1hcms6ICVzIiwgY29tbWFuZF9idWYuYnVmKTsKIAogCXhzbnByaW50ZihvdXRwdXQsIHNpemVvZihvdXRwdXQpLCAiJXNcbiIsIG9pZF90b19oZXgoJm9lLT5pZHgub2lkKSk7Ci0JY2F0X2Jsb2Jfd3JpdGUob3V0cHV0LCBHSVRfU0hBMV9IRVhTWiArIDEpOworCWNhdF9ibG9iX3dyaXRlKG91dHB1dCwgdGhlX2hhc2hfYWxnby0+aGV4c3ogKyAxKTsKIH0KIAogc3RhdGljIHZvaWQgcGFyc2VfY2F0X2Jsb2IoY29uc3QgY2hhciAqcCkKQEAgLTMwMjAsNiArMjk0NCw4IEBACiB7CiAJdW5zaWduZWQgbG9uZyBzaXplOwogCWNoYXIgKmJ1ZiA9IE5VTEw7CisJY29uc3QgdW5zaWduZWQgaGV4c3ogPSB0aGVfaGFzaF9hbGdvLT5oZXhzejsKKwogCWlmICghb2UpIHsKIAkJZW51bSBvYmplY3RfdHlwZSB0eXBlID0gb2lkX29iamVjdF9pbmZvKHRoZV9yZXBvc2l0b3J5LCBvaWQsCiAJCQkJCQkJTlVMTCk7CkBAIC0zMDUzLDEyICsyOTc5LDEyIEBACiAJLyogUGVlbCBvbmUgbGF5ZXIuICovCiAJc3dpdGNoIChvZS0+dHlwZSkgewogCWNhc2UgT0JKX1RBRzoKLQkJaWYgKHNpemUgPCBHSVRfU0hBMV9IRVhTWiArIHN0cmxlbigib2JqZWN0ICIpIHx8CisJCWlmIChzaXplIDwgaGV4c3ogKyBzdHJsZW4oIm9iamVjdCAiKSB8fAogCQkgICAgZ2V0X29pZF9oZXgoYnVmICsgc3RybGVuKCJvYmplY3QgIiksIG9pZCkpCiAJCQlkaWUoIkludmFsaWQgU0hBMSBpbiB0YWc6ICVzIiwgY29tbWFuZF9idWYuYnVmKTsKIAkJYnJlYWs7CiAJY2FzZSBPQkpfQ09NTUlUOgotCQlpZiAoc2l6ZSA8IEdJVF9TSEExX0hFWFNaICsgc3RybGVuKCJ0cmVlICIpIHx8CisJCWlmIChzaXplIDwgaGV4c3ogKyBzdHJsZW4oInRyZWUgIikgfHwKIAkJICAgIGdldF9vaWRfaGV4KGJ1ZiArIHN0cmxlbigidHJlZSAiKSwgb2lkKSkKIAkJCWRpZSgiSW52YWxpZCBTSEExIGluIGNvbW1pdDogJXMiLCBjb21tYW5kX2J1Zi5idWYpOwogCX0KQEAgLTMwOTAsNyArMzAxNiw3IEBACiAJcmV0dXJuIGU7CiB9CiAKLXN0YXRpYyB2b2lkIHByaW50X2xzKGludCBtb2RlLCBjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExLCBjb25zdCBjaGFyICpwYXRoKQorc3RhdGljIHZvaWQgcHJpbnRfbHMoaW50IG1vZGUsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmhhc2gsIGNvbnN0IGNoYXIgKnBhdGgpCiB7CiAJc3RhdGljIHN0cnVjdCBzdHJidWYgbGluZSA9IFNUUkJVRl9JTklUOwogCkBAIC0zMTEwLDcgKzMwMzYsNyBAQAogCQkvKiBtb2RlIFNQIHR5cGUgU1Agb2JqZWN0X25hbWUgVEFCIHBhdGggTEYgKi8KIAkJc3RyYnVmX3Jlc2V0KCZsaW5lKTsKIAkJc3RyYnVmX2FkZGYoJmxpbmUsICIlMDZvICVzICVzXHQiLAotCQkJCW1vZGUgJiB+Tk9fREVMVEEsIHR5cGUsIHNoYTFfdG9faGV4KHNoYTEpKTsKKwkJCQltb2RlICYgfk5PX0RFTFRBLCB0eXBlLCBoYXNoX3RvX2hleChoYXNoKSk7CiAJCXF1b3RlX2Nfc3R5bGUocGF0aCwgJmxpbmUsIE5VTEwsIDApOwogCQlzdHJidWZfYWRkY2goJmxpbmUsICdcbicpOwogCX0KQEAgLTMxODUsNiArMzExMSwyOCBAQAogCXNraXBfb3B0aW9uYWxfbGYoKTsKIH0KIAorc3RhdGljIHZvaWQgcGFyc2VfYWxpYXModm9pZCkKK3sKKwlzdHJ1Y3Qgb2JqZWN0X2VudHJ5ICplOworCXN0cnVjdCBicmFuY2ggYjsKKworCXNraXBfb3B0aW9uYWxfbGYoKTsKKwlyZWFkX25leHRfY29tbWFuZCgpOworCisJLyogbWFyayAuLi4gKi8KKwlwYXJzZV9tYXJrKCk7CisJaWYgKCFuZXh0X21hcmspCisJCWRpZShfKCJFeHBlY3RlZCAnbWFyaycgY29tbWFuZCwgZ290ICVzIiksIGNvbW1hbmRfYnVmLmJ1Zik7CisKKwkvKiB0byAuLi4gKi8KKwltZW1zZXQoJmIsIDAsIHNpemVvZihiKSk7CisJaWYgKCFwYXJzZV9vYmplY3Rpc2hfd2l0aF9wcmVmaXgoJmIsICJ0byAiKSkKKwkJZGllKF8oIkV4cGVjdGVkICd0bycgY29tbWFuZCwgZ290ICVzIiksIGNvbW1hbmRfYnVmLmJ1Zik7CisJZSA9IGZpbmRfb2JqZWN0KCZiLm9pZCk7CisJYXNzZXJ0KGUpOworCWluc2VydF9tYXJrKG5leHRfbWFyaywgZSk7Cit9CisKIHN0YXRpYyBjaGFyKiBtYWtlX2Zhc3RfaW1wb3J0X3BhdGgoY29uc3QgY2hhciAqcGF0aCkKIHsKIAlpZiAoIXJlbGF0aXZlX21hcmtzX3BhdGhzIHx8IGlzX2Fic29sdXRlX3BhdGgocGF0aCkpCkBAIC0zMzIyLDYgKzMyNzAsOCBAQAogCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgoZmVhdHVyZSwgImV4cG9ydC1tYXJrcz0iLCAmYXJnKSkgewogCQljaGVja191bnNhZmVfZmVhdHVyZShmZWF0dXJlLCBmcm9tX3N0cmVhbSk7CiAJCW9wdGlvbl9leHBvcnRfbWFya3MoYXJnKTsKKwl9IGVsc2UgaWYgKCFzdHJjbXAoZmVhdHVyZSwgImFsaWFzIikpIHsKKwkJOyAvKiBEb24ndCBkaWUgLSB0aGlzIGZlYXR1cmUgaXMgc3VwcG9ydGVkICovCiAJfSBlbHNlIGlmICghc3RyY21wKGZlYXR1cmUsICJnZXQtbWFyayIpKSB7CiAJCTsgLyogRG9uJ3QgZGllIC0gdGhpcyBmZWF0dXJlIGlzIHN1cHBvcnRlZCAqLwogCX0gZWxzZSBpZiAoIXN0cmNtcChmZWF0dXJlLCAiY2F0LWJsb2IiKSkgewpAQCAtMzQ3NiwxOCArMzQyNiwyNCBAQAogCQljb25zdCBjaGFyICp2OwogCQlpZiAoIXN0cmNtcCgiYmxvYiIsIGNvbW1hbmRfYnVmLmJ1ZikpCiAJCQlwYXJzZV9uZXdfYmxvYigpOwotCQllbHNlIGlmIChza2lwX3ByZWZpeChjb21tYW5kX2J1Zi5idWYsICJscyAiLCAmdikpCi0JCQlwYXJzZV9scyh2LCBOVUxMKTsKIAkJZWxzZSBpZiAoc2tpcF9wcmVmaXgoY29tbWFuZF9idWYuYnVmLCAiY29tbWl0ICIsICZ2KSkKIAkJCXBhcnNlX25ld19jb21taXQodik7CiAJCWVsc2UgaWYgKHNraXBfcHJlZml4KGNvbW1hbmRfYnVmLmJ1ZiwgInRhZyAiLCAmdikpCiAJCQlwYXJzZV9uZXdfdGFnKHYpOwogCQllbHNlIGlmIChza2lwX3ByZWZpeChjb21tYW5kX2J1Zi5idWYsICJyZXNldCAiLCAmdikpCiAJCQlwYXJzZV9yZXNldF9icmFuY2godik7CisJCWVsc2UgaWYgKHNraXBfcHJlZml4KGNvbW1hbmRfYnVmLmJ1ZiwgImxzICIsICZ2KSkKKwkJCXBhcnNlX2xzKHYsIE5VTEwpOworCQllbHNlIGlmIChza2lwX3ByZWZpeChjb21tYW5kX2J1Zi5idWYsICJjYXQtYmxvYiAiLCAmdikpCisJCQlwYXJzZV9jYXRfYmxvYih2KTsKKwkJZWxzZSBpZiAoc2tpcF9wcmVmaXgoY29tbWFuZF9idWYuYnVmLCAiZ2V0LW1hcmsgIiwgJnYpKQorCQkJcGFyc2VfZ2V0X21hcmsodik7CiAJCWVsc2UgaWYgKCFzdHJjbXAoImNoZWNrcG9pbnQiLCBjb21tYW5kX2J1Zi5idWYpKQogCQkJcGFyc2VfY2hlY2twb2ludCgpOwogCQllbHNlIGlmICghc3RyY21wKCJkb25lIiwgY29tbWFuZF9idWYuYnVmKSkKIAkJCWJyZWFrOworCQllbHNlIGlmICghc3RyY21wKCJhbGlhcyIsIGNvbW1hbmRfYnVmLmJ1ZikpCisJCQlwYXJzZV9hbGlhcygpOwogCQllbHNlIGlmIChzdGFydHNfd2l0aChjb21tYW5kX2J1Zi5idWYsICJwcm9ncmVzcyAiKSkKIAkJCXBhcnNlX3Byb2dyZXNzKCk7CiAJCWVsc2UgaWYgKHNraXBfcHJlZml4KGNvbW1hbmRfYnVmLmJ1ZiwgImZlYXR1cmUgIiwgJnYpKQpkaWZmIC0tZ2l0IGEvZmV0Y2gtbmVnb3RpYXRvci5jIGIvZmV0Y2gtbmVnb3RpYXRvci5jCmluZGV4IGQ2ZDY4NWMuLjBhMTM1N2QgMTAwNjQ0Ci0tLSBhL2ZldGNoLW5lZ290aWF0b3IuYworKysgYi9mZXRjaC1uZWdvdGlhdG9yLmMKQEAgLTIsMTkgKzIsMjAgQEAKICNpbmNsdWRlICJmZXRjaC1uZWdvdGlhdG9yLmgiCiAjaW5jbHVkZSAibmVnb3RpYXRvci9kZWZhdWx0LmgiCiAjaW5jbHVkZSAibmVnb3RpYXRvci9za2lwcGluZy5oIgorI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKIAotdm9pZCBmZXRjaF9uZWdvdGlhdG9yX2luaXQoc3RydWN0IGZldGNoX25lZ290aWF0b3IgKm5lZ290aWF0b3IsCi0JCQkgICBjb25zdCBjaGFyICphbGdvcml0aG0pCit2b2lkIGZldGNoX25lZ290aWF0b3JfaW5pdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgIHN0cnVjdCBmZXRjaF9uZWdvdGlhdG9yICpuZWdvdGlhdG9yKQogewotCWlmIChhbGdvcml0aG0pIHsKLQkJaWYgKCFzdHJjbXAoYWxnb3JpdGhtLCAic2tpcHBpbmciKSkgewotCQkJc2tpcHBpbmdfbmVnb3RpYXRvcl9pbml0KG5lZ290aWF0b3IpOwotCQkJcmV0dXJuOwotCQl9IGVsc2UgaWYgKCFzdHJjbXAoYWxnb3JpdGhtLCAiZGVmYXVsdCIpKSB7Ci0JCQkvKiBGYWxsIHRocm91Z2ggdG8gZGVmYXVsdCBpbml0aWFsaXphdGlvbiAqLwotCQl9IGVsc2UgewotCQkJZGllKCJ1bmtub3duIGZldGNoIG5lZ290aWF0aW9uIGFsZ29yaXRobSAnJXMnIiwgYWxnb3JpdGhtKTsKLQkJfQorCXByZXBhcmVfcmVwb19zZXR0aW5ncyhyKTsKKwlzd2l0Y2goci0+c2V0dGluZ3MuZmV0Y2hfbmVnb3RpYXRpb25fYWxnb3JpdGhtKSB7CisJY2FzZSBGRVRDSF9ORUdPVElBVElPTl9TS0lQUElORzoKKwkJc2tpcHBpbmdfbmVnb3RpYXRvcl9pbml0KG5lZ290aWF0b3IpOworCQlyZXR1cm47CisKKwljYXNlIEZFVENIX05FR09USUFUSU9OX0RFRkFVTFQ6CisJZGVmYXVsdDoKKwkJZGVmYXVsdF9uZWdvdGlhdG9yX2luaXQobmVnb3RpYXRvcik7CisJCXJldHVybjsKIAl9Ci0JZGVmYXVsdF9uZWdvdGlhdG9yX2luaXQobmVnb3RpYXRvcik7CiB9CmRpZmYgLS1naXQgYS9mZXRjaC1uZWdvdGlhdG9yLmggYi9mZXRjaC1uZWdvdGlhdG9yLmgKaW5kZXggOWUzOTY3Yy4uZWE3ODg2OCAxMDA2NDQKLS0tIGEvZmV0Y2gtbmVnb3RpYXRvci5oCisrKyBiL2ZldGNoLW5lZ290aWF0b3IuaApAQCAtMiw2ICsyLDcgQEAKICNkZWZpbmUgRkVUQ0hfTkVHT1RJQVRPUl9ICiAKIHN0cnVjdCBjb21taXQ7CitzdHJ1Y3QgcmVwb3NpdG9yeTsKIAogLyoKICAqIEFuIG9iamVjdCB0aGF0IHN1cHBsaWVzIHRoZSBpbmZvcm1hdGlvbiBuZWVkZWQgdG8gbmVnb3RpYXRlIHRoZSBjb250ZW50cyBvZgpAQCAtNTIsNyArNTMsNyBAQAogCXZvaWQgKmRhdGE7CiB9OwogCi12b2lkIGZldGNoX25lZ290aWF0b3JfaW5pdChzdHJ1Y3QgZmV0Y2hfbmVnb3RpYXRvciAqbmVnb3RpYXRvciwKLQkJCSAgIGNvbnN0IGNoYXIgKmFsZ29yaXRobSk7Cit2b2lkIGZldGNoX25lZ290aWF0b3JfaW5pdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgIHN0cnVjdCBmZXRjaF9uZWdvdGlhdG9yICpuZWdvdGlhdG9yKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9mZXRjaC1vYmplY3QuYyBiL2ZldGNoLW9iamVjdC5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0MjY2NTQ4Li4wMDAwMDAwCi0tLSBhL2ZldGNoLW9iamVjdC5jCisrKyAvZGV2L251bGwKQEAgLTEsNDAgKzAsMCBAQAotI2luY2x1ZGUgImNhY2hlLmgiCi0jaW5jbHVkZSAicGFja2ZpbGUuaCIKLSNpbmNsdWRlICJwa3QtbGluZS5oIgotI2luY2x1ZGUgInN0cmJ1Zi5oIgotI2luY2x1ZGUgInRyYW5zcG9ydC5oIgotI2luY2x1ZGUgImZldGNoLW9iamVjdC5oIgotCi1zdGF0aWMgdm9pZCBmZXRjaF9yZWZzKGNvbnN0IGNoYXIgKnJlbW90ZV9uYW1lLCBzdHJ1Y3QgcmVmICpyZWYpCi17Ci0Jc3RydWN0IHJlbW90ZSAqcmVtb3RlOwotCXN0cnVjdCB0cmFuc3BvcnQgKnRyYW5zcG9ydDsKLQlpbnQgb3JpZ2luYWxfZmV0Y2hfaWZfbWlzc2luZyA9IGZldGNoX2lmX21pc3Npbmc7Ci0KLQlmZXRjaF9pZl9taXNzaW5nID0gMDsKLQlyZW1vdGUgPSByZW1vdGVfZ2V0KHJlbW90ZV9uYW1lKTsKLQlpZiAoIXJlbW90ZS0+dXJsWzBdKQotCQlkaWUoXygiUmVtb3RlIHdpdGggbm8gVVJMIikpOwotCXRyYW5zcG9ydCA9IHRyYW5zcG9ydF9nZXQocmVtb3RlLCByZW1vdGUtPnVybFswXSk7Ci0KLQl0cmFuc3BvcnRfc2V0X29wdGlvbih0cmFuc3BvcnQsIFRSQU5TX09QVF9GUk9NX1BST01JU09SLCAiMSIpOwotCXRyYW5zcG9ydF9zZXRfb3B0aW9uKHRyYW5zcG9ydCwgVFJBTlNfT1BUX05PX0RFUEVOREVOVFMsICIxIik7Ci0JdHJhbnNwb3J0X2ZldGNoX3JlZnModHJhbnNwb3J0LCByZWYpOwotCWZldGNoX2lmX21pc3NpbmcgPSBvcmlnaW5hbF9mZXRjaF9pZl9taXNzaW5nOwotfQotCi12b2lkIGZldGNoX29iamVjdHMoY29uc3QgY2hhciAqcmVtb3RlX25hbWUsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZHMsCi0JCSAgIGludCBvaWRfbnIpCi17Ci0Jc3RydWN0IHJlZiAqcmVmID0gTlVMTDsKLQlpbnQgaTsKLQotCWZvciAoaSA9IDA7IGkgPCBvaWRfbnI7IGkrKykgewotCQlzdHJ1Y3QgcmVmICpuZXdfcmVmID0gYWxsb2NfcmVmKG9pZF90b19oZXgoJm9pZHNbaV0pKTsKLQkJb2lkY3B5KCZuZXdfcmVmLT5vbGRfb2lkLCAmb2lkc1tpXSk7Ci0JCW5ld19yZWYtPmV4YWN0X29pZCA9IDE7Ci0JCW5ld19yZWYtPm5leHQgPSByZWY7Ci0JCXJlZiA9IG5ld19yZWY7Ci0JfQotCWZldGNoX3JlZnMocmVtb3RlX25hbWUsIHJlZik7Ci19CmRpZmYgLS1naXQgYS9mZXRjaC1vYmplY3QuaCBiL2ZldGNoLW9iamVjdC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNjQ0NGNhLi4wMDAwMDAwCi0tLSBhL2ZldGNoLW9iamVjdC5oCisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi0jaWZuZGVmIEZFVENIX09CSkVDVF9ICi0jZGVmaW5lIEZFVENIX09CSkVDVF9ICi0KLXN0cnVjdCBvYmplY3RfaWQ7Ci0KLXZvaWQgZmV0Y2hfb2JqZWN0cyhjb25zdCBjaGFyICpyZW1vdGVfbmFtZSwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkcywKLQkJICAgaW50IG9pZF9ucik7Ci0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvZmV0Y2gtcGFjay5jIGIvZmV0Y2gtcGFjay5jCmluZGV4IDk2OTEwNDYuLjE3MzRhNTcgMTAwNjQ0Ci0tLSBhL2ZldGNoLXBhY2suYworKysgYi9mZXRjaC1wYWNrLmMKQEAgLTM2LDcgKzM2LDYgQEAKIHN0YXRpYyBpbnQgc2VydmVyX3N1cHBvcnRzX2ZpbHRlcmluZzsKIHN0YXRpYyBzdHJ1Y3QgbG9ja19maWxlIHNoYWxsb3dfbG9jazsKIHN0YXRpYyBjb25zdCBjaGFyICphbHRlcm5hdGVfc2hhbGxvd19maWxlOwotc3RhdGljIGNoYXIgKm5lZ290aWF0aW9uX2FsZ29yaXRobTsKIHN0YXRpYyBzdHJ1Y3Qgc3RyYnVmIGZzY2tfbXNnX3R5cGVzID0gU1RSQlVGX0lOSVQ7CiAKIC8qIFJlbWVtYmVyIHRvIHVwZGF0ZSBvYmplY3QgZmxhZyBhbGxvY2F0aW9uIGluIG9iamVjdC5oICovCkBAIC0xMzUsNTIgKzEzNCw1NCBAQAogCUFDS19yZWFkeQogfTsKIAotc3RhdGljIHZvaWQgY29uc3VtZV9zaGFsbG93X2xpc3Qoc3RydWN0IGZldGNoX3BhY2tfYXJncyAqYXJncywgaW50IGZkKQorc3RhdGljIHZvaWQgY29uc3VtZV9zaGFsbG93X2xpc3Qoc3RydWN0IGZldGNoX3BhY2tfYXJncyAqYXJncywKKwkJCQkgc3RydWN0IHBhY2tldF9yZWFkZXIgKnJlYWRlcikKIHsKIAlpZiAoYXJncy0+c3RhdGVsZXNzX3JwYyAmJiBhcmdzLT5kZWVwZW4pIHsKIAkJLyogSWYgd2Ugc2VudCBhIGRlcHRoIHdlIHdpbGwgZ2V0IGJhY2sgImR1cGxpY2F0ZSIKIAkJICogc2hhbGxvdyBhbmQgdW5zaGFsbG93IGNvbW1hbmRzIGV2ZXJ5IHRpbWUgdGhlcmUKIAkJICogaXMgYSBibG9jayBvZiBoYXZlIGxpbmVzIGV4Y2hhbmdlZC4KIAkJICovCi0JCWNoYXIgKmxpbmU7Ci0JCXdoaWxlICgobGluZSA9IHBhY2tldF9yZWFkX2xpbmUoZmQsIE5VTEwpKSkgewotCQkJaWYgKHN0YXJ0c193aXRoKGxpbmUsICJzaGFsbG93ICIpKQorCQl3aGlsZSAocGFja2V0X3JlYWRlcl9yZWFkKHJlYWRlcikgPT0gUEFDS0VUX1JFQURfTk9STUFMKSB7CisJCQlpZiAoc3RhcnRzX3dpdGgocmVhZGVyLT5saW5lLCAic2hhbGxvdyAiKSkKIAkJCQljb250aW51ZTsKLQkJCWlmIChzdGFydHNfd2l0aChsaW5lLCAidW5zaGFsbG93ICIpKQorCQkJaWYgKHN0YXJ0c193aXRoKHJlYWRlci0+bGluZSwgInVuc2hhbGxvdyAiKSkKIAkJCQljb250aW51ZTsKIAkJCWRpZShfKCJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgc2hhbGxvdyBsaXN0IikpOwogCQl9CisJCWlmIChyZWFkZXItPnN0YXR1cyAhPSBQQUNLRVRfUkVBRF9GTFVTSCkKKwkJCWRpZShfKCJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgYSBmbHVzaCBwYWNrZXQgYWZ0ZXIgc2hhbGxvdyBsaXN0IikpOwogCX0KIH0KIAotc3RhdGljIGVudW0gYWNrX3R5cGUgZ2V0X2FjayhpbnQgZmQsIHN0cnVjdCBvYmplY3RfaWQgKnJlc3VsdF9vaWQpCitzdGF0aWMgZW51bSBhY2tfdHlwZSBnZXRfYWNrKHN0cnVjdCBwYWNrZXRfcmVhZGVyICpyZWFkZXIsCisJCQkgICAgIHN0cnVjdCBvYmplY3RfaWQgKnJlc3VsdF9vaWQpCiB7CiAJaW50IGxlbjsKLQljaGFyICpsaW5lID0gcGFja2V0X3JlYWRfbGluZShmZCwgJmxlbik7CiAJY29uc3QgY2hhciAqYXJnOwogCi0JaWYgKCFsaW5lKQorCWlmIChwYWNrZXRfcmVhZGVyX3JlYWQocmVhZGVyKSAhPSBQQUNLRVRfUkVBRF9OT1JNQUwpCiAJCWRpZShfKCJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290IGEgZmx1c2ggcGFja2V0IikpOwotCWlmICghc3RyY21wKGxpbmUsICJOQUsiKSkKKwlsZW4gPSByZWFkZXItPnBrdGxlbjsKKworCWlmICghc3RyY21wKHJlYWRlci0+bGluZSwgIk5BSyIpKQogCQlyZXR1cm4gTkFLOwotCWlmIChza2lwX3ByZWZpeChsaW5lLCAiQUNLICIsICZhcmcpKSB7Ci0JCWlmICghZ2V0X29pZF9oZXgoYXJnLCByZXN1bHRfb2lkKSkgewotCQkJYXJnICs9IDQwOwotCQkJbGVuIC09IGFyZyAtIGxpbmU7CisJaWYgKHNraXBfcHJlZml4KHJlYWRlci0+bGluZSwgIkFDSyAiLCAmYXJnKSkgeworCQljb25zdCBjaGFyICpwOworCQlpZiAoIXBhcnNlX29pZF9oZXgoYXJnLCByZXN1bHRfb2lkLCAmcCkpIHsKKwkJCWxlbiAtPSBwIC0gcmVhZGVyLT5saW5lOwogCQkJaWYgKGxlbiA8IDEpCiAJCQkJcmV0dXJuIEFDSzsKLQkJCWlmIChzdHJzdHIoYXJnLCAiY29udGludWUiKSkKKwkJCWlmIChzdHJzdHIocCwgImNvbnRpbnVlIikpCiAJCQkJcmV0dXJuIEFDS19jb250aW51ZTsKLQkJCWlmIChzdHJzdHIoYXJnLCAiY29tbW9uIikpCisJCQlpZiAoc3Ryc3RyKHAsICJjb21tb24iKSkKIAkJCQlyZXR1cm4gQUNLX2NvbW1vbjsKLQkJCWlmIChzdHJzdHIoYXJnLCAicmVhZHkiKSkKKwkJCWlmIChzdHJzdHIocCwgInJlYWR5IikpCiAJCQkJcmV0dXJuIEFDS19yZWFkeTsKIAkJCXJldHVybiBBQ0s7CiAJCX0KIAl9Ci0JaWYgKHNraXBfcHJlZml4KGxpbmUsICJFUlIgIiwgJmFyZykpCi0JCWRpZShfKCJyZW1vdGUgZXJyb3I6ICVzIiksIGFyZyk7Ci0JZGllKF8oImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgJyVzJyIpLCBsaW5lKTsKKwlkaWUoXygiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCAnJXMnIiksIHJlYWRlci0+bGluZSk7CiB9CiAKIHN0YXRpYyB2b2lkIHNlbmRfcmVxdWVzdChzdHJ1Y3QgZmV0Y2hfcGFja19hcmdzICphcmdzLApAQCAtMTg5LDggKzE5MCwxMCBAQAogCWlmIChhcmdzLT5zdGF0ZWxlc3NfcnBjKSB7CiAJCXNlbmRfc2lkZWJhbmQoZmQsIC0xLCBidWYtPmJ1ZiwgYnVmLT5sZW4sIExBUkdFX1BBQ0tFVF9NQVgpOwogCQlwYWNrZXRfZmx1c2goZmQpOwotCX0gZWxzZQotCQl3cml0ZV9vcl9kaWUoZmQsIGJ1Zi0+YnVmLCBidWYtPmxlbik7CisJfSBlbHNlIHsKKwkJaWYgKHdyaXRlX2luX2Z1bGwoZmQsIGJ1Zi0+YnVmLCBidWYtPmxlbikgPCAwKQorCQkJZGllX2Vycm5vKF8oInVuYWJsZSB0byB3cml0ZSB0byByZW1vdGUiKSk7CisJfQogfQogCiBzdGF0aWMgdm9pZCBpbnNlcnRfb25lX2FsdGVybmF0ZV9vYmplY3Qoc3RydWN0IGZldGNoX25lZ290aWF0b3IgKm5lZ290aWF0b3IsCkBAIC0yNDgsMTAgKzI1MSwxNSBAQAogCWludCBnb3RfcmVhZHkgPSAwOwogCXN0cnVjdCBzdHJidWYgcmVxX2J1ZiA9IFNUUkJVRl9JTklUOwogCXNpemVfdCBzdGF0ZV9sZW4gPSAwOworCXN0cnVjdCBwYWNrZXRfcmVhZGVyIHJlYWRlcjsKIAogCWlmIChhcmdzLT5zdGF0ZWxlc3NfcnBjICYmIG11bHRpX2FjayA9PSAxKQogCQlkaWUoXygiLS1zdGF0ZWxlc3MtcnBjIHJlcXVpcmVzIG11bHRpX2Fja19kZXRhaWxlZCIpKTsKIAorCXBhY2tldF9yZWFkZXJfaW5pdCgmcmVhZGVyLCBmZFswXSwgTlVMTCwgMCwKKwkJCSAgIFBBQ0tFVF9SRUFEX0NIT01QX05FV0xJTkUgfAorCQkJICAgUEFDS0VUX1JFQURfRElFX09OX0VSUl9QQUNLRVQpOworCiAJaWYgKCFhcmdzLT5ub19kZXBlbmRlbnRzKSB7CiAJCW1hcmtfdGlwcyhuZWdvdGlhdG9yLCBhcmdzLT5uZWdvdGlhdGlvbl90aXBzKTsKIAkJZm9yX2VhY2hfY2FjaGVkX2FsdGVybmF0ZShuZWdvdGlhdG9yLCBpbnNlcnRfb25lX2FsdGVybmF0ZV9vYmplY3QpOwpAQCAtMjc3LDcgKzI4NSw3IEBACiAJCSAqIHdlIGNhbm5vdCB0cnVzdCB0aGUgb2JqZWN0IGZsYWdzKS4KIAkJICovCiAJCWlmICghYXJncy0+bm9fZGVwZW5kZW50cyAmJgotCQkgICAgKChvID0gbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgcmVtb3RlLT5oYXNoKSkgIT0gTlVMTCkgJiYKKwkJICAgICgobyA9IGxvb2t1cF9vYmplY3QodGhlX3JlcG9zaXRvcnksIHJlbW90ZSkpICE9IE5VTEwpICYmCiAJCQkJKG8tPmZsYWdzICYgQ09NUExFVEUpKSB7CiAJCQljb250aW51ZTsKIAkJfQpAQCAtMzI5LDM4ICszMzcsMzkgQEAKIAkJCXBhY2tldF9idWZfd3JpdGUoJnJlcV9idWYsICJkZWVwZW4tbm90ICVzIiwgcy0+c3RyaW5nKTsKIAkJfQogCX0KLQlpZiAoc2VydmVyX3N1cHBvcnRzX2ZpbHRlcmluZyAmJiBhcmdzLT5maWx0ZXJfb3B0aW9ucy5jaG9pY2UpCi0JCXBhY2tldF9idWZfd3JpdGUoJnJlcV9idWYsICJmaWx0ZXIgJXMiLAotCQkJCSBhcmdzLT5maWx0ZXJfb3B0aW9ucy5maWx0ZXJfc3BlYyk7CisJaWYgKHNlcnZlcl9zdXBwb3J0c19maWx0ZXJpbmcgJiYgYXJncy0+ZmlsdGVyX29wdGlvbnMuY2hvaWNlKSB7CisJCWNvbnN0IGNoYXIgKnNwZWMgPQorCQkJZXhwYW5kX2xpc3Rfb2JqZWN0c19maWx0ZXJfc3BlYygmYXJncy0+ZmlsdGVyX29wdGlvbnMpOworCQlwYWNrZXRfYnVmX3dyaXRlKCZyZXFfYnVmLCAiZmlsdGVyICVzIiwgc3BlYyk7CisJfQogCXBhY2tldF9idWZfZmx1c2goJnJlcV9idWYpOwogCXN0YXRlX2xlbiA9IHJlcV9idWYubGVuOwogCiAJaWYgKGFyZ3MtPmRlZXBlbikgewotCQljaGFyICpsaW5lOwogCQljb25zdCBjaGFyICphcmc7CiAJCXN0cnVjdCBvYmplY3RfaWQgb2lkOwogCiAJCXNlbmRfcmVxdWVzdChhcmdzLCBmZFsxXSwgJnJlcV9idWYpOwotCQl3aGlsZSAoKGxpbmUgPSBwYWNrZXRfcmVhZF9saW5lKGZkWzBdLCBOVUxMKSkpIHsKLQkJCWlmIChza2lwX3ByZWZpeChsaW5lLCAic2hhbGxvdyAiLCAmYXJnKSkgeworCQl3aGlsZSAocGFja2V0X3JlYWRlcl9yZWFkKCZyZWFkZXIpID09IFBBQ0tFVF9SRUFEX05PUk1BTCkgeworCQkJaWYgKHNraXBfcHJlZml4KHJlYWRlci5saW5lLCAic2hhbGxvdyAiLCAmYXJnKSkgewogCQkJCWlmIChnZXRfb2lkX2hleChhcmcsICZvaWQpKQotCQkJCQlkaWUoXygiaW52YWxpZCBzaGFsbG93IGxpbmU6ICVzIiksIGxpbmUpOworCQkJCQlkaWUoXygiaW52YWxpZCBzaGFsbG93IGxpbmU6ICVzIiksIHJlYWRlci5saW5lKTsKIAkJCQlyZWdpc3Rlcl9zaGFsbG93KHRoZV9yZXBvc2l0b3J5LCAmb2lkKTsKIAkJCQljb250aW51ZTsKIAkJCX0KLQkJCWlmIChza2lwX3ByZWZpeChsaW5lLCAidW5zaGFsbG93ICIsICZhcmcpKSB7CisJCQlpZiAoc2tpcF9wcmVmaXgocmVhZGVyLmxpbmUsICJ1bnNoYWxsb3cgIiwgJmFyZykpIHsKIAkJCQlpZiAoZ2V0X29pZF9oZXgoYXJnLCAmb2lkKSkKLQkJCQkJZGllKF8oImludmFsaWQgdW5zaGFsbG93IGxpbmU6ICVzIiksIGxpbmUpOwotCQkJCWlmICghbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgb2lkLmhhc2gpKQotCQkJCQlkaWUoXygib2JqZWN0IG5vdCBmb3VuZDogJXMiKSwgbGluZSk7CisJCQkJCWRpZShfKCJpbnZhbGlkIHVuc2hhbGxvdyBsaW5lOiAlcyIpLCByZWFkZXIubGluZSk7CisJCQkJaWYgKCFsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCAmb2lkKSkKKwkJCQkJZGllKF8oIm9iamVjdCBub3QgZm91bmQ6ICVzIiksIHJlYWRlci5saW5lKTsKIAkJCQkvKiBtYWtlIHN1cmUgdGhhdCBpdCBpcyBwYXJzZWQgYXMgc2hhbGxvdyAqLwogCQkJCWlmICghcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCAmb2lkKSkKLQkJCQkJZGllKF8oImVycm9yIGluIG9iamVjdDogJXMiKSwgbGluZSk7CisJCQkJCWRpZShfKCJlcnJvciBpbiBvYmplY3Q6ICVzIiksIHJlYWRlci5saW5lKTsKIAkJCQlpZiAodW5yZWdpc3Rlcl9zaGFsbG93KCZvaWQpKQotCQkJCQlkaWUoXygibm8gc2hhbGxvdyBmb3VuZDogJXMiKSwgbGluZSk7CisJCQkJCWRpZShfKCJubyBzaGFsbG93IGZvdW5kOiAlcyIpLCByZWFkZXIubGluZSk7CiAJCQkJY29udGludWU7CiAJCQl9Ci0JCQlkaWUoXygiZXhwZWN0ZWQgc2hhbGxvdy91bnNoYWxsb3csIGdvdCAlcyIpLCBsaW5lKTsKKwkJCWRpZShfKCJleHBlY3RlZCBzaGFsbG93L3Vuc2hhbGxvdywgZ290ICVzIiksIHJlYWRlci5saW5lKTsKIAkJfQogCX0gZWxzZSBpZiAoIWFyZ3MtPnN0YXRlbGVzc19ycGMpCiAJCXNlbmRfcmVxdWVzdChhcmdzLCBmZFsxXSwgJnJlcV9idWYpOwpAQCAtMzczLDYgKzM4Miw3IEBACiAJCXN0YXRlX2xlbiA9IDA7CiAJfQogCisJdHJhY2UyX3JlZ2lvbl9lbnRlcigiZmV0Y2gtcGFjayIsICJuZWdvdGlhdGlvbl92MF92MSIsIHRoZV9yZXBvc2l0b3J5KTsKIAlmbHVzaGVzID0gMDsKIAlyZXR2YWwgPSAtMTsKIAlpZiAoYXJncy0+bm9fZGVwZW5kZW50cykKQEAgLTM5Nyw5ICs0MDcsOSBAQAogCQkJaWYgKCFhcmdzLT5zdGF0ZWxlc3NfcnBjICYmIGNvdW50ID09IElOSVRJQUxfRkxVU0gpCiAJCQkJY29udGludWU7CiAKLQkJCWNvbnN1bWVfc2hhbGxvd19saXN0KGFyZ3MsIGZkWzBdKTsKKwkJCWNvbnN1bWVfc2hhbGxvd19saXN0KGFyZ3MsICZyZWFkZXIpOwogCQkJZG8gewotCQkJCWFjayA9IGdldF9hY2soZmRbMF0sIHJlc3VsdF9vaWQpOworCQkJCWFjayA9IGdldF9hY2soJnJlYWRlciwgcmVzdWx0X29pZCk7CiAJCQkJaWYgKGFjaykKIAkJCQkJcHJpbnRfdmVyYm9zZShhcmdzLCBfKCJnb3QgJXMgJWQgJXMiKSwgImFjayIsCiAJCQkJCQkgICAgICBhY2ssIG9pZF90b19oZXgocmVzdWx0X29pZCkpOwpAQCAtNDU3LDYgKzQ2Nyw3IEBACiAJCX0KIAl9CiBkb25lOgorCXRyYWNlMl9yZWdpb25fbGVhdmUoImZldGNoLXBhY2siLCAibmVnb3RpYXRpb25fdjBfdjEiLCB0aGVfcmVwb3NpdG9yeSk7CiAJaWYgKCFnb3RfcmVhZHkgfHwgIW5vX2RvbmUpIHsKIAkJcGFja2V0X2J1Zl93cml0ZSgmcmVxX2J1ZiwgImRvbmVcbiIpOwogCQlzZW5kX3JlcXVlc3QoYXJncywgZmRbMV0sICZyZXFfYnVmKTsKQEAgLTQ2OSw5ICs0ODAsOSBAQAogCXN0cmJ1Zl9yZWxlYXNlKCZyZXFfYnVmKTsKIAogCWlmICghZ290X3JlYWR5IHx8ICFub19kb25lKQotCQljb25zdW1lX3NoYWxsb3dfbGlzdChhcmdzLCBmZFswXSk7CisJCWNvbnN1bWVfc2hhbGxvd19saXN0KGFyZ3MsICZyZWFkZXIpOwogCXdoaWxlIChmbHVzaGVzIHx8IG11bHRpX2FjaykgewotCQlpbnQgYWNrID0gZ2V0X2FjayhmZFswXSwgcmVzdWx0X29pZCk7CisJCWludCBhY2sgPSBnZXRfYWNrKCZyZWFkZXIsIHJlc3VsdF9vaWQpOwogCQlpZiAoYWNrKSB7CiAJCQlwcmludF92ZXJib3NlKGFyZ3MsIF8oImdvdCAlcyAoJWQpICVzIiksICJhY2siLAogCQkJCSAgICAgIGFjaywgb2lkX3RvX2hleChyZXN1bHRfb2lkKSk7CkBAIC01NjAsOSArNTcxLDE0IEBACiAJCW5leHQgPSByZWYtPm5leHQ7CiAKIAkJaWYgKHN0YXJ0c193aXRoKHJlZi0+bmFtZSwgInJlZnMvIikgJiYKLQkJICAgIGNoZWNrX3JlZm5hbWVfZm9ybWF0KHJlZi0+bmFtZSwgMCkpCi0JCQk7IC8qIHRyYXNoICovCi0JCWVsc2UgeworCQkgICAgY2hlY2tfcmVmbmFtZV9mb3JtYXQocmVmLT5uYW1lLCAwKSkgeworCQkJLyoKKwkJCSAqIHRyYXNoIG9yIGEgcGVlbGVkIHZhbHVlOyBkbyBub3QgZXZlbiBhZGQgaXQgdG8KKwkJCSAqIHVubWF0Y2hlZCBsaXN0CisJCQkgKi8KKwkJCWZyZWVfb25lX3JlZihyZWYpOworCQkJY29udGludWU7CisJCX0gZWxzZSB7CiAJCQl3aGlsZSAoaSA8IG5yX3NvdWdodCkgewogCQkJCWludCBjbXAgPSBzdHJjbXAocmVmLT5uYW1lLCBzb3VnaHRbaV0tPm5hbWUpOwogCQkJCWlmIChjbXAgPCAwKQpAQCAtNjE3LDEwICs2MzMsNyBAQAogCX0KIAogCW9pZHNldF9jbGVhcigmdGlwX29pZHMpOwotCWZvciAocmVmID0gdW5tYXRjaGVkOyByZWY7IHJlZiA9IG5leHQpIHsKLQkJbmV4dCA9IHJlZi0+bmV4dDsKLQkJZnJlZShyZWYpOwotCX0KKwlmcmVlX3JlZnModW5tYXRjaGVkKTsKIAogCSpyZWZzID0gbmV3bGlzdDsKIH0KQEAgLTYzNywyMyArNjUwLDYgQEAKIH07CiAKIC8qCi0gKiAgSWYgdGhlIG51bWJlciBvZiByZWZzIGlzIG5vdCBsYXJnZXIgdGhhbiB0aGUgbnVtYmVyIG9mIGxvb3NlIG9iamVjdHMsCi0gKiAgdGhpcyBmdW5jdGlvbiBzdG9wcyBpbnNlcnRpbmcuCi0gKi8KLXN0YXRpYyBpbnQgYWRkX2xvb3NlX29iamVjdHNfdG9fc2V0KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKLQkJCQkgICAgY29uc3QgY2hhciAqcGF0aCwKLQkJCQkgICAgdm9pZCAqZGF0YSkKLXsKLQlzdHJ1Y3QgbG9vc2Vfb2JqZWN0X2l0ZXIgKml0ZXIgPSBkYXRhOwotCW9pZHNldF9pbnNlcnQoaXRlci0+bG9vc2Vfb2JqZWN0X3NldCwgb2lkKTsKLQlpZiAoaXRlci0+cmVmcyA9PSBOVUxMKQotCQlyZXR1cm4gMTsKLQotCWl0ZXItPnJlZnMgPSBpdGVyLT5yZWZzLT5uZXh0OwotCXJldHVybiAwOwotfQotCi0vKgogICogTWFyayByZWNlbnQgY29tbWl0cyBhdmFpbGFibGUgbG9jYWxseSBhbmQgcmVhY2hhYmxlIGZyb20gYSBsb2NhbCByZWYgYXMKICAqIENPTVBMRVRFLiBJZiBhcmdzLT5ub19kZXBlbmRlbnRzIGlzIGZhbHNlLCBhbHNvIG1hcmsgQ09NUExFVEUgcmVtb3RlIHJlZnMgYXMKICAqIENPTU1PTl9SRUYgKG90aGVyd2lzZSwgd2UgYXJlIG5vdCBwbGFubmluZyB0byBwYXJ0aWNpcGF0ZSBpbiBuZWdvdGlhdGlvbiwgYW5kCkBAIC02NzAsMzYgKzY2NiwyMyBAQAogCXN0cnVjdCByZWYgKnJlZjsKIAlpbnQgb2xkX3NhdmVfY29tbWl0X2J1ZmZlciA9IHNhdmVfY29tbWl0X2J1ZmZlcjsKIAl0aW1lc3RhbXBfdCBjdXRvZmYgPSAwOwotCXN0cnVjdCBvaWRzZXQgbG9vc2Vfb2lkX3NldCA9IE9JRFNFVF9JTklUOwotCWludCB1c2Vfb2lkc2V0ID0gMDsKLQlzdHJ1Y3QgbG9vc2Vfb2JqZWN0X2l0ZXIgaXRlciA9IHsmbG9vc2Vfb2lkX3NldCwgKnJlZnN9OwotCi0JLyogRW51bWVyYXRlIGFsbCBsb29zZSBvYmplY3RzIG9yIGtub3cgcmVmcyBhcmUgbm90IHNvIG1hbnkuICovCi0JdXNlX29pZHNldCA9ICFmb3JfZWFjaF9sb29zZV9vYmplY3QoYWRkX2xvb3NlX29iamVjdHNfdG9fc2V0LAotCQkJCQkgICAgJml0ZXIsIDApOwogCiAJc2F2ZV9jb21taXRfYnVmZmVyID0gMDsKIAorCXRyYWNlMl9yZWdpb25fZW50ZXIoImZldGNoLXBhY2siLCAicGFyc2VfcmVtb3RlX3JlZnNfYW5kX2ZpbmRfY3V0b2ZmIiwgTlVMTCk7CiAJZm9yIChyZWYgPSAqcmVmczsgcmVmOyByZWYgPSByZWYtPm5leHQpIHsKIAkJc3RydWN0IG9iamVjdCAqbzsKLQkJdW5zaWduZWQgaW50IGZsYWdzID0gT0JKRUNUX0lORk9fUVVJQ0s7CiAKLQkJaWYgKHVzZV9vaWRzZXQgJiYKLQkJICAgICFvaWRzZXRfY29udGFpbnMoJmxvb3NlX29pZF9zZXQsICZyZWYtPm9sZF9vaWQpKSB7Ci0JCQkvKgotCQkJICogSSBrbm93IHRoaXMgZG9lcyBub3QgZXhpc3QgaW4gdGhlIGxvb3NlIGZvcm0sCi0JCQkgKiBzbyBjaGVjayBpZiBpdCBleGlzdHMgaW4gYSBub24tbG9vc2UgZm9ybS4KLQkJCSAqLwotCQkJZmxhZ3MgfD0gT0JKRUNUX0lORk9fSUdOT1JFX0xPT1NFOwotCQl9Ci0KLQkJaWYgKCFoYXNfb2JqZWN0X2ZpbGVfd2l0aF9mbGFncygmcmVmLT5vbGRfb2lkLCBmbGFncykpCisJCWlmICghaGFzX29iamVjdF9maWxlX3dpdGhfZmxhZ3MoJnJlZi0+b2xkX29pZCwKKwkJCQkJCU9CSkVDVF9JTkZPX1FVSUNLIHwKKwkJCQkJCQlPQkpFQ1RfSU5GT19TS0lQX0ZFVENIX09CSkVDVCkpCiAJCQljb250aW51ZTsKIAkJbyA9IHBhcnNlX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgJnJlZi0+b2xkX29pZCk7CiAJCWlmICghbykKIAkJCWNvbnRpbnVlOwogCi0JCS8qIFdlIGFscmVhZHkgaGF2ZSBpdCAtLSB3aGljaCBtYXkgbWVhbiB0aGF0IHdlIHdlcmUKKwkJLyoKKwkJICogV2UgYWxyZWFkeSBoYXZlIGl0IC0tIHdoaWNoIG1heSBtZWFuIHRoYXQgd2Ugd2VyZQogCQkgKiBpbiBzeW5jIHdpdGggdGhlIG90aGVyIHNpZGUgYXQgc29tZSB0aW1lIGFmdGVyCiAJCSAqIHRoYXQgKGl0IGlzIE9LIGlmIHdlIGd1ZXNzIHdyb25nIGhlcmUpLgogCQkgKi8KQEAgLTcwOSw5ICs2OTIsMTMgQEAKIAkJCQljdXRvZmYgPSBjb21taXQtPmRhdGU7CiAJCX0KIAl9CisJdHJhY2UyX3JlZ2lvbl9sZWF2ZSgiZmV0Y2gtcGFjayIsICJwYXJzZV9yZW1vdGVfcmVmc19hbmRfZmluZF9jdXRvZmYiLCBOVUxMKTsKIAotCW9pZHNldF9jbGVhcigmbG9vc2Vfb2lkX3NldCk7Ci0KKwkvKgorCSAqIFRoaXMgYmxvY2sgbWFya3MgYWxsIGxvY2FsIHJlZnMgYXMgQ09NUExFVEUsIGFuZCB0aGVuIHJlY3Vyc2l2ZWx5IG1hcmtzIGFsbAorCSAqIHBhcmVudHMgb2YgdGhvc2UgcmVmcyBhcyBDT01QTEVURS4KKwkgKi8KKwl0cmFjZTJfcmVnaW9uX2VudGVyKCJmZXRjaC1wYWNrIiwgIm1hcmtfY29tcGxldGVfbG9jYWxfcmVmcyIsIE5VTEwpOwogCWlmICghYXJncy0+ZGVlcGVuKSB7CiAJCWZvcl9lYWNoX3JlZihtYXJrX2NvbXBsZXRlX29pZCwgTlVMTCk7CiAJCWZvcl9lYWNoX2NhY2hlZF9hbHRlcm5hdGUoTlVMTCwgbWFya19hbHRlcm5hdGVfY29tcGxldGUpOwpAQCAtNzE5LDE1ICs3MDYsMTcgQEAKIAkJaWYgKGN1dG9mZikKIAkJCW1hcmtfcmVjZW50X2NvbXBsZXRlX2NvbW1pdHMoYXJncywgY3V0b2ZmKTsKIAl9CisJdHJhY2UyX3JlZ2lvbl9sZWF2ZSgiZmV0Y2gtcGFjayIsICJtYXJrX2NvbXBsZXRlX2xvY2FsX3JlZnMiLCBOVUxMKTsKIAogCS8qCiAJICogTWFyayBhbGwgY29tcGxldGUgcmVtb3RlIHJlZnMgYXMgY29tbW9uIHJlZnMuCiAJICogRG9uJ3QgbWFyayB0aGVtIGNvbW1vbiB5ZXQ7IHRoZSBzZXJ2ZXIgaGFzIHRvIGJlIHRvbGQgc28gZmlyc3QuCiAJICovCisJdHJhY2UyX3JlZ2lvbl9lbnRlcigiZmV0Y2gtcGFjayIsICJtYXJrX2NvbW1vbl9yZW1vdGVfcmVmcyIsIE5VTEwpOwogCWZvciAocmVmID0gKnJlZnM7IHJlZjsgcmVmID0gcmVmLT5uZXh0KSB7CiAJCXN0cnVjdCBvYmplY3QgKm8gPSBkZXJlZl90YWcodGhlX3JlcG9zaXRvcnksCiAJCQkJCSAgICAgbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwKLQkJCQkJICAgICByZWYtPm9sZF9vaWQuaGFzaCksCisJCQkJCSAgICAgJnJlZi0+b2xkX29pZCksCiAJCQkJCSAgICAgTlVMTCwgMCk7CiAKIAkJaWYgKCFvIHx8IG8tPnR5cGUgIT0gT0JKX0NPTU1JVCB8fCAhKG8tPmZsYWdzICYgQ09NUExFVEUpKQpAQCAtNzM2LDYgKzcyNSw3IEBACiAJCW5lZ290aWF0b3ItPmtub3duX2NvbW1vbihuZWdvdGlhdG9yLAogCQkJCQkgKHN0cnVjdCBjb21taXQgKilvKTsKIAl9CisJdHJhY2UyX3JlZ2lvbl9sZWF2ZSgiZmV0Y2gtcGFjayIsICJtYXJrX2NvbW1vbl9yZW1vdGVfcmVmcyIsIE5VTEwpOwogCiAJc2F2ZV9jb21taXRfYnVmZmVyID0gb2xkX3NhdmVfY29tbWl0X2J1ZmZlcjsKIH0KQEAgLTc1NCw3ICs3NDQsNyBAQAogCQljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpyZW1vdGUgPSAmcmVmLT5vbGRfb2lkOwogCQlzdHJ1Y3Qgb2JqZWN0ICpvOwogCi0JCW8gPSBsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCByZW1vdGUtPmhhc2gpOworCQlvID0gbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgcmVtb3RlKTsKIAkJaWYgKCFvIHx8ICEoby0+ZmxhZ3MgJiBDT01QTEVURSkpIHsKIAkJCXJldHZhbCA9IDA7CiAJCQlwcmludF92ZXJib3NlKGFyZ3MsICJ3YW50ICVzICglcykiLCBvaWRfdG9faGV4KHJlbW90ZSksCkBAIC03NzgsOCArNzY4LDMzIEBACiAJcmV0dXJuIHJldDsKIH0KIAorc3RhdGljIHZvaWQgd3JpdGVfcHJvbWlzb3JfZmlsZShjb25zdCBjaGFyICprZWVwX25hbWUsCisJCQkJc3RydWN0IHJlZiAqKnNvdWdodCwgaW50IG5yX3NvdWdodCkKK3sKKwlzdHJ1Y3Qgc3RyYnVmIHByb21pc29yX25hbWUgPSBTVFJCVUZfSU5JVDsKKwlpbnQgc3VmZml4X3N0cmlwcGVkOworCUZJTEUgKm91dHB1dDsKKwlpbnQgaTsKKworCXN0cmJ1Zl9hZGRzdHIoJnByb21pc29yX25hbWUsIGtlZXBfbmFtZSk7CisJc3VmZml4X3N0cmlwcGVkID0gc3RyYnVmX3N0cmlwX3N1ZmZpeCgmcHJvbWlzb3JfbmFtZSwgIi5rZWVwIik7CisJaWYgKCFzdWZmaXhfc3RyaXBwZWQpCisJCUJVRygibmFtZSBvZiBwYWNrIGxvY2tmaWxlIHNob3VsZCBlbmQgd2l0aCAua2VlcCAod2FzICclcycpIiwKKwkJICAgIGtlZXBfbmFtZSk7CisJc3RyYnVmX2FkZHN0cigmcHJvbWlzb3JfbmFtZSwgIi5wcm9taXNvciIpOworCisJb3V0cHV0ID0geGZvcGVuKHByb21pc29yX25hbWUuYnVmLCAidyIpOworCWZvciAoaSA9IDA7IGkgPCBucl9zb3VnaHQ7IGkrKykKKwkJZnByaW50ZihvdXRwdXQsICIlcyAlc1xuIiwgb2lkX3RvX2hleCgmc291Z2h0W2ldLT5vbGRfb2lkKSwKKwkJCXNvdWdodFtpXS0+bmFtZSk7CisJZmNsb3NlKG91dHB1dCk7CisKKwlzdHJidWZfcmVsZWFzZSgmcHJvbWlzb3JfbmFtZSk7Cit9CisKIHN0YXRpYyBpbnQgZ2V0X3BhY2soc3RydWN0IGZldGNoX3BhY2tfYXJncyAqYXJncywKLQkJICAgIGludCB4ZFsyXSwgY2hhciAqKnBhY2tfbG9ja2ZpbGUpCisJCSAgICBpbnQgeGRbMl0sIGNoYXIgKipwYWNrX2xvY2tmaWxlLAorCQkgICAgc3RydWN0IHJlZiAqKnNvdWdodCwgaW50IG5yX3NvdWdodCkKIHsKIAlzdHJ1Y3QgYXN5bmMgZGVtdXg7CiAJaW50IGRvX2tlZXAgPSBhcmdzLT5rZWVwX3BhY2s7CkBAIC04NDEsNyArODU2LDEzIEBACiAJCX0KIAkJaWYgKGFyZ3MtPmNoZWNrX3NlbGZfY29udGFpbmVkX2FuZF9jb25uZWN0ZWQpCiAJCQlhcmd2X2FycmF5X3B1c2goJmNtZC5hcmdzLCAiLS1jaGVjay1zZWxmLWNvbnRhaW5lZC1hbmQtY29ubmVjdGVkIik7Ci0JCWlmIChhcmdzLT5mcm9tX3Byb21pc29yKQorCQkvKgorCQkgKiBJZiB3ZSdyZSBvYnRhaW5pbmcgdGhlIGZpbGVuYW1lIG9mIGEgbG9ja2ZpbGUsIHdlJ2xsIHVzZQorCQkgKiB0aGF0IGZpbGVuYW1lIHRvIHdyaXRlIGEgLnByb21pc29yIGZpbGUgd2l0aCBtb3JlCisJCSAqIGluZm9ybWF0aW9uIGJlbG93LiBJZiBub3QsIHdlIG5lZWQgaW5kZXgtcGFjayB0byBkbyBpdCBmb3IKKwkJICogdXMuCisJCSAqLworCQlpZiAoIShkb19rZWVwICYmIHBhY2tfbG9ja2ZpbGUpICYmIGFyZ3MtPmZyb21fcHJvbWlzb3IpCiAJCQlhcmd2X2FycmF5X3B1c2goJmNtZC5hcmdzLCAiLS1wcm9taXNvciIpOwogCX0KIAllbHNlIHsKQEAgLTg5NSw2ICs5MTYsMTQgQEAKIAkJZGllKF8oIiVzIGZhaWxlZCIpLCBjbWRfbmFtZSk7CiAJaWYgKHVzZV9zaWRlYmFuZCAmJiBmaW5pc2hfYXN5bmMoJmRlbXV4KSkKIAkJZGllKF8oImVycm9yIGluIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiKSk7CisKKwkvKgorCSAqIE5vdyB0aGF0IGluZGV4LXBhY2sgaGFzIHN1Y2NlZWRlZCwgd3JpdGUgdGhlIHByb21pc29yIGZpbGUgdXNpbmcgdGhlCisJICogb2J0YWluZWQgLmtlZXAgZmlsZW5hbWUgaWYgbmVjZXNzYXJ5CisJICovCisJaWYgKGRvX2tlZXAgJiYgcGFja19sb2NrZmlsZSAmJiBhcmdzLT5mcm9tX3Byb21pc29yKQorCQl3cml0ZV9wcm9taXNvcl9maWxlKCpwYWNrX2xvY2tmaWxlLCBzb3VnaHQsIG5yX3NvdWdodCk7CisKIAlyZXR1cm4gMDsKIH0KIApAQCAtOTEyLDg2ICs5NDEsMTA3IEBACiAJCQkJIHN0cnVjdCBzaGFsbG93X2luZm8gKnNpLAogCQkJCSBjaGFyICoqcGFja19sb2NrZmlsZSkKIHsKKwlzdHJ1Y3QgcmVwb3NpdG9yeSAqciA9IHRoZV9yZXBvc2l0b3J5OwogCXN0cnVjdCByZWYgKnJlZiA9IGNvcHlfcmVmX2xpc3Qob3JpZ19yZWYpOwogCXN0cnVjdCBvYmplY3RfaWQgb2lkOwogCWNvbnN0IGNoYXIgKmFnZW50X2ZlYXR1cmU7CiAJaW50IGFnZW50X2xlbjsKLQlzdHJ1Y3QgZmV0Y2hfbmVnb3RpYXRvciBuZWdvdGlhdG9yOwotCWZldGNoX25lZ290aWF0b3JfaW5pdCgmbmVnb3RpYXRvciwgbmVnb3RpYXRpb25fYWxnb3JpdGhtKTsKKwlzdHJ1Y3QgZmV0Y2hfbmVnb3RpYXRvciBuZWdvdGlhdG9yX2FsbG9jOworCXN0cnVjdCBmZXRjaF9uZWdvdGlhdG9yICpuZWdvdGlhdG9yOworCisJaWYgKGFyZ3MtPm5vX2RlcGVuZGVudHMpIHsKKwkJbmVnb3RpYXRvciA9IE5VTEw7CisJfSBlbHNlIHsKKwkJbmVnb3RpYXRvciA9ICZuZWdvdGlhdG9yX2FsbG9jOworCQlmZXRjaF9uZWdvdGlhdG9yX2luaXQociwgbmVnb3RpYXRvcik7CisJfQogCiAJc29ydF9yZWZfbGlzdCgmcmVmLCByZWZfY29tcGFyZV9uYW1lKTsKIAlRU09SVChzb3VnaHQsIG5yX3NvdWdodCwgY21wX3JlZl9ieV9uYW1lKTsKIAotCWlmICgoYXJncy0+ZGVwdGggPiAwIHx8IGlzX3JlcG9zaXRvcnlfc2hhbGxvdyh0aGVfcmVwb3NpdG9yeSkpICYmICFzZXJ2ZXJfc3VwcG9ydHMoInNoYWxsb3ciKSkKLQkJZGllKF8oIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2xpZW50cyIpKTsKLQlpZiAoYXJncy0+ZGVwdGggPiAwIHx8IGFyZ3MtPmRlZXBlbl9zaW5jZSB8fCBhcmdzLT5kZWVwZW5fbm90KQotCQlhcmdzLT5kZWVwZW4gPSAxOwotCWlmIChzZXJ2ZXJfc3VwcG9ydHMoIm11bHRpX2Fja19kZXRhaWxlZCIpKSB7Ci0JCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzIG11bHRpX2Fja19kZXRhaWxlZCIpKTsKLQkJbXVsdGlfYWNrID0gMjsKLQkJaWYgKHNlcnZlcl9zdXBwb3J0cygibm8tZG9uZSIpKSB7Ci0JCQlwcmludF92ZXJib3NlKGFyZ3MsIF8oIlNlcnZlciBzdXBwb3J0cyBuby1kb25lIikpOwotCQkJaWYgKGFyZ3MtPnN0YXRlbGVzc19ycGMpCi0JCQkJbm9fZG9uZSA9IDE7Ci0JCX0KLQl9Ci0JZWxzZSBpZiAoc2VydmVyX3N1cHBvcnRzKCJtdWx0aV9hY2siKSkgewotCQlwcmludF92ZXJib3NlKGFyZ3MsIF8oIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2siKSk7Ci0JCW11bHRpX2FjayA9IDE7Ci0JfQotCWlmIChzZXJ2ZXJfc3VwcG9ydHMoInNpZGUtYmFuZC02NGsiKSkgewotCQlwcmludF92ZXJib3NlKGFyZ3MsIF8oIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQtNjRrIikpOwotCQl1c2Vfc2lkZWJhbmQgPSAyOwotCX0KLQllbHNlIGlmIChzZXJ2ZXJfc3VwcG9ydHMoInNpZGUtYmFuZCIpKSB7Ci0JCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzIHNpZGUtYmFuZCIpKTsKLQkJdXNlX3NpZGViYW5kID0gMTsKLQl9Ci0JaWYgKHNlcnZlcl9zdXBwb3J0cygiYWxsb3ctdGlwLXNoYTEtaW4td2FudCIpKSB7Ci0JCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzIGFsbG93LXRpcC1zaGExLWluLXdhbnQiKSk7Ci0JCWFsbG93X3VuYWR2ZXJ0aXNlZF9vYmplY3RfcmVxdWVzdCB8PSBBTExPV19USVBfU0hBMTsKLQl9Ci0JaWYgKHNlcnZlcl9zdXBwb3J0cygiYWxsb3ctcmVhY2hhYmxlLXNoYTEtaW4td2FudCIpKSB7Ci0JCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzIGFsbG93LXJlYWNoYWJsZS1zaGExLWluLXdhbnQiKSk7Ci0JCWFsbG93X3VuYWR2ZXJ0aXNlZF9vYmplY3RfcmVxdWVzdCB8PSBBTExPV19SRUFDSEFCTEVfU0hBMTsKLQl9Ci0JaWYgKCFzZXJ2ZXJfc3VwcG9ydHMoInRoaW4tcGFjayIpKQotCQlhcmdzLT51c2VfdGhpbl9wYWNrID0gMDsKLQlpZiAoIXNlcnZlcl9zdXBwb3J0cygibm8tcHJvZ3Jlc3MiKSkKLQkJYXJncy0+bm9fcHJvZ3Jlc3MgPSAwOwotCWlmICghc2VydmVyX3N1cHBvcnRzKCJpbmNsdWRlLXRhZyIpKQotCQlhcmdzLT5pbmNsdWRlX3RhZyA9IDA7Ci0JaWYgKHNlcnZlcl9zdXBwb3J0cygib2ZzLWRlbHRhIikpCi0JCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzIG9mcy1kZWx0YSIpKTsKLQllbHNlCi0JCXByZWZlcl9vZnNfZGVsdGEgPSAwOwotCi0JaWYgKHNlcnZlcl9zdXBwb3J0cygiZmlsdGVyIikpIHsKLQkJc2VydmVyX3N1cHBvcnRzX2ZpbHRlcmluZyA9IDE7Ci0JCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzIGZpbHRlciIpKTsKLQl9IGVsc2UgaWYgKGFyZ3MtPmZpbHRlcl9vcHRpb25zLmNob2ljZSkgewotCQl3YXJuaW5nKCJmaWx0ZXJpbmcgbm90IHJlY29nbml6ZWQgYnkgc2VydmVyLCBpZ25vcmluZyIpOwotCX0KLQogCWlmICgoYWdlbnRfZmVhdHVyZSA9IHNlcnZlcl9mZWF0dXJlX3ZhbHVlKCJhZ2VudCIsICZhZ2VudF9sZW4pKSkgewogCQlhZ2VudF9zdXBwb3J0ZWQgPSAxOwogCQlpZiAoYWdlbnRfbGVuKQogCQkJcHJpbnRfdmVyYm9zZShhcmdzLCBfKCJTZXJ2ZXIgdmVyc2lvbiBpcyAlLipzIiksCiAJCQkJICAgICAgYWdlbnRfbGVuLCBhZ2VudF9mZWF0dXJlKTsKIAl9Ci0JaWYgKHNlcnZlcl9zdXBwb3J0cygiZGVlcGVuLXNpbmNlIikpCisKKwlpZiAoc2VydmVyX3N1cHBvcnRzKCJzaGFsbG93IikpCisJCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzICVzIiksICJzaGFsbG93Iik7CisJZWxzZSBpZiAoYXJncy0+ZGVwdGggPiAwIHx8IGlzX3JlcG9zaXRvcnlfc2hhbGxvdyhyKSkKKwkJZGllKF8oIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2xpZW50cyIpKTsKKwlpZiAoYXJncy0+ZGVwdGggPiAwIHx8IGFyZ3MtPmRlZXBlbl9zaW5jZSB8fCBhcmdzLT5kZWVwZW5fbm90KQorCQlhcmdzLT5kZWVwZW4gPSAxOworCWlmIChzZXJ2ZXJfc3VwcG9ydHMoIm11bHRpX2Fja19kZXRhaWxlZCIpKSB7CisJCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzICVzIiksICJtdWx0aV9hY2tfZGV0YWlsZWQiKTsKKwkJbXVsdGlfYWNrID0gMjsKKwkJaWYgKHNlcnZlcl9zdXBwb3J0cygibm8tZG9uZSIpKSB7CisJCQlwcmludF92ZXJib3NlKGFyZ3MsIF8oIlNlcnZlciBzdXBwb3J0cyAlcyIpLCAibm8tZG9uZSIpOworCQkJaWYgKGFyZ3MtPnN0YXRlbGVzc19ycGMpCisJCQkJbm9fZG9uZSA9IDE7CisJCX0KKwl9CisJZWxzZSBpZiAoc2VydmVyX3N1cHBvcnRzKCJtdWx0aV9hY2siKSkgeworCQlwcmludF92ZXJib3NlKGFyZ3MsIF8oIlNlcnZlciBzdXBwb3J0cyAlcyIpLCAibXVsdGlfYWNrIik7CisJCW11bHRpX2FjayA9IDE7CisJfQorCWlmIChzZXJ2ZXJfc3VwcG9ydHMoInNpZGUtYmFuZC02NGsiKSkgeworCQlwcmludF92ZXJib3NlKGFyZ3MsIF8oIlNlcnZlciBzdXBwb3J0cyAlcyIpLCAic2lkZS1iYW5kLTY0ayIpOworCQl1c2Vfc2lkZWJhbmQgPSAyOworCX0KKwllbHNlIGlmIChzZXJ2ZXJfc3VwcG9ydHMoInNpZGUtYmFuZCIpKSB7CisJCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzICVzIiksICJzaWRlLWJhbmQiKTsKKwkJdXNlX3NpZGViYW5kID0gMTsKKwl9CisJaWYgKHNlcnZlcl9zdXBwb3J0cygiYWxsb3ctdGlwLXNoYTEtaW4td2FudCIpKSB7CisJCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzICVzIiksICJhbGxvdy10aXAtc2hhMS1pbi13YW50Iik7CisJCWFsbG93X3VuYWR2ZXJ0aXNlZF9vYmplY3RfcmVxdWVzdCB8PSBBTExPV19USVBfU0hBMTsKKwl9CisJaWYgKHNlcnZlcl9zdXBwb3J0cygiYWxsb3ctcmVhY2hhYmxlLXNoYTEtaW4td2FudCIpKSB7CisJCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzICVzIiksICJhbGxvdy1yZWFjaGFibGUtc2hhMS1pbi13YW50Iik7CisJCWFsbG93X3VuYWR2ZXJ0aXNlZF9vYmplY3RfcmVxdWVzdCB8PSBBTExPV19SRUFDSEFCTEVfU0hBMTsKKwl9CisJaWYgKHNlcnZlcl9zdXBwb3J0cygidGhpbi1wYWNrIikpCisJCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzICVzIiksICJ0aGluLXBhY2siKTsKKwllbHNlCisJCWFyZ3MtPnVzZV90aGluX3BhY2sgPSAwOworCWlmIChzZXJ2ZXJfc3VwcG9ydHMoIm5vLXByb2dyZXNzIikpCisJCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzICVzIiksICJuby1wcm9ncmVzcyIpOworCWVsc2UKKwkJYXJncy0+bm9fcHJvZ3Jlc3MgPSAwOworCWlmIChzZXJ2ZXJfc3VwcG9ydHMoImluY2x1ZGUtdGFnIikpCisJCXByaW50X3ZlcmJvc2UoYXJncywgXygiU2VydmVyIHN1cHBvcnRzICVzIiksICJpbmNsdWRlLXRhZyIpOworCWVsc2UKKwkJYXJncy0+aW5jbHVkZV90YWcgPSAwOworCWlmIChzZXJ2ZXJfc3VwcG9ydHMoIm9mcy1kZWx0YSIpKQorCQlwcmludF92ZXJib3NlKGFyZ3MsIF8oIlNlcnZlciBzdXBwb3J0cyAlcyIpLCAib2ZzLWRlbHRhIik7CisJZWxzZQorCQlwcmVmZXJfb2ZzX2RlbHRhID0gMDsKKworCWlmIChzZXJ2ZXJfc3VwcG9ydHMoImZpbHRlciIpKSB7CisJCXNlcnZlcl9zdXBwb3J0c19maWx0ZXJpbmcgPSAxOworCQlwcmludF92ZXJib3NlKGFyZ3MsIF8oIlNlcnZlciBzdXBwb3J0cyAlcyIpLCAiZmlsdGVyIik7CisJfSBlbHNlIGlmIChhcmdzLT5maWx0ZXJfb3B0aW9ucy5jaG9pY2UpIHsKKwkJd2FybmluZygiZmlsdGVyaW5nIG5vdCByZWNvZ25pemVkIGJ5IHNlcnZlciwgaWdub3JpbmciKTsKKwl9CisKKwlpZiAoc2VydmVyX3N1cHBvcnRzKCJkZWVwZW4tc2luY2UiKSkgeworCQlwcmludF92ZXJib3NlKGFyZ3MsIF8oIlNlcnZlciBzdXBwb3J0cyAlcyIpLCAiZGVlcGVuLXNpbmNlIik7CiAJCWRlZXBlbl9zaW5jZV9vayA9IDE7Ci0JZWxzZSBpZiAoYXJncy0+ZGVlcGVuX3NpbmNlKQorCX0gZWxzZSBpZiAoYXJncy0+ZGVlcGVuX3NpbmNlKQogCQlkaWUoXygiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1zaGFsbG93LXNpbmNlIikpOwotCWlmIChzZXJ2ZXJfc3VwcG9ydHMoImRlZXBlbi1ub3QiKSkKKwlpZiAoc2VydmVyX3N1cHBvcnRzKCJkZWVwZW4tbm90IikpIHsKKwkJcHJpbnRfdmVyYm9zZShhcmdzLCBfKCJTZXJ2ZXIgc3VwcG9ydHMgJXMiKSwgImRlZXBlbi1ub3QiKTsKIAkJZGVlcGVuX25vdF9vayA9IDE7Ci0JZWxzZSBpZiAoYXJncy0+ZGVlcGVuX25vdCkKKwl9IGVsc2UgaWYgKGFyZ3MtPmRlZXBlbl9ub3QpCiAJCWRpZShfKCJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLXNoYWxsb3ctZXhjbHVkZSIpKTsKLQlpZiAoIXNlcnZlcl9zdXBwb3J0cygiZGVlcGVuLXJlbGF0aXZlIikgJiYgYXJncy0+ZGVlcGVuX3JlbGF0aXZlKQorCWlmIChzZXJ2ZXJfc3VwcG9ydHMoImRlZXBlbi1yZWxhdGl2ZSIpKQorCQlwcmludF92ZXJib3NlKGFyZ3MsIF8oIlNlcnZlciBzdXBwb3J0cyAlcyIpLCAiZGVlcGVuLXJlbGF0aXZlIik7CisJZWxzZSBpZiAoYXJncy0+ZGVlcGVuX3JlbGF0aXZlKQogCQlkaWUoXygiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1kZWVwZW4iKSk7CiAKIAlpZiAoIWFyZ3MtPm5vX2RlcGVuZGVudHMpIHsKLQkJbWFya19jb21wbGV0ZV9hbmRfY29tbW9uX3JlZigmbmVnb3RpYXRvciwgYXJncywgJnJlZik7CisJCW1hcmtfY29tcGxldGVfYW5kX2NvbW1vbl9yZWYobmVnb3RpYXRvciwgYXJncywgJnJlZik7CiAJCWZpbHRlcl9yZWZzKGFyZ3MsICZyZWYsIHNvdWdodCwgbnJfc291Z2h0KTsKIAkJaWYgKGV2ZXJ5dGhpbmdfbG9jYWwoYXJncywgJnJlZikpIHsKIAkJCXBhY2tldF9mbHVzaChmZFsxXSk7CkBAIC0xMDAwLDcgKzEwNTAsNyBAQAogCX0gZWxzZSB7CiAJCWZpbHRlcl9yZWZzKGFyZ3MsICZyZWYsIHNvdWdodCwgbnJfc291Z2h0KTsKIAl9Ci0JaWYgKGZpbmRfY29tbW9uKCZuZWdvdGlhdG9yLCBhcmdzLCBmZCwgJm9pZCwgcmVmKSA8IDApCisJaWYgKGZpbmRfY29tbW9uKG5lZ290aWF0b3IsIGFyZ3MsIGZkLCAmb2lkLCByZWYpIDwgMCkKIAkJaWYgKCFhcmdzLT5rZWVwX3BhY2spCiAJCQkvKiBXaGVuIGNsb25pbmcsIGl0IGlzIG5vdCB1bnVzdWFsIHRvIGhhdmUKIAkJCSAqIG5vIGNvbW1vbiBjb21taXQuCkBAIC0xMDE2LDExICsxMDY2LDEyIEBACiAJCWFsdGVybmF0ZV9zaGFsbG93X2ZpbGUgPSBzZXR1cF90ZW1wb3Jhcnlfc2hhbGxvdyhzaS0+c2hhbGxvdyk7CiAJZWxzZQogCQlhbHRlcm5hdGVfc2hhbGxvd19maWxlID0gTlVMTDsKLQlpZiAoZ2V0X3BhY2soYXJncywgZmQsIHBhY2tfbG9ja2ZpbGUpKQorCWlmIChnZXRfcGFjayhhcmdzLCBmZCwgcGFja19sb2NrZmlsZSwgc291Z2h0LCBucl9zb3VnaHQpKQogCQlkaWUoXygiZ2l0IGZldGNoLXBhY2s6IGZldGNoIGZhaWxlZC4iKSk7CiAKICBhbGxfZG9uZToKLQluZWdvdGlhdG9yLnJlbGVhc2UoJm5lZ290aWF0b3IpOworCWlmIChuZWdvdGlhdG9yKQorCQluZWdvdGlhdG9yLT5yZWxlYXNlKG5lZ290aWF0b3IpOwogCXJldHVybiByZWY7CiB9CiAKQEAgLTEwNDIsNiArMTA5Myw4IEBACiAJCQlwYWNrZXRfYnVmX3dyaXRlKHJlcV9idWYsICJkZWVwZW4tbm90ICVzIiwgcy0+c3RyaW5nKTsKIAkJfQogCX0KKwlpZiAoYXJncy0+ZGVlcGVuX3JlbGF0aXZlKQorCQlwYWNrZXRfYnVmX3dyaXRlKHJlcV9idWYsICJkZWVwZW4tcmVsYXRpdmVcbiIpOwogfQogCiBzdGF0aWMgdm9pZCBhZGRfd2FudHMoaW50IG5vX2RlcGVuZGVudHMsIGNvbnN0IHN0cnVjdCByZWYgKndhbnRzLCBzdHJ1Y3Qgc3RyYnVmICpyZXFfYnVmKQpAQCAtMTA2Niw3ICsxMTE5LDcgQEAKIAkJICogd2UgY2Fubm90IHRydXN0IHRoZSBvYmplY3QgZmxhZ3MpLgogCQkgKi8KIAkJaWYgKCFub19kZXBlbmRlbnRzICYmCi0JCSAgICAoKG8gPSBsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCByZW1vdGUtPmhhc2gpKSAhPSBOVUxMKSAmJgorCQkgICAgKChvID0gbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgcmVtb3RlKSkgIT0gTlVMTCkgJiYKIAkJICAgIChvLT5mbGFncyAmIENPTVBMRVRFKSkgewogCQkJY29udGludWU7CiAJCX0KQEAgLTExMTcsOSArMTE3MCwxMCBAQAogfQogCiBzdGF0aWMgaW50IHNlbmRfZmV0Y2hfcmVxdWVzdChzdHJ1Y3QgZmV0Y2hfbmVnb3RpYXRvciAqbmVnb3RpYXRvciwgaW50IGZkX291dCwKLQkJCSAgICAgIGNvbnN0IHN0cnVjdCBmZXRjaF9wYWNrX2FyZ3MgKmFyZ3MsCisJCQkgICAgICBzdHJ1Y3QgZmV0Y2hfcGFja19hcmdzICphcmdzLAogCQkJICAgICAgY29uc3Qgc3RydWN0IHJlZiAqd2FudHMsIHN0cnVjdCBvaWRzZXQgKmNvbW1vbiwKLQkJCSAgICAgIGludCAqaGF2ZXNfdG9fc2VuZCwgaW50ICppbl92YWluKQorCQkJICAgICAgaW50ICpoYXZlc190b19zZW5kLCBpbnQgKmluX3ZhaW4sCisJCQkgICAgICBpbnQgc2lkZWJhbmRfYWxsKQogewogCWludCByZXQgPSAwOwogCXN0cnVjdCBzdHJidWYgcmVxX2J1ZiA9IFNUUkJVRl9JTklUOwpAQCAtMTEzMiw3ICsxMTg2LDcgQEAKIAkgICAgc2VydmVyX3N1cHBvcnRzX3YyKCJzZXJ2ZXItb3B0aW9uIiwgMSkpIHsKIAkJaW50IGk7CiAJCWZvciAoaSA9IDA7IGkgPCBhcmdzLT5zZXJ2ZXJfb3B0aW9ucy0+bnI7IGkrKykKLQkJCXBhY2tldF93cml0ZV9mbXQoZmRfb3V0LCAic2VydmVyLW9wdGlvbj0lcyIsCisJCQlwYWNrZXRfYnVmX3dyaXRlKCZyZXFfYnVmLCAic2VydmVyLW9wdGlvbj0lcyIsCiAJCQkJCSBhcmdzLT5zZXJ2ZXJfb3B0aW9ucy0+aXRlbXNbaV0uc3RyaW5nKTsKIAl9CiAKQEAgLTExNDUsNiArMTE5OSw4IEBACiAJCXBhY2tldF9idWZfd3JpdGUoJnJlcV9idWYsICJpbmNsdWRlLXRhZyIpOwogCWlmIChwcmVmZXJfb2ZzX2RlbHRhKQogCQlwYWNrZXRfYnVmX3dyaXRlKCZyZXFfYnVmLCAib2ZzLWRlbHRhIik7CisJaWYgKHNpZGViYW5kX2FsbCkKKwkJcGFja2V0X2J1Zl93cml0ZSgmcmVxX2J1ZiwgInNpZGViYW5kLWFsbCIpOwogCiAJLyogQWRkIHNoYWxsb3ctaW5mbyBhbmQgZGVlcGVuIHJlcXVlc3QgKi8KIAlpZiAoc2VydmVyX3N1cHBvcnRzX2ZlYXR1cmUoImZldGNoIiwgInNoYWxsb3ciLCAwKSkKQEAgLTExNTUsOSArMTIxMSwxMCBAQAogCS8qIEFkZCBmaWx0ZXIgKi8KIAlpZiAoc2VydmVyX3N1cHBvcnRzX2ZlYXR1cmUoImZldGNoIiwgImZpbHRlciIsIDApICYmCiAJICAgIGFyZ3MtPmZpbHRlcl9vcHRpb25zLmNob2ljZSkgeworCQljb25zdCBjaGFyICpzcGVjID0KKwkJCWV4cGFuZF9saXN0X29iamVjdHNfZmlsdGVyX3NwZWMoJmFyZ3MtPmZpbHRlcl9vcHRpb25zKTsKIAkJcHJpbnRfdmVyYm9zZShhcmdzLCBfKCJTZXJ2ZXIgc3VwcG9ydHMgZmlsdGVyIikpOwotCQlwYWNrZXRfYnVmX3dyaXRlKCZyZXFfYnVmLCAiZmlsdGVyICVzIiwKLQkJCQkgYXJncy0+ZmlsdGVyX29wdGlvbnMuZmlsdGVyX3NwZWMpOworCQlwYWNrZXRfYnVmX3dyaXRlKCZyZXFfYnVmLCAiZmlsdGVyICVzIiwgc3BlYyk7CiAJfSBlbHNlIGlmIChhcmdzLT5maWx0ZXJfb3B0aW9ucy5jaG9pY2UpIHsKIAkJd2FybmluZygiZmlsdGVyaW5nIG5vdCByZWNvZ25pemVkIGJ5IHNlcnZlciwgaWdub3JpbmciKTsKIAl9CkBAIC0xMTc4LDcgKzEyMzUsOCBAQAogCiAJLyogU2VuZCByZXF1ZXN0ICovCiAJcGFja2V0X2J1Zl9mbHVzaCgmcmVxX2J1Zik7Ci0Jd3JpdGVfb3JfZGllKGZkX291dCwgcmVxX2J1Zi5idWYsIHJlcV9idWYubGVuKTsKKwlpZiAod3JpdGVfaW5fZnVsbChmZF9vdXQsIHJlcV9idWYuYnVmLCByZXFfYnVmLmxlbikgPCAwKQorCQlkaWVfZXJybm8oXygidW5hYmxlIHRvIHdyaXRlIHJlcXVlc3QgdG8gcmVtb3RlIikpOwogCiAJc3RyYnVmX3JlbGVhc2UoJnJlcV9idWYpOwogCXJldHVybiByZXQ7CkBAIC0xMjMxLDcgKzEyODksOCBAQAogCQkJCXN0cnVjdCBjb21taXQgKmNvbW1pdDsKIAkJCQlvaWRzZXRfaW5zZXJ0KGNvbW1vbiwgJm9pZCk7CiAJCQkJY29tbWl0ID0gbG9va3VwX2NvbW1pdCh0aGVfcmVwb3NpdG9yeSwgJm9pZCk7Ci0JCQkJbmVnb3RpYXRvci0+YWNrKG5lZ290aWF0b3IsIGNvbW1pdCk7CisJCQkJaWYgKG5lZ290aWF0b3IpCisJCQkJCW5lZ290aWF0b3ItPmFjayhuZWdvdGlhdG9yLCBjb21taXQpOwogCQkJfQogCQkJY29udGludWU7CiAJCX0KQEAgLTEyNjUsOCArMTMyNCwxMiBAQAogfQogCiBzdGF0aWMgdm9pZCByZWNlaXZlX3NoYWxsb3dfaW5mbyhzdHJ1Y3QgZmV0Y2hfcGFja19hcmdzICphcmdzLAotCQkJCSBzdHJ1Y3QgcGFja2V0X3JlYWRlciAqcmVhZGVyKQorCQkJCSBzdHJ1Y3QgcGFja2V0X3JlYWRlciAqcmVhZGVyLAorCQkJCSBzdHJ1Y3Qgb2lkX2FycmF5ICpzaGFsbG93cywKKwkJCQkgc3RydWN0IHNoYWxsb3dfaW5mbyAqc2kpCiB7CisJaW50IHVuc2hhbGxvd19yZWNlaXZlZCA9IDA7CisKIAlwcm9jZXNzX3NlY3Rpb25faGVhZGVyKHJlYWRlciwgInNoYWxsb3ctaW5mbyIsIDApOwogCXdoaWxlIChwYWNrZXRfcmVhZGVyX3JlYWQocmVhZGVyKSA9PSBQQUNLRVRfUkVBRF9OT1JNQUwpIHsKIAkJY29uc3QgY2hhciAqYXJnOwpAQCAtMTI3NSwxOSArMTMzOCwyMCBAQAogCQlpZiAoc2tpcF9wcmVmaXgocmVhZGVyLT5saW5lLCAic2hhbGxvdyAiLCAmYXJnKSkgewogCQkJaWYgKGdldF9vaWRfaGV4KGFyZywgJm9pZCkpCiAJCQkJZGllKF8oImludmFsaWQgc2hhbGxvdyBsaW5lOiAlcyIpLCByZWFkZXItPmxpbmUpOwotCQkJcmVnaXN0ZXJfc2hhbGxvdyh0aGVfcmVwb3NpdG9yeSwgJm9pZCk7CisJCQlvaWRfYXJyYXlfYXBwZW5kKHNoYWxsb3dzLCAmb2lkKTsKIAkJCWNvbnRpbnVlOwogCQl9CiAJCWlmIChza2lwX3ByZWZpeChyZWFkZXItPmxpbmUsICJ1bnNoYWxsb3cgIiwgJmFyZykpIHsKIAkJCWlmIChnZXRfb2lkX2hleChhcmcsICZvaWQpKQogCQkJCWRpZShfKCJpbnZhbGlkIHVuc2hhbGxvdyBsaW5lOiAlcyIpLCByZWFkZXItPmxpbmUpOwotCQkJaWYgKCFsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBvaWQuaGFzaCkpCisJCQlpZiAoIWxvb2t1cF9vYmplY3QodGhlX3JlcG9zaXRvcnksICZvaWQpKQogCQkJCWRpZShfKCJvYmplY3Qgbm90IGZvdW5kOiAlcyIpLCByZWFkZXItPmxpbmUpOwogCQkJLyogbWFrZSBzdXJlIHRoYXQgaXQgaXMgcGFyc2VkIGFzIHNoYWxsb3cgKi8KIAkJCWlmICghcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCAmb2lkKSkKIAkJCQlkaWUoXygiZXJyb3IgaW4gb2JqZWN0OiAlcyIpLCByZWFkZXItPmxpbmUpOwogCQkJaWYgKHVucmVnaXN0ZXJfc2hhbGxvdygmb2lkKSkKIAkJCQlkaWUoXygibm8gc2hhbGxvdyBmb3VuZDogJXMiKSwgcmVhZGVyLT5saW5lKTsKKwkJCXVuc2hhbGxvd19yZWNlaXZlZCA9IDE7CiAJCQljb250aW51ZTsKIAkJfQogCQlkaWUoXygiZXhwZWN0ZWQgc2hhbGxvdy91bnNoYWxsb3csIGdvdCAlcyIpLCByZWFkZXItPmxpbmUpOwpAQCAtMTI5Nyw4ICsxMzYxLDM5IEBACiAJICAgIHJlYWRlci0+c3RhdHVzICE9IFBBQ0tFVF9SRUFEX0RFTElNKQogCQlkaWUoXygiZXJyb3IgcHJvY2Vzc2luZyBzaGFsbG93IGluZm86ICVkIiksIHJlYWRlci0+c3RhdHVzKTsKIAotCXNldHVwX2FsdGVybmF0ZV9zaGFsbG93KCZzaGFsbG93X2xvY2ssICZhbHRlcm5hdGVfc2hhbGxvd19maWxlLCBOVUxMKTsKLQlhcmdzLT5kZWVwZW4gPSAxOworCWlmIChhcmdzLT5kZWVwZW4gfHwgdW5zaGFsbG93X3JlY2VpdmVkKSB7CisJCS8qCisJCSAqIFRyZWF0IHRoZXNlIGFzIHNoYWxsb3cgbGluZXMgY2F1c2VkIGJ5IG91ciBkZXB0aCBzZXR0aW5ncy4KKwkJICogSW4gdjAsIHRoZXNlIGxpbmVzIGNhbm5vdCBjYXVzZSByZWZzIHRvIGJlIHJlamVjdGVkOyBkbyB0aGUKKwkJICogc2FtZS4KKwkJICovCisJCWludCBpOworCisJCWZvciAoaSA9IDA7IGkgPCBzaGFsbG93cy0+bnI7IGkrKykKKwkJCXJlZ2lzdGVyX3NoYWxsb3codGhlX3JlcG9zaXRvcnksICZzaGFsbG93cy0+b2lkW2ldKTsKKwkJc2V0dXBfYWx0ZXJuYXRlX3NoYWxsb3coJnNoYWxsb3dfbG9jaywgJmFsdGVybmF0ZV9zaGFsbG93X2ZpbGUsCisJCQkJCU5VTEwpOworCQlhcmdzLT5kZWVwZW4gPSAxOworCX0gZWxzZSBpZiAoc2hhbGxvd3MtPm5yKSB7CisJCS8qCisJCSAqIFRyZWF0IHRoZXNlIGFzIHNoYWxsb3cgbGluZXMgY2F1c2VkIGJ5IHRoZSByZW1vdGUgYmVpbmcKKwkJICogc2hhbGxvdy4gSW4gdjAsIHJlbW90ZSByZWZzIHRoYXQgcmVhY2ggdGhlc2Ugb2JqZWN0cyBhcmUKKwkJICogcmVqZWN0ZWQgKHVubGVzcyAtLXVwZGF0ZS1zaGFsbG93IGlzIHNldCk7IGRvIHRoZSBzYW1lLgorCQkgKi8KKwkJcHJlcGFyZV9zaGFsbG93X2luZm8oc2ksIHNoYWxsb3dzKTsKKwkJaWYgKHNpLT5ucl9vdXJzIHx8IHNpLT5ucl90aGVpcnMpCisJCQlhbHRlcm5hdGVfc2hhbGxvd19maWxlID0KKwkJCQlzZXR1cF90ZW1wb3Jhcnlfc2hhbGxvdyhzaS0+c2hhbGxvdyk7CisJCWVsc2UKKwkJCWFsdGVybmF0ZV9zaGFsbG93X2ZpbGUgPSBOVUxMOworCX0gZWxzZSB7CisJCWFsdGVybmF0ZV9zaGFsbG93X2ZpbGUgPSBOVUxMOworCX0KK30KKworc3RhdGljIGludCBjbXBfbmFtZV9yZWYoY29uc3Qgdm9pZCAqbmFtZSwgY29uc3Qgdm9pZCAqcmVmKQoreworCXJldHVybiBzdHJjbXAobmFtZSwgKCooc3RydWN0IHJlZiAqKilyZWYpLT5uYW1lKTsKIH0KIAogc3RhdGljIHZvaWQgcmVjZWl2ZV93YW50ZWRfcmVmcyhzdHJ1Y3QgcGFja2V0X3JlYWRlciAqcmVhZGVyLApAQCAtMTMwOCwyMCArMTQwMywxNiBAQAogCXdoaWxlIChwYWNrZXRfcmVhZGVyX3JlYWQocmVhZGVyKSA9PSBQQUNLRVRfUkVBRF9OT1JNQUwpIHsKIAkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJCWNvbnN0IGNoYXIgKmVuZDsKLQkJaW50IGk7CisJCXN0cnVjdCByZWYgKipmb3VuZDsKIAogCQlpZiAocGFyc2Vfb2lkX2hleChyZWFkZXItPmxpbmUsICZvaWQsICZlbmQpIHx8ICplbmQrKyAhPSAnICcpCiAJCQlkaWUoXygiZXhwZWN0ZWQgd2FudGVkLXJlZiwgZ290ICclcyciKSwgcmVhZGVyLT5saW5lKTsKIAotCQlmb3IgKGkgPSAwOyBpIDwgbnJfc291Z2h0OyBpKyspIHsKLQkJCWlmICghc3RyY21wKGVuZCwgc291Z2h0W2ldLT5uYW1lKSkgewotCQkJCW9pZGNweSgmc291Z2h0W2ldLT5vbGRfb2lkLCAmb2lkKTsKLQkJCQlicmVhazsKLQkJCX0KLQkJfQotCi0JCWlmIChpID09IG5yX3NvdWdodCkKKwkJZm91bmQgPSBic2VhcmNoKGVuZCwgc291Z2h0LCBucl9zb3VnaHQsIHNpemVvZigqc291Z2h0KSwKKwkJCQljbXBfbmFtZV9yZWYpOworCQlpZiAoIWZvdW5kKQogCQkJZGllKF8oInVuZXhwZWN0ZWQgd2FudGVkLXJlZjogJyVzJyIpLCByZWFkZXItPmxpbmUpOworCQlvaWRjcHkoJigqZm91bmQpLT5vbGRfb2lkLCAmb2lkKTsKIAl9CiAKIAlpZiAocmVhZGVyLT5zdGF0dXMgIT0gUEFDS0VUX1JFQURfREVMSU0pCkBAIC0xMzQwLDE4ICsxNDMxLDM1IEBACiAJCQkJICAgIGludCBmZFsyXSwKIAkJCQkgICAgY29uc3Qgc3RydWN0IHJlZiAqb3JpZ19yZWYsCiAJCQkJICAgIHN0cnVjdCByZWYgKipzb3VnaHQsIGludCBucl9zb3VnaHQsCisJCQkJICAgIHN0cnVjdCBvaWRfYXJyYXkgKnNoYWxsb3dzLAorCQkJCSAgICBzdHJ1Y3Qgc2hhbGxvd19pbmZvICpzaSwKIAkJCQkgICAgY2hhciAqKnBhY2tfbG9ja2ZpbGUpCiB7CisJc3RydWN0IHJlcG9zaXRvcnkgKnIgPSB0aGVfcmVwb3NpdG9yeTsKIAlzdHJ1Y3QgcmVmICpyZWYgPSBjb3B5X3JlZl9saXN0KG9yaWdfcmVmKTsKIAllbnVtIGZldGNoX3N0YXRlIHN0YXRlID0gRkVUQ0hfQ0hFQ0tfTE9DQUw7CiAJc3RydWN0IG9pZHNldCBjb21tb24gPSBPSURTRVRfSU5JVDsKIAlzdHJ1Y3QgcGFja2V0X3JlYWRlciByZWFkZXI7Ci0JaW50IGluX3ZhaW4gPSAwOworCWludCBpbl92YWluID0gMCwgbmVnb3RpYXRpb25fc3RhcnRlZCA9IDA7CiAJaW50IGhhdmVzX3RvX3NlbmQgPSBJTklUSUFMX0ZMVVNIOwotCXN0cnVjdCBmZXRjaF9uZWdvdGlhdG9yIG5lZ290aWF0b3I7Ci0JZmV0Y2hfbmVnb3RpYXRvcl9pbml0KCZuZWdvdGlhdG9yLCBuZWdvdGlhdGlvbl9hbGdvcml0aG0pOworCXN0cnVjdCBmZXRjaF9uZWdvdGlhdG9yIG5lZ290aWF0b3JfYWxsb2M7CisJc3RydWN0IGZldGNoX25lZ290aWF0b3IgKm5lZ290aWF0b3I7CisKKwlpZiAoYXJncy0+bm9fZGVwZW5kZW50cykgeworCQluZWdvdGlhdG9yID0gTlVMTDsKKwl9IGVsc2UgeworCQluZWdvdGlhdG9yID0gJm5lZ290aWF0b3JfYWxsb2M7CisJCWZldGNoX25lZ290aWF0b3JfaW5pdChyLCBuZWdvdGlhdG9yKTsKKwl9CisKIAlwYWNrZXRfcmVhZGVyX2luaXQoJnJlYWRlciwgZmRbMF0sIE5VTEwsIDAsCi0JCQkgICBQQUNLRVRfUkVBRF9DSE9NUF9ORVdMSU5FKTsKKwkJCSAgIFBBQ0tFVF9SRUFEX0NIT01QX05FV0xJTkUgfAorCQkJICAgUEFDS0VUX1JFQURfRElFX09OX0VSUl9QQUNLRVQpOworCWlmIChnaXRfZW52X2Jvb2woIkdJVF9URVNUX1NJREVCQU5EX0FMTCIsIDEpICYmCisJICAgIHNlcnZlcl9zdXBwb3J0c19mZWF0dXJlKCJmZXRjaCIsICJzaWRlYmFuZC1hbGwiLCAwKSkgeworCQlyZWFkZXIudXNlX3NpZGViYW5kID0gMTsKKwkJcmVhZGVyLm1lID0gImZldGNoLXBhY2siOworCX0KIAogCXdoaWxlIChzdGF0ZSAhPSBGRVRDSF9ET05FKSB7CiAJCXN3aXRjaCAoc3RhdGUpIHsKQEAgLTEzNjcsMTUgKzE0NzUsMTUgQEAKIAogCQkJLyogRmlsdGVyICdyZWYnIGJ5ICdzb3VnaHQnIGFuZCB0aG9zZSB0aGF0IGFyZW4ndCBsb2NhbCAqLwogCQkJaWYgKCFhcmdzLT5ub19kZXBlbmRlbnRzKSB7Ci0JCQkJbWFya19jb21wbGV0ZV9hbmRfY29tbW9uX3JlZigmbmVnb3RpYXRvciwgYXJncywgJnJlZik7CisJCQkJbWFya19jb21wbGV0ZV9hbmRfY29tbW9uX3JlZihuZWdvdGlhdG9yLCBhcmdzLCAmcmVmKTsKIAkJCQlmaWx0ZXJfcmVmcyhhcmdzLCAmcmVmLCBzb3VnaHQsIG5yX3NvdWdodCk7CiAJCQkJaWYgKGV2ZXJ5dGhpbmdfbG9jYWwoYXJncywgJnJlZikpCiAJCQkJCXN0YXRlID0gRkVUQ0hfRE9ORTsKIAkJCQllbHNlCiAJCQkJCXN0YXRlID0gRkVUQ0hfU0VORF9SRVFVRVNUOwogCi0JCQkJbWFya190aXBzKCZuZWdvdGlhdG9yLCBhcmdzLT5uZWdvdGlhdGlvbl90aXBzKTsKLQkJCQlmb3JfZWFjaF9jYWNoZWRfYWx0ZXJuYXRlKCZuZWdvdGlhdG9yLAorCQkJCW1hcmtfdGlwcyhuZWdvdGlhdG9yLCBhcmdzLT5uZWdvdGlhdGlvbl90aXBzKTsKKwkJCQlmb3JfZWFjaF9jYWNoZWRfYWx0ZXJuYXRlKG5lZ290aWF0b3IsCiAJCQkJCQkJICBpbnNlcnRfb25lX2FsdGVybmF0ZV9vYmplY3QpOwogCQkJfSBlbHNlIHsKIAkJCQlmaWx0ZXJfcmVmcyhhcmdzLCAmcmVmLCBzb3VnaHQsIG5yX3NvdWdodCk7CkBAIC0xMzgzLDE2ICsxNDkxLDIzIEBACiAJCQl9CiAJCQlicmVhazsKIAkJY2FzZSBGRVRDSF9TRU5EX1JFUVVFU1Q6Ci0JCQlpZiAoc2VuZF9mZXRjaF9yZXF1ZXN0KCZuZWdvdGlhdG9yLCBmZFsxXSwgYXJncywgcmVmLAorCQkJaWYgKCFuZWdvdGlhdGlvbl9zdGFydGVkKSB7CisJCQkJbmVnb3RpYXRpb25fc3RhcnRlZCA9IDE7CisJCQkJdHJhY2UyX3JlZ2lvbl9lbnRlcigiZmV0Y2gtcGFjayIsCisJCQkJCQkgICAgIm5lZ290aWF0aW9uX3YyIiwKKwkJCQkJCSAgICB0aGVfcmVwb3NpdG9yeSk7CisJCQl9CisJCQlpZiAoc2VuZF9mZXRjaF9yZXF1ZXN0KG5lZ290aWF0b3IsIGZkWzFdLCBhcmdzLCByZWYsCiAJCQkJCSAgICAgICAmY29tbW9uLAotCQkJCQkgICAgICAgJmhhdmVzX3RvX3NlbmQsICZpbl92YWluKSkKKwkJCQkJICAgICAgICZoYXZlc190b19zZW5kLCAmaW5fdmFpbiwKKwkJCQkJICAgICAgIHJlYWRlci51c2Vfc2lkZWJhbmQpKQogCQkJCXN0YXRlID0gRkVUQ0hfR0VUX1BBQ0s7CiAJCQllbHNlCiAJCQkJc3RhdGUgPSBGRVRDSF9QUk9DRVNTX0FDS1M7CiAJCQlicmVhazsKIAkJY2FzZSBGRVRDSF9QUk9DRVNTX0FDS1M6CiAJCQkvKiBQcm9jZXNzIEFDS3MvTkFLcyAqLwotCQkJc3dpdGNoIChwcm9jZXNzX2Fja3MoJm5lZ290aWF0b3IsICZyZWFkZXIsICZjb21tb24pKSB7CisJCQlzd2l0Y2ggKHByb2Nlc3NfYWNrcyhuZWdvdGlhdG9yLCAmcmVhZGVyLCAmY29tbW9uKSkgewogCQkJY2FzZSAyOgogCQkJCXN0YXRlID0gRkVUQ0hfR0VUX1BBQ0s7CiAJCQkJYnJlYWs7CkBAIC0xNDA1LDE2ICsxNTIwLDE5IEBACiAJCQl9CiAJCQlicmVhazsKIAkJY2FzZSBGRVRDSF9HRVRfUEFDSzoKKwkJCXRyYWNlMl9yZWdpb25fbGVhdmUoImZldGNoLXBhY2siLAorCQkJCQkgICAgIm5lZ290aWF0aW9uX3YyIiwKKwkJCQkJICAgIHRoZV9yZXBvc2l0b3J5KTsKIAkJCS8qIENoZWNrIGZvciBzaGFsbG93LWluZm8gc2VjdGlvbiAqLwogCQkJaWYgKHByb2Nlc3Nfc2VjdGlvbl9oZWFkZXIoJnJlYWRlciwgInNoYWxsb3ctaW5mbyIsIDEpKQotCQkJCXJlY2VpdmVfc2hhbGxvd19pbmZvKGFyZ3MsICZyZWFkZXIpOworCQkJCXJlY2VpdmVfc2hhbGxvd19pbmZvKGFyZ3MsICZyZWFkZXIsIHNoYWxsb3dzLCBzaSk7CiAKIAkJCWlmIChwcm9jZXNzX3NlY3Rpb25faGVhZGVyKCZyZWFkZXIsICJ3YW50ZWQtcmVmcyIsIDEpKQogCQkJCXJlY2VpdmVfd2FudGVkX3JlZnMoJnJlYWRlciwgc291Z2h0LCBucl9zb3VnaHQpOwogCiAJCQkvKiBnZXQgdGhlIHBhY2sgKi8KIAkJCXByb2Nlc3Nfc2VjdGlvbl9oZWFkZXIoJnJlYWRlciwgInBhY2tmaWxlIiwgMCk7Ci0JCQlpZiAoZ2V0X3BhY2soYXJncywgZmQsIHBhY2tfbG9ja2ZpbGUpKQorCQkJaWYgKGdldF9wYWNrKGFyZ3MsIGZkLCBwYWNrX2xvY2tmaWxlLCBzb3VnaHQsIG5yX3NvdWdodCkpCiAJCQkJZGllKF8oImdpdCBmZXRjaC1wYWNrOiBmZXRjaCBmYWlsZWQuIikpOwogCiAJCQlzdGF0ZSA9IEZFVENIX0RPTkU7CkBAIC0xNDI0LDcgKzE1NDIsOCBAQAogCQl9CiAJfQogCi0JbmVnb3RpYXRvci5yZWxlYXNlKCZuZWdvdGlhdG9yKTsKKwlpZiAobmVnb3RpYXRvcikKKwkJbmVnb3RpYXRvci0+cmVsZWFzZShuZWdvdGlhdG9yKTsKIAlvaWRzZXRfY2xlYXIoJmNvbW1vbik7CiAJcmV0dXJuIHJlZjsKIH0KQEAgLTE0NjEsOCArMTU4MCw2IEBACiAJZ2l0X2NvbmZpZ19nZXRfYm9vbCgicmVwYWNrLnVzZWRlbHRhYmFzZW9mZnNldCIsICZwcmVmZXJfb2ZzX2RlbHRhKTsKIAlnaXRfY29uZmlnX2dldF9ib29sKCJmZXRjaC5mc2Nrb2JqZWN0cyIsICZmZXRjaF9mc2NrX29iamVjdHMpOwogCWdpdF9jb25maWdfZ2V0X2Jvb2woInRyYW5zZmVyLmZzY2tvYmplY3RzIiwgJnRyYW5zZmVyX2ZzY2tfb2JqZWN0cyk7Ci0JZ2l0X2NvbmZpZ19nZXRfc3RyaW5nKCJmZXRjaC5uZWdvdGlhdGlvbmFsZ29yaXRobSIsCi0JCQkgICAgICAmbmVnb3RpYXRpb25fYWxnb3JpdGhtKTsKIAogCWdpdF9jb25maWcoZmV0Y2hfcGFja19jb25maWdfY2IsIE5VTEwpOwogfQpAQCAtMTUxNSw2ICsxNjMyLDcgQEAKIAkJCXJvbGxiYWNrX2xvY2tfZmlsZSgmc2hhbGxvd19sb2NrKTsKIAkJfSBlbHNlCiAJCQljb21taXRfbG9ja19maWxlKCZzaGFsbG93X2xvY2spOworCQlhbHRlcm5hdGVfc2hhbGxvd19maWxlID0gTlVMTDsKIAkJcmV0dXJuOwogCX0KIApAQCAtMTUzOCw2ICsxNjU2LDcgQEAKIAkJCQkJCSZhbHRlcm5hdGVfc2hhbGxvd19maWxlLAogCQkJCQkJJmV4dHJhKTsKIAkJCWNvbW1pdF9sb2NrX2ZpbGUoJnNoYWxsb3dfbG9jayk7CisJCQlhbHRlcm5hdGVfc2hhbGxvd19maWxlID0gTlVMTDsKIAkJfQogCQlvaWRfYXJyYXlfY2xlYXIoJmV4dHJhKTsKIAkJcmV0dXJuOwpAQCAtMTU3Nyw2ICsxNjk2LDcgQEAKIAkJY29tbWl0X2xvY2tfZmlsZSgmc2hhbGxvd19sb2NrKTsKIAkJb2lkX2FycmF5X2NsZWFyKCZleHRyYSk7CiAJCW9pZF9hcnJheV9jbGVhcigmcmVmKTsKKwkJYWx0ZXJuYXRlX3NoYWxsb3dfZmlsZSA9IE5VTEw7CiAJCXJldHVybjsKIAl9CiAKQEAgLTE2MDgsOSArMTcyOCw4IEBACiB9CiAKIHN0cnVjdCByZWYgKmZldGNoX3BhY2soc3RydWN0IGZldGNoX3BhY2tfYXJncyAqYXJncywKLQkJICAgICAgIGludCBmZFtdLCBzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqY29ubiwKKwkJICAgICAgIGludCBmZFtdLAogCQkgICAgICAgY29uc3Qgc3RydWN0IHJlZiAqcmVmLAotCQkgICAgICAgY29uc3QgY2hhciAqZGVzdCwKIAkJICAgICAgIHN0cnVjdCByZWYgKipzb3VnaHQsIGludCBucl9zb3VnaHQsCiAJCSAgICAgICBzdHJ1Y3Qgb2lkX2FycmF5ICpzaGFsbG93LAogCQkgICAgICAgY2hhciAqKnBhY2tfbG9ja2ZpbGUsCkBAIC0xNjE4LDYgKzE3MzcsNyBAQAogewogCXN0cnVjdCByZWYgKnJlZl9jcHk7CiAJc3RydWN0IHNoYWxsb3dfaW5mbyBzaTsKKwlzdHJ1Y3Qgb2lkX2FycmF5IHNoYWxsb3dzX3NjcmF0Y2ggPSBPSURfQVJSQVlfSU5JVDsKIAogCWZldGNoX3BhY2tfc2V0dXAoKTsKIAlpZiAobnJfc291Z2h0KQpAQCAtMTY0MSwxMyArMTc2MSwxOCBAQAogCQlwYWNrZXRfZmx1c2goZmRbMV0pOwogCQlkaWUoXygibm8gbWF0Y2hpbmcgcmVtb3RlIGhlYWQiKSk7CiAJfQotCXByZXBhcmVfc2hhbGxvd19pbmZvKCZzaSwgc2hhbGxvdyk7Ci0JaWYgKHZlcnNpb24gPT0gcHJvdG9jb2xfdjIpCisJaWYgKHZlcnNpb24gPT0gcHJvdG9jb2xfdjIpIHsKKwkJaWYgKHNoYWxsb3ctPm5yKQorCQkJQlVHKCJQcm90b2NvbCBWMiBkb2VzIG5vdCBwcm92aWRlIHNoYWxsb3dzIGF0IHRoaXMgcG9pbnQgaW4gdGhlIGZldGNoIik7CisJCW1lbXNldCgmc2ksIDAsIHNpemVvZihzaSkpOwogCQlyZWZfY3B5ID0gZG9fZmV0Y2hfcGFja192MihhcmdzLCBmZCwgcmVmLCBzb3VnaHQsIG5yX3NvdWdodCwKKwkJCQkJICAgJnNoYWxsb3dzX3NjcmF0Y2gsICZzaSwKIAkJCQkJICAgcGFja19sb2NrZmlsZSk7Ci0JZWxzZQorCX0gZWxzZSB7CisJCXByZXBhcmVfc2hhbGxvd19pbmZvKCZzaSwgc2hhbGxvdyk7CiAJCXJlZl9jcHkgPSBkb19mZXRjaF9wYWNrKGFyZ3MsIGZkLCByZWYsIHNvdWdodCwgbnJfc291Z2h0LAogCQkJCQkmc2ksIHBhY2tfbG9ja2ZpbGUpOworCX0KIAlyZXByZXBhcmVfcGFja2VkX2dpdCh0aGVfcmVwb3NpdG9yeSk7CiAKIAlpZiAoIWFyZ3MtPmNsb25pbmcgJiYgYXJncy0+ZGVlcGVuKSB7CkBAIC0xNjY5LDYgKzE3OTQsNyBAQAogCXVwZGF0ZV9zaGFsbG93KGFyZ3MsIHNvdWdodCwgbnJfc291Z2h0LCAmc2kpOwogY2xlYW51cDoKIAljbGVhcl9zaGFsbG93X2luZm8oJnNpKTsKKwlvaWRfYXJyYXlfY2xlYXIoJnNoYWxsb3dzX3NjcmF0Y2gpOwogCXJldHVybiByZWZfY3B5OwogfQogCmRpZmYgLS1naXQgYS9mZXRjaC1wYWNrLmggYi9mZXRjaC1wYWNrLmgKaW5kZXggNDNlYzM0NC4uNjdmNjg0MiAxMDA2NDQKLS0tIGEvZmV0Y2gtcGFjay5oCisrKyBiL2ZldGNoLXBhY2suaApAQCAtNzgsOSArNzgsOCBAQAogICogbWFya2VkIGFzIHN1Y2guCiAgKi8KIHN0cnVjdCByZWYgKmZldGNoX3BhY2soc3RydWN0IGZldGNoX3BhY2tfYXJncyAqYXJncywKLQkJICAgICAgIGludCBmZFtdLCBzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqY29ubiwKKwkJICAgICAgIGludCBmZFtdLAogCQkgICAgICAgY29uc3Qgc3RydWN0IHJlZiAqcmVmLAotCQkgICAgICAgY29uc3QgY2hhciAqZGVzdCwKIAkJICAgICAgIHN0cnVjdCByZWYgKipzb3VnaHQsCiAJCSAgICAgICBpbnQgbnJfc291Z2h0LAogCQkgICAgICAgc3RydWN0IG9pZF9hcnJheSAqc2hhbGxvdywKZGlmZiAtLWdpdCBhL2ZtdC1tZXJnZS1tc2cuaCBiL2ZtdC1tZXJnZS1tc2cuaAppbmRleCBiMjhkM2E2Li4wMWUzYWE4IDEwMDY0NAotLS0gYS9mbXQtbWVyZ2UtbXNnLmgKKysrIGIvZm10LW1lcmdlLW1zZy5oCkBAIC0yLDYgKzIsNiBAQAogI2RlZmluZSBGTVRfTUVSR0VfTVNHX0gKIAogZXh0ZXJuIGludCBtZXJnZV9sb2dfY29uZmlnOwotZXh0ZXJuIGludCBmbXRfbWVyZ2VfbXNnX2NvbmZpZyhjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKnZhbHVlLCB2b2lkICpjYik7CitpbnQgZm10X21lcmdlX21zZ19jb25maWcoY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqY2IpOwogCiAjZW5kaWYgLyogRk1UX01FUkdFX01TR19IICovCmRpZmYgLS1naXQgYS9mc2NrLmMgYi9mc2NrLmMKaW5kZXggNTM1ZjgwNi4uNjQwZDgxMyAxMDA2NDQKLS0tIGEvZnNjay5jCisrKyBiL2ZzY2suYwpAQCAtNDMsMjEgKzQzLDE3IEBACiAJRlVOQyhNSVNTSU5HX0FVVEhPUiwgRVJST1IpIFwKIAlGVU5DKE1JU1NJTkdfQ09NTUlUVEVSLCBFUlJPUikgXAogCUZVTkMoTUlTU0lOR19FTUFJTCwgRVJST1IpIFwKLQlGVU5DKE1JU1NJTkdfR1JBRlQsIEVSUk9SKSBcCiAJRlVOQyhNSVNTSU5HX05BTUVfQkVGT1JFX0VNQUlMLCBFUlJPUikgXAogCUZVTkMoTUlTU0lOR19PQkpFQ1QsIEVSUk9SKSBcCi0JRlVOQyhNSVNTSU5HX1BBUkVOVCwgRVJST1IpIFwKIAlGVU5DKE1JU1NJTkdfU1BBQ0VfQkVGT1JFX0RBVEUsIEVSUk9SKSBcCiAJRlVOQyhNSVNTSU5HX1NQQUNFX0JFRk9SRV9FTUFJTCwgRVJST1IpIFwKIAlGVU5DKE1JU1NJTkdfVEFHLCBFUlJPUikgXAogCUZVTkMoTUlTU0lOR19UQUdfRU5UUlksIEVSUk9SKSBcCi0JRlVOQyhNSVNTSU5HX1RBR19PQkpFQ1QsIEVSUk9SKSBcCiAJRlVOQyhNSVNTSU5HX1RSRUUsIEVSUk9SKSBcCiAJRlVOQyhNSVNTSU5HX1RSRUVfT0JKRUNULCBFUlJPUikgXAogCUZVTkMoTUlTU0lOR19UWVBFLCBFUlJPUikgXAogCUZVTkMoTUlTU0lOR19UWVBFX0VOVFJZLCBFUlJPUikgXAogCUZVTkMoTVVMVElQTEVfQVVUSE9SUywgRVJST1IpIFwKLQlGVU5DKFRBR19PQkpFQ1RfTk9UX1RBRywgRVJST1IpIFwKIAlGVU5DKFRSRUVfTk9UX1NPUlRFRCwgRVJST1IpIFwKIAlGVU5DKFVOS05PV05fVFlQRSwgRVJST1IpIFwKIAlGVU5DKFpFUk9fUEFEREVEX0RBVEUsIEVSUk9SKSBcCkBAIC0xODIsNDEgKzE3OCw2IEBACiAJcmV0dXJuIG1zZ190eXBlOwogfQogCi1zdGF0aWMgdm9pZCBpbml0X3NraXBsaXN0KHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdGlvbnMsIGNvbnN0IGNoYXIgKnBhdGgpCi17Ci0JRklMRSAqZnA7Ci0Jc3RydWN0IHN0cmJ1ZiBzYiA9IFNUUkJVRl9JTklUOwotCXN0cnVjdCBvYmplY3RfaWQgb2lkOwotCi0JZnAgPSBmb3BlbihwYXRoLCAiciIpOwotCWlmICghZnApCi0JCWRpZSgiQ291bGQgbm90IG9wZW4gc2tpcCBsaXN0OiAlcyIsIHBhdGgpOwotCXdoaWxlICghc3RyYnVmX2dldGxpbmUoJnNiLCBmcCkpIHsKLQkJY29uc3QgY2hhciAqcDsKLQkJY29uc3QgY2hhciAqaGFzaDsKLQotCQkvKgotCQkgKiBBbGxvdyB0cmFpbGluZyBjb21tZW50cywgbGVhZGluZyB3aGl0ZXNwYWNlCi0JCSAqIChpbmNsdWRpbmcgYmVmb3JlIGNvbW1pdHMpLCBhbmQgZW1wdHkgb3Igd2hpdGVzcGFjZQotCQkgKiBvbmx5IGxpbmVzLgotCQkgKi8KLQkJaGFzaCA9IHN0cmNocihzYi5idWYsICcjJyk7Ci0JCWlmIChoYXNoKQotCQkJc3RyYnVmX3NldGxlbigmc2IsIGhhc2ggLSBzYi5idWYpOwotCQlzdHJidWZfdHJpbSgmc2IpOwotCQlpZiAoIXNiLmxlbikKLQkJCWNvbnRpbnVlOwotCi0JCWlmIChwYXJzZV9vaWRfaGV4KHNiLmJ1ZiwgJm9pZCwgJnApIHx8ICpwICE9ICdcMCcpCi0JCQlkaWUoIkludmFsaWQgU0hBLTE6ICVzIiwgc2IuYnVmKTsKLQkJb2lkc2V0X2luc2VydCgmb3B0aW9ucy0+c2tpcGxpc3QsICZvaWQpOwotCX0KLQlpZiAoZmVycm9yKGZwKSkKLQkJZGllX2Vycm5vKCJDb3VsZCBub3QgcmVhZCAnJXMnIiwgcGF0aCk7Ci0JZmNsb3NlKGZwKTsKLQlzdHJidWZfcmVsZWFzZSgmc2IpOwotfQotCiBzdGF0aWMgaW50IHBhcnNlX21zZ190eXBlKGNvbnN0IGNoYXIgKnN0cikKIHsKIAlpZiAoIXN0cmNtcChzdHIsICJlcnJvciIpKQpAQCAtMjg1LDcgKzI0Niw3IEBACiAJCWlmICghc3RyY21wKGJ1ZiwgInNraXBsaXN0IikpIHsKIAkJCWlmIChlcXVhbCA9PSBsZW4pCiAJCQkJZGllKCJza2lwbGlzdCByZXF1aXJlcyBhIHBhdGgiKTsKLQkJCWluaXRfc2tpcGxpc3Qob3B0aW9ucywgYnVmICsgZXF1YWwgKyAxKTsKKwkJCW9pZHNldF9wYXJzZV9maWxlKCZvcHRpb25zLT5za2lwbGlzdCwgYnVmICsgZXF1YWwgKyAxKTsKIAkJCWJ1ZiArPSBsZW4gKyAxOwogCQkJY29udGludWU7CiAJCX0KQEAgLTMxNywxNCArMjc4LDE2IEBACiAJc3RyYnVmX2FkZHN0cihzYiwgIjogIik7CiB9CiAKLXN0YXRpYyBpbnQgb2JqZWN0X29uX3NraXBsaXN0KHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdHMsIHN0cnVjdCBvYmplY3QgKm9iaikKK3N0YXRpYyBpbnQgb2JqZWN0X29uX3NraXBsaXN0KHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdHMsCisJCQkgICAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0JcmV0dXJuIG9wdHMgJiYgb2JqICYmIG9pZHNldF9jb250YWlucygmb3B0cy0+c2tpcGxpc3QsICZvYmotPm9pZCk7CisJcmV0dXJuIG9wdHMgJiYgb2lkICYmIG9pZHNldF9jb250YWlucygmb3B0cy0+c2tpcGxpc3QsIG9pZCk7CiB9CiAKLV9fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLCA0LCA1KSkpCi1zdGF0aWMgaW50IHJlcG9ydChzdHJ1Y3QgZnNja19vcHRpb25zICpvcHRpb25zLCBzdHJ1Y3Qgb2JqZWN0ICpvYmplY3QsCi0JZW51bSBmc2NrX21zZ19pZCBpZCwgY29uc3QgY2hhciAqZm10LCAuLi4pCitfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgNSwgNikpKQorc3RhdGljIGludCByZXBvcnQoc3RydWN0IGZzY2tfb3B0aW9ucyAqb3B0aW9ucywKKwkJICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGVudW0gb2JqZWN0X3R5cGUgb2JqZWN0X3R5cGUsCisJCSAgZW51bSBmc2NrX21zZ19pZCBpZCwgY29uc3QgY2hhciAqZm10LCAuLi4pCiB7CiAJdmFfbGlzdCBhcDsKIAlzdHJ1Y3Qgc3RyYnVmIHNiID0gU1RSQlVGX0lOSVQ7CkBAIC0zMzMsNyArMjk2LDcgQEAKIAlpZiAobXNnX3R5cGUgPT0gRlNDS19JR05PUkUpCiAJCXJldHVybiAwOwogCi0JaWYgKG9iamVjdF9vbl9za2lwbGlzdChvcHRpb25zLCBvYmplY3QpKQorCWlmIChvYmplY3Rfb25fc2tpcGxpc3Qob3B0aW9ucywgb2lkKSkKIAkJcmV0dXJuIDA7CiAKIAlpZiAobXNnX3R5cGUgPT0gRlNDS19GQVRBTCkKQEAgLTM0NSw0OSArMzA4LDcxIEBACiAKIAl2YV9zdGFydChhcCwgZm10KTsKIAlzdHJidWZfdmFkZGYoJnNiLCBmbXQsIGFwKTsKLQlyZXN1bHQgPSBvcHRpb25zLT5lcnJvcl9mdW5jKG9wdGlvbnMsIG9iamVjdCwgbXNnX3R5cGUsIHNiLmJ1Zik7CisJcmVzdWx0ID0gb3B0aW9ucy0+ZXJyb3JfZnVuYyhvcHRpb25zLCBvaWQsIG9iamVjdF90eXBlLAorCQkJCSAgICAgbXNnX3R5cGUsIHNiLmJ1Zik7CiAJc3RyYnVmX3JlbGVhc2UoJnNiKTsKIAl2YV9lbmQoYXApOwogCiAJcmV0dXJuIHJlc3VsdDsKIH0KIAotc3RhdGljIGNoYXIgKmdldF9vYmplY3RfbmFtZShzdHJ1Y3QgZnNja19vcHRpb25zICpvcHRpb25zLCBzdHJ1Y3Qgb2JqZWN0ICpvYmopCit2b2lkIGZzY2tfZW5hYmxlX29iamVjdF9uYW1lcyhzdHJ1Y3QgZnNja19vcHRpb25zICpvcHRpb25zKQogewogCWlmICghb3B0aW9ucy0+b2JqZWN0X25hbWVzKQotCQlyZXR1cm4gTlVMTDsKLQlyZXR1cm4gbG9va3VwX2RlY29yYXRpb24ob3B0aW9ucy0+b2JqZWN0X25hbWVzLCBvYmopOworCQlvcHRpb25zLT5vYmplY3RfbmFtZXMgPSBraF9pbml0X29pZF9tYXAoKTsKIH0KIAotc3RhdGljIHZvaWQgcHV0X29iamVjdF9uYW1lKHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdGlvbnMsIHN0cnVjdCBvYmplY3QgKm9iaiwKLQljb25zdCBjaGFyICpmbXQsIC4uLikKK2NvbnN0IGNoYXIgKmZzY2tfZ2V0X29iamVjdF9uYW1lKHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdGlvbnMsCisJCQkJIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKK3sKKwlraGl0ZXJfdCBwb3M7CisJaWYgKCFvcHRpb25zLT5vYmplY3RfbmFtZXMpCisJCXJldHVybiBOVUxMOworCXBvcyA9IGtoX2dldF9vaWRfbWFwKG9wdGlvbnMtPm9iamVjdF9uYW1lcywgKm9pZCk7CisJaWYgKHBvcyA+PSBraF9lbmQob3B0aW9ucy0+b2JqZWN0X25hbWVzKSkKKwkJcmV0dXJuIE5VTEw7CisJcmV0dXJuIGtoX3ZhbHVlKG9wdGlvbnMtPm9iamVjdF9uYW1lcywgcG9zKTsKK30KKwordm9pZCBmc2NrX3B1dF9vYmplY3RfbmFtZShzdHJ1Y3QgZnNja19vcHRpb25zICpvcHRpb25zLAorCQkJICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkgIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQogewogCXZhX2xpc3QgYXA7CiAJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKLQljaGFyICpleGlzdGluZzsKKwlraGl0ZXJfdCBwb3M7CisJaW50IGhhc2hyZXQ7CiAKIAlpZiAoIW9wdGlvbnMtPm9iamVjdF9uYW1lcykKIAkJcmV0dXJuOwotCWV4aXN0aW5nID0gbG9va3VwX2RlY29yYXRpb24ob3B0aW9ucy0+b2JqZWN0X25hbWVzLCBvYmopOwotCWlmIChleGlzdGluZykKKworCXBvcyA9IGtoX3B1dF9vaWRfbWFwKG9wdGlvbnMtPm9iamVjdF9uYW1lcywgKm9pZCwgJmhhc2hyZXQpOworCWlmICghaGFzaHJldCkKIAkJcmV0dXJuOwogCXZhX3N0YXJ0KGFwLCBmbXQpOwogCXN0cmJ1Zl92YWRkZigmYnVmLCBmbXQsIGFwKTsKLQlhZGRfZGVjb3JhdGlvbihvcHRpb25zLT5vYmplY3RfbmFtZXMsIG9iaiwgc3RyYnVmX2RldGFjaCgmYnVmLCBOVUxMKSk7CisJa2hfdmFsdWUob3B0aW9ucy0+b2JqZWN0X25hbWVzLCBwb3MpID0gc3RyYnVmX2RldGFjaCgmYnVmLCBOVUxMKTsKIAl2YV9lbmQoYXApOwogfQogCi1zdGF0aWMgY29uc3QgY2hhciAqZGVzY3JpYmVfb2JqZWN0KHN0cnVjdCBmc2NrX29wdGlvbnMgKm8sIHN0cnVjdCBvYmplY3QgKm9iaikKK2NvbnN0IGNoYXIgKmZzY2tfZGVzY3JpYmVfb2JqZWN0KHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdGlvbnMsCisJCQkJIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKLQlzdGF0aWMgc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKLQljaGFyICpuYW1lOworCXN0YXRpYyBzdHJ1Y3Qgc3RyYnVmIGJ1ZnNbXSA9IHsKKwkJU1RSQlVGX0lOSVQsIFNUUkJVRl9JTklULCBTVFJCVUZfSU5JVCwgU1RSQlVGX0lOSVQKKwl9OworCXN0YXRpYyBpbnQgYiA9IDA7CisJc3RydWN0IHN0cmJ1ZiAqYnVmOworCWNvbnN0IGNoYXIgKm5hbWUgPSBmc2NrX2dldF9vYmplY3RfbmFtZShvcHRpb25zLCBvaWQpOwogCi0Jc3RyYnVmX3Jlc2V0KCZidWYpOwotCXN0cmJ1Zl9hZGRzdHIoJmJ1Ziwgb2lkX3RvX2hleCgmb2JqLT5vaWQpKTsKLQlpZiAoby0+b2JqZWN0X25hbWVzICYmIChuYW1lID0gbG9va3VwX2RlY29yYXRpb24oby0+b2JqZWN0X25hbWVzLCBvYmopKSkKLQkJc3RyYnVmX2FkZGYoJmJ1ZiwgIiAoJXMpIiwgbmFtZSk7CisJYnVmID0gYnVmcyArIGI7CisJYiA9IChiICsgMSkgJSBBUlJBWV9TSVpFKGJ1ZnMpOworCXN0cmJ1Zl9yZXNldChidWYpOworCXN0cmJ1Zl9hZGRzdHIoYnVmLCBvaWRfdG9faGV4KG9pZCkpOworCWlmIChuYW1lKQorCQlzdHJidWZfYWRkZihidWYsICIgKCVzKSIsIG5hbWUpOwogCi0JcmV0dXJuIGJ1Zi5idWY7CisJcmV0dXJuIGJ1Zi0+YnVmOwogfQogCiBzdGF0aWMgaW50IGZzY2tfd2Fsa190cmVlKHN0cnVjdCB0cmVlICp0cmVlLCB2b2lkICpkYXRhLCBzdHJ1Y3QgZnNja19vcHRpb25zICpvcHRpb25zKQpAQCAtNDAwLDcgKzM4NSw3IEBACiAJaWYgKHBhcnNlX3RyZWUodHJlZSkpCiAJCXJldHVybiAtMTsKIAotCW5hbWUgPSBnZXRfb2JqZWN0X25hbWUob3B0aW9ucywgJnRyZWUtPm9iamVjdCk7CisJbmFtZSA9IGZzY2tfZ2V0X29iamVjdF9uYW1lKG9wdGlvbnMsICZ0cmVlLT5vYmplY3Qub2lkKTsKIAlpZiAoaW5pdF90cmVlX2Rlc2NfZ2VudGx5KCZkZXNjLCB0cmVlLT5idWZmZXIsIHRyZWUtPnNpemUpKQogCQlyZXR1cm4gLTE7CiAJd2hpbGUgKHRyZWVfZW50cnlfZ2VudGx5KCZkZXNjLCAmZW50cnkpKSB7CkBAIC00MTEsMjIgKzM5NiwyMyBAQAogCQkJY29udGludWU7CiAKIAkJaWYgKFNfSVNESVIoZW50cnkubW9kZSkpIHsKLQkJCW9iaiA9IChzdHJ1Y3Qgb2JqZWN0ICopbG9va3VwX3RyZWUodGhlX3JlcG9zaXRvcnksIGVudHJ5Lm9pZCk7CisJCQlvYmogPSAoc3RydWN0IG9iamVjdCAqKWxvb2t1cF90cmVlKHRoZV9yZXBvc2l0b3J5LCAmZW50cnkub2lkKTsKIAkJCWlmIChuYW1lICYmIG9iaikKLQkJCQlwdXRfb2JqZWN0X25hbWUob3B0aW9ucywgb2JqLCAiJXMlcy8iLCBuYW1lLAotCQkJCQllbnRyeS5wYXRoKTsKKwkJCQlmc2NrX3B1dF9vYmplY3RfbmFtZShvcHRpb25zLCAmZW50cnkub2lkLCAiJXMlcy8iLAorCQkJCQkJICAgICBuYW1lLCBlbnRyeS5wYXRoKTsKIAkJCXJlc3VsdCA9IG9wdGlvbnMtPndhbGsob2JqLCBPQkpfVFJFRSwgZGF0YSwgb3B0aW9ucyk7CiAJCX0KIAkJZWxzZSBpZiAoU19JU1JFRyhlbnRyeS5tb2RlKSB8fCBTX0lTTE5LKGVudHJ5Lm1vZGUpKSB7Ci0JCQlvYmogPSAoc3RydWN0IG9iamVjdCAqKWxvb2t1cF9ibG9iKHRoZV9yZXBvc2l0b3J5LCBlbnRyeS5vaWQpOworCQkJb2JqID0gKHN0cnVjdCBvYmplY3QgKilsb29rdXBfYmxvYih0aGVfcmVwb3NpdG9yeSwgJmVudHJ5Lm9pZCk7CiAJCQlpZiAobmFtZSAmJiBvYmopCi0JCQkJcHV0X29iamVjdF9uYW1lKG9wdGlvbnMsIG9iaiwgIiVzJXMiLCBuYW1lLAotCQkJCQllbnRyeS5wYXRoKTsKKwkJCQlmc2NrX3B1dF9vYmplY3RfbmFtZShvcHRpb25zLCAmZW50cnkub2lkLCAiJXMlcyIsCisJCQkJCQkgICAgIG5hbWUsIGVudHJ5LnBhdGgpOwogCQkJcmVzdWx0ID0gb3B0aW9ucy0+d2FsayhvYmosIE9CSl9CTE9CLCBkYXRhLCBvcHRpb25zKTsKIAkJfQogCQllbHNlIHsKIAkJCXJlc3VsdCA9IGVycm9yKCJpbiB0cmVlICVzOiBlbnRyeSAlcyBoYXMgYmFkIG1vZGUgJS42byIsCi0JCQkJCWRlc2NyaWJlX29iamVjdChvcHRpb25zLCAmdHJlZS0+b2JqZWN0KSwgZW50cnkucGF0aCwgZW50cnkubW9kZSk7CisJCQkJICAgICAgIGZzY2tfZGVzY3JpYmVfb2JqZWN0KG9wdGlvbnMsICZ0cmVlLT5vYmplY3Qub2lkKSwKKwkJCQkgICAgICAgZW50cnkucGF0aCwgZW50cnkubW9kZSk7CiAJCX0KIAkJaWYgKHJlc3VsdCA8IDApCiAJCQlyZXR1cm4gcmVzdWx0OwpAQCAtNDQ3LDEwICs0MzMsMTAgQEAKIAlpZiAocGFyc2VfY29tbWl0KGNvbW1pdCkpCiAJCXJldHVybiAtMTsKIAotCW5hbWUgPSBnZXRfb2JqZWN0X25hbWUob3B0aW9ucywgJmNvbW1pdC0+b2JqZWN0KTsKKwluYW1lID0gZnNja19nZXRfb2JqZWN0X25hbWUob3B0aW9ucywgJmNvbW1pdC0+b2JqZWN0Lm9pZCk7CiAJaWYgKG5hbWUpCi0JCXB1dF9vYmplY3RfbmFtZShvcHRpb25zLCAmZ2V0X2NvbW1pdF90cmVlKGNvbW1pdCktPm9iamVjdCwKLQkJCQkiJXM6IiwgbmFtZSk7CisJCWZzY2tfcHV0X29iamVjdF9uYW1lKG9wdGlvbnMsIGdldF9jb21taXRfdHJlZV9vaWQoY29tbWl0KSwKKwkJCQkgICAgICIlczoiLCBuYW1lKTsKIAogCXJlc3VsdCA9IG9wdGlvbnMtPndhbGsoKHN0cnVjdCBvYmplY3QgKilnZXRfY29tbWl0X3RyZWUoY29tbWl0KSwKIAkJCSAgICAgICBPQkpfVFJFRSwgZGF0YSwgb3B0aW9ucyk7CkBAIC00NzgsMTYgKzQ2NCwxNyBAQAogCiAJd2hpbGUgKHBhcmVudHMpIHsKIAkJaWYgKG5hbWUpIHsKLQkJCXN0cnVjdCBvYmplY3QgKm9iaiA9ICZwYXJlbnRzLT5pdGVtLT5vYmplY3Q7CisJCQlzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQgPSAmcGFyZW50cy0+aXRlbS0+b2JqZWN0Lm9pZDsKIAogCQkJaWYgKGNvdW50ZXIrKykKLQkJCQlwdXRfb2JqZWN0X25hbWUob3B0aW9ucywgb2JqLCAiJXNeJWQiLAotCQkJCQluYW1lLCBjb3VudGVyKTsKKwkJCQlmc2NrX3B1dF9vYmplY3RfbmFtZShvcHRpb25zLCBvaWQsICIlc14lZCIsCisJCQkJCQkgICAgIG5hbWUsIGNvdW50ZXIpOwogCQkJZWxzZSBpZiAoZ2VuZXJhdGlvbiA+IDApCi0JCQkJcHV0X29iamVjdF9uYW1lKG9wdGlvbnMsIG9iaiwgIiUuKnN+JWQiLAotCQkJCQluYW1lX3ByZWZpeF9sZW4sIG5hbWUsIGdlbmVyYXRpb24gKyAxKTsKKwkJCQlmc2NrX3B1dF9vYmplY3RfbmFtZShvcHRpb25zLCBvaWQsICIlLipzfiVkIiwKKwkJCQkJCSAgICAgbmFtZV9wcmVmaXhfbGVuLCBuYW1lLAorCQkJCQkJICAgICBnZW5lcmF0aW9uICsgMSk7CiAJCQllbHNlCi0JCQkJcHV0X29iamVjdF9uYW1lKG9wdGlvbnMsIG9iaiwgIiVzXiIsIG5hbWUpOworCQkJCWZzY2tfcHV0X29iamVjdF9uYW1lKG9wdGlvbnMsIG9pZCwgIiVzXiIsIG5hbWUpOwogCQl9CiAJCXJlc3VsdCA9IG9wdGlvbnMtPndhbGsoKHN0cnVjdCBvYmplY3QgKilwYXJlbnRzLT5pdGVtLCBPQkpfQ09NTUlULCBkYXRhLCBvcHRpb25zKTsKIAkJaWYgKHJlc3VsdCA8IDApCkBAIC01MDEsMTIgKzQ4OCwxMiBAQAogCiBzdGF0aWMgaW50IGZzY2tfd2Fsa190YWcoc3RydWN0IHRhZyAqdGFnLCB2b2lkICpkYXRhLCBzdHJ1Y3QgZnNja19vcHRpb25zICpvcHRpb25zKQogewotCWNoYXIgKm5hbWUgPSBnZXRfb2JqZWN0X25hbWUob3B0aW9ucywgJnRhZy0+b2JqZWN0KTsKKwljb25zdCBjaGFyICpuYW1lID0gZnNja19nZXRfb2JqZWN0X25hbWUob3B0aW9ucywgJnRhZy0+b2JqZWN0Lm9pZCk7CiAKIAlpZiAocGFyc2VfdGFnKHRhZykpCiAJCXJldHVybiAtMTsKIAlpZiAobmFtZSkKLQkJcHV0X29iamVjdF9uYW1lKG9wdGlvbnMsIHRhZy0+dGFnZ2VkLCAiJXMiLCBuYW1lKTsKKwkJZnNja19wdXRfb2JqZWN0X25hbWUob3B0aW9ucywgJnRhZy0+dGFnZ2VkLT5vaWQsICIlcyIsIG5hbWUpOwogCXJldHVybiBvcHRpb25zLT53YWxrKHRhZy0+dGFnZ2VkLCBPQkpfQU5ZLCBkYXRhLCBvcHRpb25zKTsKIH0KIApAQCAtNTI4LDcgKzUxNSw4IEBACiAJY2FzZSBPQkpfVEFHOgogCQlyZXR1cm4gZnNja193YWxrX3RhZygoc3RydWN0IHRhZyAqKW9iaiwgZGF0YSwgb3B0aW9ucyk7CiAJZGVmYXVsdDoKLQkJZXJyb3IoIlVua25vd24gb2JqZWN0IHR5cGUgZm9yICVzIiwgZGVzY3JpYmVfb2JqZWN0KG9wdGlvbnMsIG9iaikpOworCQllcnJvcigiVW5rbm93biBvYmplY3QgdHlwZSBmb3IgJXMiLAorCQkgICAgICBmc2NrX2Rlc2NyaWJlX29iamVjdChvcHRpb25zLCAmb2JqLT5vaWQpKTsKIAkJcmV0dXJuIC0xOwogCX0KIH0KQEAgLTU3OSw3ICs1NjcsOSBAQAogCXJldHVybiBjMSA8IGMyID8gMCA6IFRSRUVfVU5PUkRFUkVEOwogfQogCi1zdGF0aWMgaW50IGZzY2tfdHJlZShzdHJ1Y3QgdHJlZSAqaXRlbSwgc3RydWN0IGZzY2tfb3B0aW9ucyAqb3B0aW9ucykKK3N0YXRpYyBpbnQgZnNja190cmVlKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJICAgICBjb25zdCBjaGFyICpidWZmZXIsIHVuc2lnbmVkIGxvbmcgc2l6ZSwKKwkJICAgICBzdHJ1Y3QgZnNja19vcHRpb25zICpvcHRpb25zKQogewogCWludCByZXR2YWwgPSAwOwogCWludCBoYXNfbnVsbF9zaGExID0gMDsKQEAgLTU5Niw4ICs1ODYsOCBAQAogCXVuc2lnbmVkIG9fbW9kZTsKIAljb25zdCBjaGFyICpvX25hbWU7CiAKLQlpZiAoaW5pdF90cmVlX2Rlc2NfZ2VudGx5KCZkZXNjLCBpdGVtLT5idWZmZXIsIGl0ZW0tPnNpemUpKSB7Ci0JCXJldHZhbCArPSByZXBvcnQob3B0aW9ucywgJml0ZW0tPm9iamVjdCwgRlNDS19NU0dfQkFEX1RSRUUsICJjYW5ub3QgYmUgcGFyc2VkIGFzIGEgdHJlZSIpOworCWlmIChpbml0X3RyZWVfZGVzY19nZW50bHkoJmRlc2MsIGJ1ZmZlciwgc2l6ZSkpIHsKKwkJcmV0dmFsICs9IHJlcG9ydChvcHRpb25zLCBvaWQsIE9CSl9UUkVFLCBGU0NLX01TR19CQURfVFJFRSwgImNhbm5vdCBiZSBwYXJzZWQgYXMgYSB0cmVlIik7CiAJCXJldHVybiByZXR2YWw7CiAJfQogCkBAIC02MDUsNyArNTk1LDcgQEAKIAlvX25hbWUgPSBOVUxMOwogCiAJd2hpbGUgKGRlc2Muc2l6ZSkgewotCQl1bnNpZ25lZCBtb2RlOworCQl1bnNpZ25lZCBzaG9ydCBtb2RlOwogCQljb25zdCBjaGFyICpuYW1lLCAqYmFja3NsYXNoOwogCQljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQ7CiAKQEAgLTYyMyw3ICs2MTMsOCBAQAogCQkJaWYgKCFTX0lTTE5LKG1vZGUpKQogCQkJCW9pZHNldF9pbnNlcnQoJmdpdG1vZHVsZXNfZm91bmQsIG9pZCk7CiAJCQllbHNlCi0JCQkJcmV0dmFsICs9IHJlcG9ydChvcHRpb25zLCAmaXRlbS0+b2JqZWN0LAorCQkJCXJldHZhbCArPSByZXBvcnQob3B0aW9ucywKKwkJCQkJCSBvaWQsIE9CSl9UUkVFLAogCQkJCQkJIEZTQ0tfTVNHX0dJVE1PRFVMRVNfU1lNTElOSywKIAkJCQkJCSAiLmdpdG1vZHVsZXMgaXMgYSBzeW1ib2xpYyBsaW5rIik7CiAJCX0KQEAgLTYzNiw3ICs2MjcsNyBAQAogCQkJCQlpZiAoIVNfSVNMTksobW9kZSkpCiAJCQkJCQlvaWRzZXRfaW5zZXJ0KCZnaXRtb2R1bGVzX2ZvdW5kLCBvaWQpOwogCQkJCQllbHNlCi0JCQkJCQlyZXR2YWwgKz0gcmVwb3J0KG9wdGlvbnMsICZpdGVtLT5vYmplY3QsCisJCQkJCQlyZXR2YWwgKz0gcmVwb3J0KG9wdGlvbnMsIG9pZCwgT0JKX1RSRUUsCiAJCQkJCQkJCSBGU0NLX01TR19HSVRNT0RVTEVTX1NZTUxJTkssCiAJCQkJCQkJCSAiLmdpdG1vZHVsZXMgaXMgYSBzeW1ib2xpYyBsaW5rIik7CiAJCQkJfQpAQCAtNjQ1LDcgKzYzNiw3IEBACiAJCX0KIAogCQlpZiAodXBkYXRlX3RyZWVfZW50cnlfZ2VudGx5KCZkZXNjKSkgewotCQkJcmV0dmFsICs9IHJlcG9ydChvcHRpb25zLCAmaXRlbS0+b2JqZWN0LCBGU0NLX01TR19CQURfVFJFRSwgImNhbm5vdCBiZSBwYXJzZWQgYXMgYSB0cmVlIik7CisJCQlyZXR2YWwgKz0gcmVwb3J0KG9wdGlvbnMsIG9pZCwgT0JKX1RSRUUsIEZTQ0tfTVNHX0JBRF9UUkVFLCAiY2Fubm90IGJlIHBhcnNlZCBhcyBhIHRyZWUiKTsKIAkJCWJyZWFrOwogCQl9CiAKQEAgLTY5MCwzMCArNjgxLDMxIEBACiAJfQogCiAJaWYgKGhhc19udWxsX3NoYTEpCi0JCXJldHZhbCArPSByZXBvcnQob3B0aW9ucywgJml0ZW0tPm9iamVjdCwgRlNDS19NU0dfTlVMTF9TSEExLCAiY29udGFpbnMgZW50cmllcyBwb2ludGluZyB0byBudWxsIHNoYTEiKTsKKwkJcmV0dmFsICs9IHJlcG9ydChvcHRpb25zLCBvaWQsIE9CSl9UUkVFLCBGU0NLX01TR19OVUxMX1NIQTEsICJjb250YWlucyBlbnRyaWVzIHBvaW50aW5nIHRvIG51bGwgc2hhMSIpOwogCWlmIChoYXNfZnVsbF9wYXRoKQotCQlyZXR2YWwgKz0gcmVwb3J0KG9wdGlvbnMsICZpdGVtLT5vYmplY3QsIEZTQ0tfTVNHX0ZVTExfUEFUSE5BTUUsICJjb250YWlucyBmdWxsIHBhdGhuYW1lcyIpOworCQlyZXR2YWwgKz0gcmVwb3J0KG9wdGlvbnMsIG9pZCwgT0JKX1RSRUUsIEZTQ0tfTVNHX0ZVTExfUEFUSE5BTUUsICJjb250YWlucyBmdWxsIHBhdGhuYW1lcyIpOwogCWlmIChoYXNfZW1wdHlfbmFtZSkKLQkJcmV0dmFsICs9IHJlcG9ydChvcHRpb25zLCAmaXRlbS0+b2JqZWN0LCBGU0NLX01TR19FTVBUWV9OQU1FLCAiY29udGFpbnMgZW1wdHkgcGF0aG5hbWUiKTsKKwkJcmV0dmFsICs9IHJlcG9ydChvcHRpb25zLCBvaWQsIE9CSl9UUkVFLCBGU0NLX01TR19FTVBUWV9OQU1FLCAiY29udGFpbnMgZW1wdHkgcGF0aG5hbWUiKTsKIAlpZiAoaGFzX2RvdCkKLQkJcmV0dmFsICs9IHJlcG9ydChvcHRpb25zLCAmaXRlbS0+b2JqZWN0LCBGU0NLX01TR19IQVNfRE9ULCAiY29udGFpbnMgJy4nIik7CisJCXJldHZhbCArPSByZXBvcnQob3B0aW9ucywgb2lkLCBPQkpfVFJFRSwgRlNDS19NU0dfSEFTX0RPVCwgImNvbnRhaW5zICcuJyIpOwogCWlmIChoYXNfZG90ZG90KQotCQlyZXR2YWwgKz0gcmVwb3J0KG9wdGlvbnMsICZpdGVtLT5vYmplY3QsIEZTQ0tfTVNHX0hBU19ET1RET1QsICJjb250YWlucyAnLi4nIik7CisJCXJldHZhbCArPSByZXBvcnQob3B0aW9ucywgb2lkLCBPQkpfVFJFRSwgRlNDS19NU0dfSEFTX0RPVERPVCwgImNvbnRhaW5zICcuLiciKTsKIAlpZiAoaGFzX2RvdGdpdCkKLQkJcmV0dmFsICs9IHJlcG9ydChvcHRpb25zLCAmaXRlbS0+b2JqZWN0LCBGU0NLX01TR19IQVNfRE9UR0lULCAiY29udGFpbnMgJy5naXQnIik7CisJCXJldHZhbCArPSByZXBvcnQob3B0aW9ucywgb2lkLCBPQkpfVFJFRSwgRlNDS19NU0dfSEFTX0RPVEdJVCwgImNvbnRhaW5zICcuZ2l0JyIpOwogCWlmIChoYXNfemVyb19wYWQpCi0JCXJldHZhbCArPSByZXBvcnQob3B0aW9ucywgJml0ZW0tPm9iamVjdCwgRlNDS19NU0dfWkVST19QQURERURfRklMRU1PREUsICJjb250YWlucyB6ZXJvLXBhZGRlZCBmaWxlIG1vZGVzIik7CisJCXJldHZhbCArPSByZXBvcnQob3B0aW9ucywgb2lkLCBPQkpfVFJFRSwgRlNDS19NU0dfWkVST19QQURERURfRklMRU1PREUsICJjb250YWlucyB6ZXJvLXBhZGRlZCBmaWxlIG1vZGVzIik7CiAJaWYgKGhhc19iYWRfbW9kZXMpCi0JCXJldHZhbCArPSByZXBvcnQob3B0aW9ucywgJml0ZW0tPm9iamVjdCwgRlNDS19NU0dfQkFEX0ZJTEVNT0RFLCAiY29udGFpbnMgYmFkIGZpbGUgbW9kZXMiKTsKKwkJcmV0dmFsICs9IHJlcG9ydChvcHRpb25zLCBvaWQsIE9CSl9UUkVFLCBGU0NLX01TR19CQURfRklMRU1PREUsICJjb250YWlucyBiYWQgZmlsZSBtb2RlcyIpOwogCWlmIChoYXNfZHVwX2VudHJpZXMpCi0JCXJldHZhbCArPSByZXBvcnQob3B0aW9ucywgJml0ZW0tPm9iamVjdCwgRlNDS19NU0dfRFVQTElDQVRFX0VOVFJJRVMsICJjb250YWlucyBkdXBsaWNhdGUgZmlsZSBlbnRyaWVzIik7CisJCXJldHZhbCArPSByZXBvcnQob3B0aW9ucywgb2lkLCBPQkpfVFJFRSwgRlNDS19NU0dfRFVQTElDQVRFX0VOVFJJRVMsICJjb250YWlucyBkdXBsaWNhdGUgZmlsZSBlbnRyaWVzIik7CiAJaWYgKG5vdF9wcm9wZXJseV9zb3J0ZWQpCi0JCXJldHZhbCArPSByZXBvcnQob3B0aW9ucywgJml0ZW0tPm9iamVjdCwgRlNDS19NU0dfVFJFRV9OT1RfU09SVEVELCAibm90IHByb3Blcmx5IHNvcnRlZCIpOworCQlyZXR2YWwgKz0gcmVwb3J0KG9wdGlvbnMsIG9pZCwgT0JKX1RSRUUsIEZTQ0tfTVNHX1RSRUVfTk9UX1NPUlRFRCwgIm5vdCBwcm9wZXJseSBzb3J0ZWQiKTsKIAlyZXR1cm4gcmV0dmFsOwogfQogCiBzdGF0aWMgaW50IHZlcmlmeV9oZWFkZXJzKGNvbnN0IHZvaWQgKmRhdGEsIHVuc2lnbmVkIGxvbmcgc2l6ZSwKLQkJCSAgc3RydWN0IG9iamVjdCAqb2JqLCBzdHJ1Y3QgZnNja19vcHRpb25zICpvcHRpb25zKQorCQkJICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGVudW0gb2JqZWN0X3R5cGUgdHlwZSwKKwkJCSAgc3RydWN0IGZzY2tfb3B0aW9ucyAqb3B0aW9ucykKIHsKIAljb25zdCBjaGFyICpidWZmZXIgPSAoY29uc3QgY2hhciAqKWRhdGE7CiAJdW5zaWduZWQgbG9uZyBpOwpAQCAtNzIxLDcgKzcxMyw3IEBACiAJZm9yIChpID0gMDsgaSA8IHNpemU7IGkrKykgewogCQlzd2l0Y2ggKGJ1ZmZlcltpXSkgewogCQljYXNlICdcMCc6Ci0JCQlyZXR1cm4gcmVwb3J0KG9wdGlvbnMsIG9iaiwKKwkJCXJldHVybiByZXBvcnQob3B0aW9ucywgb2lkLCB0eXBlLAogCQkJCUZTQ0tfTVNHX05VTF9JTl9IRUFERVIsCiAJCQkJInVudGVybWluYXRlZCBoZWFkZXI6IE5VTCBhdCBvZmZzZXQgJWxkIiwgaSk7CiAJCWNhc2UgJ1xuJzoKQEAgLTczOSwxMSArNzMxLDEzIEBACiAJaWYgKHNpemUgJiYgYnVmZmVyW3NpemUgLSAxXSA9PSAnXG4nKQogCQlyZXR1cm4gMDsKIAotCXJldHVybiByZXBvcnQob3B0aW9ucywgb2JqLAorCXJldHVybiByZXBvcnQob3B0aW9ucywgb2lkLCB0eXBlLAogCQlGU0NLX01TR19VTlRFUk1JTkFURURfSEVBREVSLCAidW50ZXJtaW5hdGVkIGhlYWRlciIpOwogfQogCi1zdGF0aWMgaW50IGZzY2tfaWRlbnQoY29uc3QgY2hhciAqKmlkZW50LCBzdHJ1Y3Qgb2JqZWN0ICpvYmosIHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdGlvbnMpCitzdGF0aWMgaW50IGZzY2tfaWRlbnQoY29uc3QgY2hhciAqKmlkZW50LAorCQkgICAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGVudW0gb2JqZWN0X3R5cGUgdHlwZSwKKwkJICAgICAgc3RydWN0IGZzY2tfb3B0aW9ucyAqb3B0aW9ucykKIHsKIAljb25zdCBjaGFyICpwID0gKmlkZW50OwogCWNoYXIgKmVuZDsKQEAgLTc1MywyOCArNzQ3LDI4IEBACiAJCSgqaWRlbnQpKys7CiAKIAlpZiAoKnAgPT0gJzwnKQotCQlyZXR1cm4gcmVwb3J0KG9wdGlvbnMsIG9iaiwgRlNDS19NU0dfTUlTU0lOR19OQU1FX0JFRk9SRV9FTUFJTCwgImludmFsaWQgYXV0aG9yL2NvbW1pdHRlciBsaW5lIC0gbWlzc2luZyBzcGFjZSBiZWZvcmUgZW1haWwiKTsKKwkJcmV0dXJuIHJlcG9ydChvcHRpb25zLCBvaWQsIHR5cGUsIEZTQ0tfTVNHX01JU1NJTkdfTkFNRV9CRUZPUkVfRU1BSUwsICJpbnZhbGlkIGF1dGhvci9jb21taXR0ZXIgbGluZSAtIG1pc3Npbmcgc3BhY2UgYmVmb3JlIGVtYWlsIik7CiAJcCArPSBzdHJjc3BuKHAsICI8PlxuIik7CiAJaWYgKCpwID09ICc+JykKLQkJcmV0dXJuIHJlcG9ydChvcHRpb25zLCBvYmosIEZTQ0tfTVNHX0JBRF9OQU1FLCAiaW52YWxpZCBhdXRob3IvY29tbWl0dGVyIGxpbmUgLSBiYWQgbmFtZSIpOworCQlyZXR1cm4gcmVwb3J0KG9wdGlvbnMsIG9pZCwgdHlwZSwgRlNDS19NU0dfQkFEX05BTUUsICJpbnZhbGlkIGF1dGhvci9jb21taXR0ZXIgbGluZSAtIGJhZCBuYW1lIik7CiAJaWYgKCpwICE9ICc8JykKLQkJcmV0dXJuIHJlcG9ydChvcHRpb25zLCBvYmosIEZTQ0tfTVNHX01JU1NJTkdfRU1BSUwsICJpbnZhbGlkIGF1dGhvci9jb21taXR0ZXIgbGluZSAtIG1pc3NpbmcgZW1haWwiKTsKKwkJcmV0dXJuIHJlcG9ydChvcHRpb25zLCBvaWQsIHR5cGUsIEZTQ0tfTVNHX01JU1NJTkdfRU1BSUwsICJpbnZhbGlkIGF1dGhvci9jb21taXR0ZXIgbGluZSAtIG1pc3NpbmcgZW1haWwiKTsKIAlpZiAocFstMV0gIT0gJyAnKQotCQlyZXR1cm4gcmVwb3J0KG9wdGlvbnMsIG9iaiwgRlNDS19NU0dfTUlTU0lOR19TUEFDRV9CRUZPUkVfRU1BSUwsICJpbnZhbGlkIGF1dGhvci9jb21taXR0ZXIgbGluZSAtIG1pc3Npbmcgc3BhY2UgYmVmb3JlIGVtYWlsIik7CisJCXJldHVybiByZXBvcnQob3B0aW9ucywgb2lkLCB0eXBlLCBGU0NLX01TR19NSVNTSU5HX1NQQUNFX0JFRk9SRV9FTUFJTCwgImludmFsaWQgYXV0aG9yL2NvbW1pdHRlciBsaW5lIC0gbWlzc2luZyBzcGFjZSBiZWZvcmUgZW1haWwiKTsKIAlwKys7CiAJcCArPSBzdHJjc3BuKHAsICI8PlxuIik7CiAJaWYgKCpwICE9ICc+JykKLQkJcmV0dXJuIHJlcG9ydChvcHRpb25zLCBvYmosIEZTQ0tfTVNHX0JBRF9FTUFJTCwgImludmFsaWQgYXV0aG9yL2NvbW1pdHRlciBsaW5lIC0gYmFkIGVtYWlsIik7CisJCXJldHVybiByZXBvcnQob3B0aW9ucywgb2lkLCB0eXBlLCBGU0NLX01TR19CQURfRU1BSUwsICJpbnZhbGlkIGF1dGhvci9jb21taXR0ZXIgbGluZSAtIGJhZCBlbWFpbCIpOwogCXArKzsKIAlpZiAoKnAgIT0gJyAnKQotCQlyZXR1cm4gcmVwb3J0KG9wdGlvbnMsIG9iaiwgRlNDS19NU0dfTUlTU0lOR19TUEFDRV9CRUZPUkVfREFURSwgImludmFsaWQgYXV0aG9yL2NvbW1pdHRlciBsaW5lIC0gbWlzc2luZyBzcGFjZSBiZWZvcmUgZGF0ZSIpOworCQlyZXR1cm4gcmVwb3J0KG9wdGlvbnMsIG9pZCwgdHlwZSwgRlNDS19NU0dfTUlTU0lOR19TUEFDRV9CRUZPUkVfREFURSwgImludmFsaWQgYXV0aG9yL2NvbW1pdHRlciBsaW5lIC0gbWlzc2luZyBzcGFjZSBiZWZvcmUgZGF0ZSIpOwogCXArKzsKIAlpZiAoKnAgPT0gJzAnICYmIHBbMV0gIT0gJyAnKQotCQlyZXR1cm4gcmVwb3J0KG9wdGlvbnMsIG9iaiwgRlNDS19NU0dfWkVST19QQURERURfREFURSwgImludmFsaWQgYXV0aG9yL2NvbW1pdHRlciBsaW5lIC0gemVyby1wYWRkZWQgZGF0ZSIpOworCQlyZXR1cm4gcmVwb3J0KG9wdGlvbnMsIG9pZCwgdHlwZSwgRlNDS19NU0dfWkVST19QQURERURfREFURSwgImludmFsaWQgYXV0aG9yL2NvbW1pdHRlciBsaW5lIC0gemVyby1wYWRkZWQgZGF0ZSIpOwogCWlmIChkYXRlX292ZXJmbG93cyhwYXJzZV90aW1lc3RhbXAocCwgJmVuZCwgMTApKSkKLQkJcmV0dXJuIHJlcG9ydChvcHRpb25zLCBvYmosIEZTQ0tfTVNHX0JBRF9EQVRFX09WRVJGTE9XLCAiaW52YWxpZCBhdXRob3IvY29tbWl0dGVyIGxpbmUgLSBkYXRlIGNhdXNlcyBpbnRlZ2VyIG92ZXJmbG93Iik7CisJCXJldHVybiByZXBvcnQob3B0aW9ucywgb2lkLCB0eXBlLCBGU0NLX01TR19CQURfREFURV9PVkVSRkxPVywgImludmFsaWQgYXV0aG9yL2NvbW1pdHRlciBsaW5lIC0gZGF0ZSBjYXVzZXMgaW50ZWdlciBvdmVyZmxvdyIpOwogCWlmICgoZW5kID09IHAgfHwgKmVuZCAhPSAnICcpKQotCQlyZXR1cm4gcmVwb3J0KG9wdGlvbnMsIG9iaiwgRlNDS19NU0dfQkFEX0RBVEUsICJpbnZhbGlkIGF1dGhvci9jb21taXR0ZXIgbGluZSAtIGJhZCBkYXRlIik7CisJCXJldHVybiByZXBvcnQob3B0aW9ucywgb2lkLCB0eXBlLCBGU0NLX01TR19CQURfREFURSwgImludmFsaWQgYXV0aG9yL2NvbW1pdHRlciBsaW5lIC0gYmFkIGRhdGUiKTsKIAlwID0gZW5kICsgMTsKIAlpZiAoKCpwICE9ICcrJyAmJiAqcCAhPSAnLScpIHx8CiAJICAgICFpc2RpZ2l0KHBbMV0pIHx8CkBAIC03ODIsODMgKzc3Niw2MCBAQAogCSAgICAhaXNkaWdpdChwWzNdKSB8fAogCSAgICAhaXNkaWdpdChwWzRdKSB8fAogCSAgICAocFs1XSAhPSAnXG4nKSkKLQkJcmV0dXJuIHJlcG9ydChvcHRpb25zLCBvYmosIEZTQ0tfTVNHX0JBRF9USU1FWk9ORSwgImludmFsaWQgYXV0aG9yL2NvbW1pdHRlciBsaW5lIC0gYmFkIHRpbWUgem9uZSIpOworCQlyZXR1cm4gcmVwb3J0KG9wdGlvbnMsIG9pZCwgdHlwZSwgRlNDS19NU0dfQkFEX1RJTUVaT05FLCAiaW52YWxpZCBhdXRob3IvY29tbWl0dGVyIGxpbmUgLSBiYWQgdGltZSB6b25lIik7CiAJcCArPSA2OwogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGZzY2tfY29tbWl0X2J1ZmZlcihzdHJ1Y3QgY29tbWl0ICpjb21taXQsIGNvbnN0IGNoYXIgKmJ1ZmZlciwKLQl1bnNpZ25lZCBsb25nIHNpemUsIHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdGlvbnMpCitzdGF0aWMgaW50IGZzY2tfY29tbWl0KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJICAgICAgIGNvbnN0IGNoYXIgKmJ1ZmZlciwgdW5zaWduZWQgbG9uZyBzaXplLAorCQkgICAgICAgc3RydWN0IGZzY2tfb3B0aW9ucyAqb3B0aW9ucykKIHsKLQlzdHJ1Y3Qgb2JqZWN0X2lkIHRyZWVfb2lkLCBvaWQ7Ci0Jc3RydWN0IGNvbW1pdF9ncmFmdCAqZ3JhZnQ7Ci0JdW5zaWduZWQgcGFyZW50X2NvdW50LCBwYXJlbnRfbGluZV9jb3VudCA9IDAsIGF1dGhvcl9jb3VudDsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIHRyZWVfb2lkLCBwYXJlbnRfb2lkOworCXVuc2lnbmVkIGF1dGhvcl9jb3VudDsKIAlpbnQgZXJyOwogCWNvbnN0IGNoYXIgKmJ1ZmZlcl9iZWdpbiA9IGJ1ZmZlcjsKIAljb25zdCBjaGFyICpwOwogCi0JaWYgKHZlcmlmeV9oZWFkZXJzKGJ1ZmZlciwgc2l6ZSwgJmNvbW1pdC0+b2JqZWN0LCBvcHRpb25zKSkKKwlpZiAodmVyaWZ5X2hlYWRlcnMoYnVmZmVyLCBzaXplLCBvaWQsIE9CSl9DT01NSVQsIG9wdGlvbnMpKQogCQlyZXR1cm4gLTE7CiAKIAlpZiAoIXNraXBfcHJlZml4KGJ1ZmZlciwgInRyZWUgIiwgJmJ1ZmZlcikpCi0JCXJldHVybiByZXBvcnQob3B0aW9ucywgJmNvbW1pdC0+b2JqZWN0LCBGU0NLX01TR19NSVNTSU5HX1RSRUUsICJpbnZhbGlkIGZvcm1hdCAtIGV4cGVjdGVkICd0cmVlJyBsaW5lIik7CisJCXJldHVybiByZXBvcnQob3B0aW9ucywgb2lkLCBPQkpfQ09NTUlULCBGU0NLX01TR19NSVNTSU5HX1RSRUUsICJpbnZhbGlkIGZvcm1hdCAtIGV4cGVjdGVkICd0cmVlJyBsaW5lIik7CiAJaWYgKHBhcnNlX29pZF9oZXgoYnVmZmVyLCAmdHJlZV9vaWQsICZwKSB8fCAqcCAhPSAnXG4nKSB7Ci0JCWVyciA9IHJlcG9ydChvcHRpb25zLCAmY29tbWl0LT5vYmplY3QsIEZTQ0tfTVNHX0JBRF9UUkVFX1NIQTEsICJpbnZhbGlkICd0cmVlJyBsaW5lIGZvcm1hdCAtIGJhZCBzaGExIik7CisJCWVyciA9IHJlcG9ydChvcHRpb25zLCBvaWQsIE9CSl9DT01NSVQsIEZTQ0tfTVNHX0JBRF9UUkVFX1NIQTEsICJpbnZhbGlkICd0cmVlJyBsaW5lIGZvcm1hdCAtIGJhZCBzaGExIik7CiAJCWlmIChlcnIpCiAJCQlyZXR1cm4gZXJyOwogCX0KIAlidWZmZXIgPSBwICsgMTsKIAl3aGlsZSAoc2tpcF9wcmVmaXgoYnVmZmVyLCAicGFyZW50ICIsICZidWZmZXIpKSB7Ci0JCWlmIChwYXJzZV9vaWRfaGV4KGJ1ZmZlciwgJm9pZCwgJnApIHx8ICpwICE9ICdcbicpIHsKLQkJCWVyciA9IHJlcG9ydChvcHRpb25zLCAmY29tbWl0LT5vYmplY3QsIEZTQ0tfTVNHX0JBRF9QQVJFTlRfU0hBMSwgImludmFsaWQgJ3BhcmVudCcgbGluZSBmb3JtYXQgLSBiYWQgc2hhMSIpOworCQlpZiAocGFyc2Vfb2lkX2hleChidWZmZXIsICZwYXJlbnRfb2lkLCAmcCkgfHwgKnAgIT0gJ1xuJykgeworCQkJZXJyID0gcmVwb3J0KG9wdGlvbnMsIG9pZCwgT0JKX0NPTU1JVCwgRlNDS19NU0dfQkFEX1BBUkVOVF9TSEExLCAiaW52YWxpZCAncGFyZW50JyBsaW5lIGZvcm1hdCAtIGJhZCBzaGExIik7CiAJCQlpZiAoZXJyKQogCQkJCXJldHVybiBlcnI7CiAJCX0KIAkJYnVmZmVyID0gcCArIDE7Ci0JCXBhcmVudF9saW5lX2NvdW50Kys7Ci0JfQotCWdyYWZ0ID0gbG9va3VwX2NvbW1pdF9ncmFmdCh0aGVfcmVwb3NpdG9yeSwgJmNvbW1pdC0+b2JqZWN0Lm9pZCk7Ci0JcGFyZW50X2NvdW50ID0gY29tbWl0X2xpc3RfY291bnQoY29tbWl0LT5wYXJlbnRzKTsKLQlpZiAoZ3JhZnQpIHsKLQkJaWYgKGdyYWZ0LT5ucl9wYXJlbnQgPT0gLTEgJiYgIXBhcmVudF9jb3VudCkKLQkJCTsgLyogc2hhbGxvdyBjb21taXQgKi8KLQkJZWxzZSBpZiAoZ3JhZnQtPm5yX3BhcmVudCAhPSBwYXJlbnRfY291bnQpIHsKLQkJCWVyciA9IHJlcG9ydChvcHRpb25zLCAmY29tbWl0LT5vYmplY3QsIEZTQ0tfTVNHX01JU1NJTkdfR1JBRlQsICJncmFmdCBvYmplY3RzIG1pc3NpbmciKTsKLQkJCWlmIChlcnIpCi0JCQkJcmV0dXJuIGVycjsKLQkJfQotCX0gZWxzZSB7Ci0JCWlmIChwYXJlbnRfY291bnQgIT0gcGFyZW50X2xpbmVfY291bnQpIHsKLQkJCWVyciA9IHJlcG9ydChvcHRpb25zLCAmY29tbWl0LT5vYmplY3QsIEZTQ0tfTVNHX01JU1NJTkdfUEFSRU5ULCAicGFyZW50IG9iamVjdHMgbWlzc2luZyIpOwotCQkJaWYgKGVycikKLQkJCQlyZXR1cm4gZXJyOwotCQl9CiAJfQogCWF1dGhvcl9jb3VudCA9IDA7CiAJd2hpbGUgKHNraXBfcHJlZml4KGJ1ZmZlciwgImF1dGhvciAiLCAmYnVmZmVyKSkgewogCQlhdXRob3JfY291bnQrKzsKLQkJZXJyID0gZnNja19pZGVudCgmYnVmZmVyLCAmY29tbWl0LT5vYmplY3QsIG9wdGlvbnMpOworCQllcnIgPSBmc2NrX2lkZW50KCZidWZmZXIsIG9pZCwgT0JKX0NPTU1JVCwgb3B0aW9ucyk7CiAJCWlmIChlcnIpCiAJCQlyZXR1cm4gZXJyOwogCX0KIAlpZiAoYXV0aG9yX2NvdW50IDwgMSkKLQkJZXJyID0gcmVwb3J0KG9wdGlvbnMsICZjb21taXQtPm9iamVjdCwgRlNDS19NU0dfTUlTU0lOR19BVVRIT1IsICJpbnZhbGlkIGZvcm1hdCAtIGV4cGVjdGVkICdhdXRob3InIGxpbmUiKTsKKwkJZXJyID0gcmVwb3J0KG9wdGlvbnMsIG9pZCwgT0JKX0NPTU1JVCwgRlNDS19NU0dfTUlTU0lOR19BVVRIT1IsICJpbnZhbGlkIGZvcm1hdCAtIGV4cGVjdGVkICdhdXRob3InIGxpbmUiKTsKIAllbHNlIGlmIChhdXRob3JfY291bnQgPiAxKQotCQllcnIgPSByZXBvcnQob3B0aW9ucywgJmNvbW1pdC0+b2JqZWN0LCBGU0NLX01TR19NVUxUSVBMRV9BVVRIT1JTLCAiaW52YWxpZCBmb3JtYXQgLSBtdWx0aXBsZSAnYXV0aG9yJyBsaW5lcyIpOworCQllcnIgPSByZXBvcnQob3B0aW9ucywgb2lkLCBPQkpfQ09NTUlULCBGU0NLX01TR19NVUxUSVBMRV9BVVRIT1JTLCAiaW52YWxpZCBmb3JtYXQgLSBtdWx0aXBsZSAnYXV0aG9yJyBsaW5lcyIpOwogCWlmIChlcnIpCiAJCXJldHVybiBlcnI7CiAJaWYgKCFza2lwX3ByZWZpeChidWZmZXIsICJjb21taXR0ZXIgIiwgJmJ1ZmZlcikpCi0JCXJldHVybiByZXBvcnQob3B0aW9ucywgJmNvbW1pdC0+b2JqZWN0LCBGU0NLX01TR19NSVNTSU5HX0NPTU1JVFRFUiwgImludmFsaWQgZm9ybWF0IC0gZXhwZWN0ZWQgJ2NvbW1pdHRlcicgbGluZSIpOwotCWVyciA9IGZzY2tfaWRlbnQoJmJ1ZmZlciwgJmNvbW1pdC0+b2JqZWN0LCBvcHRpb25zKTsKKwkJcmV0dXJuIHJlcG9ydChvcHRpb25zLCBvaWQsIE9CSl9DT01NSVQsIEZTQ0tfTVNHX01JU1NJTkdfQ09NTUlUVEVSLCAiaW52YWxpZCBmb3JtYXQgLSBleHBlY3RlZCAnY29tbWl0dGVyJyBsaW5lIik7CisJZXJyID0gZnNja19pZGVudCgmYnVmZmVyLCBvaWQsIE9CSl9DT01NSVQsIG9wdGlvbnMpOwogCWlmIChlcnIpCiAJCXJldHVybiBlcnI7Ci0JaWYgKCFnZXRfY29tbWl0X3RyZWUoY29tbWl0KSkgewotCQllcnIgPSByZXBvcnQob3B0aW9ucywgJmNvbW1pdC0+b2JqZWN0LCBGU0NLX01TR19CQURfVFJFRSwgImNvdWxkIG5vdCBsb2FkIGNvbW1pdCdzIHRyZWUgJXMiLCBvaWRfdG9faGV4KCZ0cmVlX29pZCkpOwotCQlpZiAoZXJyKQotCQkJcmV0dXJuIGVycjsKLQl9CiAJaWYgKG1lbWNocihidWZmZXJfYmVnaW4sICdcMCcsIHNpemUpKSB7Ci0JCWVyciA9IHJlcG9ydChvcHRpb25zLCAmY29tbWl0LT5vYmplY3QsIEZTQ0tfTVNHX05VTF9JTl9DT01NSVQsCisJCWVyciA9IHJlcG9ydChvcHRpb25zLCBvaWQsIE9CSl9DT01NSVQsIEZTQ0tfTVNHX05VTF9JTl9DT01NSVQsCiAJCQkgICAgICJOVUwgYnl0ZSBpbiB0aGUgY29tbWl0IG9iamVjdCBib2R5Iik7CiAJCWlmIChlcnIpCiAJCQlyZXR1cm4gZXJyOwpAQCAtODY2LDkxICs4MzcsNjAgQEAKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBmc2NrX2NvbW1pdChzdHJ1Y3QgY29tbWl0ICpjb21taXQsIGNvbnN0IGNoYXIgKmRhdGEsCi0JdW5zaWduZWQgbG9uZyBzaXplLCBzdHJ1Y3QgZnNja19vcHRpb25zICpvcHRpb25zKQorc3RhdGljIGludCBmc2NrX3RhZyhjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGNvbnN0IGNoYXIgKmJ1ZmZlciwKKwkJICAgIHVuc2lnbmVkIGxvbmcgc2l6ZSwgc3RydWN0IGZzY2tfb3B0aW9ucyAqb3B0aW9ucykKIHsKLQljb25zdCBjaGFyICpidWZmZXIgPSBkYXRhID8gIGRhdGEgOiBnZXRfY29tbWl0X2J1ZmZlcihjb21taXQsICZzaXplKTsKLQlpbnQgcmV0ID0gZnNja19jb21taXRfYnVmZmVyKGNvbW1pdCwgYnVmZmVyLCBzaXplLCBvcHRpb25zKTsKLQlpZiAoIWRhdGEpCi0JCXVudXNlX2NvbW1pdF9idWZmZXIoY29tbWl0LCBidWZmZXIpOwotCXJldHVybiByZXQ7Ci19Ci0KLXN0YXRpYyBpbnQgZnNja190YWdfYnVmZmVyKHN0cnVjdCB0YWcgKnRhZywgY29uc3QgY2hhciAqZGF0YSwKLQl1bnNpZ25lZCBsb25nIHNpemUsIHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdGlvbnMpCi17Ci0Jc3RydWN0IG9iamVjdF9pZCBvaWQ7CisJc3RydWN0IG9iamVjdF9pZCB0YWdnZWRfb2lkOwogCWludCByZXQgPSAwOwotCWNvbnN0IGNoYXIgKmJ1ZmZlcjsKLQljaGFyICp0b19mcmVlID0gTlVMTCwgKmVvbDsKKwljaGFyICplb2w7CiAJc3RydWN0IHN0cmJ1ZiBzYiA9IFNUUkJVRl9JTklUOwogCWNvbnN0IGNoYXIgKnA7CiAKLQlpZiAoZGF0YSkKLQkJYnVmZmVyID0gZGF0YTsKLQllbHNlIHsKLQkJZW51bSBvYmplY3RfdHlwZSB0eXBlOwotCi0JCWJ1ZmZlciA9IHRvX2ZyZWUgPQotCQkJcmVhZF9vYmplY3RfZmlsZSgmdGFnLT5vYmplY3Qub2lkLCAmdHlwZSwgJnNpemUpOwotCQlpZiAoIWJ1ZmZlcikKLQkJCXJldHVybiByZXBvcnQob3B0aW9ucywgJnRhZy0+b2JqZWN0LAotCQkJCUZTQ0tfTVNHX01JU1NJTkdfVEFHX09CSkVDVCwKLQkJCQkiY2Fubm90IHJlYWQgdGFnIG9iamVjdCIpOwotCi0JCWlmICh0eXBlICE9IE9CSl9UQUcpIHsKLQkJCXJldCA9IHJlcG9ydChvcHRpb25zLCAmdGFnLT5vYmplY3QsCi0JCQkJRlNDS19NU0dfVEFHX09CSkVDVF9OT1RfVEFHLAotCQkJCSJleHBlY3RlZCB0YWcgZ290ICVzIiwKLQkJCSAgICB0eXBlX25hbWUodHlwZSkpOwotCQkJZ290byBkb25lOwotCQl9Ci0JfQotCi0JcmV0ID0gdmVyaWZ5X2hlYWRlcnMoYnVmZmVyLCBzaXplLCAmdGFnLT5vYmplY3QsIG9wdGlvbnMpOworCXJldCA9IHZlcmlmeV9oZWFkZXJzKGJ1ZmZlciwgc2l6ZSwgb2lkLCBPQkpfVEFHLCBvcHRpb25zKTsKIAlpZiAocmV0KQogCQlnb3RvIGRvbmU7CiAKIAlpZiAoIXNraXBfcHJlZml4KGJ1ZmZlciwgIm9iamVjdCAiLCAmYnVmZmVyKSkgewotCQlyZXQgPSByZXBvcnQob3B0aW9ucywgJnRhZy0+b2JqZWN0LCBGU0NLX01TR19NSVNTSU5HX09CSkVDVCwgImludmFsaWQgZm9ybWF0IC0gZXhwZWN0ZWQgJ29iamVjdCcgbGluZSIpOworCQlyZXQgPSByZXBvcnQob3B0aW9ucywgb2lkLCBPQkpfVEFHLCBGU0NLX01TR19NSVNTSU5HX09CSkVDVCwgImludmFsaWQgZm9ybWF0IC0gZXhwZWN0ZWQgJ29iamVjdCcgbGluZSIpOwogCQlnb3RvIGRvbmU7CiAJfQotCWlmIChwYXJzZV9vaWRfaGV4KGJ1ZmZlciwgJm9pZCwgJnApIHx8ICpwICE9ICdcbicpIHsKLQkJcmV0ID0gcmVwb3J0KG9wdGlvbnMsICZ0YWctPm9iamVjdCwgRlNDS19NU0dfQkFEX09CSkVDVF9TSEExLCAiaW52YWxpZCAnb2JqZWN0JyBsaW5lIGZvcm1hdCAtIGJhZCBzaGExIik7CisJaWYgKHBhcnNlX29pZF9oZXgoYnVmZmVyLCAmdGFnZ2VkX29pZCwgJnApIHx8ICpwICE9ICdcbicpIHsKKwkJcmV0ID0gcmVwb3J0KG9wdGlvbnMsIG9pZCwgT0JKX1RBRywgRlNDS19NU0dfQkFEX09CSkVDVF9TSEExLCAiaW52YWxpZCAnb2JqZWN0JyBsaW5lIGZvcm1hdCAtIGJhZCBzaGExIik7CiAJCWlmIChyZXQpCiAJCQlnb3RvIGRvbmU7CiAJfQogCWJ1ZmZlciA9IHAgKyAxOwogCiAJaWYgKCFza2lwX3ByZWZpeChidWZmZXIsICJ0eXBlICIsICZidWZmZXIpKSB7Ci0JCXJldCA9IHJlcG9ydChvcHRpb25zLCAmdGFnLT5vYmplY3QsIEZTQ0tfTVNHX01JU1NJTkdfVFlQRV9FTlRSWSwgImludmFsaWQgZm9ybWF0IC0gZXhwZWN0ZWQgJ3R5cGUnIGxpbmUiKTsKKwkJcmV0ID0gcmVwb3J0KG9wdGlvbnMsIG9pZCwgT0JKX1RBRywgRlNDS19NU0dfTUlTU0lOR19UWVBFX0VOVFJZLCAiaW52YWxpZCBmb3JtYXQgLSBleHBlY3RlZCAndHlwZScgbGluZSIpOwogCQlnb3RvIGRvbmU7CiAJfQogCWVvbCA9IHN0cmNocihidWZmZXIsICdcbicpOwogCWlmICghZW9sKSB7Ci0JCXJldCA9IHJlcG9ydChvcHRpb25zLCAmdGFnLT5vYmplY3QsIEZTQ0tfTVNHX01JU1NJTkdfVFlQRSwgImludmFsaWQgZm9ybWF0IC0gdW5leHBlY3RlZCBlbmQgYWZ0ZXIgJ3R5cGUnIGxpbmUiKTsKKwkJcmV0ID0gcmVwb3J0KG9wdGlvbnMsIG9pZCwgT0JKX1RBRywgRlNDS19NU0dfTUlTU0lOR19UWVBFLCAiaW52YWxpZCBmb3JtYXQgLSB1bmV4cGVjdGVkIGVuZCBhZnRlciAndHlwZScgbGluZSIpOwogCQlnb3RvIGRvbmU7CiAJfQogCWlmICh0eXBlX2Zyb21fc3RyaW5nX2dlbnRseShidWZmZXIsIGVvbCAtIGJ1ZmZlciwgMSkgPCAwKQotCQlyZXQgPSByZXBvcnQob3B0aW9ucywgJnRhZy0+b2JqZWN0LCBGU0NLX01TR19CQURfVFlQRSwgImludmFsaWQgJ3R5cGUnIHZhbHVlIik7CisJCXJldCA9IHJlcG9ydChvcHRpb25zLCBvaWQsIE9CSl9UQUcsIEZTQ0tfTVNHX0JBRF9UWVBFLCAiaW52YWxpZCAndHlwZScgdmFsdWUiKTsKIAlpZiAocmV0KQogCQlnb3RvIGRvbmU7CiAJYnVmZmVyID0gZW9sICsgMTsKIAogCWlmICghc2tpcF9wcmVmaXgoYnVmZmVyLCAidGFnICIsICZidWZmZXIpKSB7Ci0JCXJldCA9IHJlcG9ydChvcHRpb25zLCAmdGFnLT5vYmplY3QsIEZTQ0tfTVNHX01JU1NJTkdfVEFHX0VOVFJZLCAiaW52YWxpZCBmb3JtYXQgLSBleHBlY3RlZCAndGFnJyBsaW5lIik7CisJCXJldCA9IHJlcG9ydChvcHRpb25zLCBvaWQsIE9CSl9UQUcsIEZTQ0tfTVNHX01JU1NJTkdfVEFHX0VOVFJZLCAiaW52YWxpZCBmb3JtYXQgLSBleHBlY3RlZCAndGFnJyBsaW5lIik7CiAJCWdvdG8gZG9uZTsKIAl9CiAJZW9sID0gc3RyY2hyKGJ1ZmZlciwgJ1xuJyk7CiAJaWYgKCFlb2wpIHsKLQkJcmV0ID0gcmVwb3J0KG9wdGlvbnMsICZ0YWctPm9iamVjdCwgRlNDS19NU0dfTUlTU0lOR19UQUcsICJpbnZhbGlkIGZvcm1hdCAtIHVuZXhwZWN0ZWQgZW5kIGFmdGVyICd0eXBlJyBsaW5lIik7CisJCXJldCA9IHJlcG9ydChvcHRpb25zLCBvaWQsIE9CSl9UQUcsIEZTQ0tfTVNHX01JU1NJTkdfVEFHLCAiaW52YWxpZCBmb3JtYXQgLSB1bmV4cGVjdGVkIGVuZCBhZnRlciAndHlwZScgbGluZSIpOwogCQlnb3RvIGRvbmU7CiAJfQogCXN0cmJ1Zl9hZGRmKCZzYiwgInJlZnMvdGFncy8lLipzIiwgKGludCkoZW9sIC0gYnVmZmVyKSwgYnVmZmVyKTsKIAlpZiAoY2hlY2tfcmVmbmFtZV9mb3JtYXQoc2IuYnVmLCAwKSkgewotCQlyZXQgPSByZXBvcnQob3B0aW9ucywgJnRhZy0+b2JqZWN0LCBGU0NLX01TR19CQURfVEFHX05BTUUsCi0JCQkgICAiaW52YWxpZCAndGFnJyBuYW1lOiAlLipzIiwKLQkJCSAgIChpbnQpKGVvbCAtIGJ1ZmZlciksIGJ1ZmZlcik7CisJCXJldCA9IHJlcG9ydChvcHRpb25zLCBvaWQsIE9CSl9UQUcsCisJCQkgICAgIEZTQ0tfTVNHX0JBRF9UQUdfTkFNRSwKKwkJCSAgICAgImludmFsaWQgJ3RhZycgbmFtZTogJS4qcyIsCisJCQkgICAgIChpbnQpKGVvbCAtIGJ1ZmZlciksIGJ1ZmZlcik7CiAJCWlmIChyZXQpCiAJCQlnb3RvIGRvbmU7CiAJfQpAQCAtOTU4LDMyICs4OTgsMjAgQEAKIAogCWlmICghc2tpcF9wcmVmaXgoYnVmZmVyLCAidGFnZ2VyICIsICZidWZmZXIpKSB7CiAJCS8qIGVhcmx5IHRhZ3MgZG8gbm90IGNvbnRhaW4gJ3RhZ2dlcicgbGluZXM7IHdhcm4gb25seSAqLwotCQlyZXQgPSByZXBvcnQob3B0aW9ucywgJnRhZy0+b2JqZWN0LCBGU0NLX01TR19NSVNTSU5HX1RBR0dFUl9FTlRSWSwgImludmFsaWQgZm9ybWF0IC0gZXhwZWN0ZWQgJ3RhZ2dlcicgbGluZSIpOworCQlyZXQgPSByZXBvcnQob3B0aW9ucywgb2lkLCBPQkpfVEFHLCBGU0NLX01TR19NSVNTSU5HX1RBR0dFUl9FTlRSWSwgImludmFsaWQgZm9ybWF0IC0gZXhwZWN0ZWQgJ3RhZ2dlcicgbGluZSIpOwogCQlpZiAocmV0KQogCQkJZ290byBkb25lOwogCX0KIAllbHNlCi0JCXJldCA9IGZzY2tfaWRlbnQoJmJ1ZmZlciwgJnRhZy0+b2JqZWN0LCBvcHRpb25zKTsKKwkJcmV0ID0gZnNja19pZGVudCgmYnVmZmVyLCBvaWQsIE9CSl9UQUcsIG9wdGlvbnMpOwogCiBkb25lOgogCXN0cmJ1Zl9yZWxlYXNlKCZzYik7Ci0JZnJlZSh0b19mcmVlKTsKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IGZzY2tfdGFnKHN0cnVjdCB0YWcgKnRhZywgY29uc3QgY2hhciAqZGF0YSwKLQl1bnNpZ25lZCBsb25nIHNpemUsIHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdGlvbnMpCi17Ci0Jc3RydWN0IG9iamVjdCAqdGFnZ2VkID0gdGFnLT50YWdnZWQ7Ci0KLQlpZiAoIXRhZ2dlZCkKLQkJcmV0dXJuIHJlcG9ydChvcHRpb25zLCAmdGFnLT5vYmplY3QsIEZTQ0tfTVNHX0JBRF9UQUdfT0JKRUNULCAiY291bGQgbm90IGxvYWQgdGFnZ2VkIG9iamVjdCIpOwotCi0JcmV0dXJuIGZzY2tfdGFnX2J1ZmZlcih0YWcsIGRhdGEsIHNpemUsIG9wdGlvbnMpOwotfQotCiBzdHJ1Y3QgZnNja19naXRtb2R1bGVzX2RhdGEgewotCXN0cnVjdCBvYmplY3QgKm9iajsKKwljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQ7CiAJc3RydWN0IGZzY2tfb3B0aW9ucyAqb3B0aW9uczsKIAlpbnQgcmV0OwogfTsKQEAgLTEwMDEsMjUgKzkyOSwyOCBAQAogCiAJbmFtZSA9IHhtZW1kdXB6KHN1YnNlY3Rpb24sIHN1YnNlY3Rpb25fbGVuKTsKIAlpZiAoY2hlY2tfc3VibW9kdWxlX25hbWUobmFtZSkgPCAwKQotCQlkYXRhLT5yZXQgfD0gcmVwb3J0KGRhdGEtPm9wdGlvbnMsIGRhdGEtPm9iaiwKKwkJZGF0YS0+cmV0IHw9IHJlcG9ydChkYXRhLT5vcHRpb25zLAorCQkJCSAgICBkYXRhLT5vaWQsIE9CSl9CTE9CLAogCQkJCSAgICBGU0NLX01TR19HSVRNT0RVTEVTX05BTUUsCiAJCQkJICAgICJkaXNhbGxvd2VkIHN1Ym1vZHVsZSBuYW1lOiAlcyIsCiAJCQkJICAgIG5hbWUpOwogCWlmICghc3RyY21wKGtleSwgInVybCIpICYmIHZhbHVlICYmCiAJICAgIGxvb2tzX2xpa2VfY29tbWFuZF9saW5lX29wdGlvbih2YWx1ZSkpCi0JCWRhdGEtPnJldCB8PSByZXBvcnQoZGF0YS0+b3B0aW9ucywgZGF0YS0+b2JqLAorCQlkYXRhLT5yZXQgfD0gcmVwb3J0KGRhdGEtPm9wdGlvbnMsCisJCQkJICAgIGRhdGEtPm9pZCwgT0JKX0JMT0IsCiAJCQkJICAgIEZTQ0tfTVNHX0dJVE1PRFVMRVNfVVJMLAogCQkJCSAgICAiZGlzYWxsb3dlZCBzdWJtb2R1bGUgdXJsOiAlcyIsCiAJCQkJICAgIHZhbHVlKTsKIAlpZiAoIXN0cmNtcChrZXksICJwYXRoIikgJiYgdmFsdWUgJiYKIAkgICAgbG9va3NfbGlrZV9jb21tYW5kX2xpbmVfb3B0aW9uKHZhbHVlKSkKLQkJZGF0YS0+cmV0IHw9IHJlcG9ydChkYXRhLT5vcHRpb25zLCBkYXRhLT5vYmosCisJCWRhdGEtPnJldCB8PSByZXBvcnQoZGF0YS0+b3B0aW9ucywKKwkJCQkgICAgZGF0YS0+b2lkLCBPQkpfQkxPQiwKIAkJCQkgICAgRlNDS19NU0dfR0lUTU9EVUxFU19QQVRILAogCQkJCSAgICAiZGlzYWxsb3dlZCBzdWJtb2R1bGUgcGF0aDogJXMiLAogCQkJCSAgICB2YWx1ZSk7CiAJaWYgKCFzdHJjbXAoa2V5LCAidXBkYXRlIikgJiYgdmFsdWUgJiYKIAkgICAgcGFyc2Vfc3VibW9kdWxlX3VwZGF0ZV90eXBlKHZhbHVlKSA9PSBTTV9VUERBVEVfQ09NTUFORCkKLQkJZGF0YS0+cmV0IHw9IHJlcG9ydChkYXRhLT5vcHRpb25zLCBkYXRhLT5vYmosCisJCWRhdGEtPnJldCB8PSByZXBvcnQoZGF0YS0+b3B0aW9ucywgZGF0YS0+b2lkLCBPQkpfQkxPQiwKIAkJCQkgICAgRlNDS19NU0dfR0lUTU9EVUxFU19VUERBVEUsCiAJCQkJICAgICJkaXNhbGxvd2VkIHN1Ym1vZHVsZSB1cGRhdGUgc2V0dGluZzogJXMiLAogCQkJCSAgICB2YWx1ZSk7CkBAIC0xMDI4LDE3ICs5NTksMTcgQEAKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBmc2NrX2Jsb2Ioc3RydWN0IGJsb2IgKmJsb2IsIGNvbnN0IGNoYXIgKmJ1ZiwKK3N0YXRpYyBpbnQgZnNja19ibG9iKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY29uc3QgY2hhciAqYnVmLAogCQkgICAgIHVuc2lnbmVkIGxvbmcgc2l6ZSwgc3RydWN0IGZzY2tfb3B0aW9ucyAqb3B0aW9ucykKIHsKIAlzdHJ1Y3QgZnNja19naXRtb2R1bGVzX2RhdGEgZGF0YTsKIAlzdHJ1Y3QgY29uZmlnX29wdGlvbnMgY29uZmlnX29wdHMgPSB7IDAgfTsKIAotCWlmICghb2lkc2V0X2NvbnRhaW5zKCZnaXRtb2R1bGVzX2ZvdW5kLCAmYmxvYi0+b2JqZWN0Lm9pZCkpCisJaWYgKCFvaWRzZXRfY29udGFpbnMoJmdpdG1vZHVsZXNfZm91bmQsIG9pZCkpCiAJCXJldHVybiAwOwotCW9pZHNldF9pbnNlcnQoJmdpdG1vZHVsZXNfZG9uZSwgJmJsb2ItPm9iamVjdC5vaWQpOworCW9pZHNldF9pbnNlcnQoJmdpdG1vZHVsZXNfZG9uZSwgb2lkKTsKIAotCWlmIChvYmplY3Rfb25fc2tpcGxpc3Qob3B0aW9ucywgJmJsb2ItPm9iamVjdCkpCisJaWYgKG9iamVjdF9vbl9za2lwbGlzdChvcHRpb25zLCBvaWQpKQogCQlyZXR1cm4gMDsKIAogCWlmICghYnVmKSB7CkBAIC0xMDQ3LDE4ICs5NzgsMTggQEAKIAkJICogYmxvYiB0b28gZ2lnYW50aWMgdG8gbG9hZCBpbnRvIG1lbW9yeS4gTGV0J3MganVzdCBjb25zaWRlcgogCQkgKiB0aGF0IGFuIGVycm9yLgogCQkgKi8KLQkJcmV0dXJuIHJlcG9ydChvcHRpb25zLCAmYmxvYi0+b2JqZWN0LAorCQlyZXR1cm4gcmVwb3J0KG9wdGlvbnMsIG9pZCwgT0JKX0JMT0IsCiAJCQkgICAgICBGU0NLX01TR19HSVRNT0RVTEVTX0xBUkdFLAogCQkJICAgICAgIi5naXRtb2R1bGVzIHRvbyBsYXJnZSB0byBwYXJzZSIpOwogCX0KIAotCWRhdGEub2JqID0gJmJsb2ItPm9iamVjdDsKKwlkYXRhLm9pZCA9IG9pZDsKIAlkYXRhLm9wdGlvbnMgPSBvcHRpb25zOwogCWRhdGEucmV0ID0gMDsKIAljb25maWdfb3B0cy5lcnJvcl9hY3Rpb24gPSBDT05GSUdfRVJST1JfU0lMRU5UOwogCWlmIChnaXRfY29uZmlnX2Zyb21fbWVtKGZzY2tfZ2l0bW9kdWxlc19mbiwgQ09ORklHX09SSUdJTl9CTE9CLAogCQkJCSIuZ2l0bW9kdWxlcyIsIGJ1Ziwgc2l6ZSwgJmRhdGEsICZjb25maWdfb3B0cykpCi0JCWRhdGEucmV0IHw9IHJlcG9ydChvcHRpb25zLCAmYmxvYi0+b2JqZWN0LAorCQlkYXRhLnJldCB8PSByZXBvcnQob3B0aW9ucywgb2lkLCBPQkpfQkxPQiwKIAkJCQkgICBGU0NLX01TR19HSVRNT0RVTEVTX1BBUlNFLAogCQkJCSAgICJjb3VsZCBub3QgcGFyc2UgZ2l0bW9kdWxlcyBibG9iIik7CiAKQEAgLTEwNjksMzEgKzEwMDAsMzMgQEAKIAlzdHJ1Y3QgZnNja19vcHRpb25zICpvcHRpb25zKQogewogCWlmICghb2JqKQotCQlyZXR1cm4gcmVwb3J0KG9wdGlvbnMsIG9iaiwgRlNDS19NU0dfQkFEX09CSkVDVF9TSEExLCAibm8gdmFsaWQgb2JqZWN0IHRvIGZzY2siKTsKKwkJcmV0dXJuIHJlcG9ydChvcHRpb25zLCBOVUxMLCBPQkpfTk9ORSwgRlNDS19NU0dfQkFEX09CSkVDVF9TSEExLCAibm8gdmFsaWQgb2JqZWN0IHRvIGZzY2siKTsKIAogCWlmIChvYmotPnR5cGUgPT0gT0JKX0JMT0IpCi0JCXJldHVybiBmc2NrX2Jsb2IoKHN0cnVjdCBibG9iICopb2JqLCBkYXRhLCBzaXplLCBvcHRpb25zKTsKKwkJcmV0dXJuIGZzY2tfYmxvYigmb2JqLT5vaWQsIGRhdGEsIHNpemUsIG9wdGlvbnMpOwogCWlmIChvYmotPnR5cGUgPT0gT0JKX1RSRUUpCi0JCXJldHVybiBmc2NrX3RyZWUoKHN0cnVjdCB0cmVlICopIG9iaiwgb3B0aW9ucyk7CisJCXJldHVybiBmc2NrX3RyZWUoJm9iai0+b2lkLCBkYXRhLCBzaXplLCBvcHRpb25zKTsKIAlpZiAob2JqLT50eXBlID09IE9CSl9DT01NSVQpCi0JCXJldHVybiBmc2NrX2NvbW1pdCgoc3RydWN0IGNvbW1pdCAqKSBvYmosIChjb25zdCBjaGFyICopIGRhdGEsCi0JCQlzaXplLCBvcHRpb25zKTsKKwkJcmV0dXJuIGZzY2tfY29tbWl0KCZvYmotPm9pZCwgZGF0YSwgc2l6ZSwgb3B0aW9ucyk7CiAJaWYgKG9iai0+dHlwZSA9PSBPQkpfVEFHKQotCQlyZXR1cm4gZnNja190YWcoKHN0cnVjdCB0YWcgKikgb2JqLCAoY29uc3QgY2hhciAqKSBkYXRhLAotCQkJc2l6ZSwgb3B0aW9ucyk7CisJCXJldHVybiBmc2NrX3RhZygmb2JqLT5vaWQsIGRhdGEsIHNpemUsIG9wdGlvbnMpOwogCi0JcmV0dXJuIHJlcG9ydChvcHRpb25zLCBvYmosIEZTQ0tfTVNHX1VOS05PV05fVFlQRSwgInVua25vd24gdHlwZSAnJWQnIChpbnRlcm5hbCBmc2NrIGVycm9yKSIsCi0JCQkgIG9iai0+dHlwZSk7CisJcmV0dXJuIHJlcG9ydChvcHRpb25zLCAmb2JqLT5vaWQsIG9iai0+dHlwZSwKKwkJICAgICAgRlNDS19NU0dfVU5LTk9XTl9UWVBFLAorCQkgICAgICAidW5rbm93biB0eXBlICclZCcgKGludGVybmFsIGZzY2sgZXJyb3IpIiwKKwkJICAgICAgb2JqLT50eXBlKTsKIH0KIAogaW50IGZzY2tfZXJyb3JfZnVuY3Rpb24oc3RydWN0IGZzY2tfb3B0aW9ucyAqbywKLQlzdHJ1Y3Qgb2JqZWN0ICpvYmosIGludCBtc2dfdHlwZSwgY29uc3QgY2hhciAqbWVzc2FnZSkKKwkJCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCWVudW0gb2JqZWN0X3R5cGUgb2JqZWN0X3R5cGUsCisJCQlpbnQgbXNnX3R5cGUsIGNvbnN0IGNoYXIgKm1lc3NhZ2UpCiB7CiAJaWYgKG1zZ190eXBlID09IEZTQ0tfV0FSTikgewotCQl3YXJuaW5nKCJvYmplY3QgJXM6ICVzIiwgZGVzY3JpYmVfb2JqZWN0KG8sIG9iaiksIG1lc3NhZ2UpOworCQl3YXJuaW5nKCJvYmplY3QgJXM6ICVzIiwgZnNja19kZXNjcmliZV9vYmplY3Qobywgb2lkKSwgbWVzc2FnZSk7CiAJCXJldHVybiAwOwogCX0KLQllcnJvcigib2JqZWN0ICVzOiAlcyIsIGRlc2NyaWJlX29iamVjdChvLCBvYmopLCBtZXNzYWdlKTsKKwllcnJvcigib2JqZWN0ICVzOiAlcyIsIGZzY2tfZGVzY3JpYmVfb2JqZWN0KG8sIG9pZCksIG1lc3NhZ2UpOwogCXJldHVybiAxOwogfQogCkBAIC0xMTA1LDcgKzEwMzgsNiBAQAogCiAJb2lkc2V0X2l0ZXJfaW5pdCgmZ2l0bW9kdWxlc19mb3VuZCwgJml0ZXIpOwogCXdoaWxlICgob2lkID0gb2lkc2V0X2l0ZXJfbmV4dCgmaXRlcikpKSB7Ci0JCXN0cnVjdCBibG9iICpibG9iOwogCQllbnVtIG9iamVjdF90eXBlIHR5cGU7CiAJCXVuc2lnbmVkIGxvbmcgc2l6ZTsKIAkJY2hhciAqYnVmOwpAQCAtMTExMywyOSArMTA0NSwyMiBAQAogCQlpZiAob2lkc2V0X2NvbnRhaW5zKCZnaXRtb2R1bGVzX2RvbmUsIG9pZCkpCiAJCQljb250aW51ZTsKIAotCQlibG9iID0gbG9va3VwX2Jsb2IodGhlX3JlcG9zaXRvcnksIG9pZCk7Ci0JCWlmICghYmxvYikgewotCQkJc3RydWN0IG9iamVjdCAqb2JqID0gbG9va3VwX3Vua25vd25fb2JqZWN0KG9pZC0+aGFzaCk7Ci0JCQlyZXQgfD0gcmVwb3J0KG9wdGlvbnMsIG9iaiwKLQkJCQkgICAgICBGU0NLX01TR19HSVRNT0RVTEVTX0JMT0IsCi0JCQkJICAgICAgIm5vbi1ibG9iIGZvdW5kIGF0IC5naXRtb2R1bGVzIik7Ci0JCQljb250aW51ZTsKLQkJfQotCiAJCWJ1ZiA9IHJlYWRfb2JqZWN0X2ZpbGUob2lkLCAmdHlwZSwgJnNpemUpOwogCQlpZiAoIWJ1ZikgewotCQkJaWYgKGlzX3Byb21pc29yX29iamVjdCgmYmxvYi0+b2JqZWN0Lm9pZCkpCisJCQlpZiAoaXNfcHJvbWlzb3Jfb2JqZWN0KG9pZCkpCiAJCQkJY29udGludWU7Ci0JCQlyZXQgfD0gcmVwb3J0KG9wdGlvbnMsICZibG9iLT5vYmplY3QsCisJCQlyZXQgfD0gcmVwb3J0KG9wdGlvbnMsCisJCQkJICAgICAgb2lkLCBPQkpfQkxPQiwKIAkJCQkgICAgICBGU0NLX01TR19HSVRNT0RVTEVTX01JU1NJTkcsCiAJCQkJICAgICAgInVuYWJsZSB0byByZWFkIC5naXRtb2R1bGVzIGJsb2IiKTsKIAkJCWNvbnRpbnVlOwogCQl9CiAKIAkJaWYgKHR5cGUgPT0gT0JKX0JMT0IpCi0JCQlyZXQgfD0gZnNja19ibG9iKGJsb2IsIGJ1Ziwgc2l6ZSwgb3B0aW9ucyk7CisJCQlyZXQgfD0gZnNja19ibG9iKG9pZCwgYnVmLCBzaXplLCBvcHRpb25zKTsKIAkJZWxzZQotCQkJcmV0IHw9IHJlcG9ydChvcHRpb25zLCAmYmxvYi0+b2JqZWN0LAorCQkJcmV0IHw9IHJlcG9ydChvcHRpb25zLAorCQkJCSAgICAgIG9pZCwgdHlwZSwKIAkJCQkgICAgICBGU0NLX01TR19HSVRNT0RVTEVTX0JMT0IsCiAJCQkJICAgICAgIm5vbi1ibG9iIGZvdW5kIGF0IC5naXRtb2R1bGVzIik7CiAJCWZyZWUoYnVmKTsKZGlmZiAtLWdpdCBhL2ZzY2suaCBiL2ZzY2suaAppbmRleCBiOTU1OTVhLi42OWNmNzE1IDEwMDY0NAotLS0gYS9mc2NrLmgKKysrIGIvZnNjay5oCkBAIC0yNywxMCArMjcsMTIgQEAKIAogLyogY2FsbGJhY2sgZm9yIGZzY2tfb2JqZWN0LCB0eXBlIGlzIEZTQ0tfRVJST1Igb3IgRlNDS19XQVJOICovCiB0eXBlZGVmIGludCAoKmZzY2tfZXJyb3IpKHN0cnVjdCBmc2NrX29wdGlvbnMgKm8sCi0Jc3RydWN0IG9iamVjdCAqb2JqLCBpbnQgdHlwZSwgY29uc3QgY2hhciAqbWVzc2FnZSk7CisJCQkgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgZW51bSBvYmplY3RfdHlwZSBvYmplY3RfdHlwZSwKKwkJCSAgaW50IG1zZ190eXBlLCBjb25zdCBjaGFyICptZXNzYWdlKTsKIAogaW50IGZzY2tfZXJyb3JfZnVuY3Rpb24oc3RydWN0IGZzY2tfb3B0aW9ucyAqbywKLQlzdHJ1Y3Qgb2JqZWN0ICpvYmosIGludCB0eXBlLCBjb25zdCBjaGFyICptZXNzYWdlKTsKKwkJCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgZW51bSBvYmplY3RfdHlwZSBvYmplY3RfdHlwZSwKKwkJCWludCBtc2dfdHlwZSwgY29uc3QgY2hhciAqbWVzc2FnZSk7CiAKIHN0cnVjdCBmc2NrX29wdGlvbnMgewogCWZzY2tfd2Fsa19mdW5jIHdhbGs7CkBAIC0zOCw3ICs0MCw3IEBACiAJdW5zaWduZWQgc3RyaWN0OjE7CiAJaW50ICptc2dfdHlwZTsKIAlzdHJ1Y3Qgb2lkc2V0IHNraXBsaXN0OwotCXN0cnVjdCBkZWNvcmF0aW9uICpvYmplY3RfbmFtZXM7CisJa2hfb2lkX21hcF90ICpvYmplY3RfbmFtZXM7CiB9OwogCiAjZGVmaW5lIEZTQ0tfT1BUSU9OU19ERUZBVUxUIHsgTlVMTCwgZnNja19lcnJvcl9mdW5jdGlvbiwgMCwgTlVMTCwgT0lEU0VUX0lOSVQgfQpAQCAtNTIsNyArNTQsMTEgQEAKICAqICAgIDAJCWV2ZXJ5dGhpbmcgT0sKICAqLwogaW50IGZzY2tfd2FsayhzdHJ1Y3Qgb2JqZWN0ICpvYmosIHZvaWQgKmRhdGEsIHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdGlvbnMpOwotLyogSWYgTlVMTCBpcyBwYXNzZWQgZm9yIGRhdGEsIHdlIGFzc3VtZSB0aGUgb2JqZWN0IGlzIGxvY2FsIGFuZCByZWFkIGl0LiAqLworCisvKgorICogQmxvYiBvYmplY3RzIG15IHBhc3MgYSBOVUxMIGRhdGEgcG9pbnRlciwgd2hpY2ggaW5kaWNhdGVzIHRoZXkgYXJlIHRvbyBsYXJnZQorICogdG8gZml0IGluIG1lbW9yeS4gQWxsIG90aGVyIHR5cGVzIG11c3QgcGFzcyBhIHJlYWwgYnVmZmVyLgorICovCiBpbnQgZnNja19vYmplY3Qoc3RydWN0IG9iamVjdCAqb2JqLCB2b2lkICpkYXRhLCB1bnNpZ25lZCBsb25nIHNpemUsCiAJc3RydWN0IGZzY2tfb3B0aW9ucyAqb3B0aW9ucyk7CiAKQEAgLTYzLDQgKzY5LDI5IEBACiAgKi8KIGludCBmc2NrX2ZpbmlzaChzdHJ1Y3QgZnNja19vcHRpb25zICpvcHRpb25zKTsKIAorLyoKKyAqIFN1YnN5c3RlbSBmb3Igc3RvcmluZyBodW1hbi1yZWFkYWJsZSBuYW1lcyBmb3IgZWFjaCBvYmplY3QuCisgKgorICogSWYgZnNja19lbmFibGVfb2JqZWN0X25hbWVzKCkgaGFzIG5vdCBiZWVuIGNhbGxlZCwgYWxsIG90aGVyIGZ1bmN0aW9ucyBhcmUKKyAqIG5vb3BzLgorICoKKyAqIFVzZSBmc2NrX3B1dF9vYmplY3RfbmFtZSgpIHRvIHNlZWQgaW5pdGlhbCBuYW1lcyAoZS5nLiBmcm9tIHJlZm5hbWVzKTsgdGhlCisgKiBmc2NrIGNvZGUgd2lsbCBleHRlbmQgdGhhdCB3aGlsZSB3YWxraW5nIHRyZWVzLCBldGMuCisgKgorICogVXNlIGZzY2tfZ2V0X29iamVjdF9uYW1lKCkgdG8gZ2V0IGEgc2luZ2xlIG5hbWUgKG9yIE5VTEwgaWYgbm9uZSkuIE9yIHRoZQorICogbW9yZSBjb252ZW5pZW50IGRlc2NyaWJlX29iamVjdCgpLCB3aGljaCBhbHdheXMgcHJvZHVjZXMgYW4gb3V0cHV0IHN0cmluZworICogd2l0aCB0aGUgb2lkIGNvbWJpbmVkIHdpdGggdGhlIG5hbWUgKGlmIGFueSkuIE5vdGUgdGhhdCB0aGUgcmV0dXJuIHZhbHVlCisgKiBwb2ludHMgdG8gYSByb3RhdGluZyBhcnJheSBvZiBzdGF0aWMgYnVmZmVycywgYW5kIG1heSBiZSBpbnZhbGlkYXRlZCBieSBhCisgKiBzdWJzZXF1ZW50IGNhbGwuCisgKi8KK3ZvaWQgZnNja19lbmFibGVfb2JqZWN0X25hbWVzKHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdGlvbnMpOworY29uc3QgY2hhciAqZnNja19nZXRfb2JqZWN0X25hbWUoc3RydWN0IGZzY2tfb3B0aW9ucyAqb3B0aW9ucywKKwkJCQkgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKK19fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLDMsNCkpKQordm9pZCBmc2NrX3B1dF9vYmplY3RfbmFtZShzdHJ1Y3QgZnNja19vcHRpb25zICpvcHRpb25zLAorCQkJICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkgIGNvbnN0IGNoYXIgKmZtdCwgLi4uKTsKK2NvbnN0IGNoYXIgKmZzY2tfZGVzY3JpYmVfb2JqZWN0KHN0cnVjdCBmc2NrX29wdGlvbnMgKm9wdGlvbnMsCisJCQkJIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CisKICNlbmRpZgpkaWZmIC0tZ2l0IGEvZnNtb25pdG9yLmMgYi9mc21vbml0b3IuYwppbmRleCA2NjViZDJkLi45MzJiZDkwIDEwMDY0NAotLS0gYS9mc21vbml0b3IuYworKysgYi9mc21vbml0b3IuYwpAQCAtNiwxOSArNiw0MiBAQAogI2luY2x1ZGUgInJ1bi1jb21tYW5kLmgiCiAjaW5jbHVkZSAic3RyYnVmLmgiCiAKLSNkZWZpbmUgSU5ERVhfRVhURU5TSU9OX1ZFUlNJT04JKDEpCi0jZGVmaW5lIEhPT0tfSU5URVJGQUNFX1ZFUlNJT04JKDEpCisjZGVmaW5lIElOREVYX0VYVEVOU0lPTl9WRVJTSU9OMQkoMSkKKyNkZWZpbmUgSU5ERVhfRVhURU5TSU9OX1ZFUlNJT04yCSgyKQorI2RlZmluZSBIT09LX0lOVEVSRkFDRV9WRVJTSU9OMQkJKDEpCisjZGVmaW5lIEhPT0tfSU5URVJGQUNFX1ZFUlNJT04yCQkoMikKIAogc3RydWN0IHRyYWNlX2tleSB0cmFjZV9mc21vbml0b3IgPSBUUkFDRV9LRVlfSU5JVChGU01PTklUT1IpOwogCiBzdGF0aWMgdm9pZCBmc21vbml0b3JfZXdhaF9jYWxsYmFjayhzaXplX3QgcG9zLCB2b2lkICppcykKIHsKIAlzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSA9IChzdHJ1Y3QgaW5kZXhfc3RhdGUgKilpczsKLQlzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlID0gaXN0YXRlLT5jYWNoZVtwb3NdOworCXN0cnVjdCBjYWNoZV9lbnRyeSAqY2U7CiAKKwlpZiAocG9zID49IGlzdGF0ZS0+Y2FjaGVfbnIpCisJCUJVRygiZnNtb25pdG9yX2RpcnR5IGhhcyBtb3JlIGVudHJpZXMgdGhhbiB0aGUgaW5kZXggKCUiUFJJdU1BWCIgPj0gJXUpIiwKKwkJICAgICh1aW50bWF4X3QpcG9zLCBpc3RhdGUtPmNhY2hlX25yKTsKKworCWNlID0gaXN0YXRlLT5jYWNoZVtwb3NdOwogCWNlLT5jZV9mbGFncyAmPSB+Q0VfRlNNT05JVE9SX1ZBTElEOwogfQogCitzdGF0aWMgaW50IGZzbW9uaXRvcl9ob29rX3ZlcnNpb24odm9pZCkKK3sKKwlpbnQgaG9va192ZXJzaW9uOworCisJaWYgKGdpdF9jb25maWdfZ2V0X2ludCgiY29yZS5mc21vbml0b3Job29rdmVyc2lvbiIsICZob29rX3ZlcnNpb24pKQorCQlyZXR1cm4gLTE7CisKKwlpZiAoaG9va192ZXJzaW9uID09IEhPT0tfSU5URVJGQUNFX1ZFUlNJT04xIHx8CisJICAgIGhvb2tfdmVyc2lvbiA9PSBIT09LX0lOVEVSRkFDRV9WRVJTSU9OMikKKwkJcmV0dXJuIGhvb2tfdmVyc2lvbjsKKworCXdhcm5pbmcoIkludmFsaWQgaG9vayB2ZXJzaW9uICclaScgaW4gY29yZS5mc21vbml0b3Job29rdmVyc2lvbi4gIgorCQkiTXVzdCBiZSAxIG9yIDIuIiwgaG9va192ZXJzaW9uKTsKKwlyZXR1cm4gLTE7Cit9CisKIGludCByZWFkX2ZzbW9uaXRvcl9leHRlbnNpb24oc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIGNvbnN0IHZvaWQgKmRhdGEsCiAJdW5zaWduZWQgbG9uZyBzeikKIHsKQEAgLTI3LDE3ICs1MCwyNiBAQAogCXVpbnQzMl90IGV3YWhfc2l6ZTsKIAlzdHJ1Y3QgZXdhaF9iaXRtYXAgKmZzbW9uaXRvcl9kaXJ0eTsKIAlpbnQgcmV0OworCXVpbnQ2NF90IHRpbWVzdGFtcDsKKwlzdHJ1Y3Qgc3RyYnVmIGxhc3RfdXBkYXRlID0gU1RSQlVGX0lOSVQ7CiAKLQlpZiAoc3ogPCBzaXplb2YodWludDMyX3QpICsgc2l6ZW9mKHVpbnQ2NF90KSArIHNpemVvZih1aW50MzJfdCkpCisJaWYgKHN6IDwgc2l6ZW9mKHVpbnQzMl90KSArIDEgKyBzaXplb2YodWludDMyX3QpKQogCQlyZXR1cm4gZXJyb3IoImNvcnJ1cHQgZnNtb25pdG9yIGV4dGVuc2lvbiAodG9vIHNob3J0KSIpOwogCiAJaGRyX3ZlcnNpb24gPSBnZXRfYmUzMihpbmRleCk7CiAJaW5kZXggKz0gc2l6ZW9mKHVpbnQzMl90KTsKLQlpZiAoaGRyX3ZlcnNpb24gIT0gSU5ERVhfRVhURU5TSU9OX1ZFUlNJT04pCisJaWYgKGhkcl92ZXJzaW9uID09IElOREVYX0VYVEVOU0lPTl9WRVJTSU9OMSkgeworCQl0aW1lc3RhbXAgPSBnZXRfYmU2NChpbmRleCk7CisJCXN0cmJ1Zl9hZGRmKCZsYXN0X3VwZGF0ZSwgIiUiUFJJdTY0IiIsIHRpbWVzdGFtcCk7CisJCWluZGV4ICs9IHNpemVvZih1aW50NjRfdCk7CisJfSBlbHNlIGlmIChoZHJfdmVyc2lvbiA9PSBJTkRFWF9FWFRFTlNJT05fVkVSU0lPTjIpIHsKKwkJc3RyYnVmX2FkZHN0cigmbGFzdF91cGRhdGUsIGluZGV4KTsKKwkJaW5kZXggKz0gbGFzdF91cGRhdGUubGVuICsgMTsKKwl9IGVsc2UgewogCQlyZXR1cm4gZXJyb3IoImJhZCBmc21vbml0b3IgdmVyc2lvbiAlZCIsIGhkcl92ZXJzaW9uKTsKKwl9CiAKLQlpc3RhdGUtPmZzbW9uaXRvcl9sYXN0X3VwZGF0ZSA9IGdldF9iZTY0KGluZGV4KTsKLQlpbmRleCArPSBzaXplb2YodWludDY0X3QpOworCWlzdGF0ZS0+ZnNtb25pdG9yX2xhc3RfdXBkYXRlID0gc3RyYnVmX2RldGFjaCgmbGFzdF91cGRhdGUsIE5VTEwpOwogCiAJZXdhaF9zaXplID0gZ2V0X2JlMzIoaW5kZXgpOwogCWluZGV4ICs9IHNpemVvZih1aW50MzJfdCk7CkBAIC01MCwzMiArODIsNDUgQEAKIAl9CiAJaXN0YXRlLT5mc21vbml0b3JfZGlydHkgPSBmc21vbml0b3JfZGlydHk7CiAKKwlpZiAoIWlzdGF0ZS0+c3BsaXRfaW5kZXggJiYKKwkgICAgaXN0YXRlLT5mc21vbml0b3JfZGlydHktPmJpdF9zaXplID4gaXN0YXRlLT5jYWNoZV9ucikKKwkJQlVHKCJmc21vbml0b3JfZGlydHkgaGFzIG1vcmUgZW50cmllcyB0aGFuIHRoZSBpbmRleCAoJSJQUkl1TUFYIiA+ICV1KSIsCisJCSAgICAodWludG1heF90KWlzdGF0ZS0+ZnNtb25pdG9yX2RpcnR5LT5iaXRfc2l6ZSwgaXN0YXRlLT5jYWNoZV9ucik7CisKIAl0cmFjZV9wcmludGZfa2V5KCZ0cmFjZV9mc21vbml0b3IsICJyZWFkIGZzbW9uaXRvciBleHRlbnNpb24gc3VjY2Vzc2Z1bCIpOwogCXJldHVybiAwOwogfQogCiB2b2lkIGZpbGxfZnNtb25pdG9yX2JpdG1hcChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSkKIHsKLQlpbnQgaTsKKwl1bnNpZ25lZCBpbnQgaSwgc2tpcHBlZCA9IDA7CiAJaXN0YXRlLT5mc21vbml0b3JfZGlydHkgPSBld2FoX25ldygpOwotCWZvciAoaSA9IDA7IGkgPCBpc3RhdGUtPmNhY2hlX25yOyBpKyspCi0JCWlmICghKGlzdGF0ZS0+Y2FjaGVbaV0tPmNlX2ZsYWdzICYgQ0VfRlNNT05JVE9SX1ZBTElEKSkKLQkJCWV3YWhfc2V0KGlzdGF0ZS0+ZnNtb25pdG9yX2RpcnR5LCBpKTsKKwlmb3IgKGkgPSAwOyBpIDwgaXN0YXRlLT5jYWNoZV9ucjsgaSsrKSB7CisJCWlmIChpc3RhdGUtPmNhY2hlW2ldLT5jZV9mbGFncyAmIENFX1JFTU9WRSkKKwkJCXNraXBwZWQrKzsKKwkJZWxzZSBpZiAoIShpc3RhdGUtPmNhY2hlW2ldLT5jZV9mbGFncyAmIENFX0ZTTU9OSVRPUl9WQUxJRCkpCisJCQlld2FoX3NldChpc3RhdGUtPmZzbW9uaXRvcl9kaXJ0eSwgaSAtIHNraXBwZWQpOworCX0KIH0KIAogdm9pZCB3cml0ZV9mc21vbml0b3JfZXh0ZW5zaW9uKHN0cnVjdCBzdHJidWYgKnNiLCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSkKIHsKIAl1aW50MzJfdCBoZHJfdmVyc2lvbjsKLQl1aW50NjRfdCB0bTsKIAl1aW50MzJfdCBld2FoX3N0YXJ0OwogCXVpbnQzMl90IGV3YWhfc2l6ZSA9IDA7CiAJaW50IGZpeHVwID0gMDsKIAotCXB1dF9iZTMyKCZoZHJfdmVyc2lvbiwgSU5ERVhfRVhURU5TSU9OX1ZFUlNJT04pOworCWlmICghaXN0YXRlLT5zcGxpdF9pbmRleCAmJgorCSAgICBpc3RhdGUtPmZzbW9uaXRvcl9kaXJ0eS0+Yml0X3NpemUgPiBpc3RhdGUtPmNhY2hlX25yKQorCQlCVUcoImZzbW9uaXRvcl9kaXJ0eSBoYXMgbW9yZSBlbnRyaWVzIHRoYW4gdGhlIGluZGV4ICglIlBSSXVNQVgiID4gJXUpIiwKKwkJICAgICh1aW50bWF4X3QpaXN0YXRlLT5mc21vbml0b3JfZGlydHktPmJpdF9zaXplLCBpc3RhdGUtPmNhY2hlX25yKTsKKworCXB1dF9iZTMyKCZoZHJfdmVyc2lvbiwgSU5ERVhfRVhURU5TSU9OX1ZFUlNJT04yKTsKIAlzdHJidWZfYWRkKHNiLCAmaGRyX3ZlcnNpb24sIHNpemVvZih1aW50MzJfdCkpOwogCi0JcHV0X2JlNjQoJnRtLCBpc3RhdGUtPmZzbW9uaXRvcl9sYXN0X3VwZGF0ZSk7Ci0Jc3RyYnVmX2FkZChzYiwgJnRtLCBzaXplb2YodWludDY0X3QpKTsKKwlzdHJidWZfYWRkc3RyKHNiLCBpc3RhdGUtPmZzbW9uaXRvcl9sYXN0X3VwZGF0ZSk7CisJc3RyYnVmX2FkZGNoKHNiLCAwKTsgLyogV2FudCB0byBrZWVwIGEgTlVMICovCisKIAlmaXh1cCA9IHNiLT5sZW47CiAJc3RyYnVmX2FkZChzYiwgJmV3YWhfc2l6ZSwgc2l6ZW9mKHVpbnQzMl90KSk7IC8qIHdlJ2xsIGZpeCB0aGlzIHVwIGxhdGVyICovCiAKQEAgLTkyLDkgKzEzNyw5IEBACiB9CiAKIC8qCi0gKiBDYWxsIHRoZSBxdWVyeS1mc21vbml0b3IgaG9vayBwYXNzaW5nIHRoZSB0aW1lIG9mIHRoZSBsYXN0IHNhdmVkIHJlc3VsdHMuCisgKiBDYWxsIHRoZSBxdWVyeS1mc21vbml0b3IgaG9vayBwYXNzaW5nIHRoZSBsYXN0IHVwZGF0ZSB0b2tlbiBvZiB0aGUgc2F2ZWQgcmVzdWx0cy4KICAqLwotc3RhdGljIGludCBxdWVyeV9mc21vbml0b3IoaW50IHZlcnNpb24sIHVpbnQ2NF90IGxhc3RfdXBkYXRlLCBzdHJ1Y3Qgc3RyYnVmICpxdWVyeV9yZXN1bHQpCitzdGF0aWMgaW50IHF1ZXJ5X2ZzbW9uaXRvcihpbnQgdmVyc2lvbiwgY29uc3QgY2hhciAqbGFzdF91cGRhdGUsIHN0cnVjdCBzdHJidWYgKnF1ZXJ5X3Jlc3VsdCkKIHsKIAlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjcCA9IENISUxEX1BST0NFU1NfSU5JVDsKIApAQCAtMTAzLDcgKzE0OCw3IEBACiAKIAlhcmd2X2FycmF5X3B1c2goJmNwLmFyZ3MsIGNvcmVfZnNtb25pdG9yKTsKIAlhcmd2X2FycmF5X3B1c2hmKCZjcC5hcmdzLCAiJWQiLCB2ZXJzaW9uKTsKLQlhcmd2X2FycmF5X3B1c2hmKCZjcC5hcmdzLCAiJSIgUFJJdU1BWCwgKHVpbnRtYXhfdClsYXN0X3VwZGF0ZSk7CisJYXJndl9hcnJheV9wdXNoZigmY3AuYXJncywgIiVzIiwgbGFzdF91cGRhdGUpOwogCWNwLnVzZV9zaGVsbCA9IDE7CiAJY3AuZGlyID0gZ2V0X2dpdF93b3JrX3RyZWUoKTsKIApAQCAtMTI5LDE3ICsxNzQsMjAgQEAKIAogdm9pZCByZWZyZXNoX2ZzbW9uaXRvcihzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSkKIHsKLQlzdGF0aWMgaW50IGhhc19ydW5fb25jZSA9IDA7CiAJc3RydWN0IHN0cmJ1ZiBxdWVyeV9yZXN1bHQgPSBTVFJCVUZfSU5JVDsKLQlpbnQgcXVlcnlfc3VjY2VzcyA9IDA7Ci0Jc2l6ZV90IGJvbDsgLyogYmVnaW5uaW5nIG9mIGxpbmUgKi8KKwlpbnQgcXVlcnlfc3VjY2VzcyA9IDAsIGhvb2tfdmVyc2lvbiA9IC0xOworCXNpemVfdCBib2wgPSAwOyAvKiBiZWdpbm5pbmcgb2YgbGluZSAqLwogCXVpbnQ2NF90IGxhc3RfdXBkYXRlOworCXN0cnVjdCBzdHJidWYgbGFzdF91cGRhdGVfdG9rZW4gPSBTVFJCVUZfSU5JVDsKIAljaGFyICpidWY7Ci0JaW50IGk7CisJdW5zaWduZWQgaW50IGk7CiAKLQlpZiAoIWNvcmVfZnNtb25pdG9yIHx8IGhhc19ydW5fb25jZSkKKwlpZiAoIWNvcmVfZnNtb25pdG9yIHx8IGlzdGF0ZS0+ZnNtb25pdG9yX2hhc19ydW5fb25jZSkKIAkJcmV0dXJuOwotCWhhc19ydW5fb25jZSA9IDE7CisKKwlob29rX3ZlcnNpb24gPSBmc21vbml0b3JfaG9va192ZXJzaW9uKCk7CisKKwlpc3RhdGUtPmZzbW9uaXRvcl9oYXNfcnVuX29uY2UgPSAxOwogCiAJdHJhY2VfcHJpbnRmX2tleSgmdHJhY2VfZnNtb25pdG9yLCAicmVmcmVzaCBmc21vbml0b3IiKTsKIAkvKgpAQCAtMTQ3LDI2ICsxOTUsNjAgQEAKIAkgKiBzaG91bGQgYmUgaW5jbHVzaXZlIHRvIGVuc3VyZSB3ZSBkb24ndCBtaXNzIHBvdGVudGlhbCBjaGFuZ2VzLgogCSAqLwogCWxhc3RfdXBkYXRlID0gZ2V0bmFub3RpbWUoKTsKKwlpZiAoaG9va192ZXJzaW9uID09IEhPT0tfSU5URVJGQUNFX1ZFUlNJT04xKQorCQlzdHJidWZfYWRkZigmbGFzdF91cGRhdGVfdG9rZW4sICIlIlBSSXU2NCIiLCBsYXN0X3VwZGF0ZSk7CiAKIAkvKgotCSAqIElmIHdlIGhhdmUgYSBsYXN0IHVwZGF0ZSB0aW1lLCBjYWxsIHF1ZXJ5X2ZzbW9uaXRvciBmb3IgdGhlIHNldCBvZgotCSAqIGNoYW5nZXMgc2luY2UgdGhhdCB0aW1lLCBlbHNlIGFzc3VtZSBldmVyeXRoaW5nIGlzIHBvc3NpYmx5IGRpcnR5CisJICogSWYgd2UgaGF2ZSBhIGxhc3QgdXBkYXRlIHRva2VuLCBjYWxsIHF1ZXJ5X2ZzbW9uaXRvciBmb3IgdGhlIHNldCBvZgorCSAqIGNoYW5nZXMgc2luY2UgdGhhdCB0b2tlbiwgZWxzZSBhc3N1bWUgZXZlcnl0aGluZyBpcyBwb3NzaWJseSBkaXJ0eQogCSAqIGFuZCBjaGVjayBpdCBhbGwuCiAJICovCiAJaWYgKGlzdGF0ZS0+ZnNtb25pdG9yX2xhc3RfdXBkYXRlKSB7Ci0JCXF1ZXJ5X3N1Y2Nlc3MgPSAhcXVlcnlfZnNtb25pdG9yKEhPT0tfSU5URVJGQUNFX1ZFUlNJT04sCi0JCQlpc3RhdGUtPmZzbW9uaXRvcl9sYXN0X3VwZGF0ZSwgJnF1ZXJ5X3Jlc3VsdCk7CisJCWlmIChob29rX3ZlcnNpb24gPT0gLTEgfHwgaG9va192ZXJzaW9uID09IEhPT0tfSU5URVJGQUNFX1ZFUlNJT04yKSB7CisJCQlxdWVyeV9zdWNjZXNzID0gIXF1ZXJ5X2ZzbW9uaXRvcihIT09LX0lOVEVSRkFDRV9WRVJTSU9OMiwKKwkJCQlpc3RhdGUtPmZzbW9uaXRvcl9sYXN0X3VwZGF0ZSwgJnF1ZXJ5X3Jlc3VsdCk7CisKKwkJCWlmIChxdWVyeV9zdWNjZXNzKSB7CisJCQkJaWYgKGhvb2tfdmVyc2lvbiA8IDApCisJCQkJCWhvb2tfdmVyc2lvbiA9IEhPT0tfSU5URVJGQUNFX1ZFUlNJT04yOworCisJCQkJLyoKKwkJCQkgKiBGaXJzdCBlbnRyeSB3aWxsIGJlIHRoZSBsYXN0IHVwZGF0ZSB0b2tlbgorCQkJCSAqIE5lZWQgdG8gdXNlIGEgY2hhciAqIHZhcmlhYmxlIGJlY2F1c2Ugc3RhdGljCisJCQkJICogYW5hbHlzaXMgd2FzIHN1Z2dlc3RpbmcgdG8gdXNlIHN0cmJ1Zl9hZGRidWYKKwkJCQkgKiBidXQgd2UgZG9uJ3Qgd2FudCB0byBjb3B5IHRoZSBlbnRpcmUgc3RyYnVmCisJCQkJICogb25seSB0aGUgdGhlIGNoYXJzIHVwIHRvIHRoZSBmaXJzdCBOVUwKKwkJCQkgKi8KKwkJCQlidWYgPSBxdWVyeV9yZXN1bHQuYnVmOworCQkJCXN0cmJ1Zl9hZGRzdHIoJmxhc3RfdXBkYXRlX3Rva2VuLCBidWYpOworCQkJCWlmICghbGFzdF91cGRhdGVfdG9rZW4ubGVuKSB7CisJCQkJCXdhcm5pbmcoIkVtcHR5IGxhc3QgdXBkYXRlIHRva2VuLiIpOworCQkJCQlxdWVyeV9zdWNjZXNzID0gMDsKKwkJCQl9IGVsc2UgeworCQkJCQlib2wgPSBsYXN0X3VwZGF0ZV90b2tlbi5sZW4gKyAxOworCQkJCX0KKwkJCX0gZWxzZSBpZiAoaG9va192ZXJzaW9uIDwgMCkgeworCQkJCWhvb2tfdmVyc2lvbiA9IEhPT0tfSU5URVJGQUNFX1ZFUlNJT04xOworCQkJCWlmICghbGFzdF91cGRhdGVfdG9rZW4ubGVuKQorCQkJCQlzdHJidWZfYWRkZigmbGFzdF91cGRhdGVfdG9rZW4sICIlIlBSSXU2NCIiLCBsYXN0X3VwZGF0ZSk7CisJCQl9CisJCX0KKworCQlpZiAoaG9va192ZXJzaW9uID09IEhPT0tfSU5URVJGQUNFX1ZFUlNJT04xKSB7CisJCQlxdWVyeV9zdWNjZXNzID0gIXF1ZXJ5X2ZzbW9uaXRvcihIT09LX0lOVEVSRkFDRV9WRVJTSU9OMSwKKwkJCQlpc3RhdGUtPmZzbW9uaXRvcl9sYXN0X3VwZGF0ZSwgJnF1ZXJ5X3Jlc3VsdCk7CisJCX0KKwogCQl0cmFjZV9wZXJmb3JtYW5jZV9zaW5jZShsYXN0X3VwZGF0ZSwgImZzbW9uaXRvciBwcm9jZXNzICclcyciLCBjb3JlX2ZzbW9uaXRvcik7CiAJCXRyYWNlX3ByaW50Zl9rZXkoJnRyYWNlX2ZzbW9uaXRvciwgImZzbW9uaXRvciBwcm9jZXNzICclcycgcmV0dXJuZWQgJXMiLAogCQkJY29yZV9mc21vbml0b3IsIHF1ZXJ5X3N1Y2Nlc3MgPyAic3VjY2VzcyIgOiAiZmFpbHVyZSIpOwogCX0KIAogCS8qIGEgZnNtb25pdG9yIHByb2Nlc3MgY2FuIHJldHVybiAnLycgdG8gaW5kaWNhdGUgYWxsIGVudHJpZXMgYXJlIGludmFsaWQgKi8KLQlpZiAocXVlcnlfc3VjY2VzcyAmJiBxdWVyeV9yZXN1bHQuYnVmWzBdICE9ICcvJykgeworCWlmIChxdWVyeV9zdWNjZXNzICYmIHF1ZXJ5X3Jlc3VsdC5idWZbYm9sXSAhPSAnLycpIHsKIAkJLyogTWFyayBhbGwgZW50cmllcyByZXR1cm5lZCBieSB0aGUgbW9uaXRvciBhcyBkaXJ0eSAqLwogCQlidWYgPSBxdWVyeV9yZXN1bHQuYnVmOwotCQlib2wgPSAwOwotCQlmb3IgKGkgPSAwOyBpIDwgcXVlcnlfcmVzdWx0LmxlbjsgaSsrKSB7CisJCWZvciAoaSA9IGJvbDsgaSA8IHF1ZXJ5X3Jlc3VsdC5sZW47IGkrKykgewogCQkJaWYgKGJ1ZltpXSAhPSAnXDAnKQogCQkJCWNvbnRpbnVlOwogCQkJZnNtb25pdG9yX3JlZnJlc2hfY2FsbGJhY2soaXN0YXRlLCBidWYgKyBib2wpOwpAQCAtMTc0LDMxICsyNTYsNDcgQEAKIAkJfQogCQlpZiAoYm9sIDwgcXVlcnlfcmVzdWx0LmxlbikKIAkJCWZzbW9uaXRvcl9yZWZyZXNoX2NhbGxiYWNrKGlzdGF0ZSwgYnVmICsgYm9sKTsKKworCQkvKiBOb3cgbWFyayB0aGUgdW50cmFja2VkIGNhY2hlIGZvciBmc21vbml0b3IgdXNhZ2UgKi8KKwkJaWYgKGlzdGF0ZS0+dW50cmFja2VkKQorCQkJaXN0YXRlLT51bnRyYWNrZWQtPnVzZV9mc21vbml0b3IgPSAxOwogCX0gZWxzZSB7CisKKwkJLyogV2Ugb25seSB3YW50IHRvIHJ1biB0aGUgcG9zdCBpbmRleCBjaGFuZ2VkIGhvb2sgaWYgd2UndmUgYWN0dWFsbHkgY2hhbmdlZCBlbnRyaWVzLCBzbyBrZWVwIHRyYWNrCisJCSAqIGlmIHdlIGFjdHVhbGx5IGNoYW5nZWQgZW50cmllcyBvciBub3QgKi8KKwkJaW50IGlzX2NhY2hlX2NoYW5nZWQgPSAwOwogCQkvKiBNYXJrIGFsbCBlbnRyaWVzIGludmFsaWQgKi8KLQkJZm9yIChpID0gMDsgaSA8IGlzdGF0ZS0+Y2FjaGVfbnI7IGkrKykKLQkJCWlzdGF0ZS0+Y2FjaGVbaV0tPmNlX2ZsYWdzICY9IH5DRV9GU01PTklUT1JfVkFMSUQ7CisJCWZvciAoaSA9IDA7IGkgPCBpc3RhdGUtPmNhY2hlX25yOyBpKyspIHsKKwkJCWlmIChpc3RhdGUtPmNhY2hlW2ldLT5jZV9mbGFncyAmIENFX0ZTTU9OSVRPUl9WQUxJRCkgeworCQkJCWlzX2NhY2hlX2NoYW5nZWQgPSAxOworCQkJCWlzdGF0ZS0+Y2FjaGVbaV0tPmNlX2ZsYWdzICY9IH5DRV9GU01PTklUT1JfVkFMSUQ7CisJCQl9CisJCX0KIAogCQkvKiBJZiB3ZSdyZSBnb2luZyB0byBjaGVjayBldmVyeSBmaWxlLCBlbnN1cmUgd2Ugc2F2ZSB0aGUgcmVzdWx0cyAqLwotCQlpc3RhdGUtPmNhY2hlX2NoYW5nZWQgfD0gRlNNT05JVE9SX0NIQU5HRUQ7CisJCWlmIChpc19jYWNoZV9jaGFuZ2VkKQorCQkJaXN0YXRlLT5jYWNoZV9jaGFuZ2VkIHw9IEZTTU9OSVRPUl9DSEFOR0VEOwogCiAJCWlmIChpc3RhdGUtPnVudHJhY2tlZCkKIAkJCWlzdGF0ZS0+dW50cmFja2VkLT51c2VfZnNtb25pdG9yID0gMDsKIAl9CiAJc3RyYnVmX3JlbGVhc2UoJnF1ZXJ5X3Jlc3VsdCk7CiAKLQkvKiBOb3cgdGhhdCB3ZSd2ZSB1cGRhdGVkIGlzdGF0ZSwgc2F2ZSB0aGUgbGFzdF91cGRhdGUgdGltZSAqLwotCWlzdGF0ZS0+ZnNtb25pdG9yX2xhc3RfdXBkYXRlID0gbGFzdF91cGRhdGU7CisJLyogTm93IHRoYXQgd2UndmUgdXBkYXRlZCBpc3RhdGUsIHNhdmUgdGhlIGxhc3RfdXBkYXRlX3Rva2VuICovCisJRlJFRV9BTkRfTlVMTChpc3RhdGUtPmZzbW9uaXRvcl9sYXN0X3VwZGF0ZSk7CisJaXN0YXRlLT5mc21vbml0b3JfbGFzdF91cGRhdGUgPSBzdHJidWZfZGV0YWNoKCZsYXN0X3VwZGF0ZV90b2tlbiwgTlVMTCk7CiB9CiAKIHZvaWQgYWRkX2ZzbW9uaXRvcihzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSkKIHsKLQlpbnQgaTsKKwl1bnNpZ25lZCBpbnQgaTsKKwlzdHJ1Y3Qgc3RyYnVmIGxhc3RfdXBkYXRlID0gU1RSQlVGX0lOSVQ7CiAKIAlpZiAoIWlzdGF0ZS0+ZnNtb25pdG9yX2xhc3RfdXBkYXRlKSB7CiAJCXRyYWNlX3ByaW50Zl9rZXkoJnRyYWNlX2ZzbW9uaXRvciwgImFkZCBmc21vbml0b3IiKTsKIAkJaXN0YXRlLT5jYWNoZV9jaGFuZ2VkIHw9IEZTTU9OSVRPUl9DSEFOR0VEOwotCQlpc3RhdGUtPmZzbW9uaXRvcl9sYXN0X3VwZGF0ZSA9IGdldG5hbm90aW1lKCk7CisJCXN0cmJ1Zl9hZGRmKCZsYXN0X3VwZGF0ZSwgIiUiUFJJdTY0IiIsIGdldG5hbm90aW1lKCkpOworCQlpc3RhdGUtPmZzbW9uaXRvcl9sYXN0X3VwZGF0ZSA9IHN0cmJ1Zl9kZXRhY2goJmxhc3RfdXBkYXRlLCBOVUxMKTsKIAogCQkvKiByZXNldCB0aGUgZnNtb25pdG9yIHN0YXRlICovCiAJCWZvciAoaSA9IDA7IGkgPCBpc3RhdGUtPmNhY2hlX25yOyBpKyspCkBAIC0yMjAsMTMgKzMxOCwxMyBAQAogCWlmIChpc3RhdGUtPmZzbW9uaXRvcl9sYXN0X3VwZGF0ZSkgewogCQl0cmFjZV9wcmludGZfa2V5KCZ0cmFjZV9mc21vbml0b3IsICJyZW1vdmUgZnNtb25pdG9yIik7CiAJCWlzdGF0ZS0+Y2FjaGVfY2hhbmdlZCB8PSBGU01PTklUT1JfQ0hBTkdFRDsKLQkJaXN0YXRlLT5mc21vbml0b3JfbGFzdF91cGRhdGUgPSAwOworCQlGUkVFX0FORF9OVUxMKGlzdGF0ZS0+ZnNtb25pdG9yX2xhc3RfdXBkYXRlKTsKIAl9CiB9CiAKIHZvaWQgdHdlYWtfZnNtb25pdG9yKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKQogewotCWludCBpOworCXVuc2lnbmVkIGludCBpOwogCWludCBmc21vbml0b3JfZW5hYmxlZCA9IGdpdF9jb25maWdfZ2V0X2ZzbW9uaXRvcigpOwogCiAJaWYgKGlzdGF0ZS0+ZnNtb25pdG9yX2RpcnR5KSB7CkBAIC0yMzcsMTEgKzMzNSwxMiBAQAogCQkJfQogCiAJCQkvKiBNYXJrIGFsbCBwcmV2aW91c2x5IHNhdmVkIGVudHJpZXMgYXMgZGlydHkgKi8KKwkJCWlmIChpc3RhdGUtPmZzbW9uaXRvcl9kaXJ0eS0+Yml0X3NpemUgPiBpc3RhdGUtPmNhY2hlX25yKQorCQkJCUJVRygiZnNtb25pdG9yX2RpcnR5IGhhcyBtb3JlIGVudHJpZXMgdGhhbiB0aGUgaW5kZXggKCUiUFJJdU1BWCIgPiAldSkiLAorCQkJCSAgICAodWludG1heF90KWlzdGF0ZS0+ZnNtb25pdG9yX2RpcnR5LT5iaXRfc2l6ZSwgaXN0YXRlLT5jYWNoZV9ucik7CiAJCQlld2FoX2VhY2hfYml0KGlzdGF0ZS0+ZnNtb25pdG9yX2RpcnR5LCBmc21vbml0b3JfZXdhaF9jYWxsYmFjaywgaXN0YXRlKTsKIAotCQkJLyogTm93IG1hcmsgdGhlIHVudHJhY2tlZCBjYWNoZSBmb3IgZnNtb25pdG9yIHVzYWdlICovCi0JCQlpZiAoaXN0YXRlLT51bnRyYWNrZWQpCi0JCQkJaXN0YXRlLT51bnRyYWNrZWQtPnVzZV9mc21vbml0b3IgPSAxOworCQkJcmVmcmVzaF9mc21vbml0b3IoaXN0YXRlKTsKIAkJfQogCiAJCWV3YWhfZnJlZShpc3RhdGUtPmZzbW9uaXRvcl9kaXJ0eSk7CmRpZmYgLS1naXQgYS9mc21vbml0b3IuaCBiL2ZzbW9uaXRvci5oCmluZGV4IDAxMDE3YzQuLjczOTMxOGEgMTAwNjQ0Ci0tLSBhL2ZzbW9uaXRvci5oCisrKyBiL2ZzbW9uaXRvci5oCkBAIC0xMCwzMSArMTAsMzEgQEAKICAqIFJlYWQgdGhlIGZzbW9uaXRvciBpbmRleCBleHRlbnNpb24gYW5kIChpZiBjb25maWd1cmVkKSByZXN0b3JlIHRoZQogICogQ0VfRlNNT05JVE9SX1ZBTElEIHN0YXRlLgogICovCi1leHRlcm4gaW50IHJlYWRfZnNtb25pdG9yX2V4dGVuc2lvbihzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgY29uc3Qgdm9pZCAqZGF0YSwgdW5zaWduZWQgbG9uZyBzeik7CitpbnQgcmVhZF9mc21vbml0b3JfZXh0ZW5zaW9uKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLCBjb25zdCB2b2lkICpkYXRhLCB1bnNpZ25lZCBsb25nIHN6KTsKIAogLyoKICAqIEZpbGwgdGhlIGZzbW9uaXRvcl9kaXJ0eSBld2FoIGJpdHMgd2l0aCB0aGVpciBzdGF0ZSBmcm9tIHRoZSBpbmRleCwKICAqIGJlZm9yZSBpdCBpcyBzcGxpdCBkdXJpbmcgd3JpdGluZy4KICAqLwotZXh0ZXJuIHZvaWQgZmlsbF9mc21vbml0b3JfYml0bWFwKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKTsKK3ZvaWQgZmlsbF9mc21vbml0b3JfYml0bWFwKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKTsKIAogLyoKICAqIFdyaXRlIHRoZSBDRV9GU01PTklUT1JfVkFMSUQgc3RhdGUgaW50byB0aGUgZnNtb25pdG9yIGluZGV4CiAgKiBleHRlbnNpb24uICBSZWFkcyBmcm9tIHRoZSBmc21vbml0b3JfZGlydHkgZXdhaCBpbiB0aGUgaW5kZXguCiAgKi8KLWV4dGVybiB2b2lkIHdyaXRlX2ZzbW9uaXRvcl9leHRlbnNpb24oc3RydWN0IHN0cmJ1ZiAqc2IsIHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKTsKK3ZvaWQgd3JpdGVfZnNtb25pdG9yX2V4dGVuc2lvbihzdHJ1Y3Qgc3RyYnVmICpzYiwgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpOwogCiAvKgogICogQWRkL3JlbW92ZSB0aGUgZnNtb25pdG9yIGluZGV4IGV4dGVuc2lvbgogICovCi1leHRlcm4gdm9pZCBhZGRfZnNtb25pdG9yKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKTsKLWV4dGVybiB2b2lkIHJlbW92ZV9mc21vbml0b3Ioc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpOwordm9pZCBhZGRfZnNtb25pdG9yKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKTsKK3ZvaWQgcmVtb3ZlX2ZzbW9uaXRvcihzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSk7CiAKIC8qCiAgKiBBZGQvcmVtb3ZlIHRoZSBmc21vbml0b3IgaW5kZXggZXh0ZW5zaW9uIGFzIG5lY2Vzc2FyeSBiYXNlZCBvbiB0aGUgY3VycmVudAogICogY29yZS5mc21vbml0b3Igc2V0dGluZy4KICAqLwotZXh0ZXJuIHZvaWQgdHdlYWtfZnNtb25pdG9yKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKTsKK3ZvaWQgdHdlYWtfZnNtb25pdG9yKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKTsKIAogLyoKICAqIFJ1biB0aGUgY29uZmlndXJlZCBmc21vbml0b3IgaW50ZWdyYXRpb24gc2NyaXB0IGFuZCBjbGVhciB0aGUKQEAgLTQyLDE2ICs0MiwxNyBAQAogICogYW55IGNvcnJlc3BvbmRpbmcgdW50cmFja2VkIGNhY2hlIGRpcmVjdG9yeSBzdHJ1Y3R1cmVzLiBPcHRpbWl6ZWQgdG8gb25seQogICogcnVuIHRoZSBmaXJzdCB0aW1lIGl0IGlzIGNhbGxlZC4KICAqLwotZXh0ZXJuIHZvaWQgcmVmcmVzaF9mc21vbml0b3Ioc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpOwordm9pZCByZWZyZXNoX2ZzbW9uaXRvcihzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSk7CiAKIC8qCiAgKiBTZXQgdGhlIGdpdmVuIGNhY2hlIGVudHJpZXMgQ0VfRlNNT05JVE9SX1ZBTElEIGJpdC4gVGhpcyBzaG91bGQgYmUKICAqIGNhbGxlZCBhbnkgdGltZSB0aGUgY2FjaGUgZW50cnkgaGFzIGJlZW4gdXBkYXRlZCB0byByZWZsZWN0IHRoZQogICogY3VycmVudCBzdGF0ZSBvZiB0aGUgZmlsZSBvbiBkaXNrLgogICovCi1zdGF0aWMgaW5saW5lIHZvaWQgbWFya19mc21vbml0b3JfdmFsaWQoc3RydWN0IGNhY2hlX2VudHJ5ICpjZSkKK3N0YXRpYyBpbmxpbmUgdm9pZCBtYXJrX2ZzbW9uaXRvcl92YWxpZChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSkKIHsKLQlpZiAoY29yZV9mc21vbml0b3IpIHsKKwlpZiAoY29yZV9mc21vbml0b3IgJiYgIShjZS0+Y2VfZmxhZ3MgJiBDRV9GU01PTklUT1JfVkFMSUQpKSB7CisJCWlzdGF0ZS0+Y2FjaGVfY2hhbmdlZCA9IDE7CiAJCWNlLT5jZV9mbGFncyB8PSBDRV9GU01PTklUT1JfVkFMSUQ7CiAJCXRyYWNlX3ByaW50Zl9rZXkoJnRyYWNlX2ZzbW9uaXRvciwgIm1hcmtfZnNtb25pdG9yX2NsZWFuICclcyciLCBjZS0+bmFtZSk7CiAJfQpkaWZmIC0tZ2l0IGEvZnV6ei1jb21taXQtZ3JhcGguYyBiL2Z1enotY29tbWl0LWdyYXBoLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDE1N2FjYgotLS0gL2Rldi9udWxsCisrKyBiL2Z1enotY29tbWl0LWdyYXBoLmMKQEAgLTAsMCArMSwxOSBAQAorI2luY2x1ZGUgImNvbW1pdC1ncmFwaC5oIgorI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKKworc3RydWN0IGNvbW1pdF9ncmFwaCAqcGFyc2VfY29tbWl0X2dyYXBoKHZvaWQgKmdyYXBoX21hcCwgaW50IGZkLAorCQkJCQlzaXplX3QgZ3JhcGhfc2l6ZSk7CisKK2ludCBMTFZNRnV6emVyVGVzdE9uZUlucHV0KGNvbnN0IHVpbnQ4X3QgKmRhdGEsIHNpemVfdCBzaXplKTsKKworaW50IExMVk1GdXp6ZXJUZXN0T25lSW5wdXQoY29uc3QgdWludDhfdCAqZGF0YSwgc2l6ZV90IHNpemUpCit7CisJc3RydWN0IGNvbW1pdF9ncmFwaCAqZzsKKworCWluaXRpYWxpemVfdGhlX3JlcG9zaXRvcnkoKTsKKwlnID0gcGFyc2VfY29tbWl0X2dyYXBoKCh2b2lkICopZGF0YSwgLTEsIHNpemUpOworCXJlcG9fY2xlYXIodGhlX3JlcG9zaXRvcnkpOworCWZyZWUoZyk7CisKKwlyZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL2dlbmVyYXRlLWNtZGxpc3Quc2ggYi9nZW5lcmF0ZS1jbWRsaXN0LnNoCmluZGV4IDcwOWQ2NzQuLjcxMTU4ZjcgMTAwNzU1Ci0tLSBhL2dlbmVyYXRlLWNtZGxpc3Quc2gKKysrIGIvZ2VuZXJhdGUtY21kbGlzdC5zaApAQCAtNiw3ICs2LDcgQEAKIH0KIAogY29tbWFuZF9saXN0ICgpIHsKLQlncmVwIC12ICdeIycgIiQxIgorCWV2YWwgImdyZXAgLXZlICdeIycgJGV4Y2x1ZGVfcHJvZ3JhbXMiIDwiJDEiCiB9CiAKIGdldF9jYXRlZ29yaWVzICgpIHsKQEAgLTkzLDYgKzkzLDE0IEBACiBFT0YKIH0KIAorZXhjbHVkZV9wcm9ncmFtcz0KK3doaWxlIHRlc3QgIi0tZXhjbHVkZS1wcm9ncmFtIiA9ICIkMSIKK2RvCisJc2hpZnQKKwlleGNsdWRlX3Byb2dyYW1zPSIkZXhjbHVkZV9wcm9ncmFtcyAtZSBcIl4kMSBcIiIKKwlzaGlmdAorZG9uZQorCiBlY2hvICIvKiBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieSBnZW5lcmF0ZS1jbWRsaXN0LnNoICovCiBzdHJ1Y3QgY21kbmFtZV9oZWxwIHsKIAljb25zdCBjaGFyICpuYW1lOwpkaWZmIC0tZ2l0IGEvZ2V0dGV4dC5jIGIvZ2V0dGV4dC5jCmluZGV4IGQ0MDIxZDYuLjM1ZDJjMTIgMTAwNjQ0Ci0tLSBhL2dldHRleHQuYworKysgYi9nZXR0ZXh0LmMKQEAgLTEyLDcgKzEyLDI1IEBACiAjaWZuZGVmIE5PX0dFVFRFWFQKICMJaW5jbHVkZSA8bG9jYWxlLmg+CiAjCWluY2x1ZGUgPGxpYmludGwuaD4KLSMJaWZkZWYgSEFWRV9MSUJDSEFSU0VUX0gKKyMJaWZkZWYgR0lUX1dJTkRPV1NfTkFUSVZFCisKK3N0YXRpYyBjb25zdCBjaGFyICpsb2NhbGVfY2hhcnNldCh2b2lkKQoreworCWNvbnN0IGNoYXIgKmVudiA9IGdldGVudigiTENfQUxMIiksICpkb3Q7CisKKwlpZiAoIWVudiB8fCAhKmVudikKKwkJZW52ID0gZ2V0ZW52KCJMQ19DVFlQRSIpOworCWlmICghZW52IHx8ICEqZW52KQorCQllbnYgPSBnZXRlbnYoIkxBTkciKTsKKworCWlmICghZW52KQorCQlyZXR1cm4gIlVURi04IjsKKworCWRvdCA9IHN0cmNocihlbnYsICcuJyk7CisJcmV0dXJuICFkb3QgPyBlbnYgOiBkb3QgKyAxOworfQorCisjCWVsaWYgZGVmaW5lZCBIQVZFX0xJQkNIQVJTRVRfSAogIwkJaW5jbHVkZSA8bGliY2hhcnNldC5oPgogIwllbHNlCiAjCQlpbmNsdWRlIDxsYW5naW5mby5oPgpAQCAtNTAsMTAgKzY4LDggQEAKIGludCB1c2VfZ2V0dGV4dF9wb2lzb24odm9pZCkKIHsKIAlzdGF0aWMgaW50IHBvaXNvbl9yZXF1ZXN0ZWQgPSAtMTsKLQlpZiAocG9pc29uX3JlcXVlc3RlZCA9PSAtMSkgewotCQljb25zdCBjaGFyICp2ID0gZ2V0ZW52KCJHSVRfVEVTVF9HRVRURVhUX1BPSVNPTiIpOwotCQlwb2lzb25fcmVxdWVzdGVkID0gdiAmJiBzdHJsZW4odikgPyAxIDogMDsKLQl9CisJaWYgKHBvaXNvbl9yZXF1ZXN0ZWQgPT0gLTEpCisJCXBvaXNvbl9yZXF1ZXN0ZWQgPSBnaXRfZW52X2Jvb2woIkdJVF9URVNUX0dFVFRFWFRfUE9JU09OIiwgMCk7CiAJcmV0dXJuIHBvaXNvbl9yZXF1ZXN0ZWQ7CiB9CiAKZGlmZiAtLWdpdCBhL2dldHRleHQuaCBiL2dldHRleHQuaAppbmRleCA3MTI1NWU1Li5iZWU1MmViIDEwMDY0NAotLS0gYS9nZXR0ZXh0LmgKKysrIGIvZ2V0dGV4dC5oCkBAIC0yOCwxMSArMjgsMTEgQEAKIAogI2RlZmluZSBGT1JNQVRfUFJFU0VSVklORyhuKSBfX2F0dHJpYnV0ZV9fKChmb3JtYXRfYXJnKG4pKSkKIAotZXh0ZXJuIGludCB1c2VfZ2V0dGV4dF9wb2lzb24odm9pZCk7CitpbnQgdXNlX2dldHRleHRfcG9pc29uKHZvaWQpOwogCiAjaWZuZGVmIE5PX0dFVFRFWFQKLWV4dGVybiB2b2lkIGdpdF9zZXR1cF9nZXR0ZXh0KHZvaWQpOwotZXh0ZXJuIGludCBnZXR0ZXh0X3dpZHRoKGNvbnN0IGNoYXIgKnMpOwordm9pZCBnaXRfc2V0dXBfZ2V0dGV4dCh2b2lkKTsKK2ludCBnZXR0ZXh0X3dpZHRoKGNvbnN0IGNoYXIgKnMpOwogI2Vsc2UKIHN0YXRpYyBpbmxpbmUgdm9pZCBnaXRfc2V0dXBfZ2V0dGV4dCh2b2lkKQogewpAQCAtODcsNiArODcsNiBAQAogI2VuZGlmCiAKIGNvbnN0IGNoYXIgKmdldF9wcmVmZXJyZWRfbGFuZ3VhZ2VzKHZvaWQpOwotZXh0ZXJuIGludCBpc191dGY4X2xvY2FsZSh2b2lkKTsKK2ludCBpc191dGY4X2xvY2FsZSh2b2lkKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9naXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsIGIvZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybAppbmRleCAyMGViODFjLi4xMGZkMzBhIDEwMDc1NQotLS0gYS9naXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsCisrKyBiL2dpdC1hZGQtLWludGVyYWN0aXZlLnBlcmwKQEAgLTE0OSw2ICsxNDksMjAgQEAKIAkJRklMVEVSID0+IHVuZGVmLAogCQlJU19SRVZFUlNFID0+IDAsCiAJfSwKKwknd29ya3RyZWVfaGVhZCcgPT4geworCQlESUZGID0+ICdkaWZmLWluZGV4IC1wJywKKwkJQVBQTFkgPT4gc3ViIHsgYXBwbHlfcGF0Y2ggJ2FwcGx5IC1SJywgQF8gfSwKKwkJQVBQTFlfQ0hFQ0sgPT4gJ2FwcGx5IC1SJywKKwkJRklMVEVSID0+IHVuZGVmLAorCQlJU19SRVZFUlNFID0+IDEsCisJfSwKKwknd29ya3RyZWVfbm90aGVhZCcgPT4geworCQlESUZGID0+ICdkaWZmLWluZGV4IC1SIC1wJywKKwkJQVBQTFkgPT4gc3ViIHsgYXBwbHlfcGF0Y2ggJ2FwcGx5JywgQF8gfSwKKwkJQVBQTFlfQ0hFQ0sgPT4gJ2FwcGx5JywKKwkJRklMVEVSID0+IHVuZGVmLAorCQlJU19SRVZFUlNFID0+IDAsCisJfSwKICk7CiAKICRwYXRjaF9tb2RlID0gJ3N0YWdlJzsKQEAgLTE2Myw3ICsxNzcsOSBAQAogCX0gZWxzZSB7CiAJCW15ICRmaCA9IHVuZGVmOwogCQlvcGVuKCRmaCwgJy18JywgQF8pIG9yIGRpZTsKLQkJcmV0dXJuIDwkZmg+OworCQlteSBAb3V0ID0gPCRmaD47CisJCWNsb3NlICRmaCB8fCBkaWUgIkNhbm5vdCBjbG9zZSBAXyAoJCEpIjsKKwkJcmV0dXJuIEBvdXQ7CiAJfQogfQogCkBAIC0yMTAsNyArMjI2LDcgQEAKIAlzdWIgZ2V0X2VtcHR5X3RyZWUgewogCQlyZXR1cm4gJGVtcHR5X3RyZWUgaWYgZGVmaW5lZCAkZW1wdHlfdHJlZTsKIAotCQkkZW1wdHlfdHJlZSA9IHJ1bl9jbWRfcGlwZShxdyhnaXQgaGFzaC1vYmplY3QgLXQgdHJlZSAvZGV2L251bGwpKTsKKwkJKCRlbXB0eV90cmVlKSA9IHJ1bl9jbWRfcGlwZShxdyhnaXQgaGFzaC1vYmplY3QgLXQgdHJlZSAvZGV2L251bGwpKTsKIAkJY2hvbXAgJGVtcHR5X3RyZWU7CiAJCXJldHVybiAkZW1wdHlfdHJlZTsKIAl9CkBAIC05NzIsNyArOTg4LDExIEBACiAJCQluZXh0OwogCQl9CiAJCWlmICgkb2ZzX2RlbHRhKSB7Ci0JCQkkbl9vZnMgKz0gJG9mc19kZWx0YTsKKwkJCWlmICgkcGF0Y2hfbW9kZV9mbGF2b3Vye0lTX1JFVkVSU0V9KSB7CisJCQkJJG9fb2ZzIC09ICRvZnNfZGVsdGE7CisJCQl9IGVsc2UgeworCQkJCSRuX29mcyArPSAkb2ZzX2RlbHRhOworCQkJfQogCQkJJF8tPntURVhUfS0+WzBdID0gZm9ybWF0X2h1bmtfaGVhZGVyKCRvX29mcywgJG9fY250LAogCQkJCQkJCSAgICAgJG5fb2ZzLCAkbl9jbnQpOwogCQl9CkBAIC0xMDUwLDYgKzEwNzAsMTIgQEAKIAljaGVja291dF9ub3RoZWFkID0+IE5fXygKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZQogbWFya2VkIGZvciBhcHBseWluZy4iKSwKKwl3b3JrdHJlZV9oZWFkID0+IE5fXygKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZQorbWFya2VkIGZvciBkaXNjYXJkaW5nLiIpLAorCXdvcmt0cmVlX25vdGhlYWQgPT4gTl9fKAorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlCittYXJrZWQgZm9yIGFwcGx5aW5nLiIpLAogKTsKIAogc3ViIHJlY291bnRfZWRpdGVkX2h1bmsgewpAQCAtMTEwMyw3ICsxMTI5LDcgQEAKIEVPRjIKIAljbG9zZSAkZmg7CiAKLQljaG9tcChteSAkZWRpdG9yID0gcnVuX2NtZF9waXBlKHF3KGdpdCB2YXIgR0lUX0VESVRPUikpKTsKKwljaG9tcChteSAoJGVkaXRvcikgPSBydW5fY21kX3BpcGUocXcoZ2l0IHZhciBHSVRfRURJVE9SKSkpOwogCXN5c3RlbSgnc2gnLCAnLWMnLCAkZWRpdG9yLicgIiRAIicsICRlZGl0b3IsICRodW5rZmlsZSk7CiAKIAlpZiAoJD8gIT0gMCkgewpAQCAtMTI2MCw2ICsxMjg2LDE4IEBACiBxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzCiBhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUKIGQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiKSwKKwl3b3JrdHJlZV9oZWFkID0+IE5fXygKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZQorbiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlCitxIC0gcXVpdDsgZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXMKK2EgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlCitkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiKSwKKwl3b3JrdHJlZV9ub3RoZWFkID0+IE5fXygKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlCituIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZQorcSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lcworYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlCitkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIiksCiApOwogCiBzdWIgaGVscF9wYXRjaF9jbWQgewpAQCAtMTQyMSw2ICsxNDU5LDE2IEBACiAJCWRlbGV0aW9uID0+IE5fXygiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIiksCiAJCWh1bmsgPT4gTl9fKCJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIiksCiAJfSwKKwl3b3JrdHJlZV9oZWFkID0+IHsKKwkJbW9kZSA9PiBOX18oIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIpLAorCQlkZWxldGlvbiA9PiBOX18oIkRpc2NhcmQgZGVsZXRpb24gZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIpLAorCQlodW5rID0+IE5fXygiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIpLAorCX0sCisJd29ya3RyZWVfbm90aGVhZCA9PiB7CisJCW1vZGUgPT4gTl9fKCJBcHBseSBtb2RlIGNoYW5nZSB0byB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIpLAorCQlkZWxldGlvbiA9PiBOX18oIkFwcGx5IGRlbGV0aW9uIHRvIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIiksCisJCWh1bmsgPT4gTl9fKCJBcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiKSwKKwl9LAogKTsKIAogc3ViIHBhdGNoX3VwZGF0ZV9maWxlIHsKQEAgLTE0OTUsNyArMTU0Myw3IEBACiAJCWZvciAoQHskaHVua1skaXhde0RJU1BMQVl9fSkgewogCQkJcHJpbnQ7CiAJCX0KLQkJcHJpbnQgY29sb3JlZCAkcHJvbXB0X2NvbG9yLAorCQlwcmludCBjb2xvcmVkICRwcm9tcHRfY29sb3IsICIoIiwgKCRpeCsxKSwgIi8kbnVtKSAiLAogCQkJc3ByaW50ZihfXygkcGF0Y2hfdXBkYXRlX3Byb21wdF9tb2Rlc3skcGF0Y2hfbW9kZX17JGh1bmtbJGl4XXtUWVBFfX0pLCAkb3RoZXIpOwogCiAJCW15ICRsaW5lID0gcHJvbXB0X3NpbmdsZV9jaGFyYWN0ZXI7CkBAIC0xNzU2LDYgKzE4MDQsMTYgQEAKIAkJCQkJCSAgICAgICAnY2hlY2tvdXRfaGVhZCcgOiAnY2hlY2tvdXRfbm90aGVhZCcpOwogCQkJCQkkYXJnID0gc2hpZnQgQEFSR1Ygb3IgZGllIF9fKCJtaXNzaW5nIC0tIik7CiAJCQkJfQorCQkJfSBlbHNpZiAoJDEgZXEgJ3dvcmt0cmVlJykgeworCQkJCSRhcmcgPSBzaGlmdCBAQVJHViBvciBkaWUgX18oIm1pc3NpbmcgLS0iKTsKKwkJCQlpZiAoJGFyZyBlcSAnLS0nKSB7CisJCQkJCSRwYXRjaF9tb2RlID0gJ2NoZWNrb3V0X2luZGV4JzsKKwkJCQl9IGVsc2UgeworCQkJCQkkcGF0Y2hfbW9kZV9yZXZpc2lvbiA9ICRhcmc7CisJCQkJCSRwYXRjaF9tb2RlID0gKCRhcmcgZXEgJ0hFQUQnID8KKwkJCQkJCSAgICAgICAnd29ya3RyZWVfaGVhZCcgOiAnd29ya3RyZWVfbm90aGVhZCcpOworCQkJCQkkYXJnID0gc2hpZnQgQEFSR1Ygb3IgZGllIF9fKCJtaXNzaW5nIC0tIik7CisJCQkJfQogCQkJfSBlbHNpZiAoJDEgZXEgJ3N0YWdlJyBvciAkMSBlcSAnc3Rhc2gnKSB7CiAJCQkJJHBhdGNoX21vZGUgPSAkMTsKIAkJCQkkYXJnID0gc2hpZnQgQEFSR1Ygb3IgZGllIF9fKCJtaXNzaW5nIC0tIik7CmRpZmYgLS1naXQgYS9naXQtYmlzZWN0LnNoIGIvZ2l0LWJpc2VjdC5zaAppbmRleCA1NGNiZmVjLi5lZmVlMTJiIDEwMDc1NQotLS0gYS9naXQtYmlzZWN0LnNoCisrKyBiL2dpdC1iaXNlY3Quc2gKQEAgLTcxLDEyMiArNzEsNyBAQAogfQogCiBiaXNlY3Rfc3RhcnQoKSB7Ci0JIwotCSMgQ2hlY2sgZm9yIG9uZSBiYWQgYW5kIHRoZW4gc29tZSBnb29kIHJldmlzaW9ucy4KLQkjCi0JaGFzX2RvdWJsZV9kYXNoPTAKLQlmb3IgYXJnOyBkbwotCQljYXNlICIkYXJnIiBpbiAtLSkgaGFzX2RvdWJsZV9kYXNoPTE7IGJyZWFrIDs7IGVzYWMKLQlkb25lCi0Jb3JpZ19hcmdzPSQoZ2l0IHJldi1wYXJzZSAtLXNxLXF1b3RlICIkQCIpCi0JYmFkX3NlZW49MAotCWV2YWw9JycKLQltdXN0X3dyaXRlX3Rlcm1zPTAKLQlyZXZzPScnCi0JaWYgdGVzdCAieiQoZ2l0IHJldi1wYXJzZSAtLWlzLWJhcmUtcmVwb3NpdG9yeSkiICE9IHpmYWxzZQotCXRoZW4KLQkJbW9kZT0tLW5vLWNoZWNrb3V0Ci0JZWxzZQotCQltb2RlPScnCi0JZmkKLQl3aGlsZSBbICQjIC1ndCAwIF07IGRvCi0JCWFyZz0iJDEiCi0JCWNhc2UgIiRhcmciIGluCi0JCS0tKQotCQkJc2hpZnQKLQkJCWJyZWFrCi0JCTs7Ci0JCS0tbm8tY2hlY2tvdXQpCi0JCQltb2RlPS0tbm8tY2hlY2tvdXQKLQkJCXNoaWZ0IDs7Ci0JCS0tdGVybS1nb29kfC0tdGVybS1vbGQpCi0JCQlzaGlmdAotCQkJbXVzdF93cml0ZV90ZXJtcz0xCi0JCQlURVJNX0dPT0Q9JDEKLQkJCXNoaWZ0IDs7Ci0JCS0tdGVybS1nb29kPSp8LS10ZXJtLW9sZD0qKQotCQkJbXVzdF93cml0ZV90ZXJtcz0xCi0JCQlURVJNX0dPT0Q9JHsxIyo9fQotCQkJc2hpZnQgOzsKLQkJLS10ZXJtLWJhZHwtLXRlcm0tbmV3KQotCQkJc2hpZnQKLQkJCW11c3Rfd3JpdGVfdGVybXM9MQotCQkJVEVSTV9CQUQ9JDEKLQkJCXNoaWZ0IDs7Ci0JCS0tdGVybS1iYWQ9KnwtLXRlcm0tbmV3PSopCi0JCQltdXN0X3dyaXRlX3Rlcm1zPTEKLQkJCVRFUk1fQkFEPSR7MSMqPX0KLQkJCXNoaWZ0IDs7Ci0JCS0tKikKLQkJCWRpZSAiJChldmFsX2dldHRleHQgInVucmVjb2duaXNlZCBvcHRpb246ICdcJGFyZyciKSIgOzsKLQkJKikKLQkJCXJldj0kKGdpdCByZXYtcGFyc2UgLXEgLS12ZXJpZnkgIiRhcmdee2NvbW1pdH0iKSB8fCB7Ci0JCQkJdGVzdCAkaGFzX2RvdWJsZV9kYXNoIC1lcSAxICYmCi0JCQkJZGllICIkKGV2YWxfZ2V0dGV4dCAiJ1wkYXJnJyBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYSB2YWxpZCByZXZpc2lvbiIpIgotCQkJCWJyZWFrCi0JCQl9Ci0JCQlyZXZzPSIkcmV2cyAkcmV2IgotCQkJc2hpZnQKLQkJCTs7Ci0JCWVzYWMKLQlkb25lCi0KLQlmb3IgcmV2IGluICRyZXZzCi0JZG8KLQkJIyBUaGUgdXNlciByYW4gImdpdCBiaXNlY3Qgc3RhcnQgPHNoYTE+Ci0JCSMgPHNoYTE+IiwgaGVuY2UgZGlkIG5vdCBleHBsaWNpdGx5IHNwZWNpZnkKLQkJIyB0aGUgdGVybXMsIGJ1dCB3ZSBhcmUgYWxyZWFkeSBzdGFydGluZyB0bwotCQkjIHNldCByZWZlcmVuY2VzIG5hbWVkIHdpdGggdGhlIGRlZmF1bHQgdGVybXMsCi0JCSMgYW5kIHdvbid0IGJlIGFibGUgdG8gY2hhbmdlIGFmdGVyd2FyZHMuCi0JCW11c3Rfd3JpdGVfdGVybXM9MQotCi0JCWNhc2UgJGJhZF9zZWVuIGluCi0JCTApIHN0YXRlPSRURVJNX0JBRCA7IGJhZF9zZWVuPTEgOzsKLQkJKikgc3RhdGU9JFRFUk1fR09PRCA7OwotCQllc2FjCi0JCWV2YWw9IiRldmFsIGJpc2VjdF93cml0ZSAnJHN0YXRlJyAnJHJldicgJ25vbG9nJyAmJiIKLQlkb25lCi0JIwotCSMgVmVyaWZ5IEhFQUQuCi0JIwotCWhlYWQ9JChHSVRfRElSPSIkR0lUX0RJUiIgZ2l0IHN5bWJvbGljLXJlZiAtcSBIRUFEKSB8fAotCWhlYWQ9JChHSVRfRElSPSIkR0lUX0RJUiIgZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBIRUFEKSB8fAotCWRpZSAiJChnZXR0ZXh0ICJCYWQgSEVBRCAtIEkgbmVlZCBhIEhFQUQiKSIKLQotCSMKLQkjIENoZWNrIGlmIHdlIGFyZSBiaXNlY3RpbmcuCi0JIwotCXN0YXJ0X2hlYWQ9JycKLQlpZiB0ZXN0IC1zICIkR0lUX0RJUi9CSVNFQ1RfU1RBUlQiCi0JdGhlbgotCQkjIFJlc2V0IHRvIHRoZSByZXYgZnJvbSB3aGVyZSB3ZSBzdGFydGVkLgotCQlzdGFydF9oZWFkPSQoY2F0ICIkR0lUX0RJUi9CSVNFQ1RfU1RBUlQiKQotCQlpZiB0ZXN0ICJ6JG1vZGUiICE9ICJ6LS1uby1jaGVja291dCIKLQkJdGhlbgotCQkJZ2l0IGNoZWNrb3V0ICIkc3RhcnRfaGVhZCIgLS0gfHwKLQkJCWRpZSAiJChldmFsX2dldHRleHQgIkNoZWNraW5nIG91dCAnXCRzdGFydF9oZWFkJyBmYWlsZWQuIFRyeSAnZ2l0IGJpc2VjdCByZXNldCA8dmFsaWQtYnJhbmNoPicuIikiCi0JCWZpCi0JZWxzZQotCQkjIEdldCByZXYgZnJvbSB3aGVyZSB3ZSBzdGFydC4KLQkJY2FzZSAiJGhlYWQiIGluCi0JCXJlZnMvaGVhZHMvKnwkX3g0MCkKLQkJCSMgVGhpcyBlcnJvciBtZXNzYWdlIHNob3VsZCBvbmx5IGJlIHRyaWdnZXJlZCBieQotCQkJIyBjb2dpdG8gdXNhZ2UsIGFuZCBjb2dpdG8gdXNlcnMgc2hvdWxkIHVuZGVyc3RhbmQKLQkJCSMgaXQgcmVsYXRlcyB0byBjZy1zZWVrLgotCQkJWyAtcyAiJEdJVF9ESVIvaGVhZC1uYW1lIiBdICYmCi0JCQkJZGllICIkKGdldHRleHQgIndvbid0IGJpc2VjdCBvbiBjZy1zZWVrJ2VkIHRyZWUiKSIKLQkJCXN0YXJ0X2hlYWQ9IiR7aGVhZCNyZWZzL2hlYWRzL30iCi0JCQk7OwotCQkqKQotCQkJZGllICIkKGdldHRleHQgIkJhZCBIRUFEIC0gc3RyYW5nZSBzeW1ib2xpYyByZWYiKSIKLQkJCTs7Ci0JCWVzYWMKLQlmaQotCi0JIwotCSMgR2V0IHJpZCBvZiBhbnkgb2xkIGJpc2VjdCBzdGF0ZS4KLQkjCi0JZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNsZWFuLXN0YXRlIHx8IGV4aXQKKwlnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtc3RhcnQgJEAgfHwgZXhpdAogCiAJIwogCSMgQ2hhbmdlIHN0YXRlLgpAQCAtMTk5LDQ0ICs4NCwxNCBAQAogCXRyYXAgJ2V4aXQgMjU1JyAxIDIgMyAxNQogCiAJIwotCSMgV3JpdGUgbmV3IHN0YXJ0IHN0YXRlLgotCSMKLQllY2hvICIkc3RhcnRfaGVhZCIgPiIkR0lUX0RJUi9CSVNFQ1RfU1RBUlQiICYmIHsKLQkJdGVzdCAieiRtb2RlIiAhPSAiei0tbm8tY2hlY2tvdXQiIHx8Ci0JCWdpdCB1cGRhdGUtcmVmIC0tbm8tZGVyZWYgQklTRUNUX0hFQUQgIiRzdGFydF9oZWFkIgotCX0gJiYKLQlnaXQgcmV2LXBhcnNlIC0tc3EtcXVvdGUgIiRAIiA+IiRHSVRfRElSL0JJU0VDVF9OQU1FUyIgJiYKLQlldmFsICIkZXZhbCB0cnVlIiAmJgotCWlmIHRlc3QgJG11c3Rfd3JpdGVfdGVybXMgLWVxIDEKLQl0aGVuCi0JCWdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zICIkVEVSTV9CQUQiICIkVEVSTV9HT09EIiB8fCBleGl0Ci0JZmkgJiYKLQllY2hvICJnaXQgYmlzZWN0IHN0YXJ0JG9yaWdfYXJncyIgPj4iJEdJVF9ESVIvQklTRUNUX0xPRyIgfHwgZXhpdAotCSMKIAkjIENoZWNrIGlmIHdlIGNhbiBwcm9jZWVkIHRvIHRoZSBuZXh0IGJpc2VjdCBzdGF0ZS4KIAkjCisJZ2V0X3Rlcm1zCiAJYmlzZWN0X2F1dG9fbmV4dAogCiAJdHJhcCAnLScgMAogfQogCi1iaXNlY3Rfd3JpdGUoKSB7Ci0Jc3RhdGU9IiQxIgotCXJldj0iJDIiCi0Jbm9sb2c9IiQzIgotCWNhc2UgIiRzdGF0ZSIgaW4KLQkJIiRURVJNX0JBRCIpCi0JCQl0YWc9IiRzdGF0ZSIgOzsKLQkJIiRURVJNX0dPT0QifHNraXApCi0JCQl0YWc9IiRzdGF0ZSItIiRyZXYiIDs7Ci0JCSopCi0JCQlkaWUgIiQoZXZhbF9nZXR0ZXh0ICJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiBcJHN0YXRlIikiIDs7Ci0JZXNhYwotCWdpdCB1cGRhdGUtcmVmICJyZWZzL2Jpc2VjdC8kdGFnIiAiJHJldiIgfHwgZXhpdAotCWVjaG8gIiMgJHN0YXRlOiAkKGdpdCBzaG93LWJyYW5jaCAkcmV2KSIgPj4iJEdJVF9ESVIvQklTRUNUX0xPRyIKLQl0ZXN0IC1uICIkbm9sb2ciIHx8IGVjaG8gImdpdCBiaXNlY3QgJHN0YXRlICRyZXYiID4+IiRHSVRfRElSL0JJU0VDVF9MT0ciCi19Ci0KIGJpc2VjdF9za2lwKCkgewogCWFsbD0nJwogCWZvciBhcmcgaW4gIiRAIgpAQCAtMjU1LDcgKzExMCw4IEBACiBiaXNlY3Rfc3RhdGUoKSB7CiAJYmlzZWN0X2F1dG9zdGFydAogCXN0YXRlPSQxCi0JY2hlY2tfYW5kX3NldF90ZXJtcyAkc3RhdGUKKwlnaXQgYmlzZWN0LS1oZWxwZXIgLS1jaGVjay1hbmQtc2V0LXRlcm1zICRzdGF0ZSAkVEVSTV9HT09EICRURVJNX0JBRCB8fCBleGl0CisJZ2V0X3Rlcm1zCiAJY2FzZSAiJCMsJHN0YXRlIiBpbgogCTAsKikKIAkJZGllICJQbGVhc2UgY2FsbCAnYmlzZWN0X3N0YXRlJyB3aXRoIGF0IGxlYXN0IG9uZSBhcmd1bWVudC4iIDs7CkBAIC0yNjMsNyArMTE5LDcgQEAKIAkJYmlzZWN0ZWRfaGVhZD0kKGJpc2VjdF9oZWFkKQogCQlyZXY9JChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5ICIkYmlzZWN0ZWRfaGVhZCIpIHx8CiAJCQlkaWUgIiQoZXZhbF9nZXR0ZXh0ICJCYWQgcmV2IGlucHV0OiBcJGJpc2VjdGVkX2hlYWQiKSIKLQkJYmlzZWN0X3dyaXRlICIkc3RhdGUiICIkcmV2IgorCQlnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtd3JpdGUgIiRzdGF0ZSIgIiRyZXYiICIkVEVSTV9HT09EIiAiJFRFUk1fQkFEIiB8fCBleGl0CiAJCWdpdCBiaXNlY3QtLWhlbHBlciAtLWNoZWNrLWV4cGVjdGVkLXJldnMgIiRyZXYiIDs7CiAJMiwiJFRFUk1fQkFEInwqLCIkVEVSTV9HT09EInwqLHNraXApCiAJCXNoaWZ0CkBAIC0yNzYsNyArMTMyLDcgQEAKIAkJZG9uZQogCQlmb3IgcmV2IGluICRoYXNoX2xpc3QKIAkJZG8KLQkJCWJpc2VjdF93cml0ZSAiJHN0YXRlIiAiJHJldiIKKwkJCWdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC13cml0ZSAiJHN0YXRlIiAiJHJldiIgIiRURVJNX0dPT0QiICIkVEVSTV9CQUQiIHx8IGV4aXQKIAkJZG9uZQogCQlnaXQgYmlzZWN0LS1oZWxwZXIgLS1jaGVjay1leHBlY3RlZC1yZXZzICRoYXNoX2xpc3QgOzsKIAkqLCIkVEVSTV9CQUQiKQpAQCAtMjg3LDU5ICsxNDMsMTQgQEAKIAliaXNlY3RfYXV0b19uZXh0CiB9CiAKLWJpc2VjdF9uZXh0X2NoZWNrKCkgewotCW1pc3NpbmdfZ29vZD0gbWlzc2luZ19iYWQ9Ci0JZ2l0IHNob3ctcmVmIC1xIC0tdmVyaWZ5IHJlZnMvYmlzZWN0LyRURVJNX0JBRCB8fCBtaXNzaW5nX2JhZD10Ci0JdGVzdCAtbiAiJChnaXQgZm9yLWVhY2gtcmVmICJyZWZzL2Jpc2VjdC8kVEVSTV9HT09ELSoiKSIgfHwgbWlzc2luZ19nb29kPXQKLQotCWNhc2UgIiRtaXNzaW5nX2dvb2QsJG1pc3NpbmdfYmFkLCQxIiBpbgotCSwsKikKLQkJOiBoYXZlIGJvdGggJFRFUk1fR09PRCBhbmQgJFRFUk1fQkFEIC0gb2sKLQkJOzsKLQkqLCkKLQkJIyBkbyBub3QgaGF2ZSBib3RoIGJ1dCBub3QgYXNrZWQgdG8gZmFpbCAtIGp1c3QgcmVwb3J0LgotCQlmYWxzZQotCQk7OwotCXQsLCIkVEVSTV9HT09EIikKLQkJIyBoYXZlIGJhZCAob3IgbmV3KSBidXQgbm90IGdvb2QgKG9yIG9sZCkuICB3ZSBjb3VsZCBiaXNlY3QgYWx0aG91Z2gKLQkJIyB0aGlzIGlzIGxlc3Mgb3B0aW11bS4KLQkJZXZhbF9nZXR0ZXh0bG4gIldhcm5pbmc6IGJpc2VjdGluZyBvbmx5IHdpdGggYSBcJFRFUk1fQkFEIGNvbW1pdC4iID4mMgotCQlpZiB0ZXN0IC10IDAKLQkJdGhlbgotCQkJIyBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW1ldIGFuZCBbbl0gaW4geW91cgotCQkJIyB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0Ci0JCQkjIGF0IHRoaXMgcG9pbnQuCi0JCQlnZXR0ZXh0ICJBcmUgeW91IHN1cmUgW1kvbl0/ICIgPiYyCi0JCQlyZWFkIHllc25vCi0JCQljYXNlICIkeWVzbm8iIGluIFtObl0qKSBleGl0IDEgOzsgZXNhYwotCQlmaQotCQk6IGJpc2VjdCB3aXRob3V0ICRURVJNX0dPT0QuLi4KLQkJOzsKLQkqKQotCQliYWRfc3luPSQoYmlzZWN0X3ZvYyBiYWQpCi0JCWdvb2Rfc3luPSQoYmlzZWN0X3ZvYyBnb29kKQotCQlpZiB0ZXN0IC1zICIkR0lUX0RJUi9CSVNFQ1RfU1RBUlQiCi0JCXRoZW4KLQotCQkJZXZhbF9nZXR0ZXh0bG4gIllvdSBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lIFwkYmFkX3N5biBhbmQgb25lIFwkZ29vZF9zeW4gcmV2aXNpb24uCi0oWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0IFwkYmFkX3N5blwiIGFuZCBcImdpdCBiaXNlY3QgXCRnb29kX3N5blwiIGZvciB0aGF0LikiID4mMgotCQllbHNlCi0JCQlldmFsX2dldHRleHRsbiAiWW91IG5lZWQgdG8gc3RhcnQgYnkgXCJnaXQgYmlzZWN0IHN0YXJ0XCIuCi1Zb3UgdGhlbiBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lIFwkZ29vZF9zeW4gYW5kIG9uZSBcJGJhZF9zeW4gcmV2aXNpb24uCi0oWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0IFwkYmFkX3N5blwiIGFuZCBcImdpdCBiaXNlY3QgXCRnb29kX3N5blwiIGZvciB0aGF0LikiID4mMgotCQlmaQotCQlleGl0IDEgOzsKLQllc2FjCi19Ci0KIGJpc2VjdF9hdXRvX25leHQoKSB7Ci0JYmlzZWN0X25leHRfY2hlY2sgJiYgYmlzZWN0X25leHQgfHwgOgorCWdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrICRURVJNX0dPT0QgJFRFUk1fQkFEICYmIGJpc2VjdF9uZXh0IHx8IDoKIH0KIAogYmlzZWN0X25leHQoKSB7CiAJY2FzZSAiJCMiIGluIDApIDs7ICopIHVzYWdlIDs7IGVzYWMKIAliaXNlY3RfYXV0b3N0YXJ0Ci0JYmlzZWN0X25leHRfY2hlY2sgJFRFUk1fR09PRAorCWdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrICRURVJNX0dPT0QgJFRFUk1fQkFEICRURVJNX0dPT0R8fCBleGl0CiAKIAkjIFBlcmZvcm0gYWxsIGJpc2VjdGlvbiBjb21wdXRhdGlvbiwgZGlzcGxheSBhbmQgY2hlY2tvdXQKIAlnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCAkKHRlc3QgLWYgIiRHSVRfRElSL0JJU0VDVF9IRUFEIiAmJiBlY2hvIC0tbm8tY2hlY2tvdXQpCkBAIC0zNzEsNyArMTgyLDcgQEAKIH0KIAogYmlzZWN0X3Zpc3VhbGl6ZSgpIHsKLQliaXNlY3RfbmV4dF9jaGVjayBmYWlsCisJZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LW5leHQtY2hlY2sgJFRFUk1fR09PRCAkVEVSTV9CQUQgZmFpbCB8fCBleGl0CiAKIAlpZiB0ZXN0ICQjID0gMAogCXRoZW4KQEAgLTM5MywzNSArMjA0LDExIEBACiAJZXZhbCAnIiRAIicgLS1iaXNlY3QgLS0gJChjYXQgIiRHSVRfRElSL0JJU0VDVF9OQU1FUyIpCiB9CiAKLWJpc2VjdF9yZXNldCgpIHsKLQl0ZXN0IC1zICIkR0lUX0RJUi9CSVNFQ1RfU1RBUlQiIHx8IHsKLQkJZ2V0dGV4dGxuICJXZSBhcmUgbm90IGJpc2VjdGluZy4iCi0JCXJldHVybgotCX0KLQljYXNlICIkIyIgaW4KLQkwKSBicmFuY2g9JChjYXQgIiRHSVRfRElSL0JJU0VDVF9TVEFSVCIpIDs7Ci0JMSkgZ2l0IHJldi1wYXJzZSAtLXF1aWV0IC0tdmVyaWZ5ICIkMV57Y29tbWl0fSIgPi9kZXYvbnVsbCB8fCB7Ci0JCQlpbnZhbGlkPSIkMSIKLQkJCWRpZSAiJChldmFsX2dldHRleHQgIidcJGludmFsaWQnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIpIgotCQl9Ci0JCWJyYW5jaD0iJDEiIDs7Ci0JKikKLQkJdXNhZ2UgOzsKLQllc2FjCi0KLQlpZiAhIHRlc3QgLWYgIiRHSVRfRElSL0JJU0VDVF9IRUFEIiAmJiAhIGdpdCBjaGVja291dCAiJGJyYW5jaCIgLS0KLQl0aGVuCi0JCWRpZSAiJChldmFsX2dldHRleHQgIkNvdWxkIG5vdCBjaGVjayBvdXQgb3JpZ2luYWwgSEVBRCAnXCRicmFuY2gnLgotVHJ5ICdnaXQgYmlzZWN0IHJlc2V0IDxjb21taXQ+Jy4iKSIKLQlmaQotCWdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jbGVhbi1zdGF0ZSB8fCBleGl0Ci19Ci0KIGJpc2VjdF9yZXBsYXkgKCkgewogCWZpbGU9IiQxIgogCXRlc3QgIiQjIiAtZXEgMSB8fCBkaWUgIiQoZ2V0dGV4dCAiTm8gbG9nZmlsZSBnaXZlbiIpIgogCXRlc3QgLXIgIiRmaWxlIiB8fCBkaWUgIiQoZXZhbF9nZXR0ZXh0ICJjYW5ub3QgcmVhZCBcJGZpbGUgZm9yIHJlcGxheWluZyIpIgotCWJpc2VjdF9yZXNldAorCWdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1yZXNldCB8fCBleGl0CiAJd2hpbGUgcmVhZCBnaXQgYmlzZWN0IGNvbW1hbmQgcmV2CiAJZG8KIAkJdGVzdCAiJGdpdCAkYmlzZWN0IiA9ICJnaXQgYmlzZWN0IiB8fCB0ZXN0ICIkZ2l0IiA9ICJnaXQtYmlzZWN0IiB8fCBjb250aW51ZQpAQCAtNDMxLDE1ICsyMTgsMTYgQEAKIAkJCWNvbW1hbmQ9IiRiaXNlY3QiCiAJCWZpCiAJCWdldF90ZXJtcwotCQljaGVja19hbmRfc2V0X3Rlcm1zICIkY29tbWFuZCIKKwkJZ2l0IGJpc2VjdC0taGVscGVyIC0tY2hlY2stYW5kLXNldC10ZXJtcyAiJGNvbW1hbmQiICIkVEVSTV9HT09EIiAiJFRFUk1fQkFEIiB8fCBleGl0CisJCWdldF90ZXJtcwogCQljYXNlICIkY29tbWFuZCIgaW4KIAkJc3RhcnQpCiAJCQljbWQ9ImJpc2VjdF9zdGFydCAkcmV2IgogCQkJZXZhbCAiJGNtZCIgOzsKIAkJIiRURVJNX0dPT0QifCIkVEVSTV9CQUQifHNraXApCi0JCQliaXNlY3Rfd3JpdGUgIiRjb21tYW5kIiAiJHJldiIgOzsKKwkJCWdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC13cml0ZSAiJGNvbW1hbmQiICIkcmV2IiAiJFRFUk1fR09PRCIgIiRURVJNX0JBRCIgfHwgZXhpdDs7CiAJCXRlcm1zKQotCQkJYmlzZWN0X3Rlcm1zICRyZXYgOzsKKwkJCWdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC10ZXJtcyAkcmV2IHx8IGV4aXQ7OwogCQkqKQogCQkJZGllICIkKGdldHRleHQgIj8/IHdoYXQgYXJlIHlvdSB0YWxraW5nIGFib3V0PyIpIiA7OwogCQllc2FjCkBAIC00NDgsNyArMjM2LDcgQEAKIH0KIAogYmlzZWN0X3J1biAoKSB7Ci0JYmlzZWN0X25leHRfY2hlY2sgZmFpbAorCWdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrICRURVJNX0dPT0QgJFRFUk1fQkFEIGZhaWwgfHwgZXhpdAogCiAJdGVzdCAtbiAiJCoiIHx8IGRpZSAiJChnZXR0ZXh0ICJiaXNlY3QgcnVuIGZhaWxlZDogbm8gY29tbWFuZCBwcm92aWRlZC4iKSIKIApAQCAtNTIzLDc0ICszMTEsNiBAQAogCWZpCiB9CiAKLWNoZWNrX2FuZF9zZXRfdGVybXMgKCkgewotCWNtZD0iJDEiCi0JY2FzZSAiJGNtZCIgaW4KLQlza2lwfHN0YXJ0fHRlcm1zKSA7OwotCSopCi0JCWlmIHRlc3QgLXMgIiRHSVRfRElSL0JJU0VDVF9URVJNUyIgJiYgdGVzdCAiJGNtZCIgIT0gIiRURVJNX0JBRCIgJiYgdGVzdCAiJGNtZCIgIT0gIiRURVJNX0dPT0QiCi0JCXRoZW4KLQkJCWRpZSAiJChldmFsX2dldHRleHQgIkludmFsaWQgY29tbWFuZDogeW91J3JlIGN1cnJlbnRseSBpbiBhIFwkVEVSTV9CQUQvXCRURVJNX0dPT0QgYmlzZWN0LiIpIgotCQlmaQotCQljYXNlICIkY21kIiBpbgotCQliYWR8Z29vZCkKLQkJCWlmICEgdGVzdCAtcyAiJEdJVF9ESVIvQklTRUNUX1RFUk1TIgotCQkJdGhlbgotCQkJCVRFUk1fQkFEPWJhZAotCQkJCVRFUk1fR09PRD1nb29kCi0JCQkJZ2l0IGJpc2VjdC0taGVscGVyIC0td3JpdGUtdGVybXMgIiRURVJNX0JBRCIgIiRURVJNX0dPT0QiIHx8IGV4aXQKLQkJCWZpCi0JCQk7OwotCQluZXd8b2xkKQotCQkJaWYgISB0ZXN0IC1zICIkR0lUX0RJUi9CSVNFQ1RfVEVSTVMiCi0JCQl0aGVuCi0JCQkJVEVSTV9CQUQ9bmV3Ci0JCQkJVEVSTV9HT09EPW9sZAotCQkJCWdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zICIkVEVSTV9CQUQiICIkVEVSTV9HT09EIiB8fCBleGl0Ci0JCQlmaQotCQkJOzsKLQkJZXNhYyA7OwotCWVzYWMKLX0KLQotYmlzZWN0X3ZvYyAoKSB7Ci0JY2FzZSAiJDEiIGluCi0JYmFkKSBlY2hvICJiYWR8bmV3IiA7OwotCWdvb2QpIGVjaG8gImdvb2R8b2xkIiA7OwotCWVzYWMKLX0KLQotYmlzZWN0X3Rlcm1zICgpIHsKLQlnZXRfdGVybXMKLQlpZiAhIHRlc3QgLXMgIiRHSVRfRElSL0JJU0VDVF9URVJNUyIKLQl0aGVuCi0JCWRpZSAiJChnZXR0ZXh0ICJubyB0ZXJtcyBkZWZpbmVkIikiCi0JZmkKLQljYXNlICIkIyIgaW4KLQkwKQotCQlnZXR0ZXh0bG4gIllvdXIgY3VycmVudCB0ZXJtcyBhcmUgJFRFUk1fR09PRCBmb3IgdGhlIG9sZCBzdGF0ZQotYW5kICRURVJNX0JBRCBmb3IgdGhlIG5ldyBzdGF0ZS4iCi0JCTs7Ci0JMSkKLQkJYXJnPSQxCi0JCWNhc2UgIiRhcmciIGluCi0JCQktLXRlcm0tZ29vZHwtLXRlcm0tb2xkKQotCQkJCXByaW50ZiAnJXNcbicgIiRURVJNX0dPT0QiCi0JCQkJOzsKLQkJCS0tdGVybS1iYWR8LS10ZXJtLW5ldykKLQkJCQlwcmludGYgJyVzXG4nICIkVEVSTV9CQUQiCi0JCQkJOzsKLQkJCSopCi0JCQkJZGllICIkKGV2YWxfZ2V0dGV4dCAiaW52YWxpZCBhcmd1bWVudCBcJGFyZyBmb3IgJ2dpdCBiaXNlY3QgdGVybXMnLgotU3VwcG9ydGVkIG9wdGlvbnMgYXJlOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGFuZCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIikiCi0JCQkJOzsKLQkJZXNhYwotCQk7OwotCSopCi0JCXVzYWdlIDs7Ci0JZXNhYwotfQotCiBjYXNlICIkIyIgaW4KIDApCiAJdXNhZ2UgOzsKQEAgLTYxMyw3ICszMzMsNyBAQAogCXZpc3VhbGl6ZXx2aWV3KQogCQliaXNlY3RfdmlzdWFsaXplICIkQCIgOzsKIAlyZXNldCkKLQkJYmlzZWN0X3Jlc2V0ICIkQCIgOzsKKwkJZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXJlc2V0ICIkQCIgOzsKIAlyZXBsYXkpCiAJCWJpc2VjdF9yZXBsYXkgIiRAIiA7OwogCWxvZykKQEAgLTYyMSw3ICszNDEsNyBAQAogCXJ1bikKIAkJYmlzZWN0X3J1biAiJEAiIDs7CiAJdGVybXMpCi0JCWJpc2VjdF90ZXJtcyAiJEAiIDs7CisJCWdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC10ZXJtcyAiJEAiIHx8IGV4aXQ7OwogCSopCiAJCXVzYWdlIDs7CiAJZXNhYwpkaWZmIC0tZ2l0IGEvZ2l0LWNvbXBhdC11dGlsLmggYi9naXQtY29tcGF0LXV0aWwuaAppbmRleCBkMTczNjBlLi5hZWQwYjVkIDEwMDY0NAotLS0gYS9naXQtY29tcGF0LXV0aWwuaAorKysgYi9naXQtY29tcGF0LXV0aWwuaApAQCAtMSw2ICsxLDE1IEBACiAjaWZuZGVmIEdJVF9DT01QQVRfVVRJTF9ICiAjZGVmaW5lIEdJVF9DT01QQVRfVVRJTF9ICiAKKyNpZmRlZiBVU0VfTVNWQ19DUlREQkcKKy8qCisgKiBGb3IgdGhlc2UgdG8gd29yayB0aGV5IG11c3QgYXBwZWFyIHZlcnkgZWFybHkgaW4gZWFjaAorICogZmlsZSAtLSBiZWZvcmUgbW9zdCBvZiB0aGUgc3RhbmRhcmQgaGVhZGVyIGZpbGVzLgorICovCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8Y3J0ZGJnLmg+CisjZW5kaWYKKwogI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAogCiAKQEAgLTY4LDcgKzc3LDcgQEAKICNlbmRpZgogLyoKICAqIEFSUkFZX1NJWkUgLSBnZXQgdGhlIG51bWJlciBvZiBlbGVtZW50cyBpbiBhIHZpc2libGUgYXJyYXkKLSAqICA8YXQ+IHg6IHRoZSBhcnJheSB3aG9zZSBzaXplIHlvdSB3YW50LgorICogQHg6IHRoZSBhcnJheSB3aG9zZSBzaXplIHlvdSB3YW50LgogICoKICAqIFRoaXMgZG9lcyBub3Qgd29yayBvbiBwb2ludGVycywgb3IgYXJyYXlzIGRlY2xhcmVkIGFzIFtdLCBvcgogICogZnVuY3Rpb24gcGFyYW1ldGVycy4gIFdpdGggY29ycmVjdCBjb21waWxlciBzdXBwb3J0LCBzdWNoIHVzYWdlCkBAIC0xOTMsMTIgKzIwMiwxNCBAQAogI2VuZGlmCiAKICNpZiBkZWZpbmVkKF9fQ1lHV0lOX18pCi0jaW5jbHVkZSAiY29tcGF0L2N5Z3dpbi5oIgorI2luY2x1ZGUgImNvbXBhdC93aW4zMi9wYXRoLXV0aWxzLmgiCiAjZW5kaWYKICNpZiBkZWZpbmVkKF9fTUlOR1czMl9fKQogLyogcHVsbCBpbiBXaW5kb3dzIGNvbXBhdGliaWxpdHkgc3R1ZmYgKi8KKyNpbmNsdWRlICJjb21wYXQvd2luMzIvcGF0aC11dGlscy5oIgogI2luY2x1ZGUgImNvbXBhdC9taW5ndy5oIgogI2VsaWYgZGVmaW5lZChfTVNDX1ZFUikKKyNpbmNsdWRlICJjb21wYXQvd2luMzIvcGF0aC11dGlscy5oIgogI2luY2x1ZGUgImNvbXBhdC9tc3ZjLmgiCiAjZWxzZQogI2luY2x1ZGUgPHN5cy91dHNuYW1lLmg+CkBAIC0yNDgsNyArMjU5LDcgQEAKIAogI2lmZGVmIE1LRElSX1dPX1RSQUlMSU5HX1NMQVNICiAjZGVmaW5lIG1rZGlyKGEsYikgY29tcGF0X21rZGlyX3dvX3RyYWlsaW5nX3NsYXNoKChhKSwoYikpCi1leHRlcm4gaW50IGNvbXBhdF9ta2Rpcl93b190cmFpbGluZ19zbGFzaChjb25zdCBjaGFyKiwgbW9kZV90KTsKK2ludCBjb21wYXRfbWtkaXJfd29fdHJhaWxpbmdfc2xhc2goY29uc3QgY2hhciosIG1vZGVfdCk7CiAjZW5kaWYKIAogI2lmZGVmIE5PX1NUUlVDVF9JVElNRVJWQUwKQEAgLTI2Niw5ICsyNzcsOSBAQAogI2luY2x1ZGUgPGxpYmdlbi5oPgogI2Vsc2UKICNkZWZpbmUgYmFzZW5hbWUgZ2l0YmFzZW5hbWUKLWV4dGVybiBjaGFyICpnaXRiYXNlbmFtZShjaGFyICopOworY2hhciAqZ2l0YmFzZW5hbWUoY2hhciAqKTsKICNkZWZpbmUgZGlybmFtZSBnaXRkaXJuYW1lCi1leHRlcm4gY2hhciAqZ2l0ZGlybmFtZShjaGFyICopOworY2hhciAqZ2l0ZGlybmFtZShjaGFyICopOwogI2VuZGlmCiAKICNpZm5kZWYgTk9fSUNPTlYKQEAgLTMwOSwzMCArMzIwLDExIEBACiAjZGVmaW5lIFBBVEhfTUFYIDQwOTYKICNlbmRpZgogCi0jaWZuZGVmIFBSSXVNQVgKLSNkZWZpbmUgUFJJdU1BWCAibGx1IgotI2VuZGlmCi0KLSNpZm5kZWYgU0NOdU1BWAotI2RlZmluZSBTQ051TUFYIFBSSXVNQVgKLSNlbmRpZgotCi0jaWZuZGVmIFBSSXUzMgotI2RlZmluZSBQUkl1MzIgInUiCi0jZW5kaWYKLQotI2lmbmRlZiBQUkl4MzIKLSNkZWZpbmUgUFJJeDMyICJ4IgotI2VuZGlmCi0KLSNpZm5kZWYgUFJJbzMyCi0jZGVmaW5lIFBSSW8zMiAibyIKLSNlbmRpZgotCiB0eXBlZGVmIHVpbnRtYXhfdCB0aW1lc3RhbXBfdDsKICNkZWZpbmUgUFJJdGltZSBQUkl1TUFYCiAjZGVmaW5lIHBhcnNlX3RpbWVzdGFtcCBzdHJ0b3VtYXgKICNkZWZpbmUgVElNRV9NQVggVUlOVE1BWF9NQVgKKyNkZWZpbmUgVElNRV9NSU4gMAogCiAjaWZuZGVmIFBBVEhfU0VQCiAjZGVmaW5lIFBBVEhfU0VQICc6JwpAQCAtNDAxLDYgKzM5MywxOSBAQAogI2RlZmluZSBxdWVyeV91c2VyX2VtYWlsKCkgTlVMTAogI2VuZGlmCiAKKyNpZmRlZiBfX1RBTkRFTQorI2luY2x1ZGUgPGZsb3NzLmgoZmxvc3NfZXhlY2wsZmxvc3NfZXhlY2xwLGZsb3NzX2V4ZWN2LGZsb3NzX2V4ZWN2cCk+CisjaW5jbHVkZSA8Zmxvc3MuaChmbG9zc19nZXRwd3VpZCk+CisjaWZuZGVmIE5TSUcKKy8qCisgKiBOb25TdG9wIE5TRSBhbmQgTlNYIGRvIG5vdCBwcm92aWRlIE5TSUcuIFNJR0dVQVJESUFOKDk5KSBpcyB0aGUgaGlnaGVzdAorICoga25vd24sIGJ5IGRldGVjdGl2ZSB3b3JrIHVzaW5nIGtpbGwgLWwgYXMgYSBsaXN0IGlzIGFsbCBzaWduYWxzCisgKiBpbnN0ZWFkIG9mIHNpZ25hbC5oIHdoZXJlIGl0IHNob3VsZCBiZS4KKyAqLworIyBkZWZpbmUgTlNJRyAxMDAKKyNlbmRpZgorI2VuZGlmCisKICNpZiBkZWZpbmVkKF9fSFBfY2MpICYmIChfX0hQX2NjID49IDYxMDAwKQogI2RlZmluZSBOT1JFVFVSTiBfX2F0dHJpYnV0ZV9fKChub3JldHVybikpCiAjZGVmaW5lIE5PUkVUVVJOX1BUUgpAQCAtNDM2LDE1ICs0NDEsMTUgQEAKIHN0cnVjdCBzdHJidWY7CiAKIC8qIEdlbmVyYWwgaGVscGVyIGZ1bmN0aW9ucyAqLwotZXh0ZXJuIHZvaWQgdnJlcG9ydGYoY29uc3QgY2hhciAqcHJlZml4LCBjb25zdCBjaGFyICplcnIsIHZhX2xpc3QgcGFyYW1zKTsKLWV4dGVybiBOT1JFVFVSTiB2b2lkIHVzYWdlKGNvbnN0IGNoYXIgKmVycik7Ci1leHRlcm4gTk9SRVRVUk4gdm9pZCB1c2FnZWYoY29uc3QgY2hhciAqZXJyLCAuLi4pIF9fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLCAxLCAyKSkpOwotZXh0ZXJuIE5PUkVUVVJOIHZvaWQgZGllKGNvbnN0IGNoYXIgKmVyciwgLi4uKSBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMSwgMikpKTsKLWV4dGVybiBOT1JFVFVSTiB2b2lkIGRpZV9lcnJubyhjb25zdCBjaGFyICplcnIsIC4uLikgX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDEsIDIpKSk7Ci1leHRlcm4gaW50IGVycm9yKGNvbnN0IGNoYXIgKmVyciwgLi4uKSBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMSwgMikpKTsKLWV4dGVybiBpbnQgZXJyb3JfZXJybm8oY29uc3QgY2hhciAqZXJyLCAuLi4pIF9fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLCAxLCAyKSkpOwotZXh0ZXJuIHZvaWQgd2FybmluZyhjb25zdCBjaGFyICplcnIsIC4uLikgX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDEsIDIpKSk7Ci1leHRlcm4gdm9pZCB3YXJuaW5nX2Vycm5vKGNvbnN0IGNoYXIgKmVyciwgLi4uKSBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMSwgMikpKTsKK3ZvaWQgdnJlcG9ydGYoY29uc3QgY2hhciAqcHJlZml4LCBjb25zdCBjaGFyICplcnIsIHZhX2xpc3QgcGFyYW1zKTsKK05PUkVUVVJOIHZvaWQgdXNhZ2UoY29uc3QgY2hhciAqZXJyKTsKK05PUkVUVVJOIHZvaWQgdXNhZ2VmKGNvbnN0IGNoYXIgKmVyciwgLi4uKSBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMSwgMikpKTsKK05PUkVUVVJOIHZvaWQgZGllKGNvbnN0IGNoYXIgKmVyciwgLi4uKSBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMSwgMikpKTsKK05PUkVUVVJOIHZvaWQgZGllX2Vycm5vKGNvbnN0IGNoYXIgKmVyciwgLi4uKSBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMSwgMikpKTsKK2ludCBlcnJvcihjb25zdCBjaGFyICplcnIsIC4uLikgX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDEsIDIpKSk7CitpbnQgZXJyb3JfZXJybm8oY29uc3QgY2hhciAqZXJyLCAuLi4pIF9fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLCAxLCAyKSkpOwordm9pZCB3YXJuaW5nKGNvbnN0IGNoYXIgKmVyciwgLi4uKSBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMSwgMikpKTsKK3ZvaWQgd2FybmluZ19lcnJubyhjb25zdCBjaGFyICplcnIsIC4uLikgX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDEsIDIpKSk7CiAKICNpZm5kZWYgTk9fT1BFTlNTTAogI2lmZGVmIEFQUExFX0NPTU1PTl9DUllQVE8KQEAgLTQ3MiwxNSArNDc3LDE1IEBACiAjZGVmaW5lIGVycm9yX2Vycm5vKC4uLikgKGVycm9yX2Vycm5vKF9fVkFfQVJHU19fKSwgY29uc3RfZXJyb3IoKSkKICNlbmRpZgogCi1leHRlcm4gdm9pZCBzZXRfZGllX3JvdXRpbmUoTk9SRVRVUk5fUFRSIHZvaWQgKCpyb3V0aW5lKShjb25zdCBjaGFyICplcnIsIHZhX2xpc3QgcGFyYW1zKSk7Ci1leHRlcm4gdm9pZCBzZXRfZXJyb3Jfcm91dGluZSh2b2lkICgqcm91dGluZSkoY29uc3QgY2hhciAqZXJyLCB2YV9saXN0IHBhcmFtcykpOwordm9pZCBzZXRfZGllX3JvdXRpbmUoTk9SRVRVUk5fUFRSIHZvaWQgKCpyb3V0aW5lKShjb25zdCBjaGFyICplcnIsIHZhX2xpc3QgcGFyYW1zKSk7Cit2b2lkIHNldF9lcnJvcl9yb3V0aW5lKHZvaWQgKCpyb3V0aW5lKShjb25zdCBjaGFyICplcnIsIHZhX2xpc3QgcGFyYW1zKSk7CiBleHRlcm4gdm9pZCAoKmdldF9lcnJvcl9yb3V0aW5lKHZvaWQpKShjb25zdCBjaGFyICplcnIsIHZhX2xpc3QgcGFyYW1zKTsKLWV4dGVybiB2b2lkIHNldF93YXJuX3JvdXRpbmUodm9pZCAoKnJvdXRpbmUpKGNvbnN0IGNoYXIgKndhcm4sIHZhX2xpc3QgcGFyYW1zKSk7Cit2b2lkIHNldF93YXJuX3JvdXRpbmUodm9pZCAoKnJvdXRpbmUpKGNvbnN0IGNoYXIgKndhcm4sIHZhX2xpc3QgcGFyYW1zKSk7CiBleHRlcm4gdm9pZCAoKmdldF93YXJuX3JvdXRpbmUodm9pZCkpKGNvbnN0IGNoYXIgKndhcm4sIHZhX2xpc3QgcGFyYW1zKTsKLWV4dGVybiB2b2lkIHNldF9kaWVfaXNfcmVjdXJzaW5nX3JvdXRpbmUoaW50ICgqcm91dGluZSkodm9pZCkpOwordm9pZCBzZXRfZGllX2lzX3JlY3Vyc2luZ19yb3V0aW5lKGludCAoKnJvdXRpbmUpKHZvaWQpKTsKIAotZXh0ZXJuIGludCBzdGFydHNfd2l0aChjb25zdCBjaGFyICpzdHIsIGNvbnN0IGNoYXIgKnByZWZpeCk7Ci1leHRlcm4gaW50IGlzdGFydHNfd2l0aChjb25zdCBjaGFyICpzdHIsIGNvbnN0IGNoYXIgKnByZWZpeCk7CitpbnQgc3RhcnRzX3dpdGgoY29uc3QgY2hhciAqc3RyLCBjb25zdCBjaGFyICpwcmVmaXgpOworaW50IGlzdGFydHNfd2l0aChjb25zdCBjaGFyICpzdHIsIGNvbnN0IGNoYXIgKnByZWZpeCk7CiAKIC8qCiAgKiBJZiB0aGUgc3RyaW5nICJzdHIiIGJlZ2lucyB3aXRoIHRoZSBzdHJpbmcgZm91bmQgaW4gInByZWZpeCIsIHJldHVybiAxLgpAQCAtNjAzLDggKzYwOCw4IEBACiAKICNkZWZpbmUgbW1hcCBnaXRfbW1hcAogI2RlZmluZSBtdW5tYXAgZ2l0X211bm1hcAotZXh0ZXJuIHZvaWQgKmdpdF9tbWFwKHZvaWQgKnN0YXJ0LCBzaXplX3QgbGVuZ3RoLCBpbnQgcHJvdCwgaW50IGZsYWdzLCBpbnQgZmQsIG9mZl90IG9mZnNldCk7Ci1leHRlcm4gaW50IGdpdF9tdW5tYXAodm9pZCAqc3RhcnQsIHNpemVfdCBsZW5ndGgpOwordm9pZCAqZ2l0X21tYXAodm9pZCAqc3RhcnQsIHNpemVfdCBsZW5ndGgsIGludCBwcm90LCBpbnQgZmxhZ3MsIGludCBmZCwgb2ZmX3Qgb2Zmc2V0KTsKK2ludCBnaXRfbXVubWFwKHZvaWQgKnN0YXJ0LCBzaXplX3QgbGVuZ3RoKTsKIAogI2Vsc2UgLyogTk9fTU1BUCB8fCBVU0VfV0lOMzJfTU1BUCAqLwogCkBAIC02NTgsMTcgKzY2MywxNyBAQAogI3VuZGVmIHN0YXQKICNlbmRpZgogI2RlZmluZSBzdGF0KHBhdGgsIGJ1ZikgZ2l0X3N0YXQocGF0aCwgYnVmKQotZXh0ZXJuIGludCBnaXRfc3RhdChjb25zdCBjaGFyICosIHN0cnVjdCBzdGF0ICopOworaW50IGdpdF9zdGF0KGNvbnN0IGNoYXIgKiwgc3RydWN0IHN0YXQgKik7CiAjaWZkZWYgZnN0YXQKICN1bmRlZiBmc3RhdAogI2VuZGlmCiAjZGVmaW5lIGZzdGF0KGZkLCBidWYpIGdpdF9mc3RhdChmZCwgYnVmKQotZXh0ZXJuIGludCBnaXRfZnN0YXQoaW50LCBzdHJ1Y3Qgc3RhdCAqKTsKK2ludCBnaXRfZnN0YXQoaW50LCBzdHJ1Y3Qgc3RhdCAqKTsKICNpZmRlZiBsc3RhdAogI3VuZGVmIGxzdGF0CiAjZW5kaWYKICNkZWZpbmUgbHN0YXQocGF0aCwgYnVmKSBnaXRfbHN0YXQocGF0aCwgYnVmKQotZXh0ZXJuIGludCBnaXRfbHN0YXQoY29uc3QgY2hhciAqLCBzdHJ1Y3Qgc3RhdCAqKTsKK2ludCBnaXRfbHN0YXQoY29uc3QgY2hhciAqLCBzdHJ1Y3Qgc3RhdCAqKTsKICNlbmRpZgogCiAjZGVmaW5lIERFRkFVTFRfUEFDS0VEX0dJVF9MSU1JVCBcCkBAIC02NzYsNTYgKzY4MSw1NiBAQAogCiAjaWZkZWYgTk9fUFJFQUQKICNkZWZpbmUgcHJlYWQgZ2l0X3ByZWFkCi1leHRlcm4gc3NpemVfdCBnaXRfcHJlYWQoaW50IGZkLCB2b2lkICpidWYsIHNpemVfdCBjb3VudCwgb2ZmX3Qgb2Zmc2V0KTsKK3NzaXplX3QgZ2l0X3ByZWFkKGludCBmZCwgdm9pZCAqYnVmLCBzaXplX3QgY291bnQsIG9mZl90IG9mZnNldCk7CiAjZW5kaWYKIC8qCiAgKiBGb3J3YXJkIGRlY2wgdGhhdCB3aWxsIHJlbWluZCB1cyBpZiBpdHMgdHdpbiBpbiBjYWNoZS5oIGNoYW5nZXMuCiAgKiBUaGlzIGZ1bmN0aW9uIGlzIHVzZWQgaW4gY29tcGF0L3ByZWFkLmMuICBCdXQgd2UgY2FuJ3QgaW5jbHVkZQogICogY2FjaGUuaCB0aGVyZS4KICAqLwotZXh0ZXJuIHNzaXplX3QgcmVhZF9pbl9mdWxsKGludCBmZCwgdm9pZCAqYnVmLCBzaXplX3QgY291bnQpOworc3NpemVfdCByZWFkX2luX2Z1bGwoaW50IGZkLCB2b2lkICpidWYsIHNpemVfdCBjb3VudCk7CiAKICNpZmRlZiBOT19TRVRFTlYKICNkZWZpbmUgc2V0ZW52IGdpdHNldGVudgotZXh0ZXJuIGludCBnaXRzZXRlbnYoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGludCk7CitpbnQgZ2l0c2V0ZW52KGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBpbnQpOwogI2VuZGlmCiAKICNpZmRlZiBOT19NS0RURU1QCiAjZGVmaW5lIG1rZHRlbXAgZ2l0bWtkdGVtcAotZXh0ZXJuIGNoYXIgKmdpdG1rZHRlbXAoY2hhciAqKTsKK2NoYXIgKmdpdG1rZHRlbXAoY2hhciAqKTsKICNlbmRpZgogCiAjaWZkZWYgTk9fVU5TRVRFTlYKICNkZWZpbmUgdW5zZXRlbnYgZ2l0dW5zZXRlbnYKLWV4dGVybiB2b2lkIGdpdHVuc2V0ZW52KGNvbnN0IGNoYXIgKik7Cit2b2lkIGdpdHVuc2V0ZW52KGNvbnN0IGNoYXIgKik7CiAjZW5kaWYKIAogI2lmZGVmIE5PX1NUUkNBU0VTVFIKICNkZWZpbmUgc3RyY2FzZXN0ciBnaXRzdHJjYXNlc3RyCi1leHRlcm4gY2hhciAqZ2l0c3RyY2FzZXN0cihjb25zdCBjaGFyICpoYXlzdGFjaywgY29uc3QgY2hhciAqbmVlZGxlKTsKK2NoYXIgKmdpdHN0cmNhc2VzdHIoY29uc3QgY2hhciAqaGF5c3RhY2ssIGNvbnN0IGNoYXIgKm5lZWRsZSk7CiAjZW5kaWYKIAogI2lmZGVmIE5PX1NUUkxDUFkKICNkZWZpbmUgc3RybGNweSBnaXRzdHJsY3B5Ci1leHRlcm4gc2l6ZV90IGdpdHN0cmxjcHkoY2hhciAqLCBjb25zdCBjaGFyICosIHNpemVfdCk7CitzaXplX3QgZ2l0c3RybGNweShjaGFyICosIGNvbnN0IGNoYXIgKiwgc2l6ZV90KTsKICNlbmRpZgogCiAjaWZkZWYgTk9fU1RSVE9VTUFYCiAjZGVmaW5lIHN0cnRvdW1heCBnaXRzdHJ0b3VtYXgKLWV4dGVybiB1aW50bWF4X3QgZ2l0c3RydG91bWF4KGNvbnN0IGNoYXIgKiwgY2hhciAqKiwgaW50KTsKK3VpbnRtYXhfdCBnaXRzdHJ0b3VtYXgoY29uc3QgY2hhciAqLCBjaGFyICoqLCBpbnQpOwogI2RlZmluZSBzdHJ0b2ltYXggZ2l0c3RydG9pbWF4Ci1leHRlcm4gaW50bWF4X3QgZ2l0c3RydG9pbWF4KGNvbnN0IGNoYXIgKiwgY2hhciAqKiwgaW50KTsKK2ludG1heF90IGdpdHN0cnRvaW1heChjb25zdCBjaGFyICosIGNoYXIgKiosIGludCk7CiAjZW5kaWYKIAogI2lmZGVmIE5PX0hTVFJFUlJPUgogI2RlZmluZSBoc3RyZXJyb3IgZ2l0aHN0cmVycm9yCi1leHRlcm4gY29uc3QgY2hhciAqZ2l0aHN0cmVycm9yKGludCBoZXJyb3IpOworY29uc3QgY2hhciAqZ2l0aHN0cmVycm9yKGludCBoZXJyb3IpOwogI2VuZGlmCiAKICNpZmRlZiBOT19NRU1NRU0KICNkZWZpbmUgbWVtbWVtIGdpdG1lbW1lbQogdm9pZCAqZ2l0bWVtbWVtKGNvbnN0IHZvaWQgKmhheXN0YWNrLCBzaXplX3QgaGF5c3RhY2tsZW4sCi0gICAgICAgICAgICAgICAgY29uc3Qgdm9pZCAqbmVlZGxlLCBzaXplX3QgbmVlZGxlbGVuKTsKKwkJY29uc3Qgdm9pZCAqbmVlZGxlLCBzaXplX3QgbmVlZGxlbGVuKTsKICNlbmRpZgogCiAjaWZkZWYgT1ZFUlJJREVfU1RSRFVQCkBAIC03NTEsNyArNzU2LDcgQEAKICMgIGVuZGlmCiAjICBkZWZpbmUgZm9wZW4oYSxiKSBnaXRfZm9wZW4oYSxiKQogIyBlbmRpZgotZXh0ZXJuIEZJTEUgKmdpdF9mb3Blbihjb25zdCBjaGFyKiwgY29uc3QgY2hhciopOworRklMRSAqZ2l0X2ZvcGVuKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKik7CiAjZW5kaWYKIAogI2lmZGVmIFNOUFJJTlRGX1JFVFVSTlNfQk9HVVMKQEAgLTc1OSwxNCArNzY0LDE0IEBACiAjdW5kZWYgc25wcmludGYKICNlbmRpZgogI2RlZmluZSBzbnByaW50ZiBnaXRfc25wcmludGYKLWV4dGVybiBpbnQgZ2l0X3NucHJpbnRmKGNoYXIgKnN0ciwgc2l6ZV90IG1heHNpemUsCi0JCQljb25zdCBjaGFyICpmb3JtYXQsIC4uLik7CitpbnQgZ2l0X3NucHJpbnRmKGNoYXIgKnN0ciwgc2l6ZV90IG1heHNpemUsCisJCSBjb25zdCBjaGFyICpmb3JtYXQsIC4uLik7CiAjaWZkZWYgdnNucHJpbnRmCiAjdW5kZWYgdnNucHJpbnRmCiAjZW5kaWYKICNkZWZpbmUgdnNucHJpbnRmIGdpdF92c25wcmludGYKLWV4dGVybiBpbnQgZ2l0X3ZzbnByaW50ZihjaGFyICpzdHIsIHNpemVfdCBtYXhzaXplLAotCQkJIGNvbnN0IGNoYXIgKmZvcm1hdCwgdmFfbGlzdCBhcCk7CitpbnQgZ2l0X3ZzbnByaW50ZihjaGFyICpzdHIsIHNpemVfdCBtYXhzaXplLAorCQkgIGNvbnN0IGNoYXIgKmZvcm1hdCwgdmFfbGlzdCBhcCk7CiAjZW5kaWYKIAogI2lmZGVmIF9fR0xJQkNfUFJFUkVRCkBAIC03OTUsMTIgKzgwMCw5IEBACiAKICNpZmRlZiBOT19QVEhSRUFEUwogI2RlZmluZSBhdGV4aXQgZ2l0X2F0ZXhpdAotZXh0ZXJuIGludCBnaXRfYXRleGl0KHZvaWQgKCpoYW5kbGVyKSh2b2lkKSk7CitpbnQgZ2l0X2F0ZXhpdCh2b2lkICgqaGFuZGxlcikodm9pZCkpOwogI2VuZGlmCiAKLXR5cGVkZWYgdm9pZCAoKnRyeV90b19mcmVlX3QpKHNpemVfdCk7Ci1leHRlcm4gdHJ5X3RvX2ZyZWVfdCBzZXRfdHJ5X3RvX2ZyZWVfcm91dGluZSh0cnlfdG9fZnJlZV90KTsKLQogc3RhdGljIGlubGluZSBzaXplX3Qgc3RfYWRkKHNpemVfdCBhLCBzaXplX3QgYikKIHsKIAlpZiAodW5zaWduZWRfYWRkX292ZXJmbG93cyhhLCBiKSkKQEAgLTgzNSwyOCArODM3LDI4IEBACiAjIGRlZmluZSB4YWxsb2NhKHNpemUpICAgICAgKHhtYWxsb2Moc2l6ZSkpCiAjIGRlZmluZSB4YWxsb2NhX2ZyZWUocCkgICAgKGZyZWUocCkpCiAjZW5kaWYKLWV4dGVybiBjaGFyICp4c3RyZHVwKGNvbnN0IGNoYXIgKnN0cik7Ci1leHRlcm4gdm9pZCAqeG1hbGxvYyhzaXplX3Qgc2l6ZSk7Ci1leHRlcm4gdm9pZCAqeG1hbGxvY3ooc2l6ZV90IHNpemUpOwotZXh0ZXJuIHZvaWQgKnhtYWxsb2N6X2dlbnRseShzaXplX3Qgc2l6ZSk7Ci1leHRlcm4gdm9pZCAqeG1lbWR1cHooY29uc3Qgdm9pZCAqZGF0YSwgc2l6ZV90IGxlbik7Ci1leHRlcm4gY2hhciAqeHN0cm5kdXAoY29uc3QgY2hhciAqc3RyLCBzaXplX3QgbGVuKTsKLWV4dGVybiB2b2lkICp4cmVhbGxvYyh2b2lkICpwdHIsIHNpemVfdCBzaXplKTsKLWV4dGVybiB2b2lkICp4Y2FsbG9jKHNpemVfdCBubWVtYiwgc2l6ZV90IHNpemUpOwotZXh0ZXJuIHZvaWQgKnhtbWFwKHZvaWQgKnN0YXJ0LCBzaXplX3QgbGVuZ3RoLCBpbnQgcHJvdCwgaW50IGZsYWdzLCBpbnQgZmQsIG9mZl90IG9mZnNldCk7Ci1leHRlcm4gdm9pZCAqeG1tYXBfZ2VudGx5KHZvaWQgKnN0YXJ0LCBzaXplX3QgbGVuZ3RoLCBpbnQgcHJvdCwgaW50IGZsYWdzLCBpbnQgZmQsIG9mZl90IG9mZnNldCk7Ci1leHRlcm4gaW50IHhvcGVuKGNvbnN0IGNoYXIgKnBhdGgsIGludCBmbGFncywgLi4uKTsKLWV4dGVybiBzc2l6ZV90IHhyZWFkKGludCBmZCwgdm9pZCAqYnVmLCBzaXplX3QgbGVuKTsKLWV4dGVybiBzc2l6ZV90IHh3cml0ZShpbnQgZmQsIGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbik7Ci1leHRlcm4gc3NpemVfdCB4cHJlYWQoaW50IGZkLCB2b2lkICpidWYsIHNpemVfdCBsZW4sIG9mZl90IG9mZnNldCk7Ci1leHRlcm4gaW50IHhkdXAoaW50IGZkKTsKLWV4dGVybiBGSUxFICp4Zm9wZW4oY29uc3QgY2hhciAqcGF0aCwgY29uc3QgY2hhciAqbW9kZSk7Ci1leHRlcm4gRklMRSAqeGZkb3BlbihpbnQgZmQsIGNvbnN0IGNoYXIgKm1vZGUpOwotZXh0ZXJuIGludCB4bWtzdGVtcChjaGFyICp0ZW1wX2ZpbGVuYW1lKTsKLWV4dGVybiBpbnQgeG1rc3RlbXBfbW9kZShjaGFyICp0ZW1wX2ZpbGVuYW1lLCBpbnQgbW9kZSk7Ci1leHRlcm4gY2hhciAqeGdldGN3ZCh2b2lkKTsKLWV4dGVybiBGSUxFICpmb3Blbl9mb3Jfd3JpdGluZyhjb25zdCBjaGFyICpwYXRoKTsKLWV4dGVybiBGSUxFICpmb3Blbl9vcl93YXJuKGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IGNoYXIgKm1vZGUpOworY2hhciAqeHN0cmR1cChjb25zdCBjaGFyICpzdHIpOwordm9pZCAqeG1hbGxvYyhzaXplX3Qgc2l6ZSk7Cit2b2lkICp4bWFsbG9jeihzaXplX3Qgc2l6ZSk7Cit2b2lkICp4bWFsbG9jel9nZW50bHkoc2l6ZV90IHNpemUpOwordm9pZCAqeG1lbWR1cHooY29uc3Qgdm9pZCAqZGF0YSwgc2l6ZV90IGxlbik7CitjaGFyICp4c3RybmR1cChjb25zdCBjaGFyICpzdHIsIHNpemVfdCBsZW4pOwordm9pZCAqeHJlYWxsb2Modm9pZCAqcHRyLCBzaXplX3Qgc2l6ZSk7Cit2b2lkICp4Y2FsbG9jKHNpemVfdCBubWVtYiwgc2l6ZV90IHNpemUpOwordm9pZCAqeG1tYXAodm9pZCAqc3RhcnQsIHNpemVfdCBsZW5ndGgsIGludCBwcm90LCBpbnQgZmxhZ3MsIGludCBmZCwgb2ZmX3Qgb2Zmc2V0KTsKK3ZvaWQgKnhtbWFwX2dlbnRseSh2b2lkICpzdGFydCwgc2l6ZV90IGxlbmd0aCwgaW50IHByb3QsIGludCBmbGFncywgaW50IGZkLCBvZmZfdCBvZmZzZXQpOworaW50IHhvcGVuKGNvbnN0IGNoYXIgKnBhdGgsIGludCBmbGFncywgLi4uKTsKK3NzaXplX3QgeHJlYWQoaW50IGZkLCB2b2lkICpidWYsIHNpemVfdCBsZW4pOworc3NpemVfdCB4d3JpdGUoaW50IGZkLCBjb25zdCB2b2lkICpidWYsIHNpemVfdCBsZW4pOworc3NpemVfdCB4cHJlYWQoaW50IGZkLCB2b2lkICpidWYsIHNpemVfdCBsZW4sIG9mZl90IG9mZnNldCk7CitpbnQgeGR1cChpbnQgZmQpOworRklMRSAqeGZvcGVuKGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IGNoYXIgKm1vZGUpOworRklMRSAqeGZkb3BlbihpbnQgZmQsIGNvbnN0IGNoYXIgKm1vZGUpOworaW50IHhta3N0ZW1wKGNoYXIgKnRlbXBfZmlsZW5hbWUpOworaW50IHhta3N0ZW1wX21vZGUoY2hhciAqdGVtcF9maWxlbmFtZSwgaW50IG1vZGUpOworY2hhciAqeGdldGN3ZCh2b2lkKTsKK0ZJTEUgKmZvcGVuX2Zvcl93cml0aW5nKGNvbnN0IGNoYXIgKnBhdGgpOworRklMRSAqZm9wZW5fb3Jfd2Fybihjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICptb2RlKTsKIAogLyoKICAqIEZSRUVfQU5EX05VTEwocHRyKSBpcyBsaWtlIGZyZWUocHRyKSBmb2xsb3dlZCBieSBwdHIgPSBOVUxMLiBOb3RlCkBAIC05NTYsMTMgKzk1OCwxMyBAQAogfQogCiBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMywgNCkpKQotZXh0ZXJuIGludCB4c25wcmludGYoY2hhciAqZHN0LCBzaXplX3QgbWF4LCBjb25zdCBjaGFyICpmbXQsIC4uLik7CitpbnQgeHNucHJpbnRmKGNoYXIgKmRzdCwgc2l6ZV90IG1heCwgY29uc3QgY2hhciAqZm10LCAuLi4pOwogCiAjaWZuZGVmIEhPU1RfTkFNRV9NQVgKICNkZWZpbmUgSE9TVF9OQU1FX01BWCAyNTYKICNlbmRpZgogCi1leHRlcm4gaW50IHhnZXRob3N0bmFtZShjaGFyICpidWYsIHNpemVfdCBsZW4pOworaW50IHhnZXRob3N0bmFtZShjaGFyICpidWYsIHNpemVfdCBsZW4pOwogCiAvKiBpbiBjdHlwZS5jLCBmb3Iga3dzZXQgdXNlcnMgKi8KIGV4dGVybiBjb25zdCB1bnNpZ25lZCBjaGFyIHRvbG93ZXJfdHJhbnNfdGJsWzI1Nl07CkBAIC0xMDc0LDEwICsxMDc2LDEwIEBACiAJcmV0dXJuIDA7CiB9CiAKK3ZvaWQgZ2l0X3N0YWJsZV9xc29ydCh2b2lkICpiYXNlLCBzaXplX3Qgbm1lbWIsIHNpemVfdCBzaXplLAorCQkgICAgICBpbnQoKmNvbXBhcikoY29uc3Qgdm9pZCAqLCBjb25zdCB2b2lkICopKTsKICNpZmRlZiBJTlRFUk5BTF9RU09SVAotdm9pZCBnaXRfcXNvcnQodm9pZCAqYmFzZSwgc2l6ZV90IG5tZW1iLCBzaXplX3Qgc2l6ZSwKLQkgICAgICAgaW50KCpjb21wYXIpKGNvbnN0IHZvaWQgKiwgY29uc3Qgdm9pZCAqKSk7Ci0jZGVmaW5lIHFzb3J0IGdpdF9xc29ydAorI2RlZmluZSBxc29ydCBnaXRfc3RhYmxlX3Fzb3J0CiAjZW5kaWYKIAogI2RlZmluZSBRU09SVChiYXNlLCBuLCBjb21wYXIpIHNhbmVfcXNvcnQoKGJhc2UpLCAobiksIHNpemVvZigqKGJhc2UpKSwgY29tcGFyKQpAQCAtMTA4OCw2ICsxMDkwLDkgQEAKIAkJcXNvcnQoYmFzZSwgbm1lbWIsIHNpemUsIGNvbXBhcik7CiB9CiAKKyNkZWZpbmUgU1RBQkxFX1FTT1JUKGJhc2UsIG4sIGNvbXBhcikgXAorCWdpdF9zdGFibGVfcXNvcnQoKGJhc2UpLCAobiksIHNpemVvZigqKGJhc2UpKSwgY29tcGFyKQorCiAjaWZuZGVmIEhBVkVfSVNPX1FTT1JUX1MKIGludCBnaXRfcXNvcnRfcyh2b2lkICpiYXNlLCBzaXplX3Qgbm1lbWIsIHNpemVfdCBzaXplLAogCQlpbnQgKCpjb21wYXIpKGNvbnN0IHZvaWQgKiwgY29uc3Qgdm9pZCAqLCB2b2lkICopLCB2b2lkICpjdHgpOwpAQCAtMTIyNCw2ICsxMjI5LDI0IEBACiAjZGVmaW5lIGdldGNfdW5sb2NrZWQoZmgpIGdldGMoZmgpCiAjZW5kaWYKIAorI2lmZGVmIEZJTEVOT19JU19BX01BQ1JPCitpbnQgZ2l0X2ZpbGVubyhGSUxFICpzdHJlYW0pOworIyBpZm5kZWYgQ09NUEFUX0NPREVfRklMRU5PCisjICB1bmRlZiBmaWxlbm8KKyMgIGRlZmluZSBmaWxlbm8ocCkgZ2l0X2ZpbGVubyhwKQorIyBlbmRpZgorI2VuZGlmCisKKyNpZmRlZiBORUVEX0FDQ0VTU19ST09UX0hBTkRMRVIKK2ludCBnaXRfYWNjZXNzKGNvbnN0IGNoYXIgKnBhdGgsIGludCBtb2RlKTsKKyMgaWZuZGVmIENPTVBBVF9DT0RFX0FDQ0VTUworIyAgaWZkZWYgYWNjZXNzCisjICB1bmRlZiBhY2Nlc3MKKyMgIGVuZGlmCisjICBkZWZpbmUgYWNjZXNzKHBhdGgsIG1vZGUpIGdpdF9hY2Nlc3MocGF0aCwgbW9kZSkKKyMgZW5kaWYKKyNlbmRpZgorCiAvKgogICogT3VyIGNvZGUgb2Z0ZW4gb3BlbnMgYSBwYXRoIHRvIGFuIG9wdGlvbmFsIGZpbGUsIHRvIHdvcmsgb24gaXRzCiAgKiBjb250ZW50cyB3aGVuIHdlIGNhbiBzdWNjZXNzZnVsbHkgb3BlbiBpdC4gIFdlIGNhbiBpZ25vcmUgYSBmYWlsdXJlCkBAIC0xMjM5LDcgKzEyNjIsMTQgQEAKIAlyZXR1cm4gKGVycm5vXyA9PSBFTk9FTlQgfHwgZXJybm9fID09IEVOT1RESVIpOwogfQogCi1leHRlcm4gaW50IGNtZF9tYWluKGludCwgY29uc3QgY2hhciAqKik7CitpbnQgY21kX21haW4oaW50LCBjb25zdCBjaGFyICoqKTsKKworLyoKKyAqIEludGVyY2VwdCBhbGwgY2FsbHMgdG8gZXhpdCgpIGFuZCByb3V0ZSB0aGVtIHRvIHRyYWNlMiB0bworICogb3B0aW9uYWxseSBlbWl0IGEgbWVzc2FnZSBiZWZvcmUgY2FsbGluZyB0aGUgcmVhbCBleGl0KCkuCisgKi8KK2ludCB0cmFjZTJfY21kX2V4aXRfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGludCBjb2RlKTsKKyNkZWZpbmUgZXhpdChjb2RlKSBleGl0KHRyYWNlMl9jbWRfZXhpdF9mbChfX0ZJTEVfXywgX19MSU5FX18sIChjb2RlKSkpCiAKIC8qCiAgKiBZb3UgY2FuIG1hcmsgYSBzdGFjayB2YXJpYWJsZSB3aXRoIFVOTEVBSyh2YXIpIHRvIGF2b2lkIGl0IGJlaW5nCkBAIC0xMjU1LDcgKzEyODUsNyBAQAogICogYW4gYW5ub3RhdGlvbiwgYW5kIGRvZXMgbm90aGluZyBpbiBub24tbGVhay1jaGVja2luZyBidWlsZHMuCiAgKi8KICNpZmRlZiBTVVBQUkVTU19BTk5PVEFURURfTEVBS1MKLWV4dGVybiB2b2lkIHVubGVha19tZW1vcnkoY29uc3Qgdm9pZCAqcHRyLCBzaXplX3QgbGVuKTsKK3ZvaWQgdW5sZWFrX21lbW9yeShjb25zdCB2b2lkICpwdHIsIHNpemVfdCBsZW4pOwogI2RlZmluZSBVTkxFQUsodmFyKSB1bmxlYWtfbWVtb3J5KCYodmFyKSwgc2l6ZW9mKHZhcikpCiAjZWxzZQogI2RlZmluZSBVTkxFQUsodmFyKSBkbyB7fSB3aGlsZSAoMCkKQEAgLTEyNjcsNCArMTI5Nyw0MiBAQAogICovCiAjaW5jbHVkZSAiYmFubmVkLmgiCiAKKy8qCisgKiBjb250YWluZXJfb2YgLSBHZXQgdGhlIGFkZHJlc3Mgb2YgYW4gb2JqZWN0IGNvbnRhaW5pbmcgYSBmaWVsZC4KKyAqCisgKiBAcHRyOiBwb2ludGVyIHRvIHRoZSBmaWVsZC4KKyAqIEB0eXBlOiB0eXBlIG9mIHRoZSBvYmplY3QuCisgKiBAbWVtYmVyOiBuYW1lIG9mIHRoZSBmaWVsZCB3aXRoaW4gdGhlIG9iamVjdC4KKyAqLworI2RlZmluZSBjb250YWluZXJfb2YocHRyLCB0eXBlLCBtZW1iZXIpIFwKKwkoKHR5cGUgKikgKChjaGFyICopKHB0cikgLSBvZmZzZXRvZih0eXBlLCBtZW1iZXIpKSkKKworLyoKKyAqIGhlbHBlciBmdW5jdGlvbiBmb3IgYGNvbnRhaW5lcl9vZl9vcl9udWxsJyB0byBhdm9pZCBtdWx0aXBsZQorICogZXZhbHVhdGlvbiBvZiBAcHRyCisgKi8KK3N0YXRpYyBpbmxpbmUgdm9pZCAqY29udGFpbmVyX29mX29yX251bGxfb2Zmc2V0KHZvaWQgKnB0ciwgc2l6ZV90IG9mZnNldCkKK3sKKwlyZXR1cm4gcHRyID8gKGNoYXIgKilwdHIgLSBvZmZzZXQgOiBOVUxMOworfQorCisvKgorICogbGlrZSBgY29udGFpbmVyX29mJywgYnV0IGFsbG93cyByZXR1cm5lZCB2YWx1ZSB0byBiZSBOVUxMCisgKi8KKyNkZWZpbmUgY29udGFpbmVyX29mX29yX251bGwocHRyLCB0eXBlLCBtZW1iZXIpIFwKKwkodHlwZSAqKWNvbnRhaW5lcl9vZl9vcl9udWxsX29mZnNldChwdHIsIG9mZnNldG9mKHR5cGUsIG1lbWJlcikpCisKKy8qCisgKiBsaWtlIG9mZnNldG9mKCksIGJ1dCB0YWtlcyBhIHBvaW50ZXIgdG8gYSBhIHZhcmlhYmxlIG9mIHR5cGUgd2hpY2gKKyAqIGNvbnRhaW5zIEBtZW1iZXIsIGluc3RlYWQgb2YgYSBzcGVjaWZpZWQgdHlwZS4KKyAqIEBwdHIgaXMgc3ViamVjdCB0byBtdWx0aXBsZSBldmFsdWF0aW9uIHNpbmNlIHdlIGNhbid0IHJlbHkgb24gX190eXBlb2ZfXworICogZXZlcnl3aGVyZS4KKyAqLworI2lmIGRlZmluZWQoX19HTlVDX18pIC8qIGNsYW5nIHNldHMgdGhpcywgdG9vICovCisjZGVmaW5lIE9GRlNFVE9GX1ZBUihwdHIsIG1lbWJlcikgb2Zmc2V0b2YoX190eXBlb2ZfXygqcHRyKSwgbWVtYmVyKQorI2Vsc2UgLyogIV9fR05VQ19fICovCisjZGVmaW5lIE9GRlNFVE9GX1ZBUihwdHIsIG1lbWJlcikgXAorCSgodWludHB0cl90KSYocHRyKS0+bWVtYmVyIC0gKHVpbnRwdHJfdCkocHRyKSkKKyNlbmRpZiAvKiAhX19HTlVDX18gKi8KKwogI2VuZGlmCmRpZmYgLS1naXQgYS9naXQtY3ZzZXhwb3J0Y29tbWl0LnBlcmwgYi9naXQtY3ZzZXhwb3J0Y29tbWl0LnBlcmwKaW5kZXggZDEzZjAyZC4uZmMwMGQ1OSAxMDA3NTUKLS0tIGEvZ2l0LWN2c2V4cG9ydGNvbW1pdC5wZXJsCisrKyBiL2dpdC1jdnNleHBvcnRjb21taXQucGVybApAQCAtNDMxLDYgKzQzMSw3IEBACiBzdWIgc2FmZV9waXBlX2NhcHR1cmUgewogICAgIG15IEBvdXRwdXQ7CiAgICAgaWYgKG15ICRwaWQgPSBvcGVuIG15ICRjaGlsZCwgJy18JykgeworCWJpbm1vZGUoJGNoaWxkLCAiOmNybGYiKTsKIAlAb3V0cHV0ID0gKDwkY2hpbGQ+KTsKIAljbG9zZSAkY2hpbGQgb3IgZGllIGpvaW4oJyAnLEBfKS4iOiAkISAkPyI7CiAgICAgfSBlbHNlIHsKZGlmZiAtLWdpdCBhL2dpdC1jdnNpbXBvcnQucGVybCBiL2dpdC1jdnNpbXBvcnQucGVybAppbmRleCBiMzE2MTNjLi4xMDU3ZjM4IDEwMDc1NQotLS0gYS9naXQtY3ZzaW1wb3J0LnBlcmwKKysrIGIvZ2l0LWN2c2ltcG9ydC5wZXJsCkBAIC02MDAsNyArNjAwLDcgQEAKIHN1YiBwZGF0ZSgkKSB7CiAJbXkgKCRkKSA9IEBfOwogCW0jKFxkezIsNH0pLyhcZFxkKS8oXGRcZClccyhcZFxkKTooXGRcZCkoPzo6KFxkXGQpKT8jCi0JCW9yIGRpZSAiVW5wYXJzZWFibGUgZGF0ZTogJGRcbiI7CisJCW9yIGRpZSAiVW5wYXJzYWJsZSBkYXRlOiAkZFxuIjsKIAlteSAkeT0kMTsKIAkkeSs9MTAwIGlmICR5PDcwOwogCSR5Kz0xOTAwIGlmICR5PDEwMDA7CmRpZmYgLS1naXQgYS9naXQtZGlmZnRvb2wtLWhlbHBlci5zaCBiL2dpdC1kaWZmdG9vbC0taGVscGVyLnNoCmluZGV4IDdiZmI2NzMuLjQ2YWYzZTYgMTAwNzU1Ci0tLSBhL2dpdC1kaWZmdG9vbC0taGVscGVyLnNoCisrKyBiL2dpdC1kaWZmdG9vbC0taGVscGVyLnNoCkBAIC03MSw3ICs3MSw3IEBACiAJdGhlbgogCQltZXJnZV90b29sPSIkR0lUX0RJRkZfVE9PTCIKIAllbHNlCi0JCW1lcmdlX3Rvb2w9IiQoZ2V0X21lcmdlX3Rvb2wpIiB8fCBleGl0CisJCW1lcmdlX3Rvb2w9IiQoZ2V0X21lcmdlX3Rvb2wpIgogCWZpCiBmaQogCmRpZmYgLS1naXQgYS9naXQtZmlsdGVyLWJyYW5jaC5zaCBiL2dpdC1maWx0ZXItYnJhbmNoLnNoCmluZGV4IDVjNWFmYTIuLmZlYTc5NjQgMTAwNzU1Ci0tLSBhL2dpdC1maWx0ZXItYnJhbmNoLnNoCisrKyBiL2dpdC1maWx0ZXItYnJhbmNoLnNoCkBAIC04Myw2ICs4MywyMCBAQAogCWZpbmlzaF9pZGVudCBDT01NSVRURVIKIH0KIAoraWYgdGVzdCAteiAiJEZJTFRFUl9CUkFOQ0hfU1FVRUxDSF9XQVJOSU5HJEdJVF9URVNUX0RJU0FMTE9XX0FCQlJFVklBVEVEX09QVElPTlMiCit0aGVuCisJY2F0IDw8RU9GCitXQVJOSU5HOiBnaXQtZmlsdGVyLWJyYW5jaCBoYXMgYSBnbHV0IG9mIGdvdGNoYXMgZ2VuZXJhdGluZyBtYW5nbGVkIGhpc3RvcnkKKwkgcmV3cml0ZXMuICBIaXQgQ3RybC1DIGJlZm9yZSBwcm9jZWVkaW5nIHRvIGFib3J0LCB0aGVuIHVzZSBhbgorCSBhbHRlcm5hdGl2ZSBmaWx0ZXJpbmcgdG9vbCBzdWNoIGFzICdnaXQgZmlsdGVyLXJlcG8nCisJIChodHRwczovL2dpdGh1Yi5jb20vbmV3cmVuL2dpdC1maWx0ZXItcmVwby8pIGluc3RlYWQuICBTZWUgdGhlCisJIGZpbHRlci1icmFuY2ggbWFudWFsIHBhZ2UgZm9yIG1vcmUgZGV0YWlsczsgdG8gc3F1ZWxjaCB0aGlzIHdhcm5pbmcsCisJIHNldCBGSUxURVJfQlJBTkNIX1NRVUVMQ0hfV0FSTklORz0xLgorRU9GCisJc2xlZXAgMTAKKwlwcmludGYgIlByb2NlZWRpbmcgd2l0aCBmaWx0ZXItYnJhbmNoLi4uXG5cbiIKK2ZpCisKIFVTQUdFPSJbLS1zZXR1cCA8Y29tbWFuZD5dIFstLXN1YmRpcmVjdG9yeS1maWx0ZXIgPGRpcmVjdG9yeT5dIFstLWVudi1maWx0ZXIgPGNvbW1hbmQ+XQogCVstLXRyZWUtZmlsdGVyIDxjb21tYW5kPl0gWy0taW5kZXgtZmlsdGVyIDxjb21tYW5kPl0KIAlbLS1wYXJlbnQtZmlsdGVyIDxjb21tYW5kPl0gWy0tbXNnLWZpbHRlciA8Y29tbWFuZD5dCmRpZmYgLS1naXQgYS9naXQtZ3VpL1JFQURNRS5tZCBiL2dpdC1ndWkvUkVBRE1FLm1kCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVjZTIxMjIKLS0tIC9kZXYvbnVsbAorKysgYi9naXQtZ3VpL1JFQURNRS5tZApAQCAtMCwwICsxLDE3NCBAQAorIyBHaXQgR1VJIC0gQSBncmFwaGljYWwgdXNlciBpbnRlcmZhY2UgZm9yIEdpdAorCitHaXQgR1VJIGFsbG93cyB5b3UgdG8gdXNlIHRoZSBbR2l0IHNvdXJjZSBjb250cm9sIG1hbmFnZW1lbnQKK3Rvb2xzXShodHRwczovL2dpdC1zY20uY29tLykgdmlhIGEgR1VJLiBUaGlzIGluY2x1ZGVzIHN0YWdpbmcsIGNvbW1pdHRpbmcsCithZGRpbmcsIHB1c2hpbmcsIGV0Yy4gSXQgY2FuIGFsc28gYmUgdXNlZCBhcyBhIGJsYW1lIHZpZXdlciwgYSB0cmVlIGJyb3dzZXIsCithbmQgYSBjaXRvb2wgKG1ha2UgZXhhY3RseSBvbmUgY29tbWl0IGJlZm9yZSBleGl0aW5nIGFuZCByZXR1cm5pbmcgdG8gc2hlbGwpLgorTW9yZSBkZXRhaWxzIGFib3V0IEdpdCBHVUkgY2FuIGJlIGZvdW5kIGluIGl0cyBtYW51YWwgcGFnZSBieSBlaXRoZXIgcnVubmluZworYG1hbiBnaXQtZ3VpYCwgb3IgYnkgdmlzaXRpbmcgdGhlIFtvbmxpbmUgbWFudWFsCitwYWdlXShodHRwczovL2dpdC1zY20uY29tL2RvY3MvZ2l0LWd1aSkuCisKK0dpdCBHVUkgd2FzIGluaXRpYWxseSB3cml0dGVuIGJ5IFNoYXduIE8uIFBlYXJjZSwgYW5kIGlzIGRpc3RyaWJ1dGVkIHdpdGggdGhlCitzdGFuZGFyZCBHaXQgaW5zdGFsbGF0aW9uLgorCisjIEJ1aWxkaW5nIGFuZCBpbnN0YWxsaW5nCisKK1lvdSBuZWVkIHRvIGhhdmUgdGhlIGZvbGxvd2luZyBkZXBlbmRlbmNpZXMgaW5zdGFsbGVkIGJlZm9yZSB5b3UgYmVnaW46CisKKy0gR2l0CistIFRjbAorLSBUaworLSB3aXNoCistIEdpdGsgKG5lZWRlZCBmb3IgYnJvd3NpbmcgaGlzdG9yeSkKKy0gbXNnZm10CisKK01vc3Qgb2YgR2l0IEdVSSBpcyB3cml0dGVuIGluIFRjbCwgc28gdGhlcmUgaXMgbm8gY29tcGlsYXRpb24gaW52b2x2ZWQuIFN0aWxsLAorc29tZSB0aGluZ3MgZG8gbmVlZCB0byBiZSBkb25lIChtb3N0bHkgc29tZSBzdWJzdGl0dXRpb25zKSwgc28geW91IGRvIG5lZWQgdG8KKyJidWlsZCIgaXQuCisKK1lvdSBjYW4gYnVpbGQgR2l0IEdVSSB1c2luZzoKKworYGBgCittYWtlCitgYGAKKworQW5kIHRoZW4gaW5zdGFsbCBpdCB1c2luZzoKKworYGBgCittYWtlIGluc3RhbGwKK2BgYAorCitZb3UgcHJvYmFibHkgbmVlZCB0byBoYXZlIHJvb3QvYWRtaW4gcGVybWlzc2lvbnMgdG8gaW5zdGFsbC4KKworIyBDb250cmlidXRpbmcKKworVGhlIHByb2plY3QgaXMgY3VycmVudGx5IG1haW50YWluZWQgYnkgUHJhdHl1c2ggWWFkYXYgb3ZlciBhdAoraHR0cHM6Ly9naXRodWIuY29tL3ByYXRpMDEwMC9naXQtZ3VpLiBFdmVuIHRob3VnaCB0aGUgcHJvamVjdCBpcyBob3N0ZWQgYXQKK0dpdEh1YiwgdGhlIGRldmVsb3BtZW50IGRvZXMgbm90IGhhcHBlbiBvdmVyIEdpdEh1YiBJc3N1ZXMgYW5kIFB1bGwgUmVxdWVzdHMuCitJbnN0ZWFkLCBhbiBlbWFpbCBiYXNlZCB3b3JrZmxvdyBpcyB1c2VkLiBUaGUgR2l0IG1haWxpbmcgbGlzdAorW2dpdEB2Z2VyLmtlcm5lbC5vcmddKG1haWx0bzpnaXRAdmdlci5rZXJuZWwub3JnKSBpcyB3aGVyZSB0aGUgcGF0Y2hlcyBhcmUKK2Rpc2N1c3NlZCBhbmQgcmV2aWV3ZWQuCisKK01vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIEdpdCBtYWlsaW5nIGxpc3QgYW5kIGluc3RydWN0aW9ucyB0byBzdWJzY3JpYmUgY2FuCitiZSBmb3VuZCBbaGVyZV0oaHR0cHM6Ly9naXQud2lraS5rZXJuZWwub3JnL2luZGV4LnBocC9HaXRDb21tdW5pdHkpLgorCisjIyBTZW5kaW5nIHlvdXIgY2hhbmdlcworCitTaW5jZSB0aGUgZGV2ZWxvcG1lbnQgaGFwcGVucyBvdmVyIGVtYWlsLCB5b3UgbmVlZCB0byBzZW5kIGluIHlvdXIgY29tbWl0cyBpbgordGV4dCBmb3JtYXQuIENvbW1pdHMgY2FuIGJlIGNvbnZlcnRlZCB0byBlbWFpbHMgdmlhIHRoZSB0d28gdG9vbHMgcHJvdmlkZWQgYnkKK0dpdDogYGdpdC1zZW5kLWVtYWlsYCBhbmQgYGdpdC1mb3JtYXQtcGF0Y2hgLgorCitZb3UgY2FuIHVzZSBgZ2l0LWZvcm1hdC1wYXRjaGAgdG8gZ2VuZXJhdGUgcGF0Y2hlcyBpbiBtYm94IGZvcm1hdCBmcm9tIHlvdXIKK2NvbW1pdHMgdGhhdCBjYW4gdGhlbiBiZSBzZW50IHZpYSBlbWFpbC4gTGV0J3Mgc2F5IHlvdSBhcmUgd29ya2luZyBvbiBhIGJyYW5jaAorY2FsbGVkICdmb28nIHRoYXQgd2FzIGNyZWF0ZWQgb24gdG9wIG9mICdtYXN0ZXInLiBZb3UgY2FuIHJ1bjoKKworYGBgCitnaXQgZm9ybWF0LXBhdGNoIC1vIG91dHB1dF9kaXIgbWFzdGVyLi5mb28KK2BgYAorCit0byBjb252ZXJ0IGFsbCB0aGUgZXh0cmEgY29tbWl0cyBpbiAnZm9vJyBpbnRvIGEgc2V0IG9mIHBhdGNoZXMgc2F2ZWQgaW4gdGhlCitmb2xkZXIgYG91dHB1dF9kaXJgLgorCitJZiB5b3UgYXJlIHNlbmRpbmcgbXVsdGlwbGUgcGF0Y2hlcywgaXQgaXMgcmVjb21tZW5kZWQgdG8gaW5jbHVkZSBhIGNvdmVyCitsZXR0ZXIuIEEgY292ZXIgbGV0dGVyIGlzIGFuIGVtYWlsIGV4cGxhaW5pbmcgaW4gYnJpZWYgd2hhdCB0aGUgc2VyaWVzIGlzCitzdXBwb3NlZCB0byBkby4gQSBjb3ZlciBsZXR0ZXIgdGVtcGxhdGUgY2FuIGJlIGdlbmVyYXRlZCBieSBwYXNzaW5nCitgLS1jb3Zlci1sZXR0ZXJgIHRvIGBnaXQtZm9ybWF0LXBhdGNoYC4KKworQWZ0ZXIgeW91IHNlbmQgeW91ciBwYXRjaGVzLCB5b3UgbWlnaHQgZ2V0IGEgcmV2aWV3IHN1Z2dlc3Rpbmcgc29tZSBjaGFuZ2VzLgorTWFrZSB0aG9zZSBjaGFuZ2VzLCBhbmQgcmUtc2VuZCB5b3VyIHBhdGNoKGVzKSBpbiByZXBseSB0byB0aGUgZmlyc3QgcGF0Y2ggb2YKK3lvdXIgaW5pdGlhbCB2ZXJzaW9uLiBBbHNvIHBsZWFzZSBtZW50aW9uIHRoZSB2ZXJzaW9uIG9mIHRoZSBwYXRjaC4gVGhpcyBjYW4gYmUKK2RvbmUgYnkgcGFzc2luZyBgLXYgWGAgdG8gYGdpdC1mb3JtYXQtcGF0Y2hgLCB3aGVyZSAnWCcgaXMgdGhlIHZlcnNpb24gbnVtYmVyCitvZiB0aGUgcGF0Y2goZXMpLgorCisjIyMgVXNpbmcgZ2l0LXNlbmQtZW1haWwKKworWW91IGNhbiB1c2UgYGdpdC1zZW5kLWVtYWlsYCB0byBzZW5kIHBhdGNoZXMgZ2VuZXJhdGVkIHZpYSBgZ2l0LWZvcm1hdC1wYXRjaGAuCitXaGlsZSB5b3UgY2FuIGRpcmVjdGx5IHNlbmQgcGF0Y2hlcyB2aWEgYGdpdC1zZW5kLWVtYWlsYCwgaXQgaXMgcmVjb21tZW5kZWQKK3RoYXQgeW91IGZpcnN0IHVzZSBgZ2l0LWZvcm1hdC1wYXRjaGAgdG8gZ2VuZXJhdGUgdGhlIGVtYWlscywgYXVkaXQgdGhlbSwgYW5kCit0aGVuIHNlbmQgdGhlbSB2aWEgYGdpdC1zZW5kLWVtYWlsYC4KKworQSBwcmV0dHkgZ29vZCBndWlkZSB0byBjb25maWd1cmluZyBhbmQgdXNpbmcgYGdpdC1zZW5kLWVtYWlsYCBjYW4gYmUgZm91bmQKK1toZXJlXShodHRwczovL3d3dy5mcmVlZGVza3RvcC5vcmcvd2lraS9Tb2Z0d2FyZS9QdWxzZUF1ZGlvL0hvd1RvVXNlR2l0U2VuZEVtYWlsLykKKworIyMjIFVzaW5nIHlvdXIgZW1haWwgY2xpZW50CisKK0lmIHlvdXIgZW1haWwgY2xpZW50IHN1cHBvcnRzIHNlbmRpbmcgbWJveCBmb3JtYXQgZW1haWxzLCB5b3UgY2FuIHVzZQorYGdpdC1mb3JtYXQtcGF0Y2hgIHRvIGdldCBhbiBtYm94IGZpbGUgZm9yIGVhY2ggY29tbWl0LCBhbmQgdGhlbiBzZW5kIHRoZW0uIElmCit0aGVyZSBpcyBtb3JlIHRoYW4gb25lIHBhdGNoIGluIHRoZSBzZXJpZXMsIHRoZW4gYWxsIHBhdGNoZXMgYWZ0ZXIgdGhlIGZpcnN0CitwYXRjaCAob3IgdGhlIGNvdmVyIGxldHRlcikgbmVlZCB0byBiZSBzZW50IGFzIHJlcGxpZXMgdG8gdGhlIGZpcnN0LgorYGdpdC1zZW5kLWVtYWlsYCBkb2VzIHRoaXMgYnkgZGVmYXVsdC4KKworIyMjIFVzaW5nIEdpdEdpdEdhZGdldAorCitTaW5jZSBzb21lIHBlb3BsZSBwcmVmZXIgYSBHaXRIdWIgcHVsbCByZXF1ZXN0IGJhc2VkIHdvcmtmbG93LCB0aGV5IGNhbiB1c2UKK1tHaXRHaXRHYWRnZXRdKGh0dHBzOi8vZ2l0Z2l0Z2FkZ2V0LmdpdGh1Yi5pby8pIHRvIHNlbmQgaW4gcGF0Y2hlcy4gVGhlIHRvb2wKK3dhcyBvcmlnaW5hbGx5IHdyaXR0ZW4gZm9yIHNlbmRpbmcgcGF0Y2hlcyB0byB0aGUgR2l0IHByb2plY3QsIGJ1dCBpdCBub3cgYWxzbworc3VwcG9ydHMgc2VuZGluZyBwYXRjaGVzIGZvciBnaXQtZ3VpLgorCitJbnN0cnVjdGlvbnMgZm9yIHVzaW5nIEdpdEdpdEdhZGdldCB0byBzZW5kIGdpdC1ndWkgcGF0Y2hlcywgY291cnRlc3kgb2YKK0pvaGFubmVzIFNjaGluZGVsaW46CisKK0lmIHlvdSBkb24ndCBhbHJlYWR5IGhhdmUgYSBmb3JrIG9mIHRoZSBbZ2l0L2dpdF0oaHR0cHM6Ly9naXRodWIuY29tL2dpdC9naXQpCityZXBvLCB5b3UgbmVlZCB0byBtYWtlIG9uZS4gVGhlbiBjbG9uZSB5b3VyIGZvcms6CisKK2BgYAorZ2l0IGNsb25lIGh0dHBzOi8vZ2l0aHViLmNvbS88eW91ci11c2VybmFtZT4vZ2l0CitgYGAKKworVGhlbiBhZGQgR2l0R2l0R2FkZ2V0IGFzIGEgcmVtb3RlOgorCitgYGAKK2dpdCByZW1vdGUgYWRkIGdpdGdpdGdhZGdldCBodHRwczovL2dpdGh1Yi5jb20vZ2l0Z2l0Z2FkZ2V0L2dpdAorYGBgCisKK1RoZW4gZmV0Y2ggdGhlIGdpdC1ndWkgYnJhbmNoOgorCitgYGAKK2dpdCBmZXRjaCBnaXRnaXRnYWRnZXQgZ2l0LWd1aS9tYXN0ZXIKK2BgYAorCitUaGVuIGNyZWF0ZSBhIG5ldyBicmFuY2ggYmFzZWQgb24gZ2l0LWd1aS9tYXN0ZXI6CisKK2BgYAorZ2l0IGNoZWNrb3V0IC1iIDx5b3VyLWJyYW5jaC1uYW1lPiBnaXQtZ3VpL21hc3RlcgorYGBgCisKK01ha2Ugd2hhdGV2ZXIgY29tbWl0cyB5b3UgbmVlZCB0bywgcHVzaCB0aGVtIHRvIHlvdXIgZm9yaywgYW5kIHRoZW4gaGVhZCBvdmVyCit0byBodHRwczovL2dpdGh1Yi5jb20vZ2l0Z2l0Z2FkZ2V0L2dpdC9wdWxscyBhbmQgb3BlbiBhIFB1bGwgUmVxdWVzdCB0YXJnZXRpbmcKK2dpdC1ndWkvbWFzdGVyLgorCitHaXRHaXRHYWRnZXQgd2lsbCB3ZWxjb21lIHlvdSB3aXRoIGEgKGhvcGVmdWxseSkgaGVscGZ1bCBtZXNzYWdlLgorCisjIyBTaWduaW5nIG9mZgorCitZb3UgbmVlZCB0byBzaWduIG9mZiB5b3VyIGNvbW1pdHMgYmVmb3JlIHNlbmRpbmcgdGhlbSB0byB0aGUgbGlzdC4gWW91IGNhbiBkbwordGhhdCBieSBwYXNzaW5nIHRoZSBgLXNgIG9wdGlvbiB0byBgZ2l0LWNvbW1pdGAuIFlvdSBjYW4gYWxzbyB1c2UgdGhlICJTaWduCitPZmYiIG9wdGlvbiBpbiBHaXQgR1VJLgorCitBIHNpZ24tb2ZmIGlzIGEgc2ltcGxlICdTaWduZWQtb2ZmLWJ5OiBBIFUgVGhvciBcPGF1dGhvckBleGFtcGxlLmNvbVw+JyBsaW5lIGF0Cit0aGUgZW5kIG9mIHRoZSBjb21taXQgbWVzc2FnZSwgYWZ0ZXIgeW91ciBleHBsYW5hdGlvbiBvZiB0aGUgY29tbWl0LgorCitBIHNpZ24tb2ZmIG1lYW5zIHRoYXQgeW91IGFyZSBsZWdhbGx5IGFsbG93ZWQgdG8gc2VuZCB0aGUgY29kZSwgYW5kIGl0IHNlcnZlcworYXMgYSBjZXJ0aWZpY2F0ZSBvZiBvcmlnaW4uIE1vcmUgaW5mb3JtYXRpb24gY2FuIGJlIGZvdW5kIGF0CitbZGV2ZWxvcGVyY2VydGlmaWNhdGUub3JnXShodHRwczovL2RldmVsb3BlcmNlcnRpZmljYXRlLm9yZy8pLgorCisjIyBSZXNwb25kaW5nIHRvIHJldmlldyBjb21tZW50cworCitJdCBpcyBxdWl0ZSBsaWtlbHkgeW91ciBwYXRjaGVzIHdpbGwgZ2V0IHJldmlldyBjb21tZW50cy4gVGhvc2UgY29tbWVudHMgYXJlCitzZW50IG9uIHRoZSBHaXQgbWFpbGluZyBsaXN0IGFzIHJlcGxpZXMgdG8geW91ciBwYXRjaCwgYW5kIHlvdSB3aWxsIHVzdWFsbHkgYmUKK0NjJ2VkIGluIHRob3NlIHJlcGxpZXMuCisKK1lvdSBhcmUgZXhwZWN0ZWQgdG8gcmVzcG9uZCBieSBlaXRoZXIgZXhwbGFpbmluZyB5b3VyIGNvZGUgZnVydGhlciB0byBjb252aW5jZQordGhlIHJldmlld2VyIHdoYXQgeW91IGFyZSBkb2luZyBpcyBjb3JyZWN0LCBvciBhY2tub3dsZWRnZSB0aGUgY29tbWVudHMgYW5kCityZS1zZW5kIHRoZSBwYXRjaGVzIHdpdGggdGhvc2UgY29tbWVudHMgYWRkcmVzc2VkLgorCitTb21lIHRpcHMgZm9yIHRob3NlIG5vdCBmYW1pbGlhciB3aXRoIGNvbW11bmljYXRpb24gb24gYSBtYWlsaW5nIGxpc3Q6CisKKy0gVXNlIG9ubHkgcGxhaW4gdGV4dCBlbWFpbHMuIE5vIEhUTUwgYXQgYWxsLgorLSBXcmFwIGxpbmVzIGF0IGFyb3VuZCA3NSBjaGFyYWN0ZXJzLgorLSBEbyBub3Qgc2VuZCBhdHRhY2htZW50cy4gSWYgeW91IGRvIG5lZWQgdG8gc2VuZCBzb21lIGZpbGVzLCBjb25zaWRlciB1c2luZyBhCisgIGhvc3Rpbmcgc2VydmljZSwgYW5kIHBhc3RlIHRoZSBsaW5rIGluIHlvdXIgZW1haWwuCistIERvIG5vdCBbdG9wIHBvc3RdKGh0dHA6Ly93d3cuaWRhbGxlbi5jb20vdG9wcG9zdGluZy5odG1sKS4KKy0gQWx3YXlzICJyZXBseSBhbGwiLiBLZWVwIGFsbCBjb3JyZXNwb25kZW50cyBhbmQgdGhlIGxpc3QgaW4gQ2MuIElmIHlvdSByZXBseQorICBkaXJlY3RseSB0byBhIHJldmlld2VyLCBhbmQgbm90IENjIHRoZSBsaXN0LCBvdGhlciBwZW9wbGUgd291bGQgbm90IGJlIGFibGUKKyAgdG8gY2hpbWUgaW4uCmRpZmYgLS1naXQgYS9naXQtZ3VpL2dpdC1ndWktLWFza3Bhc3MgYi9naXQtZ3VpL2dpdC1ndWktLWFza3Bhc3MKaW5kZXggNDI3N2YzMC4uMWM5OWVlOCAxMDA3NTUKLS0tIGEvZ2l0LWd1aS9naXQtZ3VpLS1hc2twYXNzCisrKyBiL2dpdC1ndWkvZ2l0LWd1aS0tYXNrcGFzcwpAQCAtNTYsNiArNTYsMTEgQEAKIAkJfQogCX0KIAorCSMgT24gV2luZG93cywgZm9yY2UgdGhlIGVuY29kaW5nIHRvIFVURi04OiBpdCBpcyB3aGF0IGBnaXQuZXhlYCBleHBlY3RzCisJaWYgeyQ6OnRjbF9wbGF0Zm9ybShwbGF0Zm9ybSkgZXEge3dpbmRvd3N9fSB7CisJCXNldCA6OmFuc3dlciBbZW5jb2RpbmcgY29udmVydHRvIHV0Zi04ICQ6OmFuc3dlcl0KKwl9CisKIAlwdXRzICQ6OmFuc3dlcgogCXNldCA6OnJjIDAKIH0KZGlmZiAtLWdpdCBhL2dpdC1ndWkvZ2l0LWd1aS5zaCBiL2dpdC1ndWkvZ2l0LWd1aS5zaAppbmRleCA2ZGU3NGNlLi40NjEwZTRjIDEwMDc1NQotLS0gYS9naXQtZ3VpL2dpdC1ndWkuc2gKKysrIGIvZ2l0LWd1aS9naXQtZ3VpLnNoCkBAIC0zMCw4ICszMCw4IEBACiAjIwogIyMgVGNsL1RrIHNhbml0eSBjaGVjawogCi1pZiB7W2NhdGNoIHtwYWNrYWdlIHJlcXVpcmUgVGNsIDguNH0gZXJyXQotIHx8IFtjYXRjaCB7cGFja2FnZSByZXF1aXJlIFRrICA4LjR9IGVycl0KK2lmIHtbY2F0Y2gge3BhY2thZ2UgcmVxdWlyZSBUY2wgOC41fSBlcnJdCisgfHwgW2NhdGNoIHtwYWNrYWdlIHJlcXVpcmUgVGsgIDguNX0gZXJyXQogfSB7CiAJY2F0Y2gge3dtIHdpdGhkcmF3IC59CiAJdGtfbWVzc2FnZUJveCBcCkBAIC02ODQsNiArNjg0LDcgQEAKIAlnbG9iYWwgY3VycmVudF9icmFuY2ggaXNfZGV0YWNoZWQKIAogCXNldCBmZCBbb3BlbiBbZ2l0ZGlyIEhFQURdIHJdCisJZmNvbmZpZ3VyZSAkZmQgLXRyYW5zbGF0aW9uIGJpbmFyeSAtZW5jb2RpbmcgdXRmLTgKIAlpZiB7W2dldHMgJGZkIHJlZl0gPCAxfSB7CiAJCXNldCByZWYge30KIAl9CkBAIC0xMzQwLDYgKzEzNDEsNyBAQAogc2V0IFBBUkVOVCB7fQogc2V0IE1FUkdFX0hFQUQgW2xpc3RdCiBzZXQgY29tbWl0X3R5cGUge30KK3NldCBjb21taXRfdHlwZV9pc19hbWVuZCAwCiBzZXQgZW1wdHlfdHJlZSB7fQogc2V0IGN1cnJlbnRfYnJhbmNoIHt9CiBzZXQgaXNfZGV0YWNoZWQgMApAQCAtMTM0Nyw4ICsxMzQ5LDkgQEAKIHNldCBpc18zd2F5X2RpZmYgMAogc2V0IGlzX3N1Ym1vZHVsZV9kaWZmIDAKIHNldCBpc19jb25mbGljdF9kaWZmIDAKLXNldCBzZWxlY3RlZF9jb21taXRfdHlwZSBuZXcKIHNldCBkaWZmX2VtcHR5X2NvdW50IDAKK3NldCBsYXN0X3JldmVydCB7fQorc2V0IGxhc3RfcmV2ZXJ0X2VuYyB7fQogCiBzZXQgbnVsbGlkICIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIgogc2V0IG51bGxpZDIgIjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDEiCkBAIC0xNDM0LDcgKzE0MzcsNyBAQAogfQogCiBwcm9jIGZvcmNlX2FtZW5kIHt9IHsKLQlnbG9iYWwgc2VsZWN0ZWRfY29tbWl0X3R5cGUKKwlnbG9iYWwgY29tbWl0X3R5cGVfaXNfYW1lbmQKIAlnbG9iYWwgSEVBRCBQQVJFTlQgTUVSR0VfSEVBRCBjb21taXRfdHlwZQogCiAJcmVwb3NpdG9yeV9zdGF0ZSBuZXdUeXBlIG5ld0hFQUQgbmV3TUVSR0VfSEVBRApAQCAtMTQ0Myw3ICsxNDQ2LDcgQEAKIAlzZXQgTUVSR0VfSEVBRCAkbmV3TUVSR0VfSEVBRAogCXNldCBjb21taXRfdHlwZSAkbmV3VHlwZQogCi0Jc2V0IHNlbGVjdGVkX2NvbW1pdF90eXBlIGFtZW5kCisJc2V0IGNvbW1pdF90eXBlX2lzX2FtZW5kIDEKIAlkb19zZWxlY3RfY29tbWl0X3R5cGUKIH0KIApAQCAtMTc5NSwxMCArMTc5OCwxMCBAQAogCX0KIH0KIAotcHJvYyB1aV9yZWFkeSB7e3Rlc3Qge319fSB7Citwcm9jIHVpX3JlYWR5IHt9IHsKIAlnbG9iYWwgbWFpbl9zdGF0dXMKIAlpZiB7W2luZm8gZXhpc3RzIG1haW5fc3RhdHVzXX0gewotCQkkbWFpbl9zdGF0dXMgc2hvdyBbbWMgIlJlYWR5LiJdICR0ZXN0CisJCSRtYWluX3N0YXR1cyBzaG93IFttYyAiUmVhZHkuIl0KIAl9CiB9CiAKQEAgLTIxNDgsOCArMjE1MSw2IEBACiAjIwogIyMgdWkgY29tbWFuZHMKIAotc2V0IHN0YXJ0aW5nX2dpdGtfbXNnIFttYyAiU3RhcnRpbmcgZ2l0ay4uLiBwbGVhc2Ugd2FpdC4uLiJdCi0KIHByb2MgZG9fZ2l0ayB7cmV2cyB7aXNfc3VibW9kdWxlIGZhbHNlfX0gewogCWdsb2JhbCBjdXJyZW50X2RpZmZfcGF0aCBmaWxlX3N0YXRlcyBjdXJyZW50X2RpZmZfc2lkZSB1aV9pbmRleAogCWdsb2JhbCBfZ2l0ZGlyIF9naXR3b3JrdHJlZQpAQCAtMjIwNCw5ICsyMjA1LDEyIEBACiAJCXNldCBlbnYoR0lUX1dPUktfVFJFRSkgJF9naXR3b3JrdHJlZQogCQljZCAkcHdkCiAKLQkJdWlfc3RhdHVzICQ6OnN0YXJ0aW5nX2dpdGtfbXNnCi0JCWFmdGVyIDEwMDAwIHsKLQkJCXVpX3JlYWR5ICRzdGFydGluZ19naXRrX21zZworCQlpZiB7W2luZm8gZXhpc3RzIG1haW5fc3RhdHVzXX0geworCQkJc2V0IHN0YXR1c19vcGVyYXRpb24gWyQ6Om1haW5fc3RhdHVzIFwKKwkJCQlzdGFydCBcCisJCQkJW21jICJTdGFydGluZyAlcy4uLiBwbGVhc2Ugd2FpdC4uLiIgImdpdGsiXV0KKworCQkJYWZ0ZXIgMzUwMCBbbGlzdCAkc3RhdHVzX29wZXJhdGlvbiBzdG9wXQogCQl9CiAJfQogfQpAQCAtMjIzOCwxNiArMjI0MiwxNiBAQAogCQlzZXQgZW52KEdJVF9XT1JLX1RSRUUpICRfZ2l0d29ya3RyZWUKIAkJY2QgJHB3ZAogCi0JCXVpX3N0YXR1cyAkOjpzdGFydGluZ19naXRrX21zZwotCQlhZnRlciAxMDAwMCB7Ci0JCQl1aV9yZWFkeSAkc3RhcnRpbmdfZ2l0a19tc2cKLQkJfQorCQlzZXQgc3RhdHVzX29wZXJhdGlvbiBbJDo6bWFpbl9zdGF0dXMgXAorCQkJc3RhcnQgXAorCQkJW21jICJTdGFydGluZyAlcy4uLiBwbGVhc2Ugd2FpdC4uLiIgImdpdC1ndWkiXV0KKworCQlhZnRlciAzNTAwIFtsaXN0ICRzdGF0dXNfb3BlcmF0aW9uIHN0b3BdCiAJfQogfQogCi1wcm9jIGRvX2V4cGxvcmUge30gewotCWdsb2JhbCBfZ2l0d29ya3RyZWUKLQlzZXQgZXhwbG9yZXIge30KKyMgR2V0IHRoZSBzeXN0ZW0tc3BlY2lmaWMgZXhwbG9yZXIgYXBwL2NvbW1hbmQuCitwcm9jIGdldF9leHBsb3JlciB7fSB7CiAJaWYge1tpc19DeWd3aW5dIHx8IFtpc19XaW5kb3dzXX0gewogCQlzZXQgZXhwbG9yZXIgImV4cGxvcmVyLmV4ZSIKIAl9IGVsc2VpZiB7W2lzX01hY09TWF19IHsKQEAgLTIyNTYsOSArMjI2MCwyMyBAQAogCQkjIGZyZWVkZXNrdG9wLm9yZy1jb25mb3JtaW5nIHN5c3RlbSBpcyBvdXIgYmVzdCBzaG90CiAJCXNldCBleHBsb3JlciAieGRnLW9wZW4iCiAJfQorCXJldHVybiAkZXhwbG9yZXIKK30KKworcHJvYyBkb19leHBsb3JlIHt9IHsKKwlnbG9iYWwgX2dpdHdvcmt0cmVlCisJc2V0IGV4cGxvcmVyIFtnZXRfZXhwbG9yZXJdCiAJZXZhbCBleGVjICRleHBsb3JlciBbbGlzdCBbZmlsZSBuYXRpdmVuYW1lICRfZ2l0d29ya3RyZWVdXSAmCiB9CiAKKyMgT3BlbiBmaWxlIHJlbGF0aXZlIHRvIHRoZSB3b3JraW5nIHRyZWUgYnkgdGhlIGRlZmF1bHQgYXNzb2NpYXRlZCBhcHAuCitwcm9jIGRvX2ZpbGVfb3BlbiB7ZmlsZX0geworCWdsb2JhbCBfZ2l0d29ya3RyZWUKKwlzZXQgZXhwbG9yZXIgW2dldF9leHBsb3Jlcl0KKwlzZXQgZnVsbF9maWxlX3BhdGggW2ZpbGUgam9pbiAkX2dpdHdvcmt0cmVlICRmaWxlXQorCWV4ZWMgJGV4cGxvcmVyIFtmaWxlIG5hdGl2ZW5hbWUgJGZ1bGxfZmlsZV9wYXRoXSAmCit9CisKIHNldCBpc19xdWl0dGluZyAwCiBzZXQgcmV0X2NvZGUgICAgMQogCkBAIC0yNDk0LDcgKzI1MTIsNyBAQAogCiBwcm9jIHRvZ2dsZV9vcl9kaWZmIHttb2RlIHcgYXJnc30gewogCWdsb2JhbCBmaWxlX3N0YXRlcyBmaWxlX2xpc3RzIGN1cnJlbnRfZGlmZl9wYXRoIHVpX2luZGV4IHVpX3dvcmtkaXIKLQlnbG9iYWwgbGFzdF9jbGlja2VkIHNlbGVjdGVkX3BhdGhzCisJZ2xvYmFsIGxhc3RfY2xpY2tlZCBzZWxlY3RlZF9wYXRocyBmaWxlX2xpc3RzX2xhc3RfY2xpY2tlZAogCiAJaWYgeyRtb2RlIGVxICJjbGljayJ9IHsKIAkJZm9yZWFjaCB7eCB5fSAkYXJncyBicmVhawpAQCAtMjU1MSw2ICsyNTY5LDggQEAKIAkkdWlfaW5kZXggdGFnIHJlbW92ZSBpbl9zZWwgMC4wIGVuZAogCSR1aV93b3JrZGlyIHRhZyByZW1vdmUgaW5fc2VsIDAuMCBlbmQKIAorCXNldCBmaWxlX2xpc3RzX2xhc3RfY2xpY2tlZCgkdykgJHBhdGgKKwogCSMgRGV0ZXJtaW5lIHRoZSBzdGF0ZSBvZiB0aGUgZmlsZQogCWlmIHtbaW5mbyBleGlzdHMgZmlsZV9zdGF0ZXMoJHBhdGgpXX0gewogCQlzZXQgc3RhdGUgW2xpbmRleCAkZmlsZV9zdGF0ZXMoJHBhdGgpIDBdCkBAIC0yNjY0LDYgKzI2ODQsMzIgQEAKIAl9CiB9CiAKK3Byb2MgZm9jdXNfd2lkZ2V0IHt3aWRnZXR9IHsKKwlnbG9iYWwgZmlsZV9saXN0cyBsYXN0X2NsaWNrZWQgc2VsZWN0ZWRfcGF0aHMKKwlnbG9iYWwgZmlsZV9saXN0c19sYXN0X2NsaWNrZWQKKworCWlmIHtbbGxlbmd0aCAkZmlsZV9saXN0cygkd2lkZ2V0KV0gPiAwfSB7CisJCXNldCBwYXRoICRmaWxlX2xpc3RzX2xhc3RfY2xpY2tlZCgkd2lkZ2V0KQorCQlzZXQgaW5kZXggW2xzZWFyY2ggLXNvcnRlZCAtZXhhY3QgJGZpbGVfbGlzdHMoJHdpZGdldCkgJHBhdGhdCisJCWlmIHskaW5kZXggPCAwfSB7CisJCQlzZXQgaW5kZXggMAorCQkJc2V0IHBhdGggW2xpbmRleCAkZmlsZV9saXN0cygkd2lkZ2V0KSAkaW5kZXhdCisJCX0KKworCQlmb2N1cyAkd2lkZ2V0CisJCXNldCBsYXN0X2NsaWNrZWQgW2xpc3QgJHdpZGdldCBbZXhwciAkaW5kZXggKyAxXV0KKwkJYXJyYXkgdW5zZXQgc2VsZWN0ZWRfcGF0aHMKKwkJc2V0IHNlbGVjdGVkX3BhdGhzKCRwYXRoKSAxCisJCXNob3dfZGlmZiAkcGF0aCAkd2lkZ2V0CisJfQorfQorCitwcm9jIHRvZ2dsZV9jb21taXRfdHlwZSB7fSB7CisJZ2xvYmFsIGNvbW1pdF90eXBlX2lzX2FtZW5kCisJc2V0IGNvbW1pdF90eXBlX2lzX2FtZW5kIFtleHByICEkY29tbWl0X3R5cGVfaXNfYW1lbmRdCisJZG9fc2VsZWN0X2NvbW1pdF90eXBlCit9CisKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMjCiAjIyB1aSBjb25zdHJ1Y3Rpb24KQEAgLTI3MDYsMTAgKzI3NTIsMTggQEAKIH0KIAogaWYge1tpc19XaW5kb3dzXX0geworCSMgVXNlIC9naXQtYmFzaC5leGUgaWYgYXZhaWxhYmxlCisJc2V0IG5vcm1hbGl6ZWQgW2ZpbGUgbm9ybWFsaXplICQ6OmFyZ3YwXQorCXJlZ3N1YiAiL21pbmd3Li4vbGliZXhlYy9naXQtY29yZS9naXQtZ3VpJCIgXAorCQkkbm9ybWFsaXplZCAiL2dpdC1iYXNoLmV4ZSIgY21kTGluZQorCWlmIHskY21kTGluZSAhPSAkbm9ybWFsaXplZCAmJiBbZmlsZSBleGlzdHMgJGNtZExpbmVdfSB7CisJCXNldCBjbWRMaW5lIFtsaXN0ICJHaXQgQmFzaCIgJGNtZExpbmUgJl0KKwl9IGVsc2UgeworCQlzZXQgY21kTGluZSBbbGlzdCAiR2l0IEJhc2giIGJhc2ggLS1sb2dpbiAtbCAmXQorCX0KIAkubWJhci5yZXBvc2l0b3J5IGFkZCBjb21tYW5kIFwKIAkJLWxhYmVsIFttYyAiR2l0IEJhc2giXSBcCi0JCS1jb21tYW5kIHtldmFsIGV4ZWMgW2F1dG9fZXhlY29rIHN0YXJ0XSBcCi0JCQkJCSAgW2xpc3QgIkdpdCBCYXNoIiBiYXNoIC0tbG9naW4gLWwgJl19CisJCS1jb21tYW5kIHtldmFsIGV4ZWMgW2F1dG9fZXhlY29rIHN0YXJ0XSAkY21kTGluZX0KIH0KIAogaWYge1tpc19XaW5kb3dzXSB8fCAhW2lzX2JhcmVdfSB7CkBAIC0yODUyLDE5ICsyOTA2LDExIEBACiAJbWVudSAubWJhci5jb21taXQKIAogCWlmIHshW2lzX2VuYWJsZWQgbm9jb21taXRdfSB7Ci0JCS5tYmFyLmNvbW1pdCBhZGQgcmFkaW9idXR0b24gXAotCQkJLWxhYmVsIFttYyAiTmV3IENvbW1pdCJdIFwKLQkJCS1jb21tYW5kIGRvX3NlbGVjdF9jb21taXRfdHlwZSBcCi0JCQktdmFyaWFibGUgc2VsZWN0ZWRfY29tbWl0X3R5cGUgXAotCQkJLXZhbHVlIG5ldwotCQlsYXBwZW5kIGRpc2FibGVfb25fbG9jayBcCi0JCQlbbGlzdCAubWJhci5jb21taXQgZW50cnljb25mIFsubWJhci5jb21taXQgaW5kZXggbGFzdF0gLXN0YXRlXQotCi0JCS5tYmFyLmNvbW1pdCBhZGQgcmFkaW9idXR0b24gXAorCQkubWJhci5jb21taXQgYWRkIGNoZWNrYnV0dG9uIFwKIAkJCS1sYWJlbCBbbWMgIkFtZW5kIExhc3QgQ29tbWl0Il0gXAotCQkJLWNvbW1hbmQgZG9fc2VsZWN0X2NvbW1pdF90eXBlIFwKLQkJCS12YXJpYWJsZSBzZWxlY3RlZF9jb21taXRfdHlwZSBcCi0JCQktdmFsdWUgYW1lbmQKKwkJCS1hY2NlbGVyYXRvciAkTTFULUUgXAorCQkJLXZhcmlhYmxlIGNvbW1pdF90eXBlX2lzX2FtZW5kIFwKKwkJCS1jb21tYW5kIGRvX3NlbGVjdF9jb21taXRfdHlwZQogCQlsYXBwZW5kIGRpc2FibGVfb25fbG9jayBcCiAJCQlbbGlzdCAubWJhci5jb21taXQgZW50cnljb25mIFsubWJhci5jb21taXQgaW5kZXggbGFzdF0gLXN0YXRlXQogCkBAIC0zMDMwLDggKzMwNzYsMjMgQEAKIHdtIHByb3RvY29sIC4gV01fREVMRVRFX1dJTkRPVyBkb19xdWl0CiBiaW5kIGFsbCA8JE0xQi1LZXktcT4gZG9fcXVpdAogYmluZCBhbGwgPCRNMUItS2V5LVE+IGRvX3F1aXQKLWJpbmQgYWxsIDwkTTFCLUtleS13PiB7ZGVzdHJveSBbd2luZm8gdG9wbGV2ZWwgJVddfQotYmluZCBhbGwgPCRNMUItS2V5LVc+IHtkZXN0cm95IFt3aW5mbyB0b3BsZXZlbCAlV119CisKK3NldCBtMWJfd19zY3JpcHQgeworCXNldCB0b3Bsdmxfd2luIFt3aW5mbyB0b3BsZXZlbCAlV10KKworCSMgSWYgd2UgYXJlIGRlc3Ryb3lpbmcgdGhlIG1haW4gd2luZG93LCB3ZSBzaG91bGQgY2FsbCBkb19xdWl0IHRvIHRha2UKKwkjIGNhcmUgb2YgY2xlYW51cCBiZWZvcmUgZXhpdGluZyB0aGUgcHJvZ3JhbS4KKwlpZiB7JHRvcGx2bF93aW4gZXEgIi4ifSB7CisJCWRvX3F1aXQKKwl9IGVsc2UgeworCQlkZXN0cm95ICR0b3Bsdmxfd2luCisJfQorfQorCitiaW5kIGFsbCA8JE0xQi1LZXktdz4gJG0xYl93X3NjcmlwdAorYmluZCBhbGwgPCRNMUItS2V5LVc+ICRtMWJfd19zY3JpcHQKKwordW5zZXQgbTFiX3dfc2NyaXB0CiAKIHNldCBzdWJjb21tYW5kX2FyZ3Mge30KIHByb2MgdXNhZ2Uge30gewpAQCAtMzMzNywxOCArMzM5OCwxMCBAQAogc2V0IHVpX2NvbWwgLnZwYW5lLmxvd2VyLmNvbW1hcmVhLmJ1ZmZlci5oZWFkZXIubAogCiBpZiB7IVtpc19lbmFibGVkIG5vY29tbWl0XX0gewotCSR7TlN9OjpyYWRpb2J1dHRvbiAudnBhbmUubG93ZXIuY29tbWFyZWEuYnVmZmVyLmhlYWRlci5uZXcgXAotCQktdGV4dCBbbWMgIk5ldyBDb21taXQiXSBcCi0JCS1jb21tYW5kIGRvX3NlbGVjdF9jb21taXRfdHlwZSBcCi0JCS12YXJpYWJsZSBzZWxlY3RlZF9jb21taXRfdHlwZSBcCi0JCS12YWx1ZSBuZXcKLQlsYXBwZW5kIGRpc2FibGVfb25fbG9jayBcCi0JCVtsaXN0IC52cGFuZS5sb3dlci5jb21tYXJlYS5idWZmZXIuaGVhZGVyLm5ldyBjb25mIC1zdGF0ZV0KLQkke05TfTo6cmFkaW9idXR0b24gLnZwYW5lLmxvd2VyLmNvbW1hcmVhLmJ1ZmZlci5oZWFkZXIuYW1lbmQgXAorCSR7TlN9OjpjaGVja2J1dHRvbiAudnBhbmUubG93ZXIuY29tbWFyZWEuYnVmZmVyLmhlYWRlci5hbWVuZCBcCiAJCS10ZXh0IFttYyAiQW1lbmQgTGFzdCBDb21taXQiXSBcCi0JCS1jb21tYW5kIGRvX3NlbGVjdF9jb21taXRfdHlwZSBcCi0JCS12YXJpYWJsZSBzZWxlY3RlZF9jb21taXRfdHlwZSBcCi0JCS12YWx1ZSBhbWVuZAorCQktdmFyaWFibGUgY29tbWl0X3R5cGVfaXNfYW1lbmQgXAorCQktY29tbWFuZCBkb19zZWxlY3RfY29tbWl0X3R5cGUKIAlsYXBwZW5kIGRpc2FibGVfb25fbG9jayBcCiAJCVtsaXN0IC52cGFuZS5sb3dlci5jb21tYXJlYS5idWZmZXIuaGVhZGVyLmFtZW5kIGNvbmYgLXN0YXRlXQogfQpAQCAtMzM3Myw3ICszNDI2LDYgQEAKIAogaWYgeyFbaXNfZW5hYmxlZCBub2NvbW1pdF19IHsKIAlwYWNrIC52cGFuZS5sb3dlci5jb21tYXJlYS5idWZmZXIuaGVhZGVyLmFtZW5kIC1zaWRlIHJpZ2h0Ci0JcGFjayAudnBhbmUubG93ZXIuY29tbWFyZWEuYnVmZmVyLmhlYWRlci5uZXcgLXNpZGUgcmlnaHQKIH0KIAogdGV4dGZyYW1lIC52cGFuZS5sb3dlci5jb21tYXJlYS5idWZmZXIuZnJhbWUKQEAgLTMzODcsMTAgKzM0MzksMTYgQEAKIAktcmVsaWVmIHN1bmtlbiBcCiAJLXdpZHRoICRyZXBvX2NvbmZpZyhndWkuY29tbWl0bXNnd2lkdGgpIC1oZWlnaHQgOSAtd3JhcCBub25lIFwKIAktZm9udCBmb250X2RpZmYgXAorCS14c2Nyb2xsY29tbWFuZCB7LnZwYW5lLmxvd2VyLmNvbW1hcmVhLmJ1ZmZlci5mcmFtZS5zYnggc2V0fSBcCiAJLXlzY3JvbGxjb21tYW5kIHsudnBhbmUubG93ZXIuY29tbWFyZWEuYnVmZmVyLmZyYW1lLnNieSBzZXR9Ciske05TfTo6c2Nyb2xsYmFyIC52cGFuZS5sb3dlci5jb21tYXJlYS5idWZmZXIuZnJhbWUuc2J4IFwKKwktb3JpZW50IGhvcml6b250YWwgXAorCS1jb21tYW5kIFtsaXN0ICR1aV9jb21tIHh2aWV3XQogJHtOU306OnNjcm9sbGJhciAudnBhbmUubG93ZXIuY29tbWFyZWEuYnVmZmVyLmZyYW1lLnNieSBcCisJLW9yaWVudCB2ZXJ0aWNhbCBcCiAJLWNvbW1hbmQgW2xpc3QgJHVpX2NvbW0geXZpZXddCiAKK3BhY2sgLnZwYW5lLmxvd2VyLmNvbW1hcmVhLmJ1ZmZlci5mcmFtZS5zYnggLXNpZGUgYm90dG9tIC1maWxsIHgKIHBhY2sgLnZwYW5lLmxvd2VyLmNvbW1hcmVhLmJ1ZmZlci5mcmFtZS5zYnkgLXNpZGUgcmlnaHQgLWZpbGwgeQogcGFjayAkdWlfY29tbSAtc2lkZSBsZWZ0IC1maWxsIHkKIHBhY2sgLnZwYW5lLmxvd2VyLmNvbW1hcmVhLmJ1ZmZlci5oZWFkZXIgLXNpZGUgdG9wIC1maWxsIHgKQEAgLTM0NzAsOSArMzUyOCwxMSBAQAogCS1qdXN0aWZ5IGxlZnQKIHRsYWJlbCAudnBhbmUubG93ZXIuZGlmZi5oZWFkZXIucGF0aCBcCiAJLWJhY2tncm91bmQgZ29sZCBcCi0JLWZvcmVncm91bmQgYmxhY2sgXAorCS1mb3JlZ3JvdW5kIGJsdWUgXAogCS1hbmNob3IgdyBcCi0JLWp1c3RpZnkgbGVmdAorCS1qdXN0aWZ5IGxlZnQgXAorCS1mb250IFtldmFsIGZvbnQgY3JlYXRlIFtmb250IGNvbmZpZ3VyZSBmb250X3VpXSAtdW5kZXJsaW5lIDFdIFwKKwktY3Vyc29yIGhhbmQyCiBwYWNrIC52cGFuZS5sb3dlci5kaWZmLmhlYWRlci5zdGF0dXMgLXNpZGUgbGVmdAogcGFjayAudnBhbmUubG93ZXIuZGlmZi5oZWFkZXIuZmlsZSAtc2lkZSBsZWZ0CiBwYWNrIC52cGFuZS5sb3dlci5kaWZmLmhlYWRlci5wYXRoIC1maWxsIHgKQEAgLTM0ODcsOCArMzU0NywxMiBAQAogCQkJLXR5cGUgU1RSSU5HIFwKIAkJCS0tICRjdXJyZW50X2RpZmZfcGF0aAogCX0KKyRjdHhtIGFkZCBjb21tYW5kIFwKKwktbGFiZWwgW21jIE9wZW5dIFwKKwktY29tbWFuZCB7ZG9fZmlsZV9vcGVuICRjdXJyZW50X2RpZmZfcGF0aH0KIGxhcHBlbmQgZGlmZl9hY3Rpb25zIFtsaXN0ICRjdHhtIGVudHJ5Y29uZiBbJGN0eG0gaW5kZXggbGFzdF0gLXN0YXRlXQogYmluZF9idXR0b24zIC52cGFuZS5sb3dlci5kaWZmLmhlYWRlci5wYXRoICJ0a19wb3B1cCAkY3R4bSAlWCAlWSIKK2JpbmQgLnZwYW5lLmxvd2VyLmRpZmYuaGVhZGVyLnBhdGggPEJ1dHRvbi0xPiB7ZG9fZmlsZV9vcGVuICRjdXJyZW50X2RpZmZfcGF0aH0KIAogIyAtLSBEaWZmIEJvZHkKICMKQEAgLTM1NDcsNiArMzYxMSw5IEBACiAkdWlfZGlmZiB0YWcgY29uZiBkPCBcCiAJLWZvcmVncm91bmQgb3JhbmdlIFwKIAktZm9udCBmb250X2RpZmZib2xkCiskdWlfZGlmZiB0YWcgY29uZiBkfCBcCisJLWZvcmVncm91bmQgb3JhbmdlIFwKKwktZm9udCBmb250X2RpZmZib2xkCiAkdWlfZGlmZiB0YWcgY29uZiBkPSBcCiAJLWZvcmVncm91bmQgb3JhbmdlIFwKIAktZm9udCBmb250X2RpZmZib2xkCkBAIC0zNjA2LDE2ICszNjczLDMyIEBACiBtZW51ICRjdHhtIC10ZWFyb2ZmIDAKICRjdHhtIGFkZCBjb21tYW5kIFwKIAktbGFiZWwgW21jICJBcHBseS9SZXZlcnNlIEh1bmsiXSBcCi0JLWNvbW1hbmQge2FwcGx5X2h1bmsgJGN1cnNvclggJGN1cnNvcll9CisJLWNvbW1hbmQge2FwcGx5X29yX3JldmVydF9odW5rICRjdXJzb3JYICRjdXJzb3JZIDB9CiBzZXQgdWlfZGlmZl9hcHBseWh1bmsgWyRjdHhtIGluZGV4IGxhc3RdCiBsYXBwZW5kIGRpZmZfYWN0aW9ucyBbbGlzdCAkY3R4bSBlbnRyeWNvbmYgJHVpX2RpZmZfYXBwbHlodW5rIC1zdGF0ZV0KICRjdHhtIGFkZCBjb21tYW5kIFwKIAktbGFiZWwgW21jICJBcHBseS9SZXZlcnNlIExpbmUiXSBcCi0JLWNvbW1hbmQge2FwcGx5X3JhbmdlX29yX2xpbmUgJGN1cnNvclggJGN1cnNvclk7IGRvX3Jlc2Nhbn0KKwktY29tbWFuZCB7YXBwbHlfb3JfcmV2ZXJ0X3JhbmdlX29yX2xpbmUgJGN1cnNvclggJGN1cnNvclkgMDsgZG9fcmVzY2FufQogc2V0IHVpX2RpZmZfYXBwbHlsaW5lIFskY3R4bSBpbmRleCBsYXN0XQogbGFwcGVuZCBkaWZmX2FjdGlvbnMgW2xpc3QgJGN0eG0gZW50cnljb25mICR1aV9kaWZmX2FwcGx5bGluZSAtc3RhdGVdCiAkY3R4bSBhZGQgc2VwYXJhdG9yCiAkY3R4bSBhZGQgY29tbWFuZCBcCisJLWxhYmVsIFttYyAiUmV2ZXJ0IEh1bmsiXSBcCisJLWNvbW1hbmQge2FwcGx5X29yX3JldmVydF9odW5rICRjdXJzb3JYICRjdXJzb3JZIDF9CitzZXQgdWlfZGlmZl9yZXZlcnRodW5rIFskY3R4bSBpbmRleCBsYXN0XQorbGFwcGVuZCBkaWZmX2FjdGlvbnMgW2xpc3QgJGN0eG0gZW50cnljb25mICR1aV9kaWZmX3JldmVydGh1bmsgLXN0YXRlXQorJGN0eG0gYWRkIGNvbW1hbmQgXAorCS1sYWJlbCBbbWMgIlJldmVydCBMaW5lIl0gXAorCS1jb21tYW5kIHthcHBseV9vcl9yZXZlcnRfcmFuZ2Vfb3JfbGluZSAkY3Vyc29yWCAkY3Vyc29yWSAxOyBkb19yZXNjYW59CitzZXQgdWlfZGlmZl9yZXZlcnRsaW5lIFskY3R4bSBpbmRleCBsYXN0XQorbGFwcGVuZCBkaWZmX2FjdGlvbnMgW2xpc3QgJGN0eG0gZW50cnljb25mICR1aV9kaWZmX3JldmVydGxpbmUgLXN0YXRlXQorJGN0eG0gYWRkIGNvbW1hbmQgXAorCS1sYWJlbCBbbWMgIlVuZG8gTGFzdCBSZXZlcnQiXSBcCisJLWNvbW1hbmQge3VuZG9fbGFzdF9yZXZlcnQ7IGRvX3Jlc2Nhbn0KK3NldCB1aV9kaWZmX3VuZG9yZXZlcnQgWyRjdHhtIGluZGV4IGxhc3RdCitsYXBwZW5kIGRpZmZfYWN0aW9ucyBbbGlzdCAkY3R4bSBlbnRyeWNvbmYgJHVpX2RpZmZfdW5kb3JldmVydCAtc3RhdGVdCiskY3R4bSBhZGQgc2VwYXJhdG9yCiskY3R4bSBhZGQgY29tbWFuZCBcCiAJLWxhYmVsIFttYyAiU2hvdyBMZXNzIENvbnRleHQiXSBcCiAJLWNvbW1hbmQgc2hvd19sZXNzX2NvbnRleHQKIGxhcHBlbmQgZGlmZl9hY3Rpb25zIFtsaXN0ICRjdHhtIGVudHJ5Y29uZiBbJGN0eG0gaW5kZXggbGFzdF0gLXN0YXRlXQpAQCAtMzY5Myw3ICszNzc2LDcgQEAKIH0KIAogcHJvYyBwb3B1cF9kaWZmX21lbnUge2N0eG0gY3R4bW1nIGN0eG1zbSB4IHkgWCBZfSB7Ci0JZ2xvYmFsIGN1cnJlbnRfZGlmZl9wYXRoIGZpbGVfc3RhdGVzCisJZ2xvYmFsIGN1cnJlbnRfZGlmZl9wYXRoIGZpbGVfc3RhdGVzIGxhc3RfcmV2ZXJ0CiAJc2V0IDo6Y3Vyc29yWCAkeAogCXNldCA6OmN1cnNvclkgJHkKIAlpZiB7W2luZm8gZXhpc3RzIGZpbGVfc3RhdGVzKCRjdXJyZW50X2RpZmZfcGF0aCldfSB7CkBAIC0zNzA3LDE5ICszNzkwLDI4IEBACiAJCXRrX3BvcHVwICRjdHhtc20gJFggJFkKIAl9IGVsc2UgewogCQlzZXQgaGFzX3JhbmdlIFtleHByIHtbJDo6dWlfZGlmZiB0YWcgbmV4dHJhbmdlIHNlbCAwLjBdICE9IHt9fV0KKwkJc2V0IHUgW21jICJVbmRvIExhc3QgUmV2ZXJ0Il0KIAkJaWYgeyQ6OnVpX2luZGV4IGVxICQ6OmN1cnJlbnRfZGlmZl9zaWRlfSB7CiAJCQlzZXQgbCBbbWMgIlVuc3RhZ2UgSHVuayBGcm9tIENvbW1pdCJdCisJCQlzZXQgaCBbbWMgIlJldmVydCBIdW5rIl0KKwogCQkJaWYgeyRoYXNfcmFuZ2V9IHsKIAkJCQlzZXQgdCBbbWMgIlVuc3RhZ2UgTGluZXMgRnJvbSBDb21taXQiXQorCQkJCXNldCByIFttYyAiUmV2ZXJ0IExpbmVzIl0KIAkJCX0gZWxzZSB7CiAJCQkJc2V0IHQgW21jICJVbnN0YWdlIExpbmUgRnJvbSBDb21taXQiXQorCQkJCXNldCByIFttYyAiUmV2ZXJ0IExpbmUiXQogCQkJfQogCQl9IGVsc2UgewogCQkJc2V0IGwgW21jICJTdGFnZSBIdW5rIEZvciBDb21taXQiXQorCQkJc2V0IGggW21jICJSZXZlcnQgSHVuayJdCisKIAkJCWlmIHskaGFzX3JhbmdlfSB7CiAJCQkJc2V0IHQgW21jICJTdGFnZSBMaW5lcyBGb3IgQ29tbWl0Il0KKwkJCQlzZXQgciBbbWMgIlJldmVydCBMaW5lcyJdCiAJCQl9IGVsc2UgewogCQkJCXNldCB0IFttYyAiU3RhZ2UgTGluZSBGb3IgQ29tbWl0Il0KKwkJCQlzZXQgciBbbWMgIlJldmVydCBMaW5lIl0KIAkJCX0KIAkJfQogCQlpZiB7JDo6aXNfM3dheV9kaWZmCkBAIC0zNzMwLDExICszODIyLDM1IEBACiAJCQl8fCBbc3RyaW5nIG1hdGNoIHtUP30gJHN0YXRlXQogCQkJfHwgW2hhc190ZXh0Y29udiAkY3VycmVudF9kaWZmX3BhdGhdfSB7CiAJCQlzZXQgcyBkaXNhYmxlZAorCQkJc2V0IHJldmVydF9zdGF0ZSBkaXNhYmxlZAogCQl9IGVsc2UgewogCQkJc2V0IHMgbm9ybWFsCisKKwkJCSMgT25seSBhbGxvdyByZXZlcnRpbmcgY2hhbmdlcyBpbiB0aGUgd29ya2luZyB0cmVlLiBJZgorCQkJIyB0aGUgdXNlciB3YW50cyB0byByZXZlcnQgY2hhbmdlcyBpbiB0aGUgaW5kZXgsIHRoZXkKKwkJCSMgbmVlZCB0byB1bnN0YWdlIHRob3NlIGZpcnN0LgorCQkJaWYgeyQ6OnVpX3dvcmtkaXIgZXEgJDo6Y3VycmVudF9kaWZmX3NpZGV9IHsKKwkJCQlzZXQgcmV2ZXJ0X3N0YXRlIG5vcm1hbAorCQkJfSBlbHNlIHsKKwkJCQlzZXQgcmV2ZXJ0X3N0YXRlIGRpc2FibGVkCisJCQl9CiAJCX0KKworCQlpZiB7JGxhc3RfcmV2ZXJ0IGVxIHt9fSB7CisJCQlzZXQgdW5kb19zdGF0ZSBkaXNhYmxlZAorCQl9IGVsc2UgeworCQkJc2V0IHVuZG9fc3RhdGUgbm9ybWFsCisJCX0KKwogCQkkY3R4bSBlbnRyeWNvbmYgJDo6dWlfZGlmZl9hcHBseWh1bmsgLXN0YXRlICRzIC1sYWJlbCAkbAogCQkkY3R4bSBlbnRyeWNvbmYgJDo6dWlfZGlmZl9hcHBseWxpbmUgLXN0YXRlICRzIC1sYWJlbCAkdAorCQkkY3R4bSBlbnRyeWNvbmYgJDo6dWlfZGlmZl9yZXZlcnRsaW5lIC1zdGF0ZSAkcmV2ZXJ0X3N0YXRlIFwKKwkJCS1sYWJlbCAkcgorCQkkY3R4bSBlbnRyeWNvbmYgJDo6dWlfZGlmZl9yZXZlcnRodW5rIC1zdGF0ZSAkcmV2ZXJ0X3N0YXRlIFwKKwkJCS1sYWJlbCAkaAorCQkkY3R4bSBlbnRyeWNvbmYgJDo6dWlfZGlmZl91bmRvcmV2ZXJ0IC1zdGF0ZSAkdW5kb19zdGF0ZSBcCisJCQktbGFiZWwgJHUKKwogCQl0a19wb3B1cCAkY3R4bSAkWCAkWQogCX0KIH0KQEAgLTM4NjEsNiArMzk3Nyw4IEBACiBiaW5kIC4gICA8JE0xQi1LZXktSj4gZG9fcmV2ZXJ0X3NlbGVjdGlvbgogYmluZCAuICAgPCRNMUItS2V5LWk+IGRvX2FkZF9hbGwKIGJpbmQgLiAgIDwkTTFCLUtleS1JPiBkb19hZGRfYWxsCitiaW5kIC4gICA8JE0xQi1LZXktZT4gdG9nZ2xlX2NvbW1pdF90eXBlCitiaW5kIC4gICA8JE0xQi1LZXktRT4gdG9nZ2xlX2NvbW1pdF90eXBlCiBiaW5kIC4gICA8JE0xQi1LZXktbWludXM+IHtzaG93X2xlc3NfY29udGV4dDticmVha30KIGJpbmQgLiAgIDwkTTFCLUtleS1LUF9TdWJ0cmFjdD4ge3Nob3dfbGVzc19jb250ZXh0O2JyZWFrfQogYmluZCAuICAgPCRNMUItS2V5LWVxdWFsPiB7c2hvd19tb3JlX2NvbnRleHQ7YnJlYWt9CkBAIC0zODc3LDYgKzM5OTUsMTQgQEAKIH0KIHVuc2V0IGkKIAorYmluZCAuICAgPEFsdC1LZXktMT4ge2ZvY3VzX3dpZGdldCAkOjp1aV93b3JrZGlyfQorYmluZCAuICAgPEFsdC1LZXktMj4ge2ZvY3VzX3dpZGdldCAkOjp1aV9pbmRleH0KK2JpbmQgLiAgIDxBbHQtS2V5LTM+IHtmb2N1cyAkOjp1aV9kaWZmfQorYmluZCAuICAgPEFsdC1LZXktND4ge2ZvY3VzICQ6OnVpX2NvbW19CisKK3NldCBmaWxlX2xpc3RzX2xhc3RfY2xpY2tlZCgkdWlfaW5kZXgpIHt9CitzZXQgZmlsZV9saXN0c19sYXN0X2NsaWNrZWQoJHVpX3dvcmtkaXIpIHt9CisKIHNldCBmaWxlX2xpc3RzKCR1aV9pbmRleCkgW2xpc3RdCiBzZXQgZmlsZV9saXN0cygkdWlfd29ya2RpcikgW2xpc3RdCiAKQEAgLTQwNTUsNiArNDE4MSw5IEBACiAJZG9fZXhwbG9yZQogfQogCisjIENsZWFyICJJbml0aWFsaXppbmcuLi4iIHN0YXR1cworYWZ0ZXIgNTAwIHskbWFpbl9zdGF0dXMgc2hvdyAiIn0KKwogIyBMb2NhbCB2YXJpYWJsZXM6CiAjIG1vZGU6IHRjbAogIyBpbmRlbnQtdGFicy1tb2RlOiB0CmRpZmYgLS1naXQgYS9naXQtZ3VpL2xpYi9ibGFtZS50Y2wgYi9naXQtZ3VpL2xpYi9ibGFtZS50Y2wKaW5kZXggYTFhZWI4Yi4uNjJlYzA4MyAxMDA2NDQKLS0tIGEvZ2l0LWd1aS9saWIvYmxhbWUudGNsCisrKyBiL2dpdC1ndWkvbGliL2JsYW1lLnRjbApAQCAtMjQsNiArMjQsNyBAQAogZmllbGQgZmluZGVyICAgICA7ICMgZmluZCBtaW5pLWRpYWxvZyBmcmFtZQogZmllbGQgZ290b2xpbmUgICA7ICMgbGluZSBnb3RvIG1pbmktZGlhbG9nIGZyYW1lCiBmaWVsZCBzdGF0dXMgICAgIDsgIyBzdGF0dXMgbWVnYS13aWRnZXQgaW5zdGFuY2UKK2ZpZWxkIHN0YXR1c19vcGVyYXRpb24gOyAjIG9wZXJhdGlvbiBkaXNwbGF5ZWQgYnkgc3RhdHVzIG1lZ2Etd2lkZ2V0CiBmaWVsZCBvbGRfaGVpZ2h0IDsgIyBsYXN0IGtub3duIGhlaWdodCBvZiAkdy5maWxlX3BhbmUKIAogCkBAIC0yNzQsNiArMjc1LDcgQEAKIAlwYWNrICR3X2N2aWV3ZXIgLWV4cGFuZCAxIC1maWxsIGJvdGgKIAogCXNldCBzdGF0dXMgWzo6c3RhdHVzX2Jhcjo6bmV3ICR3LnN0YXR1c10KKwlzZXQgc3RhdHVzX29wZXJhdGlvbiB7fQogCiAJbWVudSAkdy5jdHhtIC10ZWFyb2ZmIDAKIAkkdy5jdHhtIGFkZCBjb21tYW5kIFwKQEAgLTYwMiwxNiArNjA0LDIzIEBACiAJfSBlbHNlIHsKIAkJbGFwcGVuZCBvcHRpb25zICRjb21taXQKIAl9CisKKwkjIFdlIG1heSByZWN1cnNlIGluIGZyb20gYW5vdGhlciBjYWxsIHRvIF9leGVjX2JsYW1lIGFuZCBhbHJlYWR5IGhhdmUKKwkjIGEgc3RhdHVzIG9wZXJhdGlvbi4KKwlpZiB7JHN0YXR1c19vcGVyYXRpb24gPT0ge319IHsKKwkJc2V0IHN0YXR1c19vcGVyYXRpb24gWyRzdGF0dXMgc3RhcnQgXAorCQkJJGN1cl9zIFwKKwkJCVttYyAibGluZXMgYW5ub3RhdGVkIl1dCisJfSBlbHNlIHsKKwkJJHN0YXR1c19vcGVyYXRpb24gcmVzdGFydCAkY3VyX3MKKwl9CisKIAlsYXBwZW5kIG9wdGlvbnMgLS0gJHBhdGgKIAlzZXQgZmQgW2V2YWwgZ2l0X3JlYWQgLS1uaWNlIGJsYW1lICRvcHRpb25zXQogCWZjb25maWd1cmUgJGZkIC1ibG9ja2luZyAwIC10cmFuc2xhdGlvbiBsZiAtZW5jb2RpbmcgdXRmLTgKIAlmaWxlZXZlbnQgJGZkIHJlYWRhYmxlIFtjYiBfcmVhZF9ibGFtZSAkZmQgJGN1cl93ICRjdXJfZF0KIAlzZXQgY3VycmVudF9mZCAkZmQKIAlzZXQgYmxhbWVfbGluZXMgMAotCi0JJHN0YXR1cyBzdGFydCBcCi0JCSRjdXJfcyBcCi0JCVttYyAibGluZXMgYW5ub3RhdGVkIl0KIH0KIAogbWV0aG9kIF9yZWFkX2JsYW1lIHtmZCBjdXJfdyBjdXJfZH0gewpAQCAtODA2LDEwICs4MTUsMTEgQEAKIAkJCQlbbWMgIkxvYWRpbmcgb3JpZ2luYWwgbG9jYXRpb24gYW5ub3RhdGlvbnMuLi4iXQogCQl9IGVsc2UgewogCQkJc2V0IGN1cnJlbnRfZmQge30KLQkJCSRzdGF0dXMgc3RvcCBbbWMgIkFubm90YXRpb24gY29tcGxldGUuIl0KKwkJCSRzdGF0dXNfb3BlcmF0aW9uIHN0b3AgW21jICJBbm5vdGF0aW9uIGNvbXBsZXRlLiJdCisJCQlzZXQgc3RhdHVzX29wZXJhdGlvbiB7fQogCQl9CiAJfSBlbHNlIHsKLQkJJHN0YXR1cyB1cGRhdGUgJGJsYW1lX2xpbmVzICR0b3RhbF9saW5lcworCQkkc3RhdHVzX29wZXJhdGlvbiB1cGRhdGUgJGJsYW1lX2xpbmVzICR0b3RhbF9saW5lcwogCX0KIH0gaWZkZWxldGVkIHsgY2F0Y2gge2Nsb3NlICRmZH0gfQogCkBAIC0xMTI0LDcgKzExMzQsNyBAQAogCQkJc2V0IGRpZmZjbWQgW2xpc3QgZGlmZi10cmVlIC0tdW5pZmllZD0wICRjcGFyZW50ICRjbWl0IC0tICRuZXdfcGF0aF0KIAkJfQogCQlpZiB7W2NhdGNoIHtzZXQgZmQgW2V2YWwgZ2l0X3JlYWQgJGRpZmZjbWRdfSBlcnJdfSB7Ci0JCQkkc3RhdHVzIHN0b3AgW21jICJVbmFibGUgdG8gZGlzcGxheSBwYXJlbnQiXQorCQkJJHN0YXR1c19vcGVyYXRpb24gc3RvcCBbbWMgIlVuYWJsZSB0byBkaXNwbGF5IHBhcmVudCJdCiAJCQllcnJvcl9wb3B1cCBbc3RyY2F0IFttYyAiRXJyb3IgbG9hZGluZyBkaWZmOiJdICJcblxuJGVyciJdCiAJCQlyZXR1cm4KIAkJfQpkaWZmIC0tZ2l0IGEvZ2l0LWd1aS9saWIvYnJhbmNoLnRjbCBiL2dpdC1ndWkvbGliL2JyYW5jaC50Y2wKaW5kZXggNzc3ZWViNy4uOGIwYzQ4NSAxMDA2NDQKLS0tIGEvZ2l0LWd1aS9saWIvYnJhbmNoLnRjbAorKysgYi9naXQtZ3VpL2xpYi9icmFuY2gudGNsCkBAIC04LDYgKzgsNyBAQAogCXNldCByaF9sZW4gW2V4cHIge1tzdHJpbmcgbGVuZ3RoICRyaF0gKyAxfV0KIAlzZXQgYWxsX2hlYWRzIFtsaXN0XQogCXNldCBmZCBbZ2l0X3JlYWQgZm9yLWVhY2gtcmVmIC0tZm9ybWF0PSUocmVmbmFtZSkgJHJoXQorCWZjb25maWd1cmUgJGZkIC10cmFuc2xhdGlvbiBiaW5hcnkgLWVuY29kaW5nIHV0Zi04CiAJd2hpbGUge1tnZXRzICRmZCBsaW5lXSA+IDB9IHsKIAkJaWYgeyEkc29tZV9oZWFkc190cmFja2luZyB8fCAhW2lzX3RyYWNraW5nX2JyYW5jaCAkbGluZV19IHsKIAkJCWxhcHBlbmQgYWxsX2hlYWRzIFtzdHJpbmcgcmFuZ2UgJGxpbmUgJHJoX2xlbiBlbmRdCkBAIC0yNCw2ICsyNSw3IEBACiAJCS0tc29ydD0tdGFnZ2VyZGF0ZSBcCiAJCS0tZm9ybWF0PSUocmVmbmFtZSkgXAogCQlyZWZzL3RhZ3NdCisJZmNvbmZpZ3VyZSAkZmQgLXRyYW5zbGF0aW9uIGJpbmFyeSAtZW5jb2RpbmcgdXRmLTgKIAl3aGlsZSB7W2dldHMgJGZkIGxpbmVdID4gMH0gewogCQlpZiB7IVtyZWdzdWIgXnJlZnMvdGFncy8gJGxpbmUge30gbmFtZV19IGNvbnRpbnVlCiAJCWxhcHBlbmQgYWxsX3RhZ3MgJG5hbWUKZGlmZiAtLWdpdCBhL2dpdC1ndWkvbGliL2NoZWNrb3V0X29wLnRjbCBiL2dpdC1ndWkvbGliL2NoZWNrb3V0X29wLnRjbAppbmRleCA5ZTc0MTJjLi4yMWVhNzY4IDEwMDY0NAotLS0gYS9naXQtZ3VpL2xpYi9jaGVja291dF9vcC50Y2wKKysrIGIvZ2l0LWd1aS9saWIvY2hlY2tvdXRfb3AudGNsCkBAIC0zNDEsOSArMzQxLDkgQEAKIAlnbG9iYWwgSEVBRAogCiAJc2V0IHJlYWR0cmVlX2Qge30KLQkkOjptYWluX3N0YXR1cyBzdGFydCBcCisJc2V0IHN0YXR1c19iYXJfb3BlcmF0aW9uIFskOjptYWluX3N0YXR1cyBzdGFydCBcCiAJCVttYyAiVXBkYXRpbmcgd29ya2luZyBkaXJlY3RvcnkgdG8gJyVzJy4uLiIgW19uYW1lICR0aGlzXV0gXAotCQlbbWMgImZpbGVzIGNoZWNrZWQgb3V0Il0KKwkJW21jICJmaWxlcyBjaGVja2VkIG91dCJdXQogCiAJc2V0IGZkIFtnaXRfcmVhZCAtLXN0ZGVyciByZWFkLXRyZWUgXAogCQktbSBcCkBAIC0zNTQsMjYgKzM1NCwyNyBAQAogCQkkbmV3X2hhc2ggXAogCQldCiAJZmNvbmZpZ3VyZSAkZmQgLWJsb2NraW5nIDAgLXRyYW5zbGF0aW9uIGJpbmFyeQotCWZpbGVldmVudCAkZmQgcmVhZGFibGUgW2NiIF9yZWFkdHJlZV93YWl0ICRmZF0KKwlmaWxlZXZlbnQgJGZkIHJlYWRhYmxlIFtjYiBfcmVhZHRyZWVfd2FpdCAkZmQgJHN0YXR1c19iYXJfb3BlcmF0aW9uXQogfQogCi1tZXRob2QgX3JlYWR0cmVlX3dhaXQge2ZkfSB7CittZXRob2QgX3JlYWR0cmVlX3dhaXQge2ZkIHN0YXR1c19iYXJfb3BlcmF0aW9ufSB7CiAJZ2xvYmFsIGN1cnJlbnRfYnJhbmNoCiAKIAlzZXQgYnVmIFtyZWFkICRmZF0KLQkkOjptYWluX3N0YXR1cyB1cGRhdGVfbWV0ZXIgJGJ1ZgorCSRzdGF0dXNfYmFyX29wZXJhdGlvbiB1cGRhdGVfbWV0ZXIgJGJ1ZgogCWFwcGVuZCByZWFkdHJlZV9kICRidWYKIAogCWZjb25maWd1cmUgJGZkIC1ibG9ja2luZyAxCiAJaWYgeyFbZW9mICRmZF19IHsKIAkJZmNvbmZpZ3VyZSAkZmQgLWJsb2NraW5nIDAKKwkJJHN0YXR1c19iYXJfb3BlcmF0aW9uIHN0b3AKIAkJcmV0dXJuCiAJfQogCiAJaWYge1tjYXRjaCB7Y2xvc2UgJGZkfV19IHsKIAkJc2V0IGVyciAkcmVhZHRyZWVfZAogCQlyZWdzdWIge15mYXRhbDogfSAkZXJyIHt9IGVycgotCQkkOjptYWluX3N0YXR1cyBzdG9wIFttYyAiQWJvcnRlZCBjaGVja291dCBvZiAnJXMnIChmaWxlIGxldmVsIG1lcmdpbmcgaXMgcmVxdWlyZWQpLiIgW19uYW1lICR0aGlzXV0KKwkJJHN0YXR1c19iYXJfb3BlcmF0aW9uIHN0b3AgW21jICJBYm9ydGVkIGNoZWNrb3V0IG9mICclcycgKGZpbGUgbGV2ZWwgbWVyZ2luZyBpcyByZXF1aXJlZCkuIiBbX25hbWUgJHRoaXNdXQogCQl3YXJuX3BvcHVwIFtzdHJjYXQgW21jICJGaWxlIGxldmVsIG1lcmdlIHJlcXVpcmVkLiJdICIKIAogJGVycgpAQCAtMzg0LDEyICszODUsMTIgQEAKIAkJcmV0dXJuCiAJfQogCi0JJDo6bWFpbl9zdGF0dXMgc3RvcAorCSRzdGF0dXNfYmFyX29wZXJhdGlvbiBzdG9wCiAJX2FmdGVyX3JlYWR0cmVlICR0aGlzCiB9CiAKIG1ldGhvZCBfYWZ0ZXJfcmVhZHRyZWUge30gewotCWdsb2JhbCBzZWxlY3RlZF9jb21taXRfdHlwZSBjb21taXRfdHlwZSBIRUFEIE1FUkdFX0hFQUQgUEFSRU5UCisJZ2xvYmFsIGNvbW1pdF90eXBlIEhFQUQgTUVSR0VfSEVBRCBQQVJFTlQKIAlnbG9iYWwgY3VycmVudF9icmFuY2ggaXNfZGV0YWNoZWQKIAlnbG9iYWwgdWlfY29tbQogCkBAIC00OTAsMTIgKzQ5MSwxMiBAQAogCSMgICAgYW1lbmQgbW9kZSBvdXIgZmlsZSBsaXN0cyBhcmUgYWNjdXJhdGUgYW5kIHdlIGNhbiBhdm9pZAogCSMgICAgdGhlIHJlc2Nhbi4KIAkjCi0JZ2xvYmFsIHNlbGVjdGVkX2NvbW1pdF90eXBlIGNvbW1pdF90eXBlIEhFQUQgTUVSR0VfSEVBRCBQQVJFTlQKKwlnbG9iYWwgY29tbWl0X3R5cGVfaXNfYW1lbmQgY29tbWl0X3R5cGUgSEVBRCBNRVJHRV9IRUFEIFBBUkVOVAogCWdsb2JhbCB1aV9jb21tCiAKIAl1bmxvY2tfaW5kZXgKIAlzZXQgbmFtZSBbX25hbWUgJHRoaXNdCi0Jc2V0IHNlbGVjdGVkX2NvbW1pdF90eXBlIG5ldworCXNldCBjb21taXRfdHlwZV9pc19hbWVuZCAwCiAJaWYge1tzdHJpbmcgbWF0Y2ggYW1lbmQqICRjb21taXRfdHlwZV19IHsKIAkJJHVpX2NvbW0gZGVsZXRlIDAuMCBlbmQKIAkJJHVpX2NvbW0gZWRpdCByZXNldApkaWZmIC0tZ2l0IGEvZ2l0LWd1aS9saWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsIGIvZ2l0LWd1aS9saWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsCmluZGV4IDgwZjVhNTkuLmU1NGYzZTYgMTAwNjQ0Ci0tLSBhL2dpdC1ndWkvbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbAorKysgYi9naXQtZ3VpL2xpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2wKQEAgLTksNiArOSwxOCBAQAogZmllbGQgd19uZXh0ICAgICAgOyAjIE5leHQgYnV0dG9uCiBmaWVsZCB3X3F1aXQgICAgICA7ICMgUXVpdCBidXR0b24KIGZpZWxkIG9fY29ucyAgICAgIDsgIyBDb25zb2xlIG9iamVjdCAoaWYgYWN0aXZlKQorCisjIFN0YXR1cyBtZWdhLXdpZGdldCBpbnN0YW5jZSBkdXJpbmcgX2RvX2Nsb25lMiAodXNlZCBieSBfY29weV9maWxlcyBhbmQKKyMgX2xpbmtfZmlsZXMpLiBXaWRnZXQgaXMgZGVzdHJveWVkIGJlZm9yZSBfZG9fY2xvbmUyIGNhbGxzCisjIF9kb19jbG9uZV9jaGVja291dAorZmllbGQgb19zdGF0dXMKKworIyBPcGVyYXRpb24gZGlzcGxheWVkIGJ5IHN0YXR1cyBtZWdhLXdpZGdldCBkdXJpbmcgX2RvX2Nsb25lX2NoZWNrb3V0ID0+CisjIF9yZWFkdHJlZV93YWl0ID0+IF9wb3N0Y2hlY2tvdXRfd2FpdCA9PiBfZG9fY2xvbmVfc3VibW9kdWxlcyA9PgorIyBfZG9fdmFsaWRhdGVfc3VibW9kdWxlX2Nsb25pbmcuIFRoZSBzdGF0dXMgbWVnYS13aWRnZXQgaXMgYSBkaWZmZXJlbnQKKyMgaW5zdGFuY2UgdGhhbiB0aGF0IHN0b3JlZCBpbiAkb19zdGF0dXMgaW4gZWFybGllciBvcGVyYXRpb25zLgorZmllbGQgb19zdGF0dXNfb3AKKwogZmllbGQgd190eXBlcyAgICAgOyAjIExpc3Qgb2YgdHlwZSBidXR0b25zIGluIGNsb25lCiBmaWVsZCB3X3JlY2VudGxpc3QgOyAjIExpc3Rib3ggY29udGFpbmluZyByZWNlbnQgcmVwb3NpdG9yaWVzCiBmaWVsZCB3X2xvY2FscGF0aCAgOyAjIEVudHJ5IHdpZGdldCBib3VuZCB0byBsb2NhbF9wYXRoCkBAIC02NTksMTIgKzY3MSwxMiBAQAogCiAJc3dpdGNoIC1leGFjdCAtLSAkY2xvbmVfdHlwZSB7CiAJaGFyZGxpbmsgewotCQlzZXQgb19jb25zIFtzdGF0dXNfYmFyOjp0d29fbGluZSAkd19ib2R5XQorCQlzZXQgb19zdGF0dXMgW3N0YXR1c19iYXI6OnR3b19saW5lICR3X2JvZHldCiAJCXBhY2sgJHdfYm9keSAtZmlsbCB4IC1wYWR4IDEwIC1wYWR5IDEwCiAKLQkJJG9fY29ucyBzdGFydCBcCisJCXNldCBzdGF0dXNfb3AgWyRvX3N0YXR1cyBzdGFydCBcCiAJCQlbbWMgIkNvdW50aW5nIG9iamVjdHMiXSBcCi0JCQlbbWMgImJ1Y2tldHMiXQorCQkJW21jICJidWNrZXRzIl1dCiAJCXVwZGF0ZQogCiAJCWlmIHtbZmlsZSBleGlzdHMgW2ZpbGUgam9pbiAkb2JqZGlyIGluZm8gYWx0ZXJuYXRlc11dfSB7CkBAIC02ODksNiArNzAxLDcgQEAKIAkJCX0gZXJyXX0gewogCQkJCWNhdGNoIHtjZCAkcHdkfQogCQkJCV9jbG9uZV9mYWlsZWQgJHRoaXMgW21jICJVbmFibGUgdG8gY29weSBvYmplY3RzL2luZm8vYWx0ZXJuYXRlczogJXMiICRlcnJdCisJCQkJJHN0YXR1c19vcCBzdG9wCiAJCQkJcmV0dXJuCiAJCQl9CiAJCX0KQEAgLTcwMCw3ICs3MTMsNyBAQAogCQkJLWRpcmVjdG9yeSBbZmlsZSBqb2luICRvYmpkaXJdID8/XQogCQlzZXQgYmNudCBbZXhwciB7W2xsZW5ndGggJGJ1Y2tldHNdICsgMn1dCiAJCXNldCBiY3VyIDEKLQkJJG9fY29ucyB1cGRhdGUgJGJjdXIgJGJjbnQKKwkJJHN0YXR1c19vcCB1cGRhdGUgJGJjdXIgJGJjbnQKIAkJdXBkYXRlCiAKIAkJZmlsZSBta2RpciBbZmlsZSBqb2luIC5naXQgb2JqZWN0cyBwYWNrXQpAQCAtNzA4LDcgKzcyMSw3IEBACiAJCQktZGlyZWN0b3J5IFtmaWxlIGpvaW4gJG9iamRpciBwYWNrXSAqXSB7CiAJCQlsYXBwZW5kIHRvbGluayBbZmlsZSBqb2luIHBhY2sgJGldCiAJCX0KLQkJJG9fY29ucyB1cGRhdGUgW2luY3IgYmN1cl0gJGJjbnQKKwkJJHN0YXR1c19vcCB1cGRhdGUgW2luY3IgYmN1cl0gJGJjbnQKIAkJdXBkYXRlCiAKIAkJZm9yZWFjaCBpICRidWNrZXRzIHsKQEAgLTcxNywxMCArNzMwLDEwIEBACiAJCQkJLWRpcmVjdG9yeSBbZmlsZSBqb2luICRvYmpkaXIgJGldICpdIHsKIAkJCQlsYXBwZW5kIHRvbGluayBbZmlsZSBqb2luICRpICRqXQogCQkJfQotCQkJJG9fY29ucyB1cGRhdGUgW2luY3IgYmN1cl0gJGJjbnQKKwkJCSRzdGF0dXNfb3AgdXBkYXRlIFtpbmNyIGJjdXJdICRiY250CiAJCQl1cGRhdGUKIAkJfQotCQkkb19jb25zIHN0b3AKKwkJJHN0YXR1c19vcCBzdG9wCiAKIAkJaWYgeyR0b2xpbmsgZXEge319IHsKIAkJCWluZm9fcG9wdXAgW3N0cmNhdCBcCkBAIC03NDcsNiArNzYwLDggQEAKIAkJaWYgeyEkaX0gcmV0dXJuCiAKIAkJZGVzdHJveSAkd19ib2R5CisKKwkJc2V0IG9fc3RhdHVzIHt9CiAJfQogCWZ1bGwgewogCQlzZXQgb19jb25zIFtjb25zb2xlOjplbWJlZCBcCkBAIC03ODEsOSArNzk2LDkgQEAKIH0KIAogbWV0aG9kIF9jb3B5X2ZpbGVzIHtvYmpkaXIgdG9jb3B5fSB7Ci0JJG9fY29ucyBzdGFydCBcCisJc2V0IHN0YXR1c19vcCBbJG9fc3RhdHVzIHN0YXJ0IFwKIAkJW21jICJDb3B5aW5nIG9iamVjdHMiXSBcCi0JCVttYyAiS2lCIl0KKwkJW21jICJLaUIiXV0KIAlzZXQgdG90IDAKIAlzZXQgY21wIDAKIAlmb3JlYWNoIHAgJHRvY29weSB7CkBAIC03OTgsNyArODEzLDcgQEAKIAogCQkJCXdoaWxlIHshW2VvZiAkZl9pbl19IHsKIAkJCQkJaW5jciBjbXAgW2Zjb3B5ICRmX2luICRmX2NwIC1zaXplIDE2Mzg0XQotCQkJCQkkb19jb25zIHVwZGF0ZSBcCisJCQkJCSRzdGF0dXNfb3AgdXBkYXRlIFwKIAkJCQkJCVtleHByIHskY21wIC8gMTAyNH1dIFwKIAkJCQkJCVtleHByIHskdG90IC8gMTAyNH1dCiAJCQkJCXVwZGF0ZQpAQCAtODA4LDE3ICs4MjMsMTkgQEAKIAkJCQljbG9zZSAkZl9jcAogCQkJfSBlcnJdfSB7CiAJCQlfY2xvbmVfZmFpbGVkICR0aGlzIFttYyAiVW5hYmxlIHRvIGNvcHkgb2JqZWN0OiAlcyIgJGVycl0KKwkJCSRzdGF0dXNfb3Agc3RvcAogCQkJcmV0dXJuIDAKIAkJfQogCX0KKwkkc3RhdHVzX29wIHN0b3AKIAlyZXR1cm4gMQogfQogCiBtZXRob2QgX2xpbmtfZmlsZXMge29iamRpciB0b2xpbmt9IHsKIAlzZXQgdG90YWwgW2xsZW5ndGggJHRvbGlua10KLQkkb19jb25zIHN0YXJ0IFwKKwlzZXQgc3RhdHVzX29wIFskb19zdGF0dXMgc3RhcnQgXAogCQlbbWMgIkxpbmtpbmcgb2JqZWN0cyJdIFwKLQkJW21jICJvYmplY3RzIl0KKwkJW21jICJvYmplY3RzIl1dCiAJZm9yIHtzZXQgaSAwfSB7JGkgPCAkdG90YWx9IHt9IHsKIAkJc2V0IHAgW2xpbmRleCAkdG9saW5rICRpXQogCQlpZiB7W2NhdGNoIHsKQEAgLTgyNywxNSArODQ0LDE3IEBACiAJCQkJCVtmaWxlIGpvaW4gJG9iamRpciAkcF0KIAkJCX0gZXJyXX0gewogCQkJX2Nsb25lX2ZhaWxlZCAkdGhpcyBbbWMgIlVuYWJsZSB0byBoYXJkbGluayBvYmplY3Q6ICVzIiAkZXJyXQorCQkJJHN0YXR1c19vcCBzdG9wCiAJCQlyZXR1cm4gMAogCQl9CiAKIAkJaW5jciBpCiAJCWlmIHskaSAlIDUgPT0gMH0gewotCQkJJG9fY29ucyB1cGRhdGUgJGkgJHRvdGFsCisJCQkkc3RhdHVzX29wIHVwZGF0ZSAkaSAkdG90YWwKIAkJCXVwZGF0ZQogCQl9CiAJfQorCSRzdGF0dXNfb3Agc3RvcAogCXJldHVybiAxCiB9CiAKQEAgLTk1OCwxMSArOTc3LDI2IEBACiAJCXJldHVybgogCX0KIAotCXNldCBvX2NvbnMgW3N0YXR1c19iYXI6OnR3b19saW5lICR3X2JvZHldCisJc2V0IHN0YXR1cyBbc3RhdHVzX2Jhcjo6dHdvX2xpbmUgJHdfYm9keV0KIAlwYWNrICR3X2JvZHkgLWZpbGwgeCAtcGFkeCAxMCAtcGFkeSAxMAotCSRvX2NvbnMgc3RhcnQgXAorCisJIyBXZSBzdGFydCB0aGUgc3RhdHVzIG9wZXJhdGlvbiBoZXJlLgorCSMKKwkjIFRoaXMgZnVuY3Rpb24gY2FsbHMgX3JlYWR0cmVlX3dhaXQgYXMgYSBjYWxsYmFjay4KKwkjCisJIyBfcmVhZHRyZWVfd2FpdCBpbiB0dXJuIGVpdGhlciBjYWxscyBfZG9fY2xvbmVfc3VibW9kdWxlcyBkaXJlY3RseSwKKwkjIG9yIGNhbGxzIF9wb3N0Y2hlY2tvdXRfd2FpdCBhcyBhIGNhbGxiYWNrIHdoaWNoIHRoZW4gY2FsbHMKKwkjIF9kb19jbG9uZV9zdWJtb2R1bGVzLgorCSMKKwkjIF9kb19jbG9uZV9zdWJtb2R1bGVzIGNhbGxzIF9kb192YWxpZGF0ZV9zdWJtb2R1bGVfY2xvbmluZy4KKwkjCisJIyBfZG9fdmFsaWRhdGVfc3VibW9kdWxlX2Nsb25pbmcgc3RvcHMgdGhlIHN0YXR1cyBvcGVyYXRpb24uCisJIworCSMgVGhlcmUgYXJlIG5vIG90aGVyIGNhbGxzIGludG8gdGhpcyBjaGFpbiBmcm9tIG90aGVyIGNvZGUuCisKKwlzZXQgb19zdGF0dXNfb3AgWyRzdGF0dXMgc3RhcnQgXAogCQlbbWMgIkNyZWF0aW5nIHdvcmtpbmcgZGlyZWN0b3J5Il0gXAotCQlbbWMgImZpbGVzIl0KKwkJW21jICJmaWxlcyJdXQogCiAJc2V0IHJlYWR0cmVlX2VyciB7fQogCXNldCBmZCBbZ2l0X3JlYWQgLS1zdGRlcnIgcmVhZC10cmVlIFwKQEAgLTk3NiwzMyArMTAxMCw5IEBACiAJZmlsZWV2ZW50ICRmZCByZWFkYWJsZSBbY2IgX3JlYWR0cmVlX3dhaXQgJGZkXQogfQogCi1tZXRob2QgX2RvX3ZhbGlkYXRlX3N1Ym1vZHVsZV9jbG9uaW5nIHtva30gewotCWlmIHskb2t9IHsKLQkJJG9fY29ucyBkb25lICRvawotCQlzZXQgZG9uZSAxCi0JfSBlbHNlIHsKLQkJX2Nsb25lX2ZhaWxlZCAkdGhpcyBbbWMgIkNhbm5vdCBjbG9uZSBzdWJtb2R1bGVzLiJdCi0JfQotfQotCi1tZXRob2QgX2RvX2Nsb25lX3N1Ym1vZHVsZXMge30gewotCWlmIHskcmVjdXJzaXZlIGVxIHt0cnVlfX0gewotCQlkZXN0cm95ICR3X2JvZHkKLQkJc2V0IG9fY29ucyBbY29uc29sZTo6ZW1iZWQgXAotCQkJJHdfYm9keSBcCi0JCQlbbWMgIkNsb25pbmcgc3VibW9kdWxlcyJdXQotCQlwYWNrICR3X2JvZHkgLWZpbGwgYm90aCAtZXhwYW5kIDEgLXBhZHggMTAKLQkJJG9fY29ucyBleGVjIFwKLQkJCVtsaXN0IGdpdCBzdWJtb2R1bGUgdXBkYXRlIC0taW5pdCAtLXJlY3Vyc2l2ZV0gXAotCQkJW2NiIF9kb192YWxpZGF0ZV9zdWJtb2R1bGVfY2xvbmluZ10KLQl9IGVsc2UgewotCQlzZXQgZG9uZSAxCi0JfQotfQotCiBtZXRob2QgX3JlYWR0cmVlX3dhaXQge2ZkfSB7CiAJc2V0IGJ1ZiBbcmVhZCAkZmRdCi0JJG9fY29ucyB1cGRhdGVfbWV0ZXIgJGJ1ZgorCSRvX3N0YXR1c19vcCB1cGRhdGVfbWV0ZXIgJGJ1ZgogCWFwcGVuZCByZWFkdHJlZV9lcnIgJGJ1ZgogCiAJZmNvbmZpZ3VyZSAkZmQgLWJsb2NraW5nIDEKQEAgLTEwNTAsNiArMTA2MCwzNCBAQAogCWZjb25maWd1cmUgJGZkX3BoIC1ibG9ja2luZyAwCiB9CiAKK21ldGhvZCBfZG9fY2xvbmVfc3VibW9kdWxlcyB7fSB7CisJaWYgeyRyZWN1cnNpdmUgZXEge3RydWV9fSB7CisJCSRvX3N0YXR1c19vcCBzdG9wCisJCXNldCBvX3N0YXR1c19vcCB7fQorCisJCWRlc3Ryb3kgJHdfYm9keQorCisJCXNldCBvX2NvbnMgW2NvbnNvbGU6OmVtYmVkIFwKKwkJCSR3X2JvZHkgXAorCQkJW21jICJDbG9uaW5nIHN1Ym1vZHVsZXMiXV0KKwkJcGFjayAkd19ib2R5IC1maWxsIGJvdGggLWV4cGFuZCAxIC1wYWR4IDEwCisJCSRvX2NvbnMgZXhlYyBcCisJCQlbbGlzdCBnaXQgc3VibW9kdWxlIHVwZGF0ZSAtLWluaXQgLS1yZWN1cnNpdmVdIFwKKwkJCVtjYiBfZG9fdmFsaWRhdGVfc3VibW9kdWxlX2Nsb25pbmddCisJfSBlbHNlIHsKKwkJc2V0IGRvbmUgMQorCX0KK30KKworbWV0aG9kIF9kb192YWxpZGF0ZV9zdWJtb2R1bGVfY2xvbmluZyB7b2t9IHsKKwlpZiB7JG9rfSB7CisJCSRvX2NvbnMgZG9uZSAkb2sKKwkJc2V0IGRvbmUgMQorCX0gZWxzZSB7CisJCV9jbG9uZV9mYWlsZWQgJHRoaXMgW21jICJDYW5ub3QgY2xvbmUgc3VibW9kdWxlcy4iXQorCX0KK30KKwogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogIyMKICMjIE9wZW4gRXhpc3RpbmcgUmVwb3NpdG9yeQpkaWZmIC0tZ2l0IGEvZ2l0LWd1aS9saWIvY2hvcmQudGNsIGIvZ2l0LWd1aS9saWIvY2hvcmQudGNsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUyMWU3ZDMKLS0tIC9kZXYvbnVsbAorKysgYi9naXQtZ3VpL2xpYi9jaG9yZC50Y2wKQEAgLTAsMCArMSwxNTggQEAKKyMgU2ltcGxlIENob3JkIGZvciBUY2wKKyMKKyMgQSAiY2hvcmQiIGlzIGEgbWV0aG9kIHdpdGggbW9yZSB0aGFuIG9uZSBlbnRyeXBvaW50IGFuZCBvbmx5IG9uZSBib2R5LCBzdWNoCisjIHRoYXQgdGhlIGJvZHkgcnVucyBvbmx5IG9uY2UgYWxsIHRoZSBlbnRyeXBvaW50cyBoYXZlIGJlZW4gY2FsbGVkIGJ5CisjIGRpZmZlcmVudCBhc3luY2hyb25vdXMgdGFza3MuIEluIHRoaXMgaW1wbGVtZW50YXRpb24sIHRoZSBjaG9yZCBpcyBkZWZpbmVkCisjIGR5bmFtaWNhbGx5IGZvciBlYWNoIGludm9jYXRpb24uIEEgU2ltcGxlQ2hvcmQgb2JqZWN0IGlzIGNyZWF0ZWQsIHN1cHBseWluZworIyBib2R5IHNjcmlwdCB0byBiZSBydW4gd2hlbiB0aGUgY2hvcmQgaXMgY29tcGxldGVkLCBhbmQgdGhlbiBvbmUgb3IgbW9yZSBub3RlcworIyBhcmUgYWRkZWQgdG8gdGhlIGNob3JkLiBFYWNoIG5vdGUgY2FuIGJlIGNhbGxlZCBsaWtlIGEgcHJvYywgYW5kIHJldHVybnMKKyMgaW1tZWRpYXRlbHkgaWYgdGhlIGNob3JkIGlzbid0IHlldCBjb21wbGV0ZS4gV2hlbiB0aGUgbGFzdCByZW1haW5pbmcgbm90ZSBpcworIyBjYWxsZWQsIHRoZSBib2R5IHJ1bnMgYmVmb3JlIHRoZSBub3RlIHJldHVybnMuCisjCisjIFRoZSBTaW1wbGVDaG9yZCBjbGFzcyBoYXMgYSBjb25zdHJ1Y3RvciB0aGF0IHRha2VzIHRoZSBib2R5IHNjcmlwdCwgYW5kIGEKKyMgbWV0aG9kIGFkZF9ub3RlIHRoYXQgcmV0dXJucyBhIG5vdGUgb2JqZWN0LiBTaW5jZSB0aGUgYm9keSBzY3JpcHQgZG9lcyBub3QKKyMgcnVuIGluIHRoZSBjb250ZXh0IG9mIHRoZSBwcm9jZWR1cmUgdGhhdCBkZWZpbmVkIGl0LCBhIG1lY2hhbmlzbSBpcyBwcm92aWRlZAorIyBmb3IgaW5qZWN0aW5nIHZhcmlhYmxlcyBpbnRvIHRoZSBjaG9yZCBmb3IgdXNlIGJ5IHRoZSBib2R5IHNjcmlwdC4gVGhlCisjIGFjdGl2YXRpb24gb2YgYSBub3RlIGlzIGlkZW1wb3RlbnQ7IG11bHRpcGxlIGNhbGxzIGhhdmUgdGhlIHNhbWUgZWZmZWN0IGFzCisjIGEgc2ltcGxlIGNhbGwuCisjCisjIElmIHlvdSBhcmUgaW52b2tpbmcgYXN5bmNocm9ub3VzIG9wZXJhdGlvbnMgd2l0aCBjaG9yZCBub3RlcyBhcyBjb21wbGV0aW9uCisjIGNhbGxiYWNrcywgYW5kIHRoZXJlIGlzIGEgcG9zc2liaWxpdHkgdGhhdCBlYXJsaWVyIG9wZXJhdGlvbnMgY291bGQgY29tcGxldGUKKyMgYmVmb3JlIGxhdGVyIG9uZXMgYXJlIHN0YXJ0ZWQsIGl0IGlzIGEgZ29vZCBwcmFjdGljZSB0byBjcmVhdGUgYSAiY29tbW9uIgorIyBub3RlIG9uIHRoZSBjaG9yZCB0aGF0IHByZXZlbnRzIGl0IGZyb20gYmVpbmcgY29tcGxldGUgdW50aWwgeW91J3JlIGNlcnRhaW4KKyMgeW91J3ZlIGFkZGVkIGFsbCB0aGUgbm90ZXMgeW91IG5lZWQuCisjCisjIEV4YW1wbGU6CisjCisjICAgIyBUdXJuIG9mZiB0aGUgVUkgd2hpbGUgcnVubmluZyBhIGNvdXBsZSBvZiBhc3luYyBvcGVyYXRpb25zLgorIyAgIGxvY2tfdWkKKyMKKyMgICBzZXQgY2hvcmQgW1NpbXBsZUNob3JkOjpuZXcgeworIyAgICAgdW5sb2NrX3VpCisjICAgICAjIE5vdGU6ICRub3RpY2UgaGVyZSBpcyBub3QgcmVmZXJlbmNlZCBpbiB0aGUgY2FsbGluZyBzY29wZQorIyAgICAgaWYgeyRub3RpY2V9IHsgaW5mb19wb3B1cCAkbm90aWNlIH0KKyMgICB9CisjCisjICAgIyBDb25maWd1cmUgYSBub3RlIHRvIGtlZXAgdGhlIGNob3JkIGZyb20gY29tcGxldGluZyB1bnRpbAorIyAgICMgYWxsIG9wZXJhdGlvbnMgaGF2ZSBiZWVuIGluaXRpYXRlZC4KKyMgICBzZXQgY29tbW9uX25vdGUgWyRjaG9yZCBhZGRfbm90ZV0KKyMKKyMgICAjIEFjdGl2YXRlIG5vdGVzIGluICdhZnRlcicgY2FsbGJhY2tzIHRvIG90aGVyIG9wZXJhdGlvbnMKKyMgICBzZXQgbmV3bm90ZSBbJGNob3JkIGFkZF9ub3RlXQorIyAgIGFzeW5jX29wZXJhdGlvbiAkYXJncyBbbGlzdCAkbmV3bm90ZSBhY3RpdmF0ZV0KKyMKKyMgICAjIENvbW11bmljYXRlIHdpdGggdGhlIGNob3JkIGJvZHkKKyMgICBpZiB7JGNvbmRpdGlvbn0geworIyAgICAgIyBUaGlzIHNldHMgJG5vdGljZSBpbiB0aGUgc2FtZSBjb250ZXh0IHRoYXQgdGhlIGNob3JkIGJvZHkgcnVucyBpbi4KKyMgICAgICRjaG9yZCBldmFsIHsgc2V0IG5vdGljZSAiU29tZXRoaW5nIGludGVyZXN0aW5nIiB9CisjICAgfQorIworIyAgICMgQWN0aXZhdGUgdGhlIGNvbW1vbiBub3RlLCBtYWtpbmcgdGhlIGNob3JkIGVsaWdpYmxlIHRvIGNvbXBsZXRlCisjICAgJGNvbW1vbl9ub3RlIGFjdGl2YXRlCisjCisjIEF0IHRoaXMgcG9pbnQsIHRoZSBjaG9yZCB3aWxsIGNvbXBsZXRlIGF0IHNvbWUgdW5rbm93biBwb2ludCBpbiB0aGUgZnV0dXJlLgorIyBUaGUgY29tbW9uIG5vdGUgbWlnaHQgaGF2ZSBiZWVuIHRoZSBmaXJzdCBub3RlIGFjdGl2YXRlZCwgb3IgdGhlIGFzeW5jCisjIG9wZXJhdGlvbnMgbWlnaHQgaGF2ZSBjb21wbGV0ZWQgc3luY2hyb25vdXNseSBhbmQgdGhlIGNvbW1vbiBub3RlIGlzIHRoZQorIyBsYXN0IG9uZSwgY29tcGxldGluZyB0aGUgY2hvcmQgYmVmb3JlIHRoaXMgY29kZSBmaW5pc2hlcywgb3IgYW55dGhpbmcgaW4KKyMgYmV0d2Vlbi4gVGhlIHB1cnBvc2Ugb2YgdGhlIGNob3JkIGlzIHRvIG5vdCBoYXZlIHRvIHdvcnJ5IGFib3V0IHRoZSBvcmRlci4KKworIyBTaW1wbGVDaG9yZCBjbGFzczoKKyMgICBSZXByZXNlbnRzIGEgcHJvY2VkdXJlIHRoYXQgY29uY2VwdHVhbGx5IGhhcyBtdWx0aXBsZSBlbnRyeXBvaW50cyB0aGF0IG11c3QKKyMgICBhbGwgYmUgY2FsbGVkIGJlZm9yZSB0aGUgcHJvY2VkdXJlIGV4ZWN1dGVzLiBFYWNoIGVudHJ5cG9pbnQgaXMgY2FsbGVkIGEKKyMgICAibm90ZSIuIFRoZSBjaG9yZCBpcyBvbmx5ICJjb21wbGV0ZWQiIHdoZW4gYWxsIHRoZSBub3RlcyBhcmUgImFjdGl2YXRlZCIuCitjbGFzcyBTaW1wbGVDaG9yZCB7CisJZmllbGQgbm90ZXMKKwlmaWVsZCBib2R5CisJZmllbGQgaXNfY29tcGxldGVkCisJZmllbGQgZXZhbF9ucworCisJIyBDb25zdHJ1Y3RvcjoKKwkjICAgc2V0IGNob3JkIFtTaW1wbGVDaG9yZDo6bmV3IHtib2R5fV0KKwkjICAgICBDcmVhdGVzIGEgbmV3IGNob3JkIG9iamVjdCB3aXRoIHRoZSBzcGVjaWZpZWQgYm9keSBzY3JpcHQuIFRoZQorCSMgICAgIGJvZHkgc2NyaXB0IGlzIGV2YWx1YXRlZCBhdCBtb3N0IG9uY2UsIHdoZW4gYSBub3RlIGlzIGFjdGl2YXRlZAorCSMgICAgIGFuZCB0aGUgY2hvcmQgaGFzIG5vIG90aGVyIG5vbi1hY3RpdmF0ZWQgbm90ZXMuCisJY29uc3RydWN0b3IgbmV3IHtpX2JvZHl9IHsKKwkJc2V0IG5vdGVzIFtsaXN0XQorCQlzZXQgYm9keSAkaV9ib2R5CisJCXNldCBpc19jb21wbGV0ZWQgMAorCQlzZXQgZXZhbF9ucyAiW25hbWVzcGFjZSBxdWFsaWZpZXJzICR0aGlzXTo6ZXZhbCIKKwkJcmV0dXJuICR0aGlzCisJfQorCisJIyBNZXRob2Q6CisJIyAgICRjaG9yZCBldmFsIHtzY3JpcHR9CisJIyAgICAgUnVucyB0aGUgc3BlY2lmaWVkIHNjcmlwdCBpbiB0aGUgc2FtZSBjb250ZXh0IChuYW1lc3BhY2UpIGluIHdoaWNoCisJIyAgICAgdGhlIGNob3JkIGJvZHkgd2lsbCBiZSBldmFsdWF0ZWQuIFRoaXMgY2FuIGJlIHVzZWQgdG8gc2V0IHZhcmlhYmxlCisJIyAgICAgdmFsdWVzIGZvciB0aGUgY2hvcmQgYm9keSB0byB1c2UuCisJbWV0aG9kIGV2YWwge3NjcmlwdH0geworCQluYW1lc3BhY2UgZXZhbCAkZXZhbF9ucyAkc2NyaXB0CisJfQorCisJIyBNZXRob2Q6CisJIyAgIHNldCBub3RlIFskY2hvcmQgYWRkX25vdGVdCisJIyAgICAgQWRkcyBhIG5ldyBub3RlIHRvIHRoZSBjaG9yZCwgYW4gaW5zdGFuY2Ugb2YgQ2hvcmROb3RlLiBSYWlzZXMgYW4KKwkjICAgICBlcnJvciBpZiB0aGUgY2hvcmQgaXMgYWxyZWFkeSBjb21wbGV0ZWQsIG90aGVyd2lzZSB0aGUgY2hvcmQgaXMKKwkjICAgICB1cGRhdGVkIHNvIHRoYXQgdGhlIG5ldyBub3RlIG11c3QgYWxzbyBiZSBhY3RpdmF0ZWQgYmVmb3JlIHRoZQorCSMgICAgIGJvZHkgaXMgZXZhbHVhdGVkLgorCW1ldGhvZCBhZGRfbm90ZSB7fSB7CisJCWlmIHskaXNfY29tcGxldGVkfSB7IGVycm9yICJDYW5ub3QgYWRkIGEgbm90ZSB0byBhIGNvbXBsZXRlZCBjaG9yZCIgfQorCisJCXNldCBub3RlIFtDaG9yZE5vdGU6Om5ldyAkdGhpc10KKworCQlsYXBwZW5kIG5vdGVzICRub3RlCisKKwkJcmV0dXJuICRub3RlCisJfQorCisJIyBUaGlzIG1ldGhvZCBpcyBmb3IgaW50ZXJuYWwgdXNlIG9ubHkgYW5kIGlzIGludGVudGlvbmFsbHkgdW5kb2N1bWVudGVkLgorCW1ldGhvZCBub3RpZnlfbm90ZV9hY3RpdmF0aW9uIHt9IHsKKwkJaWYgeyEkaXNfY29tcGxldGVkfSB7CisJCQlmb3JlYWNoIG5vdGUgJG5vdGVzIHsKKwkJCQlpZiB7IVskbm90ZSBpc19hY3RpdmF0ZWRdfSB7IHJldHVybiB9CisJCQl9CisKKwkJCXNldCBpc19jb21wbGV0ZWQgMQorCisJCQluYW1lc3BhY2UgZXZhbCAkZXZhbF9ucyAkYm9keQorCQkJZGVsZXRlX3RoaXMKKwkJfQorCX0KK30KKworIyBDaG9yZE5vdGUgY2xhc3M6CisjICAgUmVwcmVzZW50cyBhIG5vdGUgd2l0aGluIGEgY2hvcmQsIHByb3ZpZGluZyBhIHdheSB0byBhY3RpdmF0ZSBpdC4gV2hlbiB0aGUKKyMgICBmaW5hbCBub3RlIG9mIHRoZSBjaG9yZCBpcyBhY3RpdmF0ZWQgKHRoaXMgY2FuIGJlIGFueSBub3RlIGluIHRoZSBjaG9yZCwKKyMgICB3aXRoIGFsbCBvdGhlciBub3RlcyBhbHJlYWR5IHByZXZpb3VzbHkgYWN0aXZhdGVkIGluIGFueSBvcmRlciksIHRoZSBjaG9yZCdzCisjICAgYm9keSBpcyBldmFsdWF0ZWQuCitjbGFzcyBDaG9yZE5vdGUgeworCWZpZWxkIGNob3JkCisJZmllbGQgaXNfYWN0aXZhdGVkCisKKwkjIENvbnN0cnVjdG9yOgorCSMgICBJbnN0YW5jZXMgb2YgQ2hvcmROb3RlIGFyZSBjcmVhdGVkIGludGVybmFsbHkgYnkgY2FsbGluZyBhZGRfbm90ZSBvbgorCSMgICBTaW1wbGVDaG9yZCBvYmplY3RzLgorCWNvbnN0cnVjdG9yIG5ldyB7Y30geworCQlzZXQgY2hvcmQgJGMKKwkJc2V0IGlzX2FjdGl2YXRlZCAwCisJCXJldHVybiAkdGhpcworCX0KKworCSMgTWV0aG9kOgorCSMgICBbJG5vdGUgaXNfYWN0aXZhdGVkXQorCSMgICAgIFJldHVybnMgdHJ1ZSBpZiB0aGlzIG5vdGUgaGFzIGFscmVhZHkgYmVlbiBhY3RpdmF0ZWQuCisJbWV0aG9kIGlzX2FjdGl2YXRlZCB7fSB7CisJCXJldHVybiAkaXNfYWN0aXZhdGVkCisJfQorCisJIyBNZXRob2Q6CisJIyAgICRub3RlIGFjdGl2YXRlCisJIyAgICAgQWN0aXZhdGVzIHRoZSBub3RlLCBpZiBpdCBoYXMgbm90IGFscmVhZHkgYmVlbiBhY3RpdmF0ZWQsIGFuZAorCSMgICAgIGNvbXBsZXRlcyB0aGUgY2hvcmQgaWYgdGhlcmUgYXJlIG5vIG90aGVyIG5vdGVzIGF3YWl0aW5nCisJIyAgICAgYWN0aXZhdGlvbi4gU3Vic2VxdWVudCBjYWxscyB3aWxsIGhhdmUgbm8gZnVydGhlciBlZmZlY3QuCisJbWV0aG9kIGFjdGl2YXRlIHt9IHsKKwkJaWYgeyEkaXNfYWN0aXZhdGVkfSB7CisJCQlzZXQgaXNfYWN0aXZhdGVkIDEKKwkJCSRjaG9yZCBub3RpZnlfbm90ZV9hY3RpdmF0aW9uCisJCX0KKwl9Cit9CmRpZmYgLS1naXQgYS9naXQtZ3VpL2xpYi9jb21taXQudGNsIGIvZ2l0LWd1aS9saWIvY29tbWl0LnRjbAppbmRleCA3NWVhOTY1Li5iNTE2YWEyIDEwMDY0NAotLS0gYS9naXQtZ3VpL2xpYi9jb21taXQudGNsCisrKyBiL2dpdC1ndWkvbGliL2NvbW1pdC50Y2wKQEAgLTMzMyw3ICszMzMsNyBAQAogcHJvYyBjb21taXRfY29tbWl0dHJlZSB7ZmRfd3QgY3VySEVBRCBtc2dfcH0gewogCWdsb2JhbCBIRUFEIFBBUkVOVCBNRVJHRV9IRUFEIGNvbW1pdF90eXBlIGNvbW1pdF9hdXRob3IKIAlnbG9iYWwgY3VycmVudF9icmFuY2gKLQlnbG9iYWwgdWlfY29tbSBzZWxlY3RlZF9jb21taXRfdHlwZQorCWdsb2JhbCB1aV9jb21tIGNvbW1pdF90eXBlX2lzX2FtZW5kCiAJZ2xvYmFsIGZpbGVfc3RhdGVzIHNlbGVjdGVkX3BhdGhzIHJlc2Nhbl9hY3RpdmUKIAlnbG9iYWwgcmVwb19jb25maWcKIAlnbG9iYWwgZW52CkBAIC00NjcsOCArNDY3LDggQEAKIAogCSMgLS0gVXBkYXRlIGluIG1lbW9yeSBzdGF0dXMKIAkjCi0Jc2V0IHNlbGVjdGVkX2NvbW1pdF90eXBlIG5ldwogCXNldCBjb21taXRfdHlwZSBub3JtYWwKKwlzZXQgY29tbWl0X3R5cGVfaXNfYW1lbmQgMAogCXNldCBIRUFEICRjbXRfaWQKIAlzZXQgUEFSRU5UICRjbXRfaWQKIAlzZXQgTUVSR0VfSEVBRCBbbGlzdF0KZGlmZiAtLWdpdCBhL2dpdC1ndWkvbGliL2NvbnNvbGUudGNsIGIvZ2l0LWd1aS9saWIvY29uc29sZS50Y2wKaW5kZXggMWYzMjQ4Zi4uYmI2YjljOCAxMDA2NDQKLS0tIGEvZ2l0LWd1aS9saWIvY29uc29sZS50Y2wKKysrIGIvZ2l0LWd1aS9saWIvY29uc29sZS50Y2wKQEAgLTIwMyw2ICsyMDMsOCBAQAogCQkJZm9jdXMgJHcub2sKIAkJfQogCX0KKworCWJpbmQgJHcgPEtleS1Fc2NhcGU+ICJkZXN0cm95ICR3O2JyZWFrIgogfQogCiBtZXRob2QgX3NiX3NldCB7c2Igb3JpZW50IGZpcnN0IGxhc3R9IHsKZGlmZiAtLWdpdCBhL2dpdC1ndWkvbGliL2RpZmYudGNsIGIvZ2l0LWd1aS9saWIvZGlmZi50Y2wKaW5kZXggNjhjNGE2Yy4uODcxYWQ0OCAxMDA2NDQKLS0tIGEvZ2l0LWd1aS9saWIvZGlmZi50Y2wKKysrIGIvZ2l0LWd1aS9saWIvZGlmZi50Y2wKQEAgLTU1LDcgKzU1LDcgQEAKIAogcHJvYyBmb3JjZV9kaWZmX2VuY29kaW5nIHtlbmN9IHsKIAlnbG9iYWwgY3VycmVudF9kaWZmX3BhdGgKLQkKKwogCWlmIHskY3VycmVudF9kaWZmX3BhdGggbmUge319IHsKIAkJZm9yY2VfcGF0aF9lbmNvZGluZyAkY3VycmVudF9kaWZmX3BhdGggJGVuYwogCQlyZXNob3dfZGlmZgpAQCAtMjcwLDE5ICsyNzAsNiBAQAogCX0KIH0KIAotcHJvYyBnZXRfY29uZmxpY3RfbWFya2VyX3NpemUge3BhdGh9IHsKLQlzZXQgc2l6ZSA3Ci0JY2F0Y2ggewotCQlzZXQgZmRfcmMgW2V2YWwgW2xpc3QgZ2l0X3JlYWQgY2hlY2stYXR0ciAiY29uZmxpY3QtbWFya2VyLXNpemUiIC0tICRwYXRoXV0KLQkJc2V0IHJldCBbZ2V0cyAkZmRfcmMgbGluZV0KLQkJY2xvc2UgJGZkX3JjCi0JCWlmIHskcmV0ID4gMH0gewotCQkJcmVnZXhwIHsuKjogY29uZmxpY3QtbWFya2VyLXNpemU6IChcZCspJH0gJGxpbmUgbGluZSBzaXplCi0JCX0KLQl9Ci0JcmV0dXJuICRzaXplCi19Ci0KIHByb2Mgc3RhcnRfc2hvd19kaWZmIHtjb250X2luZm8ge2FkZF9vcHRzIHt9fX0gewogCWdsb2JhbCBmaWxlX3N0YXRlcyBmaWxlX2xpc3RzCiAJZ2xvYmFsIGlzXzN3YXlfZGlmZiBpc19zdWJtb2R1bGVfZGlmZiBkaWZmX2FjdGl2ZSByZXBvX2NvbmZpZwpAQCAtMjk4LDcgKzI4NSw3IEBACiAJc2V0IGlzX3N1Ym1vZHVsZV9kaWZmIDAKIAlzZXQgZGlmZl9hY3RpdmUgMQogCXNldCBjdXJyZW50X2RpZmZfaGVhZGVyIHt9Ci0Jc2V0IGNvbmZsaWN0X3NpemUgW2dldF9jb25mbGljdF9tYXJrZXJfc2l6ZSAkcGF0aF0KKwlzZXQgY29uZmxpY3Rfc2l6ZSBbZ2l0YXR0ciAkcGF0aCBjb25mbGljdC1tYXJrZXItc2l6ZSA3XQogCiAJc2V0IGNtZCBbbGlzdF0KIAlpZiB7JHcgZXEgJHVpX2luZGV4fSB7CkBAIC0zNjAsNiArMzQ3LDEwIEBACiAJfQogCiAJc2V0IDo6Y3VycmVudF9kaWZmX2luaGVhZGVyIDEKKwkjIERldGVjdCBwcmUtaW1hZ2UgbGluZXMgb2YgdGhlIGRpZmYzIGNvbmZsaWN0LXN0eWxlLiBUaGV5IGFyZSBqdXN0CisJIyAnKysnIGxpbmVzIHdoaWNoIGlzIG5vdCBiaWplY3RpdmUuIFRodXMsIHdlIG5lZWQgdG8gbWFpbnRhaW4gYSBzdGF0ZQorCSMgYWNyb3NzIGxpbmVzLgorCXNldCA6OmNvbmZsaWN0X2luX3ByZV9pbWFnZSAwCiAJZmNvbmZpZ3VyZSAkZmQgXAogCQktYmxvY2tpbmcgMCBcCiAJCS1lbmNvZGluZyBbZ2V0X3BhdGhfZW5jb2RpbmcgJHBhdGhdIFwKQEAgLTQ2MiwxMSArNDUzLDIzIEBACiAJCQl7LS19IHtzZXQgdGFncyBkXy0tfQogCQkJeysrfSB7CiAJCQkJc2V0IHJlZ2V4cCBbc3RyaW5nIG1hcCBbbGlzdCAlY29uZmxpY3Rfc2l6ZSAkY29uZmxpY3Rfc2l6ZV1cCi0JCQkJCQkJCXteXCtcKyhbPD49XSl7JWNvbmZsaWN0X3NpemV9KD86IHwkKX1dCisJCQkJCQkJCXteXCtcKyhbPD49fF0peyVjb25mbGljdF9zaXplfSg/OiB8JCl9XQogCQkJCWlmIHtbcmVnZXhwICRyZWdleHAgJGxpbmUgX2cgb3BdfSB7CiAJCQkJCXNldCBpc19jb25mbGljdF9kaWZmIDEKIAkJCQkJc2V0IGxpbmUgW3N0cmluZyByZXBsYWNlICRsaW5lIDAgMSB7ICB9XQogCQkJCQlzZXQgdGFncyBkJG9wCisKKwkJCQkJIyBUaGUgfHx8IGNvbmZsaWN0LW1hcmtlciBtYXJrcyB0aGUgc3RhcnQgb2YgdGhlIHByZS1pbWFnZS4KKwkJCQkJIyBBbGwgdGhvc2UgbGluZXMgYXJlIGFsc28gcHJlZml4ZWQgd2l0aCAnKysnLiBUaHVzIHdlIG5lZWQKKwkJCQkJIyB0byBtYWludGFpbiB0aGlzIHN0YXRlLgorCQkJCQlzZXQgOjpjb25mbGljdF9pbl9wcmVfaW1hZ2UgW2V4cHIgeyRvcCBlcSB7fH19XQorCQkJCX0gZWxzZWlmIHskOjpjb25mbGljdF9pbl9wcmVfaW1hZ2V9IHsKKwkJCQkJIyBUaGlzIGlzIGEgcHJlLWltYWdlIGxpbmUuIEl0IGlzIHRoZSBvbmUgd2hpY2ggYm90aCBzaWRlcworCQkJCQkjIGFyZSBiYXNlZCBvbi4gQXMgaXQgaGFzIGFsc28gdGhlICcrKycgbGluZSBzdGFydCwgaXQgaXMKKwkJCQkJIyBub3JtYWxseSBzaG93biBhcyAnYWRkZWQnLiBJbnZlcnQgdGhpcyB0byAnLS0nIHRvIG1ha2UKKwkJCQkJIyBpdCBhICdyZW1vdmVkJyBsaW5lLgorCQkJCQlzZXQgbGluZSBbc3RyaW5nIHJlcGxhY2UgJGxpbmUgMCAxIHstLX1dCisJCQkJCXNldCB0YWdzIGRfLS0KIAkJCQl9IGVsc2UgewogCQkJCQlzZXQgdGFncyBkXysrCiAJCQkJfQpAQCAtNTY3LDI0ICs1NzAsMzEgQEAKIAl9CiB9CiAKLXByb2MgYXBwbHlfaHVuayB7eCB5fSB7Citwcm9jIGFwcGx5X29yX3JldmVydF9odW5rIHt4IHkgcmV2ZXJ0fSB7CiAJZ2xvYmFsIGN1cnJlbnRfZGlmZl9wYXRoIGN1cnJlbnRfZGlmZl9oZWFkZXIgY3VycmVudF9kaWZmX3NpZGUKLQlnbG9iYWwgdWlfZGlmZiB1aV9pbmRleCBmaWxlX3N0YXRlcworCWdsb2JhbCB1aV9kaWZmIHVpX2luZGV4IGZpbGVfc3RhdGVzIGxhc3RfcmV2ZXJ0IGxhc3RfcmV2ZXJ0X2VuYwogCiAJaWYgeyRjdXJyZW50X2RpZmZfcGF0aCBlcSB7fSB8fCAkY3VycmVudF9kaWZmX2hlYWRlciBlcSB7fX0gcmV0dXJuCiAJaWYgeyFbbG9ja19pbmRleCBhcHBseV9odW5rXX0gcmV0dXJuCiAKLQlzZXQgYXBwbHlfY21kIHthcHBseSAtLWNhY2hlZCAtLXdoaXRlc3BhY2U9bm93YXJufQorCXNldCBhcHBseV9jbWQge2FwcGx5IC0td2hpdGVzcGFjZT1ub3dhcm59CiAJc2V0IG1pIFtsaW5kZXggJGZpbGVfc3RhdGVzKCRjdXJyZW50X2RpZmZfcGF0aCkgMF0KIAlpZiB7JGN1cnJlbnRfZGlmZl9zaWRlIGVxICR1aV9pbmRleH0gewogCQlzZXQgZmFpbGVkX21zZyBbbWMgIkZhaWxlZCB0byB1bnN0YWdlIHNlbGVjdGVkIGh1bmsuIl0KLQkJbGFwcGVuZCBhcHBseV9jbWQgLS1yZXZlcnNlCisJCWxhcHBlbmQgYXBwbHlfY21kIC0tcmV2ZXJzZSAtLWNhY2hlZAogCQlpZiB7W3N0cmluZyBpbmRleCAkbWkgMF0gbmUge019fSB7CiAJCQl1bmxvY2tfaW5kZXgKIAkJCXJldHVybgogCQl9CiAJfSBlbHNlIHsKLQkJc2V0IGZhaWxlZF9tc2cgW21jICJGYWlsZWQgdG8gc3RhZ2Ugc2VsZWN0ZWQgaHVuay4iXQorCQlpZiB7JHJldmVydH0geworCQkJc2V0IGZhaWxlZF9tc2cgW21jICJGYWlsZWQgdG8gcmV2ZXJ0IHNlbGVjdGVkIGh1bmsuIl0KKwkJCWxhcHBlbmQgYXBwbHlfY21kIC0tcmV2ZXJzZQorCQl9IGVsc2UgeworCQkJc2V0IGZhaWxlZF9tc2cgW21jICJGYWlsZWQgdG8gc3RhZ2Ugc2VsZWN0ZWQgaHVuay4iXQorCQkJbGFwcGVuZCBhcHBseV9jbWQgLS1jYWNoZWQKKwkJfQorCiAJCWlmIHtbc3RyaW5nIGluZGV4ICRtaSAxXSBuZSB7TX19IHsKIAkJCXVubG9ja19pbmRleAogCQkJcmV0dXJuCkBAIC02MDMsMjkgKzYxMyw0MCBAQAogCQlzZXQgZV9sbm8gZW5kCiAJfQogCisJc2V0IHdob2xlcGF0Y2ggIiRjdXJyZW50X2RpZmZfaGVhZGVyWyR1aV9kaWZmIGdldCAkc19sbm8gJGVfbG5vXSIKKwogCWlmIHtbY2F0Y2ggewogCQlzZXQgZW5jIFtnZXRfcGF0aF9lbmNvZGluZyAkY3VycmVudF9kaWZmX3BhdGhdCiAJCXNldCBwIFtldmFsIGdpdF93cml0ZSAkYXBwbHlfY21kXQogCQlmY29uZmlndXJlICRwIC10cmFuc2xhdGlvbiBiaW5hcnkgLWVuY29kaW5nICRlbmMKLQkJcHV0cyAtbm9uZXdsaW5lICRwICRjdXJyZW50X2RpZmZfaGVhZGVyCi0JCXB1dHMgLW5vbmV3bGluZSAkcCBbJHVpX2RpZmYgZ2V0ICRzX2xubyAkZV9sbm9dCisJCXB1dHMgLW5vbmV3bGluZSAkcCAkd2hvbGVwYXRjaAogCQljbG9zZSAkcH0gZXJyXX0gewogCQllcnJvcl9wb3B1cCAiJGZhaWxlZF9tc2dcblxuJGVyciIKIAkJdW5sb2NrX2luZGV4CiAJCXJldHVybgogCX0KIAorCWlmIHskcmV2ZXJ0fSB7CisJCSMgU2F2ZSBhIGNvcHkgb2YgdGhpcyBwYXRjaCBmb3IgdW5kb2luZyByZXZlcnRzLgorCQlzZXQgbGFzdF9yZXZlcnQgJHdob2xlcGF0Y2gKKwkJc2V0IGxhc3RfcmV2ZXJ0X2VuYyAkZW5jCisJfQorCiAJJHVpX2RpZmYgY29uZiAtc3RhdGUgbm9ybWFsCiAJJHVpX2RpZmYgZGVsZXRlICRzX2xubyAkZV9sbm8KIAkkdWlfZGlmZiBjb25mIC1zdGF0ZSBkaXNhYmxlZAogCisJIyBDaGVjayBpZiB0aGUgaHVuayB3YXMgdGhlIGxhc3Qgb25lIGluIHRoZSBmaWxlLgogCWlmIHtbJHVpX2RpZmYgZ2V0IDEuMCBlbmRdIGVxICJcbiJ9IHsKIAkJc2V0IG8gXwogCX0gZWxzZSB7CiAJCXNldCBvID8KIAl9CiAKLQlpZiB7JGN1cnJlbnRfZGlmZl9zaWRlIGVxICR1aV9pbmRleH0geworCSMgVXBkYXRlIHRoZSBzdGF0dXMgZmxhZ3MuCisJaWYgeyRyZXZlcnR9IHsKKwkJc2V0IG1pIFtzdHJpbmcgaW5kZXggJG1pIDBdJG8KKwl9IGVsc2VpZiB7JGN1cnJlbnRfZGlmZl9zaWRlIGVxICR1aV9pbmRleH0gewogCQlzZXQgbWkgJHtvfU0KIAl9IGVsc2VpZiB7W3N0cmluZyBpbmRleCAkbWkgMF0gZXEge199fSB7CiAJCXNldCBtaSBNJG8KQEAgLTY0MCw5ICs2NjEsOSBAQAogCX0KIH0KIAotcHJvYyBhcHBseV9yYW5nZV9vcl9saW5lIHt4IHl9IHsKK3Byb2MgYXBwbHlfb3JfcmV2ZXJ0X3JhbmdlX29yX2xpbmUge3ggeSByZXZlcnR9IHsKIAlnbG9iYWwgY3VycmVudF9kaWZmX3BhdGggY3VycmVudF9kaWZmX2hlYWRlciBjdXJyZW50X2RpZmZfc2lkZQotCWdsb2JhbCB1aV9kaWZmIHVpX2luZGV4IGZpbGVfc3RhdGVzCisJZ2xvYmFsIHVpX2RpZmYgdWlfaW5kZXggZmlsZV9zdGF0ZXMgbGFzdF9yZXZlcnQKIAogCXNldCBzZWxlY3RlZCBbJHVpX2RpZmYgdGFnIG5leHRyYW5nZSBzZWwgMC4wXQogCkBAIC02NjAsMTkgKzY4MSwyNyBAQAogCWlmIHskY3VycmVudF9kaWZmX3BhdGggZXEge30gfHwgJGN1cnJlbnRfZGlmZl9oZWFkZXIgZXEge319IHJldHVybgogCWlmIHshW2xvY2tfaW5kZXggYXBwbHlfaHVua119IHJldHVybgogCi0Jc2V0IGFwcGx5X2NtZCB7YXBwbHkgLS1jYWNoZWQgLS13aGl0ZXNwYWNlPW5vd2Fybn0KKwlzZXQgYXBwbHlfY21kIHthcHBseSAtLXdoaXRlc3BhY2U9bm93YXJufQogCXNldCBtaSBbbGluZGV4ICRmaWxlX3N0YXRlcygkY3VycmVudF9kaWZmX3BhdGgpIDBdCiAJaWYgeyRjdXJyZW50X2RpZmZfc2lkZSBlcSAkdWlfaW5kZXh9IHsKIAkJc2V0IGZhaWxlZF9tc2cgW21jICJGYWlsZWQgdG8gdW5zdGFnZSBzZWxlY3RlZCBsaW5lLiJdCiAJCXNldCB0b19jb250ZXh0IHsrfQotCQlsYXBwZW5kIGFwcGx5X2NtZCAtLXJldmVyc2UKKwkJbGFwcGVuZCBhcHBseV9jbWQgLS1yZXZlcnNlIC0tY2FjaGVkCiAJCWlmIHtbc3RyaW5nIGluZGV4ICRtaSAwXSBuZSB7TX19IHsKIAkJCXVubG9ja19pbmRleAogCQkJcmV0dXJuCiAJCX0KIAl9IGVsc2UgewotCQlzZXQgZmFpbGVkX21zZyBbbWMgIkZhaWxlZCB0byBzdGFnZSBzZWxlY3RlZCBsaW5lLiJdCi0JCXNldCB0b19jb250ZXh0IHstfQorCQlpZiB7JHJldmVydH0geworCQkJc2V0IGZhaWxlZF9tc2cgW21jICJGYWlsZWQgdG8gcmV2ZXJ0IHNlbGVjdGVkIGxpbmUuIl0KKwkJCXNldCB0b19jb250ZXh0IHsrfQorCQkJbGFwcGVuZCBhcHBseV9jbWQgLS1yZXZlcnNlCisJCX0gZWxzZSB7CisJCQlzZXQgZmFpbGVkX21zZyBbbWMgIkZhaWxlZCB0byBzdGFnZSBzZWxlY3RlZCBsaW5lLiJdCisJCQlzZXQgdG9fY29udGV4dCB7LX0KKwkJCWxhcHBlbmQgYXBwbHlfY21kIC0tY2FjaGVkCisJCX0KKwogCQlpZiB7W3N0cmluZyBpbmRleCAkbWkgMV0gbmUge019fSB7CiAJCQl1bmxvY2tfaW5kZXgKIAkJCXJldHVybgpAQCAtODMwLDcgKzg1OSw0NyBAQAogCQlwdXRzIC1ub25ld2xpbmUgJHAgJHdob2xlcGF0Y2gKIAkJY2xvc2UgJHB9IGVycl19IHsKIAkJZXJyb3JfcG9wdXAgIiRmYWlsZWRfbXNnXG5cbiRlcnIiCisJCXVubG9ja19pbmRleAorCQlyZXR1cm4KIAl9CiAKKwlpZiB7JHJldmVydH0geworCQkjIFNhdmUgYSBjb3B5IG9mIHRoaXMgcGF0Y2ggZm9yIHVuZG9pbmcgcmV2ZXJ0cy4KKwkJc2V0IGxhc3RfcmV2ZXJ0ICRjdXJyZW50X2RpZmZfaGVhZGVyJHdob2xlcGF0Y2gKKwkJc2V0IGxhc3RfcmV2ZXJ0X2VuYyAkZW5jCisJfQorCisJdW5sb2NrX2luZGV4Cit9CisKKyMgVW5kbyB0aGUgbGFzdCBsaW5lL2h1bmsgcmV2ZXJ0ZWQuIFdoZW4gaHVua3MgYW5kIGxpbmVzIGFyZSByZXZlcnRlZCwgYSBjb3B5CisjIG9mIHRoZSBkaWZmIGFwcGxpZWQgaXMgc2F2ZWQuIFJlLWFwcGx5IHRoYXQgZGlmZiB0byB1bmRvIHRoZSByZXZlcnQuCisjCisjIFJpZ2h0IG5vdywgd2Ugb25seSB1c2UgYSBzaW5nbGUgdmFyaWFibGUgdG8gaG9sZCB0aGUgY29weSwgYW5kIG5vdCBhCisjIHN0YWNrL2RlcXVlIGZvciBzaW1wbGljaXR5LCBzbyBtdWx0aXBsZSB1bmRvcyBhcmUgbm90IHBvc3NpYmxlLiBNYXliZSB0aGlzCisjIGNhbiBiZSBhZGRlZCBpZiB0aGUgbmVlZCBmb3Igc29tZXRoaW5nIGxpa2UgdGhpcyBpcyBmZWx0IGluIHRoZSBmdXR1cmUuCitwcm9jIHVuZG9fbGFzdF9yZXZlcnQge30geworCWdsb2JhbCBsYXN0X3JldmVydCBjdXJyZW50X2RpZmZfcGF0aCBjdXJyZW50X2RpZmZfaGVhZGVyCisJZ2xvYmFsIGxhc3RfcmV2ZXJ0X2VuYworCisJaWYgeyRsYXN0X3JldmVydCBlcSB7fX0gcmV0dXJuCisJaWYgeyFbbG9ja19pbmRleCBhcHBseV9odW5rXX0gcmV0dXJuCisKKwlzZXQgYXBwbHlfY21kIHthcHBseSAtLXdoaXRlc3BhY2U9bm93YXJufQorCXNldCBmYWlsZWRfbXNnIFttYyAiRmFpbGVkIHRvIHVuZG8gbGFzdCByZXZlcnQuIl0KKworCWlmIHtbY2F0Y2ggeworCQlzZXQgZW5jICRsYXN0X3JldmVydF9lbmMKKwkJc2V0IHAgW2V2YWwgZ2l0X3dyaXRlICRhcHBseV9jbWRdCisJCWZjb25maWd1cmUgJHAgLXRyYW5zbGF0aW9uIGJpbmFyeSAtZW5jb2RpbmcgJGVuYworCQlwdXRzIC1ub25ld2xpbmUgJHAgJGxhc3RfcmV2ZXJ0CisJCWNsb3NlICRwfSBlcnJdfSB7CisJCWVycm9yX3BvcHVwICIkZmFpbGVkX21zZ1xuXG4kZXJyIgorCQl1bmxvY2tfaW5kZXgKKwkJcmV0dXJuCisJfQorCisJc2V0IGxhc3RfcmV2ZXJ0IHt9CisKIAl1bmxvY2tfaW5kZXgKIH0KZGlmZiAtLWdpdCBhL2dpdC1ndWkvbGliL2luZGV4LnRjbCBiL2dpdC1ndWkvbGliL2luZGV4LnRjbAppbmRleCBiNTg4ZGIxLi4xZmM1YjQyIDEwMDY0NAotLS0gYS9naXQtZ3VpL2xpYi9pbmRleC50Y2wKKysrIGIvZ2l0LWd1aS9saWIvaW5kZXgudGNsCkBAIC03LDY3ICs3LDc0IEBACiAJfQogfQogCi1wcm9jIF9jbG9zZV91cGRhdGVpbmRleCB7ZmQgYWZ0ZXJ9IHsKLQlnbG9iYWwgdXNlX3R0ayBOUwotCWZjb25maWd1cmUgJGZkIC1ibG9ja2luZyAxCi0JaWYge1tjYXRjaCB7Y2xvc2UgJGZkfSBlcnJdfSB7Ci0JCXNldCB3IC5pbmRleGZyaWVkCi0JCURpYWxvZyAkdwotCQl3bSB3aXRoZHJhdyAkdwotCQl3bSB0aXRsZSAkdyBbc3RyY2F0ICJbYXBwbmFtZV0gKFtyZXBvbmFtZV0pOiAiIFttYyAiSW5kZXggRXJyb3IiXV0KLQkJd20gZ2VvbWV0cnkgJHcgIitbd2luZm8gcm9vdHggLl0rW3dpbmZvIHJvb3R5IC5dIgotCQlzZXQgcyBbbWMgIlVwZGF0aW5nIHRoZSBHaXQgaW5kZXggZmFpbGVkLiAgQSByZXNjYW4gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN0YXJ0ZWQgdG8gcmVzeW5jaHJvbml6ZSBnaXQtZ3VpLiJdCi0JCXRleHQgJHcubXNnIC15c2Nyb2xsY29tbWFuZCBbbGlzdCAkdy52cyBzZXRdIFwKLQkJCS13aWR0aCBbc3RyaW5nIGxlbmd0aCAkc10gLXJlbGllZiBmbGF0IFwKLQkJCS1ib3JkZXJ3aWR0aCAwIC1oaWdobGlnaHR0aGlja25lc3MgMCBcCi0JCQktYmFja2dyb3VuZCBbZ2V0X2JnX2NvbG9yICR3XQotCQkkdy5tc2cgdGFnIGNvbmZpZ3VyZSBib2xkIC1mb250IGZvbnRfdWlib2xkIC1qdXN0aWZ5IGNlbnRlcgotCQkke05TfTo6c2Nyb2xsYmFyICR3LnZzIC1jb21tYW5kIFtsaXN0ICR3Lm1zZyB5dmlld10KLQkJJHcubXNnIGluc2VydCBlbmQgJHMgYm9sZCBcblxuJGVyciB7fQotCQkkdy5tc2cgY29uZmlndXJlIC1zdGF0ZSBkaXNhYmxlZAotCi0JCSR7TlN9OjpidXR0b24gJHcuY29udGludWUgXAotCQkJLXRleHQgW21jICJDb250aW51ZSJdIFwKLQkJCS1jb21tYW5kIFtsaXN0IGRlc3Ryb3kgJHddCi0JCSR7TlN9OjpidXR0b24gJHcudW5sb2NrIFwKLQkJCS10ZXh0IFttYyAiVW5sb2NrIEluZGV4Il0gXAotCQkJLWNvbW1hbmQgImRlc3Ryb3kgJHc7IF9kZWxldGVfaW5kZXhsb2NrIgotCQlncmlkICR3Lm1zZyAtICR3LnZzIC1zdGlja3kgbmV3cwotCQlncmlkICR3LnVubG9jayAkdy5jb250aW51ZSAtIC1zdGlja3kgc2UgLXBhZHggMiAtcGFkeSAyCi0JCWdyaWQgY29sdW1uY29uZmlndXJlICR3IDAgLXdlaWdodCAxCi0JCWdyaWQgcm93Y29uZmlndXJlICR3IDAgLXdlaWdodCAxCi0KLQkJd20gcHJvdG9jb2wgJHcgV01fREVMRVRFX1dJTkRPVyB1cGRhdGUKLQkJYmluZCAkdy5jb250aW51ZSA8VmlzaWJpbGl0eT4gIgotCQkJZ3JhYiAkdwotCQkJZm9jdXMgJVcKLQkJIgotCQl3bSBkZWljb25pZnkgJHcKLQkJdGt3YWl0IHdpbmRvdyAkdwotCi0JCSQ6Om1haW5fc3RhdHVzIHN0b3AKK3Byb2MgY2xvc2VfYW5kX3VubG9ja19pbmRleCB7ZmQgYWZ0ZXJ9IHsKKwlpZiB7IVtjYXRjaCB7X2Nsb3NlX3VwZGF0ZWluZGV4ICRmZH0gZXJyXX0gewogCQl1bmxvY2tfaW5kZXgKLQkJcmVzY2FuICRhZnRlciAwCi0JCXJldHVybgorCQl1cGxldmVsICMwICRhZnRlcgorCX0gZWxzZSB7CisJCXJlc2Nhbl9vbl9lcnJvciAkZXJyICRhZnRlcgogCX0KLQotCSQ6Om1haW5fc3RhdHVzIHN0b3AKLQl1bmxvY2tfaW5kZXgKLQl1cGxldmVsICMwICRhZnRlcgogfQogCi1wcm9jIHVwZGF0ZV9pbmRleGluZm8ge21zZyBwYXRoTGlzdCBhZnRlcn0geworcHJvYyBfY2xvc2VfdXBkYXRlaW5kZXgge2ZkfSB7CisJZmNvbmZpZ3VyZSAkZmQgLWJsb2NraW5nIDEKKwljbG9zZSAkZmQKK30KKworcHJvYyByZXNjYW5fb25fZXJyb3Ige2VyciB7YWZ0ZXIge319fSB7CisJZ2xvYmFsIHVzZV90dGsgTlMKKworCXNldCB3IC5pbmRleGZyaWVkCisJRGlhbG9nICR3CisJd20gd2l0aGRyYXcgJHcKKwl3bSB0aXRsZSAkdyBbc3RyY2F0ICJbYXBwbmFtZV0gKFtyZXBvbmFtZV0pOiAiIFttYyAiSW5kZXggRXJyb3IiXV0KKwl3bSBnZW9tZXRyeSAkdyAiK1t3aW5mbyByb290eCAuXStbd2luZm8gcm9vdHkgLl0iCisJc2V0IHMgW21jICJVcGRhdGluZyB0aGUgR2l0IGluZGV4IGZhaWxlZC4gIEEgcmVzY2FuIHdpbGwgYmUgYXV0b21hdGljYWxseSBzdGFydGVkIHRvIHJlc3luY2hyb25pemUgZ2l0LWd1aS4iXQorCXRleHQgJHcubXNnIC15c2Nyb2xsY29tbWFuZCBbbGlzdCAkdy52cyBzZXRdIFwKKwkJLXdpZHRoIFtzdHJpbmcgbGVuZ3RoICRzXSAtcmVsaWVmIGZsYXQgXAorCQktYm9yZGVyd2lkdGggMCAtaGlnaGxpZ2h0dGhpY2tuZXNzIDAgXAorCQktYmFja2dyb3VuZCBbZ2V0X2JnX2NvbG9yICR3XQorCSR3Lm1zZyB0YWcgY29uZmlndXJlIGJvbGQgLWZvbnQgZm9udF91aWJvbGQgLWp1c3RpZnkgY2VudGVyCisJJHtOU306OnNjcm9sbGJhciAkdy52cyAtY29tbWFuZCBbbGlzdCAkdy5tc2cgeXZpZXddCisJJHcubXNnIGluc2VydCBlbmQgJHMgYm9sZCBcblxuJGVyciB7fQorCSR3Lm1zZyBjb25maWd1cmUgLXN0YXRlIGRpc2FibGVkCisKKwkke05TfTo6YnV0dG9uICR3LmNvbnRpbnVlIFwKKwkJLXRleHQgW21jICJDb250aW51ZSJdIFwKKwkJLWNvbW1hbmQgW2xpc3QgZGVzdHJveSAkd10KKwkke05TfTo6YnV0dG9uICR3LnVubG9jayBcCisJCS10ZXh0IFttYyAiVW5sb2NrIEluZGV4Il0gXAorCQktY29tbWFuZCAiZGVzdHJveSAkdzsgX2RlbGV0ZV9pbmRleGxvY2siCisJZ3JpZCAkdy5tc2cgLSAkdy52cyAtc3RpY2t5IG5ld3MKKwlncmlkICR3LnVubG9jayAkdy5jb250aW51ZSAtIC1zdGlja3kgc2UgLXBhZHggMiAtcGFkeSAyCisJZ3JpZCBjb2x1bW5jb25maWd1cmUgJHcgMCAtd2VpZ2h0IDEKKwlncmlkIHJvd2NvbmZpZ3VyZSAkdyAwIC13ZWlnaHQgMQorCisJd20gcHJvdG9jb2wgJHcgV01fREVMRVRFX1dJTkRPVyB1cGRhdGUKKwliaW5kICR3LmNvbnRpbnVlIDxWaXNpYmlsaXR5PiAiCisJCWdyYWIgJHcKKwkJZm9jdXMgJVcKKwkiCisJd20gZGVpY29uaWZ5ICR3CisJdGt3YWl0IHdpbmRvdyAkdworCisJJDo6bWFpbl9zdGF0dXMgc3RvcF9hbGwKKwl1bmxvY2tfaW5kZXgKKwlyZXNjYW4gW2NvbmNhdCAkYWZ0ZXIgW2xpc3QgdWlfcmVhZHldXSAwCit9CisKK3Byb2MgdXBkYXRlX2luZGV4aW5mbyB7bXNnIHBhdGhfbGlzdCBhZnRlcn0gewogCWdsb2JhbCB1cGRhdGVfaW5kZXhfY3AKIAogCWlmIHshW2xvY2tfaW5kZXggdXBkYXRlXX0gcmV0dXJuCiAKIAlzZXQgdXBkYXRlX2luZGV4X2NwIDAKLQlzZXQgcGF0aExpc3QgW2xzb3J0ICRwYXRoTGlzdF0KLQlzZXQgdG90YWxDbnQgW2xsZW5ndGggJHBhdGhMaXN0XQotCXNldCBiYXRjaCBbZXhwciB7aW50KCR0b3RhbENudCAqIC4wMSkgKyAxfV0KKwlzZXQgcGF0aF9saXN0IFtsc29ydCAkcGF0aF9saXN0XQorCXNldCB0b3RhbF9jbnQgW2xsZW5ndGggJHBhdGhfbGlzdF0KKwlzZXQgYmF0Y2ggW2V4cHIge2ludCgkdG90YWxfY250ICogLjAxKSArIDF9XQogCWlmIHskYmF0Y2ggPiAyNX0ge3NldCBiYXRjaCAyNX0KIAotCSQ6Om1haW5fc3RhdHVzIHN0YXJ0ICRtc2cgW21jICJmaWxlcyJdCisJc2V0IHN0YXR1c19iYXJfb3BlcmF0aW9uIFskOjptYWluX3N0YXR1cyBzdGFydCAkbXNnIFttYyAiZmlsZXMiXV0KIAlzZXQgZmQgW2dpdF93cml0ZSB1cGRhdGUtaW5kZXggLXogLS1pbmRleC1pbmZvXQogCWZjb25maWd1cmUgJGZkIFwKIAkJLWJsb2NraW5nIDAgXApAQCAtNzgsMjYgKzg1LDI5IEBACiAJZmlsZWV2ZW50ICRmZCB3cml0YWJsZSBbbGlzdCBcCiAJCXdyaXRlX3VwZGF0ZV9pbmRleGluZm8gXAogCQkkZmQgXAotCQkkcGF0aExpc3QgXAotCQkkdG90YWxDbnQgXAorCQkkcGF0aF9saXN0IFwKKwkJJHRvdGFsX2NudCBcCiAJCSRiYXRjaCBcCisJCSRzdGF0dXNfYmFyX29wZXJhdGlvbiBcCiAJCSRhZnRlciBcCiAJCV0KIH0KIAotcHJvYyB3cml0ZV91cGRhdGVfaW5kZXhpbmZvIHtmZCBwYXRoTGlzdCB0b3RhbENudCBiYXRjaCBhZnRlcn0geworcHJvYyB3cml0ZV91cGRhdGVfaW5kZXhpbmZvIHtmZCBwYXRoX2xpc3QgdG90YWxfY250IGJhdGNoIHN0YXR1c19iYXJfb3BlcmF0aW9uIFwKKwlhZnRlcn0gewogCWdsb2JhbCB1cGRhdGVfaW5kZXhfY3AKIAlnbG9iYWwgZmlsZV9zdGF0ZXMgY3VycmVudF9kaWZmX3BhdGgKIAotCWlmIHskdXBkYXRlX2luZGV4X2NwID49ICR0b3RhbENudH0gewotCQlfY2xvc2VfdXBkYXRlaW5kZXggJGZkICRhZnRlcgorCWlmIHskdXBkYXRlX2luZGV4X2NwID49ICR0b3RhbF9jbnR9IHsKKwkJJHN0YXR1c19iYXJfb3BlcmF0aW9uIHN0b3AKKwkJY2xvc2VfYW5kX3VubG9ja19pbmRleCAkZmQgJGFmdGVyCiAJCXJldHVybgogCX0KIAogCWZvciB7c2V0IGkgJGJhdGNofSBcCi0JCXskdXBkYXRlX2luZGV4X2NwIDwgJHRvdGFsQ250ICYmICRpID4gMH0gXAorCQl7JHVwZGF0ZV9pbmRleF9jcCA8ICR0b3RhbF9jbnQgJiYgJGkgPiAwfSBcCiAJCXtpbmNyIGkgLTF9IHsKLQkJc2V0IHBhdGggW2xpbmRleCAkcGF0aExpc3QgJHVwZGF0ZV9pbmRleF9jcF0KKwkJc2V0IHBhdGggW2xpbmRleCAkcGF0aF9saXN0ICR1cGRhdGVfaW5kZXhfY3BdCiAJCWluY3IgdXBkYXRlX2luZGV4X2NwCiAKIAkJc2V0IHMgJGZpbGVfc3RhdGVzKCRwYXRoKQpAQCAtMTE5LDIxICsxMjksMjEgQEAKIAkJZGlzcGxheV9maWxlICRwYXRoICRuZXcKIAl9CiAKLQkkOjptYWluX3N0YXR1cyB1cGRhdGUgJHVwZGF0ZV9pbmRleF9jcCAkdG90YWxDbnQKKwkkc3RhdHVzX2Jhcl9vcGVyYXRpb24gdXBkYXRlICR1cGRhdGVfaW5kZXhfY3AgJHRvdGFsX2NudAogfQogCi1wcm9jIHVwZGF0ZV9pbmRleCB7bXNnIHBhdGhMaXN0IGFmdGVyfSB7Citwcm9jIHVwZGF0ZV9pbmRleCB7bXNnIHBhdGhfbGlzdCBhZnRlcn0gewogCWdsb2JhbCB1cGRhdGVfaW5kZXhfY3AKIAogCWlmIHshW2xvY2tfaW5kZXggdXBkYXRlXX0gcmV0dXJuCiAKIAlzZXQgdXBkYXRlX2luZGV4X2NwIDAKLQlzZXQgcGF0aExpc3QgW2xzb3J0ICRwYXRoTGlzdF0KLQlzZXQgdG90YWxDbnQgW2xsZW5ndGggJHBhdGhMaXN0XQotCXNldCBiYXRjaCBbZXhwciB7aW50KCR0b3RhbENudCAqIC4wMSkgKyAxfV0KKwlzZXQgcGF0aF9saXN0IFtsc29ydCAkcGF0aF9saXN0XQorCXNldCB0b3RhbF9jbnQgW2xsZW5ndGggJHBhdGhfbGlzdF0KKwlzZXQgYmF0Y2ggW2V4cHIge2ludCgkdG90YWxfY250ICogLjAxKSArIDF9XQogCWlmIHskYmF0Y2ggPiAyNX0ge3NldCBiYXRjaCAyNX0KIAotCSQ6Om1haW5fc3RhdHVzIHN0YXJ0ICRtc2cgW21jICJmaWxlcyJdCisJc2V0IHN0YXR1c19iYXJfb3BlcmF0aW9uIFskOjptYWluX3N0YXR1cyBzdGFydCAkbXNnIFttYyAiZmlsZXMiXV0KIAlzZXQgZmQgW2dpdF93cml0ZSB1cGRhdGUtaW5kZXggLS1hZGQgLS1yZW1vdmUgLXogLS1zdGRpbl0KIAlmY29uZmlndXJlICRmZCBcCiAJCS1ibG9ja2luZyAwIFwKQEAgLTE0NCwyNiArMTU0LDI5IEBACiAJZmlsZWV2ZW50ICRmZCB3cml0YWJsZSBbbGlzdCBcCiAJCXdyaXRlX3VwZGF0ZV9pbmRleCBcCiAJCSRmZCBcCi0JCSRwYXRoTGlzdCBcCi0JCSR0b3RhbENudCBcCisJCSRwYXRoX2xpc3QgXAorCQkkdG90YWxfY250IFwKIAkJJGJhdGNoIFwKKwkJJHN0YXR1c19iYXJfb3BlcmF0aW9uIFwKIAkJJGFmdGVyIFwKIAkJXQogfQogCi1wcm9jIHdyaXRlX3VwZGF0ZV9pbmRleCB7ZmQgcGF0aExpc3QgdG90YWxDbnQgYmF0Y2ggYWZ0ZXJ9IHsKK3Byb2Mgd3JpdGVfdXBkYXRlX2luZGV4IHtmZCBwYXRoX2xpc3QgdG90YWxfY250IGJhdGNoIHN0YXR1c19iYXJfb3BlcmF0aW9uIFwKKwlhZnRlcn0gewogCWdsb2JhbCB1cGRhdGVfaW5kZXhfY3AKIAlnbG9iYWwgZmlsZV9zdGF0ZXMgY3VycmVudF9kaWZmX3BhdGgKIAotCWlmIHskdXBkYXRlX2luZGV4X2NwID49ICR0b3RhbENudH0gewotCQlfY2xvc2VfdXBkYXRlaW5kZXggJGZkICRhZnRlcgorCWlmIHskdXBkYXRlX2luZGV4X2NwID49ICR0b3RhbF9jbnR9IHsKKwkJJHN0YXR1c19iYXJfb3BlcmF0aW9uIHN0b3AKKwkJY2xvc2VfYW5kX3VubG9ja19pbmRleCAkZmQgJGFmdGVyCiAJCXJldHVybgogCX0KIAogCWZvciB7c2V0IGkgJGJhdGNofSBcCi0JCXskdXBkYXRlX2luZGV4X2NwIDwgJHRvdGFsQ250ICYmICRpID4gMH0gXAorCQl7JHVwZGF0ZV9pbmRleF9jcCA8ICR0b3RhbF9jbnQgJiYgJGkgPiAwfSBcCiAJCXtpbmNyIGkgLTF9IHsKLQkJc2V0IHBhdGggW2xpbmRleCAkcGF0aExpc3QgJHVwZGF0ZV9pbmRleF9jcF0KKwkJc2V0IHBhdGggW2xpbmRleCAkcGF0aF9saXN0ICR1cGRhdGVfaW5kZXhfY3BdCiAJCWluY3IgdXBkYXRlX2luZGV4X2NwCiAKIAkJc3dpdGNoIC1nbG9iIC0tIFtsaW5kZXggJGZpbGVfc3RhdGVzKCRwYXRoKSAwXSB7CkBAIC0xOTAsMjEgKzIwMywyMSBAQAogCQlkaXNwbGF5X2ZpbGUgJHBhdGggJG5ldwogCX0KIAotCSQ6Om1haW5fc3RhdHVzIHVwZGF0ZSAkdXBkYXRlX2luZGV4X2NwICR0b3RhbENudAorCSRzdGF0dXNfYmFyX29wZXJhdGlvbiB1cGRhdGUgJHVwZGF0ZV9pbmRleF9jcCAkdG90YWxfY250CiB9CiAKLXByb2MgY2hlY2tvdXRfaW5kZXgge21zZyBwYXRoTGlzdCBhZnRlcn0geworcHJvYyBjaGVja291dF9pbmRleCB7bXNnIHBhdGhfbGlzdCBhZnRlciBjYXB0dXJlX2Vycm9yfSB7CiAJZ2xvYmFsIHVwZGF0ZV9pbmRleF9jcAogCiAJaWYgeyFbbG9ja19pbmRleCB1cGRhdGVdfSByZXR1cm4KIAogCXNldCB1cGRhdGVfaW5kZXhfY3AgMAotCXNldCBwYXRoTGlzdCBbbHNvcnQgJHBhdGhMaXN0XQotCXNldCB0b3RhbENudCBbbGxlbmd0aCAkcGF0aExpc3RdCi0Jc2V0IGJhdGNoIFtleHByIHtpbnQoJHRvdGFsQ250ICogLjAxKSArIDF9XQorCXNldCBwYXRoX2xpc3QgW2xzb3J0ICRwYXRoX2xpc3RdCisJc2V0IHRvdGFsX2NudCBbbGxlbmd0aCAkcGF0aF9saXN0XQorCXNldCBiYXRjaCBbZXhwciB7aW50KCR0b3RhbF9jbnQgKiAuMDEpICsgMX1dCiAJaWYgeyRiYXRjaCA+IDI1fSB7c2V0IGJhdGNoIDI1fQogCi0JJDo6bWFpbl9zdGF0dXMgc3RhcnQgJG1zZyBbbWMgImZpbGVzIl0KKwlzZXQgc3RhdHVzX2Jhcl9vcGVyYXRpb24gWyQ6Om1haW5fc3RhdHVzIHN0YXJ0ICRtc2cgW21jICJmaWxlcyJdXQogCXNldCBmZCBbZ2l0X3dyaXRlIGNoZWNrb3V0LWluZGV4IFwKIAkJLS1pbmRleCBcCiAJCS0tcXVpZXQgXApAQCAtMjIxLDI2ICsyMzQsNDUgQEAKIAlmaWxlZXZlbnQgJGZkIHdyaXRhYmxlIFtsaXN0IFwKIAkJd3JpdGVfY2hlY2tvdXRfaW5kZXggXAogCQkkZmQgXAotCQkkcGF0aExpc3QgXAotCQkkdG90YWxDbnQgXAorCQkkcGF0aF9saXN0IFwKKwkJJHRvdGFsX2NudCBcCiAJCSRiYXRjaCBcCisJCSRzdGF0dXNfYmFyX29wZXJhdGlvbiBcCiAJCSRhZnRlciBcCisJCSRjYXB0dXJlX2Vycm9yIFwKIAkJXQogfQogCi1wcm9jIHdyaXRlX2NoZWNrb3V0X2luZGV4IHtmZCBwYXRoTGlzdCB0b3RhbENudCBiYXRjaCBhZnRlcn0geworcHJvYyB3cml0ZV9jaGVja291dF9pbmRleCB7ZmQgcGF0aF9saXN0IHRvdGFsX2NudCBiYXRjaCBzdGF0dXNfYmFyX29wZXJhdGlvbiBcCisJYWZ0ZXIgY2FwdHVyZV9lcnJvcn0gewogCWdsb2JhbCB1cGRhdGVfaW5kZXhfY3AKIAlnbG9iYWwgZmlsZV9zdGF0ZXMgY3VycmVudF9kaWZmX3BhdGgKIAotCWlmIHskdXBkYXRlX2luZGV4X2NwID49ICR0b3RhbENudH0gewotCQlfY2xvc2VfdXBkYXRlaW5kZXggJGZkICRhZnRlcgorCWlmIHskdXBkYXRlX2luZGV4X2NwID49ICR0b3RhbF9jbnR9IHsKKwkJJHN0YXR1c19iYXJfb3BlcmF0aW9uIHN0b3AKKworCQkjIFdlIGRvIG5vdCB1bmxvY2sgdGhlIGluZGV4IGRpcmVjdGx5IGhlcmUgYmVjYXVzZSB0aGlzCisJCSMgb3BlcmF0aW9uIGV4cGVjdHMgdG8gcG90ZW50aWFsbHkgcnVuIGluIHBhcmFsbGVsIHdpdGggZmlsZQorCQkjIGRlbGV0aW9ucyBzY2hlZHVsZWQgYnkgcmV2ZXJ0X2hlbHBlci4gV2UncmUgZG9uZSB3aXRoIHRoZQorCQkjIHVwZGF0ZSBpbmRleCwgc28gd2UgY2xvc2UgaXQsIGJ1dCBhY3R1YWxseSB1bmxvY2tpbmcgdGhlIGluZGV4CisJCSMgYW5kIGRlYWxpbmcgd2l0aCBwb3RlbnRpYWwgZXJyb3JzIGlzIGRlZmVycmVkIHRvIHRoZSBjaG9yZAorCQkjIGJvZHkgdGhhdCBydW5zIHdoZW4gYWxsIGFzeW5jIG9wZXJhdGlvbnMgYXJlIGNvbXBsZXRlZC4KKwkJIworCQkjIChTZWUgYWZ0ZXJfY2hvcmQgaW4gcmV2ZXJ0X2hlbHBlci4pCisKKwkJaWYge1tjYXRjaCB7X2Nsb3NlX3VwZGF0ZWluZGV4ICRmZH0gZXJyXX0geworCQkJdXBsZXZlbCAjMCAkY2FwdHVyZV9lcnJvciBbbGlzdCAkZXJyXQorCQl9CisKKwkJdXBsZXZlbCAjMCAkYWZ0ZXIKKwogCQlyZXR1cm4KIAl9CiAKIAlmb3Ige3NldCBpICRiYXRjaH0gXAotCQl7JHVwZGF0ZV9pbmRleF9jcCA8ICR0b3RhbENudCAmJiAkaSA+IDB9IFwKKwkJeyR1cGRhdGVfaW5kZXhfY3AgPCAkdG90YWxfY250ICYmICRpID4gMH0gXAogCQl7aW5jciBpIC0xfSB7Ci0JCXNldCBwYXRoIFtsaW5kZXggJHBhdGhMaXN0ICR1cGRhdGVfaW5kZXhfY3BdCisJCXNldCBwYXRoIFtsaW5kZXggJHBhdGhfbGlzdCAkdXBkYXRlX2luZGV4X2NwXQogCQlpbmNyIHVwZGF0ZV9pbmRleF9jcAogCQlzd2l0Y2ggLWdsb2IgLS0gW2xpbmRleCAkZmlsZV9zdGF0ZXMoJHBhdGgpIDBdIHsKIAkJVT8ge2NvbnRpbnVlfQpAQCAtMjUzLDcgKzI4NSw3IEBACiAJCX0KIAl9CiAKLQkkOjptYWluX3N0YXR1cyB1cGRhdGUgJHVwZGF0ZV9pbmRleF9jcCAkdG90YWxDbnQKKwkkc3RhdHVzX2Jhcl9vcGVyYXRpb24gdXBkYXRlICR1cGRhdGVfaW5kZXhfY3AgJHRvdGFsX2NudAogfQogCiBwcm9jIHVuc3RhZ2VfaGVscGVyIHt0eHQgcGF0aHN9IHsKQEAgLTI2MSw3ICsyOTMsNyBAQAogCiAJaWYgeyFbbG9ja19pbmRleCBiZWdpbi11cGRhdGVdfSByZXR1cm4KIAotCXNldCBwYXRoTGlzdCBbbGlzdF0KKwlzZXQgcGF0aF9saXN0IFtsaXN0XQogCXNldCBhZnRlciB7fQogCWZvcmVhY2ggcGF0aCAkcGF0aHMgewogCQlzd2l0Y2ggLWdsb2IgLS0gW2xpbmRleCAkZmlsZV9zdGF0ZXMoJHBhdGgpIDBdIHsKQEAgLTI2OSwxOSArMzAxLDE5IEBACiAJCU0/IC0KIAkJVD8gLQogCQlEPyB7Ci0JCQlsYXBwZW5kIHBhdGhMaXN0ICRwYXRoCisJCQlsYXBwZW5kIHBhdGhfbGlzdCAkcGF0aAogCQkJaWYgeyRwYXRoIGVxICRjdXJyZW50X2RpZmZfcGF0aH0gewogCQkJCXNldCBhZnRlciB7cmVzaG93X2RpZmY7fQogCQkJfQogCQl9CiAJCX0KIAl9Ci0JaWYgeyRwYXRoTGlzdCBlcSB7fX0geworCWlmIHskcGF0aF9saXN0IGVxIHt9fSB7CiAJCXVubG9ja19pbmRleAogCX0gZWxzZSB7CiAJCXVwZGF0ZV9pbmRleGluZm8gXAogCQkJJHR4dCBcCi0JCQkkcGF0aExpc3QgXAorCQkJJHBhdGhfbGlzdCBcCiAJCQlbY29uY2F0ICRhZnRlciBbbGlzdCB1aV9yZWFkeV1dCiAJfQogfQpAQCAtMzA1LDcgKzMzNyw3IEBACiAKIAlpZiB7IVtsb2NrX2luZGV4IGJlZ2luLXVwZGF0ZV19IHJldHVybgogCi0Jc2V0IHBhdGhMaXN0IFtsaXN0XQorCXNldCBwYXRoX2xpc3QgW2xpc3RdCiAJc2V0IGFmdGVyIHt9CiAJZm9yZWFjaCBwYXRoICRwYXRocyB7CiAJCXN3aXRjaCAtZ2xvYiAtLSBbbGluZGV4ICRmaWxlX3N0YXRlcygkcGF0aCkgMF0gewpAQCAtMzIxLDE5ICszNTMsMTkgQEAKIAkJP00gLQogCQk/RCAtCiAJCT9UIHsKLQkJCWxhcHBlbmQgcGF0aExpc3QgJHBhdGgKKwkJCWxhcHBlbmQgcGF0aF9saXN0ICRwYXRoCiAJCQlpZiB7JHBhdGggZXEgJGN1cnJlbnRfZGlmZl9wYXRofSB7CiAJCQkJc2V0IGFmdGVyIHtyZXNob3dfZGlmZjt9CiAJCQl9CiAJCX0KIAkJfQogCX0KLQlpZiB7JHBhdGhMaXN0IGVxIHt9fSB7CisJaWYgeyRwYXRoX2xpc3QgZXEge319IHsKIAkJdW5sb2NrX2luZGV4CiAJfSBlbHNlIHsKIAkJdXBkYXRlX2luZGV4IFwKIAkJCSR0eHQgXAotCQkJJHBhdGhMaXN0IFwKKwkJCSRwYXRoX2xpc3QgXAogCQkJW2NvbmNhdCAkYWZ0ZXIge3VpX3N0YXR1cyBbbWMgIlJlYWR5IHRvIGNvbW1pdC4iXX1dCiAJfQogfQpAQCAtMzg4LDY2ICs0MjAsMzAzIEBACiAJYWRkX2hlbHBlciBbbWMgIkFkZGluZyBhbGwgY2hhbmdlZCBmaWxlcyJdICRwYXRocwogfQogCisjIENvcGllZCBmcm9tIFRjbExpYiBwYWNrYWdlICJsYW1iZGEiLgorcHJvYyBsYW1iZGEge2FyZ3VtZW50cyBib2R5IGFyZ3N9IHsKKwlyZXR1cm4gW2xpc3QgOjphcHBseSBbbGlzdCAkYXJndW1lbnRzICRib2R5XSB7Kn0kYXJnc10KK30KKwogcHJvYyByZXZlcnRfaGVscGVyIHt0eHQgcGF0aHN9IHsKIAlnbG9iYWwgZmlsZV9zdGF0ZXMgY3VycmVudF9kaWZmX3BhdGgKIAogCWlmIHshW2xvY2tfaW5kZXggYmVnaW4tdXBkYXRlXX0gcmV0dXJuCiAKLQlzZXQgcGF0aExpc3QgW2xpc3RdCi0Jc2V0IGFmdGVyIHt9CisJIyBDb21tb24gImFmdGVyIiBmdW5jdGlvbmFsaXR5IHRoYXQgd2FpdHMgdW50aWwgbXVsdGlwbGUgYXN5bmNocm9ub3VzCisJIyBvcGVyYXRpb25zIGFyZSBjb21wbGV0ZSAoYnkgd2FpdGluZyBmb3IgdGhlbSB0byBhY3RpdmF0ZSB0aGVpciBub3RlcworCSMgb24gdGhlIGNob3JkKS4KKwkjCisJIyBUaGUgYXN5bmNocm9ub3VzIG9wZXJhdGlvbnMgYXJlIGVhY2ggaW5kaWNhdGVkIGJlbG93IGJ5IGEgY29tbWVudAorCSMgYmVmb3JlIHRoZSBjb2RlIGJsb2NrIHRoYXQgc3RhcnRzIHRoZSBhc3luYyBvcGVyYXRpb24uCisJc2V0IGFmdGVyX2Nob3JkIFtTaW1wbGVDaG9yZDo6bmV3IHsKKwkJaWYge1tzdHJpbmcgdHJpbSAkZXJyXSAhPSAiIn0geworCQkJcmVzY2FuX29uX2Vycm9yICRlcnIKKwkJfSBlbHNlIHsKKwkJCXVubG9ja19pbmRleAorCQkJaWYgeyRzaG91bGRfcmVzaG93X2RpZmZ9IHsgcmVzaG93X2RpZmYgfQorCQkJdWlfcmVhZHkKKwkJfQorCX1dCisKKwkkYWZ0ZXJfY2hvcmQgZXZhbCB7IHNldCBzaG91bGRfcmVzaG93X2RpZmYgMCB9CisKKwkjIFRoaXMgZnVuY3Rpb24gY2FwdHVyZXMgYW4gZXJyb3IgZm9yIHByb2Nlc3Npbmcgd2hlbiBhZnRlcl9jaG9yZCBpcworCSMgY29tcGxldGVkLiAoVGhlIGNob3JkIGlzIGN1cnJpZWQgaW50byB0aGUgbGFtYmRhIGZ1bmN0aW9uLikKKwlzZXQgY2FwdHVyZV9lcnJvciBbbGFtYmRhIFwKKwkJe2Nob3JkIGVycm9yfSBcCisJCXsgJGNob3JkIGV2YWwgW2xpc3Qgc2V0IGVyciAkZXJyb3JdIH0gXAorCQkkYWZ0ZXJfY2hvcmRdCisKKwkjIFdlIGRvbid0IGtub3cgaG93IG1hbnkgbm90ZXMgd2UncmUgZ29pbmcgdG8gY3JlYXRlIChpdCdzIGR5bmFtaWMgYmFzZWQKKwkjIG9uIGNvbmRpdGlvbmFsIHBhdGhzIGJlbG93KSwgc28gY3JlYXRlIGEgY29tbW9uIG5vdGUgdGhhdCB3aWxsIGRlbGF5CisJIyB0aGUgY2hvcmQncyBjb21wbGV0aW9uIHVudGlsIHdlIGFjdGl2YXRlIGl0LCBhbmQgdGhlbiBhY3RpdmF0ZSBpdAorCSMgYWZ0ZXIgYWxsIHRoZSBvdGhlciBub3RlcyBoYXZlIGJlZW4gY3JlYXRlZC4KKwlzZXQgYWZ0ZXJfY29tbW9uX25vdGUgWyRhZnRlcl9jaG9yZCBhZGRfbm90ZV0KKworCXNldCBwYXRoX2xpc3QgW2xpc3RdCisJc2V0IHVudHJhY2tlZF9saXN0IFtsaXN0XQorCiAJZm9yZWFjaCBwYXRoICRwYXRocyB7CiAJCXN3aXRjaCAtZ2xvYiAtLSBbbGluZGV4ICRmaWxlX3N0YXRlcygkcGF0aCkgMF0gewogCQlVPyB7Y29udGludWV9CisJCT9PIHsKKwkJCWxhcHBlbmQgdW50cmFja2VkX2xpc3QgJHBhdGgKKwkJfQogCQk/TSAtCiAJCT9UIC0KIAkJP0QgewotCQkJbGFwcGVuZCBwYXRoTGlzdCAkcGF0aAorCQkJbGFwcGVuZCBwYXRoX2xpc3QgJHBhdGgKIAkJCWlmIHskcGF0aCBlcSAkY3VycmVudF9kaWZmX3BhdGh9IHsKLQkJCQlzZXQgYWZ0ZXIge3Jlc2hvd19kaWZmO30KKwkJCQkkYWZ0ZXJfY2hvcmQgZXZhbCB7IHNldCBzaG91bGRfcmVzaG93X2RpZmYgMSB9CiAJCQl9CiAJCX0KIAkJfQogCX0KIAorCXNldCBwYXRoX2NudCBbbGxlbmd0aCAkcGF0aF9saXN0XQorCXNldCB1bnRyYWNrZWRfY250IFtsbGVuZ3RoICR1bnRyYWNrZWRfbGlzdF0KIAotCSMgU3BsaXQgcXVlc3Rpb24gYmV0d2VlbiBzaW5ndWxhciBhbmQgcGx1cmFsIGNhc2VzLCBiZWNhdXNlCi0JIyBzdWNoIGRpc3RpbmN0aW9uIGlzIG5lZWRlZCBpbiBzb21lIGxhbmd1YWdlcy4gUHJldmlvdXNseSwgdGhlCi0JIyBjb2RlIHVzZWQgIlJldmVydCBjaGFuZ2VzIGluIiBmb3IgYm90aCwgYnV0IHRoYXQgY2FuJ3Qgd29yawotCSMgaW4gbGFuZ3VhZ2VzIHdoZXJlICdpbicgbXVzdCBiZSBjb21iaW5lZCB3aXRoIHdvcmQgZnJvbQotCSMgcmVzdCBvZiBzdHJpbmcgKGluIGRpZmZlcmVudCB3YXkgZm9yIGJvdGggY2FzZXMgb2YgY291cnNlKS4KLQkjCi0JIyBGSVhNRTogVW5mb3J0dW5hdGVseSwgZXZlbiB0aGF0IGlzbid0IGVub3VnaCBpbiBzb21lIGxhbmd1YWdlcwotCSMgYXMgdGhleSBoYXZlIHF1aXRlIGNvbXBsZXggcGx1cmFsLWZvcm0gcnVsZXMuIFVuZm9ydHVuYXRlbHksCi0JIyBtc2djYXQgZG9lc24ndCBzZWVtIHRvIHN1cHBvcnQgdGhhdCBraW5kIG9mIHN0cmluZyB0cmFuc2xhdGlvbi4KLQkjCi0Jc2V0IG4gW2xsZW5ndGggJHBhdGhMaXN0XQotCWlmIHskbiA9PSAwfSB7Ci0JCXVubG9ja19pbmRleAotCQlyZXR1cm4KLQl9IGVsc2VpZiB7JG4gPT0gMX0gewotCQlzZXQgcXVlcnkgW21jICJSZXZlcnQgY2hhbmdlcyBpbiBmaWxlICVzPyIgW3Nob3J0X3BhdGggW2xpbmRleCAkcGF0aExpc3RdXV0KLQl9IGVsc2UgewotCQlzZXQgcXVlcnkgW21jICJSZXZlcnQgY2hhbmdlcyBpbiB0aGVzZSAlaSBmaWxlcz8iICRuXQotCX0KKwkjIEFzeW5jaHJvbm91cyBvcGVyYXRpb246IHJldmVydCBjaGFuZ2VzIGJ5IGNoZWNraW5nIHRoZW0gb3V0IGFmcmVzaAorCSMgZnJvbSB0aGUgaW5kZXguCisJaWYgeyRwYXRoX2NudCA+IDB9IHsKKwkJIyBTcGxpdCBxdWVzdGlvbiBiZXR3ZWVuIHNpbmd1bGFyIGFuZCBwbHVyYWwgY2FzZXMsIGJlY2F1c2UKKwkJIyBzdWNoIGRpc3RpbmN0aW9uIGlzIG5lZWRlZCBpbiBzb21lIGxhbmd1YWdlcy4gUHJldmlvdXNseSwgdGhlCisJCSMgY29kZSB1c2VkICJSZXZlcnQgY2hhbmdlcyBpbiIgZm9yIGJvdGgsIGJ1dCB0aGF0IGNhbid0IHdvcmsKKwkJIyBpbiBsYW5ndWFnZXMgd2hlcmUgJ2luJyBtdXN0IGJlIGNvbWJpbmVkIHdpdGggd29yZCBmcm9tCisJCSMgcmVzdCBvZiBzdHJpbmcgKGluIGRpZmZlcmVudCB3YXkgZm9yIGJvdGggY2FzZXMgb2YgY291cnNlKS4KKwkJIworCQkjIEZJWE1FOiBVbmZvcnR1bmF0ZWx5LCBldmVuIHRoYXQgaXNuJ3QgZW5vdWdoIGluIHNvbWUgbGFuZ3VhZ2VzCisJCSMgYXMgdGhleSBoYXZlIHF1aXRlIGNvbXBsZXggcGx1cmFsLWZvcm0gcnVsZXMuIFVuZm9ydHVuYXRlbHksCisJCSMgbXNnY2F0IGRvZXNuJ3Qgc2VlbSB0byBzdXBwb3J0IHRoYXQga2luZCBvZiBzdHJpbmcKKwkJIyB0cmFuc2xhdGlvbi4KKwkJIworCQlpZiB7JHBhdGhfY250ID09IDF9IHsKKwkJCXNldCBxdWVyeSBbbWMgXAorCQkJCSJSZXZlcnQgY2hhbmdlcyBpbiBmaWxlICVzPyIgXAorCQkJCVtzaG9ydF9wYXRoIFtsaW5kZXggJHBhdGhfbGlzdF1dIFwKKwkJCQldCisJCX0gZWxzZSB7CisJCQlzZXQgcXVlcnkgW21jIFwKKwkJCQkiUmV2ZXJ0IGNoYW5nZXMgaW4gdGhlc2UgJWkgZmlsZXM/IiBcCisJCQkJJHBhdGhfY250XQorCQl9CiAKLQlzZXQgcmVwbHkgW3RrX2RpYWxvZyBcCi0JCS5jb25maXJtX3JldmVydCBcCi0JCSJbYXBwbmFtZV0gKFtyZXBvbmFtZV0pIiBcCi0JCSIkcXVlcnkKKwkJc2V0IHJlcGx5IFt0a19kaWFsb2cgXAorCQkJLmNvbmZpcm1fcmV2ZXJ0IFwKKwkJCSJbYXBwbmFtZV0gKFtyZXBvbmFtZV0pIiBcCisJCQkiJHF1ZXJ5CiAKIFttYyAiQW55IHVuc3RhZ2VkIGNoYW5nZXMgd2lsbCBiZSBwZXJtYW5lbnRseSBsb3N0IGJ5IHRoZSByZXZlcnQuIl0iIFwKLQkJcXVlc3Rpb24gXAotCQkxIFwKLQkJW21jICJEbyBOb3RoaW5nIl0gXAotCQlbbWMgIlJldmVydCBDaGFuZ2VzIl0gXAotCQldCi0JaWYgeyRyZXBseSA9PSAxfSB7Ci0JCWNoZWNrb3V0X2luZGV4IFwKLQkJCSR0eHQgXAotCQkJJHBhdGhMaXN0IFwKLQkJCVtjb25jYXQgJGFmdGVyIFtsaXN0IHVpX3JlYWR5XV0KKwkJCXF1ZXN0aW9uIFwKKwkJCTEgXAorCQkJW21jICJEbyBOb3RoaW5nIl0gXAorCQkJW21jICJSZXZlcnQgQ2hhbmdlcyJdIFwKKwkJCV0KKworCQlpZiB7JHJlcGx5ID09IDF9IHsKKwkJCXNldCBub3RlIFskYWZ0ZXJfY2hvcmQgYWRkX25vdGVdCisJCQljaGVja291dF9pbmRleCBcCisJCQkJJHR4dCBcCisJCQkJJHBhdGhfbGlzdCBcCisJCQkJW2xpc3QgJG5vdGUgYWN0aXZhdGVdIFwKKwkJCQkkY2FwdHVyZV9lcnJvcgorCQl9CisJfQorCisJIyBBc3luY2hyb25vdXMgb3BlcmF0aW9uOiBEZWxldGlvbiBvZiB1bnRyYWNrZWQgZmlsZXMuCisJaWYgeyR1bnRyYWNrZWRfY250ID4gMH0geworCQkjIFNwbGl0IHF1ZXN0aW9uIGJldHdlZW4gc2luZ3VsYXIgYW5kIHBsdXJhbCBjYXNlcywgYmVjYXVzZQorCQkjIHN1Y2ggZGlzdGluY3Rpb24gaXMgbmVlZGVkIGluIHNvbWUgbGFuZ3VhZ2VzLgorCQkjCisJCSMgRklYTUU6IFVuZm9ydHVuYXRlbHksIGV2ZW4gdGhhdCBpc24ndCBlbm91Z2ggaW4gc29tZSBsYW5ndWFnZXMKKwkJIyBhcyB0aGV5IGhhdmUgcXVpdGUgY29tcGxleCBwbHVyYWwtZm9ybSBydWxlcy4gVW5mb3J0dW5hdGVseSwKKwkJIyBtc2djYXQgZG9lc24ndCBzZWVtIHRvIHN1cHBvcnQgdGhhdCBraW5kIG9mIHN0cmluZworCQkjIHRyYW5zbGF0aW9uLgorCQkjCisJCWlmIHskdW50cmFja2VkX2NudCA9PSAxfSB7CisJCQlzZXQgcXVlcnkgW21jIFwKKwkJCQkiRGVsZXRlIHVudHJhY2tlZCBmaWxlICVzPyIgXAorCQkJCVtzaG9ydF9wYXRoIFtsaW5kZXggJHVudHJhY2tlZF9saXN0XV0gXAorCQkJCV0KKwkJfSBlbHNlIHsKKwkJCXNldCBxdWVyeSBbbWMgXAorCQkJCSJEZWxldGUgdGhlc2UgJWkgdW50cmFja2VkIGZpbGVzPyIgXAorCQkJCSR1bnRyYWNrZWRfY250IFwKKwkJCQldCisJCX0KKworCQlzZXQgcmVwbHkgW3RrX2RpYWxvZyBcCisJCQkuY29uZmlybV9yZXZlcnQgXAorCQkJIlthcHBuYW1lXSAoW3JlcG9uYW1lXSkiIFwKKwkJCSIkcXVlcnkKKworW21jICJGaWxlcyB3aWxsIGJlIHBlcm1hbmVudGx5IGRlbGV0ZWQuIl0iIFwKKwkJCXF1ZXN0aW9uIFwKKwkJCTEgXAorCQkJW21jICJEbyBOb3RoaW5nIl0gXAorCQkJW21jICJEZWxldGUgRmlsZXMiXSBcCisJCQldCisKKwkJaWYgeyRyZXBseSA9PSAxfSB7CisJCQkkYWZ0ZXJfY2hvcmQgZXZhbCB7IHNldCBzaG91bGRfcmVzaG93X2RpZmYgMSB9CisKKwkJCXNldCBub3RlIFskYWZ0ZXJfY2hvcmQgYWRkX25vdGVdCisJCQlkZWxldGVfZmlsZXMgJHVudHJhY2tlZF9saXN0IFtsaXN0ICRub3RlIGFjdGl2YXRlXQorCQl9CisJfQorCisJIyBBY3RpdmF0ZSB0aGUgY29tbW9uIG5vdGUuIElmIG5vIG90aGVyIG5vdGVzIHdlcmUgY3JlYXRlZCwgdGhpcworCSMgY29tcGxldGVzIHRoZSBjaG9yZC4gSWYgb3RoZXIgbm90ZXMgd2VyZSBjcmVhdGVkLCB0aGVuIHRoaXMgY29tbW9uCisJIyBub3RlIHByZXZlbnRzIGEgcmFjZSBjb25kaXRpb24gd2hlcmUgdGhlIGNob3JkIG1pZ2h0IGNvbXBsZXRlIGVhcmx5LgorCSRhZnRlcl9jb21tb25fbm90ZSBhY3RpdmF0ZQorfQorCisjIERlbGV0ZSBhbGwgb2YgdGhlIHNwZWNpZmllZCBmaWxlcywgcGVyZm9ybWluZyBkZWxldGlvbiBpbiBiYXRjaGVzIHRvIGFsbG93IHRoZQorIyBVSSB0byByZW1haW4gcmVzcG9uc2l2ZSBhbmQgdXBkYXRlZC4KK3Byb2MgZGVsZXRlX2ZpbGVzIHtwYXRoX2xpc3QgYWZ0ZXJ9IHsKKwkjIEVuYWJsZSBwcm9ncmVzcyBiYXIgc3RhdHVzIHVwZGF0ZXMKKwlzZXQgc3RhdHVzX2Jhcl9vcGVyYXRpb24gWyQ6Om1haW5fc3RhdHVzIFwKKwkJc3RhcnQgXAorCQlbbWMgIkRlbGV0aW5nIl0gXAorCQlbbWMgImZpbGVzIl1dCisKKwlzZXQgcGF0aF9pbmRleCAwCisJc2V0IGRlbGV0aW9uX2Vycm9ycyBbbGlzdF0KKwlzZXQgYmF0Y2hfc2l6ZSA1MAorCisJZGVsZXRlX2hlbHBlciBcCisJCSRwYXRoX2xpc3QgXAorCQkkcGF0aF9pbmRleCBcCisJCSRkZWxldGlvbl9lcnJvcnMgXAorCQkkYmF0Y2hfc2l6ZSBcCisJCSRzdGF0dXNfYmFyX29wZXJhdGlvbiBcCisJCSRhZnRlcgorfQorCisjIEhlbHBlciBmdW5jdGlvbiB0byBkZWxldGUgYSBsaXN0IG9mIGZpbGVzIGluIGJhdGNoZXMuIEVhY2ggY2FsbCBkZWxldGVzIG9uZQorIyBiYXRjaCBvZiBmaWxlcywgYW5kIHRoZW4gc2NoZWR1bGVzIGEgY2FsbCBmb3IgdGhlIG5leHQgYmF0Y2ggYWZ0ZXIgYW55IFVJCisjIG1lc3NhZ2VzIGhhdmUgYmVlbiBwcm9jZXNzZWQuCitwcm9jIGRlbGV0ZV9oZWxwZXIge3BhdGhfbGlzdCBwYXRoX2luZGV4IGRlbGV0aW9uX2Vycm9ycyBiYXRjaF9zaXplIFwKKwlzdGF0dXNfYmFyX29wZXJhdGlvbiBhZnRlcn0geworCWdsb2JhbCBmaWxlX3N0YXRlcworCisJc2V0IHBhdGhfY250IFtsbGVuZ3RoICRwYXRoX2xpc3RdCisKKwlzZXQgYmF0Y2hfcmVtYWluaW5nICRiYXRjaF9zaXplCisKKwl3aGlsZSB7JGJhdGNoX3JlbWFpbmluZyA+IDB9IHsKKwkJaWYgeyRwYXRoX2luZGV4ID49ICRwYXRoX2NudH0geyBicmVhayB9CisKKwkJc2V0IHBhdGggW2xpbmRleCAkcGF0aF9saXN0ICRwYXRoX2luZGV4XQorCisJCXNldCBkZWxldGlvbl9mYWlsZWQgW2NhdGNoIHtmaWxlIGRlbGV0ZSAtLSAkcGF0aH0gZGVsZXRpb25fZXJyb3JdCisKKwkJaWYgeyRkZWxldGlvbl9mYWlsZWR9IHsKKwkJCWxhcHBlbmQgZGVsZXRpb25fZXJyb3JzIFtsaXN0ICIkZGVsZXRpb25fZXJyb3IiXQorCQl9IGVsc2UgeworCQkJcmVtb3ZlX2VtcHR5X2RpcmVjdG9yaWVzIFtmaWxlIGRpcm5hbWUgJHBhdGhdCisKKwkJCSMgRG9uJ3QgYXNzdW1lIHRoZSBkZWxldGlvbiB3b3JrZWQuIFJlbW92ZSB0aGUgZmlsZSBmcm9tCisJCQkjIHRoZSBVSSwgYnV0IG9ubHkgaWYgaXQgbm8gbG9uZ2VyIGV4aXN0cy4KKwkJCWlmIHshW3BhdGhfZXhpc3RzICRwYXRoXX0geworCQkJCXVuc2V0IGZpbGVfc3RhdGVzKCRwYXRoKQorCQkJCWRpc3BsYXlfZmlsZSAkcGF0aCBfXworCQkJfQorCQl9CisKKwkJaW5jciBwYXRoX2luZGV4IDEKKwkJaW5jciBiYXRjaF9yZW1haW5pbmcgLTEKKwl9CisKKwkjIFVwZGF0ZSB0aGUgcHJvZ3Jlc3MgYmFyIHRvIGluZGljYXRlIHRoYXQgdGhpcyBiYXRjaCBoYXMgYmVlbgorCSMgY29tcGxldGVkLiBUaGUgdXBkYXRlIHdpbGwgYmUgdmlzaWJsZSB3aGVuIHRoaXMgcHJvY2VkdXJlIHJldHVybnMKKwkjIGFuZCBhbGxvd3MgdGhlIFVJIHRocmVhZCB0byBwcm9jZXNzIG1lc3NhZ2VzLgorCSRzdGF0dXNfYmFyX29wZXJhdGlvbiB1cGRhdGUgJHBhdGhfaW5kZXggJHBhdGhfY250CisKKwlpZiB7JHBhdGhfaW5kZXggPCAkcGF0aF9jbnR9IHsKKwkJIyBUaGUgVGNsZXIncyBXaWtpIGxpc3RzIHRoaXMgYXMgdGhlIGJlc3QgcHJhY3RpY2UgZm9yIGtlZXBpbmcKKwkJIyBhIFVJIGFjdGl2ZSBhbmQgcHJvY2Vzc2luZyBtZXNzYWdlcyBkdXJpbmcgYSBsb25nLXJ1bm5pbmcKKwkJIyBvcGVyYXRpb24uCisKKwkJYWZ0ZXIgaWRsZSBbbGlzdCBhZnRlciAwIFtsaXN0IFwKKwkJCWRlbGV0ZV9oZWxwZXIgXAorCQkJJHBhdGhfbGlzdCBcCisJCQkkcGF0aF9pbmRleCBcCisJCQkkZGVsZXRpb25fZXJyb3JzIFwKKwkJCSRiYXRjaF9zaXplIFwKKwkJCSRzdGF0dXNfYmFyX29wZXJhdGlvbiBcCisJCQkkYWZ0ZXIKKwkJCV1dCiAJfSBlbHNlIHsKLQkJdW5sb2NrX2luZGV4CisJCSMgRmluaXNoIHRoZSBzdGF0dXMgYmFyIG9wZXJhdGlvbi4KKwkJJHN0YXR1c19iYXJfb3BlcmF0aW9uIHN0b3AKKworCQkjIFJlcG9ydCBlcnJvciwgaWYgYW55LCBiYXNlZCBvbiBob3cgbWFueSBkZWxldGlvbnMgZmFpbGVkLgorCQlzZXQgZGVsZXRpb25fZXJyb3JfY250IFtsbGVuZ3RoICRkZWxldGlvbl9lcnJvcnNdCisKKwkJaWYgeygkZGVsZXRpb25fZXJyb3JfY250ID4gMCkKKwkJICYmICgkZGVsZXRpb25fZXJyb3JfY250IDw9IFtNQVhfVkVSQk9TRV9GSUxFU19JTl9ERUxFVElPTl9FUlJPUl0pfSB7CisJCQlzZXQgZXJyb3JfdGV4dCBbbWMgIkVuY291bnRlcmVkIGVycm9ycyBkZWxldGluZyBmaWxlczpcbiJdCisKKwkJCWZvcmVhY2ggZGVsZXRpb25fZXJyb3IgJGRlbGV0aW9uX2Vycm9ycyB7CisJCQkJYXBwZW5kIGVycm9yX3RleHQgIiogW2xpbmRleCAkZGVsZXRpb25fZXJyb3IgMF1cbiIKKwkJCX0KKworCQkJZXJyb3JfcG9wdXAgJGVycm9yX3RleHQKKwkJfSBlbHNlaWYgeyRkZWxldGlvbl9lcnJvcl9jbnQgPT0gJHBhdGhfY250fSB7CisJCQllcnJvcl9wb3B1cCBbbWMgXAorCQkJCSJOb25lIG9mIHRoZSAlZCBzZWxlY3RlZCBmaWxlcyBjb3VsZCBiZSBkZWxldGVkLiIgXAorCQkJCSRwYXRoX2NudCBcCisJCQkJXQorCQl9IGVsc2VpZiB7JGRlbGV0aW9uX2Vycm9yX2NudCA+IDF9IHsKKwkJCWVycm9yX3BvcHVwIFttYyBcCisJCQkJIiVkIG9mIHRoZSAlZCBzZWxlY3RlZCBmaWxlcyBjb3VsZCBub3QgYmUgZGVsZXRlZC4iIFwKKwkJCQkkZGVsZXRpb25fZXJyb3JfY250IFwKKwkJCQkkcGF0aF9jbnQgXAorCQkJCV0KKwkJfQorCisJCXVwbGV2ZWwgIzAgJGFmdGVyCisJfQorfQorCitwcm9jIE1BWF9WRVJCT1NFX0ZJTEVTX0lOX0RFTEVUSU9OX0VSUk9SIHt9IHsgcmV0dXJuIDEwOyB9CisKKyMgVGhpcyBmdW5jdGlvbiBpcyBmcm9tIHRoZSBUQ0wgZG9jdW1lbnRhdGlvbjoKKyMKKyMgICBodHRwczovL3dpa2kudGNsLWxhbmcub3JnL3BhZ2UvZmlsZStleGlzdHMKKyMKKyMgW2ZpbGUgZXhpc3RzXSByZXR1cm5zIGZhbHNlIGlmIHRoZSBwYXRoIGRvZXMgZXhpc3QgYnV0IGlzIGEgc3ltbGluayB0byBhIHBhdGgKKyMgdGhhdCBkb2Vzbid0IGV4aXN0LiBUaGlzIHByb2MgcmV0dXJucyB0cnVlIGlmIHRoZSBwYXRoIGV4aXN0cywgcmVnYXJkbGVzcyBvZgorIyB3aGV0aGVyIGl0IGlzIGEgc3ltbGluayBhbmQgd2hldGhlciBpdCBpcyBicm9rZW4uCitwcm9jIHBhdGhfZXhpc3RzIHtuYW1lfSB7CisJZXhwciB7IVtjYXRjaCB7ZmlsZSBsc3RhdCAkbmFtZSBmaW5mb31dfQorfQorCisjIFJlbW92ZSBhcyBtYW55IGVtcHR5IGRpcmVjdG9yaWVzIGFzIHdlIGNhbiBzdGFydGluZyBhdCB0aGUgc3BlY2lmaWVkIHBhdGgsCisjIHdhbGtpbmcgdXAgdGhlIGRpcmVjdG9yeSB0cmVlLiBJZiB3ZSBlbmNvdW50ZXIgYSBkaXJlY3RvcnkgdGhhdCBpcyBub3QKKyMgZW1wdHksIG9yIGlmIGEgZGlyZWN0b3J5IGRlbGV0aW9uIGZhaWxzLCB0aGVuIHdlIHN0b3AgdGhlIG9wZXJhdGlvbiBhbmQKKyMgcmV0dXJuIHRvIHRoZSBjYWxsZXIuIEV2ZW4gaWYgdGhpcyBwcm9jZWR1cmUgZmFpbHMgdG8gZGVsZXRlIGFueQorIyBkaXJlY3RvcmllcyBhdCBhbGwsIGl0IGRvZXMgbm90IHJlcG9ydCBmYWlsdXJlLgorcHJvYyByZW1vdmVfZW1wdHlfZGlyZWN0b3JpZXMge2RpcmVjdG9yeV9wYXRofSB7CisJc2V0IHBhcmVudF9wYXRoIFtmaWxlIGRpcm5hbWUgJGRpcmVjdG9yeV9wYXRoXQorCisJd2hpbGUgeyRwYXJlbnRfcGF0aCAhPSAkZGlyZWN0b3J5X3BhdGh9IHsKKwkJc2V0IGNvbnRlbnRzIFtnbG9iIC1ub2NvbXBsYWluIC1kaXIgJGRpcmVjdG9yeV9wYXRoICpdCisKKwkJaWYge1tsbGVuZ3RoICRjb250ZW50c10gPiAwfSB7IGJyZWFrIH0KKwkJaWYge1tjYXRjaCB7ZmlsZSBkZWxldGUgLS0gJGRpcmVjdG9yeV9wYXRofV19IHsgYnJlYWsgfQorCisJCXNldCBkaXJlY3RvcnlfcGF0aCAkcGFyZW50X3BhdGgKKwkJc2V0IHBhcmVudF9wYXRoIFtmaWxlIGRpcm5hbWUgJGRpcmVjdG9yeV9wYXRoXQogCX0KIH0KIApAQCAtNDY2LDE5ICs3MzUsMTkgQEAKIH0KIAogcHJvYyBkb19zZWxlY3RfY29tbWl0X3R5cGUge30gewotCWdsb2JhbCBjb21taXRfdHlwZSBzZWxlY3RlZF9jb21taXRfdHlwZQorCWdsb2JhbCBjb21taXRfdHlwZSBjb21taXRfdHlwZV9pc19hbWVuZAogCi0JaWYgeyRzZWxlY3RlZF9jb21taXRfdHlwZSBlcSB7bmV3fQorCWlmIHskY29tbWl0X3R5cGVfaXNfYW1lbmQgPT0gMAogCQkmJiBbc3RyaW5nIG1hdGNoIGFtZW5kKiAkY29tbWl0X3R5cGVdfSB7CiAJCWNyZWF0ZV9uZXdfY29tbWl0Ci0JfSBlbHNlaWYgeyRzZWxlY3RlZF9jb21taXRfdHlwZSBlcSB7YW1lbmR9CisJfSBlbHNlaWYgeyRjb21taXRfdHlwZV9pc19hbWVuZCA9PSAxCiAJCSYmICFbc3RyaW5nIG1hdGNoIGFtZW5kKiAkY29tbWl0X3R5cGVdfSB7CiAJCWxvYWRfbGFzdF9jb21taXQKIAogCQkjIFRoZSBhbWVuZCByZXF1ZXN0IHdhcyByZWplY3RlZC4uLgogCQkjCiAJCWlmIHshW3N0cmluZyBtYXRjaCBhbWVuZCogJGNvbW1pdF90eXBlXX0gewotCQkJc2V0IHNlbGVjdGVkX2NvbW1pdF90eXBlIG5ldworCQkJc2V0IGNvbW1pdF90eXBlX2lzX2FtZW5kIDAKIAkJfQogCX0KIH0KZGlmZiAtLWdpdCBhL2dpdC1ndWkvbGliL21lcmdlLnRjbCBiL2dpdC1ndWkvbGliL21lcmdlLnRjbAppbmRleCA5ZjI1M2RiLi42NjQ4MDNjIDEwMDY0NAotLS0gYS9naXQtZ3VpL2xpYi9tZXJnZS50Y2wKKysrIGIvZ2l0LWd1aS9saWIvbWVyZ2UudGNsCkBAIC0yNDEsMjMgKzI0MSwyNyBAQAogCWlmIHtbYXNrX3BvcHVwICRvcF9xdWVzdGlvbl0gZXEge3llc319IHsKIAkJc2V0IGZkIFtnaXRfcmVhZCAtLXN0ZGVyciByZWFkLXRyZWUgLS1yZXNldCAtdSAtdiBIRUFEXQogCQlmY29uZmlndXJlICRmZCAtYmxvY2tpbmcgMCAtdHJhbnNsYXRpb24gYmluYXJ5Ci0JCWZpbGVldmVudCAkZmQgcmVhZGFibGUgW25hbWVzcGFjZSBjb2RlIFtsaXN0IF9yZXNldF93YWl0ICRmZF1dCi0JCSQ6Om1haW5fc3RhdHVzIHN0YXJ0IFttYyAiQWJvcnRpbmciXSBbbWMgImZpbGVzIHJlc2V0Il0KKwkJc2V0IHN0YXR1c19iYXJfb3BlcmF0aW9uIFskOjptYWluX3N0YXR1cyBcCisJCQlzdGFydCBcCisJCQlbbWMgIkFib3J0aW5nIl0gXAorCQkJW21jICJmaWxlcyByZXNldCJdXQorCQlmaWxlZXZlbnQgJGZkIHJlYWRhYmxlIFtuYW1lc3BhY2UgY29kZSBbbGlzdCBcCisJCQlfcmVzZXRfd2FpdCAkZmQgJHN0YXR1c19iYXJfb3BlcmF0aW9uXV0KIAl9IGVsc2UgewogCQl1bmxvY2tfaW5kZXgKIAl9CiB9CiAKLXByb2MgX3Jlc2V0X3dhaXQge2ZkfSB7Citwcm9jIF9yZXNldF93YWl0IHtmZCBzdGF0dXNfYmFyX29wZXJhdGlvbn0gewogCWdsb2JhbCB1aV9jb21tCiAKLQkkOjptYWluX3N0YXR1cyB1cGRhdGVfbWV0ZXIgW3JlYWQgJGZkXQorCSRzdGF0dXNfYmFyX29wZXJhdGlvbiB1cGRhdGVfbWV0ZXIgW3JlYWQgJGZkXQogCiAJZmNvbmZpZ3VyZSAkZmQgLWJsb2NraW5nIDEKIAlpZiB7W2VvZiAkZmRdfSB7CiAJCXNldCBmYWlsIFtjYXRjaCB7Y2xvc2UgJGZkfSBlcnJdCi0JCSQ6Om1haW5fc3RhdHVzIHN0b3AKIAkJdW5sb2NrX2luZGV4CisJCSRzdGF0dXNfYmFyX29wZXJhdGlvbiBzdG9wCiAKIAkJJHVpX2NvbW0gZGVsZXRlIDAuMCBlbmQKIAkJJHVpX2NvbW0gZWRpdCBtb2RpZmllZCBmYWxzZQpkaWZmIC0tZ2l0IGEvZ2l0LWd1aS9saWIvc3RhdHVzX2Jhci50Y2wgYi9naXQtZ3VpL2xpYi9zdGF0dXNfYmFyLnRjbAppbmRleCAwMjExMWExLi5kMzJiMTQxIDEwMDY0NAotLS0gYS9naXQtZ3VpL2xpYi9zdGF0dXNfYmFyLnRjbAorKysgYi9naXQtZ3VpL2xpYi9zdGF0dXNfYmFyLnRjbApAQCAtMSwxNiArMSw0MiBAQAogIyBnaXQtZ3VpIHN0YXR1cyBiYXIgbWVnYS13aWRnZXQKICMgQ29weXJpZ2h0IChDKSAyMDA3IFNoYXduIFBlYXJjZQogCisjIFRoZSBzdGF0dXNfYmFyIGNsYXNzIG1hbmFnZXMgdGhlIGVudGlyZSBzdGF0dXMgYmFyLiBJdCBpcyBwb3NzaWJsZSBmb3IKKyMgbXVsdGlwbGUgb3ZlcmxhcHBpbmcgYXN5bmNocm9ub3VzIG9wZXJhdGlvbnMgdG8gd2FudCB0byBkaXNwbGF5IHN0YXR1cworIyBzaW11bHRhbmVvdXNseS4gRWFjaCBvbmUgcmVjZWl2ZXMgYSBzdGF0dXNfYmFyX29wZXJhdGlvbiB3aGVuIGl0IGNhbGxzIHRoZQorIyBzdGFydCBtZXRob2QsIGFuZCB0aGUgc3RhdHVzIGJhciBjb21iaW5lcyBhbGwgYWN0aXZlIG9wZXJhdGlvbnMgaW50byB0aGUKKyMgbGluZSBvZiB0ZXh0IGl0IGRpc3BsYXlzLiBNb3N0IG9mIHRoZSB0aW1lLCB0aGVyZSB3aWxsIGJlIGF0IG1vc3Qgb25lCisjIG9uZ29pbmcgb3BlcmF0aW9uLgorIworIyBOb3RlIHRoYXQgdGhlIGVudGlyZSBzdGF0dXMgYmFyIGNhbiBiZSBlaXRoZXIgaW4gc2luZ2xlLWxpbmUgb3IgdHdvLWxpbmUKKyMgbW9kZSwgZGVwZW5kaW5nIG9uIHRoZSBjb25zdHJ1Y3Rvci4gTXVsdGlwbGUgYWN0aXZlIG9wZXJhdGlvbnMgYXJlIG9ubHkKKyMgc3VwcG9ydGVkIGZvciBzaW5nbGUtbGluZSBzdGF0dXMgYmFycy4KKwogY2xhc3Mgc3RhdHVzX2JhciB7CiAKK2ZpZWxkIGFsbG93X211bHRpcGxlIDsgIyBjb25maWd1cmVkIGF0IGNvbnN0cnVjdGlvbgorCiBmaWVsZCB3ICAgICAgICAgOyAjIG91ciBvd24gd2luZG93IHBhdGgKIGZpZWxkIHdfbCAgICAgICA7ICMgdGV4dCB3aWRnZXQgd2UgZHJhdyBtZXNzYWdlcyBpbnRvCiBmaWVsZCB3X2MgICAgICAgOyAjIGNhbnZhcyB3ZSBkcmF3IGEgcHJvZ3Jlc3MgYmFyIGludG8KIGZpZWxkIGNfcGFjayAgICA7ICMgc2NyaXB0IHRvIHBhY2sgdGhlIGNhbnZhcyB3aXRoCi1maWVsZCBzdGF0dXMgIHt9OyAjIHNpbmdsZSBsaW5lIG9mIHRleHQgd2Ugc2hvdwotZmllbGQgcHJlZml4ICB7fTsgIyB0ZXh0IHdlIGZvcm1hdCBpbnRvIHN0YXR1cwotZmllbGQgdW5pdHMgICB7fTsgIyB1bml0IG9mIHByb2dyZXNzCi1maWVsZCBtZXRlciAgIHt9OyAjIGN1cnJlbnQgY29yZSBnaXQgcHJvZ3Jlc3MgbWV0ZXIgKGlmIGFjdGl2ZSkKKworZmllbGQgYmFzZWxpbmVfdGV4dCAgIDsgIyB0ZXh0IHRvIHNob3cgaWYgdGhlcmUgYXJlIG5vIG9wZXJhdGlvbnMKK2ZpZWxkIHN0YXR1c19iYXJfdGV4dCA7ICMgY29tYmluZWQgdGV4dCBmb3IgYWxsIG9wZXJhdGlvbnMKKworZmllbGQgb3BlcmF0aW9ucyA7ICMgbGlzdCBvZiBjdXJyZW50IG9uZ29pbmcgb3BlcmF0aW9ucworCisjIFRoZSBzdGF0dXMgYmFyIGNhbiBkaXNwbGF5IGEgcHJvZ3Jlc3MgYmFyLCB1cGRhdGVkIHdoZW4gY29uc3VtZXJzIGNhbGwgdGhlCisjIHVwZGF0ZSBtZXRob2Qgb24gdGhlaXIgc3RhdHVzX2Jhcl9vcGVyYXRpb24uIFdoZW4gdGhlcmUgYXJlIG11bHRpcGxlCisjIG9wZXJhdGlvbnMsIHRoZSBzdGF0dXMgYmFyIHNob3dzIHRoZSBjb21iaW5lZCBzdGF0dXMgb2YgYWxsIG9wZXJhdGlvbnMuCisjCisjIFdoZW4gYW4gb3ZlcmxhcHBpbmcgb3BlcmF0aW9uIGNvbXBsZXRlcywgdGhlIHByb2dyZXNzIGJhciBpcyBnb2luZyB0bworIyBhYnJ1cHRseSBoYXZlIG9uZSBmZXdlciBvcGVyYXRpb24gaW4gdGhlIGNhbGN1bGF0aW9uLCBjYXVzaW5nIGEgZGlzY29udGludWl0eS4KKyMgVGhlcmVmb3JlLCB3aGVuZXZlciBhbiBvcGVyYXRpb24gY29tcGxldGVzLCBpZiBpdCBpcyBub3QgdGhlIGxhc3Qgb3BlcmF0aW9uLAorIyB0aGlzIGNvdW50ZXIgaXMgaW5jcmVhc2VkLCBhbmQgdGhlIHByb2dyZXNzIGJhciBpcyBjYWxjdWxhdGVkIGFzIHRob3VnaCB0aGVyZQorIyB3ZXJlIHN0aWxsIGFub3RoZXIgb3BlcmF0aW9uIGF0IDEwMCUuIFdoZW4gdGhlIGxhc3Qgb3BlcmF0aW9uIGNvbXBsZXRlcywgdGhpcworIyBpcyByZXNldCB0byAwLgorZmllbGQgY29tcGxldGVkX29wZXJhdGlvbl9jb3VudAogCiBjb25zdHJ1Y3RvciBuZXcge3BhdGh9IHsKIAlnbG9iYWwgdXNlX3R0ayBOUwpAQCAtMTgsMTIgKzQ0LDE5IEBACiAJc2V0IHdfbCAkdy5sCiAJc2V0IHdfYyAkdy5jCiAKKwkjIFN0YW5kYXJkIHNpbmdsZS1saW5lIHN0YXR1cyBiYXI6IFBlcm1pdCBvdmVybGFwcGluZyBvcGVyYXRpb25zCisJc2V0IGFsbG93X211bHRpcGxlIDEKKworCXNldCBiYXNlbGluZV90ZXh0ICIiCisJc2V0IG9wZXJhdGlvbnMgW2xpc3RdCisJc2V0IGNvbXBsZXRlZF9vcGVyYXRpb25fY291bnQgMAorCiAJJHtOU306OmZyYW1lICR3CiAJaWYgeyEkdXNlX3R0a30gewogCQkkdyBjb25maWd1cmUgLWJvcmRlcndpZHRoIDEgLXJlbGllZiBzdW5rZW4KIAl9CiAJJHtOU306OmxhYmVsICR3X2wgXAotCQktdGV4dHZhcmlhYmxlIEBzdGF0dXMgXAorCQktdGV4dHZhcmlhYmxlIEBzdGF0dXNfYmFyX3RleHQgXAogCQktYW5jaG9yIHcgXAogCQktanVzdGlmeSBsZWZ0CiAJcGFjayAkd19sIC1zaWRlIGxlZnQKQEAgLTQ0LDkgKzc3LDE2IEBACiAJc2V0IHdfbCAkdy5sCiAJc2V0IHdfYyAkdy5jCiAKKwkjIFR3by1saW5lIHN0YXR1cyBiYXI6IE9ubHkgb25lIG9uZ29pbmcgb3BlcmF0aW9uIHBlcm1pdHRlZC4KKwlzZXQgYWxsb3dfbXVsdGlwbGUgMAorCisJc2V0IGJhc2VsaW5lX3RleHQgIiIKKwlzZXQgb3BlcmF0aW9ucyBbbGlzdF0KKwlzZXQgY29tcGxldGVkX29wZXJhdGlvbl9jb3VudCAwCisKIAkke05TfTo6ZnJhbWUgJHcKIAkke05TfTo6bGFiZWwgJHdfbCBcCi0JCS10ZXh0dmFyaWFibGUgQHN0YXR1cyBcCisJCS10ZXh0dmFyaWFibGUgQHN0YXR1c19iYXJfdGV4dCBcCiAJCS1hbmNob3IgdyBcCiAJCS1qdXN0aWZ5IGxlZnQKIAlwYWNrICR3X2wgLWFuY2hvciB3IC1maWxsIHgKQEAgLTU2LDcgKzk2LDcgQEAKIAlyZXR1cm4gJHRoaXMKIH0KIAotbWV0aG9kIHN0YXJ0IHttc2cgdWRzfSB7CittZXRob2QgZW5zdXJlX2NhbnZhcyB7fSB7CiAJaWYge1t3aW5mbyBleGlzdHMgJHdfY119IHsKIAkJJHdfYyBjb29yZHMgYmFyIDAgMCAwIDIwCiAJfSBlbHNlIHsKQEAgLTY4LDMxICsxMDgsMTcwIEBACiAJCSR3X2MgY3JlYXRlIHJlY3RhbmdsZSAwIDAgMCAyMCAtdGFncyBiYXIgLWZpbGwgbmF2eQogCQlldmFsICRjX3BhY2sKIAl9Cit9CisKK21ldGhvZCBzaG93IHttc2d9IHsKKwkkdGhpcyBlbnN1cmVfY2FudmFzCisJc2V0IGJhc2VsaW5lX3RleHQgJG1zZworCSR0aGlzIHJlZnJlc2gKK30KKworbWV0aG9kIHN0YXJ0IHttc2cge3VkcyB7fX19IHsKKwlzZXQgYmFzZWxpbmVfdGV4dCAiIgorCisJaWYgeyEkYWxsb3dfbXVsdGlwbGUgJiYgW2xsZW5ndGggJG9wZXJhdGlvbnNdfSB7CisJCXJldHVybiBbbGluZGV4ICRvcGVyYXRpb25zIDBdCisJfQorCisJJHRoaXMgZW5zdXJlX2NhbnZhcworCisJc2V0IG9wZXJhdGlvbiBbc3RhdHVzX2Jhcl9vcGVyYXRpb246Om5ldyAkdGhpcyAkbXNnICR1ZHNdCisKKwlsYXBwZW5kIG9wZXJhdGlvbnMgJG9wZXJhdGlvbgorCisJJHRoaXMgcmVmcmVzaAorCisJcmV0dXJuICRvcGVyYXRpb24KK30KKworbWV0aG9kIHJlZnJlc2gge30geworCXNldCBuZXdfdGV4dCAiIgorCisJc2V0IHRvdGFsIFtleHByICRjb21wbGV0ZWRfb3BlcmF0aW9uX2NvdW50ICogMTAwXQorCXNldCBoYXZlICR0b3RhbAorCisJZm9yZWFjaCBvcGVyYXRpb24gJG9wZXJhdGlvbnMgeworCQlpZiB7JG5ld190ZXh0ICE9ICIifSB7CisJCQlhcHBlbmQgbmV3X3RleHQgIiAvICIKKwkJfQorCisJCWFwcGVuZCBuZXdfdGV4dCBbJG9wZXJhdGlvbiBnZXRfc3RhdHVzXQorCisJCXNldCB0b3RhbCBbZXhwciAkdG90YWwgKyAxMDBdCisJCXNldCBoYXZlIFtleHByICRoYXZlICsgWyRvcGVyYXRpb24gZ2V0X3Byb2dyZXNzXV0KKwl9CisKKwlpZiB7JG5ld190ZXh0ID09ICIifSB7CisJCXNldCBuZXdfdGV4dCAkYmFzZWxpbmVfdGV4dAorCX0KKworCXNldCBzdGF0dXNfYmFyX3RleHQgJG5ld190ZXh0CisKKwlpZiB7W3dpbmZvIGV4aXN0cyAkd19jXX0geworCQlzZXQgcGl4ZWxfd2lkdGggMAorCQlpZiB7JGhhdmUgPiAwfSB7CisJCQlzZXQgcGl4ZWxfd2lkdGggW2V4cHIge1t3aW5mbyB3aWR0aCAkd19jXSAqICRoYXZlIC8gJHRvdGFsfV0KKwkJfQorCisJCSR3X2MgY29vcmRzIGJhciAwIDAgJHBpeGVsX3dpZHRoIDIwCisJfQorfQorCittZXRob2Qgc3RvcCB7b3BlcmF0aW9uIHN0b3BfbXNnfSB7CisJc2V0IGlkeCBbbHNlYXJjaCAkb3BlcmF0aW9ucyAkb3BlcmF0aW9uXQorCisJaWYgeyRpZHggPj0gMH0geworCQlzZXQgb3BlcmF0aW9ucyBbbHJlcGxhY2UgJG9wZXJhdGlvbnMgJGlkeCAkaWR4XQorCQlzZXQgY29tcGxldGVkX29wZXJhdGlvbl9jb3VudCBbZXhwciBcCisJCQkkY29tcGxldGVkX29wZXJhdGlvbl9jb3VudCArIDFdCisKKwkJaWYge1tsbGVuZ3RoICRvcGVyYXRpb25zXSA9PSAwfSB7CisJCQlzZXQgY29tcGxldGVkX29wZXJhdGlvbl9jb3VudCAwCisKKwkJCWRlc3Ryb3kgJHdfYworCQkJaWYgeyRzdG9wX21zZyBuZSB7fX0geworCQkJCXNldCBiYXNlbGluZV90ZXh0ICRzdG9wX21zZworCQkJfQorCQl9CisKKwkJJHRoaXMgcmVmcmVzaAorCX0KK30KKworbWV0aG9kIHN0b3BfYWxsIHt7c3RvcF9tc2cge319fSB7CisJIyBUaGlzIG1ha2VzIHRoZSBvcGVyYXRpb24ncyBjYWxsIHRvIHN0b3AgYSBuby1vcC4KKwlzZXQgb3BlcmF0aW9uc19jb3B5ICRvcGVyYXRpb25zCisJc2V0IG9wZXJhdGlvbnMgW2xpc3RdCisKKwlmb3JlYWNoIG9wZXJhdGlvbiAkb3BlcmF0aW9uc19jb3B5IHsKKwkJJG9wZXJhdGlvbiBzdG9wCisJfQorCisJaWYgeyRzdG9wX21zZyBuZSB7fX0geworCQlzZXQgYmFzZWxpbmVfdGV4dCAkc3RvcF9tc2cKKwl9CisKKwkkdGhpcyByZWZyZXNoCit9CisKK21ldGhvZCBfZGVsZXRlIHtjdXJyZW50fSB7CisJaWYgeyRjdXJyZW50IGVxICR3fSB7CisJCWRlbGV0ZV90aGlzCisJfQorfQorCit9CisKKyMgVGhlIHN0YXR1c19iYXJfb3BlcmF0aW9uIGNsYXNzIHRyYWNrcyBhIHNpbmdsZSBjb25zdW1lcidzIG9uZ29pbmcgc3RhdHVzIGJhcgorIyBhY3Rpdml0eSwgd2l0aCB0aGUgY29udGV4dCB0aGF0IHRoZXJlIGFyZSBhIGZldyBzaXR1YXRpb25zIHdoZXJlIG11bHRpcGxlCisjIG92ZXJsYXBwaW5nIGFzeW5jaHJvbm91cyBvcGVyYXRpb25zIG1pZ2h0IHdhbnQgdG8gZGlzcGxheSBzdGF0dXMgaW5mb3JtYXRpb24KKyMgc2ltdWx0YW5lb3VzbHkuIEluc3RhbmNlcyBvZiBzdGF0dXNfYmFyX29wZXJhdGlvbiBhcmUgY3JlYXRlZCBieSBjYWxsaW5nCisjIHN0YXJ0IG9uIHRoZSBzdGF0dXNfYmFyLCBhbmQgd2hlbiB0aGUgY2FsbGVyIGlzIGRvbmUgd2l0aCBpdHMgc3RhdXRzIGJhcgorIyBvcGVyYXRpb24sIGl0IGNhbGxzIHN0b3Agb24gdGhlIG9wZXJhdGlvbi4KKworY2xhc3Mgc3RhdHVzX2Jhcl9vcGVyYXRpb24geworCitmaWVsZCBzdGF0dXNfYmFyOyAjIHJlZmVyZW5jZSBiYWNrIHRvIHRoZSBzdGF0dXNfYmFyIHRoYXQgb3ducyB0aGlzIG9iamVjdAorCitmaWVsZCBpc19hY3RpdmU7CisKK2ZpZWxkIHN0YXR1cyAgIHt9OyAjIHNpbmdsZSBsaW5lIG9mIHRleHQgd2Ugc2hvdworZmllbGQgcHJvZ3Jlc3Mge307ICMgY3VycmVudCBwcm9ncmVzcyAoMCB0byAxMDApCitmaWVsZCBwcmVmaXggICB7fTsgIyB0ZXh0IHdlIGZvcm1hdCBpbnRvIHN0YXR1cworZmllbGQgdW5pdHMgICAge307ICMgdW5pdCBvZiBwcm9ncmVzcworZmllbGQgbWV0ZXIgICAge307ICMgY3VycmVudCBjb3JlIGdpdCBwcm9ncmVzcyBtZXRlciAoaWYgYWN0aXZlKQorCitjb25zdHJ1Y3RvciBuZXcge293bmVyIG1zZyB1ZHN9IHsKKwlzZXQgc3RhdHVzX2JhciAkb3duZXIKIAogCXNldCBzdGF0dXMgJG1zZworCXNldCBwcm9ncmVzcyAwCiAJc2V0IHByZWZpeCAkbXNnCiAJc2V0IHVuaXRzICAkdWRzCiAJc2V0IG1ldGVyICB7fQorCisJc2V0IGlzX2FjdGl2ZSAxCisKKwlyZXR1cm4gJHRoaXMKIH0KIAorbWV0aG9kIGdldF9pc19hY3RpdmUge30geyByZXR1cm4gJGlzX2FjdGl2ZSB9CittZXRob2QgZ2V0X3N0YXR1cyB7fSB7IHJldHVybiAkc3RhdHVzIH0KK21ldGhvZCBnZXRfcHJvZ3Jlc3Mge30geyByZXR1cm4gJHByb2dyZXNzIH0KKwogbWV0aG9kIHVwZGF0ZSB7aGF2ZSB0b3RhbH0gewotCXNldCBwZG9uZSAwCi0Jc2V0IGNkb25lIDAKKwlpZiB7ISRpc19hY3RpdmV9IHsgcmV0dXJuIH0KKworCXNldCBwcm9ncmVzcyAwCisKIAlpZiB7JHRvdGFsID4gMH0gewotCQlzZXQgcGRvbmUgW2V4cHIgezEwMCAqICRoYXZlIC8gJHRvdGFsfV0KLQkJc2V0IGNkb25lIFtleHByIHtbd2luZm8gd2lkdGggJHdfY10gKiAkaGF2ZSAvICR0b3RhbH1dCisJCXNldCBwcm9ncmVzcyBbZXhwciB7MTAwICogJGhhdmUgLyAkdG90YWx9XQogCX0KIAogCXNldCBwcmVjIFtzdHJpbmcgbGVuZ3RoIFtmb3JtYXQgJWkgJHRvdGFsXV0KKwogCXNldCBzdGF0dXMgW21jICIlcyAuLi4gJSppIG9mICUqaSAlcyAoJTNpJSUpIiBcCiAJCSRwcmVmaXggXAogCQkkcHJlYyAkaGF2ZSBcCiAJCSRwcmVjICR0b3RhbCBcCi0JCSR1bml0cyAkcGRvbmVdCi0JJHdfYyBjb29yZHMgYmFyIDAgMCAkY2RvbmUgMjAKKwkJJHVuaXRzICRwcm9ncmVzc10KKworCSRzdGF0dXNfYmFyIHJlZnJlc2gKIH0KIAogbWV0aG9kIHVwZGF0ZV9tZXRlciB7YnVmfSB7CisJaWYgeyEkaXNfYWN0aXZlfSB7IHJldHVybiB9CisKIAlhcHBlbmQgbWV0ZXIgJGJ1ZgogCXNldCByIFtzdHJpbmcgbGFzdCAiXHIiICRtZXRlcl0KIAlpZiB7JHIgPT0gLTF9IHsKQEAgLTEwOSwyMyArMjg4LDI1IEBACiAJfQogfQogCi1tZXRob2Qgc3RvcCB7e21zZyB7fX19IHsKLQlkZXN0cm95ICR3X2MKLQlpZiB7JG1zZyBuZSB7fX0gewotCQlzZXQgc3RhdHVzICRtc2cKK21ldGhvZCBzdG9wIHt7c3RvcF9tc2cge319fSB7CisJaWYgeyRpc19hY3RpdmV9IHsKKwkJc2V0IGlzX2FjdGl2ZSAwCisJCSRzdGF0dXNfYmFyIHN0b3AgJHRoaXMgJHN0b3BfbXNnCiAJfQogfQogCi1tZXRob2Qgc2hvdyB7bXNnIHt0ZXN0IHt9fX0gewotCWlmIHskdGVzdCBlcSB7fSB8fCAkc3RhdHVzIGVxICR0ZXN0fSB7Ci0JCXNldCBzdGF0dXMgJG1zZwotCX0KK21ldGhvZCByZXN0YXJ0IHttc2d9IHsKKwlpZiB7ISRpc19hY3RpdmV9IHsgcmV0dXJuIH0KKworCXNldCBzdGF0dXMgJG1zZworCXNldCBwcmVmaXggJG1zZworCXNldCBtZXRlciB7fQorCSRzdGF0dXNfYmFyIHJlZnJlc2gKIH0KIAotbWV0aG9kIF9kZWxldGUge2N1cnJlbnR9IHsKLQlpZiB7JGN1cnJlbnQgZXEgJHd9IHsKLQkJZGVsZXRlX3RoaXMKLQl9CittZXRob2QgX2RlbGV0ZSB7fSB7CisJc3RvcAorCWRlbGV0ZV90aGlzCiB9CiAKIH0KZGlmZiAtLWdpdCBhL2dpdC1ndWkvcG8vZGUucG8gYi9naXQtZ3VpL3BvL2RlLnBvCmluZGV4IGJhZWJmZjIuLmE4ZDVmNjEgMTAwNjQ0Ci0tLSBhL2dpdC1ndWkvcG8vZGUucG8KKysrIGIvZ2l0LWd1aS9wby9kZS5wbwpAQCAtNyw0MSArNyw0MiBAQAogbXNnc3RyICIiCiAiUHJvamVjdC1JZC1WZXJzaW9uOiBnaXQtZ3VpXG4iCiAiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IFxuIgotIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDEwLTAxLTI2IDIyOjIyKzAxMDBcbiIKLSJQTy1SZXZpc2lvbi1EYXRlOiAyMDEwLTAxLTI2IDIyOjI1KzAxMDBcbiIKLSJMYXN0LVRyYW5zbGF0b3I6IENocmlzdGlhbiBTdGltbWluZyA8c3RpbW1pbmdAdHVoaC5kZT5cbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAyMC0wMi0wOCAyMjo1NCswMTAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAyMC0wMi0wOSAyMjo0MCswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBDaHJpc3RpYW4gU3RpbW1pbmcgPGNocmlzdGlhbkBjc3RpbW1pbmcuZGU+XG4iCiAiTGFuZ3VhZ2UtVGVhbTogR2VybWFuXG4iCisiTGFuZ3VhZ2U6IGRlX0RFXG4iCiAiTUlNRS1WZXJzaW9uOiAxLjBcbiIKICJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKICJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCiAKLSM6IGdpdC1ndWkuc2g6NDEgZ2l0LWd1aS5zaDo3OTMgZ2l0LWd1aS5zaDo4MDcgZ2l0LWd1aS5zaDo4MjAgZ2l0LWd1aS5zaDo5MDMKLSM6IGdpdC1ndWkuc2g6OTIyCi1tc2dpZCAiZ2l0LWd1aTogZmF0YWwgZXJyb3IiCi1tc2dzdHIgImdpdC1ndWk6IFByb2dyYW1tZmVobGVyIgotCi0jOiBnaXQtZ3VpLnNoOjc0MworIzogZ2l0LWd1aS5zaDo4NDcKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIGZvbnQgc3BlY2lmaWVkIGluICVzOiIKIG1zZ3N0ciAiVW5nw7xsdGlnZSBaZWljaGVuc2F0ei1BbmdhYmUgaW4gJXM6IgogCi0jOiBnaXQtZ3VpLnNoOjc3OQorIzogZ2l0LWd1aS5zaDo5MDEKIG1zZ2lkICJNYWluIEZvbnQiCiBtc2dzdHIgIlByb2dyYW1tc2NocmlmdGFydCIKIAotIzogZ2l0LWd1aS5zaDo3ODAKKyM6IGdpdC1ndWkuc2g6OTAyCiBtc2dpZCAiRGlmZi9Db25zb2xlIEZvbnQiCiBtc2dzdHIgIlZlcmdsZWljaC1TY2hyaWZ0YXJ0IgogCi0jOiBnaXQtZ3VpLnNoOjc5NAorIzogZ2l0LWd1aS5zaDo5MTcgZ2l0LWd1aS5zaDo5MzEgZ2l0LWd1aS5zaDo5NDQgZ2l0LWd1aS5zaDoxMDM0IGdpdC1ndWkuc2g6MTA1MworIzogZ2l0LWd1aS5zaDozMjEyCittc2dpZCAiZ2l0LWd1aTogZmF0YWwgZXJyb3IiCittc2dzdHIgImdpdC1ndWk6IFByb2dyYW1tZmVobGVyIgorCisjOiBnaXQtZ3VpLnNoOjkxOAogbXNnaWQgIkNhbm5vdCBmaW5kIGdpdCBpbiBQQVRILiIKIG1zZ3N0ciAiR2l0IGthbm4gaW0gUEFUSCBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4uIgogCi0jOiBnaXQtZ3VpLnNoOjgyMQorIzogZ2l0LWd1aS5zaDo5NDUKIG1zZ2lkICJDYW5ub3QgcGFyc2UgR2l0IHZlcnNpb24gc3RyaW5nOiIKIG1zZ3N0ciAiR2l0IFZlcnNpb25zYW5nYWJlIGthbm4gbmljaHQgZXJrYW5udCB3ZXJkZW46IgogCi0jOiBnaXQtZ3VpLnNoOjgzOQorIzogZ2l0LWd1aS5zaDo5NzAKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICIiCiAiR2l0IHZlcnNpb24gY2Fubm90IGJlIGRldGVybWluZWQuXG4iCkBAIC02MCw0NzkgKzYxLDUyNCBAQAogIlxuIgogIlNvbGwgYW5nZW5vbW1lbiB3ZXJkZW4sIMK7JXPCqyBzZWkgVmVyc2lvbiAxLjUuMD9cbiIKIAotIzogZ2l0LWd1aS5zaDoxMTI4CisjOiBnaXQtZ3VpLnNoOjEyNjcKIG1zZ2lkICJHaXQgZGlyZWN0b3J5IG5vdCBmb3VuZDoiCiBtc2dzdHIgIkdpdC1WZXJ6ZWljaG5pcyBuaWNodCBnZWZ1bmRlbjoiCiAKLSM6IGdpdC1ndWkuc2g6MTE0NgorIzogZ2l0LWd1aS5zaDoxMzAxCiBtc2dpZCAiQ2Fubm90IG1vdmUgdG8gdG9wIG9mIHdvcmtpbmcgZGlyZWN0b3J5OiIKIG1zZ3N0ciAiIgogIkVzIGtvbm50ZSBuaWNodCBpbiBkYXMgb2JlcnN0ZSBWZXJ6ZWljaG5pcyBkZXIgQXJiZWl0c2tvcGllIGdld2VjaHNlbHQgIgogIndlcmRlbjoiCiAKLSM6IGdpdC1ndWkuc2g6MTE1NAorIzogZ2l0LWd1aS5zaDoxMzA5CiBtc2dpZCAiQ2Fubm90IHVzZSBiYXJlIHJlcG9zaXRvcnk6IgotbXNnc3RyICJCbG/Dn2VzIFByb2pla3RhcmNoaXYga2FubiBuaWNodCBiZW51dHp0IHdlcmRlbjoiCittc2dzdHIgIkJsb8OfZXMgUmVwb3NpdG9yeSBrYW5uIG5pY2h0IGJlbnV0enQgd2VyZGVuOiIKIAotIzogZ2l0LWd1aS5zaDoxMTYyCisjOiBnaXQtZ3VpLnNoOjEzMTcKIG1zZ2lkICJObyB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAiS2VpbiBBcmJlaXRzdmVyemVpY2huaXMiCiAKLSM6IGdpdC1ndWkuc2g6MTMzNCBsaWIvY2hlY2tvdXRfb3AudGNsOjMwNgorIzogZ2l0LWd1aS5zaDoxNDkxIGxpYi9jaGVja291dF9vcC50Y2w6MzA2CiBtc2dpZCAiUmVmcmVzaGluZyBmaWxlIHN0YXR1cy4uLiIKIG1zZ3N0ciAiRGF0ZWlzdGF0dXMgYWt0dWFsaXNpZXJlbi4uLiIKIAotIzogZ2l0LWd1aS5zaDoxMzkwCisjOiBnaXQtZ3VpLnNoOjE1NTEKIG1zZ2lkICJTY2FubmluZyBmb3IgbW9kaWZpZWQgZmlsZXMgLi4uIgogbXNnc3RyICJOYWNoIGdlw6RuZGVydGVuIERhdGVpZW4gc3VjaGVuLi4uIgogCi0jOiBnaXQtZ3VpLnNoOjE0NTQKKyM6IGdpdC1ndWkuc2g6MTYyOQogbXNnaWQgIkNhbGxpbmcgcHJlcGFyZS1jb21taXQtbXNnIGhvb2suLi4iCi1tc2dzdHIgIkF1ZnJ1ZmVuIGRlciBFaW50cmFnZW4tVm9yYmVyZWl0ZW4tS29udHJvbGxlICjCu3ByZXBhcmUtY29tbWl0IGhvb2vCqykuLi4iCittc2dzdHIgIkF1ZnJ1ZmVuIGRlcyDCu3ByZXBhcmUtY29tbWl0LW1zZyBob29rwqsuLi4iCiAKLSM6IGdpdC1ndWkuc2g6MTQ3MQorIzogZ2l0LWd1aS5zaDoxNjQ2CiBtc2dpZCAiQ29tbWl0IGRlY2xpbmVkIGJ5IHByZXBhcmUtY29tbWl0LW1zZyBob29rLiIKLW1zZ3N0ciAiIgotIkVpbnRyYWdlbiBhYmdlbGVobnQgZHVyY2ggRWludHJhZ2VuLVZvcmJlcmVpdGVuLUtvbnRyb2xsZSAowrtwcmVwYXJlLWNvbW1pdCAiCi0iaG9va8KrKS4iCittc2dzdHIgIkNvbW1pdCBhYmdlbGVobnQgZHVyY2ggwrtwcmVwYXJlLWNvbW1pdC1tc2cgaG9va8KrLiIKIAotIzogZ2l0LWd1aS5zaDoxNjI5IGxpYi9icm93c2VyLnRjbDoyNDYKKyM6IGdpdC1ndWkuc2g6MTgwNCBsaWIvYnJvd3Nlci50Y2w6MjUyCiBtc2dpZCAiUmVhZHkuIgogbXNnc3RyICJCZXJlaXQuIgogCi0jOiBnaXQtZ3VpLnNoOjE3ODcKKyM6IGdpdC1ndWkuc2g6MTk2OAogIywgdGNsLWZvcm1hdAotbXNnaWQgIkRpc3BsYXlpbmcgb25seSAlcyBvZiAlcyBmaWxlcy4iCi1tc2dzdHIgIk51ciAlcyB2b24gJXMgRGF0ZWllbiB3ZXJkZW4gYW5nZXplaWd0LiIKK21zZ2lkICIiCisiRGlzcGxheSBsaW1pdCAoZ3VpLm1heGZpbGVzZGlzcGxheWVkID0gJXMpIHJlYWNoZWQsIG5vdCBzaG93aW5nIGFsbCAlcyBmaWxlcy4iCittc2dzdHIgIiIKKyJBbnplaWdlbGltaXQgZXJyZWljaHQgKGd1aS5tYXhmaWxlc2Rpc3BsYXllZCA9ICVzKSBmw7xyIEFuemFobCBFaW50csOkZ2UuIEVzICIKKyJ3ZXJkZW4gbmljaHQgYWxsZSAlcyBEYXRlaWVuIGdlemVpZ3QuIgogCi0jOiBnaXQtZ3VpLnNoOjE5MTMKKyM6IGdpdC1ndWkuc2g6MjA5MQogbXNnaWQgIlVubW9kaWZpZWQiCiBtc2dzdHIgIlVudmVyw6RuZGVydCIKIAotIzogZ2l0LWd1aS5zaDoxOTE1CisjOiBnaXQtZ3VpLnNoOjIwOTMKIG1zZ2lkICJNb2RpZmllZCwgbm90IHN0YWdlZCIKIG1zZ3N0ciAiVmVyw6RuZGVydCwgbmljaHQgYmVyZWl0Z2VzdGVsbHQiCiAKLSM6IGdpdC1ndWkuc2g6MTkxNiBnaXQtZ3VpLnNoOjE5MjQKKyM6IGdpdC1ndWkuc2g6MjA5NCBnaXQtZ3VpLnNoOjIxMDYKIG1zZ2lkICJTdGFnZWQgZm9yIGNvbW1pdCIKLW1zZ3N0ciAiQmVyZWl0Z2VzdGVsbHQgenVtIEVpbnRyYWdlbiIKK21zZ3N0ciAiQmVyZWl0Z2VzdGVsbHQgenVtIENvbW1pdHRlbiIKIAotIzogZ2l0LWd1aS5zaDoxOTE3IGdpdC1ndWkuc2g6MTkyNQorIzogZ2l0LWd1aS5zaDoyMDk1IGdpdC1ndWkuc2g6MjEwNwogbXNnaWQgIlBvcnRpb25zIHN0YWdlZCBmb3IgY29tbWl0IgotbXNnc3RyICJUZWlsd2Vpc2UgYmVyZWl0Z2VzdGVsbHQgenVtIEVpbnRyYWdlbiIKK21zZ3N0ciAiVGVpbHdlaXNlIGJlcmVpdGdlc3RlbGx0IHp1bSBDb21taXR0ZW4iCiAKLSM6IGdpdC1ndWkuc2g6MTkxOCBnaXQtZ3VpLnNoOjE5MjYKKyM6IGdpdC1ndWkuc2g6MjA5NiBnaXQtZ3VpLnNoOjIxMDgKIG1zZ2lkICJTdGFnZWQgZm9yIGNvbW1pdCwgbWlzc2luZyIKLW1zZ3N0ciAiQmVyZWl0Z2VzdGVsbHQgenVtIEVpbnRyYWdlbiwgZmVobGVuZCIKK21zZ3N0ciAiQmVyZWl0Z2VzdGVsbHQgenVtIENvbW1pdHRlbiwgZmVobGVuZCIKIAotIzogZ2l0LWd1aS5zaDoxOTIwCisjOiBnaXQtZ3VpLnNoOjIwOTgKIG1zZ2lkICJGaWxlIHR5cGUgY2hhbmdlZCwgbm90IHN0YWdlZCIKIG1zZ3N0ciAiRGF0ZWl0eXAgZ2XDpG5kZXJ0LCBuaWNodCBiZXJlaXRnZXN0ZWxsdCIKIAotIzogZ2l0LWd1aS5zaDoxOTIxCisjOiBnaXQtZ3VpLnNoOjIwOTkgZ2l0LWd1aS5zaDoyMTAwCittc2dpZCAiRmlsZSB0eXBlIGNoYW5nZWQsIG9sZCB0eXBlIHN0YWdlZCBmb3IgY29tbWl0IgorbXNnc3RyICJEYXRlaXR5cCBnZcOkbmRlcnQsIGFsdGVyIERhdGVpdHlwIGJlcmVpdGdlc3RlbGx0IgorCisjOiBnaXQtZ3VpLnNoOjIxMDEKIG1zZ2lkICJGaWxlIHR5cGUgY2hhbmdlZCwgc3RhZ2VkIgogbXNnc3RyICJEYXRlaXR5cCBnZcOkbmRlcnQsIGJlcmVpdGdlc3RlbGx0IgogCi0jOiBnaXQtZ3VpLnNoOjE5MjMKLW1zZ2lkICJVbnRyYWNrZWQsIG5vdCBzdGFnZWQiCi1tc2dzdHIgIk5pY2h0IHVudGVyIFZlcnNpb25za29udHJvbGxlLCBuaWNodCBiZXJlaXRnZXN0ZWxsdCIKKyM6IGdpdC1ndWkuc2g6MjEwMgorbXNnaWQgIkZpbGUgdHlwZSBjaGFuZ2Ugc3RhZ2VkLCBtb2RpZmljYXRpb24gbm90IHN0YWdlZCIKK21zZ3N0ciAiRGF0ZWl0eXAtw4RuZGVydW5nIGJlcmVpdGdlc3RlbGx0LCBJbmhhbHRzw6RuZGVydW5nIG5pY2h0IGJlcmVpdGdlc3RlbGx0IgogCi0jOiBnaXQtZ3VpLnNoOjE5MjgKKyM6IGdpdC1ndWkuc2g6MjEwMworbXNnaWQgIkZpbGUgdHlwZSBjaGFuZ2Ugc3RhZ2VkLCBmaWxlIG1pc3NpbmciCittc2dzdHIgIkRhdGVpdHlwLcOEbmRlcnVuZyBiZXJlaXRnZXN0ZWxsdCwgRGF0ZWkgZ2Vsw7ZzY2h0IgorCisjOiBnaXQtZ3VpLnNoOjIxMDUKK21zZ2lkICJVbnRyYWNrZWQsIG5vdCBzdGFnZWQiCittc2dzdHIgIlVudmVyc2lvbmllcnQsIG5pY2h0IGJlcmVpdGdlc3RlbGx0IgorCisjOiBnaXQtZ3VpLnNoOjIxMTAKIG1zZ2lkICJNaXNzaW5nIgogbXNnc3RyICJGZWhsZW5kIgogCi0jOiBnaXQtZ3VpLnNoOjE5MjkKKyM6IGdpdC1ndWkuc2g6MjExMQogbXNnaWQgIlN0YWdlZCBmb3IgcmVtb3ZhbCIKIG1zZ3N0ciAiQmVyZWl0Z2VzdGVsbHQgenVtIEzDtnNjaGVuIgogCi0jOiBnaXQtZ3VpLnNoOjE5MzAKKyM6IGdpdC1ndWkuc2g6MjExMgogbXNnaWQgIlN0YWdlZCBmb3IgcmVtb3ZhbCwgc3RpbGwgcHJlc2VudCIKIG1zZ3N0ciAiQmVyZWl0Z2VzdGVsbHQgenVtIEzDtnNjaGVuLCB0cm90emRlbSB2b3JoYW5kZW4iCiAKLSM6IGdpdC1ndWkuc2g6MTkzMiBnaXQtZ3VpLnNoOjE5MzMgZ2l0LWd1aS5zaDoxOTM0IGdpdC1ndWkuc2g6MTkzNQotIzogZ2l0LWd1aS5zaDoxOTM2IGdpdC1ndWkuc2g6MTkzNworIzogZ2l0LWd1aS5zaDoyMTE0IGdpdC1ndWkuc2g6MjExNSBnaXQtZ3VpLnNoOjIxMTYgZ2l0LWd1aS5zaDoyMTE3CisjOiBnaXQtZ3VpLnNoOjIxMTggZ2l0LWd1aS5zaDoyMTE5CiBtc2dpZCAiUmVxdWlyZXMgbWVyZ2UgcmVzb2x1dGlvbiIKIG1zZ3N0ciAiS29uZmxpa3RhdWZsw7ZzdW5nIG7DtnRpZyIKIAotIzogZ2l0LWd1aS5zaDoxOTcyCi1tc2dpZCAiU3RhcnRpbmcgZ2l0ay4uLiBwbGVhc2Ugd2FpdC4uLiIKLW1zZ3N0ciAiR2l0ayB3aXJkIGdlc3RhcnRldC4uLiBiaXR0ZSB3YXJ0ZW4uIgotCi0jOiBnaXQtZ3VpLnNoOjE5ODQKKyM6IGdpdC1ndWkuc2g6MjE2NAogbXNnaWQgIkNvdWxkbid0IGZpbmQgZ2l0ayBpbiBQQVRIIgogbXNnc3RyICJHaXRrIGthbm4gaW0gUEFUSCBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4uIgogCi0jOiBnaXQtZ3VpLnNoOjIwNDMKKyM6IGdpdC1ndWkuc2g6MjIxMCBnaXQtZ3VpLnNoOjIyNDUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJTdGFydGluZyAlcy4uLiBwbGVhc2Ugd2FpdC4uLiIKK21zZ3N0ciAiJXMgd2lyZCBnZXN0YXJ0ZXQuLi4gYml0dGUgd2FydGVuLiIKKworIzogZ2l0LWd1aS5zaDoyMjI0CiBtc2dpZCAiQ291bGRuJ3QgZmluZCBnaXQgZ3VpIGluIFBBVEgiCiBtc2dzdHIgIsK7R2l0IGd1acKrIGthbm4gaW0gUEFUSCBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4uIgogCi0jOiBnaXQtZ3VpLnNoOjI0NTUgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDozNgorIzogZ2l0LWd1aS5zaDoyNzI2IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTMKIG1zZ2lkICJSZXBvc2l0b3J5IgotbXNnc3RyICJQcm9qZWt0YXJjaGl2IgorbXNnc3RyICJSZXBvc2l0b3J5IgogCi0jOiBnaXQtZ3VpLnNoOjI0NTYKKyM6IGdpdC1ndWkuc2g6MjcyNwogbXNnaWQgIkVkaXQiCiBtc2dzdHIgIkJlYXJiZWl0ZW4iCiAKLSM6IGdpdC1ndWkuc2g6MjQ1OCBsaWIvY2hvb3NlX3Jldi50Y2w6NTYxCisjOiBnaXQtZ3VpLnNoOjI3MjkgbGliL2Nob29zZV9yZXYudGNsOjU2NwogbXNnaWQgIkJyYW5jaCIKLW1zZ3N0ciAiWndlaWciCittc2dzdHIgIkJyYW5jaCIKIAotIzogZ2l0LWd1aS5zaDoyNDYxIGxpYi9jaG9vc2VfcmV2LnRjbDo1NDgKKyM6IGdpdC1ndWkuc2g6MjczMiBsaWIvY2hvb3NlX3Jldi50Y2w6NTU0CiBtc2dpZCAiQ29tbWl0QEBub3VuIgotbXNnc3RyICJWZXJzaW9uIgorbXNnc3RyICJDb21taXQiCiAKLSM6IGdpdC1ndWkuc2g6MjQ2NCBsaWIvbWVyZ2UudGNsOjEyMSBsaWIvbWVyZ2UudGNsOjE1MCBsaWIvbWVyZ2UudGNsOjE2OAorIzogZ2l0LWd1aS5zaDoyNzM1IGxpYi9tZXJnZS50Y2w6MTI3IGxpYi9tZXJnZS50Y2w6MTc0CiBtc2dpZCAiTWVyZ2UiCiBtc2dzdHIgIlp1c2FtbWVuZsO8aHJlbiIKIAotIzogZ2l0LWd1aS5zaDoyNDY1IGxpYi9jaG9vc2VfcmV2LnRjbDo1NTcKKyM6IGdpdC1ndWkuc2g6MjczNiBsaWIvY2hvb3NlX3Jldi50Y2w6NTYzCiBtc2dpZCAiUmVtb3RlIgotbXNnc3RyICJFeHRlcm5lIEFyY2hpdmUiCittc2dzdHIgIkV4dGVybiIKIAotIzogZ2l0LWd1aS5zaDoyNDY4CisjOiBnaXQtZ3VpLnNoOjI3MzkKIG1zZ2lkICJUb29scyIKIG1zZ3N0ciAiV2Vya3pldWdlIgogCi0jOiBnaXQtZ3VpLnNoOjI0NzcKKyM6IGdpdC1ndWkuc2g6Mjc0OAogbXNnaWQgIkV4cGxvcmUgV29ya2luZyBDb3B5IgotbXNnc3RyICJBcmJlaXRza29waWUgaW0gRGF0ZWltYW5hZ2VyIgorbXNnc3RyICJBcmJlaXRza29waWUgaW0gRGF0ZWltYW5hZ2VyIMO2ZmZuZW4iCiAKLSM6IGdpdC1ndWkuc2g6MjQ4MworIzogZ2l0LWd1aS5zaDoyNzYzCittc2dpZCAiR2l0IEJhc2giCittc2dzdHIgIkdpdCBCYXNoIgorCisjOiBnaXQtZ3VpLnNoOjI3NzIKIG1zZ2lkICJCcm93c2UgQ3VycmVudCBCcmFuY2gncyBGaWxlcyIKLW1zZ3N0ciAiQWt0dWVsbGVuIFp3ZWlnIGR1cmNoYmzDpHR0ZXJuIgorbXNnc3RyICJBa3R1ZWxsZW4gQnJhbmNoIGR1cmNoYmzDpHR0ZXJuIgogCi0jOiBnaXQtZ3VpLnNoOjI0ODcKKyM6IGdpdC1ndWkuc2g6Mjc3NgogbXNnaWQgIkJyb3dzZSBCcmFuY2ggRmlsZXMuLi4iCi1tc2dzdHIgIkVpbmVuIFp3ZWlnIGR1cmNoYmzDpHR0ZXJuLi4uIgorbXNnc3RyICJCcmFuY2ggZHVyY2hibMOkdHRlcm4uLi4iCiAKLSM6IGdpdC1ndWkuc2g6MjQ5MgorIzogZ2l0LWd1aS5zaDoyNzgxCiBtc2dpZCAiVmlzdWFsaXplIEN1cnJlbnQgQnJhbmNoJ3MgSGlzdG9yeSIKLW1zZ3N0ciAiQWt0dWVsbGVuIFp3ZWlnIGRhcnN0ZWxsZW4iCittc2dzdHIgIkFrdHVlbGxlbiBCcmFuY2ggZGFyc3RlbGxlbiIKIAotIzogZ2l0LWd1aS5zaDoyNDk2CisjOiBnaXQtZ3VpLnNoOjI3ODUKIG1zZ2lkICJWaXN1YWxpemUgQWxsIEJyYW5jaCBIaXN0b3J5IgotbXNnc3RyICJBbGxlIFp3ZWlnZSBkYXJzdGVsbGVuIgorbXNnc3RyICJIaXN0b3JpZSBhbGxlciBCcmFuY2hlcyBkYXJzdGVsbGVuIgogCi0jOiBnaXQtZ3VpLnNoOjI1MDMKKyM6IGdpdC1ndWkuc2g6Mjc5MgogIywgdGNsLWZvcm1hdAogbXNnaWQgIkJyb3dzZSAlcydzIEZpbGVzIgotbXNnc3RyICJad2VpZyDCuyVzwqsgZHVyY2hibMOkdHRlcm4iCittc2dzdHIgIkJyYW5jaCDCuyVzwqsgZHVyY2hibMOkdHRlcm4iCiAKLSM6IGdpdC1ndWkuc2g6MjUwNQorIzogZ2l0LWd1aS5zaDoyNzk0CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiVmlzdWFsaXplICVzJ3MgSGlzdG9yeSIKIG1zZ3N0ciAiSGlzdG9yaWUgdm9uIMK7JXPCqyBkYXJzdGVsbGVuIgogCi0jOiBnaXQtZ3VpLnNoOjI1MTAgbGliL2RhdGFiYXNlLnRjbDoyNyBsaWIvZGF0YWJhc2UudGNsOjY3CisjOiBnaXQtZ3VpLnNoOjI3OTkgbGliL2RhdGFiYXNlLnRjbDo0MAogbXNnaWQgIkRhdGFiYXNlIFN0YXRpc3RpY3MiCiBtc2dzdHIgIkRhdGVuYmFua3N0YXRpc3RpayIKIAotIzogZ2l0LWd1aS5zaDoyNTEzIGxpYi9kYXRhYmFzZS50Y2w6MzQKKyM6IGdpdC1ndWkuc2g6MjgwMiBsaWIvZGF0YWJhc2UudGNsOjMzCiBtc2dpZCAiQ29tcHJlc3MgRGF0YWJhc2UiCiBtc2dzdHIgIkRhdGVuYmFuayBrb21wcmltaWVyZW4iCiAKLSM6IGdpdC1ndWkuc2g6MjUxNgorIzogZ2l0LWd1aS5zaDoyODA1CiBtc2dpZCAiVmVyaWZ5IERhdGFiYXNlIgogbXNnc3RyICJEYXRlbmJhbmsgw7xiZXJwcsO8ZmVuIgogCi0jOiBnaXQtZ3VpLnNoOjI1MjMgZ2l0LWd1aS5zaDoyNTI3IGdpdC1ndWkuc2g6MjUzMSBsaWIvc2hvcnRjdXQudGNsOjgKLSM6IGxpYi9zaG9ydGN1dC50Y2w6NDAgbGliL3Nob3J0Y3V0LnRjbDo3MgorIzogZ2l0LWd1aS5zaDoyODEyIGdpdC1ndWkuc2g6MjgxNiBnaXQtZ3VpLnNoOjI4MjAKIG1zZ2lkICJDcmVhdGUgRGVza3RvcCBJY29uIgogbXNnc3RyICJEZXNrdG9wLUljb24gZXJzdGVsbGVuIgogCi0jOiBnaXQtZ3VpLnNoOjI1MzkgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxODMgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxOTEKKyM6IGdpdC1ndWkuc2g6MjgyOCBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjIwOSBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjIxNwogbXNnaWQgIlF1aXQiCiBtc2dzdHIgIkJlZW5kZW4iCiAKLSM6IGdpdC1ndWkuc2g6MjU0NworIzogZ2l0LWd1aS5zaDoyODM2CiBtc2dpZCAiVW5kbyIKIG1zZ3N0ciAiUsO8Y2tnw6RuZ2lnIgogCi0jOiBnaXQtZ3VpLnNoOjI1NTAKKyM6IGdpdC1ndWkuc2g6MjgzOQogbXNnaWQgIlJlZG8iCiBtc2dzdHIgIldpZWRlcmhvbGVuIgogCi0jOiBnaXQtZ3VpLnNoOjI1NTQgZ2l0LWd1aS5zaDozMTA5CisjOiBnaXQtZ3VpLnNoOjI4NDMgZ2l0LWd1aS5zaDozNDYxCiBtc2dpZCAiQ3V0IgogbXNnc3RyICJBdXNzY2huZWlkZW4iCiAKLSM6IGdpdC1ndWkuc2g6MjU1NyBnaXQtZ3VpLnNoOjMxMTIgZ2l0LWd1aS5zaDozMTg2IGdpdC1ndWkuc2g6MzI1OQorIzogZ2l0LWd1aS5zaDoyODQ2IGdpdC1ndWkuc2g6MzQ2NCBnaXQtZ3VpLnNoOjM1NDAgZ2l0LWd1aS5zaDozNjMzCiAjOiBsaWIvY29uc29sZS50Y2w6NjkKIG1zZ2lkICJDb3B5IgogbXNnc3RyICJLb3BpZXJlbiIKIAotIzogZ2l0LWd1aS5zaDoyNTYwIGdpdC1ndWkuc2g6MzExNQorIzogZ2l0LWd1aS5zaDoyODQ5IGdpdC1ndWkuc2g6MzQ2NwogbXNnaWQgIlBhc3RlIgogbXNnc3RyICJFaW5mw7xnZW4iCiAKLSM6IGdpdC1ndWkuc2g6MjU2MyBnaXQtZ3VpLnNoOjMxMTggbGliL2JyYW5jaF9kZWxldGUudGNsOjI2Ci0jOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjM4CisjOiBnaXQtZ3VpLnNoOjI4NTIgZ2l0LWd1aS5zaDozNDcwIGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MzkKKyM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDoyOAogbXNnaWQgIkRlbGV0ZSIKIG1zZ3N0ciAiTMO2c2NoZW4iCiAKLSM6IGdpdC1ndWkuc2g6MjU2NyBnaXQtZ3VpLnNoOjMxMjIgZ2l0LWd1aS5zaDozMjYzIGxpYi9jb25zb2xlLnRjbDo3MQorIzogZ2l0LWd1aS5zaDoyODU2IGdpdC1ndWkuc2g6MzQ3NCBnaXQtZ3VpLnNoOjM2MzcgbGliL2NvbnNvbGUudGNsOjcxCiBtc2dpZCAiU2VsZWN0IEFsbCIKIG1zZ3N0ciAiQWxsZSBhdXN3w6RobGVuIgogCi0jOiBnaXQtZ3VpLnNoOjI1NzYKKyM6IGdpdC1ndWkuc2g6Mjg2NQogbXNnaWQgIkNyZWF0ZS4uLiIKIG1zZ3N0ciAiRXJzdGVsbGVuLi4uIgogCi0jOiBnaXQtZ3VpLnNoOjI1ODIKKyM6IGdpdC1ndWkuc2g6Mjg3MQogbXNnaWQgIkNoZWNrb3V0Li4uIgotbXNnc3RyICJVbXN0ZWxsZW4uLi4iCittc2dzdHIgIkF1c2NoZWNrZW4uLi4iCiAKLSM6IGdpdC1ndWkuc2g6MjU4OAorIzogZ2l0LWd1aS5zaDoyODc3CiBtc2dpZCAiUmVuYW1lLi4uIgogbXNnc3RyICJVbWJlbmVubmVuLi4uIgogCi0jOiBnaXQtZ3VpLnNoOjI1OTMKKyM6IGdpdC1ndWkuc2g6Mjg4MgogbXNnaWQgIkRlbGV0ZS4uLiIKIG1zZ3N0ciAiTMO2c2NoZW4uLi4iCiAKLSM6IGdpdC1ndWkuc2g6MjU5OAorIzogZ2l0LWd1aS5zaDoyODg3CiBtc2dpZCAiUmVzZXQuLi4iCi1tc2dzdHIgIlp1csO8Y2tzZXR6ZW4uLi4iCittc2dzdHIgIsOEbmRlcnVuZ2VuIHZlcndlcmZlbi4uLiIKIAotIzogZ2l0LWd1aS5zaDoyNjA4CisjOiBnaXQtZ3VpLnNoOjI4OTcKIG1zZ2lkICJEb25lIgogbXNnc3RyICJGZXJ0aWciCiAKLSM6IGdpdC1ndWkuc2g6MjYxMAorIzogZ2l0LWd1aS5zaDoyODk5CiBtc2dpZCAiQ29tbWl0QEB2ZXJiIgotbXNnc3RyICJFaW50cmFnZW4iCittc2dzdHIgIkNvbW1pdHRlbiIKIAotIzogZ2l0LWd1aS5zaDoyNjE5IGdpdC1ndWkuc2g6MzA1MAotbXNnaWQgIk5ldyBDb21taXQiCi1tc2dzdHIgIk5ldWUgVmVyc2lvbiIKLQotIzogZ2l0LWd1aS5zaDoyNjI3IGdpdC1ndWkuc2g6MzA1NworIzogZ2l0LWd1aS5zaDoyOTA4IGdpdC1ndWkuc2g6MzQwMAogbXNnaWQgIkFtZW5kIExhc3QgQ29tbWl0IgotbXNnc3RyICJMZXR6dGUgbmFjaGJlc3Nlcm4iCittc2dzdHIgIkxldHp0ZW4gQ29tbWl0IG5hY2hiZXNzZXJuIgogCi0jOiBnaXQtZ3VpLnNoOjI2MzcgZ2l0LWd1aS5zaDozMDExIGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6OTkKKyM6IGdpdC1ndWkuc2g6MjkxOCBnaXQtZ3VpLnNoOjMzNjEgbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoxMDEKIG1zZ2lkICJSZXNjYW4iCiBtc2dzdHIgIk5ldSBsYWRlbiIKIAotIzogZ2l0LWd1aS5zaDoyNjQzCisjOiBnaXQtZ3VpLnNoOjI5MjQKIG1zZ2lkICJTdGFnZSBUbyBDb21taXQiCi1tc2dzdHIgIlp1bSBFaW50cmFnZW4gYmVyZWl0c3RlbGxlbiIKK21zZ3N0ciAiRsO8ciBDb21taXQgYmVyZWl0c3RlbGxlbiIKIAotIzogZ2l0LWd1aS5zaDoyNjQ5CisjOiBnaXQtZ3VpLnNoOjI5MzAKIG1zZ2lkICJTdGFnZSBDaGFuZ2VkIEZpbGVzIFRvIENvbW1pdCIKLW1zZ3N0ciAiR2XDpG5kZXJ0ZSBEYXRlaWVuIGJlcmVpdHN0ZWxsZW4iCittc2dzdHIgIkdlw6RuZGVydGUgRGF0ZWllbiBmw7xyIENvbW1pdCBiZXJlaXRzdGVsbGVuIgogCi0jOiBnaXQtZ3VpLnNoOjI2NTUKKyM6IGdpdC1ndWkuc2g6MjkzNgogbXNnaWQgIlVuc3RhZ2UgRnJvbSBDb21taXQiCi1tc2dzdHIgIkF1cyBkZXIgQmVyZWl0c3RlbGx1bmcgaGVyYXVzbmVobWVuIgorbXNnc3RyICJBdXMgQ29tbWl0LUJlcmVpdHN0ZWxsdW5nIGhlcmF1c25laG1lbiIKIAotIzogZ2l0LWd1aS5zaDoyNjYxIGxpYi9pbmRleC50Y2w6NDEyCisjOiBnaXQtZ3VpLnNoOjI5NDIgbGliL2luZGV4LnRjbDo1MjEKIG1zZ2lkICJSZXZlcnQgQ2hhbmdlcyIKIG1zZ3N0ciAiw4RuZGVydW5nZW4gdmVyd2VyZmVuIgogCi0jOiBnaXQtZ3VpLnNoOjI2NjkgZ2l0LWd1aS5zaDozMzEwIGdpdC1ndWkuc2g6MzM0MQorIzogZ2l0LWd1aS5zaDoyOTUwIGdpdC1ndWkuc2g6MzcwMCBnaXQtZ3VpLnNoOjM3MzEKIG1zZ2lkICJTaG93IExlc3MgQ29udGV4dCIKIG1zZ3N0ciAiV2VuaWdlciBaZWlsZW4gYW56ZWlnZW4iCiAKLSM6IGdpdC1ndWkuc2g6MjY3MyBnaXQtZ3VpLnNoOjMzMTQgZ2l0LWd1aS5zaDozMzQ1CisjOiBnaXQtZ3VpLnNoOjI5NTQgZ2l0LWd1aS5zaDozNzA0IGdpdC1ndWkuc2g6MzczNQogbXNnaWQgIlNob3cgTW9yZSBDb250ZXh0IgogbXNnc3RyICJNZWhyIFplaWxlbiBhbnplaWdlbiIKIAotIzogZ2l0LWd1aS5zaDoyNjgwIGdpdC1ndWkuc2g6MzAyNCBnaXQtZ3VpLnNoOjMxMzMKKyM6IGdpdC1ndWkuc2g6Mjk2MSBnaXQtZ3VpLnNoOjMzNzQgZ2l0LWd1aS5zaDozNDg1CiBtc2dpZCAiU2lnbiBPZmYiCiBtc2dzdHIgIkFiemVpY2huZW4iCiAKLSM6IGdpdC1ndWkuc2g6MjY5NgorIzogZ2l0LWd1aS5zaDoyOTc3CiBtc2dpZCAiTG9jYWwgTWVyZ2UuLi4iCiBtc2dzdHIgIkxva2FsZXMgWnVzYW1tZW5mw7xocmVuLi4uIgogCi0jOiBnaXQtZ3VpLnNoOjI3MDEKKyM6IGdpdC1ndWkuc2g6Mjk4MgogbXNnaWQgIkFib3J0IE1lcmdlLi4uIgogbXNnc3RyICJadXNhbW1lbmbDvGhyZW4gYWJicmVjaGVuLi4uIgogCi0jOiBnaXQtZ3VpLnNoOjI3MTMgZ2l0LWd1aS5zaDoyNzQxCisjOiBnaXQtZ3VpLnNoOjI5OTQgZ2l0LWd1aS5zaDozMDIyCiBtc2dpZCAiQWRkLi4uIgotbXNnc3RyICJIaW56dWbDvGdlbi4uLiIKK21zZ3N0ciAiTmV1ZXMgaGluenVmw7xnZW4uLi4iCiAKLSM6IGdpdC1ndWkuc2g6MjcxNworIzogZ2l0LWd1aS5zaDoyOTk4CiBtc2dpZCAiUHVzaC4uLiIKIG1zZ3N0ciAiVmVyc2VuZGVuLi4uIgogCi0jOiBnaXQtZ3VpLnNoOjI3MjEKKyM6IGdpdC1ndWkuc2g6MzAwMgogbXNnaWQgIkRlbGV0ZSBCcmFuY2guLi4iCi1tc2dzdHIgIlp3ZWlnIGzDtnNjaGVuLi4uIgorbXNnc3RyICJCcmFuY2ggbMO2c2NoZW4uLi4iCiAKLSM6IGdpdC1ndWkuc2g6MjczMSBnaXQtZ3VpLnNoOjMyOTIKKyM6IGdpdC1ndWkuc2g6MzAxMiBnaXQtZ3VpLnNoOjM2NjYKIG1zZ2lkICJPcHRpb25zLi4uIgogbXNnc3RyICJPcHRpb25lbi4uLiIKIAotIzogZ2l0LWd1aS5zaDoyNzQyCisjOiBnaXQtZ3VpLnNoOjMwMjMKIG1zZ2lkICJSZW1vdmUuLi4iCiBtc2dzdHIgIkVudGZlcm5lbi4uLiIKIAotIzogZ2l0LWd1aS5zaDoyNzUxIGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTAKKyM6IGdpdC1ndWkuc2g6MzAzMiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjY3CiBtc2dpZCAiSGVscCIKIG1zZ3N0ciAiSGlsZmUiCiAKLSM6IGdpdC1ndWkuc2g6Mjc1NSBnaXQtZ3VpLnNoOjI3NTkgbGliL2Fib3V0LnRjbDoxNAotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0NCBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjUzCisjOiBnaXQtZ3VpLnNoOjMwMzYgZ2l0LWd1aS5zaDozMDQwIGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjEKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NzAgbGliL2Fib3V0LnRjbDoxNAogIywgdGNsLWZvcm1hdAogbXNnaWQgIkFib3V0ICVzIgogbXNnc3RyICLDnGJlciAlcyIKIAotIzogZ2l0LWd1aS5zaDoyNzgzCisjOiBnaXQtZ3VpLnNoOjMwNjQKIG1zZ2lkICJPbmxpbmUgRG9jdW1lbnRhdGlvbiIKIG1zZ3N0ciAiT25saW5lLURva3VtZW50YXRpb24iCiAKLSM6IGdpdC1ndWkuc2g6Mjc4NiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjQ3IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTYKKyM6IGdpdC1ndWkuc2g6MzA2NyBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjY0IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NzMKIG1zZ2lkICJTaG93IFNTSCBLZXkiCiBtc2dzdHIgIlNTSC1TY2hsw7xzc2VsIGFuemVpZ2VuIgogCi0jOiBnaXQtZ3VpLnNoOjI4OTMKKyM6IGdpdC1ndWkuc2g6MzA5NyBnaXQtZ3VpLnNoOjMyMjkKK21zZ2lkICJ1c2FnZToiCittc2dzdHIgIlZlcndlbmR1bmc6IgorCisjOiBnaXQtZ3VpLnNoOjMxMDEgZ2l0LWd1aS5zaDozMjMzCittc2dpZCAiVXNhZ2UiCittc2dzdHIgIlZlcndlbmR1bmciCisKKyM6IGdpdC1ndWkuc2g6MzE4MiBsaWIvYmxhbWUudGNsOjU3NQorbXNnaWQgIkVycm9yIgorbXNnc3RyICJGZWhsZXIiCisKKyM6IGdpdC1ndWkuc2g6MzIxMwogIywgdGNsLWZvcm1hdAogbXNnaWQgImZhdGFsOiBjYW5ub3Qgc3RhdCBwYXRoICVzOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5IgogbXNnc3RyICIiCiAiRmVobGVyOiBWZXJ6ZWljaG5pcyDCuyVzwqsga2FubiBuaWNodCBnZWxlc2VuIHdlcmRlbjogRGF0ZWkgb2RlciBWZXJ6ZWljaG5pcyAiCiAibmljaHQgZ2VmdW5kZW4iCiAKLSM6IGdpdC1ndWkuc2g6MjkyNgorIzogZ2l0LWd1aS5zaDozMjQ2CiBtc2dpZCAiQ3VycmVudCBCcmFuY2g6IgotbXNnc3RyICJBa3R1ZWxsZXIgWndlaWc6IgorbXNnc3RyICJBa3R1ZWxsZXIgQnJhbmNoOiIKIAotIzogZ2l0LWd1aS5zaDoyOTQ3Ci1tc2dpZCAiU3RhZ2VkIENoYW5nZXMgKFdpbGwgQ29tbWl0KSIKLW1zZ3N0ciAiQmVyZWl0c3RlbGx1bmcgKHp1bSBFaW50cmFnZW4pIgotCi0jOiBnaXQtZ3VpLnNoOjI5NjcKKyM6IGdpdC1ndWkuc2g6MzI3MQogbXNnaWQgIlVuc3RhZ2VkIENoYW5nZXMiCiBtc2dzdHIgIk5pY2h0IGJlcmVpdGdlc3RlbGx0ZSDDhG5kZXJ1bmdlbiIKIAotIzogZ2l0LWd1aS5zaDozMDE3CisjOiBnaXQtZ3VpLnNoOjMyOTMKK21zZ2lkICJTdGFnZWQgQ2hhbmdlcyAoV2lsbCBDb21taXQpIgorbXNnc3RyICJCZXJlaXRzdGVsbHVuZyAoenVtIENvbW1pdHRlbikiCisKKyM6IGdpdC1ndWkuc2g6MzM2NwogbXNnaWQgIlN0YWdlIENoYW5nZWQiCiBtc2dzdHIgIkFsbGVzIGJlcmVpdHN0ZWxsZW4iCiAKLSM6IGdpdC1ndWkuc2g6MzAzNiBsaWIvdHJhbnNwb3J0LnRjbDoxMDQgbGliL3RyYW5zcG9ydC50Y2w6MTkzCisjOiBnaXQtZ3VpLnNoOjMzODYgbGliL3RyYW5zcG9ydC50Y2w6MTM3CiBtc2dpZCAiUHVzaCIKIG1zZ3N0ciAiVmVyc2VuZGVuIgogCi0jOiBnaXQtZ3VpLnNoOjMwNzEKKyM6IGdpdC1ndWkuc2g6MzQxMwogbXNnaWQgIkluaXRpYWwgQ29tbWl0IE1lc3NhZ2U6IgotbXNnc3RyICJFcnN0ZSBWZXJzaW9uc2Jlc2NocmVpYnVuZzoiCittc2dzdHIgIkVyc3RlIENvbW1pdC1CZXNjaHJlaWJ1bmc6IgogCi0jOiBnaXQtZ3VpLnNoOjMwNzIKKyM6IGdpdC1ndWkuc2g6MzQxNAogbXNnaWQgIkFtZW5kZWQgQ29tbWl0IE1lc3NhZ2U6IgogbXNnc3RyICJOYWNoZ2ViZXNzZXJ0ZSBCZXNjaHJlaWJ1bmc6IgogCi0jOiBnaXQtZ3VpLnNoOjMwNzMKKyM6IGdpdC1ndWkuc2g6MzQxNQogbXNnaWQgIkFtZW5kZWQgSW5pdGlhbCBDb21taXQgTWVzc2FnZToiCiBtc2dzdHIgIk5hY2hnZWJlc3NlcnRlIGVyc3RlIEJlc2NocmVpYnVuZzoiCiAKLSM6IGdpdC1ndWkuc2g6MzA3NAorIzogZ2l0LWd1aS5zaDozNDE2CiBtc2dpZCAiQW1lbmRlZCBNZXJnZSBDb21taXQgTWVzc2FnZToiCiBtc2dzdHIgIk5hY2hnZWJlc3NlcnRlIFp1c2FtbWVuZsO8aHJ1bmdzLUJlc2NocmVpYnVuZzoiCiAKLSM6IGdpdC1ndWkuc2g6MzA3NQorIzogZ2l0LWd1aS5zaDozNDE3CiBtc2dpZCAiTWVyZ2UgQ29tbWl0IE1lc3NhZ2U6IgogbXNnc3RyICJadXNhbW1lbmbDvGhydW5ncy1CZXNjaHJlaWJ1bmc6IgogCi0jOiBnaXQtZ3VpLnNoOjMwNzYKKyM6IGdpdC1ndWkuc2g6MzQxOAogbXNnaWQgIkNvbW1pdCBNZXNzYWdlOiIKLW1zZ3N0ciAiVmVyc2lvbnNiZXNjaHJlaWJ1bmc6IgorbXNnc3RyICJDb21taXQtQmVzY2hyZWlidW5nOiIKIAotIzogZ2l0LWd1aS5zaDozMTI1IGdpdC1ndWkuc2g6MzI2NyBsaWIvY29uc29sZS50Y2w6NzMKKyM6IGdpdC1ndWkuc2g6MzQ3NyBnaXQtZ3VpLnNoOjM2NDEgbGliL2NvbnNvbGUudGNsOjczCiBtc2dpZCAiQ29weSBBbGwiCiBtc2dzdHIgIkFsbGUga29waWVyZW4iCiAKLSM6IGdpdC1ndWkuc2g6MzE0OSBsaWIvYmxhbWUudGNsOjEwNAorIzogZ2l0LWd1aS5zaDozNTAxIGxpYi9ibGFtZS50Y2w6MTA2CiBtc2dpZCAiRmlsZToiCiBtc2dzdHIgIkRhdGVpOiIKIAotIzogZ2l0LWd1aS5zaDozMjU1CisjOiBnaXQtZ3VpLnNoOjM1NDkgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMTAwCittc2dpZCAiT3BlbiIKK21zZ3N0ciAiw5ZmZm5lbiIKKworIzogZ2l0LWd1aS5zaDozNjI5CiBtc2dpZCAiUmVmcmVzaCIKIG1zZ3N0ciAiQWt0dWFsaXNpZXJlbiIKIAotIzogZ2l0LWd1aS5zaDozMjc2CisjOiBnaXQtZ3VpLnNoOjM2NTAKIG1zZ2lkICJEZWNyZWFzZSBGb250IFNpemUiCiBtc2dzdHIgIlNjaHJpZnRncsO2w59lIHZlcmtsZWluZXJuIgogCi0jOiBnaXQtZ3VpLnNoOjMyODAKKyM6IGdpdC1ndWkuc2g6MzY1NAogbXNnaWQgIkluY3JlYXNlIEZvbnQgU2l6ZSIKIG1zZ3N0ciAiU2NocmlmdGdyw7bDn2UgdmVyZ3LDtsOfZXJuIgogCi0jOiBnaXQtZ3VpLnNoOjMyODggbGliL2JsYW1lLnRjbDoyODEKKyM6IGdpdC1ndWkuc2g6MzY2MiBsaWIvYmxhbWUudGNsOjI5NgogbXNnaWQgIkVuY29kaW5nIgogbXNnc3RyICJaZWljaGVua29kaWVydW5nIgogCi0jOiBnaXQtZ3VpLnNoOjMyOTkKKyM6IGdpdC1ndWkuc2g6MzY3MwogbXNnaWQgIkFwcGx5L1JldmVyc2UgSHVuayIKLW1zZ3N0ciAiS29udGV4dCBhbndlbmRlbi91bWtlaHJlbiIKK21zZ3N0ciAiUGF0Y2gtQmxvY2sgYW53ZW5kZW4venVyw7xja25laG1lbiIKIAotIzogZ2l0LWd1aS5zaDozMzA0CisjOiBnaXQtZ3VpLnNoOjM2NzgKIG1zZ2lkICJBcHBseS9SZXZlcnNlIExpbmUiCi1tc2dzdHIgIlplaWxlIGFud2VuZGVuL3Vta2VocmVuIgorbXNnc3RyICJaZWlsZSBhbndlbmRlbi96dXLDvGNrbmVobWVuIgogCi0jOiBnaXQtZ3VpLnNoOjMzMjMKKyM6IGdpdC1ndWkuc2g6MzY4NCBnaXQtZ3VpLnNoOjM3OTQgZ2l0LWd1aS5zaDozODA1Cittc2dpZCAiUmV2ZXJ0IEh1bmsiCittc2dzdHIgIlBhdGNoLUJsb2NrIHp1csO8Y2tuZWhtZW4iCisKKyM6IGdpdC1ndWkuc2g6MzY4OSBnaXQtZ3VpLnNoOjM4MDEgZ2l0LWd1aS5zaDozODEyCittc2dpZCAiUmV2ZXJ0IExpbmUiCittc2dzdHIgIlplaWxlbsOkbmRlcnVuZ2VuIHp1csO8Y2tuZWhtZW4iCisKKyM6IGdpdC1ndWkuc2g6MzY5NCBnaXQtZ3VpLnNoOjM3OTEKK21zZ2lkICJVbmRvIExhc3QgUmV2ZXJ0IgorbXNnc3RyICJMZXR6dGVzIFp1csO8Y2tuZWhtZW4gcsO8Y2tnw6RuZ2lnIgorCisjOiBnaXQtZ3VpLnNoOjM3MTMKIG1zZ2lkICJSdW4gTWVyZ2UgVG9vbCIKIG1zZ3N0ciAiWnVzYW1tZW5mw7xocnVuZ3N3ZXJremV1ZyIKIAotIzogZ2l0LWd1aS5zaDozMzI4CisjOiBnaXQtZ3VpLnNoOjM3MTgKIG1zZ2lkICJVc2UgUmVtb3RlIFZlcnNpb24iCiBtc2dzdHIgIkV4dGVybmUgVmVyc2lvbiBiZW51dHplbiIKIAotIzogZ2l0LWd1aS5zaDozMzMyCisjOiBnaXQtZ3VpLnNoOjM3MjIKIG1zZ2lkICJVc2UgTG9jYWwgVmVyc2lvbiIKIG1zZ3N0ciAiTG9rYWxlIFZlcnNpb24gYmVudXR6ZW4iCiAKLSM6IGdpdC1ndWkuc2g6MzMzNgorIzogZ2l0LWd1aS5zaDozNzI2CiBtc2dpZCAiUmV2ZXJ0IFRvIEJhc2UiCi1tc2dzdHIgIlVyc3Byw7xuZ2xpY2hlIFZlcnNpb24gYmVudXR6ZW4iCittc2dzdHIgIlp1csO8Y2tzZXR6ZW4gYXVmIHVyc3Byw7xuZ2xpY2hlbiBDb21taXQiCiAKLSM6IGdpdC1ndWkuc2g6MzM1NAorIzogZ2l0LWd1aS5zaDozNzQ0CiBtc2dpZCAiVmlzdWFsaXplIFRoZXNlIENoYW5nZXMgSW4gVGhlIFN1Ym1vZHVsZSIKLW1zZ3N0ciAiRGllc2Ugw4RuZGVydW5nZW4gaW0gVW50ZXJtb2R1bCBkYXJzdGVsbGVuIgorbXNnc3RyICJEaWVzZSDDhG5kZXJ1bmdlbiBpbSBTdWJtb2R1bCBkYXJzdGVsbGVuIgogCi0jOiBnaXQtZ3VpLnNoOjMzNTgKKyM6IGdpdC1ndWkuc2g6Mzc0OAogbXNnaWQgIlZpc3VhbGl6ZSBDdXJyZW50IEJyYW5jaCBIaXN0b3J5IEluIFRoZSBTdWJtb2R1bGUiCi1tc2dzdHIgIkFrdHVlbGxlbiBad2VpZyBpbSBVbnRlcm1vZHVsIGRhcnN0ZWxsZW4iCittc2dzdHIgIkFrdHVlbGxlbiBCcmFuY2ggaW0gU3VibW9kdWwgZGFyc3RlbGxlbiIKIAotIzogZ2l0LWd1aS5zaDozMzYyCisjOiBnaXQtZ3VpLnNoOjM3NTIKIG1zZ2lkICJWaXN1YWxpemUgQWxsIEJyYW5jaCBIaXN0b3J5IEluIFRoZSBTdWJtb2R1bGUiCi1tc2dzdHIgIkFsbGUgWndlaWdlIGltIFVudGVybW9kdWwgZGFyc3RlbGxlbiIKK21zZ3N0ciAiQWxsZSBCcmFuY2hlcyBpbSBTdWJtb2R1bCBkYXJzdGVsbGVuIgogCi0jOiBnaXQtZ3VpLnNoOjMzNjcKKyM6IGdpdC1ndWkuc2g6Mzc1NwogbXNnaWQgIlN0YXJ0IGdpdCBndWkgSW4gVGhlIFN1Ym1vZHVsZSIKLW1zZ3N0ciAiR2l0IGd1aSBpbSBVbnRlcm1vZHVsIHN0YXJ0ZW4iCittc2dzdHIgIkdpdCBndWkgaW0gU3VibW9kdWwgc3RhcnRlbiIKIAotIzogZ2l0LWd1aS5zaDozMzg5CisjOiBnaXQtZ3VpLnNoOjM3OTMKIG1zZ2lkICJVbnN0YWdlIEh1bmsgRnJvbSBDb21taXQiCi1tc2dzdHIgIktvbnRleHQgYXVzIEJlcmVpdHN0ZWxsdW5nIGhlcmF1c25laG1lbiIKK21zZ3N0ciAiUGF0Y2gtQmxvY2sgYXVzIEJlcmVpdHN0ZWxsdW5nIGhlcmF1c25laG1lbiIKIAotIzogZ2l0LWd1aS5zaDozMzkxCisjOiBnaXQtZ3VpLnNoOjM3OTcKIG1zZ2lkICJVbnN0YWdlIExpbmVzIEZyb20gQ29tbWl0IgogbXNnc3RyICJaZWlsZW4gYXVzIGRlciBCZXJlaXRzdGVsbHVuZyBoZXJhdXNuZWhtZW4iCiAKLSM6IGdpdC1ndWkuc2g6MzM5MworIzogZ2l0LWd1aS5zaDozNzk4IGdpdC1ndWkuc2g6MzgwOQorbXNnaWQgIlJldmVydCBMaW5lcyIKK21zZ3N0ciAiWmVpbGVuw6RuZGVydW5nIHp1csO8Y2tuZWhtZW4iCisKKyM6IGdpdC1ndWkuc2g6MzgwMAogbXNnaWQgIlVuc3RhZ2UgTGluZSBGcm9tIENvbW1pdCIKIG1zZ3N0ciAiWmVpbGUgYXVzIGRlciBCZXJlaXRzdGVsbHVuZyBoZXJhdXNuZWhtZW4iCiAKLSM6IGdpdC1ndWkuc2g6MzM5NgorIzogZ2l0LWd1aS5zaDozODA0CiBtc2dpZCAiU3RhZ2UgSHVuayBGb3IgQ29tbWl0IgotbXNnc3RyICJLb250ZXh0IHp1ciBCZXJlaXRzdGVsbHVuZyBoaW56dWbDvGdlbiIKK21zZ3N0ciAiUGF0Y2gtQmxvY2sgenVyIEJlcmVpdHN0ZWxsdW5nIGhpbnp1ZsO8Z2VuIgogCi0jOiBnaXQtZ3VpLnNoOjMzOTgKKyM6IGdpdC1ndWkuc2g6MzgwOAogbXNnaWQgIlN0YWdlIExpbmVzIEZvciBDb21taXQiCiBtc2dzdHIgIlplaWxlbiB6dXIgQmVyZWl0c3RlbGx1bmcgaGluenVmw7xnZW4iCiAKLSM6IGdpdC1ndWkuc2g6MzQwMAorIzogZ2l0LWd1aS5zaDozODExCiBtc2dpZCAiU3RhZ2UgTGluZSBGb3IgQ29tbWl0IgogbXNnc3RyICJaZWlsZSB6dXIgQmVyZWl0c3RlbGx1bmcgaGluenVmw7xnZW4iCiAKLSM6IGdpdC1ndWkuc2g6MzQyNAorIzogZ2l0LWd1aS5zaDozODYxCiBtc2dpZCAiSW5pdGlhbGl6aW5nLi4uIgogbXNnc3RyICJJbml0aWFsaXNpZXJlbi4uLiIKIAotIzogZ2l0LWd1aS5zaDozNTQxCisjOiBnaXQtZ3VpLnNoOjQwMTcKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICIiCiAiUG9zc2libGUgZW52aXJvbm1lbnQgaXNzdWVzIGV4aXN0LlxuIgpAQCAtNTQ4LDcgKzU5NCw3IEBACiAidm9uICVzIGFuIEdpdCB3ZWl0ZXJnZWdlYmVuIHdlcmRlbjpcbiIKICJcbiIKIAotIzogZ2l0LWd1aS5zaDozNTcwCisjOiBnaXQtZ3VpLnNoOjQwNDYKIG1zZ2lkICIiCiAiXG4iCiAiVGhpcyBpcyBkdWUgdG8gYSBrbm93biBpc3N1ZSB3aXRoIHRoZVxuIgpAQCAtNTU4LDcgKzYwNCw3IEBACiAiRGllcyBpc3QgZWluIGJla2FubnRlcyBQcm9ibGVtIGRlciBUY2wtVmVyc2lvbiwgZGllXG4iCiAiaW4gQ3lnd2luIG1pdGdlbGllZmVydCB3aXJkLiIKIAotIzogZ2l0LWd1aS5zaDozNTc1CisjOiBnaXQtZ3VpLnNoOjQwNTEKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC01NzQsMTc1MSArNjIwLDYgQEAKICJnZXfDvG5zY2h0ZW4gV2VydGUgZsO8ciBkaWUgRWluc3RlbGx1bmcgdXNlci5uYW1lIHVuZCBcbiIKICJ1c2VyLmVtYWlsIGluIElocmUgRGF0ZWkgfi8uZ2l0Y29uZmlnIGVpbmbDvGdlbi5cbiIKIAotIzogbGliL2Fib3V0LnRjbDoyNgotbXNnaWQgImdpdC1ndWkgLSBhIGdyYXBoaWNhbCB1c2VyIGludGVyZmFjZSBmb3IgR2l0LiIKLW1zZ3N0ciAiZ2l0LWd1aSAtIGVpbmUgZ3JhZmlzY2hlIE9iZXJmbMOkY2hlIGbDvHIgR2l0LiIKLQotIzogbGliL2JsYW1lLnRjbDo3MgotbXNnaWQgIkZpbGUgVmlld2VyIgotbXNnc3RyICJEYXRlaS1Ccm93c2VyIgotCi0jOiBsaWIvYmxhbWUudGNsOjc4Ci1tc2dpZCAiQ29tbWl0OiIKLW1zZ3N0ciAiVmVyc2lvbjoiCi0KLSM6IGxpYi9ibGFtZS50Y2w6MjcxCi1tc2dpZCAiQ29weSBDb21taXQiCi1tc2dzdHIgIlZlcnNpb24ga29waWVyZW4iCi0KLSM6IGxpYi9ibGFtZS50Y2w6Mjc1Ci1tc2dpZCAiRmluZCBUZXh0Li4uIgotbXNnc3RyICJUZXh0IHN1Y2hlbi4uLiIKLQotIzogbGliL2JsYW1lLnRjbDoyODQKLW1zZ2lkICJEbyBGdWxsIENvcHkgRGV0ZWN0aW9uIgotbXNnc3RyICJWb2xsZSBLb3BpZS1Fcmtlbm51bmciCi0KLSM6IGxpYi9ibGFtZS50Y2w6Mjg4Ci1tc2dpZCAiU2hvdyBIaXN0b3J5IENvbnRleHQiCi1tc2dzdHIgIkhpc3Rvcmllbi1Lb250ZXh0IGFuemVpZ2VuIgotCi0jOiBsaWIvYmxhbWUudGNsOjI5MQotbXNnaWQgIkJsYW1lIFBhcmVudCBDb21taXQiCi1tc2dzdHIgIkVsdGVybnZlcnNpb24gYW5ub3RpZXJlbiIKLQotIzogbGliL2JsYW1lLnRjbDo0NTAKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJSZWFkaW5nICVzLi4uIgotbXNnc3RyICIlcyBsZXNlbi4uLiIKLQotIzogbGliL2JsYW1lLnRjbDo1NTcKLW1zZ2lkICJMb2FkaW5nIGNvcHkvbW92ZSB0cmFja2luZyBhbm5vdGF0aW9ucy4uLiIKLW1zZ3N0ciAiQW5ub3RpZXJ1bmdlbiBmw7xyIEtvcGllcmVuL1ZlcnNjaGllYmVuIHdlcmRlbiBnZWxhZGVuLi4uIgotCi0jOiBsaWIvYmxhbWUudGNsOjU3NwotbXNnaWQgImxpbmVzIGFubm90YXRlZCIKLW1zZ3N0ciAiWmVpbGVuIGFubm90aWVydCIKLQotIzogbGliL2JsYW1lLnRjbDo3NjkKLW1zZ2lkICJMb2FkaW5nIG9yaWdpbmFsIGxvY2F0aW9uIGFubm90YXRpb25zLi4uIgotbXNnc3RyICJBbm5vdGllcnVuZ2VuIGbDvHIgdXJzcHLDvG5nbGljaGVuIE9ydCB3ZXJkZW4gZ2VsYWRlbi4uLiIKLQotIzogbGliL2JsYW1lLnRjbDo3NzIKLW1zZ2lkICJBbm5vdGF0aW9uIGNvbXBsZXRlLiIKLW1zZ3N0ciAiQW5ub3RpZXJ1bmcgdm9sbHN0w6RuZGlnLiIKLQotIzogbGliL2JsYW1lLnRjbDo4MDIKLW1zZ2lkICJCdXN5IgotbXNnc3RyICJWZXJhcmJlaXR1bmcgbMOkdWZ0IgotCi0jOiBsaWIvYmxhbWUudGNsOjgwMwotbXNnaWQgIkFubm90YXRpb24gcHJvY2VzcyBpcyBhbHJlYWR5IHJ1bm5pbmcuIgotbXNnc3RyICJBbm5vdGllcnVuZyBsw6R1ZnQgYmVyZWl0cy4iCi0KLSM6IGxpYi9ibGFtZS50Y2w6ODQyCi1tc2dpZCAiUnVubmluZyB0aG9yb3VnaCBjb3B5IGRldGVjdGlvbi4uLiIKLW1zZ3N0ciAiSW50ZW5zaXZlIEtvcGllLUVya2VubnVuZyBsw6R1ZnQuLi4iCi0KLSM6IGxpYi9ibGFtZS50Y2w6OTEwCi1tc2dpZCAiTG9hZGluZyBhbm5vdGF0aW9uLi4uIgotbXNnc3RyICJBbm5vdGllcnVuZyBsYWRlbi4uLiIKLQotIzogbGliL2JsYW1lLnRjbDo5NjMKLW1zZ2lkICJBdXRob3I6IgotbXNnc3RyICJBdXRvcjoiCi0KLSM6IGxpYi9ibGFtZS50Y2w6OTY3Ci1tc2dpZCAiQ29tbWl0dGVyOiIKLW1zZ3N0ciAiRWludHJhZ2VuZGVyOiIKLQotIzogbGliL2JsYW1lLnRjbDo5NzIKLW1zZ2lkICJPcmlnaW5hbCBGaWxlOiIKLW1zZ3N0ciAiVXJzcHLDvG5nbGljaGUgRGF0ZWk6IgotCi0jOiBsaWIvYmxhbWUudGNsOjEwMjAKLW1zZ2lkICJDYW5ub3QgZmluZCBIRUFEIGNvbW1pdDoiCi1tc2dzdHIgIlp3ZWlnc3BpdHplICjCu0hFQUTCqykga2FubiBuaWNodCBnZWZ1bmRlbiB3ZXJkZW46IgotCi0jOiBsaWIvYmxhbWUudGNsOjEwNzUKLW1zZ2lkICJDYW5ub3QgZmluZCBwYXJlbnQgY29tbWl0OiIKLW1zZ3N0ciAiRWx0ZXJudmVyc2lvbiBrYW5uIG5pY2h0IGdlZnVuZGVuIHdlcmRlbjoiCi0KLSM6IGxpYi9ibGFtZS50Y2w6MTA5MAotbXNnaWQgIlVuYWJsZSB0byBkaXNwbGF5IHBhcmVudCIKLW1zZ3N0ciAiRWx0ZXJudmVyc2lvbiBrYW5uIG5pY2h0IGFuZ2V6ZWlndCB3ZXJkZW4iCi0KLSM6IGxpYi9ibGFtZS50Y2w6MTA5MSBsaWIvZGlmZi50Y2w6MzIwCi1tc2dpZCAiRXJyb3IgbG9hZGluZyBkaWZmOiIKLW1zZ3N0ciAiRmVobGVyIGJlaW0gTGFkZW4gZGVzIFZlcmdsZWljaHM6IgotCi0jOiBsaWIvYmxhbWUudGNsOjEyMzEKLW1zZ2lkICJPcmlnaW5hbGx5IEJ5OiIKLW1zZ3N0ciAiVXJzcHLDvG5nbGljaCB2b246IgotCi0jOiBsaWIvYmxhbWUudGNsOjEyMzcKLW1zZ2lkICJJbiBGaWxlOiIKLW1zZ3N0ciAiSW4gRGF0ZWk6IgotCi0jOiBsaWIvYmxhbWUudGNsOjEyNDIKLW1zZ2lkICJDb3BpZWQgT3IgTW92ZWQgSGVyZSBCeToiCi1tc2dzdHIgIktvcGllcnQgb2RlciB2ZXJzY2hvYmVuIGR1cmNoOiIKLQotIzogbGliL2JyYW5jaF9jaGVja291dC50Y2w6MTQgbGliL2JyYW5jaF9jaGVja291dC50Y2w6MTkKLW1zZ2lkICJDaGVja291dCBCcmFuY2giCi1tc2dzdHIgIkF1ZiBad2VpZyB1bXN0ZWxsZW4iCi0KLSM6IGxpYi9icmFuY2hfY2hlY2tvdXQudGNsOjIzCi1tc2dpZCAiQ2hlY2tvdXQiCi1tc2dzdHIgIlVtc3RlbGxlbiIKLQotIzogbGliL2JyYW5jaF9jaGVja291dC50Y2w6MjcgbGliL2JyYW5jaF9jcmVhdGUudGNsOjM1Ci0jOiBsaWIvYnJhbmNoX2RlbGV0ZS50Y2w6MzIgbGliL2JyYW5jaF9yZW5hbWUudGNsOjMwIGxpYi9icm93c2VyLnRjbDoyODIKLSM6IGxpYi9jaGVja291dF9vcC50Y2w6NTc5IGxpYi9jaG9vc2VfZm9udC50Y2w6NDMgbGliL21lcmdlLnRjbDoxNzIKLSM6IGxpYi9vcHRpb24udGNsOjEyNSBsaWIvcmVtb3RlX2FkZC50Y2w6MzIgbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDo0MgotIzogbGliL3Rvb2xzX2RsZy50Y2w6NDAgbGliL3Rvb2xzX2RsZy50Y2w6MjA0IGxpYi90b29sc19kbGcudGNsOjM1MgotIzogbGliL3RyYW5zcG9ydC50Y2w6MTA4Ci1tc2dpZCAiQ2FuY2VsIgotbXNnc3RyICJBYmJyZWNoZW4iCi0KLSM6IGxpYi9icmFuY2hfY2hlY2tvdXQudGNsOjMyIGxpYi9icm93c2VyLnRjbDoyODcgbGliL3Rvb2xzX2RsZy50Y2w6MzI4Ci1tc2dpZCAiUmV2aXNpb24iCi1tc2dzdHIgIlZlcnNpb24iCi0KLSM6IGxpYi9icmFuY2hfY2hlY2tvdXQudGNsOjM2IGxpYi9icmFuY2hfY3JlYXRlLnRjbDo2OSBsaWIvb3B0aW9uLnRjbDoyODAKLW1zZ2lkICJPcHRpb25zIgotbXNnc3RyICJPcHRpb25lbiIKLQotIzogbGliL2JyYW5jaF9jaGVja291dC50Y2w6MzkgbGliL2JyYW5jaF9jcmVhdGUudGNsOjkyCi1tc2dpZCAiRmV0Y2ggVHJhY2tpbmcgQnJhbmNoIgotbXNnc3RyICLDnGJlcm5haG1lendlaWcgYW5mb3JkZXJuIgotCi0jOiBsaWIvYnJhbmNoX2NoZWNrb3V0LnRjbDo0NAotbXNnaWQgIkRldGFjaCBGcm9tIExvY2FsIEJyYW5jaCIKLW1zZ3N0ciAiVmVyYmluZHVuZyB6dSBsb2thbGVtIFp3ZWlnIGzDtnNlbiIKLQotIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjIyCi1tc2dpZCAiQ3JlYXRlIEJyYW5jaCIKLW1zZ3N0ciAiWndlaWcgZXJzdGVsbGVuIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MjcKLW1zZ2lkICJDcmVhdGUgTmV3IEJyYW5jaCIKLW1zZ3N0ciAiTmV1ZW4gWndlaWcgZXJzdGVsbGVuIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MzEgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDozODEKLW1zZ2lkICJDcmVhdGUiCi1tc2dzdHIgIkVyc3RlbGxlbiIKLQotIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjQwCi1tc2dpZCAiQnJhbmNoIE5hbWUiCi1tc2dzdHIgIlp3ZWlnbmFtZSIKLQotIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjQzIGxpYi9yZW1vdGVfYWRkLnRjbDozOSBsaWIvdG9vbHNfZGxnLnRjbDo1MAotbXNnaWQgIk5hbWU6IgotbXNnc3RyICJOYW1lOiIKLQotIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjU4Ci1tc2dpZCAiTWF0Y2ggVHJhY2tpbmcgQnJhbmNoIE5hbWUiCi1tc2dzdHIgIlBhc3NlbmQgenUgw5xiZXJuYWhtZXp3ZWlnLU5hbWUiCi0KLSM6IGxpYi9icmFuY2hfY3JlYXRlLnRjbDo2NgotbXNnaWQgIlN0YXJ0aW5nIFJldmlzaW9uIgotbXNnc3RyICJBbmZhbmdzdmVyc2lvbiIKLQotIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjcyCi1tc2dpZCAiVXBkYXRlIEV4aXN0aW5nIEJyYW5jaDoiCi1tc2dzdHIgIkV4aXN0aWVyZW5kZW4gWndlaWcgYWt0dWFsaXNpZXJlbjoiCi0KLSM6IGxpYi9icmFuY2hfY3JlYXRlLnRjbDo3NQotbXNnaWQgIk5vIgotbXNnc3RyICJOZWluIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6ODAKLW1zZ2lkICJGYXN0IEZvcndhcmQgT25seSIKLW1zZ3N0ciAiTnVyIFNjaG5lbGx6dXNhbW1lbmbDvGhydW5nIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6ODUgbGliL2NoZWNrb3V0X29wLnRjbDo1NzEKLW1zZ2lkICJSZXNldCIKLW1zZ3N0ciAiWnVyw7xja3NldHplbiIKLQotIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjk3Ci1tc2dpZCAiQ2hlY2tvdXQgQWZ0ZXIgQ3JlYXRpb24iCi1tc2dzdHIgIkFyYmVpdHNrb3BpZSB1bXN0ZWxsZW4gbmFjaCBFcnN0ZWxsZW4iCi0KLSM6IGxpYi9icmFuY2hfY3JlYXRlLnRjbDoxMzEKLW1zZ2lkICJQbGVhc2Ugc2VsZWN0IGEgdHJhY2tpbmcgYnJhbmNoLiIKLW1zZ3N0ciAiQml0dGUgd8OkaGxlbiBTaWUgZWluZW4gw5xiZXJuYWhtZXp3ZWlnLiIKLQotIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjE0MAotIywgdGNsLWZvcm1hdAotbXNnaWQgIlRyYWNraW5nIGJyYW5jaCAlcyBpcyBub3QgYSBicmFuY2ggaW4gdGhlIHJlbW90ZSByZXBvc2l0b3J5LiIKLW1zZ3N0ciAiw5xiZXJuYWhtZXp3ZWlnIMK7JXPCqyBpc3Qga2VpbiBad2VpZyBpbSBleHRlcm5lbiBQcm9qZWt0YXJjaGl2LiIKLQotIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjE1MyBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6ODYKLW1zZ2lkICJQbGVhc2Ugc3VwcGx5IGEgYnJhbmNoIG5hbWUuIgotbXNnc3RyICJCaXR0ZSBnZWJlbiBTaWUgZWluZW4gWndlaWduYW1lbiBhbi4iCi0KLSM6IGxpYi9icmFuY2hfY3JlYXRlLnRjbDoxNjQgbGliL2JyYW5jaF9yZW5hbWUudGNsOjEwNgotIywgdGNsLWZvcm1hdAotbXNnaWQgIiclcycgaXMgbm90IGFuIGFjY2VwdGFibGUgYnJhbmNoIG5hbWUuIgotbXNnc3RyICLCuyVzwqsgaXN0IGtlaW4genVsw6Rzc2lnZXIgWndlaWduYW1lLiIKLQotIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjE1Ci1tc2dpZCAiRGVsZXRlIEJyYW5jaCIKLW1zZ3N0ciAiWndlaWcgbMO2c2NoZW4iCi0KLSM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDoyMAotbXNnaWQgIkRlbGV0ZSBMb2NhbCBCcmFuY2giCi1tc2dzdHIgIkxva2FsZW4gWndlaWcgbMO2c2NoZW4iCi0KLSM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDozNwotbXNnaWQgIkxvY2FsIEJyYW5jaGVzIgotbXNnc3RyICJMb2thbGUgWndlaWdlIgotCi0jOiBsaWIvYnJhbmNoX2RlbGV0ZS50Y2w6NTIKLW1zZ2lkICJEZWxldGUgT25seSBJZiBNZXJnZWQgSW50byIKLW1zZ3N0ciAiTnVyIGzDtnNjaGVuLCB3ZW5uIHp1c2FtbWVuZ2Vmw7xocnQgbmFjaCIKLQotIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjU0IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MTE5Ci1tc2dpZCAiQWx3YXlzIChEbyBub3QgcGVyZm9ybSBtZXJnZSBjaGVja3MpIgotbXNnc3RyICJJbW1lciAoS2VpbmUgWnVzYW1tZW5mw7xocnVuZ3NwcsO8ZnVuZykiCi0KLSM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDoxMDMKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJUaGUgZm9sbG93aW5nIGJyYW5jaGVzIGFyZSBub3QgY29tcGxldGVseSBtZXJnZWQgaW50byAlczoiCi1tc2dzdHIgIkZvbGdlbmRlIFp3ZWlnZSBzaW5kIG5vY2ggbmljaHQgbWl0IMK7JXPCqyB6dXNhbW1lbmdlZsO8aHJ0OiIKLQotIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjExNSBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjIxNwotbXNnaWQgIiIKLSJSZWNvdmVyaW5nIGRlbGV0ZWQgYnJhbmNoZXMgaXMgZGlmZmljdWx0LlxuIgotIlxuIgotIkRlbGV0ZSB0aGUgc2VsZWN0ZWQgYnJhbmNoZXM/IgotbXNnc3RyICIiCi0iRGFzIFdpZWRlcmhlcnN0ZWxsZW4gdm9uIGdlbMO2c2NodGVuIFp3ZWlnZW4gaXN0IG51ciBtaXQgZ3LDtsOfZXJlbSBBdWZ3YW5kICIKLSJtw7ZnbGljaC5cbiIKLSJcbiIKLSJTb2xsZW4gZGllIGF1c2dld8OkaGx0ZW4gWndlaWdlIGdlbMO2c2NodCB3ZXJkZW4/IgotCi0jOiBsaWIvYnJhbmNoX2RlbGV0ZS50Y2w6MTQxCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiIgotIkZhaWxlZCB0byBkZWxldGUgYnJhbmNoZXM6XG4iCi0iJXMiCi1tc2dzdHIgIiIKLSJGZWhsZXIgYmVpbSBMw7ZzY2hlbiBkZXIgWndlaWdlOlxuIgotIiVzIgotCi0jOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MTQgbGliL2JyYW5jaF9yZW5hbWUudGNsOjIyCi1tc2dpZCAiUmVuYW1lIEJyYW5jaCIKLW1zZ3N0ciAiWndlaWcgdW1iZW5lbm5lbiIKLQotIzogbGliL2JyYW5jaF9yZW5hbWUudGNsOjI2Ci1tc2dpZCAiUmVuYW1lIgotbXNnc3RyICJVbWJlbmVubmVuIgotCi0jOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MzYKLW1zZ2lkICJCcmFuY2g6IgotbXNnc3RyICJad2VpZzoiCi0KLSM6IGxpYi9icmFuY2hfcmVuYW1lLnRjbDozOQotbXNnaWQgIk5ldyBOYW1lOiIKLW1zZ3N0ciAiTmV1ZXIgTmFtZToiCi0KLSM6IGxpYi9icmFuY2hfcmVuYW1lLnRjbDo3NQotbXNnaWQgIlBsZWFzZSBzZWxlY3QgYSBicmFuY2ggdG8gcmVuYW1lLiIKLW1zZ3N0ciAiQml0dGUgd8OkaGxlbiBTaWUgZWluZW4gWndlaWcgenVtIHVtYmVuZW5uZW4uIgotCi0jOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6OTYgbGliL2NoZWNrb3V0X29wLnRjbDoyMDIKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJCcmFuY2ggJyVzJyBhbHJlYWR5IGV4aXN0cy4iCi1tc2dzdHIgIlp3ZWlnIMK7JXPCqyBleGlzdGllcnQgYmVyZWl0cy4iCi0KLSM6IGxpYi9icmFuY2hfcmVuYW1lLnRjbDoxMTcKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJGYWlsZWQgdG8gcmVuYW1lICclcycuIgotbXNnc3RyICJGZWhsZXIgYmVpbSBVbWJlbmVubmVuIHZvbiDCuyVzwqsuIgotCi0jOiBsaWIvYnJvd3Nlci50Y2w6MTcKLW1zZ2lkICJTdGFydGluZy4uLiIKLW1zZ3N0ciAiU3RhcnRlbi4uLiIKLQotIzogbGliL2Jyb3dzZXIudGNsOjI2Ci1tc2dpZCAiRmlsZSBCcm93c2VyIgotbXNnc3RyICJEYXRlaS1Ccm93c2VyIgotCi0jOiBsaWIvYnJvd3Nlci50Y2w6MTI2IGxpYi9icm93c2VyLnRjbDoxNDMKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJMb2FkaW5nICVzLi4uIgotbXNnc3RyICIlcyBsYWRlbi4uLiIKLQotIzogbGliL2Jyb3dzZXIudGNsOjE4NwotbXNnaWQgIltVcCBUbyBQYXJlbnRdIgotbXNnc3RyICJbTmFjaCBvYmVuXSIKLQotIzogbGliL2Jyb3dzZXIudGNsOjI2NyBsaWIvYnJvd3Nlci50Y2w6MjczCi1tc2dpZCAiQnJvd3NlIEJyYW5jaCBGaWxlcyIKLW1zZ3N0ciAiRGF0ZWllbiBkZXMgWndlaWdzIGR1cmNoYmzDpHR0ZXJuIgotCi0jOiBsaWIvYnJvd3Nlci50Y2w6Mjc4IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6Mzk4Ci0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjQ4NiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjQ5NwotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMDI4Ci1tc2dpZCAiQnJvd3NlIgotbXNnc3RyICJCbMOkdHRlcm4iCi0KLSM6IGxpYi9jaGVja291dF9vcC50Y2w6ODUKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJGZXRjaGluZyAlcyBmcm9tICVzIgotbXNnc3RyICLDhG5kZXJ1bmdlbiDCuyVzwqsgdm9uIMK7JXPCqyBhbmZvcmRlcm4iCi0KLSM6IGxpYi9jaGVja291dF9vcC50Y2w6MTMzCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiZmF0YWw6IENhbm5vdCByZXNvbHZlICVzIgotbXNnc3RyICJGZWhsZXI6IMK7JXPCqyBrYW5uIG5pY2h0IGFscyBad2VpZyBvZGVyIFZlcnNpb24gZXJrYW5udCB3ZXJkZW4iCi0KLSM6IGxpYi9jaGVja291dF9vcC50Y2w6MTQ2IGxpYi9jb25zb2xlLnRjbDo4MSBsaWIvZGF0YWJhc2UudGNsOjMxCi0jOiBsaWIvc3Noa2V5LnRjbDo1MwotbXNnaWQgIkNsb3NlIgotbXNnc3RyICJTY2hsaWXDn2VuIgotCi0jOiBsaWIvY2hlY2tvdXRfb3AudGNsOjE3NQotIywgdGNsLWZvcm1hdAotbXNnaWQgIkJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0LiIKLW1zZ3N0ciAiWndlaWcgwrslc8KrIGV4aXN0aWVydCBuaWNodC4iCi0KLSM6IGxpYi9jaGVja291dF9vcC50Y2w6MTk0Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIGNvbmZpZ3VyZSBzaW1wbGlmaWVkIGdpdC1wdWxsIGZvciAnJXMnLiIKLW1zZ3N0ciAiRmVobGVyIGJlaW0gRWlucmljaHRlbiBkZXIgdmVyZWluZmFjaHRlbiBnaXQtcHVsbCBmw7xyIMK7JXPCqy4iCi0KLSM6IGxpYi9jaGVja291dF9vcC50Y2w6MjI5Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiIgotIkJyYW5jaCAnJXMnIGFscmVhZHkgZXhpc3RzLlxuIgotIlxuIgotIkl0IGNhbm5vdCBmYXN0LWZvcndhcmQgdG8gJXMuXG4iCi0iQSBtZXJnZSBpcyByZXF1aXJlZC4iCi1tc2dzdHIgIiIKLSJad2VpZyDCuyVzwqsgZXhpc3RpZXJ0IGJlcmVpdHMuXG4iCi0iXG4iCi0iWndlaWcga2FubiBuaWNodCBtaXQgwrslc8KrIHNjaG5lbGx6dXNhbW1lbmdlZsO8aHJ0IHdlcmRlbi4gUmVndWzDpHJlcyAiCi0iWnVzYW1tZW5mw7xocmVuIGlzdCBub3R3ZW5kaWcuIgotCi0jOiBsaWIvY2hlY2tvdXRfb3AudGNsOjI0MwotIywgdGNsLWZvcm1hdAotbXNnaWQgIk1lcmdlIHN0cmF0ZWd5ICclcycgbm90IHN1cHBvcnRlZC4iCi1tc2dzdHIgIlp1c2FtbWVuZsO8aHJ1bmdzbWV0aG9kZSDCuyVzwqsgbmljaHQgdW50ZXJzdMO8dHp0LiIKLQotIzogbGliL2NoZWNrb3V0X29wLnRjbDoyNjIKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJGYWlsZWQgdG8gdXBkYXRlICclcycuIgotbXNnc3RyICJBa3R1YWxpc2llcmVuIHZvbiDCuyVzwqsgZmVobGdlc2NobGFnZW4uIgotCi0jOiBsaWIvY2hlY2tvdXRfb3AudGNsOjI3NAotbXNnaWQgIlN0YWdpbmcgYXJlYSAoaW5kZXgpIGlzIGFscmVhZHkgbG9ja2VkLiIKLW1zZ3N0ciAiQmVyZWl0c3RlbGx1bmcgKMK7aW5kZXjCqykgaXN0IHp1ciBCZWFyYmVpdHVuZyBnZXNwZXJydCAowrtsb2NrZWTCqykuIgotCi0jOiBsaWIvY2hlY2tvdXRfb3AudGNsOjI4OQotbXNnaWQgIiIKLSJMYXN0IHNjYW5uZWQgc3RhdGUgZG9lcyBub3QgbWF0Y2ggcmVwb3NpdG9yeSBzdGF0ZS5cbiIKLSJcbiIKLSJBbm90aGVyIEdpdCBwcm9ncmFtIGhhcyBtb2RpZmllZCB0aGlzIHJlcG9zaXRvcnkgc2luY2UgdGhlIGxhc3Qgc2Nhbi4gIEEgIgotInJlc2NhbiBtdXN0IGJlIHBlcmZvcm1lZCBiZWZvcmUgdGhlIGN1cnJlbnQgYnJhbmNoIGNhbiBiZSBjaGFuZ2VkLlxuIgotIlxuIgotIlRoZSByZXNjYW4gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN0YXJ0ZWQgbm93LlxuIgotbXNnc3RyICIiCi0iRGVyIGxldHp0ZSBnZWxhZGVuZSBTdGF0dXMgc3RpbW10IG5pY2h0IG1laHIgbWl0IGRlbSBQcm9qZWt0YXJjaGl2IMO8YmVyZWluLlxuIgotIlxuIgotIkVpbiBhbmRlcmVzIEdpdC1Qcm9ncmFtbSBoYXQgZGFzIFByb2pla3RhcmNoaXYgc2VpdCBkZW0gbGV0enRlbiBMYWRlbiAiCi0iZ2XDpG5kZXJ0LiAgVm9yIGRlbSBXZWNoc2VsbiBkZXMgbG9rYWxlbiBad2VpZ3MgbXVzcyBuZXUgZ2VsYWRlbiB3ZXJkZW4uXG4iCi0iXG4iCi0iRXMgd2lyZCBnbGVpY2ggbmV1IGdlbGFkZW4uXG4iCi0KLSM6IGxpYi9jaGVja291dF9vcC50Y2w6MzQ1Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiVXBkYXRpbmcgd29ya2luZyBkaXJlY3RvcnkgdG8gJyVzJy4uLiIKLW1zZ3N0ciAiQXJiZWl0c2tvcGllIHVtc3RlbGxlbiBhdWYgwrslc8KrLi4uIgotCi0jOiBsaWIvY2hlY2tvdXRfb3AudGNsOjM0NgotbXNnaWQgImZpbGVzIGNoZWNrZWQgb3V0IgotbXNnc3RyICJEYXRlaWVuIGFrdHVhbGlzaWVydCIKLQotIzogbGliL2NoZWNrb3V0X29wLnRjbDozNzYKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJBYm9ydGVkIGNoZWNrb3V0IG9mICclcycgKGZpbGUgbGV2ZWwgbWVyZ2luZyBpcyByZXF1aXJlZCkuIgotbXNnc3RyICIiCi0iQXVmIFp3ZWlnIMK7JXPCqyB1bXN0ZWxsZW4gYWJnZWJyb2NoZW4gKFp1c2FtbWVuZsO8aHJlbiBkZXIgRGF0ZWllbiBpc3QgIgotIm5vdHdlbmRpZykuIgotCi0jOiBsaWIvY2hlY2tvdXRfb3AudGNsOjM3NwotbXNnaWQgIkZpbGUgbGV2ZWwgbWVyZ2UgcmVxdWlyZWQuIgotbXNnc3RyICJadXNhbW1lbmbDvGhyZW4gZGVyIERhdGVpZW4gaXN0IG5vdHdlbmRpZy4iCi0KLSM6IGxpYi9jaGVja291dF9vcC50Y2w6MzgxCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiU3RheWluZyBvbiBicmFuY2ggJyVzJy4iCi1tc2dzdHIgIkVzIHdpcmQgYXVmIFp3ZWlnIMK7JXPCqyB2ZXJibGllYmVuLiIKLQotIzogbGliL2NoZWNrb3V0X29wLnRjbDo0NTIKLW1zZ2lkICIiCi0iWW91IGFyZSBubyBsb25nZXIgb24gYSBsb2NhbCBicmFuY2guXG4iCi0iXG4iCi0iSWYgeW91IHdhbnRlZCB0byBiZSBvbiBhIGJyYW5jaCwgY3JlYXRlIG9uZSBub3cgc3RhcnRpbmcgZnJvbSAnVGhpcyBEZXRhY2hlZCAiCi0iQ2hlY2tvdXQnLiIKLW1zZ3N0ciAiIgotIkRpZSBBcmJlaXRza29waWUgaXN0IG5pY2h0IGF1ZiBlaW5lbSBsb2thbGVuIFp3ZWlnLlxuIgotIlxuIgotIldlbm4gU2llIGF1ZiBlaW5lbSBad2VpZyBhcmJlaXRlbiBtw7ZjaHRlbiwgZXJzdGVsbGVuIFNpZSBiaXR0ZSBqZXR6dCBlaW5lbiAiCi0iWndlaWcgbWl0IGRlciBBdXN3YWhsIMK7QWJnZXRyZW5udGUgQXJiZWl0c2tvcGllLVZlcnNpb27Cqy4iCi0KLSM6IGxpYi9jaGVja291dF9vcC50Y2w6NTAzIGxpYi9jaGVja291dF9vcC50Y2w6NTA3Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiQ2hlY2tlZCBvdXQgJyVzJy4iCi1tc2dzdHIgIlVtZ2VzdGVsbHQgYXVmIMK7JXPCqy4iCi0KLSM6IGxpYi9jaGVja291dF9vcC50Y2w6NTM1Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiUmVzZXR0aW5nICclcycgdG8gJyVzJyB3aWxsIGxvc2UgdGhlIGZvbGxvd2luZyBjb21taXRzOiIKLW1zZ3N0ciAiWnVyw7xja3NldHplbiB2b24gwrslc8KrIG5hY2ggwrslc8KrIHdpcmQgZm9sZ2VuZGUgVmVyc2lvbmVuIHZlcndlcmZlbjoiCi0KLSM6IGxpYi9jaGVja291dF9vcC50Y2w6NTU3Ci1tc2dpZCAiUmVjb3ZlcmluZyBsb3N0IGNvbW1pdHMgbWF5IG5vdCBiZSBlYXN5LiIKLW1zZ3N0ciAiIgotIlZlcndvcmZlbmUgVmVyc2lvbmVuIGvDtm5uZW4gbnVyIG1pdCBncsO2w59lcmVtIEF1ZndhbmQgd2llZGVyaGVyZ2VzdGVsbHQgIgotIndlcmRlbi4iCi0KLSM6IGxpYi9jaGVja291dF9vcC50Y2w6NTYyCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiUmVzZXQgJyVzJz8iCi1tc2dzdHIgIsK7JXPCqyB6dXLDvGNrc2V0emVuPyIKLQotIzogbGliL2NoZWNrb3V0X29wLnRjbDo1NjcgbGliL21lcmdlLnRjbDoxNjQgbGliL3Rvb2xzX2RsZy50Y2w6MzQzCi1tc2dpZCAiVmlzdWFsaXplIgotbXNnc3RyICJEYXJzdGVsbGVuIgotCi0jOiBsaWIvY2hlY2tvdXRfb3AudGNsOjYzNQotIywgdGNsLWZvcm1hdAotbXNnaWQgIiIKLSJGYWlsZWQgdG8gc2V0IGN1cnJlbnQgYnJhbmNoLlxuIgotIlxuIgotIlRoaXMgd29ya2luZyBkaXJlY3RvcnkgaXMgb25seSBwYXJ0aWFsbHkgc3dpdGNoZWQuICBXZSBzdWNjZXNzZnVsbHkgdXBkYXRlZCAiCi0ieW91ciBmaWxlcywgYnV0IGZhaWxlZCB0byB1cGRhdGUgYW4gaW50ZXJuYWwgR2l0IGZpbGUuXG4iCi0iXG4iCi0iVGhpcyBzaG91bGQgbm90IGhhdmUgb2NjdXJyZWQuICAlcyB3aWxsIG5vdyBjbG9zZSBhbmQgZ2l2ZSB1cC4iCi1tc2dzdHIgIiIKLSJMb2thbGVyIFp3ZWlnIGthbm4gbmljaHQgZ2VzZXR6dCB3ZXJkZW4uXG4iCi0iXG4iCi0iRGllc2UgQXJiZWl0c2tvcGllIGlzdCBudXIgdGVpbHdlaXNlIHVtZ2VzdGVsbHQuIERpZSBEYXRlaWVuIHNpbmQga29ycmVrdCAiCi0iYWt0dWFsaXNpZXJ0LCBhYmVyIGVpbmlnZSBpbnRlcm5lIEdpdC1EYXRlaWVuIGtvbm50ZW4gbmljaHQgZ2XDpG5kZXJ0ICIKLSJ3ZXJkZW4uXG4iCi0iXG4iCi0iRGllcyBpc3QgZWluIGludGVybmVyIFByb2dyYW1tZmVobGVyIHZvbiAlcy4gUHJvZ3JhbW0gd2lyZCBqZXR6dCBhYmdlYnJvY2hlbi4iCi0KLSM6IGxpYi9jaG9vc2VfZm9udC50Y2w6MzkKLW1zZ2lkICJTZWxlY3QiCi1tc2dzdHIgIkF1c3fDpGhsZW4iCi0KLSM6IGxpYi9jaG9vc2VfZm9udC50Y2w6NTMKLW1zZ2lkICJGb250IEZhbWlseSIKLW1zZ3N0ciAiU2NocmlmdGZhbWlsaWUiCi0KLSM6IGxpYi9jaG9vc2VfZm9udC50Y2w6NzQKLW1zZ2lkICJGb250IFNpemUiCi1tc2dzdHIgIlNjaHJpZnRncsO2w59lIgotCi0jOiBsaWIvY2hvb3NlX2ZvbnQudGNsOjkxCi1tc2dpZCAiRm9udCBFeGFtcGxlIgotbXNnc3RyICJTY2hyaWZ0YmVpc3BpZWwiCi0KLSM6IGxpYi9jaG9vc2VfZm9udC50Y2w6MTAzCi1tc2dpZCAiIgotIlRoaXMgaXMgZXhhbXBsZSB0ZXh0LlxuIgotIklmIHlvdSBsaWtlIHRoaXMgdGV4dCwgaXQgY2FuIGJlIHlvdXIgZm9udC4iCi1tc2dzdHIgIiIKLSJEaWVzIGlzdCBlaW4gQmVpc3BpZWx0ZXh0LlxuIgotIldlbm4gSWhuZW4gZGllc2VyIFRleHQgZ2Vmw6RsbHQsIHNvbGx0ZW4gU2llIGRpZXNlIFNjaHJpZnRhcnQgd8OkaGxlbi4iCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MjgKLW1zZ2lkICJHaXQgR3VpIgotbXNnc3RyICJHaXQgR3VpIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjg3IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6Mzg2Ci1tc2dpZCAiQ3JlYXRlIE5ldyBSZXBvc2l0b3J5IgotbXNnc3RyICJOZXVlcyBQcm9qZWt0YXJjaGl2IgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkzCi1tc2dpZCAiTmV3Li4uIgotbXNnc3RyICJOZXUuLi4iCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTAwIGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDcxCi1tc2dpZCAiQ2xvbmUgRXhpc3RpbmcgUmVwb3NpdG9yeSIKLW1zZ3N0ciAiUHJvamVrdGFyY2hpdiBrbG9uZW4iCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTA2Ci1tc2dpZCAiQ2xvbmUuLi4iCi1tc2dzdHIgIktsb25lbi4uLiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMTMgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMDE2Ci1tc2dpZCAiT3BlbiBFeGlzdGluZyBSZXBvc2l0b3J5IgotbXNnc3RyICJQcm9qZWt0YXJjaGl2IMO2ZmZuZW4iCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTE5Ci1tc2dpZCAiT3Blbi4uLiIKLW1zZ3N0ciAiw5ZmZm5lbi4uLiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMzIKLW1zZ2lkICJSZWNlbnQgUmVwb3NpdG9yaWVzIgotbXNnc3RyICJadWxldHp0IGJlbnV0enRlIFByb2pla3RhcmNoaXZlIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjEzOAotbXNnaWQgIk9wZW4gUmVjZW50IFJlcG9zaXRvcnk6IgotbXNnc3RyICJadWxldHp0IGJlbnV0enRlcyBQcm9qZWt0YXJjaGl2IMO2ZmZuZW46IgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjMwNiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjMxMwotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDozMjAKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJGYWlsZWQgdG8gY3JlYXRlIHJlcG9zaXRvcnkgJXM6IgotbXNnc3RyICJQcm9qZWt0YXJjaGl2IMK7JXPCqyBrb25udGUgbmljaHQgZXJzdGVsbHQgd2VyZGVuOiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDozOTEKLW1zZ2lkICJEaXJlY3Rvcnk6IgotbXNnc3RyICJWZXJ6ZWljaG5pczoiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDIzIGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTUwCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjEwNTIKLW1zZ2lkICJHaXQgUmVwb3NpdG9yeSIKLW1zZ3N0ciAiR2l0IFByb2pla3RhcmNoaXYiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDQ4Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiRGlyZWN0b3J5ICVzIGFscmVhZHkgZXhpc3RzLiIKLW1zZ3N0ciAiVmVyemVpY2huaXMgwrslc8KrIGV4aXN0aWVydCBiZXJlaXRzLiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0NTIKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJGaWxlICVzIGFscmVhZHkgZXhpc3RzLiIKLW1zZ3N0ciAiRGF0ZWkgwrslc8KrIGV4aXN0aWVydCBiZXJlaXRzLiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0NjYKLW1zZ2lkICJDbG9uZSIKLW1zZ3N0ciAiS2xvbmVuIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjQ3OQotbXNnaWQgIlNvdXJjZSBMb2NhdGlvbjoiCi1tc2dzdHIgIkhlcmt1bmZ0OiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0OTAKLW1zZ2lkICJUYXJnZXQgRGlyZWN0b3J5OiIKLW1zZ3N0ciAiWmllbHZlcnplaWNobmlzOiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1MDIKLW1zZ2lkICJDbG9uZSBUeXBlOiIKLW1zZ3N0ciAiQXJ0IGRlcyBLbG9uZW5zOiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1MDgKLW1zZ2lkICJTdGFuZGFyZCAoRmFzdCwgU2VtaS1SZWR1bmRhbnQsIEhhcmRsaW5rcykiCi1tc2dzdHIgIlN0YW5kYXJkIChzY2huZWxsLCB0ZWlsd2Vpc2UgcmVkdW5kYW50LCBIYXJkbGlua3MpIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjUxNAotbXNnaWQgIkZ1bGwgQ29weSAoU2xvd2VyLCBSZWR1bmRhbnQgQmFja3VwKSIKLW1zZ3N0ciAiQWxsZXMga29waWVyZW4gKGxhbmdzYW1lciwgdm9sbGUgUmVkdW5kYW56KSIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1MjAKLW1zZ2lkICJTaGFyZWQgKEZhc3Rlc3QsIE5vdCBSZWNvbW1lbmRlZCwgTm8gQmFja3VwKSIKLW1zZ3N0ciAiVmVya27DvHBmdCAoc2NobmVsbCwgbmljaHQgZW1wZm9obGVuLCBrZWluIEJhY2t1cCkiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTU2IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjAzCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjc0OSBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjgxOQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMDU4IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTA2NgotIywgdGNsLWZvcm1hdAotbXNnaWQgIk5vdCBhIEdpdCByZXBvc2l0b3J5OiAlcyIKLW1zZ3N0ciAiS2VpbiBHaXQtUHJvamVrdGFyY2hpdiBpbiDCuyVzwqsgZ2VmdW5kZW4uIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjU5MgotbXNnaWQgIlN0YW5kYXJkIG9ubHkgYXZhaWxhYmxlIGZvciBsb2NhbCByZXBvc2l0b3J5LiIKLW1zZ3N0ciAiU3RhbmRhcmQgaXN0IG51ciBmw7xyIGxva2FsZSBQcm9qZWt0YXJjaGl2ZSB2ZXJmw7xnYmFyLiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1OTYKLW1zZ2lkICJTaGFyZWQgb25seSBhdmFpbGFibGUgZm9yIGxvY2FsIHJlcG9zaXRvcnkuIgotbXNnc3RyICJWZXJrbsO8cGZ0IGlzdCBudXIgZsO8ciBsb2thbGUgUHJvamVrdGFyY2hpdmUgdmVyZsO8Z2Jhci4iCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjE3Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiTG9jYXRpb24gJXMgYWxyZWFkeSBleGlzdHMuIgotbXNnc3RyICJQcm9qZWt0YXJjaGl2IMK7JXPCqyBleGlzdGllcnQgYmVyZWl0cy4iCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjI4Ci1tc2dpZCAiRmFpbGVkIHRvIGNvbmZpZ3VyZSBvcmlnaW4iCi1tc2dzdHIgIkRlciBVcnNwcnVuZ3NvcnQga29ubnRlIG5pY2h0IGVpbmdlcmljaHRldCB3ZXJkZW4iCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjQwCi1tc2dpZCAiQ291bnRpbmcgb2JqZWN0cyIKLW1zZ3N0ciAiT2JqZWt0ZSB3ZXJkZW4gZ2V6w6RobHQiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjQxCi1tc2dpZCAiYnVja2V0cyIKLW1zZ3N0ciAiQnVja2V0cyIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo2NjUKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJVbmFibGUgdG8gY29weSBvYmplY3RzL2luZm8vYWx0ZXJuYXRlczogJXMiCi1tc2dzdHIgIktvcGllbiB2b24gT2JqZWt0ZW4vSW5mby9BbHRlcm5hdGVzIGtvbm50ZW4gbmljaHQgZXJzdGVsbHQgd2VyZGVuOiAlcyIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo3MDEKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJOb3RoaW5nIHRvIGNsb25lIGZyb20gJXMuIgotbXNnc3RyICJWb24gwrslc8KrIGtvbm50ZSBuaWNodHMgZ2VrbG9udCB3ZXJkZW4uIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjcwMyBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkxNwotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5MjkKLW1zZ2lkICJUaGUgJ21hc3RlcicgYnJhbmNoIGhhcyBub3QgYmVlbiBpbml0aWFsaXplZC4iCi1tc2dzdHIgIkRlciDCu21hc3RlcsKrLVp3ZWlnIHd1cmRlIG5vY2ggbmljaHQgaW5pdGlhbGlzaWVydC4iCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NzE2Ci1tc2dpZCAiSGFyZGxpbmtzIGFyZSB1bmF2YWlsYWJsZS4gIEZhbGxpbmcgYmFjayB0byBjb3B5aW5nLiIKLW1zZ3N0ciAiSGFyZGxpbmtzIG5pY2h0IHZlcmbDvGdiYXIuIFN0YXR0ZGVzc2VuIHdpcmQga29waWVydC4iCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NzI4Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiQ2xvbmluZyBmcm9tICVzIgotbXNnc3RyICJLb3BpZXJlbiB2b24gwrslc8KrIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjc1OQotbXNnaWQgIkNvcHlpbmcgb2JqZWN0cyIKLW1zZ3N0ciAiT2JqZWt0ZGF0ZW5iYW5rIGtvcGllcmVuIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjc2MAotbXNnaWQgIktpQiIKLW1zZ3N0ciAiS0IiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6Nzg0Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiVW5hYmxlIHRvIGNvcHkgb2JqZWN0OiAlcyIKLW1zZ3N0ciAiT2JqZWt0IGthbm4gbmljaHQga29waWVydCB3ZXJkZW46ICVzIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjc5NAotbXNnaWQgIkxpbmtpbmcgb2JqZWN0cyIKLW1zZ3N0ciAiT2JqZWt0ZSB2ZXJsaW5rZW4iCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6Nzk1Ci1tc2dpZCAib2JqZWN0cyIKLW1zZ3N0ciAiT2JqZWt0ZSIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo4MDMKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJVbmFibGUgdG8gaGFyZGxpbmsgb2JqZWN0OiAlcyIKLW1zZ3N0ciAiRsO8ciBPYmpla3Qga29ubnRlIGtlaW4gSGFyZGxpbmsgZXJzdGVsbHQgd2VyZGVuOiAlcyIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo4NTgKLW1zZ2lkICJDYW5ub3QgZmV0Y2ggYnJhbmNoZXMgYW5kIG9iamVjdHMuICBTZWUgY29uc29sZSBvdXRwdXQgZm9yIGRldGFpbHMuIgotbXNnc3RyICIiCi0iWndlaWdlIHVuZCBPYmpla3RlIGtvbm50ZW4gbmljaHQgYW5nZWZvcmRlcnQgd2VyZGVuLiAgS29udHJvbGxpZXJlbiBTaWUgZGllICIKLSJBdXNnYWJlbiBhdWYgZGVyIEtvbnNvbGUgZsO8ciB3ZWl0ZXJlIEFuZ2FiZW4uIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjg2OQotbXNnaWQgIkNhbm5vdCBmZXRjaCB0YWdzLiAgU2VlIGNvbnNvbGUgb3V0cHV0IGZvciBkZXRhaWxzLiIKLW1zZ3N0ciAiIgotIk1hcmtpZXJ1bmdlbiBrb25udGVuIG5pY2h0IGFuZ2Vmb3JkZXJ0IHdlcmRlbi4gIEtvbnRyb2xsaWVyZW4gU2llIGRpZSAiCi0iQXVzZ2FiZW4gYXVmIGRlciBLb25zb2xlIGbDvHIgd2VpdGVyZSBBbmdhYmVuLiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo4OTMKLW1zZ2lkICJDYW5ub3QgZGV0ZXJtaW5lIEhFQUQuICBTZWUgY29uc29sZSBvdXRwdXQgZm9yIGRldGFpbHMuIgotbXNnc3RyICIiCi0iRGllIFp3ZWlnc3BpdHplIChIRUFEKSBrb25udGUgbmljaHQgZ2VmdW5kZW4gd2VyZGVuLiAgS29udHJvbGxpZXJlbiBTaWUgZGllICIKLSJBdXNnYWJlbiBhdWYgZGVyIEtvbnNvbGUgZsO8ciB3ZWl0ZXJlIEFuZ2FiZW4uIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkwMgotIywgdGNsLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBjbGVhbnVwICVzIgotbXNnc3RyICJWZXJ6ZWljaG5pcyDCuyVzwqsga2FubiBuaWNodCBhdWZnZXLDpHVtdCB3ZXJkZW4uIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkwOAotbXNnaWQgIkNsb25lIGZhaWxlZC4iCi1tc2dzdHIgIktsb25lbiBmZWhsZ2VzY2hsYWdlbi4iCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6OTE1Ci1tc2dpZCAiTm8gZGVmYXVsdCBicmFuY2ggb2J0YWluZWQuIgotbXNnc3RyICJLZWluIHZvcmVpbmdlc3RlbGx0ZXIgWndlaWcgZ2VmdW5kZW4uIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkyNgotIywgdGNsLWZvcm1hdAotbXNnaWQgIkNhbm5vdCByZXNvbHZlICVzIGFzIGEgY29tbWl0LiIKLW1zZ3N0ciAiwrslc8KrIHd1cmRlIG5pY2h0IGFscyBWZXJzaW9uIGdlZnVuZGVuLiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5MzgKLW1zZ2lkICJDcmVhdGluZyB3b3JraW5nIGRpcmVjdG9yeSIKLW1zZ3N0ciAiQXJiZWl0c2tvcGllIGVyc3RlbGxlbiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5MzkgbGliL2luZGV4LnRjbDo2NyBsaWIvaW5kZXgudGNsOjEzMAotIzogbGliL2luZGV4LnRjbDoxOTgKLW1zZ2lkICJmaWxlcyIKLW1zZ3N0ciAiRGF0ZWllbiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5NjgKLW1zZ2lkICJJbml0aWFsIGZpbGUgY2hlY2tvdXQgZmFpbGVkLiIKLW1zZ3N0ciAiRXJzdGVsbGVuIGRlciBBcmJlaXRza29waWUgZmVobGdlc2NobGFnZW4uIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjEwMTEKLW1zZ2lkICJPcGVuIgotbXNnc3RyICLDlmZmbmVuIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjEwMjEKLW1zZ2lkICJSZXBvc2l0b3J5OiIKLW1zZ3N0ciAiUHJvamVrdGFyY2hpdjoiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTA3MgotIywgdGNsLWZvcm1hdAotbXNnaWQgIkZhaWxlZCB0byBvcGVuIHJlcG9zaXRvcnkgJXM6IgotbXNnc3RyICJQcm9qZWt0YXJjaGl2IMK7JXPCqyBrb25udGUgbmljaHQgZ2XDtmZmbmV0IHdlcmRlbi4iCi0KLSM6IGxpYi9jaG9vc2VfcmV2LnRjbDo1MwotbXNnaWQgIlRoaXMgRGV0YWNoZWQgQ2hlY2tvdXQiCi1tc2dzdHIgIkFiZ2V0cmVubnRlIEFyYmVpdHNrb3BpZS1WZXJzaW9uIgotCi0jOiBsaWIvY2hvb3NlX3Jldi50Y2w6NjAKLW1zZ2lkICJSZXZpc2lvbiBFeHByZXNzaW9uOiIKLW1zZ3N0ciAiVmVyc2lvbiBSZWdleHAtQXVzZHJ1Y2s6IgotCi0jOiBsaWIvY2hvb3NlX3Jldi50Y2w6NzQKLW1zZ2lkICJMb2NhbCBCcmFuY2giCi1tc2dzdHIgIkxva2FsZXIgWndlaWciCi0KLSM6IGxpYi9jaG9vc2VfcmV2LnRjbDo3OQotbXNnaWQgIlRyYWNraW5nIEJyYW5jaCIKLW1zZ3N0ciAiw5xiZXJuYWhtZXp3ZWlnIgotCi0jOiBsaWIvY2hvb3NlX3Jldi50Y2w6ODQgbGliL2Nob29zZV9yZXYudGNsOjUzOAotbXNnaWQgIlRhZyIKLW1zZ3N0ciAiTWFya2llcnVuZyIKLQotIzogbGliL2Nob29zZV9yZXYudGNsOjMxNwotIywgdGNsLWZvcm1hdAotbXNnaWQgIkludmFsaWQgcmV2aXNpb246ICVzIgotbXNnc3RyICJVbmfDvGx0aWdlIFZlcnNpb246ICVzIgotCi0jOiBsaWIvY2hvb3NlX3Jldi50Y2w6MzM4Ci1tc2dpZCAiTm8gcmV2aXNpb24gc2VsZWN0ZWQuIgotbXNnc3RyICJLZWluZSBWZXJzaW9uIGF1c2dld8OkaGx0LiIKLQotIzogbGliL2Nob29zZV9yZXYudGNsOjM0NgotbXNnaWQgIlJldmlzaW9uIGV4cHJlc3Npb24gaXMgZW1wdHkuIgotbXNnc3RyICJWZXJzaW9ucy1BdXNkcnVjayBpc3QgbGVlci4iCi0KLSM6IGxpYi9jaG9vc2VfcmV2LnRjbDo1MzEKLW1zZ2lkICJVcGRhdGVkIgotbXNnc3RyICJBa3R1YWxpc2llcnQiCi0KLSM6IGxpYi9jaG9vc2VfcmV2LnRjbDo1NTkKLW1zZ2lkICJVUkwiCi1tc2dzdHIgIlVSTCIKLQotIzogbGliL2NvbW1pdC50Y2w6OQotbXNnaWQgIiIKLSJUaGVyZSBpcyBub3RoaW5nIHRvIGFtZW5kLlxuIgotIlxuIgotIllvdSBhcmUgYWJvdXQgdG8gY3JlYXRlIHRoZSBpbml0aWFsIGNvbW1pdC4gIFRoZXJlIGlzIG5vIGNvbW1pdCBiZWZvcmUgdGhpcyAiCi0idG8gYW1lbmQuXG4iCi1tc2dzdHIgIiIKLSJLZWluZSBWZXJzaW9uIHp1ciBOYWNoYmVzc2VydW5nIHZvcmhhbmRlbi5cbiIKLSJcbiIKLSJTaWUgc2luZCBkYWJlaSwgZGllIGVyc3RlIFZlcnNpb24genUgw7xiZXJ0cmFnZW4uIEVzIGdpYnQga2VpbmUgZXhpc3RpZXJlbmRlICIKLSJWZXJzaW9uLCBkaWUgU2llIG5hY2hiZXNzZXJuIGvDtm5udGVuLlxuIgotCi0jOiBsaWIvY29tbWl0LnRjbDoxOAotbXNnaWQgIiIKLSJDYW5ub3QgYW1lbmQgd2hpbGUgbWVyZ2luZy5cbiIKLSJcbiIKLSJZb3UgYXJlIGN1cnJlbnRseSBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UgdGhhdCBoYXMgbm90IGJlZW4gZnVsbHkgIgotImNvbXBsZXRlZC4gIFlvdSBjYW5ub3QgYW1lbmQgdGhlIHByaW9yIGNvbW1pdCB1bmxlc3MgeW91IGZpcnN0IGFib3J0IHRoZSAiCi0iY3VycmVudCBtZXJnZSBhY3Rpdml0eS5cbiIKLW1zZ3N0ciAiIgotIk5hY2hiZXNzZXJ1bmcgd8OkaHJlbiBadXNhbW1lbmbDvGhydW5nIG5pY2h0IG3DtmdsaWNoLlxuIgotIlxuIgotIlNpZSBoYWJlbiBkYXMgWnVzYW1tZW5mw7xocmVuIHZvbiBWZXJzaW9uZW4gYW5nZWZhbmdlbiwgYWJlciBub2NoIG5pY2h0ICIKLSJiZWVuZGV0LiBTaWUga8O2bm5lbiBrZWluZSB2b3JpZ2Ugw5xiZXJ0cmFndW5nIG5hY2hiZXNzZXJuLCBzb2xhbmdlIGVpbmUgIgotInVuZmVydGlnZSBadXNhbW1lbmbDvGhydW5nIGV4aXN0aWVydC4gRGF6dSBtw7xzc2VuIFNpZSBkaWUgWnVzYW1tZW5mw7xocnVuZyAiCi0iYmVlbmRlbiBvZGVyIGFiYnJlY2hlbi5cbiIKLQotIzogbGliL2NvbW1pdC50Y2w6NDgKLW1zZ2lkICJFcnJvciBsb2FkaW5nIGNvbW1pdCBkYXRhIGZvciBhbWVuZDoiCi1tc2dzdHIgIkZlaGxlciBiZWltIExhZGVuIGRlciBWZXJzaW9uc2RhdGVuIGbDvHIgTmFjaGJlc3Nlcm46IgotCi0jOiBsaWIvY29tbWl0LnRjbDo3NQotbXNnaWQgIlVuYWJsZSB0byBvYnRhaW4geW91ciBpZGVudGl0eToiCi1tc2dzdHIgIkJlbnV0emVybmFtZSBrb25udGUgbmljaHQgYmVzdGltbXQgd2VyZGVuOiIKLQotIzogbGliL2NvbW1pdC50Y2w6ODAKLW1zZ2lkICJJbnZhbGlkIEdJVF9DT01NSVRURVJfSURFTlQ6IgotbXNnc3RyICJVbmfDvGx0aWdlciBXZXJ0IHZvbiBHSVRfQ09NTUlUVEVSX0lOREVOVDoiCi0KLSM6IGxpYi9jb21taXQudGNsOjEyOQotIywgdGNsLWZvcm1hdAotbXNnaWQgIndhcm5pbmc6IFRjbCBkb2VzIG5vdCBzdXBwb3J0IGVuY29kaW5nICclcycuIgotbXNnc3RyICJXYXJuaW5nOiBUY2wvVGsgdW50ZXJzdMO8dHp0IGRpZSBaZWljaGVuY29kaWVydW5nIMK7JXPCqyBuaWNodC4iCi0KLSM6IGxpYi9jb21taXQudGNsOjE0OQotbXNnaWQgIiIKLSJMYXN0IHNjYW5uZWQgc3RhdGUgZG9lcyBub3QgbWF0Y2ggcmVwb3NpdG9yeSBzdGF0ZS5cbiIKLSJcbiIKLSJBbm90aGVyIEdpdCBwcm9ncmFtIGhhcyBtb2RpZmllZCB0aGlzIHJlcG9zaXRvcnkgc2luY2UgdGhlIGxhc3Qgc2Nhbi4gIEEgIgotInJlc2NhbiBtdXN0IGJlIHBlcmZvcm1lZCBiZWZvcmUgYW5vdGhlciBjb21taXQgY2FuIGJlIGNyZWF0ZWQuXG4iCi0iXG4iCi0iVGhlIHJlc2NhbiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc3RhcnRlZCBub3cuXG4iCi1tc2dzdHIgIiIKLSJEZXIgbGV0enRlIGdlbGFkZW5lIFN0YXR1cyBzdGltbXQgbmljaHQgbWVociBtaXQgZGVtIFByb2pla3RhcmNoaXYgw7xiZXJlaW4uXG4iCi0iXG4iCi0iRWluIGFuZGVyZXMgR2l0LVByb2dyYW1tIGhhdCBkYXMgUHJvamVrdGFyY2hpdiBzZWl0IGRlbSBsZXR6dGVuIExhZGVuICIKLSJnZcOkbmRlcnQuICBWb3IgZGVtIEVpbnRyYWdlbiBlaW5lciBuZXVlbiBWZXJzaW9uIG11c3MgbmV1IGdlbGFkZW4gd2VyZGVuLlxuIgotIlxuIgotIkVzIHdpcmQgZ2xlaWNoIG5ldSBnZWxhZGVuLlxuIgotCi0jOiBsaWIvY29tbWl0LnRjbDoxNzIKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICIiCi0iVW5tZXJnZWQgZmlsZXMgY2Fubm90IGJlIGNvbW1pdHRlZC5cbiIKLSJcbiIKLSJGaWxlICVzIGhhcyBtZXJnZSBjb25mbGljdHMuICBZb3UgbXVzdCByZXNvbHZlIHRoZW0gYW5kIHN0YWdlIHRoZSBmaWxlICIKLSJiZWZvcmUgY29tbWl0dGluZy5cbiIKLW1zZ3N0ciAiIgotIk5pY2h0IHp1c2FtbWVuZ2Vmw7xocnRlIERhdGVpZW4ga8O2bm5lbiBuaWNodCBlaW5nZXRyYWdlbiB3ZXJkZW4uXG4iCi0iXG4iCi0iRGllIERhdGVpIMK7JXPCqyBoYXQgbm9jaCBuaWNodCBhdWZnZWzDtnN0ZSBadXNhbW1lbmbDvGhydW5ncy1Lb25mbGlrdGUuIFNpZSAiCi0ibcO8c3NlbiBkaWVzZSBLb25mbGlrdGUgYXVmbMO2c2VuLCBiZXZvciBTaWUgZWludHJhZ2VuIGvDtm5uZW4uXG4iCi0KLSM6IGxpYi9jb21taXQudGNsOjE4MAotIywgdGNsLWZvcm1hdAotbXNnaWQgIiIKLSJVbmtub3duIGZpbGUgc3RhdGUgJXMgZGV0ZWN0ZWQuXG4iCi0iXG4iCi0iRmlsZSAlcyBjYW5ub3QgYmUgY29tbWl0dGVkIGJ5IHRoaXMgcHJvZ3JhbS5cbiIKLW1zZ3N0ciAiIgotIlVuYmVrYW5udGVyIERhdGVpenVzdGFuZCDCuyVzwqsuXG4iCi0iXG4iCi0iRGF0ZWkgwrslc8KrIGthbm4gbmljaHQgZWluZ2V0cmFnZW4gd2VyZGVuLlxuIgotCi0jOiBsaWIvY29tbWl0LnRjbDoxODgKLW1zZ2lkICIiCi0iTm8gY2hhbmdlcyB0byBjb21taXQuXG4iCi0iXG4iCi0iWW91IG11c3Qgc3RhZ2UgYXQgbGVhc3QgMSBmaWxlIGJlZm9yZSB5b3UgY2FuIGNvbW1pdC5cbiIKLW1zZ3N0ciAiIgotIktlaW5lIMOEbmRlcnVuZ2VuIHZvcmhhbmRlbiwgZGllIGVpbmdldHJhZ2VuIHdlcmRlbiBrw7ZubnRlbi5cbiIKLSJcbiIKLSJTaWUgbcO8c3NlbiBtaW5kZXN0ZW5zIGVpbmUgRGF0ZWkgYmVyZWl0c3RlbGxlbiwgYmV2b3IgU2llIGVpbnRyYWdlbiBrw7ZubmVuLlxuIgotCi0jOiBsaWIvY29tbWl0LnRjbDoyMDMKLW1zZ2lkICIiCi0iUGxlYXNlIHN1cHBseSBhIGNvbW1pdCBtZXNzYWdlLlxuIgotIlxuIgotIkEgZ29vZCBjb21taXQgbWVzc2FnZSBoYXMgdGhlIGZvbGxvd2luZyBmb3JtYXQ6XG4iCi0iXG4iCi0iLSBGaXJzdCBsaW5lOiBEZXNjcmliZSBpbiBvbmUgc2VudGVuY2Ugd2hhdCB5b3UgZGlkLlxuIgotIi0gU2Vjb25kIGxpbmU6IEJsYW5rXG4iCi0iLSBSZW1haW5pbmcgbGluZXM6IERlc2NyaWJlIHdoeSB0aGlzIGNoYW5nZSBpcyBnb29kLlxuIgotbXNnc3RyICIiCi0iQml0dGUgZ2ViZW4gU2llIGVpbmUgVmVyc2lvbnNiZXNjaHJlaWJ1bmcgZWluLlxuIgotIlxuIgotIkVpbmUgZ3V0ZSBWZXJzaW9uc2Jlc2NocmVpYnVuZyBlbnRow6RsdCBmb2xnZW5kZSBBYnNjaG5pdHRlOlxuIgotIlxuIgotIi0gRXJzdGUgWmVpbGU6IEVpbmUgWnVzYW1tZW5mYXNzdW5nLCB3YXMgbWFuIGdlbWFjaHQgaGF0LlxuIgotIlxuIgotIi0gWndlaXRlIFplaWxlOiBMZWVyemVpbGVcbiIKLSJcbiIKLSItIFJlc3Q6IEVpbmUgYXVzZsO8aHJsaWNoZSBCZXNjaHJlaWJ1bmcsIHdhcnVtIGRpZXNlIMOEbmRlcnVuZyBoaWxmcmVpY2ggaXN0LlxuIgotCi0jOiBsaWIvY29tbWl0LnRjbDoyMzQKLW1zZ2lkICJDYWxsaW5nIHByZS1jb21taXQgaG9vay4uLiIKLW1zZ3N0ciAiQXVmcnVmZW4gZGVyIFZvci1FaW50cmFnZW4tS29udHJvbGxlICjCu3ByZS1jb21taXQgaG9va8KrKS4uLiIKLQotIzogbGliL2NvbW1pdC50Y2w6MjQ5Ci1tc2dpZCAiQ29tbWl0IGRlY2xpbmVkIGJ5IHByZS1jb21taXQgaG9vay4iCi1tc2dzdHIgIkVpbnRyYWdlbiBhYmdlbGVobnQgZHVyY2ggVm9yLUVpbnRyYWdlbi1Lb250cm9sbGUgKMK7cHJlLWNvbW1pdCBob29rwqspLiIKLQotIzogbGliL2NvbW1pdC50Y2w6MjcyCi1tc2dpZCAiQ2FsbGluZyBjb21taXQtbXNnIGhvb2suLi4iCi1tc2dzdHIgIkF1ZnJ1ZmVuIGRlciBWZXJzaW9uc2Jlc2NocmVpYnVuZ3MtS29udHJvbGxlICjCu2NvbW1pdC1tZXNzYWdlIGhvb2vCqykuLi4iCi0KLSM6IGxpYi9jb21taXQudGNsOjI4NwotbXNnaWQgIkNvbW1pdCBkZWNsaW5lZCBieSBjb21taXQtbXNnIGhvb2suIgotbXNnc3RyICIiCi0iRWludHJhZ2VuIGFiZ2VsZWhudCBkdXJjaCBWZXJzaW9uc2Jlc2NocmVpYnVuZ3MtS29udHJvbGxlICjCu2NvbW1pdC1tZXNzYWdlICIKLSJob29rwqspLiIKLQotIzogbGliL2NvbW1pdC50Y2w6MzAwCi1tc2dpZCAiQ29tbWl0dGluZyBjaGFuZ2VzLi4uIgotbXNnc3RyICLDhG5kZXJ1bmdlbiBlaW50cmFnZW4uLi4iCi0KLSM6IGxpYi9jb21taXQudGNsOjMxNgotbXNnaWQgIndyaXRlLXRyZWUgZmFpbGVkOiIKLW1zZ3N0ciAid3JpdGUtdHJlZSBmZWhsZ2VzY2hsYWdlbjoiCi0KLSM6IGxpYi9jb21taXQudGNsOjMxNyBsaWIvY29tbWl0LnRjbDozNjEgbGliL2NvbW1pdC50Y2w6MzgyCi1tc2dpZCAiQ29tbWl0IGZhaWxlZC4iCi1tc2dzdHIgIkVpbnRyYWdlbiBmZWhsZ2VzY2hsYWdlbi4iCi0KLSM6IGxpYi9jb21taXQudGNsOjMzNAotIywgdGNsLWZvcm1hdAotbXNnaWQgIkNvbW1pdCAlcyBhcHBlYXJzIHRvIGJlIGNvcnJ1cHQiCi1tc2dzdHIgIlZlcnNpb24gwrslc8KrIHNjaGVpbnQgYmVzY2jDpGRpZ3QgenUgc2VpbiIKLQotIzogbGliL2NvbW1pdC50Y2w6MzM5Ci1tc2dpZCAiIgotIk5vIGNoYW5nZXMgdG8gY29tbWl0LlxuIgotIlxuIgotIk5vIGZpbGVzIHdlcmUgbW9kaWZpZWQgYnkgdGhpcyBjb21taXQgYW5kIGl0IHdhcyBub3QgYSBtZXJnZSBjb21taXQuXG4iCi0iXG4iCi0iQSByZXNjYW4gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN0YXJ0ZWQgbm93LlxuIgotbXNnc3RyICIiCi0iS2VpbmUgw4RuZGVydW5nZW4gZWluenV0cmFnZW4uXG4iCi0iXG4iCi0iRXMgZ2lidCBrZWluZSBnZcOkbmRlcnRlIERhdGVpIGJlaSBkaWVzZXIgVmVyc2lvbiB1bmQgZXMgd3VyZGUgYXVjaCBuaWNodHMgIgotInp1c2FtbWVuZ2Vmw7xocnQuXG4iCi0iXG4iCi0iRGFzIEFyYmVpdHN2ZXJ6ZWljaG5pcyB3aXJkIGRhaGVyIGpldHp0IG5ldSBnZWxhZGVuLlxuIgotCi0jOiBsaWIvY29tbWl0LnRjbDozNDYKLW1zZ2lkICJObyBjaGFuZ2VzIHRvIGNvbW1pdC4iCi1tc2dzdHIgIktlaW5lIMOEbmRlcnVuZ2VuLCBkaWUgZWluZ2V0cmFnZW4gd2VyZGVuIGvDtm5uZW4uIgotCi0jOiBsaWIvY29tbWl0LnRjbDozNjAKLW1zZ2lkICJjb21taXQtdHJlZSBmYWlsZWQ6IgotbXNnc3RyICJjb21taXQtdHJlZSBmZWhsZ2VzY2hsYWdlbjoiCi0KLSM6IGxpYi9jb21taXQudGNsOjM4MQotbXNnaWQgInVwZGF0ZS1yZWYgZmFpbGVkOiIKLW1zZ3N0ciAidXBkYXRlLXJlZiBmZWhsZ2VzY2hsYWdlbjoiCi0KLSM6IGxpYi9jb21taXQudGNsOjQ2OQotIywgdGNsLWZvcm1hdAotbXNnaWQgIkNyZWF0ZWQgY29tbWl0ICVzOiAlcyIKLW1zZ3N0ciAiVmVyc2lvbiAlcyDDvGJlcnRyYWdlbjogJXMiCi0KLSM6IGxpYi9jb25zb2xlLnRjbDo1OQotbXNnaWQgIldvcmtpbmcuLi4gcGxlYXNlIHdhaXQuLi4iCi1tc2dzdHIgIlZlcmFyYmVpdHVuZy4gQml0dGUgd2FydGVuLi4uIgotCi0jOiBsaWIvY29uc29sZS50Y2w6MTg2Ci1tc2dpZCAiU3VjY2VzcyIKLW1zZ3N0ciAiRXJmb2xncmVpY2giCi0KLSM6IGxpYi9jb25zb2xlLnRjbDoyMDAKLW1zZ2lkICJFcnJvcjogQ29tbWFuZCBGYWlsZWQiCi1tc2dzdHIgIkZlaGxlcjogS29tbWFuZG8gZmVobGdlc2NobGFnZW4iCi0KLSM6IGxpYi9kYXRhYmFzZS50Y2w6NDMKLW1zZ2lkICJOdW1iZXIgb2YgbG9vc2Ugb2JqZWN0cyIKLW1zZ3N0ciAiQW56YWhsIHVudmVya27DvHBmdGVyIE9iamVrdGUiCi0KLSM6IGxpYi9kYXRhYmFzZS50Y2w6NDQKLW1zZ2lkICJEaXNrIHNwYWNlIHVzZWQgYnkgbG9vc2Ugb2JqZWN0cyIKLW1zZ3N0ciAiRmVzdHBsYXR0ZW5wbGF0eiB2b24gdW52ZXJrbsO8cGZ0ZW4gT2JqZWt0ZW4iCi0KLSM6IGxpYi9kYXRhYmFzZS50Y2w6NDUKLW1zZ2lkICJOdW1iZXIgb2YgcGFja2VkIG9iamVjdHMiCi1tc2dzdHIgIkFuemFobCBrb21wcmltaWVydGVyIE9iamVrdGUiCi0KLSM6IGxpYi9kYXRhYmFzZS50Y2w6NDYKLW1zZ2lkICJOdW1iZXIgb2YgcGFja3MiCi1tc2dzdHIgIkFuemFobCBLb21wcmltaWVydW5nc2VpbmhlaXRlbiIKLQotIzogbGliL2RhdGFiYXNlLnRjbDo0NwotbXNnaWQgIkRpc2sgc3BhY2UgdXNlZCBieSBwYWNrZWQgb2JqZWN0cyIKLW1zZ3N0ciAiRmVzdHBsYXR0ZW5wbGF0eiB2b24ga29tcHJpbWllcnRlbiBPYmpla3RlbiIKLQotIzogbGliL2RhdGFiYXNlLnRjbDo0OAotbXNnaWQgIlBhY2tlZCBvYmplY3RzIHdhaXRpbmcgZm9yIHBydW5pbmciCi1tc2dzdHIgIktvbXByaW1pZXJ0ZSBPYmpla3RlLCBkaWUgenVtIEF1ZnLDpHVtZW4gdm9yZ2VzZWhlbiBzaW5kIgotCi0jOiBsaWIvZGF0YWJhc2UudGNsOjQ5Ci1tc2dpZCAiR2FyYmFnZSBmaWxlcyIKLW1zZ3N0ciAiRGF0ZWllbiBpbSBNw7xsbGVpbWVyIgotCi0jOiBsaWIvZGF0YWJhc2UudGNsOjcyCi1tc2dpZCAiQ29tcHJlc3NpbmcgdGhlIG9iamVjdCBkYXRhYmFzZSIKLW1zZ3N0ciAiT2JqZWt0ZGF0ZW5iYW5rIGtvbXByaW1pZXJlbiIKLQotIzogbGliL2RhdGFiYXNlLnRjbDo4MwotbXNnaWQgIlZlcmlmeWluZyB0aGUgb2JqZWN0IGRhdGFiYXNlIHdpdGggZnNjay1vYmplY3RzIgotbXNnc3RyICJEaWUgT2JqZWt0ZGF0ZW5iYW5rIGR1cmNoIMK7ZnNjay1vYmplY3Rzwqsgw7xiZXJwcsO8ZmVuIGxhc3NlbiIKLQotIzogbGliL2RhdGFiYXNlLnRjbDoxMDcKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICIiCi0iVGhpcyByZXBvc2l0b3J5IGN1cnJlbnRseSBoYXMgYXBwcm94aW1hdGVseSAlaSBsb29zZSBvYmplY3RzLlxuIgotIlxuIgotIlRvIG1haW50YWluIG9wdGltYWwgcGVyZm9ybWFuY2UgaXQgaXMgc3Ryb25nbHkgcmVjb21tZW5kZWQgdGhhdCB5b3UgY29tcHJlc3MgIgotInRoZSBkYXRhYmFzZS5cbiIKLSJcbiIKLSJDb21wcmVzcyB0aGUgZGF0YWJhc2Ugbm93PyIKLW1zZ3N0ciAiIgotIkRpZXNlcyBQcm9qZWt0YXJjaGl2IGVudGjDpGx0IHVuZ2Vmw6RociAlaSBuaWNodCB2ZXJrbsO8cGZ0ZSBPYmpla3RlLlxuIgotIlxuIgotIkbDvHIgZWluZSBvcHRpbWFsZSBQZXJmb3JtYW5jZSB3aXJkIGVtcGZvaGxlbiwgZGllIERhdGVuYmFuayBkZXMgUHJvamVrdGFyY2hpdnMgenUga29tcHJpbWllcmVuLlxuIgotIlxuIgotIlNvbGwgZGllIERhdGVuYmFuayBqZXR6dCBrb21wcmltaWVydCB3ZXJkZW4/IgotCi0jOiBsaWIvZGF0ZS50Y2w6MjUKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJJbnZhbGlkIGRhdGUgZnJvbSBHaXQ6ICVzIgotbXNnc3RyICJVbmfDvGx0aWdlcyBEYXR1bSB2b24gR2l0OiAlcyIKLQotIzogbGliL2RpZmYudGNsOjY0Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiIgotIk5vIGRpZmZlcmVuY2VzIGRldGVjdGVkLlxuIgotIlxuIgotIiVzIGhhcyBubyBjaGFuZ2VzLlxuIgotIlxuIgotIlRoZSBtb2RpZmljYXRpb24gZGF0ZSBvZiB0aGlzIGZpbGUgd2FzIHVwZGF0ZWQgYnkgYW5vdGhlciBhcHBsaWNhdGlvbiwgYnV0ICIKLSJ0aGUgY29udGVudCB3aXRoaW4gdGhlIGZpbGUgd2FzIG5vdCBjaGFuZ2VkLlxuIgotIlxuIgotIkEgcmVzY2FuIHdpbGwgYmUgYXV0b21hdGljYWxseSBzdGFydGVkIHRvIGZpbmQgb3RoZXIgZmlsZXMgd2hpY2ggbWF5IGhhdmUgIgotInRoZSBzYW1lIHN0YXRlLiIKLW1zZ3N0ciAiIgotIktlaW5lIMOEbmRlcnVuZ2VuIGZlc3RzdGVsbGJhci5cbiIKLSJcbiIKLSLCuyVzwqsgZW50aMOkbHQga2VpbmUgw4RuZGVydW5nZW4uIFp3YXIgd3VyZGUgZGFzIMOEbmRlcnVuZ3NkYXR1bSBkaWVzZXIgRGF0ZWkgdm9uICIKLSJlaW5lbSBhbmRlcmVuIFByb2dyYW1tIG1vZGlmaXppZXJ0LCBhYmVyIGRlciBJbmhhbHQgZGVyIERhdGVpIGlzdCAiCi0idW52ZXLDpG5kZXJ0LlxuIgotIlxuIgotIkRhcyBBcmJlaXRzdmVyemVpY2huaXMgd2lyZCBqZXR6dCBuZXUgZ2VsYWRlbiwgdW0gZGllc2Ugw4RuZGVydW5nIGJlaSBhbGxlbiAiCi0iRGF0ZWllbiB6dSBwcsO8ZmVuLiIKLQotIzogbGliL2RpZmYudGNsOjEwNAotIywgdGNsLWZvcm1hdAotbXNnaWQgIkxvYWRpbmcgZGlmZiBvZiAlcy4uLiIKLW1zZ3N0ciAiVmVyZ2xlaWNoIHZvbiDCuyVzwqsgbGFkZW4uLi4iCi0KLSM6IGxpYi9kaWZmLnRjbDoxMjUKLW1zZ2lkICIiCi0iTE9DQUw6IGRlbGV0ZWRcbiIKLSJSRU1PVEU6XG4iCi1tc2dzdHIgIiIKLSJMT0tBTDogZ2Vsw7ZzY2h0XG4iCi0iQU5ERVJFUzpcbiIKLQotIzogbGliL2RpZmYudGNsOjEzMAotbXNnaWQgIiIKLSJSRU1PVEU6IGRlbGV0ZWRcbiIKLSJMT0NBTDpcbiIKLW1zZ3N0ciAiIgotIkFOREVSRVM6IGdlbMO2c2NodFxuIgotIkxPS0FMOlxuIgotCi0jOiBsaWIvZGlmZi50Y2w6MTM3Ci1tc2dpZCAiTE9DQUw6XG4iCi1tc2dzdHIgIkxPS0FMOlxuIgotCi0jOiBsaWIvZGlmZi50Y2w6MTQwCi1tc2dpZCAiUkVNT1RFOlxuIgotbXNnc3RyICJBTkRFUkVTOlxuIgotCi0jOiBsaWIvZGlmZi50Y2w6MjAyIGxpYi9kaWZmLnRjbDozMTkKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJVbmFibGUgdG8gZGlzcGxheSAlcyIKLW1zZ3N0ciAiRGF0ZWkgwrslc8KrIGthbm4gbmljaHQgYW5nZXplaWd0IHdlcmRlbiIKLQotIzogbGliL2RpZmYudGNsOjIwMwotbXNnaWQgIkVycm9yIGxvYWRpbmcgZmlsZToiCi1tc2dzdHIgIkZlaGxlciBiZWltIExhZGVuIGRlciBEYXRlaToiCi0KLSM6IGxpYi9kaWZmLnRjbDoyMTAKLW1zZ2lkICJHaXQgUmVwb3NpdG9yeSAoc3VicHJvamVjdCkiCi1tc2dzdHIgIkdpdC1Qcm9qZWt0YXJjaGl2IChVbnRlcnByb2pla3QpIgotCi0jOiBsaWIvZGlmZi50Y2w6MjIyCi1tc2dpZCAiKiBCaW5hcnkgZmlsZSAobm90IHNob3dpbmcgY29udGVudCkuIgotbXNnc3RyICIqIEJpbsOkcmRhdGVpIChJbmhhbHQgd2lyZCBuaWNodCBhbmdlemVpZ3QpIgotCi0jOiBsaWIvZGlmZi50Y2w6MjI3Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiIgotIiogVW50cmFja2VkIGZpbGUgaXMgJWQgYnl0ZXMuXG4iCi0iKiBTaG93aW5nIG9ubHkgZmlyc3QgJWQgYnl0ZXMuXG4iCi1tc2dzdHIgIiIKLSIqIERhdGVpIG5pY2h0IHVudGVyIFZlcnNpb25za29udHJvbGxlLCBEYXRlaWdyw7bDn2UgJWQgQnl0ZXMuXG4iCi0iKiBOdXIgZXJzdGUgJWQgQnl0ZXMgd2VyZGVuIGFuZ2V6ZWlndC5cbiIKLQotIzogbGliL2RpZmYudGNsOjIzMwotIywgdGNsLWZvcm1hdAotbXNnaWQgIiIKLSJcbiIKLSIqIFVudHJhY2tlZCBmaWxlIGNsaXBwZWQgaGVyZSBieSAlcy5cbiIKLSIqIFRvIHNlZSB0aGUgZW50aXJlIGZpbGUsIHVzZSBhbiBleHRlcm5hbCBlZGl0b3IuXG4iCi1tc2dzdHIgIiIKLSJcbiIKLSIqIERhdGVpIG5pY2h0IHVudGVyIFZlcnNpb25za29udHJvbGxlLCBoaWVyIGFiZ2VzY2huaXR0ZW4gZHVyY2ggJXMuXG4iCi0iKiBadW0gQW5zZWhlbiBkZXIgdm9sbHN0w6RuZGlnZW4gRGF0ZWkgZXh0ZXJuZW4gRWRpdG9yIGJlbnV0emVuLlxuIgotCi0jOiBsaWIvZGlmZi50Y2w6NDgyCi1tc2dpZCAiRmFpbGVkIHRvIHVuc3RhZ2Ugc2VsZWN0ZWQgaHVuay4iCi1tc2dzdHIgIiIKLSJGZWhsZXIgYmVpbSBIZXJhdXNuZWhtZW4gZGVzIGdld8OkaGx0ZW4gS29udGV4dHMgYXVzIGRlciBCZXJlaXRzdGVsbHVuZy4iCi0KLSM6IGxpYi9kaWZmLnRjbDo0ODkKLW1zZ2lkICJGYWlsZWQgdG8gc3RhZ2Ugc2VsZWN0ZWQgaHVuay4iCi1tc2dzdHIgIkZlaGxlciBiZWltIEJlcmVpdHN0ZWxsZW4gZGVzIGdld8OkaGx0ZW4gS29udGV4dHMuIgotCi0jOiBsaWIvZGlmZi50Y2w6NTY4Ci1tc2dpZCAiRmFpbGVkIHRvIHVuc3RhZ2Ugc2VsZWN0ZWQgbGluZS4iCi1tc2dzdHIgIkZlaGxlciBiZWltIEhlcmF1c25laG1lbiBkZXIgZ2V3w6RobHRlbiBaZWlsZSBhdXMgZGVyIEJlcmVpdHN0ZWxsdW5nLiIKLQotIzogbGliL2RpZmYudGNsOjU3NgotbXNnaWQgIkZhaWxlZCB0byBzdGFnZSBzZWxlY3RlZCBsaW5lLiIKLW1zZ3N0ciAiRmVobGVyIGJlaW0gQmVyZWl0c3RlbGxlbiBkZXIgZ2V3w6RobHRlbiBaZWlsZS4iCi0KLSM6IGxpYi9lbmNvZGluZy50Y2w6NDQzCi1tc2dpZCAiRGVmYXVsdCIKLW1zZ3N0ciAiVm9yZWluc3RlbGx1bmciCi0KLSM6IGxpYi9lbmNvZGluZy50Y2w6NDQ4Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiU3lzdGVtICglcykiCi1tc2dzdHIgIlN5c3RlbXdlaXQgKCVzKSIKLQotIzogbGliL2VuY29kaW5nLnRjbDo0NTkgbGliL2VuY29kaW5nLnRjbDo0NjUKLW1zZ2lkICJPdGhlciIKLW1zZ3N0ciAiQW5kZXJlIgotCi0jOiBsaWIvZXJyb3IudGNsOjIwIGxpYi9lcnJvci50Y2w6MTE0Ci1tc2dpZCAiZXJyb3IiCi1tc2dzdHIgIkZlaGxlciIKLQotIzogbGliL2Vycm9yLnRjbDozNgotbXNnaWQgIndhcm5pbmciCi1tc2dzdHIgIldhcm51bmciCi0KLSM6IGxpYi9lcnJvci50Y2w6OTQKLW1zZ2lkICJZb3UgbXVzdCBjb3JyZWN0IHRoZSBhYm92ZSBlcnJvcnMgYmVmb3JlIGNvbW1pdHRpbmcuIgotbXNnc3RyICIiCi0iU2llIG3DvHNzZW4gZGllIG9iaWdlbiBGZWhsZXIgenVlcnN0IGJlaGViZW4sIGJldm9yIFNpZSBlaW50cmFnZW4ga8O2bm5lbi4iCi0KLSM6IGxpYi9pbmRleC50Y2w6NgotbXNnaWQgIlVuYWJsZSB0byB1bmxvY2sgdGhlIGluZGV4LiIKLW1zZ3N0ciAiQmVyZWl0c3RlbGx1bmcga2FubiBuaWNodCB3aWVkZXIgZnJlaWdlZ2ViZW4gd2VyZGVuLiIKLQotIzogbGliL2luZGV4LnRjbDoxNQotbXNnaWQgIkluZGV4IEVycm9yIgotbXNnc3RyICJGZWhsZXIgaW4gQmVyZWl0c3RlbGx1bmciCi0KLSM6IGxpYi9pbmRleC50Y2w6MTcKLW1zZ2lkICIiCi0iVXBkYXRpbmcgdGhlIEdpdCBpbmRleCBmYWlsZWQuICBBIHJlc2NhbiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc3RhcnRlZCB0byAiCi0icmVzeW5jaHJvbml6ZSBnaXQtZ3VpLiIKLW1zZ3N0ciAiIgotIkRhcyBBa3R1YWxpc2llcmVuIGRlciBHaXQtQmVyZWl0c3RlbGx1bmcgaXN0IGZlaGxnZXNjaGxhZ2VuLiBFaW5lIGFsbGdlbWVpbmUgIgotIkdpdC1Ba3R1YWxpc2llcnVuZyB3aXJkIGpldHp0IGdlc3RhcnRldCwgdW0gZ2l0LWd1aSB3aWVkZXIgbWl0IGdpdCB6dSAiCi0ic3luY2hyb25pc2llcmVuLiIKLQotIzogbGliL2luZGV4LnRjbDoyOAotbXNnaWQgIkNvbnRpbnVlIgotbXNnc3RyICJGb3J0c2V0emVuIgotCi0jOiBsaWIvaW5kZXgudGNsOjMxCi1tc2dpZCAiVW5sb2NrIEluZGV4IgotbXNnc3RyICJCZXJlaXRzdGVsbHVuZyBmcmVpZ2ViZW4iCi0KLSM6IGxpYi9pbmRleC50Y2w6Mjg5Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiVW5zdGFnaW5nICVzIGZyb20gY29tbWl0IgotbXNnc3RyICJEYXRlaSDCuyVzwqsgYXVzIGRlciBCZXJlaXRzdGVsbHVuZyBoZXJhdXNuZWhtZW4iCi0KLSM6IGxpYi9pbmRleC50Y2w6MzI4Ci1tc2dpZCAiUmVhZHkgdG8gY29tbWl0LiIKLW1zZ3N0ciAiQmVyZWl0IHp1bSBFaW50cmFnZW4uIgotCi0jOiBsaWIvaW5kZXgudGNsOjM0MQotIywgdGNsLWZvcm1hdAotbXNnaWQgIkFkZGluZyAlcyIKLW1zZ3N0ciAiwrslc8KrIGhpbnp1ZsO8Z2VuLi4uIgotCi0jOiBsaWIvaW5kZXgudGNsOjM5OAotIywgdGNsLWZvcm1hdAotbXNnaWQgIlJldmVydCBjaGFuZ2VzIGluIGZpbGUgJXM/IgotbXNnc3RyICLDhG5kZXJ1bmdlbiBpbiBEYXRlaSDCuyVzwqsgdmVyd2VyZmVuPyIKLQotIzogbGliL2luZGV4LnRjbDo0MDAKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJSZXZlcnQgY2hhbmdlcyBpbiB0aGVzZSAlaSBmaWxlcz8iCi1tc2dzdHIgIsOEbmRlcnVuZ2VuIGluIGRlbiBnZXfDpGhsdGVuICVpIERhdGVpZW4gdmVyd2VyZmVuPyIKLQotIzogbGliL2luZGV4LnRjbDo0MDgKLW1zZ2lkICJBbnkgdW5zdGFnZWQgY2hhbmdlcyB3aWxsIGJlIHBlcm1hbmVudGx5IGxvc3QgYnkgdGhlIHJldmVydC4iCi1tc2dzdHIgIiIKLSJBbGxlIG5pY2h0IGJlcmVpdGdlc3RlbGx0ZW4gw4RuZGVydW5nZW4gd2VyZGVuIGJlaW0gVmVyd2VyZmVuIHZlcmxvcmVuIGdlaGVuLiIKLQotIzogbGliL2luZGV4LnRjbDo0MTEKLW1zZ2lkICJEbyBOb3RoaW5nIgotbXNnc3RyICJOaWNodHMgdHVuIgotCi0jOiBsaWIvaW5kZXgudGNsOjQyOQotbXNnaWQgIlJldmVydGluZyBzZWxlY3RlZCBmaWxlcyIKLW1zZ3N0ciAiw4RuZGVydW5nZW4gaW4gZ2V3w6RobHRlbiBEYXRlaWVuIHZlcndlcmZlbiIKLQotIzogbGliL2luZGV4LnRjbDo0MzMKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJSZXZlcnRpbmcgJXMiCi1tc2dzdHIgIsOEbmRlcnVuZ2VuIGluICVzIHZlcndlcmZlbiIKLQotIzogbGliL21lcmdlLnRjbDoxMwotbXNnaWQgIiIKLSJDYW5ub3QgbWVyZ2Ugd2hpbGUgYW1lbmRpbmcuXG4iCi0iXG4iCi0iWW91IG11c3QgZmluaXNoIGFtZW5kaW5nIHRoaXMgY29tbWl0IGJlZm9yZSBzdGFydGluZyBhbnkgdHlwZSBvZiBtZXJnZS5cbiIKLW1zZ3N0ciAiIgotIlp1c2FtbWVuZsO8aHJlbiBrYW5uIG5pY2h0IGdsZWljaHplaXRpZyBtaXQgTmFjaGJlc3Nlcm4gZHVyY2hnZWbDvGhydCB3ZXJkZW4uXG4iCi0iXG4iCi0iU2llIG3DvHNzZW4genVlcnN0IGRpZSBOYWNoYmVzc2VydW5ncy1WZXJzaW9uIGFic2NobGllw59lbiwgYmV2b3IgU2llICIKLSJ6dXNhbW1lbmbDvGhyZW4ga8O2bm5lbi5cbiIKLQotIzogbGliL21lcmdlLnRjbDoyNwotbXNnaWQgIiIKLSJMYXN0IHNjYW5uZWQgc3RhdGUgZG9lcyBub3QgbWF0Y2ggcmVwb3NpdG9yeSBzdGF0ZS5cbiIKLSJcbiIKLSJBbm90aGVyIEdpdCBwcm9ncmFtIGhhcyBtb2RpZmllZCB0aGlzIHJlcG9zaXRvcnkgc2luY2UgdGhlIGxhc3Qgc2Nhbi4gIEEgIgotInJlc2NhbiBtdXN0IGJlIHBlcmZvcm1lZCBiZWZvcmUgYSBtZXJnZSBjYW4gYmUgcGVyZm9ybWVkLlxuIgotIlxuIgotIlRoZSByZXNjYW4gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN0YXJ0ZWQgbm93LlxuIgotbXNnc3RyICIiCi0iRGVyIGxldHp0ZSBnZWxhZGVuZSBTdGF0dXMgc3RpbW10IG5pY2h0IG1laHIgbWl0IGRlbSBQcm9qZWt0YXJjaGl2IMO8YmVyZWluLlxuIgotIlxuIgotIkVpbiBhbmRlcmVzIEdpdC1Qcm9ncmFtbSBoYXQgZGFzIFByb2pla3RhcmNoaXYgc2VpdCBkZW0gbGV0enRlbiBMYWRlbiAiCi0iZ2XDpG5kZXJ0LiAgVm9yIGVpbmVtIFp1c2FtbWVuZsO8aHJlbiBtdXNzIG5ldSBnZWxhZGVuIHdlcmRlbi5cbiIKLSJcbiIKLSJFcyB3aXJkIGdsZWljaCBuZXUgZ2VsYWRlbi5cbiIKLQotIzogbGliL21lcmdlLnRjbDo0NQotIywgdGNsLWZvcm1hdAotbXNnaWQgIiIKLSJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSBjb25mbGljdGVkIG1lcmdlLlxuIgotIlxuIgotIkZpbGUgJXMgaGFzIG1lcmdlIGNvbmZsaWN0cy5cbiIKLSJcbiIKLSJZb3UgbXVzdCByZXNvbHZlIHRoZW0sIHN0YWdlIHRoZSBmaWxlLCBhbmQgY29tbWl0IHRvIGNvbXBsZXRlIHRoZSBjdXJyZW50ICIKLSJtZXJnZS4gIE9ubHkgdGhlbiBjYW4geW91IGJlZ2luIGFub3RoZXIgbWVyZ2UuXG4iCi1tc2dzdHIgIiIKLSJadXNhbW1lbmbDvGhydW5nIG1pdCBLb25mbGlrdGVuLlxuIgotIlxuIgotIkRpZSBEYXRlaSDCuyVzwqsgZW50aMOkbHQgS29uZmxpa3RlIGJlaW0gWnVzYW1tZW5mw7xocmVuLiBTaWUgbcO8c3NlbiBkaWVzZSAiCi0iS29uZmxpa3RlIHBlciBIYW5kIGF1ZmzDtnNlbi4gQW5zY2hsaWXDn2VuZCBtw7xzc2VuIFNpZSBkaWUgRGF0ZWkgd2llZGVyICIKLSJiZXJlaXRzdGVsbGVuIHVuZCBlaW50cmFnZW4sIHVtIGRpZSBadXNhbW1lbmbDvGhydW5nIGFienVzY2hsaWXDn2VuLiBFcnN0ICIKLSJkYW5hY2gga2FubiBlaW5lIG5ldWUgWnVzYW1tZW5mw7xocnVuZyBiZWdvbm5lbiB3ZXJkZW4uXG4iCi0KLSM6IGxpYi9tZXJnZS50Y2w6NTUKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICIiCi0iWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgY2hhbmdlLlxuIgotIlxuIgotIkZpbGUgJXMgaXMgbW9kaWZpZWQuXG4iCi0iXG4iCi0iWW91IHNob3VsZCBjb21wbGV0ZSB0aGUgY3VycmVudCBjb21taXQgYmVmb3JlIHN0YXJ0aW5nIGEgbWVyZ2UuICBEb2luZyBzbyAiCi0id2lsbCBoZWxwIHlvdSBhYm9ydCBhIGZhaWxlZCBtZXJnZSwgc2hvdWxkIHRoZSBuZWVkIGFyaXNlLlxuIgotbXNnc3RyICIiCi0iRXMgbGllZ2VuIMOEbmRlcnVuZ2VuIHZvci5cbiIKLSJcbiIKLSJEaWUgRGF0ZWkgwrslc8KrIHd1cmRlIGdlw6RuZGVydC4gIFNpZSBzb2xsdGVuIHp1ZXJzdCBkaWUgYmVyZWl0Z2VzdGVsbHRlICIKLSJWZXJzaW9uIGFic2NobGllw59lbiwgYmV2b3IgU2llIGVpbmUgWnVzYW1tZW5mw7xocnVuZyBiZWdpbm5lbi4gIE1pdCBkaWVzZXIgIgotIlJlaWhlbmZvbGdlIGvDtm5uZW4gU2llIG3DtmdsaWNoZSBLb25mbGlrdGUgYmVpbSBadXNhbW1lbmbDvGhyZW4gd2VzZW50bGljaCAiCi0iZWluZmFjaGVyIGJlaGViZW4gb2RlciBhYmJyZWNoZW4uXG4iCi0KLSM6IGxpYi9tZXJnZS50Y2w6MTA3Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiJXMgb2YgJXMiCi1tc2dzdHIgIiVzIHZvbiAlcyIKLQotIzogbGliL21lcmdlLnRjbDoxMjAKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJNZXJnaW5nICVzIGFuZCAlcy4uLiIKLW1zZ3N0ciAiWnVzYW1tZW5mw7xocmVuIHZvbiAlcyB1bmQgJXMuLi4iCi0KLSM6IGxpYi9tZXJnZS50Y2w6MTMxCi1tc2dpZCAiTWVyZ2UgY29tcGxldGVkIHN1Y2Nlc3NmdWxseS4iCi1tc2dzdHIgIlp1c2FtbWVuZsO8aHJlbiBlcmZvbGdyZWljaCBhYmdlc2NobG9zc2VuLiIKLQotIzogbGliL21lcmdlLnRjbDoxMzMKLW1zZ2lkICJNZXJnZSBmYWlsZWQuICBDb25mbGljdCByZXNvbHV0aW9uIGlzIHJlcXVpcmVkLiIKLW1zZ3N0ciAiWnVzYW1tZW5mw7xocmVuIGZlaGxnZXNjaGxhZ2VuLiBLb25mbGlrdGF1ZmzDtnN1bmcgaXN0IG5vdHdlbmRpZy4iCi0KLSM6IGxpYi9tZXJnZS50Y2w6MTU4Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiTWVyZ2UgSW50byAlcyIKLW1zZ3N0ciAiWnVzYW1tZW5mw7xocmVuIGluIMK7JXPCqyIKLQotIzogbGliL21lcmdlLnRjbDoxNzcKLW1zZ2lkICJSZXZpc2lvbiBUbyBNZXJnZSIKLW1zZ3N0ciAiWnVzYW1tZW56dWbDvGhyZW5kZSBWZXJzaW9uIgotCi0jOiBsaWIvbWVyZ2UudGNsOjIxMgotbXNnaWQgIiIKLSJDYW5ub3QgYWJvcnQgd2hpbGUgYW1lbmRpbmcuXG4iCi0iXG4iCi0iWW91IG11c3QgZmluaXNoIGFtZW5kaW5nIHRoaXMgY29tbWl0LlxuIgotbXNnc3RyICIiCi0iQWJicnVjaCBkZXIgTmFjaGJlc3NlcnVuZyBpc3QgbmljaHQgbcO2Z2xpY2guXG4iCi0iXG4iCi0iU2llIG3DvHNzZW4gZGllIE5hY2hiZXNzZXJ1bmcgZGVyIFZlcnNpb24gYWJzY2hsaWXDn2VuLlxuIgotCi0jOiBsaWIvbWVyZ2UudGNsOjIyMgotbXNnaWQgIiIKLSJBYm9ydCBtZXJnZT9cbiIKLSJcbiIKLSJBYm9ydGluZyB0aGUgY3VycmVudCBtZXJnZSB3aWxsIGNhdXNlICpBTEwqIHVuY29tbWl0dGVkIGNoYW5nZXMgdG8gYmUgbG9zdC5cbiIKLSJcbiIKLSJDb250aW51ZSB3aXRoIGFib3J0aW5nIHRoZSBjdXJyZW50IG1lcmdlPyIKLW1zZ3N0ciAiIgotIlp1c2FtbWVuZsO8aHJlbiBhYmJyZWNoZW4/XG4iCi0iXG4iCi0iV2VubiBTaWUgYWJicmVjaGVuLCBnZWhlbiBhbGxlIG5vY2ggbmljaHQgZWluZ2V0cmFnZW5lbiDDhG5kZXJ1bmdlbiAiCi0idmVybG9yZW4uXG4iCi0iXG4iCi0iWnVzYW1tZW5mw7xocmVuIGpldHp0IGFiYnJlY2hlbj8iCi0KLSM6IGxpYi9tZXJnZS50Y2w6MjI4Ci1tc2dpZCAiIgotIlJlc2V0IGNoYW5nZXM/XG4iCi0iXG4iCi0iUmVzZXR0aW5nIHRoZSBjaGFuZ2VzIHdpbGwgY2F1c2UgKkFMTCogdW5jb21taXR0ZWQgY2hhbmdlcyB0byBiZSBsb3N0LlxuIgotIlxuIgotIkNvbnRpbnVlIHdpdGggcmVzZXR0aW5nIHRoZSBjdXJyZW50IGNoYW5nZXM/IgotbXNnc3RyICIiCi0iw4RuZGVydW5nZW4genVyw7xja3NldHplbj9cbiIKLSJcbiIKLSJXZW5uIFNpZSB6dXLDvGNrc2V0emVuLCBnZWhlbiBhbGxlIG5vY2ggbmljaHQgZWluZ2V0cmFnZW5lbiDDhG5kZXJ1bmdlbiAiCi0idmVybG9yZW4uXG4iCi0iXG4iCi0iw4RuZGVydW5nZW4gamV0enQgenVyw7xja3NldHplbj8iCi0KLSM6IGxpYi9tZXJnZS50Y2w6MjM5Ci1tc2dpZCAiQWJvcnRpbmciCi1tc2dzdHIgIkFiYnJ1Y2giCi0KLSM6IGxpYi9tZXJnZS50Y2w6MjM5Ci1tc2dpZCAiZmlsZXMgcmVzZXQiCi1tc2dzdHIgIkRhdGVpZW4genVyw7xja2dlc2V0enQiCi0KLSM6IGxpYi9tZXJnZS50Y2w6MjY3Ci1tc2dpZCAiQWJvcnQgZmFpbGVkLiIKLW1zZ3N0ciAiQWJicnVjaCBmZWhsZ2VzY2hsYWdlbi4iCi0KLSM6IGxpYi9tZXJnZS50Y2w6MjY5Ci1tc2dpZCAiQWJvcnQgY29tcGxldGVkLiAgUmVhZHkuIgotbXNnc3RyICJBYmJydWNoIGR1cmNoZ2Vmw7xocnQuIEJlcmVpdC4iCi0KLSM6IGxpYi9tZXJnZXRvb2wudGNsOjgKLW1zZ2lkICJGb3JjZSByZXNvbHV0aW9uIHRvIHRoZSBiYXNlIHZlcnNpb24/IgotbXNnc3RyICJLb25mbGlrdCBkdXJjaCBCYXNpc3ZlcnNpb24gZXJzZXR6ZW4/IgotCi0jOiBsaWIvbWVyZ2V0b29sLnRjbDo5Ci1tc2dpZCAiRm9yY2UgcmVzb2x1dGlvbiB0byB0aGlzIGJyYW5jaD8iCi1tc2dzdHIgIktvbmZsaWt0IGR1cmNoIGRpZXNlbiBad2VpZyBlcnNldHplbj8iCi0KLSM6IGxpYi9tZXJnZXRvb2wudGNsOjEwCi1tc2dpZCAiRm9yY2UgcmVzb2x1dGlvbiB0byB0aGUgb3RoZXIgYnJhbmNoPyIKLW1zZ3N0ciAiS29uZmxpa3QgZHVyY2ggYW5kZXJlbiBad2VpZyBlcnNldHplbj8iCi0KLSM6IGxpYi9tZXJnZXRvb2wudGNsOjE0Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiIgotIk5vdGUgdGhhdCB0aGUgZGlmZiBzaG93cyBvbmx5IGNvbmZsaWN0aW5nIGNoYW5nZXMuXG4iCi0iXG4iCi0iJXMgd2lsbCBiZSBvdmVyd3JpdHRlbi5cbiIKLSJcbiIKLSJUaGlzIG9wZXJhdGlvbiBjYW4gYmUgdW5kb25lIG9ubHkgYnkgcmVzdGFydGluZyB0aGUgbWVyZ2UuIgotbXNnc3RyICIiCi0iSGlud2VpczogRGVyIFZlcmdsZWljaCB6ZWlndCBudXIga29uZmxpa3R2ZXJ1cnNhY2hlbmRlIMOEbmRlcnVuZ2VuIGFuLlxuIgotIlxuIgotIsK7JXPCqyB3aXJkIMO8YmVyc2NocmllYmVuLlxuIgotIlxuIgotIkRpZXNlIE9wZXJhdGlvbiBrYW5uIG51ciByw7xja2fDpG5naWcgZ2VtYWNodCB3ZXJkZW4sIHdlbm4gZGllXG4iCi0iWnVzYW1tZW5mw7xocnVuZyBlcm5ldXQgZ2VzdGFydGV0IHdpcmQuIgotCi0jOiBsaWIvbWVyZ2V0b29sLnRjbDo0NQotIywgdGNsLWZvcm1hdAotbXNnaWQgIkZpbGUgJXMgc2VlbXMgdG8gaGF2ZSB1bnJlc29sdmVkIGNvbmZsaWN0cywgc3RpbGwgc3RhZ2U/IgotbXNnc3RyICJEYXRlaSDCuyVzwqsgaGF0IG5pY2h0IGF1ZmdlbMO2c3RlIEtvbmZsaWt0ZS4gVHJvdHpkZW0gYmVyZWl0c3RlbGxlbj8iCi0KLSM6IGxpYi9tZXJnZXRvb2wudGNsOjYwCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiQWRkaW5nIHJlc29sdXRpb24gZm9yICVzIgotbXNnc3RyICJBdWZsw7ZzdW5nIGhpbnp1Z2Vmw7xndCBmw7xyICVzIgotCi0jOiBsaWIvbWVyZ2V0b29sLnRjbDoxNDEKLW1zZ2lkICJDYW5ub3QgcmVzb2x2ZSBkZWxldGlvbiBvciBsaW5rIGNvbmZsaWN0cyB1c2luZyBhIHRvb2wiCi1tc2dzdHIgIiIKLSJLb25mbGlrdGUgZHVyY2ggZ2Vsw7ZzY2h0ZSBEYXRlaWVuIG9kZXIgc3ltYm9saXNjaGUgTGlua3Mga8O2bm5lbiBuaWNodCBkdXJjaCAiCi0iZGFzIFp1c2FtZW5mw7xocnVuZ3N3ZXJremV1ZyBnZWzDtnN0IHdlcmRlbi4iCi0KLSM6IGxpYi9tZXJnZXRvb2wudGNsOjE0NgotbXNnaWQgIkNvbmZsaWN0IGZpbGUgZG9lcyBub3QgZXhpc3QiCi1tc2dzdHIgIktvbmZsaWt0LURhdGVpIGV4aXN0aWVydCBuaWNodCIKLQotIzogbGliL21lcmdldG9vbC50Y2w6MjY0Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiTm90IGEgR1VJIG1lcmdlIHRvb2w6ICclcyciCi1tc2dzdHIgIktlaW4gR1VJIFp1c2FtbWVuZsO8aHJ1bmdzd2Vya3pldWc6IMK7JXPCqyIKLQotIzogbGliL21lcmdldG9vbC50Y2w6MjY4Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiVW5zdXBwb3J0ZWQgbWVyZ2UgdG9vbCAnJXMnIgotbXNnc3RyICJVbmJla2FubnRlcyBadXNhbW1lbmbDvGhydW5nc3dlcmt6ZXVnOiDCuyVzwqsiCi0KLSM6IGxpYi9tZXJnZXRvb2wudGNsOjMwMwotbXNnaWQgIk1lcmdlIHRvb2wgaXMgYWxyZWFkeSBydW5uaW5nLCB0ZXJtaW5hdGUgaXQ/IgotbXNnc3RyICJadXNhbW1lbmbDvGhydW5nc3dlcmt6ZXVnIGzDpHVmdCBiZXJlaXRzLiBTb2xsIGVzIGFiZ2Vicm9jaGVuIHdlcmRlbj8iCi0KLSM6IGxpYi9tZXJnZXRvb2wudGNsOjMyMwotIywgdGNsLWZvcm1hdAotbXNnaWQgIiIKLSJFcnJvciByZXRyaWV2aW5nIHZlcnNpb25zOlxuIgotIiVzIgotbXNnc3RyICIiCi0iRmVobGVyIGJlaW0gQWJydWZlbiBkZXIgRGF0ZWl2ZXJzaW9uZW46XG4iCi0iJXMiCi0KLSM6IGxpYi9tZXJnZXRvb2wudGNsOjM0MwotIywgdGNsLWZvcm1hdAotbXNnaWQgIiIKLSJDb3VsZCBub3Qgc3RhcnQgdGhlIG1lcmdlIHRvb2w6XG4iCi0iXG4iCi0iJXMiCi1tc2dzdHIgIiIKLSJadXNhbW1lbmbDvGhydW5nc3dlcmt6ZXVnIGtvbm50ZSBuaWNodCBnZXN0YXJ0ZXQgd2VyZGVuOlxuIgotIlxuIgotIiVzIgotCi0jOiBsaWIvbWVyZ2V0b29sLnRjbDozNDcKLW1zZ2lkICJSdW5uaW5nIG1lcmdlIHRvb2wuLi4iCi1tc2dzdHIgIlp1c2FtbWVuZsO8aHJ1bmdzd2Vya3pldWcgc3RhcnRlbi4uLiIKLQotIzogbGliL21lcmdldG9vbC50Y2w6Mzc1IGxpYi9tZXJnZXRvb2wudGNsOjM4MwotbXNnaWQgIk1lcmdlIHRvb2wgZmFpbGVkLiIKLW1zZ3N0ciAiWnVzYW1tZW5mw7xocnVuZ3N3ZXJremV1ZyBmZWhsZ2VzY2hsYWdlbi4iCi0KLSM6IGxpYi9vcHRpb24udGNsOjExCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiSW52YWxpZCBnbG9iYWwgZW5jb2RpbmcgJyVzJyIKLW1zZ3N0ciAiVW5nw7xsdGlnZSBnbG9iYWxlIFplaWNoZW5rb2RpZXJ1bmcgwrslc8KrIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxOQotIywgdGNsLWZvcm1hdAotbXNnaWQgIkludmFsaWQgcmVwbyBlbmNvZGluZyAnJXMnIgotbXNnc3RyICJVbmfDvGx0aWdlIEFyY2hpdi1aZWljaGVua29kaWVydW5nIMK7JXPCqyIKLQotIzogbGliL29wdGlvbi50Y2w6MTE3Ci1tc2dpZCAiUmVzdG9yZSBEZWZhdWx0cyIKLW1zZ3N0ciAiVm9yZWluc3RlbGx1bmdlbiB3aWVkZXJoZXJzdGVsbGVuIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxMjEKLW1zZ2lkICJTYXZlIgotbXNnc3RyICJTcGVpY2hlcm4iCi0KLSM6IGxpYi9vcHRpb24udGNsOjEzMQotIywgdGNsLWZvcm1hdAotbXNnaWQgIiVzIFJlcG9zaXRvcnkiCi1tc2dzdHIgIlByb2pla3RhcmNoaXYgJXMiCi0KLSM6IGxpYi9vcHRpb24udGNsOjEzMgotbXNnaWQgIkdsb2JhbCAoQWxsIFJlcG9zaXRvcmllcykiCi1tc2dzdHIgIkdsb2JhbCAoQWxsZSBQcm9qZWt0YXJjaGl2ZSkiCi0KLSM6IGxpYi9vcHRpb24udGNsOjEzOAotbXNnaWQgIlVzZXIgTmFtZSIKLW1zZ3N0ciAiQmVudXR6ZXJuYW1lIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxMzkKLW1zZ2lkICJFbWFpbCBBZGRyZXNzIgotbXNnc3RyICJFLU1haWwtQWRyZXNzZSIKLQotIzogbGliL29wdGlvbi50Y2w6MTQxCi1tc2dpZCAiU3VtbWFyaXplIE1lcmdlIENvbW1pdHMiCi1tc2dzdHIgIlp1c2FtbWVuZsO8aHJ1bmdzLVZlcnNpb25lbiB6dXNhbW1lbmZhc3NlbiIKLQotIzogbGliL29wdGlvbi50Y2w6MTQyCi1tc2dpZCAiTWVyZ2UgVmVyYm9zaXR5IgotbXNnc3RyICJBdXNmw7xocmxpY2hrZWl0IGRlciBadXNhbW1lbmbDvGhyZW4tTWVsZHVuZ2VuIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxNDMKLW1zZ2lkICJTaG93IERpZmZzdGF0IEFmdGVyIE1lcmdlIgotbXNnc3RyICJWZXJnbGVpY2hzc3RhdGlzdGlrIG5hY2ggWnVzYW1tZW5mw7xocmVuIGFuemVpZ2VuIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxNDQKLW1zZ2lkICJVc2UgTWVyZ2UgVG9vbCIKLW1zZ3N0ciAiWnVzYW1tZW5mw7xocnVuZ3N3ZXJremV1ZyIKLQotIzogbGliL29wdGlvbi50Y2w6MTQ2Ci1tc2dpZCAiVHJ1c3QgRmlsZSBNb2RpZmljYXRpb24gVGltZXN0YW1wcyIKLW1zZ3N0ciAiQXVmIERhdGVpw6RuZGVydW5nc2RhdHVtIHZlcmxhc3NlbiIKLQotIzogbGliL29wdGlvbi50Y2w6MTQ3Ci1tc2dpZCAiUHJ1bmUgVHJhY2tpbmcgQnJhbmNoZXMgRHVyaW5nIEZldGNoIgotbXNnc3RyICLDnGJlcm5haG1lendlaWdlIGF1ZnLDpHVtZW4gd8OkaHJlbmQgQW5mb3JkZXJ1bmciCi0KLSM6IGxpYi9vcHRpb24udGNsOjE0OAotbXNnaWQgIk1hdGNoIFRyYWNraW5nIEJyYW5jaGVzIgotbXNnc3RyICJQYXNzZW5kIHp1IMOcYmVybmFobWV6d2VpZyIKLQotIzogbGliL29wdGlvbi50Y2w6MTQ5Ci1tc2dpZCAiQmxhbWUgQ29weSBPbmx5IE9uIENoYW5nZWQgRmlsZXMiCi1tc2dzdHIgIktvcGllLUFubm90aWVyZW4gbnVyIGJlaSBnZcOkbmRlcnRlbiBEYXRlaWVuIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxNTAKLW1zZ2lkICJNaW5pbXVtIExldHRlcnMgVG8gQmxhbWUgQ29weSBPbiIKLW1zZ3N0ciAiTWluZGVzdHphaGwgWmVpY2hlbiBmw7xyIEtvcGllLUFubm90aWVyZW4iCi0KLSM6IGxpYi9vcHRpb24udGNsOjE1MQotbXNnaWQgIkJsYW1lIEhpc3RvcnkgQ29udGV4dCBSYWRpdXMgKGRheXMpIgotbXNnc3RyICJBbnphaGwgVGFnZSBmw7xyIEhpc3Rvcmllbi1Lb250ZXh0IgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxNTIKLW1zZ2lkICJOdW1iZXIgb2YgRGlmZiBDb250ZXh0IExpbmVzIgotbXNnc3RyICJBbnphaGwgZGVyIEtvbnRleHR6ZWlsZW4gYmVpbSBWZXJnbGVpY2giCi0KLSM6IGxpYi9vcHRpb24udGNsOjE1MwotbXNnaWQgIkNvbW1pdCBNZXNzYWdlIFRleHQgV2lkdGgiCi1tc2dzdHIgIlRleHRicmVpdGUgZGVyIFZlcnNpb25zYmVzY2hyZWlidW5nIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxNTQKLW1zZ2lkICJOZXcgQnJhbmNoIE5hbWUgVGVtcGxhdGUiCi1tc2dzdHIgIk5hbWVuc3ZvcnNjaGxhZyBmw7xyIG5ldWUgWndlaWdlIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxNTUKLW1zZ2lkICJEZWZhdWx0IEZpbGUgQ29udGVudHMgRW5jb2RpbmciCi1tc2dzdHIgIlZvcmVpbmdlc3RlbGx0ZSBaZWljaGVua29kaWVydW5nIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoyMDMKLW1zZ2lkICJDaGFuZ2UiCi1tc2dzdHIgIsOEbmRlcm4iCi0KLSM6IGxpYi9vcHRpb24udGNsOjIzMAotbXNnaWQgIlNwZWxsaW5nIERpY3Rpb25hcnk6IgotbXNnc3RyICJXw7ZydGVyYnVjaCBSZWNodHNjaHJlaWJwcsO8ZnVuZzoiCi0KLSM6IGxpYi9vcHRpb24udGNsOjI1NAotbXNnaWQgIkNoYW5nZSBGb250IgotbXNnc3RyICJTY2hyaWZ0YXJ0IMOkbmRlcm4iCi0KLSM6IGxpYi9vcHRpb24udGNsOjI1OAotIywgdGNsLWZvcm1hdAotbXNnaWQgIkNob29zZSAlcyIKLW1zZ3N0ciAiJXMgd8OkaGxlbiIKLQotIzogbGliL29wdGlvbi50Y2w6MjY0Ci1tc2dpZCAicHQuIgotbXNnc3RyICJwdC4iCi0KLSM6IGxpYi9vcHRpb24udGNsOjI3OAotbXNnaWQgIlByZWZlcmVuY2VzIgotbXNnc3RyICJFaW5zdGVsbHVuZ2VuIgotCi0jOiBsaWIvb3B0aW9uLnRjbDozMTQKLW1zZ2lkICJGYWlsZWQgdG8gY29tcGxldGVseSBzYXZlIG9wdGlvbnM6IgotbXNnc3RyICJPcHRpb25lbiBrb25udGVuIG5pY2h0IGdlc3BlaWNoZXJ0IHdlcmRlbjoiCi0KLSM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxOQotbXNnaWQgIkFkZCBSZW1vdGUiCi1tc2dzdHIgIkV4dGVybmVzIEFyY2hpdiBoaW56dWbDvGdlbiIKLQotIzogbGliL3JlbW90ZV9hZGQudGNsOjI0Ci1tc2dpZCAiQWRkIE5ldyBSZW1vdGUiCi1tc2dzdHIgIk5ldWVzIGV4dGVybmVzIEFyY2hpdiBoaW56dWbDvGdlbiIKLQotIzogbGliL3JlbW90ZV9hZGQudGNsOjI4IGxpYi90b29sc19kbGcudGNsOjM2Ci1tc2dpZCAiQWRkIgotbXNnc3RyICJIaW56dWbDvGdlbiIKLQotIzogbGliL3JlbW90ZV9hZGQudGNsOjM3Ci1tc2dpZCAiUmVtb3RlIERldGFpbHMiCi1tc2dzdHIgIkVpbnplbGhlaXRlbiBkZXMgZXh0ZXJuZW4gQXJjaGl2cyIKLQotIzogbGliL3JlbW90ZV9hZGQudGNsOjUwCi1tc2dpZCAiTG9jYXRpb246IgotbXNnc3RyICJBZHJlc3NlOiIKLQotIzogbGliL3JlbW90ZV9hZGQudGNsOjYyCi1tc2dpZCAiRnVydGhlciBBY3Rpb24iCi1tc2dzdHIgIldlaXRlcmUgQWt0aW9uIGpldHp0IgotCi0jOiBsaWIvcmVtb3RlX2FkZC50Y2w6NjUKLW1zZ2lkICJGZXRjaCBJbW1lZGlhdGVseSIKLW1zZ3N0ciAiR2xlaWNoIGFuZm9yZGVybiIKLQotIzogbGliL3JlbW90ZV9hZGQudGNsOjcxCi1tc2dpZCAiSW5pdGlhbGl6ZSBSZW1vdGUgUmVwb3NpdG9yeSBhbmQgUHVzaCIKLW1zZ3N0ciAiRXh0ZXJuZXMgQXJjaGl2IGluaXRpYWxpc2llcmVuIHVuZCBkYWhpbiB2ZXJzZW5kZW4iCi0KLSM6IGxpYi9yZW1vdGVfYWRkLnRjbDo3NwotbXNnaWQgIkRvIE5vdGhpbmcgRWxzZSBOb3ciCi1tc2dzdHIgIk5pY2h0cyB0dW4iCi0KLSM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxMDEKLW1zZ2lkICJQbGVhc2Ugc3VwcGx5IGEgcmVtb3RlIG5hbWUuIgotbXNnc3RyICJCaXR0ZSBnZWJlbiBTaWUgZWluZW4gTmFtZW4gZGVzIGV4dGVybmVuIEFyY2hpdnMgYW4uIgotCi0jOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTE0Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiJyVzJyBpcyBub3QgYW4gYWNjZXB0YWJsZSByZW1vdGUgbmFtZS4iCi1tc2dzdHIgIsK7JXPCqyBpc3Qga2VpbiB6dWzDpHNzaWdlciBOYW1lIGVpbmVzIGV4dGVybmVuIEFyY2hpdnMuIgotCi0jOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTI1Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIGFkZCByZW1vdGUgJyVzJyBvZiBsb2NhdGlvbiAnJXMnLiIKLW1zZ3N0ciAiRmVobGVyIGJlaW0gSGluenVmw7xnZW4gZGVzIGV4dGVybmVuIEFyY2hpdnMgwrslc8KrIGF1cyBIZXJrdW5mdHNvcnQgwrslc8KrLiIKLQotIzogbGliL3JlbW90ZV9hZGQudGNsOjEzMyBsaWIvdHJhbnNwb3J0LnRjbDo2Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiZmV0Y2ggJXMiCi1tc2dzdHIgIsK7JXPCqyBhbmZvcmRlcm4iCi0KLSM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxMzQKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJGZXRjaGluZyB0aGUgJXMiCi1tc2dzdHIgIsK7JXPCqyBhbmZvcmRlcm4iCi0KLSM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxNTcKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJEbyBub3Qga25vdyBob3cgdG8gaW5pdGlhbGl6ZSByZXBvc2l0b3J5IGF0IGxvY2F0aW9uICclcycuIgotbXNnc3RyICJJbml0aWFsaXNpZXJlbiBlaW5lcyBleHRlcm5lbiBBcmNoaXZzIGFuIEFkcmVzc2Ugwrslc8KrIGlzdCBuaWNodCBtw7ZnbGljaC4iCi0KLSM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxNjMgbGliL3RyYW5zcG9ydC50Y2w6MjUgbGliL3RyYW5zcG9ydC50Y2w6NjMKLSM6IGxpYi90cmFuc3BvcnQudGNsOjgxCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAicHVzaCAlcyIKLW1zZ3N0ciAiwrslc8KrIHZlcnNlbmRlbi4uLiIKLQotIzogbGliL3JlbW90ZV9hZGQudGNsOjE2NAotIywgdGNsLWZvcm1hdAotbXNnaWQgIlNldHRpbmcgdXAgdGhlICVzIChhdCAlcykiCi1tc2dzdHIgIkVpbnJpY2h0ZW4gdm9uIMK7JXPCqyBhbiDCuyVzwqsiCi0KLSM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MjkgbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDozNAotbXNnaWQgIkRlbGV0ZSBCcmFuY2ggUmVtb3RlbHkiCi1tc2dzdHIgIlp3ZWlnIGluIGV4dGVybmVtIEFyY2hpdiBsw7ZzY2hlbiIKLQotIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDo0NwotbXNnaWQgIkZyb20gUmVwb3NpdG9yeSIKLW1zZ3N0ciAiSW4gUHJvamVrdGFyY2hpdiIKLQotIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDo1MCBsaWIvdHJhbnNwb3J0LnRjbDoxMzQKLW1zZ2lkICJSZW1vdGU6IgotbXNnc3RyICJFeHRlcm5lcyBBcmNoaXY6IgotCi0jOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjY2IGxpYi90cmFuc3BvcnQudGNsOjE0OQotbXNnaWQgIkFyYml0cmFyeSBMb2NhdGlvbjoiCi1tc2dzdHIgIkFkcmVzc2U6IgotCi0jOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjg0Ci1tc2dpZCAiQnJhbmNoZXMiCi1tc2dzdHIgIlp3ZWlnZSIKLQotIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoxMDkKLW1zZ2lkICJEZWxldGUgT25seSBJZiIKLW1zZ3N0ciAiTnVyIGzDtnNjaGVuLCB3ZW5uIgotCi0jOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjExMQotbXNnaWQgIk1lcmdlZCBJbnRvOiIKLW1zZ3N0ciAiWnVzYW1tZW5nZWbDvGhydCBtaXQ6IgotCi0jOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjE1MgotbXNnaWQgIkEgYnJhbmNoIGlzIHJlcXVpcmVkIGZvciAnTWVyZ2VkIEludG8nLiIKLW1zZ3N0ciAiRsO8ciDCu1p1c2FtbWVuZsO8aHJlbiBtaXTCqyBtdXNzIGVpbiBad2VpZyBhbmdlZ2ViZW4gd2VyZGVuLiIKLQotIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoxODQKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICIiCi0iVGhlIGZvbGxvd2luZyBicmFuY2hlcyBhcmUgbm90IGNvbXBsZXRlbHkgbWVyZ2VkIGludG8gJXM6XG4iCi0iXG4iCi0iIC0gJXMiCi1tc2dzdHIgIiIKLSJGb2xnZW5kZSBad2VpZ2Ugc2luZCBub2NoIG5pY2h0IG1pdCDCuyVzwqsgenVzYW1tZW5nZWbDvGhydDpcbiIKLSJcbiIKLSIgLSAlcyIKLQotIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoxODkKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICIiCi0iT25lIG9yIG1vcmUgb2YgdGhlIG1lcmdlIHRlc3RzIGZhaWxlZCBiZWNhdXNlIHlvdSBoYXZlIG5vdCBmZXRjaGVkIHRoZSAiCi0ibmVjZXNzYXJ5IGNvbW1pdHMuICBUcnkgZmV0Y2hpbmcgZnJvbSAlcyBmaXJzdC4iCi1tc2dzdHIgIiIKLSJFaW4gb2RlciBtZWhyZXJlIFp1c2FtbWVuZsO8aHJ1bmdlbiBzaW5kIGZlaGxnZXNjaGxhZ2VuLCBkYSBTaWUgbmljaHQgZGllICIKLSJub3R3ZW5kaWdlbiBWZXJzaW9uZW4gdm9yaGVyIGFuZ2Vmb3JkZXJ0IGhhYmVuLiAgU2llIHNvbGx0ZW4gdmVyc3VjaGVuLCAiCi0ienVlcnN0IHZvbiDCuyVzwqsgYW56dWZvcmRlcm4uIgotCi0jOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjIwNwotbXNnaWQgIlBsZWFzZSBzZWxlY3Qgb25lIG9yIG1vcmUgYnJhbmNoZXMgdG8gZGVsZXRlLiIKLW1zZ3N0ciAiQml0dGUgd8OkaGxlbiBTaWUgbWluZGVzdGVucyBlaW5lbiBad2VpZywgZGVyIGdlbMO2c2NodCB3ZXJkZW4gc29sbC4iCi0KLSM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MjI2Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiRGVsZXRpbmcgYnJhbmNoZXMgZnJvbSAlcyIKLW1zZ3N0ciAiWndlaWdlIGF1ZiDCuyVzwqsgd2VyZGVuIGdlbMO2c2NodCIKLQotIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoyOTIKLW1zZ2lkICJObyByZXBvc2l0b3J5IHNlbGVjdGVkLiIKLW1zZ3N0ciAiS2VpbiBQcm9qZWt0YXJjaGl2IGF1c2dld8OkaGx0LiIKLQotIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoyOTcKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJTY2FubmluZyAlcy4uLiIKLW1zZ3N0ciAiwrslc8KrIGxhZGVuLi4uIgotCi0jOiBsaWIvcmVtb3RlLnRjbDoxNjMKLW1zZ2lkICJSZW1vdmUgUmVtb3RlIgotbXNnc3RyICJFeHRlcm5lcyBBcmNoaXYgZW50ZmVybmVuIgotCi0jOiBsaWIvcmVtb3RlLnRjbDoxNjgKLW1zZ2lkICJQcnVuZSBmcm9tIgotbXNnc3RyICJBdWZyw6R1bWVuIHZvbiIKLQotIzogbGliL3JlbW90ZS50Y2w6MTczCi1tc2dpZCAiRmV0Y2ggZnJvbSIKLW1zZ3N0ciAiQW5mb3JkZXJuIHZvbiIKLQotIzogbGliL3JlbW90ZS50Y2w6MjE1Ci1tc2dpZCAiUHVzaCB0byIKLW1zZ3N0ciAiVmVyc2VuZGVuIG5hY2giCi0KLSM6IGxpYi9zZWFyY2gudGNsOjIxCi1tc2dpZCAiRmluZDoiCi1tc2dzdHIgIlN1Y2hlbjoiCi0KLSM6IGxpYi9zZWFyY2gudGNsOjIzCi1tc2dpZCAiTmV4dCIKLW1zZ3N0ciAiTsOkY2hzdGVyIgotCi0jOiBsaWIvc2VhcmNoLnRjbDoyNAotbXNnaWQgIlByZXYiCi1tc2dzdHIgIlZvcmlnZXIiCi0KLSM6IGxpYi9zZWFyY2gudGNsOjI1Ci1tc2dpZCAiQ2FzZS1TZW5zaXRpdmUiCi1tc2dzdHIgIkdyb8OfLS9LbGVpbnNjaHJlaWJ1bmcgdW50ZXJzY2hlaWRlbiIKLQotIzogbGliL3Nob3J0Y3V0LnRjbDoyMSBsaWIvc2hvcnRjdXQudGNsOjYyCi1tc2dpZCAiQ2Fubm90IHdyaXRlIHNob3J0Y3V0OiIKLW1zZ3N0ciAiRmVobGVyIGJlaW0gU2NocmVpYmVuIGRlciBWZXJrbsO8cGZ1bmc6IgotCi0jOiBsaWIvc2hvcnRjdXQudGNsOjEzNwotbXNnaWQgIkNhbm5vdCB3cml0ZSBpY29uOiIKLW1zZ3N0ciAiRmVobGVyIGJlaW0gRXJzdGVsbGVuIGRlcyBJY29uczoiCi0KICM6IGxpYi9zcGVsbGNoZWNrLnRjbDo1NwogbXNnaWQgIlVuc3VwcG9ydGVkIHNwZWxsIGNoZWNrZXIiCiBtc2dzdHIgIlJlY2h0c2NocmVpYnByw7xmdW5nc3Byb2dyYW1tIG5pY2h0IHVudGVyc3TDvHR6dCIKQEAgLTIzNTYsMzIgKzY1NywxNjIxIEBACiBtc2dpZCAiU3BlbGwgQ2hlY2tlciBGYWlsZWQiCiBtc2dzdHIgIlJlY2h0c2NocmVpYnByw7xmdW5nIGZlaGxnZXNjaGxhZ2VuIgogCi0jOiBsaWIvc3Noa2V5LnRjbDozMQorIzogbGliL3RyYW5zcG9ydC50Y2w6NiBsaWIvcmVtb3RlX2FkZC50Y2w6MTMyCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiZmV0Y2ggJXMiCittc2dzdHIgIsK7JXPCqyBhbmZvcmRlcm4iCisKKyM6IGxpYi90cmFuc3BvcnQudGNsOjcKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJGZXRjaGluZyBuZXcgY2hhbmdlcyBmcm9tICVzIgorbXNnc3RyICJOZXVlIMOEbmRlcnVuZ2VuIHZvbiDCuyVzwqsgaG9sZW4iCisKKyM6IGxpYi90cmFuc3BvcnQudGNsOjE4CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAicmVtb3RlIHBydW5lICVzIgorbXNnc3RyICJHZWzDtnNjaHRlIGV4dGVybmUgQnJhbmNoZXMgYXVzIMK7JXPCqyBlbnRmZXJuZW4iCisKKyM6IGxpYi90cmFuc3BvcnQudGNsOjE5CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUHJ1bmluZyB0cmFja2luZyBicmFuY2hlcyBkZWxldGVkIGZyb20gJXMiCittc2dzdHIgIkdlbMO2c2NodGUgZXh0ZXJuZSBUcmFja2luZ2JyYW5jaGVzIGF1cyDCuyVzwqsgd2VyZGVuIGVudGZlcm50IgorCisjOiBsaWIvdHJhbnNwb3J0LnRjbDoyNQorbXNnaWQgImZldGNoIGFsbCByZW1vdGVzIgorbXNnc3RyICJBYnJ1ZmVuIGFsbGVyIGV4dGVybmVuIgorCisjOiBsaWIvdHJhbnNwb3J0LnRjbDoyNgorbXNnaWQgIkZldGNoaW5nIG5ldyBjaGFuZ2VzIGZyb20gYWxsIHJlbW90ZXMiCittc2dzdHIgIk5ldWUgw4RuZGVydW5nZW4gdm9uIGFsbGVuIGV4dGVybmVuIGFuZm9yZGVybiIKKworIzogbGliL3RyYW5zcG9ydC50Y2w6NDAKK21zZ2lkICJyZW1vdGUgcHJ1bmUgYWxsIHJlbW90ZXMiCittc2dzdHIgIkV4dGVybiB2ZXJhbHRldGUgQnJhbmNoZXMgZW50ZmVybmVuIGFsbGVyIFJlcG9zaXRvcmllcyIKKworIzogbGliL3RyYW5zcG9ydC50Y2w6NDEKK21zZ2lkICJQcnVuaW5nIHRyYWNraW5nIGJyYW5jaGVzIGRlbGV0ZWQgZnJvbSBhbGwgcmVtb3RlcyIKK21zZ3N0ciAiIgorIkdlbMO2c2NodGUgZXh0ZXJuZSBUcmFja2luZ2JyYW5jaGVzIGF1cyBhbGxlbiBSZXBvc2l0b3JpZXMgd2VyZGVuIGVudGZlcm50IgorCisjOiBsaWIvdHJhbnNwb3J0LnRjbDo1NCBsaWIvdHJhbnNwb3J0LnRjbDo5MiBsaWIvdHJhbnNwb3J0LnRjbDoxMTAKKyM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxNjIKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJwdXNoICVzIgorbXNnc3RyICLCuyVzwqsgdmVyc2VuZGVuLi4uIgorCisjOiBsaWIvdHJhbnNwb3J0LnRjbDo1NQorIywgdGNsLWZvcm1hdAorbXNnaWQgIlB1c2hpbmcgY2hhbmdlcyB0byAlcyIKK21zZ3N0ciAiw4RuZGVydW5nZW4gbmFjaCDCuyVzwqsgdmVyc2VuZGVuIgorCisjOiBsaWIvdHJhbnNwb3J0LnRjbDo5MworIywgdGNsLWZvcm1hdAorbXNnaWQgIk1pcnJvcmluZyB0byAlcyIKK21zZ3N0ciAiU3BpZWdlbG4gbmFjaCAlcyIKKworIzogbGliL3RyYW5zcG9ydC50Y2w6MTExCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUHVzaGluZyAlcyAlcyB0byAlcyIKK21zZ3N0ciAiJXMgJXMgbmFjaCAlcyB2ZXJzZW5kZW4iCisKKyM6IGxpYi90cmFuc3BvcnQudGNsOjEzMgorbXNnaWQgIlB1c2ggQnJhbmNoZXMiCittc2dzdHIgIkJyYW5jaGVzIHZlcnNlbmRlbiIKKworIzogbGliL3RyYW5zcG9ydC50Y2w6MTQxIGxpYi9jaGVja291dF9vcC50Y2w6NTgwIGxpYi9yZW1vdGVfYWRkLnRjbDozNAorIzogbGliL2Jyb3dzZXIudGNsOjI5MiBsaWIvYnJhbmNoX2NoZWNrb3V0LnRjbDozMCBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MzIKKyM6IGxpYi9jaG9vc2VfZm9udC50Y2w6NDUgbGliL29wdGlvbi50Y2w6MTI3IGxpYi90b29sc19kbGcudGNsOjQxCisjOiBsaWIvdG9vbHNfZGxnLnRjbDoyMDIgbGliL3Rvb2xzX2RsZy50Y2w6MzQ1IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6NDMKKyM6IGxpYi9icmFuY2hfY3JlYXRlLnRjbDozNyBsaWIvYnJhbmNoX2RlbGV0ZS50Y2w6MzQgbGliL21lcmdlLnRjbDoxNzgKK21zZ2lkICJDYW5jZWwiCittc2dzdHIgIkFiYnJlY2hlbiIKKworIzogbGliL3RyYW5zcG9ydC50Y2w6MTQ3Cittc2dpZCAiU291cmNlIEJyYW5jaGVzIgorbXNnc3RyICJMb2thbGUgQnJhbmNoZXMiCisKKyM6IGxpYi90cmFuc3BvcnQudGNsOjE2MgorbXNnaWQgIkRlc3RpbmF0aW9uIFJlcG9zaXRvcnkiCittc2dzdHIgIlppZWwtUmVwb3NpdG9yeSIKKworIzogbGliL3RyYW5zcG9ydC50Y2w6MTY1IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6NTEKK21zZ2lkICJSZW1vdGU6IgorbXNnc3RyICJFeHRlcm5lcyBSZXBvc2l0b3J5OiIKKworIzogbGliL3RyYW5zcG9ydC50Y2w6MTg3IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6NzIKK21zZ2lkICJBcmJpdHJhcnkgTG9jYXRpb246IgorbXNnc3RyICJCZWxpZWJpZ2UgQWRyZXNzZToiCisKKyM6IGxpYi90cmFuc3BvcnQudGNsOjIwNQorbXNnaWQgIlRyYW5zZmVyIE9wdGlvbnMiCittc2dzdHIgIk5ldHp3ZXJrLUVpbnN0ZWxsdW5nZW4iCisKKyM6IGxpYi90cmFuc3BvcnQudGNsOjIwNworbXNnaWQgIkZvcmNlIG92ZXJ3cml0ZSBleGlzdGluZyBicmFuY2ggKG1heSBkaXNjYXJkIGNoYW5nZXMpIgorbXNnc3RyICIiCisiw5xiZXJzY2hyZWliZW4gdm9uIGV4aXN0aWVyZW5kZW4gQnJhbmNoZXMgZXJ6d2luZ2VuIChrw7ZubnRlIMOEbmRlcnVuZ2VuICIKKyJsw7ZzY2hlbikiCisKKyM6IGxpYi90cmFuc3BvcnQudGNsOjIxMQorbXNnaWQgIlVzZSB0aGluIHBhY2sgKGZvciBzbG93IG5ldHdvcmsgY29ubmVjdGlvbnMpIgorbXNnc3RyICJLb21wYWt0ZXMgRGF0ZW5mb3JtYXQgYmVudXR6ZW4gKGbDvHIgbGFuZ3NhbWUgTmV0enZlcmJpbmR1bmdlbikiCisKKyM6IGxpYi90cmFuc3BvcnQudGNsOjIxNQorbXNnaWQgIkluY2x1ZGUgdGFncyIKK21zZ3N0ciAiTWl0IFRhZ3MgdmVyc2VuZGVuIgorCisjOiBsaWIvdHJhbnNwb3J0LnRjbDoyMjkKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIlcyAoJXMpOiBQdXNoIgorbXNnc3RyICIlcyAoJXMpOiBWZXJzZW5kZW4iCisKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6ODUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJGZXRjaGluZyAlcyBmcm9tICVzIgorbXNnc3RyICLDhG5kZXJ1bmdlbiDCuyVzwqsgdm9uIMK7JXPCqyBhbmZvcmRlcm4iCisKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6MTMzCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiZmF0YWw6IENhbm5vdCByZXNvbHZlICVzIgorbXNnc3RyICJGZWhsZXI6IMK7JXPCqyBrYW5uIG5pY2h0IGFscyBCcmFuY2ggb2RlciBWZXJzaW9uIGVya2FubnQgd2VyZGVuIgorCisjOiBsaWIvY2hlY2tvdXRfb3AudGNsOjE0NiBsaWIvc3Noa2V5LnRjbDo1OCBsaWIvY29uc29sZS50Y2w6ODEKKyM6IGxpYi9kYXRhYmFzZS50Y2w6MzAKK21zZ2lkICJDbG9zZSIKK21zZ3N0ciAiU2NobGllw59lbiIKKworIzogbGliL2NoZWNrb3V0X29wLnRjbDoxNzUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJyVzJyBkb2VzIG5vdCBleGlzdC4iCittc2dzdHIgIkJyYW5jaCDCuyVzwqsgZXhpc3RpZXJ0IG5pY2h0LiIKKworIzogbGliL2NoZWNrb3V0X29wLnRjbDoxOTQKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gY29uZmlndXJlIHNpbXBsaWZpZWQgZ2l0LXB1bGwgZm9yICclcycuIgorbXNnc3RyICJGZWhsZXIgYmVpbSBFaW5yaWNodGVuIGRlciB2ZXJlaW5mYWNodGVuIGdpdC1wdWxsIGbDvHIgwrslc8KrLiIKKworIzogbGliL2NoZWNrb3V0X29wLnRjbDoyMDIgbGliL2JyYW5jaF9yZW5hbWUudGNsOjEwMgorIywgdGNsLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIGFscmVhZHkgZXhpc3RzLiIKK21zZ3N0ciAiQnJhbmNoIMK7JXPCqyBleGlzdGllcnQgYmVyZWl0cy4iCisKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6MjI5CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiIgorIkJyYW5jaCAnJXMnIGFscmVhZHkgZXhpc3RzLlxuIgorIlxuIgorIkl0IGNhbm5vdCBmYXN0LWZvcndhcmQgdG8gJXMuXG4iCisiQSBtZXJnZSBpcyByZXF1aXJlZC4iCittc2dzdHIgIiIKKyJCcmFuY2ggwrslc8KrIGV4aXN0aWVydCBiZXJlaXRzLlxuIgorIlxuIgorIkJyYW5jaCBrYW5uIG5pY2h0IGF1ZiDCuyVzwqsgdm9yZ2VzcHVsdCB3ZXJkZW4uIFJlZ3Vsw6RyZXMgWnVzYW1tZW5mw7xocmVuIGlzdCAiCisibm90d2VuZGlnLiIKKworIzogbGliL2NoZWNrb3V0X29wLnRjbDoyNDMKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJNZXJnZSBzdHJhdGVneSAnJXMnIG5vdCBzdXBwb3J0ZWQuIgorbXNnc3RyICJadXNhbW1lbmbDvGhydW5nc21ldGhvZGUgwrslc8KrIG5pY2h0IHVudGVyc3TDvHR6dC4iCisKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6MjYyCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHVwZGF0ZSAnJXMnLiIKK21zZ3N0ciAiQWt0dWFsaXNpZXJlbiB2b24gwrslc8KrIGZlaGxnZXNjaGxhZ2VuLiIKKworIzogbGliL2NoZWNrb3V0X29wLnRjbDoyNzQKK21zZ2lkICJTdGFnaW5nIGFyZWEgKGluZGV4KSBpcyBhbHJlYWR5IGxvY2tlZC4iCittc2dzdHIgIkJlcmVpdHN0ZWxsdW5nICjCu2luZGV4wqspIGlzdCB6dXIgQmVhcmJlaXR1bmcgZ2VzcGVycnQgKMK7bG9ja2VkwqspLiIKKworIzogbGliL2NoZWNrb3V0X29wLnRjbDoyODkKK21zZ2lkICIiCisiTGFzdCBzY2FubmVkIHN0YXRlIGRvZXMgbm90IG1hdGNoIHJlcG9zaXRvcnkgc3RhdGUuXG4iCisiXG4iCisiQW5vdGhlciBHaXQgcHJvZ3JhbSBoYXMgbW9kaWZpZWQgdGhpcyByZXBvc2l0b3J5IHNpbmNlIHRoZSBsYXN0IHNjYW4uICBBICIKKyJyZXNjYW4gbXVzdCBiZSBwZXJmb3JtZWQgYmVmb3JlIHRoZSBjdXJyZW50IGJyYW5jaCBjYW4gYmUgY2hhbmdlZC5cbiIKKyJcbiIKKyJUaGUgcmVzY2FuIHdpbGwgYmUgYXV0b21hdGljYWxseSBzdGFydGVkIG5vdy5cbiIKK21zZ3N0ciAiIgorIkRlciBsZXR6dGUgZ2VsYWRlbmUgU3RhdHVzIHN0aW1tdCBuaWNodCBtZWhyIG1pdCBkZW0gUmVwb3NpdG9yeSDDvGJlcmVpbi5cbiIKKyJcbiIKKyJFaW4gYW5kZXJlcyBHaXQtUHJvZ3JhbW0gaGF0IGRhcyBSZXBvc2l0b3J5IHNlaXQgZGVtIGxldHp0ZW4gTGFkZW4gIgorImdlw6RuZGVydC4gIFZvciBkZW0gV2VjaHNlbG4gZGVzIGxva2FsZW4gQnJhbmNoZXMgbXVzcyBuZXUgZ2VsYWRlbiB3ZXJkZW4uXG4iCisiXG4iCisiRXMgd2lyZCBnbGVpY2ggbmV1IGdlbGFkZW4uXG4iCisKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6MzQ1CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgd29ya2luZyBkaXJlY3RvcnkgdG8gJyVzJy4uLiIKK21zZ3N0ciAiQXJiZWl0c2tvcGllIGFrdHVhbGlzaWVyZW4gYXVmIMK7JXPCqy4uLiIKKworIzogbGliL2NoZWNrb3V0X29wLnRjbDozNDYKK21zZ2lkICJmaWxlcyBjaGVja2VkIG91dCIKK21zZ3N0ciAiRGF0ZWllbiBha3R1YWxpc2llcnQiCisKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6Mzc3CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiQWJvcnRlZCBjaGVja291dCBvZiAnJXMnIChmaWxlIGxldmVsIG1lcmdpbmcgaXMgcmVxdWlyZWQpLiIKK21zZ3N0ciAiIgorIkJyYW5jaCDCuyVzwqsgQXVzY2hlY2tlbiBhYmdlYnJvY2hlbiAoWnVzYW1tZW5mw7xocmVuIGRlciBEYXRlaWVuIGlzdCAiCisibm90d2VuZGlnKS4iCisKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6Mzc4Cittc2dpZCAiRmlsZSBsZXZlbCBtZXJnZSByZXF1aXJlZC4iCittc2dzdHIgIlp1c2FtbWVuZsO8aHJlbiBkZXIgRGF0ZWllbiBpc3Qgbm90d2VuZGlnLiIKKworIzogbGliL2NoZWNrb3V0X29wLnRjbDozODIKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJTdGF5aW5nIG9uIGJyYW5jaCAnJXMnLiIKK21zZ3N0ciAiRXMgd2lyZCBhdWYgQnJhbmNoIMK7JXPCqyB2ZXJibGllYmVuLiIKKworIzogbGliL2NoZWNrb3V0X29wLnRjbDo0NTMKK21zZ2lkICIiCisiWW91IGFyZSBubyBsb25nZXIgb24gYSBsb2NhbCBicmFuY2guXG4iCisiXG4iCisiSWYgeW91IHdhbnRlZCB0byBiZSBvbiBhIGJyYW5jaCwgY3JlYXRlIG9uZSBub3cgc3RhcnRpbmcgZnJvbSAnVGhpcyBEZXRhY2hlZCAiCisiQ2hlY2tvdXQnLiIKK21zZ3N0ciAiIgorIkRpZSBBcmJlaXRza29waWUgaXN0IG5pY2h0IGF1ZiBlaW5lbSBsb2thbGVuIEJyYW5jaC5cbiIKKyJcbiIKKyJXZW5uIFNpZSBhdWYgZWluZW0gQnJhbmNoIGFyYmVpdGVuIG3DtmNodGVuLCBlcnN0ZWxsZW4gU2llIGJpdHRlIGpldHp0IGVpbmVuICIKKyJCcmFuY2ggbWl0IGRlciBBdXN3YWhsIMK7TG9zZ2Vsw7ZzdGUgQXJiZWl0c2tvcGllLVZlcnNpb27Cqy4iCisKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6NTA0IGxpYi9jaGVja291dF9vcC50Y2w6NTA4CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiQ2hlY2tlZCBvdXQgJyVzJy4iCittc2dzdHIgIlVtZ2VzdGVsbHQgYXVmIMK7JXPCqy4iCisKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6NTM2CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUmVzZXR0aW5nICclcycgdG8gJyVzJyB3aWxsIGxvc2UgdGhlIGZvbGxvd2luZyBjb21taXRzOiIKK21zZ3N0ciAiVW1zZXR6ZW4gdm9uIMK7JXPCqyBuYWNoIMK7JXPCqyB3aXJkIGZvbGdlbmRlIENvbW1pdHMgdmVybGllcmVuOiIKKworIzogbGliL2NoZWNrb3V0X29wLnRjbDo1NTgKK21zZ2lkICJSZWNvdmVyaW5nIGxvc3QgY29tbWl0cyBtYXkgbm90IGJlIGVhc3kuIgorbXNnc3RyICIiCisiVmVybG9yZW5lIENvbW1pdHMga8O2bm5lbiBudXIgbWl0IGdyw7bDn2VyZW0gQXVmd2FuZCB3aWVkZXJoZXJnZXN0ZWxsdCB3ZXJkZW4uIgorCisjOiBsaWIvY2hlY2tvdXRfb3AudGNsOjU2MworIywgdGNsLWZvcm1hdAorbXNnaWQgIlJlc2V0ICclcyc/IgorbXNnc3RyICLCuyVzwqsgdW1zZXR6ZW4/IgorCisjOiBsaWIvY2hlY2tvdXRfb3AudGNsOjU2OCBsaWIvdG9vbHNfZGxnLnRjbDozMzYgbGliL21lcmdlLnRjbDoxNzAKK21zZ2lkICJWaXN1YWxpemUiCittc2dzdHIgIkRhcnN0ZWxsZW4iCisKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6NTcyIGxpYi9icmFuY2hfY3JlYXRlLnRjbDo4NQorbXNnaWQgIlJlc2V0IgorbXNnc3RyICJVbXNldHplbiAoUmVzZXQpIgorCisjOiBsaWIvY2hlY2tvdXRfb3AudGNsOjYzNgorIywgdGNsLWZvcm1hdAorbXNnaWQgIiIKKyJGYWlsZWQgdG8gc2V0IGN1cnJlbnQgYnJhbmNoLlxuIgorIlxuIgorIlRoaXMgd29ya2luZyBkaXJlY3RvcnkgaXMgb25seSBwYXJ0aWFsbHkgc3dpdGNoZWQuICBXZSBzdWNjZXNzZnVsbHkgdXBkYXRlZCAiCisieW91ciBmaWxlcywgYnV0IGZhaWxlZCB0byB1cGRhdGUgYW4gaW50ZXJuYWwgR2l0IGZpbGUuXG4iCisiXG4iCisiVGhpcyBzaG91bGQgbm90IGhhdmUgb2NjdXJyZWQuICAlcyB3aWxsIG5vdyBjbG9zZSBhbmQgZ2l2ZSB1cC4iCittc2dzdHIgIiIKKyJMb2thbGVyIEJyYW5jaCBrYW5uIG5pY2h0IGdlc2V0enQgd2VyZGVuLlxuIgorIlxuIgorIkRpZXNlIEFyYmVpdHNrb3BpZSBpc3QgbnVyIHRlaWx3ZWlzZSB1bWdlc3RlbGx0LiBEaWUgRGF0ZWllbiBzaW5kIGtvcnJla3QgIgorImFrdHVhbGlzaWVydCwgYWJlciBlaW5pZ2UgaW50ZXJuZSBHaXQtRGF0ZWllbiBrb25udGVuIG5pY2h0IGdlw6RuZGVydCAiCisid2VyZGVuLlxuIgorIlxuIgorIkRpZXMgaXN0IGVpbiBpbnRlcm5lciBQcm9ncmFtbWZlaGxlciB2b24gJXMuIFByb2dyYW1tIHdpcmQgamV0enQgYWJnZWJyb2NoZW4uIgorCisjOiBsaWIvcmVtb3RlX2FkZC50Y2w6MjAKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIlcyAoJXMpOiBBZGQgUmVtb3RlIgorbXNnc3RyICIlcyAoJXMpOiBFeHRlcm5lcyBSZXBvc2l0b3J5IGhpbnp1ZsO8Z2VuIgorCisjOiBsaWIvcmVtb3RlX2FkZC50Y2w6MjUKK21zZ2lkICJBZGQgTmV3IFJlbW90ZSIKK21zZ3N0ciAiTmV1ZXMgZXh0ZXJuZXMgUmVwb3NpdG9yeSBoaW56dWbDvGdlbiIKKworIzogbGliL3JlbW90ZV9hZGQudGNsOjMwIGxpYi90b29sc19kbGcudGNsOjM3Cittc2dpZCAiQWRkIgorbXNnc3RyICJIaW56dWbDvGdlbiIKKworIzogbGliL3JlbW90ZV9hZGQudGNsOjM5Cittc2dpZCAiUmVtb3RlIERldGFpbHMiCittc2dzdHIgIkVpbnplbGhlaXRlbiBkZXMgZXh0ZXJuZW4gUmVwb3NpdG9yeSIKKworIzogbGliL3JlbW90ZV9hZGQudGNsOjQxIGxpYi90b29sc19kbGcudGNsOjUxIGxpYi9icmFuY2hfY3JlYXRlLnRjbDo0NAorbXNnaWQgIk5hbWU6IgorbXNnc3RyICJOYW1lOiIKKworIzogbGliL3JlbW90ZV9hZGQudGNsOjUwCittc2dpZCAiTG9jYXRpb246IgorbXNnc3RyICJBZHJlc3NlOiIKKworIzogbGliL3JlbW90ZV9hZGQudGNsOjYwCittc2dpZCAiRnVydGhlciBBY3Rpb24iCittc2dzdHIgIldlaXRlcmUgQWt0aW9uIgorCisjOiBsaWIvcmVtb3RlX2FkZC50Y2w6NjMKK21zZ2lkICJGZXRjaCBJbW1lZGlhdGVseSIKK21zZ3N0ciAiSmV0enQgYW5mb3JkZXJuIgorCisjOiBsaWIvcmVtb3RlX2FkZC50Y2w6NjkKK21zZ2lkICJJbml0aWFsaXplIFJlbW90ZSBSZXBvc2l0b3J5IGFuZCBQdXNoIgorbXNnc3RyICJFeHRlcm5lcyBSZXBvc2l0b3J5IGluaXRpYWxpc2llcmVuIHVuZCBkYWhpbiB2ZXJzZW5kZW4iCisKKyM6IGxpYi9yZW1vdGVfYWRkLnRjbDo3NQorbXNnaWQgIkRvIE5vdGhpbmcgRWxzZSBOb3ciCittc2dzdHIgIktlaW5lIHdlaXRlcmUgQWt0aW9uIgorCisjOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTAwCittc2dpZCAiUGxlYXNlIHN1cHBseSBhIHJlbW90ZSBuYW1lLiIKK21zZ3N0ciAiQml0dGUgZ2ViZW4gU2llIGVpbmVuIE5hbWVuIGRlcyBleHRlcm5lbiBSZXBvc2l0b3J5IGFuLiIKKworIzogbGliL3JlbW90ZV9hZGQudGNsOjExMworIywgdGNsLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGFuIGFjY2VwdGFibGUgcmVtb3RlIG5hbWUuIgorbXNnc3RyICLCuyVzwqsgaXN0IGtlaW4genVsw6Rzc2lnZXIgTmFtZSBlaW5lcyBleHRlcm5lbiBSZXBvc2l0b3J5LiIKKworIzogbGliL3JlbW90ZV9hZGQudGNsOjEyNAorIywgdGNsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBhZGQgcmVtb3RlICclcycgb2YgbG9jYXRpb24gJyVzJy4iCittc2dzdHIgIkZlaGxlciBiZWltIEhpbnp1ZsO8Z2VuIGRlcyBleHRlcm5lbiBSZXBvc2l0b3J5IMK7JXPCqyBhdXMgQWRyZXNzZSDCuyVzwqsuIgorCisjOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTMzCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRmV0Y2hpbmcgdGhlICVzIgorbXNnc3RyICLCuyVzwqsgYW5mb3JkZXJuIgorCisjOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTU2CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRG8gbm90IGtub3cgaG93IHRvIGluaXRpYWxpemUgcmVwb3NpdG9yeSBhdCBsb2NhdGlvbiAnJXMnLiIKK21zZ3N0ciAiIgorIkluaXRpYWxpc2llcmVuIGVpbmVzIGV4dGVybmVuIFJlcG9zaXRvcmllcyBhbiBBZHJlc3NlIMK7JXPCqyBpc3QgbmljaHQgbcO2Z2xpY2guIgorCisjOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTYzCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiU2V0dGluZyB1cCB0aGUgJXMgKGF0ICVzKSIKK21zZ3N0ciAiRWlucmljaHRlbiB2b24gwrslc8KrIGFuIMK7JXPCqyIKKworIzogbGliL2Jyb3dzZXIudGNsOjE3Cittc2dpZCAiU3RhcnRpbmcuLi4iCittc2dzdHIgIlN0YXJ0ZW4uLi4iCisKKyM6IGxpYi9icm93c2VyLnRjbDoyNworIywgdGNsLWZvcm1hdAorbXNnaWQgIiVzICglcyk6IEZpbGUgQnJvd3NlciIKK21zZ3N0ciAiJXMgKCVzKTogRGF0ZWktQnJvd3NlciIKKworIzogbGliL2Jyb3dzZXIudGNsOjEzMiBsaWIvYnJvd3Nlci50Y2w6MTQ5CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiTG9hZGluZyAlcy4uLiIKK21zZ3N0ciAiJXMgbGFkZW4uLi4iCisKKyM6IGxpYi9icm93c2VyLnRjbDoxOTMKK21zZ2lkICJbVXAgVG8gUGFyZW50XSIKK21zZ3N0ciAiW05hY2ggb2Jlbl0iCisKKyM6IGxpYi9icm93c2VyLnRjbDoyNzUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIlcyAoJXMpOiBCcm93c2UgQnJhbmNoIEZpbGVzIgorbXNnc3RyICIlcyAoJXMpOiBEYXRlaWVuIGRlcyBCcmFuY2hlcyBkdXJjaGJsw6R0dGVybiIKKworIzogbGliL2Jyb3dzZXIudGNsOjI4MgorbXNnaWQgIkJyb3dzZSBCcmFuY2ggRmlsZXMiCittc2dzdHIgIkRhdGVpZW4gZGVzIEJyYW5jaGVzIGR1cmNoYmzDpHR0ZXJuIgorCisjOiBsaWIvYnJvd3Nlci50Y2w6Mjg4IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDM3CisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjUyNCBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjUzMworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMTE1Cittc2dpZCAiQnJvd3NlIgorbXNnc3RyICJCbMOkdHRlcm4iCisKKyM6IGxpYi9icm93c2VyLnRjbDoyOTcgbGliL2JyYW5jaF9jaGVja291dC50Y2w6MzUgbGliL3Rvb2xzX2RsZy50Y2w6MzIxCittc2dpZCAiUmV2aXNpb24iCittc2dzdHIgIlZlcnNpb24iCisKKyM6IGxpYi9pbmRleC50Y2w6NgorbXNnaWQgIlVuYWJsZSB0byB1bmxvY2sgdGhlIGluZGV4LiIKK21zZ3N0ciAiQmVyZWl0c3RlbGx1bmcga2FubiBuaWNodCB3aWVkZXIgZnJlaWdlZ2ViZW4gd2VyZGVuLiIKKworIzogbGliL2luZGV4LnRjbDozMAorbXNnaWQgIkluZGV4IEVycm9yIgorbXNnc3RyICJGZWhsZXIgaW4gQmVyZWl0c3RlbGx1bmciCisKKyM6IGxpYi9pbmRleC50Y2w6MzIKK21zZ2lkICIiCisiVXBkYXRpbmcgdGhlIEdpdCBpbmRleCBmYWlsZWQuICBBIHJlc2NhbiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc3RhcnRlZCB0byAiCisicmVzeW5jaHJvbml6ZSBnaXQtZ3VpLiIKK21zZ3N0ciAiIgorIkRhcyBBa3R1YWxpc2llcmVuIGRlciBHaXQtQmVyZWl0c3RlbGx1bmcgaXN0IGZlaGxnZXNjaGxhZ2VuLiBFaW5lIGFsbGdlbWVpbmUgIgorIkdpdC1Ba3R1YWxpc2llcnVuZyB3aXJkIGpldHp0IGdlc3RhcnRldCwgdW0gZ2l0LWd1aSB3aWVkZXIgbWl0IGdpdCB6dSAiCisic3luY2hyb25pc2llcmVuLiIKKworIzogbGliL2luZGV4LnRjbDo0MworbXNnaWQgIkNvbnRpbnVlIgorbXNnc3RyICJGb3J0c2V0emVuIgorCisjOiBsaWIvaW5kZXgudGNsOjQ2Cittc2dpZCAiVW5sb2NrIEluZGV4IgorbXNnc3RyICJCZXJlaXRzdGVsbHVuZyBmcmVpZ2ViZW4iCisKKyM6IGxpYi9pbmRleC50Y2w6NzcgbGliL2luZGV4LnRjbDoxNDYgbGliL2luZGV4LnRjbDoyMjAgbGliL2luZGV4LnRjbDo1ODcKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6OTk5Cittc2dpZCAiZmlsZXMiCittc2dzdHIgIkRhdGVpZW4iCisKKyM6IGxpYi9pbmRleC50Y2w6MzI2Cittc2dpZCAiVW5zdGFnaW5nIHNlbGVjdGVkIGZpbGVzIGZyb20gY29tbWl0IgorbXNnc3RyICJHZXfDpGhsdGUgRGF0ZWllbiBhdXMgZGVyIEJlcmVpdHN0ZWxsdW5nIGhlcmF1c25laG1lbiIKKworIzogbGliL2luZGV4LnRjbDozMzAKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJVbnN0YWdpbmcgJXMgZnJvbSBjb21taXQiCittc2dzdHIgIkRhdGVpIMK7JXPCqyBhdXMgZGVyIEJlcmVpdHN0ZWxsdW5nIGhlcmF1c25laG1lbiIKKworIzogbGliL2luZGV4LnRjbDozNjkKK21zZ2lkICJSZWFkeSB0byBjb21taXQuIgorbXNnc3RyICJCZXJlaXQgenVtIENvbW1pdHRlbi4iCisKKyM6IGxpYi9pbmRleC50Y2w6Mzc4Cittc2dpZCAiQWRkaW5nIHNlbGVjdGVkIGZpbGVzIgorbXNnc3RyICJHZXfDpGhsdGUgRGF0ZWllbiBoaW56dWbDvGdlbiIKKworIzogbGliL2luZGV4LnRjbDozODIKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJBZGRpbmcgJXMiCittc2dzdHIgIsK7JXPCqyBoaW56dWbDvGdlbiIKKworIzogbGliL2luZGV4LnRjbDo0MTIKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJTdGFnZSAlZCB1bnRyYWNrZWQgZmlsZXM/IgorbXNnc3RyICIlZCB1bnZlcnNpb25pZXJ0ZSBEYXRlaWVuIGJlcmVpdHN0ZWxsZW4/IgorCisjOiBsaWIvaW5kZXgudGNsOjQyMAorbXNnaWQgIkFkZGluZyBhbGwgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAiQWxsZSBnZcOkbmRlcnRlbiBEYXRlaWVuIGhpbnp1ZsO8Z2VuIgorCisjOiBsaWIvaW5kZXgudGNsOjUwMworIywgdGNsLWZvcm1hdAorbXNnaWQgIlJldmVydCBjaGFuZ2VzIGluIGZpbGUgJXM/IgorbXNnc3RyICLDhG5kZXJ1bmdlbiBpbiBEYXRlaSDCuyVzwqsgdmVyd2VyZmVuPyIKKworIzogbGliL2luZGV4LnRjbDo1MDgKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJSZXZlcnQgY2hhbmdlcyBpbiB0aGVzZSAlaSBmaWxlcz8iCittc2dzdHIgIsOEbmRlcnVuZ2VuIGluIGRpZXNlbiAlaSBEYXRlaWVuIHZlcndlcmZlbj8iCisKKyM6IGxpYi9pbmRleC50Y2w6NTE3Cittc2dpZCAiQW55IHVuc3RhZ2VkIGNoYW5nZXMgd2lsbCBiZSBwZXJtYW5lbnRseSBsb3N0IGJ5IHRoZSByZXZlcnQuIgorbXNnc3RyICIiCisiQWxsZSBuaWNodCBiZXJlaXRnZXN0ZWxsdGVuIMOEbmRlcnVuZ2VuIHdlcmRlbiBiZWltIFZlcndlcmZlbiB2ZXJsb3JlbiBnZWhlbi4iCisKKyM6IGxpYi9pbmRleC50Y2w6NTIwIGxpYi9pbmRleC50Y2w6NTYzCittc2dpZCAiRG8gTm90aGluZyIKK21zZ3N0ciAiTmljaHRzIHR1biIKKworIzogbGliL2luZGV4LnRjbDo1NDUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJEZWxldGUgdW50cmFja2VkIGZpbGUgJXM/IgorbXNnc3RyICJVbnZlcnNpb25pZXJ0ZSBEYXRlaSDCuyVzwqsgbMO2c2NoZW4/IgorCisjOiBsaWIvaW5kZXgudGNsOjU1MAorIywgdGNsLWZvcm1hdAorbXNnaWQgIkRlbGV0ZSB0aGVzZSAlaSB1bnRyYWNrZWQgZmlsZXM/IgorbXNnc3RyICJEaWVzZSAlaSB1bnZlcnNpb25pZXJ0ZW4gRGF0ZWllbiBsw7ZzY2hlbj8iCisKKyM6IGxpYi9pbmRleC50Y2w6NTYwCittc2dpZCAiRmlsZXMgd2lsbCBiZSBwZXJtYW5lbnRseSBkZWxldGVkLiIKK21zZ3N0ciAiRGF0ZWllbiB3ZXJkZW4gZW5kZ8O8bHRpZyBnZWzDtnNjaHQuIgorCisjOiBsaWIvaW5kZXgudGNsOjU2NAorbXNnaWQgIkRlbGV0ZSBGaWxlcyIKK21zZ3N0ciAiRGF0ZWllbiBsw7ZzY2hlbiIKKworIzogbGliL2luZGV4LnRjbDo1ODYKK21zZ2lkICJEZWxldGluZyIKK21zZ3N0ciAiTMO2c2NoZW4iCisKKyM6IGxpYi9pbmRleC50Y2w6NjY1Cittc2dpZCAiRW5jb3VudGVyZWQgZXJyb3JzIGRlbGV0aW5nIGZpbGVzOlxuIgorbXNnc3RyICJGZWhsZXIgYmVpbSBMw7ZzY2hlbiBkZXIgRGF0ZWllbjpcbiIKKworIzogbGliL2luZGV4LnRjbDo2NzQKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJOb25lIG9mIHRoZSAlZCBzZWxlY3RlZCBmaWxlcyBjb3VsZCBiZSBkZWxldGVkLiIKK21zZ3N0ciAiS2VpbmUgZGVyICVkIGdld8OkaGx0ZW4gRGF0ZWllbiBrb25udGVuIGdlbMO2c2NodCB3ZXJkZW4uIgorCisjOiBsaWIvaW5kZXgudGNsOjY3OQorIywgdGNsLWZvcm1hdAorbXNnaWQgIiVkIG9mIHRoZSAlZCBzZWxlY3RlZCBmaWxlcyBjb3VsZCBub3QgYmUgZGVsZXRlZC4iCittc2dzdHIgIiVkIGRlciAlZCBnZXfDpGhsdGVuIERhdGVpZW4ga29ubnRlbiBuaWNodCBnZWzDtnNjaHQgd2VyZGVuLiIKKworIzogbGliL2luZGV4LnRjbDo3MjYKK21zZ2lkICJSZXZlcnRpbmcgc2VsZWN0ZWQgZmlsZXMiCittc2dzdHIgIsOEbmRlcnVuZ2VuIGluIGdld8OkaGx0ZW4gRGF0ZWllbiB2ZXJ3ZXJmZW4iCisKKyM6IGxpYi9pbmRleC50Y2w6NzMwCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUmV2ZXJ0aW5nICVzIgorbXNnc3RyICLDhG5kZXJ1bmdlbiBpbiAlcyB2ZXJ3ZXJmZW4iCisKKyM6IGxpYi9icmFuY2hfY2hlY2tvdXQudGNsOjE2CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiJXMgKCVzKTogQ2hlY2tvdXQgQnJhbmNoIgorbXNnc3RyICIlcyAoJXMpOiBCcmFuY2ggYXVzY2hlY2tlbiIKKworIzogbGliL2JyYW5jaF9jaGVja291dC50Y2w6MjEKK21zZ2lkICJDaGVja291dCBCcmFuY2giCittc2dzdHIgIkJyYW5jaCBhdXNjaGVja2VuIgorCisjOiBsaWIvYnJhbmNoX2NoZWNrb3V0LnRjbDoyNgorbXNnaWQgIkNoZWNrb3V0IgorbXNnc3RyICJBdXNjaGVja2VuIgorCisjOiBsaWIvYnJhbmNoX2NoZWNrb3V0LnRjbDozOSBsaWIvb3B0aW9uLnRjbDozMTAgbGliL2JyYW5jaF9jcmVhdGUudGNsOjY5Cittc2dpZCAiT3B0aW9ucyIKK21zZ3N0ciAiT3B0aW9uZW4iCisKKyM6IGxpYi9icmFuY2hfY2hlY2tvdXQudGNsOjQyIGxpYi9icmFuY2hfY3JlYXRlLnRjbDo5MgorbXNnaWQgIkZldGNoIFRyYWNraW5nIEJyYW5jaCIKK21zZ3N0ciAiVHJhY2tpbmdicmFuY2ggYW5mb3JkZXJuIgorCisjOiBsaWIvYnJhbmNoX2NoZWNrb3V0LnRjbDo0NworbXNnaWQgIkRldGFjaCBGcm9tIExvY2FsIEJyYW5jaCIKK21zZ3N0ciAiVmVyYmluZHVuZyB6dSBsb2thbGVtIEJyYW5jaCBsw7ZzZW4iCisKKyM6IGxpYi9zdGF0dXNfYmFyLnRjbDoyNjMKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIlcyAuLi4gJSppIG9mICUqaSAlcyAoJTNpJSUpIgorbXNnc3RyICIlcyAuLi4gJSppIHZvbiAlKmkgJXMgKCUzaSUlKSIKKworIzogbGliL3JlbW90ZS50Y2w6MjAwCittc2dpZCAiUHVzaCB0byIKK21zZ3N0ciAiVmVyc2VuZGVuIG5hY2giCisKKyM6IGxpYi9yZW1vdGUudGNsOjIxOAorbXNnaWQgIlJlbW92ZSBSZW1vdGUiCittc2dzdHIgIkV4dGVybmVzIFJlcG9zaXRvcnkgZW50ZmVybmVuIgorCisjOiBsaWIvcmVtb3RlLnRjbDoyMjMKK21zZ2lkICJQcnVuZSBmcm9tIgorbXNnc3RyICJWZXJhbHRldGUgQnJhbmNoZXMgZW50ZmVybmVuIgorCisjOiBsaWIvcmVtb3RlLnRjbDoyMjgKK21zZ2lkICJGZXRjaCBmcm9tIgorbXNnc3RyICJBbmZvcmRlcm4iCisKKyM6IGxpYi9yZW1vdGUudGNsOjI0OSBsaWIvcmVtb3RlLnRjbDoyNTMgbGliL3JlbW90ZS50Y2w6MjU4IGxpYi9yZW1vdGUudGNsOjI2NAorbXNnaWQgIkFsbCIKK21zZ3N0ciAiQWxsZSIKKworIzogbGliL2JyYW5jaF9yZW5hbWUudGNsOjE1CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiJXMgKCVzKTogUmVuYW1lIEJyYW5jaCIKK21zZ3N0ciAiJXMgKCVzKTogQnJhbmNoIHVtYmVuZW5uZW4iCisKKyM6IGxpYi9icmFuY2hfcmVuYW1lLnRjbDoyMworbXNnaWQgIlJlbmFtZSBCcmFuY2giCittc2dzdHIgIkJyYW5jaCB1bWJlbmVubmVuIgorCisjOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MjgKK21zZ2lkICJSZW5hbWUiCittc2dzdHIgIlVtYmVuZW5uZW4iCisKKyM6IGxpYi9icmFuY2hfcmVuYW1lLnRjbDozOAorbXNnaWQgIkJyYW5jaDoiCittc2dzdHIgIkJyYW5jaDoiCisKKyM6IGxpYi9icmFuY2hfcmVuYW1lLnRjbDo0NgorbXNnaWQgIk5ldyBOYW1lOiIKK21zZ3N0ciAiTmV1ZXIgTmFtZToiCisKKyM6IGxpYi9icmFuY2hfcmVuYW1lLnRjbDo4MQorbXNnaWQgIlBsZWFzZSBzZWxlY3QgYSBicmFuY2ggdG8gcmVuYW1lLiIKK21zZ3N0ciAiQml0dGUgd8OkaGxlbiBTaWUgZWluZW4gQnJhbmNoIHp1bSB1bWJlbmVubmVuLiIKKworIzogbGliL2JyYW5jaF9yZW5hbWUudGNsOjkyIGxpYi9icmFuY2hfY3JlYXRlLnRjbDoxNTQKK21zZ2lkICJQbGVhc2Ugc3VwcGx5IGEgYnJhbmNoIG5hbWUuIgorbXNnc3RyICJCaXR0ZSBnZWJlbiBTaWUgZWluZW4gQnJhbmNobmFtZW4gYW4uIgorCisjOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MTEyIGxpYi9icmFuY2hfY3JlYXRlLnRjbDoxNjUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhbiBhY2NlcHRhYmxlIGJyYW5jaCBuYW1lLiIKK21zZ3N0ciAiwrslc8KrIGlzdCBrZWluIHp1bMOkc3NpZ2VyIEJyYW5jaG5hbWUuIgorCisjOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MTIzCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHJlbmFtZSAnJXMnLiIKK21zZ3N0ciAiRmVobGVyIGJlaW0gVW1iZW5lbm5lbiB2b24gwrslc8KrLiIKKworIzogbGliL2Nob29zZV9mb250LnRjbDo0MQorbXNnaWQgIlNlbGVjdCIKK21zZ3N0ciAiQXVzd8OkaGxlbiIKKworIzogbGliL2Nob29zZV9mb250LnRjbDo1NQorbXNnaWQgIkZvbnQgRmFtaWx5IgorbXNnc3RyICJTY2hyaWZ0ZmFtaWxpZSIKKworIzogbGliL2Nob29zZV9mb250LnRjbDo3NgorbXNnaWQgIkZvbnQgU2l6ZSIKK21zZ3N0ciAiU2NocmlmdGdyw7bDn2UiCisKKyM6IGxpYi9jaG9vc2VfZm9udC50Y2w6OTMKK21zZ2lkICJGb250IEV4YW1wbGUiCittc2dzdHIgIlNjaHJpZnRiZWlzcGllbCIKKworIzogbGliL2Nob29zZV9mb250LnRjbDoxMDUKK21zZ2lkICIiCisiVGhpcyBpcyBleGFtcGxlIHRleHQuXG4iCisiSWYgeW91IGxpa2UgdGhpcyB0ZXh0LCBpdCBjYW4gYmUgeW91ciBmb250LiIKK21zZ3N0ciAiIgorIkRpZXMgaXN0IGVpbiBCZWlzcGllbHRleHQuXG4iCisiV2VubiBJaG5lbiBkaWVzZXIgVGV4dCBnZWbDpGxsdCwgc29sbHRlbiBTaWUgZGllc2UgU2NocmlmdGFydCB3w6RobGVuLiIKKworIzogbGliL29wdGlvbi50Y2w6MTEKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGdsb2JhbCBlbmNvZGluZyAnJXMnIgorbXNnc3RyICJVbmfDvGx0aWdlIGdsb2JhbGUgWmVpY2hlbmtvZGllcnVuZyDCuyVzwqsiCisKKyM6IGxpYi9vcHRpb24udGNsOjE5CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiSW52YWxpZCByZXBvIGVuY29kaW5nICclcyciCittc2dzdHIgIlVuZ8O8bHRpZ2UgUmVwb3NpdG9yeS1aZWljaGVua29kaWVydW5nIMK7JXPCqyIKKworIzogbGliL29wdGlvbi50Y2w6MTE5Cittc2dpZCAiUmVzdG9yZSBEZWZhdWx0cyIKK21zZ3N0ciAiVm9yZWluc3RlbGx1bmdlbiB3aWVkZXJoZXJzdGVsbGVuIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxMjMKK21zZ2lkICJTYXZlIgorbXNnc3RyICJTcGVpY2hlcm4iCisKKyM6IGxpYi9vcHRpb24udGNsOjEzMworIywgdGNsLWZvcm1hdAorbXNnaWQgIiVzIFJlcG9zaXRvcnkiCittc2dzdHIgIiVzIFJlcG9zaXRvcnkiCisKKyM6IGxpYi9vcHRpb24udGNsOjEzNAorbXNnaWQgIkdsb2JhbCAoQWxsIFJlcG9zaXRvcmllcykiCittc2dzdHIgIkdsb2JhbCAoQWxsZSBSZXBvc2l0b3JpZXMpIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNDAKK21zZ2lkICJVc2VyIE5hbWUiCittc2dzdHIgIkJlbnV0emVybmFtZSIKKworIzogbGliL29wdGlvbi50Y2w6MTQxCittc2dpZCAiRW1haWwgQWRkcmVzcyIKK21zZ3N0ciAiRS1NYWlsLUFkcmVzc2UiCisKKyM6IGxpYi9vcHRpb24udGNsOjE0MworbXNnaWQgIlN1bW1hcml6ZSBNZXJnZSBDb21taXRzIgorbXNnc3RyICJadXNhbW1lbmbDvGhydW5ncy1Db21taXRzIHp1c2FtbWVuZmFzc2VuIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNDQKK21zZ2lkICJNZXJnZSBWZXJib3NpdHkiCittc2dzdHIgIkF1c2bDvGhybGljaGtlaXQgZGVyIFp1c2FtbWVuZsO8aHJlbi1NZWxkdW5nZW4iCisKKyM6IGxpYi9vcHRpb24udGNsOjE0NQorbXNnaWQgIlNob3cgRGlmZnN0YXQgQWZ0ZXIgTWVyZ2UiCittc2dzdHIgIlZlcmdsZWljaHNzdGF0aXN0aWsgbmFjaCBadXNhbW1lbmbDvGhyZW4gYW56ZWlnZW4iCisKKyM6IGxpYi9vcHRpb24udGNsOjE0NgorbXNnaWQgIlVzZSBNZXJnZSBUb29sIgorbXNnc3RyICJadXNhbW1lbmbDvGhydW5nc3dlcmt6ZXVnIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNDgKK21zZ2lkICJUcnVzdCBGaWxlIE1vZGlmaWNhdGlvbiBUaW1lc3RhbXBzIgorbXNnc3RyICJBdWYgRGF0ZWnDpG5kZXJ1bmdzZGF0dW0gdmVybGFzc2VuIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNDkKK21zZ2lkICJQcnVuZSBUcmFja2luZyBCcmFuY2hlcyBEdXJpbmcgRmV0Y2giCittc2dzdHIgIlZlcmFsdGV0ZSBUcmFja2luZ2JyYW5jaGVzIGVudGZlcm5lbiB3w6RocmVuZCBBbmZvcmRlcnVuZyIKKworIzogbGliL29wdGlvbi50Y2w6MTUwCittc2dpZCAiTWF0Y2ggVHJhY2tpbmcgQnJhbmNoZXMiCittc2dzdHIgIk5ldWUgQnJhbmNoZXMgYXV0b21hdGlzY2ggYWxzIFRyYWNraW5nYnJhbmNoIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNTEKK21zZ2lkICJVc2UgVGV4dGNvbnYgRm9yIERpZmZzIGFuZCBCbGFtZXMiCittc2dzdHIgIkJlbnV0emUgwrt0ZXh0Y29udsKrIGbDvHIgVmVyZ2xlaWNoIHVuZCBBbm5vdGllcmVuIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNTIKK21zZ2lkICJCbGFtZSBDb3B5IE9ubHkgT24gQ2hhbmdlZCBGaWxlcyIKK21zZ3N0ciAiS29waWUtQW5ub3RpZXJlbiBudXIgYmVpIGdlw6RuZGVydGVuIERhdGVpZW4iCisKKyM6IGxpYi9vcHRpb24udGNsOjE1MworbXNnaWQgIk1heGltdW0gTGVuZ3RoIG9mIFJlY2VudCBSZXBvc2l0b3JpZXMgTGlzdCIKK21zZ3N0ciAiQW56YWhsIEVpbnRyw6RnZSBpbiDCu0xldHp0ZSBSZXBvc2l0b3JpZXPCqyIKKworIzogbGliL29wdGlvbi50Y2w6MTU0Cittc2dpZCAiTWluaW11bSBMZXR0ZXJzIFRvIEJsYW1lIENvcHkgT24iCittc2dzdHIgIk1pbmRlc3R6YWhsIFplaWNoZW4gZsO8ciBLb3BpZS1Bbm5vdGllcmVuIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNTUKK21zZ2lkICJCbGFtZSBIaXN0b3J5IENvbnRleHQgUmFkaXVzIChkYXlzKSIKK21zZ3N0ciAiQW56YWhsIFRhZ2UgZsO8ciBBbm5vdGllcmVuLUhpc3Rvcmllbi1Lb250ZXh0IgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNTYKK21zZ2lkICJOdW1iZXIgb2YgRGlmZiBDb250ZXh0IExpbmVzIgorbXNnc3RyICJBbnphaGwgZGVyIEtvbnRleHR6ZWlsZW4gYmVpbSBWZXJnbGVpY2giCisKKyM6IGxpYi9vcHRpb24udGNsOjE1NworbXNnaWQgIkFkZGl0aW9uYWwgRGlmZiBQYXJhbWV0ZXJzIgorbXNnc3RyICJadXPDpHR6bGljaGUgVmVyZ2xlaWNoLS9kaWZmLVBhcmFtZXRlciIKKworIzogbGliL29wdGlvbi50Y2w6MTU4Cittc2dpZCAiQ29tbWl0IE1lc3NhZ2UgVGV4dCBXaWR0aCIKK21zZ3N0ciAiVGV4dGJyZWl0ZSBkZXIgQ29tbWl0LUJlc2NocmVpYnVuZyIKKworIzogbGliL29wdGlvbi50Y2w6MTU5Cittc2dpZCAiTmV3IEJyYW5jaCBOYW1lIFRlbXBsYXRlIgorbXNnc3RyICJOYW1lbnN2b3JsYWdlIGbDvHIgbmV1ZSBCcmFuY2hlcyIKKworIzogbGliL29wdGlvbi50Y2w6MTYwCittc2dpZCAiRGVmYXVsdCBGaWxlIENvbnRlbnRzIEVuY29kaW5nIgorbXNnc3RyICJWb3JlaW5nZXN0ZWxsdGUgWmVpY2hlbmtvZGllcnVuZyIKKworIzogbGliL29wdGlvbi50Y2w6MTYxCittc2dpZCAiV2FybiBiZWZvcmUgY29tbWl0dGluZyB0byBhIGRldGFjaGVkIGhlYWQiCittc2dzdHIgIldhcm5lbiB2b3IgQ29tbWl0dGVuIGF1ZiBsb3NnZWzDtnN0ZSBCcmFuY2hzcGl0emUiCisKKyM6IGxpYi9vcHRpb24udGNsOjE2MgorbXNnaWQgIlN0YWdpbmcgb2YgdW50cmFja2VkIGZpbGVzIgorbXNnc3RyICJVbnZlcnNpb25pZXJ0ZSBEYXRlaWVuIGJlcmVpdHN0ZWxsZW4iCisKKyM6IGxpYi9vcHRpb24udGNsOjE2MworbXNnaWQgIlNob3cgdW50cmFja2VkIGZpbGVzIgorbXNnc3RyICJVbnZlcnNpb25pZXJ0ZSBEYXRlaWVuIGFuemVpZ2VuIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNjQKK21zZ2lkICJUYWIgc3BhY2luZyIKK21zZ3N0ciAiVGFidWxhdG9yLUJyZWl0ZSIKKworIzogbGliL29wdGlvbi50Y2w6MTgyIGxpYi9vcHRpb24udGNsOjE5NyBsaWIvb3B0aW9uLnRjbDoyMjAgbGliL29wdGlvbi50Y2w6MjgyCisjOiBsaWIvZGF0YWJhc2UudGNsOjU3CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiJXM6IgorbXNnc3RyICIlczoiCisKKyM6IGxpYi9vcHRpb24udGNsOjIxMAorbXNnaWQgIkNoYW5nZSIKK21zZ3N0ciAiw4RuZGVybiIKKworIzogbGliL29wdGlvbi50Y2w6MjU0Cittc2dpZCAiU3BlbGxpbmcgRGljdGlvbmFyeToiCittc2dzdHIgIlfDtnJ0ZXJidWNoIFJlY2h0c2NocmVpYnByw7xmdW5nOiIKKworIzogbGliL29wdGlvbi50Y2w6Mjg0Cittc2dpZCAiQ2hhbmdlIEZvbnQiCittc2dzdHIgIlNjaHJpZnRhcnQgw6RuZGVybiIKKworIzogbGliL29wdGlvbi50Y2w6Mjg4CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiQ2hvb3NlICVzIgorbXNnc3RyICIlcyB3w6RobGVuIgorCisjOiBsaWIvb3B0aW9uLnRjbDoyOTQKK21zZ2lkICJwdC4iCittc2dzdHIgInB0LiIKKworIzogbGliL29wdGlvbi50Y2w6MzA4Cittc2dpZCAiUHJlZmVyZW5jZXMiCittc2dzdHIgIkVpbnN0ZWxsdW5nZW4iCisKKyM6IGxpYi9vcHRpb24udGNsOjM0NQorbXNnaWQgIkZhaWxlZCB0byBjb21wbGV0ZWx5IHNhdmUgb3B0aW9uczoiCittc2dzdHIgIk9wdGlvbmVuIGtvbm50ZW4gbmljaHQgZ2VzcGVpY2hlcnQgd2VyZGVuOiIKKworIzogbGliL2VuY29kaW5nLnRjbDo0NDMKK21zZ2lkICJEZWZhdWx0IgorbXNnc3RyICJWb3JlaW5zdGVsbHVuZyIKKworIzogbGliL2VuY29kaW5nLnRjbDo0NDgKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJTeXN0ZW0gKCVzKSIKK21zZ3N0ciAiU3lzdGVtd2VpdCAoJXMpIgorCisjOiBsaWIvZW5jb2RpbmcudGNsOjQ1OSBsaWIvZW5jb2RpbmcudGNsOjQ2NQorbXNnaWQgIk90aGVyIgorbXNnc3RyICJBbmRlcmUiCisKKyM6IGxpYi90b29scy50Y2w6NzYKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJSdW5uaW5nICVzIHJlcXVpcmVzIGEgc2VsZWN0ZWQgZmlsZS4iCittc2dzdHIgIlVtIMK7JXPCqyB6dSBzdGFydGVuLCBtdXNzIGVpbmUgRGF0ZWkgYXVzZ2V3w6RobHQgc2Vpbi4iCisKKyM6IGxpYi90b29scy50Y2w6OTIKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcnVuICUxJHMgb24gZmlsZSBcIiUyJHNcIj8iCittc2dzdHIgIldvbGxlbiBTaWUgJTEkcyB3aXJrbGljaCBhdWYgRGF0ZWkgwrslMiRzwqsgc3RhcnRlbj8iCisKKyM6IGxpYi90b29scy50Y2w6OTYKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcnVuICVzPyIKK21zZ3N0ciAiV29sbGVuIFNpZSAlcyB3aXJrbGljaCBzdGFydGVuPyIKKworIzogbGliL3Rvb2xzLnRjbDoxMTgKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJUb29sOiAlcyIKK21zZ3N0ciAiV2Vya3pldWc6ICVzIgorCisjOiBsaWIvdG9vbHMudGNsOjExOQorIywgdGNsLWZvcm1hdAorbXNnaWQgIlJ1bm5pbmc6ICVzIgorbXNnc3RyICJTdGFydGVuOiAlcyIKKworIzogbGliL3Rvb2xzLnRjbDoxNTgKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJUb29sIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHk6ICVzIgorbXNnc3RyICJXZXJremV1ZyBlcmZvbGdyZWljaCBhYmdlc2NobG9zc2VuOiAlcyIKKworIzogbGliL3Rvb2xzLnRjbDoxNjAKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJUb29sIGZhaWxlZDogJXMiCittc2dzdHIgIldlcmt6ZXVnIGZlaGxnZXNjaGxhZ2VuOiAlcyIKKworIzogbGliL21lcmdldG9vbC50Y2w6OAorbXNnaWQgIkZvcmNlIHJlc29sdXRpb24gdG8gdGhlIGJhc2UgdmVyc2lvbj8iCittc2dzdHIgIktvbmZsaWt0IGR1cmNoIEJhc2lzdmVyc2lvbiBlcnNldHplbj8iCisKKyM6IGxpYi9tZXJnZXRvb2wudGNsOjkKK21zZ2lkICJGb3JjZSByZXNvbHV0aW9uIHRvIHRoaXMgYnJhbmNoPyIKK21zZ3N0ciAiS29uZmxpa3QgZHVyY2ggZGllc2VuIEJyYW5jaCBlcnNldHplbj8iCisKKyM6IGxpYi9tZXJnZXRvb2wudGNsOjEwCittc2dpZCAiRm9yY2UgcmVzb2x1dGlvbiB0byB0aGUgb3RoZXIgYnJhbmNoPyIKK21zZ3N0ciAiS29uZmxpa3QgZHVyY2ggYW5kZXJlbiBCcmFuY2ggZXJzZXR6ZW4/IgorCisjOiBsaWIvbWVyZ2V0b29sLnRjbDoxNAorIywgdGNsLWZvcm1hdAorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIGRpZmYgc2hvd3Mgb25seSBjb25mbGljdGluZyBjaGFuZ2VzLlxuIgorIlxuIgorIiVzIHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG4iCisiXG4iCisiVGhpcyBvcGVyYXRpb24gY2FuIGJlIHVuZG9uZSBvbmx5IGJ5IHJlc3RhcnRpbmcgdGhlIG1lcmdlLiIKK21zZ3N0ciAiIgorIkhpbndlaXM6IERlciBWZXJnbGVpY2ggemVpZ3QgbnVyIGtvbmZsaWt0dmVydXJzYWNoZW5kZSDDhG5kZXJ1bmdlbiBhbi5cbiIKKyJcbiIKKyLCuyVzwqsgd2lyZCDDvGJlcnNjaHJpZWJlbi5cbiIKKyJcbiIKKyJEaWVzZSBPcGVyYXRpb24ga2FubiBudXIgcsO8Y2tnw6RuZ2lnIGdlbWFjaHQgd2VyZGVuLCB3ZW5uIGRpZVxuIgorIlp1c2FtbWVuZsO8aHJ1bmcgZXJuZXV0IGdlc3RhcnRldCB3aXJkLiIKKworIzogbGliL21lcmdldG9vbC50Y2w6NDUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJGaWxlICVzIHNlZW1zIHRvIGhhdmUgdW5yZXNvbHZlZCBjb25mbGljdHMsIHN0aWxsIHN0YWdlPyIKK21zZ3N0ciAiRGF0ZWkgwrslc8KrIGhhdCBuaWNodCBhdWZnZWzDtnN0ZSBLb25mbGlrdGUuIFRyb3R6ZGVtIGJlcmVpdHN0ZWxsZW4/IgorCisjOiBsaWIvbWVyZ2V0b29sLnRjbDo2MAorIywgdGNsLWZvcm1hdAorbXNnaWQgIkFkZGluZyByZXNvbHV0aW9uIGZvciAlcyIKK21zZ3N0ciAiQXVmbMO2c3VuZyBoaW56dWdlZsO8Z3QgZsO8ciAlcyIKKworIzogbGliL21lcmdldG9vbC50Y2w6MTQxCittc2dpZCAiQ2Fubm90IHJlc29sdmUgZGVsZXRpb24gb3IgbGluayBjb25mbGljdHMgdXNpbmcgYSB0b29sIgorbXNnc3RyICIiCisiS29uZmxpa3RlIGR1cmNoIGdlbMO2c2NodGUgRGF0ZWllbiBvZGVyIHN5bWJvbGlzY2hlIExpbmtzIGvDtm5uZW4gbmljaHQgZHVyY2ggIgorImRhcyBadXNhbWVuZsO8aHJ1bmdzd2Vya3pldWcgZ2Vsw7ZzdCB3ZXJkZW4uIgorCisjOiBsaWIvbWVyZ2V0b29sLnRjbDoxNDYKK21zZ2lkICJDb25mbGljdCBmaWxlIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJLb25mbGlrdC1EYXRlaSBleGlzdGllcnQgbmljaHQiCisKKyM6IGxpYi9tZXJnZXRvb2wudGNsOjI0NgorIywgdGNsLWZvcm1hdAorbXNnaWQgIk5vdCBhIEdVSSBtZXJnZSB0b29sOiAnJXMnIgorbXNnc3RyICJLZWluIEdVSSBadXNhbW1lbmbDvGhydW5nc3dlcmt6ZXVnOiDCuyVzwqsiCisKKyM6IGxpYi9tZXJnZXRvb2wudGNsOjI3NQorIywgdGNsLWZvcm1hdAorbXNnaWQgIlVuc3VwcG9ydGVkIG1lcmdlIHRvb2wgJyVzJyIKK21zZ3N0ciAiVW5iZWthbm50ZXMgWnVzYW1tZW5mw7xocnVuZ3N3ZXJremV1Zzogwrslc8KrIgorCisjOiBsaWIvbWVyZ2V0b29sLnRjbDozMTAKK21zZ2lkICJNZXJnZSB0b29sIGlzIGFscmVhZHkgcnVubmluZywgdGVybWluYXRlIGl0PyIKK21zZ3N0ciAiWnVzYW1tZW5mw7xocnVuZ3N3ZXJremV1ZyBsw6R1ZnQgYmVyZWl0cy4gU29sbCBlcyBhYmdlYnJvY2hlbiB3ZXJkZW4/IgorCisjOiBsaWIvbWVyZ2V0b29sLnRjbDozMzAKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIiCisiRXJyb3IgcmV0cmlldmluZyB2ZXJzaW9uczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIkZlaGxlciBiZWltIEFicnVmZW4gZGVyIERhdGVpdmVyc2lvbmVuOlxuIgorIiVzIgorCisjOiBsaWIvbWVyZ2V0b29sLnRjbDozNTAKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIiCisiQ291bGQgbm90IHN0YXJ0IHRoZSBtZXJnZSB0b29sOlxuIgorIlxuIgorIiVzIgorbXNnc3RyICIiCisiWnVzYW1tZW5mw7xocnVuZ3N3ZXJremV1ZyBrb25udGUgbmljaHQgZ2VzdGFydGV0IHdlcmRlbjpcbiIKKyJcbiIKKyIlcyIKKworIzogbGliL21lcmdldG9vbC50Y2w6MzU0Cittc2dpZCAiUnVubmluZyBtZXJnZSB0b29sLi4uIgorbXNnc3RyICJadXNhbW1lbmbDvGhydW5nc3dlcmt6ZXVnIHN0YXJ0ZW4uLi4iCisKKyM6IGxpYi9tZXJnZXRvb2wudGNsOjM4MiBsaWIvbWVyZ2V0b29sLnRjbDozOTAKK21zZ2lkICJNZXJnZSB0b29sIGZhaWxlZC4iCittc2dzdHIgIlp1c2FtbWVuZsO8aHJ1bmdzd2Vya3pldWcgZmVobGdlc2NobGFnZW4uIgorCisjOiBsaWIvdG9vbHNfZGxnLnRjbDoyMgorIywgdGNsLWZvcm1hdAorbXNnaWQgIiVzICglcyk6IEFkZCBUb29sIgorbXNnc3RyICIlcyAoJXMpOiBXZXJremV1ZyBoaW56dWbDvGdlbiIKKworIzogbGliL3Rvb2xzX2RsZy50Y2w6MjgKK21zZ2lkICJBZGQgTmV3IFRvb2wgQ29tbWFuZCIKK21zZ3N0ciAiTmV1ZXMgS29tbWFuZG8gZsO8ciBXZXJremV1ZyBoaW56dWbDvGdlbiIKKworIzogbGliL3Rvb2xzX2RsZy50Y2w6MzQKK21zZ2lkICJBZGQgZ2xvYmFsbHkiCittc2dzdHIgIkdsb2JhbCBoaW56dWbDvGdlbiIKKworIzogbGliL3Rvb2xzX2RsZy50Y2w6NDYKK21zZ2lkICJUb29sIERldGFpbHMiCittc2dzdHIgIkVpbnplbGhlaXRlbiBkZXMgV2Vya3pldWdzIgorCisjOiBsaWIvdG9vbHNfZGxnLnRjbDo0OQorbXNnaWQgIlVzZSAnLycgc2VwYXJhdG9ycyB0byBjcmVhdGUgYSBzdWJtZW51IHRyZWU6IgorbXNnc3RyICJCZW51dHplbiBTaWUgZWluZW4gU2NocsOkZ3N0cmljaCDCuy/CqywgdW0gVW50ZXJtZW7DvHMgenUgZXJzdGVsbGVuOiIKKworIzogbGliL3Rvb2xzX2RsZy50Y2w6NjAKK21zZ2lkICJDb21tYW5kOiIKK21zZ3N0ciAiS29tbWFuZG86IgorCisjOiBsaWIvdG9vbHNfZGxnLnRjbDo3MQorbXNnaWQgIlNob3cgYSBkaWFsb2cgYmVmb3JlIHJ1bm5pbmciCittc2dzdHIgIkJlc3TDpHRpZ3VuZ3NmcmFnZSB2b3IgU3RhcnRlbiBhbnplaWdlbiIKKworIzogbGliL3Rvb2xzX2RsZy50Y2w6NzcKK21zZ2lkICJBc2sgdGhlIHVzZXIgdG8gc2VsZWN0IGEgcmV2aXNpb24gKHNldHMgJFJFVklTSU9OKSIKK21zZ3N0ciAiQmVudXR6ZXIgbmFjaCBWZXJzaW9uIGZyYWdlbiAoc2V0enQgJFJFVklTSU9OKSIKKworIzogbGliL3Rvb2xzX2RsZy50Y2w6ODIKK21zZ2lkICJBc2sgdGhlIHVzZXIgZm9yIGFkZGl0aW9uYWwgYXJndW1lbnRzIChzZXRzICRBUkdTKSIKK21zZ3N0ciAiQmVudXR6ZXIgbmFjaCB6dXPDpHR6bGljaGVuIEFyZ3VtZW50ZW4gZnJhZ2VuIChzZXR6dCAkQVJHUykiCisKKyM6IGxpYi90b29sc19kbGcudGNsOjg5Cittc2dpZCAiRG9uJ3Qgc2hvdyB0aGUgY29tbWFuZCBvdXRwdXQgd2luZG93IgorbXNnc3RyICJLZWluIEF1c2dhYmVmZW5zdGVyIHplaWdlbiIKKworIzogbGliL3Rvb2xzX2RsZy50Y2w6OTQKK21zZ2lkICJSdW4gb25seSBpZiBhIGRpZmYgaXMgc2VsZWN0ZWQgKCRGSUxFTkFNRSBub3QgZW1wdHkpIgorbXNnc3RyICJOdXIgc3RhcnRlbiwgd2VubiBlaW4gVmVyZ2xlaWNoIGdld8OkaGx0IGlzdCAoJEZJTEVOQU1FIGlzdCBuaWNodCBsZWVyKSIKKworIzogbGliL3Rvb2xzX2RsZy50Y2w6MTE4Cittc2dpZCAiUGxlYXNlIHN1cHBseSBhIG5hbWUgZm9yIHRoZSB0b29sLiIKK21zZ3N0ciAiQml0dGUgZ2ViZW4gU2llIGVpbmVuIFdlcmt6ZXVnbmFtZW4gYW4uIgorCisjOiBsaWIvdG9vbHNfZGxnLnRjbDoxMjYKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJUb29sICclcycgYWxyZWFkeSBleGlzdHMuIgorbXNnc3RyICJXZXJremV1ZyDCuyVzwqsgZXhpc3RpZXJ0IGJlcmVpdHMuIgorCisjOiBsaWIvdG9vbHNfZGxnLnRjbDoxNDgKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIiCisiQ291bGQgbm90IGFkZCB0b29sOlxuIgorIiVzIgorbXNnc3RyICIiCisiV2Vya3pldWcga29ubnRlIG5pY2h0IGhpbnp1Z2Vmw7xndCB3ZXJkZW46XG4iCisiXG4iCisiJXMiCisKKyM6IGxpYi90b29sc19kbGcudGNsOjE4NworIywgdGNsLWZvcm1hdAorbXNnaWQgIiVzICglcyk6IFJlbW92ZSBUb29sIgorbXNnc3RyICIlcyAoJXMpOiBXZXJremV1ZyBlbnRmZXJuZW4iCisKKyM6IGxpYi90b29sc19kbGcudGNsOjE5MworbXNnaWQgIlJlbW92ZSBUb29sIENvbW1hbmRzIgorbXNnc3RyICJXZXJremV1Z2tvbW1hbmRvcyBlbnRmZXJuZW4iCisKKyM6IGxpYi90b29sc19kbGcudGNsOjE5OAorbXNnaWQgIlJlbW92ZSIKK21zZ3N0ciAiRW50ZmVybmVuIgorCisjOiBsaWIvdG9vbHNfZGxnLnRjbDoyMzEKK21zZ2lkICIoQmx1ZSBkZW5vdGVzIHJlcG9zaXRvcnktbG9jYWwgdG9vbHMpIgorbXNnc3RyICIoV2Vya3pldWdlIGbDvHIgbG9rYWxlcyBSZXBvc2l0b3J5IHdlcmRlbiBpbiBCbGF1IGFuZ2V6ZWlndCkiCisKKyM6IGxpYi90b29sc19kbGcudGNsOjI4MworIywgdGNsLWZvcm1hdAorbXNnaWQgIiVzICglcyk6IgorbXNnc3RyICIlcyAoJXMpOiIKKworIzogbGliL3Rvb2xzX2RsZy50Y2w6MjkyCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUnVuIENvbW1hbmQ6ICVzIgorbXNnc3RyICJLb21tYW5kbyBhdWZydWZlbjogJXMiCisKKyM6IGxpYi90b29sc19kbGcudGNsOjMwNgorbXNnaWQgIkFyZ3VtZW50cyIKK21zZ3N0ciAiQXJndW1lbnRlIgorCisjOiBsaWIvdG9vbHNfZGxnLnRjbDozNDEKK21zZ2lkICJPSyIKK21zZ3N0ciAiT2siCisKKyM6IGxpYi9zZWFyY2gudGNsOjQ4Cittc2dpZCAiRmluZDoiCittc2dzdHIgIlN1Y2hlbjoiCisKKyM6IGxpYi9zZWFyY2gudGNsOjUwCittc2dpZCAiTmV4dCIKK21zZ3N0ciAiTsOkY2hzdGVyIgorCisjOiBsaWIvc2VhcmNoLnRjbDo1MQorbXNnaWQgIlByZXYiCittc2dzdHIgIlZvcmlnZXIiCisKKyM6IGxpYi9zZWFyY2gudGNsOjUyCittc2dpZCAiUmVnRXhwIgorbXNnc3RyICJSZWdBdXNkcnVjayIKKworIzogbGliL3NlYXJjaC50Y2w6NTQKK21zZ2lkICJDYXNlIgorbXNnc3RyICJHcm/Dny9rbGVpbiIKKworIzogbGliL3Nob3J0Y3V0LnRjbDo4IGxpYi9zaG9ydGN1dC50Y2w6NDMgbGliL3Nob3J0Y3V0LnRjbDo3NQorIywgdGNsLWZvcm1hdAorbXNnaWQgIiVzICglcyk6IENyZWF0ZSBEZXNrdG9wIEljb24iCittc2dzdHIgIiVzICglcyk6IERlc2t0b3AtSWNvbiBlcnN0ZWxsZW4iCisKKyM6IGxpYi9zaG9ydGN1dC50Y2w6MjQgbGliL3Nob3J0Y3V0LnRjbDo2NQorbXNnaWQgIkNhbm5vdCB3cml0ZSBzaG9ydGN1dDoiCittc2dzdHIgIkZlaGxlciBiZWltIFNjaHJlaWJlbiBkZXIgVmVya27DvHBmdW5nOiIKKworIzogbGliL3Nob3J0Y3V0LnRjbDoxNDAKK21zZ2lkICJDYW5ub3Qgd3JpdGUgaWNvbjoiCittc2dzdHIgIkZlaGxlciBiZWltIEVyc3RlbGxlbiBkZXMgSWNvbnM6IgorCisjOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjI5CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiJXMgKCVzKTogRGVsZXRlIEJyYW5jaCBSZW1vdGVseSIKK21zZ3N0ciAiJXMgKCVzKTogQnJhbmNoIGluIGV4dGVybmVtIFJlcG9zaXRvcnkgbMO2c2NoZW4iCisKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MzQKK21zZ2lkICJEZWxldGUgQnJhbmNoIFJlbW90ZWx5IgorbXNnc3RyICJCcmFuY2ggaW4gZXh0ZXJuZW0gUmVwb3NpdG9yeSBsw7ZzY2hlbiIKKworIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDo0OAorbXNnaWQgIkZyb20gUmVwb3NpdG9yeSIKK21zZ3N0ciAiSW4gUmVwb3NpdG9yeSIKKworIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDo4OAorbXNnaWQgIkJyYW5jaGVzIgorbXNnc3RyICJCcmFuY2hlcyIKKworIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoxMTAKK21zZ2lkICJEZWxldGUgT25seSBJZiIKK21zZ3N0ciAiTnVyIGzDtnNjaGVuLCB3ZW5uIgorCisjOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjExMgorbXNnaWQgIk1lcmdlZCBJbnRvOiIKK21zZ3N0ciAiWnVzYW1tZW5nZWbDvGhydCBtaXQ6IgorCisjOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjEyMCBsaWIvYnJhbmNoX2RlbGV0ZS50Y2w6NTMKK21zZ2lkICJBbHdheXMgKERvIG5vdCBwZXJmb3JtIG1lcmdlIGNoZWNrcykiCittc2dzdHIgIkltbWVyIChLZWluZSBadXNhbW1lbmbDvGhydW5nc3Byw7xmdW5nKSIKKworIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoxNTMKK21zZ2lkICJBIGJyYW5jaCBpcyByZXF1aXJlZCBmb3IgJ01lcmdlZCBJbnRvJy4iCittc2dzdHIgIkbDvHIgwrtadXNhbW1lbmbDvGhyZW4gbWl0wqsgbXVzcyBlaW4gQnJhbmNoIGFuZ2VnZWJlbiB3ZXJkZW4uIgorCisjOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjE4NQorIywgdGNsLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIGJyYW5jaGVzIGFyZSBub3QgY29tcGxldGVseSBtZXJnZWQgaW50byAlczpcbiIKKyJcbiIKKyIgLSAlcyIKK21zZ3N0ciAiIgorIkZvbGdlbmRlIEJyYW5jaGVzIHNpbmQgbm9jaCBuaWNodCBtaXQgwrslc8KrIHp1c2FtbWVuZ2Vmw7xocnQ6XG4iCisiXG4iCisiIC0gJXMiCisKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MTkwCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiIgorIk9uZSBvciBtb3JlIG9mIHRoZSBtZXJnZSB0ZXN0cyBmYWlsZWQgYmVjYXVzZSB5b3UgaGF2ZSBub3QgZmV0Y2hlZCB0aGUgIgorIm5lY2Vzc2FyeSBjb21taXRzLiAgVHJ5IGZldGNoaW5nIGZyb20gJXMgZmlyc3QuIgorbXNnc3RyICIiCisiRWluIG9kZXIgbWVocmVyZSBadXNhbW1lbmbDvGhydW5nZW4gc2luZCBmZWhsZ2VzY2hsYWdlbiwgZGEgU2llIG5pY2h0IGRpZSAiCisibm90d2VuZGlnZW4gQ29tbWl0cyB2b3JoZXIgYW5nZWZvcmRlcnQgaGFiZW4uICBTaWUgc29sbHRlbiB2ZXJzdWNoZW4sIHp1ZXJzdCAiCisidm9uIMK7JXPCqyBhbnp1Zm9yZGVybi4iCisKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MjA4Cittc2dpZCAiUGxlYXNlIHNlbGVjdCBvbmUgb3IgbW9yZSBicmFuY2hlcyB0byBkZWxldGUuIgorbXNnc3RyICJCaXR0ZSB3w6RobGVuIFNpZSBtaW5kZXN0ZW5zIGVpbmVuIEJyYW5jaCwgZGVyIGdlbMO2c2NodCB3ZXJkZW4gc29sbC4iCisKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MjE4IGxpYi9icmFuY2hfZGVsZXRlLnRjbDoxMTUKK21zZ2lkICIiCisiUmVjb3ZlcmluZyBkZWxldGVkIGJyYW5jaGVzIGlzIGRpZmZpY3VsdC5cbiIKKyJcbiIKKyJEZWxldGUgdGhlIHNlbGVjdGVkIGJyYW5jaGVzPyIKK21zZ3N0ciAiIgorIkRhcyBXaWVkZXJoZXJzdGVsbGVuIHZvbiBnZWzDtnNjaHRlbiBCcmFuY2hlcyBpc3QgbnVyIG1pdCBncsO2w59lcmVtIEF1ZndhbmQgIgorIm3DtmdsaWNoLlxuIgorIlxuIgorIlNvbGxlbiBkaWUgYXVzZ2V3w6RobHRlbiBCcmFuY2hlcyBnZWzDtnNjaHQgd2VyZGVuPyIKKworIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoyMjcKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJEZWxldGluZyBicmFuY2hlcyBmcm9tICVzIgorbXNnc3RyICJCcmFuY2hlcyBhdWYgwrslc8KrIHdlcmRlbiBnZWzDtnNjaHQiCisKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MzAwCittc2dpZCAiTm8gcmVwb3NpdG9yeSBzZWxlY3RlZC4iCittc2dzdHIgIktlaW4gUmVwb3NpdG9yeSBhdXNnZXfDpGhsdC4iCisKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MzA1CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiU2Nhbm5pbmcgJXMuLi4iCittc2dzdHIgIsK7JXPCqyBsYWRlbi4uLiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0NQorbXNnaWQgIkdpdCBHdWkiCittc2dzdHIgIkdpdCBHdWkiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTA0IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDI3Cittc2dpZCAiQ3JlYXRlIE5ldyBSZXBvc2l0b3J5IgorbXNnc3RyICJSZXBvc2l0b3J5IG5ldSBlcnN0ZWxsZW4iCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTEwCittc2dpZCAiTmV3Li4uIgorbXNnc3RyICJOZXUuLi4iCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTE3IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTExCittc2dpZCAiQ2xvbmUgRXhpc3RpbmcgUmVwb3NpdG9yeSIKK21zZ3N0ciAiUmVwb3NpdG9yeSBrbG9uZW4iCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTI4Cittc2dpZCAiQ2xvbmUuLi4iCittc2dzdHIgIktsb25lbi4uLiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMzUgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMTA1Cittc2dpZCAiT3BlbiBFeGlzdGluZyBSZXBvc2l0b3J5IgorbXNnc3RyICJSZXBvc2l0b3J5IMO2ZmZuZW4iCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTQxCittc2dpZCAiT3Blbi4uLiIKK21zZ3N0ciAiw5ZmZm5lbi4uLiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxNTQKK21zZ2lkICJSZWNlbnQgUmVwb3NpdG9yaWVzIgorbXNnc3RyICJMZXR6dGUgUmVwb3NpdG9yaWVzIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjE2NAorbXNnaWQgIk9wZW4gUmVjZW50IFJlcG9zaXRvcnk6IgorbXNnc3RyICJadWxldHp0IGJlbnV0enRlcyBSZXBvc2l0b3J5IMO2ZmZuZW46IgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjMzMSBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjMzOAorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDozNDUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gY3JlYXRlIHJlcG9zaXRvcnkgJXM6IgorbXNnc3RyICJSZXBvc2l0b3J5IMK7JXPCqyBrb25udGUgbmljaHQgZXJzdGVsbHQgd2VyZGVuOiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0MjIgbGliL2JyYW5jaF9jcmVhdGUudGNsOjMzCittc2dpZCAiQ3JlYXRlIgorbXNnc3RyICJFcnN0ZWxsZW4iCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDMyCittc2dpZCAiRGlyZWN0b3J5OiIKK21zZ3N0ciAiVmVyemVpY2huaXM6IgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjQ2MiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjU4OAorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMTM5Cittc2dpZCAiR2l0IFJlcG9zaXRvcnkiCittc2dzdHIgIkdpdCBSZXBvc2l0b3J5IgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjQ4NworIywgdGNsLWZvcm1hdAorbXNnaWQgIkRpcmVjdG9yeSAlcyBhbHJlYWR5IGV4aXN0cy4iCittc2dzdHIgIlZlcnplaWNobmlzIMK7JXPCqyBleGlzdGllcnQgYmVyZWl0cy4iCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDkxCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRmlsZSAlcyBhbHJlYWR5IGV4aXN0cy4iCittc2dzdHIgIkRhdGVpIMK7JXPCqyBleGlzdGllcnQgYmVyZWl0cy4iCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTA2Cittc2dpZCAiQ2xvbmUiCittc2dzdHIgIktsb25lbiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1MTkKK21zZ2lkICJTb3VyY2UgTG9jYXRpb246IgorbXNnc3RyICJIZXJrdW5mdHMtQWRyZXNzZToiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTI4Cittc2dpZCAiVGFyZ2V0IERpcmVjdG9yeToiCittc2dzdHIgIlppZWx2ZXJ6ZWljaG5pczoiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTM4Cittc2dpZCAiQ2xvbmUgVHlwZToiCittc2dzdHIgIkFydCBkZXMgS2xvbmVuczoiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTQzCittc2dpZCAiU3RhbmRhcmQgKEZhc3QsIFNlbWktUmVkdW5kYW50LCBIYXJkbGlua3MpIgorbXNnc3RyICJTdGFuZGFyZCAoc2NobmVsbCwgdGVpbHdlaXNlIHJlZHVuZGFudCwgSGFyZGxpbmtzKSIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1NDgKK21zZ2lkICJGdWxsIENvcHkgKFNsb3dlciwgUmVkdW5kYW50IEJhY2t1cCkiCittc2dzdHIgIkFsbGVzIGtvcGllcmVuIChsYW5nc2FtZXIsIHZvbGxlIFJlZHVuZGFueikiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTUzCittc2dpZCAiU2hhcmVkIChGYXN0ZXN0LCBOb3QgUmVjb21tZW5kZWQsIE5vIEJhY2t1cCkiCittc2dzdHIgIlZlcmtuw7xwZnQgKHNjaG5lbGwsIG5pY2h0IGVtcGZvaGxlbiwga2VpbiBCYWNrdXApIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjU2MAorbXNnaWQgIlJlY3Vyc2l2ZWx5IGNsb25lIHN1Ym1vZHVsZXMgdG9vIgorbXNnc3RyICJSZWt1cnNpdiB3ZWl0ZXJlIFN1Ym1vZHVsZSBrbG9uZW4iCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTk0IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjQxCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjc5MCBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjg2NAorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMTQ1IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTE1MworIywgdGNsLWZvcm1hdAorbXNnaWQgIk5vdCBhIEdpdCByZXBvc2l0b3J5OiAlcyIKK21zZ3N0ciAiS2VpbiBHaXQtUmVwb3NpdG9yeTogJXMiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjMwCittc2dpZCAiU3RhbmRhcmQgb25seSBhdmFpbGFibGUgZm9yIGxvY2FsIHJlcG9zaXRvcnkuIgorbXNnc3RyICJTdGFuZGFyZCBpc3QgbnVyIGbDvHIgbG9rYWxlIFJlcG9zaXRvcmllcyB2ZXJmw7xnYmFyLiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo2MzQKK21zZ2lkICJTaGFyZWQgb25seSBhdmFpbGFibGUgZm9yIGxvY2FsIHJlcG9zaXRvcnkuIgorbXNnc3RyICJWZXJrbsO8cGZ0IGlzdCBudXIgZsO8ciBsb2thbGUgUmVwb3NpdG9yaWVzIHZlcmbDvGdiYXIuIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjY1NQorIywgdGNsLWZvcm1hdAorbXNnaWQgIkxvY2F0aW9uICVzIGFscmVhZHkgZXhpc3RzLiIKK21zZ3N0ciAiQWRyZXNzZSDCuyVzwqsgZXhpc3RpZXJ0IGJlcmVpdHMuIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjY2NgorbXNnaWQgIkZhaWxlZCB0byBjb25maWd1cmUgb3JpZ2luIgorbXNnc3RyICJEZXIgVXJzcHJ1bmdzb3J0IGtvbm50ZSBuaWNodCBlaW5nZXJpY2h0ZXQgd2VyZGVuIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjY3OAorbXNnaWQgIkNvdW50aW5nIG9iamVjdHMiCittc2dzdHIgIk9iamVrdGUgd2VyZGVuIGdlesOkaGx0IgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjY3OQorbXNnaWQgImJ1Y2tldHMiCittc2dzdHIgIkJ1Y2tldHMiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NzAzCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGNvcHkgb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXM6ICVzIgorbXNnc3RyICJLb3BpZW4gdm9uIE9iamVrdGVuL0luZm8vQWx0ZXJuYXRlcyBrb25udGVuIG5pY2h0IGVyc3RlbGx0IHdlcmRlbjogJXMiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NzQwCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiTm90aGluZyB0byBjbG9uZSBmcm9tICVzLiIKK21zZ3N0ciAiVm9uIMK7JXPCqyBrb25udGUgbmljaHRzIGdla2xvbnQgd2VyZGVuLiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo3NDIgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5NjIKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6OTc0Cittc2dpZCAiVGhlICdtYXN0ZXInIGJyYW5jaCBoYXMgbm90IGJlZW4gaW5pdGlhbGl6ZWQuIgorbXNnc3RyICJEZXIgwrttYXN0ZXLCqy1CcmFuY2ggd3VyZGUgbm9jaCBuaWNodCBpbml0aWFsaXNpZXJ0LiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo3NTUKK21zZ2lkICJIYXJkbGlua3MgYXJlIHVuYXZhaWxhYmxlLiAgRmFsbGluZyBiYWNrIHRvIGNvcHlpbmcuIgorbXNnc3RyICJIYXJkbGlua3MgbmljaHQgdmVyZsO8Z2Jhci4gU3RhdHRkZXNzZW4gd2lyZCBrb3BpZXJ0LiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo3NjkKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJDbG9uaW5nIGZyb20gJXMiCittc2dzdHIgIktvcGllcmVuIHZvbiDCuyVzwqsiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6ODAwCittc2dpZCAiQ29weWluZyBvYmplY3RzIgorbXNnc3RyICJPYmpla3RkYXRlbmJhbmsga29waWVyZW4iCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6ODAxCittc2dpZCAiS2lCIgorbXNnc3RyICJLQiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo4MjUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gY29weSBvYmplY3Q6ICVzIgorbXNnc3RyICJPYmpla3Qga2FubiBuaWNodCBrb3BpZXJ0IHdlcmRlbjogJXMiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6ODM3Cittc2dpZCAiTGlua2luZyBvYmplY3RzIgorbXNnc3RyICJPYmpla3RlIHZlcmxpbmtlbiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo4MzgKK21zZ2lkICJvYmplY3RzIgorbXNnc3RyICJPYmpla3RlIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjg0NgorIywgdGNsLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBoYXJkbGluayBvYmplY3Q6ICVzIgorbXNnc3RyICJGw7xyIE9iamVrdCBrb25udGUga2VpbiBIYXJkbGluayBlcnN0ZWxsdCB3ZXJkZW46ICVzIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkwMworbXNnaWQgIkNhbm5vdCBmZXRjaCBicmFuY2hlcyBhbmQgb2JqZWN0cy4gIFNlZSBjb25zb2xlIG91dHB1dCBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKyJCcmFuY2hlcyB1bmQgT2JqZWt0ZSBrb25udGVuIG5pY2h0IGFuZ2Vmb3JkZXJ0IHdlcmRlbi4gIEtvbnRyb2xsaWVyZW4gU2llICIKKyJkaWUgQXVzZ2FiZW4gYXVmIGRlciBLb25zb2xlIGbDvHIgd2VpdGVyZSBBbmdhYmVuLiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5MTQKK21zZ2lkICJDYW5ub3QgZmV0Y2ggdGFncy4gIFNlZSBjb25zb2xlIG91dHB1dCBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKyJUYWdzIGtvbm50ZW4gbmljaHQgYW5nZWZvcmRlcnQgd2VyZGVuLiAgS29udHJvbGxpZXJlbiBTaWUgZGllIEF1c2dhYmVuIGF1ZiAiCisiZGVyIEtvbnNvbGUgZsO8ciB3ZWl0ZXJlIEFuZ2FiZW4uIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkzOAorbXNnaWQgIkNhbm5vdCBkZXRlcm1pbmUgSEVBRC4gIFNlZSBjb25zb2xlIG91dHB1dCBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKyJEaWUgQnJhbmNoc3BpdHplIChIRUFEKSBrb25udGUgbmljaHQgZ2VmdW5kZW4gd2VyZGVuLiAgS29udHJvbGxpZXJlbiBTaWUgZGllICIKKyJBdXNnYWJlbiBhdWYgZGVyIEtvbnNvbGUgZsO8ciB3ZWl0ZXJlIEFuZ2FiZW4uIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjk0NworIywgdGNsLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBjbGVhbnVwICVzIgorbXNnc3RyICJWZXJ6ZWljaG5pcyDCuyVzwqsga2FubiBuaWNodCBhdWZnZXLDpHVtdCB3ZXJkZW4uIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjk1MworbXNnaWQgIkNsb25lIGZhaWxlZC4iCittc2dzdHIgIktsb25lbiBmZWhsZ2VzY2hsYWdlbi4iCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6OTYwCittc2dpZCAiTm8gZGVmYXVsdCBicmFuY2ggb2J0YWluZWQuIgorbXNnc3RyICJLZWluIHZvcmVpbmdlc3RlbGx0ZXIgQnJhbmNoIGdlZnVuZGVuLiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5NzEKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJDYW5ub3QgcmVzb2x2ZSAlcyBhcyBhIGNvbW1pdC4iCittc2dzdHIgIsK7JXPCqyB3dXJkZSBuaWNodCBhbHMgQ29tbWl0IGdlZnVuZGVuLiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5OTgKK21zZ2lkICJDcmVhdGluZyB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAiQXJiZWl0c2tvcGllIGVyc3RlbGxlbiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMDI4Cittc2dpZCAiSW5pdGlhbCBmaWxlIGNoZWNrb3V0IGZhaWxlZC4iCittc2dzdHIgIkVyc3RlbGxlbiBkZXIgQXJiZWl0c2tvcGllIGZlaGxnZXNjaGxhZ2VuLiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMDcyCittc2dpZCAiQ2xvbmluZyBzdWJtb2R1bGVzIgorbXNnc3RyICJLbG9uZSBTdWJtb2R1bCIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMDg3Cittc2dpZCAiQ2Fubm90IGNsb25lIHN1Ym1vZHVsZXMuIgorbXNnc3RyICJTdWJtb2R1bCBrb25udGUgbmljaHQgZ2VrbG9udCB3ZXJkZW4uIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjExMTAKK21zZ2lkICJSZXBvc2l0b3J5OiIKK21zZ3N0ciAiUmVwb3NpdG9yeToiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTE1OQorIywgdGNsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBvcGVuIHJlcG9zaXRvcnkgJXM6IgorbXNnc3RyICJSZXBvc2l0b3J5IMK7JXPCqyBrb25udGUgbmljaHQgZ2XDtmZmbmV0IHdlcmRlbi4iCisKKyM6IGxpYi9hYm91dC50Y2w6MjYKK21zZ2lkICJnaXQtZ3VpIC0gYSBncmFwaGljYWwgdXNlciBpbnRlcmZhY2UgZm9yIEdpdC4iCittc2dzdHIgImdpdC1ndWkgLSBlaW5lIGdyYWZpc2NoZSBPYmVyZmzDpGNoZSBmw7xyIEdpdC4iCisKKyM6IGxpYi9ibGFtZS50Y2w6NzQKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIlcyAoJXMpOiBGaWxlIFZpZXdlciIKK21zZ3N0ciAiJXMgKCVzKTogRGF0ZWktQnJvd3NlciIKKworIzogbGliL2JsYW1lLnRjbDo4MAorbXNnaWQgIkNvbW1pdDoiCittc2dzdHIgIkNvbW1pdDoiCisKKyM6IGxpYi9ibGFtZS50Y2w6MjgyCittc2dpZCAiQ29weSBDb21taXQiCittc2dzdHIgIkNvbW1pdCBrb3BpZXJlbiIKKworIzogbGliL2JsYW1lLnRjbDoyODYKK21zZ2lkICJGaW5kIFRleHQuLi4iCittc2dzdHIgIlRleHQgc3VjaGVuLi4uIgorCisjOiBsaWIvYmxhbWUudGNsOjI5MAorbXNnaWQgIkdvdG8gTGluZS4uLiIKK21zZ3N0ciAiR2VoZSB6dSBaZWlsZS4uLiIKKworIzogbGliL2JsYW1lLnRjbDoyOTkKK21zZ2lkICJEbyBGdWxsIENvcHkgRGV0ZWN0aW9uIgorbXNnc3RyICJWb2xsZSBLb3BpZS1Fcmtlbm51bmciCisKKyM6IGxpYi9ibGFtZS50Y2w6MzAzCittc2dpZCAiU2hvdyBIaXN0b3J5IENvbnRleHQiCittc2dzdHIgIkhpc3Rvcmllbi1Lb250ZXh0IGFuemVpZ2VuIgorCisjOiBsaWIvYmxhbWUudGNsOjMwNgorbXNnaWQgIkJsYW1lIFBhcmVudCBDb21taXQiCittc2dzdHIgIkVsdGVybmNvbW1pdCBhbm5vdGllcmVuIgorCisjOiBsaWIvYmxhbWUudGNsOjQ2OAorIywgdGNsLWZvcm1hdAorbXNnaWQgIlJlYWRpbmcgJXMuLi4iCittc2dzdHIgIiVzIGxlc2VuLi4uIgorCisjOiBsaWIvYmxhbWUudGNsOjU5NgorbXNnaWQgIkxvYWRpbmcgY29weS9tb3ZlIHRyYWNraW5nIGFubm90YXRpb25zLi4uIgorbXNnc3RyICJBbm5vdGllcnVuZ2VuIGbDvHIgS29waWVyZW4vVmVyc2NoaWViZW4gd2VyZGVuIGdlbGFkZW4uLi4iCisKKyM6IGxpYi9ibGFtZS50Y2w6NjEzCittc2dpZCAibGluZXMgYW5ub3RhdGVkIgorbXNnc3RyICJaZWlsZW4gYW5ub3RpZXJ0IgorCisjOiBsaWIvYmxhbWUudGNsOjgxNQorbXNnaWQgIkxvYWRpbmcgb3JpZ2luYWwgbG9jYXRpb24gYW5ub3RhdGlvbnMuLi4iCittc2dzdHIgIkFubm90aWVydW5nZW4gZsO8ciB1cnNwcsO8bmdsaWNoZW4gT3J0IHdlcmRlbiBnZWxhZGVuLi4uIgorCisjOiBsaWIvYmxhbWUudGNsOjgxOAorbXNnaWQgIkFubm90YXRpb24gY29tcGxldGUuIgorbXNnc3RyICJBbm5vdGllcnVuZyB2b2xsc3TDpG5kaWcuIgorCisjOiBsaWIvYmxhbWUudGNsOjg0OQorbXNnaWQgIkJ1c3kiCittc2dzdHIgIlZlcmFyYmVpdHVuZyBsw6R1ZnQiCisKKyM6IGxpYi9ibGFtZS50Y2w6ODUwCittc2dpZCAiQW5ub3RhdGlvbiBwcm9jZXNzIGlzIGFscmVhZHkgcnVubmluZy4iCittc2dzdHIgIkFubm90aWVydW5nIGzDpHVmdCBiZXJlaXRzLiIKKworIzogbGliL2JsYW1lLnRjbDo4ODkKK21zZ2lkICJSdW5uaW5nIHRob3JvdWdoIGNvcHkgZGV0ZWN0aW9uLi4uIgorbXNnc3RyICJJbnRlbnNpdmUgS29waWUtRXJrZW5udW5nIGzDpHVmdC4uLiIKKworIzogbGliL2JsYW1lLnRjbDo5NTcKK21zZ2lkICJMb2FkaW5nIGFubm90YXRpb24uLi4iCittc2dzdHIgIkFubm90aWVydW5nIGxhZGVuLi4uIgorCisjOiBsaWIvYmxhbWUudGNsOjEwMTAKK21zZ2lkICJBdXRob3I6IgorbXNnc3RyICJBdXRvcjoiCisKKyM6IGxpYi9ibGFtZS50Y2w6MTAxNAorbXNnaWQgIkNvbW1pdHRlcjoiCittc2dzdHIgIkNvbW1pdHRlcjoiCisKKyM6IGxpYi9ibGFtZS50Y2w6MTAxOQorbXNnaWQgIk9yaWdpbmFsIEZpbGU6IgorbXNnc3RyICJVcnNwcsO8bmdsaWNoZSBEYXRlaToiCisKKyM6IGxpYi9ibGFtZS50Y2w6MTA2NworbXNnaWQgIkNhbm5vdCBmaW5kIEhFQUQgY29tbWl0OiIKK21zZ3N0ciAiQnJhbmNoc3BpdHplICjCu0hFQUQgY29tbWl0wqspIGthbm4gbmljaHQgZ2VmdW5kZW4gd2VyZGVuOiIKKworIzogbGliL2JsYW1lLnRjbDoxMTIyCittc2dpZCAiQ2Fubm90IGZpbmQgcGFyZW50IGNvbW1pdDoiCittc2dzdHIgIkVsdGVybmNvbW1pdCBrYW5uIG5pY2h0IGdlZnVuZGVuIHdlcmRlbjoiCisKKyM6IGxpYi9ibGFtZS50Y2w6MTEzNworbXNnaWQgIlVuYWJsZSB0byBkaXNwbGF5IHBhcmVudCIKK21zZ3N0ciAiRWx0ZXJuY29tbWl0IGthbm4gbmljaHQgYW5nZXplaWd0IHdlcmRlbiIKKworIzogbGliL2JsYW1lLnRjbDoxMTM4IGxpYi9kaWZmLnRjbDozNDUKK21zZ2lkICJFcnJvciBsb2FkaW5nIGRpZmY6IgorbXNnc3RyICJGZWhsZXIgYmVpbSBMYWRlbiBkZXMgVmVyZ2xlaWNoczoiCisKKyM6IGxpYi9ibGFtZS50Y2w6MTI3OQorbXNnaWQgIk9yaWdpbmFsbHkgQnk6IgorbXNnc3RyICJVcnNwcsO8bmdsaWNoIHZvbjoiCisKKyM6IGxpYi9ibGFtZS50Y2w6MTI4NQorbXNnaWQgIkluIEZpbGU6IgorbXNnc3RyICJJbiBEYXRlaToiCisKKyM6IGxpYi9ibGFtZS50Y2w6MTI5MAorbXNnaWQgIkNvcGllZCBPciBNb3ZlZCBIZXJlIEJ5OiIKK21zZ3N0ciAiS29waWVydCBvZGVyIHZlcnNjaG9iZW4gZHVyY2g6IgorCisjOiBsaWIvZGlmZi50Y2w6NzcKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIiCisiTm8gZGlmZmVyZW5jZXMgZGV0ZWN0ZWQuXG4iCisiXG4iCisiJXMgaGFzIG5vIGNoYW5nZXMuXG4iCisiXG4iCisiVGhlIG1vZGlmaWNhdGlvbiBkYXRlIG9mIHRoaXMgZmlsZSB3YXMgdXBkYXRlZCBieSBhbm90aGVyIGFwcGxpY2F0aW9uLCBidXQgIgorInRoZSBjb250ZW50IHdpdGhpbiB0aGUgZmlsZSB3YXMgbm90IGNoYW5nZWQuXG4iCisiXG4iCisiQSByZXNjYW4gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN0YXJ0ZWQgdG8gZmluZCBvdGhlciBmaWxlcyB3aGljaCBtYXkgaGF2ZSAiCisidGhlIHNhbWUgc3RhdGUuIgorbXNnc3RyICIiCisiS2VpbmUgw4RuZGVydW5nZW4gZmVzdHN0ZWxsYmFyLlxuIgorIlxuIgorIsK7JXPCqyBlbnRow6RsdCBrZWluZSDDhG5kZXJ1bmdlbi4gWndhciB3dXJkZSBkYXMgw4RuZGVydW5nc2RhdHVtIGRpZXNlciBEYXRlaSAiCisidm9uIGVpbmVtIGFuZGVyZW4gUHJvZ3JhbW0gbW9kaWZpemllcnQsIGFiZXIgZGVyIEluaGFsdCBkZXIgRGF0ZWkgaXN0ICIKKyJ1bnZlcsOkbmRlcnQuXG4iCisiXG4iCisiRGFzIEFyYmVpdHN2ZXJ6ZWljaG5pcyB3aXJkIGpldHp0IG5ldSBnZWxhZGVuLCB1bSBkaWVzZSDDhG5kZXJ1bmcgYmVpIGFsbGVuICIKKyJEYXRlaWVuIHp1IHByw7xmZW4uIgorCisjOiBsaWIvZGlmZi50Y2w6MTE3CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiTG9hZGluZyBkaWZmIG9mICVzLi4uIgorbXNnc3RyICJWZXJnbGVpY2ggdm9uIMK7JXPCqyBsYWRlbi4uLiIKKworIzogbGliL2RpZmYudGNsOjE0MworbXNnaWQgIiIKKyJMT0NBTDogZGVsZXRlZFxuIgorIlJFTU9URTpcbiIKK21zZ3N0ciAiIgorIkxPS0FMOiBnZWzDtnNjaHRcbiIKKyJFWFRFUk46XG4iCisKKyM6IGxpYi9kaWZmLnRjbDoxNDgKK21zZ2lkICIiCisiUkVNT1RFOiBkZWxldGVkXG4iCisiTE9DQUw6XG4iCittc2dzdHIgIiIKKyJFWFRFUk46IGdlbMO2c2NodFxuIgorIkxPS0FMOlxuIgorCisjOiBsaWIvZGlmZi50Y2w6MTU1Cittc2dpZCAiTE9DQUw6XG4iCittc2dzdHIgIkxPS0FMOlxuIgorCisjOiBsaWIvZGlmZi50Y2w6MTU4Cittc2dpZCAiUkVNT1RFOlxuIgorbXNnc3RyICJFWFRFUk46XG4iCisKKyM6IGxpYi9kaWZmLnRjbDoyMjAgbGliL2RpZmYudGNsOjM0NAorIywgdGNsLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBkaXNwbGF5ICVzIgorbXNnc3RyICJEYXRlaSDCuyVzwqsga2FubiBuaWNodCBhbmdlemVpZ3Qgd2VyZGVuIgorCisjOiBsaWIvZGlmZi50Y2w6MjIxCittc2dpZCAiRXJyb3IgbG9hZGluZyBmaWxlOiIKK21zZ3N0ciAiRmVobGVyIGJlaW0gTGFkZW4gZGVyIERhdGVpOiIKKworIzogbGliL2RpZmYudGNsOjIyNworbXNnaWQgIkdpdCBSZXBvc2l0b3J5IChzdWJwcm9qZWN0KSIKK21zZ3N0ciAiR2l0LVJlcG9zaXRvcnkgKFN1YnByb2pla3QpIgorCisjOiBsaWIvZGlmZi50Y2w6MjM5Cittc2dpZCAiKiBCaW5hcnkgZmlsZSAobm90IHNob3dpbmcgY29udGVudCkuIgorbXNnc3RyICIqIEJpbsOkcmRhdGVpIChJbmhhbHQgd2lyZCBuaWNodCBhbmdlemVpZ3QpIgorCisjOiBsaWIvZGlmZi50Y2w6MjQ0CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiIgorIiogVW50cmFja2VkIGZpbGUgaXMgJWQgYnl0ZXMuXG4iCisiKiBTaG93aW5nIG9ubHkgZmlyc3QgJWQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKyIqIFVudmVyc2lvbmllcnRlIERhdGVpIGhhdCAlZCBCeXRlcy5cbiIKKyIqIE51ciBlcnN0ZSAlZCBCeXRlcyB3ZXJkZW4gYW5nZXplaWd0LlxuIgorCisjOiBsaWIvZGlmZi50Y2w6MjUwCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiogVW50cmFja2VkIGZpbGUgY2xpcHBlZCBoZXJlIGJ5ICVzLlxuIgorIiogVG8gc2VlIHRoZSBlbnRpcmUgZmlsZSwgdXNlIGFuIGV4dGVybmFsIGVkaXRvci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiogVW52ZXJzaW9uaWVydGUgRGF0ZWksIGhpZXIgYWJnZXNjaG5pdHRlbiBkdXJjaCAlcy5cbiIKKyIqIFp1bSBBbnNlaGVuIGRlciB2b2xsc3TDpG5kaWdlbiBEYXRlaSBleHRlcm5lbiBFZGl0b3IgYmVudXR6ZW4uXG4iCisKKyM6IGxpYi9kaWZmLnRjbDo1ODMKK21zZ2lkICJGYWlsZWQgdG8gdW5zdGFnZSBzZWxlY3RlZCBodW5rLiIKK21zZ3N0ciAiIgorIkZlaGxlciBiZWltIEhlcmF1c25laG1lbiBkZXMgZ2V3w6RobHRlbiBQYXRjaC1CbG9ja3MgYXVzIGRlciBCZXJlaXRzdGVsbHVuZy4iCisKKyM6IGxpYi9kaWZmLnRjbDo1OTEKK21zZ2lkICJGYWlsZWQgdG8gcmV2ZXJ0IHNlbGVjdGVkIGh1bmsuIgorbXNnc3RyICJGZWhsZXIgYmVpbSBadXLDvGNrbmVobWVuIGRlcyBnZXfDpGhsdGVuIFBhdGNoLUJsb2Nrcy4iCisKKyM6IGxpYi9kaWZmLnRjbDo1OTQKK21zZ2lkICJGYWlsZWQgdG8gc3RhZ2Ugc2VsZWN0ZWQgaHVuay4iCittc2dzdHIgIkZlaGxlciBiZWltIEJlcmVpdHN0ZWxsZW4gZGVzIGdld8OkaGx0ZW4gUGF0Y2gtQmxvY2tzLiIKKworIzogbGliL2RpZmYudGNsOjY4NworbXNnaWQgIkZhaWxlZCB0byB1bnN0YWdlIHNlbGVjdGVkIGxpbmUuIgorbXNnc3RyICJGZWhsZXIgYmVpbSBIZXJhdXNuZWhtZW4gZGVyIGdld8OkaGx0ZW4gWmVpbGUgYXVzIGRlciBCZXJlaXRzdGVsbHVuZy4iCisKKyM6IGxpYi9kaWZmLnRjbDo2OTYKK21zZ2lkICJGYWlsZWQgdG8gcmV2ZXJ0IHNlbGVjdGVkIGxpbmUuIgorbXNnc3RyICJGZWhsZXIgYmVpbSBadXLDvGNrbmVobWVuIGRlciBnZXfDpGhsdGVuIFplaWxlLiIKKworIzogbGliL2RpZmYudGNsOjcwMAorbXNnaWQgIkZhaWxlZCB0byBzdGFnZSBzZWxlY3RlZCBsaW5lLiIKK21zZ3N0ciAiRmVobGVyIGJlaW0gQmVyZWl0c3RlbGxlbiBkZXIgZ2V3w6RobHRlbiBaZWlsZS4iCisKKyM6IGxpYi9kaWZmLnRjbDo4ODkKK21zZ2lkICJGYWlsZWQgdG8gdW5kbyBsYXN0IHJldmVydC4iCittc2dzdHIgIkZlaGxlciBiZWltIFLDvGNrZ8OkbmdpZ21hY2hlbiBkZXMgbGV0enRlbiBadXLDvGNrbmVobWVuLUNvbW1pdHMiCisKKyM6IGxpYi9zc2hrZXkudGNsOjM0CiBtc2dpZCAiTm8ga2V5cyBmb3VuZC4iCiBtc2dzdHIgIktlaW5lIFNjaGzDvHNzZWwgZ2VmdW5kZW4uIgogCi0jOiBsaWIvc3Noa2V5LnRjbDozNAorIzogbGliL3NzaGtleS50Y2w6MzcKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJGb3VuZCBhIHB1YmxpYyBrZXkgaW46ICVzIgogbXNnc3RyICLDlmZmZW50bGljaGVyIFNjaGzDvHNzZWwgZ2VmdW5kZW4gaW46ICVzIgogCi0jOiBsaWIvc3Noa2V5LnRjbDo0MAorIzogbGliL3NzaGtleS50Y2w6NDMKIG1zZ2lkICJHZW5lcmF0ZSBLZXkiCiBtc2dzdHIgIlNjaGzDvHNzZWwgZXJ6ZXVnZW4iCiAKLSM6IGxpYi9zc2hrZXkudGNsOjU2CisjOiBsaWIvc3Noa2V5LnRjbDo2MQogbXNnaWQgIkNvcHkgVG8gQ2xpcGJvYXJkIgogbXNnc3RyICJJbiBad2lzY2hlbmFibGFnZSBrb3BpZXJlbiIKIAotIzogbGliL3NzaGtleS50Y2w6NzAKKyM6IGxpYi9zc2hrZXkudGNsOjc1CiBtc2dpZCAiWW91ciBPcGVuU1NIIFB1YmxpYyBLZXkiCiBtc2dzdHIgIklociBPcGVuU1NIIMO2ZmZlbmxpY2hlciBTY2hsw7xzc2VsIgogCi0jOiBsaWIvc3Noa2V5LnRjbDo3OAorIzogbGliL3NzaGtleS50Y2w6ODMKIG1zZ2lkICJHZW5lcmF0aW5nLi4uIgogbXNnc3RyICJFcnpldWdlbi4uLiIKIAotIzogbGliL3NzaGtleS50Y2w6ODQKKyM6IGxpYi9zc2hrZXkudGNsOjg5CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiIgogIkNvdWxkIG5vdCBzdGFydCBzc2gta2V5Z2VuOlxuIgpAQCAtMjM5MiwyMDEgKzIyODIsNTkzIEBACiAiXG4iCiAiJXMiCiAKLSM6IGxpYi9zc2hrZXkudGNsOjExMQorIzogbGliL3NzaGtleS50Y2w6MTE2CiBtc2dpZCAiR2VuZXJhdGlvbiBmYWlsZWQuIgogbXNnc3RyICJTY2hsw7xzc2VsZXJ6ZXVndW5nIGZlaGxnZXNjaGxhZ2VuLiIKIAotIzogbGliL3NzaGtleS50Y2w6MTE4CisjOiBsaWIvc3Noa2V5LnRjbDoxMjMKIG1zZ2lkICJHZW5lcmF0aW9uIHN1Y2NlZWRlZCwgYnV0IG5vIGtleXMgZm91bmQuIgogbXNnc3RyICJTY2hsw7xzc2VsZXJ6ZXVndW5nIGVyZm9sZ3JlaWNoLCBhYmVyIGtlaW5lIFNjaGzDvHNzZWwgZ2VmdW5kZW4uIgogCi0jOiBsaWIvc3Noa2V5LnRjbDoxMjEKKyM6IGxpYi9zc2hrZXkudGNsOjEyNgogIywgdGNsLWZvcm1hdAogbXNnaWQgIllvdXIga2V5IGlzIGluOiAlcyIKIG1zZ3N0ciAiSWhyIFNjaGzDvHNzZWwgaXN0IGFiZ2VsZWd0IGluOiAlcyIKIAotIzogbGliL3N0YXR1c19iYXIudGNsOjgzCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MjMKICMsIHRjbC1mb3JtYXQKLW1zZ2lkICIlcyAuLi4gJSppIG9mICUqaSAlcyAoJTNpJSUpIgotbXNnc3RyICIlcyAuLi4gJSppIHZvbiAlKmkgJXMgKCUzaSUlKSIKK21zZ2lkICIlcyAoJXMpOiBDcmVhdGUgQnJhbmNoIgorbXNnc3RyICIlcyAoJXMpOiBCcmFuY2ggZXJzdGVsbGVuIgogCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDoyMgotbXNnaWQgIkFkZCBUb29sIgotbXNnc3RyICJXZXJremV1ZyBoaW56dWbDvGdlbiIKKyM6IGxpYi9icmFuY2hfY3JlYXRlLnRjbDoyOAorbXNnaWQgIkNyZWF0ZSBOZXcgQnJhbmNoIgorbXNnc3RyICJOZXVlbiBCcmFuY2ggZXJzdGVsbGVuIgogCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDoyOAotbXNnaWQgIkFkZCBOZXcgVG9vbCBDb21tYW5kIgotbXNnc3RyICJOZXVlcyBLb21tYW5kbyBmw7xyIFdlcmt6ZXVnIGhpbnp1ZsO8Z2VuIgorIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjQyCittc2dpZCAiQnJhbmNoIE5hbWUiCittc2dzdHIgIkJyYW5jaG5hbWUiCiAKLSM6IGxpYi90b29sc19kbGcudGNsOjMzCi1tc2dpZCAiQWRkIGdsb2JhbGx5IgotbXNnc3RyICJHbG9iYWwgaGluenVmw7xnZW4iCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NTcKK21zZ2lkICJNYXRjaCBUcmFja2luZyBCcmFuY2ggTmFtZSIKK21zZ3N0ciAiUGFzc2VuZCB6dSBUcmFja2luZ2JyYW5jaC1OYW1lIgogCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDo0NQotbXNnaWQgIlRvb2wgRGV0YWlscyIKLW1zZ3N0ciAiRWluemVsaGVpdGVuIGRlcyBXZXJremV1Z3MiCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NjYKK21zZ2lkICJTdGFydGluZyBSZXZpc2lvbiIKK21zZ3N0ciAiQW5mYW5nc3ZlcnNpb24iCiAKLSM6IGxpYi90b29sc19kbGcudGNsOjQ4Ci1tc2dpZCAiVXNlICcvJyBzZXBhcmF0b3JzIHRvIGNyZWF0ZSBhIHN1Ym1lbnUgdHJlZToiCi1tc2dzdHIgIkJlbnV0emVuIFNpZSBlaW5lbiBTY2hyw6Rnc3RyaWNoIMK7L8KrLCB1bSBVbnRlcm1lbsO8cyB6dSBlcnN0ZWxsZW46IgorIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjcyCittc2dpZCAiVXBkYXRlIEV4aXN0aW5nIEJyYW5jaDoiCittc2dzdHIgIkV4aXN0aWVyZW5kZW4gQnJhbmNoIGFrdHVhbGlzaWVyZW46IgogCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDo2MQotbXNnaWQgIkNvbW1hbmQ6IgotbXNnc3RyICJLb21tYW5kbzoiCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NzUKK21zZ2lkICJObyIKK21zZ3N0ciAiTmVpbiIKIAotIzogbGliL3Rvb2xzX2RsZy50Y2w6NzQKLW1zZ2lkICJTaG93IGEgZGlhbG9nIGJlZm9yZSBydW5uaW5nIgotbXNnc3RyICJCZXN0w6R0aWd1bmdzZnJhZ2Ugdm9yIFN0YXJ0ZW4gYW56ZWlnZW4iCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6ODAKK21zZ2lkICJGYXN0IEZvcndhcmQgT25seSIKK21zZ3N0ciAiTnVyIFZvcnNwdWxlbiIKIAotIzogbGliL3Rvb2xzX2RsZy50Y2w6ODAKLW1zZ2lkICJBc2sgdGhlIHVzZXIgdG8gc2VsZWN0IGEgcmV2aXNpb24gKHNldHMgJFJFVklTSU9OKSIKLW1zZ3N0ciAiQmVudXR6ZXIgbmFjaCBWZXJzaW9uIGZyYWdlbiAoc2V0enQgJFJFVklTSU9OKSIKKyM6IGxpYi9icmFuY2hfY3JlYXRlLnRjbDo5NworbXNnaWQgIkNoZWNrb3V0IEFmdGVyIENyZWF0aW9uIgorbXNnc3RyICJCcmFuY2ggYXVzY2hlY2tlbiBuYWNoIEVyc3RlbGxlbiIKIAotIzogbGliL3Rvb2xzX2RsZy50Y2w6ODUKLW1zZ2lkICJBc2sgdGhlIHVzZXIgZm9yIGFkZGl0aW9uYWwgYXJndW1lbnRzIChzZXRzICRBUkdTKSIKLW1zZ3N0ciAiQmVudXR6ZXIgbmFjaCB6dXPDpHR6bGljaGVuIEFyZ3VtZW50ZW4gZnJhZ2VuIChzZXR6dCAkQVJHUykiCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MTMyCittc2dpZCAiUGxlYXNlIHNlbGVjdCBhIHRyYWNraW5nIGJyYW5jaC4iCittc2dzdHIgIkJpdHRlIHfDpGhsZW4gU2llIGVpbmVuIFRyYWNraW5nYnJhbmNoLiIKIAotIzogbGliL3Rvb2xzX2RsZy50Y2w6OTIKLW1zZ2lkICJEb24ndCBzaG93IHRoZSBjb21tYW5kIG91dHB1dCB3aW5kb3ciCi1tc2dzdHIgIktlaW4gQXVzZ2FiZWZlbnN0ZXIgemVpZ2VuIgotCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDo5NwotbXNnaWQgIlJ1biBvbmx5IGlmIGEgZGlmZiBpcyBzZWxlY3RlZCAoJEZJTEVOQU1FIG5vdCBlbXB0eSkiCi1tc2dzdHIgIk51ciBzdGFydGVuLCB3ZW5uIGVpbiBWZXJnbGVpY2ggZ2V3w6RobHQgaXN0ICgkRklMRU5BTUUgaXN0IG5pY2h0IGxlZXIpIgotCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDoxMjEKLW1zZ2lkICJQbGVhc2Ugc3VwcGx5IGEgbmFtZSBmb3IgdGhlIHRvb2wuIgotbXNnc3RyICJCaXR0ZSBnZWJlbiBTaWUgZWluZW4gV2Vya3pldWduYW1lbiBhbi4iCi0KLSM6IGxpYi90b29sc19kbGcudGNsOjEyOQorIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjE0MQogIywgdGNsLWZvcm1hdAotbXNnaWQgIlRvb2wgJyVzJyBhbHJlYWR5IGV4aXN0cy4iCi1tc2dzdHIgIldlcmt6ZXVnIMK7JXPCqyBleGlzdGllcnQgYmVyZWl0cy4iCittc2dpZCAiVHJhY2tpbmcgYnJhbmNoICVzIGlzIG5vdCBhIGJyYW5jaCBpbiB0aGUgcmVtb3RlIHJlcG9zaXRvcnkuIgorbXNnc3RyICJUcmFja2luZ2JyYW5jaCDCuyVzwqsgaXN0IGtlaW4gQnJhbmNoIGltIGV4dGVybmVuIFJlcG9zaXRvcnkuIgogCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDoxNTEKKyM6IGxpYi9jb25zb2xlLnRjbDo1OQorbXNnaWQgIldvcmtpbmcuLi4gcGxlYXNlIHdhaXQuLi4iCittc2dzdHIgIlZlcmFyYmVpdHVuZy4gQml0dGUgd2FydGVuLi4uIgorCisjOiBsaWIvY29uc29sZS50Y2w6MTg2Cittc2dpZCAiU3VjY2VzcyIKK21zZ3N0ciAiRXJmb2xncmVpY2giCisKKyM6IGxpYi9jb25zb2xlLnRjbDoyMDAKK21zZ2lkICJFcnJvcjogQ29tbWFuZCBGYWlsZWQiCittc2dzdHIgIkZlaGxlcjogS29tbWFuZG8gZmVobGdlc2NobGFnZW4iCisKKyM6IGxpYi9saW5lLnRjbDoxNworbXNnaWQgIkdvdG8gTGluZToiCittc2dzdHIgIkdlaGUgenUgWmVpbGU6IgorCisjOiBsaWIvbGluZS50Y2w6MjMKK21zZ2lkICJHbyIKK21zZ3N0ciAiR2VoZSIKKworIzogbGliL2Nob29zZV9yZXYudGNsOjUyCittc2dpZCAiVGhpcyBEZXRhY2hlZCBDaGVja291dCIKK21zZ3N0ciAiTG9zZ2Vsw7ZzdGUgQXJiZWl0c2tvcGllLVZlcnNpb24iCisKKyM6IGxpYi9jaG9vc2VfcmV2LnRjbDo2MAorbXNnaWQgIlJldmlzaW9uIEV4cHJlc3Npb246IgorbXNnc3RyICJWZXJzaW9uIFJlZ2V4LUF1c2RydWNrOiIKKworIzogbGliL2Nob29zZV9yZXYudGNsOjcyCittc2dpZCAiTG9jYWwgQnJhbmNoIgorbXNnc3RyICJMb2thbGVyIEJyYW5jaCIKKworIzogbGliL2Nob29zZV9yZXYudGNsOjc3Cittc2dpZCAiVHJhY2tpbmcgQnJhbmNoIgorbXNnc3RyICJUcmFja2luZ2JyYW5jaCIKKworIzogbGliL2Nob29zZV9yZXYudGNsOjgyIGxpYi9jaG9vc2VfcmV2LnRjbDo1NDQKK21zZ2lkICJUYWciCittc2dzdHIgIlRhZyIKKworIzogbGliL2Nob29zZV9yZXYudGNsOjMyMQorIywgdGNsLWZvcm1hdAorbXNnaWQgIkludmFsaWQgcmV2aXNpb246ICVzIgorbXNnc3RyICJVbmfDvGx0aWdlIFZlcnNpb246ICVzIgorCisjOiBsaWIvY2hvb3NlX3Jldi50Y2w6MzQyCittc2dpZCAiTm8gcmV2aXNpb24gc2VsZWN0ZWQuIgorbXNnc3RyICJLZWluZSBWZXJzaW9uIGF1c2dld8OkaGx0LiIKKworIzogbGliL2Nob29zZV9yZXYudGNsOjM1MAorbXNnaWQgIlJldmlzaW9uIGV4cHJlc3Npb24gaXMgZW1wdHkuIgorbXNnc3RyICJWZXJzaW9ucy1BdXNkcnVjayBpc3QgbGVlci4iCisKKyM6IGxpYi9jaG9vc2VfcmV2LnRjbDo1MzcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICJBa3R1YWxpc2llcnQiCisKKyM6IGxpYi9jaG9vc2VfcmV2LnRjbDo1NjUKK21zZ2lkICJVUkwiCittc2dzdHIgIlVSTCIKKworIzogbGliL2NvbW1pdC50Y2w6OQorbXNnaWQgIiIKKyJUaGVyZSBpcyBub3RoaW5nIHRvIGFtZW5kLlxuIgorIlxuIgorIllvdSBhcmUgYWJvdXQgdG8gY3JlYXRlIHRoZSBpbml0aWFsIGNvbW1pdC4gIFRoZXJlIGlzIG5vIGNvbW1pdCBiZWZvcmUgdGhpcyAiCisidG8gYW1lbmQuXG4iCittc2dzdHIgIiIKKyJLZWluIENvbW1pdCB6dXIgTmFjaGJlc3NlcnVuZyB2b3JoYW5kZW4uXG4iCisiXG4iCisiU2llIHNpbmQgZGFiZWksIGRlbiBlcnN0ZW4gQ29tbWl0IHp1IGVyc3RlbGxlbi4gRXMgZ2lidCBrZWluZW4gZXhpc3RpZXJlbmRlbiAiCisiQ29tbWl0LCBkZW4gU2llIG5hY2hiZXNzZXJuIGvDtm5udGVuLlxuIgorCisjOiBsaWIvY29tbWl0LnRjbDoxOAorbXNnaWQgIiIKKyJDYW5ub3QgYW1lbmQgd2hpbGUgbWVyZ2luZy5cbiIKKyJcbiIKKyJZb3UgYXJlIGN1cnJlbnRseSBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UgdGhhdCBoYXMgbm90IGJlZW4gZnVsbHkgIgorImNvbXBsZXRlZC4gIFlvdSBjYW5ub3QgYW1lbmQgdGhlIHByaW9yIGNvbW1pdCB1bmxlc3MgeW91IGZpcnN0IGFib3J0IHRoZSAiCisiY3VycmVudCBtZXJnZSBhY3Rpdml0eS5cbiIKK21zZ3N0ciAiIgorIk5hY2hiZXNzZXJ1bmcgYmVpIFp1c2FtbWVuZsO8aHJ1bmcgbmljaHQgbcO2Z2xpY2guXG4iCisiXG4iCisiU2llIGhhYmVuIGRhcyBadXNhbW1lbmbDvGhyZW4gdm9uIENvbW1pdHMgYW5nZWZhbmdlbiwgYWJlciBub2NoIG5pY2h0ICIKKyJiZWVuZGV0LiBTaWUga8O2bm5lbiBrZWluZW4gdm9yaWdlbiBDb21taXQgbmFjaGJlc3Nlcm4sIHNvbGFuZ2UgZWluZSAiCisidW5mZXJ0aWdlIFp1c2FtbWVuZsO8aHJ1bmcgZXhpc3RpZXJ0LiBEYXp1IG3DvHNzZW4gU2llIGRpZSBadXNhbW1lbmbDvGhydW5nICIKKyJiZWVuZGVuIG9kZXIgYWJicmVjaGVuLlxuIgorCisjOiBsaWIvY29tbWl0LnRjbDo1NgorbXNnaWQgIkVycm9yIGxvYWRpbmcgY29tbWl0IGRhdGEgZm9yIGFtZW5kOiIKK21zZ3N0ciAiRmVobGVyIGJlaW0gTGFkZW4gZGVyIENvbW1pdGRhdGVuIGbDvHIgTmFjaGJlc3Nlcm46IgorCisjOiBsaWIvY29tbWl0LnRjbDo4MworbXNnaWQgIlVuYWJsZSB0byBvYnRhaW4geW91ciBpZGVudGl0eToiCittc2dzdHIgIkJlbnV0emVybmFtZSBrb25udGUgbmljaHQgYmVzdGltbXQgd2VyZGVuOiIKKworIzogbGliL2NvbW1pdC50Y2w6ODgKK21zZ2lkICJJbnZhbGlkIEdJVF9DT01NSVRURVJfSURFTlQ6IgorbXNnc3RyICJVbmfDvGx0aWdlciBXZXJ0IHZvbiBHSVRfQ09NTUlUVEVSX0lOREVOVDoiCisKKyM6IGxpYi9jb21taXQudGNsOjEzOAorIywgdGNsLWZvcm1hdAorbXNnaWQgIndhcm5pbmc6IFRjbCBkb2VzIG5vdCBzdXBwb3J0IGVuY29kaW5nICclcycuIgorbXNnc3RyICJXYXJuaW5nOiBUY2wvVGsgdW50ZXJzdMO8dHp0IGRpZSBaZWljaGVuY29kaWVydW5nIMK7JXPCqyBuaWNodC4iCisKKyM6IGxpYi9jb21taXQudGNsOjE1OAorbXNnaWQgIiIKKyJMYXN0IHNjYW5uZWQgc3RhdGUgZG9lcyBub3QgbWF0Y2ggcmVwb3NpdG9yeSBzdGF0ZS5cbiIKKyJcbiIKKyJBbm90aGVyIEdpdCBwcm9ncmFtIGhhcyBtb2RpZmllZCB0aGlzIHJlcG9zaXRvcnkgc2luY2UgdGhlIGxhc3Qgc2Nhbi4gIEEgIgorInJlc2NhbiBtdXN0IGJlIHBlcmZvcm1lZCBiZWZvcmUgYW5vdGhlciBjb21taXQgY2FuIGJlIGNyZWF0ZWQuXG4iCisiXG4iCisiVGhlIHJlc2NhbiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc3RhcnRlZCBub3cuXG4iCittc2dzdHIgIiIKKyJEZXIgbGV0enRlIGdlbGFkZW5lIFN0YXR1cyBzdGltbXQgbmljaHQgbWVociBtaXQgZGVtIFJlcG9zaXRvcnkgw7xiZXJlaW4uXG4iCisiXG4iCisiRWluIGFuZGVyZXMgR2l0LVByb2dyYW1tIGhhdCBkYXMgUmVwb3NpdG9yeSBzZWl0IGRlbSBsZXR6dGVuIExhZGVuICIKKyJnZcOkbmRlcnQuICBWb3IgZGVtIG7DpGNoc3RlbiBDb21taXQgbXVzcyBuZXUgZ2VsYWRlbiB3ZXJkZW4uXG4iCisiXG4iCisiRXMgd2lyZCBnbGVpY2ggbmV1IGdlbGFkZW4uXG4iCisKKyM6IGxpYi9jb21taXQudGNsOjE4MgogIywgdGNsLWZvcm1hdAogbXNnaWQgIiIKLSJDb3VsZCBub3QgYWRkIHRvb2w6XG4iCi0iJXMiCi1tc2dzdHIgIiIKLSJXZXJremV1ZyBrb25udGUgbmljaHQgaGluenVnZWbDvGd0IHdlcmRlbjpcbiIKKyJVbm1lcmdlZCBmaWxlcyBjYW5ub3QgYmUgY29tbWl0dGVkLlxuIgogIlxuIgorIkZpbGUgJXMgaGFzIG1lcmdlIGNvbmZsaWN0cy4gIFlvdSBtdXN0IHJlc29sdmUgdGhlbSBhbmQgc3RhZ2UgdGhlIGZpbGUgIgorImJlZm9yZSBjb21taXR0aW5nLlxuIgorbXNnc3RyICIiCisiTmljaHQgenVzYW1tZW5nZWbDvGhydGUgRGF0ZWllbiBrw7ZubmVuIG5pY2h0IGNvbW1pdHRldCB3ZXJkZW4uXG4iCisiXG4iCisiRGllIERhdGVpIMK7JXPCqyBoYXQgbm9jaCBuaWNodCBhdWZnZWzDtnN0ZSBadXNhbW1lbmbDvGhydW5ncy1Lb25mbGlrdGUuIFNpZSAiCisibcO8c3NlbiBkaWVzZSBLb25mbGlrdGUgYXVmbMO2c2VuIHVuZCBkaWUgRGF0ZWllbiBpbiBkaWUgQmVyZWl0c3RlbGx1bmcgIgorImhpbnp1ZsO8Z2VuLCBiZXZvciBTaWUgY29tbWl0dGVuIGvDtm5uZW4uXG4iCisKKyM6IGxpYi9jb21taXQudGNsOjE5MAorIywgdGNsLWZvcm1hdAorbXNnaWQgIiIKKyJVbmtub3duIGZpbGUgc3RhdGUgJXMgZGV0ZWN0ZWQuXG4iCisiXG4iCisiRmlsZSAlcyBjYW5ub3QgYmUgY29tbWl0dGVkIGJ5IHRoaXMgcHJvZ3JhbS5cbiIKK21zZ3N0ciAiIgorIlVuYmVrYW5udGVyIERhdGVpenVzdGFuZCDCuyVzwqsuXG4iCisiXG4iCisiRGF0ZWkgwrslc8KrIGthbm4gbmljaHQgY29tbWl0dGV0IHdlcmRlbi5cbiIKKworIzogbGliL2NvbW1pdC50Y2w6MTk4Cittc2dpZCAiIgorIk5vIGNoYW5nZXMgdG8gY29tbWl0LlxuIgorIlxuIgorIllvdSBtdXN0IHN0YWdlIGF0IGxlYXN0IDEgZmlsZSBiZWZvcmUgeW91IGNhbiBjb21taXQuXG4iCittc2dzdHIgIiIKKyJLZWluZSDDhG5kZXJ1bmdlbiB2b3JoYW5kZW4sIGRpZSBjb21taXR0ZXQgd2VyZGVuIGvDtm5udGVuLlxuIgorIlxuIgorIlNpZSBtw7xzc2VuIG1pbmRlc3RlbnMgZWluZSBEYXRlaSBiZXJlaXRzdGVsbGVuLCBiZXZvciBTaWUgY29tbWl0dGVuIGvDtm5uZW4uXG4iCisKKyM6IGxpYi9jb21taXQudGNsOjIxMworbXNnaWQgIiIKKyJQbGVhc2Ugc3VwcGx5IGEgY29tbWl0IG1lc3NhZ2UuXG4iCisiXG4iCisiQSBnb29kIGNvbW1pdCBtZXNzYWdlIGhhcyB0aGUgZm9sbG93aW5nIGZvcm1hdDpcbiIKKyJcbiIKKyItIEZpcnN0IGxpbmU6IERlc2NyaWJlIGluIG9uZSBzZW50ZW5jZSB3aGF0IHlvdSBkaWQuXG4iCisiLSBTZWNvbmQgbGluZTogQmxhbmtcbiIKKyItIFJlbWFpbmluZyBsaW5lczogRGVzY3JpYmUgd2h5IHRoaXMgY2hhbmdlIGlzIGdvb2QuXG4iCittc2dzdHIgIiIKKyJCaXR0ZSBnZWJlbiBTaWUgZWluZSBWZXJzaW9uc2Jlc2NocmVpYnVuZyBlaW4uXG4iCisiXG4iCisiRWluZSBndXRlIFZlcnNpb25zYmVzY2hyZWlidW5nIGVudGjDpGx0IGZvbGdlbmRlIEFic2Nobml0dGU6XG4iCisiXG4iCisiLSBFcnN0ZSBaZWlsZTogRWluZSBadXNhbW1lbmZhc3N1bmcsIHdhcyBtYW4gZ2VtYWNodCBoYXQuXG4iCisiXG4iCisiLSBad2VpdGUgWmVpbGU6IExlZXJ6ZWlsZVxuIgorIlxuIgorIi0gUmVzdDogRWluZSBhdXNmw7xocmxpY2hlIEJlc2NocmVpYnVuZywgd2FydW0gZGllc2Ugw4RuZGVydW5nIGhpbGZyZWljaCBpc3QuXG4iCisKKyM6IGxpYi9jb21taXQudGNsOjI0NAorbXNnaWQgIkNhbGxpbmcgcHJlLWNvbW1pdCBob29rLi4uIgorbXNnc3RyICJBdWZydWZlbiBkZXMgwrtwcmUtY29tbWl0IGhvb2vCqy4uLiIKKworIzogbGliL2NvbW1pdC50Y2w6MjU5Cittc2dpZCAiQ29tbWl0IGRlY2xpbmVkIGJ5IHByZS1jb21taXQgaG9vay4iCittc2dzdHIgIkNvbW1pdHRlbiBhYmdlbGVobnQgZHVyY2ggwrtwcmUtY29tbWl0IGhvb2vCqy4iCisKKyM6IGxpYi9jb21taXQudGNsOjI3OAorbXNnaWQgIiIKKyJZb3UgYXJlIGFib3V0IHRvIGNvbW1pdCBvbiBhIGRldGFjaGVkIGhlYWQuIFRoaXMgaXMgYSBwb3RlbnRpYWxseSBkYW5nZXJvdXMgIgorInRoaW5nIHRvIGRvIGJlY2F1c2UgaWYgeW91IHN3aXRjaCB0byBhbm90aGVyIGJyYW5jaCB5b3Ugd2lsbCBsb3NlIHlvdXIgIgorImNoYW5nZXMgYW5kIGl0IGNhbiBiZSBkaWZmaWN1bHQgdG8gcmV0cmlldmUgdGhlbSBsYXRlciBmcm9tIHRoZSByZWZsb2cuIFlvdSAiCisic2hvdWxkIHByb2JhYmx5IGNhbmNlbCB0aGlzIGNvbW1pdCBhbmQgY3JlYXRlIGEgbmV3IGJyYW5jaCB0byBjb250aW51ZS5cbiIKKyIgXG4iCisiIERvIHlvdSByZWFsbHkgd2FudCB0byBwcm9jZWVkIHdpdGggeW91ciBDb21taXQ/IgorbXNnc3RyICIiCisiU2llIHNpbmQgZGFiZWksIGVpbmVuIENvbW1pdCBhdWYgbG9zZ2Vsw7ZzdGUgQnJhbmNoc3BpdHplICjCu2NvbW1pdCB0byAiCisiZGV0YWNoZWQgaGVhZMKrKSB6dSBlcnN0ZWxsZW4uIERhcyBpc3Qgcmlza2FudCwgZGVubiB3ZW5uIFNpZSB6dSBlaW5lbSAiCisiYW5kZXJlbiBCcmFuY2ggd2VjaHNlbG4sIHfDvHJkZW4gU2llIGRpZXNlIMOEbmRlcnVuZ2VuIHZlcmxpZXJlbiB1bmQgZXMgaXN0ICIKKyJuYWNodHLDpGdsaWNoIHNjaHdpZXJpZywgZGllc2UgYXVzIGRlbSBDb21taXQtTG9nICjCu3JlZmxvZ8KrKSB3aWVkZXJ6dWZpbmRlbi4gIgorIkVzIHdpcmQgZW1wZm9obGVuLCBkaWVzZW4gQ29tbWl0IGFienVicmVjaGVuIHVuZCB6dW7DpGNoc3QgZWluZW4gbmV1ZW4gQnJhbmNoICIKKyJ6dSBlcnN0ZWxsZW4uXG4iCisiXG4iCisiIFdvbGxlbiBTaWUgZGVuIENvbW1pdCB0cm90emRlbSBpbiBkaWVzZXIgRm9ybSBlcnN0ZWxsZW4/IgorCisjOiBsaWIvY29tbWl0LnRjbDoyOTkKK21zZ2lkICJDYWxsaW5nIGNvbW1pdC1tc2cgaG9vay4uLiIKK21zZ3N0ciAiQXVmcnVmZW4gZGVzIMK7Y29tbWl0LW1zZyBob29rwqsuLi4iCisKKyM6IGxpYi9jb21taXQudGNsOjMxNAorbXNnaWQgIkNvbW1pdCBkZWNsaW5lZCBieSBjb21taXQtbXNnIGhvb2suIgorbXNnc3RyICJDb21taXR0ZW4gYWJnZWxlaG50IGR1cmNoIMK7Y29tbWl0LW1zZyBob29rwqsuIgorCisjOiBsaWIvY29tbWl0LnRjbDozMjcKK21zZ2lkICJDb21taXR0aW5nIGNoYW5nZXMuLi4iCittc2dzdHIgIsOEbmRlcnVuZ2VuIGNvbW1pdHRlbi4uLiIKKworIzogbGliL2NvbW1pdC50Y2w6MzQ0Cittc2dpZCAid3JpdGUtdHJlZSBmYWlsZWQ6IgorbXNnc3RyICJ3cml0ZS10cmVlIGZlaGxnZXNjaGxhZ2VuOiIKKworIzogbGliL2NvbW1pdC50Y2w6MzQ1IGxpYi9jb21taXQudGNsOjM5NSBsaWIvY29tbWl0LnRjbDo0MjIKK21zZ2lkICJDb21taXQgZmFpbGVkLiIKK21zZ3N0ciAiQ29tbWl0dGVuIGZlaGxnZXNjaGxhZ2VuLiIKKworIzogbGliL2NvbW1pdC50Y2w6MzYyCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiQ29tbWl0ICVzIGFwcGVhcnMgdG8gYmUgY29ycnVwdCIKK21zZ3N0ciAiVmVyc2lvbiDCuyVzwqsgc2NoZWludCBiZXNjaMOkZGlndCB6dSBzZWluIgorCisjOiBsaWIvY29tbWl0LnRjbDozNjcKK21zZ2lkICIiCisiTm8gY2hhbmdlcyB0byBjb21taXQuXG4iCisiXG4iCisiTm8gZmlsZXMgd2VyZSBtb2RpZmllZCBieSB0aGlzIGNvbW1pdCBhbmQgaXQgd2FzIG5vdCBhIG1lcmdlIGNvbW1pdC5cbiIKKyJcbiIKKyJBIHJlc2NhbiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc3RhcnRlZCBub3cuXG4iCittc2dzdHIgIiIKKyJLZWluZSDDhG5kZXJ1bmdlbiB6dW0gY29tbWl0dGVuLlxuIgorIlxuIgorIkVzIGdpYnQga2VpbmUgZ2XDpG5kZXJ0ZSBEYXRlaSBpbiBkaWVzZW0gQ29tbWl0IHVuZCBlcyB3dXJkZSBhdWNoIG5pY2h0cyAiCisienVzYW1tZW5nZWbDvGhydC5cbiIKKyJcbiIKKyJEYXMgQXJiZWl0c3ZlcnplaWNobmlzIHdpcmQgZGFoZXIgamV0enQgbmV1IGdlbGFkZW4uXG4iCisKKyM6IGxpYi9jb21taXQudGNsOjM3NAorbXNnaWQgIk5vIGNoYW5nZXMgdG8gY29tbWl0LiIKK21zZ3N0ciAiS2VpbmUgw4RuZGVydW5nZW4sIGRpZSBjb21taXR0ZXQgd2VyZGVuIGvDtm5uZW4uIgorCisjOiBsaWIvY29tbWl0LnRjbDozOTQKK21zZ2lkICJjb21taXQtdHJlZSBmYWlsZWQ6IgorbXNnc3RyICJjb21taXQtdHJlZSBmZWhsZ2VzY2hsYWdlbjoiCisKKyM6IGxpYi9jb21taXQudGNsOjQyMQorbXNnaWQgInVwZGF0ZS1yZWYgZmFpbGVkOiIKK21zZ3N0ciAidXBkYXRlLXJlZiBmZWhsZ2VzY2hsYWdlbjoiCisKKyM6IGxpYi9jb21taXQudGNsOjUxNAorIywgdGNsLWZvcm1hdAorbXNnaWQgIkNyZWF0ZWQgY29tbWl0ICVzOiAlcyIKK21zZ3N0ciAiQ29tbWl0ICVzIGVyc3RlbGx0OiAlcyIKKworIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjE2CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiJXMgKCVzKTogRGVsZXRlIEJyYW5jaCIKK21zZ3N0ciAiJXMgKCVzKTogQnJhbmNoIGzDtnNjaGVuIgorCisjOiBsaWIvYnJhbmNoX2RlbGV0ZS50Y2w6MjEKK21zZ2lkICJEZWxldGUgTG9jYWwgQnJhbmNoIgorbXNnc3RyICJMb2thbGVuIEJyYW5jaCBsw7ZzY2hlbiIKKworIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjM5Cittc2dpZCAiTG9jYWwgQnJhbmNoZXMiCittc2dzdHIgIkxva2FsZSBCcmFuY2hlcyIKKworIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjUxCittc2dpZCAiRGVsZXRlIE9ubHkgSWYgTWVyZ2VkIEludG8iCittc2dzdHIgIk51ciBsw7ZzY2hlbiwgd2VubiB6dXNhbW1lbmdlZsO8aHJ0IG5hY2giCisKKyM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDoxMDMKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJUaGUgZm9sbG93aW5nIGJyYW5jaGVzIGFyZSBub3QgY29tcGxldGVseSBtZXJnZWQgaW50byAlczoiCittc2dzdHIgIkZvbGdlbmRlIEJyYW5jaGVzIHNpbmQgbm9jaCBuaWNodCBtaXQgwrslc8KrIHp1c2FtbWVuZ2Vmw7xocnQ6IgorCisjOiBsaWIvYnJhbmNoX2RlbGV0ZS50Y2w6MTMxCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiIC0gJXM6IgorbXNnc3RyICIgLSAlczoiCisKKyM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDoxNDEKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIiCisiRmFpbGVkIHRvIGRlbGV0ZSBicmFuY2hlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIkZlaGxlciBiZWltIEzDtnNjaGVuIGRlciBCcmFuY2hlczpcbiIKICIlcyIKIAotIzogbGliL3Rvb2xzX2RsZy50Y2w6MTkwCi1tc2dpZCAiUmVtb3ZlIFRvb2wiCi1tc2dzdHIgIldlcmt6ZXVnIGVudGZlcm5lbiIKLQotIzogbGliL3Rvb2xzX2RsZy50Y2w6MTk2Ci1tc2dpZCAiUmVtb3ZlIFRvb2wgQ29tbWFuZHMiCi1tc2dzdHIgIldlcmt6ZXVna29tbWFuZG9zIGVudGZlcm5lbiIKLQotIzogbGliL3Rvb2xzX2RsZy50Y2w6MjAwCi1tc2dpZCAiUmVtb3ZlIgotbXNnc3RyICJFbnRmZXJuZW4iCi0KLSM6IGxpYi90b29sc19kbGcudGNsOjIzNgotbXNnaWQgIihCbHVlIGRlbm90ZXMgcmVwb3NpdG9yeS1sb2NhbCB0b29scykiCi1tc2dzdHIgIihXZXJremV1Z2UgZsO8ciBsb2thbGVzIEFyY2hpdiB3ZXJkZW4gaW4gQmxhdSBhbmdlemVpZ3QpIgotCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDoyOTcKKyM6IGxpYi9kYXRlLnRjbDoyNQogIywgdGNsLWZvcm1hdAotbXNnaWQgIlJ1biBDb21tYW5kOiAlcyIKLW1zZ3N0ciAiS29tbWFuZG8gYXVmcnVmZW46ICVzIgorbXNnaWQgIkludmFsaWQgZGF0ZSBmcm9tIEdpdDogJXMiCittc2dzdHIgIlVuZ8O8bHRpZ2VzIERhdHVtIHZvbiBHaXQ6ICVzIgogCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDozMTEKLW1zZ2lkICJBcmd1bWVudHMiCi1tc2dzdHIgIkFyZ3VtZW50ZSIKKyM6IGxpYi9kYXRhYmFzZS50Y2w6NDIKK21zZ2lkICJOdW1iZXIgb2YgbG9vc2Ugb2JqZWN0cyIKK21zZ3N0ciAiQW56YWhsIHVudmVya27DvHBmdGVyIE9iamVrdGUiCiAKLSM6IGxpYi90b29sc19kbGcudGNsOjM0OAotbXNnaWQgIk9LIgotbXNnc3RyICJPayIKKyM6IGxpYi9kYXRhYmFzZS50Y2w6NDMKK21zZ2lkICJEaXNrIHNwYWNlIHVzZWQgYnkgbG9vc2Ugb2JqZWN0cyIKK21zZ3N0ciAiRmVzdHBsYXR0ZW5wbGF0eiB2b24gdW52ZXJrbsO8cGZ0ZW4gT2JqZWt0ZW4iCiAKLSM6IGxpYi90b29scy50Y2w6NzUKKyM6IGxpYi9kYXRhYmFzZS50Y2w6NDQKK21zZ2lkICJOdW1iZXIgb2YgcGFja2VkIG9iamVjdHMiCittc2dzdHIgIkFuemFobCBrb21wcmltaWVydGVyIE9iamVrdGUiCisKKyM6IGxpYi9kYXRhYmFzZS50Y2w6NDUKK21zZ2lkICJOdW1iZXIgb2YgcGFja3MiCittc2dzdHIgIkFuemFobCBLb21wcmltaWVydW5nc2VpbmhlaXRlbiIKKworIzogbGliL2RhdGFiYXNlLnRjbDo0NgorbXNnaWQgIkRpc2sgc3BhY2UgdXNlZCBieSBwYWNrZWQgb2JqZWN0cyIKK21zZ3N0ciAiRmVzdHBsYXR0ZW5wbGF0eiB2b24ga29tcHJpbWllcnRlbiBPYmpla3RlbiIKKworIzogbGliL2RhdGFiYXNlLnRjbDo0NworbXNnaWQgIlBhY2tlZCBvYmplY3RzIHdhaXRpbmcgZm9yIHBydW5pbmciCittc2dzdHIgIktvbXByaW1pZXJ0ZSBPYmpla3RlLCBkaWUgenVtIEF1ZnLDpHVtZW4gdm9yZ2VzZWhlbiBzaW5kIgorCisjOiBsaWIvZGF0YWJhc2UudGNsOjQ4Cittc2dpZCAiR2FyYmFnZSBmaWxlcyIKK21zZ3N0ciAiRGF0ZWllbiBpbSBNw7xsbGVpbWVyIgorCisjOiBsaWIvZGF0YWJhc2UudGNsOjY2CiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiUnVubmluZyAlcyByZXF1aXJlcyBhIHNlbGVjdGVkIGZpbGUuIgotbXNnc3RyICJVbSDCuyVzwqsgenUgc3RhcnRlbiwgbXVzcyBlaW5lIERhdGVpIGF1c2dld8OkaGx0IHNlaW4uIgorbXNnaWQgIiVzICglcyk6IERhdGFiYXNlIFN0YXRpc3RpY3MiCittc2dzdHIgIiVzICglcyk6IERhdGVuYmFua3N0YXRpc3RpayIKIAotIzogbGliL3Rvb2xzLnRjbDo5MAorIzogbGliL2RhdGFiYXNlLnRjbDo3MgorbXNnaWQgIkNvbXByZXNzaW5nIHRoZSBvYmplY3QgZGF0YWJhc2UiCittc2dzdHIgIk9iamVrdGRhdGVuYmFuayBrb21wcmltaWVyZW4iCisKKyM6IGxpYi9kYXRhYmFzZS50Y2w6ODMKK21zZ2lkICJWZXJpZnlpbmcgdGhlIG9iamVjdCBkYXRhYmFzZSB3aXRoIGZzY2stb2JqZWN0cyIKK21zZ3N0ciAiRGllIE9iamVrdGRhdGVuYmFuayBkdXJjaCDCu2ZzY2stb2JqZWN0c8KrIMO8YmVycHLDvGZlbiBsYXNzZW4iCisKKyM6IGxpYi9kYXRhYmFzZS50Y2w6MTA3CiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJ1biAlcz8iCi1tc2dzdHIgIldvbGxlbiBTaWUgJXMgd2lya2xpY2ggc3RhcnRlbj8iCi0KLSM6IGxpYi90b29scy50Y2w6MTEwCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiVG9vbDogJXMiCi1tc2dzdHIgIldlcmt6ZXVnOiAlcyIKLQotIzogbGliL3Rvb2xzLnRjbDoxMTEKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJSdW5uaW5nOiAlcyIKLW1zZ3N0ciAiU3RhcnRlbjogJXMiCi0KLSM6IGxpYi90b29scy50Y2w6MTQ5Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiVG9vbCBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5OiAlcyIKLW1zZ3N0ciAiV2Vya3pldWcgZXJmb2xncmVpY2ggYWJnZXNjaGxvc3NlbjogJXMiCi0KLSM6IGxpYi90b29scy50Y2w6MTUxCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiVG9vbCBmYWlsZWQ6ICVzIgotbXNnc3RyICJXZXJremV1ZyBmZWhsZ2VzY2hsYWdlbjogJXMiCi0KLSM6IGxpYi90cmFuc3BvcnQudGNsOjcKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJGZXRjaGluZyBuZXcgY2hhbmdlcyBmcm9tICVzIgotbXNnc3RyICJOZXVlIMOEbmRlcnVuZ2VuIHZvbiDCuyVzwqsgaG9sZW4iCi0KLSM6IGxpYi90cmFuc3BvcnQudGNsOjE4Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAicmVtb3RlIHBydW5lICVzIgotbXNnc3RyICJBdWZyw6R1bWVuIHZvbiDCuyVzwqsiCi0KLSM6IGxpYi90cmFuc3BvcnQudGNsOjE5Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiUHJ1bmluZyB0cmFja2luZyBicmFuY2hlcyBkZWxldGVkIGZyb20gJXMiCi1tc2dzdHIgIsOcYmVybmFobWV6d2VpZ2UgYXVmcsOkdW1lbiB1bmQgZW50ZmVybmVuLCBkaWUgaW4gwrslc8KrIGdlbMO2c2NodCB3dXJkZW4iCi0KLSM6IGxpYi90cmFuc3BvcnQudGNsOjI2Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiUHVzaGluZyBjaGFuZ2VzIHRvICVzIgotbXNnc3RyICLDhG5kZXJ1bmdlbiBuYWNoIMK7JXPCqyB2ZXJzZW5kZW4iCi0KLSM6IGxpYi90cmFuc3BvcnQudGNsOjY0Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiTWlycm9yaW5nIHRvICVzIgotbXNnc3RyICJTcGllZ2VsbiBuYWNoICVzIgotCi0jOiBsaWIvdHJhbnNwb3J0LnRjbDo4MgotIywgdGNsLWZvcm1hdAotbXNnaWQgIlB1c2hpbmcgJXMgJXMgdG8gJXMiCi1tc2dzdHIgIiVzICVzIG5hY2ggJXMgdmVyc2VuZGVuIgotCi0jOiBsaWIvdHJhbnNwb3J0LnRjbDoxMDAKLW1zZ2lkICJQdXNoIEJyYW5jaGVzIgotbXNnc3RyICJad2VpZ2UgdmVyc2VuZGVuIgotCi0jOiBsaWIvdHJhbnNwb3J0LnRjbDoxMTQKLW1zZ2lkICJTb3VyY2UgQnJhbmNoZXMiCi1tc2dzdHIgIkxva2FsZSBad2VpZ2UiCi0KLSM6IGxpYi90cmFuc3BvcnQudGNsOjEzMQotbXNnaWQgIkRlc3RpbmF0aW9uIFJlcG9zaXRvcnkiCi1tc2dzdHIgIlppZWwtUHJvamVrdGFyY2hpdiIKLQotIzogbGliL3RyYW5zcG9ydC50Y2w6MTY5Ci1tc2dpZCAiVHJhbnNmZXIgT3B0aW9ucyIKLW1zZ3N0ciAiTmV0endlcmstRWluc3RlbGx1bmdlbiIKLQotIzogbGliL3RyYW5zcG9ydC50Y2w6MTcxCi1tc2dpZCAiRm9yY2Ugb3ZlcndyaXRlIGV4aXN0aW5nIGJyYW5jaCAobWF5IGRpc2NhcmQgY2hhbmdlcykiCittc2dpZCAiIgorIlRoaXMgcmVwb3NpdG9yeSBjdXJyZW50bHkgaGFzIGFwcHJveGltYXRlbHkgJWkgbG9vc2Ugb2JqZWN0cy5cbiIKKyJcbiIKKyJUbyBtYWludGFpbiBvcHRpbWFsIHBlcmZvcm1hbmNlIGl0IGlzIHN0cm9uZ2x5IHJlY29tbWVuZGVkIHRoYXQgeW91IGNvbXByZXNzICIKKyJ0aGUgZGF0YWJhc2UuXG4iCisiXG4iCisiQ29tcHJlc3MgdGhlIGRhdGFiYXNlIG5vdz8iCiBtc2dzdHIgIiIKLSLDnGJlcnNjaHJlaWJlbiB2b24gZXhpc3RpZXJlbmRlbiBad2VpZ2VuIGVyendpbmdlbiAoa8O2bm50ZSDDhG5kZXJ1bmdlbiBsw7ZzY2hlbikiCisiRGllc2VzIFJlcG9zaXRvcnkgZW50aMOkbHQgdW5nZWbDpGhyICVpIG5pY2h0IHZlcmtuw7xwZnRlIE9iamVrdGUuXG4iCisiXG4iCisiRsO8ciBlaW5lIG9wdGltYWxlIFBlcmZvcm1hbmNlIHdpcmQgZW1wZm9obGVuLCBkaWUgRGF0ZW5iYW5rIGRlcyBSZXBvc2l0b3J5ICIKKyJ6dSBrb21wcmltaWVyZW4uXG4iCisiXG4iCisiU29sbCBkaWUgRGF0ZW5iYW5rIGpldHp0IGtvbXByaW1pZXJ0IHdlcmRlbj8iCiAKLSM6IGxpYi90cmFuc3BvcnQudGNsOjE3NQotbXNnaWQgIlVzZSB0aGluIHBhY2sgKGZvciBzbG93IG5ldHdvcmsgY29ubmVjdGlvbnMpIgotbXNnc3RyICJLb21wYWt0ZXMgRGF0ZW5mb3JtYXQgYmVudXR6ZW4gKGbDvHIgbGFuZ3NhbWUgTmV0enZlcmJpbmR1bmdlbikiCisjOiBsaWIvZXJyb3IudGNsOjIwCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIgorbXNnc3RyICIlczogRmVobGVyIgogCi0jOiBsaWIvdHJhbnNwb3J0LnRjbDoxNzkKLW1zZ2lkICJJbmNsdWRlIHRhZ3MiCi1tc2dzdHIgIk1pdCBNYXJraWVydW5nZW4gw7xiZXJ0cmFnZW4iCisjOiBsaWIvZXJyb3IudGNsOjM2CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmciCittc2dzdHIgIiVzOiBXYXJudW5nIgorCisjOiBsaWIvZXJyb3IudGNsOjgwCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiJXMgaG9vayBmYWlsZWQ6IgorbXNnc3RyICIlcyBob29rIGZlaGxnZXNjaGxhZ2VuOiIKKworIzogbGliL2Vycm9yLnRjbDo5NgorbXNnaWQgIllvdSBtdXN0IGNvcnJlY3QgdGhlIGFib3ZlIGVycm9ycyBiZWZvcmUgY29tbWl0dGluZy4iCittc2dzdHIgIiIKKyJTaWUgbcO8c3NlbiBkaWUgb2JpZ2VuIEZlaGxlciB6dWVyc3QgYmVoZWJlbiwgYmV2b3IgU2llIGNvbW1pdHRlbiBrw7ZubmVuLiIKKworIzogbGliL2Vycm9yLnRjbDoxMTYKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIlcyAoJXMpOiBlcnJvciIKK21zZ3N0ciAiJXMgKCVzKTogRmVobGVyIgorCisjOiBsaWIvbWVyZ2UudGNsOjEzCittc2dpZCAiIgorIkNhbm5vdCBtZXJnZSB3aGlsZSBhbWVuZGluZy5cbiIKKyJcbiIKKyJZb3UgbXVzdCBmaW5pc2ggYW1lbmRpbmcgdGhpcyBjb21taXQgYmVmb3JlIHN0YXJ0aW5nIGFueSB0eXBlIG9mIG1lcmdlLlxuIgorbXNnc3RyICIiCisiWnVzYW1tZW5mw7xocmVuIGthbm4gbmljaHQgZ2xlaWNoemVpdGlnIG1pdCBOYWNoYmVzc2VybiBkdXJjaGdlZsO8aHJ0IHdlcmRlbi5cbiIKKyJcbiIKKyJTaWUgbcO8c3NlbiB6dWVyc3QgZGVuIE5hY2hiZXNzZXJ1bmdzLUNvbW1pdCBhYnNjaGxpZcOfZW4sIGJldm9yIFNpZSAiCisienVzYW1tZW5mw7xocmVuIGvDtm5uZW4uXG4iCisKKyM6IGxpYi9tZXJnZS50Y2w6MjcKK21zZ2lkICIiCisiTGFzdCBzY2FubmVkIHN0YXRlIGRvZXMgbm90IG1hdGNoIHJlcG9zaXRvcnkgc3RhdGUuXG4iCisiXG4iCisiQW5vdGhlciBHaXQgcHJvZ3JhbSBoYXMgbW9kaWZpZWQgdGhpcyByZXBvc2l0b3J5IHNpbmNlIHRoZSBsYXN0IHNjYW4uICBBICIKKyJyZXNjYW4gbXVzdCBiZSBwZXJmb3JtZWQgYmVmb3JlIGEgbWVyZ2UgY2FuIGJlIHBlcmZvcm1lZC5cbiIKKyJcbiIKKyJUaGUgcmVzY2FuIHdpbGwgYmUgYXV0b21hdGljYWxseSBzdGFydGVkIG5vdy5cbiIKK21zZ3N0ciAiIgorIkRlciBsZXR6dGUgZ2VsYWRlbmUgU3RhdHVzIHN0aW1tdCBuaWNodCBtZWhyIG1pdCBkZW0gUmVwb3NpdG9yeSDDvGJlcmVpbi5cbiIKKyJcbiIKKyJFaW4gYW5kZXJlcyBHaXQtUHJvZ3JhbW0gaGF0IGRhcyBSZXBvc2l0b3J5IHNlaXQgZGVtIGxldHp0ZW4gTGFkZW4gIgorImdlw6RuZGVydC4gIFZvciBlaW5lbSBadXNhbW1lbmbDvGhyZW4gbXVzcyBuZXUgZ2VsYWRlbiB3ZXJkZW4uXG4iCisiXG4iCisiRXMgd2lyZCBnbGVpY2ggbmV1IGdlbGFkZW4uXG4iCisKKyM6IGxpYi9tZXJnZS50Y2w6NDUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIiCisiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgY29uZmxpY3RlZCBtZXJnZS5cbiIKKyJcbiIKKyJGaWxlICVzIGhhcyBtZXJnZSBjb25mbGljdHMuXG4iCisiXG4iCisiWW91IG11c3QgcmVzb2x2ZSB0aGVtLCBzdGFnZSB0aGUgZmlsZSwgYW5kIGNvbW1pdCB0byBjb21wbGV0ZSB0aGUgY3VycmVudCAiCisibWVyZ2UuICBPbmx5IHRoZW4gY2FuIHlvdSBiZWdpbiBhbm90aGVyIG1lcmdlLlxuIgorbXNnc3RyICIiCisiWnVzYW1tZW5mw7xocnVuZyBtaXQgS29uZmxpa3Rlbi5cbiIKKyJcbiIKKyJEaWUgRGF0ZWkgwrslc8KrIGVudGjDpGx0IEtvbmZsaWt0ZSBiZWltIFp1c2FtbWVuZsO8aHJlbi5cbiIKKyJcbiIKKyJTaWUgbcO8c3NlbiBkaWVzZSBLb25mbGlrdGUgcGVyIEhhbmQgYXVmbMO2c2VuLiBBbnNjaGxpZcOfZW5kIG3DvHNzZW4gU2llIGRpZSAiCisiRGF0ZWkgd2llZGVyIGJlcmVpdHN0ZWxsZW4gdW5kIGNvbW1pdHRlbiwgdW0gZGllIFp1c2FtbWVuZsO8aHJ1bmcgIgorImFienVzY2hsaWXDn2VuLiBFcnN0IGRhbmFjaCBrYW5uIGVpbmUgbmV1ZSBadXNhbW1lbmbDvGhydW5nIGJlZ29ubmVuIHdlcmRlbi5cbiIKKworIzogbGliL21lcmdlLnRjbDo1NQorIywgdGNsLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSBjaGFuZ2UuXG4iCisiXG4iCisiRmlsZSAlcyBpcyBtb2RpZmllZC5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIGNvbXBsZXRlIHRoZSBjdXJyZW50IGNvbW1pdCBiZWZvcmUgc3RhcnRpbmcgYSBtZXJnZS4gIERvaW5nIHNvICIKKyJ3aWxsIGhlbHAgeW91IGFib3J0IGEgZmFpbGVkIG1lcmdlLCBzaG91bGQgdGhlIG5lZWQgYXJpc2UuXG4iCittc2dzdHIgIiIKKyJFcyBsaWVnZW4gw4RuZGVydW5nZW4gdm9yLlxuIgorIlxuIgorIkRpZSBEYXRlaSDCuyVzwqsgd3VyZGUgZ2XDpG5kZXJ0LlxuIgorIlxuIgorIlNpZSBzb2xsdGVuIHp1ZXJzdCBkZW4gYmVyZWl0Z2VzdGVsbHRlbiBDb21taXQgYWJzY2hsaWXDn2VuLCBiZXZvciBTaWUgZWluZSAiCisiWnVzYW1tZW5mw7xocnVuZyBiZWdpbm5lbi4gIE1pdCBkaWVzZXIgUmVpaGVuZm9sZ2Uga8O2bm5lbiBTaWUgbcO2Z2xpY2hlICIKKyJLb25mbGlrdGUgYmVpbSBadXNhbW1lbmbDvGhyZW4gd2VzZW50bGljaCBlaW5mYWNoZXIgYmVoZWJlbiBvZGVyIGFiYnJlY2hlbi5cbiIKKworIzogbGliL21lcmdlLnRjbDoxMDgKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIlcyBvZiAlcyIKK21zZ3N0ciAiJXMgdm9uICVzIgorCisjOiBsaWIvbWVyZ2UudGNsOjEyNgorIywgdGNsLWZvcm1hdAorbXNnaWQgIk1lcmdpbmcgJXMgYW5kICVzLi4uIgorbXNnc3RyICJadXNhbW1lbmbDvGhyZW4gdm9uICVzIHVuZCAlcy4uLiIKKworIzogbGliL21lcmdlLnRjbDoxMzcKK21zZ2lkICJNZXJnZSBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5LiIKK21zZ3N0ciAiWnVzYW1tZW5mw7xocmVuIGVyZm9sZ3JlaWNoIGFiZ2VzY2hsb3NzZW4uIgorCisjOiBsaWIvbWVyZ2UudGNsOjEzOQorbXNnaWQgIk1lcmdlIGZhaWxlZC4gIENvbmZsaWN0IHJlc29sdXRpb24gaXMgcmVxdWlyZWQuIgorbXNnc3RyICJadXNhbW1lbmbDvGhyZW4gZmVobGdlc2NobGFnZW4uIEtvbmZsaWt0YXVmbMO2c3VuZyBpc3Qgbm90d2VuZGlnLiIKKworIzogbGliL21lcmdlLnRjbDoxNTYKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIlcyAoJXMpOiBNZXJnZSIKK21zZ3N0ciAiJXMgKCVzKTogWnVzYW1tZW5mw7xocmVuIgorCisjOiBsaWIvbWVyZ2UudGNsOjE2NAorIywgdGNsLWZvcm1hdAorbXNnaWQgIk1lcmdlIEludG8gJXMiCittc2dzdHIgIlp1c2FtbWVuZsO8aHJlbiBpbiDCuyVzwqsiCisKKyM6IGxpYi9tZXJnZS50Y2w6MTgzCittc2dpZCAiUmV2aXNpb24gVG8gTWVyZ2UiCittc2dzdHIgIlp1c2FtbWVuenVmw7xocmVuZGUgVmVyc2lvbiIKKworIzogbGliL21lcmdlLnRjbDoyMTgKK21zZ2lkICIiCisiQ2Fubm90IGFib3J0IHdoaWxlIGFtZW5kaW5nLlxuIgorIlxuIgorIllvdSBtdXN0IGZpbmlzaCBhbWVuZGluZyB0aGlzIGNvbW1pdC5cbiIKK21zZ3N0ciAiIgorIkFiYnJ1Y2ggZGVyIE5hY2hiZXNzZXJ1bmcgaXN0IG5pY2h0IG3DtmdsaWNoLlxuIgorIlxuIgorIlNpZSBtw7xzc2VuIGRpZSBOYWNoYmVzc2VydW5nIGRpZXNlIENvbW1pdHMgYWJzY2hsaWXDn2VuLlxuIgorCisjOiBsaWIvbWVyZ2UudGNsOjIyOAorbXNnaWQgIiIKKyJBYm9ydCBtZXJnZT9cbiIKKyJcbiIKKyJBYm9ydGluZyB0aGUgY3VycmVudCBtZXJnZSB3aWxsIGNhdXNlICpBTEwqIHVuY29tbWl0dGVkIGNoYW5nZXMgdG8gYmUgbG9zdC5cbiIKKyJcbiIKKyJDb250aW51ZSB3aXRoIGFib3J0aW5nIHRoZSBjdXJyZW50IG1lcmdlPyIKK21zZ3N0ciAiIgorIlp1c2FtbWVuZsO8aHJlbiBhYmJyZWNoZW4/XG4iCisiXG4iCisiV2VubiBTaWUgYWJicmVjaGVuLCBnZWhlbiBhbGxlIG5vY2ggbmljaHQgY29tbWl0dGV0ZW4gw4RuZGVydW5nZW4gdmVybG9yZW4uXG4iCisiXG4iCisiWnVzYW1tZW5mw7xocmVuIGpldHp0IGFiYnJlY2hlbj8iCisKKyM6IGxpYi9tZXJnZS50Y2w6MjM0Cittc2dpZCAiIgorIlJlc2V0IGNoYW5nZXM/XG4iCisiXG4iCisiUmVzZXR0aW5nIHRoZSBjaGFuZ2VzIHdpbGwgY2F1c2UgKkFMTCogdW5jb21taXR0ZWQgY2hhbmdlcyB0byBiZSBsb3N0LlxuIgorIlxuIgorIkNvbnRpbnVlIHdpdGggcmVzZXR0aW5nIHRoZSBjdXJyZW50IGNoYW5nZXM/IgorbXNnc3RyICIiCisiw4RuZGVydW5nZW4gdmVyd2VyZmVuP1xuIgorIlxuIgorIkFsbGUgbm9jaCBuaWNodCBjb21taXR0ZXRlbiDDhG5kZXJ1bmdlbiB3w7xyZGVuIHZlcmxvcmVuIGdlaGVuLlxuIgorIlxuIgorIsOEbmRlcnVuZ2VuIGpldHp0IHZlcndlcmZlbj8iCisKKyM6IGxpYi9tZXJnZS50Y2w6MjQ2Cittc2dpZCAiQWJvcnRpbmciCittc2dzdHIgIkFiYnJ1Y2giCisKKyM6IGxpYi9tZXJnZS50Y2w6MjQ3Cittc2dpZCAiZmlsZXMgcmVzZXQiCittc2dzdHIgIkRhdGVpZW4genVyw7xja2dlc2V0enQiCisKKyM6IGxpYi9tZXJnZS50Y2w6Mjc3Cittc2dpZCAiQWJvcnQgZmFpbGVkLiIKK21zZ3N0ciAiQWJicnVjaCBmZWhsZ2VzY2hsYWdlbi4iCisKKyM6IGxpYi9tZXJnZS50Y2w6Mjc5Cittc2dpZCAiQWJvcnQgY29tcGxldGVkLiAgUmVhZHkuIgorbXNnc3RyICJBYmJydWNoIGR1cmNoZ2Vmw7xocnQuIEJlcmVpdC4iCmRpZmYgLS1naXQgYS9naXQtZ3VpL3BvL2dpdC1ndWkucG90IGIvZ2l0LWd1aS9wby9naXQtZ3VpLnBvdAppbmRleCAwYzk0ZjljLi5iNzllZDRlIDEwMDY0NAotLS0gYS9naXQtZ3VpL3BvL2dpdC1ndWkucG90CisrKyBiL2dpdC1ndWkvcG8vZ2l0LWd1aS5wb3QKQEAgLTgsNDEgKzgsNDIgQEAKIG1zZ3N0ciAiIgogIlByb2plY3QtSWQtVmVyc2lvbjogUEFDS0FHRSBWRVJTSU9OXG4iCiAiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IFxuIgotIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDEwLTAxLTI2IDE1OjQ3LTA4MDBcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAyMC0wMi0wOCAyMjo1NCswMTAwXG4iCiAiUE8tUmV2aXNpb24tRGF0ZTogWUVBUi1NTy1EQSBITzpNSStaT05FXG4iCiAiTGFzdC1UcmFuc2xhdG9yOiBGVUxMIE5BTUUgPEVNQUlMQEFERFJFU1M+XG4iCiAiTGFuZ3VhZ2UtVGVhbTogTEFOR1VBR0UgPExMQGxpLm9yZz5cbiIKKyJMYW5ndWFnZTogXG4iCiAiTUlNRS1WZXJzaW9uOiAxLjBcbiIKICJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9Q0hBUlNFVFxuIgogIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKIAotIzogZ2l0LWd1aS5zaDo0MSBnaXQtZ3VpLnNoOjc5MyBnaXQtZ3VpLnNoOjgwNyBnaXQtZ3VpLnNoOjgyMCBnaXQtZ3VpLnNoOjkwMwotIzogZ2l0LWd1aS5zaDo5MjIKLW1zZ2lkICJnaXQtZ3VpOiBmYXRhbCBlcnJvciIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtZ3VpLnNoOjc0MworIzogZ2l0LWd1aS5zaDo4NDcKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIGZvbnQgc3BlY2lmaWVkIGluICVzOiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjc3OQorIzogZ2l0LWd1aS5zaDo5MDEKIG1zZ2lkICJNYWluIEZvbnQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDo3ODAKKyM6IGdpdC1ndWkuc2g6OTAyCiBtc2dpZCAiRGlmZi9Db25zb2xlIEZvbnQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDo3OTQKKyM6IGdpdC1ndWkuc2g6OTE3IGdpdC1ndWkuc2g6OTMxIGdpdC1ndWkuc2g6OTQ0IGdpdC1ndWkuc2g6MTAzNCBnaXQtZ3VpLnNoOjEwNTMKKyM6IGdpdC1ndWkuc2g6MzIxMgorbXNnaWQgImdpdC1ndWk6IGZhdGFsIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6OTE4CiBtc2dpZCAiQ2Fubm90IGZpbmQgZ2l0IGluIFBBVEguIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6ODIxCisjOiBnaXQtZ3VpLnNoOjk0NQogbXNnaWQgIkNhbm5vdCBwYXJzZSBHaXQgdmVyc2lvbiBzdHJpbmc6IgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6ODM5CisjOiBnaXQtZ3VpLnNoOjk3MAogIywgdGNsLWZvcm1hdAogbXNnaWQgIiIKICJHaXQgdmVyc2lvbiBjYW5ub3QgYmUgZGV0ZXJtaW5lZC5cbiIKQEAgLTU0LDQ3MyArNTUsNTE4IEBACiAiQXNzdW1lICclcycgaXMgdmVyc2lvbiAxLjUuMD9cbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjExMjgKKyM6IGdpdC1ndWkuc2g6MTI2NwogbXNnaWQgIkdpdCBkaXJlY3Rvcnkgbm90IGZvdW5kOiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjExNDYKKyM6IGdpdC1ndWkuc2g6MTMwMQogbXNnaWQgIkNhbm5vdCBtb3ZlIHRvIHRvcCBvZiB3b3JraW5nIGRpcmVjdG9yeToiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoxMTU0CisjOiBnaXQtZ3VpLnNoOjEzMDkKIG1zZ2lkICJDYW5ub3QgdXNlIGJhcmUgcmVwb3NpdG9yeToiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoxMTYyCisjOiBnaXQtZ3VpLnNoOjEzMTcKIG1zZ2lkICJObyB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjEzMzQgbGliL2NoZWNrb3V0X29wLnRjbDozMDYKKyM6IGdpdC1ndWkuc2g6MTQ5MSBsaWIvY2hlY2tvdXRfb3AudGNsOjMwNgogbXNnaWQgIlJlZnJlc2hpbmcgZmlsZSBzdGF0dXMuLi4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoxMzkwCisjOiBnaXQtZ3VpLnNoOjE1NTEKIG1zZ2lkICJTY2FubmluZyBmb3IgbW9kaWZpZWQgZmlsZXMgLi4uIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MTQ1NAorIzogZ2l0LWd1aS5zaDoxNjI5CiBtc2dpZCAiQ2FsbGluZyBwcmVwYXJlLWNvbW1pdC1tc2cgaG9vay4uLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjE0NzEKKyM6IGdpdC1ndWkuc2g6MTY0NgogbXNnaWQgIkNvbW1pdCBkZWNsaW5lZCBieSBwcmVwYXJlLWNvbW1pdC1tc2cgaG9vay4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoxNjI5IGxpYi9icm93c2VyLnRjbDoyNDYKKyM6IGdpdC1ndWkuc2g6MTgwNCBsaWIvYnJvd3Nlci50Y2w6MjUyCiBtc2dpZCAiUmVhZHkuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MTc4NworIzogZ2l0LWd1aS5zaDoxOTY4CiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiRGlzcGxheWluZyBvbmx5ICVzIG9mICVzIGZpbGVzLiIKK21zZ2lkICIiCisiRGlzcGxheSBsaW1pdCAoZ3VpLm1heGZpbGVzZGlzcGxheWVkID0gJXMpIHJlYWNoZWQsIG5vdCBzaG93aW5nIGFsbCAlcyBmaWxlcy4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoxOTEzCisjOiBnaXQtZ3VpLnNoOjIwOTEKIG1zZ2lkICJVbm1vZGlmaWVkIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MTkxNQorIzogZ2l0LWd1aS5zaDoyMDkzCiBtc2dpZCAiTW9kaWZpZWQsIG5vdCBzdGFnZWQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoxOTE2IGdpdC1ndWkuc2g6MTkyNAorIzogZ2l0LWd1aS5zaDoyMDk0IGdpdC1ndWkuc2g6MjEwNgogbXNnaWQgIlN0YWdlZCBmb3IgY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MTkxNyBnaXQtZ3VpLnNoOjE5MjUKKyM6IGdpdC1ndWkuc2g6MjA5NSBnaXQtZ3VpLnNoOjIxMDcKIG1zZ2lkICJQb3J0aW9ucyBzdGFnZWQgZm9yIGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjE5MTggZ2l0LWd1aS5zaDoxOTI2CisjOiBnaXQtZ3VpLnNoOjIwOTYgZ2l0LWd1aS5zaDoyMTA4CiBtc2dpZCAiU3RhZ2VkIGZvciBjb21taXQsIG1pc3NpbmciCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoxOTIwCisjOiBnaXQtZ3VpLnNoOjIwOTgKIG1zZ2lkICJGaWxlIHR5cGUgY2hhbmdlZCwgbm90IHN0YWdlZCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjE5MjEKKyM6IGdpdC1ndWkuc2g6MjA5OSBnaXQtZ3VpLnNoOjIxMDAKK21zZ2lkICJGaWxlIHR5cGUgY2hhbmdlZCwgb2xkIHR5cGUgc3RhZ2VkIGZvciBjb21taXQiCittc2dzdHIgIiIKKworIzogZ2l0LWd1aS5zaDoyMTAxCiBtc2dpZCAiRmlsZSB0eXBlIGNoYW5nZWQsIHN0YWdlZCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjE5MjMKKyM6IGdpdC1ndWkuc2g6MjEwMgorbXNnaWQgIkZpbGUgdHlwZSBjaGFuZ2Ugc3RhZ2VkLCBtb2RpZmljYXRpb24gbm90IHN0YWdlZCIKK21zZ3N0ciAiIgorCisjOiBnaXQtZ3VpLnNoOjIxMDMKK21zZ2lkICJGaWxlIHR5cGUgY2hhbmdlIHN0YWdlZCwgZmlsZSBtaXNzaW5nIgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MjEwNQogbXNnaWQgIlVudHJhY2tlZCwgbm90IHN0YWdlZCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjE5MjgKKyM6IGdpdC1ndWkuc2g6MjExMAogbXNnaWQgIk1pc3NpbmciCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoxOTI5CisjOiBnaXQtZ3VpLnNoOjIxMTEKIG1zZ2lkICJTdGFnZWQgZm9yIHJlbW92YWwiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoxOTMwCisjOiBnaXQtZ3VpLnNoOjIxMTIKIG1zZ2lkICJTdGFnZWQgZm9yIHJlbW92YWwsIHN0aWxsIHByZXNlbnQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoxOTMyIGdpdC1ndWkuc2g6MTkzMyBnaXQtZ3VpLnNoOjE5MzQgZ2l0LWd1aS5zaDoxOTM1Ci0jOiBnaXQtZ3VpLnNoOjE5MzYgZ2l0LWd1aS5zaDoxOTM3CisjOiBnaXQtZ3VpLnNoOjIxMTQgZ2l0LWd1aS5zaDoyMTE1IGdpdC1ndWkuc2g6MjExNiBnaXQtZ3VpLnNoOjIxMTcKKyM6IGdpdC1ndWkuc2g6MjExOCBnaXQtZ3VpLnNoOjIxMTkKIG1zZ2lkICJSZXF1aXJlcyBtZXJnZSByZXNvbHV0aW9uIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MTk3MgotbXNnaWQgIlN0YXJ0aW5nIGdpdGsuLi4gcGxlYXNlIHdhaXQuLi4iCi1tc2dzdHIgIiIKLQotIzogZ2l0LWd1aS5zaDoxOTg0CisjOiBnaXQtZ3VpLnNoOjIxNjQKIG1zZ2lkICJDb3VsZG4ndCBmaW5kIGdpdGsgaW4gUEFUSCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjIwNDMKKyM6IGdpdC1ndWkuc2g6MjIxMCBnaXQtZ3VpLnNoOjIyNDUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJTdGFydGluZyAlcy4uLiBwbGVhc2Ugd2FpdC4uLiIKK21zZ3N0ciAiIgorCisjOiBnaXQtZ3VpLnNoOjIyMjQKIG1zZ2lkICJDb3VsZG4ndCBmaW5kIGdpdCBndWkgaW4gUEFUSCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI0NTUgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDozNgorIzogZ2l0LWd1aS5zaDoyNzI2IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTMKIG1zZ2lkICJSZXBvc2l0b3J5IgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjQ1NgorIzogZ2l0LWd1aS5zaDoyNzI3CiBtc2dpZCAiRWRpdCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI0NTggbGliL2Nob29zZV9yZXYudGNsOjU2MQorIzogZ2l0LWd1aS5zaDoyNzI5IGxpYi9jaG9vc2VfcmV2LnRjbDo1NjcKIG1zZ2lkICJCcmFuY2giCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNDYxIGxpYi9jaG9vc2VfcmV2LnRjbDo1NDgKKyM6IGdpdC1ndWkuc2g6MjczMiBsaWIvY2hvb3NlX3Jldi50Y2w6NTU0CiBtc2dpZCAiQ29tbWl0QEBub3VuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjQ2NCBsaWIvbWVyZ2UudGNsOjEyMSBsaWIvbWVyZ2UudGNsOjE1MCBsaWIvbWVyZ2UudGNsOjE2OAorIzogZ2l0LWd1aS5zaDoyNzM1IGxpYi9tZXJnZS50Y2w6MTI3IGxpYi9tZXJnZS50Y2w6MTc0CiBtc2dpZCAiTWVyZ2UiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNDY1IGxpYi9jaG9vc2VfcmV2LnRjbDo1NTcKKyM6IGdpdC1ndWkuc2g6MjczNiBsaWIvY2hvb3NlX3Jldi50Y2w6NTYzCiBtc2dpZCAiUmVtb3RlIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjQ2OAorIzogZ2l0LWd1aS5zaDoyNzM5CiBtc2dpZCAiVG9vbHMiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNDc3CisjOiBnaXQtZ3VpLnNoOjI3NDgKIG1zZ2lkICJFeHBsb3JlIFdvcmtpbmcgQ29weSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI0ODMKKyM6IGdpdC1ndWkuc2g6Mjc2MworbXNnaWQgIkdpdCBCYXNoIgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6Mjc3MgogbXNnaWQgIkJyb3dzZSBDdXJyZW50IEJyYW5jaCdzIEZpbGVzIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjQ4NworIzogZ2l0LWd1aS5zaDoyNzc2CiBtc2dpZCAiQnJvd3NlIEJyYW5jaCBGaWxlcy4uLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI0OTIKKyM6IGdpdC1ndWkuc2g6Mjc4MQogbXNnaWQgIlZpc3VhbGl6ZSBDdXJyZW50IEJyYW5jaCdzIEhpc3RvcnkiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNDk2CisjOiBnaXQtZ3VpLnNoOjI3ODUKIG1zZ2lkICJWaXN1YWxpemUgQWxsIEJyYW5jaCBIaXN0b3J5IgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjUwMworIzogZ2l0LWd1aS5zaDoyNzkyCiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiQnJvd3NlICVzJ3MgRmlsZXMiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNTA1CisjOiBnaXQtZ3VpLnNoOjI3OTQKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJWaXN1YWxpemUgJXMncyBIaXN0b3J5IgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjUxMCBsaWIvZGF0YWJhc2UudGNsOjI3IGxpYi9kYXRhYmFzZS50Y2w6NjcKKyM6IGdpdC1ndWkuc2g6Mjc5OSBsaWIvZGF0YWJhc2UudGNsOjQwCiBtc2dpZCAiRGF0YWJhc2UgU3RhdGlzdGljcyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI1MTMgbGliL2RhdGFiYXNlLnRjbDozNAorIzogZ2l0LWd1aS5zaDoyODAyIGxpYi9kYXRhYmFzZS50Y2w6MzMKIG1zZ2lkICJDb21wcmVzcyBEYXRhYmFzZSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI1MTYKKyM6IGdpdC1ndWkuc2g6MjgwNQogbXNnaWQgIlZlcmlmeSBEYXRhYmFzZSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI1MjMgZ2l0LWd1aS5zaDoyNTI3IGdpdC1ndWkuc2g6MjUzMSBsaWIvc2hvcnRjdXQudGNsOjgKLSM6IGxpYi9zaG9ydGN1dC50Y2w6NDAgbGliL3Nob3J0Y3V0LnRjbDo3MgorIzogZ2l0LWd1aS5zaDoyODEyIGdpdC1ndWkuc2g6MjgxNiBnaXQtZ3VpLnNoOjI4MjAKIG1zZ2lkICJDcmVhdGUgRGVza3RvcCBJY29uIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjUzOSBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjE4MyBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjE5MQorIzogZ2l0LWd1aS5zaDoyODI4IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MjA5IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MjE3CiBtc2dpZCAiUXVpdCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI1NDcKKyM6IGdpdC1ndWkuc2g6MjgzNgogbXNnaWQgIlVuZG8iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNTUwCisjOiBnaXQtZ3VpLnNoOjI4MzkKIG1zZ2lkICJSZWRvIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjU1NCBnaXQtZ3VpLnNoOjMxMDkKKyM6IGdpdC1ndWkuc2g6Mjg0MyBnaXQtZ3VpLnNoOjM0NjEKIG1zZ2lkICJDdXQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNTU3IGdpdC1ndWkuc2g6MzExMiBnaXQtZ3VpLnNoOjMxODYgZ2l0LWd1aS5zaDozMjU5CisjOiBnaXQtZ3VpLnNoOjI4NDYgZ2l0LWd1aS5zaDozNDY0IGdpdC1ndWkuc2g6MzU0MCBnaXQtZ3VpLnNoOjM2MzMKICM6IGxpYi9jb25zb2xlLnRjbDo2OQogbXNnaWQgIkNvcHkiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNTYwIGdpdC1ndWkuc2g6MzExNQorIzogZ2l0LWd1aS5zaDoyODQ5IGdpdC1ndWkuc2g6MzQ2NwogbXNnaWQgIlBhc3RlIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjU2MyBnaXQtZ3VpLnNoOjMxMTggbGliL2JyYW5jaF9kZWxldGUudGNsOjI2Ci0jOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjM4CisjOiBnaXQtZ3VpLnNoOjI4NTIgZ2l0LWd1aS5zaDozNDcwIGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MzkKKyM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDoyOAogbXNnaWQgIkRlbGV0ZSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI1NjcgZ2l0LWd1aS5zaDozMTIyIGdpdC1ndWkuc2g6MzI2MyBsaWIvY29uc29sZS50Y2w6NzEKKyM6IGdpdC1ndWkuc2g6Mjg1NiBnaXQtZ3VpLnNoOjM0NzQgZ2l0LWd1aS5zaDozNjM3IGxpYi9jb25zb2xlLnRjbDo3MQogbXNnaWQgIlNlbGVjdCBBbGwiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNTc2CisjOiBnaXQtZ3VpLnNoOjI4NjUKIG1zZ2lkICJDcmVhdGUuLi4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNTgyCisjOiBnaXQtZ3VpLnNoOjI4NzEKIG1zZ2lkICJDaGVja291dC4uLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI1ODgKKyM6IGdpdC1ndWkuc2g6Mjg3NwogbXNnaWQgIlJlbmFtZS4uLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI1OTMKKyM6IGdpdC1ndWkuc2g6Mjg4MgogbXNnaWQgIkRlbGV0ZS4uLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI1OTgKKyM6IGdpdC1ndWkuc2g6Mjg4NwogbXNnaWQgIlJlc2V0Li4uIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjYwOAorIzogZ2l0LWd1aS5zaDoyODk3CiBtc2dpZCAiRG9uZSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI2MTAKKyM6IGdpdC1ndWkuc2g6Mjg5OQogbXNnaWQgIkNvbW1pdEBAdmVyYiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI2MTkgZ2l0LWd1aS5zaDozMDUwCi1tc2dpZCAiTmV3IENvbW1pdCIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtZ3VpLnNoOjI2MjcgZ2l0LWd1aS5zaDozMDU3CisjOiBnaXQtZ3VpLnNoOjI5MDggZ2l0LWd1aS5zaDozNDAwCiBtc2dpZCAiQW1lbmQgTGFzdCBDb21taXQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNjM3IGdpdC1ndWkuc2g6MzAxMSBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjk5CisjOiBnaXQtZ3VpLnNoOjI5MTggZ2l0LWd1aS5zaDozMzYxIGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MTAxCiBtc2dpZCAiUmVzY2FuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjY0MworIzogZ2l0LWd1aS5zaDoyOTI0CiBtc2dpZCAiU3RhZ2UgVG8gQ29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjY0OQorIzogZ2l0LWd1aS5zaDoyOTMwCiBtc2dpZCAiU3RhZ2UgQ2hhbmdlZCBGaWxlcyBUbyBDb21taXQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNjU1CisjOiBnaXQtZ3VpLnNoOjI5MzYKIG1zZ2lkICJVbnN0YWdlIEZyb20gQ29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjY2MSBsaWIvaW5kZXgudGNsOjQxMgorIzogZ2l0LWd1aS5zaDoyOTQyIGxpYi9pbmRleC50Y2w6NTIxCiBtc2dpZCAiUmV2ZXJ0IENoYW5nZXMiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNjY5IGdpdC1ndWkuc2g6MzMxMCBnaXQtZ3VpLnNoOjMzNDEKKyM6IGdpdC1ndWkuc2g6Mjk1MCBnaXQtZ3VpLnNoOjM3MDAgZ2l0LWd1aS5zaDozNzMxCiBtc2dpZCAiU2hvdyBMZXNzIENvbnRleHQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNjczIGdpdC1ndWkuc2g6MzMxNCBnaXQtZ3VpLnNoOjMzNDUKKyM6IGdpdC1ndWkuc2g6Mjk1NCBnaXQtZ3VpLnNoOjM3MDQgZ2l0LWd1aS5zaDozNzM1CiBtc2dpZCAiU2hvdyBNb3JlIENvbnRleHQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNjgwIGdpdC1ndWkuc2g6MzAyNCBnaXQtZ3VpLnNoOjMxMzMKKyM6IGdpdC1ndWkuc2g6Mjk2MSBnaXQtZ3VpLnNoOjMzNzQgZ2l0LWd1aS5zaDozNDg1CiBtc2dpZCAiU2lnbiBPZmYiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNjk2CisjOiBnaXQtZ3VpLnNoOjI5NzcKIG1zZ2lkICJMb2NhbCBNZXJnZS4uLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI3MDEKKyM6IGdpdC1ndWkuc2g6Mjk4MgogbXNnaWQgIkFib3J0IE1lcmdlLi4uIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjcxMyBnaXQtZ3VpLnNoOjI3NDEKKyM6IGdpdC1ndWkuc2g6Mjk5NCBnaXQtZ3VpLnNoOjMwMjIKIG1zZ2lkICJBZGQuLi4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNzE3CisjOiBnaXQtZ3VpLnNoOjI5OTgKIG1zZ2lkICJQdXNoLi4uIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjcyMQorIzogZ2l0LWd1aS5zaDozMDAyCiBtc2dpZCAiRGVsZXRlIEJyYW5jaC4uLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI3MzEgZ2l0LWd1aS5zaDozMjkyCisjOiBnaXQtZ3VpLnNoOjMwMTIgZ2l0LWd1aS5zaDozNjY2CiBtc2dpZCAiT3B0aW9ucy4uLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI3NDIKKyM6IGdpdC1ndWkuc2g6MzAyMwogbXNnaWQgIlJlbW92ZS4uLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI3NTEgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1MAorIzogZ2l0LWd1aS5zaDozMDMyIGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjcKIG1zZ2lkICJIZWxwIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6Mjc1NSBnaXQtZ3VpLnNoOjI3NTkgbGliL2Fib3V0LnRjbDoxNAotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0NCBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjUzCisjOiBnaXQtZ3VpLnNoOjMwMzYgZ2l0LWd1aS5zaDozMDQwIGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjEKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NzAgbGliL2Fib3V0LnRjbDoxNAogIywgdGNsLWZvcm1hdAogbXNnaWQgIkFib3V0ICVzIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6Mjc4MworIzogZ2l0LWd1aS5zaDozMDY0CiBtc2dpZCAiT25saW5lIERvY3VtZW50YXRpb24iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDoyNzg2IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDcgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1NgorIzogZ2l0LWd1aS5zaDozMDY3IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjQgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo3MwogbXNnaWQgIlNob3cgU1NIIEtleSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjI4OTMKKyM6IGdpdC1ndWkuc2g6MzA5NyBnaXQtZ3VpLnNoOjMyMjkKK21zZ2lkICJ1c2FnZToiCittc2dzdHIgIiIKKworIzogZ2l0LWd1aS5zaDozMTAxIGdpdC1ndWkuc2g6MzIzMworbXNnaWQgIlVzYWdlIgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MzE4MiBsaWIvYmxhbWUudGNsOjU3NQorbXNnaWQgIkVycm9yIgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MzIxMwogIywgdGNsLWZvcm1hdAogbXNnaWQgImZhdGFsOiBjYW5ub3Qgc3RhdCBwYXRoICVzOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5IgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MjkyNgorIzogZ2l0LWd1aS5zaDozMjQ2CiBtc2dpZCAiQ3VycmVudCBCcmFuY2g6IgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6Mjk0NwotbXNnaWQgIlN0YWdlZCBDaGFuZ2VzIChXaWxsIENvbW1pdCkiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWd1aS5zaDoyOTY3CisjOiBnaXQtZ3VpLnNoOjMyNzEKIG1zZ2lkICJVbnN0YWdlZCBDaGFuZ2VzIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MzAxNwotbXNnaWQgIlN0YWdlIENoYW5nZWQiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWd1aS5zaDozMDM2IGxpYi90cmFuc3BvcnQudGNsOjEwNCBsaWIvdHJhbnNwb3J0LnRjbDoxOTMKLW1zZ2lkICJQdXNoIgotbXNnc3RyICIiCi0KLSM6IGdpdC1ndWkuc2g6MzA3MQotbXNnaWQgIkluaXRpYWwgQ29tbWl0IE1lc3NhZ2U6IgotbXNnc3RyICIiCi0KLSM6IGdpdC1ndWkuc2g6MzA3MgotbXNnaWQgIkFtZW5kZWQgQ29tbWl0IE1lc3NhZ2U6IgotbXNnc3RyICIiCi0KLSM6IGdpdC1ndWkuc2g6MzA3MwotbXNnaWQgIkFtZW5kZWQgSW5pdGlhbCBDb21taXQgTWVzc2FnZToiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWd1aS5zaDozMDc0Ci1tc2dpZCAiQW1lbmRlZCBNZXJnZSBDb21taXQgTWVzc2FnZToiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWd1aS5zaDozMDc1Ci1tc2dpZCAiTWVyZ2UgQ29tbWl0IE1lc3NhZ2U6IgotbXNnc3RyICIiCi0KLSM6IGdpdC1ndWkuc2g6MzA3NgotbXNnaWQgIkNvbW1pdCBNZXNzYWdlOiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtZ3VpLnNoOjMxMjUgZ2l0LWd1aS5zaDozMjY3IGxpYi9jb25zb2xlLnRjbDo3MwotbXNnaWQgIkNvcHkgQWxsIgotbXNnc3RyICIiCi0KLSM6IGdpdC1ndWkuc2g6MzE0OSBsaWIvYmxhbWUudGNsOjEwNAotbXNnaWQgIkZpbGU6IgotbXNnc3RyICIiCi0KLSM6IGdpdC1ndWkuc2g6MzI1NQotbXNnaWQgIlJlZnJlc2giCi1tc2dzdHIgIiIKLQotIzogZ2l0LWd1aS5zaDozMjc2Ci1tc2dpZCAiRGVjcmVhc2UgRm9udCBTaXplIgotbXNnc3RyICIiCi0KLSM6IGdpdC1ndWkuc2g6MzI4MAotbXNnaWQgIkluY3JlYXNlIEZvbnQgU2l6ZSIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtZ3VpLnNoOjMyODggbGliL2JsYW1lLnRjbDoyODEKLW1zZ2lkICJFbmNvZGluZyIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtZ3VpLnNoOjMyOTkKLW1zZ2lkICJBcHBseS9SZXZlcnNlIEh1bmsiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWd1aS5zaDozMzA0Ci1tc2dpZCAiQXBwbHkvUmV2ZXJzZSBMaW5lIgotbXNnc3RyICIiCi0KLSM6IGdpdC1ndWkuc2g6MzMyMwotbXNnaWQgIlJ1biBNZXJnZSBUb29sIgotbXNnc3RyICIiCi0KLSM6IGdpdC1ndWkuc2g6MzMyOAotbXNnaWQgIlVzZSBSZW1vdGUgVmVyc2lvbiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtZ3VpLnNoOjMzMzIKLW1zZ2lkICJVc2UgTG9jYWwgVmVyc2lvbiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtZ3VpLnNoOjMzMzYKLW1zZ2lkICJSZXZlcnQgVG8gQmFzZSIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtZ3VpLnNoOjMzNTQKLW1zZ2lkICJWaXN1YWxpemUgVGhlc2UgQ2hhbmdlcyBJbiBUaGUgU3VibW9kdWxlIgotbXNnc3RyICIiCi0KLSM6IGdpdC1ndWkuc2g6MzM1OAotbXNnaWQgIlZpc3VhbGl6ZSBDdXJyZW50IEJyYW5jaCBIaXN0b3J5IEluIFRoZSBTdWJtb2R1bGUiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWd1aS5zaDozMzYyCi1tc2dpZCAiVmlzdWFsaXplIEFsbCBCcmFuY2ggSGlzdG9yeSBJbiBUaGUgU3VibW9kdWxlIgorIzogZ2l0LWd1aS5zaDozMjkzCittc2dpZCAiU3RhZ2VkIENoYW5nZXMgKFdpbGwgQ29tbWl0KSIKIG1zZ3N0ciAiIgogCiAjOiBnaXQtZ3VpLnNoOjMzNjcKK21zZ2lkICJTdGFnZSBDaGFuZ2VkIgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MzM4NiBsaWIvdHJhbnNwb3J0LnRjbDoxMzcKK21zZ2lkICJQdXNoIgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MzQxMworbXNnaWQgIkluaXRpYWwgQ29tbWl0IE1lc3NhZ2U6IgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MzQxNAorbXNnaWQgIkFtZW5kZWQgQ29tbWl0IE1lc3NhZ2U6IgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MzQxNQorbXNnaWQgIkFtZW5kZWQgSW5pdGlhbCBDb21taXQgTWVzc2FnZToiCittc2dzdHIgIiIKKworIzogZ2l0LWd1aS5zaDozNDE2Cittc2dpZCAiQW1lbmRlZCBNZXJnZSBDb21taXQgTWVzc2FnZToiCittc2dzdHIgIiIKKworIzogZ2l0LWd1aS5zaDozNDE3Cittc2dpZCAiTWVyZ2UgQ29tbWl0IE1lc3NhZ2U6IgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MzQxOAorbXNnaWQgIkNvbW1pdCBNZXNzYWdlOiIKK21zZ3N0ciAiIgorCisjOiBnaXQtZ3VpLnNoOjM0NzcgZ2l0LWd1aS5zaDozNjQxIGxpYi9jb25zb2xlLnRjbDo3MworbXNnaWQgIkNvcHkgQWxsIgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MzUwMSBsaWIvYmxhbWUudGNsOjEwNgorbXNnaWQgIkZpbGU6IgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MzU0OSBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjExMDAKK21zZ2lkICJPcGVuIgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MzYyOQorbXNnaWQgIlJlZnJlc2giCittc2dzdHIgIiIKKworIzogZ2l0LWd1aS5zaDozNjUwCittc2dpZCAiRGVjcmVhc2UgRm9udCBTaXplIgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MzY1NAorbXNnaWQgIkluY3JlYXNlIEZvbnQgU2l6ZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtZ3VpLnNoOjM2NjIgbGliL2JsYW1lLnRjbDoyOTYKK21zZ2lkICJFbmNvZGluZyIKK21zZ3N0ciAiIgorCisjOiBnaXQtZ3VpLnNoOjM2NzMKK21zZ2lkICJBcHBseS9SZXZlcnNlIEh1bmsiCittc2dzdHIgIiIKKworIzogZ2l0LWd1aS5zaDozNjc4Cittc2dpZCAiQXBwbHkvUmV2ZXJzZSBMaW5lIgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6MzY4NCBnaXQtZ3VpLnNoOjM3OTQgZ2l0LWd1aS5zaDozODA1Cittc2dpZCAiUmV2ZXJ0IEh1bmsiCittc2dzdHIgIiIKKworIzogZ2l0LWd1aS5zaDozNjg5IGdpdC1ndWkuc2g6MzgwMSBnaXQtZ3VpLnNoOjM4MTIKK21zZ2lkICJSZXZlcnQgTGluZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtZ3VpLnNoOjM2OTQgZ2l0LWd1aS5zaDozNzkxCittc2dpZCAiVW5kbyBMYXN0IFJldmVydCIKK21zZ3N0ciAiIgorCisjOiBnaXQtZ3VpLnNoOjM3MTMKK21zZ2lkICJSdW4gTWVyZ2UgVG9vbCIKK21zZ3N0ciAiIgorCisjOiBnaXQtZ3VpLnNoOjM3MTgKK21zZ2lkICJVc2UgUmVtb3RlIFZlcnNpb24iCittc2dzdHIgIiIKKworIzogZ2l0LWd1aS5zaDozNzIyCittc2dpZCAiVXNlIExvY2FsIFZlcnNpb24iCittc2dzdHIgIiIKKworIzogZ2l0LWd1aS5zaDozNzI2Cittc2dpZCAiUmV2ZXJ0IFRvIEJhc2UiCittc2dzdHIgIiIKKworIzogZ2l0LWd1aS5zaDozNzQ0Cittc2dpZCAiVmlzdWFsaXplIFRoZXNlIENoYW5nZXMgSW4gVGhlIFN1Ym1vZHVsZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtZ3VpLnNoOjM3NDgKK21zZ2lkICJWaXN1YWxpemUgQ3VycmVudCBCcmFuY2ggSGlzdG9yeSBJbiBUaGUgU3VibW9kdWxlIgorbXNnc3RyICIiCisKKyM6IGdpdC1ndWkuc2g6Mzc1MgorbXNnaWQgIlZpc3VhbGl6ZSBBbGwgQnJhbmNoIEhpc3RvcnkgSW4gVGhlIFN1Ym1vZHVsZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtZ3VpLnNoOjM3NTcKIG1zZ2lkICJTdGFydCBnaXQgZ3VpIEluIFRoZSBTdWJtb2R1bGUiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDozMzg5CisjOiBnaXQtZ3VpLnNoOjM3OTMKIG1zZ2lkICJVbnN0YWdlIEh1bmsgRnJvbSBDb21taXQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDozMzkxCisjOiBnaXQtZ3VpLnNoOjM3OTcKIG1zZ2lkICJVbnN0YWdlIExpbmVzIEZyb20gQ29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MzM5MworIzogZ2l0LWd1aS5zaDozNzk4IGdpdC1ndWkuc2g6MzgwOQorbXNnaWQgIlJldmVydCBMaW5lcyIKK21zZ3N0ciAiIgorCisjOiBnaXQtZ3VpLnNoOjM4MDAKIG1zZ2lkICJVbnN0YWdlIExpbmUgRnJvbSBDb21taXQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDozMzk2CisjOiBnaXQtZ3VpLnNoOjM4MDQKIG1zZ2lkICJTdGFnZSBIdW5rIEZvciBDb21taXQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDozMzk4CisjOiBnaXQtZ3VpLnNoOjM4MDgKIG1zZ2lkICJTdGFnZSBMaW5lcyBGb3IgQ29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MzQwMAorIzogZ2l0LWd1aS5zaDozODExCiBtc2dpZCAiU3RhZ2UgTGluZSBGb3IgQ29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MzQyNAorIzogZ2l0LWd1aS5zaDozODYxCiBtc2dpZCAiSW5pdGlhbGl6aW5nLi4uIgogbXNnc3RyICIiCiAKLSM6IGdpdC1ndWkuc2g6MzU0MQorIzogZ2l0LWd1aS5zaDo0MDE3CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiIgogIlBvc3NpYmxlIGVudmlyb25tZW50IGlzc3VlcyBleGlzdC5cbiIKQEAgLTUzMSwxNCArNTc3LDE0IEBACiAiXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWd1aS5zaDozNTcwCisjOiBnaXQtZ3VpLnNoOjQwNDYKIG1zZ2lkICIiCiAiXG4iCiAiVGhpcyBpcyBkdWUgdG8gYSBrbm93biBpc3N1ZSB3aXRoIHRoZVxuIgogIlRjbCBiaW5hcnkgZGlzdHJpYnV0ZWQgYnkgQ3lnd2luLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtZ3VpLnNoOjM1NzUKKyM6IGdpdC1ndWkuc2g6NDA1MQogIywgdGNsLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTU0OSwzMDggKzU5NSwxNDcgQEAKICJ+Ly5naXRjb25maWcgZmlsZS5cbiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvYWJvdXQudGNsOjI2Ci1tc2dpZCAiZ2l0LWd1aSAtIGEgZ3JhcGhpY2FsIHVzZXIgaW50ZXJmYWNlIGZvciBHaXQuIgorIzogbGliL3NwZWxsY2hlY2sudGNsOjU3Cittc2dpZCAiVW5zdXBwb3J0ZWQgc3BlbGwgY2hlY2tlciIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvYmxhbWUudGNsOjcyCi1tc2dpZCAiRmlsZSBWaWV3ZXIiCisjOiBsaWIvc3BlbGxjaGVjay50Y2w6NjUKK21zZ2lkICJTcGVsbCBjaGVja2luZyBpcyB1bmF2YWlsYWJsZSIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvYmxhbWUudGNsOjc4Ci1tc2dpZCAiQ29tbWl0OiIKKyM6IGxpYi9zcGVsbGNoZWNrLnRjbDo2OAorbXNnaWQgIkludmFsaWQgc3BlbGwgY2hlY2tpbmcgY29uZmlndXJhdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvYmxhbWUudGNsOjI3MQotbXNnaWQgIkNvcHkgQ29tbWl0IgotbXNnc3RyICIiCi0KLSM6IGxpYi9ibGFtZS50Y2w6Mjc1Ci1tc2dpZCAiRmluZCBUZXh0Li4uIgotbXNnc3RyICIiCi0KLSM6IGxpYi9ibGFtZS50Y2w6Mjg0Ci1tc2dpZCAiRG8gRnVsbCBDb3B5IERldGVjdGlvbiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYmxhbWUudGNsOjI4OAotbXNnaWQgIlNob3cgSGlzdG9yeSBDb250ZXh0IgotbXNnc3RyICIiCi0KLSM6IGxpYi9ibGFtZS50Y2w6MjkxCi1tc2dpZCAiQmxhbWUgUGFyZW50IENvbW1pdCIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYmxhbWUudGNsOjQ1MAorIzogbGliL3NwZWxsY2hlY2sudGNsOjcwCiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiUmVhZGluZyAlcy4uLiIKK21zZ2lkICJSZXZlcnRpbmcgZGljdGlvbmFyeSB0byAlcy4iCiBtc2dzdHIgIiIKIAotIzogbGliL2JsYW1lLnRjbDo1NTcKLW1zZ2lkICJMb2FkaW5nIGNvcHkvbW92ZSB0cmFja2luZyBhbm5vdGF0aW9ucy4uLiIKKyM6IGxpYi9zcGVsbGNoZWNrLnRjbDo3MworbXNnaWQgIlNwZWxsIGNoZWNrZXIgc2lsZW50bHkgZmFpbGVkIG9uIHN0YXJ0dXAiCiBtc2dzdHIgIiIKIAotIzogbGliL2JsYW1lLnRjbDo1NzcKLW1zZ2lkICJsaW5lcyBhbm5vdGF0ZWQiCisjOiBsaWIvc3BlbGxjaGVjay50Y2w6ODAKK21zZ2lkICJVbnJlY29nbml6ZWQgc3BlbGwgY2hlY2tlciIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvYmxhbWUudGNsOjc2OQotbXNnaWQgIkxvYWRpbmcgb3JpZ2luYWwgbG9jYXRpb24gYW5ub3RhdGlvbnMuLi4iCisjOiBsaWIvc3BlbGxjaGVjay50Y2w6MTg2Cittc2dpZCAiTm8gU3VnZ2VzdGlvbnMiCiBtc2dzdHIgIiIKIAotIzogbGliL2JsYW1lLnRjbDo3NzIKLW1zZ2lkICJBbm5vdGF0aW9uIGNvbXBsZXRlLiIKKyM6IGxpYi9zcGVsbGNoZWNrLnRjbDozODgKK21zZ2lkICJVbmV4cGVjdGVkIEVPRiBmcm9tIHNwZWxsIGNoZWNrZXIiCiBtc2dzdHIgIiIKIAotIzogbGliL2JsYW1lLnRjbDo4MDIKLW1zZ2lkICJCdXN5IgorIzogbGliL3NwZWxsY2hlY2sudGNsOjM5MgorbXNnaWQgIlNwZWxsIENoZWNrZXIgRmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IGxpYi9ibGFtZS50Y2w6ODAzCi1tc2dpZCAiQW5ub3RhdGlvbiBwcm9jZXNzIGlzIGFscmVhZHkgcnVubmluZy4iCisjOiBsaWIvdHJhbnNwb3J0LnRjbDo2IGxpYi9yZW1vdGVfYWRkLnRjbDoxMzIKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJmZXRjaCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvYmxhbWUudGNsOjg0MgotbXNnaWQgIlJ1bm5pbmcgdGhvcm91Z2ggY29weSBkZXRlY3Rpb24uLi4iCisjOiBsaWIvdHJhbnNwb3J0LnRjbDo3CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRmV0Y2hpbmcgbmV3IGNoYW5nZXMgZnJvbSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvYmxhbWUudGNsOjkxMAotbXNnaWQgIkxvYWRpbmcgYW5ub3RhdGlvbi4uLiIKKyM6IGxpYi90cmFuc3BvcnQudGNsOjE4CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAicmVtb3RlIHBydW5lICVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9ibGFtZS50Y2w6OTYzCi1tc2dpZCAiQXV0aG9yOiIKKyM6IGxpYi90cmFuc3BvcnQudGNsOjE5CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUHJ1bmluZyB0cmFja2luZyBicmFuY2hlcyBkZWxldGVkIGZyb20gJXMiCiBtc2dzdHIgIiIKIAotIzogbGliL2JsYW1lLnRjbDo5NjcKLW1zZ2lkICJDb21taXR0ZXI6IgorIzogbGliL3RyYW5zcG9ydC50Y2w6MjUKK21zZ2lkICJmZXRjaCBhbGwgcmVtb3RlcyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvYmxhbWUudGNsOjk3MgotbXNnaWQgIk9yaWdpbmFsIEZpbGU6IgorIzogbGliL3RyYW5zcG9ydC50Y2w6MjYKK21zZ2lkICJGZXRjaGluZyBuZXcgY2hhbmdlcyBmcm9tIGFsbCByZW1vdGVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9ibGFtZS50Y2w6MTAyMAotbXNnaWQgIkNhbm5vdCBmaW5kIEhFQUQgY29tbWl0OiIKKyM6IGxpYi90cmFuc3BvcnQudGNsOjQwCittc2dpZCAicmVtb3RlIHBydW5lIGFsbCByZW1vdGVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9ibGFtZS50Y2w6MTA3NQotbXNnaWQgIkNhbm5vdCBmaW5kIHBhcmVudCBjb21taXQ6IgorIzogbGliL3RyYW5zcG9ydC50Y2w6NDEKK21zZ2lkICJQcnVuaW5nIHRyYWNraW5nIGJyYW5jaGVzIGRlbGV0ZWQgZnJvbSBhbGwgcmVtb3RlcyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvYmxhbWUudGNsOjEwOTAKLW1zZ2lkICJVbmFibGUgdG8gZGlzcGxheSBwYXJlbnQiCisjOiBsaWIvdHJhbnNwb3J0LnRjbDo1NCBsaWIvdHJhbnNwb3J0LnRjbDo5MiBsaWIvdHJhbnNwb3J0LnRjbDoxMTAKKyM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxNjIKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJwdXNoICVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9ibGFtZS50Y2w6MTA5MSBsaWIvZGlmZi50Y2w6MzIwCi1tc2dpZCAiRXJyb3IgbG9hZGluZyBkaWZmOiIKKyM6IGxpYi90cmFuc3BvcnQudGNsOjU1CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUHVzaGluZyBjaGFuZ2VzIHRvICVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9ibGFtZS50Y2w6MTIzMQotbXNnaWQgIk9yaWdpbmFsbHkgQnk6IgorIzogbGliL3RyYW5zcG9ydC50Y2w6OTMKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJNaXJyb3JpbmcgdG8gJXMiCiBtc2dzdHIgIiIKIAotIzogbGliL2JsYW1lLnRjbDoxMjM3Ci1tc2dpZCAiSW4gRmlsZToiCisjOiBsaWIvdHJhbnNwb3J0LnRjbDoxMTEKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJQdXNoaW5nICVzICVzIHRvICVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9ibGFtZS50Y2w6MTI0MgotbXNnaWQgIkNvcGllZCBPciBNb3ZlZCBIZXJlIEJ5OiIKKyM6IGxpYi90cmFuc3BvcnQudGNsOjEzMgorbXNnaWQgIlB1c2ggQnJhbmNoZXMiCiBtc2dzdHIgIiIKIAotIzogbGliL2JyYW5jaF9jaGVja291dC50Y2w6MTQgbGliL2JyYW5jaF9jaGVja291dC50Y2w6MTkKLW1zZ2lkICJDaGVja291dCBCcmFuY2giCi1tc2dzdHIgIiIKLQotIzogbGliL2JyYW5jaF9jaGVja291dC50Y2w6MjMKLW1zZ2lkICJDaGVja291dCIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX2NoZWNrb3V0LnRjbDoyNyBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MzUKLSM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDozMiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MzAgbGliL2Jyb3dzZXIudGNsOjI4MgotIzogbGliL2NoZWNrb3V0X29wLnRjbDo1NzkgbGliL2Nob29zZV9mb250LnRjbDo0MyBsaWIvbWVyZ2UudGNsOjE3MgotIzogbGliL29wdGlvbi50Y2w6MTI1IGxpYi9yZW1vdGVfYWRkLnRjbDozMiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjQyCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDo0MCBsaWIvdG9vbHNfZGxnLnRjbDoyMDQgbGliL3Rvb2xzX2RsZy50Y2w6MzUyCi0jOiBsaWIvdHJhbnNwb3J0LnRjbDoxMDgKKyM6IGxpYi90cmFuc3BvcnQudGNsOjE0MSBsaWIvY2hlY2tvdXRfb3AudGNsOjU4MCBsaWIvcmVtb3RlX2FkZC50Y2w6MzQKKyM6IGxpYi9icm93c2VyLnRjbDoyOTIgbGliL2JyYW5jaF9jaGVja291dC50Y2w6MzAgbGliL2JyYW5jaF9yZW5hbWUudGNsOjMyCisjOiBsaWIvY2hvb3NlX2ZvbnQudGNsOjQ1IGxpYi9vcHRpb24udGNsOjEyNyBsaWIvdG9vbHNfZGxnLnRjbDo0MQorIzogbGliL3Rvb2xzX2RsZy50Y2w6MjAyIGxpYi90b29sc19kbGcudGNsOjM0NSBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjQzCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MzcgbGliL2JyYW5jaF9kZWxldGUudGNsOjM0IGxpYi9tZXJnZS50Y2w6MTc4CiBtc2dpZCAiQ2FuY2VsIgogbXNnc3RyICIiCiAKLSM6IGxpYi9icmFuY2hfY2hlY2tvdXQudGNsOjMyIGxpYi9icm93c2VyLnRjbDoyODcgbGliL3Rvb2xzX2RsZy50Y2w6MzI4Ci1tc2dpZCAiUmV2aXNpb24iCisjOiBsaWIvdHJhbnNwb3J0LnRjbDoxNDcKK21zZ2lkICJTb3VyY2UgQnJhbmNoZXMiCiBtc2dzdHIgIiIKIAotIzogbGliL2JyYW5jaF9jaGVja291dC50Y2w6MzYgbGliL2JyYW5jaF9jcmVhdGUudGNsOjY5IGxpYi9vcHRpb24udGNsOjI4MAotbXNnaWQgIk9wdGlvbnMiCisjOiBsaWIvdHJhbnNwb3J0LnRjbDoxNjIKK21zZ2lkICJEZXN0aW5hdGlvbiBSZXBvc2l0b3J5IgogbXNnc3RyICIiCiAKLSM6IGxpYi9icmFuY2hfY2hlY2tvdXQudGNsOjM5IGxpYi9icmFuY2hfY3JlYXRlLnRjbDo5MgotbXNnaWQgIkZldGNoIFRyYWNraW5nIEJyYW5jaCIKKyM6IGxpYi90cmFuc3BvcnQudGNsOjE2NSBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjUxCittc2dpZCAiUmVtb3RlOiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvYnJhbmNoX2NoZWNrb3V0LnRjbDo0NAotbXNnaWQgIkRldGFjaCBGcm9tIExvY2FsIEJyYW5jaCIKKyM6IGxpYi90cmFuc3BvcnQudGNsOjE4NyBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjcyCittc2dpZCAiQXJiaXRyYXJ5IExvY2F0aW9uOiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MjIKLW1zZ2lkICJDcmVhdGUgQnJhbmNoIgorIzogbGliL3RyYW5zcG9ydC50Y2w6MjA1Cittc2dpZCAiVHJhbnNmZXIgT3B0aW9ucyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MjcKLW1zZ2lkICJDcmVhdGUgTmV3IEJyYW5jaCIKKyM6IGxpYi90cmFuc3BvcnQudGNsOjIwNworbXNnaWQgIkZvcmNlIG92ZXJ3cml0ZSBleGlzdGluZyBicmFuY2ggKG1heSBkaXNjYXJkIGNoYW5nZXMpIgogbXNnc3RyICIiCiAKLSM6IGxpYi9icmFuY2hfY3JlYXRlLnRjbDozMSBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjM4MQotbXNnaWQgIkNyZWF0ZSIKKyM6IGxpYi90cmFuc3BvcnQudGNsOjIxMQorbXNnaWQgIlVzZSB0aGluIHBhY2sgKGZvciBzbG93IG5ldHdvcmsgY29ubmVjdGlvbnMpIgogbXNnc3RyICIiCiAKLSM6IGxpYi9icmFuY2hfY3JlYXRlLnRjbDo0MAotbXNnaWQgIkJyYW5jaCBOYW1lIgorIzogbGliL3RyYW5zcG9ydC50Y2w6MjE1Cittc2dpZCAiSW5jbHVkZSB0YWdzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9icmFuY2hfY3JlYXRlLnRjbDo0MyBsaWIvcmVtb3RlX2FkZC50Y2w6MzkgbGliL3Rvb2xzX2RsZy50Y2w6NTAKLW1zZ2lkICJOYW1lOiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NTgKLW1zZ2lkICJNYXRjaCBUcmFja2luZyBCcmFuY2ggTmFtZSIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NjYKLW1zZ2lkICJTdGFydGluZyBSZXZpc2lvbiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NzIKLW1zZ2lkICJVcGRhdGUgRXhpc3RpbmcgQnJhbmNoOiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NzUKLW1zZ2lkICJObyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6ODAKLW1zZ2lkICJGYXN0IEZvcndhcmQgT25seSIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6ODUgbGliL2NoZWNrb3V0X29wLnRjbDo1NzEKLW1zZ2lkICJSZXNldCIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6OTcKLW1zZ2lkICJDaGVja291dCBBZnRlciBDcmVhdGlvbiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MTMxCi1tc2dpZCAiUGxlYXNlIHNlbGVjdCBhIHRyYWNraW5nIGJyYW5jaC4iCi1tc2dzdHIgIiIKLQotIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjE0MAorIzogbGliL3RyYW5zcG9ydC50Y2w6MjI5CiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiVHJhY2tpbmcgYnJhbmNoICVzIGlzIG5vdCBhIGJyYW5jaCBpbiB0aGUgcmVtb3RlIHJlcG9zaXRvcnkuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9icmFuY2hfY3JlYXRlLnRjbDoxNTMgbGliL2JyYW5jaF9yZW5hbWUudGNsOjg2Ci1tc2dpZCAiUGxlYXNlIHN1cHBseSBhIGJyYW5jaCBuYW1lLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MTY0IGxpYi9icmFuY2hfcmVuYW1lLnRjbDoxMDYKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICInJXMnIGlzIG5vdCBhbiBhY2NlcHRhYmxlIGJyYW5jaCBuYW1lLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX2RlbGV0ZS50Y2w6MTUKLW1zZ2lkICJEZWxldGUgQnJhbmNoIgotbXNnc3RyICIiCi0KLSM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDoyMAotbXNnaWQgIkRlbGV0ZSBMb2NhbCBCcmFuY2giCi1tc2dzdHIgIiIKLQotIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjM3Ci1tc2dpZCAiTG9jYWwgQnJhbmNoZXMiCi1tc2dzdHIgIiIKLQotIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjUyCi1tc2dpZCAiRGVsZXRlIE9ubHkgSWYgTWVyZ2VkIEludG8iCi1tc2dzdHIgIiIKLQotIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjU0IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MTE5Ci1tc2dpZCAiQWx3YXlzIChEbyBub3QgcGVyZm9ybSBtZXJnZSBjaGVja3MpIgotbXNnc3RyICIiCi0KLSM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDoxMDMKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJUaGUgZm9sbG93aW5nIGJyYW5jaGVzIGFyZSBub3QgY29tcGxldGVseSBtZXJnZWQgaW50byAlczoiCi1tc2dzdHIgIiIKLQotIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjExNSBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjIxNwotbXNnaWQgIiIKLSJSZWNvdmVyaW5nIGRlbGV0ZWQgYnJhbmNoZXMgaXMgZGlmZmljdWx0LlxuIgotIlxuIgotIkRlbGV0ZSB0aGUgc2VsZWN0ZWQgYnJhbmNoZXM/IgotbXNnc3RyICIiCi0KLSM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDoxNDEKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICIiCi0iRmFpbGVkIHRvIGRlbGV0ZSBicmFuY2hlczpcbiIKLSIlcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MTQgbGliL2JyYW5jaF9yZW5hbWUudGNsOjIyCi1tc2dpZCAiUmVuYW1lIEJyYW5jaCIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MjYKLW1zZ2lkICJSZW5hbWUiCi1tc2dzdHIgIiIKLQotIzogbGliL2JyYW5jaF9yZW5hbWUudGNsOjM2Ci1tc2dpZCAiQnJhbmNoOiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MzkKLW1zZ2lkICJOZXcgTmFtZToiCi1tc2dzdHIgIiIKLQotIzogbGliL2JyYW5jaF9yZW5hbWUudGNsOjc1Ci1tc2dpZCAiUGxlYXNlIHNlbGVjdCBhIGJyYW5jaCB0byByZW5hbWUuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9icmFuY2hfcmVuYW1lLnRjbDo5NiBsaWIvY2hlY2tvdXRfb3AudGNsOjIwMgotIywgdGNsLWZvcm1hdAotbXNnaWQgIkJyYW5jaCAnJXMnIGFscmVhZHkgZXhpc3RzLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MTE3Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHJlbmFtZSAnJXMnLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJvd3Nlci50Y2w6MTcKLW1zZ2lkICJTdGFydGluZy4uLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJvd3Nlci50Y2w6MjYKLW1zZ2lkICJGaWxlIEJyb3dzZXIiCi1tc2dzdHIgIiIKLQotIzogbGliL2Jyb3dzZXIudGNsOjEyNiBsaWIvYnJvd3Nlci50Y2w6MTQzCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiTG9hZGluZyAlcy4uLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJvd3Nlci50Y2w6MTg3Ci1tc2dpZCAiW1VwIFRvIFBhcmVudF0iCi1tc2dzdHIgIiIKLQotIzogbGliL2Jyb3dzZXIudGNsOjI2NyBsaWIvYnJvd3Nlci50Y2w6MjczCi1tc2dpZCAiQnJvd3NlIEJyYW5jaCBGaWxlcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvYnJvd3Nlci50Y2w6Mjc4IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6Mzk4Ci0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjQ4NiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjQ5NwotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMDI4Ci1tc2dpZCAiQnJvd3NlIgorbXNnaWQgIiVzICglcyk6IFB1c2giCiBtc2dzdHIgIiIKIAogIzogbGliL2NoZWNrb3V0X29wLnRjbDo4NQpAQCAtODYzLDggKzc0OCw4IEBACiBtc2dpZCAiZmF0YWw6IENhbm5vdCByZXNvbHZlICVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9jaGVja291dF9vcC50Y2w6MTQ2IGxpYi9jb25zb2xlLnRjbDo4MSBsaWIvZGF0YWJhc2UudGNsOjMxCi0jOiBsaWIvc3Noa2V5LnRjbDo1MworIzogbGliL2NoZWNrb3V0X29wLnRjbDoxNDYgbGliL3NzaGtleS50Y2w6NTggbGliL2NvbnNvbGUudGNsOjgxCisjOiBsaWIvZGF0YWJhc2UudGNsOjMwCiBtc2dpZCAiQ2xvc2UiCiBtc2dzdHIgIiIKIApAQCAtODc4LDYgKzc2MywxMSBAQAogbXNnaWQgIkZhaWxlZCB0byBjb25maWd1cmUgc2ltcGxpZmllZCBnaXQtcHVsbCBmb3IgJyVzJy4iCiBtc2dzdHIgIiIKIAorIzogbGliL2NoZWNrb3V0X29wLnRjbDoyMDIgbGliL2JyYW5jaF9yZW5hbWUudGNsOjEwMgorIywgdGNsLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIGFscmVhZHkgZXhpc3RzLiIKK21zZ3N0ciAiIgorCiAjOiBsaWIvY2hlY2tvdXRfb3AudGNsOjIyOQogIywgdGNsLWZvcm1hdAogbXNnaWQgIiIKQEAgLTkyMCwyMSArODEwLDIxIEBACiBtc2dpZCAiZmlsZXMgY2hlY2tlZCBvdXQiCiBtc2dzdHIgIiIKIAotIzogbGliL2NoZWNrb3V0X29wLnRjbDozNzYKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6Mzc3CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiQWJvcnRlZCBjaGVja291dCBvZiAnJXMnIChmaWxlIGxldmVsIG1lcmdpbmcgaXMgcmVxdWlyZWQpLiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hlY2tvdXRfb3AudGNsOjM3NworIzogbGliL2NoZWNrb3V0X29wLnRjbDozNzgKIG1zZ2lkICJGaWxlIGxldmVsIG1lcmdlIHJlcXVpcmVkLiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hlY2tvdXRfb3AudGNsOjM4MQorIzogbGliL2NoZWNrb3V0X29wLnRjbDozODIKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJTdGF5aW5nIG9uIGJyYW5jaCAnJXMnLiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hlY2tvdXRfb3AudGNsOjQ1MgorIzogbGliL2NoZWNrb3V0X29wLnRjbDo0NTMKIG1zZ2lkICIiCiAiWW91IGFyZSBubyBsb25nZXIgb24gYSBsb2NhbCBicmFuY2guXG4iCiAiXG4iCkBAIC05NDIsMzAgKzgzMiwzNCBAQAogIkNoZWNrb3V0Jy4iCiBtc2dzdHIgIiIKIAotIzogbGliL2NoZWNrb3V0X29wLnRjbDo1MDMgbGliL2NoZWNrb3V0X29wLnRjbDo1MDcKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6NTA0IGxpYi9jaGVja291dF9vcC50Y2w6NTA4CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiQ2hlY2tlZCBvdXQgJyVzJy4iCiBtc2dzdHIgIiIKIAotIzogbGliL2NoZWNrb3V0X29wLnRjbDo1MzUKKyM6IGxpYi9jaGVja291dF9vcC50Y2w6NTM2CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiUmVzZXR0aW5nICclcycgdG8gJyVzJyB3aWxsIGxvc2UgdGhlIGZvbGxvd2luZyBjb21taXRzOiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hlY2tvdXRfb3AudGNsOjU1NworIzogbGliL2NoZWNrb3V0X29wLnRjbDo1NTgKIG1zZ2lkICJSZWNvdmVyaW5nIGxvc3QgY29tbWl0cyBtYXkgbm90IGJlIGVhc3kuIgogbXNnc3RyICIiCiAKLSM6IGxpYi9jaGVja291dF9vcC50Y2w6NTYyCisjOiBsaWIvY2hlY2tvdXRfb3AudGNsOjU2MwogIywgdGNsLWZvcm1hdAogbXNnaWQgIlJlc2V0ICclcyc/IgogbXNnc3RyICIiCiAKLSM6IGxpYi9jaGVja291dF9vcC50Y2w6NTY3IGxpYi9tZXJnZS50Y2w6MTY0IGxpYi90b29sc19kbGcudGNsOjM0MworIzogbGliL2NoZWNrb3V0X29wLnRjbDo1NjggbGliL3Rvb2xzX2RsZy50Y2w6MzM2IGxpYi9tZXJnZS50Y2w6MTcwCiBtc2dpZCAiVmlzdWFsaXplIgogbXNnc3RyICIiCiAKLSM6IGxpYi9jaGVja291dF9vcC50Y2w6NjM1CisjOiBsaWIvY2hlY2tvdXRfb3AudGNsOjU3MiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6ODUKK21zZ2lkICJSZXNldCIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hlY2tvdXRfb3AudGNsOjYzNgogIywgdGNsLWZvcm1hdAogbXNnaWQgIiIKICJGYWlsZWQgdG8gc2V0IGN1cnJlbnQgYnJhbmNoLlxuIgpAQCAtOTc2LDU4MyArODcwLDQ5NyBAQAogIlRoaXMgc2hvdWxkIG5vdCBoYXZlIG9jY3VycmVkLiAgJXMgd2lsbCBub3cgY2xvc2UgYW5kIGdpdmUgdXAuIgogbXNnc3RyICIiCiAKLSM6IGxpYi9jaG9vc2VfZm9udC50Y2w6MzkKKyM6IGxpYi9yZW1vdGVfYWRkLnRjbDoyMAorIywgdGNsLWZvcm1hdAorbXNnaWQgIiVzICglcyk6IEFkZCBSZW1vdGUiCittc2dzdHIgIiIKKworIzogbGliL3JlbW90ZV9hZGQudGNsOjI1Cittc2dpZCAiQWRkIE5ldyBSZW1vdGUiCittc2dzdHIgIiIKKworIzogbGliL3JlbW90ZV9hZGQudGNsOjMwIGxpYi90b29sc19kbGcudGNsOjM3Cittc2dpZCAiQWRkIgorbXNnc3RyICIiCisKKyM6IGxpYi9yZW1vdGVfYWRkLnRjbDozOQorbXNnaWQgIlJlbW90ZSBEZXRhaWxzIgorbXNnc3RyICIiCisKKyM6IGxpYi9yZW1vdGVfYWRkLnRjbDo0MSBsaWIvdG9vbHNfZGxnLnRjbDo1MSBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NDQKK21zZ2lkICJOYW1lOiIKK21zZ3N0ciAiIgorCisjOiBsaWIvcmVtb3RlX2FkZC50Y2w6NTAKK21zZ2lkICJMb2NhdGlvbjoiCittc2dzdHIgIiIKKworIzogbGliL3JlbW90ZV9hZGQudGNsOjYwCittc2dpZCAiRnVydGhlciBBY3Rpb24iCittc2dzdHIgIiIKKworIzogbGliL3JlbW90ZV9hZGQudGNsOjYzCittc2dpZCAiRmV0Y2ggSW1tZWRpYXRlbHkiCittc2dzdHIgIiIKKworIzogbGliL3JlbW90ZV9hZGQudGNsOjY5Cittc2dpZCAiSW5pdGlhbGl6ZSBSZW1vdGUgUmVwb3NpdG9yeSBhbmQgUHVzaCIKK21zZ3N0ciAiIgorCisjOiBsaWIvcmVtb3RlX2FkZC50Y2w6NzUKK21zZ2lkICJEbyBOb3RoaW5nIEVsc2UgTm93IgorbXNnc3RyICIiCisKKyM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxMDAKK21zZ2lkICJQbGVhc2Ugc3VwcGx5IGEgcmVtb3RlIG5hbWUuIgorbXNnc3RyICIiCisKKyM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxMTMKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhbiBhY2NlcHRhYmxlIHJlbW90ZSBuYW1lLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTI0CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIGFkZCByZW1vdGUgJyVzJyBvZiBsb2NhdGlvbiAnJXMnLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTMzCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRmV0Y2hpbmcgdGhlICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxNTYKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJEbyBub3Qga25vdyBob3cgdG8gaW5pdGlhbGl6ZSByZXBvc2l0b3J5IGF0IGxvY2F0aW9uICclcycuIgorbXNnc3RyICIiCisKKyM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxNjMKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwIHRoZSAlcyAoYXQgJXMpIgorbXNnc3RyICIiCisKKyM6IGxpYi9icm93c2VyLnRjbDoxNworbXNnaWQgIlN0YXJ0aW5nLi4uIgorbXNnc3RyICIiCisKKyM6IGxpYi9icm93c2VyLnRjbDoyNworIywgdGNsLWZvcm1hdAorbXNnaWQgIiVzICglcyk6IEZpbGUgQnJvd3NlciIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJvd3Nlci50Y2w6MTMyIGxpYi9icm93c2VyLnRjbDoxNDkKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJMb2FkaW5nICVzLi4uIgorbXNnc3RyICIiCisKKyM6IGxpYi9icm93c2VyLnRjbDoxOTMKK21zZ2lkICJbVXAgVG8gUGFyZW50XSIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJvd3Nlci50Y2w6Mjc1CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiJXMgKCVzKTogQnJvd3NlIEJyYW5jaCBGaWxlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJvd3Nlci50Y2w6MjgyCittc2dpZCAiQnJvd3NlIEJyYW5jaCBGaWxlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJvd3Nlci50Y2w6Mjg4IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDM3CisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjUyNCBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjUzMworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMTE1Cittc2dpZCAiQnJvd3NlIgorbXNnc3RyICIiCisKKyM6IGxpYi9icm93c2VyLnRjbDoyOTcgbGliL2JyYW5jaF9jaGVja291dC50Y2w6MzUgbGliL3Rvb2xzX2RsZy50Y2w6MzIxCittc2dpZCAiUmV2aXNpb24iCittc2dzdHIgIiIKKworIzogbGliL2luZGV4LnRjbDo2Cittc2dpZCAiVW5hYmxlIHRvIHVubG9jayB0aGUgaW5kZXguIgorbXNnc3RyICIiCisKKyM6IGxpYi9pbmRleC50Y2w6MzAKK21zZ2lkICJJbmRleCBFcnJvciIKK21zZ3N0ciAiIgorCisjOiBsaWIvaW5kZXgudGNsOjMyCittc2dpZCAiIgorIlVwZGF0aW5nIHRoZSBHaXQgaW5kZXggZmFpbGVkLiAgQSByZXNjYW4gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN0YXJ0ZWQgdG8gIgorInJlc3luY2hyb25pemUgZ2l0LWd1aS4iCittc2dzdHIgIiIKKworIzogbGliL2luZGV4LnRjbDo0MworbXNnaWQgIkNvbnRpbnVlIgorbXNnc3RyICIiCisKKyM6IGxpYi9pbmRleC50Y2w6NDYKK21zZ2lkICJVbmxvY2sgSW5kZXgiCittc2dzdHIgIiIKKworIzogbGliL2luZGV4LnRjbDo3NyBsaWIvaW5kZXgudGNsOjE0NiBsaWIvaW5kZXgudGNsOjIyMCBsaWIvaW5kZXgudGNsOjU4NworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5OTkKK21zZ2lkICJmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvaW5kZXgudGNsOjMyNgorbXNnaWQgIlVuc3RhZ2luZyBzZWxlY3RlZCBmaWxlcyBmcm9tIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvaW5kZXgudGNsOjMzMAorIywgdGNsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2luZyAlcyBmcm9tIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvaW5kZXgudGNsOjM2OQorbXNnaWQgIlJlYWR5IHRvIGNvbW1pdC4iCittc2dzdHIgIiIKKworIzogbGliL2luZGV4LnRjbDozNzgKK21zZ2lkICJBZGRpbmcgc2VsZWN0ZWQgZmlsZXMiCittc2dzdHIgIiIKKworIzogbGliL2luZGV4LnRjbDozODIKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJBZGRpbmcgJXMiCittc2dzdHIgIiIKKworIzogbGliL2luZGV4LnRjbDo0MTIKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJTdGFnZSAlZCB1bnRyYWNrZWQgZmlsZXM/IgorbXNnc3RyICIiCisKKyM6IGxpYi9pbmRleC50Y2w6NDIwCittc2dpZCAiQWRkaW5nIGFsbCBjaGFuZ2VkIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9pbmRleC50Y2w6NTAzCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUmV2ZXJ0IGNoYW5nZXMgaW4gZmlsZSAlcz8iCittc2dzdHIgIiIKKworIzogbGliL2luZGV4LnRjbDo1MDgKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJSZXZlcnQgY2hhbmdlcyBpbiB0aGVzZSAlaSBmaWxlcz8iCittc2dzdHIgIiIKKworIzogbGliL2luZGV4LnRjbDo1MTcKK21zZ2lkICJBbnkgdW5zdGFnZWQgY2hhbmdlcyB3aWxsIGJlIHBlcm1hbmVudGx5IGxvc3QgYnkgdGhlIHJldmVydC4iCittc2dzdHIgIiIKKworIzogbGliL2luZGV4LnRjbDo1MjAgbGliL2luZGV4LnRjbDo1NjMKK21zZ2lkICJEbyBOb3RoaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9pbmRleC50Y2w6NTQ1CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRGVsZXRlIHVudHJhY2tlZCBmaWxlICVzPyIKK21zZ3N0ciAiIgorCisjOiBsaWIvaW5kZXgudGNsOjU1MAorIywgdGNsLWZvcm1hdAorbXNnaWQgIkRlbGV0ZSB0aGVzZSAlaSB1bnRyYWNrZWQgZmlsZXM/IgorbXNnc3RyICIiCisKKyM6IGxpYi9pbmRleC50Y2w6NTYwCittc2dpZCAiRmlsZXMgd2lsbCBiZSBwZXJtYW5lbnRseSBkZWxldGVkLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvaW5kZXgudGNsOjU2NAorbXNnaWQgIkRlbGV0ZSBGaWxlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvaW5kZXgudGNsOjU4NgorbXNnaWQgIkRlbGV0aW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9pbmRleC50Y2w6NjY1Cittc2dpZCAiRW5jb3VudGVyZWQgZXJyb3JzIGRlbGV0aW5nIGZpbGVzOlxuIgorbXNnc3RyICIiCisKKyM6IGxpYi9pbmRleC50Y2w6Njc0CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiTm9uZSBvZiB0aGUgJWQgc2VsZWN0ZWQgZmlsZXMgY291bGQgYmUgZGVsZXRlZC4iCittc2dzdHIgIiIKKworIzogbGliL2luZGV4LnRjbDo2NzkKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIlZCBvZiB0aGUgJWQgc2VsZWN0ZWQgZmlsZXMgY291bGQgbm90IGJlIGRlbGV0ZWQuIgorbXNnc3RyICIiCisKKyM6IGxpYi9pbmRleC50Y2w6NzI2Cittc2dpZCAiUmV2ZXJ0aW5nIHNlbGVjdGVkIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9pbmRleC50Y2w6NzMwCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUmV2ZXJ0aW5nICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9icmFuY2hfY2hlY2tvdXQudGNsOjE2CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiJXMgKCVzKTogQ2hlY2tvdXQgQnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGxpYi9icmFuY2hfY2hlY2tvdXQudGNsOjIxCittc2dpZCAiQ2hlY2tvdXQgQnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGxpYi9icmFuY2hfY2hlY2tvdXQudGNsOjI2Cittc2dpZCAiQ2hlY2tvdXQiCittc2dzdHIgIiIKKworIzogbGliL2JyYW5jaF9jaGVja291dC50Y2w6MzkgbGliL29wdGlvbi50Y2w6MzEwIGxpYi9icmFuY2hfY3JlYXRlLnRjbDo2OQorbXNnaWQgIk9wdGlvbnMiCittc2dzdHIgIiIKKworIzogbGliL2JyYW5jaF9jaGVja291dC50Y2w6NDIgbGliL2JyYW5jaF9jcmVhdGUudGNsOjkyCittc2dpZCAiRmV0Y2ggVHJhY2tpbmcgQnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGxpYi9icmFuY2hfY2hlY2tvdXQudGNsOjQ3Cittc2dpZCAiRGV0YWNoIEZyb20gTG9jYWwgQnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGxpYi9zdGF0dXNfYmFyLnRjbDoyNjMKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIlcyAuLi4gJSppIG9mICUqaSAlcyAoJTNpJSUpIgorbXNnc3RyICIiCisKKyM6IGxpYi9yZW1vdGUudGNsOjIwMAorbXNnaWQgIlB1c2ggdG8iCittc2dzdHIgIiIKKworIzogbGliL3JlbW90ZS50Y2w6MjE4Cittc2dpZCAiUmVtb3ZlIFJlbW90ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvcmVtb3RlLnRjbDoyMjMKK21zZ2lkICJQcnVuZSBmcm9tIgorbXNnc3RyICIiCisKKyM6IGxpYi9yZW1vdGUudGNsOjIyOAorbXNnaWQgIkZldGNoIGZyb20iCittc2dzdHIgIiIKKworIzogbGliL3JlbW90ZS50Y2w6MjQ5IGxpYi9yZW1vdGUudGNsOjI1MyBsaWIvcmVtb3RlLnRjbDoyNTggbGliL3JlbW90ZS50Y2w6MjY0Cittc2dpZCAiQWxsIgorbXNnc3RyICIiCisKKyM6IGxpYi9icmFuY2hfcmVuYW1lLnRjbDoxNQorIywgdGNsLWZvcm1hdAorbXNnaWQgIiVzICglcyk6IFJlbmFtZSBCcmFuY2giCittc2dzdHIgIiIKKworIzogbGliL2JyYW5jaF9yZW5hbWUudGNsOjIzCittc2dpZCAiUmVuYW1lIEJyYW5jaCIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MjgKK21zZ2lkICJSZW5hbWUiCittc2dzdHIgIiIKKworIzogbGliL2JyYW5jaF9yZW5hbWUudGNsOjM4Cittc2dpZCAiQnJhbmNoOiIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6NDYKK21zZ2lkICJOZXcgTmFtZToiCittc2dzdHIgIiIKKworIzogbGliL2JyYW5jaF9yZW5hbWUudGNsOjgxCittc2dpZCAiUGxlYXNlIHNlbGVjdCBhIGJyYW5jaCB0byByZW5hbWUuIgorbXNnc3RyICIiCisKKyM6IGxpYi9icmFuY2hfcmVuYW1lLnRjbDo5MiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MTU0Cittc2dpZCAiUGxlYXNlIHN1cHBseSBhIGJyYW5jaCBuYW1lLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MTEyIGxpYi9icmFuY2hfY3JlYXRlLnRjbDoxNjUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhbiBhY2NlcHRhYmxlIGJyYW5jaCBuYW1lLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX3JlbmFtZS50Y2w6MTIzCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHJlbmFtZSAnJXMnLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX2ZvbnQudGNsOjQxCiBtc2dpZCAiU2VsZWN0IgogbXNnc3RyICIiCiAKLSM6IGxpYi9jaG9vc2VfZm9udC50Y2w6NTMKKyM6IGxpYi9jaG9vc2VfZm9udC50Y2w6NTUKIG1zZ2lkICJGb250IEZhbWlseSIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hvb3NlX2ZvbnQudGNsOjc0CisjOiBsaWIvY2hvb3NlX2ZvbnQudGNsOjc2CiBtc2dpZCAiRm9udCBTaXplIgogbXNnc3RyICIiCiAKLSM6IGxpYi9jaG9vc2VfZm9udC50Y2w6OTEKKyM6IGxpYi9jaG9vc2VfZm9udC50Y2w6OTMKIG1zZ2lkICJGb250IEV4YW1wbGUiCiBtc2dzdHIgIiIKIAotIzogbGliL2Nob29zZV9mb250LnRjbDoxMDMKKyM6IGxpYi9jaG9vc2VfZm9udC50Y2w6MTA1CiBtc2dpZCAiIgogIlRoaXMgaXMgZXhhbXBsZSB0ZXh0LlxuIgogIklmIHlvdSBsaWtlIHRoaXMgdGV4dCwgaXQgY2FuIGJlIHlvdXIgZm9udC4iCiBtc2dzdHIgIiIKIAotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoyOAotbXNnaWQgIkdpdCBHdWkiCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo4NyBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjM4NgotbXNnaWQgIkNyZWF0ZSBOZXcgUmVwb3NpdG9yeSIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkzCi1tc2dpZCAiTmV3Li4uIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTAwIGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDcxCi1tc2dpZCAiQ2xvbmUgRXhpc3RpbmcgUmVwb3NpdG9yeSIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjEwNgotbXNnaWQgIkNsb25lLi4uIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTEzIGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTAxNgotbXNnaWQgIk9wZW4gRXhpc3RpbmcgUmVwb3NpdG9yeSIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjExOQotbXNnaWQgIk9wZW4uLi4iCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMzIKLW1zZ2lkICJSZWNlbnQgUmVwb3NpdG9yaWVzIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTM4Ci1tc2dpZCAiT3BlbiBSZWNlbnQgUmVwb3NpdG9yeToiCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDozMDYgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDozMTMKLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MzIwCisjOiBsaWIvb3B0aW9uLnRjbDoxMQogIywgdGNsLWZvcm1hdAotbXNnaWQgIkZhaWxlZCB0byBjcmVhdGUgcmVwb3NpdG9yeSAlczoiCittc2dpZCAiSW52YWxpZCBnbG9iYWwgZW5jb2RpbmcgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjM5MQotbXNnaWQgIkRpcmVjdG9yeToiCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0MjMgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1NTAKLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTA1MgotbXNnaWQgIkdpdCBSZXBvc2l0b3J5IgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDQ4CisjOiBsaWIvb3B0aW9uLnRjbDoxOQogIywgdGNsLWZvcm1hdAotbXNnaWQgIkRpcmVjdG9yeSAlcyBhbHJlYWR5IGV4aXN0cy4iCittc2dpZCAiSW52YWxpZCByZXBvIGVuY29kaW5nICclcyciCiBtc2dzdHIgIiIKIAotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0NTIKKyM6IGxpYi9vcHRpb24udGNsOjExOQorbXNnaWQgIlJlc3RvcmUgRGVmYXVsdHMiCittc2dzdHIgIiIKKworIzogbGliL29wdGlvbi50Y2w6MTIzCittc2dpZCAiU2F2ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxMzMKICMsIHRjbC1mb3JtYXQKLW1zZ2lkICJGaWxlICVzIGFscmVhZHkgZXhpc3RzLiIKK21zZ2lkICIlcyBSZXBvc2l0b3J5IgogbXNnc3RyICIiCiAKLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDY2Ci1tc2dpZCAiQ2xvbmUiCisjOiBsaWIvb3B0aW9uLnRjbDoxMzQKK21zZ2lkICJHbG9iYWwgKEFsbCBSZXBvc2l0b3JpZXMpIgogbXNnc3RyICIiCiAKLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDc5Ci1tc2dpZCAiU291cmNlIExvY2F0aW9uOiIKKyM6IGxpYi9vcHRpb24udGNsOjE0MAorbXNnaWQgIlVzZXIgTmFtZSIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjQ5MAotbXNnaWQgIlRhcmdldCBEaXJlY3Rvcnk6IgorIzogbGliL29wdGlvbi50Y2w6MTQxCittc2dpZCAiRW1haWwgQWRkcmVzcyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjUwMgotbXNnaWQgIkNsb25lIFR5cGU6IgorIzogbGliL29wdGlvbi50Y2w6MTQzCittc2dpZCAiU3VtbWFyaXplIE1lcmdlIENvbW1pdHMiCiBtc2dzdHIgIiIKIAotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1MDgKLW1zZ2lkICJTdGFuZGFyZCAoRmFzdCwgU2VtaS1SZWR1bmRhbnQsIEhhcmRsaW5rcykiCisjOiBsaWIvb3B0aW9uLnRjbDoxNDQKK21zZ2lkICJNZXJnZSBWZXJib3NpdHkiCiBtc2dzdHIgIiIKIAotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1MTQKLW1zZ2lkICJGdWxsIENvcHkgKFNsb3dlciwgUmVkdW5kYW50IEJhY2t1cCkiCisjOiBsaWIvb3B0aW9uLnRjbDoxNDUKK21zZ2lkICJTaG93IERpZmZzdGF0IEFmdGVyIE1lcmdlIgogbXNnc3RyICIiCiAKLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTIwCi1tc2dpZCAiU2hhcmVkIChGYXN0ZXN0LCBOb3QgUmVjb21tZW5kZWQsIE5vIEJhY2t1cCkiCisjOiBsaWIvb3B0aW9uLnRjbDoxNDYKK21zZ2lkICJVc2UgTWVyZ2UgVG9vbCIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjU1NiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjYwMwotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo3NDkgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo4MTkKLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTA1OCBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjEwNjYKKyM6IGxpYi9vcHRpb24udGNsOjE0OAorbXNnaWQgIlRydXN0IEZpbGUgTW9kaWZpY2F0aW9uIFRpbWVzdGFtcHMiCittc2dzdHIgIiIKKworIzogbGliL29wdGlvbi50Y2w6MTQ5Cittc2dpZCAiUHJ1bmUgVHJhY2tpbmcgQnJhbmNoZXMgRHVyaW5nIEZldGNoIgorbXNnc3RyICIiCisKKyM6IGxpYi9vcHRpb24udGNsOjE1MAorbXNnaWQgIk1hdGNoIFRyYWNraW5nIEJyYW5jaGVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9vcHRpb24udGNsOjE1MQorbXNnaWQgIlVzZSBUZXh0Y29udiBGb3IgRGlmZnMgYW5kIEJsYW1lcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNTIKK21zZ2lkICJCbGFtZSBDb3B5IE9ubHkgT24gQ2hhbmdlZCBGaWxlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNTMKK21zZ2lkICJNYXhpbXVtIExlbmd0aCBvZiBSZWNlbnQgUmVwb3NpdG9yaWVzIExpc3QiCittc2dzdHIgIiIKKworIzogbGliL29wdGlvbi50Y2w6MTU0Cittc2dpZCAiTWluaW11bSBMZXR0ZXJzIFRvIEJsYW1lIENvcHkgT24iCittc2dzdHIgIiIKKworIzogbGliL29wdGlvbi50Y2w6MTU1Cittc2dpZCAiQmxhbWUgSGlzdG9yeSBDb250ZXh0IFJhZGl1cyAoZGF5cykiCittc2dzdHIgIiIKKworIzogbGliL29wdGlvbi50Y2w6MTU2Cittc2dpZCAiTnVtYmVyIG9mIERpZmYgQ29udGV4dCBMaW5lcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNTcKK21zZ2lkICJBZGRpdGlvbmFsIERpZmYgUGFyYW1ldGVycyIKK21zZ3N0ciAiIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNTgKK21zZ2lkICJDb21taXQgTWVzc2FnZSBUZXh0IFdpZHRoIgorbXNnc3RyICIiCisKKyM6IGxpYi9vcHRpb24udGNsOjE1OQorbXNnaWQgIk5ldyBCcmFuY2ggTmFtZSBUZW1wbGF0ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvb3B0aW9uLnRjbDoxNjAKK21zZ2lkICJEZWZhdWx0IEZpbGUgQ29udGVudHMgRW5jb2RpbmciCittc2dzdHIgIiIKKworIzogbGliL29wdGlvbi50Y2w6MTYxCittc2dpZCAiV2FybiBiZWZvcmUgY29tbWl0dGluZyB0byBhIGRldGFjaGVkIGhlYWQiCittc2dzdHIgIiIKKworIzogbGliL29wdGlvbi50Y2w6MTYyCittc2dpZCAiU3RhZ2luZyBvZiB1bnRyYWNrZWQgZmlsZXMiCittc2dzdHIgIiIKKworIzogbGliL29wdGlvbi50Y2w6MTYzCittc2dpZCAiU2hvdyB1bnRyYWNrZWQgZmlsZXMiCittc2dzdHIgIiIKKworIzogbGliL29wdGlvbi50Y2w6MTY0Cittc2dpZCAiVGFiIHNwYWNpbmciCittc2dzdHIgIiIKKworIzogbGliL29wdGlvbi50Y2w6MTgyIGxpYi9vcHRpb24udGNsOjE5NyBsaWIvb3B0aW9uLnRjbDoyMjAgbGliL29wdGlvbi50Y2w6MjgyCisjOiBsaWIvZGF0YWJhc2UudGNsOjU3CiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiTm90IGEgR2l0IHJlcG9zaXRvcnk6ICVzIgorbXNnaWQgIiVzOiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjU5MgotbXNnaWQgIlN0YW5kYXJkIG9ubHkgYXZhaWxhYmxlIGZvciBsb2NhbCByZXBvc2l0b3J5LiIKKyM6IGxpYi9vcHRpb24udGNsOjIxMAorbXNnaWQgIkNoYW5nZSIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjU5NgotbXNnaWQgIlNoYXJlZCBvbmx5IGF2YWlsYWJsZSBmb3IgbG9jYWwgcmVwb3NpdG9yeS4iCisjOiBsaWIvb3B0aW9uLnRjbDoyNTQKK21zZ2lkICJTcGVsbGluZyBEaWN0aW9uYXJ5OiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjYxNworIzogbGliL29wdGlvbi50Y2w6Mjg0Cittc2dpZCAiQ2hhbmdlIEZvbnQiCittc2dzdHIgIiIKKworIzogbGliL29wdGlvbi50Y2w6Mjg4CiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiTG9jYXRpb24gJXMgYWxyZWFkeSBleGlzdHMuIgorbXNnaWQgIkNob29zZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjYyOAotbXNnaWQgIkZhaWxlZCB0byBjb25maWd1cmUgb3JpZ2luIgorIzogbGliL29wdGlvbi50Y2w6Mjk0Cittc2dpZCAicHQuIgogbXNnc3RyICIiCiAKLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjQwCi1tc2dpZCAiQ291bnRpbmcgb2JqZWN0cyIKKyM6IGxpYi9vcHRpb24udGNsOjMwOAorbXNnaWQgIlByZWZlcmVuY2VzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjQxCi1tc2dpZCAiYnVja2V0cyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjY2NQotIywgdGNsLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBjb3B5IG9iamVjdHMvaW5mby9hbHRlcm5hdGVzOiAlcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjcwMQotIywgdGNsLWZvcm1hdAotbXNnaWQgIk5vdGhpbmcgdG8gY2xvbmUgZnJvbSAlcy4iCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo3MDMgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5MTcKLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6OTI5Ci1tc2dpZCAiVGhlICdtYXN0ZXInIGJyYW5jaCBoYXMgbm90IGJlZW4gaW5pdGlhbGl6ZWQuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NzE2Ci1tc2dpZCAiSGFyZGxpbmtzIGFyZSB1bmF2YWlsYWJsZS4gIEZhbGxpbmcgYmFjayB0byBjb3B5aW5nLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjcyOAotIywgdGNsLWZvcm1hdAotbXNnaWQgIkNsb25pbmcgZnJvbSAlcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjc1OQotbXNnaWQgIkNvcHlpbmcgb2JqZWN0cyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjc2MAotbXNnaWQgIktpQiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjc4NAotIywgdGNsLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBjb3B5IG9iamVjdDogJXMiCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo3OTQKLW1zZ2lkICJMaW5raW5nIG9iamVjdHMiCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo3OTUKLW1zZ2lkICJvYmplY3RzIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6ODAzCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiVW5hYmxlIHRvIGhhcmRsaW5rIG9iamVjdDogJXMiCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo4NTgKLW1zZ2lkICJDYW5ub3QgZmV0Y2ggYnJhbmNoZXMgYW5kIG9iamVjdHMuICBTZWUgY29uc29sZSBvdXRwdXQgZm9yIGRldGFpbHMuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6ODY5Ci1tc2dpZCAiQ2Fubm90IGZldGNoIHRhZ3MuICBTZWUgY29uc29sZSBvdXRwdXQgZm9yIGRldGFpbHMuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6ODkzCi1tc2dpZCAiQ2Fubm90IGRldGVybWluZSBIRUFELiAgU2VlIGNvbnNvbGUgb3V0cHV0IGZvciBkZXRhaWxzLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkwMgotIywgdGNsLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBjbGVhbnVwICVzIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6OTA4Ci1tc2dpZCAiQ2xvbmUgZmFpbGVkLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkxNQotbXNnaWQgIk5vIGRlZmF1bHQgYnJhbmNoIG9idGFpbmVkLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkyNgotIywgdGNsLWZvcm1hdAotbXNnaWQgIkNhbm5vdCByZXNvbHZlICVzIGFzIGEgY29tbWl0LiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkzOAotbXNnaWQgIkNyZWF0aW5nIHdvcmtpbmcgZGlyZWN0b3J5IgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6OTM5IGxpYi9pbmRleC50Y2w6NjcgbGliL2luZGV4LnRjbDoxMzAKLSM6IGxpYi9pbmRleC50Y2w6MTk4Ci1tc2dpZCAiZmlsZXMiCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5NjgKLW1zZ2lkICJJbml0aWFsIGZpbGUgY2hlY2tvdXQgZmFpbGVkLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjEwMTEKLW1zZ2lkICJPcGVuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTAyMQotbXNnaWQgIlJlcG9zaXRvcnk6IgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTA3MgotIywgdGNsLWZvcm1hdAotbXNnaWQgIkZhaWxlZCB0byBvcGVuIHJlcG9zaXRvcnkgJXM6IgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmV2LnRjbDo1MwotbXNnaWQgIlRoaXMgRGV0YWNoZWQgQ2hlY2tvdXQiCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXYudGNsOjYwCi1tc2dpZCAiUmV2aXNpb24gRXhwcmVzc2lvbjoiCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXYudGNsOjc0Ci1tc2dpZCAiTG9jYWwgQnJhbmNoIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jaG9vc2VfcmV2LnRjbDo3OQotbXNnaWQgIlRyYWNraW5nIEJyYW5jaCIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3Jldi50Y2w6ODQgbGliL2Nob29zZV9yZXYudGNsOjUzOAotbXNnaWQgIlRhZyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3Jldi50Y2w6MzE3Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiSW52YWxpZCByZXZpc2lvbjogJXMiCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXYudGNsOjMzOAotbXNnaWQgIk5vIHJldmlzaW9uIHNlbGVjdGVkLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY2hvb3NlX3Jldi50Y2w6MzQ2Ci1tc2dpZCAiUmV2aXNpb24gZXhwcmVzc2lvbiBpcyBlbXB0eS4iCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXYudGNsOjUzMQotbXNnaWQgIlVwZGF0ZWQiCi1tc2dzdHIgIiIKLQotIzogbGliL2Nob29zZV9yZXYudGNsOjU1OQotbXNnaWQgIlVSTCIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY29tbWl0LnRjbDo5Ci1tc2dpZCAiIgotIlRoZXJlIGlzIG5vdGhpbmcgdG8gYW1lbmQuXG4iCi0iXG4iCi0iWW91IGFyZSBhYm91dCB0byBjcmVhdGUgdGhlIGluaXRpYWwgY29tbWl0LiAgVGhlcmUgaXMgbm8gY29tbWl0IGJlZm9yZSB0aGlzICIKLSJ0byBhbWVuZC5cbiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY29tbWl0LnRjbDoxOAotbXNnaWQgIiIKLSJDYW5ub3QgYW1lbmQgd2hpbGUgbWVyZ2luZy5cbiIKLSJcbiIKLSJZb3UgYXJlIGN1cnJlbnRseSBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UgdGhhdCBoYXMgbm90IGJlZW4gZnVsbHkgIgotImNvbXBsZXRlZC4gIFlvdSBjYW5ub3QgYW1lbmQgdGhlIHByaW9yIGNvbW1pdCB1bmxlc3MgeW91IGZpcnN0IGFib3J0IHRoZSAiCi0iY3VycmVudCBtZXJnZSBhY3Rpdml0eS5cbiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY29tbWl0LnRjbDo0OAotbXNnaWQgIkVycm9yIGxvYWRpbmcgY29tbWl0IGRhdGEgZm9yIGFtZW5kOiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY29tbWl0LnRjbDo3NQotbXNnaWQgIlVuYWJsZSB0byBvYnRhaW4geW91ciBpZGVudGl0eToiCi1tc2dzdHIgIiIKLQotIzogbGliL2NvbW1pdC50Y2w6ODAKLW1zZ2lkICJJbnZhbGlkIEdJVF9DT01NSVRURVJfSURFTlQ6IgotbXNnc3RyICIiCi0KLSM6IGxpYi9jb21taXQudGNsOjEyOQotIywgdGNsLWZvcm1hdAotbXNnaWQgIndhcm5pbmc6IFRjbCBkb2VzIG5vdCBzdXBwb3J0IGVuY29kaW5nICclcycuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jb21taXQudGNsOjE0OQotbXNnaWQgIiIKLSJMYXN0IHNjYW5uZWQgc3RhdGUgZG9lcyBub3QgbWF0Y2ggcmVwb3NpdG9yeSBzdGF0ZS5cbiIKLSJcbiIKLSJBbm90aGVyIEdpdCBwcm9ncmFtIGhhcyBtb2RpZmllZCB0aGlzIHJlcG9zaXRvcnkgc2luY2UgdGhlIGxhc3Qgc2Nhbi4gIEEgIgotInJlc2NhbiBtdXN0IGJlIHBlcmZvcm1lZCBiZWZvcmUgYW5vdGhlciBjb21taXQgY2FuIGJlIGNyZWF0ZWQuXG4iCi0iXG4iCi0iVGhlIHJlc2NhbiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc3RhcnRlZCBub3cuXG4iCi1tc2dzdHIgIiIKLQotIzogbGliL2NvbW1pdC50Y2w6MTcyCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiIgotIlVubWVyZ2VkIGZpbGVzIGNhbm5vdCBiZSBjb21taXR0ZWQuXG4iCi0iXG4iCi0iRmlsZSAlcyBoYXMgbWVyZ2UgY29uZmxpY3RzLiAgWW91IG11c3QgcmVzb2x2ZSB0aGVtIGFuZCBzdGFnZSB0aGUgZmlsZSAiCi0iYmVmb3JlIGNvbW1pdHRpbmcuXG4iCi1tc2dzdHIgIiIKLQotIzogbGliL2NvbW1pdC50Y2w6MTgwCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiIgotIlVua25vd24gZmlsZSBzdGF0ZSAlcyBkZXRlY3RlZC5cbiIKLSJcbiIKLSJGaWxlICVzIGNhbm5vdCBiZSBjb21taXR0ZWQgYnkgdGhpcyBwcm9ncmFtLlxuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jb21taXQudGNsOjE4OAotbXNnaWQgIiIKLSJObyBjaGFuZ2VzIHRvIGNvbW1pdC5cbiIKLSJcbiIKLSJZb3UgbXVzdCBzdGFnZSBhdCBsZWFzdCAxIGZpbGUgYmVmb3JlIHlvdSBjYW4gY29tbWl0LlxuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jb21taXQudGNsOjIwMwotbXNnaWQgIiIKLSJQbGVhc2Ugc3VwcGx5IGEgY29tbWl0IG1lc3NhZ2UuXG4iCi0iXG4iCi0iQSBnb29kIGNvbW1pdCBtZXNzYWdlIGhhcyB0aGUgZm9sbG93aW5nIGZvcm1hdDpcbiIKLSJcbiIKLSItIEZpcnN0IGxpbmU6IERlc2NyaWJlIGluIG9uZSBzZW50ZW5jZSB3aGF0IHlvdSBkaWQuXG4iCi0iLSBTZWNvbmQgbGluZTogQmxhbmtcbiIKLSItIFJlbWFpbmluZyBsaW5lczogRGVzY3JpYmUgd2h5IHRoaXMgY2hhbmdlIGlzIGdvb2QuXG4iCi1tc2dzdHIgIiIKLQotIzogbGliL2NvbW1pdC50Y2w6MjM0Ci1tc2dpZCAiQ2FsbGluZyBwcmUtY29tbWl0IGhvb2suLi4iCi1tc2dzdHIgIiIKLQotIzogbGliL2NvbW1pdC50Y2w6MjQ5Ci1tc2dpZCAiQ29tbWl0IGRlY2xpbmVkIGJ5IHByZS1jb21taXQgaG9vay4iCi1tc2dzdHIgIiIKLQotIzogbGliL2NvbW1pdC50Y2w6MjcyCi1tc2dpZCAiQ2FsbGluZyBjb21taXQtbXNnIGhvb2suLi4iCi1tc2dzdHIgIiIKLQotIzogbGliL2NvbW1pdC50Y2w6Mjg3Ci1tc2dpZCAiQ29tbWl0IGRlY2xpbmVkIGJ5IGNvbW1pdC1tc2cgaG9vay4iCi1tc2dzdHIgIiIKLQotIzogbGliL2NvbW1pdC50Y2w6MzAwCi1tc2dpZCAiQ29tbWl0dGluZyBjaGFuZ2VzLi4uIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jb21taXQudGNsOjMxNgotbXNnaWQgIndyaXRlLXRyZWUgZmFpbGVkOiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY29tbWl0LnRjbDozMTcgbGliL2NvbW1pdC50Y2w6MzYxIGxpYi9jb21taXQudGNsOjM4MgotbXNnaWQgIkNvbW1pdCBmYWlsZWQuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jb21taXQudGNsOjMzNAotIywgdGNsLWZvcm1hdAotbXNnaWQgIkNvbW1pdCAlcyBhcHBlYXJzIHRvIGJlIGNvcnJ1cHQiCi1tc2dzdHIgIiIKLQotIzogbGliL2NvbW1pdC50Y2w6MzM5Ci1tc2dpZCAiIgotIk5vIGNoYW5nZXMgdG8gY29tbWl0LlxuIgotIlxuIgotIk5vIGZpbGVzIHdlcmUgbW9kaWZpZWQgYnkgdGhpcyBjb21taXQgYW5kIGl0IHdhcyBub3QgYSBtZXJnZSBjb21taXQuXG4iCi0iXG4iCi0iQSByZXNjYW4gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN0YXJ0ZWQgbm93LlxuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9jb21taXQudGNsOjM0NgotbXNnaWQgIk5vIGNoYW5nZXMgdG8gY29tbWl0LiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY29tbWl0LnRjbDozNjAKLW1zZ2lkICJjb21taXQtdHJlZSBmYWlsZWQ6IgotbXNnc3RyICIiCi0KLSM6IGxpYi9jb21taXQudGNsOjM4MQotbXNnaWQgInVwZGF0ZS1yZWYgZmFpbGVkOiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY29tbWl0LnRjbDo0NjkKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJDcmVhdGVkIGNvbW1pdCAlczogJXMiCi1tc2dzdHIgIiIKLQotIzogbGliL2NvbnNvbGUudGNsOjU5Ci1tc2dpZCAiV29ya2luZy4uLiBwbGVhc2Ugd2FpdC4uLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY29uc29sZS50Y2w6MTg2Ci1tc2dpZCAiU3VjY2VzcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvY29uc29sZS50Y2w6MjAwCi1tc2dpZCAiRXJyb3I6IENvbW1hbmQgRmFpbGVkIgotbXNnc3RyICIiCi0KLSM6IGxpYi9kYXRhYmFzZS50Y2w6NDMKLW1zZ2lkICJOdW1iZXIgb2YgbG9vc2Ugb2JqZWN0cyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvZGF0YWJhc2UudGNsOjQ0Ci1tc2dpZCAiRGlzayBzcGFjZSB1c2VkIGJ5IGxvb3NlIG9iamVjdHMiCi1tc2dzdHIgIiIKLQotIzogbGliL2RhdGFiYXNlLnRjbDo0NQotbXNnaWQgIk51bWJlciBvZiBwYWNrZWQgb2JqZWN0cyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvZGF0YWJhc2UudGNsOjQ2Ci1tc2dpZCAiTnVtYmVyIG9mIHBhY2tzIgotbXNnc3RyICIiCi0KLSM6IGxpYi9kYXRhYmFzZS50Y2w6NDcKLW1zZ2lkICJEaXNrIHNwYWNlIHVzZWQgYnkgcGFja2VkIG9iamVjdHMiCi1tc2dzdHIgIiIKLQotIzogbGliL2RhdGFiYXNlLnRjbDo0OAotbXNnaWQgIlBhY2tlZCBvYmplY3RzIHdhaXRpbmcgZm9yIHBydW5pbmciCi1tc2dzdHIgIiIKLQotIzogbGliL2RhdGFiYXNlLnRjbDo0OQotbXNnaWQgIkdhcmJhZ2UgZmlsZXMiCi1tc2dzdHIgIiIKLQotIzogbGliL2RhdGFiYXNlLnRjbDo3MgotbXNnaWQgIkNvbXByZXNzaW5nIHRoZSBvYmplY3QgZGF0YWJhc2UiCi1tc2dzdHIgIiIKLQotIzogbGliL2RhdGFiYXNlLnRjbDo4MwotbXNnaWQgIlZlcmlmeWluZyB0aGUgb2JqZWN0IGRhdGFiYXNlIHdpdGggZnNjay1vYmplY3RzIgotbXNnc3RyICIiCi0KLSM6IGxpYi9kYXRhYmFzZS50Y2w6MTA3Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiIgotIlRoaXMgcmVwb3NpdG9yeSBjdXJyZW50bHkgaGFzIGFwcHJveGltYXRlbHkgJWkgbG9vc2Ugb2JqZWN0cy5cbiIKLSJcbiIKLSJUbyBtYWludGFpbiBvcHRpbWFsIHBlcmZvcm1hbmNlIGl0IGlzIHN0cm9uZ2x5IHJlY29tbWVuZGVkIHRoYXQgeW91IGNvbXByZXNzICIKLSJ0aGUgZGF0YWJhc2UuXG4iCi0iXG4iCi0iQ29tcHJlc3MgdGhlIGRhdGFiYXNlIG5vdz8iCi1tc2dzdHIgIiIKLQotIzogbGliL2RhdGUudGNsOjI1Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiSW52YWxpZCBkYXRlIGZyb20gR2l0OiAlcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvZGlmZi50Y2w6NjQKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICIiCi0iTm8gZGlmZmVyZW5jZXMgZGV0ZWN0ZWQuXG4iCi0iXG4iCi0iJXMgaGFzIG5vIGNoYW5nZXMuXG4iCi0iXG4iCi0iVGhlIG1vZGlmaWNhdGlvbiBkYXRlIG9mIHRoaXMgZmlsZSB3YXMgdXBkYXRlZCBieSBhbm90aGVyIGFwcGxpY2F0aW9uLCBidXQgIgotInRoZSBjb250ZW50IHdpdGhpbiB0aGUgZmlsZSB3YXMgbm90IGNoYW5nZWQuXG4iCi0iXG4iCi0iQSByZXNjYW4gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN0YXJ0ZWQgdG8gZmluZCBvdGhlciBmaWxlcyB3aGljaCBtYXkgaGF2ZSAiCi0idGhlIHNhbWUgc3RhdGUuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9kaWZmLnRjbDoxMDQKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJMb2FkaW5nIGRpZmYgb2YgJXMuLi4iCi1tc2dzdHIgIiIKLQotIzogbGliL2RpZmYudGNsOjEyNQotbXNnaWQgIiIKLSJMT0NBTDogZGVsZXRlZFxuIgotIlJFTU9URTpcbiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvZGlmZi50Y2w6MTMwCi1tc2dpZCAiIgotIlJFTU9URTogZGVsZXRlZFxuIgotIkxPQ0FMOlxuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9kaWZmLnRjbDoxMzcKLW1zZ2lkICJMT0NBTDpcbiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvZGlmZi50Y2w6MTQwCi1tc2dpZCAiUkVNT1RFOlxuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9kaWZmLnRjbDoyMDIgbGliL2RpZmYudGNsOjMxOQotIywgdGNsLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBkaXNwbGF5ICVzIgotbXNnc3RyICIiCi0KLSM6IGxpYi9kaWZmLnRjbDoyMDMKLW1zZ2lkICJFcnJvciBsb2FkaW5nIGZpbGU6IgotbXNnc3RyICIiCi0KLSM6IGxpYi9kaWZmLnRjbDoyMTAKLW1zZ2lkICJHaXQgUmVwb3NpdG9yeSAoc3VicHJvamVjdCkiCi1tc2dzdHIgIiIKLQotIzogbGliL2RpZmYudGNsOjIyMgotbXNnaWQgIiogQmluYXJ5IGZpbGUgKG5vdCBzaG93aW5nIGNvbnRlbnQpLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvZGlmZi50Y2w6MjI3Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiIgotIiogVW50cmFja2VkIGZpbGUgaXMgJWQgYnl0ZXMuXG4iCi0iKiBTaG93aW5nIG9ubHkgZmlyc3QgJWQgYnl0ZXMuXG4iCi1tc2dzdHIgIiIKLQotIzogbGliL2RpZmYudGNsOjIzMwotIywgdGNsLWZvcm1hdAotbXNnaWQgIiIKLSJcbiIKLSIqIFVudHJhY2tlZCBmaWxlIGNsaXBwZWQgaGVyZSBieSAlcy5cbiIKLSIqIFRvIHNlZSB0aGUgZW50aXJlIGZpbGUsIHVzZSBhbiBleHRlcm5hbCBlZGl0b3IuXG4iCi1tc2dzdHIgIiIKLQotIzogbGliL2RpZmYudGNsOjQ4MgotbXNnaWQgIkZhaWxlZCB0byB1bnN0YWdlIHNlbGVjdGVkIGh1bmsuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9kaWZmLnRjbDo0ODkKLW1zZ2lkICJGYWlsZWQgdG8gc3RhZ2Ugc2VsZWN0ZWQgaHVuay4iCi1tc2dzdHIgIiIKLQotIzogbGliL2RpZmYudGNsOjU2OAotbXNnaWQgIkZhaWxlZCB0byB1bnN0YWdlIHNlbGVjdGVkIGxpbmUuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9kaWZmLnRjbDo1NzYKLW1zZ2lkICJGYWlsZWQgdG8gc3RhZ2Ugc2VsZWN0ZWQgbGluZS4iCisjOiBsaWIvb3B0aW9uLnRjbDozNDUKK21zZ2lkICJGYWlsZWQgdG8gY29tcGxldGVseSBzYXZlIG9wdGlvbnM6IgogbXNnc3RyICIiCiAKICM6IGxpYi9lbmNvZGluZy50Y2w6NDQzCkBAIC0xNTY4LDE4NiArMTM3NiwzOSBAQAogbXNnaWQgIk90aGVyIgogbXNnc3RyICIiCiAKLSM6IGxpYi9lcnJvci50Y2w6MjAgbGliL2Vycm9yLnRjbDoxMTQKLW1zZ2lkICJlcnJvciIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvZXJyb3IudGNsOjM2Ci1tc2dpZCAid2FybmluZyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvZXJyb3IudGNsOjk0Ci1tc2dpZCAiWW91IG11c3QgY29ycmVjdCB0aGUgYWJvdmUgZXJyb3JzIGJlZm9yZSBjb21taXR0aW5nLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvaW5kZXgudGNsOjYKLW1zZ2lkICJVbmFibGUgdG8gdW5sb2NrIHRoZSBpbmRleC4iCi1tc2dzdHIgIiIKLQotIzogbGliL2luZGV4LnRjbDoxNQotbXNnaWQgIkluZGV4IEVycm9yIgotbXNnc3RyICIiCi0KLSM6IGxpYi9pbmRleC50Y2w6MTcKLW1zZ2lkICIiCi0iVXBkYXRpbmcgdGhlIEdpdCBpbmRleCBmYWlsZWQuICBBIHJlc2NhbiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc3RhcnRlZCB0byAiCi0icmVzeW5jaHJvbml6ZSBnaXQtZ3VpLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvaW5kZXgudGNsOjI4Ci1tc2dpZCAiQ29udGludWUiCi1tc2dzdHIgIiIKLQotIzogbGliL2luZGV4LnRjbDozMQotbXNnaWQgIlVubG9jayBJbmRleCIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvaW5kZXgudGNsOjI4OQorIzogbGliL3Rvb2xzLnRjbDo3NgogIywgdGNsLWZvcm1hdAotbXNnaWQgIlVuc3RhZ2luZyAlcyBmcm9tIGNvbW1pdCIKK21zZ2lkICJSdW5uaW5nICVzIHJlcXVpcmVzIGEgc2VsZWN0ZWQgZmlsZS4iCiBtc2dzdHIgIiIKIAotIzogbGliL2luZGV4LnRjbDozMjgKLW1zZ2lkICJSZWFkeSB0byBjb21taXQuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9pbmRleC50Y2w6MzQxCisjOiBsaWIvdG9vbHMudGNsOjkyCiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiQWRkaW5nICVzIgorbXNnaWQgIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBydW4gJTEkcyBvbiBmaWxlIFwiJTIkc1wiPyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvaW5kZXgudGNsOjM5OAorIzogbGliL3Rvb2xzLnRjbDo5NgogIywgdGNsLWZvcm1hdAotbXNnaWQgIlJldmVydCBjaGFuZ2VzIGluIGZpbGUgJXM/IgorbXNnaWQgIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBydW4gJXM/IgogbXNnc3RyICIiCiAKLSM6IGxpYi9pbmRleC50Y2w6NDAwCisjOiBsaWIvdG9vbHMudGNsOjExOAogIywgdGNsLWZvcm1hdAotbXNnaWQgIlJldmVydCBjaGFuZ2VzIGluIHRoZXNlICVpIGZpbGVzPyIKK21zZ2lkICJUb29sOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvaW5kZXgudGNsOjQwOAotbXNnaWQgIkFueSB1bnN0YWdlZCBjaGFuZ2VzIHdpbGwgYmUgcGVybWFuZW50bHkgbG9zdCBieSB0aGUgcmV2ZXJ0LiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvaW5kZXgudGNsOjQxMQotbXNnaWQgIkRvIE5vdGhpbmciCi1tc2dzdHIgIiIKLQotIzogbGliL2luZGV4LnRjbDo0MjkKLW1zZ2lkICJSZXZlcnRpbmcgc2VsZWN0ZWQgZmlsZXMiCi1tc2dzdHIgIiIKLQotIzogbGliL2luZGV4LnRjbDo0MzMKKyM6IGxpYi90b29scy50Y2w6MTE5CiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiUmV2ZXJ0aW5nICVzIgorbXNnaWQgIlJ1bm5pbmc6ICVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9tZXJnZS50Y2w6MTMKLW1zZ2lkICIiCi0iQ2Fubm90IG1lcmdlIHdoaWxlIGFtZW5kaW5nLlxuIgotIlxuIgotIllvdSBtdXN0IGZpbmlzaCBhbWVuZGluZyB0aGlzIGNvbW1pdCBiZWZvcmUgc3RhcnRpbmcgYW55IHR5cGUgb2YgbWVyZ2UuXG4iCi1tc2dzdHIgIiIKLQotIzogbGliL21lcmdlLnRjbDoyNwotbXNnaWQgIiIKLSJMYXN0IHNjYW5uZWQgc3RhdGUgZG9lcyBub3QgbWF0Y2ggcmVwb3NpdG9yeSBzdGF0ZS5cbiIKLSJcbiIKLSJBbm90aGVyIEdpdCBwcm9ncmFtIGhhcyBtb2RpZmllZCB0aGlzIHJlcG9zaXRvcnkgc2luY2UgdGhlIGxhc3Qgc2Nhbi4gIEEgIgotInJlc2NhbiBtdXN0IGJlIHBlcmZvcm1lZCBiZWZvcmUgYSBtZXJnZSBjYW4gYmUgcGVyZm9ybWVkLlxuIgotIlxuIgotIlRoZSByZXNjYW4gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN0YXJ0ZWQgbm93LlxuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9tZXJnZS50Y2w6NDUKKyM6IGxpYi90b29scy50Y2w6MTU4CiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhIGNvbmZsaWN0ZWQgbWVyZ2UuXG4iCi0iXG4iCi0iRmlsZSAlcyBoYXMgbWVyZ2UgY29uZmxpY3RzLlxuIgotIlxuIgotIllvdSBtdXN0IHJlc29sdmUgdGhlbSwgc3RhZ2UgdGhlIGZpbGUsIGFuZCBjb21taXQgdG8gY29tcGxldGUgdGhlIGN1cnJlbnQgIgotIm1lcmdlLiAgT25seSB0aGVuIGNhbiB5b3UgYmVnaW4gYW5vdGhlciBtZXJnZS5cbiIKK21zZ2lkICJUb29sIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHk6ICVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9tZXJnZS50Y2w6NTUKKyM6IGxpYi90b29scy50Y2w6MTYwCiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhIGNoYW5nZS5cbiIKLSJcbiIKLSJGaWxlICVzIGlzIG1vZGlmaWVkLlxuIgotIlxuIgotIllvdSBzaG91bGQgY29tcGxldGUgdGhlIGN1cnJlbnQgY29tbWl0IGJlZm9yZSBzdGFydGluZyBhIG1lcmdlLiAgRG9pbmcgc28gIgotIndpbGwgaGVscCB5b3UgYWJvcnQgYSBmYWlsZWQgbWVyZ2UsIHNob3VsZCB0aGUgbmVlZCBhcmlzZS5cbiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvbWVyZ2UudGNsOjEwNwotIywgdGNsLWZvcm1hdAotbXNnaWQgIiVzIG9mICVzIgotbXNnc3RyICIiCi0KLSM6IGxpYi9tZXJnZS50Y2w6MTIwCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiTWVyZ2luZyAlcyBhbmQgJXMuLi4iCi1tc2dzdHIgIiIKLQotIzogbGliL21lcmdlLnRjbDoxMzEKLW1zZ2lkICJNZXJnZSBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5LiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvbWVyZ2UudGNsOjEzMwotbXNnaWQgIk1lcmdlIGZhaWxlZC4gIENvbmZsaWN0IHJlc29sdXRpb24gaXMgcmVxdWlyZWQuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9tZXJnZS50Y2w6MTU4Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiTWVyZ2UgSW50byAlcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvbWVyZ2UudGNsOjE3NwotbXNnaWQgIlJldmlzaW9uIFRvIE1lcmdlIgotbXNnc3RyICIiCi0KLSM6IGxpYi9tZXJnZS50Y2w6MjEyCi1tc2dpZCAiIgotIkNhbm5vdCBhYm9ydCB3aGlsZSBhbWVuZGluZy5cbiIKLSJcbiIKLSJZb3UgbXVzdCBmaW5pc2ggYW1lbmRpbmcgdGhpcyBjb21taXQuXG4iCi1tc2dzdHIgIiIKLQotIzogbGliL21lcmdlLnRjbDoyMjIKLW1zZ2lkICIiCi0iQWJvcnQgbWVyZ2U/XG4iCi0iXG4iCi0iQWJvcnRpbmcgdGhlIGN1cnJlbnQgbWVyZ2Ugd2lsbCBjYXVzZSAqQUxMKiB1bmNvbW1pdHRlZCBjaGFuZ2VzIHRvIGJlIGxvc3QuXG4iCi0iXG4iCi0iQ29udGludWUgd2l0aCBhYm9ydGluZyB0aGUgY3VycmVudCBtZXJnZT8iCi1tc2dzdHIgIiIKLQotIzogbGliL21lcmdlLnRjbDoyMjgKLW1zZ2lkICIiCi0iUmVzZXQgY2hhbmdlcz9cbiIKLSJcbiIKLSJSZXNldHRpbmcgdGhlIGNoYW5nZXMgd2lsbCBjYXVzZSAqQUxMKiB1bmNvbW1pdHRlZCBjaGFuZ2VzIHRvIGJlIGxvc3QuXG4iCi0iXG4iCi0iQ29udGludWUgd2l0aCByZXNldHRpbmcgdGhlIGN1cnJlbnQgY2hhbmdlcz8iCi1tc2dzdHIgIiIKLQotIzogbGliL21lcmdlLnRjbDoyMzkKLW1zZ2lkICJBYm9ydGluZyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvbWVyZ2UudGNsOjIzOQotbXNnaWQgImZpbGVzIHJlc2V0IgotbXNnc3RyICIiCi0KLSM6IGxpYi9tZXJnZS50Y2w6MjY3Ci1tc2dpZCAiQWJvcnQgZmFpbGVkLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvbWVyZ2UudGNsOjI2OQotbXNnaWQgIkFib3J0IGNvbXBsZXRlZC4gIFJlYWR5LiIKK21zZ2lkICJUb29sIGZhaWxlZDogJXMiCiBtc2dzdHIgIiIKIAogIzogbGliL21lcmdldG9vbC50Y2w6OApAQCAtMTc5MCwyOCArMTQ1MSwyOCBAQAogbXNnaWQgIkNvbmZsaWN0IGZpbGUgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgIiIKIAotIzogbGliL21lcmdldG9vbC50Y2w6MjY0CisjOiBsaWIvbWVyZ2V0b29sLnRjbDoyNDYKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJOb3QgYSBHVUkgbWVyZ2UgdG9vbDogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvbWVyZ2V0b29sLnRjbDoyNjgKKyM6IGxpYi9tZXJnZXRvb2wudGNsOjI3NQogIywgdGNsLWZvcm1hdAogbXNnaWQgIlVuc3VwcG9ydGVkIG1lcmdlIHRvb2wgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvbWVyZ2V0b29sLnRjbDozMDMKKyM6IGxpYi9tZXJnZXRvb2wudGNsOjMxMAogbXNnaWQgIk1lcmdlIHRvb2wgaXMgYWxyZWFkeSBydW5uaW5nLCB0ZXJtaW5hdGUgaXQ/IgogbXNnc3RyICIiCiAKLSM6IGxpYi9tZXJnZXRvb2wudGNsOjMyMworIzogbGliL21lcmdldG9vbC50Y2w6MzMwCiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiIgogIkVycm9yIHJldHJpZXZpbmcgdmVyc2lvbnM6XG4iCiAiJXMiCiBtc2dzdHIgIiIKIAotIzogbGliL21lcmdldG9vbC50Y2w6MzQzCisjOiBsaWIvbWVyZ2V0b29sLnRjbDozNTAKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IHN0YXJ0IHRoZSBtZXJnZSB0b29sOlxuIgpAQCAtMTgxOSwyNTkgKzE0ODAsMTc3IEBACiAiJXMiCiBtc2dzdHIgIiIKIAotIzogbGliL21lcmdldG9vbC50Y2w6MzQ3CisjOiBsaWIvbWVyZ2V0b29sLnRjbDozNTQKIG1zZ2lkICJSdW5uaW5nIG1lcmdlIHRvb2wuLi4iCiBtc2dzdHIgIiIKIAotIzogbGliL21lcmdldG9vbC50Y2w6Mzc1IGxpYi9tZXJnZXRvb2wudGNsOjM4MworIzogbGliL21lcmdldG9vbC50Y2w6MzgyIGxpYi9tZXJnZXRvb2wudGNsOjM5MAogbXNnaWQgIk1lcmdlIHRvb2wgZmFpbGVkLiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvb3B0aW9uLnRjbDoxMQorIzogbGliL3Rvb2xzX2RsZy50Y2w6MjIKICMsIHRjbC1mb3JtYXQKLW1zZ2lkICJJbnZhbGlkIGdsb2JhbCBlbmNvZGluZyAnJXMnIgorbXNnaWQgIiVzICglcyk6IEFkZCBUb29sIgogbXNnc3RyICIiCiAKLSM6IGxpYi9vcHRpb24udGNsOjE5CisjOiBsaWIvdG9vbHNfZGxnLnRjbDoyOAorbXNnaWQgIkFkZCBOZXcgVG9vbCBDb21tYW5kIgorbXNnc3RyICIiCisKKyM6IGxpYi90b29sc19kbGcudGNsOjM0Cittc2dpZCAiQWRkIGdsb2JhbGx5IgorbXNnc3RyICIiCisKKyM6IGxpYi90b29sc19kbGcudGNsOjQ2Cittc2dpZCAiVG9vbCBEZXRhaWxzIgorbXNnc3RyICIiCisKKyM6IGxpYi90b29sc19kbGcudGNsOjQ5Cittc2dpZCAiVXNlICcvJyBzZXBhcmF0b3JzIHRvIGNyZWF0ZSBhIHN1Ym1lbnUgdHJlZToiCittc2dzdHIgIiIKKworIzogbGliL3Rvb2xzX2RsZy50Y2w6NjAKK21zZ2lkICJDb21tYW5kOiIKK21zZ3N0ciAiIgorCisjOiBsaWIvdG9vbHNfZGxnLnRjbDo3MQorbXNnaWQgIlNob3cgYSBkaWFsb2cgYmVmb3JlIHJ1bm5pbmciCittc2dzdHIgIiIKKworIzogbGliL3Rvb2xzX2RsZy50Y2w6NzcKK21zZ2lkICJBc2sgdGhlIHVzZXIgdG8gc2VsZWN0IGEgcmV2aXNpb24gKHNldHMgJFJFVklTSU9OKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvdG9vbHNfZGxnLnRjbDo4MgorbXNnaWQgIkFzayB0aGUgdXNlciBmb3IgYWRkaXRpb25hbCBhcmd1bWVudHMgKHNldHMgJEFSR1MpIgorbXNnc3RyICIiCisKKyM6IGxpYi90b29sc19kbGcudGNsOjg5Cittc2dpZCAiRG9uJ3Qgc2hvdyB0aGUgY29tbWFuZCBvdXRwdXQgd2luZG93IgorbXNnc3RyICIiCisKKyM6IGxpYi90b29sc19kbGcudGNsOjk0Cittc2dpZCAiUnVuIG9ubHkgaWYgYSBkaWZmIGlzIHNlbGVjdGVkICgkRklMRU5BTUUgbm90IGVtcHR5KSIKK21zZ3N0ciAiIgorCisjOiBsaWIvdG9vbHNfZGxnLnRjbDoxMTgKK21zZ2lkICJQbGVhc2Ugc3VwcGx5IGEgbmFtZSBmb3IgdGhlIHRvb2wuIgorbXNnc3RyICIiCisKKyM6IGxpYi90b29sc19kbGcudGNsOjEyNgogIywgdGNsLWZvcm1hdAotbXNnaWQgIkludmFsaWQgcmVwbyBlbmNvZGluZyAnJXMnIgorbXNnaWQgIlRvb2wgJyVzJyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgIiIKIAotIzogbGliL29wdGlvbi50Y2w6MTE3Ci1tc2dpZCAiUmVzdG9yZSBEZWZhdWx0cyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxMjEKLW1zZ2lkICJTYXZlIgotbXNnc3RyICIiCi0KLSM6IGxpYi9vcHRpb24udGNsOjEzMQorIzogbGliL3Rvb2xzX2RsZy50Y2w6MTQ4CiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiJXMgUmVwb3NpdG9yeSIKK21zZ2lkICIiCisiQ291bGQgbm90IGFkZCB0b29sOlxuIgorIiVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9vcHRpb24udGNsOjEzMgotbXNnaWQgIkdsb2JhbCAoQWxsIFJlcG9zaXRvcmllcykiCi1tc2dzdHIgIiIKLQotIzogbGliL29wdGlvbi50Y2w6MTM4Ci1tc2dpZCAiVXNlciBOYW1lIgotbXNnc3RyICIiCi0KLSM6IGxpYi9vcHRpb24udGNsOjEzOQotbXNnaWQgIkVtYWlsIEFkZHJlc3MiCi1tc2dzdHIgIiIKLQotIzogbGliL29wdGlvbi50Y2w6MTQxCi1tc2dpZCAiU3VtbWFyaXplIE1lcmdlIENvbW1pdHMiCi1tc2dzdHIgIiIKLQotIzogbGliL29wdGlvbi50Y2w6MTQyCi1tc2dpZCAiTWVyZ2UgVmVyYm9zaXR5IgotbXNnc3RyICIiCi0KLSM6IGxpYi9vcHRpb24udGNsOjE0MwotbXNnaWQgIlNob3cgRGlmZnN0YXQgQWZ0ZXIgTWVyZ2UiCi1tc2dzdHIgIiIKLQotIzogbGliL29wdGlvbi50Y2w6MTQ0Ci1tc2dpZCAiVXNlIE1lcmdlIFRvb2wiCi1tc2dzdHIgIiIKLQotIzogbGliL29wdGlvbi50Y2w6MTQ2Ci1tc2dpZCAiVHJ1c3QgRmlsZSBNb2RpZmljYXRpb24gVGltZXN0YW1wcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxNDcKLW1zZ2lkICJQcnVuZSBUcmFja2luZyBCcmFuY2hlcyBEdXJpbmcgRmV0Y2giCi1tc2dzdHIgIiIKLQotIzogbGliL29wdGlvbi50Y2w6MTQ4Ci1tc2dpZCAiTWF0Y2ggVHJhY2tpbmcgQnJhbmNoZXMiCi1tc2dzdHIgIiIKLQotIzogbGliL29wdGlvbi50Y2w6MTQ5Ci1tc2dpZCAiQmxhbWUgQ29weSBPbmx5IE9uIENoYW5nZWQgRmlsZXMiCi1tc2dzdHIgIiIKLQotIzogbGliL29wdGlvbi50Y2w6MTUwCi1tc2dpZCAiTWluaW11bSBMZXR0ZXJzIFRvIEJsYW1lIENvcHkgT24iCi1tc2dzdHIgIiIKLQotIzogbGliL29wdGlvbi50Y2w6MTUxCi1tc2dpZCAiQmxhbWUgSGlzdG9yeSBDb250ZXh0IFJhZGl1cyAoZGF5cykiCi1tc2dzdHIgIiIKLQotIzogbGliL29wdGlvbi50Y2w6MTUyCi1tc2dpZCAiTnVtYmVyIG9mIERpZmYgQ29udGV4dCBMaW5lcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxNTMKLW1zZ2lkICJDb21taXQgTWVzc2FnZSBUZXh0IFdpZHRoIgotbXNnc3RyICIiCi0KLSM6IGxpYi9vcHRpb24udGNsOjE1NAotbXNnaWQgIk5ldyBCcmFuY2ggTmFtZSBUZW1wbGF0ZSIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvb3B0aW9uLnRjbDoxNTUKLW1zZ2lkICJEZWZhdWx0IEZpbGUgQ29udGVudHMgRW5jb2RpbmciCi1tc2dzdHIgIiIKLQotIzogbGliL29wdGlvbi50Y2w6MjAzCi1tc2dpZCAiQ2hhbmdlIgotbXNnc3RyICIiCi0KLSM6IGxpYi9vcHRpb24udGNsOjIzMAotbXNnaWQgIlNwZWxsaW5nIERpY3Rpb25hcnk6IgotbXNnc3RyICIiCi0KLSM6IGxpYi9vcHRpb24udGNsOjI1NAotbXNnaWQgIkNoYW5nZSBGb250IgotbXNnc3RyICIiCi0KLSM6IGxpYi9vcHRpb24udGNsOjI1OAorIzogbGliL3Rvb2xzX2RsZy50Y2w6MTg3CiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiQ2hvb3NlICVzIgorbXNnaWQgIiVzICglcyk6IFJlbW92ZSBUb29sIgogbXNnc3RyICIiCiAKLSM6IGxpYi9vcHRpb24udGNsOjI2NAotbXNnaWQgInB0LiIKKyM6IGxpYi90b29sc19kbGcudGNsOjE5MworbXNnaWQgIlJlbW92ZSBUb29sIENvbW1hbmRzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9vcHRpb24udGNsOjI3OAotbXNnaWQgIlByZWZlcmVuY2VzIgorIzogbGliL3Rvb2xzX2RsZy50Y2w6MTk4Cittc2dpZCAiUmVtb3ZlIgogbXNnc3RyICIiCiAKLSM6IGxpYi9vcHRpb24udGNsOjMxNAotbXNnaWQgIkZhaWxlZCB0byBjb21wbGV0ZWx5IHNhdmUgb3B0aW9uczoiCisjOiBsaWIvdG9vbHNfZGxnLnRjbDoyMzEKK21zZ2lkICIoQmx1ZSBkZW5vdGVzIHJlcG9zaXRvcnktbG9jYWwgdG9vbHMpIgogbXNnc3RyICIiCiAKLSM6IGxpYi9yZW1vdGUudGNsOjE2MwotbXNnaWQgIlJlbW92ZSBSZW1vdGUiCi1tc2dzdHIgIiIKLQotIzogbGliL3JlbW90ZS50Y2w6MTY4Ci1tc2dpZCAiUHJ1bmUgZnJvbSIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvcmVtb3RlLnRjbDoxNzMKLW1zZ2lkICJGZXRjaCBmcm9tIgotbXNnc3RyICIiCi0KLSM6IGxpYi9yZW1vdGUudGNsOjIxNQotbXNnaWQgIlB1c2ggdG8iCi1tc2dzdHIgIiIKLQotIzogbGliL3JlbW90ZV9hZGQudGNsOjE5Ci1tc2dpZCAiQWRkIFJlbW90ZSIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvcmVtb3RlX2FkZC50Y2w6MjQKLW1zZ2lkICJBZGQgTmV3IFJlbW90ZSIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvcmVtb3RlX2FkZC50Y2w6MjggbGliL3Rvb2xzX2RsZy50Y2w6MzYKLW1zZ2lkICJBZGQiCi1tc2dzdHIgIiIKLQotIzogbGliL3JlbW90ZV9hZGQudGNsOjM3Ci1tc2dpZCAiUmVtb3RlIERldGFpbHMiCi1tc2dzdHIgIiIKLQotIzogbGliL3JlbW90ZV9hZGQudGNsOjUwCi1tc2dpZCAiTG9jYXRpb246IgotbXNnc3RyICIiCi0KLSM6IGxpYi9yZW1vdGVfYWRkLnRjbDo2MgotbXNnaWQgIkZ1cnRoZXIgQWN0aW9uIgotbXNnc3RyICIiCi0KLSM6IGxpYi9yZW1vdGVfYWRkLnRjbDo2NQotbXNnaWQgIkZldGNoIEltbWVkaWF0ZWx5IgotbXNnc3RyICIiCi0KLSM6IGxpYi9yZW1vdGVfYWRkLnRjbDo3MQotbXNnaWQgIkluaXRpYWxpemUgUmVtb3RlIFJlcG9zaXRvcnkgYW5kIFB1c2giCi1tc2dzdHIgIiIKLQotIzogbGliL3JlbW90ZV9hZGQudGNsOjc3Ci1tc2dpZCAiRG8gTm90aGluZyBFbHNlIE5vdyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTAxCi1tc2dpZCAiUGxlYXNlIHN1cHBseSBhIHJlbW90ZSBuYW1lLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTE0CisjOiBsaWIvdG9vbHNfZGxnLnRjbDoyODMKICMsIHRjbC1mb3JtYXQKLW1zZ2lkICInJXMnIGlzIG5vdCBhbiBhY2NlcHRhYmxlIHJlbW90ZSBuYW1lLiIKK21zZ2lkICIlcyAoJXMpOiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTI1CisjOiBsaWIvdG9vbHNfZGxnLnRjbDoyOTIKICMsIHRjbC1mb3JtYXQKLW1zZ2lkICJGYWlsZWQgdG8gYWRkIHJlbW90ZSAnJXMnIG9mIGxvY2F0aW9uICclcycuIgorbXNnaWQgIlJ1biBDb21tYW5kOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTMzIGxpYi90cmFuc3BvcnQudGNsOjYKKyM6IGxpYi90b29sc19kbGcudGNsOjMwNgorbXNnaWQgIkFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvdG9vbHNfZGxnLnRjbDozNDEKK21zZ2lkICJPSyIKK21zZ3N0ciAiIgorCisjOiBsaWIvc2VhcmNoLnRjbDo0OAorbXNnaWQgIkZpbmQ6IgorbXNnc3RyICIiCisKKyM6IGxpYi9zZWFyY2gudGNsOjUwCittc2dpZCAiTmV4dCIKK21zZ3N0ciAiIgorCisjOiBsaWIvc2VhcmNoLnRjbDo1MQorbXNnaWQgIlByZXYiCittc2dzdHIgIiIKKworIzogbGliL3NlYXJjaC50Y2w6NTIKK21zZ2lkICJSZWdFeHAiCittc2dzdHIgIiIKKworIzogbGliL3NlYXJjaC50Y2w6NTQKK21zZ2lkICJDYXNlIgorbXNnc3RyICIiCisKKyM6IGxpYi9zaG9ydGN1dC50Y2w6OCBsaWIvc2hvcnRjdXQudGNsOjQzIGxpYi9zaG9ydGN1dC50Y2w6NzUKICMsIHRjbC1mb3JtYXQKLW1zZ2lkICJmZXRjaCAlcyIKK21zZ2lkICIlcyAoJXMpOiBDcmVhdGUgRGVza3RvcCBJY29uIgogbXNnc3RyICIiCiAKLSM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxMzQKKyM6IGxpYi9zaG9ydGN1dC50Y2w6MjQgbGliL3Nob3J0Y3V0LnRjbDo2NQorbXNnaWQgIkNhbm5vdCB3cml0ZSBzaG9ydGN1dDoiCittc2dzdHIgIiIKKworIzogbGliL3Nob3J0Y3V0LnRjbDoxNDAKK21zZ2lkICJDYW5ub3Qgd3JpdGUgaWNvbjoiCittc2dzdHIgIiIKKworIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoyOQogIywgdGNsLWZvcm1hdAotbXNnaWQgIkZldGNoaW5nIHRoZSAlcyIKK21zZ2lkICIlcyAoJXMpOiBEZWxldGUgQnJhbmNoIFJlbW90ZWx5IgogbXNnc3RyICIiCiAKLSM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxNTcKLSMsIHRjbC1mb3JtYXQKLW1zZ2lkICJEbyBub3Qga25vdyBob3cgdG8gaW5pdGlhbGl6ZSByZXBvc2l0b3J5IGF0IGxvY2F0aW9uICclcycuIgotbXNnc3RyICIiCi0KLSM6IGxpYi9yZW1vdGVfYWRkLnRjbDoxNjMgbGliL3RyYW5zcG9ydC50Y2w6MjUgbGliL3RyYW5zcG9ydC50Y2w6NjMKLSM6IGxpYi90cmFuc3BvcnQudGNsOjgxCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAicHVzaCAlcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvcmVtb3RlX2FkZC50Y2w6MTY0Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiU2V0dGluZyB1cCB0aGUgJXMgKGF0ICVzKSIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjI5IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MzQKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MzQKIG1zZ2lkICJEZWxldGUgQnJhbmNoIFJlbW90ZWx5IgogbXNnc3RyICIiCiAKLSM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6NDcKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6NDgKIG1zZ2lkICJGcm9tIFJlcG9zaXRvcnkiCiBtc2dzdHIgIiIKIAotIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDo1MCBsaWIvdHJhbnNwb3J0LnRjbDoxMzQKLW1zZ2lkICJSZW1vdGU6IgotbXNnc3RyICIiCi0KLSM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6NjYgbGliL3RyYW5zcG9ydC50Y2w6MTQ5Ci1tc2dpZCAiQXJiaXRyYXJ5IExvY2F0aW9uOiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjg0CisjOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjg4CiBtc2dpZCAiQnJhbmNoZXMiCiBtc2dzdHIgIiIKIAotIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoxMDkKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MTEwCiBtc2dpZCAiRGVsZXRlIE9ubHkgSWYiCiBtc2dzdHIgIiIKIAotIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoxMTEKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MTEyCiBtc2dpZCAiTWVyZ2VkIEludG86IgogbXNnc3RyICIiCiAKLSM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MTUyCisjOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjEyMCBsaWIvYnJhbmNoX2RlbGV0ZS50Y2w6NTMKK21zZ2lkICJBbHdheXMgKERvIG5vdCBwZXJmb3JtIG1lcmdlIGNoZWNrcykiCittc2dzdHIgIiIKKworIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoxNTMKIG1zZ2lkICJBIGJyYW5jaCBpcyByZXF1aXJlZCBmb3IgJ01lcmdlZCBJbnRvJy4iCiBtc2dzdHIgIiIKIAotIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoxODQKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MTg1CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgYnJhbmNoZXMgYXJlIG5vdCBjb21wbGV0ZWx5IG1lcmdlZCBpbnRvICVzOlxuIgpAQCAtMjA3OSwxMTggKzE2NTgsNTExIEBACiAiIC0gJXMiCiBtc2dzdHIgIiIKIAotIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoxODkKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MTkwCiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiIgogIk9uZSBvciBtb3JlIG9mIHRoZSBtZXJnZSB0ZXN0cyBmYWlsZWQgYmVjYXVzZSB5b3UgaGF2ZSBub3QgZmV0Y2hlZCB0aGUgIgogIm5lY2Vzc2FyeSBjb21taXRzLiAgVHJ5IGZldGNoaW5nIGZyb20gJXMgZmlyc3QuIgogbXNnc3RyICIiCiAKLSM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MjA3CisjOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjIwOAogbXNnaWQgIlBsZWFzZSBzZWxlY3Qgb25lIG9yIG1vcmUgYnJhbmNoZXMgdG8gZGVsZXRlLiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjIyNgorIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDoyMTggbGliL2JyYW5jaF9kZWxldGUudGNsOjExNQorbXNnaWQgIiIKKyJSZWNvdmVyaW5nIGRlbGV0ZWQgYnJhbmNoZXMgaXMgZGlmZmljdWx0LlxuIgorIlxuIgorIkRlbGV0ZSB0aGUgc2VsZWN0ZWQgYnJhbmNoZXM/IgorbXNnc3RyICIiCisKKyM6IGxpYi9yZW1vdGVfYnJhbmNoX2RlbGV0ZS50Y2w6MjI3CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiRGVsZXRpbmcgYnJhbmNoZXMgZnJvbSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjI5MgorIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDozMDAKIG1zZ2lkICJObyByZXBvc2l0b3J5IHNlbGVjdGVkLiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvcmVtb3RlX2JyYW5jaF9kZWxldGUudGNsOjI5NworIzogbGliL3JlbW90ZV9icmFuY2hfZGVsZXRlLnRjbDozMDUKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJTY2FubmluZyAlcy4uLiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvc2VhcmNoLnRjbDoyMQotbXNnaWQgIkZpbmQ6IgorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0NQorbXNnaWQgIkdpdCBHdWkiCiBtc2dzdHIgIiIKIAotIzogbGliL3NlYXJjaC50Y2w6MjMKLW1zZ2lkICJOZXh0IgorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMDQgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0MjcKK21zZ2lkICJDcmVhdGUgTmV3IFJlcG9zaXRvcnkiCiBtc2dzdHIgIiIKIAotIzogbGliL3NlYXJjaC50Y2w6MjQKLW1zZ2lkICJQcmV2IgorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMTAKK21zZ2lkICJOZXcuLi4iCiBtc2dzdHIgIiIKIAotIzogbGliL3NlYXJjaC50Y2w6MjUKLW1zZ2lkICJDYXNlLVNlbnNpdGl2ZSIKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTE3IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTExCittc2dpZCAiQ2xvbmUgRXhpc3RpbmcgUmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvc2hvcnRjdXQudGNsOjIxIGxpYi9zaG9ydGN1dC50Y2w6NjIKLW1zZ2lkICJDYW5ub3Qgd3JpdGUgc2hvcnRjdXQ6IgorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMjgKK21zZ2lkICJDbG9uZS4uLiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvc2hvcnRjdXQudGNsOjEzNwotbXNnaWQgIkNhbm5vdCB3cml0ZSBpY29uOiIKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTM1IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTEwNQorbXNnaWQgIk9wZW4gRXhpc3RpbmcgUmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvc3BlbGxjaGVjay50Y2w6NTcKLW1zZ2lkICJVbnN1cHBvcnRlZCBzcGVsbCBjaGVja2VyIgorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxNDEKK21zZ2lkICJPcGVuLi4uIgogbXNnc3RyICIiCiAKLSM6IGxpYi9zcGVsbGNoZWNrLnRjbDo2NQotbXNnaWQgIlNwZWxsIGNoZWNraW5nIGlzIHVuYXZhaWxhYmxlIgorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxNTQKK21zZ2lkICJSZWNlbnQgUmVwb3NpdG9yaWVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9zcGVsbGNoZWNrLnRjbDo2OAotbXNnaWQgIkludmFsaWQgc3BlbGwgY2hlY2tpbmcgY29uZmlndXJhdGlvbiIKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTY0Cittc2dpZCAiT3BlbiBSZWNlbnQgUmVwb3NpdG9yeToiCiBtc2dzdHIgIiIKIAotIzogbGliL3NwZWxsY2hlY2sudGNsOjcwCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjMzMSBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjMzOAorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDozNDUKICMsIHRjbC1mb3JtYXQKLW1zZ2lkICJSZXZlcnRpbmcgZGljdGlvbmFyeSB0byAlcy4iCittc2dpZCAiRmFpbGVkIHRvIGNyZWF0ZSByZXBvc2l0b3J5ICVzOiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvc3BlbGxjaGVjay50Y2w6NzMKLW1zZ2lkICJTcGVsbCBjaGVja2VyIHNpbGVudGx5IGZhaWxlZCBvbiBzdGFydHVwIgorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0MjIgbGliL2JyYW5jaF9jcmVhdGUudGNsOjMzCittc2dpZCAiQ3JlYXRlIgogbXNnc3RyICIiCiAKLSM6IGxpYi9zcGVsbGNoZWNrLnRjbDo4MAotbXNnaWQgIlVucmVjb2duaXplZCBzcGVsbCBjaGVja2VyIgorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0MzIKK21zZ2lkICJEaXJlY3Rvcnk6IgogbXNnc3RyICIiCiAKLSM6IGxpYi9zcGVsbGNoZWNrLnRjbDoxODYKLW1zZ2lkICJObyBTdWdnZXN0aW9ucyIKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDYyIGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTg4CisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjExMzkKK21zZ2lkICJHaXQgUmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvc3BlbGxjaGVjay50Y2w6Mzg4Ci1tc2dpZCAiVW5leHBlY3RlZCBFT0YgZnJvbSBzcGVsbCBjaGVja2VyIgorIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo0ODcKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJEaXJlY3RvcnkgJXMgYWxyZWFkeSBleGlzdHMuIgogbXNnc3RyICIiCiAKLSM6IGxpYi9zcGVsbGNoZWNrLnRjbDozOTIKLW1zZ2lkICJTcGVsbCBDaGVja2VyIEZhaWxlZCIKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NDkxCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRmlsZSAlcyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgIiIKIAotIzogbGliL3NzaGtleS50Y2w6MzEKLW1zZ2lkICJObyBrZXlzIGZvdW5kLiIKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTA2Cittc2dpZCAiQ2xvbmUiCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1MTkKK21zZ2lkICJTb3VyY2UgTG9jYXRpb246IgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTI4Cittc2dpZCAiVGFyZ2V0IERpcmVjdG9yeToiCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1MzgKK21zZ2lkICJDbG9uZSBUeXBlOiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjU0MworbXNnaWQgIlN0YW5kYXJkIChGYXN0LCBTZW1pLVJlZHVuZGFudCwgSGFyZGxpbmtzKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjU0OAorbXNnaWQgIkZ1bGwgQ29weSAoU2xvd2VyLCBSZWR1bmRhbnQgQmFja3VwKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjU1MworbXNnaWQgIlNoYXJlZCAoRmFzdGVzdCwgTm90IFJlY29tbWVuZGVkLCBObyBCYWNrdXApIgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NTYwCittc2dpZCAiUmVjdXJzaXZlbHkgY2xvbmUgc3VibW9kdWxlcyB0b28iCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo1OTQgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo2NDEKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NzkwIGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6ODY0CisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjExNDUgbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMTUzCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiTm90IGEgR2l0IHJlcG9zaXRvcnk6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjMwCittc2dpZCAiU3RhbmRhcmQgb25seSBhdmFpbGFibGUgZm9yIGxvY2FsIHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NjM0Cittc2dpZCAiU2hhcmVkIG9ubHkgYXZhaWxhYmxlIGZvciBsb2NhbCByZXBvc2l0b3J5LiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjY1NQorIywgdGNsLWZvcm1hdAorbXNnaWQgIkxvY2F0aW9uICVzIGFscmVhZHkgZXhpc3RzLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjY2NgorbXNnaWQgIkZhaWxlZCB0byBjb25maWd1cmUgb3JpZ2luIgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6Njc4Cittc2dpZCAiQ291bnRpbmcgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjY3OQorbXNnaWQgImJ1Y2tldHMiCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo3MDMKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gY29weSBvYmplY3RzL2luZm8vYWx0ZXJuYXRlczogJXMiCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo3NDAKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJOb3RoaW5nIHRvIGNsb25lIGZyb20gJXMuIgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6NzQyIGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6OTYyCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjk3NAorbXNnaWQgIlRoZSAnbWFzdGVyJyBicmFuY2ggaGFzIG5vdCBiZWVuIGluaXRpYWxpemVkLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjc1NQorbXNnaWQgIkhhcmRsaW5rcyBhcmUgdW5hdmFpbGFibGUuICBGYWxsaW5nIGJhY2sgdG8gY29weWluZy4iCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo3NjkKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJDbG9uaW5nIGZyb20gJXMiCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo4MDAKK21zZ2lkICJDb3B5aW5nIG9iamVjdHMiCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo4MDEKK21zZ2lkICJLaUIiCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo4MjUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gY29weSBvYmplY3Q6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6ODM3Cittc2dpZCAiTGlua2luZyBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6ODM4Cittc2dpZCAib2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjg0NgorIywgdGNsLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBoYXJkbGluayBvYmplY3Q6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6OTAzCittc2dpZCAiQ2Fubm90IGZldGNoIGJyYW5jaGVzIGFuZCBvYmplY3RzLiAgU2VlIGNvbnNvbGUgb3V0cHV0IGZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkxNAorbXNnaWQgIkNhbm5vdCBmZXRjaCB0YWdzLiAgU2VlIGNvbnNvbGUgb3V0cHV0IGZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjkzOAorbXNnaWQgIkNhbm5vdCBkZXRlcm1pbmUgSEVBRC4gIFNlZSBjb25zb2xlIG91dHB1dCBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5NDcKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gY2xlYW51cCAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjk1MworbXNnaWQgIkNsb25lIGZhaWxlZC4iCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5NjAKK21zZ2lkICJObyBkZWZhdWx0IGJyYW5jaCBvYnRhaW5lZC4iCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5NzEKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJDYW5ub3QgcmVzb2x2ZSAlcyBhcyBhIGNvbW1pdC4iCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDo5OTgKK21zZ2lkICJDcmVhdGluZyB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjEwMjgKK21zZ2lkICJJbml0aWFsIGZpbGUgY2hlY2tvdXQgZmFpbGVkLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3JlcG9zaXRvcnkudGNsOjEwNzIKK21zZ2lkICJDbG9uaW5nIHN1Ym1vZHVsZXMiCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXBvc2l0b3J5LnRjbDoxMDg3Cittc2dpZCAiQ2Fubm90IGNsb25lIHN1Ym1vZHVsZXMuIgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTExMAorbXNnaWQgIlJlcG9zaXRvcnk6IgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmVwb3NpdG9yeS50Y2w6MTE1OQorIywgdGNsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBvcGVuIHJlcG9zaXRvcnkgJXM6IgorbXNnc3RyICIiCisKKyM6IGxpYi9hYm91dC50Y2w6MjYKK21zZ2lkICJnaXQtZ3VpIC0gYSBncmFwaGljYWwgdXNlciBpbnRlcmZhY2UgZm9yIEdpdC4iCittc2dzdHIgIiIKKworIzogbGliL2JsYW1lLnRjbDo3NAorIywgdGNsLWZvcm1hdAorbXNnaWQgIiVzICglcyk6IEZpbGUgVmlld2VyIgorbXNnc3RyICIiCisKKyM6IGxpYi9ibGFtZS50Y2w6ODAKK21zZ2lkICJDb21taXQ6IgorbXNnc3RyICIiCisKKyM6IGxpYi9ibGFtZS50Y2w6MjgyCittc2dpZCAiQ29weSBDb21taXQiCittc2dzdHIgIiIKKworIzogbGliL2JsYW1lLnRjbDoyODYKK21zZ2lkICJGaW5kIFRleHQuLi4iCittc2dzdHIgIiIKKworIzogbGliL2JsYW1lLnRjbDoyOTAKK21zZ2lkICJHb3RvIExpbmUuLi4iCittc2dzdHIgIiIKKworIzogbGliL2JsYW1lLnRjbDoyOTkKK21zZ2lkICJEbyBGdWxsIENvcHkgRGV0ZWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGxpYi9ibGFtZS50Y2w6MzAzCittc2dpZCAiU2hvdyBIaXN0b3J5IENvbnRleHQiCittc2dzdHIgIiIKKworIzogbGliL2JsYW1lLnRjbDozMDYKK21zZ2lkICJCbGFtZSBQYXJlbnQgQ29tbWl0IgorbXNnc3RyICIiCisKKyM6IGxpYi9ibGFtZS50Y2w6NDY4CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUmVhZGluZyAlcy4uLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvYmxhbWUudGNsOjU5NgorbXNnaWQgIkxvYWRpbmcgY29weS9tb3ZlIHRyYWNraW5nIGFubm90YXRpb25zLi4uIgorbXNnc3RyICIiCisKKyM6IGxpYi9ibGFtZS50Y2w6NjEzCittc2dpZCAibGluZXMgYW5ub3RhdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9ibGFtZS50Y2w6ODE1Cittc2dpZCAiTG9hZGluZyBvcmlnaW5hbCBsb2NhdGlvbiBhbm5vdGF0aW9ucy4uLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvYmxhbWUudGNsOjgxOAorbXNnaWQgIkFubm90YXRpb24gY29tcGxldGUuIgorbXNnc3RyICIiCisKKyM6IGxpYi9ibGFtZS50Y2w6ODQ5Cittc2dpZCAiQnVzeSIKK21zZ3N0ciAiIgorCisjOiBsaWIvYmxhbWUudGNsOjg1MAorbXNnaWQgIkFubm90YXRpb24gcHJvY2VzcyBpcyBhbHJlYWR5IHJ1bm5pbmcuIgorbXNnc3RyICIiCisKKyM6IGxpYi9ibGFtZS50Y2w6ODg5Cittc2dpZCAiUnVubmluZyB0aG9yb3VnaCBjb3B5IGRldGVjdGlvbi4uLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvYmxhbWUudGNsOjk1NworbXNnaWQgIkxvYWRpbmcgYW5ub3RhdGlvbi4uLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvYmxhbWUudGNsOjEwMTAKK21zZ2lkICJBdXRob3I6IgorbXNnc3RyICIiCisKKyM6IGxpYi9ibGFtZS50Y2w6MTAxNAorbXNnaWQgIkNvbW1pdHRlcjoiCittc2dzdHIgIiIKKworIzogbGliL2JsYW1lLnRjbDoxMDE5Cittc2dpZCAiT3JpZ2luYWwgRmlsZToiCittc2dzdHIgIiIKKworIzogbGliL2JsYW1lLnRjbDoxMDY3Cittc2dpZCAiQ2Fubm90IGZpbmQgSEVBRCBjb21taXQ6IgorbXNnc3RyICIiCisKKyM6IGxpYi9ibGFtZS50Y2w6MTEyMgorbXNnaWQgIkNhbm5vdCBmaW5kIHBhcmVudCBjb21taXQ6IgorbXNnc3RyICIiCisKKyM6IGxpYi9ibGFtZS50Y2w6MTEzNworbXNnaWQgIlVuYWJsZSB0byBkaXNwbGF5IHBhcmVudCIKK21zZ3N0ciAiIgorCisjOiBsaWIvYmxhbWUudGNsOjExMzggbGliL2RpZmYudGNsOjM0NQorbXNnaWQgIkVycm9yIGxvYWRpbmcgZGlmZjoiCittc2dzdHIgIiIKKworIzogbGliL2JsYW1lLnRjbDoxMjc5Cittc2dpZCAiT3JpZ2luYWxseSBCeToiCittc2dzdHIgIiIKKworIzogbGliL2JsYW1lLnRjbDoxMjg1Cittc2dpZCAiSW4gRmlsZToiCittc2dzdHIgIiIKKworIzogbGliL2JsYW1lLnRjbDoxMjkwCittc2dpZCAiQ29waWVkIE9yIE1vdmVkIEhlcmUgQnk6IgorbXNnc3RyICIiCisKKyM6IGxpYi9kaWZmLnRjbDo3NworIywgdGNsLWZvcm1hdAorbXNnaWQgIiIKKyJObyBkaWZmZXJlbmNlcyBkZXRlY3RlZC5cbiIKKyJcbiIKKyIlcyBoYXMgbm8gY2hhbmdlcy5cbiIKKyJcbiIKKyJUaGUgbW9kaWZpY2F0aW9uIGRhdGUgb2YgdGhpcyBmaWxlIHdhcyB1cGRhdGVkIGJ5IGFub3RoZXIgYXBwbGljYXRpb24sIGJ1dCAiCisidGhlIGNvbnRlbnQgd2l0aGluIHRoZSBmaWxlIHdhcyBub3QgY2hhbmdlZC5cbiIKKyJcbiIKKyJBIHJlc2NhbiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc3RhcnRlZCB0byBmaW5kIG90aGVyIGZpbGVzIHdoaWNoIG1heSBoYXZlICIKKyJ0aGUgc2FtZSBzdGF0ZS4iCittc2dzdHIgIiIKKworIzogbGliL2RpZmYudGNsOjExNworIywgdGNsLWZvcm1hdAorbXNnaWQgIkxvYWRpbmcgZGlmZiBvZiAlcy4uLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZGlmZi50Y2w6MTQzCittc2dpZCAiIgorIkxPQ0FMOiBkZWxldGVkXG4iCisiUkVNT1RFOlxuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kaWZmLnRjbDoxNDgKK21zZ2lkICIiCisiUkVNT1RFOiBkZWxldGVkXG4iCisiTE9DQUw6XG4iCittc2dzdHIgIiIKKworIzogbGliL2RpZmYudGNsOjE1NQorbXNnaWQgIkxPQ0FMOlxuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kaWZmLnRjbDoxNTgKK21zZ2lkICJSRU1PVEU6XG4iCittc2dzdHIgIiIKKworIzogbGliL2RpZmYudGNsOjIyMCBsaWIvZGlmZi50Y2w6MzQ0CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGRpc3BsYXkgJXMiCittc2dzdHIgIiIKKworIzogbGliL2RpZmYudGNsOjIyMQorbXNnaWQgIkVycm9yIGxvYWRpbmcgZmlsZToiCittc2dzdHIgIiIKKworIzogbGliL2RpZmYudGNsOjIyNworbXNnaWQgIkdpdCBSZXBvc2l0b3J5IChzdWJwcm9qZWN0KSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZGlmZi50Y2w6MjM5Cittc2dpZCAiKiBCaW5hcnkgZmlsZSAobm90IHNob3dpbmcgY29udGVudCkuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kaWZmLnRjbDoyNDQKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIiCisiKiBVbnRyYWNrZWQgZmlsZSBpcyAlZCBieXRlcy5cbiIKKyIqIFNob3dpbmcgb25seSBmaXJzdCAlZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZGlmZi50Y2w6MjUwCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiogVW50cmFja2VkIGZpbGUgY2xpcHBlZCBoZXJlIGJ5ICVzLlxuIgorIiogVG8gc2VlIHRoZSBlbnRpcmUgZmlsZSwgdXNlIGFuIGV4dGVybmFsIGVkaXRvci5cbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZGlmZi50Y2w6NTgzCittc2dpZCAiRmFpbGVkIHRvIHVuc3RhZ2Ugc2VsZWN0ZWQgaHVuay4iCittc2dzdHIgIiIKKworIzogbGliL2RpZmYudGNsOjU5MQorbXNnaWQgIkZhaWxlZCB0byByZXZlcnQgc2VsZWN0ZWQgaHVuay4iCittc2dzdHIgIiIKKworIzogbGliL2RpZmYudGNsOjU5NAorbXNnaWQgIkZhaWxlZCB0byBzdGFnZSBzZWxlY3RlZCBodW5rLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZGlmZi50Y2w6Njg3Cittc2dpZCAiRmFpbGVkIHRvIHVuc3RhZ2Ugc2VsZWN0ZWQgbGluZS4iCittc2dzdHIgIiIKKworIzogbGliL2RpZmYudGNsOjY5NgorbXNnaWQgIkZhaWxlZCB0byByZXZlcnQgc2VsZWN0ZWQgbGluZS4iCittc2dzdHIgIiIKKworIzogbGliL2RpZmYudGNsOjcwMAorbXNnaWQgIkZhaWxlZCB0byBzdGFnZSBzZWxlY3RlZCBsaW5lLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZGlmZi50Y2w6ODg5Cittc2dpZCAiRmFpbGVkIHRvIHVuZG8gbGFzdCByZXZlcnQuIgogbXNnc3RyICIiCiAKICM6IGxpYi9zc2hrZXkudGNsOjM0Cittc2dpZCAiTm8ga2V5cyBmb3VuZC4iCittc2dzdHIgIiIKKworIzogbGliL3NzaGtleS50Y2w6MzcKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJGb3VuZCBhIHB1YmxpYyBrZXkgaW46ICVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9zc2hrZXkudGNsOjQwCisjOiBsaWIvc3Noa2V5LnRjbDo0MwogbXNnaWQgIkdlbmVyYXRlIEtleSIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvc3Noa2V5LnRjbDo1NgorIzogbGliL3NzaGtleS50Y2w6NjEKIG1zZ2lkICJDb3B5IFRvIENsaXBib2FyZCIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvc3Noa2V5LnRjbDo3MAorIzogbGliL3NzaGtleS50Y2w6NzUKIG1zZ2lkICJZb3VyIE9wZW5TU0ggUHVibGljIEtleSIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvc3Noa2V5LnRjbDo3OAorIzogbGliL3NzaGtleS50Y2w6ODMKIG1zZ2lkICJHZW5lcmF0aW5nLi4uIgogbXNnc3RyICIiCiAKLSM6IGxpYi9zc2hrZXkudGNsOjg0CisjOiBsaWIvc3Noa2V5LnRjbDo4OQogIywgdGNsLWZvcm1hdAogbXNnaWQgIiIKICJDb3VsZCBub3Qgc3RhcnQgc3NoLWtleWdlbjpcbiIKQEAgLTIxOTgsMTk3ICsyMTcwLDQ5NyBAQAogIiVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi9zc2hrZXkudGNsOjExMQorIzogbGliL3NzaGtleS50Y2w6MTE2CiBtc2dpZCAiR2VuZXJhdGlvbiBmYWlsZWQuIgogbXNnc3RyICIiCiAKLSM6IGxpYi9zc2hrZXkudGNsOjExOAorIzogbGliL3NzaGtleS50Y2w6MTIzCiBtc2dpZCAiR2VuZXJhdGlvbiBzdWNjZWVkZWQsIGJ1dCBubyBrZXlzIGZvdW5kLiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvc3Noa2V5LnRjbDoxMjEKKyM6IGxpYi9zc2hrZXkudGNsOjEyNgogIywgdGNsLWZvcm1hdAogbXNnaWQgIllvdXIga2V5IGlzIGluOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvc3RhdHVzX2Jhci50Y2w6ODMKKyM6IGxpYi9icmFuY2hfY3JlYXRlLnRjbDoyMwogIywgdGNsLWZvcm1hdAotbXNnaWQgIiVzIC4uLiAlKmkgb2YgJSppICVzICglM2klJSkiCittc2dpZCAiJXMgKCVzKTogQ3JlYXRlIEJyYW5jaCIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvdG9vbHMudGNsOjc1CisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MjgKK21zZ2lkICJDcmVhdGUgTmV3IEJyYW5jaCIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NDIKK21zZ2lkICJCcmFuY2ggTmFtZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NTcKK21zZ2lkICJNYXRjaCBUcmFja2luZyBCcmFuY2ggTmFtZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NjYKK21zZ2lkICJTdGFydGluZyBSZXZpc2lvbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NzIKK21zZ2lkICJVcGRhdGUgRXhpc3RpbmcgQnJhbmNoOiIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6NzUKK21zZ2lkICJObyIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6ODAKK21zZ2lkICJGYXN0IEZvcndhcmQgT25seSIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6OTcKK21zZ2lkICJDaGVja291dCBBZnRlciBDcmVhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX2NyZWF0ZS50Y2w6MTMyCittc2dpZCAiUGxlYXNlIHNlbGVjdCBhIHRyYWNraW5nIGJyYW5jaC4iCittc2dzdHIgIiIKKworIzogbGliL2JyYW5jaF9jcmVhdGUudGNsOjE0MQogIywgdGNsLWZvcm1hdAotbXNnaWQgIlJ1bm5pbmcgJXMgcmVxdWlyZXMgYSBzZWxlY3RlZCBmaWxlLiIKK21zZ2lkICJUcmFja2luZyBicmFuY2ggJXMgaXMgbm90IGEgYnJhbmNoIGluIHRoZSByZW1vdGUgcmVwb3NpdG9yeS4iCiBtc2dzdHIgIiIKIAotIzogbGliL3Rvb2xzLnRjbDo5MAorIzogbGliL2NvbnNvbGUudGNsOjU5Cittc2dpZCAiV29ya2luZy4uLiBwbGVhc2Ugd2FpdC4uLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29uc29sZS50Y2w6MTg2Cittc2dpZCAiU3VjY2VzcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29uc29sZS50Y2w6MjAwCittc2dpZCAiRXJyb3I6IENvbW1hbmQgRmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9saW5lLnRjbDoxNworbXNnaWQgIkdvdG8gTGluZToiCittc2dzdHIgIiIKKworIzogbGliL2xpbmUudGNsOjIzCittc2dpZCAiR28iCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXYudGNsOjUyCittc2dpZCAiVGhpcyBEZXRhY2hlZCBDaGVja291dCIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3Jldi50Y2w6NjAKK21zZ2lkICJSZXZpc2lvbiBFeHByZXNzaW9uOiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3Jldi50Y2w6NzIKK21zZ2lkICJMb2NhbCBCcmFuY2giCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXYudGNsOjc3Cittc2dpZCAiVHJhY2tpbmcgQnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmV2LnRjbDo4MiBsaWIvY2hvb3NlX3Jldi50Y2w6NTQ0Cittc2dpZCAiVGFnIgorbXNnc3RyICIiCisKKyM6IGxpYi9jaG9vc2VfcmV2LnRjbDozMjEKICMsIHRjbC1mb3JtYXQKLW1zZ2lkICJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcnVuICVzPyIKK21zZ2lkICJJbnZhbGlkIHJldmlzaW9uOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvdG9vbHMudGNsOjExMAorIzogbGliL2Nob29zZV9yZXYudGNsOjM0MgorbXNnaWQgIk5vIHJldmlzaW9uIHNlbGVjdGVkLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY2hvb3NlX3Jldi50Y2w6MzUwCittc2dpZCAiUmV2aXNpb24gZXhwcmVzc2lvbiBpcyBlbXB0eS4iCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXYudGNsOjUzNworbXNnaWQgIlVwZGF0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Nob29zZV9yZXYudGNsOjU2NQorbXNnaWQgIlVSTCIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29tbWl0LnRjbDo5Cittc2dpZCAiIgorIlRoZXJlIGlzIG5vdGhpbmcgdG8gYW1lbmQuXG4iCisiXG4iCisiWW91IGFyZSBhYm91dCB0byBjcmVhdGUgdGhlIGluaXRpYWwgY29tbWl0LiAgVGhlcmUgaXMgbm8gY29tbWl0IGJlZm9yZSB0aGlzICIKKyJ0byBhbWVuZC5cbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29tbWl0LnRjbDoxOAorbXNnaWQgIiIKKyJDYW5ub3QgYW1lbmQgd2hpbGUgbWVyZ2luZy5cbiIKKyJcbiIKKyJZb3UgYXJlIGN1cnJlbnRseSBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UgdGhhdCBoYXMgbm90IGJlZW4gZnVsbHkgIgorImNvbXBsZXRlZC4gIFlvdSBjYW5ub3QgYW1lbmQgdGhlIHByaW9yIGNvbW1pdCB1bmxlc3MgeW91IGZpcnN0IGFib3J0IHRoZSAiCisiY3VycmVudCBtZXJnZSBhY3Rpdml0eS5cbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29tbWl0LnRjbDo1NgorbXNnaWQgIkVycm9yIGxvYWRpbmcgY29tbWl0IGRhdGEgZm9yIGFtZW5kOiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29tbWl0LnRjbDo4MworbXNnaWQgIlVuYWJsZSB0byBvYnRhaW4geW91ciBpZGVudGl0eToiCittc2dzdHIgIiIKKworIzogbGliL2NvbW1pdC50Y2w6ODgKK21zZ2lkICJJbnZhbGlkIEdJVF9DT01NSVRURVJfSURFTlQ6IgorbXNnc3RyICIiCisKKyM6IGxpYi9jb21taXQudGNsOjEzOAogIywgdGNsLWZvcm1hdAotbXNnaWQgIlRvb2w6ICVzIgorbXNnaWQgIndhcm5pbmc6IFRjbCBkb2VzIG5vdCBzdXBwb3J0IGVuY29kaW5nICclcycuIgogbXNnc3RyICIiCiAKLSM6IGxpYi90b29scy50Y2w6MTExCi0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiUnVubmluZzogJXMiCisjOiBsaWIvY29tbWl0LnRjbDoxNTgKK21zZ2lkICIiCisiTGFzdCBzY2FubmVkIHN0YXRlIGRvZXMgbm90IG1hdGNoIHJlcG9zaXRvcnkgc3RhdGUuXG4iCisiXG4iCisiQW5vdGhlciBHaXQgcHJvZ3JhbSBoYXMgbW9kaWZpZWQgdGhpcyByZXBvc2l0b3J5IHNpbmNlIHRoZSBsYXN0IHNjYW4uICBBICIKKyJyZXNjYW4gbXVzdCBiZSBwZXJmb3JtZWQgYmVmb3JlIGFub3RoZXIgY29tbWl0IGNhbiBiZSBjcmVhdGVkLlxuIgorIlxuIgorIlRoZSByZXNjYW4gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN0YXJ0ZWQgbm93LlxuIgogbXNnc3RyICIiCiAKLSM6IGxpYi90b29scy50Y2w6MTQ5Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiVG9vbCBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5OiAlcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvdG9vbHMudGNsOjE1MQotIywgdGNsLWZvcm1hdAotbXNnaWQgIlRvb2wgZmFpbGVkOiAlcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDoyMgotbXNnaWQgIkFkZCBUb29sIgotbXNnc3RyICIiCi0KLSM6IGxpYi90b29sc19kbGcudGNsOjI4Ci1tc2dpZCAiQWRkIE5ldyBUb29sIENvbW1hbmQiCi1tc2dzdHIgIiIKLQotIzogbGliL3Rvb2xzX2RsZy50Y2w6MzMKLW1zZ2lkICJBZGQgZ2xvYmFsbHkiCi1tc2dzdHIgIiIKLQotIzogbGliL3Rvb2xzX2RsZy50Y2w6NDUKLW1zZ2lkICJUb29sIERldGFpbHMiCi1tc2dzdHIgIiIKLQotIzogbGliL3Rvb2xzX2RsZy50Y2w6NDgKLW1zZ2lkICJVc2UgJy8nIHNlcGFyYXRvcnMgdG8gY3JlYXRlIGEgc3VibWVudSB0cmVlOiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDo2MQotbXNnaWQgIkNvbW1hbmQ6IgotbXNnc3RyICIiCi0KLSM6IGxpYi90b29sc19kbGcudGNsOjc0Ci1tc2dpZCAiU2hvdyBhIGRpYWxvZyBiZWZvcmUgcnVubmluZyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDo4MAotbXNnaWQgIkFzayB0aGUgdXNlciB0byBzZWxlY3QgYSByZXZpc2lvbiAoc2V0cyAkUkVWSVNJT04pIgotbXNnc3RyICIiCi0KLSM6IGxpYi90b29sc19kbGcudGNsOjg1Ci1tc2dpZCAiQXNrIHRoZSB1c2VyIGZvciBhZGRpdGlvbmFsIGFyZ3VtZW50cyAoc2V0cyAkQVJHUykiCi1tc2dzdHIgIiIKLQotIzogbGliL3Rvb2xzX2RsZy50Y2w6OTIKLW1zZ2lkICJEb24ndCBzaG93IHRoZSBjb21tYW5kIG91dHB1dCB3aW5kb3ciCi1tc2dzdHIgIiIKLQotIzogbGliL3Rvb2xzX2RsZy50Y2w6OTcKLW1zZ2lkICJSdW4gb25seSBpZiBhIGRpZmYgaXMgc2VsZWN0ZWQgKCRGSUxFTkFNRSBub3QgZW1wdHkpIgotbXNnc3RyICIiCi0KLSM6IGxpYi90b29sc19kbGcudGNsOjEyMQotbXNnaWQgIlBsZWFzZSBzdXBwbHkgYSBuYW1lIGZvciB0aGUgdG9vbC4iCi1tc2dzdHIgIiIKLQotIzogbGliL3Rvb2xzX2RsZy50Y2w6MTI5Ci0jLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiVG9vbCAnJXMnIGFscmVhZHkgZXhpc3RzLiIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDoxNTEKKyM6IGxpYi9jb21taXQudGNsOjE4MgogIywgdGNsLWZvcm1hdAogbXNnaWQgIiIKLSJDb3VsZCBub3QgYWRkIHRvb2w6XG4iCisiVW5tZXJnZWQgZmlsZXMgY2Fubm90IGJlIGNvbW1pdHRlZC5cbiIKKyJcbiIKKyJGaWxlICVzIGhhcyBtZXJnZSBjb25mbGljdHMuICBZb3UgbXVzdCByZXNvbHZlIHRoZW0gYW5kIHN0YWdlIHRoZSBmaWxlICIKKyJiZWZvcmUgY29tbWl0dGluZy5cbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29tbWl0LnRjbDoxOTAKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIiCisiVW5rbm93biBmaWxlIHN0YXRlICVzIGRldGVjdGVkLlxuIgorIlxuIgorIkZpbGUgJXMgY2Fubm90IGJlIGNvbW1pdHRlZCBieSB0aGlzIHByb2dyYW0uXG4iCittc2dzdHIgIiIKKworIzogbGliL2NvbW1pdC50Y2w6MTk4Cittc2dpZCAiIgorIk5vIGNoYW5nZXMgdG8gY29tbWl0LlxuIgorIlxuIgorIllvdSBtdXN0IHN0YWdlIGF0IGxlYXN0IDEgZmlsZSBiZWZvcmUgeW91IGNhbiBjb21taXQuXG4iCittc2dzdHIgIiIKKworIzogbGliL2NvbW1pdC50Y2w6MjEzCittc2dpZCAiIgorIlBsZWFzZSBzdXBwbHkgYSBjb21taXQgbWVzc2FnZS5cbiIKKyJcbiIKKyJBIGdvb2QgY29tbWl0IG1lc3NhZ2UgaGFzIHRoZSBmb2xsb3dpbmcgZm9ybWF0OlxuIgorIlxuIgorIi0gRmlyc3QgbGluZTogRGVzY3JpYmUgaW4gb25lIHNlbnRlbmNlIHdoYXQgeW91IGRpZC5cbiIKKyItIFNlY29uZCBsaW5lOiBCbGFua1xuIgorIi0gUmVtYWluaW5nIGxpbmVzOiBEZXNjcmliZSB3aHkgdGhpcyBjaGFuZ2UgaXMgZ29vZC5cbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29tbWl0LnRjbDoyNDQKK21zZ2lkICJDYWxsaW5nIHByZS1jb21taXQgaG9vay4uLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29tbWl0LnRjbDoyNTkKK21zZ2lkICJDb21taXQgZGVjbGluZWQgYnkgcHJlLWNvbW1pdCBob29rLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29tbWl0LnRjbDoyNzgKK21zZ2lkICIiCisiWW91IGFyZSBhYm91dCB0byBjb21taXQgb24gYSBkZXRhY2hlZCBoZWFkLiBUaGlzIGlzIGEgcG90ZW50aWFsbHkgZGFuZ2Vyb3VzICIKKyJ0aGluZyB0byBkbyBiZWNhdXNlIGlmIHlvdSBzd2l0Y2ggdG8gYW5vdGhlciBicmFuY2ggeW91IHdpbGwgbG9zZSB5b3VyICIKKyJjaGFuZ2VzIGFuZCBpdCBjYW4gYmUgZGlmZmljdWx0IHRvIHJldHJpZXZlIHRoZW0gbGF0ZXIgZnJvbSB0aGUgcmVmbG9nLiBZb3UgIgorInNob3VsZCBwcm9iYWJseSBjYW5jZWwgdGhpcyBjb21taXQgYW5kIGNyZWF0ZSBhIG5ldyBicmFuY2ggdG8gY29udGludWUuXG4iCisiIFxuIgorIiBEbyB5b3UgcmVhbGx5IHdhbnQgdG8gcHJvY2VlZCB3aXRoIHlvdXIgQ29tbWl0PyIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29tbWl0LnRjbDoyOTkKK21zZ2lkICJDYWxsaW5nIGNvbW1pdC1tc2cgaG9vay4uLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29tbWl0LnRjbDozMTQKK21zZ2lkICJDb21taXQgZGVjbGluZWQgYnkgY29tbWl0LW1zZyBob29rLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29tbWl0LnRjbDozMjcKK21zZ2lkICJDb21taXR0aW5nIGNoYW5nZXMuLi4iCittc2dzdHIgIiIKKworIzogbGliL2NvbW1pdC50Y2w6MzQ0Cittc2dpZCAid3JpdGUtdHJlZSBmYWlsZWQ6IgorbXNnc3RyICIiCisKKyM6IGxpYi9jb21taXQudGNsOjM0NSBsaWIvY29tbWl0LnRjbDozOTUgbGliL2NvbW1pdC50Y2w6NDIyCittc2dpZCAiQ29tbWl0IGZhaWxlZC4iCittc2dzdHIgIiIKKworIzogbGliL2NvbW1pdC50Y2w6MzYyCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiQ29tbWl0ICVzIGFwcGVhcnMgdG8gYmUgY29ycnVwdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvY29tbWl0LnRjbDozNjcKK21zZ2lkICIiCisiTm8gY2hhbmdlcyB0byBjb21taXQuXG4iCisiXG4iCisiTm8gZmlsZXMgd2VyZSBtb2RpZmllZCBieSB0aGlzIGNvbW1pdCBhbmQgaXQgd2FzIG5vdCBhIG1lcmdlIGNvbW1pdC5cbiIKKyJcbiIKKyJBIHJlc2NhbiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc3RhcnRlZCBub3cuXG4iCittc2dzdHIgIiIKKworIzogbGliL2NvbW1pdC50Y2w6Mzc0Cittc2dpZCAiTm8gY2hhbmdlcyB0byBjb21taXQuIgorbXNnc3RyICIiCisKKyM6IGxpYi9jb21taXQudGNsOjM5NAorbXNnaWQgImNvbW1pdC10cmVlIGZhaWxlZDoiCittc2dzdHIgIiIKKworIzogbGliL2NvbW1pdC50Y2w6NDIxCittc2dpZCAidXBkYXRlLXJlZiBmYWlsZWQ6IgorbXNnc3RyICIiCisKKyM6IGxpYi9jb21taXQudGNsOjUxNAorIywgdGNsLWZvcm1hdAorbXNnaWQgIkNyZWF0ZWQgY29tbWl0ICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX2RlbGV0ZS50Y2w6MTYKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIlcyAoJXMpOiBEZWxldGUgQnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDoyMQorbXNnaWQgIkRlbGV0ZSBMb2NhbCBCcmFuY2giCittc2dzdHIgIiIKKworIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjM5Cittc2dpZCAiTG9jYWwgQnJhbmNoZXMiCittc2dzdHIgIiIKKworIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjUxCittc2dpZCAiRGVsZXRlIE9ubHkgSWYgTWVyZ2VkIEludG8iCittc2dzdHIgIiIKKworIzogbGliL2JyYW5jaF9kZWxldGUudGNsOjEwMworIywgdGNsLWZvcm1hdAorbXNnaWQgIlRoZSBmb2xsb3dpbmcgYnJhbmNoZXMgYXJlIG5vdCBjb21wbGV0ZWx5IG1lcmdlZCBpbnRvICVzOiIKK21zZ3N0ciAiIgorCisjOiBsaWIvYnJhbmNoX2RlbGV0ZS50Y2w6MTMxCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiIC0gJXM6IgorbXNnc3RyICIiCisKKyM6IGxpYi9icmFuY2hfZGVsZXRlLnRjbDoxNDEKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIiCisiRmFpbGVkIHRvIGRlbGV0ZSBicmFuY2hlczpcbiIKICIlcyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDoxOTAKLW1zZ2lkICJSZW1vdmUgVG9vbCIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDoxOTYKLW1zZ2lkICJSZW1vdmUgVG9vbCBDb21tYW5kcyIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDoyMDAKLW1zZ2lkICJSZW1vdmUiCi1tc2dzdHIgIiIKLQotIzogbGliL3Rvb2xzX2RsZy50Y2w6MjM2Ci1tc2dpZCAiKEJsdWUgZGVub3RlcyByZXBvc2l0b3J5LWxvY2FsIHRvb2xzKSIKLW1zZ3N0ciAiIgotCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDoyOTcKKyM6IGxpYi9kYXRlLnRjbDoyNQogIywgdGNsLWZvcm1hdAotbXNnaWQgIlJ1biBDb21tYW5kOiAlcyIKK21zZ2lkICJJbnZhbGlkIGRhdGUgZnJvbSBHaXQ6ICVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi90b29sc19kbGcudGNsOjMxMQotbXNnaWQgIkFyZ3VtZW50cyIKKyM6IGxpYi9kYXRhYmFzZS50Y2w6NDIKK21zZ2lkICJOdW1iZXIgb2YgbG9vc2Ugb2JqZWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvdG9vbHNfZGxnLnRjbDozNDgKLW1zZ2lkICJPSyIKKyM6IGxpYi9kYXRhYmFzZS50Y2w6NDMKK21zZ2lkICJEaXNrIHNwYWNlIHVzZWQgYnkgbG9vc2Ugb2JqZWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvdHJhbnNwb3J0LnRjbDo3CisjOiBsaWIvZGF0YWJhc2UudGNsOjQ0Cittc2dpZCAiTnVtYmVyIG9mIHBhY2tlZCBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kYXRhYmFzZS50Y2w6NDUKK21zZ2lkICJOdW1iZXIgb2YgcGFja3MiCittc2dzdHIgIiIKKworIzogbGliL2RhdGFiYXNlLnRjbDo0NgorbXNnaWQgIkRpc2sgc3BhY2UgdXNlZCBieSBwYWNrZWQgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZGF0YWJhc2UudGNsOjQ3Cittc2dpZCAiUGFja2VkIG9iamVjdHMgd2FpdGluZyBmb3IgcHJ1bmluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZGF0YWJhc2UudGNsOjQ4Cittc2dpZCAiR2FyYmFnZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZGF0YWJhc2UudGNsOjY2CiAjLCB0Y2wtZm9ybWF0Ci1tc2dpZCAiRmV0Y2hpbmcgbmV3IGNoYW5nZXMgZnJvbSAlcyIKK21zZ2lkICIlcyAoJXMpOiBEYXRhYmFzZSBTdGF0aXN0aWNzIgogbXNnc3RyICIiCiAKLSM6IGxpYi90cmFuc3BvcnQudGNsOjE4CisjOiBsaWIvZGF0YWJhc2UudGNsOjcyCittc2dpZCAiQ29tcHJlc3NpbmcgdGhlIG9iamVjdCBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZGF0YWJhc2UudGNsOjgzCittc2dpZCAiVmVyaWZ5aW5nIHRoZSBvYmplY3QgZGF0YWJhc2Ugd2l0aCBmc2NrLW9iamVjdHMiCittc2dzdHIgIiIKKworIzogbGliL2RhdGFiYXNlLnRjbDoxMDcKICMsIHRjbC1mb3JtYXQKLW1zZ2lkICJyZW1vdGUgcHJ1bmUgJXMiCittc2dpZCAiIgorIlRoaXMgcmVwb3NpdG9yeSBjdXJyZW50bHkgaGFzIGFwcHJveGltYXRlbHkgJWkgbG9vc2Ugb2JqZWN0cy5cbiIKKyJcbiIKKyJUbyBtYWludGFpbiBvcHRpbWFsIHBlcmZvcm1hbmNlIGl0IGlzIHN0cm9uZ2x5IHJlY29tbWVuZGVkIHRoYXQgeW91IGNvbXByZXNzICIKKyJ0aGUgZGF0YWJhc2UuXG4iCisiXG4iCisiQ29tcHJlc3MgdGhlIGRhdGFiYXNlIG5vdz8iCiBtc2dzdHIgIiIKIAotIzogbGliL3RyYW5zcG9ydC50Y2w6MTkKKyM6IGxpYi9lcnJvci50Y2w6MjAKICMsIHRjbC1mb3JtYXQKLW1zZ2lkICJQcnVuaW5nIHRyYWNraW5nIGJyYW5jaGVzIGRlbGV0ZWQgZnJvbSAlcyIKK21zZ2lkICIlczogZXJyb3IiCiBtc2dzdHIgIiIKIAotIzogbGliL3RyYW5zcG9ydC50Y2w6MjYKKyM6IGxpYi9lcnJvci50Y2w6MzYKICMsIHRjbC1mb3JtYXQKLW1zZ2lkICJQdXNoaW5nIGNoYW5nZXMgdG8gJXMiCittc2dpZCAiJXM6IHdhcm5pbmciCiBtc2dzdHIgIiIKIAotIzogbGliL3RyYW5zcG9ydC50Y2w6NjQKKyM6IGxpYi9lcnJvci50Y2w6ODAKICMsIHRjbC1mb3JtYXQKLW1zZ2lkICJNaXJyb3JpbmcgdG8gJXMiCittc2dpZCAiJXMgaG9vayBmYWlsZWQ6IgogbXNnc3RyICIiCiAKLSM6IGxpYi90cmFuc3BvcnQudGNsOjgyCisjOiBsaWIvZXJyb3IudGNsOjk2Cittc2dpZCAiWW91IG11c3QgY29ycmVjdCB0aGUgYWJvdmUgZXJyb3JzIGJlZm9yZSBjb21taXR0aW5nLiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZXJyb3IudGNsOjExNgogIywgdGNsLWZvcm1hdAotbXNnaWQgIlB1c2hpbmcgJXMgJXMgdG8gJXMiCittc2dpZCAiJXMgKCVzKTogZXJyb3IiCiBtc2dzdHIgIiIKIAotIzogbGliL3RyYW5zcG9ydC50Y2w6MTAwCi1tc2dpZCAiUHVzaCBCcmFuY2hlcyIKKyM6IGxpYi9tZXJnZS50Y2w6MTMKK21zZ2lkICIiCisiQ2Fubm90IG1lcmdlIHdoaWxlIGFtZW5kaW5nLlxuIgorIlxuIgorIllvdSBtdXN0IGZpbmlzaCBhbWVuZGluZyB0aGlzIGNvbW1pdCBiZWZvcmUgc3RhcnRpbmcgYW55IHR5cGUgb2YgbWVyZ2UuXG4iCiBtc2dzdHIgIiIKIAotIzogbGliL3RyYW5zcG9ydC50Y2w6MTE0Ci1tc2dpZCAiU291cmNlIEJyYW5jaGVzIgorIzogbGliL21lcmdlLnRjbDoyNworbXNnaWQgIiIKKyJMYXN0IHNjYW5uZWQgc3RhdGUgZG9lcyBub3QgbWF0Y2ggcmVwb3NpdG9yeSBzdGF0ZS5cbiIKKyJcbiIKKyJBbm90aGVyIEdpdCBwcm9ncmFtIGhhcyBtb2RpZmllZCB0aGlzIHJlcG9zaXRvcnkgc2luY2UgdGhlIGxhc3Qgc2Nhbi4gIEEgIgorInJlc2NhbiBtdXN0IGJlIHBlcmZvcm1lZCBiZWZvcmUgYSBtZXJnZSBjYW4gYmUgcGVyZm9ybWVkLlxuIgorIlxuIgorIlRoZSByZXNjYW4gd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN0YXJ0ZWQgbm93LlxuIgogbXNnc3RyICIiCiAKLSM6IGxpYi90cmFuc3BvcnQudGNsOjEzMQotbXNnaWQgIkRlc3RpbmF0aW9uIFJlcG9zaXRvcnkiCisjOiBsaWIvbWVyZ2UudGNsOjQ1CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiIgorIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhIGNvbmZsaWN0ZWQgbWVyZ2UuXG4iCisiXG4iCisiRmlsZSAlcyBoYXMgbWVyZ2UgY29uZmxpY3RzLlxuIgorIlxuIgorIllvdSBtdXN0IHJlc29sdmUgdGhlbSwgc3RhZ2UgdGhlIGZpbGUsIGFuZCBjb21taXQgdG8gY29tcGxldGUgdGhlIGN1cnJlbnQgIgorIm1lcmdlLiAgT25seSB0aGVuIGNhbiB5b3UgYmVnaW4gYW5vdGhlciBtZXJnZS5cbiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvdHJhbnNwb3J0LnRjbDoxNjkKLW1zZ2lkICJUcmFuc2ZlciBPcHRpb25zIgorIzogbGliL21lcmdlLnRjbDo1NQorIywgdGNsLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSBjaGFuZ2UuXG4iCisiXG4iCisiRmlsZSAlcyBpcyBtb2RpZmllZC5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIGNvbXBsZXRlIHRoZSBjdXJyZW50IGNvbW1pdCBiZWZvcmUgc3RhcnRpbmcgYSBtZXJnZS4gIERvaW5nIHNvICIKKyJ3aWxsIGhlbHAgeW91IGFib3J0IGEgZmFpbGVkIG1lcmdlLCBzaG91bGQgdGhlIG5lZWQgYXJpc2UuXG4iCiBtc2dzdHIgIiIKIAotIzogbGliL3RyYW5zcG9ydC50Y2w6MTcxCi1tc2dpZCAiRm9yY2Ugb3ZlcndyaXRlIGV4aXN0aW5nIGJyYW5jaCAobWF5IGRpc2NhcmQgY2hhbmdlcykiCisjOiBsaWIvbWVyZ2UudGNsOjEwOAorIywgdGNsLWZvcm1hdAorbXNnaWQgIiVzIG9mICVzIgogbXNnc3RyICIiCiAKLSM6IGxpYi90cmFuc3BvcnQudGNsOjE3NQotbXNnaWQgIlVzZSB0aGluIHBhY2sgKGZvciBzbG93IG5ldHdvcmsgY29ubmVjdGlvbnMpIgorIzogbGliL21lcmdlLnRjbDoxMjYKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJNZXJnaW5nICVzIGFuZCAlcy4uLiIKIG1zZ3N0ciAiIgogCi0jOiBsaWIvdHJhbnNwb3J0LnRjbDoxNzkKLW1zZ2lkICJJbmNsdWRlIHRhZ3MiCisjOiBsaWIvbWVyZ2UudGNsOjEzNworbXNnaWQgIk1lcmdlIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkuIgorbXNnc3RyICIiCisKKyM6IGxpYi9tZXJnZS50Y2w6MTM5Cittc2dpZCAiTWVyZ2UgZmFpbGVkLiAgQ29uZmxpY3QgcmVzb2x1dGlvbiBpcyByZXF1aXJlZC4iCittc2dzdHIgIiIKKworIzogbGliL21lcmdlLnRjbDoxNTYKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIlcyAoJXMpOiBNZXJnZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvbWVyZ2UudGNsOjE2NAorIywgdGNsLWZvcm1hdAorbXNnaWQgIk1lcmdlIEludG8gJXMiCittc2dzdHIgIiIKKworIzogbGliL21lcmdlLnRjbDoxODMKK21zZ2lkICJSZXZpc2lvbiBUbyBNZXJnZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvbWVyZ2UudGNsOjIxOAorbXNnaWQgIiIKKyJDYW5ub3QgYWJvcnQgd2hpbGUgYW1lbmRpbmcuXG4iCisiXG4iCisiWW91IG11c3QgZmluaXNoIGFtZW5kaW5nIHRoaXMgY29tbWl0LlxuIgorbXNnc3RyICIiCisKKyM6IGxpYi9tZXJnZS50Y2w6MjI4Cittc2dpZCAiIgorIkFib3J0IG1lcmdlP1xuIgorIlxuIgorIkFib3J0aW5nIHRoZSBjdXJyZW50IG1lcmdlIHdpbGwgY2F1c2UgKkFMTCogdW5jb21taXR0ZWQgY2hhbmdlcyB0byBiZSBsb3N0LlxuIgorIlxuIgorIkNvbnRpbnVlIHdpdGggYWJvcnRpbmcgdGhlIGN1cnJlbnQgbWVyZ2U/IgorbXNnc3RyICIiCisKKyM6IGxpYi9tZXJnZS50Y2w6MjM0Cittc2dpZCAiIgorIlJlc2V0IGNoYW5nZXM/XG4iCisiXG4iCisiUmVzZXR0aW5nIHRoZSBjaGFuZ2VzIHdpbGwgY2F1c2UgKkFMTCogdW5jb21taXR0ZWQgY2hhbmdlcyB0byBiZSBsb3N0LlxuIgorIlxuIgorIkNvbnRpbnVlIHdpdGggcmVzZXR0aW5nIHRoZSBjdXJyZW50IGNoYW5nZXM/IgorbXNnc3RyICIiCisKKyM6IGxpYi9tZXJnZS50Y2w6MjQ2Cittc2dpZCAiQWJvcnRpbmciCittc2dzdHIgIiIKKworIzogbGliL21lcmdlLnRjbDoyNDcKK21zZ2lkICJmaWxlcyByZXNldCIKK21zZ3N0ciAiIgorCisjOiBsaWIvbWVyZ2UudGNsOjI3NworbXNnaWQgIkFib3J0IGZhaWxlZC4iCittc2dzdHIgIiIKKworIzogbGliL21lcmdlLnRjbDoyNzkKK21zZ2lkICJBYm9ydCBjb21wbGV0ZWQuICBSZWFkeS4iCiBtc2dzdHIgIiIKZGlmZiAtLWdpdCBhL2dpdC1ndWkvcG8vZ2xvc3NhcnkvZGUucG8gYi9naXQtZ3VpL3BvL2dsb3NzYXJ5L2RlLnBvCmluZGV4IDM1NzY0ZDEuLjRjNWYyMzMgMTAwNjQ0Ci0tLSBhL2dpdC1ndWkvcG8vZ2xvc3NhcnkvZGUucG8KKysrIGIvZ2l0LWd1aS9wby9nbG9zc2FyeS9kZS5wbwpAQCAtNiwxMCArNiwxMSBAQAogbXNnaWQgIiIKIG1zZ3N0ciAiIgogIlByb2plY3QtSWQtVmVyc2lvbjogZ2l0LWd1aSBnbG9zc2FyeVxuIgotIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDA4LTAxLTA3IDIxOjIwKzAxMDBcbiIKLSJQTy1SZXZpc2lvbi1EYXRlOiAyMDA4LTAyLTE2IDIxOjQ4KzAxMDBcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAyMC0wMS0yNiAyMjoyNiswMTAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAyMC0wMi0wOSAyMToyMiswMTAwXG4iCiAiTGFzdC1UcmFuc2xhdG9yOiBDaHJpc3RpYW4gU3RpbW1pbmcgPHN0aW1taW5nQHR1aGguZGU+XG4iCiAiTGFuZ3VhZ2UtVGVhbTogR2VybWFuIFxuIgorIkxhbmd1YWdlOiBkZV9ERVxuIgogIk1JTUUtVmVyc2lvbjogMS4wXG4iCiAiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCiAiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgpAQCAtMTksNiArMjAsOSBAQAogIkVuZ2xpc2ggVGVybSAoRGVhciB0cmFuc2xhdG9yOiBUaGlzIGZpbGUgd2lsbCBuZXZlciBiZSB2aXNpYmxlIHRvIHRoZSB1c2VyISkiCiBtc2dzdHIgIiIKICJEZXV0c2NoZSDDnGJlcnNldHp1bmcuXG4iCisiR2l0LWNvcmUgZ2xvc3Nhcnk6XG4iCisiICBodHRwczovL2dpdGh1Yi5jb20vcnVlc3Rlci9naXQtcG8tZGUvd2lraS9UcmFuc2xhdGlvbi1HdWlkZWxpbmVzXG4iCisiXG4iCiAiQW5kZXJlIGRldXRzY2hlIFNDTTpcbiIKICIgIGh0dHA6Ly90b3J0b2lzZXN2bi5uZXQvZG9jcy9yZWxlYXNlL1RvcnRvaXNlU1ZOX2RlL2luZGV4Lmh0bWwgdW5kIGh0dHA6Ly8iCiAidG9ydG9pc2Vzdm4udGlncmlzLm9yZy9zdm4vdG9ydG9pc2Vzdm4vdHJ1bmsvTGFuZ3VhZ2VzL1RvcnRvaXNlX2RlLnBvICIKQEAgLTMyLDMzICszNiw3NyBAQAogIiAgaHR0cDovL3JhcGlkc3ZuLnRpZ3Jpcy5vcmcvc3ZuL3JhcGlkc3ZuL3RydW5rL3NyYy9sb2NhbGUvZGUvcmFwaWRzdm4ucG8gIgogIih1c2VybmFtZT1ndWVzdCwgcGFzc3dvcmQgZW1wdHksIHNjaGxlY2h0KSIKIAorIy4gInByZW1hdHVyZWx5IHN0b3AgYW5kIGFiYW5kb24gYW4gb3BlcmF0aW9uIgorbXNnaWQgImFib3J0IgorbXNnc3RyICJhYmJyZWNoZW4iCisKICMuICIiCiBtc2dpZCAiYW1lbmQiCiBtc2dzdHIgIm5hY2hiZXNzZXJuIChlcmfDpG56ZW4pIgogCisjLiAiYSBjb21taXQgdGhhdCBzdWNjZWVkcyB0aGUgY3VycmVudCBvbmUgaW4gZ2l0J3MgZ3JhcGggb2YgY29tbWl0cyAobm90IG5lY2Vzc2FyaWx5IGRpcmVjdGx5KSIKK21zZ2lkICJhbmNlc3RvciIKK21zZ3N0ciAiVm9yZ8Okbmdlci1Db21taXQiCisKICMuICIiCiBtc2dpZCAiYW5ub3RhdGUiCiBtc2dzdHIgImFubm90aWVyZW4iCiAKKyMuICJUaGUgcGVyc29uIHdobyBpbml0aWFsbHkgY3JlYXRlZCAoYXV0aG9yZWQpIGEgY29tbWl0IgorbXNnaWQgImF1dGhvciIKK21zZ3N0ciAiQXV0b3IiCisKKyMuICJhIHJlcG9zaXRvcnkgd2l0aCBvbmx5IC5naXQgZGlyZWN0b3J5LCB3aXRob3V0IHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnaWQgImJhcmUgcmVwb3NpdG9yeSIKK21zZ3N0ciAiYmxvw59lcyBQcm9qZWt0YXJjaGl2IgorCisjLiAiYSBwYXJlbnQgdmVyc2lvbiBvZiB0aGUgY3VycmVudCBmaWxlIgorbXNnaWQgImJhc2UiCittc2dzdHIgIlVyc3BydW5nIgorCisjLiAiIgorbXNnaWQgImJpc2VjdCIKK21zZ3N0ciAiYmluw6RyZSBTdWNoZSBbbm91bl0sIGJpbsOkcmUgU3VjaGUgYmVudXR6ZW4gW3ZlcmJdIgorCisjLiAiZ2V0IHRoZSBhdXRob3JzIHJlc3BvbnNpYmxlIGZvciBlYWNoIGxpbmUgaW4gYSBmaWxlIgorbXNnaWQgImJsYW1lIgorbXNnc3RyICJhbm5vdGllcmVuIgorCisjLiAgICAgICIiCittc2dpZCAiYmxvYiIKK21zZ3N0ciAiQmxvYiIKKwogIy4gIkEgJ2JyYW5jaCcgaXMgYW4gYWN0aXZlIGxpbmUgb2YgZGV2ZWxvcG1lbnQuIgogbXNnaWQgImJyYW5jaCBbbm91bl0iCi1tc2dzdHIgIlp3ZWlnIgorbXNnc3RyICJCcmFuY2giCiAKICMuICIiCiBtc2dpZCAiYnJhbmNoIFt2ZXJiXSIKLW1zZ3N0ciAidmVyendlaWdlbiIKK21zZ3N0ciAiYnJhbmNoZW4iCiAKICMuICIiCiBtc2dpZCAiY2hlY2tvdXQgW25vdW5dIgogbXNnc3RyICIiCi0iQXJiZWl0c2tvcGllIChFcnN0ZWxsdW5nIGVpbmVyIEFyYmVpdHNrb3BpZTsgQXVzY2hlY2s/IEF1c3NwaWVsdW5nPyBBYnJ1Zj8gIgotIlNvdXJjZSBTYWZlOiBBdXNjaGVja3ZvcmdhbmcpIgorIkFyYmVpdHNrb3BpZSAoQ2hlY2tvdXQ7IEVyc3RlbGx1bmcgZWluZXIgQXJiZWl0c2tvcGllOyBBdXNjaGVjaz8gU291cmNlICIKKyJTYWZlOiBBdXNjaGVja3ZvcmdhbmcpIgogCiAjLiAiVGhlIGFjdGlvbiBvZiB1cGRhdGluZyB0aGUgd29ya2luZyB0cmVlIHRvIGEgcmV2aXNpb24gd2hpY2ggd2FzIHN0b3JlZCBpbiB0aGUgb2JqZWN0IGRhdGFiYXNlLiIKIG1zZ2lkICJjaGVja291dCBbdmVyYl0iCiBtc2dzdHIgIiIKLSJBcmJlaXRza29waWUgZXJzdGVsbGVuOyBad2VpZyB1bXN0ZWxsZW4gW2NoZWNrb3V0IGEgYnJhbmNoXSAoYXVzY2hlY2tlbj8gIgotImF1c3NwaWVsZW4/IGFicnVmZW4/IFNvdXJjZSBTYWZlOiBhdXNjaGVja2VuKSIKKyJBcmJlaXRza29waWUgZXJzdGVsbGVuOyBCcmFuY2ggYXVzY2hlY2tlbiBbY2hlY2tvdXQgYSBicmFuY2hdICh1bXN0ZWxsZW4/ICIKKyJTb3VyY2UgU2FmZTogYXVzY2hlY2tlbikiCisKKyMuICJ0byBzZWxlY3QgYW5kIGFwcGx5IGEgc2luZ2xlIGNvbW1pdCB0byB0aGUgY3VycmVudCBIRUFEIHdpdGhvdXQgbWVyZ2luZyIKK21zZ2lkICJjaGVycnktcGljayIKK21zZ3N0ciAiY2hlcnJ5LXBpY2sgKHBmbMO8Y2tlbj8pIgorCisjLiAiYSBjb21taXQgdGhhdCBkaXJlY3RseSBzdWNjZWVkcyB0aGUgY3VycmVudCBvbmUgaW4gZ2l0J3MgZ3JhcGggb2YgY29tbWl0cyIKK21zZ2lkICJjaGlsZCBjb21taXQiCittc2dzdHIgIktpbmQtQ29tbWl0IgorCisjLiAiY2xlYW4gdGhlIHN0YXRlIG9mIHRoZSBnaXQgcmVwb3NpdG9yeSwgb2Z0ZW4gYWZ0ZXIgbWFudWFsbHkgc3RvcHBlZCBvcGVyYXRpb24iCittc2dpZCAiY2xlYW51cCIKK21zZ3N0ciAiYXVmcsOkdW1lbiIKIAogIy4gIiIKIG1zZ2lkICJjbG9uZSBbdmVyYl0iCkBAIC02NiwzOSArMTE0LDk4IEBACiAKICMuICJBIHNpbmdsZSBwb2ludCBpbiB0aGUgZ2l0IGhpc3RvcnkuIgogbXNnaWQgImNvbW1pdCBbbm91bl0iCi1tc2dzdHIgIiIKLSJWZXJzaW9uOyBFaW50cmFndW5nOyDDhG5kZXJ1bmcgKEJ1Y2h1bmc/LCBFaW50cmFndW5nPywgw5xiZXJ0cmFndW5nPywgIgotIlNlbmR1bmc/LCDDnGJlcmdhYmU/LCBFaW5zcGllbHVuZz8sIEFibGFnZXZvcmdhbmc/KSIKK21zZ3N0ciAiQ29tbWl0IChWZXJzaW9uPykiCiAKICMuICJUaGUgYWN0aW9uIG9mIHN0b3JpbmcgYSBuZXcgc25hcHNob3Qgb2YgdGhlIHByb2plY3QncyBzdGF0ZSBpbiB0aGUgZ2l0IGhpc3RvcnkuIgogbXNnaWQgImNvbW1pdCBbdmVyYl0iCiBtc2dzdHIgIiIKLSJlaW50cmFnZW4gKFRvcnRvaXNlU1ZOOiDDvGJlcnRyYWdlbjsgU291cmNlIFNhZmU6IGVpbmNoZWNrZW47IHNlbmRlbj8sICIKLSLDvGJlcmdlYmVuPywgZWluc3BpZWxlbj8sIGVpbnBmbGVnZW4/LCBhYmxlZ2VuPykiCisiY29tbWl0dGVuIChlaW50cmFnZW4/LCBUb3J0b2lzZVNWTjogw7xiZXJ0cmFnZW47IFNvdXJjZSBTYWZlOiBlaW5jaGVja2VuKSIKKworIy4gImEgbWVzc2FnZSB0aGF0IGdldHMgYXR0YWNoZWQgd2l0aCBhbnkgY29tbWl0IgorbXNnaWQgImNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICJDb21taXQtQmVzY2hyZWlidW5nIChNZWxkdW5nPywgTmFjaHJpY2h0PzsgU291cmNlIFNhZmU6IEtvbW1lbnRhcikiCisKKyMuICAgIlRoZSBwZXJzb24gd2hvIGNvbW1pdHRlZCBhIGNvbW1pdCAodG8gdGhlIGN1cnJlbnQgYnJhbmNoKSwgd2hpY2ggbWlnaHQgYmUgZGlmZmVyZW50IHRoYW4gdGhlIGF1dGhvci4iCittc2dpZCAiY29tbWl0dGVyIgorbXNnc3RyICJDb21taXR0ZXIiCisKKyMuICJhIGNvbW1pdCB0aGF0IHByZWNlZGVzIHRoZSBjdXJyZW50IG9uZSBpbiBnaXQncyBncmFwaCBvZiBjb21taXRzIChub3QgbmVjZXNzYXJpbHkgZGlyZWN0bHkpIgorbXNnaWQgImRlc2NlbmRhbnQiCittc2dzdHIgIk5hY2hmb2xnZXItQ29tbWl0IgorCisjLiAgICAgICAiY2hlY2tvdXQgb2YgYSByZXZpc2lvbiByYXRoZXIgdGhhbiBzb21lIGhlYWQiCittc2dpZCAiZGV0YWNoZWQgSEVBRCIKK21zZ3N0ciAibG9zZ2Vsw7ZzdGVyIEhFQUQgLyBCcmFuY2hzcGl0emUiCisKKyMuICJjaGVja291dCBvZiBhIHJldmlzaW9uIHJhdGhlciB0aGFuIHNvbWUgaGVhZCIKK21zZ2lkICJkZXRhY2hlZCBjaGVja291dCIKK21zZ3N0ciAibG9zZ2Vsw7ZzdGVyIENvbW1pdCAodm9uIEJyYW5jaCBsb3NnZWzDtnN0ZXIgQ29tbWl0PykiCiAKICMuICIiCiBtc2dpZCAiZGlmZiBbbm91bl0iCi1tc2dzdHIgIlZlcmdsZWljaCAoU291cmNlIFNhZmU6IFVudGVyc2NoaWVkZSkiCittc2dzdHIgIlZlcmdsZWljaCAoRGlmZj8gU291cmNlIFNhZmU6IFVudGVyc2NoaWVkZSkiCiAKICMuICIiCiBtc2dpZCAiZGlmZiBbdmVyYl0iCiBtc2dzdHIgInZlcmdsZWljaGVuIgogCi0jLiAiQSBmYXN0LWZvcndhcmQgaXMgYSBzcGVjaWFsIHR5cGUgb2YgbWVyZ2Ugd2hlcmUgeW91IGhhdmUgYSByZXZpc2lvbiBhbmQgeW91IGFyZSBtZXJnaW5nIGFub3RoZXIgYnJhbmNoJ3MgY2hhbmdlcyB0aGF0IGhhcHBlbiB0byBiZSBhIGRlc2NlbmRhbnQgb2Ygd2hhdCB5b3UgaGF2ZS4iCi1tc2dpZCAiZmFzdCBmb3J3YXJkIG1lcmdlIgotbXNnc3RyICJTY2huZWxsenVzYW1tZW5mw7xocnVuZyIKKyMuICAgIiIKK21zZ2lkICJkaXJlY3RvcnkiCittc2dzdHIgIlZlcnplaWNobmlzIgorCisjLiAiQSBmYXN0LWZvcndhcmQgbWVyZ2UgaXMgYSBzcGVjaWFsIHR5cGUgb2YgbWVyZ2Ugd2hlcmUgeW91IGhhdmUgYSByZXZpc2lvbiBhbmQgeW91IGFyZSBtZXJnaW5nIGFub3RoZXIgYnJhbmNoJ3MgY2hhbmdlcyB0aGF0IGhhcHBlbiB0byBiZSBhIGRlc2NlbmRhbnQgb2Ygd2hhdCB5b3UgaGF2ZS4iCittc2dpZCAiZmFzdC1mb3J3YXJkIgorbXNnc3RyICJ2b3JzcHVsZW4iCiAKICMuICJGZXRjaGluZyBhIGJyYW5jaCBtZWFucyB0byBnZXQgdGhlIGJyYW5jaCdzIGhlYWQgZnJvbSBhIHJlbW90ZSByZXBvc2l0b3J5LCB0byBmaW5kIG91dCB3aGljaCBvYmplY3RzIGFyZSBtaXNzaW5nIGZyb20gdGhlIGxvY2FsIG9iamVjdCBkYXRhYmFzZSwgYW5kIHRvIGdldCB0aGVtLCB0b28uIgogbXNnaWQgImZldGNoIgogbXNnc3RyICJhbmZvcmRlcm4gKGhvbGVuPykiCiAKKyMuICJhbnkgbWVyZ2Ugc3RyYXRlZ3kgdGhhdCB3b3JrcyBvbiBhIGZpbGUgYnkgZmlsZSBiYXNpcyIKK21zZ2lkICJmaWxlIGxldmVsIG1lcmdpbmciCittc2dzdHIgIkRhdGVpLWJhc2llcnRlcyB6dXNhbW1lbmbDvGhyZW4iCisKKyMuICAgICAgIiIKK21zZ2lkICJmaWxlIgorbXNnc3RyICJEYXRlaSIKKworIy4gInRoZSBsYXN0IHJldmlzaW9uIGluIGEgYnJhbmNoIgorbXNnaWQgImhlYWQiCittc2dzdHIgIkhFQUQgLyBCcmFuY2hzcGl0emUiCisKKyMuICJzY3JpcHQgdGhhdCBnZXRzIGV4ZWN1dGVkIGF1dG9tYXRpY2FsbHkgb24gc29tZSBldmVudCIKK21zZ2lkICJob29rIgorbXNnc3RyICJIb29rIChpbiBkZXIgZHQuIEluZm9ybWF0aWsgd29obCBhbHMgRWluc2NodWJtZXRob2RlIGJlemVpY2huZXQpIgorCiAjLiAiT25lIGNvbnRleHQgb2YgY29uc2VjdXRpdmUgbGluZXMgaW4gYSB3aG9sZSBwYXRjaCwgd2hpY2ggY29uc2lzdHMgb2YgbWFueSBzdWNoIGh1bmtzIgogbXNnaWQgImh1bmsiCi1tc2dzdHIgIktvbnRleHQiCittc2dzdHIgIlBhdGNoLUJsb2NrIChLb250ZXh0PykiCiAKICMuICJBIGNvbGxlY3Rpb24gb2YgZmlsZXMuIFRoZSBpbmRleCBpcyBhIHN0b3JlZCB2ZXJzaW9uIG9mIHlvdXIgd29ya2luZyB0cmVlLiIKIG1zZ2lkICJpbmRleCAoaW4gZ2l0LWd1aTogc3RhZ2luZyBhcmVhKSIKLW1zZ3N0ciAiQmVyZWl0c3RlbGx1bmciCittc2dzdHIgIiIKKyJCZXJlaXRzdGVsbHVuZyAoc29mZXJuIGRlciBnaXQgaW5kZXggZ2VtZWludCBpc3QuIEluIGdpdC1ndWkgc293aWVzbzogIgorInN0YWdpbmcgYXJlYSkiCisKKyMuICJ0aGUgZmlyc3QgY2hlY2tvdXQgZHVyaW5nIGEgY2xvbmUgb3BlcmF0aW9uIgorbXNnaWQgImluaXRpYWwgY2hlY2tvdXQiCittc2dzdHIgIkVyc3RlbGxlbiBkZXIgQXJiZWl0c2tvcGllLCBhdXNjaGVja2VuIgorCisjLiAiVGhlIHZlcnkgZmlyc3QgY29tbWl0IGluIGEgcmVwb3NpdG9yeSIKK21zZ2lkICJpbml0aWFsIGNvbW1pdCIKK21zZ3N0ciAiQWxsZXJlcnN0ZXIgQ29tbWl0IgorCisjLiAiYSBicmFuY2ggdGhhdCByZXNpZGVzIGluIHRoZSBsb2NhbCBnaXQgcmVwb3NpdG9yeSIKK21zZ2lkICJsb2NhbCBicmFuY2giCittc2dzdHIgIkxva2FsZXIgQnJhbmNoIgorCisjLiAiYSBHaXQgb2JqZWN0IHRoYXQgaXMgbm90IHBhcnQgb2YgYW55IHBhY2siCittc2dpZCAibG9vc2Ugb2JqZWN0IgorbXNnc3RyICJsb3NlcyBPYmpla3QiCisKKyMuICJhIGJyYW5jaCBjYWxsZWQgYnkgY29udmVudGlvbiAnbWFzdGVyJyB0aGF0IGV4aXN0cyBpbiBhIG5ld2x5IGNyZWF0ZWQgZ2l0IHJlcG9zaXRvcnkiCittc2dpZCAibWFzdGVyIGJyYW5jaCIKK21zZ3N0ciAiTWFzdGVyLUJyYW5jaCIKIAogIy4gIkEgc3VjY2Vzc2Z1bCBtZXJnZSByZXN1bHRzIGluIHRoZSBjcmVhdGlvbiBvZiBhIG5ldyBjb21taXQgcmVwcmVzZW50aW5nIHRoZSByZXN1bHQgb2YgdGhlIG1lcmdlLiIKIG1zZ2lkICJtZXJnZSBbbm91bl0iCkBAIC0xMTIsNzggKzIxOSwyMTIgQEAKIG1zZ2lkICJtZXNzYWdlIgogbXNnc3RyICJCZXNjaHJlaWJ1bmcgKE1lbGR1bmc/LCBOYWNocmljaHQ/OyBTb3VyY2UgU2FmZTogS29tbWVudGFyKSIKIAotIy4gIkRlbGV0ZXMgYWxsIHN0YWxlIHRyYWNraW5nIGJyYW5jaGVzIHVuZGVyIDxuYW1lPi4gVGhlc2Ugc3RhbGUgYnJhbmNoZXMgaGF2ZSBhbHJlYWR5IGJlZW4gcmVtb3ZlZCBmcm9tIHRoZSByZW1vdGUgcmVwb3NpdG9yeSByZWZlcmVuY2VkIGJ5IDxuYW1lPiwgYnV0IGFyZSBzdGlsbCBsb2NhbGx5IGF2YWlsYWJsZSBpbiAncmVtb3Rlcy88bmFtZT4nLiIKKyMuICJhIHJlbW90ZSBjYWxsZWQgYnkgY29udmVudGlvbiAnb3JpZ2luJyB0aGF0IHRoZSBjdXJyZW50IGdpdCByZXBvc2l0b3J5IGhhcyBiZWVuIGNsb25lZCBmcm9tIgorbXNnaWQgIm9yaWdpbiIKK21zZ3N0ciAib3JpZ2luIgorCisjLiAgICAgICAiIgorbXNnaWQgIm9ycGhhbiBjb21taXQiCittc2dzdHIgInZlcndhaXN0ZXIgQ29tbWl0IgorCisjLiAgIiIKK21zZ2lkICJvcnBoYW4gcmVmZXJlbmNlIgorbXNnc3RyICJ2ZXJ3YWlzdGUgUmVmZXJlbnoiCisKKyMuICJhIGZpbGUgY29udGFpbmluZyBtYW55IGdpdCBvYmplY3RzIHBhY2tlZCB0b2dldGhlciIKK21zZ2lkICJwYWNrIFtub3VuXSIKK21zZ3N0ciAiUGFjay1EYXRlaSIKKworIy4gICAgICJ0aGUgcHJvY2VzcyBvZiBjcmVhdGluZyBhIHBhY2sgZmlsZSIKK21zZ2lkICJwYWNrIFt2ZXJiXSIKK21zZ3N0ciAiUGFjay1EYXRlaSBlcnN0ZWxsZW4iCisKKyMuICJhIEdpdCBvYmplY3QgcGFydCBvZiBzb21lIHBhY2siCittc2dpZCAicGFja2VkIG9iamVjdCIKK21zZ3N0ciAiZ2VwYWNrdGVzIE9iamVrdCIKKworIy4gImEgY29tbWl0IHRoYXQgZGlyZWN0bHkgcHJlY2VkZXMgdGhlIGN1cnJlbnQgb25lIGluIGdpdCdzIGdyYXBoIG9mIGNvbW1pdHMiCittc2dpZCAicGFyZW50IGNvbW1pdCIKK21zZ3N0ciAiRWx0ZXJuLUNvbW1pdCIKKworbXNnaWQgInBhdGNoIgorbXNnc3RyICJQYXRjaCIKKworIy4gIlRoZSBwYXRoIHRvIGEgZmlsZSIKK21zZ2lkICJwYXRoIgorbXNnc3RyICJQZmFkIgorCisjLiAiRGVsZXRlIGFsbCBzdGFsZSB0cmFja2luZyBicmFuY2hlcyB1bmRlciA8bmFtZT4uIFRoZXNlIHN0YWxlIGJyYW5jaGVzIGhhdmUgYWxyZWFkeSBiZWVuIHJlbW92ZWQgZnJvbSB0aGUgcmVtb3RlIHJlcG9zaXRvcnkgcmVmZXJlbmNlZCBieSA8bmFtZT4sIGJ1dCBhcmUgc3RpbGwgbG9jYWxseSBhdmFpbGFibGUgaW4gJ3JlbW90ZXMvPG5hbWU+Jy4iCiBtc2dpZCAicHJ1bmUiCi1tc2dzdHIgImF1ZnLDpHVtZW4gKGVudGZlcm5lbj8pIgorbXNnc3RyICJ2ZXJhbHRldGUgQnJhbmNoZXMgZW50ZmVybmVuIChhdWZyw6R1bWVuPywgZW50ZmVybmVuPykiCiAKICMuICJQdWxsaW5nIGEgYnJhbmNoIG1lYW5zIHRvIGZldGNoIGl0IGFuZCBtZXJnZSBpdC4iCiBtc2dpZCAicHVsbCIKLW1zZ3N0ciAiw7xiZXJuZWhtZW4gKHppZWhlbj8pIgorbXNnc3RyICIiCisiw7xiZXJuZWhtZW4gKHB1bGw/IHppZWhlbj8gVm9yc2ljaHQ6IHp1c2FtbWVuZsO8aHJlbiA9IG1lcmdlLCBhYmVyIHB1bGwga2FubiAiCisiYXVjaCByZWJhc2UgYmV3aXJrZW4pIgogCiAjLiAiUHVzaGluZyBhIGJyYW5jaCBtZWFucyB0byBnZXQgdGhlIGJyYW5jaCdzIGhlYWQgcmVmIGZyb20gYSByZW1vdGUgcmVwb3NpdG9yeSwgYW5kIC4uLiAod2VsbCwgY2FuIHNvbWVvbmUgcGxlYXNlIGV4cGxhaW4gaXQgZm9yIG1lcmUgbW9ydGFscz8pIgogbXNnaWQgInB1c2giCiBtc2dzdHIgInZlcnNlbmRlbiAoYXVzbGllZmVybj8gaG9jaGxhZGVuPyB2ZXJzY2hpY2tlbj8gc2NoaWViZW4/KSIKIAorIy4gIlRoZSBwcm9jZXNzIG9mIHJlYmFzaW5nIG9uZSBzZXQgb2YgY29tbWl0cyBvbiB0b3Agb2YgYW5vdGhlciBicmFuY2gncyBoZWFkIgorbXNnaWQgInJlYmFzZSBbbm91bl0iCittc2dzdHIgImRlciBSZWJhc2UgKGRhcyBVbXBmbGFuemVuKSIKKworIy4gIlJlLWFwcGx5IG9uZSBzZXQgb2YgY29tbWl0cyBvbiB0b3Agb2YgYW5vdGhlciBicmFuY2gncyBoZWFkLiBDb250cmFyeSB0byBtZXJnZS4iCittc2dpZCAicmViYXNlIFt2ZXJiXSIKK21zZ3N0ciAicmViYXNlICh1bXBmbGFuemVuKSIKKwogIy4gIiIKIG1zZ2lkICJyZWRvIgogbXNnc3RyICJ3aWVkZXJob2xlbiIKIAotIy4gIkFuIG90aGVyIHJlcG9zaXRvcnkgKCdyZW1vdGUnKS4gT25lIG1pZ2h0IGhhdmUgYSBzZXQgb2YgcmVtb3RlcyB3aG9zZSBicmFuY2hlcyBvbmUgdHJhY2tzLiIKLW1zZ2lkICJyZW1vdGUiCi1tc2dzdHIgIkFuZGVyZSBBcmNoaXZlIChHZWdlbnNlaXRlPywgRW50ZmVybnRlPywgU2VydmVyPykiCisjLiAgICIiCittc2dpZCAicmVmZXJlbmNlIgorbXNnc3RyICJSZWZlcmVueiIKKworIy4gInRoZSBsb2cgZmlsZSBjb250YWluaW5nIGFsbCBzdGF0ZXMgb2YgdGhlIEhFQUQgcmVmZXJlbmNlIChpbiBvdGhlciB3b3JkcyBwYXN0IHByaXN0aW5lIHN0YXRlcyBvZiB0aGUgd29ya2luZyBjb3B5KSIKK21zZ2lkICJyZWZsb2ciCittc2dzdHIgIkNvbW1pdC1Mb2csIMK7cmVmbG9nwqsiCisKK21zZ2lkICJyZWZtYXAiCittc2dzdHIgIlJlZm1hcCIKKworIy4gIiIKK21zZ2lkICJyZWZzcGVjIgorbXNnc3RyICJSZWZzcGVjIgorCisjLiAiVGhlIGFkamVjdGl2ZSBmb3IgYW55dGhpbmcgd2hpY2ggaXMgb3V0c2lkZSBvZiB0aGUgY3VycmVudCAobG9jYWwpIHJlcG9zaXRvcnkiCittc2dpZCAicmVtb3RlIFthZGpdIgorbXNnc3RyICJFeHRlcm4gKEFuZGVyZT8sIEdlZ2Vuc2VpdGU/LCBFbnRmZXJudGU/LCBTZXJ2ZXI/KSIKKworIy4gICAgICAgIkEgYnJhbmNoIGluIGFueSBvdGhlciAoJ3JlbW90ZScpIHJlcG9zaXRvcnkiCittc2dpZCAicmVtb3RlIGJyYW5jaCIKK21zZ3N0ciAiRXh0ZXJuZXIgYnJhbmNoIgorCisjLiAgICJBbiBvdGhlciByZXBvc2l0b3J5ICgncmVtb3RlJykuIE9uZSBtaWdodCBoYXZlIGEgc2V0IG9mIHJlbW90ZXMgd2hvc2UgYnJhbmNoZXMgb25lIHRyYWNrcy4iCittc2dpZCAicmVtb3RlIHJlcG9zaXRvcnkiCittc2dzdHIgIkV4dGVybmVzIFJlcG9zaXRvcnkiCiAKICMuICJBIGNvbGxlY3Rpb24gb2YgcmVmcyAoPykgdG9nZXRoZXIgd2l0aCBhbiBvYmplY3QgZGF0YWJhc2UgY29udGFpbmluZyBhbGwgb2JqZWN0cyB3aGljaCBhcmUgcmVhY2hhYmxlIGZyb20gdGhlIHJlZnMuLi4gKG9vcHMsIHlvdSd2ZSBsb3N0IG1lIGhlcmUuIEFnYWluLCBwbGVhc2UgYW4gZXhwbGFuYXRpb24gZm9yIG1lcmUgbW9ydGFscz8pIgogbXNnaWQgInJlcG9zaXRvcnkiCi1tc2dzdHIgIlByb2pla3RhcmNoaXYiCittc2dzdHIgIlJlcG9zaXRvcnkiCiAKICMuICIiCiBtc2dpZCAicmVzZXQiCi1tc2dzdHIgInp1csO8Y2tzZXR6ZW4gKHp1csO8Y2trZWhyZW4/KSIKK21zZ3N0ciAidW1zZXR6ZW4gKHJlc2V0IHRvIGNvbW1pdCksIMOEbmRlcnVuZ2VuIHZlcndlcmZlbiAocmVzZXQgdG8gSEVBRCkiCisKKyMuICJkZWNpZGUgd2hpY2ggY2hhbmdlcyBmcm9tIGFsdGVybmF0aXZlIHZlcnNpb25zIG9mIGEgZmlsZSBzaG91bGQgcGVyc2lzdCBpbiBHaXQiCittc2dpZCAicmVzb2x2ZSAoYSBjb25mbGljdCkiCittc2dzdHIgImF1ZmzDtnNlbiAoZWluZW4gS29uZmxpa3QpIgorCisjLiAiYWJhbmRvbiBjaGFuZ2VzIGFuZCBnbyB0byBwcmlzdGluZSB2ZXJzaW9uIgorbXNnaWQgInJldmVydCBjaGFuZ2VzIgorbXNnc3RyICIiCisidmVyd2VyZmVuIChiZWkgZ2l0LXJlc2V0IGJ6dy4gY2hlY2tvdXQpLCB6dXLDvGNrbmVobWVuIChiZWkgZ2l0LXJldmVydCwgYWxzbyAiCisibWl0IG5ldWVtIGNvbW1pdDsgdW1rZWhyZW4/KSIKIAogIy4gIiIKIG1zZ2lkICJyZXZlcnQiCi1tc2dzdHIgInZlcndlcmZlbiAoYmVpIGdpdC1yZXNldCksIHJldmlkaWVyZW4gKGJlaSBnaXQtcmV2ZXJ0LCBhbHNvIG1pdCBuZXVlbSBjb21taXQpIgorbXNnc3RyICIiCisidmVyd2VyZmVuIChiZWkgZ2l0LXJlc2V0IGJ6dy4gY2hlY2tvdXQpLCB6dXLDvGNrbmVobWVuIChiZWkgZ2l0LXJldmVydCwgYWxzbyAiCisibWl0IG5ldWVtIGNvbW1pdDsgdW1rZWhyZW4/KSIKKworIy4gImV4cHJlc3Npb24gdGhhdCBzaWduaWZpZXMgYSByZXZpc2lvbiBpbiBnaXQiCittc2dpZCAicmV2aXNpb24gZXhwcmVzc2lvbiIKK21zZ3N0ciAiVmVyc2lvbiBSZWdleHAtQXVzZHJ1Y2siCiAKICMuICJBIHBhcnRpY3VsYXIgc3RhdGUgb2YgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHdoaWNoIHdhcyBzdG9yZWQgaW4gdGhlIG9iamVjdCBkYXRhYmFzZS4iCiBtc2dpZCAicmV2aXNpb24iCi1tc2dzdHIgIlZlcnNpb24gKFRvcnRvaXNlU1ZOOiBSZXZpc2lvbjsgU291cmNlIFNhZmU6IFZlcnNpb24pIgorbXNnc3RyICIiCisiVmVyc2lvbiAoYWJlciB3YXMgbWFjaHQgZGFzIFdvcnQgcmV2aXNpb24gaGllciBpbSBHaXQ/PyBUb3J0b2lzZVNWTjogIgorIlJldmlzaW9uOyBTb3VyY2UgU2FmZTogVmVyc2lvbikiCiAKICMuICIiCiBtc2dpZCAic2lnbiBvZmYiCi1tc2dzdHIgImFiemVpY2huZW4gKGdlZ2VuemVpY2huZW4/LCBmcmVpemVpY2huZW4/LCBhYnNlZ25lbj8pIgorbXNnc3RyICJhYnplaWNobmVuIChzaWduaWVyZW4/IGdlZ2VuemVpY2huZW4/LCBmcmVpemVpY2huZW4/KSIKIAotIy4gIiIKKyMuICAgICAic2VlOiBzdGFnaW5nIGFyZWEuIEluIHNvbWUgYXJlYXMgb2YgZ2l0IHRoaXMgaXMgY2FsbGVkICdpbmRleCcuIgorbXNnaWQgInN0YWdlIFtub3VuXSwgaW5kZXgiCittc2dzdHIgIkJlcmVpdHN0ZWxsdW5nIgorCisjLiAiYWRkIHNvbWUgY29udGVudCBvZiBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgdG8gdGhlIHN0YWdpbmcgYXJlYSBpbiBwcmVwYXJhdGlvbiBmb3IgYSBjb21taXQiCittc2dpZCAic3RhZ2UgW3ZlcmJdIgorbXNnc3RyICJiZXJlaXRzdGVsbGVuIgorCisjLiAiVGhlIHBsYWNlIHdoZXJlIGNoYW5nZXMgZnJvbSBmaWxlcyBhcmUgbWFya2VkIHRvIGJlIGluY2x1ZGVkIGZvciB0aGUgbmV4dCBjb21taXQuIEluIHNvbWUgYXJlYXMgb2YgZ2l0IHRoaXMgaXMgY2FsbGVkICdpbmRleCcuIgogbXNnaWQgInN0YWdpbmcgYXJlYSIKIG1zZ3N0ciAiQmVyZWl0c3RlbGx1bmciCiAKKyMuICJUaGUgcGxhY2UgKHN0YWNrKSB3aGVyZSBjaGFuZ2VzIGNhbiBiZSB0ZW1wb3JhcmlseSBzYXZlZCB3aXRob3V0IGNvbW1pdHRpbmciCittc2dpZCAic3Rhc2ggW25vdW5dIgorbXNnc3RyICJkZXIgU3Rhc2giCisKKyMuICJ0ZW1wb3JhcmlseSBzYXZlIGNoYW5nZXMgaW4gYSBzdGFjayB3aXRob3V0IGNvbW1pdHRpbmciCittc2dpZCAic3Rhc2ggW3ZlcmJdIgorbXNnc3RyICJpbiBTdGFzaCBzcGVpY2hlcm47IFwic3Rhc2hcIiBiZW51dHplbiIKKwogIy4gIiIKIG1zZ2lkICJzdGF0dXMiCiBtc2dzdHIgIlN0YXR1cyIKIAotIy4gIkEgcmVmIHBvaW50aW5nIHRvIGEgdGFnIG9yIGNvbW1pdCBvYmplY3QiCi1tc2dpZCAidGFnIFtub3VuXSIKLW1zZ3N0ciAiTWFya2llcnVuZyIKLQogIy4gIiIKK21zZ2lkICJzdWJtb2R1bGUiCittc2dzdHIgIlN1Ym1vZHVsIChVbnRlcm1vZHVsPykiCisKKyMuICJBIHJlZiBwb2ludGluZyB0byBzb21lIGNvbW1pdCBvYmplY3QuIEluIG90aGVyIHdvcmRzOiBBIGxhYmVsIG9uIGEgc3BlY2lmaWMgY29tbWl0LiIKK21zZ2lkICJ0YWcgW25vdW5dIgorbXNnc3RyICJUYWcgKE1hcmtpZXJ1bmc/KSIKKworIy4gIlRoZSBwcm9jZXNzIG9mIGNyZWF0aW5nIGEgdGFnIGF0IGEgc3BlY2lmaWMgY29tbWl0IG9iamVjdCIKIG1zZ2lkICJ0YWcgW3ZlcmJdIgotbXNnc3RyICJtYXJraWVyZW4iCittc2dzdHIgInRhZ2dlbiAobWFya2llcmVuPykiCisKKyMuICJUaGUgcGVyc29uIHdobyBjcmVhdGVkIGEgdGFnIgorbXNnaWQgInRhZ2dlciIKK21zZ3N0ciAiVGFnLUVyc3RlbGxlciAoTWFya2llcnVuZ3MtRXJzdGVsbGVyPykiCisKKyMuICJmaWxlIHdob3NlIGNvbnRlbnQgaXMgdHJhY2tlZC9ub3QgdHJhY2tlZCBieSBnaXQiCittc2dpZCAidHJhY2tlZC91bnRyYWNrZWQiCittc2dzdHIgInZlcnNpb25pZXJ0L3VudmVyc2lvbmllcnQiCiAKICMuICJBIHJlZ3VsYXIgZ2l0IGJyYW5jaCB0aGF0IGlzIHVzZWQgdG8gZm9sbG93IGNoYW5nZXMgZnJvbSBhbm90aGVyIHJlcG9zaXRvcnkuIgogbXNnaWQgInRyYWNraW5nIGJyYW5jaCIKLW1zZ3N0ciAiw5xiZXJuYWhtZXp3ZWlnIgorbXNnc3RyICJUcmFja2luZy1CcmFuY2ggKFZlcmZvbGd1bmdzYnJhbmNoPyDDnGJlcm5haG1lYnJhbmNoPykiCisKKyMuICIiCittc2dpZCAidHJhaWxlciIKK21zZ3N0ciAiQW5oYW5nIgorCisjLiAiMS4gdHJlZSBvYmplY3QsIDIuIGRpcmVjdG9yeSB0cmVlIgorbXNnaWQgInRyZWUiCittc2dzdHIgIjEuIEJhdW0tT2JqZWt0LCAyLiBWZXJ6ZWljaG5pc2JhdW0iCiAKICMuICIiCiBtc2dpZCAidW5kbyIKIG1zZ3N0ciAicsO8Y2tnw6RuZ2lnIgogCisjLiAiUmVtb3ZlIGNvbnRlbnQgb2YgZmlsZXMgZnJvbSB0aGUgc3RhZ2luZyBhcmVhIGFnYWluIHNvIHRoYXQgaXQgd2lsbCBub3QgYmUgcGFydCBvZiB0aGUgbmV4dCBjb21taXQiCittc2dpZCAidW5zdGFnZSIKK21zZ3N0ciAiYXVzIEJlcmVpdHN0ZWxsdW5nIGhlcmF1c25laG1lbiIKKworIy4gIlJldHJpZXZpbmcgdGhlIHRlbXBvcmFyaWx5IHNhdmVkIGNoYW5nZXMgYmFjayBhZ2FpbiBmcm9tIHRoZSBzdGFzaCIKK21zZ2lkICJ1bnN0YXNoIFt2ZXJiXSIKK21zZ3N0ciAiYXVzIFN0YXNoIHp1csO8Y2tsYWRlbiIKKwogIy4gIiIKIG1zZ2lkICJ1cGRhdGUiCiBtc2dzdHIgImFrdHVhbGlzaWVyZW4iCiAKICMuICIiCittc2dpZCAidXBzdHJlYW0gYnJhbmNoIgorbXNnc3RyICJVcHN0cmVhbS1CcmFuY2giCisKKyMuICIiCiBtc2dpZCAidmVyaWZ5IgogbXNnc3RyICLDvGJlcnByw7xmZW4iCiAKICMuICJUaGUgdHJlZSBvZiBhY3R1YWwgY2hlY2tlZCBvdXQgZmlsZXMuIgotbXNnaWQgIndvcmtpbmcgY29weSwgd29ya2luZyB0cmVlIgorbXNnaWQgIndvcmtpbmcgZGlyZWN0b3J5LCB3b3JraW5nIGNvcHksIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiQXJiZWl0c2tvcGllIgpkaWZmIC0tZ2l0IGEvZ2l0LWd1aS9wby9nbG9zc2FyeS9naXQtZ3VpLWdsb3NzYXJ5LnBvdCBiL2dpdC1ndWkvcG8vZ2xvc3NhcnkvZ2l0LWd1aS1nbG9zc2FyeS5wb3QKaW5kZXggNDBlYjNlOS4uNGU2NmUwZCAxMDA2NDQKLS0tIGEvZ2l0LWd1aS9wby9nbG9zc2FyeS9naXQtZ3VpLWdsb3NzYXJ5LnBvdAorKysgYi9naXQtZ3VpL3BvL2dsb3NzYXJ5L2dpdC1ndWktZ2xvc3NhcnkucG90CkBAIC02LDcgKzYsNyBAQAogbXNnaWQgIiIKIG1zZ3N0ciAiIgogIlByb2plY3QtSWQtVmVyc2lvbjogUEFDS0FHRSBWRVJTSU9OXG4iCi0iUE9ULUNyZWF0aW9uLURhdGU6IDIwMDgtMDEtMDcgMjE6MjArMDEwMFxuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDIwLTAxLTI2IDIyOjI2KzAxMDBcbiIKICJQTy1SZXZpc2lvbi1EYXRlOiBZRUFSLU1PLURBIEhPOk1JK1pPTkVcbiIKICJMYXN0LVRyYW5zbGF0b3I6IEZVTEwgTkFNRSA8RU1BSUxAQUREUkVTUz5cbiIKICJMYW5ndWFnZS1UZWFtOiBMQU5HVUFHRSA8TExAbGkub3JnPlxuIgpAQCAtMTgsMTQgKzE4LDQ2IEBACiBtc2dpZCAiRW5nbGlzaCBUZXJtIChEZWFyIHRyYW5zbGF0b3I6IFRoaXMgZmlsZSB3aWxsIG5ldmVyIGJlIHZpc2libGUgdG8gdGhlIHVzZXIhKSIKIG1zZ3N0ciAiIgogCisjLiAicHJlbWF0dXJlbHkgc3RvcCBhbmQgYWJhbmRvbiBhbiBvcGVyYXRpb24iCittc2dpZCAiYWJvcnQiCittc2dzdHIgIiIKKwogIy4gIiIKIG1zZ2lkICJhbWVuZCIKIG1zZ3N0ciAiIgogCisjLiAiYSBjb21taXQgdGhhdCBzdWNjZWVkcyB0aGUgY3VycmVudCBvbmUgaW4gZ2l0J3MgZ3JhcGggb2YgY29tbWl0cyAobm90IG5lY2Vzc2FyaWx5IGRpcmVjdGx5KSIKK21zZ2lkICJhbmNlc3RvciIKK21zZ3N0ciAiIgorCiAjLiAiIgogbXNnaWQgImFubm90YXRlIgogbXNnc3RyICIiCiAKKyMuICJUaGUgcGVyc29uIHdobyBpbml0aWFsbHkgY3JlYXRlZCAoYXV0aG9yZWQpIGEgY29tbWl0IgorbXNnaWQgImF1dGhvciIKK21zZ3N0ciAiIgorCisjLiAiYSByZXBvc2l0b3J5IHdpdGggb25seSAuZ2l0IGRpcmVjdG9yeSwgd2l0aG91dCB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ2lkICJiYXJlIHJlcG9zaXRvcnkiCittc2dzdHIgIiIKKworIy4gImEgcGFyZW50IHZlcnNpb24gb2YgdGhlIGN1cnJlbnQgZmlsZSIKK21zZ2lkICJiYXNlIgorbXNnc3RyICIiCisKKyMuICIiCittc2dpZCAiYmlzZWN0IgorbXNnc3RyICIiCisKKyMuICJnZXQgdGhlIGF1dGhvcnMgcmVzcG9uc2libGUgZm9yIGVhY2ggbGluZSBpbiBhIGZpbGUiCittc2dpZCAiYmxhbWUiCittc2dzdHIgIiIKKworIy4gICAgICAiIgorbXNnaWQgImJsb2IiCittc2dzdHIgIiIKKwogIy4gIkEgJ2JyYW5jaCcgaXMgYW4gYWN0aXZlIGxpbmUgb2YgZGV2ZWxvcG1lbnQuIgogbXNnaWQgImJyYW5jaCBbbm91bl0iCiBtc2dzdHIgIiIKQEAgLTQyLDYgKzc0LDE4IEBACiBtc2dpZCAiY2hlY2tvdXQgW3ZlcmJdIgogbXNnc3RyICIiCiAKKyMuICJ0byBzZWxlY3QgYW5kIGFwcGx5IGEgc2luZ2xlIGNvbW1pdCB0byB0aGUgY3VycmVudCBIRUFEIHdpdGhvdXQgbWVyZ2luZyIKK21zZ2lkICJjaGVycnktcGljayIKK21zZ3N0ciAiIgorCisjLiAiYSBjb21taXQgdGhhdCBkaXJlY3RseSBzdWNjZWVkcyB0aGUgY3VycmVudCBvbmUgaW4gZ2l0J3MgZ3JhcGggb2YgY29tbWl0cyIKK21zZ2lkICJjaGlsZCBjb21taXQiCittc2dzdHIgIiIKKworIy4gImNsZWFuIHRoZSBzdGF0ZSBvZiB0aGUgZ2l0IHJlcG9zaXRvcnksIG9mdGVuIGFmdGVyIG1hbnVhbGx5IHN0b3BwZWQgb3BlcmF0aW9uIgorbXNnaWQgImNsZWFudXAiCittc2dzdHIgIiIKKwogIy4gIiIKIG1zZ2lkICJjbG9uZSBbdmVyYl0iCiBtc2dzdHIgIiIKQEAgLTU0LDYgKzk4LDI2IEBACiBtc2dpZCAiY29tbWl0IFt2ZXJiXSIKIG1zZ3N0ciAiIgogCisjLiAiYSBtZXNzYWdlIHRoYXQgZ2V0cyBhdHRhY2hlZCB3aXRoIGFueSBjb21taXQiCittc2dpZCAiY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIiIKKworIy4gICAiVGhlIHBlcnNvbiB3aG8gY29tbWl0dGVkIGEgY29tbWl0ICh0byB0aGUgY3VycmVudCBicmFuY2gpLCB3aGljaCBtaWdodCBiZSBkaWZmZXJlbnQgdGhhbiB0aGUgYXV0aG9yLiIKK21zZ2lkICJjb21taXR0ZXIiCittc2dzdHIgIiIKKworIy4gImEgY29tbWl0IHRoYXQgcHJlY2VkZXMgdGhlIGN1cnJlbnQgb25lIGluIGdpdCdzIGdyYXBoIG9mIGNvbW1pdHMgKG5vdCBuZWNlc3NhcmlseSBkaXJlY3RseSkiCittc2dpZCAiZGVzY2VuZGFudCIKK21zZ3N0ciAiIgorCisjLiAgICAgICAiY2hlY2tvdXQgb2YgYSByZXZpc2lvbiByYXRoZXIgdGhhbiBzb21lIGhlYWQiCittc2dpZCAiZGV0YWNoZWQgSEVBRCIKK21zZ3N0ciAiIgorCisjLiAiY2hlY2tvdXQgb2YgYSByZXZpc2lvbiByYXRoZXIgdGhhbiBzb21lIGhlYWQiCittc2dpZCAiZGV0YWNoZWQgY2hlY2tvdXQiCittc2dzdHIgIiIKKwogIy4gIiIKIG1zZ2lkICJkaWZmIFtub3VuXSIKIG1zZ3N0ciAiIgpAQCAtNjIsMTQgKzEyNiwzNCBAQAogbXNnaWQgImRpZmYgW3ZlcmJdIgogbXNnc3RyICIiCiAKLSMuICJBIGZhc3QtZm9yd2FyZCBpcyBhIHNwZWNpYWwgdHlwZSBvZiBtZXJnZSB3aGVyZSB5b3UgaGF2ZSBhIHJldmlzaW9uIGFuZCB5b3UgYXJlIG1lcmdpbmcgYW5vdGhlciBicmFuY2gncyBjaGFuZ2VzIHRoYXQgaGFwcGVuIHRvIGJlIGEgZGVzY2VuZGFudCBvZiB3aGF0IHlvdSBoYXZlLiIKLW1zZ2lkICJmYXN0IGZvcndhcmQgbWVyZ2UiCisjLiAgICIiCittc2dpZCAiZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyMuICJBIGZhc3QtZm9yd2FyZCBtZXJnZSBpcyBhIHNwZWNpYWwgdHlwZSBvZiBtZXJnZSB3aGVyZSB5b3UgaGF2ZSBhIHJldmlzaW9uIGFuZCB5b3UgYXJlIG1lcmdpbmcgYW5vdGhlciBicmFuY2gncyBjaGFuZ2VzIHRoYXQgaGFwcGVuIHRvIGJlIGEgZGVzY2VuZGFudCBvZiB3aGF0IHlvdSBoYXZlLiIKK21zZ2lkICJmYXN0LWZvcndhcmQiCiBtc2dzdHIgIiIKIAogIy4gIkZldGNoaW5nIGEgYnJhbmNoIG1lYW5zIHRvIGdldCB0aGUgYnJhbmNoJ3MgaGVhZCBmcm9tIGEgcmVtb3RlIHJlcG9zaXRvcnksIHRvIGZpbmQgb3V0IHdoaWNoIG9iamVjdHMgYXJlIG1pc3NpbmcgZnJvbSB0aGUgbG9jYWwgb2JqZWN0IGRhdGFiYXNlLCBhbmQgdG8gZ2V0IHRoZW0sIHRvby4iCiBtc2dpZCAiZmV0Y2giCiBtc2dzdHIgIiIKIAorIy4gImFueSBtZXJnZSBzdHJhdGVneSB0aGF0IHdvcmtzIG9uIGEgZmlsZSBieSBmaWxlIGJhc2lzIgorbXNnaWQgImZpbGUgbGV2ZWwgbWVyZ2luZyIKK21zZ3N0ciAiIgorCisjLiAgICAgICIiCittc2dpZCAiZmlsZSIKK21zZ3N0ciAiIgorCisjLiAidGhlIGxhc3QgcmV2aXNpb24gaW4gYSBicmFuY2giCittc2dpZCAiaGVhZCIKK21zZ3N0ciAiIgorCisjLiAic2NyaXB0IHRoYXQgZ2V0cyBleGVjdXRlZCBhdXRvbWF0aWNhbGx5IG9uIHNvbWUgZXZlbnQiCittc2dpZCAiaG9vayIKK21zZ3N0ciAiIgorCiAjLiAiT25lIGNvbnRleHQgb2YgY29uc2VjdXRpdmUgbGluZXMgaW4gYSB3aG9sZSBwYXRjaCwgd2hpY2ggY29uc2lzdHMgb2YgbWFueSBzdWNoIGh1bmtzIgogbXNnaWQgImh1bmsiCiBtc2dzdHIgIiIKQEAgLTc4LDYgKzE2MiwyNiBAQAogbXNnaWQgImluZGV4IChpbiBnaXQtZ3VpOiBzdGFnaW5nIGFyZWEpIgogbXNnc3RyICIiCiAKKyMuICJ0aGUgZmlyc3QgY2hlY2tvdXQgZHVyaW5nIGEgY2xvbmUgb3BlcmF0aW9uIgorbXNnaWQgImluaXRpYWwgY2hlY2tvdXQiCittc2dzdHIgIiIKKworIy4gIlRoZSB2ZXJ5IGZpcnN0IGNvbW1pdCBpbiBhIHJlcG9zaXRvcnkiCittc2dpZCAiaW5pdGlhbCBjb21taXQiCittc2dzdHIgIiIKKworIy4gImEgYnJhbmNoIHRoYXQgcmVzaWRlcyBpbiB0aGUgbG9jYWwgZ2l0IHJlcG9zaXRvcnkiCittc2dpZCAibG9jYWwgYnJhbmNoIgorbXNnc3RyICIiCisKKyMuICJhIEdpdCBvYmplY3QgdGhhdCBpcyBub3QgcGFydCBvZiBhbnkgcGFjayIKK21zZ2lkICJsb29zZSBvYmplY3QiCittc2dzdHIgIiIKKworIy4gImEgYnJhbmNoIGNhbGxlZCBieSBjb252ZW50aW9uICdtYXN0ZXInIHRoYXQgZXhpc3RzIGluIGEgbmV3bHkgY3JlYXRlZCBnaXQgcmVwb3NpdG9yeSIKK21zZ2lkICJtYXN0ZXIgYnJhbmNoIgorbXNnc3RyICIiCisKICMuICJBIHN1Y2Nlc3NmdWwgbWVyZ2UgcmVzdWx0cyBpbiB0aGUgY3JlYXRpb24gb2YgYSBuZXcgY29tbWl0IHJlcHJlc2VudGluZyB0aGUgcmVzdWx0IG9mIHRoZSBtZXJnZS4iCiBtc2dpZCAibWVyZ2UgW25vdW5dIgogbXNnc3RyICIiCkBAIC05MCw3ICsxOTQsNDIgQEAKIG1zZ2lkICJtZXNzYWdlIgogbXNnc3RyICIiCiAKLSMuICJEZWxldGVzIGFsbCBzdGFsZSB0cmFja2luZyBicmFuY2hlcyB1bmRlciA8bmFtZT4uIFRoZXNlIHN0YWxlIGJyYW5jaGVzIGhhdmUgYWxyZWFkeSBiZWVuIHJlbW92ZWQgZnJvbSB0aGUgcmVtb3RlIHJlcG9zaXRvcnkgcmVmZXJlbmNlZCBieSA8bmFtZT4sIGJ1dCBhcmUgc3RpbGwgbG9jYWxseSBhdmFpbGFibGUgaW4gJ3JlbW90ZXMvPG5hbWU+Jy4iCisjLiAiYSByZW1vdGUgY2FsbGVkIGJ5IGNvbnZlbnRpb24gJ29yaWdpbicgdGhhdCB0aGUgY3VycmVudCBnaXQgcmVwb3NpdG9yeSBoYXMgYmVlbiBjbG9uZWQgZnJvbSIKK21zZ2lkICJvcmlnaW4iCittc2dzdHIgIiIKKworIy4gICAgICAgIiIKK21zZ2lkICJvcnBoYW4gY29tbWl0IgorbXNnc3RyICIiCisKKyMuICAiIgorbXNnaWQgIm9ycGhhbiByZWZlcmVuY2UiCittc2dzdHIgIiIKKworIy4gImEgZmlsZSBjb250YWluaW5nIG1hbnkgZ2l0IG9iamVjdHMgcGFja2VkIHRvZ2V0aGVyIgorbXNnaWQgInBhY2sgW25vdW5dIgorbXNnc3RyICIiCisKKyMuICAgICAidGhlIHByb2Nlc3Mgb2YgY3JlYXRpbmcgYSBwYWNrIGZpbGUiCittc2dpZCAicGFjayBbdmVyYl0iCittc2dzdHIgIiIKKworIy4gImEgR2l0IG9iamVjdCBwYXJ0IG9mIHNvbWUgcGFjayIKK21zZ2lkICJwYWNrZWQgb2JqZWN0IgorbXNnc3RyICIiCisKKyMuICJhIGNvbW1pdCB0aGF0IGRpcmVjdGx5IHByZWNlZGVzIHRoZSBjdXJyZW50IG9uZSBpbiBnaXQncyBncmFwaCBvZiBjb21taXRzIgorbXNnaWQgInBhcmVudCBjb21taXQiCittc2dzdHIgIiIKKworbXNnaWQgInBhdGNoIiAiIgorbXNnc3RyICIiCisKKyMuICJUaGUgcGF0aCB0byBhIGZpbGUiCittc2dpZCAicGF0aCIKK21zZ3N0ciAiIgorCisjLiAiRGVsZXRlIGFsbCBzdGFsZSB0cmFja2luZyBicmFuY2hlcyB1bmRlciA8bmFtZT4uIFRoZXNlIHN0YWxlIGJyYW5jaGVzIGhhdmUgYWxyZWFkeSBiZWVuIHJlbW92ZWQgZnJvbSB0aGUgcmVtb3RlIHJlcG9zaXRvcnkgcmVmZXJlbmNlZCBieSA8bmFtZT4sIGJ1dCBhcmUgc3RpbGwgbG9jYWxseSBhdmFpbGFibGUgaW4gJ3JlbW90ZXMvPG5hbWU+Jy4iCiBtc2dpZCAicHJ1bmUiCiBtc2dzdHIgIiIKIApAQCAtMTAyLDEyICsyNDEsNDMgQEAKIG1zZ2lkICJwdXNoIgogbXNnc3RyICIiCiAKKyMuICJUaGUgcHJvY2VzcyBvZiByZWJhc2luZyBvbmUgc2V0IG9mIGNvbW1pdHMgb24gdG9wIG9mIGFub3RoZXIgYnJhbmNoJ3MgaGVhZCIKK21zZ2lkICJyZWJhc2UgW25vdW5dIgorbXNnc3RyICIiCisKKyMuICJSZS1hcHBseSBvbmUgc2V0IG9mIGNvbW1pdHMgb24gdG9wIG9mIGFub3RoZXIgYnJhbmNoJ3MgaGVhZC4gQ29udHJhcnkgdG8gbWVyZ2UuIgorbXNnaWQgInJlYmFzZSBbdmVyYl0iCittc2dzdHIgIiIKKwogIy4gIiIKIG1zZ2lkICJyZWRvIgogbXNnc3RyICIiCiAKLSMuICJBbiBvdGhlciByZXBvc2l0b3J5ICgncmVtb3RlJykuIE9uZSBtaWdodCBoYXZlIGEgc2V0IG9mIHJlbW90ZXMgd2hvc2UgYnJhbmNoZXMgb25lIHRyYWNrcy4iCi1tc2dpZCAicmVtb3RlIgorIy4gICAiIgorbXNnaWQgInJlZmVyZW5jZSIKK21zZ3N0ciAiIgorCisjLiAidGhlIGxvZyBmaWxlIGNvbnRhaW5pbmcgYWxsIHN0YXRlcyBvZiB0aGUgSEVBRCByZWZlcmVuY2UgKGluIG90aGVyIHdvcmRzIHBhc3QgcHJpc3RpbmUgc3RhdGVzIG9mIHRoZSB3b3JraW5nIGNvcHkpIgorbXNnaWQgInJlZmxvZyIKK21zZ3N0ciAiIgorCittc2dpZCAicmVmbWFwIiAgICAgICAiIgorbXNnc3RyICIiCisKKyMuICIiCittc2dpZCAicmVmc3BlYyIKK21zZ3N0ciAiIgorCisjLiAiVGhlIGFkamVjdGl2ZSBmb3IgYW55dGhpbmcgd2hpY2ggaXMgb3V0c2lkZSBvZiB0aGUgY3VycmVudCAobG9jYWwpIHJlcG9zaXRvcnkiCittc2dpZCAicmVtb3RlIFthZGpdIgorbXNnc3RyICIiCisKKyMuICAgICAgICJBIGJyYW5jaCBpbiBhbnkgb3RoZXIgKCdyZW1vdGUnKSByZXBvc2l0b3J5IgorbXNnaWQgInJlbW90ZSBicmFuY2giCittc2dzdHIgIiIKKworIy4gICAiQW4gb3RoZXIgcmVwb3NpdG9yeSAoJ3JlbW90ZScpLiBPbmUgbWlnaHQgaGF2ZSBhIHNldCBvZiByZW1vdGVzIHdob3NlIGJyYW5jaGVzIG9uZSB0cmFja3MuIgorbXNnaWQgInJlbW90ZSByZXBvc2l0b3J5IgogbXNnc3RyICIiCiAKICMuICJBIGNvbGxlY3Rpb24gb2YgcmVmcyAoPykgdG9nZXRoZXIgd2l0aCBhbiBvYmplY3QgZGF0YWJhc2UgY29udGFpbmluZyBhbGwgb2JqZWN0cyB3aGljaCBhcmUgcmVhY2hhYmxlIGZyb20gdGhlIHJlZnMuLi4gKG9vcHMsIHlvdSd2ZSBsb3N0IG1lIGhlcmUuIEFnYWluLCBwbGVhc2UgYW4gZXhwbGFuYXRpb24gZm9yIG1lcmUgbW9ydGFscz8pIgpAQCAtMTE4LDEwICsyODgsMjIgQEAKIG1zZ2lkICJyZXNldCIKIG1zZ3N0ciAiIgogCisjLiAiZGVjaWRlIHdoaWNoIGNoYW5nZXMgZnJvbSBhbHRlcm5hdGl2ZSB2ZXJzaW9ucyBvZiBhIGZpbGUgc2hvdWxkIHBlcnNpc3QgaW4gR2l0IgorbXNnaWQgInJlc29sdmUgKGEgY29uZmxpY3QpIgorbXNnc3RyICIiCisKKyMuICJhYmFuZG9uIGNoYW5nZXMgYW5kIGdvIHRvIHByaXN0aW5lIHZlcnNpb24iCittc2dpZCAicmV2ZXJ0IGNoYW5nZXMiCittc2dzdHIgIiIKKwogIy4gIiIKIG1zZ2lkICJyZXZlcnQiCiBtc2dzdHIgIiIKIAorIy4gImV4cHJlc3Npb24gdGhhdCBzaWduaWZpZXMgYSByZXZpc2lvbiBpbiBnaXQiCittc2dpZCAicmV2aXNpb24gZXhwcmVzc2lvbiIKK21zZ3N0ciAiIgorCiAjLiAiQSBwYXJ0aWN1bGFyIHN0YXRlIG9mIGZpbGVzIGFuZCBkaXJlY3RvcmllcyB3aGljaCB3YXMgc3RvcmVkIGluIHRoZSBvYmplY3QgZGF0YWJhc2UuIgogbXNnaWQgInJldmlzaW9uIgogbXNnc3RyICIiCkBAIC0xMzAsMzkgKzMxMiw4NyBAQAogbXNnaWQgInNpZ24gb2ZmIgogbXNnc3RyICIiCiAKLSMuICIiCisjLiAgICAgInNlZTogc3RhZ2luZyBhcmVhLiBJbiBzb21lIGFyZWFzIG9mIGdpdCB0aGlzIGlzIGNhbGxlZCAnaW5kZXgnLiIKK21zZ2lkICJzdGFnZSBbbm91bl0sIGluZGV4IgorbXNnc3RyICIiCisKKyMuICJhZGQgc29tZSBjb250ZW50IG9mIGZpbGVzIGFuZCBkaXJlY3RvcmllcyB0byB0aGUgc3RhZ2luZyBhcmVhIGluIHByZXBhcmF0aW9uIGZvciBhIGNvbW1pdCIKK21zZ2lkICJzdGFnZSBbdmVyYl0iCittc2dzdHIgIiIKKworIy4gIlRoZSBwbGFjZSB3aGVyZSBjaGFuZ2VzIGZyb20gZmlsZXMgYXJlIG1hcmtlZCB0byBiZSBpbmNsdWRlZCBmb3IgdGhlIG5leHQgY29tbWl0LiBJbiBzb21lIGFyZWFzIG9mIGdpdCB0aGlzIGlzIGNhbGxlZCAnaW5kZXgnLiIKIG1zZ2lkICJzdGFnaW5nIGFyZWEiCiBtc2dzdHIgIiIKIAorIy4gIlRoZSBwbGFjZSAoc3RhY2spIHdoZXJlIGNoYW5nZXMgY2FuIGJlIHRlbXBvcmFyaWx5IHNhdmVkIHdpdGhvdXQgY29tbWl0dGluZyIKK21zZ2lkICJzdGFzaCBbbm91bl0iCittc2dzdHIgIiIKKworIy4gInRlbXBvcmFyaWx5IHNhdmUgY2hhbmdlcyBpbiBhIHN0YWNrIHdpdGhvdXQgY29tbWl0dGluZyIKK21zZ2lkICJzdGFzaCBbdmVyYl0iCittc2dzdHIgIiIKKwogIy4gIiIKIG1zZ2lkICJzdGF0dXMiCiBtc2dzdHIgIiIKIAotIy4gIkEgcmVmIHBvaW50aW5nIHRvIGEgdGFnIG9yIGNvbW1pdCBvYmplY3QiCisjLiAiIgorbXNnaWQgInN1Ym1vZHVsZSIKK21zZ3N0ciAiIgorCisjLiAiQSByZWYgcG9pbnRpbmcgdG8gc29tZSBjb21taXQgb2JqZWN0LiBJbiBvdGhlciB3b3JkczogQSBsYWJlbCBvbiBhIHNwZWNpZmljIGNvbW1pdC4iCiBtc2dpZCAidGFnIFtub3VuXSIKIG1zZ3N0ciAiIgogCi0jLiAiIgorIy4gIlRoZSBwcm9jZXNzIG9mIGNyZWF0aW5nIGEgdGFnIGF0IGEgc3BlY2lmaWMgY29tbWl0IG9iamVjdCIKIG1zZ2lkICJ0YWcgW3ZlcmJdIgogbXNnc3RyICIiCiAKKyMuICJUaGUgcGVyc29uIHdobyBjcmVhdGVkIGEgdGFnIgorbXNnaWQgInRhZ2dlciIKK21zZ3N0ciAiIgorCisjLiAiZmlsZSB3aG9zZSBjb250ZW50IGlzIHRyYWNrZWQvbm90IHRyYWNrZWQgYnkgZ2l0IgorbXNnaWQgInRyYWNrZWQvdW50cmFja2VkIgorbXNnc3RyICIiCisKICMuICJBIHJlZ3VsYXIgZ2l0IGJyYW5jaCB0aGF0IGlzIHVzZWQgdG8gZm9sbG93IGNoYW5nZXMgZnJvbSBhbm90aGVyIHJlcG9zaXRvcnkuIgogbXNnaWQgInRyYWNraW5nIGJyYW5jaCIKIG1zZ3N0ciAiIgogCiAjLiAiIgorbXNnaWQgInRyYWlsZXIiCittc2dzdHIgIiIKKworIy4gIjEuIHRyZWUgb2JqZWN0LCAyLiBkaXJlY3RvcnkgdHJlZSIKK21zZ2lkICJ0cmVlIgorbXNnc3RyICIiCisKKyMuICIiCiBtc2dpZCAidW5kbyIKIG1zZ3N0ciAiIgogCisjLiAiUmVtb3ZlIGNvbnRlbnQgb2YgZmlsZXMgZnJvbSB0aGUgc3RhZ2luZyBhcmVhIGFnYWluIHNvIHRoYXQgaXQgd2lsbCBub3QgYmUgcGFydCBvZiB0aGUgbmV4dCBjb21taXQiCittc2dpZCAidW5zdGFnZSIKK21zZ3N0ciAiIgorCisjLiAiUmV0cmlldmluZyB0aGUgdGVtcG9yYXJpbHkgc2F2ZWQgY2hhbmdlcyBiYWNrIGFnYWluIGZyb20gdGhlIHN0YXNoIgorbXNnaWQgInVuc3Rhc2ggW3ZlcmJdIgorbXNnc3RyICIiCisKICMuICIiCiBtc2dpZCAidXBkYXRlIgogbXNnc3RyICIiCiAKICMuICIiCittc2dpZCAidXBzdHJlYW0gYnJhbmNoIgorbXNnc3RyICIiCisKKyMuICIiCiBtc2dpZCAidmVyaWZ5IgogbXNnc3RyICIiCiAKICMuICJUaGUgdHJlZSBvZiBhY3R1YWwgY2hlY2tlZCBvdXQgZmlsZXMuIgotbXNnaWQgIndvcmtpbmcgY29weSwgd29ya2luZyB0cmVlIgorbXNnaWQgIndvcmtpbmcgZGlyZWN0b3J5LCB3b3JraW5nIGNvcHksIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiIgogCmRpZmYgLS1naXQgYS9naXQtZ3VpL3BvL2dsb3NzYXJ5L2dpdC1ndWktZ2xvc3NhcnkudHh0IGIvZ2l0LWd1aS9wby9nbG9zc2FyeS9naXQtZ3VpLWdsb3NzYXJ5LnR4dAppbmRleCA0MDkzMDQ2Li40OGI5ZjEwIDEwMDY0NAotLS0gYS9naXQtZ3VpL3BvL2dsb3NzYXJ5L2dpdC1ndWktZ2xvc3NhcnkudHh0CisrKyBiL2dpdC1ndWkvcG8vZ2xvc3NhcnkvZ2l0LWd1aS1nbG9zc2FyeS50eHQKQEAgLTEsNjcgKzEsOTYgQEAKICJFbmdsaXNoIFRlcm0gKERlYXIgdHJhbnNsYXRvcjogVGhpcyBmaWxlIHdpbGwgbmV2ZXIgYmUgdmlzaWJsZSB0byB0aGUgdXNlciEpIgkiRW5nbGlzaCBEZWZpbml0aW9uIChEZWFyIHRyYW5zbGF0b3I6IFRoaXMgZmlsZSB3aWxsIG5ldmVyIGJlIHZpc2libGUgdG8gdGhlIHVzZXIhIEl0IHNob3VsZCBvbmx5IHNlcnZlIGFzIGEgdG9vbCBmb3IgeW91LCB0aGUgdHJhbnNsYXRvci4gTm90aGluZyBtb3JlLikiCisiYWJvcnQiCSJwcmVtYXR1cmVseSBzdG9wIGFuZCBhYmFuZG9uIGFuIG9wZXJhdGlvbiIKICJhbWVuZCIJIiIKKyJhbmNlc3RvciIJImEgY29tbWl0IHRoYXQgc3VjY2VlZHMgdGhlIGN1cnJlbnQgb25lIGluIGdpdCdzIGdyYXBoIG9mIGNvbW1pdHMgKG5vdCBuZWNlc3NhcmlseSBkaXJlY3RseSkiCiAiYW5ub3RhdGUiCSIiCisiYXV0aG9yIgkiVGhlIHBlcnNvbiB3aG8gaW5pdGlhbGx5IGNyZWF0ZWQgKGF1dGhvcmVkKSBhIGNvbW1pdCIKKyJiYXJlIHJlcG9zaXRvcnkiCSJhIHJlcG9zaXRvcnkgd2l0aCBvbmx5IC5naXQgZGlyZWN0b3J5LCB3aXRob3V0IHdvcmtpbmcgZGlyZWN0b3J5IgorImJhc2UiCSJhIHBhcmVudCB2ZXJzaW9uIG9mIHRoZSBjdXJyZW50IGZpbGUiCisiYmlzZWN0IgkiIgorImJsYW1lIgkiZ2V0IHRoZSBhdXRob3JzIHJlc3BvbnNpYmxlIGZvciBlYWNoIGxpbmUgaW4gYSBmaWxlIgorImJsb2IiCSAgICAgIiIKICJicmFuY2ggW25vdW5dIgkiQSAnYnJhbmNoJyBpcyBhbiBhY3RpdmUgbGluZSBvZiBkZXZlbG9wbWVudC4iCiAiYnJhbmNoIFt2ZXJiXSIJIiIKICJjaGVja291dCBbbm91bl0iCSIiCiAiY2hlY2tvdXQgW3ZlcmJdIgkiVGhlIGFjdGlvbiBvZiB1cGRhdGluZyB0aGUgd29ya2luZyB0cmVlIHRvIGEgcmV2aXNpb24gd2hpY2ggd2FzIHN0b3JlZCBpbiB0aGUgb2JqZWN0IGRhdGFiYXNlLiIKKyJjaGVycnktcGljayIJInRvIHNlbGVjdCBhbmQgYXBwbHkgYSBzaW5nbGUgY29tbWl0IHRvIHRoZSBjdXJyZW50IEhFQUQgd2l0aG91dCBtZXJnaW5nIgorImNoaWxkIGNvbW1pdCIJImEgY29tbWl0IHRoYXQgZGlyZWN0bHkgc3VjY2VlZHMgdGhlIGN1cnJlbnQgb25lIGluIGdpdCdzIGdyYXBoIG9mIGNvbW1pdHMiCisiY2xlYW51cCIJImNsZWFuIHRoZSBzdGF0ZSBvZiB0aGUgZ2l0IHJlcG9zaXRvcnksIG9mdGVuIGFmdGVyIG1hbnVhbGx5IHN0b3BwZWQgb3BlcmF0aW9uIgogImNsb25lIFt2ZXJiXSIJIiIKICJjb21taXQgW25vdW5dIgkiQSBzaW5nbGUgcG9pbnQgaW4gdGhlIGdpdCBoaXN0b3J5LiIKICJjb21taXQgW3ZlcmJdIgkiVGhlIGFjdGlvbiBvZiBzdG9yaW5nIGEgbmV3IHNuYXBzaG90IG9mIHRoZSBwcm9qZWN0J3Mgc3RhdGUgaW4gdGhlIGdpdCBoaXN0b3J5LiIKKyJjb21taXQgbWVzc2FnZSIJImEgbWVzc2FnZSB0aGF0IGdldHMgYXR0YWNoZWQgd2l0aCBhbnkgY29tbWl0IgorImNvbW1pdHRlciIJICAiVGhlIHBlcnNvbiB3aG8gY29tbWl0dGVkIGEgY29tbWl0ICh0byB0aGUgY3VycmVudCBicmFuY2gpLCB3aGljaCBtaWdodCBiZSBkaWZmZXJlbnQgdGhhbiB0aGUgYXV0aG9yLiIKKyJkZXNjZW5kYW50IgkiYSBjb21taXQgdGhhdCBwcmVjZWRlcyB0aGUgY3VycmVudCBvbmUgaW4gZ2l0J3MgZ3JhcGggb2YgY29tbWl0cyAobm90IG5lY2Vzc2FyaWx5IGRpcmVjdGx5KSIKKyJkZXRhY2hlZCBIRUFEIgkgICAgICAiY2hlY2tvdXQgb2YgYSByZXZpc2lvbiByYXRoZXIgdGhhbiBzb21lIGhlYWQiCisiZGV0YWNoZWQgY2hlY2tvdXQiCSJjaGVja291dCBvZiBhIHJldmlzaW9uIHJhdGhlciB0aGFuIHNvbWUgaGVhZCIKICJkaWZmIFtub3VuXSIJIiIKICJkaWZmIFt2ZXJiXSIJIiIKLSJmYXN0IGZvcndhcmQgbWVyZ2UiCSJBIGZhc3QtZm9yd2FyZCBpcyBhIHNwZWNpYWwgdHlwZSBvZiBtZXJnZSB3aGVyZSB5b3UgaGF2ZSBhIHJldmlzaW9uIGFuZCB5b3UgYXJlIG1lcmdpbmcgYW5vdGhlciBicmFuY2gncyBjaGFuZ2VzIHRoYXQgaGFwcGVuIHRvIGJlIGEgZGVzY2VuZGFudCBvZiB3aGF0IHlvdSBoYXZlLiIKKyJkaXJlY3RvcnkiCSAgIiIKKyJmYXN0LWZvcndhcmQiCSJBIGZhc3QtZm9yd2FyZCBtZXJnZSBpcyBhIHNwZWNpYWwgdHlwZSBvZiBtZXJnZSB3aGVyZSB5b3UgaGF2ZSBhIHJldmlzaW9uIGFuZCB5b3UgYXJlIG1lcmdpbmcgYW5vdGhlciBicmFuY2gncyBjaGFuZ2VzIHRoYXQgaGFwcGVuIHRvIGJlIGEgZGVzY2VuZGFudCBvZiB3aGF0IHlvdSBoYXZlLiIKICJmZXRjaCIJIkZldGNoaW5nIGEgYnJhbmNoIG1lYW5zIHRvIGdldCB0aGUgYnJhbmNoJ3MgaGVhZCBmcm9tIGEgcmVtb3RlIHJlcG9zaXRvcnksIHRvIGZpbmQgb3V0IHdoaWNoIG9iamVjdHMgYXJlIG1pc3NpbmcgZnJvbSB0aGUgbG9jYWwgb2JqZWN0IGRhdGFiYXNlLCBhbmQgdG8gZ2V0IHRoZW0sIHRvby4iCi0iaHVuayIJIk9uZSBjb250ZXh0IG9mIGNvbnNlY3V0aXZlIGxpbmVzIGluIGEgd2hvbGUgcGF0Y2gsIHdoaWNoIGNvbnNpc3RzIG9mIG1hbnkgc3VjaCBodW5rcyIKLSJpbmRleCAoaW4gZ2l0LWd1aTogc3RhZ2luZyBhcmVhKSIJIkEgY29sbGVjdGlvbiBvZiBmaWxlcy4gVGhlIGluZGV4IGlzIGEgc3RvcmVkIHZlcnNpb24gb2YgeW91ciB3b3JraW5nIHRyZWUuIgotIm1lcmdlIFtub3VuXSIJIkEgc3VjY2Vzc2Z1bCBtZXJnZSByZXN1bHRzIGluIHRoZSBjcmVhdGlvbiBvZiBhIG5ldyBjb21taXQgcmVwcmVzZW50aW5nIHRoZSByZXN1bHQgb2YgdGhlIG1lcmdlLiIKLSJtZXJnZSBbdmVyYl0iCSJUbyBicmluZyB0aGUgY29udGVudHMgb2YgYW5vdGhlciBicmFuY2ggaW50byB0aGUgY3VycmVudCBicmFuY2guIgotIm1lc3NhZ2UiCSIiCi0icHJ1bmUiCSJEZWxldGVzIGFsbCBzdGFsZSB0cmFja2luZyBicmFuY2hlcyB1bmRlciA8bmFtZT4uIFRoZXNlIHN0YWxlIGJyYW5jaGVzIGhhdmUgYWxyZWFkeSBiZWVuIHJlbW92ZWQgZnJvbSB0aGUgcmVtb3RlIHJlcG9zaXRvcnkgcmVmZXJlbmNlZCBieSA8bmFtZT4sIGJ1dCBhcmUgc3RpbGwgbG9jYWxseSBhdmFpbGFibGUgaW4gJ3JlbW90ZXMvPG5hbWU+Jy4iCi0icHVsbCIJIlB1bGxpbmcgYSBicmFuY2ggbWVhbnMgdG8gZmV0Y2ggaXQgYW5kIG1lcmdlIGl0LiIKLSJwdXNoIgkiUHVzaGluZyBhIGJyYW5jaCBtZWFucyB0byBnZXQgdGhlIGJyYW5jaCdzIGhlYWQgcmVmIGZyb20gYSByZW1vdGUgcmVwb3NpdG9yeSwgYW5kIC4uLiAod2VsbCwgY2FuIHNvbWVvbmUgcGxlYXNlIGV4cGxhaW4gaXQgZm9yIG1lcmUgbW9ydGFscz8pIgotInJlZG8iCSIiCi0icmVtb3RlIgkiQW4gb3RoZXIgcmVwb3NpdG9yeSAoJ3JlbW90ZScpLiBPbmUgbWlnaHQgaGF2ZSBhIHNldCBvZiByZW1vdGVzIHdob3NlIGJyYW5jaGVzIG9uZSB0cmFja3MuIgotInJlcG9zaXRvcnkiCSJBIGNvbGxlY3Rpb24gb2YgcmVmcyAoPykgdG9nZXRoZXIgd2l0aCBhbiBvYmplY3QgZGF0YWJhc2UgY29udGFpbmluZyBhbGwgb2JqZWN0cyB3aGljaCBhcmUgcmVhY2hhYmxlIGZyb20gdGhlIHJlZnMuLi4gKG9vcHMsIHlvdSd2ZSBsb3N0IG1lIGhlcmUuIEFnYWluLCBwbGVhc2UgYW4gZXhwbGFuYXRpb24gZm9yIG1lcmUgbW9ydGFscz8pIgotInJlc2V0IgkiIgotInJldmVydCIJIiIKLSJyZXZpc2lvbiIJIkEgcGFydGljdWxhciBzdGF0ZSBvZiBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgd2hpY2ggd2FzIHN0b3JlZCBpbiB0aGUgb2JqZWN0IGRhdGFiYXNlLiIKLSJzaWduIG9mZiIJIiIKLSJzdGFnaW5nIGFyZWEiCSIiCi0ic3RhdHVzIgkiIgotInRhZyBbbm91bl0iCSJBIHJlZiBwb2ludGluZyB0byBhIHRhZyBvciBjb21taXQgb2JqZWN0IgotInRhZyBbdmVyYl0iCSIiCi0idHJhY2tpbmcgYnJhbmNoIgkiQSByZWd1bGFyIGdpdCBicmFuY2ggdGhhdCBpcyB1c2VkIHRvIGZvbGxvdyBjaGFuZ2VzIGZyb20gYW5vdGhlciByZXBvc2l0b3J5LiIKLSJ1bmRvIgkiIgotInVwZGF0ZSIJIiIKLSJ2ZXJpZnkiCSIiCi0id29ya2luZyBjb3B5LCB3b3JraW5nIHRyZWUiCSJUaGUgdHJlZSBvZiBhY3R1YWwgY2hlY2tlZCBvdXQgZmlsZXMuIgotImFuY2VzdG9yIgkiYSBjb21taXQgdGhhdCBzdWNjZWVkcyB0aGUgY3VycmVudCBvbmUgaW4gZ2l0J3MgZ3JhcGggb2YgY29tbWl0cyAobm90IG5lY2Vzc2FyaWx5IGRpcmVjdGx5KSIKLSJhYm9ydCIJInByZW1hdHVyZWx5IHN0b3AgYW5kIGFiYW5kb24gYW4gb3BlcmF0aW9uIgotImJhcmUgcmVwb3NpdG9yeSIJImEgcmVwb3NpdG9yeSB3aXRoIG9ubHkgLmdpdCBkaXJlY3RvcnksIHdpdGhvdXQgd29ya2luZyBkaXJlY3RvcnkiCi0iYmFzZSIJImEgcGFyZW50IHZlcnNpb24gb2YgdGhlIGN1cnJlbnQgZmlsZSIKLSJibGFtZSIJImdldCB0aGUgYXV0aG9ycyByZXNwb25zaWJsZSBmb3IgZWFjaCBsaW5lIGluIGEgZmlsZSIKLSJjaGVycnktcGljayIJInRvIHNlbGVjdCBhbmQgYXBwbHkgYSBzaW5nbGUgY29tbWl0IHdpdGhvdXQgbWVyZ2luZyIKLSJjaGlsZCIJImEgY29tbWl0IHRoYXQgZGlyZWN0bHkgc3VjY2VlZHMgdGhlIGN1cnJlbnQgb25lIGluIGdpdCdzIGdyYXBoIG9mIGNvbW1pdHMiCi0iY2xlYW51cCIJImNsZWFuIHRoZSBzdGF0ZSBvZiB0aGUgZ2l0IHJlcG9zaXRvcnksIG9mdGVuIGFmdGVyIG1hbnVhbGx5IHN0b3BwZWQgb3BlcmF0aW9uIgotImNvbW1pdCBtZXNzYWdlIgkiYSBtZXNzYWdlIHRoYXQgZ2V0cyBhdHRhY2hlZCB3aXRoIGFueSBjb21taXQiCi0iZGVzY2VuZGFudCIJImEgY29tbWl0IHRoYXQgcHJlY2VkZXMgdGhlIGN1cnJlbnQgb25lIGluIGdpdCdzIGdyYXBoIG9mIGNvbW1pdHMgKG5vdCBuZWNlc3NhcmlseSBkaXJlY3RseSkiCi0iZGV0YWNoZWQgY2hlY2tvdXQiCSJjaGVja291dCBvZiBhIHJldmlzaW9uIHJhdGhlciB0aGFuIGEgc29tZSBoZWFkIgogImZpbGUgbGV2ZWwgbWVyZ2luZyIJImFueSBtZXJnZSBzdHJhdGVneSB0aGF0IHdvcmtzIG9uIGEgZmlsZSBieSBmaWxlIGJhc2lzIgorImZpbGUiCSAgICAgIiIKICJoZWFkIgkidGhlIGxhc3QgcmV2aXNpb24gaW4gYSBicmFuY2giCiAiaG9vayIJInNjcmlwdCB0aGF0IGdldHMgZXhlY3V0ZWQgYXV0b21hdGljYWxseSBvbiBzb21lIGV2ZW50IgorImh1bmsiCSJPbmUgY29udGV4dCBvZiBjb25zZWN1dGl2ZSBsaW5lcyBpbiBhIHdob2xlIHBhdGNoLCB3aGljaCBjb25zaXN0cyBvZiBtYW55IHN1Y2ggaHVua3MiCisiaW5kZXggKGluIGdpdC1ndWk6IHN0YWdpbmcgYXJlYSkiCSJBIGNvbGxlY3Rpb24gb2YgZmlsZXMuIFRoZSBpbmRleCBpcyBhIHN0b3JlZCB2ZXJzaW9uIG9mIHlvdXIgd29ya2luZyB0cmVlLiIKICJpbml0aWFsIGNoZWNrb3V0IgkidGhlIGZpcnN0IGNoZWNrb3V0IGR1cmluZyBhIGNsb25lIG9wZXJhdGlvbiIKKyJpbml0aWFsIGNvbW1pdCIJIlRoZSB2ZXJ5IGZpcnN0IGNvbW1pdCBpbiBhIHJlcG9zaXRvcnkiCiAibG9jYWwgYnJhbmNoIgkiYSBicmFuY2ggdGhhdCByZXNpZGVzIGluIHRoZSBsb2NhbCBnaXQgcmVwb3NpdG9yeSIKICJsb29zZSBvYmplY3QiCSJhIEdpdCBvYmplY3QgdGhhdCBpcyBub3QgcGFydCBvZiBhbnkgcGFjayIKICJtYXN0ZXIgYnJhbmNoIgkiYSBicmFuY2ggY2FsbGVkIGJ5IGNvbnZlbnRpb24gJ21hc3RlcicgdGhhdCBleGlzdHMgaW4gYSBuZXdseSBjcmVhdGVkIGdpdCByZXBvc2l0b3J5IgorIm1lcmdlIFtub3VuXSIJIkEgc3VjY2Vzc2Z1bCBtZXJnZSByZXN1bHRzIGluIHRoZSBjcmVhdGlvbiBvZiBhIG5ldyBjb21taXQgcmVwcmVzZW50aW5nIHRoZSByZXN1bHQgb2YgdGhlIG1lcmdlLiIKKyJtZXJnZSBbdmVyYl0iCSJUbyBicmluZyB0aGUgY29udGVudHMgb2YgYW5vdGhlciBicmFuY2ggaW50byB0aGUgY3VycmVudCBicmFuY2guIgorIm1lc3NhZ2UiCSIiCiAib3JpZ2luIgkiYSByZW1vdGUgY2FsbGVkIGJ5IGNvbnZlbnRpb24gJ29yaWdpbicgdGhhdCB0aGUgY3VycmVudCBnaXQgcmVwb3NpdG9yeSBoYXMgYmVlbiBjbG9uZWQgZnJvbSIKKyJvcnBoYW4gY29tbWl0IgkgICAgICAiIgorIm9ycGhhbiByZWZlcmVuY2UiCSAiIgogInBhY2sgW25vdW5dIgkiYSBmaWxlIGNvbnRhaW5pbmcgbWFueSBnaXQgb2JqZWN0cyBwYWNrZWQgdG9nZXRoZXIiCisicGFjayBbdmVyYl0iCSAgICAidGhlIHByb2Nlc3Mgb2YgY3JlYXRpbmcgYSBwYWNrIGZpbGUiCiAicGFja2VkIG9iamVjdCIJImEgR2l0IG9iamVjdCBwYXJ0IG9mIHNvbWUgcGFjayIKLSJwYXJlbnQiCSJhIGNvbW1pdCB0aGF0IGRpcmVjdGx5IHByZWNlZGVzIHRoZSBjdXJyZW50IG9uZSBpbiBnaXQncyBncmFwaCBvZiBjb21taXRzIgorInBhcmVudCBjb21taXQiCSJhIGNvbW1pdCB0aGF0IGRpcmVjdGx5IHByZWNlZGVzIHRoZSBjdXJyZW50IG9uZSBpbiBnaXQncyBncmFwaCBvZiBjb21taXRzIgorInBhdGNoIiAiIgorInBhdGgiCSJUaGUgcGF0aCB0byBhIGZpbGUiCisicHJ1bmUiCSJEZWxldGUgYWxsIHN0YWxlIHRyYWNraW5nIGJyYW5jaGVzIHVuZGVyIDxuYW1lPi4gVGhlc2Ugc3RhbGUgYnJhbmNoZXMgaGF2ZSBhbHJlYWR5IGJlZW4gcmVtb3ZlZCBmcm9tIHRoZSByZW1vdGUgcmVwb3NpdG9yeSByZWZlcmVuY2VkIGJ5IDxuYW1lPiwgYnV0IGFyZSBzdGlsbCBsb2NhbGx5IGF2YWlsYWJsZSBpbiAncmVtb3Rlcy88bmFtZT4nLiIKKyJwdWxsIgkiUHVsbGluZyBhIGJyYW5jaCBtZWFucyB0byBmZXRjaCBpdCBhbmQgbWVyZ2UgaXQuIgorInB1c2giCSJQdXNoaW5nIGEgYnJhbmNoIG1lYW5zIHRvIGdldCB0aGUgYnJhbmNoJ3MgaGVhZCByZWYgZnJvbSBhIHJlbW90ZSByZXBvc2l0b3J5LCBhbmQgLi4uICh3ZWxsLCBjYW4gc29tZW9uZSBwbGVhc2UgZXhwbGFpbiBpdCBmb3IgbWVyZSBtb3J0YWxzPykiCisicmViYXNlIFtub3VuXSIJIlRoZSBwcm9jZXNzIG9mIHJlYmFzaW5nIG9uZSBzZXQgb2YgY29tbWl0cyBvbiB0b3Agb2YgYW5vdGhlciBicmFuY2gncyBoZWFkIgorInJlYmFzZSBbdmVyYl0iCSJSZS1hcHBseSBvbmUgc2V0IG9mIGNvbW1pdHMgb24gdG9wIG9mIGFub3RoZXIgYnJhbmNoJ3MgaGVhZC4gQ29udHJhcnkgdG8gbWVyZ2UuIgorInJlZG8iCSIiCisicmVmZXJlbmNlIgkgICIiCiAicmVmbG9nIgkidGhlIGxvZyBmaWxlIGNvbnRhaW5pbmcgYWxsIHN0YXRlcyBvZiB0aGUgSEVBRCByZWZlcmVuY2UgKGluIG90aGVyIHdvcmRzIHBhc3QgcHJpc3RpbmUgc3RhdGVzIG9mIHRoZSB3b3JraW5nIGNvcHkpIgorInJlZm1hcCIgICAgICAgIiIKKyJyZWZzcGVjIgkiIgorInJlbW90ZSBbYWRqXSIJIlRoZSBhZGplY3RpdmUgZm9yIGFueXRoaW5nIHdoaWNoIGlzIG91dHNpZGUgb2YgdGhlIGN1cnJlbnQgKGxvY2FsKSByZXBvc2l0b3J5IgorInJlbW90ZSBicmFuY2giCSAgICAgICJBIGJyYW5jaCBpbiBhbnkgb3RoZXIgKCdyZW1vdGUnKSByZXBvc2l0b3J5IgorInJlbW90ZSByZXBvc2l0b3J5IgkgICJBbiBvdGhlciByZXBvc2l0b3J5ICgncmVtb3RlJykuIE9uZSBtaWdodCBoYXZlIGEgc2V0IG9mIHJlbW90ZXMgd2hvc2UgYnJhbmNoZXMgb25lIHRyYWNrcy4iCisicmVwb3NpdG9yeSIJIkEgY29sbGVjdGlvbiBvZiByZWZzICg/KSB0b2dldGhlciB3aXRoIGFuIG9iamVjdCBkYXRhYmFzZSBjb250YWluaW5nIGFsbCBvYmplY3RzIHdoaWNoIGFyZSByZWFjaGFibGUgZnJvbSB0aGUgcmVmcy4uLiAob29wcywgeW91J3ZlIGxvc3QgbWUgaGVyZS4gQWdhaW4sIHBsZWFzZSBhbiBleHBsYW5hdGlvbiBmb3IgbWVyZSBtb3J0YWxzPykiCisicmVzZXQiCSIiCiAicmVzb2x2ZSAoYSBjb25mbGljdCkiCSJkZWNpZGUgd2hpY2ggY2hhbmdlcyBmcm9tIGFsdGVybmF0aXZlIHZlcnNpb25zIG9mIGEgZmlsZSBzaG91bGQgcGVyc2lzdCBpbiBHaXQiCiAicmV2ZXJ0IGNoYW5nZXMiCSJhYmFuZG9uIGNoYW5nZXMgYW5kIGdvIHRvIHByaXN0aW5lIHZlcnNpb24iCisicmV2ZXJ0IgkiIgogInJldmlzaW9uIGV4cHJlc3Npb24iCSJleHByZXNzaW9uIHRoYXQgc2lnbmlmaWVzIGEgcmV2aXNpb24gaW4gZ2l0IgotInN0YWdlL3Vuc3RhZ2UiCSJhZGQgc29tZSBjb250ZW50IG9mIGZpbGVzIGFuZCBkaXJlY3RvcmllcyB0byB0aGUgc3RhZ2luZyBhcmVhIGluIHByZXBhcmF0aW9uIGZvciBhIGNvbW1pdCIKLSJzdGFzaCIJInRlbXBvcmFyaWx5IHNhdmUgY2hhbmdlcyBpbiBhIHN0YWNrIHdpdGhvdXQgY29tbWl0dGluZyIKKyJyZXZpc2lvbiIJIkEgcGFydGljdWxhciBzdGF0ZSBvZiBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgd2hpY2ggd2FzIHN0b3JlZCBpbiB0aGUgb2JqZWN0IGRhdGFiYXNlLiIKKyJzaWduIG9mZiIJIiIKKyJzdGFnZSBbbm91bl0sIGluZGV4IgkgICAgInNlZTogc3RhZ2luZyBhcmVhLiBJbiBzb21lIGFyZWFzIG9mIGdpdCB0aGlzIGlzIGNhbGxlZCAnaW5kZXgnLiIKKyJzdGFnZSBbdmVyYl0iCSJhZGQgc29tZSBjb250ZW50IG9mIGZpbGVzIGFuZCBkaXJlY3RvcmllcyB0byB0aGUgc3RhZ2luZyBhcmVhIGluIHByZXBhcmF0aW9uIGZvciBhIGNvbW1pdCIKKyJzdGFnaW5nIGFyZWEiCSJUaGUgcGxhY2Ugd2hlcmUgY2hhbmdlcyBmcm9tIGZpbGVzIGFyZSBtYXJrZWQgdG8gYmUgaW5jbHVkZWQgZm9yIHRoZSBuZXh0IGNvbW1pdC4gSW4gc29tZSBhcmVhcyBvZiBnaXQgdGhpcyBpcyBjYWxsZWQgJ2luZGV4Jy4iCisic3Rhc2ggW25vdW5dIgkiVGhlIHBsYWNlIChzdGFjaykgd2hlcmUgY2hhbmdlcyBjYW4gYmUgdGVtcG9yYXJpbHkgc2F2ZWQgd2l0aG91dCBjb21taXR0aW5nIgorInN0YXNoIFt2ZXJiXSIJInRlbXBvcmFyaWx5IHNhdmUgY2hhbmdlcyBpbiBhIHN0YWNrIHdpdGhvdXQgY29tbWl0dGluZyIKKyJzdGF0dXMiCSIiCisic3VibW9kdWxlIgkiIgorInRhZyBbbm91bl0iCSJBIHJlZiBwb2ludGluZyB0byBzb21lIGNvbW1pdCBvYmplY3QuIEluIG90aGVyIHdvcmRzOiBBIGxhYmVsIG9uIGEgc3BlY2lmaWMgY29tbWl0LiIKKyJ0YWcgW3ZlcmJdIgkiVGhlIHByb2Nlc3Mgb2YgY3JlYXRpbmcgYSB0YWcgYXQgYSBzcGVjaWZpYyBjb21taXQgb2JqZWN0IgorInRhZ2dlciIJIlRoZSBwZXJzb24gd2hvIGNyZWF0ZWQgYSB0YWciCiAidHJhY2tlZC91bnRyYWNrZWQiCSJmaWxlIHdob3NlIGNvbnRlbnQgaXMgdHJhY2tlZC9ub3QgdHJhY2tlZCBieSBnaXQiCisidHJhY2tpbmcgYnJhbmNoIgkiQSByZWd1bGFyIGdpdCBicmFuY2ggdGhhdCBpcyB1c2VkIHRvIGZvbGxvdyBjaGFuZ2VzIGZyb20gYW5vdGhlciByZXBvc2l0b3J5LiIKKyJ0cmFpbGVyIgkiIgorInRyZWUiCSIxLiB0cmVlIG9iamVjdCwgMi4gZGlyZWN0b3J5IHRyZWUiCisidW5kbyIJIiIKKyJ1bnN0YWdlIgkiUmVtb3ZlIGNvbnRlbnQgb2YgZmlsZXMgZnJvbSB0aGUgc3RhZ2luZyBhcmVhIGFnYWluIHNvIHRoYXQgaXQgd2lsbCBub3QgYmUgcGFydCBvZiB0aGUgbmV4dCBjb21taXQiCisidW5zdGFzaCBbdmVyYl0iCSJSZXRyaWV2aW5nIHRoZSB0ZW1wb3JhcmlseSBzYXZlZCBjaGFuZ2VzIGJhY2sgYWdhaW4gZnJvbSB0aGUgc3Rhc2giCisidXBkYXRlIgkiIgorInVwc3RyZWFtIGJyYW5jaCIJIiIKKyJ2ZXJpZnkiCSIiCisid29ya2luZyBkaXJlY3RvcnksIHdvcmtpbmcgY29weSwgd29ya2luZyB0cmVlIgkiVGhlIHRyZWUgb2YgYWN0dWFsIGNoZWNrZWQgb3V0IGZpbGVzLiIKZGlmZiAtLWdpdCBhL2dpdC1ndWkvcG8vamEucG8gYi9naXQtZ3VpL3BvL2phLnBvCmluZGV4IDIwODY1MWMuLjJmNjExNTMgMTAwNjQ0Ci0tLSBhL2dpdC1ndWkvcG8vamEucG8KKysrIGIvZ2l0LWd1aS9wby9qYS5wbwpAQCAtNCwxNCArNCwxNSBAQAogIwogIyDjgZfjgonjgYTjgZcg44Gq44Gq44GTIDxuYW5ha28zQGJsdWVib3R0bGUuY29tPiwgMjAwNy4KICMgU2F0b3NoaSBZYXN1c2hpbWEgPHMueWFzdXNoaW1hQGdtYWlsLmNvbT4sIDIwMTYuCisjIEtJREFOSSBBa2l0byA8YS5raWQuMTk4NUBnbWFpbC5jb20+LCAyMDE5LgogIwogbXNnaWQgIiIKIG1zZ3N0ciAiIgogIlByb2plY3QtSWQtVmVyc2lvbjogZ2l0LWd1aVxuIgogIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBcbiIKICJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxNi0wNS0yNyAxNzo1MiswOTAwXG4iCi0iUE8tUmV2aXNpb24tRGF0ZTogMjAxNi0wNi0yMiAxMjo1MCswOTAwXG4iCi0iTGFzdC1UcmFuc2xhdG9yOiBTYXRvc2hpIFlhc3VzaGltYSA8cy55YXN1c2hpbWFAZ21haWwuY29tPlxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTktMTAtMTMgMjM6MjArMDkwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogS0lEQU5JIEFraXRvIDxhLmtpZC4xOTg1QGdtYWlsLmNvbT5cbiIKICJMYW5ndWFnZS1UZWFtOiBKYXBhbmVzZVxuIgogIkxhbmd1YWdlOiBqYVxuIgogIk1JTUUtVmVyc2lvbjogMS4wXG4iCkBAIC02NjEsNyArNjYyLDcgQEAKICM6IGxpYi9tZXJnZS50Y2w6MTA4CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiJXMgb2YgJXMiCi1tc2dzdHIgIiVzIOOBriAlcyDjg5bjg6njg7Pjg4EiCittc2dzdHIgIiUyJHMg44GuICUxJHMg44OW44Op44Oz44OBIgogCiAjOiBsaWIvbWVyZ2UudGNsOjEyMgogIywgdGNsLWZvcm1hdApAQCAtOTU2LDcgKzk1Nyw3IEBACiAjOiBsaWIvY2hlY2tvdXRfb3AudGNsOjg1CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiRmV0Y2hpbmcgJXMgZnJvbSAlcyIKLW1zZ3N0ciAiJXMg44GL44KJICVzIOOCkuODleOCp+ODg+ODgeOBl+OBpuOBhOOBvuOBmSIKK21zZ3N0ciAiJTIkcyDjgYvjgokgJTEkcyDjgpLjg5Xjgqfjg4Pjg4HjgZfjgabjgYTjgb7jgZkiCiAKICM6IGxpYi9jaGVja291dF9vcC50Y2w6MTMzCiAjLCB0Y2wtZm9ybWF0CmRpZmYgLS1naXQgYS9naXQtaW5zdGF3ZWIuc2ggYi9naXQtaW5zdGF3ZWIuc2gKaW5kZXggZWVjMjY0ZS4uN2M1NTIyOSAxMDA3NTUKLS0tIGEvZ2l0LWluc3Rhd2ViLnNoCisrKyBiL2dpdC1pbnN0YXdlYi5zaApAQCAtNjcsNiArNjcsMTMgQEAKIAkJaHR0cGRfb25seT0iJHtodHRwZCUlICp9IiAjIGN1dCBvbiBmaXJzdCBzcGFjZQogCQlyZXR1cm4KIAkJOzsKKwkqcHl0aG9uKikKKwkJIyBzZXJ2ZXIgaXMgc3RhcnRlZCBieSBydW5uaW5nIHZpYSBnZW5lcmF0ZWQgZ2l0d2ViLnB5IGluCisJCSMgJGZxZ2l0ZGlyL2dpdHdlYgorCQlmdWxsX2h0dHBkPSIkZnFnaXRkaXIvZ2l0d2ViL2dpdHdlYi5weSIKKwkJaHR0cGRfb25seT0iJHtodHRwZCUlICp9IiAjIGN1dCBvbiBmaXJzdCBzcGFjZQorCQlyZXR1cm4KKwkJOzsKIAllc2FjCiAKIAlodHRwZF9vbmx5PSIkKGVjaG8gJGh0dHBkIHwgY3V0IC1mMSAtZCcgJykiCkBAIC0xMTAsNyArMTE3LDcgQEAKIAogCSMgZG9uJ3QgcXVvdGUgJGZ1bGxfaHR0cGQsIHRoZXJlIGNhbiBiZSBhcmd1bWVudHMgdG8gaXQgKC1mKQogCWNhc2UgIiRodHRwZCIgaW4KLQkqbW9uZ29vc2UqfCpwbGFja3VwKikKKwkqbW9uZ29vc2UqfCpwbGFja3VwKnwqcHl0aG9uKikKIAkJI1RoZXNlIHNlcnZlcnMgZG9uJ3QgaGF2ZSBhIGRhZW1vbiBtb2RlIHNvIHdlJ2xsIGhhdmUgdG8gZm9yayBpdAogCQkkZnVsbF9odHRwZCAiJGNvbmYiICYKIAkJI1NhdmUgdGhlIHBpZCBiZWZvcmUgZG9pbmcgYW55dGhpbmcgZWxzZSAod2UnbGwgcHJpbnQgaXQgbGF0ZXIpCkBAIC01OTUsNiArNjAyLDEyMSBAQAogCXJtIC1mICIkY29uZiIKIH0KIAorcHl0aG9uX2NvbmYoKSB7CisJIyBQeXRob24ncyBidWlsdGluIGh0dHAuc2VydmVyIGFuZCBpdHMgQ0dJIHN1cHBvcnQgaXMgdmVyeSBsaW1pdGVkLgorCSMgQ0dJIGhhbmRsZXIgaXMgY2FwYWJsZSBvZiBydW5uaW5nIENHSSBzY3JpcHQgb25seSBmcm9tIGluc2lkZSBhIGRpcmVjdG9yeS4KKwkjIFRyeWluZyB0byBzZXQgY2dpX2RpcmVjdG9yaWVzPVsiLyJdIHdpbGwgYWRkIGRvdWJsZSBzbGFzaCB0byBTQ1JJUFRfTkFNRQorCSMgYW5kIHRoYXQgaW4gdHVybiBicmVha3MgZ2l0d2ViJ3MgcmVsYXRpdmUgbGluayBnZW5lcmF0aW9uLgorCisJIyBjcmVhdGUgYSBzaW1wbGUgd2ViIHJvb3Qgd2hlcmUgJGZxZ2l0ZGlyL2dpdHdlYi8kaHR0cGRfb25seSBpcyBvdXIgcm9vdAorCW1rZGlyIC1wICIkZnFnaXRkaXIvZ2l0d2ViLyRodHRwZF9vbmx5L2NnaS1iaW4iCisJIyBQeXRob24gaHR0cC5zZXJ2ZXIgZm9sbG93cyB0aGUgc3ltbGlua3MKKwlsbiAtc2YgIiRyb290L2dpdHdlYi5jZ2kiICIkZnFnaXRkaXIvZ2l0d2ViLyRodHRwZF9vbmx5L2NnaS1iaW4vZ2l0d2ViLmNnaSIKKwlsbiAtc2YgIiRyb290L3N0YXRpYyIgIiRmcWdpdGRpci9naXR3ZWIvJGh0dHBkX29ubHkvIgorCisJIyBnZW5lcmF0ZSBhIHN0YW5kYWxvbmUgJ3B5dGhvbiBodHRwLnNlcnZlcicgc2NyaXB0IGluICRmcWdpdGRpci9naXR3ZWIKKwkjIFRoaXMgYXN1bWVzIHRoYXQgcHl0aG9uIGlzIGluIHVzZXIncyAkUEFUSAorCSMgVGhpcyBzY3JpcHQgaXMgUHl0aG9uIDIgYW5kIDMgY29tcGF0aWJsZQorCWNhdCA+ICIkZnFnaXRkaXIvZ2l0d2ViL2dpdHdlYi5weSIgPDxFT0YKKyMhL3Vzci9iaW4vZW52IHB5dGhvbgoraW1wb3J0IG9zCitpbXBvcnQgc3lzCisKKyMgT3BlbiBsb2cgZmlsZSBpbiBsaW5lIGJ1ZmZlcmluZyBtb2RlCithY2Nlc3Nsb2dmaWxlID0gb3BlbigiJGZxZ2l0ZGlyL2dpdHdlYi9hY2Nlc3MubG9nIiwgJ2EnLCBidWZmZXJpbmc9MSkKK2Vycm9ybG9nZmlsZSA9IG9wZW4oIiRmcWdpdGRpci9naXR3ZWIvZXJyb3IubG9nIiwgJ2EnLCBidWZmZXJpbmc9MSkKKworIyBhbmQgcmVwbGFjZSBvdXIgc3Rkb3V0IGFuZCBzdGRlcnIgd2l0aCBsb2cgZmlsZXMKKyMgYWxzbyBkbyBhIGxvd2xldmVsIGR1cGxpY2F0ZSBvZiB0aGUgbG9nZmlsZSBmaWxlIGRlc2NyaXB0b3JzIHNvIHRoYXQKKyMgb3VyIENHSSBjaGlsZCBwcm9jZXNzIHdyaXRlcyBhbnkgc3RkZXJyIHdhcm5pbmcgYWxzbyB0byB0aGUgbG9nIGZpbGUKK19vcmlnX3N0ZG91dF9mZCA9IHN5cy5zdGRvdXQuZmlsZW5vKCkKK3N5cy5zdGRvdXQuY2xvc2UoKQorb3MuZHVwMihhY2Nlc3Nsb2dmaWxlLmZpbGVubygpLCBfb3JpZ19zdGRvdXRfZmQpCitzeXMuc3Rkb3V0ID0gYWNjZXNzbG9nZmlsZQorCitfb3JpZ19zdGRlcnJfZmQgPSBzeXMuc3RkZXJyLmZpbGVubygpCitzeXMuc3RkZXJyLmNsb3NlKCkKK29zLmR1cDIoZXJyb3Jsb2dmaWxlLmZpbGVubygpLCBfb3JpZ19zdGRlcnJfZmQpCitzeXMuc3RkZXJyID0gZXJyb3Jsb2dmaWxlCisKK2Zyb20gZnVuY3Rvb2xzIGltcG9ydCBwYXJ0aWFsCisKK2lmIHN5cy52ZXJzaW9uX2luZm8gPCAoMywgMCk6ICAjIFB5dGhvbiAyCisJZnJvbSBDR0lIVFRQU2VydmVyIGltcG9ydCBDR0lIVFRQUmVxdWVzdEhhbmRsZXIKKwlmcm9tIEJhc2VIVFRQU2VydmVyIGltcG9ydCBIVFRQU2VydmVyIGFzIFNlcnZlckNsYXNzCitlbHNlOiAgIyBQeXRob24gMworCWZyb20gaHR0cC5zZXJ2ZXIgaW1wb3J0IENHSUhUVFBSZXF1ZXN0SGFuZGxlcgorCWZyb20gaHR0cC5zZXJ2ZXIgaW1wb3J0IEhUVFBTZXJ2ZXIgYXMgU2VydmVyQ2xhc3MKKworCisjIFRob3NlIGVudmlyb25tZW50IHZhcmlhYmxlcyB3aWxsIGJlIHBhc3NlZCB0byB0aGUgY2dpIHNjcmlwdAorb3MuZW52aXJvbi51cGRhdGUoeworCSJHSVRfRVhFQ19QQVRIIjogIiRHSVRfRVhFQ19QQVRIIiwKKwkiR0lUX0RJUiI6ICIkR0lUX0RJUiIsCisJIkdJVFdFQl9DT05GSUciOiAiJEdJVFdFQl9DT05GSUciCit9KQorCisKK2NsYXNzIEdpdFdlYlJlcXVlc3RIYW5kbGVyKENHSUhUVFBSZXF1ZXN0SGFuZGxlcik6CisKKwlkZWYgbG9nX21lc3NhZ2Uoc2VsZiwgZm9ybWF0LCAqYXJncyk6CisJCSMgV3JpdGUgYWNjZXNzIGxvZ3MgdG8gc3Rkb3V0CisJCXN5cy5zdGRvdXQud3JpdGUoIiVzIC0gLSBbJXNdICVzXG4iICUKKwkJCQkoc2VsZi5hZGRyZXNzX3N0cmluZygpLAorCQkJCXNlbGYubG9nX2RhdGVfdGltZV9zdHJpbmcoKSwKKwkJCQlmb3JtYXQlYXJncykpCisKKwlkZWYgZG9fSEVBRChzZWxmKToKKwkJc2VsZi5yZWRpcmVjdF9wYXRoKCkKKwkJQ0dJSFRUUFJlcXVlc3RIYW5kbGVyLmRvX0hFQUQoc2VsZikKKworCWRlZiBkb19HRVQoc2VsZik6CisJCWlmIHNlbGYucGF0aCA9PSAiLyI6CisJCQlzZWxmLnNlbmRfcmVzcG9uc2UoMzAzLCAiU2VlIE90aGVyIikKKwkJCXNlbGYuc2VuZF9oZWFkZXIoIkxvY2F0aW9uIiwgIi9jZ2ktYmluL2dpdHdlYi5jZ2kiKQorCQkJc2VsZi5lbmRfaGVhZGVycygpCisJCQlyZXR1cm4KKwkJc2VsZi5yZWRpcmVjdF9wYXRoKCkKKwkJQ0dJSFRUUFJlcXVlc3RIYW5kbGVyLmRvX0dFVChzZWxmKQorCisJZGVmIGRvX1BPU1Qoc2VsZik6CisJCXNlbGYucmVkaXJlY3RfcGF0aCgpCisJCUNHSUhUVFBSZXF1ZXN0SGFuZGxlci5kb19QT1NUKHNlbGYpCisKKwkjIHJld3JpdGUgcGF0aCBvZiBldmVyeSByZXF1ZXN0IHRoYXQgaXMgbm90IGdpdHdlYi5jZ2kgdG8gb3V0IG9mIGNnaS1iaW4KKwlkZWYgcmVkaXJlY3RfcGF0aChzZWxmKToKKwkJaWYgbm90IHNlbGYucGF0aC5zdGFydHN3aXRoKCIvY2dpLWJpbi9naXR3ZWIuY2dpIik6CisJCQlzZWxmLnBhdGggPSBzZWxmLnBhdGgucmVwbGFjZSgiL2NnaS1iaW4vIiwgIi8iKQorCisJIyBnaXR3ZWIuY2dpIGlzIHRoZSBvbmx5IHRoaW5nIHRoYXQgaXMgZXZlciBnb2luZyB0byBiZSBydW4gaGVyZS4KKwkjIElnbm9yZSBldmVyeXRoaW5nIGVsc2UKKwlkZWYgaXNfY2dpKHNlbGYpOgorCQlyZXN1bHQgPSBGYWxzZQorCQlpZiBzZWxmLnBhdGguc3RhcnRzd2l0aCgnL2NnaS1iaW4vZ2l0d2ViLmNnaScpOgorCQkJcmVzdWx0ID0gQ0dJSFRUUFJlcXVlc3RIYW5kbGVyLmlzX2NnaShzZWxmKQorCQlyZXR1cm4gcmVzdWx0CisKKworYmluZCA9ICIxMjcuMC4wLjEiCitpZiAiJGxvY2FsIiA9PSAidHJ1ZSI6CisJYmluZCA9ICIwLjAuMC4wIgorCisjIFNldCBvdXIgaHR0cCByb290IGRpcmVjdG9yeQorIyBUaGlzIGlzIGEgd29yayBhcm91bmQgZm9yIGEgbWlzc2luZyBkaXJlY3RvcnkgYXJndW1lbnQgaW4gb2xkZXIgUHl0aG9uIHZlcnNpb25zCisjIGFzIHRoaXMgd2FzIGFkZGVkIHRvIFNpbXBsZUhUVFBSZXF1ZXN0SGFuZGxlciBpbiBQeXRob24gMy43Citvcy5jaGRpcigiJGZxZ2l0ZGlyL2dpdHdlYi8kaHR0cGRfb25seS8iKQorCitHaXRXZWJSZXF1ZXN0SGFuZGxlci5wcm90b2NvbF92ZXJzaW9uID0gIkhUVFAvMS4wIgoraHR0cGQgPSBTZXJ2ZXJDbGFzcygoYmluZCwgJHBvcnQpLCBHaXRXZWJSZXF1ZXN0SGFuZGxlcikKKworc2EgPSBodHRwZC5zb2NrZXQuZ2V0c29ja25hbWUoKQorcHJpbnQoIlNlcnZpbmcgSFRUUCBvbiIsIHNhWzBdLCAicG9ydCIsIHNhWzFdLCAiLi4uIikKK2h0dHBkLnNlcnZlX2ZvcmV2ZXIoKQorRU9GCisKKwljaG1vZCBhK3ggIiRmcWdpdGRpci9naXR3ZWIvZ2l0d2ViLnB5IgorfQorCiBnaXR3ZWJfY29uZigpIHsKIAljYXQgPiAiJGZxZ2l0ZGlyL2dpdHdlYi9naXR3ZWJfY29uZmlnLnBlcmwiIDw8RU9GCiAjIUBAUEVSTEBACkBAIC02MjMsNiArNzQ1LDkgQEAKIAkqcGxhY2t1cCopCiAJCXBsYWNrdXBfY29uZgogCQk7OworCSpweXRob24qKQorCQlweXRob25fY29uZgorCQk7OwogCSopCiAJCWVjaG8gIlVua25vd24gaHR0cGQgc3BlY2lmaWVkOiAkaHR0cGQiCiAJCWV4aXQgMQpkaWZmIC0tZ2l0IGEvZ2l0LWxlZ2FjeS1yZWJhc2Uuc2ggYi9naXQtbGVnYWN5LXJlYmFzZS5zaApkZWxldGVkIGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggYjRjN2RiZi4uMDAwMDAwMAotLS0gYS9naXQtbGVnYWN5LXJlYmFzZS5zaAorKysgL2Rldi9udWxsCkBAIC0xLDc1OSArMCwwIEBACi0jIS9iaW4vc2gKLSMKLSMgQ29weXJpZ2h0IChjKSAyMDA1IEp1bmlvIEMgSGFtYW5vLgotIwotCi1TVUJESVJFQ1RPUllfT0s9WWVzCi1PUFRJT05TX0tFRVBEQVNIREFTSD0KLU9QVElPTlNfU1RVQ0tMT05HPXQKLU9QVElPTlNfU1BFQz0iXAotZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPl0gWzx1cHN0cmVhbT5dIFs8YnJhbmNoPl0KLWdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dIC0tcm9vdCBbPGJyYW5jaD5dCi1naXQgcmViYXNlIC0tY29udGludWUgfCAtLWFib3J0IHwgLS1za2lwIHwgLS1lZGl0LXRvZG8KLS0tCi0gQXZhaWxhYmxlIG9wdGlvbnMgYXJlCi12LHZlcmJvc2UhICAgICAgICAgZGlzcGxheSBhIGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbQotcSxxdWlldCEgICAgICAgICAgIGJlIHF1aWV0LiBpbXBsaWVzIC0tbm8tc3RhdAotYXV0b3N0YXNoICAgICAgICAgIGF1dG9tYXRpY2FsbHkgc3Rhc2gvc3Rhc2ggcG9wIGJlZm9yZSBhbmQgYWZ0ZXIKLWZvcmstcG9pbnQgICAgICAgICB1c2UgJ21lcmdlLWJhc2UgLS1mb3JrLXBvaW50JyB0byByZWZpbmUgdXBzdHJlYW0KLW9udG89ISAgICAgICAgICAgICByZWJhc2Ugb250byBnaXZlbiBicmFuY2ggaW5zdGVhZCBvZiB1cHN0cmVhbQotcixyZWJhc2UtbWVyZ2VzPyAgIHRyeSB0byByZWJhc2UgbWVyZ2VzIGluc3RlYWQgb2Ygc2tpcHBpbmcgdGhlbQotcCxwcmVzZXJ2ZS1tZXJnZXMhIHRyeSB0byByZWNyZWF0ZSBtZXJnZXMgaW5zdGVhZCBvZiBpZ25vcmluZyB0aGVtCi1zLHN0cmF0ZWd5PSEgICAgICAgdXNlIHRoZSBnaXZlbiBtZXJnZSBzdHJhdGVneQotWCxzdHJhdGVneS1vcHRpb249ISBwYXNzIHRoZSBhcmd1bWVudCB0aHJvdWdoIHRvIHRoZSBtZXJnZSBzdHJhdGVneQotbm8tZmYhICAgICAgICAgICAgIGNoZXJyeS1waWNrIGFsbCBjb21taXRzLCBldmVuIGlmIHVuY2hhbmdlZAotZixmb3JjZS1yZWJhc2UhICAgIGNoZXJyeS1waWNrIGFsbCBjb21taXRzLCBldmVuIGlmIHVuY2hhbmdlZAotbSxtZXJnZSEgICAgICAgICAgIHVzZSBtZXJnaW5nIHN0cmF0ZWdpZXMgdG8gcmViYXNlCi1pLGludGVyYWN0aXZlISAgICAgbGV0IHRoZSB1c2VyIGVkaXQgdGhlIGxpc3Qgb2YgY29tbWl0cyB0byByZWJhc2UKLXgsZXhlYz0hICAgICAgICAgICBhZGQgZXhlYyBsaW5lcyBhZnRlciBlYWNoIGNvbW1pdCBvZiB0aGUgZWRpdGFibGUgbGlzdAotayxrZWVwLWVtcHR5CSAgIHByZXNlcnZlIGVtcHR5IGNvbW1pdHMgZHVyaW5nIHJlYmFzZQotYWxsb3ctZW1wdHktbWVzc2FnZSBhbGxvdyByZWJhc2luZyBjb21taXRzIHdpdGggZW1wdHkgbWVzc2FnZXMKLXN0YXQhICAgICAgICAgICAgICBkaXNwbGF5IGEgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtCi1uLG5vLXN0YXQhICAgICAgICAgZG8gbm90IHNob3cgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtCi12ZXJpZnkgICAgICAgICAgICAgYWxsb3cgcHJlLXJlYmFzZSBob29rIHRvIHJ1bgotcmVyZXJlLWF1dG91cGRhdGUgIGFsbG93IHJlcmVyZSB0byB1cGRhdGUgaW5kZXggd2l0aCByZXNvbHZlZCBjb25mbGljdHMKLXJvb3QhICAgICAgICAgICAgICByZWJhc2UgYWxsIHJlYWNoYWJsZSBjb21taXRzIHVwIHRvIHRoZSByb290KHMpCi1hdXRvc3F1YXNoICAgICAgICAgbW92ZSBjb21taXRzIHRoYXQgYmVnaW4gd2l0aCBzcXVhc2ghL2ZpeHVwISB1bmRlciAtaQotc2lnbm9mZiAgICAgICAgICAgIGFkZCBhIFNpZ25lZC1vZmYtYnk6IGxpbmUgdG8gZWFjaCBjb21taXQKLWNvbW1pdHRlci1kYXRlLWlzLWF1dGhvci1kYXRlISBwYXNzZWQgdG8gJ2dpdCBhbScKLWlnbm9yZS1kYXRlISAgICAgICBwYXNzZWQgdG8gJ2dpdCBhbScKLXdoaXRlc3BhY2U9ISAgICAgICBwYXNzZWQgdG8gJ2dpdCBhcHBseScKLWlnbm9yZS13aGl0ZXNwYWNlISBwYXNzZWQgdG8gJ2dpdCBhcHBseScKLUM9ISAgICAgICAgICAgICAgICBwYXNzZWQgdG8gJ2dpdCBhcHBseScKLVMsZ3BnLXNpZ24/ICAgICAgICBHUEctc2lnbiBjb21taXRzCi0gQWN0aW9uczoKLWNvbnRpbnVlISAgICAgICAgICBjb250aW51ZQotYWJvcnQhICAgICAgICAgICAgIGFib3J0IGFuZCBjaGVjayBvdXQgdGhlIG9yaWdpbmFsIGJyYW5jaAotc2tpcCEgICAgICAgICAgICAgIHNraXAgY3VycmVudCBwYXRjaCBhbmQgY29udGludWUKLWVkaXQtdG9kbyEgICAgICAgICBlZGl0IHRoZSB0b2RvIGxpc3QgZHVyaW5nIGFuIGludGVyYWN0aXZlIHJlYmFzZQotcXVpdCEgICAgICAgICAgICAgIGFib3J0IGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMKLXNob3ctY3VycmVudC1wYXRjaCEgc2hvdyB0aGUgcGF0Y2ggZmlsZSBiZWluZyBhcHBsaWVkIG9yIG1lcmdlZAotIgotLiBnaXQtc2gtc2V0dXAKLXNldF9yZWZsb2dfYWN0aW9uIHJlYmFzZQotcmVxdWlyZV93b3JrX3RyZWVfZXhpc3RzCi1jZF90b190b3BsZXZlbAotCi1MRj0nCi0nCi1va190b19za2lwX3ByZV9yZWJhc2U9Ci0KLXNxdWFzaF9vbnRvPQotdW5zZXQgb250bwotdW5zZXQgcmVzdHJpY3RfcmV2aXNpb24KLWNtZD0KLXN0cmF0ZWd5PQotc3RyYXRlZ3lfb3B0cz0KLWRvX21lcmdlPQotbWVyZ2VfZGlyPSIkR0lUX0RJUiIvcmViYXNlLW1lcmdlCi1hcHBseV9kaXI9IiRHSVRfRElSIi9yZWJhc2UtYXBwbHkKLXZlcmJvc2U9Ci1kaWZmc3RhdD0KLXRlc3QgIiQoZ2l0IGNvbmZpZyAtLWJvb2wgcmViYXNlLnN0YXQpIiA9IHRydWUgJiYgZGlmZnN0YXQ9dAotYXV0b3N0YXNoPSIkKGdpdCBjb25maWcgLS1ib29sIHJlYmFzZS5hdXRvc3Rhc2ggfHwgZWNobyBmYWxzZSkiCi1mb3JrX3BvaW50PWF1dG8KLWdpdF9hbV9vcHQ9Ci1naXRfZm9ybWF0X3BhdGNoX29wdD0KLXJlYmFzZV9yb290PQotZm9yY2VfcmViYXNlPQotYWxsb3dfcmVyZXJlX2F1dG91cGRhdGU9Ci0jIE5vbi1lbXB0eSBpZiBhIHJlYmFzZSB3YXMgaW4gcHJvZ3Jlc3Mgd2hlbiAnZ2l0IHJlYmFzZScgd2FzIGludm9rZWQKLWluX3Byb2dyZXNzPQotIyBPbmUgb2Yge2FtLCBtZXJnZSwgaW50ZXJhY3RpdmV9Ci10eXBlPQotIyBPbmUgb2YgeyIkR0lUX0RJUiIvcmViYXNlLWFwcGx5LCAiJEdJVF9ESVIiL3JlYmFzZS1tZXJnZX0KLXN0YXRlX2Rpcj0KLSMgT25lIG9mIHsnJywgY29udGludWUsIHNraXAsIGFib3J0fSwgYXMgcGFyc2VkIGZyb20gY29tbWFuZCBsaW5lCi1hY3Rpb249Ci1yZWJhc2VfbWVyZ2VzPQotcmViYXNlX2NvdXNpbnM9Ci1wcmVzZXJ2ZV9tZXJnZXM9Ci1hdXRvc3F1YXNoPQota2VlcF9lbXB0eT0KLWFsbG93X2VtcHR5X21lc3NhZ2U9LS1hbGxvdy1lbXB0eS1tZXNzYWdlCi1zaWdub2ZmPQotdGVzdCAiJChnaXQgY29uZmlnIC0tYm9vbCByZWJhc2UuYXV0b3NxdWFzaCkiID0gInRydWUiICYmIGF1dG9zcXVhc2g9dAotY2FzZSAiJChnaXQgY29uZmlnIC0tYm9vbCBjb21taXQuZ3Bnc2lnbikiIGluCi10cnVlKQlncGdfc2lnbl9vcHQ9LVMgOzsKLSopCWdwZ19zaWduX29wdD0gOzsKLWVzYWMKLS4gZ2l0LXJlYmFzZS0tY29tbW9uCi0KLXJlYWRfYmFzaWNfc3RhdGUgKCkgewotCXRlc3QgLWYgIiRzdGF0ZV9kaXIvaGVhZC1uYW1lIiAmJgotCXRlc3QgLWYgIiRzdGF0ZV9kaXIvb250byIgJiYKLQloZWFkX25hbWU9JChjYXQgIiRzdGF0ZV9kaXIiL2hlYWQtbmFtZSkgJiYKLQlvbnRvPSQoY2F0ICIkc3RhdGVfZGlyIi9vbnRvKSAmJgotCSMgV2UgYWx3YXlzIHdyaXRlIHRvIG9yaWctaGVhZCwgYnV0IGludGVyYWN0aXZlIHJlYmFzZSB1c2VkIHRvIHdyaXRlIHRvCi0JIyBoZWFkLiBGYWxsIGJhY2sgdG8gcmVhZGluZyBmcm9tIGhlYWQgdG8gY292ZXIgZm9yIHRoZSBjYXNlIHRoYXQgdGhlCi0JIyB1c2VyIHVwZ3JhZGVkIGdpdCB3aXRoIGFuIG9uZ29pbmcgaW50ZXJhY3RpdmUgcmViYXNlLgotCWlmIHRlc3QgLWYgIiRzdGF0ZV9kaXIiL29yaWctaGVhZAotCXRoZW4KLQkJb3JpZ19oZWFkPSQoY2F0ICIkc3RhdGVfZGlyIi9vcmlnLWhlYWQpCi0JZWxzZQotCQlvcmlnX2hlYWQ9JChjYXQgIiRzdGF0ZV9kaXIiL2hlYWQpCi0JZmkgJiYKLQlHSVRfUVVJRVQ9JChjYXQgIiRzdGF0ZV9kaXIiL3F1aWV0KSAmJgotCXRlc3QgLWYgIiRzdGF0ZV9kaXIiL3ZlcmJvc2UgJiYgdmVyYm9zZT10Ci0JdGVzdCAtZiAiJHN0YXRlX2RpciIvc3RyYXRlZ3kgJiYgc3RyYXRlZ3k9IiQoY2F0ICIkc3RhdGVfZGlyIi9zdHJhdGVneSkiCi0JdGVzdCAtZiAiJHN0YXRlX2RpciIvc3RyYXRlZ3lfb3B0cyAmJgotCQlzdHJhdGVneV9vcHRzPSIkKGNhdCAiJHN0YXRlX2RpciIvc3RyYXRlZ3lfb3B0cykiCi0JdGVzdCAtZiAiJHN0YXRlX2RpciIvYWxsb3dfcmVyZXJlX2F1dG91cGRhdGUgJiYKLQkJYWxsb3dfcmVyZXJlX2F1dG91cGRhdGU9IiQoY2F0ICIkc3RhdGVfZGlyIi9hbGxvd19yZXJlcmVfYXV0b3VwZGF0ZSkiCi0JdGVzdCAtZiAiJHN0YXRlX2RpciIvZ3BnX3NpZ25fb3B0ICYmCi0JCWdwZ19zaWduX29wdD0iJChjYXQgIiRzdGF0ZV9kaXIiL2dwZ19zaWduX29wdCkiCi0JdGVzdCAtZiAiJHN0YXRlX2RpciIvc2lnbm9mZiAmJiB7Ci0JCXNpZ25vZmY9IiQoY2F0ICIkc3RhdGVfZGlyIi9zaWdub2ZmKSIKLQkJZm9yY2VfcmViYXNlPXQKLQl9Ci19Ci0KLWZpbmlzaF9yZWJhc2UgKCkgewotCXJtIC1mICIkKGdpdCByZXYtcGFyc2UgLS1naXQtcGF0aCBSRUJBU0VfSEVBRCkiCi0JYXBwbHlfYXV0b3N0YXNoICYmCi0JeyBnaXQgZ2MgLS1hdXRvIHx8IHRydWU7IH0gJiYKLQlybSAtcmYgIiRzdGF0ZV9kaXIiCi19Ci0KLXJ1bl9pbnRlcmFjdGl2ZSAoKSB7Ci0JR0lUX0NIRVJSWV9QSUNLX0hFTFA9IiRyZXNvbHZlbXNnIgotCWV4cG9ydCBHSVRfQ0hFUlJZX1BJQ0tfSEVMUAotCi0JdGVzdCAtbiAiJGtlZXBfZW1wdHkiICYmIGtlZXBfZW1wdHk9Ii0ta2VlcC1lbXB0eSIKLQl0ZXN0IC1uICIkcmViYXNlX21lcmdlcyIgJiYgcmViYXNlX21lcmdlcz0iLS1yZWJhc2UtbWVyZ2VzIgotCXRlc3QgLW4gIiRyZWJhc2VfY291c2lucyIgJiYgcmViYXNlX2NvdXNpbnM9Ii0tcmViYXNlLWNvdXNpbnMiCi0JdGVzdCAtbiAiJGF1dG9zcXVhc2giICYmIGF1dG9zcXVhc2g9Ii0tYXV0b3NxdWFzaCIKLQl0ZXN0IC1uICIkdmVyYm9zZSIgJiYgdmVyYm9zZT0iLS12ZXJib3NlIgotCXRlc3QgLW4gIiRmb3JjZV9yZWJhc2UiICYmIGZvcmNlX3JlYmFzZT0iLS1uby1mZiIKLQl0ZXN0IC1uICIkcmVzdHJpY3RfcmV2aXNpb24iICYmIFwKLQkJcmVzdHJpY3RfcmV2aXNpb249Ii0tcmVzdHJpY3QtcmV2aXNpb249XiRyZXN0cmljdF9yZXZpc2lvbiIKLQl0ZXN0IC1uICIkdXBzdHJlYW0iICYmIHVwc3RyZWFtPSItLXVwc3RyZWFtPSR1cHN0cmVhbSIKLQl0ZXN0IC1uICIkb250byIgJiYgb250bz0iLS1vbnRvPSRvbnRvIgotCXRlc3QgLW4gIiRzcXVhc2hfb250byIgJiYgc3F1YXNoX29udG89Ii0tc3F1YXNoLW9udG89JHNxdWFzaF9vbnRvIgotCXRlc3QgLW4gIiRvbnRvX25hbWUiICYmIG9udG9fbmFtZT0iLS1vbnRvLW5hbWU9JG9udG9fbmFtZSIKLQl0ZXN0IC1uICIkaGVhZF9uYW1lIiAmJiBoZWFkX25hbWU9Ii0taGVhZC1uYW1lPSRoZWFkX25hbWUiCi0JdGVzdCAtbiAiJHN0cmF0ZWd5IiAmJiBzdHJhdGVneT0iLS1zdHJhdGVneT0kc3RyYXRlZ3kiCi0JdGVzdCAtbiAiJHN0cmF0ZWd5X29wdHMiICYmIHN0cmF0ZWd5X29wdHM9Ii0tc3RyYXRlZ3ktb3B0cz0kc3RyYXRlZ3lfb3B0cyIKLQl0ZXN0IC1uICIkc3dpdGNoX3RvIiAmJiBzd2l0Y2hfdG89Ii0tc3dpdGNoLXRvPSRzd2l0Y2hfdG8iCi0JdGVzdCAtbiAiJGNtZCIgJiYgY21kPSItLWNtZD0kY21kIgotCXRlc3QgLW4gIiRhY3Rpb24iICYmIGFjdGlvbj0iLS0kYWN0aW9uIgotCi0JZXhlYyBnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSAiJGFjdGlvbiIgIiRrZWVwX2VtcHR5IiAiJHJlYmFzZV9tZXJnZXMiICIkcmViYXNlX2NvdXNpbnMiIFwKLQkJIiR1cHN0cmVhbSIgIiRvbnRvIiAiJHNxdWFzaF9vbnRvIiAiJHJlc3RyaWN0X3JldmlzaW9uIiBcCi0JCSIkYWxsb3dfZW1wdHlfbWVzc2FnZSIgIiRhdXRvc3F1YXNoIiAiJHZlcmJvc2UiIFwKLQkJIiRmb3JjZV9yZWJhc2UiICIkb250b19uYW1lIiAiJGhlYWRfbmFtZSIgIiRzdHJhdGVneSIgXAotCQkiJHN0cmF0ZWd5X29wdHMiICIkY21kIiAiJHN3aXRjaF90byIgXAotCQkiJGFsbG93X3JlcmVyZV9hdXRvdXBkYXRlIiAiJGdwZ19zaWduX29wdCIgIiRzaWdub2ZmIgotfQotCi1ydW5fc3BlY2lmaWNfcmViYXNlICgpIHsKLQlpZiBbICIkaW50ZXJhY3RpdmVfcmViYXNlIiA9IGltcGxpZWQgXTsgdGhlbgotCQlHSVRfRURJVE9SPToKLQkJZXhwb3J0IEdJVF9FRElUT1IKLQkJYXV0b3NxdWFzaD0KLQlmaQotCi0JaWYgdGVzdCAtbiAiJGludGVyYWN0aXZlX3JlYmFzZSIgLWEgLXogIiRwcmVzZXJ2ZV9tZXJnZXMiCi0JdGhlbgotCQlydW5faW50ZXJhY3RpdmUKLQllbHNlCi0JCS4gZ2l0LXJlYmFzZS0tJHR5cGUKLQotCQlpZiB0ZXN0IC16ICIkcHJlc2VydmVfbWVyZ2VzIgotCQl0aGVuCi0JCQlnaXRfcmViYXNlX18kdHlwZQotCQllbHNlCi0JCQlnaXRfcmViYXNlX19wcmVzZXJ2ZV9tZXJnZXMKLQkJZmkKLQlmaQotCi0JcmV0PSQ/Ci0JaWYgdGVzdCAkcmV0IC1lcSAwCi0JdGhlbgotCQlmaW5pc2hfcmViYXNlCi0JZWxpZiB0ZXN0ICRyZXQgLWVxIDIgIyBzcGVjaWFsIGV4aXQgc3RhdHVzIGZvciByZWJhc2UgLXAKLQl0aGVuCi0JCWFwcGx5X2F1dG9zdGFzaCAmJgotCQlybSAtcmYgIiRzdGF0ZV9kaXIiICYmCi0JCWRpZSAiTm90aGluZyB0byBkbyIKLQlmaQotCWV4aXQgJHJldAotfQotCi1ydW5fcHJlX3JlYmFzZV9ob29rICgpIHsKLQlpZiB0ZXN0IC16ICIkb2tfdG9fc2tpcF9wcmVfcmViYXNlIiAmJgotCSAgIHRlc3QgLXggIiQoZ2l0IHJldi1wYXJzZSAtLWdpdC1wYXRoIGhvb2tzL3ByZS1yZWJhc2UpIgotCXRoZW4KLQkJIiQoZ2l0IHJldi1wYXJzZSAtLWdpdC1wYXRoIGhvb2tzL3ByZS1yZWJhc2UpIiAkezErIiRAIn0gfHwKLQkJZGllICIkKGdldHRleHQgIlRoZSBwcmUtcmViYXNlIGhvb2sgcmVmdXNlZCB0byByZWJhc2UuIikiCi0JZmkKLX0KLQotdGVzdCAtZiAiJGFwcGx5X2RpciIvYXBwbHlpbmcgJiYKLQlkaWUgIiQoZ2V0dGV4dCAiSXQgbG9va3MgbGlrZSAnZ2l0IGFtJyBpcyBpbiBwcm9ncmVzcy4gQ2Fubm90IHJlYmFzZS4iKSIKLQotaWYgdGVzdCAtZCAiJGFwcGx5X2RpciIKLXRoZW4KLQl0eXBlPWFtCi0Jc3RhdGVfZGlyPSIkYXBwbHlfZGlyIgotZWxpZiB0ZXN0IC1kICIkbWVyZ2VfZGlyIgotdGhlbgotCWlmIHRlc3QgLWQgIiRtZXJnZV9kaXIiL3Jld3JpdHRlbgotCXRoZW4KLQkJdHlwZT1wcmVzZXJ2ZS1tZXJnZXMKLQkJaW50ZXJhY3RpdmVfcmViYXNlPWV4cGxpY2l0Ci0JCXByZXNlcnZlX21lcmdlcz10Ci0JZWxpZiB0ZXN0IC1mICIkbWVyZ2VfZGlyIi9pbnRlcmFjdGl2ZQotCXRoZW4KLQkJdHlwZT1pbnRlcmFjdGl2ZQotCQlpbnRlcmFjdGl2ZV9yZWJhc2U9ZXhwbGljaXQKLQllbHNlCi0JCXR5cGU9bWVyZ2UKLQlmaQotCXN0YXRlX2Rpcj0iJG1lcmdlX2RpciIKLWZpCi10ZXN0IC1uICIkdHlwZSIgJiYgaW5fcHJvZ3Jlc3M9dAotCi10b3RhbF9hcmdjPSQjCi13aGlsZSB0ZXN0ICQjICE9IDAKLWRvCi0JY2FzZSAiJDEiIGluCi0JLS1uby12ZXJpZnkpCi0JCW9rX3RvX3NraXBfcHJlX3JlYmFzZT15ZXMKLQkJOzsKLQktLXZlcmlmeSkKLQkJb2tfdG9fc2tpcF9wcmVfcmViYXNlPQotCQk7OwotCS0tY29udGludWV8LS1za2lwfC0tYWJvcnR8LS1xdWl0fC0tZWRpdC10b2RvfC0tc2hvdy1jdXJyZW50LXBhdGNoKQotCQl0ZXN0ICR0b3RhbF9hcmdjIC1lcSAyIHx8IHVzYWdlCi0JCWFjdGlvbj0kezEjIy0tfQotCQk7OwotCS0tb250bz0qKQotCQlvbnRvPSIkezEjLS1vbnRvPX0iCi0JCTs7Ci0JLS1leGVjPSopCi0JCWNtZD0iJHtjbWR9ZXhlYyAkezEjLS1leGVjPX0ke0xGfSIKLQkJdGVzdCAteiAiJGludGVyYWN0aXZlX3JlYmFzZSIgJiYgaW50ZXJhY3RpdmVfcmViYXNlPWltcGxpZWQKLQkJOzsKLQktLWludGVyYWN0aXZlKQotCQlpbnRlcmFjdGl2ZV9yZWJhc2U9ZXhwbGljaXQKLQkJOzsKLQktLWtlZXAtZW1wdHkpCi0JCWtlZXBfZW1wdHk9eWVzCi0JCTs7Ci0JLS1hbGxvdy1lbXB0eS1tZXNzYWdlKQotCQlhbGxvd19lbXB0eV9tZXNzYWdlPS0tYWxsb3ctZW1wdHktbWVzc2FnZQotCQk7OwotCS0tbm8ta2VlcC1lbXB0eSkKLQkJa2VlcF9lbXB0eT0KLQkJOzsKLQktLXJlYmFzZS1tZXJnZXMpCi0JCXJlYmFzZV9tZXJnZXM9dAotCQl0ZXN0IC16ICIkaW50ZXJhY3RpdmVfcmViYXNlIiAmJiBpbnRlcmFjdGl2ZV9yZWJhc2U9aW1wbGllZAotCQk7OwotCS0tcmViYXNlLW1lcmdlcz0qKQotCQlyZWJhc2VfbWVyZ2VzPXQKLQkJY2FzZSAiJHsxIyo9fSIgaW4KLQkJcmViYXNlLWNvdXNpbnMpIHJlYmFzZV9jb3VzaW5zPXQ7OwotCQluby1yZWJhc2UtY291c2lucykgcmViYXNlX2NvdXNpbnM9OzsKLQkJKikgZGllICJVbmtub3duIG1vZGU6ICQxIjs7Ci0JCWVzYWMKLQkJdGVzdCAteiAiJGludGVyYWN0aXZlX3JlYmFzZSIgJiYgaW50ZXJhY3RpdmVfcmViYXNlPWltcGxpZWQKLQkJOzsKLQktLXByZXNlcnZlLW1lcmdlcykKLQkJcHJlc2VydmVfbWVyZ2VzPXQKLQkJdGVzdCAteiAiJGludGVyYWN0aXZlX3JlYmFzZSIgJiYgaW50ZXJhY3RpdmVfcmViYXNlPWltcGxpZWQKLQkJOzsKLQktLWF1dG9zcXVhc2gpCi0JCWF1dG9zcXVhc2g9dAotCQk7OwotCS0tbm8tYXV0b3NxdWFzaCkKLQkJYXV0b3NxdWFzaD0KLQkJOzsKLQktLWZvcmstcG9pbnQpCi0JCWZvcmtfcG9pbnQ9dAotCQk7OwotCS0tbm8tZm9yay1wb2ludCkKLQkJZm9ya19wb2ludD0KLQkJOzsKLQktLW1lcmdlKQotCQlkb19tZXJnZT10Ci0JCTs7Ci0JLS1zdHJhdGVneS1vcHRpb249KikKLQkJc3RyYXRlZ3lfb3B0cz0iJHN0cmF0ZWd5X29wdHMgJChnaXQgcmV2LXBhcnNlIC0tc3EtcXVvdGUgIi0tJHsxIy0tc3RyYXRlZ3ktb3B0aW9uPX0iIHwgc2VkIC1lIHMvXi4vLykiCi0JCWRvX21lcmdlPXQKLQkJdGVzdCAteiAiJHN0cmF0ZWd5IiAmJiBzdHJhdGVneT1yZWN1cnNpdmUKLQkJOzsKLQktLXN0cmF0ZWd5PSopCi0JCXN0cmF0ZWd5PSIkezEjLS1zdHJhdGVneT19IgotCQlkb19tZXJnZT10Ci0JCTs7Ci0JLS1uby1zdGF0KQotCQlkaWZmc3RhdD0KLQkJOzsKLQktLXN0YXQpCi0JCWRpZmZzdGF0PXQKLQkJOzsKLQktLWF1dG9zdGFzaCkKLQkJYXV0b3N0YXNoPXRydWUKLQkJOzsKLQktLW5vLWF1dG9zdGFzaCkKLQkJYXV0b3N0YXNoPWZhbHNlCi0JCTs7Ci0JLS12ZXJib3NlKQotCQl2ZXJib3NlPXQKLQkJZGlmZnN0YXQ9dAotCQlHSVRfUVVJRVQ9Ci0JCTs7Ci0JLS1xdWlldCkKLQkJR0lUX1FVSUVUPXQKLQkJZ2l0X2FtX29wdD0iJGdpdF9hbV9vcHQgLXEiCi0JCXZlcmJvc2U9Ci0JCWRpZmZzdGF0PQotCQk7OwotCS0td2hpdGVzcGFjZT0qKQotCQlnaXRfYW1fb3B0PSIkZ2l0X2FtX29wdCAtLXdoaXRlc3BhY2U9JHsxIy0td2hpdGVzcGFjZT19IgotCQljYXNlICIkezEjLS13aGl0ZXNwYWNlPX0iIGluCi0JCWZpeHxzdHJpcCkKLQkJCWZvcmNlX3JlYmFzZT10Ci0JCQk7OwotCQl3YXJufG5vd2FybnxlcnJvcnxlcnJvci1hbGwpCi0JCQk7OyAjIG9rYXksIGtub3duIHdoaXRlc3BhY2Ugb3B0aW9uCi0JCSopCi0JCQlkaWUgImZhdGFsOiBJbnZhbGlkIHdoaXRlc3BhY2Ugb3B0aW9uOiAnJHsxIyo9fSciCi0JCQk7OwotCQllc2FjCi0JCTs7Ci0JLS1pZ25vcmUtd2hpdGVzcGFjZSkKLQkJZ2l0X2FtX29wdD0iJGdpdF9hbV9vcHQgJDEiCi0JCTs7Ci0JLS1zaWdub2ZmKQotCQlzaWdub2ZmPS0tc2lnbm9mZgotCQk7OwotCS0tbm8tc2lnbm9mZikKLQkJc2lnbm9mZj0KLQkJOzsKLQktLWNvbW1pdHRlci1kYXRlLWlzLWF1dGhvci1kYXRlfC0taWdub3JlLWRhdGUpCi0JCWdpdF9hbV9vcHQ9IiRnaXRfYW1fb3B0ICQxIgotCQlmb3JjZV9yZWJhc2U9dAotCQk7OwotCS1DKlshMC05XSopCi0JCWRpZSAiZmF0YWw6IHN3aXRjaCBcYEMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCi0JCTs7Ci0JLUMqKQotCQlnaXRfYW1fb3B0PSIkZ2l0X2FtX29wdCAkMSIKLQkJOzsKLQktLXJvb3QpCi0JCXJlYmFzZV9yb290PXQKLQkJOzsKLQktLWZvcmNlLXJlYmFzZXwtLW5vLWZmKQotCQlmb3JjZV9yZWJhc2U9dAotCQk7OwotCS0tcmVyZXJlLWF1dG91cGRhdGV8LS1uby1yZXJlcmUtYXV0b3VwZGF0ZSkKLQkJYWxsb3dfcmVyZXJlX2F1dG91cGRhdGU9IiQxIgotCQk7OwotCS0tZ3BnLXNpZ24pCi0JCWdwZ19zaWduX29wdD0tUwotCQk7OwotCS0tZ3BnLXNpZ249KikKLQkJZ3BnX3NpZ25fb3B0PSItUyR7MSMtLWdwZy1zaWduPX0iCi0JCTs7Ci0JLS0pCi0JCXNoaWZ0Ci0JCWJyZWFrCi0JCTs7Ci0JKikKLQkJdXNhZ2UKLQkJOzsKLQllc2FjCi0Jc2hpZnQKLWRvbmUKLXRlc3QgJCMgLWd0IDIgJiYgdXNhZ2UKLQotaWYgdGVzdCAtbiAiJGFjdGlvbiIKLXRoZW4KLQl0ZXN0IC16ICIkaW5fcHJvZ3Jlc3MiICYmIGRpZSAiJChnZXR0ZXh0ICJObyByZWJhc2UgaW4gcHJvZ3Jlc3M/IikiCi0JIyBPbmx5IGludGVyYWN0aXZlIHJlYmFzZSB1c2VzIGRldGFpbGVkIHJlZmxvZyBtZXNzYWdlcwotCWlmIHRlc3QgLW4gIiRpbnRlcmFjdGl2ZV9yZWJhc2UiICYmIHRlc3QgIiRHSVRfUkVGTE9HX0FDVElPTiIgPSByZWJhc2UKLQl0aGVuCi0JCUdJVF9SRUZMT0dfQUNUSU9OPSJyZWJhc2UgLWkgKCRhY3Rpb24pIgotCQlleHBvcnQgR0lUX1JFRkxPR19BQ1RJT04KLQlmaQotZmkKLQotaWYgdGVzdCAiJGFjdGlvbiIgPSAiZWRpdC10b2RvIiAmJiB0ZXN0IC16ICIkaW50ZXJhY3RpdmVfcmViYXNlIgotdGhlbgotCWRpZSAiJChnZXR0ZXh0ICJUaGUgLS1lZGl0LXRvZG8gYWN0aW9uIGNhbiBvbmx5IGJlIHVzZWQgZHVyaW5nIGludGVyYWN0aXZlIHJlYmFzZS4iKSIKLWZpCi0KLWNhc2UgIiRhY3Rpb24iIGluCi1jb250aW51ZSkKLQkjIFNhbml0eSBjaGVjawotCWdpdCByZXYtcGFyc2UgLS12ZXJpZnkgSEVBRCA+L2Rldi9udWxsIHx8Ci0JCWRpZSAiJChnZXR0ZXh0ICJDYW5ub3QgcmVhZCBIRUFEIikiCi0JZ2l0IHVwZGF0ZS1pbmRleCAtLWlnbm9yZS1zdWJtb2R1bGVzIC0tcmVmcmVzaCAmJgotCWdpdCBkaWZmLWZpbGVzIC0tcXVpZXQgLS1pZ25vcmUtc3VibW9kdWxlcyB8fCB7Ci0JCWVjaG8gIiQoZ2V0dGV4dCAiWW91IG11c3QgZWRpdCBhbGwgbWVyZ2UgY29uZmxpY3RzIGFuZCB0aGVuCi1tYXJrIHRoZW0gYXMgcmVzb2x2ZWQgdXNpbmcgZ2l0IGFkZCIpIgotCQlleGl0IDEKLQl9Ci0JcmVhZF9iYXNpY19zdGF0ZQotCXJ1bl9zcGVjaWZpY19yZWJhc2UKLQk7Owotc2tpcCkKLQlvdXRwdXQgZ2l0IHJlc2V0IC0taGFyZCBIRUFEIHx8IGV4aXQgJD8KLQlyZWFkX2Jhc2ljX3N0YXRlCi0JcnVuX3NwZWNpZmljX3JlYmFzZQotCTs7Ci1hYm9ydCkKLQlnaXQgcmVyZXJlIGNsZWFyCi0JcmVhZF9iYXNpY19zdGF0ZQotCWNhc2UgIiRoZWFkX25hbWUiIGluCi0JcmVmcy8qKQotCQlnaXQgc3ltYm9saWMtcmVmIC1tICJyZWJhc2U6IGFib3J0aW5nIiBIRUFEICRoZWFkX25hbWUgfHwKLQkJZGllICIkKGV2YWxfZ2V0dGV4dCAiQ291bGQgbm90IG1vdmUgYmFjayB0byBcJGhlYWRfbmFtZSIpIgotCQk7OwotCWVzYWMKLQlvdXRwdXQgZ2l0IHJlc2V0IC0taGFyZCAkb3JpZ19oZWFkCi0JZmluaXNoX3JlYmFzZQotCWV4aXQKLQk7OwotcXVpdCkKLQlleGVjIHJtIC1yZiAiJHN0YXRlX2RpciIKLQk7OwotZWRpdC10b2RvKQotCXJ1bl9zcGVjaWZpY19yZWJhc2UKLQk7Owotc2hvdy1jdXJyZW50LXBhdGNoKQotCXJ1bl9zcGVjaWZpY19yZWJhc2UKLQlkaWUgIkJVRzogcnVuX3NwZWNpZmljX3JlYmFzZSBpcyBub3Qgc3VwcG9zZWQgdG8gcmV0dXJuIGhlcmUiCi0JOzsKLWVzYWMKLQotIyBNYWtlIHN1cmUgbm8gcmViYXNlIGlzIGluIHByb2dyZXNzCi1pZiB0ZXN0IC1uICIkaW5fcHJvZ3Jlc3MiCi10aGVuCi0Jc3RhdGVfZGlyX2Jhc2U9JHtzdGF0ZV9kaXIjIyovfQotCWNtZF9saXZlX3JlYmFzZT0iZ2l0IHJlYmFzZSAoLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXApIgotCWNtZF9jbGVhcl9zdGFsZV9yZWJhc2U9InJtIC1mciBcIiRzdGF0ZV9kaXJcIiIKLQlkaWUgIgotJChldmFsX2dldHRleHQgJ0l0IHNlZW1zIHRoYXQgdGhlcmUgaXMgYWxyZWFkeSBhICRzdGF0ZV9kaXJfYmFzZSBkaXJlY3RvcnksIGFuZAotSSB3b25kZXIgaWYgeW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgcmViYXNlLiAgSWYgdGhhdCBpcyB0aGUKLWNhc2UsIHBsZWFzZSB0cnkKLQkkY21kX2xpdmVfcmViYXNlCi1JZiB0aGF0IGlzIG5vdCB0aGUgY2FzZSwgcGxlYXNlCi0JJGNtZF9jbGVhcl9zdGFsZV9yZWJhc2UKLWFuZCBydW4gbWUgYWdhaW4uICBJIGFtIHN0b3BwaW5nIGluIGNhc2UgeW91IHN0aWxsIGhhdmUgc29tZXRoaW5nCi12YWx1YWJsZSB0aGVyZS4nKSIKLWZpCi0KLWlmIHRlc3QgLW4gIiRyZWJhc2Vfcm9vdCIgJiYgdGVzdCAteiAiJG9udG8iCi10aGVuCi0JdGVzdCAteiAiJGludGVyYWN0aXZlX3JlYmFzZSIgJiYgaW50ZXJhY3RpdmVfcmViYXNlPWltcGxpZWQKLWZpCi0KLWlmIHRlc3QgLW4gIiRrZWVwX2VtcHR5IgotdGhlbgotCXRlc3QgLXogIiRpbnRlcmFjdGl2ZV9yZWJhc2UiICYmIGludGVyYWN0aXZlX3JlYmFzZT1pbXBsaWVkCi1maQotCi1pZiB0ZXN0IC1uICIkaW50ZXJhY3RpdmVfcmViYXNlIgotdGhlbgotCWlmIHRlc3QgLXogIiRwcmVzZXJ2ZV9tZXJnZXMiCi0JdGhlbgotCQl0eXBlPWludGVyYWN0aXZlCi0JZWxzZQotCQl0eXBlPXByZXNlcnZlLW1lcmdlcwotCWZpCi0KLQlzdGF0ZV9kaXI9IiRtZXJnZV9kaXIiCi1lbGlmIHRlc3QgLW4gIiRkb19tZXJnZSIKLXRoZW4KLQl0eXBlPW1lcmdlCi0Jc3RhdGVfZGlyPSIkbWVyZ2VfZGlyIgotZWxzZQotCXR5cGU9YW0KLQlzdGF0ZV9kaXI9IiRhcHBseV9kaXIiCi1maQotCi1pZiB0ZXN0IC10IDIgJiYgdGVzdCAteiAiJEdJVF9RVUlFVCIKLXRoZW4KLQlnaXRfZm9ybWF0X3BhdGNoX29wdD0iJGdpdF9mb3JtYXRfcGF0Y2hfb3B0IC0tcHJvZ3Jlc3MiCi1maQotCi1pZiB0ZXN0IC1uICIkZ2l0X2FtX29wdCI7IHRoZW4KLQlpbmNvbXBhdGlibGVfb3B0cz0kKGVjaG8gIiAkZ2l0X2FtX29wdCAiIHwgXAotCQkJICAgIHNlZCAtZSAncy8gLXEgLyAvZycgLWUgJ3MvXiBcKC4qXCkgJC9cMS8nKQotCWlmIHRlc3QgLW4gIiRpbnRlcmFjdGl2ZV9yZWJhc2UiCi0JdGhlbgotCQlpZiB0ZXN0IC1uICIkaW5jb21wYXRpYmxlX29wdHMiCi0JCXRoZW4KLQkJCWRpZSAiJChnZXR0ZXh0ICJlcnJvcjogY2Fubm90IGNvbWJpbmUgaW50ZXJhY3RpdmUgb3B0aW9ucyAoLS1pbnRlcmFjdGl2ZSwgLS1leGVjLCAtLXJlYmFzZS1tZXJnZXMsIC0tcHJlc2VydmUtbWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250bykgd2l0aCBhbSBvcHRpb25zICgkaW5jb21wYXRpYmxlX29wdHMpIikiCi0JCWZpCi0JZmkKLQlpZiB0ZXN0IC1uICIkZG9fbWVyZ2UiOyB0aGVuCi0JCWlmIHRlc3QgLW4gIiRpbmNvbXBhdGlibGVfb3B0cyIKLQkJdGhlbgotCQkJZGllICIkKGdldHRleHQgImVycm9yOiBjYW5ub3QgY29tYmluZSBtZXJnZSBvcHRpb25zICgtLW1lcmdlLCAtLXN0cmF0ZWd5LCAtLXN0cmF0ZWd5LW9wdGlvbikgd2l0aCBhbSBvcHRpb25zICgkaW5jb21wYXRpYmxlX29wdHMpIikiCi0JCWZpCi0JZmkKLWZpCi0KLWlmIHRlc3QgLW4gIiRzaWdub2ZmIgotdGhlbgotCXRlc3QgLW4gIiRwcmVzZXJ2ZV9tZXJnZXMiICYmCi0JCWRpZSAiJChnZXR0ZXh0ICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tc2lnbm9mZicgd2l0aCAnLS1wcmVzZXJ2ZS1tZXJnZXMnIikiCi0JZ2l0X2FtX29wdD0iJGdpdF9hbV9vcHQgJHNpZ25vZmYiCi0JZm9yY2VfcmViYXNlPXQKLWZpCi0KLWlmIHRlc3QgLW4gIiRwcmVzZXJ2ZV9tZXJnZXMiCi10aGVuCi0JIyBOb3RlOiBpbmNvbXBhdGliaWxpdHkgd2l0aCAtLXNpZ25vZmYgaGFuZGxlZCBpbiBzaWdub2ZmIGJsb2NrIGFib3ZlCi0JIyBOb3RlOiBpbmNvbXBhdGliaWxpdHkgd2l0aCAtLWludGVyYWN0aXZlIGlzIGp1c3QgYSBzdHJvbmcgd2FybmluZzsKLQkjICAgICAgIGdpdC1yZWJhc2UudHh0IGNhdmVhdHMgd2l0aCAidW5sZXNzIHlvdSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyIKLQl0ZXN0IC1uICIkcmViYXNlX21lcmdlcyIgJiYKLQkJZGllICIkKGdldHRleHQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmViYXNlLW1lcmdlcyciKSIKLWZpCi0KLWlmIHRlc3QgLW4gIiRyZWJhc2VfbWVyZ2VzIgotdGhlbgotCXRlc3QgLW4gIiRzdHJhdGVneV9vcHRzIiAmJgotCQlkaWUgIiQoZ2V0dGV4dCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3ktb3B0aW9uJyIpIgotCXRlc3QgLW4gIiRzdHJhdGVneSIgJiYKLQkJZGllICIkKGdldHRleHQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1yZWJhc2UtbWVyZ2VzJyB3aXRoICctLXN0cmF0ZWd5JyIpIgotZmkKLQotaWYgdGVzdCAteiAiJHJlYmFzZV9yb290IgotdGhlbgotCWNhc2UgIiQjIiBpbgotCTApCi0JCWlmICEgdXBzdHJlYW1fbmFtZT0kKGdpdCByZXYtcGFyc2UgLS1zeW1ib2xpYy1mdWxsLW5hbWUgXAotCQkJLS12ZXJpZnkgLXEgQHt1cHN0cmVhbX0gMj4vZGV2L251bGwpCi0JCXRoZW4KLQkJCS4gZ2l0LXBhcnNlLXJlbW90ZQotCQkJZXJyb3Jfb25fbWlzc2luZ19kZWZhdWx0X3Vwc3RyZWFtICJyZWJhc2UiICJyZWJhc2UiIFwKLQkJCQkiYWdhaW5zdCIgImdpdCByZWJhc2UgJChnZXR0ZXh0ICc8YnJhbmNoPicpIgotCQlmaQotCi0JCXRlc3QgIiRmb3JrX3BvaW50IiA9IGF1dG8gJiYgZm9ya19wb2ludD10Ci0JCTs7Ci0JKikJdXBzdHJlYW1fbmFtZT0iJDEiCi0JCWlmIHRlc3QgIiR1cHN0cmVhbV9uYW1lIiA9ICItIgotCQl0aGVuCi0JCQl1cHN0cmVhbV9uYW1lPSJAey0xfSIKLQkJZmkKLQkJc2hpZnQKLQkJOzsKLQllc2FjCi0JdXBzdHJlYW09JChwZWVsX2NvbW1pdHRpc2ggIiR7dXBzdHJlYW1fbmFtZX0iKSB8fAotCWRpZSAiJChldmFsX2dldHRleHQgImludmFsaWQgdXBzdHJlYW0gJ1wkdXBzdHJlYW1fbmFtZSciKSIKLQl1cHN0cmVhbV9hcmc9IiR1cHN0cmVhbV9uYW1lIgotZWxzZQotCWlmIHRlc3QgLXogIiRvbnRvIgotCXRoZW4KLQkJZW1wdHlfdHJlZT0kKGdpdCBoYXNoLW9iamVjdCAtdCB0cmVlIC9kZXYvbnVsbCkKLQkJb250bz0kKGdpdCBjb21taXQtdHJlZSAkZW1wdHlfdHJlZSA8L2Rldi9udWxsKQotCQlzcXVhc2hfb250bz0iJG9udG8iCi0JZmkKLQl1bnNldCB1cHN0cmVhbV9uYW1lCi0JdW5zZXQgdXBzdHJlYW0KLQl0ZXN0ICQjIC1ndCAxICYmIHVzYWdlCi0JdXBzdHJlYW1fYXJnPS0tcm9vdAotZmkKLQotIyBNYWtlIHN1cmUgdGhlIGJyYW5jaCB0byByZWJhc2Ugb250byBpcyB2YWxpZC4KLW9udG9fbmFtZT0ke29udG8tIiR1cHN0cmVhbV9uYW1lIn0KLWNhc2UgIiRvbnRvX25hbWUiIGluCi0qLi4uKikKLQlpZglsZWZ0PSR7b250b19uYW1lJS4uLip9IHJpZ2h0PSR7b250b19uYW1lIyouLi59ICYmCi0JCW9udG89JChnaXQgbWVyZ2UtYmFzZSAtLWFsbCAke2xlZnQ6LUhFQUR9ICR7cmlnaHQ6LUhFQUR9KQotCXRoZW4KLQkJY2FzZSAiJG9udG8iIGluCi0JCT8qIiRMRiI/KikKLQkJCWRpZSAiJChldmFsX2dldHRleHQgIlwkb250b19uYW1lOiB0aGVyZSBhcmUgbW9yZSB0aGFuIG9uZSBtZXJnZSBiYXNlcyIpIgotCQkJOzsKLQkJJycpCi0JCQlkaWUgIiQoZXZhbF9nZXR0ZXh0ICJcJG9udG9fbmFtZTogdGhlcmUgaXMgbm8gbWVyZ2UgYmFzZSIpIgotCQkJOzsKLQkJZXNhYwotCWVsc2UKLQkJZGllICIkKGV2YWxfZ2V0dGV4dCAiXCRvbnRvX25hbWU6IHRoZXJlIGlzIG5vIG1lcmdlIGJhc2UiKSIKLQlmaQotCTs7Ci0qKQotCW9udG89JChwZWVsX2NvbW1pdHRpc2ggIiRvbnRvX25hbWUiKSB8fAotCWRpZSAiJChldmFsX2dldHRleHQgIkRvZXMgbm90IHBvaW50IHRvIGEgdmFsaWQgY29tbWl0OiBcJG9udG9fbmFtZSIpIgotCTs7Ci1lc2FjCi0KLSMgSWYgdGhlIGJyYW5jaCB0byByZWJhc2UgaXMgZ2l2ZW4sIHRoYXQgaXMgdGhlIGJyYW5jaCB3ZSB3aWxsIHJlYmFzZQotIyAkYnJhbmNoX25hbWUgLS0gYnJhbmNoL2NvbW1pdCBiZWluZyByZWJhc2VkLCBvciBIRUFEIChhbHJlYWR5IGRldGFjaGVkKQotIyAkb3JpZ19oZWFkIC0tIGNvbW1pdCBvYmplY3QgbmFtZSBvZiB0aXAgb2YgdGhlIGJyYW5jaCBiZWZvcmUgcmViYXNpbmcKLSMgJGhlYWRfbmFtZSAtLSByZWZzL2hlYWRzLzx0aGF0LWJyYW5jaD4gb3IgImRldGFjaGVkIEhFQUQiCi1zd2l0Y2hfdG89Ci1jYXNlICIkIyIgaW4KLTEpCi0JIyBJcyBpdCAicmViYXNlIG90aGVyICRicmFuY2huYW1lIiBvciAicmViYXNlIG90aGVyICRjb21taXQiPwotCWJyYW5jaF9uYW1lPSIkMSIKLQlzd2l0Y2hfdG89IiQxIgotCi0JIyBJcyBpdCBhIGxvY2FsIGJyYW5jaD8KLQlpZiBnaXQgc2hvdy1yZWYgLS12ZXJpZnkgLS1xdWlldCAtLSAicmVmcy9oZWFkcy8kYnJhbmNoX25hbWUiICYmCi0JICAgb3JpZ19oZWFkPSQoZ2l0IHJldi1wYXJzZSAtcSAtLXZlcmlmeSAicmVmcy9oZWFkcy8kYnJhbmNoX25hbWUiKQotCXRoZW4KLQkJaGVhZF9uYW1lPSJyZWZzL2hlYWRzLyRicmFuY2hfbmFtZSIKLQkjIElmIG5vdCBpcyBpdCBhIHZhbGlkIHJlZiAoYnJhbmNoIG9yIGNvbW1pdCk/Ci0JZWxpZiBvcmlnX2hlYWQ9JChnaXQgcmV2LXBhcnNlIC1xIC0tdmVyaWZ5ICIkYnJhbmNoX25hbWUiKQotCXRoZW4KLQkJaGVhZF9uYW1lPSJkZXRhY2hlZCBIRUFEIgotCi0JZWxzZQotCQlkaWUgIiQoZXZhbF9nZXR0ZXh0ICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICdcJGJyYW5jaF9uYW1lJyIpIgotCWZpCi0JOzsKLTApCi0JIyBEbyBub3QgbmVlZCB0byBzd2l0Y2ggYnJhbmNoZXMsIHdlIGFyZSBhbHJlYWR5IG9uIGl0LgotCWlmIGJyYW5jaF9uYW1lPSQoZ2l0IHN5bWJvbGljLXJlZiAtcSBIRUFEKQotCXRoZW4KLQkJaGVhZF9uYW1lPSRicmFuY2hfbmFtZQotCQlicmFuY2hfbmFtZT0kKGV4cHIgInokYnJhbmNoX25hbWUiIDogJ3pyZWZzL2hlYWRzL1woLipcKScpCi0JZWxzZQotCQloZWFkX25hbWU9ImRldGFjaGVkIEhFQUQiCi0JCWJyYW5jaF9uYW1lPUhFQUQKLQlmaQotCW9yaWdfaGVhZD0kKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgSEVBRCkgfHwgZXhpdAotCTs7Ci0qKQotCWRpZSAiQlVHOiB1bmV4cGVjdGVkIG51bWJlciBvZiBhcmd1bWVudHMgbGVmdCB0byBwYXJzZSIKLQk7OwotZXNhYwotCi1pZiB0ZXN0ICIkZm9ya19wb2ludCIgPSB0Ci10aGVuCi0JbmV3X3Vwc3RyZWFtPSQoZ2l0IG1lcmdlLWJhc2UgLS1mb3JrLXBvaW50ICIkdXBzdHJlYW1fbmFtZSIgXAotCQkJIiR7c3dpdGNoX3RvOi1IRUFEfSIpCi0JaWYgdGVzdCAtbiAiJG5ld191cHN0cmVhbSIKLQl0aGVuCi0JCXJlc3RyaWN0X3JldmlzaW9uPSRuZXdfdXBzdHJlYW0KLQlmaQotZmkKLQotaWYgdGVzdCAiJGF1dG9zdGFzaCIgPSB0cnVlICYmICEgKHJlcXVpcmVfY2xlYW5fd29ya190cmVlKSAyPi9kZXYvbnVsbAotdGhlbgotCXN0YXNoX3NoYTE9JChnaXQgc3Rhc2ggY3JlYXRlICJhdXRvc3Rhc2giKSB8fAotCWRpZSAiJChnZXR0ZXh0ICdDYW5ub3QgYXV0b3N0YXNoJykiCi0KLQlta2RpciAtcCAiJHN0YXRlX2RpciIgJiYKLQllY2hvICRzdGFzaF9zaGExID4iJHN0YXRlX2Rpci9hdXRvc3Rhc2giICYmCi0Jc3Rhc2hfYWJicmV2PSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0ICRzdGFzaF9zaGExKSAmJgotCWVjaG8gIiQoZXZhbF9nZXR0ZXh0ICdDcmVhdGVkIGF1dG9zdGFzaDogJHN0YXNoX2FiYnJldicpIiAmJgotCWdpdCByZXNldCAtLWhhcmQKLWZpCi0KLXJlcXVpcmVfY2xlYW5fd29ya190cmVlICJyZWJhc2UiICIkKGdldHRleHQgIlBsZWFzZSBjb21taXQgb3Igc3Rhc2ggdGhlbS4iKSIKLQotIyBOb3cgd2UgYXJlIHJlYmFzaW5nIGNvbW1pdHMgJHVwc3RyZWFtLi4kb3JpZ19oZWFkIChvciB3aXRoIC0tcm9vdCwKLSMgZXZlcnl0aGluZyBsZWFkaW5nIHVwIHRvICRvcmlnX2hlYWQpIG9uIHRvcCBvZiAkb250bwotCi0jIENoZWNrIGlmIHdlIGFyZSBhbHJlYWR5IGJhc2VkIG9uICRvbnRvIHdpdGggbGluZWFyIGhpc3RvcnksCi0jIGJ1dCB0aGlzIHNob3VsZCBiZSBkb25lIG9ubHkgd2hlbiB1cHN0cmVhbSBhbmQgb250byBhcmUgdGhlIHNhbWUKLSMgYW5kIGlmIHRoaXMgaXMgbm90IGFuIGludGVyYWN0aXZlIHJlYmFzZS4KLW1iPSQoZ2l0IG1lcmdlLWJhc2UgIiRvbnRvIiAiJG9yaWdfaGVhZCIpCi1pZiB0ZXN0IC16ICIkaW50ZXJhY3RpdmVfcmViYXNlIiAmJiB0ZXN0ICIkdXBzdHJlYW0iID0gIiRvbnRvIiAmJgotCXRlc3QgIiRtYiIgPSAiJG9udG8iICYmIHRlc3QgLXogIiRyZXN0cmljdF9yZXZpc2lvbiIgJiYKLQkjIGxpbmVhciBoaXN0b3J5PwotCSEgKGdpdCByZXYtbGlzdCAtLXBhcmVudHMgIiRvbnRvIi4uIiRvcmlnX2hlYWQiIHwgc2FuZV9ncmVwICIgLiogIikgPiAvZGV2L251bGwKLXRoZW4KLQlpZiB0ZXN0IC16ICIkZm9yY2VfcmViYXNlIgotCXRoZW4KLQkJIyBMYXppbHkgc3dpdGNoIHRvIHRoZSB0YXJnZXQgYnJhbmNoIGlmIG5lZWRlZC4uLgotCQl0ZXN0IC16ICIkc3dpdGNoX3RvIiB8fAotCQlHSVRfUkVGTE9HX0FDVElPTj0iJEdJVF9SRUZMT0dfQUNUSU9OOiBjaGVja291dCAkc3dpdGNoX3RvIiBcCi0JCQlnaXQgY2hlY2tvdXQgLXEgIiRzd2l0Y2hfdG8iIC0tCi0JCWlmIHRlc3QgIiRicmFuY2hfbmFtZSIgPSAiSEVBRCIgJiYKLQkJCSAhIGdpdCBzeW1ib2xpYy1yZWYgLXEgSEVBRAotCQl0aGVuCi0JCQlzYXkgIiQoZXZhbF9nZXR0ZXh0ICJIRUFEIGlzIHVwIHRvIGRhdGUuIikiCi0JCWVsc2UKLQkJCXNheSAiJChldmFsX2dldHRleHQgIkN1cnJlbnQgYnJhbmNoIFwkYnJhbmNoX25hbWUgaXMgdXAgdG8gZGF0ZS4iKSIKLQkJZmkKLQkJZmluaXNoX3JlYmFzZQotCQlleGl0IDAKLQllbHNlCi0JCWlmIHRlc3QgIiRicmFuY2hfbmFtZSIgPSAiSEVBRCIgJiYKLQkJCSAhIGdpdCBzeW1ib2xpYy1yZWYgLXEgSEVBRAotCQl0aGVuCi0JCQlzYXkgIiQoZXZhbF9nZXR0ZXh0ICJIRUFEIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIikiCi0JCWVsc2UKLQkJCXNheSAiJChldmFsX2dldHRleHQgIkN1cnJlbnQgYnJhbmNoIFwkYnJhbmNoX25hbWUgaXMgdXAgdG8gZGF0ZSwgcmViYXNlIGZvcmNlZC4iKSIKLQkJZmkKLQlmaQotZmkKLQotIyBJZiBhIGhvb2sgZXhpc3RzLCBnaXZlIGl0IGEgY2hhbmNlIHRvIGludGVycnVwdAotcnVuX3ByZV9yZWJhc2VfaG9vayAiJHVwc3RyZWFtX2FyZyIgIiRAIgotCi1pZiB0ZXN0IC1uICIkZGlmZnN0YXQiCi10aGVuCi0JaWYgdGVzdCAtbiAiJHZlcmJvc2UiCi0JdGhlbgotCQlpZiB0ZXN0IC16ICIkbWIiCi0JCXRoZW4KLQkJCWVjaG8gIiQoZXZhbF9nZXR0ZXh0ICJDaGFuZ2VzIHRvIFwkb250bzoiKSIKLQkJZWxzZQotCQkJZWNobyAiJChldmFsX2dldHRleHQgIkNoYW5nZXMgZnJvbSBcJG1iIHRvIFwkb250bzoiKSIKLQkJZmkKLQlmaQotCW1iX3RyZWU9IiR7bWI6LSQoZ2l0IGhhc2gtb2JqZWN0IC10IHRyZWUgL2Rldi9udWxsKX0iCi0JIyBXZSB3YW50IGNvbG9yIChpZiBzZXQpLCBidXQgbm8gcGFnZXIKLQlHSVRfUEFHRVI9JycgZ2l0IGRpZmYgLS1zdGF0IC0tc3VtbWFyeSAiJG1iX3RyZWUiICIkb250byIKLWZpCi0KLXRlc3QgLW4gIiRpbnRlcmFjdGl2ZV9yZWJhc2UiICYmIHJ1bl9zcGVjaWZpY19yZWJhc2UKLQotIyBEZXRhY2ggSEVBRCBhbmQgcmVzZXQgdGhlIHRyZWUKLXNheSAiJChnZXR0ZXh0ICJGaXJzdCwgcmV3aW5kaW5nIGhlYWQgdG8gcmVwbGF5IHlvdXIgd29yayBvbiB0b3Agb2YgaXQuLi4iKSIKLQotR0lUX1JFRkxPR19BQ1RJT049IiRHSVRfUkVGTE9HX0FDVElPTjogY2hlY2tvdXQgJG9udG9fbmFtZSIgXAotCWdpdCBjaGVja291dCAtcSAiJG9udG9eMCIgfHwgZGllICJjb3VsZCBub3QgZGV0YWNoIEhFQUQiCi1naXQgdXBkYXRlLXJlZiBPUklHX0hFQUQgJG9yaWdfaGVhZAotCi0jIElmIHRoZSAkb250byBpcyBhIHByb3BlciBkZXNjZW5kYW50IG9mIHRoZSB0aXAgb2YgdGhlIGJyYW5jaCwgdGhlbgotIyB3ZSBqdXN0IGZhc3QtZm9yd2FyZGVkLgotaWYgdGVzdCAiJG1iIiA9ICIkb3JpZ19oZWFkIgotdGhlbgotCXNheSAiJChldmFsX2dldHRleHQgIkZhc3QtZm9yd2FyZGVkIFwkYnJhbmNoX25hbWUgdG8gXCRvbnRvX25hbWUuIikiCi0JbW92ZV90b19vcmlnaW5hbF9icmFuY2gKLQlmaW5pc2hfcmViYXNlCi0JZXhpdCAwCi1maQotCi1pZiB0ZXN0IC1uICIkcmViYXNlX3Jvb3QiCi10aGVuCi0JcmV2aXNpb25zPSIkb250by4uJG9yaWdfaGVhZCIKLWVsc2UKLQlyZXZpc2lvbnM9IiR7cmVzdHJpY3RfcmV2aXNpb24tJHVwc3RyZWFtfS4uJG9yaWdfaGVhZCIKLWZpCi0KLXJ1bl9zcGVjaWZpY19yZWJhc2UKZGlmZiAtLWdpdCBhL2dpdC1zdGFzaC5zaCBiL2dpdC1sZWdhY3ktc3Rhc2guc2gKc2ltaWxhcml0eSBpbmRleCA5MyUKcmVuYW1lIGZyb20gZ2l0LXN0YXNoLnNoCnJlbmFtZSB0byBnaXQtbGVnYWN5LXN0YXNoLnNoCmluZGV4IDk0NzkzYzEuLjRkNGViYjQgMTAwNzU1Ci0tLSBhL2dpdC1zdGFzaC5zaAorKysgYi9naXQtbGVnYWN5LXN0YXNoLnNoCkBAIC01NSw2ICs1NSwyMCBAQAogCWdpdCBscy1maWxlcyAtbyAkeiAkZXhjbF9vcHQgLS0gIiRAIgogfQogCitwcmVwYXJlX2ZhbGxiYWNrX2lkZW50ICgpIHsKKwlpZiAhIGdpdCAtYyB1c2VyLnVzZWNvbmZpZ29ubHk9eWVzIHZhciBHSVRfQ09NTUlUVEVSX0lERU5UID4vZGV2L251bGwgMj4mMQorCXRoZW4KKwkJR0lUX0FVVEhPUl9OQU1FPSJnaXQgc3Rhc2giCisJCUdJVF9BVVRIT1JfRU1BSUw9Z2l0QHN0YXNoCisJCUdJVF9DT01NSVRURVJfTkFNRT0iZ2l0IHN0YXNoIgorCQlHSVRfQ09NTUlUVEVSX0VNQUlMPWdpdEBzdGFzaAorCQlleHBvcnQgR0lUX0FVVEhPUl9OQU1FCisJCWV4cG9ydCBHSVRfQVVUSE9SX0VNQUlMCisJCWV4cG9ydCBHSVRfQ09NTUlUVEVSX05BTUUKKwkJZXhwb3J0IEdJVF9DT01NSVRURVJfRU1BSUwKKwlmaQorfQorCiBjbGVhcl9zdGFzaCAoKSB7CiAJaWYgdGVzdCAkIyAhPSAwCiAJdGhlbgpAQCAtNjYsNyArODAsMzIgQEAKIAlmaQogfQogCittYXliZV9xdWlldCAoKSB7CisJY2FzZSAiJDEiIGluCisJLS1rZWVwLXN0ZG91dCkKKwkJc2hpZnQKKwkJaWYgdGVzdCAtbiAiJEdJVF9RVUlFVCIKKwkJdGhlbgorCQkJIiRAIiAyPi9kZXYvbnVsbAorCQllbHNlCisJCQkiJEAiCisJCWZpCisJCTs7CisJKikKKwkJaWYgdGVzdCAtbiAiJEdJVF9RVUlFVCIKKwkJdGhlbgorCQkJIiRAIiA+L2Rldi9udWxsIDI+JjEKKwkJZWxzZQorCQkJIiRAIgorCQlmaQorCQk7OworCWVzYWMKK30KKwogY3JlYXRlX3N0YXNoICgpIHsKKworCXByZXBhcmVfZmFsbGJhY2tfaWRlbnQKKwogCXN0YXNoX21zZz0KIAl1bnRyYWNrZWQ9CiAJd2hpbGUgdGVzdCAkIyAhPSAwCkBAIC05NSwxNSArMTM0LDE4IEBACiAJZG9uZQogCiAJZ2l0IHVwZGF0ZS1pbmRleCAtcSAtLXJlZnJlc2gKLQlpZiBub19jaGFuZ2VzICIkQCIKKwlpZiBtYXliZV9xdWlldCBub19jaGFuZ2VzICIkQCIKIAl0aGVuCiAJCWV4aXQgMAogCWZpCiAKIAkjIHN0YXRlIG9mIHRoZSBiYXNlIGNvbW1pdAotCWlmIGJfY29tbWl0PSQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBIRUFEKQorCWlmIGJfY29tbWl0PSQobWF5YmVfcXVpZXQgLS1rZWVwLXN0ZG91dCBnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IEhFQUQpCiAJdGhlbgogCQloZWFkPSQoZ2l0IHJldi1saXN0IC0tb25lbGluZSAtbiAxIEhFQUQgLS0pCisJZWxpZiB0ZXN0IC1uICIkR0lUX1FVSUVUIgorCXRoZW4KKwkJZXhpdCAxCiAJZWxzZQogCQlkaWUgIiQoZ2V0dGV4dCAiWW91IGRvIG5vdCBoYXZlIHRoZSBpbml0aWFsIGNvbW1pdCB5ZXQiKSIKIAlmaQpAQCAtMTUxLDcgKzE5Myw4IEBACiAJCQlHSVRfSU5ERVhfRklMRT0iJFRNUGluZGV4IiAmJgogCQkJZXhwb3J0IEdJVF9JTkRFWF9GSUxFICYmCiAJCQlnaXQgZGlmZi1pbmRleCAtLW5hbWUtb25seSAteiBIRUFEIC0tICIkQCIgPiIkVE1QLXN0YWdlbmFtZXMiICYmCi0JCQlnaXQgdXBkYXRlLWluZGV4IC16IC0tYWRkIC0tcmVtb3ZlIC0tc3RkaW4gPCIkVE1QLXN0YWdlbmFtZXMiICYmCisJCQlnaXQgdXBkYXRlLWluZGV4IC0taWdub3JlLXNraXAtd29ya3RyZWUtZW50cmllcyBcCisJCQkJLXogLS1hZGQgLS1yZW1vdmUgLS1zdGRpbiA8IiRUTVAtc3RhZ2VuYW1lcyIgJiYKIAkJCWdpdCB3cml0ZS10cmVlICYmCiAJCQlybSAtZiAiJFRNUGluZGV4IgogCQkpICkgfHwKQEAgLTE2NCw3ICsyMDcsNyBAQAogCiAJCSMgZmluZCBvdXQgd2hhdCB0aGUgdXNlciB3YW50cwogCQlHSVRfSU5ERVhfRklMRT0iJFRNUC1pbmRleCIgXAotCQkJZ2l0IGFkZC0taW50ZXJhY3RpdmUgLS1wYXRjaD1zdGFzaCAtLSAiJEAiICYmCisJCQlnaXQgYWRkIC0tbGVnYWN5LXN0YXNoLXAgLS0gIiRAIiAmJgogCiAJCSMgc3RhdGUgb2YgdGhlIHdvcmtpbmcgdHJlZQogCQl3X3RyZWU9JChHSVRfSU5ERVhfRklMRT0iJFRNUC1pbmRleCIgZ2l0IHdyaXRlLXRyZWUpIHx8CkBAIC0yOTgsNyArMzQxLDcgQEAKIAl0ZXN0IC1uICIkdW50cmFja2VkIiB8fCBnaXQgbHMtZmlsZXMgLS1lcnJvci11bm1hdGNoIC0tICIkQCIgPi9kZXYvbnVsbCB8fCBleGl0IDEKIAogCWdpdCB1cGRhdGUtaW5kZXggLXEgLS1yZWZyZXNoCi0JaWYgbm9fY2hhbmdlcyAiJEAiCisJaWYgbWF5YmVfcXVpZXQgbm9fY2hhbmdlcyAiJEAiCiAJdGhlbgogCQlzYXkgIiQoZ2V0dGV4dCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIikiCiAJCWV4aXQgMApAQCAtMzI4LDcgKzM3MSw3IEBACiAJCQlnaXQgZGlmZi1pbmRleCAtcCAtLWNhY2hlZCAtLWJpbmFyeSBIRUFEIC0tICIkQCIgfAogCQkJZ2l0IGFwcGx5IC0taW5kZXggLVIKIAkJZWxzZQotCQkJZ2l0IHJlc2V0IC0taGFyZCAtcQorCQkJZ2l0IHJlc2V0IC0taGFyZCAtcSAtLW5vLXJlY3Vyc2Utc3VibW9kdWxlcwogCQlmaQogCiAJCWlmIHRlc3QgIiRrZWVwX2luZGV4IiA9ICJ0IiAmJiB0ZXN0IC1uICIkaV90cmVlIgpAQCAtMzUzLDYgKzM5Niw5IEBACiAJd2hpbGUgdGVzdCAkIyAhPSAwCiAJZG8KIAkJY2FzZSAiJDEiIGluCisJCS1xfC0tcXVpZXQpCisJCQlHSVRfUVVJRVQ9dAorCQkJOzsKIAkJLS0pCiAJCQlzaGlmdAogCQkJYnJlYWsKZGlmZiAtLWdpdCBhL2dpdC1tZXJnZXRvb2wtLWxpYi5zaCBiL2dpdC1tZXJnZXRvb2wtLWxpYi5zaAppbmRleCA4M2JmNTI0Li4yMDRhNWFjIDEwMDY0NAotLS0gYS9naXQtbWVyZ2V0b29sLS1saWIuc2gKKysrIGIvZ2l0LW1lcmdldG9vbC0tbGliLnNoCkBAIC04MCwxNCArODAsMTggQEAKIAl9CiB9CiAKLWRpZmZfbW9kZSgpIHsKK2RpZmZfbW9kZSAoKSB7CiAJdGVzdCAiJFRPT0xfTU9ERSIgPSBkaWZmCiB9CiAKLW1lcmdlX21vZGUoKSB7CittZXJnZV9tb2RlICgpIHsKIAl0ZXN0ICIkVE9PTF9NT0RFIiA9IG1lcmdlCiB9CiAKK2d1aV9tb2RlICgpIHsKKwl0ZXN0ICIkR0lUX01FUkdFVE9PTF9HVUkiID0gdHJ1ZQorfQorCiB0cmFuc2xhdGVfbWVyZ2VfdG9vbF9wYXRoICgpIHsKIAllY2hvICIkMSIKIH0KQEAgLTI3OSw2ICsyODMsNyBAQAogCQlmaQogCQl0b29scz0iJHRvb2xzIGd2aW1kaWZmIGRpZmZ1c2UgZGlmZm1lcmdlIGVjbWVyZ2UiCiAJCXRvb2xzPSIkdG9vbHMgcDRtZXJnZSBhcmF4aXMgYmMgY29kZWNvbXBhcmUiCisJCXRvb2xzPSIkdG9vbHMgc21lcmdlIgogCWZpCiAJY2FzZSAiJHtWSVNVQUw6LSRFRElUT1J9IiBpbgogCSp2aW0qKQpAQCAtMzUwLDIwICszNTUsMzYgQEAKIH0KIAogZ2V0X2NvbmZpZ3VyZWRfbWVyZ2VfdG9vbCAoKSB7Ci0JIyBJZiBmaXJzdCBhcmd1bWVudCBpcyB0cnVlLCBmaW5kIHRoZSBndWl0b29sIGluc3RlYWQKLQlpZiB0ZXN0ICIkMSIgPSB0cnVlCi0JdGhlbgotCQlndWlfcHJlZml4PWd1aQotCWZpCi0KLQkjIERpZmYgbW9kZSBmaXJzdCB0cmllcyBkaWZmLihndWkpdG9vbCBhbmQgZmFsbHMgYmFjayB0byBtZXJnZS4oZ3VpKXRvb2wuCi0JIyBNZXJnZSBtb2RlIG9ubHkgY2hlY2tzIG1lcmdlLihndWkpdG9vbAorCWtleXM9CiAJaWYgZGlmZl9tb2RlCiAJdGhlbgotCQltZXJnZV90b29sPSQoZ2l0IGNvbmZpZyBkaWZmLiR7Z3VpX3ByZWZpeH10b29sIHx8IGdpdCBjb25maWcgbWVyZ2UuJHtndWlfcHJlZml4fXRvb2wpCisJCWlmIGd1aV9tb2RlCisJCXRoZW4KKwkJCWtleXM9ImRpZmYuZ3VpdG9vbCBtZXJnZS5ndWl0b29sIGRpZmYudG9vbCBtZXJnZS50b29sIgorCQllbHNlCisJCQlrZXlzPSJkaWZmLnRvb2wgbWVyZ2UudG9vbCIKKwkJZmkKIAllbHNlCi0JCW1lcmdlX3Rvb2w9JChnaXQgY29uZmlnIG1lcmdlLiR7Z3VpX3ByZWZpeH10b29sKQorCQlpZiBndWlfbW9kZQorCQl0aGVuCisJCQlrZXlzPSJtZXJnZS5ndWl0b29sIG1lcmdlLnRvb2wiCisJCWVsc2UKKwkJCWtleXM9Im1lcmdlLnRvb2wiCisJCWZpCiAJZmkKKworCW1lcmdlX3Rvb2w9JCgKKwkJSUZTPScgJworCQlmb3Iga2V5IGluICRrZXlzCisJCWRvCisJCQlzZWxlY3RlZD0kKGdpdCBjb25maWcgJGtleSkKKwkJCWlmIHRlc3QgLW4gIiRzZWxlY3RlZCIKKwkJCXRoZW4KKwkJCQllY2hvICIkc2VsZWN0ZWQiCisJCQkJcmV0dXJuCisJCQlmaQorCQlkb25lKQorCiAJaWYgdGVzdCAtbiAiJG1lcmdlX3Rvb2wiICYmICEgdmFsaWRfdG9vbCAiJG1lcmdlX3Rvb2wiCiAJdGhlbgogCQllY2hvID4mMiAiZ2l0IGNvbmZpZyBvcHRpb24gJFRPT0xfTU9ERS4ke2d1aV9wcmVmaXh9dG9vbCBzZXQgdG8gdW5rbm93biB0b29sOiAkbWVyZ2VfdG9vbCIKQEAgLTQwMywxNCArNDI0LDE3IEBACiB9CiAKIGdldF9tZXJnZV90b29sICgpIHsKKwlpc19ndWVzc2VkPWZhbHNlCiAJIyBDaGVjayBpZiBhIG1lcmdlIHRvb2wgaGFzIGJlZW4gY29uZmlndXJlZAogCW1lcmdlX3Rvb2w9JChnZXRfY29uZmlndXJlZF9tZXJnZV90b29sKQogCSMgVHJ5IHRvIGd1ZXNzIGFuIGFwcHJvcHJpYXRlIG1lcmdlIHRvb2wgaWYgbm8gdG9vbCBoYXMgYmVlbiBzZXQuCiAJaWYgdGVzdCAteiAiJG1lcmdlX3Rvb2wiCiAJdGhlbgogCQltZXJnZV90b29sPSQoZ3Vlc3NfbWVyZ2VfdG9vbCkgfHwgZXhpdAorCQlpc19ndWVzc2VkPXRydWUKIAlmaQogCWVjaG8gIiRtZXJnZV90b29sIgorCXRlc3QgIiRpc19ndWVzc2VkIiA9IGZhbHNlCiB9CiAKIG1lcmdldG9vbF9maW5kX3dpbjMyX2NtZCAoKSB7CmRpZmYgLS1naXQgYS9naXQtbWVyZ2V0b29sLnNoIGIvZ2l0LW1lcmdldG9vbC5zaAppbmRleCAwMWI5YWQ1Li5lM2Y2ZDU0IDEwMDc1NQotLS0gYS9naXQtbWVyZ2V0b29sLnNoCisrKyBiL2dpdC1tZXJnZXRvb2wuc2gKQEAgLTIyOCw5ICsyMjgsOCBAQAogfQogCiBjaGVja291dF9zdGFnZWRfZmlsZSAoKSB7Ci0JdG1wZmlsZT0kKGV4cHIgXAotCQkiJChnaXQgY2hlY2tvdXQtaW5kZXggLS10ZW1wIC0tc3RhZ2U9IiQxIiAiJDIiIDI+L2Rldi9udWxsKSIgXAotCQk6ICdcKFteCV0qXCkJJykKKwl0bXBmaWxlPSIkKGdpdCBjaGVja291dC1pbmRleCAtLXRlbXAgLS1zdGFnZT0iJDEiICIkMiIgMj4vZGV2L251bGwpIiAmJgorCXRtcGZpbGU9JHt0bXBmaWxlJSUnCScqfQogCiAJaWYgdGVzdCAkPyAtZXEgMCAmJiB0ZXN0IC1uICIkdG1wZmlsZSIKIAl0aGVuCkBAIC0yNTUsMTMgKzI1NCwxNiBAQAogCQlyZXR1cm4gMQogCWZpCiAKLQlpZiBCQVNFPSQoZXhwciAiJE1FUkdFRCIgOiAnXCguKlwpXC5bXi9dKiQnKQotCXRoZW4KLQkJZXh0PSQoZXhwciAiJE1FUkdFRCIgOiAnLipcKFwuW14vXSpcKSQnKQotCWVsc2UKKwkjIGV4dHJhY3QgZmlsZSBleHRlbnNpb24gZnJvbSB0aGUgbGFzdCBwYXRoIGNvbXBvbmVudAorCWNhc2UgIiR7TUVSR0VEIyMqL30iIGluCisJKi4qKQorCQlleHQ9LiR7TUVSR0VEIyMqLn0KKwkJQkFTRT0ke01FUkdFRCUiJGV4dCJ9CisJCTs7CisJKikKIAkJQkFTRT0kTUVSR0VECiAJCWV4dD0KLQlmaQorCWVzYWMKIAogCW1lcmdldG9vbF90bXBkaXJfaW5pdAogCkBAIC0yNzcsMTUgKzI3OSwzMCBAQAogCVJFTU9URT0iJE1FUkdFVE9PTF9UTVBESVIvJHtCQVNFfV9SRU1PVEVfJCQkZXh0IgogCUJBU0U9IiRNRVJHRVRPT0xfVE1QRElSLyR7QkFTRX1fQkFTRV8kJCRleHQiCiAKLQliYXNlX21vZGU9JChnaXQgbHMtZmlsZXMgLXUgLS0gIiRNRVJHRUQiIHwgYXdrICd7aWYgKCQzPT0xKSBwcmludCAkMTt9JykKLQlsb2NhbF9tb2RlPSQoZ2l0IGxzLWZpbGVzIC11IC0tICIkTUVSR0VEIiB8IGF3ayAne2lmICgkMz09MikgcHJpbnQgJDE7fScpCi0JcmVtb3RlX21vZGU9JChnaXQgbHMtZmlsZXMgLXUgLS0gIiRNRVJHRUQiIHwgYXdrICd7aWYgKCQzPT0zKSBwcmludCAkMTt9JykKKwliYXNlX21vZGU9IGxvY2FsX21vZGU9IHJlbW90ZV9tb2RlPQorCisJIyBoZXJlLCAkSUZTIGlzIGp1c3QgYSBMRgorCWZvciBsaW5lIGluICRmCisJZG8KKwkJbW9kZT0ke2xpbmUlJSAqfQkJIyAxc3Qgd29yZAorCQlzaGExPSR7bGluZSMiJG1vZGUgIn0KKwkJc2hhMT0ke3NoYTElJSAqfQkJIyAybmQgd29yZAorCQljYXNlICIke2xpbmUjJG1vZGUgJHNoYTEgfSIgaW4JIyByZW1haW5kZXIKKwkJJzEJJyopCisJCQliYXNlX21vZGU9JG1vZGUKKwkJCTs7CisJCScyCScqKQorCQkJbG9jYWxfbW9kZT0kbW9kZSBsb2NhbF9zaGExPSRzaGExCisJCQk7OworCQknMwknKikKKwkJCXJlbW90ZV9tb2RlPSRtb2RlIHJlbW90ZV9zaGExPSRzaGExCisJCQk7OworCQllc2FjCisJZG9uZQogCiAJaWYgaXNfc3VibW9kdWxlICIkbG9jYWxfbW9kZSIgfHwgaXNfc3VibW9kdWxlICIkcmVtb3RlX21vZGUiCiAJdGhlbgogCQllY2hvICJTdWJtb2R1bGUgbWVyZ2UgY29uZmxpY3QgZm9yICckTUVSR0VEJzoiCi0JCWxvY2FsX3NoYTE9JChnaXQgbHMtZmlsZXMgLXUgLS0gIiRNRVJHRUQiIHwgYXdrICd7aWYgKCQzPT0yKSBwcmludCAkMjt9JykKLQkJcmVtb3RlX3NoYTE9JChnaXQgbHMtZmlsZXMgLXUgLS0gIiRNRVJHRUQiIHwgYXdrICd7aWYgKCQzPT0zKSBwcmludCAkMjt9JykKIAkJZGVzY3JpYmVfZmlsZSAiJGxvY2FsX21vZGUiICJsb2NhbCIgIiRsb2NhbF9zaGExIgogCQlkZXNjcmliZV9maWxlICIkcmVtb3RlX21vZGUiICJyZW1vdGUiICIkcmVtb3RlX3NoYTEiCiAJCXJlc29sdmVfc3VibW9kdWxlX21lcmdlCkBAIC0zODksNyArNDA2LDcgQEAKIAogbWFpbiAoKSB7CiAJcHJvbXB0PSQoZ2l0IGNvbmZpZyAtLWJvb2wgbWVyZ2V0b29sLnByb21wdCkKLQlndWlfdG9vbD1mYWxzZQorCUdJVF9NRVJHRVRPT0xfR1VJPWZhbHNlCiAJZ3Vlc3NlZF9tZXJnZV90b29sPWZhbHNlCiAJb3JkZXJmaWxlPQogCkBAIC00MDYsNyArNDIzLDcgQEAKIAkJLXR8LS10b29sKikKIAkJCWNhc2UgIiQjLCQxIiBpbgogCQkJKiwqPSopCi0JCQkJbWVyZ2VfdG9vbD0kKGV4cHIgInokMSIgOiAnei1bXj1dKj1cKC4qXCknKQorCQkJCW1lcmdlX3Rvb2w9JHsxIyo9fQogCQkJCTs7CiAJCQkxLCopCiAJCQkJdXNhZ2UgOzsKQEAgLTQxNiwxMCArNDMzLDEwIEBACiAJCQllc2FjCiAJCQk7OwogCQktLW5vLWd1aSkKLQkJCWd1aV90b29sPWZhbHNlCisJCQlHSVRfTUVSR0VUT09MX0dVST1mYWxzZQogCQkJOzsKIAkJLWd8LS1ndWkpCi0JCQlndWlfdG9vbD10cnVlCisJCQlHSVRfTUVSR0VUT09MX0dVST10cnVlCiAJCQk7OwogCQkteXwtLW5vLXByb21wdCkKIAkJCXByb21wdD1mYWxzZQpAQCAtNDQ5LDEyICs0NjYsOCBAQAogCiAJaWYgdGVzdCAteiAiJG1lcmdlX3Rvb2wiCiAJdGhlbgotCQkjIENoZWNrIGlmIGEgbWVyZ2UgdG9vbCBoYXMgYmVlbiBjb25maWd1cmVkCi0JCW1lcmdlX3Rvb2w9JChnZXRfY29uZmlndXJlZF9tZXJnZV90b29sICRndWlfdG9vbCkKLQkJIyBUcnkgdG8gZ3Vlc3MgYW4gYXBwcm9wcmlhdGUgbWVyZ2UgdG9vbCBpZiBubyB0b29sIGhhcyBiZWVuIHNldC4KLQkJaWYgdGVzdCAteiAiJG1lcmdlX3Rvb2wiCisJCWlmICEgbWVyZ2VfdG9vbD0kKGdldF9tZXJnZV90b29sKQogCQl0aGVuCi0JCQltZXJnZV90b29sPSQoZ3Vlc3NfbWVyZ2VfdG9vbCkgfHwgZXhpdAogCQkJZ3Vlc3NlZF9tZXJnZV90b29sPXRydWUKIAkJZmkKIAlmaQpkaWZmIC0tZ2l0IGEvZ2l0LXA0LnB5IGIvZ2l0LXA0LnB5CmluZGV4IDE5OThjM2UuLjFmZTAzY2QgMTAwNzU1Ci0tLSBhL2dpdC1wNC5weQorKysgYi9naXQtcDQucHkKQEAgLTcsMTMgKzcsMjEgQEAKICMgICAgICAgICAgICAyMDA3IFRyb2xsdGVjaCBBU0EKICMgTGljZW5zZTogTUlUIDxodHRwOi8vd3d3Lm9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL21pdC1saWNlbnNlLnBocD4KICMKKyMgcHlsaW50OiBkaXNhYmxlPWludmFsaWQtbmFtZSxtaXNzaW5nLWRvY3N0cmluZyx0b28tbWFueS1hcmd1bWVudHMsYnJvYWQtZXhjZXB0CisjIHB5bGludDogZGlzYWJsZT1uby1zZWxmLXVzZSx3cm9uZy1pbXBvcnQtcG9zaXRpb24sY29uc2lkZXItaXRlcmF0aW5nLWRpY3Rpb25hcnkKKyMgcHlsaW50OiBkaXNhYmxlPXdyb25nLWltcG9ydC1vcmRlcix1bnVzZWQtaW1wb3J0LHRvby1mZXctcHVibGljLW1ldGhvZHMKKyMgcHlsaW50OiBkaXNhYmxlPXRvby1tYW55LWxpbmVzLHVuZ3JvdXBlZC1pbXBvcnRzLGZpeG1lLHRvby1tYW55LWxvY2FscworIyBweWxpbnQ6IGRpc2FibGU9bGluZS10b28tbG9uZyxiYWQtd2hpdGVzcGFjZSxzdXBlcmZsdW91cy1wYXJlbnMKKyMgcHlsaW50OiBkaXNhYmxlPXRvby1tYW55LXN0YXRlbWVudHMsdG9vLW1hbnktaW5zdGFuY2UtYXR0cmlidXRlcworIyBweWxpbnQ6IGRpc2FibGU9dG9vLW1hbnktYnJhbmNoZXMsdG9vLW1hbnktbmVzdGVkLWJsb2NrcworIwogaW1wb3J0IHN5cwotaWYgc3lzLmhleHZlcnNpb24gPCAweDAyMDQwMDAwOgotICAgICMgVGhlIGxpbWl0ZXIgaXMgdGhlIHN1YnByb2Nlc3MgbW9kdWxlCi0gICAgc3lzLnN0ZGVyci53cml0ZSgiZ2l0LXA0OiByZXF1aXJlcyBQeXRob24gMi40IG9yIGxhdGVyLlxuIikKK2lmIHN5cy52ZXJzaW9uX2luZm8ubWFqb3IgPCAzIGFuZCBzeXMudmVyc2lvbl9pbmZvLm1pbm9yIDwgNzoKKyAgICBzeXMuc3RkZXJyLndyaXRlKCJnaXQtcDQ6IHJlcXVpcmVzIFB5dGhvbiAyLjcgb3IgbGF0ZXIuXG4iKQogICAgIHN5cy5leGl0KDEpCiBpbXBvcnQgb3MKIGltcG9ydCBvcHRwYXJzZQoraW1wb3J0IGZ1bmN0b29scwogaW1wb3J0IG1hcnNoYWwKIGltcG9ydCBzdWJwcm9jZXNzCiBpbXBvcnQgdGVtcGZpbGUKQEAgLTI3LDM2ICszNSwxNSBAQAogaW1wb3J0IGN0eXBlcwogaW1wb3J0IGVycm5vCiAKKyMgT24gcHl0aG9uMi43IHdoZXJlIHJhd19pbnB1dCgpIGFuZCBpbnB1dCgpIGFyZSBib3RoIGF2YWlsYmxlLAorIyB3ZSB3YW50IHJhd19pbnB1dCdzIHNlbWFudGljcywgYnV0IGFsaWFzZWQgdG8gaW5wdXQgZm9yIHB5dGhvbjMKKyMgY29tcGF0aWJpbGl0eQogIyBzdXBwb3J0IGJhc2VzdHJpbmcgaW4gcHl0aG9uMwogdHJ5OgotICAgIHVuaWNvZGUgPSB1bmljb2RlCi1leGNlcHQgTmFtZUVycm9yOgotICAgICMgJ3VuaWNvZGUnIGlzIHVuZGVmaW5lZCwgbXVzdCBiZSBQeXRob24gMwotICAgIHN0ciA9IHN0cgotICAgIHVuaWNvZGUgPSBzdHIKLSAgICBieXRlcyA9IGJ5dGVzCi0gICAgYmFzZXN0cmluZyA9IChzdHIsYnl0ZXMpCi1lbHNlOgotICAgICMgJ3VuaWNvZGUnIGV4aXN0cywgbXVzdCBiZSBQeXRob24gMgotICAgIHN0ciA9IHN0cgotICAgIHVuaWNvZGUgPSB1bmljb2RlCi0gICAgYnl0ZXMgPSBzdHIKLSAgICBiYXNlc3RyaW5nID0gYmFzZXN0cmluZwotCi10cnk6Ci0gICAgZnJvbSBzdWJwcm9jZXNzIGltcG9ydCBDYWxsZWRQcm9jZXNzRXJyb3IKLWV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICAjIGZyb20gcHl0aG9uMi43OnN1YnByb2Nlc3MucHkKLSAgICAjIEV4Y2VwdGlvbiBjbGFzc2VzIHVzZWQgYnkgdGhpcyBtb2R1bGUuCi0gICAgY2xhc3MgQ2FsbGVkUHJvY2Vzc0Vycm9yKEV4Y2VwdGlvbik6Ci0gICAgICAgICIiIlRoaXMgZXhjZXB0aW9uIGlzIHJhaXNlZCB3aGVuIGEgcHJvY2VzcyBydW4gYnkgY2hlY2tfY2FsbCgpIHJldHVybnMKLSAgICAgICAgYSBub24temVybyBleGl0IHN0YXR1cy4gIFRoZSBleGl0IHN0YXR1cyB3aWxsIGJlIHN0b3JlZCBpbiB0aGUKLSAgICAgICAgcmV0dXJuY29kZSBhdHRyaWJ1dGUuIiIiCi0gICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCByZXR1cm5jb2RlLCBjbWQpOgotICAgICAgICAgICAgc2VsZi5yZXR1cm5jb2RlID0gcmV0dXJuY29kZQotICAgICAgICAgICAgc2VsZi5jbWQgPSBjbWQKLSAgICAgICAgZGVmIF9fc3RyX18oc2VsZik6Ci0gICAgICAgICAgICByZXR1cm4gIkNvbW1hbmQgJyVzJyByZXR1cm5lZCBub24temVybyBleGl0IHN0YXR1cyAlZCIgJSAoc2VsZi5jbWQsIHNlbGYucmV0dXJuY29kZSkKKyAgICBpZiByYXdfaW5wdXQgYW5kIGlucHV0OgorICAgICAgICBpbnB1dCA9IHJhd19pbnB1dAorZXhjZXB0OgorICAgIHBhc3MKIAogdmVyYm9zZSA9IEZhbHNlCiAKQEAgLTEwNSw3ICs5Miw3IEBACiAgICAgICAgICMgUHJvdmlkZSBhIHdheSB0byBub3QgcGFzcyB0aGlzIG9wdGlvbiBieSBzZXR0aW5nIGdpdC1wNC5yZXRyaWVzIHRvIDAKICAgICAgICAgcmVhbF9jbWQgKz0gWyItciIsIHN0cihyZXRyaWVzKV0KIAotICAgIGlmIGlzaW5zdGFuY2UoY21kLGJhc2VzdHJpbmcpOgorICAgIGlmIG5vdCBpc2luc3RhbmNlKGNtZCwgbGlzdCk6CiAgICAgICAgIHJlYWxfY21kID0gJyAnLmpvaW4ocmVhbF9jbWQpICsgJyAnICsgY21kCiAgICAgZWxzZToKICAgICAgICAgcmVhbF9jbWQgKz0gY21kCkBAIC0xNjEsMTcgKzE0OCw2NSBAQAogICAgICAgICByZXR1cm4gc3QuZl9iYXZhaWwgKiBzdC5mX2Zyc2l6ZQogCiBkZWYgZGllKG1zZyk6CisgICAgIiIiIFRlcm1pbmF0ZSBleGVjdXRpb24uIE1ha2Ugc3VyZSB0aGF0IGFueSBydW5uaW5nIGNoaWxkIHByb2Nlc3NlcyBoYXZlIGJlZW4gd2FpdCgpZWQgZm9yIGJlZm9yZQorICAgICAgICBjYWxsaW5nIHRoaXMuCisgICAgIiIiCiAgICAgaWYgdmVyYm9zZToKICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKG1zZykKICAgICBlbHNlOgogICAgICAgICBzeXMuc3RkZXJyLndyaXRlKG1zZyArICJcbiIpCiAgICAgICAgIHN5cy5leGl0KDEpCiAKK2RlZiBwcm9tcHQocHJvbXB0X3RleHQpOgorICAgICIiIiBQcm9tcHQgdGhlIHVzZXIgdG8gY2hvb3NlIG9uZSBvZiB0aGUgY2hvaWNlcworCisgICAgQ2hvaWNlcyBhcmUgaWRlbnRpZmllZCBpbiB0aGUgcHJvbXB0X3RleHQgYnkgc3F1YXJlIGJyYWNrZXRzIGFyb3VuZAorICAgIGEgc2luZ2xlIGxldHRlciBvcHRpb24uCisgICAgIiIiCisgICAgY2hvaWNlcyA9IHNldChtLmdyb3VwKDEpIGZvciBtIGluIHJlLmZpbmRpdGVyKHIiXFsoLilcXSIsIHByb21wdF90ZXh0KSkKKyAgICB3aGlsZSBUcnVlOgorICAgICAgICByZXNwb25zZSA9IGlucHV0KHByb21wdF90ZXh0KS5zdHJpcCgpLmxvd2VyKCkKKyAgICAgICAgaWYgbm90IHJlc3BvbnNlOgorICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgcmVzcG9uc2UgPSByZXNwb25zZVswXQorICAgICAgICBpZiByZXNwb25zZSBpbiBjaG9pY2VzOgorICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlCisKKyMgV2UgbmVlZCBkaWZmZXJlbnQgZW5jb2RpbmcvZGVjb2Rpbmcgc3RyYXRlZ2llcyBmb3IgdGV4dCBkYXRhIGJlaW5nIHBhc3NlZAorIyBhcm91bmQgaW4gcGlwZXMgZGVwZW5kaW5nIG9uIHB5dGhvbiB2ZXJzaW9uCitpZiBieXRlcyBpcyBub3Qgc3RyOgorICAgICMgRm9yIHB5dGhvbjMsIGFsd2F5cyBlbmNvZGUgYW5kIGRlY29kZSBhcyBhcHByb3ByaWF0ZQorICAgIGRlZiBkZWNvZGVfdGV4dF9zdHJlYW0ocyk6CisgICAgICAgIHJldHVybiBzLmRlY29kZSgpIGlmIGlzaW5zdGFuY2UocywgYnl0ZXMpIGVsc2UgcworICAgIGRlZiBlbmNvZGVfdGV4dF9zdHJlYW0ocyk6CisgICAgICAgIHJldHVybiBzLmVuY29kZSgpIGlmIGlzaW5zdGFuY2Uocywgc3RyKSBlbHNlIHMKK2Vsc2U6CisgICAgIyBGb3IgcHl0aG9uMi43LCBwYXNzIHJlYWQgc3RyaW5ncyBhcy1pcywgYnV0IGFsc28gYWxsb3cgd3JpdGluZyB1bmljb2RlCisgICAgZGVmIGRlY29kZV90ZXh0X3N0cmVhbShzKToKKyAgICAgICAgcmV0dXJuIHMKKyAgICBkZWYgZW5jb2RlX3RleHRfc3RyZWFtKHMpOgorICAgICAgICByZXR1cm4gcy5lbmNvZGUoJ3V0Zl84JykgaWYgaXNpbnN0YW5jZShzLCB1bmljb2RlKSBlbHNlIHMKKworZGVmIGRlY29kZV9wYXRoKHBhdGgpOgorICAgICIiIkRlY29kZSBhIGdpdmVuIHN0cmluZyAoYnl0ZXMgb3Igb3RoZXJ3aXNlKSB1c2luZyBjb25maWd1cmVkIHBhdGggZW5jb2Rpbmcgb3B0aW9ucworICAgICIiIgorICAgIGVuY29kaW5nID0gZ2l0Q29uZmlnKCdnaXQtcDQucGF0aEVuY29kaW5nJykgb3IgJ3V0Zl84JworICAgIGlmIGJ5dGVzIGlzIG5vdCBzdHI6CisgICAgICAgIHJldHVybiBwYXRoLmRlY29kZShlbmNvZGluZywgZXJyb3JzPSdyZXBsYWNlJykgaWYgaXNpbnN0YW5jZShwYXRoLCBieXRlcykgZWxzZSBwYXRoCisgICAgZWxzZToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcGF0aC5kZWNvZGUoJ2FzY2lpJykKKyAgICAgICAgZXhjZXB0OgorICAgICAgICAgICAgcGF0aCA9IHBhdGguZGVjb2RlKGVuY29kaW5nLCBlcnJvcnM9J3JlcGxhY2UnKQorICAgICAgICAgICAgaWYgdmVyYm9zZToKKyAgICAgICAgICAgICAgICBwcmludCgnUGF0aCB3aXRoIG5vbi1BU0NJSSBjaGFyYWN0ZXJzIGRldGVjdGVkLiBVc2VkIHt9IHRvIGRlY29kZToge30nLmZvcm1hdChlbmNvZGluZywgcGF0aCkpCisgICAgICAgIHJldHVybiBwYXRoCisKIGRlZiB3cml0ZV9waXBlKGMsIHN0ZGluKToKICAgICBpZiB2ZXJib3NlOgogICAgICAgICBzeXMuc3RkZXJyLndyaXRlKCdXcml0aW5nIHBpcGU6ICVzXG4nICUgc3RyKGMpKQogCi0gICAgZXhwYW5kID0gaXNpbnN0YW5jZShjLGJhc2VzdHJpbmcpCisgICAgZXhwYW5kID0gbm90IGlzaW5zdGFuY2UoYywgbGlzdCkKICAgICBwID0gc3VicHJvY2Vzcy5Qb3BlbihjLCBzdGRpbj1zdWJwcm9jZXNzLlBJUEUsIHNoZWxsPWV4cGFuZCkKICAgICBwaXBlID0gcC5zdGRpbgogICAgIHZhbCA9IHBpcGUud3JpdGUoc3RkaW4pCkBAIC0xODMsNiArMjE4LDggQEAKIAogZGVmIHA0X3dyaXRlX3BpcGUoYywgc3RkaW4pOgogICAgIHJlYWxfY21kID0gcDRfYnVpbGRfY21kKGMpCisgICAgaWYgYnl0ZXMgaXMgbm90IHN0ciBhbmQgaXNpbnN0YW5jZShzdGRpbiwgc3RyKToKKyAgICAgICAgc3RkaW4gPSBlbmNvZGVfdGV4dF9zdHJlYW0oc3RkaW4pCiAgICAgcmV0dXJuIHdyaXRlX3BpcGUocmVhbF9jbWQsIHN0ZGluKQogCiBkZWYgcmVhZF9waXBlX2Z1bGwoYyk6CkBAIC0xOTMsMTUgKzIzMCwxNyBAQAogICAgIGlmIHZlcmJvc2U6CiAgICAgICAgIHN5cy5zdGRlcnIud3JpdGUoJ1JlYWRpbmcgcGlwZTogJXNcbicgJSBzdHIoYykpCiAKLSAgICBleHBhbmQgPSBpc2luc3RhbmNlKGMsYmFzZXN0cmluZykKKyAgICBleHBhbmQgPSBub3QgaXNpbnN0YW5jZShjLCBsaXN0KQogICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKGMsIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUsIHN0ZGVycj1zdWJwcm9jZXNzLlBJUEUsIHNoZWxsPWV4cGFuZCkKICAgICAob3V0LCBlcnIpID0gcC5jb21tdW5pY2F0ZSgpCi0gICAgcmV0dXJuIChwLnJldHVybmNvZGUsIG91dCwgZXJyKQorICAgIHJldHVybiAocC5yZXR1cm5jb2RlLCBvdXQsIGRlY29kZV90ZXh0X3N0cmVhbShlcnIpKQogCi1kZWYgcmVhZF9waXBlKGMsIGlnbm9yZV9lcnJvcj1GYWxzZSk6CitkZWYgcmVhZF9waXBlKGMsIGlnbm9yZV9lcnJvcj1GYWxzZSwgcmF3PUZhbHNlKToKICAgICAiIiIgUmVhZCBvdXRwdXQgZnJvbSAgY29tbWFuZC4gUmV0dXJucyB0aGUgb3V0cHV0IHRleHQgb24KICAgICAgICAgc3VjY2Vzcy4gT24gZmFpbHVyZSwgdGVybWluYXRlcyBleGVjdXRpb24sIHVubGVzcwogICAgICAgICBpZ25vcmVfZXJyb3IgaXMgVHJ1ZSwgd2hlbiBpdCByZXR1cm5zIGFuIGVtcHR5IHN0cmluZy4KKworICAgICAgICBJZiByYXcgaXMgVHJ1ZSwgZG8gbm90IGF0dGVtcHQgdG8gZGVjb2RlIG91dHB1dCB0ZXh0LgogICAgICIiIgogICAgIChyZXRjb2RlLCBvdXQsIGVycikgPSByZWFkX3BpcGVfZnVsbChjKQogICAgIGlmIHJldGNvZGUgIT0gMDoKQEAgLTIwOSw2ICsyNDgsOCBAQAogICAgICAgICAgICAgb3V0ID0gIiIKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIGRpZSgnQ29tbWFuZCBmYWlsZWQ6ICVzXG5FcnJvcjogJXMnICUgKHN0cihjKSwgZXJyKSkKKyAgICBpZiBub3QgcmF3OgorICAgICAgICBvdXQgPSBkZWNvZGVfdGV4dF9zdHJlYW0ob3V0KQogICAgIHJldHVybiBvdXQKIAogZGVmIHJlYWRfcGlwZV90ZXh0KGMpOgpAQCAtMjE5LDIzICsyNjAsMjIgQEAKICAgICBpZiByZXRjb2RlICE9IDA6CiAgICAgICAgIHJldHVybiBOb25lCiAgICAgZWxzZToKLSAgICAgICAgcmV0dXJuIG91dC5yc3RyaXAoKQorICAgICAgICByZXR1cm4gZGVjb2RlX3RleHRfc3RyZWFtKG91dCkucnN0cmlwKCkKIAotZGVmIHA0X3JlYWRfcGlwZShjLCBpZ25vcmVfZXJyb3I9RmFsc2UpOgorZGVmIHA0X3JlYWRfcGlwZShjLCBpZ25vcmVfZXJyb3I9RmFsc2UsIHJhdz1GYWxzZSk6CiAgICAgcmVhbF9jbWQgPSBwNF9idWlsZF9jbWQoYykKLSAgICByZXR1cm4gcmVhZF9waXBlKHJlYWxfY21kLCBpZ25vcmVfZXJyb3IpCisgICAgcmV0dXJuIHJlYWRfcGlwZShyZWFsX2NtZCwgaWdub3JlX2Vycm9yLCByYXc9cmF3KQogCiBkZWYgcmVhZF9waXBlX2xpbmVzKGMpOgogICAgIGlmIHZlcmJvc2U6CiAgICAgICAgIHN5cy5zdGRlcnIud3JpdGUoJ1JlYWRpbmcgcGlwZTogJXNcbicgJSBzdHIoYykpCiAKLSAgICBleHBhbmQgPSBpc2luc3RhbmNlKGMsIGJhc2VzdHJpbmcpCisgICAgZXhwYW5kID0gbm90IGlzaW5zdGFuY2UoYywgbGlzdCkKICAgICBwID0gc3VicHJvY2Vzcy5Qb3BlbihjLCBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFLCBzaGVsbD1leHBhbmQpCiAgICAgcGlwZSA9IHAuc3Rkb3V0Ci0gICAgdmFsID0gcGlwZS5yZWFkbGluZXMoKQorICAgIHZhbCA9IFtkZWNvZGVfdGV4dF9zdHJlYW0obGluZSkgZm9yIGxpbmUgaW4gcGlwZS5yZWFkbGluZXMoKV0KICAgICBpZiBwaXBlLmNsb3NlKCkgb3IgcC53YWl0KCk6CiAgICAgICAgIGRpZSgnQ29tbWFuZCBmYWlsZWQ6ICVzJyAlIHN0cihjKSkKLQogICAgIHJldHVybiB2YWwKIAogZGVmIHA0X3JlYWRfcGlwZV9saW5lcyhjKToKQEAgLTI2Myw2ICszMDMsNyBAQAogICAgIGNtZCA9IHA0X2J1aWxkX2NtZChbIm1vdmUiLCAiLWsiLCAiQGZyb20iLCAiQHRvIl0pCiAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oY21kLCBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFLCBzdGRlcnI9c3VicHJvY2Vzcy5QSVBFKQogICAgIChvdXQsIGVycikgPSBwLmNvbW11bmljYXRlKCkKKyAgICBlcnIgPSBkZWNvZGVfdGV4dF9zdHJlYW0oZXJyKQogICAgICMgcmV0dXJuIGNvZGUgd2lsbCBiZSAxIGluIGVpdGhlciBjYXNlCiAgICAgaWYgZXJyLmZpbmQoIkludmFsaWQgb3B0aW9uIikgPj0gMDoKICAgICAgICAgcmV0dXJuIEZhbHNlCkBAIC0yNzIsNyArMzEzLDcgQEAKICAgICByZXR1cm4gVHJ1ZQogCiBkZWYgc3lzdGVtKGNtZCwgaWdub3JlX2Vycm9yPUZhbHNlKToKLSAgICBleHBhbmQgPSBpc2luc3RhbmNlKGNtZCxiYXNlc3RyaW5nKQorICAgIGV4cGFuZCA9IG5vdCBpc2luc3RhbmNlKGNtZCwgbGlzdCkKICAgICBpZiB2ZXJib3NlOgogICAgICAgICBzeXMuc3RkZXJyLndyaXRlKCJleGVjdXRpbmcgJXNcbiIgJSBzdHIoY21kKSkKICAgICByZXRjb2RlID0gc3VicHJvY2Vzcy5jYWxsKGNtZCwgc2hlbGw9ZXhwYW5kKQpAQCAtMjg0LDcgKzMyNSw3IEBACiBkZWYgcDRfc3lzdGVtKGNtZCk6CiAgICAgIiIiU3BlY2lmaWNhbGx5IGludm9rZSBwNCBhcyB0aGUgc3lzdGVtIGNvbW1hbmQuICIiIgogICAgIHJlYWxfY21kID0gcDRfYnVpbGRfY21kKGNtZCkKLSAgICBleHBhbmQgPSBpc2luc3RhbmNlKHJlYWxfY21kLCBiYXNlc3RyaW5nKQorICAgIGV4cGFuZCA9IG5vdCBpc2luc3RhbmNlKHJlYWxfY21kLCBsaXN0KQogICAgIHJldGNvZGUgPSBzdWJwcm9jZXNzLmNhbGwocmVhbF9jbWQsIHNoZWxsPWV4cGFuZCkKICAgICBpZiByZXRjb2RlOgogICAgICAgICByYWlzZSBDYWxsZWRQcm9jZXNzRXJyb3IocmV0Y29kZSwgcmVhbF9jbWQpCkBAIC0zMzIsNiArMzczLDggQEAKICAgICAgICAgICAgIGRpZV9iYWRfYWNjZXNzKCJwNCBlcnJvcjogezB9Ii5mb3JtYXQoZGF0YSkpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBkaWVfYmFkX2FjY2VzcygidW5rbm93biBlcnJvciIpCisgICAgZWxpZiBjb2RlID09ICJpbmZvIjoKKyAgICAgICAgcmV0dXJuCiAgICAgZWxzZToKICAgICAgICAgZGllX2JhZF9hY2Nlc3MoInVua25vd24gZXJyb3IgY29kZSB7MH0iLmZvcm1hdChjb2RlKSkKIApAQCAtNTIwLDcgKzU2Myw3IEBACiAjIFJldHVybiB0aGUgc2V0IG9mIGFsbCBwNCBsYWJlbHMKIGRlZiBnZXRQNExhYmVscyhkZXBvdFBhdGhzKToKICAgICBsYWJlbHMgPSBzZXQoKQotICAgIGlmIGlzaW5zdGFuY2UoZGVwb3RQYXRocyxiYXNlc3RyaW5nKToKKyAgICBpZiBub3QgaXNpbnN0YW5jZShkZXBvdFBhdGhzLCBsaXN0KToKICAgICAgICAgZGVwb3RQYXRocyA9IFtkZXBvdFBhdGhzXQogCiAgICAgZm9yIGwgaW4gcDRDbWRMaXN0KFsibGFiZWxzIl0gKyBbIiVzLi4uIiAlIHAgZm9yIHAgaW4gZGVwb3RQYXRoc10pOgpAQCAtNTM3LDEyICs1ODAsNyBAQAogICAgICAgICBnaXRUYWdzLmFkZCh0YWcpCiAgICAgcmV0dXJuIGdpdFRhZ3MKIAotZGVmIGRpZmZUcmVlUGF0dGVybigpOgotICAgICMgVGhpcyBpcyBhIHNpbXBsZSBnZW5lcmF0b3IgZm9yIHRoZSBkaWZmIHRyZWUgcmVnZXggcGF0dGVybi4gVGhpcyBjb3VsZCBiZQotICAgICMgYSBjbGFzcyB2YXJpYWJsZSBpZiB0aGlzIGFuZCBwYXJzZURpZmZUcmVlRW50cnkgd2VyZSBhIHBhcnQgb2YgYSBjbGFzcy4KLSAgICBwYXR0ZXJuID0gcmUuY29tcGlsZSgnOihcZCspIChcZCspIChcdyspIChcdyspIChbQS1aXSkoXGQrKT9cdCguKj8pKChcdCguKikpfCQpJykKLSAgICB3aGlsZSBUcnVlOgotICAgICAgICB5aWVsZCBwYXR0ZXJuCitfZGlmZl90cmVlX3BhdHRlcm4gPSBOb25lCiAKIGRlZiBwYXJzZURpZmZUcmVlRW50cnkoZW50cnkpOgogICAgICIiIlBhcnNlcyBhIHNpbmdsZSBkaWZmIHRyZWUgZW50cnkgaW50byBpdHMgY29tcG9uZW50IGVsZW1lbnRzLgpAQCAtNTYzLDcgKzYwMSwxMSBAQAogCiAgICAgSWYgdGhlIHBhdHRlcm4gaXMgbm90IG1hdGNoZWQsIE5vbmUgaXMgcmV0dXJuZWQuIiIiCiAKLSAgICBtYXRjaCA9IGRpZmZUcmVlUGF0dGVybigpLm5leHQoKS5tYXRjaChlbnRyeSkKKyAgICBnbG9iYWwgX2RpZmZfdHJlZV9wYXR0ZXJuCisgICAgaWYgbm90IF9kaWZmX3RyZWVfcGF0dGVybjoKKyAgICAgICAgX2RpZmZfdHJlZV9wYXR0ZXJuID0gcmUuY29tcGlsZSgnOihcZCspIChcZCspIChcdyspIChcdyspIChbQS1aXSkoXGQrKT9cdCguKj8pKChcdCguKikpfCQpJykKKworICAgIG1hdGNoID0gX2RpZmZfdHJlZV9wYXR0ZXJuLm1hdGNoKGVudHJ5KQogICAgIGlmIG1hdGNoOgogICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgJ3NyY19tb2RlJzogbWF0Y2guZ3JvdXAoMSksCkBAIC02MDEsMTMgKzY0MywyMSBAQAogICAgICAgICBzdXBlcihQNFJlcXVlc3RTaXplRXhjZXB0aW9uLCBzZWxmKS5fX2luaXRfXyhleGl0X2NvZGUsIHA0X3Jlc3VsdCkKICAgICAgICAgc2VsZi5saW1pdCA9IGxpbWl0CiAKK2NsYXNzIFA0Q29tbWFuZEV4Y2VwdGlvbihQNEV4Y2VwdGlvbik6CisgICAgIiIiIFNvbWV0aGluZyB3ZW50IHdyb25nIGNhbGxpbmcgcDQgd2hpY2ggbWVhbnMgd2UgaGF2ZSB0byBnaXZlIHVwICIiIgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBtc2cpOgorICAgICAgICBzZWxmLm1zZyA9IG1zZworCisgICAgZGVmIF9fc3RyX18oc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLm1zZworCiBkZWYgaXNNb2RlRXhlY0NoYW5nZWQoc3JjX21vZGUsIGRzdF9tb2RlKToKICAgICByZXR1cm4gaXNNb2RlRXhlYyhzcmNfbW9kZSkgIT0gaXNNb2RlRXhlYyhkc3RfbW9kZSkKIAogZGVmIHA0Q21kTGlzdChjbWQsIHN0ZGluPU5vbmUsIHN0ZGluX21vZGU9J3crYicsIGNiPU5vbmUsIHNraXBfaW5mbz1GYWxzZSwKICAgICAgICAgZXJyb3JzX2FzX2V4Y2VwdGlvbnM9RmFsc2UpOgogCi0gICAgaWYgaXNpbnN0YW5jZShjbWQsYmFzZXN0cmluZyk6CisgICAgaWYgbm90IGlzaW5zdGFuY2UoY21kLCBsaXN0KToKICAgICAgICAgY21kID0gIi1HICIgKyBjbWQKICAgICAgICAgZXhwYW5kID0gVHJ1ZQogICAgIGVsc2U6CkBAIC02MjQsMTEgKzY3NCwxMiBAQAogICAgIHN0ZGluX2ZpbGUgPSBOb25lCiAgICAgaWYgc3RkaW4gaXMgbm90IE5vbmU6CiAgICAgICAgIHN0ZGluX2ZpbGUgPSB0ZW1wZmlsZS5UZW1wb3JhcnlGaWxlKHByZWZpeD0ncDQtc3RkaW4nLCBtb2RlPXN0ZGluX21vZGUpCi0gICAgICAgIGlmIGlzaW5zdGFuY2Uoc3RkaW4sYmFzZXN0cmluZyk6CisgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKHN0ZGluLCBsaXN0KToKICAgICAgICAgICAgIHN0ZGluX2ZpbGUud3JpdGUoc3RkaW4pCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBmb3IgaSBpbiBzdGRpbjoKLSAgICAgICAgICAgICAgICBzdGRpbl9maWxlLndyaXRlKGkgKyAnXG4nKQorICAgICAgICAgICAgICAgIHN0ZGluX2ZpbGUud3JpdGUoZW5jb2RlX3RleHRfc3RyZWFtKGkpKQorICAgICAgICAgICAgICAgIHN0ZGluX2ZpbGUud3JpdGUoYidcbicpCiAgICAgICAgIHN0ZGluX2ZpbGUuZmx1c2goKQogICAgICAgICBzdGRpbl9maWxlLnNlZWsoMCkKIApAQCAtNjQxLDYgKzY5MiwyMCBAQAogICAgIHRyeToKICAgICAgICAgd2hpbGUgVHJ1ZToKICAgICAgICAgICAgIGVudHJ5ID0gbWFyc2hhbC5sb2FkKHA0LnN0ZG91dCkKKyAgICAgICAgICAgIGlmIGJ5dGVzIGlzIG5vdCBzdHI6CisgICAgICAgICAgICAgICAgIyBEZWNvZGUgdW5tYXJzaGFsbGVkIGRpY3QgdG8gdXNlIHN0ciBrZXlzIGFuZCB2YWx1ZXMsIGV4Y2VwdCBmb3I6CisgICAgICAgICAgICAgICAgIyAgIC0gYGRhdGFgIHdoaWNoIG1heSBjb250YWluIGFyYml0cmFyeSBiaW5hcnkgZGF0YQorICAgICAgICAgICAgICAgICMgICAtIGBkZXBvdEZpbGVbMC05XSpgLCBgcGF0aGAsIG9yIGBjbGllbnRGaWxlYCB3aGljaCBtYXkgY29udGFpbiBub24tVVRGOCBlbmNvZGVkIHRleHQKKyAgICAgICAgICAgICAgICBkZWNvZGVkX2VudHJ5ID0ge30KKyAgICAgICAgICAgICAgICBmb3Iga2V5LCB2YWx1ZSBpbiBlbnRyeS5pdGVtcygpOgorICAgICAgICAgICAgICAgICAgICBrZXkgPSBrZXkuZGVjb2RlKCkKKyAgICAgICAgICAgICAgICAgICAgaWYgaXNpbnN0YW5jZSh2YWx1ZSwgYnl0ZXMpIGFuZCBub3QgKGtleSBpbiAoJ2RhdGEnLCAncGF0aCcsICdjbGllbnRGaWxlJykgb3Iga2V5LnN0YXJ0c3dpdGgoJ2RlcG90RmlsZScpKToKKyAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlID0gdmFsdWUuZGVjb2RlKCkKKyAgICAgICAgICAgICAgICAgICAgZGVjb2RlZF9lbnRyeVtrZXldID0gdmFsdWUKKyAgICAgICAgICAgICAgICAjIFBhcnNlIG91dCBkYXRhIGlmIGl0J3MgYW4gZXJyb3IgcmVzcG9uc2UKKyAgICAgICAgICAgICAgICBpZiBkZWNvZGVkX2VudHJ5LmdldCgnY29kZScpID09ICdlcnJvcicgYW5kICdkYXRhJyBpbiBkZWNvZGVkX2VudHJ5OgorICAgICAgICAgICAgICAgICAgICBkZWNvZGVkX2VudHJ5WydkYXRhJ10gPSBkZWNvZGVkX2VudHJ5WydkYXRhJ10uZGVjb2RlKCkKKyAgICAgICAgICAgICAgICBlbnRyeSA9IGRlY29kZWRfZW50cnkKICAgICAgICAgICAgIGlmIHNraXBfaW5mbzoKICAgICAgICAgICAgICAgICBpZiAnY29kZScgaW4gZW50cnkgYW5kIGVudHJ5Wydjb2RlJ10gPT0gJ2luZm8nOgogICAgICAgICAgICAgICAgICAgICBjb250aW51ZQpAQCAtNjkxLDcgKzc1Niw4IEBACiAgICAgICAgIGlmICJkZXBvdEZpbGUiIGluIGVudHJ5OgogICAgICAgICAgICAgIyBTZWFyY2ggZm9yIHRoZSBiYXNlIGNsaWVudCBzaWRlIGRlcG90IHBhdGgsIGFzIGxvbmcgYXMgaXQgc3RhcnRzIHdpdGggdGhlIGJyYW5jaCdzIFA0IHBhdGguCiAgICAgICAgICAgICAjIFRoZSBiYXNlIHBhdGggYWx3YXlzIGVuZHMgd2l0aCAiLy4uLiIuCi0gICAgICAgICAgICBpZiBlbnRyeVsiZGVwb3RGaWxlIl0uZmluZChkZXBvdFBhdGgpID09IDAgYW5kIGVudHJ5WyJkZXBvdEZpbGUiXVstNDpdID09ICIvLi4uIjoKKyAgICAgICAgICAgIGVudHJ5X3BhdGggPSBkZWNvZGVfcGF0aChlbnRyeVsnZGVwb3RGaWxlJ10pCisgICAgICAgICAgICBpZiBlbnRyeV9wYXRoLmZpbmQoZGVwb3RQYXRoKSA9PSAwIGFuZCBlbnRyeV9wYXRoWy00Ol0gPT0gIi8uLi4iOgogICAgICAgICAgICAgICAgIG91dHB1dCA9IGVudHJ5CiAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgZWxpZiAiZGF0YSIgaW4gZW50cnk6CkBAIC03MDYsMTEgKzc3MiwxMSBAQAogICAgICAgICByZXR1cm4gIiIKICAgICBjbGllbnRQYXRoID0gIiIKICAgICBpZiAicGF0aCIgaW4gb3V0cHV0OgotICAgICAgICBjbGllbnRQYXRoID0gb3V0cHV0LmdldCgicGF0aCIpCisgICAgICAgIGNsaWVudFBhdGggPSBkZWNvZGVfcGF0aChvdXRwdXRbJ3BhdGgnXSkKICAgICBlbGlmICJkYXRhIiBpbiBvdXRwdXQ6CiAgICAgICAgIGRhdGEgPSBvdXRwdXQuZ2V0KCJkYXRhIikKLSAgICAgICAgbGFzdFNwYWNlID0gZGF0YS5yZmluZCgiICIpCi0gICAgICAgIGNsaWVudFBhdGggPSBkYXRhW2xhc3RTcGFjZSArIDE6XQorICAgICAgICBsYXN0U3BhY2UgPSBkYXRhLnJmaW5kKGIiICIpCisgICAgICAgIGNsaWVudFBhdGggPSBkZWNvZGVfcGF0aChkYXRhW2xhc3RTcGFjZSArIDE6XSkKIAogICAgIGlmIGNsaWVudFBhdGguZW5kc3dpdGgoIi4uLiIpOgogICAgICAgICBjbGllbnRQYXRoID0gY2xpZW50UGF0aFs6LTNdCkBAIC03MzUsNyArODAxLDcgQEAKIAogICAgICMjIGZpeG1lOiB0aXRsZSBpcyBmaXJzdCBsaW5lIG9mIGNvbW1pdCwgbm90IDFzdCBwYXJhZ3JhcGguCiAgICAgZm91bmRUaXRsZSA9IEZhbHNlCi0gICAgZm9yIGxvZyBpbiByZWFkX3BpcGVfbGluZXMoImdpdCBjYXQtZmlsZSBjb21taXQgJXMiICUgY29tbWl0KToKKyAgICBmb3IgbG9nIGluIHJlYWRfcGlwZV9saW5lcyhbImdpdCIsICJjYXQtZmlsZSIsICJjb21taXQiLCBjb21taXRdKToKICAgICAgICBpZiBub3QgZm91bmRUaXRsZToKICAgICAgICAgICAgaWYgbGVuKGxvZykgPT0gMToKICAgICAgICAgICAgICAgIGZvdW5kVGl0bGUgPSBUcnVlCkBAIC04NTgsNiArOTI0LDcgQEAKICAgICBjbWQgPSBbICJnaXQiLCAicmV2LXBhcnNlIiwgIi0tc3ltYm9saWMiLCAiLS12ZXJpZnkiLCBicmFuY2ggXQogICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKGNtZCwgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSwgc3RkZXJyPXN1YnByb2Nlc3MuUElQRSkKICAgICBvdXQsIF8gPSBwLmNvbW11bmljYXRlKCkKKyAgICBvdXQgPSBkZWNvZGVfdGV4dF9zdHJlYW0ob3V0KQogICAgIGlmIHAucmV0dXJuY29kZToKICAgICAgICAgcmV0dXJuIEZhbHNlCiAgICAgIyBleHBlY3QgZXhhY3RseSBvbmUgbGluZSBvZiBvdXRwdXQ6IHRoZSBicmFuY2ggbmFtZQpAQCAtMTEzNSw3ICsxMjAyLDcgQEAKICAgICAgICAgYXNzZXJ0IEZhbHNlLCAiTWV0aG9kICdwdXNoRmlsZScgcmVxdWlyZWQgaW4gIiArIHNlbGYuX19jbGFzc19fLl9fbmFtZV9fCiAKICAgICBkZWYgaGFzTGFyZ2VGaWxlRXh0ZW5zaW9uKHNlbGYsIHJlbFBhdGgpOgotICAgICAgICByZXR1cm4gcmVkdWNlKAorICAgICAgICByZXR1cm4gZnVuY3Rvb2xzLnJlZHVjZSgKICAgICAgICAgICAgIGxhbWJkYSBhLCBiOiBhIG9yIGIsCiAgICAgICAgICAgICBbcmVsUGF0aC5lbmRzd2l0aCgnLicgKyBlKSBmb3IgZSBpbiBnaXRDb25maWdMaXN0KCdnaXQtcDQubGFyZ2VGaWxlRXh0ZW5zaW9ucycpXSwKICAgICAgICAgICAgIEZhbHNlCkBAIC0xMTU4LDEzICsxMjI1LDExIEBACiAgICAgICAgICAgICBpZiBjb250ZW50c1NpemUgPD0gZ2l0Q29uZmlnSW50KCdnaXQtcDQubGFyZ2VGaWxlQ29tcHJlc3NlZFRocmVzaG9sZCcpOgogICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQogICAgICAgICAgICAgY29udGVudFRlbXBGaWxlID0gc2VsZi5nZW5lcmF0ZVRlbXBGaWxlKGNvbnRlbnRzKQotICAgICAgICAgICAgY29tcHJlc3NlZENvbnRlbnRGaWxlID0gdGVtcGZpbGUuTmFtZWRUZW1wb3JhcnlGaWxlKHByZWZpeD0nZ2l0LXA0LWxhcmdlLWZpbGUnLCBkZWxldGU9RmFsc2UpCi0gICAgICAgICAgICB6ZiA9IHppcGZpbGUuWmlwRmlsZShjb21wcmVzc2VkQ29udGVudEZpbGUubmFtZSwgbW9kZT0ndycpCi0gICAgICAgICAgICB6Zi53cml0ZShjb250ZW50VGVtcEZpbGUsIGNvbXByZXNzX3R5cGU9emlwZmlsZS5aSVBfREVGTEFURUQpCi0gICAgICAgICAgICB6Zi5jbG9zZSgpCi0gICAgICAgICAgICBjb21wcmVzc2VkQ29udGVudHNTaXplID0gemYuaW5mb2xpc3QoKVswXS5jb21wcmVzc19zaXplCisgICAgICAgICAgICBjb21wcmVzc2VkQ29udGVudEZpbGUgPSB0ZW1wZmlsZS5OYW1lZFRlbXBvcmFyeUZpbGUocHJlZml4PSdnaXQtcDQtbGFyZ2UtZmlsZScsIGRlbGV0ZT1UcnVlKQorICAgICAgICAgICAgd2l0aCB6aXBmaWxlLlppcEZpbGUoY29tcHJlc3NlZENvbnRlbnRGaWxlLCBtb2RlPSd3JykgYXMgemY6CisgICAgICAgICAgICAgICAgemYud3JpdGUoY29udGVudFRlbXBGaWxlLCBjb21wcmVzc190eXBlPXppcGZpbGUuWklQX0RFRkxBVEVEKQorICAgICAgICAgICAgICAgIGNvbXByZXNzZWRDb250ZW50c1NpemUgPSB6Zi5pbmZvbGlzdCgpWzBdLmNvbXByZXNzX3NpemUKICAgICAgICAgICAgIG9zLnJlbW92ZShjb250ZW50VGVtcEZpbGUpCi0gICAgICAgICAgICBvcy5yZW1vdmUoY29tcHJlc3NlZENvbnRlbnRGaWxlLm5hbWUpCiAgICAgICAgICAgICBpZiBjb21wcmVzc2VkQ29udGVudHNTaXplID4gZ2l0Q29uZmlnSW50KCdnaXQtcDQubGFyZ2VGaWxlQ29tcHJlc3NlZFRocmVzaG9sZCcpOgogICAgICAgICAgICAgICAgIHJldHVybiBUcnVlCiAgICAgICAgIHJldHVybiBGYWxzZQpAQCAtMTI0NCw3ICsxMzA5LDcgQEAKICAgICAgICAgICAgIFsnZ2l0JywgJ2xmcycsICdwb2ludGVyJywgJy0tZmlsZT0nICsgY29udGVudEZpbGVdLAogICAgICAgICAgICAgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRQogICAgICAgICApCi0gICAgICAgIHBvaW50ZXJGaWxlID0gcG9pbnRlclByb2Nlc3Muc3Rkb3V0LnJlYWQoKQorICAgICAgICBwb2ludGVyRmlsZSA9IGRlY29kZV90ZXh0X3N0cmVhbShwb2ludGVyUHJvY2Vzcy5zdGRvdXQucmVhZCgpKQogICAgICAgICBpZiBwb2ludGVyUHJvY2Vzcy53YWl0KCk6CiAgICAgICAgICAgICBvcy5yZW1vdmUoY29udGVudEZpbGUpCiAgICAgICAgICAgICBkaWUoJ2dpdC1sZnMgcG9pbnRlciBjb21tYW5kIGZhaWxlZC4gRGlkIHlvdSBpbnN0YWxsIHRoZSBleHRlbnNpb24/JykKQEAgLTEyNTcsOSArMTMyMiwxNSBAQAogICAgICAgICAgICAgcG9pbnRlckZpbGUgPSByZS5zdWIocidHaXQgTEZTIHBvaW50ZXIgZm9yLipcblxuJywgJycsIHBvaW50ZXJGaWxlKQogCiAgICAgICAgIG9pZCA9IHJlLnNlYXJjaChyJ15vaWQgXHcrOihcdyspJywgcG9pbnRlckZpbGUsIHJlLk1VTFRJTElORSkuZ3JvdXAoMSkKKyAgICAgICAgIyBpZiBzb21lb25lIHVzZSBleHRlcm5hbCBsZnMuc3RvcmFnZSAoIG5vdCBpbiBsb2NhbCByZXBvIGdpdCApCisgICAgICAgIGxmc19wYXRoID0gZ2l0Q29uZmlnKCdsZnMuc3RvcmFnZScpCisgICAgICAgIGlmIG5vdCBsZnNfcGF0aDoKKyAgICAgICAgICAgIGxmc19wYXRoID0gJ2xmcycKKyAgICAgICAgaWYgbm90IG9zLnBhdGguaXNhYnMobGZzX3BhdGgpOgorICAgICAgICAgICAgbGZzX3BhdGggPSBvcy5wYXRoLmpvaW4ob3MuZ2V0Y3dkKCksICcuZ2l0JywgbGZzX3BhdGgpCiAgICAgICAgIGxvY2FsTGFyZ2VGaWxlID0gb3MucGF0aC5qb2luKAotICAgICAgICAgICAgb3MuZ2V0Y3dkKCksCi0gICAgICAgICAgICAnLmdpdCcsICdsZnMnLCAnb2JqZWN0cycsIG9pZFs6Ml0sIG9pZFsyOjRdLAorICAgICAgICAgICAgbGZzX3BhdGgsCisgICAgICAgICAgICAnb2JqZWN0cycsIG9pZFs6Ml0sIG9pZFsyOjRdLAogICAgICAgICAgICAgb2lkLAogICAgICAgICApCiAgICAgICAgICMgTEZTIFNwZWMgc3RhdGVzIHRoYXQgcG9pbnRlciBmaWxlcyBzaG91bGQgbm90IGhhdmUgdGhlIGV4ZWN1dGFibGUgYml0IHNldC4KQEAgLTEzMDcsMTQgKzEzNzgsMTQgQEAKIAogY2xhc3MgQ29tbWFuZDoKICAgICBkZWxldGVfYWN0aW9ucyA9ICggImRlbGV0ZSIsICJtb3ZlL2RlbGV0ZSIsICJwdXJnZSIgKQotICAgIGFkZF9hY3Rpb25zID0gKCAiYWRkIiwgIm1vdmUvYWRkIiApCisgICAgYWRkX2FjdGlvbnMgPSAoICJhZGQiLCAiYnJhbmNoIiwgIm1vdmUvYWRkIiApCiAKICAgICBkZWYgX19pbml0X18oc2VsZik6CiAgICAgICAgIHNlbGYudXNhZ2UgPSAidXNhZ2U6ICVwcm9nIFtvcHRpb25zXSIKICAgICAgICAgc2VsZi5uZWVkc0dpdCA9IFRydWUKICAgICAgICAgc2VsZi52ZXJib3NlID0gRmFsc2UKIAotICAgICMgVGhpcyBpcyByZXF1aXJlZCBmb3IgdGhlICJhcHBlbmQiIGNsb25lRXhjbHVkZSBhY3Rpb24KKyAgICAjIFRoaXMgaXMgcmVxdWlyZWQgZm9yIHRoZSAiYXBwZW5kIiB1cGRhdGVfc2hlbHZlIGFjdGlvbgogICAgIGRlZiBlbnN1cmVfdmFsdWUoc2VsZiwgYXR0ciwgdmFsdWUpOgogICAgICAgICBpZiBub3QgaGFzYXR0cihzZWxmLCBhdHRyKSBvciBnZXRhdHRyKHNlbGYsIGF0dHIpIGlzIE5vbmU6CiAgICAgICAgICAgICBzZXRhdHRyKHNlbGYsIGF0dHIsIHZhbHVlKQpAQCAtMTM3NCwxNCArMTQ0NSwxNCBAQAogICAgICAgICBmb3IgKGtleSwgdmFsKSBpbiBzZWxmLnVzZXJzLml0ZW1zKCk6CiAgICAgICAgICAgICBzICs9ICIlc1x0JXNcbiIgJSAoa2V5LmV4cGFuZHRhYnMoMSksIHZhbC5leHBhbmR0YWJzKDEpKQogCi0gICAgICAgIG9wZW4oc2VsZi5nZXRVc2VyQ2FjaGVGaWxlbmFtZSgpLCAid2IiKS53cml0ZShzKQorICAgICAgICBvcGVuKHNlbGYuZ2V0VXNlckNhY2hlRmlsZW5hbWUoKSwgJ3cnKS53cml0ZShzKQogICAgICAgICBzZWxmLnVzZXJNYXBGcm9tUGVyZm9yY2VTZXJ2ZXIgPSBUcnVlCiAKICAgICBkZWYgbG9hZFVzZXJNYXBGcm9tQ2FjaGUoc2VsZik6CiAgICAgICAgIHNlbGYudXNlcnMgPSB7fQogICAgICAgICBzZWxmLnVzZXJNYXBGcm9tUGVyZm9yY2VTZXJ2ZXIgPSBGYWxzZQogICAgICAgICB0cnk6Ci0gICAgICAgICAgICBjYWNoZSA9IG9wZW4oc2VsZi5nZXRVc2VyQ2FjaGVGaWxlbmFtZSgpLCAicmIiKQorICAgICAgICAgICAgY2FjaGUgPSBvcGVuKHNlbGYuZ2V0VXNlckNhY2hlRmlsZW5hbWUoKSwgJ3InKQogICAgICAgICAgICAgbGluZXMgPSBjYWNoZS5yZWFkbGluZXMoKQogICAgICAgICAgICAgY2FjaGUuY2xvc2UoKQogICAgICAgICAgICAgZm9yIGxpbmUgaW4gbGluZXM6CkBAIC0xNjU4LDcgKzE3MjksOCBAQAogICAgICAgICBjID0gY2hhbmdlc1swXQogICAgICAgICBpZiBjWydVc2VyJ10gPT0gbmV3VXNlcjogcmV0dXJuICAgIyBub3RoaW5nIHRvIGRvCiAgICAgICAgIGNbJ1VzZXInXSA9IG5ld1VzZXIKLSAgICAgICAgaW5wdXQgPSBtYXJzaGFsLmR1bXBzKGMpCisgICAgICAgICMgcDQgZG9lcyBub3QgdW5kZXJzdGFuZCBmb3JtYXQgdmVyc2lvbiAzIGFuZCBhYm92ZQorICAgICAgICBpbnB1dCA9IG1hcnNoYWwuZHVtcHMoYywgMikKIAogICAgICAgICByZXN1bHQgPSBwNENtZExpc3QoImNoYW5nZSAtZiAtaSIsIHN0ZGluPWlucHV0KQogICAgICAgICBmb3IgciBpbiByZXN1bHQ6CkBAIC0xNzIyLDcgKzE3OTQsNyBAQAogICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgIGlmIG5vdCBjaGFuZ2VfZW50cnk6CiAgICAgICAgICAgICBkaWUoJ0ZhaWxlZCB0byBkZWNvZGUgb3V0cHV0IG9mIHA0IGNoYW5nZSAtbycpCi0gICAgICAgIGZvciBrZXksIHZhbHVlIGluIGNoYW5nZV9lbnRyeS5pdGVyaXRlbXMoKToKKyAgICAgICAgZm9yIGtleSwgdmFsdWUgaW4gY2hhbmdlX2VudHJ5Lml0ZW1zKCk6CiAgICAgICAgICAgICBpZiBrZXkuc3RhcnRzd2l0aCgnRmlsZScpOgogICAgICAgICAgICAgICAgIGlmICdkZXBvdC1wYXRocycgaW4gc2V0dGluZ3M6CiAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBbcCBmb3IgcCBpbiBzZXR0aW5nc1snZGVwb3QtcGF0aHMnXQpAQCAtMTc3OCwxMiArMTg1MCwxMSBAQAogICAgICAgICBpZiBvcy5zdGF0KHRlbXBsYXRlX2ZpbGUpLnN0X210aW1lID4gbXRpbWU6CiAgICAgICAgICAgICByZXR1cm4gVHJ1ZQogCi0gICAgICAgIHdoaWxlIFRydWU6Ci0gICAgICAgICAgICByZXNwb25zZSA9IHJhd19pbnB1dCgiU3VibWl0IHRlbXBsYXRlIHVuY2hhbmdlZC4gU3VibWl0IGFueXdheT8gW3ldZXMsIFtuXW8gKHNraXAgdGhpcyBwYXRjaCkgIikKLSAgICAgICAgICAgIGlmIHJlc3BvbnNlID09ICd5JzoKLSAgICAgICAgICAgICAgICByZXR1cm4gVHJ1ZQotICAgICAgICAgICAgaWYgcmVzcG9uc2UgPT0gJ24nOgotICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgICAgICByZXNwb25zZSA9IHByb21wdCgiU3VibWl0IHRlbXBsYXRlIHVuY2hhbmdlZC4gU3VibWl0IGFueXdheT8gW3ldZXMsIFtuXW8gKHNraXAgdGhpcyBwYXRjaCkgIikKKyAgICAgICAgaWYgcmVzcG9uc2UgPT0gJ3knOgorICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgaWYgcmVzcG9uc2UgPT0gJ24nOgorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCiAKICAgICBkZWYgZ2V0X2RpZmZfZGVzY3JpcHRpb24oc2VsZiwgZWRpdGVkRmlsZXMsIGZpbGVzVG9BZGQsIHN5bWxpbmtzKToKICAgICAgICAgIyBkaWZmCkBAIC0xODU5LDYgKzE5MzAsNyBAQAogICAgICAgICAgICAgICAgICAgICBmaWxlc1RvQWRkLnJlbW92ZShwYXRoKQogICAgICAgICAgICAgZWxpZiBtb2RpZmllciA9PSAiQyI6CiAgICAgICAgICAgICAgICAgc3JjLCBkZXN0ID0gZGlmZlsnc3JjJ10sIGRpZmZbJ2RzdCddCisgICAgICAgICAgICAgICAgYWxsX2ZpbGVzLmFwcGVuZChkZXN0KQogICAgICAgICAgICAgICAgIHA0X2ludGVncmF0ZShzcmMsIGRlc3QpCiAgICAgICAgICAgICAgICAgcHVyZVJlbmFtZUNvcHkuYWRkKGRlc3QpCiAgICAgICAgICAgICAgICAgaWYgZGlmZlsnc3JjX3NoYTEnXSAhPSBkaWZmWydkc3Rfc2hhMSddOgpAQCAtMTg3NSw2ICsxOTQ3LDcgQEAKICAgICAgICAgICAgICAgICBlZGl0ZWRGaWxlcy5hZGQoZGVzdCkKICAgICAgICAgICAgIGVsaWYgbW9kaWZpZXIgPT0gIlIiOgogICAgICAgICAgICAgICAgIHNyYywgZGVzdCA9IGRpZmZbJ3NyYyddLCBkaWZmWydkc3QnXQorICAgICAgICAgICAgICAgIGFsbF9maWxlcy5hcHBlbmQoZGVzdCkKICAgICAgICAgICAgICAgICBpZiBzZWxmLnA0SGFzTW92ZUNvbW1hbmQ6CiAgICAgICAgICAgICAgICAgICAgIHA0X2VkaXQoc3JjKSAgICAgICAgIyBzcmMgbXVzdCBiZSBvcGVuIGJlZm9yZSBtb3ZlCiAgICAgICAgICAgICAgICAgICAgIHA0X21vdmUoc3JjLCBkZXN0KSAgIyBvcGVucyBmb3IgKG1vdmUvZGVsZXRlLCBtb3ZlL2FkZCkKQEAgLTIwMDEsNyArMjA3NCw3IEBACiAgICAgICAgIHRtcEZpbGUgPSBvcy5mZG9wZW4oaGFuZGxlLCAidytiIikKICAgICAgICAgaWYgc2VsZi5pc1dpbmRvd3M6CiAgICAgICAgICAgICBzdWJtaXRUZW1wbGF0ZSA9IHN1Ym1pdFRlbXBsYXRlLnJlcGxhY2UoIlxuIiwgIlxyXG4iKQotICAgICAgICB0bXBGaWxlLndyaXRlKHN1Ym1pdFRlbXBsYXRlKQorICAgICAgICB0bXBGaWxlLndyaXRlKGVuY29kZV90ZXh0X3N0cmVhbShzdWJtaXRUZW1wbGF0ZSkpCiAgICAgICAgIHRtcEZpbGUuY2xvc2UoKQogCiAgICAgICAgIGlmIHNlbGYucHJlcGFyZV9wNF9vbmx5OgpAQCAtMjA0OCw3ICsyMTIxLDcgQEAKICAgICAgICAgICAgIGlmIHNlbGYuZWRpdF90ZW1wbGF0ZShmaWxlTmFtZSk6CiAgICAgICAgICAgICAgICAgIyByZWFkIHRoZSBlZGl0ZWQgbWVzc2FnZSBhbmQgc3VibWl0CiAgICAgICAgICAgICAgICAgdG1wRmlsZSA9IG9wZW4oZmlsZU5hbWUsICJyYiIpCi0gICAgICAgICAgICAgICAgbWVzc2FnZSA9IHRtcEZpbGUucmVhZCgpCisgICAgICAgICAgICAgICAgbWVzc2FnZSA9IGRlY29kZV90ZXh0X3N0cmVhbSh0bXBGaWxlLnJlYWQoKSkKICAgICAgICAgICAgICAgICB0bXBGaWxlLmNsb3NlKCkKICAgICAgICAgICAgICAgICBpZiBzZWxmLmlzV2luZG93czoKICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZSA9IG1lc3NhZ2UucmVwbGFjZSgiXHJcbiIsICJcbiIpCkBAIC0yMzQzLDMxICsyNDE2LDIyIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICIgLS1wcmVwYXJlLXA0LW9ubHkiKQogICAgICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgIGlmIGkgPCBsYXN0OgotICAgICAgICAgICAgICAgICAgICBxdWl0ID0gRmFsc2UKLSAgICAgICAgICAgICAgICAgICAgd2hpbGUgVHJ1ZToKLSAgICAgICAgICAgICAgICAgICAgICAgICMgcHJvbXB0IGZvciB3aGF0IHRvIGRvLCBvciB1c2UgdGhlIG9wdGlvbi92YXJpYWJsZQotICAgICAgICAgICAgICAgICAgICAgICAgaWYgc2VsZi5jb25mbGljdF9iZWhhdmlvciA9PSAiYXNrIjoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmludCgiV2hhdCBkbyB5b3Ugd2FudCB0byBkbz8iKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlID0gcmF3X2lucHV0KCJbc11raXAgdGhpcyBjb21taXQgYnV0IGFwcGx5IgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIgdGhlIHJlc3QsIG9yIFtxXXVpdD8gIikKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBub3QgcmVzcG9uc2U6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgICAgICAgICAgICAgICAgICBlbGlmIHNlbGYuY29uZmxpY3RfYmVoYXZpb3IgPT0gInNraXAiOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlID0gInMiCi0gICAgICAgICAgICAgICAgICAgICAgICBlbGlmIHNlbGYuY29uZmxpY3RfYmVoYXZpb3IgPT0gInF1aXQiOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlID0gInEiCi0gICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZSgiVW5rbm93biBjb25mbGljdF9iZWhhdmlvciAnJXMnIiAlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuY29uZmxpY3RfYmVoYXZpb3IpCisgICAgICAgICAgICAgICAgICAgICMgcHJvbXB0IGZvciB3aGF0IHRvIGRvLCBvciB1c2UgdGhlIG9wdGlvbi92YXJpYWJsZQorICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLmNvbmZsaWN0X2JlaGF2aW9yID09ICJhc2siOgorICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnQoIldoYXQgZG8geW91IHdhbnQgdG8gZG8/IikKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlID0gcHJvbXB0KCJbc11raXAgdGhpcyBjb21taXQgYnV0IGFwcGx5IHRoZSByZXN0LCBvciBbcV11aXQ/ICIpCisgICAgICAgICAgICAgICAgICAgIGVsaWYgc2VsZi5jb25mbGljdF9iZWhhdmlvciA9PSAic2tpcCI6CisgICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZSA9ICJzIgorICAgICAgICAgICAgICAgICAgICBlbGlmIHNlbGYuY29uZmxpY3RfYmVoYXZpb3IgPT0gInF1aXQiOgorICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UgPSAicSIKKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgIGRpZSgiVW5rbm93biBjb25mbGljdF9iZWhhdmlvciAnJXMnIiAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5jb25mbGljdF9iZWhhdmlvcikKIAotICAgICAgICAgICAgICAgICAgICAgICAgaWYgcmVzcG9uc2VbMF0gPT0gInMiOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW50KCJTa2lwcGluZyB0aGlzIGNvbW1pdCwgYnV0IGFwcGx5aW5nIHRoZSByZXN0IikKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgICAgICAgICAgaWYgcmVzcG9uc2VbMF0gPT0gInEiOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW50KCJRdWl0dGluZyIpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVpdCA9IFRydWUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgICAgICBpZiBxdWl0OgorICAgICAgICAgICAgICAgICAgICBpZiByZXNwb25zZSA9PSAicyI6CisgICAgICAgICAgICAgICAgICAgICAgICBwcmludCgiU2tpcHBpbmcgdGhpcyBjb21taXQsIGJ1dCBhcHBseWluZyB0aGUgcmVzdCIpCisgICAgICAgICAgICAgICAgICAgIGlmIHJlc3BvbnNlID09ICJxIjoKKyAgICAgICAgICAgICAgICAgICAgICAgIHByaW50KCJRdWl0dGluZyIpCiAgICAgICAgICAgICAgICAgICAgICAgICBicmVhawogCiAgICAgICAgIGNoZGlyKHNlbGYub2xkV29ya2luZ0RpcmVjdG9yeSkKQEAgLTI0NzcsNyArMjU0MSw3IEBACiAKICAgICBkZWYgY29udmVydF9jbGllbnRfcGF0aChzZWxmLCBjbGllbnRGaWxlKToKICAgICAgICAgIyBjaG9wIG9mZiAvL2NsaWVudC8gcGFydCB0byBtYWtlIGl0IHJlbGF0aXZlCi0gICAgICAgIGlmIG5vdCBjbGllbnRGaWxlLnN0YXJ0c3dpdGgoc2VsZi5jbGllbnRfcHJlZml4KToKKyAgICAgICAgaWYgbm90IGRlY29kZV9wYXRoKGNsaWVudEZpbGUpLnN0YXJ0c3dpdGgoc2VsZi5jbGllbnRfcHJlZml4KToKICAgICAgICAgICAgIGRpZSgiTm8gcHJlZml4ICclcycgb24gY2xpZW50RmlsZSAnJXMnIiAlCiAgICAgICAgICAgICAgICAgKHNlbGYuY2xpZW50X3ByZWZpeCwgY2xpZW50RmlsZSkpCiAgICAgICAgIHJldHVybiBjbGllbnRGaWxlW2xlbihzZWxmLmNsaWVudF9wcmVmaXgpOl0KQEAgLTI0ODYsNyArMjU1MCw3IEBACiAgICAgICAgICIiIiBDYWNoaW5nIGZpbGUgcGF0aHMgYnkgInA0IHdoZXJlIiBiYXRjaCBxdWVyeSAiIiIKIAogICAgICAgICAjIExpc3QgZGVwb3QgZmlsZSBwYXRocyBleGNsdWRlIHRoYXQgYWxyZWFkeSBjYWNoZWQKLSAgICAgICAgZmlsZUFyZ3MgPSBbZlsncGF0aCddIGZvciBmIGluIGZpbGVzIGlmIGZbJ3BhdGgnXSBub3QgaW4gc2VsZi5jbGllbnRfc3BlY19wYXRoX2NhY2hlXQorICAgICAgICBmaWxlQXJncyA9IFtmWydwYXRoJ10gZm9yIGYgaW4gZmlsZXMgaWYgZGVjb2RlX3BhdGgoZlsncGF0aCddKSBub3QgaW4gc2VsZi5jbGllbnRfc3BlY19wYXRoX2NhY2hlXQogCiAgICAgICAgIGlmIGxlbihmaWxlQXJncykgPT0gMDoKICAgICAgICAgICAgIHJldHVybiAgIyBBbGwgZmlsZXMgaW4gY2FjaGUKQEAgLTI1MDEsMTYgKzI1NjUsMTggQEAKICAgICAgICAgICAgIGlmICJ1bm1hcCIgaW4gcmVzOgogICAgICAgICAgICAgICAgICMgaXQgd2lsbCBsaXN0IGFsbCBvZiB0aGVtLCBidXQgb25seSBvbmUgbm90IHVubWFwLXBlZAogICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBkZXBvdF9wYXRoID0gZGVjb2RlX3BhdGgocmVzWydkZXBvdEZpbGUnXSkKICAgICAgICAgICAgIGlmIGdpdENvbmZpZ0Jvb2woImNvcmUuaWdub3JlY2FzZSIpOgotICAgICAgICAgICAgICAgIHJlc1snZGVwb3RGaWxlJ10gPSByZXNbJ2RlcG90RmlsZSddLmxvd2VyKCkKLSAgICAgICAgICAgIHNlbGYuY2xpZW50X3NwZWNfcGF0aF9jYWNoZVtyZXNbJ2RlcG90RmlsZSddXSA9IHNlbGYuY29udmVydF9jbGllbnRfcGF0aChyZXNbImNsaWVudEZpbGUiXSkKKyAgICAgICAgICAgICAgICBkZXBvdF9wYXRoID0gZGVwb3RfcGF0aC5sb3dlcigpCisgICAgICAgICAgICBzZWxmLmNsaWVudF9zcGVjX3BhdGhfY2FjaGVbZGVwb3RfcGF0aF0gPSBzZWxmLmNvbnZlcnRfY2xpZW50X3BhdGgocmVzWyJjbGllbnRGaWxlIl0pCiAKICAgICAgICAgIyBub3QgZm91bmQgZmlsZXMgb3IgdW5tYXAgZmlsZXMgc2V0IHRvICIiCiAgICAgICAgIGZvciBkZXBvdEZpbGUgaW4gZmlsZUFyZ3M6CisgICAgICAgICAgICBkZXBvdEZpbGUgPSBkZWNvZGVfcGF0aChkZXBvdEZpbGUpCiAgICAgICAgICAgICBpZiBnaXRDb25maWdCb29sKCJjb3JlLmlnbm9yZWNhc2UiKToKICAgICAgICAgICAgICAgICBkZXBvdEZpbGUgPSBkZXBvdEZpbGUubG93ZXIoKQogICAgICAgICAgICAgaWYgZGVwb3RGaWxlIG5vdCBpbiBzZWxmLmNsaWVudF9zcGVjX3BhdGhfY2FjaGU6Ci0gICAgICAgICAgICAgICAgc2VsZi5jbGllbnRfc3BlY19wYXRoX2NhY2hlW2RlcG90RmlsZV0gPSAiIgorICAgICAgICAgICAgICAgIHNlbGYuY2xpZW50X3NwZWNfcGF0aF9jYWNoZVtkZXBvdEZpbGVdID0gYicnCiAKICAgICBkZWYgbWFwX2luX2NsaWVudChzZWxmLCBkZXBvdF9wYXRoKToKICAgICAgICAgIiIiUmV0dXJuIHRoZSByZWxhdGl2ZSBsb2NhdGlvbiBpbiB0aGUgY2xpZW50IHdoZXJlIHRoaXMKQEAgLTI1MjYsNiArMjU5MiwxMSBAQAogICAgICAgICBkaWUoICJFcnJvcjogJXMgaXMgbm90IGZvdW5kIGluIGNsaWVudCBzcGVjIHBhdGgiICUgZGVwb3RfcGF0aCApCiAgICAgICAgIHJldHVybiAiIgogCitkZWYgY2xvbmVFeGNsdWRlQ2FsbGJhY2sob3B0aW9uLCBvcHRfc3RyLCB2YWx1ZSwgcGFyc2VyKToKKyAgICAjIHByZXBlbmQgIi8iIGJlY2F1c2UgdGhlIGZpcnN0ICIvIiB3YXMgY29uc3VtZWQgYXMgcGFydCBvZiB0aGUgb3B0aW9uIGl0c2VsZi4KKyAgICAjICgiLS8vZGVwb3QvQS8uLi4iIGJlY29tZXMgIi9kZXBvdC9BLy4uLiIgYWZ0ZXIgb3B0aW9uIHBhcnNpbmcpCisgICAgcGFyc2VyLnZhbHVlcy5jbG9uZUV4Y2x1ZGUgKz0gWyIvIiArIHJlLnN1YihyIlwuXC5cLiQiLCAiIiwgdmFsdWUpXQorCiBjbGFzcyBQNFN5bmMoQ29tbWFuZCwgUDRVc2VyTWFwKToKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKQEAgLTI1NDksNyArMjYyMCw3IEBACiAgICAgICAgICAgICAgICAgb3B0cGFyc2UubWFrZV9vcHRpb24oIi0tdXNlLWNsaWVudC1zcGVjIiwgZGVzdD0idXNlQ2xpZW50U3BlYyIsIGFjdGlvbj0nc3RvcmVfdHJ1ZScsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVscD0iT25seSBzeW5jIGZpbGVzIHRoYXQgYXJlIGluY2x1ZGVkIGluIHRoZSBQZXJmb3JjZSBDbGllbnQgU3BlYyIpLAogICAgICAgICAgICAgICAgIG9wdHBhcnNlLm1ha2Vfb3B0aW9uKCItLyIsIGRlc3Q9ImNsb25lRXhjbHVkZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uPSJhcHBlbmQiLCB0eXBlPSJzdHJpbmciLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbj0iY2FsbGJhY2siLCBjYWxsYmFjaz1jbG9uZUV4Y2x1ZGVDYWxsYmFjaywgdHlwZT0ic3RyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSJleGNsdWRlIGRlcG90IHBhdGgiKSwKICAgICAgICAgXQogICAgICAgICBzZWxmLmRlc2NyaXB0aW9uID0gIiIiSW1wb3J0cyBmcm9tIFBlcmZvcmNlIGludG8gYSBnaXQgcmVwb3NpdG9yeS5cbgpAQCAtMjYxMCwyNCArMjY4MSwzMCBAQAogICAgIGRlZiBjaGVja3BvaW50KHNlbGYpOgogICAgICAgICBzZWxmLmdpdFN0cmVhbS53cml0ZSgiY2hlY2twb2ludFxuXG4iKQogICAgICAgICBzZWxmLmdpdFN0cmVhbS53cml0ZSgicHJvZ3Jlc3MgY2hlY2twb2ludFxuXG4iKQorICAgICAgICBzZWxmLmdpdFN0cmVhbS5mbHVzaCgpCiAgICAgICAgIG91dCA9IHNlbGYuZ2l0T3V0cHV0LnJlYWRsaW5lKCkKICAgICAgICAgaWYgc2VsZi52ZXJib3NlOgogICAgICAgICAgICAgcHJpbnQoImNoZWNrcG9pbnQgZmluaXNoZWQ6ICIgKyBvdXQpCiAKKyAgICBkZWYgaXNQYXRoV2FudGVkKHNlbGYsIHBhdGgpOgorICAgICAgICBmb3IgcCBpbiBzZWxmLmNsb25lRXhjbHVkZToKKyAgICAgICAgICAgIGlmIHAuZW5kc3dpdGgoIi8iKToKKyAgICAgICAgICAgICAgICBpZiBwNFBhdGhTdGFydHNXaXRoKHBhdGgsIHApOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICAgICAgICAgICMgIi0vL2RlcG90L2ZpbGUxIiB3aXRob3V0IGEgdHJhaWxpbmcgIi8iIHNob3VsZCBvbmx5IGV4Y2x1ZGUgImZpbGUxIiwgYnV0IG5vdCAiZmlsZTExMSIgb3IgImZpbGUxX2Rpci9maWxlMiIKKyAgICAgICAgICAgIGVsaWYgcGF0aC5sb3dlcigpID09IHAubG93ZXIoKToKKyAgICAgICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICAgICAgZm9yIHAgaW4gc2VsZi5kZXBvdFBhdGhzOgorICAgICAgICAgICAgaWYgcDRQYXRoU3RhcnRzV2l0aChwYXRoLCBkZWNvZGVfcGF0aChwKSk6CisgICAgICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgcmV0dXJuIEZhbHNlCisKICAgICBkZWYgZXh0cmFjdEZpbGVzRnJvbUNvbW1pdChzZWxmLCBjb21taXQsIHNoZWx2ZWQ9RmFsc2UsIHNoZWx2ZWRfY2wgPSAwKToKLSAgICAgICAgc2VsZi5jbG9uZUV4Y2x1ZGUgPSBbcmUuc3ViKHIiXC5cLlwuJCIsICIiLCBwYXRoKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgcGF0aCBpbiBzZWxmLmNsb25lRXhjbHVkZV0KICAgICAgICAgZmlsZXMgPSBbXQogICAgICAgICBmbnVtID0gMAogICAgICAgICB3aGlsZSAiZGVwb3RGaWxlJXMiICUgZm51bSBpbiBjb21taXQ6CiAgICAgICAgICAgICBwYXRoID0gIGNvbW1pdFsiZGVwb3RGaWxlJXMiICUgZm51bV0KLQotICAgICAgICAgICAgaWYgW3AgZm9yIHAgaW4gc2VsZi5jbG9uZUV4Y2x1ZGUKLSAgICAgICAgICAgICAgICBpZiBwNFBhdGhTdGFydHNXaXRoKHBhdGgsIHApXToKLSAgICAgICAgICAgICAgICBmb3VuZCA9IEZhbHNlCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGZvdW5kID0gW3AgZm9yIHAgaW4gc2VsZi5kZXBvdFBhdGhzCi0gICAgICAgICAgICAgICAgICAgICAgICAgaWYgcDRQYXRoU3RhcnRzV2l0aChwYXRoLCBwKV0KKyAgICAgICAgICAgIGZvdW5kID0gc2VsZi5pc1BhdGhXYW50ZWQoZGVjb2RlX3BhdGgocGF0aCkpCiAgICAgICAgICAgICBpZiBub3QgZm91bmQ6CiAgICAgICAgICAgICAgICAgZm51bSA9IGZudW0gKyAxCiAgICAgICAgICAgICAgICAgY29udGludWUKQEAgLTI2NjEsMTAgKzI3MzgsMTAgQEAKICAgICAgICAgaWYgc2VsZi51c2VDbGllbnRTcGVjOgogICAgICAgICAgICAgIyBicmFuY2ggZGV0ZWN0aW9uIG1vdmVzIGZpbGVzIHVwIGEgbGV2ZWwgKHRoZSBicmFuY2ggbmFtZSkKICAgICAgICAgICAgICMgZnJvbSB3aGF0IGNsaWVudCBzcGVjIGludGVycHJldGF0aW9uIGdpdmVzCi0gICAgICAgICAgICBwYXRoID0gc2VsZi5jbGllbnRTcGVjRGlycy5tYXBfaW5fY2xpZW50KHBhdGgpCisgICAgICAgICAgICBwYXRoID0gZGVjb2RlX3BhdGgoc2VsZi5jbGllbnRTcGVjRGlycy5tYXBfaW5fY2xpZW50KHBhdGgpKQogICAgICAgICAgICAgaWYgc2VsZi5kZXRlY3RCcmFuY2hlczoKICAgICAgICAgICAgICAgICBmb3IgYiBpbiBzZWxmLmtub3duQnJhbmNoZXM6Ci0gICAgICAgICAgICAgICAgICAgIGlmIHBhdGguc3RhcnRzd2l0aChiICsgIi8iKToKKyAgICAgICAgICAgICAgICAgICAgaWYgcDRQYXRoU3RhcnRzV2l0aChwYXRoLCBiICsgIi8iKToKICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGggPSBwYXRoW2xlbihiKSsxOl0KIAogICAgICAgICBlbGlmIHNlbGYua2VlcFJlcG9QYXRoOgpAQCAtMjY5NSwxNSArMjc3MiwxNSBAQAogICAgICAgICBicmFuY2hlcyA9IHt9CiAgICAgICAgIGZudW0gPSAwCiAgICAgICAgIHdoaWxlICJkZXBvdEZpbGUlcyIgJSBmbnVtIGluIGNvbW1pdDoKLSAgICAgICAgICAgIHBhdGggPSAgY29tbWl0WyJkZXBvdEZpbGUlcyIgJSBmbnVtXQotICAgICAgICAgICAgZm91bmQgPSBbcCBmb3IgcCBpbiBzZWxmLmRlcG90UGF0aHMKLSAgICAgICAgICAgICAgICAgICAgIGlmIHA0UGF0aFN0YXJ0c1dpdGgocGF0aCwgcCldCisgICAgICAgICAgICByYXdfcGF0aCA9IGNvbW1pdFsiZGVwb3RGaWxlJXMiICUgZm51bV0KKyAgICAgICAgICAgIHBhdGggPSBkZWNvZGVfcGF0aChyYXdfcGF0aCkKKyAgICAgICAgICAgIGZvdW5kID0gc2VsZi5pc1BhdGhXYW50ZWQocGF0aCkKICAgICAgICAgICAgIGlmIG5vdCBmb3VuZDoKICAgICAgICAgICAgICAgICBmbnVtID0gZm51bSArIDEKICAgICAgICAgICAgICAgICBjb250aW51ZQogCiAgICAgICAgICAgICBmaWxlID0ge30KLSAgICAgICAgICAgIGZpbGVbInBhdGgiXSA9IHBhdGgKKyAgICAgICAgICAgIGZpbGVbInBhdGgiXSA9IHJhd19wYXRoCiAgICAgICAgICAgICBmaWxlWyJyZXYiXSA9IGNvbW1pdFsicmV2JXMiICUgZm51bV0KICAgICAgICAgICAgIGZpbGVbImFjdGlvbiJdID0gY29tbWl0WyJhY3Rpb24lcyIgJSBmbnVtXQogICAgICAgICAgICAgZmlsZVsidHlwZSJdID0gY29tbWl0WyJ0eXBlJXMiICUgZm51bV0KQEAgLTI3MTIsMTQgKzI3ODksMTQgQEAKICAgICAgICAgICAgICMgc3RhcnQgd2l0aCB0aGUgZnVsbCByZWxhdGl2ZSBwYXRoIHdoZXJlIHRoaXMgZmlsZSB3b3VsZAogICAgICAgICAgICAgIyBnbyBpbiBhIHA0IGNsaWVudAogICAgICAgICAgICAgaWYgc2VsZi51c2VDbGllbnRTcGVjOgotICAgICAgICAgICAgICAgIHJlbFBhdGggPSBzZWxmLmNsaWVudFNwZWNEaXJzLm1hcF9pbl9jbGllbnQocGF0aCkKKyAgICAgICAgICAgICAgICByZWxQYXRoID0gZGVjb2RlX3BhdGgoc2VsZi5jbGllbnRTcGVjRGlycy5tYXBfaW5fY2xpZW50KHBhdGgpKQogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICByZWxQYXRoID0gc2VsZi5zdHJpcFJlcG9QYXRoKHBhdGgsIHNlbGYuZGVwb3RQYXRocykKIAogICAgICAgICAgICAgZm9yIGJyYW5jaCBpbiBzZWxmLmtub3duQnJhbmNoZXMua2V5cygpOgogICAgICAgICAgICAgICAgICMgYWRkIGEgdHJhaWxpbmcgc2xhc2ggc28gdGhhdCBhIGNvbW1pdCBpbnRvIHF0LzQuMmZvbwogICAgICAgICAgICAgICAgICMgZG9lc24ndCBlbmQgdXAgaW4gcXQvNC4yLCBlLmcuCi0gICAgICAgICAgICAgICAgaWYgcmVsUGF0aC5zdGFydHN3aXRoKGJyYW5jaCArICIvIik6CisgICAgICAgICAgICAgICAgaWYgcDRQYXRoU3RhcnRzV2l0aChyZWxQYXRoLCBicmFuY2ggKyAiLyIpOgogICAgICAgICAgICAgICAgICAgICBpZiBicmFuY2ggbm90IGluIGJyYW5jaGVzOgogICAgICAgICAgICAgICAgICAgICAgICAgYnJhbmNoZXNbYnJhbmNoXSA9IFtdCiAgICAgICAgICAgICAgICAgICAgIGJyYW5jaGVzW2JyYW5jaF0uYXBwZW5kKGZpbGUpCkBAIC0yNzI4LDcgKzI4MDUsNyBAQAogICAgICAgICByZXR1cm4gYnJhbmNoZXMKIAogICAgIGRlZiB3cml0ZVRvR2l0U3RyZWFtKHNlbGYsIGdpdE1vZGUsIHJlbFBhdGgsIGNvbnRlbnRzKToKLSAgICAgICAgc2VsZi5naXRTdHJlYW0ud3JpdGUoJ00gJXMgaW5saW5lICVzXG4nICUgKGdpdE1vZGUsIHJlbFBhdGgpKQorICAgICAgICBzZWxmLmdpdFN0cmVhbS53cml0ZShlbmNvZGVfdGV4dF9zdHJlYW0odSdNIHt9IGlubGluZSB7fVxuJy5mb3JtYXQoZ2l0TW9kZSwgcmVsUGF0aCkpKQogICAgICAgICBzZWxmLmdpdFN0cmVhbS53cml0ZSgnZGF0YSAlZFxuJyAlIHN1bShsZW4oZCkgZm9yIGQgaW4gY29udGVudHMpKQogICAgICAgICBmb3IgZCBpbiBjb250ZW50czoKICAgICAgICAgICAgIHNlbGYuZ2l0U3RyZWFtLndyaXRlKGQpCkBAIC0yNzUwLDE0ICsyODI3LDE1IEBACiAgICAgIyAtIGhlbHBlciBmb3Igc3RyZWFtUDRGaWxlcwogCiAgICAgZGVmIHN0cmVhbU9uZVA0RmlsZShzZWxmLCBmaWxlLCBjb250ZW50cyk6Ci0gICAgICAgIHJlbFBhdGggPSBzZWxmLnN0cmlwUmVwb1BhdGgoZmlsZVsnZGVwb3RGaWxlJ10sIHNlbGYuYnJhbmNoUHJlZml4ZXMpCi0gICAgICAgIHJlbFBhdGggPSBzZWxmLmVuY29kZVdpdGhVVEY4KHJlbFBhdGgpCisgICAgICAgIGZpbGVfcGF0aCA9IGZpbGVbJ2RlcG90RmlsZSddCisgICAgICAgIHJlbFBhdGggPSBzZWxmLnN0cmlwUmVwb1BhdGgoZGVjb2RlX3BhdGgoZmlsZV9wYXRoKSwgc2VsZi5icmFuY2hQcmVmaXhlcykKKwogICAgICAgICBpZiB2ZXJib3NlOgogICAgICAgICAgICAgaWYgJ2ZpbGVTaXplJyBpbiBzZWxmLnN0cmVhbV9maWxlOgogICAgICAgICAgICAgICAgIHNpemUgPSBpbnQoc2VsZi5zdHJlYW1fZmlsZVsnZmlsZVNpemUnXSkKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgc2l6ZSA9IDAgIyBkZWxldGVkIGZpbGVzIGRvbid0IGdldCBhIGZpbGVTaXplIGFwcGFyZW50bHkKLSAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ1xyJXMgLS0+ICVzICglaSBNQilcbicgJSAoZmlsZVsnZGVwb3RGaWxlJ10sIHJlbFBhdGgsIHNpemUvMTAyNC8xMDI0KSkKKyAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoJ1xyJXMgLS0+ICVzICglaSBNQilcbicgJSAoZmlsZV9wYXRoLCByZWxQYXRoLCBzaXplLzEwMjQvMTAyNCkpCiAgICAgICAgICAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKIAogICAgICAgICAodHlwZV9iYXNlLCB0eXBlX21vZHMpID0gc3BsaXRfcDRfdHlwZShmaWxlWyJ0eXBlIl0pCkBAIC0yNzY5LDEzICsyODQ3LDEzIEBACiAgICAgICAgICAgICBnaXRfbW9kZSA9ICIxMjAwMDAiCiAgICAgICAgICAgICAjIHA0IHByaW50IG9uIGEgc3ltbGluayBzb21ldGltZXMgY29udGFpbnMgInRhcmdldFxuIjsKICAgICAgICAgICAgICMgaWYgaXQgZG9lcywgcmVtb3ZlIHRoZSBuZXdsaW5lCi0gICAgICAgICAgICBkYXRhID0gJycuam9pbihjb250ZW50cykKKyAgICAgICAgICAgIGRhdGEgPSAnJy5qb2luKGRlY29kZV90ZXh0X3N0cmVhbShjKSBmb3IgYyBpbiBjb250ZW50cykKICAgICAgICAgICAgIGlmIG5vdCBkYXRhOgogICAgICAgICAgICAgICAgICMgU29tZSB2ZXJzaW9uIG9mIHA0IGFsbG93ZWQgY3JlYXRpbmcgYSBzeW1saW5rIHRoYXQgcG9pbnRlZAogICAgICAgICAgICAgICAgICMgdG8gbm90aGluZy4gIFRoaXMgY2F1c2VzIHA0IGVycm9ycyB3aGVuIGNoZWNraW5nIG91dCBzdWNoCiAgICAgICAgICAgICAgICAgIyBhIGNoYW5nZSwgYW5kIGVycm9ycyBoZXJlIHRvby4gIFdvcmsgYXJvdW5kIGl0IGJ5IGlnbm9yaW5nCiAgICAgICAgICAgICAgICAgIyB0aGUgYmFkIHN5bWxpbms7IGhvcGVmdWxseSBhIGZ1dHVyZSBjaGFuZ2UgZml4ZXMgaXQuCi0gICAgICAgICAgICAgICAgcHJpbnQoIlxuSWdub3JpbmcgZW1wdHkgc3ltbGluayBpbiAlcyIgJSBmaWxlWydkZXBvdEZpbGUnXSkKKyAgICAgICAgICAgICAgICBwcmludCgiXG5JZ25vcmluZyBlbXB0eSBzeW1saW5rIGluICVzIiAlIGZpbGVfcGF0aCkKICAgICAgICAgICAgICAgICByZXR1cm4KICAgICAgICAgICAgIGVsaWYgZGF0YVstMV0gPT0gJ1xuJzoKICAgICAgICAgICAgICAgICBjb250ZW50cyA9IFtkYXRhWzotMV1dCkBAIC0yNzk0LDcgKzI4NzIsNyBAQAogICAgICAgICAgICAgIyBqdXN0IHRoZSBuYXRpdmUgIk5UIiB0eXBlLgogICAgICAgICAgICAgIwogICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHRleHQgPSBwNF9yZWFkX3BpcGUoWydwcmludCcsICctcScsICctbycsICctJywgJyVzQCVzJyAlIChmaWxlWydkZXBvdEZpbGUnXSwgZmlsZVsnY2hhbmdlJ10pXSkKKyAgICAgICAgICAgICAgICB0ZXh0ID0gcDRfcmVhZF9waXBlKFsncHJpbnQnLCAnLXEnLCAnLW8nLCAnLScsICclc0AlcycgJSAoZGVjb2RlX3BhdGgoZmlsZVsnZGVwb3RGaWxlJ10pLCBmaWxlWydjaGFuZ2UnXSldLCByYXc9VHJ1ZSkKICAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICAgICAgICAgICBpZiAnVHJhbnNsYXRpb24gb2YgZmlsZSBjb250ZW50IGZhaWxlZCcgaW4gc3RyKGUpOgogICAgICAgICAgICAgICAgICAgICB0eXBlX2Jhc2UgPSAnYmluYXJ5JwpAQCAtMjgwMiw3ICsyODgwLDcgQEAKICAgICAgICAgICAgICAgICAgICAgcmFpc2UgZQogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICBpZiBwNF92ZXJzaW9uX3N0cmluZygpLmZpbmQoJy9OVCcpID49IDA6Ci0gICAgICAgICAgICAgICAgICAgIHRleHQgPSB0ZXh0LnJlcGxhY2UoJ1xyXG4nLCAnXG4nKQorICAgICAgICAgICAgICAgICAgICB0ZXh0ID0gdGV4dC5yZXBsYWNlKGInXHJcbicsIGInXG4nKQogICAgICAgICAgICAgICAgIGNvbnRlbnRzID0gWyB0ZXh0IF0KIAogICAgICAgICBpZiB0eXBlX2Jhc2UgPT0gImFwcGxlIjoKQEAgLTI4MjMsNyArMjkwMSw3IEBACiAgICAgICAgIHBhdHRlcm4gPSBwNF9rZXl3b3Jkc19yZWdleHBfZm9yX3R5cGUodHlwZV9iYXNlLCB0eXBlX21vZHMpCiAgICAgICAgIGlmIHBhdHRlcm46CiAgICAgICAgICAgICByZWdleHAgPSByZS5jb21waWxlKHBhdHRlcm4sIHJlLlZFUkJPU0UpCi0gICAgICAgICAgICB0ZXh0ID0gJycuam9pbihjb250ZW50cykKKyAgICAgICAgICAgIHRleHQgPSAnJy5qb2luKGRlY29kZV90ZXh0X3N0cmVhbShjKSBmb3IgYyBpbiBjb250ZW50cykKICAgICAgICAgICAgIHRleHQgPSByZWdleHAuc3ViKHInJFwxJCcsIHRleHQpCiAgICAgICAgICAgICBjb250ZW50cyA9IFsgdGV4dCBdCiAKQEAgLTI4MzMsMTIgKzI5MTEsMTEgQEAKICAgICAgICAgc2VsZi53cml0ZVRvR2l0U3RyZWFtKGdpdF9tb2RlLCByZWxQYXRoLCBjb250ZW50cykKIAogICAgIGRlZiBzdHJlYW1PbmVQNERlbGV0aW9uKHNlbGYsIGZpbGUpOgotICAgICAgICByZWxQYXRoID0gc2VsZi5zdHJpcFJlcG9QYXRoKGZpbGVbJ3BhdGgnXSwgc2VsZi5icmFuY2hQcmVmaXhlcykKLSAgICAgICAgcmVsUGF0aCA9IHNlbGYuZW5jb2RlV2l0aFVURjgocmVsUGF0aCkKKyAgICAgICAgcmVsUGF0aCA9IHNlbGYuc3RyaXBSZXBvUGF0aChkZWNvZGVfcGF0aChmaWxlWydwYXRoJ10pLCBzZWxmLmJyYW5jaFByZWZpeGVzKQogICAgICAgICBpZiB2ZXJib3NlOgogICAgICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgiZGVsZXRlICVzXG4iICUgcmVsUGF0aCkKICAgICAgICAgICAgIHN5cy5zdGRvdXQuZmx1c2goKQotICAgICAgICBzZWxmLmdpdFN0cmVhbS53cml0ZSgiRCAlc1xuIiAlIHJlbFBhdGgpCisgICAgICAgIHNlbGYuZ2l0U3RyZWFtLndyaXRlKGVuY29kZV90ZXh0X3N0cmVhbSh1J0Qge31cbicuZm9ybWF0KHJlbFBhdGgpKSkKIAogICAgICAgICBpZiBzZWxmLmxhcmdlRmlsZVN5c3RlbSBhbmQgc2VsZi5sYXJnZUZpbGVTeXN0ZW0uaXNMYXJnZUZpbGUocmVsUGF0aCk6CiAgICAgICAgICAgICBzZWxmLmxhcmdlRmlsZVN5c3RlbS5yZW1vdmVMYXJnZUZpbGUocmVsUGF0aCkKQEAgLTI5MzgsOSArMzAxNSw5IEBACiAgICAgICAgICAgICAgICAgaWYgJ3NoZWx2ZWRfY2wnIGluIGY6CiAgICAgICAgICAgICAgICAgICAgICMgSGFuZGxlIHNoZWx2ZWQgQ0xzIHVzaW5nIHRoZSAicDQgcHJpbnQgZmlsZUA9TiIgc3ludGF4IHRvIHByaW50CiAgICAgICAgICAgICAgICAgICAgICMgdGhlIGNvbnRlbnRzCi0gICAgICAgICAgICAgICAgICAgIGZpbGVBcmcgPSAnJXNAPSVkJyAlIChmWydwYXRoJ10sIGZbJ3NoZWx2ZWRfY2wnXSkKKyAgICAgICAgICAgICAgICAgICAgZmlsZUFyZyA9IGZbJ3BhdGgnXSArIGVuY29kZV90ZXh0X3N0cmVhbSgnQD17fScuZm9ybWF0KGZbJ3NoZWx2ZWRfY2wnXSkpCiAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgZmlsZUFyZyA9ICclcyMlcycgJSAoZlsncGF0aCddLCBmWydyZXYnXSkKKyAgICAgICAgICAgICAgICAgICAgZmlsZUFyZyA9IGZbJ3BhdGgnXSArIGVuY29kZV90ZXh0X3N0cmVhbSgnI3t9Jy5mb3JtYXQoZlsncmV2J10pKQogCiAgICAgICAgICAgICAgICAgZmlsZUFyZ3MuYXBwZW5kKGZpbGVBcmcpCiAKQEAgLTMwMjEsOCArMzA5OCw4IEBACiAgICAgICAgIGlmIHNlbGYuY2xpZW50U3BlY0RpcnM6CiAgICAgICAgICAgICBzZWxmLmNsaWVudFNwZWNEaXJzLnVwZGF0ZV9jbGllbnRfc3BlY19wYXRoX2NhY2hlKGZpbGVzKQogCi0gICAgICAgIGZpbGVzID0gW2YgZm9yIGYgaW4gZmlsZXMKLSAgICAgICAgICAgIGlmIHNlbGYuaW5DbGllbnRTcGVjKGZbJ3BhdGgnXSkgYW5kIHNlbGYuaGFzQnJhbmNoUHJlZml4KGZbJ3BhdGgnXSldCisgICAgICAgIGZpbGVzID0gW2YgZm9yIChmLCBwYXRoKSBpbiAoKGYsIGRlY29kZV9wYXRoKGZbJ3BhdGgnXSkpIGZvciBmIGluIGZpbGVzKQorICAgICAgICAgICAgaWYgc2VsZi5pbkNsaWVudFNwZWMocGF0aCkgYW5kIHNlbGYuaGFzQnJhbmNoUHJlZml4KHBhdGgpXQogCiAgICAgICAgIGlmIGdpdENvbmZpZ0Jvb2woJ2dpdC1wNC5rZWVwRW1wdHlDb21taXRzJyk6CiAgICAgICAgICAgICBhbGxvd19lbXB0eSA9IFRydWUKQEAgLTMzMjEsNyArMzM5OCw5IEBACiAgICAgICAgICAgICBpZiBjdXJyZW50Q2hhbmdlIDwgY2hhbmdlOgogICAgICAgICAgICAgICAgIGVhcmxpZXN0Q29tbWl0ID0gIl4lcyIgJSBuZXh0CiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGxhdGVzdENvbW1pdCA9ICIlcyIgJSBuZXh0CisgICAgICAgICAgICAgICAgaWYgbmV4dCA9PSBsYXRlc3RDb21taXQ6CisgICAgICAgICAgICAgICAgICAgIGRpZSgiSW5maW5pdGUgbG9vcCB3aGlsZSBsb29raW5nIGluIHJlZiAlcyBmb3IgY2hhbmdlICVzLiBDaGVjayB5b3VyIGJyYW5jaCBtYXBwaW5ncyIgJSAocmVmLCBjaGFuZ2UpKQorICAgICAgICAgICAgICAgIGxhdGVzdENvbW1pdCA9ICIlc15AIiAlIG5leHQKIAogICAgICAgICByZXR1cm4gIiIKIApAQCAtMzUxMCwxMCArMzU4OSw3OSBAQAogICAgICAgICBzZWxmLnVwZGF0ZU9wdGlvbkRpY3QoZGV0YWlscykKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgc2VsZi5jb21taXQoZGV0YWlscywgc2VsZi5leHRyYWN0RmlsZXNGcm9tQ29tbWl0KGRldGFpbHMpLCBzZWxmLmJyYW5jaCkKLSAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgIGV4Y2VwdCBJT0Vycm9yIGFzIGVycjoKICAgICAgICAgICAgIHByaW50KCJJTyBlcnJvciB3aXRoIGdpdCBmYXN0LWltcG9ydC4gSXMgeW91ciBnaXQgdmVyc2lvbiByZWNlbnQgZW5vdWdoPyIpCisgICAgICAgICAgICBwcmludCgiSU8gZXJyb3IgZGV0YWlsczoge30iLmZvcm1hdChlcnIpKQogICAgICAgICAgICAgcHJpbnQoc2VsZi5naXRFcnJvci5yZWFkKCkpCiAKKworICAgIGRlZiBpbXBvcnRSZXZpc2lvbnMoc2VsZiwgYXJncywgYnJhbmNoX2FyZ19naXZlbik6CisgICAgICAgIGNoYW5nZXMgPSBbXQorCisgICAgICAgIGlmIGxlbihzZWxmLmNoYW5nZXNGaWxlKSA+IDA6CisgICAgICAgICAgICB3aXRoIG9wZW4oc2VsZi5jaGFuZ2VzRmlsZSkgYXMgZjoKKyAgICAgICAgICAgICAgICBvdXRwdXQgPSBmLnJlYWRsaW5lcygpCisgICAgICAgICAgICBjaGFuZ2VTZXQgPSBzZXQoKQorICAgICAgICAgICAgZm9yIGxpbmUgaW4gb3V0cHV0OgorICAgICAgICAgICAgICAgIGNoYW5nZVNldC5hZGQoaW50KGxpbmUpKQorCisgICAgICAgICAgICBmb3IgY2hhbmdlIGluIGNoYW5nZVNldDoKKyAgICAgICAgICAgICAgICBjaGFuZ2VzLmFwcGVuZChjaGFuZ2UpCisKKyAgICAgICAgICAgIGNoYW5nZXMuc29ydCgpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIGNhdGNoICJnaXQgcDQgc3luYyIgd2l0aCBubyBuZXcgYnJhbmNoZXMsIGluIGEgcmVwbyB0aGF0CisgICAgICAgICAgICAjIGRvZXMgbm90IGhhdmUgYW55IGV4aXN0aW5nIHA0IGJyYW5jaGVzCisgICAgICAgICAgICBpZiBsZW4oYXJncykgPT0gMDoKKyAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5wNEJyYW5jaGVzSW5HaXQ6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIFA0Q29tbWFuZEV4Y2VwdGlvbigiTm8gcmVtb3RlIHA0IGJyYW5jaGVzLiAgUGVyaGFwcyB5b3UgbmV2ZXIgZGlkIFwiZ2l0IHA0IGNsb25lXCIgaW4gaGVyZS4iKQorCisgICAgICAgICAgICAgICAgIyBUaGUgZGVmYXVsdCBicmFuY2ggaXMgbWFzdGVyLCB1bmxlc3MgLS1icmFuY2ggaXMgdXNlZCB0bworICAgICAgICAgICAgICAgICMgc3BlY2lmeSBzb21ldGhpbmcgZWxzZS4gIE1ha2Ugc3VyZSBpdCBleGlzdHMsIG9yIGNvbXBsYWluCisgICAgICAgICAgICAgICAgIyBuaWNlbHkgYWJvdXQgaG93IHRvIHVzZSAtLWJyYW5jaC4KKyAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5kZXRlY3RCcmFuY2hlczoKKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IGJyYW5jaF9leGlzdHMoc2VsZi5icmFuY2gpOgorICAgICAgICAgICAgICAgICAgICAgICAgaWYgYnJhbmNoX2FyZ19naXZlbjoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBQNENvbW1hbmRFeGNlcHRpb24oIkVycm9yOiBicmFuY2ggJXMgZG9lcyBub3QgZXhpc3QuIiAlIHNlbGYuYnJhbmNoKQorICAgICAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBQNENvbW1hbmRFeGNlcHRpb24oIkVycm9yOiBubyBicmFuY2ggJXM7IHBlcmhhcHMgc3BlY2lmeSBvbmUgd2l0aCAtLWJyYW5jaC4iICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5icmFuY2gpCisKKyAgICAgICAgICAgIGlmIHNlbGYudmVyYm9zZToKKyAgICAgICAgICAgICAgICBwcmludCgiR2V0dGluZyBwNCBjaGFuZ2VzIGZvciAlcy4uLiVzIiAlICgnLCAnLmpvaW4oc2VsZi5kZXBvdFBhdGhzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmNoYW5nZVJhbmdlKSkKKyAgICAgICAgICAgIGNoYW5nZXMgPSBwNENoYW5nZXNGb3JQYXRocyhzZWxmLmRlcG90UGF0aHMsIHNlbGYuY2hhbmdlUmFuZ2UsIHNlbGYuY2hhbmdlc19ibG9ja19zaXplKQorCisgICAgICAgICAgICBpZiBsZW4oc2VsZi5tYXhDaGFuZ2VzKSA+IDA6CisgICAgICAgICAgICAgICAgY2hhbmdlcyA9IGNoYW5nZXNbOm1pbihpbnQoc2VsZi5tYXhDaGFuZ2VzKSwgbGVuKGNoYW5nZXMpKV0KKworICAgICAgICBpZiBsZW4oY2hhbmdlcykgPT0gMDoKKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLnNpbGVudDoKKyAgICAgICAgICAgICAgICBwcmludCgiTm8gY2hhbmdlcyB0byBpbXBvcnQhIikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLnNpbGVudCBhbmQgbm90IHNlbGYuZGV0ZWN0QnJhbmNoZXM6CisgICAgICAgICAgICAgICAgcHJpbnQoIkltcG9ydCBkZXN0aW5hdGlvbjogJXMiICUgc2VsZi5icmFuY2gpCisKKyAgICAgICAgICAgIHNlbGYudXBkYXRlZEJyYW5jaGVzID0gc2V0KCkKKworICAgICAgICAgICAgaWYgbm90IHNlbGYuZGV0ZWN0QnJhbmNoZXM6CisgICAgICAgICAgICAgICAgaWYgYXJnczoKKyAgICAgICAgICAgICAgICAgICAgIyBzdGFydCBhIG5ldyBicmFuY2gKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5pbml0aWFsUGFyZW50ID0gIiIKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAjIGJ1aWxkIG9uIGEgcHJldmlvdXMgcmV2aXNpb24KKyAgICAgICAgICAgICAgICAgICAgc2VsZi5pbml0aWFsUGFyZW50ID0gcGFyc2VSZXZpc2lvbihzZWxmLmJyYW5jaCkKKworICAgICAgICAgICAgc2VsZi5pbXBvcnRDaGFuZ2VzKGNoYW5nZXMpCisKKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLnNpbGVudDoKKyAgICAgICAgICAgICAgICBwcmludCgiIikKKyAgICAgICAgICAgICAgICBpZiBsZW4oc2VsZi51cGRhdGVkQnJhbmNoZXMpID4gMDoKKyAgICAgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgiVXBkYXRlZCBicmFuY2hlczogIikKKyAgICAgICAgICAgICAgICAgICAgZm9yIGIgaW4gc2VsZi51cGRhdGVkQnJhbmNoZXM6CisgICAgICAgICAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCIlcyAiICUgYikKKyAgICAgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgiXG4iKQorCiAgICAgZGVmIG9wZW5TdHJlYW1zKHNlbGYpOgogICAgICAgICBzZWxmLmltcG9ydFByb2Nlc3MgPSBzdWJwcm9jZXNzLlBvcGVuKFsiZ2l0IiwgImZhc3QtaW1wb3J0Il0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkaW49c3VicHJvY2Vzcy5QSVBFLApAQCAtMzUyMywxMiArMzY3MSwyNCBAQAogICAgICAgICBzZWxmLmdpdFN0cmVhbSA9IHNlbGYuaW1wb3J0UHJvY2Vzcy5zdGRpbgogICAgICAgICBzZWxmLmdpdEVycm9yID0gc2VsZi5pbXBvcnRQcm9jZXNzLnN0ZGVycgogCisgICAgICAgIGlmIGJ5dGVzIGlzIG5vdCBzdHI6CisgICAgICAgICAgICAjIFdyYXAgZ2l0U3RyZWFtLndyaXRlKCkgc28gdGhhdCBpdCBjYW4gYmUgY2FsbGVkIHVzaW5nIGBzdHJgIGFyZ3VtZW50cworICAgICAgICAgICAgZGVmIG1ha2VfZW5jb2RlZF93cml0ZSh3cml0ZSk6CisgICAgICAgICAgICAgICAgZGVmIGVuY29kZWRfd3JpdGUocyk6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiB3cml0ZShzLmVuY29kZSgpIGlmIGlzaW5zdGFuY2Uocywgc3RyKSBlbHNlIHMpCisgICAgICAgICAgICAgICAgcmV0dXJuIGVuY29kZWRfd3JpdGUKKworICAgICAgICAgICAgc2VsZi5naXRTdHJlYW0ud3JpdGUgPSBtYWtlX2VuY29kZWRfd3JpdGUoc2VsZi5naXRTdHJlYW0ud3JpdGUpCisKICAgICBkZWYgY2xvc2VTdHJlYW1zKHNlbGYpOgorICAgICAgICBpZiBzZWxmLmdpdFN0cmVhbSBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgIHNlbGYuZ2l0U3RyZWFtLmNsb3NlKCkKICAgICAgICAgaWYgc2VsZi5pbXBvcnRQcm9jZXNzLndhaXQoKSAhPSAwOgogICAgICAgICAgICAgZGllKCJmYXN0LWltcG9ydCBmYWlsZWQ6ICVzIiAlIHNlbGYuZ2l0RXJyb3IucmVhZCgpKQogICAgICAgICBzZWxmLmdpdE91dHB1dC5jbG9zZSgpCiAgICAgICAgIHNlbGYuZ2l0RXJyb3IuY2xvc2UoKQorICAgICAgICBzZWxmLmdpdFN0cmVhbSA9IE5vbmUKIAogICAgIGRlZiBydW4oc2VsZiwgYXJncyk6CiAgICAgICAgIGlmIHNlbGYuaW1wb3J0SW50b1JlbW90ZXM6CkBAIC0zNzEyLDg3ICszODcyLDM2IEBACiAgICAgICAgICAgICAgICAgICAgIGIgPSBiW2xlbihzZWxmLnByb2plY3ROYW1lKTpdCiAgICAgICAgICAgICAgICAgc2VsZi5jcmVhdGVkQnJhbmNoZXMuYWRkKGIpCiAKKyAgICAgICAgcDRfY2hlY2tfYWNjZXNzKCkKKwogICAgICAgICBzZWxmLm9wZW5TdHJlYW1zKCkKIAotICAgICAgICBpZiByZXZpc2lvbjoKLSAgICAgICAgICAgIHNlbGYuaW1wb3J0SGVhZFJldmlzaW9uKHJldmlzaW9uKQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgY2hhbmdlcyA9IFtdCisgICAgICAgIGVyciA9IE5vbmUKIAotICAgICAgICAgICAgaWYgbGVuKHNlbGYuY2hhbmdlc0ZpbGUpID4gMDoKLSAgICAgICAgICAgICAgICBvdXRwdXQgPSBvcGVuKHNlbGYuY2hhbmdlc0ZpbGUpLnJlYWRsaW5lcygpCi0gICAgICAgICAgICAgICAgY2hhbmdlU2V0ID0gc2V0KCkKLSAgICAgICAgICAgICAgICBmb3IgbGluZSBpbiBvdXRwdXQ6Ci0gICAgICAgICAgICAgICAgICAgIGNoYW5nZVNldC5hZGQoaW50KGxpbmUpKQotCi0gICAgICAgICAgICAgICAgZm9yIGNoYW5nZSBpbiBjaGFuZ2VTZXQ6Ci0gICAgICAgICAgICAgICAgICAgIGNoYW5nZXMuYXBwZW5kKGNoYW5nZSkKLQotICAgICAgICAgICAgICAgIGNoYW5nZXMuc29ydCgpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGlmIHJldmlzaW9uOgorICAgICAgICAgICAgICAgIHNlbGYuaW1wb3J0SGVhZFJldmlzaW9uKHJldmlzaW9uKQogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAjIGNhdGNoICJnaXQgcDQgc3luYyIgd2l0aCBubyBuZXcgYnJhbmNoZXMsIGluIGEgcmVwbyB0aGF0Ci0gICAgICAgICAgICAgICAgIyBkb2VzIG5vdCBoYXZlIGFueSBleGlzdGluZyBwNCBicmFuY2hlcwotICAgICAgICAgICAgICAgIGlmIGxlbihhcmdzKSA9PSAwOgotICAgICAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5wNEJyYW5jaGVzSW5HaXQ6Ci0gICAgICAgICAgICAgICAgICAgICAgICBkaWUoIk5vIHJlbW90ZSBwNCBicmFuY2hlcy4gIFBlcmhhcHMgeW91IG5ldmVyIGRpZCBcImdpdCBwNCBjbG9uZVwiIGluIGhlcmUuIikKKyAgICAgICAgICAgICAgICBzZWxmLmltcG9ydFJldmlzaW9ucyhhcmdzLCBicmFuY2hfYXJnX2dpdmVuKQogCi0gICAgICAgICAgICAgICAgICAgICMgVGhlIGRlZmF1bHQgYnJhbmNoIGlzIG1hc3RlciwgdW5sZXNzIC0tYnJhbmNoIGlzIHVzZWQgdG8KLSAgICAgICAgICAgICAgICAgICAgIyBzcGVjaWZ5IHNvbWV0aGluZyBlbHNlLiAgTWFrZSBzdXJlIGl0IGV4aXN0cywgb3IgY29tcGxhaW4KLSAgICAgICAgICAgICAgICAgICAgIyBuaWNlbHkgYWJvdXQgaG93IHRvIHVzZSAtLWJyYW5jaC4KLSAgICAgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuZGV0ZWN0QnJhbmNoZXM6Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiBub3QgYnJhbmNoX2V4aXN0cyhzZWxmLmJyYW5jaCk6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgYnJhbmNoX2FyZ19naXZlbjoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGllKCJFcnJvcjogYnJhbmNoICVzIGRvZXMgbm90IGV4aXN0LiIgJSBzZWxmLmJyYW5jaCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWUoIkVycm9yOiBubyBicmFuY2ggJXM7IHBlcmhhcHMgc3BlY2lmeSBvbmUgd2l0aCAtLWJyYW5jaC4iICUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYnJhbmNoKQorICAgICAgICAgICAgaWYgZ2l0Q29uZmlnQm9vbCgiZ2l0LXA0LmltcG9ydExhYmVscyIpOgorICAgICAgICAgICAgICAgIHNlbGYuaW1wb3J0TGFiZWxzID0gVHJ1ZQogCi0gICAgICAgICAgICAgICAgaWYgc2VsZi52ZXJib3NlOgotICAgICAgICAgICAgICAgICAgICBwcmludCgiR2V0dGluZyBwNCBjaGFuZ2VzIGZvciAlcy4uLiVzIiAlICgnLCAnLmpvaW4oc2VsZi5kZXBvdFBhdGhzKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5jaGFuZ2VSYW5nZSkpCi0gICAgICAgICAgICAgICAgY2hhbmdlcyA9IHA0Q2hhbmdlc0ZvclBhdGhzKHNlbGYuZGVwb3RQYXRocywgc2VsZi5jaGFuZ2VSYW5nZSwgc2VsZi5jaGFuZ2VzX2Jsb2NrX3NpemUpCisgICAgICAgICAgICBpZiBzZWxmLmltcG9ydExhYmVsczoKKyAgICAgICAgICAgICAgICBwNExhYmVscyA9IGdldFA0TGFiZWxzKHNlbGYuZGVwb3RQYXRocykKKyAgICAgICAgICAgICAgICBnaXRUYWdzID0gZ2V0R2l0VGFncygpCiAKLSAgICAgICAgICAgICAgICBpZiBsZW4oc2VsZi5tYXhDaGFuZ2VzKSA+IDA6Ci0gICAgICAgICAgICAgICAgICAgIGNoYW5nZXMgPSBjaGFuZ2VzWzptaW4oaW50KHNlbGYubWF4Q2hhbmdlcyksIGxlbihjaGFuZ2VzKSldCisgICAgICAgICAgICAgICAgbWlzc2luZ1A0TGFiZWxzID0gcDRMYWJlbHMgLSBnaXRUYWdzCisgICAgICAgICAgICAgICAgc2VsZi5pbXBvcnRQNExhYmVscyhzZWxmLmdpdFN0cmVhbSwgbWlzc2luZ1A0TGFiZWxzKQogCi0gICAgICAgICAgICBpZiBsZW4oY2hhbmdlcykgPT0gMDoKLSAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5zaWxlbnQ6Ci0gICAgICAgICAgICAgICAgICAgIHByaW50KCJObyBjaGFuZ2VzIHRvIGltcG9ydCEiKQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5zaWxlbnQgYW5kIG5vdCBzZWxmLmRldGVjdEJyYW5jaGVzOgotICAgICAgICAgICAgICAgICAgICBwcmludCgiSW1wb3J0IGRlc3RpbmF0aW9uOiAlcyIgJSBzZWxmLmJyYW5jaCkKKyAgICAgICAgZXhjZXB0IFA0Q29tbWFuZEV4Y2VwdGlvbiBhcyBlOgorICAgICAgICAgICAgZXJyID0gZQogCi0gICAgICAgICAgICAgICAgc2VsZi51cGRhdGVkQnJhbmNoZXMgPSBzZXQoKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc2VsZi5jbG9zZVN0cmVhbXMoKQogCi0gICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuZGV0ZWN0QnJhbmNoZXM6Ci0gICAgICAgICAgICAgICAgICAgIGlmIGFyZ3M6Ci0gICAgICAgICAgICAgICAgICAgICAgICAjIHN0YXJ0IGEgbmV3IGJyYW5jaAotICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5pbml0aWFsUGFyZW50ID0gIiIKLSAgICAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgICAgICMgYnVpbGQgb24gYSBwcmV2aW91cyByZXZpc2lvbgotICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5pbml0aWFsUGFyZW50ID0gcGFyc2VSZXZpc2lvbihzZWxmLmJyYW5jaCkKLQotICAgICAgICAgICAgICAgIHNlbGYuaW1wb3J0Q2hhbmdlcyhjaGFuZ2VzKQotCi0gICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuc2lsZW50OgotICAgICAgICAgICAgICAgICAgICBwcmludCgiIikKLSAgICAgICAgICAgICAgICAgICAgaWYgbGVuKHNlbGYudXBkYXRlZEJyYW5jaGVzKSA+IDA6Ci0gICAgICAgICAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCJVcGRhdGVkIGJyYW5jaGVzOiAiKQotICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGIgaW4gc2VsZi51cGRhdGVkQnJhbmNoZXM6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgiJXMgIiAlIGIpCi0gICAgICAgICAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCJcbiIpCi0KLSAgICAgICAgaWYgZ2l0Q29uZmlnQm9vbCgiZ2l0LXA0LmltcG9ydExhYmVscyIpOgotICAgICAgICAgICAgc2VsZi5pbXBvcnRMYWJlbHMgPSBUcnVlCi0KLSAgICAgICAgaWYgc2VsZi5pbXBvcnRMYWJlbHM6Ci0gICAgICAgICAgICBwNExhYmVscyA9IGdldFA0TGFiZWxzKHNlbGYuZGVwb3RQYXRocykKLSAgICAgICAgICAgIGdpdFRhZ3MgPSBnZXRHaXRUYWdzKCkKLQotICAgICAgICAgICAgbWlzc2luZ1A0TGFiZWxzID0gcDRMYWJlbHMgLSBnaXRUYWdzCi0gICAgICAgICAgICBzZWxmLmltcG9ydFA0TGFiZWxzKHNlbGYuZ2l0U3RyZWFtLCBtaXNzaW5nUDRMYWJlbHMpCi0KLSAgICAgICAgc2VsZi5jbG9zZVN0cmVhbXMoKQorICAgICAgICBpZiBlcnI6CisgICAgICAgICAgICBkaWUoc3RyKGVycikpCiAKICAgICAgICAgIyBDbGVhbnVwIHRlbXBvcmFyeSBicmFuY2hlcyBjcmVhdGVkIGR1cmluZyBpbXBvcnQKICAgICAgICAgaWYgc2VsZi50ZW1wQnJhbmNoZXMgIT0gW106CkBAIC0zODg0LDcgKzM5OTMsNiBAQAogICAgICAgICAgICAgc2VsZi5jbG9uZURlc3RpbmF0aW9uID0gZGVwb3RQYXRoc1stMV0KICAgICAgICAgICAgIGRlcG90UGF0aHMgPSBkZXBvdFBhdGhzWzotMV0KIAotICAgICAgICBzZWxmLmNsb25lRXhjbHVkZSA9IFsiLyIrcCBmb3IgcCBpbiBzZWxmLmNsb25lRXhjbHVkZV0KICAgICAgICAgZm9yIHAgaW4gZGVwb3RQYXRoczoKICAgICAgICAgICAgIGlmIG5vdCBwLnN0YXJ0c3dpdGgoIi8vIik6CiAgICAgICAgICAgICAgICAgc3lzLnN0ZGVyci53cml0ZSgnRGVwb3QgcGF0aHMgbXVzdCBzdGFydCB3aXRoICIvLyI6ICVzXG4nICUgcCkKQEAgLTQxMjcsNyArNDIzNSwxMiBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiA9IGNtZC5kZXNjcmlwdGlvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0dGVyID0gSGVscEZvcm1hdHRlcigpKQogCi0gICAgKGNtZCwgYXJncykgPSBwYXJzZXIucGFyc2VfYXJncyhzeXMuYXJndlsyOl0sIGNtZCk7CisgICAgdHJ5OgorICAgICAgICAoY21kLCBhcmdzKSA9IHBhcnNlci5wYXJzZV9hcmdzKHN5cy5hcmd2WzI6XSwgY21kKTsKKyAgICBleGNlcHQ6CisgICAgICAgIHBhcnNlci5wcmludF9oZWxwKCkKKyAgICAgICAgcmFpc2UKKwogICAgIGdsb2JhbCB2ZXJib3NlCiAgICAgdmVyYm9zZSA9IGNtZC52ZXJib3NlCiAgICAgaWYgY21kLm5lZWRzR2l0OgpkaWZmIC0tZ2l0IGEvZ2l0LXF1aWx0aW1wb3J0LnNoIGIvZ2l0LXF1aWx0aW1wb3J0LnNoCmluZGV4IDZkM2E4OGQuLmUzZDM5MDkgMTAwNzU1Ci0tLSBhL2dpdC1xdWlsdGltcG9ydC5zaAorKysgYi9naXQtcXVpbHRpbXBvcnQuc2gKQEAgLTgsNiArOCw3IEBACiBhdXRob3I9ICAgICAgIGF1dGhvciBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIGZvciBwYXRjaGVzIHdpdGhvdXQgYW55CiBwYXRjaGVzPSAgICAgIHBhdGggdG8gdGhlIHF1aWx0IHBhdGNoZXMKIHNlcmllcz0gICAgICAgcGF0aCB0byB0aGUgcXVpbHQgc2VyaWVzIGZpbGUKK2tlZXAtbm9uLXBhdGNoIFBhc3MgLWIgdG8gZ2l0IG1haWxpbmZvCiAiCiBTVUJESVJFQ1RPUllfT049WWVzCiAuIGdpdC1zaC1zZXR1cApAQCAtMzIsNiArMzMsOSBAQAogCQlzaGlmdAogCQlRVUlMVF9TRVJJRVM9IiQxIgogCQk7OworCS0ta2VlcC1ub24tcGF0Y2gpCisJCU1BSUxJTkZPX09QVD0iLWIiCisJCTs7CiAJLS0pCiAJCXNoaWZ0CiAJCWJyZWFrOzsKQEAgLTk4LDcgKzEwMiw3IEBACiAJCWNvbnRpbnVlCiAJZmkKIAllY2hvICRwYXRjaF9uYW1lCi0JZ2l0IG1haWxpbmZvICIkdG1wX21zZyIgIiR0bXBfcGF0Y2giIFwKKwlnaXQgbWFpbGluZm8gJE1BSUxJTkZPX09QVCAiJHRtcF9tc2ciICIkdG1wX3BhdGNoIiBcCiAJCTwiJFFVSUxUX1BBVENIRVMvJHBhdGNoX25hbWUiID4iJHRtcF9pbmZvIiB8fCBleGl0IDMKIAl0ZXN0IC1zICIkdG1wX3BhdGNoIiB8fCB7CiAJCWVjaG8gIlBhdGNoIGlzIGVtcHR5LiAgV2FzIGl0IHNwbGl0IHdyb25nPyIKZGlmZiAtLWdpdCBhL2dpdC1yZWJhc2UtLWFtLnNoIGIvZ2l0LXJlYmFzZS0tYW0uc2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk5YjhjMTcuLjAwMDAwMDAKLS0tIGEvZ2l0LXJlYmFzZS0tYW0uc2gKKysrIC9kZXYvbnVsbApAQCAtMSw4NSArMCwwIEBACi0jIFRoaXMgc2hlbGwgc2NyaXB0IGZyYWdtZW50IGlzIHNvdXJjZWQgYnkgZ2l0LXJlYmFzZSB0byBpbXBsZW1lbnQKLSMgaXRzIGRlZmF1bHQsIGZhc3QsIHBhdGNoLWJhc2VkLCBub24taW50ZXJhY3RpdmUgbW9kZS4KLSMKLSMgQ29weXJpZ2h0IChjKSAyMDEwIEp1bmlvIEMgSGFtYW5vLgotIwotCi1naXRfcmViYXNlX19hbSAoKSB7Ci0KLWNhc2UgIiRhY3Rpb24iIGluCi1jb250aW51ZSkKLQlnaXQgYW0gLS1yZXNvbHZlZCAtLXJlc29sdmVtc2c9IiRyZXNvbHZlbXNnIiBcCi0JCSR7Z3BnX3NpZ25fb3B0OisiJGdwZ19zaWduX29wdCJ9ICYmCi0JbW92ZV90b19vcmlnaW5hbF9icmFuY2gKLQlyZXR1cm4KLQk7Owotc2tpcCkKLQlnaXQgYW0gLS1za2lwIC0tcmVzb2x2ZW1zZz0iJHJlc29sdmVtc2ciICYmCi0JbW92ZV90b19vcmlnaW5hbF9icmFuY2gKLQlyZXR1cm4KLQk7Owotc2hvdy1jdXJyZW50LXBhdGNoKQotCWV4ZWMgZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoCi0JOzsKLWVzYWMKLQotaWYgdGVzdCAteiAiJHJlYmFzZV9yb290IgotCSMgdGhpcyBpcyBub3cgZXF1aXZhbGVudCB0byAhIC16ICIkdXBzdHJlYW0iCi10aGVuCi0JcmV2aXNpb25zPSR1cHN0cmVhbS4uLiRvcmlnX2hlYWQKLWVsc2UKLQlyZXZpc2lvbnM9JG9udG8uLi4kb3JpZ19oZWFkCi1maQotCi1yZXQ9MAotcm0gLWYgIiRHSVRfRElSL3JlYmFzZWQtcGF0Y2hlcyIKLQotZ2l0IGZvcm1hdC1wYXRjaCAtayAtLXN0ZG91dCAtLWZ1bGwtaW5kZXggLS1jaGVycnktcGljayAtLXJpZ2h0LW9ubHkgXAotCS0tc3JjLXByZWZpeD1hLyAtLWRzdC1wcmVmaXg9Yi8gLS1uby1yZW5hbWVzIC0tbm8tY292ZXItbGV0dGVyIFwKLQktLXByZXR0eT1tYm94cmQgXAotCSRnaXRfZm9ybWF0X3BhdGNoX29wdCBcCi0JIiRyZXZpc2lvbnMiICR7cmVzdHJpY3RfcmV2aXNpb24rXiRyZXN0cmljdF9yZXZpc2lvbn0gXAotCT4iJEdJVF9ESVIvcmViYXNlZC1wYXRjaGVzIgotcmV0PSQ/Ci0KLWlmIHRlc3QgMCAhPSAkcmV0Ci10aGVuCi0Jcm0gLWYgIiRHSVRfRElSL3JlYmFzZWQtcGF0Y2hlcyIKLQljYXNlICIkaGVhZF9uYW1lIiBpbgotCXJlZnMvaGVhZHMvKikKLQkJZ2l0IGNoZWNrb3V0IC1xICIkaGVhZF9uYW1lIgotCQk7OwotCSopCi0JCWdpdCBjaGVja291dCAtcSAiJG9yaWdfaGVhZCIKLQkJOzsKLQllc2FjCi0KLQljYXQgPiYyIDw8LUVPRgotCi0JZ2l0IGVuY291bnRlcmVkIGFuIGVycm9yIHdoaWxlIHByZXBhcmluZyB0aGUgcGF0Y2hlcyB0byByZXBsYXkKLQl0aGVzZSByZXZpc2lvbnM6Ci0KLQkgICAgJHJldmlzaW9ucwotCi0JQXMgYSByZXN1bHQsIGdpdCBjYW5ub3QgcmViYXNlIHRoZW0uCi0JRU9GCi0JcmV0dXJuICRyZXQKLWZpCi0KLWdpdCBhbSAkZ2l0X2FtX29wdCAtLXJlYmFzaW5nIC0tcmVzb2x2ZW1zZz0iJHJlc29sdmVtc2ciIFwKLQktLXBhdGNoLWZvcm1hdD1tYm94cmQgXAotCSRhbGxvd19yZXJlcmVfYXV0b3VwZGF0ZSBcCi0JJHtncGdfc2lnbl9vcHQ6KyIkZ3BnX3NpZ25fb3B0In0gPCIkR0lUX0RJUi9yZWJhc2VkLXBhdGNoZXMiCi1yZXQ9JD8KLQotcm0gLWYgIiRHSVRfRElSL3JlYmFzZWQtcGF0Y2hlcyIKLQotaWYgdGVzdCAwICE9ICRyZXQKLXRoZW4KLQl0ZXN0IC1kICIkc3RhdGVfZGlyIiAmJiB3cml0ZV9iYXNpY19zdGF0ZQotCXJldHVybiAkcmV0Ci1maQotCi1tb3ZlX3RvX29yaWdpbmFsX2JyYW5jaAotCi19CmRpZmYgLS1naXQgYS9naXQtcmViYXNlLS1jb21tb24uc2ggYi9naXQtcmViYXNlLS1jb21tb24uc2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdlMzlkMjIuLjAwMDAwMDAKLS0tIGEvZ2l0LXJlYmFzZS0tY29tbW9uLnNoCisrKyAvZGV2L251bGwKQEAgLTEsNjggKzAsMCBAQAotCi1yZXNvbHZlbXNnPSIKLSQoZ2V0dGV4dCAnUmVzb2x2ZSBhbGwgY29uZmxpY3RzIG1hbnVhbGx5LCBtYXJrIHRoZW0gYXMgcmVzb2x2ZWQgd2l0aAotImdpdCBhZGQvcm0gPGNvbmZsaWN0ZWRfZmlsZXM+IiwgdGhlbiBydW4gImdpdCByZWJhc2UgLS1jb250aW51ZSIuCi1Zb3UgY2FuIGluc3RlYWQgc2tpcCB0aGlzIGNvbW1pdDogcnVuICJnaXQgcmViYXNlIC0tc2tpcCIuCi1UbyBhYm9ydCBhbmQgZ2V0IGJhY2sgdG8gdGhlIHN0YXRlIGJlZm9yZSAiZ2l0IHJlYmFzZSIsIHJ1biAiZ2l0IHJlYmFzZSAtLWFib3J0Ii4nKQotIgotCi13cml0ZV9iYXNpY19zdGF0ZSAoKSB7Ci0JZWNobyAiJGhlYWRfbmFtZSIgPiAiJHN0YXRlX2RpciIvaGVhZC1uYW1lICYmCi0JZWNobyAiJG9udG8iID4gIiRzdGF0ZV9kaXIiL29udG8gJiYKLQllY2hvICIkb3JpZ19oZWFkIiA+ICIkc3RhdGVfZGlyIi9vcmlnLWhlYWQgJiYKLQllY2hvICIkR0lUX1FVSUVUIiA+ICIkc3RhdGVfZGlyIi9xdWlldCAmJgotCXRlc3QgdCA9ICIkdmVyYm9zZSIgJiYgOiA+ICIkc3RhdGVfZGlyIi92ZXJib3NlCi0JdGVzdCAtbiAiJHN0cmF0ZWd5IiAmJiBlY2hvICIkc3RyYXRlZ3kiID4gIiRzdGF0ZV9kaXIiL3N0cmF0ZWd5Ci0JdGVzdCAtbiAiJHN0cmF0ZWd5X29wdHMiICYmIGVjaG8gIiRzdHJhdGVneV9vcHRzIiA+IFwKLQkJIiRzdGF0ZV9kaXIiL3N0cmF0ZWd5X29wdHMKLQl0ZXN0IC1uICIkYWxsb3dfcmVyZXJlX2F1dG91cGRhdGUiICYmIGVjaG8gIiRhbGxvd19yZXJlcmVfYXV0b3VwZGF0ZSIgPiBcCi0JCSIkc3RhdGVfZGlyIi9hbGxvd19yZXJlcmVfYXV0b3VwZGF0ZQotCXRlc3QgLW4gIiRncGdfc2lnbl9vcHQiICYmIGVjaG8gIiRncGdfc2lnbl9vcHQiID4gIiRzdGF0ZV9kaXIiL2dwZ19zaWduX29wdAotCXRlc3QgLW4gIiRzaWdub2ZmIiAmJiBlY2hvICIkc2lnbm9mZiIgPiIkc3RhdGVfZGlyIi9zaWdub2ZmCi19Ci0KLWFwcGx5X2F1dG9zdGFzaCAoKSB7Ci0JaWYgdGVzdCAtZiAiJHN0YXRlX2Rpci9hdXRvc3Rhc2giCi0JdGhlbgotCQlzdGFzaF9zaGExPSQoY2F0ICIkc3RhdGVfZGlyL2F1dG9zdGFzaCIpCi0JCWlmIGdpdCBzdGFzaCBhcHBseSAkc3Rhc2hfc2hhMSA+L2Rldi9udWxsIDI+JjEKLQkJdGhlbgotCQkJZWNobyAiJChnZXR0ZXh0ICdBcHBsaWVkIGF1dG9zdGFzaC4nKSIgPiYyCi0JCWVsc2UKLQkJCWdpdCBzdGFzaCBzdG9yZSAtbSAiYXV0b3N0YXNoIiAtcSAkc3Rhc2hfc2hhMSB8fAotCQkJZGllICIkKGV2YWxfZ2V0dGV4dCAiQ2Fubm90IHN0b3JlIFwkc3Rhc2hfc2hhMSIpIgotCQkJZ2V0dGV4dCAnQXBwbHlpbmcgYXV0b3N0YXNoIHJlc3VsdGVkIGluIGNvbmZsaWN0cy4KLVlvdXIgY2hhbmdlcyBhcmUgc2FmZSBpbiB0aGUgc3Rhc2guCi1Zb3UgY2FuIHJ1biAiZ2l0IHN0YXNoIHBvcCIgb3IgImdpdCBzdGFzaCBkcm9wIiBhdCBhbnkgdGltZS4KLScgPiYyCi0JCWZpCi0JZmkKLX0KLQotbW92ZV90b19vcmlnaW5hbF9icmFuY2ggKCkgewotCWNhc2UgIiRoZWFkX25hbWUiIGluCi0JcmVmcy8qKQotCQltZXNzYWdlPSJyZWJhc2UgZmluaXNoZWQ6ICRoZWFkX25hbWUgb250byAkb250byIKLQkJZ2l0IHVwZGF0ZS1yZWYgLW0gIiRtZXNzYWdlIiBcCi0JCQkkaGVhZF9uYW1lICQoZ2l0IHJldi1wYXJzZSBIRUFEKSAkb3JpZ19oZWFkICYmCi0JCWdpdCBzeW1ib2xpYy1yZWYgXAotCQkJLW0gInJlYmFzZSBmaW5pc2hlZDogcmV0dXJuaW5nIHRvICRoZWFkX25hbWUiIFwKLQkJCUhFQUQgJGhlYWRfbmFtZSB8fAotCQlkaWUgIiQoZXZhbF9nZXR0ZXh0ICJDb3VsZCBub3QgbW92ZSBiYWNrIHRvIFwkaGVhZF9uYW1lIikiCi0JCTs7Ci0JZXNhYwotfQotCi1vdXRwdXQgKCkgewotCWNhc2UgIiR2ZXJib3NlIiBpbgotCScnKQotCQlvdXRwdXQ9JCgiJEAiIDI+JjEgKQotCQlzdGF0dXM9JD8KLQkJdGVzdCAkc3RhdHVzICE9IDAgJiYgcHJpbnRmICIlc1xuIiAiJG91dHB1dCIKLQkJcmV0dXJuICRzdGF0dXMKLQkJOzsKLQkqKQotCQkiJEAiCi0JCTs7Ci0JZXNhYwotfQpkaWZmIC0tZ2l0IGEvZ2l0LXJlYmFzZS0tbWVyZ2Uuc2ggYi9naXQtcmViYXNlLS1tZXJnZS5zaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWEyZjJmMC4uMDAwMDAwMAotLS0gYS9naXQtcmViYXNlLS1tZXJnZS5zaAorKysgL2Rldi9udWxsCkBAIC0xLDE2NCArMCwwIEBACi0jIFRoaXMgc2hlbGwgc2NyaXB0IGZyYWdtZW50IGlzIHNvdXJjZWQgYnkgZ2l0LXJlYmFzZSB0byBpbXBsZW1lbnQKLSMgaXRzIG1lcmdlLWJhc2VkIG5vbi1pbnRlcmFjdGl2ZSBtb2RlIHRoYXQgY29wZXMgd2VsbCB3aXRoIHJlbmFtZWQKLSMgZmlsZXMuCi0jCi0jIENvcHlyaWdodCAoYykgMjAxMCBKdW5pbyBDIEhhbWFuby4KLSMKLQotcHJlYz00Ci0KLXJlYWRfc3RhdGUgKCkgewotCW9udG9fbmFtZT0kKGNhdCAiJHN0YXRlX2RpciIvb250b19uYW1lKSAmJgotCWVuZD0kKGNhdCAiJHN0YXRlX2RpciIvZW5kKSAmJgotCW1zZ251bT0kKGNhdCAiJHN0YXRlX2RpciIvbXNnbnVtKQotfQotCi1jb250aW51ZV9tZXJnZSAoKSB7Ci0JdGVzdCAtZCAiJHN0YXRlX2RpciIgfHwgZGllICIkc3RhdGVfZGlyIGRpcmVjdG9yeSBkb2VzIG5vdCBleGlzdCIKLQotCXVubWVyZ2VkPSQoZ2l0IGxzLWZpbGVzIC11KQotCWlmIHRlc3QgLW4gIiR1bm1lcmdlZCIKLQl0aGVuCi0JCWVjaG8gIllvdSBzdGlsbCBoYXZlIHVubWVyZ2VkIHBhdGhzIGluIHlvdXIgaW5kZXgiCi0JCWVjaG8gImRpZCB5b3UgZm9yZ2V0IHRvIHVzZSBnaXQgYWRkPyIKLQkJZGllICIkcmVzb2x2ZW1zZyIKLQlmaQotCi0JY210PSQoY2F0ICIkc3RhdGVfZGlyL2N1cnJlbnQiKQotCWlmICEgZ2l0IGRpZmYtaW5kZXggLS1xdWlldCAtLWlnbm9yZS1zdWJtb2R1bGVzIEhFQUQgLS0KLQl0aGVuCi0JCWlmICEgZ2l0IGNvbW1pdCAke2dwZ19zaWduX29wdDorIiRncGdfc2lnbl9vcHQifSAkc2lnbm9mZiAkYWxsb3dfZW1wdHlfbWVzc2FnZSBcCi0JCQktLW5vLXZlcmlmeSAtQyAiJGNtdCIKLQkJdGhlbgotCQkJZWNobyAiQ29tbWl0IGZhaWxlZCwgcGxlYXNlIGRvIG5vdCBjYWxsIFwiZ2l0IGNvbW1pdFwiIgotCQkJZWNobyAiZGlyZWN0bHksIGJ1dCBpbnN0ZWFkIGRvIG9uZSBvZiB0aGUgZm9sbG93aW5nOiAiCi0JCQlkaWUgIiRyZXNvbHZlbXNnIgotCQlmaQotCQlpZiB0ZXN0IC16ICIkR0lUX1FVSUVUIgotCQl0aGVuCi0JCQlwcmludGYgIkNvbW1pdHRlZDogJTAke3ByZWN9ZCAiICRtc2dudW0KLQkJZmkKLQkJZWNobyAiJGNtdCAkKGdpdCByZXYtcGFyc2UgSEVBRF4wKSIgPj4gIiRzdGF0ZV9kaXIvcmV3cml0dGVuIgotCWVsc2UKLQkJaWYgdGVzdCAteiAiJEdJVF9RVUlFVCIKLQkJdGhlbgotCQkJcHJpbnRmICJBbHJlYWR5IGFwcGxpZWQ6ICUwJHtwcmVjfWQgIiAkbXNnbnVtCi0JCWZpCi0JZmkKLQl0ZXN0IC16ICIkR0lUX1FVSUVUIiAmJgotCUdJVF9QQUdFUj0nJyBnaXQgbG9nIC0tZm9ybWF0PSVzIC0xICIkY210IgotCi0JIyBvbnRvIHRoZSBuZXh0IHBhdGNoOgotCW1zZ251bT0kKCgkbXNnbnVtICsgMSkpCi0JZWNobyAiJG1zZ251bSIgPiIkc3RhdGVfZGlyL21zZ251bSIKLX0KLQotY2FsbF9tZXJnZSAoKSB7Ci0JbXNnbnVtPSIkMSIKLQllY2hvICIkbXNnbnVtIiA+IiRzdGF0ZV9kaXIvbXNnbnVtIgotCWNtdD0iJChjYXQgIiRzdGF0ZV9kaXIvY210LiRtc2dudW0iKSIKLQllY2hvICIkY210IiA+ICIkc3RhdGVfZGlyL2N1cnJlbnQiCi0JZ2l0IHVwZGF0ZS1yZWYgUkVCQVNFX0hFQUQgIiRjbXQiCi0JaGQ9JChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IEhFQUQpCi0JY210X25hbWU9JChnaXQgc3ltYm9saWMtcmVmIEhFQUQgMj4gL2Rldi9udWxsIHx8IGVjaG8gSEVBRCkKLQlldmFsIEdJVEhFQURfJGNtdD0nIiR7Y210X25hbWUjI3JlZnMvaGVhZHMvfX4kKCgkZW5kIC0gJG1zZ251bSkpIicKLQlldmFsIEdJVEhFQURfJGhkPSckb250b19uYW1lJwotCWV4cG9ydCBHSVRIRUFEXyRjbXQgR0lUSEVBRF8kaGQKLQlpZiB0ZXN0IC1uICIkR0lUX1FVSUVUIgotCXRoZW4KLQkJR0lUX01FUkdFX1ZFUkJPU0lUWT0xICYmIGV4cG9ydCBHSVRfTUVSR0VfVkVSQk9TSVRZCi0JZmkKLQl0ZXN0IC16ICIkc3RyYXRlZ3kiICYmIHN0cmF0ZWd5PXJlY3Vyc2l2ZQotCSMgSWYgY210IGRvZXNuJ3QgaGF2ZSBhIHBhcmVudCwgZG9uJ3QgaW5jbHVkZSBpdCBhcyBhIGJhc2UKLQliYXNlPSQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSAtLXF1aWV0ICRjbXReKQotCWV2YWwgJ2dpdCBtZXJnZS0kc3RyYXRlZ3knICRzdHJhdGVneV9vcHRzICRiYXNlICcgLS0gIiRoZCIgIiRjbXQiJwotCXJ2PSQ/Ci0JY2FzZSAiJHJ2IiBpbgotCTApCi0JCXVuc2V0IEdJVEhFQURfJGNtdCBHSVRIRUFEXyRoZAotCQlyZXR1cm4KLQkJOzsKLQkxKQotCQlnaXQgcmVyZXJlICRhbGxvd19yZXJlcmVfYXV0b3VwZGF0ZQotCQlkaWUgIiRyZXNvbHZlbXNnIgotCQk7OwotCTIpCi0JCWVjaG8gIlN0cmF0ZWd5OiAkc3RyYXRlZ3kgZmFpbGVkLCB0cnkgYW5vdGhlciIgMT4mMgotCQlkaWUgIiRyZXNvbHZlbXNnIgotCQk7OwotCSopCi0JCWRpZSAiVW5rbm93biBleGl0IGNvZGUgKCRydikgZnJvbSBjb21tYW5kOiIgXAotCQkJImdpdCBtZXJnZS0kc3RyYXRlZ3kgJGNtdF4gLS0gSEVBRCAkY210IgotCQk7OwotCWVzYWMKLX0KLQotZmluaXNoX3JiX21lcmdlICgpIHsKLQltb3ZlX3RvX29yaWdpbmFsX2JyYW5jaAotCWlmIHRlc3QgLXMgIiRzdGF0ZV9kaXIiL3Jld3JpdHRlbgotCXRoZW4KLQkJZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZT1yZWJhc2UgPCIkc3RhdGVfZGlyIi9yZXdyaXR0ZW4KLQkJaG9vaz0iJChnaXQgcmV2LXBhcnNlIC0tZ2l0LXBhdGggaG9va3MvcG9zdC1yZXdyaXRlKSIKLQkJdGVzdCAteCAiJGhvb2siICYmICIkaG9vayIgcmViYXNlIDwiJHN0YXRlX2RpciIvcmV3cml0dGVuCi0JZmkKLQlzYXkgQWxsIGRvbmUuCi19Ci0KLWdpdF9yZWJhc2VfX21lcmdlICgpIHsKLQotY2FzZSAiJGFjdGlvbiIgaW4KLWNvbnRpbnVlKQotCXJlYWRfc3RhdGUKLQljb250aW51ZV9tZXJnZQotCXdoaWxlIHRlc3QgIiRtc2dudW0iIC1sZSAiJGVuZCIKLQlkbwotCQljYWxsX21lcmdlICIkbXNnbnVtIgotCQljb250aW51ZV9tZXJnZQotCWRvbmUKLQlmaW5pc2hfcmJfbWVyZ2UKLQlyZXR1cm4KLQk7Owotc2tpcCkKLQlyZWFkX3N0YXRlCi0JZ2l0IHJlcmVyZSBjbGVhcgotCW1zZ251bT0kKCgkbXNnbnVtICsgMSkpCi0Jd2hpbGUgdGVzdCAiJG1zZ251bSIgLWxlICIkZW5kIgotCWRvCi0JCWNhbGxfbWVyZ2UgIiRtc2dudW0iCi0JCWNvbnRpbnVlX21lcmdlCi0JZG9uZQotCWZpbmlzaF9yYl9tZXJnZQotCXJldHVybgotCTs7Ci1zaG93LWN1cnJlbnQtcGF0Y2gpCi0JZXhlYyBnaXQgc2hvdyBSRUJBU0VfSEVBRCAtLQotCTs7Ci1lc2FjCi0KLW1rZGlyIC1wICIkc3RhdGVfZGlyIgotZWNobyAiJG9udG9fbmFtZSIgPiAiJHN0YXRlX2Rpci9vbnRvX25hbWUiCi13cml0ZV9iYXNpY19zdGF0ZQotcm0gLWYgIiQoZ2l0IHJldi1wYXJzZSAtLWdpdC1wYXRoIFJFQkFTRV9IRUFEKSIKLQotbXNnbnVtPTAKLWZvciBjbXQgaW4gJChnaXQgcmV2LWxpc3QgLS1yZXZlcnNlIC0tbm8tbWVyZ2VzICIkcmV2aXNpb25zIikKLWRvCi0JbXNnbnVtPSQoKCRtc2dudW0gKyAxKSkKLQllY2hvICIkY210IiA+ICIkc3RhdGVfZGlyL2NtdC4kbXNnbnVtIgotZG9uZQotCi1lY2hvIDEgPiIkc3RhdGVfZGlyL21zZ251bSIKLWVjaG8gJG1zZ251bSA+IiRzdGF0ZV9kaXIvZW5kIgotCi1lbmQ9JG1zZ251bQotbXNnbnVtPTEKLQotd2hpbGUgdGVzdCAiJG1zZ251bSIgLWxlICIkZW5kIgotZG8KLQljYWxsX21lcmdlICIkbXNnbnVtIgotCWNvbnRpbnVlX21lcmdlCi1kb25lCi0KLWZpbmlzaF9yYl9tZXJnZQotCi19CmRpZmYgLS1naXQgYS9naXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2ggYi9naXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2gKaW5kZXggYWZiYjY1Ny4uZGVjOTBlOSAxMDA2NDQKLS0tIGEvZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoCisrKyBiL2dpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaApAQCAtNzcsNiArNzcsNjEgQEAKICMgYW5kIGxlYXZlcyBDUiBhdCB0aGUgZW5kIGluc3RlYWQuCiBjcj0kKHByaW50ZiAiXDAxNSIpCiAKK3Jlc29sdmVtc2c9IgorJChnZXR0ZXh0ICdSZXNvbHZlIGFsbCBjb25mbGljdHMgbWFudWFsbHksIG1hcmsgdGhlbSBhcyByZXNvbHZlZCB3aXRoCisiZ2l0IGFkZC9ybSA8Y29uZmxpY3RlZF9maWxlcz4iLCB0aGVuIHJ1biAiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIi4KK1lvdSBjYW4gaW5zdGVhZCBza2lwIHRoaXMgY29tbWl0OiBydW4gImdpdCByZWJhc2UgLS1za2lwIi4KK1RvIGFib3J0IGFuZCBnZXQgYmFjayB0byB0aGUgc3RhdGUgYmVmb3JlICJnaXQgcmViYXNlIiwgcnVuICJnaXQgcmViYXNlIC0tYWJvcnQiLicpCisiCisKK3dyaXRlX2Jhc2ljX3N0YXRlICgpIHsKKwllY2hvICIkaGVhZF9uYW1lIiA+ICIkc3RhdGVfZGlyIi9oZWFkLW5hbWUgJiYKKwllY2hvICIkb250byIgPiAiJHN0YXRlX2RpciIvb250byAmJgorCWVjaG8gIiRvcmlnX2hlYWQiID4gIiRzdGF0ZV9kaXIiL29yaWctaGVhZCAmJgorCXRlc3QgdCA9ICIkR0lUX1FVSUVUIiAmJiA6ID4gIiRzdGF0ZV9kaXIiL3F1aWV0CisJdGVzdCB0ID0gIiR2ZXJib3NlIiAmJiA6ID4gIiRzdGF0ZV9kaXIiL3ZlcmJvc2UKKwl0ZXN0IC1uICIkc3RyYXRlZ3kiICYmIGVjaG8gIiRzdHJhdGVneSIgPiAiJHN0YXRlX2RpciIvc3RyYXRlZ3kKKwl0ZXN0IC1uICIkc3RyYXRlZ3lfb3B0cyIgJiYgZWNobyAiJHN0cmF0ZWd5X29wdHMiID4gXAorCQkiJHN0YXRlX2RpciIvc3RyYXRlZ3lfb3B0cworCXRlc3QgLW4gIiRhbGxvd19yZXJlcmVfYXV0b3VwZGF0ZSIgJiYgZWNobyAiJGFsbG93X3JlcmVyZV9hdXRvdXBkYXRlIiA+IFwKKwkJIiRzdGF0ZV9kaXIiL2FsbG93X3JlcmVyZV9hdXRvdXBkYXRlCisJdGVzdCAtbiAiJGdwZ19zaWduX29wdCIgJiYgZWNobyAiJGdwZ19zaWduX29wdCIgPiAiJHN0YXRlX2RpciIvZ3BnX3NpZ25fb3B0CisJdGVzdCAtbiAiJHNpZ25vZmYiICYmIGVjaG8gIiRzaWdub2ZmIiA+IiRzdGF0ZV9kaXIiL3NpZ25vZmYKKwl0ZXN0IC1uICIkcmVzY2hlZHVsZV9mYWlsZWRfZXhlYyIgJiYgOiA+ICIkc3RhdGVfZGlyIi9yZXNjaGVkdWxlLWZhaWxlZC1leGVjCit9CisKK2FwcGx5X2F1dG9zdGFzaCAoKSB7CisJaWYgdGVzdCAtZiAiJHN0YXRlX2Rpci9hdXRvc3Rhc2giCisJdGhlbgorCQlzdGFzaF9zaGExPSQoY2F0ICIkc3RhdGVfZGlyL2F1dG9zdGFzaCIpCisJCWlmIGdpdCBzdGFzaCBhcHBseSAkc3Rhc2hfc2hhMSA+L2Rldi9udWxsIDI+JjEKKwkJdGhlbgorCQkJZWNobyAiJChnZXR0ZXh0ICdBcHBsaWVkIGF1dG9zdGFzaC4nKSIgPiYyCisJCWVsc2UKKwkJCWdpdCBzdGFzaCBzdG9yZSAtbSAiYXV0b3N0YXNoIiAtcSAkc3Rhc2hfc2hhMSB8fAorCQkJZGllICIkKGV2YWxfZ2V0dGV4dCAiQ2Fubm90IHN0b3JlIFwkc3Rhc2hfc2hhMSIpIgorCQkJZ2V0dGV4dCAnQXBwbHlpbmcgYXV0b3N0YXNoIHJlc3VsdGVkIGluIGNvbmZsaWN0cy4KK1lvdXIgY2hhbmdlcyBhcmUgc2FmZSBpbiB0aGUgc3Rhc2guCitZb3UgY2FuIHJ1biAiZ2l0IHN0YXNoIHBvcCIgb3IgImdpdCBzdGFzaCBkcm9wIiBhdCBhbnkgdGltZS4KKycgPiYyCisJCWZpCisJZmkKK30KKworb3V0cHV0ICgpIHsKKwljYXNlICIkdmVyYm9zZSIgaW4KKwknJykKKwkJb3V0cHV0PSQoIiRAIiAyPiYxICkKKwkJc3RhdHVzPSQ/CisJCXRlc3QgJHN0YXR1cyAhPSAwICYmIHByaW50ZiAiJXNcbiIgIiRvdXRwdXQiCisJCXJldHVybiAkc3RhdHVzCisJCTs7CisJKikKKwkJIiRAIgorCQk7OworCWVzYWMKK30KKwogc3RyYXRlZ3lfYXJncz0ke3N0cmF0ZWd5OistLXN0cmF0ZWd5PSRzdHJhdGVneX0KIHRlc3QgLW4gIiRzdHJhdGVneV9vcHRzIiAmJgogZXZhbCAnCmRpZmYgLS1naXQgYS9naXQtcmVxdWVzdC1wdWxsLnNoIGIvZ2l0LXJlcXVlc3QtcHVsbC5zaAppbmRleCAxM2MxNzJiLi4yZDBlNDQ2IDEwMDc1NQotLS0gYS9naXQtcmVxdWVzdC1wdWxsLnNoCisrKyBiL2dpdC1yZXF1ZXN0LXB1bGwuc2gKQEAgLTY1LDYgKzY1LDggQEAKIGhlYWRyZXY9JChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IC0tcXVpZXQgIiRoZWFkIl4wKQogdGVzdCAteiAiJGhlYWRyZXYiICYmIGRpZSAiZmF0YWw6IEFtYmlndW91cyByZXZpc2lvbjogJGxvY2FsIgogCitsb2NhbF9zaGExPSQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSAtLXF1aWV0ICIkaGVhZCIpCisKICMgV2FzIGl0IGEgYnJhbmNoIHdpdGggYSBkZXNjcmlwdGlvbj8KIGJyYW5jaF9uYW1lPSR7aGVhZCNyZWZzL2hlYWRzL30KIGlmIHRlc3QgInokYnJhbmNoX25hbWUiID0gInokaGVhZHJlZiIgfHwKQEAgLTc3LDQzICs3OSw1MyBAQAogZGllICJmYXRhbDogTm8gY29tbWl0cyBpbiBjb21tb24gYmV0d2VlbiAkYmFzZSBhbmQgJGhlYWQiCiAKICMgJGhlYWQgaXMgdGhlIHJlZm5hbWUgZnJvbSB0aGUgY29tbWFuZCBsaW5lLgotIyBJZiBhIHJlZiB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgJGhlYWQgZXhpc3RzIGF0IHRoZSByZW1vdGUKLSMgYW5kIHRoZWlyIHZhbHVlcyBtYXRjaCwgdXNlIHRoYXQuCi0jCi0jIE90aGVyd2lzZSBmaW5kIGEgcmFuZG9tIHJlZiB0aGF0IG1hdGNoZXMgJGhlYWRyZXYuCisjIEZpbmQgYSByZWYgd2l0aCB0aGUgc2FtZSBuYW1lIGFzICRoZWFkIHRoYXQgZXhpc3RzIGF0IHRoZSByZW1vdGUKKyMgYW5kIHBvaW50cyB0byB0aGUgc2FtZSBjb21taXQgYXMgdGhlIGxvY2FsIG9iamVjdC4KIGZpbmRfbWF0Y2hpbmdfcmVmPScKIAlteSAoJGhlYWQsJGhlYWRyZXYpID0gKEBBUkdWKTsKLQlteSAoJGZvdW5kKTsKKwlteSAkcGF0dGVybiA9IHFyey9cUSRoZWFkXEUkfTsKKwlteSAoJHJlbW90ZV9zaGExLCAkZm91bmQpOwogCiAJd2hpbGUgKDxTVERJTj4pIHsKIAkJY2hvbXA7CiAJCW15ICgkc2hhMSwgJHJlZiwgJGRlcmVmKSA9IC9eKFxTKylccysoW15eXSspKFxTKikkLzsKLQkJbXkgKCRwYXR0ZXJuKTsKLQkJbmV4dCB1bmxlc3MgKCRzaGExIGVxICRoZWFkcmV2KTsKIAotCQkkcGF0dGVybj0iLyRoZWFkXCQiOwotCQlpZiAoJHJlZiBlcSAkaGVhZCkgewotCQkJJGZvdW5kID0gJHJlZjsKLQkJfQotCQlpZiAoJHJlZiA9fiAvJHBhdHRlcm4vKSB7Ci0JCQkkZm91bmQgPSAkcmVmOwotCQl9CiAJCWlmICgkc2hhMSBlcSAkaGVhZCkgewotCQkJJGZvdW5kID0gJHNoYTE7CisJCQkkZm91bmQgPSAkcmVtb3RlX3NoYTEgPSAkc2hhMTsKKwkJCWJyZWFrOworCQl9CisKKwkJaWYgKCRyZWYgZXEgJGhlYWQgfHwgJHJlZiA9fiAkcGF0dGVybikgeworCQkJaWYgKCRkZXJlZiBlcSAiIikgeworCQkJCSMgUmVtZW1iZXIgdGhlIG1hdGNoaW5nIG9iamVjdCBvbiB0aGUgcmVtb3RlIHNpZGUKKwkJCQkkcmVtb3RlX3NoYTEgPSAkc2hhMTsKKwkJCX0KKwkJCWlmICgkc2hhMSBlcSAkaGVhZHJldikgeworCQkJCSRmb3VuZCA9ICRyZWY7CisJCQkJYnJlYWs7CisJCQl9CiAJCX0KIAl9CiAJaWYgKCRmb3VuZCkgewotCQlwcmludCAiJGZvdW5kXG4iOworCQkkcmVtb3RlX3NoYTEgPSAkaGVhZHJldiBpZiAhIGRlZmluZWQgJHJlbW90ZV9zaGExOworCQlwcmludCAiJHJlbW90ZV9zaGExICRmb3VuZFxuIjsKIAl9CiAnCiAKLXJlZj0kKGdpdCBscy1yZW1vdGUgIiR1cmwiIHwgQEBQRVJMQEAgLWUgIiRmaW5kX21hdGNoaW5nX3JlZiIgIiR7cmVtb3RlOi1IRUFEfSIgIiRoZWFkcmV2IikKK3NldCBmbm9yZCAkKGdpdCBscy1yZW1vdGUgIiR1cmwiIHwgQEBQRVJMQEAgLWUgIiRmaW5kX21hdGNoaW5nX3JlZiIgIiR7cmVtb3RlOi1IRUFEfSIgIiRoZWFkcmV2IikKK3JlbW90ZV9zaGExPSQyCityZWY9JDMKIAogaWYgdGVzdCAteiAiJHJlZiIKIHRoZW4KIAllY2hvICJ3YXJuOiBObyBtYXRjaCBmb3IgY29tbWl0ICRoZWFkcmV2IGZvdW5kIGF0ICR1cmwiID4mMgogCWVjaG8gIndhcm46IEFyZSB5b3Ugc3VyZSB5b3UgcHVzaGVkICcke3JlbW90ZTotSEVBRH0nIHRoZXJlPyIgPiYyCiAJc3RhdHVzPTEKK2VsaWYgdGVzdCAiJGxvY2FsX3NoYTEiICE9ICIkcmVtb3RlX3NoYTEiCit0aGVuCisJZWNobyAid2FybjogJGhlYWQgZm91bmQgYXQgJHVybCBidXQgcG9pbnRzIHRvIGEgZGlmZmVyZW50IG9iamVjdCIgPiYyCisJZWNobyAid2FybjogQXJlIHlvdSBzdXJlIHlvdSBwdXNoZWQgJyR7cmVtb3RlOi1IRUFEfScgdGhlcmU/IiA+JjIKKwlzdGF0dXM9MQogZmkKIAogIyBTcGVjaWFsIGNhc2U6IHR1cm4gImZvcl9saW51cyIgdG8gInRhZ3MvZm9yX2xpbnVzIiB3aGVuIGl0IGlzIGNvcnJlY3QKZGlmZiAtLWdpdCBhL2dpdC1zZW5kLWVtYWlsLnBlcmwgYi9naXQtc2VuZC1lbWFpbC5wZXJsCmluZGV4IDhlYjYzYjUuLmRjOTU2NTYgMTAwNzU1Ci0tLSBhL2dpdC1zZW5kLWVtYWlsLnBlcmwKKysrIGIvZ2l0LXNlbmQtZW1haWwucGVybApAQCAtMTc3LDExICsxNzcsMTUgQEAKIG15ICRyZV9lbmNvZGVkX3dvcmQgPSBxci89XD8oJHJlX3Rva2VuKVw/KCRyZV90b2tlbilcPygkcmVfZW5jb2RlZF90ZXh0KVw/PS87CiAKICMgVmFyaWFibGVzIHdlIGZpbGwgaW4gYXV0b21hdGljYWxseSwgb3IgdmlhIHByb21wdGluZzoKLW15IChAdG8sJG5vX3RvLEBpbml0aWFsX3RvLEBjYywkbm9fY2MsQGluaXRpYWxfY2MsQGJjY2xpc3QsJG5vX2JjYyxAeGgsCitteSAoQHRvLEBjYyxAeGgsJGVudmVsb3BlX3NlbmRlciwKIAkkaW5pdGlhbF9pbl9yZXBseV90bywkcmVwbHlfdG8sJGluaXRpYWxfc3ViamVjdCxAZmlsZXMsCi0JJGF1dGhvciwkc2VuZGVyLCRzbXRwX2F1dGhwYXNzLCRhbm5vdGF0ZSwkdXNlX3htYWlsZXIsJGNvbXBvc2UsJHRpbWUpOwotCi1teSAkZW52ZWxvcGVfc2VuZGVyOworCSRhdXRob3IsJHNlbmRlciwkc210cF9hdXRocGFzcywkYW5ub3RhdGUsJGNvbXBvc2UsJHRpbWUpOworIyBUaGluZ3Mgd2UgZWl0aGVyIGdldCBmcm9tIGNvbmZpZywgKm9yKiBhcmUgb3ZlcnJpZGRlbiBvbiB0aGUKKyMgY29tbWFuZC1saW5lLgorbXkgKCRub19jYywgJG5vX3RvLCAkbm9fYmNjLCAkbm9faWRlbnRpdHkpOworbXkgKEBjb25maWdfdG8sIEBnZXRvcHRfdG8pOworbXkgKEBjb25maWdfY2MsIEBnZXRvcHRfY2MpOworbXkgKEBjb25maWdfYmNjLCBAZ2V0b3B0X2JjYyk7CiAKICMgRXhhbXBsZSByZXBseSB0bzoKICMkaW5pdGlhbF9pbl9yZXBseV90byA9ICcnOyAjPDIwMDUwMjAzMTczMjA4LkdBMjM5NjRAZm9vYmFyLmNvbT4nOwpAQCAtMjI4LDMzICsyMzIsMzcgQEAKIH0KIAogIyBWYXJpYWJsZXMgd2l0aCBjb3JyZXNwb25kaW5nIGNvbmZpZyBzZXR0aW5ncwotbXkgKCR0aHJlYWQsICRjaGFpbl9yZXBseV90bywgJHN1cHByZXNzX2Zyb20sICRzaWduZWRfb2ZmX2J5X2NjKTsKK215ICgkc3VwcHJlc3NfZnJvbSwgJHNpZ25lZF9vZmZfYnlfY2MpOwogbXkgKCRjb3Zlcl9jYywgJGNvdmVyX3RvKTsKIG15ICgkdG9fY21kLCAkY2NfY21kKTsKIG15ICgkc210cF9zZXJ2ZXIsICRzbXRwX3NlcnZlcl9wb3J0LCBAc210cF9zZXJ2ZXJfb3B0aW9ucyk7CiBteSAoJHNtdHBfYXV0aHVzZXIsICRzbXRwX2VuY3J5cHRpb24sICRzbXRwX3NzbF9jZXJ0X3BhdGgpOwogbXkgKCRiYXRjaF9zaXplLCAkcmVsb2dpbl9kZWxheSk7CiBteSAoJGlkZW50aXR5LCAkYWxpYXNmaWxldHlwZSwgQGFsaWFzX2ZpbGVzLCAkc210cF9kb21haW4sICRzbXRwX2F1dGgpOwotbXkgKCR2YWxpZGF0ZSwgJGNvbmZpcm0pOworbXkgKCRjb25maXJtKTsKIG15IChAc3VwcHJlc3NfY2MpOwogbXkgKCRhdXRvXzhiaXRfZW5jb2RpbmcpOwogbXkgKCRjb21wb3NlX2VuY29kaW5nKTsKKyMgVmFyaWFibGVzIHdpdGggY29ycmVzcG9uZGluZyBjb25maWcgc2V0dGluZ3MgJiBoYXJkY29kZWQgZGVmYXVsdHMKK215ICgkZGVidWdfbmV0X3NtdHApID0gMDsJCSMgTmV0OjpTTVRQLCBzZWUgc2VuZF9tZXNzYWdlKCkKK215ICR0aHJlYWQgPSAxOworbXkgJGNoYWluX3JlcGx5X3RvID0gMDsKK215ICR1c2VfeG1haWxlciA9IDE7CitteSAkdmFsaWRhdGUgPSAxOwogbXkgJHRhcmdldF94ZmVyX2VuY29kaW5nID0gJ2F1dG8nOwogCi1teSAoJGRlYnVnX25ldF9zbXRwKSA9IDA7CQkjIE5ldDo6U01UUCwgc2VlIHNlbmRfbWVzc2FnZSgpCi0KIG15ICVjb25maWdfYm9vbF9zZXR0aW5ncyA9ICgKLSAgICAidGhyZWFkIiA9PiBbXCR0aHJlYWQsIDFdLAotICAgICJjaGFpbnJlcGx5dG8iID0+IFtcJGNoYWluX3JlcGx5X3RvLCAwXSwKLSAgICAic3VwcHJlc3Nmcm9tIiA9PiBbXCRzdXBwcmVzc19mcm9tLCB1bmRlZl0sCi0gICAgInNpZ25lZG9mZmJ5Y2MiID0+IFtcJHNpZ25lZF9vZmZfYnlfY2MsIHVuZGVmXSwKLSAgICAiY2Njb3ZlciIgPT4gW1wkY292ZXJfY2MsIHVuZGVmXSwKLSAgICAidG9jb3ZlciIgPT4gW1wkY292ZXJfdG8sIHVuZGVmXSwKLSAgICAic2lnbmVkb2ZmY2MiID0+IFtcJHNpZ25lZF9vZmZfYnlfY2MsIHVuZGVmXSwgICAgICAjIERlcHJlY2F0ZWQKLSAgICAidmFsaWRhdGUiID0+IFtcJHZhbGlkYXRlLCAxXSwKLSAgICAibXVsdGllZGl0IiA9PiBbXCRtdWx0aWVkaXQsIHVuZGVmXSwKLSAgICAiYW5ub3RhdGUiID0+IFtcJGFubm90YXRlLCB1bmRlZl0sCi0gICAgInhtYWlsZXIiID0+IFtcJHVzZV94bWFpbGVyLCAxXQorICAgICJ0aHJlYWQiID0+IFwkdGhyZWFkLAorICAgICJjaGFpbnJlcGx5dG8iID0+IFwkY2hhaW5fcmVwbHlfdG8sCisgICAgInN1cHByZXNzZnJvbSIgPT4gXCRzdXBwcmVzc19mcm9tLAorICAgICJzaWduZWRvZmZieWNjIiA9PiBcJHNpZ25lZF9vZmZfYnlfY2MsCisgICAgImNjY292ZXIiID0+IFwkY292ZXJfY2MsCisgICAgInRvY292ZXIiID0+IFwkY292ZXJfdG8sCisgICAgInNpZ25lZG9mZmNjIiA9PiBcJHNpZ25lZF9vZmZfYnlfY2MsCisgICAgInZhbGlkYXRlIiA9PiBcJHZhbGlkYXRlLAorICAgICJtdWx0aWVkaXQiID0+IFwkbXVsdGllZGl0LAorICAgICJhbm5vdGF0ZSIgPT4gXCRhbm5vdGF0ZSwKKyAgICAieG1haWxlciIgPT4gXCR1c2VfeG1haWxlciwKICk7CiAKIG15ICVjb25maWdfc2V0dGluZ3MgPSAoCkBAIC0yNjcsMTIgKzI3NSwxMiBAQAogICAgICJzbXRwYXV0aCIgPT4gXCRzbXRwX2F1dGgsCiAgICAgInNtdHBiYXRjaHNpemUiID0+IFwkYmF0Y2hfc2l6ZSwKICAgICAic210cHJlbG9naW5kZWxheSIgPT4gXCRyZWxvZ2luX2RlbGF5LAotICAgICJ0byIgPT4gXEBpbml0aWFsX3RvLAorICAgICJ0byIgPT4gXEBjb25maWdfdG8sCiAgICAgInRvY21kIiA9PiBcJHRvX2NtZCwKLSAgICAiY2MiID0+IFxAaW5pdGlhbF9jYywKKyAgICAiY2MiID0+IFxAY29uZmlnX2NjLAogICAgICJjY2NtZCIgPT4gXCRjY19jbWQsCiAgICAgImFsaWFzZmlsZXR5cGUiID0+IFwkYWxpYXNmaWxldHlwZSwKLSAgICAiYmNjIiA9PiBcQGJjY2xpc3QsCisgICAgImJjYyIgPT4gXEBjb25maWdfYmNjLAogICAgICJzdXBwcmVzc2NjIiA9PiBcQHN1cHByZXNzX2NjLAogICAgICJlbnZlbG9wZXNlbmRlciIgPT4gXCRlbnZlbG9wZV9zZW5kZXIsCiAgICAgImNvbmZpcm0iICAgPT4gXCRjb25maXJtLApAQCAtMzE1LDEzICszMjMsODcgQEAKICRTSUd7VEVSTX0gPSBcJnNpZ25hbF9oYW5kbGVyOwogJFNJR3tJTlR9ICA9IFwmc2lnbmFsX2hhbmRsZXI7CiAKKyMgUmVhZCBvdXIgc2VuZGVtYWlsLiogY29uZmlnCitzdWIgcmVhZF9jb25maWcgeworCW15ICgkY29uZmlndXJlZCwgJHByZWZpeCkgPSBAXzsKKworCWZvcmVhY2ggbXkgJHNldHRpbmcgKGtleXMgJWNvbmZpZ19ib29sX3NldHRpbmdzKSB7CisJCW15ICR0YXJnZXQgPSAkY29uZmlnX2Jvb2xfc2V0dGluZ3N7JHNldHRpbmd9OworCQlteSAkdiA9IEdpdDo6Y29uZmlnX2Jvb2woQHJlcG8sICIkcHJlZml4LiRzZXR0aW5nIik7CisJCW5leHQgdW5sZXNzIGRlZmluZWQgJHY7CisJCW5leHQgaWYgJGNvbmZpZ3VyZWQtPnskc2V0dGluZ30rKzsKKwkJJCR0YXJnZXQgPSAkdjsKKwl9CisKKwlmb3JlYWNoIG15ICRzZXR0aW5nIChrZXlzICVjb25maWdfcGF0aF9zZXR0aW5ncykgeworCQlteSAkdGFyZ2V0ID0gJGNvbmZpZ19wYXRoX3NldHRpbmdzeyRzZXR0aW5nfTsKKwkJaWYgKHJlZigkdGFyZ2V0KSBlcSAiQVJSQVkiKSB7CisJCQlteSBAdmFsdWVzID0gR2l0Ojpjb25maWdfcGF0aChAcmVwbywgIiRwcmVmaXguJHNldHRpbmciKTsKKwkJCW5leHQgdW5sZXNzIEB2YWx1ZXM7CisJCQluZXh0IGlmICRjb25maWd1cmVkLT57JHNldHRpbmd9Kys7CisJCQlAJHRhcmdldCA9IEB2YWx1ZXM7CisJCX0KKwkJZWxzZSB7CisJCQlteSAkdiA9IEdpdDo6Y29uZmlnX3BhdGgoQHJlcG8sICIkcHJlZml4LiRzZXR0aW5nIik7CisJCQluZXh0IHVubGVzcyBkZWZpbmVkICR2OworCQkJbmV4dCBpZiAkY29uZmlndXJlZC0+eyRzZXR0aW5nfSsrOworCQkJJCR0YXJnZXQgPSAkdjsKKwkJfQorCX0KKworCWZvcmVhY2ggbXkgJHNldHRpbmcgKGtleXMgJWNvbmZpZ19zZXR0aW5ncykgeworCQlteSAkdGFyZ2V0ID0gJGNvbmZpZ19zZXR0aW5nc3skc2V0dGluZ307CisJCWlmIChyZWYoJHRhcmdldCkgZXEgIkFSUkFZIikgeworCQkJbXkgQHZhbHVlcyA9IEdpdDo6Y29uZmlnKEByZXBvLCAiJHByZWZpeC4kc2V0dGluZyIpOworCQkJbmV4dCB1bmxlc3MgQHZhbHVlczsKKwkJCW5leHQgaWYgJGNvbmZpZ3VyZWQtPnskc2V0dGluZ30rKzsKKwkJCUAkdGFyZ2V0ID0gQHZhbHVlczsKKwkJfQorCQllbHNlIHsKKwkJCW15ICR2ID0gR2l0Ojpjb25maWcoQHJlcG8sICIkcHJlZml4LiRzZXR0aW5nIik7CisJCQluZXh0IHVubGVzcyBkZWZpbmVkICR2OworCQkJbmV4dCBpZiAkY29uZmlndXJlZC0+eyRzZXR0aW5nfSsrOworCQkJJCR0YXJnZXQgPSAkdjsKKwkJfQorCX0KKworCWlmICghZGVmaW5lZCAkc210cF9lbmNyeXB0aW9uKSB7CisJCW15ICRzZXR0aW5nID0gIiRwcmVmaXguc210cGVuY3J5cHRpb24iOworCQlteSAkZW5jID0gR2l0Ojpjb25maWcoQHJlcG8sICRzZXR0aW5nKTsKKwkJcmV0dXJuIHVubGVzcyBkZWZpbmVkICRlbmM7CisJCXJldHVybiBpZiAkY29uZmlndXJlZC0+eyRzZXR0aW5nfSsrOworCQlpZiAoZGVmaW5lZCAkZW5jKSB7CisJCQkkc210cF9lbmNyeXB0aW9uID0gJGVuYzsKKwkJfSBlbHNpZiAoR2l0Ojpjb25maWdfYm9vbChAcmVwbywgIiRwcmVmaXguc210cHNzbCIpKSB7CisJCQkkc210cF9lbmNyeXB0aW9uID0gJ3NzbCc7CisJCX0KKwl9Cit9CisKKyMgc2VuZGVtYWlsLmlkZW50aXR5IHlpZWxkcyB0byAtLWlkZW50aXR5LiBXZSBtdXN0IHBhcnNlIHRoaXMKKyMgc3BlY2lhbC1jYXNlIGZpcnN0IGJlZm9yZSB0aGUgcmVzdCBvZiB0aGUgY29uZmlnIGlzIHJlYWQuCiskaWRlbnRpdHkgPSBHaXQ6OmNvbmZpZyhAcmVwbywgInNlbmRlbWFpbC5pZGVudGl0eSIpOworbXkgJHJjID0gR2V0T3B0aW9ucygKKwkiaWRlbnRpdHk9cyIgPT4gXCRpZGVudGl0eSwKKwkibm8taWRlbnRpdHkiID0+IFwkbm9faWRlbnRpdHksCispOwordXNhZ2UoKSB1bmxlc3MgJHJjOwordW5kZWYgJGlkZW50aXR5IGlmICRub19pZGVudGl0eTsKKworIyBOb3cgd2Uga25vdyBlbm91Z2ggdG8gcmVhZCB0aGUgY29uZmlnCit7CisgICAgbXkgJWNvbmZpZ3VyZWQ7CisgICAgcmVhZF9jb25maWcoXCVjb25maWd1cmVkLCAic2VuZGVtYWlsLiRpZGVudGl0eSIpIGlmIGRlZmluZWQgJGlkZW50aXR5OworICAgIHJlYWRfY29uZmlnKFwlY29uZmlndXJlZCwgInNlbmRlbWFpbCIpOworfQorCiAjIEJlZ2luIGJ5IGFjY3VtdWxhdGluZyBhbGwgdGhlIHZhcmlhYmxlcyAoZGVmaW5lZCBhYm92ZSksIHRoYXQgd2Ugd2lsbCBlbmQgdXAKICMgbmVlZGluZywgZmlyc3QsIGZyb20gdGhlIGNvbW1hbmQgbGluZToKIAogbXkgJGhlbHA7CiBteSAkZ2l0X2NvbXBsZXRpb25faGVscGVyOwotbXkgJHJjID0gR2V0T3B0aW9ucygiaCIgPT4gXCRoZWxwLAotICAgICAgICAgICAgICAgICAgICAiZHVtcC1hbGlhc2VzIiA9PiBcJGR1bXBfYWxpYXNlcyk7CiskcmMgPSBHZXRPcHRpb25zKCJoIiA9PiBcJGhlbHAsCisgICAgICAgICAgICAgICAgICJkdW1wLWFsaWFzZXMiID0+IFwkZHVtcF9hbGlhc2VzKTsKIHVzYWdlKCkgdW5sZXNzICRyYzsKIGRpZSBfXygiLS1kdW1wLWFsaWFzZXMgaW5jb21wYXRpYmxlIHdpdGggb3RoZXIgb3B0aW9uc1xuIikKICAgICBpZiAhJGhlbHAgYW5kICRkdW1wX2FsaWFzZXMgYW5kIEBBUkdWOwpAQCAtMzMwLDEyICs0MTIsMTIgQEAKICAgICAgICAgICAgICAgICAgICAgImluLXJlcGx5LXRvPXMiID0+IFwkaW5pdGlhbF9pbl9yZXBseV90bywKIAkJICAgICJyZXBseS10bz1zIiA9PiBcJHJlcGx5X3RvLAogCQkgICAgInN1YmplY3Q9cyIgPT4gXCRpbml0aWFsX3N1YmplY3QsCi0JCSAgICAidG89cyIgPT4gXEBpbml0aWFsX3RvLAorCQkgICAgInRvPXMiID0+IFxAZ2V0b3B0X3RvLAogCQkgICAgInRvLWNtZD1zIiA9PiBcJHRvX2NtZCwKIAkJICAgICJuby10byIgPT4gXCRub190bywKLQkJICAgICJjYz1zIiA9PiBcQGluaXRpYWxfY2MsCisJCSAgICAiY2M9cyIgPT4gXEBnZXRvcHRfY2MsCiAJCSAgICAibm8tY2MiID0+IFwkbm9fY2MsCi0JCSAgICAiYmNjPXMiID0+IFxAYmNjbGlzdCwKKwkJICAgICJiY2M9cyIgPT4gXEBnZXRvcHRfYmNjLAogCQkgICAgIm5vLWJjYyIgPT4gXCRub19iY2MsCiAJCSAgICAiY2hhaW4tcmVwbHktdG8hIiA9PiBcJGNoYWluX3JlcGx5X3RvLAogCQkgICAgIm5vLWNoYWluLXJlcGx5LXRvIiA9PiBzdWIgeyRjaGFpbl9yZXBseV90byA9IDB9LApAQCAtMzUxLDcgKzQzMyw2IEBACiAJCSAgICAic210cC1kb21haW46cyIgPT4gXCRzbXRwX2RvbWFpbiwKIAkJICAgICJzbXRwLWF1dGg9cyIgPT4gXCRzbXRwX2F1dGgsCiAJCSAgICAibm8tc210cC1hdXRoIiA9PiBzdWIgeyRzbXRwX2F1dGggPSAnbm9uZSd9LAotCQkgICAgImlkZW50aXR5PXMiID0+IFwkaWRlbnRpdHksCiAJCSAgICAiYW5ub3RhdGUhIiA9PiBcJGFubm90YXRlLAogCQkgICAgIm5vLWFubm90YXRlIiA9PiBzdWIgeyRhbm5vdGF0ZSA9IDB9LAogCQkgICAgImNvbXBvc2UiID0+IFwkY29tcG9zZSwKQEAgLTM4Niw2ICs0NjcsMTEgQEAKIAkJICAgICJnaXQtY29tcGxldGlvbi1oZWxwZXIiID0+IFwkZ2l0X2NvbXBsZXRpb25faGVscGVyLAogCSApOwogCisjIE11bmdlIGFueSAiZWl0aGVyIGNvbmZpZyBvciBnZXRvcHQsIG5vdCBib3RoIiB2YXJpYWJsZXMKK215IEBpbml0aWFsX3RvID0gQGdldG9wdF90byA/IEBnZXRvcHRfdG8gOiAoJG5vX3RvID8gKCkgOiBAY29uZmlnX3RvKTsKK215IEBpbml0aWFsX2NjID0gQGdldG9wdF9jYyA/IEBnZXRvcHRfY2MgOiAoJG5vX2NjID8gKCkgOiBAY29uZmlnX2NjKTsKK215IEBpbml0aWFsX2JjYyA9IEBnZXRvcHRfYmNjID8gQGdldG9wdF9iY2MgOiAoJG5vX2JjYyA/ICgpIDogQGNvbmZpZ19iY2MpOworCiB1c2FnZSgpIGlmICRoZWxwOwogY29tcGxldGlvbl9oZWxwZXIoKSBpZiAkZ2l0X2NvbXBsZXRpb25faGVscGVyOwogdW5sZXNzICgkcmMpIHsKQEAgLTM5OSw2NSArNDg1LDYgQEAKIAkiKHZpYSBjb21tYW5kLWxpbmUgb3IgY29uZmlndXJhdGlvbiBvcHRpb24pXG4iKQogCWlmIGRlZmluZWQgJHJlbG9naW5fZGVsYXkgYW5kIG5vdCBkZWZpbmVkICRiYXRjaF9zaXplOwogCi0jIE5vdywgbGV0J3MgZmlsbCBhbnkgdGhhdCBhcmVuJ3Qgc2V0IGluIHdpdGggZGVmYXVsdHM6Ci0KLXN1YiByZWFkX2NvbmZpZyB7Ci0JbXkgKCRwcmVmaXgpID0gQF87Ci0KLQlmb3JlYWNoIG15ICRzZXR0aW5nIChrZXlzICVjb25maWdfYm9vbF9zZXR0aW5ncykgewotCQlteSAkdGFyZ2V0ID0gJGNvbmZpZ19ib29sX3NldHRpbmdzeyRzZXR0aW5nfS0+WzBdOwotCQkkJHRhcmdldCA9IEdpdDo6Y29uZmlnX2Jvb2woQHJlcG8sICIkcHJlZml4LiRzZXR0aW5nIikgdW5sZXNzIChkZWZpbmVkICQkdGFyZ2V0KTsKLQl9Ci0KLQlmb3JlYWNoIG15ICRzZXR0aW5nIChrZXlzICVjb25maWdfcGF0aF9zZXR0aW5ncykgewotCQlteSAkdGFyZ2V0ID0gJGNvbmZpZ19wYXRoX3NldHRpbmdzeyRzZXR0aW5nfTsKLQkJaWYgKHJlZigkdGFyZ2V0KSBlcSAiQVJSQVkiKSB7Ci0JCQl1bmxlc3MgKEAkdGFyZ2V0KSB7Ci0JCQkJbXkgQHZhbHVlcyA9IEdpdDo6Y29uZmlnX3BhdGgoQHJlcG8sICIkcHJlZml4LiRzZXR0aW5nIik7Ci0JCQkJQCR0YXJnZXQgPSBAdmFsdWVzIGlmIChAdmFsdWVzICYmIGRlZmluZWQgJHZhbHVlc1swXSk7Ci0JCQl9Ci0JCX0KLQkJZWxzZSB7Ci0JCQkkJHRhcmdldCA9IEdpdDo6Y29uZmlnX3BhdGgoQHJlcG8sICIkcHJlZml4LiRzZXR0aW5nIikgdW5sZXNzIChkZWZpbmVkICQkdGFyZ2V0KTsKLQkJfQotCX0KLQotCWZvcmVhY2ggbXkgJHNldHRpbmcgKGtleXMgJWNvbmZpZ19zZXR0aW5ncykgewotCQlteSAkdGFyZ2V0ID0gJGNvbmZpZ19zZXR0aW5nc3skc2V0dGluZ307Ci0JCW5leHQgaWYgJHNldHRpbmcgZXEgInRvIiBhbmQgZGVmaW5lZCAkbm9fdG87Ci0JCW5leHQgaWYgJHNldHRpbmcgZXEgImNjIiBhbmQgZGVmaW5lZCAkbm9fY2M7Ci0JCW5leHQgaWYgJHNldHRpbmcgZXEgImJjYyIgYW5kIGRlZmluZWQgJG5vX2JjYzsKLQkJaWYgKHJlZigkdGFyZ2V0KSBlcSAiQVJSQVkiKSB7Ci0JCQl1bmxlc3MgKEAkdGFyZ2V0KSB7Ci0JCQkJbXkgQHZhbHVlcyA9IEdpdDo6Y29uZmlnKEByZXBvLCAiJHByZWZpeC4kc2V0dGluZyIpOwotCQkJCUAkdGFyZ2V0ID0gQHZhbHVlcyBpZiAoQHZhbHVlcyAmJiBkZWZpbmVkICR2YWx1ZXNbMF0pOwotCQkJfQotCQl9Ci0JCWVsc2UgewotCQkJJCR0YXJnZXQgPSBHaXQ6OmNvbmZpZyhAcmVwbywgIiRwcmVmaXguJHNldHRpbmciKSB1bmxlc3MgKGRlZmluZWQgJCR0YXJnZXQpOwotCQl9Ci0JfQotCi0JaWYgKCFkZWZpbmVkICRzbXRwX2VuY3J5cHRpb24pIHsKLQkJbXkgJGVuYyA9IEdpdDo6Y29uZmlnKEByZXBvLCAiJHByZWZpeC5zbXRwZW5jcnlwdGlvbiIpOwotCQlpZiAoZGVmaW5lZCAkZW5jKSB7Ci0JCQkkc210cF9lbmNyeXB0aW9uID0gJGVuYzsKLQkJfSBlbHNpZiAoR2l0Ojpjb25maWdfYm9vbChAcmVwbywgIiRwcmVmaXguc210cHNzbCIpKSB7Ci0JCQkkc210cF9lbmNyeXB0aW9uID0gJ3NzbCc7Ci0JCX0KLQl9Ci19Ci0KLSMgcmVhZCBjb25maWd1cmF0aW9uIGZyb20gW3NlbmRlbWFpbCAiJGlkZW50aXR5Il0sIGZhbGwgYmFjayBvbiBbc2VuZGVtYWlsXQotJGlkZW50aXR5ID0gR2l0Ojpjb25maWcoQHJlcG8sICJzZW5kZW1haWwuaWRlbnRpdHkiKSB1bmxlc3MgKGRlZmluZWQgJGlkZW50aXR5KTsKLXJlYWRfY29uZmlnKCJzZW5kZW1haWwuJGlkZW50aXR5IikgaWYgKGRlZmluZWQgJGlkZW50aXR5KTsKLXJlYWRfY29uZmlnKCJzZW5kZW1haWwiKTsKLQotIyBmYWxsIGJhY2sgb24gYnVpbHRpbiBib29sIGRlZmF1bHRzCi1mb3JlYWNoIG15ICRzZXR0aW5nICh2YWx1ZXMgJWNvbmZpZ19ib29sX3NldHRpbmdzKSB7Ci0JJHskc2V0dGluZy0+WzBdfSA9ICRzZXR0aW5nLT5bMV0gdW5sZXNzIChkZWZpbmVkICgkeyRzZXR0aW5nLT5bMF19KSk7Ci19Ci0KICMgJ2RlZmF1bHQnIGVuY3J5cHRpb24gaXMgbm9uZSAtLSB0aGlzIG9ubHkgcHJldmVudHMgYSB3YXJuaW5nCiAkc210cF9lbmNyeXB0aW9uID0gJycgdW5sZXNzIChkZWZpbmVkICRzbXRwX2VuY3J5cHRpb24pOwogCkBAIC00NjUsNiArNDkyLDggQEAKIG15KCVzdXBwcmVzc19jYyk7CiBpZiAoQHN1cHByZXNzX2NjKSB7CiAJZm9yZWFjaCBteSAkZW50cnkgKEBzdXBwcmVzc19jYykgeworCQkjIFBsZWFzZSB1cGRhdGUgJF9fZ2l0X3NlbmRfZW1haWxfc3VwcHJlc3NjY19vcHRpb25zCisJCSMgaW4gZ2l0LWNvbXBsZXRpb24uYmFzaCB3aGVuIHlvdSBhZGQgbmV3IG9wdGlvbnMuCiAJCWRpZSBzcHJpbnRmKF9fKCJVbmtub3duIC0tc3VwcHJlc3MtY2MgZmllbGQ6ICclcydcbiIpLCAkZW50cnkpCiAJCQl1bmxlc3MgJGVudHJ5ID1+IC9eKD86YWxsfGNjY21kfGNjfGF1dGhvcnxzZWxmfHNvYnxib2R5fGJvZHljY3xtaXNjLWJ5KSQvOwogCQkkc3VwcHJlc3NfY2N7JGVudHJ5fSA9IDE7CkBAIC00OTQsNiArNTIzLDggQEAKIGlmICgkY29uZmlybV91bmNvbmZpZ3VyZWQpIHsKIAkkY29uZmlybSA9IHNjYWxhciAlc3VwcHJlc3NfY2MgPyAnY29tcG9zZScgOiAnYXV0byc7CiB9OworIyBQbGVhc2UgdXBkYXRlICRfX2dpdF9zZW5kX2VtYWlsX2NvbmZpcm1fb3B0aW9ucyBpbgorIyBnaXQtY29tcGxldGlvbi5iYXNoIHdoZW4geW91IGFkZCBuZXcgb3B0aW9ucy4KIGRpZSBzcHJpbnRmKF9fKCJVbmtub3duIC0tY29uZmlybSBzZXR0aW5nOiAnJXMnXG4iKSwgJGNvbmZpcm0pCiAJdW5sZXNzICRjb25maXJtID1+IC9eKD86YXV0b3xjY3xjb21wb3NlfGFsd2F5c3xuZXZlcikvOwogCkBAIC01ODcsNiArNjE4LDggQEAKIAkJaWYgKC9cKGRlZmluZS1tYWlsLWFsaWFzXHMrIihcUys/KSJccysiKFxTKz8pIlwpLykgewogCQkJJGFsaWFzZXN7JDF9ID0gWyAkMiBdOwogCQl9fX0KKwkjIFBsZWFzZSB1cGRhdGUgX2dpdF9jb25maWcoKSBpbiBnaXQtY29tcGxldGlvbi5iYXNoIHdoZW4geW91CisJIyBhZGQgbmV3IE1VQXMuCiApOwogCiBpZiAoQGFsaWFzX2ZpbGVzIGFuZCAkYWxpYXNmaWxldHlwZSBhbmQgZGVmaW5lZCAkcGFyc2VfYWxpYXN7JGFsaWFzZmlsZXR5cGV9KSB7CkBAIC05MzUsNyArOTY4LDcgQEAKIAogQGluaXRpYWxfdG8gPSBwcm9jZXNzX2FkZHJlc3NfbGlzdChAaW5pdGlhbF90byk7CiBAaW5pdGlhbF9jYyA9IHByb2Nlc3NfYWRkcmVzc19saXN0KEBpbml0aWFsX2NjKTsKLUBiY2NsaXN0ID0gcHJvY2Vzc19hZGRyZXNzX2xpc3QoQGJjY2xpc3QpOworQGluaXRpYWxfYmNjID0gcHJvY2Vzc19hZGRyZXNzX2xpc3QoQGluaXRpYWxfYmNjKTsKIAogaWYgKCR0aHJlYWQgJiYgIWRlZmluZWQgJGluaXRpYWxfaW5fcmVwbHlfdG8gJiYgJHByb21wdGluZykgewogCSRpbml0aWFsX2luX3JlcGx5X3RvID0gYXNrKApAQCAtMTE5NSw3ICsxMjI4LDcgQEAKICMgZG9tYWluIG5hbWUgdGhhdCBjb3JyZXNwb25kcyB0aGUgSVAgYWRkcmVzcyBpbiB0aGUgSEVMTy9FSExPCiAjIGhhbmRzaGFrZS4gVGhpcyBpcyB1c2VkIHRvIHZlcmlmeSB0aGUgY29ubmVjdGlvbiBhbmQgcHJldmVudAogIyBzcGFtbWVycyBmcm9tIHRyeWluZyB0byBoaWRlIHRoZWlyIGlkZW50aXR5LiBJZiB0aGUgRE5TIGFuZCBJUCBkb24ndAotIyBtYXRjaCwgdGhlIHJlY2VpdmVpbmcgTVRBIG1heSBkZW55IHRoZSBjb25uZWN0aW9uLgorIyBtYXRjaCwgdGhlIHJlY2VpdmluZyBNVEEgbWF5IGRlbnkgdGhlIGNvbm5lY3Rpb24uCiAjCiAjIEhlcmUgaXMgYSBkZW55IGV4YW1wbGUgb2YgTmV0OjpTTVRQIHdpdGggdGhlIGRlZmF1bHQgImxvY2FsaG9zdC5sb2NhbGRvbWFpbiIKICMKQEAgLTEzNTgsNyArMTM5MSw3IEBACiAJCSAgICB9CiAJICAgICAgIEBjYyk7CiAJbXkgJHRvID0gam9pbiAoIixcblx0IiwgQHJlY2lwaWVudHMpOwotCUByZWNpcGllbnRzID0gdW5pcXVlX2VtYWlsX2xpc3QoQHJlY2lwaWVudHMsQGNjLEBiY2NsaXN0KTsKKwlAcmVjaXBpZW50cyA9IHVuaXF1ZV9lbWFpbF9saXN0KEByZWNpcGllbnRzLEBjYyxAaW5pdGlhbF9iY2MpOwogCUByZWNpcGllbnRzID0gKG1hcCB7IGV4dHJhY3RfdmFsaWRfYWRkcmVzc19vcl9kaWUoJF8pIH0gQHJlY2lwaWVudHMpOwogCW15ICRkYXRlID0gZm9ybWF0XzI4MjJfdGltZSgkdGltZSsrKTsKIAlteSAkZ2l0dmVyc2lvbiA9ICdAQEdJVF9WRVJTSU9OQEAnOwpAQCAtMTY5Myw3ICsxNzI2LDcgQEAKIAkjIE5vdyBwYXJzZSB0aGUgbWVzc2FnZSBib2R5CiAJd2hpbGUoPCRmaD4pIHsKIAkJJG1lc3NhZ2UgLj0gICRfOwotCQlpZiAoL14oW2Etei1dKi1ieXxDYyk6ICguKikvaSkgeworCQlpZiAoL14oW2Etel1bYS16LV0qLWJ5fENjKTogKC4qKS9pKSB7CiAJCQljaG9tcDsKIAkJCW15ICgkd2hhdCwgJGMpID0gKCQxLCAkMik7CiAJCQkjIHN0cmlwIGdhcmJhZ2UgZm9yIHRoZSBhZGRyZXNzIHdlJ2xsIHVzZToKQEAgLTE4NjYsNyArMTg5OSw3IEBACiAJJG1lc3NhZ2UgPSBNSU1FOjpCYXNlNjQ6OmRlY29kZSgkbWVzc2FnZSkKIAkJaWYgKCRmcm9tIGVxICdiYXNlNjQnKTsKIAotCSR0byA9ICgkbWVzc2FnZSA9fiAvLns5OTksfS8pID8gJ3F1b3RlZC1wcmludGFibGUnIDogJzhiaXQnCisJJHRvID0gKCRtZXNzYWdlID1+IC8oPzouezk5OSx9fFxyKS8pID8gJ3F1b3RlZC1wcmludGFibGUnIDogJzhiaXQnCiAJCWlmICR0byBlcSAnYXV0byc7CiAKIAlkaWUgX18oImNhbm5vdCBzZW5kIG1lc3NhZ2UgYXMgN2JpdCIpCmRpZmYgLS1naXQgYS9naXQtc2gtaTE4bi5zaCBiL2dpdC1zaC1pMThuLnNoCmluZGV4IGUxZDkxN2YuLjhlZWY2MGIgMTAwNjQ0Ci0tLSBhL2dpdC1zaC1pMThuLnNoCisrKyBiL2dpdC1zaC1pMThuLnNoCkBAIC0xNyw3ICsxNyw5IEBACiAKICMgRmlyc3QgZGVjaWRlIHdoYXQgc2NoZW1lIHRvIHVzZS4uLgogR0lUX0lOVEVSTkFMX0dFVFRFWFRfU0hfU0NIRU1FPWZhbGx0aHJvdWdoCi1pZiB0ZXN0IC1uICIkR0lUX1RFU1RfR0VUVEVYVF9QT0lTT04iCitpZiB0ZXN0IC1uICIkR0lUX1RFU1RfR0VUVEVYVF9QT0lTT04iICYmCisJICAgIGdpdCBlbnYtLWhlbHBlciAtLXR5cGU9Ym9vbCAtLWRlZmF1bHQ9MCAtLWV4aXQtY29kZSBcCisJCUdJVF9URVNUX0dFVFRFWFRfUE9JU09OCiB0aGVuCiAJR0lUX0lOVEVSTkFMX0dFVFRFWFRfU0hfU0NIRU1FPXBvaXNvbgogZWxpZiB0ZXN0IC1uICJAQFVTRV9HRVRURVhUX1NDSEVNRUBAIgpkaWZmIC0tZ2l0IGEvZ2l0LXNoLXNldHVwLnNoIGIvZ2l0LXNoLXNldHVwLnNoCmluZGV4IDM3ODkyODUuLjEwZDk3NjQgMTAwNjQ0Ci0tLSBhL2dpdC1zaC1zZXR1cC5zaAorKysgYi9naXQtc2gtc2V0dXAuc2gKQEAgLTEwMSw2ICsxMDEsNyBAQAogCWNhc2UgIiQxIiBpbgogCQktaCkKIAkJZWNobyAiJExPTkdfVVNBR0UiCisJCWNhc2UgIiQwIiBpbiAqZ2l0LWxlZ2FjeS1zdGFzaCkgZXhpdCAxMjk7OyBlc2FjCiAJCWV4aXQKIAllc2FjCiBmaQpkaWZmIC0tZ2l0IGEvZ2l0LXN1Ym1vZHVsZS5zaCBiL2dpdC1zdWJtb2R1bGUuc2gKaW5kZXggNjVkNjJjOC4uODlmOTE1YyAxMDA3NTUKLS0tIGEvZ2l0LXN1Ym1vZHVsZS5zaAorKysgYi9naXQtc3VibW9kdWxlLnNoCkBAIC01LDExICs1LDE0IEBACiAjIENvcHlyaWdodCAoYykgMjAwNyBMYXJzIEhqZW1saQogCiBkYXNobGVzcz0kKGJhc2VuYW1lICIkMCIgfCBzZWQgLWUgJ3MvLS8gLycpCi1VU0FHRT0iWy0tcXVpZXRdIGFkZCBbLWIgPGJyYW5jaD5dIFstZnwtLWZvcmNlXSBbLS1uYW1lIDxuYW1lPl0gWy0tcmVmZXJlbmNlIDxyZXBvc2l0b3J5Pl0gWy0tXSA8cmVwb3NpdG9yeT4gWzxwYXRoPl0KK1VTQUdFPSJbLS1xdWlldF0gWy0tY2FjaGVkXQorICAgb3I6ICRkYXNobGVzcyBbLS1xdWlldF0gYWRkIFstYiA8YnJhbmNoPl0gWy1mfC0tZm9yY2VdIFstLW5hbWUgPG5hbWU+XSBbLS1yZWZlcmVuY2UgPHJlcG9zaXRvcnk+XSBbLS1dIDxyZXBvc2l0b3J5PiBbPHBhdGg+XQogICAgb3I6ICRkYXNobGVzcyBbLS1xdWlldF0gc3RhdHVzIFstLWNhY2hlZF0gWy0tcmVjdXJzaXZlXSBbLS1dIFs8cGF0aD4uLi5dCiAgICBvcjogJGRhc2hsZXNzIFstLXF1aWV0XSBpbml0IFstLV0gWzxwYXRoPi4uLl0KICAgIG9yOiAkZGFzaGxlc3MgWy0tcXVpZXRdIGRlaW5pdCBbLWZ8LS1mb3JjZV0gKC0tYWxsfCBbLS1dIDxwYXRoPi4uLikKLSAgIG9yOiAkZGFzaGxlc3MgWy0tcXVpZXRdIHVwZGF0ZSBbLS1pbml0XSBbLS1yZW1vdGVdIFstTnwtLW5vLWZldGNoXSBbLWZ8LS1mb3JjZV0gWy0tY2hlY2tvdXR8LS1tZXJnZXwtLXJlYmFzZV0gWy0tW25vLV1yZWNvbW1lbmQtc2hhbGxvd10gWy0tcmVmZXJlbmNlIDxyZXBvc2l0b3J5Pl0gWy0tcmVjdXJzaXZlXSBbLS1dIFs8cGF0aD4uLi5dCisgICBvcjogJGRhc2hsZXNzIFstLXF1aWV0XSB1cGRhdGUgWy0taW5pdF0gWy0tcmVtb3RlXSBbLU58LS1uby1mZXRjaF0gWy1mfC0tZm9yY2VdIFstLWNoZWNrb3V0fC0tbWVyZ2V8LS1yZWJhc2VdIFstLVtuby1dcmVjb21tZW5kLXNoYWxsb3ddIFstLXJlZmVyZW5jZSA8cmVwb3NpdG9yeT5dIFstLXJlY3Vyc2l2ZV0gWy0tW25vLV1zaW5nbGUtYnJhbmNoXSBbLS1dIFs8cGF0aD4uLi5dCisgICBvcjogJGRhc2hsZXNzIFstLXF1aWV0XSBzZXQtYnJhbmNoICgtLWRlZmF1bHR8LS1icmFuY2ggPGJyYW5jaD4pIFstLV0gPHBhdGg+CisgICBvcjogJGRhc2hsZXNzIFstLXF1aWV0XSBzZXQtdXJsIFstLV0gPHBhdGg+IDxuZXd1cmw+CiAgICBvcjogJGRhc2hsZXNzIFstLXF1aWV0XSBzdW1tYXJ5IFstLWNhY2hlZHwtLWZpbGVzXSBbLS1zdW1tYXJ5LWxpbWl0IDxuPl0gW2NvbW1pdF0gWy0tXSBbPHBhdGg+Li4uXQogICAgb3I6ICRkYXNobGVzcyBbLS1xdWlldF0gZm9yZWFjaCBbLS1yZWN1cnNpdmVdIDxjb21tYW5kPgogICAgb3I6ICRkYXNobGVzcyBbLS1xdWlldF0gc3luYyBbLS1yZWN1cnNpdmVdIFstLV0gWzxwYXRoPi4uLl0KQEAgLTQ0LDYgKzQ3LDcgQEAKIGRlcHRoPQogcHJvZ3Jlc3M9CiBkaXNzb2NpYXRlPQorc2luZ2xlX2JyYW5jaD0KIAogZGllX2lmX3VubWF0Y2hlZCAoKQogewpAQCAtMjMxLDEzICsyMzUsMjIgQEAKIAkJZGllICIkKGV2YWxfZ2V0dGV4dCAiJ1wkc21fcGF0aCcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGluZGV4IGFuZCBpcyBub3QgYSBzdWJtb2R1bGUiKSIKIAlmaQogCi0JaWYgdGVzdCAteiAiJGZvcmNlIiAmJgotCQkhIGdpdCBhZGQgLS1kcnktcnVuIC0taWdub3JlLW1pc3NpbmcgLS1uby13YXJuLWVtYmVkZGVkLXJlcG8gIiRzbV9wYXRoIiA+IC9kZXYvbnVsbCAyPiYxCisJaWYgdGVzdCAtZCAiJHNtX3BhdGgiICYmCisJCXRlc3QgLXogJChnaXQgLUMgIiRzbV9wYXRoIiByZXYtcGFyc2UgLS1zaG93LWNkdXAgMj4vZGV2L251bGwpCiAJdGhlbgotCQlldmFsX2dldHRleHRsbiAiVGhlIGZvbGxvd2luZyBwYXRoIGlzIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczoKLVwkc21fcGF0aAotVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgaXQuIiA+JjIKLQkJZXhpdCAxCisJICAgIGdpdCAtQyAiJHNtX3BhdGgiIHJldi1wYXJzZSAtLXZlcmlmeSAtcSBIRUFEID4vZGV2L251bGwgfHwKKwkgICAgZGllICIkKGV2YWxfZ2V0dGV4dCAiJ1wkc21fcGF0aCcgZG9lcyBub3QgaGF2ZSBhIGNvbW1pdCBjaGVja2VkIG91dCIpIgorCWZpCisKKwlpZiB0ZXN0IC16ICIkZm9yY2UiCisJdGhlbgorCSAgICBkcnllcnI9JChnaXQgYWRkIC0tZHJ5LXJ1biAtLWlnbm9yZS1taXNzaW5nIC0tbm8td2Fybi1lbWJlZGRlZC1yZXBvICIkc21fcGF0aCIgMj4mMSA+L2Rldi9udWxsKQorCSAgICByZXM9JD8KKwkgICAgaWYgdGVzdCAkcmVzIC1uZSAwCisJICAgIHRoZW4KKwkJIGVjaG8gPiYyICIkZHJ5ZXJyIgorCQkgZXhpdCAkcmVzCisJICAgIGZpCiAJZmkKIAogCWlmIHRlc3QgLW4gIiRjdXN0b21fbmFtZSIKQEAgLTM0Niw3ICszNTksNyBAQAogCQlzaGlmdAogCWRvbmUKIAotCWdpdCAke3d0X3ByZWZpeDorLUMgIiR3dF9wcmVmaXgifSAke3ByZWZpeDorLS1zdXBlci1wcmVmaXggIiRwcmVmaXgifSBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoICR7R0lUX1FVSUVUOistLXF1aWV0fSAke3JlY3Vyc2l2ZTorLS1yZWN1cnNpdmV9ICIkQCIKKwlnaXQgJHt3dF9wcmVmaXg6Ky1DICIkd3RfcHJlZml4In0gJHtwcmVmaXg6Ky0tc3VwZXItcHJlZml4ICIkcHJlZml4In0gc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCAke0dJVF9RVUlFVDorLS1xdWlldH0gJHtyZWN1cnNpdmU6Ky0tcmVjdXJzaXZlfSAtLSAiJEAiCiB9CiAKICMKQEAgLTM3Nyw3ICszOTAsNyBAQAogCQlzaGlmdAogCWRvbmUKIAotCWdpdCAke3d0X3ByZWZpeDorLUMgIiR3dF9wcmVmaXgifSAke3ByZWZpeDorLS1zdXBlci1wcmVmaXggIiRwcmVmaXgifSBzdWJtb2R1bGUtLWhlbHBlciBpbml0ICR7R0lUX1FVSUVUOistLXF1aWV0fSAgIiRAIgorCWdpdCAke3d0X3ByZWZpeDorLUMgIiR3dF9wcmVmaXgifSAke3ByZWZpeDorLS1zdXBlci1wcmVmaXggIiRwcmVmaXgifSBzdWJtb2R1bGUtLWhlbHBlciBpbml0ICR7R0lUX1FVSUVUOistLXF1aWV0fSAtLSAiJEAiCiB9CiAKICMKQEAgLTQxMyw3ICs0MjYsNyBAQAogCQlzaGlmdAogCWRvbmUKIAotCWdpdCAke3d0X3ByZWZpeDorLUMgIiR3dF9wcmVmaXgifSBzdWJtb2R1bGUtLWhlbHBlciBkZWluaXQgJHtHSVRfUVVJRVQ6Ky0tcXVpZXR9ICR7cHJlZml4OistLXByZWZpeCAiJHByZWZpeCJ9ICR7Zm9yY2U6Ky0tZm9yY2V9ICR7ZGVpbml0X2FsbDorLS1hbGx9ICIkQCIKKwlnaXQgJHt3dF9wcmVmaXg6Ky1DICIkd3RfcHJlZml4In0gc3VibW9kdWxlLS1oZWxwZXIgZGVpbml0ICR7R0lUX1FVSUVUOistLXF1aWV0fSAke3ByZWZpeDorLS1wcmVmaXggIiRwcmVmaXgifSAke2ZvcmNlOistLWZvcmNlfSAke2RlaW5pdF9hbGw6Ky0tYWxsfSAtLSAiJEAiCiB9CiAKIGlzX3RpcF9yZWFjaGFibGUgKCkgKApAQCAtNTE2LDYgKzUyOSwxMiBAQAogCQktLWpvYnM9KikKIAkJCWpvYnM9JDEKIAkJCTs7CisJCS0tc2luZ2xlLWJyYW5jaCkKKwkJCXNpbmdsZV9icmFuY2g9Ii0tc2luZ2xlLWJyYW5jaCIKKwkJCTs7CisJCS0tbm8tc2luZ2xlLWJyYW5jaCkKKwkJCXNpbmdsZV9icmFuY2g9Ii0tbm8tc2luZ2xlLWJyYW5jaCIKKwkJCTs7CiAJCS0tKQogCQkJc2hpZnQKIAkJCWJyZWFrCkBAIC01NDUsOCArNTY0LDEwIEBACiAJCSR7ZGlzc29jaWF0ZTorIi0tZGlzc29jaWF0ZSJ9IFwKIAkJJHtkZXB0aDorLS1kZXB0aCAiJGRlcHRoIn0gXAogCQkke3JlcXVpcmVfaW5pdDorLS1yZXF1aXJlLWluaXR9IFwKKwkJJHNpbmdsZV9icmFuY2ggXAogCQkkcmVjb21tZW5kX3NoYWxsb3cgXAogCQkkam9icyBcCisJCS0tIFwKIAkJIiRAIiB8fCBlY2hvICIjdW5tYXRjaGVkIiAkPwogCX0gfCB7CiAJZXJyPQpAQCAtNTU0LDcgKzU3NSw3IEBACiAJZG8KIAkJZGllX2lmX3VubWF0Y2hlZCAiJHF1aWNrYWJvcnQiICIkc2hhMSIKIAotCQlnaXQgc3VibW9kdWxlLS1oZWxwZXIgZW5zdXJlLWNvcmUtd29ya3RyZWUgIiRzbV9wYXRoIgorCQlnaXQgc3VibW9kdWxlLS1oZWxwZXIgZW5zdXJlLWNvcmUtd29ya3RyZWUgIiRzbV9wYXRoIiB8fCBleGl0IDEKIAogCQl1cGRhdGVfbW9kdWxlPSQoZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1tb2R1bGUtbW9kZSAkanVzdF9jbG9uZWQgIiRzbV9wYXRoIiAkdXBkYXRlKQogCkBAIC01OTksNyArNjIwLDcgQEAKIAkJCQkjIGlzIG5vdCByZWFjaGFibGUgZnJvbSBhIHJlZi4KIAkJCQlpc190aXBfcmVhY2hhYmxlICIkc21fcGF0aCIgIiRzaGExIiB8fAogCQkJCWZldGNoX2luX3N1Ym1vZHVsZSAiJHNtX3BhdGgiICRkZXB0aCB8fAotCQkJCXNheSAiJChldmFsX2dldHRleHQgIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnXCRkaXNwbGF5cGF0aCciKSIKKwkJCQlzYXkgIiQoZXZhbF9nZXR0ZXh0ICJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJ1wkZGlzcGxheXBhdGgnOyB0cnlpbmcgdG8gZGlyZWN0bHkgZmV0Y2ggXCRzaGExOiIpIgogCiAJCQkJIyBOb3cgd2UgdHJpZWQgdGhlIHVzdWFsIGZldGNoLCBidXQgJHNoYTEgbWF5CiAJCQkJIyBub3QgYmUgcmVhY2hhYmxlIGZyb20gYW55IG9mIHRoZSByZWZzCkBAIC02OTEsNiArNzEyLDEyMSBAQAogfQogCiAjCisjIENvbmZpZ3VyZXMgYSBzdWJtb2R1bGUncyBkZWZhdWx0IGJyYW5jaAorIworIyAkQCA9IHJlcXVlc3RlZCBwYXRoCisjCitjbWRfc2V0X2JyYW5jaCgpIHsKKwl1bnNldF9icmFuY2g9ZmFsc2UKKwlicmFuY2g9CisKKwl3aGlsZSB0ZXN0ICQjIC1uZSAwCisJZG8KKwkJY2FzZSAiJDEiIGluCisJCS1xfC0tcXVpZXQpCisJCQkjIHdlIGRvbid0IGRvIGFueXRoaW5nIHdpdGggdGhpcyBidXQgd2UgbmVlZCB0byBhY2NlcHQgaXQKKwkJCTs7CisJCS1kfC0tZGVmYXVsdCkKKwkJCXVuc2V0X2JyYW5jaD10cnVlCisJCQk7OworCQktYnwtLWJyYW5jaCkKKwkJCWNhc2UgIiQyIiBpbiAnJykgdXNhZ2UgOzsgZXNhYworCQkJYnJhbmNoPSQyCisJCQlzaGlmdAorCQkJOzsKKwkJLS0pCisJCQlzaGlmdAorCQkJYnJlYWsKKwkJCTs7CisJCS0qKQorCQkJdXNhZ2UKKwkJCTs7CisJCSopCisJCQlicmVhaworCQkJOzsKKwkJZXNhYworCQlzaGlmdAorCWRvbmUKKworCWlmIHRlc3QgJCMgLW5lIDEKKwl0aGVuCisJCXVzYWdlCisJZmkKKworCSMgd2UgY2FuJ3QgdXNlIGBnaXQgc3VibW9kdWxlLS1oZWxwZXIgbmFtZWAgaGVyZSBiZWNhdXNlIGludGVybmFsbHksIGl0CisJIyBoYXNoZXMgdGhlIHBhdGggc28gYSB0cmFpbGluZyBzbGFzaCBjb3VsZCBsZWFkIHRvIGFuIHVuaW50ZW50aW9uYWwgbm8gbWF0Y2gKKwluYW1lPSIkKGdpdCBzdWJtb2R1bGUtLWhlbHBlciBsaXN0ICIkMSIgfCBjdXQgLWYyKSIKKwlpZiB0ZXN0IC16ICIkbmFtZSIKKwl0aGVuCisJCWV4aXQgMQorCWZpCisKKwl0ZXN0IC1uICIkYnJhbmNoIjsgaGFzX2JyYW5jaD0kPworCXRlc3QgIiR1bnNldF9icmFuY2giID0gdHJ1ZTsgaGFzX3Vuc2V0X2JyYW5jaD0kPworCisJaWYgdGVzdCAkKCghJGhhc19icmFuY2ggIT0gISRoYXNfdW5zZXRfYnJhbmNoKSkgLWVxIDAKKwl0aGVuCisJCXVzYWdlCisJZmkKKworCWlmIHRlc3QgJGhhc19icmFuY2ggLWVxIDAKKwl0aGVuCisJCWdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgc3VibW9kdWxlLiIkbmFtZSIuYnJhbmNoICIkYnJhbmNoIgorCWVsc2UKKwkJZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLXVuc2V0IHN1Ym1vZHVsZS4iJG5hbWUiLmJyYW5jaAorCWZpCit9CisKKyMKKyMgQ29uZmlndXJlcyBhIHN1Ym1vZHVsZSdzIHJlbW90ZSB1cmwKKyMKKyMgJEAgPSByZXF1ZXN0ZWQgcGF0aCwgcmVxdWVzdGVkIHVybAorIworY21kX3NldF91cmwoKSB7CisJd2hpbGUgdGVzdCAkIyAtbmUgMAorCWRvCisJCWNhc2UgIiQxIiBpbgorCQktcXwtLXF1aWV0KQorCQkJR0lUX1FVSUVUPTEKKwkJCTs7CisJCS0tKQorCQkJc2hpZnQKKwkJCWJyZWFrCisJCQk7OworCQktKikKKwkJCXVzYWdlCisJCQk7OworCQkqKQorCQkJYnJlYWsKKwkJCTs7CisJCWVzYWMKKwkJc2hpZnQKKwlkb25lCisKKwlpZiB0ZXN0ICQjIC1uZSAyCisJdGhlbgorCQl1c2FnZQorCWZpCisKKwkjIHdlIGNhbid0IHVzZSBgZ2l0IHN1Ym1vZHVsZS0taGVscGVyIG5hbWVgIGhlcmUgYmVjYXVzZSBpbnRlcm5hbGx5LCBpdAorCSMgaGFzaGVzIHRoZSBwYXRoIHNvIGEgdHJhaWxpbmcgc2xhc2ggY291bGQgbGVhZCB0byBhbiB1bmludGVudGlvbmFsIG5vIG1hdGNoCisJbmFtZT0iJChnaXQgc3VibW9kdWxlLS1oZWxwZXIgbGlzdCAiJDEiIHwgY3V0IC1mMikiCisJaWYgdGVzdCAteiAiJG5hbWUiCisJdGhlbgorCQlleGl0IDEKKwlmaQorCisJdXJsPSIkMiIKKwlpZiB0ZXN0IC16ICIkdXJsIgorCXRoZW4KKwkJZXhpdCAxCisJZmkKKworCWdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgc3VibW9kdWxlLiIkbmFtZSIudXJsICIkdXJsIgorCWdpdCBzdWJtb2R1bGUtLWhlbHBlciBzeW5jICR7R0lUX1FVSUVUOistLXF1aWV0fSAiJG5hbWUiCit9CisKKyMKICMgU2hvdyBjb21taXQgc3VtbWFyeSBmb3Igc3VibW9kdWxlcyBpbiBpbmRleCBvciB3b3JraW5nIHRyZWUKICMKICMgSWYgJy0tY2FjaGVkJyBpcyBnaXZlbiwgc2hvdyBzdW1tYXJ5IGJldHdlZW4gaW5kZXggYW5kIGdpdmVuIGNvbW1pdCwKQEAgLTg1Niw4ICs5OTIsMTEgQEAKIAkJCTs7CiAJCWVzYWMKIAotCQlzaGExX2FiYnJfc3JjPSQoZWNobyAkc2hhMV9zcmMgfCBjdXQgLWMxLTcpCi0JCXNoYTFfYWJicl9kc3Q9JChlY2hvICRzaGExX2RzdCB8IGN1dCAtYzEtNykKKwkJc2hhMV9hYmJyX3NyYz0kKEdJVF9ESVI9IiRuYW1lLy5naXQiIGdpdCByZXYtcGFyc2UgLS1zaG9ydCAkc2hhMV9zcmMgMj4vZGV2L251bGwgfHwKKwkJCWVjaG8gJHNoYTFfc3JjIHwgY3V0IC1jMS03KQorCQlzaGExX2FiYnJfZHN0PSQoR0lUX0RJUj0iJG5hbWUvLmdpdCIgZ2l0IHJldi1wYXJzZSAtLXNob3J0ICRzaGExX2RzdCAyPi9kZXYvbnVsbCB8fAorCQkJZWNobyAkc2hhMV9kc3QgfCBjdXQgLWMxLTcpCisKIAkJaWYgdGVzdCAkc3RhdHVzID0gVAogCQl0aGVuCiAJCQlibG9iPSIkKGdldHRleHQgImJsb2IiKSIKQEAgLTkzNiw3ICsxMDc1LDcgQEAKIAkJc2hpZnQKIAlkb25lCiAKLQlnaXQgJHt3dF9wcmVmaXg6Ky1DICIkd3RfcHJlZml4In0gJHtwcmVmaXg6Ky0tc3VwZXItcHJlZml4ICIkcHJlZml4In0gc3VibW9kdWxlLS1oZWxwZXIgc3RhdHVzICR7R0lUX1FVSUVUOistLXF1aWV0fSAke2NhY2hlZDorLS1jYWNoZWR9ICR7cmVjdXJzaXZlOistLXJlY3Vyc2l2ZX0gIiRAIgorCWdpdCAke3d0X3ByZWZpeDorLUMgIiR3dF9wcmVmaXgifSAke3ByZWZpeDorLS1zdXBlci1wcmVmaXggIiRwcmVmaXgifSBzdWJtb2R1bGUtLWhlbHBlciBzdGF0dXMgJHtHSVRfUVVJRVQ6Ky0tcXVpZXR9ICR7Y2FjaGVkOistLWNhY2hlZH0gJHtyZWN1cnNpdmU6Ky0tcmVjdXJzaXZlfSAtLSAiJEAiCiB9CiAjCiAjIFN5bmMgcmVtb3RlIHVybHMgZm9yIHN1Ym1vZHVsZXMKQEAgLTk2OSw3ICsxMTA4LDcgQEAKIAkJZXNhYwogCWRvbmUKIAotCWdpdCAke3d0X3ByZWZpeDorLUMgIiR3dF9wcmVmaXgifSAke3ByZWZpeDorLS1zdXBlci1wcmVmaXggIiRwcmVmaXgifSBzdWJtb2R1bGUtLWhlbHBlciBzeW5jICR7R0lUX1FVSUVUOistLXF1aWV0fSAke3JlY3Vyc2l2ZTorLS1yZWN1cnNpdmV9ICIkQCIKKwlnaXQgJHt3dF9wcmVmaXg6Ky1DICIkd3RfcHJlZml4In0gJHtwcmVmaXg6Ky0tc3VwZXItcHJlZml4ICIkcHJlZml4In0gc3VibW9kdWxlLS1oZWxwZXIgc3luYyAke0dJVF9RVUlFVDorLS1xdWlldH0gJHtyZWN1cnNpdmU6Ky0tcmVjdXJzaXZlfSAtLSAiJEAiCiB9CiAKIGNtZF9hYnNvcmJnaXRkaXJzKCkKQEAgLTk4Niw3ICsxMTI1LDcgQEAKIHdoaWxlIHRlc3QgJCMgIT0gMCAmJiB0ZXN0IC16ICIkY29tbWFuZCIKIGRvCiAJY2FzZSAiJDEiIGluCi0JYWRkIHwgZm9yZWFjaCB8IGluaXQgfCBkZWluaXQgfCB1cGRhdGUgfCBzdGF0dXMgfCBzdW1tYXJ5IHwgc3luYyB8IGFic29yYmdpdGRpcnMpCisJYWRkIHwgZm9yZWFjaCB8IGluaXQgfCBkZWluaXQgfCB1cGRhdGUgfCBzZXQtYnJhbmNoIHwgc2V0LXVybCB8IHN0YXR1cyB8IHN1bW1hcnkgfCBzeW5jIHwgYWJzb3JiZ2l0ZGlycykKIAkJY29tbWFuZD0kMQogCQk7OwogCS1xfC0tcXVpZXQpCkBAIC0xMDI3LDggKzExNjYsOCBAQAogICAgIGZpCiBmaQogCi0jICItYiBicmFuY2giIGlzIGFjY2VwdGVkIG9ubHkgYnkgImFkZCIKLWlmIHRlc3QgLW4gIiRicmFuY2giICYmIHRlc3QgIiRjb21tYW5kIiAhPSBhZGQKKyMgIi1iIGJyYW5jaCIgaXMgYWNjZXB0ZWQgb25seSBieSAiYWRkIiBhbmQgInNldC1icmFuY2giCitpZiB0ZXN0IC1uICIkYnJhbmNoIiAmJiAodGVzdCAiJGNvbW1hbmQiICE9IGFkZCB8fCB0ZXN0ICIkY29tbWFuZCIgIT0gc2V0LWJyYW5jaCkKIHRoZW4KIAl1c2FnZQogZmkKQEAgLTEwMzksNCArMTE3OCw0IEBACiAJdXNhZ2UKIGZpCiAKLSJjbWRfJGNvbW1hbmQiICIkQCIKKyJjbWRfJChlY2hvICRjb21tYW5kIHwgc2VkIC1lIHMvLS9fL2cpIiAiJEAiCmRpZmYgLS1naXQgYS9naXQtc3ZuLnBlcmwgYi9naXQtc3ZuLnBlcmwKaW5kZXggMDUwZjJhMy4uNGFhMjA4ZiAxMDA3NTUKLS0tIGEvZ2l0LXN2bi5wZXJsCisrKyBiL2dpdC1zdm4ucGVybApAQCAtMTEwLDcgKzExMCw3IEBACiAJJF90ZW1wbGF0ZSwgJF9zaGFyZWQsCiAJJF92ZXJzaW9uLCAkX2ZldGNoX2FsbCwgJF9ub19yZWJhc2UsICRfZmV0Y2hfcGFyZW50LAogCSRfYmVmb3JlLCAkX2FmdGVyLAotCSRfbWVyZ2UsICRfc3RyYXRlZ3ksICRfcHJlc2VydmVfbWVyZ2VzLCAkX2RyeV9ydW4sICRfcGFyZW50cywgJF9sb2NhbCwKKwkkX21lcmdlLCAkX3N0cmF0ZWd5LCAkX3JlYmFzZV9tZXJnZXMsICRfZHJ5X3J1biwgJF9wYXJlbnRzLCAkX2xvY2FsLAogCSRfcHJlZml4LCAkX25vX2NoZWNrb3V0LCAkX3VybCwgJF92ZXJib3NlLAogCSRfY29tbWl0X3VybCwgJF90YWcsICRfbWVyZ2VfaW5mbywgJF9pbnRlcmFjdGl2ZSwgJF9zZXRfc3ZuX3Byb3BzKTsKIApAQCAtMjcwLDcgKzI3MCw4IEBACiAJCQkgICdsb2NhbHxsJyA9PiBcJF9sb2NhbCwKIAkJCSAgJ2ZldGNoLWFsbHxhbGwnID0+IFwkX2ZldGNoX2FsbCwKIAkJCSAgJ2RyeS1ydW58bicgPT4gXCRfZHJ5X3J1biwKLQkJCSAgJ3ByZXNlcnZlLW1lcmdlc3xwJyA9PiBcJF9wcmVzZXJ2ZV9tZXJnZXMsCisJCQkgICdyZWJhc2UtbWVyZ2VzfHAnID0+IFwkX3JlYmFzZV9tZXJnZXMsCisJCQkgICdwcmVzZXJ2ZS1tZXJnZXN8cCcgPT4gXCRfcmViYXNlX21lcmdlcywKIAkJCSAgJWZjX29wdHMgfSBdLAogCSdjb21taXQtZGlmZicgPT4gWyBcJmNtZF9jb21taXRfZGlmZiwKIAkgICAgICAgICAgICAgICAgICAgJ0NvbW1pdCBhIGRpZmYgYmV0d2VlbiB0d28gdHJlZXMnLApAQCAtMTA1NCw3ICsxMDU1LDcgQEAKIAkJCQkJICAnSWYgeW91IGFyZSBhdHRlbXB0aW5nIHRvIGNvbW1pdCAnLAogCQkJCQkgICJtZXJnZXMsIHRyeSBydW5uaW5nOlxuXHQiLAogCQkJCQkgICdnaXQgcmViYXNlIC0taW50ZXJhY3RpdmUnLAotCQkJCQkgICctLXByZXNlcnZlLW1lcmdlcyAnLAorCQkJCQkgICctLXJlYmFzZS1tZXJnZXMgJywKIAkJCQkJICAkZ3MtPnJlZm5hbWUsCiAJCQkJCSAgIlxuQmVmb3JlIGRjb21taXR0aW5nIjsKIAkJCQl9CkBAIC0xNzE3LDcgKzE3MTgsNyBAQAogCXB1c2ggQGNtZCwgJy12JyBpZiAkX3ZlcmJvc2U7CiAJcHVzaCBAY21kLCBxdy8tLW1lcmdlLyBpZiAkX21lcmdlOwogCXB1c2ggQGNtZCwgIi0tc3RyYXRlZ3k9JF9zdHJhdGVneSIgaWYgJF9zdHJhdGVneTsKLQlwdXNoIEBjbWQsICItLXByZXNlcnZlLW1lcmdlcyIgaWYgJF9wcmVzZXJ2ZV9tZXJnZXM7CisJcHVzaCBAY21kLCAiLS1yZWJhc2UtbWVyZ2VzIiBpZiAkX3JlYmFzZV9tZXJnZXM7CiAJQGNtZDsKIH0KIApkaWZmIC0tZ2l0IGEvZ2l0LmMgYi9naXQuYwppbmRleCAyZjYwNGE0Li43YmU3YWQzIDEwMDY0NAotLS0gYS9naXQuYworKysgYi9naXQuYwpAQCAtMzMsNyArMzMsOCBAQAogY29uc3QgY2hhciBnaXRfbW9yZV9pbmZvX3N0cmluZ1tdID0KIAlOXygiJ2dpdCBoZWxwIC1hJyBhbmQgJ2dpdCBoZWxwIC1nJyBsaXN0IGF2YWlsYWJsZSBzdWJjb21tYW5kcyBhbmQgc29tZVxuIgogCSAgICJjb25jZXB0IGd1aWRlcy4gU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIG9yICdnaXQgaGVscCA8Y29uY2VwdD4nXG4iCi0JICAgInRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIG9yIGNvbmNlcHQuIik7CisJICAgInRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIG9yIGNvbmNlcHQuXG4iCisJICAgIlNlZSAnZ2l0IGhlbHAgZ2l0JyBmb3IgYW4gb3ZlcnZpZXcgb2YgdGhlIHN5c3RlbS4iKTsKIAogc3RhdGljIGludCB1c2VfcGFnZXIgPSAtMTsKIApAQCAtNjIsNiArNjMsMTMgQEAKIHsKIAlzdHJ1Y3Qgc3RyaW5nX2xpc3QgbGlzdCA9IFNUUklOR19MSVNUX0lOSVRfRFVQOwogCWludCBpOworCWludCBub25naXQ7CisKKwkvKgorCSogU2V0IHVwIHRoZSByZXBvc2l0b3J5IHNvIHdlIGNhbiBwaWNrIHVwIGFueSByZXBvLWxldmVsIGNvbmZpZyAobGlrZQorCSogY29tcGxldGlvbi5jb21tYW5kcykuCisJKi8KKwlzZXR1cF9naXRfZGlyZWN0b3J5X2dlbnRseSgmbm9uZ2l0KTsKIAogCXdoaWxlICgqc3BlYykgewogCQljb25zdCBjaGFyICpzZXAgPSBzdHJjaHJudWwoc3BlYywgJywnKTsKQEAgLTk4LDcgKzEwNiw4IEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyB2b2lkIGNvbW1pdF9wYWdlcl9jaG9pY2Uodm9pZCkgeworc3RhdGljIHZvaWQgY29tbWl0X3BhZ2VyX2Nob2ljZSh2b2lkKQorewogCXN3aXRjaCAodXNlX3BhZ2VyKSB7CiAJY2FzZSAwOgogCQlzZXRlbnYoIkdJVF9QQUdFUiIsICJjYXQiLCAxKTsKQEAgLTE0NiwxNiArMTU1LDIwIEBACiAJCQkJZ2l0X3NldF9leGVjX3BhdGgoY21kICsgMSk7CiAJCQllbHNlIHsKIAkJCQlwdXRzKGdpdF9leGVjX3BhdGgoKSk7CisJCQkJdHJhY2UyX2NtZF9uYW1lKCJfcXVlcnlfIik7CiAJCQkJZXhpdCgwKTsKIAkJCX0KIAkJfSBlbHNlIGlmICghc3RyY21wKGNtZCwgIi0taHRtbC1wYXRoIikpIHsKIAkJCXB1dHMoc3lzdGVtX3BhdGgoR0lUX0hUTUxfUEFUSCkpOworCQkJdHJhY2UyX2NtZF9uYW1lKCJfcXVlcnlfIik7CiAJCQlleGl0KDApOwogCQl9IGVsc2UgaWYgKCFzdHJjbXAoY21kLCAiLS1tYW4tcGF0aCIpKSB7CiAJCQlwdXRzKHN5c3RlbV9wYXRoKEdJVF9NQU5fUEFUSCkpOworCQkJdHJhY2UyX2NtZF9uYW1lKCJfcXVlcnlfIik7CiAJCQlleGl0KDApOwogCQl9IGVsc2UgaWYgKCFzdHJjbXAoY21kLCAiLS1pbmZvLXBhdGgiKSkgewogCQkJcHV0cyhzeXN0ZW1fcGF0aChHSVRfSU5GT19QQVRIKSk7CisJCQl0cmFjZTJfY21kX25hbWUoIl9xdWVyeV8iKTsKIAkJCWV4aXQoMCk7CiAJCX0gZWxzZSBpZiAoIXN0cmNtcChjbWQsICItcCIpIHx8ICFzdHJjbXAoY21kLCAiLS1wYWdpbmF0ZSIpKSB7CiAJCQl1c2VfcGFnZXIgPSAxOwpAQCAtMjg0LDYgKzI5Nyw3IEBACiAJCQkoKmFyZ3YpKys7CiAJCQkoKmFyZ2MpLS07CiAJCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgoY21kLCAiLS1saXN0LWNtZHM9IiwgJmNtZCkpIHsKKwkJCXRyYWNlMl9jbWRfbmFtZSgiX3F1ZXJ5XyIpOwogCQkJaWYgKCFzdHJjbXAoY21kLCAicGFyc2VvcHQiKSkgewogCQkJCXN0cnVjdCBzdHJpbmdfbGlzdCBsaXN0ID0gU1RSSU5HX0xJU1RfSU5JVF9EVVA7CiAJCQkJaW50IGk7CkBAIC0zMzEsMzQgKzM0NSwzOCBAQAogCQkJY29tbWl0X3BhZ2VyX2Nob2ljZSgpOwogCiAJCQljaGlsZC51c2Vfc2hlbGwgPSAxOworCQkJY2hpbGQudHJhY2UyX2NoaWxkX2NsYXNzID0gInNoZWxsX2FsaWFzIjsKIAkJCWFyZ3ZfYXJyYXlfcHVzaCgmY2hpbGQuYXJncywgYWxpYXNfc3RyaW5nICsgMSk7CiAJCQlhcmd2X2FycmF5X3B1c2h2KCZjaGlsZC5hcmdzLCAoKmFyZ3YpICsgMSk7CiAKKwkJCXRyYWNlMl9jbWRfYWxpYXMoYWxpYXNfY29tbWFuZCwgY2hpbGQuYXJncy5hcmd2KTsKKwkJCXRyYWNlMl9jbWRfbGlzdF9jb25maWcoKTsKKwkJCXRyYWNlMl9jbWRfbmFtZSgiX3J1bl9zaGVsbF9hbGlhc18iKTsKKwogCQkJcmV0ID0gcnVuX2NvbW1hbmQoJmNoaWxkKTsKIAkJCWlmIChyZXQgPj0gMCkgICAvKiBub3JtYWwgZXhpdCAqLwogCQkJCWV4aXQocmV0KTsKIAotCQkJZGllX2Vycm5vKCJ3aGlsZSBleHBhbmRpbmcgYWxpYXMgJyVzJzogJyVzJyIsCi0JCQkgICAgYWxpYXNfY29tbWFuZCwgYWxpYXNfc3RyaW5nICsgMSk7CisJCQlkaWVfZXJybm8oXygid2hpbGUgZXhwYW5kaW5nIGFsaWFzICclcyc6ICclcyciKSwKKwkJCQkgIGFsaWFzX2NvbW1hbmQsIGFsaWFzX3N0cmluZyArIDEpOwogCQl9CiAJCWNvdW50ID0gc3BsaXRfY21kbGluZShhbGlhc19zdHJpbmcsICZuZXdfYXJndik7CiAJCWlmIChjb3VudCA8IDApCi0JCQlkaWUoIkJhZCBhbGlhcy4lcyBzdHJpbmc6ICVzIiwgYWxpYXNfY29tbWFuZCwKLQkJCSAgICBzcGxpdF9jbWRsaW5lX3N0cmVycm9yKGNvdW50KSk7CisJCQlkaWUoXygiYmFkIGFsaWFzLiVzIHN0cmluZzogJXMiKSwgYWxpYXNfY29tbWFuZCwKKwkJCSAgICBfKHNwbGl0X2NtZGxpbmVfc3RyZXJyb3IoY291bnQpKSk7CiAJCW9wdGlvbl9jb3VudCA9IGhhbmRsZV9vcHRpb25zKCZuZXdfYXJndiwgJmNvdW50LCAmZW52Y2hhbmdlZCk7CiAJCWlmIChlbnZjaGFuZ2VkKQotCQkJZGllKCJhbGlhcyAnJXMnIGNoYW5nZXMgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgotCQkJCSAiWW91IGNhbiB1c2UgJyFnaXQnIGluIHRoZSBhbGlhcyB0byBkbyB0aGlzIiwKLQkJCQkgYWxpYXNfY29tbWFuZCk7Ci0JCW1lbW1vdmUobmV3X2FyZ3YgLSBvcHRpb25fY291bnQsIG5ld19hcmd2LAotCQkJCWNvdW50ICogc2l6ZW9mKGNoYXIgKikpOworCQkJZGllKF8oImFsaWFzICclcycgY2hhbmdlcyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4iCisJCQkgICAgICAiWW91IGNhbiB1c2UgJyFnaXQnIGluIHRoZSBhbGlhcyB0byBkbyB0aGlzIiksCisJCQkgICAgYWxpYXNfY29tbWFuZCk7CisJCU1PVkVfQVJSQVkobmV3X2FyZ3YgLSBvcHRpb25fY291bnQsIG5ld19hcmd2LCBjb3VudCk7CiAJCW5ld19hcmd2IC09IG9wdGlvbl9jb3VudDsKIAogCQlpZiAoY291bnQgPCAxKQotCQkJZGllKCJlbXB0eSBhbGlhcyBmb3IgJXMiLCBhbGlhc19jb21tYW5kKTsKKwkJCWRpZShfKCJlbXB0eSBhbGlhcyBmb3IgJXMiKSwgYWxpYXNfY29tbWFuZCk7CiAKIAkJaWYgKCFzdHJjbXAoYWxpYXNfY29tbWFuZCwgbmV3X2FyZ3ZbMF0pKQotCQkJZGllKCJyZWN1cnNpdmUgYWxpYXM6ICVzIiwgYWxpYXNfY29tbWFuZCk7CisJCQlkaWUoXygicmVjdXJzaXZlIGFsaWFzOiAlcyIpLCBhbGlhc19jb21tYW5kKTsKIAogCQl0cmFjZV9hcmd2X3ByaW50ZihuZXdfYXJndiwKIAkJCQkgICJ0cmFjZTogYWxpYXMgZXhwYW5zaW9uOiAlcyA9PiIsCkBAIC0zNjYsNyArMzg0LDEwIEBACiAKIAkJUkVBTExPQ19BUlJBWShuZXdfYXJndiwgY291bnQgKyAqYXJnY3ApOwogCQkvKiBpbnNlcnQgYWZ0ZXIgY29tbWFuZCBuYW1lICovCi0JCW1lbWNweShuZXdfYXJndiArIGNvdW50LCAqYXJndiArIDEsIHNpemVvZihjaGFyICopICogKmFyZ2NwKTsKKwkJQ09QWV9BUlJBWShuZXdfYXJndiArIGNvdW50LCAqYXJndiArIDEsICphcmdjcCk7CisKKwkJdHJhY2UyX2NtZF9hbGlhcyhhbGlhc19jb21tYW5kLCBuZXdfYXJndik7CisJCXRyYWNlMl9jbWRfbGlzdF9jb25maWcoKTsKIAogCQkqYXJndiA9IG5ld19hcmd2OwogCQkqYXJnY3AgKz0gY291bnQgLSAxOwpAQCAtNDA5LDE3ICs0MzAsMTkgQEAKIAogCWlmICghaGVscCAmJiBnZXRfc3VwZXJfcHJlZml4KCkpIHsKIAkJaWYgKCEocC0+b3B0aW9uICYgU1VQUE9SVF9TVVBFUl9QUkVGSVgpKQotCQkJZGllKCIlcyBkb2Vzbid0IHN1cHBvcnQgLS1zdXBlci1wcmVmaXgiLCBwLT5jbWQpOworCQkJZGllKF8oIiVzIGRvZXNuJ3Qgc3VwcG9ydCAtLXN1cGVyLXByZWZpeCIpLCBwLT5jbWQpOwogCX0KIAogCWlmICghaGVscCAmJiBwLT5vcHRpb24gJiBORUVEX1dPUktfVFJFRSkKIAkJc2V0dXBfd29ya190cmVlKCk7CiAKIAl0cmFjZV9hcmd2X3ByaW50Zihhcmd2LCAidHJhY2U6IGJ1aWx0LWluOiBnaXQiKTsKKwl0cmFjZTJfY21kX25hbWUocC0+Y21kKTsKKwl0cmFjZTJfY21kX2xpc3RfY29uZmlnKCk7CiAKLQl2YWxpZGF0ZV9jYWNoZV9lbnRyaWVzKCZ0aGVfaW5kZXgpOworCXZhbGlkYXRlX2NhY2hlX2VudHJpZXModGhlX3JlcG9zaXRvcnktPmluZGV4KTsKIAlzdGF0dXMgPSBwLT5mbihhcmdjLCBhcmd2LCBwcmVmaXgpOwotCXZhbGlkYXRlX2NhY2hlX2VudHJpZXMoJnRoZV9pbmRleCk7CisJdmFsaWRhdGVfY2FjaGVfZW50cmllcyh0aGVfcmVwb3NpdG9yeS0+aW5kZXgpOwogCiAJaWYgKHN0YXR1cykKIAkJcmV0dXJuIHN0YXR1czsKQEAgLTQzMywxMSArNDU2LDExIEBACiAKIAkvKiBDaGVjayBmb3IgRU5PU1BDIGFuZCBFSU8gZXJyb3JzLi4gKi8KIAlpZiAoZmZsdXNoKHN0ZG91dCkpCi0JCWRpZV9lcnJubygid3JpdGUgZmFpbHVyZSBvbiBzdGFuZGFyZCBvdXRwdXQiKTsKKwkJZGllX2Vycm5vKF8oIndyaXRlIGZhaWx1cmUgb24gc3RhbmRhcmQgb3V0cHV0IikpOwogCWlmIChmZXJyb3Ioc3Rkb3V0KSkKLQkJZGllKCJ1bmtub3duIHdyaXRlIGZhaWx1cmUgb24gc3RhbmRhcmQgb3V0cHV0Iik7CisJCWRpZShfKCJ1bmtub3duIHdyaXRlIGZhaWx1cmUgb24gc3RhbmRhcmQgb3V0cHV0IikpOwogCWlmIChmY2xvc2Uoc3Rkb3V0KSkKLQkJZGllX2Vycm5vKCJjbG9zZSBmYWlsZWQgb24gc3RhbmRhcmQgb3V0cHV0Iik7CisJCWRpZV9lcnJubyhfKCJjbG9zZSBmYWlsZWQgb24gc3RhbmRhcmQgb3V0cHV0IikpOwogCXJldHVybiAwOwogfQogCkBAIC00NzUsNyArNDk4LDggQEAKIAl7ICJkaWZmLWZpbGVzIiwgY21kX2RpZmZfZmlsZXMsIFJVTl9TRVRVUCB8IE5FRURfV09SS19UUkVFIHwgTk9fUEFSU0VPUFQgfSwKIAl7ICJkaWZmLWluZGV4IiwgY21kX2RpZmZfaW5kZXgsIFJVTl9TRVRVUCB8IE5PX1BBUlNFT1BUIH0sCiAJeyAiZGlmZi10cmVlIiwgY21kX2RpZmZfdHJlZSwgUlVOX1NFVFVQIHwgTk9fUEFSU0VPUFQgfSwKLQl7ICJkaWZmdG9vbCIsIGNtZF9kaWZmdG9vbCwgUlVOX1NFVFVQIHwgTkVFRF9XT1JLX1RSRUUgfSwKKwl7ICJkaWZmdG9vbCIsIGNtZF9kaWZmdG9vbCwgUlVOX1NFVFVQX0dFTlRMWSB9LAorCXsgImVudi0taGVscGVyIiwgY21kX2Vudl9faGVscGVyIH0sCiAJeyAiZmFzdC1leHBvcnQiLCBjbWRfZmFzdF9leHBvcnQsIFJVTl9TRVRVUCB9LAogCXsgImZldGNoIiwgY21kX2ZldGNoLCBSVU5fU0VUVVAgfSwKIAl7ICJmZXRjaC1wYWNrIiwgY21kX2ZldGNoX3BhY2ssIFJVTl9TRVRVUCB8IE5PX1BBUlNFT1BUIH0sCkBAIC01MjYsMTIgKzU1MCw3IEBACiAJeyAicHVzaCIsIGNtZF9wdXNoLCBSVU5fU0VUVVAgfSwKIAl7ICJyYW5nZS1kaWZmIiwgY21kX3JhbmdlX2RpZmYsIFJVTl9TRVRVUCB8IFVTRV9QQUdFUiB9LAogCXsgInJlYWQtdHJlZSIsIGNtZF9yZWFkX3RyZWUsIFJVTl9TRVRVUCB8IFNVUFBPUlRfU1VQRVJfUFJFRklYfSwKLQkvKgotCSAqIE5FRURTV09SSzogVW50aWwgdGhlIHJlYmFzZSBpcyBpbmRlcGVuZGVudCBhbmQgbmVlZHMgbm8gcmVkaXJlY3Rpb24KLQkgKiB0byByZWJhc2Ugc2hlbGwgc2NyaXB0IHRoaXMgaXMga2VwdCBhcyBpcywgdGhlbiBzaG91bGQgYmUgY2hhbmdlZCB0bwotCSAqIFJVTl9TRVRVUCB8IE5FRURfV09SS19UUkVFCi0JICovCi0JeyAicmViYXNlIiwgY21kX3JlYmFzZSB9LAorCXsgInJlYmFzZSIsIGNtZF9yZWJhc2UsIFJVTl9TRVRVUCB8IE5FRURfV09SS19UUkVFIH0sCiAJeyAicmViYXNlLS1pbnRlcmFjdGl2ZSIsIGNtZF9yZWJhc2VfX2ludGVyYWN0aXZlLCBSVU5fU0VUVVAgfCBORUVEX1dPUktfVFJFRSB9LAogCXsgInJlY2VpdmUtcGFjayIsIGNtZF9yZWNlaXZlX3BhY2sgfSwKIAl7ICJyZWZsb2ciLCBjbWRfcmVmbG9nLCBSVU5fU0VUVVAgfSwKQEAgLTU0MiwyMSArNTYxLDI5IEBACiAJeyAicmVwbGFjZSIsIGNtZF9yZXBsYWNlLCBSVU5fU0VUVVAgfSwKIAl7ICJyZXJlcmUiLCBjbWRfcmVyZXJlLCBSVU5fU0VUVVAgfSwKIAl7ICJyZXNldCIsIGNtZF9yZXNldCwgUlVOX1NFVFVQIH0sCisJeyAicmVzdG9yZSIsIGNtZF9yZXN0b3JlLCBSVU5fU0VUVVAgfCBORUVEX1dPUktfVFJFRSB9LAogCXsgInJldi1saXN0IiwgY21kX3Jldl9saXN0LCBSVU5fU0VUVVAgfCBOT19QQVJTRU9QVCB9LAogCXsgInJldi1wYXJzZSIsIGNtZF9yZXZfcGFyc2UsIE5PX1BBUlNFT1BUIH0sCiAJeyAicmV2ZXJ0IiwgY21kX3JldmVydCwgUlVOX1NFVFVQIHwgTkVFRF9XT1JLX1RSRUUgfSwKIAl7ICJybSIsIGNtZF9ybSwgUlVOX1NFVFVQIH0sCiAJeyAic2VuZC1wYWNrIiwgY21kX3NlbmRfcGFjaywgUlVOX1NFVFVQIH0sCi0JeyAic2VydmUiLCBjbWRfc2VydmUsIFJVTl9TRVRVUCB9LAogCXsgInNob3J0bG9nIiwgY21kX3Nob3J0bG9nLCBSVU5fU0VUVVBfR0VOVExZIHwgVVNFX1BBR0VSIH0sCiAJeyAic2hvdyIsIGNtZF9zaG93LCBSVU5fU0VUVVAgfSwKIAl7ICJzaG93LWJyYW5jaCIsIGNtZF9zaG93X2JyYW5jaCwgUlVOX1NFVFVQIH0sCiAJeyAic2hvdy1pbmRleCIsIGNtZF9zaG93X2luZGV4IH0sCiAJeyAic2hvdy1yZWYiLCBjbWRfc2hvd19yZWYsIFJVTl9TRVRVUCB9LAorCXsgInNwYXJzZS1jaGVja291dCIsIGNtZF9zcGFyc2VfY2hlY2tvdXQsIFJVTl9TRVRVUCB8IE5FRURfV09SS19UUkVFIH0sCiAJeyAic3RhZ2UiLCBjbWRfYWRkLCBSVU5fU0VUVVAgfCBORUVEX1dPUktfVFJFRSB9LAorCS8qCisJICogTkVFRFNXT1JLOiBVbnRpbCB0aGUgYnVpbHRpbiBzdGFzaCBpcyB0aG9yb3VnaGx5IHJvYnVzdCBhbmQgbm8KKwkgKiBsb25nZXIgbmVlZHMgcmVkaXJlY3Rpb24gdG8gdGhlIHN0YXNoIHNoZWxsIHNjcmlwdCB0aGlzIGlzIGtlcHQgYXMKKwkgKiBpcywgdGhlbiBzaG91bGQgYmUgY2hhbmdlZCB0byBSVU5fU0VUVVAgfCBORUVEX1dPUktfVFJFRQorCSAqLworCXsgInN0YXNoIiwgY21kX3N0YXNoIH0sCiAJeyAic3RhdHVzIiwgY21kX3N0YXR1cywgUlVOX1NFVFVQIHwgTkVFRF9XT1JLX1RSRUUgfSwKIAl7ICJzdHJpcHNwYWNlIiwgY21kX3N0cmlwc3BhY2UgfSwKIAl7ICJzdWJtb2R1bGUtLWhlbHBlciIsIGNtZF9zdWJtb2R1bGVfX2hlbHBlciwgUlVOX1NFVFVQIHwgU1VQUE9SVF9TVVBFUl9QUkVGSVggfCBOT19QQVJTRU9QVCB9LAorCXsgInN3aXRjaCIsIGNtZF9zd2l0Y2gsIFJVTl9TRVRVUCB8IE5FRURfV09SS19UUkVFIH0sCiAJeyAic3ltYm9saWMtcmVmIiwgY21kX3N5bWJvbGljX3JlZiwgUlVOX1NFVFVQIH0sCiAJeyAidGFnIiwgY21kX3RhZywgUlVOX1NFVFVQIHwgREVMQVlfUEFHRVJfQ09ORklHIH0sCiAJeyAidW5wYWNrLWZpbGUiLCBjbWRfdW5wYWNrX2ZpbGUsIFJVTl9TRVRVUCB8IE5PX1BBUlNFT1BUIH0sCkBAIC02NTQsNyArNjgxLDcgQEAKIAlpbnQgc3RhdHVzOwogCiAJaWYgKGdldF9zdXBlcl9wcmVmaXgoKSkKLQkJZGllKCIlcyBkb2Vzbid0IHN1cHBvcnQgLS1zdXBlci1wcmVmaXgiLCBhcmd2WzBdKTsKKwkJZGllKF8oIiVzIGRvZXNuJ3Qgc3VwcG9ydCAtLXN1cGVyLXByZWZpeCIpLCBhcmd2WzBdKTsKIAogCWlmICh1c2VfcGFnZXIgPT0gLTEgJiYgIWlzX2J1aWx0aW4oYXJndlswXSkpCiAJCXVzZV9wYWdlciA9IGNoZWNrX3BhZ2VyX2NvbmZpZyhhcmd2WzBdKTsKQEAgLTY2NSw3ICs2OTIsMTQgQEAKIAljbWQuY2xlYW5fb25fZXhpdCA9IDE7CiAJY21kLndhaXRfYWZ0ZXJfY2xlYW4gPSAxOwogCWNtZC5zaWxlbnRfZXhlY19mYWlsdXJlID0gMTsKKwljbWQudHJhY2UyX2NoaWxkX2NsYXNzID0gImRhc2hlZCI7CiAKKwl0cmFjZTJfY21kX25hbWUoIl9ydW5fZGFzaGVkXyIpOworCisJLyoKKwkgKiBUaGUgY29kZSBpbiBydW5fY29tbWFuZCgpIGxvZ3MgdHJhY2UyIGNoaWxkX3N0YXJ0L2NoaWxkX2V4aXQKKwkgKiBldmVudHMsIHNvIHdlIGRvIG5vdCBuZWVkIHRvIHJlcG9ydCBleGVjL2V4ZWNfcmVzdWx0IGV2ZW50cyBoZXJlLgorCSAqLwogCXRyYWNlX2FyZ3ZfcHJpbnRmKGNtZC5hcmdzLmFyZ3YsICJ0cmFjZTogZXhlYzoiKTsKIAogCS8qCkBAIC02NzUsNiArNzA5LDEyIEBACiAJICogdGhlIHByb2dyYW0uCiAJICovCiAJc3RhdHVzID0gcnVuX2NvbW1hbmQoJmNtZCk7CisKKwkvKgorCSAqIElmIHRoZSBjaGlsZCBwcm9jZXNzIHJhbiBhbmQgd2UgYXJlIG5vdyBnb2luZyB0byBleGl0LCBlbWl0IGEKKwkgKiBnZW5lcmljIHN0cmluZyBhcyBvdXIgdHJhY2UyIGNvbW1hbmQgdmVyYiB0byBpbmRpY2F0ZSB0aGF0IHdlCisJICogbGF1bmNoZWQgYSBkYXNoZWQgY29tbWFuZC4KKwkgKi8KIAlpZiAoc3RhdHVzID49IDApCiAJCWV4aXQoc3RhdHVzKTsKIAllbHNlIGlmIChlcnJubyAhPSBFTk9FTlQpCkBAIC02OTksNiArNzM5LDQwIEBACiAJCSAqLwogCQlpZiAoIWRvbmVfYWxpYXMpCiAJCQloYW5kbGVfYnVpbHRpbigqYXJnY3AsICphcmd2KTsKKwkJZWxzZSBpZiAoZ2V0X2J1aWx0aW4oKiphcmd2KSkgeworCQkJc3RydWN0IGFyZ3ZfYXJyYXkgYXJncyA9IEFSR1ZfQVJSQVlfSU5JVDsKKwkJCWludCBpOworCisJCQkvKgorCQkJICogVGhlIGN1cnJlbnQgcHJvY2VzcyBpcyBjb21taXR0ZWQgdG8gbGF1bmNoaW5nIGEKKwkJCSAqIGNoaWxkIHByb2Nlc3MgdG8gcnVuIHRoZSBjb21tYW5kIG5hbWVkIGluICgqKmFyZ3YpCisJCQkgKiBhbmQgZXhpdGluZy4gIExvZyBhIGdlbmVyaWMgc3RyaW5nIGFzIHRoZSB0cmFjZTIKKwkJCSAqIGNvbW1hbmQgdmVyYiB0byBpbmRpY2F0ZSB0aGlzLiAgTm90ZSB0aGF0IHRoZSBjaGlsZAorCQkJICogcHJvY2VzcyB3aWxsIGxvZyB0aGUgYWN0dWFsIHZlcmIgd2hlbiBpdCBydW5zLgorCQkJICovCisJCQl0cmFjZTJfY21kX25hbWUoIl9ydW5fZ2l0X2FsaWFzXyIpOworCisJCQlpZiAoZ2V0X3N1cGVyX3ByZWZpeCgpKQorCQkJCWRpZSgiJXMgZG9lc24ndCBzdXBwb3J0IC0tc3VwZXItcHJlZml4IiwgKiphcmd2KTsKKworCQkJY29tbWl0X3BhZ2VyX2Nob2ljZSgpOworCisJCQlhcmd2X2FycmF5X3B1c2goJmFyZ3MsICJnaXQiKTsKKwkJCWZvciAoaSA9IDA7IGkgPCAqYXJnY3A7IGkrKykKKwkJCQlhcmd2X2FycmF5X3B1c2goJmFyZ3MsICgqYXJndilbaV0pOworCisJCQl0cmFjZV9hcmd2X3ByaW50ZihhcmdzLmFyZ3YsICJ0cmFjZTogZXhlYzoiKTsKKworCQkJLyoKKwkJCSAqIGlmIHdlIGZhaWwgYmVjYXVzZSB0aGUgY29tbWFuZCBpcyBub3QgZm91bmQsIGl0IGlzCisJCQkgKiBPSyB0byByZXR1cm4uIE90aGVyd2lzZSwgd2UganVzdCBwYXNzIGFsb25nIHRoZSBzdGF0dXMgY29kZS4KKwkJCSAqLworCQkJaSA9IHJ1bl9jb21tYW5kX3Zfb3B0X3RyMihhcmdzLmFyZ3YsIFJVTl9TSUxFTlRfRVhFQ19GQUlMVVJFIHwKKwkJCQkJCSAgUlVOX0NMRUFOX09OX0VYSVQsICJnaXRfYWxpYXMiKTsKKwkJCWlmIChpID49IDAgfHwgZXJybm8gIT0gRU5PRU5UKQorCQkJCWV4aXQoaSk7CisJCQlkaWUoImNvdWxkIG5vdCBleGVjdXRlIGJ1aWx0aW4gJXMiLCAqKmFyZ3YpOworCQl9CiAKIAkJLyogLi4gdGhlbiB0cnkgdGhlIGV4dGVybmFsIG9uZXMgKi8KIAkJZXhlY3ZfZGFzaGVkX2V4dGVybmFsKCphcmd2KTsKQEAgLTc2Niw3ICs4NDAsNyBAQAogCWlmIChza2lwX3ByZWZpeChjbWQsICJnaXQtIiwgJmNtZCkpIHsKIAkJYXJndlswXSA9IGNtZDsKIAkJaGFuZGxlX2J1aWx0aW4oYXJnYywgYXJndik7Ci0JCWRpZSgiY2Fubm90IGhhbmRsZSAlcyBhcyBhIGJ1aWx0aW4iLCBjbWQpOworCQlkaWUoXygiY2Fubm90IGhhbmRsZSAlcyBhcyBhIGJ1aWx0aW4iKSwgY21kKTsKIAl9CiAKIAkvKiBMb29rIGZvciBmbGFncy4uICovCkBAIC03NzksNyArODUzLDcgQEAKIAl9IGVsc2UgewogCQkvKiBUaGUgdXNlciBkaWRuJ3Qgc3BlY2lmeSBhIGNvbW1hbmQ7IGdpdmUgdGhlbSBoZWxwICovCiAJCWNvbW1pdF9wYWdlcl9jaG9pY2UoKTsKLQkJcHJpbnRmKCJ1c2FnZTogJXNcblxuIiwgZ2l0X3VzYWdlX3N0cmluZyk7CisJCXByaW50ZihfKCJ1c2FnZTogJXNcblxuIiksIGdpdF91c2FnZV9zdHJpbmcpOwogCQlsaXN0X2NvbW1vbl9jbWRzX2hlbHAoKTsKIAkJcHJpbnRmKCJcbiVzXG4iLCBfKGdpdF9tb3JlX2luZm9fc3RyaW5nKSk7CiAJCWV4aXQoMSk7CmRpZmYgLS1naXQgYS9naXQucmMgYi9naXQucmMKaW5kZXggNDkwMDJlMC4uY2MzZmRjNiAxMDA2NDQKLS0tIGEvZ2l0LnJjCisrKyBiL2dpdC5yYwpAQCAtMjAsMyArMjAsNSBAQAogICAgIFZBTFVFICJUcmFuc2xhdGlvbiIsIDB4NDA5LCAxMjAwCiAgIEVORAogRU5ECisKKzEgUlRfTUFOSUZFU1QgImNvbXBhdC93aW4zMi9naXQubWFuaWZlc3QiCmRpZmYgLS1naXQgYS9naXRrLWdpdC9naXRrIGIvZ2l0ay1naXQvZ2l0awppbmRleCBhMTRkN2ExLi5hYmU0ODA1IDEwMDc1NQotLS0gYS9naXRrLWdpdC9naXRrCisrKyBiL2dpdGstZ2l0L2dpdGsKQEAgLTM0MDQsNiArMzQwNCw4IEBACiB9CiBpbWFnZSBjcmVhdGUgYml0bWFwIHJlZmljb24tSCAtYmFja2dyb3VuZCBibGFjayAtZm9yZWdyb3VuZCAiIzAwZmYwMCIgXAogICAgIC1kYXRhICRyZWN0ZGF0YSAtbWFza2RhdGEgJHJlY3RtYXNrCitpbWFnZSBjcmVhdGUgYml0bWFwIHJlZmljb24tUiAtYmFja2dyb3VuZCBibGFjayAtZm9yZWdyb3VuZCAiI2ZmZGRhYSIgXAorICAgIC1kYXRhICRyZWN0ZGF0YSAtbWFza2RhdGEgJHJlY3RtYXNrCiBpbWFnZSBjcmVhdGUgYml0bWFwIHJlZmljb24tbyAtYmFja2dyb3VuZCBibGFjayAtZm9yZWdyb3VuZCAiI2RkZGRmZiIgXAogICAgIC1kYXRhICRyZWN0ZGF0YSAtbWFza2RhdGEgJHJlY3RtYXNrCiAKQEAgLTcwMTYsNiArNzAxOCw3IEBACiAKICMgYXBwZW5kIHNvbWUgdGV4dCB0byB0aGUgY3RleHQgd2lkZ2V0LCBhbmQgbWFrZSBhbnkgU0hBMSBJRAogIyB0aGF0IHdlIGtub3cgYWJvdXQgYmUgYSBjbGlja2FibGUgbGluay4KKyMgQWxzbyBsb29rIGZvciBVUkxzIG9mIHRoZSBmb3JtICJodHRwW3NdOi8vLi4uIiBhbmQgbWFrZSB0aGVtIHdlYiBsaW5rcy4KIHByb2MgYXBwZW5kd2l0aGxpbmtzIHt0ZXh0IHRhZ3N9IHsKICAgICBnbG9iYWwgY3RleHQgbGlua251bSBjdXJ2aWV3CiAKQEAgLTcwMzIsNiArNzAzNSwxOCBAQAogCXNldGxpbmsgJGxpbmtpZCBsaW5rJGxpbmtudW0KIAlpbmNyIGxpbmtudW0KICAgICB9CisgICAgc2V0IHdsaW5rcyBbcmVnZXhwIC1pbmRpY2VzIC1hbGwgLWlubGluZSAtbGluZSBcCisJCSAgICB7aHR0cHM/Oi8vW15bOnNwYWNlOl1dK30gJHRleHRdCisgICAgZm9yZWFjaCBsICR3bGlua3MgeworCXNldCBzMiBbbGluZGV4ICRsIDBdCisJc2V0IGUyIFtsaW5kZXggJGwgMV0KKwlzZXQgdXJsIFtzdHJpbmcgcmFuZ2UgJHRleHQgJHMyICRlMl0KKwlpbmNyIGUyCisJJGN0ZXh0IHRhZyBkZWxldGUgbGluayRsaW5rbnVtCisJJGN0ZXh0IHRhZyBhZGQgbGluayRsaW5rbnVtICIkc3RhcnQgKyAkczIgYyIgIiRzdGFydCArICRlMiBjIgorCXNldHdsaW5rICR1cmwgbGluayRsaW5rbnVtCisJaW5jciBsaW5rbnVtCisgICAgfQogfQogCiBwcm9jIHNldGxpbmsge2lkIGxrfSB7CkBAIC03MDY0LDYgKzcwNzksMTggQEAKICAgICB9CiB9CiAKK3Byb2Mgc2V0d2xpbmsge3VybCBsa30geworICAgIGdsb2JhbCBjdGV4dAorICAgIGdsb2JhbCBsaW5rZmdjb2xvcgorICAgIGdsb2JhbCB3ZWJfYnJvd3NlcgorCisgICAgaWYgeyR3ZWJfYnJvd3NlciBlcSB7fX0gcmV0dXJuCisgICAgJGN0ZXh0IHRhZyBjb25mICRsayAtZm9yZWdyb3VuZCAkbGlua2ZnY29sb3IgLXVuZGVybGluZSAxCisgICAgJGN0ZXh0IHRhZyBiaW5kICRsayA8MT4gW2xpc3QgYnJvd3Nld2ViICR1cmxdCisgICAgJGN0ZXh0IHRhZyBiaW5kICRsayA8RW50ZXI+IHtsaW5rY3Vyc29yICVXIDF9CisgICAgJGN0ZXh0IHRhZyBiaW5kICRsayA8TGVhdmU+IHtsaW5rY3Vyc29yICVXIC0xfQorfQorCiBwcm9jIGFwcGVuZHNob3J0bGluayB7aWQge3ByZSB7fX0ge3Bvc3Qge319fSB7CiAgICAgZ2xvYmFsIGN0ZXh0IGxpbmtudW0KIApAQCAtNzA5OCw2ICs3MTI1LDE2IEBACiAgICAgfQogfQogCitwcm9jIGJyb3dzZXdlYiB7dXJsfSB7CisgICAgZ2xvYmFsIHdlYl9icm93c2VyCisKKyAgICBpZiB7JHdlYl9icm93c2VyIGVxIHt9fSByZXR1cm4KKyAgICAjIFVzZSBldmFsIGhlcmUgaW4gY2FzZSAkd2ViX2Jyb3dzZXIgaXMgYSBjb21tYW5kIHBsdXMgc29tZSBhcmd1bWVudHMKKyAgICBpZiB7W2NhdGNoIHtldmFsIGV4ZWMgJHdlYl9icm93c2VyIFtsaXN0ICR1cmxdICZ9IGVycl19IHsKKwllcnJvcl9wb3B1cCAiW21jICJFcnJvciBzdGFydGluZyB3ZWIgYnJvd3NlcjoiXSAkZXJyIgorICAgIH0KK30KKwogcHJvYyB2aWV3bmV4dGxpbmUge2Rpcn0gewogICAgIGdsb2JhbCBjYW52IGxpbmVzcGMKIApAQCAtODE5MSwxMSArODIyOCwxMSBAQAogCX0gZWxzZSB7CiAJICAgICRjdGV4dCBpbnNlcnQgZW5kICIkbGluZVxuIiBmaWxlc2VwCiAJfQotICAgIH0gZWxzZWlmIHshW3N0cmluZyBjb21wYXJlIC1sZW5ndGggMyAiICA+IiAkbGluZV19IHsKKyAgICB9IGVsc2VpZiB7JGN1cnJkaWZmc3VibW9kICE9ICIiICYmICFbc3RyaW5nIGNvbXBhcmUgLWxlbmd0aCAzICIgID4iICRsaW5lXX0gewogCXNldCAkY3VycmRpZmZzdWJtb2QgIiIKIAlzZXQgbGluZSBbZW5jb2RpbmcgY29udmVydGZyb20gJGRpZmZlbmNvZGluZyAkbGluZV0KIAkkY3RleHQgaW5zZXJ0IGVuZCAiJGxpbmVcbiIgZHJlc3VsdAotICAgIH0gZWxzZWlmIHshW3N0cmluZyBjb21wYXJlIC1sZW5ndGggMyAiICA8IiAkbGluZV19IHsKKyAgICB9IGVsc2VpZiB7JGN1cnJkaWZmc3VibW9kICE9ICIiICYmICFbc3RyaW5nIGNvbXBhcmUgLWxlbmd0aCAzICIgIDwiICRsaW5lXX0gewogCXNldCAkY3VycmRpZmZzdWJtb2QgIiIKIAlzZXQgbGluZSBbZW5jb2RpbmcgY29udmVydGZyb20gJGRpZmZlbmNvZGluZyAkbGluZV0KIAkkY3RleHQgaW5zZXJ0IGVuZCAiJGxpbmVcbiIgZDAKQEAgLTEwMDIyLDYgKzEwMDU5LDcgQEAKICAgICBzZXQgbiBbbGluZGV4ICRyZWYgMF0KICAgICBzd2l0Y2ggLS0gW2xpbmRleCAkcmVmIDFdIHsKIAkiSCIge3NlbGJ5aWQgJGhlYWRpZHMoJG4pfQorCSJSIiB7c2VsYnlpZCAkaGVhZGlkcygkbil9CiAJIlQiIHtzZWxieWlkICR0YWdpZHMoJG4pfQogCSJvIiB7c2VsYnlpZCAkb3RoZXJyZWZpZHMoJG4pfQogICAgIH0KQEAgLTEwMDUxLDcgKzEwMDg5LDExIEBACiAgICAgZm9yZWFjaCBuIFthcnJheSBuYW1lcyBoZWFkaWRzXSB7CiAJaWYge1tzdHJpbmcgbWF0Y2ggJHJlZmxpc3RmaWx0ZXIgJG5dfSB7CiAJICAgIGlmIHtbY29tbWl0aW52aWV3ICRoZWFkaWRzKCRuKSAkY3Vydmlld119IHsKLQkJbGFwcGVuZCByZWZzIFtsaXN0ICRuIEhdCisJCWlmIHtbc3RyaW5nIG1hdGNoICJyZW1vdGVzLyoiICRuXX0geworCQkgICAgbGFwcGVuZCByZWZzIFtsaXN0ICRuIFJdCisJCX0gZWxzZSB7CisJCSAgICBsYXBwZW5kIHJlZnMgW2xpc3QgJG4gSF0KKwkJfQogCSAgICB9IGVsc2UgewogCQlpbnRlcmVzdGVkaW4gJGhlYWRpZHMoJG4pIHtydW4gcmVmaWxsX3JlZmxpc3R9CiAJICAgIH0KQEAgLTExNDg4LDcgKzExNTMwLDcgQEAKIHByb2MgcHJlZnNwYWdlX2dlbmVyYWwge25vdGVib29rfSB7CiAgICAgZ2xvYmFsIE5TIG1heHdpZHRoIG1heGdyYXBocGN0IHNob3duZWFydGFncyBzaG93bG9jYWxjaGFuZ2VzCiAgICAgZ2xvYmFsIHRhYnN0b3AgbGltaXRkaWZmcyBhdXRvc2VsZWN0IGF1dG9zZWxsZW4gZXh0ZGlmZnRvb2wgcGVyZmlsZV9hdHRycwotICAgIGdsb2JhbCBoaWRlcmVtb3RlcyB3YW50X3R0ayBoYXZlX3R0ayBtYXhyZWZzCisgICAgZ2xvYmFsIGhpZGVyZW1vdGVzIHdhbnRfdHRrIGhhdmVfdHRrIG1heHJlZnMgd2ViX2Jyb3dzZXIKIAogICAgIHNldCBwYWdlIFtjcmVhdGVfcHJlZnNfcGFnZSAkbm90ZWJvb2suZ2VuZXJhbF0KIApAQCAtMTE1MzksNiArMTE1ODEsMTMgQEAKICAgICBwYWNrIGNvbmZpZ3VyZSAkcGFnZS5leHRkaWZmZi5sIC1wYWR4IDEwCiAgICAgZ3JpZCB4ICRwYWdlLmV4dGRpZmZmICRwYWdlLmV4dGRpZmZ0IC1zdGlja3kgZXcKIAorICAgICR7TlN9OjplbnRyeSAkcGFnZS53ZWJicm93c2VyIC10ZXh0dmFyaWFibGUgd2ViX2Jyb3dzZXIKKyAgICAke05TfTo6ZnJhbWUgJHBhZ2Uud2ViYnJvd3NlcmYKKyAgICAke05TfTo6bGFiZWwgJHBhZ2Uud2ViYnJvd3NlcmYubCAtdGV4dCBbbWMgIldlYiBicm93c2VyIiBdCisgICAgcGFjayAkcGFnZS53ZWJicm93c2VyZi5sIC1zaWRlIGxlZnQKKyAgICBwYWNrIGNvbmZpZ3VyZSAkcGFnZS53ZWJicm93c2VyZi5sIC1wYWR4IDEwCisgICAgZ3JpZCB4ICRwYWdlLndlYmJyb3dzZXJmICRwYWdlLndlYmJyb3dzZXIgLXN0aWNreSBldworCiAgICAgJHtOU306OmxhYmVsICRwYWdlLmxnZW4gLXRleHQgW21jICJHZW5lcmFsIG9wdGlvbnMiXQogICAgIGdyaWQgJHBhZ2UubGdlbiAtIC1zdGlja3kgdyAtcGFkeSAxMAogICAgICR7TlN9OjpjaGVja2J1dHRvbiAkcGFnZS53YW50X3R0ayAtdmFyaWFibGUgd2FudF90dGsgXApAQCAtMTIzMTAsNiArMTIzNTksNyBAQAogICAgIHNldCBiZ2NvbG9yIFN5c3RlbVdpbmRvdwogICAgIHNldCBmZ2NvbG9yIFN5c3RlbVdpbmRvd1RleHQKICAgICBzZXQgc2VsZWN0Ymdjb2xvciBTeXN0ZW1IaWdobGlnaHQKKyAgICBzZXQgd2ViX2Jyb3dzZXIgImNtZCAvYyBzdGFydCIKIH0gZWxzZSB7CiAgICAgc2V0IHVpY29sb3IgZ3JleTg1CiAgICAgc2V0IHVpZmdjb2xvciBibGFjawpAQCAtMTIzMTcsNiArMTIzNjcsMTEgQEAKICAgICBzZXQgYmdjb2xvciB3aGl0ZQogICAgIHNldCBmZ2NvbG9yIGJsYWNrCiAgICAgc2V0IHNlbGVjdGJnY29sb3IgZ3JheTg1CisgICAgaWYge1t0ayB3aW5kb3dpbmdzeXN0ZW1dIGVxICJhcXVhIn0geworCXNldCB3ZWJfYnJvd3NlciAib3BlbiIKKyAgICB9IGVsc2UgeworCXNldCB3ZWJfYnJvd3NlciAieGRnLW9wZW4iCisgICAgfQogfQogc2V0IGRpZmZjb2xvcnMge3JlZCAiIzAwYTAwMCIgYmx1ZX0KIHNldCBkaWZmY29udGV4dCAzCkBAIC0xMjM5MCw2ICsxMjQ0NSw3IEBACiAgICAgZmlsZXNlcGJnY29sb3IgZmlsZXNlcGZnY29sb3IgbGluZWhvdmVyYmdjb2xvciBsaW5laG92ZXJmZ2NvbG9yCiAgICAgbGluZWhvdmVyb3V0bGluZWNvbG9yIG1haW5oZWFkY2lyY2xlY29sb3Igd29ya2luZ2ZpbGVzY2lyY2xlY29sb3IKICAgICBpbmRleGNpcmNsZWNvbG9yIGNpcmNsZWNvbG9ycyBsaW5rZmdjb2xvciBjaXJjbGVvdXRsaW5lY29sb3IKKyAgICB3ZWJfYnJvd3NlcgogfQogZm9yZWFjaCB2YXIgJGNvbmZpZ192YXJpYWJsZXMgewogICAgIGNvbmZpZ19pbml0X3RyYWNlICR2YXIKZGlmZiAtLWdpdCBhL2dpdGstZ2l0L3BvL2JnLnBvIGIvZ2l0ay1naXQvcG8vYmcucG8KaW5kZXggNDA3ZDU1NS4uODdhYjFmYSAxMDA2NDQKLS0tIGEvZ2l0ay1naXQvcG8vYmcucG8KKysrIGIvZ2l0ay1naXQvcG8vYmcucG8KQEAgLTEsMTUgKzEsMTUgQEAKICMgQnVsZ2FyaWFuIHRyYW5zbGF0aW9uIG9mIGdpdGsgcG8tZmlsZS4KLSMgQ29weXJpZ2h0IChDKSAyMDE0LCAyMDE1IEFsZXhhbmRlciBTaG9wb3YgPGFzaEBrYW1iYW5hcmlhLm9yZz4uCisjIENvcHlyaWdodCAoQykgMjAxNCwgMjAxNSwgMjAxOSBBbGV4YW5kZXIgU2hvcG92IDxhc2hAa2FtYmFuYXJpYS5vcmc+LgogIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgZ2l0IHBhY2thZ2UuCi0jIEFsZXhhbmRlciBTaG9wb3YgPGFzaEBrYW1iYW5hcmlhLm9yZz4sIDIwMTQsIDIwMTUuCisjIEFsZXhhbmRlciBTaG9wb3YgPGFzaEBrYW1iYW5hcmlhLm9yZz4sIDIwMTQsIDIwMTUsIDIwMTkuCiAjCiAjCiBtc2dpZCAiIgogbXNnc3RyICIiCiAiUHJvamVjdC1JZC1WZXJzaW9uOiBnaXRrIG1hc3RlclxuIgogIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBcbiIKLSJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxNS0xMi0xOSAxMTo0OCswMjAwXG4iCi0iUE8tUmV2aXNpb24tRGF0ZTogMjAxNS0xMi0xOSAxMTo0OSswMjAwXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTktMDMtMDQgMTE6MjcrMDEwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTktMDMtMDQgMTE6MzkrMDEwMFxuIgogIkxhc3QtVHJhbnNsYXRvcjogQWxleGFuZGVyIFNob3BvdiA8YXNoQGthbWJhbmFyaWEub3JnPlxuIgogIkxhbmd1YWdlLVRlYW06IEJ1bGdhcmlhbiA8ZGljdEBmc2EtYmcub3JnPlxuIgogIkxhbmd1YWdlOiBiZ1xuIgpAQCAtMjIsMTcgKzIyLDE3IEBACiBtc2dpZCAiQ291bGRuJ3QgZ2V0IGxpc3Qgb2YgdW5tZXJnZWQgZmlsZXM6IgogbXNnc3RyICLQodC/0LjRgdGK0LrRitGCINGBINC90LXRgdC70LXRgtC4INGE0LDQudC70L7QstC1INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9C+0LvRg9GH0LXQvToiCiAKLSM6IGdpdGs6MjEyIGdpdGs6MjM5OQorIzogZ2l0azoyMTIgZ2l0azoyNDAzCiBtc2dpZCAiQ29sb3Igd29yZHMiCiBtc2dzdHIgItCe0YbQstC10YLRj9Cy0LDQvdC1INC90LAg0LTRg9C80LjRgtC1IgogCi0jOiBnaXRrOjIxNyBnaXRrOjIzOTkgZ2l0azo4MjM5IGdpdGs6ODI3MgorIzogZ2l0azoyMTcgZ2l0azoyNDAzIGdpdGs6ODI0OSBnaXRrOjgyODIKIG1zZ2lkICJNYXJrdXAgd29yZHMiCiBtc2dzdHIgItCe0YLQsdC10LvRj9C30LLQsNC90LUg0L3QsCDQtNGD0LzQuNGC0LUiCiAKICM6IGdpdGs6MzI0CiBtc2dpZCAiRXJyb3IgcGFyc2luZyByZXZpc2lvbnM6IgotbXNnc3RyICLQk9GA0LXRiNC60LAg0L/RgNC4INGA0LDQt9Cx0L7RgCDQvdCwINCy0LXRgNGB0LjQuNGC0LU6IgorbXNnc3RyICLQk9GA0LXRiNC60LAg0L/RgNC4INCw0L3QsNC70LjQtyDQvdCwINCy0LXRgNGB0LjQuNGC0LU6IgogCiAjOiBnaXRrOjM4MAogbXNnaWQgIkVycm9yIGV4ZWN1dGluZyAtLWFyZ3NjbWQgY29tbWFuZDoiCkBAIC01OSwzMTQgKzU5LDMxOCBAQAogbXNnaWQgIlJlYWRpbmciCiBtc2dzdHIgItCf0YDQvtGH0LjRgtCw0L3QtSIKIAotIzogZ2l0azo0OTYgZ2l0azo0NTQ0CisjOiBnaXRrOjQ5NiBnaXRrOjQ1NDkKIG1zZ2lkICJSZWFkaW5nIGNvbW1pdHMuLi4iCiBtc2dzdHIgItCf0YDQvtGH0LjRgtCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LjRj9GC0LDigKYiCiAKLSM6IGdpdGs6NDk5IGdpdGs6MTYzNyBnaXRrOjQ1NDcKKyM6IGdpdGs6NDk5IGdpdGs6MTY0MSBnaXRrOjQ1NTIKIG1zZ2lkICJObyBjb21taXRzIHNlbGVjdGVkIgogbXNnc3RyICLQndC1INGB0LAg0LjQt9Cx0YDQsNC90Lgg0L/QvtC00LDQstCw0L3QuNGPIgogCi0jOiBnaXRrOjE0NDUgZ2l0azo0MDY0IGdpdGs6MTI0NjkKKyM6IGdpdGs6MTQ0OSBnaXRrOjQwNjkgZ2l0azoxMjU4MwogbXNnaWQgIkNvbW1hbmQgbGluZSIKIG1zZ3N0ciAi0JrQvtC80LDQvdC00LXQvSDRgNC10LQiCiAKLSM6IGdpdGs6MTUxMQorIzogZ2l0azoxNTE1CiBtc2dpZCAiQ2FuJ3QgcGFyc2UgZ2l0IGxvZyBvdXRwdXQ6IgogbXNnc3RyICLQmNC30YXQvtC00YrRgiDQvtGCIOKAnmdpdCBsb2figJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LDQvdCw0LvQuNC30LjRgNCwOiIKIAotIzogZ2l0azoxNzQwCisjOiBnaXRrOjE3NDQKIG1zZ2lkICJObyBjb21taXQgaW5mb3JtYXRpb24gYXZhaWxhYmxlIgogbXNnc3RyICLQm9C40L/RgdCy0LAg0LjQvdGE0L7RgNC80LDRhtC40Y8g0LfQsCDQv9C+0LTQsNCy0LDQvdC40Y8iCiAKLSM6IGdpdGs6MTkwMyBnaXRrOjE5MzIgZ2l0azo0MzM0IGdpdGs6OTcwMiBnaXRrOjExMjc0IGdpdGs6MTE1NTQKKyM6IGdpdGs6MTkwNyBnaXRrOjE5MzYgZ2l0azo0MzM5IGdpdGs6OTc4OSBnaXRrOjExMzg4IGdpdGs6MTE2NjgKIG1zZ2lkICJPSyIKIG1zZ3N0ciAi0JTQvtCx0YDQtSIKIAotIzogZ2l0azoxOTM0IGdpdGs6NDMzNiBnaXRrOjkyMTUgZ2l0azo5Mjk0IGdpdGs6OTQyNCBnaXRrOjk0NzMgZ2l0azo5NzA0Ci0jOiBnaXRrOjExMjc1IGdpdGs6MTE1NTUKKyM6IGdpdGs6MTkzOCBnaXRrOjQzNDEgZ2l0azo5MjI1IGdpdGs6OTMwNCBnaXRrOjk0MzQgZ2l0azo5NTIwIGdpdGs6OTc5MQorIzogZ2l0azoxMTM4OSBnaXRrOjExNjY5CiBtc2dpZCAiQ2FuY2VsIgogbXNnc3RyICLQntGC0LrQsNC3IgogCi0jOiBnaXRrOjIwODMKKyM6IGdpdGs6MjA4NwogbXNnaWQgIiZVcGRhdGUiCiBtc2dzdHIgIibQntCx0L3QvtCy0Y/QstCw0L3QtSIKIAotIzogZ2l0azoyMDg0CisjOiBnaXRrOjIwODgKIG1zZ2lkICImUmVsb2FkIgogbXNnc3RyICIm0J/RgNC10LfQsNGA0LXQttC00LDQvdC1IgogCi0jOiBnaXRrOjIwODUKKyM6IGdpdGs6MjA4OQogbXNnaWQgIlJlcmVhZCByZSZmZXJlbmNlcyIKLW1zZ3N0ciAiJtCd0LDQvdC+0LLQviDQv9GA0L7Rh9C40YLQsNC90LUg0L3QsCDQvdCw0YHRgtGA0L7QudC60LjRgtC1IgorbXNnc3RyICIm0J3QsNC90L7QstC+INC/0YDQvtGH0LjRgtCw0L3QtSIKIAotIzogZ2l0azoyMDg2CisjOiBnaXRrOjIwOTAKIG1zZ2lkICImTGlzdCByZWZlcmVuY2VzIgogbXNnc3RyICIm0JjQt9Cx0YDQvtGP0LLQsNC90LUg0L3QsCDRg9C60LDQt9Cw0YLQtdC70LjRgtC1IgogCi0jOiBnaXRrOjIwODgKKyM6IGdpdGs6MjA5MgogbXNnaWQgIlN0YXJ0IGdpdCAmZ3VpIgogbXNnc3RyICIm0KHRgtCw0YDRgtC40YDQsNC90LUg0L3QsCDigJ5naXQgZ3Vp4oCcIgogCi0jOiBnaXRrOjIwOTAKKyM6IGdpdGs6MjA5NAogbXNnaWQgIiZRdWl0IgogbXNnc3RyICIm0KHQv9C40YDQsNC90LUg0L3QsCDQv9GA0L7Qs9GA0LDQvNCw0YLQsCIKIAotIzogZ2l0azoyMDgyCisjOiBnaXRrOjIwODYKIG1zZ2lkICImRmlsZSIKIG1zZ3N0ciAiJtCk0LDQudC7IgogCi0jOiBnaXRrOjIwOTQKKyM6IGdpdGs6MjA5OAogbXNnaWQgIiZQcmVmZXJlbmNlcyIKIG1zZ3N0ciAiJtCd0LDRgdGC0YDQvtC50LrQuCIKIAotIzogZ2l0azoyMDkzCisjOiBnaXRrOjIwOTcKIG1zZ2lkICImRWRpdCIKIG1zZ3N0ciAiJtCg0LXQtNCw0LrRgtC40YDQsNC90LUiCiAKLSM6IGdpdGs6MjA5OAorIzogZ2l0azoyMTAyCiBtc2dpZCAiJk5ldyB2aWV3Li4uIgogbXNnc3RyICIm0J3QvtCyINC40LfQs9C70LXQtOKApiIKIAotIzogZ2l0azoyMDk5CisjOiBnaXRrOjIxMDMKIG1zZ2lkICImRWRpdCB2aWV3Li4uIgogbXNnc3RyICIm0KDQtdC00LDQutGC0LjRgNCw0L3QtSDQvdCwINC40LfQs9C70LXQtNCw4oCmIgogCi0jOiBnaXRrOjIxMDAKKyM6IGdpdGs6MjEwNAogbXNnaWQgIiZEZWxldGUgdmlldyIKIG1zZ3N0ciAiJtCY0LfRgtGA0LjQstCw0L3QtSDQvdCwINC40LfQs9C70LXQtNCwIgogCi0jOiBnaXRrOjIxMDIKKyM6IGdpdGs6MjEwNgogbXNnaWQgIiZBbGwgZmlsZXMiCiBtc2dzdHIgIibQktGB0LjRh9C60Lgg0YTQsNC50LvQvtCy0LUiCiAKLSM6IGdpdGs6MjA5NworIzogZ2l0azoyMTAxCiBtc2dpZCAiJlZpZXciCiBtc2dzdHIgIibQmNC30LPQu9C10LQiCiAKLSM6IGdpdGs6MjEwNyBnaXRrOjIxMTcKKyM6IGdpdGs6MjExMSBnaXRrOjIxMjEKIG1zZ2lkICImQWJvdXQgZ2l0ayIKIG1zZ3N0ciAiJtCe0YLQvdC+0YHQvdC+IGdpdGsiCiAKLSM6IGdpdGs6MjEwOCBnaXRrOjIxMjIKKyM6IGdpdGs6MjExMiBnaXRrOjIxMjYKIG1zZ2lkICImS2V5IGJpbmRpbmdzIgogbXNnc3RyICIm0JrQu9Cw0LLQuNGI0L3QuCDQutC+0LzQsdC40L3QsNGG0LjQuCIKIAotIzogZ2l0azoyMTA2IGdpdGs6MjEyMQorIzogZ2l0azoyMTEwIGdpdGs6MjEyNQogbXNnaWQgIiZIZWxwIgogbXNnc3RyICLQn9C+0LzQvibRiSIKIAotIzogZ2l0azoyMTk5IGdpdGs6ODY3MQorIzogZ2l0azoyMjAzIGdpdGs6ODY4MQogbXNnaWQgIlNIQTEgSUQ6IgogbXNnc3RyICJTSEExOiIKIAotIzogZ2l0azoyMjQzCisjOiBnaXRrOjIyNDcKIG1zZ2lkICJSb3ciCiBtc2dzdHIgItCg0LXQtCIKIAotIzogZ2l0azoyMjgxCisjOiBnaXRrOjIyODUKIG1zZ2lkICJGaW5kIgogbXNnc3RyICLQotGK0YDRgdC10L3QtSIKIAotIzogZ2l0azoyMzA5CisjOiBnaXRrOjIzMTMKIG1zZ2lkICJjb21taXQiCiBtc2dzdHIgItC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGdpdGs6MjMxMyBnaXRrOjIzMTUgZ2l0azo0NzA2IGdpdGs6NDcyOSBnaXRrOjQ3NTMgZ2l0azo2Nzc0IGdpdGs6Njg0NgotIzogZ2l0azo2OTMxCisjOiBnaXRrOjIzMTcgZ2l0azoyMzE5IGdpdGs6NDcxMSBnaXRrOjQ3MzQgZ2l0azo0NzU4IGdpdGs6Njc3OSBnaXRrOjY4NTEKKyM6IGdpdGs6NjkzNgogbXNnaWQgImNvbnRhaW5pbmc6IgogbXNnc3RyICLRgdGK0LTRitGA0LbQsNGJ0L46IgogCi0jOiBnaXRrOjIzMTYgZ2l0azozNTQ1IGdpdGs6MzU1MCBnaXRrOjQ3ODIKKyM6IGdpdGs6MjMyMCBnaXRrOjM1NTAgZ2l0azozNTU1IGdpdGs6NDc4NwogbXNnaWQgInRvdWNoaW5nIHBhdGhzOiIKLW1zZ3N0ciAi0LfQsNGB0Y/Qs9Cw0YnQviDQv9GK0YLQuNGJ0LDRgtCwOiIKK21zZ3N0ciAi0LIg0L/RitGC0LjRidCw0YLQsDoiCiAKLSM6IGdpdGs6MjMxNyBnaXRrOjQ3OTYKKyM6IGdpdGs6MjMyMSBnaXRrOjQ4MDEKIG1zZ2lkICJhZGRpbmcvcmVtb3Zpbmcgc3RyaW5nOiIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0YnQvi/Qv9GA0LXQvNCw0YXQstCw0YnQviDQvdC40LciCiAKLSM6IGdpdGs6MjMxOCBnaXRrOjQ3OTgKKyM6IGdpdGs6MjMyMiBnaXRrOjQ4MDMKIG1zZ2lkICJjaGFuZ2luZyBsaW5lcyBtYXRjaGluZzoiCiBtc2dzdHIgItC/0YDQvtC80LXQvdGP0YnQviDRgNC10LTQvtCy0LUg0L3QsNC/0LDRgdCy0LDRidC4OiIKIAotIzogZ2l0azoyMzI3IGdpdGs6MjMyOSBnaXRrOjQ3ODUKKyM6IGdpdGs6MjMzMSBnaXRrOjIzMzMgZ2l0azo0NzkwCiBtc2dpZCAiRXhhY3QiCiBtc2dzdHIgItCi0L7Rh9C90L4iCiAKLSM6IGdpdGs6MjMyOSBnaXRrOjQ4NzMgZ2l0azo2NzQyCisjOiBnaXRrOjIzMzMgZ2l0azo0ODc4IGdpdGs6Njc0NwogbXNnaWQgIklnbkNhc2UiCiBtc2dzdHIgItCR0LXQtyDRgNC10LPQuNGB0YLRitGAIgogCi0jOiBnaXRrOjIzMjkgZ2l0azo0NzU1IGdpdGs6NDg3MSBnaXRrOjY3MzgKKyM6IGdpdGs6MjMzMyBnaXRrOjQ3NjAgZ2l0azo0ODc2IGdpdGs6Njc0MwogbXNnaWQgIlJlZ2V4cCIKIG1zZ3N0ciAi0KDQtdCzLiDQuNC30YDQsNC3IgogCi0jOiBnaXRrOjIzMzEgZ2l0azoyMzMyIGdpdGs6NDg5MyBnaXRrOjQ5MjMgZ2l0azo0OTMwIGdpdGs6Njg2NyBnaXRrOjY5MzUKKyM6IGdpdGs6MjMzNSBnaXRrOjIzMzYgZ2l0azo0ODk4IGdpdGs6NDkyOCBnaXRrOjQ5MzUgZ2l0azo2ODcyIGdpdGs6Njk0MAogbXNnaWQgIkFsbCBmaWVsZHMiCiBtc2dzdHIgItCS0YHQuNGH0LrQuCDQv9C+0LvQtdGC0LAiCiAKLSM6IGdpdGs6MjMzMiBnaXRrOjQ4OTAgZ2l0azo0OTIzIGdpdGs6NjgwNQorIzogZ2l0azoyMzM2IGdpdGs6NDg5NSBnaXRrOjQ5MjggZ2l0azo2ODEwCiBtc2dpZCAiSGVhZGxpbmUiCiBtc2dzdHIgItCf0YrRgNCy0Lgg0YDQtdC0IgogCi0jOiBnaXRrOjIzMzMgZ2l0azo0ODkwIGdpdGs6NjgwNSBnaXRrOjY5MzUgZ2l0azo3NDA4CisjOiBnaXRrOjIzMzcgZ2l0azo0ODk1IGdpdGs6NjgxMCBnaXRrOjY5NDAgZ2l0azo3NDEzCiBtc2dpZCAiQ29tbWVudHMiCiBtc2dzdHIgItCa0L7QvNC10L3RgtCw0YDQuCIKIAotIzogZ2l0azoyMzMzIGdpdGs6NDg5MCBnaXRrOjQ4OTUgZ2l0azo0OTMwIGdpdGs6NjgwNSBnaXRrOjczNDMgZ2l0azo4ODQ5Ci0jOiBnaXRrOjg4NjQKKyM6IGdpdGs6MjMzNyBnaXRrOjQ4OTUgZ2l0azo0OTAwIGdpdGs6NDkzNSBnaXRrOjY4MTAgZ2l0azo3MzQ4IGdpdGs6ODg1OQorIzogZ2l0azo4ODc0CiBtc2dpZCAiQXV0aG9yIgogbXNnc3RyICLQkNCy0YLQvtGAIgogCi0jOiBnaXRrOjIzMzMgZ2l0azo0ODkwIGdpdGs6NjgwNSBnaXRrOjczNDUKKyM6IGdpdGs6MjMzNyBnaXRrOjQ4OTUgZ2l0azo2ODEwIGdpdGs6NzM1MAogbXNnaWQgIkNvbW1pdHRlciIKIG1zZ3N0ciAi0J/QvtC00LDQstCw0YkiCiAKLSM6IGdpdGs6MjM2NworIzogZ2l0azoyMzcxCiBtc2dpZCAiU2VhcmNoIgogbXNnc3RyICLQotGK0YDRgdC10L3QtSIKIAotIzogZ2l0azoyMzc1CisjOiBnaXRrOjIzNzkKIG1zZ2lkICJEaWZmIgogbXNnc3RyICLQoNCw0LfQu9C40LrQuCIKIAotIzogZ2l0azoyMzc3CisjOiBnaXRrOjIzODEKIG1zZ2lkICJPbGQgdmVyc2lvbiIKIG1zZ3N0ciAi0KHRgtCw0YDQsCDQstC10YDRgdC40Y8iCiAKLSM6IGdpdGs6MjM3OQorIzogZ2l0azoyMzgzCiBtc2dpZCAiTmV3IHZlcnNpb24iCiBtc2dzdHIgItCd0L7QstCwINCy0LXRgNGB0LjRjyIKIAotIzogZ2l0azoyMzgyCisjOiBnaXRrOjIzODYKIG1zZ2lkICJMaW5lcyBvZiBjb250ZXh0IgogbXNnc3RyICLQmtC+0L3RgtC10LrRgdGCINCyINGA0LXQtNC+0LLQtSIKIAotIzogZ2l0azoyMzkyCisjOiBnaXRrOjIzOTYKIG1zZ2lkICJJZ25vcmUgc3BhY2UgY2hhbmdlIgogbXNnc3RyICLQn9GA0LDQt9C90LjRgtC1INC30L3QsNGG0Lgg0LHQtdC3INC30L3QsNGH0LXQvdC40LUiCiAKLSM6IGdpdGs6MjM5NiBnaXRrOjIzOTggZ2l0azo3OTc4IGdpdGs6ODIyNQorIzogZ2l0azoyNDAwIGdpdGs6MjQwMiBnaXRrOjc5ODMgZ2l0azo4MjM1CiBtc2dpZCAiTGluZSBkaWZmIgogbXNnc3RyICLQn9C+0YDQtdC00L7QstC4INGA0LDQt9C70LjQutC4IgogCi0jOiBnaXRrOjI0NjMKKyM6IGdpdGs6MjQ2NwogbXNnaWQgIlBhdGNoIgogbXNnc3RyICLQmtGA0YrQv9C60LAiCiAKLSM6IGdpdGs6MjQ2NQorIzogZ2l0azoyNDY5CiBtc2dpZCAiVHJlZSIKIG1zZ3N0ciAi0JTRitGA0LLQviIKIAotIzogZ2l0azoyNjM1IGdpdGs6MjY1NgorIzogZ2l0azoyNjM5IGdpdGs6MjY2MAogbXNnaWQgIkRpZmYgdGhpcyAtPiBzZWxlY3RlZCIKIG1zZ3N0ciAi0KDQsNC30LvQuNC60Lgg0LzQtdC20LTRgyDRgtC+0LLQsCDQuCDQuNC30LHRgNCw0L3QvtGC0L4iCiAKLSM6IGdpdGs6MjYzNiBnaXRrOjI2NTcKKyM6IGdpdGs6MjY0MCBnaXRrOjI2NjEKIG1zZ2lkICJEaWZmIHNlbGVjdGVkIC0+IHRoaXMiCiBtc2dzdHIgItCg0LDQt9C70LjQutC4INC80LXQttC00YMg0LjQt9Cx0YDQsNC90L7RgtC+INC4INGC0L7QstCwIgogCi0jOiBnaXRrOjI2MzcgZ2l0azoyNjU4CisjOiBnaXRrOjI2NDEgZ2l0azoyNjYyCiBtc2dpZCAiTWFrZSBwYXRjaCIKIG1zZ3N0ciAi0KHRitC30LTQsNCy0LDQvdC1INC90LAg0LrRgNGK0L/QutCwIgogCi0jOiBnaXRrOjI2MzggZ2l0azo5MjczCisjOiBnaXRrOjI2NDIgZ2l0azo5MjgzCiBtc2dpZCAiQ3JlYXRlIHRhZyIKIG1zZ3N0ciAi0KHRitC30LTQsNCy0LDQvdC1INC90LAg0LXRgtC40LrQtdGCIgogCi0jOiBnaXRrOjI2MzkKKyM6IGdpdGs6MjY0MwogbXNnaWQgIkNvcHkgY29tbWl0IHN1bW1hcnkiCiBtc2dzdHIgItCa0L7Qv9C40YDQsNC90LUg0L3QsCDQuNC90YTQvtGA0LzQsNGG0LjRj9GC0LAg0LfQsCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBnaXRrOjI2NDAgZ2l0azo5NDA0CisjOiBnaXRrOjI2NDQgZ2l0azo5NDE0CiBtc2dpZCAiV3JpdGUgY29tbWl0IHRvIGZpbGUiCiBtc2dzdHIgItCX0LDQv9Cw0LfQstCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LXRgtC+INCy0YrQsiDRhNCw0LnQuyIKIAotIzogZ2l0azoyNjQxIGdpdGs6OTQ2MQorIzogZ2l0azoyNjQ1CiBtc2dpZCAiQ3JlYXRlIG5ldyBicmFuY2giCiBtc2dzdHIgItCh0YrQt9C00LDQstCw0L3QtSDQvdCwINC90L7QsiDQutC70L7QvSIKIAotIzogZ2l0azoyNjQyCisjOiBnaXRrOjI2NDYKIG1zZ2lkICJDaGVycnktcGljayB0aGlzIGNvbW1pdCIKIG1zZ3N0ciAi0J7RgtCx0LjRgNCw0L3QtSDQvdCwINGC0L7QstCwINC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGdpdGs6MjY0MworIzogZ2l0azoyNjQ3CiBtc2dpZCAiUmVzZXQgSEVBRCBicmFuY2ggdG8gaGVyZSIKIG1zZ3N0ciAi0J/RgNC40LLQtdC20LTQsNC90LUg0L3QsCDQstGK0YDRhdCwINC90LAg0LrQu9C+0L3QsCDQutGK0Lwg0YLQtdC60YPRidC+0YLQviDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBnaXRrOjI2NDQKKyM6IGdpdGs6MjY0OAogbXNnaWQgIk1hcmsgdGhpcyBjb21taXQiCiBtc2dzdHIgItCe0YLQsdC10LvRj9C30LLQsNC90LUg0L3QsCDRgtC+0LLQsCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBnaXRrOjI2NDUKKyM6IGdpdGs6MjY0OQogbXNnaWQgIlJldHVybiB0byBtYXJrIgogbXNnc3RyICLQktGA0YrRidCw0L3QtSDQutGK0Lwg0L7RgtCx0LXQu9GP0LfQsNC90L7RgtC+INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGdpdGs6MjY0NgorIzogZ2l0azoyNjUwCiBtc2dpZCAiRmluZCBkZXNjZW5kYW50IG9mIHRoaXMgYW5kIG1hcmsiCiBtc2dzdHIgItCe0YLQutGA0LjQstCw0L3QtSDQuCDQvtGC0LHQtdC70Y/Qt9Cy0LDQvdC1INC90LAg0L3QsNGB0LvQtdC00L3QuNGG0LjRgtC1IgogCi0jOiBnaXRrOjI2NDcKKyM6IGdpdGs6MjY1MQogbXNnaWQgIkNvbXBhcmUgd2l0aCBtYXJrZWQgY29tbWl0IgogbXNnc3RyICLQodGA0LDQstC90LXQvdC40LUg0YEg0L7RgtCx0LXQu9GP0LfQsNC90L7RgtC+INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGdpdGs6MjY0OCBnaXRrOjI2NTkKKyM6IGdpdGs6MjY1MiBnaXRrOjI2NjMKIG1zZ2lkICJEaWZmIHRoaXMgLT4gbWFya2VkIGNvbW1pdCIKIG1zZ3N0ciAi0KDQsNC30LvQuNC60Lgg0LzQtdC20LTRgyDRgtC+0LLQsCDQuCDQvtGC0LHQtdC70Y/Qt9Cw0L3QvtGC0L4iCiAKLSM6IGdpdGs6MjY0OSBnaXRrOjI2NjAKKyM6IGdpdGs6MjY1MyBnaXRrOjI2NjQKIG1zZ2lkICJEaWZmIG1hcmtlZCBjb21taXQgLT4gdGhpcyIKIG1zZ3N0ciAi0KDQsNC30LvQuNC60Lgg0LzQtdC20LTRgyDQvtGC0LHQtdC70Y/Qt9Cw0L3QvtGC0L4g0Lgg0YLQvtCy0LAiCiAKLSM6IGdpdGs6MjY1MAorIzogZ2l0azoyNjU0CiBtc2dpZCAiUmV2ZXJ0IHRoaXMgY29tbWl0IgogbXNnc3RyICLQntGC0LzRj9C90LAg0L3QsCDRgtC+0LLQsCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBnaXRrOjI2NjYKKyM6IGdpdGs6MjY3MAogbXNnaWQgIkNoZWNrIG91dCB0aGlzIGJyYW5jaCIKIG1zZ3N0ciAi0JjQt9GC0LXQs9C70Y/QvdC1INC90LAg0YLQvtC30Lgg0LrQu9C+0L0iCiAKLSM6IGdpdGs6MjY2NworIzogZ2l0azoyNjcxCittc2dpZCAiUmVuYW1lIHRoaXMgYnJhbmNoIgorbXNnc3RyICLQn9GA0LXQuNC80LXQvdGD0LLQsNC90LUg0L3QsCDRgtC+0LfQuCDQutC70L7QvSIKKworIzogZ2l0azoyNjcyCiBtc2dpZCAiUmVtb3ZlIHRoaXMgYnJhbmNoIgogbXNnc3RyICLQmNC30YLRgNC40LLQsNC90LUg0L3QsCDRgtC+0LfQuCDQutC70L7QvSIKIAotIzogZ2l0azoyNjY4CisjOiBnaXRrOjI2NzMKIG1zZ2lkICJDb3B5IGJyYW5jaCBuYW1lIgogbXNnc3RyICLQmtC+0L/QuNGA0LDQvdC1INC90LAg0LjQvNC10YLQviDQvdCwINC60LvQvtC90LAiCiAKLSM6IGdpdGs6MjY3NQorIzogZ2l0azoyNjgwCiBtc2dpZCAiSGlnaGxpZ2h0IHRoaXMgdG9vIgogbXNnc3RyICLQntGC0LHQtdC70Y/Qt9Cy0LDQvdC1INC4INC90LAg0YLQvtCy0LAiCiAKLSM6IGdpdGs6MjY3NgorIzogZ2l0azoyNjgxCiBtc2dpZCAiSGlnaGxpZ2h0IHRoaXMgb25seSIKIG1zZ3N0ciAi0J7RgtCx0LXQu9GP0LfQstCw0L3QtSDRgdCw0LzQviDQvdCwINGC0L7QstCwIgogCi0jOiBnaXRrOjI2NzcKKyM6IGdpdGs6MjY4MgogbXNnaWQgIkV4dGVybmFsIGRpZmYiCiBtc2dzdHIgItCS0YrQvdGI0L3QsCDQv9GA0L7Qs9GA0LDQvNCwINC30LAg0YDQsNC30LvQuNC60LgiCiAKLSM6IGdpdGs6MjY3OAorIzogZ2l0azoyNjgzCiBtc2dpZCAiQmxhbWUgcGFyZW50IGNvbW1pdCIKIG1zZ3N0ciAi0JDQvdC+0YLQuNGA0LDQvdC1INC90LAg0YDQvtC00LjRgtC10LvRgdC60L7RgtC+INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGdpdGs6MjY3OQorIzogZ2l0azoyNjg0CiBtc2dpZCAiQ29weSBwYXRoIgogbXNnc3RyICLQmtC+0L/QuNGA0LDQvdC1INC90LAg0L/RitGC0Y8iCiAKLSM6IGdpdGs6MjY4NgorIzogZ2l0azoyNjkxCiBtc2dpZCAiU2hvdyBvcmlnaW4gb2YgdGhpcyBsaW5lIgogbXNnc3RyICLQn9C+0LrQsNC30LLQsNC90LUg0L3QsCDQv9GA0L7QuNC30YXQvtC00LAg0L3QsCDRgtC+0LfQuCDRgNC10LQiCiAKLSM6IGdpdGs6MjY4NworIzogZ2l0azoyNjkyCiBtc2dpZCAiUnVuIGdpdCBndWkgYmxhbWUgb24gdGhpcyBsaW5lIgogbXNnc3RyICLQmNC30L/RitC70L3QtdC90LjQtSDQvdCwIOKAnmdpdCBndWkgYmxhbWXigJwg0LLRitGA0YXRgyDRgtC+0LfQuCDRgNC10LQiCiAKLSM6IGdpdGs6MzAzMQorIzogZ2l0azozMDM2CiBtc2dpZCAiQWJvdXQgZ2l0ayIKIG1zZ3N0ciAi0J7RgtC90L7RgdC90L4gZ2l0ayIKIAotIzogZ2l0azozMDMzCisjOiBnaXRrOjMwMzgKIG1zZ2lkICIiCiAiXG4iCiAiR2l0ayAtIGEgY29tbWl0IHZpZXdlciBmb3IgZ2l0XG4iCkBAIC0zODIsMzI0ICszODYsMzI0IEBACiAiXG4iCiAi0JjQt9C/0L7Qu9C30LLQsNC50YLQtSDQuCDRgNCw0LfQv9GA0L7RgdGC0YDQsNC90Y/QstCw0LnRgtC1INC/0YDQuCDRg9GB0LvQvtCy0LjRj9GC0LAg0L3QsCDQntCf0Jsg0L3QsCDQk9Cd0KMiCiAKLSM6IGdpdGs6MzA0MSBnaXRrOjMxMDggZ2l0azo5ODkwCisjOiBnaXRrOjMwNDYgZ2l0azozMTEzIGdpdGs6MTAwMDQKIG1zZ2lkICJDbG9zZSIKIG1zZ3N0ciAi0JfQsNGC0LLQsNGA0Y/QvdC1IgogCi0jOiBnaXRrOjMwNjIKKyM6IGdpdGs6MzA2NwogbXNnaWQgIkdpdGsga2V5IGJpbmRpbmdzIgogbXNnc3RyICLQmtC70LDQstC40YjQvdC4INC60L7QvNCx0LjQvdCw0YbQuNC4IgogCi0jOiBnaXRrOjMwNjUKKyM6IGdpdGs6MzA3MAogbXNnaWQgIkdpdGsga2V5IGJpbmRpbmdzOiIKIG1zZ3N0ciAi0JrQu9Cw0LLQuNGI0L3QuCDQutC+0LzQsdC40L3QsNGG0LjQuDoiCiAKLSM6IGdpdGs6MzA2NworIzogZ2l0azozMDcyCiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiPCVzLVE+XHRcdFF1aXQiCiBtc2dzdHIgIjwlcy1RPlx0XHTQodC/0LjRgNCw0L3QtSDQvdCwINC/0YDQvtCz0YDQsNC80LDRgtCwIgogCi0jOiBnaXRrOjMwNjgKKyM6IGdpdGs6MzA3MwogIywgdGNsLWZvcm1hdAogbXNnaWQgIjwlcy1XPlx0XHRDbG9zZSB3aW5kb3ciCiBtc2dzdHIgIjwlcy1XPlx0XHTQl9Cw0YLQstCw0YDRj9C90LUg0L3QsCDQv9GA0L7Qt9C+0YDQtdGG0LAiCiAKLSM6IGdpdGs6MzA2OQorIzogZ2l0azozMDc0CiBtc2dpZCAiPEhvbWU+XHRcdE1vdmUgdG8gZmlyc3QgY29tbWl0IgogbXNnc3RyICI8SG9tZT5cdFx00JrRitC8INC/0YrRgNCy0L7RgtC+INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGdpdGs6MzA3MAorIzogZ2l0azozMDc1CiBtc2dpZCAiPEVuZD5cdFx0TW92ZSB0byBsYXN0IGNvbW1pdCIKIG1zZ3N0ciAiPEVuZD5cdFx00JrRitC8INC/0L7RgdC70LXQtNC90L7RgtC+INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGdpdGs6MzA3MQorIzogZ2l0azozMDc2CiBtc2dpZCAiPFVwPiwgcCwga1x0TW92ZSB1cCBvbmUgY29tbWl0IgogbXNnc3RyICI8VXA+LCBwLCBrXHTQldC00L3QviDQv9C+0LTQsNCy0LDQvdC1INC90LDQs9C+0YDQtSIKIAotIzogZ2l0azozMDcyCisjOiBnaXRrOjMwNzcKIG1zZ2lkICI8RG93bj4sIG4sIGpcdE1vdmUgZG93biBvbmUgY29tbWl0IgogbXNnc3RyICI8RG93bj4sIG4sIGpcdNCV0LTQvdC+INC/0L7QtNCw0LLQsNC90LUg0L3QsNC00L7Qu9GDIgogCi0jOiBnaXRrOjMwNzMKKyM6IGdpdGs6MzA3OAogbXNnaWQgIjxMZWZ0PiwgeiwgaFx0R28gYmFjayBpbiBoaXN0b3J5IGxpc3QiCiBtc2dzdHIgIjxMZWZ0PiwgeiwgaFx00J3QsNC30LDQtCDQsiDQuNGB0YLQvtGA0LjRj9GC0LAiCiAKLSM6IGdpdGs6MzA3NAorIzogZ2l0azozMDc5CiBtc2dpZCAiPFJpZ2h0PiwgeCwgbFx0R28gZm9yd2FyZCBpbiBoaXN0b3J5IGxpc3QiCiBtc2dzdHIgIjxSaWdodD4sIHgsIGxcdNCd0LDQv9GA0LXQtCDQsiDQuNGB0YLQvtGA0LjRj9GC0LAiCiAKLSM6IGdpdGs6MzA3NQorIzogZ2l0azozMDgwCiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiPCVzLW4+XHRHbyB0byBuLXRoIHBhcmVudCBvZiBjdXJyZW50IGNvbW1pdCBpbiBoaXN0b3J5IGxpc3QiCiBtc2dzdHIgIjwlcy1uPlx00JrRitC8IG4t0YLQuNGPINGA0L7QtNC40YLQtdC7INC90LAg0YLQtdC60YPRidC+0YLQviDQv9C+0LTQsNCy0LDQvdC1INCyINC40YHRgtC+0YDQuNGP0YLQsCIKIAotIzogZ2l0azozMDc2CisjOiBnaXRrOjMwODEKIG1zZ2lkICI8UGFnZVVwPlx0TW92ZSB1cCBvbmUgcGFnZSBpbiBjb21taXQgbGlzdCIKIG1zZ3N0ciAiPFBhZ2VVcD5cdNCh0YLRgNCw0L3QuNGG0LAg0L3QsNCz0L7RgNC1INCyINGB0L/QuNGB0YrQutCwINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAiCiAKLSM6IGdpdGs6MzA3NworIzogZ2l0azozMDgyCiBtc2dpZCAiPFBhZ2VEb3duPlx0TW92ZSBkb3duIG9uZSBwYWdlIGluIGNvbW1pdCBsaXN0IgogbXNnc3RyICI8UGFnZURvd24+XHTQodGC0YDQsNC90LjRhtCwINC90LDQtNC+0LvRgyDQsiDRgdC/0LjRgdGK0LrQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwIgogCi0jOiBnaXRrOjMwNzgKKyM6IGdpdGs6MzA4MwogIywgdGNsLWZvcm1hdAogbXNnaWQgIjwlcy1Ib21lPlx0U2Nyb2xsIHRvIHRvcCBvZiBjb21taXQgbGlzdCIKIG1zZ3N0ciAiPCVzLUhvbWU+XHTQmtGK0Lwg0L3QsNGH0LDQu9C+0YLQviDQvdCwINGB0L/QuNGB0YrQutCwINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAiCiAKLSM6IGdpdGs6MzA3OQorIzogZ2l0azozMDg0CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiPCVzLUVuZD5cdFNjcm9sbCB0byBib3R0b20gb2YgY29tbWl0IGxpc3QiCiBtc2dzdHIgIjwlcy1FbmQ+XHTQmtGK0Lwg0LrRgNCw0Y8g0L3QsCDRgdC/0LjRgdGK0LrQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwIgogCi0jOiBnaXRrOjMwODAKKyM6IGdpdGs6MzA4NQogIywgdGNsLWZvcm1hdAogbXNnaWQgIjwlcy1VcD5cdFNjcm9sbCBjb21taXQgbGlzdCB1cCBvbmUgbGluZSIKIG1zZ3N0ciAiPCVzLVVwPlx00KDQtdC0INC90LDQs9C+0YDQtSDQsiDRgdC/0LjRgdGK0LrQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y8iCiAKLSM6IGdpdGs6MzA4MQorIzogZ2l0azozMDg2CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiPCVzLURvd24+XHRTY3JvbGwgY29tbWl0IGxpc3QgZG93biBvbmUgbGluZSIKIG1zZ3N0ciAiPCVzLURvd24+XHTQoNC10LQg0L3QsNC00L7Qu9GDINCyINGB0L/QuNGB0YrQutCwINGBINC/0L7QtNCw0LLQsNC90LjRjyIKIAotIzogZ2l0azozMDgyCisjOiBnaXRrOjMwODcKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICI8JXMtUGFnZVVwPlx0U2Nyb2xsIGNvbW1pdCBsaXN0IHVwIG9uZSBwYWdlIgogbXNnc3RyICI8JXMtUGFnZVVwPlx00KHRgtGA0LDQvdC40YbQsCDQvdCw0LPQvtGA0LUg0LIg0YHQv9C40YHRitC60LAg0YEg0L/QvtC00LDQstCw0L3QuNGPIgogCi0jOiBnaXRrOjMwODMKKyM6IGdpdGs6MzA4OAogIywgdGNsLWZvcm1hdAogbXNnaWQgIjwlcy1QYWdlRG93bj5cdFNjcm9sbCBjb21taXQgbGlzdCBkb3duIG9uZSBwYWdlIgogbXNnc3RyICI8JXMtUGFnZURvd24+XHTQodGC0YDQsNC90LjRhtCwINC90LDQtNC+0LvRgyDQsiDRgdC/0LjRgdGK0LrQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y8iCiAKLSM6IGdpdGs6MzA4NAorIzogZ2l0azozMDg5CiBtc2dpZCAiPFNoaWZ0LVVwPlx0RmluZCBiYWNrd2FyZHMgKHVwd2FyZHMsIGxhdGVyIGNvbW1pdHMpIgogbXNnc3RyICI8U2hpZnQtVXA+XHTQotGK0YDRgdC10L3QtSDQvdCw0LfQsNC0ICjQstC40LfRg9Cw0LvQvdC+INC90LDQs9C+0YDQtSwg0LjRgdGC0L7RgNC40YfQtdGB0LrQuCDigJQg0L/QvtGB0LvQtdC00LLQsNGJ0LgpIgogCi0jOiBnaXRrOjMwODUKKyM6IGdpdGs6MzA5MAogbXNnaWQgIjxTaGlmdC1Eb3duPlx0RmluZCBmb3J3YXJkcyAoZG93bndhcmRzLCBlYXJsaWVyIGNvbW1pdHMpIgogbXNnc3RyICIiCiAiPFNoaWZ0LURvd24+XHTQotGK0YDRgdC10L3QtSDQvdCw0L/RgNC10LQgKNCy0LjQt9GD0LDQu9C90L4g0L3QsNC00L7Qu9GDLCDQuNGB0YLQvtGA0LjRh9C10YHQutC4IOKAlCDQv9GA0LXQtNGF0L7QttC00LDRidC4KSIKIAotIzogZ2l0azozMDg2CisjOiBnaXRrOjMwOTEKIG1zZ2lkICI8RGVsZXRlPiwgYlx0U2Nyb2xsIGRpZmYgdmlldyB1cCBvbmUgcGFnZSIKIG1zZ3N0ciAiPERlbGV0ZT4sIGJcdNCh0YLRgNCw0L3QuNGG0LAg0L3QsNCz0L7RgNC1INCyINC40LfQs9C70LXQtNCwINC30LAg0YDQsNC30LvQuNC60LgiCiAKLSM6IGdpdGs6MzA4NworIzogZ2l0azozMDkyCiBtc2dpZCAiPEJhY2tzcGFjZT5cdFNjcm9sbCBkaWZmIHZpZXcgdXAgb25lIHBhZ2UiCiBtc2dzdHIgIjxCYWNrc3BhY2U+XHTQodGC0YDQsNC90LjRhtCwINC90LDQtNC+0LvRgyDQsiDQuNC30LPQu9C10LTQsCDQt9CwINGA0LDQt9C70LjQutC4IgogCi0jOiBnaXRrOjMwODgKKyM6IGdpdGs6MzA5MwogbXNnaWQgIjxTcGFjZT5cdFx0U2Nyb2xsIGRpZmYgdmlldyBkb3duIG9uZSBwYWdlIgogbXNnc3RyICI8U3BhY2U+XHRcdNCh0YLRgNCw0L3QuNGG0LAg0L3QsNC00L7Qu9GDINCyINC40LfQs9C70LXQtNCwINC30LAg0YDQsNC30LvQuNC60LgiCiAKLSM6IGdpdGs6MzA4OQorIzogZ2l0azozMDk0CiBtc2dpZCAidVx0XHRTY3JvbGwgZGlmZiB2aWV3IHVwIDE4IGxpbmVzIgogbXNnc3RyICJ1XHRcdDE4INGA0LXQtNCwINC90LDQs9C+0YDQtSDQsiDQuNC30LPQu9C10LTQsCDQt9CwINGA0LDQt9C70LjQutC4IgogCi0jOiBnaXRrOjMwOTAKKyM6IGdpdGs6MzA5NQogbXNnaWQgImRcdFx0U2Nyb2xsIGRpZmYgdmlldyBkb3duIDE4IGxpbmVzIgogbXNnc3RyICJkXHRcdDE4INGA0LXQtNCwINC90LDQtNC+0LvRgyDQsiDQuNC30LPQu9C10LTQsCDQt9CwINGA0LDQt9C70LjQutC4IgogCi0jOiBnaXRrOjMwOTEKKyM6IGdpdGs6MzA5NgogIywgdGNsLWZvcm1hdAogbXNnaWQgIjwlcy1GPlx0XHRGaW5kIgogbXNnc3RyICI8JXMtRj5cdFx00KLRitGA0YHQtdC90LUiCiAKLSM6IGdpdGs6MzA5MgorIzogZ2l0azozMDk3CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiPCVzLUc+XHRcdE1vdmUgdG8gbmV4dCBmaW5kIGhpdCIKIG1zZ3N0ciAiPCVzLUc+XHRcdNCa0YrQvCDRgdC70LXQtNCy0LDRidCw0YLQsCDQv9C+0Y/QstCwIgogCi0jOiBnaXRrOjMwOTMKKyM6IGdpdGs6MzA5OAogbXNnaWQgIjxSZXR1cm4+XHRNb3ZlIHRvIG5leHQgZmluZCBoaXQiCiBtc2dzdHIgIjxSZXR1cm4+XHTQmtGK0Lwg0YHQu9C10LTQstCw0YnQsNGC0LAg0L/QvtGP0LLQsCIKIAotIzogZ2l0azozMDk0CisjOiBnaXRrOjMwOTkKIG1zZ2lkICJnXHRcdEdvIHRvIGNvbW1pdCIKIG1zZ3N0ciAiZ1x0XHTQmtGK0Lwg0L/QvtGB0LvQtdC00L3QvtGC0L4g0L/QvtC00LDQstCw0L3QtSIKIAotIzogZ2l0azozMDk1CisjOiBnaXRrOjMxMDAKIG1zZ2lkICIvXHRcdEZvY3VzIHRoZSBzZWFyY2ggYm94IgogbXNnc3RyICIvXHRcdNCk0L7QutGD0YEg0LLRitGA0YXRgyDQv9C+0LvQtdGC0L4g0LfQsCDRgtGK0YDRgdC10L3QtSIKIAotIzogZ2l0azozMDk2CisjOiBnaXRrOjMxMDEKIG1zZ2lkICI/XHRcdE1vdmUgdG8gcHJldmlvdXMgZmluZCBoaXQiCiBtc2dzdHIgIj9cdFx00JrRitC8INC/0YDQtdC00LjRiNC90LDRgtCwINC/0L7Rj9Cy0LAiCiAKLSM6IGdpdGs6MzA5NworIzogZ2l0azozMTAyCiBtc2dpZCAiZlx0XHRTY3JvbGwgZGlmZiB2aWV3IHRvIG5leHQgZmlsZSIKIG1zZ3N0ciAiZlx0XHTQodC70LXQtNCy0LDRiSDRhNCw0LnQuyDQsiDQuNC30LPQu9C10LTQsCDQt9CwINGA0LDQt9C70LjQutC4IgogCi0jOiBnaXRrOjMwOTgKKyM6IGdpdGs6MzEwMwogIywgdGNsLWZvcm1hdAogbXNnaWQgIjwlcy1TPlx0XHRTZWFyY2ggZm9yIG5leHQgaGl0IGluIGRpZmYgdmlldyIKIG1zZ3N0ciAiPCVzLVM+XHRcdNCi0YrRgNGB0LXQvdC1INC90LAg0YHQu9C10LTQstCw0YnQsNGC0LAg0L/QvtGP0LLQsCDQsiDQuNC30LPQu9C10LTQsCDQt9CwINGA0LDQt9C70LjQutC4IgogCi0jOiBnaXRrOjMwOTkKKyM6IGdpdGs6MzEwNAogIywgdGNsLWZvcm1hdAogbXNnaWQgIjwlcy1SPlx0XHRTZWFyY2ggZm9yIHByZXZpb3VzIGhpdCBpbiBkaWZmIHZpZXciCiBtc2dzdHIgIjwlcy1SPlx0XHTQotGK0YDRgdC10L3QtSDQvdCwINC/0YDQtdC00LjRiNC90LDRgtCwINC/0L7Rj9Cy0LAg0LIg0LjQt9Cz0LvQtdC00LAg0LfQsCDRgNCw0LfQu9C40LrQuCIKIAotIzogZ2l0azozMTAwCisjOiBnaXRrOjMxMDUKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICI8JXMtS1ArPlx0SW5jcmVhc2UgZm9udCBzaXplIgogbXNnc3RyICI8JXMtS1ArPlx00J/Qvi3Qs9C+0LvRj9C8INGA0LDQt9C80LXRgCDQvdCwINGI0YDQuNGE0YLQsCIKIAotIzogZ2l0azozMTAxCisjOiBnaXRrOjMxMDYKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICI8JXMtcGx1cz5cdEluY3JlYXNlIGZvbnQgc2l6ZSIKIG1zZ3N0ciAiPCVzLXBsdXM+XHTQn9C+LdCz0L7Qu9GP0Lwg0YDQsNC30LzQtdGAINC90LAg0YjRgNC40YTRgtCwIgogCi0jOiBnaXRrOjMxMDIKKyM6IGdpdGs6MzEwNwogIywgdGNsLWZvcm1hdAogbXNnaWQgIjwlcy1LUC0+XHREZWNyZWFzZSBmb250IHNpemUiCiBtc2dzdHIgIjwlcy1LUC0+XHTQn9C+LdC80LDQu9GK0Log0YDQsNC30LzQtdGAINC90LAg0YjRgNC40YTRgtCwIgogCi0jOiBnaXRrOjMxMDMKKyM6IGdpdGs6MzEwOAogIywgdGNsLWZvcm1hdAogbXNnaWQgIjwlcy1taW51cz5cdERlY3JlYXNlIGZvbnQgc2l6ZSIKIG1zZ3N0ciAiPCVzLW1pbnVzPlx00J/Qvi3QvNCw0LvRitC6INGA0LDQt9C80LXRgCDQvdCwINGI0YDQuNGE0YLQsCIKIAotIzogZ2l0azozMTA0CisjOiBnaXRrOjMxMDkKIG1zZ2lkICI8RjU+XHRcdFVwZGF0ZSIKIG1zZ3N0ciAiPEY1Plx0XHTQntCx0L3QvtCy0Y/QstCw0L3QtSIKIAotIzogZ2l0azozNTY5IGdpdGs6MzU3OAorIzogZ2l0azozNTc0IGdpdGs6MzU4MwogIywgdGNsLWZvcm1hdAogbXNnaWQgIkVycm9yIGNyZWF0aW5nIHRlbXBvcmFyeSBkaXJlY3RvcnkgJXM6IgogbXNnc3RyICLQk9GA0LXRiNC60LAg0L/RgNC4INGB0YrQt9C00LDQstCw0L3QtdGC0L4g0L3QsCDQstGA0LXQvNC10L3QvdCw0YLQsCDQtNC40YDQtdC60YLQvtGA0LjRjyDigJ4lc+KAnDoiCiAKLSM6IGdpdGs6MzU5MQorIzogZ2l0azozNTk2CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiRXJyb3IgZ2V0dGluZyBcIiVzXCIgZnJvbSAlczoiCiBtc2dzdHIgItCT0YDQtdGI0LrQsCDQv9GA0Lgg0L/QvtC70YPRh9Cw0LLQsNC90LXRgtC+INC90LAg4oCeJXPigJwg0L7RgiAlczoiCiAKLSM6IGdpdGs6MzY1NAorIzogZ2l0azozNjU5CiBtc2dpZCAiY29tbWFuZCBmYWlsZWQ6IgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDQutC+0LzQsNC90LTQsDoiCiAKLSM6IGdpdGs6MzgwMworIzogZ2l0azozODA4CiBtc2dpZCAiTm8gc3VjaCBjb21taXQiCiBtc2dzdHIgItCi0LDQutC+0LLQsCDQv9C+0LTQsNCy0LDQvdC1INC90Y/QvNCwIgogCi0jOiBnaXRrOjM4MTcKKyM6IGdpdGs6MzgyMgogbXNnaWQgImdpdCBndWkgYmxhbWU6IGNvbW1hbmQgZmFpbGVkOiIKIG1zZ3N0ciAi4oCeZ2l0IGd1aSBibGFtZeKAnDog0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg0LrQvtC80LDQvdC00LA6IgogCi0jOiBnaXRrOjM4NDgKKyM6IGdpdGs6Mzg1MwogIywgdGNsLWZvcm1hdAogbXNnaWQgIkNvdWxkbid0IHJlYWQgbWVyZ2UgaGVhZDogJXMiCiBtc2dzdHIgItCS0YrRgNGF0YrRgiDQt9CwINGB0LvQuNCy0LDQvdC1INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0L7Rh9C10YLQtdC9OiAlcyIKIAotIzogZ2l0azozODU2CisjOiBnaXRrOjM4NjEKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJFcnJvciByZWFkaW5nIGluZGV4OiAlcyIKIG1zZ3N0ciAi0JPRgNC10YjQutCwINC/0YDQuCDQv9GA0L7Rh9C40YLQsNC90LUg0L3QsCDQuNC90LTQtdC60YHQsDogJXMiCiAKLSM6IGdpdGs6Mzg4MQorIzogZ2l0azozODg2CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiQ291bGRuJ3Qgc3RhcnQgZ2l0IGJsYW1lOiAlcyIKIG1zZ3N0ciAi0JrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCBibGFtZeKAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRgtCw0YDRgtC40YDQsNC90LA6ICVzIgogCi0jOiBnaXRrOjM4ODQgZ2l0azo2NzczCisjOiBnaXRrOjM4ODkgZ2l0azo2Nzc4CiBtc2dpZCAiU2VhcmNoaW5nIgogbXNnc3RyICLQotGK0YDRgdC10L3QtSIKIAotIzogZ2l0azozOTE2CisjOiBnaXRrOjM5MjEKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJFcnJvciBydW5uaW5nIGdpdCBibGFtZTogJXMiCiBtc2dzdHIgItCT0YDQtdGI0LrQsCDQv9GA0Lgg0LjQt9C/0YrQu9C90LXQvdC40LXRgtC+INC90LAg4oCeZ2l0IGJsYW1l4oCcOiAlcyIKIAotIzogZ2l0azozOTQ0CisjOiBnaXRrOjM5NDkKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJUaGF0IGxpbmUgY29tZXMgZnJvbSBjb21taXQgJXMsICB3aGljaCBpcyBub3QgaW4gdGhpcyB2aWV3IgogbXNnc3RyICLQotC+0LfQuCDRgNC10LQg0LjQtNCy0LAg0L7RgiDQv9C+0LTQsNCy0LDQvdC10YLQviAlcywg0LrQvtC10YLQviDQvdC1INC1INCyINC40LfQs9C70LXQtNCwIgogCi0jOiBnaXRrOjM5NTgKKyM6IGdpdGs6Mzk2MwogbXNnaWQgIkV4dGVybmFsIGRpZmYgdmlld2VyIGZhaWxlZDoiCiBtc2dzdHIgItCd0LXRg9GB0L/QtdGI0L3QviDQuNC30L/RitC70L3QtdC90LjQtSDQvdCwINCy0YrQvdGI0L3QsNGC0LAg0L/RgNC+0LPRgNCw0LzQsCDQt9CwINGA0LDQt9C70LjQutC4OiIKIAotIzogZ2l0azo0MDYyCisjOiBnaXRrOjQwNjcKIG1zZ2lkICJBbGwgZmlsZXMiCiBtc2dzdHIgItCS0YHQuNGH0LrQuCDRhNCw0LnQu9C+0LLQtSIKIAotIzogZ2l0azo0MDg2CisjOiBnaXRrOjQwOTEKIG1zZ2lkICJWaWV3IgogbXNnc3RyICLQmNC30LPQu9C10LQiCiAKLSM6IGdpdGs6NDA4OQorIzogZ2l0azo0MDk0CiBtc2dpZCAiR2l0ayB2aWV3IGRlZmluaXRpb24iCiBtc2dzdHIgItCU0LXRhNC40L3QuNGG0LjRjyDQvdCwINC40LfQs9C70LXQtCDQsiBHaXRrIgogCi0jOiBnaXRrOjQwOTMKKyM6IGdpdGs6NDA5OAogbXNnaWQgIlJlbWVtYmVyIHRoaXMgdmlldyIKIG1zZ3N0ciAi0JfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0YLQvtC30Lgg0LjQt9Cz0LvQtdC0IgogCi0jOiBnaXRrOjQwOTQKKyM6IGdpdGs6NDA5OQogbXNnaWQgIlJlZmVyZW5jZXMgKHNwYWNlIHNlcGFyYXRlZCBsaXN0KToiCiBtc2dzdHIgItCj0LrQsNC30LDRgtC10LvQuCAo0YHQv9C40YHRitC6INGBINGA0LDQt9C00LXQu9C40YLQtdC7INC40L3RgtC10YDQstCw0LspOiIKIAotIzogZ2l0azo0MDk1CisjOiBnaXRrOjQxMDAKIG1zZ2lkICJCcmFuY2hlcyAmIHRhZ3M6IgogbXNnc3RyICLQmtC70L7QvdC4INC4INC10YLQuNC60LXRgtC4OiIKIAotIzogZ2l0azo0MDk2CisjOiBnaXRrOjQxMDEKIG1zZ2lkICJBbGwgcmVmcyIKIG1zZ3N0ciAi0JLRgdC40YfQutC4INGD0LrQsNC30LDRgtC10LvQuCIKIAotIzogZ2l0azo0MDk3CisjOiBnaXRrOjQxMDIKIG1zZ2lkICJBbGwgKGxvY2FsKSBicmFuY2hlcyIKIG1zZ3N0ciAi0JLRgdC40YfQutC4ICjQu9C+0LrQsNC70L3QuCkg0LrQu9C+0L3QuCIKIAotIzogZ2l0azo0MDk4CisjOiBnaXRrOjQxMDMKIG1zZ2lkICJBbGwgdGFncyIKIG1zZ3N0ciAi0JLRgdC40YfQutC4INC10YLQuNC60LXRgtC4IgogCi0jOiBnaXRrOjQwOTkKKyM6IGdpdGs6NDEwNAogbXNnaWQgIkFsbCByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMiCiBtc2dzdHIgItCS0YHQuNGH0LrQuCDRgdC70LXQtNGP0YnQuCDQutC70L7QvdC4IgogCi0jOiBnaXRrOjQxMDAKKyM6IGdpdGs6NDEwNQogbXNnaWQgIkNvbW1pdCBJbmZvIChyZWd1bGFyIGV4cHJlc3Npb25zKToiCiBtc2dzdHIgItCY0L3RhNC+0YDQvNCw0YbQuNGPINC30LAg0L/QvtC00LDQstCw0L3QtSAo0YDQtdCzLiDQuNC30YAuKToiCiAKLSM6IGdpdGs6NDEwMQorIzogZ2l0azo0MTA2CiBtc2dpZCAiQXV0aG9yOiIKIG1zZ3N0ciAi0JDQstGC0L7RgDoiCiAKLSM6IGdpdGs6NDEwMgorIzogZ2l0azo0MTA3CiBtc2dpZCAiQ29tbWl0dGVyOiIKIG1zZ3N0ciAi0J/QvtC00LDQuzoiCiAKLSM6IGdpdGs6NDEwMworIzogZ2l0azo0MTA4CiBtc2dpZCAiQ29tbWl0IE1lc3NhZ2U6IgogbXNnc3RyICLQodGK0L7QsdGJ0LXQvdC40LUg0L/RgNC4INC/0L7QtNCw0LLQsNC90LU6IgogCi0jOiBnaXRrOjQxMDQKKyM6IGdpdGs6NDEwOQogbXNnaWQgIk1hdGNoZXMgYWxsIENvbW1pdCBJbmZvIGNyaXRlcmlhIgogbXNnc3RyICLQodGK0LLQv9Cw0LTQtdC90LjQtSDQv9C+INCy0YHQuNGH0LrQuCDRhdCw0YDQsNC60YLQtdGA0LjRgdGC0LjQutC4INC90LAg0L/QvtC00LDQstCw0L3QtdGC0L4iCiAKLSM6IGdpdGs6NDEwNQorIzogZ2l0azo0MTEwCiBtc2dpZCAiTWF0Y2hlcyBubyBDb21taXQgSW5mbyBjcml0ZXJpYSIKIG1zZ3N0ciAi0J3QtSDRgdGK0LLQv9Cw0LTQsCDQv9C+INC90LjQutC+0Y8g0L7RgiDRhdCw0YDQsNC60YLQtdGA0LjRgdGC0LjQutC40YLQtSDQvdCwINC/0L7QtNCw0LLQsNC90LXRgtC+IgogCi0jOiBnaXRrOjQxMDYKKyM6IGdpdGs6NDExMQogbXNnaWQgIkNoYW5nZXMgdG8gRmlsZXM6IgogbXNnc3RyICLQn9GA0L7QvNC10L3QuCDQv9C+INGE0LDQudC70L7QstC10YLQtToiCiAKLSM6IGdpdGs6NDEwNworIzogZ2l0azo0MTEyCiBtc2dpZCAiRml4ZWQgU3RyaW5nIgogbXNnc3RyICLQlNC+0YHQu9C+0LLQtdC9INC90LjQtyIKIAotIzogZ2l0azo0MTA4CisjOiBnaXRrOjQxMTMKIG1zZ2lkICJSZWd1bGFyIEV4cHJlc3Npb24iCiBtc2dzdHIgItCg0LXQs9GD0LvRj9GA0LXQvSDQuNC30YDQsNC3IgogCi0jOiBnaXRrOjQxMDkKKyM6IGdpdGs6NDExNAogbXNnaWQgIlNlYXJjaCBzdHJpbmc6IgogbXNnc3RyICLQndC40Lcg0LfQsCDRgtGK0YDRgdC10L3QtToiCiAKLSM6IGdpdGs6NDExMAorIzogZ2l0azo0MTE1CiBtc2dpZCAiIgogIkNvbW1pdCBEYXRlcyAoXCIyIHdlZWtzIGFnb1wiLCBcIjIwMDktMDMtMTcgMTU6Mjc6MzhcIiwgXCJNYXJjaCAxNywgMjAwOSAiCiAiMTU6Mjc6MzhcIik6IgpAQCAtNzA3LDIwNCArNzExLDIwNCBAQAogItCU0LDRgtCwINC90LAg0L/QvtC00LDQstCw0L3QtSAo4oCeMiB3ZWVrcyBhZ2/igJwgKNC/0YDQtdC00LggMiDRgdC10LTQvNC40YbQuCksIOKAnjIwMDktMDMtMTcgMTU6Mjc6MzjigJwsICIKICLigJ5NYXJjaCAxNywgMjAwOSAxNToyNzozOOKAnCk6IgogCi0jOiBnaXRrOjQxMTEKKyM6IGdpdGs6NDExNgogbXNnaWQgIlNpbmNlOiIKIG1zZ3N0ciAi0J7RgjoiCiAKLSM6IGdpdGs6NDExMgorIzogZ2l0azo0MTE3CiBtc2dpZCAiVW50aWw6IgogbXNnc3RyICLQlNC+OiIKIAotIzogZ2l0azo0MTEzCisjOiBnaXRrOjQxMTgKIG1zZ2lkICJMaW1pdCBhbmQvb3Igc2tpcCBhIG51bWJlciBvZiByZXZpc2lvbnMgKHBvc2l0aXZlIGludGVnZXIpOiIKIG1zZ3N0ciAiIgogItCe0LPRgNCw0L3QuNGH0LDQstCw0L3QtSDQuC/QuNC70Lgg0L/RgNC10YHQutCw0YfQsNC90LUg0L3QsCDQvtC/0YDQtdC00LXQu9C10L0g0LHRgNC+0Lkg0LLQtdGA0YHQuNC4ICjQvdC10L7RgtGA0LjRhtCw0YLQtdC70L3QviDRhtGP0LvQviAiCiAi0YfQuNGB0LvQvik6IgogCi0jOiBnaXRrOjQxMTQKKyM6IGdpdGs6NDExOQogbXNnaWQgIk51bWJlciB0byBzaG93OiIKIG1zZ3N0ciAi0JHRgNC+0Lkg0L/QvtC60LDQt9Cw0L3QuDoiCiAKLSM6IGdpdGs6NDExNQorIzogZ2l0azo0MTIwCiBtc2dpZCAiTnVtYmVyIHRvIHNraXA6IgogbXNnc3RyICLQkdGA0L7QuSDQv9GA0LXRgdC60L7Rh9C10L3QuDoiCiAKLSM6IGdpdGs6NDExNgorIzogZ2l0azo0MTIxCiBtc2dpZCAiTWlzY2VsbGFuZW91cyBvcHRpb25zOiIKIG1zZ3N0ciAi0KDQsNC30L3QuDoiCiAKLSM6IGdpdGs6NDExNworIzogZ2l0azo0MTIyCiBtc2dpZCAiU3RyaWN0bHkgc29ydCBieSBkYXRlIgogbXNnc3RyICLQn9C+0LTRgNC10LbQtNCw0L3QtSDQv9C+INC00LDRgtCwIgogCi0jOiBnaXRrOjQxMTgKKyM6IGdpdGs6NDEyMwogbXNnaWQgIk1hcmsgYnJhbmNoIHNpZGVzIgogbXNnc3RyICLQntGC0LHQtdC70Y/Qt9Cy0LDQvdC1INC90LAg0YHRgtGA0LDQvdC40YLQtSDQv9C+INC60LvQvtC90LAiCiAKLSM6IGdpdGs6NDExOQorIzogZ2l0azo0MTI0CiBtc2dpZCAiTGltaXQgdG8gZmlyc3QgcGFyZW50IgogbXNnc3RyICLQodCw0LzQviDQv9GK0YDQstC40Y8g0YDQvtC00LjRgtC10LsiCiAKLSM6IGdpdGs6NDEyMAorIzogZ2l0azo0MTI1CiBtc2dpZCAiU2ltcGxlIGhpc3RvcnkiCiBtc2dzdHIgItCe0L/RgNC+0YHRgtC10L3QsCDQuNGB0YLQvtGA0LjRjyIKIAotIzogZ2l0azo0MTIxCisjOiBnaXRrOjQxMjYKIG1zZ2lkICJBZGRpdGlvbmFsIGFyZ3VtZW50cyB0byBnaXQgbG9nOiIKIG1zZ3N0ciAi0JTQvtC/0YrQu9C90LjRgtC10LvQvdC4INCw0YDQs9GD0LzQtdC90YLQuCDQutGK0Lwg4oCeZ2l0IGxvZ+KAnDoiCiAKLSM6IGdpdGs6NDEyMgorIzogZ2l0azo0MTI3CiBtc2dpZCAiRW50ZXIgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHRvIGluY2x1ZGUsIG9uZSBwZXIgbGluZToiCiBtc2dzdHIgItCS0YrQstC10LTQtdGC0LUg0YTQsNC50LvQvtCy0LXRgtC1INC4INC00LjRgNC10LrRgtC+0YDQuNC40YLQtSDQt9CwINCy0LrQu9GO0YfQstCw0L3QtSwg0L/QviDQtdC70LXQvNC10L3RgiDQvdCwINGA0LXQtCIKIAotIzogZ2l0azo0MTIzCisjOiBnaXRrOjQxMjgKIG1zZ2lkICJDb21tYW5kIHRvIGdlbmVyYXRlIG1vcmUgY29tbWl0cyB0byBpbmNsdWRlOiIKIG1zZ3N0ciAiIgogItCa0L7QvNCw0L3QtNCwINC30LAg0LPQtdC90LXRgNC40YDQsNC90LXRgtC+INC90LAg0LTQvtC/0YrQu9C90LjRgtC10LvQvdC4INC/0L7QtNCw0LLQsNC90LjRjywg0LrQvtC40YLQviDQtNCwINCx0YrQtNCw0YIg0LLQutC70Y7Rh9C10L3QuDoiCiAKLSM6IGdpdGs6NDI0NworIzogZ2l0azo0MjUyCiBtc2dpZCAiR2l0azogZWRpdCB2aWV3IgogbXNnc3RyICJHaXRrOiDRgNC10LTQsNC60YLQuNGA0LDQvdC1INC90LAg0LjQt9Cz0LvQtdC0IgogCi0jOiBnaXRrOjQyNTUKKyM6IGdpdGs6NDI2MAogbXNnaWQgIi0tIGNyaXRlcmlhIGZvciBzZWxlY3RpbmcgcmV2aXNpb25zIgogbXNnc3RyICLigJQg0LrRgNC40YLQtdGA0LjQuCDQt9CwINC40LfQsdC+0YAg0L3QsCDQstC10YDRgdC40LgiCiAKLSM6IGdpdGs6NDI2MAorIzogZ2l0azo0MjY1CiBtc2dpZCAiVmlldyBOYW1lIgogbXNnc3RyICLQmNC80LUg0L3QsCDQuNC30LPQu9C10LQiCiAKLSM6IGdpdGs6NDMzNQorIzogZ2l0azo0MzQwCiBtc2dpZCAiQXBwbHkgKEY1KSIKIG1zZ3N0ciAi0J/RgNC40LvQsNCz0LDQvdC1IChGNSkiCiAKLSM6IGdpdGs6NDM3MworIzogZ2l0azo0Mzc4CiBtc2dpZCAiRXJyb3IgaW4gY29tbWl0IHNlbGVjdGlvbiBhcmd1bWVudHM6IgogbXNnc3RyICLQk9GA0LXRiNC60LAg0LIg0LDRgNCz0YPQvNC10L3RgtC40YLQtSDQt9CwINC40LfQsdC+0YAg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y86IgogCi0jOiBnaXRrOjQ0MjggZ2l0azo0NDgxIGdpdGs6NDk0MyBnaXRrOjQ5NTcgZ2l0azo2MjI3IGdpdGs6MTI0MTAgZ2l0azoxMjQxMQorIzogZ2l0azo0NDMzIGdpdGs6NDQ4NiBnaXRrOjQ5NDggZ2l0azo0OTYyIGdpdGs6NjIzMiBnaXRrOjEyNTI0IGdpdGs6MTI1MjUKIG1zZ2lkICJOb25lIgogbXNnc3RyICLQndGP0LzQsCIKIAotIzogZ2l0azo1MDQwIGdpdGs6NTA0NQorIzogZ2l0azo1MDQ1IGdpdGs6NTA1MAogbXNnaWQgIkRlc2NlbmRhbnQiCiBtc2dzdHIgItCd0LDRgdC70LXQtNC90LjQuiIKIAotIzogZ2l0azo1MDQxCisjOiBnaXRrOjUwNDYKIG1zZ2lkICJOb3QgZGVzY2VuZGFudCIKIG1zZ3N0ciAi0J3QtSDQtSDQvdCw0YHQu9C10LTQvdC40LoiCiAKLSM6IGdpdGs6NTA0OCBnaXRrOjUwNTMKKyM6IGdpdGs6NTA1MyBnaXRrOjUwNTgKIG1zZ2lkICJBbmNlc3RvciIKIG1zZ3N0ciAi0J/RgNC10LTRiNC10YHRgtCy0LXQvdC40LoiCiAKLSM6IGdpdGs6NTA0OQorIzogZ2l0azo1MDU0CiBtc2dpZCAiTm90IGFuY2VzdG9yIgogbXNnc3RyICLQndC1INC1INC/0YDQtdC00YjQtdGB0YLQstC10L3QuNC6IgogCi0jOiBnaXRrOjUzNDMKKyM6IGdpdGs6NTM0OAogbXNnaWQgIkxvY2FsIGNoYW5nZXMgY2hlY2tlZCBpbiB0byBpbmRleCBidXQgbm90IGNvbW1pdHRlZCIKIG1zZ3N0ciAi0JvQvtC60LDQu9C90Lgg0L/RgNC+0LzQtdC90Lgg0LTQvtCx0LDQstC10L3QuCDQutGK0Lwg0LjQvdC00LXQutGB0LAsINC90L4g0L3QtdC/0L7QtNCw0LTQtdC90LgiCiAKLSM6IGdpdGs6NTM3OQorIzogZ2l0azo1Mzg0CiBtc2dpZCAiTG9jYWwgdW5jb21taXR0ZWQgY2hhbmdlcywgbm90IGNoZWNrZWQgaW4gdG8gaW5kZXgiCiBtc2dzdHIgItCb0L7QutCw0LvQvdC4INC/0YDQvtC80LXQvdC4INC40LfQstGK0L0g0LjQvdC00LXQutGB0LAiCiAKLSM6IGdpdGs6NzE1MworIzogZ2l0azo3MTU4CiBtc2dpZCAiYW5kIG1hbnkgbW9yZSIKIG1zZ3N0ciAi0Lgg0L7RidC1INC80L3QvtCz0L4iCiAKLSM6IGdpdGs6NzE1NgorIzogZ2l0azo3MTYxCiBtc2dpZCAibWFueSIKIG1zZ3N0ciAi0LzQvdC+0LPQviIKIAotIzogZ2l0azo3MzQ3CisjOiBnaXRrOjczNTIKIG1zZ2lkICJUYWdzOiIKIG1zZ3N0ciAi0JXRgtC40LrQtdGC0Lg6IgogCi0jOiBnaXRrOjczNjQgZ2l0azo3MzcwIGdpdGs6ODg0NAorIzogZ2l0azo3MzY5IGdpdGs6NzM3NSBnaXRrOjg4NTQKIG1zZ2lkICJQYXJlbnQiCiBtc2dzdHIgItCg0L7QtNC40YLQtdC7IgogCi0jOiBnaXRrOjczNzUKKyM6IGdpdGs6NzM4MAogbXNnaWQgIkNoaWxkIgogbXNnc3RyICLQlNC10YLQtSIKIAotIzogZ2l0azo3Mzg0CisjOiBnaXRrOjczODkKIG1zZ2lkICJCcmFuY2giCiBtc2dzdHIgItCa0LvQvtC9IgogCi0jOiBnaXRrOjczODcKKyM6IGdpdGs6NzM5MgogbXNnaWQgIkZvbGxvd3MiCiBtc2dzdHIgItCh0LvQtdC00LLQsCIKIAotIzogZ2l0azo3MzkwCisjOiBnaXRrOjczOTUKIG1zZ2lkICJQcmVjZWRlcyIKIG1zZ3N0ciAi0J/RgNC10LTRiNC10YHRgtCy0LAiCiAKLSM6IGdpdGs6Nzk4NQorIzogZ2l0azo3OTkwCiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiRXJyb3IgZ2V0dGluZyBkaWZmczogJXMiCiBtc2dzdHIgItCT0YDQtdGI0LrQsCDQv9GA0Lgg0L/QvtC70YPRh9Cw0LLQsNC90LXRgtC+INC90LAg0YDQsNC30LvQuNC60LjRgtC1OiAlcyIKIAotIzogZ2l0azo4NjY5CisjOiBnaXRrOjg2NzkKIG1zZ2lkICJHb3RvOiIKIG1zZ3N0ciAi0JrRitC8INGA0LXQtDoiCiAKLSM6IGdpdGs6ODY5MAorIzogZ2l0azo4NzAwCiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiU2hvcnQgU0hBMSBpZCAlcyBpcyBhbWJpZ3VvdXMiCiBtc2dzdHIgItCh0YrQutGA0LDRgtC10L3QsNGC0LAg0YHRg9C80LAg0L/QviBTSEExICVzINC90LUg0LUg0LXQtNC90L7Qt9C90LDRh9C90LAiCiAKLSM6IGdpdGs6ODY5NworIzogZ2l0azo4NzA3CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiUmV2aXNpb24gJXMgaXMgbm90IGtub3duIgogbXNnc3RyICLQndC10L/QvtC30L3QsNGC0LAg0LLQtdGA0YHQuNGPICVzIgogCi0jOiBnaXRrOjg3MDcKKyM6IGdpdGs6ODcxNwogIywgdGNsLWZvcm1hdAogbXNnaWQgIlNIQTEgaWQgJXMgaXMgbm90IGtub3duIgogbXNnc3RyICLQndC10L/QvtC30L3QsNGC0LAg0YHRg9C80LAg0L/QviBTSEExICVzIgogCi0jOiBnaXRrOjg3MDkKKyM6IGdpdGs6ODcxOQogIywgdGNsLWZvcm1hdAogbXNnaWQgIlJldmlzaW9uICVzIGlzIG5vdCBpbiB0aGUgY3VycmVudCB2aWV3IgogbXNnc3RyICLQktC10YDRgdC40Y8gJXMg0L3QtSDQtSDQsiDRgtC10LrRg9GJ0LjRjyDQuNC30LPQu9C10LQiCiAKLSM6IGdpdGs6ODg1MSBnaXRrOjg4NjYKKyM6IGdpdGs6ODg2MSBnaXRrOjg4NzYKIG1zZ2lkICJEYXRlIgogbXNnc3RyICLQlNCw0YLQsCIKIAotIzogZ2l0azo4ODU0CisjOiBnaXRrOjg4NjQKIG1zZ2lkICJDaGlsZHJlbiIKIG1zZ3N0ciAi0JTQtdGG0LAiCiAKLSM6IGdpdGs6ODkxNworIzogZ2l0azo4OTI3CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiUmVzZXQgJXMgYnJhbmNoIHRvIGhlcmUiCiBtc2dzdHIgItCX0LDQvdGD0LvRj9Cy0LDQvdC1INC90LAg0LrQu9C+0L3QsCDigJ4lc+KAnCDQutGK0Lwg0YLQtdC60YPRidC+0YLQviDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBnaXRrOjg5MTkKKyM6IGdpdGs6ODkyOQogbXNnaWQgIkRldGFjaGVkIGhlYWQ6IGNhbid0IHJlc2V0IgogbXNnc3RyICLQndC10YHQstGK0YDQt9Cw0L0g0LLRgNGK0YU6INC90LXQstGK0LfQvNC+0LbQvdC+INC30LDQvdGD0LvRj9Cy0LDQvdC1IgogCi0jOiBnaXRrOjkwMjQgZ2l0azo5MDMwCisjOiBnaXRrOjkwMzQgZ2l0azo5MDQwCiBtc2dpZCAiU2tpcHBpbmcgbWVyZ2UgY29tbWl0ICIKIG1zZ3N0ciAi0J/RgNC+0L/Rg9GB0LrQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC10YLQviDQvdCwINGB0LvQuNCy0LDQvdC10YLQviIKIAotIzogZ2l0azo5MDM5IGdpdGs6OTA0NAorIzogZ2l0azo5MDQ5IGdpdGs6OTA1NAogbXNnaWQgIkVycm9yIGdldHRpbmcgcGF0Y2ggSUQgZm9yICIKIG1zZ3N0ciAi0JPRgNC10YjQutCwINC/0YDQuCDQv9C+0LvRg9GH0LDQstCw0L3QtdGC0L4g0L3QsCDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNCwINC90LAgIgogCi0jOiBnaXRrOjkwNDAgZ2l0azo5MDQ1CisjOiBnaXRrOjkwNTAgZ2l0azo5MDU1CiBtc2dpZCAiIC0gc3RvcHBpbmdcbiIKIG1zZ3N0ciAiIOKAlCDRgdC/0LjRgNCw0L3QtVxuIgogCi0jOiBnaXRrOjkwNTAgZ2l0azo5MDUzIGdpdGs6OTA2MSBnaXRrOjkwNzUgZ2l0azo5MDg0CisjOiBnaXRrOjkwNjAgZ2l0azo5MDYzIGdpdGs6OTA3MSBnaXRrOjkwODUgZ2l0azo5MDk0CiBtc2dpZCAiQ29tbWl0ICIKIG1zZ3N0ciAi0J/QvtC00LDQstCw0L3QtSIKIAotIzogZ2l0azo5MDU0CisjOiBnaXRrOjkwNjQKIG1zZ2lkICIiCiAiIGlzIHRoZSBzYW1lIHBhdGNoIGFzXG4iCiAiICAgICAgICIKQEAgLTkxMiw3ICs5MTYsNyBAQAogIiDQtSDRgdGK0YnQsNGC0LAg0LrRgNGK0L/QutCwINC60LDRgtC+XG4iCiAiICAgICAgICIKIAotIzogZ2l0azo5MDYyCisjOiBnaXRrOjkwNzIKIG1zZ2lkICIiCiAiIGRpZmZlcnMgZnJvbVxuIgogIiAgICAgICAiCkBAIC05MjAsNyArOTI0LDcgQEAKICIg0YHQtSDRgNCw0LfQu9C40YfQsNCy0LAg0L7RglxuIgogIiAgICAgICAiCiAKLSM6IGdpdGs6OTA2NAorIzogZ2l0azo5MDc0CiBtc2dpZCAiIgogIkRpZmYgb2YgY29tbWl0czpcbiIKICJcbiIKQEAgLTkyOCwxMzAgKzkzMiwxNDcgQEAKICLQoNCw0LfQu9C40LrQsCDQvNC10LbQtNGDINC/0L7QtNCw0LLQsNC90LjRj9GC0LA6XG4iCiAiXG4iCiAKLSM6IGdpdGs6OTA3NiBnaXRrOjkwODUKKyM6IGdpdGs6OTA4NiBnaXRrOjkwOTUKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICIgaGFzICVzIGNoaWxkcmVuIC0gc3RvcHBpbmdcbiIKIG1zZ3N0ciAiINC40LzQsCAlcyDQtNC10YbQsCDigJQg0YHQv9C40YDQsNC90LVcbiIKIAotIzogZ2l0azo5MTA0CisjOiBnaXRrOjkxMTQKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJFcnJvciB3cml0aW5nIGNvbW1pdCB0byBmaWxlOiAlcyIKIG1zZ3N0ciAi0JPRgNC10YjQutCwINC/0YDQuCDQt9Cw0L/QsNC30LLQsNC90LXRgtC+INC90LAg0L/QvtC00LDQstCw0L3QtdGC0L4g0LLRitCyINGE0LDQudC7OiAlcyIKIAotIzogZ2l0azo5MTEwCisjOiBnaXRrOjkxMjAKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJFcnJvciBkaWZmaW5nIGNvbW1pdHM6ICVzIgogbXNnc3RyICLQk9GA0LXRiNC60LAg0L/RgNC4INC40LfRh9C40YHQu9GP0LLQsNC90LXRgtC+INC90LAg0YDQsNC30LvQuNC60LjRgtC1INC80LXQttC00YMg0L/QvtC00LDQstCw0L3QuNGP0YLQsDogJXMiCiAKLSM6IGdpdGs6OTE1NgorIzogZ2l0azo5MTY2CiBtc2dpZCAiVG9wIgogbXNnc3RyICLQndCw0Lkt0LPQvtGA0LUiCiAKLSM6IGdpdGs6OTE1NworIzogZ2l0azo5MTY3CiBtc2dpZCAiRnJvbSIKIG1zZ3N0ciAi0J7RgiIKIAotIzogZ2l0azo5MTYyCisjOiBnaXRrOjkxNzIKIG1zZ2lkICJUbyIKIG1zZ3N0ciAi0JTQviIKIAotIzogZ2l0azo5MTg2CisjOiBnaXRrOjkxOTYKIG1zZ2lkICJHZW5lcmF0ZSBwYXRjaCIKIG1zZ3N0ciAi0JPQtdC90LXRgNC40YDQsNC90LUg0L3QsCDQutGA0YrQv9C60LAiCiAKLSM6IGdpdGs6OTE4OAorIzogZ2l0azo5MTk4CiBtc2dpZCAiRnJvbToiCiBtc2dzdHIgItCe0YI6IgogCi0jOiBnaXRrOjkxOTcKKyM6IGdpdGs6OTIwNwogbXNnaWQgIlRvOiIKIG1zZ3N0ciAi0JTQvjoiCiAKLSM6IGdpdGs6OTIwNgorIzogZ2l0azo5MjE2CiBtc2dpZCAiUmV2ZXJzZSIKIG1zZ3N0ciAi0J7QsdGA0YrRidCw0L3QtSIKIAotIzogZ2l0azo5MjA4IGdpdGs6OTQxOAorIzogZ2l0azo5MjE4IGdpdGs6OTQyOAogbXNnaWQgIk91dHB1dCBmaWxlOiIKIG1zZ3N0ciAi0JfQsNC/0LDQt9Cy0LDQvdC1INCy0YrQsiDRhNCw0LnQu9CwOiIKIAotIzogZ2l0azo5MjE0CisjOiBnaXRrOjkyMjQKIG1zZ2lkICJHZW5lcmF0ZSIKIG1zZ3N0ciAi0JPQtdC90LXRgNC40YDQsNC90LUiCiAKLSM6IGdpdGs6OTI1MgorIzogZ2l0azo5MjYyCiBtc2dpZCAiRXJyb3IgY3JlYXRpbmcgcGF0Y2g6IgogbXNnc3RyICLQk9GA0LXRiNC60LAg0L/RgNC4INGB0YrQt9C00LDQstCw0L3QtdGC0L4g0L3QsCDQutGA0YrQv9C60LA6IgogCi0jOiBnaXRrOjkyNzUgZ2l0azo5NDA2IGdpdGs6OTQ2MworIzogZ2l0azo5Mjg1IGdpdGs6OTQxNiBnaXRrOjk1MDQKIG1zZ2lkICJJRDoiCiBtc2dzdHIgItCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAOiIKIAotIzogZ2l0azo5Mjg0CisjOiBnaXRrOjkyOTQKIG1zZ2lkICJUYWcgbmFtZToiCiBtc2dzdHIgItCY0LzQtSDQvdCwINC10YLQuNC60LXRgjoiCiAKLSM6IGdpdGs6OTI4NworIzogZ2l0azo5Mjk3CiBtc2dpZCAiVGFnIG1lc3NhZ2UgaXMgb3B0aW9uYWwiCiBtc2dzdHIgItCh0YrQvtCx0YnQtdC90LjQtdGC0L4g0LfQsCDQtdGC0LjQutC10YIg0LUg0L3QtdC30LDQtNGK0LvQttC40YLQtdC70L3QviIKIAotIzogZ2l0azo5Mjg5CisjOiBnaXRrOjkyOTkKIG1zZ2lkICJUYWcgbWVzc2FnZToiCiBtc2dzdHIgItCh0YrQvtCx0YnQtdC90LjQtSDQt9CwINC10YLQuNC60LXRgjoiCiAKLSM6IGdpdGs6OTI5MyBnaXRrOjk0NzIKKyM6IGdpdGs6OTMwMyBnaXRrOjk0NzQKIG1zZ2lkICJDcmVhdGUiCiBtc2dzdHIgItCh0YrQt9C00LDQstCw0L3QtSIKIAotIzogZ2l0azo5MzExCisjOiBnaXRrOjkzMjEKIG1zZ2lkICJObyB0YWcgbmFtZSBzcGVjaWZpZWQiCiBtc2dzdHIgItCb0LjQv9GB0LLQsCDQuNC80LUg0L3QsCDQtdGC0LjQutC10YIiCiAKLSM6IGdpdGs6OTMxNQorIzogZ2l0azo5MzI1CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiVGFnIFwiJXNcIiBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAi0JXRgtC40LrQtdGC0YrRgiDigJ4lc+KAnCDQstC10YfQtSDRgdGK0YnQtdGB0YLQstGD0LLQsCIKIAotIzogZ2l0azo5MzI1CisjOiBnaXRrOjkzMzUKIG1zZ2lkICJFcnJvciBjcmVhdGluZyB0YWc6IgogbXNnc3RyICLQk9GA0LXRiNC60LAg0L/RgNC4INGB0YrQt9C00LDQstCw0L3QtdGC0L4g0L3QsCDQtdGC0LjQutC10YI6IgogCi0jOiBnaXRrOjk0MTUKKyM6IGdpdGs6OTQyNQogbXNnaWQgIkNvbW1hbmQ6IgogbXNnc3RyICLQmtC+0LzQsNC90LTQsDoiCiAKLSM6IGdpdGs6OTQyMworIzogZ2l0azo5NDMzCiBtc2dpZCAiV3JpdGUiCiBtc2dzdHIgItCX0LDQv9Cw0LfQstCw0L3QtSIKIAotIzogZ2l0azo5NDQxCisjOiBnaXRrOjk0NTEKIG1zZ2lkICJFcnJvciB3cml0aW5nIGNvbW1pdDoiCiBtc2dzdHIgItCT0YDQtdGI0LrQsCDQv9GA0Lgg0LfQsNC/0LDQt9Cy0LDQvdC10YLQviDQvdCwINC/0L7QtNCw0LLQsNC90LXRgtC+OiIKIAotIzogZ2l0azo5NDY4CisjOiBnaXRrOjk0NzMKK21zZ2lkICJDcmVhdGUgYnJhbmNoIgorbXNnc3RyICLQodGK0LfQtNCw0LLQsNC90LUg0L3QsCDQutC70L7QvSIKKworIzogZ2l0azo5NDg5CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUmVuYW1lIGJyYW5jaCAlcyIKK21zZ3N0ciAi0J/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1INC90LAg0LrQu9C+0L3QsCDigJ4lc+KAnCIKKworIzogZ2l0azo5NDkwCittc2dpZCAiUmVuYW1lIgorbXNnc3RyICLQn9GA0LXQuNC80LXQvdGD0LLQsNC90LUiCisKKyM6IGdpdGs6OTUxNAogbXNnaWQgIk5hbWU6IgogbXNnc3RyICLQmNC80LU6IgogCi0jOiBnaXRrOjk0OTEKKyM6IGdpdGs6OTUzOAogbXNnaWQgIlBsZWFzZSBzcGVjaWZ5IGEgbmFtZSBmb3IgdGhlIG5ldyBicmFuY2giCiBtc2dzdHIgItCj0LrQsNC20LXRgtC1INC40LzQtSDQt9CwINC90L7QstC40Y8g0LrQu9C+0L0iCiAKLSM6IGdpdGs6OTQ5NgorIzogZ2l0azo5NTQzCiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgYWxyZWFkeSBleGlzdHMuIE92ZXJ3cml0ZT8iCiBtc2dzdHIgItCa0LvQvtC90YrRgiDigJ4lc+KAnCDQstC10YfQtSDRgdGK0YnQtdGB0YLQstGD0LLQsC4g0JTQsCDQsdGK0LTQtSDQu9C4INC/0YDQtdC30LDQv9C40YHQsNC9PyIKIAotIzogZ2l0azo5NTYzCisjOiBnaXRrOjk1ODcKK21zZ2lkICJQbGVhc2Ugc3BlY2lmeSBhIG5ldyBuYW1lIGZvciB0aGUgYnJhbmNoIgorbXNnc3RyICLQo9C60LDQttC10YLQtSDQvdC+0LLQviDQuNC80LUg0LfQsCDQutC70L7QvdCwIgorCisjOiBnaXRrOjk2NTAKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaXMgYWxyZWFkeSBpbmNsdWRlZCBpbiBicmFuY2ggJXMgLS0gcmVhbGx5IHJlLWFwcGx5IGl0PyIKIG1zZ3N0ciAiIgogItCf0L7QtNCw0LLQsNC90LXRgtC+IOKAniVz4oCcINCy0LXRh9C1INC1INCy0LrQu9GO0YfQtdC90L4g0LIg0LrQu9C+0L3QsCDigJ4lc+KAnCDigJQg0LTQsCDQsdGK0LTQtSDQu9C4INC/0YDQuNC70L7QttC10L3QviDQvtGC0L3QvtCy0L4/IgogCi0jOiBnaXRrOjk1NjgKKyM6IGdpdGs6OTY1NQogbXNnaWQgIkNoZXJyeS1waWNraW5nIgogbXNnc3RyICLQntGC0LHQuNGA0LDQvdC1IgogCi0jOiBnaXRrOjk1NzcKKyM6IGdpdGs6OTY2NAogIywgdGNsLWZvcm1hdAogbXNnaWQgIiIKICJDaGVycnktcGljayBmYWlsZWQgYmVjYXVzZSBvZiBsb2NhbCBjaGFuZ2VzIHRvIGZpbGUgJyVzJy5cbiIKQEAgLTEwNjAsNyArMTA4MSw3IEBACiAi0J3QtdGD0YHQv9C10YjQvdC+INC+0YLQsdC40YDQsNC90LUsINC30LDRidC+0YLQviDQstGK0LIg0YTQsNC50LvQsCDigJ4lc+KAnCDQuNC80LAg0LvQvtC60LDQu9C90Lgg0L/RgNC+0LzQtdC90LguXG4iCiAi0J/QvtC00LDQudGC0LUsINC30LDQvdGD0LvQtdGC0LUg0LjQu9C4INCz0Lgg0YHQutCw0YLQsNC50YLQtSDQuCDQv9GA0L7QsdCy0LDQudGC0LUg0L7RgtC90L7QstC+LiIKIAotIzogZ2l0azo5NTgzCisjOiBnaXRrOjk2NzAKIG1zZ2lkICIiCiAiQ2hlcnJ5LXBpY2sgZmFpbGVkIGJlY2F1c2Ugb2YgbWVyZ2UgY29uZmxpY3QuXG4iCiAiRG8geW91IHdpc2ggdG8gcnVuIGdpdCBjaXRvb2wgdG8gcmVzb2x2ZSBpdD8iCkBAIC0xMDY4LDI5ICsxMDg5LDI5IEBACiAi0J3QtdGD0YHQv9C10YjQvdC+INC+0YLQsdC40YDQsNC90LUg0L/QvtGA0LDQtNC4INC60L7QvdGE0LvQuNC60YLQuCDQv9GA0Lgg0YHQu9C40LLQsNC90LUuXG4iCiAi0JjRgdC60LDRgtC1INC70Lgg0LTQsCDQs9C4INC60L7RgNC40LPQuNGA0LDRgtC1INGH0YDQtdC3IOKAnmdpdCBjaXRvb2zigJw/IgogCi0jOiBnaXRrOjk1OTkgZ2l0azo5NjU3CisjOiBnaXRrOjk2ODYgZ2l0azo5NzQ0CiBtc2dpZCAiTm8gY2hhbmdlcyBjb21taXR0ZWQiCiBtc2dzdHIgItCd0LUg0YHQsCDQv9C+0LTQsNC00LXQvdC4INC/0YDQvtC80LXQvdC4IgogCi0jOiBnaXRrOjk2MjYKKyM6IGdpdGs6OTcxMwogIywgdGNsLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBpcyBub3QgaW5jbHVkZWQgaW4gYnJhbmNoICVzIC0tIHJlYWxseSByZXZlcnQgaXQ/IgogbXNnc3RyICLQn9C+0LTQsNCy0LDQvdC10YLQviDigJ4lc+KAnCDQvdC1INC1INCy0LrQu9GO0YfQtdC90L4g0LIg0LrQu9C+0L3QsCDigJ4lc+KAnC4g0JTQsCDQsdGK0LTQtSDQu9C4INC+0YLQvNC10L3QtdC90L4/IgogCi0jOiBnaXRrOjk2MzEKKyM6IGdpdGs6OTcxOAogbXNnaWQgIlJldmVydGluZyIKIG1zZ3N0ciAi0J7RgtC80Y/QvdCwIgogCi0jOiBnaXRrOjk2MzkKKyM6IGdpdGs6OTcyNgogIywgdGNsLWZvcm1hdAogbXNnaWQgIiIKICJSZXZlcnQgZmFpbGVkIGJlY2F1c2Ugb2YgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzOiVzIFBsZWFzZSAiCiAiY29tbWl0LCByZXNldCBvciBzdGFzaCAgeW91ciBjaGFuZ2VzIGFuZCB0cnkgYWdhaW4uIgogbXNnc3RyICIiCiAi0J3QtdGD0YHQv9C10YjQvdCwINC+0YLQvNGP0L3QsCwg0LfQsNGJ0L7RgtC+INCy0YrQsiDRhNCw0LnQu9CwIOKAniVz4oCcINC40LzQsCDQu9C+0LrQsNC70L3QuCDQv9GA0L7QvNC10L3QuC5cbiIKLSLQn9C+0LTQsNC50YLQtSwg0LfQsNC90YPQu9C10YLQtSDQuNC70Lgg0LPQuCDRgdC60LDRgtCw0LnRgtC1INC4INC/0YDQvtCx0LLQsNC50YLQtSDQvtGC0L3QvtCy0L4uPCIKKyLQn9C+0LTQsNC50YLQtSwg0LfQsNC90YPQu9C10YLQtSDQuNC70Lgg0LPQuCDRgdC60LDRgtCw0LnRgtC1INC4INC/0YDQvtCx0LLQsNC50YLQtSDQvtGC0L3QvtCy0L4uIgogCi0jOiBnaXRrOjk2NDMKKyM6IGdpdGs6OTczMAogbXNnaWQgIiIKICJSZXZlcnQgZmFpbGVkIGJlY2F1c2Ugb2YgbWVyZ2UgY29uZmxpY3QuXG4iCiAiIERvIHlvdSB3aXNoIHRvIHJ1biBnaXQgY2l0b29sIHRvIHJlc29sdmUgaXQ/IgpAQCAtMTA5OCw2NiArMTExOSw3MSBAQAogItCd0LXRg9GB0L/QtdGI0L3QviDQvtGC0LzRj9C90LAg0L/QvtGA0LDQtNC4INC60L7QvdGE0LvQuNC60YLQuCDQv9GA0Lgg0YHQu9C40LLQsNC90LUuXG4iCiAi0JjRgdC60LDRgtC1INC70Lgg0LTQsCDQs9C4INC60L7RgNC40LPQuNGA0LDRgtC1INGH0YDQtdC3IOKAnmdpdCBjaXRvb2zigJw/IgogCi0jOiBnaXRrOjk2ODYKKyM6IGdpdGs6OTc3MwogbXNnaWQgIkNvbmZpcm0gcmVzZXQiCiBtc2dzdHIgItCf0L7RgtCy0YrRgNC20LTQsNCy0LDQvdC1INC90LAg0LfQsNC90YPQu9GP0LLQsNC90LXRgtC+IgogCi0jOiBnaXRrOjk2ODgKKyM6IGdpdGs6OTc3NQogIywgdGNsLWZvcm1hdAogbXNnaWQgIlJlc2V0IGJyYW5jaCAlcyB0byAlcz8iCiBtc2dzdHIgItCU0LAg0YHQtSDQt9Cw0L3Rg9C70Lgg0LvQuCDQutC70L7QvdGK0YIg4oCeJXPigJwg0LrRitC8IOKAniVz4oCcPyIKIAotIzogZ2l0azo5NjkwCisjOiBnaXRrOjk3NzcKIG1zZ2lkICJSZXNldCB0eXBlOiIKIG1zZ3N0ciAi0JLQuNC0INC30LDQvdGD0LvRj9Cy0LDQvdC1OiIKIAotIzogZ2l0azo5NjkzCisjOiBnaXRrOjk3ODAKIG1zZ2lkICJTb2Z0OiBMZWF2ZSB3b3JraW5nIHRyZWUgYW5kIGluZGV4IHVudG91Y2hlZCIKIG1zZ3N0ciAi0KHQu9Cw0LHQvjog0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0Lgg0LjQvdC00LXQutGB0LAg0L7RgdGC0LDQstCw0YIg0YHRitGJ0LjRgtC1IgogCi0jOiBnaXRrOjk2OTYKKyM6IGdpdGs6OTc4MwogbXNnaWQgIk1peGVkOiBMZWF2ZSB3b3JraW5nIHRyZWUgdW50b3VjaGVkLCByZXNldCBpbmRleCIKIG1zZ3N0ciAi0KHQvNC10YHQtdC90L46INGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+INC+0YHRgtCw0LLQsCDRgdGK0YnQvtGC0L4sINC40L3QtNC10LrRgdGK0YIg0YHQtSDQt9Cw0L3Rg9C70Y/QstCwIgogCi0jOiBnaXRrOjk2OTkKKyM6IGdpdGs6OTc4NgogbXNnaWQgIiIKICJIYXJkOiBSZXNldCB3b3JraW5nIHRyZWUgYW5kIGluZGV4XG4iCiAiKGRpc2NhcmQgQUxMIGxvY2FsIGNoYW5nZXMpIgogbXNnc3RyICIiCiAi0KHQuNC70L3Qvjog0LfQsNC90YPQu9GP0LLQsNC90LUg0Lgg0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviwg0Lgg0L3QsCDQuNC90LTQtdC60YHQsFxuIgotIigq0JLQodCY0KfQmtCYKiDQu9C+0LrQsNC70L3QuCDQv9GA0L7QvNC10L3QuCDRidC1INCx0YrQtNCw0YIg0LHQtdC30LLRitC30LLRgNCw0YLQvdC+INC30LDQs9GD0LHQtdC90LgpIgorIijQktCh0JjQp9Ca0Jgg0LvQvtC60LDQu9C90Lgg0L/RgNC+0LzQtdC90Lgg0YnQtSDQsdGK0LTQsNGCINCx0LXQt9Cy0YrQt9Cy0YDQsNGC0L3QviDQt9Cw0LPRg9Cx0LXQvdC4KSIKIAotIzogZ2l0azo5NzE2CisjOiBnaXRrOjk4MDMKIG1zZ2lkICJSZXNldHRpbmciCiBtc2dzdHIgItCX0LDQvdGD0LvRj9Cy0LDQvdC1IgogCi0jOiBnaXRrOjk3NzYKKyM6IGdpdGs6OTg3NgorIywgdGNsLWZvcm1hdAorbXNnaWQgIkEgbG9jYWwgYnJhbmNoIG5hbWVkICVzIGV4aXN0cyBhbHJlYWR5IgorbXNnc3RyICLQktC10YfQtSDRgdGK0YnQtdGB0YLQstGD0LLQsCDQu9C+0LrQsNC70LXQvSDQutC70L7QvSDigJ4lc+KAnC4iCisKKyM6IGdpdGs6OTg4NAogbXNnaWQgIkNoZWNraW5nIG91dCIKIG1zZ3N0ciAi0JjQt9GC0LXQs9C70Y/QvdC1IgogCi0jOiBnaXRrOjk4MjkKKyM6IGdpdGs6OTk0MwogbXNnaWQgIkNhbm5vdCBkZWxldGUgdGhlIGN1cnJlbnRseSBjaGVja2VkLW91dCBicmFuY2giCiBtc2dzdHIgItCi0LXQutGD0YnQviDQuNC30YLQtdCz0LvQtdC90LjRj9GCINC60LvQvtC9INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YLRgNC40YIiCiAKLSM6IGdpdGs6OTgzNQorIzogZ2l0azo5OTQ5CiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBjb21taXRzIG9uIGJyYW5jaCAlcyBhcmVuJ3Qgb24gYW55IG90aGVyIGJyYW5jaC5cbiIKICJSZWFsbHkgZGVsZXRlIGJyYW5jaCAlcz8iCiBtc2dzdHIgIiIKICLQn9C+0LTQsNCy0LDQvdC40Y/RgtCwINC90LAg0LrQu9C+0L3QsCDigJ4lc+KAnCDQvdC1INGB0LAg0L3QsCDQvdC40LrQvtC5INC00YDRg9CzINC60LvQvtC9LlxuIgotItCd0LDQuNGB0YLQuNC90LAg0LvQuCDQtNCwINGB0LUg0LjQt9GC0YDQuNC1INC60LvQvtC90YrRgiDigJ4lc+KAnD8iCisi0J3QsNC40YHRgtC40L3QsCDQu9C4INC40YHQutCw0YLQtSDQtNCwINC40LfRgtGA0LjQtdGC0LUg0LrQu9C+0L3QsCDigJ4lc+KAnD8iCiAKLSM6IGdpdGs6OTg2NgorIzogZ2l0azo5OTgwCiAjLCB0Y2wtZm9ybWF0CiBtc2dpZCAiVGFncyBhbmQgaGVhZHM6ICVzIgogbXNnc3RyICLQldGC0LjQutC10YLQuCDQuCDQstGK0YDRhdC+0LLQtTogJXMiCiAKLSM6IGdpdGs6OTg4MworIzogZ2l0azo5OTk3CiBtc2dpZCAiRmlsdGVyIgogbXNnc3RyICLQpNC40LvRgtGA0LjRgNCw0L3QtSIKIAotIzogZ2l0azoxMDE3OQorIzogZ2l0azoxMDI5MwogbXNnaWQgIiIKICJFcnJvciByZWFkaW5nIGNvbW1pdCB0b3BvbG9neSBpbmZvcm1hdGlvbjsgYnJhbmNoIGFuZCBwcmVjZWRpbmcvZm9sbG93aW5nICIKICJ0YWcgaW5mb3JtYXRpb24gd2lsbCBiZSBpbmNvbXBsZXRlLiIKQEAgLTExNjUsMjAxICsxMTkxLDIwMSBAQAogItCT0YDQtdGI0LrQsCDQv9GA0Lgg0L/RgNC+0YfQuNGC0LDQvdC10YLQviDQvdCwINGC0L7Qv9C+0LvQvtCz0LjRj9GC0LAg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwLiDQmNC90YTQvtGA0LzQsNGG0LjRj9GC0LAg0LfQsCDQutC70L7QvdCwICIKICLQuCDQv9GA0LXQtNGI0LXRgdGC0LLQsNGJ0LjRgtC1L9GB0LvQtdC00LLQsNGJ0LjRgtC1INC10YLQuNC60LXRgtC4INGJ0LUg0LUg0L3QtdC/0YrQu9C90LAuIgogCi0jOiBnaXRrOjExMTU2CisjOiBnaXRrOjExMjcwCiBtc2dpZCAiVGFnIgogbXNnc3RyICLQldGC0LjQutC10YIiCiAKLSM6IGdpdGs6MTExNjAKKyM6IGdpdGs6MTEyNzQKIG1zZ2lkICJJZCIKIG1zZ3N0ciAi0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAiCiAKLSM6IGdpdGs6MTEyNDMKKyM6IGdpdGs6MTEzNTcKIG1zZ2lkICJHaXRrIGZvbnQgY2hvb3NlciIKIG1zZ3N0ciAi0JjQt9Cx0L7RgCDQvdCwINGI0YDQuNGE0YIg0LfQsCBHaXRrIgogCi0jOiBnaXRrOjExMjYwCisjOiBnaXRrOjExMzc0CiBtc2dpZCAiQiIKIG1zZ3N0ciAi0KciCiAKLSM6IGdpdGs6MTEyNjMKKyM6IGdpdGs6MTEzNzcKIG1zZ2lkICJJIgogbXNnc3RyICLQmiIKIAotIzogZ2l0azoxMTM4MQorIzogZ2l0azoxMTQ5NQogbXNnaWQgIkNvbW1pdCBsaXN0IGRpc3BsYXkgb3B0aW9ucyIKIG1zZ3N0ciAi0J3QsNGB0YLRgNC+0LnQutC4INC90LAg0YHQv9C40YHRitC60LAg0YEg0L/QvtC00LDQstCw0L3QuNGPIgogCi0jOiBnaXRrOjExMzg0CisjOiBnaXRrOjExNDk4CiBtc2dpZCAiTWF4aW11bSBncmFwaCB3aWR0aCAobGluZXMpIgogbXNnc3RyICLQnNCw0LrRgdC40LzQsNC70L3QsCDRiNC40YDQvtGH0LjQvdCwINC90LAg0LPRgNCw0YTQsCAo0LIg0YDQtdC00L7QstC1KSIKIAotIzogZ2l0azoxMTM4OAorIzogZ2l0azoxMTUwMgogIywgbm8tdGNsLWZvcm1hdAogbXNnaWQgIk1heGltdW0gZ3JhcGggd2lkdGggKCUgb2YgcGFuZSkiCiBtc2dzdHIgItCc0LDQutGB0LjQvNCw0LvQvdCwINGI0LjRgNC+0YfQuNC90LAg0L3QsCDQs9GA0LDRhNCwICglINC+0YIg0L/QsNC90LXQu9CwKSIKIAotIzogZ2l0azoxMTM5MQorIzogZ2l0azoxMTUwNQogbXNnaWQgIlNob3cgbG9jYWwgY2hhbmdlcyIKIG1zZ3N0ciAi0J/QvtC60LDQt9Cy0LDQvdC1INC90LAg0LvQvtC60LDQu9C90LjRgtC1INC/0YDQvtC80LXQvdC4IgogCi0jOiBnaXRrOjExMzk0CisjOiBnaXRrOjExNTA4CiBtc2dpZCAiQXV0by1zZWxlY3QgU0hBMSAobGVuZ3RoKSIKIG1zZ3N0ciAi0JDQstGC0L7QvNCw0YLQuNGH0L3QviDQuNC30LHQuNGA0LDQvdC1INC90LAgU0hBMSAo0LTRitC70LbQuNC90LApIgogCi0jOiBnaXRrOjExMzk4CisjOiBnaXRrOjExNTEyCiBtc2dpZCAiSGlkZSByZW1vdGUgcmVmcyIKIG1zZ3N0ciAi0KHQutGA0LjQstCw0L3QtSDQvdCwINC+0YLQtNCw0LvQtdGH0LXQvdC40YLQtSDRg9C60LDQt9Cw0YLQtdC70LgiCiAKLSM6IGdpdGs6MTE0MDIKKyM6IGdpdGs6MTE1MTYKIG1zZ2lkICJEaWZmIGRpc3BsYXkgb3B0aW9ucyIKIG1zZ3N0ciAi0J3QsNGB0YLRgNC+0LnQutC4INC90LAg0L/QvtC60LDQt9Cy0LDQvdC10YLQviDQvdCwINGA0LDQt9C70LjQutC40YLQtSIKIAotIzogZ2l0azoxMTQwNAorIzogZ2l0azoxMTUxOAogbXNnaWQgIlRhYiBzcGFjaW5nIgogbXNnc3RyICLQqNC40YDQvtGH0LjQvdCwINC90LAg0YLQsNCx0YPQu9Cw0YLQvtGA0LAiCiAKLSM6IGdpdGs6MTE0MDcKKyM6IGdpdGs6MTE1MjEKIG1zZ2lkICJEaXNwbGF5IG5lYXJieSB0YWdzL2hlYWRzIgogbXNnc3RyICLQmNC30LLQtdC20LTQsNC90LUg0L3QsCDQsdC70LjQt9C60LjRgtC1INC10YLQuNC60LXRgtC4INC4INCy0YrRgNGF0L7QstC1IgogCi0jOiBnaXRrOjExNDEwCisjOiBnaXRrOjExNTI0CiBtc2dpZCAiTWF4aW11bSAjIHRhZ3MvaGVhZHMgdG8gc2hvdyIKIG1zZ3N0ciAi0JzQsNC60YHQuNC80LDQu9C10L0g0LHRgNC+0Lkg0LXRgtC40LrQtdGC0Lgv0LLRitGA0YXQvtCy0LUg0LfQsCDQv9C+0LrQsNC30LLQsNC90LUiCiAKLSM6IGdpdGs6MTE0MTMKKyM6IGdpdGs6MTE1MjcKIG1zZ2lkICJMaW1pdCBkaWZmcyB0byBsaXN0ZWQgcGF0aHMiCiBtc2dzdHIgItCg0LDQt9C70LjQutCwINGB0LDQvNC+INCyINC40LfQsdGA0LDQvdC40YLQtSDQv9GK0YLQuNGJ0LAiCiAKLSM6IGdpdGs6MTE0MTYKKyM6IGdpdGs6MTE1MzAKIG1zZ2lkICJTdXBwb3J0IHBlci1maWxlIGVuY29kaW5ncyIKIG1zZ3N0ciAi0J/QvtC00LTRgNGK0LbQutCwINC90LAg0YDQsNC30LvQuNGH0L3QuCDQutC+0LTQuNGA0LDQvdC40Y8g0LfQsCDQstGB0LXQutC4INGE0LDQudC7IgogCi0jOiBnaXRrOjExNDIyIGdpdGs6MTE1NjkKKyM6IGdpdGs6MTE1MzYgZ2l0azoxMTY4MwogbXNnaWQgIkV4dGVybmFsIGRpZmYgdG9vbCIKIG1zZ3N0ciAi0JLRitC90YjQtdC9INC40L3RgdGC0YDRg9C80LXQvdGCINC30LAg0YDQsNC30LvQuNC60LgiCiAKLSM6IGdpdGs6MTE0MjMKKyM6IGdpdGs6MTE1MzcKIG1zZ2lkICJDaG9vc2UuLi4iCiBtc2dzdHIgItCY0LfQsdC+0YDigKYiCiAKLSM6IGdpdGs6MTE0MjgKKyM6IGdpdGs6MTE1NDIKIG1zZ2lkICJHZW5lcmFsIG9wdGlvbnMiCiBtc2dzdHIgItCe0LHRidC4INC90LDRgdGC0YDQvtC50LrQuCIKIAotIzogZ2l0azoxMTQzMQorIzogZ2l0azoxMTU0NQogbXNnaWQgIlVzZSB0aGVtZWQgd2lkZ2V0cyIKIG1zZ3N0ciAi0JjQt9C/0L7Qu9C30LLQsNC90LUg0L3QsCDRgtC10LzQsCDQt9CwINCz0YDQsNGE0LjRh9C90LjRgtC1INC+0LHQtdC60YLQuCIKIAotIzogZ2l0azoxMTQzMworIzogZ2l0azoxMTU0NwogbXNnaWQgIihjaGFuZ2UgcmVxdWlyZXMgcmVzdGFydCkiCiBtc2dzdHIgIijQv9GA0L7QvNGP0L3QsNGC0LAg0LjQt9C40YHQutCy0LAg0YDQtdGB0YLQsNGA0YLQuNGA0LDQvdC1INC90LAgR2l0aykiCiAKLSM6IGdpdGs6MTE0MzUKKyM6IGdpdGs6MTE1NDkKIG1zZ2lkICIoY3VycmVudGx5IHVuYXZhaWxhYmxlKSIKIG1zZ3N0ciAiKNCyINC80L7QvNC10L3RgtCwINC90LXQtNC+0YHRgtGK0L/QvdC+KSIKIAotIzogZ2l0azoxMTQ0NgorIzogZ2l0azoxMTU2MAogbXNnaWQgIkNvbG9yczogcHJlc3MgdG8gY2hvb3NlIgogbXNnc3RyICLQptCy0LXRgtC+0LLQtTog0LjQt9Cx0LjRgNCwINGB0LUg0YEg0L3QsNGC0LjRgdC60LDQvdC1IgogCi0jOiBnaXRrOjExNDQ5CisjOiBnaXRrOjExNTYzCiBtc2dpZCAiSW50ZXJmYWNlIgogbXNnc3RyICLQmNC90YLQtdGA0YTQtdC50YEiCiAKLSM6IGdpdGs6MTE0NTAKKyM6IGdpdGs6MTE1NjQKIG1zZ2lkICJpbnRlcmZhY2UiCiBtc2dzdHIgItC40L3RgtC10YDRhNC10LnRgSIKIAotIzogZ2l0azoxMTQ1MworIzogZ2l0azoxMTU2NwogbXNnaWQgIkJhY2tncm91bmQiCiBtc2dzdHIgItCk0L7QvSIKIAotIzogZ2l0azoxMTQ1NCBnaXRrOjExNDg0CisjOiBnaXRrOjExNTY4IGdpdGs6MTE1OTgKIG1zZ2lkICJiYWNrZ3JvdW5kIgogbXNnc3RyICLRhNC+0L0iCiAKLSM6IGdpdGs6MTE0NTcKKyM6IGdpdGs6MTE1NzEKIG1zZ2lkICJGb3JlZ3JvdW5kIgogbXNnc3RyICLQl9C90LDRhtC4IgogCi0jOiBnaXRrOjExNDU4CisjOiBnaXRrOjExNTcyCiBtc2dpZCAiZm9yZWdyb3VuZCIKIG1zZ3N0ciAi0LfQvdCw0YbQuCIKIAotIzogZ2l0azoxMTQ2MQorIzogZ2l0azoxMTU3NQogbXNnaWQgIkRpZmY6IG9sZCBsaW5lcyIKIG1zZ3N0ciAi0KDQsNC30LvQuNC60LA6INGB0YLQsNGA0Lgg0YDQtdC00L7QstC1IgogCi0jOiBnaXRrOjExNDYyCisjOiBnaXRrOjExNTc2CiBtc2dpZCAiZGlmZiBvbGQgbGluZXMiCiBtc2dzdHIgItGA0LDQt9C70LjQutCwLCDRgdGC0LDRgNC4INGA0LXQtNC+0LLQtSIKIAotIzogZ2l0azoxMTQ2NgorIzogZ2l0azoxMTU4MAogbXNnaWQgIkRpZmY6IG5ldyBsaW5lcyIKIG1zZ3N0ciAi0KDQsNC30LvQuNC60LA6INC90L7QstC4INGA0LXQtNC+0LLQtSIKIAotIzogZ2l0azoxMTQ2NworIzogZ2l0azoxMTU4MQogbXNnaWQgImRpZmYgbmV3IGxpbmVzIgogbXNnc3RyICLRgNCw0LfQu9C40LrQsCwg0L3QvtCy0Lgg0YDQtdC00L7QstC1IgogCi0jOiBnaXRrOjExNDcxCisjOiBnaXRrOjExNTg1CiBtc2dpZCAiRGlmZjogaHVuayBoZWFkZXIiCiBtc2dzdHIgItCg0LDQt9C70LjQutCwOiDQvdCw0YfQsNC70L4g0L3QsCDQv9Cw0YDRh9C1IgogCi0jOiBnaXRrOjExNDczCisjOiBnaXRrOjExNTg3CiBtc2dpZCAiZGlmZiBodW5rIGhlYWRlciIKIG1zZ3N0ciAi0YDQsNC30LvQuNC60LAsINC90LDRh9Cw0LvQviDQvdCwINC/0LDRgNGH0LUiCiAKLSM6IGdpdGs6MTE0NzcKKyM6IGdpdGs6MTE1OTEKIG1zZ2lkICJNYXJrZWQgbGluZSBiZyIKIG1zZ3N0ciAi0KTQvtC9INC90LAg0L7RgtCx0LXQu9GP0LfQsNC9INGA0LXQtCIKIAotIzogZ2l0azoxMTQ3OQorIzogZ2l0azoxMTU5MwogbXNnaWQgIm1hcmtlZCBsaW5lIGJhY2tncm91bmQiCiBtc2dzdHIgItGE0L7QvSDQvdCwINC+0YLQsdC10LvRj9C30LDQvSDRgNC10LQiCiAKLSM6IGdpdGs6MTE0ODMKKyM6IGdpdGs6MTE1OTcKIG1zZ2lkICJTZWxlY3QgYmciCiBtc2dzdHIgItCY0LfQsdC+0YAg0L3QsCDRhNC+0L0iCiAKLSM6IGdpdGs6MTE0OTIKKyM6IGdpdGs6MTE2MDYKIG1zZ2lkICJGb250czogcHJlc3MgdG8gY2hvb3NlIgogbXNnc3RyICLQqNGA0LjRhNGC0L7QstC1OiDQuNC30LHQuNGA0LAg0YHQtSDRgSDQvdCw0YLQuNGB0LrQsNC90LUiCiAKLSM6IGdpdGs6MTE0OTQKKyM6IGdpdGs6MTE2MDgKIG1zZ2lkICJNYWluIGZvbnQiCiBtc2dzdHIgItCe0YHQvdC+0LLQtdC9INGI0YDQuNGE0YIiCiAKLSM6IGdpdGs6MTE0OTUKKyM6IGdpdGs6MTE2MDkKIG1zZ2lkICJEaWZmIGRpc3BsYXkgZm9udCIKIG1zZ3N0ciAi0KjRgNC40YTRgiDQt9CwINGA0LDQt9C70LjQutC40YLQtSIKIAotIzogZ2l0azoxMTQ5NgorIzogZ2l0azoxMTYxMAogbXNnaWQgIlVzZXIgaW50ZXJmYWNlIGZvbnQiCiBtc2dzdHIgItCo0YDQuNGE0YIg0L3QsCDQuNC90YLQtdGA0YTQtdC50YHQsCIKIAotIzogZ2l0azoxMTUxOAorIzogZ2l0azoxMTYzMgogbXNnaWQgIkdpdGsgcHJlZmVyZW5jZXMiCiBtc2dzdHIgItCd0LDRgdGC0YDQvtC50LrQuCDQvdCwIEdpdGsiCiAKLSM6IGdpdGs6MTE1MjcKKyM6IGdpdGs6MTE2NDEKIG1zZ2lkICJHZW5lcmFsIgogbXNnc3RyICLQntCx0YnQuCIKIAotIzogZ2l0azoxMTUyOAorIzogZ2l0azoxMTY0MgogbXNnaWQgIkNvbG9ycyIKIG1zZ3N0ciAi0KbQstC10YLQvtCy0LUiCiAKLSM6IGdpdGs6MTE1MjkKKyM6IGdpdGs6MTE2NDMKIG1zZ2lkICJGb250cyIKIG1zZ3N0ciAi0KjRgNC40YTRgtC+0LLQtSIKIAotIzogZ2l0azoxMTU3OQorIzogZ2l0azoxMTY5MwogIywgdGNsLWZvcm1hdAogbXNnaWQgIkdpdGs6IGNob29zZSBjb2xvciBmb3IgJXMiCiBtc2dzdHIgIkdpdGs6INC40LfQsdC+0YAg0L3QsCDRhtCy0Y/RgiDQvdCwIOKAniVz4oCcIgogCi0jOiBnaXRrOjEyMDkyCisjOiBnaXRrOjEyMjA2CiBtc2dpZCAiIgogIlNvcnJ5LCBnaXRrIGNhbm5vdCBydW4gd2l0aCB0aGlzIHZlcnNpb24gb2YgVGNsL1RrLlxuIgogIiBHaXRrIHJlcXVpcmVzIGF0IGxlYXN0IFRjbC9UayA4LjQuIgpAQCAtMTM2NywxNSArMTM5MywxNSBAQAogItCi0LDQt9C4INCy0LXRgNGB0LjRjyDQvdCwIFRjbC9UayDQvdC1INGB0LUg0L/QvtC00LTRitGA0LbQsCDQvtGCIEdpdGsuXG4iCiAiINCd0LXQvtCx0YXQvtC00LjQvNCwINCy0Lgg0LUg0L/QvtC90LUgVGNsL1RrIDguNC4iCiAKLSM6IGdpdGs6MTIzMDIKKyM6IGdpdGs6MTI0MTYKIG1zZ2lkICJDYW5ub3QgZmluZCBhIGdpdCByZXBvc2l0b3J5IGhlcmUuIgogbXNnc3RyICLQotGD0Log0LvQuNC/0YHQstCwINGF0YDQsNC90LjQu9C40YnQtSDQvdCwIEdpdC4iCiAKLSM6IGdpdGs6MTIzNDkKKyM6IGdpdGs6MTI0NjMKICMsIHRjbC1mb3JtYXQKIG1zZ2lkICJBbWJpZ3VvdXMgYXJndW1lbnQgJyVzJzogYm90aCByZXZpc2lvbiBhbmQgZmlsZW5hbWUiCiBtc2dzdHIgItCd0LXQtdC00L3QvtC30L3QsNGH0LXQvSDQsNGA0LPRg9C80LXQvdGCIOKAniVz4oCcOiDQuNC80LAg0Lgg0YLQsNC60LDQstCwINCy0LXRgNGB0LjRjywg0Lgg0YLQsNC60YrQsiDRhNCw0LnQuyIKIAotIzogZ2l0azoxMjM2MQorIzogZ2l0azoxMjQ3NQogbXNnaWQgIkJhZCBhcmd1bWVudHMgdG8gZ2l0azoiCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvQvdC4INCw0YDQs9GD0LzQtdC90YLQuCDQvdCwIGdpdGs6IgpkaWZmIC0tZ2l0IGEvZ2l0ay1naXQvcG8vemhfY24ucG8gYi9naXRrLWdpdC9wby96aF9jbi5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xN2I3Zjg5Ci0tLSAvZGV2L251bGwKKysrIGIvZ2l0ay1naXQvcG8vemhfY24ucG8KQEAgLTAsMCArMSwxMzY3IEBACisjIFRyYW5zbGF0aW9uIG9mIGdpdGsgdG8gU2ltcGxpZmllZCBDaGluZXNlLgorIworIyBUcmFuc2xhdG9yczoKKyMgWWFuS2UgPGlteWFua2VAMTYzLmNvbT4sIDIwMTcKKworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogR2l0IENoaW5lc2UgTG9jYWxpemF0aW9uIFByb2plY3RcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTctMDItMjggMjM6MTErMDgwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTctMDMtMTEgMDI6MjcrMDgwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogWWFuS2UgPGlteWFua2VAMTYzLmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBDaGluZXNlXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiTGFuZ3VhZ2U6IHpoX0NOXG4iCisKKyM6IGdpdGs6MTQwCittc2dpZCAiQ291bGRuJ3QgZ2V0IGxpc3Qgb2YgdW5tZXJnZWQgZmlsZXM6IgorbXNnc3RyICLkuI3og73ojrflj5bmnKrlkIjlubbmlofku7bliJfooajvvJoiCisKKyM6IGdpdGs6MjEyIGdpdGs6MjQwMworbXNnaWQgIkNvbG9yIHdvcmRzIgorbXNnc3RyICLnnYDoibLmmL7npLrlt67lvIIiCisKKyM6IGdpdGs6MjE3IGdpdGs6MjQwMyBnaXRrOjgyNDkgZ2l0azo4MjgyCittc2dpZCAiTWFya3VwIHdvcmRzIgorbXNnc3RyICLmoIforrDmmL7npLrlt67lvIIiCisKKyM6IGdpdGs6MzI0Cittc2dpZCAiRXJyb3IgcGFyc2luZyByZXZpc2lvbnM6IgorbXNnc3RyICLop6PmnpDniYjmnKzplJnor6/vvJoiCisKKyM6IGdpdGs6MzgwCittc2dpZCAiRXJyb3IgZXhlY3V0aW5nIC0tYXJnc2NtZCBjb21tYW5kOiIKK21zZ3N0ciAi6L+Q6KGMIC0tYXJnc2NtZOWRveS7pOWHuumUmSIKKworIzogZ2l0azozOTMKK21zZ2lkICJObyBmaWxlcyBzZWxlY3RlZDogLS1tZXJnZSBzcGVjaWZpZWQgYnV0IG5vIGZpbGVzIGFyZSB1bm1lcmdlZC4iCittc2dzdHIgIuayoeaciemAieS4reaWh+S7tu+8mi0t5oyH5a6abWVyZ2Xlj4LmlbDkvYbmsqHmnInmnKrlkIjlubbnmoTmlofku7bjgIIiCisKKyM6IGdpdGs6Mzk2Cittc2dpZCAiIgorIk5vIGZpbGVzIHNlbGVjdGVkOiAtLW1lcmdlIHNwZWNpZmllZCBidXQgbm8gdW5tZXJnZWQgZmlsZXMgYXJlIHdpdGhpbiBmaWxlICIKKyJsaW1pdC4iCittc2dzdHIgIuayoeaciemAieS4reaWh+S7tu+8mi0t5oyH5a6abWVyZ2Xlj4LmlbDkvYbmsqHmnInmnKrlkIjlubbnmoTmlofku7blnKjmlofku7bkuK0iCisKKyM6IGdpdGs6NDE4IGdpdGs6NTY2Cittc2dpZCAiRXJyb3IgZXhlY3V0aW5nIGdpdCBsb2c6IgorbXNnc3RyICLmiafooYxnaXQgbG9n5ZG95Luk5Ye66ZSZ77yaIgorCisjOiBnaXRrOjQzNiBnaXRrOjU4MgorbXNnaWQgIlJlYWRpbmciCittc2dzdHIgIuivu+WPluS4rSIKKworIzogZ2l0azo0OTYgZ2l0azo0NTQ5Cittc2dpZCAiUmVhZGluZyBjb21taXRzLi4uIgorbXNnc3RyICLmj5DkuqTorrDlvZXor7vlj5bkuK0uLi4iCisKKyM6IGdpdGs6NDk5IGdpdGs6MTY0MSBnaXRrOjQ1NTIKK21zZ2lkICJObyBjb21taXRzIHNlbGVjdGVkIgorbXNnc3RyICLmnKrpgInkuK3ku7vkvZXmj5DkuqQiCisKKyM6IGdpdGs6MTQ0OSBnaXRrOjQwNjkgZ2l0azoxMjU4MworbXNnaWQgIkNvbW1hbmQgbGluZSIKK21zZ3N0ciAi5ZG95Luk6KGMIgorCisjOiBnaXRrOjE1MTUKK21zZ2lkICJDYW4ndCBwYXJzZSBnaXQgbG9nIG91dHB1dDoiCittc2dzdHIgIuS4jeiDveino+aekGdpdCBsb2fovpPlh7rvvJoiCisKKyM6IGdpdGs6MTc0NAorbXNnaWQgIk5vIGNvbW1pdCBpbmZvcm1hdGlvbiBhdmFpbGFibGUiCittc2dzdHIgIuaXoOWPr+eUqOaPkOS6pOS/oeaBryIKKworIzogZ2l0azoxOTA3IGdpdGs6MTkzNiBnaXRrOjQzMzkgZ2l0azo5Nzg5IGdpdGs6MTEzODggZ2l0azoxMTY2OAorbXNnaWQgIk9LIgorbXNnc3RyICLnoa7lrpoiCisKKyM6IGdpdGs6MTkzOCBnaXRrOjQzNDEgZ2l0azo5MjI1IGdpdGs6OTMwNCBnaXRrOjk0MzQgZ2l0azo5NTIwIGdpdGs6OTc5MQorIzogZ2l0azoxMTM4OSBnaXRrOjExNjY5Cittc2dpZCAiQ2FuY2VsIgorbXNnc3RyICLlj5bmtogiCisKKyM6IGdpdGs6MjA4NworbXNnaWQgIiZVcGRhdGUiCittc2dzdHIgIuabtOaWsCIKKworIzogZ2l0azoyMDg4Cittc2dpZCAiJlJlbG9hZCIKK21zZ3N0ciAi6YeN5paw5Yqg6L29IgorCisjOiBnaXRrOjIwODkKK21zZ2lkICJSZXJlYWQgcmUmZmVyZW5jZXMiCittc2dzdHIgIumHjeaWsOivu+WPluW8leeUqCIKKworIzogZ2l0azoyMDkwCittc2dpZCAiJkxpc3QgcmVmZXJlbmNlcyIKK21zZ3N0ciAi5YiX5Ye65byV55SoKOWIhuaUr+S7peWPinRhZykiCisKKyM6IGdpdGs6MjA5MgorbXNnaWQgIlN0YXJ0IGdpdCAmZ3VpIgorbXNnc3RyICLlkK/liqhnaXQgZ3Vp5a6i5oi356uvIgorCisjOiBnaXRrOjIwOTQKK21zZ2lkICImUXVpdCIKK21zZ3N0ciAi6YCA5Ye6IgorCisjOiBnaXRrOjIwODYKK21zZ2lkICImRmlsZSIKK21zZ3N0ciAi5paH5Lu2IgorCisjOiBnaXRrOjIwOTgKK21zZ2lkICImUHJlZmVyZW5jZXMiCittc2dzdHIgIuWBj+Wlveiuvue9riIKKworIzogZ2l0azoyMDk3Cittc2dpZCAiJkVkaXQiCittc2dzdHIgIue8lui+kSIKKworIzogZ2l0azoyMTAyCittc2dpZCAiJk5ldyB2aWV3Li4uIgorbXNnc3RyICLmlrDop4blm74uLi4iCisKKyM6IGdpdGs6MjEwMworbXNnaWQgIiZFZGl0IHZpZXcuLi4iCittc2dzdHIgIue8lui+keinhuWbvi4uLiIKKworIzogZ2l0azoyMTA0Cittc2dpZCAiJkRlbGV0ZSB2aWV3IgorbXNnc3RyICLliKDpmaTop4blm74iCisKKyM6IGdpdGs6MjEwNgorbXNnaWQgIiZBbGwgZmlsZXMiCittc2dzdHIgIuaJgOacieaWh+S7tiIKKworIzogZ2l0azoyMTAxCittc2dpZCAiJlZpZXciCittc2dzdHIgIuinhuWbviIKKworIzogZ2l0azoyMTExIGdpdGs6MjEyMQorbXNnaWQgIiZBYm91dCBnaXRrIgorbXNnc3RyICLlhbPkuo5naXRrIgorCisjOiBnaXRrOjIxMTIgZ2l0azoyMTI2Cittc2dpZCAiJktleSBiaW5kaW5ncyIKK21zZ3N0ciAi5b+r5o236ZSuIgorCisjOiBnaXRrOjIxMTAgZ2l0azoyMTI1Cittc2dpZCAiJkhlbHAiCittc2dzdHIgIuW4ruWKqSIKKworIzogZ2l0azoyMjAzIGdpdGs6ODY4MQorbXNnaWQgIlNIQTEgSUQ6IgorbXNnc3RyICJTSEExIElE77yaIgorCisjOiBnaXRrOjIyNDcKK21zZ2lkICJSb3ciCittc2dzdHIgIuihjCIKKworIzogZ2l0azoyMjg1Cittc2dpZCAiRmluZCIKK21zZ3N0ciAi5p+l5om+IgorCisjOiBnaXRrOjIzMTMKK21zZ2lkICJjb21taXQiCittc2dzdHIgIuaPkOS6pCIKKworIzogZ2l0azoyMzE3IGdpdGs6MjMxOSBnaXRrOjQ3MTEgZ2l0azo0NzM0IGdpdGs6NDc1OCBnaXRrOjY3NzkgZ2l0azo2ODUxCisjOiBnaXRrOjY5MzYKK21zZ2lkICJjb250YWluaW5nOiIKK21zZ3N0ciAi5YyF5ZCr77yaIgorCisjOiBnaXRrOjIzMjAgZ2l0azozNTUwIGdpdGs6MzU1NSBnaXRrOjQ3ODcKK21zZ2lkICJ0b3VjaGluZyBwYXRoczoiCittc2dzdHIgIuW9seWTjei3r+W+hO+8miIKKworIzogZ2l0azoyMzIxIGdpdGs6NDgwMQorbXNnaWQgImFkZGluZy9yZW1vdmluZyBzdHJpbmc6IgorbXNnc3RyICLlop7liqAv5Yig6Zmk5a2X56ym5Liy77yaIgorCisjOiBnaXRrOjIzMjIgZ2l0azo0ODAzCittc2dpZCAiY2hhbmdpbmcgbGluZXMgbWF0Y2hpbmc6IgorbXNnc3RyICLmlLnlj5jooYzljLnphY3vvJoiCisKKyM6IGdpdGs6MjMzMSBnaXRrOjIzMzMgZ2l0azo0NzkwCittc2dpZCAiRXhhY3QiCittc2dzdHIgIueyvuehruWMuemFjSIKKworIzogZ2l0azoyMzMzIGdpdGs6NDg3OCBnaXRrOjY3NDcKK21zZ2lkICJJZ25DYXNlIgorbXNnc3RyICLlv73nlaXlpKflsI/lhpkiCisKKyM6IGdpdGs6MjMzMyBnaXRrOjQ3NjAgZ2l0azo0ODc2IGdpdGs6Njc0MworbXNnaWQgIlJlZ2V4cCIKK21zZ3N0ciAi5q2j5YiZIgorCisjOiBnaXRrOjIzMzUgZ2l0azoyMzM2IGdpdGs6NDg5OCBnaXRrOjQ5MjggZ2l0azo0OTM1IGdpdGs6Njg3MiBnaXRrOjY5NDAKK21zZ2lkICJBbGwgZmllbGRzIgorbXNnc3RyICLmiYDmnInlrZfmrrUiCisKKyM6IGdpdGs6MjMzNiBnaXRrOjQ4OTUgZ2l0azo0OTI4IGdpdGs6NjgxMAorbXNnaWQgIkhlYWRsaW5lIgorbXNnc3RyICLmoIfpopgiCisKKyM6IGdpdGs6MjMzNyBnaXRrOjQ4OTUgZ2l0azo2ODEwIGdpdGs6Njk0MCBnaXRrOjc0MTMKK21zZ2lkICJDb21tZW50cyIKK21zZ3N0ciAi5o+Q5Lqk5rOo6YeKIgorCisjOiBnaXRrOjIzMzcgZ2l0azo0ODk1IGdpdGs6NDkwMCBnaXRrOjQ5MzUgZ2l0azo2ODEwIGdpdGs6NzM0OCBnaXRrOjg4NTkKKyM6IGdpdGs6ODg3NAorbXNnaWQgIkF1dGhvciIKK21zZ3N0ciAi5L2c6ICFIgorCisjOiBnaXRrOjIzMzcgZ2l0azo0ODk1IGdpdGs6NjgxMCBnaXRrOjczNTAKK21zZ2lkICJDb21taXR0ZXIiCittc2dzdHIgIuaPkOS6pOiAhSIKKworIzogZ2l0azoyMzcxCittc2dpZCAiU2VhcmNoIgorbXNnc3RyICLmkJzntKIiCisKKyM6IGdpdGs6MjM3OQorbXNnaWQgIkRpZmYiCittc2dzdHIgIuW3ruW8giIKKworIzogZ2l0azoyMzgxCittc2dpZCAiT2xkIHZlcnNpb24iCittc2dzdHIgIuiAgeeJiOacrCIKKworIzogZ2l0azoyMzgzCittc2dpZCAiTmV3IHZlcnNpb24iCittc2dzdHIgIuaWsOeJiOacrCIKKworIzogZ2l0azoyMzg2Cittc2dpZCAiTGluZXMgb2YgY29udGV4dCIKK21zZ3N0ciAiRGlmZuS4iuS4i+aWh+aYvuekuuihjOaVsCIKKworIzogZ2l0azoyMzk2Cittc2dpZCAiSWdub3JlIHNwYWNlIGNoYW5nZSIKK21zZ3N0ciAi5b+955Wl56m65qC85L+u5pS5IgorCisjOiBnaXRrOjI0MDAgZ2l0azoyNDAyIGdpdGs6Nzk4MyBnaXRrOjgyMzUKK21zZ2lkICJMaW5lIGRpZmYiCittc2dzdHIgIuaMieihjOaYvuekuuW3ruW8giIKKworIzogZ2l0azoyNDY3Cittc2dpZCAiUGF0Y2giCittc2dzdHIgIuihpeS4gSIKKworIzogZ2l0azoyNDY5Cittc2dpZCAiVHJlZSIKK21zZ3N0ciAi5qCRIgorCisjOiBnaXRrOjI2MzkgZ2l0azoyNjYwCittc2dpZCAiRGlmZiB0aGlzIC0+IHNlbGVjdGVkIgorbXNnc3RyICLmr5TovoPku47lvZPliY3mj5DkuqTliLDpgInkuK3mj5DkuqTnmoTlt67lvIIiCisKKyM6IGdpdGs6MjY0MCBnaXRrOjI2NjEKK21zZ2lkICJEaWZmIHNlbGVjdGVkIC0+IHRoaXMiCittc2dzdHIgIuavlOi+g+S7jumAieS4reaPkOS6pOWIsOW9k+WJjeaPkOS6pOeahOW3ruW8giIKKworIzogZ2l0azoyNjQxIGdpdGs6MjY2MgorbXNnaWQgIk1ha2UgcGF0Y2giCittc2dzdHIgIuWItuS9nOihpeS4gSIKKworIzogZ2l0azoyNjQyIGdpdGs6OTI4MworbXNnaWQgIkNyZWF0ZSB0YWciCittc2dzdHIgIuWIm+W7unRhZyIKKworIzogZ2l0azoyNjQzCittc2dpZCAiQ29weSBjb21taXQgc3VtbWFyeSIKK21zZ3N0ciAi5aSN5Yi25o+Q5Lqk5pGY6KaBIgorCisjOiBnaXRrOjI2NDQgZ2l0azo5NDE0Cittc2dpZCAiV3JpdGUgY29tbWl0IHRvIGZpbGUiCittc2dzdHIgIuWGmeWFpeaPkOS6pOWIsOaWh+S7tiIKKworIzogZ2l0azoyNjQ1Cittc2dpZCAiQ3JlYXRlIG5ldyBicmFuY2giCittc2dzdHIgIuWIm+W7uuaWsOWIhuaUryIKKworIzogZ2l0azoyNjQ2Cittc2dpZCAiQ2hlcnJ5LXBpY2sgdGhpcyBjb21taXQiCittc2dzdHIgIuWcqOatpOaPkOS6pOi/kOeUqOihpeS4gShjaGVycnktcGljaynlkb3ku6QiCisKKyM6IGdpdGs6MjY0NworbXNnaWQgIlJlc2V0IEhFQUQgYnJhbmNoIHRvIGhlcmUiCittc2dzdHIgIuWwhuWIhuaUr+WktChIRUFEKemHjee9ruWIsOatpOWkhCIKKworIzogZ2l0azoyNjQ4Cittc2dpZCAiTWFyayB0aGlzIGNvbW1pdCIKK21zZ3N0ciAi5qCH6K6w5q2k5o+Q5LqkIgorCisjOiBnaXRrOjI2NDkKK21zZ2lkICJSZXR1cm4gdG8gbWFyayIKK21zZ3N0ciAi6L+U5Zue5Yiw5qCH6K6wIgorCisjOiBnaXRrOjI2NTAKK21zZ2lkICJGaW5kIGRlc2NlbmRhbnQgb2YgdGhpcyBhbmQgbWFyayIKK21zZ3N0ciAi5p+l5om+5pys5qyh5o+Q5Lqk55qE5a2Q5o+Q5Lqk5bm25qCH6K6wIgorCisjOiBnaXRrOjI2NTEKK21zZ2lkICJDb21wYXJlIHdpdGggbWFya2VkIGNvbW1pdCIKK21zZ3N0ciAi5ZKM5bey5qCH6K6w55qE5o+Q5Lqk5L2c5q+U6L6DIgorCisjOiBnaXRrOjI2NTIgZ2l0azoyNjYzCittc2dpZCAiRGlmZiB0aGlzIC0+IG1hcmtlZCBjb21taXQiCittc2dzdHIgIuavlOi+g+S7juW9k+WJjeaPkOS6pOWIsOW3suagh+iusOaPkOS6pOeahOW3ruW8giIKKworIzogZ2l0azoyNjUzIGdpdGs6MjY2NAorbXNnaWQgIkRpZmYgbWFya2VkIGNvbW1pdCAtPiB0aGlzIgorbXNnc3RyICLmr5TovoPku47lt7LmoIforrDmj5DkuqTliLDlvZPliY3mj5DkuqTnmoTlt67lvIIiCisKKyM6IGdpdGs6MjY1NAorbXNnaWQgIlJldmVydCB0aGlzIGNvbW1pdCIKK21zZ3N0ciAi5pKk6ZSAKHJldmVydCnmraTmj5DkuqQiCisKKyM6IGdpdGs6MjY3MAorbXNnaWQgIkNoZWNrIG91dCB0aGlzIGJyYW5jaCIKK21zZ3N0ciAi5qOA5Ye6KGNoZWNrb3V0KeatpOWIhuaUryIKKworIzogZ2l0azoyNjcxCittc2dpZCAiUmVuYW1lIHRoaXMgYnJhbmNoIgorbXNnc3RyICLph43lkb3lkI0oUmVuYW1lKeatpOWIhuaUryIKKworIzogZ2l0azoyNjcyCittc2dpZCAiUmVtb3ZlIHRoaXMgYnJhbmNoIgorbXNnc3RyICLliKDpmaQoUmVtb3ZlKeatpOWIhuaUryIKKworIzogZ2l0azoyNjczCittc2dpZCAiQ29weSBicmFuY2ggbmFtZSIKK21zZ3N0ciAi5aSN5Yi25YiG5pSv5ZCN56ewIgorCisjOiBnaXRrOjI2ODAKK21zZ2lkICJIaWdobGlnaHQgdGhpcyB0b28iCittc2dzdHIgIumrmOS6ruatpOWkhCIKKworIzogZ2l0azoyNjgxCittc2dpZCAiSGlnaGxpZ2h0IHRoaXMgb25seSIKK21zZ3N0ciAi5Y+q6auY5Lqu5q2k5aSEIgorCisjOiBnaXRrOjI2ODIKK21zZ2lkICJFeHRlcm5hbCBkaWZmIgorbXNnc3RyICLlpJbpg6hkaWZmIgorCisjOiBnaXRrOjI2ODMKK21zZ2lkICJCbGFtZSBwYXJlbnQgY29tbWl0IgorbXNnc3RyICJCbGFtZeeItuaPkOS6pCIKKworIzogZ2l0azoyNjg0Cittc2dpZCAiQ29weSBwYXRoIgorbXNnc3RyICLlpI3liLbot6/lvoQiCisKKyM6IGdpdGs6MjY5MQorbXNnaWQgIlNob3cgb3JpZ2luIG9mIHRoaXMgbGluZSIKK21zZ3N0ciAi5pi+56S65q2k6KGM5Y6f5aeL5o+Q5LqkIgorCisjOiBnaXRrOjI2OTIKK21zZ2lkICJSdW4gZ2l0IGd1aSBibGFtZSBvbiB0aGlzIGxpbmUiCittc2dzdHIgIuWcqOatpOihjOi/kOihjGdpdCBndWnlrqLmiLfnq6/nmoRibGFtZSIKKworIzogZ2l0azozMDM2Cittc2dpZCAiQWJvdXQgZ2l0ayIKK21zZ3N0ciAi5YWz5LqOZ2l0ayIKKworIzogZ2l0azozMDM4Cittc2dpZCAiIgorIlxuIgorIkdpdGsgLSBhIGNvbW1pdCB2aWV3ZXIgZm9yIGdpdFxuIgorIlxuIgorIkNvcHlyaWdodCDCqSAyMDA1LTIwMTYgUGF1bCBNYWNrZXJyYXNcbiIKKyJcbiIKKyJVc2UgYW5kIHJlZGlzdHJpYnV0ZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIgorbXNnc3RyICJcbkdpdGsg4oCUIOS4gOS4qmdpdOeahOaPkOS6pOafpeeci+WZqFxuXG7CqSAyMDA1LTIwMTYgUGF1bCBNYWNrZXJyYXNcblxu5ZyoR05V6K645Y+v6K+B5LiL5L2/55So5Lul5Y+K5YiG5Y+RIgorCisjOiBnaXRrOjMwNDYgZ2l0azozMTEzIGdpdGs6MTAwMDQKK21zZ2lkICJDbG9zZSIKK21zZ3N0ciAi5YWz6ZetIgorCisjOiBnaXRrOjMwNjcKK21zZ2lkICJHaXRrIGtleSBiaW5kaW5ncyIKK21zZ3N0ciAiR2l0a+W/q+aNt+mUriIKKworIzogZ2l0azozMDcwCittc2dpZCAiR2l0ayBrZXkgYmluZGluZ3M6IgorbXNnc3RyICJHaXRr5b+r5o236ZSu77yaIgorCisjOiBnaXRrOjMwNzIKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICI8JXMtUT5cdFx0UXVpdCIKK21zZ3N0ciAiPCVzLVE+XHRcdOmAgOWHuiIKKworIzogZ2l0azozMDczCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiPCVzLVc+XHRcdENsb3NlIHdpbmRvdyIKK21zZ3N0ciAiPCVzLVc+XHRcdOWFs+mXreeql+WPoyIKKworIzogZ2l0azozMDc0Cittc2dpZCAiPEhvbWU+XHRcdE1vdmUgdG8gZmlyc3QgY29tbWl0IgorbXNnc3RyICI8SG9tZT5cdFx056e75Yqo5Yiw56ys5LiA5qyh5o+Q5LqkIgorCisjOiBnaXRrOjMwNzUKK21zZ2lkICI8RW5kPlx0XHRNb3ZlIHRvIGxhc3QgY29tbWl0IgorbXNnc3RyICI8RW5kPlx0XHTnp7vliqjliLDmnIDlkI7kuIDmrKHmj5DkuqQiCisKKyM6IGdpdGs6MzA3NgorbXNnaWQgIjxVcD4sIHAsIGtcdE1vdmUgdXAgb25lIGNvbW1pdCIKK21zZ3N0ciAiPFVwPiwgcCwga1x056e75Yqo5Yiw5LiK5LiA5qyh5o+Q5LqkIgorCisjOiBnaXRrOjMwNzcKK21zZ2lkICI8RG93bj4sIG4sIGpcdE1vdmUgZG93biBvbmUgY29tbWl0IgorbXNnc3RyICI8RG93bj4sIG4sIGpcdOenu+WKqOWIsOS4i+S4gOasoeaPkOS6pCIKKworIzogZ2l0azozMDc4Cittc2dpZCAiPExlZnQ+LCB6LCBoXHRHbyBiYWNrIGluIGhpc3RvcnkgbGlzdCIKK21zZ3N0ciAiPExlZnQ+LCB6LCBoXHTljoblj7LliJfooajnmoTkuIrkuIDpobkiCisKKyM6IGdpdGs6MzA3OQorbXNnaWQgIjxSaWdodD4sIHgsIGxcdEdvIGZvcndhcmQgaW4gaGlzdG9yeSBsaXN0IgorbXNnc3RyICI8UmlnaHQ+LCB4LCBsXHTljoblj7LliJfooajnmoTkuIvkuIDpobkiCisKKyM6IGdpdGs6MzA4MAorIywgdGNsLWZvcm1hdAorbXNnaWQgIjwlcy1uPlx0R28gdG8gbi10aCBwYXJlbnQgb2YgY3VycmVudCBjb21taXQgaW4gaGlzdG9yeSBsaXN0IgorbXNnc3RyICI8JXMtbj5cdOWcqOWOhuWPsuWIl+ihqOS4reWJjeW+gOacrOasoeaPkOS6pOeahOesrG7kuKrniLbmj5DkuqQiCisKKyM6IGdpdGs6MzA4MQorbXNnaWQgIjxQYWdlVXA+XHRNb3ZlIHVwIG9uZSBwYWdlIGluIGNvbW1pdCBsaXN0IgorbXNnc3RyICI8UGFnZVVwPlx05LiK5LiA6aG15o+Q5Lqk5YiX6KGoIgorCisjOiBnaXRrOjMwODIKK21zZ2lkICI8UGFnZURvd24+XHRNb3ZlIGRvd24gb25lIHBhZ2UgaW4gY29tbWl0IGxpc3QiCittc2dzdHIgIjxQYWdlRG93bj5cdOS4i+S4gOmhteaPkOS6pOWIl+ihqCIKKworIzogZ2l0azozMDgzCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiPCVzLUhvbWU+XHRTY3JvbGwgdG8gdG9wIG9mIGNvbW1pdCBsaXN0IgorbXNnc3RyICI8JXMtSG9tZT5cdOa7muWKqOWIsOaPkOS6pOWIl+ihqOmhtumDqCIKKworIzogZ2l0azozMDg0CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiPCVzLUVuZD5cdFNjcm9sbCB0byBib3R0b20gb2YgY29tbWl0IGxpc3QiCittc2dzdHIgIjwlcy1FbmQ+XHTmu5rliqjliLDmj5DkuqTliJfooajlupXpg6giCisKKyM6IGdpdGs6MzA4NQorIywgdGNsLWZvcm1hdAorbXNnaWQgIjwlcy1VcD5cdFNjcm9sbCBjb21taXQgbGlzdCB1cCBvbmUgbGluZSIKK21zZ3N0ciAiPCVzLVVwPlx05ZCR5LiK5rua5Yqo5LiA6KGM5o+Q5Lqk5YiX6KGoIgorCisjOiBnaXRrOjMwODYKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICI8JXMtRG93bj5cdFNjcm9sbCBjb21taXQgbGlzdCBkb3duIG9uZSBsaW5lIgorbXNnc3RyICI8JXMtRG93bj5cdOWQkeS4i+a7muWKqOS4gOihjOaPkOS6pOWIl+ihqCIKKworIzogZ2l0azozMDg3CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiPCVzLVBhZ2VVcD5cdFNjcm9sbCBjb21taXQgbGlzdCB1cCBvbmUgcGFnZSIKK21zZ3N0ciAiPCVzLVBhZ2VVcD5cdOWQkeS4iua7muWKqOS4gOmhteaPkOS6pOWIl+ihqCIKKworIzogZ2l0azozMDg4CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiPCVzLVBhZ2VEb3duPlx0U2Nyb2xsIGNvbW1pdCBsaXN0IGRvd24gb25lIHBhZ2UiCittc2dzdHIgIjwlcy1QYWdlRG93bj5cdOWQkeS4i+a7muWKqOS4gOmhteaPkOS6pOWIl+ihqCIKKworIzogZ2l0azozMDg5Cittc2dpZCAiPFNoaWZ0LVVwPlx0RmluZCBiYWNrd2FyZHMgKHVwd2FyZHMsIGxhdGVyIGNvbW1pdHMpIgorbXNnc3RyICI8U2hpZnQtVXA+XHTlkJHlkI7mn6Xmib4o5ZCR5LiK55qE77yM5pu05pma55qE5o+Q5LqkKSIKKworIzogZ2l0azozMDkwCittc2dpZCAiPFNoaWZ0LURvd24+XHRGaW5kIGZvcndhcmRzIChkb3dud2FyZHMsIGVhcmxpZXIgY29tbWl0cykiCittc2dzdHIgIjxTaGlmdC1Eb3duPlx05ZCR5YmN5p+l5om+KOWQkeS4i+eahO+8jOabtOaXqeeahOaPkOS6pCkiCisKKyM6IGdpdGs6MzA5MQorbXNnaWQgIjxEZWxldGU+LCBiXHRTY3JvbGwgZGlmZiB2aWV3IHVwIG9uZSBwYWdlIgorbXNnc3RyICI8RGVsZXRlPiwgYlx05ZCR5LiK5rua5YqoZGlmZuinhuWbvuS4gOmhtSIKKworIzogZ2l0azozMDkyCittc2dpZCAiPEJhY2tzcGFjZT5cdFNjcm9sbCBkaWZmIHZpZXcgdXAgb25lIHBhZ2UiCittc2dzdHIgIjxCYWNrc3BhY2U+XHTlkJHkuIrmu5rliqhkaWZm6KeG5Zu+5LiA6aG1IgorCisjOiBnaXRrOjMwOTMKK21zZ2lkICI8U3BhY2U+XHRcdFNjcm9sbCBkaWZmIHZpZXcgZG93biBvbmUgcGFnZSIKK21zZ3N0ciAiPFNwYWNlPlx0XHTlkJHkuIvmu5rliqhkaWZm6KeG5Zu+5LiA6aG1IgorCisjOiBnaXRrOjMwOTQKK21zZ2lkICJ1XHRcdFNjcm9sbCBkaWZmIHZpZXcgdXAgMTggbGluZXMiCittc2dzdHIgInVcdFx05ZCR5LiK5rua5YqoZGlmZuinhuWbvjE46KGMIgorCisjOiBnaXRrOjMwOTUKK21zZ2lkICJkXHRcdFNjcm9sbCBkaWZmIHZpZXcgZG93biAxOCBsaW5lcyIKK21zZ3N0ciAiZFx0XHTlkJHkuIvmu5rliqhkaWZm6KeG5Zu+MTjooYwiCisKKyM6IGdpdGs6MzA5NgorIywgdGNsLWZvcm1hdAorbXNnaWQgIjwlcy1GPlx0XHRGaW5kIgorbXNnc3RyICI8JXMtRj5cdFx05p+l5om+IgorCisjOiBnaXRrOjMwOTcKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICI8JXMtRz5cdFx0TW92ZSB0byBuZXh0IGZpbmQgaGl0IgorbXNnc3RyICI8JXMtRz5cdFx056e75Yqo5Yiw5LiL5LiA5qyh5p+l5om+5ZG95LitIgorCisjOiBnaXRrOjMwOTgKK21zZ2lkICI8UmV0dXJuPlx0TW92ZSB0byBuZXh0IGZpbmQgaGl0IgorbXNnc3RyICI8UmV0dXJuPlx0XHTnp7vliqjliLDkuIvkuIDmrKHmn6Xmib7lkb3kuK0iCisKKyM6IGdpdGs6MzA5OQorbXNnaWQgImdcdFx0R28gdG8gY29tbWl0IgorbXNnc3RyICJnXHRcdOi9rOWIsOaPkOS6pCIKKworIzogZ2l0azozMTAwCittc2dpZCAiL1x0XHRGb2N1cyB0aGUgc2VhcmNoIGJveCIKK21zZ3N0ciAiL1x0XHTpgInkuK3mkJzntKLmoYYiCisKKyM6IGdpdGs6MzEwMQorbXNnaWQgIj9cdFx0TW92ZSB0byBwcmV2aW91cyBmaW5kIGhpdCIKK21zZ3N0ciAiP1x0XHTnp7vliqjliLDkuIrkuIDmrKHmn6Xmib7lkb3kuK0iCisKKyM6IGdpdGs6MzEwMgorbXNnaWQgImZcdFx0U2Nyb2xsIGRpZmYgdmlldyB0byBuZXh0IGZpbGUiCittc2dzdHIgImZcdFx05rua5YqoZGlmZuinhuWbvuWIsOS4i+S4gOS4quaWh+S7tiIKKworIzogZ2l0azozMTAzCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiPCVzLVM+XHRcdFNlYXJjaCBmb3IgbmV4dCBoaXQgaW4gZGlmZiB2aWV3IgorbXNnc3RyICI8JXMtUz5cdFx05ZyoZGlmZuinhuWbvuS4reafpeaJvuS4i+S4gOatpOWRveS4rSIKKworIzogZ2l0azozMTA0CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiPCVzLVI+XHRcdFNlYXJjaCBmb3IgcHJldmlvdXMgaGl0IGluIGRpZmYgdmlldyIKK21zZ3N0ciAiPCVzLVI+XHRcdOWcqGRpZmbop4blm77kuK3mn6Xmib7kuIrkuIDmrKHlkb3kuK0iCisKKyM6IGdpdGs6MzEwNQorIywgdGNsLWZvcm1hdAorbXNnaWQgIjwlcy1LUCs+XHRJbmNyZWFzZSBmb250IHNpemUiCittc2dzdHIgIjwlcy1LUCs+XHTlop7lpKflrZfkvZPlpKflsI8iCisKKyM6IGdpdGs6MzEwNgorIywgdGNsLWZvcm1hdAorbXNnaWQgIjwlcy1wbHVzPlx0SW5jcmVhc2UgZm9udCBzaXplIgorbXNnc3RyICI8JXMtcGx1cz5cdOWinuWkp+Wtl+S9k+Wkp+WwjyIKKworIzogZ2l0azozMTA3CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiPCVzLUtQLT5cdERlY3JlYXNlIGZvbnQgc2l6ZSIKK21zZ3N0ciAiPCVzLUtQLT5cdOWHj+Wwj+Wtl+S9k+Wkp+WwjyIKKworIzogZ2l0azozMTA4CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiPCVzLW1pbnVzPlx0RGVjcmVhc2UgZm9udCBzaXplIgorbXNnc3RyICI8JXMtbWludXM+XHTlh4/lsI/lrZfkvZPlpKflsI8iCisKKyM6IGdpdGs6MzEwOQorbXNnaWQgIjxGNT5cdFx0VXBkYXRlIgorbXNnc3RyICI8RjU+XHRcdOabtOaWsCIKKworIzogZ2l0azozNTc0IGdpdGs6MzU4MworIywgdGNsLWZvcm1hdAorbXNnaWQgIkVycm9yIGNyZWF0aW5nIHRlbXBvcmFyeSBkaXJlY3RvcnkgJXM6IgorbXNnc3RyICLliJvlu7rkuLTml7bnm67lvZXlh7rplJklc++8miIKKworIzogZ2l0azozNTk2CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRXJyb3IgZ2V0dGluZyBcIiVzXCIgZnJvbSAlczoiCittc2dzdHIgIuS7jiVz6I635Y+WXCIlc1wi5Ye66ZSZ77yaIgorCisjOiBnaXRrOjM2NTkKK21zZ2lkICJjb21tYW5kIGZhaWxlZDoiCittc2dzdHIgIuaJp+ihjOWRveS7pOWksei0pe+8miIKKworIzogZ2l0azozODA4Cittc2dpZCAiTm8gc3VjaCBjb21taXQiCittc2dzdHIgIuaXoOatpOaPkOS6pCIKKworIzogZ2l0azozODIyCittc2dpZCAiZ2l0IGd1aSBibGFtZTogY29tbWFuZCBmYWlsZWQ6IgorbXNnc3RyICJnaXQgZ3VpIGJsYW1l77ya5omn6KGM5ZG95Luk5aSx6LSl77yaIgorCisjOiBnaXRrOjM4NTMKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJDb3VsZG4ndCByZWFkIG1lcmdlIGhlYWQ6ICVzIgorbXNnc3RyICLkuI3og73or7vlj5blkIjlubblpLQobWVyZ2UgaGVhZCnvvJolcyIKKworIzogZ2l0azozODYxCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRXJyb3IgcmVhZGluZyBpbmRleDogJXMiCittc2dzdHIgIuivu+WPlue0ouW8leWHuumUme+8miVzIgorCisjOiBnaXRrOjM4ODYKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJDb3VsZG4ndCBzdGFydCBnaXQgYmxhbWU6ICVzIgorbXNnc3RyICLkuI3og73miafooYxnaXQgYmxhbWXvvJolcyIKKworIzogZ2l0azozODg5IGdpdGs6Njc3OAorbXNnaWQgIlNlYXJjaGluZyIKK21zZ3N0ciAi5pCc57Si5LitIgorCisjOiBnaXRrOjM5MjEKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJFcnJvciBydW5uaW5nIGdpdCBibGFtZTogJXMiCittc2dzdHIgIui/kOihjGdpdCBibGFtZeWHuumUme+8miVzIgorCisjOiBnaXRrOjM5NDkKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJUaGF0IGxpbmUgY29tZXMgZnJvbSBjb21taXQgJXMsICB3aGljaCBpcyBub3QgaW4gdGhpcyB2aWV3IgorbXNnc3RyICLmraTooYzmnaXoh6rmj5DkuqQlc++8jOS4jeWcqOatpOinhuWbvuS4rSIKKworIzogZ2l0azozOTYzCittc2dpZCAiRXh0ZXJuYWwgZGlmZiB2aWV3ZXIgZmFpbGVkOiIKK21zZ3N0ciAi5aSW6YOoZGlmZuafpeeci+WZqOWksei0pe+8miIKKworIzogZ2l0azo0MDY3Cittc2dpZCAiQWxsIGZpbGVzIgorbXNnc3RyICLmiYDmnInmlofku7YiCisKKyM6IGdpdGs6NDA5MQorbXNnaWQgIlZpZXciCittc2dzdHIgIuinhuWbviIKKworIzogZ2l0azo0MDk0Cittc2dpZCAiR2l0ayB2aWV3IGRlZmluaXRpb24iCittc2dzdHIgIkdpdGvop4blm77lrprkuYkiCisKKyM6IGdpdGs6NDA5OAorbXNnaWQgIlJlbWVtYmVyIHRoaXMgdmlldyIKK21zZ3N0ciAi6K6w5L2P5q2k6KeG5Zu+IgorCisjOiBnaXRrOjQwOTkKK21zZ2lkICJSZWZlcmVuY2VzIChzcGFjZSBzZXBhcmF0ZWQgbGlzdCk6IgorbXNnc3RyICLlvJXnlKgo56m65qC85YiH5YiG55qE5YiX6KGoKe+8miIKKworIzogZ2l0azo0MTAwCittc2dpZCAiQnJhbmNoZXMgJiB0YWdzOiIKK21zZ3N0ciAi5YiG5pSv5ZKMdGFncyIKKworIzogZ2l0azo0MTAxCittc2dpZCAiQWxsIHJlZnMiCittc2dzdHIgIuaJgOacieW8leeUqCIKKworIzogZ2l0azo0MTAyCittc2dpZCAiQWxsIChsb2NhbCkgYnJhbmNoZXMiCittc2dzdHIgIuaJgOaciSjmnKzlnLAp5YiG5pSvIgorCisjOiBnaXRrOjQxMDMKK21zZ2lkICJBbGwgdGFncyIKK21zZ3N0ciAi5omA5pyJdGFnIgorCisjOiBnaXRrOjQxMDQKK21zZ2lkICJBbGwgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgorbXNnc3RyICLmiYDmnInov5znqIvot5/ouKrliIbmlK8iCisKKyM6IGdpdGs6NDEwNQorbXNnaWQgIkNvbW1pdCBJbmZvIChyZWd1bGFyIGV4cHJlc3Npb25zKToiCittc2dzdHIgIuaPkOS6pOS/oeaBryAo5q2j5YiZ6KGo6L6+5byPKe+8miIKKworIzogZ2l0azo0MTA2Cittc2dpZCAiQXV0aG9yOiIKK21zZ3N0ciAi5L2c6ICF77yaIgorCisjOiBnaXRrOjQxMDcKK21zZ2lkICJDb21taXR0ZXI6IgorbXNnc3RyICLmj5DkuqTogIXvvJoiCisKKyM6IGdpdGs6NDEwOAorbXNnaWQgIkNvbW1pdCBNZXNzYWdlOiIKK21zZ3N0ciAi5o+Q5Lqk5L+h5oGv77yaIgorCisjOiBnaXRrOjQxMDkKK21zZ2lkICJNYXRjaGVzIGFsbCBDb21taXQgSW5mbyBjcml0ZXJpYSIKK21zZ3N0ciAi5Yy56YWN5omA5pyJ5o+Q5Lqk5L+h5oGv5qCH5YeGIgorCisjOiBnaXRrOjQxMTAKK21zZ2lkICJNYXRjaGVzIG5vIENvbW1pdCBJbmZvIGNyaXRlcmlhIgorbXNnc3RyICLljLnphY3ml6Dmj5DkuqTkv6Hmga/moIflh4YiCisKKyM6IGdpdGs6NDExMQorbXNnaWQgIkNoYW5nZXMgdG8gRmlsZXM6IgorbXNnc3RyICLmlofku7bkv67mlLnliJfooajvvJoiCisKKyM6IGdpdGs6NDExMgorbXNnaWQgIkZpeGVkIFN0cmluZyIKK21zZ3N0ciAi5Zu65a6a5a2X56ym5LiyIgorCisjOiBnaXRrOjQxMTMKK21zZ2lkICJSZWd1bGFyIEV4cHJlc3Npb24iCittc2dzdHIgIuato+WImeihqOi+vuW8j++8miIKKworIzogZ2l0azo0MTE0Cittc2dpZCAiU2VhcmNoIHN0cmluZzoiCittc2dzdHIgIuaQnOe0ouWtl+espuS4su+8miIKKworIzogZ2l0azo0MTE1Cittc2dpZCAiIgorIkNvbW1pdCBEYXRlcyAoXCIyIHdlZWtzIGFnb1wiLCBcIjIwMDktMDMtMTcgMTU6Mjc6MzhcIiwgXCJNYXJjaCAxNywgMjAwOSAiCisiMTU6Mjc6MzhcIik6IgorbXNnc3RyICLmj5DkuqTml6XmnJ8gKFwiMuaYn+acn+S5i+WJjVwiLCBcIjIwMDktMDMtMTcgMTU6Mjc6MzhcIiwgXCI15pyIIDE3LCAyMDA5IDE1OjI3OjM4XCIpOiIKKworIzogZ2l0azo0MTE2Cittc2dpZCAiU2luY2U6IgorbXNnc3RyICLoh6rvvJoiCisKKyM6IGdpdGs6NDExNworbXNnaWQgIlVudGlsOiIKK21zZ3N0ciAi5Yiw77yaIgorCisjOiBnaXRrOjQxMTgKK21zZ2lkICJMaW1pdCBhbmQvb3Igc2tpcCBhIG51bWJlciBvZiByZXZpc2lvbnMgKHBvc2l0aXZlIGludGVnZXIpOiIKK21zZ3N0ciAi6ZmQ5Yi2IOS4lC/miJYg6Lez6L+H5LiA5a6a5pWw6YeP55qE54mI5pysKOato+aVtOaVsCnvvJoiCisKKyM6IGdpdGs6NDExOQorbXNnaWQgIk51bWJlciB0byBzaG93OiIKK21zZ3N0ciAi5pi+56S65pWw6YeP77yaIgorCisjOiBnaXRrOjQxMjAKK21zZ2lkICJOdW1iZXIgdG8gc2tpcDoiCittc2dzdHIgIui3s+i/h+aVsOmHj++8miIKKworIzogZ2l0azo0MTIxCittc2dpZCAiTWlzY2VsbGFuZW91cyBvcHRpb25zOiIKK21zZ3N0ciAi5YW25LuW6YCJ6aG577yaIgorCisjOiBnaXRrOjQxMjIKK21zZ2lkICJTdHJpY3RseSBzb3J0IGJ5IGRhdGUiCittc2dzdHIgIuS4peagvOaMieaXpeacn+aVtOeQhiIKKworIzogZ2l0azo0MTIzCittc2dpZCAiTWFyayBicmFuY2ggc2lkZXMiCittc2dzdHIgIuagh+iusOWIhuaUr+i+ueeVjCIKKworIzogZ2l0azo0MTI0Cittc2dpZCAiTGltaXQgdG8gZmlyc3QgcGFyZW50IgorbXNnc3RyICLpmZDliLbliLDnrKzkuIDkuKrniLbmj5DkuqQiCisKKyM6IGdpdGs6NDEyNQorbXNnaWQgIlNpbXBsZSBoaXN0b3J5IgorbXNnc3RyICLnroDmmJPljoblj7IiCisKKyM6IGdpdGs6NDEyNgorbXNnaWQgIkFkZGl0aW9uYWwgYXJndW1lbnRzIHRvIGdpdCBsb2c6IgorbXNnc3RyICJnaXQgbG9n5ZG95Luk55qE6aKd5aSW5Y+C5pWw77yaIgorCisjOiBnaXRrOjQxMjcKK21zZ2lkICJFbnRlciBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgdG8gaW5jbHVkZSwgb25lIHBlciBsaW5lOiIKK21zZ3N0ciAi6L6T5YWl5paH5Lu25ZKM5paH5Lu25aS55p2l5byV55So77yM5q+P6KGM5LiA5Liq77yaIgorCisjOiBnaXRrOjQxMjgKK21zZ2lkICJDb21tYW5kIHRvIGdlbmVyYXRlIG1vcmUgY29tbWl0cyB0byBpbmNsdWRlOiIKK21zZ3N0ciAi5ZG95Luk5Lqn55Sf5pu05aSa55qE5o+Q5Lqk5p2l5byV55So77yaIgorCisjOiBnaXRrOjQyNTIKK21zZ2lkICJHaXRrOiBlZGl0IHZpZXciCittc2dzdHIgIkdpdGs6IOe8lui+keinhuWbviIKKworIzogZ2l0azo0MjYwCittc2dpZCAiLS0gY3JpdGVyaWEgZm9yIHNlbGVjdGluZyByZXZpc2lvbnMiCittc2dzdHIgIi0tIOeUqOadpemAieaLqeeJiOacrOeahOinhOWImSIKKworIzogZ2l0azo0MjY1Cittc2dpZCAiVmlldyBOYW1lIgorbXNnc3RyICLop4blm77lkI3np7AiCisKKyM6IGdpdGs6NDM0MAorbXNnaWQgIkFwcGx5IChGNSkiCittc2dzdHIgIuW6lOeUqChGNSkiCisKKyM6IGdpdGs6NDM3OAorbXNnaWQgIkVycm9yIGluIGNvbW1pdCBzZWxlY3Rpb24gYXJndW1lbnRzOiIKK21zZ3N0ciAi5o+Q5Lqk6YCJ5oup5Y+C5pWw6ZSZ6K+v77yaIgorCisjOiBnaXRrOjQ0MzMgZ2l0azo0NDg2IGdpdGs6NDk0OCBnaXRrOjQ5NjIgZ2l0azo2MjMyIGdpdGs6MTI1MjQgZ2l0azoxMjUyNQorbXNnaWQgIk5vbmUiCittc2dzdHIgIuaXoCIKKworIzogZ2l0azo1MDQ1IGdpdGs6NTA1MAorbXNnaWQgIkRlc2NlbmRhbnQiCittc2dzdHIgIuWtkOaPkOS6pCIKKworIzogZ2l0azo1MDQ2Cittc2dpZCAiTm90IGRlc2NlbmRhbnQiCittc2dzdHIgIumdnuWtkOaPkOS6pCIKKworIzogZ2l0azo1MDUzIGdpdGs6NTA1OAorbXNnaWQgIkFuY2VzdG9yIgorbXNnc3RyICLniLbmj5DkuqQiCisKKyM6IGdpdGs6NTA1NAorbXNnaWQgIk5vdCBhbmNlc3RvciIKK21zZ3N0ciAi6Z2e54i25o+Q5LqkIgorCisjOiBnaXRrOjUzNDgKK21zZ2lkICJMb2NhbCBjaGFuZ2VzIGNoZWNrZWQgaW4gdG8gaW5kZXggYnV0IG5vdCBjb21taXR0ZWQiCittc2dzdHIgIuW3sua3u+WKoOWIsOe0ouW8leS9huacquaPkOS6pOeahOS/ruaUuSIKKworIzogZ2l0azo1Mzg0Cittc2dpZCAiTG9jYWwgdW5jb21taXR0ZWQgY2hhbmdlcywgbm90IGNoZWNrZWQgaW4gdG8gaW5kZXgiCittc2dzdHIgIuacqua3u+WKoOWIsOe0ouW8leS4lOacquaPkOS6pOeahOS/ruaUuSIKKworIzogZ2l0azo3MTU4Cittc2dpZCAiYW5kIG1hbnkgbW9yZSIKK21zZ3N0ciAi5pu05aSaIgorCisjOiBnaXRrOjcxNjEKK21zZ2lkICJtYW55IgorbXNnc3RyICLlvojlpJoiCisKKyM6IGdpdGs6NzM1MgorbXNnaWQgIlRhZ3M6IgorbXNnc3RyICJUYWdzOiIKKworIzogZ2l0azo3MzY5IGdpdGs6NzM3NSBnaXRrOjg4NTQKK21zZ2lkICJQYXJlbnQiCittc2dzdHIgIueItuiKgueCuSIKKworIzogZ2l0azo3MzgwCittc2dpZCAiQ2hpbGQiCittc2dzdHIgIuWtkOiKgueCuSIKKworIzogZ2l0azo3Mzg5Cittc2dpZCAiQnJhbmNoIgorbXNnc3RyICLliIbmlK8iCisKKyM6IGdpdGs6NzM5MgorbXNnaWQgIkZvbGxvd3MiCittc2dzdHIgIuS5i+WQjueahHRhZyIKKworIzogZ2l0azo3Mzk1Cittc2dpZCAiUHJlY2VkZXMiCittc2dzdHIgIuS5i+WJjeeahHRhZyIKKworIzogZ2l0azo3OTkwCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRXJyb3IgZ2V0dGluZyBkaWZmczogJXMiCittc2dzdHIgIuiOt+WPluW3ruW8gumUmeivr++8miVzIgorCisjOiBnaXRrOjg2NzkKK21zZ2lkICJHb3RvOiIKK21zZ3N0ciAi6L2s5Yiw77yaIgorCisjOiBnaXRrOjg3MDAKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJTaG9ydCBTSEExIGlkICVzIGlzIGFtYmlndW91cyIKK21zZ3N0ciAi55+t5qC85byP55qEU0hBMeaPkOS6pOWPtyVz5LiN5piO56Gu44CB5pyJ5q2n5LmJIgorCisjOiBnaXRrOjg3MDcKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJSZXZpc2lvbiAlcyBpcyBub3Qga25vd24iCittc2dzdHIgIueJiOacrCVz5pyq55+lIgorCisjOiBnaXRrOjg3MTcKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJTSEExIGlkICVzIGlzIG5vdCBrbm93biIKK21zZ3N0ciAi5o+Q5Lqk5Y+3KFNIQTEgaWQpJXPmnKrnn6UiCisKKyM6IGdpdGs6ODcxOQorIywgdGNsLWZvcm1hdAorbXNnaWQgIlJldmlzaW9uICVzIGlzIG5vdCBpbiB0aGUgY3VycmVudCB2aWV3IgorbXNnc3RyICLniYjmnKwlc+S4jeWcqOW9k+WJjeinhuWbvuS4rSIKKworIzogZ2l0azo4ODYxIGdpdGs6ODg3NgorbXNnaWQgIkRhdGUiCittc2dzdHIgIuaXpeacnyIKKworIzogZ2l0azo4ODY0Cittc2dpZCAiQ2hpbGRyZW4iCittc2dzdHIgIuWtkOiKgueCuSIKKworIzogZ2l0azo4OTI3CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUmVzZXQgJXMgYnJhbmNoIHRvIGhlcmUiCittc2dzdHIgIumHjee9ruWIhuaUryVz5Yiw5q2k5aSEIgorCisjOiBnaXRrOjg5MjkKK21zZ2lkICJEZXRhY2hlZCBoZWFkOiBjYW4ndCByZXNldCIKK21zZ3N0ciAi5YiG56a755qE5aS0KGhlYWQp77ya5LiN6IO96YeN572uKHJlc2V0KSIKKworIzogZ2l0azo5MDM0IGdpdGs6OTA0MAorbXNnaWQgIlNraXBwaW5nIG1lcmdlIGNvbW1pdCAiCittc2dzdHIgIui3s+i/h+WQiOW5tuaPkOS6pCIKKworIzogZ2l0azo5MDQ5IGdpdGs6OTA1NAorbXNnaWQgIkVycm9yIGdldHRpbmcgcGF0Y2ggSUQgZm9yICIKK21zZ3N0ciAi6I635Y+W6KGl5LiBSUTlh7rplJkiCisKKyM6IGdpdGs6OTA1MCBnaXRrOjkwNTUKK21zZ2lkICIgLSBzdG9wcGluZ1xuIgorbXNnc3RyICIg4oCUIOWBnOatouS4rVxuIgorCisjOiBnaXRrOjkwNjAgZ2l0azo5MDYzIGdpdGs6OTA3MSBnaXRrOjkwODUgZ2l0azo5MDk0Cittc2dpZCAiQ29tbWl0ICIKK21zZ3N0ciAi5o+Q5LqkIgorCisjOiBnaXRrOjkwNjQKK21zZ2lkICIiCisiIGlzIHRoZSBzYW1lIHBhdGNoIGFzXG4iCisiICAgICAgICIKK21zZ3N0ciAiIOaYr+ebuOWQjOeahOihpeS4gShwYXRjaClcbiAgICAgICAiCisKKyM6IGdpdGs6OTA3MgorbXNnaWQgIiIKKyIgZGlmZmVycyBmcm9tXG4iCisiICAgICAgICIKK21zZ3N0ciAiIOW3ruW8guadpeiHqlxuICAgICAgICIKKworIzogZ2l0azo5MDc0Cittc2dpZCAiIgorIkRpZmYgb2YgY29tbWl0czpcbiIKKyJcbiIKK21zZ3N0ciAi5o+Q5Lqk55qE5beu5byCKERpZmYp77yaXG5cbiIKKworIzogZ2l0azo5MDg2IGdpdGs6OTA5NQorIywgdGNsLWZvcm1hdAorbXNnaWQgIiBoYXMgJXMgY2hpbGRyZW4gLSBzdG9wcGluZ1xuIgorbXNnc3RyICLmnIklc+WtkOiKgueCuSDigJQg5YGc5q2i5LitXG4iCisKKyM6IGdpdGs6OTExNAorIywgdGNsLWZvcm1hdAorbXNnaWQgIkVycm9yIHdyaXRpbmcgY29tbWl0IHRvIGZpbGU6ICVzIgorbXNnc3RyICLlhpnlhaXmj5DkuqTliLDmlofku7blh7rplJnvvJolcyIKKworIzogZ2l0azo5MTIwCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiRXJyb3IgZGlmZmluZyBjb21taXRzOiAlcyIKK21zZ3N0ciAi5q+U6L6D5o+Q5Lqk5beu5byC5Ye66ZSZ77yaJXMiCisKKyM6IGdpdGs6OTE2NgorbXNnaWQgIlRvcCIKK21zZ3N0ciAi6aG26YOoIgorCisjOiBnaXRrOjkxNjcKK21zZ2lkICJGcm9tIgorbXNnc3RyICLku44iCisKKyM6IGdpdGs6OTE3MgorbXNnaWQgIlRvIgorbXNnc3RyICLliLAiCisKKyM6IGdpdGs6OTE5NgorbXNnaWQgIkdlbmVyYXRlIHBhdGNoIgorbXNnc3RyICLnlJ/miJDooaXkuIEocGF0Y2gpIgorCisjOiBnaXRrOjkxOTgKK21zZ2lkICJGcm9tOiIKK21zZ3N0ciAi5LuO77yaIgorCisjOiBnaXRrOjkyMDcKK21zZ2lkICJUbzoiCittc2dzdHIgIuWIsO+8miIKKworIzogZ2l0azo5MjE2Cittc2dpZCAiUmV2ZXJzZSIKK21zZ3N0ciAi5Y+N5ZCRKFJldmVyc2UpIgorCisjOiBnaXRrOjkyMTggZ2l0azo5NDI4Cittc2dpZCAiT3V0cHV0IGZpbGU6IgorbXNnc3RyICLovpPlh7rmlofku7bvvJoiCisKKyM6IGdpdGs6OTIyNAorbXNnaWQgIkdlbmVyYXRlIgorbXNnc3RyICLnlJ/miJAiCisKKyM6IGdpdGs6OTI2MgorbXNnaWQgIkVycm9yIGNyZWF0aW5nIHBhdGNoOiIKK21zZ3N0ciAi5Yib5bu66KGl5LiBKHBhdGNoKeWHuumUme+8miIKKworIzogZ2l0azo5Mjg1IGdpdGs6OTQxNiBnaXRrOjk1MDQKK21zZ2lkICJJRDoiCittc2dzdHIgIklEOiIKKworIzogZ2l0azo5Mjk0Cittc2dpZCAiVGFnIG5hbWU6IgorbXNnc3RyICJUYWflkI3np7DvvJoiCisKKyM6IGdpdGs6OTI5NworbXNnaWQgIlRhZyBtZXNzYWdlIGlzIG9wdGlvbmFsIgorbXNnc3RyICJUYWfkv6Hmga/mmK/lj6/pgInnmoQiCisKKyM6IGdpdGs6OTI5OQorbXNnaWQgIlRhZyBtZXNzYWdlOiIKK21zZ3N0ciAiVGFn5L+h5oGv77yaIgorCisjOiBnaXRrOjkzMDMgZ2l0azo5NDc0Cittc2dpZCAiQ3JlYXRlIgorbXNnc3RyICLliJvlu7oiCisKKyM6IGdpdGs6OTMyMQorbXNnaWQgIk5vIHRhZyBuYW1lIHNwZWNpZmllZCIKK21zZ3N0ciAi5pyq5oyH5a6adGFn5ZCN56ewIgorCisjOiBnaXRrOjkzMjUKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJUYWcgXCIlc1wiIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICJUYWdcIiVzXCLlt7Lnu4/lrZjlnKgiCisKKyM6IGdpdGs6OTMzNQorbXNnaWQgIkVycm9yIGNyZWF0aW5nIHRhZzoiCittc2dzdHIgIuWIm+W7unRhZ+WHuumUme+8miIKKworIzogZ2l0azo5NDI1Cittc2dpZCAiQ29tbWFuZDoiCittc2dzdHIgIuWRveS7pO+8miIKKworIzogZ2l0azo5NDMzCittc2dpZCAiV3JpdGUiCittc2dzdHIgIuWGmeWFpSIKKworIzogZ2l0azo5NDUxCittc2dpZCAiRXJyb3Igd3JpdGluZyBjb21taXQ6IgorbXNnc3RyICLlhpnlhaXmj5DkuqTlh7rplJnvvJoiCisKKyM6IGdpdGs6OTQ3MworbXNnaWQgIkNyZWF0ZSBicmFuY2giCittc2dzdHIgIuWIm+W7uuWIhuaUryIKKworIzogZ2l0azo5NDg5CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUmVuYW1lIGJyYW5jaCAlcyIKK21zZ3N0ciAi6YeN5ZG95ZCN5YiG5pSvJXMiCisKKyM6IGdpdGs6OTQ5MAorbXNnaWQgIlJlbmFtZSIKK21zZ3N0ciAi6YeN5ZG95ZCNIgorCisjOiBnaXRrOjk1MTQKK21zZ2lkICJOYW1lOiIKK21zZ3N0ciAi5ZCN56ew77yaIgorCisjOiBnaXRrOjk1MzgKK21zZ2lkICJQbGVhc2Ugc3BlY2lmeSBhIG5hbWUgZm9yIHRoZSBuZXcgYnJhbmNoIgorbXNnc3RyICLor7fmjIflrprmlrDliIbmlK/nmoTlkI3np7AiCisKKyM6IGdpdGs6OTU0MworIywgdGNsLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIGFscmVhZHkgZXhpc3RzLiBPdmVyd3JpdGU/IgorbXNnc3RyICLliIbmlK9cIiVzXCLlt7Lnu4/lrZjlnKjjgILopobnm5blroPvvJ8iCisKKyM6IGdpdGs6OTU4NworbXNnaWQgIlBsZWFzZSBzcGVjaWZ5IGEgbmV3IG5hbWUgZm9yIHRoZSBicmFuY2giCittc2dzdHIgIuivt+mHjeaWsOaMh+WumuaWsOWIhuaUr+eahOWQjeensCIKKworIzogZ2l0azo5NjUwCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiQ29tbWl0ICVzIGlzIGFscmVhZHkgaW5jbHVkZWQgaW4gYnJhbmNoICVzIC0tIHJlYWxseSByZS1hcHBseSBpdD8iCittc2dzdHIgIuaPkOS6pCVz5bey57uP5a2Y5Zyo5LqO5YiG5pSvJXPjgILnoa7lrprph43mlrDlupTnlKjlroPvvJ8iCisKKyM6IGdpdGs6OTY1NQorbXNnaWQgIkNoZXJyeS1waWNraW5nIgorbXNnc3RyICLmiZPooaXkuIHkuK0oQ2hlcnJ5LXBpY2tpbmcpIgorCisjOiBnaXRrOjk2NjQKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIiCisiQ2hlcnJ5LXBpY2sgZmFpbGVkIGJlY2F1c2Ugb2YgbG9jYWwgY2hhbmdlcyB0byBmaWxlICclcycuXG4iCisiUGxlYXNlIGNvbW1pdCwgcmVzZXQgb3Igc3Rhc2ggeW91ciBjaGFuZ2VzIGFuZCB0cnkgYWdhaW4uIgorbXNnc3RyICLmiZPooaXkuIEoQ2hlcnJ5LXBpY2sp5aSx6LSl77yM5Zug5Li65pys5Zyw5L+u5pS55LqG5paH5Lu2XCIlc1wi44CCXG7or7fmj5DkuqQoY29tbWl0KeOAgemHjee9rihyZXNldCnmiJbmmoLlrZgoc3Rhc2gp5L+u5pS55ZCO6YeN6K+V44CCIgorCisjOiBnaXRrOjk2NzAKK21zZ2lkICIiCisiQ2hlcnJ5LXBpY2sgZmFpbGVkIGJlY2F1c2Ugb2YgbWVyZ2UgY29uZmxpY3QuXG4iCisiRG8geW91IHdpc2ggdG8gcnVuIGdpdCBjaXRvb2wgdG8gcmVzb2x2ZSBpdD8iCittc2dzdHIgIuaJk+ihpeS4gShDaGVycnktcGljaynlpLHotKXlm6DkuLrlkIjlubblhrLnqoHjgIJcbuS9oOaYr+WQpuW4jOacm+i/kOihjGdpdCBjaXRvb2wg5p2l6Kej5Yaz5Yay56qB77yfIgorCisjOiBnaXRrOjk2ODYgZ2l0azo5NzQ0Cittc2dpZCAiTm8gY2hhbmdlcyBjb21taXR0ZWQiCittc2dzdHIgIuaXoOW3sue7j+aPkOS6pOeahOS/ruaUuSIKKworIzogZ2l0azo5NzEzCisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiQ29tbWl0ICVzIGlzIG5vdCBpbmNsdWRlZCBpbiBicmFuY2ggJXMgLS0gcmVhbGx5IHJldmVydCBpdD8iCittc2dzdHIgIuaPkOS6pCVz5LiN5YyF5ZCr5Zyo5YiG5pSvJXPkuK3vvIznoa7orqTlm57mu5oocmV2ZXJ0KeWug++8nyIKKworIzogZ2l0azo5NzE4Cittc2dpZCAiUmV2ZXJ0aW5nIgorbXNnc3RyICLlm57mu5rkuK0oUmV2ZXJ0aW5nKSIKKworIzogZ2l0azo5NzI2CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiIgorIlJldmVydCBmYWlsZWQgYmVjYXVzZSBvZiBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXM6JXMgUGxlYXNlICIKKyJjb21taXQsIHJlc2V0IG9yIHN0YXNoICB5b3VyIGNoYW5nZXMgYW5kIHRyeSBhZ2Fpbi4iCittc2dzdHIgIuWbnua7mihyZXZlcnQp5aSx6LSl77yM5Zug5Li65aaC5LiL55qE5pys5Zyw5paH5Lu25L+u5pS577yaJXNcbuivt+aPkOS6pChjb21taXQp44CB6YeN572uKHJlc2V0KeaIluiAheaaguWtmChzdGFzaCnmlLnlj5jlkI7ph43or5XjgIIiCisKKyM6IGdpdGs6OTczMAorbXNnaWQgIiIKKyJSZXZlcnQgZmFpbGVkIGJlY2F1c2Ugb2YgbWVyZ2UgY29uZmxpY3QuXG4iCisiIERvIHlvdSB3aXNoIHRvIHJ1biBnaXQgY2l0b29sIHRvIHJlc29sdmUgaXQ/IgorbXNnc3RyICLlm57mu5oocmV2ZXJ0KeWksei0pe+8jOWboOS4uuWQiOW5tuWGsueqgeOAglxu5L2g5piv5ZCm5biM5pyb6L+Q6KGMZ2l0IGNpdG9vbOadpeino+WGs+WGsueqge+8nyIKKworIzogZ2l0azo5NzczCittc2dpZCAiQ29uZmlybSByZXNldCIKK21zZ3N0ciAi56Gu6K6k6YeN572uKHJlc2V0KSIKKworIzogZ2l0azo5Nzc1CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiUmVzZXQgYnJhbmNoICVzIHRvICVzPyIKK21zZ3N0ciAi6YeN572uKHJlc2V0KeWIhuaUryVz5YiwJXPvvJ8iCisKKyM6IGdpdGs6OTc3NworbXNnaWQgIlJlc2V0IHR5cGU6IgorbXNnc3RyICLph43nva4ocmVzZXQp57G75Z6L77yaIgorCisjOiBnaXRrOjk3ODAKK21zZ2lkICJTb2Z0OiBMZWF2ZSB3b3JraW5nIHRyZWUgYW5kIGluZGV4IHVudG91Y2hlZCIKK21zZ3N0ciAi6L2v5oCn77ya56a75byA5bel5L2c5qCR77yM57Si5byV5pyq5pS55Y+YIgorCisjOiBnaXRrOjk3ODMKK21zZ2lkICJNaXhlZDogTGVhdmUgd29ya2luZyB0cmVlIHVudG91Y2hlZCwgcmVzZXQgaW5kZXgiCittc2dzdHIgIua3t+WQiO+8muemu+W8gOW3peS9nOagkSjmnKrmlLnlj5gp77yM57Si5byV6YeN572uIgorCisjOiBnaXRrOjk3ODYKK21zZ2lkICIiCisiSGFyZDogUmVzZXQgd29ya2luZyB0cmVlIGFuZCBpbmRleFxuIgorIihkaXNjYXJkIEFMTCBsb2NhbCBjaGFuZ2VzKSIKK21zZ3N0ciAi56Gs5oCn77ya6YeN572u5bel5L2c5qCR5ZKM57Si5byVXG4o5Lii5byD5omA5pyJ55qE5pys5Zyw5L+u5pS5KSIKKworIzogZ2l0azo5ODAzCittc2dpZCAiUmVzZXR0aW5nIgorbXNnc3RyICLph43nva7kuK0oUmVzZXR0aW5nKSIKKworIzogZ2l0azo5ODc2CisjLCB0Y2wtZm9ybWF0Cittc2dpZCAiQSBsb2NhbCBicmFuY2ggbmFtZWQgJXMgZXhpc3RzIGFscmVhZHkiCittc2dzdHIgIuacrOWcsOWIhuaUryVz5bey57uP5a2Y5ZyoIgorCisjOiBnaXRrOjk4ODQKK21zZ2lkICJDaGVja2luZyBvdXQiCittc2dzdHIgIuajgOWHuuS4rShDaGVja2luZyBvdXQpIgorCisjOiBnaXRrOjk5NDMKK21zZ2lkICJDYW5ub3QgZGVsZXRlIHRoZSBjdXJyZW50bHkgY2hlY2tlZC1vdXQgYnJhbmNoIgorbXNnc3RyICLkuI3og73liKDpmaTlvZPliY3mo4Dlh7ooY2hlY2tvdXQp5YiG5pSvIgorCisjOiBnaXRrOjk5NDkKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGNvbW1pdHMgb24gYnJhbmNoICVzIGFyZW4ndCBvbiBhbnkgb3RoZXIgYnJhbmNoLlxuIgorIlJlYWxseSBkZWxldGUgYnJhbmNoICVzPyIKK21zZ3N0ciAi5Zyo5YiG5pSvJXPkuIrnmoTmj5DkuqTkuI3lnKjlhbbku5bku7vkvZXliIbmlK/kuIrjgIJcbuehruiupOWIoOmZpOWIhuaUryVz77yfIgorCisjOiBnaXRrOjk5ODAKKyMsIHRjbC1mb3JtYXQKK21zZ2lkICJUYWdzIGFuZCBoZWFkczogJXMiCittc2dzdHIgIlRhZ3PlkozlpLTmjIfpkogoaGVhZHMp77yaJXMiCisKKyM6IGdpdGs6OTk5NworbXNnaWQgIkZpbHRlciIKK21zZ3N0ciAi6L+H5ruk5ZmoIgorCisjOiBnaXRrOjEwMjkzCittc2dpZCAiIgorIkVycm9yIHJlYWRpbmcgY29tbWl0IHRvcG9sb2d5IGluZm9ybWF0aW9uOyBicmFuY2ggYW5kIHByZWNlZGluZy9mb2xsb3dpbmcgIgorInRhZyBpbmZvcm1hdGlvbiB3aWxsIGJlIGluY29tcGxldGUuIgorbXNnc3RyICLor7vlj5bmj5DkuqTmi5PmiZHkv6Hmga/lh7rplJnvvJvliIbmlK/lkozkuYvliY0v5LmL5ZCO55qEdGFn5L+h5oGv5bCG5LiN6IO95a6M5oiQ44CCIgorCisjOiBnaXRrOjExMjcwCittc2dpZCAiVGFnIgorbXNnc3RyICLmoIfnrb4oVGFnKSIKKworIzogZ2l0azoxMTI3NAorbXNnaWQgIklkIgorbXNnc3RyICJJZCIKKworIzogZ2l0azoxMTM1NworbXNnaWQgIkdpdGsgZm9udCBjaG9vc2VyIgorbXNnc3RyICJHaXRr5a2X5L2T6YCJ5oupIgorCisjOiBnaXRrOjExMzc0Cittc2dpZCAiQiIKK21zZ3N0ciAi57KX5L2TIgorCisjOiBnaXRrOjExMzc3Cittc2dpZCAiSSIKK21zZ3N0ciAi5pac5L2TIgorCisjOiBnaXRrOjExNDk1Cittc2dpZCAiQ29tbWl0IGxpc3QgZGlzcGxheSBvcHRpb25zIgorbXNnc3RyICLmj5DkuqTliJfooajlsZXnpLrpgInpobkiCisKKyM6IGdpdGs6MTE0OTgKK21zZ2lkICJNYXhpbXVtIGdyYXBoIHdpZHRoIChsaW5lcykiCittc2dzdHIgIuacgOWkp+WbvuWuveW6pijooYzmlbApIgorCisjOiBnaXRrOjExNTAyCisjLCBuby10Y2wtZm9ybWF0Cittc2dpZCAiTWF4aW11bSBncmFwaCB3aWR0aCAoJSBvZiBwYW5lKSIKK21zZ3N0ciAi5pyA5aSn5Zu+5a695bqmKCXnqpflj6Pnmb7liIbmr5QpIgorCisjOiBnaXRrOjExNTA1Cittc2dpZCAiU2hvdyBsb2NhbCBjaGFuZ2VzIgorbXNnc3RyICLmmL7npLrmnKzlnLDkv67mlLkiCisKKyM6IGdpdGs6MTE1MDgKK21zZ2lkICJBdXRvLXNlbGVjdCBTSEExIChsZW5ndGgpIgorbXNnc3RyICLoh6rliqjpgInmi6lTSEExKOmVv+W6pikiCisKKyM6IGdpdGs6MTE1MTIKK21zZ2lkICJIaWRlIHJlbW90ZSByZWZzIgorbXNnc3RyICLpmpDol4/ov5znqIvlvJXnlKgiCisKKyM6IGdpdGs6MTE1MTYKK21zZ2lkICJEaWZmIGRpc3BsYXkgb3B0aW9ucyIKK21zZ3N0ciAi5beu5byCKERpZmYp5bGV56S66YCJ6aG5IgorCisjOiBnaXRrOjExNTE4Cittc2dpZCAiVGFiIHNwYWNpbmciCittc2dzdHIgIuWItuihqOespuWuveW6piIKKworIzogZ2l0azoxMTUyMQorbXNnaWQgIkRpc3BsYXkgbmVhcmJ5IHRhZ3MvaGVhZHMiCittc2dzdHIgIuaYvuekuuS4tOi/keeahHRhZ3MvaGVhZHMiCisKKyM6IGdpdGs6MTE1MjQKK21zZ2lkICJNYXhpbXVtICMgdGFncy9oZWFkcyB0byBzaG93IgorbXNnc3RyICLmnIDlpKd0YWdzL2hlYWRz5bGV56S65pWw6YePIgorCisjOiBnaXRrOjExNTI3Cittc2dpZCAiTGltaXQgZGlmZnMgdG8gbGlzdGVkIHBhdGhzIgorbXNnc3RyICJkaWZm5Lit5YiX5Ye65paH5Lu26ZmQ5Yi2IgorCisjOiBnaXRrOjExNTMwCittc2dpZCAiU3VwcG9ydCBwZXItZmlsZSBlbmNvZGluZ3MiCittc2dzdHIgIuWNleeLrOaWh+S7tue8lueggeaUr+aMgSIKKworIzogZ2l0azoxMTUzNiBnaXRrOjExNjgzCittc2dpZCAiRXh0ZXJuYWwgZGlmZiB0b29sIgorbXNnc3RyICLlpJbpg6jlt67lvIIoZGlmZinlt6XlhbciCisKKyM6IGdpdGs6MTE1MzcKK21zZ2lkICJDaG9vc2UuLi4iCittc2dzdHIgIumAieaLqS4uLiIKKworIzogZ2l0azoxMTU0MgorbXNnaWQgIkdlbmVyYWwgb3B0aW9ucyIKK21zZ3N0ciAi5bi46KeE6YCJ6aG5IgorCisjOiBnaXRrOjExNTQ1Cittc2dpZCAiVXNlIHRoZW1lZCB3aWRnZXRzIgorbXNnc3RyICLkvb/nlKjkuLvpopjlsI/pg6jku7YiCisKKyM6IGdpdGs6MTE1NDcKK21zZ2lkICIoY2hhbmdlIHJlcXVpcmVzIHJlc3RhcnQpIgorbXNnc3RyICIo6ZyA6YeN5ZCv55Sf5pWIKSIKKworIzogZ2l0azoxMTU0OQorbXNnaWQgIihjdXJyZW50bHkgdW5hdmFpbGFibGUpIgorbXNnc3RyICIo5b2T5YmN5LiN5Y+v55SoKSIKKworIzogZ2l0azoxMTU2MAorbXNnaWQgIkNvbG9yczogcHJlc3MgdG8gY2hvb3NlIgorbXNnc3RyICLpopzoibLvvJrngrnlh7vmnaXpgInmi6kiCisKKyM6IGdpdGs6MTE1NjMKK21zZ2lkICJJbnRlcmZhY2UiCittc2dzdHIgIueVjOmdoiIKKworIzogZ2l0azoxMTU2NAorbXNnaWQgImludGVyZmFjZSIKK21zZ3N0ciAi55WM6Z2iIgorCisjOiBnaXRrOjExNTY3Cittc2dpZCAiQmFja2dyb3VuZCIKK21zZ3N0ciAi6IOM5pmvIgorCisjOiBnaXRrOjExNTY4IGdpdGs6MTE1OTgKK21zZ2lkICJiYWNrZ3JvdW5kIgorbXNnc3RyICLog4zmma8iCisKKyM6IGdpdGs6MTE1NzEKK21zZ2lkICJGb3JlZ3JvdW5kIgorbXNnc3RyICLliY3mma8iCisKKyM6IGdpdGs6MTE1NzIKK21zZ2lkICJmb3JlZ3JvdW5kIgorbXNnc3RyICLliY3mma8iCisKKyM6IGdpdGs6MTE1NzUKK21zZ2lkICJEaWZmOiBvbGQgbGluZXMiCittc2dzdHIgIuW3ruW8gihEaWZmKe+8muiAgeS7o+eggeihjCIKKworIzogZ2l0azoxMTU3NgorbXNnaWQgImRpZmYgb2xkIGxpbmVzIgorbXNnc3RyICLlt67lvIIoZGlmZinogIHku6PnoIHooYwiCisKKyM6IGdpdGs6MTE1ODAKK21zZ2lkICJEaWZmOiBuZXcgbGluZXMiCittc2dzdHIgIuW3ruW8gihEaWZmKe+8muaWsOS7o+eggeihjCIKKworIzogZ2l0azoxMTU4MQorbXNnaWQgImRpZmYgbmV3IGxpbmVzIgorbXNnc3RyICLlt67lvIIoZGlmZinmlrDku6PnoIHooYwiCisKKyM6IGdpdGs6MTE1ODUKK21zZ2lkICJEaWZmOiBodW5rIGhlYWRlciIKK21zZ3N0ciAi5beu5byCKERpZmYp77ya6KGl5LiB54mH5q615aS05L+h5oGvIgorCisjOiBnaXRrOjExNTg3Cittc2dpZCAiZGlmZiBodW5rIGhlYWRlciIKK21zZ3N0ciAi5beu5byCKGRpZmYp6KGl5LiB54mH5q615aS05L+h5oGvIgorCisjOiBnaXRrOjExNTkxCittc2dpZCAiTWFya2VkIGxpbmUgYmciCittc2dzdHIgIuW3suagh+iusOS7o+eggeihjOiDjOaZryIKKworIzogZ2l0azoxMTU5MworbXNnaWQgIm1hcmtlZCBsaW5lIGJhY2tncm91bmQiCittc2dzdHIgIuW3suagh+iusOS7o+eggeihjOiDjOaZryIKKworIzogZ2l0azoxMTU5NworbXNnaWQgIlNlbGVjdCBiZyIKK21zZ3N0ciAi6YCJ5oup6IOM5pmvIgorCisjOiBnaXRrOjExNjA2Cittc2dpZCAiRm9udHM6IHByZXNzIHRvIGNob29zZSIKK21zZ3N0ciAi5a2X5L2T77ya54K55Ye75p2l6YCJ5oupIgorCisjOiBnaXRrOjExNjA4Cittc2dpZCAiTWFpbiBmb250IgorbXNnc3RyICLkuLvlrZfkvZMiCisKKyM6IGdpdGs6MTE2MDkKK21zZ2lkICJEaWZmIGRpc3BsYXkgZm9udCIKK21zZ3N0ciAi5beu5byCKERpZmYp5pi+56S65a2X5L2TIgorCisjOiBnaXRrOjExNjEwCittc2dpZCAiVXNlciBpbnRlcmZhY2UgZm9udCIKK21zZ3N0ciAi55So5oi355WM6Z2i5a2X5L2TIgorCisjOiBnaXRrOjExNjMyCittc2dpZCAiR2l0ayBwcmVmZXJlbmNlcyIKK21zZ3N0ciAiR2l0a+WBj+Wlveiuvue9riIKKworIzogZ2l0azoxMTY0MQorbXNnaWQgIkdlbmVyYWwiCittc2dzdHIgIuW4uOinhCIKKworIzogZ2l0azoxMTY0MgorbXNnaWQgIkNvbG9ycyIKK21zZ3N0ciAi6aKc6ImyIgorCisjOiBnaXRrOjExNjQzCittc2dpZCAiRm9udHMiCittc2dzdHIgIuWtl+S9kyIKKworIzogZ2l0azoxMTY5MworIywgdGNsLWZvcm1hdAorbXNnaWQgIkdpdGs6IGNob29zZSBjb2xvciBmb3IgJXMiCittc2dzdHIgIkdpdGvvvJrpgInmi6npopzoibLnlKjkuo4lcyIKKworIzogZ2l0azoxMjIwNgorbXNnaWQgIiIKKyJTb3JyeSwgZ2l0ayBjYW5ub3QgcnVuIHdpdGggdGhpcyB2ZXJzaW9uIG9mIFRjbC9Uay5cbiIKKyIgR2l0ayByZXF1aXJlcyBhdCBsZWFzdCBUY2wvVGsgOC40LiIKK21zZ3N0ciAi5a+55LiN6LW377yMZ2l0a+S4jeiDvei/kOihjOWcqOW9k+WJjeeJiOacrOeahFRjbC9Ua+S4reOAglxuR2l0a+i/kOihjOmcgOimgeacgOS9jueJiOacrOS4ulRjbC9UazguNOOAgiIKKworIzogZ2l0azoxMjQxNgorbXNnaWQgIkNhbm5vdCBmaW5kIGEgZ2l0IHJlcG9zaXRvcnkgaGVyZS4iCittc2dzdHIgIuWcqOatpOS9jee9ruacquWPkeeOsGdpdOS7k+W6k+OAgiIKKworIzogZ2l0azoxMjQ2MworIywgdGNsLWZvcm1hdAorbXNnaWQgIkFtYmlndW91cyBhcmd1bWVudCAnJXMnOiBib3RoIHJldmlzaW9uIGFuZCBmaWxlbmFtZSIKK21zZ3N0ciAi5LiN5piO56Gu5pyJ5q2n5LmJ55qE5Y+C5pWwXCIlc1wi77ya54mI5pys5ZKM5paH5Lu25ZCN56ewIgorCisjOiBnaXRrOjEyNDc1Cittc2dpZCAiQmFkIGFyZ3VtZW50cyB0byBnaXRrOiIKK21zZ3N0ciAi6L+Q6KGMZ2l0a+WPguaVsOmUmeivr++8miIKZGlmZiAtLWdpdCBhL2dpdHdlYi9naXR3ZWIucGVybCBiL2dpdHdlYi9naXR3ZWIucGVybAppbmRleCAyNTk0YTRiLi42NWEzYTllIDEwMDc1NQotLS0gYS9naXR3ZWIvZ2l0d2ViLnBlcmwKKysrIGIvZ2l0d2ViL2dpdHdlYi5wZXJsCkBAIC03NDEsNyArNzQxLDcgQEAKIAkkR0lUV0VCX0NPTkZJR19TWVNURU0gPSAiIiBpZiAoJEdJVFdFQl9DT05GSUdfU1lTVEVNIGVxICRHSVRXRUJfQ09ORklHX0NPTU1PTik7CiAKIAkjIENvbW1vbiBzeXN0ZW0td2lkZSBzZXR0aW5ncyBmb3IgY29udmVuaWVuY2UuCi0JIyBUaG9zZSBzZXR0aW5ncyBjYW4gYmUgb3Z2ZXJyaWRlbiBieSBHSVRXRUJfQ09ORklHIG9yIEdJVFdFQl9DT05GSUdfU1lTVEVNLgorCSMgVGhvc2Ugc2V0dGluZ3MgY2FuIGJlIG92ZXJyaWRkZW4gYnkgR0lUV0VCX0NPTkZJRyBvciBHSVRXRUJfQ09ORklHX1NZU1RFTS4KIAlyZWFkX2NvbmZpZ19maWxlKCRHSVRXRUJfQ09ORklHX0NPTU1PTik7CiAKIAkjIFVzZSBmaXJzdCBjb25maWcgZmlsZSB0aGF0IGV4aXN0cy4gIFRoaXMgbWVhbnMgdXNlIHRoZSBwZXItaW5zdGFuY2UKQEAgLTc4OCw2ICs3ODgsMzggQEAKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogIyBpbnB1dCB2YWxpZGF0aW9uIGFuZCBkaXNwYXRjaAogCisjIFZhcmlvdXMgaGFzaCBzaXplLXJlbGF0ZWQgdmFsdWVzLgorbXkgJHNoYTFfbGVuID0gNDA7CitteSAkc2hhMjU2X2V4dHJhX2xlbiA9IDI0OworbXkgJHNoYTI1Nl9sZW4gPSAkc2hhMV9sZW4gKyAkc2hhMjU2X2V4dHJhX2xlbjsKKworIyBBIHJlZ2V4IG1hdGNoaW5nICRsZW4gaGV4IGNoYXJhY3RlcnMuICRsZW4gbWF5IGJlIGEgcmFuZ2UgKGUuZy4gNyw2NCkuCitzdWIgb2lkX25sZW5fcmVnZXggeworCW15ICRsZW4gPSBzaGlmdDsKKwlteSAkaGNociA9IHFyL1swLTlhLWZBLUZdLzsKKwlyZXR1cm4gcXIvKD86KD86JGhjaHIpeyRsZW59KS87Cit9CisKKyMgQSByZWdleCBtYXRjaGluZyB0d28gc2V0cyBvZiAkbmxlbiBoZXggY2hhcmFjdGVycywgcHJlZml4ZWQgYnkgdGhlIGxpdGVyYWwKKyMgc3RyaW5nICRwcmVmaXggYW5kIHdpdGggdGhlIGxpdGVyYWwgc3RyaW5nICRpbmZpeCBiZXR3ZWVuIHRoZW0uCitzdWIgb2lkX25sZW5fcHJlZml4X2luZml4X3JlZ2V4IHsKKwlteSAkbmxlbiA9IHNoaWZ0OworCW15ICRwcmVmaXggPSBzaGlmdDsKKwlteSAkaW5maXggPSBzaGlmdDsKKworCW15ICRyeCA9IG9pZF9ubGVuX3JlZ2V4KCRubGVuKTsKKworCXJldHVybiBxci9eXFEkcHJlZml4XEUkcnhcUSRpbmZpeFxFJHJ4JC87Cit9CisKKyMgQSByZWdleCBtYXRjaGluZyBhIHZhbGlkIG9iamVjdCBJRC4KK291ciAkb2lkX3JlZ2V4OworeworCW15ICR4ID0gb2lkX25sZW5fcmVnZXgoJHNoYTFfbGVuKTsKKwlteSAkeSA9IG9pZF9ubGVuX3JlZ2V4KCRzaGEyNTZfZXh0cmFfbGVuKTsKKwkkb2lkX3JlZ2V4ID0gcXIvKD86JHgoPzokeSk/KS87Cit9CisKICMgaW5wdXQgcGFyYW1ldGVycyBjYW4gYmUgY29sbGVjdGVkIGZyb20gYSB2YXJpZXR5IG9mIHNvdXJjZXMgKHByZXNlbnRseSwgQ0dJCiAjIGFuZCBQQVRIX0lORk8pLCBzbyB3ZSBkZWZpbmUgYW4gJWlucHV0X3BhcmFtcyBoYXNoIHRoYXQgY29sbGVjdHMgdGhlbSBhbGwKICMgdG9nZXRoZXIgZHVyaW5nIHZhbGlkYXRpb246IHRoaXMgYWxsb3dzIHN1YnNlcXVlbnQgdXNlcyAoZS5nLiBocmVmKCkpIHRvIGJlCkBAIC0xNTE2LDcgKzE1NDgsNyBAQAogCiAJcmV0dXJuIHVuZGVmIHVubGVzcyBkZWZpbmVkICRpbnB1dDsKIAkjIHRleHR1YWwgaGFzaGVzIGFyZSBPLksuCi0JaWYgKCRpbnB1dCA9fiBtL15bMC05YS1mQS1GXXs0MH0kLykgeworCWlmICgkaW5wdXQgPX4gbS9eJG9pZF9yZWdleCQvKSB7CiAJCXJldHVybiAxOwogCX0KIAkjIGl0IG11c3QgYmUgY29ycmVjdCBwYXRobmFtZQpAQCAtMTYyNSwxNSArMTY1NywxNSBAQAogCW15ICRjbnRybCA9IHNoaWZ0OwogCW15ICVvcHRzID0gQF87CiAJbXkgJWVzID0gKCAjIGNoYXJhY3RlciBlc2NhcGUgY29kZXMsIGFrYSBlc2NhcGUgc2VxdWVuY2VzCi0JCSJcdCIgPT4gJ1x0JywgICAjIHRhYiAgICAgICAgICAgIChIVCkKLQkJIlxuIiA9PiAnXG4nLCAgICMgbGluZSBmZWVkICAgICAgKExGKQotCQkiXHIiID0+ICdccicsICAgIyBjYXJyaWdlIHJldHVybiAoQ1IpCi0JCSJcZiIgPT4gJ1xmJywgICAjIGZvcm0gZmVlZCAgICAgIChGRikKLQkJIlxiIiA9PiAnXGInLCAgICMgYmFja3NwYWNlICAgICAgKEJTKQotCQkiXGEiID0+ICdcYScsICAgIyBhbGFybSAoYmVsbCkgICAoQkVMKQotCQkiXGUiID0+ICdcZScsICAgIyBlc2NhcGUgICAgICAgICAoRVNDKQotCQkiXDAxMyIgPT4gJ1x2JywgIyB2ZXJ0aWNhbCB0YWIgICAoVlQpCi0JCSJcMDAwIiA9PiAnXDAnLCAjIG51bCBjaGFyYWN0ZXIgIChOVUwpCisJCSJcdCIgPT4gJ1x0JywgICAjIHRhYiAgICAgICAgICAgICAoSFQpCisJCSJcbiIgPT4gJ1xuJywgICAjIGxpbmUgZmVlZCAgICAgICAoTEYpCisJCSJcciIgPT4gJ1xyJywgICAjIGNhcnJpYWdlIHJldHVybiAoQ1IpCisJCSJcZiIgPT4gJ1xmJywgICAjIGZvcm0gZmVlZCAgICAgICAoRkYpCisJCSJcYiIgPT4gJ1xiJywgICAjIGJhY2tzcGFjZSAgICAgICAoQlMpCisJCSJcYSIgPT4gJ1xhJywgICAjIGFsYXJtIChiZWxsKSAgICAoQkVMKQorCQkiXGUiID0+ICdcZScsICAgIyBlc2NhcGUgICAgICAgICAgKEVTQykKKwkJIlwwMTMiID0+ICdcdicsICMgdmVydGljYWwgdGFiICAgIChWVCkKKwkJIlwwMDAiID0+ICdcMCcsICMgbnVsIGNoYXJhY3RlciAgIChOVUwpCiAJKTsKIAlteSAkY2hyID0gKCAoZXhpc3RzICRlc3skY250cmx9KQogCQkgICAgPyAkZXN7JGNudHJsfQpAQCAtMjAyOCw2ICsyMDYwLDkgQEAKIHN1YiBmb3JtYXRfbG9nX2xpbmVfaHRtbCB7CiAJbXkgJGxpbmUgPSBzaGlmdDsKIAorCSMgUG90ZW50aWFsbHkgYWJicmV2aWF0ZWQgT0lELgorCW15ICRyZWdleCA9IG9pZF9ubGVuX3JlZ2V4KCI3LDY0Iik7CisKIAkkbGluZSA9IGVzY19odG1sKCRsaW5lLCAtbmJzcD0+MSk7CiAJJGxpbmUgPX4gc3sKICAgICAgICAgXGIKQEAgLTIwMzcsMTAgKzIwNzIsMTAgQEAKICAgICAgICAgICAgICg/PCEtKSAjIHNlZSBzdHJidWZfY2hlY2tfdGFnX3JlZigpLiBUYWdzIGNhbid0IHN0YXJ0IHdpdGggLQogICAgICAgICAgICAgW0EtWmEtejAtOS4tXSsKICAgICAgICAgICAgICg/IVwuKSAjIHJlZnMgY2FuJ3QgZW5kIHdpdGggIi4iLCBzZWUgY2hlY2tfcmVmbmFtZV9mb3JtYXQoKQotICAgICAgICAgICAgLWdbMC05YS1mQS1GXXs3LDQwfQorICAgICAgICAgICAgLWckcmVnZXgKICAgICAgICAgICAgIHwKICAgICAgICAgICAgICMgSnVzdCBhIG5vcm1hbCBsb29raW5nIEdpdCBTSEExCi0gICAgICAgICAgICBbMC05YS1mQS1GXXs3LDQwfQorCSAgICAkcmVnZXgKICAgICAgICAgKQogICAgICAgICBcYgogICAgIH17CkBAIC0yMjg2LDcgKzIzMjEsOCBAQAogCQkgICAgICAgICAnKTwvc3Bhbj4nOwogCX0KIAkjIG1hdGNoIDxoYXNoPgotCWlmICgkbGluZSA9fiBtL15pbmRleCBbMC05YS1mQS1GXXs0MH0sWzAtOWEtZkEtRl17NDB9LykgeworCWlmICgkbGluZSA9fiBvaWRfbmxlbl9wcmVmaXhfaW5maXhfcmVnZXgoJHNoYTFfbGVuLCAiaW5kZXggIiwgIiwiKSB8CisJICAgICRsaW5lID1+IG9pZF9ubGVuX3ByZWZpeF9pbmZpeF9yZWdleCgkc2hhMjU2X2xlbiwgImluZGV4ICIsICIsIikpIHsKIAkJIyBjYW4gbWF0Y2ggb25seSBmb3IgY29tYmluZWQgZGlmZgogCQkkbGluZSA9ICdpbmRleCAnOwogCQlmb3IgKG15ICRpID0gMDsgJGkgPCAkZGlmZmluZm8tPnsnbnBhcmVudHMnfTsgJGkrKykgewpAQCAtMjMwOCw3ICsyMzQ0LDggQEAKIAkJCSRsaW5lIC49ICcwJyB4IDc7CiAJCX0KIAotCX0gZWxzaWYgKCRsaW5lID1+IG0vXmluZGV4IFswLTlhLWZBLUZdezQwfS4uWzAtOWEtZkEtRl17NDB9LykgeworCX0gZWxzaWYgKCRsaW5lID1+IG9pZF9ubGVuX3ByZWZpeF9pbmZpeF9yZWdleCgkc2hhMV9sZW4sICJpbmRleCAiLCAiLi4iKSB8CisJCSAkbGluZSA9fiBvaWRfbmxlbl9wcmVmaXhfaW5maXhfcmVnZXgoJHNoYTI1Nl9sZW4sICJpbmRleCAiLCAiLi4iKSkgewogCQkjIGNhbiBtYXRjaCBvbmx5IGZvciBvcmRpbmFyeSBkaWZmCiAJCW15ICgkZnJvbV9saW5rLCAkdG9fbGluayk7CiAJCWlmICgkZnJvbS0+eydocmVmJ30pIHsKQEAgLTI4MzQsNyArMjg3MSw3IEBACiAJfQogCiAJIycxMDA2NDQgYmxvYiAwZmEzZjNhNjZmYjZhMTM3ZjZlYzJjMTkzNTFlZDRkODA3MDcwZmZhCXBhbmljLmMnCi0JJGxpbmUgPX4gbS9eKFswLTldKykgKC4rKSAoWzAtOWEtZkEtRl17NDB9KVx0LzsKKwkkbGluZSA9fiBtL14oWzAtOV0rKSAoLispICgkb2lkX3JlZ2V4KVx0LzsKIAlpZiAoZGVmaW5lZCAkdHlwZSAmJiAkdHlwZSBuZSAkMikgewogCQkjIHR5cGUgZG9lc24ndCBtYXRjaAogCQlyZXR1cm4gdW5kZWY7CkBAIC0zMzMzLDcgKzMzNzAsNyBAQAogCiAJd2hpbGUgKG15ICRsaW5lID0gPCRmZD4pIHsKIAkJY2hvbXAgJGxpbmU7Ci0JCWlmICgkbGluZSA9fiBtIV4oWzAtOWEtZkEtRl17NDB9KVxzcmVmcy8oJHR5cGUuKikkISkgeworCQlpZiAoJGxpbmUgPX4gbSFeKCRvaWRfcmVnZXgpXHNyZWZzLygkdHlwZS4qKSQhKSB7CiAJCQlpZiAoZGVmaW5lZCAkcmVmc3skMX0pIHsKIAkJCQlwdXNoIEB7JHJlZnN7JDF9fSwgJDI7CiAJCQl9IGVsc2UgewpAQCAtMzQwNyw3ICszNDQ0LDcgQEAKIAkkdGFneydpZCd9ID0gJHRhZ19pZDsKIAl3aGlsZSAobXkgJGxpbmUgPSA8JGZkPikgewogCQljaG9tcCAkbGluZTsKLQkJaWYgKCRsaW5lID1+IG0vXm9iamVjdCAoWzAtOWEtZkEtRl17NDB9KSQvKSB7CisJCWlmICgkbGluZSA9fiBtL15vYmplY3QgKCRvaWRfcmVnZXgpJC8pIHsKIAkJCSR0YWd7J29iamVjdCd9ID0gJDE7CiAJCX0gZWxzaWYgKCRsaW5lID1+IG0vXnR5cGUgKC4rKSQvKSB7CiAJCQkkdGFneyd0eXBlJ30gPSAkMTsKQEAgLTM0NTEsMTUgKzM0ODgsMTUgQEAKIAl9CiAKIAlteSAkaGVhZGVyID0gc2hpZnQgQGNvbW1pdF9saW5lczsKLQlpZiAoJGhlYWRlciAhfiBtL15bMC05YS1mQS1GXXs0MH0vKSB7CisJaWYgKCRoZWFkZXIgIX4gbS9eJG9pZF9yZWdleC8pIHsKIAkJcmV0dXJuOwogCX0KIAkoJGNveydpZCd9LCBteSBAcGFyZW50cykgPSBzcGxpdCAnICcsICRoZWFkZXI7CiAJd2hpbGUgKG15ICRsaW5lID0gc2hpZnQgQGNvbW1pdF9saW5lcykgewogCQlsYXN0IGlmICRsaW5lIGVxICJcbiI7Ci0JCWlmICgkbGluZSA9fiBtL150cmVlIChbMC05YS1mQS1GXXs0MH0pJC8pIHsKKwkJaWYgKCRsaW5lID1+IG0vXnRyZWUgKCRvaWRfcmVnZXgpJC8pIHsKIAkJCSRjb3sndHJlZSd9ID0gJDE7Ci0JCX0gZWxzaWYgKCghZGVmaW5lZCAkd2l0aHBhcmVudHMpICYmICgkbGluZSA9fiBtL15wYXJlbnQgKFswLTlhLWZBLUZdezQwfSkkLykpIHsKKwkJfSBlbHNpZiAoKCFkZWZpbmVkICR3aXRocGFyZW50cykgJiYgKCRsaW5lID1+IG0vXnBhcmVudCAoJG9pZF9yZWdleCkkLykpIHsKIAkJCXB1c2ggQHBhcmVudHMsICQxOwogCQl9IGVsc2lmICgkbGluZSA9fiBtL15hdXRob3IgKC4qKSAoWzAtOV0rKSAoLiopJC8pIHsKIAkJCSRjb3snYXV0aG9yJ30gPSB0b191dGY4KCQxKTsKQEAgLTM1OTEsNyArMzYyOCw3IEBACiAKIAkjICc6MTAwNjQ0IDEwMDY0NCAwM2IyMTgyNjBlOTliNzhjNmRmMGVkMzc4ZTU5ZWQ5MjA1Y2NjOTZkIDNiOTNkNWU3Y2M3ZjdkZDRlYmVkMTNhNWNjMWE0YWQ5NzZmYzk0ZDggTQlscy1maWxlcy5jJwogCSMgJzoxMDA2NDQgMTAwNjQ0IDdmOTI4MTk4NTA4Njk3MWQzODc3YWNhMjc3MDRmMmFhZjljNDQ4Y2UgYmMxOTBlYmM3MWJiZDkyM2YyYjcyOGU1MDU0MDhmNWU1NGJkMDczYSBNCXJldi10cmVlLmMnCi0JaWYgKCRsaW5lID1+IG0vXjooWzAtN117Nn0pIChbMC03XXs2fSkgKFswLTlhLWZBLUZdezQwfSkgKFswLTlhLWZBLUZdezQwfSkgKC4pKFswLTldezAsM30pXHQoLiopJC8pIHsKKwlpZiAoJGxpbmUgPX4gbS9eOihbMC03XXs2fSkgKFswLTddezZ9KSAoJG9pZF9yZWdleCkgKCRvaWRfcmVnZXgpICguKShbMC05XXswLDN9KVx0KC4qKSQvKSB7CiAJCSRyZXN7J2Zyb21fbW9kZSd9ID0gJDE7CiAJCSRyZXN7J3RvX21vZGUnfSA9ICQyOwogCQkkcmVzeydmcm9tX2lkJ30gPSAkMzsKQEAgLTM2MDYsNyArMzY0Myw3IEBACiAJfQogCSMgJzo6MTAwNzU1IDEwMDc1NSAxMDA3NTUgNjBlNzljYTFiMDFiYzhiMDU3YWJlMTdkZGFiNDg0Njk5YTdmNWZkYiA5NDA2N2NjNWY3MzM4OGYzMzcyMmQ1MmFlMDJmNDQ2OTJiYzA3NDkwIDk0MDY3Y2M1ZjczMzg4ZjMzNzIyZDUyYWUwMmY0NDY5MmJjMDc0OTAgTVIJZ2l0LWd1aS9naXQtZ3VpLnNoJwogCSMgY29tYmluZWQgZGlmZiAoZm9yIG1lcmdlIGNvbW1pdCkKLQllbHNpZiAoJGxpbmUgPX4gcy9eKDo6KykoKD86WzAtN117Nn0gKSspKCg/OlswLTlhLWZBLUZdezQwfSApKykoW2EtekEtWl0rKVx0KC4qKSQvLykgeworCWVsc2lmICgkbGluZSA9fiBzL14oOjorKSgoPzpbMC03XXs2fSApKykoKD86JG9pZF9yZWdleCApKykoW2EtekEtWl0rKVx0KC4qKSQvLykgewogCQkkcmVzeyducGFyZW50cyd9ICA9IGxlbmd0aCgkMSk7CiAJCSRyZXN7J2Zyb21fbW9kZSd9ID0gWyBzcGxpdCgnICcsICQyKSBdOwogCQkkcmVzeyd0b19tb2RlJ30gPSBwb3AgQHskcmVzeydmcm9tX21vZGUnfX07CkBAIC0zNjE2LDcgKzM2NTMsNyBAQAogCQkkcmVzeyd0b19maWxlJ30gPSB1bnF1b3RlKCQ1KTsKIAl9CiAJIyAnYzUxMmI1MjM0NzI0ODVhZWY0ZmZmOWU1N2IyMjlkOWQyNDNjOTY3ZicKLQllbHNpZiAoJGxpbmUgPX4gbS9eKFswLTlhLWZBLUZdezQwfSkkLykgeworCWVsc2lmICgkbGluZSA9fiBtL14oJG9pZF9yZWdleCkkLykgewogCQkkcmVzeydjb21taXQnfSA9ICQxOwogCX0KIApAQCAtMzY0NCw3ICszNjgxLDcgQEAKIAogCWlmICgkb3B0c3snLWwnfSkgewogCQkjJzEwMDY0NCBibG9iIDBmYTNmM2E2NmZiNmExMzdmNmVjMmMxOTM1MWVkNGQ4MDcwNzBmZmEgICAxNjcxNwlwYW5pYy5jJwotCQkkbGluZSA9fiBtL14oWzAtOV0rKSAoLispIChbMC05YS1mQS1GXXs0MH0pICsoLXxbMC05XSspXHQoLispJC9zOworCQkkbGluZSA9fiBtL14oWzAtOV0rKSAoLispICgkb2lkX3JlZ2V4KSArKC18WzAtOV0rKVx0KC4rKSQvczsKIAogCQkkcmVzeydtb2RlJ30gPSAkMTsKIAkJJHJlc3sndHlwZSd9ID0gJDI7CkBAIC0zNjU3LDcgKzM2OTQsNyBAQAogCQl9CiAJfSBlbHNlIHsKIAkJIycxMDA2NDQgYmxvYiAwZmEzZjNhNjZmYjZhMTM3ZjZlYzJjMTkzNTFlZDRkODA3MDcwZmZhCXBhbmljLmMnCi0JCSRsaW5lID1+IG0vXihbMC05XSspICguKykgKFswLTlhLWZBLUZdezQwfSlcdCguKykkL3M7CisJCSRsaW5lID1+IG0vXihbMC05XSspICguKykgKCRvaWRfcmVnZXgpXHQoLispJC9zOwogCiAJCSRyZXN7J21vZGUnfSA9ICQxOwogCQkkcmVzeyd0eXBlJ30gPSAkMjsKQEAgLTQwMTEsNyArNDA0OCw3IEBACiAKIAkJCSRocmVmX3BhcmFtc3snZXh0cmFfb3B0aW9ucyd9ID0gdW5kZWY7CiAJCQkkaHJlZl9wYXJhbXN7J2FjdGlvbid9ID0gJHR5cGU7Ci0JCQkkbGlua19hdHRyeyctaHJlZid9ID0gaHJlZiglaHJlZl9wYXJhbXMpOworCQkJJGxpbmtfYXR0cnsnLWhyZWYnfSA9IGVzY19hdHRyKGhyZWYoJWhyZWZfcGFyYW1zKSk7CiAJCQlwcmludCAiPGxpbmsgIi4KIAkJCSAgICAgICJyZWw9XCIkbGlua19hdHRyeyctcmVsJ31cIiAiLgogCQkJICAgICAgInRpdGxlPVwiJGxpbmtfYXR0cnsnLXRpdGxlJ31cIiAiLgpAQCAtNDAyMCw3ICs0MDU3LDcgQEAKIAkJCSAgICAgICIvPlxuIjsKIAogCQkJJGhyZWZfcGFyYW1zeydleHRyYV9vcHRpb25zJ30gPSAnLS1uby1tZXJnZXMnOwotCQkJJGxpbmtfYXR0cnsnLWhyZWYnfSA9IGhyZWYoJWhyZWZfcGFyYW1zKTsKKwkJCSRsaW5rX2F0dHJ7Jy1ocmVmJ30gPSBlc2NfYXR0cihocmVmKCVocmVmX3BhcmFtcykpOwogCQkJJGxpbmtfYXR0cnsnLXRpdGxlJ30gLj0gJyAobm8gbWVyZ2VzKSc7CiAJCQlwcmludCAiPGxpbmsgIi4KIAkJCSAgICAgICJyZWw9XCIkbGlua19hdHRyeyctcmVsJ31cIiAiLgpAQCAtNDAzMywxMCArNDA3MCwxMiBAQAogCX0gZWxzZSB7CiAJCXByaW50ZignPGxpbmsgcmVsPSJhbHRlcm5hdGUiIHRpdGxlPSIlcyBwcm9qZWN0cyBsaXN0IiAnLgogCQkgICAgICAgJ2hyZWY9IiVzIiB0eXBlPSJ0ZXh0L3BsYWluOyBjaGFyc2V0PXV0Zi04IiAvPicuIlxuIiwKLQkJICAgICAgIGVzY19hdHRyKCRzaXRlX25hbWUpLCBocmVmKHByb2plY3Q9PnVuZGVmLCBhY3Rpb249PiJwcm9qZWN0X2luZGV4IikpOworCQkgICAgICAgZXNjX2F0dHIoJHNpdGVfbmFtZSksCisJCSAgICAgICBlc2NfYXR0cihocmVmKHByb2plY3Q9PnVuZGVmLCBhY3Rpb249PiJwcm9qZWN0X2luZGV4IikpKTsKIAkJcHJpbnRmKCc8bGluayByZWw9ImFsdGVybmF0ZSIgdGl0bGU9IiVzIHByb2plY3RzIGZlZWRzIiAnLgogCQkgICAgICAgJ2hyZWY9IiVzIiB0eXBlPSJ0ZXh0L3gtb3BtbCIgLz4nLiJcbiIsCi0JCSAgICAgICBlc2NfYXR0cigkc2l0ZV9uYW1lKSwgaHJlZihwcm9qZWN0PT51bmRlZiwgYWN0aW9uPT4ib3BtbCIpKTsKKwkJICAgICAgIGVzY19hdHRyKCRzaXRlX25hbWUpLAorCQkgICAgICAgZXNjX2F0dHIoaHJlZihwcm9qZWN0PT51bmRlZiwgYWN0aW9uPT4ib3BtbCIpKSk7CiAJfQogfQogCkBAIC00MjUwLDggKzQyODksOCBAQAogCWlmIChkZWZpbmVkICRhY3Rpb24gJiYKIAkgICAgJGFjdGlvbiBlcSAnYmxhbWVfaW5jcmVtZW50YWwnKSB7CiAJCXByaW50IHFxITxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5cbiEuCi0JCSAgICAgIHFxIXN0YXJ0QmxhbWUoIiEuIGhyZWYoYWN0aW9uPT4iYmxhbWVfZGF0YSIsIC1yZXBsYXk9PjEpIC5xcSEiLFxuIS4KLQkJICAgICAgcXEhICAgICAgICAgICAiIS4gaHJlZigpIC5xcSEiKTtcbiEuCisJCSAgICAgIHFxIXN0YXJ0QmxhbWUoIiEuIGVzY19hdHRyKGhyZWYoYWN0aW9uPT4iYmxhbWVfZGF0YSIsIC1yZXBsYXk9PjEpKSAucXEhIixcbiEuCisJCSAgICAgIHFxISAgICAgICAgICAgIiEuIGVzY19hdHRyKGhyZWYoKSkgLnFxISIpO1xuIS4KIAkJICAgICAgcXEhPC9zY3JpcHQ+XG4hOwogCX0gZWxzZSB7CiAJCW15ICgkanN0aW1lem9uZSwgJHR6X2Nvb2tpZSwgJGRhdGV0aW1lX2NsYXNzKSA9CkBAIC00Nzk5LDcgKzQ4MzgsNyBAQAogc3ViIGlzX2RlbGV0ZWQgewogCW15ICRkaWZmaW5mbyA9IHNoaWZ0OwogCi0JcmV0dXJuICRkaWZmaW5mby0+eyd0b19pZCd9IGVxICgnMCcgeCA0MCk7CisJcmV0dXJuICRkaWZmaW5mby0+eyd0b19pZCd9IGVxICgnMCcgeCA0MCkgfHwgJGRpZmZpbmZvLT57J3RvX2lkJ30gZXEgKCcwJyB4IDY0KTsKIH0KIAogIyBkb2VzIHBhdGNoIGNvcnJlc3BvbmQgdG8gW3ByZXZpb3VzXSBkaWZmdHJlZSByYXcgbGluZQpAQCAtNTI0Niw3ICs1Mjg1LDcgQEAKIAkJIyAgICArIGMKIAkJIyAgICsgIGQKIAkJIwotCQkjIE90aGVyd2lzZSB0aGUgaGlnaGxpZ2h0bGluZyB3b3VsZCBiZSBjb25mdXNpbmcuCisJCSMgT3RoZXJ3aXNlIHRoZSBoaWdobGlnaHRpbmcgd291bGQgYmUgY29uZnVzaW5nLgogCQlpZiAoJGlzX2NvbWJpbmVkKSB7CiAJCQlmb3IgKG15ICRpID0gMDsgJGkgPCBAJGFkZDsgJGkrKykgewogCQkJCW15ICRwcmVmaXhfcmVtID0gc3Vic3RyKCRyZW0tPlskaV0sIDAsICRudW1fcGFyZW50cyk7CkBAIC02Mjg1LDcgKzYzMjQsNyBAQAogCQkJICAgICAgICAgICAgICAtY2xhc3MgPT4gImxpc3Qgc3ViamVjdCJ9LAogCQkJICAgICAgICAgICAgICBjaG9wX2FuZF9lc2NhcGVfc3RyKCRjb3sndGl0bGUnfSwgNTApIC4gIjxici8+Iik7CiAJCX0gZWxzaWYgKGRlZmluZWQgJHNldHsndG9faWQnfSkgewotCQkJbmV4dCBpZiAoJHNldHsndG9faWQnfSA9fiBtL14wezQwfSQvKTsKKwkJCW5leHQgaWYgaXNfZGVsZXRlZChcJXNldCk7CiAKIAkJCXByaW50ICRjZ2ktPmEoey1ocmVmID0+IGhyZWYoYWN0aW9uPT4iYmxvYiIsIGhhc2hfYmFzZT0+JGNveydpZCd9LAogCQkJICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNoPT4kc2V0eyd0b19pZCd9LCBmaWxlX25hbWU9PiRzZXR7J3RvX2ZpbGUnfSksCkBAIC02ODI5LDcgKzY4NjgsNyBAQAogCQkJIyB0aGUgaGVhZGVyOiA8U0hBLTE+IDxzcmMgbGluZW5vPiA8ZHN0IGxpbmVubz4gWzxsaW5lcyBpbiBncm91cD5dCiAJCQkjIG5vIDxsaW5lcyBpbiBncm91cD4gZm9yIHN1YnNlcXVlbnQgbGluZXMgaW4gZ3JvdXAgb2YgbGluZXMKIAkJCW15ICgkZnVsbF9yZXYsICRvcmlnX2xpbmVubywgJGxpbmVubywgJGdyb3VwX3NpemUpID0KLQkJCSAgICgkbGluZSA9fiAvXihbMC05YS1mXXs0MH0pIChcZCspIChcZCspKD86IChcZCspKT8kLyk7CisJCQkgICAoJGxpbmUgPX4gL14oJG9pZF9yZWdleCkgKFxkKykgKFxkKykoPzogKFxkKykpPyQvKTsKIAkJCWlmICghZXhpc3RzICRtZXRhaW5mb3skZnVsbF9yZXZ9KSB7CiAJCQkJJG1ldGFpbmZveyRmdWxsX3Jldn0gPSB7ICducHJldmlvdXMnID0+IDAgfTsKIAkJCX0KQEAgLTY4NzksNyArNjkxOCw3IEBACiAJCQl9CiAJCQkjICdwcmV2aW91cycgPHNoYTEgb2YgcGFyZW50IGNvbW1pdD4gPGZpbGVuYW1lIGF0IGNvbW1pdD4KIAkJCWlmIChleGlzdHMgJG1ldGEtPnsncHJldmlvdXMnfSAmJgotCQkJICAgICRtZXRhLT57J3ByZXZpb3VzJ30gPX4gL14oW2EtZkEtRjAtOV17NDB9KSAoLiopJC8pIHsKKwkJCSAgICAkbWV0YS0+eydwcmV2aW91cyd9ID1+IC9eKCRvaWRfcmVnZXgpICguKikkLykgewogCQkJCSRtZXRhLT57J3BhcmVudCd9ID0gJDE7CiAJCQkJJG1ldGEtPnsnZmlsZV9wYXJlbnQnfSA9IHVucXVvdGUoJDIpOwogCQkJfQpAQCAtNjk5Niw3ICs3MDM1LDcgQEAKIAkJfSBlbHNlIHsKIAkJCWRpZV9lcnJvcig0MDAsICJObyBmaWxlIG5hbWUgZGVmaW5lZCIpOwogCQl9Ci0JfSBlbHNpZiAoJGhhc2ggPX4gbS9eWzAtOWEtZkEtRl17NDB9JC8pIHsKKwl9IGVsc2lmICgkaGFzaCA9fiBtL14kb2lkX3JlZ2V4JC8pIHsKIAkJIyBibG9icyBkZWZpbmVkIGJ5IG5vbi10ZXh0dWFsIGhhc2ggaWQncyBjYW4gYmUgY2FjaGVkCiAJCSRleHBpcmVzID0gIisxZCI7CiAJfQpAQCAtNzA1Nyw3ICs3MDk2LDcgQEAKIAkJfSBlbHNlIHsKIAkJCWRpZV9lcnJvcig0MDAsICJObyBmaWxlIG5hbWUgZGVmaW5lZCIpOwogCQl9Ci0JfSBlbHNpZiAoJGhhc2ggPX4gbS9eWzAtOWEtZkEtRl17NDB9JC8pIHsKKwl9IGVsc2lmICgkaGFzaCA9fiBtL14kb2lkX3JlZ2V4JC8pIHsKIAkJIyBibG9icyBkZWZpbmVkIGJ5IG5vbi10ZXh0dWFsIGhhc2ggaWQncyBjYW4gYmUgY2FjaGVkCiAJCSRleHBpcmVzID0gIisxZCI7CiAJfQpAQCAtNzExOCw4ICs3MTU3LDggQEAKIAkJCXByaW50IHFxISBhbHQ9IiEuZXNjX2F0dHIoJGZpbGVfbmFtZSkucXEhIiB0aXRsZT0iIS5lc2NfYXR0cigkZmlsZV9uYW1lKS5xcSEiITsKIAkJfQogCQlwcmludCBxcSEgc3JjPSIhIC4KLQkJICAgICAgaHJlZihhY3Rpb249PiJibG9iX3BsYWluIiwgaGFzaD0+JGhhc2gsCi0JCSAgICAgICAgICAgaGFzaF9iYXNlPT4kaGFzaF9iYXNlLCBmaWxlX25hbWU9PiRmaWxlX25hbWUpIC4KKwkJICAgICAgZXNjX2F0dHIoaHJlZihhY3Rpb249PiJibG9iX3BsYWluIiwgaGFzaD0+JGhhc2gsCisJCSAgICAgICAgICAgaGFzaF9iYXNlPT4kaGFzaF9iYXNlLCBmaWxlX25hbWU9PiRmaWxlX25hbWUpKSAuCiAJCSAgICAgIHFxISIgLz5cbiE7CiAJfSBlbHNlIHsKIAkJbXkgJG5yOwpAQCAtNzUxNSw3ICs3NTU0LDcgQEAKIAogCSMgbm9uLXRleHR1YWwgaGFzaCBpZCdzIGNhbiBiZSBjYWNoZWQKIAlteSAkZXhwaXJlczsKLQlpZiAoJGhhc2ggPX4gbS9eWzAtOWEtZkEtRl17NDB9JC8pIHsKKwlpZiAoJGhhc2ggPX4gbS9eJG9pZF9yZWdleCQvKSB7CiAJCSRleHBpcmVzID0gIisxZCI7CiAJfQogCW15ICRyZWZzID0gZ2l0X2dldF9yZWZlcmVuY2VzKCk7CkBAIC03NjA5LDcgKzc2NDgsNyBAQAogCQljbG9zZSAkZmQ7CiAKIAkJIycxMDA2NDQgYmxvYiAwZmEzZjNhNjZmYjZhMTM3ZjZlYzJjMTkzNTFlZDRkODA3MDcwZmZhCXBhbmljLmMnCi0JCXVubGVzcyAoJGxpbmUgJiYgJGxpbmUgPX4gbS9eKFswLTldKykgKC4rKSAoWzAtOWEtZkEtRl17NDB9KVx0LykgeworCQl1bmxlc3MgKCRsaW5lICYmICRsaW5lID1+IG0vXihbMC05XSspICguKykgKCRvaWRfcmVnZXgpXHQvKSB7CiAJCQlkaWVfZXJyb3IoNDA0LCAiRmlsZSBvciBkaXJlY3RvcnkgZm9yIGdpdmVuIGJhc2UgZG9lcyBub3QgZXhpc3QiKTsKIAkJfQogCQkkdHlwZSA9ICQyOwpAQCAtNzY0OSw3ICs3Njg4LDcgQEAKIAkJCQlvciBkaWVfZXJyb3IoNDA0LCAiQmxvYiBkaWZmIG5vdCBmb3VuZCIpOwogCiAJCX0gZWxzaWYgKGRlZmluZWQgJGhhc2ggJiYKLQkJICAgICAgICAgJGhhc2ggPX4gL1swLTlhLWZBLUZdezQwfS8pIHsKKwkJICAgICAgICAgJGhhc2ggPX4gJG9pZF9yZWdleCkgewogCQkJIyB0cnkgdG8gZmluZCBmaWxlbmFtZSBmcm9tICRoYXNoCiAKIAkJCSMgcmVhZCBmaWx0ZXJlZCByYXcgb3V0cHV0CkBAIC03NjU5LDcgKzc2OTgsNyBAQAogCQkJQGRpZmZ0cmVlID0KIAkJCQkjICc6MTAwNjQ0IDEwMDY0NCAwM2IyMTgyNi4uLiAzYjkzZDVlNy4uLiBNCWxzLWZpbGVzLmMnCiAJCQkJIyAkaGFzaCA9PSB0b19pZAotCQkJCWdyZXAgeyAvXjpbMC03XXs2fSBbMC03XXs2fSBbMC05YS1mQS1GXXs0MH0gJGhhc2gvIH0KKwkJCQlncmVwIHsgL146WzAtN117Nn0gWzAtN117Nn0gJG9pZF9yZWdleCAkaGFzaC8gfQogCQkJCW1hcCB7IGNob21wOyAkXyB9IDwkZmQ+OwogCQkJY2xvc2UgJGZkCiAJCQkJb3IgZGllX2Vycm9yKDQwNCwgIlJlYWRpbmcgZ2l0LWRpZmYtdHJlZSBmYWlsZWQiKTsKQEAgLTc2ODIsOCArNzcyMSw4IEBACiAJCSRoYXNoICAgICAgICB8fD0gJGRpZmZpbmZveyd0b19pZCd9OwogCiAJCSMgbm9uLXRleHR1YWwgaGFzaCBpZCdzIGNhbiBiZSBjYWNoZWQKLQkJaWYgKCRoYXNoX2Jhc2UgPX4gbS9eWzAtOWEtZkEtRl17NDB9JC8gJiYKLQkJICAgICRoYXNoX3BhcmVudF9iYXNlID1+IG0vXlswLTlhLWZBLUZdezQwfSQvKSB7CisJCWlmICgkaGFzaF9iYXNlID1+IG0vXiRvaWRfcmVnZXgkLyAmJgorCQkgICAgJGhhc2hfcGFyZW50X2Jhc2UgPX4gbS9eJG9pZF9yZWdleCQvKSB7CiAJCQkkZXhwaXJlcyA9ICcrMWQnOwogCQl9CiAKQEAgLTc4MTksNyArNzg1OCw3IEBACiAJCSAgICAkaGFzaF9wYXJlbnQgbmUgJy1jJyAmJiAkaGFzaF9wYXJlbnQgbmUgJy0tY2MnKSB7CiAJCQkjIGNvbW1pdGRpZmYgd2l0aCB0d28gY29tbWl0cyBnaXZlbgogCQkJbXkgJGhhc2hfcGFyZW50X3Nob3J0ID0gJGhhc2hfcGFyZW50OwotCQkJaWYgKCRoYXNoX3BhcmVudCA9fiBtL15bMC05YS1mQS1GXXs0MH0kLykgeworCQkJaWYgKCRoYXNoX3BhcmVudCA9fiBtL14kb2lkX3JlZ2V4JC8pIHsKIAkJCQkkaGFzaF9wYXJlbnRfc2hvcnQgPSBzdWJzdHIoJGhhc2hfcGFyZW50LCAwLCA3KTsKIAkJCX0KIAkJCSRmb3JtYXRzX25hdiAuPQpAQCAtNzkyOCw3ICs3OTY3LDcgQEAKIAogCSMgbm9uLXRleHR1YWwgaGFzaCBpZCdzIGNhbiBiZSBjYWNoZWQKIAlteSAkZXhwaXJlczsKLQlpZiAoJGhhc2ggPX4gbS9eWzAtOWEtZkEtRl17NDB9JC8pIHsKKwlpZiAoJGhhc2ggPX4gbS9eJG9pZF9yZWdleCQvKSB7CiAJCSRleHBpcmVzID0gIisxZCI7CiAJfQogCkBAIC04MjAyLDYgKzgyNDEsNyBAQAogCX0gZWxzZSB7CiAJCSRhbHRfdXJsID0gaHJlZigtZnVsbD0+MSwgYWN0aW9uPT4ic3VtbWFyeSIpOwogCX0KKwkkYWx0X3VybCA9IGVzY19hdHRyKCRhbHRfdXJsKTsKIAlwcmludCBxcSE8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJ1dGYtOCI/PlxuITsKIAlpZiAoJGZvcm1hdCBlcSAncnNzJykgewogCQlwcmludCA8PFhNTDsKQEAgLTgyMzksNyArODI3OSw3IEBACiAJCSAgICAgICRhbHRfdXJsIC4gJyIgLz4nIC4gIlxuIiAuCiAJCSAgICAgICc8bGluayByZWw9InNlbGYiIHR5cGU9IicgLiAkY29udGVudF90eXBlIC4gJyIgaHJlZj0iJyAuCiAJCSAgICAgICRjZ2ktPnNlbGZfdXJsKCkgLiAnIiAvPicgLiAiXG4iIC4KLQkJICAgICAgIjxpZD4iIC4gaHJlZigtZnVsbD0+MSkgLiAiPC9pZD5cbiIgLgorCQkgICAgICAiPGlkPiIgLiBlc2NfdXJsKGhyZWYoLWZ1bGw9PjEpKSAuICI8L2lkPlxuIiAuCiAJCSAgICAgICMgdXNlIHByb2plY3Qgb3duZXIgZm9yIGZlZWQgYXV0aG9yCiAJCSAgICAgICI8YXV0aG9yPjxuYW1lPiRvd25lcjwvbmFtZT48L2F1dGhvcj5cbiI7CiAJCWlmIChkZWZpbmVkICRmYXZpY29uKSB7CkBAIC04Mjg1LDcgKzgzMjUsNyBAQAogCQkJICAgICAgIjxhdXRob3I+IiAuIGVzY19odG1sKCRjb3snYXV0aG9yJ30pIC4gIjwvYXV0aG9yPlxuIiAuCiAJCQkgICAgICAiPHB1YkRhdGU+JGNkeydyZmMyODIyJ308L3B1YkRhdGU+XG4iIC4KIAkJCSAgICAgICI8Z3VpZCBpc1Blcm1hTGluaz1cInRydWVcIj4kY29fdXJsPC9ndWlkPlxuIiAuCi0JCQkgICAgICAiPGxpbms+JGNvX3VybDwvbGluaz5cbiIgLgorCQkJICAgICAgIjxsaW5rPiIgLiBlc2NfaHRtbCgkY29fdXJsKSAuICI8L2xpbms+XG4iIC4KIAkJCSAgICAgICI8ZGVzY3JpcHRpb24+IiAuIGVzY19odG1sKCRjb3sndGl0bGUnfSkgLiAiPC9kZXNjcmlwdGlvbj5cbiIgLgogCQkJICAgICAgIjxjb250ZW50OmVuY29kZWQ+IiAuCiAJCQkgICAgICAiPCFbQ0RBVEFbXG4iOwpAQCAtODMwNyw4ICs4MzQ3LDggQEAKIAkJCX0KIAkJCXByaW50ICI8L2NvbnRyaWJ1dG9yPlxuIiAuCiAJCQkgICAgICAiPHB1Ymxpc2hlZD4kY2R7J2lzby04NjAxJ308L3B1Ymxpc2hlZD5cbiIgLgotCQkJICAgICAgIjxsaW5rIHJlbD1cImFsdGVybmF0ZVwiIHR5cGU9XCJ0ZXh0L2h0bWxcIiBocmVmPVwiJGNvX3VybFwiIC8+XG4iIC4KLQkJCSAgICAgICI8aWQ+JGNvX3VybDwvaWQ+XG4iIC4KKwkJCSAgICAgICI8bGluayByZWw9XCJhbHRlcm5hdGVcIiB0eXBlPVwidGV4dC9odG1sXCIgaHJlZj1cIiIgLiBlc2NfYXR0cigkY29fdXJsKSAuICJcIiAvPlxuIiAuCisJCQkgICAgICAiPGlkPiIgLiBlc2NfaHRtbCgkY29fdXJsKSAuICI8L2lkPlxuIiAuCiAJCQkgICAgICAiPGNvbnRlbnQgdHlwZT1cInhodG1sXCIgeG1sOmJhc2U9XCIiIC4gZXNjX3VybCgkbXlfdXJsKSAuICJcIj5cbiIgLgogCQkJICAgICAgIjxkaXYgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sXCI+XG4iOwogCQl9CkBAIC04NDE1LDggKzg0NTUsOCBAQAogCQl9CiAKIAkJbXkgJHBhdGggPSBlc2NfaHRtbChjaG9wX3N0cigkcHJvansncGF0aCd9LCAyNSwgNSkpOwotCQlteSAkcnNzICA9IGhyZWYoJ3Byb2plY3QnID0+ICRwcm9qeydwYXRoJ30sICdhY3Rpb24nID0+ICdyc3MnLCAtZnVsbCA9PiAxKTsKLQkJbXkgJGh0bWwgPSBocmVmKCdwcm9qZWN0JyA9PiAkcHJvansncGF0aCd9LCAnYWN0aW9uJyA9PiAnc3VtbWFyeScsIC1mdWxsID0+IDEpOworCQlteSAkcnNzICA9IGVzY19hdHRyKGhyZWYoJ3Byb2plY3QnID0+ICRwcm9qeydwYXRoJ30sICdhY3Rpb24nID0+ICdyc3MnLCAtZnVsbCA9PiAxKSk7CisJCW15ICRodG1sID0gZXNjX2F0dHIoaHJlZigncHJvamVjdCcgPT4gJHByb2p7J3BhdGgnfSwgJ2FjdGlvbicgPT4gJ3N1bW1hcnknLCAtZnVsbCA9PiAxKSk7CiAJCXByaW50ICI8b3V0bGluZSB0eXBlPVwicnNzXCIgdGV4dD1cIiRwYXRoXCIgdGl0bGU9XCIkcGF0aFwiIHhtbFVybD1cIiRyc3NcIiBodG1sVXJsPVwiJGh0bWxcIi8+XG4iOwogCX0KIAlwcmludCA8PFhNTDsKZGlmZiAtLWdpdCBhL2dpdHdlYi9zdGF0aWMvanMvYmxhbWVfaW5jcmVtZW50YWwuanMgYi9naXR3ZWIvc3RhdGljL2pzL2JsYW1lX2luY3JlbWVudGFsLmpzCmluZGV4IGRiNmViNTAuLmUxMDBkODIgMTAwNjQ0Ci0tLSBhL2dpdHdlYi9zdGF0aWMvanMvYmxhbWVfaW5jcmVtZW50YWwuanMKKysrIGIvZ2l0d2ViL3N0YXRpYy9qcy9ibGFtZV9pbmNyZW1lbnRhbC5qcwpAQCAtNDg0LDcgKzQ4NCw3IEBACiAJCQljYXNlICdwcmV2aW91cyc6CiAJCQkJY3VyQ29tbWl0Lm5wcmV2aW91cysrOwogCQkJCS8vIHN0b3JlIG9ubHkgZmlyc3QgJ3ByZXZpb3VzJyBoZWFkZXIKLQkJCQlpZiAoISdwcmV2aW91cycgaW4gY3VyQ29tbWl0KSB7CisJCQkJaWYgKCEoJ3ByZXZpb3VzJyBpbiBjdXJDb21taXQpKSB7CiAJCQkJCXZhciBwYXJ0cyA9IGRhdGEuc3BsaXQoJyAnLCAyKTsKIAkJCQkJY3VyQ29tbWl0LnByZXZpb3VzICAgID0gcGFydHNbMF07CiAJCQkJCWN1ckNvbW1pdC5maWxlX3BhcmVudCA9IHVucXVvdGUocGFydHNbMV0pOwpkaWZmIC0tZ2l0IGEvZ3BnLWludGVyZmFjZS5jIGIvZ3BnLWludGVyZmFjZS5jCmluZGV4IDhlZDI3NDUuLjE2NTI3NGQgMTAwNjQ0Ci0tLSBhL2dwZy1pbnRlcmZhY2UuYworKysgYi9ncGctaW50ZXJmYWNlLmMKQEAgLTcsNiArNyw4IEBACiAjaW5jbHVkZSAidGVtcGZpbGUuaCIKIAogc3RhdGljIGNoYXIgKmNvbmZpZ3VyZWRfc2lnbmluZ19rZXk7CitzdGF0aWMgZW51bSBzaWduYXR1cmVfdHJ1c3RfbGV2ZWwgY29uZmlndXJlZF9taW5fdHJ1c3RfbGV2ZWwgPSBUUlVTVF9VTkRFRklORUQ7CisKIHN0cnVjdCBncGdfZm9ybWF0IHsKIAljb25zdCBjaGFyICpuYW1lOwogCWNvbnN0IGNoYXIgKnByb2dyYW07CkBAIC04NSw2ICs4Nyw4IEBACiAjZGVmaW5lIEdQR19TVEFUVVNfVUlECQkoMTw8MikKIC8qIFRoZSBzdGF0dXMgaW5jbHVkZXMga2V5IGZpbmdlcnByaW50cyAqLwogI2RlZmluZSBHUEdfU1RBVFVTX0ZJTkdFUlBSSU5UCSgxPDwzKQorLyogVGhlIHN0YXR1cyBpbmNsdWRlcyB0cnVzdCBsZXZlbCAqLworI2RlZmluZSBHUEdfU1RBVFVTX1RSVVNUX0xFVkVMCSgxPDw0KQogCiAvKiBTaG9ydC1oYW5kIGZvciBzdGFuZGFyZCBleGNsdXNpdmUgKlNJRyBzdGF0dXMgd2l0aCBrZXlpZCAmIFVJRCAqLwogI2RlZmluZSBHUEdfU1RBVFVTX1NURFNJRwkoR1BHX1NUQVRVU19FWENMVVNJVkV8R1BHX1NUQVRVU19LRVlJRHxHUEdfU1RBVFVTX1VJRCkKQEAgLTk2LDE1ICsxMDAsNDkgQEAKIH0gc2lnY2hlY2tfZ3BnX3N0YXR1c1tdID0gewogCXsgJ0cnLCAiR09PRFNJRyAiLCBHUEdfU1RBVFVTX1NURFNJRyB9LAogCXsgJ0InLCAiQkFEU0lHICIsIEdQR19TVEFUVVNfU1REU0lHIH0sCi0JeyAnVScsICJUUlVTVF9ORVZFUiIsIDAgfSwKLQl7ICdVJywgIlRSVVNUX1VOREVGSU5FRCIsIDAgfSwKIAl7ICdFJywgIkVSUlNJRyAiLCBHUEdfU1RBVFVTX0VYQ0xVU0lWRXxHUEdfU1RBVFVTX0tFWUlEIH0sCiAJeyAnWCcsICJFWFBTSUcgIiwgR1BHX1NUQVRVU19TVERTSUcgfSwKIAl7ICdZJywgIkVYUEtFWVNJRyAiLCBHUEdfU1RBVFVTX1NURFNJRyB9LAogCXsgJ1InLCAiUkVWS0VZU0lHICIsIEdQR19TVEFUVVNfU1REU0lHIH0sCiAJeyAwLCAiVkFMSURTSUcgIiwgR1BHX1NUQVRVU19GSU5HRVJQUklOVCB9LAorCXsgMCwgIlRSVVNUXyIsIEdQR19TVEFUVVNfVFJVU1RfTEVWRUwgfSwKIH07CiAKK3N0YXRpYyBzdHJ1Y3QgeworCWNvbnN0IGNoYXIgKmtleTsKKwllbnVtIHNpZ25hdHVyZV90cnVzdF9sZXZlbCB2YWx1ZTsKK30gc2lnY2hlY2tfZ3BnX3RydXN0X2xldmVsW10gPSB7CisJeyAiVU5ERUZJTkVEIiwgVFJVU1RfVU5ERUZJTkVEIH0sCisJeyAiTkVWRVIiLCBUUlVTVF9ORVZFUiB9LAorCXsgIk1BUkdJTkFMIiwgVFJVU1RfTUFSR0lOQUwgfSwKKwl7ICJGVUxMWSIsIFRSVVNUX0ZVTExZIH0sCisJeyAiVUxUSU1BVEUiLCBUUlVTVF9VTFRJTUFURSB9LAorfTsKKworc3RhdGljIHZvaWQgcmVwbGFjZV9jc3RyaW5nKGNoYXIgKipmaWVsZCwgY29uc3QgY2hhciAqbGluZSwgY29uc3QgY2hhciAqbmV4dCkKK3sKKwlmcmVlKCpmaWVsZCk7CisKKwlpZiAobGluZSAmJiBuZXh0KQorCQkqZmllbGQgPSB4bWVtZHVweihsaW5lLCBuZXh0IC0gbGluZSk7CisJZWxzZQorCQkqZmllbGQgPSBOVUxMOworfQorCitzdGF0aWMgaW50IHBhcnNlX2dwZ190cnVzdF9sZXZlbChjb25zdCBjaGFyICpsZXZlbCwKKwkJCQkgZW51bSBzaWduYXR1cmVfdHJ1c3RfbGV2ZWwgKnJlcykKK3sKKwlzaXplX3QgaTsKKworCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHNpZ2NoZWNrX2dwZ190cnVzdF9sZXZlbCk7IGkrKykgeworCQlpZiAoIXN0cmNtcChzaWdjaGVja19ncGdfdHJ1c3RfbGV2ZWxbaV0ua2V5LCBsZXZlbCkpIHsKKwkJCSpyZXMgPSBzaWdjaGVja19ncGdfdHJ1c3RfbGV2ZWxbaV0udmFsdWU7CisJCQlyZXR1cm4gMDsKKwkJfQorCX0KKwlyZXR1cm4gMTsKK30KKwogc3RhdGljIHZvaWQgcGFyc2VfZ3BnX291dHB1dChzdHJ1Y3Qgc2lnbmF0dXJlX2NoZWNrICpzaWdjKQogewogCWNvbnN0IGNoYXIgKmJ1ZiA9IHNpZ2MtPmdwZ19zdGF0dXM7CkBAIC0xMTYsNiArMTU0LDkgQEAKIAlmb3IgKGxpbmUgPSBidWY7ICpsaW5lOyBsaW5lID0gc3RyY2hybnVsKGxpbmUrMSwgJ1xuJykpIHsKIAkJd2hpbGUgKCpsaW5lID09ICdcbicpCiAJCQlsaW5lKys7CisJCWlmICghKmxpbmUpCisJCQlicmVhazsKKwogCQkvKiBTa2lwIGxpbmVzIHRoYXQgZG9uJ3Qgc3RhcnQgd2l0aCBHTlVQRyBzdGF0dXMgKi8KIAkJaWYgKCFza2lwX3ByZWZpeChsaW5lLCAiW0dOVVBHOl0gIiwgJmxpbmUpKQogCQkJY29udGludWU7CkBAIC0xMjMsOSArMTY0LDE4IEBACiAJCS8qIEl0ZXJhdGUgb3ZlciBhbGwgc2VhcmNoIHN0cmluZ3MgKi8KIAkJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUoc2lnY2hlY2tfZ3BnX3N0YXR1cyk7IGkrKykgewogCQkJaWYgKHNraXBfcHJlZml4KGxpbmUsIHNpZ2NoZWNrX2dwZ19zdGF0dXNbaV0uY2hlY2ssICZsaW5lKSkgeworCQkJCS8qCisJCQkJICogR09PRFNJRywgQkFEU0lHIGV0Yy4gY2FuIG9jY3VyIG9ubHkgb25jZSBmb3IKKwkJCQkgKiBlYWNoIHNpZ25hdHVyZS4gIFRoZXJlZm9yZSwgaWYgd2UgaGFkIG1vcmUKKwkJCQkgKiB0aGFuIG9uZSB0aGVuIHdlJ3JlIGRlYWxpbmcgd2l0aCBtdWx0aXBsZQorCQkJCSAqIHNpZ25hdHVyZXMuICBXZSBkb24ndCBzdXBwb3J0IHRoZW0KKwkJCQkgKiBjdXJyZW50bHksIGFuZCB0aGV5J3JlIHJhdGhlciBoYXJkIHRvCisJCQkJICogY3JlYXRlLCBzbyBzb21ldGhpbmcgaXMgbGlrZWx5IGZpc2h5IGFuZCB3ZQorCQkJCSAqIHNob3VsZCByZWplY3QgdGhlbSBhbHRvZ2V0aGVyLgorCQkJCSAqLwogCQkJCWlmIChzaWdjaGVja19ncGdfc3RhdHVzW2ldLmZsYWdzICYgR1BHX1NUQVRVU19FWENMVVNJVkUpIHsKIAkJCQkJaWYgKHNlZW5fZXhjbHVzaXZlX3N0YXR1cysrKQotCQkJCQkJZ290byBmb3VuZF9kdXBsaWNhdGVfc3RhdHVzOworCQkJCQkJZ290byBlcnJvcjsKIAkJCQl9CiAKIAkJCQlpZiAoc2lnY2hlY2tfZ3BnX3N0YXR1c1tpXS5yZXN1bHQpCkBAIC0xMzMsMzMgKzE4Myw2MiBAQAogCQkJCS8qIERvIHdlIGhhdmUga2V5IGluZm9ybWF0aW9uPyAqLwogCQkJCWlmIChzaWdjaGVja19ncGdfc3RhdHVzW2ldLmZsYWdzICYgR1BHX1NUQVRVU19LRVlJRCkgewogCQkJCQluZXh0ID0gc3RyY2hybnVsKGxpbmUsICcgJyk7Ci0JCQkJCWZyZWUoc2lnYy0+a2V5KTsKLQkJCQkJc2lnYy0+a2V5ID0geG1lbWR1cHoobGluZSwgbmV4dCAtIGxpbmUpOworCQkJCQlyZXBsYWNlX2NzdHJpbmcoJnNpZ2MtPmtleSwgbGluZSwgbmV4dCk7CiAJCQkJCS8qIERvIHdlIGhhdmUgc2lnbmVyIGluZm9ybWF0aW9uPyAqLwogCQkJCQlpZiAoKm5leHQgJiYgKHNpZ2NoZWNrX2dwZ19zdGF0dXNbaV0uZmxhZ3MgJiBHUEdfU1RBVFVTX1VJRCkpIHsKIAkJCQkJCWxpbmUgPSBuZXh0ICsgMTsKIAkJCQkJCW5leHQgPSBzdHJjaHJudWwobGluZSwgJ1xuJyk7Ci0JCQkJCQlmcmVlKHNpZ2MtPnNpZ25lcik7Ci0JCQkJCQlzaWdjLT5zaWduZXIgPSB4bWVtZHVweihsaW5lLCBuZXh0IC0gbGluZSk7CisJCQkJCQlyZXBsYWNlX2NzdHJpbmcoJnNpZ2MtPnNpZ25lciwgbGluZSwgbmV4dCk7CiAJCQkJCX0KIAkJCQl9CisKKwkJCQkvKiBEbyB3ZSBoYXZlIHRydXN0IGxldmVsPyAqLworCQkJCWlmIChzaWdjaGVja19ncGdfc3RhdHVzW2ldLmZsYWdzICYgR1BHX1NUQVRVU19UUlVTVF9MRVZFTCkgeworCQkJCQkvKgorCQkJCQkgKiBHUEcgdjEgYW5kIHYyIGRpZmZlcnMgaW4gaG93IHRoZQorCQkJCQkgKiBUUlVTVF8gbGluZXMgYXJlIHdyaXR0ZW4uICBTb21lCisJCQkJCSAqIHRydXN0IGxpbmVzIGNvbnRhaW4gbm8gYWRkaXRpb25hbAorCQkJCQkgKiBzcGFjZS1zZXBhcmF0ZWQgaW5mb3JtYXRpb24gZm9yIHYxLgorCQkJCQkgKi8KKwkJCQkJc2l6ZV90IHRydXN0X3NpemUgPSBzdHJjc3BuKGxpbmUsICIgXG4iKTsKKwkJCQkJY2hhciAqdHJ1c3QgPSB4bWVtZHVweihsaW5lLCB0cnVzdF9zaXplKTsKKworCQkJCQlpZiAocGFyc2VfZ3BnX3RydXN0X2xldmVsKHRydXN0LCAmc2lnYy0+dHJ1c3RfbGV2ZWwpKSB7CisJCQkJCQlmcmVlKHRydXN0KTsKKwkJCQkJCWdvdG8gZXJyb3I7CisJCQkJCX0KKwkJCQkJZnJlZSh0cnVzdCk7CisJCQkJfQorCiAJCQkJLyogRG8gd2UgaGF2ZSBmaW5nZXJwcmludD8gKi8KIAkJCQlpZiAoc2lnY2hlY2tfZ3BnX3N0YXR1c1tpXS5mbGFncyAmIEdQR19TVEFUVVNfRklOR0VSUFJJTlQpIHsKLQkJCQkJbmV4dCA9IHN0cmNocm51bChsaW5lLCAnICcpOwotCQkJCQlmcmVlKHNpZ2MtPmZpbmdlcnByaW50KTsKLQkJCQkJc2lnYy0+ZmluZ2VycHJpbnQgPSB4bWVtZHVweihsaW5lLCBuZXh0IC0gbGluZSk7CisJCQkJCWNvbnN0IGNoYXIgKmxpbWl0OworCQkJCQljaGFyICoqZmllbGQ7CiAKLQkJCQkJLyogU2tpcCBpbnRlcmltIGZpZWxkcyAqLworCQkJCQluZXh0ID0gc3RyY2hybnVsKGxpbmUsICcgJyk7CisJCQkJCXJlcGxhY2VfY3N0cmluZygmc2lnYy0+ZmluZ2VycHJpbnQsIGxpbmUsIG5leHQpOworCisJCQkJCS8qCisJCQkJCSAqIFNraXAgaW50ZXJpbSBmaWVsZHMuICBUaGUgc2VhcmNoIGlzCisJCQkJCSAqIGxpbWl0ZWQgdG8gdGhlIHNhbWUgbGluZSBzaW5jZSBvbmx5CisJCQkJCSAqIE9wZW5QR1Agc2lnbmF0dXJlcyBoYXMgYSBmaWVsZCB3aXRoCisJCQkJCSAqIHRoZSBwcmltYXJ5IGZpbmdlcnByaW50LgorCQkJCQkgKi8KKwkJCQkJbGltaXQgPSBzdHJjaHJudWwobGluZSwgJ1xuJyk7CiAJCQkJCWZvciAoaiA9IDk7IGogPiAwOyBqLS0pIHsKLQkJCQkJCWlmICghKm5leHQpCisJCQkJCQlpZiAoISpuZXh0IHx8IGxpbWl0IDw9IG5leHQpCiAJCQkJCQkJYnJlYWs7CiAJCQkJCQlsaW5lID0gbmV4dCArIDE7CiAJCQkJCQluZXh0ID0gc3RyY2hybnVsKGxpbmUsICcgJyk7CiAJCQkJCX0KIAotCQkJCQluZXh0ID0gc3RyY2hybnVsKGxpbmUsICdcbicpOwotCQkJCQlmcmVlKHNpZ2MtPnByaW1hcnlfa2V5X2ZpbmdlcnByaW50KTsKLQkJCQkJc2lnYy0+cHJpbWFyeV9rZXlfZmluZ2VycHJpbnQgPSB4bWVtZHVweihsaW5lLCBuZXh0IC0gbGluZSk7CisJCQkJCWZpZWxkID0gJnNpZ2MtPnByaW1hcnlfa2V5X2ZpbmdlcnByaW50OworCQkJCQlpZiAoIWopIHsKKwkJCQkJCW5leHQgPSBzdHJjaHJudWwobGluZSwgJ1xuJyk7CisJCQkJCQlyZXBsYWNlX2NzdHJpbmcoZmllbGQsIGxpbmUsIG5leHQpOworCQkJCQl9IGVsc2UgeworCQkJCQkJcmVwbGFjZV9jc3RyaW5nKGZpZWxkLCBOVUxMLCBOVUxMKTsKKwkJCQkJfQogCQkJCX0KIAogCQkJCWJyZWFrOwpAQCAtMTY4LDE0ICsyNDcsNyBAQAogCX0KIAlyZXR1cm47CiAKLWZvdW5kX2R1cGxpY2F0ZV9zdGF0dXM6Ci0JLyoKLQkgKiBHT09EU0lHLCBCQURTSUcgZXRjLiBjYW4gb2NjdXIgb25seSBvbmNlIGZvciBlYWNoIHNpZ25hdHVyZS4KLQkgKiBUaGVyZWZvcmUsIGlmIHdlIGhhZCBtb3JlIHRoYW4gb25lIHRoZW4gd2UncmUgZGVhbGluZyB3aXRoIG11bHRpcGxlCi0JICogc2lnbmF0dXJlcy4gIFdlIGRvbid0IHN1cHBvcnQgdGhlbSBjdXJyZW50bHksIGFuZCB0aGV5J3JlIHJhdGhlcgotCSAqIGhhcmQgdG8gY3JlYXRlLCBzbyBzb21ldGhpbmcgaXMgbGlrZWx5IGZpc2h5IGFuZCB3ZSBzaG91bGQgcmVqZWN0Ci0JICogdGhlbSBhbHRvZ2V0aGVyLgotCSAqLworZXJyb3I6CiAJc2lnYy0+cmVzdWx0ID0gJ0UnOwogCS8qIENsZWFyIHBhcnRpYWwgZGF0YSB0byBhdm9pZCBjb25mdXNpb24gKi8KIAlGUkVFX0FORF9OVUxMKHNpZ2MtPnByaW1hcnlfa2V5X2ZpbmdlcnByaW50KTsKQEAgLTE5Miw2ICsyNjQsNyBAQAogCWludCBzdGF0dXM7CiAKIAlzaWdjLT5yZXN1bHQgPSAnTic7CisJc2lnYy0+dHJ1c3RfbGV2ZWwgPSAtMTsKIAogCXN0YXR1cyA9IHZlcmlmeV9zaWduZWRfYnVmZmVyKHBheWxvYWQsIHBsZW4sIHNpZ25hdHVyZSwgc2xlbiwKIAkJCQkgICAgICAmZ3BnX291dHB1dCwgJmdwZ19zdGF0dXMpOwpAQCAtMjAxLDcgKzI3NCw4IEBACiAJc2lnYy0+Z3BnX291dHB1dCA9IHN0cmJ1Zl9kZXRhY2goJmdwZ19vdXRwdXQsIE5VTEwpOwogCXNpZ2MtPmdwZ19zdGF0dXMgPSBzdHJidWZfZGV0YWNoKCZncGdfc3RhdHVzLCBOVUxMKTsKIAlwYXJzZV9ncGdfb3V0cHV0KHNpZ2MpOwotCXN0YXR1cyB8PSBzaWdjLT5yZXN1bHQgIT0gJ0cnICYmIHNpZ2MtPnJlc3VsdCAhPSAnVSc7CisJc3RhdHVzIHw9IHNpZ2MtPnJlc3VsdCAhPSAnRyc7CisJc3RhdHVzIHw9IHNpZ2MtPnRydXN0X2xldmVsIDwgY29uZmlndXJlZF9taW5fdHJ1c3RfbGV2ZWw7CiAKICBvdXQ6CiAJc3RyYnVmX3JlbGVhc2UoJmdwZ19zdGF0dXMpOwpAQCAtMjQ4LDYgKzMyMiw4IEBACiB7CiAJc3RydWN0IGdwZ19mb3JtYXQgKmZtdCA9IE5VTEw7CiAJY2hhciAqZm10bmFtZSA9IE5VTEw7CisJY2hhciAqdHJ1c3Q7CisJaW50IHJldDsKIAogCWlmICghc3RyY21wKHZhciwgInVzZXIuc2lnbmluZ2tleSIpKSB7CiAJCWlmICghdmFsdWUpCkBAIC0yNjcsNiArMzQzLDIwIEBACiAJCXJldHVybiAwOwogCX0KIAorCWlmICghc3RyY21wKHZhciwgImdwZy5taW50cnVzdGxldmVsIikpIHsKKwkJaWYgKCF2YWx1ZSkKKwkJCXJldHVybiBjb25maWdfZXJyb3Jfbm9uYm9vbCh2YXIpOworCisJCXRydXN0ID0geHN0cmR1cF90b3VwcGVyKHZhbHVlKTsKKwkJcmV0ID0gcGFyc2VfZ3BnX3RydXN0X2xldmVsKHRydXN0LCAmY29uZmlndXJlZF9taW5fdHJ1c3RfbGV2ZWwpOworCQlmcmVlKHRydXN0KTsKKworCQlpZiAocmV0KQorCQkJcmV0dXJuIGVycm9yKCJ1bnN1cHBvcnRlZCB2YWx1ZSBmb3IgJXM6ICVzIiwgdmFyLAorCQkJCSAgICAgdmFsdWUpOworCQlyZXR1cm4gMDsKKwl9CisKIAlpZiAoIXN0cmNtcCh2YXIsICJncGcucHJvZ3JhbSIpIHx8ICFzdHJjbXAodmFyLCAiZ3BnLm9wZW5wZ3AucHJvZ3JhbSIpKQogCQlmbXRuYW1lID0gIm9wZW5wZ3AiOwogCmRpZmYgLS1naXQgYS9ncGctaW50ZXJmYWNlLmggYi9ncGctaW50ZXJmYWNlLmgKaW5kZXggM2U2MjRlYy4uNzk2NTcxZSAxMDA2NDQKLS0tIGEvZ3BnLWludGVyZmFjZS5oCisrKyBiL2dwZy1pbnRlcmZhY2UuaApAQCAtNyw2ICs3LDE0IEBACiAjZGVmaW5lIEdQR19WRVJJRllfUkFXCQkJMgogI2RlZmluZSBHUEdfVkVSSUZZX09NSVRfU1RBVFVTCTQKIAorZW51bSBzaWduYXR1cmVfdHJ1c3RfbGV2ZWwgeworCVRSVVNUX1VOREVGSU5FRCwKKwlUUlVTVF9ORVZFUiwKKwlUUlVTVF9NQVJHSU5BTCwKKwlUUlVTVF9GVUxMWSwKKwlUUlVTVF9VTFRJTUFURSwKK307CisKIHN0cnVjdCBzaWduYXR1cmVfY2hlY2sgewogCWNoYXIgKnBheWxvYWQ7CiAJY2hhciAqZ3BnX291dHB1dDsKQEAgLTE2LDcgKzI0LDYgQEAKIAkgKiBwb3NzaWJsZSAicmVzdWx0IjoKIAkgKiAwIChub3QgY2hlY2tlZCkKIAkgKiBOIChjaGVja2VkIGJ1dCBubyBmdXJ0aGVyIHJlc3VsdCkKLQkgKiBVICh1bnRydXN0ZWQgZ29vZCkKIAkgKiBHIChnb29kKQogCSAqIEIgKGJhZCkKIAkgKi8KQEAgLTI1LDYgKzMyLDcgQEAKIAljaGFyICprZXk7CiAJY2hhciAqZmluZ2VycHJpbnQ7CiAJY2hhciAqcHJpbWFyeV9rZXlfZmluZ2VycHJpbnQ7CisJZW51bSBzaWduYXR1cmVfdHJ1c3RfbGV2ZWwgdHJ1c3RfbGV2ZWw7CiB9OwogCiB2b2lkIHNpZ25hdHVyZV9jaGVja19jbGVhcihzdHJ1Y3Qgc2lnbmF0dXJlX2NoZWNrICpzaWdjKTsKZGlmZiAtLWdpdCBhL2dyYXBoLmMgYi9ncmFwaC5jCmluZGV4IGY1MzEzNTQuLjRmYjI1YWQgMTAwNjQ0Ci0tLSBhL2dyYXBoLmMKKysrIGIvZ3JhcGguYwpAQCAtMzQsNiArMzQsNyBAQAogICogaGFuZGxlIGRpcmVjdGx5LiBJdCBpcyBhc3N1bWVkIHRoYXQgdGhpcyBpcyB0aGUgc2FtZSBmaWxlIGhhbmRsZSBhcyB0aGUKICAqIGZpbGUgc3BlY2lmaWVkIGJ5IHRoZSBncmFwaCBkaWZmIG9wdGlvbnMuIFRoaXMgaXMgbmVjZXNzYXJ5IHNvIHRoYXQKICAqIGdyYXBoX3Nob3dfc3RyYnVmIGNhbiBiZSBjYWxsZWQgZXZlbiB3aXRoIGEgTlVMTCBncmFwaC4KKyAqIElmIGEgTlVMTCBncmFwaCBpcyBzdXBwbGllZCwgdGhlIHN0cmJ1ZiBpcyBwcmludGVkIGFzLWlzLgogICovCiBzdGF0aWMgdm9pZCBncmFwaF9zaG93X3N0cmJ1ZihzdHJ1Y3QgZ2l0X2dyYXBoICpncmFwaCwKIAkJCSAgICAgIEZJTEUgKmZpbGUsCkBAIC0xMTIsMTQgKzExMyw0MiBAQAogCXJldHVybiBjb2x1bW5fY29sb3JzW2NvbG9yXTsKIH0KIAotc3RhdGljIHZvaWQgc3RyYnVmX3dyaXRlX2NvbHVtbihzdHJ1Y3Qgc3RyYnVmICpzYiwgY29uc3Qgc3RydWN0IGNvbHVtbiAqYywKLQkJCQljaGFyIGNvbF9jaGFyKQorc3RydWN0IGdyYXBoX2xpbmUgeworCXN0cnVjdCBzdHJidWYgKmJ1ZjsKKwlzaXplX3Qgd2lkdGg7Cit9OworCitzdGF0aWMgaW5saW5lIHZvaWQgZ3JhcGhfbGluZV9hZGRjaChzdHJ1Y3QgZ3JhcGhfbGluZSAqbGluZSwgaW50IGMpCit7CisJc3RyYnVmX2FkZGNoKGxpbmUtPmJ1ZiwgYyk7CisJbGluZS0+d2lkdGgrKzsKK30KKworc3RhdGljIGlubGluZSB2b2lkIGdyYXBoX2xpbmVfYWRkY2hhcnMoc3RydWN0IGdyYXBoX2xpbmUgKmxpbmUsIGludCBjLCBzaXplX3QgbikKK3sKKwlzdHJidWZfYWRkY2hhcnMobGluZS0+YnVmLCBjLCBuKTsKKwlsaW5lLT53aWR0aCArPSBuOworfQorCitzdGF0aWMgaW5saW5lIHZvaWQgZ3JhcGhfbGluZV9hZGRzdHIoc3RydWN0IGdyYXBoX2xpbmUgKmxpbmUsIGNvbnN0IGNoYXIgKnMpCit7CisJc3RyYnVmX2FkZHN0cihsaW5lLT5idWYsIHMpOworCWxpbmUtPndpZHRoICs9IHN0cmxlbihzKTsKK30KKworc3RhdGljIGlubGluZSB2b2lkIGdyYXBoX2xpbmVfYWRkY29sb3Ioc3RydWN0IGdyYXBoX2xpbmUgKmxpbmUsIHVuc2lnbmVkIHNob3J0IGNvbG9yKQoreworCXN0cmJ1Zl9hZGRzdHIobGluZS0+YnVmLCBjb2x1bW5fZ2V0X2NvbG9yX2NvZGUoY29sb3IpKTsKK30KKworc3RhdGljIHZvaWQgZ3JhcGhfbGluZV93cml0ZV9jb2x1bW4oc3RydWN0IGdyYXBoX2xpbmUgKmxpbmUsIGNvbnN0IHN0cnVjdCBjb2x1bW4gKmMsCisJCQkJICAgIGNoYXIgY29sX2NoYXIpCiB7CiAJaWYgKGMtPmNvbG9yIDwgY29sdW1uX2NvbG9yc19tYXgpCi0JCXN0cmJ1Zl9hZGRzdHIoc2IsIGNvbHVtbl9nZXRfY29sb3JfY29kZShjLT5jb2xvcikpOwotCXN0cmJ1Zl9hZGRjaChzYiwgY29sX2NoYXIpOworCQlncmFwaF9saW5lX2FkZGNvbG9yKGxpbmUsIGMtPmNvbG9yKTsKKwlncmFwaF9saW5lX2FkZGNoKGxpbmUsIGNvbF9jaGFyKTsKIAlpZiAoYy0+Y29sb3IgPCBjb2x1bW5fY29sb3JzX21heCkKLQkJc3RyYnVmX2FkZHN0cihzYiwgY29sdW1uX2dldF9jb2xvcl9jb2RlKGNvbHVtbl9jb2xvcnNfbWF4KSk7CisJCWdyYXBoX2xpbmVfYWRkY29sb3IobGluZSwgY29sdW1uX2NvbG9yc19tYXgpOwogfQogCiBzdHJ1Y3QgZ2l0X2dyYXBoIHsKQEAgLTE3NSw5ICsyMDQsNjMgQEAKIAkgKi8KIAlpbnQgcHJldl9jb21taXRfaW5kZXg7CiAJLyoKKwkgKiBXaGljaCBsYXlvdXQgdmFyaWFudCB0byB1c2UgdG8gZGlzcGxheSBtZXJnZSBjb21taXRzLiBJZiB0aGUKKwkgKiBjb21taXQncyBmaXJzdCBwYXJlbnQgaXMga25vd24gdG8gYmUgaW4gYSBjb2x1bW4gdG8gdGhlIGxlZnQgb2YgdGhlCisJICogbWVyZ2UsIHRoZW4gdGhpcyB2YWx1ZSBpcyAwIGFuZCB3ZSB1c2UgdGhlIGxheW91dCBvbiB0aGUgbGVmdC4KKwkgKiBPdGhlcndpc2UsIHRoZSB2YWx1ZSBpcyAxIGFuZCB0aGUgbGF5b3V0IG9uIHRoZSByaWdodCBpcyB1c2VkLiBUaGlzCisJICogZmllbGQgdGVsbHMgdXMgaG93IG1hbnkgY29sdW1ucyB0aGUgZmlyc3QgcGFyZW50IG9jY3VwaWVzLgorCSAqCisJICogCQkwKQkJCTEpCisJICoKKwkgKiAJCXwgfCB8ICotLgkJfCB8ICotLS0uCisJICogCQl8IHxffC98XCBcCQl8IHwgfFwgXCBcCisJICogCQl8L3wgfCB8IHwgfAkJfCB8IHwgfCB8ICoKKwkgKi8KKwlpbnQgbWVyZ2VfbGF5b3V0OworCS8qCisJICogVGhlIG51bWJlciBvZiBjb2x1bW5zIGFkZGVkIHRvIHRoZSBncmFwaCBieSB0aGUgY3VycmVudCBjb21taXQuIEZvcgorCSAqIDItd2F5IGFuZCBvY3RvcHVzIG1lcmdlcywgdGhpcyBpcyB1c3VhbGx5IG9uZSBsZXNzIHRoYW4gdGhlCisJICogbnVtYmVyIG9mIHBhcmVudHM6CisJICoKKwkgKiAJCXwgfCB8CQkJfCB8ICAgIFwKKwkgKgkJfCAqIHwJCQl8ICotLS0uIFwKKwkgKgkJfCB8XCBcCQkJfCB8XCBcIFwgXAorCSAqCQl8IHwgfCB8ICAgICAgICAgCXwgfCB8IHwgfCB8CisJICoKKwkgKgkJbnVtX3BhcmVudHM6IDIJCW51bV9wYXJlbnRzOiA0CisJICoJCWVkZ2VzX2FkZGVkOiAxCQllZGdlc19hZGRlZDogMworCSAqCisJICogRm9yIGxlZnQtc2tld2VkIG1lcmdlcywgdGhlIGZpcnN0IHBhcmVudCBmdXNlcyB3aXRoIGl0cyBuZWlnaGJvciBhbmQKKwkgKiBzbyBvbmUgbGVzcyBjb2x1bW4gaXMgYWRkZWQ6CisJICoKKwkgKgkJfCB8IHwJCQl8IHwgIFwKKwkgKgkJfCAqIHwJCQl8ICotLiBcCisJICoJCXwvfCB8CQkJfC98XCBcIFwKKwkgKgkJfCB8IHwJCQl8IHwgfCB8IHwKKwkgKgorCSAqCQludW1fcGFyZW50czogMgkJbnVtX3BhcmVudHM6IDQKKwkgKgkJZWRnZXNfYWRkZWQ6IDAJCWVkZ2VzX2FkZGVkOiAyCisJICoKKwkgKiBUaGlzIG51bWJlciBkZXRlcm1pbmVzIGhvdyBlZGdlcyB0byB0aGUgcmlnaHQgb2YgdGhlIG1lcmdlIGFyZQorCSAqIGRpc3BsYXllZCBpbiBjb21taXQgYW5kIHBvc3QtbWVyZ2UgbGluZXM7IGlmIG5vIGNvbHVtbnMgaGF2ZSBiZWVuCisJICogYWRkZWQgdGhlbiBhIHZlcnRpY2FsIGxpbmUgc2hvdWxkIGJlIHVzZWQgd2hlcmUgYSByaWdodC10cmFja2luZworCSAqIGxpbmUgd291bGQgb3RoZXJ3aXNlIGJlIHVzZWQuCisJICoKKwkgKgkJfCAqIFwJCQl8ICogfAorCSAqCQl8IHxcIFwJCQl8L3wgfAorCSAqCQl8IHwgKiBcCQkJfCAqIHwKKwkgKi8KKwlpbnQgZWRnZXNfYWRkZWQ7CisJLyoKKwkgKiBUaGUgbnVtYmVyIG9mIGNvbHVtbnMgYWRkZWQgYnkgdGhlIHByZXZpb3VzIGNvbW1pdCwgd2hpY2ggaXMgdXNlZCB0bworCSAqIHNtb290aCBlZGdlcyBhcHBlYXJpbmcgdG8gdGhlIHJpZ2h0IG9mIGEgY29tbWl0IGluIGEgY29tbWl0IGxpbmUKKwkgKiBmb2xsb3dpbmcgYSBwb3N0LW1lcmdlIGxpbmUuCisJICovCisJaW50IHByZXZfZWRnZXNfYWRkZWQ7CisJLyoKIAkgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgY29sdW1ucyB0aGF0IGNhbiBiZSBzdG9yZWQgaW4gdGhlIGNvbHVtbnMKIAkgKiBhbmQgbmV3X2NvbHVtbnMgYXJyYXlzLiAgVGhpcyBpcyBhbHNvIGhhbGYgdGhlIG51bWJlciBvZiBlbnRyaWVzCi0JICogdGhhdCBjYW4gYmUgc3RvcmVkIGluIHRoZSBtYXBwaW5nIGFuZCBuZXdfbWFwcGluZyBhcnJheXMuCisJICogdGhhdCBjYW4gYmUgc3RvcmVkIGluIHRoZSBtYXBwaW5nIGFuZCBvbGRfbWFwcGluZyBhcnJheXMuCiAJICovCiAJaW50IGNvbHVtbl9jYXBhY2l0eTsKIAkvKgpAQCAtMjE1LDEyICsyOTgsMTIgQEAKIAkgKi8KIAlpbnQgKm1hcHBpbmc7CiAJLyoKLQkgKiBBIHRlbXBvcmFyeSBhcnJheSBmb3IgY29tcHV0aW5nIHRoZSBuZXh0IG1hcHBpbmcgc3RhdGUKLQkgKiB3aGlsZSB3ZSBhcmUgb3V0cHV0dGluZyBhIG1hcHBpbmcgbGluZS4gIFRoaXMgaXMgc3RvcmVkIGFzIHBhcnQKLQkgKiBvZiB0aGUgZ2l0X2dyYXBoIHNpbXBseSBzbyB3ZSBkb24ndCBoYXZlIHRvIGFsbG9jYXRlIGEgbmV3Ci0JICogdGVtcG9yYXJ5IGFycmF5IGVhY2ggdGltZSB3ZSBoYXZlIHRvIG91dHB1dCBhIGNvbGxhcHNpbmcgbGluZS4KKwkgKiBBIGNvcHkgb2YgdGhlIGNvbnRlbnRzIG9mIHRoZSBtYXBwaW5nIGFycmF5IGZyb20gdGhlIGxhc3QgY29tbWl0LAorCSAqIHdoaWNoIHdlIHVzZSB0byBpbXByb3ZlIHRoZSBkaXNwbGF5IG9mIGNvbHVtbnMgdGhhdCBhcmUgdHJhY2tpbmcKKwkgKiBmcm9tIHJpZ2h0IHRvIGxlZnQgdGhyb3VnaCBhIGNvbW1pdCBsaW5lLiAgV2UgYWxzbyB1c2UgdGhpcyB0bworCSAqIGF2b2lkIGFsbG9jYXRpbmcgYSBmcmVzaCBhcnJheSB3aGVuIHdlIGNvbXB1dGUgdGhlIG5leHQgbWFwcGluZy4KIAkgKi8KLQlpbnQgKm5ld19tYXBwaW5nOworCWludCAqb2xkX21hcHBpbmc7CiAJLyoKIAkgKiBUaGUgY3VycmVudCBkZWZhdWx0IGNvbHVtbiBjb2xvciBiZWluZyB1c2VkLiAgVGhpcyBpcwogCSAqIHN0b3JlZCBhcyBhbiBpbmRleCBpbnRvIHRoZSBhcnJheSBjb2x1bW5fY29sb3JzLgpAQCAtMjg1LDYgKzM2OCw5IEBACiAJZ3JhcGgtPnByZXZfc3RhdGUgPSBHUkFQSF9QQURESU5HOwogCWdyYXBoLT5jb21taXRfaW5kZXggPSAwOwogCWdyYXBoLT5wcmV2X2NvbW1pdF9pbmRleCA9IDA7CisJZ3JhcGgtPm1lcmdlX2xheW91dCA9IDA7CisJZ3JhcGgtPmVkZ2VzX2FkZGVkID0gMDsKKwlncmFwaC0+cHJldl9lZGdlc19hZGRlZCA9IDA7CiAJZ3JhcGgtPm51bV9jb2x1bW5zID0gMDsKIAlncmFwaC0+bnVtX25ld19jb2x1bW5zID0gMDsKIAlncmFwaC0+bWFwcGluZ19zaXplID0gMDsKQEAgLTMwMyw3ICszODksNyBAQAogCUFMTE9DX0FSUkFZKGdyYXBoLT5jb2x1bW5zLCBncmFwaC0+Y29sdW1uX2NhcGFjaXR5KTsKIAlBTExPQ19BUlJBWShncmFwaC0+bmV3X2NvbHVtbnMsIGdyYXBoLT5jb2x1bW5fY2FwYWNpdHkpOwogCUFMTE9DX0FSUkFZKGdyYXBoLT5tYXBwaW5nLCAyICogZ3JhcGgtPmNvbHVtbl9jYXBhY2l0eSk7Ci0JQUxMT0NfQVJSQVkoZ3JhcGgtPm5ld19tYXBwaW5nLCAyICogZ3JhcGgtPmNvbHVtbl9jYXBhY2l0eSk7CisJQUxMT0NfQVJSQVkoZ3JhcGgtPm9sZF9tYXBwaW5nLCAyICogZ3JhcGgtPmNvbHVtbl9jYXBhY2l0eSk7CiAKIAkvKgogCSAqIFRoZSBkaWZmIG91dHB1dCBwcmVmaXggY2FsbGJhY2ssIHdpdGggdGhpcyB3ZSBjYW4gbWFrZQpAQCAtMzMzLDcgKzQxOSw3IEBACiAJUkVBTExPQ19BUlJBWShncmFwaC0+Y29sdW1ucywgZ3JhcGgtPmNvbHVtbl9jYXBhY2l0eSk7CiAJUkVBTExPQ19BUlJBWShncmFwaC0+bmV3X2NvbHVtbnMsIGdyYXBoLT5jb2x1bW5fY2FwYWNpdHkpOwogCVJFQUxMT0NfQVJSQVkoZ3JhcGgtPm1hcHBpbmcsIGdyYXBoLT5jb2x1bW5fY2FwYWNpdHkgKiAyKTsKLQlSRUFMTE9DX0FSUkFZKGdyYXBoLT5uZXdfbWFwcGluZywgZ3JhcGgtPmNvbHVtbl9jYXBhY2l0eSAqIDIpOworCVJFQUxMT0NfQVJSQVkoZ3JhcGgtPm9sZF9tYXBwaW5nLCBncmFwaC0+Y29sdW1uX2NhcGFjaXR5ICogMik7CiB9CiAKIC8qCkBAIC00MzIsNzQgKzUxOCw3NiBAQAogCXJldHVybiBncmFwaF9nZXRfY3VycmVudF9jb2x1bW5fY29sb3IoZ3JhcGgpOwogfQogCi1zdGF0aWMgdm9pZCBncmFwaF9pbnNlcnRfaW50b19uZXdfY29sdW1ucyhzdHJ1Y3QgZ2l0X2dyYXBoICpncmFwaCwKLQkJCQkJICBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCi0JCQkJCSAgaW50ICptYXBwaW5nX2luZGV4KQorc3RhdGljIGludCBncmFwaF9maW5kX25ld19jb2x1bW5fYnlfY29tbWl0KHN0cnVjdCBnaXRfZ3JhcGggKmdyYXBoLAorCQkJCQkgICBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCiB7CiAJaW50IGk7Ci0KLQkvKgotCSAqIElmIHRoZSBjb21taXQgaXMgYWxyZWFkeSBpbiB0aGUgbmV3X2NvbHVtbnMgbGlzdCwgd2UgZG9uJ3QgbmVlZCB0bwotCSAqIGFkZCBpdC4gIEp1c3QgdXBkYXRlIHRoZSBtYXBwaW5nIGNvcnJlY3RseS4KLQkgKi8KIAlmb3IgKGkgPSAwOyBpIDwgZ3JhcGgtPm51bV9uZXdfY29sdW1uczsgaSsrKSB7Ci0JCWlmIChncmFwaC0+bmV3X2NvbHVtbnNbaV0uY29tbWl0ID09IGNvbW1pdCkgewotCQkJZ3JhcGgtPm1hcHBpbmdbKm1hcHBpbmdfaW5kZXhdID0gaTsKLQkJCSptYXBwaW5nX2luZGV4ICs9IDI7Ci0JCQlyZXR1cm47Ci0JCX0KKwkJaWYgKGdyYXBoLT5uZXdfY29sdW1uc1tpXS5jb21taXQgPT0gY29tbWl0KQorCQkJcmV0dXJuIGk7CiAJfQotCi0JLyoKLQkgKiBUaGlzIGNvbW1pdCBpc24ndCBhbHJlYWR5IGluIG5ld19jb2x1bW5zLiAgQWRkIGl0LgotCSAqLwotCWdyYXBoLT5uZXdfY29sdW1uc1tncmFwaC0+bnVtX25ld19jb2x1bW5zXS5jb21taXQgPSBjb21taXQ7Ci0JZ3JhcGgtPm5ld19jb2x1bW5zW2dyYXBoLT5udW1fbmV3X2NvbHVtbnNdLmNvbG9yID0gZ3JhcGhfZmluZF9jb21taXRfY29sb3IoZ3JhcGgsIGNvbW1pdCk7Ci0JZ3JhcGgtPm1hcHBpbmdbKm1hcHBpbmdfaW5kZXhdID0gZ3JhcGgtPm51bV9uZXdfY29sdW1uczsKLQkqbWFwcGluZ19pbmRleCArPSAyOwotCWdyYXBoLT5udW1fbmV3X2NvbHVtbnMrKzsKKwlyZXR1cm4gLTE7CiB9CiAKLXN0YXRpYyB2b2lkIGdyYXBoX3VwZGF0ZV93aWR0aChzdHJ1Y3QgZ2l0X2dyYXBoICpncmFwaCwKLQkJCSAgICAgICBpbnQgaXNfY29tbWl0X2luX2V4aXN0aW5nX2NvbHVtbnMpCitzdGF0aWMgdm9pZCBncmFwaF9pbnNlcnRfaW50b19uZXdfY29sdW1ucyhzdHJ1Y3QgZ2l0X2dyYXBoICpncmFwaCwKKwkJCQkJICBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCisJCQkJCSAgaW50IGlkeCkKIHsKLQkvKgotCSAqIENvbXB1dGUgdGhlIHdpZHRoIG5lZWRlZCB0byBkaXNwbGF5IHRoZSBncmFwaCBmb3IgdGhpcyBjb21taXQuCi0JICogVGhpcyBpcyB0aGUgbWF4aW11bSB3aWR0aCBuZWVkZWQgZm9yIGFueSByb3cuICBBbGwgb3RoZXIgcm93cwotCSAqIHdpbGwgYmUgcGFkZGVkIHRvIHRoaXMgd2lkdGguCi0JICoKLQkgKiBDb21wdXRlIHRoZSBudW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgd2lkZXN0IHJvdzoKLQkgKiBDb3VudCBlYWNoIGV4aXN0aW5nIGNvbHVtbiAoZ3JhcGgtPm51bV9jb2x1bW5zKSwgYW5kIGVhY2ggbmV3Ci0JICogY29sdW1uIGFkZGVkIGJ5IHRoaXMgY29tbWl0LgotCSAqLwotCWludCBtYXhfY29scyA9IGdyYXBoLT5udW1fY29sdW1ucyArIGdyYXBoLT5udW1fcGFyZW50czsKKwlpbnQgaSA9IGdyYXBoX2ZpbmRfbmV3X2NvbHVtbl9ieV9jb21taXQoZ3JhcGgsIGNvbW1pdCk7CisJaW50IG1hcHBpbmdfaWR4OwogCiAJLyoKLQkgKiBFdmVuIGlmIHRoZSBjdXJyZW50IGNvbW1pdCBoYXMgbm8gcGFyZW50cyB0byBiZSBwcmludGVkLCBpdAotCSAqIHN0aWxsIHRha2VzIHVwIGEgY29sdW1uIGZvciBpdHNlbGYuCisJICogSWYgdGhlIGNvbW1pdCBpcyBub3QgYWxyZWFkeSBpbiB0aGUgbmV3X2NvbHVtbnMgYXJyYXksIHRoZW4gYWRkIGl0CisJICogYW5kIHJlY29yZCBpdCBhcyBiZWluZyBpbiB0aGUgZmluYWwgY29sdW1uLgogCSAqLwotCWlmIChncmFwaC0+bnVtX3BhcmVudHMgPCAxKQotCQltYXhfY29scysrOworCWlmIChpIDwgMCkgeworCQlpID0gZ3JhcGgtPm51bV9uZXdfY29sdW1ucysrOworCQlncmFwaC0+bmV3X2NvbHVtbnNbaV0uY29tbWl0ID0gY29tbWl0OworCQlncmFwaC0+bmV3X2NvbHVtbnNbaV0uY29sb3IgPSBncmFwaF9maW5kX2NvbW1pdF9jb2xvcihncmFwaCwgY29tbWl0KTsKKwl9CiAKLQkvKgotCSAqIFdlIGFkZGVkIGEgY29sdW1uIGZvciB0aGUgY3VycmVudCBjb21taXQgYXMgcGFydCBvZgotCSAqIGdyYXBoLT5udW1fcGFyZW50cy4gIElmIHRoZSBjdXJyZW50IGNvbW1pdCB3YXMgYWxyZWFkeSBpbgotCSAqIGdyYXBoLT5jb2x1bW5zLCB0aGVuIHdlIGhhdmUgZG91YmxlIGNvdW50ZWQgaXQuCi0JICovCi0JaWYgKGlzX2NvbW1pdF9pbl9leGlzdGluZ19jb2x1bW5zKQotCQltYXhfY29scy0tOworCWlmIChncmFwaC0+bnVtX3BhcmVudHMgPiAxICYmIGlkeCA+IC0xICYmIGdyYXBoLT5tZXJnZV9sYXlvdXQgPT0gLTEpIHsKKwkJLyoKKwkJICogSWYgdGhpcyBpcyB0aGUgZmlyc3QgcGFyZW50IG9mIGEgbWVyZ2UsIGNob29zZSBhIGxheW91dCBmb3IKKwkJICogdGhlIG1lcmdlIGxpbmUgYmFzZWQgb24gd2hldGhlciB0aGUgcGFyZW50IGFwcGVhcnMgaW4gYQorCQkgKiBjb2x1bW4gdG8gdGhlIGxlZnQgb2YgdGhlIG1lcmdlCisJCSAqLworCQlpbnQgZGlzdCwgc2hpZnQ7CiAKLQkvKgotCSAqIEVhY2ggY29sdW1uIHRha2VzIHVwIDIgc3BhY2VzCi0JICovCi0JZ3JhcGgtPndpZHRoID0gbWF4X2NvbHMgKiAyOworCQlkaXN0ID0gaWR4IC0gaTsKKwkJc2hpZnQgPSAoZGlzdCA+IDEpID8gMiAqIGRpc3QgLSAzIDogMTsKKworCQlncmFwaC0+bWVyZ2VfbGF5b3V0ID0gKGRpc3QgPiAwKSA/IDAgOiAxOworCQlncmFwaC0+ZWRnZXNfYWRkZWQgPSBncmFwaC0+bnVtX3BhcmVudHMgKyBncmFwaC0+bWVyZ2VfbGF5b3V0ICAtIDI7CisKKwkJbWFwcGluZ19pZHggPSBncmFwaC0+d2lkdGggKyAoZ3JhcGgtPm1lcmdlX2xheW91dCAtIDEpICogc2hpZnQ7CisJCWdyYXBoLT53aWR0aCArPSAyICogZ3JhcGgtPm1lcmdlX2xheW91dDsKKworCX0gZWxzZSBpZiAoZ3JhcGgtPmVkZ2VzX2FkZGVkID4gMCAmJiBpID09IGdyYXBoLT5tYXBwaW5nW2dyYXBoLT53aWR0aCAtIDJdKSB7CisJCS8qCisJCSAqIElmIHNvbWUgY29sdW1ucyBoYXZlIGJlZW4gYWRkZWQgYnkgYSBtZXJnZSwgYnV0IHRoaXMgY29tbWl0CisJCSAqIHdhcyBmb3VuZCBpbiB0aGUgbGFzdCBleGlzdGluZyBjb2x1bW4sIHRoZW4gYWRqdXN0IHRoZQorCQkgKiBudW1iZXJzIHNvIHRoYXQgdGhlIHR3byBlZGdlcyBpbW1lZGlhdGVseSBqb2luLCBpLmUuOgorCQkgKgorCQkgKgkJKiB8CQkqIHwKKwkJICoJCXxcIFwJPT4JfFx8CisJCSAqCQl8IHwvCQl8ICoKKwkJICoJCXwgKgorCQkgKi8KKwkJbWFwcGluZ19pZHggPSBncmFwaC0+d2lkdGggLSAyOworCQlncmFwaC0+ZWRnZXNfYWRkZWQgPSAtMTsKKwl9IGVsc2UgeworCQltYXBwaW5nX2lkeCA9IGdyYXBoLT53aWR0aDsKKwkJZ3JhcGgtPndpZHRoICs9IDI7CisJfQorCisJZ3JhcGgtPm1hcHBpbmdbbWFwcGluZ19pZHhdID0gaTsKIH0KIAogc3RhdGljIHZvaWQgZ3JhcGhfdXBkYXRlX2NvbHVtbnMoc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGgpCiB7CiAJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnQ7CiAJaW50IG1heF9uZXdfY29sdW1uczsKLQlpbnQgbWFwcGluZ19pZHg7CiAJaW50IGksIHNlZW5fdGhpcywgaXNfY29tbWl0X2luX2NvbHVtbnM7CiAKIAkvKgpAQCAtNTMyLDYgKzYyMCwxMCBAQAogCWZvciAoaSA9IDA7IGkgPCBncmFwaC0+bWFwcGluZ19zaXplOyBpKyspCiAJCWdyYXBoLT5tYXBwaW5nW2ldID0gLTE7CiAKKwlncmFwaC0+d2lkdGggPSAwOworCWdyYXBoLT5wcmV2X2VkZ2VzX2FkZGVkID0gZ3JhcGgtPmVkZ2VzX2FkZGVkOworCWdyYXBoLT5lZGdlc19hZGRlZCA9IDA7CisKIAkvKgogCSAqIFBvcHVsYXRlIGdyYXBoLT5uZXdfY29sdW1ucyBhbmQgZ3JhcGgtPm1hcHBpbmcKIAkgKgpAQCAtNTQyLDcgKzYzNCw2IEBACiAJICogc3VwcG9zZWQgdG8gZW5kIHVwIGFmdGVyIHRoZSBjb2xsYXBzaW5nIGlzIHBlcmZvcm1lZC4KIAkgKi8KIAlzZWVuX3RoaXMgPSAwOwotCW1hcHBpbmdfaWR4ID0gMDsKIAlpc19jb21taXRfaW5fY29sdW1ucyA9IDE7CiAJZm9yIChpID0gMDsgaSA8PSBncmFwaC0+bnVtX2NvbHVtbnM7IGkrKykgewogCQlzdHJ1Y3QgY29tbWl0ICpjb2xfY29tbWl0OwpAQCAtNTU2LDkgKzY0Nyw5IEBACiAJCX0KIAogCQlpZiAoY29sX2NvbW1pdCA9PSBncmFwaC0+Y29tbWl0KSB7Ci0JCQlpbnQgb2xkX21hcHBpbmdfaWR4ID0gbWFwcGluZ19pZHg7CiAJCQlzZWVuX3RoaXMgPSAxOwogCQkJZ3JhcGgtPmNvbW1pdF9pbmRleCA9IGk7CisJCQlncmFwaC0+bWVyZ2VfbGF5b3V0ID0gLTE7CiAJCQlmb3IgKHBhcmVudCA9IGZpcnN0X2ludGVyZXN0aW5nX3BhcmVudChncmFwaCk7CiAJCQkgICAgIHBhcmVudDsKIAkJCSAgICAgcGFyZW50ID0gbmV4dF9pbnRlcmVzdGluZ19wYXJlbnQoZ3JhcGgsIHBhcmVudCkpIHsKQEAgLTU3MSwyMSArNjYyLDE4IEBACiAJCQkJICAgICFpc19jb21taXRfaW5fY29sdW1ucykgewogCQkJCQlncmFwaF9pbmNyZW1lbnRfY29sdW1uX2NvbG9yKGdyYXBoKTsKIAkJCQl9Ci0JCQkJZ3JhcGhfaW5zZXJ0X2ludG9fbmV3X2NvbHVtbnMoZ3JhcGgsCi0JCQkJCQkJICAgICAgcGFyZW50LT5pdGVtLAotCQkJCQkJCSAgICAgICZtYXBwaW5nX2lkeCk7CisJCQkJZ3JhcGhfaW5zZXJ0X2ludG9fbmV3X2NvbHVtbnMoZ3JhcGgsIHBhcmVudC0+aXRlbSwgaSk7CiAJCQl9CiAJCQkvKgotCQkJICogV2UgYWx3YXlzIG5lZWQgdG8gaW5jcmVtZW50IG1hcHBpbmdfaWR4IGJ5IGF0CisJCQkgKiBXZSBhbHdheXMgbmVlZCB0byBpbmNyZW1lbnQgZ3JhcGgtPndpZHRoIGJ5IGF0CiAJCQkgKiBsZWFzdCAyLCBldmVuIGlmIGl0IGhhcyBubyBpbnRlcmVzdGluZyBwYXJlbnRzLgogCQkJICogVGhlIGN1cnJlbnQgY29tbWl0IGFsd2F5cyB0YWtlcyB1cCBhdCBsZWFzdCAyCiAJCQkgKiBzcGFjZXMuCiAJCQkgKi8KLQkJCWlmIChtYXBwaW5nX2lkeCA9PSBvbGRfbWFwcGluZ19pZHgpCi0JCQkJbWFwcGluZ19pZHggKz0gMjsKKwkJCWlmIChncmFwaC0+bnVtX3BhcmVudHMgPT0gMCkKKwkJCQlncmFwaC0+d2lkdGggKz0gMjsKIAkJfSBlbHNlIHsKLQkJCWdyYXBoX2luc2VydF9pbnRvX25ld19jb2x1bW5zKGdyYXBoLCBjb2xfY29tbWl0LAotCQkJCQkJICAgICAgJm1hcHBpbmdfaWR4KTsKKwkJCWdyYXBoX2luc2VydF9pbnRvX25ld19jb2x1bW5zKGdyYXBoLCBjb2xfY29tbWl0LCAtMSk7CiAJCX0KIAl9CiAKQEAgLTU5NSwxMSArNjgzLDQzIEBACiAJd2hpbGUgKGdyYXBoLT5tYXBwaW5nX3NpemUgPiAxICYmCiAJICAgICAgIGdyYXBoLT5tYXBwaW5nW2dyYXBoLT5tYXBwaW5nX3NpemUgLSAxXSA8IDApCiAJCWdyYXBoLT5tYXBwaW5nX3NpemUtLTsKK30KIAorc3RhdGljIGludCBncmFwaF9udW1fZGFzaGVkX3BhcmVudHMoc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGgpCit7CisJcmV0dXJuIGdyYXBoLT5udW1fcGFyZW50cyArIGdyYXBoLT5tZXJnZV9sYXlvdXQgLSAzOworfQorCitzdGF0aWMgaW50IGdyYXBoX251bV9leHBhbnNpb25fcm93cyhzdHJ1Y3QgZ2l0X2dyYXBoICpncmFwaCkKK3sKIAkvKgotCSAqIENvbXB1dGUgZ3JhcGgtPndpZHRoIGZvciB0aGlzIGNvbW1pdAorCSAqIE5vcm1hbGx5LCB3ZSBuZWVkIHR3byBleHBhbnNpb24gcm93cyBmb3IgZWFjaCBkYXNoZWQgcGFyZW50IGxpbmUgZnJvbQorCSAqIGFuIG9jdG9wdXMgbWVyZ2U6CisJICoKKwkgKiAJCXwgKgorCSAqIAkJfCB8XAorCSAqIAkJfCB8IFwKKwkgKiAJCXwgfCAgXAorCSAqIAkJfCAqLS4gXAorCSAqIAkJfCB8XCBcIFwKKwkgKgorCSAqIElmIHRoZSBtZXJnZSBpcyBza2V3ZWQgdG8gdGhlIGxlZnQsIHRoZW4gaXRzIHBhcmVudHMgb2NjdXB5IG9uZSBsZXNzCisJICogY29sdW1uLCBhbmQgd2UgZG9uJ3QgbmVlZCBhcyBtYW55IGV4cGFuc2lvbiByb3dzIHRvIHJvdXRlIGFyb3VuZCBpdDsKKwkgKiBpbiBzb21lIGNhc2VzIHRoYXQgbWVhbnMgd2UgZG9uJ3QgbmVlZCBhbnkgZXhwYW5zaW9uIHJvd3MgYXQgYWxsOgorCSAqCisJICogCQl8ICoKKwkgKiAJCXwgfFwKKwkgKiAJCXwgKiBcCisJICogCQl8L3xcIFwKIAkgKi8KLQlncmFwaF91cGRhdGVfd2lkdGgoZ3JhcGgsIGlzX2NvbW1pdF9pbl9jb2x1bW5zKTsKKwlyZXR1cm4gZ3JhcGhfbnVtX2Rhc2hlZF9wYXJlbnRzKGdyYXBoKSAqIDI7Cit9CisKK3N0YXRpYyBpbnQgZ3JhcGhfbmVlZHNfcHJlX2NvbW1pdF9saW5lKHN0cnVjdCBnaXRfZ3JhcGggKmdyYXBoKQoreworCXJldHVybiBncmFwaC0+bnVtX3BhcmVudHMgPj0gMyAmJgorCSAgICAgICBncmFwaC0+Y29tbWl0X2luZGV4IDwgKGdyYXBoLT5udW1fY29sdW1ucyAtIDEpICYmCisJICAgICAgIGdyYXBoLT5leHBhbnNpb25fcm93IDwgZ3JhcGhfbnVtX2V4cGFuc2lvbl9yb3dzKGdyYXBoKTsKIH0KIAogdm9pZCBncmFwaF91cGRhdGUoc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGgsIHN0cnVjdCBjb21taXQgKmNvbW1pdCkKQEAgLTY1Nyw4ICs3NzcsNyBAQAogCSAqLwogCWlmIChncmFwaC0+c3RhdGUgIT0gR1JBUEhfUEFERElORykKIAkJZ3JhcGgtPnN0YXRlID0gR1JBUEhfU0tJUDsKLQllbHNlIGlmIChncmFwaC0+bnVtX3BhcmVudHMgPj0gMyAmJgotCQkgZ3JhcGgtPmNvbW1pdF9pbmRleCA8IChncmFwaC0+bnVtX2NvbHVtbnMgLSAxKSkKKwllbHNlIGlmIChncmFwaF9uZWVkc19wcmVfY29tbWl0X2xpbmUoZ3JhcGgpKQogCQlncmFwaC0+c3RhdGUgPSBHUkFQSF9QUkVfQ09NTUlUOwogCWVsc2UKIAkJZ3JhcGgtPnN0YXRlID0gR1JBUEhfQ09NTUlUOwpAQCAtNjg2LDggKzgwNSw3IEBACiAJcmV0dXJuIDE7CiB9CiAKLXN0YXRpYyB2b2lkIGdyYXBoX3BhZF9ob3Jpem9udGFsbHkoc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGgsIHN0cnVjdCBzdHJidWYgKnNiLAotCQkJCSAgIGludCBjaGFyc193cml0dGVuKQorc3RhdGljIHZvaWQgZ3JhcGhfcGFkX2hvcml6b250YWxseShzdHJ1Y3QgZ2l0X2dyYXBoICpncmFwaCwgc3RydWN0IGdyYXBoX2xpbmUgKmxpbmUpCiB7CiAJLyoKIAkgKiBBZGQgYWRkaXRpb25hbCBzcGFjZXMgdG8gdGhlIGVuZCBvZiB0aGUgc3RyYnVmLCBzbyB0aGF0IGFsbApAQCAtNjk2LDM0ICs4MTQsMjIgQEAKIAkgKiBUaGlzIHdheSwgZmllbGRzIHByaW50ZWQgdG8gdGhlIHJpZ2h0IG9mIHRoZSBncmFwaCB3aWxsIHJlbWFpbgogCSAqIGFsaWduZWQgZm9yIHRoZSBlbnRpcmUgY29tbWl0LgogCSAqLwotCWlmIChjaGFyc193cml0dGVuIDwgZ3JhcGgtPndpZHRoKQotCQlzdHJidWZfYWRkY2hhcnMoc2IsICcgJywgZ3JhcGgtPndpZHRoIC0gY2hhcnNfd3JpdHRlbik7CisJaWYgKGxpbmUtPndpZHRoIDwgZ3JhcGgtPndpZHRoKQorCQlncmFwaF9saW5lX2FkZGNoYXJzKGxpbmUsICcgJywgZ3JhcGgtPndpZHRoIC0gbGluZS0+d2lkdGgpOwogfQogCiBzdGF0aWMgdm9pZCBncmFwaF9vdXRwdXRfcGFkZGluZ19saW5lKHN0cnVjdCBnaXRfZ3JhcGggKmdyYXBoLAotCQkJCSAgICAgIHN0cnVjdCBzdHJidWYgKnNiKQorCQkJCSAgICAgIHN0cnVjdCBncmFwaF9saW5lICpsaW5lKQogewogCWludCBpOwogCiAJLyoKLQkgKiBXZSBjb3VsZCBjb25jZWl2YWJsZSBiZSBjYWxsZWQgd2l0aCBhIE5VTEwgY29tbWl0Ci0JICogaWYgb3VyIGNhbGxlciBoYXMgYSBidWcsIGFuZCBpbnZva2VzIGdyYXBoX25leHRfbGluZSgpCi0JICogaW1tZWRpYXRlbHkgYWZ0ZXIgZ3JhcGhfaW5pdCgpLCB3aXRob3V0IGZpcnN0IGNhbGxpbmcKLQkgKiBncmFwaF91cGRhdGUoKS4gIFJldHVybiB3aXRob3V0IG91dHB1dHRpbmcgYW55dGhpbmcgaW4gdGhpcwotCSAqIGNhc2UuCi0JICovCi0JaWYgKCFncmFwaC0+Y29tbWl0KQotCQlyZXR1cm47Ci0KLQkvKgogCSAqIE91dHB1dCBhIHBhZGRpbmcgcm93LCB0aGF0IGxlYXZlcyBhbGwgYnJhbmNoIGxpbmVzIHVuY2hhbmdlZAogCSAqLwogCWZvciAoaSA9IDA7IGkgPCBncmFwaC0+bnVtX25ld19jb2x1bW5zOyBpKyspIHsKLQkJc3RyYnVmX3dyaXRlX2NvbHVtbihzYiwgJmdyYXBoLT5uZXdfY29sdW1uc1tpXSwgJ3wnKTsKLQkJc3RyYnVmX2FkZGNoKHNiLCAnICcpOworCQlncmFwaF9saW5lX3dyaXRlX2NvbHVtbihsaW5lLCAmZ3JhcGgtPm5ld19jb2x1bW5zW2ldLCAnfCcpOworCQlncmFwaF9saW5lX2FkZGNoKGxpbmUsICcgJyk7CiAJfQotCi0JZ3JhcGhfcGFkX2hvcml6b250YWxseShncmFwaCwgc2IsIGdyYXBoLT5udW1fbmV3X2NvbHVtbnMgKiAyKTsKIH0KIAogCkBAIC03MzMsMjggKzgzOSwyNCBAQAogfQogCiAKLXN0YXRpYyB2b2lkIGdyYXBoX291dHB1dF9za2lwX2xpbmUoc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGgsIHN0cnVjdCBzdHJidWYgKnNiKQorc3RhdGljIHZvaWQgZ3JhcGhfb3V0cHV0X3NraXBfbGluZShzdHJ1Y3QgZ2l0X2dyYXBoICpncmFwaCwgc3RydWN0IGdyYXBoX2xpbmUgKmxpbmUpCiB7CiAJLyoKIAkgKiBPdXRwdXQgYW4gZWxsaXBzaXMgdG8gaW5kaWNhdGUgdGhhdCBhIHBvcnRpb24KIAkgKiBvZiB0aGUgZ3JhcGggaXMgbWlzc2luZy4KIAkgKi8KLQlzdHJidWZfYWRkc3RyKHNiLCAiLi4uIik7Ci0JZ3JhcGhfcGFkX2hvcml6b250YWxseShncmFwaCwgc2IsIDMpOworCWdyYXBoX2xpbmVfYWRkc3RyKGxpbmUsICIuLi4iKTsKIAotCWlmIChncmFwaC0+bnVtX3BhcmVudHMgPj0gMyAmJgotCSAgICBncmFwaC0+Y29tbWl0X2luZGV4IDwgKGdyYXBoLT5udW1fY29sdW1ucyAtIDEpKQorCWlmIChncmFwaF9uZWVkc19wcmVfY29tbWl0X2xpbmUoZ3JhcGgpKQogCQlncmFwaF91cGRhdGVfc3RhdGUoZ3JhcGgsIEdSQVBIX1BSRV9DT01NSVQpOwogCWVsc2UKIAkJZ3JhcGhfdXBkYXRlX3N0YXRlKGdyYXBoLCBHUkFQSF9DT01NSVQpOwogfQogCiBzdGF0aWMgdm9pZCBncmFwaF9vdXRwdXRfcHJlX2NvbW1pdF9saW5lKHN0cnVjdCBnaXRfZ3JhcGggKmdyYXBoLAotCQkJCQkgc3RydWN0IHN0cmJ1ZiAqc2IpCisJCQkJCSBzdHJ1Y3QgZ3JhcGhfbGluZSAqbGluZSkKIHsKLQlpbnQgbnVtX2V4cGFuc2lvbl9yb3dzOwogCWludCBpLCBzZWVuX3RoaXM7Ci0JaW50IGNoYXJzX3dyaXR0ZW47CiAKIAkvKgogCSAqIFRoaXMgZnVuY3Rpb24gZm9ybWF0cyBhIHJvdyB0aGF0IGluY3JlYXNlcyB0aGUgc3BhY2UgYXJvdW5kIGEgY29tbWl0CkBAIC03NjQsMjcgKzg2NiwyNCBAQAogCSAqIFdlIG5lZWQgMiBleHRyYSByb3dzIGZvciBldmVyeSBwYXJlbnQgb3ZlciAyLgogCSAqLwogCWFzc2VydChncmFwaC0+bnVtX3BhcmVudHMgPj0gMyk7Ci0JbnVtX2V4cGFuc2lvbl9yb3dzID0gKGdyYXBoLT5udW1fcGFyZW50cyAtIDIpICogMjsKIAogCS8qCiAJICogZ3JhcGgtPmV4cGFuc2lvbl9yb3cgdHJhY2tzIHRoZSBjdXJyZW50IGV4cGFuc2lvbiByb3cgd2UgYXJlIG9uLgogCSAqIEl0IHNob3VsZCBiZSBpbiB0aGUgcmFuZ2UgWzAsIG51bV9leHBhbnNpb25fcm93cyAtIDFdCiAJICovCiAJYXNzZXJ0KDAgPD0gZ3JhcGgtPmV4cGFuc2lvbl9yb3cgJiYKLQkgICAgICAgZ3JhcGgtPmV4cGFuc2lvbl9yb3cgPCBudW1fZXhwYW5zaW9uX3Jvd3MpOworCSAgICAgICBncmFwaC0+ZXhwYW5zaW9uX3JvdyA8IGdyYXBoX251bV9leHBhbnNpb25fcm93cyhncmFwaCkpOwogCiAJLyoKIAkgKiBPdXRwdXQgdGhlIHJvdwogCSAqLwogCXNlZW5fdGhpcyA9IDA7Ci0JY2hhcnNfd3JpdHRlbiA9IDA7CiAJZm9yIChpID0gMDsgaSA8IGdyYXBoLT5udW1fY29sdW1uczsgaSsrKSB7CiAJCXN0cnVjdCBjb2x1bW4gKmNvbCA9ICZncmFwaC0+Y29sdW1uc1tpXTsKIAkJaWYgKGNvbC0+Y29tbWl0ID09IGdyYXBoLT5jb21taXQpIHsKIAkJCXNlZW5fdGhpcyA9IDE7Ci0JCQlzdHJidWZfd3JpdGVfY29sdW1uKHNiLCBjb2wsICd8Jyk7Ci0JCQlzdHJidWZfYWRkY2hhcnMoc2IsICcgJywgZ3JhcGgtPmV4cGFuc2lvbl9yb3cpOwotCQkJY2hhcnNfd3JpdHRlbiArPSAxICsgZ3JhcGgtPmV4cGFuc2lvbl9yb3c7CisJCQlncmFwaF9saW5lX3dyaXRlX2NvbHVtbihsaW5lLCBjb2wsICd8Jyk7CisJCQlncmFwaF9saW5lX2FkZGNoYXJzKGxpbmUsICcgJywgZ3JhcGgtPmV4cGFuc2lvbl9yb3cpOwogCQl9IGVsc2UgaWYgKHNlZW5fdGhpcyAmJiAoZ3JhcGgtPmV4cGFuc2lvbl9yb3cgPT0gMCkpIHsKIAkJCS8qCiAJCQkgKiBUaGlzIGlzIHRoZSBmaXJzdCBsaW5lIG9mIHRoZSBwcmUtY29tbWl0IG91dHB1dC4KQEAgLTc5NywzMyArODk2LDI3IEBACiAJCQkgKi8KIAkJCWlmIChncmFwaC0+cHJldl9zdGF0ZSA9PSBHUkFQSF9QT1NUX01FUkdFICYmCiAJCQkgICAgZ3JhcGgtPnByZXZfY29tbWl0X2luZGV4IDwgaSkKLQkJCQlzdHJidWZfd3JpdGVfY29sdW1uKHNiLCBjb2wsICdcXCcpOworCQkJCWdyYXBoX2xpbmVfd3JpdGVfY29sdW1uKGxpbmUsIGNvbCwgJ1xcJyk7CiAJCQllbHNlCi0JCQkJc3RyYnVmX3dyaXRlX2NvbHVtbihzYiwgY29sLCAnfCcpOwotCQkJY2hhcnNfd3JpdHRlbisrOworCQkJCWdyYXBoX2xpbmVfd3JpdGVfY29sdW1uKGxpbmUsIGNvbCwgJ3wnKTsKIAkJfSBlbHNlIGlmIChzZWVuX3RoaXMgJiYgKGdyYXBoLT5leHBhbnNpb25fcm93ID4gMCkpIHsKLQkJCXN0cmJ1Zl93cml0ZV9jb2x1bW4oc2IsIGNvbCwgJ1xcJyk7Ci0JCQljaGFyc193cml0dGVuKys7CisJCQlncmFwaF9saW5lX3dyaXRlX2NvbHVtbihsaW5lLCBjb2wsICdcXCcpOwogCQl9IGVsc2UgewotCQkJc3RyYnVmX3dyaXRlX2NvbHVtbihzYiwgY29sLCAnfCcpOwotCQkJY2hhcnNfd3JpdHRlbisrOworCQkJZ3JhcGhfbGluZV93cml0ZV9jb2x1bW4obGluZSwgY29sLCAnfCcpOwogCQl9Ci0JCXN0cmJ1Zl9hZGRjaChzYiwgJyAnKTsKLQkJY2hhcnNfd3JpdHRlbisrOworCQlncmFwaF9saW5lX2FkZGNoKGxpbmUsICcgJyk7CiAJfQogCi0JZ3JhcGhfcGFkX2hvcml6b250YWxseShncmFwaCwgc2IsIGNoYXJzX3dyaXR0ZW4pOwotCiAJLyoKIAkgKiBJbmNyZW1lbnQgZ3JhcGgtPmV4cGFuc2lvbl9yb3csCiAJICogYW5kIG1vdmUgdG8gc3RhdGUgR1JBUEhfQ09NTUlUIGlmIG5lY2Vzc2FyeQogCSAqLwogCWdyYXBoLT5leHBhbnNpb25fcm93Kys7Ci0JaWYgKGdyYXBoLT5leHBhbnNpb25fcm93ID49IG51bV9leHBhbnNpb25fcm93cykKKwlpZiAoIWdyYXBoX25lZWRzX3ByZV9jb21taXRfbGluZShncmFwaCkpCiAJCWdyYXBoX3VwZGF0ZV9zdGF0ZShncmFwaCwgR1JBUEhfQ09NTUlUKTsKIH0KIAotc3RhdGljIHZvaWQgZ3JhcGhfb3V0cHV0X2NvbW1pdF9jaGFyKHN0cnVjdCBnaXRfZ3JhcGggKmdyYXBoLCBzdHJ1Y3Qgc3RyYnVmICpzYikKK3N0YXRpYyB2b2lkIGdyYXBoX291dHB1dF9jb21taXRfY2hhcihzdHJ1Y3QgZ2l0X2dyYXBoICpncmFwaCwgc3RydWN0IGdyYXBoX2xpbmUgKmxpbmUpCiB7CiAJLyoKIAkgKiBGb3IgYm91bmRhcnkgY29tbWl0cywgcHJpbnQgJ28nCkBAIC04MzEsNzIgKzkyNCw2NyBAQAogCSAqLwogCWlmIChncmFwaC0+Y29tbWl0LT5vYmplY3QuZmxhZ3MgJiBCT1VOREFSWSkgewogCQlhc3NlcnQoZ3JhcGgtPnJldnMtPmJvdW5kYXJ5KTsKLQkJc3RyYnVmX2FkZGNoKHNiLCAnbycpOworCQlncmFwaF9saW5lX2FkZGNoKGxpbmUsICdvJyk7CiAJCXJldHVybjsKIAl9CiAKIAkvKgogCSAqIGdldF9yZXZpc2lvbl9tYXJrKCkgaGFuZGxlcyBhbGwgb3RoZXIgY2FzZXMgd2l0aG91dCBhc3NlcnQoKQogCSAqLwotCXN0cmJ1Zl9hZGRzdHIoc2IsIGdldF9yZXZpc2lvbl9tYXJrKGdyYXBoLT5yZXZzLCBncmFwaC0+Y29tbWl0KSk7CisJZ3JhcGhfbGluZV9hZGRzdHIobGluZSwgZ2V0X3JldmlzaW9uX21hcmsoZ3JhcGgtPnJldnMsIGdyYXBoLT5jb21taXQpKTsKIH0KIAogLyoKLSAqIERyYXcgdGhlIGhvcml6b250YWwgZGFzaGVzIG9mIGFuIG9jdG9wdXMgbWVyZ2UgYW5kIHJldHVybiB0aGUgbnVtYmVyIG9mCi0gKiBjaGFyYWN0ZXJzIHdyaXR0ZW4uCisgKiBEcmF3IHRoZSBob3Jpem9udGFsIGRhc2hlcyBvZiBhbiBvY3RvcHVzIG1lcmdlLgogICovCi1zdGF0aWMgaW50IGdyYXBoX2RyYXdfb2N0b3B1c19tZXJnZShzdHJ1Y3QgZ2l0X2dyYXBoICpncmFwaCwKLQkJCQkgICAgc3RydWN0IHN0cmJ1ZiAqc2IpCitzdGF0aWMgdm9pZCBncmFwaF9kcmF3X29jdG9wdXNfbWVyZ2Uoc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGgsIHN0cnVjdCBncmFwaF9saW5lICpsaW5lKQogewogCS8qCi0JICogSGVyZSBkYXNobGVzc19wYXJlbnRzIHJlcHJlc2VudHMgdGhlIG51bWJlciBvZiBwYXJlbnRzIHdoaWNoIGRvbid0Ci0JICogbmVlZCB0byBoYXZlIGRhc2hlcyAodGhlIGVkZ2VzIGxhYmVsZWQgIjAiIGFuZCAiMSIpLiAgQW5kCi0JICogZGFzaGZ1bF9wYXJlbnRzIGFyZSB0aGUgcmVtYWluaW5nIG9uZXMuCisJICogVGhlIHBhcmVudHMgb2YgYSBtZXJnZSBjb21taXQgY2FuIGJlIGFyYml0cmFyaWx5IHJlb3JkZXJlZCBhcyB0aGV5CisJICogYXJlIG1hcHBlZCBvbnRvIGRpc3BsYXkgY29sdW1ucywgZm9yIGV4YW1wbGUgdGhpcyBpcyBhIHZhbGlkIG1lcmdlOgogCSAqCi0JICogfCAqLS0tLgotCSAqIHwgfFwgXCBcCi0JICogfCB8IHwgfCB8Ci0JICogeCAwIDEgMiAzCisJICoJfCB8ICotLS0uCisJICoJfCB8IHxcIFwgXAorCSAqCXwgfCB8LyAvIC8KKwkgKgl8IHwvfCB8IC8KKwkgKgl8IHxffF98LworCSAqCXwvfCB8IHwKKwkgKgkzIDEgMCAyCiAJICoKKwkgKiBUaGUgbnVtYmVycyBkZW5vdGUgd2hpY2ggcGFyZW50IG9mIHRoZSBtZXJnZSBlYWNoIHZpc3VhbCBjb2x1bW4KKwkgKiBjb3JyZXNwb25kcyB0bzsgd2UgY2FuJ3QgYXNzdW1lIHRoYXQgdGhlIHBhcmVudHMgd2lsbCBpbml0aWFsbHkKKwkgKiBkaXNwbGF5IGluIHRoZSBvcmRlciBnaXZlbiBieSBuZXdfY29sdW1ucy4KKwkgKgorCSAqIFRvIGZpbmQgdGhlIHJpZ2h0IGNvbG9yIGZvciBlYWNoIGRhc2gsIHdlIG5lZWQgdG8gY29uc3VsdCB0aGUKKwkgKiBtYXBwaW5nIGFycmF5LCBzdGFydGluZyBmcm9tIHRoZSBjb2x1bW4gMiBwbGFjZXMgdG8gdGhlIHJpZ2h0IG9mIHRoZQorCSAqIG1lcmdlIGNvbW1pdCwgYW5kIHVzZSB0aGF0IHRvIGZpbmQgb3V0IHdoaWNoIGxvZ2ljYWwgY29sdW1uIGVhY2gKKwkgKiBlZGdlIHdpbGwgY29sbGFwc2UgdG8uCisJICoKKwkgKiBDb21taXRzIGFyZSByZW5kZXJlZCBvbmNlIGFsbCBlZGdlcyBoYXZlIGNvbGxhcHNlZCB0byB0aGVpciBjb3JyZWN0CisJICogbG9nY2lhbCBjb2x1bW4sIHNvIGNvbW1pdF9pbmRleCBnaXZlcyB1cyB0aGUgcmlnaHQgdmlzdWFsIG9mZnNldCBmb3IKKwkgKiB0aGUgbWVyZ2UgY29tbWl0LgogCSAqLwotCWNvbnN0IGludCBkYXNobGVzc19wYXJlbnRzID0gMjsKLQlpbnQgZGFzaGZ1bF9wYXJlbnRzID0gZ3JhcGgtPm51bV9wYXJlbnRzIC0gZGFzaGxlc3NfcGFyZW50czsKIAotCS8qCi0JICogVXN1YWxseSwgd2UgYWRkIG9uZSBuZXcgY29sdW1uIGZvciBlYWNoIHBhcmVudCAobGlrZSB0aGUgZGlhZ3JhbQotCSAqIGFib3ZlKSBidXQgc29tZXRpbWVzIHRoZSBmaXJzdCBwYXJlbnQgZ29lcyBpbnRvIGFuIGV4aXN0aW5nIGNvbHVtbiwKLQkgKiBsaWtlIHRoaXM6Ci0JICoKLQkgKiB8ICotLS0uCi0JICogfCB8XCBcIFwKLQkgKiB8LyAvIC8gLwotCSAqIHggMCAxIDIKLQkgKgotCSAqIEluIHdoaWNoIGNhc2UgdGhlIG51bWJlciBvZiBwYXJlbnRzIHdpbGwgYmUgb25lIGdyZWF0ZXIgdGhhbiB0aGUKLQkgKiBudW1iZXIgb2YgYWRkZWQgY29sdW1ucy4KLQkgKi8KLQlpbnQgYWRkZWRfY29scyA9IChncmFwaC0+bnVtX25ld19jb2x1bW5zIC0gZ3JhcGgtPm51bV9jb2x1bW5zKTsKLQlpbnQgcGFyZW50X2luX29sZF9jb2xzID0gZ3JhcGgtPm51bV9wYXJlbnRzIC0gYWRkZWRfY29sczsKKwlpbnQgaSwgajsKKwlzdHJ1Y3QgY29sdW1uICpjb2w7CiAKLQkvKgotCSAqIEluIGJvdGggY2FzZXMsIGNvbW1pdF9pbmRleCBjb3JyZXNwb25kcyB0byB0aGUgZWRnZSBsYWJlbGVkICIwIi4KLQkgKi8KLQlpbnQgZmlyc3RfY29sID0gZ3JhcGgtPmNvbW1pdF9pbmRleCArIGRhc2hsZXNzX3BhcmVudHMKLQkgICAgLSBwYXJlbnRfaW5fb2xkX2NvbHM7CisJaW50IGRhc2hlZF9wYXJlbnRzID0gZ3JhcGhfbnVtX2Rhc2hlZF9wYXJlbnRzKGdyYXBoKTsKIAotCWludCBpOwotCWZvciAoaSA9IDA7IGkgPCBkYXNoZnVsX3BhcmVudHM7IGkrKykgewotCQlzdHJidWZfd3JpdGVfY29sdW1uKHNiLCAmZ3JhcGgtPm5ld19jb2x1bW5zW2krZmlyc3RfY29sXSwgJy0nKTsKLQkJc3RyYnVmX3dyaXRlX2NvbHVtbihzYiwgJmdyYXBoLT5uZXdfY29sdW1uc1tpK2ZpcnN0X2NvbF0sCi0JCQkJICAgIGkgPT0gZGFzaGZ1bF9wYXJlbnRzLTEgPyAnLicgOiAnLScpOworCWZvciAoaSA9IDA7IGkgPCBkYXNoZWRfcGFyZW50czsgaSsrKSB7CisJCWogPSBncmFwaC0+bWFwcGluZ1soZ3JhcGgtPmNvbW1pdF9pbmRleCArIGkgKyAyKSAqIDJdOworCQljb2wgPSAmZ3JhcGgtPm5ld19jb2x1bW5zW2pdOworCisJCWdyYXBoX2xpbmVfd3JpdGVfY29sdW1uKGxpbmUsIGNvbCwgJy0nKTsKKwkJZ3JhcGhfbGluZV93cml0ZV9jb2x1bW4obGluZSwgY29sLCAoaSA9PSBkYXNoZWRfcGFyZW50cyAtIDEpID8gJy4nIDogJy0nKTsKIAl9Ci0JcmV0dXJuIDIgKiBkYXNoZnVsX3BhcmVudHM7CisKKwlyZXR1cm47CiB9CiAKLXN0YXRpYyB2b2lkIGdyYXBoX291dHB1dF9jb21taXRfbGluZShzdHJ1Y3QgZ2l0X2dyYXBoICpncmFwaCwgc3RydWN0IHN0cmJ1ZiAqc2IpCitzdGF0aWMgdm9pZCBncmFwaF9vdXRwdXRfY29tbWl0X2xpbmUoc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGgsIHN0cnVjdCBncmFwaF9saW5lICpsaW5lKQogewogCWludCBzZWVuX3RoaXMgPSAwOwotCWludCBpLCBjaGFyc193cml0dGVuOworCWludCBpOwogCiAJLyoKIAkgKiBPdXRwdXQgdGhlIHJvdyBjb250YWluaW5nIHRoaXMgY29tbWl0CkBAIC05MDYsNyArOTk0LDYgQEAKIAkgKiBjaGlsZHJlbiB0aGF0IHdlIGhhdmUgYWxyZWFkeSBwcm9jZXNzZWQuKQogCSAqLwogCXNlZW5fdGhpcyA9IDA7Ci0JY2hhcnNfd3JpdHRlbiA9IDA7CiAJZm9yIChpID0gMDsgaSA8PSBncmFwaC0+bnVtX2NvbHVtbnM7IGkrKykgewogCQlzdHJ1Y3QgY29sdW1uICpjb2wgPSAmZ3JhcGgtPmNvbHVtbnNbaV07CiAJCXN0cnVjdCBjb21taXQgKmNvbF9jb21taXQ7CkBAIC05MjAsMTkgKzEwMDcsMTcgQEAKIAogCQlpZiAoY29sX2NvbW1pdCA9PSBncmFwaC0+Y29tbWl0KSB7CiAJCQlzZWVuX3RoaXMgPSAxOwotCQkJZ3JhcGhfb3V0cHV0X2NvbW1pdF9jaGFyKGdyYXBoLCBzYik7Ci0JCQljaGFyc193cml0dGVuKys7CisJCQlncmFwaF9vdXRwdXRfY29tbWl0X2NoYXIoZ3JhcGgsIGxpbmUpOwogCiAJCQlpZiAoZ3JhcGgtPm51bV9wYXJlbnRzID4gMikKLQkJCQljaGFyc193cml0dGVuICs9IGdyYXBoX2RyYXdfb2N0b3B1c19tZXJnZShncmFwaCwKLQkJCQkJCQkJCSAgc2IpOwotCQl9IGVsc2UgaWYgKHNlZW5fdGhpcyAmJiAoZ3JhcGgtPm51bV9wYXJlbnRzID4gMikpIHsKLQkJCXN0cmJ1Zl93cml0ZV9jb2x1bW4oc2IsIGNvbCwgJ1xcJyk7Ci0JCQljaGFyc193cml0dGVuKys7Ci0JCX0gZWxzZSBpZiAoc2Vlbl90aGlzICYmIChncmFwaC0+bnVtX3BhcmVudHMgPT0gMikpIHsKKwkJCQlncmFwaF9kcmF3X29jdG9wdXNfbWVyZ2UoZ3JhcGgsIGxpbmUpOworCQl9IGVsc2UgaWYgKHNlZW5fdGhpcyAmJiAoZ3JhcGgtPmVkZ2VzX2FkZGVkID4gMSkpIHsKKwkJCWdyYXBoX2xpbmVfd3JpdGVfY29sdW1uKGxpbmUsIGNvbCwgJ1xcJyk7CisJCX0gZWxzZSBpZiAoc2Vlbl90aGlzICYmIChncmFwaC0+ZWRnZXNfYWRkZWQgPT0gMSkpIHsKIAkJCS8qCi0JCQkgKiBUaGlzIGlzIGEgMi13YXkgbWVyZ2UgY29tbWl0LgotCQkJICogVGhlcmUgaXMgbm8gR1JBUEhfUFJFX0NPTU1JVCBzdGFnZSBmb3IgMi13YXkKKwkJCSAqIFRoaXMgaXMgZWl0aGVyIGEgcmlnaHQtc2tld2VkIDItd2F5IG1lcmdlCisJCQkgKiBjb21taXQsIG9yIGEgbGVmdC1za2V3ZWQgMy13YXkgbWVyZ2UuCisJCQkgKiBUaGVyZSBpcyBubyBHUkFQSF9QUkVfQ09NTUlUIHN0YWdlIGZvciBzdWNoCiAJCQkgKiBtZXJnZXMsIHNvIHRoaXMgaXMgdGhlIGZpcnN0IGxpbmUgb2Ygb3V0cHV0CiAJCQkgKiBmb3IgdGhpcyBjb21taXQuICBDaGVjayB0byBzZWUgd2hhdCB0aGUgcHJldmlvdXMKIAkJCSAqIGxpbmUgb2Ygb3V0cHV0IHdhcy4KQEAgLTk0NCwyMSArMTAyOSwyMSBAQAogCQkJICogbWFrZXMgdGhlIG91dHB1dCBsb29rIG5pY2VyLgogCQkJICovCiAJCQlpZiAoZ3JhcGgtPnByZXZfc3RhdGUgPT0gR1JBUEhfUE9TVF9NRVJHRSAmJgorCQkJICAgIGdyYXBoLT5wcmV2X2VkZ2VzX2FkZGVkID4gMCAmJgogCQkJICAgIGdyYXBoLT5wcmV2X2NvbW1pdF9pbmRleCA8IGkpCi0JCQkJc3RyYnVmX3dyaXRlX2NvbHVtbihzYiwgY29sLCAnXFwnKTsKKwkJCQlncmFwaF9saW5lX3dyaXRlX2NvbHVtbihsaW5lLCBjb2wsICdcXCcpOwogCQkJZWxzZQotCQkJCXN0cmJ1Zl93cml0ZV9jb2x1bW4oc2IsIGNvbCwgJ3wnKTsKLQkJCWNoYXJzX3dyaXR0ZW4rKzsKKwkJCQlncmFwaF9saW5lX3dyaXRlX2NvbHVtbihsaW5lLCBjb2wsICd8Jyk7CisJCX0gZWxzZSBpZiAoZ3JhcGgtPnByZXZfc3RhdGUgPT0gR1JBUEhfQ09MTEFQU0lORyAmJgorCQkJICAgZ3JhcGgtPm9sZF9tYXBwaW5nWzIgKiBpICsgMV0gPT0gaSAmJgorCQkJICAgZ3JhcGgtPm1hcHBpbmdbMiAqIGldIDwgaSkgeworCQkJZ3JhcGhfbGluZV93cml0ZV9jb2x1bW4obGluZSwgY29sLCAnLycpOwogCQl9IGVsc2UgewotCQkJc3RyYnVmX3dyaXRlX2NvbHVtbihzYiwgY29sLCAnfCcpOwotCQkJY2hhcnNfd3JpdHRlbisrOworCQkJZ3JhcGhfbGluZV93cml0ZV9jb2x1bW4obGluZSwgY29sLCAnfCcpOwogCQl9Ci0JCXN0cmJ1Zl9hZGRjaChzYiwgJyAnKTsKLQkJY2hhcnNfd3JpdHRlbisrOworCQlncmFwaF9saW5lX2FkZGNoKGxpbmUsICcgJyk7CiAJfQogCi0JZ3JhcGhfcGFkX2hvcml6b250YWxseShncmFwaCwgc2IsIGNoYXJzX3dyaXR0ZW4pOwotCiAJLyoKIAkgKiBVcGRhdGUgZ3JhcGgtPnN0YXRlCiAJICovCkBAIC05NzAsMjYgKzEwNTUsMTkgQEAKIAkJZ3JhcGhfdXBkYXRlX3N0YXRlKGdyYXBoLCBHUkFQSF9DT0xMQVBTSU5HKTsKIH0KIAotc3RhdGljIHN0cnVjdCBjb2x1bW4gKmZpbmRfbmV3X2NvbHVtbl9ieV9jb21taXQoc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGgsCi0JCQkJCQlzdHJ1Y3QgY29tbWl0ICpjb21taXQpCi17Ci0JaW50IGk7Ci0JZm9yIChpID0gMDsgaSA8IGdyYXBoLT5udW1fbmV3X2NvbHVtbnM7IGkrKykgewotCQlpZiAoZ3JhcGgtPm5ld19jb2x1bW5zW2ldLmNvbW1pdCA9PSBjb21taXQpCi0JCQlyZXR1cm4gJmdyYXBoLT5uZXdfY29sdW1uc1tpXTsKLQl9Ci0JcmV0dXJuIE5VTEw7Ci19Citjb25zdCBjaGFyIG1lcmdlX2NoYXJzW10gPSB7Jy8nLCAnfCcsICdcXCd9OwogCi1zdGF0aWMgdm9pZCBncmFwaF9vdXRwdXRfcG9zdF9tZXJnZV9saW5lKHN0cnVjdCBnaXRfZ3JhcGggKmdyYXBoLCBzdHJ1Y3Qgc3RyYnVmICpzYikKK3N0YXRpYyB2b2lkIGdyYXBoX291dHB1dF9wb3N0X21lcmdlX2xpbmUoc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGgsIHN0cnVjdCBncmFwaF9saW5lICpsaW5lKQogewogCWludCBzZWVuX3RoaXMgPSAwOwotCWludCBpLCBqLCBjaGFyc193cml0dGVuOworCWludCBpLCBqOworCisJc3RydWN0IGNvbW1pdF9saXN0ICpmaXJzdF9wYXJlbnQgPSBmaXJzdF9pbnRlcmVzdGluZ19wYXJlbnQoZ3JhcGgpOworCXN0cnVjdCBjb2x1bW4gKnBhcmVudF9jb2wgPSBOVUxMOwogCiAJLyoKIAkgKiBPdXRwdXQgdGhlIHBvc3QtbWVyZ2Ugcm93CiAJICovCi0JY2hhcnNfd3JpdHRlbiA9IDA7CiAJZm9yIChpID0gMDsgaSA8PSBncmFwaC0+bnVtX2NvbHVtbnM7IGkrKykgewogCQlzdHJ1Y3QgY29sdW1uICpjb2wgPSAmZ3JhcGgtPmNvbHVtbnNbaV07CiAJCXN0cnVjdCBjb21taXQgKmNvbF9jb21taXQ7CkBAIC0xMDA4LDM3ICsxMDg2LDQ5IEBACiAJCQkgKiBuZXdfY29sdW1ucyBhbmQgdXNlIHRob3NlIHRvIGZvcm1hdCB0aGUKIAkJCSAqIGVkZ2VzLgogCQkJICovCi0JCQlzdHJ1Y3QgY29tbWl0X2xpc3QgKnBhcmVudHMgPSBOVUxMOwotCQkJc3RydWN0IGNvbHVtbiAqcGFyX2NvbHVtbjsKKwkJCXN0cnVjdCBjb21taXRfbGlzdCAqcGFyZW50cyA9IGZpcnN0X3BhcmVudDsKKwkJCWludCBwYXJfY29sdW1uOworCQkJaW50IGlkeCA9IGdyYXBoLT5tZXJnZV9sYXlvdXQ7CisJCQljaGFyIGM7CiAJCQlzZWVuX3RoaXMgPSAxOwotCQkJcGFyZW50cyA9IGZpcnN0X2ludGVyZXN0aW5nX3BhcmVudChncmFwaCk7Ci0JCQlhc3NlcnQocGFyZW50cyk7Ci0JCQlwYXJfY29sdW1uID0gZmluZF9uZXdfY29sdW1uX2J5X2NvbW1pdChncmFwaCwgcGFyZW50cy0+aXRlbSk7Ci0JCQlhc3NlcnQocGFyX2NvbHVtbik7CiAKLQkJCXN0cmJ1Zl93cml0ZV9jb2x1bW4oc2IsIHBhcl9jb2x1bW4sICd8Jyk7Ci0JCQljaGFyc193cml0dGVuKys7Ci0JCQlmb3IgKGogPSAwOyBqIDwgZ3JhcGgtPm51bV9wYXJlbnRzIC0gMTsgaisrKSB7CisJCQlmb3IgKGogPSAwOyBqIDwgZ3JhcGgtPm51bV9wYXJlbnRzOyBqKyspIHsKKwkJCQlwYXJfY29sdW1uID0gZ3JhcGhfZmluZF9uZXdfY29sdW1uX2J5X2NvbW1pdChncmFwaCwgcGFyZW50cy0+aXRlbSk7CisJCQkJYXNzZXJ0KHBhcl9jb2x1bW4gPj0gMCk7CisKKwkJCQljID0gbWVyZ2VfY2hhcnNbaWR4XTsKKwkJCQlncmFwaF9saW5lX3dyaXRlX2NvbHVtbihsaW5lLCAmZ3JhcGgtPm5ld19jb2x1bW5zW3Bhcl9jb2x1bW5dLCBjKTsKKwkJCQlpZiAoaWR4ID09IDIpIHsKKwkJCQkJaWYgKGdyYXBoLT5lZGdlc19hZGRlZCA+IDAgfHwgaiA8IGdyYXBoLT5udW1fcGFyZW50cyAtIDEpCisJCQkJCQlncmFwaF9saW5lX2FkZGNoKGxpbmUsICcgJyk7CisJCQkJfSBlbHNlIHsKKwkJCQkJaWR4Kys7CisJCQkJfQogCQkJCXBhcmVudHMgPSBuZXh0X2ludGVyZXN0aW5nX3BhcmVudChncmFwaCwgcGFyZW50cyk7Ci0JCQkJYXNzZXJ0KHBhcmVudHMpOwotCQkJCXBhcl9jb2x1bW4gPSBmaW5kX25ld19jb2x1bW5fYnlfY29tbWl0KGdyYXBoLCBwYXJlbnRzLT5pdGVtKTsKLQkJCQlhc3NlcnQocGFyX2NvbHVtbik7Ci0JCQkJc3RyYnVmX3dyaXRlX2NvbHVtbihzYiwgcGFyX2NvbHVtbiwgJ1xcJyk7Ci0JCQkJc3RyYnVmX2FkZGNoKHNiLCAnICcpOwogCQkJfQotCQkJY2hhcnNfd3JpdHRlbiArPSBqICogMjsKLQkJfSBlbHNlIGlmIChzZWVuX3RoaXMpIHsKLQkJCXN0cmJ1Zl93cml0ZV9jb2x1bW4oc2IsIGNvbCwgJ1xcJyk7Ci0JCQlzdHJidWZfYWRkY2goc2IsICcgJyk7Ci0JCQljaGFyc193cml0dGVuICs9IDI7Ci0JCX0gZWxzZSB7Ci0JCQlzdHJidWZfd3JpdGVfY29sdW1uKHNiLCBjb2wsICd8Jyk7Ci0JCQlzdHJidWZfYWRkY2goc2IsICcgJyk7Ci0JCQljaGFyc193cml0dGVuICs9IDI7Ci0JCX0KLQl9CisJCQlpZiAoZ3JhcGgtPmVkZ2VzX2FkZGVkID09IDApCisJCQkJZ3JhcGhfbGluZV9hZGRjaChsaW5lLCAnICcpOwogCi0JZ3JhcGhfcGFkX2hvcml6b250YWxseShncmFwaCwgc2IsIGNoYXJzX3dyaXR0ZW4pOworCQl9IGVsc2UgaWYgKHNlZW5fdGhpcykgeworCQkJaWYgKGdyYXBoLT5lZGdlc19hZGRlZCA+IDApCisJCQkJZ3JhcGhfbGluZV93cml0ZV9jb2x1bW4obGluZSwgY29sLCAnXFwnKTsKKwkJCWVsc2UKKwkJCQlncmFwaF9saW5lX3dyaXRlX2NvbHVtbihsaW5lLCBjb2wsICd8Jyk7CisJCQlncmFwaF9saW5lX2FkZGNoKGxpbmUsICcgJyk7CisJCX0gZWxzZSB7CisJCQlncmFwaF9saW5lX3dyaXRlX2NvbHVtbihsaW5lLCBjb2wsICd8Jyk7CisJCQlpZiAoZ3JhcGgtPm1lcmdlX2xheW91dCAhPSAwIHx8IGkgIT0gZ3JhcGgtPmNvbW1pdF9pbmRleCAtIDEpIHsKKwkJCQlpZiAocGFyZW50X2NvbCkKKwkJCQkJZ3JhcGhfbGluZV93cml0ZV9jb2x1bW4oCisJCQkJCQlsaW5lLCBwYXJlbnRfY29sLCAnXycpOworCQkJCWVsc2UKKwkJCQkJZ3JhcGhfbGluZV9hZGRjaChsaW5lLCAnICcpOworCQkJfQorCQl9CisKKwkJaWYgKGNvbF9jb21taXQgPT0gZmlyc3RfcGFyZW50LT5pdGVtKQorCQkJcGFyZW50X2NvbCA9IGNvbDsKKwl9CiAKIAkvKgogCSAqIFVwZGF0ZSBncmFwaC0+c3RhdGUKQEAgLTEwNDksNyArMTEzOSw3IEBACiAJCWdyYXBoX3VwZGF0ZV9zdGF0ZShncmFwaCwgR1JBUEhfQ09MTEFQU0lORyk7CiB9CiAKLXN0YXRpYyB2b2lkIGdyYXBoX291dHB1dF9jb2xsYXBzaW5nX2xpbmUoc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGgsIHN0cnVjdCBzdHJidWYgKnNiKQorc3RhdGljIHZvaWQgZ3JhcGhfb3V0cHV0X2NvbGxhcHNpbmdfbGluZShzdHJ1Y3QgZ2l0X2dyYXBoICpncmFwaCwgc3RydWN0IGdyYXBoX2xpbmUgKmxpbmUpCiB7CiAJaW50IGk7CiAJc2hvcnQgdXNlZF9ob3Jpem9udGFsID0gMDsKQEAgLTEwNTcsMTMgKzExNDcsMTggQEAKIAlpbnQgaG9yaXpvbnRhbF9lZGdlX3RhcmdldCA9IC0xOwogCiAJLyoKLQkgKiBDbGVhciBvdXQgdGhlIG5ld19tYXBwaW5nIGFycmF5CisJICogU3dhcCB0aGUgbWFwcGluZyBhbmQgb2xkX21hcHBpbmcgYXJyYXlzCisJICovCisJU1dBUChncmFwaC0+bWFwcGluZywgZ3JhcGgtPm9sZF9tYXBwaW5nKTsKKworCS8qCisJICogQ2xlYXIgb3V0IHRoZSBtYXBwaW5nIGFycmF5CiAJICovCiAJZm9yIChpID0gMDsgaSA8IGdyYXBoLT5tYXBwaW5nX3NpemU7IGkrKykKLQkJZ3JhcGgtPm5ld19tYXBwaW5nW2ldID0gLTE7CisJCWdyYXBoLT5tYXBwaW5nW2ldID0gLTE7CiAKIAlmb3IgKGkgPSAwOyBpIDwgZ3JhcGgtPm1hcHBpbmdfc2l6ZTsgaSsrKSB7Ci0JCWludCB0YXJnZXQgPSBncmFwaC0+bWFwcGluZ1tpXTsKKwkJaW50IHRhcmdldCA9IGdyYXBoLT5vbGRfbWFwcGluZ1tpXTsKIAkJaWYgKHRhcmdldCA8IDApCiAJCQljb250aW51ZTsKIApAQCAtMTA4NCwxNCArMTE3OSwxNCBAQAogCQkJICogVGhpcyBjb2x1bW4gaXMgYWxyZWFkeSBpbiB0aGUKIAkJCSAqIGNvcnJlY3QgcGxhY2UKIAkJCSAqLwotCQkJYXNzZXJ0KGdyYXBoLT5uZXdfbWFwcGluZ1tpXSA9PSAtMSk7Ci0JCQlncmFwaC0+bmV3X21hcHBpbmdbaV0gPSB0YXJnZXQ7Ci0JCX0gZWxzZSBpZiAoZ3JhcGgtPm5ld19tYXBwaW5nW2kgLSAxXSA8IDApIHsKKwkJCWFzc2VydChncmFwaC0+bWFwcGluZ1tpXSA9PSAtMSk7CisJCQlncmFwaC0+bWFwcGluZ1tpXSA9IHRhcmdldDsKKwkJfSBlbHNlIGlmIChncmFwaC0+bWFwcGluZ1tpIC0gMV0gPCAwKSB7CiAJCQkvKgogCQkJICogTm90aGluZyBpcyB0byB0aGUgbGVmdC4KIAkJCSAqIE1vdmUgdG8gdGhlIGxlZnQgYnkgb25lCiAJCQkgKi8KLQkJCWdyYXBoLT5uZXdfbWFwcGluZ1tpIC0gMV0gPSB0YXJnZXQ7CisJCQlncmFwaC0+bWFwcGluZ1tpIC0gMV0gPSB0YXJnZXQ7CiAJCQkvKgogCQkJICogSWYgdGhlcmUgaXNuJ3QgYWxyZWFkeSBhbiBlZGdlIG1vdmluZyBob3Jpem9udGFsbHkKIAkJCSAqIHNlbGVjdCB0aGlzIG9uZS4KQEAgLTExMDcsOSArMTIwMiw5IEBACiAJCQkJICogbGluZS4KIAkJCQkgKi8KIAkJCQlmb3IgKGogPSAodGFyZ2V0ICogMikrMzsgaiA8IChpIC0gMik7IGogKz0gMikKLQkJCQkJZ3JhcGgtPm5ld19tYXBwaW5nW2pdID0gdGFyZ2V0OworCQkJCQlncmFwaC0+bWFwcGluZ1tqXSA9IHRhcmdldDsKIAkJCX0KLQkJfSBlbHNlIGlmIChncmFwaC0+bmV3X21hcHBpbmdbaSAtIDFdID09IHRhcmdldCkgeworCQl9IGVsc2UgaWYgKGdyYXBoLT5tYXBwaW5nW2kgLSAxXSA9PSB0YXJnZXQpIHsKIAkJCS8qCiAJCQkgKiBUaGVyZSBpcyBhIGJyYW5jaCBsaW5lIHRvIG91ciBsZWZ0CiAJCQkgKiBhbHJlYWR5LCBhbmQgaXQgaXMgb3VyIHRhcmdldC4gIFdlCkBAIC0xMTE3LDcgKzEyMTIsNyBAQAogCQkJICogdGhlIHNhbWUgcGFyZW50IGNvbW1pdC4KIAkJCSAqCiAJCQkgKiBXZSBkb24ndCBoYXZlIHRvIGFkZCBhbnl0aGluZyB0byB0aGUKLQkJCSAqIG91dHB1dCBvciBuZXdfbWFwcGluZywgc2luY2UgdGhlCisJCQkgKiBvdXRwdXQgb3IgbWFwcGluZywgc2luY2UgdGhlCiAJCQkgKiBleGlzdGluZyBicmFuY2ggbGluZSBoYXMgYWxyZWFkeSB0YWtlbgogCQkJICogY2FyZSBvZiBpdC4KIAkJCSAqLwpAQCAtMTEyOSwzOSArMTIyNCw0NiBAQAogCQkJICoKIAkJCSAqIFRoZSBzcGFjZSBqdXN0IHRvIHRoZSBsZWZ0IG9mIHRoaXMKIAkJCSAqIGJyYW5jaCBzaG91bGQgYWx3YXlzIGJlIGVtcHR5LgotCQkJICoKLQkJCSAqIFRoZSBicmFuY2ggdG8gdGhlIGxlZnQgb2YgdGhhdCBzcGFjZQotCQkJICogc2hvdWxkIGJlIG91ciBldmVudHVhbCB0YXJnZXQuCiAJCQkgKi8KLQkJCWFzc2VydChncmFwaC0+bmV3X21hcHBpbmdbaSAtIDFdID4gdGFyZ2V0KTsKLQkJCWFzc2VydChncmFwaC0+bmV3X21hcHBpbmdbaSAtIDJdIDwgMCk7Ci0JCQlhc3NlcnQoZ3JhcGgtPm5ld19tYXBwaW5nW2kgLSAzXSA9PSB0YXJnZXQpOwotCQkJZ3JhcGgtPm5ld19tYXBwaW5nW2kgLSAyXSA9IHRhcmdldDsKKwkJCWFzc2VydChncmFwaC0+bWFwcGluZ1tpIC0gMV0gPiB0YXJnZXQpOworCQkJYXNzZXJ0KGdyYXBoLT5tYXBwaW5nW2kgLSAyXSA8IDApOworCQkJZ3JhcGgtPm1hcHBpbmdbaSAtIDJdID0gdGFyZ2V0OwogCQkJLyoKIAkJCSAqIE1hcmsgdGhpcyBicmFuY2ggYXMgdGhlIGhvcml6b250YWwgZWRnZSB0bwogCQkJICogcHJldmVudCBhbnkgb3RoZXIgZWRnZXMgZnJvbSBtb3ZpbmcKIAkJCSAqIGhvcml6b250YWxseS4KIAkJCSAqLwotCQkJaWYgKGhvcml6b250YWxfZWRnZSA9PSAtMSkKLQkJCQlob3Jpem9udGFsX2VkZ2UgPSBpOworCQkJaWYgKGhvcml6b250YWxfZWRnZSA9PSAtMSkgeworCQkJCWludCBqOworCQkJCWhvcml6b250YWxfZWRnZV90YXJnZXQgPSB0YXJnZXQ7CisJCQkJaG9yaXpvbnRhbF9lZGdlID0gaSAtIDE7CisKKwkJCQlmb3IgKGogPSAodGFyZ2V0ICogMikgKyAzOyBqIDwgKGkgLSAyKTsgaiArPSAyKQorCQkJCQlncmFwaC0+bWFwcGluZ1tqXSA9IHRhcmdldDsKKwkJCX0KIAkJfQogCX0KIAogCS8qCisJICogQ29weSB0aGUgY3VycmVudCBtYXBwaW5nIGFycmF5IGludG8gb2xkX21hcHBpbmcKKwkgKi8KKwlDT1BZX0FSUkFZKGdyYXBoLT5vbGRfbWFwcGluZywgZ3JhcGgtPm1hcHBpbmcsIGdyYXBoLT5tYXBwaW5nX3NpemUpOworCisJLyoKIAkgKiBUaGUgbmV3IG1hcHBpbmcgbWF5IGJlIDEgc21hbGxlciB0aGFuIHRoZSBvbGQgbWFwcGluZwogCSAqLwotCWlmIChncmFwaC0+bmV3X21hcHBpbmdbZ3JhcGgtPm1hcHBpbmdfc2l6ZSAtIDFdIDwgMCkKKwlpZiAoZ3JhcGgtPm1hcHBpbmdbZ3JhcGgtPm1hcHBpbmdfc2l6ZSAtIDFdIDwgMCkKIAkJZ3JhcGgtPm1hcHBpbmdfc2l6ZS0tOwogCiAJLyoKIAkgKiBPdXRwdXQgb3V0IGEgbGluZSBiYXNlZCBvbiB0aGUgbmV3IG1hcHBpbmcgaW5mbwogCSAqLwogCWZvciAoaSA9IDA7IGkgPCBncmFwaC0+bWFwcGluZ19zaXplOyBpKyspIHsKLQkJaW50IHRhcmdldCA9IGdyYXBoLT5uZXdfbWFwcGluZ1tpXTsKKwkJaW50IHRhcmdldCA9IGdyYXBoLT5tYXBwaW5nW2ldOwogCQlpZiAodGFyZ2V0IDwgMCkKLQkJCXN0cmJ1Zl9hZGRjaChzYiwgJyAnKTsKKwkJCWdyYXBoX2xpbmVfYWRkY2gobGluZSwgJyAnKTsKIAkJZWxzZSBpZiAodGFyZ2V0ICogMiA9PSBpKQotCQkJc3RyYnVmX3dyaXRlX2NvbHVtbihzYiwgJmdyYXBoLT5uZXdfY29sdW1uc1t0YXJnZXRdLCAnfCcpOworCQkJZ3JhcGhfbGluZV93cml0ZV9jb2x1bW4obGluZSwgJmdyYXBoLT5uZXdfY29sdW1uc1t0YXJnZXRdLCAnfCcpOwogCQllbHNlIGlmICh0YXJnZXQgPT0gaG9yaXpvbnRhbF9lZGdlX3RhcmdldCAmJgogCQkJIGkgIT0gaG9yaXpvbnRhbF9lZGdlIC0gMSkgewogCQkJCS8qCkBAIC0xMTcwLDI0ICsxMjcyLDE3IEBACiAJCQkJICogd29uJ3QgY29udGludWUgaW50byB0aGUgbmV4dCBsaW5lLgogCQkJCSAqLwogCQkJCWlmIChpICE9ICh0YXJnZXQgKiAyKSszKQotCQkJCQlncmFwaC0+bmV3X21hcHBpbmdbaV0gPSAtMTsKKwkJCQkJZ3JhcGgtPm1hcHBpbmdbaV0gPSAtMTsKIAkJCQl1c2VkX2hvcml6b250YWwgPSAxOwotCQkJc3RyYnVmX3dyaXRlX2NvbHVtbihzYiwgJmdyYXBoLT5uZXdfY29sdW1uc1t0YXJnZXRdLCAnXycpOworCQkJZ3JhcGhfbGluZV93cml0ZV9jb2x1bW4obGluZSwgJmdyYXBoLT5uZXdfY29sdW1uc1t0YXJnZXRdLCAnXycpOwogCQl9IGVsc2UgewogCQkJaWYgKHVzZWRfaG9yaXpvbnRhbCAmJiBpIDwgaG9yaXpvbnRhbF9lZGdlKQotCQkJCWdyYXBoLT5uZXdfbWFwcGluZ1tpXSA9IC0xOwotCQkJc3RyYnVmX3dyaXRlX2NvbHVtbihzYiwgJmdyYXBoLT5uZXdfY29sdW1uc1t0YXJnZXRdLCAnLycpOworCQkJCWdyYXBoLT5tYXBwaW5nW2ldID0gLTE7CisJCQlncmFwaF9saW5lX3dyaXRlX2NvbHVtbihsaW5lLCAmZ3JhcGgtPm5ld19jb2x1bW5zW3RhcmdldF0sICcvJyk7CiAKIAkJfQogCX0KIAotCWdyYXBoX3BhZF9ob3Jpem9udGFsbHkoZ3JhcGgsIHNiLCBncmFwaC0+bWFwcGluZ19zaXplKTsKLQotCS8qCi0JICogU3dhcCBtYXBwaW5nIGFuZCBuZXdfbWFwcGluZwotCSAqLwotCVNXQVAoZ3JhcGgtPm1hcHBpbmcsIGdyYXBoLT5uZXdfbWFwcGluZyk7Ci0KIAkvKgogCSAqIElmIGdyYXBoLT5tYXBwaW5nIGluZGljYXRlcyB0aGF0IGFsbCBvZiB0aGUgYnJhbmNoIGxpbmVzCiAJICogYXJlIGFscmVhZHkgaW4gdGhlIGNvcnJlY3QgcG9zaXRpb25zLCB3ZSBhcmUgZG9uZS4KQEAgLTExOTksMzUgKzEyOTQsNDkgQEAKIAogaW50IGdyYXBoX25leHRfbGluZShzdHJ1Y3QgZ2l0X2dyYXBoICpncmFwaCwgc3RydWN0IHN0cmJ1ZiAqc2IpCiB7CisJaW50IHNob3duX2NvbW1pdF9saW5lID0gMDsKKwlzdHJ1Y3QgZ3JhcGhfbGluZSBsaW5lID0geyAuYnVmID0gc2IsIC53aWR0aCA9IDAgfTsKKworCS8qCisJICogV2UgY291bGQgY29uY2VpdmFibGUgYmUgY2FsbGVkIHdpdGggYSBOVUxMIGNvbW1pdAorCSAqIGlmIG91ciBjYWxsZXIgaGFzIGEgYnVnLCBhbmQgaW52b2tlcyBncmFwaF9uZXh0X2xpbmUoKQorCSAqIGltbWVkaWF0ZWx5IGFmdGVyIGdyYXBoX2luaXQoKSwgd2l0aG91dCBmaXJzdCBjYWxsaW5nCisJICogZ3JhcGhfdXBkYXRlKCkuICBSZXR1cm4gd2l0aG91dCBvdXRwdXR0aW5nIGFueXRoaW5nIGluIHRoaXMKKwkgKiBjYXNlLgorCSAqLworCWlmICghZ3JhcGgtPmNvbW1pdCkKKwkJcmV0dXJuIC0xOworCiAJc3dpdGNoIChncmFwaC0+c3RhdGUpIHsKIAljYXNlIEdSQVBIX1BBRERJTkc6Ci0JCWdyYXBoX291dHB1dF9wYWRkaW5nX2xpbmUoZ3JhcGgsIHNiKTsKLQkJcmV0dXJuIDA7CisJCWdyYXBoX291dHB1dF9wYWRkaW5nX2xpbmUoZ3JhcGgsICZsaW5lKTsKKwkJYnJlYWs7CiAJY2FzZSBHUkFQSF9TS0lQOgotCQlncmFwaF9vdXRwdXRfc2tpcF9saW5lKGdyYXBoLCBzYik7Ci0JCXJldHVybiAwOworCQlncmFwaF9vdXRwdXRfc2tpcF9saW5lKGdyYXBoLCAmbGluZSk7CisJCWJyZWFrOwogCWNhc2UgR1JBUEhfUFJFX0NPTU1JVDoKLQkJZ3JhcGhfb3V0cHV0X3ByZV9jb21taXRfbGluZShncmFwaCwgc2IpOwotCQlyZXR1cm4gMDsKKwkJZ3JhcGhfb3V0cHV0X3ByZV9jb21taXRfbGluZShncmFwaCwgJmxpbmUpOworCQlicmVhazsKIAljYXNlIEdSQVBIX0NPTU1JVDoKLQkJZ3JhcGhfb3V0cHV0X2NvbW1pdF9saW5lKGdyYXBoLCBzYik7Ci0JCXJldHVybiAxOworCQlncmFwaF9vdXRwdXRfY29tbWl0X2xpbmUoZ3JhcGgsICZsaW5lKTsKKwkJc2hvd25fY29tbWl0X2xpbmUgPSAxOworCQlicmVhazsKIAljYXNlIEdSQVBIX1BPU1RfTUVSR0U6Ci0JCWdyYXBoX291dHB1dF9wb3N0X21lcmdlX2xpbmUoZ3JhcGgsIHNiKTsKLQkJcmV0dXJuIDA7CisJCWdyYXBoX291dHB1dF9wb3N0X21lcmdlX2xpbmUoZ3JhcGgsICZsaW5lKTsKKwkJYnJlYWs7CiAJY2FzZSBHUkFQSF9DT0xMQVBTSU5HOgotCQlncmFwaF9vdXRwdXRfY29sbGFwc2luZ19saW5lKGdyYXBoLCBzYik7Ci0JCXJldHVybiAwOworCQlncmFwaF9vdXRwdXRfY29sbGFwc2luZ19saW5lKGdyYXBoLCAmbGluZSk7CisJCWJyZWFrOwogCX0KIAotCWFzc2VydCgwKTsKLQlyZXR1cm4gMDsKKwlncmFwaF9wYWRfaG9yaXpvbnRhbGx5KGdyYXBoLCAmbGluZSk7CisJcmV0dXJuIHNob3duX2NvbW1pdF9saW5lOwogfQogCiBzdGF0aWMgdm9pZCBncmFwaF9wYWRkaW5nX2xpbmUoc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGgsIHN0cnVjdCBzdHJidWYgKnNiKQogewogCWludCBpOwotCWludCBjaGFyc193cml0dGVuID0gMDsKKwlzdHJ1Y3QgZ3JhcGhfbGluZSBsaW5lID0geyAuYnVmID0gc2IsIC53aWR0aCA9IDAgfTsKIAogCWlmIChncmFwaC0+c3RhdGUgIT0gR1JBUEhfQ09NTUlUKSB7CiAJCWdyYXBoX25leHRfbGluZShncmFwaCwgc2IpOwpAQCAtMTI0NCwyMCArMTM1MywxNyBAQAogCWZvciAoaSA9IDA7IGkgPCBncmFwaC0+bnVtX2NvbHVtbnM7IGkrKykgewogCQlzdHJ1Y3QgY29sdW1uICpjb2wgPSAmZ3JhcGgtPmNvbHVtbnNbaV07CiAKLQkJc3RyYnVmX3dyaXRlX2NvbHVtbihzYiwgY29sLCAnfCcpOwotCQljaGFyc193cml0dGVuKys7CisJCWdyYXBoX2xpbmVfd3JpdGVfY29sdW1uKCZsaW5lLCBjb2wsICd8Jyk7CiAKIAkJaWYgKGNvbC0+Y29tbWl0ID09IGdyYXBoLT5jb21taXQgJiYgZ3JhcGgtPm51bV9wYXJlbnRzID4gMikgewogCQkJaW50IGxlbiA9IChncmFwaC0+bnVtX3BhcmVudHMgLSAyKSAqIDI7Ci0JCQlzdHJidWZfYWRkY2hhcnMoc2IsICcgJywgbGVuKTsKLQkJCWNoYXJzX3dyaXR0ZW4gKz0gbGVuOworCQkJZ3JhcGhfbGluZV9hZGRjaGFycygmbGluZSwgJyAnLCBsZW4pOwogCQl9IGVsc2UgewotCQkJc3RyYnVmX2FkZGNoKHNiLCAnICcpOwotCQkJY2hhcnNfd3JpdHRlbisrOworCQkJZ3JhcGhfbGluZV9hZGRjaCgmbGluZSwgJyAnKTsKIAkJfQogCX0KIAotCWdyYXBoX3BhZF9ob3Jpem9udGFsbHkoZ3JhcGgsIHNiLCBjaGFyc193cml0dGVuKTsKKwlncmFwaF9wYWRfaG9yaXpvbnRhbGx5KGdyYXBoLCAmbGluZSk7CiAKIAkvKgogCSAqIFVwZGF0ZSBncmFwaC0+cHJldl9zdGF0ZSBzaW5jZSB3ZSBoYXZlIG91dHB1dCBhIHBhZGRpbmcgbGluZQpkaWZmIC0tZ2l0IGEvZ3JhcGguaCBiL2dyYXBoLmgKaW5kZXggYWY2MjMzOS4uODMxM2UyOSAxMDA2NDQKLS0tIGEvZ3JhcGguaAorKysgYi9ncmFwaC5oCkBAIC0yLDYgKzIsMTAzIEBACiAjZGVmaW5lIEdSQVBIX0gKICNpbmNsdWRlICJkaWZmLmgiCiAKKy8qKgorICogVGhlIGdyYXBoIEFQSSBpcyB1c2VkIHRvIGRyYXcgYSB0ZXh0LWJhc2VkIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBjb21taXQKKyAqIGhpc3RvcnkuIFRoZSBBUEkgZ2VuZXJhdGVzIHRoZSBncmFwaCBpbiBhIGxpbmUtYnktbGluZSBmYXNoaW9uLgorICoKKyAqIENhbGxpbmcgc2VxdWVuY2UKKyAqIC0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiAtIENyZWF0ZSBhIGBzdHJ1Y3QgZ2l0X2dyYXBoYCBieSBjYWxsaW5nIGBncmFwaF9pbml0KClgLiAgV2hlbiB1c2luZyB0aGUKKyAqICAgcmV2aXNpb24gd2Fsa2luZyBBUEksIHRoaXMgaXMgZG9uZSBhdXRvbWF0aWNhbGx5IGJ5IGBzZXR1cF9yZXZpc2lvbnMoKWAgaWYKKyAqICAgdGhlICctLWdyYXBoJyBvcHRpb24gaXMgc3VwcGxpZWQuCisgKgorICogLSBVc2UgdGhlIHJldmlzaW9uIHdhbGtpbmcgQVBJIHRvIHdhbGsgdGhyb3VnaCBhIGdyb3VwIG9mIGNvbnRpZ3VvdXMgY29tbWl0cy4KKyAqICAgVGhlIGBnZXRfcmV2aXNpb24oKWAgZnVuY3Rpb24gYXV0b21hdGljYWxseSBjYWxscyBgZ3JhcGhfdXBkYXRlKClgIGVhY2ggdGltZQorICogICBpdCBpcyBpbnZva2VkLgorICoKKyAqIC0gRm9yIGVhY2ggY29tbWl0LCBjYWxsIGBncmFwaF9uZXh0X2xpbmUoKWAgcmVwZWF0ZWRseSwgdW50aWwKKyAqICAgYGdyYXBoX2lzX2NvbW1pdF9maW5pc2hlZCgpYCByZXR1cm5zIG5vbi16ZXJvLiAgRWFjaCBjYWxsIHRvCisgKiAgIGBncmFwaF9uZXh0X2xpbmUoKWAgd2lsbCBvdXRwdXQgYSBzaW5nbGUgbGluZSBvZiB0aGUgZ3JhcGguICBUaGUgcmVzdWx0aW5nCisgKiAgIGxpbmVzIHdpbGwgbm90IGNvbnRhaW4gYW55IG5ld2xpbmVzLiAgYGdyYXBoX25leHRfbGluZSgpYCByZXR1cm5zIDEgaWYgdGhlCisgKiAgIHJlc3VsdGluZyBsaW5lIGNvbnRhaW5zIHRoZSBjdXJyZW50IGNvbW1pdCwgb3IgMCBpZiB0aGlzIGlzIG1lcmVseSBhIGxpbmUKKyAqICAgbmVlZGVkIHRvIGFkanVzdCB0aGUgZ3JhcGggYmVmb3JlIG9yIGFmdGVyIHRoZSBjdXJyZW50IGNvbW1pdC4gIFRoaXMgcmV0dXJuCisgKiAgIHZhbHVlIGNhbiBiZSB1c2VkIHRvIGRldGVybWluZSB3aGVyZSB0byBwcmludCB0aGUgY29tbWl0IHN1bW1hcnkgaW5mb3JtYXRpb24KKyAqICAgYWxvbmdzaWRlIHRoZSBncmFwaCBvdXRwdXQuCisgKgorICogTGltaXRhdGlvbnMKKyAqIC0tLS0tLS0tLS0tCisgKiAtIENoZWNrIHRoZSBncmFwaF91cGRhdGUoKSBmdW5jdGlvbiBmb3IgaXRzIGxpbWl0YXRpb25zLgorICoKKyAqIC0gVGhlIGdyYXBoIEFQSSBkb2VzIG5vdCBjdXJyZW50bHkgc3VwcG9ydCByZXZlcnNlIGNvbW1pdCBvcmRlcmluZy4gIEluCisgKiAgIG9yZGVyIHRvIGltcGxlbWVudCByZXZlcnNlIG9yZGVyaW5nLCB0aGUgZ3JhcGhpbmcgQVBJIG5lZWRzIGFuCisgKiAgIChlZmZpY2llbnQpIG1lY2hhbmlzbSB0byBmaW5kIHRoZSBjaGlsZHJlbiBvZiBhIGNvbW1pdC4KKyAqCisgKiBTYW1wbGUgdXNhZ2UKKyAqIC0tLS0tLS0tLS0tLQorICoKKyAqIC0tLS0tLS0tLS0tLQorICogc3RydWN0IGNvbW1pdCAqY29tbWl0OworICogc3RydWN0IGdpdF9ncmFwaCAqZ3JhcGggPSBncmFwaF9pbml0KG9wdHMpOworICoKKyAqIHdoaWxlICgoY29tbWl0ID0gZ2V0X3JldmlzaW9uKG9wdHMpKSAhPSBOVUxMKSB7CisgKiAJd2hpbGUgKCFncmFwaF9pc19jb21taXRfZmluaXNoZWQoZ3JhcGgpKQorICogCXsKKyAqIAkJc3RydWN0IHN0cmJ1ZiBzYjsKKyAqIAkJaW50IGlzX2NvbW1pdF9saW5lOworICoKKyAqIAkJc3RyYnVmX2luaXQoJnNiLCAwKTsKKyAqIAkJaXNfY29tbWl0X2xpbmUgPSBncmFwaF9uZXh0X2xpbmUoZ3JhcGgsICZzYik7CisgKiAJCWZwdXRzKHNiLmJ1Ziwgc3Rkb3V0KTsKKyAqCisgKiAJCWlmIChpc19jb21taXRfbGluZSkKKyAqIAkJCWxvZ190cmVlX2NvbW1pdChvcHRzLCBjb21taXQpOworICogCQllbHNlCisgKiAJCQlwdXRjaGFyKG9wdHMtPmRpZmZvcHQubGluZV90ZXJtaW5hdGlvbik7CisgKiAJfQorICogfQorICogLS0tLS0tLS0tLS0tCisgKiBTYW1wbGUgb3V0cHV0CisgKiAtLS0tLS0tLS0tLS0tCisgKgorICogVGhlIGZvbGxvd2luZyBpcyBhbiBleGFtcGxlIG9mIHRoZSBvdXRwdXQgZnJvbSB0aGUgZ3JhcGggQVBJLiAgVGhpcyBvdXRwdXQgZG9lcworICogbm90IGluY2x1ZGUgYW55IGNvbW1pdCBzdW1tYXJ5IGluZm9ybWF0aW9uLS1jYWxsZXJzIGFyZSByZXNwb25zaWJsZSBmb3IKKyAqIG91dHB1dHRpbmcgdGhhdCBpbmZvcm1hdGlvbiwgaWYgZGVzaXJlZC4KKyAqIC0tLS0tLS0tLS0tLQorICogKgorICogKgorICogKgorICogfFwKKyAqICogfAorICogfCB8ICoKKyAqIHwgXCBcCisgKiB8ICBcIFwKKyAqICotLiBcIFwKKyAqIHxcIFwgXCBcCisgKiB8IHwgKiB8IHwKKyAqIHwgfCB8IHwgfCAqCisgKiB8IHwgfCB8IHwgKgorICogfCB8IHwgfCB8ICoKKyAqIHwgfCB8IHwgfCB8XAorICogfCB8IHwgfCB8IHwgKgorICogfCAqIHwgfCB8IHwgfAorICogfCB8IHwgfCB8ICogIFwKKyAqIHwgfCB8IHwgfCB8XCAgfAorICogfCB8IHwgfCAqIHwgfCB8CisgKiB8IHwgfCB8ICogfCB8IHwKKyAqICogfCB8IHwgfCB8IHwgfAorICogfCB8LyAvIC8gLyAvIC8KKyAqIHwvfCAvIC8gLyAvIC8KKyAqICogfCB8IHwgfCB8IHwKKyAqIHwvIC8gLyAvIC8gLworICogKiB8IHwgfCB8IHwKKyAqIHwgfCB8IHwgfCAqCisgKiB8IHwgfCB8IHwvCisgKiB8IHwgfCB8ICoKKyAqIC0tLS0tLS0tLS0tLQorICoKKyAqLworCiAvKiBBIGdyYXBoIGlzIGEgcG9pbnRlciB0byB0aGlzIG9wYXF1ZSBzdHJ1Y3R1cmUgKi8KIHN0cnVjdCBnaXRfZ3JhcGg7CiAKQEAgLTUwLDYgKzE0NywyMSBAQAogICogSWYgZ3JhcGhfdXBkYXRlKCkgaXMgY2FsbGVkIGJlZm9yZSBncmFwaF9pc19jb21taXRfZmluaXNoZWQoKSByZXR1cm5zIDEsCiAgKiB0aGUgbmV4dCBjYWxsIHRvIGdyYXBoX25leHRfbGluZSgpIHdpbGwgb3V0cHV0IGFuIGVsbGlwc2lzICgiLi4uIikKICAqIHRvIGluZGljYXRlIHRoYXQgYSBwb3J0aW9uIG9mIHRoZSBncmFwaCBpcyBtaXNzaW5nLgorICoKKyAqIExpbWl0YXRpb25zOgorICogLS0tLS0tLS0tLS0KKyAqCisgKiAtIGBncmFwaF91cGRhdGUoKWAgbXVzdCBiZSBjYWxsZWQgd2l0aCBjb21taXRzIGluIHRvcG9sb2dpY2FsIG9yZGVyLiAgSXQgc2hvdWxkCisgKiAgIG5vdCBiZSBjYWxsZWQgb24gYSBjb21taXQgaWYgaXQgaGFzIGFscmVhZHkgYmVlbiBpbnZva2VkIHdpdGggYW4gYW5jZXN0b3Igb2YKKyAqICAgdGhhdCBjb21taXQsIG9yIHRoZSBncmFwaCBvdXRwdXQgd2lsbCBiZSBpbmNvcnJlY3QuCisgKgorICogLSBgZ3JhcGhfdXBkYXRlKClgIG11c3QgYmUgY2FsbGVkIG9uIGEgY29udGlndW91cyBncm91cCBvZiBjb21taXRzLiAgSWYKKyAqICAgYGdyYXBoX3VwZGF0ZSgpYCBpcyBjYWxsZWQgb24gYSBwYXJ0aWN1bGFyIGNvbW1pdCwgaXQgc2hvdWxkIGxhdGVyIGJlIGNhbGxlZAorICogICBvbiBhbGwgcGFyZW50cyBvZiB0aGF0IGNvbW1pdC4gIFBhcmVudHMgbXVzdCBub3QgYmUgc2tpcHBlZCwgb3IgdGhlIGdyYXBoCisgKiAgIG91dHB1dCB3aWxsIGFwcGVhciBpbmNvcnJlY3QuCisgKgorICogLSBgZ3JhcGhfdXBkYXRlKClgIG1heSBiZSB1c2VkIG9uIGEgcHJ1bmVkIHNldCBvZiBjb21taXRzIG9ubHkgaWYgdGhlIHBhcmVudCBsaXN0CisgKiAgIGhhcyBiZWVuIHJld3JpdHRlbiBzbyBhcyB0byBpbmNsdWRlIG9ubHkgYW5jZXN0b3JzIGZyb20gdGhlIHBydW5lZCBzZXQuCiAgKi8KIHZvaWQgZ3JhcGhfdXBkYXRlKHN0cnVjdCBnaXRfZ3JhcGggKmdyYXBoLCBzdHJ1Y3QgY29tbWl0ICpjb21taXQpOwogCkBAIC02Miw2ICsxNzQsMTAgQEAKICAqIGZvciB0aGlzIGNvbW1pdC4gIElmIDAgaXMgcmV0dXJuZWQsIGdyYXBoX25leHRfbGluZSgpIG1heSBzdGlsbCBiZQogICogY2FsbGVkIHdpdGhvdXQgY2FsbGluZyBncmFwaF91cGRhdGUoKSwgYW5kIGl0IHdpbGwgbWVyZWx5IG91dHB1dAogICogYXBwcm9wcmlhdGUgInZlcnRpY2FsIHBhZGRpbmciIGluIHRoZSBncmFwaC4KKyAqCisgKiBJZiBgZ3JhcGhfdXBkYXRlKClgIGlzIGNhbGxlZCBiZWZvcmUgYWxsIGxpbmVzIGZvciB0aGUgY3VycmVudCBjb21taXQgaGF2ZQorICogYmVlbiBwcmludGVkLCB0aGUgbmV4dCBjYWxsIHRvIGBncmFwaF9uZXh0X2xpbmUoKWAgd2lsbCBvdXRwdXQgYW4gZWxsaXBzaXMsCisgKiB0byBpbmRpY2F0ZSB0aGF0IGEgcG9ydGlvbiBvZiB0aGUgZ3JhcGggd2FzIG9taXR0ZWQuCiAgKi8KIGludCBncmFwaF9pc19jb21taXRfZmluaXNoZWQoc3RydWN0IGdpdF9ncmFwaCBjb25zdCAqZ3JhcGgpOwogCkBAIC0xMTIsNiArMjI4LDcgQEAKIC8qCiAgKiBJZiB0aGUgZ3JhcGggaXMgbm9uLU5VTEwsIHByaW50IHRoZSByZXN0IG9mIHRoZSBoaXN0b3J5IGdyYXBoIGZvciB0aGlzCiAgKiBjb21taXQgdG8gc3Rkb3V0LiAgRG9lcyBub3QgcHJpbnQgYSB0ZXJtaW5hdGluZyBuZXdsaW5lIG9uIHRoZSBsYXN0IGxpbmUuCisgKiBSZXR1cm5zIDEgaWYgb3V0cHV0IHdhcyBwcmludGVkLCBhbmQgMCBpZiBubyBvdXRwdXQgd2FzIG5lY2Vzc2FyeS4KICAqLwogaW50IGdyYXBoX3Nob3dfcmVtYWluZGVyKHN0cnVjdCBnaXRfZ3JhcGggKmdyYXBoKTsKIApAQCAtMTIxLDYgKzIzOCwxMCBAQAogICogVGhpcyBpcyBzaW1pbGFyIHRvIGdyYXBoX3Nob3dfc3RyYnVmKCksIGJ1dCBpdCBhbHdheXMgcHJpbnRzIHRoZQogICogcmVtYWluZGVyIG9mIHRoZSBncmFwaC4KICAqCisgKiBJdCBpcyBiZXR0ZXIgdGhhbiBkaXJlY3RseSBjYWxsaW5nIGBncmFwaF9zaG93X3N0cmJ1ZigpYCBmb2xsb3dlZCBieQorICogYGdyYXBoX3Nob3dfcmVtYWluZGVyKClgIHNpbmNlIGl0IHByb3Blcmx5IGhhbmRsZXMgYnVmZmVycyB0aGF0IGRvIG5vdCBlbmQgaW4KKyAqIGEgdGVybWluYXRpbmcgbmV3bGluZS4KKyAqCiAgKiBJZiB0aGUgc3RyYnVmIGVuZHMgd2l0aCBhIG5ld2xpbmUsIHRoZSBvdXRwdXQgcHJpbnRlZCBieQogICogZ3JhcGhfc2hvd19jb21taXRfbXNnKCkgd2lsbCBlbmQgd2l0aCBhIG5ld2xpbmUuICBJZiB0aGUgc3RyYnVmIGlzCiAgKiBtaXNzaW5nIGEgdGVybWluYXRpbmcgbmV3bGluZSAoaW5jbHVkaW5nIGlmIGl0IGlzIGVtcHR5KSwgdGhlIG91dHB1dApkaWZmIC0tZ2l0IGEvZ3JlcC5jIGIvZ3JlcC5jCmluZGV4IDRkYjE1MTAuLjEzMjMyYTkgMTAwNjQ0Ci0tLSBhL2dyZXAuYworKysgYi9ncmVwLmMKQEAgLTE2LDYgKzE2LDIwIEBACiAKIHN0YXRpYyBzdHJ1Y3QgZ3JlcF9vcHQgZ3JlcF9kZWZhdWx0czsKIAorI2lmZGVmIFVTRV9MSUJQQ1JFMgorc3RhdGljIHBjcmUyX2dlbmVyYWxfY29udGV4dCAqcGNyZTJfZ2xvYmFsX2NvbnRleHQ7CisKK3N0YXRpYyB2b2lkICpwY3JlMl9tYWxsb2MoUENSRTJfU0laRSBzaXplLCBNQVlCRV9VTlVTRUQgdm9pZCAqbWVtb3J5X2RhdGEpCit7CisJcmV0dXJuIG1hbGxvYyhzaXplKTsKK30KKworc3RhdGljIHZvaWQgcGNyZTJfZnJlZSh2b2lkICpwb2ludGVyLCBNQVlCRV9VTlVTRUQgdm9pZCAqbWVtb3J5X2RhdGEpCit7CisJZnJlZShwb2ludGVyKTsKK30KKyNlbmRpZgorCiBzdGF0aWMgY29uc3QgY2hhciAqY29sb3JfZ3JlcF9zbG90c1tdID0gewogCVtHUkVQX0NPTE9SX0NPTlRFWFRdCSAgICA9ICJjb250ZXh0IiwKIAlbR1JFUF9DT0xPUl9GSUxFTkFNRV0JICAgID0gImZpbGVuYW1lIiwKQEAgLTE1MCwxMiArMTY0LDI4IEBACiAgKiBJbml0aWFsaXplIG9uZSBpbnN0YW5jZSBvZiBncmVwX29wdCBhbmQgY29weSB0aGUKICAqIGRlZmF1bHQgdmFsdWVzIGZyb20gdGhlIHRlbXBsYXRlIHdlIHJlYWQgdGhlIGNvbmZpZ3VyYXRpb24KICAqIGluZm9ybWF0aW9uIGluIGFuIGVhcmxpZXIgY2FsbCB0byBnaXRfY29uZmlnKGdyZXBfY29uZmlnKS4KKyAqCisgKiBJZiB1c2luZyBQQ1JFLCBtYWtlIHN1cmUgdGhhdCB0aGUgbGlicmFyeSBpcyBjb25maWd1cmVkCisgKiB0byB1c2UgdGhlIHNhbWUgYWxsb2NhdG9yIGFzIEdpdCAoZS5nLiBuZWRtYWxsb2Mgb24gV2luZG93cykuCisgKgorICogQW55IGFsbG9jYXRlZCBtZW1vcnkgbmVlZHMgdG8gYmUgcmVsZWFzZWQgaW4gZ3JlcF9kZXN0cm95KCkuCiAgKi8KIHZvaWQgZ3JlcF9pbml0KHN0cnVjdCBncmVwX29wdCAqb3B0LCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgY29uc3QgY2hhciAqcHJlZml4KQogewogCXN0cnVjdCBncmVwX29wdCAqZGVmID0gJmdyZXBfZGVmYXVsdHM7CiAJaW50IGk7CiAKKyNpZiBkZWZpbmVkKFVTRV9MSUJQQ1JFMikKKwlpZiAoIXBjcmUyX2dsb2JhbF9jb250ZXh0KQorCQlwY3JlMl9nbG9iYWxfY29udGV4dCA9IHBjcmUyX2dlbmVyYWxfY29udGV4dF9jcmVhdGUoCisJCQkJCXBjcmUyX21hbGxvYywgcGNyZTJfZnJlZSwgTlVMTCk7CisjZW5kaWYKKworI2lmZGVmIFVTRV9MSUJQQ1JFMQorCXBjcmVfbWFsbG9jID0gbWFsbG9jOworCXBjcmVfZnJlZSA9IGZyZWU7CisjZW5kaWYKKwogCW1lbXNldChvcHQsIDAsIHNpemVvZigqb3B0KSk7CiAJb3B0LT5yZXBvID0gcmVwbzsKIAlvcHQtPnByZWZpeCA9IHByZWZpeDsKQEAgLTE3OCw2ICsyMDgsMTMgQEAKIAkJY29sb3Jfc2V0KG9wdC0+Y29sb3JzW2ldLCBkZWYtPmNvbG9yc1tpXSk7CiB9CiAKK3ZvaWQgZ3JlcF9kZXN0cm95KHZvaWQpCit7CisjaWZkZWYgVVNFX0xJQlBDUkUyCisJcGNyZTJfZ2VuZXJhbF9jb250ZXh0X2ZyZWUocGNyZTJfZ2xvYmFsX2NvbnRleHQpOworI2VuZGlmCit9CisKIHN0YXRpYyB2b2lkIGdyZXBfc2V0X3BhdHRlcm5fdHlwZV9vcHRpb24oZW51bSBncmVwX3BhdHRlcm5fdHlwZSBwYXR0ZXJuX3R5cGUsIHN0cnVjdCBncmVwX29wdCAqb3B0KQogewogCS8qCkBAIC0zNjgsMzEgKzQwNSwyMCBAQAogCXJldHVybiAxOwogfQogCi1zdGF0aWMgaW50IGhhc19udWxsKGNvbnN0IGNoYXIgKnMsIHNpemVfdCBsZW4pCi17Ci0JLyoKLQkgKiByZWdjb21wIGNhbm5vdCBhY2NlcHQgcGF0dGVybnMgd2l0aCBOVUxzIHNvIHdoZW4gdXNpbmcgaXQKLQkgKiB3ZSBjb25zaWRlciBhbnkgcGF0dGVybiBjb250YWluaW5nIGEgTlVMIGZpeGVkLgotCSAqLwotCWlmIChtZW1jaHIocywgMCwgbGVuKSkKLQkJcmV0dXJuIDE7Ci0KLQlyZXR1cm4gMDsKLX0KLQogI2lmZGVmIFVTRV9MSUJQQ1JFMQogc3RhdGljIHZvaWQgY29tcGlsZV9wY3JlMV9yZWdleHAoc3RydWN0IGdyZXBfcGF0ICpwLCBjb25zdCBzdHJ1Y3QgZ3JlcF9vcHQgKm9wdCkKIHsKIAljb25zdCBjaGFyICplcnJvcjsKIAlpbnQgZXJyb2Zmc2V0OwogCWludCBvcHRpb25zID0gUENSRV9NVUxUSUxJTkU7CisJaW50IHN0dWR5X29wdGlvbnMgPSAwOwogCiAJaWYgKG9wdC0+aWdub3JlX2Nhc2UpIHsKLQkJaWYgKGhhc19ub25fYXNjaWkocC0+cGF0dGVybikpCisJCWlmICghb3B0LT5pZ25vcmVfbG9jYWxlICYmIGhhc19ub25fYXNjaWkocC0+cGF0dGVybikpCiAJCQlwLT5wY3JlMV90YWJsZXMgPSBwY3JlX21ha2V0YWJsZXMoKTsKIAkJb3B0aW9ucyB8PSBQQ1JFX0NBU0VMRVNTOwogCX0KLQlpZiAoaXNfdXRmOF9sb2NhbGUoKSAmJiBoYXNfbm9uX2FzY2lpKHAtPnBhdHRlcm4pKQorCWlmICghb3B0LT5pZ25vcmVfbG9jYWxlICYmIGlzX3V0ZjhfbG9jYWxlKCkgJiYgaGFzX25vbl9hc2NpaShwLT5wYXR0ZXJuKSkKIAkJb3B0aW9ucyB8PSBQQ1JFX1VURjg7CiAKIAlwLT5wY3JlMV9yZWdleHAgPSBwY3JlX2NvbXBpbGUocC0+cGF0dGVybiwgb3B0aW9ucywgJmVycm9yLCAmZXJyb2Zmc2V0LApAQCAtNDAwLDQ0ICs0MjYsMzEgQEAKIAlpZiAoIXAtPnBjcmUxX3JlZ2V4cCkKIAkJY29tcGlsZV9yZWdleHBfZmFpbGVkKHAsIGVycm9yKTsKIAotCXAtPnBjcmUxX2V4dHJhX2luZm8gPSBwY3JlX3N0dWR5KHAtPnBjcmUxX3JlZ2V4cCwgR0lUX1BDUkVfU1RVRFlfSklUX0NPTVBJTEUsICZlcnJvcik7CisjaWYgZGVmaW5lZChQQ1JFX0NPTkZJR19KSVQpICYmICFkZWZpbmVkKE5PX0xJQlBDUkUxX0pJVCkKKwlwY3JlX2NvbmZpZyhQQ1JFX0NPTkZJR19KSVQsICZwLT5wY3JlMV9qaXRfb24pOworCWlmIChvcHQtPmRlYnVnKQorCQlmcHJpbnRmKHN0ZGVyciwgInBjcmUxX2ppdF9vbj0lZFxuIiwgcC0+cGNyZTFfaml0X29uKTsKKworCWlmIChwLT5wY3JlMV9qaXRfb24pCisJCXN0dWR5X29wdGlvbnMgPSBQQ1JFX1NUVURZX0pJVF9DT01QSUxFOworI2VuZGlmCisKKwlwLT5wY3JlMV9leHRyYV9pbmZvID0gcGNyZV9zdHVkeShwLT5wY3JlMV9yZWdleHAsIHN0dWR5X29wdGlvbnMsICZlcnJvcik7CiAJaWYgKCFwLT5wY3JlMV9leHRyYV9pbmZvICYmIGVycm9yKQogCQlkaWUoIiVzIiwgZXJyb3IpOwotCi0jaWZkZWYgR0lUX1BDUkUxX1VTRV9KSVQKLQlwY3JlX2NvbmZpZyhQQ1JFX0NPTkZJR19KSVQsICZwLT5wY3JlMV9qaXRfb24pOwotCWlmIChwLT5wY3JlMV9qaXRfb24gPT0gMSkgewotCQlwLT5wY3JlMV9qaXRfc3RhY2sgPSBwY3JlX2ppdF9zdGFja19hbGxvYygxLCAxMDI0ICogMTAyNCk7Ci0JCWlmICghcC0+cGNyZTFfaml0X3N0YWNrKQotCQkJZGllKCJDb3VsZG4ndCBhbGxvY2F0ZSBQQ1JFIEpJVCBzdGFjayIpOwotCQlwY3JlX2Fzc2lnbl9qaXRfc3RhY2socC0+cGNyZTFfZXh0cmFfaW5mbywgTlVMTCwgcC0+cGNyZTFfaml0X3N0YWNrKTsKLQl9IGVsc2UgaWYgKHAtPnBjcmUxX2ppdF9vbiAhPSAwKSB7Ci0JCUJVRygiVGhlIHBjcmUxX2ppdF9vbiB2YXJpYWJsZSBzaG91bGQgYmUgMCBvciAxLCBub3QgJWQiLAotCQkgICAgcC0+cGNyZTFfaml0X29uKTsKLQl9Ci0jZW5kaWYKIH0KIAogc3RhdGljIGludCBwY3JlMW1hdGNoKHN0cnVjdCBncmVwX3BhdCAqcCwgY29uc3QgY2hhciAqbGluZSwgY29uc3QgY2hhciAqZW9sLAogCQlyZWdtYXRjaF90ICptYXRjaCwgaW50IGVmbGFncykKIHsKLQlpbnQgb3ZlY3RvclszMF0sIHJldCwgZmxhZ3MgPSAwOworCWludCBvdmVjdG9yWzMwXSwgcmV0LCBmbGFncyA9IFBDUkVfTk9fVVRGOF9DSEVDSzsKIAogCWlmIChlZmxhZ3MgJiBSRUdfTk9UQk9MKQogCQlmbGFncyB8PSBQQ1JFX05PVEJPTDsKIAotI2lmZGVmIEdJVF9QQ1JFMV9VU0VfSklUCi0JaWYgKHAtPnBjcmUxX2ppdF9vbikgewotCQlyZXQgPSBwY3JlX2ppdF9leGVjKHAtPnBjcmUxX3JlZ2V4cCwgcC0+cGNyZTFfZXh0cmFfaW5mbywgbGluZSwKLQkJCQkgICAgZW9sIC0gbGluZSwgMCwgZmxhZ3MsIG92ZWN0b3IsCi0JCQkJICAgIEFSUkFZX1NJWkUob3ZlY3RvciksIHAtPnBjcmUxX2ppdF9zdGFjayk7Ci0JfSBlbHNlCi0jZW5kaWYKLQl7Ci0JCXJldCA9IHBjcmVfZXhlYyhwLT5wY3JlMV9yZWdleHAsIHAtPnBjcmUxX2V4dHJhX2luZm8sIGxpbmUsCi0JCQkJZW9sIC0gbGluZSwgMCwgZmxhZ3MsIG92ZWN0b3IsCi0JCQkJQVJSQVlfU0laRShvdmVjdG9yKSk7Ci0JfQorCXJldCA9IHBjcmVfZXhlYyhwLT5wY3JlMV9yZWdleHAsIHAtPnBjcmUxX2V4dHJhX2luZm8sIGxpbmUsCisJCQllb2wgLSBsaW5lLCAwLCBmbGFncywgb3ZlY3RvciwKKwkJCUFSUkFZX1NJWkUob3ZlY3RvcikpOwogCiAJaWYgKHJldCA8IDAgJiYgcmV0ICE9IFBDUkVfRVJST1JfTk9NQVRDSCkKIAkJZGllKCJwY3JlX2V4ZWMgZmFpbGVkIHdpdGggZXJyb3IgY29kZSAlZCIsIHJldCk7CkBAIC00NTMsMTUgKzQ2NiwxMiBAQAogc3RhdGljIHZvaWQgZnJlZV9wY3JlMV9yZWdleHAoc3RydWN0IGdyZXBfcGF0ICpwKQogewogCXBjcmVfZnJlZShwLT5wY3JlMV9yZWdleHApOwotI2lmZGVmIEdJVF9QQ1JFMV9VU0VfSklUCi0JaWYgKHAtPnBjcmUxX2ppdF9vbikgeworI2lmZGVmIFBDUkVfQ09ORklHX0pJVAorCWlmIChwLT5wY3JlMV9qaXRfb24pCiAJCXBjcmVfZnJlZV9zdHVkeShwLT5wY3JlMV9leHRyYV9pbmZvKTsKLQkJcGNyZV9qaXRfc3RhY2tfZnJlZShwLT5wY3JlMV9qaXRfc3RhY2spOwotCX0gZWxzZQorCWVsc2UKICNlbmRpZgotCXsKIAkJcGNyZV9mcmVlKHAtPnBjcmUxX2V4dHJhX2luZm8pOwotCX0KIAlwY3JlX2ZyZWUoKHZvaWQgKilwLT5wY3JlMV90YWJsZXMpOwogfQogI2Vsc2UgLyogIVVTRV9MSUJQQ1JFMSAqLwpAQCAtNDg4LDcgKzQ5OCw2IEBACiAJUENSRTJfVUNIQVIgZXJyYnVmWzI1Nl07CiAJUENSRTJfU0laRSBlcnJvZmZzZXQ7CiAJaW50IG9wdGlvbnMgPSBQQ1JFMl9NVUxUSUxJTkU7Ci0JY29uc3QgdWludDhfdCAqY2hhcmFjdGVyX3RhYmxlcyA9IE5VTEw7CiAJaW50IGppdHJldDsKIAlpbnQgcGF0aW5mb3JldDsKIAlzaXplX3Qgaml0c2l6ZWFyZzsKQEAgLTQ5NywxNSArNTA2LDIwIEBACiAKIAlwLT5wY3JlMl9jb21waWxlX2NvbnRleHQgPSBOVUxMOwogCisJLyogcGNyZTJfZ2xvYmFsX2NvbnRleHQgaXMgaW5pdGlhbGl6ZWQgaW4gYXBwZW5kX2dyZXBfcGF0dGVybiAqLwogCWlmIChvcHQtPmlnbm9yZV9jYXNlKSB7Ci0JCWlmIChoYXNfbm9uX2FzY2lpKHAtPnBhdHRlcm4pKSB7Ci0JCQljaGFyYWN0ZXJfdGFibGVzID0gcGNyZTJfbWFrZXRhYmxlcyhOVUxMKTsKKwkJaWYgKCFvcHQtPmlnbm9yZV9sb2NhbGUgJiYgaGFzX25vbl9hc2NpaShwLT5wYXR0ZXJuKSkgeworCQkJaWYgKCFwY3JlMl9nbG9iYWxfY29udGV4dCkKKwkJCQlCVUcoInBjcmUyX2dsb2JhbF9jb250ZXh0IHVuaW5pdGlhbGl6ZWQiKTsKKwkJCXAtPnBjcmUyX3RhYmxlcyA9IHBjcmUyX21ha2V0YWJsZXMocGNyZTJfZ2xvYmFsX2NvbnRleHQpOwogCQkJcC0+cGNyZTJfY29tcGlsZV9jb250ZXh0ID0gcGNyZTJfY29tcGlsZV9jb250ZXh0X2NyZWF0ZShOVUxMKTsKLQkJCXBjcmUyX3NldF9jaGFyYWN0ZXJfdGFibGVzKHAtPnBjcmUyX2NvbXBpbGVfY29udGV4dCwgY2hhcmFjdGVyX3RhYmxlcyk7CisJCQlwY3JlMl9zZXRfY2hhcmFjdGVyX3RhYmxlcyhwLT5wY3JlMl9jb21waWxlX2NvbnRleHQsCisJCQkJCQkJcC0+cGNyZTJfdGFibGVzKTsKIAkJfQogCQlvcHRpb25zIHw9IFBDUkUyX0NBU0VMRVNTOwogCX0KLQlpZiAoaXNfdXRmOF9sb2NhbGUoKSAmJiBoYXNfbm9uX2FzY2lpKHAtPnBhdHRlcm4pKQorCWlmICghb3B0LT5pZ25vcmVfbG9jYWxlICYmIGlzX3V0ZjhfbG9jYWxlKCkgJiYgaGFzX25vbl9hc2NpaShwLT5wYXR0ZXJuKSAmJgorCSAgICAhKCFvcHQtPmlnbm9yZV9jYXNlICYmIChwLT5maXhlZCB8fCBwLT5pc19maXhlZCkpKQogCQlvcHRpb25zIHw9IFBDUkUyX1VURjsKIAogCXAtPnBjcmUyX3BhdHRlcm4gPSBwY3JlMl9jb21waWxlKChQQ1JFMl9TUFRSKXAtPnBhdHRlcm4sCkBAIC01MjIsNyArNTM2LDkgQEAKIAl9CiAKIAlwY3JlMl9jb25maWcoUENSRTJfQ09ORklHX0pJVCwgJnAtPnBjcmUyX2ppdF9vbik7Ci0JaWYgKHAtPnBjcmUyX2ppdF9vbiA9PSAxKSB7CisJaWYgKG9wdC0+ZGVidWcpCisJCWZwcmludGYoc3RkZXJyLCAicGNyZTJfaml0X29uPSVkXG4iLCBwLT5wY3JlMl9qaXRfb24pOworCWlmIChwLT5wY3JlMl9qaXRfb24pIHsKIAkJaml0cmV0ID0gcGNyZTJfaml0X2NvbXBpbGUocC0+cGNyZTJfcGF0dGVybiwgUENSRTJfSklUX0NPTVBMRVRFKTsKIAkJaWYgKGppdHJldCkKIAkJCWRpZSgiQ291bGRuJ3QgSklUIHRoZSBQQ1JFMiBwYXR0ZXJuICclcycsIGdvdCAnJWQnXG4iLCBwLT5wYXR0ZXJuLCBqaXRyZXQpOwpAQCAtNTQ3LDE5ICs1NjMsMTEgQEAKIAkJCUJVRygicGNyZTJfcGF0dGVybl9pbmZvKCkgZmFpbGVkOiAlZCIsIHBhdGluZm9yZXQpOwogCQlpZiAoaml0c2l6ZWFyZyA9PSAwKSB7CiAJCQlwLT5wY3JlMl9qaXRfb24gPSAwOworCQkJaWYgKG9wdC0+ZGVidWcpCisJCQkJZnByaW50ZihzdGRlcnIsICJwY3JlMl9qaXRfb249JWQ6ICgqTk9fSklUKSBpbiByZWdleFxuIiwKKwkJCQkJcC0+cGNyZTJfaml0X29uKTsKIAkJCXJldHVybjsKIAkJfQotCi0JCXAtPnBjcmUyX2ppdF9zdGFjayA9IHBjcmUyX2ppdF9zdGFja19jcmVhdGUoMSwgMTAyNCAqIDEwMjQsIE5VTEwpOwotCQlpZiAoIXAtPnBjcmUyX2ppdF9zdGFjaykKLQkJCWRpZSgiQ291bGRuJ3QgYWxsb2NhdGUgUENSRTIgSklUIHN0YWNrIik7Ci0JCXAtPnBjcmUyX21hdGNoX2NvbnRleHQgPSBwY3JlMl9tYXRjaF9jb250ZXh0X2NyZWF0ZShOVUxMKTsKLQkJaWYgKCFwLT5wY3JlMl9tYXRjaF9jb250ZXh0KQotCQkJZGllKCJDb3VsZG4ndCBhbGxvY2F0ZSBQQ1JFMiBtYXRjaCBjb250ZXh0Iik7Ci0JCXBjcmUyX2ppdF9zdGFja19hc3NpZ24ocC0+cGNyZTJfbWF0Y2hfY29udGV4dCwgTlVMTCwgcC0+cGNyZTJfaml0X3N0YWNrKTsKLQl9IGVsc2UgaWYgKHAtPnBjcmUyX2ppdF9vbiAhPSAwKSB7Ci0JCUJVRygiVGhlIHBjcmUyX2ppdF9vbiB2YXJpYWJsZSBzaG91bGQgYmUgMCBvciAxLCBub3QgJWQiLAotCQkgICAgcC0+cGNyZTFfaml0X29uKTsKIAl9CiB9CiAKQEAgLTYwMyw4ICs2MTEsNyBAQAogCXBjcmUyX2NvbXBpbGVfY29udGV4dF9mcmVlKHAtPnBjcmUyX2NvbXBpbGVfY29udGV4dCk7CiAJcGNyZTJfY29kZV9mcmVlKHAtPnBjcmUyX3BhdHRlcm4pOwogCXBjcmUyX21hdGNoX2RhdGFfZnJlZShwLT5wY3JlMl9tYXRjaF9kYXRhKTsKLQlwY3JlMl9qaXRfc3RhY2tfZnJlZShwLT5wY3JlMl9qaXRfc3RhY2spOwotCXBjcmUyX21hdGNoX2NvbnRleHRfZnJlZShwLT5wY3JlMl9tYXRjaF9jb250ZXh0KTsKKwlmcmVlKCh2b2lkICopcC0+cGNyZTJfdGFibGVzKTsKIH0KICNlbHNlIC8qICFVU0VfTElCUENSRTIgKi8KIHN0YXRpYyB2b2lkIGNvbXBpbGVfcGNyZTJfcGF0dGVybihzdHJ1Y3QgZ3JlcF9wYXQgKnAsIGNvbnN0IHN0cnVjdCBncmVwX29wdCAqb3B0KQpAQCAtNjI2LDcgKzYzMyw2IEBACiBzdGF0aWMgdm9pZCBmcmVlX3BjcmUyX3BhdHRlcm4oc3RydWN0IGdyZXBfcGF0ICpwKQogewogfQotI2VuZGlmIC8qICFVU0VfTElCUENSRTIgKi8KIAogc3RhdGljIHZvaWQgY29tcGlsZV9maXhlZF9yZWdleHAoc3RydWN0IGdyZXBfcGF0ICpwLCBzdHJ1Y3QgZ3JlcF9vcHQgKm9wdCkKIHsKQEAgLTY0Nyw0NiArNjUzLDY2IEBACiAJCWNvbXBpbGVfcmVnZXhwX2ZhaWxlZChwLCBlcnJidWYpOwogCX0KIH0KKyNlbmRpZiAvKiAhVVNFX0xJQlBDUkUyICovCiAKIHN0YXRpYyB2b2lkIGNvbXBpbGVfcmVnZXhwKHN0cnVjdCBncmVwX3BhdCAqcCwgc3RydWN0IGdyZXBfb3B0ICpvcHQpCiB7Ci0JaW50IGFzY2lpX29ubHk7CiAJaW50IGVycjsKIAlpbnQgcmVnZmxhZ3MgPSBSRUdfTkVXTElORTsKIAogCXAtPndvcmRfcmVnZXhwID0gb3B0LT53b3JkX3JlZ2V4cDsKIAlwLT5pZ25vcmVfY2FzZSA9IG9wdC0+aWdub3JlX2Nhc2U7Ci0JYXNjaWlfb25seSAgICAgPSAhaGFzX25vbl9hc2NpaShwLT5wYXR0ZXJuKTsKKwlwLT5maXhlZCA9IG9wdC0+Zml4ZWQ7CiAKLQkvKgotCSAqIEV2ZW4gd2hlbiAtRiAoZml4ZWQpIGFza3MgdXMgdG8gZG8gYSBub24tcmVnZXhwIHNlYXJjaCwgd2UKLQkgKiBtYXkgbm90IGJlIGFibGUgdG8gY29ycmVjdGx5IGNhc2UtZm9sZCB3aGVuIC1pCi0JICogKGlnbm9yZS1jYXNlKSBpcyBhc2tlZCAoaW4gd2hpY2ggY2FzZSwgd2UnbGwgc3ludGhlc2l6ZSBhCi0JICogcmVnZXhwIHRvIG1hdGNoIHRoZSBwYXR0ZXJuIHRoYXQgbWF0Y2hlcyByZWdleHAgc3BlY2lhbAotCSAqIGNoYXJhY3RlcnMgbGl0ZXJhbGx5LCB3aGlsZSBpZ25vcmluZyBjYXNlIGRpZmZlcmVuY2VzKS4gIE9uCi0JICogdGhlIG90aGVyIGhhbmQsIGV2ZW4gd2l0aG91dCAtRiwgaWYgdGhlIHBhdHRlcm4gZG9lcyBub3QKLQkgKiBoYXZlIGFueSByZWdleHAgc3BlY2lhbCBjaGFyYWN0ZXJzIGFuZCB0aGVyZSBpcyBubyBuZWVkIGZvcgotCSAqIGNhc2UtZm9sZGluZyBzZWFyY2gsIHdlIGNhbiBpbnRlcm5hbGx5IHR1cm4gaXQgaW50byBhCi0JICogc2ltcGxlIHN0cmluZyBtYXRjaCB1c2luZyBrd3MuICBwLT5maXhlZCB0ZWxscyB1cyBpZiB3ZQotCSAqIHdhbnQgdG8gdXNlIGt3cy4KLQkgKi8KLQlpZiAob3B0LT5maXhlZCB8fAotCSAgICBoYXNfbnVsbChwLT5wYXR0ZXJuLCBwLT5wYXR0ZXJubGVuKSB8fAotCSAgICBpc19maXhlZChwLT5wYXR0ZXJuLCBwLT5wYXR0ZXJubGVuKSkKLQkJcC0+Zml4ZWQgPSAhcC0+aWdub3JlX2Nhc2UgfHwgYXNjaWlfb25seTsKKwlpZiAobWVtY2hyKHAtPnBhdHRlcm4sIDAsIHAtPnBhdHRlcm5sZW4pICYmICFvcHQtPnBjcmUyKQorCQlkaWUoXygiZ2l2ZW4gcGF0dGVybiBjb250YWlucyBOVUxMIGJ5dGUgKHZpYSAtZiA8ZmlsZT4pLiBUaGlzIGlzIG9ubHkgc3VwcG9ydGVkIHdpdGggLVAgdW5kZXIgUENSRSB2MiIpKTsKIAotCWlmIChwLT5maXhlZCkgewotCQlwLT5rd3MgPSBrd3NhbGxvYyhwLT5pZ25vcmVfY2FzZSA/IHRvbG93ZXJfdHJhbnNfdGJsIDogTlVMTCk7Ci0JCWt3c2luY3IocC0+a3dzLCBwLT5wYXR0ZXJuLCBwLT5wYXR0ZXJubGVuKTsKLQkJa3dzcHJlcChwLT5rd3MpOwotCQlyZXR1cm47Ci0JfSBlbHNlIGlmIChvcHQtPmZpeGVkKSB7Ci0JCS8qCi0JCSAqIFdlIGNvbWUgaGVyZSB3aGVuIHRoZSBwYXR0ZXJuIGhhcyB0aGUgbm9uLWFzY2lpCi0JCSAqIGNoYXJhY3RlcnMgd2UgY2Fubm90IGNhc2UtZm9sZCwgYW5kIGFza2VkIHRvCi0JCSAqIGlnbm9yZS1jYXNlLgotCQkgKi8KKwlwLT5pc19maXhlZCA9IGlzX2ZpeGVkKHAtPnBhdHRlcm4sIHAtPnBhdHRlcm5sZW4pOworI2lmZGVmIFVTRV9MSUJQQ1JFMgorICAgICAgIGlmICghcC0+Zml4ZWQgJiYgIXAtPmlzX2ZpeGVkKSB7CisJICAgICAgIGNvbnN0IGNoYXIgKm5vX2ppdCA9ICIoKk5PX0pJVCkiOworCSAgICAgICBjb25zdCBpbnQgbm9faml0X2xlbiA9IHN0cmxlbihub19qaXQpOworCSAgICAgICBpZiAoc3RhcnRzX3dpdGgocC0+cGF0dGVybiwgbm9faml0KSAmJgorCQkgICBpc19maXhlZChwLT5wYXR0ZXJuICsgbm9faml0X2xlbiwKKwkJCSAgICBwLT5wYXR0ZXJubGVuIC0gbm9faml0X2xlbikpCisJCSAgICAgICBwLT5pc19maXhlZCA9IDE7CisgICAgICAgfQorI2VuZGlmCisJaWYgKHAtPmZpeGVkIHx8IHAtPmlzX2ZpeGVkKSB7CisjaWZkZWYgVVNFX0xJQlBDUkUyCisJCW9wdC0+cGNyZTIgPSAxOworCQlpZiAocC0+aXNfZml4ZWQpIHsKKwkJCWNvbXBpbGVfcGNyZTJfcGF0dGVybihwLCBvcHQpOworCQl9IGVsc2UgeworCQkJLyoKKwkJCSAqIEUuZy4gdDc4MTEtZ3JlcC1vcGVuLnNoIHJlbGllcyBvbiB0aGUKKwkJCSAqIHBhdHRlcm4gYmVpbmcgcmVzdG9yZWQuCisJCQkgKi8KKwkJCWNoYXIgKm9sZF9wYXR0ZXJuID0gcC0+cGF0dGVybjsKKwkJCXNpemVfdCBvbGRfcGF0dGVybmxlbiA9IHAtPnBhdHRlcm5sZW47CisJCQlzdHJ1Y3Qgc3RyYnVmIHNiID0gU1RSQlVGX0lOSVQ7CisKKwkJCS8qCisJCQkgKiBUaGVyZSBpcyB0aGUgUENSRTJfTElURVJBTCBmbGFnLCBidXQgaXQncworCQkJICogb25seSBpbiBQQ1JFIHYyIDEwLjMwIGFuZCBsYXRlci4gTmVlZGluZyB0bworCQkJICogaWZkZWYgb3VyIHdheSBhcm91bmQgdGhhdCBhbmQgZGVhbGluZyB3aXRoCisJCQkgKiBpdCArIFBDUkUyX01VTFRJTElORSBiZWluZyBhbiBlcnJvciBpcyBtb3JlCisJCQkgKiBjb21wbGV4IHRoYW4ganVzdCBxdW90aW5nIHRoaXMgb3Vyc2VsdmVzLgorCQkJKi8KKwkJCXN0cmJ1Zl9hZGQoJnNiLCAiXFxRIiwgMik7CisJCQlzdHJidWZfYWRkKCZzYiwgcC0+cGF0dGVybiwgcC0+cGF0dGVybmxlbik7CisJCQlzdHJidWZfYWRkKCZzYiwgIlxcRSIsIDIpOworCisJCQlwLT5wYXR0ZXJuID0gc2IuYnVmOworCQkJcC0+cGF0dGVybmxlbiA9IHNiLmxlbjsKKwkJCWNvbXBpbGVfcGNyZTJfcGF0dGVybihwLCBvcHQpOworCQkJcC0+cGF0dGVybiA9IG9sZF9wYXR0ZXJuOworCQkJcC0+cGF0dGVybmxlbiA9IG9sZF9wYXR0ZXJubGVuOworCQkJc3RyYnVmX3JlbGVhc2UoJnNiKTsKKwkJfQorI2Vsc2UgLyogIVVTRV9MSUJQQ1JFMiAqLwogCQljb21waWxlX2ZpeGVkX3JlZ2V4cChwLCBvcHQpOworI2VuZGlmIC8qICFVU0VfTElCUENSRTIgKi8KIAkJcmV0dXJuOwogCX0KIApAQCAtMTA1Myw5ICsxMDc5LDcgQEAKIAkJY2FzZSBHUkVQX1BBVFRFUk46IC8qIGF0b20gKi8KIAkJY2FzZSBHUkVQX1BBVFRFUk5fSEVBRDoKIAkJY2FzZSBHUkVQX1BBVFRFUk5fQk9EWToKLQkJCWlmIChwLT5rd3MpCi0JCQkJa3dzZnJlZShwLT5rd3MpOwotCQkJZWxzZSBpZiAocC0+cGNyZTFfcmVnZXhwKQorCQkJaWYgKHAtPnBjcmUxX3JlZ2V4cCkKIAkJCQlmcmVlX3BjcmUxX3JlZ2V4cChwKTsKIAkJCWVsc2UgaWYgKHAtPnBjcmUyX3BhdHRlcm4pCiAJCQkJZnJlZV9wY3JlMl9wYXR0ZXJuKHApOwpAQCAtMTExNSwyOSArMTEzOSwxMiBAQAogCW9wdC0+b3V0cHV0KG9wdCwgb3B0LT5udWxsX2ZvbGxvd2luZ19uYW1lID8gIlwwIiA6ICJcbiIsIDEpOwogfQogCi1zdGF0aWMgaW50IGZpeG1hdGNoKHN0cnVjdCBncmVwX3BhdCAqcCwgY2hhciAqbGluZSwgY2hhciAqZW9sLAotCQkgICAgcmVnbWF0Y2hfdCAqbWF0Y2gpCi17Ci0Jc3RydWN0IGt3c21hdGNoIGt3c207Ci0Jc2l6ZV90IG9mZnNldCA9IGt3c2V4ZWMocC0+a3dzLCBsaW5lLCBlb2wgLSBsaW5lLCAma3dzbSk7Ci0JaWYgKG9mZnNldCA9PSAtMSkgewotCQltYXRjaC0+cm1fc28gPSBtYXRjaC0+cm1fZW8gPSAtMTsKLQkJcmV0dXJuIFJFR19OT01BVENIOwotCX0gZWxzZSB7Ci0JCW1hdGNoLT5ybV9zbyA9IG9mZnNldDsKLQkJbWF0Y2gtPnJtX2VvID0gbWF0Y2gtPnJtX3NvICsga3dzbS5zaXplWzBdOwotCQlyZXR1cm4gMDsKLQl9Ci19Ci0KIHN0YXRpYyBpbnQgcGF0bWF0Y2goc3RydWN0IGdyZXBfcGF0ICpwLCBjaGFyICpsaW5lLCBjaGFyICplb2wsCiAJCSAgICByZWdtYXRjaF90ICptYXRjaCwgaW50IGVmbGFncykKIHsKIAlpbnQgaGl0OwogCi0JaWYgKHAtPmZpeGVkKQotCQloaXQgPSAhZml4bWF0Y2gocCwgbGluZSwgZW9sLCBtYXRjaCk7Ci0JZWxzZSBpZiAocC0+cGNyZTFfcmVnZXhwKQorCWlmIChwLT5wY3JlMV9yZWdleHApCiAJCWhpdCA9ICFwY3JlMW1hdGNoKHAsIGxpbmUsIGVvbCwgbWF0Y2gsIGVmbGFncyk7CiAJZWxzZSBpZiAocC0+cGNyZTJfcGF0dGVybikKIAkJaGl0ID0gIXBjcmUybWF0Y2gocCwgbGluZSwgZW9sLCBtYXRjaCwgZWZsYWdzKTsKQEAgLTE1MzMsMTEgKzE1NDAsNiBAQAogCQlwdGhyZWFkX211dGV4X3VubG9jaygmZ3JlcF9hdHRyX211dGV4KTsKIH0KIAotLyoKLSAqIFNhbWUgYXMgZ2l0X2F0dHJfbXV0ZXgsIGJ1dCBwcm90ZWN0aW5nIHRoZSB0aHJlYWQtdW5zYWZlIG9iamVjdCBkYiBhY2Nlc3MuCi0gKi8KLXB0aHJlYWRfbXV0ZXhfdCBncmVwX3JlYWRfbXV0ZXg7Ci0KIHN0YXRpYyBpbnQgbWF0Y2hfZnVuY25hbWUoc3RydWN0IGdyZXBfb3B0ICpvcHQsIHN0cnVjdCBncmVwX3NvdXJjZSAqZ3MsIGNoYXIgKmJvbCwgY2hhciAqZW9sKQogewogCXhkZW1pdGNvbmZfdCAqeGVjZmcgPSBvcHQtPnByaXY7CkBAIC0xNzM0LDEzICsxNzM2LDIwIEBACiAJfQogCiAJLyoKLQkgKiBmaWxsX3RleHRjb252IGlzIG5vdCByZW1vdGVseSB0aHJlYWQtc2FmZTsgaXQgbWF5IGxvYWQgb2JqZWN0cwotCSAqIGJlaGluZCB0aGUgc2NlbmVzLCBhbmQgaXQgbW9kaWZpZXMgdGhlIGdsb2JhbCBkaWZmIHRlbXBmaWxlCi0JICogc3RydWN0dXJlLgorCSAqIGZpbGxfdGV4dGNvbnYgaXMgbm90IHJlbW90ZWx5IHRocmVhZC1zYWZlOyBpdCBtb2RpZmllcyB0aGUgZ2xvYmFsCisJICogZGlmZiB0ZW1wZmlsZSBzdHJ1Y3R1cmUsIHdyaXRlcyB0byB0aGVfcmVwbydzIG9kYiBhbmQgbWlnaHQKKwkgKiBpbnRlcm5hbGx5IGNhbGwgdGhyZWFkLXVuc2FmZSBmdW5jdGlvbnMgc3VjaCBhcyB0aGUKKwkgKiBwcmVwYXJlX3BhY2tlZF9naXQoKSBsYXp5LWluaXRpYWxpemF0b3IuIEJlY2F1c2Ugb2YgdGhlIGxhc3QgdHdvLCB3ZQorCSAqIG11c3QgZW5zdXJlIG11dHVhbCBleGNsdXNpb24gYmV0d2VlbiB0aGlzIGNhbGwgYW5kIHRoZSBvYmplY3QgcmVhZGluZworCSAqIEFQSSwgdGh1cyB3ZSB1c2Ugb2JqX3JlYWRfbG9jaygpIGhlcmUuCisJICoKKwkgKiBUT0RPOiBhbGxvd2luZyB0ZXh0IGNvbnZlcnNpb24gdG8gcnVuIGluIHBhcmFsbGVsIHdpdGggb2JqZWN0CisJICogcmVhZGluZyBvcGVyYXRpb25zIG1pZ2h0IGluY3JlYXNlIHBlcmZvcm1hbmNlIGluIHRoZSBtdWx0aXRocmVhZGVkCisJICogbm9uLXdvcmt0cmVlZSBnaXQtZ3JlcCB3aXRoIC0tdGV4dGNvbnYuCiAJICovCi0JZ3JlcF9yZWFkX2xvY2soKTsKKwlvYmpfcmVhZF9sb2NrKCk7CiAJc2l6ZSA9IGZpbGxfdGV4dGNvbnYociwgZHJpdmVyLCBkZiwgJmJ1Zik7Ci0JZ3JlcF9yZWFkX3VubG9jaygpOworCW9ial9yZWFkX3VubG9jaygpOwogCWZyZWVfZmlsZXNwZWMoZGYpOwogCiAJLyoKQEAgLTE3ODAsNiArMTc4OSwxMCBAQAogCWVudW0gZ3JlcF9jb250ZXh0IGN0eCA9IEdSRVBfQ09OVEVYVF9IRUFEOwogCXhkZW1pdGNvbmZfdCB4ZWNmZzsKIAorCWlmICghb3B0LT5zdGF0dXNfb25seSAmJiBncy0+bmFtZSA9PSBOVUxMKQorCQlCVUcoImdyZXAgY2FsbCB3aGljaCBjb3VsZCBwcmludCBhIG5hbWUgcmVxdWlyZXMgIgorCQkgICAgImdyZXBfc291cmNlLm5hbWUgYmUgbm9uLU5VTEwiKTsKKwogCWlmICghb3B0LT5vdXRwdXQpCiAJCW9wdC0+b3V0cHV0ID0gc3RkX291dHB1dDsKIApAQCAtMTgwMiwxMCArMTgxNSwxNSBAQAogCQlncmVwX3NvdXJjZV9sb2FkX2RyaXZlcihncywgb3B0LT5yZXBvLT5pbmRleCk7CiAJCS8qCiAJCSAqIFdlIG1pZ2h0IHNldCB1cCB0aGUgc2hhcmVkIHRleHRjb252IGNhY2hlIGRhdGEgaGVyZSwgd2hpY2gKLQkJICogaXMgbm90IHRocmVhZC1zYWZlLgorCQkgKiBpcyBub3QgdGhyZWFkLXNhZmUuIEFsc28sIGdldF9vaWRfd2l0aF9jb250ZXh0KCkgYW5kCisJCSAqIHBhcnNlX29iamVjdCgpIG1pZ2h0IGJlIGludGVybmFsbHkgY2FsbGVkLiBBcyB0aGV5IGFyZSBub3QKKwkJICogY3VycmVudHkgdGhyZWFkLXNhZmUgYW5kIG1pZ2h0IGJlIHJhY3kgd2l0aCBvYmplY3QgcmVhZGluZywKKwkJICogb2JqX3JlYWRfbG9jaygpIG11c3QgYmUgY2FsbGVkLgogCQkgKi8KIAkJZ3JlcF9hdHRyX2xvY2soKTsKLQkJdGV4dGNvbnYgPSB1c2VyZGlmZl9nZXRfdGV4dGNvbnYoZ3MtPmRyaXZlcik7CisJCW9ial9yZWFkX2xvY2soKTsKKwkJdGV4dGNvbnYgPSB1c2VyZGlmZl9nZXRfdGV4dGNvbnYob3B0LT5yZXBvLCBncy0+ZHJpdmVyKTsKKwkJb2JqX3JlYWRfdW5sb2NrKCk7CiAJCWdyZXBfYXR0cl91bmxvY2soKTsKIAl9CiAKQEAgLTIxMDUsMTAgKzIxMjMsNyBAQAogewogCWVudW0gb2JqZWN0X3R5cGUgdHlwZTsKIAotCWdyZXBfcmVhZF9sb2NrKCk7CiAJZ3MtPmJ1ZiA9IHJlYWRfb2JqZWN0X2ZpbGUoZ3MtPmlkZW50aWZpZXIsICZ0eXBlLCAmZ3MtPnNpemUpOwotCWdyZXBfcmVhZF91bmxvY2soKTsKLQogCWlmICghZ3MtPmJ1ZikKIAkJcmV0dXJuIGVycm9yKF8oIiclcyc6IHVuYWJsZSB0byByZWFkICVzIiksCiAJCQkgICAgIGdzLT5uYW1lLApkaWZmIC0tZ2l0IGEvZ3JlcC5oIGIvZ3JlcC5oCmluZGV4IGZiMDQ4OTMuLjkxMTVkYjggMTAwNjQ0Ci0tLSBhL2dyZXAuaAorKysgYi9ncmVwLmgKQEAgLTMsMjQgKzMsMTIgQEAKICNpbmNsdWRlICJjb2xvci5oIgogI2lmZGVmIFVTRV9MSUJQQ1JFMQogI2luY2x1ZGUgPHBjcmUuaD4KLSNpZmRlZiBQQ1JFX0NPTkZJR19KSVQKLSNpZiBQQ1JFX01BSk9SID49IDggJiYgUENSRV9NSU5PUiA+PSAzMgotI2lmbmRlZiBOT19MSUJQQ1JFMV9KSVQKLSNkZWZpbmUgR0lUX1BDUkUxX1VTRV9KSVQKLSNkZWZpbmUgR0lUX1BDUkVfU1RVRFlfSklUX0NPTVBJTEUgUENSRV9TVFVEWV9KSVRfQ09NUElMRQotI2VuZGlmCi0jZW5kaWYKLSNlbmRpZgotI2lmbmRlZiBHSVRfUENSRV9TVFVEWV9KSVRfQ09NUElMRQotI2RlZmluZSBHSVRfUENSRV9TVFVEWV9KSVRfQ09NUElMRSAwCi0jZW5kaWYKLSNpZiBQQ1JFX01BSk9SIDw9IDggJiYgUENSRV9NSU5PUiA8IDIwCi10eXBlZGVmIGludCBwY3JlX2ppdF9zdGFjazsKKyNpZm5kZWYgUENSRV9OT19VVEY4X0NIRUNLCisjZGVmaW5lIFBDUkVfTk9fVVRGOF9DSEVDSyAwCiAjZW5kaWYKICNlbHNlCiB0eXBlZGVmIGludCBwY3JlOwogdHlwZWRlZiBpbnQgcGNyZV9leHRyYTsKLXR5cGVkZWYgaW50IHBjcmVfaml0X3N0YWNrOwogI2VuZGlmCiAjaWZkZWYgVVNFX0xJQlBDUkUyCiAjZGVmaW5lIFBDUkUyX0NPREVfVU5JVF9XSURUSCA4CkBAIC0yOSwxMCArMTcsNyBAQAogdHlwZWRlZiBpbnQgcGNyZTJfY29kZTsKIHR5cGVkZWYgaW50IHBjcmUyX21hdGNoX2RhdGE7CiB0eXBlZGVmIGludCBwY3JlMl9jb21waWxlX2NvbnRleHQ7Ci10eXBlZGVmIGludCBwY3JlMl9tYXRjaF9jb250ZXh0OwotdHlwZWRlZiBpbnQgcGNyZTJfaml0X3N0YWNrOwogI2VuZGlmCi0jaW5jbHVkZSAia3dzZXQuaCIKICNpbmNsdWRlICJ0aHJlYWQtdXRpbHMuaCIKICNpbmNsdWRlICJ1c2VyZGlmZi5oIgogCkBAIC04OCwxNyArNzMsMTUgQEAKIAlyZWdleF90IHJlZ2V4cDsKIAlwY3JlICpwY3JlMV9yZWdleHA7CiAJcGNyZV9leHRyYSAqcGNyZTFfZXh0cmFfaW5mbzsKLQlwY3JlX2ppdF9zdGFjayAqcGNyZTFfaml0X3N0YWNrOwogCWNvbnN0IHVuc2lnbmVkIGNoYXIgKnBjcmUxX3RhYmxlczsKIAlpbnQgcGNyZTFfaml0X29uOwogCXBjcmUyX2NvZGUgKnBjcmUyX3BhdHRlcm47CiAJcGNyZTJfbWF0Y2hfZGF0YSAqcGNyZTJfbWF0Y2hfZGF0YTsKIAlwY3JlMl9jb21waWxlX2NvbnRleHQgKnBjcmUyX2NvbXBpbGVfY29udGV4dDsKLQlwY3JlMl9tYXRjaF9jb250ZXh0ICpwY3JlMl9tYXRjaF9jb250ZXh0OwotCXBjcmUyX2ppdF9zdGFjayAqcGNyZTJfaml0X3N0YWNrOworCWNvbnN0IHVpbnQ4X3QgKnBjcmUyX3RhYmxlczsKIAl1aW50MzJfdCBwY3JlMl9qaXRfb247Ci0Ja3dzZXRfdCBrd3M7CiAJdW5zaWduZWQgZml4ZWQ6MTsKKwl1bnNpZ25lZCBpc19maXhlZDoxOwogCXVuc2lnbmVkIGlnbm9yZV9jYXNlOjE7CiAJdW5zaWduZWQgd29yZF9yZWdleHA6MTsKIH07CkBAIC0xNzMsNiArMTU2LDcgQEAKIAlpbnQgZnVuY2JvZHk7CiAJaW50IGV4dGVuZGVkX3JlZ2V4cF9vcHRpb247CiAJaW50IHBhdHRlcm5fdHlwZV9vcHRpb247CisJaW50IGlnbm9yZV9sb2NhbGU7CiAJY2hhciBjb2xvcnNbTlJfR1JFUF9DT0xPUlNdW0NPTE9SX01BWExFTl07CiAJdW5zaWduZWQgcHJlX2NvbnRleHQ7CiAJdW5zaWduZWQgcG9zdF9jb250ZXh0OwpAQCAtMTg2LDE3ICsxNzAsMTggQEAKIAl2b2lkICpvdXRwdXRfcHJpdjsKIH07CiAKLWV4dGVybiB2b2lkIGluaXRfZ3JlcF9kZWZhdWx0cyhzdHJ1Y3QgcmVwb3NpdG9yeSAqKTsKLWV4dGVybiBpbnQgZ3JlcF9jb25maWcoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqKTsKLWV4dGVybiB2b2lkIGdyZXBfaW5pdChzdHJ1Y3QgZ3JlcF9vcHQgKiwgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIGNvbnN0IGNoYXIgKnByZWZpeCk7Cit2b2lkIGluaXRfZ3JlcF9kZWZhdWx0cyhzdHJ1Y3QgcmVwb3NpdG9yeSAqKTsKK2ludCBncmVwX2NvbmZpZyhjb25zdCBjaGFyICp2YXIsIGNvbnN0IGNoYXIgKnZhbHVlLCB2b2lkICopOwordm9pZCBncmVwX2luaXQoc3RydWN0IGdyZXBfb3B0ICosIHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLCBjb25zdCBjaGFyICpwcmVmaXgpOwordm9pZCBncmVwX2Rlc3Ryb3kodm9pZCk7CiB2b2lkIGdyZXBfY29tbWl0X3BhdHRlcm5fdHlwZShlbnVtIGdyZXBfcGF0dGVybl90eXBlLCBzdHJ1Y3QgZ3JlcF9vcHQgKm9wdCk7CiAKLWV4dGVybiB2b2lkIGFwcGVuZF9ncmVwX3BhdChzdHJ1Y3QgZ3JlcF9vcHQgKm9wdCwgY29uc3QgY2hhciAqcGF0LCBzaXplX3QgcGF0bGVuLCBjb25zdCBjaGFyICpvcmlnaW4sIGludCBubywgZW51bSBncmVwX3BhdF90b2tlbiB0KTsKLWV4dGVybiB2b2lkIGFwcGVuZF9ncmVwX3BhdHRlcm4oc3RydWN0IGdyZXBfb3B0ICpvcHQsIGNvbnN0IGNoYXIgKnBhdCwgY29uc3QgY2hhciAqb3JpZ2luLCBpbnQgbm8sIGVudW0gZ3JlcF9wYXRfdG9rZW4gdCk7Ci1leHRlcm4gdm9pZCBhcHBlbmRfaGVhZGVyX2dyZXBfcGF0dGVybihzdHJ1Y3QgZ3JlcF9vcHQgKiwgZW51bSBncmVwX2hlYWRlcl9maWVsZCwgY29uc3QgY2hhciAqKTsKLWV4dGVybiB2b2lkIGNvbXBpbGVfZ3JlcF9wYXR0ZXJucyhzdHJ1Y3QgZ3JlcF9vcHQgKm9wdCk7Ci1leHRlcm4gdm9pZCBmcmVlX2dyZXBfcGF0dGVybnMoc3RydWN0IGdyZXBfb3B0ICpvcHQpOwotZXh0ZXJuIGludCBncmVwX2J1ZmZlcihzdHJ1Y3QgZ3JlcF9vcHQgKm9wdCwgY2hhciAqYnVmLCB1bnNpZ25lZCBsb25nIHNpemUpOwordm9pZCBhcHBlbmRfZ3JlcF9wYXQoc3RydWN0IGdyZXBfb3B0ICpvcHQsIGNvbnN0IGNoYXIgKnBhdCwgc2l6ZV90IHBhdGxlbiwgY29uc3QgY2hhciAqb3JpZ2luLCBpbnQgbm8sIGVudW0gZ3JlcF9wYXRfdG9rZW4gdCk7Cit2b2lkIGFwcGVuZF9ncmVwX3BhdHRlcm4oc3RydWN0IGdyZXBfb3B0ICpvcHQsIGNvbnN0IGNoYXIgKnBhdCwgY29uc3QgY2hhciAqb3JpZ2luLCBpbnQgbm8sIGVudW0gZ3JlcF9wYXRfdG9rZW4gdCk7Cit2b2lkIGFwcGVuZF9oZWFkZXJfZ3JlcF9wYXR0ZXJuKHN0cnVjdCBncmVwX29wdCAqLCBlbnVtIGdyZXBfaGVhZGVyX2ZpZWxkLCBjb25zdCBjaGFyICopOwordm9pZCBjb21waWxlX2dyZXBfcGF0dGVybnMoc3RydWN0IGdyZXBfb3B0ICpvcHQpOwordm9pZCBmcmVlX2dyZXBfcGF0dGVybnMoc3RydWN0IGdyZXBfb3B0ICpvcHQpOworaW50IGdyZXBfYnVmZmVyKHN0cnVjdCBncmVwX29wdCAqb3B0LCBjaGFyICpidWYsIHVuc2lnbmVkIGxvbmcgc2l6ZSk7CiAKIHN0cnVjdCBncmVwX3NvdXJjZSB7CiAJY2hhciAqbmFtZTsKQEAgLTIyNiw4ICsyMTEsOCBAQAogCiBpbnQgZ3JlcF9zb3VyY2Uoc3RydWN0IGdyZXBfb3B0ICpvcHQsIHN0cnVjdCBncmVwX3NvdXJjZSAqZ3MpOwogCi1leHRlcm4gc3RydWN0IGdyZXBfb3B0ICpncmVwX29wdF9kdXAoY29uc3Qgc3RydWN0IGdyZXBfb3B0ICpvcHQpOwotZXh0ZXJuIGludCBncmVwX3RocmVhZHNfb2soY29uc3Qgc3RydWN0IGdyZXBfb3B0ICpvcHQpOworc3RydWN0IGdyZXBfb3B0ICpncmVwX29wdF9kdXAoY29uc3Qgc3RydWN0IGdyZXBfb3B0ICpvcHQpOworaW50IGdyZXBfdGhyZWFkc19vayhjb25zdCBzdHJ1Y3QgZ3JlcF9vcHQgKm9wdCk7CiAKIC8qCiAgKiBNdXRleCB1c2VkIGFyb3VuZCBhY2Nlc3MgdG8gdGhlIGF0dHJpYnV0ZXMgbWFjaGluZXJ5IGlmCkBAIC0yMzUsMTggKzIyMCw1IEBACiAgKi8KIGV4dGVybiBpbnQgZ3JlcF91c2VfbG9ja3M7CiBleHRlcm4gcHRocmVhZF9tdXRleF90IGdyZXBfYXR0cl9tdXRleDsKLWV4dGVybiBwdGhyZWFkX211dGV4X3QgZ3JlcF9yZWFkX211dGV4OwotCi1zdGF0aWMgaW5saW5lIHZvaWQgZ3JlcF9yZWFkX2xvY2sodm9pZCkKLXsKLQlpZiAoZ3JlcF91c2VfbG9ja3MpCi0JCXB0aHJlYWRfbXV0ZXhfbG9jaygmZ3JlcF9yZWFkX211dGV4KTsKLX0KLQotc3RhdGljIGlubGluZSB2b2lkIGdyZXBfcmVhZF91bmxvY2sodm9pZCkKLXsKLQlpZiAoZ3JlcF91c2VfbG9ja3MpCi0JCXB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZncmVwX3JlYWRfbXV0ZXgpOwotfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2hhc2guaCBiL2hhc2guaAppbmRleCA3YzgyMzhiLi41MmE0ZjFhIDEwMDY0NAotLS0gYS9oYXNoLmgKKysrIGIvaGFzaC5oCkBAIC0xNSw2ICsxNSwxNCBAQAogI2luY2x1ZGUgImJsb2NrLXNoYTEvc2hhMS5oIgogI2VuZGlmCiAKKyNpZiBkZWZpbmVkKFNIQTI1Nl9HQ1JZUFQpCisjaW5jbHVkZSAic2hhMjU2L2djcnlwdC5oIgorI2VsaWYgZGVmaW5lZChTSEEyNTZfT1BFTlNTTCkKKyNpbmNsdWRlIDxvcGVuc3NsL3NoYS5oPgorI2Vsc2UKKyNpbmNsdWRlICJzaGEyNTYvYmxvY2svc2hhMjU2LmgiCisjZW5kaWYKKwogI2lmbmRlZiBwbGF0Zm9ybV9TSEFfQ1RYCiAvKgogICogcGxhdGZvcm0ncyB1bmRlcmx5aW5nIGltcGxlbWVudGF0aW9uIG9mIFNIQS0xOyBjb3VsZCBiZSBPcGVuU1NMLApAQCAtMzQsNiArNDIsMTggQEAKICNkZWZpbmUgZ2l0X1NIQTFfVXBkYXRlCQlwbGF0Zm9ybV9TSEExX1VwZGF0ZQogI2RlZmluZSBnaXRfU0hBMV9GaW5hbAkJcGxhdGZvcm1fU0hBMV9GaW5hbAogCisjaWZuZGVmIHBsYXRmb3JtX1NIQTI1Nl9DVFgKKyNkZWZpbmUgcGxhdGZvcm1fU0hBMjU2X0NUWAlTSEEyNTZfQ1RYCisjZGVmaW5lIHBsYXRmb3JtX1NIQTI1Nl9Jbml0CVNIQTI1Nl9Jbml0CisjZGVmaW5lIHBsYXRmb3JtX1NIQTI1Nl9VcGRhdGUJU0hBMjU2X1VwZGF0ZQorI2RlZmluZSBwbGF0Zm9ybV9TSEEyNTZfRmluYWwJU0hBMjU2X0ZpbmFsCisjZW5kaWYKKworI2RlZmluZSBnaXRfU0hBMjU2X0NUWAkJcGxhdGZvcm1fU0hBMjU2X0NUWAorI2RlZmluZSBnaXRfU0hBMjU2X0luaXQJCXBsYXRmb3JtX1NIQTI1Nl9Jbml0CisjZGVmaW5lIGdpdF9TSEEyNTZfVXBkYXRlCXBsYXRmb3JtX1NIQTI1Nl9VcGRhdGUKKyNkZWZpbmUgZ2l0X1NIQTI1Nl9GaW5hbAlwbGF0Zm9ybV9TSEEyNTZfRmluYWwKKwogI2lmZGVmIFNIQTFfTUFYX0JMT0NLX1NJWkUKICNpbmNsdWRlICJjb21wYXQvc2hhMS1jaHVua2VkLmgiCiAjdW5kZWYgZ2l0X1NIQTFfVXBkYXRlCkBAIC01MiwxMiArNzIsMTUgQEAKICNkZWZpbmUgR0lUX0hBU0hfVU5LTk9XTiAwCiAvKiBTSEEtMSAqLwogI2RlZmluZSBHSVRfSEFTSF9TSEExIDEKKy8qIFNIQS0yNTYgICovCisjZGVmaW5lIEdJVF9IQVNIX1NIQTI1NiAyCiAvKiBOdW1iZXIgb2YgYWxnb3JpdGhtcyBzdXBwb3J0ZWQgKGluY2x1ZGluZyB1bmtub3duKS4gKi8KLSNkZWZpbmUgR0lUX0hBU0hfTkFMR09TIChHSVRfSEFTSF9TSEExICsgMSkKKyNkZWZpbmUgR0lUX0hBU0hfTkFMR09TIChHSVRfSEFTSF9TSEEyNTYgKyAxKQogCiAvKiBBIHN1aXRhYmx5IGFsaWduZWQgdHlwZSBmb3Igc3RhY2sgYWxsb2NhdGlvbnMgb2YgaGFzaCBjb250ZXh0cy4gKi8KIHVuaW9uIGdpdF9oYXNoX2N0eCB7CiAJZ2l0X1NIQV9DVFggc2hhMTsKKwlnaXRfU0hBMjU2X0NUWCBzaGEyNTY7CiB9OwogdHlwZWRlZiB1bmlvbiBnaXRfaGFzaF9jdHggZ2l0X2hhc2hfY3R4OwogCkBAIC04MSw2ICsxMDQsOSBAQAogCS8qIFRoZSBsZW5ndGggb2YgdGhlIGhhc2ggaW4gaGV4IGNoYXJhY3RlcnMuICovCiAJc2l6ZV90IGhleHN6OwogCisJLyogVGhlIGJsb2NrIHNpemUgb2YgdGhlIGhhc2guICovCisJc2l6ZV90IGJsa3N6OworCiAJLyogVGhlIGhhc2ggaW5pdGlhbGl6YXRpb24gZnVuY3Rpb24uICovCiAJZ2l0X2hhc2hfaW5pdF9mbiBpbml0X2ZuOwogCkBAIC05OCw0ICsxMjQsNDMgQEAKIH07CiBleHRlcm4gY29uc3Qgc3RydWN0IGdpdF9oYXNoX2FsZ28gaGFzaF9hbGdvc1tHSVRfSEFTSF9OQUxHT1NdOwogCisvKgorICogUmV0dXJuIGEgR0lUX0hBU0hfKiBjb25zdGFudCBiYXNlZCBvbiB0aGUgbmFtZS4gIFJldHVybnMgR0lUX0hBU0hfVU5LTk9XTiBpZgorICogdGhlIG5hbWUgZG9lc24ndCBtYXRjaCBhIGtub3duIGFsZ29yaXRobS4KKyAqLworaW50IGhhc2hfYWxnb19ieV9uYW1lKGNvbnN0IGNoYXIgKm5hbWUpOworLyogSWRlbnRpY2FsLCBleGNlcHQgYmFzZWQgb24gdGhlIGZvcm1hdCBJRC4gKi8KK2ludCBoYXNoX2FsZ29fYnlfaWQodWludDMyX3QgZm9ybWF0X2lkKTsKKy8qIElkZW50aWNhbCwgZXhjZXB0IGJhc2VkIG9uIHRoZSBsZW5ndGguICovCitpbnQgaGFzaF9hbGdvX2J5X2xlbmd0aChpbnQgbGVuKTsKKy8qIElkZW50aWNhbCwgZXhjZXB0IGZvciBhIHBvaW50ZXIgdG8gc3RydWN0IGdpdF9oYXNoX2FsZ28uICovCitzdGF0aWMgaW5saW5lIGludCBoYXNoX2FsZ29fYnlfcHRyKGNvbnN0IHN0cnVjdCBnaXRfaGFzaF9hbGdvICpwKQoreworCXJldHVybiBwIC0gaGFzaF9hbGdvczsKK30KKworLyogVGhlIGxlbmd0aCBpbiBieXRlcyBhbmQgaW4gaGV4IGRpZ2l0cyBvZiBhbiBvYmplY3QgbmFtZSAoU0hBLTEgdmFsdWUpLiAqLworI2RlZmluZSBHSVRfU0hBMV9SQVdTWiAyMAorI2RlZmluZSBHSVRfU0hBMV9IRVhTWiAoMiAqIEdJVF9TSEExX1JBV1NaKQorLyogVGhlIGJsb2NrIHNpemUgb2YgU0hBLTEuICovCisjZGVmaW5lIEdJVF9TSEExX0JMS1NaIDY0CisKKy8qIFRoZSBsZW5ndGggaW4gYnl0ZXMgYW5kIGluIGhleCBkaWdpdHMgb2YgYW4gb2JqZWN0IG5hbWUgKFNIQS0yNTYgdmFsdWUpLiAqLworI2RlZmluZSBHSVRfU0hBMjU2X1JBV1NaIDMyCisjZGVmaW5lIEdJVF9TSEEyNTZfSEVYU1ogKDIgKiBHSVRfU0hBMjU2X1JBV1NaKQorLyogVGhlIGJsb2NrIHNpemUgb2YgU0hBLTI1Ni4gKi8KKyNkZWZpbmUgR0lUX1NIQTI1Nl9CTEtTWiA2NAorCisvKiBUaGUgbGVuZ3RoIGluIGJ5dGUgYW5kIGluIGhleCBkaWdpdHMgb2YgdGhlIGxhcmdlc3QgcG9zc2libGUgaGFzaCB2YWx1ZS4gKi8KKyNkZWZpbmUgR0lUX01BWF9SQVdTWiBHSVRfU0hBMjU2X1JBV1NaCisjZGVmaW5lIEdJVF9NQVhfSEVYU1ogR0lUX1NIQTI1Nl9IRVhTWgorLyogVGhlIGxhcmdlc3QgcG9zc2libGUgYmxvY2sgc2l6ZSBmb3IgYW55IHN1cHBvcnRlZCBoYXNoLiAqLworI2RlZmluZSBHSVRfTUFYX0JMS1NaIEdJVF9TSEEyNTZfQkxLU1oKKworc3RydWN0IG9iamVjdF9pZCB7CisJdW5zaWduZWQgY2hhciBoYXNoW0dJVF9NQVhfUkFXU1pdOworfTsKKworI2RlZmluZSB0aGVfaGFzaF9hbGdvIHRoZV9yZXBvc2l0b3J5LT5oYXNoX2FsZ28KKwogI2VuZGlmCmRpZmYgLS1naXQgYS9oYXNobWFwLmMgYi9oYXNobWFwLmMKaW5kZXggZDQyZjAxZi4uMDk4MTNlMSAxMDA2NDQKLS0tIGEvaGFzaG1hcC5jCisrKyBiL2hhc2htYXAuYwpAQCAtNTEsNyArNTEsNyBAQAogfQogCiAvKgotICogSW5jb3BvcmF0ZSBhbm90aGVyIGNodW5rIG9mIGRhdGEgaW50byBhIG1lbWloYXNoCisgKiBJbmNvcnBvcmF0ZSBhbm90aGVyIGNodW5rIG9mIGRhdGEgaW50byBhIG1lbWloYXNoCiAgKiBjb21wdXRhdGlvbi4KICAqLwogdW5zaWduZWQgaW50IG1lbWloYXNoX2NvbnQodW5zaWduZWQgaW50IGhhc2hfc2VlZCwgY29uc3Qgdm9pZCAqYnVmLCBzaXplX3QgbGVuKQpAQCAtMTQwLDggKzE0MCw4IEBACiB9CiAKIHN0YXRpYyBpbnQgYWx3YXlzX2VxdWFsKGNvbnN0IHZvaWQgKnVudXNlZF9jbXBfZGF0YSwKLQkJCWNvbnN0IHZvaWQgKnVudXNlZDEsCi0JCQljb25zdCB2b2lkICp1bnVzZWQyLAorCQkJY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKnVudXNlZDEsCisJCQljb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqdW51c2VkMiwKIAkJCWNvbnN0IHZvaWQgKnVudXNlZF9rZXlkYXRhKQogewogCXJldHVybiAwOwpAQCAtMTcxLDQxICsxNzEsNDkgQEAKIAltYXAtPmRvX2NvdW50X2l0ZW1zID0gMTsKIH0KIAotdm9pZCBoYXNobWFwX2ZyZWUoc3RydWN0IGhhc2htYXAgKm1hcCwgaW50IGZyZWVfZW50cmllcykKK3ZvaWQgaGFzaG1hcF9mcmVlXyhzdHJ1Y3QgaGFzaG1hcCAqbWFwLCBzc2l6ZV90IGVudHJ5X29mZnNldCkKIHsKIAlpZiAoIW1hcCB8fCAhbWFwLT50YWJsZSkKIAkJcmV0dXJuOwotCWlmIChmcmVlX2VudHJpZXMpIHsKKwlpZiAoZW50cnlfb2Zmc2V0ID49IDApIHsgLyogY2FsbGVkIGJ5IGhhc2htYXBfZnJlZV9lbnRyaWVzICovCiAJCXN0cnVjdCBoYXNobWFwX2l0ZXIgaXRlcjsKIAkJc3RydWN0IGhhc2htYXBfZW50cnkgKmU7CisKIAkJaGFzaG1hcF9pdGVyX2luaXQobWFwLCAmaXRlcik7CiAJCXdoaWxlICgoZSA9IGhhc2htYXBfaXRlcl9uZXh0KCZpdGVyKSkpCi0JCQlmcmVlKGUpOworCQkJLyoKKwkJCSAqIGxpa2UgY29udGFpbmVyX29mLCBidXQgdXNpbmcgY2FsbGVyLWNhbGN1bGF0ZWQKKwkJCSAqIG9mZnNldCAoY2FsbGVyIGJlaW5nIGhhc2htYXBfZnJlZV9lbnRyaWVzKQorCQkJICovCisJCQlmcmVlKChjaGFyICopZSAtIGVudHJ5X29mZnNldCk7CiAJfQogCWZyZWUobWFwLT50YWJsZSk7CiAJbWVtc2V0KG1hcCwgMCwgc2l6ZW9mKCptYXApKTsKIH0KIAotdm9pZCAqaGFzaG1hcF9nZXQoY29uc3Qgc3RydWN0IGhhc2htYXAgKm1hcCwgY29uc3Qgdm9pZCAqa2V5LCBjb25zdCB2b2lkICprZXlkYXRhKQorc3RydWN0IGhhc2htYXBfZW50cnkgKmhhc2htYXBfZ2V0KGNvbnN0IHN0cnVjdCBoYXNobWFwICptYXAsCisJCQkJY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmtleSwKKwkJCQljb25zdCB2b2lkICprZXlkYXRhKQogewogCXJldHVybiAqZmluZF9lbnRyeV9wdHIobWFwLCBrZXksIGtleWRhdGEpOwogfQogCi12b2lkICpoYXNobWFwX2dldF9uZXh0KGNvbnN0IHN0cnVjdCBoYXNobWFwICptYXAsIGNvbnN0IHZvaWQgKmVudHJ5KQorc3RydWN0IGhhc2htYXBfZW50cnkgKmhhc2htYXBfZ2V0X25leHQoY29uc3Qgc3RydWN0IGhhc2htYXAgKm1hcCwKKwkJCWNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplbnRyeSkKIHsKLQlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZSA9ICgoc3RydWN0IGhhc2htYXBfZW50cnkgKikgZW50cnkpLT5uZXh0OworCXN0cnVjdCBoYXNobWFwX2VudHJ5ICplID0gZW50cnktPm5leHQ7CiAJZm9yICg7IGU7IGUgPSBlLT5uZXh0KQogCQlpZiAoZW50cnlfZXF1YWxzKG1hcCwgZW50cnksIGUsIE5VTEwpKQogCQkJcmV0dXJuIGU7CiAJcmV0dXJuIE5VTEw7CiB9CiAKLXZvaWQgaGFzaG1hcF9hZGQoc3RydWN0IGhhc2htYXAgKm1hcCwgdm9pZCAqZW50cnkpCit2b2lkIGhhc2htYXBfYWRkKHN0cnVjdCBoYXNobWFwICptYXAsIHN0cnVjdCBoYXNobWFwX2VudHJ5ICplbnRyeSkKIHsKIAl1bnNpZ25lZCBpbnQgYiA9IGJ1Y2tldChtYXAsIGVudHJ5KTsKIAogCS8qIGFkZCBlbnRyeSAqLwotCSgoc3RydWN0IGhhc2htYXBfZW50cnkgKikgZW50cnkpLT5uZXh0ID0gbWFwLT50YWJsZVtiXTsKKwllbnRyeS0+bmV4dCA9IG1hcC0+dGFibGVbYl07CiAJbWFwLT50YWJsZVtiXSA9IGVudHJ5OwogCiAJLyogZml4IHNpemUgYW5kIHJlaGFzaCBpZiBhcHByb3ByaWF0ZSAqLwpAQCAtMjE2LDcgKzIyNCw5IEBACiAJfQogfQogCi12b2lkICpoYXNobWFwX3JlbW92ZShzdHJ1Y3QgaGFzaG1hcCAqbWFwLCBjb25zdCB2b2lkICprZXksIGNvbnN0IHZvaWQgKmtleWRhdGEpCitzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqaGFzaG1hcF9yZW1vdmUoc3RydWN0IGhhc2htYXAgKm1hcCwKKwkJCQkJY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmtleSwKKwkJCQkJY29uc3Qgdm9pZCAqa2V5ZGF0YSkKIHsKIAlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqb2xkOwogCXN0cnVjdCBoYXNobWFwX2VudHJ5ICoqZSA9IGZpbmRfZW50cnlfcHRyKG1hcCwga2V5LCBrZXlkYXRhKTsKQEAgLTIzOCw3ICsyNDgsOCBAQAogCXJldHVybiBvbGQ7CiB9CiAKLXZvaWQgKmhhc2htYXBfcHV0KHN0cnVjdCBoYXNobWFwICptYXAsIHZvaWQgKmVudHJ5KQorc3RydWN0IGhhc2htYXBfZW50cnkgKmhhc2htYXBfcHV0KHN0cnVjdCBoYXNobWFwICptYXAsCisJCQkJc3RydWN0IGhhc2htYXBfZW50cnkgKmVudHJ5KQogewogCXN0cnVjdCBoYXNobWFwX2VudHJ5ICpvbGQgPSBoYXNobWFwX3JlbW92ZShtYXAsIGVudHJ5LCBOVUxMKTsKIAloYXNobWFwX2FkZChtYXAsIGVudHJ5KTsKQEAgLTI1Miw3ICsyNjMsNyBAQAogCWl0ZXItPm5leHQgPSBOVUxMOwogfQogCi12b2lkICpoYXNobWFwX2l0ZXJfbmV4dChzdHJ1Y3QgaGFzaG1hcF9pdGVyICppdGVyKQorc3RydWN0IGhhc2htYXBfZW50cnkgKmhhc2htYXBfaXRlcl9uZXh0KHN0cnVjdCBoYXNobWFwX2l0ZXIgKml0ZXIpCiB7CiAJc3RydWN0IGhhc2htYXBfZW50cnkgKmN1cnJlbnQgPSBpdGVyLT5uZXh0OwogCWZvciAoOzspIHsKQEAgLTI3NSwxMCArMjg2LDE1IEBACiB9OwogCiBzdGF0aWMgaW50IHBvb2xfZW50cnlfY21wKGNvbnN0IHZvaWQgKnVudXNlZF9jbXBfZGF0YSwKLQkJCSAgY29uc3Qgc3RydWN0IHBvb2xfZW50cnkgKmUxLAotCQkJICBjb25zdCBzdHJ1Y3QgcG9vbF9lbnRyeSAqZTIsCi0JCQkgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmtleWRhdGEpCisJCQkgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplcHRyLAorCQkJICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAorCQkJICBjb25zdCB2b2lkICprZXlkYXRhKQogeworCWNvbnN0IHN0cnVjdCBwb29sX2VudHJ5ICplMSwgKmUyOworCisJZTEgPSBjb250YWluZXJfb2YoZXB0ciwgY29uc3Qgc3RydWN0IHBvb2xfZW50cnksIGVudCk7CisJZTIgPSBjb250YWluZXJfb2YoZW50cnlfb3Jfa2V5LCBjb25zdCBzdHJ1Y3QgcG9vbF9lbnRyeSwgZW50KTsKKwogCXJldHVybiBlMS0+ZGF0YSAhPSBrZXlkYXRhICYmCiAJICAgICAgIChlMS0+bGVuICE9IGUyLT5sZW4gfHwgbWVtY21wKGUxLT5kYXRhLCBrZXlkYXRhLCBlMS0+bGVuKSk7CiB9CkBAIC0yOTAsMTggKzMwNiwxOCBAQAogCiAJLyogaW5pdGlhbGl6ZSBzdHJpbmcgcG9vbCBoYXNobWFwICovCiAJaWYgKCFtYXAudGFibGVzaXplKQotCQloYXNobWFwX2luaXQoJm1hcCwgKGhhc2htYXBfY21wX2ZuKSBwb29sX2VudHJ5X2NtcCwgTlVMTCwgMCk7CisJCWhhc2htYXBfaW5pdCgmbWFwLCBwb29sX2VudHJ5X2NtcCwgTlVMTCwgMCk7CiAKIAkvKiBsb29rdXAgaW50ZXJuZWQgc3RyaW5nIGluIHBvb2wgKi8KLQloYXNobWFwX2VudHJ5X2luaXQoJmtleSwgbWVtaGFzaChkYXRhLCBsZW4pKTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmtleS5lbnQsIG1lbWhhc2goZGF0YSwgbGVuKSk7CiAJa2V5LmxlbiA9IGxlbjsKLQllID0gaGFzaG1hcF9nZXQoJm1hcCwgJmtleSwgZGF0YSk7CisJZSA9IGhhc2htYXBfZ2V0X2VudHJ5KCZtYXAsICZrZXksIGVudCwgZGF0YSk7CiAJaWYgKCFlKSB7CiAJCS8qIG5vdCBmb3VuZDogY3JlYXRlIGl0ICovCiAJCUZMRVhfQUxMT0NfTUVNKGUsIGRhdGEsIGRhdGEsIGxlbik7Ci0JCWhhc2htYXBfZW50cnlfaW5pdChlLCBrZXkuZW50Lmhhc2gpOworCQloYXNobWFwX2VudHJ5X2luaXQoJmUtPmVudCwga2V5LmVudC5oYXNoKTsKIAkJZS0+bGVuID0gbGVuOwotCQloYXNobWFwX2FkZCgmbWFwLCBlKTsKKwkJaGFzaG1hcF9hZGQoJm1hcCwgJmUtPmVudCk7CiAJfQogCXJldHVybiBlLT5kYXRhOwogfQpkaWZmIC0tZ2l0IGEvaGFzaG1hcC5oIGIvaGFzaG1hcC5oCmluZGV4IGQzNzVkOWMuLjc5YWU5ZjggMTAwNjQ0Ci0tLSBhL2hhc2htYXAuaAorKysgYi9oYXNobWFwLmgKQEAgLTEsNiArMSw4IEBACiAjaWZuZGVmIEhBU0hNQVBfSAogI2RlZmluZSBIQVNITUFQX0gKIAorI2luY2x1ZGUgImhhc2guaCIKKwogLyoKICAqIEdlbmVyaWMgaW1wbGVtZW50YXRpb24gb2YgaGFzaC1iYXNlZCBrZXktdmFsdWUgbWFwcGluZ3MuCiAgKgpAQCAtMTEsNyArMTMsNyBAQAogICoKICAqIHN0cnVjdCBoYXNobWFwIG1hcDsKICAqIHN0cnVjdCBsb25nMnN0cmluZyB7Ci0gKiAgICAgc3RydWN0IGhhc2htYXBfZW50cnkgZW50OyAvLyBtdXN0IGJlIHRoZSBmaXJzdCBtZW1iZXIhCisgKiAgICAgc3RydWN0IGhhc2htYXBfZW50cnkgZW50OwogICogICAgIGxvbmcga2V5OwogICogICAgIGNoYXIgdmFsdWVbRkxFWF9BUlJBWV07ICAgLy8gYmUgY2FyZWZ1bCB3aXRoIGFsbG9jYXRpbmcgb24gc3RhY2shCiAgKiB9OwpAQCAtMTksMTIgKzIxLDE2IEBACiAgKiAjZGVmaW5lIENPTVBBUkVfVkFMVUUgMQogICoKICAqIHN0YXRpYyBpbnQgbG9uZzJzdHJpbmdfY21wKGNvbnN0IHZvaWQgKmhhc2htYXBfY21wX2ZuX2RhdGEsCi0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgbG9uZzJzdHJpbmcgKmUxLAotICogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGxvbmcyc3RyaW5nICplMiwKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplcHRyLAorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmVudHJ5X29yX2tleSwKICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZvaWQgKmtleWRhdGEpCiAgKiB7CiAgKiAgICAgY29uc3QgY2hhciAqc3RyaW5nID0ga2V5ZGF0YTsKICAqICAgICB1bnNpZ25lZCBmbGFncyA9ICoodW5zaWduZWQgKiloYXNobWFwX2NtcF9mbl9kYXRhOworICogICAgIGNvbnN0IHN0cnVjdCBsb25nMnN0cmluZyAqZTEsICplMjsKKyAqCisgKiAgICAgZTEgPSBjb250YWluZXJfb2YoZXB0ciwgY29uc3Qgc3RydWN0IGxvbmcyc3RyaW5nLCBlbnQpOworICogICAgIGUyID0gY29udGFpbmVyX29mKGVudHJ5X29yX2tleSwgY29uc3Qgc3RydWN0IGxvbmcyc3RyaW5nLCBlbnQpOwogICoKICAqICAgICBpZiAoZmxhZ3MgJiBDT01QQVJFX1ZBTFVFKQogICogICAgICAgICByZXR1cm4gZTEtPmtleSAhPSBlMi0+a2V5IHx8CkBAIC0zOSw1NCArNDUsNTggQEAKICAqICAgICBjaGFyIHZhbHVlWzI1NV0sIGFjdGlvblszMl07CiAgKiAgICAgdW5zaWduZWQgZmxhZ3MgPSAwOwogICoKLSAqICAgICBoYXNobWFwX2luaXQoJm1hcCwgKGhhc2htYXBfY21wX2ZuKSBsb25nMnN0cmluZ19jbXAsICZmbGFncywgMCk7CisgKiAgICAgaGFzaG1hcF9pbml0KCZtYXAsIGxvbmcyc3RyaW5nX2NtcCwgJmZsYWdzLCAwKTsKICAqCiAgKiAgICAgd2hpbGUgKHNjYW5mKCIlcyAlbGQgJXMiLCBhY3Rpb24sICZrZXksIHZhbHVlKSkgewogICoKICAqICAgICAgICAgaWYgKCFzdHJjbXAoImFkZCIsIGFjdGlvbikpIHsKICAqICAgICAgICAgICAgIHN0cnVjdCBsb25nMnN0cmluZyAqZTsKICAqICAgICAgICAgICAgIEZMRVhfQUxMT0NfU1RSKGUsIHZhbHVlLCB2YWx1ZSk7Ci0gKiAgICAgICAgICAgICBoYXNobWFwX2VudHJ5X2luaXQoZSwgbWVtaGFzaCgma2V5LCBzaXplb2YobG9uZykpKTsKKyAqICAgICAgICAgICAgIGhhc2htYXBfZW50cnlfaW5pdCgmZS0+ZW50LCBtZW1oYXNoKCZrZXksIHNpemVvZihsb25nKSkpOwogICogICAgICAgICAgICAgZS0+a2V5ID0ga2V5OwotICogICAgICAgICAgICAgaGFzaG1hcF9hZGQoJm1hcCwgZSk7CisgKiAgICAgICAgICAgICBoYXNobWFwX2FkZCgmbWFwLCAmZS0+ZW50KTsKICAqICAgICAgICAgfQogICoKICAqICAgICAgICAgaWYgKCFzdHJjbXAoInByaW50X2FsbF9ieV9rZXkiLCBhY3Rpb24pKSB7CiAgKiAgICAgICAgICAgICBzdHJ1Y3QgbG9uZzJzdHJpbmcgaywgKmU7Ci0gKiAgICAgICAgICAgICBoYXNobWFwX2VudHJ5X2luaXQoJmssIG1lbWhhc2goJmtleSwgc2l6ZW9mKGxvbmcpKSk7CisgKiAgICAgICAgICAgICBoYXNobWFwX2VudHJ5X2luaXQoJmsuZW50LCBtZW1oYXNoKCZrZXksIHNpemVvZihsb25nKSkpOwogICogICAgICAgICAgICAgay5rZXkgPSBrZXk7CiAgKgogICogICAgICAgICAgICAgZmxhZ3MgJj0gfkNPTVBBUkVfVkFMVUU7Ci0gKiAgICAgICAgICAgICBlID0gaGFzaG1hcF9nZXQoJm1hcCwgJmssIE5VTEwpOworICogICAgICAgICAgICAgZSA9IGhhc2htYXBfZ2V0X2VudHJ5KCZtYXAsICZrLCBlbnQsIE5VTEwpOwogICogICAgICAgICAgICAgaWYgKGUpIHsKICAqICAgICAgICAgICAgICAgICBwcmludGYoImZpcnN0OiAlbGQgJXNcbiIsIGUtPmtleSwgZS0+dmFsdWUpOwotICogICAgICAgICAgICAgICAgIHdoaWxlICgoZSA9IGhhc2htYXBfZ2V0X25leHQoJm1hcCwgZSkpKQorICogICAgICAgICAgICAgICAgIHdoaWxlICgoZSA9IGhhc2htYXBfZ2V0X25leHRfZW50cnkoJm1hcCwgZSwKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBsb25nMnN0cmluZywgZW50KSkpIHsKICAqICAgICAgICAgICAgICAgICAgICAgcHJpbnRmKCJmb3VuZCBtb3JlOiAlbGQgJXNcbiIsIGUtPmtleSwgZS0+dmFsdWUpOworICogICAgICAgICAgICAgICAgIH0KICAqICAgICAgICAgICAgIH0KICAqICAgICAgICAgfQogICoKICAqICAgICAgICAgaWYgKCFzdHJjbXAoImhhc19leGFjdF9tYXRjaCIsIGFjdGlvbikpIHsKICAqICAgICAgICAgICAgIHN0cnVjdCBsb25nMnN0cmluZyAqZTsKICAqICAgICAgICAgICAgIEZMRVhfQUxMT0NfU1RSKGUsIHZhbHVlLCB2YWx1ZSk7Ci0gKiAgICAgICAgICAgICBoYXNobWFwX2VudHJ5X2luaXQoZSwgbWVtaGFzaCgma2V5LCBzaXplb2YobG9uZykpKTsKKyAqICAgICAgICAgICAgIGhhc2htYXBfZW50cnlfaW5pdCgmZS0+ZW50LCBtZW1oYXNoKCZrZXksIHNpemVvZihsb25nKSkpOwogICogICAgICAgICAgICAgZS0+a2V5ID0ga2V5OwogICoKICAqICAgICAgICAgICAgIGZsYWdzIHw9IENPTVBBUkVfVkFMVUU7Ci0gKiAgICAgICAgICAgICBwcmludGYoIiVzZm91bmRcbiIsIGhhc2htYXBfZ2V0KCZtYXAsIGUsIE5VTEwpID8gIiIgOiAibm90ICIpOworICogICAgICAgICAgICAgcHJpbnRmKCIlc2ZvdW5kXG4iLAorICogICAgICAgICAgICAgICAgICAgIGhhc2htYXBfZ2V0KCZtYXAsICZlLT5lbnQsIE5VTEwpID8gIiIgOiAibm90ICIpOwogICogICAgICAgICAgICAgZnJlZShlKTsKICAqICAgICAgICAgfQogICoKICAqICAgICAgICAgaWYgKCFzdHJjbXAoImhhc19leGFjdF9tYXRjaF9ub19oZWFwX2FsbG9jIiwgYWN0aW9uKSkgewogICogICAgICAgICAgICAgc3RydWN0IGxvbmcyc3RyaW5nIGs7Ci0gKiAgICAgICAgICAgICBoYXNobWFwX2VudHJ5X2luaXQoJmssIG1lbWhhc2goJmtleSwgc2l6ZW9mKGxvbmcpKSk7CisgKiAgICAgICAgICAgICBoYXNobWFwX2VudHJ5X2luaXQoJmsuZW50LCBtZW1oYXNoKCZrZXksIHNpemVvZihsb25nKSkpOwogICogICAgICAgICAgICAgay5rZXkgPSBrZXk7CiAgKgogICogICAgICAgICAgICAgZmxhZ3MgfD0gQ09NUEFSRV9WQUxVRTsKLSAqICAgICAgICAgICAgIHByaW50ZigiJXNmb3VuZFxuIiwgaGFzaG1hcF9nZXQoJm1hcCwgJmssIHZhbHVlKSA/ICIiIDogIm5vdCAiKTsKKyAqICAgICAgICAgICAgIHByaW50ZigiJXNmb3VuZFxuIiwKKyAqICAgICAgICAgICAgICAgICAgICBoYXNobWFwX2dldCgmbWFwLCAmay5lbnQsIHZhbHVlKSA/ICIiIDogIm5vdCAiKTsKICAqICAgICAgICAgfQogICoKICAqICAgICAgICAgaWYgKCFzdHJjbXAoImVuZCIsIGFjdGlvbikpIHsKLSAqICAgICAgICAgICAgIGhhc2htYXBfZnJlZSgmbWFwLCAxKTsKKyAqICAgICAgICAgICAgIGhhc2htYXBfZnJlZV9lbnRyaWVzKCZtYXAsIHN0cnVjdCBsb25nMnN0cmluZywgZW50KTsKICAqICAgICAgICAgICAgIGJyZWFrOwogICogICAgICAgICB9CiAgKiAgICAgfQpAQCAtMTA0LDExICsxMTQsMTEgQEAKICAqIGBtZW1paGFzaF9jb250YCBpcyBhIHZhcmlhbnQgb2YgYG1lbWloYXNoYCB0aGF0IGFsbG93cyBhIGNvbXB1dGF0aW9uIHRvIGJlCiAgKiBjb250aW51ZWQgd2l0aCBhbm90aGVyIGNodW5rIG9mIGRhdGEuCiAgKi8KLWV4dGVybiB1bnNpZ25lZCBpbnQgc3RyaGFzaChjb25zdCBjaGFyICpidWYpOwotZXh0ZXJuIHVuc2lnbmVkIGludCBzdHJpaGFzaChjb25zdCBjaGFyICpidWYpOwotZXh0ZXJuIHVuc2lnbmVkIGludCBtZW1oYXNoKGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbik7Ci1leHRlcm4gdW5zaWduZWQgaW50IG1lbWloYXNoKGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbik7Ci1leHRlcm4gdW5zaWduZWQgaW50IG1lbWloYXNoX2NvbnQodW5zaWduZWQgaW50IGhhc2hfc2VlZCwgY29uc3Qgdm9pZCAqYnVmLCBzaXplX3QgbGVuKTsKK3Vuc2lnbmVkIGludCBzdHJoYXNoKGNvbnN0IGNoYXIgKmJ1Zik7Cit1bnNpZ25lZCBpbnQgc3RyaWhhc2goY29uc3QgY2hhciAqYnVmKTsKK3Vuc2lnbmVkIGludCBtZW1oYXNoKGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbik7Cit1bnNpZ25lZCBpbnQgbWVtaWhhc2goY29uc3Qgdm9pZCAqYnVmLCBzaXplX3QgbGVuKTsKK3Vuc2lnbmVkIGludCBtZW1paGFzaF9jb250KHVuc2lnbmVkIGludCBoYXNoX3NlZWQsIGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbik7CiAKIC8qCiAgKiBDb252ZXJ0cyBhIGNyeXB0b2dyYXBoaWMgaGFzaCAoZS5nLiBTSEEtMSkgaW50byBhbiBpbnQtc2l6ZWQgaGFzaCBjb2RlCkBAIC0xMTgsMjAgKzEyOCwyMCBAQAogICogdGhlIHJlc3VsdHMgd2lsbCBiZSBkaWZmZXJlbnQgb24gYmlnLWVuZGlhbiBhbmQgbGl0dGxlLWVuZGlhbgogICogcGxhdGZvcm1zLCBzbyB0aGV5IHNob3VsZCBub3QgYmUgc3RvcmVkIG9yIHRyYW5zZmVycmVkIG92ZXIgdGhlIG5ldC4KICAqLwotc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgc2hhMWhhc2goY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSkKK3N0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IG9pZGhhc2goY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewogCS8qCi0JICogRXF1aXZhbGVudCB0byAncmV0dXJuICoodW5zaWduZWQgaW50ICopc2hhMTsnLCBidXQgc2FmZSBvbgorCSAqIEVxdWl2YWxlbnQgdG8gJ3JldHVybiAqKHVuc2lnbmVkIGludCAqKW9pZC0+aGFzaDsnLCBidXQgc2FmZSBvbgogCSAqIHBsYXRmb3JtcyB0aGF0IGRvbid0IHN1cHBvcnQgdW5hbGlnbmVkIHJlYWRzLgogCSAqLwogCXVuc2lnbmVkIGludCBoYXNoOwotCW1lbWNweSgmaGFzaCwgc2hhMSwgc2l6ZW9mKGhhc2gpKTsKKwltZW1jcHkoJmhhc2gsIG9pZC0+aGFzaCwgc2l6ZW9mKGhhc2gpKTsKIAlyZXR1cm4gaGFzaDsKIH0KIAogLyoKICAqIHN0cnVjdCBoYXNobWFwX2VudHJ5IGlzIGFuIG9wYXF1ZSBzdHJ1Y3R1cmUgcmVwcmVzZW50aW5nIGFuIGVudHJ5IGluIHRoZQotICogaGFzaCB0YWJsZSwgd2hpY2ggbXVzdCBiZSB1c2VkIGFzIGZpcnN0IG1lbWJlciBvZiB1c2VyIGRhdGEgc3RydWN0dXJlcy4KKyAqIGhhc2ggdGFibGUuCiAgKiBJZGVhbGx5IGl0IHNob3VsZCBiZSBmb2xsb3dlZCBieSBhbiBpbnQtc2l6ZWQgbWVtYmVyIHRvIHByZXZlbnQgdW51c2VkCiAgKiBtZW1vcnkgb24gNjQtYml0IHN5c3RlbXMgZHVlIHRvIGFsaWdubWVudC4KICAqLwpAQCAtMTY2LDcgKzE3Niw4IEBACiAgKiBUaGUgYGhhc2htYXBfY21wX2ZuX2RhdGFgIGVudHJ5IGlzIHRoZSBwb2ludGVyIGdpdmVuIGluIHRoZSBpbml0IGZ1bmN0aW9uLgogICovCiB0eXBlZGVmIGludCAoKmhhc2htYXBfY21wX2ZuKShjb25zdCB2b2lkICpoYXNobWFwX2NtcF9mbl9kYXRhLAotCQkJICAgICAgY29uc3Qgdm9pZCAqZW50cnksIGNvbnN0IHZvaWQgKmVudHJ5X29yX2tleSwKKwkJCSAgICAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplbnRyeSwKKwkJCSAgICAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplbnRyeV9vcl9rZXksCiAJCQkgICAgICBjb25zdCB2b2lkICprZXlkYXRhKTsKIAogLyoKQEAgLTIxNiwxOCArMjI3LDI1IEBACiAgKiBwYXJhbWV0ZXIgbWF5IGJlIHVzZWQgdG8gcHJlYWxsb2NhdGUgYSBzdWZmaWNpZW50bHkgbGFyZ2UgdGFibGUgYW5kIHRodXMKICAqIHByZXZlbnQgZXhwZW5zaXZlIHJlc2l6aW5nLiBJZiAwLCB0aGUgdGFibGUgaXMgZHluYW1pY2FsbHkgcmVzaXplZC4KICAqLwotZXh0ZXJuIHZvaWQgaGFzaG1hcF9pbml0KHN0cnVjdCBoYXNobWFwICptYXAsCit2b2lkIGhhc2htYXBfaW5pdChzdHJ1Y3QgaGFzaG1hcCAqbWFwLAogCQkJIGhhc2htYXBfY21wX2ZuIGVxdWFsc19mdW5jdGlvbiwKIAkJCSBjb25zdCB2b2lkICplcXVhbHNfZnVuY3Rpb25fZGF0YSwKIAkJCSBzaXplX3QgaW5pdGlhbF9zaXplKTsKIAorLyogaW50ZXJuYWwgZnVuY3Rpb24gZm9yIGZyZWVpbmcgaGFzaG1hcCAqLwordm9pZCBoYXNobWFwX2ZyZWVfKHN0cnVjdCBoYXNobWFwICptYXAsIHNzaXplX3Qgb2Zmc2V0KTsKKwogLyoKLSAqIEZyZWVzIGEgaGFzaG1hcCBzdHJ1Y3R1cmUgYW5kIGFsbG9jYXRlZCBtZW1vcnkuCi0gKgotICogSWYgYGZyZWVfZW50cmllc2AgaXMgdHJ1ZSwgZWFjaCBoYXNobWFwX2VudHJ5IGluIHRoZSBtYXAgaXMgZnJlZWQgYXMgd2VsbAotICogdXNpbmcgc3RkbGlicyBmcmVlKCkuCisgKiBGcmVlcyBhIGhhc2htYXAgc3RydWN0dXJlIGFuZCBhbGxvY2F0ZWQgbWVtb3J5LCBsZWF2ZXMgZW50cmllcyB1bmRpc3R1cmJlZAogICovCi1leHRlcm4gdm9pZCBoYXNobWFwX2ZyZWUoc3RydWN0IGhhc2htYXAgKm1hcCwgaW50IGZyZWVfZW50cmllcyk7CisjZGVmaW5lIGhhc2htYXBfZnJlZShtYXApIGhhc2htYXBfZnJlZV8obWFwLCAtMSkKKworLyoKKyAqIEZyZWVzIEBtYXAgYW5kIGFsbCBlbnRyaWVzLiAgQHR5cGUgaXMgdGhlIHN0cnVjdCB0eXBlIG9mIHRoZSBlbnRyeQorICogd2hlcmUgQG1lbWJlciBpcyB0aGUgaGFzaG1hcF9lbnRyeSBzdHJ1Y3QgdXNlZCB0byBhc3NvY2lhdGUgd2l0aCBAbWFwCisgKi8KKyNkZWZpbmUgaGFzaG1hcF9mcmVlX2VudHJpZXMobWFwLCB0eXBlLCBtZW1iZXIpIFwKKwloYXNobWFwX2ZyZWVfKG1hcCwgb2Zmc2V0b2YodHlwZSwgbWVtYmVyKSk7CiAKIC8qIGhhc2htYXBfZW50cnkgZnVuY3Rpb25zICovCiAKQEAgLTI0Miw5ICsyNjAsOSBAQAogICogeW91ciBzdHJ1Y3R1cmUgd2FzIGFsbG9jYXRlZCB3aXRoIHhtYWxsb2MoKSwgeW91IGNhbiBqdXN0IGZyZWUoMykgaXQsCiAgKiBhbmQgaWYgaXQgaXMgb24gc3RhY2ssIHlvdSBjYW4ganVzdCBsZXQgaXQgZ28gb3V0IG9mIHNjb3BlKS4KICAqLwotc3RhdGljIGlubGluZSB2b2lkIGhhc2htYXBfZW50cnlfaW5pdCh2b2lkICplbnRyeSwgdW5zaWduZWQgaW50IGhhc2gpCitzdGF0aWMgaW5saW5lIHZvaWQgaGFzaG1hcF9lbnRyeV9pbml0KHN0cnVjdCBoYXNobWFwX2VudHJ5ICplLAorCQkJCQl1bnNpZ25lZCBpbnQgaGFzaCkKIHsKLQlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZSA9IGVudHJ5OwogCWUtPmhhc2ggPSBoYXNoOwogCWUtPm5leHQgPSBOVUxMOwogfQpAQCAtMjg0LDggKzMwMiw5IEBACiAgKiBJZiBhbiBlbnRyeSB3aXRoIG1hdGNoaW5nIGhhc2ggY29kZSBpcyBmb3VuZCwgYGtleWAgYW5kIGBrZXlkYXRhYCBhcmUgcGFzc2VkCiAgKiB0byBgaGFzaG1hcF9jbXBfZm5gIHRvIGRlY2lkZSB3aGV0aGVyIHRoZSBlbnRyeSBtYXRjaGVzIHRoZSBrZXkuCiAgKi8KLWV4dGVybiB2b2lkICpoYXNobWFwX2dldChjb25zdCBzdHJ1Y3QgaGFzaG1hcCAqbWFwLCBjb25zdCB2b2lkICprZXksCi0JCQkgY29uc3Qgdm9pZCAqa2V5ZGF0YSk7CitzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqaGFzaG1hcF9nZXQoY29uc3Qgc3RydWN0IGhhc2htYXAgKm1hcCwKKwkJCQljb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqa2V5LAorCQkJCWNvbnN0IHZvaWQgKmtleWRhdGEpOwogCiAvKgogICogUmV0dXJucyB0aGUgaGFzaG1hcCBlbnRyeSBmb3IgdGhlIHNwZWNpZmllZCBoYXNoIGNvZGUgYW5kIGtleSBkYXRhLApAQCAtMjk5LDkgKzMxOCwxMCBAQAogICogYGVudHJ5X29yX2tleWAgcGFyYW1ldGVyIG9mIGBoYXNobWFwX2NtcF9mbmAgcG9pbnRzIHRvIGEgaGFzaG1hcF9lbnRyeQogICogc3RydWN0dXJlIHRoYXQgc2hvdWxkIG5vdCBiZSB1c2VkIGluIHRoZSBjb21wYXJpc29uLgogICovCi1zdGF0aWMgaW5saW5lIHZvaWQgKmhhc2htYXBfZ2V0X2Zyb21faGFzaChjb25zdCBzdHJ1Y3QgaGFzaG1hcCAqbWFwLAotCQkJCQkgIHVuc2lnbmVkIGludCBoYXNoLAotCQkJCQkgIGNvbnN0IHZvaWQgKmtleWRhdGEpCitzdGF0aWMgaW5saW5lIHN0cnVjdCBoYXNobWFwX2VudHJ5ICpoYXNobWFwX2dldF9mcm9tX2hhc2goCisJCQkJCWNvbnN0IHN0cnVjdCBoYXNobWFwICptYXAsCisJCQkJCXVuc2lnbmVkIGludCBoYXNoLAorCQkJCQljb25zdCB2b2lkICprZXlkYXRhKQogewogCXN0cnVjdCBoYXNobWFwX2VudHJ5IGtleTsKIAloYXNobWFwX2VudHJ5X2luaXQoJmtleSwgaGFzaCk7CkBAIC0zMTYsNyArMzM2LDggQEAKICAqIGBlbnRyeWAgaXMgdGhlIGhhc2htYXBfZW50cnkgdG8gc3RhcnQgdGhlIHNlYXJjaCBmcm9tLCBvYnRhaW5lZCB2aWEgYSBwcmV2aW91cwogICogY2FsbCB0byBgaGFzaG1hcF9nZXRgIG9yIGBoYXNobWFwX2dldF9uZXh0YC4KICAqLwotZXh0ZXJuIHZvaWQgKmhhc2htYXBfZ2V0X25leHQoY29uc3Qgc3RydWN0IGhhc2htYXAgKm1hcCwgY29uc3Qgdm9pZCAqZW50cnkpOworc3RydWN0IGhhc2htYXBfZW50cnkgKmhhc2htYXBfZ2V0X25leHQoY29uc3Qgc3RydWN0IGhhc2htYXAgKm1hcCwKKwkJCWNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplbnRyeSk7CiAKIC8qCiAgKiBBZGRzIGEgaGFzaG1hcCBlbnRyeS4gVGhpcyBhbGxvd3MgdG8gYWRkIGR1cGxpY2F0ZSBlbnRyaWVzIChpLmUuCkBAIC0zMjUsNyArMzQ2LDcgQEAKICAqIGBtYXBgIGlzIHRoZSBoYXNobWFwIHN0cnVjdHVyZS4KICAqIGBlbnRyeWAgaXMgdGhlIGVudHJ5IHRvIGFkZC4KICAqLwotZXh0ZXJuIHZvaWQgaGFzaG1hcF9hZGQoc3RydWN0IGhhc2htYXAgKm1hcCwgdm9pZCAqZW50cnkpOwordm9pZCBoYXNobWFwX2FkZChzdHJ1Y3QgaGFzaG1hcCAqbWFwLCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnkpOwogCiAvKgogICogQWRkcyBvciByZXBsYWNlcyBhIGhhc2htYXAgZW50cnkuIElmIHRoZSBoYXNobWFwIGNvbnRhaW5zIGR1cGxpY2F0ZQpAQCAtMzM1LDcgKzM1NiwyMCBAQAogICogYGVudHJ5YCBpcyB0aGUgZW50cnkgdG8gYWRkIG9yIHJlcGxhY2UuCiAgKiBSZXR1cm5zIHRoZSByZXBsYWNlZCBlbnRyeSwgb3IgTlVMTCBpZiBub3QgZm91bmQgKGkuZS4gdGhlIGVudHJ5IHdhcyBhZGRlZCkuCiAgKi8KLWV4dGVybiB2b2lkICpoYXNobWFwX3B1dChzdHJ1Y3QgaGFzaG1hcCAqbWFwLCB2b2lkICplbnRyeSk7CitzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqaGFzaG1hcF9wdXQoc3RydWN0IGhhc2htYXAgKm1hcCwKKwkJCQlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnkpOworCisvKgorICogQWRkcyBvciByZXBsYWNlcyBhIGhhc2htYXAgZW50cnkgY29udGFpbmVkIHdpdGhpbiBAa2V5dmFyLAorICogd2hlcmUgQGtleXZhciBpcyBhIHBvaW50ZXIgdG8gYSBzdHJ1Y3QgY29udGFpbmluZyBhCisgKiAic3RydWN0IGhhc2htYXBfZW50cnkiIEBtZW1iZXIuCisgKgorICogUmV0dXJucyB0aGUgcmVwbGFjZWQgcG9pbnRlciB3aGljaCBpcyBvZiB0aGUgc2FtZSB0eXBlIGFzIEBrZXl2YXIsCisgKiBvciBOVUxMIGlmIG5vdCBmb3VuZC4KKyAqLworI2RlZmluZSBoYXNobWFwX3B1dF9lbnRyeShtYXAsIGtleXZhciwgbWVtYmVyKSBcCisJY29udGFpbmVyX29mX29yX251bGxfb2Zmc2V0KGhhc2htYXBfcHV0KG1hcCwgJihrZXl2YXIpLT5tZW1iZXIpLCBcCisJCQkJT0ZGU0VUT0ZfVkFSKGtleXZhciwgbWVtYmVyKSkKIAogLyoKICAqIFJlbW92ZXMgYSBoYXNobWFwIGVudHJ5IG1hdGNoaW5nIHRoZSBzcGVjaWZpZWQga2V5LiBJZiB0aGUgaGFzaG1hcCBjb250YWlucwpAQCAtMzQ0LDggKzM3OCwyNCBAQAogICoKICAqIEFyZ3VtZW50IGV4cGxhbmF0aW9uIGlzIHRoZSBzYW1lIGFzIGluIGBoYXNobWFwX2dldGAuCiAgKi8KLWV4dGVybiB2b2lkICpoYXNobWFwX3JlbW92ZShzdHJ1Y3QgaGFzaG1hcCAqbWFwLCBjb25zdCB2b2lkICprZXksCi0JCWNvbnN0IHZvaWQgKmtleWRhdGEpOworc3RydWN0IGhhc2htYXBfZW50cnkgKmhhc2htYXBfcmVtb3ZlKHN0cnVjdCBoYXNobWFwICptYXAsCisJCQkJCWNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICprZXksCisJCQkJCWNvbnN0IHZvaWQgKmtleWRhdGEpOworCisvKgorICogUmVtb3ZlcyBhIGhhc2htYXAgZW50cnkgY29udGFpbmVkIHdpdGhpbiBAa2V5dmFyLAorICogd2hlcmUgQGtleXZhciBpcyBhIHBvaW50ZXIgdG8gYSBzdHJ1Y3QgY29udGFpbmluZyBhCisgKiAic3RydWN0IGhhc2htYXBfZW50cnkiIEBtZW1iZXIuCisgKgorICogU2VlIGBoYXNobWFwX2dldGAgZm9yIGFuIGV4cGxhbmF0aW9uIG9mIEBrZXlkYXRhCisgKgorICogUmV0dXJucyB0aGUgcmVwbGFjZWQgcG9pbnRlciB3aGljaCBpcyBvZiB0aGUgc2FtZSB0eXBlIGFzIEBrZXl2YXIsCisgKiBvciBOVUxMIGlmIG5vdCBmb3VuZC4KKyAqLworI2RlZmluZSBoYXNobWFwX3JlbW92ZV9lbnRyeShtYXAsIGtleXZhciwgbWVtYmVyLCBrZXlkYXRhKSBcCisJY29udGFpbmVyX29mX29yX251bGxfb2Zmc2V0KCBcCisJCQloYXNobWFwX3JlbW92ZShtYXAsICYoa2V5dmFyKS0+bWVtYmVyLCBrZXlkYXRhKSwgXAorCQkJT0ZGU0VUT0ZfVkFSKGtleXZhciwgbWVtYmVyKSkKIAogLyoKICAqIFJldHVybnMgdGhlIGBidWNrZXRgIGFuIGVudHJ5IGlzIHN0b3JlZCBpbi4KQEAgLTM2NSwxMyArNDE1LDEzIEBACiB9OwogCiAvKiBJbml0aWFsaXplcyBhIGBoYXNobWFwX2l0ZXJgIHN0cnVjdHVyZS4gKi8KLWV4dGVybiB2b2lkIGhhc2htYXBfaXRlcl9pbml0KHN0cnVjdCBoYXNobWFwICptYXAsIHN0cnVjdCBoYXNobWFwX2l0ZXIgKml0ZXIpOwordm9pZCBoYXNobWFwX2l0ZXJfaW5pdChzdHJ1Y3QgaGFzaG1hcCAqbWFwLCBzdHJ1Y3QgaGFzaG1hcF9pdGVyICppdGVyKTsKIAogLyogUmV0dXJucyB0aGUgbmV4dCBoYXNobWFwX2VudHJ5LCBvciBOVUxMIGlmIHRoZXJlIGFyZSBubyBtb3JlIGVudHJpZXMuICovCi1leHRlcm4gdm9pZCAqaGFzaG1hcF9pdGVyX25leHQoc3RydWN0IGhhc2htYXBfaXRlciAqaXRlcik7CitzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqaGFzaG1hcF9pdGVyX25leHQoc3RydWN0IGhhc2htYXBfaXRlciAqaXRlcik7CiAKIC8qIEluaXRpYWxpemVzIHRoZSBpdGVyYXRvciBhbmQgcmV0dXJucyB0aGUgZmlyc3QgZW50cnksIGlmIGFueS4gKi8KLXN0YXRpYyBpbmxpbmUgdm9pZCAqaGFzaG1hcF9pdGVyX2ZpcnN0KHN0cnVjdCBoYXNobWFwICptYXAsCitzdGF0aWMgaW5saW5lIHN0cnVjdCBoYXNobWFwX2VudHJ5ICpoYXNobWFwX2l0ZXJfZmlyc3Qoc3RydWN0IGhhc2htYXAgKm1hcCwKIAkJc3RydWN0IGhhc2htYXBfaXRlciAqaXRlcikKIHsKIAloYXNobWFwX2l0ZXJfaW5pdChtYXAsIGl0ZXIpOwpAQCAtMzc5LDYgKzQyOSw2NCBAQAogfQogCiAvKgorICogcmV0dXJucyB0aGUgZmlyc3QgZW50cnkgaW4gQG1hcCB1c2luZyBAaXRlciwgd2hlcmUgdGhlIGVudHJ5IGlzIG9mCisgKiBAdHlwZSAoZS5nLiAic3RydWN0IGZvbyIpIGFuZCBAbWVtYmVyIGlzIHRoZSBuYW1lIG9mIHRoZQorICogInN0cnVjdCBoYXNobWFwX2VudHJ5IiBpbiBAdHlwZQorICovCisjZGVmaW5lIGhhc2htYXBfaXRlcl9maXJzdF9lbnRyeShtYXAsIGl0ZXIsIHR5cGUsIG1lbWJlcikgXAorCWNvbnRhaW5lcl9vZl9vcl9udWxsKGhhc2htYXBfaXRlcl9maXJzdChtYXAsIGl0ZXIpLCB0eXBlLCBtZW1iZXIpCisKKy8qIGludGVybmFsIG1hY3JvIGZvciBoYXNobWFwX2Zvcl9lYWNoX2VudHJ5ICovCisjZGVmaW5lIGhhc2htYXBfaXRlcl9uZXh0X2VudHJ5X29mZnNldChpdGVyLCBvZmZzZXQpIFwKKwljb250YWluZXJfb2Zfb3JfbnVsbF9vZmZzZXQoaGFzaG1hcF9pdGVyX25leHQoaXRlciksIG9mZnNldCkKKworLyogaW50ZXJuYWwgbWFjcm8gZm9yIGhhc2htYXBfZm9yX2VhY2hfZW50cnkgKi8KKyNkZWZpbmUgaGFzaG1hcF9pdGVyX2ZpcnN0X2VudHJ5X29mZnNldChtYXAsIGl0ZXIsIG9mZnNldCkgXAorCWNvbnRhaW5lcl9vZl9vcl9udWxsX29mZnNldChoYXNobWFwX2l0ZXJfZmlyc3QobWFwLCBpdGVyKSwgb2Zmc2V0KQorCisvKgorICogaXRlcmF0ZSB0aHJvdWdoIEBtYXAgdXNpbmcgQGl0ZXIsIEB2YXIgaXMgYSBwb2ludGVyIHRvIGEgdHlwZQorICogY29udGFpbmluZyBhIEBtZW1iZXIgd2hpY2ggaXMgYSAic3RydWN0IGhhc2htYXBfZW50cnkiCisgKi8KKyNkZWZpbmUgaGFzaG1hcF9mb3JfZWFjaF9lbnRyeShtYXAsIGl0ZXIsIHZhciwgbWVtYmVyKSBcCisJZm9yICh2YXIgPSBoYXNobWFwX2l0ZXJfZmlyc3RfZW50cnlfb2Zmc2V0KG1hcCwgaXRlciwgXAorCQkJCQkJT0ZGU0VUT0ZfVkFSKHZhciwgbWVtYmVyKSk7IFwKKwkJdmFyOyBcCisJCXZhciA9IGhhc2htYXBfaXRlcl9uZXh0X2VudHJ5X29mZnNldChpdGVyLCBcCisJCQkJCQlPRkZTRVRPRl9WQVIodmFyLCBtZW1iZXIpKSkKKworLyoKKyAqIHJldHVybnMgYSBwb2ludGVyIG9mIHR5cGUgbWF0Y2hpbmcgQGtleXZhciwgb3IgTlVMTCBpZiBub3RoaW5nIGZvdW5kLgorICogQGtleXZhciBpcyBhIHBvaW50ZXIgdG8gYSBzdHJ1Y3QgY29udGFpbmluZyBhCisgKiAic3RydWN0IGhhc2htYXBfZW50cnkiIEBtZW1iZXIuCisgKi8KKyNkZWZpbmUgaGFzaG1hcF9nZXRfZW50cnkobWFwLCBrZXl2YXIsIG1lbWJlciwga2V5ZGF0YSkgXAorCWNvbnRhaW5lcl9vZl9vcl9udWxsX29mZnNldCggXAorCQkJCWhhc2htYXBfZ2V0KG1hcCwgJihrZXl2YXIpLT5tZW1iZXIsIGtleWRhdGEpLCBcCisJCQkJT0ZGU0VUT0ZfVkFSKGtleXZhciwgbWVtYmVyKSkKKworI2RlZmluZSBoYXNobWFwX2dldF9lbnRyeV9mcm9tX2hhc2gobWFwLCBoYXNoLCBrZXlkYXRhLCB0eXBlLCBtZW1iZXIpIFwKKwljb250YWluZXJfb2Zfb3JfbnVsbChoYXNobWFwX2dldF9mcm9tX2hhc2gobWFwLCBoYXNoLCBrZXlkYXRhKSwgXAorCQkJCXR5cGUsIG1lbWJlcikKKy8qCisgKiByZXR1cm5zIHRoZSBuZXh0IGVxdWFsIHBvaW50ZXIgdG8gQHZhciwgb3IgTlVMTCBpZiBub3QgZm91bmQuCisgKiBAdmFyIGlzIGEgcG9pbnRlciBvZiBhbnkgdHlwZSBjb250YWluaW5nICJzdHJ1Y3QgaGFzaG1hcF9lbnRyeSIKKyAqIEBtZW1iZXIgaXMgdGhlIG5hbWUgb2YgdGhlICJzdHJ1Y3QgaGFzaG1hcF9lbnRyeSIgZmllbGQKKyAqLworI2RlZmluZSBoYXNobWFwX2dldF9uZXh0X2VudHJ5KG1hcCwgdmFyLCBtZW1iZXIpIFwKKwljb250YWluZXJfb2Zfb3JfbnVsbF9vZmZzZXQoaGFzaG1hcF9nZXRfbmV4dChtYXAsICYodmFyKS0+bWVtYmVyKSwgXAorCQkJCU9GRlNFVE9GX1ZBUih2YXIsIG1lbWJlcikpCisKKy8qCisgKiBpdGVyYXRlIEBtYXAgc3RhcnRpbmcgZnJvbSBAdmFyLCB3aGVyZSBAdmFyIGlzIGEgcG9pbnRlciBvZiBAdHlwZQorICogYW5kIEBtZW1iZXIgaXMgdGhlIG5hbWUgb2YgdGhlICJzdHJ1Y3QgaGFzaG1hcF9lbnRyeSIgZmllbGQgaW4gQHR5cGUKKyAqLworI2RlZmluZSBoYXNobWFwX2Zvcl9lYWNoX2VudHJ5X2Zyb20obWFwLCB2YXIsIG1lbWJlcikgXAorCWZvciAoOyBcCisJCXZhcjsgXAorCQl2YXIgPSBoYXNobWFwX2dldF9uZXh0X2VudHJ5KG1hcCwgdmFyLCBtZW1iZXIpKQorCisvKgogICogRGlzYWJsZSBpdGVtIGNvdW50aW5nIGFuZCBhdXRvbWF0aWMgcmVoYXNoaW5nIHdoZW4gYWRkaW5nL3JlbW92aW5nIGl0ZW1zLgogICoKICAqIE5vcm1hbGx5LCB0aGUgaGFzaG1hcCBrZWVwcyB0cmFjayBvZiB0aGUgbnVtYmVyIG9mIGl0ZW1zIGluIHRoZSBtYXAKQEAgLTM5NCw3ICs1MDIsNyBAQAogfQogCiAvKgotICogUmUtZW5hYmxlIGl0ZW0gY291dGluZyB3aGVuIGFkZGluZy9yZW1vdmluZyBpdGVtcy4KKyAqIFJlLWVuYWJsZSBpdGVtIGNvdW50aW5nIHdoZW4gYWRkaW5nL3JlbW92aW5nIGl0ZW1zLgogICogSWYgY291bnRpbmcgaXMgY3VycmVudGx5IGRpc2FibGVkLCBpdCB3aWxsIGZvcmNlIGNvdW50IHRoZW0uCiAgKiBJdCBXSUxMIE5PVCBhdXRvbWF0aWNhbGx5IHJlaGFzaCB0aGVtLgogICovCkBAIC00MjksNyArNTM3LDcgQEAKICAqCiAgKiBVc2VzIGEgaGFzaG1hcCB0byBzdG9yZSB0aGUgcG9vbCBvZiBpbnRlcm5lZCBzdHJpbmdzLgogICovCi1leHRlcm4gY29uc3Qgdm9pZCAqbWVtaW50ZXJuKGNvbnN0IHZvaWQgKmRhdGEsIHNpemVfdCBsZW4pOworY29uc3Qgdm9pZCAqbWVtaW50ZXJuKGNvbnN0IHZvaWQgKmRhdGEsIHNpemVfdCBsZW4pOwogc3RhdGljIGlubGluZSBjb25zdCBjaGFyICpzdHJpbnRlcm4oY29uc3QgY2hhciAqc3RyaW5nKQogewogCXJldHVybiBtZW1pbnRlcm4oc3RyaW5nLCBzdHJsZW4oc3RyaW5nKSk7CmRpZmYgLS1naXQgYS9oZWxwLmMgYi9oZWxwLmMKaW5kZXggZmYwNWZkMi4uY2Y2NzYyNCAxMDA2NDQKLS0tIGEvaGVscC5jCisrKyBiL2hlbHAuYwpAQCAtMzQsNyArMzQsNyBAQAogCXsgQ0FUX2ZvcmVpZ25zY21pbnRlcmZhY2UsIE5fKCJJbnRlcmFjdGluZyB3aXRoIE90aGVycyIpIH0sCiAJeyBDQVRfcGx1bWJpbmdtYW5pcHVsYXRvcnMsIE5fKCJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBNYW5pcHVsYXRvcnMiKSB9LAogCXsgQ0FUX3BsdW1iaW5naW50ZXJyb2dhdG9ycywgTl8oIkxvdy1sZXZlbCBDb21tYW5kcyAvIEludGVycm9nYXRvcnMiKSB9LAotCXsgQ0FUX3N5bmNoaW5ncmVwb3NpdG9yaWVzLCBOXygiTG93LWxldmVsIENvbW1hbmRzIC8gU3luY2hpbmcgUmVwb3NpdG9yaWVzIikgfSwKKwl7IENBVF9zeW5jaGluZ3JlcG9zaXRvcmllcywgTl8oIkxvdy1sZXZlbCBDb21tYW5kcyAvIFN5bmNpbmcgUmVwb3NpdG9yaWVzIikgfSwKIAl7IENBVF9wdXJlaGVscGVycywgTl8oIkxvdy1sZXZlbCBDb21tYW5kcyAvIEludGVybmFsIEhlbHBlcnMiKSB9LAogCXsgMCwgTlVMTCB9CiB9OwpAQCAtODUsNyArODUsOCBAQAogCQlpZiAoY21kc1tpXS5jYXRlZ29yeSAmIG1hc2spIHsKIAkJCXNpemVfdCBsZW4gPSBzdHJsZW4oY21kc1tpXS5uYW1lKTsKIAkJCXByaW50ZigiICAgJXMgICAiLCBjbWRzW2ldLm5hbWUpOwotCQkJbXB1dF9jaGFyKCcgJywgbG9uZ2VzdCA+IGxlbiA/IGxvbmdlc3QgLSBsZW4gOiAxKTsKKwkJCWlmIChsb25nZXN0ID4gbGVuKQorCQkJCW1wdXRfY2hhcignICcsIGxvbmdlc3QgLSBsZW4pOwogCQkJcHV0cyhfKGNtZHNbaV0uaGVscCkpOwogCQl9CiAJfQpAQCAtMzc0LDEzICszNzUsNiBAQAogewogCWNvbnN0IGNoYXIgKmNtZF9saXN0OwogCi0JLyoKLQkgKiBUaGVyZSdzIG5vIGFjdHVhbCByZXBvc2l0b3J5IHNldHVwIGF0IHRoaXMgcG9pbnQgKGFuZCBldmVuCi0JICogaWYgdGhlcmUgaXMsIHdlIGRvbid0IHJlYWxseSBjYXJlOyBvbmx5IGdsb2JhbCBjb25maWcKLQkgKiBtYXR0ZXJzKS4gSWYgd2UgYWNjaWRlbnRhbGx5IHNldCB1cCBhIHJlcG9zaXRvcnksIGl0J3Mgb2sKLQkgKiB0b28gc2luY2UgdGhlIGNhbGxlciAoZ2l0IC0tbGlzdC1jbWRzPSkgc2hvdWxkIGV4aXQgc2hvcnRseQotCSAqIGFueXdheS4KLQkgKi8KIAlpZiAoZ2l0X2NvbmZpZ19nZXRfc3RyaW5nX2NvbnN0KCJjb21wbGV0aW9uLmNvbW1hbmRzIiwgJmNtZF9saXN0KSkKIAkJcmV0dXJuOwogCkBAIC0zOTIsOCArMzg2LDggQEAKIAkJY29uc3QgY2hhciAqcCA9IHN0cmNocm51bChjbWRfbGlzdCwgJyAnKTsKIAogCQlzdHJidWZfYWRkKCZzYiwgY21kX2xpc3QsIHAgLSBjbWRfbGlzdCk7Ci0JCWlmICgqY21kX2xpc3QgPT0gJy0nKQotCQkJc3RyaW5nX2xpc3RfcmVtb3ZlKGxpc3QsIGNtZF9saXN0ICsgMSwgMCk7CisJCWlmIChzYi5idWZbMF0gPT0gJy0nKQorCQkJc3RyaW5nX2xpc3RfcmVtb3ZlKGxpc3QsIHNiLmJ1ZiArIDEsIDApOwogCQllbHNlCiAJCQlzdHJpbmdfbGlzdF9pbnNlcnQobGlzdCwgc2IuYnVmKTsKIAkJc3RyYnVmX3JlbGVhc2UoJnNiKTsKQEAgLTc2MCwxOSArNzU0LDE5IEBACiB7CiAJc3RydWN0IHNpbWlsYXJfcmVmX2NiICpjYiA9IChzdHJ1Y3Qgc2ltaWxhcl9yZWZfY2IgKikoY2JfZGF0YSk7CiAJY2hhciAqYnJhbmNoID0gc3RycmNocihyZWZuYW1lLCAnLycpICsgMTsKLQljb25zdCBjaGFyICpyZW1vdGU7CiAKIAkvKiBBIHJlbW90ZSBicmFuY2ggb2YgdGhlIHNhbWUgbmFtZSBpcyBkZWVtZWQgc2ltaWxhciAqLwotCWlmIChza2lwX3ByZWZpeChyZWZuYW1lLCAicmVmcy9yZW1vdGVzLyIsICZyZW1vdGUpICYmCisJaWYgKHN0YXJ0c193aXRoKHJlZm5hbWUsICJyZWZzL3JlbW90ZXMvIikgJiYKIAkgICAgIXN0cmNtcChicmFuY2gsIGNiLT5iYXNlX3JlZikpCi0JCXN0cmluZ19saXN0X2FwcGVuZChjYi0+c2ltaWxhcl9yZWZzLCByZW1vdGUpOworCQlzdHJpbmdfbGlzdF9hcHBlbmRfbm9kdXAoY2ItPnNpbWlsYXJfcmVmcywKKwkJCQkJIHNob3J0ZW5fdW5hbWJpZ3VvdXNfcmVmKHJlZm5hbWUsIDEpKTsKIAlyZXR1cm4gMDsKIH0KIAogc3RhdGljIHN0cnVjdCBzdHJpbmdfbGlzdCBndWVzc19yZWZzKGNvbnN0IGNoYXIgKnJlZikKIHsKIAlzdHJ1Y3Qgc2ltaWxhcl9yZWZfY2IgcmVmX2NiOwotCXN0cnVjdCBzdHJpbmdfbGlzdCBzaW1pbGFyX3JlZnMgPSBTVFJJTkdfTElTVF9JTklUX05PRFVQOworCXN0cnVjdCBzdHJpbmdfbGlzdCBzaW1pbGFyX3JlZnMgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKIAogCXJlZl9jYi5iYXNlX3JlZiA9IHJlZjsKIAlyZWZfY2Iuc2ltaWxhcl9yZWZzID0gJnNpbWlsYXJfcmVmczsKQEAgLTc4MCw3ICs3NzQsOCBAQAogCXJldHVybiBzaW1pbGFyX3JlZnM7CiB9CiAKLXZvaWQgaGVscF91bmtub3duX3JlZihjb25zdCBjaGFyICpyZWYsIGNvbnN0IGNoYXIgKmNtZCwgY29uc3QgY2hhciAqZXJyb3IpCitOT1JFVFVSTiB2b2lkIGhlbHBfdW5rbm93bl9yZWYoY29uc3QgY2hhciAqcmVmLCBjb25zdCBjaGFyICpjbWQsCisJCQkgICAgICAgY29uc3QgY2hhciAqZXJyb3IpCiB7CiAJaW50IGk7CiAJc3RydWN0IHN0cmluZ19saXN0IHN1Z2dlc3RlZF9yZWZzID0gZ3Vlc3NfcmVmcyhyZWYpOwpkaWZmIC0tZ2l0IGEvaGVscC5oIGIvaGVscC5oCmluZGV4IGExNDFlMjAuLjdhNDU1YmUgMTAwNjQ0Ci0tLSBhL2hlbHAuaAorKysgYi9oZWxwLmgKQEAgLTE5LDMxICsxOSwzMSBAQAogCQlwdXRjaGFyKGMpOwogfQogCi1leHRlcm4gdm9pZCBsaXN0X2NvbW1vbl9jbWRzX2hlbHAodm9pZCk7Ci1leHRlcm4gdm9pZCBsaXN0X2FsbF9jbWRzX2hlbHAodm9pZCk7Ci1leHRlcm4gdm9pZCBsaXN0X2NvbW1vbl9ndWlkZXNfaGVscCh2b2lkKTsKLWV4dGVybiB2b2lkIGxpc3RfY29uZmlnX2hlbHAoaW50IGZvcl9odW1hbik7Cit2b2lkIGxpc3RfY29tbW9uX2NtZHNfaGVscCh2b2lkKTsKK3ZvaWQgbGlzdF9hbGxfY21kc19oZWxwKHZvaWQpOwordm9pZCBsaXN0X2NvbW1vbl9ndWlkZXNfaGVscCh2b2lkKTsKK3ZvaWQgbGlzdF9jb25maWdfaGVscChpbnQgZm9yX2h1bWFuKTsKIAotZXh0ZXJuIHZvaWQgbGlzdF9hbGxfbWFpbl9jbWRzKHN0cnVjdCBzdHJpbmdfbGlzdCAqbGlzdCk7Ci1leHRlcm4gdm9pZCBsaXN0X2FsbF9vdGhlcl9jbWRzKHN0cnVjdCBzdHJpbmdfbGlzdCAqbGlzdCk7Ci1leHRlcm4gdm9pZCBsaXN0X2NtZHNfYnlfY2F0ZWdvcnkoc3RydWN0IHN0cmluZ19saXN0ICpsaXN0LAotCQkJCSAgY29uc3QgY2hhciAqY2F0ZWdvcnkpOwotZXh0ZXJuIHZvaWQgbGlzdF9jbWRzX2J5X2NvbmZpZyhzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmxpc3QpOwotZXh0ZXJuIGNvbnN0IGNoYXIgKmhlbHBfdW5rbm93bl9jbWQoY29uc3QgY2hhciAqY21kKTsKLWV4dGVybiB2b2lkIGxvYWRfY29tbWFuZF9saXN0KGNvbnN0IGNoYXIgKnByZWZpeCwKLQkJCSAgICAgIHN0cnVjdCBjbWRuYW1lcyAqbWFpbl9jbWRzLAotCQkJICAgICAgc3RydWN0IGNtZG5hbWVzICpvdGhlcl9jbWRzKTsKLWV4dGVybiB2b2lkIGFkZF9jbWRuYW1lKHN0cnVjdCBjbWRuYW1lcyAqY21kcywgY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbik7Cit2b2lkIGxpc3RfYWxsX21haW5fY21kcyhzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmxpc3QpOwordm9pZCBsaXN0X2FsbF9vdGhlcl9jbWRzKHN0cnVjdCBzdHJpbmdfbGlzdCAqbGlzdCk7Cit2b2lkIGxpc3RfY21kc19ieV9jYXRlZ29yeShzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmxpc3QsCisJCQkgICBjb25zdCBjaGFyICpjYXRlZ29yeSk7Cit2b2lkIGxpc3RfY21kc19ieV9jb25maWcoc3RydWN0IHN0cmluZ19saXN0ICpsaXN0KTsKK2NvbnN0IGNoYXIgKmhlbHBfdW5rbm93bl9jbWQoY29uc3QgY2hhciAqY21kKTsKK3ZvaWQgbG9hZF9jb21tYW5kX2xpc3QoY29uc3QgY2hhciAqcHJlZml4LAorCQkgICAgICAgc3RydWN0IGNtZG5hbWVzICptYWluX2NtZHMsCisJCSAgICAgICBzdHJ1Y3QgY21kbmFtZXMgKm90aGVyX2NtZHMpOwordm9pZCBhZGRfY21kbmFtZShzdHJ1Y3QgY21kbmFtZXMgKmNtZHMsIGNvbnN0IGNoYXIgKm5hbWUsIGludCBsZW4pOwogLyogSGVyZSB3ZSByZXF1aXJlIHRoYXQgZXhjbHVkZXMgaXMgYSBzb3J0ZWQgbGlzdC4gKi8KLWV4dGVybiB2b2lkIGV4Y2x1ZGVfY21kcyhzdHJ1Y3QgY21kbmFtZXMgKmNtZHMsIHN0cnVjdCBjbWRuYW1lcyAqZXhjbHVkZXMpOwotZXh0ZXJuIGludCBpc19pbl9jbWRsaXN0KHN0cnVjdCBjbWRuYW1lcyAqY21kcywgY29uc3QgY2hhciAqbmFtZSk7Ci1leHRlcm4gdm9pZCBsaXN0X2NvbW1hbmRzKHVuc2lnbmVkIGludCBjb2xvcHRzLCBzdHJ1Y3QgY21kbmFtZXMgKm1haW5fY21kcywgc3RydWN0IGNtZG5hbWVzICpvdGhlcl9jbWRzKTsKK3ZvaWQgZXhjbHVkZV9jbWRzKHN0cnVjdCBjbWRuYW1lcyAqY21kcywgc3RydWN0IGNtZG5hbWVzICpleGNsdWRlcyk7CitpbnQgaXNfaW5fY21kbGlzdChzdHJ1Y3QgY21kbmFtZXMgKmNtZHMsIGNvbnN0IGNoYXIgKm5hbWUpOwordm9pZCBsaXN0X2NvbW1hbmRzKHVuc2lnbmVkIGludCBjb2xvcHRzLCBzdHJ1Y3QgY21kbmFtZXMgKm1haW5fY21kcywgc3RydWN0IGNtZG5hbWVzICpvdGhlcl9jbWRzKTsKIAogLyoKICAqIGNhbGwgdGhpcyB0byBkaWUoKSwgd2hlbiBpdCBpcyBzdXNwZWN0ZWQgdGhhdCB0aGUgdXNlciBtaXN0eXBlZCBhCiAgKiByZWYgdG8gdGhlIGNvbW1hbmQsIHRvIGdpdmUgc3VnZ2VzdGVkICJjb3JyZWN0IiByZWZzLgogICovCi1leHRlcm4gdm9pZCBoZWxwX3Vua25vd25fcmVmKGNvbnN0IGNoYXIgKnJlZiwgY29uc3QgY2hhciAqY21kLCBjb25zdCBjaGFyICplcnJvcik7CitOT1JFVFVSTiB2b2lkIGhlbHBfdW5rbm93bl9yZWYoY29uc3QgY2hhciAqcmVmLCBjb25zdCBjaGFyICpjbWQsIGNvbnN0IGNoYXIgKmVycm9yKTsKIAogc3RhdGljIGlubGluZSB2b2lkIGxpc3RfY29uZmlnX2l0ZW0oc3RydWN0IHN0cmluZ19saXN0ICpsaXN0LAogCQkJCSAgICBjb25zdCBjaGFyICpwcmVmaXgsCmRpZmYgLS1naXQgYS9oZXguYyBiL2hleC5jCmluZGV4IDEwYWYxYTIuLmZkN2YwMGMgMTAwNjQ0Ci0tLSBhL2hleC5jCisrKyBiL2hleC5jCkBAIC03MywxNCArNzMsMTUgQEAKIAlyZXR1cm4gcmV0OwogfQogCi1jaGFyICpzaGExX3RvX2hleF9yKGNoYXIgKmJ1ZmZlciwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSkKK2NoYXIgKmhhc2hfdG9faGV4X2FsZ29wX3IoY2hhciAqYnVmZmVyLCBjb25zdCB1bnNpZ25lZCBjaGFyICpoYXNoLAorCQkJICBjb25zdCBzdHJ1Y3QgZ2l0X2hhc2hfYWxnbyAqYWxnb3ApCiB7CiAJc3RhdGljIGNvbnN0IGNoYXIgaGV4W10gPSAiMDEyMzQ1Njc4OWFiY2RlZiI7CiAJY2hhciAqYnVmID0gYnVmZmVyOwogCWludCBpOwogCi0JZm9yIChpID0gMDsgaSA8IHRoZV9oYXNoX2FsZ28tPnJhd3N6OyBpKyspIHsKLQkJdW5zaWduZWQgaW50IHZhbCA9ICpzaGExKys7CisJZm9yIChpID0gMDsgaSA8IGFsZ29wLT5yYXdzejsgaSsrKSB7CisJCXVuc2lnbmVkIGludCB2YWwgPSAqaGFzaCsrOwogCQkqYnVmKysgPSBoZXhbdmFsID4+IDRdOwogCQkqYnVmKysgPSBoZXhbdmFsICYgMHhmXTsKIAl9CkBAIC05MSwxOCArOTIsMjMgQEAKIAogY2hhciAqb2lkX3RvX2hleF9yKGNoYXIgKmJ1ZmZlciwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewotCXJldHVybiBzaGExX3RvX2hleF9yKGJ1ZmZlciwgb2lkLT5oYXNoKTsKKwlyZXR1cm4gaGFzaF90b19oZXhfYWxnb3BfcihidWZmZXIsIG9pZC0+aGFzaCwgdGhlX2hhc2hfYWxnbyk7CiB9CiAKLWNoYXIgKnNoYTFfdG9faGV4KGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpCitjaGFyICpoYXNoX3RvX2hleF9hbGdvcChjb25zdCB1bnNpZ25lZCBjaGFyICpoYXNoLCBjb25zdCBzdHJ1Y3QgZ2l0X2hhc2hfYWxnbyAqYWxnb3ApCiB7CiAJc3RhdGljIGludCBidWZubzsKIAlzdGF0aWMgY2hhciBoZXhidWZmZXJbNF1bR0lUX01BWF9IRVhTWiArIDFdOwogCWJ1Zm5vID0gKGJ1Zm5vICsgMSkgJSBBUlJBWV9TSVpFKGhleGJ1ZmZlcik7Ci0JcmV0dXJuIHNoYTFfdG9faGV4X3IoaGV4YnVmZmVyW2J1Zm5vXSwgc2hhMSk7CisJcmV0dXJuIGhhc2hfdG9faGV4X2FsZ29wX3IoaGV4YnVmZmVyW2J1Zm5vXSwgaGFzaCwgYWxnb3ApOworfQorCitjaGFyICpoYXNoX3RvX2hleChjb25zdCB1bnNpZ25lZCBjaGFyICpoYXNoKQoreworCXJldHVybiBoYXNoX3RvX2hleF9hbGdvcChoYXNoLCB0aGVfaGFzaF9hbGdvKTsKIH0KIAogY2hhciAqb2lkX3RvX2hleChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0JcmV0dXJuIHNoYTFfdG9faGV4KG9pZC0+aGFzaCk7CisJcmV0dXJuIGhhc2hfdG9faGV4X2FsZ29wKG9pZC0+aGFzaCwgdGhlX2hhc2hfYWxnbyk7CiB9CmRpZmYgLS1naXQgYS9odHRwLWJhY2tlbmQuYyBiL2h0dHAtYmFja2VuZC5jCmluZGV4IDllODk0ZjEuLmVjMzE0NGIgMTAwNjQ0Ci0tLSBhL2h0dHAtYmFja2VuZC5jCisrKyBiL2h0dHAtYmFja2VuZC5jCkBAIC00ODYsNiArNDg2LDggQEAKIAlpZiAoYnVmZmVyX2lucHV0IHx8IGd6aXBwZWRfcmVxdWVzdCB8fCByZXFfbGVuID49IDApCiAJCWNsZC5pbiA9IC0xOwogCWNsZC5naXRfY21kID0gMTsKKwljbGQuY2xlYW5fb25fZXhpdCA9IDE7CisJY2xkLndhaXRfYWZ0ZXJfY2xlYW4gPSAxOwogCWlmIChzdGFydF9jb21tYW5kKCZjbGQpKQogCQlleGl0KDEpOwogCkBAIC03MDksOCArNzExLDExIEBACiAJeyJHRVQiLCAiL29iamVjdHMvaW5mby9odHRwLWFsdGVybmF0ZXMkIiwgZ2V0X3RleHRfZmlsZX0sCiAJeyJHRVQiLCAiL29iamVjdHMvaW5mby9wYWNrcyQiLCBnZXRfaW5mb19wYWNrc30sCiAJeyJHRVQiLCAiL29iamVjdHMvWzAtOWEtZl17Mn0vWzAtOWEtZl17Mzh9JCIsIGdldF9sb29zZV9vYmplY3R9LAorCXsiR0VUIiwgIi9vYmplY3RzL1swLTlhLWZdezJ9L1swLTlhLWZdezYyfSQiLCBnZXRfbG9vc2Vfb2JqZWN0fSwKIAl7IkdFVCIsICIvb2JqZWN0cy9wYWNrL3BhY2stWzAtOWEtZl17NDB9XFwucGFjayQiLCBnZXRfcGFja19maWxlfSwKKwl7IkdFVCIsICIvb2JqZWN0cy9wYWNrL3BhY2stWzAtOWEtZl17NjR9XFwucGFjayQiLCBnZXRfcGFja19maWxlfSwKIAl7IkdFVCIsICIvb2JqZWN0cy9wYWNrL3BhY2stWzAtOWEtZl17NDB9XFwuaWR4JCIsIGdldF9pZHhfZmlsZX0sCisJeyJHRVQiLCAiL29iamVjdHMvcGFjay9wYWNrLVswLTlhLWZdezY0fVxcLmlkeCQiLCBnZXRfaWR4X2ZpbGV9LAogCiAJeyJQT1NUIiwgIi9naXQtdXBsb2FkLXBhY2skIiwgc2VydmljZV9ycGN9LAogCXsiUE9TVCIsICIvZ2l0LXJlY2VpdmUtcGFjayQiLCBzZXJ2aWNlX3JwY30KZGlmZiAtLWdpdCBhL2h0dHAtcHVzaC5jIGIvaHR0cC1wdXNoLmMKaW5kZXggY2Q0ODU5MC4uODIyZjMyNiAxMDA2NDQKLS0tIGEvaHR0cC1wdXNoLmMKKysrIGIvaHR0cC1wdXNoLmMKQEAgLTE0NSw3ICsxNDUsNyBAQAogCWNoYXIgKnVybDsKIAljaGFyICpvd25lcjsKIAljaGFyICp0b2tlbjsKLQljaGFyIHRtcGZpbGVfc3VmZml4WzQxXTsKKwljaGFyIHRtcGZpbGVfc3VmZml4W0dJVF9NQVhfSEVYU1ogKyAxXTsKIAl0aW1lX3Qgc3RhcnRfdGltZTsKIAlsb25nIHRpbWVvdXQ7CiAJaW50IHJlZnJlc2hpbmc7CkBAIC0yNTUsNyArMjU1LDcgQEAKIAlzdHJ1Y3QgYWN0aXZlX3JlcXVlc3Rfc2xvdCAqc2xvdDsKIAlzdHJ1Y3QgaHR0cF9vYmplY3RfcmVxdWVzdCAqb2JqX3JlcTsKIAotCW9ial9yZXEgPSBuZXdfaHR0cF9vYmplY3RfcmVxdWVzdChyZXBvLT51cmwsIHJlcXVlc3QtPm9iai0+b2lkLmhhc2gpOworCW9ial9yZXEgPSBuZXdfaHR0cF9vYmplY3RfcmVxdWVzdChyZXBvLT51cmwsICZyZXF1ZXN0LT5vYmotPm9pZCk7CiAJaWYgKG9ial9yZXEgPT0gTlVMTCkgewogCQlyZXF1ZXN0LT5zdGF0ZSA9IEFCT1JURUQ7CiAJCXJldHVybjsKQEAgLTMxNSw3ICszMTUsOCBAQAogCQlyZXR1cm47CiAJfQogCi0JZnByaW50ZihzdGRlcnIsCSJGZXRjaGluZyBwYWNrICVzXG4iLCBzaGExX3RvX2hleCh0YXJnZXQtPnNoYTEpKTsKKwlmcHJpbnRmKHN0ZGVyciwJIkZldGNoaW5nIHBhY2sgJXNcbiIsCisJCWhhc2hfdG9faGV4KHRhcmdldC0+aGFzaCkpOwogCWZwcmludGYoc3RkZXJyLCAiIHdoaWNoIGNvbnRhaW5zICVzXG4iLCBvaWRfdG9faGV4KCZyZXF1ZXN0LT5vYmotPm9pZCkpOwogCiAJcHJlcSA9IG5ld19odHRwX3BhY2tfcmVxdWVzdCh0YXJnZXQsIHJlcG8tPnVybCk7CkBAIC0zOTgsNyArMzk5LDcgQEAKIAlyZXF1ZXN0LT5kZXN0ID0gc3RyYnVmX2RldGFjaCgmYnVmLCBOVUxMKTsKIAogCWFwcGVuZF9yZW1vdGVfb2JqZWN0X3VybCgmYnVmLCByZXBvLT51cmwsIGhleCwgMCk7Ci0Jc3RyYnVmX2FkZCgmYnVmLCByZXF1ZXN0LT5sb2NrLT50bXBmaWxlX3N1ZmZpeCwgNDEpOworCXN0cmJ1Zl9hZGQoJmJ1ZiwgcmVxdWVzdC0+bG9jay0+dG1wZmlsZV9zdWZmaXgsIHRoZV9oYXNoX2FsZ28tPmhleHN6ICsgMSk7CiAJcmVxdWVzdC0+dXJsID0gc3RyYnVmX2RldGFjaCgmYnVmLCBOVUxMKTsKIAogCXNsb3QgPSBnZXRfYWN0aXZlX3Nsb3QoKTsKQEAgLTUwMCwxMCArNTAxLDEwIEBACiAJaWYgKHJlcXVlc3QgPT0gcmVxdWVzdF9xdWV1ZV9oZWFkKSB7CiAJCXJlcXVlc3RfcXVldWVfaGVhZCA9IHJlcXVlc3QtPm5leHQ7CiAJfSBlbHNlIHsKLQkJd2hpbGUgKGVudHJ5LT5uZXh0ICE9IE5VTEwgJiYgZW50cnktPm5leHQgIT0gcmVxdWVzdCkKKwkJd2hpbGUgKGVudHJ5ICYmIGVudHJ5LT5uZXh0ICE9IHJlcXVlc3QpCiAJCQllbnRyeSA9IGVudHJ5LT5uZXh0OwotCQlpZiAoZW50cnktPm5leHQgPT0gcmVxdWVzdCkKLQkJCWVudHJ5LT5uZXh0ID0gZW50cnktPm5leHQtPm5leHQ7CisJCWlmIChlbnRyeSkKKwkJCWVudHJ5LT5uZXh0ID0gcmVxdWVzdC0+bmV4dDsKIAl9CiAKIAlmcmVlKHJlcXVlc3QtPnVybCk7CkBAIC01MjUsOCArNTI2LDggQEAKIAlpZiAocmVxdWVzdC0+aGVhZGVycyAhPSBOVUxMKQogCQljdXJsX3NsaXN0X2ZyZWVfYWxsKHJlcXVlc3QtPmhlYWRlcnMpOwogCi0JLyogVVJMIGlzIHJldXNlZCBmb3IgTU9WRSBhZnRlciBQVVQgKi8KLQlpZiAocmVxdWVzdC0+c3RhdGUgIT0gUlVOX1BVVCkgeworCS8qIFVSTCBpcyByZXVzZWQgZm9yIE1PVkUgYWZ0ZXIgUFVUIGFuZCB1c2VkIGR1cmluZyBGRVRDSCAqLworCWlmIChyZXF1ZXN0LT5zdGF0ZSAhPSBSVU5fUFVUICYmIHJlcXVlc3QtPnN0YXRlICE9IFJVTl9GRVRDSF9QQUNLRUQpIHsKIAkJRlJFRV9BTkRfTlVMTChyZXF1ZXN0LT51cmwpOwogCX0KIApAQCAtNzIyLDcgKzcyMyw3IEBACiB7CiAJc3RydWN0IG9iamVjdCAqb2JqOwogCi0Jb2JqID0gbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgb2lkLT5oYXNoKTsKKwlvYmogPSBsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBvaWQpOwogCWlmICghb2JqKQogCQlvYmogPSBwYXJzZV9vYmplY3QodGhlX3JlcG9zaXRvcnksIG9pZCk7CiAKQEAgLTc1Nyw4ICs3NTgsOCBAQAogc3RhdGljIHZvaWQgaGFuZGxlX25ld19sb2NrX2N0eChzdHJ1Y3QgeG1sX2N0eCAqY3R4LCBpbnQgdGFnX2Nsb3NlZCkKIHsKIAlzdHJ1Y3QgcmVtb3RlX2xvY2sgKmxvY2sgPSAoc3RydWN0IHJlbW90ZV9sb2NrICopY3R4LT51c2VyRGF0YTsKLQlnaXRfU0hBX0NUWCBzaGFfY3R4OwotCXVuc2lnbmVkIGNoYXIgbG9ja190b2tlbl9zaGExWzIwXTsKKwlnaXRfaGFzaF9jdHggaGFzaF9jdHg7CisJdW5zaWduZWQgY2hhciBsb2NrX3Rva2VuX2hhc2hbR0lUX01BWF9SQVdTWl07CiAKIAlpZiAodGFnX2Nsb3NlZCAmJiBjdHgtPmNkYXRhKSB7CiAJCWlmICghc3RyY21wKGN0eC0+bmFtZSwgREFWX0FDVElWRUxPQ0tfT1dORVIpKSB7CkBAIC03NzAsMTIgKzc3MSwxMiBAQAogCQl9IGVsc2UgaWYgKCFzdHJjbXAoY3R4LT5uYW1lLCBEQVZfQUNUSVZFTE9DS19UT0tFTikpIHsKIAkJCWxvY2stPnRva2VuID0geHN0cmR1cChjdHgtPmNkYXRhKTsKIAotCQkJZ2l0X1NIQTFfSW5pdCgmc2hhX2N0eCk7Ci0JCQlnaXRfU0hBMV9VcGRhdGUoJnNoYV9jdHgsIGxvY2stPnRva2VuLCBzdHJsZW4obG9jay0+dG9rZW4pKTsKLQkJCWdpdF9TSEExX0ZpbmFsKGxvY2tfdG9rZW5fc2hhMSwgJnNoYV9jdHgpOworCQkJdGhlX2hhc2hfYWxnby0+aW5pdF9mbigmaGFzaF9jdHgpOworCQkJdGhlX2hhc2hfYWxnby0+dXBkYXRlX2ZuKCZoYXNoX2N0eCwgbG9jay0+dG9rZW4sIHN0cmxlbihsb2NrLT50b2tlbikpOworCQkJdGhlX2hhc2hfYWxnby0+ZmluYWxfZm4obG9ja190b2tlbl9oYXNoLCAmaGFzaF9jdHgpOwogCiAJCQlsb2NrLT50bXBmaWxlX3N1ZmZpeFswXSA9ICdfJzsKLQkJCW1lbWNweShsb2NrLT50bXBmaWxlX3N1ZmZpeCArIDEsIHNoYTFfdG9faGV4KGxvY2tfdG9rZW5fc2hhMSksIDQwKTsKKwkJCW1lbWNweShsb2NrLT50bXBmaWxlX3N1ZmZpeCArIDEsIGhhc2hfdG9faGV4KGxvY2tfdG9rZW5faGFzaCksIHRoZV9oYXNoX2FsZ28tPmhleHN6KTsKIAkJfQogCX0KIH0KQEAgLTk4MCw3ICs5ODEsNyBAQAogCQl3aGlsZSAocHJldiAmJiBwcmV2LT5uZXh0ICE9IGxvY2spCiAJCQlwcmV2ID0gcHJldi0+bmV4dDsKIAkJaWYgKHByZXYpCi0JCQlwcmV2LT5uZXh0ID0gcHJldi0+bmV4dC0+bmV4dDsKKwkJCXByZXYtPm5leHQgPSBsb2NrLT5uZXh0OwogCX0KIAogCWZyZWUobG9jay0+b3duZXIpOwpAQCAtMTAxNyw3ICsxMDE4LDcgQEAKIC8qIGV4dHJhY3QgaGV4IGZyb20gc2hhcmRlZCAieHgveHszOH0iIGZpbGVuYW1lICovCiBzdGF0aWMgaW50IGdldF9vaWRfaGV4X2Zyb21fb2JqcGF0aChjb25zdCBjaGFyICpwYXRoLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0JaWYgKHN0cmxlbihwYXRoKSAhPSBHSVRfU0hBMV9IRVhTWiArIDEpCisJaWYgKHN0cmxlbihwYXRoKSAhPSB0aGVfaGFzaF9hbGdvLT5oZXhzeiArIDEpCiAJCXJldHVybiAtMTsKIAogCWlmIChoZXhfdG9fYnl0ZXMob2lkLT5oYXNoLCBwYXRoLCAxKSkKQEAgLTEwMjUsNyArMTAyNiw3IEBACiAJcGF0aCArPSAyOwogCXBhdGgrKzsgLyogc2tpcCAnLycgKi8KIAotCXJldHVybiBoZXhfdG9fYnl0ZXMob2lkLT5oYXNoICsgMSwgcGF0aCwgR0lUX1NIQTFfUkFXU1ogLSAxKTsKKwlyZXR1cm4gaGV4X3RvX2J5dGVzKG9pZC0+aGFzaCArIDEsIHBhdGgsIHRoZV9oYXNoX2FsZ28tPnJhd3N6IC0gMSk7CiB9CiAKIHN0YXRpYyB2b2lkIHByb2Nlc3NfbHNfb2JqZWN0KHN0cnVjdCByZW1vdGVfbHNfY3R4ICpscykKQEAgLTEzMTEsMTEgKzEzMTIsMTEgQEAKIAl3aGlsZSAodHJlZV9lbnRyeSgmZGVzYywgJmVudHJ5KSkKIAkJc3dpdGNoIChvYmplY3RfdHlwZShlbnRyeS5tb2RlKSkgewogCQljYXNlIE9CSl9UUkVFOgotCQkJcCA9IHByb2Nlc3NfdHJlZShsb29rdXBfdHJlZSh0aGVfcmVwb3NpdG9yeSwgZW50cnkub2lkKSwKKwkJCXAgPSBwcm9jZXNzX3RyZWUobG9va3VwX3RyZWUodGhlX3JlcG9zaXRvcnksICZlbnRyeS5vaWQpLAogCQkJCQkgcCk7CiAJCQlicmVhazsKIAkJY2FzZSBPQkpfQkxPQjoKLQkJCXAgPSBwcm9jZXNzX2Jsb2IobG9va3VwX2Jsb2IodGhlX3JlcG9zaXRvcnksIGVudHJ5Lm9pZCksCisJCQlwID0gcHJvY2Vzc19ibG9iKGxvb2t1cF9ibG9iKHRoZV9yZXBvc2l0b3J5LCAmZW50cnkub2lkKSwKIAkJCQkJIHApOwogCQkJYnJlYWs7CiAJCWRlZmF1bHQ6CkBAIC0xMzczLDcgKzEzNzQsNyBAQAogCXJldHVybiBjb3VudDsKIH0KIAotc3RhdGljIGludCB1cGRhdGVfcmVtb3RlKHVuc2lnbmVkIGNoYXIgKnNoYTEsIHN0cnVjdCByZW1vdGVfbG9jayAqbG9jaykKK3N0YXRpYyBpbnQgdXBkYXRlX3JlbW90ZShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHN0cnVjdCByZW1vdGVfbG9jayAqbG9jaykKIHsKIAlzdHJ1Y3QgYWN0aXZlX3JlcXVlc3Rfc2xvdCAqc2xvdDsKIAlzdHJ1Y3Qgc2xvdF9yZXN1bHRzIHJlc3VsdHM7CkBAIC0xMzgyLDcgKzEzODMsNyBAQAogCiAJZGF2X2hlYWRlcnMgPSBnZXRfZGF2X3Rva2VuX2hlYWRlcnMobG9jaywgREFWX0hFQURFUl9JRik7CiAKLQlzdHJidWZfYWRkZigmb3V0X2J1ZmZlci5idWYsICIlc1xuIiwgc2hhMV90b19oZXgoc2hhMSkpOworCXN0cmJ1Zl9hZGRmKCZvdXRfYnVmZmVyLmJ1ZiwgIiVzXG4iLCBvaWRfdG9faGV4KG9pZCkpOwogCiAJc2xvdCA9IGdldF9hY3RpdmVfc2xvdCgpOwogCXNsb3QtPnJlc3VsdHMgPSAmcmVzdWx0czsKQEAgLTE0MzEsNyArMTQzMiw3IEBACiAJICogbWF5IGJlIHJlcXVpcmVkIGZvciB1cGRhdGluZyBzZXJ2ZXIgaW5mbyBsYXRlci4KIAkgKi8KIAlpZiAocmVwby0+Y2FuX3VwZGF0ZV9pbmZvX3JlZnMgJiYgIWhhc19vYmplY3RfZmlsZSgmcmVmLT5vbGRfb2lkKSkgewotCQlvYmogPSBsb29rdXBfdW5rbm93bl9vYmplY3QocmVmLT5vbGRfb2lkLmhhc2gpOworCQlvYmogPSBsb29rdXBfdW5rbm93bl9vYmplY3QoJnJlZi0+b2xkX29pZCk7CiAJCWZwcmludGYoc3RkZXJyLAkiICBmZXRjaCAlcyBmb3IgJXNcbiIsCiAJCQlvaWRfdG9faGV4KCZyZWYtPm9sZF9vaWQpLCByZWZuYW1lKTsKIAkJYWRkX2ZldGNoX3JlcXVlc3Qob2JqKTsKQEAgLTE5MzMsNyArMTkzNCw3IEBACiAJCXB1c2hpbmcgPSAwOwogCQlpZiAocHJlcGFyZV9yZXZpc2lvbl93YWxrKCZyZXZzKSkKIAkJCWRpZSgicmV2aXNpb24gd2FsayBzZXR1cCBmYWlsZWQiKTsKLQkJbWFya19lZGdlc191bmludGVyZXN0aW5nKCZyZXZzLCBOVUxMKTsKKwkJbWFya19lZGdlc191bmludGVyZXN0aW5nKCZyZXZzLCBOVUxMLCAwKTsKIAkJb2JqZWN0c190b19zZW5kID0gZ2V0X2RlbHRhKCZyZXZzLCByZWZfbG9jayk7CiAJCWZpbmlzaF9hbGxfYWN0aXZlX3Nsb3RzKCk7CiAKQEAgLTE5NDcsNyArMTk0OCw3IEBACiAJCXJ1bl9yZXF1ZXN0X3F1ZXVlKCk7CiAKIAkJLyogVXBkYXRlIHRoZSByZW1vdGUgYnJhbmNoIGlmIGFsbCB3ZW50IHdlbGwgKi8KLQkJaWYgKGFib3J0ZWQgfHwgIXVwZGF0ZV9yZW1vdGUocmVmLT5uZXdfb2lkLmhhc2gsIHJlZl9sb2NrKSkKKwkJaWYgKGFib3J0ZWQgfHwgIXVwZGF0ZV9yZW1vdGUoJnJlZi0+bmV3X29pZCwgcmVmX2xvY2spKQogCQkJcmMgPSAxOwogCiAJCWlmICghcmMpCmRpZmYgLS1naXQgYS9odHRwLXdhbGtlci5jIGIvaHR0cC13YWxrZXIuYwppbmRleCBiMzMzNGJmLi5mZTE1ZTMyIDEwMDY0NAotLS0gYS9odHRwLXdhbGtlci5jCisrKyBiL2h0dHAtd2Fsa2VyLmMKQEAgLTU4LDcgKzU4LDcgQEAKIAlzdHJ1Y3QgYWN0aXZlX3JlcXVlc3Rfc2xvdCAqc2xvdDsKIAlzdHJ1Y3QgaHR0cF9vYmplY3RfcmVxdWVzdCAqcmVxOwogCi0JcmVxID0gbmV3X2h0dHBfb2JqZWN0X3JlcXVlc3Qob2JqX3JlcS0+cmVwby0+YmFzZSwgb2JqX3JlcS0+b2lkLmhhc2gpOworCXJlcSA9IG5ld19odHRwX29iamVjdF9yZXF1ZXN0KG9ial9yZXEtPnJlcG8tPmJhc2UsICZvYmpfcmVxLT5vaWQpOwogCWlmIChyZXEgPT0gTlVMTCkgewogCQlvYmpfcmVxLT5zdGF0ZSA9IEFCT1JURUQ7CiAJCXJldHVybjsKQEAgLTk4LDYgKzk4LDExIEBACiAJcHJvY2Vzc19odHRwX29iamVjdF9yZXF1ZXN0KG9ial9yZXEtPnJlcSk7CiAJb2JqX3JlcS0+c3RhdGUgPSBDT01QTEVURTsKIAorCW5vcm1hbGl6ZV9jdXJsX3Jlc3VsdCgmb2JqX3JlcS0+cmVxLT5jdXJsX3Jlc3VsdCwKKwkJCSAgICAgIG9ial9yZXEtPnJlcS0+aHR0cF9jb2RlLAorCQkJICAgICAgb2JqX3JlcS0+cmVxLT5lcnJvcnN0ciwKKwkJCSAgICAgIHNpemVvZihvYmpfcmVxLT5yZXEtPmVycm9yc3RyKSk7CisKIAkvKiBVc2UgYWx0ZXJuYXRlcyBpZiBuZWNlc3NhcnkgKi8KIAlpZiAobWlzc2luZ190YXJnZXQob2JqX3JlcS0+cmVxKSkgewogCQlmZXRjaF9hbHRlcm5hdGVzKHdhbGtlciwgYWx0LT5iYXNlKTsKQEAgLTEzMSw3ICsxMzYsNyBAQAogCWxpc3RfZm9yX2VhY2hfc2FmZShwb3MsIHRtcCwgaGVhZCkgewogCQlvYmpfcmVxID0gbGlzdF9lbnRyeShwb3MsIHN0cnVjdCBvYmplY3RfcmVxdWVzdCwgbm9kZSk7CiAJCWlmIChvYmpfcmVxLT5zdGF0ZSA9PSBXQUlUSU5HKSB7Ci0JCQlpZiAoaGFzX3NoYTFfZmlsZShvYmpfcmVxLT5vaWQuaGFzaCkpCisJCQlpZiAoaGFzX29iamVjdF9maWxlKCZvYmpfcmVxLT5vaWQpKQogCQkJCW9ial9yZXEtPnN0YXRlID0gQ09NUExFVEU7CiAJCQllbHNlIHsKIAkJCQlzdGFydF9vYmplY3RfcmVxdWVzdCh3YWxrZXIsIG9ial9yZXEpOwpAQCAtMjA4LDYgKzIxMyw5IEBACiAJY2hhciAqZGF0YTsKIAlpbnQgaSA9IDA7CiAKKwlub3JtYWxpemVfY3VybF9yZXN1bHQoJnNsb3QtPmN1cmxfcmVzdWx0LCBzbG90LT5odHRwX2NvZGUsCisJCQkgICAgICBjdXJsX2Vycm9yc3RyLCBzaXplb2YoY3VybF9lcnJvcnN0cikpOworCiAJaWYgKGFsdF9yZXEtPmh0dHBfc3BlY2lmaWMpIHsKIAkJaWYgKHNsb3QtPmN1cmxfcmVzdWx0ICE9IENVUkxFX09LIHx8CiAJCSAgICAhYWx0X3JlcS0+YnVmZmVyLT5sZW4pIHsKQEAgLTQzNCw5ICs0NDIsOSBAQAogCiAJaWYgKHdhbGtlci0+Z2V0X3ZlcmJvc2VseSkgewogCQlmcHJpbnRmKHN0ZGVyciwgIkdldHRpbmcgcGFjayAlc1xuIiwKLQkJCXNoYTFfdG9faGV4KHRhcmdldC0+c2hhMSkpOworCQkJaGFzaF90b19oZXgodGFyZ2V0LT5oYXNoKSk7CiAJCWZwcmludGYoc3RkZXJyLCAiIHdoaWNoIGNvbnRhaW5zICVzXG4iLAotCQkJc2hhMV90b19oZXgoc2hhMSkpOworCQkJaGFzaF90b19oZXgoc2hhMSkpOwogCX0KIAogCXByZXEgPSBuZXdfaHR0cF9wYWNrX3JlcXVlc3QodGFyZ2V0LCByZXBvLT5iYXNlKTsKQEAgLTQ3Myw5ICs0ODEsOSBAQAogCXJlbGVhc2Vfb2JqZWN0X3JlcXVlc3Qob2JqX3JlcSk7CiB9CiAKLXN0YXRpYyBpbnQgZmV0Y2hfb2JqZWN0KHN0cnVjdCB3YWxrZXIgKndhbGtlciwgdW5zaWduZWQgY2hhciAqc2hhMSkKK3N0YXRpYyBpbnQgZmV0Y2hfb2JqZWN0KHN0cnVjdCB3YWxrZXIgKndhbGtlciwgdW5zaWduZWQgY2hhciAqaGFzaCkKIHsKLQljaGFyICpoZXggPSBzaGExX3RvX2hleChzaGExKTsKKwljaGFyICpoZXggPSBoYXNoX3RvX2hleChoYXNoKTsKIAlpbnQgcmV0ID0gMDsKIAlzdHJ1Y3Qgb2JqZWN0X3JlcXVlc3QgKm9ial9yZXEgPSBOVUxMOwogCXN0cnVjdCBodHRwX29iamVjdF9yZXF1ZXN0ICpyZXE7CkBAIC00ODMsMTMgKzQ5MSwxMyBAQAogCiAJbGlzdF9mb3JfZWFjaChwb3MsIGhlYWQpIHsKIAkJb2JqX3JlcSA9IGxpc3RfZW50cnkocG9zLCBzdHJ1Y3Qgb2JqZWN0X3JlcXVlc3QsIG5vZGUpOwotCQlpZiAoaGFzaGVxKG9ial9yZXEtPm9pZC5oYXNoLCBzaGExKSkKKwkJaWYgKGhhc2hlcShvYmpfcmVxLT5vaWQuaGFzaCwgaGFzaCkpCiAJCQlicmVhazsKIAl9CiAJaWYgKG9ial9yZXEgPT0gTlVMTCkKIAkJcmV0dXJuIGVycm9yKCJDb3VsZG4ndCBmaW5kIHJlcXVlc3QgZm9yICVzIGluIHRoZSBxdWV1ZSIsIGhleCk7CiAKLQlpZiAoaGFzX3NoYTFfZmlsZShvYmpfcmVxLT5vaWQuaGFzaCkpIHsKKwlpZiAoaGFzX29iamVjdF9maWxlKCZvYmpfcmVxLT5vaWQpKSB7CiAJCWlmIChvYmpfcmVxLT5yZXEgIT0gTlVMTCkKIAkJCWFib3J0X2h0dHBfb2JqZWN0X3JlcXVlc3Qob2JqX3JlcS0+cmVxKTsKIAkJYWJvcnRfb2JqZWN0X3JlcXVlc3Qob2JqX3JlcSk7CkBAIC01MTgsMTcgKzUyNiw4IEBACiAJCXJlcS0+bG9jYWxmaWxlID0gLTE7CiAJfQogCi0JLyoKLQkgKiB3ZSB0dXJuZWQgb2ZmIENVUkxPUFRfRkFJTE9ORVJST1IgdG8gYXZvaWQgbG9zaW5nIGEKLQkgKiBwZXJzaXN0ZW50IGNvbm5lY3Rpb24gYW5kIGdvdCBDVVJMRV9PSy4KLQkgKi8KLQlpZiAocmVxLT5odHRwX2NvZGUgPj0gMzAwICYmIHJlcS0+Y3VybF9yZXN1bHQgPT0gQ1VSTEVfT0sgJiYKLQkJCShzdGFydHNfd2l0aChyZXEtPnVybCwgImh0dHA6Ly8iKSB8fAotCQkJIHN0YXJ0c193aXRoKHJlcS0+dXJsLCAiaHR0cHM6Ly8iKSkpIHsKLQkJcmVxLT5jdXJsX3Jlc3VsdCA9IENVUkxFX0hUVFBfUkVUVVJORURfRVJST1I7Ci0JCXhzbnByaW50ZihyZXEtPmVycm9yc3RyLCBzaXplb2YocmVxLT5lcnJvcnN0ciksCi0JCQkgICJIVFRQIHJlcXVlc3QgZmFpbGVkIik7Ci0JfQorCW5vcm1hbGl6ZV9jdXJsX3Jlc3VsdCgmcmVxLT5jdXJsX3Jlc3VsdCwgcmVxLT5odHRwX2NvZGUsCisJCQkgICAgICByZXEtPmVycm9yc3RyLCBzaXplb2YocmVxLT5lcnJvcnN0cikpOwogCiAJaWYgKG9ial9yZXEtPnN0YXRlID09IEFCT1JURUQpIHsKIAkJcmV0ID0gZXJyb3IoIlJlcXVlc3QgZm9yICVzIGFib3J0ZWQiLCBoZXgpOwpAQCAtNTQzLDExICs1NDIsMTEgQEAKIAl9IGVsc2UgaWYgKHJlcS0+enJldCAhPSBaX1NUUkVBTV9FTkQpIHsKIAkJd2Fsa2VyLT5jb3JydXB0X29iamVjdF9mb3VuZCsrOwogCQlyZXQgPSBlcnJvcigiRmlsZSAlcyAoJXMpIGNvcnJ1cHQiLCBoZXgsIHJlcS0+dXJsKTsKLQl9IGVsc2UgaWYgKCFoYXNoZXEob2JqX3JlcS0+b2lkLmhhc2gsIHJlcS0+cmVhbF9zaGExKSkgeworCX0gZWxzZSBpZiAoIW9pZGVxKCZvYmpfcmVxLT5vaWQsICZyZXEtPnJlYWxfb2lkKSkgewogCQlyZXQgPSBlcnJvcigiRmlsZSAlcyBoYXMgYmFkIGhhc2giLCBoZXgpOwogCX0gZWxzZSBpZiAocmVxLT5yZW5hbWUgPCAwKSB7CiAJCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7Ci0JCXNoYTFfZmlsZV9uYW1lKHRoZV9yZXBvc2l0b3J5LCAmYnVmLCByZXEtPnNoYTEpOworCQlsb29zZV9vYmplY3RfcGF0aCh0aGVfcmVwb3NpdG9yeSwgJmJ1ZiwgJnJlcS0+b2lkKTsKIAkJcmV0ID0gZXJyb3IoInVuYWJsZSB0byB3cml0ZSBzaGExIGZpbGVuYW1lICVzIiwgYnVmLmJ1Zik7CiAJCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOwogCX0KQEAgLTU1NywyMCArNTU2LDIwIEBACiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBmZXRjaChzdHJ1Y3Qgd2Fsa2VyICp3YWxrZXIsIHVuc2lnbmVkIGNoYXIgKnNoYTEpCitzdGF0aWMgaW50IGZldGNoKHN0cnVjdCB3YWxrZXIgKndhbGtlciwgdW5zaWduZWQgY2hhciAqaGFzaCkKIHsKIAlzdHJ1Y3Qgd2Fsa2VyX2RhdGEgKmRhdGEgPSB3YWxrZXItPmRhdGE7CiAJc3RydWN0IGFsdF9iYXNlICphbHRiYXNlID0gZGF0YS0+YWx0OwogCi0JaWYgKCFmZXRjaF9vYmplY3Qod2Fsa2VyLCBzaGExKSkKKwlpZiAoIWZldGNoX29iamVjdCh3YWxrZXIsIGhhc2gpKQogCQlyZXR1cm4gMDsKIAl3aGlsZSAoYWx0YmFzZSkgewotCQlpZiAoIWh0dHBfZmV0Y2hfcGFjayh3YWxrZXIsIGFsdGJhc2UsIHNoYTEpKQorCQlpZiAoIWh0dHBfZmV0Y2hfcGFjayh3YWxrZXIsIGFsdGJhc2UsIGhhc2gpKQogCQkJcmV0dXJuIDA7CiAJCWZldGNoX2FsdGVybmF0ZXMod2Fsa2VyLCBkYXRhLT5hbHQtPmJhc2UpOwogCQlhbHRiYXNlID0gYWx0YmFzZS0+bmV4dDsKIAl9Ci0JcmV0dXJuIGVycm9yKCJVbmFibGUgdG8gZmluZCAlcyB1bmRlciAlcyIsIHNoYTFfdG9faGV4KHNoYTEpLAorCXJldHVybiBlcnJvcigiVW5hYmxlIHRvIGZpbmQgJXMgdW5kZXIgJXMiLCBoYXNoX3RvX2hleChoYXNoKSwKIAkJICAgICBkYXRhLT5hbHQtPmJhc2UpOwogfQogCmRpZmYgLS1naXQgYS9odHRwLmMgYi9odHRwLmMKaW5kZXggZWFjYzJhNy4uNDI4M2JlOSAxMDA2NDQKLS0tIGEvaHR0cC5jCisrKyBiL2h0dHAuYwpAQCAtNDgsNiArNDgsNyBAQAogCiBzdGF0aWMgaW50IGN1cmxfc3NsX3ZlcmlmeSA9IC0xOwogc3RhdGljIGludCBjdXJsX3NzbF90cnk7CitzdGF0aWMgY29uc3QgY2hhciAqY3VybF9odHRwX3ZlcnNpb24gPSBOVUxMOwogc3RhdGljIGNvbnN0IGNoYXIgKnNzbF9jZXJ0Owogc3RhdGljIGNvbnN0IGNoYXIgKnNzbF9jaXBoZXJsaXN0Owogc3RhdGljIGNvbnN0IGNoYXIgKnNzbF92ZXJzaW9uOwpAQCAtODUsNiArODYsMTMgQEAKIHN0YXRpYyBpbnQgY3VybF9mdHBfbm9fZXBzdjsKIHN0YXRpYyBjb25zdCBjaGFyICpjdXJsX2h0dHBfcHJveHk7CiBzdGF0aWMgY29uc3QgY2hhciAqaHR0cF9wcm94eV9hdXRobWV0aG9kOworCitzdGF0aWMgY29uc3QgY2hhciAqaHR0cF9wcm94eV9zc2xfY2VydDsKK3N0YXRpYyBjb25zdCBjaGFyICpodHRwX3Byb3h5X3NzbF9rZXk7CitzdGF0aWMgY29uc3QgY2hhciAqaHR0cF9wcm94eV9zc2xfY2FfaW5mbzsKK3N0YXRpYyBzdHJ1Y3QgY3JlZGVudGlhbCBwcm94eV9jZXJ0X2F1dGggPSBDUkVERU5USUFMX0lOSVQ7CitzdGF0aWMgaW50IHByb3h5X3NzbF9jZXJ0X3Bhc3N3b3JkX3JlcXVpcmVkOworCiBzdGF0aWMgc3RydWN0IHsKIAljb25zdCBjaGFyICpuYW1lOwogCWxvbmcgY3VybGF1dGhfcGFyYW07CkBAIC0xNDksNyArMTU3LDcgQEAKIAogc3RhdGljIHN0cnVjdCBjdXJsX3NsaXN0ICpwcmFnbWFfaGVhZGVyOwogc3RhdGljIHN0cnVjdCBjdXJsX3NsaXN0ICpub19wcmFnbWFfaGVhZGVyOwotc3RhdGljIHN0cnVjdCBjdXJsX3NsaXN0ICpleHRyYV9odHRwX2hlYWRlcnM7CitzdGF0aWMgc3RydWN0IHN0cmluZ19saXN0IGV4dHJhX2h0dHBfaGVhZGVycyA9IFNUUklOR19MSVNUX0lOSVRfRFVQOwogCiBzdGF0aWMgc3RydWN0IGFjdGl2ZV9yZXF1ZXN0X3Nsb3QgKmFjdGl2ZV9xdWV1ZV9oZWFkOwogCkBAIC0xNzUsNyArMTgzLDcgQEAKIAltZW1jcHkocHRyLCBidWZmZXItPmJ1Zi5idWYgKyBidWZmZXItPnBvc24sIHNpemUpOwogCWJ1ZmZlci0+cG9zbiArPSBzaXplOwogCi0JcmV0dXJuIHNpemU7CisJcmV0dXJuIHNpemUgLyBlbHRzaXplOwogfQogCiAjaWZuZGVmIE5PX0NVUkxfSU9DVEwKQEAgLTIwMywxMiArMjExLDEyIEBACiAJc3RydWN0IHN0cmJ1ZiAqYnVmZmVyID0gYnVmZmVyXzsKIAogCXN0cmJ1Zl9hZGQoYnVmZmVyLCBwdHIsIHNpemUpOwotCXJldHVybiBzaXplOworCXJldHVybiBubWVtYjsKIH0KIAogc2l6ZV90IGZ3cml0ZV9udWxsKGNoYXIgKnB0ciwgc2l6ZV90IGVsdHNpemUsIHNpemVfdCBubWVtYiwgdm9pZCAqc3RyYnVmKQogewotCXJldHVybiBlbHRzaXplICogbm1lbWI7CisJcmV0dXJuIG5tZW1iOwogfQogCiBzdGF0aWMgdm9pZCBjbG9zZWRvd25fYWN0aXZlX3Nsb3Qoc3RydWN0IGFjdGl2ZV9yZXF1ZXN0X3Nsb3QgKnNsb3QpCkBAIC0yODQsNiArMjkyLDkgQEAKIAogc3RhdGljIGludCBodHRwX29wdGlvbnMoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqY2IpCiB7CisJaWYgKCFzdHJjbXAoImh0dHAudmVyc2lvbiIsIHZhcikpIHsKKwkJcmV0dXJuIGdpdF9jb25maWdfc3RyaW5nKCZjdXJsX2h0dHBfdmVyc2lvbiwgdmFyLCB2YWx1ZSk7CisJfQogCWlmICghc3RyY21wKCJodHRwLnNzbHZlcmlmeSIsIHZhcikpIHsKIAkJY3VybF9zc2xfdmVyaWZ5ID0gZ2l0X2NvbmZpZ19ib29sKHZhciwgdmFsdWUpOwogCQlyZXR1cm4gMDsKQEAgLTM2MSw2ICszNzIsMjAgQEAKIAlpZiAoIXN0cmNtcCgiaHR0cC5wcm94eWF1dGhtZXRob2QiLCB2YXIpKQogCQlyZXR1cm4gZ2l0X2NvbmZpZ19zdHJpbmcoJmh0dHBfcHJveHlfYXV0aG1ldGhvZCwgdmFyLCB2YWx1ZSk7CiAKKwlpZiAoIXN0cmNtcCgiaHR0cC5wcm94eXNzbGNlcnQiLCB2YXIpKQorCQlyZXR1cm4gZ2l0X2NvbmZpZ19zdHJpbmcoJmh0dHBfcHJveHlfc3NsX2NlcnQsIHZhciwgdmFsdWUpOworCisJaWYgKCFzdHJjbXAoImh0dHAucHJveHlzc2xrZXkiLCB2YXIpKQorCQlyZXR1cm4gZ2l0X2NvbmZpZ19zdHJpbmcoJmh0dHBfcHJveHlfc3NsX2tleSwgdmFyLCB2YWx1ZSk7CisKKwlpZiAoIXN0cmNtcCgiaHR0cC5wcm94eXNzbGNhaW5mbyIsIHZhcikpCisJCXJldHVybiBnaXRfY29uZmlnX3N0cmluZygmaHR0cF9wcm94eV9zc2xfY2FfaW5mbywgdmFyLCB2YWx1ZSk7CisKKwlpZiAoIXN0cmNtcCgiaHR0cC5wcm94eXNzbGNlcnRwYXNzd29yZHByb3RlY3RlZCIsIHZhcikpIHsKKwkJcHJveHlfc3NsX2NlcnRfcGFzc3dvcmRfcmVxdWlyZWQgPSBnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSk7CisJCXJldHVybiAwOworCX0KKwogCWlmICghc3RyY21wKCJodHRwLmNvb2tpZWZpbGUiLCB2YXIpKQogCQlyZXR1cm4gZ2l0X2NvbmZpZ19wYXRobmFtZSgmY3VybF9jb29raWVfZmlsZSwgdmFyLCB2YWx1ZSk7CiAJaWYgKCFzdHJjbXAoImh0dHAuc2F2ZWNvb2tpZXMiLCB2YXIpKSB7CkBAIC00MTAsMTEgKzQzNSw5IEBACiAJCWlmICghdmFsdWUpIHsKIAkJCXJldHVybiBjb25maWdfZXJyb3Jfbm9uYm9vbCh2YXIpOwogCQl9IGVsc2UgaWYgKCEqdmFsdWUpIHsKLQkJCWN1cmxfc2xpc3RfZnJlZV9hbGwoZXh0cmFfaHR0cF9oZWFkZXJzKTsKLQkJCWV4dHJhX2h0dHBfaGVhZGVycyA9IE5VTEw7CisJCQlzdHJpbmdfbGlzdF9jbGVhcigmZXh0cmFfaHR0cF9oZWFkZXJzLCAwKTsKIAkJfSBlbHNlIHsKLQkJCWV4dHJhX2h0dHBfaGVhZGVycyA9Ci0JCQkJY3VybF9zbGlzdF9hcHBlbmQoZXh0cmFfaHR0cF9oZWFkZXJzLCB2YWx1ZSk7CisJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJmV4dHJhX2h0dHBfaGVhZGVycywgdmFsdWUpOwogCQl9CiAJCXJldHVybiAwOwogCX0KQEAgLTUwOSw5ICs1MzIsMTEgQEAKICNlbHNlCiAJCXN0cnVjdCBzdHJidWYgcyA9IFNUUkJVRl9JTklUOwogCi0JCXN0cmJ1Zl9hZGRzdHJfdXJsZW5jb2RlKCZzLCBwcm94eV9hdXRoLnVzZXJuYW1lLCAxKTsKKwkJc3RyYnVmX2FkZHN0cl91cmxlbmNvZGUoJnMsIHByb3h5X2F1dGgudXNlcm5hbWUsCisJCQkJCWlzX3JmYzM5ODZfdW5yZXNlcnZlZCk7CiAJCXN0cmJ1Zl9hZGRjaCgmcywgJzonKTsKLQkJc3RyYnVmX2FkZHN0cl91cmxlbmNvZGUoJnMsIHByb3h5X2F1dGgucGFzc3dvcmQsIDEpOworCQlzdHJidWZfYWRkc3RyX3VybGVuY29kZSgmcywgcHJveHlfYXV0aC5wYXNzd29yZCwKKwkJCQkJaXNfcmZjMzk4Nl91bnJlc2VydmVkKTsKIAkJY3VybF9wcm94eXVzZXJwd2QgPSBzdHJidWZfZGV0YWNoKCZzLCBOVUxMKTsKIAkJY3VybF9lYXN5X3NldG9wdChyZXN1bHQsIENVUkxPUFRfUFJPWFlVU0VSUFdELCBjdXJsX3Byb3h5dXNlcnB3ZCk7CiAjZW5kaWYKQEAgLTU2MSw2ICs1ODYsMjEgQEAKIAlyZXR1cm4gMTsKIH0KIAorI2lmIExJQkNVUkxfVkVSU0lPTl9OVU0gPj0gMHgwNzM0MDAKK3N0YXRpYyBpbnQgaGFzX3Byb3h5X2NlcnRfcGFzc3dvcmQodm9pZCkKK3sKKwlpZiAoaHR0cF9wcm94eV9zc2xfY2VydCA9PSBOVUxMIHx8IHByb3h5X3NzbF9jZXJ0X3Bhc3N3b3JkX3JlcXVpcmVkICE9IDEpCisJCXJldHVybiAwOworCWlmICghcHJveHlfY2VydF9hdXRoLnBhc3N3b3JkKSB7CisJCXByb3h5X2NlcnRfYXV0aC5wcm90b2NvbCA9IHhzdHJkdXAoImNlcnQiKTsKKwkJcHJveHlfY2VydF9hdXRoLnVzZXJuYW1lID0geHN0cmR1cCgiIik7CisJCXByb3h5X2NlcnRfYXV0aC5wYXRoID0geHN0cmR1cChodHRwX3Byb3h5X3NzbF9jZXJ0KTsKKwkJY3JlZGVudGlhbF9maWxsKCZwcm94eV9jZXJ0X2F1dGgpOworCX0KKwlyZXR1cm4gMTsKK30KKyNlbmRpZgorCiAjaWYgTElCQ1VSTF9WRVJTSU9OX05VTSA+PSAweDA3MTkwMAogc3RhdGljIHZvaWQgc2V0X2N1cmxfa2VlcGFsaXZlKENVUkwgKmMpCiB7CkBAIC02NzYsOCArNzE2LDggQEAKIAlmb3IgKGhlYWRlciA9IGhlYWRlcnM7ICpoZWFkZXI7IGhlYWRlcisrKSB7CiAJCWlmIChoaWRlX3NlbnNpdGl2ZV9oZWFkZXIpCiAJCQlyZWRhY3Rfc2Vuc2l0aXZlX2hlYWRlcigqaGVhZGVyKTsKLQkJc3RyYnVmX2luc2VydCgoKmhlYWRlciksIDAsIHRleHQsIHN0cmxlbih0ZXh0KSk7Ci0JCXN0cmJ1Zl9pbnNlcnQoKCpoZWFkZXIpLCBzdHJsZW4odGV4dCksICI6ICIsIDIpOworCQlzdHJidWZfaW5zZXJ0c3RyKCgqaGVhZGVyKSwgMCwgdGV4dCk7CisJCXN0cmJ1Zl9pbnNlcnRzdHIoKCpoZWFkZXIpLCBzdHJsZW4odGV4dCksICI6ICIpOwogCQlzdHJidWZfcnRyaW0oKCpoZWFkZXIpKTsKIAkJc3RyYnVmX2FkZGNoKCgqaGVhZGVyKSwgJ1xuJyk7CiAJCXRyYWNlX3N0cmJ1ZigmdHJhY2VfY3VybCwgKCpoZWFkZXIpKTsKQEAgLTc4OSw2ICs4MjksMzEgQEAKIH0KICNlbmRpZgogCisjaWYgTElCQ1VSTF9WRVJTSU9OX05VTSA+PTB4MDcyZjAwCitzdGF0aWMgaW50IGdldF9jdXJsX2h0dHBfdmVyc2lvbl9vcHQoY29uc3QgY2hhciAqdmVyc2lvbl9zdHJpbmcsIGxvbmcgKm9wdCkKK3sKKwlpbnQgaTsKKwlzdGF0aWMgc3RydWN0IHsKKwkJY29uc3QgY2hhciAqbmFtZTsKKwkJbG9uZyBvcHRfdG9rZW47CisJfSBjaG9pY2VbXSA9IHsKKwkJeyAiSFRUUC8xLjEiLCBDVVJMX0hUVFBfVkVSU0lPTl8xXzEgfSwKKwkJeyAiSFRUUC8yIiwgQ1VSTF9IVFRQX1ZFUlNJT05fMiB9CisJfTsKKworCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKGNob2ljZSk7IGkrKykgeworCQlpZiAoIXN0cmNtcCh2ZXJzaW9uX3N0cmluZywgY2hvaWNlW2ldLm5hbWUpKSB7CisJCQkqb3B0ID0gY2hvaWNlW2ldLm9wdF90b2tlbjsKKwkJCXJldHVybiAwOworCQl9CisJfQorCisJd2FybmluZygidW5rbm93biB2YWx1ZSBnaXZlbiB0byBodHRwLnZlcnNpb246ICclcyciLCB2ZXJzaW9uX3N0cmluZyk7CisJcmV0dXJuIC0xOyAvKiBub3QgZm91bmQgKi8KK30KKworI2VuZGlmCisKIHN0YXRpYyBDVVJMICpnZXRfY3VybF9oYW5kbGUodm9pZCkKIHsKIAlDVVJMICpyZXN1bHQgPSBjdXJsX2Vhc3lfaW5pdCgpOwpAQCAtODA2LDYgKzg3MSwxNiBAQAogCQljdXJsX2Vhc3lfc2V0b3B0KHJlc3VsdCwgQ1VSTE9QVF9TU0xfVkVSSUZZSE9TVCwgMik7CiAJfQogCisjaWYgTElCQ1VSTF9WRVJTSU9OX05VTSA+PSAweDA3MmYwMCAvLyA3LjQ3LjAKKyAgICBpZiAoY3VybF9odHRwX3ZlcnNpb24pIHsKKwkJbG9uZyBvcHQ7CisJCWlmICghZ2V0X2N1cmxfaHR0cF92ZXJzaW9uX29wdChjdXJsX2h0dHBfdmVyc2lvbiwgJm9wdCkpIHsKKwkJCS8qIFNldCByZXF1ZXN0IHVzZSBodHRwIHZlcnNpb24gKi8KKwkJCWN1cmxfZWFzeV9zZXRvcHQocmVzdWx0LCBDVVJMT1BUX0hUVFBfVkVSU0lPTiwgb3B0KTsKKwkJfQorICAgIH0KKyNlbmRpZgorCiAjaWYgTElCQ1VSTF9WRVJTSU9OX05VTSA+PSAweDA3MDkwNwogCWN1cmxfZWFzeV9zZXRvcHQocmVzdWx0LCBDVVJMT1BUX05FVFJDLCBDVVJMX05FVFJDX09QVElPTkFMKTsKICNlbmRpZgpAQCAtODg1LDggKzk2MCwxNCBAQAogI2lmIExJQkNVUkxfVkVSU0lPTl9OVU0gPj0gMHgwNzM0MDAKIAkJY3VybF9lYXN5X3NldG9wdChyZXN1bHQsIENVUkxPUFRfUFJPWFlfQ0FJTkZPLCBOVUxMKTsKICNlbmRpZgotCX0gZWxzZSBpZiAoc3NsX2NhaW5mbyAhPSBOVUxMKQotCQljdXJsX2Vhc3lfc2V0b3B0KHJlc3VsdCwgQ1VSTE9QVF9DQUlORk8sIHNzbF9jYWluZm8pOworCX0gZWxzZSBpZiAoc3NsX2NhaW5mbyAhPSBOVUxMIHx8IGh0dHBfcHJveHlfc3NsX2NhX2luZm8gIT0gTlVMTCkgeworCQlpZiAoc3NsX2NhaW5mbyAhPSBOVUxMKQorCQkJY3VybF9lYXN5X3NldG9wdChyZXN1bHQsIENVUkxPUFRfQ0FJTkZPLCBzc2xfY2FpbmZvKTsKKyNpZiBMSUJDVVJMX1ZFUlNJT05fTlVNID49IDB4MDczNDAwCisJCWlmIChodHRwX3Byb3h5X3NzbF9jYV9pbmZvICE9IE5VTEwpCisJCQljdXJsX2Vhc3lfc2V0b3B0KHJlc3VsdCwgQ1VSTE9QVF9QUk9YWV9DQUlORk8sIGh0dHBfcHJveHlfc3NsX2NhX2luZm8pOworI2VuZGlmCisJfQogCiAJaWYgKGN1cmxfbG93X3NwZWVkX2xpbWl0ID4gMCAmJiBjdXJsX2xvd19zcGVlZF90aW1lID4gMCkgewogCQljdXJsX2Vhc3lfc2V0b3B0KHJlc3VsdCwgQ1VSTE9QVF9MT1dfU1BFRURfTElNSVQsCkBAIC05NzksOSArMTA2MCwxOCBAQAogCQkJCUNVUkxPUFRfUFJPWFlUWVBFLCBDVVJMUFJPWFlfU09DS1M0KTsKICNlbmRpZgogI2lmIExJQkNVUkxfVkVSU0lPTl9OVU0gPj0gMHgwNzM0MDAKLQkJZWxzZSBpZiAoc3RhcnRzX3dpdGgoY3VybF9odHRwX3Byb3h5LCAiaHR0cHMiKSkKLQkJCWN1cmxfZWFzeV9zZXRvcHQocmVzdWx0LAotCQkJCUNVUkxPUFRfUFJPWFlUWVBFLCBDVVJMUFJPWFlfSFRUUFMpOworCQllbHNlIGlmIChzdGFydHNfd2l0aChjdXJsX2h0dHBfcHJveHksICJodHRwcyIpKSB7CisJCQljdXJsX2Vhc3lfc2V0b3B0KHJlc3VsdCwgQ1VSTE9QVF9QUk9YWVRZUEUsIENVUkxQUk9YWV9IVFRQUyk7CisKKwkJCWlmIChodHRwX3Byb3h5X3NzbF9jZXJ0KQorCQkJCWN1cmxfZWFzeV9zZXRvcHQocmVzdWx0LCBDVVJMT1BUX1BST1hZX1NTTENFUlQsIGh0dHBfcHJveHlfc3NsX2NlcnQpOworCisJCQlpZiAoaHR0cF9wcm94eV9zc2xfa2V5KQorCQkJCWN1cmxfZWFzeV9zZXRvcHQocmVzdWx0LCBDVVJMT1BUX1BST1hZX1NTTEtFWSwgaHR0cF9wcm94eV9zc2xfa2V5KTsKKworCQkJaWYgKGhhc19wcm94eV9jZXJ0X3Bhc3N3b3JkKCkpCisJCQkJY3VybF9lYXN5X3NldG9wdChyZXN1bHQsIENVUkxPUFRfUFJPWFlfS0VZUEFTU1dELCBwcm94eV9jZXJ0X2F1dGgucGFzc3dvcmQpOworCQl9CiAjZW5kaWYKIAkJaWYgKHN0cnN0cihjdXJsX2h0dHBfcHJveHksICI6Ly8iKSkKIAkJCWNyZWRlbnRpYWxfZnJvbV91cmwoJnByb3h5X2F1dGgsIGN1cmxfaHR0cF9wcm94eSk7CkBAIC0xMDM0LDYgKzExMjQsNyBAQAogCiAJZ2l0X2NvbmZpZyh1cmxtYXRjaF9jb25maWdfZW50cnksICZjb25maWcpOwogCWZyZWUobm9ybWFsaXplZF91cmwpOworCXN0cmluZ19saXN0X2NsZWFyKCZjb25maWcudmFycywgMSk7CiAKICNpZiBMSUJDVVJMX1ZFUlNJT05fTlVNID49IDB4MDczODAwCiAJaWYgKGh0dHBfc3NsX2JhY2tlbmQpIHsKQEAgLTExMjAsNiArMTIxMSwxMyBAQAogCQltYXhfcmVxdWVzdHMgPSBERUZBVUxUX01BWF9SRVFVRVNUUzsKICNlbmRpZgogCisJc2V0X2Zyb21fZW52KCZodHRwX3Byb3h5X3NzbF9jZXJ0LCAiR0lUX1BST1hZX1NTTF9DRVJUIik7CisJc2V0X2Zyb21fZW52KCZodHRwX3Byb3h5X3NzbF9rZXksICJHSVRfUFJPWFlfU1NMX0tFWSIpOworCXNldF9mcm9tX2VudigmaHR0cF9wcm94eV9zc2xfY2FfaW5mbywgIkdJVF9QUk9YWV9TU0xfQ0FJTkZPIik7CisKKwlpZiAoZ2V0ZW52KCJHSVRfUFJPWFlfU1NMX0NFUlRfUEFTU1dPUkRfUFJPVEVDVEVEIikpCisJCXByb3h5X3NzbF9jZXJ0X3Bhc3N3b3JkX3JlcXVpcmVkID0gMTsKKwogCWlmIChnZXRlbnYoIkdJVF9DVVJMX0ZUUF9OT19FUFNWIikpCiAJCWN1cmxfZnRwX25vX2Vwc3YgPSAxOwogCkBAIC0xMTYwLDggKzEyNTgsNyBAQAogI2VuZGlmCiAJY3VybF9nbG9iYWxfY2xlYW51cCgpOwogCi0JY3VybF9zbGlzdF9mcmVlX2FsbChleHRyYV9odHRwX2hlYWRlcnMpOwotCWV4dHJhX2h0dHBfaGVhZGVycyA9IE5VTEw7CisJc3RyaW5nX2xpc3RfY2xlYXIoJmV4dHJhX2h0dHBfaGVhZGVycywgMCk7CiAKIAljdXJsX3NsaXN0X2ZyZWVfYWxsKHByYWdtYV9oZWFkZXIpOwogCXByYWdtYV9oZWFkZXIgPSBOVUxMOwpAQCAtMTE5MSw2ICsxMjg4LDEyIEBACiAJfQogCXNzbF9jZXJ0X3Bhc3N3b3JkX3JlcXVpcmVkID0gMDsKIAorCWlmIChwcm94eV9jZXJ0X2F1dGgucGFzc3dvcmQgIT0gTlVMTCkgeworCQltZW1zZXQocHJveHlfY2VydF9hdXRoLnBhc3N3b3JkLCAwLCBzdHJsZW4ocHJveHlfY2VydF9hdXRoLnBhc3N3b3JkKSk7CisJCUZSRUVfQU5EX05VTEwocHJveHlfY2VydF9hdXRoLnBhc3N3b3JkKTsKKwl9CisJcHJveHlfc3NsX2NlcnRfcGFzc3dvcmRfcmVxdWlyZWQgPSAwOworCiAJRlJFRV9BTkRfTlVMTChjYWNoZWRfYWNjZXB0X2xhbmd1YWdlKTsKIH0KIApAQCAtMTUwNSw3ICsxNjA4LDggQEAKIAlyZXR1cm4gc3RyYnVmX2RldGFjaCgmYnVmLCBOVUxMKTsKIH0KIAotc3RhdGljIGludCBoYW5kbGVfY3VybF9yZXN1bHQoc3RydWN0IHNsb3RfcmVzdWx0cyAqcmVzdWx0cykKK3ZvaWQgbm9ybWFsaXplX2N1cmxfcmVzdWx0KENVUkxjb2RlICpyZXN1bHQsIGxvbmcgaHR0cF9jb2RlLAorCQkJICAgY2hhciAqZXJyb3JzdHIsIHNpemVfdCBlcnJvcmxlbikKIHsKIAkvKgogCSAqIElmIHdlIHNlZSBhIGZhaWxpbmcgaHR0cCBjb2RlIHdpdGggQ1VSTEVfT0ssIHdlIGhhdmUgdHVybmVkIG9mZgpAQCAtMTUxNSwxOSArMTYxOSwyNCBAQAogCSAqIExpa2V3aXNlLCBpZiB3ZSBzZWUgYSByZWRpcmVjdCAoMzB4IGNvZGUpLCB0aGF0IG1lYW5zIHdlIHR1cm5lZCBvZmYKIAkgKiByZWRpcmVjdC1mb2xsb3dpbmcsIGFuZCB3ZSBzaG91bGQgdHJlYXQgdGhlIHJlc3VsdCBhcyBhbiBlcnJvci4KIAkgKi8KLQlpZiAocmVzdWx0cy0+Y3VybF9yZXN1bHQgPT0gQ1VSTEVfT0sgJiYKLQkgICAgcmVzdWx0cy0+aHR0cF9jb2RlID49IDMwMCkgewotCQlyZXN1bHRzLT5jdXJsX3Jlc3VsdCA9IENVUkxFX0hUVFBfUkVUVVJORURfRVJST1I7CisJaWYgKCpyZXN1bHQgPT0gQ1VSTEVfT0sgJiYgaHR0cF9jb2RlID49IDMwMCkgeworCQkqcmVzdWx0ID0gQ1VSTEVfSFRUUF9SRVRVUk5FRF9FUlJPUjsKIAkJLyoKIAkJICogTm9ybWFsbHkgY3VybCB3aWxsIGFscmVhZHkgaGF2ZSBwdXQgdGhlICJyZWFzb24gcGhyYXNlIgogCQkgKiBmcm9tIHRoZSBzZXJ2ZXIgaW50byBjdXJsX2Vycm9yc3RyOyB1bmZvcnR1bmF0ZWx5IHdpdGhvdXQKIAkJICogRkFJTE9ORVJST1IgaXQgaXMgbG9zdCwgc28gd2UgY2FuIGdpdmUgb25seSB0aGUgbnVtZXJpYwogCQkgKiBzdGF0dXMgY29kZS4KIAkJICovCi0JCXhzbnByaW50ZihjdXJsX2Vycm9yc3RyLCBzaXplb2YoY3VybF9lcnJvcnN0ciksCisJCXhzbnByaW50ZihlcnJvcnN0ciwgZXJyb3JsZW4sCiAJCQkgICJUaGUgcmVxdWVzdGVkIFVSTCByZXR1cm5lZCBlcnJvcjogJWxkIiwKLQkJCSAgcmVzdWx0cy0+aHR0cF9jb2RlKTsKKwkJCSAgaHR0cF9jb2RlKTsKIAl9Cit9CisKK3N0YXRpYyBpbnQgaGFuZGxlX2N1cmxfcmVzdWx0KHN0cnVjdCBzbG90X3Jlc3VsdHMgKnJlc3VsdHMpCit7CisJbm9ybWFsaXplX2N1cmxfcmVzdWx0KCZyZXN1bHRzLT5jdXJsX3Jlc3VsdCwgcmVzdWx0cy0+aHR0cF9jb2RlLAorCQkJICAgICAgY3VybF9lcnJvcnN0ciwgc2l6ZW9mKGN1cmxfZXJyb3JzdHIpKTsKIAogCWlmIChyZXN1bHRzLT5jdXJsX3Jlc3VsdCA9PSBDVVJMRV9PSykgewogCQljcmVkZW50aWFsX2FwcHJvdmUoJmh0dHBfYXV0aCk7CkBAIC0xNTc5LDEwICsxNjg4LDExIEBACiAKIHN0cnVjdCBjdXJsX3NsaXN0ICpodHRwX2NvcHlfZGVmYXVsdF9oZWFkZXJzKHZvaWQpCiB7Ci0Jc3RydWN0IGN1cmxfc2xpc3QgKmhlYWRlcnMgPSBOVUxMLCAqaDsKKwlzdHJ1Y3QgY3VybF9zbGlzdCAqaGVhZGVycyA9IE5VTEw7CisJY29uc3Qgc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKml0ZW07CiAKLQlmb3IgKGggPSBleHRyYV9odHRwX2hlYWRlcnM7IGg7IGggPSBoLT5uZXh0KQotCQloZWFkZXJzID0gY3VybF9zbGlzdF9hcHBlbmQoaGVhZGVycywgaC0+ZGF0YSk7CisJZm9yX2VhY2hfc3RyaW5nX2xpc3RfaXRlbShpdGVtLCAmZXh0cmFfaHR0cF9oZWFkZXJzKQorCQloZWFkZXJzID0gY3VybF9zbGlzdF9hcHBlbmQoaGVhZGVycywgaXRlbS0+c3RyaW5nKTsKIAogCXJldHVybiBoZWFkZXJzOwogfQpAQCAtMTgzNyw4ICsxOTQ3LDYgQEAKIAlzdHJidWZfYWRkc3RyKCZidWYsICJQcmFnbWE6Iik7CiAJaWYgKG9wdGlvbnMgJiYgb3B0aW9ucy0+bm9fY2FjaGUpCiAJCXN0cmJ1Zl9hZGRzdHIoJmJ1ZiwgIiBuby1jYWNoZSIpOwotCWlmIChvcHRpb25zICYmIG9wdGlvbnMtPmtlZXBfZXJyb3IpCi0JCWN1cmxfZWFzeV9zZXRvcHQoc2xvdC0+Y3VybCwgQ1VSTE9QVF9GQUlMT05FUlJPUiwgMCk7CiAJaWYgKG9wdGlvbnMgJiYgb3B0aW9ucy0+aW5pdGlhbF9yZXF1ZXN0ICYmCiAJICAgIGh0dHBfZm9sbG93X2NvbmZpZyA9PSBIVFRQX0ZPTExPV19JTklUSUFMKQogCQljdXJsX2Vhc3lfc2V0b3B0KHNsb3QtPmN1cmwsIENVUkxPUFRfRk9MTE9XTE9DQVRJT04sIDEpOwpAQCAtMTg1Niw2ICsxOTY0LDcgQEAKIAljdXJsX2Vhc3lfc2V0b3B0KHNsb3QtPmN1cmwsIENVUkxPUFRfVVJMLCB1cmwpOwogCWN1cmxfZWFzeV9zZXRvcHQoc2xvdC0+Y3VybCwgQ1VSTE9QVF9IVFRQSEVBREVSLCBoZWFkZXJzKTsKIAljdXJsX2Vhc3lfc2V0b3B0KHNsb3QtPmN1cmwsIENVUkxPUFRfRU5DT0RJTkcsICIiKTsKKwljdXJsX2Vhc3lfc2V0b3B0KHNsb3QtPmN1cmwsIENVUkxPUFRfRkFJTE9ORVJST1IsIDApOwogCiAJcmV0ID0gcnVuX29uZV9zbG90KHNsb3QsICZyZXN1bHRzKTsKIApAQCAtMTk1MCwxOSArMjA1OSwyNiBAQAogCQlyZXR1cm4gcmV0OwogCiAJLyoKLQkgKiBJZiB3ZSBhcmUgdXNpbmcgS0VFUF9FUlJPUiwgdGhlIHByZXZpb3VzIHJlcXVlc3QgbWF5IGhhdmUKLQkgKiBwdXQgY3J1ZnQgaW50byBvdXIgb3V0cHV0IHN0cmVhbTsgd2Ugc2hvdWxkIGNsZWFyIGl0IG91dCBiZWZvcmUKLQkgKiBtYWtpbmcgb3VyIG5leHQgcmVxdWVzdC4gV2Ugb25seSBrbm93IGhvdyB0byBkbyB0aGlzIGZvcgotCSAqIHRoZSBzdHJidWYgY2FzZSwgYnV0IHRoYXQgaXMgZW5vdWdoIHRvIHNhdGlzZnkgY3VycmVudCBjYWxsZXJzLgorCSAqIFRoZSBwcmV2aW91cyByZXF1ZXN0IG1heSBoYXZlIHB1dCBjcnVmdCBpbnRvIG91ciBvdXRwdXQgc3RyZWFtOyB3ZQorCSAqIHNob3VsZCBjbGVhciBpdCBvdXQgYmVmb3JlIG1ha2luZyBvdXIgbmV4dCByZXF1ZXN0LgogCSAqLwotCWlmIChvcHRpb25zICYmIG9wdGlvbnMtPmtlZXBfZXJyb3IpIHsKLQkJc3dpdGNoICh0YXJnZXQpIHsKLQkJY2FzZSBIVFRQX1JFUVVFU1RfU1RSQlVGOgotCQkJc3RyYnVmX3Jlc2V0KHJlc3VsdCk7Ci0JCQlicmVhazsKLQkJZGVmYXVsdDoKLQkJCUJVRygiSFRUUF9LRUVQX0VSUk9SIGlzIG9ubHkgc3VwcG9ydGVkIHdpdGggc3RyYnVmcyIpOworCXN3aXRjaCAodGFyZ2V0KSB7CisJY2FzZSBIVFRQX1JFUVVFU1RfU1RSQlVGOgorCQlzdHJidWZfcmVzZXQocmVzdWx0KTsKKwkJYnJlYWs7CisJY2FzZSBIVFRQX1JFUVVFU1RfRklMRToKKwkJaWYgKGZmbHVzaChyZXN1bHQpKSB7CisJCQllcnJvcl9lcnJubygidW5hYmxlIHRvIGZsdXNoIGEgZmlsZSIpOworCQkJcmV0dXJuIEhUVFBfU1RBUlRfRkFJTEVEOwogCQl9CisJCXJld2luZChyZXN1bHQpOworCQlpZiAoZnRydW5jYXRlKGZpbGVubyhyZXN1bHQpLCAwKSA8IDApIHsKKwkJCWVycm9yX2Vycm5vKCJ1bmFibGUgdG8gdHJ1bmNhdGUgYSBmaWxlIik7CisJCQlyZXR1cm4gSFRUUF9TVEFSVF9GQUlMRUQ7CisJCX0KKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJQlVHKCJVbmtub3duIGh0dHBfcmVxdWVzdCB0YXJnZXQiKTsKIAl9CiAKIAljcmVkZW50aWFsX2ZpbGwoJmh0dHBfYXV0aCk7CkBAIC0yMDIwLDcgKzIxMzYsNyBAQAogCXVybCA9IHF1b3RlX3JlZl91cmwoYmFzZSwgcmVmLT5uYW1lKTsKIAlpZiAoaHR0cF9nZXRfc3RyYnVmKHVybCwgJmJ1ZmZlciwgJm9wdGlvbnMpID09IEhUVFBfT0spIHsKIAkJc3RyYnVmX3J0cmltKCZidWZmZXIpOwotCQlpZiAoYnVmZmVyLmxlbiA9PSA0MCkKKwkJaWYgKGJ1ZmZlci5sZW4gPT0gdGhlX2hhc2hfYWxnby0+aGV4c3opCiAJCQlyZXQgPSBnZXRfb2lkX2hleChidWZmZXIuYnVmLCAmcmVmLT5vbGRfb2lkKTsKIAkJZWxzZSBpZiAoc3RhcnRzX3dpdGgoYnVmZmVyLmJ1ZiwgInJlZjogIikpIHsKIAkJCXJlZi0+c3ltcmVmID0geHN0cmR1cChidWZmZXIuYnVmICsgNSk7CkBAIC0yMDM0LDE5ICsyMTUwLDE5IEBACiB9CiAKIC8qIEhlbHBlcnMgZm9yIGZldGNoaW5nIHBhY2tzICovCi1zdGF0aWMgY2hhciAqZmV0Y2hfcGFja19pbmRleCh1bnNpZ25lZCBjaGFyICpzaGExLCBjb25zdCBjaGFyICpiYXNlX3VybCkKK3N0YXRpYyBjaGFyICpmZXRjaF9wYWNrX2luZGV4KHVuc2lnbmVkIGNoYXIgKmhhc2gsIGNvbnN0IGNoYXIgKmJhc2VfdXJsKQogewogCWNoYXIgKnVybCwgKnRtcDsKIAlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCiAJaWYgKGh0dHBfaXNfdmVyYm9zZSkKLQkJZnByaW50ZihzdGRlcnIsICJHZXR0aW5nIGluZGV4IGZvciBwYWNrICVzXG4iLCBzaGExX3RvX2hleChzaGExKSk7CisJCWZwcmludGYoc3RkZXJyLCAiR2V0dGluZyBpbmRleCBmb3IgcGFjayAlc1xuIiwgaGFzaF90b19oZXgoaGFzaCkpOwogCiAJZW5kX3VybF93aXRoX3NsYXNoKCZidWYsIGJhc2VfdXJsKTsKLQlzdHJidWZfYWRkZigmYnVmLCAib2JqZWN0cy9wYWNrL3BhY2stJXMuaWR4Iiwgc2hhMV90b19oZXgoc2hhMSkpOworCXN0cmJ1Zl9hZGRmKCZidWYsICJvYmplY3RzL3BhY2svcGFjay0lcy5pZHgiLCBoYXNoX3RvX2hleChoYXNoKSk7CiAJdXJsID0gc3RyYnVmX2RldGFjaCgmYnVmLCBOVUxMKTsKIAotCXN0cmJ1Zl9hZGRmKCZidWYsICIlcy50ZW1wIiwgc2hhMV9wYWNrX2luZGV4X25hbWUoc2hhMSkpOworCXN0cmJ1Zl9hZGRmKCZidWYsICIlcy50ZW1wIiwgc2hhMV9wYWNrX2luZGV4X25hbWUoaGFzaCkpOwogCXRtcCA9IHN0cmJ1Zl9kZXRhY2goJmJ1ZiwgTlVMTCk7CiAKIAlpZiAoaHR0cF9nZXRfZmlsZSh1cmwsIHRtcCwgTlVMTCkgIT0gSFRUUF9PSykgewpAQCAtMjEwMiwxMSArMjIxOCwxMSBAQAogaW50IGh0dHBfZ2V0X2luZm9fcGFja3MoY29uc3QgY2hhciAqYmFzZV91cmwsIHN0cnVjdCBwYWNrZWRfZ2l0ICoqcGFja3NfaGVhZCkKIHsKIAlzdHJ1Y3QgaHR0cF9nZXRfb3B0aW9ucyBvcHRpb25zID0gezB9OwotCWludCByZXQgPSAwLCBpID0gMDsKLQljaGFyICp1cmwsICpkYXRhOworCWludCByZXQgPSAwOworCWNoYXIgKnVybDsKKwljb25zdCBjaGFyICpkYXRhOwogCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7Ci0JdW5zaWduZWQgY2hhciBoYXNoW0dJVF9NQVhfUkFXU1pdOwotCWNvbnN0IHVuc2lnbmVkIGhleHN6ID0gdGhlX2hhc2hfYWxnby0+aGV4c3o7CisJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAKIAllbmRfdXJsX3dpdGhfc2xhc2goJmJ1ZiwgYmFzZV91cmwpOwogCXN0cmJ1Zl9hZGRzdHIoJmJ1ZiwgIm9iamVjdHMvaW5mby9wYWNrcyIpOwpAQCAtMjExOCwyNCArMjIzNCwxNyBAQAogCQlnb3RvIGNsZWFudXA7CiAKIAlkYXRhID0gYnVmLmJ1ZjsKLQl3aGlsZSAoaSA8IGJ1Zi5sZW4pIHsKLQkJc3dpdGNoIChkYXRhW2ldKSB7Ci0JCWNhc2UgJ1AnOgotCQkJaSsrOwotCQkJaWYgKGkgKyBoZXhzeiArIDEyIDw9IGJ1Zi5sZW4gJiYKLQkJCSAgICBzdGFydHNfd2l0aChkYXRhICsgaSwgIiBwYWNrLSIpICYmCi0JCQkgICAgc3RhcnRzX3dpdGgoZGF0YSArIGkgKyBoZXhzeiArIDYsICIucGFja1xuIikpIHsKLQkJCQlnZXRfc2hhMV9oZXgoZGF0YSArIGkgKyA2LCBoYXNoKTsKLQkJCQlmZXRjaF9hbmRfc2V0dXBfcGFja19pbmRleChwYWNrc19oZWFkLCBoYXNoLAotCQkJCQkJICAgICAgYmFzZV91cmwpOwotCQkJCWkgKz0gaGV4c3ogKyAxMTsKLQkJCQlicmVhazsKLQkJCX0KLQkJZGVmYXVsdDoKLQkJCXdoaWxlIChpIDwgYnVmLmxlbiAmJiBkYXRhW2ldICE9ICdcbicpCi0JCQkJaSsrOworCXdoaWxlICgqZGF0YSkgeworCQlpZiAoc2tpcF9wcmVmaXgoZGF0YSwgIlAgcGFjay0iLCAmZGF0YSkgJiYKKwkJICAgICFwYXJzZV9vaWRfaGV4KGRhdGEsICZvaWQsICZkYXRhKSAmJgorCQkgICAgc2tpcF9wcmVmaXgoZGF0YSwgIi5wYWNrIiwgJmRhdGEpICYmCisJCSAgICAoKmRhdGEgPT0gJ1xuJyB8fCAqZGF0YSA9PSAnXDAnKSkgeworCQkJZmV0Y2hfYW5kX3NldHVwX3BhY2tfaW5kZXgocGFja3NfaGVhZCwgb2lkLmhhc2gsIGJhc2VfdXJsKTsKKwkJfSBlbHNlIHsKKwkJCWRhdGEgPSBzdHJjaHJudWwoZGF0YSwgJ1xuJyk7CiAJCX0KLQkJaSsrOworCQlpZiAoKmRhdGEpCisJCQlkYXRhKys7IC8qIHNraXAgcGFzdCBuZXdsaW5lICovCiAJfQogCiBjbGVhbnVwOgpAQCAtMjE5MSwxMCArMjMwMCwxMCBAQAogCQlyZXR1cm4gLTE7CiAJfQogCi0JdW5saW5rKHNoYTFfcGFja19pbmRleF9uYW1lKHAtPnNoYTEpKTsKKwl1bmxpbmsoc2hhMV9wYWNrX2luZGV4X25hbWUocC0+aGFzaCkpOwogCi0JaWYgKGZpbmFsaXplX29iamVjdF9maWxlKHByZXEtPnRtcGZpbGUuYnVmLCBzaGExX3BhY2tfbmFtZShwLT5zaGExKSkKLQkgfHwgZmluYWxpemVfb2JqZWN0X2ZpbGUodG1wX2lkeCwgc2hhMV9wYWNrX2luZGV4X25hbWUocC0+c2hhMSkpKSB7CisJaWYgKGZpbmFsaXplX29iamVjdF9maWxlKHByZXEtPnRtcGZpbGUuYnVmLCBzaGExX3BhY2tfbmFtZShwLT5oYXNoKSkKKwkgfHwgZmluYWxpemVfb2JqZWN0X2ZpbGUodG1wX2lkeCwgc2hhMV9wYWNrX2luZGV4X25hbWUocC0+aGFzaCkpKSB7CiAJCWZyZWUodG1wX2lkeCk7CiAJCXJldHVybiAtMTsKIAl9CkBAIC0yMjE3LDEwICsyMzI2LDEwIEBACiAKIAllbmRfdXJsX3dpdGhfc2xhc2goJmJ1ZiwgYmFzZV91cmwpOwogCXN0cmJ1Zl9hZGRmKCZidWYsICJvYmplY3RzL3BhY2svcGFjay0lcy5wYWNrIiwKLQkJc2hhMV90b19oZXgodGFyZ2V0LT5zaGExKSk7CisJCWhhc2hfdG9faGV4KHRhcmdldC0+aGFzaCkpOwogCXByZXEtPnVybCA9IHN0cmJ1Zl9kZXRhY2goJmJ1ZiwgTlVMTCk7CiAKLQlzdHJidWZfYWRkZigmcHJlcS0+dG1wZmlsZSwgIiVzLnRlbXAiLCBzaGExX3BhY2tfbmFtZSh0YXJnZXQtPnNoYTEpKTsKKwlzdHJidWZfYWRkZigmcHJlcS0+dG1wZmlsZSwgIiVzLnRlbXAiLCBzaGExX3BhY2tfbmFtZSh0YXJnZXQtPmhhc2gpKTsKIAlwcmVxLT5wYWNrZmlsZSA9IGZvcGVuKHByZXEtPnRtcGZpbGUuYnVmLCAiYSIpOwogCWlmICghcHJlcS0+cGFja2ZpbGUpIHsKIAkJZXJyb3IoIlVuYWJsZSB0byBvcGVuIGxvY2FsIGZpbGUgJXMgZm9yIHBhY2siLApAQCAtMjI0NCw3ICsyMzUzLDggQEAKIAkJaWYgKGh0dHBfaXNfdmVyYm9zZSkKIAkJCWZwcmludGYoc3RkZXJyLAogCQkJCSJSZXN1bWluZyBmZXRjaCBvZiBwYWNrICVzIGF0IGJ5dGUgJSJQUkl1TUFYIlxuIiwKLQkJCQlzaGExX3RvX2hleCh0YXJnZXQtPnNoYTEpLCAodWludG1heF90KXByZXZfcG9zbik7CisJCQkJaGFzaF90b19oZXgodGFyZ2V0LT5oYXNoKSwKKwkJCQkodWludG1heF90KXByZXZfcG9zbik7CiAJCWh0dHBfb3B0X3JlcXVlc3RfcmVtYWluZGVyKHByZXEtPnNsb3QtPmN1cmwsIHByZXZfcG9zbik7CiAJfQogCkBAIC0yMjc0LDE0ICsyMzg0LDE0IEBACiAJCQlCVUcoImN1cmxfZWFzeV9nZXRpbmZvIGZvciBIVFRQIGNvZGUgZmFpbGVkOiAlcyIsCiAJCQkJY3VybF9lYXN5X3N0cmVycm9yKGMpKTsKIAkJaWYgKHNsb3QtPmh0dHBfY29kZSA+PSAzMDApCi0JCQlyZXR1cm4gc2l6ZTsKKwkJCXJldHVybiBubWVtYjsKIAl9CiAKIAlkbyB7CiAJCXNzaXplX3QgcmV0dmFsID0geHdyaXRlKGZyZXEtPmxvY2FsZmlsZSwKIAkJCQkJKGNoYXIgKikgcHRyICsgcG9zbiwgc2l6ZSAtIHBvc24pOwogCQlpZiAocmV0dmFsIDwgMCkKLQkJCXJldHVybiBwb3NuOworCQkJcmV0dXJuIHBvc24gLyBlbHRzaXplOwogCQlwb3NuICs9IHJldHZhbDsKIAl9IHdoaWxlIChwb3NuIDwgc2l6ZSk7CiAKQEAgLTIyOTEsMTYgKzI0MDEsMTYgQEAKIAkJZnJlcS0+c3RyZWFtLm5leHRfb3V0ID0gZXhwbjsKIAkJZnJlcS0+c3RyZWFtLmF2YWlsX291dCA9IHNpemVvZihleHBuKTsKIAkJZnJlcS0+enJldCA9IGdpdF9pbmZsYXRlKCZmcmVxLT5zdHJlYW0sIFpfU1lOQ19GTFVTSCk7Ci0JCWdpdF9TSEExX1VwZGF0ZSgmZnJlcS0+YywgZXhwbiwKLQkJCQlzaXplb2YoZXhwbikgLSBmcmVxLT5zdHJlYW0uYXZhaWxfb3V0KTsKKwkJdGhlX2hhc2hfYWxnby0+dXBkYXRlX2ZuKCZmcmVxLT5jLCBleHBuLAorCQkJCQkgc2l6ZW9mKGV4cG4pIC0gZnJlcS0+c3RyZWFtLmF2YWlsX291dCk7CiAJfSB3aGlsZSAoZnJlcS0+c3RyZWFtLmF2YWlsX2luICYmIGZyZXEtPnpyZXQgPT0gWl9PSyk7Ci0JcmV0dXJuIHNpemU7CisJcmV0dXJuIG5tZW1iOwogfQogCiBzdHJ1Y3QgaHR0cF9vYmplY3RfcmVxdWVzdCAqbmV3X2h0dHBfb2JqZWN0X3JlcXVlc3QoY29uc3QgY2hhciAqYmFzZV91cmwsCi0JdW5zaWduZWQgY2hhciAqc2hhMSkKKwkJCQkJCSAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0JY2hhciAqaGV4ID0gc2hhMV90b19oZXgoc2hhMSk7CisJY2hhciAqaGV4ID0gb2lkX3RvX2hleChvaWQpOwogCXN0cnVjdCBzdHJidWYgZmlsZW5hbWUgPSBTVFJCVUZfSU5JVDsKIAlzdHJ1Y3Qgc3RyYnVmIHByZXZmaWxlID0gU1RSQlVGX0lOSVQ7CiAJaW50IHByZXZsb2NhbDsKQEAgLTIzMTEsMTAgKzI0MjEsMTAgQEAKIAogCWZyZXEgPSB4Y2FsbG9jKDEsIHNpemVvZigqZnJlcSkpOwogCXN0cmJ1Zl9pbml0KCZmcmVxLT50bXBmaWxlLCAwKTsKLQloYXNoY3B5KGZyZXEtPnNoYTEsIHNoYTEpOworCW9pZGNweSgmZnJlcS0+b2lkLCBvaWQpOwogCWZyZXEtPmxvY2FsZmlsZSA9IC0xOwogCi0Jc2hhMV9maWxlX25hbWUodGhlX3JlcG9zaXRvcnksICZmaWxlbmFtZSwgc2hhMSk7CisJbG9vc2Vfb2JqZWN0X3BhdGgodGhlX3JlcG9zaXRvcnksICZmaWxlbmFtZSwgb2lkKTsKIAlzdHJidWZfYWRkZigmZnJlcS0+dG1wZmlsZSwgIiVzLnRlbXAiLCBmaWxlbmFtZS5idWYpOwogCiAJc3RyYnVmX2FkZGYoJnByZXZmaWxlLCAiJXMucHJldiIsIGZpbGVuYW1lLmJ1Zik7CkBAIC0yMzUwLDcgKzI0NjAsNyBAQAogCiAJZ2l0X2luZmxhdGVfaW5pdCgmZnJlcS0+c3RyZWFtKTsKIAotCWdpdF9TSEExX0luaXQoJmZyZXEtPmMpOworCXRoZV9oYXNoX2FsZ28tPmluaXRfZm4oJmZyZXEtPmMpOwogCiAJZnJlcS0+dXJsID0gZ2V0X3JlbW90ZV9vYmplY3RfdXJsKGJhc2VfdXJsLCBoZXgsIDApOwogCkBAIC0yMzg1LDcgKzI0OTUsNyBAQAogCWlmIChwcmV2X3JlYWQgPT0gLTEpIHsKIAkJbWVtc2V0KCZmcmVxLT5zdHJlYW0sIDAsIHNpemVvZihmcmVxLT5zdHJlYW0pKTsKIAkJZ2l0X2luZmxhdGVfaW5pdCgmZnJlcS0+c3RyZWFtKTsKLQkJZ2l0X1NIQTFfSW5pdCgmZnJlcS0+Yyk7CisJCXRoZV9oYXNoX2FsZ28tPmluaXRfZm4oJmZyZXEtPmMpOwogCQlpZiAocHJldl9wb3NuPjApIHsKIAkJCXByZXZfcG9zbiA9IDA7CiAJCQlsc2VlayhmcmVxLT5sb2NhbGZpbGUsIDAsIFNFRUtfU0VUKTsKQEAgLTI0NTYsMTYgKzI1NjYsMTYgQEAKIAl9CiAKIAlnaXRfaW5mbGF0ZV9lbmQoJmZyZXEtPnN0cmVhbSk7Ci0JZ2l0X1NIQTFfRmluYWwoZnJlcS0+cmVhbF9zaGExLCAmZnJlcS0+Yyk7CisJdGhlX2hhc2hfYWxnby0+ZmluYWxfZm4oZnJlcS0+cmVhbF9vaWQuaGFzaCwgJmZyZXEtPmMpOwogCWlmIChmcmVxLT56cmV0ICE9IFpfU1RSRUFNX0VORCkgewogCQl1bmxpbmtfb3Jfd2FybihmcmVxLT50bXBmaWxlLmJ1Zik7CiAJCXJldHVybiAtMTsKIAl9Ci0JaWYgKCFoYXNoZXEoZnJlcS0+c2hhMSwgZnJlcS0+cmVhbF9zaGExKSkgeworCWlmICghb2lkZXEoJmZyZXEtPm9pZCwgJmZyZXEtPnJlYWxfb2lkKSkgewogCQl1bmxpbmtfb3Jfd2FybihmcmVxLT50bXBmaWxlLmJ1Zik7CiAJCXJldHVybiAtMTsKIAl9Ci0Jc2hhMV9maWxlX25hbWUodGhlX3JlcG9zaXRvcnksICZmaWxlbmFtZSwgZnJlcS0+c2hhMSk7CisJbG9vc2Vfb2JqZWN0X3BhdGgodGhlX3JlcG9zaXRvcnksICZmaWxlbmFtZSwgJmZyZXEtPm9pZCk7CiAJZnJlcS0+cmVuYW1lID0gZmluYWxpemVfb2JqZWN0X2ZpbGUoZnJlcS0+dG1wZmlsZS5idWYsIGZpbGVuYW1lLmJ1Zik7CiAJc3RyYnVmX3JlbGVhc2UoJmZpbGVuYW1lKTsKIApkaWZmIC0tZ2l0IGEvaHR0cC5oIGIvaHR0cC5oCmluZGV4IGQzMDVjYTEuLjVlMGFkNzIgMTAwNjQ0Ci0tLSBhL2h0dHAuaAorKysgYi9odHRwLmgKQEAgLTI1LDggKzI1LDEyIEBACiAjaWYgTElCQ1VSTF9WRVJTSU9OX05VTSA8IDB4MDcwNzA0CiAjZGVmaW5lIGN1cmxfZ2xvYmFsX2NsZWFudXAoKSBkbyB7IC8qIG5vdGhpbmcgKi8gfSB3aGlsZSAoMCkKICNlbmRpZgorCiAjaWYgTElCQ1VSTF9WRVJTSU9OX05VTSA8IDB4MDcwODAwCiAjZGVmaW5lIGN1cmxfZ2xvYmFsX2luaXQoYSkgZG8geyAvKiBub3RoaW5nICovIH0gd2hpbGUgKDApCisjZWxpZiBMSUJDVVJMX1ZFUlNJT05fTlVNID49IDB4MDcwYzAwCisjZGVmaW5lIGN1cmxfZ2xvYmFsX2luaXQoYSkgY3VybF9nbG9iYWxfaW5pdF9tZW0oYSwgeG1hbGxvYywgZnJlZSwgXAorCQkJCQkJeHJlYWxsb2MsIHhzdHJkdXAsIHhjYWxsb2MpCiAjZW5kaWYKIAogI2lmIChMSUJDVVJMX1ZFUlNJT05fTlVNIDwgMHgwNzBjMDQpIHx8IChMSUJDVVJMX1ZFUlNJT05fTlVNID09IDB4MDcxMDAwKQpAQCAtNzUsMTggKzc5LDE4IEBACiB9OwogCiAvKiBDdXJsIHJlcXVlc3QgcmVhZC93cml0ZSBjYWxsYmFja3MgKi8KLWV4dGVybiBzaXplX3QgZnJlYWRfYnVmZmVyKGNoYXIgKnB0ciwgc2l6ZV90IGVsdHNpemUsIHNpemVfdCBubWVtYiwgdm9pZCAqc3RyYnVmKTsKLWV4dGVybiBzaXplX3QgZndyaXRlX2J1ZmZlcihjaGFyICpwdHIsIHNpemVfdCBlbHRzaXplLCBzaXplX3Qgbm1lbWIsIHZvaWQgKnN0cmJ1Zik7Ci1leHRlcm4gc2l6ZV90IGZ3cml0ZV9udWxsKGNoYXIgKnB0ciwgc2l6ZV90IGVsdHNpemUsIHNpemVfdCBubWVtYiwgdm9pZCAqc3RyYnVmKTsKK3NpemVfdCBmcmVhZF9idWZmZXIoY2hhciAqcHRyLCBzaXplX3QgZWx0c2l6ZSwgc2l6ZV90IG5tZW1iLCB2b2lkICpzdHJidWYpOworc2l6ZV90IGZ3cml0ZV9idWZmZXIoY2hhciAqcHRyLCBzaXplX3QgZWx0c2l6ZSwgc2l6ZV90IG5tZW1iLCB2b2lkICpzdHJidWYpOworc2l6ZV90IGZ3cml0ZV9udWxsKGNoYXIgKnB0ciwgc2l6ZV90IGVsdHNpemUsIHNpemVfdCBubWVtYiwgdm9pZCAqc3RyYnVmKTsKICNpZm5kZWYgTk9fQ1VSTF9JT0NUTAotZXh0ZXJuIGN1cmxpb2VyciBpb2N0bF9idWZmZXIoQ1VSTCAqaGFuZGxlLCBpbnQgY21kLCB2b2lkICpjbGllbnRwKTsKK2N1cmxpb2VyciBpb2N0bF9idWZmZXIoQ1VSTCAqaGFuZGxlLCBpbnQgY21kLCB2b2lkICpjbGllbnRwKTsKICNlbmRpZgogCiAvKiBTbG90IGxpZmVjeWNsZSBmdW5jdGlvbnMgKi8KLWV4dGVybiBzdHJ1Y3QgYWN0aXZlX3JlcXVlc3Rfc2xvdCAqZ2V0X2FjdGl2ZV9zbG90KHZvaWQpOwotZXh0ZXJuIGludCBzdGFydF9hY3RpdmVfc2xvdChzdHJ1Y3QgYWN0aXZlX3JlcXVlc3Rfc2xvdCAqc2xvdCk7Ci1leHRlcm4gdm9pZCBydW5fYWN0aXZlX3Nsb3Qoc3RydWN0IGFjdGl2ZV9yZXF1ZXN0X3Nsb3QgKnNsb3QpOwotZXh0ZXJuIHZvaWQgZmluaXNoX2FsbF9hY3RpdmVfc2xvdHModm9pZCk7CitzdHJ1Y3QgYWN0aXZlX3JlcXVlc3Rfc2xvdCAqZ2V0X2FjdGl2ZV9zbG90KHZvaWQpOworaW50IHN0YXJ0X2FjdGl2ZV9zbG90KHN0cnVjdCBhY3RpdmVfcmVxdWVzdF9zbG90ICpzbG90KTsKK3ZvaWQgcnVuX2FjdGl2ZV9zbG90KHN0cnVjdCBhY3RpdmVfcmVxdWVzdF9zbG90ICpzbG90KTsKK3ZvaWQgZmluaXNoX2FsbF9hY3RpdmVfc2xvdHModm9pZCk7CiAKIC8qCiAgKiBUaGlzIHdpbGwgcnVuIG9uZSBzbG90IHRvIGNvbXBsZXRpb24gaW4gYSBibG9ja2luZyBtYW5uZXIsIHNpbWlsYXIgdG8gaG93CkBAIC05OCwxNSArMTAyLDE1IEBACiAJCSBzdHJ1Y3Qgc2xvdF9yZXN1bHRzICpyZXN1bHRzKTsKIAogI2lmZGVmIFVTRV9DVVJMX01VTFRJCi1leHRlcm4gdm9pZCBmaWxsX2FjdGl2ZV9zbG90cyh2b2lkKTsKLWV4dGVybiB2b2lkIGFkZF9maWxsX2Z1bmN0aW9uKHZvaWQgKmRhdGEsIGludCAoKmZpbGwpKHZvaWQgKikpOwotZXh0ZXJuIHZvaWQgc3RlcF9hY3RpdmVfc2xvdHModm9pZCk7Cit2b2lkIGZpbGxfYWN0aXZlX3Nsb3RzKHZvaWQpOwordm9pZCBhZGRfZmlsbF9mdW5jdGlvbih2b2lkICpkYXRhLCBpbnQgKCpmaWxsKSh2b2lkICopKTsKK3ZvaWQgc3RlcF9hY3RpdmVfc2xvdHModm9pZCk7CiAjZW5kaWYKIAotZXh0ZXJuIHZvaWQgaHR0cF9pbml0KHN0cnVjdCByZW1vdGUgKnJlbW90ZSwgY29uc3QgY2hhciAqdXJsLAotCQkgICAgICBpbnQgcHJvYWN0aXZlX2F1dGgpOwotZXh0ZXJuIHZvaWQgaHR0cF9jbGVhbnVwKHZvaWQpOwotZXh0ZXJuIHN0cnVjdCBjdXJsX3NsaXN0ICpodHRwX2NvcHlfZGVmYXVsdF9oZWFkZXJzKHZvaWQpOwordm9pZCBodHRwX2luaXQoc3RydWN0IHJlbW90ZSAqcmVtb3RlLCBjb25zdCBjaGFyICp1cmwsCisJICAgICAgIGludCBwcm9hY3RpdmVfYXV0aCk7Cit2b2lkIGh0dHBfY2xlYW51cCh2b2lkKTsKK3N0cnVjdCBjdXJsX3NsaXN0ICpodHRwX2NvcHlfZGVmYXVsdF9oZWFkZXJzKHZvaWQpOwogCiBleHRlcm4gbG9uZyBpbnQgZ2l0X2N1cmxfaXByZXNvbHZlOwogZXh0ZXJuIGludCBhY3RpdmVfcmVxdWVzdHM7CkBAIC0xMzYsMTcgKzE0MCwyNSBAQAogCiAjZGVmaW5lIG1pc3NpbmdfdGFyZ2V0KGEpIG1pc3NpbmdfX3RhcmdldCgoYSktPmh0dHBfY29kZSwgKGEpLT5jdXJsX3Jlc3VsdCkKIAorLyoKKyAqIE5vcm1hbGl6ZSBjdXJsIHJlc3VsdHMgdG8gaGFuZGxlIENVUkxfRkFJTE9ORVJST1IgKG9yIGxhY2sgdGhlcmVvZikuIEZhaWxpbmcKKyAqIGh0dHAgY29kZXMgaGF2ZSB0aGVpciAicmVzdWx0IiBjb252ZXJ0ZWQgdG8gQ1VSTEVfSFRUUF9SRVRVUk5FRF9FUlJPUiwgYW5kCisgKiBhbiBhcHByb3ByaWF0ZSBzdHJpbmcgcGxhY2VkIGluIHRoZSBlcnJvcnN0ciBidWZmZXIgKHBhc3MgY3VybF9lcnJvcnN0ciBpZgorICogeW91IGRvbid0IGhhdmUgYSBjdXN0b20gYnVmZmVyKS4KKyAqLwordm9pZCBub3JtYWxpemVfY3VybF9yZXN1bHQoQ1VSTGNvZGUgKnJlc3VsdCwgbG9uZyBodHRwX2NvZGUsIGNoYXIgKmVycm9yc3RyLAorCQkJICAgc2l6ZV90IGVycm9ybGVuKTsKKwogLyogSGVscGVycyBmb3IgbW9kaWZ5aW5nIGFuZCBjcmVhdGluZyBVUkxzICovCi1leHRlcm4gdm9pZCBhcHBlbmRfcmVtb3RlX29iamVjdF91cmwoc3RydWN0IHN0cmJ1ZiAqYnVmLCBjb25zdCBjaGFyICp1cmwsCi0JCQkJICAgICBjb25zdCBjaGFyICpoZXgsCi0JCQkJICAgICBpbnQgb25seV90d29fZGlnaXRfcHJlZml4KTsKLWV4dGVybiBjaGFyICpnZXRfcmVtb3RlX29iamVjdF91cmwoY29uc3QgY2hhciAqdXJsLCBjb25zdCBjaGFyICpoZXgsCi0JCQkJICAgaW50IG9ubHlfdHdvX2RpZ2l0X3ByZWZpeCk7Cit2b2lkIGFwcGVuZF9yZW1vdGVfb2JqZWN0X3VybChzdHJ1Y3Qgc3RyYnVmICpidWYsIGNvbnN0IGNoYXIgKnVybCwKKwkJCSAgICAgIGNvbnN0IGNoYXIgKmhleCwKKwkJCSAgICAgIGludCBvbmx5X3R3b19kaWdpdF9wcmVmaXgpOworY2hhciAqZ2V0X3JlbW90ZV9vYmplY3RfdXJsKGNvbnN0IGNoYXIgKnVybCwgY29uc3QgY2hhciAqaGV4LAorCQkJICAgIGludCBvbmx5X3R3b19kaWdpdF9wcmVmaXgpOwogCiAvKiBPcHRpb25zIGZvciBodHRwX2dldF8qKCkgKi8KIHN0cnVjdCBodHRwX2dldF9vcHRpb25zIHsKIAl1bnNpZ25lZCBub19jYWNoZToxLAotCQkga2VlcF9lcnJvcjoxLAogCQkgaW5pdGlhbF9yZXF1ZXN0OjE7CiAKIAkvKiBJZiBub24tTlVMTCwgcmV0dXJucyB0aGUgY29udGVudC10eXBlIG9mIHRoZSByZXNwb25zZS4gKi8KQEAgLTE5NiwxMSArMjA4LDExIEBACiAgKi8KIGludCBodHRwX2dldF9zdHJidWYoY29uc3QgY2hhciAqdXJsLCBzdHJ1Y3Qgc3RyYnVmICpyZXN1bHQsIHN0cnVjdCBodHRwX2dldF9vcHRpb25zICpvcHRpb25zKTsKIAotZXh0ZXJuIGludCBodHRwX2ZldGNoX3JlZihjb25zdCBjaGFyICpiYXNlLCBzdHJ1Y3QgcmVmICpyZWYpOworaW50IGh0dHBfZmV0Y2hfcmVmKGNvbnN0IGNoYXIgKmJhc2UsIHN0cnVjdCByZWYgKnJlZik7CiAKIC8qIEhlbHBlcnMgZm9yIGZldGNoaW5nIHBhY2tzICovCi1leHRlcm4gaW50IGh0dHBfZ2V0X2luZm9fcGFja3MoY29uc3QgY2hhciAqYmFzZV91cmwsCi0Jc3RydWN0IHBhY2tlZF9naXQgKipwYWNrc19oZWFkKTsKK2ludCBodHRwX2dldF9pbmZvX3BhY2tzKGNvbnN0IGNoYXIgKmJhc2VfdXJsLAorCQkJc3RydWN0IHBhY2tlZF9naXQgKipwYWNrc19oZWFkKTsKIAogc3RydWN0IGh0dHBfcGFja19yZXF1ZXN0IHsKIAljaGFyICp1cmw7CkBAIC0yMTEsMTAgKzIyMywxMCBAQAogCXN0cnVjdCBhY3RpdmVfcmVxdWVzdF9zbG90ICpzbG90OwogfTsKIAotZXh0ZXJuIHN0cnVjdCBodHRwX3BhY2tfcmVxdWVzdCAqbmV3X2h0dHBfcGFja19yZXF1ZXN0KAorc3RydWN0IGh0dHBfcGFja19yZXF1ZXN0ICpuZXdfaHR0cF9wYWNrX3JlcXVlc3QoCiAJc3RydWN0IHBhY2tlZF9naXQgKnRhcmdldCwgY29uc3QgY2hhciAqYmFzZV91cmwpOwotZXh0ZXJuIGludCBmaW5pc2hfaHR0cF9wYWNrX3JlcXVlc3Qoc3RydWN0IGh0dHBfcGFja19yZXF1ZXN0ICpwcmVxKTsKLWV4dGVybiB2b2lkIHJlbGVhc2VfaHR0cF9wYWNrX3JlcXVlc3Qoc3RydWN0IGh0dHBfcGFja19yZXF1ZXN0ICpwcmVxKTsKK2ludCBmaW5pc2hfaHR0cF9wYWNrX3JlcXVlc3Qoc3RydWN0IGh0dHBfcGFja19yZXF1ZXN0ICpwcmVxKTsKK3ZvaWQgcmVsZWFzZV9odHRwX3BhY2tfcmVxdWVzdChzdHJ1Y3QgaHR0cF9wYWNrX3JlcXVlc3QgKnByZXEpOwogCiAvKiBIZWxwZXJzIGZvciBmZXRjaGluZyBvYmplY3QgKi8KIHN0cnVjdCBodHRwX29iamVjdF9yZXF1ZXN0IHsKQEAgLTIyNCwyMSArMjM2LDIxIEBACiAJQ1VSTGNvZGUgY3VybF9yZXN1bHQ7CiAJY2hhciBlcnJvcnN0cltDVVJMX0VSUk9SX1NJWkVdOwogCWxvbmcgaHR0cF9jb2RlOwotCXVuc2lnbmVkIGNoYXIgc2hhMVsyMF07Ci0JdW5zaWduZWQgY2hhciByZWFsX3NoYTFbMjBdOwotCWdpdF9TSEFfQ1RYIGM7CisJc3RydWN0IG9iamVjdF9pZCBvaWQ7CisJc3RydWN0IG9iamVjdF9pZCByZWFsX29pZDsKKwlnaXRfaGFzaF9jdHggYzsKIAlnaXRfenN0cmVhbSBzdHJlYW07CiAJaW50IHpyZXQ7CiAJaW50IHJlbmFtZTsKIAlzdHJ1Y3QgYWN0aXZlX3JlcXVlc3Rfc2xvdCAqc2xvdDsKIH07CiAKLWV4dGVybiBzdHJ1Y3QgaHR0cF9vYmplY3RfcmVxdWVzdCAqbmV3X2h0dHBfb2JqZWN0X3JlcXVlc3QoCi0JY29uc3QgY2hhciAqYmFzZV91cmwsIHVuc2lnbmVkIGNoYXIgKnNoYTEpOwotZXh0ZXJuIHZvaWQgcHJvY2Vzc19odHRwX29iamVjdF9yZXF1ZXN0KHN0cnVjdCBodHRwX29iamVjdF9yZXF1ZXN0ICpmcmVxKTsKLWV4dGVybiBpbnQgZmluaXNoX2h0dHBfb2JqZWN0X3JlcXVlc3Qoc3RydWN0IGh0dHBfb2JqZWN0X3JlcXVlc3QgKmZyZXEpOwotZXh0ZXJuIHZvaWQgYWJvcnRfaHR0cF9vYmplY3RfcmVxdWVzdChzdHJ1Y3QgaHR0cF9vYmplY3RfcmVxdWVzdCAqZnJlcSk7Ci1leHRlcm4gdm9pZCByZWxlYXNlX2h0dHBfb2JqZWN0X3JlcXVlc3Qoc3RydWN0IGh0dHBfb2JqZWN0X3JlcXVlc3QgKmZyZXEpOworc3RydWN0IGh0dHBfb2JqZWN0X3JlcXVlc3QgKm5ld19odHRwX29iamVjdF9yZXF1ZXN0KAorCWNvbnN0IGNoYXIgKmJhc2VfdXJsLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOwordm9pZCBwcm9jZXNzX2h0dHBfb2JqZWN0X3JlcXVlc3Qoc3RydWN0IGh0dHBfb2JqZWN0X3JlcXVlc3QgKmZyZXEpOworaW50IGZpbmlzaF9odHRwX29iamVjdF9yZXF1ZXN0KHN0cnVjdCBodHRwX29iamVjdF9yZXF1ZXN0ICpmcmVxKTsKK3ZvaWQgYWJvcnRfaHR0cF9vYmplY3RfcmVxdWVzdChzdHJ1Y3QgaHR0cF9vYmplY3RfcmVxdWVzdCAqZnJlcSk7Cit2b2lkIHJlbGVhc2VfaHR0cF9vYmplY3RfcmVxdWVzdChzdHJ1Y3QgaHR0cF9vYmplY3RfcmVxdWVzdCAqZnJlcSk7CiAKIC8qIHNldHVwIHJvdXRpbmUgZm9yIGN1cmxfZWFzeV9zZXRvcHQgQ1VSTE9QVF9ERUJVR0ZVTkNUSU9OICovCiB2b2lkIHNldHVwX2N1cmxfdHJhY2UoQ1VSTCAqaGFuZGxlKTsKZGlmZiAtLWdpdCBhL2lkZW50LmMgYi9pZGVudC5jCmluZGV4IDMzYmNmNDAuLmU2NjZlZTQgMTAwNjQ0Ci0tLSBhL2lkZW50LmMKKysrIGIvaWRlbnQuYwpAQCAtMTEsNiArMTEsMTAgQEAKIHN0YXRpYyBzdHJ1Y3Qgc3RyYnVmIGdpdF9kZWZhdWx0X25hbWUgPSBTVFJCVUZfSU5JVDsKIHN0YXRpYyBzdHJ1Y3Qgc3RyYnVmIGdpdF9kZWZhdWx0X2VtYWlsID0gU1RSQlVGX0lOSVQ7CiBzdGF0aWMgc3RydWN0IHN0cmJ1ZiBnaXRfZGVmYXVsdF9kYXRlID0gU1RSQlVGX0lOSVQ7CitzdGF0aWMgc3RydWN0IHN0cmJ1ZiBnaXRfYXV0aG9yX25hbWUgPSBTVFJCVUZfSU5JVDsKK3N0YXRpYyBzdHJ1Y3Qgc3RyYnVmIGdpdF9hdXRob3JfZW1haWwgPSBTVFJCVUZfSU5JVDsKK3N0YXRpYyBzdHJ1Y3Qgc3RyYnVmIGdpdF9jb21taXR0ZXJfbmFtZSA9IFNUUkJVRl9JTklUOworc3RhdGljIHN0cnVjdCBzdHJidWYgZ2l0X2NvbW1pdHRlcl9lbWFpbCA9IFNUUkJVRl9JTklUOwogc3RhdGljIGludCBkZWZhdWx0X2VtYWlsX2lzX2JvZ3VzOwogc3RhdGljIGludCBkZWZhdWx0X25hbWVfaXNfYm9ndXM7CiAKQEAgLTM1NSw3ICszNTksNyBAQAogICAgIlxuIik7CiAKIGNvbnN0IGNoYXIgKmZtdF9pZGVudChjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICplbWFpbCwKLQkJICAgICAgY29uc3QgY2hhciAqZGF0ZV9zdHIsIGludCBmbGFnKQorCQkgICAgICBlbnVtIHdhbnRfaWRlbnQgd2hvc2VfaWRlbnQsIGNvbnN0IGNoYXIgKmRhdGVfc3RyLCBpbnQgZmxhZykKIHsKIAlzdGF0aWMgc3RydWN0IHN0cmJ1ZiBpZGVudCA9IFNUUkJVRl9JTklUOwogCWludCBzdHJpY3QgPSAoZmxhZyAmIElERU5UX1NUUklDVCk7CkBAIC0zNjMsNiArMzY3LDEyIEBACiAJaW50IHdhbnRfbmFtZSA9ICEoZmxhZyAmIElERU5UX05PX05BTUUpOwogCiAJaWYgKCFlbWFpbCkgeworCQlpZiAod2hvc2VfaWRlbnQgPT0gV0FOVF9BVVRIT1JfSURFTlQgJiYgZ2l0X2F1dGhvcl9lbWFpbC5sZW4pCisJCQllbWFpbCA9IGdpdF9hdXRob3JfZW1haWwuYnVmOworCQllbHNlIGlmICh3aG9zZV9pZGVudCA9PSBXQU5UX0NPTU1JVFRFUl9JREVOVCAmJiBnaXRfY29tbWl0dGVyX2VtYWlsLmxlbikKKwkJCWVtYWlsID0gZ2l0X2NvbW1pdHRlcl9lbWFpbC5idWY7CisJfQorCWlmICghZW1haWwpIHsKIAkJaWYgKHN0cmljdCAmJiBpZGVudF91c2VfY29uZmlnX29ubHkKIAkJICAgICYmICEoaWRlbnRfY29uZmlnX2dpdmVuICYgSURFTlRfTUFJTF9HSVZFTikpIHsKIAkJCWZwdXRzKF8oZW52X2hpbnQpLCBzdGRlcnIpOwpAQCAtMzc4LDYgKzM4OCwxMyBAQAogCWlmICh3YW50X25hbWUpIHsKIAkJaW50IHVzaW5nX2RlZmF1bHQgPSAwOwogCQlpZiAoIW5hbWUpIHsKKwkJCWlmICh3aG9zZV9pZGVudCA9PSBXQU5UX0FVVEhPUl9JREVOVCAmJiBnaXRfYXV0aG9yX25hbWUubGVuKQorCQkJCW5hbWUgPSBnaXRfYXV0aG9yX25hbWUuYnVmOworCQkJZWxzZSBpZiAod2hvc2VfaWRlbnQgPT0gV0FOVF9DT01NSVRURVJfSURFTlQgJiYKKwkJCQkJZ2l0X2NvbW1pdHRlcl9uYW1lLmxlbikKKwkJCQluYW1lID0gZ2l0X2NvbW1pdHRlcl9uYW1lLmJ1ZjsKKwkJfQorCQlpZiAoIW5hbWUpIHsKIAkJCWlmIChzdHJpY3QgJiYgaWRlbnRfdXNlX2NvbmZpZ19vbmx5CiAJCQkgICAgJiYgIShpZGVudF9jb25maWdfZ2l2ZW4gJiBJREVOVF9OQU1FX0dJVkVOKSkgewogCQkJCWZwdXRzKF8oZW52X2hpbnQpLCBzdGRlcnIpOwpAQCAtNDI1LDkgKzQ0MiwyNSBAQAogCXJldHVybiBpZGVudC5idWY7CiB9CiAKLWNvbnN0IGNoYXIgKmZtdF9uYW1lKGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKmVtYWlsKQorY29uc3QgY2hhciAqZm10X25hbWUoZW51bSB3YW50X2lkZW50IHdob3NlX2lkZW50KQogewotCXJldHVybiBmbXRfaWRlbnQobmFtZSwgZW1haWwsIE5VTEwsIElERU5UX1NUUklDVCB8IElERU5UX05PX0RBVEUpOworCWNoYXIgKm5hbWUgPSBOVUxMOworCWNoYXIgKmVtYWlsID0gTlVMTDsKKworCXN3aXRjaCAod2hvc2VfaWRlbnQpIHsKKwljYXNlIFdBTlRfQkxBTktfSURFTlQ6CisJCWJyZWFrOworCWNhc2UgV0FOVF9BVVRIT1JfSURFTlQ6CisJCW5hbWUgPSBnZXRlbnYoIkdJVF9BVVRIT1JfTkFNRSIpOworCQllbWFpbCA9IGdldGVudigiR0lUX0FVVEhPUl9FTUFJTCIpOworCQlicmVhazsKKwljYXNlIFdBTlRfQ09NTUlUVEVSX0lERU5UOgorCQluYW1lID0gZ2V0ZW52KCJHSVRfQ09NTUlUVEVSX05BTUUiKTsKKwkJZW1haWwgPSBnZXRlbnYoIkdJVF9DT01NSVRURVJfRU1BSUwiKTsKKwkJYnJlYWs7CisJfQorCXJldHVybiBmbXRfaWRlbnQobmFtZSwgZW1haWwsIHdob3NlX2lkZW50LCBOVUxMLAorCQkJSURFTlRfU1RSSUNUIHwgSURFTlRfTk9fREFURSk7CiB9CiAKIGNvbnN0IGNoYXIgKmdpdF9hdXRob3JfaW5mbyhpbnQgZmxhZykKQEAgLTQzOCw2ICs0NzEsNyBAQAogCQlhdXRob3JfaWRlbnRfZXhwbGljaXRseV9naXZlbiB8PSBJREVOVF9NQUlMX0dJVkVOOwogCXJldHVybiBmbXRfaWRlbnQoZ2V0ZW52KCJHSVRfQVVUSE9SX05BTUUiKSwKIAkJCSBnZXRlbnYoIkdJVF9BVVRIT1JfRU1BSUwiKSwKKwkJCSBXQU5UX0FVVEhPUl9JREVOVCwKIAkJCSBnZXRlbnYoIkdJVF9BVVRIT1JfREFURSIpLAogCQkJIGZsYWcpOwogfQpAQCAtNDUwLDYgKzQ4NCw3IEBACiAJCWNvbW1pdHRlcl9pZGVudF9leHBsaWNpdGx5X2dpdmVuIHw9IElERU5UX01BSUxfR0lWRU47CiAJcmV0dXJuIGZtdF9pZGVudChnZXRlbnYoIkdJVF9DT01NSVRURVJfTkFNRSIpLAogCQkJIGdldGVudigiR0lUX0NPTU1JVFRFUl9FTUFJTCIpLAorCQkJIFdBTlRfQ09NTUlUVEVSX0lERU5ULAogCQkJIGdldGVudigiR0lUX0NPTU1JVFRFUl9EQVRFIiksCiAJCQkgZmxhZyk7CiB9CkBAIC00NzMsMTAgKzUwOCw0NSBAQAogCXJldHVybiBpZGVudF9pc19zdWZmaWNpZW50KGF1dGhvcl9pZGVudF9leHBsaWNpdGx5X2dpdmVuKTsKIH0KIAotaW50IGdpdF9pZGVudF9jb25maWcoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqZGF0YSkKK3N0YXRpYyBpbnQgc2V0X2lkZW50KGNvbnN0IGNoYXIgKnZhciwgY29uc3QgY2hhciAqdmFsdWUpCiB7Ci0JaWYgKCFzdHJjbXAodmFyLCAidXNlci51c2Vjb25maWdvbmx5IikpIHsKLQkJaWRlbnRfdXNlX2NvbmZpZ19vbmx5ID0gZ2l0X2NvbmZpZ19ib29sKHZhciwgdmFsdWUpOworCWlmICghc3RyY21wKHZhciwgImF1dGhvci5uYW1lIikpIHsKKwkJaWYgKCF2YWx1ZSkKKwkJCXJldHVybiBjb25maWdfZXJyb3Jfbm9uYm9vbCh2YXIpOworCQlzdHJidWZfcmVzZXQoJmdpdF9hdXRob3JfbmFtZSk7CisJCXN0cmJ1Zl9hZGRzdHIoJmdpdF9hdXRob3JfbmFtZSwgdmFsdWUpOworCQlhdXRob3JfaWRlbnRfZXhwbGljaXRseV9naXZlbiB8PSBJREVOVF9OQU1FX0dJVkVOOworCQlpZGVudF9jb25maWdfZ2l2ZW4gfD0gSURFTlRfTkFNRV9HSVZFTjsKKwkJcmV0dXJuIDA7CisJfQorCisJaWYgKCFzdHJjbXAodmFyLCAiYXV0aG9yLmVtYWlsIikpIHsKKwkJaWYgKCF2YWx1ZSkKKwkJCXJldHVybiBjb25maWdfZXJyb3Jfbm9uYm9vbCh2YXIpOworCQlzdHJidWZfcmVzZXQoJmdpdF9hdXRob3JfZW1haWwpOworCQlzdHJidWZfYWRkc3RyKCZnaXRfYXV0aG9yX2VtYWlsLCB2YWx1ZSk7CisJCWF1dGhvcl9pZGVudF9leHBsaWNpdGx5X2dpdmVuIHw9IElERU5UX01BSUxfR0lWRU47CisJCWlkZW50X2NvbmZpZ19naXZlbiB8PSBJREVOVF9NQUlMX0dJVkVOOworCQlyZXR1cm4gMDsKKwl9CisKKwlpZiAoIXN0cmNtcCh2YXIsICJjb21taXR0ZXIubmFtZSIpKSB7CisJCWlmICghdmFsdWUpCisJCQlyZXR1cm4gY29uZmlnX2Vycm9yX25vbmJvb2wodmFyKTsKKwkJc3RyYnVmX3Jlc2V0KCZnaXRfY29tbWl0dGVyX25hbWUpOworCQlzdHJidWZfYWRkc3RyKCZnaXRfY29tbWl0dGVyX25hbWUsIHZhbHVlKTsKKwkJY29tbWl0dGVyX2lkZW50X2V4cGxpY2l0bHlfZ2l2ZW4gfD0gSURFTlRfTkFNRV9HSVZFTjsKKwkJaWRlbnRfY29uZmlnX2dpdmVuIHw9IElERU5UX05BTUVfR0lWRU47CisJCXJldHVybiAwOworCX0KKworCWlmICghc3RyY21wKHZhciwgImNvbW1pdHRlci5lbWFpbCIpKSB7CisJCWlmICghdmFsdWUpCisJCQlyZXR1cm4gY29uZmlnX2Vycm9yX25vbmJvb2wodmFyKTsKKwkJc3RyYnVmX3Jlc2V0KCZnaXRfY29tbWl0dGVyX2VtYWlsKTsKKwkJc3RyYnVmX2FkZHN0cigmZ2l0X2NvbW1pdHRlcl9lbWFpbCwgdmFsdWUpOworCQljb21taXR0ZXJfaWRlbnRfZXhwbGljaXRseV9naXZlbiB8PSBJREVOVF9NQUlMX0dJVkVOOworCQlpZGVudF9jb25maWdfZ2l2ZW4gfD0gSURFTlRfTUFJTF9HSVZFTjsKIAkJcmV0dXJuIDA7CiAJfQogCkBAIC01MDUsNiArNTc1LDM2IEBACiAJcmV0dXJuIDA7CiB9CiAKK2ludCBnaXRfaWRlbnRfY29uZmlnKGNvbnN0IGNoYXIgKnZhciwgY29uc3QgY2hhciAqdmFsdWUsIHZvaWQgKmRhdGEpCit7CisJaWYgKCFzdHJjbXAodmFyLCAidXNlci51c2Vjb25maWdvbmx5IikpIHsKKwkJaWRlbnRfdXNlX2NvbmZpZ19vbmx5ID0gZ2l0X2NvbmZpZ19ib29sKHZhciwgdmFsdWUpOworCQlyZXR1cm4gMDsKKwl9CisKKwlyZXR1cm4gc2V0X2lkZW50KHZhciwgdmFsdWUpOworfQorCitzdGF0aWMgdm9pZCBzZXRfZW52X2lmKGNvbnN0IGNoYXIgKmtleSwgY29uc3QgY2hhciAqdmFsdWUsIGludCAqZ2l2ZW4sIGludCBiaXQpCit7CisJaWYgKCgqZ2l2ZW4gJiBiaXQpIHx8IGdldGVudihrZXkpKQorCQlyZXR1cm47IC8qIG5vdGhpbmcgdG8gZG8gKi8KKwlzZXRlbnYoa2V5LCB2YWx1ZSwgMCk7CisJKmdpdmVuIHw9IGJpdDsKK30KKwordm9pZCBwcmVwYXJlX2ZhbGxiYWNrX2lkZW50KGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKmVtYWlsKQoreworCXNldF9lbnZfaWYoIkdJVF9BVVRIT1JfTkFNRSIsIG5hbWUsCisJCSAgICZhdXRob3JfaWRlbnRfZXhwbGljaXRseV9naXZlbiwgSURFTlRfTkFNRV9HSVZFTik7CisJc2V0X2Vudl9pZigiR0lUX0FVVEhPUl9FTUFJTCIsIGVtYWlsLAorCQkgICAmYXV0aG9yX2lkZW50X2V4cGxpY2l0bHlfZ2l2ZW4sIElERU5UX01BSUxfR0lWRU4pOworCXNldF9lbnZfaWYoIkdJVF9DT01NSVRURVJfTkFNRSIsIG5hbWUsCisJCSAgICZjb21taXR0ZXJfaWRlbnRfZXhwbGljaXRseV9naXZlbiwgSURFTlRfTkFNRV9HSVZFTik7CisJc2V0X2Vudl9pZigiR0lUX0NPTU1JVFRFUl9FTUFJTCIsIGVtYWlsLAorCQkgICAmY29tbWl0dGVyX2lkZW50X2V4cGxpY2l0bHlfZ2l2ZW4sIElERU5UX01BSUxfR0lWRU4pOworfQorCiBzdGF0aWMgaW50IGJ1Zl9jbXAoY29uc3QgY2hhciAqYV9iZWdpbiwgY29uc3QgY2hhciAqYV9lbmQsCiAJCSAgIGNvbnN0IGNoYXIgKmJfYmVnaW4sIGNvbnN0IGNoYXIgKmJfZW5kKQogewpkaWZmIC0tZ2l0IGEvaW1hcC1zZW5kLmMgYi9pbWFwLXNlbmQuYwppbmRleCBiNGViODg2Li42YzU0ZDhjIDEwMDY0NAotLS0gYS9pbWFwLXNlbmQuYworKysgYi9pbWFwLXNlbmQuYwpAQCAtMTExNCw3ICsxMTE0LDcgQEAKIAogCQkJaWYgKCFzdHJjbXAoc3J2Yy0+YXV0aF9tZXRob2QsICJDUkFNLU1ENSIpKSB7CiAJCQkJaWYgKCFDQVAoQVVUSF9DUkFNX01ENSkpIHsKLQkJCQkJZnByaW50ZihzdGRlcnIsICJZb3Ugc3BlY2lmaWVkIgorCQkJCQlmcHJpbnRmKHN0ZGVyciwgIllvdSBzcGVjaWZpZWQgIgogCQkJCQkJIkNSQU0tTUQ1IGFzIGF1dGhlbnRpY2F0aW9uIG1ldGhvZCwgIgogCQkJCQkJImJ1dCAlcyBkb2Vzbid0IHN1cHBvcnQgaXQuXG4iLCBzcnZjLT5ob3N0KTsKIAkJCQkJZ290byBiYWlsOwpAQCAtMTQ3MSw3ICsxNDcxLDggQEAKIH0KIAogc3RhdGljIGludCBjdXJsX2FwcGVuZF9tc2dzX3RvX2ltYXAoc3RydWN0IGltYXBfc2VydmVyX2NvbmYgKnNlcnZlciwKLQkJCQkgICAgc3RydWN0IHN0cmJ1ZiogYWxsX21zZ3MsIGludCB0b3RhbCkgeworCQkJCSAgICBzdHJ1Y3Qgc3RyYnVmKiBhbGxfbXNncywgaW50IHRvdGFsKQorewogCWludCBvZnMgPSAwOwogCWludCBuID0gMDsKIAlzdHJ1Y3QgYnVmZmVyIG1zZ2J1ZiA9IHsgU1RSQlVGX0lOSVQsIDAgfTsKZGlmZiAtLWdpdCBhL2toYXNoLmggYi9raGFzaC5oCmluZGV4IDUzMjEwOWMuLjIxYzIwOTUgMTAwNjQ0Ci0tLSBhL2toYXNoLmgKKysrIGIva2hhc2guaApAQCAtNjksMTQgKzY5LDE0IEBACiAJCWtodmFsX3QgKnZhbHM7IFwKIAl9IGtoXyMjbmFtZSMjX3Q7CiAKLSNkZWZpbmUgX19LSEFTSF9QUk9UT1RZUEVTKG5hbWUsIGtoa2V5X3QsIGtodmFsX3QpCSAJCQkJCVwKLQlleHRlcm4ga2hfIyNuYW1lIyNfdCAqa2hfaW5pdF8jI25hbWUodm9pZCk7CQkJCQkJCVwKLQlleHRlcm4gdm9pZCBraF9kZXN0cm95XyMjbmFtZShraF8jI25hbWUjI190ICpoKTsJCQkJCVwKLQlleHRlcm4gdm9pZCBraF9jbGVhcl8jI25hbWUoa2hfIyNuYW1lIyNfdCAqaCk7CQkJCQkJXAotCWV4dGVybiBraGludF90IGtoX2dldF8jI25hbWUoY29uc3Qga2hfIyNuYW1lIyNfdCAqaCwga2hrZXlfdCBrZXkpOyAJXAotCWV4dGVybiBpbnQga2hfcmVzaXplXyMjbmFtZShraF8jI25hbWUjI190ICpoLCBraGludF90IG5ld19uX2J1Y2tldHMpOyBcCi0JZXh0ZXJuIGtoaW50X3Qga2hfcHV0XyMjbmFtZShraF8jI25hbWUjI190ICpoLCBraGtleV90IGtleSwgaW50ICpyZXQpOyBcCi0JZXh0ZXJuIHZvaWQga2hfZGVsXyMjbmFtZShraF8jI25hbWUjI190ICpoLCBraGludF90IHgpOworI2RlZmluZSBfX0tIQVNIX1BST1RPVFlQRVMobmFtZSwga2hrZXlfdCwga2h2YWxfdCkJIAkJCVwKKwlraF8jI25hbWUjI190ICpraF9pbml0XyMjbmFtZSh2b2lkKTsJCQkJCQlcCisJdm9pZCBraF9kZXN0cm95XyMjbmFtZShraF8jI25hbWUjI190ICpoKTsJCQkJCVwKKwl2b2lkIGtoX2NsZWFyXyMjbmFtZShraF8jI25hbWUjI190ICpoKTsJCQkJCQlcCisJa2hpbnRfdCBraF9nZXRfIyNuYW1lKGNvbnN0IGtoXyMjbmFtZSMjX3QgKmgsIGtoa2V5X3Qga2V5KTsgXAorCWludCBraF9yZXNpemVfIyNuYW1lKGtoXyMjbmFtZSMjX3QgKmgsIGtoaW50X3QgbmV3X25fYnVja2V0cyk7IFwKKwlraGludF90IGtoX3B1dF8jI25hbWUoa2hfIyNuYW1lIyNfdCAqaCwga2hrZXlfdCBrZXksIGludCAqcmV0KTsgXAorCXZvaWQga2hfZGVsXyMjbmFtZShraF8jI25hbWUjI190ICpoLCBraGludF90IHgpOwogCiAjZGVmaW5lIF9fS0hBU0hfSU1QTChuYW1lLCBTQ09QRSwga2hrZXlfdCwga2h2YWxfdCwga2hfaXNfbWFwLCBfX2hhc2hfZnVuYywgX19oYXNoX2VxdWFsKSBcCiAJU0NPUEUga2hfIyNuYW1lIyNfdCAqa2hfaW5pdF8jI25hbWUodm9pZCkgewkJCQkJCQlcCkBAIC0zMjQsMTIgKzMyNCwyMCBAQAogCQljb2RlOwkJCQkJCQkJCQkJCVwKIAl9IH0KIAotI2RlZmluZSBfX2toX29pZF9jbXAoYSwgYikgKGhhc2hjbXAoYSwgYikgPT0gMCkKK3N0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IG9pZGhhc2hfYnlfdmFsdWUoc3RydWN0IG9iamVjdF9pZCBvaWQpCit7CisJcmV0dXJuIG9pZGhhc2goJm9pZCk7Cit9CiAKLUtIQVNIX0lOSVQoc2hhMSwgY29uc3QgdW5zaWduZWQgY2hhciAqLCB2b2lkICosIDEsIHNoYTFoYXNoLCBfX2toX29pZF9jbXApCi10eXBlZGVmIGtoX3NoYTFfdCBraGFzaF9zaGExOworc3RhdGljIGlubGluZSBpbnQgb2lkZXFfYnlfdmFsdWUoc3RydWN0IG9iamVjdF9pZCBhLCBzdHJ1Y3Qgb2JqZWN0X2lkIGIpCit7CisJcmV0dXJuIG9pZGVxKCZhLCAmYik7Cit9CiAKLUtIQVNIX0lOSVQoc2hhMV9wb3MsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKiwgaW50LCAxLCBzaGExaGFzaCwgX19raF9vaWRfY21wKQotdHlwZWRlZiBraF9zaGExX3Bvc190IGtoYXNoX3NoYTFfcG9zOworS0hBU0hfSU5JVChvaWRfc2V0LCBzdHJ1Y3Qgb2JqZWN0X2lkLCBpbnQsIDAsIG9pZGhhc2hfYnlfdmFsdWUsIG9pZGVxX2J5X3ZhbHVlKQorCitLSEFTSF9JTklUKG9pZF9tYXAsIHN0cnVjdCBvYmplY3RfaWQsIHZvaWQgKiwgMSwgb2lkaGFzaF9ieV92YWx1ZSwgb2lkZXFfYnlfdmFsdWUpCisKK0tIQVNIX0lOSVQob2lkX3Bvcywgc3RydWN0IG9iamVjdF9pZCwgaW50LCAxLCBvaWRoYXNoX2J5X3ZhbHVlLCBvaWRlcV9ieV92YWx1ZSkKIAogI2VuZGlmIC8qIF9fQUNfS0hBU0hfSCAqLwpkaWZmIC0tZ2l0IGEva3dzZXQuYyBiL2t3c2V0LmMKaW5kZXggNGZiNjQ1NS4uZmM0MzllMCAxMDA2NDQKLS0tIGEva3dzZXQuYworKysgYi9rd3NldC5jCkBAIC0zOCw3ICszOCwxMyBAQAogI2luY2x1ZGUgImNvbXBhdC9vYnN0YWNrLmgiCiAKICNkZWZpbmUgTkNIQVIgKFVDSEFSX01BWCArIDEpCi0jZGVmaW5lIG9ic3RhY2tfY2h1bmtfYWxsb2MgeG1hbGxvYworLyogYWRhcHRlciBmb3IgYHhtYWxsb2MoKWAsIHdoaWNoIHRha2VzIGBzaXplX3RgLCBub3QgYGxvbmdgICovCitzdGF0aWMgdm9pZCAqb2JzdGFja19jaHVua19hbGxvYyhsb25nIHNpemUpCit7CisJaWYgKHNpemUgPCAwKQorCQlCVUcoIkNhbm5vdCBhbGxvY2F0ZSBhIG5lZ2F0aXZlIGFtb3VudDogJWxkIiwgc2l6ZSk7CisJcmV0dXJuIHhtYWxsb2Moc2l6ZSk7Cit9CiAjZGVmaW5lIG9ic3RhY2tfY2h1bmtfZnJlZSBmcmVlCiAKICNkZWZpbmUgVShjKSAoKHVuc2lnbmVkIGNoYXIpIChjKSkKQEAgLTQ3NSw3ICs0ODEsNyBAQAogCWZvciAoaSA9IDA7IGkgPCBOQ0hBUjsgKytpKQogCSAga3dzZXQtPm5leHRbaV0gPSBuZXh0W1UodHJhbnNbaV0pXTsKICAgICAgIGVsc2UKLQltZW1jcHkoa3dzZXQtPm5leHQsIG5leHQsIE5DSEFSICogc2l6ZW9mKHN0cnVjdCB0cmllICopKTsKKwlDT1BZX0FSUkFZKGt3c2V0LT5uZXh0LCBuZXh0LCBOQ0hBUik7CiAgICAgfQogCiAgIC8qIEZpeCB0aGluZ3MgdXAgZm9yIGFueSB0cmFuc2xhdGlvbiB0YWJsZS4gKi8KZGlmZiAtLWdpdCBhL2t3c2V0LmggYi9rd3NldC5oCmluZGV4IDU4M2Y2MjYuLmY1MGVjYWUgMTAwNjQ0Ci0tLSBhL2t3c2V0LmgKKysrIGIva3dzZXQuaApAQCAtMSwzICsxLDYgQEAKKyNpZm5kZWYgS1dTRVRfSAorI2RlZmluZSBLV1NFVF9ICisKIC8qIFRoaXMgZmlsZSBoYXMgYmVlbiBjb3BpZWQgZnJvbSBjb21taXQgZTdhYzcxM2ReIGluIHRoZSBHTlUgZ3JlcCBnaXQKICAqIHJlcG9zaXRvcnkuIEEgZmV3IHNtYWxsIGNoYW5nZXMgaGF2ZSBiZWVuIG1hZGUgdG8gYWRhcHQgdGhlIGNvZGUgdG8KICAqIEdpdC4KQEAgLTM3LDE2ICs0MCwxNiBAQAogICAgaWYgZW5vdWdoIG1lbW9yeSBjYW5ub3QgYmUgb2J0YWluZWQuICBUaGUgYXJndW1lbnQgaWYgbm9uLU5VTEwKICAgIHNwZWNpZmllcyBhIHRhYmxlIG9mIGNoYXJhY3RlciB0cmFuc2xhdGlvbnMgdG8gYmUgYXBwbGllZCB0byBhbGwKICAgIHBhdHRlcm4gYW5kIHNlYXJjaCB0ZXh0LiAqLwotZXh0ZXJuIGt3c2V0X3Qga3dzYWxsb2ModW5zaWduZWQgY2hhciBjb25zdCAqKTsKK2t3c2V0X3Qga3dzYWxsb2ModW5zaWduZWQgY2hhciBjb25zdCAqKTsKIAogLyogSW5jcmVtZW50YWxseSBleHRlbmQgdGhlIGtleXdvcmQgc2V0IHRvIGluY2x1ZGUgdGhlIGdpdmVuIHN0cmluZy4KICAgIFJldHVybiBOVUxMIGZvciBzdWNjZXNzLCBvciBhbiBlcnJvciBtZXNzYWdlLiAgUmVtZW1iZXIgYW4gaW5kZXgKICAgIG51bWJlciBmb3IgZWFjaCBrZXl3b3JkIGluY2x1ZGVkIGluIHRoZSBzZXQuICovCi1leHRlcm4gY29uc3QgY2hhciAqa3dzaW5jcihrd3NldF90LCBjaGFyIGNvbnN0ICosIHNpemVfdCk7Citjb25zdCBjaGFyICprd3NpbmNyKGt3c2V0X3QsIGNoYXIgY29uc3QgKiwgc2l6ZV90KTsKIAogLyogV2hlbiB0aGUga2V5d29yZCBzZXQgaGFzIGJlZW4gY29tcGxldGVseSBidWlsdCwgcHJlcGFyZSBpdCBmb3IKICAgIHVzZS4gIFJldHVybiBOVUxMIGZvciBzdWNjZXNzLCBvciBhbiBlcnJvciBtZXNzYWdlLiAqLwotZXh0ZXJuIGNvbnN0IGNoYXIgKmt3c3ByZXAoa3dzZXRfdCk7Citjb25zdCBjaGFyICprd3NwcmVwKGt3c2V0X3QpOwogCiAvKiBTZWFyY2ggdGhyb3VnaCB0aGUgZ2l2ZW4gYnVmZmVyIGZvciBhIG1lbWJlciBvZiB0aGUga2V5d29yZCBzZXQuCiAgICBSZXR1cm4gYSBwb2ludGVyIHRvIHRoZSBsZWZ0bW9zdCBsb25nZXN0IG1hdGNoIGZvdW5kLCBvciBOVUxMIGlmCkBAIC01NCw4ICs1Nyw5IEBACiAgICB0aGUgbWF0Y2hpbmcgc3Vic3RyaW5nIGluIHRoZSBpbnRlZ2VyIGl0IHBvaW50cyB0by4gIFNpbWlsYXJseSwKICAgIGlmIGZvdW5kaW5kZXggaXMgbm9uLU5VTEwsIHN0b3JlIHRoZSBpbmRleCBvZiB0aGUgcGFydGljdWxhcgogICAga2V5d29yZCBmb3VuZCB0aGVyZWluLiAqLwotZXh0ZXJuIHNpemVfdCBrd3NleGVjKGt3c2V0X3QsIGNoYXIgY29uc3QgKiwgc2l6ZV90LCBzdHJ1Y3Qga3dzbWF0Y2ggKik7CitzaXplX3Qga3dzZXhlYyhrd3NldF90LCBjaGFyIGNvbnN0ICosIHNpemVfdCwgc3RydWN0IGt3c21hdGNoICopOwogCiAvKiBEZWFsbG9jYXRlIHRoZSBnaXZlbiBrZXl3b3JkIHNldCBhbmQgYWxsIGl0cyBhc3NvY2lhdGVkIHN0b3JhZ2UuICovCi1leHRlcm4gdm9pZCBrd3NmcmVlKGt3c2V0X3QpOwordm9pZCBrd3NmcmVlKGt3c2V0X3QpOwogCisjZW5kaWYgLyogS1dTRVRfSCAqLwpkaWZmIC0tZ2l0IGEvbGluZS1sb2cuYyBiL2xpbmUtbG9nLmMKaW5kZXggZDFkNDI5ZC4uOTAxMGUwMCAxMDA2NDQKLS0tIGEvbGluZS1sb2cuYworKysgYi9saW5lLWxvZy5jCkBAIC00NzksNyArNDc5LDcgQEAKIAkJc3RydWN0IG9iamVjdCAqb2JqID0gcmV2cy0+cGVuZGluZy5vYmplY3RzW2ldLml0ZW07CiAJCWlmIChvYmotPmZsYWdzICYgVU5JTlRFUkVTVElORykKIAkJCWNvbnRpbnVlOwotCQlvYmogPSBkZXJlZl90YWcodGhlX3JlcG9zaXRvcnksIG9iaiwgTlVMTCwgMCk7CisJCW9iaiA9IGRlcmVmX3RhZyhyZXZzLT5yZXBvLCBvYmosIE5VTEwsIDApOwogCQlpZiAob2JqLT50eXBlICE9IE9CSl9DT01NSVQpCiAJCQlkaWUoIk5vbiBjb21taXQgJXM/IiwgcmV2cy0+cGVuZGluZy5vYmplY3RzW2ldLm5hbWUpOwogCQlpZiAoY29tbWl0KQpAQCAtNDk2LDEyICs0OTYsMTMgQEAKIAlyZXR1cm4gKHN0cnVjdCBjb21taXQgKikgY29tbWl0OwogfQogCi1zdGF0aWMgdm9pZCBmaWxsX2Jsb2Jfc2hhMShzdHJ1Y3QgY29tbWl0ICpjb21taXQsIHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpzcGVjKQorc3RhdGljIHZvaWQgZmlsbF9ibG9iX3NoYTEoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBjb21taXQgKmNvbW1pdCwKKwkJCSAgIHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpzcGVjKQogewotCXVuc2lnbmVkIG1vZGU7CisJdW5zaWduZWQgc2hvcnQgbW9kZTsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAotCWlmIChnZXRfdHJlZV9lbnRyeSgmY29tbWl0LT5vYmplY3Qub2lkLCBzcGVjLT5wYXRoLCAmb2lkLCAmbW9kZSkpCisJaWYgKGdldF90cmVlX2VudHJ5KHIsICZjb21taXQtPm9iamVjdC5vaWQsIHNwZWMtPnBhdGgsICZvaWQsICZtb2RlKSkKIAkJZGllKCJUaGVyZSBpcyBubyBwYXRoICVzIGluIHRoZSBjb21taXQiLCBzcGVjLT5wYXRoKTsKIAlmaWxsX2ZpbGVzcGVjKHNwZWMsICZvaWQsIDEsIG1vZGUpOwogCkBAIC01ODUsNyArNTg2LDcgQEAKIAkJCQkJbmFtZV9wYXJ0KTsKIAogCQlzcGVjID0gYWxsb2NfZmlsZXNwZWMoZnVsbF9uYW1lKTsKLQkJZmlsbF9ibG9iX3NoYTEoY29tbWl0LCBzcGVjKTsKKwkJZmlsbF9ibG9iX3NoYTEociwgY29tbWl0LCBzcGVjKTsKIAkJZmlsbF9saW5lX2VuZHMociwgc3BlYywgJmxpbmVzLCAmZW5kcyk7CiAJCWNiX2RhdGEuc3BlYyA9IHNwZWM7CiAJCWNiX2RhdGEubGluZXMgPSBsaW5lczsKQEAgLTczNiw2ICs3MzcsMzggQEAKIAlyZXR1cm4gcmV0OwogfQogCitzdGF0aWMgaW50IHNhbWVfcGF0aHNfaW5fcGF0aHNwZWNfYW5kX3JhbmdlKHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCisJCQkJCSAgICBzdHJ1Y3QgbGluZV9sb2dfZGF0YSAqcmFuZ2UpCit7CisJaW50IGk7CisJc3RydWN0IGxpbmVfbG9nX2RhdGEgKnI7CisKKwlmb3IgKGkgPSAwLCByID0gcmFuZ2U7IGkgPCBwYXRoc3BlYy0+bnIgJiYgcjsgaSsrLCByID0gci0+bmV4dCkKKwkJaWYgKHN0cmNtcChwYXRoc3BlYy0+aXRlbXNbaV0ubWF0Y2gsIHItPnBhdGgpKQorCQkJcmV0dXJuIDA7CisJaWYgKGkgPCBwYXRoc3BlYy0+bnIgfHwgcikKKwkJLyogZGlmZmVyZW50IG51bWJlciBvZiBwYXRoc3BlYyBpdGVtcyBhbmQgcmFuZ2VzICovCisJCXJldHVybiAwOworCisJcmV0dXJuIDE7Cit9CisKK3N0YXRpYyB2b2lkIHBhcnNlX3BhdGhzcGVjX2Zyb21fcmFuZ2VzKHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCisJCQkJICAgICAgIHN0cnVjdCBsaW5lX2xvZ19kYXRhICpyYW5nZSkKK3sKKwlzdHJ1Y3QgbGluZV9sb2dfZGF0YSAqcjsKKwlzdHJ1Y3QgYXJndl9hcnJheSBhcnJheSA9IEFSR1ZfQVJSQVlfSU5JVDsKKwljb25zdCBjaGFyICoqcGF0aHM7CisKKwlmb3IgKHIgPSByYW5nZTsgcjsgciA9IHItPm5leHQpCisJCWFyZ3ZfYXJyYXlfcHVzaCgmYXJyYXksIHItPnBhdGgpOworCXBhdGhzID0gYXJndl9hcnJheV9kZXRhY2goJmFycmF5KTsKKworCXBhcnNlX3BhdGhzcGVjKHBhdGhzcGVjLCAwLCBQQVRIU1BFQ19QUkVGRVJfRlVMTCwgIiIsIHBhdGhzKTsKKwkvKiBzdHJpbmdzIGFyZSBub3cgb3duZWQgYnkgcGF0aHNwZWMgKi8KKwlmcmVlKHBhdGhzKTsKK30KKwogdm9pZCBsaW5lX2xvZ19pbml0KHN0cnVjdCByZXZfaW5mbyAqcmV2LCBjb25zdCBjaGFyICpwcmVmaXgsIHN0cnVjdCBzdHJpbmdfbGlzdCAqYXJncykKIHsKIAlzdHJ1Y3QgY29tbWl0ICpjb21taXQgPSBOVUxMOwpAQCAtNzQ1LDIwICs3NzgsNyBAQAogCXJhbmdlID0gcGFyc2VfbGluZXMocmV2LT5kaWZmb3B0LnJlcG8sIGNvbW1pdCwgcHJlZml4LCBhcmdzKTsKIAlhZGRfbGluZV9yYW5nZShyZXYsIGNvbW1pdCwgcmFuZ2UpOwogCi0JaWYgKCFyZXYtPmRpZmZvcHQuZGV0ZWN0X3JlbmFtZSkgewotCQlzdHJ1Y3QgbGluZV9sb2dfZGF0YSAqcjsKLQkJc3RydWN0IGFyZ3ZfYXJyYXkgYXJyYXkgPSBBUkdWX0FSUkFZX0lOSVQ7Ci0JCWNvbnN0IGNoYXIgKipwYXRoczsKLQotCQlmb3IgKHIgPSByYW5nZTsgcjsgciA9IHItPm5leHQpCi0JCQlhcmd2X2FycmF5X3B1c2goJmFycmF5LCByLT5wYXRoKTsKLQkJcGF0aHMgPSBhcmd2X2FycmF5X2RldGFjaCgmYXJyYXkpOwotCi0JCXBhcnNlX3BhdGhzcGVjKCZyZXYtPmRpZmZvcHQucGF0aHNwZWMsIDAsCi0JCQkgICAgICAgUEFUSFNQRUNfUFJFRkVSX0ZVTEwsICIiLCBwYXRocyk7Ci0JCS8qIHN0cmluZ3MgYXJlIG5vdyBvd25lZCBieSBwYXRoc3BlYyAqLwotCQlmcmVlKHBhdGhzKTsKLQl9CisJcGFyc2VfcGF0aHNwZWNfZnJvbV9yYW5nZXMoJnJldi0+ZGlmZm9wdC5wYXRoc3BlYywgcmFuZ2UpOwogfQogCiBzdGF0aWMgdm9pZCBtb3ZlX2RpZmZfcXVldWUoc3RydWN0IGRpZmZfcXVldWVfc3RydWN0ICpkc3QsCkBAIC04MTYsMTUgKzgzNiwyOSBAQAogCQkJc3RydWN0IGRpZmZfcXVldWVfc3RydWN0ICpxdWV1ZSwKIAkJCXN0cnVjdCBjb21taXQgKmNvbW1pdCwgc3RydWN0IGNvbW1pdCAqcGFyZW50KQogeworCXN0cnVjdCBvYmplY3RfaWQgKnRyZWVfb2lkLCAqcGFyZW50X3RyZWVfb2lkOworCiAJYXNzZXJ0KGNvbW1pdCk7CiAKKwl0cmVlX29pZCA9IGdldF9jb21taXRfdHJlZV9vaWQoY29tbWl0KTsKKwlwYXJlbnRfdHJlZV9vaWQgPSBwYXJlbnQgPyBnZXRfY29tbWl0X3RyZWVfb2lkKHBhcmVudCkgOiBOVUxMOworCisJaWYgKG9wdC0+ZGV0ZWN0X3JlbmFtZSAmJgorCSAgICAhc2FtZV9wYXRoc19pbl9wYXRoc3BlY19hbmRfcmFuZ2UoJm9wdC0+cGF0aHNwZWMsIHJhbmdlKSkgeworCQljbGVhcl9wYXRoc3BlYygmb3B0LT5wYXRoc3BlYyk7CisJCXBhcnNlX3BhdGhzcGVjX2Zyb21fcmFuZ2VzKCZvcHQtPnBhdGhzcGVjLCByYW5nZSk7CisJfQogCURJRkZfUVVFVUVfQ0xFQVIoJmRpZmZfcXVldWVkX2RpZmYpOwotCWRpZmZfdHJlZV9vaWQocGFyZW50ID8gZ2V0X2NvbW1pdF90cmVlX29pZChwYXJlbnQpIDogTlVMTCwKLQkJICAgICAgZ2V0X2NvbW1pdF90cmVlX29pZChjb21taXQpLCAiIiwgb3B0KTsKLQlpZiAob3B0LT5kZXRlY3RfcmVuYW1lKSB7CisJZGlmZl90cmVlX29pZChwYXJlbnRfdHJlZV9vaWQsIHRyZWVfb2lkLCAiIiwgb3B0KTsKKwlpZiAob3B0LT5kZXRlY3RfcmVuYW1lICYmIGRpZmZfbWlnaHRfYmVfcmVuYW1lKCkpIHsKKwkJLyogbXVzdCBsb29rIGF0IHRoZSBmdWxsIHRyZWUgZGlmZiB0byBkZXRlY3QgcmVuYW1lcyAqLworCQljbGVhcl9wYXRoc3BlYygmb3B0LT5wYXRoc3BlYyk7CisJCURJRkZfUVVFVUVfQ0xFQVIoJmRpZmZfcXVldWVkX2RpZmYpOworCisJCWRpZmZfdHJlZV9vaWQocGFyZW50X3RyZWVfb2lkLCB0cmVlX29pZCwgIiIsIG9wdCk7CisKIAkJZmlsdGVyX2RpZmZzX2Zvcl9wYXRocyhyYW5nZSwgMSk7Ci0JCWlmIChkaWZmX21pZ2h0X2JlX3JlbmFtZSgpKQotCQkJZGlmZmNvcmVfc3RkKG9wdCk7CisJCWRpZmZjb3JlX3N0ZChvcHQpOwogCQlmaWx0ZXJfZGlmZnNfZm9yX3BhdGhzKHJhbmdlLCAwKTsKIAl9CiAJbW92ZV9kaWZmX3F1ZXVlKHF1ZXVlLCAmZGlmZl9xdWV1ZWRfZGlmZik7CkBAIC0xMTAzLDEwICsxMTM3LDEyIEBACiAKIGludCBsaW5lX2xvZ19wcmludChzdHJ1Y3QgcmV2X2luZm8gKnJldiwgc3RydWN0IGNvbW1pdCAqY29tbWl0KQogewotCXN0cnVjdCBsaW5lX2xvZ19kYXRhICpyYW5nZSA9IGxvb2t1cF9saW5lX3JhbmdlKHJldiwgY29tbWl0KTsKIAogCXNob3dfbG9nKHJldik7Ci0JZHVtcF9kaWZmX2hhY2t5KHJldiwgcmFuZ2UpOworCWlmICghKHJldi0+ZGlmZm9wdC5vdXRwdXRfZm9ybWF0ICYgRElGRl9GT1JNQVRfTk9fT1VUUFVUKSkgeworCQlzdHJ1Y3QgbGluZV9sb2dfZGF0YSAqcmFuZ2UgPSBsb29rdXBfbGluZV9yYW5nZShyZXYsIGNvbW1pdCk7CisJCWR1bXBfZGlmZl9oYWNreShyZXYsIHJhbmdlKTsKKwl9CiAJcmV0dXJuIDE7CiB9CiAKZGlmZiAtLWdpdCBhL2xpbmUtbG9nLmggYi9saW5lLWxvZy5oCmluZGV4IGUyYTVlZTcuLjhlZTdhMmIgMTAwNjQ0Ci0tLSBhL2xpbmUtbG9nLmgKKysrIGIvbGluZS1sb2cuaApAQCAtMjUsMTcgKzI1LDE3IEBACiAJc3RydWN0IHJhbmdlX3NldCB0YXJnZXQ7CiB9OwogCi1leHRlcm4gdm9pZCByYW5nZV9zZXRfaW5pdChzdHJ1Y3QgcmFuZ2Vfc2V0ICosIHNpemVfdCBwcmVhbGxvYyk7Ci1leHRlcm4gdm9pZCByYW5nZV9zZXRfcmVsZWFzZShzdHJ1Y3QgcmFuZ2Vfc2V0ICopOwordm9pZCByYW5nZV9zZXRfaW5pdChzdHJ1Y3QgcmFuZ2Vfc2V0ICosIHNpemVfdCBwcmVhbGxvYyk7Cit2b2lkIHJhbmdlX3NldF9yZWxlYXNlKHN0cnVjdCByYW5nZV9zZXQgKik7CiAvKiBSYW5nZSBpbmNsdWRlcyBzdGFydDsgZXhjbHVkZXMgZW5kICovCi1leHRlcm4gdm9pZCByYW5nZV9zZXRfYXBwZW5kX3Vuc2FmZShzdHJ1Y3QgcmFuZ2Vfc2V0ICosIGxvbmcgc3RhcnQsIGxvbmcgZW5kKTsKK3ZvaWQgcmFuZ2Vfc2V0X2FwcGVuZF91bnNhZmUoc3RydWN0IHJhbmdlX3NldCAqLCBsb25nIHN0YXJ0LCBsb25nIGVuZCk7CiAvKiBOZXcgcmFuZ2UgbXVzdCBiZWdpbiBhdCBvciBhZnRlciBlbmQgb2YgbGFzdCBhZGRlZCByYW5nZSAqLwotZXh0ZXJuIHZvaWQgcmFuZ2Vfc2V0X2FwcGVuZChzdHJ1Y3QgcmFuZ2Vfc2V0ICosIGxvbmcgc3RhcnQsIGxvbmcgZW5kKTsKK3ZvaWQgcmFuZ2Vfc2V0X2FwcGVuZChzdHJ1Y3QgcmFuZ2Vfc2V0ICosIGxvbmcgc3RhcnQsIGxvbmcgZW5kKTsKIC8qCiAgKiBJbi1wbGFjZSBwYXNzIG9mIHNvcnRpbmcgYW5kIG1lcmdpbmcgdGhlIHJhbmdlcyBpbiB0aGUgcmFuZ2Ugc2V0LAogICogdG8gc29ydCBhbmQgbWFrZSB0aGUgcmFuZ2VzIGRpc2pvaW50LgogICovCi1leHRlcm4gdm9pZCBzb3J0X2FuZF9tZXJnZV9yYW5nZV9zZXQoc3RydWN0IHJhbmdlX3NldCAqKTsKK3ZvaWQgc29ydF9hbmRfbWVyZ2VfcmFuZ2Vfc2V0KHN0cnVjdCByYW5nZV9zZXQgKik7CiAKIC8qIExpbmtlZCBsaXN0IG9mIGludGVyZXN0aW5nIGZpbGVzIGFuZCB0aGVpciBhc3NvY2lhdGVkIHJhbmdlcy4gIFRoZQogICogbGlzdCBtdXN0IGJlIGtlcHQgc29ydGVkIGJ5IHBhdGguCkBAIC01NCwxMCArNTQsMTAgQEAKIAlzdHJ1Y3QgZGlmZl9yYW5nZXMgZGlmZjsKIH07CiAKLWV4dGVybiB2b2lkIGxpbmVfbG9nX2luaXQoc3RydWN0IHJldl9pbmZvICpyZXYsIGNvbnN0IGNoYXIgKnByZWZpeCwgc3RydWN0IHN0cmluZ19saXN0ICphcmdzKTsKK3ZvaWQgbGluZV9sb2dfaW5pdChzdHJ1Y3QgcmV2X2luZm8gKnJldiwgY29uc3QgY2hhciAqcHJlZml4LCBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmFyZ3MpOwogCi1leHRlcm4gaW50IGxpbmVfbG9nX2ZpbHRlcihzdHJ1Y3QgcmV2X2luZm8gKnJldik7CitpbnQgbGluZV9sb2dfZmlsdGVyKHN0cnVjdCByZXZfaW5mbyAqcmV2KTsKIAotZXh0ZXJuIGludCBsaW5lX2xvZ19wcmludChzdHJ1Y3QgcmV2X2luZm8gKnJldiwgc3RydWN0IGNvbW1pdCAqY29tbWl0KTsKK2ludCBsaW5lX2xvZ19wcmludChzdHJ1Y3QgcmV2X2luZm8gKnJldiwgc3RydWN0IGNvbW1pdCAqY29tbWl0KTsKIAogI2VuZGlmIC8qIExJTkVfTE9HX0ggKi8KZGlmZiAtLWdpdCBhL2xpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jIGIvbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmMKaW5kZXggZThkYTJlOC4uMjU2YmNmYiAxMDA2NDQKLS0tIGEvbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmMKKysrIGIvbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmMKQEAgLTYsNiArNiwxNCBAQAogI2luY2x1ZGUgImxpc3Qtb2JqZWN0cy5oIgogI2luY2x1ZGUgImxpc3Qtb2JqZWN0cy1maWx0ZXIuaCIKICNpbmNsdWRlICJsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaCIKKyNpbmNsdWRlICJwcm9taXNvci1yZW1vdGUuaCIKKyNpbmNsdWRlICJ0cmFjZS5oIgorI2luY2x1ZGUgInVybC5oIgorCitzdGF0aWMgaW50IHBhcnNlX2NvbWJpbmVfZmlsdGVyKAorCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcl9vcHRpb25zLAorCWNvbnN0IGNoYXIgKmFyZywKKwlzdHJ1Y3Qgc3RyYnVmICplcnJidWYpOwogCiAvKgogICogUGFyc2UgdmFsdWUgb2YgdGhlIGFyZ3VtZW50IHRvIHRoZSAiZmlsdGVyIiBrZXl3b3JkLgpAQCAtMTgsOCArMjYsOSBAQAogICogU2VlIERvY3VtZW50YXRpb24vcmV2LWxpc3Qtb3B0aW9ucy50eHQgZm9yIGFsbG93ZWQgdmFsdWVzIGZvciA8YXJnPi4KICAqCiAgKiBDYXB0dXJlIHRoZSBnaXZlbiBhcmcgYXMgdGhlICJmaWx0ZXJfc3BlYyIuICBUaGlzIGNhbiBiZSBmb3J3YXJkZWQgdG8KLSAqIHN1Ym9yZGluYXRlIGNvbW1hbmRzIHdoZW4gbmVjZXNzYXJ5LiAgV2UgYWxzbyAiaW50ZXJuIiB0aGUgYXJnIGZvcgotICogdGhlIGNvbnZlbmllbmNlIG9mIHRoZSBjdXJyZW50IGNvbW1hbmQuCisgKiBzdWJvcmRpbmF0ZSBjb21tYW5kcyB3aGVuIG5lY2Vzc2FyeSAoYWx0aG91Z2ggaXQncyBiZXR0ZXIgdG8gcGFzcyBpdCB0aHJvdWdoCisgKiBleHBhbmRfbGlzdF9vYmplY3RzX2ZpbHRlcl9zcGVjKCkgZmlyc3QpLiAgV2UgYWxzbyAiaW50ZXJuIiB0aGUgYXJnIGZvciB0aGUKKyAqIGNvbnZlbmllbmNlIG9mIHRoZSBjdXJyZW50IGNvbW1hbmQuCiAgKi8KIHN0YXRpYyBpbnQgZ2VudGx5X3BhcnNlX2xpc3Rfb2JqZWN0c19maWx0ZXIoCiAJc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyX29wdGlvbnMsCkBAIC0yOCwxNiArMzcsMTEgQEAKIHsKIAljb25zdCBjaGFyICp2MDsKIAotCWlmIChmaWx0ZXJfb3B0aW9ucy0+Y2hvaWNlKSB7Ci0JCWlmIChlcnJidWYpIHsKLQkJCXN0cmJ1Zl9hZGRzdHIoCi0JCQkJZXJyYnVmLAotCQkJCV8oIm11bHRpcGxlIGZpbHRlci1zcGVjcyBjYW5ub3QgYmUgY29tYmluZWQiKSk7Ci0JCX0KLQkJcmV0dXJuIDE7Ci0JfQorCWlmICghYXJnKQorCQlyZXR1cm4gMDsKIAotCWZpbHRlcl9vcHRpb25zLT5maWx0ZXJfc3BlYyA9IHN0cmR1cChhcmcpOworCWlmIChmaWx0ZXJfb3B0aW9ucy0+Y2hvaWNlKQorCQlCVUcoImZpbHRlcl9vcHRpb25zIGFscmVhZHkgcG9wdWxhdGVkIik7CiAKIAlpZiAoIXN0cmNtcChhcmcsICJibG9iOm5vbmUiKSkgewogCQlmaWx0ZXJfb3B0aW9ucy0+Y2hvaWNlID0gTE9GQ19CTE9CX05PTkU7CkBAIC01MCw1MyArNTQsMjA4IEBACiAJCX0KIAogCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgoYXJnLCAidHJlZToiLCAmdjApKSB7Ci0JCXVuc2lnbmVkIGxvbmcgZGVwdGg7Ci0JCWlmICghZ2l0X3BhcnNlX3Vsb25nKHYwLCAmZGVwdGgpIHx8IGRlcHRoICE9IDApIHsKLQkJCWlmIChlcnJidWYpIHsKLQkJCQlzdHJidWZfYWRkc3RyKAotCQkJCQllcnJidWYsCi0JCQkJCV8oIm9ubHkgJ3RyZWU6MCcgaXMgc3VwcG9ydGVkIikpOwotCQkJfQorCQlpZiAoIWdpdF9wYXJzZV91bG9uZyh2MCwgJmZpbHRlcl9vcHRpb25zLT50cmVlX2V4Y2x1ZGVfZGVwdGgpKSB7CisJCQlzdHJidWZfYWRkc3RyKGVycmJ1ZiwgXygiZXhwZWN0ZWQgJ3RyZWU6PGRlcHRoPiciKSk7CiAJCQlyZXR1cm4gMTsKIAkJfQotCQlmaWx0ZXJfb3B0aW9ucy0+Y2hvaWNlID0gTE9GQ19UUkVFX05PTkU7CisJCWZpbHRlcl9vcHRpb25zLT5jaG9pY2UgPSBMT0ZDX1RSRUVfREVQVEg7CiAJCXJldHVybiAwOwogCiAJfSBlbHNlIGlmIChza2lwX3ByZWZpeChhcmcsICJzcGFyc2U6b2lkPSIsICZ2MCkpIHsKLQkJc3RydWN0IG9iamVjdF9jb250ZXh0IG9jOwotCQlzdHJ1Y3Qgb2JqZWN0X2lkIHNwYXJzZV9vaWQ7Ci0KLQkJLyoKLQkJICogVHJ5IHRvIHBhcnNlIDxvaWQtZXhwcmVzc2lvbj4gaW50byBhbiBPSUQgZm9yIHRoZSBjdXJyZW50Ci0JCSAqIGNvbW1hbmQsIGJ1dCBETyBOT1QgY29tcGxhaW4gaWYgd2UgZG9uJ3QgaGF2ZSB0aGUgYmxvYiBvcgotCQkgKiByZWYgbG9jYWxseS4KLQkJICovCi0JCWlmICghZ2V0X29pZF93aXRoX2NvbnRleHQodjAsIEdFVF9PSURfQkxPQiwKLQkJCQkJICAmc3BhcnNlX29pZCwgJm9jKSkKLQkJCWZpbHRlcl9vcHRpb25zLT5zcGFyc2Vfb2lkX3ZhbHVlID0gb2lkZHVwKCZzcGFyc2Vfb2lkKTsKKwkJZmlsdGVyX29wdGlvbnMtPnNwYXJzZV9vaWRfbmFtZSA9IHhzdHJkdXAodjApOwogCQlmaWx0ZXJfb3B0aW9ucy0+Y2hvaWNlID0gTE9GQ19TUEFSU0VfT0lEOwogCQlyZXR1cm4gMDsKIAogCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgoYXJnLCAic3BhcnNlOnBhdGg9IiwgJnYwKSkgewotCQlmaWx0ZXJfb3B0aW9ucy0+Y2hvaWNlID0gTE9GQ19TUEFSU0VfUEFUSDsKLQkJZmlsdGVyX29wdGlvbnMtPnNwYXJzZV9wYXRoX3ZhbHVlID0gc3RyZHVwKHYwKTsKLQkJcmV0dXJuIDA7Ci0JfQorCQlpZiAoZXJyYnVmKSB7CisJCQlzdHJidWZfYWRkc3RyKAorCQkJCWVycmJ1ZiwKKwkJCQlfKCJzcGFyc2U6cGF0aCBmaWx0ZXJzIHN1cHBvcnQgaGFzIGJlZW4gZHJvcHBlZCIpKTsKKwkJfQorCQlyZXR1cm4gMTsKIAotCWlmIChlcnJidWYpCi0JCXN0cmJ1Zl9hZGRmKGVycmJ1ZiwgImludmFsaWQgZmlsdGVyLXNwZWMgJyVzJyIsIGFyZyk7CisJfSBlbHNlIGlmIChza2lwX3ByZWZpeChhcmcsICJjb21iaW5lOiIsICZ2MCkpIHsKKwkJcmV0dXJuIHBhcnNlX2NvbWJpbmVfZmlsdGVyKGZpbHRlcl9vcHRpb25zLCB2MCwgZXJyYnVmKTsKKworCX0KKwkvKgorCSAqIFBsZWFzZSB1cGRhdGUgX2dpdF9mZXRjaCgpIGluIGdpdC1jb21wbGV0aW9uLmJhc2ggd2hlbiB5b3UKKwkgKiBhZGQgbmV3IGZpbHRlcnMKKwkgKi8KKworCXN0cmJ1Zl9hZGRmKGVycmJ1ZiwgXygiaW52YWxpZCBmaWx0ZXItc3BlYyAnJXMnIiksIGFyZyk7CiAKIAltZW1zZXQoZmlsdGVyX29wdGlvbnMsIDAsIHNpemVvZigqZmlsdGVyX29wdGlvbnMpKTsKIAlyZXR1cm4gMTsKIH0KIAotaW50IHBhcnNlX2xpc3Rfb2JqZWN0c19maWx0ZXIoc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyX29wdGlvbnMsCi0JCQkgICAgICBjb25zdCBjaGFyICphcmcpCitzdGF0aWMgY29uc3QgY2hhciAqUkVTRVJWRURfTk9OX1dTID0gIn5gIUAjJF4mKigpW117fVxcOydcIiw8Pj8iOworCitzdGF0aWMgaW50IGhhc19yZXNlcnZlZF9jaGFyYWN0ZXIoCisJc3RydWN0IHN0cmJ1ZiAqc3ViX3NwZWMsIHN0cnVjdCBzdHJidWYgKmVycmJ1ZikKK3sKKwljb25zdCBjaGFyICpjID0gc3ViX3NwZWMtPmJ1ZjsKKwl3aGlsZSAoKmMpIHsKKwkJaWYgKCpjIDw9ICcgJyB8fCBzdHJjaHIoUkVTRVJWRURfTk9OX1dTLCAqYykpIHsKKwkJCXN0cmJ1Zl9hZGRmKAorCQkJCWVycmJ1ZiwKKwkJCQlfKCJtdXN0IGVzY2FwZSBjaGFyIGluIHN1Yi1maWx0ZXItc3BlYzogJyVjJyIpLAorCQkJCSpjKTsKKwkJCXJldHVybiAxOworCQl9CisJCWMrKzsKKwl9CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBwYXJzZV9jb21iaW5lX3N1YmZpbHRlcigKKwlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXJfb3B0aW9ucywKKwlzdHJ1Y3Qgc3RyYnVmICpzdWJzcGVjLAorCXN0cnVjdCBzdHJidWYgKmVycmJ1ZikKK3sKKwlzaXplX3QgbmV3X2luZGV4ID0gZmlsdGVyX29wdGlvbnMtPnN1Yl9ucjsKKwljaGFyICpkZWNvZGVkOworCWludCByZXN1bHQ7CisKKwlBTExPQ19HUk9XX0JZKGZpbHRlcl9vcHRpb25zLT5zdWIsIGZpbHRlcl9vcHRpb25zLT5zdWJfbnIsIDEsCisJCSAgICAgIGZpbHRlcl9vcHRpb25zLT5zdWJfYWxsb2MpOworCisJZGVjb2RlZCA9IHVybF9wZXJjZW50X2RlY29kZShzdWJzcGVjLT5idWYpOworCisJcmVzdWx0ID0gaGFzX3Jlc2VydmVkX2NoYXJhY3RlcihzdWJzcGVjLCBlcnJidWYpIHx8CisJCWdlbnRseV9wYXJzZV9saXN0X29iamVjdHNfZmlsdGVyKAorCQkJJmZpbHRlcl9vcHRpb25zLT5zdWJbbmV3X2luZGV4XSwgZGVjb2RlZCwgZXJyYnVmKTsKKworCWZyZWUoZGVjb2RlZCk7CisJcmV0dXJuIHJlc3VsdDsKK30KKworc3RhdGljIGludCBwYXJzZV9jb21iaW5lX2ZpbHRlcigKKwlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXJfb3B0aW9ucywKKwljb25zdCBjaGFyICphcmcsCisJc3RydWN0IHN0cmJ1ZiAqZXJyYnVmKQoreworCXN0cnVjdCBzdHJidWYgKipzdWJzcGVjcyA9IHN0cmJ1Zl9zcGxpdF9zdHIoYXJnLCAnKycsIDApOworCXNpemVfdCBzdWI7CisJaW50IHJlc3VsdCA9IDA7CisKKwlpZiAoIXN1YnNwZWNzWzBdKSB7CisJCXN0cmJ1Zl9hZGRzdHIoZXJyYnVmLCBfKCJleHBlY3RlZCBzb21ldGhpbmcgYWZ0ZXIgY29tYmluZToiKSk7CisJCXJlc3VsdCA9IDE7CisJCWdvdG8gY2xlYW51cDsKKwl9CisKKwlmb3IgKHN1YiA9IDA7IHN1YnNwZWNzW3N1Yl0gJiYgIXJlc3VsdDsgc3ViKyspIHsKKwkJaWYgKHN1YnNwZWNzW3N1YiArIDFdKSB7CisJCQkvKgorCQkJICogVGhpcyBpcyBub3QgdGhlIGxhc3Qgc3Vic3BlYy4gUmVtb3ZlIHRyYWlsaW5nICIrIiBzbworCQkJICogd2UgY2FuIHBhcnNlIGl0LgorCQkJICovCisJCQlzaXplX3QgbGFzdCA9IHN1YnNwZWNzW3N1Yl0tPmxlbiAtIDE7CisJCQlhc3NlcnQoc3Vic3BlY3Nbc3ViXS0+YnVmW2xhc3RdID09ICcrJyk7CisJCQlzdHJidWZfcmVtb3ZlKHN1YnNwZWNzW3N1Yl0sIGxhc3QsIDEpOworCQl9CisJCXJlc3VsdCA9IHBhcnNlX2NvbWJpbmVfc3ViZmlsdGVyKAorCQkJZmlsdGVyX29wdGlvbnMsIHN1YnNwZWNzW3N1Yl0sIGVycmJ1Zik7CisJfQorCisJZmlsdGVyX29wdGlvbnMtPmNob2ljZSA9IExPRkNfQ09NQklORTsKKworY2xlYW51cDoKKwlzdHJidWZfbGlzdF9mcmVlKHN1YnNwZWNzKTsKKwlpZiAocmVzdWx0KSB7CisJCWxpc3Rfb2JqZWN0c19maWx0ZXJfcmVsZWFzZShmaWx0ZXJfb3B0aW9ucyk7CisJCW1lbXNldChmaWx0ZXJfb3B0aW9ucywgMCwgc2l6ZW9mKCpmaWx0ZXJfb3B0aW9ucykpOworCX0KKwlyZXR1cm4gcmVzdWx0OworfQorCitzdGF0aWMgaW50IGFsbG93X3VuZW5jb2RlZChjaGFyIGNoKQoreworCWlmIChjaCA8PSAnICcgfHwgY2ggPT0gJyUnIHx8IGNoID09ICcrJykKKwkJcmV0dXJuIDA7CisJcmV0dXJuICFzdHJjaHIoUkVTRVJWRURfTk9OX1dTLCBjaCk7Cit9CisKK3N0YXRpYyB2b2lkIGZpbHRlcl9zcGVjX2FwcGVuZF91cmxlbmNvZGUoCisJc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyLCBjb25zdCBjaGFyICpyYXcpCiB7CiAJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKLQlpZiAoZ2VudGx5X3BhcnNlX2xpc3Rfb2JqZWN0c19maWx0ZXIoZmlsdGVyX29wdGlvbnMsIGFyZywgJmJ1ZikpCi0JCWRpZSgiJXMiLCBidWYuYnVmKTsKLQlyZXR1cm4gMDsKKwlzdHJidWZfYWRkc3RyX3VybGVuY29kZSgmYnVmLCByYXcsIGFsbG93X3VuZW5jb2RlZCk7CisJdHJhY2VfcHJpbnRmKCJBZGQgdG8gY29tYmluZSBmaWx0ZXItc3BlYzogJXNcbiIsIGJ1Zi5idWYpOworCXN0cmluZ19saXN0X2FwcGVuZCgmZmlsdGVyLT5maWx0ZXJfc3BlYywgc3RyYnVmX2RldGFjaCgmYnVmLCBOVUxMKSk7Cit9CisKKy8qCisgKiBDaGFuZ2VzIGZpbHRlcl9vcHRpb25zIGludG8gYW4gZXF1aXZhbGVudCBMT0ZDX0NPTUJJTkUgZmlsdGVyIG9wdGlvbnMKKyAqIGluc3RhbmNlLiBEb2VzIG5vdCBkbyBhbnl0aGluZyBpZiBmaWx0ZXJfb3B0aW9ucyBpcyBhbHJlYWR5IExPRkNfQ09NQklORS4KKyAqLworc3RhdGljIHZvaWQgdHJhbnNmb3JtX3RvX2NvbWJpbmVfdHlwZSgKKwlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXJfb3B0aW9ucykKK3sKKwlhc3NlcnQoZmlsdGVyX29wdGlvbnMtPmNob2ljZSk7CisJaWYgKGZpbHRlcl9vcHRpb25zLT5jaG9pY2UgPT0gTE9GQ19DT01CSU5FKQorCQlyZXR1cm47CisJeworCQljb25zdCBpbnQgaW5pdGlhbF9zdWJfYWxsb2MgPSAyOworCQlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpzdWJfYXJyYXkgPQorCQkJeGNhbGxvYyhpbml0aWFsX3N1Yl9hbGxvYywgc2l6ZW9mKCpzdWJfYXJyYXkpKTsKKwkJc3ViX2FycmF5WzBdID0gKmZpbHRlcl9vcHRpb25zOworCQltZW1zZXQoZmlsdGVyX29wdGlvbnMsIDAsIHNpemVvZigqZmlsdGVyX29wdGlvbnMpKTsKKwkJZmlsdGVyX29wdGlvbnMtPnN1YiA9IHN1Yl9hcnJheTsKKwkJZmlsdGVyX29wdGlvbnMtPnN1Yl9hbGxvYyA9IGluaXRpYWxfc3ViX2FsbG9jOworCX0KKwlmaWx0ZXJfb3B0aW9ucy0+c3ViX25yID0gMTsKKwlmaWx0ZXJfb3B0aW9ucy0+Y2hvaWNlID0gTE9GQ19DT01CSU5FOworCXN0cmluZ19saXN0X2FwcGVuZCgmZmlsdGVyX29wdGlvbnMtPmZpbHRlcl9zcGVjLCB4c3RyZHVwKCJjb21iaW5lOiIpKTsKKwlmaWx0ZXJfc3BlY19hcHBlbmRfdXJsZW5jb2RlKAorCQlmaWx0ZXJfb3B0aW9ucywKKwkJbGlzdF9vYmplY3RzX2ZpbHRlcl9zcGVjKCZmaWx0ZXJfb3B0aW9ucy0+c3ViWzBdKSk7CisJLyoKKwkgKiBXZSBkb24ndCBuZWVkIHRoZSBmaWx0ZXJfc3BlYyBzdHJpbmdzIGZvciBzdWJmaWx0ZXIgc3BlY3MsIG9ubHkgdGhlCisJICogdG9wIGxldmVsLgorCSAqLworCXN0cmluZ19saXN0X2NsZWFyKCZmaWx0ZXJfb3B0aW9ucy0+c3ViWzBdLmZpbHRlcl9zcGVjLCAvKmZyZWVfdXRpbD0qLzApOworfQorCit2b2lkIGxpc3Rfb2JqZWN0c19maWx0ZXJfZGllX2lmX3BvcHVsYXRlZCgKKwlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXJfb3B0aW9ucykKK3sKKwlpZiAoZmlsdGVyX29wdGlvbnMtPmNob2ljZSkKKwkJZGllKF8oIm11bHRpcGxlIGZpbHRlci1zcGVjcyBjYW5ub3QgYmUgY29tYmluZWQiKSk7Cit9CisKK3ZvaWQgcGFyc2VfbGlzdF9vYmplY3RzX2ZpbHRlcigKKwlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXJfb3B0aW9ucywKKwljb25zdCBjaGFyICphcmcpCit7CisJc3RydWN0IHN0cmJ1ZiBlcnJidWYgPSBTVFJCVUZfSU5JVDsKKwlpbnQgcGFyc2VfZXJyb3I7CisKKwlpZiAoIWZpbHRlcl9vcHRpb25zLT5jaG9pY2UpIHsKKwkJc3RyaW5nX2xpc3RfYXBwZW5kKCZmaWx0ZXJfb3B0aW9ucy0+ZmlsdGVyX3NwZWMsIHhzdHJkdXAoYXJnKSk7CisKKwkJcGFyc2VfZXJyb3IgPSBnZW50bHlfcGFyc2VfbGlzdF9vYmplY3RzX2ZpbHRlcigKKwkJCWZpbHRlcl9vcHRpb25zLCBhcmcsICZlcnJidWYpOworCX0gZWxzZSB7CisJCS8qCisJCSAqIE1ha2UgZmlsdGVyX29wdGlvbnMgYW4gTE9GQ19DT01CSU5FIHNwZWMgc28gd2UgY2FuIHRyaXZpYWxseQorCQkgKiBhZGQgc3Vic3BlY3MgdG8gaXQuCisJCSAqLworCQl0cmFuc2Zvcm1fdG9fY29tYmluZV90eXBlKGZpbHRlcl9vcHRpb25zKTsKKworCQlzdHJpbmdfbGlzdF9hcHBlbmQoJmZpbHRlcl9vcHRpb25zLT5maWx0ZXJfc3BlYywgeHN0cmR1cCgiKyIpKTsKKwkJZmlsdGVyX3NwZWNfYXBwZW5kX3VybGVuY29kZShmaWx0ZXJfb3B0aW9ucywgYXJnKTsKKwkJQUxMT0NfR1JPV19CWShmaWx0ZXJfb3B0aW9ucy0+c3ViLCBmaWx0ZXJfb3B0aW9ucy0+c3ViX25yLCAxLAorCQkJICAgICAgZmlsdGVyX29wdGlvbnMtPnN1Yl9hbGxvYyk7CisKKwkJcGFyc2VfZXJyb3IgPSBnZW50bHlfcGFyc2VfbGlzdF9vYmplY3RzX2ZpbHRlcigKKwkJCSZmaWx0ZXJfb3B0aW9ucy0+c3ViW2ZpbHRlcl9vcHRpb25zLT5zdWJfbnIgLSAxXSwgYXJnLAorCQkJJmVycmJ1Zik7CisJfQorCWlmIChwYXJzZV9lcnJvcikKKwkJZGllKCIlcyIsIGVycmJ1Zi5idWYpOwogfQogCiBpbnQgb3B0X3BhcnNlX2xpc3Rfb2JqZWN0c19maWx0ZXIoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LApAQCAtMTA0LDYyICsyNjMsMTA4IEBACiB7CiAJc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyX29wdGlvbnMgPSBvcHQtPnZhbHVlOwogCi0JaWYgKHVuc2V0IHx8ICFhcmcpIHsKKwlpZiAodW5zZXQgfHwgIWFyZykKIAkJbGlzdF9vYmplY3RzX2ZpbHRlcl9zZXRfbm9fZmlsdGVyKGZpbHRlcl9vcHRpb25zKTsKLQkJcmV0dXJuIDA7CisJZWxzZQorCQlwYXJzZV9saXN0X29iamVjdHNfZmlsdGVyKGZpbHRlcl9vcHRpb25zLCBhcmcpOworCXJldHVybiAwOworfQorCitjb25zdCBjaGFyICpsaXN0X29iamVjdHNfZmlsdGVyX3NwZWMoc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyKQoreworCWlmICghZmlsdGVyLT5maWx0ZXJfc3BlYy5ucikKKwkJQlVHKCJubyBmaWx0ZXJfc3BlYyBhdmFpbGFibGUgZm9yIHRoaXMgZmlsdGVyIik7CisJaWYgKGZpbHRlci0+ZmlsdGVyX3NwZWMubnIgIT0gMSkgeworCQlzdHJ1Y3Qgc3RyYnVmIGNvbmNhdHRlZCA9IFNUUkJVRl9JTklUOworCQlzdHJidWZfYWRkX3NlcGFyYXRlZF9zdHJpbmdfbGlzdCgKKwkJCSZjb25jYXR0ZWQsICIiLCAmZmlsdGVyLT5maWx0ZXJfc3BlYyk7CisJCXN0cmluZ19saXN0X2NsZWFyKCZmaWx0ZXItPmZpbHRlcl9zcGVjLCAvKmZyZWVfdXRpbD0qLzApOworCQlzdHJpbmdfbGlzdF9hcHBlbmQoCisJCQkmZmlsdGVyLT5maWx0ZXJfc3BlYywgc3RyYnVmX2RldGFjaCgmY29uY2F0dGVkLCBOVUxMKSk7CiAJfQogCi0JcmV0dXJuIHBhcnNlX2xpc3Rfb2JqZWN0c19maWx0ZXIoZmlsdGVyX29wdGlvbnMsIGFyZyk7CisJcmV0dXJuIGZpbHRlci0+ZmlsdGVyX3NwZWMuaXRlbXNbMF0uc3RyaW5nOworfQorCitjb25zdCBjaGFyICpleHBhbmRfbGlzdF9vYmplY3RzX2ZpbHRlcl9zcGVjKAorCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcikKK3sKKwlpZiAoZmlsdGVyLT5jaG9pY2UgPT0gTE9GQ19CTE9CX0xJTUlUKSB7CisJCXN0cnVjdCBzdHJidWYgZXhwYW5kZWRfc3BlYyA9IFNUUkJVRl9JTklUOworCQlzdHJidWZfYWRkZigmZXhwYW5kZWRfc3BlYywgImJsb2I6bGltaXQ9JWx1IiwKKwkJCSAgICBmaWx0ZXItPmJsb2JfbGltaXRfdmFsdWUpOworCQlzdHJpbmdfbGlzdF9jbGVhcigmZmlsdGVyLT5maWx0ZXJfc3BlYywgLypmcmVlX3V0aWw9Ki8wKTsKKwkJc3RyaW5nX2xpc3RfYXBwZW5kKAorCQkJJmZpbHRlci0+ZmlsdGVyX3NwZWMsCisJCQlzdHJidWZfZGV0YWNoKCZleHBhbmRlZF9zcGVjLCBOVUxMKSk7CisJfQorCisJcmV0dXJuIGxpc3Rfb2JqZWN0c19maWx0ZXJfc3BlYyhmaWx0ZXIpOwogfQogCiB2b2lkIGxpc3Rfb2JqZWN0c19maWx0ZXJfcmVsZWFzZSgKIAlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXJfb3B0aW9ucykKIHsKLQlmcmVlKGZpbHRlcl9vcHRpb25zLT5maWx0ZXJfc3BlYyk7Ci0JZnJlZShmaWx0ZXJfb3B0aW9ucy0+c3BhcnNlX29pZF92YWx1ZSk7Ci0JZnJlZShmaWx0ZXJfb3B0aW9ucy0+c3BhcnNlX3BhdGhfdmFsdWUpOworCXNpemVfdCBzdWI7CisKKwlpZiAoIWZpbHRlcl9vcHRpb25zKQorCQlyZXR1cm47CisJc3RyaW5nX2xpc3RfY2xlYXIoJmZpbHRlcl9vcHRpb25zLT5maWx0ZXJfc3BlYywgLypmcmVlX3V0aWw9Ki8wKTsKKwlmcmVlKGZpbHRlcl9vcHRpb25zLT5zcGFyc2Vfb2lkX25hbWUpOworCWZvciAoc3ViID0gMDsgc3ViIDwgZmlsdGVyX29wdGlvbnMtPnN1Yl9ucjsgc3ViKyspCisJCWxpc3Rfb2JqZWN0c19maWx0ZXJfcmVsZWFzZSgmZmlsdGVyX29wdGlvbnMtPnN1YltzdWJdKTsKKwlmcmVlKGZpbHRlcl9vcHRpb25zLT5zdWIpOwogCW1lbXNldChmaWx0ZXJfb3B0aW9ucywgMCwgc2l6ZW9mKCpmaWx0ZXJfb3B0aW9ucykpOwogfQogCiB2b2lkIHBhcnRpYWxfY2xvbmVfcmVnaXN0ZXIoCiAJY29uc3QgY2hhciAqcmVtb3RlLAotCWNvbnN0IHN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcl9vcHRpb25zKQorCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcl9vcHRpb25zKQogewotCS8qCi0JICogUmVjb3JkIHRoZSBuYW1lIG9mIHRoZSBwYXJ0aWFsIGNsb25lIHJlbW90ZSBpbiB0aGUKLQkgKiBjb25maWcgYW5kIGluIHRoZSBnbG9iYWwgdmFyaWFibGUgLS0gdGhlIGxhdHRlciBpcwotCSAqIHVzZWQgdGhyb3VnaG91dCB0byBpbmRpY2F0ZSB0aGF0IHBhcnRpYWwgY2xvbmUgaXMKLQkgKiBlbmFibGVkIGFuZCB0byBleHBlY3QgbWlzc2luZyBvYmplY3RzLgotCSAqLwotCWlmIChyZXBvc2l0b3J5X2Zvcm1hdF9wYXJ0aWFsX2Nsb25lICYmCi0JICAgICpyZXBvc2l0b3J5X2Zvcm1hdF9wYXJ0aWFsX2Nsb25lICYmCi0JICAgIHN0cmNtcChyZW1vdGUsIHJlcG9zaXRvcnlfZm9ybWF0X3BhcnRpYWxfY2xvbmUpKQotCQlkaWUoXygiY2Fubm90IGNoYW5nZSBwYXJ0aWFsIGNsb25lIHByb21pc29yIHJlbW90ZSIpKTsKKwljaGFyICpjZmdfbmFtZTsKKwljaGFyICpmaWx0ZXJfbmFtZTsKIAotCWdpdF9jb25maWdfc2V0KCJjb3JlLnJlcG9zaXRvcnlmb3JtYXR2ZXJzaW9uIiwgIjEiKTsKLQlnaXRfY29uZmlnX3NldCgiZXh0ZW5zaW9ucy5wYXJ0aWFsY2xvbmUiLCByZW1vdGUpOworCS8qIENoZWNrIGlmIGl0IGlzIGFscmVhZHkgcmVnaXN0ZXJlZCAqLworCWlmICghcHJvbWlzb3JfcmVtb3RlX2ZpbmQocmVtb3RlKSkgeworCQlnaXRfY29uZmlnX3NldCgiY29yZS5yZXBvc2l0b3J5Zm9ybWF0dmVyc2lvbiIsICIxIik7CiAKLQlyZXBvc2l0b3J5X2Zvcm1hdF9wYXJ0aWFsX2Nsb25lID0geHN0cmR1cChyZW1vdGUpOworCQkvKiBBZGQgcHJvbWlzb3IgY29uZmlnIGZvciB0aGUgcmVtb3RlICovCisJCWNmZ19uYW1lID0geHN0cmZtdCgicmVtb3RlLiVzLnByb21pc29yIiwgcmVtb3RlKTsKKwkJZ2l0X2NvbmZpZ19zZXQoY2ZnX25hbWUsICJ0cnVlIik7CisJCWZyZWUoY2ZnX25hbWUpOworCX0KIAogCS8qCiAJICogUmVjb3JkIHRoZSBpbml0aWFsIGZpbHRlci1zcGVjIGluIHRoZSBjb25maWcgYXMKIAkgKiB0aGUgZGVmYXVsdCBmb3Igc3Vic2VxdWVudCBmZXRjaGVzIGZyb20gdGhpcyByZW1vdGUuCiAJICovCi0JY29yZV9wYXJ0aWFsX2Nsb25lX2ZpbHRlcl9kZWZhdWx0ID0KLQkJeHN0cmR1cChmaWx0ZXJfb3B0aW9ucy0+ZmlsdGVyX3NwZWMpOwotCWdpdF9jb25maWdfc2V0KCJjb3JlLnBhcnRpYWxjbG9uZWZpbHRlciIsCi0JCSAgICAgICBjb3JlX3BhcnRpYWxfY2xvbmVfZmlsdGVyX2RlZmF1bHQpOworCWZpbHRlcl9uYW1lID0geHN0cmZtdCgicmVtb3RlLiVzLnBhcnRpYWxjbG9uZWZpbHRlciIsIHJlbW90ZSk7CisJLyogTkVFRFNXT1JLOiAnZXhwYW5kJyByZXN1bHQgbGVha2luZz8/PyAqLworCWdpdF9jb25maWdfc2V0KGZpbHRlcl9uYW1lLAorCQkgICAgICAgZXhwYW5kX2xpc3Rfb2JqZWN0c19maWx0ZXJfc3BlYyhmaWx0ZXJfb3B0aW9ucykpOworCWZyZWUoZmlsdGVyX25hbWUpOworCisJLyogTWFrZSBzdXJlIHRoZSBjb25maWcgaW5mbyBhcmUgcmVzZXQgKi8KKwlwcm9taXNvcl9yZW1vdGVfcmVpbml0KCk7CiB9CiAKIHZvaWQgcGFydGlhbF9jbG9uZV9nZXRfZGVmYXVsdF9maWx0ZXJfc3BlYygKLQlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXJfb3B0aW9ucykKKwlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXJfb3B0aW9ucywKKwljb25zdCBjaGFyICpyZW1vdGUpCiB7CisJc3RydWN0IHByb21pc29yX3JlbW90ZSAqcHJvbWlzb3IgPSBwcm9taXNvcl9yZW1vdGVfZmluZChyZW1vdGUpOworCXN0cnVjdCBzdHJidWYgZXJyYnVmID0gU1RSQlVGX0lOSVQ7CisKIAkvKgogCSAqIFBhcnNlIGRlZmF1bHQgdmFsdWUsIGJ1dCBzaWxlbnRseSBpZ25vcmUgaXQgaWYgaXQgaXMgaW52YWxpZC4KIAkgKi8KLQlpZiAoIWNvcmVfcGFydGlhbF9jbG9uZV9maWx0ZXJfZGVmYXVsdCkKKwlpZiAoIXByb21pc29yKQogCQlyZXR1cm47CisKKwlzdHJpbmdfbGlzdF9hcHBlbmQoJmZpbHRlcl9vcHRpb25zLT5maWx0ZXJfc3BlYywKKwkJCSAgIHByb21pc29yLT5wYXJ0aWFsX2Nsb25lX2ZpbHRlcik7CiAJZ2VudGx5X3BhcnNlX2xpc3Rfb2JqZWN0c19maWx0ZXIoZmlsdGVyX29wdGlvbnMsCi0JCQkJCSBjb3JlX3BhcnRpYWxfY2xvbmVfZmlsdGVyX2RlZmF1bHQsCi0JCQkJCSBOVUxMKTsKKwkJCQkJIHByb21pc29yLT5wYXJ0aWFsX2Nsb25lX2ZpbHRlciwKKwkJCQkJICZlcnJidWYpOworCXN0cmJ1Zl9yZWxlYXNlKCZlcnJidWYpOwogfQpkaWZmIC0tZ2l0IGEvbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmggYi9saXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaAppbmRleCBhZjY0ZTVjLi4yZmZiMzkyIDEwMDY0NAotLS0gYS9saXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaAorKysgYi9saXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaApAQCAtMiw2ICsyLDcgQEAKICNkZWZpbmUgTElTVF9PQkpFQ1RTX0ZJTFRFUl9PUFRJT05TX0gKIAogI2luY2x1ZGUgInBhcnNlLW9wdGlvbnMuaCIKKyNpbmNsdWRlICJzdHJpbmctbGlzdC5oIgogCiAvKgogICogVGhlIGxpc3Qgb2YgZGVmaW5lZCBmaWx0ZXJzIGZvciBsaXN0LW9iamVjdHMuCkBAIC0xMCw5ICsxMSw5IEBACiAJTE9GQ19ESVNBQkxFRCA9IDAsCiAJTE9GQ19CTE9CX05PTkUsCiAJTE9GQ19CTE9CX0xJTUlULAotCUxPRkNfVFJFRV9OT05FLAorCUxPRkNfVFJFRV9ERVBUSCwKIAlMT0ZDX1NQQVJTRV9PSUQsCi0JTE9GQ19TUEFSU0VfUEFUSCwKKwlMT0ZDX0NPTUJJTkUsCiAJTE9GQ19fQ09VTlQgLyogbXVzdCBiZSBsYXN0ICovCiB9OwogCkBAIC0yMCwxMCArMjEsMTMgQEAKIAkvKgogCSAqICdmaWx0ZXJfc3BlYycgaXMgdGhlIHJhdyBhcmd1bWVudCB2YWx1ZSBnaXZlbiBvbiB0aGUgY29tbWFuZCBsaW5lCiAJICogb3IgcHJvdG9jb2wgcmVxdWVzdC4gIChUaGUgcGFydCBhZnRlciB0aGUgIi0ta2V5d29yZD0iLikgIEZvcgotCSAqIGNvbW1hbmRzIHRoYXQgbGF1bmNoIGZpbHRlcmluZyBzdWItcHJvY2Vzc2VzLCB0aGlzIHZhbHVlIHNob3VsZCBiZQotCSAqIHBhc3NlZCB0byB0aGVtIGFzIHJlY2VpdmVkIGJ5IHRoZSBjdXJyZW50IHByb2Nlc3MuCisJICogY29tbWFuZHMgdGhhdCBsYXVuY2ggZmlsdGVyaW5nIHN1Yi1wcm9jZXNzZXMsIG9yIGZvciBjb21tdW5pY2F0aW9uCisJICogb3ZlciB0aGUgbmV0d29yaywgZG9uJ3QgdXNlIHRoaXMgdmFsdWU7IHVzZSB0aGUgcmVzdWx0IG9mCisJICogZXhwYW5kX2xpc3Rfb2JqZWN0c19maWx0ZXJfc3BlYygpIGluc3RlYWQuCisJICogVG8gZ2V0IHRoZSByYXcgZmlsdGVyIHNwZWMgZ2l2ZW4gYnkgdGhlIHVzZXIsIHVzZSB0aGUgcmVzdWx0IG9mCisJICogbGlzdF9vYmplY3RzX2ZpbHRlcl9zcGVjKCkuCiAJICovCi0JY2hhciAqZmlsdGVyX3NwZWM7CisJc3RydWN0IHN0cmluZ19saXN0IGZpbHRlcl9zcGVjOwogCiAJLyoKIAkgKiAnY2hvaWNlJyBpcyBkZXRlcm1pbmVkIGJ5IHBhcnNpbmcgdGhlIGZpbHRlci1zcGVjLiAgVGhpcyBpbmRpY2F0ZXMKQEAgLTM3LDE5ICs0MSw0MCBAQAogCXVuc2lnbmVkIGludCBub19maWx0ZXIgOiAxOwogCiAJLyoKLQkgKiBQYXJzZWQgdmFsdWVzIChmaWVsZHMpIGZyb20gd2l0aGluIHRoZSBmaWx0ZXItc3BlYy4gIFRoZXNlIGFyZQotCSAqIGNob2ljZS1zcGVjaWZpYzsgbm90IGFsbCB2YWx1ZXMgd2lsbCBiZSBkZWZpbmVkIGZvciBhbnkgZ2l2ZW4KLQkgKiBjaG9pY2UuCisJICogQkVHSU4gY2hvaWNlLXNwZWNpZmljIHBhcnNlZCB2YWx1ZXMgZnJvbSB3aXRoaW4gdGhlIGZpbHRlci1zcGVjLiBPbmx5CisJICogc29tZSB2YWx1ZXMgd2lsbCBiZSBkZWZpbmVkIGZvciBhbnkgZ2l2ZW4gY2hvaWNlLgogCSAqLwotCXN0cnVjdCBvYmplY3RfaWQgKnNwYXJzZV9vaWRfdmFsdWU7Ci0JY2hhciAqc3BhcnNlX3BhdGhfdmFsdWU7CisKKwljaGFyICpzcGFyc2Vfb2lkX25hbWU7CiAJdW5zaWduZWQgbG9uZyBibG9iX2xpbWl0X3ZhbHVlOworCXVuc2lnbmVkIGxvbmcgdHJlZV9leGNsdWRlX2RlcHRoOworCisJLyogTE9GQ19DT01CSU5FIHZhbHVlcyAqLworCisJLyogVGhpcyBhcnJheSBjb250YWlucyBhbGwgdGhlIHN1YmZpbHRlcnMgd2hpY2ggdGhpcyBmaWx0ZXIgY29tYmluZXMuICovCisJc2l6ZV90IHN1Yl9uciwgc3ViX2FsbG9jOworCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKnN1YjsKKworCS8qCisJICogRU5EIGNob2ljZS1zcGVjaWZpYyBwYXJzZWQgdmFsdWVzLgorCSAqLwogfTsKIAogLyogTm9ybWFsaXplZCBjb21tYW5kIGxpbmUgYXJndW1lbnRzICovCiAjZGVmaW5lIENMX0FSR19fRklMVEVSICJmaWx0ZXIiCiAKLWludCBwYXJzZV9saXN0X29iamVjdHNfZmlsdGVyKAordm9pZCBsaXN0X29iamVjdHNfZmlsdGVyX2RpZV9pZl9wb3B1bGF0ZWQoCisJc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyX29wdGlvbnMpOworCisvKgorICogUGFyc2VzIHRoZSBmaWx0ZXIgc3BlYyBzdHJpbmcgZ2l2ZW4gYnkgYXJnIGFuZCBlaXRoZXIgKDEpIHNpbXBseSBwbGFjZXMgdGhlCisgKiByZXN1bHQgaW4gZmlsdGVyX29wdGlvbnMgaWYgaXQgaXMgbm90IHlldCBwb3B1bGF0ZWQgb3IgKDIpIGNvbWJpbmVzIGl0IHdpdGgKKyAqIHRoZSBmaWx0ZXIgYWxyZWFkeSBpbiBmaWx0ZXJfb3B0aW9ucyBpZiBpdCBpcyBhbHJlYWR5IHBvcHVsYXRlZC4gSW4gdGhlIGNhc2UKKyAqIG9mICgyKSwgdGhlIGZpbHRlciBzcGVjcyBhcmUgY29tYmluZWQgYXMgaWYgc3BlY2lmaWVkIHdpdGggJ2NvbWJpbmU6Jy4KKyAqCisgKiBEaWVzIGFuZCBwcmludHMgYSB1c2VyLWZhY2luZyBtZXNzYWdlIGlmIGFuIGVycm9yIG9jY3Vycy4KKyAqLwordm9pZCBwYXJzZV9saXN0X29iamVjdHNfZmlsdGVyKAogCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcl9vcHRpb25zLAogCWNvbnN0IGNoYXIgKmFyZyk7CiAKQEAgLTYxLDYgKzg2LDI2IEBACiAJICBOXygib2JqZWN0IGZpbHRlcmluZyIpLCAwLCBcCiAJICBvcHRfcGFyc2VfbGlzdF9vYmplY3RzX2ZpbHRlciB9CiAKKy8qCisgKiBUcmFuc2xhdGVzIGFiYnJldmlhdGVkIG51bWJlcnMgaW4gdGhlIGZpbHRlcidzIGZpbHRlcl9zcGVjIGludG8gdGhlaXIKKyAqIGZ1bGx5LWV4cGFuZGVkIGZvcm1zIChlLmcuLCAibGltaXQ6YmxvYj0xayIgYmVjb21lcyAibGltaXQ6YmxvYj0xMDI0IikuCisgKiBSZXR1cm5zIGEgc3RyaW5nIG93bmVkIGJ5IHRoZSBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgb2JqZWN0LgorICoKKyAqIFRoaXMgZm9ybSBzaG91bGQgYmUgdXNlZCBpbnN0ZWFkIG9mIHRoZSByYXcgbGlzdF9vYmplY3RzX2ZpbHRlcl9zcGVjKCkKKyAqIHZhbHVlIHdoZW4gY29tbXVuaWNhdGluZyB3aXRoIGEgcmVtb3RlIHByb2Nlc3Mgb3Igc3VicHJvY2Vzcy4KKyAqLworY29uc3QgY2hhciAqZXhwYW5kX2xpc3Rfb2JqZWN0c19maWx0ZXJfc3BlYygKKwlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXIpOworCisvKgorICogUmV0dXJucyB0aGUgZmlsdGVyIHNwZWMgc3RyaW5nIG1vcmUgb3IgbGVzcyBpbiB0aGUgZm9ybSBhcyB0aGUgdXNlcgorICogZW50ZXJlZCBpdC4gVGhpcyBmb3JtIG9mIHRoZSBmaWx0ZXJfc3BlYyBjYW4gYmUgdXNlZCBpbiB1c2VyLWZhY2luZworICogbWVzc2FnZXMuICBSZXR1cm5zIGEgc3RyaW5nIG93bmVkIGJ5IHRoZSBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMKKyAqIG9iamVjdC4KKyAqLworY29uc3QgY2hhciAqbGlzdF9vYmplY3RzX2ZpbHRlcl9zcGVjKAorCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcik7CisKIHZvaWQgbGlzdF9vYmplY3RzX2ZpbHRlcl9yZWxlYXNlKAogCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcl9vcHRpb25zKTsKIApAQCAtNzMsOCArMTE4LDkgQEAKIAogdm9pZCBwYXJ0aWFsX2Nsb25lX3JlZ2lzdGVyKAogCWNvbnN0IGNoYXIgKnJlbW90ZSwKLQljb25zdCBzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXJfb3B0aW9ucyk7Ci12b2lkIHBhcnRpYWxfY2xvbmVfZ2V0X2RlZmF1bHRfZmlsdGVyX3NwZWMoCiAJc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyX29wdGlvbnMpOwordm9pZCBwYXJ0aWFsX2Nsb25lX2dldF9kZWZhdWx0X2ZpbHRlcl9zcGVjKAorCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcl9vcHRpb25zLAorCWNvbnN0IGNoYXIgKnJlbW90ZSk7CiAKICNlbmRpZiAvKiBMSVNUX09CSkVDVFNfRklMVEVSX09QVElPTlNfSCAqLwpkaWZmIC0tZ2l0IGEvbGlzdC1vYmplY3RzLWZpbHRlci5jIGIvbGlzdC1vYmplY3RzLWZpbHRlci5jCmluZGV4IDc2NWYzZGYuLjFlOGQ0ZTcgMTAwNjQ0Ci0tLSBhL2xpc3Qtb2JqZWN0cy1maWx0ZXIuYworKysgYi9saXN0LW9iamVjdHMtZmlsdGVyLmMKQEAgLTEwLDYgKzEwLDcgQEAKICNpbmNsdWRlICJsaXN0LW9iamVjdHMuaCIKICNpbmNsdWRlICJsaXN0LW9iamVjdHMtZmlsdGVyLmgiCiAjaW5jbHVkZSAibGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmgiCisjaW5jbHVkZSAib2lkbWFwLmgiCiAjaW5jbHVkZSAib2lkc2V0LmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCiAKQEAgLTI1LDIzICsyNiw1OCBAQAogICovCiAjZGVmaW5lIEZJTFRFUl9TSE9XTl9CVVRfUkVWSVNJVCAoMTw8MjEpCiAKLS8qCi0gKiBBIGZpbHRlciBmb3IgbGlzdC1vYmplY3RzIHRvIG9taXQgQUxMIGJsb2JzIGZyb20gdGhlIHRyYXZlcnNhbC4KLSAqIEFuZCB0byBPUFRJT05BTExZIGNvbGxlY3QgYSBsaXN0IG9mIHRoZSBvbWl0dGVkIE9JRHMuCi0gKi8KLXN0cnVjdCBmaWx0ZXJfYmxvYnNfbm9uZV9kYXRhIHsKK3N0cnVjdCBzdWJmaWx0ZXIgeworCXN0cnVjdCBmaWx0ZXIgKmZpbHRlcjsKKwlzdHJ1Y3Qgb2lkc2V0IHNlZW47CisJc3RydWN0IG9pZHNldCBvbWl0czsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIHNraXBfdHJlZTsKKwl1bnNpZ25lZCBpc19za2lwcGluZ190cmVlIDogMTsKK307CisKK3N0cnVjdCBmaWx0ZXIgeworCWVudW0gbGlzdF9vYmplY3RzX2ZpbHRlcl9yZXN1bHQgKCpmaWx0ZXJfb2JqZWN0X2ZuKSgKKwkJc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCWVudW0gbGlzdF9vYmplY3RzX2ZpbHRlcl9zaXR1YXRpb24gZmlsdGVyX3NpdHVhdGlvbiwKKwkJc3RydWN0IG9iamVjdCAqb2JqLAorCQljb25zdCBjaGFyICpwYXRobmFtZSwKKwkJY29uc3QgY2hhciAqZmlsZW5hbWUsCisJCXN0cnVjdCBvaWRzZXQgKm9taXRzLAorCQl2b2lkICpmaWx0ZXJfZGF0YSk7CisKKwkvKgorCSAqIE9wdGlvbmFsLiBJZiB0aGlzIGZ1bmN0aW9uIGlzIHN1cHBsaWVkIGFuZCB0aGUgZmlsdGVyIG5lZWRzCisJICogdG8gY29sbGVjdCBvbWl0cywgdGhlbiB0aGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCBvbmNlIGJlZm9yZQorCSAqIGZyZWVfZm4gaXMgY2FsbGVkLgorCSAqCisJICogVGhpcyBpcyByZXF1aXJlZCBiZWNhdXNlIHRoZSBmb2xsb3dpbmcgdHdvIGNvbmRpdGlvbnMgaG9sZDoKKwkgKgorCSAqICAgYS4gQSB0cmVlIGZpbHRlciBjYW4gYWRkIGFuZCByZW1vdmUgb2JqZWN0cyBhcyBhbiBvYmplY3QKKwkgKiAgICAgIGdyYXBoIGlzIHRyYXZlcnNlZC4KKwkgKiAgIGIuIEEgY29tYmluZSBmaWx0ZXIncyBvbWl0IHNldCBpcyB0aGUgdW5pb24gb2YgYWxsIGl0cworCSAqICAgICAgc3ViZmlsdGVycywgd2hpY2ggbWF5IGluY2x1ZGUgdHJlZTogZmlsdGVycy4KKwkgKgorCSAqIEFzIHN1Y2gsIHRoZSBvbWl0cyBzZXRzIG11c3QgYmUgc2VwYXJhdGUgc2V0cywgYW5kIGNhbiBvbmx5CisJICogYmUgdW5pb25lZCBhZnRlciB0aGUgdHJhdmVyc2FsIGlzIGNvbXBsZXRlZC4KKwkgKi8KKwl2b2lkICgqZmluYWxpemVfb21pdHNfZm4pKHN0cnVjdCBvaWRzZXQgKm9taXRzLCB2b2lkICpmaWx0ZXJfZGF0YSk7CisKKwl2b2lkICgqZnJlZV9mbikodm9pZCAqZmlsdGVyX2RhdGEpOworCisJdm9pZCAqZmlsdGVyX2RhdGE7CisKKwkvKiBJZiBub24tTlVMTCwgdGhlIGZpbHRlciBjb2xsZWN0cyBhIGxpc3Qgb2YgdGhlIG9taXR0ZWQgT0lEcyBoZXJlLiAqLwogCXN0cnVjdCBvaWRzZXQgKm9taXRzOwogfTsKIAogc3RhdGljIGVudW0gbGlzdF9vYmplY3RzX2ZpbHRlcl9yZXN1bHQgZmlsdGVyX2Jsb2JzX25vbmUoCisJc3RydWN0IHJlcG9zaXRvcnkgKnIsCiAJZW51bSBsaXN0X29iamVjdHNfZmlsdGVyX3NpdHVhdGlvbiBmaWx0ZXJfc2l0dWF0aW9uLAogCXN0cnVjdCBvYmplY3QgKm9iaiwKIAljb25zdCBjaGFyICpwYXRobmFtZSwKIAljb25zdCBjaGFyICpmaWxlbmFtZSwKKwlzdHJ1Y3Qgb2lkc2V0ICpvbWl0cywKIAl2b2lkICpmaWx0ZXJfZGF0YV8pCiB7Ci0Jc3RydWN0IGZpbHRlcl9ibG9ic19ub25lX2RhdGEgKmZpbHRlcl9kYXRhID0gZmlsdGVyX2RhdGFfOwotCiAJc3dpdGNoIChmaWx0ZXJfc2l0dWF0aW9uKSB7CiAJZGVmYXVsdDoKIAkJQlVHKCJ1bmtub3duIGZpbHRlcl9zaXR1YXRpb246ICVkIiwgZmlsdGVyX3NpdHVhdGlvbik7CkBAIC01OSw3OSArOTUsMTUxIEBACiAJCWFzc2VydChvYmotPnR5cGUgPT0gT0JKX0JMT0IpOwogCQlhc3NlcnQoKG9iai0+ZmxhZ3MgJiBTRUVOKSA9PSAwKTsKIAotCQlpZiAoZmlsdGVyX2RhdGEtPm9taXRzKQotCQkJb2lkc2V0X2luc2VydChmaWx0ZXJfZGF0YS0+b21pdHMsICZvYmotPm9pZCk7CisJCWlmIChvbWl0cykKKwkJCW9pZHNldF9pbnNlcnQob21pdHMsICZvYmotPm9pZCk7CiAJCXJldHVybiBMT0ZSX01BUktfU0VFTjsgLyogYnV0IG5vdCBMT0ZSX0RPX1NIT1cgKGhhcmQgb21pdCkgKi8KIAl9CiB9CiAKLXN0YXRpYyB2b2lkICpmaWx0ZXJfYmxvYnNfbm9uZV9faW5pdCgKLQlzdHJ1Y3Qgb2lkc2V0ICpvbWl0dGVkLAorc3RhdGljIHZvaWQgZmlsdGVyX2Jsb2JzX25vbmVfX2luaXQoCiAJc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyX29wdGlvbnMsCi0JZmlsdGVyX29iamVjdF9mbiAqZmlsdGVyX2ZuLAotCWZpbHRlcl9mcmVlX2ZuICpmaWx0ZXJfZnJlZV9mbikKKwlzdHJ1Y3QgZmlsdGVyICpmaWx0ZXIpCiB7Ci0Jc3RydWN0IGZpbHRlcl9ibG9ic19ub25lX2RhdGEgKmQgPSB4Y2FsbG9jKDEsIHNpemVvZigqZCkpOwotCWQtPm9taXRzID0gb21pdHRlZDsKLQotCSpmaWx0ZXJfZm4gPSBmaWx0ZXJfYmxvYnNfbm9uZTsKLQkqZmlsdGVyX2ZyZWVfZm4gPSBmcmVlOwotCXJldHVybiBkOworCWZpbHRlci0+ZmlsdGVyX29iamVjdF9mbiA9IGZpbHRlcl9ibG9ic19ub25lOworCWZpbHRlci0+ZnJlZV9mbiA9IGZyZWU7CiB9CiAKIC8qCiAgKiBBIGZpbHRlciBmb3IgbGlzdC1vYmplY3RzIHRvIG9taXQgQUxMIHRyZWVzIGFuZCBibG9icyBmcm9tIHRoZSB0cmF2ZXJzYWwuCiAgKiBDYW4gT1BUSU9OQUxMWSBjb2xsZWN0IGEgbGlzdCBvZiB0aGUgb21pdHRlZCBPSURzLgogICovCi1zdHJ1Y3QgZmlsdGVyX3RyZWVzX25vbmVfZGF0YSB7Ci0Jc3RydWN0IG9pZHNldCAqb21pdHM7CitzdHJ1Y3QgZmlsdGVyX3RyZWVzX2RlcHRoX2RhdGEgeworCS8qCisJICogTWFwcyB0cmVlcyB0byB0aGUgbWluaW11bSBkZXB0aCBhdCB3aGljaCB0aGV5IHdlcmUgc2Vlbi4gSXQgaXMgbm90CisJICogbmVjZXNzYXJ5IHRvIHJlLXRyYXZlcnNlIGEgdHJlZSBhdCBkZWVwZXIgb3IgZXF1YWwgZGVwdGhzIHRoYW4gaXQgaGFzCisJICogYWxyZWFkeSBiZWVuIHRyYXZlcnNlZC4KKwkgKgorCSAqIFdlIGNhbid0IHVzZSBMT0ZSX01BUktfU0VFTiBmb3IgdHJlZSBvYmplY3RzIHNpbmNlIHRoaXMgd2lsbCBwcmV2ZW50CisJICogaXQgZnJvbSBiZWluZyB0cmF2ZXJzZWQgYXQgc2hhbGxvd2VyIGRlcHRocy4KKwkgKi8KKwlzdHJ1Y3Qgb2lkbWFwIHNlZW5fYXRfZGVwdGg7CisKKwl1bnNpZ25lZCBsb25nIGV4Y2x1ZGVfZGVwdGg7CisJdW5zaWduZWQgbG9uZyBjdXJyZW50X2RlcHRoOwogfTsKIAotc3RhdGljIGVudW0gbGlzdF9vYmplY3RzX2ZpbHRlcl9yZXN1bHQgZmlsdGVyX3RyZWVzX25vbmUoCitzdHJ1Y3Qgc2Vlbl9tYXBfZW50cnkgeworCXN0cnVjdCBvaWRtYXBfZW50cnkgYmFzZTsKKwlzaXplX3QgZGVwdGg7Cit9OworCisvKiBSZXR1cm5zIDEgaWYgdGhlIG9pZCB3YXMgaW4gdGhlIG9taXRzIHNldCBiZWZvcmUgaXQgd2FzIGludm9rZWQuICovCitzdGF0aWMgaW50IGZpbHRlcl90cmVlc191cGRhdGVfb21pdHMoCisJc3RydWN0IG9iamVjdCAqb2JqLAorCXN0cnVjdCBvaWRzZXQgKm9taXRzLAorCWludCBpbmNsdWRlX2l0KQoreworCWlmICghb21pdHMpCisJCXJldHVybiAwOworCisJaWYgKGluY2x1ZGVfaXQpCisJCXJldHVybiBvaWRzZXRfcmVtb3ZlKG9taXRzLCAmb2JqLT5vaWQpOworCWVsc2UKKwkJcmV0dXJuIG9pZHNldF9pbnNlcnQob21pdHMsICZvYmotPm9pZCk7Cit9CisKK3N0YXRpYyBlbnVtIGxpc3Rfb2JqZWN0c19maWx0ZXJfcmVzdWx0IGZpbHRlcl90cmVlc19kZXB0aCgKKwlzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKIAllbnVtIGxpc3Rfb2JqZWN0c19maWx0ZXJfc2l0dWF0aW9uIGZpbHRlcl9zaXR1YXRpb24sCiAJc3RydWN0IG9iamVjdCAqb2JqLAogCWNvbnN0IGNoYXIgKnBhdGhuYW1lLAogCWNvbnN0IGNoYXIgKmZpbGVuYW1lLAorCXN0cnVjdCBvaWRzZXQgKm9taXRzLAogCXZvaWQgKmZpbHRlcl9kYXRhXykKIHsKLQlzdHJ1Y3QgZmlsdGVyX3RyZWVzX25vbmVfZGF0YSAqZmlsdGVyX2RhdGEgPSBmaWx0ZXJfZGF0YV87CisJc3RydWN0IGZpbHRlcl90cmVlc19kZXB0aF9kYXRhICpmaWx0ZXJfZGF0YSA9IGZpbHRlcl9kYXRhXzsKKwlzdHJ1Y3Qgc2Vlbl9tYXBfZW50cnkgKnNlZW5faW5mbzsKKwlpbnQgaW5jbHVkZV9pdCA9IGZpbHRlcl9kYXRhLT5jdXJyZW50X2RlcHRoIDwKKwkJZmlsdGVyX2RhdGEtPmV4Y2x1ZGVfZGVwdGg7CisJaW50IGZpbHRlcl9yZXM7CisJaW50IGFscmVhZHlfc2VlbjsKKworCS8qCisJICogTm90ZSB0aGF0IHdlIGRvIG5vdCB1c2UgX01BUktfU0VFTiBpbiBvcmRlciB0byBhbGxvdyByZS10cmF2ZXJzYWwgaW4KKwkgKiBjYXNlIHdlIGVuY291bnRlciBhIHRyZWUgb3IgYmxvYiBhZ2FpbiBhdCBhIHNoYWxsb3dlciBkZXB0aC4KKwkgKi8KIAogCXN3aXRjaCAoZmlsdGVyX3NpdHVhdGlvbikgewogCWRlZmF1bHQ6CiAJCUJVRygidW5rbm93biBmaWx0ZXJfc2l0dWF0aW9uOiAlZCIsIGZpbHRlcl9zaXR1YXRpb24pOwogCi0JY2FzZSBMT0ZTX0JFR0lOX1RSRUU6Ci0JY2FzZSBMT0ZTX0JMT0I6Ci0JCWlmIChmaWx0ZXJfZGF0YS0+b21pdHMpIHsKLQkJCW9pZHNldF9pbnNlcnQoZmlsdGVyX2RhdGEtPm9taXRzLCAmb2JqLT5vaWQpOwotCQkJLyogX01BUktfU0VFTiBidXQgbm90IF9ET19TSE9XIChoYXJkIG9taXQpICovCi0JCQlyZXR1cm4gTE9GUl9NQVJLX1NFRU47Ci0JCX0gZWxzZSB7Ci0JCQkvKgotCQkJICogTm90IGNvbGxlY3Rpbmcgb21pdHMgc28gbm8gbmVlZCB0byB0byB0cmF2ZXJzZSB0cmVlLgotCQkJICovCi0JCQlyZXR1cm4gTE9GUl9TS0lQX1RSRUUgfCBMT0ZSX01BUktfU0VFTjsKLQkJfQotCiAJY2FzZSBMT0ZTX0VORF9UUkVFOgogCQlhc3NlcnQob2JqLT50eXBlID09IE9CSl9UUkVFKTsKKwkJZmlsdGVyX2RhdGEtPmN1cnJlbnRfZGVwdGgtLTsKIAkJcmV0dXJuIExPRlJfWkVSTzsKIAorCWNhc2UgTE9GU19CTE9COgorCQlmaWx0ZXJfdHJlZXNfdXBkYXRlX29taXRzKG9iaiwgb21pdHMsIGluY2x1ZGVfaXQpOworCQlyZXR1cm4gaW5jbHVkZV9pdCA/IExPRlJfTUFSS19TRUVOIHwgTE9GUl9ET19TSE9XIDogTE9GUl9aRVJPOworCisJY2FzZSBMT0ZTX0JFR0lOX1RSRUU6CisJCXNlZW5faW5mbyA9IG9pZG1hcF9nZXQoCisJCQkmZmlsdGVyX2RhdGEtPnNlZW5fYXRfZGVwdGgsICZvYmotPm9pZCk7CisJCWlmICghc2Vlbl9pbmZvKSB7CisJCQlzZWVuX2luZm8gPSB4Y2FsbG9jKDEsIHNpemVvZigqc2Vlbl9pbmZvKSk7CisJCQlvaWRjcHkoJnNlZW5faW5mby0+YmFzZS5vaWQsICZvYmotPm9pZCk7CisJCQlzZWVuX2luZm8tPmRlcHRoID0gZmlsdGVyX2RhdGEtPmN1cnJlbnRfZGVwdGg7CisJCQlvaWRtYXBfcHV0KCZmaWx0ZXJfZGF0YS0+c2Vlbl9hdF9kZXB0aCwgc2Vlbl9pbmZvKTsKKwkJCWFscmVhZHlfc2VlbiA9IDA7CisJCX0gZWxzZSB7CisJCQlhbHJlYWR5X3NlZW4gPQorCQkJCWZpbHRlcl9kYXRhLT5jdXJyZW50X2RlcHRoID49IHNlZW5faW5mby0+ZGVwdGg7CisJCX0KKworCQlpZiAoYWxyZWFkeV9zZWVuKSB7CisJCQlmaWx0ZXJfcmVzID0gTE9GUl9TS0lQX1RSRUU7CisJCX0gZWxzZSB7CisJCQlpbnQgYmVlbl9vbWl0dGVkID0gZmlsdGVyX3RyZWVzX3VwZGF0ZV9vbWl0cygKKwkJCQlvYmosIG9taXRzLCBpbmNsdWRlX2l0KTsKKwkJCXNlZW5faW5mby0+ZGVwdGggPSBmaWx0ZXJfZGF0YS0+Y3VycmVudF9kZXB0aDsKKworCQkJaWYgKGluY2x1ZGVfaXQpCisJCQkJZmlsdGVyX3JlcyA9IExPRlJfRE9fU0hPVzsKKwkJCWVsc2UgaWYgKG9taXRzICYmICFiZWVuX29taXR0ZWQpCisJCQkJLyoKKwkJCQkgKiBNdXN0IHVwZGF0ZSBvbWl0IGluZm9ybWF0aW9uIG9mIGNoaWxkcmVuCisJCQkJICogcmVjdXJzaXZlbHk7IHRoZXkgaGF2ZSBub3QgYmVlbiBvbWl0dGVkIHlldC4KKwkJCQkgKi8KKwkJCQlmaWx0ZXJfcmVzID0gTE9GUl9aRVJPOworCQkJZWxzZQorCQkJCWZpbHRlcl9yZXMgPSBMT0ZSX1NLSVBfVFJFRTsKKwkJfQorCisJCWZpbHRlcl9kYXRhLT5jdXJyZW50X2RlcHRoKys7CisJCXJldHVybiBmaWx0ZXJfcmVzOwogCX0KIH0KIAotc3RhdGljIHZvaWQqIGZpbHRlcl90cmVlc19ub25lX19pbml0KAotCXN0cnVjdCBvaWRzZXQgKm9taXR0ZWQsCi0Jc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyX29wdGlvbnMsCi0JZmlsdGVyX29iamVjdF9mbiAqZmlsdGVyX2ZuLAotCWZpbHRlcl9mcmVlX2ZuICpmaWx0ZXJfZnJlZV9mbikKLXsKLQlzdHJ1Y3QgZmlsdGVyX3RyZWVzX25vbmVfZGF0YSAqZCA9IHhjYWxsb2MoMSwgc2l6ZW9mKCpkKSk7Ci0JZC0+b21pdHMgPSBvbWl0dGVkOworc3RhdGljIHZvaWQgZmlsdGVyX3RyZWVzX2ZyZWUodm9pZCAqZmlsdGVyX2RhdGEpIHsKKwlzdHJ1Y3QgZmlsdGVyX3RyZWVzX2RlcHRoX2RhdGEgKmQgPSBmaWx0ZXJfZGF0YTsKKwlpZiAoIWQpCisJCXJldHVybjsKKwlvaWRtYXBfZnJlZSgmZC0+c2Vlbl9hdF9kZXB0aCwgMSk7CisJZnJlZShkKTsKK30KIAotCSpmaWx0ZXJfZm4gPSBmaWx0ZXJfdHJlZXNfbm9uZTsKLQkqZmlsdGVyX2ZyZWVfZm4gPSBmcmVlOwotCXJldHVybiBkOworc3RhdGljIHZvaWQgZmlsdGVyX3RyZWVzX2RlcHRoX19pbml0KAorCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcl9vcHRpb25zLAorCXN0cnVjdCBmaWx0ZXIgKmZpbHRlcikKK3sKKwlzdHJ1Y3QgZmlsdGVyX3RyZWVzX2RlcHRoX2RhdGEgKmQgPSB4Y2FsbG9jKDEsIHNpemVvZigqZCkpOworCW9pZG1hcF9pbml0KCZkLT5zZWVuX2F0X2RlcHRoLCAwKTsKKwlkLT5leGNsdWRlX2RlcHRoID0gZmlsdGVyX29wdGlvbnMtPnRyZWVfZXhjbHVkZV9kZXB0aDsKKwlkLT5jdXJyZW50X2RlcHRoID0gMDsKKworCWZpbHRlci0+ZmlsdGVyX2RhdGEgPSBkOworCWZpbHRlci0+ZmlsdGVyX29iamVjdF9mbiA9IGZpbHRlcl90cmVlc19kZXB0aDsKKwlmaWx0ZXItPmZyZWVfZm4gPSBmaWx0ZXJfdHJlZXNfZnJlZTsKIH0KIAogLyoKQEAgLTEzOSwxNSArMjQ3LDE2IEBACiAgKiBBbmQgdG8gT1BUSU9OQUxMWSBjb2xsZWN0IGEgbGlzdCBvZiB0aGUgb21pdHRlZCBPSURzLgogICovCiBzdHJ1Y3QgZmlsdGVyX2Jsb2JzX2xpbWl0X2RhdGEgewotCXN0cnVjdCBvaWRzZXQgKm9taXRzOwogCXVuc2lnbmVkIGxvbmcgbWF4X2J5dGVzOwogfTsKIAogc3RhdGljIGVudW0gbGlzdF9vYmplY3RzX2ZpbHRlcl9yZXN1bHQgZmlsdGVyX2Jsb2JzX2xpbWl0KAorCXN0cnVjdCByZXBvc2l0b3J5ICpyLAogCWVudW0gbGlzdF9vYmplY3RzX2ZpbHRlcl9zaXR1YXRpb24gZmlsdGVyX3NpdHVhdGlvbiwKIAlzdHJ1Y3Qgb2JqZWN0ICpvYmosCiAJY29uc3QgY2hhciAqcGF0aG5hbWUsCiAJY29uc3QgY2hhciAqZmlsZW5hbWUsCisJc3RydWN0IG9pZHNldCAqb21pdHMsCiAJdm9pZCAqZmlsdGVyX2RhdGFfKQogewogCXN0cnVjdCBmaWx0ZXJfYmxvYnNfbGltaXRfZGF0YSAqZmlsdGVyX2RhdGEgPSBmaWx0ZXJfZGF0YV87CkBAIC0xNzEsNyArMjgwLDcgQEAKIAkJYXNzZXJ0KG9iai0+dHlwZSA9PSBPQkpfQkxPQik7CiAJCWFzc2VydCgob2JqLT5mbGFncyAmIFNFRU4pID09IDApOwogCi0JCXQgPSBvaWRfb2JqZWN0X2luZm8odGhlX3JlcG9zaXRvcnksICZvYmotPm9pZCwgJm9iamVjdF9sZW5ndGgpOworCQl0ID0gb2lkX29iamVjdF9pbmZvKHIsICZvYmotPm9pZCwgJm9iamVjdF9sZW5ndGgpOwogCQlpZiAodCAhPSBPQkpfQkxPQikgeyAvKiBwcm9iYWJseSBPQkpfTk9ORSAqLwogCQkJLyoKIAkJCSAqIFdlIERPIE5PVCBoYXZlIHRoZSBibG9iIGxvY2FsbHksIHNvIHdlIGNhbm5vdApAQCAtMTg1LDMwICsyOTQsMjcgQEAKIAkJaWYgKG9iamVjdF9sZW5ndGggPCBmaWx0ZXJfZGF0YS0+bWF4X2J5dGVzKQogCQkJZ290byBpbmNsdWRlX2l0OwogCi0JCWlmIChmaWx0ZXJfZGF0YS0+b21pdHMpCi0JCQlvaWRzZXRfaW5zZXJ0KGZpbHRlcl9kYXRhLT5vbWl0cywgJm9iai0+b2lkKTsKKwkJaWYgKG9taXRzKQorCQkJb2lkc2V0X2luc2VydChvbWl0cywgJm9iai0+b2lkKTsKIAkJcmV0dXJuIExPRlJfTUFSS19TRUVOOyAvKiBidXQgbm90IExPRlJfRE9fU0hPVyAoaGFyZCBvbWl0KSAqLwogCX0KIAogaW5jbHVkZV9pdDoKLQlpZiAoZmlsdGVyX2RhdGEtPm9taXRzKQotCQlvaWRzZXRfcmVtb3ZlKGZpbHRlcl9kYXRhLT5vbWl0cywgJm9iai0+b2lkKTsKKwlpZiAob21pdHMpCisJCW9pZHNldF9yZW1vdmUob21pdHMsICZvYmotPm9pZCk7CiAJcmV0dXJuIExPRlJfTUFSS19TRUVOIHwgTE9GUl9ET19TSE9XOwogfQogCi1zdGF0aWMgdm9pZCAqZmlsdGVyX2Jsb2JzX2xpbWl0X19pbml0KAotCXN0cnVjdCBvaWRzZXQgKm9taXR0ZWQsCitzdGF0aWMgdm9pZCBmaWx0ZXJfYmxvYnNfbGltaXRfX2luaXQoCiAJc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyX29wdGlvbnMsCi0JZmlsdGVyX29iamVjdF9mbiAqZmlsdGVyX2ZuLAotCWZpbHRlcl9mcmVlX2ZuICpmaWx0ZXJfZnJlZV9mbikKKwlzdHJ1Y3QgZmlsdGVyICpmaWx0ZXIpCiB7CiAJc3RydWN0IGZpbHRlcl9ibG9ic19saW1pdF9kYXRhICpkID0geGNhbGxvYygxLCBzaXplb2YoKmQpKTsKLQlkLT5vbWl0cyA9IG9taXR0ZWQ7CiAJZC0+bWF4X2J5dGVzID0gZmlsdGVyX29wdGlvbnMtPmJsb2JfbGltaXRfdmFsdWU7CiAKLQkqZmlsdGVyX2ZuID0gZmlsdGVyX2Jsb2JzX2xpbWl0OwotCSpmaWx0ZXJfZnJlZV9mbiA9IGZyZWU7Ci0JcmV0dXJuIGQ7CisJZmlsdGVyLT5maWx0ZXJfZGF0YSA9IGQ7CisJZmlsdGVyLT5maWx0ZXJfb2JqZWN0X2ZuID0gZmlsdGVyX2Jsb2JzX2xpbWl0OworCWZpbHRlci0+ZnJlZV9mbiA9IGZyZWU7CiB9CiAKIC8qCkBAIC0yMjIsMTIgKzMyOCwxMiBAQAogICovCiBzdHJ1Y3QgZnJhbWUgewogCS8qCi0JICogZGVmdmFsIGlzIHRoZSB1c3VhbCBkZWZhdWx0IGluY2x1ZGUvZXhjbHVkZSB2YWx1ZSB0aGF0CisJICogZGVmYXVsdF9tYXRjaCBpcyB0aGUgdXN1YWwgZGVmYXVsdCBpbmNsdWRlL2V4Y2x1ZGUgdmFsdWUgdGhhdAogCSAqIHNob3VsZCBiZSBpbmhlcml0ZWQgYXMgd2UgcmVjdXJzZSBpbnRvIGRpcmVjdG9yaWVzIGJhc2VkCiAJICogdXBvbiBwYXR0ZXJuIG1hdGNoaW5nIG9mIHRoZSBkaXJlY3RvcnkgaXRzZWxmIG9yIG9mIGEKIAkgKiBjb250YWluaW5nIGRpcmVjdG9yeS4KIAkgKi8KLQlpbnQgZGVmdmFsOworCWVudW0gcGF0dGVybl9tYXRjaF9yZXN1bHQgZGVmYXVsdF9tYXRjaDsKIAogCS8qCiAJICogMSBpZiB0aGUgZGlyZWN0b3J5IChyZWN1cnNpdmVseSkgY29udGFpbnMgYW55IHByb3Zpc2lvbmFsbHkKQEAgLTI0MSwyMyArMzQ3LDI1IEBACiB9OwogCiBzdHJ1Y3QgZmlsdGVyX3NwYXJzZV9kYXRhIHsKLQlzdHJ1Y3Qgb2lkc2V0ICpvbWl0czsKLQlzdHJ1Y3QgZXhjbHVkZV9saXN0IGVsOworCXN0cnVjdCBwYXR0ZXJuX2xpc3QgcGw7CiAKIAlzaXplX3QgbnIsIGFsbG9jOwogCXN0cnVjdCBmcmFtZSAqYXJyYXlfZnJhbWU7CiB9OwogCiBzdGF0aWMgZW51bSBsaXN0X29iamVjdHNfZmlsdGVyX3Jlc3VsdCBmaWx0ZXJfc3BhcnNlKAorCXN0cnVjdCByZXBvc2l0b3J5ICpyLAogCWVudW0gbGlzdF9vYmplY3RzX2ZpbHRlcl9zaXR1YXRpb24gZmlsdGVyX3NpdHVhdGlvbiwKIAlzdHJ1Y3Qgb2JqZWN0ICpvYmosCiAJY29uc3QgY2hhciAqcGF0aG5hbWUsCiAJY29uc3QgY2hhciAqZmlsZW5hbWUsCisJc3RydWN0IG9pZHNldCAqb21pdHMsCiAJdm9pZCAqZmlsdGVyX2RhdGFfKQogewogCXN0cnVjdCBmaWx0ZXJfc3BhcnNlX2RhdGEgKmZpbHRlcl9kYXRhID0gZmlsdGVyX2RhdGFfOwotCWludCB2YWwsIGR0eXBlOworCWludCBkdHlwZTsKIAlzdHJ1Y3QgZnJhbWUgKmZyYW1lOworCWVudW0gcGF0dGVybl9tYXRjaF9yZXN1bHQgbWF0Y2g7CiAKIAlzd2l0Y2ggKGZpbHRlcl9zaXR1YXRpb24pIHsKIAlkZWZhdWx0OgpAQCAtMjY2LDE3ICszNzQsMTcgQEAKIAljYXNlIExPRlNfQkVHSU5fVFJFRToKIAkJYXNzZXJ0KG9iai0+dHlwZSA9PSBPQkpfVFJFRSk7CiAJCWR0eXBlID0gRFRfRElSOwotCQl2YWwgPSBpc19leGNsdWRlZF9mcm9tX2xpc3QocGF0aG5hbWUsIHN0cmxlbihwYXRobmFtZSksCi0JCQkJCSAgICBmaWxlbmFtZSwgJmR0eXBlLCAmZmlsdGVyX2RhdGEtPmVsLAotCQkJCQkgICAgJnRoZV9pbmRleCk7Ci0JCWlmICh2YWwgPCAwKQotCQkJdmFsID0gZmlsdGVyX2RhdGEtPmFycmF5X2ZyYW1lW2ZpbHRlcl9kYXRhLT5ucl0uZGVmdmFsOworCQltYXRjaCA9IHBhdGhfbWF0Y2hlc19wYXR0ZXJuX2xpc3QocGF0aG5hbWUsIHN0cmxlbihwYXRobmFtZSksCisJCQkJCQkgIGZpbGVuYW1lLCAmZHR5cGUsICZmaWx0ZXJfZGF0YS0+cGwsCisJCQkJCQkgIHItPmluZGV4KTsKKwkJaWYgKG1hdGNoID09IFVOREVDSURFRCkKKwkJCW1hdGNoID0gZmlsdGVyX2RhdGEtPmFycmF5X2ZyYW1lW2ZpbHRlcl9kYXRhLT5uciAtIDFdLmRlZmF1bHRfbWF0Y2g7CiAKIAkJQUxMT0NfR1JPVyhmaWx0ZXJfZGF0YS0+YXJyYXlfZnJhbWUsIGZpbHRlcl9kYXRhLT5uciArIDEsCiAJCQkgICBmaWx0ZXJfZGF0YS0+YWxsb2MpOwotCQlmaWx0ZXJfZGF0YS0+bnIrKzsKLQkJZmlsdGVyX2RhdGEtPmFycmF5X2ZyYW1lW2ZpbHRlcl9kYXRhLT5ucl0uZGVmdmFsID0gdmFsOworCQlmaWx0ZXJfZGF0YS0+YXJyYXlfZnJhbWVbZmlsdGVyX2RhdGEtPm5yXS5kZWZhdWx0X21hdGNoID0gbWF0Y2g7CiAJCWZpbHRlcl9kYXRhLT5hcnJheV9mcmFtZVtmaWx0ZXJfZGF0YS0+bnJdLmNoaWxkX3Byb3Zfb21pdCA9IDA7CisJCWZpbHRlcl9kYXRhLT5ucisrOwogCiAJCS8qCiAJCSAqIEEgZGlyZWN0b3J5IHdpdGggdGhpcyB0cmVlIE9JRCBtYXkgYXBwZWFyIGluIG11bHRpcGxlCkBAIC0zMDEsMTYgKzQwOSwxNSBAQAogCiAJY2FzZSBMT0ZTX0VORF9UUkVFOgogCQlhc3NlcnQob2JqLT50eXBlID09IE9CSl9UUkVFKTsKLQkJYXNzZXJ0KGZpbHRlcl9kYXRhLT5uciA+IDApOworCQlhc3NlcnQoZmlsdGVyX2RhdGEtPm5yID4gMSk7CiAKLQkJZnJhbWUgPSAmZmlsdGVyX2RhdGEtPmFycmF5X2ZyYW1lW2ZpbHRlcl9kYXRhLT5ucl07Ci0JCWZpbHRlcl9kYXRhLT5uci0tOworCQlmcmFtZSA9ICZmaWx0ZXJfZGF0YS0+YXJyYXlfZnJhbWVbLS1maWx0ZXJfZGF0YS0+bnJdOwogCiAJCS8qCiAJCSAqIFRlbGwgb3VyIHBhcmVudCBkaXJlY3RvcnkgaWYgYW55IG9mIG91ciBjaGlsZHJlbiB3ZXJlCiAJCSAqIHByb3Zpc2lvbmFsbHkgb21pdHRlZC4KIAkJICovCi0JCWZpbHRlcl9kYXRhLT5hcnJheV9mcmFtZVtmaWx0ZXJfZGF0YS0+bnJdLmNoaWxkX3Byb3Zfb21pdCB8PQorCQlmaWx0ZXJfZGF0YS0+YXJyYXlfZnJhbWVbZmlsdGVyX2RhdGEtPm5yIC0gMV0uY2hpbGRfcHJvdl9vbWl0IHw9CiAJCQlmcmFtZS0+Y2hpbGRfcHJvdl9vbWl0OwogCiAJCS8qCkBAIC0zMjYsMTcgKzQzMywxNyBAQAogCQlhc3NlcnQob2JqLT50eXBlID09IE9CSl9CTE9CKTsKIAkJYXNzZXJ0KChvYmotPmZsYWdzICYgU0VFTikgPT0gMCk7CiAKLQkJZnJhbWUgPSAmZmlsdGVyX2RhdGEtPmFycmF5X2ZyYW1lW2ZpbHRlcl9kYXRhLT5ucl07CisJCWZyYW1lID0gJmZpbHRlcl9kYXRhLT5hcnJheV9mcmFtZVtmaWx0ZXJfZGF0YS0+bnIgLSAxXTsKIAogCQlkdHlwZSA9IERUX1JFRzsKLQkJdmFsID0gaXNfZXhjbHVkZWRfZnJvbV9saXN0KHBhdGhuYW1lLCBzdHJsZW4ocGF0aG5hbWUpLAotCQkJCQkgICAgZmlsZW5hbWUsICZkdHlwZSwgJmZpbHRlcl9kYXRhLT5lbCwKLQkJCQkJICAgICZ0aGVfaW5kZXgpOwotCQlpZiAodmFsIDwgMCkKLQkJCXZhbCA9IGZyYW1lLT5kZWZ2YWw7Ci0JCWlmICh2YWwgPiAwKSB7Ci0JCQlpZiAoZmlsdGVyX2RhdGEtPm9taXRzKQotCQkJCW9pZHNldF9yZW1vdmUoZmlsdGVyX2RhdGEtPm9taXRzLCAmb2JqLT5vaWQpOworCQltYXRjaCA9IHBhdGhfbWF0Y2hlc19wYXR0ZXJuX2xpc3QocGF0aG5hbWUsIHN0cmxlbihwYXRobmFtZSksCisJCQkJCSAgICBmaWxlbmFtZSwgJmR0eXBlLCAmZmlsdGVyX2RhdGEtPnBsLAorCQkJCQkgICAgci0+aW5kZXgpOworCQlpZiAobWF0Y2ggPT0gVU5ERUNJREVEKQorCQkJbWF0Y2ggPSBmcmFtZS0+ZGVmYXVsdF9tYXRjaDsKKwkJaWYgKG1hdGNoID09IE1BVENIRUQpIHsKKwkJCWlmIChvbWl0cykKKwkJCQlvaWRzZXRfcmVtb3ZlKG9taXRzLCAmb2JqLT5vaWQpOwogCQkJcmV0dXJuIExPRlJfTUFSS19TRUVOIHwgTE9GUl9ET19TSE9XOwogCQl9CiAKQEAgLTM1MCw4ICs0NTcsOCBAQAogCQkgKiBMZWF2ZSB0aGUgTE9GUl8gYml0cyB1bnNldCBzbyB0aGF0IGlmIHRoZSBibG9iIGFwcGVhcnMKIAkJICogYWdhaW4gaW4gdGhlIHRyYXZlcnNhbCwgd2Ugd2lsbCBiZSBhc2tlZCBhZ2Fpbi4KIAkJICovCi0JCWlmIChmaWx0ZXJfZGF0YS0+b21pdHMpCi0JCQlvaWRzZXRfaW5zZXJ0KGZpbHRlcl9kYXRhLT5vbWl0cywgJm9iai0+b2lkKTsKKwkJaWYgKG9taXRzKQorCQkJb2lkc2V0X2luc2VydChvbWl0cywgJm9iai0+b2lkKTsKIAogCQkvKgogCQkgKiBSZW1lbWJlciB0aGF0IGF0IGxlYXN0IDEgYmxvYiBpbiB0aGlzIHRyZWUgd2FzCkBAIC0zNjcsNTcgKzQ3NCwxNzMgQEAKIHN0YXRpYyB2b2lkIGZpbHRlcl9zcGFyc2VfZnJlZSh2b2lkICpmaWx0ZXJfZGF0YSkKIHsKIAlzdHJ1Y3QgZmlsdGVyX3NwYXJzZV9kYXRhICpkID0gZmlsdGVyX2RhdGE7Ci0JLyogVE9ETyBmcmVlIGNvbnRlbnRzIG9mICdkJyAqLworCWZyZWUoZC0+YXJyYXlfZnJhbWUpOwogCWZyZWUoZCk7CiB9CiAKLXN0YXRpYyB2b2lkICpmaWx0ZXJfc3BhcnNlX29pZF9faW5pdCgKLQlzdHJ1Y3Qgb2lkc2V0ICpvbWl0dGVkLAorc3RhdGljIHZvaWQgZmlsdGVyX3NwYXJzZV9vaWRfX2luaXQoCiAJc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyX29wdGlvbnMsCi0JZmlsdGVyX29iamVjdF9mbiAqZmlsdGVyX2ZuLAotCWZpbHRlcl9mcmVlX2ZuICpmaWx0ZXJfZnJlZV9mbikKKwlzdHJ1Y3QgZmlsdGVyICpmaWx0ZXIpCiB7CiAJc3RydWN0IGZpbHRlcl9zcGFyc2VfZGF0YSAqZCA9IHhjYWxsb2MoMSwgc2l6ZW9mKCpkKSk7Ci0JZC0+b21pdHMgPSBvbWl0dGVkOwotCWlmIChhZGRfZXhjbHVkZXNfZnJvbV9ibG9iX3RvX2xpc3QoZmlsdGVyX29wdGlvbnMtPnNwYXJzZV9vaWRfdmFsdWUsCi0JCQkJCSAgIE5VTEwsIDAsICZkLT5lbCkgPCAwKQotCQlkaWUoImNvdWxkIG5vdCBsb2FkIGZpbHRlciBzcGVjaWZpY2F0aW9uIik7CisJc3RydWN0IG9iamVjdF9jb250ZXh0IG9jOworCXN0cnVjdCBvYmplY3RfaWQgc3BhcnNlX29pZDsKKworCWlmIChnZXRfb2lkX3dpdGhfY29udGV4dCh0aGVfcmVwb3NpdG9yeSwKKwkJCQkgZmlsdGVyX29wdGlvbnMtPnNwYXJzZV9vaWRfbmFtZSwKKwkJCQkgR0VUX09JRF9CTE9CLCAmc3BhcnNlX29pZCwgJm9jKSkKKwkJZGllKF8oInVuYWJsZSB0byBhY2Nlc3Mgc3BhcnNlIGJsb2IgaW4gJyVzJyIpLAorCQkgICAgZmlsdGVyX29wdGlvbnMtPnNwYXJzZV9vaWRfbmFtZSk7CisJaWYgKGFkZF9wYXR0ZXJuc19mcm9tX2Jsb2JfdG9fbGlzdCgmc3BhcnNlX29pZCwgIiIsIDAsICZkLT5wbCkgPCAwKQorCQlkaWUoXygidW5hYmxlIHRvIHBhcnNlIHNwYXJzZSBmaWx0ZXIgZGF0YSBpbiAlcyIpLAorCQkgICAgb2lkX3RvX2hleCgmc3BhcnNlX29pZCkpOwogCiAJQUxMT0NfR1JPVyhkLT5hcnJheV9mcmFtZSwgZC0+bnIgKyAxLCBkLT5hbGxvYyk7Ci0JZC0+YXJyYXlfZnJhbWVbZC0+bnJdLmRlZnZhbCA9IDA7IC8qIGRlZmF1bHQgdG8gaW5jbHVkZSAqLworCWQtPmFycmF5X2ZyYW1lW2QtPm5yXS5kZWZhdWx0X21hdGNoID0gMDsgLyogZGVmYXVsdCB0byBpbmNsdWRlICovCiAJZC0+YXJyYXlfZnJhbWVbZC0+bnJdLmNoaWxkX3Byb3Zfb21pdCA9IDA7CisJZC0+bnIrKzsKIAotCSpmaWx0ZXJfZm4gPSBmaWx0ZXJfc3BhcnNlOwotCSpmaWx0ZXJfZnJlZV9mbiA9IGZpbHRlcl9zcGFyc2VfZnJlZTsKLQlyZXR1cm4gZDsKKwlmaWx0ZXItPmZpbHRlcl9kYXRhID0gZDsKKwlmaWx0ZXItPmZpbHRlcl9vYmplY3RfZm4gPSBmaWx0ZXJfc3BhcnNlOworCWZpbHRlci0+ZnJlZV9mbiA9IGZpbHRlcl9zcGFyc2VfZnJlZTsKIH0KIAotc3RhdGljIHZvaWQgKmZpbHRlcl9zcGFyc2VfcGF0aF9faW5pdCgKLQlzdHJ1Y3Qgb2lkc2V0ICpvbWl0dGVkLAotCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcl9vcHRpb25zLAotCWZpbHRlcl9vYmplY3RfZm4gKmZpbHRlcl9mbiwKLQlmaWx0ZXJfZnJlZV9mbiAqZmlsdGVyX2ZyZWVfZm4pCisvKiBBIGZpbHRlciB3aGljaCBvbmx5IHNob3dzIG9iamVjdHMgc2hvd24gYnkgYWxsIHN1Yi1maWx0ZXJzLiAqLworc3RydWN0IGNvbWJpbmVfZmlsdGVyX2RhdGEgeworCXN0cnVjdCBzdWJmaWx0ZXIgKnN1YjsKKwlzaXplX3QgbnI7Cit9OworCitzdGF0aWMgZW51bSBsaXN0X29iamVjdHNfZmlsdGVyX3Jlc3VsdCBwcm9jZXNzX3N1YmZpbHRlcigKKwlzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwllbnVtIGxpc3Rfb2JqZWN0c19maWx0ZXJfc2l0dWF0aW9uIGZpbHRlcl9zaXR1YXRpb24sCisJc3RydWN0IG9iamVjdCAqb2JqLAorCWNvbnN0IGNoYXIgKnBhdGhuYW1lLAorCWNvbnN0IGNoYXIgKmZpbGVuYW1lLAorCXN0cnVjdCBzdWJmaWx0ZXIgKnN1YikKIHsKLQlzdHJ1Y3QgZmlsdGVyX3NwYXJzZV9kYXRhICpkID0geGNhbGxvYygxLCBzaXplb2YoKmQpKTsKLQlkLT5vbWl0cyA9IG9taXR0ZWQ7Ci0JaWYgKGFkZF9leGNsdWRlc19mcm9tX2ZpbGVfdG9fbGlzdChmaWx0ZXJfb3B0aW9ucy0+c3BhcnNlX3BhdGhfdmFsdWUsCi0JCQkJCSAgIE5VTEwsIDAsICZkLT5lbCwgTlVMTCkgPCAwKQotCQlkaWUoImNvdWxkIG5vdCBsb2FkIGZpbHRlciBzcGVjaWZpY2F0aW9uIik7CisJZW51bSBsaXN0X29iamVjdHNfZmlsdGVyX3Jlc3VsdCByZXN1bHQ7CiAKLQlBTExPQ19HUk9XKGQtPmFycmF5X2ZyYW1lLCBkLT5uciArIDEsIGQtPmFsbG9jKTsKLQlkLT5hcnJheV9mcmFtZVtkLT5ucl0uZGVmdmFsID0gMDsgLyogZGVmYXVsdCB0byBpbmNsdWRlICovCi0JZC0+YXJyYXlfZnJhbWVbZC0+bnJdLmNoaWxkX3Byb3Zfb21pdCA9IDA7CisJLyoKKwkgKiBDaGVjayBhbmQgdXBkYXRlIGlzX3NraXBwaW5nX3RyZWUgYmVmb3JlIG9pZHNldF9jb250YWlucyBzbworCSAqIHRoYXQgaXNfc2tpcHBpbmdfdHJlZSBnZXRzIHVuc2V0IGV2ZW4gd2hlbiB0aGUgb2JqZWN0IGlzCisJICogbWFya2VkIGFzIHNlZW4uICBBcyBvZiB0aGlzIHdyaXRpbmcsIG5vIGZpbHRlciB1c2VzCisJICogTE9GUl9NQVJLX1NFRU4gb24gdHJlZXMgdGhhdCBhbHNvIHVzZXMgTE9GUl9TS0lQX1RSRUUsIHNvIHRoZQorCSAqIG9yZGVyaW5nIGlzIG9ubHkgdGhlb3JldGljYWxseSBpbXBvcnRhbnQuIEJlIGNhdXRpb3VzIGlmIHlvdQorCSAqIGNoYW5nZSB0aGUgb3JkZXIgb2YgdGhlIGJlbG93IGNoZWNrcyBhbmQgbW9yZSBmaWx0ZXJzIGhhdmUKKwkgKiBiZWVuIGFkZGVkIQorCSAqLworCWlmIChzdWItPmlzX3NraXBwaW5nX3RyZWUpIHsKKwkJaWYgKGZpbHRlcl9zaXR1YXRpb24gPT0gTE9GU19FTkRfVFJFRSAmJgorCQkgICAgb2lkZXEoJm9iai0+b2lkLCAmc3ViLT5za2lwX3RyZWUpKQorCQkJc3ViLT5pc19za2lwcGluZ190cmVlID0gMDsKKwkJZWxzZQorCQkJcmV0dXJuIExPRlJfWkVSTzsKKwl9CisJaWYgKG9pZHNldF9jb250YWlucygmc3ViLT5zZWVuLCAmb2JqLT5vaWQpKQorCQlyZXR1cm4gTE9GUl9aRVJPOwogCi0JKmZpbHRlcl9mbiA9IGZpbHRlcl9zcGFyc2U7Ci0JKmZpbHRlcl9mcmVlX2ZuID0gZmlsdGVyX3NwYXJzZV9mcmVlOwotCXJldHVybiBkOworCXJlc3VsdCA9IGxpc3Rfb2JqZWN0c19maWx0ZXJfX2ZpbHRlcl9vYmplY3QoCisJCXIsIGZpbHRlcl9zaXR1YXRpb24sIG9iaiwgcGF0aG5hbWUsIGZpbGVuYW1lLCBzdWItPmZpbHRlcik7CisKKwlpZiAocmVzdWx0ICYgTE9GUl9NQVJLX1NFRU4pCisJCW9pZHNldF9pbnNlcnQoJnN1Yi0+c2VlbiwgJm9iai0+b2lkKTsKKworCWlmIChyZXN1bHQgJiBMT0ZSX1NLSVBfVFJFRSkgeworCQlzdWItPmlzX3NraXBwaW5nX3RyZWUgPSAxOworCQlzdWItPnNraXBfdHJlZSA9IG9iai0+b2lkOworCX0KKworCXJldHVybiByZXN1bHQ7CiB9CiAKLXR5cGVkZWYgdm9pZCAqKCpmaWx0ZXJfaW5pdF9mbikoCi0Jc3RydWN0IG9pZHNldCAqb21pdHRlZCwKK3N0YXRpYyBlbnVtIGxpc3Rfb2JqZWN0c19maWx0ZXJfcmVzdWx0IGZpbHRlcl9jb21iaW5lKAorCXN0cnVjdCByZXBvc2l0b3J5ICpyLAorCWVudW0gbGlzdF9vYmplY3RzX2ZpbHRlcl9zaXR1YXRpb24gZmlsdGVyX3NpdHVhdGlvbiwKKwlzdHJ1Y3Qgb2JqZWN0ICpvYmosCisJY29uc3QgY2hhciAqcGF0aG5hbWUsCisJY29uc3QgY2hhciAqZmlsZW5hbWUsCisJc3RydWN0IG9pZHNldCAqb21pdHMsCisJdm9pZCAqZmlsdGVyX2RhdGEpCit7CisJc3RydWN0IGNvbWJpbmVfZmlsdGVyX2RhdGEgKmQgPSBmaWx0ZXJfZGF0YTsKKwllbnVtIGxpc3Rfb2JqZWN0c19maWx0ZXJfcmVzdWx0IGNvbWJpbmVkX3Jlc3VsdCA9CisJCUxPRlJfRE9fU0hPVyB8IExPRlJfTUFSS19TRUVOIHwgTE9GUl9TS0lQX1RSRUU7CisJc2l6ZV90IHN1YjsKKworCWZvciAoc3ViID0gMDsgc3ViIDwgZC0+bnI7IHN1YisrKSB7CisJCWVudW0gbGlzdF9vYmplY3RzX2ZpbHRlcl9yZXN1bHQgc3ViX3Jlc3VsdCA9IHByb2Nlc3Nfc3ViZmlsdGVyKAorCQkJciwgZmlsdGVyX3NpdHVhdGlvbiwgb2JqLCBwYXRobmFtZSwgZmlsZW5hbWUsCisJCQkmZC0+c3ViW3N1Yl0pOworCQlpZiAoIShzdWJfcmVzdWx0ICYgTE9GUl9ET19TSE9XKSkKKwkJCWNvbWJpbmVkX3Jlc3VsdCAmPSB+TE9GUl9ET19TSE9XOworCQlpZiAoIShzdWJfcmVzdWx0ICYgTE9GUl9NQVJLX1NFRU4pKQorCQkJY29tYmluZWRfcmVzdWx0ICY9IH5MT0ZSX01BUktfU0VFTjsKKwkJaWYgKCFkLT5zdWJbc3ViXS5pc19za2lwcGluZ190cmVlKQorCQkJY29tYmluZWRfcmVzdWx0ICY9IH5MT0ZSX1NLSVBfVFJFRTsKKwl9CisKKwlyZXR1cm4gY29tYmluZWRfcmVzdWx0OworfQorCitzdGF0aWMgdm9pZCBmaWx0ZXJfY29tYmluZV9fZnJlZSh2b2lkICpmaWx0ZXJfZGF0YSkKK3sKKwlzdHJ1Y3QgY29tYmluZV9maWx0ZXJfZGF0YSAqZCA9IGZpbHRlcl9kYXRhOworCXNpemVfdCBzdWI7CisJZm9yIChzdWIgPSAwOyBzdWIgPCBkLT5ucjsgc3ViKyspIHsKKwkJbGlzdF9vYmplY3RzX2ZpbHRlcl9fZnJlZShkLT5zdWJbc3ViXS5maWx0ZXIpOworCQlvaWRzZXRfY2xlYXIoJmQtPnN1YltzdWJdLnNlZW4pOworCQlpZiAoZC0+c3ViW3N1Yl0ub21pdHMuc2V0LnNpemUpCisJCQlCVUcoImV4cGVjdGVkIG9pZHNldCB0byBiZSBjbGVhcmVkIGFscmVhZHkiKTsKKwl9CisJZnJlZShkLT5zdWIpOworfQorCitzdGF0aWMgdm9pZCBhZGRfYWxsKHN0cnVjdCBvaWRzZXQgKmRlc3QsIHN0cnVjdCBvaWRzZXQgKnNyYykgeworCXN0cnVjdCBvaWRzZXRfaXRlciBpdGVyOworCXN0cnVjdCBvYmplY3RfaWQgKnNyY19vaWQ7CisKKwlvaWRzZXRfaXRlcl9pbml0KHNyYywgJml0ZXIpOworCXdoaWxlICgoc3JjX29pZCA9IG9pZHNldF9pdGVyX25leHQoJml0ZXIpKSAhPSBOVUxMKQorCQlvaWRzZXRfaW5zZXJ0KGRlc3QsIHNyY19vaWQpOworfQorCitzdGF0aWMgdm9pZCBmaWx0ZXJfY29tYmluZV9fZmluYWxpemVfb21pdHMoCisJc3RydWN0IG9pZHNldCAqb21pdHMsCisJdm9pZCAqZmlsdGVyX2RhdGEpCit7CisJc3RydWN0IGNvbWJpbmVfZmlsdGVyX2RhdGEgKmQgPSBmaWx0ZXJfZGF0YTsKKwlzaXplX3Qgc3ViOworCisJZm9yIChzdWIgPSAwOyBzdWIgPCBkLT5ucjsgc3ViKyspIHsKKwkJYWRkX2FsbChvbWl0cywgJmQtPnN1YltzdWJdLm9taXRzKTsKKwkJb2lkc2V0X2NsZWFyKCZkLT5zdWJbc3ViXS5vbWl0cyk7CisJfQorfQorCitzdGF0aWMgdm9pZCBmaWx0ZXJfY29tYmluZV9faW5pdCgKIAlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXJfb3B0aW9ucywKLQlmaWx0ZXJfb2JqZWN0X2ZuICpmaWx0ZXJfZm4sCi0JZmlsdGVyX2ZyZWVfZm4gKmZpbHRlcl9mcmVlX2ZuKTsKKwlzdHJ1Y3QgZmlsdGVyKiBmaWx0ZXIpCit7CisJc3RydWN0IGNvbWJpbmVfZmlsdGVyX2RhdGEgKmQgPSB4Y2FsbG9jKDEsIHNpemVvZigqZCkpOworCXNpemVfdCBzdWI7CisKKwlkLT5uciA9IGZpbHRlcl9vcHRpb25zLT5zdWJfbnI7CisJZC0+c3ViID0geGNhbGxvYyhkLT5uciwgc2l6ZW9mKCpkLT5zdWIpKTsKKwlmb3IgKHN1YiA9IDA7IHN1YiA8IGQtPm5yOyBzdWIrKykKKwkJZC0+c3ViW3N1Yl0uZmlsdGVyID0gbGlzdF9vYmplY3RzX2ZpbHRlcl9faW5pdCgKKwkJCWZpbHRlci0+b21pdHMgPyAmZC0+c3ViW3N1Yl0ub21pdHMgOiBOVUxMLAorCQkJJmZpbHRlcl9vcHRpb25zLT5zdWJbc3ViXSk7CisKKwlmaWx0ZXItPmZpbHRlcl9kYXRhID0gZDsKKwlmaWx0ZXItPmZpbHRlcl9vYmplY3RfZm4gPSBmaWx0ZXJfY29tYmluZTsKKwlmaWx0ZXItPmZyZWVfZm4gPSBmaWx0ZXJfY29tYmluZV9fZnJlZTsKKwlmaWx0ZXItPmZpbmFsaXplX29taXRzX2ZuID0gZmlsdGVyX2NvbWJpbmVfX2ZpbmFsaXplX29taXRzOworfQorCit0eXBlZGVmIHZvaWQgKCpmaWx0ZXJfaW5pdF9mbikoCisJc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyX29wdGlvbnMsCisJc3RydWN0IGZpbHRlciAqZmlsdGVyKTsKIAogLyoKICAqIE11c3QgbWF0Y2ggImVudW0gbGlzdF9vYmplY3RzX2ZpbHRlcl9jaG9pY2UiLgpAQCAtNDI2LDE3ICs2NDksMTYgQEAKIAlOVUxMLAogCWZpbHRlcl9ibG9ic19ub25lX19pbml0LAogCWZpbHRlcl9ibG9ic19saW1pdF9faW5pdCwKLQlmaWx0ZXJfdHJlZXNfbm9uZV9faW5pdCwKKwlmaWx0ZXJfdHJlZXNfZGVwdGhfX2luaXQsCiAJZmlsdGVyX3NwYXJzZV9vaWRfX2luaXQsCi0JZmlsdGVyX3NwYXJzZV9wYXRoX19pbml0LAorCWZpbHRlcl9jb21iaW5lX19pbml0LAogfTsKIAotdm9pZCAqbGlzdF9vYmplY3RzX2ZpbHRlcl9faW5pdCgKK3N0cnVjdCBmaWx0ZXIgKmxpc3Rfb2JqZWN0c19maWx0ZXJfX2luaXQoCiAJc3RydWN0IG9pZHNldCAqb21pdHRlZCwKLQlzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXJfb3B0aW9ucywKLQlmaWx0ZXJfb2JqZWN0X2ZuICpmaWx0ZXJfZm4sCi0JZmlsdGVyX2ZyZWVfZm4gKmZpbHRlcl9mcmVlX2ZuKQorCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcl9vcHRpb25zKQogeworCXN0cnVjdCBmaWx0ZXIgKmZpbHRlcjsKIAlmaWx0ZXJfaW5pdF9mbiBpbml0X2ZuOwogCiAJYXNzZXJ0KChzaXplb2Yoc19maWx0ZXJzKSAvIHNpemVvZihzX2ZpbHRlcnNbMF0pKSA9PSBMT0ZDX19DT1VOVCk7CkBAIC00NDYsMTAgKzY2OCw0NCBAQAogCQkgICAgZmlsdGVyX29wdGlvbnMtPmNob2ljZSk7CiAKIAlpbml0X2ZuID0gc19maWx0ZXJzW2ZpbHRlcl9vcHRpb25zLT5jaG9pY2VdOwotCWlmIChpbml0X2ZuKQotCQlyZXR1cm4gaW5pdF9mbihvbWl0dGVkLCBmaWx0ZXJfb3B0aW9ucywKLQkJCSAgICAgICBmaWx0ZXJfZm4sIGZpbHRlcl9mcmVlX2ZuKTsKLQkqZmlsdGVyX2ZuID0gTlVMTDsKLQkqZmlsdGVyX2ZyZWVfZm4gPSBOVUxMOwotCXJldHVybiBOVUxMOworCWlmICghaW5pdF9mbikKKwkJcmV0dXJuIE5VTEw7CisKKwlmaWx0ZXIgPSB4Y2FsbG9jKDEsIHNpemVvZigqZmlsdGVyKSk7CisJZmlsdGVyLT5vbWl0cyA9IG9taXR0ZWQ7CisJaW5pdF9mbihmaWx0ZXJfb3B0aW9ucywgZmlsdGVyKTsKKwlyZXR1cm4gZmlsdGVyOworfQorCitlbnVtIGxpc3Rfb2JqZWN0c19maWx0ZXJfcmVzdWx0IGxpc3Rfb2JqZWN0c19maWx0ZXJfX2ZpbHRlcl9vYmplY3QoCisJc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJZW51bSBsaXN0X29iamVjdHNfZmlsdGVyX3NpdHVhdGlvbiBmaWx0ZXJfc2l0dWF0aW9uLAorCXN0cnVjdCBvYmplY3QgKm9iaiwKKwljb25zdCBjaGFyICpwYXRobmFtZSwKKwljb25zdCBjaGFyICpmaWxlbmFtZSwKKwlzdHJ1Y3QgZmlsdGVyICpmaWx0ZXIpCit7CisJaWYgKGZpbHRlciAmJiAob2JqLT5mbGFncyAmIE5PVF9VU0VSX0dJVkVOKSkKKwkJcmV0dXJuIGZpbHRlci0+ZmlsdGVyX29iamVjdF9mbihyLCBmaWx0ZXJfc2l0dWF0aW9uLCBvYmosCisJCQkJCQlwYXRobmFtZSwgZmlsZW5hbWUsCisJCQkJCQlmaWx0ZXItPm9taXRzLAorCQkJCQkJZmlsdGVyLT5maWx0ZXJfZGF0YSk7CisJLyoKKwkgKiBObyBmaWx0ZXIgaXMgYWN0aXZlIG9yIHVzZXIgZ2F2ZSBvYmplY3QgZXhwbGljaXRseS4gSW4gdGhpcyBjYXNlLAorCSAqIGFsd2F5cyBzaG93IHRoZSBvYmplY3QgKGV4Y2VwdCB3aGVuIExPRlNfRU5EX1RSRUUsIHNpbmNlIHRoaXMgdHJlZQorCSAqIGhhZCBhbHJlYWR5IGJlZW4gc2hvd24gd2hlbiBMT0ZTX0JFR0lOX1RSRUUpLgorCSAqLworCWlmIChmaWx0ZXJfc2l0dWF0aW9uID09IExPRlNfRU5EX1RSRUUpCisJCXJldHVybiAwOworCXJldHVybiBMT0ZSX01BUktfU0VFTiB8IExPRlJfRE9fU0hPVzsKK30KKwordm9pZCBsaXN0X29iamVjdHNfZmlsdGVyX19mcmVlKHN0cnVjdCBmaWx0ZXIgKmZpbHRlcikKK3sKKwlpZiAoIWZpbHRlcikKKwkJcmV0dXJuOworCWlmIChmaWx0ZXItPmZpbmFsaXplX29taXRzX2ZuICYmIGZpbHRlci0+b21pdHMpCisJCWZpbHRlci0+ZmluYWxpemVfb21pdHNfZm4oZmlsdGVyLT5vbWl0cywgZmlsdGVyLT5maWx0ZXJfZGF0YSk7CisJZmlsdGVyLT5mcmVlX2ZuKGZpbHRlci0+ZmlsdGVyX2RhdGEpOworCWZyZWUoZmlsdGVyKTsKIH0KZGlmZiAtLWdpdCBhL2xpc3Qtb2JqZWN0cy1maWx0ZXIuaCBiL2xpc3Qtb2JqZWN0cy1maWx0ZXIuaAppbmRleCA1MmI0YTg0Li5jZmQ3ODRlIDEwMDY0NAotLS0gYS9saXN0LW9iamVjdHMtZmlsdGVyLmgKKysrIGIvbGlzdC1vYmplY3RzLWZpbHRlci5oCkBAIC00LDYgKzQsNyBAQAogc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9uczsKIHN0cnVjdCBvYmplY3Q7CiBzdHJ1Y3Qgb2lkc2V0Oworc3RydWN0IHJlcG9zaXRvcnk7CiAKIC8qCiAgKiBEdXJpbmcgbGlzdC1vYmplY3QgdHJhdmVyc2FsIHdlIGFsbG93IGNlcnRhaW4gb2JqZWN0cyB0byBiZQpAQCAtNTksMjkgKzYwLDM2IEBACiAJTE9GU19CTE9CCiB9OwogCi10eXBlZGVmIGVudW0gbGlzdF9vYmplY3RzX2ZpbHRlcl9yZXN1bHQgKCpmaWx0ZXJfb2JqZWN0X2ZuKSgKK3N0cnVjdCBmaWx0ZXI7CisKKy8qCisgKiBDb25zdHJ1Y3RvciBmb3IgdGhlIHNldCBvZiBkZWZpbmVkIGxpc3Qtb2JqZWN0cyBmaWx0ZXJzLgorICogVGhlIGBvbWl0dGVkYCBzZXQgaXMgb3B0aW9uYWwuIEl0IGlzIHBvcHVsYXRlZCB3aXRoIG9iamVjdHMgdGhhdCB0aGUKKyAqIGZpbHRlciBleGNsdWRlcy4gVGhpcyBzZXQgc2hvdWxkIG5vdCBiZSBjb25zaWRlcmVkIGZpbmFsaXplZCB1bnRpbAorICogYWZ0ZXIgbGlzdF9vYmplY3RzX2ZpbHRlcl9fZnJlZSBpcyBjYWxsZWQgb24gdGhlIHJldHVybmVkIGBzdHJ1Y3QKKyAqIGZpbHRlciAqYC4KKyAqLworc3RydWN0IGZpbHRlciAqbGlzdF9vYmplY3RzX2ZpbHRlcl9faW5pdCgKKwlzdHJ1Y3Qgb2lkc2V0ICpvbWl0dGVkLAorCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcl9vcHRpb25zKTsKKworLyoKKyAqIExldHMgYGZpbHRlcmAgZGVjaWRlIGhvdyB0byBoYW5kbGUgdGhlIGBvYmpgLiBJZiBgZmlsdGVyYCBpcyBOVUxMLCB0aGlzCisgKiBmdW5jdGlvbiBiZWhhdmVzIGFzIGV4cGVjdGVkIGlmIG5vIGZpbHRlciBpcyBjb25maWd1cmVkOiBhbGwgb2JqZWN0cyBhcmUKKyAqIGluY2x1ZGVkLgorICovCitlbnVtIGxpc3Rfb2JqZWN0c19maWx0ZXJfcmVzdWx0IGxpc3Rfb2JqZWN0c19maWx0ZXJfX2ZpbHRlcl9vYmplY3QoCisJc3RydWN0IHJlcG9zaXRvcnkgKnIsCiAJZW51bSBsaXN0X29iamVjdHNfZmlsdGVyX3NpdHVhdGlvbiBmaWx0ZXJfc2l0dWF0aW9uLAogCXN0cnVjdCBvYmplY3QgKm9iaiwKIAljb25zdCBjaGFyICpwYXRobmFtZSwKIAljb25zdCBjaGFyICpmaWxlbmFtZSwKLQl2b2lkICpmaWx0ZXJfZGF0YSk7Ci0KLXR5cGVkZWYgdm9pZCAoKmZpbHRlcl9mcmVlX2ZuKSh2b2lkICpmaWx0ZXJfZGF0YSk7CisJc3RydWN0IGZpbHRlciAqZmlsdGVyKTsKIAogLyoKLSAqIENvbnN0cnVjdG9yIGZvciB0aGUgc2V0IG9mIGRlZmluZWQgbGlzdC1vYmplY3RzIGZpbHRlcnMuCi0gKiBSZXR1cm5zIGEgZ2VuZXJpYyAidm9pZCAqZmlsdGVyX2RhdGEiLgotICoKLSAqIFRoZSByZXR1cm5lZCAiZmlsdGVyX2ZuIiB3aWxsIGJlIHVzZWQgYnkgdHJhdmVyc2VfY29tbWl0X2xpc3QoKQotICogdG8gZmlsdGVyIHRoZSByZXN1bHRzLgotICoKLSAqIFRoZSByZXR1cm5lZCAiZmlsdGVyX2ZyZWVfZm4iIGlzIGEgZGVzdHJ1Y3RvciBmb3IgdGhlCi0gKiBmaWx0ZXJfZGF0YS4KKyAqIERlc3Ryb3lzIGBmaWx0ZXJgIGFuZCBmaW5hbGl6ZXMgdGhlIGBvbWl0dGVkYCBzZXQsIGlmIHByZXNlbnQuIERvZXMKKyAqIG5vdGhpbmcgaWYgYGZpbHRlcmAgaXMgbnVsbC4KICAqLwotdm9pZCAqbGlzdF9vYmplY3RzX2ZpbHRlcl9faW5pdCgKLQlzdHJ1Y3Qgb2lkc2V0ICpvbWl0dGVkLAotCXN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcl9vcHRpb25zLAotCWZpbHRlcl9vYmplY3RfZm4gKmZpbHRlcl9mbiwKLQlmaWx0ZXJfZnJlZV9mbiAqZmlsdGVyX2ZyZWVfZm4pOwordm9pZCBsaXN0X29iamVjdHNfZmlsdGVyX19mcmVlKHN0cnVjdCBmaWx0ZXIgKmZpbHRlcik7CiAKICNlbmRpZiAvKiBMSVNUX09CSkVDVFNfRklMVEVSX0ggKi8KZGlmZiAtLWdpdCBhL2xpc3Qtb2JqZWN0cy5jIGIvbGlzdC1vYmplY3RzLmMKaW5kZXggYzQxY2M4MC4uZTE5NTg5YiAxMDA2NDQKLS0tIGEvbGlzdC1vYmplY3RzLmMKKysrIGIvbGlzdC1vYmplY3RzLmMKQEAgLTE4LDggKzE4LDcgQEAKIAlzaG93X29iamVjdF9mbiBzaG93X29iamVjdDsKIAlzaG93X2NvbW1pdF9mbiBzaG93X2NvbW1pdDsKIAl2b2lkICpzaG93X2RhdGE7Ci0JZmlsdGVyX29iamVjdF9mbiBmaWx0ZXJfZm47Ci0Jdm9pZCAqZmlsdGVyX2RhdGE7CisJc3RydWN0IGZpbHRlciAqZmlsdGVyOwogfTsKIAogc3RhdGljIHZvaWQgcHJvY2Vzc19ibG9iKHN0cnVjdCB0cmF2ZXJzYWxfY29udGV4dCAqY3R4LApAQCAtMjksNyArMjgsNyBAQAogewogCXN0cnVjdCBvYmplY3QgKm9iaiA9ICZibG9iLT5vYmplY3Q7CiAJc2l6ZV90IHBhdGhsZW47Ci0JZW51bSBsaXN0X29iamVjdHNfZmlsdGVyX3Jlc3VsdCByID0gTE9GUl9NQVJLX1NFRU4gfCBMT0ZSX0RPX1NIT1c7CisJZW51bSBsaXN0X29iamVjdHNfZmlsdGVyX3Jlc3VsdCByOwogCiAJaWYgKCFjdHgtPnJldnMtPmJsb2Jfb2JqZWN0cykKIAkJcmV0dXJuOwpAQCAtNTQsMTAgKzUzLDEwIEBACiAKIAlwYXRobGVuID0gcGF0aC0+bGVuOwogCXN0cmJ1Zl9hZGRzdHIocGF0aCwgbmFtZSk7Ci0JaWYgKChvYmotPmZsYWdzICYgTk9UX1VTRVJfR0lWRU4pICYmIGN0eC0+ZmlsdGVyX2ZuKQotCQlyID0gY3R4LT5maWx0ZXJfZm4oTE9GU19CTE9CLCBvYmosCi0JCQkJICAgcGF0aC0+YnVmLCAmcGF0aC0+YnVmW3BhdGhsZW5dLAotCQkJCSAgIGN0eC0+ZmlsdGVyX2RhdGEpOworCXIgPSBsaXN0X29iamVjdHNfZmlsdGVyX19maWx0ZXJfb2JqZWN0KGN0eC0+cmV2cy0+cmVwbywKKwkJCQkJICAgICAgIExPRlNfQkxPQiwgb2JqLAorCQkJCQkgICAgICAgcGF0aC0+YnVmLCAmcGF0aC0+YnVmW3BhdGhsZW5dLAorCQkJCQkgICAgICAgY3R4LT5maWx0ZXIpOwogCWlmIChyICYgTE9GUl9NQVJLX1NFRU4pCiAJCW9iai0+ZmxhZ3MgfD0gU0VFTjsKIAlpZiAociAmIExPRlJfRE9fU0hPVykKQEAgLTExMyw3ICsxMTIsOCBAQAogCiAJd2hpbGUgKHRyZWVfZW50cnkoJmRlc2MsICZlbnRyeSkpIHsKIAkJaWYgKG1hdGNoICE9IGFsbF9lbnRyaWVzX2ludGVyZXN0aW5nKSB7Ci0JCQltYXRjaCA9IHRyZWVfZW50cnlfaW50ZXJlc3RpbmcoJmVudHJ5LCBiYXNlLCAwLAorCQkJbWF0Y2ggPSB0cmVlX2VudHJ5X2ludGVyZXN0aW5nKGN0eC0+cmV2cy0+cmVwby0+aW5kZXgsCisJCQkJCQkgICAgICAgJmVudHJ5LCBiYXNlLCAwLAogCQkJCQkJICAgICAgICZjdHgtPnJldnMtPmRpZmZvcHQucGF0aHNwZWMpOwogCQkJaWYgKG1hdGNoID09IGFsbF9lbnRyaWVzX25vdF9pbnRlcmVzdGluZykKIAkJCQlicmVhazsKQEAgLTEyMiwxNSArMTIyLDI1IEBACiAJCX0KIAogCQlpZiAoU19JU0RJUihlbnRyeS5tb2RlKSkgewotCQkJc3RydWN0IHRyZWUgKnQgPSBsb29rdXBfdHJlZSh0aGVfcmVwb3NpdG9yeSwgZW50cnkub2lkKTsKKwkJCXN0cnVjdCB0cmVlICp0ID0gbG9va3VwX3RyZWUoY3R4LT5yZXZzLT5yZXBvLCAmZW50cnkub2lkKTsKKwkJCWlmICghdCkgeworCQkJCWRpZShfKCJlbnRyeSAnJXMnIGluIHRyZWUgJXMgaGFzIHRyZWUgbW9kZSwgIgorCQkJCSAgICAgICJidXQgaXMgbm90IGEgdHJlZSIpLAorCQkJCSAgICBlbnRyeS5wYXRoLCBvaWRfdG9faGV4KCZ0cmVlLT5vYmplY3Qub2lkKSk7CisJCQl9CiAJCQl0LT5vYmplY3QuZmxhZ3MgfD0gTk9UX1VTRVJfR0lWRU47CiAJCQlwcm9jZXNzX3RyZWUoY3R4LCB0LCBiYXNlLCBlbnRyeS5wYXRoKTsKIAkJfQogCQllbHNlIGlmIChTX0lTR0lUTElOSyhlbnRyeS5tb2RlKSkKLQkJCXByb2Nlc3NfZ2l0bGluayhjdHgsIGVudHJ5Lm9pZC0+aGFzaCwKKwkJCXByb2Nlc3NfZ2l0bGluayhjdHgsIGVudHJ5Lm9pZC5oYXNoLAogCQkJCQliYXNlLCBlbnRyeS5wYXRoKTsKIAkJZWxzZSB7Ci0JCQlzdHJ1Y3QgYmxvYiAqYiA9IGxvb2t1cF9ibG9iKHRoZV9yZXBvc2l0b3J5LCBlbnRyeS5vaWQpOworCQkJc3RydWN0IGJsb2IgKmIgPSBsb29rdXBfYmxvYihjdHgtPnJldnMtPnJlcG8sICZlbnRyeS5vaWQpOworCQkJaWYgKCFiKSB7CisJCQkJZGllKF8oImVudHJ5ICclcycgaW4gdHJlZSAlcyBoYXMgYmxvYiBtb2RlLCAiCisJCQkJICAgICAgImJ1dCBpcyBub3QgYSBibG9iIiksCisJCQkJICAgIGVudHJ5LnBhdGgsIG9pZF90b19oZXgoJnRyZWUtPm9iamVjdC5vaWQpKTsKKwkJCX0KIAkJCWItPm9iamVjdC5mbGFncyB8PSBOT1RfVVNFUl9HSVZFTjsKIAkJCXByb2Nlc3NfYmxvYihjdHgsIGIsIGJhc2UsIGVudHJ5LnBhdGgpOwogCQl9CkBAIC0xNDUsNyArMTU1LDcgQEAKIAlzdHJ1Y3Qgb2JqZWN0ICpvYmogPSAmdHJlZS0+b2JqZWN0OwogCXN0cnVjdCByZXZfaW5mbyAqcmV2cyA9IGN0eC0+cmV2czsKIAlpbnQgYmFzZWxlbiA9IGJhc2UtPmxlbjsKLQllbnVtIGxpc3Rfb2JqZWN0c19maWx0ZXJfcmVzdWx0IHIgPSBMT0ZSX01BUktfU0VFTiB8IExPRlJfRE9fU0hPVzsKKwllbnVtIGxpc3Rfb2JqZWN0c19maWx0ZXJfcmVzdWx0IHI7CiAJaW50IGZhaWxlZF9wYXJzZTsKIAogCWlmICghcmV2cy0+dHJlZV9vYmplY3RzKQpAQCAtMTc0LDEwICsxODQsMTAgQEAKIAl9CiAKIAlzdHJidWZfYWRkc3RyKGJhc2UsIG5hbWUpOwotCWlmICgob2JqLT5mbGFncyAmIE5PVF9VU0VSX0dJVkVOKSAmJiBjdHgtPmZpbHRlcl9mbikKLQkJciA9IGN0eC0+ZmlsdGVyX2ZuKExPRlNfQkVHSU5fVFJFRSwgb2JqLAotCQkJCSAgIGJhc2UtPmJ1ZiwgJmJhc2UtPmJ1ZltiYXNlbGVuXSwKLQkJCQkgICBjdHgtPmZpbHRlcl9kYXRhKTsKKwlyID0gbGlzdF9vYmplY3RzX2ZpbHRlcl9fZmlsdGVyX29iamVjdChjdHgtPnJldnMtPnJlcG8sCisJCQkJCSAgICAgICBMT0ZTX0JFR0lOX1RSRUUsIG9iaiwKKwkJCQkJICAgICAgIGJhc2UtPmJ1ZiwgJmJhc2UtPmJ1ZltiYXNlbGVuXSwKKwkJCQkJICAgICAgIGN0eC0+ZmlsdGVyKTsKIAlpZiAociAmIExPRlJfTUFSS19TRUVOKQogCQlvYmotPmZsYWdzIHw9IFNFRU47CiAJaWYgKHIgJiBMT0ZSX0RPX1NIT1cpCkBAIC0xOTAsMTUgKzIwMCwxNCBAQAogCWVsc2UgaWYgKCFmYWlsZWRfcGFyc2UpCiAJCXByb2Nlc3NfdHJlZV9jb250ZW50cyhjdHgsIHRyZWUsIGJhc2UpOwogCi0JaWYgKChvYmotPmZsYWdzICYgTk9UX1VTRVJfR0lWRU4pICYmIGN0eC0+ZmlsdGVyX2ZuKSB7Ci0JCXIgPSBjdHgtPmZpbHRlcl9mbihMT0ZTX0VORF9UUkVFLCBvYmosCi0JCQkJICAgYmFzZS0+YnVmLCAmYmFzZS0+YnVmW2Jhc2VsZW5dLAotCQkJCSAgIGN0eC0+ZmlsdGVyX2RhdGEpOwotCQlpZiAociAmIExPRlJfTUFSS19TRUVOKQotCQkJb2JqLT5mbGFncyB8PSBTRUVOOwotCQlpZiAociAmIExPRlJfRE9fU0hPVykKLQkJCWN0eC0+c2hvd19vYmplY3Qob2JqLCBiYXNlLT5idWYsIGN0eC0+c2hvd19kYXRhKTsKLQl9CisJciA9IGxpc3Rfb2JqZWN0c19maWx0ZXJfX2ZpbHRlcl9vYmplY3QoY3R4LT5yZXZzLT5yZXBvLAorCQkJCQkgICAgICAgTE9GU19FTkRfVFJFRSwgb2JqLAorCQkJCQkgICAgICAgYmFzZS0+YnVmLCAmYmFzZS0+YnVmW2Jhc2VsZW5dLAorCQkJCQkgICAgICAgY3R4LT5maWx0ZXIpOworCWlmIChyICYgTE9GUl9NQVJLX1NFRU4pCisJCW9iai0+ZmxhZ3MgfD0gU0VFTjsKKwlpZiAociAmIExPRlJfRE9fU0hPVykKKwkJY3R4LT5zaG93X29iamVjdChvYmosIGJhc2UtPmJ1ZiwgY3R4LT5zaG93X2RhdGEpOwogCiAJc3RyYnVmX3NldGxlbihiYXNlLCBiYXNlbGVuKTsKIAlmcmVlX3RyZWVfYnVmZmVyKHRyZWUpOwpAQCAtMjIyLDI1ICsyMzEsNzMgQEAKIAl9CiB9CiAKLXZvaWQgbWFya19lZGdlc191bmludGVyZXN0aW5nKHN0cnVjdCByZXZfaW5mbyAqcmV2cywgc2hvd19lZGdlX2ZuIHNob3dfZWRnZSkKK3N0YXRpYyB2b2lkIGFkZF9lZGdlX3BhcmVudHMoc3RydWN0IGNvbW1pdCAqY29tbWl0LAorCQkJICAgICBzdHJ1Y3QgcmV2X2luZm8gKnJldnMsCisJCQkgICAgIHNob3dfZWRnZV9mbiBzaG93X2VkZ2UsCisJCQkgICAgIHN0cnVjdCBvaWRzZXQgKnNldCkKK3sKKwlzdHJ1Y3QgY29tbWl0X2xpc3QgKnBhcmVudHM7CisKKwlmb3IgKHBhcmVudHMgPSBjb21taXQtPnBhcmVudHM7IHBhcmVudHM7IHBhcmVudHMgPSBwYXJlbnRzLT5uZXh0KSB7CisJCXN0cnVjdCBjb21taXQgKnBhcmVudCA9IHBhcmVudHMtPml0ZW07CisJCXN0cnVjdCB0cmVlICp0cmVlID0gZ2V0X2NvbW1pdF90cmVlKHBhcmVudCk7CisKKwkJaWYgKCF0cmVlKQorCQkJY29udGludWU7CisKKwkJb2lkc2V0X2luc2VydChzZXQsICZ0cmVlLT5vYmplY3Qub2lkKTsKKworCQlpZiAoIShwYXJlbnQtPm9iamVjdC5mbGFncyAmIFVOSU5URVJFU1RJTkcpKQorCQkJY29udGludWU7CisJCXRyZWUtPm9iamVjdC5mbGFncyB8PSBVTklOVEVSRVNUSU5HOworCisJCWlmIChyZXZzLT5lZGdlX2hpbnQgJiYgIShwYXJlbnQtPm9iamVjdC5mbGFncyAmIFNIT1dOKSkgeworCQkJcGFyZW50LT5vYmplY3QuZmxhZ3MgfD0gU0hPV047CisJCQlzaG93X2VkZ2UocGFyZW50KTsKKwkJfQorCX0KK30KKwordm9pZCBtYXJrX2VkZ2VzX3VuaW50ZXJlc3Rpbmcoc3RydWN0IHJldl9pbmZvICpyZXZzLAorCQkJICAgICAgc2hvd19lZGdlX2ZuIHNob3dfZWRnZSwKKwkJCSAgICAgIGludCBzcGFyc2UpCiB7CiAJc3RydWN0IGNvbW1pdF9saXN0ICpsaXN0OwogCWludCBpOwogCi0JZm9yIChsaXN0ID0gcmV2cy0+Y29tbWl0czsgbGlzdDsgbGlzdCA9IGxpc3QtPm5leHQpIHsKLQkJc3RydWN0IGNvbW1pdCAqY29tbWl0ID0gbGlzdC0+aXRlbTsKKwlpZiAoc3BhcnNlKSB7CisJCXN0cnVjdCBvaWRzZXQgc2V0OworCQlvaWRzZXRfaW5pdCgmc2V0LCAxNik7CiAKLQkJaWYgKGNvbW1pdC0+b2JqZWN0LmZsYWdzICYgVU5JTlRFUkVTVElORykgewotCQkJbWFya190cmVlX3VuaW50ZXJlc3RpbmcocmV2cy0+cmVwbywKLQkJCQkJCWdldF9jb21taXRfdHJlZShjb21taXQpKTsKLQkJCWlmIChyZXZzLT5lZGdlX2hpbnRfYWdncmVzc2l2ZSAmJiAhKGNvbW1pdC0+b2JqZWN0LmZsYWdzICYgU0hPV04pKSB7Ci0JCQkJY29tbWl0LT5vYmplY3QuZmxhZ3MgfD0gU0hPV047Ci0JCQkJc2hvd19lZGdlKGNvbW1pdCk7Ci0JCQl9Ci0JCQljb250aW51ZTsKKwkJZm9yIChsaXN0ID0gcmV2cy0+Y29tbWl0czsgbGlzdDsgbGlzdCA9IGxpc3QtPm5leHQpIHsKKwkJCXN0cnVjdCBjb21taXQgKmNvbW1pdCA9IGxpc3QtPml0ZW07CisJCQlzdHJ1Y3QgdHJlZSAqdHJlZSA9IGdldF9jb21taXRfdHJlZShjb21taXQpOworCisJCQlpZiAoY29tbWl0LT5vYmplY3QuZmxhZ3MgJiBVTklOVEVSRVNUSU5HKQorCQkJCXRyZWUtPm9iamVjdC5mbGFncyB8PSBVTklOVEVSRVNUSU5HOworCisJCQlvaWRzZXRfaW5zZXJ0KCZzZXQsICZ0cmVlLT5vYmplY3Qub2lkKTsKKwkJCWFkZF9lZGdlX3BhcmVudHMoY29tbWl0LCByZXZzLCBzaG93X2VkZ2UsICZzZXQpOwogCQl9Ci0JCW1hcmtfZWRnZV9wYXJlbnRzX3VuaW50ZXJlc3RpbmcoY29tbWl0LCByZXZzLCBzaG93X2VkZ2UpOworCisJCW1hcmtfdHJlZXNfdW5pbnRlcmVzdGluZ19zcGFyc2UocmV2cy0+cmVwbywgJnNldCk7CisJCW9pZHNldF9jbGVhcigmc2V0KTsKKwl9IGVsc2UgeworCQlmb3IgKGxpc3QgPSByZXZzLT5jb21taXRzOyBsaXN0OyBsaXN0ID0gbGlzdC0+bmV4dCkgeworCQkJc3RydWN0IGNvbW1pdCAqY29tbWl0ID0gbGlzdC0+aXRlbTsKKwkJCWlmIChjb21taXQtPm9iamVjdC5mbGFncyAmIFVOSU5URVJFU1RJTkcpIHsKKwkJCQltYXJrX3RyZWVfdW5pbnRlcmVzdGluZyhyZXZzLT5yZXBvLAorCQkJCQkJCWdldF9jb21taXRfdHJlZShjb21taXQpKTsKKwkJCQlpZiAocmV2cy0+ZWRnZV9oaW50X2FnZ3Jlc3NpdmUgJiYgIShjb21taXQtPm9iamVjdC5mbGFncyAmIFNIT1dOKSkgeworCQkJCQljb21taXQtPm9iamVjdC5mbGFncyB8PSBTSE9XTjsKKwkJCQkJc2hvd19lZGdlKGNvbW1pdCk7CisJCQkJfQorCQkJCWNvbnRpbnVlOworCQkJfQorCQkJbWFya19lZGdlX3BhcmVudHNfdW5pbnRlcmVzdGluZyhjb21taXQsIHJldnMsIHNob3dfZWRnZSk7CisJCX0KIAl9CisKIAlpZiAocmV2cy0+ZWRnZV9oaW50X2FnZ3Jlc3NpdmUpIHsKIAkJZm9yIChpID0gMDsgaSA8IHJldnMtPmNtZGxpbmUubnI7IGkrKykgewogCQkJc3RydWN0IG9iamVjdCAqb2JqID0gcmV2cy0+Y21kbGluZS5yZXZbaV0uaXRlbTsKQEAgLTMwOCwxMCArMzY1LDE1IEBACiAJCSAqIGFuIHVuaW50ZXJlc3RpbmcgYm91bmRhcnkgY29tbWl0IG1heSBub3QgaGF2ZSBpdHMgdHJlZQogCQkgKiBwYXJzZWQgeWV0LCBidXQgd2UgYXJlIG5vdCBnb2luZyB0byBzaG93IHRoZW0gYW55d2F5CiAJCSAqLwotCQlpZiAoZ2V0X2NvbW1pdF90cmVlKGNvbW1pdCkpIHsKKwkJaWYgKCFjdHgtPnJldnMtPnRyZWVfb2JqZWN0cykKKwkJCTsgLyogZG8gbm90IGJvdGhlciBsb2FkaW5nIHRyZWUgKi8KKwkJZWxzZSBpZiAoZ2V0X2NvbW1pdF90cmVlKGNvbW1pdCkpIHsKIAkJCXN0cnVjdCB0cmVlICp0cmVlID0gZ2V0X2NvbW1pdF90cmVlKGNvbW1pdCk7CiAJCQl0cmVlLT5vYmplY3QuZmxhZ3MgfD0gTk9UX1VTRVJfR0lWRU47CiAJCQlhZGRfcGVuZGluZ190cmVlKGN0eC0+cmV2cywgdHJlZSk7CisJCX0gZWxzZSBpZiAoY29tbWl0LT5vYmplY3QucGFyc2VkKSB7CisJCQlkaWUoXygidW5hYmxlIHRvIGxvYWQgcm9vdCB0cmVlIGZvciBjb21taXQgJXMiKSwKKwkJCSAgICAgIG9pZF90b19oZXgoJmNvbW1pdC0+b2JqZWN0Lm9pZCkpOwogCQl9CiAJCWN0eC0+c2hvd19jb21taXQoY29tbWl0LCBjdHgtPnNob3dfZGF0YSk7CiAKQEAgLTMzNyw4ICszOTksNyBAQAogCWN0eC5zaG93X2NvbW1pdCA9IHNob3dfY29tbWl0OwogCWN0eC5zaG93X29iamVjdCA9IHNob3dfb2JqZWN0OwogCWN0eC5zaG93X2RhdGEgPSBzaG93X2RhdGE7Ci0JY3R4LmZpbHRlcl9mbiA9IE5VTEw7Ci0JY3R4LmZpbHRlcl9kYXRhID0gTlVMTDsKKwljdHguZmlsdGVyID0gTlVMTDsKIAlkb190cmF2ZXJzZSgmY3R4KTsKIH0KIApAQCAtMzUxLDE3ICs0MTIsMTIgQEAKIAlzdHJ1Y3Qgb2lkc2V0ICpvbWl0dGVkKQogewogCXN0cnVjdCB0cmF2ZXJzYWxfY29udGV4dCBjdHg7Ci0JZmlsdGVyX2ZyZWVfZm4gZmlsdGVyX2ZyZWVfZm4gPSBOVUxMOwogCiAJY3R4LnJldnMgPSByZXZzOwogCWN0eC5zaG93X29iamVjdCA9IHNob3dfb2JqZWN0OwogCWN0eC5zaG93X2NvbW1pdCA9IHNob3dfY29tbWl0OwogCWN0eC5zaG93X2RhdGEgPSBzaG93X2RhdGE7Ci0JY3R4LmZpbHRlcl9mbiA9IE5VTEw7Ci0KLQljdHguZmlsdGVyX2RhdGEgPSBsaXN0X29iamVjdHNfZmlsdGVyX19pbml0KG9taXR0ZWQsIGZpbHRlcl9vcHRpb25zLAotCQkJCQkJICAgICZjdHguZmlsdGVyX2ZuLCAmZmlsdGVyX2ZyZWVfZm4pOworCWN0eC5maWx0ZXIgPSBsaXN0X29iamVjdHNfZmlsdGVyX19pbml0KG9taXR0ZWQsIGZpbHRlcl9vcHRpb25zKTsKIAlkb190cmF2ZXJzZSgmY3R4KTsKLQlpZiAoY3R4LmZpbHRlcl9kYXRhICYmIGZpbHRlcl9mcmVlX2ZuKQotCQlmaWx0ZXJfZnJlZV9mbihjdHguZmlsdGVyX2RhdGEpOworCWxpc3Rfb2JqZWN0c19maWx0ZXJfX2ZyZWUoY3R4LmZpbHRlcik7CiB9CmRpZmYgLS1naXQgYS9saXN0LW9iamVjdHMuaCBiL2xpc3Qtb2JqZWN0cy5oCmluZGV4IGFkNDA3NjIuLmE5NTI2ODAgMTAwNjQ0Ci0tLSBhL2xpc3Qtb2JqZWN0cy5oCisrKyBiL2xpc3Qtb2JqZWN0cy5oCkBAIC0xMCw3ICsxMCw5IEBACiB2b2lkIHRyYXZlcnNlX2NvbW1pdF9saXN0KHN0cnVjdCByZXZfaW5mbyAqLCBzaG93X2NvbW1pdF9mbiwgc2hvd19vYmplY3RfZm4sIHZvaWQgKik7CiAKIHR5cGVkZWYgdm9pZCAoKnNob3dfZWRnZV9mbikoc3RydWN0IGNvbW1pdCAqKTsKLXZvaWQgbWFya19lZGdlc191bmludGVyZXN0aW5nKHN0cnVjdCByZXZfaW5mbyAqLCBzaG93X2VkZ2VfZm4pOwordm9pZCBtYXJrX2VkZ2VzX3VuaW50ZXJlc3Rpbmcoc3RydWN0IHJldl9pbmZvICpyZXZzLAorCQkJICAgICAgc2hvd19lZGdlX2ZuIHNob3dfZWRnZSwKKwkJCSAgICAgIGludCBzcGFyc2UpOwogCiBzdHJ1Y3Qgb2lkc2V0Owogc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9uczsKZGlmZiAtLWdpdCBhL2xsLW1lcmdlLmMgYi9sbC1tZXJnZS5jCmluZGV4IDNjOGZiOTEuLmQ2NWE4OTcgMTAwNjQ0Ci0tLSBhL2xsLW1lcmdlLmMKKysrIGIvbGwtbWVyZ2UuYwpAQCAtMzIsNiArMzIsMjAgQEAKIAljaGFyICpjbWRsaW5lOwogfTsKIAorc3RhdGljIHN0cnVjdCBhdHRyX2NoZWNrICptZXJnZV9hdHRyaWJ1dGVzOworc3RhdGljIHN0cnVjdCBhdHRyX2NoZWNrICpsb2FkX21lcmdlX2F0dHJpYnV0ZXModm9pZCkKK3sKKwlpZiAoIW1lcmdlX2F0dHJpYnV0ZXMpCisJCW1lcmdlX2F0dHJpYnV0ZXMgPSBhdHRyX2NoZWNrX2luaXRsKCJtZXJnZSIsICJjb25mbGljdC1tYXJrZXItc2l6ZSIsIE5VTEwpOworCXJldHVybiBtZXJnZV9hdHRyaWJ1dGVzOworfQorCit2b2lkIHJlc2V0X21lcmdlX2F0dHJpYnV0ZXModm9pZCkKK3sKKwlhdHRyX2NoZWNrX2ZyZWUobWVyZ2VfYXR0cmlidXRlcyk7CisJbWVyZ2VfYXR0cmlidXRlcyA9IE5VTEw7Cit9CisKIC8qCiAgKiBCdWlsdC1pbiBsb3ctbGV2ZWxzCiAgKi8KQEAgLTM1NCw3ICszNjgsNyBAQAogCSAgICAgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCiAJICAgICBjb25zdCBzdHJ1Y3QgbGxfbWVyZ2Vfb3B0aW9ucyAqb3B0cykKIHsKLQlzdGF0aWMgc3RydWN0IGF0dHJfY2hlY2sgKmNoZWNrOworCXN0cnVjdCBhdHRyX2NoZWNrICpjaGVjayA9IGxvYWRfbWVyZ2VfYXR0cmlidXRlcygpOwogCXN0YXRpYyBjb25zdCBzdHJ1Y3QgbGxfbWVyZ2Vfb3B0aW9ucyBkZWZhdWx0X29wdHM7CiAJY29uc3QgY2hhciAqbGxfZHJpdmVyX25hbWUgPSBOVUxMOwogCWludCBtYXJrZXJfc2l6ZSA9IERFRkFVTFRfQ09ORkxJQ1RfTUFSS0VSX1NJWkU7CkBAIC0zNjksOSArMzgzLDYgQEAKIAkJbm9ybWFsaXplX2ZpbGUodGhlaXJzLCBwYXRoLCBpc3RhdGUpOwogCX0KIAotCWlmICghY2hlY2spCi0JCWNoZWNrID0gYXR0cl9jaGVja19pbml0bCgibWVyZ2UiLCAiY29uZmxpY3QtbWFya2VyLXNpemUiLCBOVUxMKTsKLQogCWdpdF9jaGVja19hdHRyKGlzdGF0ZSwgcGF0aCwgY2hlY2spOwogCWxsX2RyaXZlcl9uYW1lID0gY2hlY2stPml0ZW1zWzBdLnZhbHVlOwogCWlmIChjaGVjay0+aXRlbXNbMV0udmFsdWUpIHsKQEAgLTM4NCw3ICszOTUsOSBAQAogCWlmIChvcHRzLT52aXJ0dWFsX2FuY2VzdG9yKSB7CiAJCWlmIChkcml2ZXItPnJlY3Vyc2l2ZSkKIAkJCWRyaXZlciA9IGZpbmRfbGxfbWVyZ2VfZHJpdmVyKGRyaXZlci0+cmVjdXJzaXZlKTsKLQkJbWFya2VyX3NpemUgKz0gMjsKKwl9CisJaWYgKG9wdHMtPmV4dHJhX21hcmtlcl9zaXplKSB7CisJCW1hcmtlcl9zaXplICs9IG9wdHMtPmV4dHJhX21hcmtlcl9zaXplOwogCX0KIAlyZXR1cm4gZHJpdmVyLT5mbihkcml2ZXIsIHJlc3VsdF9idWYsIHBhdGgsIGFuY2VzdG9yLCBhbmNlc3Rvcl9sYWJlbCwKIAkJCSAgb3Vycywgb3VyX2xhYmVsLCB0aGVpcnMsIHRoZWlyX2xhYmVsLApkaWZmIC0tZ2l0IGEvbGwtbWVyZ2UuaCBiL2xsLW1lcmdlLmgKaW5kZXggNmM2ZTIyZS4uYWNlYjFiMiAxMDA2NDQKLS0tIGEvbGwtbWVyZ2UuaAorKysgYi9sbC1tZXJnZS5oCkBAIC03LDE1ICs3LDg3IEBACiAKICNpbmNsdWRlICJ4ZGlmZi94ZGlmZi5oIgogCisvKioKKyAqCisgKiBDYWxsaW5nIHNlcXVlbmNlOgorICogLS0tLS0tLS0tLS0tLS0tLQorICoKKyAqIC0gUHJlcGFyZSBhIGBzdHJ1Y3QgbGxfbWVyZ2Vfb3B0aW9uc2AgdG8gcmVjb3JkIG9wdGlvbnMuCisgKiAgIElmIHlvdSBoYXZlIG5vIHNwZWNpYWwgcmVxdWVzdHMsIHNraXAgdGhpcyBhbmQgcGFzcyBgTlVMTGAKKyAqICAgYXMgdGhlIGBvcHRzYCBwYXJhbWV0ZXIgdG8gdXNlIHRoZSBkZWZhdWx0IG9wdGlvbnMuCisgKgorICogLSBBbGxvY2F0ZSBhbiBtbWJ1ZmZlcl90IHZhcmlhYmxlIGZvciB0aGUgcmVzdWx0LgorICoKKyAqIC0gQWxsb2NhdGUgYW5kIGZpbGwgdmFyaWFibGVzIHdpdGggdGhlIGZpbGUncyBvcmlnaW5hbCBjb250ZW50CisgKiAgIGFuZCB0d28gbW9kaWZpZWQgdmVyc2lvbnMgKHVzaW5nIGByZWFkX21tZmlsZWAsIGZvciBleGFtcGxlKS4KKyAqCisgKiAtIENhbGwgYGxsX21lcmdlKClgLgorICoKKyAqIC0gUmVhZCB0aGUgbWVyZ2VkIGNvbnRlbnQgZnJvbSBgcmVzdWx0X2J1Zi5wdHJgIGFuZCBgcmVzdWx0X2J1Zi5zaXplYC4KKyAqCisgKiAtIFJlbGVhc2UgYnVmZmVycyB3aGVuIGZpbmlzaGVkLiAgQSBzaW1wbGUKKyAqICAgYGZyZWUoYW5jZXN0b3IucHRyKTsgZnJlZShvdXJzLnB0cik7IGZyZWUodGhlaXJzLnB0cik7CisgKiAgIGZyZWUocmVzdWx0X2J1Zi5wdHIpO2Agd2lsbCBkby4KKyAqCisgKiBJZiB0aGUgbW9kaWZpY2F0aW9ucyBkbyBub3QgbWVyZ2UgY2xlYW5seSwgYGxsX21lcmdlYCB3aWxsIHJldHVybiBhCisgKiBub256ZXJvIHZhbHVlIGFuZCBgcmVzdWx0X2J1ZmAgd2lsbCBnZW5lcmFsbHkgaW5jbHVkZSBhIGRlc2NyaXB0aW9uIG9mCisgKiB0aGUgY29uZmxpY3QgYnJhY2tldGVkIGJ5IG1hcmtlcnMgc3VjaCBhcyB0aGUgdHJhZGl0aW9uYWwgYDw8PDw8PDxgCisgKiBhbmQgYD4+Pj4+Pj5gLgorICoKKyAqIFRoZSBgYW5jZXN0b3JfbGFiZWxgLCBgb3VyX2xhYmVsYCwgYW5kIGB0aGVpcl9sYWJlbGAgcGFyYW1ldGVycyBhcmUKKyAqIHVzZWQgdG8gbGFiZWwgdGhlIGRpZmZlcmVudCBzaWRlcyBvZiBhIGNvbmZsaWN0IGlmIHRoZSBtZXJnZSBkcml2ZXIKKyAqIHN1cHBvcnRzIHRoaXMuCisgKi8KKworCiBzdHJ1Y3QgaW5kZXhfc3RhdGU7CiAKKy8qKgorICogVGhpcyBkZXNjcmliZXMgdGhlIHNldCBvZiBvcHRpb25zIHRoZSBjYWxsaW5nIHByb2dyYW0gd2FudHMgdG8gYWZmZWN0CisgKiB0aGUgb3BlcmF0aW9uIG9mIGEgbG93LWxldmVsIChzaW5nbGUgZmlsZSkgbWVyZ2UuCisgKi8KIHN0cnVjdCBsbF9tZXJnZV9vcHRpb25zIHsKKworCS8qKgorCSAqIEJlaGF2ZSBhcyB0aG91Z2ggdGhpcyB3ZXJlIHBhcnQgb2YgYSBtZXJnZSBiZXR3ZWVuIGNvbW1vbiBhbmNlc3RvcnMgaW4KKwkgKiBhIHJlY3Vyc2l2ZSBtZXJnZSAobWVyZ2VzIG9mIGJpbmFyeSBmaWxlcyBtYXkgbmVlZCB0byBiZSBoYW5kbGVkCisJICogZGlmZmVyZW50bHkgaW4gc3VjaCBjYXNlcywgZm9yIGV4YW1wbGUpLiBJZiBhIGhlbHBlciBwcm9ncmFtIGlzCisJICogc3BlY2lmaWVkIGJ5IHRoZSBgW21lcmdlICI8ZHJpdmVyPiJdIHJlY3Vyc2l2ZWAgY29uZmlndXJhdGlvbiwgaXQgd2lsbAorCSAqIGJlIHVzZWQuCisJICovCiAJdW5zaWduZWQgdmlydHVhbF9hbmNlc3RvciA6IDE7Ci0JdW5zaWduZWQgdmFyaWFudCA6IDI7CS8qIGZhdm9yIG91cnMsIGZhdm9yIHRoZWlycywgb3IgdW5pb24gbWVyZ2UgKi8KKworCS8qKgorCSAqIFJlc29sdmUgbG9jYWwgY29uZmxpY3RzIGF1dG9tYXRpY2FsbHkgaW4gZmF2b3Igb2Ygb25lIHNpZGUgb3IgdGhlIG90aGVyCisJICogKGFzIGluICdnaXQgbWVyZ2UtZmlsZScgYC0tb3Vyc2AvYC0tdGhlaXJzYC9gLS11bmlvbmApLiAgQ2FuIGJlIGAwYCwKKwkgKiBgWERMX01FUkdFX0ZBVk9SX09VUlNgLCBgWERMX01FUkdFX0ZBVk9SX1RIRUlSU2AsCisJICogb3IgYFhETF9NRVJHRV9GQVZPUl9VTklPTmAuCisJICovCisJdW5zaWduZWQgdmFyaWFudCA6IDI7CisKKwkvKioKKwkgKiBSZXNtdWRnZSBhbmQgY2xlYW4gdGhlICJiYXNlIiwgInRoZWlycyIgYW5kICJvdXJzIiBmaWxlcyBiZWZvcmUgbWVyZ2luZy4KKwkgKiBVc2UgdGhpcyB3aGVuIHRoZSBtZXJnZSBpcyBsaWtlbHkgdG8gaGF2ZSBvdmVybGFwcGVkIHdpdGggYSBjaGFuZ2UgaW4KKwkgKiBzbXVkZ2UvY2xlYW4gb3IgZW5kLW9mLWxpbmUgbm9ybWFsaXphdGlvbiBydWxlcy4KKwkgKi8KIAl1bnNpZ25lZCByZW5vcm1hbGl6ZSA6IDE7CisKKwkvKioKKwkgKiBJbmNyZWFzZSB0aGUgbGVuZ3RoIG9mIGNvbmZsaWN0IG1hcmtlcnMgc28gdGhhdCBuZXN0ZWQgY29uZmxpY3RzCisJwqAqIGNhbiBiZSBkaWZmZXJlbnRpYXRlZC4KKwkgKi8KKwl1bnNpZ25lZCBleHRyYV9tYXJrZXJfc2l6ZTsKKworCS8qIEV4dHJhIHhwcGFyYW1fdCBmbGFncyBhcyBkZWZpbmVkIGluIHhkaWZmL3hkaWZmLmguICovCiAJbG9uZyB4ZGxfb3B0czsKIH07CiAKKy8qKgorICogUGVyZm9ybSBhIHRocmVlLXdheSBzaW5nbGUtZmlsZSBtZXJnZSBpbiBjb3JlLiAgVGhpcyBpcyBhIHRoaW4gd3JhcHBlcgorICogYXJvdW5kIGB4ZGxfbWVyZ2VgIHRoYXQgdGFrZXMgdGhlIHBhdGggYW5kIGFueSBtZXJnZSBiYWNrZW5kIHNwZWNpZmllZCBpbgorICogYC5naXRhdHRyaWJ1dGVzYCBvciBgLmdpdC9pbmZvL2F0dHJpYnV0ZXNgIGludG8gYWNjb3VudC4KKyAqIFJldHVybnMgMCBmb3IgYSBjbGVhbiBtZXJnZS4KKyAqLwogaW50IGxsX21lcmdlKG1tYnVmZmVyX3QgKnJlc3VsdF9idWYsCiAJICAgICBjb25zdCBjaGFyICpwYXRoLAogCSAgICAgbW1maWxlX3QgKmFuY2VzdG9yLCBjb25zdCBjaGFyICphbmNlc3Rvcl9sYWJlbCwKQEAgLTI1LDUgKzk3LDYgQEAKIAkgICAgIGNvbnN0IHN0cnVjdCBsbF9tZXJnZV9vcHRpb25zICpvcHRzKTsKIAogaW50IGxsX21lcmdlX21hcmtlcl9zaXplKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLCBjb25zdCBjaGFyICpwYXRoKTsKK3ZvaWQgcmVzZXRfbWVyZ2VfYXR0cmlidXRlcyh2b2lkKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9sb2NrZmlsZS5oIGIvbG9ja2ZpbGUuaAppbmRleCAzNTQwM2NjLi45ODQzMDUzIDEwMDY0NAotLS0gYS9sb2NrZmlsZS5oCisrKyBiL2xvY2tmaWxlLmgKQEAgLTE1OSw3ICsxNTksNyBAQAogICogdGltZW91dF9tcyBpcyAtMSwgcmV0cnkgaW5kZWZpbml0ZWx5LiBUaGUgZmxhZ3MgYXJndW1lbnQgYW5kIGVycm9yCiAgKiBoYW5kbGluZyBhcmUgZGVzY3JpYmVkIGFib3ZlLgogICovCi1leHRlcm4gaW50IGhvbGRfbG9ja19maWxlX2Zvcl91cGRhdGVfdGltZW91dCgKK2ludCBob2xkX2xvY2tfZmlsZV9mb3JfdXBkYXRlX3RpbWVvdXQoCiAJCXN0cnVjdCBsb2NrX2ZpbGUgKmxrLCBjb25zdCBjaGFyICpwYXRoLAogCQlpbnQgZmxhZ3MsIGxvbmcgdGltZW91dF9tcyk7CiAKQEAgLTE4OCw4ICsxODgsOCBAQAogICogb2YgYGhvbGRfbG9ja19maWxlX2Zvcl91cGRhdGUoKWAgdG8gbG9jayBgcGF0aGAuIGBlcnJgIHNob3VsZCBiZSB0aGUKICAqIGBlcnJub2Agc2V0IGJ5IHRoZSBmYWlsaW5nIGNhbGwuCiAgKi8KLWV4dGVybiB2b2lkIHVuYWJsZV90b19sb2NrX21lc3NhZ2UoY29uc3QgY2hhciAqcGF0aCwgaW50IGVyciwKLQkJCQkgICBzdHJ1Y3Qgc3RyYnVmICpidWYpOwordm9pZCB1bmFibGVfdG9fbG9ja19tZXNzYWdlKGNvbnN0IGNoYXIgKnBhdGgsIGludCBlcnIsCisJCQkgICAgc3RydWN0IHN0cmJ1ZiAqYnVmKTsKIAogLyoKICAqIEVtaXQgYW4gYXBwcm9wcmlhdGUgZXJyb3IgbWVzc2FnZSBhbmQgYGRpZSgpYCBmb2xsb3dpbmcgdGhlIGZhaWx1cmUKQEAgLTE5Nyw3ICsxOTcsNyBAQAogICogYGVycm5vYCBzZXQgYnkgdGhlIGZhaWxpbmcKICAqIGNhbGwuCiAgKi8KLWV4dGVybiBOT1JFVFVSTiB2b2lkIHVuYWJsZV90b19sb2NrX2RpZShjb25zdCBjaGFyICpwYXRoLCBpbnQgZXJyKTsKK05PUkVUVVJOIHZvaWQgdW5hYmxlX3RvX2xvY2tfZGllKGNvbnN0IGNoYXIgKnBhdGgsIGludCBlcnIpOwogCiAvKgogICogQXNzb2NpYXRlIGEgc3RkaW8gc3RyZWFtIHdpdGggdGhlIGxvY2tmaWxlICh3aGljaCBtdXN0IHN0aWxsIGJlCkBAIC0yMzQsNyArMjM0LDcgQEAKICAqIFJldHVybiB0aGUgcGF0aCBvZiB0aGUgZmlsZSB0aGF0IGlzIGxvY2tlZCBieSB0aGUgc3BlY2lmaWVkCiAgKiBsb2NrX2ZpbGUgb2JqZWN0LiBUaGUgY2FsbGVyIG11c3QgZnJlZSB0aGUgbWVtb3J5LgogICovCi1leHRlcm4gY2hhciAqZ2V0X2xvY2tlZF9maWxlX3BhdGgoc3RydWN0IGxvY2tfZmlsZSAqbGspOworY2hhciAqZ2V0X2xvY2tlZF9maWxlX3BhdGgoc3RydWN0IGxvY2tfZmlsZSAqbGspOwogCiAvKgogICogSWYgdGhlIGxvY2tmaWxlIGlzIHN0aWxsIG9wZW4sIGNsb3NlIGl0IChhbmQgdGhlIGZpbGUgcG9pbnRlciBpZiBpdApAQCAtMjgyLDcgKzI4Miw3IEBACiAgKiBjYWxsIGBjb21taXRfbG9ja19maWxlKClgIGZvciBhIGBsb2NrX2ZpbGVgIG9iamVjdCB0aGF0IGlzIG5vdAogICogY3VycmVudGx5IGxvY2tlZC4KICAqLwotZXh0ZXJuIGludCBjb21taXRfbG9ja19maWxlKHN0cnVjdCBsb2NrX2ZpbGUgKmxrKTsKK2ludCBjb21taXRfbG9ja19maWxlKHN0cnVjdCBsb2NrX2ZpbGUgKmxrKTsKIAogLyoKICAqIExpa2UgYGNvbW1pdF9sb2NrX2ZpbGUoKWAsIGJ1dCByZW5hbWUgdGhlIGxvY2tmaWxlIHRvIHRoZSBwcm92aWRlZApkaWZmIC0tZ2l0IGEvbG9nLXRyZWUuYyBiL2xvZy10cmVlLmMKaW5kZXggMTA2ODBjMS4uNTIxMjc0MiAxMDA2NDQKLS0tIGEvbG9nLXRyZWUuYworKysgYi9sb2ctdHJlZS5jCkBAIC03Nyw2ICs3Nyw3IEBACiAKIGNvbnN0IHN0cnVjdCBuYW1lX2RlY29yYXRpb24gKmdldF9uYW1lX2RlY29yYXRpb24oY29uc3Qgc3RydWN0IG9iamVjdCAqb2JqKQogeworCWxvYWRfcmVmX2RlY29yYXRpb25zKE5VTEwsIERFQ09SQVRFX1NIT1JUX1JFRlMpOwogCXJldHVybiBsb29rdXBfZGVjb3JhdGlvbigmbmFtZV9kZWNvcmF0aW9uLCBvYmopOwogfQogCkBAIC00OTksNyArNTAwLDggQEAKIAlpbnQgc3RhdHVzLCBudGg7CiAJc2l6ZV90IHBheWxvYWRfc2l6ZSwgZ3BnX21lc3NhZ2Vfb2Zmc2V0OwogCi0JaGFzaF9vYmplY3RfZmlsZShleHRyYS0+dmFsdWUsIGV4dHJhLT5sZW4sIHR5cGVfbmFtZShPQkpfVEFHKSwgJm9pZCk7CisJaGFzaF9vYmplY3RfZmlsZSh0aGVfaGFzaF9hbGdvLCBleHRyYS0+dmFsdWUsIGV4dHJhLT5sZW4sCisJCQkgdHlwZV9uYW1lKE9CSl9UQUcpLCAmb2lkKTsKIAl0YWcgPSBsb29rdXBfdGFnKHRoZV9yZXBvc2l0b3J5LCAmb2lkKTsKIAlpZiAoIXRhZykKIAkJcmV0dXJuIC0xOyAvKiBlcnJvciBtZXNzYWdlIGFscmVhZHkgZ2l2ZW4gKi8KQEAgLTUxNCw3ICs1MTYsNyBAQAogCQkJICAgICJtZXJnZWQgdGFnICclcydcbiIsIHRhZy0+dGFnKTsKIAllbHNlIGlmICgobnRoID0gd2hpY2hfcGFyZW50KCZ0YWctPnRhZ2dlZC0+b2lkLCBjb21taXQpKSA8IDApCiAJCXN0cmJ1Zl9hZGRmKCZ2ZXJpZnlfbWVzc2FnZSwgInRhZyAlcyBuYW1lcyBhIG5vbi1wYXJlbnQgJXNcbiIsCi0JCQkJICAgIHRhZy0+dGFnLCB0YWctPnRhZ2dlZC0+b2lkLmhhc2gpOworCQkJCSAgICB0YWctPnRhZywgb2lkX3RvX2hleCgmdGFnLT50YWdnZWQtPm9pZCkpOwogCWVsc2UKIAkJc3RyYnVmX2FkZGYoJnZlcmlmeV9tZXNzYWdlLAogCQkJICAgICJwYXJlbnQgIyVkLCB0YWdnZWQgJyVzJ1xuIiwgbnRoICsgMSwgdGFnLT50YWcpOwpAQCAtNjc3LDkgKzY3OSw3IEBACiAJCXJhdyA9IChvcHQtPmNvbW1pdF9mb3JtYXQgPT0gQ01JVF9GTVRfVVNFUkZPUk1BVCk7CiAJCWZvcm1hdF9kaXNwbGF5X25vdGVzKCZjb21taXQtPm9iamVjdC5vaWQsICZub3RlYnVmLAogCQkJCSAgICAgZ2V0X2xvZ19vdXRwdXRfZW5jb2RpbmcoKSwgcmF3KTsKLQkJY3R4Lm5vdGVzX21lc3NhZ2UgPSBub3RlYnVmLmxlbgotCQkJPyBzdHJidWZfZGV0YWNoKCZub3RlYnVmLCBOVUxMKQotCQkJOiB4Y2FsbG9jKDEsIDEpOworCQljdHgubm90ZXNfbWVzc2FnZSA9IHN0cmJ1Zl9kZXRhY2goJm5vdGVidWYsIE5VTEwpOwogCX0KIAogCS8qCkBAIC02ODcsOCArNjg3LDcgQEAKIAkgKi8KIAlpZiAoY3R4Lm5lZWRfOGJpdF9jdGUgPj0gMCAmJiBvcHQtPmFkZF9zaWdub2ZmKQogCQljdHgubmVlZF84Yml0X2N0ZSA9Ci0JCQloYXNfbm9uX2FzY2lpKGZtdF9uYW1lKGdldGVudigiR0lUX0NPTU1JVFRFUl9OQU1FIiksCi0JCQkJCSAgICAgICBnZXRlbnYoIkdJVF9DT01NSVRURVJfRU1BSUwiKSkpOworCQkJaGFzX25vbl9hc2NpaShmbXRfbmFtZShXQU5UX0NPTU1JVFRFUl9JREVOVCkpOwogCWN0eC5kYXRlX21vZGUgPSBvcHQtPmRhdGVfbW9kZTsKIAljdHguZGF0ZV9tb2RlX2V4cGxpY2l0ID0gb3B0LT5kYXRlX21vZGVfZXhwbGljaXQ7CiAJY3R4LmFiYnJldiA9IG9wdC0+ZGlmZm9wdC5hYmJyZXY7CkBAIC03MDAsNiArNjk5LDcgQEAKIAljdHguY29sb3IgPSBvcHQtPmRpZmZvcHQudXNlX2NvbG9yOwogCWN0eC5leHBhbmRfdGFic19pbl9sb2cgPSBvcHQtPmV4cGFuZF90YWJzX2luX2xvZzsKIAljdHgub3V0cHV0X2VuY29kaW5nID0gZ2V0X2xvZ19vdXRwdXRfZW5jb2RpbmcoKTsKKwljdHgucmV2ID0gb3B0OwogCWlmIChvcHQtPmZyb21faWRlbnQubWFpbF9iZWdpbiAmJiBvcHQtPmZyb21faWRlbnQubmFtZV9iZWdpbikKIAkJY3R4LmZyb21faWRlbnQgPSAmb3B0LT5mcm9tX2lkZW50OwogCWlmIChvcHQtPmdyYXBoKQpAQCAtNzcxLDcgKzc3MSw3IEBACiAJCW9wdHMudXNlX2NvbG9yID0gb3B0LT5kaWZmb3B0LnVzZV9jb2xvcjsKIAkJZGlmZl9zZXR1cF9kb25lKCZvcHRzKTsKIAkJc2hvd19yYW5nZV9kaWZmKG9wdC0+cmRpZmYxLCBvcHQtPnJkaWZmMiwKLQkJCQlvcHQtPmNyZWF0aW9uX2ZhY3RvciwgMSwgJm9wdHMpOworCQkJCW9wdC0+Y3JlYXRpb25fZmFjdG9yLCAxLCAmb3B0cywgTlVMTCk7CiAKIAkJbWVtY3B5KCZkaWZmX3F1ZXVlZF9kaWZmLCAmZHEsIHNpemVvZihkaWZmX3F1ZXVlZF9kaWZmKSk7CiAJfQpkaWZmIC0tZ2l0IGEvbHMtcmVmcy5jIGIvbHMtcmVmcy5jCmluZGV4IGEwNmYxMmUuLjgxOGFlZjcgMTAwNjQ0Ci0tLSBhL2xzLXJlZnMuYworKysgYi9scy1yZWZzLmMKQEAgLTUsNiArNSw3IEBACiAjaW5jbHVkZSAiYXJndi1hcnJheS5oIgogI2luY2x1ZGUgImxzLXJlZnMuaCIKICNpbmNsdWRlICJwa3QtbGluZS5oIgorI2luY2x1ZGUgImNvbmZpZy5oIgogCiAvKgogICogQ2hlY2sgaWYgb25lIG9mIHRoZSBwcmVmaXhlcyBpcyBhIHByZWZpeCBvZiB0aGUgcmVmLgpAQCAtNDAsNyArNDEsMTAgQEAKIAljb25zdCBjaGFyICpyZWZuYW1lX25vbnMgPSBzdHJpcF9uYW1lc3BhY2UocmVmbmFtZSk7CiAJc3RydWN0IHN0cmJ1ZiByZWZsaW5lID0gU1RSQlVGX0lOSVQ7CiAKLQlpZiAoIXJlZl9tYXRjaCgmZGF0YS0+cHJlZml4ZXMsIHJlZm5hbWUpKQorCWlmIChyZWZfaXNfaGlkZGVuKHJlZm5hbWVfbm9ucywgcmVmbmFtZSkpCisJCXJldHVybiAwOworCisJaWYgKCFyZWZfbWF0Y2goJmRhdGEtPnByZWZpeGVzLCByZWZuYW1lX25vbnMpKQogCQlyZXR1cm4gMDsKIAogCXN0cmJ1Zl9hZGRmKCZyZWZsaW5lLCAiJXMgJXMiLCBvaWRfdG9faGV4KG9pZCksIHJlZm5hbWVfbm9ucyk7CkBAIC01Myw3ICs1Nyw4IEBACiAJCWlmICghc3ltcmVmX3RhcmdldCkKIAkJCWRpZSgiJyVzJyBpcyBhIHN5bXJlZiBidXQgaXQgaXMgbm90PyIsIHJlZm5hbWUpOwogCi0JCXN0cmJ1Zl9hZGRmKCZyZWZsaW5lLCAiIHN5bXJlZi10YXJnZXQ6JXMiLCBzeW1yZWZfdGFyZ2V0KTsKKwkJc3RyYnVmX2FkZGYoJnJlZmxpbmUsICIgc3ltcmVmLXRhcmdldDolcyIsCisJCQkgICAgc3RyaXBfbmFtZXNwYWNlKHN5bXJlZl90YXJnZXQpKTsKIAl9CiAKIAlpZiAoZGF0YS0+cGVlbCkgewpAQCAtNjksNiArNzQsMTYgQEAKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIGludCBsc19yZWZzX2NvbmZpZyhjb25zdCBjaGFyICp2YXIsIGNvbnN0IGNoYXIgKnZhbHVlLCB2b2lkICpkYXRhKQoreworCS8qCisJICogV2Ugb25seSBzZXJ2ZSBmZXRjaGVzIG92ZXIgdjIgZm9yIG5vdywgc28gcmVzcGVjdCBvbmx5ICJ1cGxvYWRwYWNrIgorCSAqIGNvbmZpZy4gVGhpcyBtYXkgbmVlZCB0byBldmVudHVhbGx5IGJlIGV4cGFuZGVkIHRvICJyZWNlaXZlIiwgYnV0IHdlCisJICogZG9uJ3QgeWV0IGtub3cgaG93IHRoYXQgaW5mb3JtYXRpb24gd2lsbCBiZSBwYXNzZWQgdG8gbHMtcmVmcy4KKwkgKi8KKwlyZXR1cm4gcGFyc2VfaGlkZV9yZWZzX2NvbmZpZyh2YXIsIHZhbHVlLCAidXBsb2FkcGFjayIpOworfQorCiBpbnQgbHNfcmVmcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IGFyZ3ZfYXJyYXkgKmtleXMsCiAJICAgIHN0cnVjdCBwYWNrZXRfcmVhZGVyICpyZXF1ZXN0KQogewpAQCAtNzYsNiArOTEsOCBAQAogCiAJbWVtc2V0KCZkYXRhLCAwLCBzaXplb2YoZGF0YSkpOwogCisJZ2l0X2NvbmZpZyhsc19yZWZzX2NvbmZpZywgTlVMTCk7CisKIAl3aGlsZSAocGFja2V0X3JlYWRlcl9yZWFkKHJlcXVlc3QpICE9IFBBQ0tFVF9SRUFEX0ZMVVNIKSB7CiAJCWNvbnN0IGNoYXIgKmFyZyA9IHJlcXVlc3QtPmxpbmU7CiAJCWNvbnN0IGNoYXIgKm91dDsKZGlmZiAtLWdpdCBhL2xzLXJlZnMuaCBiL2xzLXJlZnMuaAppbmRleCBiNjI4NzdlLi43ZTU2NDZmIDEwMDY0NAotLS0gYS9scy1yZWZzLmgKKysrIGIvbHMtcmVmcy5oCkBAIC00LDcgKzQsNyBAQAogc3RydWN0IHJlcG9zaXRvcnk7CiBzdHJ1Y3QgYXJndl9hcnJheTsKIHN0cnVjdCBwYWNrZXRfcmVhZGVyOwotZXh0ZXJuIGludCBsc19yZWZzKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgYXJndl9hcnJheSAqa2V5cywKLQkJICAgc3RydWN0IHBhY2tldF9yZWFkZXIgKnJlcXVlc3QpOworaW50IGxzX3JlZnMoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBhcmd2X2FycmF5ICprZXlzLAorCSAgICBzdHJ1Y3QgcGFja2V0X3JlYWRlciAqcmVxdWVzdCk7CiAKICNlbmRpZiAvKiBMU19SRUZTX0ggKi8KZGlmZiAtLWdpdCBhL21haWxpbmZvLmMgYi9tYWlsaW5mby5jCmluZGV4IGIzOTVhZGIuLjc0MmZhMzcgMTAwNjQ0Ci0tLSBhL21haWxpbmZvLmMKKysrIGIvbWFpbGluZm8uYwpAQCAtMTksOCArMTksNyBAQAogc3RhdGljIHZvaWQgZ2V0X3NhbmVfbmFtZShzdHJ1Y3Qgc3RyYnVmICpvdXQsIHN0cnVjdCBzdHJidWYgKm5hbWUsIHN0cnVjdCBzdHJidWYgKmVtYWlsKQogewogCXN0cnVjdCBzdHJidWYgKnNyYyA9IG5hbWU7Ci0JaWYgKG5hbWUtPmxlbiA8IDMgfHwgNjAgPCBuYW1lLT5sZW4gfHwgc3RyY2hyKG5hbWUtPmJ1ZiwgJ0AnKSB8fAotCQlzdHJjaHIobmFtZS0+YnVmLCAnPCcpIHx8IHN0cmNocihuYW1lLT5idWYsICc+JykpCisJaWYgKG5hbWUtPmxlbiA8IDMgfHwgNjAgPCBuYW1lLT5sZW4gfHwgc3RycGJyayhuYW1lLT5idWYsICJAPD4iKSkKIAkJc3JjID0gZW1haWw7CiAJZWxzZSBpZiAobmFtZSA9PSBvdXQpCiAJCXJldHVybjsKQEAgLTI1NCw3ICsyNTMsNyBAQAogCW1pLT5kZWxzcCA9IGhhc19hdHRyX3ZhbHVlKGxpbmUtPmJ1ZiwgImRlbHNwPSIsICJ5ZXMiKTsKIAogCWlmIChzbHVycF9hdHRyKGxpbmUtPmJ1ZiwgImJvdW5kYXJ5PSIsIGJvdW5kYXJ5KSkgewotCQlzdHJidWZfaW5zZXJ0KGJvdW5kYXJ5LCAwLCAiLS0iLCAyKTsKKwkJc3RyYnVmX2luc2VydHN0cihib3VuZGFyeSwgMCwgIi0tIik7CiAJCWlmICgrK21pLT5jb250ZW50X3RvcCA+PSAmbWktPmNvbnRlbnRbTUFYX0JPVU5EQVJJRVNdKSB7CiAJCQllcnJvcigiVG9vIG1hbnkgYm91bmRhcmllcyB0byBoYW5kbGUiKTsKIAkJCW1pLT5pbnB1dF9lcnJvciA9IC0xOwpAQCAtMzQ2LDExICszNDUsMTcgQEAKIAkiRnJvbSIsIlN1YmplY3QiLCJEYXRlIiwKIH07CiAKLXN0YXRpYyBpbmxpbmUgaW50IGNtcF9oZWFkZXIoY29uc3Qgc3RydWN0IHN0cmJ1ZiAqbGluZSwgY29uc3QgY2hhciAqaGRyKQorc3RhdGljIGlubGluZSBpbnQgc2tpcF9oZWFkZXIoY29uc3Qgc3RydWN0IHN0cmJ1ZiAqbGluZSwgY29uc3QgY2hhciAqaGRyLAorCQkJICAgICAgY29uc3QgY2hhciAqKm91dHZhbCkKIHsKLQlpbnQgbGVuID0gc3RybGVuKGhkcik7Ci0JcmV0dXJuICFzdHJuY2FzZWNtcChsaW5lLT5idWYsIGhkciwgbGVuKSAmJiBsaW5lLT5sZW4gPiBsZW4gJiYKLQkJCWxpbmUtPmJ1ZltsZW5dID09ICc6JyAmJiBpc3NwYWNlKGxpbmUtPmJ1ZltsZW4gKyAxXSk7CisJY29uc3QgY2hhciAqdmFsOworCWlmICghc2tpcF9pcHJlZml4KGxpbmUtPmJ1ZiwgaGRyLCAmdmFsKSB8fAorCSAgICAqdmFsKysgIT0gJzonKQorCQlyZXR1cm4gMDsKKwl3aGlsZSAoaXNzcGFjZSgqdmFsKSkKKwkJdmFsKys7CisJKm91dHZhbCA9IHZhbDsKKwlyZXR1cm4gMTsKIH0KIAogc3RhdGljIGludCBpc19mb3JtYXRfcGF0Y2hfc2VwYXJhdG9yKGNvbnN0IGNoYXIgKmxpbmUsIGludCBsZW4pCkBAIC01NDMsMjIgKzU0OCwzNiBAQAogCQltaS0+aW5wdXRfZXJyb3IgPSAtMTsKIH0KIAorLyoKKyAqIFJldHVybnMgdHJ1ZSBpZiAibGluZSIgY29udGFpbnMgYSBoZWFkZXIgbWF0Y2hpbmcgImhkciIsIGluIHdoaWNoIGNhc2UgInZhbCIKKyAqIHdpbGwgY29udGFpbiB0aGUgdmFsdWUgb2YgdGhlIGhlYWRlciB3aXRoIGFueSBSRkMyMDQ3IEIgYW5kIFEgZW5jb2RpbmcKKyAqIHVud3JhcHBlZCwgYW5kIG9wdGlvbmFsbHkgbm9ybWFsaXplIHRoZSBtZXRhIGluZm9ybWF0aW9uIHRvIHV0ZjguCisgKi8KK3N0YXRpYyBpbnQgcGFyc2VfaGVhZGVyKGNvbnN0IHN0cnVjdCBzdHJidWYgKmxpbmUsCisJCQljb25zdCBjaGFyICpoZHIsCisJCQlzdHJ1Y3QgbWFpbGluZm8gKm1pLAorCQkJc3RydWN0IHN0cmJ1ZiAqdmFsKQoreworCWNvbnN0IGNoYXIgKnZhbF9zdHI7CisKKwlpZiAoIXNraXBfaGVhZGVyKGxpbmUsIGhkciwgJnZhbF9zdHIpKQorCQlyZXR1cm4gMDsKKwlzdHJidWZfYWRkc3RyKHZhbCwgdmFsX3N0cik7CisJZGVjb2RlX2hlYWRlcihtaSwgdmFsKTsKKwlyZXR1cm4gMTsKK30KKwogc3RhdGljIGludCBjaGVja19oZWFkZXIoc3RydWN0IG1haWxpbmZvICptaSwKIAkJCWNvbnN0IHN0cnVjdCBzdHJidWYgKmxpbmUsCiAJCQlzdHJ1Y3Qgc3RyYnVmICpoZHJfZGF0YVtdLCBpbnQgb3ZlcndyaXRlKQogewotCWludCBpLCByZXQgPSAwLCBsZW47CisJaW50IGksIHJldCA9IDA7CiAJc3RydWN0IHN0cmJ1ZiBzYiA9IFNUUkJVRl9JTklUOwogCiAJLyogc2VhcmNoIGZvciB0aGUgaW50ZXJlc3RpbmcgcGFydHMgKi8KIAlmb3IgKGkgPSAwOyBoZWFkZXJbaV07IGkrKykgewotCQlpbnQgbGVuID0gc3RybGVuKGhlYWRlcltpXSk7Ci0JCWlmICgoIWhkcl9kYXRhW2ldIHx8IG92ZXJ3cml0ZSkgJiYgY21wX2hlYWRlcihsaW5lLCBoZWFkZXJbaV0pKSB7Ci0JCQkvKiBVbndyYXAgaW5saW5lIEIgYW5kIFEgZW5jb2RpbmcsIGFuZCBvcHRpb25hbGx5Ci0JCQkgKiBub3JtYWxpemUgdGhlIG1ldGEgaW5mb3JtYXRpb24gdG8gdXRmOC4KLQkJCSAqLwotCQkJc3RyYnVmX2FkZCgmc2IsIGxpbmUtPmJ1ZiArIGxlbiArIDIsIGxpbmUtPmxlbiAtIGxlbiAtIDIpOwotCQkJZGVjb2RlX2hlYWRlcihtaSwgJnNiKTsKKwkJaWYgKCghaGRyX2RhdGFbaV0gfHwgb3ZlcndyaXRlKSAmJgorCQkgICAgcGFyc2VfaGVhZGVyKGxpbmUsIGhlYWRlcltpXSwgbWksICZzYikpIHsKIAkJCWhhbmRsZV9oZWFkZXIoJmhkcl9kYXRhW2ldLCAmc2IpOwogCQkJcmV0ID0gMTsKIAkJCWdvdG8gY2hlY2tfaGVhZGVyX291dDsKQEAgLTU2NiwyNyArNTg1LDE3IEBACiAJfQogCiAJLyogQ29udGVudCBzdHVmZiAqLwotCWlmIChjbXBfaGVhZGVyKGxpbmUsICJDb250ZW50LVR5cGUiKSkgewotCQlsZW4gPSBzdHJsZW4oIkNvbnRlbnQtVHlwZTogIik7Ci0JCXN0cmJ1Zl9hZGQoJnNiLCBsaW5lLT5idWYgKyBsZW4sIGxpbmUtPmxlbiAtIGxlbik7Ci0JCWRlY29kZV9oZWFkZXIobWksICZzYik7Ci0JCXN0cmJ1Zl9pbnNlcnQoJnNiLCAwLCAiQ29udGVudC1UeXBlOiAiLCBsZW4pOworCWlmIChwYXJzZV9oZWFkZXIobGluZSwgIkNvbnRlbnQtVHlwZSIsIG1pLCAmc2IpKSB7CiAJCWhhbmRsZV9jb250ZW50X3R5cGUobWksICZzYik7CiAJCXJldCA9IDE7CiAJCWdvdG8gY2hlY2tfaGVhZGVyX291dDsKIAl9Ci0JaWYgKGNtcF9oZWFkZXIobGluZSwgIkNvbnRlbnQtVHJhbnNmZXItRW5jb2RpbmciKSkgewotCQlsZW4gPSBzdHJsZW4oIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6ICIpOwotCQlzdHJidWZfYWRkKCZzYiwgbGluZS0+YnVmICsgbGVuLCBsaW5lLT5sZW4gLSBsZW4pOwotCQlkZWNvZGVfaGVhZGVyKG1pLCAmc2IpOworCWlmIChwYXJzZV9oZWFkZXIobGluZSwgIkNvbnRlbnQtVHJhbnNmZXItRW5jb2RpbmciLCBtaSwgJnNiKSkgewogCQloYW5kbGVfY29udGVudF90cmFuc2Zlcl9lbmNvZGluZyhtaSwgJnNiKTsKIAkJcmV0ID0gMTsKIAkJZ290byBjaGVja19oZWFkZXJfb3V0OwogCX0KLQlpZiAoY21wX2hlYWRlcihsaW5lLCAiTWVzc2FnZS1JZCIpKSB7Ci0JCWxlbiA9IHN0cmxlbigiTWVzc2FnZS1JZDogIik7Ci0JCXN0cmJ1Zl9hZGQoJnNiLCBsaW5lLT5idWYgKyBsZW4sIGxpbmUtPmxlbiAtIGxlbik7Ci0JCWRlY29kZV9oZWFkZXIobWksICZzYik7CisJaWYgKHBhcnNlX2hlYWRlcihsaW5lLCAiTWVzc2FnZS1JZCIsIG1pLCAmc2IpKSB7CiAJCWlmIChtaS0+YWRkX21lc3NhZ2VfaWQpCiAJCQltaS0+bWVzc2FnZV9pZCA9IHN0cmJ1Zl9kZXRhY2goJnNiLCBOVUxMKTsKIAkJcmV0ID0gMTsKQEAgLTYwNyw4ICs2MTYsOSBAQAogCQkJICAgIGNvbnN0IHN0cnVjdCBzdHJidWYgKmxpbmUpCiB7CiAJaW50IGk7CisJY29uc3QgY2hhciAqdmFsOwogCWZvciAoaSA9IDA7IGhlYWRlcltpXTsgaSsrKQotCQlpZiAoIW1pLT5zX2hkcl9kYXRhW2ldICYmIGNtcF9oZWFkZXIobGluZSwgaGVhZGVyW2ldKSkKKwkJaWYgKCFtaS0+c19oZHJfZGF0YVtpXSAmJiBza2lwX2hlYWRlcihsaW5lLCBoZWFkZXJbaV0sICZ2YWwpKQogCQkJcmV0dXJuIDE7CiAJcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9tYWlsaW5mby5oIGIvbWFpbGluZm8uaAppbmRleCA2ODMwZTFlLi43OWIxZDY3IDEwMDY0NAotLS0gYS9tYWlsaW5mby5oCisrKyBiL21haWxpbmZvLmgKQEAgLTM5LDggKzM5LDggQEAKIAlpbnQgaW5wdXRfZXJyb3I7CiB9OwogCi1leHRlcm4gdm9pZCBzZXR1cF9tYWlsaW5mbyhzdHJ1Y3QgbWFpbGluZm8gKik7Ci1leHRlcm4gaW50IG1haWxpbmZvKHN0cnVjdCBtYWlsaW5mbyAqLCBjb25zdCBjaGFyICptc2csIGNvbnN0IGNoYXIgKnBhdGNoKTsKLWV4dGVybiB2b2lkIGNsZWFyX21haWxpbmZvKHN0cnVjdCBtYWlsaW5mbyAqKTsKK3ZvaWQgc2V0dXBfbWFpbGluZm8oc3RydWN0IG1haWxpbmZvICopOworaW50IG1haWxpbmZvKHN0cnVjdCBtYWlsaW5mbyAqLCBjb25zdCBjaGFyICptc2csIGNvbnN0IGNoYXIgKnBhdGNoKTsKK3ZvaWQgY2xlYXJfbWFpbGluZm8oc3RydWN0IG1haWxpbmZvICopOwogCiAjZW5kaWYgLyogTUFJTElORk9fSCAqLwpkaWZmIC0tZ2l0IGEvbWF0Y2gtdHJlZXMuYyBiL21hdGNoLXRyZWVzLmMKaW5kZXggMmI2ZDMxZS4uZjZjMTk0YyAxMDA2NDQKLS0tIGEvbWF0Y2gtdHJlZXMuYworKysgYi9tYXRjaC10cmVlcy5jCkBAIC0zLDcgKzMsNyBAQAogI2luY2x1ZGUgInRyZWUtd2Fsay5oIgogI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgogCi1zdGF0aWMgaW50IHNjb3JlX21pc3NpbmcodW5zaWduZWQgbW9kZSwgY29uc3QgY2hhciAqcGF0aCkKK3N0YXRpYyBpbnQgc2NvcmVfbWlzc2luZyh1bnNpZ25lZCBtb2RlKQogewogCWludCBzY29yZTsKIApAQCAtMTYsNyArMTYsNyBAQAogCXJldHVybiBzY29yZTsKIH0KIAotc3RhdGljIGludCBzY29yZV9kaWZmZXJzKHVuc2lnbmVkIG1vZGUxLCB1bnNpZ25lZCBtb2RlMiwgY29uc3QgY2hhciAqcGF0aCkKK3N0YXRpYyBpbnQgc2NvcmVfZGlmZmVycyh1bnNpZ25lZCBtb2RlMSwgdW5zaWduZWQgbW9kZTIpCiB7CiAJaW50IHNjb3JlOwogCkBAIC0yOSw3ICsyOSw3IEBACiAJcmV0dXJuIHNjb3JlOwogfQogCi1zdGF0aWMgaW50IHNjb3JlX21hdGNoZXModW5zaWduZWQgbW9kZTEsIHVuc2lnbmVkIG1vZGUyLCBjb25zdCBjaGFyICpwYXRoKQorc3RhdGljIGludCBzY29yZV9tYXRjaGVzKHVuc2lnbmVkIG1vZGUxLCB1bnNpZ25lZCBtb2RlMikKIHsKIAlpbnQgc2NvcmU7CiAKQEAgLTk4LDI0ICs5OCwyMiBAQAogCiAJCWlmIChjbXAgPCAwKSB7CiAJCQkvKiBwYXRoMSBkb2VzIG5vdCBhcHBlYXIgaW4gdHdvICovCi0JCQlzY29yZSArPSBzY29yZV9taXNzaW5nKG9uZS5lbnRyeS5tb2RlLCBvbmUuZW50cnkucGF0aCk7CisJCQlzY29yZSArPSBzY29yZV9taXNzaW5nKG9uZS5lbnRyeS5tb2RlKTsKIAkJCXVwZGF0ZV90cmVlX2VudHJ5KCZvbmUpOwogCQl9IGVsc2UgaWYgKGNtcCA+IDApIHsKIAkJCS8qIHBhdGgyIGRvZXMgbm90IGFwcGVhciBpbiBvbmUgKi8KLQkJCXNjb3JlICs9IHNjb3JlX21pc3NpbmcodHdvLmVudHJ5Lm1vZGUsIHR3by5lbnRyeS5wYXRoKTsKKwkJCXNjb3JlICs9IHNjb3JlX21pc3NpbmcodHdvLmVudHJ5Lm1vZGUpOwogCQkJdXBkYXRlX3RyZWVfZW50cnkoJnR3byk7CiAJCX0gZWxzZSB7CiAJCQkvKiBwYXRoIGFwcGVhcnMgaW4gYm90aCAqLwotCQkJaWYgKCFvaWRlcShvbmUuZW50cnkub2lkLCB0d28uZW50cnkub2lkKSkgeworCQkJaWYgKCFvaWRlcSgmb25lLmVudHJ5Lm9pZCwgJnR3by5lbnRyeS5vaWQpKSB7CiAJCQkJLyogdGhleSBhcmUgZGlmZmVyZW50ICovCiAJCQkJc2NvcmUgKz0gc2NvcmVfZGlmZmVycyhvbmUuZW50cnkubW9kZSwKLQkJCQkJCSAgICAgICB0d28uZW50cnkubW9kZSwKLQkJCQkJCSAgICAgICBvbmUuZW50cnkucGF0aCk7CisJCQkJCQkgICAgICAgdHdvLmVudHJ5Lm1vZGUpOwogCQkJfSBlbHNlIHsKIAkJCQkvKiBzYW1lIHN1YnRyZWUgb3IgYmxvYiAqLwogCQkJCXNjb3JlICs9IHNjb3JlX21hdGNoZXMob25lLmVudHJ5Lm1vZGUsCi0JCQkJCQkgICAgICAgdHdvLmVudHJ5Lm1vZGUsCi0JCQkJCQkgICAgICAgb25lLmVudHJ5LnBhdGgpOworCQkJCQkJICAgICAgIHR3by5lbnRyeS5tb2RlKTsKIAkJCX0KIAkJCXVwZGF0ZV90cmVlX2VudHJ5KCZvbmUpOwogCQkJdXBkYXRlX3RyZWVfZW50cnkoJnR3byk7CkBAIC0xNDIsNyArMTQwLDcgQEAKIAl3aGlsZSAob25lLnNpemUpIHsKIAkJY29uc3QgY2hhciAqcGF0aDsKIAkJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqZWxlbTsKLQkJdW5zaWduZWQgbW9kZTsKKwkJdW5zaWduZWQgc2hvcnQgbW9kZTsKIAkJaW50IHNjb3JlOwogCiAJCWVsZW0gPSB0cmVlX2VudHJ5X2V4dHJhY3QoJm9uZSwgJnBhdGgsICZtb2RlKTsKQEAgLTE3OSw3ICsxNzcsNyBAQAogCWNoYXIgKmJ1ZjsKIAl1bnNpZ25lZCBsb25nIHN6OwogCXN0cnVjdCB0cmVlX2Rlc2MgZGVzYzsKLQlzdHJ1Y3Qgb2JqZWN0X2lkICpyZXdyaXRlX2hlcmU7CisJdW5zaWduZWQgY2hhciAqcmV3cml0ZV9oZXJlOwogCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKnJld3JpdGVfd2l0aDsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIHN1YnRyZWU7CiAJZW51bSBvYmplY3RfdHlwZSB0eXBlOwpAQCAtMTk4LDE2ICsxOTYsMjcgQEAKIAlyZXdyaXRlX2hlcmUgPSBOVUxMOwogCXdoaWxlIChkZXNjLnNpemUpIHsKIAkJY29uc3QgY2hhciAqbmFtZTsKLQkJdW5zaWduZWQgbW9kZTsKLQkJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkOworCQl1bnNpZ25lZCBzaG9ydCBtb2RlOwogCi0JCW9pZCA9IHRyZWVfZW50cnlfZXh0cmFjdCgmZGVzYywgJm5hbWUsICZtb2RlKTsKKwkJdHJlZV9lbnRyeV9leHRyYWN0KCZkZXNjLCAmbmFtZSwgJm1vZGUpOwogCQlpZiAoc3RybGVuKG5hbWUpID09IHRvcGxlbiAmJgogCQkgICAgIW1lbWNtcChuYW1lLCBwcmVmaXgsIHRvcGxlbikpIHsKIAkJCWlmICghU19JU0RJUihtb2RlKSkKIAkJCQlkaWUoImVudHJ5ICVzIGluIHRyZWUgJXMgaXMgbm90IGEgdHJlZSIsIG5hbWUsCiAJCQkJICAgIG9pZF90b19oZXgob2lkMSkpOwotCQkJcmV3cml0ZV9oZXJlID0gKHN0cnVjdCBvYmplY3RfaWQgKilvaWQ7CisKKwkJCS8qCisJCQkgKiBXZSBjYXN0IGhlcmUgZm9yIHR3byByZWFzb25zOgorCQkJICoKKwkJCSAqICAgLSB0byBmbGlwIHRoZSAiY2hhciAqIiAoZm9yIHRoZSBwYXRoKSB0byAidW5zaWduZWQKKwkJCSAqICAgICBjaGFyICoiIChmb3IgdGhlIGhhc2ggc3RvcmVkIGFmdGVyIGl0KQorCQkJICoKKwkJCSAqICAgLSB0byBkaXNjYXJkIHRoZSAiY29uc3QiOyB0aGlzIGlzIE9LIGJlY2F1c2Ugd2UKKwkJCSAqICAgICBrbm93IGl0IHBvaW50cyBpbnRvIG91ciBub24tY29uc3QgImJ1ZiIKKwkJCSAqLworCQkJcmV3cml0ZV9oZXJlID0gKHVuc2lnbmVkIGNoYXIgKikoZGVzYy5lbnRyeS5wYXRoICsKKwkJCQkJCQkgc3RybGVuKGRlc2MuZW50cnkucGF0aCkgKworCQkJCQkJCSAxKTsKIAkJCWJyZWFrOwogCQl9CiAJCXVwZGF0ZV90cmVlX2VudHJ5KCZkZXNjKTsKQEAgLTIxNiwxNCArMjI1LDE2IEBACiAJCWRpZSgiZW50cnkgJS4qcyBub3QgZm91bmQgaW4gdHJlZSAlcyIsIHRvcGxlbiwgcHJlZml4LAogCQkgICAgb2lkX3RvX2hleChvaWQxKSk7CiAJaWYgKCpzdWJwYXRoKSB7Ci0JCXN0YXR1cyA9IHNwbGljZV90cmVlKHJld3JpdGVfaGVyZSwgc3VicGF0aCwgb2lkMiwgJnN1YnRyZWUpOworCQlzdHJ1Y3Qgb2JqZWN0X2lkIHRyZWVfb2lkOworCQloYXNoY3B5KHRyZWVfb2lkLmhhc2gsIHJld3JpdGVfaGVyZSk7CisJCXN0YXR1cyA9IHNwbGljZV90cmVlKCZ0cmVlX29pZCwgc3VicGF0aCwgb2lkMiwgJnN1YnRyZWUpOwogCQlpZiAoc3RhdHVzKQogCQkJcmV0dXJuIHN0YXR1czsKIAkJcmV3cml0ZV93aXRoID0gJnN1YnRyZWU7CiAJfSBlbHNlIHsKIAkJcmV3cml0ZV93aXRoID0gb2lkMjsKIAl9Ci0Jb2lkY3B5KHJld3JpdGVfaGVyZSwgcmV3cml0ZV93aXRoKTsKKwloYXNoY3B5KHJld3JpdGVfaGVyZSwgcmV3cml0ZV93aXRoLT5oYXNoKTsKIAlzdGF0dXMgPSB3cml0ZV9vYmplY3RfZmlsZShidWYsIHN6LCB0cmVlX3R5cGUsIHJlc3VsdCk7CiAJZnJlZShidWYpOwogCXJldHVybiBzdGF0dXM7CkBAIC0yMzcsNyArMjQ4LDggQEAKICAqIG90aGVyIGhhbmQsIGl0IGNvdWxkIGNvdmVyIHRyZWUgb25lIGFuZCB3ZSBtaWdodCBuZWVkIHRvIHBpY2sgYQogICogc3VidHJlZSBvZiBpdC4KICAqLwotdm9pZCBzaGlmdF90cmVlKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmhhc2gxLAordm9pZCBzaGlmdF90cmVlKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpoYXNoMSwKIAkJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqaGFzaDIsCiAJCXN0cnVjdCBvYmplY3RfaWQgKnNoaWZ0ZWQsCiAJCWludCBkZXB0aF9saW1pdCkKQEAgLTI3NCwxMiArMjg2LDEyIEBACiAKIAlpZiAoYWRkX3Njb3JlIDwgZGVsX3Njb3JlKSB7CiAJCS8qIFdlIG5lZWQgdG8gcGljayBhIHN1YnRyZWUgb2YgdHdvICovCi0JCXVuc2lnbmVkIG1vZGU7CisJCXVuc2lnbmVkIHNob3J0IG1vZGU7CiAKIAkJaWYgKCEqZGVsX3ByZWZpeCkKIAkJCXJldHVybjsKIAotCQlpZiAoZ2V0X3RyZWVfZW50cnkoaGFzaDIsIGRlbF9wcmVmaXgsIHNoaWZ0ZWQsICZtb2RlKSkKKwkJaWYgKGdldF90cmVlX2VudHJ5KHIsIGhhc2gyLCBkZWxfcHJlZml4LCBzaGlmdGVkLCAmbW9kZSkpCiAJCQlkaWUoImNhbm5vdCBmaW5kIHBhdGggJXMgaW4gdHJlZSAlcyIsCiAJCQkgICAgZGVsX3ByZWZpeCwgb2lkX3RvX2hleChoYXNoMikpOwogCQlyZXR1cm47CkBAIC0yOTYsMjIgKzMwOCwyMyBAQAogICogVW5mb3J0dW5hdGVseSB3ZSBjYW5ub3QgZnVuZGFtZW50YWxseSB0ZWxsIHdoaWNoIG9uZSB0bwogICogYmUgcHJlZml4ZWQsIGFzIHJlY3Vyc2l2ZSBtZXJnZSBjYW4gd29yayBpbiBlaXRoZXIgZGlyZWN0aW9uLgogICovCi12b2lkIHNoaWZ0X3RyZWVfYnkoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqaGFzaDEsCit2b2lkIHNoaWZ0X3RyZWVfYnkoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCSAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmhhc2gxLAogCQkgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpoYXNoMiwKIAkJICAgc3RydWN0IG9iamVjdF9pZCAqc2hpZnRlZCwKIAkJICAgY29uc3QgY2hhciAqc2hpZnRfcHJlZml4KQogewogCXN0cnVjdCBvYmplY3RfaWQgc3ViMSwgc3ViMjsKLQl1bnNpZ25lZCBtb2RlMSwgbW9kZTI7CisJdW5zaWduZWQgc2hvcnQgbW9kZTEsIG1vZGUyOwogCXVuc2lnbmVkIGNhbmRpZGF0ZSA9IDA7CiAKIAkvKiBDYW4gaGFzaDIgYmUgYSB0cmVlIGF0IHNoaWZ0X3ByZWZpeCBpbiB0cmVlIGhhc2gxPyAqLwotCWlmICghZ2V0X3RyZWVfZW50cnkoaGFzaDEsIHNoaWZ0X3ByZWZpeCwgJnN1YjEsICZtb2RlMSkgJiYKKwlpZiAoIWdldF90cmVlX2VudHJ5KHIsIGhhc2gxLCBzaGlmdF9wcmVmaXgsICZzdWIxLCAmbW9kZTEpICYmCiAJICAgIFNfSVNESVIobW9kZTEpKQogCQljYW5kaWRhdGUgfD0gMTsKIAogCS8qIENhbiBoYXNoMSBiZSBhIHRyZWUgYXQgc2hpZnRfcHJlZml4IGluIHRyZWUgaGFzaDI/ICovCi0JaWYgKCFnZXRfdHJlZV9lbnRyeShoYXNoMiwgc2hpZnRfcHJlZml4LCAmc3ViMiwgJm1vZGUyKSAmJgorCWlmICghZ2V0X3RyZWVfZW50cnkociwgaGFzaDIsIHNoaWZ0X3ByZWZpeCwgJnN1YjIsICZtb2RlMikgJiYKIAkgICAgU19JU0RJUihtb2RlMikpCiAJCWNhbmRpZGF0ZSB8PSAyOwogCmRpZmYgLS1naXQgYS9tZXJnZS1ibG9icy5oIGIvbWVyZ2UtYmxvYnMuaAppbmRleCBjYzMxMDM4Li4xM2NmOTY2IDEwMDY0NAotLS0gYS9tZXJnZS1ibG9icy5oCisrKyBiL21lcmdlLWJsb2JzLmgKQEAgLTQsOCArNCw4IEBACiBzdHJ1Y3QgYmxvYjsKIHN0cnVjdCBpbmRleF9zdGF0ZTsKIAotZXh0ZXJuIHZvaWQgKm1lcmdlX2Jsb2JzKHN0cnVjdCBpbmRleF9zdGF0ZSAqLCBjb25zdCBjaGFyICosCi0JCQkgc3RydWN0IGJsb2IgKiwgc3RydWN0IGJsb2IgKiwKLQkJCSBzdHJ1Y3QgYmxvYiAqLCB1bnNpZ25lZCBsb25nICopOwordm9pZCAqbWVyZ2VfYmxvYnMoc3RydWN0IGluZGV4X3N0YXRlICosIGNvbnN0IGNoYXIgKiwKKwkJICBzdHJ1Y3QgYmxvYiAqLCBzdHJ1Y3QgYmxvYiAqLAorCQkgIHN0cnVjdCBibG9iICosIHVuc2lnbmVkIGxvbmcgKik7CiAKICNlbmRpZiAvKiBNRVJHRV9CTE9CU19IICovCmRpZmYgLS1naXQgYS9tZXJnZS1yZWN1cnNpdmUuYyBiL21lcmdlLXJlY3Vyc2l2ZS5jCmluZGV4IGFjYzJmNjQuLjdhNGU2ZjIgMTAwNjQ0Ci0tLSBhL21lcmdlLXJlY3Vyc2l2ZS5jCisrKyBiL21lcmdlLXJlY3Vyc2l2ZS5jCkBAIC00LDMwICs0LDQwIEBACiAgKiBUaGUgdGhpZXZlcyB3ZXJlIEFsZXggUmllc2VuIGFuZCBKb2hhbm5lcyBTY2hpbmRlbGluLCBpbiBKdW5lL0p1bHkgMjAwNgogICovCiAjaW5jbHVkZSAiY2FjaGUuaCIKLSNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJtZXJnZS1yZWN1cnNpdmUuaCIKKwogI2luY2x1ZGUgImFkdmljZS5oIgotI2luY2x1ZGUgImxvY2tmaWxlLmgiCi0jaW5jbHVkZSAiY2FjaGUtdHJlZS5oIgotI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgotI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKLSNpbmNsdWRlICJjb21taXQuaCIKKyNpbmNsdWRlICJhbGxvYy5oIgorI2luY2x1ZGUgImF0dHIuaCIKICNpbmNsdWRlICJibG9iLmgiCiAjaW5jbHVkZSAiYnVpbHRpbi5oIgotI2luY2x1ZGUgInRyZWUtd2Fsay5oIgorI2luY2x1ZGUgImNhY2hlLXRyZWUuaCIKKyNpbmNsdWRlICJjb21taXQuaCIKKyNpbmNsdWRlICJjb21taXQtcmVhY2guaCIKKyNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJkaWZmLmgiCiAjaW5jbHVkZSAiZGlmZmNvcmUuaCIKLSNpbmNsdWRlICJ0YWcuaCIKLSNpbmNsdWRlICJhbGxvYy5oIgotI2luY2x1ZGUgInVucGFjay10cmVlcy5oIgotI2luY2x1ZGUgInN0cmluZy1saXN0LmgiCi0jaW5jbHVkZSAieGRpZmYtaW50ZXJmYWNlLmgiCi0jaW5jbHVkZSAibGwtbWVyZ2UuaCIKLSNpbmNsdWRlICJhdHRyLmgiCi0jaW5jbHVkZSAibWVyZ2UtcmVjdXJzaXZlLmgiCiAjaW5jbHVkZSAiZGlyLmgiCi0jaW5jbHVkZSAic3VibW9kdWxlLmgiCisjaW5jbHVkZSAibGwtbWVyZ2UuaCIKKyNpbmNsdWRlICJsb2NrZmlsZS5oIgorI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgorI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKICNpbmNsdWRlICJyZXZpc2lvbi5oIgotI2luY2x1ZGUgImNvbW1pdC1yZWFjaC5oIgorI2luY2x1ZGUgInN0cmluZy1saXN0LmgiCisjaW5jbHVkZSAic3VibW9kdWxlLmgiCisjaW5jbHVkZSAidGFnLmgiCisjaW5jbHVkZSAidHJlZS13YWxrLmgiCisjaW5jbHVkZSAidW5wYWNrLXRyZWVzLmgiCisjaW5jbHVkZSAieGRpZmYtaW50ZXJmYWNlLmgiCisKK3N0cnVjdCBtZXJnZV9vcHRpb25zX2ludGVybmFsIHsKKwlpbnQgY2FsbF9kZXB0aDsKKwlpbnQgbmVlZGVkX3JlbmFtZV9saW1pdDsKKwlzdHJ1Y3QgaGFzaG1hcCBjdXJyZW50X2ZpbGVfZGlyX3NldDsKKwlzdHJ1Y3Qgc3RyaW5nX2xpc3QgZGZfY29uZmxpY3RfZmlsZV9zZXQ7CisJc3RydWN0IHVucGFja190cmVlc19vcHRpb25zIHVucGFja19vcHRzOworCXN0cnVjdCBpbmRleF9zdGF0ZSBvcmlnX2luZGV4OworfTsKIAogc3RydWN0IHBhdGhfaGFzaG1hcF9lbnRyeSB7CiAJc3RydWN0IGhhc2htYXBfZW50cnkgZTsKQEAgLTM1LDE0ICs0NSwxNiBAQAogfTsKIAogc3RhdGljIGludCBwYXRoX2hhc2htYXBfY21wKGNvbnN0IHZvaWQgKmNtcF9kYXRhLAotCQkJICAgIGNvbnN0IHZvaWQgKmVudHJ5LAotCQkJICAgIGNvbnN0IHZvaWQgKmVudHJ5X29yX2tleSwKKwkJCSAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJCSAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAogCQkJICAgIGNvbnN0IHZvaWQgKmtleWRhdGEpCiB7Ci0JY29uc3Qgc3RydWN0IHBhdGhfaGFzaG1hcF9lbnRyeSAqYSA9IGVudHJ5OwotCWNvbnN0IHN0cnVjdCBwYXRoX2hhc2htYXBfZW50cnkgKmIgPSBlbnRyeV9vcl9rZXk7CisJY29uc3Qgc3RydWN0IHBhdGhfaGFzaG1hcF9lbnRyeSAqYSwgKmI7CiAJY29uc3QgY2hhciAqa2V5ID0ga2V5ZGF0YTsKIAorCWEgPSBjb250YWluZXJfb2YoZXB0ciwgY29uc3Qgc3RydWN0IHBhdGhfaGFzaG1hcF9lbnRyeSwgZSk7CisJYiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIGNvbnN0IHN0cnVjdCBwYXRoX2hhc2htYXBfZW50cnksIGUpOworCiAJaWYgKGlnbm9yZV9jYXNlKQogCQlyZXR1cm4gc3RyY2FzZWNtcChhLT5wYXRoLCBrZXkgPyBrZXkgOiBiLT5wYXRoKTsKIAllbHNlCkBAIC01NCw2ICs2NiwyNCBAQAogCXJldHVybiBpZ25vcmVfY2FzZSA/IHN0cmloYXNoKHBhdGgpIDogc3RyaGFzaChwYXRoKTsKIH0KIAorLyoKKyAqIEZvciBkaXJfcmVuYW1lX2VudHJ5LCBkaXJlY3RvcnkgbmFtZXMgYXJlIHN0b3JlZCBhcyBhIGZ1bGwgcGF0aCBmcm9tIHRoZQorICogdG9wbGV2ZWwgb2YgdGhlIHJlcG9zaXRvcnkgYW5kIGRvIG5vdCBpbmNsdWRlIGEgdHJhaWxpbmcgJy8nLiAgQWxzbzoKKyAqCisgKiAgIGRpcjogICAgICAgICAgICAgICAgb3JpZ2luYWwgbmFtZSBvZiBkaXJlY3RvcnkgYmVpbmcgcmVuYW1lZAorICogICBub25fdW5pcXVlX25ld19kaXI6IGlmIHRydWUsIGNvdWxkIG5vdCBkZXRlcm1pbmUgbmV3X2RpcgorICogICBuZXdfZGlyOiAgICAgICAgICAgIGZpbmFsIG5hbWUgb2YgZGlyZWN0b3J5IGJlaW5nIHJlbmFtZWQKKyAqICAgcG9zc2libGVfbmV3X2RpcnM6ICB0ZW1wb3JhcnkgdXNlZCB0byBoZWxwIGRldGVybWluZSBuZXdfZGlyOyBzZWUgY29tbWVudHMKKyAqICAgICAgICAgICAgICAgICAgICAgICBpbiBnZXRfZGlyZWN0b3J5X3JlbmFtZXMoKSBmb3IgZGV0YWlscworICovCitzdHJ1Y3QgZGlyX3JlbmFtZV9lbnRyeSB7CisJc3RydWN0IGhhc2htYXBfZW50cnkgZW50OworCWNoYXIgKmRpcjsKKwl1bnNpZ25lZCBub25fdW5pcXVlX25ld19kaXI6MTsKKwlzdHJ1Y3Qgc3RyYnVmIG5ld19kaXI7CisJc3RydWN0IHN0cmluZ19saXN0IHBvc3NpYmxlX25ld19kaXJzOworfTsKKwogc3RhdGljIHN0cnVjdCBkaXJfcmVuYW1lX2VudHJ5ICpkaXJfcmVuYW1lX2ZpbmRfZW50cnkoc3RydWN0IGhhc2htYXAgKmhhc2htYXAsCiAJCQkJCQkgICAgICBjaGFyICpkaXIpCiB7CkBAIC02MSwxOCArOTEsMjAgQEAKIAogCWlmIChkaXIgPT0gTlVMTCkKIAkJcmV0dXJuIE5VTEw7Ci0JaGFzaG1hcF9lbnRyeV9pbml0KCZrZXksIHN0cmhhc2goZGlyKSk7CisJaGFzaG1hcF9lbnRyeV9pbml0KCZrZXkuZW50LCBzdHJoYXNoKGRpcikpOwogCWtleS5kaXIgPSBkaXI7Ci0JcmV0dXJuIGhhc2htYXBfZ2V0KGhhc2htYXAsICZrZXksIE5VTEwpOworCXJldHVybiBoYXNobWFwX2dldF9lbnRyeShoYXNobWFwLCAma2V5LCBlbnQsIE5VTEwpOwogfQogCiBzdGF0aWMgaW50IGRpcl9yZW5hbWVfY21wKGNvbnN0IHZvaWQgKnVudXNlZF9jbXBfZGF0YSwKLQkJCSAgY29uc3Qgdm9pZCAqZW50cnksCi0JCQkgIGNvbnN0IHZvaWQgKmVudHJ5X29yX2tleSwKKwkJCSAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmVwdHIsCisJCQkgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplbnRyeV9vcl9rZXksCiAJCQkgIGNvbnN0IHZvaWQgKnVudXNlZF9rZXlkYXRhKQogewotCWNvbnN0IHN0cnVjdCBkaXJfcmVuYW1lX2VudHJ5ICplMSA9IGVudHJ5OwotCWNvbnN0IHN0cnVjdCBkaXJfcmVuYW1lX2VudHJ5ICplMiA9IGVudHJ5X29yX2tleTsKKwljb25zdCBzdHJ1Y3QgZGlyX3JlbmFtZV9lbnRyeSAqZTEsICplMjsKKworCWUxID0gY29udGFpbmVyX29mKGVwdHIsIGNvbnN0IHN0cnVjdCBkaXJfcmVuYW1lX2VudHJ5LCBlbnQpOworCWUyID0gY29udGFpbmVyX29mKGVudHJ5X29yX2tleSwgY29uc3Qgc3RydWN0IGRpcl9yZW5hbWVfZW50cnksIGVudCk7CiAKIAlyZXR1cm4gc3RyY21wKGUxLT5kaXIsIGUyLT5kaXIpOwogfQpAQCAtODUsMTQ4ICsxMTcsMTc3IEBACiBzdGF0aWMgdm9pZCBkaXJfcmVuYW1lX2VudHJ5X2luaXQoc3RydWN0IGRpcl9yZW5hbWVfZW50cnkgKmVudHJ5LAogCQkJCSAgY2hhciAqZGlyZWN0b3J5KQogewotCWhhc2htYXBfZW50cnlfaW5pdChlbnRyeSwgc3RyaGFzaChkaXJlY3RvcnkpKTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmVudHJ5LT5lbnQsIHN0cmhhc2goZGlyZWN0b3J5KSk7CiAJZW50cnktPmRpciA9IGRpcmVjdG9yeTsKIAllbnRyeS0+bm9uX3VuaXF1ZV9uZXdfZGlyID0gMDsKIAlzdHJidWZfaW5pdCgmZW50cnktPm5ld19kaXIsIDApOwogCXN0cmluZ19saXN0X2luaXQoJmVudHJ5LT5wb3NzaWJsZV9uZXdfZGlycywgMCk7CiB9CiAKK3N0cnVjdCBjb2xsaXNpb25fZW50cnkgeworCXN0cnVjdCBoYXNobWFwX2VudHJ5IGVudDsKKwljaGFyICp0YXJnZXRfZmlsZTsKKwlzdHJ1Y3Qgc3RyaW5nX2xpc3Qgc291cmNlX2ZpbGVzOworCXVuc2lnbmVkIHJlcG9ydGVkX2FscmVhZHk6MTsKK307CisKIHN0YXRpYyBzdHJ1Y3QgY29sbGlzaW9uX2VudHJ5ICpjb2xsaXNpb25fZmluZF9lbnRyeShzdHJ1Y3QgaGFzaG1hcCAqaGFzaG1hcCwKIAkJCQkJCSAgICBjaGFyICp0YXJnZXRfZmlsZSkKIHsKIAlzdHJ1Y3QgY29sbGlzaW9uX2VudHJ5IGtleTsKIAotCWhhc2htYXBfZW50cnlfaW5pdCgma2V5LCBzdHJoYXNoKHRhcmdldF9maWxlKSk7CisJaGFzaG1hcF9lbnRyeV9pbml0KCZrZXkuZW50LCBzdHJoYXNoKHRhcmdldF9maWxlKSk7CiAJa2V5LnRhcmdldF9maWxlID0gdGFyZ2V0X2ZpbGU7Ci0JcmV0dXJuIGhhc2htYXBfZ2V0KGhhc2htYXAsICZrZXksIE5VTEwpOworCXJldHVybiBoYXNobWFwX2dldF9lbnRyeShoYXNobWFwLCAma2V5LCBlbnQsIE5VTEwpOwogfQogCi1zdGF0aWMgaW50IGNvbGxpc2lvbl9jbXAodm9pZCAqdW51c2VkX2NtcF9kYXRhLAotCQkJIGNvbnN0IHN0cnVjdCBjb2xsaXNpb25fZW50cnkgKmUxLAotCQkJIGNvbnN0IHN0cnVjdCBjb2xsaXNpb25fZW50cnkgKmUyLAorc3RhdGljIGludCBjb2xsaXNpb25fY21wKGNvbnN0IHZvaWQgKnVudXNlZF9jbXBfZGF0YSwKKwkJCSBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJCSBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAogCQkJIGNvbnN0IHZvaWQgKnVudXNlZF9rZXlkYXRhKQogeworCWNvbnN0IHN0cnVjdCBjb2xsaXNpb25fZW50cnkgKmUxLCAqZTI7CisKKwllMSA9IGNvbnRhaW5lcl9vZihlcHRyLCBjb25zdCBzdHJ1Y3QgY29sbGlzaW9uX2VudHJ5LCBlbnQpOworCWUyID0gY29udGFpbmVyX29mKGVudHJ5X29yX2tleSwgY29uc3Qgc3RydWN0IGNvbGxpc2lvbl9lbnRyeSwgZW50KTsKKwogCXJldHVybiBzdHJjbXAoZTEtPnRhcmdldF9maWxlLCBlMi0+dGFyZ2V0X2ZpbGUpOwogfQogCiBzdGF0aWMgdm9pZCBjb2xsaXNpb25faW5pdChzdHJ1Y3QgaGFzaG1hcCAqbWFwKQogewotCWhhc2htYXBfaW5pdChtYXAsIChoYXNobWFwX2NtcF9mbikgY29sbGlzaW9uX2NtcCwgTlVMTCwgMCk7CisJaGFzaG1hcF9pbml0KG1hcCwgY29sbGlzaW9uX2NtcCwgTlVMTCwgMCk7CiB9CiAKLXN0YXRpYyB2b2lkIGZsdXNoX291dHB1dChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbykKK3N0YXRpYyB2b2lkIGZsdXNoX291dHB1dChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0KQogewotCWlmIChvLT5idWZmZXJfb3V0cHV0IDwgMiAmJiBvLT5vYnVmLmxlbikgewotCQlmcHV0cyhvLT5vYnVmLmJ1Ziwgc3Rkb3V0KTsKLQkJc3RyYnVmX3Jlc2V0KCZvLT5vYnVmKTsKKwlpZiAob3B0LT5idWZmZXJfb3V0cHV0IDwgMiAmJiBvcHQtPm9idWYubGVuKSB7CisJCWZwdXRzKG9wdC0+b2J1Zi5idWYsIHN0ZG91dCk7CisJCXN0cmJ1Zl9yZXNldCgmb3B0LT5vYnVmKTsKIAl9CiB9CiAKLXN0YXRpYyBpbnQgZXJyKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLCBjb25zdCBjaGFyICplcnIsIC4uLikKK3N0YXRpYyBpbnQgZXJyKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsIGNvbnN0IGNoYXIgKmVyciwgLi4uKQogewogCXZhX2xpc3QgcGFyYW1zOwogCi0JaWYgKG8tPmJ1ZmZlcl9vdXRwdXQgPCAyKQotCQlmbHVzaF9vdXRwdXQobyk7CisJaWYgKG9wdC0+YnVmZmVyX291dHB1dCA8IDIpCisJCWZsdXNoX291dHB1dChvcHQpOwogCWVsc2UgewotCQlzdHJidWZfY29tcGxldGUoJm8tPm9idWYsICdcbicpOwotCQlzdHJidWZfYWRkc3RyKCZvLT5vYnVmLCAiZXJyb3I6ICIpOworCQlzdHJidWZfY29tcGxldGUoJm9wdC0+b2J1ZiwgJ1xuJyk7CisJCXN0cmJ1Zl9hZGRzdHIoJm9wdC0+b2J1ZiwgImVycm9yOiAiKTsKIAl9CiAJdmFfc3RhcnQocGFyYW1zLCBlcnIpOwotCXN0cmJ1Zl92YWRkZigmby0+b2J1ZiwgZXJyLCBwYXJhbXMpOworCXN0cmJ1Zl92YWRkZigmb3B0LT5vYnVmLCBlcnIsIHBhcmFtcyk7CiAJdmFfZW5kKHBhcmFtcyk7Ci0JaWYgKG8tPmJ1ZmZlcl9vdXRwdXQgPiAxKQotCQlzdHJidWZfYWRkY2goJm8tPm9idWYsICdcbicpOworCWlmIChvcHQtPmJ1ZmZlcl9vdXRwdXQgPiAxKQorCQlzdHJidWZfYWRkY2goJm9wdC0+b2J1ZiwgJ1xuJyk7CiAJZWxzZSB7Ci0JCWVycm9yKCIlcyIsIG8tPm9idWYuYnVmKTsKLQkJc3RyYnVmX3Jlc2V0KCZvLT5vYnVmKTsKKwkJZXJyb3IoIiVzIiwgb3B0LT5vYnVmLmJ1Zik7CisJCXN0cmJ1Zl9yZXNldCgmb3B0LT5vYnVmKTsKIAl9CiAKIAlyZXR1cm4gLTE7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgdHJlZSAqc2hpZnRfdHJlZV9vYmplY3Qoc3RydWN0IHRyZWUgKm9uZSwgc3RydWN0IHRyZWUgKnR3bywKK3N0YXRpYyBzdHJ1Y3QgdHJlZSAqc2hpZnRfdHJlZV9vYmplY3Qoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkJICAgICAgc3RydWN0IHRyZWUgKm9uZSwgc3RydWN0IHRyZWUgKnR3bywKIAkJCQkgICAgICBjb25zdCBjaGFyICpzdWJ0cmVlX3NoaWZ0KQogewogCXN0cnVjdCBvYmplY3RfaWQgc2hpZnRlZDsKIAogCWlmICghKnN1YnRyZWVfc2hpZnQpIHsKLQkJc2hpZnRfdHJlZSgmb25lLT5vYmplY3Qub2lkLCAmdHdvLT5vYmplY3Qub2lkLCAmc2hpZnRlZCwgMCk7CisJCXNoaWZ0X3RyZWUocmVwbywgJm9uZS0+b2JqZWN0Lm9pZCwgJnR3by0+b2JqZWN0Lm9pZCwgJnNoaWZ0ZWQsIDApOwogCX0gZWxzZSB7Ci0JCXNoaWZ0X3RyZWVfYnkoJm9uZS0+b2JqZWN0Lm9pZCwgJnR3by0+b2JqZWN0Lm9pZCwgJnNoaWZ0ZWQsCisJCXNoaWZ0X3RyZWVfYnkocmVwbywgJm9uZS0+b2JqZWN0Lm9pZCwgJnR3by0+b2JqZWN0Lm9pZCwgJnNoaWZ0ZWQsCiAJCQkgICAgICBzdWJ0cmVlX3NoaWZ0KTsKIAl9CiAJaWYgKG9pZGVxKCZ0d28tPm9iamVjdC5vaWQsICZzaGlmdGVkKSkKIAkJcmV0dXJuIHR3bzsKLQlyZXR1cm4gbG9va3VwX3RyZWUodGhlX3JlcG9zaXRvcnksICZzaGlmdGVkKTsKKwlyZXR1cm4gbG9va3VwX3RyZWUocmVwbywgJnNoaWZ0ZWQpOwogfQogCi1zdGF0aWMgc3RydWN0IGNvbW1pdCAqbWFrZV92aXJ0dWFsX2NvbW1pdChzdHJ1Y3QgdHJlZSAqdHJlZSwgY29uc3QgY2hhciAqY29tbWVudCkKK3N0YXRpYyBpbmxpbmUgdm9pZCBzZXRfY29tbWl0X3RyZWUoc3RydWN0IGNvbW1pdCAqYywgc3RydWN0IHRyZWUgKnQpCiB7Ci0Jc3RydWN0IGNvbW1pdCAqY29tbWl0ID0gYWxsb2NfY29tbWl0X25vZGUodGhlX3JlcG9zaXRvcnkpOworCWMtPm1heWJlX3RyZWUgPSB0OworfQorCitzdGF0aWMgc3RydWN0IGNvbW1pdCAqbWFrZV92aXJ0dWFsX2NvbW1pdChzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCQkJICBzdHJ1Y3QgdHJlZSAqdHJlZSwKKwkJCQkJICBjb25zdCBjaGFyICpjb21tZW50KQoreworCXN0cnVjdCBjb21taXQgKmNvbW1pdCA9IGFsbG9jX2NvbW1pdF9ub2RlKHJlcG8pOwogCiAJc2V0X21lcmdlX3JlbW90ZV9kZXNjKGNvbW1pdCwgY29tbWVudCwgKHN0cnVjdCBvYmplY3QgKiljb21taXQpOwotCWNvbW1pdC0+bWF5YmVfdHJlZSA9IHRyZWU7CisJc2V0X2NvbW1pdF90cmVlKGNvbW1pdCwgdHJlZSk7CiAJY29tbWl0LT5vYmplY3QucGFyc2VkID0gMTsKIAlyZXR1cm4gY29tbWl0OwogfQogCi0vKgotICogU2luY2Ugd2UgdXNlIGdldF90cmVlX2VudHJ5KCksIHdoaWNoIGRvZXMgbm90IHB1dCB0aGUgcmVhZCBvYmplY3QgaW50bwotICogdGhlIG9iamVjdCBwb29sLCB3ZSBjYW5ub3QgcmVseSBvbiBhID09IGIuCi0gKi8KLXN0YXRpYyBpbnQgb2lkX2VxKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmEsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmIpCi17Ci0JaWYgKCFhICYmICFiKQotCQlyZXR1cm4gMjsKLQlyZXR1cm4gYSAmJiBiICYmIG9pZGVxKGEsIGIpOwotfQotCiBlbnVtIHJlbmFtZV90eXBlIHsKIAlSRU5BTUVfTk9STUFMID0gMCwKIAlSRU5BTUVfVklBX0RJUiwKKwlSRU5BTUVfQURELAogCVJFTkFNRV9ERUxFVEUsCiAJUkVOQU1FX09ORV9GSUxFX1RPX09ORSwKIAlSRU5BTUVfT05FX0ZJTEVfVE9fVFdPLAogCVJFTkFNRV9UV09fRklMRVNfVE9fT05FCiB9OwogCi1zdHJ1Y3QgcmVuYW1lX2NvbmZsaWN0X2luZm8gewotCWVudW0gcmVuYW1lX3R5cGUgcmVuYW1lX3R5cGU7Ci0Jc3RydWN0IGRpZmZfZmlsZXBhaXIgKnBhaXIxOwotCXN0cnVjdCBkaWZmX2ZpbGVwYWlyICpwYWlyMjsKLQljb25zdCBjaGFyICpicmFuY2gxOwotCWNvbnN0IGNoYXIgKmJyYW5jaDI7Ci0Jc3RydWN0IHN0YWdlX2RhdGEgKmRzdF9lbnRyeTE7Ci0Jc3RydWN0IHN0YWdlX2RhdGEgKmRzdF9lbnRyeTI7Ci0Jc3RydWN0IGRpZmZfZmlsZXNwZWMgcmVuMV9vdGhlcjsKLQlzdHJ1Y3QgZGlmZl9maWxlc3BlYyByZW4yX290aGVyOwotfTsKLQogLyoKICAqIFNpbmNlIHdlIHdhbnQgdG8gd3JpdGUgdGhlIGluZGV4IGV2ZW50dWFsbHksIHdlIGNhbm5vdCByZXVzZSB0aGUgaW5kZXgKICAqIGZvciB0aGVzZSAodGVtcG9yYXJ5KSBkYXRhLgogICovCiBzdHJ1Y3Qgc3RhZ2VfZGF0YSB7Ci0Jc3RydWN0IHsKLQkJdW5zaWduZWQgbW9kZTsKLQkJc3RydWN0IG9iamVjdF9pZCBvaWQ7Ci0JfSBzdGFnZXNbNF07CisJc3RydWN0IGRpZmZfZmlsZXNwZWMgc3RhZ2VzWzRdOyAvKiBtb3N0bHkgZm9yIG9pZCAmIG1vZGU7IG1heWJlIHBhdGggKi8KIAlzdHJ1Y3QgcmVuYW1lX2NvbmZsaWN0X2luZm8gKnJlbmFtZV9jb25mbGljdF9pbmZvOwogCXVuc2lnbmVkIHByb2Nlc3NlZDoxOwogfTsKIAorc3RydWN0IHJlbmFtZSB7CisJdW5zaWduZWQgcHJvY2Vzc2VkOjE7CisJc3RydWN0IGRpZmZfZmlsZXBhaXIgKnBhaXI7CisJY29uc3QgY2hhciAqYnJhbmNoOyAvKiBicmFuY2ggdGhhdCB0aGUgcmVuYW1lIG9jY3VycmVkIG9uICovCisJLyoKKwkgKiBJZiBkaXJlY3RvcnkgcmVuYW1lIGRldGVjdGlvbiBhZmZlY3RlZCB0aGlzIHJlbmFtZSwgd2hhdCB3YXMgaXRzCisJICogb3JpZ2luYWwgdHlwZSAoJ0EnIG9yICdSJykgYW5kIGl0J3Mgb3JpZ2luYWwgZGVzdGluYXRpb24gYmVmb3JlCisJICogdGhlIGRpcmVjdG9yeSByZW5hbWUgKG90aGVyd2lzZSwgJ1wwJyBhbmQgTlVMTCBmb3IgdGhlc2UgdHdvIHZhcnMpLgorCSAqLworCWNoYXIgZGlyX3JlbmFtZV9vcmlnaW5hbF90eXBlOworCWNoYXIgKmRpcl9yZW5hbWVfb3JpZ2luYWxfZGVzdDsKKwkvKgorCSAqIFB1cnBvc2Ugb2Ygc3JjX2VudHJ5IGFuZCBkc3RfZW50cnk6CisJICoKKwkgKiBJZiAnYmVmb3JlJyBpcyByZW5hbWVkIHRvICdhZnRlcicgdGhlbiBzcmNfZW50cnkgd2lsbCBjb250YWluCisJICogdGhlIHZlcnNpb25zIG9mICdiZWZvcmUnIGZyb20gdGhlIG1lcmdlX2Jhc2UsIEhFQUQsIGFuZCBNRVJHRSBpbgorCSAqIHN0YWdlcyAxLCAyLCBhbmQgMzsgZHN0X2VudHJ5IHdpbGwgY29udGFpbiB0aGUgcmVzcGVjdGl2ZQorCSAqIHZlcnNpb25zIG9mICdhZnRlcicgaW4gY29ycmVzcG9uZGluZyBsb2NhdGlvbnMuICBUaHVzLCB3ZSBoYXZlIGEKKwkgKiB0b3RhbCBvZiBzaXggbW9kZXMgYW5kIG9pZHMsIHRob3VnaCBzb21lIHdpbGwgYmUgbnVsbC4gIChTdGFnZSAwCisJICogaXMgaWdub3JlZDsgd2UncmUgaW50ZXJlc3RlZCBpbiBoYW5kbGluZyBjb25mbGljdHMuKQorCSAqCisJICogU2luY2Ugd2UgZG9uJ3QgdHVybiBvbiBicmVhay1yZXdyaXRlcyBieSBkZWZhdWx0LCBuZWl0aGVyCisJICogc3JjX2VudHJ5IG5vciBkc3RfZW50cnkgY2FuIGhhdmUgYWxsIHRocmVlIG9mIHRoZWlyIHN0YWdlcyBoYXZlCisJICogbm9uLW51bGwgb2lkcywgbWVhbmluZyBhdCBtb3N0IGZvdXIgb2YgdGhlIHNpeCB3aWxsIGJlIG5vbi1udWxsLgorCSAqIEFsc28sIHNpbmNlIHRoaXMgaXMgYSByZW5hbWUsIGJvdGggc3JjX2VudHJ5IGFuZCBkc3RfZW50cnkgd2lsbAorCSAqIGhhdmUgYXQgbGVhc3Qgb25lIG5vbi1udWxsIG9pZCwgbWVhbmluZyBhdCBsZWFzdCB0d28gd2lsbCBiZQorCSAqIG5vbi1udWxsLiAgT2YgdGhlIHNpeCBvaWRzLCBhIHR5cGljYWwgcmVuYW1lIHdpbGwgaGF2ZSB0aHJlZSBiZQorCSAqIG5vbi1udWxsLiAgT25seSB0d28gaW1wbGllcyBhIHJlbmFtZS9kZWxldGUsIGFuZCBmb3VyIGltcGxpZXMgYQorCSAqIHJlbmFtZS9hZGQuCisJICovCisJc3RydWN0IHN0YWdlX2RhdGEgKnNyY19lbnRyeTsKKwlzdHJ1Y3Qgc3RhZ2VfZGF0YSAqZHN0X2VudHJ5OworfTsKKworc3RydWN0IHJlbmFtZV9jb25mbGljdF9pbmZvIHsKKwllbnVtIHJlbmFtZV90eXBlIHJlbmFtZV90eXBlOworCXN0cnVjdCByZW5hbWUgKnJlbjE7CisJc3RydWN0IHJlbmFtZSAqcmVuMjsKK307CisKIHN0YXRpYyBpbmxpbmUgdm9pZCBzZXR1cF9yZW5hbWVfY29uZmxpY3RfaW5mbyhlbnVtIHJlbmFtZV90eXBlIHJlbmFtZV90eXBlLAotCQkJCQkgICAgICBzdHJ1Y3QgZGlmZl9maWxlcGFpciAqcGFpcjEsCi0JCQkJCSAgICAgIHN0cnVjdCBkaWZmX2ZpbGVwYWlyICpwYWlyMiwKLQkJCQkJICAgICAgY29uc3QgY2hhciAqYnJhbmNoMSwKLQkJCQkJICAgICAgY29uc3QgY2hhciAqYnJhbmNoMiwKLQkJCQkJICAgICAgc3RydWN0IHN0YWdlX2RhdGEgKmRzdF9lbnRyeTEsCi0JCQkJCSAgICAgIHN0cnVjdCBzdGFnZV9kYXRhICpkc3RfZW50cnkyLAotCQkJCQkgICAgICBzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywKLQkJCQkJICAgICAgc3RydWN0IHN0YWdlX2RhdGEgKnNyY19lbnRyeTEsCi0JCQkJCSAgICAgIHN0cnVjdCBzdGFnZV9kYXRhICpzcmNfZW50cnkyKQorCQkJCQkgICAgICBzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAorCQkJCQkgICAgICBzdHJ1Y3QgcmVuYW1lICpyZW4xLAorCQkJCQkgICAgICBzdHJ1Y3QgcmVuYW1lICpyZW4yKQogewogCXN0cnVjdCByZW5hbWVfY29uZmxpY3RfaW5mbyAqY2k7CiAKQEAgLTIzNCwxMzYgKzI5NSwxMTUgQEAKIAkgKiBXaGVuIHdlIGhhdmUgdHdvIHJlbmFtZXMgaW52b2x2ZWQsIGl0J3MgZWFzaWVzdCB0byBnZXQgdGhlCiAJICogY29ycmVjdCB0aGluZ3MgaW50byBzdGFnZSAyIGFuZCAzLCBhbmQgdG8gbWFrZSBzdXJlIHRoYXQgdGhlCiAJICogY29udGVudCBtZXJnZSBwdXRzIEhFQUQgYmVmb3JlIHRoZSBvdGhlciBicmFuY2ggaWYgd2UganVzdAotCSAqIGVuc3VyZSB0aGF0IGJyYW5jaDEgPT0gby0+YnJhbmNoMS4gIFNvLCBzaW1wbHkgZmxpcCBhcmd1bWVudHMKKwkgKiBlbnN1cmUgdGhhdCBicmFuY2gxID09IG9wdC0+YnJhbmNoMS4gIFNvLCBzaW1wbHkgZmxpcCBhcmd1bWVudHMKIAkgKiBhcm91bmQgaWYgd2UgZG9uJ3QgaGF2ZSB0aGF0LgogCSAqLwotCWlmIChkc3RfZW50cnkyICYmIGJyYW5jaDEgIT0gby0+YnJhbmNoMSkgewotCQlzZXR1cF9yZW5hbWVfY29uZmxpY3RfaW5mbyhyZW5hbWVfdHlwZSwKLQkJCQkJICAgcGFpcjIsICAgICAgcGFpcjEsCi0JCQkJCSAgIGJyYW5jaDIsICAgIGJyYW5jaDEsCi0JCQkJCSAgIGRzdF9lbnRyeTIsIGRzdF9lbnRyeTEsCi0JCQkJCSAgIG8sCi0JCQkJCSAgIHNyY19lbnRyeTIsIHNyY19lbnRyeTEpOworCWlmIChyZW4yICYmIHJlbjEtPmJyYW5jaCAhPSBvcHQtPmJyYW5jaDEpIHsKKwkJc2V0dXBfcmVuYW1lX2NvbmZsaWN0X2luZm8ocmVuYW1lX3R5cGUsIG9wdCwgcmVuMiwgcmVuMSk7CiAJCXJldHVybjsKIAl9CiAKIAljaSA9IHhjYWxsb2MoMSwgc2l6ZW9mKHN0cnVjdCByZW5hbWVfY29uZmxpY3RfaW5mbykpOwogCWNpLT5yZW5hbWVfdHlwZSA9IHJlbmFtZV90eXBlOwotCWNpLT5wYWlyMSA9IHBhaXIxOwotCWNpLT5icmFuY2gxID0gYnJhbmNoMTsKLQljaS0+YnJhbmNoMiA9IGJyYW5jaDI7CisJY2ktPnJlbjEgPSByZW4xOworCWNpLT5yZW4yID0gcmVuMjsKIAotCWNpLT5kc3RfZW50cnkxID0gZHN0X2VudHJ5MTsKLQlkc3RfZW50cnkxLT5yZW5hbWVfY29uZmxpY3RfaW5mbyA9IGNpOwotCWRzdF9lbnRyeTEtPnByb2Nlc3NlZCA9IDA7Ci0KLQlhc3NlcnQoIXBhaXIyID09ICFkc3RfZW50cnkyKTsKLQlpZiAoZHN0X2VudHJ5MikgewotCQljaS0+ZHN0X2VudHJ5MiA9IGRzdF9lbnRyeTI7Ci0JCWNpLT5wYWlyMiA9IHBhaXIyOwotCQlkc3RfZW50cnkyLT5yZW5hbWVfY29uZmxpY3RfaW5mbyA9IGNpOwotCX0KLQotCWlmIChyZW5hbWVfdHlwZSA9PSBSRU5BTUVfVFdPX0ZJTEVTX1RPX09ORSkgewotCQkvKgotCQkgKiBGb3IgZWFjaCByZW5hbWUsIHRoZXJlIGNvdWxkIGhhdmUgYmVlbgotCQkgKiBtb2RpZmljYXRpb25zIG9uIHRoZSBzaWRlIG9mIGhpc3Rvcnkgd2hlcmUgdGhhdAotCQkgKiBmaWxlIHdhcyBub3QgcmVuYW1lZC4KLQkJICovCi0JCWludCBvc3RhZ2UxID0gby0+YnJhbmNoMSA9PSBicmFuY2gxID8gMyA6IDI7Ci0JCWludCBvc3RhZ2UyID0gb3N0YWdlMSBeIDE7Ci0KLQkJY2ktPnJlbjFfb3RoZXIucGF0aCA9IHBhaXIxLT5vbmUtPnBhdGg7Ci0JCW9pZGNweSgmY2ktPnJlbjFfb3RoZXIub2lkLCAmc3JjX2VudHJ5MS0+c3RhZ2VzW29zdGFnZTFdLm9pZCk7Ci0JCWNpLT5yZW4xX290aGVyLm1vZGUgPSBzcmNfZW50cnkxLT5zdGFnZXNbb3N0YWdlMV0ubW9kZTsKLQotCQljaS0+cmVuMl9vdGhlci5wYXRoID0gcGFpcjItPm9uZS0+cGF0aDsKLQkJb2lkY3B5KCZjaS0+cmVuMl9vdGhlci5vaWQsICZzcmNfZW50cnkyLT5zdGFnZXNbb3N0YWdlMl0ub2lkKTsKLQkJY2ktPnJlbjJfb3RoZXIubW9kZSA9IHNyY19lbnRyeTItPnN0YWdlc1tvc3RhZ2UyXS5tb2RlOworCWNpLT5yZW4xLT5kc3RfZW50cnktPnByb2Nlc3NlZCA9IDA7CisJY2ktPnJlbjEtPmRzdF9lbnRyeS0+cmVuYW1lX2NvbmZsaWN0X2luZm8gPSBjaTsKKwlpZiAocmVuMikgeworCQljaS0+cmVuMi0+ZHN0X2VudHJ5LT5yZW5hbWVfY29uZmxpY3RfaW5mbyA9IGNpOwogCX0KIH0KIAotc3RhdGljIGludCBzaG93KHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLCBpbnQgdikKK3N0YXRpYyBpbnQgc2hvdyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LCBpbnQgdikKIHsKLQlyZXR1cm4gKCFvLT5jYWxsX2RlcHRoICYmIG8tPnZlcmJvc2l0eSA+PSB2KSB8fCBvLT52ZXJib3NpdHkgPj0gNTsKKwlyZXR1cm4gKCFvcHQtPnByaXYtPmNhbGxfZGVwdGggJiYgb3B0LT52ZXJib3NpdHkgPj0gdikgfHwKKwkJb3B0LT52ZXJib3NpdHkgPj0gNTsKIH0KIAogX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDMsIDQpKSkKLXN0YXRpYyB2b2lkIG91dHB1dChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywgaW50IHYsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQorc3RhdGljIHZvaWQgb3V0cHV0KHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsIGludCB2LCBjb25zdCBjaGFyICpmbXQsIC4uLikKIHsKIAl2YV9saXN0IGFwOwogCi0JaWYgKCFzaG93KG8sIHYpKQorCWlmICghc2hvdyhvcHQsIHYpKQogCQlyZXR1cm47CiAKLQlzdHJidWZfYWRkY2hhcnMoJm8tPm9idWYsICcgJywgby0+Y2FsbF9kZXB0aCAqIDIpOworCXN0cmJ1Zl9hZGRjaGFycygmb3B0LT5vYnVmLCAnICcsIG9wdC0+cHJpdi0+Y2FsbF9kZXB0aCAqIDIpOwogCiAJdmFfc3RhcnQoYXAsIGZtdCk7Ci0Jc3RyYnVmX3ZhZGRmKCZvLT5vYnVmLCBmbXQsIGFwKTsKKwlzdHJidWZfdmFkZGYoJm9wdC0+b2J1ZiwgZm10LCBhcCk7CiAJdmFfZW5kKGFwKTsKIAotCXN0cmJ1Zl9hZGRjaCgmby0+b2J1ZiwgJ1xuJyk7Ci0JaWYgKCFvLT5idWZmZXJfb3V0cHV0KQotCQlmbHVzaF9vdXRwdXQobyk7CisJc3RyYnVmX2FkZGNoKCZvcHQtPm9idWYsICdcbicpOworCWlmICghb3B0LT5idWZmZXJfb3V0cHV0KQorCQlmbHVzaF9vdXRwdXQob3B0KTsKIH0KIAotc3RhdGljIHZvaWQgb3V0cHV0X2NvbW1pdF90aXRsZShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywgc3RydWN0IGNvbW1pdCAqY29tbWl0KQorc3RhdGljIHZvaWQgb3V0cHV0X2NvbW1pdF90aXRsZShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LCBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCiB7CiAJc3RydWN0IG1lcmdlX3JlbW90ZV9kZXNjICpkZXNjOwogCi0Jc3RyYnVmX2FkZGNoYXJzKCZvLT5vYnVmLCAnICcsIG8tPmNhbGxfZGVwdGggKiAyKTsKKwlzdHJidWZfYWRkY2hhcnMoJm9wdC0+b2J1ZiwgJyAnLCBvcHQtPnByaXYtPmNhbGxfZGVwdGggKiAyKTsKIAlkZXNjID0gbWVyZ2VfcmVtb3RlX3V0aWwoY29tbWl0KTsKIAlpZiAoZGVzYykKLQkJc3RyYnVmX2FkZGYoJm8tPm9idWYsICJ2aXJ0dWFsICVzXG4iLCBkZXNjLT5uYW1lKTsKKwkJc3RyYnVmX2FkZGYoJm9wdC0+b2J1ZiwgInZpcnR1YWwgJXNcbiIsIGRlc2MtPm5hbWUpOwogCWVsc2UgewotCQlzdHJidWZfYWRkX3VuaXF1ZV9hYmJyZXYoJm8tPm9idWYsICZjb21taXQtPm9iamVjdC5vaWQsCisJCXN0cmJ1Zl9hZGRfdW5pcXVlX2FiYnJldigmb3B0LT5vYnVmLCAmY29tbWl0LT5vYmplY3Qub2lkLAogCQkJCQkgREVGQVVMVF9BQkJSRVYpOwotCQlzdHJidWZfYWRkY2goJm8tPm9idWYsICcgJyk7CisJCXN0cmJ1Zl9hZGRjaCgmb3B0LT5vYnVmLCAnICcpOwogCQlpZiAocGFyc2VfY29tbWl0KGNvbW1pdCkgIT0gMCkKLQkJCXN0cmJ1Zl9hZGRzdHIoJm8tPm9idWYsIF8oIihiYWQgY29tbWl0KVxuIikpOworCQkJc3RyYnVmX2FkZHN0cigmb3B0LT5vYnVmLCBfKCIoYmFkIGNvbW1pdClcbiIpKTsKIAkJZWxzZSB7CiAJCQljb25zdCBjaGFyICp0aXRsZTsKIAkJCWNvbnN0IGNoYXIgKm1zZyA9IGdldF9jb21taXRfYnVmZmVyKGNvbW1pdCwgTlVMTCk7CiAJCQlpbnQgbGVuID0gZmluZF9jb21taXRfc3ViamVjdChtc2csICZ0aXRsZSk7CiAJCQlpZiAobGVuKQotCQkJCXN0cmJ1Zl9hZGRmKCZvLT5vYnVmLCAiJS4qc1xuIiwgbGVuLCB0aXRsZSk7CisJCQkJc3RyYnVmX2FkZGYoJm9wdC0+b2J1ZiwgIiUuKnNcbiIsIGxlbiwgdGl0bGUpOwogCQkJdW51c2VfY29tbWl0X2J1ZmZlcihjb21taXQsIG1zZyk7CiAJCX0KIAl9Ci0JZmx1c2hfb3V0cHV0KG8pOworCWZsdXNoX291dHB1dChvcHQpOwogfQogCi1zdGF0aWMgaW50IGFkZF9jYWNoZWluZm8oc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCi0JCQkgdW5zaWduZWQgaW50IG1vZGUsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKK3N0YXRpYyBpbnQgYWRkX2NhY2hlaW5mbyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAorCQkJIGNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpibG9iLAogCQkJIGNvbnN0IGNoYXIgKnBhdGgsIGludCBzdGFnZSwgaW50IHJlZnJlc2gsIGludCBvcHRpb25zKQogeworCXN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlID0gb3B0LT5yZXBvLT5pbmRleDsKIAlzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlOwogCWludCByZXQ7CiAKLQljZSA9IG1ha2VfY2FjaGVfZW50cnkoJnRoZV9pbmRleCwgbW9kZSwgb2lkID8gb2lkIDogJm51bGxfb2lkLCBwYXRoLCBzdGFnZSwgMCk7CisJY2UgPSBtYWtlX2NhY2hlX2VudHJ5KGlzdGF0ZSwgYmxvYi0+bW9kZSwgJmJsb2ItPm9pZCwgcGF0aCwgc3RhZ2UsIDApOwogCWlmICghY2UpCi0JCXJldHVybiBlcnIobywgXygiYWRkX2NhY2hlaW5mbyBmYWlsZWQgZm9yIHBhdGggJyVzJzsgbWVyZ2UgYWJvcnRpbmcuIiksIHBhdGgpOworCQlyZXR1cm4gZXJyKG9wdCwgXygiYWRkX2NhY2hlaW5mbyBmYWlsZWQgZm9yIHBhdGggJyVzJzsgbWVyZ2UgYWJvcnRpbmcuIiksIHBhdGgpOwogCi0JcmV0ID0gYWRkX2NhY2hlX2VudHJ5KGNlLCBvcHRpb25zKTsKKwlyZXQgPSBhZGRfaW5kZXhfZW50cnkoaXN0YXRlLCBjZSwgb3B0aW9ucyk7CiAJaWYgKHJlZnJlc2gpIHsKIAkJc3RydWN0IGNhY2hlX2VudHJ5ICpuY2U7CiAKLQkJbmNlID0gcmVmcmVzaF9jYWNoZV9lbnRyeSgmdGhlX2luZGV4LCBjZSwgQ0VfTUFUQ0hfUkVGUkVTSCB8IENFX01BVENIX0lHTk9SRV9NSVNTSU5HKTsKKwkJbmNlID0gcmVmcmVzaF9jYWNoZV9lbnRyeShpc3RhdGUsIGNlLAorCQkJCQkgIENFX01BVENIX1JFRlJFU0ggfCBDRV9NQVRDSF9JR05PUkVfTUlTU0lORyk7CiAJCWlmICghbmNlKQotCQkJcmV0dXJuIGVycihvLCBfKCJhZGRfY2FjaGVpbmZvIGZhaWxlZCB0byByZWZyZXNoIGZvciBwYXRoICclcyc7IG1lcmdlIGFib3J0aW5nLiIpLCBwYXRoKTsKKwkJCXJldHVybiBlcnIob3B0LCBfKCJhZGRfY2FjaGVpbmZvIGZhaWxlZCB0byByZWZyZXNoIGZvciBwYXRoICclcyc7IG1lcmdlIGFib3J0aW5nLiIpLCBwYXRoKTsKIAkJaWYgKG5jZSAhPSBjZSkKLQkJCXJldCA9IGFkZF9jYWNoZV9lbnRyeShuY2UsIG9wdGlvbnMpOworCQkJcmV0ID0gYWRkX2luZGV4X2VudHJ5KGlzdGF0ZSwgbmNlLCBvcHRpb25zKTsKIAl9CiAJcmV0dXJuIHJldDsKIH0KIAorc3RhdGljIGlubGluZSBpbnQgbWVyZ2VfZGV0ZWN0X3JlbmFtZShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0KQoreworCXJldHVybiAob3B0LT5kZXRlY3RfcmVuYW1lcyA+PSAwKSA/IG9wdC0+ZGV0ZWN0X3JlbmFtZXMgOiAxOworfQorCiBzdGF0aWMgdm9pZCBpbml0X3RyZWVfZGVzY19mcm9tX3RyZWUoc3RydWN0IHRyZWVfZGVzYyAqZGVzYywgc3RydWN0IHRyZWUgKnRyZWUpCiB7CiAJcGFyc2VfdHJlZSh0cmVlKTsKIAlpbml0X3RyZWVfZGVzYyhkZXNjLCB0cmVlLT5idWZmZXIsIHRyZWUtPnNpemUpOwogfQogCi1zdGF0aWMgaW50IHVucGFja190cmVlc19zdGFydChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywKK3N0YXRpYyBpbnQgdW5wYWNrX3RyZWVzX3N0YXJ0KHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCiAJCQkgICAgICBzdHJ1Y3QgdHJlZSAqY29tbW9uLAogCQkJICAgICAgc3RydWN0IHRyZWUgKmhlYWQsCiAJCQkgICAgICBzdHJ1Y3QgdHJlZSAqbWVyZ2UpCkBAIC0zNzIsNzMgKzQxMiw0MyBAQAogCXN0cnVjdCB0cmVlX2Rlc2MgdFszXTsKIAlzdHJ1Y3QgaW5kZXhfc3RhdGUgdG1wX2luZGV4ID0geyBOVUxMIH07CiAKLQltZW1zZXQoJm8tPnVucGFja19vcHRzLCAwLCBzaXplb2Yoby0+dW5wYWNrX29wdHMpKTsKLQlpZiAoby0+Y2FsbF9kZXB0aCkKLQkJby0+dW5wYWNrX29wdHMuaW5kZXhfb25seSA9IDE7CisJbWVtc2V0KCZvcHQtPnByaXYtPnVucGFja19vcHRzLCAwLCBzaXplb2Yob3B0LT5wcml2LT51bnBhY2tfb3B0cykpOworCWlmIChvcHQtPnByaXYtPmNhbGxfZGVwdGgpCisJCW9wdC0+cHJpdi0+dW5wYWNrX29wdHMuaW5kZXhfb25seSA9IDE7CiAJZWxzZQotCQlvLT51bnBhY2tfb3B0cy51cGRhdGUgPSAxOwotCW8tPnVucGFja19vcHRzLm1lcmdlID0gMTsKLQlvLT51bnBhY2tfb3B0cy5oZWFkX2lkeCA9IDI7Ci0Jby0+dW5wYWNrX29wdHMuZm4gPSB0aHJlZXdheV9tZXJnZTsKLQlvLT51bnBhY2tfb3B0cy5zcmNfaW5kZXggPSAmdGhlX2luZGV4OwotCW8tPnVucGFja19vcHRzLmRzdF9pbmRleCA9ICZ0bXBfaW5kZXg7Ci0Jby0+dW5wYWNrX29wdHMuYWdncmVzc2l2ZSA9ICFtZXJnZV9kZXRlY3RfcmVuYW1lKG8pOwotCXNldHVwX3VucGFja190cmVlc19wb3JjZWxhaW4oJm8tPnVucGFja19vcHRzLCAibWVyZ2UiKTsKKwkJb3B0LT5wcml2LT51bnBhY2tfb3B0cy51cGRhdGUgPSAxOworCW9wdC0+cHJpdi0+dW5wYWNrX29wdHMubWVyZ2UgPSAxOworCW9wdC0+cHJpdi0+dW5wYWNrX29wdHMuaGVhZF9pZHggPSAyOworCW9wdC0+cHJpdi0+dW5wYWNrX29wdHMuZm4gPSB0aHJlZXdheV9tZXJnZTsKKwlvcHQtPnByaXYtPnVucGFja19vcHRzLnNyY19pbmRleCA9IG9wdC0+cmVwby0+aW5kZXg7CisJb3B0LT5wcml2LT51bnBhY2tfb3B0cy5kc3RfaW5kZXggPSAmdG1wX2luZGV4OworCW9wdC0+cHJpdi0+dW5wYWNrX29wdHMuYWdncmVzc2l2ZSA9ICFtZXJnZV9kZXRlY3RfcmVuYW1lKG9wdCk7CisJc2V0dXBfdW5wYWNrX3RyZWVzX3BvcmNlbGFpbigmb3B0LT5wcml2LT51bnBhY2tfb3B0cywgIm1lcmdlIik7CiAKIAlpbml0X3RyZWVfZGVzY19mcm9tX3RyZWUodCswLCBjb21tb24pOwogCWluaXRfdHJlZV9kZXNjX2Zyb21fdHJlZSh0KzEsIGhlYWQpOwogCWluaXRfdHJlZV9kZXNjX2Zyb21fdHJlZSh0KzIsIG1lcmdlKTsKIAotCXJjID0gdW5wYWNrX3RyZWVzKDMsIHQsICZvLT51bnBhY2tfb3B0cyk7Ci0JY2FjaGVfdHJlZV9mcmVlKCZhY3RpdmVfY2FjaGVfdHJlZSk7CisJcmMgPSB1bnBhY2tfdHJlZXMoMywgdCwgJm9wdC0+cHJpdi0+dW5wYWNrX29wdHMpOworCWNhY2hlX3RyZWVfZnJlZSgmb3B0LT5yZXBvLT5pbmRleC0+Y2FjaGVfdHJlZSk7CiAKIAkvKgotCSAqIFVwZGF0ZSB0aGVfaW5kZXggdG8gbWF0Y2ggdGhlIG5ldyByZXN1bHRzLCBBRlRFUiBzYXZpbmcgYSBjb3B5Ci0JICogaW4gby0+b3JpZ19pbmRleC4gIFVwZGF0ZSBzcmNfaW5kZXggdG8gcG9pbnQgdG8gdGhlIHNhdmVkIGNvcHkuCi0JICogKHZlcmlmeV91cHRvZGF0ZSgpIGNoZWNrcyBzcmNfaW5kZXgsIGFuZCB0aGUgb3JpZ2luYWwgaW5kZXggaXMKLQkgKiB0aGUgb25lIHRoYXQgaGFkIHRoZSBuZWNlc3NhcnkgbW9kaWZpY2F0aW9uIHRpbWVzdGFtcHMuKQorCSAqIFVwZGF0ZSBvcHQtPnJlcG8tPmluZGV4IHRvIG1hdGNoIHRoZSBuZXcgcmVzdWx0cywgQUZURVIgc2F2aW5nIGEKKwkgKiBjb3B5IGluIG9wdC0+cHJpdi0+b3JpZ19pbmRleC4gIFVwZGF0ZSBzcmNfaW5kZXggdG8gcG9pbnQgdG8gdGhlCisJICogc2F2ZWQgY29weS4gICh2ZXJpZnlfdXB0b2RhdGUoKSBjaGVja3Mgc3JjX2luZGV4LCBhbmQgdGhlIG9yaWdpbmFsCisJICogaW5kZXggaXMgdGhlIG9uZSB0aGF0IGhhZCB0aGUgbmVjZXNzYXJ5IG1vZGlmaWNhdGlvbiB0aW1lc3RhbXBzLikKIAkgKi8KLQlvLT5vcmlnX2luZGV4ID0gdGhlX2luZGV4OwotCXRoZV9pbmRleCA9IHRtcF9pbmRleDsKLQlvLT51bnBhY2tfb3B0cy5zcmNfaW5kZXggPSAmby0+b3JpZ19pbmRleDsKKwlvcHQtPnByaXYtPm9yaWdfaW5kZXggPSAqb3B0LT5yZXBvLT5pbmRleDsKKwkqb3B0LT5yZXBvLT5pbmRleCA9IHRtcF9pbmRleDsKKwlvcHQtPnByaXYtPnVucGFja19vcHRzLnNyY19pbmRleCA9ICZvcHQtPnByaXYtPm9yaWdfaW5kZXg7CiAKIAlyZXR1cm4gcmM7CiB9CiAKLXN0YXRpYyB2b2lkIHVucGFja190cmVlc19maW5pc2goc3RydWN0IG1lcmdlX29wdGlvbnMgKm8pCitzdGF0aWMgdm9pZCB1bnBhY2tfdHJlZXNfZmluaXNoKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQpCiB7Ci0JZGlzY2FyZF9pbmRleCgmby0+b3JpZ19pbmRleCk7Ci0JY2xlYXJfdW5wYWNrX3RyZWVzX3BvcmNlbGFpbigmby0+dW5wYWNrX29wdHMpOwotfQotCi1zdHJ1Y3QgdHJlZSAqd3JpdGVfdHJlZV9mcm9tX21lbW9yeShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbykKLXsKLQlzdHJ1Y3QgdHJlZSAqcmVzdWx0ID0gTlVMTDsKLQotCWlmICh1bm1lcmdlZF9jYWNoZSgpKSB7Ci0JCWludCBpOwotCQlmcHJpbnRmKHN0ZGVyciwgIkJVRzogVGhlcmUgYXJlIHVubWVyZ2VkIGluZGV4IGVudHJpZXM6XG4iKTsKLQkJZm9yIChpID0gMDsgaSA8IGFjdGl2ZV9ucjsgaSsrKSB7Ci0JCQljb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlID0gYWN0aXZlX2NhY2hlW2ldOwotCQkJaWYgKGNlX3N0YWdlKGNlKSkKLQkJCQlmcHJpbnRmKHN0ZGVyciwgIkJVRzogJWQgJS4qc1xuIiwgY2Vfc3RhZ2UoY2UpLAotCQkJCQkoaW50KWNlX25hbWVsZW4oY2UpLCBjZS0+bmFtZSk7Ci0JCX0KLQkJQlVHKCJ1bm1lcmdlZCBpbmRleCBlbnRyaWVzIGluIG1lcmdlLXJlY3Vyc2l2ZS5jIik7Ci0JfQotCi0JaWYgKCFhY3RpdmVfY2FjaGVfdHJlZSkKLQkJYWN0aXZlX2NhY2hlX3RyZWUgPSBjYWNoZV90cmVlKCk7Ci0KLQlpZiAoIWNhY2hlX3RyZWVfZnVsbHlfdmFsaWQoYWN0aXZlX2NhY2hlX3RyZWUpICYmCi0JICAgIGNhY2hlX3RyZWVfdXBkYXRlKCZ0aGVfaW5kZXgsIDApIDwgMCkgewotCQllcnIobywgXygiZXJyb3IgYnVpbGRpbmcgdHJlZXMiKSk7Ci0JCXJldHVybiBOVUxMOwotCX0KLQotCXJlc3VsdCA9IGxvb2t1cF90cmVlKHRoZV9yZXBvc2l0b3J5LCAmYWN0aXZlX2NhY2hlX3RyZWUtPm9pZCk7Ci0KLQlyZXR1cm4gcmVzdWx0OworCWRpc2NhcmRfaW5kZXgoJm9wdC0+cHJpdi0+b3JpZ19pbmRleCk7CisJY2xlYXJfdW5wYWNrX3RyZWVzX3BvcmNlbGFpbigmb3B0LT5wcml2LT51bnBhY2tfb3B0cyk7CiB9CiAKIHN0YXRpYyBpbnQgc2F2ZV9maWxlc19kaXJzKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKQEAgLTQ0NywzNiArNDU3LDM3IEBACiB7CiAJc3RydWN0IHBhdGhfaGFzaG1hcF9lbnRyeSAqZW50cnk7CiAJaW50IGJhc2VsZW4gPSBiYXNlLT5sZW47Ci0Jc3RydWN0IG1lcmdlX29wdGlvbnMgKm8gPSBjb250ZXh0OworCXN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQgPSBjb250ZXh0OwogCiAJc3RyYnVmX2FkZHN0cihiYXNlLCBwYXRoKTsKIAogCUZMRVhfQUxMT0NfTUVNKGVudHJ5LCBwYXRoLCBiYXNlLT5idWYsIGJhc2UtPmxlbik7Ci0JaGFzaG1hcF9lbnRyeV9pbml0KGVudHJ5LCBwYXRoX2hhc2goZW50cnktPnBhdGgpKTsKLQloYXNobWFwX2FkZCgmby0+Y3VycmVudF9maWxlX2Rpcl9zZXQsIGVudHJ5KTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmVudHJ5LT5lLCBwYXRoX2hhc2goZW50cnktPnBhdGgpKTsKKwloYXNobWFwX2FkZCgmb3B0LT5wcml2LT5jdXJyZW50X2ZpbGVfZGlyX3NldCwgJmVudHJ5LT5lKTsKIAogCXN0cmJ1Zl9zZXRsZW4oYmFzZSwgYmFzZWxlbik7CiAJcmV0dXJuIChTX0lTRElSKG1vZGUpID8gUkVBRF9UUkVFX1JFQ1VSU0lWRSA6IDApOwogfQogCi1zdGF0aWMgdm9pZCBnZXRfZmlsZXNfZGlycyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywgc3RydWN0IHRyZWUgKnRyZWUpCitzdGF0aWMgdm9pZCBnZXRfZmlsZXNfZGlycyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LCBzdHJ1Y3QgdHJlZSAqdHJlZSkKIHsKIAlzdHJ1Y3QgcGF0aHNwZWMgbWF0Y2hfYWxsOwogCW1lbXNldCgmbWF0Y2hfYWxsLCAwLCBzaXplb2YobWF0Y2hfYWxsKSk7Ci0JcmVhZF90cmVlX3JlY3Vyc2l2ZSh0cmVlLCAiIiwgMCwgMCwgJm1hdGNoX2FsbCwgc2F2ZV9maWxlc19kaXJzLCBvKTsKKwlyZWFkX3RyZWVfcmVjdXJzaXZlKG9wdC0+cmVwbywgdHJlZSwgIiIsIDAsIDAsCisJCQkgICAgJm1hdGNoX2FsbCwgc2F2ZV9maWxlc19kaXJzLCBvcHQpOwogfQogCi1zdGF0aWMgaW50IGdldF90cmVlX2VudHJ5X2lmX2Jsb2IoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqdHJlZSwKK3N0YXRpYyBpbnQgZ2V0X3RyZWVfZW50cnlfaWZfYmxvYihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKnRyZWUsCiAJCQkJICBjb25zdCBjaGFyICpwYXRoLAotCQkJCSAgc3RydWN0IG9iamVjdF9pZCAqaGFzaHksCi0JCQkJICB1bnNpZ25lZCBpbnQgKm1vZGVfbykKKwkJCQkgIHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpkZnMpCiB7CiAJaW50IHJldDsKIAotCXJldCA9IGdldF90cmVlX2VudHJ5KHRyZWUsIHBhdGgsIGhhc2h5LCBtb2RlX28pOwotCWlmIChTX0lTRElSKCptb2RlX28pKSB7Ci0JCW9pZGNweShoYXNoeSwgJm51bGxfb2lkKTsKLQkJKm1vZGVfbyA9IDA7CisJcmV0ID0gZ2V0X3RyZWVfZW50cnkociwgdHJlZSwgcGF0aCwgJmRmcy0+b2lkLCAmZGZzLT5tb2RlKTsKKwlpZiAoU19JU0RJUihkZnMtPm1vZGUpKSB7CisJCW9pZGNweSgmZGZzLT5vaWQsICZudWxsX29pZCk7CisJCWRmcy0+bW9kZSA9IDA7CiAJfQogCXJldHVybiByZXQ7CiB9CkBAIC00ODUsMTggKzQ5NiwxNiBAQAogICogUmV0dXJucyBhbiBpbmRleF9lbnRyeSBpbnN0YW5jZSB3aGljaCBkb2Vzbid0IGhhdmUgdG8gY29ycmVzcG9uZCB0bwogICogYSByZWFsIGNhY2hlIGVudHJ5IGluIEdpdCdzIGluZGV4LgogICovCi1zdGF0aWMgc3RydWN0IHN0YWdlX2RhdGEgKmluc2VydF9zdGFnZV9kYXRhKGNvbnN0IGNoYXIgKnBhdGgsCitzdGF0aWMgc3RydWN0IHN0YWdlX2RhdGEgKmluc2VydF9zdGFnZV9kYXRhKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQljb25zdCBjaGFyICpwYXRoLAogCQlzdHJ1Y3QgdHJlZSAqbywgc3RydWN0IHRyZWUgKmEsIHN0cnVjdCB0cmVlICpiLAogCQlzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmVudHJpZXMpCiB7CiAJc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKml0ZW07CiAJc3RydWN0IHN0YWdlX2RhdGEgKmUgPSB4Y2FsbG9jKDEsIHNpemVvZihzdHJ1Y3Qgc3RhZ2VfZGF0YSkpOwotCWdldF90cmVlX2VudHJ5X2lmX2Jsb2IoJm8tPm9iamVjdC5vaWQsIHBhdGgsCi0JCQkgICAgICAgJmUtPnN0YWdlc1sxXS5vaWQsICZlLT5zdGFnZXNbMV0ubW9kZSk7Ci0JZ2V0X3RyZWVfZW50cnlfaWZfYmxvYigmYS0+b2JqZWN0Lm9pZCwgcGF0aCwKLQkJCSAgICAgICAmZS0+c3RhZ2VzWzJdLm9pZCwgJmUtPnN0YWdlc1syXS5tb2RlKTsKLQlnZXRfdHJlZV9lbnRyeV9pZl9ibG9iKCZiLT5vYmplY3Qub2lkLCBwYXRoLAotCQkJICAgICAgICZlLT5zdGFnZXNbM10ub2lkLCAmZS0+c3RhZ2VzWzNdLm1vZGUpOworCWdldF90cmVlX2VudHJ5X2lmX2Jsb2IociwgJm8tPm9iamVjdC5vaWQsIHBhdGgsICZlLT5zdGFnZXNbMV0pOworCWdldF90cmVlX2VudHJ5X2lmX2Jsb2IociwgJmEtPm9iamVjdC5vaWQsIHBhdGgsICZlLT5zdGFnZXNbMl0pOworCWdldF90cmVlX2VudHJ5X2lmX2Jsb2IociwgJmItPm9iamVjdC5vaWQsIHBhdGgsICZlLT5zdGFnZXNbM10pOwogCWl0ZW0gPSBzdHJpbmdfbGlzdF9pbnNlcnQoZW50cmllcywgcGF0aCk7CiAJaXRlbS0+dXRpbCA9IGU7CiAJcmV0dXJuIGU7CkBAIC01MDYsMTcgKzUxNSwxNyBAQAogICogQ3JlYXRlIGEgZGljdGlvbmFyeSBtYXBwaW5nIGZpbGUgbmFtZXMgdG8gc3RhZ2VfZGF0YSBvYmplY3RzLiBUaGUKICAqIGRpY3Rpb25hcnkgY29udGFpbnMgb25lIGVudHJ5IGZvciBldmVyeSBwYXRoIHdpdGggYSBub24temVybyBzdGFnZSBlbnRyeS4KICAqLwotc3RhdGljIHN0cnVjdCBzdHJpbmdfbGlzdCAqZ2V0X3VubWVyZ2VkKHZvaWQpCitzdGF0aWMgc3RydWN0IHN0cmluZ19saXN0ICpnZXRfdW5tZXJnZWQoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpCiB7CiAJc3RydWN0IHN0cmluZ19saXN0ICp1bm1lcmdlZCA9IHhjYWxsb2MoMSwgc2l6ZW9mKHN0cnVjdCBzdHJpbmdfbGlzdCkpOwogCWludCBpOwogCiAJdW5tZXJnZWQtPnN0cmR1cF9zdHJpbmdzID0gMTsKIAotCWZvciAoaSA9IDA7IGkgPCBhY3RpdmVfbnI7IGkrKykgeworCWZvciAoaSA9IDA7IGkgPCBpc3RhdGUtPmNhY2hlX25yOyBpKyspIHsKIAkJc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKml0ZW07CiAJCXN0cnVjdCBzdGFnZV9kYXRhICplOwotCQljb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlID0gYWN0aXZlX2NhY2hlW2ldOworCQljb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlID0gaXN0YXRlLT5jYWNoZVtpXTsKIAkJaWYgKCFjZV9zdGFnZShjZSkpCiAJCQljb250aW51ZTsKIApAQCAtNTYwLDcgKzU2OSw3IEBACiAJcmV0dXJuIG9uZWxlbiAtIHR3b2xlbjsKIH0KIAotc3RhdGljIHZvaWQgcmVjb3JkX2RmX2NvbmZsaWN0X2ZpbGVzKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLAorc3RhdGljIHZvaWQgcmVjb3JkX2RmX2NvbmZsaWN0X2ZpbGVzKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCiAJCQkJICAgICBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmVudHJpZXMpCiB7CiAJLyogSWYgdGhlcmUgaXMgYSBEL0YgY29uZmxpY3QgYW5kIHRoZSBmaWxlIGZvciBzdWNoIGEgY29uZmxpY3QKQEAgLTU4NSw3ICs1OTQsNyBAQAogCSAqIElmIHdlJ3JlIG1lcmdpbmcgbWVyZ2UtYmFzZXMsIHdlIGRvbid0IHdhbnQgdG8gYm90aGVyIHdpdGgKIAkgKiBhbnkgd29ya2luZyBkaXJlY3RvcnkgY2hhbmdlcy4KIAkgKi8KLQlpZiAoby0+Y2FsbF9kZXB0aCkKKwlpZiAob3B0LT5wcml2LT5jYWxsX2RlcHRoKQogCQlyZXR1cm47CiAKIAkvKiBFbnN1cmUgRC9GIGNvbmZsaWN0cyBhcmUgYWRqYWNlbnQgaW4gdGhlIGVudHJpZXMgbGlzdC4gKi8KQEAgLTU5Nyw3ICs2MDYsNyBAQAogCWRmX3NvcnRlZF9lbnRyaWVzLmNtcCA9IHN0cmluZ19saXN0X2RmX25hbWVfY29tcGFyZTsKIAlzdHJpbmdfbGlzdF9zb3J0KCZkZl9zb3J0ZWRfZW50cmllcyk7CiAKLQlzdHJpbmdfbGlzdF9jbGVhcigmby0+ZGZfY29uZmxpY3RfZmlsZV9zZXQsIDEpOworCXN0cmluZ19saXN0X2NsZWFyKCZvcHQtPnByaXYtPmRmX2NvbmZsaWN0X2ZpbGVfc2V0LCAxKTsKIAlmb3IgKGkgPSAwOyBpIDwgZGZfc29ydGVkX2VudHJpZXMubnI7IGkrKykgewogCQljb25zdCBjaGFyICpwYXRoID0gZGZfc29ydGVkX2VudHJpZXMuaXRlbXNbaV0uc3RyaW5nOwogCQlpbnQgbGVuID0gc3RybGVuKHBhdGgpOwpAQCAtNjEzLDcgKzYyMiw3IEBACiAJCSAgICBsZW4gPiBsYXN0X2xlbiAmJgogCQkgICAgbWVtY21wKHBhdGgsIGxhc3RfZmlsZSwgbGFzdF9sZW4pID09IDAgJiYKIAkJICAgIHBhdGhbbGFzdF9sZW5dID09ICcvJykgewotCQkJc3RyaW5nX2xpc3RfaW5zZXJ0KCZvLT5kZl9jb25mbGljdF9maWxlX3NldCwgbGFzdF9maWxlKTsKKwkJCXN0cmluZ19saXN0X2luc2VydCgmb3B0LT5wcml2LT5kZl9jb25mbGljdF9maWxlX3NldCwgbGFzdF9maWxlKTsKIAkJfQogCiAJCS8qCkBAIC02MzIsMzMgKzY0MSw2IEBACiAJc3RyaW5nX2xpc3RfY2xlYXIoJmRmX3NvcnRlZF9lbnRyaWVzLCAwKTsKIH0KIAotc3RydWN0IHJlbmFtZSB7Ci0Jc3RydWN0IGRpZmZfZmlsZXBhaXIgKnBhaXI7Ci0JLyoKLQkgKiBQdXJwb3NlIG9mIHNyY19lbnRyeSBhbmQgZHN0X2VudHJ5OgotCSAqCi0JICogSWYgJ2JlZm9yZScgaXMgcmVuYW1lZCB0byAnYWZ0ZXInIHRoZW4gc3JjX2VudHJ5IHdpbGwgY29udGFpbgotCSAqIHRoZSB2ZXJzaW9ucyBvZiAnYmVmb3JlJyBmcm9tIHRoZSBtZXJnZV9iYXNlLCBIRUFELCBhbmQgTUVSR0UgaW4KLQkgKiBzdGFnZXMgMSwgMiwgYW5kIDM7IGRzdF9lbnRyeSB3aWxsIGNvbnRhaW4gdGhlIHJlc3BlY3RpdmUKLQkgKiB2ZXJzaW9ucyBvZiAnYWZ0ZXInIGluIGNvcnJlc3BvbmRpbmcgbG9jYXRpb25zLiAgVGh1cywgd2UgaGF2ZSBhCi0JICogdG90YWwgb2Ygc2l4IG1vZGVzIGFuZCBvaWRzLCB0aG91Z2ggc29tZSB3aWxsIGJlIG51bGwuICAoU3RhZ2UgMAotCSAqIGlzIGlnbm9yZWQ7IHdlJ3JlIGludGVyZXN0ZWQgaW4gaGFuZGxpbmcgY29uZmxpY3RzLikKLQkgKgotCSAqIFNpbmNlIHdlIGRvbid0IHR1cm4gb24gYnJlYWstcmV3cml0ZXMgYnkgZGVmYXVsdCwgbmVpdGhlcgotCSAqIHNyY19lbnRyeSBub3IgZHN0X2VudHJ5IGNhbiBoYXZlIGFsbCB0aHJlZSBvZiB0aGVpciBzdGFnZXMgaGF2ZQotCSAqIG5vbi1udWxsIG9pZHMsIG1lYW5pbmcgYXQgbW9zdCBmb3VyIG9mIHRoZSBzaXggd2lsbCBiZSBub24tbnVsbC4KLQkgKiBBbHNvLCBzaW5jZSB0aGlzIGlzIGEgcmVuYW1lLCBib3RoIHNyY19lbnRyeSBhbmQgZHN0X2VudHJ5IHdpbGwKLQkgKiBoYXZlIGF0IGxlYXN0IG9uZSBub24tbnVsbCBvaWQsIG1lYW5pbmcgYXQgbGVhc3QgdHdvIHdpbGwgYmUKLQkgKiBub24tbnVsbC4gIE9mIHRoZSBzaXggb2lkcywgYSB0eXBpY2FsIHJlbmFtZSB3aWxsIGhhdmUgdGhyZWUgYmUKLQkgKiBub24tbnVsbC4gIE9ubHkgdHdvIGltcGxpZXMgYSByZW5hbWUvZGVsZXRlLCBhbmQgZm91ciBpbXBsaWVzIGEKLQkgKiByZW5hbWUvYWRkLgotCSAqLwotCXN0cnVjdCBzdGFnZV9kYXRhICpzcmNfZW50cnk7Ci0Jc3RydWN0IHN0YWdlX2RhdGEgKmRzdF9lbnRyeTsKLQl1bnNpZ25lZCBhZGRfdHVybmVkX2ludG9fcmVuYW1lOjE7Ci0JdW5zaWduZWQgcHJvY2Vzc2VkOjE7Ci19OwotCiBzdGF0aWMgaW50IHVwZGF0ZV9zdGFnZXMoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwgY29uc3QgY2hhciAqcGF0aCwKIAkJCSBjb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqbywKIAkJCSBjb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqYSwKQEAgLTY3Niw0MSArNjU4LDIwIEBACiAJaW50IGNsZWFyID0gMTsKIAlpbnQgb3B0aW9ucyA9IEFERF9DQUNIRV9PS19UT19BREQgfCBBRERfQ0FDSEVfU0tJUF9ERkNIRUNLOwogCWlmIChjbGVhcikKLQkJaWYgKHJlbW92ZV9maWxlX2Zyb21fY2FjaGUocGF0aCkpCisJCWlmIChyZW1vdmVfZmlsZV9mcm9tX2luZGV4KG9wdC0+cmVwby0+aW5kZXgsIHBhdGgpKQogCQkJcmV0dXJuIC0xOwogCWlmIChvKQotCQlpZiAoYWRkX2NhY2hlaW5mbyhvcHQsIG8tPm1vZGUsICZvLT5vaWQsIHBhdGgsIDEsIDAsIG9wdGlvbnMpKQorCQlpZiAoYWRkX2NhY2hlaW5mbyhvcHQsIG8sIHBhdGgsIDEsIDAsIG9wdGlvbnMpKQogCQkJcmV0dXJuIC0xOwogCWlmIChhKQotCQlpZiAoYWRkX2NhY2hlaW5mbyhvcHQsIGEtPm1vZGUsICZhLT5vaWQsIHBhdGgsIDIsIDAsIG9wdGlvbnMpKQorCQlpZiAoYWRkX2NhY2hlaW5mbyhvcHQsIGEsIHBhdGgsIDIsIDAsIG9wdGlvbnMpKQogCQkJcmV0dXJuIC0xOwogCWlmIChiKQotCQlpZiAoYWRkX2NhY2hlaW5mbyhvcHQsIGItPm1vZGUsICZiLT5vaWQsIHBhdGgsIDMsIDAsIG9wdGlvbnMpKQorCQlpZiAoYWRkX2NhY2hlaW5mbyhvcHQsIGIsIHBhdGgsIDMsIDAsIG9wdGlvbnMpKQogCQkJcmV0dXJuIC0xOwogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IHVwZGF0ZV9zdGFnZXNfZm9yX3N0YWdlX2RhdGEoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKLQkJCQkJY29uc3QgY2hhciAqcGF0aCwKLQkJCQkJY29uc3Qgc3RydWN0IHN0YWdlX2RhdGEgKnN0YWdlX2RhdGEpCi17Ci0Jc3RydWN0IGRpZmZfZmlsZXNwZWMgbywgYSwgYjsKLQotCW8ubW9kZSA9IHN0YWdlX2RhdGEtPnN0YWdlc1sxXS5tb2RlOwotCW9pZGNweSgmby5vaWQsICZzdGFnZV9kYXRhLT5zdGFnZXNbMV0ub2lkKTsKLQotCWEubW9kZSA9IHN0YWdlX2RhdGEtPnN0YWdlc1syXS5tb2RlOwotCW9pZGNweSgmYS5vaWQsICZzdGFnZV9kYXRhLT5zdGFnZXNbMl0ub2lkKTsKLQotCWIubW9kZSA9IHN0YWdlX2RhdGEtPnN0YWdlc1szXS5tb2RlOwotCW9pZGNweSgmYi5vaWQsICZzdGFnZV9kYXRhLT5zdGFnZXNbM10ub2lkKTsKLQotCXJldHVybiB1cGRhdGVfc3RhZ2VzKG9wdCwgcGF0aCwKLQkJCSAgICAgaXNfbnVsbF9vaWQoJm8ub2lkKSA/IE5VTEwgOiAmbywKLQkJCSAgICAgaXNfbnVsbF9vaWQoJmEub2lkKSA/IE5VTEwgOiAmYSwKLQkJCSAgICAgaXNfbnVsbF9vaWQoJmIub2lkKSA/IE5VTEwgOiAmYik7Ci19Ci0KIHN0YXRpYyB2b2lkIHVwZGF0ZV9lbnRyeShzdHJ1Y3Qgc3RhZ2VfZGF0YSAqZW50cnksCiAJCQkgc3RydWN0IGRpZmZfZmlsZXNwZWMgKm8sCiAJCQkgc3RydWN0IGRpZmZfZmlsZXNwZWMgKmEsCkBAIC03MjUsMjAgKzY4NiwyMSBAQAogCW9pZGNweSgmZW50cnktPnN0YWdlc1szXS5vaWQsICZiLT5vaWQpOwogfQogCi1zdGF0aWMgaW50IHJlbW92ZV9maWxlKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLCBpbnQgY2xlYW4sCitzdGF0aWMgaW50IHJlbW92ZV9maWxlKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsIGludCBjbGVhbiwKIAkJICAgICAgIGNvbnN0IGNoYXIgKnBhdGgsIGludCBub193ZCkKIHsKLQlpbnQgdXBkYXRlX2NhY2hlID0gby0+Y2FsbF9kZXB0aCB8fCBjbGVhbjsKLQlpbnQgdXBkYXRlX3dvcmtpbmdfZGlyZWN0b3J5ID0gIW8tPmNhbGxfZGVwdGggJiYgIW5vX3dkOworCWludCB1cGRhdGVfY2FjaGUgPSBvcHQtPnByaXYtPmNhbGxfZGVwdGggfHwgY2xlYW47CisJaW50IHVwZGF0ZV93b3JraW5nX2RpcmVjdG9yeSA9ICFvcHQtPnByaXYtPmNhbGxfZGVwdGggJiYgIW5vX3dkOwogCiAJaWYgKHVwZGF0ZV9jYWNoZSkgewotCQlpZiAocmVtb3ZlX2ZpbGVfZnJvbV9jYWNoZShwYXRoKSkKKwkJaWYgKHJlbW92ZV9maWxlX2Zyb21faW5kZXgob3B0LT5yZXBvLT5pbmRleCwgcGF0aCkpCiAJCQlyZXR1cm4gLTE7CiAJfQogCWlmICh1cGRhdGVfd29ya2luZ19kaXJlY3RvcnkpIHsKIAkJaWYgKGlnbm9yZV9jYXNlKSB7CiAJCQlzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlOwotCQkJY2UgPSBjYWNoZV9maWxlX2V4aXN0cyhwYXRoLCBzdHJsZW4ocGF0aCksIGlnbm9yZV9jYXNlKTsKKwkJCWNlID0gaW5kZXhfZmlsZV9leGlzdHMob3B0LT5yZXBvLT5pbmRleCwgcGF0aCwgc3RybGVuKHBhdGgpLAorCQkJCQkgICAgICAgaWdub3JlX2Nhc2UpOwogCQkJaWYgKGNlICYmIGNlX3N0YWdlKGNlKSA9PSAwICYmIHN0cmNtcChwYXRoLCBjZS0+bmFtZSkpCiAJCQkJcmV0dXJuIDA7CiAJCX0KQEAgLTc1OCw3ICs3MjAsOSBAQAogCQkJb3V0LT5idWZbaV0gPSAnXyc7CiB9CiAKLXN0YXRpYyBjaGFyICp1bmlxdWVfcGF0aChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywgY29uc3QgY2hhciAqcGF0aCwgY29uc3QgY2hhciAqYnJhbmNoKQorc3RhdGljIGNoYXIgKnVuaXF1ZV9wYXRoKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCisJCQkgY29uc3QgY2hhciAqcGF0aCwKKwkJCSBjb25zdCBjaGFyICpicmFuY2gpCiB7CiAJc3RydWN0IHBhdGhfaGFzaG1hcF9lbnRyeSAqZW50cnk7CiAJc3RydWN0IHN0cmJ1ZiBuZXdwYXRoID0gU1RSQlVGX0lOSVQ7CkBAIC03NjksMTYgKzczMywxNiBAQAogCWFkZF9mbGF0dGVuZWRfcGF0aCgmbmV3cGF0aCwgYnJhbmNoKTsKIAogCWJhc2VfbGVuID0gbmV3cGF0aC5sZW47Ci0Jd2hpbGUgKGhhc2htYXBfZ2V0X2Zyb21faGFzaCgmby0+Y3VycmVudF9maWxlX2Rpcl9zZXQsCisJd2hpbGUgKGhhc2htYXBfZ2V0X2Zyb21faGFzaCgmb3B0LT5wcml2LT5jdXJyZW50X2ZpbGVfZGlyX3NldCwKIAkJCQkgICAgIHBhdGhfaGFzaChuZXdwYXRoLmJ1ZiksIG5ld3BhdGguYnVmKSB8fAotCSAgICAgICAoIW8tPmNhbGxfZGVwdGggJiYgZmlsZV9leGlzdHMobmV3cGF0aC5idWYpKSkgeworCSAgICAgICAoIW9wdC0+cHJpdi0+Y2FsbF9kZXB0aCAmJiBmaWxlX2V4aXN0cyhuZXdwYXRoLmJ1ZikpKSB7CiAJCXN0cmJ1Zl9zZXRsZW4oJm5ld3BhdGgsIGJhc2VfbGVuKTsKIAkJc3RyYnVmX2FkZGYoJm5ld3BhdGgsICJfJWQiLCBzdWZmaXgrKyk7CiAJfQogCiAJRkxFWF9BTExPQ19NRU0oZW50cnksIHBhdGgsIG5ld3BhdGguYnVmLCBuZXdwYXRoLmxlbik7Ci0JaGFzaG1hcF9lbnRyeV9pbml0KGVudHJ5LCBwYXRoX2hhc2goZW50cnktPnBhdGgpKTsKLQloYXNobWFwX2FkZCgmby0+Y3VycmVudF9maWxlX2Rpcl9zZXQsIGVudHJ5KTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmVudHJ5LT5lLCBwYXRoX2hhc2goZW50cnktPnBhdGgpKTsKKwloYXNobWFwX2FkZCgmb3B0LT5wcml2LT5jdXJyZW50X2ZpbGVfZGlyX3NldCwgJmVudHJ5LT5lKTsKIAlyZXR1cm4gc3RyYnVmX2RldGFjaCgmbmV3cGF0aCwgTlVMTCk7CiB9CiAKQEAgLTc4OCw3ICs3NTIsOCBAQAogICogY2hlY2sgdGhlIHdvcmtpbmcgZGlyZWN0b3J5LiAgSWYgZW1wdHlfb2sgaXMgbm9uLXplcm8sIGFsc28gcmV0dXJuCiAgKiAwIGluIHRoZSBjYXNlIHdoZXJlIHRoZSB3b3JraW5nLXRyZWUgZGlyIGV4aXN0cyBidXQgaXMgZW1wdHkuCiAgKi8KLXN0YXRpYyBpbnQgZGlyX2luX3dheShjb25zdCBjaGFyICpwYXRoLCBpbnQgY2hlY2tfd29ya2luZ19jb3B5LCBpbnQgZW1wdHlfb2spCitzdGF0aWMgaW50IGRpcl9pbl93YXkoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIGNvbnN0IGNoYXIgKnBhdGgsCisJCSAgICAgIGludCBjaGVja193b3JraW5nX2NvcHksIGludCBlbXB0eV9vaykKIHsKIAlpbnQgcG9zOwogCXN0cnVjdCBzdHJidWYgZGlycGF0aCA9IFNUUkJVRl9JTklUOwpAQCAtNzk3LDI5ICs3NjIsMzAgQEAKIAlzdHJidWZfYWRkc3RyKCZkaXJwYXRoLCBwYXRoKTsKIAlzdHJidWZfYWRkY2goJmRpcnBhdGgsICcvJyk7CiAKLQlwb3MgPSBjYWNoZV9uYW1lX3BvcyhkaXJwYXRoLmJ1ZiwgZGlycGF0aC5sZW4pOworCXBvcyA9IGluZGV4X25hbWVfcG9zKGlzdGF0ZSwgZGlycGF0aC5idWYsIGRpcnBhdGgubGVuKTsKIAogCWlmIChwb3MgPCAwKQogCQlwb3MgPSAtMSAtIHBvczsKLQlpZiAocG9zIDwgYWN0aXZlX25yICYmCi0JICAgICFzdHJuY21wKGRpcnBhdGguYnVmLCBhY3RpdmVfY2FjaGVbcG9zXS0+bmFtZSwgZGlycGF0aC5sZW4pKSB7CisJaWYgKHBvcyA8IGlzdGF0ZS0+Y2FjaGVfbnIgJiYKKwkgICAgIXN0cm5jbXAoZGlycGF0aC5idWYsIGlzdGF0ZS0+Y2FjaGVbcG9zXS0+bmFtZSwgZGlycGF0aC5sZW4pKSB7CiAJCXN0cmJ1Zl9yZWxlYXNlKCZkaXJwYXRoKTsKIAkJcmV0dXJuIDE7CiAJfQogCiAJc3RyYnVmX3JlbGVhc2UoJmRpcnBhdGgpOwogCXJldHVybiBjaGVja193b3JraW5nX2NvcHkgJiYgIWxzdGF0KHBhdGgsICZzdCkgJiYgU19JU0RJUihzdC5zdF9tb2RlKSAmJgotCQkhKGVtcHR5X29rICYmIGlzX2VtcHR5X2RpcihwYXRoKSk7CisJCSEoZW1wdHlfb2sgJiYgaXNfZW1wdHlfZGlyKHBhdGgpKSAmJgorCQkhaGFzX3N5bWxpbmtfbGVhZGluZ19wYXRoKHBhdGgsIHN0cmxlbihwYXRoKSk7CiB9CiAKIC8qCiAgKiBSZXR1cm5zIHdoZXRoZXIgcGF0aCB3YXMgdHJhY2tlZCBpbiB0aGUgaW5kZXggYmVmb3JlIHRoZSBtZXJnZSBzdGFydGVkLAogICogYW5kIGl0cyBvaWQgYW5kIG1vZGUgbWF0Y2ggdGhlIHNwZWNpZmllZCB2YWx1ZXMKICAqLwotc3RhdGljIGludCB3YXNfdHJhY2tlZF9hbmRfbWF0Y2hlcyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywgY29uc3QgY2hhciAqcGF0aCwKLQkJCQkgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHVuc2lnbmVkIG1vZGUpCitzdGF0aWMgaW50IHdhc190cmFja2VkX2FuZF9tYXRjaGVzKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsIGNvbnN0IGNoYXIgKnBhdGgsCisJCQkJICAgY29uc3Qgc3RydWN0IGRpZmZfZmlsZXNwZWMgKmJsb2IpCiB7Ci0JaW50IHBvcyA9IGluZGV4X25hbWVfcG9zKCZvLT5vcmlnX2luZGV4LCBwYXRoLCBzdHJsZW4ocGF0aCkpOworCWludCBwb3MgPSBpbmRleF9uYW1lX3Bvcygmb3B0LT5wcml2LT5vcmlnX2luZGV4LCBwYXRoLCBzdHJsZW4ocGF0aCkpOwogCXN0cnVjdCBjYWNoZV9lbnRyeSAqY2U7CiAKIAlpZiAoMCA+IHBvcykKQEAgLTgyNywxNiArNzkzLDE2IEBACiAJCXJldHVybiAwOwogCiAJLyogU2VlIGlmIHRoZSBmaWxlIHdlIHdlcmUgdHJhY2tpbmcgYmVmb3JlIG1hdGNoZXMgKi8KLQljZSA9IG8tPm9yaWdfaW5kZXguY2FjaGVbcG9zXTsKLQlyZXR1cm4gKG9pZF9lcSgmY2UtPm9pZCwgb2lkKSAmJiBjZS0+Y2VfbW9kZSA9PSBtb2RlKTsKKwljZSA9IG9wdC0+cHJpdi0+b3JpZ19pbmRleC5jYWNoZVtwb3NdOworCXJldHVybiAob2lkZXEoJmNlLT5vaWQsICZibG9iLT5vaWQpICYmIGNlLT5jZV9tb2RlID09IGJsb2ItPm1vZGUpOwogfQogCiAvKgogICogUmV0dXJucyB3aGV0aGVyIHBhdGggd2FzIHRyYWNrZWQgaW4gdGhlIGluZGV4IGJlZm9yZSB0aGUgbWVyZ2Ugc3RhcnRlZAogICovCi1zdGF0aWMgaW50IHdhc190cmFja2VkKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLCBjb25zdCBjaGFyICpwYXRoKQorc3RhdGljIGludCB3YXNfdHJhY2tlZChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LCBjb25zdCBjaGFyICpwYXRoKQogewotCWludCBwb3MgPSBpbmRleF9uYW1lX3Bvcygmby0+b3JpZ19pbmRleCwgcGF0aCwgc3RybGVuKHBhdGgpKTsKKwlpbnQgcG9zID0gaW5kZXhfbmFtZV9wb3MoJm9wdC0+cHJpdi0+b3JpZ19pbmRleCwgcGF0aCwgc3RybGVuKHBhdGgpKTsKIAogCWlmICgwIDw9IHBvcykKIAkJLyogd2Ugd2VyZSB0cmFja2luZyB0aGlzIHBhdGggYmVmb3JlIHRoZSBtZXJnZSAqLwpAQCAtODQ1LDExICs4MTEsMTMgQEAKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCB3b3VsZF9sb3NlX3VudHJhY2tlZChjb25zdCBjaGFyICpwYXRoKQorc3RhdGljIGludCB3b3VsZF9sb3NlX3VudHJhY2tlZChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LCBjb25zdCBjaGFyICpwYXRoKQogeworCXN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlID0gb3B0LT5yZXBvLT5pbmRleDsKKwogCS8qCiAJICogVGhpcyBtYXkgbG9vayBsaWtlIGl0IGNhbiBiZSBzaW1wbGlmaWVkIHRvOgotCSAqICAgcmV0dXJuICF3YXNfdHJhY2tlZChvLCBwYXRoKSAmJiBmaWxlX2V4aXN0cyhwYXRoKQorCSAqICAgcmV0dXJuICF3YXNfdHJhY2tlZChvcHQsIHBhdGgpICYmIGZpbGVfZXhpc3RzKHBhdGgpCiAJICogYnV0IGl0IGNhbid0LiAgVGhpcyBmdW5jdGlvbiBuZWVkcyB0byBrbm93IHdoZXRoZXIgcGF0aCB3YXMgaW4KIAkgKiB0aGUgd29ya2luZyB0cmVlIGR1ZSB0byBFSVRIRVIgaGF2aW5nIGJlZW4gdHJhY2tlZCBpbiB0aGUgaW5kZXgKIAkgKiBiZWZvcmUgdGhlIG1lcmdlIE9SIGhhdmluZyBiZWVuIHB1dCBpbnRvIHRoZSB3b3JraW5nIGNvcHkgYW5kCkBAIC04NjQsMTkgKzgzMiwxOSBAQAogCSAqIHVwZGF0ZV9maWxlKCkvd291bGRfbG9zZV91bnRyYWNrZWQoKTsgc2VlIGV2ZXJ5IGNvbW1lbnQgaW4gdGhpcwogCSAqIGZpbGUgd2hpY2ggbWVudGlvbnMgInVwZGF0ZV9zdGFnZXMiLgogCSAqLwotCWludCBwb3MgPSBjYWNoZV9uYW1lX3BvcyhwYXRoLCBzdHJsZW4ocGF0aCkpOworCWludCBwb3MgPSBpbmRleF9uYW1lX3Bvcyhpc3RhdGUsIHBhdGgsIHN0cmxlbihwYXRoKSk7CiAKIAlpZiAocG9zIDwgMCkKIAkJcG9zID0gLTEgLSBwb3M7Ci0Jd2hpbGUgKHBvcyA8IGFjdGl2ZV9uciAmJgotCSAgICAgICAhc3RyY21wKHBhdGgsIGFjdGl2ZV9jYWNoZVtwb3NdLT5uYW1lKSkgeworCXdoaWxlIChwb3MgPCBpc3RhdGUtPmNhY2hlX25yICYmCisJICAgICAgICFzdHJjbXAocGF0aCwgaXN0YXRlLT5jYWNoZVtwb3NdLT5uYW1lKSkgewogCQkvKgogCQkgKiBJZiBzdGFnZSAjMCwgaXQgaXMgZGVmaW5pdGVseSB0cmFja2VkLgogCQkgKiBJZiBpdCBoYXMgc3RhZ2UgIzIgdGhlbiBpdCB3YXMgdHJhY2tlZAogCQkgKiBiZWZvcmUgdGhpcyBtZXJnZSBzdGFydGVkLiAgQWxsIG90aGVyCiAJCSAqIGNhc2VzIHRoZSBwYXRoIHdhcyBub3QgdHJhY2tlZC4KIAkJICovCi0JCXN3aXRjaCAoY2Vfc3RhZ2UoYWN0aXZlX2NhY2hlW3Bvc10pKSB7CisJCXN3aXRjaCAoY2Vfc3RhZ2UoaXN0YXRlLT5jYWNoZVtwb3NdKSkgewogCQljYXNlIDA6CiAJCWNhc2UgMjoKIAkJCXJldHVybiAwOwpAQCAtODg2LDM4ICs4NTQsMzggQEAKIAlyZXR1cm4gZmlsZV9leGlzdHMocGF0aCk7CiB9CiAKLXN0YXRpYyBpbnQgd2FzX2RpcnR5KHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLCBjb25zdCBjaGFyICpwYXRoKQorc3RhdGljIGludCB3YXNfZGlydHkoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwgY29uc3QgY2hhciAqcGF0aCkKIHsKIAlzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlOwogCWludCBkaXJ0eSA9IDE7CiAKLQlpZiAoby0+Y2FsbF9kZXB0aCB8fCAhd2FzX3RyYWNrZWQobywgcGF0aCkpCisJaWYgKG9wdC0+cHJpdi0+Y2FsbF9kZXB0aCB8fCAhd2FzX3RyYWNrZWQob3B0LCBwYXRoKSkKIAkJcmV0dXJuICFkaXJ0eTsKIAotCWNlID0gaW5kZXhfZmlsZV9leGlzdHMoby0+dW5wYWNrX29wdHMuc3JjX2luZGV4LAorCWNlID0gaW5kZXhfZmlsZV9leGlzdHMob3B0LT5wcml2LT51bnBhY2tfb3B0cy5zcmNfaW5kZXgsCiAJCQkgICAgICAgcGF0aCwgc3RybGVuKHBhdGgpLCBpZ25vcmVfY2FzZSk7Ci0JZGlydHkgPSB2ZXJpZnlfdXB0b2RhdGUoY2UsICZvLT51bnBhY2tfb3B0cykgIT0gMDsKKwlkaXJ0eSA9IHZlcmlmeV91cHRvZGF0ZShjZSwgJm9wdC0+cHJpdi0+dW5wYWNrX29wdHMpICE9IDA7CiAJcmV0dXJuIGRpcnR5OwogfQogCi1zdGF0aWMgaW50IG1ha2Vfcm9vbV9mb3JfcGF0aChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywgY29uc3QgY2hhciAqcGF0aCkKK3N0YXRpYyBpbnQgbWFrZV9yb29tX2Zvcl9wYXRoKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsIGNvbnN0IGNoYXIgKnBhdGgpCiB7CiAJaW50IHN0YXR1cywgaTsKIAljb25zdCBjaGFyICptc2cgPSBfKCJmYWlsZWQgdG8gY3JlYXRlIHBhdGggJyVzJyVzIik7CiAKIAkvKiBVbmxpbmsgYW55IEQvRiBjb25mbGljdCBmaWxlcyB0aGF0IGFyZSBpbiB0aGUgd2F5ICovCi0JZm9yIChpID0gMDsgaSA8IG8tPmRmX2NvbmZsaWN0X2ZpbGVfc2V0Lm5yOyBpKyspIHsKLQkJY29uc3QgY2hhciAqZGZfcGF0aCA9IG8tPmRmX2NvbmZsaWN0X2ZpbGVfc2V0Lml0ZW1zW2ldLnN0cmluZzsKKwlmb3IgKGkgPSAwOyBpIDwgb3B0LT5wcml2LT5kZl9jb25mbGljdF9maWxlX3NldC5ucjsgaSsrKSB7CisJCWNvbnN0IGNoYXIgKmRmX3BhdGggPSBvcHQtPnByaXYtPmRmX2NvbmZsaWN0X2ZpbGVfc2V0Lml0ZW1zW2ldLnN0cmluZzsKIAkJc2l6ZV90IHBhdGhsZW4gPSBzdHJsZW4ocGF0aCk7CiAJCXNpemVfdCBkZl9wYXRobGVuID0gc3RybGVuKGRmX3BhdGgpOwogCQlpZiAoZGZfcGF0aGxlbiA8IHBhdGhsZW4gJiYKIAkJICAgIHBhdGhbZGZfcGF0aGxlbl0gPT0gJy8nICYmCiAJCSAgICBzdHJuY21wKHBhdGgsIGRmX3BhdGgsIGRmX3BhdGhsZW4pID09IDApIHsKLQkJCW91dHB1dChvLCAzLAorCQkJb3V0cHV0KG9wdCwgMywKIAkJCSAgICAgICBfKCJSZW1vdmluZyAlcyB0byBtYWtlIHJvb20gZm9yIHN1YmRpcmVjdG9yeVxuIiksCiAJCQkgICAgICAgZGZfcGF0aCk7CiAJCQl1bmxpbmsoZGZfcGF0aCk7Ci0JCQl1bnNvcnRlZF9zdHJpbmdfbGlzdF9kZWxldGVfaXRlbSgmby0+ZGZfY29uZmxpY3RfZmlsZV9zZXQsCisJCQl1bnNvcnRlZF9zdHJpbmdfbGlzdF9kZWxldGVfaXRlbSgmb3B0LT5wcml2LT5kZl9jb25mbGljdF9maWxlX3NldCwKIAkJCQkJCQkgaSwgMCk7CiAJCQlicmVhazsKIAkJfQpAQCAtOTI4LDE2ICs4OTYsMTYgQEAKIAlpZiAoc3RhdHVzKSB7CiAJCWlmIChzdGF0dXMgPT0gU0NMRF9FWElTVFMpCiAJCQkvKiBzb21ldGhpbmcgZWxzZSBleGlzdHMgKi8KLQkJCXJldHVybiBlcnIobywgbXNnLCBwYXRoLCBfKCI6IHBlcmhhcHMgYSBEL0YgY29uZmxpY3Q/IikpOwotCQlyZXR1cm4gZXJyKG8sIG1zZywgcGF0aCwgIiIpOworCQkJcmV0dXJuIGVycihvcHQsIG1zZywgcGF0aCwgXygiOiBwZXJoYXBzIGEgRC9GIGNvbmZsaWN0PyIpKTsKKwkJcmV0dXJuIGVycihvcHQsIG1zZywgcGF0aCwgIiIpOwogCX0KIAogCS8qCiAJICogRG8gbm90IHVubGluayBhIGZpbGUgaW4gdGhlIHdvcmsgdHJlZSBpZiB3ZSBhcmUgbm90CiAJICogdHJhY2tpbmcgaXQuCiAJICovCi0JaWYgKHdvdWxkX2xvc2VfdW50cmFja2VkKHBhdGgpKQotCQlyZXR1cm4gZXJyKG8sIF8oInJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJyVzJyIpLAorCWlmICh3b3VsZF9sb3NlX3VudHJhY2tlZChvcHQsIHBhdGgpKQorCQlyZXR1cm4gZXJyKG9wdCwgXygicmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAnJXMnIiksCiAJCQkgICBwYXRoKTsKIAogCS8qIFN1Y2Nlc3NmdWwgdW5saW5rIGlzIGdvb2QuLiAqLwpAQCAtOTQ3LDE5ICs5MTUsMTggQEAKIAlpZiAoZXJybm8gPT0gRU5PRU5UKQogCQlyZXR1cm4gMDsKIAkvKiAuLiBidXQgbm90IHNvbWUgb3RoZXIgZXJyb3IgKHdobyByZWFsbHkgY2FyZXMgd2hhdD8pICovCi0JcmV0dXJuIGVycihvLCBtc2csIHBhdGgsIF8oIjogcGVyaGFwcyBhIEQvRiBjb25mbGljdD8iKSk7CisJcmV0dXJuIGVycihvcHQsIG1zZywgcGF0aCwgXygiOiBwZXJoYXBzIGEgRC9GIGNvbmZsaWN0PyIpKTsKIH0KIAotc3RhdGljIGludCB1cGRhdGVfZmlsZV9mbGFncyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywKLQkJCSAgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAotCQkJICAgICB1bnNpZ25lZCBtb2RlLAorc3RhdGljIGludCB1cGRhdGVfZmlsZV9mbGFncyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAorCQkJICAgICBjb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqY29udGVudHMsCiAJCQkgICAgIGNvbnN0IGNoYXIgKnBhdGgsCiAJCQkgICAgIGludCB1cGRhdGVfY2FjaGUsCiAJCQkgICAgIGludCB1cGRhdGVfd2QpCiB7CiAJaW50IHJldCA9IDA7CiAKLQlpZiAoby0+Y2FsbF9kZXB0aCkKKwlpZiAob3B0LT5wcml2LT5jYWxsX2RlcHRoKQogCQl1cGRhdGVfd2QgPSAwOwogCiAJaWYgKHVwZGF0ZV93ZCkgewpAQCAtOTY3LDcgKzkzNCw3IEBACiAJCXZvaWQgKmJ1ZjsKIAkJdW5zaWduZWQgbG9uZyBzaXplOwogCi0JCWlmIChTX0lTR0lUTElOSyhtb2RlKSkgeworCQlpZiAoU19JU0dJVExJTksoY29udGVudHMtPm1vZGUpKSB7CiAJCQkvKgogCQkJICogV2UgbWF5IGxhdGVyIGRlY2lkZSB0byByZWN1cnNpdmVseSBkZXNjZW5kIGludG8KIAkJCSAqIHRoZSBzdWJtb2R1bGUgZGlyZWN0b3J5IGFuZCB1cGRhdGUgaXRzIGluZGV4CkBAIC05NzcsMTA2ICs5NDQsMTE0IEBACiAJCQlnb3RvIHVwZGF0ZV9pbmRleDsKIAkJfQogCi0JCWJ1ZiA9IHJlYWRfb2JqZWN0X2ZpbGUob2lkLCAmdHlwZSwgJnNpemUpOwotCQlpZiAoIWJ1ZikKLQkJCXJldHVybiBlcnIobywgXygiY2Fubm90IHJlYWQgb2JqZWN0ICVzICclcyciKSwgb2lkX3RvX2hleChvaWQpLCBwYXRoKTsKLQkJaWYgKHR5cGUgIT0gT0JKX0JMT0IpIHsKLQkJCXJldCA9IGVycihvLCBfKCJibG9iIGV4cGVjdGVkIGZvciAlcyAnJXMnIiksIG9pZF90b19oZXgob2lkKSwgcGF0aCk7CisJCWJ1ZiA9IHJlYWRfb2JqZWN0X2ZpbGUoJmNvbnRlbnRzLT5vaWQsICZ0eXBlLCAmc2l6ZSk7CisJCWlmICghYnVmKSB7CisJCQlyZXQgPSBlcnIob3B0LCBfKCJjYW5ub3QgcmVhZCBvYmplY3QgJXMgJyVzJyIpLAorCQkJCSAgb2lkX3RvX2hleCgmY29udGVudHMtPm9pZCksIHBhdGgpOwogCQkJZ290byBmcmVlX2J1ZjsKIAkJfQotCQlpZiAoU19JU1JFRyhtb2RlKSkgeworCQlpZiAodHlwZSAhPSBPQkpfQkxPQikgeworCQkJcmV0ID0gZXJyKG9wdCwgXygiYmxvYiBleHBlY3RlZCBmb3IgJXMgJyVzJyIpLAorCQkJCSAgb2lkX3RvX2hleCgmY29udGVudHMtPm9pZCksIHBhdGgpOworCQkJZ290byBmcmVlX2J1ZjsKKwkJfQorCQlpZiAoU19JU1JFRyhjb250ZW50cy0+bW9kZSkpIHsKIAkJCXN0cnVjdCBzdHJidWYgc3RyYnVmID0gU1RSQlVGX0lOSVQ7Ci0JCQlpZiAoY29udmVydF90b193b3JraW5nX3RyZWUoJnRoZV9pbmRleCwgcGF0aCwgYnVmLCBzaXplLCAmc3RyYnVmKSkgeworCQkJaWYgKGNvbnZlcnRfdG9fd29ya2luZ190cmVlKG9wdC0+cmVwby0+aW5kZXgsCisJCQkJCQkgICAgcGF0aCwgYnVmLCBzaXplLCAmc3RyYnVmKSkgewogCQkJCWZyZWUoYnVmKTsKIAkJCQlzaXplID0gc3RyYnVmLmxlbjsKIAkJCQlidWYgPSBzdHJidWZfZGV0YWNoKCZzdHJidWYsIE5VTEwpOwogCQkJfQogCQl9CiAKLQkJaWYgKG1ha2Vfcm9vbV9mb3JfcGF0aChvLCBwYXRoKSA8IDApIHsKKwkJaWYgKG1ha2Vfcm9vbV9mb3JfcGF0aChvcHQsIHBhdGgpIDwgMCkgewogCQkJdXBkYXRlX3dkID0gMDsKIAkJCWdvdG8gZnJlZV9idWY7CiAJCX0KLQkJaWYgKFNfSVNSRUcobW9kZSkgfHwgKCFoYXNfc3ltbGlua3MgJiYgU19JU0xOSyhtb2RlKSkpIHsKKwkJaWYgKFNfSVNSRUcoY29udGVudHMtPm1vZGUpIHx8CisJCSAgICAoIWhhc19zeW1saW5rcyAmJiBTX0lTTE5LKGNvbnRlbnRzLT5tb2RlKSkpIHsKIAkJCWludCBmZDsKLQkJCWlmIChtb2RlICYgMDEwMCkKLQkJCQltb2RlID0gMDc3NzsKLQkJCWVsc2UKLQkJCQltb2RlID0gMDY2NjsKKwkJCWludCBtb2RlID0gKGNvbnRlbnRzLT5tb2RlICYgMDEwMCA/IDA3NzcgOiAwNjY2KTsKKwogCQkJZmQgPSBvcGVuKHBhdGgsIE9fV1JPTkxZIHwgT19UUlVOQyB8IE9fQ1JFQVQsIG1vZGUpOwogCQkJaWYgKGZkIDwgMCkgewotCQkJCXJldCA9IGVycihvLCBfKCJmYWlsZWQgdG8gb3BlbiAnJXMnOiAlcyIpLAorCQkJCXJldCA9IGVycihvcHQsIF8oImZhaWxlZCB0byBvcGVuICclcyc6ICVzIiksCiAJCQkJCSAgcGF0aCwgc3RyZXJyb3IoZXJybm8pKTsKIAkJCQlnb3RvIGZyZWVfYnVmOwogCQkJfQogCQkJd3JpdGVfaW5fZnVsbChmZCwgYnVmLCBzaXplKTsKIAkJCWNsb3NlKGZkKTsKLQkJfSBlbHNlIGlmIChTX0lTTE5LKG1vZGUpKSB7CisJCX0gZWxzZSBpZiAoU19JU0xOSyhjb250ZW50cy0+bW9kZSkpIHsKIAkJCWNoYXIgKmxuayA9IHhtZW1kdXB6KGJ1Ziwgc2l6ZSk7CiAJCQlzYWZlX2NyZWF0ZV9sZWFkaW5nX2RpcmVjdG9yaWVzX2NvbnN0KHBhdGgpOwogCQkJdW5saW5rKHBhdGgpOwogCQkJaWYgKHN5bWxpbmsobG5rLCBwYXRoKSkKLQkJCQlyZXQgPSBlcnIobywgXygiZmFpbGVkIHRvIHN5bWxpbmsgJyVzJzogJXMiKSwKKwkJCQlyZXQgPSBlcnIob3B0LCBfKCJmYWlsZWQgdG8gc3ltbGluayAnJXMnOiAlcyIpLAogCQkJCQkgIHBhdGgsIHN0cmVycm9yKGVycm5vKSk7CiAJCQlmcmVlKGxuayk7CiAJCX0gZWxzZQotCQkJcmV0ID0gZXJyKG8sCisJCQlyZXQgPSBlcnIob3B0LAogCQkJCSAgXygiZG8gbm90IGtub3cgd2hhdCB0byBkbyB3aXRoICUwNm8gJXMgJyVzJyIpLAotCQkJCSAgbW9kZSwgb2lkX3RvX2hleChvaWQpLCBwYXRoKTsKKwkJCQkgIGNvbnRlbnRzLT5tb2RlLCBvaWRfdG9faGV4KCZjb250ZW50cy0+b2lkKSwgcGF0aCk7CiAJZnJlZV9idWY6CiAJCWZyZWUoYnVmKTsKIAl9CiB1cGRhdGVfaW5kZXg6Ci0JaWYgKCFyZXQgJiYgdXBkYXRlX2NhY2hlKQotCQlpZiAoYWRkX2NhY2hlaW5mbyhvLCBtb2RlLCBvaWQsIHBhdGgsIDAsIHVwZGF0ZV93ZCwKKwlpZiAoIXJldCAmJiB1cGRhdGVfY2FjaGUpIHsKKwkJaW50IHJlZnJlc2ggPSAoIW9wdC0+cHJpdi0+Y2FsbF9kZXB0aCAmJgorCQkJICAgICAgIGNvbnRlbnRzLT5tb2RlICE9IFNfSUZHSVRMSU5LKTsKKwkJaWYgKGFkZF9jYWNoZWluZm8ob3B0LCBjb250ZW50cywgcGF0aCwgMCwgcmVmcmVzaCwKIAkJCQkgIEFERF9DQUNIRV9PS19UT19BREQpKQogCQkJcmV0dXJuIC0xOworCX0KIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IHVwZGF0ZV9maWxlKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLAorc3RhdGljIGludCB1cGRhdGVfZmlsZShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAogCQkgICAgICAgaW50IGNsZWFuLAotCQkgICAgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAotCQkgICAgICAgdW5zaWduZWQgbW9kZSwKKwkJICAgICAgIGNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpjb250ZW50cywKIAkJICAgICAgIGNvbnN0IGNoYXIgKnBhdGgpCiB7Ci0JcmV0dXJuIHVwZGF0ZV9maWxlX2ZsYWdzKG8sIG9pZCwgbW9kZSwgcGF0aCwgby0+Y2FsbF9kZXB0aCB8fCBjbGVhbiwgIW8tPmNhbGxfZGVwdGgpOworCXJldHVybiB1cGRhdGVfZmlsZV9mbGFncyhvcHQsIGNvbnRlbnRzLCBwYXRoLAorCQkJCSBvcHQtPnByaXYtPmNhbGxfZGVwdGggfHwgY2xlYW4sICFvcHQtPnByaXYtPmNhbGxfZGVwdGgpOwogfQogCiAvKiBMb3cgbGV2ZWwgZmlsZSBtZXJnaW5nLCB1cGRhdGUgYW5kIHJlbW92YWwgKi8KIAogc3RydWN0IG1lcmdlX2ZpbGVfaW5mbyB7Ci0Jc3RydWN0IG9iamVjdF9pZCBvaWQ7Ci0JdW5zaWduZWQgbW9kZTsKKwlzdHJ1Y3QgZGlmZl9maWxlc3BlYyBibG9iOyAvKiBtb3N0bHkgdXNlIG9pZCAmIG1vZGU7IHNvbWV0aW1lcyBwYXRoICovCiAJdW5zaWduZWQgY2xlYW46MSwKIAkJIG1lcmdlOjE7CiB9OwogCi1zdGF0aWMgaW50IG1lcmdlXzN3YXkoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCitzdGF0aWMgaW50IG1lcmdlXzN3YXkoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKIAkJICAgICAgbW1idWZmZXJfdCAqcmVzdWx0X2J1ZiwKLQkJICAgICAgY29uc3Qgc3RydWN0IGRpZmZfZmlsZXNwZWMgKm9uZSwKKwkJICAgICAgY29uc3Qgc3RydWN0IGRpZmZfZmlsZXNwZWMgKm8sCiAJCSAgICAgIGNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICphLAogCQkgICAgICBjb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqYiwKIAkJICAgICAgY29uc3QgY2hhciAqYnJhbmNoMSwKLQkJICAgICAgY29uc3QgY2hhciAqYnJhbmNoMikKKwkJICAgICAgY29uc3QgY2hhciAqYnJhbmNoMiwKKwkJICAgICAgY29uc3QgaW50IGV4dHJhX21hcmtlcl9zaXplKQogewogCW1tZmlsZV90IG9yaWcsIHNyYzEsIHNyYzI7CiAJc3RydWN0IGxsX21lcmdlX29wdGlvbnMgbGxfb3B0cyA9IHswfTsKLQljaGFyICpiYXNlX25hbWUsICpuYW1lMSwgKm5hbWUyOworCWNoYXIgKmJhc2UsICpuYW1lMSwgKm5hbWUyOwogCWludCBtZXJnZV9zdGF0dXM7CiAKLQlsbF9vcHRzLnJlbm9ybWFsaXplID0gby0+cmVub3JtYWxpemU7Ci0JbGxfb3B0cy54ZGxfb3B0cyA9IG8tPnhkbF9vcHRzOworCWxsX29wdHMucmVub3JtYWxpemUgPSBvcHQtPnJlbm9ybWFsaXplOworCWxsX29wdHMuZXh0cmFfbWFya2VyX3NpemUgPSBleHRyYV9tYXJrZXJfc2l6ZTsKKwlsbF9vcHRzLnhkbF9vcHRzID0gb3B0LT54ZGxfb3B0czsKIAotCWlmIChvLT5jYWxsX2RlcHRoKSB7CisJaWYgKG9wdC0+cHJpdi0+Y2FsbF9kZXB0aCkgewogCQlsbF9vcHRzLnZpcnR1YWxfYW5jZXN0b3IgPSAxOwogCQlsbF9vcHRzLnZhcmlhbnQgPSAwOwogCX0gZWxzZSB7Ci0JCXN3aXRjaCAoby0+cmVjdXJzaXZlX3ZhcmlhbnQpIHsKLQkJY2FzZSBNRVJHRV9SRUNVUlNJVkVfT1VSUzoKKwkJc3dpdGNoIChvcHQtPnJlY3Vyc2l2ZV92YXJpYW50KSB7CisJCWNhc2UgTUVSR0VfVkFSSUFOVF9PVVJTOgogCQkJbGxfb3B0cy52YXJpYW50ID0gWERMX01FUkdFX0ZBVk9SX09VUlM7CiAJCQlicmVhazsKLQkJY2FzZSBNRVJHRV9SRUNVUlNJVkVfVEhFSVJTOgorCQljYXNlIE1FUkdFX1ZBUklBTlRfVEhFSVJTOgogCQkJbGxfb3B0cy52YXJpYW50ID0gWERMX01FUkdFX0ZBVk9SX1RIRUlSUzsKIAkJCWJyZWFrOwogCQlkZWZhdWx0OgpAQCAtMTA4NSwyOCArMTA2MCwyNiBAQAogCQl9CiAJfQogCi0JaWYgKHN0cmNtcChhLT5wYXRoLCBiLT5wYXRoKSB8fAotCSAgICAoby0+YW5jZXN0b3IgIT0gTlVMTCAmJiBzdHJjbXAoYS0+cGF0aCwgb25lLT5wYXRoKSAhPSAwKSkgewotCQliYXNlX25hbWUgPSBvLT5hbmNlc3RvciA9PSBOVUxMID8gTlVMTCA6Ci0JCQlta3BhdGhkdXAoIiVzOiVzIiwgby0+YW5jZXN0b3IsIG9uZS0+cGF0aCk7CisJYXNzZXJ0KGEtPnBhdGggJiYgYi0+cGF0aCAmJiBvLT5wYXRoICYmIG9wdC0+YW5jZXN0b3IpOworCWlmIChzdHJjbXAoYS0+cGF0aCwgYi0+cGF0aCkgfHwgc3RyY21wKGEtPnBhdGgsIG8tPnBhdGgpICE9IDApIHsKKwkJYmFzZSAgPSBta3BhdGhkdXAoIiVzOiVzIiwgb3B0LT5hbmNlc3Rvciwgby0+cGF0aCk7CiAJCW5hbWUxID0gbWtwYXRoZHVwKCIlczolcyIsIGJyYW5jaDEsIGEtPnBhdGgpOwogCQluYW1lMiA9IG1rcGF0aGR1cCgiJXM6JXMiLCBicmFuY2gyLCBiLT5wYXRoKTsKIAl9IGVsc2UgewotCQliYXNlX25hbWUgPSBvLT5hbmNlc3RvciA9PSBOVUxMID8gTlVMTCA6Ci0JCQlta3BhdGhkdXAoIiVzIiwgby0+YW5jZXN0b3IpOworCQliYXNlICA9IG1rcGF0aGR1cCgiJXMiLCBvcHQtPmFuY2VzdG9yKTsKIAkJbmFtZTEgPSBta3BhdGhkdXAoIiVzIiwgYnJhbmNoMSk7CiAJCW5hbWUyID0gbWtwYXRoZHVwKCIlcyIsIGJyYW5jaDIpOwogCX0KIAotCXJlYWRfbW1ibG9iKCZvcmlnLCAmb25lLT5vaWQpOworCXJlYWRfbW1ibG9iKCZvcmlnLCAmby0+b2lkKTsKIAlyZWFkX21tYmxvYigmc3JjMSwgJmEtPm9pZCk7CiAJcmVhZF9tbWJsb2IoJnNyYzIsICZiLT5vaWQpOwogCi0JbWVyZ2Vfc3RhdHVzID0gbGxfbWVyZ2UocmVzdWx0X2J1ZiwgYS0+cGF0aCwgJm9yaWcsIGJhc2VfbmFtZSwKKwltZXJnZV9zdGF0dXMgPSBsbF9tZXJnZShyZXN1bHRfYnVmLCBhLT5wYXRoLCAmb3JpZywgYmFzZSwKIAkJCQkmc3JjMSwgbmFtZTEsICZzcmMyLCBuYW1lMiwKLQkJCQkmdGhlX2luZGV4LCAmbGxfb3B0cyk7CisJCQkJb3B0LT5yZXBvLT5pbmRleCwgJmxsX29wdHMpOwogCi0JZnJlZShiYXNlX25hbWUpOworCWZyZWUoYmFzZSk7CiAJZnJlZShuYW1lMSk7CiAJZnJlZShuYW1lMik7CiAJZnJlZShvcmlnLnB0cik7CkBAIC0xMTE1LDcgKzEwODgsOCBAQAogCXJldHVybiBtZXJnZV9zdGF0dXM7CiB9CiAKLXN0YXRpYyBpbnQgZmluZF9maXJzdF9tZXJnZXMoc3RydWN0IG9iamVjdF9hcnJheSAqcmVzdWx0LCBjb25zdCBjaGFyICpwYXRoLAorc3RhdGljIGludCBmaW5kX2ZpcnN0X21lcmdlcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCSAgICAgc3RydWN0IG9iamVjdF9hcnJheSAqcmVzdWx0LCBjb25zdCBjaGFyICpwYXRoLAogCQkJICAgICBzdHJ1Y3QgY29tbWl0ICphLCBzdHJ1Y3QgY29tbWl0ICpiKQogewogCWludCBpLCBqOwpAQCAtMTEyMyw3ICsxMDk3LDcgQEAKIAlzdHJ1Y3QgY29tbWl0ICpjb21taXQ7CiAJaW50IGNvbnRhaW5zX2Fub3RoZXI7CiAKLQljaGFyIG1lcmdlZF9yZXZpc2lvbls0Ml07CisJY2hhciBtZXJnZWRfcmV2aXNpb25bR0lUX01BWF9IRVhTWiArIDJdOwogCWNvbnN0IGNoYXIgKnJldl9hcmdzW10gPSB7ICJyZXYtbGlzdCIsICItLW1lcmdlcyIsICItLWFuY2VzdHJ5LXBhdGgiLAogCQkJCSAgICItLWFsbCIsIG1lcmdlZF9yZXZpc2lvbiwgTlVMTCB9OwogCXN0cnVjdCByZXZfaW5mbyByZXZzOwpAQCAtMTEzNSw3ICsxMTA5LDcgQEAKIAkvKiBnZXQgYWxsIHJldmlzaW9ucyB0aGF0IG1lcmdlIGNvbW1pdCBhICovCiAJeHNucHJpbnRmKG1lcmdlZF9yZXZpc2lvbiwgc2l6ZW9mKG1lcmdlZF9yZXZpc2lvbiksICJeJXMiLAogCQkgIG9pZF90b19oZXgoJmEtPm9iamVjdC5vaWQpKTsKLQlyZXBvX2luaXRfcmV2aXNpb25zKHRoZV9yZXBvc2l0b3J5LCAmcmV2cywgTlVMTCk7CisJcmVwb19pbml0X3JldmlzaW9ucyhyZXBvLCAmcmV2cywgTlVMTCk7CiAJcmV2X29wdHMuc3VibW9kdWxlID0gcGF0aDsKIAkvKiBGSVhNRTogY2FuJ3QgaGFuZGxlIGxpbmtlZCB3b3JrdHJlZXMgaW4gc3VibW9kdWxlcyB5ZXQgKi8KIAlyZXZzLnNpbmdsZV93b3JrdHJlZSA9IHBhdGggIT0gTlVMTDsKQEAgLTExODUsNyArMTE1OSwxMiBAQAogCXN0cmJ1Zl9yZWxlYXNlKCZzYik7CiB9CiAKLXN0YXRpYyBpbnQgbWVyZ2Vfc3VibW9kdWxlKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLAorc3RhdGljIGludCBpc192YWxpZChjb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqZGZzKQoreworCXJldHVybiBkZnMtPm1vZGUgIT0gMCAmJiAhaXNfbnVsbF9vaWQoJmRmcy0+b2lkKTsKK30KKworc3RhdGljIGludCBtZXJnZV9zdWJtb2R1bGUoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKIAkJCSAgIHN0cnVjdCBvYmplY3RfaWQgKnJlc3VsdCwgY29uc3QgY2hhciAqcGF0aCwKIAkJCSAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmJhc2UsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmEsCiAJCQkgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpiKQpAQCAtMTE5NSw3ICsxMTc0LDcgQEAKIAlzdHJ1Y3Qgb2JqZWN0X2FycmF5IG1lcmdlczsKIAogCWludCBpOwotCWludCBzZWFyY2ggPSAhby0+Y2FsbF9kZXB0aDsKKwlpbnQgc2VhcmNoID0gIW9wdC0+cHJpdi0+Y2FsbF9kZXB0aDsKIAogCS8qIHN0b3JlIGEgaW4gcmVzdWx0IGluIGNhc2Ugd2UgZmFpbCAqLwogCW9pZGNweShyZXN1bHQsIGEpOwpAQCAtMTIwOSwzMiArMTE4OCwzMiBAQAogCQlyZXR1cm4gMDsKIAogCWlmIChhZGRfc3VibW9kdWxlX29kYihwYXRoKSkgewotCQlvdXRwdXQobywgMSwgXygiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobm90IGNoZWNrZWQgb3V0KSIpLCBwYXRoKTsKKwkJb3V0cHV0KG9wdCwgMSwgXygiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobm90IGNoZWNrZWQgb3V0KSIpLCBwYXRoKTsKIAkJcmV0dXJuIDA7CiAJfQogCi0JaWYgKCEoY29tbWl0X2Jhc2UgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZSh0aGVfcmVwb3NpdG9yeSwgYmFzZSkpIHx8Ci0JICAgICEoY29tbWl0X2EgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZSh0aGVfcmVwb3NpdG9yeSwgYSkpIHx8Ci0JICAgICEoY29tbWl0X2IgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZSh0aGVfcmVwb3NpdG9yeSwgYikpKSB7Ci0JCW91dHB1dChvLCAxLCBfKCJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChjb21taXRzIG5vdCBwcmVzZW50KSIpLCBwYXRoKTsKKwlpZiAoIShjb21taXRfYmFzZSA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKG9wdC0+cmVwbywgYmFzZSkpIHx8CisJICAgICEoY29tbWl0X2EgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZShvcHQtPnJlcG8sIGEpKSB8fAorCSAgICAhKGNvbW1pdF9iID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2Uob3B0LT5yZXBvLCBiKSkpIHsKKwkJb3V0cHV0KG9wdCwgMSwgXygiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAoY29tbWl0cyBub3QgcHJlc2VudCkiKSwgcGF0aCk7CiAJCXJldHVybiAwOwogCX0KIAogCS8qIGNoZWNrIHdoZXRoZXIgYm90aCBjaGFuZ2VzIGFyZSBmb3J3YXJkICovCiAJaWYgKCFpbl9tZXJnZV9iYXNlcyhjb21taXRfYmFzZSwgY29tbWl0X2EpIHx8CiAJICAgICFpbl9tZXJnZV9iYXNlcyhjb21taXRfYmFzZSwgY29tbWl0X2IpKSB7Ci0JCW91dHB1dChvLCAxLCBfKCJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChjb21taXRzIGRvbid0IGZvbGxvdyBtZXJnZS1iYXNlKSIpLCBwYXRoKTsKKwkJb3V0cHV0KG9wdCwgMSwgXygiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAoY29tbWl0cyBkb24ndCBmb2xsb3cgbWVyZ2UtYmFzZSkiKSwgcGF0aCk7CiAJCXJldHVybiAwOwogCX0KIAogCS8qIENhc2UgIzE6IGEgaXMgY29udGFpbmVkIGluIGIgb3IgdmljZSB2ZXJzYSAqLwogCWlmIChpbl9tZXJnZV9iYXNlcyhjb21taXRfYSwgY29tbWl0X2IpKSB7CiAJCW9pZGNweShyZXN1bHQsIGIpOwotCQlpZiAoc2hvdyhvLCAzKSkgewotCQkJb3V0cHV0KG8sIDMsIF8oIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMgdG8gdGhlIGZvbGxvd2luZyBjb21taXQ6IiksIHBhdGgpOwotCQkJb3V0cHV0X2NvbW1pdF90aXRsZShvLCBjb21taXRfYik7Ci0JCX0gZWxzZSBpZiAoc2hvdyhvLCAyKSkKLQkJCW91dHB1dChvLCAyLCBfKCJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIiksIHBhdGgpOworCQlpZiAoc2hvdyhvcHQsIDMpKSB7CisJCQlvdXRwdXQob3B0LCAzLCBfKCJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIHRvIHRoZSBmb2xsb3dpbmcgY29tbWl0OiIpLCBwYXRoKTsKKwkJCW91dHB1dF9jb21taXRfdGl0bGUob3B0LCBjb21taXRfYik7CisJCX0gZWxzZSBpZiAoc2hvdyhvcHQsIDIpKQorCQkJb3V0cHV0KG9wdCwgMiwgXygiRmFzdC1mb3J3YXJkaW5nIHN1Ym1vZHVsZSAlcyIpLCBwYXRoKTsKIAkJZWxzZQogCQkJOyAvKiBubyBvdXRwdXQgKi8KIApAQCAtMTI0MiwxMSArMTIyMSwxMSBAQAogCX0KIAlpZiAoaW5fbWVyZ2VfYmFzZXMoY29tbWl0X2IsIGNvbW1pdF9hKSkgewogCQlvaWRjcHkocmVzdWx0LCBhKTsKLQkJaWYgKHNob3cobywgMykpIHsKLQkJCW91dHB1dChvLCAzLCBfKCJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIHRvIHRoZSBmb2xsb3dpbmcgY29tbWl0OiIpLCBwYXRoKTsKLQkJCW91dHB1dF9jb21taXRfdGl0bGUobywgY29tbWl0X2EpOwotCQl9IGVsc2UgaWYgKHNob3cobywgMikpCi0JCQlvdXRwdXQobywgMiwgXygiRmFzdC1mb3J3YXJkaW5nIHN1Ym1vZHVsZSAlcyIpLCBwYXRoKTsKKwkJaWYgKHNob3cob3B0LCAzKSkgeworCQkJb3V0cHV0KG9wdCwgMywgXygiRmFzdC1mb3J3YXJkaW5nIHN1Ym1vZHVsZSAlcyB0byB0aGUgZm9sbG93aW5nIGNvbW1pdDoiKSwgcGF0aCk7CisJCQlvdXRwdXRfY29tbWl0X3RpdGxlKG9wdCwgY29tbWl0X2EpOworCQl9IGVsc2UgaWYgKHNob3cob3B0LCAyKSkKKwkJCW91dHB1dChvcHQsIDIsIF8oIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMiKSwgcGF0aCk7CiAJCWVsc2UKIAkJCTsgLyogbm8gb3V0cHV0ICovCiAKQEAgLTEyNjUsMTcgKzEyNDQsMTggQEAKIAkJcmV0dXJuIDA7CiAKIAkvKiBmaW5kIGNvbW1pdCB3aGljaCBtZXJnZXMgdGhlbSAqLwotCXBhcmVudF9jb3VudCA9IGZpbmRfZmlyc3RfbWVyZ2VzKCZtZXJnZXMsIHBhdGgsIGNvbW1pdF9hLCBjb21taXRfYik7CisJcGFyZW50X2NvdW50ID0gZmluZF9maXJzdF9tZXJnZXMob3B0LT5yZXBvLCAmbWVyZ2VzLCBwYXRoLAorCQkJCQkgY29tbWl0X2EsIGNvbW1pdF9iKTsKIAlzd2l0Y2ggKHBhcmVudF9jb3VudCkgewogCWNhc2UgMDoKLQkJb3V0cHV0KG8sIDEsIF8oIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG1lcmdlIGZvbGxvd2luZyBjb21taXRzIG5vdCBmb3VuZCkiKSwgcGF0aCk7CisJCW91dHB1dChvcHQsIDEsIF8oIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG1lcmdlIGZvbGxvd2luZyBjb21taXRzIG5vdCBmb3VuZCkiKSwgcGF0aCk7CiAJCWJyZWFrOwogCiAJY2FzZSAxOgotCQlvdXRwdXQobywgMSwgXygiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobm90IGZhc3QtZm9yd2FyZCkiKSwgcGF0aCk7Ci0JCW91dHB1dChvLCAyLCBfKCJGb3VuZCBhIHBvc3NpYmxlIG1lcmdlIHJlc29sdXRpb24gZm9yIHRoZSBzdWJtb2R1bGU6XG4iKSk7CisJCW91dHB1dChvcHQsIDEsIF8oIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG5vdCBmYXN0LWZvcndhcmQpIiksIHBhdGgpOworCQlvdXRwdXQob3B0LCAyLCBfKCJGb3VuZCBhIHBvc3NpYmxlIG1lcmdlIHJlc29sdXRpb24gZm9yIHRoZSBzdWJtb2R1bGU6XG4iKSk7CiAJCXByaW50X2NvbW1pdCgoc3RydWN0IGNvbW1pdCAqKSBtZXJnZXMub2JqZWN0c1swXS5pdGVtKTsKLQkJb3V0cHV0KG8sIDIsIF8oCisJCW91dHB1dChvcHQsIDIsIF8oCiAJCSAgICAgICAiSWYgdGhpcyBpcyBjb3JyZWN0IHNpbXBseSBhZGQgaXQgdG8gdGhlIGluZGV4ICIKIAkJICAgICAgICJmb3IgZXhhbXBsZVxuIgogCQkgICAgICAgImJ5IHVzaW5nOlxuXG4iCkBAIC0xMjg1LDcgKzEyNjUsNyBAQAogCQlicmVhazsKIAogCWRlZmF1bHQ6Ci0JCW91dHB1dChvLCAxLCBfKCJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChtdWx0aXBsZSBtZXJnZXMgZm91bmQpIiksIHBhdGgpOworCQlvdXRwdXQob3B0LCAxLCBfKCJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChtdWx0aXBsZSBtZXJnZXMgZm91bmQpIiksIHBhdGgpOwogCQlmb3IgKGkgPSAwOyBpIDwgbWVyZ2VzLm5yOyBpKyspCiAJCQlwcmludF9jb21taXQoKHN0cnVjdCBjb21taXQgKikgbWVyZ2VzLm9iamVjdHNbaV0uaXRlbSk7CiAJfQpAQCAtMTI5NCwyNCArMTI3NCwyNiBAQAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IG1lcmdlX21vZGVfYW5kX2NvbnRlbnRzKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLAotCQkJCSAgIGNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpvbmUsCitzdGF0aWMgaW50IG1lcmdlX21vZGVfYW5kX2NvbnRlbnRzKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCisJCQkJICAgY29uc3Qgc3RydWN0IGRpZmZfZmlsZXNwZWMgKm8sCiAJCQkJICAgY29uc3Qgc3RydWN0IGRpZmZfZmlsZXNwZWMgKmEsCiAJCQkJICAgY29uc3Qgc3RydWN0IGRpZmZfZmlsZXNwZWMgKmIsCiAJCQkJICAgY29uc3QgY2hhciAqZmlsZW5hbWUsCiAJCQkJICAgY29uc3QgY2hhciAqYnJhbmNoMSwKIAkJCQkgICBjb25zdCBjaGFyICpicmFuY2gyLAorCQkJCSAgIGNvbnN0IGludCBleHRyYV9tYXJrZXJfc2l6ZSwKIAkJCQkgICBzdHJ1Y3QgbWVyZ2VfZmlsZV9pbmZvICpyZXN1bHQpCiB7Ci0JaWYgKG8tPmJyYW5jaDEgIT0gYnJhbmNoMSkgeworCWlmIChvcHQtPmJyYW5jaDEgIT0gYnJhbmNoMSkgewogCQkvKgogCQkgKiBJdCdzIHdlaXJkIGdldHRpbmcgYSByZXZlcnNlIG1lcmdlIHdpdGggSEVBRCBvbiB0aGUgYm90dG9tCiAJCSAqIHNpZGUgb2YgdGhlIGNvbmZsaWN0IG1hcmtlcnMgYW5kIHRoZSBvdGhlciBicmFuY2ggb24gdGhlCiAJCSAqIHRvcC4gIEZpeCB0aGF0LgogCQkgKi8KLQkJcmV0dXJuIG1lcmdlX21vZGVfYW5kX2NvbnRlbnRzKG8sIG9uZSwgYiwgYSwKKwkJcmV0dXJuIG1lcmdlX21vZGVfYW5kX2NvbnRlbnRzKG9wdCwgbywgYiwgYSwKIAkJCQkJICAgICAgIGZpbGVuYW1lLAotCQkJCQkgICAgICAgYnJhbmNoMiwgYnJhbmNoMSwgcmVzdWx0KTsKKwkJCQkJICAgICAgIGJyYW5jaDIsIGJyYW5jaDEsCisJCQkJCSAgICAgICBleHRyYV9tYXJrZXJfc2l6ZSwgcmVzdWx0KTsKIAl9CiAKIAlyZXN1bHQtPm1lcmdlID0gMDsKQEAgLTEzMjAsNDcgKzEzMDIsNDggQEAKIAlpZiAoKFNfSUZNVCAmIGEtPm1vZGUpICE9IChTX0lGTVQgJiBiLT5tb2RlKSkgewogCQlyZXN1bHQtPmNsZWFuID0gMDsKIAkJaWYgKFNfSVNSRUcoYS0+bW9kZSkpIHsKLQkJCXJlc3VsdC0+bW9kZSA9IGEtPm1vZGU7Ci0JCQlvaWRjcHkoJnJlc3VsdC0+b2lkLCAmYS0+b2lkKTsKKwkJCXJlc3VsdC0+YmxvYi5tb2RlID0gYS0+bW9kZTsKKwkJCW9pZGNweSgmcmVzdWx0LT5ibG9iLm9pZCwgJmEtPm9pZCk7CiAJCX0gZWxzZSB7Ci0JCQlyZXN1bHQtPm1vZGUgPSBiLT5tb2RlOwotCQkJb2lkY3B5KCZyZXN1bHQtPm9pZCwgJmItPm9pZCk7CisJCQlyZXN1bHQtPmJsb2IubW9kZSA9IGItPm1vZGU7CisJCQlvaWRjcHkoJnJlc3VsdC0+YmxvYi5vaWQsICZiLT5vaWQpOwogCQl9CiAJfSBlbHNlIHsKLQkJaWYgKCFvaWRfZXEoJmEtPm9pZCwgJm9uZS0+b2lkKSAmJiAhb2lkX2VxKCZiLT5vaWQsICZvbmUtPm9pZCkpCisJCWlmICghb2lkZXEoJmEtPm9pZCwgJm8tPm9pZCkgJiYgIW9pZGVxKCZiLT5vaWQsICZvLT5vaWQpKQogCQkJcmVzdWx0LT5tZXJnZSA9IDE7CiAKIAkJLyoKIAkJICogTWVyZ2UgbW9kZXMKIAkJICovCi0JCWlmIChhLT5tb2RlID09IGItPm1vZGUgfHwgYS0+bW9kZSA9PSBvbmUtPm1vZGUpCi0JCQlyZXN1bHQtPm1vZGUgPSBiLT5tb2RlOworCQlpZiAoYS0+bW9kZSA9PSBiLT5tb2RlIHx8IGEtPm1vZGUgPT0gby0+bW9kZSkKKwkJCXJlc3VsdC0+YmxvYi5tb2RlID0gYi0+bW9kZTsKIAkJZWxzZSB7Ci0JCQlyZXN1bHQtPm1vZGUgPSBhLT5tb2RlOwotCQkJaWYgKGItPm1vZGUgIT0gb25lLT5tb2RlKSB7CisJCQlyZXN1bHQtPmJsb2IubW9kZSA9IGEtPm1vZGU7CisJCQlpZiAoYi0+bW9kZSAhPSBvLT5tb2RlKSB7CiAJCQkJcmVzdWx0LT5jbGVhbiA9IDA7CiAJCQkJcmVzdWx0LT5tZXJnZSA9IDE7CiAJCQl9CiAJCX0KIAotCQlpZiAob2lkX2VxKCZhLT5vaWQsICZiLT5vaWQpIHx8IG9pZF9lcSgmYS0+b2lkLCAmb25lLT5vaWQpKQotCQkJb2lkY3B5KCZyZXN1bHQtPm9pZCwgJmItPm9pZCk7Ci0JCWVsc2UgaWYgKG9pZF9lcSgmYi0+b2lkLCAmb25lLT5vaWQpKQotCQkJb2lkY3B5KCZyZXN1bHQtPm9pZCwgJmEtPm9pZCk7CisJCWlmIChvaWRlcSgmYS0+b2lkLCAmYi0+b2lkKSB8fCBvaWRlcSgmYS0+b2lkLCAmby0+b2lkKSkKKwkJCW9pZGNweSgmcmVzdWx0LT5ibG9iLm9pZCwgJmItPm9pZCk7CisJCWVsc2UgaWYgKG9pZGVxKCZiLT5vaWQsICZvLT5vaWQpKQorCQkJb2lkY3B5KCZyZXN1bHQtPmJsb2Iub2lkLCAmYS0+b2lkKTsKIAkJZWxzZSBpZiAoU19JU1JFRyhhLT5tb2RlKSkgewogCQkJbW1idWZmZXJfdCByZXN1bHRfYnVmOwogCQkJaW50IHJldCA9IDAsIG1lcmdlX3N0YXR1czsKIAotCQkJbWVyZ2Vfc3RhdHVzID0gbWVyZ2VfM3dheShvLCAmcmVzdWx0X2J1Ziwgb25lLCBhLCBiLAotCQkJCQkJICBicmFuY2gxLCBicmFuY2gyKTsKKwkJCW1lcmdlX3N0YXR1cyA9IG1lcmdlXzN3YXkob3B0LCAmcmVzdWx0X2J1ZiwgbywgYSwgYiwKKwkJCQkJCSAgYnJhbmNoMSwgYnJhbmNoMiwKKwkJCQkJCSAgZXh0cmFfbWFya2VyX3NpemUpOwogCiAJCQlpZiAoKG1lcmdlX3N0YXR1cyA8IDApIHx8ICFyZXN1bHRfYnVmLnB0cikKLQkJCQlyZXQgPSBlcnIobywgXygiRmFpbGVkIHRvIGV4ZWN1dGUgaW50ZXJuYWwgbWVyZ2UiKSk7CisJCQkJcmV0ID0gZXJyKG9wdCwgXygiRmFpbGVkIHRvIGV4ZWN1dGUgaW50ZXJuYWwgbWVyZ2UiKSk7CiAKIAkJCWlmICghcmV0ICYmCiAJCQkgICAgd3JpdGVfb2JqZWN0X2ZpbGUocmVzdWx0X2J1Zi5wdHIsIHJlc3VsdF9idWYuc2l6ZSwKLQkJCQkJICAgICAgYmxvYl90eXBlLCAmcmVzdWx0LT5vaWQpKQotCQkJCXJldCA9IGVycihvLCBfKCJVbmFibGUgdG8gYWRkICVzIHRvIGRhdGFiYXNlIiksCisJCQkJCSAgICAgIGJsb2JfdHlwZSwgJnJlc3VsdC0+YmxvYi5vaWQpKQorCQkJCXJldCA9IGVycihvcHQsIF8oIlVuYWJsZSB0byBhZGQgJXMgdG8gZGF0YWJhc2UiKSwKIAkJCQkJICBhLT5wYXRoKTsKIAogCQkJZnJlZShyZXN1bHRfYnVmLnB0cik7CkBAIC0xMzY4LDIzICsxMzUxLDIzIEBACiAJCQkJcmV0dXJuIHJldDsKIAkJCXJlc3VsdC0+Y2xlYW4gPSAobWVyZ2Vfc3RhdHVzID09IDApOwogCQl9IGVsc2UgaWYgKFNfSVNHSVRMSU5LKGEtPm1vZGUpKSB7Ci0JCQlyZXN1bHQtPmNsZWFuID0gbWVyZ2Vfc3VibW9kdWxlKG8sICZyZXN1bHQtPm9pZCwKLQkJCQkJCQlvbmUtPnBhdGgsCi0JCQkJCQkJJm9uZS0+b2lkLAorCQkJcmVzdWx0LT5jbGVhbiA9IG1lcmdlX3N1Ym1vZHVsZShvcHQsICZyZXN1bHQtPmJsb2Iub2lkLAorCQkJCQkJCW8tPnBhdGgsCisJCQkJCQkJJm8tPm9pZCwKIAkJCQkJCQkmYS0+b2lkLAogCQkJCQkJCSZiLT5vaWQpOwogCQl9IGVsc2UgaWYgKFNfSVNMTksoYS0+bW9kZSkpIHsKLQkJCXN3aXRjaCAoby0+cmVjdXJzaXZlX3ZhcmlhbnQpIHsKLQkJCWNhc2UgTUVSR0VfUkVDVVJTSVZFX05PUk1BTDoKLQkJCQlvaWRjcHkoJnJlc3VsdC0+b2lkLCAmYS0+b2lkKTsKLQkJCQlpZiAoIW9pZF9lcSgmYS0+b2lkLCAmYi0+b2lkKSkKKwkJCXN3aXRjaCAob3B0LT5yZWN1cnNpdmVfdmFyaWFudCkgeworCQkJY2FzZSBNRVJHRV9WQVJJQU5UX05PUk1BTDoKKwkJCQlvaWRjcHkoJnJlc3VsdC0+YmxvYi5vaWQsICZhLT5vaWQpOworCQkJCWlmICghb2lkZXEoJmEtPm9pZCwgJmItPm9pZCkpCiAJCQkJCXJlc3VsdC0+Y2xlYW4gPSAwOwogCQkJCWJyZWFrOwotCQkJY2FzZSBNRVJHRV9SRUNVUlNJVkVfT1VSUzoKLQkJCQlvaWRjcHkoJnJlc3VsdC0+b2lkLCAmYS0+b2lkKTsKKwkJCWNhc2UgTUVSR0VfVkFSSUFOVF9PVVJTOgorCQkJCW9pZGNweSgmcmVzdWx0LT5ibG9iLm9pZCwgJmEtPm9pZCk7CiAJCQkJYnJlYWs7Ci0JCQljYXNlIE1FUkdFX1JFQ1VSU0lWRV9USEVJUlM6Ci0JCQkJb2lkY3B5KCZyZXN1bHQtPm9pZCwgJmItPm9pZCk7CisJCQljYXNlIE1FUkdFX1ZBUklBTlRfVEhFSVJTOgorCQkJCW9pZGNweSgmcmVzdWx0LT5ibG9iLm9pZCwgJmItPm9pZCk7CiAJCQkJYnJlYWs7CiAJCQl9CiAJCX0gZWxzZQpAQCAtMTM5MiwxNSArMTM3NSwxMyBAQAogCX0KIAogCWlmIChyZXN1bHQtPm1lcmdlKQotCQlvdXRwdXQobywgMiwgXygiQXV0by1tZXJnaW5nICVzIiksIGZpbGVuYW1lKTsKKwkJb3V0cHV0KG9wdCwgMiwgXygiQXV0by1tZXJnaW5nICVzIiksIGZpbGVuYW1lKTsKIAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGhhbmRsZV9yZW5hbWVfdmlhX2RpcihzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywKLQkJCQkgc3RydWN0IGRpZmZfZmlsZXBhaXIgKnBhaXIsCi0JCQkJIGNvbnN0IGNoYXIgKnJlbmFtZV9icmFuY2gsCi0JCQkJIGNvbnN0IGNoYXIgKm90aGVyX2JyYW5jaCkKK3N0YXRpYyBpbnQgaGFuZGxlX3JlbmFtZV92aWFfZGlyKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCisJCQkJIHN0cnVjdCByZW5hbWVfY29uZmxpY3RfaW5mbyAqY2kpCiB7CiAJLyoKIAkgKiBIYW5kbGUgZmlsZSBhZGRzIHRoYXQgbmVlZCB0byBiZSByZW5hbWVkIGR1ZSB0byBkaXJlY3RvcnkgcmVuYW1lCkBAIC0xNDA4LDM4ICsxMzg5LDQ4IEBACiAJICogdGhlcmUgaXMgbm8gY29udGVudCBtZXJnZSB0byBkbzsganVzdCBtb3ZlIHRoZSBmaWxlIGludG8gdGhlCiAJICogZGVzaXJlZCBmaW5hbCBsb2NhdGlvbi4KIAkgKi8KLQljb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqZGVzdCA9IHBhaXItPnR3bzsKKwljb25zdCBzdHJ1Y3QgcmVuYW1lICpyZW4gPSBjaS0+cmVuMTsKKwljb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqZGVzdCA9IHJlbi0+cGFpci0+dHdvOworCWNoYXIgKmZpbGVfcGF0aCA9IGRlc3QtPnBhdGg7CisJaW50IG1hcmtfY29uZmxpY3RlZCA9IChvcHQtPmRldGVjdF9kaXJlY3RvcnlfcmVuYW1lcyA9PQorCQkJICAgICAgIE1FUkdFX0RJUkVDVE9SWV9SRU5BTUVTX0NPTkZMSUNUKTsKKwlhc3NlcnQocmVuLT5kaXJfcmVuYW1lX29yaWdpbmFsX2Rlc3QpOwogCi0JaWYgKCFvLT5jYWxsX2RlcHRoICYmIHdvdWxkX2xvc2VfdW50cmFja2VkKGRlc3QtPnBhdGgpKSB7Ci0JCWNoYXIgKmFsdF9wYXRoID0gdW5pcXVlX3BhdGgobywgZGVzdC0+cGF0aCwgcmVuYW1lX2JyYW5jaCk7Ci0KLQkJb3V0cHV0KG8sIDEsIF8oIkVycm9yOiBSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzOyAiCi0JCQkgICAgICAgIndyaXRpbmcgdG8gJXMgaW5zdGVhZC4iKSwKLQkJICAgICAgIGRlc3QtPnBhdGgsIGFsdF9wYXRoKTsKLQkJLyoKLQkJICogV3JpdGUgdGhlIGZpbGUgaW4gd29ya3RyZWUgYXQgYWx0X3BhdGgsIGJ1dCBub3QgaW4gdGhlCi0JCSAqIGluZGV4LiAgSW5zdGVhZCwgd3JpdGUgdG8gZGVzdC0+cGF0aCBmb3IgdGhlIGluZGV4IGJ1dAotCQkgKiBvbmx5IGF0IHRoZSBoaWdoZXIgYXBwcm9wcmlhdGUgc3RhZ2UuCi0JCSAqLwotCQlpZiAodXBkYXRlX2ZpbGUobywgMCwgJmRlc3QtPm9pZCwgZGVzdC0+bW9kZSwgYWx0X3BhdGgpKQotCQkJcmV0dXJuIC0xOwotCQlmcmVlKGFsdF9wYXRoKTsKLQkJcmV0dXJuIHVwZGF0ZV9zdGFnZXMobywgZGVzdC0+cGF0aCwgTlVMTCwKLQkJCQkgICAgIHJlbmFtZV9icmFuY2ggPT0gby0+YnJhbmNoMSA/IGRlc3QgOiBOVUxMLAotCQkJCSAgICAgcmVuYW1lX2JyYW5jaCA9PSBvLT5icmFuY2gxID8gTlVMTCA6IGRlc3QpOworCWlmICghb3B0LT5wcml2LT5jYWxsX2RlcHRoICYmIHdvdWxkX2xvc2VfdW50cmFja2VkKG9wdCwgZGVzdC0+cGF0aCkpIHsKKwkJbWFya19jb25mbGljdGVkID0gMTsKKwkJZmlsZV9wYXRoID0gdW5pcXVlX3BhdGgob3B0LCBkZXN0LT5wYXRoLCByZW4tPmJyYW5jaCk7CisJCW91dHB1dChvcHQsIDEsIF8oIkVycm9yOiBSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzOyAiCisJCQkJICJ3cml0aW5nIHRvICVzIGluc3RlYWQuIiksCisJCSAgICAgICBkZXN0LT5wYXRoLCBmaWxlX3BhdGgpOwogCX0KIAotCS8qIFVwZGF0ZSBkZXN0LT5wYXRoIGJvdGggaW4gaW5kZXggYW5kIGluIHdvcmt0cmVlICovCi0JaWYgKHVwZGF0ZV9maWxlKG8sIDEsICZkZXN0LT5vaWQsIGRlc3QtPm1vZGUsIGRlc3QtPnBhdGgpKQotCQlyZXR1cm4gLTE7Ci0JcmV0dXJuIDA7CisJaWYgKG1hcmtfY29uZmxpY3RlZCkgeworCQkvKgorCQkgKiBXcml0ZSB0aGUgZmlsZSBpbiB3b3JrdHJlZSBhdCBmaWxlX3BhdGguICBJbiB0aGUgaW5kZXgsCisJCSAqIG9ubHkgcmVjb3JkIHRoZSBmaWxlIGF0IGRlc3QtPnBhdGggaW4gdGhlIGFwcHJvcHJpYXRlCisJCSAqIGhpZ2hlciBzdGFnZS4KKwkJICovCisJCWlmICh1cGRhdGVfZmlsZShvcHQsIDAsIGRlc3QsIGZpbGVfcGF0aCkpCisJCQlyZXR1cm4gLTE7CisJCWlmIChmaWxlX3BhdGggIT0gZGVzdC0+cGF0aCkKKwkJCWZyZWUoZmlsZV9wYXRoKTsKKwkJaWYgKHVwZGF0ZV9zdGFnZXMob3B0LCBkZXN0LT5wYXRoLCBOVUxMLAorCQkJCSAgcmVuLT5icmFuY2ggPT0gb3B0LT5icmFuY2gxID8gZGVzdCA6IE5VTEwsCisJCQkJICByZW4tPmJyYW5jaCA9PSBvcHQtPmJyYW5jaDEgPyBOVUxMIDogZGVzdCkpCisJCQlyZXR1cm4gLTE7CisJCXJldHVybiAwOyAvKiBub3QgY2xlYW4sIGJ1dCBjb25mbGljdGVkICovCisJfSBlbHNlIHsKKwkJLyogVXBkYXRlIGRlc3QtPnBhdGggYm90aCBpbiBpbmRleCBhbmQgaW4gd29ya3RyZWUgKi8KKwkJaWYgKHVwZGF0ZV9maWxlKG9wdCwgMSwgZGVzdCwgZGVzdC0+cGF0aCkpCisJCQlyZXR1cm4gLTE7CisJCXJldHVybiAxOyAvKiBjbGVhbiAqLworCX0KIH0KIAotc3RhdGljIGludCBoYW5kbGVfY2hhbmdlX2RlbGV0ZShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywKK3N0YXRpYyBpbnQgaGFuZGxlX2NoYW5nZV9kZWxldGUoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKIAkJCQljb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICpvbGRfcGF0aCwKLQkJCQljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvX29pZCwgaW50IG9fbW9kZSwKLQkJCQljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpjaGFuZ2VkX29pZCwKLQkJCQlpbnQgY2hhbmdlZF9tb2RlLAorCQkJCWNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpvLAorCQkJCWNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpjaGFuZ2VkLAogCQkJCWNvbnN0IGNoYXIgKmNoYW5nZV9icmFuY2gsCiAJCQkJY29uc3QgY2hhciAqZGVsZXRlX2JyYW5jaCwKIAkJCQljb25zdCBjaGFyICpjaGFuZ2UsIGNvbnN0IGNoYXIgKmNoYW5nZV9wYXN0KQpAQCAtMTQ0OCwyMCArMTQzOSwyMCBAQAogCWNvbnN0IGNoYXIgKnVwZGF0ZV9wYXRoID0gcGF0aDsKIAlpbnQgcmV0ID0gMDsKIAotCWlmIChkaXJfaW5fd2F5KHBhdGgsICFvLT5jYWxsX2RlcHRoLCAwKSB8fAotCSAgICAoIW8tPmNhbGxfZGVwdGggJiYgd291bGRfbG9zZV91bnRyYWNrZWQocGF0aCkpKSB7Ci0JCXVwZGF0ZV9wYXRoID0gYWx0X3BhdGggPSB1bmlxdWVfcGF0aChvLCBwYXRoLCBjaGFuZ2VfYnJhbmNoKTsKKwlpZiAoZGlyX2luX3dheShvcHQtPnJlcG8tPmluZGV4LCBwYXRoLCAhb3B0LT5wcml2LT5jYWxsX2RlcHRoLCAwKSB8fAorCSAgICAoIW9wdC0+cHJpdi0+Y2FsbF9kZXB0aCAmJiB3b3VsZF9sb3NlX3VudHJhY2tlZChvcHQsIHBhdGgpKSkgeworCQl1cGRhdGVfcGF0aCA9IGFsdF9wYXRoID0gdW5pcXVlX3BhdGgob3B0LCBwYXRoLCBjaGFuZ2VfYnJhbmNoKTsKIAl9CiAKLQlpZiAoby0+Y2FsbF9kZXB0aCkgeworCWlmIChvcHQtPnByaXYtPmNhbGxfZGVwdGgpIHsKIAkJLyoKIAkJICogV2UgY2Fubm90IGFyYml0cmFyaWx5IGFjY2VwdCBlaXRoZXIgYV9zaGEgb3IgYl9zaGEgYXMKIAkJICogY29ycmVjdDsgc2luY2UgdGhlcmUgaXMgbm8gdHJ1ZSAibWlkZGxlIHBvaW50IiBiZXR3ZWVuCiAJCSAqIHRoZW0sIHNpbXBseSByZXVzZSB0aGUgYmFzZSB2ZXJzaW9uIGZvciB2aXJ0dWFsIG1lcmdlIGJhc2UuCiAJCSAqLwotCQlyZXQgPSByZW1vdmVfZmlsZV9mcm9tX2NhY2hlKHBhdGgpOworCQlyZXQgPSByZW1vdmVfZmlsZV9mcm9tX2luZGV4KG9wdC0+cmVwby0+aW5kZXgsIHBhdGgpOwogCQlpZiAoIXJldCkKLQkJCXJldCA9IHVwZGF0ZV9maWxlKG8sIDAsIG9fb2lkLCBvX21vZGUsIHVwZGF0ZV9wYXRoKTsKKwkJCXJldCA9IHVwZGF0ZV9maWxlKG9wdCwgMCwgbywgdXBkYXRlX3BhdGgpOwogCX0gZWxzZSB7CiAJCS8qCiAJCSAqIERlc3BpdGUgdGhlIGZvdXIgbmVhcmx5IGR1cGxpY2F0ZSBtZXNzYWdlcyBhbmQgYXJndW1lbnQKQEAgLTE0ODAsMjQgKzE0NzEsMjQgQEAKIAkJICovCiAJCWlmICghYWx0X3BhdGgpIHsKIAkJCWlmICghb2xkX3BhdGgpIHsKLQkJCQlvdXRwdXQobywgMSwgXygiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgIgorCQkJCW91dHB1dChvcHQsIDEsIF8oIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzICIKIAkJCQkgICAgICAgImFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0IGluIHRyZWUuIiksCiAJCQkJICAgICAgIGNoYW5nZSwgcGF0aCwgZGVsZXRlX2JyYW5jaCwgY2hhbmdlX3Bhc3QsCiAJCQkJICAgICAgIGNoYW5nZV9icmFuY2gsIGNoYW5nZV9icmFuY2gsIHBhdGgpOwogCQkJfSBlbHNlIHsKLQkJCQlvdXRwdXQobywgMSwgXygiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgIgorCQkJCW91dHB1dChvcHQsIDEsIF8oIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzICIKIAkJCQkgICAgICAgImFuZCAlcyB0byAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0IGluIHRyZWUuIiksCiAJCQkJICAgICAgIGNoYW5nZSwgb2xkX3BhdGgsIGRlbGV0ZV9icmFuY2gsIGNoYW5nZV9wYXN0LCBwYXRoLAogCQkJCSAgICAgICBjaGFuZ2VfYnJhbmNoLCBjaGFuZ2VfYnJhbmNoLCBwYXRoKTsKIAkJCX0KIAkJfSBlbHNlIHsKIAkJCWlmICghb2xkX3BhdGgpIHsKLQkJCQlvdXRwdXQobywgMSwgXygiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgIgorCQkJCW91dHB1dChvcHQsIDEsIF8oIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzICIKIAkJCQkgICAgICAgImFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0IGluIHRyZWUgYXQgJXMuIiksCiAJCQkJICAgICAgIGNoYW5nZSwgcGF0aCwgZGVsZXRlX2JyYW5jaCwgY2hhbmdlX3Bhc3QsCiAJCQkJICAgICAgIGNoYW5nZV9icmFuY2gsIGNoYW5nZV9icmFuY2gsIHBhdGgsIGFsdF9wYXRoKTsKIAkJCX0gZWxzZSB7Ci0JCQkJb3V0cHV0KG8sIDEsIF8oIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzICIKKwkJCQlvdXRwdXQob3B0LCAxLCBfKCJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyAiCiAJCQkJICAgICAgICJhbmQgJXMgdG8gJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgbGVmdCBpbiB0cmVlIGF0ICVzLiIpLAogCQkJCSAgICAgICBjaGFuZ2UsIG9sZF9wYXRoLCBkZWxldGVfYnJhbmNoLCBjaGFuZ2VfcGFzdCwgcGF0aCwKIAkJCQkgICAgICAgY2hhbmdlX2JyYW5jaCwgY2hhbmdlX2JyYW5jaCwgcGF0aCwgYWx0X3BhdGgpOwpAQCAtMTUwNSwyOTIgKzE0OTYsMzQ3IEBACiAJCX0KIAkJLyoKIAkJICogTm8gbmVlZCB0byBjYWxsIHVwZGF0ZV9maWxlKCkgb24gcGF0aCB3aGVuIGNoYW5nZV9icmFuY2ggPT0KLQkJICogby0+YnJhbmNoMSAmJiAhYWx0X3BhdGgsIHNpbmNlIHRoYXQgd291bGQgbmVlZGxlc3NseSB0b3VjaAorCQkgKiBvcHQtPmJyYW5jaDEgJiYgIWFsdF9wYXRoLCBzaW5jZSB0aGF0IHdvdWxkIG5lZWRsZXNzbHkgdG91Y2gKIAkJICogcGF0aC4gIFdlIGNvdWxkIGNhbGwgdXBkYXRlX2ZpbGVfZmxhZ3MoKSB3aXRoIHVwZGF0ZV9jYWNoZT0wCiAJCSAqIGFuZCB1cGRhdGVfd2Q9MCwgYnV0IHRoYXQncyBhIG5vLW9wLgogCQkgKi8KLQkJaWYgKGNoYW5nZV9icmFuY2ggIT0gby0+YnJhbmNoMSB8fCBhbHRfcGF0aCkKLQkJCXJldCA9IHVwZGF0ZV9maWxlKG8sIDAsIGNoYW5nZWRfb2lkLCBjaGFuZ2VkX21vZGUsIHVwZGF0ZV9wYXRoKTsKKwkJaWYgKGNoYW5nZV9icmFuY2ggIT0gb3B0LT5icmFuY2gxIHx8IGFsdF9wYXRoKQorCQkJcmV0ID0gdXBkYXRlX2ZpbGUob3B0LCAwLCBjaGFuZ2VkLCB1cGRhdGVfcGF0aCk7CiAJfQogCWZyZWUoYWx0X3BhdGgpOwogCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBoYW5kbGVfcmVuYW1lX2RlbGV0ZShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywKLQkJCQlzdHJ1Y3QgZGlmZl9maWxlcGFpciAqcGFpciwKLQkJCQljb25zdCBjaGFyICpyZW5hbWVfYnJhbmNoLAotCQkJCWNvbnN0IGNoYXIgKmRlbGV0ZV9icmFuY2gpCitzdGF0aWMgaW50IGhhbmRsZV9yZW5hbWVfZGVsZXRlKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCisJCQkJc3RydWN0IHJlbmFtZV9jb25mbGljdF9pbmZvICpjaSkKIHsKLQljb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqb3JpZyA9IHBhaXItPm9uZTsKLQljb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqZGVzdCA9IHBhaXItPnR3bzsKKwljb25zdCBzdHJ1Y3QgcmVuYW1lICpyZW4gPSBjaS0+cmVuMTsKKwljb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqb3JpZyA9IHJlbi0+cGFpci0+b25lOworCWNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpkZXN0ID0gcmVuLT5wYWlyLT50d287CisJY29uc3QgY2hhciAqcmVuYW1lX2JyYW5jaCA9IHJlbi0+YnJhbmNoOworCWNvbnN0IGNoYXIgKmRlbGV0ZV9icmFuY2ggPSAob3B0LT5icmFuY2gxID09IHJlbi0+YnJhbmNoID8KKwkJCQkgICAgIG9wdC0+YnJhbmNoMiA6IG9wdC0+YnJhbmNoMSk7CiAKLQlpZiAoaGFuZGxlX2NoYW5nZV9kZWxldGUobywKLQkJCQkgby0+Y2FsbF9kZXB0aCA/IG9yaWctPnBhdGggOiBkZXN0LT5wYXRoLAotCQkJCSBvLT5jYWxsX2RlcHRoID8gTlVMTCA6IG9yaWctPnBhdGgsCi0JCQkJICZvcmlnLT5vaWQsIG9yaWctPm1vZGUsCi0JCQkJICZkZXN0LT5vaWQsIGRlc3QtPm1vZGUsCisJaWYgKGhhbmRsZV9jaGFuZ2VfZGVsZXRlKG9wdCwKKwkJCQkgb3B0LT5wcml2LT5jYWxsX2RlcHRoID8gb3JpZy0+cGF0aCA6IGRlc3QtPnBhdGgsCisJCQkJIG9wdC0+cHJpdi0+Y2FsbF9kZXB0aCA/IE5VTEwgOiBvcmlnLT5wYXRoLAorCQkJCSBvcmlnLCBkZXN0LAogCQkJCSByZW5hbWVfYnJhbmNoLCBkZWxldGVfYnJhbmNoLAogCQkJCSBfKCJyZW5hbWUiKSwgXygicmVuYW1lZCIpKSkKIAkJcmV0dXJuIC0xOwogCi0JaWYgKG8tPmNhbGxfZGVwdGgpCi0JCXJldHVybiByZW1vdmVfZmlsZV9mcm9tX2NhY2hlKGRlc3QtPnBhdGgpOworCWlmIChvcHQtPnByaXYtPmNhbGxfZGVwdGgpCisJCXJldHVybiByZW1vdmVfZmlsZV9mcm9tX2luZGV4KG9wdC0+cmVwby0+aW5kZXgsIGRlc3QtPnBhdGgpOwogCWVsc2UKLQkJcmV0dXJuIHVwZGF0ZV9zdGFnZXMobywgZGVzdC0+cGF0aCwgTlVMTCwKLQkJCQkgICAgIHJlbmFtZV9icmFuY2ggPT0gby0+YnJhbmNoMSA/IGRlc3QgOiBOVUxMLAotCQkJCSAgICAgcmVuYW1lX2JyYW5jaCA9PSBvLT5icmFuY2gxID8gTlVMTCA6IGRlc3QpOworCQlyZXR1cm4gdXBkYXRlX3N0YWdlcyhvcHQsIGRlc3QtPnBhdGgsIE5VTEwsCisJCQkJICAgICByZW5hbWVfYnJhbmNoID09IG9wdC0+YnJhbmNoMSA/IGRlc3QgOiBOVUxMLAorCQkJCSAgICAgcmVuYW1lX2JyYW5jaCA9PSBvcHQtPmJyYW5jaDEgPyBOVUxMIDogZGVzdCk7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqZmlsZXNwZWNfZnJvbV9lbnRyeShzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqdGFyZ2V0LAotCQkJCQkJIHN0cnVjdCBzdGFnZV9kYXRhICplbnRyeSwKLQkJCQkJCSBpbnQgc3RhZ2UpCitzdGF0aWMgaW50IGhhbmRsZV9maWxlX2NvbGxpc2lvbihzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAorCQkJCSBjb25zdCBjaGFyICpjb2xsaWRlX3BhdGgsCisJCQkJIGNvbnN0IGNoYXIgKnByZXZfcGF0aDEsCisJCQkJIGNvbnN0IGNoYXIgKnByZXZfcGF0aDIsCisJCQkJIGNvbnN0IGNoYXIgKmJyYW5jaDEsIGNvbnN0IGNoYXIgKmJyYW5jaDIsCisJCQkJIHN0cnVjdCBkaWZmX2ZpbGVzcGVjICphLAorCQkJCSBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqYikKIHsKLQlzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQgPSAmZW50cnktPnN0YWdlc1tzdGFnZV0ub2lkOwotCXVuc2lnbmVkIG1vZGUgPSBlbnRyeS0+c3RhZ2VzW3N0YWdlXS5tb2RlOwotCWlmIChtb2RlID09IDAgfHwgaXNfbnVsbF9vaWQob2lkKSkKLQkJcmV0dXJuIE5VTEw7Ci0Jb2lkY3B5KCZ0YXJnZXQtPm9pZCwgb2lkKTsKLQl0YXJnZXQtPm1vZGUgPSBtb2RlOwotCXJldHVybiB0YXJnZXQ7Ci19CisJc3RydWN0IG1lcmdlX2ZpbGVfaW5mbyBtZmk7CisJc3RydWN0IGRpZmZfZmlsZXNwZWMgbnVsbDsKKwljaGFyICphbHRfcGF0aCA9IE5VTEw7CisJY29uc3QgY2hhciAqdXBkYXRlX3BhdGggPSBjb2xsaWRlX3BhdGg7CiAKLXN0YXRpYyBpbnQgaGFuZGxlX2ZpbGUoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCi0JCQlzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqcmVuYW1lLAotCQkJaW50IHN0YWdlLAotCQkJc3RydWN0IHJlbmFtZV9jb25mbGljdF9pbmZvICpjaSkKLXsKLQljaGFyICpkc3RfbmFtZSA9IHJlbmFtZS0+cGF0aDsKLQlzdHJ1Y3Qgc3RhZ2VfZGF0YSAqZHN0X2VudHJ5OwotCWNvbnN0IGNoYXIgKmN1cl9icmFuY2gsICpvdGhlcl9icmFuY2g7Ci0Jc3RydWN0IGRpZmZfZmlsZXNwZWMgb3RoZXI7Ci0Jc3RydWN0IGRpZmZfZmlsZXNwZWMgKmFkZDsKLQlpbnQgcmV0OwotCi0JaWYgKHN0YWdlID09IDIpIHsKLQkJZHN0X2VudHJ5ID0gY2ktPmRzdF9lbnRyeTE7Ci0JCWN1cl9icmFuY2ggPSBjaS0+YnJhbmNoMTsKLQkJb3RoZXJfYnJhbmNoID0gY2ktPmJyYW5jaDI7Ci0JfSBlbHNlIHsKLQkJZHN0X2VudHJ5ID0gY2ktPmRzdF9lbnRyeTI7Ci0JCWN1cl9icmFuY2ggPSBjaS0+YnJhbmNoMjsKLQkJb3RoZXJfYnJhbmNoID0gY2ktPmJyYW5jaDE7CisJLyoKKwkgKiBJdCdzIGVhc2llc3QgdG8gZ2V0IHRoZSBjb3JyZWN0IHRoaW5ncyBpbnRvIHN0YWdlIDIgYW5kIDMsIGFuZAorCSAqIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBjb250ZW50IG1lcmdlIHB1dHMgSEVBRCBiZWZvcmUgdGhlIG90aGVyCisJICogYnJhbmNoIGlmIHdlIGp1c3QgZW5zdXJlIHRoYXQgYnJhbmNoMSA9PSBvcHQtPmJyYW5jaDEuICBTbywgc2ltcGx5CisJICogZmxpcCBhcmd1bWVudHMgYXJvdW5kIGlmIHdlIGRvbid0IGhhdmUgdGhhdC4KKwkgKi8KKwlpZiAoYnJhbmNoMSAhPSBvcHQtPmJyYW5jaDEpIHsKKwkJcmV0dXJuIGhhbmRsZV9maWxlX2NvbGxpc2lvbihvcHQsIGNvbGxpZGVfcGF0aCwKKwkJCQkJICAgICBwcmV2X3BhdGgyLCBwcmV2X3BhdGgxLAorCQkJCQkgICAgIGJyYW5jaDIsIGJyYW5jaDEsCisJCQkJCSAgICAgYiwgYSk7CiAJfQogCi0JYWRkID0gZmlsZXNwZWNfZnJvbV9lbnRyeSgmb3RoZXIsIGRzdF9lbnRyeSwgc3RhZ2UgXiAxKTsKLQlpZiAoYWRkKSB7Ci0JCWludCByZW5fc3JjX3dhc19kaXJ0eSA9IHdhc19kaXJ0eShvLCByZW5hbWUtPnBhdGgpOwotCQljaGFyICphZGRfbmFtZSA9IHVuaXF1ZV9wYXRoKG8sIHJlbmFtZS0+cGF0aCwgb3RoZXJfYnJhbmNoKTsKLQkJaWYgKHVwZGF0ZV9maWxlKG8sIDAsICZhZGQtPm9pZCwgYWRkLT5tb2RlLCBhZGRfbmFtZSkpCi0JCQlyZXR1cm4gLTE7CisJLyogUmVtb3ZlIHJlbmFtZSBzb3VyY2VzIGlmIHJlbmFtZS9hZGQgb3IgcmVuYW1lL3JlbmFtZSgydG8xKSAqLworCWlmIChwcmV2X3BhdGgxKQorCQlyZW1vdmVfZmlsZShvcHQsIDEsIHByZXZfcGF0aDEsCisJCQkgICAgb3B0LT5wcml2LT5jYWxsX2RlcHRoIHx8IHdvdWxkX2xvc2VfdW50cmFja2VkKG9wdCwgcHJldl9wYXRoMSkpOworCWlmIChwcmV2X3BhdGgyKQorCQlyZW1vdmVfZmlsZShvcHQsIDEsIHByZXZfcGF0aDIsCisJCQkgICAgb3B0LT5wcml2LT5jYWxsX2RlcHRoIHx8IHdvdWxkX2xvc2VfdW50cmFja2VkKG9wdCwgcHJldl9wYXRoMikpOwogCi0JCWlmIChyZW5fc3JjX3dhc19kaXJ0eSkgewotCQkJb3V0cHV0KG8sIDEsIF8oIlJlZnVzaW5nIHRvIGxvc2UgZGlydHkgZmlsZSBhdCAlcyIpLAotCQkJICAgICAgIHJlbmFtZS0+cGF0aCk7Ci0JCX0KKwkvKgorCSAqIFJlbW92ZSB0aGUgY29sbGlzaW9uIHBhdGgsIGlmIGl0IHdvdWxkbid0IGNhdXNlIGRpcnR5IGNvbnRlbnRzCisJICogb3IgYW4gdW50cmFja2VkIGZpbGUgdG8gZ2V0IGxvc3QuICBXZSdsbCBlaXRoZXIgb3ZlcndyaXRlIHdpdGgKKwkgKiBtZXJnZWQgY29udGVudHMsIG9yIGp1c3Qgd3JpdGUgb3V0IHRvIGRpZmZlcmVudGx5IG5hbWVkIGZpbGVzLgorCSAqLworCWlmICh3YXNfZGlydHkob3B0LCBjb2xsaWRlX3BhdGgpKSB7CisJCW91dHB1dChvcHQsIDEsIF8oIlJlZnVzaW5nIHRvIGxvc2UgZGlydHkgZmlsZSBhdCAlcyIpLAorCQkgICAgICAgY29sbGlkZV9wYXRoKTsKKwkJdXBkYXRlX3BhdGggPSBhbHRfcGF0aCA9IHVuaXF1ZV9wYXRoKG9wdCwgY29sbGlkZV9wYXRoLCAibWVyZ2VkIik7CisJfSBlbHNlIGlmICh3b3VsZF9sb3NlX3VudHJhY2tlZChvcHQsIGNvbGxpZGVfcGF0aCkpIHsKIAkJLyoKLQkJICogQmVjYXVzZSB0aGUgZG91YmxlIG5lZ2F0aXZlcyBzb21laG93IGtlZXAgY29uZnVzaW5nIG1lLi4uCi0JCSAqICAgIDEpIHVwZGF0ZV93ZCBpZmYgIXJlbl9zcmNfd2FzX2RpcnR5LgotCQkgKiAgICAyKSBub193ZCBpZmYgIXVwZGF0ZV93ZAotCQkgKiAgICAzKSBzbywgbm9fd2QgPT0gISFyZW5fc3JjX3dhc19kaXJ0eSA9PSByZW5fc3JjX3dhc19kaXJ0eQorCQkgKiBPbmx5IHdheSB3ZSBnZXQgaGVyZSBpcyBpZiBib3RoIHJlbmFtZXMgd2VyZSBmcm9tCisJCSAqIGEgZGlyZWN0b3J5IHJlbmFtZSBBTkQgdXNlciBoYWQgYW4gdW50cmFja2VkIGZpbGUKKwkJICogYXQgdGhlIGxvY2F0aW9uIHdoZXJlIGJvdGggZmlsZXMgZW5kIHVwIGFmdGVyIHRoZQorCQkgKiB0d28gZGlyZWN0b3J5IHJlbmFtZXMuICBTZWUgdGVzdGNhc2UgMTBkIG9mIHQ2MDQzLgogCQkgKi8KLQkJcmVtb3ZlX2ZpbGUobywgMCwgcmVuYW1lLT5wYXRoLCByZW5fc3JjX3dhc19kaXJ0eSk7Ci0JCWRzdF9uYW1lID0gdW5pcXVlX3BhdGgobywgcmVuYW1lLT5wYXRoLCBjdXJfYnJhbmNoKTsKKwkJb3V0cHV0KG9wdCwgMSwgXygiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAiCisJCQkgICAgICAgIiVzLCBldmVuIHRob3VnaCBpdCdzIGluIHRoZSB3YXkuIiksCisJCSAgICAgICBjb2xsaWRlX3BhdGgpOworCQl1cGRhdGVfcGF0aCA9IGFsdF9wYXRoID0gdW5pcXVlX3BhdGgob3B0LCBjb2xsaWRlX3BhdGgsICJtZXJnZWQiKTsKIAl9IGVsc2UgewotCQlpZiAoZGlyX2luX3dheShyZW5hbWUtPnBhdGgsICFvLT5jYWxsX2RlcHRoLCAwKSkgewotCQkJZHN0X25hbWUgPSB1bmlxdWVfcGF0aChvLCByZW5hbWUtPnBhdGgsIGN1cl9icmFuY2gpOwotCQkJb3V0cHV0KG8sIDEsIF8oIiVzIGlzIGEgZGlyZWN0b3J5IGluICVzIGFkZGluZyBhcyAlcyBpbnN0ZWFkIiksCi0JCQkgICAgICAgcmVuYW1lLT5wYXRoLCBvdGhlcl9icmFuY2gsIGRzdF9uYW1lKTsKLQkJfSBlbHNlIGlmICghby0+Y2FsbF9kZXB0aCAmJgotCQkJICAgd291bGRfbG9zZV91bnRyYWNrZWQocmVuYW1lLT5wYXRoKSkgewotCQkJZHN0X25hbWUgPSB1bmlxdWVfcGF0aChvLCByZW5hbWUtPnBhdGgsIGN1cl9icmFuY2gpOwotCQkJb3V0cHV0KG8sIDEsIF8oIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXM7ICIKLQkJCQkgICAgICAgImFkZGluZyBhcyAlcyBpbnN0ZWFkIiksCi0JCQkgICAgICAgcmVuYW1lLT5wYXRoLCBkc3RfbmFtZSk7Ci0JCX0KKwkJLyoKKwkJICogRklYTUU6IEl0J3MgcG9zc2libGUgdGhhdCB0aGUgdHdvIGZpbGVzIGFyZSBpZGVudGljYWwKKwkJICogYW5kIHRoYXQgdGhlIGN1cnJlbnQgd29ya2luZyBjb3B5IGhhcHBlbnMgdG8gbWF0Y2gsIGluCisJCSAqIHdoaWNoIGNhc2Ugd2UgYXJlIHVubmVjZXNzYXJpbHkgdG91Y2hpbmcgdGhlIHdvcmtpbmcKKwkJICogdHJlZSBmaWxlLiAgSXQncyBub3QgYSBsaWtlbHkgZW5vdWdoIHNjZW5hcmlvIHRoYXQgSQorCQkgKiB3YW50IHRvIGNvZGUgdXAgdGhlIGNoZWNrcyBmb3IgaXQgYW5kIGEgYmV0dGVyIGZpeCBpcworCQkgKiBhdmFpbGFibGUgaWYgd2UgcmVzdHJ1Y3R1cmUgaG93IHVucGFja190cmVlcygpIGFuZAorCQkgKiBtZXJnZS1yZWN1cnNpdmUgaW50ZXJvcGVyYXRlIGFueXdheSwgc28gcHVudGluZyBmb3IKKwkJICogbm93Li4uCisJCSAqLworCQlyZW1vdmVfZmlsZShvcHQsIDAsIGNvbGxpZGVfcGF0aCwgMCk7CiAJfQotCWlmICgocmV0ID0gdXBkYXRlX2ZpbGUobywgMCwgJnJlbmFtZS0+b2lkLCByZW5hbWUtPm1vZGUsIGRzdF9uYW1lKSkpCi0JCTsgLyogZmFsbCB0aHJvdWdoLCBkbyBhbGxvdyBkc3RfbmFtZSB0byBiZSByZWxlYXNlZCAqLwotCWVsc2UgaWYgKHN0YWdlID09IDIpCi0JCXJldCA9IHVwZGF0ZV9zdGFnZXMobywgcmVuYW1lLT5wYXRoLCBOVUxMLCByZW5hbWUsIGFkZCk7Ci0JZWxzZQotCQlyZXQgPSB1cGRhdGVfc3RhZ2VzKG8sIHJlbmFtZS0+cGF0aCwgTlVMTCwgYWRkLCByZW5hbWUpOwogCi0JaWYgKGRzdF9uYW1lICE9IHJlbmFtZS0+cGF0aCkKLQkJZnJlZShkc3RfbmFtZSk7CisJLyogU3RvcmUgdGhpbmdzIGluIGRpZmZfZmlsZXNwZWNzIGZvciBmdW5jdGlvbnMgdGhhdCBuZWVkIGl0ICovCisJbnVsbC5wYXRoID0gKGNoYXIgKiljb2xsaWRlX3BhdGg7CisJb2lkY3B5KCZudWxsLm9pZCwgJm51bGxfb2lkKTsKKwludWxsLm1vZGUgPSAwOwogCi0JcmV0dXJuIHJldDsKKwlpZiAobWVyZ2VfbW9kZV9hbmRfY29udGVudHMob3B0LCAmbnVsbCwgYSwgYiwgY29sbGlkZV9wYXRoLAorCQkJCSAgICBicmFuY2gxLCBicmFuY2gyLCBvcHQtPnByaXYtPmNhbGxfZGVwdGggKiAyLCAmbWZpKSkKKwkJcmV0dXJuIC0xOworCW1maS5jbGVhbiAmPSAhYWx0X3BhdGg7CisJaWYgKHVwZGF0ZV9maWxlKG9wdCwgbWZpLmNsZWFuLCAmbWZpLmJsb2IsIHVwZGF0ZV9wYXRoKSkKKwkJcmV0dXJuIC0xOworCWlmICghbWZpLmNsZWFuICYmICFvcHQtPnByaXYtPmNhbGxfZGVwdGggJiYKKwkgICAgdXBkYXRlX3N0YWdlcyhvcHQsIGNvbGxpZGVfcGF0aCwgTlVMTCwgYSwgYikpCisJCXJldHVybiAtMTsKKwlmcmVlKGFsdF9wYXRoKTsKKwkvKgorCSAqIEZJWE1FOiBJZiBib3RoIGEgJiBiIGJvdGggc3RhcnRlZCB3aXRoIGNvbmZsaWN0cyAob25seSBwb3NzaWJsZQorCSAqIGlmIHRoZXkgY2FtZSBmcm9tIGEgcmVuYW1lL3JlbmFtZSgydG8xKSksIGJ1dCBoYWQgSURFTlRJQ0FMCisJICogY29udGVudHMgaW5jbHVkaW5nIHRob3NlIGNvbmZsaWN0cywgdGhlbiBpbiB0aGUgbmV4dCBsaW5lIHdlIGNsYWltCisJICogaXQgd2FzIGNsZWFuLiAgSWYgc29tZW9uZSBjYXJlcyBhYm91dCB0aGlzIGNhc2UsIHdlIHNob3VsZCBoYXZlIHRoZQorCSAqIGNhbGxlciBub3RpZnkgdXMgaWYgd2Ugc3RhcnRlZCB3aXRoIGNvbmZsaWN0cy4KKwkgKi8KKwlyZXR1cm4gbWZpLmNsZWFuOwogfQogCi1zdGF0aWMgaW50IGhhbmRsZV9yZW5hbWVfcmVuYW1lXzF0bzIoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCitzdGF0aWMgaW50IGhhbmRsZV9yZW5hbWVfYWRkKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCisJCQkgICAgIHN0cnVjdCByZW5hbWVfY29uZmxpY3RfaW5mbyAqY2kpCit7CisJLyogYSB3YXMgcmVuYW1lZCB0byBjLCBhbmQgYSBzZXBhcmF0ZSBjIHdhcyBhZGRlZC4gKi8KKwlzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqYSA9IGNpLT5yZW4xLT5wYWlyLT5vbmU7CisJc3RydWN0IGRpZmZfZmlsZXNwZWMgKmMgPSBjaS0+cmVuMS0+cGFpci0+dHdvOworCWNoYXIgKnBhdGggPSBjLT5wYXRoOworCWNoYXIgKnByZXZfcGF0aF9kZXNjOworCXN0cnVjdCBtZXJnZV9maWxlX2luZm8gbWZpOworCisJY29uc3QgY2hhciAqcmVuYW1lX2JyYW5jaCA9IGNpLT5yZW4xLT5icmFuY2g7CisJY29uc3QgY2hhciAqYWRkX2JyYW5jaCA9IChvcHQtPmJyYW5jaDEgPT0gcmVuYW1lX2JyYW5jaCA/CisJCQkJICBvcHQtPmJyYW5jaDIgOiBvcHQtPmJyYW5jaDEpOworCWludCBvdGhlcl9zdGFnZSA9IChjaS0+cmVuMS0+YnJhbmNoID09IG9wdC0+YnJhbmNoMSA/IDMgOiAyKTsKKworCW91dHB1dChvcHQsIDEsIF8oIkNPTkZMSUNUIChyZW5hbWUvYWRkKTogIgorCSAgICAgICAiUmVuYW1lICVzLT4lcyBpbiAlcy4gIEFkZGVkICVzIGluICVzIiksCisJICAgICAgIGEtPnBhdGgsIGMtPnBhdGgsIHJlbmFtZV9icmFuY2gsCisJICAgICAgIGMtPnBhdGgsIGFkZF9icmFuY2gpOworCisJcHJldl9wYXRoX2Rlc2MgPSB4c3RyZm10KCJ2ZXJzaW9uIG9mICVzIGZyb20gJXMiLCBwYXRoLCBhLT5wYXRoKTsKKwljaS0+cmVuMS0+c3JjX2VudHJ5LT5zdGFnZXNbb3RoZXJfc3RhZ2VdLnBhdGggPSBhLT5wYXRoOworCWlmIChtZXJnZV9tb2RlX2FuZF9jb250ZW50cyhvcHQsIGEsIGMsCisJCQkJICAgICZjaS0+cmVuMS0+c3JjX2VudHJ5LT5zdGFnZXNbb3RoZXJfc3RhZ2VdLAorCQkJCSAgICBwcmV2X3BhdGhfZGVzYywKKwkJCQkgICAgb3B0LT5icmFuY2gxLCBvcHQtPmJyYW5jaDIsCisJCQkJICAgIDEgKyBvcHQtPnByaXYtPmNhbGxfZGVwdGggKiAyLCAmbWZpKSkKKwkJcmV0dXJuIC0xOworCWZyZWUocHJldl9wYXRoX2Rlc2MpOworCisJY2ktPnJlbjEtPmRzdF9lbnRyeS0+c3RhZ2VzW290aGVyX3N0YWdlXS5wYXRoID0gbWZpLmJsb2IucGF0aCA9IGMtPnBhdGg7CisJcmV0dXJuIGhhbmRsZV9maWxlX2NvbGxpc2lvbihvcHQsCisJCQkJICAgICBjLT5wYXRoLCBhLT5wYXRoLCBOVUxMLAorCQkJCSAgICAgcmVuYW1lX2JyYW5jaCwgYWRkX2JyYW5jaCwKKwkJCQkgICAgICZtZmkuYmxvYiwKKwkJCQkgICAgICZjaS0+cmVuMS0+ZHN0X2VudHJ5LT5zdGFnZXNbb3RoZXJfc3RhZ2VdKTsKK30KKworc3RhdGljIGNoYXIgKmZpbmRfcGF0aF9mb3JfY29uZmxpY3Qoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKKwkJCQkgICAgY29uc3QgY2hhciAqcGF0aCwKKwkJCQkgICAgY29uc3QgY2hhciAqYnJhbmNoMSwKKwkJCQkgICAgY29uc3QgY2hhciAqYnJhbmNoMikKK3sKKwljaGFyICpuZXdfcGF0aCA9IE5VTEw7CisJaWYgKGRpcl9pbl93YXkob3B0LT5yZXBvLT5pbmRleCwgcGF0aCwgIW9wdC0+cHJpdi0+Y2FsbF9kZXB0aCwgMCkpIHsKKwkJbmV3X3BhdGggPSB1bmlxdWVfcGF0aChvcHQsIHBhdGgsIGJyYW5jaDEpOworCQlvdXRwdXQob3B0LCAxLCBfKCIlcyBpcyBhIGRpcmVjdG9yeSBpbiAlcyBhZGRpbmcgIgorCQkJICAgICAgICJhcyAlcyBpbnN0ZWFkIiksCisJCSAgICAgICBwYXRoLCBicmFuY2gyLCBuZXdfcGF0aCk7CisJfSBlbHNlIGlmICh3b3VsZF9sb3NlX3VudHJhY2tlZChvcHQsIHBhdGgpKSB7CisJCW5ld19wYXRoID0gdW5pcXVlX3BhdGgob3B0LCBwYXRoLCBicmFuY2gxKTsKKwkJb3V0cHV0KG9wdCwgMSwgXygiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSIKKwkJCSAgICAgICAiIGF0ICVzOyBhZGRpbmcgYXMgJXMgaW5zdGVhZCIpLAorCQkgICAgICAgcGF0aCwgbmV3X3BhdGgpOworCX0KKworCXJldHVybiBuZXdfcGF0aDsKK30KKworLyoKKyAqIFRvZ2dsZSB0aGUgc3RhZ2UgbnVtYmVyIGJldHdlZW4gIm91cnMiIGFuZCAidGhlaXJzIiAoMiBhbmQgMykuCisgKi8KK3N0YXRpYyBpbmxpbmUgaW50IGZsaXBfc3RhZ2UoaW50IHN0YWdlKQoreworCXJldHVybiAoMiArIDMpIC0gc3RhZ2U7Cit9CisKK3N0YXRpYyBpbnQgaGFuZGxlX3JlbmFtZV9yZW5hbWVfMXRvMihzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAogCQkJCSAgICAgc3RydWN0IHJlbmFtZV9jb25mbGljdF9pbmZvICpjaSkKIHsKIAkvKiBPbmUgZmlsZSB3YXMgcmVuYW1lZCBpbiBib3RoIGJyYW5jaGVzLCBidXQgdG8gZGlmZmVyZW50IG5hbWVzLiAqLwotCXN0cnVjdCBkaWZmX2ZpbGVzcGVjICpvbmUgPSBjaS0+cGFpcjEtPm9uZTsKLQlzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqYSA9IGNpLT5wYWlyMS0+dHdvOwotCXN0cnVjdCBkaWZmX2ZpbGVzcGVjICpiID0gY2ktPnBhaXIyLT50d287CisJc3RydWN0IG1lcmdlX2ZpbGVfaW5mbyBtZmk7CisJc3RydWN0IGRpZmZfZmlsZXNwZWMgKmFkZDsKKwlzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqbyA9IGNpLT5yZW4xLT5wYWlyLT5vbmU7CisJc3RydWN0IGRpZmZfZmlsZXNwZWMgKmEgPSBjaS0+cmVuMS0+cGFpci0+dHdvOworCXN0cnVjdCBkaWZmX2ZpbGVzcGVjICpiID0gY2ktPnJlbjItPnBhaXItPnR3bzsKKwljaGFyICpwYXRoX2Rlc2M7CiAKLQlvdXRwdXQobywgMSwgXygiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiAiCisJb3V0cHV0KG9wdCwgMSwgXygiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiAiCiAJICAgICAgICJSZW5hbWUgXCIlc1wiLT5cIiVzXCIgaW4gYnJhbmNoIFwiJXNcIiAiCiAJICAgICAgICJyZW5hbWUgXCIlc1wiLT5cIiVzXCIgaW4gXCIlc1wiJXMiKSwKLQkgICAgICAgb25lLT5wYXRoLCBhLT5wYXRoLCBjaS0+YnJhbmNoMSwKLQkgICAgICAgb25lLT5wYXRoLCBiLT5wYXRoLCBjaS0+YnJhbmNoMiwKLQkgICAgICAgby0+Y2FsbF9kZXB0aCA/IF8oIiAobGVmdCB1bnJlc29sdmVkKSIpIDogIiIpOwotCWlmIChvLT5jYWxsX2RlcHRoKSB7Ci0JCXN0cnVjdCBtZXJnZV9maWxlX2luZm8gbWZpOwotCQlzdHJ1Y3QgZGlmZl9maWxlc3BlYyBvdGhlcjsKLQkJc3RydWN0IGRpZmZfZmlsZXNwZWMgKmFkZDsKLQkJaWYgKG1lcmdlX21vZGVfYW5kX2NvbnRlbnRzKG8sIG9uZSwgYSwgYiwgb25lLT5wYXRoLAotCQkJCQkgICAgY2ktPmJyYW5jaDEsIGNpLT5icmFuY2gyLCAmbWZpKSkKLQkJCXJldHVybiAtMTsKKwkgICAgICAgby0+cGF0aCwgYS0+cGF0aCwgY2ktPnJlbjEtPmJyYW5jaCwKKwkgICAgICAgby0+cGF0aCwgYi0+cGF0aCwgY2ktPnJlbjItPmJyYW5jaCwKKwkgICAgICAgb3B0LT5wcml2LT5jYWxsX2RlcHRoID8gXygiIChsZWZ0IHVucmVzb2x2ZWQpIikgOiAiIik7CiAKLQkJLyoKLQkJICogRklYTUU6IEZvciByZW5hbWUvYWRkLXNvdXJjZSBjb25mbGljdHMgKGlmIHdlIGNvdWxkIGRldGVjdAotCQkgKiBzdWNoKSwgdGhpcyBpcyB3cm9uZy4gIFdlIHNob3VsZCBpbnN0ZWFkIGZpbmQgYSB1bmlxdWUKLQkJICogcGF0aG5hbWUgYW5kIHRoZW4gZWl0aGVyIHJlbmFtZSB0aGUgYWRkLXNvdXJjZSBmaWxlIHRvIHRoYXQKLQkJICogdW5pcXVlIHBhdGgsIG9yIHVzZSB0aGF0IHVuaXF1ZSBwYXRoIGluc3RlYWQgb2Ygc3JjIGhlcmUuCi0JCSAqLwotCQlpZiAodXBkYXRlX2ZpbGUobywgMCwgJm1maS5vaWQsIG1maS5tb2RlLCBvbmUtPnBhdGgpKQotCQkJcmV0dXJuIC0xOwotCi0JCS8qCi0JCSAqIEFib3ZlLCB3ZSBwdXQgdGhlIG1lcmdlZCBjb250ZW50IGF0IHRoZSBtZXJnZS1iYXNlJ3MKLQkJICogcGF0aC4gIE5vdyB3ZSB1c3VhbGx5IG5lZWQgdG8gZGVsZXRlIGJvdGggYS0+cGF0aCBhbmQKLQkJICogYi0+cGF0aC4gIEhvd2V2ZXIsIHRoZSByZW5hbWUgb24gZWFjaCBzaWRlIG9mIHRoZSBtZXJnZQotCQkgKiBjb3VsZCBhbHNvIGJlIGludm9sdmVkIGluIGEgcmVuYW1lL2FkZCBjb25mbGljdC4gIEluCi0JCSAqIHN1Y2ggY2FzZXMsIHdlIHNob3VsZCBrZWVwIHRoZSBhZGRlZCBmaWxlIGFyb3VuZCwKLQkJICogcmVzb2x2aW5nIHRoZSBjb25mbGljdCBhdCB0aGF0IHBhdGggaW4gaXRzIGZhdm9yLgotCQkgKi8KLQkJYWRkID0gZmlsZXNwZWNfZnJvbV9lbnRyeSgmb3RoZXIsIGNpLT5kc3RfZW50cnkxLCAyIF4gMSk7Ci0JCWlmIChhZGQpIHsKLQkJCWlmICh1cGRhdGVfZmlsZShvLCAwLCAmYWRkLT5vaWQsIGFkZC0+bW9kZSwgYS0+cGF0aCkpCi0JCQkJcmV0dXJuIC0xOwotCQl9Ci0JCWVsc2UKLQkJCXJlbW92ZV9maWxlX2Zyb21fY2FjaGUoYS0+cGF0aCk7Ci0JCWFkZCA9IGZpbGVzcGVjX2Zyb21fZW50cnkoJm90aGVyLCBjaS0+ZHN0X2VudHJ5MiwgMyBeIDEpOwotCQlpZiAoYWRkKSB7Ci0JCQlpZiAodXBkYXRlX2ZpbGUobywgMCwgJmFkZC0+b2lkLCBhZGQtPm1vZGUsIGItPnBhdGgpKQotCQkJCXJldHVybiAtMTsKLQkJfQotCQllbHNlCi0JCQlyZW1vdmVfZmlsZV9mcm9tX2NhY2hlKGItPnBhdGgpOwotCX0gZWxzZSBpZiAoaGFuZGxlX2ZpbGUobywgYSwgMiwgY2kpIHx8IGhhbmRsZV9maWxlKG8sIGIsIDMsIGNpKSkKKwlwYXRoX2Rlc2MgPSB4c3RyZm10KCIlcyBhbmQgJXMsIGJvdGggcmVuYW1lZCBmcm9tICVzIiwKKwkJCSAgICBhLT5wYXRoLCBiLT5wYXRoLCBvLT5wYXRoKTsKKwlpZiAobWVyZ2VfbW9kZV9hbmRfY29udGVudHMob3B0LCBvLCBhLCBiLCBwYXRoX2Rlc2MsCisJCQkJICAgIGNpLT5yZW4xLT5icmFuY2gsIGNpLT5yZW4yLT5icmFuY2gsCisJCQkJICAgIG9wdC0+cHJpdi0+Y2FsbF9kZXB0aCAqIDIsICZtZmkpKQogCQlyZXR1cm4gLTE7CisJZnJlZShwYXRoX2Rlc2MpOworCisJaWYgKG9wdC0+cHJpdi0+Y2FsbF9kZXB0aCkKKwkJcmVtb3ZlX2ZpbGVfZnJvbV9pbmRleChvcHQtPnJlcG8tPmluZGV4LCBvLT5wYXRoKTsKKworCS8qCisJICogRm9yIGVhY2ggZGVzdGluYXRpb24gcGF0aCwgd2UgbmVlZCB0byBzZWUgaWYgdGhlcmUgaXMgYQorCSAqIHJlbmFtZS9hZGQgY29sbGlzaW9uLiAgSWYgbm90LCB3ZSBjYW4gd3JpdGUgdGhlIGZpbGUgb3V0CisJICogdG8gdGhlIHNwZWNpZmllZCBsb2NhdGlvbi4KKwkgKi8KKwlhZGQgPSAmY2ktPnJlbjEtPmRzdF9lbnRyeS0+c3RhZ2VzW2ZsaXBfc3RhZ2UoMildOworCWlmIChpc192YWxpZChhZGQpKSB7CisJCWFkZC0+cGF0aCA9IG1maS5ibG9iLnBhdGggPSBhLT5wYXRoOworCQlpZiAoaGFuZGxlX2ZpbGVfY29sbGlzaW9uKG9wdCwgYS0+cGF0aCwKKwkJCQkJICBOVUxMLCBOVUxMLAorCQkJCQkgIGNpLT5yZW4xLT5icmFuY2gsCisJCQkJCSAgY2ktPnJlbjItPmJyYW5jaCwKKwkJCQkJICAmbWZpLmJsb2IsIGFkZCkgPCAwKQorCQkJcmV0dXJuIC0xOworCX0gZWxzZSB7CisJCWNoYXIgKm5ld19wYXRoID0gZmluZF9wYXRoX2Zvcl9jb25mbGljdChvcHQsIGEtPnBhdGgsCisJCQkJCQkJY2ktPnJlbjEtPmJyYW5jaCwKKwkJCQkJCQljaS0+cmVuMi0+YnJhbmNoKTsKKwkJaWYgKHVwZGF0ZV9maWxlKG9wdCwgMCwgJm1maS5ibG9iLAorCQkJCW5ld19wYXRoID8gbmV3X3BhdGggOiBhLT5wYXRoKSkKKwkJCXJldHVybiAtMTsKKwkJZnJlZShuZXdfcGF0aCk7CisJCWlmICghb3B0LT5wcml2LT5jYWxsX2RlcHRoICYmCisJCSAgICB1cGRhdGVfc3RhZ2VzKG9wdCwgYS0+cGF0aCwgTlVMTCwgYSwgTlVMTCkpCisJCQlyZXR1cm4gLTE7CisJfQorCisJYWRkID0gJmNpLT5yZW4yLT5kc3RfZW50cnktPnN0YWdlc1tmbGlwX3N0YWdlKDMpXTsKKwlpZiAoaXNfdmFsaWQoYWRkKSkgeworCQlhZGQtPnBhdGggPSBtZmkuYmxvYi5wYXRoID0gYi0+cGF0aDsKKwkJaWYgKGhhbmRsZV9maWxlX2NvbGxpc2lvbihvcHQsIGItPnBhdGgsCisJCQkJCSAgTlVMTCwgTlVMTCwKKwkJCQkJICBjaS0+cmVuMS0+YnJhbmNoLAorCQkJCQkgIGNpLT5yZW4yLT5icmFuY2gsCisJCQkJCSAgYWRkLCAmbWZpLmJsb2IpIDwgMCkKKwkJCXJldHVybiAtMTsKKwl9IGVsc2UgeworCQljaGFyICpuZXdfcGF0aCA9IGZpbmRfcGF0aF9mb3JfY29uZmxpY3Qob3B0LCBiLT5wYXRoLAorCQkJCQkJCWNpLT5yZW4yLT5icmFuY2gsCisJCQkJCQkJY2ktPnJlbjEtPmJyYW5jaCk7CisJCWlmICh1cGRhdGVfZmlsZShvcHQsIDAsICZtZmkuYmxvYiwKKwkJCQluZXdfcGF0aCA/IG5ld19wYXRoIDogYi0+cGF0aCkpCisJCQlyZXR1cm4gLTE7CisJCWZyZWUobmV3X3BhdGgpOworCQlpZiAoIW9wdC0+cHJpdi0+Y2FsbF9kZXB0aCAmJgorCQkgICAgdXBkYXRlX3N0YWdlcyhvcHQsIGItPnBhdGgsIE5VTEwsIE5VTEwsIGIpKQorCQkJcmV0dXJuIC0xOworCX0KIAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGhhbmRsZV9yZW5hbWVfcmVuYW1lXzJ0bzEoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCitzdGF0aWMgaW50IGhhbmRsZV9yZW5hbWVfcmVuYW1lXzJ0bzEoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKIAkJCQkgICAgIHN0cnVjdCByZW5hbWVfY29uZmxpY3RfaW5mbyAqY2kpCiB7CiAJLyogVHdvIGZpbGVzLCBhICYgYiwgd2VyZSByZW5hbWVkIHRvIHRoZSBzYW1lIHRoaW5nLCBjLiAqLwotCXN0cnVjdCBkaWZmX2ZpbGVzcGVjICphID0gY2ktPnBhaXIxLT5vbmU7Ci0Jc3RydWN0IGRpZmZfZmlsZXNwZWMgKmIgPSBjaS0+cGFpcjItPm9uZTsKLQlzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqYzEgPSBjaS0+cGFpcjEtPnR3bzsKLQlzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqYzIgPSBjaS0+cGFpcjItPnR3bzsKKwlzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqYSA9IGNpLT5yZW4xLT5wYWlyLT5vbmU7CisJc3RydWN0IGRpZmZfZmlsZXNwZWMgKmIgPSBjaS0+cmVuMi0+cGFpci0+b25lOworCXN0cnVjdCBkaWZmX2ZpbGVzcGVjICpjMSA9IGNpLT5yZW4xLT5wYWlyLT50d287CisJc3RydWN0IGRpZmZfZmlsZXNwZWMgKmMyID0gY2ktPnJlbjItPnBhaXItPnR3bzsKIAljaGFyICpwYXRoID0gYzEtPnBhdGg7IC8qID09IGMyLT5wYXRoICovCiAJY2hhciAqcGF0aF9zaWRlXzFfZGVzYzsKIAljaGFyICpwYXRoX3NpZGVfMl9kZXNjOwogCXN0cnVjdCBtZXJnZV9maWxlX2luZm8gbWZpX2MxOwogCXN0cnVjdCBtZXJnZV9maWxlX2luZm8gbWZpX2MyOwotCWludCByZXQ7CisJaW50IG9zdGFnZTEsIG9zdGFnZTI7CiAKLQlvdXRwdXQobywgMSwgXygiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiAiCisJb3V0cHV0KG9wdCwgMSwgXygiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiAiCiAJICAgICAgICJSZW5hbWUgJXMtPiVzIGluICVzLiAiCiAJICAgICAgICJSZW5hbWUgJXMtPiVzIGluICVzIiksCi0JICAgICAgIGEtPnBhdGgsIGMxLT5wYXRoLCBjaS0+YnJhbmNoMSwKLQkgICAgICAgYi0+cGF0aCwgYzItPnBhdGgsIGNpLT5icmFuY2gyKTsKLQotCXJlbW92ZV9maWxlKG8sIDEsIGEtPnBhdGgsIG8tPmNhbGxfZGVwdGggfHwgd291bGRfbG9zZV91bnRyYWNrZWQoYS0+cGF0aCkpOwotCXJlbW92ZV9maWxlKG8sIDEsIGItPnBhdGgsIG8tPmNhbGxfZGVwdGggfHwgd291bGRfbG9zZV91bnRyYWNrZWQoYi0+cGF0aCkpOworCSAgICAgICBhLT5wYXRoLCBjMS0+cGF0aCwgY2ktPnJlbjEtPmJyYW5jaCwKKwkgICAgICAgYi0+cGF0aCwgYzItPnBhdGgsIGNpLT5yZW4yLT5icmFuY2gpOwogCiAJcGF0aF9zaWRlXzFfZGVzYyA9IHhzdHJmbXQoInZlcnNpb24gb2YgJXMgZnJvbSAlcyIsIHBhdGgsIGEtPnBhdGgpOwogCXBhdGhfc2lkZV8yX2Rlc2MgPSB4c3RyZm10KCJ2ZXJzaW9uIG9mICVzIGZyb20gJXMiLCBwYXRoLCBiLT5wYXRoKTsKLQlpZiAobWVyZ2VfbW9kZV9hbmRfY29udGVudHMobywgYSwgYzEsICZjaS0+cmVuMV9vdGhlciwgcGF0aF9zaWRlXzFfZGVzYywKLQkJCQkgICAgby0+YnJhbmNoMSwgby0+YnJhbmNoMiwgJm1maV9jMSkgfHwKLQkgICAgbWVyZ2VfbW9kZV9hbmRfY29udGVudHMobywgYiwgJmNpLT5yZW4yX290aGVyLCBjMiwgcGF0aF9zaWRlXzJfZGVzYywKLQkJCQkgICAgby0+YnJhbmNoMSwgby0+YnJhbmNoMiwgJm1maV9jMikpCisJb3N0YWdlMSA9IGNpLT5yZW4xLT5icmFuY2ggPT0gb3B0LT5icmFuY2gxID8gMyA6IDI7CisJb3N0YWdlMiA9IGZsaXBfc3RhZ2Uob3N0YWdlMSk7CisJY2ktPnJlbjEtPnNyY19lbnRyeS0+c3RhZ2VzW29zdGFnZTFdLnBhdGggPSBhLT5wYXRoOworCWNpLT5yZW4yLT5zcmNfZW50cnktPnN0YWdlc1tvc3RhZ2UyXS5wYXRoID0gYi0+cGF0aDsKKwlpZiAobWVyZ2VfbW9kZV9hbmRfY29udGVudHMob3B0LCBhLCBjMSwKKwkJCQkgICAgJmNpLT5yZW4xLT5zcmNfZW50cnktPnN0YWdlc1tvc3RhZ2UxXSwKKwkJCQkgICAgcGF0aF9zaWRlXzFfZGVzYywKKwkJCQkgICAgb3B0LT5icmFuY2gxLCBvcHQtPmJyYW5jaDIsCisJCQkJICAgIDEgKyBvcHQtPnByaXYtPmNhbGxfZGVwdGggKiAyLCAmbWZpX2MxKSB8fAorCSAgICBtZXJnZV9tb2RlX2FuZF9jb250ZW50cyhvcHQsIGIsCisJCQkJICAgICZjaS0+cmVuMi0+c3JjX2VudHJ5LT5zdGFnZXNbb3N0YWdlMl0sCisJCQkJICAgIGMyLCBwYXRoX3NpZGVfMl9kZXNjLAorCQkJCSAgICBvcHQtPmJyYW5jaDEsIG9wdC0+YnJhbmNoMiwKKwkJCQkgICAgMSArIG9wdC0+cHJpdi0+Y2FsbF9kZXB0aCAqIDIsICZtZmlfYzIpKQogCQlyZXR1cm4gLTE7CiAJZnJlZShwYXRoX3NpZGVfMV9kZXNjKTsKIAlmcmVlKHBhdGhfc2lkZV8yX2Rlc2MpOworCW1maV9jMS5ibG9iLnBhdGggPSBwYXRoOworCW1maV9jMi5ibG9iLnBhdGggPSBwYXRoOwogCi0JaWYgKG8tPmNhbGxfZGVwdGgpIHsKLQkJLyoKLQkJICogSWYgbWZpX2MxLmNsZWFuICYmIG1maV9jMi5jbGVhbiwgdGhlbiBpdCBtaWdodCBtYWtlCi0JCSAqIHNlbnNlIHRvIGRvIGEgdHdvLXdheSBtZXJnZSBvZiB0aG9zZSByZXN1bHRzLiAgQnV0LCBJCi0JCSAqIHRoaW5rIGluIGFsbCBjYXNlcywgaXQgbWFrZXMgc2Vuc2UgdG8gaGF2ZSB0aGUgdmlydHVhbAotCQkgKiBtZXJnZSBiYXNlIGp1c3QgdW5kbyB0aGUgcmVuYW1lczsgdGhleSBjYW4gYmUgZGV0ZWN0ZWQKLQkJICogYWdhaW4gbGF0ZXIgZm9yIHRoZSBub24tcmVjdXJzaXZlIG1lcmdlLgotCQkgKi8KLQkJcmVtb3ZlX2ZpbGUobywgMCwgcGF0aCwgMCk7Ci0JCXJldCA9IHVwZGF0ZV9maWxlKG8sIDAsICZtZmlfYzEub2lkLCBtZmlfYzEubW9kZSwgYS0+cGF0aCk7Ci0JCWlmICghcmV0KQotCQkJcmV0ID0gdXBkYXRlX2ZpbGUobywgMCwgJm1maV9jMi5vaWQsIG1maV9jMi5tb2RlLAotCQkJCQkgIGItPnBhdGgpOwotCX0gZWxzZSB7Ci0JCWNoYXIgKm5ld19wYXRoMSA9IHVuaXF1ZV9wYXRoKG8sIHBhdGgsIGNpLT5icmFuY2gxKTsKLQkJY2hhciAqbmV3X3BhdGgyID0gdW5pcXVlX3BhdGgobywgcGF0aCwgY2ktPmJyYW5jaDIpOwotCQlvdXRwdXQobywgMSwgXygiUmVuYW1pbmcgJXMgdG8gJXMgYW5kICVzIHRvICVzIGluc3RlYWQiKSwKLQkJICAgICAgIGEtPnBhdGgsIG5ld19wYXRoMSwgYi0+cGF0aCwgbmV3X3BhdGgyKTsKLQkJaWYgKHdhc19kaXJ0eShvLCBwYXRoKSkKLQkJCW91dHB1dChvLCAxLCBfKCJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgJXMiKSwKLQkJCSAgICAgICBwYXRoKTsKLQkJZWxzZSBpZiAod291bGRfbG9zZV91bnRyYWNrZWQocGF0aCkpCi0JCQkvKgotCQkJICogT25seSB3YXkgd2UgZ2V0IGhlcmUgaXMgaWYgYm90aCByZW5hbWVzIHdlcmUgZnJvbQotCQkJICogYSBkaXJlY3RvcnkgcmVuYW1lIEFORCB1c2VyIGhhZCBhbiB1bnRyYWNrZWQgZmlsZQotCQkJICogYXQgdGhlIGxvY2F0aW9uIHdoZXJlIGJvdGggZmlsZXMgZW5kIHVwIGFmdGVyIHRoZQotCQkJICogdHdvIGRpcmVjdG9yeSByZW5hbWVzLiAgU2VlIHRlc3RjYXNlIDEwZCBvZiB0NjA0My4KLQkJCSAqLwotCQkJb3V0cHV0KG8sIDEsIF8oIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgIgotCQkJCSAgICAgICAiJXMsIGV2ZW4gdGhvdWdoIGl0J3MgaW4gdGhlIHdheS4iKSwKLQkJCSAgICAgICBwYXRoKTsKLQkJZWxzZQotCQkJcmVtb3ZlX2ZpbGUobywgMCwgcGF0aCwgMCk7Ci0JCXJldCA9IHVwZGF0ZV9maWxlKG8sIDAsICZtZmlfYzEub2lkLCBtZmlfYzEubW9kZSwgbmV3X3BhdGgxKTsKLQkJaWYgKCFyZXQpCi0JCQlyZXQgPSB1cGRhdGVfZmlsZShvLCAwLCAmbWZpX2MyLm9pZCwgbWZpX2MyLm1vZGUsCi0JCQkJCSAgbmV3X3BhdGgyKTsKLQkJLyoKLQkJICogdW5wYWNrX3RyZWVzKCkgYWN0dWFsbHkgcG9wdWxhdGVzIHRoZSBpbmRleCBmb3IgdXMgZm9yCi0JCSAqICJub3JtYWwiIHJlbmFtZS9yZW5hbWUoMnRvMSkgc2l0dXRhdGlvbnMgc28gdGhhdCB0aGUKLQkJICogY29ycmVjdCBlbnRyaWVzIGFyZSBhdCB0aGUgaGlnaGVyIHN0YWdlcywgd2hpY2ggd291bGQKLQkJICogbWFrZSB0aGUgY2FsbCBiZWxvdyB0byB1cGRhdGVfc3RhZ2VzX2Zvcl9zdGFnZV9kYXRhCi0JCSAqIHVubmVjZXNzYXJ5LiAgSG93ZXZlciwgaWYgZWl0aGVyIG9mIHRoZSByZW5hbWVzIGNhbWUKLQkJICogZnJvbSBhIGRpcmVjdG9yeSByZW5hbWUsIHRoZW4gdW5wYWNrX3RyZWVzKCkgd2lsbCBub3QKLQkJICogaGF2ZSBnb3R0ZW4gdGhlIHJpZ2h0IGRhdGEgbG9hZGVkIGludG8gdGhlIGluZGV4LCBzbyB3ZQotCQkgKiBuZWVkIHRvIGRvIHNvIG5vdy4gIChXaGlsZSBpdCdkIGJlIHRlbXB0aW5nIHRvIG1vdmUgdGhpcwotCQkgKiBjYWxsIHRvIHVwZGF0ZV9zdGFnZXNfZm9yX3N0YWdlX2RhdGEoKSB0bwotCQkgKiBhcHBseV9kaXJlY3RvcnlfcmVuYW1lX21vZGlmaWNhdGlvbnMoKSwgdGhhdCB3b3VsZCBicmVhawotCQkgKiBvdXIgaW50ZXJtZWRpYXRlIGNhbGxzIHRvIHdvdWxkX2xvc2VfdW50cmFja2VkKCkgc2luY2UKLQkJICogdGhvc2UgcmVseSBvbiB0aGUgY3VycmVudCBpbi1tZW1vcnkgaW5kZXguICBTZWUgYWxzbyB0aGUKLQkJICogYmlnICJOT1RFIiBpbiB1cGRhdGVfc3RhZ2VzKCkpLgotCQkgKi8KLQkJaWYgKHVwZGF0ZV9zdGFnZXNfZm9yX3N0YWdlX2RhdGEobywgcGF0aCwgY2ktPmRzdF9lbnRyeTEpKQotCQkJcmV0ID0gLTE7Ci0KLQkJZnJlZShuZXdfcGF0aDIpOwotCQlmcmVlKG5ld19wYXRoMSk7Ci0JfQotCi0JcmV0dXJuIHJldDsKKwlyZXR1cm4gaGFuZGxlX2ZpbGVfY29sbGlzaW9uKG9wdCwgcGF0aCwgYS0+cGF0aCwgYi0+cGF0aCwKKwkJCQkgICAgIGNpLT5yZW4xLT5icmFuY2gsIGNpLT5yZW4yLT5icmFuY2gsCisJCQkJICAgICAmbWZpX2MxLmJsb2IsICZtZmlfYzIuYmxvYik7CiB9CiAKIC8qCiAgKiBHZXQgdGhlIGRpZmZfZmlsZXBhaXJzIGNoYW5nZWQgYmV0d2VlbiBvX3RyZWUgYW5kIHRyZWUuCiAgKi8KLXN0YXRpYyBzdHJ1Y3QgZGlmZl9xdWV1ZV9zdHJ1Y3QgKmdldF9kaWZmcGFpcnMoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCitzdGF0aWMgc3RydWN0IGRpZmZfcXVldWVfc3RydWN0ICpnZXRfZGlmZnBhaXJzKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCiAJCQkJCSAgICAgICBzdHJ1Y3QgdHJlZSAqb190cmVlLAogCQkJCQkgICAgICAgc3RydWN0IHRyZWUgKnRyZWUpCiB7CiAJc3RydWN0IGRpZmZfcXVldWVfc3RydWN0ICpyZXQ7CiAJc3RydWN0IGRpZmZfb3B0aW9ucyBvcHRzOwogCi0JcmVwb19kaWZmX3NldHVwKHRoZV9yZXBvc2l0b3J5LCAmb3B0cyk7CisJcmVwb19kaWZmX3NldHVwKG9wdC0+cmVwbywgJm9wdHMpOwogCW9wdHMuZmxhZ3MucmVjdXJzaXZlID0gMTsKIAlvcHRzLmZsYWdzLnJlbmFtZV9lbXB0eSA9IDA7Ci0Jb3B0cy5kZXRlY3RfcmVuYW1lID0gbWVyZ2VfZGV0ZWN0X3JlbmFtZShvKTsKKwlvcHRzLmRldGVjdF9yZW5hbWUgPSBtZXJnZV9kZXRlY3RfcmVuYW1lKG9wdCk7CiAJLyoKIAkgKiBXZSBkbyBub3QgaGF2ZSBsb2dpYyB0byBoYW5kbGUgdGhlIGRldGVjdGlvbiBvZiBjb3BpZXMuICBJbgogCSAqIGZhY3QsIGl0IG1heSBub3QgZXZlbiBtYWtlIHNlbnNlIHRvIGFkZCBzdWNoIGxvZ2ljOiB3b3VsZCB3ZQpAQCAtMTc5OSwxNyArMTg0NSwxNSBAQAogCSAqLwogCWlmIChvcHRzLmRldGVjdF9yZW5hbWUgPiBESUZGX0RFVEVDVF9SRU5BTUUpCiAJCW9wdHMuZGV0ZWN0X3JlbmFtZSA9IERJRkZfREVURUNUX1JFTkFNRTsKLQlvcHRzLnJlbmFtZV9saW1pdCA9IG8tPm1lcmdlX3JlbmFtZV9saW1pdCA+PSAwID8gby0+bWVyZ2VfcmVuYW1lX2xpbWl0IDoKLQkJCSAgICBvLT5kaWZmX3JlbmFtZV9saW1pdCA+PSAwID8gby0+ZGlmZl9yZW5hbWVfbGltaXQgOgotCQkJICAgIDEwMDA7Ci0Jb3B0cy5yZW5hbWVfc2NvcmUgPSBvLT5yZW5hbWVfc2NvcmU7Ci0Jb3B0cy5zaG93X3JlbmFtZV9wcm9ncmVzcyA9IG8tPnNob3dfcmVuYW1lX3Byb2dyZXNzOworCW9wdHMucmVuYW1lX2xpbWl0ID0gKG9wdC0+cmVuYW1lX2xpbWl0ID49IDApID8gb3B0LT5yZW5hbWVfbGltaXQgOiAxMDAwOworCW9wdHMucmVuYW1lX3Njb3JlID0gb3B0LT5yZW5hbWVfc2NvcmU7CisJb3B0cy5zaG93X3JlbmFtZV9wcm9ncmVzcyA9IG9wdC0+c2hvd19yZW5hbWVfcHJvZ3Jlc3M7CiAJb3B0cy5vdXRwdXRfZm9ybWF0ID0gRElGRl9GT1JNQVRfTk9fT1VUUFVUOwogCWRpZmZfc2V0dXBfZG9uZSgmb3B0cyk7CiAJZGlmZl90cmVlX29pZCgmb190cmVlLT5vYmplY3Qub2lkLCAmdHJlZS0+b2JqZWN0Lm9pZCwgIiIsICZvcHRzKTsKIAlkaWZmY29yZV9zdGQoJm9wdHMpOwotCWlmIChvcHRzLm5lZWRlZF9yZW5hbWVfbGltaXQgPiBvLT5uZWVkZWRfcmVuYW1lX2xpbWl0KQotCQlvLT5uZWVkZWRfcmVuYW1lX2xpbWl0ID0gb3B0cy5uZWVkZWRfcmVuYW1lX2xpbWl0OworCWlmIChvcHRzLm5lZWRlZF9yZW5hbWVfbGltaXQgPiBvcHQtPnByaXYtPm5lZWRlZF9yZW5hbWVfbGltaXQpCisJCW9wdC0+cHJpdi0+bmVlZGVkX3JlbmFtZV9saW1pdCA9IG9wdHMubmVlZGVkX3JlbmFtZV9saW1pdDsKIAogCXJldCA9IHhtYWxsb2Moc2l6ZW9mKCpyZXQpKTsKIAkqcmV0ID0gZGlmZl9xdWV1ZWRfZGlmZjsKQEAgLTE4MjEsMTIgKzE4NjUsMTQgQEAKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IHRyZWVfaGFzX3BhdGgoc3RydWN0IHRyZWUgKnRyZWUsIGNvbnN0IGNoYXIgKnBhdGgpCitzdGF0aWMgaW50IHRyZWVfaGFzX3BhdGgoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCB0cmVlICp0cmVlLAorCQkJIGNvbnN0IGNoYXIgKnBhdGgpCiB7CiAJc3RydWN0IG9iamVjdF9pZCBoYXNoeTsKLQl1bnNpZ25lZCBpbnQgbW9kZV9vOworCXVuc2lnbmVkIHNob3J0IG1vZGVfbzsKIAotCXJldHVybiAhZ2V0X3RyZWVfZW50cnkoJnRyZWUtPm9iamVjdC5vaWQsIHBhdGgsCisJcmV0dXJuICFnZXRfdHJlZV9lbnRyeShyLAorCQkJICAgICAgICZ0cmVlLT5vYmplY3Qub2lkLCBwYXRoLAogCQkJICAgICAgICZoYXNoeSwgJm1vZGVfbyk7CiB9CiAKQEAgLTE4NDcsNiArMTg5MywxNiBAQAogCQlyZXR1cm4gTlVMTDsKIAogCW9sZGxlbiA9IHN0cmxlbihlbnRyeS0+ZGlyKTsKKwlpZiAoZW50cnktPm5ld19kaXIubGVuID09IDApCisJCS8qCisJCSAqIElmIHNvbWVvbmUgcmVuYW1lZC9tZXJnZWQgYSBzdWJkaXJlY3RvcnkgaW50byB0aGUgcm9vdAorCQkgKiBkaXJlY3RvcnkgKGUuZy4gJ3NvbWUvc3ViZGlyJyAtPiAnJyksIHRoZW4gd2Ugd2FudCB0bworCQkgKiBhdm9pZCByZXR1cm5pbmcKKwkJICogICAgICcnICsgJy9maWxlbmFtZScKKwkJICogYXMgdGhlIHJlbmFtZTsgd2UgbmVlZCB0byBtYWtlIG9sZF9wYXRoICsgb2xkbGVuIGFkdmFuY2UKKwkJICogcGFzdCB0aGUgJy8nIGNoYXJhY3Rlci4KKwkJICovCisJCW9sZGxlbisrOwogCW5ld2xlbiA9IGVudHJ5LT5uZXdfZGlyLmxlbiArIChzdHJsZW4ob2xkX3BhdGgpIC0gb2xkbGVuKSArIDE7CiAJc3RyYnVmX2dyb3coJm5ld19wYXRoLCBuZXdsZW4pOwogCXN0cmJ1Zl9hZGRidWYoJm5ld19wYXRoLCAmZW50cnktPm5ld19kaXIpOwpAQCAtMTg1OSw4ICsxOTE1LDggQEAKIAkJCQkgICAgY2hhciAqKm9sZF9kaXIsIGNoYXIgKipuZXdfZGlyKQogewogCWNoYXIgKmVuZF9vZl9vbGQsICplbmRfb2ZfbmV3OwotCWludCBvbGRfbGVuLCBuZXdfbGVuOwogCisJLyogRGVmYXVsdCByZXR1cm4gdmFsdWVzOiBOVUxMLCBtZWFuaW5nIG5vIHJlbmFtZSAqLwogCSpvbGRfZGlyID0gTlVMTDsKIAkqbmV3X2RpciA9IE5VTEw7CiAKQEAgLTE4NzEsNDMgKzE5MjcsOTEgQEAKIAkgKiAgICAiYS9iL2MvZCIgd2FzIHJlbmFtZWQgdG8gImEvYi9zb21lL3RoaW5nL2Vsc2UiCiAJICogc28sIGZvciB0aGlzIGV4YW1wbGUsIHRoaXMgZnVuY3Rpb24gcmV0dXJucyAiYS9iL2MvZCIgaW4KIAkgKiAqb2xkX2RpciBhbmQgImEvYi9zb21lL3RoaW5nL2Vsc2UiIGluICpuZXdfZGlyLgotCSAqCi0JICogQWxzbywgaWYgdGhlIGJhc2VuYW1lIG9mIHRoZSBmaWxlIGNoYW5nZWQsIHdlIGRvbid0IGNhcmUuICBXZQotCSAqIHdhbnQgdG8ga25vdyB3aGljaCBwb3J0aW9uIG9mIHRoZSBkaXJlY3RvcnksIGlmIGFueSwgY2hhbmdlZC4KKwkgKi8KKworCS8qCisJICogSWYgdGhlIGJhc2VuYW1lIG9mIHRoZSBmaWxlIGNoYW5nZWQsIHdlIGRvbid0IGNhcmUuICBXZSB3YW50CisJICogdG8ga25vdyB3aGljaCBwb3J0aW9uIG9mIHRoZSBkaXJlY3RvcnksIGlmIGFueSwgY2hhbmdlZC4KIAkgKi8KIAllbmRfb2Zfb2xkID0gc3RycmNocihvbGRfcGF0aCwgJy8nKTsKIAllbmRfb2ZfbmV3ID0gc3RycmNocihuZXdfcGF0aCwgJy8nKTsKIAotCWlmIChlbmRfb2Zfb2xkID09IE5VTEwgfHwgZW5kX29mX25ldyA9PSBOVUxMKQorCS8qCisJICogSWYgZW5kX29mX29sZCBpcyBOVUxMLCBvbGRfcGF0aCB3YXNuJ3QgaW4gYSBkaXJlY3RvcnksIHNvIHRoZXJlCisJICogY291bGQgbm90IGJlIGEgZGlyZWN0b3J5IHJlbmFtZSAob3VyIHJ1bGUgZWxzZXdoZXJlIHRoYXQgYQorCSAqIGRpcmVjdG9yeSB3aGljaCBzdGlsbCBleGlzdHMgaXMgbm90IGNvbnNpZGVyZWQgdG8gaGF2ZSBiZWVuCisJICogcmVuYW1lZCBtZWFucyB0aGUgcm9vdCBkaXJlY3RvcnkgY2FuIG5ldmVyIGJlIHJlbmFtZWQgLS0gYmVjYXVzZQorCSAqIHRoZSByb290IGRpcmVjdG9yeSBhbHdheXMgZXhpc3RzKS4KKwkgKi8KKwlpZiAoZW5kX29mX29sZCA9PSBOVUxMKQorCQlyZXR1cm47IC8qIE5vdGU6ICpvbGRfZGlyIGFuZCAqbmV3X2RpciBhcmUgc3RpbGwgTlVMTCAqLworCisJLyoKKwkgKiBJZiBuZXdfcGF0aCBjb250YWlucyBubyBkaXJlY3RvcnkgKGVuZF9vZl9uZXcgaXMgTlVMTCksIHRoZW4gd2UKKwkgKiBoYXZlIGEgcmVuYW1lIG9mIG9sZF9wYXRoJ3MgZGlyZWN0b3J5IHRvIHRoZSByb290IGRpcmVjdG9yeS4KKwkgKi8KKwlpZiAoZW5kX29mX25ldyA9PSBOVUxMKSB7CisJCSpvbGRfZGlyID0geHN0cm5kdXAob2xkX3BhdGgsIGVuZF9vZl9vbGQgLSBvbGRfcGF0aCk7CisJCSpuZXdfZGlyID0geHN0cmR1cCgiIik7CiAJCXJldHVybjsKKwl9CisKKwkvKiBGaW5kIHRoZSBmaXJzdCBub24tbWF0Y2hpbmcgY2hhcmFjdGVyIHRyYXZlcnNpbmcgYmFja3dhcmRzICovCiAJd2hpbGUgKCotLWVuZF9vZl9uZXcgPT0gKi0tZW5kX29mX29sZCAmJgogCSAgICAgICBlbmRfb2Zfb2xkICE9IG9sZF9wYXRoICYmCiAJICAgICAgIGVuZF9vZl9uZXcgIT0gbmV3X3BhdGgpCiAJCTsgLyogRG8gbm90aGluZzsgYWxsIGluIHRoZSB3aGlsZSBsb29wICovCisKKwkvKgorCSAqIElmIGJvdGggZ290IGJhY2sgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGVpciBzdHJpbmdzLCB0aGVuIHRoZQorCSAqIGRpcmVjdG9yeSBkaWRuJ3QgY2hhbmdlIGF0IGFsbCwgb25seSB0aGUgYmFzZW5hbWUgZGlkLgorCSAqLworCWlmIChlbmRfb2Zfb2xkID09IG9sZF9wYXRoICYmIGVuZF9vZl9uZXcgPT0gbmV3X3BhdGggJiYKKwkgICAgKmVuZF9vZl9vbGQgPT0gKmVuZF9vZl9uZXcpCisJCXJldHVybjsgLyogTm90ZTogKm9sZF9kaXIgYW5kICpuZXdfZGlyIGFyZSBzdGlsbCBOVUxMICovCisKKwkvKgorCSAqIElmIGVuZF9vZl9uZXcgZ290IGJhY2sgdG8gdGhlIGJlZ2lubmluZyBvZiBpdHMgc3RyaW5nLCBhbmQKKwkgKiBlbmRfb2Zfb2xkIGdvdCBiYWNrIHRvIHRoZSBiZWdpbm5pbmcgb2Ygc29tZSBzdWJkaXJlY3RvcnksIHRoZW4KKwkgKiB3ZSBoYXZlIGEgcmVuYW1lL21lcmdlIG9mIGEgc3ViZGlyZWN0b3J5IGludG8gdGhlIHJvb3QsIHdoaWNoCisJICogbmVlZHMgc2xpZ2h0bHkgc3BlY2lhbCBoYW5kbGluZy4KKwkgKgorCSAqIE5vdGU6IFRoZXJlIGlzIG5vIG5lZWQgdG8gY29uc2lkZXIgdGhlIG9wcG9zaXRlIGNhc2UsIHdpdGggYQorCSAqIHJlbmFtZS9tZXJnZSBvZiB0aGUgcm9vdCBkaXJlY3RvcnkgaW50byBzb21lIHN1YmRpcmVjdG9yeQorCSAqIGJlY2F1c2UgYXMgbm90ZWQgYWJvdmUgdGhlIHJvb3QgZGlyZWN0b3J5IGFsd2F5cyBleGlzdHMgc28gaXQKKwkgKiBjYW5ub3QgYmUgY29uc2lkZXJlZCB0byBiZSByZW5hbWVkLgorCSAqLworCWlmIChlbmRfb2ZfbmV3ID09IG5ld19wYXRoICYmCisJICAgIGVuZF9vZl9vbGQgIT0gb2xkX3BhdGggJiYgZW5kX29mX29sZFstMV0gPT0gJy8nKSB7CisJCSpvbGRfZGlyID0geHN0cm5kdXAob2xkX3BhdGgsIC0tZW5kX29mX29sZCAtIG9sZF9wYXRoKTsKKwkJKm5ld19kaXIgPSB4c3RyZHVwKCIiKTsKKwkJcmV0dXJuOworCX0KKwogCS8qCiAJICogV2UndmUgZm91bmQgdGhlIGZpcnN0IG5vbi1tYXRjaGluZyBjaGFyYWN0ZXIgaW4gdGhlIGRpcmVjdG9yeQotCSAqIHBhdGhzLiAgVGhhdCBtZWFucyB0aGUgY3VycmVudCBkaXJlY3Rvcnkgd2Ugd2VyZSBjb21wYXJpbmcKLQkgKiByZXByZXNlbnRzIHRoZSByZW5hbWUuICBNb3ZlIGVuZF9vZl9vbGQgYW5kIGVuZF9vZl9uZXcgYmFjawotCSAqIHRvIHRoZSBmdWxsIGRpcmVjdG9yeSBuYW1lLgorCSAqIHBhdGhzLiAgVGhhdCBtZWFucyB0aGUgY3VycmVudCBjaGFyYWN0ZXJzIHdlIHdlcmUgbG9va2luZyBhdAorCSAqIHdlcmUgcGFydCBvZiB0aGUgZmlyc3Qgbm9uLW1hdGNoaW5nIHN1YmRpciBuYW1lIGdvaW5nIGJhY2sgZnJvbQorCSAqIHRoZSBlbmQgb2YgdGhlIHN0cmluZ3MuICBHZXQgdGhlIHdob2xlIG5hbWUgYnkgYWR2YW5jaW5nIGJvdGgKKwkgKiBlbmRfb2Zfb2xkIGFuZCBlbmRfb2ZfbmV3IHRvIHRoZSBORVhUICcvJyBjaGFyYWN0ZXIuICBUaGF0IHdpbGwKKwkgKiByZXByZXNlbnQgdGhlIGVudGlyZSBkaXJlY3RvcnkgcmVuYW1lLgorCSAqCisJICogVGhlIHJlYXNvbiBmb3IgdGhlIGluY3JlbWVudCBpcyBjYXNlcyBsaWtlCisJICogICAgYS9iL3N0YXIvZm9vL3doYXRldmVyLmMgLT4gYS9iL3Rhci9mb28vcmFuZG9tLmMKKwkgKiBBZnRlciBkcm9wcGluZyB0aGUgYmFzZW5hbWUgYW5kIGdvaW5nIGJhY2sgdG8gdGhlIGZpcnN0CisJICogbm9uLW1hdGNoaW5nIGNoYXJhY3Rlciwgd2UncmUgbm93IGNvbXBhcmluZzoKKwkgKiAgICBhL2IvcyAgICAgICAgICBhbmQgICAgICAgICBhL2IvCisJICogYW5kIHdlIHdhbnQgdG8gYmUgY29tcGFyaW5nOgorCSAqICAgIGEvYi9zdGFyLyAgICAgIGFuZCAgICAgICAgIGEvYi90YXIvCisJICogYnV0IHdpdGhvdXQgdGhlIHByZS1pbmNyZW1lbnQsIHRoZSBvbmUgb24gdGhlIHJpZ2h0IHdvdWxkIHN0YXkKKwkgKiBhL2IvLgogCSAqLwotCWlmICgqZW5kX29mX29sZCA9PSAnLycpCi0JCWVuZF9vZl9vbGQrKzsKLQlpZiAoKmVuZF9vZl9vbGQgIT0gJy8nKQotCQllbmRfb2ZfbmV3Kys7Ci0JZW5kX29mX29sZCA9IHN0cmNocihlbmRfb2Zfb2xkLCAnLycpOwotCWVuZF9vZl9uZXcgPSBzdHJjaHIoZW5kX29mX25ldywgJy8nKTsKKwllbmRfb2Zfb2xkID0gc3RyY2hyKCsrZW5kX29mX29sZCwgJy8nKTsKKwllbmRfb2ZfbmV3ID0gc3RyY2hyKCsrZW5kX29mX25ldywgJy8nKTsKIAotCS8qCi0JICogSXQgbWF5IGhhdmUgYmVlbiB0aGUgY2FzZSB0aGF0IG9sZF9wYXRoIGFuZCBuZXdfcGF0aCB3ZXJlIHRoZSBzYW1lCi0JICogZGlyZWN0b3J5IGFsbCBhbG9uZy4gIERvbid0IGNsYWltIGEgcmVuYW1lIGlmIHRoZXkncmUgdGhlIHNhbWUuCi0JICovCi0Jb2xkX2xlbiA9IGVuZF9vZl9vbGQgLSBvbGRfcGF0aDsKLQluZXdfbGVuID0gZW5kX29mX25ldyAtIG5ld19wYXRoOwotCi0JaWYgKG9sZF9sZW4gIT0gbmV3X2xlbiB8fCBzdHJuY21wKG9sZF9wYXRoLCBuZXdfcGF0aCwgb2xkX2xlbikpIHsKLQkJKm9sZF9kaXIgPSB4c3RybmR1cChvbGRfcGF0aCwgb2xkX2xlbik7Ci0JCSpuZXdfZGlyID0geHN0cm5kdXAobmV3X3BhdGgsIG5ld19sZW4pOwotCX0KKwkvKiBDb3B5IHRoZSBvbGQgYW5kIG5ldyBkaXJlY3RvcmllcyBpbnRvICpvbGRfZGlyIGFuZCAqbmV3X2Rpci4gKi8KKwkqb2xkX2RpciA9IHhzdHJuZHVwKG9sZF9wYXRoLCBlbmRfb2Zfb2xkIC0gb2xkX3BhdGgpOworCSpuZXdfZGlyID0geHN0cm5kdXAobmV3X3BhdGgsIGVuZF9vZl9uZXcgLSBuZXdfcGF0aCk7CiB9CiAKIHN0YXRpYyB2b2lkIHJlbW92ZV9oYXNobWFwX2VudHJpZXMoc3RydWN0IGhhc2htYXAgKmRpcl9yZW5hbWVzLApAQCAtMTkxOCw3ICsyMDIyLDcgQEAKIAogCWZvciAoaSA9IDA7IGkgPCBpdGVtc190b19yZW1vdmUtPm5yOyBpKyspIHsKIAkJZW50cnkgPSBpdGVtc190b19yZW1vdmUtPml0ZW1zW2ldLnV0aWw7Ci0JCWhhc2htYXBfcmVtb3ZlKGRpcl9yZW5hbWVzLCBlbnRyeSwgTlVMTCk7CisJCWhhc2htYXBfcmVtb3ZlKGRpcl9yZW5hbWVzLCAmZW50cnktPmVudCwgTlVMTCk7CiAJfQogCXN0cmluZ19saXN0X2NsZWFyKGl0ZW1zX3RvX3JlbW92ZSwgMCk7CiB9CkBAIC0xOTI4LDcgKzIwMzIsNyBAQAogICogbGV2ZWwgY29uZmxpY3RzIGZvciB0aGUgcmVuYW1lZCBsb2NhdGlvbi4gIElmIHRoZXJlIGlzIGEgcmVuYW1lIGFuZAogICogdGhlcmUgYXJlIG5vIGNvbmZsaWN0cywgcmV0dXJuIHRoZSBuZXcgbmFtZS4gIE90aGVyd2lzZSwgcmV0dXJuIE5VTEwuCiAgKi8KLXN0YXRpYyBjaGFyICpoYW5kbGVfcGF0aF9sZXZlbF9jb25mbGljdHMoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCitzdGF0aWMgY2hhciAqaGFuZGxlX3BhdGhfbGV2ZWxfY29uZmxpY3RzKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCiAJCQkJCSBjb25zdCBjaGFyICpwYXRoLAogCQkJCQkgc3RydWN0IGRpcl9yZW5hbWVfZW50cnkgKmVudHJ5LAogCQkJCQkgc3RydWN0IGhhc2htYXAgKmNvbGxpc2lvbnMsCkBAIC0xOTQ5LDcgKzIwNTMsNyBAQAogCQkvKiBUaGlzIHNob3VsZCBvbmx5IGhhcHBlbiB3aGVuIGVudHJ5LT5ub25fdW5pcXVlX25ld19kaXIgc2V0ICovCiAJCWlmICghZW50cnktPm5vbl91bmlxdWVfbmV3X2RpcikKIAkJCUJVRygiZW50cnktPm5vbl91bnFpdWVfZGlyIG5vdCBzZXQgYW5kICFuZXdfcGF0aCIpOwotCQlvdXRwdXQobywgMSwgXygiQ09ORkxJQ1QgKGRpcmVjdG9yeSByZW5hbWUgc3BsaXQpOiAiCisJCW91dHB1dChvcHQsIDEsIF8oIkNPTkZMSUNUIChkaXJlY3RvcnkgcmVuYW1lIHNwbGl0KTogIgogCQkJICAgICAgICJVbmNsZWFyIHdoZXJlIHRvIHBsYWNlICVzIGJlY2F1c2UgZGlyZWN0b3J5ICIKIAkJCSAgICAgICAiJXMgd2FzIHJlbmFtZWQgdG8gbXVsdGlwbGUgb3RoZXIgZGlyZWN0b3JpZXMsICIKIAkJCSAgICAgICAid2l0aCBubyBkZXN0aW5hdGlvbiBnZXR0aW5nIGEgbWFqb3JpdHkgb2YgdGhlICIKQEAgLTE5NzcsMTEgKzIwODEsMTEgQEAKIAkgKi8KIAlpZiAoY29sbGlzaW9uX2VudC0+cmVwb3J0ZWRfYWxyZWFkeSkgewogCQljbGVhbiA9IDA7Ci0JfSBlbHNlIGlmICh0cmVlX2hhc19wYXRoKHRyZWUsIG5ld19wYXRoKSkgeworCX0gZWxzZSBpZiAodHJlZV9oYXNfcGF0aChvcHQtPnJlcG8sIHRyZWUsIG5ld19wYXRoKSkgewogCQljb2xsaXNpb25fZW50LT5yZXBvcnRlZF9hbHJlYWR5ID0gMTsKIAkJc3RyYnVmX2FkZF9zZXBhcmF0ZWRfc3RyaW5nX2xpc3QoJmNvbGxpc2lvbl9wYXRocywgIiwgIiwKIAkJCQkJCSAmY29sbGlzaW9uX2VudC0+c291cmNlX2ZpbGVzKTsKLQkJb3V0cHV0KG8sIDEsIF8oIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogRXhpc3RpbmcgIgorCQlvdXRwdXQob3B0LCAxLCBfKCJDT05GTElDVCAoaW1wbGljaXQgZGlyIHJlbmFtZSk6IEV4aXN0aW5nICIKIAkJCSAgICAgICAiZmlsZS9kaXIgYXQgJXMgaW4gdGhlIHdheSBvZiBpbXBsaWNpdCAiCiAJCQkgICAgICAgImRpcmVjdG9yeSByZW5hbWUocykgcHV0dGluZyB0aGUgZm9sbG93aW5nICIKIAkJCSAgICAgICAicGF0aChzKSB0aGVyZTogJXMuIiksCkBAIC0xOTkxLDcgKzIwOTUsNyBAQAogCQljb2xsaXNpb25fZW50LT5yZXBvcnRlZF9hbHJlYWR5ID0gMTsKIAkJc3RyYnVmX2FkZF9zZXBhcmF0ZWRfc3RyaW5nX2xpc3QoJmNvbGxpc2lvbl9wYXRocywgIiwgIiwKIAkJCQkJCSAmY29sbGlzaW9uX2VudC0+c291cmNlX2ZpbGVzKTsKLQkJb3V0cHV0KG8sIDEsIF8oIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogQ2Fubm90IG1hcCAiCisJCW91dHB1dChvcHQsIDEsIF8oIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogQ2Fubm90IG1hcCAiCiAJCQkgICAgICAgIm1vcmUgdGhhbiBvbmUgcGF0aCB0byAlczsgaW1wbGljaXQgZGlyZWN0b3J5ICIKIAkJCSAgICAgICAicmVuYW1lcyB0cmllZCB0byBwdXQgdGhlc2UgcGF0aHMgdGhlcmU6ICVzIiksCiAJCSAgICAgICBuZXdfcGF0aCwgY29sbGlzaW9uX3BhdGhzLmJ1Zik7CkBAIC0yMDI4LDcgKzIxMzIsNyBAQAogICogICAgICAgICBjYXVzZXMgY29uZmxpY3RzIGZvciBmaWxlcyB3aXRoaW4gdGhvc2UgbWVyZ2VkIGRpcmVjdG9yaWVzLCB0aGVuCiAgKiAgICAgICAgIHRoYXQgc2hvdWxkIGJlIGRldGVjdGVkIGF0IHRoZSBpbmRpdmlkdWFsIHBhdGggbGV2ZWwuCiAgKi8KLXN0YXRpYyB2b2lkIGhhbmRsZV9kaXJlY3RvcnlfbGV2ZWxfY29uZmxpY3RzKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLAorc3RhdGljIHZvaWQgaGFuZGxlX2RpcmVjdG9yeV9sZXZlbF9jb25mbGljdHMoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKIAkJCQkJICAgICBzdHJ1Y3QgaGFzaG1hcCAqZGlyX3JlX2hlYWQsCiAJCQkJCSAgICAgc3RydWN0IHRyZWUgKmhlYWQsCiAJCQkJCSAgICAgc3RydWN0IGhhc2htYXAgKmRpcl9yZV9tZXJnZSwKQEAgLTIwNDEsOCArMjE0NSw4IEBACiAJc3RydWN0IHN0cmluZ19saXN0IHJlbW92ZV9mcm9tX2hlYWQgPSBTVFJJTkdfTElTVF9JTklUX05PRFVQOwogCXN0cnVjdCBzdHJpbmdfbGlzdCByZW1vdmVfZnJvbV9tZXJnZSA9IFNUUklOR19MSVNUX0lOSVRfTk9EVVA7CiAKLQloYXNobWFwX2l0ZXJfaW5pdChkaXJfcmVfaGVhZCwgJml0ZXIpOwotCXdoaWxlICgoaGVhZF9lbnQgPSBoYXNobWFwX2l0ZXJfbmV4dCgmaXRlcikpKSB7CisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeShkaXJfcmVfaGVhZCwgJml0ZXIsIGhlYWRfZW50LAorCQkJCWVudCAvKiBtZW1iZXIgbmFtZSAqLykgewogCQltZXJnZV9lbnQgPSBkaXJfcmVuYW1lX2ZpbmRfZW50cnkoZGlyX3JlX21lcmdlLCBoZWFkX2VudC0+ZGlyKTsKIAkJaWYgKG1lcmdlX2VudCAmJgogCQkgICAgIWhlYWRfZW50LT5ub25fdW5pcXVlX25ld19kaXIgJiYKQEAgLTIwNTUsNyArMjE1OSw3IEBACiAJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJnJlbW92ZV9mcm9tX21lcmdlLAogCQkJCQkgICBtZXJnZV9lbnQtPmRpciktPnV0aWwgPSBtZXJnZV9lbnQ7CiAJCQlzdHJidWZfcmVsZWFzZSgmbWVyZ2VfZW50LT5uZXdfZGlyKTsKLQkJfSBlbHNlIGlmICh0cmVlX2hhc19wYXRoKGhlYWQsIGhlYWRfZW50LT5kaXIpKSB7CisJCX0gZWxzZSBpZiAodHJlZV9oYXNfcGF0aChvcHQtPnJlcG8sIGhlYWQsIGhlYWRfZW50LT5kaXIpKSB7CiAJCQkvKiAyLiBUaGlzIHdhc24ndCBhIGRpcmVjdG9yeSByZW5hbWUgYWZ0ZXIgYWxsICovCiAJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJnJlbW92ZV9mcm9tX2hlYWQsCiAJCQkJCSAgIGhlYWRfZW50LT5kaXIpLT51dGlsID0gaGVhZF9lbnQ7CkBAIC0yMDY2LDEwICsyMTcwLDEwIEBACiAJcmVtb3ZlX2hhc2htYXBfZW50cmllcyhkaXJfcmVfaGVhZCwgJnJlbW92ZV9mcm9tX2hlYWQpOwogCXJlbW92ZV9oYXNobWFwX2VudHJpZXMoZGlyX3JlX21lcmdlLCAmcmVtb3ZlX2Zyb21fbWVyZ2UpOwogCi0JaGFzaG1hcF9pdGVyX2luaXQoZGlyX3JlX21lcmdlLCAmaXRlcik7Ci0Jd2hpbGUgKChtZXJnZV9lbnQgPSBoYXNobWFwX2l0ZXJfbmV4dCgmaXRlcikpKSB7CisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeShkaXJfcmVfbWVyZ2UsICZpdGVyLCBtZXJnZV9lbnQsCisJCQkJZW50IC8qIG1lbWJlciBuYW1lICovKSB7CiAJCWhlYWRfZW50ID0gZGlyX3JlbmFtZV9maW5kX2VudHJ5KGRpcl9yZV9oZWFkLCBtZXJnZV9lbnQtPmRpcik7Ci0JCWlmICh0cmVlX2hhc19wYXRoKG1lcmdlLCBtZXJnZV9lbnQtPmRpcikpIHsKKwkJaWYgKHRyZWVfaGFzX3BhdGgob3B0LT5yZXBvLCBtZXJnZSwgbWVyZ2VfZW50LT5kaXIpKSB7CiAJCQkvKiAyLiBUaGlzIHdhc24ndCBhIGRpcmVjdG9yeSByZW5hbWUgYWZ0ZXIgYWxsICovCiAJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJnJlbW92ZV9mcm9tX21lcmdlLAogCQkJCQkgICBtZXJnZV9lbnQtPmRpciktPnV0aWwgPSBtZXJnZV9lbnQ7CkBAIC0yMDgzLDExICsyMTg3LDExIEBACiAJCQkgKiBrbm93IHRoYXQgaGVhZF9lbnQtPm5ld19kaXIgYW5kIG1lcmdlX2VudC0+bmV3X2RpcgogCQkJICogYXJlIGRpZmZlcmVudCBzdHJpbmdzLgogCQkJICovCi0JCQlvdXRwdXQobywgMSwgXygiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiAiCisJCQlvdXRwdXQob3B0LCAxLCBfKCJDT05GTElDVCAocmVuYW1lL3JlbmFtZSk6ICIKIAkJCQkgICAgICAgIlJlbmFtZSBkaXJlY3RvcnkgJXMtPiVzIGluICVzLiAiCiAJCQkJICAgICAgICJSZW5hbWUgZGlyZWN0b3J5ICVzLT4lcyBpbiAlcyIpLAotCQkJICAgICAgIGhlYWRfZW50LT5kaXIsIGhlYWRfZW50LT5uZXdfZGlyLmJ1Ziwgby0+YnJhbmNoMSwKLQkJCSAgICAgICBoZWFkX2VudC0+ZGlyLCBtZXJnZV9lbnQtPm5ld19kaXIuYnVmLCBvLT5icmFuY2gyKTsKKwkJCSAgICAgICBoZWFkX2VudC0+ZGlyLCBoZWFkX2VudC0+bmV3X2Rpci5idWYsIG9wdC0+YnJhbmNoMSwKKwkJCSAgICAgICBoZWFkX2VudC0+ZGlyLCBtZXJnZV9lbnQtPm5ld19kaXIuYnVmLCBvcHQtPmJyYW5jaDIpOwogCQkJc3RyaW5nX2xpc3RfYXBwZW5kKCZyZW1vdmVfZnJvbV9oZWFkLAogCQkJCQkgICBoZWFkX2VudC0+ZGlyKS0+dXRpbCA9IGhlYWRfZW50OwogCQkJc3RyYnVmX3JlbGVhc2UoJmhlYWRfZW50LT5uZXdfZGlyKTsKQEAgLTIxMDEsOCArMjIwNSw3IEBACiAJcmVtb3ZlX2hhc2htYXBfZW50cmllcyhkaXJfcmVfbWVyZ2UsICZyZW1vdmVfZnJvbV9tZXJnZSk7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgaGFzaG1hcCAqZ2V0X2RpcmVjdG9yeV9yZW5hbWVzKHN0cnVjdCBkaWZmX3F1ZXVlX3N0cnVjdCAqcGFpcnMsCi0JCQkJCSAgICAgc3RydWN0IHRyZWUgKnRyZWUpCitzdGF0aWMgc3RydWN0IGhhc2htYXAgKmdldF9kaXJlY3RvcnlfcmVuYW1lcyhzdHJ1Y3QgZGlmZl9xdWV1ZV9zdHJ1Y3QgKnBhaXJzKQogewogCXN0cnVjdCBoYXNobWFwICpkaXJfcmVuYW1lczsKIAlzdHJ1Y3QgaGFzaG1hcF9pdGVyIGl0ZXI7CkBAIC0yMTQ3LDcgKzIyNTAsNyBAQAogCQlpZiAoIWVudHJ5KSB7CiAJCQllbnRyeSA9IHhtYWxsb2Moc2l6ZW9mKCplbnRyeSkpOwogCQkJZGlyX3JlbmFtZV9lbnRyeV9pbml0KGVudHJ5LCBvbGRfZGlyKTsKLQkJCWhhc2htYXBfcHV0KGRpcl9yZW5hbWVzLCBlbnRyeSk7CisJCQloYXNobWFwX3B1dChkaXJfcmVuYW1lcywgJmVudHJ5LT5lbnQpOwogCQl9IGVsc2UgewogCQkJZnJlZShvbGRfZGlyKTsKIAkJfQpAQCAtMjE3Miw4ICsyMjc1LDggQEAKIAkgKiB3ZSBzZXQgbm9uX3VuaXF1ZV9uZXdfZGlyLiAgT25jZSB3ZSd2ZSBkZXRlcm1pbmVkIHRoZSB3aW5uZXIgKG9yCiAJICogdGhhdCB0aGVyZSBpcyBubyB3aW5uZXIpLCB3ZSBubyBsb25nZXIgbmVlZCBwb3NzaWJsZV9uZXdfZGlycy4KIAkgKi8KLQloYXNobWFwX2l0ZXJfaW5pdChkaXJfcmVuYW1lcywgJml0ZXIpOwotCXdoaWxlICgoZW50cnkgPSBoYXNobWFwX2l0ZXJfbmV4dCgmaXRlcikpKSB7CisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeShkaXJfcmVuYW1lcywgJml0ZXIsIGVudHJ5LAorCQkJCWVudCAvKiBtZW1iZXIgbmFtZSAqLykgewogCQlpbnQgbWF4ID0gMDsKIAkJaW50IGJhZF9tYXggPSAwOwogCQljaGFyICpiZXN0ID0gTlVMTDsKQEAgLTIyNzYsOCArMjM3OSw5IEBACiAJCWlmICghY29sbGlzaW9uX2VudCkgewogCQkJY29sbGlzaW9uX2VudCA9IHhjYWxsb2MoMSwKIAkJCQkJCXNpemVvZihzdHJ1Y3QgY29sbGlzaW9uX2VudHJ5KSk7Ci0JCQloYXNobWFwX2VudHJ5X2luaXQoY29sbGlzaW9uX2VudCwgc3RyaGFzaChuZXdfcGF0aCkpOwotCQkJaGFzaG1hcF9wdXQoY29sbGlzaW9ucywgY29sbGlzaW9uX2VudCk7CisJCQloYXNobWFwX2VudHJ5X2luaXQoJmNvbGxpc2lvbl9lbnQtPmVudCwKKwkJCQkJCXN0cmhhc2gobmV3X3BhdGgpKTsKKwkJCWhhc2htYXBfcHV0KGNvbGxpc2lvbnMsICZjb2xsaXNpb25fZW50LT5lbnQpOwogCQkJY29sbGlzaW9uX2VudC0+dGFyZ2V0X2ZpbGUgPSBuZXdfcGF0aDsKIAkJfSBlbHNlIHsKIAkJCWZyZWUobmV3X3BhdGgpOwpAQCAtMjI4Nyw3ICsyMzkxLDcgQEAKIAl9CiB9CiAKLXN0YXRpYyBjaGFyICpjaGVja19mb3JfZGlyZWN0b3J5X3JlbmFtZShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywKK3N0YXRpYyBjaGFyICpjaGVja19mb3JfZGlyZWN0b3J5X3JlbmFtZShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAogCQkJCQljb25zdCBjaGFyICpwYXRoLAogCQkJCQlzdHJ1Y3QgdHJlZSAqdHJlZSwKIAkJCQkJc3RydWN0IGhhc2htYXAgKmRpcl9yZW5hbWVzLApAQCAtMjMyOCwxMSArMjQzMiwxMSBAQAogCSAqLwogCW9lbnRyeSA9IGRpcl9yZW5hbWVfZmluZF9lbnRyeShkaXJfcmVuYW1lX2V4Y2x1c2lvbnMsIGVudHJ5LT5uZXdfZGlyLmJ1Zik7CiAJaWYgKG9lbnRyeSkgewotCQlvdXRwdXQobywgMSwgXygiV0FSTklORzogQXZvaWRpbmcgYXBwbHlpbmcgJXMgLT4gJXMgcmVuYW1lICIKKwkJb3V0cHV0KG9wdCwgMSwgXygiV0FSTklORzogQXZvaWRpbmcgYXBwbHlpbmcgJXMgLT4gJXMgcmVuYW1lICIKIAkJCSAgICAgICAidG8gJXMsIGJlY2F1c2UgJXMgaXRzZWxmIHdhcyByZW5hbWVkLiIpLAogCQkgICAgICAgZW50cnktPmRpciwgZW50cnktPm5ld19kaXIuYnVmLCBwYXRoLCBlbnRyeS0+bmV3X2Rpci5idWYpOwogCX0gZWxzZSB7Ci0JCW5ld19wYXRoID0gaGFuZGxlX3BhdGhfbGV2ZWxfY29uZmxpY3RzKG8sIHBhdGgsIGVudHJ5LAorCQluZXdfcGF0aCA9IGhhbmRsZV9wYXRoX2xldmVsX2NvbmZsaWN0cyhvcHQsIHBhdGgsIGVudHJ5LAogCQkJCQkJICAgICAgIGNvbGxpc2lvbnMsIHRyZWUpOwogCQkqY2xlYW5fbWVyZ2UgJj0gKG5ld19wYXRoICE9IE5VTEwpOwogCX0KQEAgLTIzNDAsNyArMjQ0NCw3IEBACiAJcmV0dXJuIG5ld19wYXRoOwogfQogCi1zdGF0aWMgdm9pZCBhcHBseV9kaXJlY3RvcnlfcmVuYW1lX21vZGlmaWNhdGlvbnMoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCitzdGF0aWMgdm9pZCBhcHBseV9kaXJlY3RvcnlfcmVuYW1lX21vZGlmaWNhdGlvbnMoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKIAkJCQkJCSBzdHJ1Y3QgZGlmZl9maWxlcGFpciAqcGFpciwKIAkJCQkJCSBjaGFyICpuZXdfcGF0aCwKIAkJCQkJCSBzdHJ1Y3QgcmVuYW1lICpyZSwKQEAgLTIzNDgsOCArMjQ1Miw3IEBACiAJCQkJCQkgc3RydWN0IHRyZWUgKm9fdHJlZSwKIAkJCQkJCSBzdHJ1Y3QgdHJlZSAqYV90cmVlLAogCQkJCQkJIHN0cnVjdCB0cmVlICpiX3RyZWUsCi0JCQkJCQkgc3RydWN0IHN0cmluZ19saXN0ICplbnRyaWVzLAotCQkJCQkJIGludCAqY2xlYW4pCisJCQkJCQkgc3RydWN0IHN0cmluZ19saXN0ICplbnRyaWVzKQogewogCXN0cnVjdCBzdHJpbmdfbGlzdF9pdGVtICppdGVtOwogCWludCBzdGFnZSA9ICh0cmVlID09IGFfdHJlZSA/IDIgOiAzKTsKQEAgLTIzNjQsMTEgKzI0NjcsMTEgQEAKIAkgKiBzYXlpbmcgdGhlIGZpbGUgd291bGQgaGF2ZSBiZWVuIG92ZXJ3cml0dGVuKSwgYnV0IGl0IG1pZ2h0CiAJICogYmUgZGlydHksIHRob3VnaC4KIAkgKi8KLQl1cGRhdGVfd2QgPSAhd2FzX2RpcnR5KG8sIHBhaXItPnR3by0+cGF0aCk7CisJdXBkYXRlX3dkID0gIXdhc19kaXJ0eShvcHQsIHBhaXItPnR3by0+cGF0aCk7CiAJaWYgKCF1cGRhdGVfd2QpCi0JCW91dHB1dChvLCAxLCBfKCJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgJXMiKSwKKwkJb3V0cHV0KG9wdCwgMSwgXygiUmVmdXNpbmcgdG8gbG9zZSBkaXJ0eSBmaWxlIGF0ICVzIiksCiAJCSAgICAgICBwYWlyLT50d28tPnBhdGgpOwotCXJlbW92ZV9maWxlKG8sIDEsIHBhaXItPnR3by0+cGF0aCwgIXVwZGF0ZV93ZCk7CisJcmVtb3ZlX2ZpbGUob3B0LCAxLCBwYWlyLT50d28tPnBhdGgsICF1cGRhdGVfd2QpOwogCiAJLyogRmluZCBvciBjcmVhdGUgYSBuZXcgcmUtPmRzdF9lbnRyeSAqLwogCWl0ZW0gPSBzdHJpbmdfbGlzdF9sb29rdXAoZW50cmllcywgbmV3X3BhdGgpOwpAQCAtMjQwMCw3ICsyNTAzLDcgQEAKIAkJaWYgKHBhaXItPnN0YXR1cyA9PSAnUicpCiAJCQlyZS0+ZHN0X2VudHJ5LT5wcm9jZXNzZWQgPSAxOwogCi0JCXJlLT5kc3RfZW50cnkgPSBpbnNlcnRfc3RhZ2VfZGF0YShuZXdfcGF0aCwKKwkJcmUtPmRzdF9lbnRyeSA9IGluc2VydF9zdGFnZV9kYXRhKG9wdC0+cmVwbywgbmV3X3BhdGgsCiAJCQkJCQkgIG9fdHJlZSwgYV90cmVlLCBiX3RyZWUsCiAJCQkJCQkgIGVudHJpZXMpOwogCQlpdGVtID0gc3RyaW5nX2xpc3RfaW5zZXJ0KGVudHJpZXMsIG5ld19wYXRoKTsKQEAgLTI0MjMsMjEgKzI1MjYsMjQgQEAKIAkgKiB0aGUgdmFyaW91cyBoYW5kbGVfcmVuYW1lXyooKSBmdW5jdGlvbnMgdXBkYXRlIHRoZSBpbmRleAogCSAqIGV4cGxpY2l0bHkgcmF0aGVyIHRoYW4gcmVseWluZyBvbiB1bnBhY2tfdHJlZXMoKSB0byBoYXZlIGRvbmUgaXQuCiAJICovCi0JZ2V0X3RyZWVfZW50cnkoJnRyZWUtPm9iamVjdC5vaWQsCisJZ2V0X3RyZWVfZW50cnkob3B0LT5yZXBvLAorCQkgICAgICAgJnRyZWUtPm9iamVjdC5vaWQsCiAJCSAgICAgICBwYWlyLT50d28tPnBhdGgsCiAJCSAgICAgICAmcmUtPmRzdF9lbnRyeS0+c3RhZ2VzW3N0YWdlXS5vaWQsCiAJCSAgICAgICAmcmUtPmRzdF9lbnRyeS0+c3RhZ2VzW3N0YWdlXS5tb2RlKTsKIAotCS8qIFVwZGF0ZSBwYWlyIHN0YXR1cyAqLwotCWlmIChwYWlyLT5zdGF0dXMgPT0gJ0EnKSB7Ci0JCS8qCi0JCSAqIFJlY29yZGluZyByZW5hbWUgaW5mb3JtYXRpb24gZm9yIHRoaXMgYWRkIG1ha2VzIGl0IGxvb2sKLQkJICogbGlrZSBhIHJlbmFtZS9kZWxldGUgY29uZmxpY3QuICBNYWtlIHN1cmUgd2UgY2FuCi0JCSAqIGNvcnJlY3RseSBoYW5kbGUgdGhpcyBhcyBhbiBhZGQgdGhhdCB3YXMgbW92ZWQgdG8gYSBuZXcKLQkJICogZGlyZWN0b3J5IGluc3RlYWQgb2YgcmVwb3J0aW5nIGEgcmVuYW1lL2RlbGV0ZSBjb25mbGljdC4KLQkJICovCi0JCXJlLT5hZGRfdHVybmVkX2ludG9fcmVuYW1lID0gMTsKLQl9CisJLyoKKwkgKiBSZWNvcmQgdGhlIG9yaWdpbmFsIGNoYW5nZSBzdGF0dXMgKG9yICd0eXBlJyBvZiBjaGFuZ2UpLiAgSWYgaXQKKwkgKiB3YXMgb3JpZ2luYWxseSBhbiBhZGQgKCdBJyksIHRoaXMgbGV0cyB1cyBkaWZmZXJlbnRpYXRlIGxhdGVyCisJICogYmV0d2VlbiBhIFJFTkFNRV9ERUxFVEUgY29uZmxpY3QgYW5kIFJFTkFNRV9WSUFfRElSICh0aGV5CisJICogb3RoZXJ3aXNlIGxvb2sgdGhlIHNhbWUpLiAgSWYgaXQgd2FzIG9yaWdpbmFsbHkgYSByZW5hbWUgKCdSJyksCisJICogdGhpcyBsZXRzIHVzIHJlbWVtYmVyIGFuZCByZXBvcnQgYWNjdXJhdGVseSBhYm91dCB0aGUgdHJhbnNpdGl2ZQorCSAqIHJlbmFtaW5nIHRoYXQgb2NjdXJyZWQgdmlhIHRoZSBkaXJlY3RvcnkgcmVuYW1lIGRldGVjdGlvbi4gIEFsc28sCisJICogcmVjb3JkIHRoZSBvcmlnaW5hbCBkZXN0aW5hdGlvbiBuYW1lLgorCSAqLworCXJlLT5kaXJfcmVuYW1lX29yaWdpbmFsX3R5cGUgPSBwYWlyLT5zdGF0dXM7CisJcmUtPmRpcl9yZW5hbWVfb3JpZ2luYWxfZGVzdCA9IHBhaXItPnR3by0+cGF0aDsKKwogCS8qCiAJICogV2UgZG9uJ3QgYWN0dWFsbHkgbG9vayBhdCBwYWlyLT5zdGF0dXMgYWdhaW4sIGJ1dCBpdCBzZWVtcwogCSAqIHBlZGFnb2dpY2FsbHkgY29ycmVjdCB0byBhZGp1c3QgaXQuCkBAIC0yNDU3LDcgKzI1NjMsOCBAQAogICogdG8gYmUgYWJsZSB0byBhc3NvY2lhdGUgdGhlIGNvcnJlY3QgY2FjaGUgZW50cmllcyB3aXRoIHRoZSByZW5hbWUKICAqIGluZm9ybWF0aW9uOyB0cmVlIGlzIGFsd2F5cyBlcXVhbCB0byBlaXRoZXIgYV90cmVlIG9yIGJfdHJlZS4KICAqLwotc3RhdGljIHN0cnVjdCBzdHJpbmdfbGlzdCAqZ2V0X3JlbmFtZXMoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCitzdGF0aWMgc3RydWN0IHN0cmluZ19saXN0ICpnZXRfcmVuYW1lcyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAorCQkJCSAgICAgICBjb25zdCBjaGFyICpicmFuY2gsCiAJCQkJICAgICAgIHN0cnVjdCBkaWZmX3F1ZXVlX3N0cnVjdCAqcGFpcnMsCiAJCQkJICAgICAgIHN0cnVjdCBoYXNobWFwICpkaXJfcmVuYW1lcywKIAkJCQkgICAgICAgc3RydWN0IGhhc2htYXAgKmRpcl9yZW5hbWVfZXhjbHVzaW9ucywKQEAgLTI0ODcsNyArMjU5NCw3IEBACiAJCQlkaWZmX2ZyZWVfZmlsZXBhaXIocGFpcik7CiAJCQljb250aW51ZTsKIAkJfQotCQluZXdfcGF0aCA9IGNoZWNrX2Zvcl9kaXJlY3RvcnlfcmVuYW1lKG8sIHBhaXItPnR3by0+cGF0aCwgdHJlZSwKKwkJbmV3X3BhdGggPSBjaGVja19mb3JfZGlyZWN0b3J5X3JlbmFtZShvcHQsIHBhaXItPnR3by0+cGF0aCwgdHJlZSwKIAkJCQkJCSAgICAgIGRpcl9yZW5hbWVzLAogCQkJCQkJICAgICAgZGlyX3JlbmFtZV9leGNsdXNpb25zLAogCQkJCQkJICAgICAgJmNvbGxpc2lvbnMsCkBAIC0yNDk5LDQxICsyNjA2LDQ0IEBACiAKIAkJcmUgPSB4bWFsbG9jKHNpemVvZigqcmUpKTsKIAkJcmUtPnByb2Nlc3NlZCA9IDA7Ci0JCXJlLT5hZGRfdHVybmVkX2ludG9fcmVuYW1lID0gMDsKIAkJcmUtPnBhaXIgPSBwYWlyOworCQlyZS0+YnJhbmNoID0gYnJhbmNoOworCQlyZS0+ZGlyX3JlbmFtZV9vcmlnaW5hbF90eXBlID0gJ1wwJzsKKwkJcmUtPmRpcl9yZW5hbWVfb3JpZ2luYWxfZGVzdCA9IE5VTEw7CiAJCWl0ZW0gPSBzdHJpbmdfbGlzdF9sb29rdXAoZW50cmllcywgcmUtPnBhaXItPm9uZS0+cGF0aCk7CiAJCWlmICghaXRlbSkKLQkJCXJlLT5zcmNfZW50cnkgPSBpbnNlcnRfc3RhZ2VfZGF0YShyZS0+cGFpci0+b25lLT5wYXRoLAorCQkJcmUtPnNyY19lbnRyeSA9IGluc2VydF9zdGFnZV9kYXRhKG9wdC0+cmVwbywKKwkJCQkJcmUtPnBhaXItPm9uZS0+cGF0aCwKIAkJCQkJb190cmVlLCBhX3RyZWUsIGJfdHJlZSwgZW50cmllcyk7CiAJCWVsc2UKIAkJCXJlLT5zcmNfZW50cnkgPSBpdGVtLT51dGlsOwogCiAJCWl0ZW0gPSBzdHJpbmdfbGlzdF9sb29rdXAoZW50cmllcywgcmUtPnBhaXItPnR3by0+cGF0aCk7CiAJCWlmICghaXRlbSkKLQkJCXJlLT5kc3RfZW50cnkgPSBpbnNlcnRfc3RhZ2VfZGF0YShyZS0+cGFpci0+dHdvLT5wYXRoLAorCQkJcmUtPmRzdF9lbnRyeSA9IGluc2VydF9zdGFnZV9kYXRhKG9wdC0+cmVwbywKKwkJCQkJcmUtPnBhaXItPnR3by0+cGF0aCwKIAkJCQkJb190cmVlLCBhX3RyZWUsIGJfdHJlZSwgZW50cmllcyk7CiAJCWVsc2UKIAkJCXJlLT5kc3RfZW50cnkgPSBpdGVtLT51dGlsOwogCQlpdGVtID0gc3RyaW5nX2xpc3RfaW5zZXJ0KHJlbmFtZXMsIHBhaXItPm9uZS0+cGF0aCk7CiAJCWl0ZW0tPnV0aWwgPSByZTsKIAkJaWYgKG5ld19wYXRoKQotCQkJYXBwbHlfZGlyZWN0b3J5X3JlbmFtZV9tb2RpZmljYXRpb25zKG8sIHBhaXIsIG5ld19wYXRoLAorCQkJYXBwbHlfZGlyZWN0b3J5X3JlbmFtZV9tb2RpZmljYXRpb25zKG9wdCwgcGFpciwgbmV3X3BhdGgsCiAJCQkJCQkJICAgICByZSwgdHJlZSwgb190cmVlLAogCQkJCQkJCSAgICAgYV90cmVlLCBiX3RyZWUsCi0JCQkJCQkJICAgICBlbnRyaWVzLAotCQkJCQkJCSAgICAgY2xlYW5fbWVyZ2UpOworCQkJCQkJCSAgICAgZW50cmllcyk7CiAJfQogCi0JaGFzaG1hcF9pdGVyX2luaXQoJmNvbGxpc2lvbnMsICZpdGVyKTsKLQl3aGlsZSAoKGUgPSBoYXNobWFwX2l0ZXJfbmV4dCgmaXRlcikpKSB7CisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeSgmY29sbGlzaW9ucywgJml0ZXIsIGUsCisJCQkJZW50IC8qIG1lbWJlciBuYW1lICovKSB7CiAJCWZyZWUoZS0+dGFyZ2V0X2ZpbGUpOwogCQlzdHJpbmdfbGlzdF9jbGVhcigmZS0+c291cmNlX2ZpbGVzLCAwKTsKIAl9Ci0JaGFzaG1hcF9mcmVlKCZjb2xsaXNpb25zLCAxKTsKKwloYXNobWFwX2ZyZWVfZW50cmllcygmY29sbGlzaW9ucywgc3RydWN0IGNvbGxpc2lvbl9lbnRyeSwgZW50KTsKIAlyZXR1cm4gcmVuYW1lczsKIH0KIAotc3RhdGljIGludCBwcm9jZXNzX3JlbmFtZXMoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCitzdGF0aWMgaW50IHByb2Nlc3NfcmVuYW1lcyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAogCQkJICAgc3RydWN0IHN0cmluZ19saXN0ICphX3JlbmFtZXMsCiAJCQkgICBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmJfcmVuYW1lcykKIHsKQEAgLTI1NTYsNyArMjY2Niw2IEBACiAJZm9yIChpID0gMCwgaiA9IDA7IGkgPCBhX3JlbmFtZXMtPm5yIHx8IGogPCBiX3JlbmFtZXMtPm5yOykgewogCQlzdHJ1Y3Qgc3RyaW5nX2xpc3QgKnJlbmFtZXMxLCAqcmVuYW1lczJEc3Q7CiAJCXN0cnVjdCByZW5hbWUgKnJlbjEgPSBOVUxMLCAqcmVuMiA9IE5VTEw7Ci0JCWNvbnN0IGNoYXIgKmJyYW5jaDEsICpicmFuY2gyOwogCQljb25zdCBjaGFyICpyZW4xX3NyYywgKnJlbjFfZHN0OwogCQlzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqbG9va3VwOwogCkBAIC0yNTc3LDEzICsyNjg2LDkgQEAKIAkJaWYgKHJlbjEpIHsKIAkJCXJlbmFtZXMxID0gYV9yZW5hbWVzOwogCQkJcmVuYW1lczJEc3QgPSAmYl9ieV9kc3Q7Ci0JCQlicmFuY2gxID0gby0+YnJhbmNoMTsKLQkJCWJyYW5jaDIgPSBvLT5icmFuY2gyOwogCQl9IGVsc2UgewogCQkJcmVuYW1lczEgPSBiX3JlbmFtZXM7CiAJCQlyZW5hbWVzMkRzdCA9ICZhX2J5X2RzdDsKLQkJCWJyYW5jaDEgPSBvLT5icmFuY2gyOwotCQkJYnJhbmNoMiA9IG8tPmJyYW5jaDE7CiAJCQlTV0FQKHJlbjIsIHJlbjEpOwogCQl9CiAKQEAgLTI2MTcsMjIgKzI3MjIsMTMgQEAKIAkJCQkgKiB0aGUgYmFzZSBzdGFnZSAodGhpbmsgb2YgcmVuYW1lICsKIAkJCQkgKiBhZGQtc291cmNlIGNhc2VzKS4KIAkJCQkgKi8KLQkJCQlyZW1vdmVfZmlsZShvLCAxLCByZW4xX3NyYywgMSk7CisJCQkJcmVtb3ZlX2ZpbGUob3B0LCAxLCByZW4xX3NyYywgMSk7CiAJCQkJdXBkYXRlX2VudHJ5KHJlbjEtPmRzdF9lbnRyeSwKIAkJCQkJICAgICByZW4xLT5wYWlyLT5vbmUsCiAJCQkJCSAgICAgcmVuMS0+cGFpci0+dHdvLAogCQkJCQkgICAgIHJlbjItPnBhaXItPnR3byk7CiAJCQl9Ci0JCQlzZXR1cF9yZW5hbWVfY29uZmxpY3RfaW5mbyhyZW5hbWVfdHlwZSwKLQkJCQkJCSAgIHJlbjEtPnBhaXIsCi0JCQkJCQkgICByZW4yLT5wYWlyLAotCQkJCQkJICAgYnJhbmNoMSwKLQkJCQkJCSAgIGJyYW5jaDIsCi0JCQkJCQkgICByZW4xLT5kc3RfZW50cnksCi0JCQkJCQkgICByZW4yLT5kc3RfZW50cnksCi0JCQkJCQkgICBvLAotCQkJCQkJICAgTlVMTCwKLQkJCQkJCSAgIE5VTEwpOworCQkJc2V0dXBfcmVuYW1lX2NvbmZsaWN0X2luZm8ocmVuYW1lX3R5cGUsIG9wdCwgcmVuMSwgcmVuMik7CiAJCX0gZWxzZSBpZiAoKGxvb2t1cCA9IHN0cmluZ19saXN0X2xvb2t1cChyZW5hbWVzMkRzdCwgcmVuMV9kc3QpKSkgewogCQkJLyogVHdvIGRpZmZlcmVudCBmaWxlcyByZW5hbWVkIHRvIHRoZSBzYW1lIHRoaW5nICovCiAJCQljaGFyICpyZW4yX2RzdDsKQEAgLTI2NTEsMTYgKzI3NDcsNyBAQAogCQkJcmVuMi0+c3JjX2VudHJ5LT5wcm9jZXNzZWQgPSAxOwogCiAJCQlzZXR1cF9yZW5hbWVfY29uZmxpY3RfaW5mbyhSRU5BTUVfVFdPX0ZJTEVTX1RPX09ORSwKLQkJCQkJCSAgIHJlbjEtPnBhaXIsCi0JCQkJCQkgICByZW4yLT5wYWlyLAotCQkJCQkJICAgYnJhbmNoMSwKLQkJCQkJCSAgIGJyYW5jaDIsCi0JCQkJCQkgICByZW4xLT5kc3RfZW50cnksCi0JCQkJCQkgICByZW4yLT5kc3RfZW50cnksCi0JCQkJCQkgICBvLAotCQkJCQkJICAgcmVuMS0+c3JjX2VudHJ5LAotCQkJCQkJICAgcmVuMi0+c3JjX2VudHJ5KTsKLQorCQkJCQkJICAgb3B0LCByZW4xLCByZW4yKTsKIAkJfSBlbHNlIHsKIAkJCS8qIFJlbmFtZWQgaW4gMSwgbWF5YmUgY2hhbmdlZCBpbiAyICovCiAJCQkvKiB3ZSBvbmx5IHVzZSBzaGExIGFuZCBtb2RlIG9mIHRoZXNlICovCkBAIC0yNjgwLDggKzI3NjcsOCBAQAogCQkJICogc3RhZ2UgYW5kIGluIG90aGVyX3N0YWdlICh0aGluayBvZiByZW5hbWUgKwogCQkJICogYWRkLXNvdXJjZSBjYXNlKS4KIAkJCSAqLwotCQkJcmVtb3ZlX2ZpbGUobywgMSwgcmVuMV9zcmMsCi0JCQkJICAgIHJlbmFtZWRfc3RhZ2UgPT0gMiB8fCAhd2FzX3RyYWNrZWQobywgcmVuMV9zcmMpKTsKKwkJCXJlbW92ZV9maWxlKG9wdCwgMSwgcmVuMV9zcmMsCisJCQkJICAgIHJlbmFtZWRfc3RhZ2UgPT0gMiB8fCAhd2FzX3RyYWNrZWQob3B0LCByZW4xX3NyYykpOwogCiAJCQlvaWRjcHkoJnNyY19vdGhlci5vaWQsCiAJCQkgICAgICAgJnJlbjEtPnNyY19lbnRyeS0+c3RhZ2VzW290aGVyX3N0YWdlXS5vaWQpOwpAQCAtMjY5MSwzMSArMjc3OCwxNSBAQAogCQkJZHN0X290aGVyLm1vZGUgPSByZW4xLT5kc3RfZW50cnktPnN0YWdlc1tvdGhlcl9zdGFnZV0ubW9kZTsKIAkJCXRyeV9tZXJnZSA9IDA7CiAKLQkJCWlmIChvaWRfZXEoJnNyY19vdGhlci5vaWQsICZudWxsX29pZCkgJiYKLQkJCSAgICByZW4xLT5hZGRfdHVybmVkX2ludG9fcmVuYW1lKSB7CisJCQlpZiAob2lkZXEoJnNyY19vdGhlci5vaWQsICZudWxsX29pZCkgJiYKKwkJCSAgICByZW4xLT5kaXJfcmVuYW1lX29yaWdpbmFsX3R5cGUgPT0gJ0EnKSB7CiAJCQkJc2V0dXBfcmVuYW1lX2NvbmZsaWN0X2luZm8oUkVOQU1FX1ZJQV9ESVIsCi0JCQkJCQkJICAgcmVuMS0+cGFpciwKLQkJCQkJCQkgICBOVUxMLAotCQkJCQkJCSAgIGJyYW5jaDEsCi0JCQkJCQkJICAgYnJhbmNoMiwKLQkJCQkJCQkgICByZW4xLT5kc3RfZW50cnksCi0JCQkJCQkJICAgTlVMTCwKLQkJCQkJCQkgICBvLAotCQkJCQkJCSAgIE5VTEwsCi0JCQkJCQkJICAgTlVMTCk7Ci0JCQl9IGVsc2UgaWYgKG9pZF9lcSgmc3JjX290aGVyLm9pZCwgJm51bGxfb2lkKSkgeworCQkJCQkJCSAgIG9wdCwgcmVuMSwgTlVMTCk7CisJCQl9IGVsc2UgaWYgKG9pZGVxKCZzcmNfb3RoZXIub2lkLCAmbnVsbF9vaWQpKSB7CiAJCQkJc2V0dXBfcmVuYW1lX2NvbmZsaWN0X2luZm8oUkVOQU1FX0RFTEVURSwKLQkJCQkJCQkgICByZW4xLT5wYWlyLAotCQkJCQkJCSAgIE5VTEwsCi0JCQkJCQkJICAgYnJhbmNoMSwKLQkJCQkJCQkgICBicmFuY2gyLAotCQkJCQkJCSAgIHJlbjEtPmRzdF9lbnRyeSwKLQkJCQkJCQkgICBOVUxMLAotCQkJCQkJCSAgIG8sCi0JCQkJCQkJICAgTlVMTCwKLQkJCQkJCQkgICBOVUxMKTsKKwkJCQkJCQkgICBvcHQsIHJlbjEsIE5VTEwpOwogCQkJfSBlbHNlIGlmICgoZHN0X290aGVyLm1vZGUgPT0gcmVuMS0+cGFpci0+dHdvLT5tb2RlKSAmJgotCQkJCSAgIG9pZF9lcSgmZHN0X290aGVyLm9pZCwgJnJlbjEtPnBhaXItPnR3by0+b2lkKSkgeworCQkJCSAgIG9pZGVxKCZkc3Rfb3RoZXIub2lkLCAmcmVuMS0+cGFpci0+dHdvLT5vaWQpKSB7CiAJCQkJLyoKIAkJCQkgKiBBZGRlZCBmaWxlIG9uIHRoZSBvdGhlciBzaWRlIGlkZW50aWNhbCB0bwogCQkJCSAqIHRoZSBmaWxlIGJlaW5nIHJlbmFtZWQ6IGNsZWFuIG1lcmdlLgpAQCAtMjcyNCw2NSArMjc5NSwzMiBAQAogCQkJCSAqIHVwZGF0ZV9maWxlX2ZsYWdzKCkgaW5zdGVhZCBvZgogCQkJCSAqIHVwZGF0ZV9maWxlKCkuCiAJCQkJICovCi0JCQkJaWYgKHVwZGF0ZV9maWxlX2ZsYWdzKG8sCi0JCQkJCQkgICAgICAmcmVuMS0+cGFpci0+dHdvLT5vaWQsCi0JCQkJCQkgICAgICByZW4xLT5wYWlyLT50d28tPm1vZGUsCisJCQkJaWYgKHVwZGF0ZV9maWxlX2ZsYWdzKG9wdCwKKwkJCQkJCSAgICAgIHJlbjEtPnBhaXItPnR3bywKIAkJCQkJCSAgICAgIHJlbjFfZHN0LAogCQkJCQkJICAgICAgMSwgLyogdXBkYXRlX2NhY2hlICovCiAJCQkJCQkgICAgICAwICAvKiB1cGRhdGVfd2QgICAgKi8pKQogCQkJCQljbGVhbl9tZXJnZSA9IC0xOwotCQkJfSBlbHNlIGlmICghb2lkX2VxKCZkc3Rfb3RoZXIub2lkLCAmbnVsbF9vaWQpKSB7Ci0JCQkJY2xlYW5fbWVyZ2UgPSAwOwotCQkJCXRyeV9tZXJnZSA9IDE7Ci0JCQkJb3V0cHV0KG8sIDEsIF8oIkNPTkZMSUNUIChyZW5hbWUvYWRkKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gIgotCQkJCSAgICAgICAiJXMgYWRkZWQgaW4gJXMiKSwKLQkJCQkgICAgICAgcmVuMV9zcmMsIHJlbjFfZHN0LCBicmFuY2gxLAotCQkJCSAgICAgICByZW4xX2RzdCwgYnJhbmNoMik7Ci0JCQkJaWYgKG8tPmNhbGxfZGVwdGgpIHsKLQkJCQkJc3RydWN0IG1lcmdlX2ZpbGVfaW5mbyBtZmk7Ci0JCQkJCXN0cnVjdCBkaWZmX2ZpbGVzcGVjIG9uZSwgYSwgYjsKLQotCQkJCQlvaWRjcHkoJm9uZS5vaWQsICZudWxsX29pZCk7Ci0JCQkJCW9uZS5tb2RlID0gMDsKLQkJCQkJb25lLnBhdGggPSByZW4xLT5wYWlyLT50d28tPnBhdGg7Ci0KLQkJCQkJb2lkY3B5KCZhLm9pZCwgJnJlbjEtPnBhaXItPnR3by0+b2lkKTsKLQkJCQkJYS5tb2RlID0gcmVuMS0+cGFpci0+dHdvLT5tb2RlOwotCQkJCQlhLnBhdGggPSBvbmUucGF0aDsKLQotCQkJCQlvaWRjcHkoJmIub2lkLCAmZHN0X290aGVyLm9pZCk7Ci0JCQkJCWIubW9kZSA9IGRzdF9vdGhlci5tb2RlOwotCQkJCQliLnBhdGggPSBvbmUucGF0aDsKLQotCQkJCQlpZiAobWVyZ2VfbW9kZV9hbmRfY29udGVudHMobywgJm9uZSwgJmEsICZiLCByZW4xX2RzdCwKLQkJCQkJCQkJICAgIGJyYW5jaDEsIGJyYW5jaDIsCi0JCQkJCQkJCSAgICAmbWZpKSkgewotCQkJCQkJY2xlYW5fbWVyZ2UgPSAtMTsKLQkJCQkJCWdvdG8gY2xlYW51cF9hbmRfcmV0dXJuOwotCQkJCQl9Ci0JCQkJCW91dHB1dChvLCAxLCBfKCJBZGRpbmcgbWVyZ2VkICVzIiksIHJlbjFfZHN0KTsKLQkJCQkJaWYgKHVwZGF0ZV9maWxlKG8sIDAsICZtZmkub2lkLAotCQkJCQkJCW1maS5tb2RlLCByZW4xX2RzdCkpCi0JCQkJCQljbGVhbl9tZXJnZSA9IC0xOwotCQkJCQl0cnlfbWVyZ2UgPSAwOwotCQkJCX0gZWxzZSB7Ci0JCQkJCWNoYXIgKm5ld19wYXRoID0gdW5pcXVlX3BhdGgobywgcmVuMV9kc3QsIGJyYW5jaDIpOwotCQkJCQlvdXRwdXQobywgMSwgXygiQWRkaW5nIGFzICVzIGluc3RlYWQiKSwgbmV3X3BhdGgpOwotCQkJCQlpZiAodXBkYXRlX2ZpbGUobywgMCwgJmRzdF9vdGhlci5vaWQsCi0JCQkJCQkJZHN0X290aGVyLm1vZGUsIG5ld19wYXRoKSkKLQkJCQkJCWNsZWFuX21lcmdlID0gLTE7Ci0JCQkJCWZyZWUobmV3X3BhdGgpOwotCQkJCX0KKwkJCX0gZWxzZSBpZiAoIW9pZGVxKCZkc3Rfb3RoZXIub2lkLCAmbnVsbF9vaWQpKSB7CisJCQkJLyoKKwkJCQkgKiBQcm9iYWJseSBub3QgYSBjbGVhbiBtZXJnZSwgYnV0IGl0J3MKKwkJCQkgKiBwcmVtYXR1cmUgdG8gc2V0IGNsZWFuX21lcmdlIHRvIDAgaGVyZSwKKwkJCQkgKiBiZWNhdXNlIGlmIHRoZSByZW5hbWUgbWVyZ2VzIGNsZWFubHkgYW5kCisJCQkJICogdGhlIG1lcmdlIGV4YWN0bHkgbWF0Y2hlcyB0aGUgbmV3bHkgYWRkZWQKKwkJCQkgKiBmaWxlLCB0aGVuIHRoZSBtZXJnZSB3aWxsIGJlIGNsZWFuLgorCQkJCSAqLworCQkJCXNldHVwX3JlbmFtZV9jb25mbGljdF9pbmZvKFJFTkFNRV9BREQsCisJCQkJCQkJICAgb3B0LCByZW4xLCBOVUxMKTsKIAkJCX0gZWxzZQogCQkJCXRyeV9tZXJnZSA9IDE7CiAKIAkJCWlmIChjbGVhbl9tZXJnZSA8IDApCiAJCQkJZ290byBjbGVhbnVwX2FuZF9yZXR1cm47CiAJCQlpZiAodHJ5X21lcmdlKSB7Ci0JCQkJc3RydWN0IGRpZmZfZmlsZXNwZWMgKm9uZSwgKmEsICpiOworCQkJCXN0cnVjdCBkaWZmX2ZpbGVzcGVjICpvLCAqYSwgKmI7CiAJCQkJc3JjX290aGVyLnBhdGggPSAoY2hhciAqKXJlbjFfc3JjOwogCi0JCQkJb25lID0gcmVuMS0+cGFpci0+b25lOworCQkJCW8gPSByZW4xLT5wYWlyLT5vbmU7CiAJCQkJaWYgKGFfcmVuYW1lcyA9PSByZW5hbWVzMSkgewogCQkJCQlhID0gcmVuMS0+cGFpci0+dHdvOwogCQkJCQliID0gJnNyY19vdGhlcjsKQEAgLTI3OTAsMTcgKzI4MjgsOSBAQAogCQkJCQliID0gcmVuMS0+cGFpci0+dHdvOwogCQkJCQlhID0gJnNyY19vdGhlcjsKIAkJCQl9Ci0JCQkJdXBkYXRlX2VudHJ5KHJlbjEtPmRzdF9lbnRyeSwgb25lLCBhLCBiKTsKKwkJCQl1cGRhdGVfZW50cnkocmVuMS0+ZHN0X2VudHJ5LCBvLCBhLCBiKTsKIAkJCQlzZXR1cF9yZW5hbWVfY29uZmxpY3RfaW5mbyhSRU5BTUVfTk9STUFMLAotCQkJCQkJCSAgIHJlbjEtPnBhaXIsCi0JCQkJCQkJICAgTlVMTCwKLQkJCQkJCQkgICBicmFuY2gxLAotCQkJCQkJCSAgIE5VTEwsCi0JCQkJCQkJICAgcmVuMS0+ZHN0X2VudHJ5LAotCQkJCQkJCSAgIE5VTEwsCi0JCQkJCQkJICAgbywKLQkJCQkJCQkgICBOVUxMLAotCQkJCQkJCSAgIE5VTEwpOworCQkJCQkJCSAgIG9wdCwgcmVuMSwgTlVMTCk7CiAJCQl9CiAJCX0KIAl9CkBAIC0yODIyLDIwICsyODUyLDIwIEBACiAJc3RydWN0IGhhc2htYXBfaXRlciBpdGVyOwogCXN0cnVjdCBkaXJfcmVuYW1lX2VudHJ5ICplOwogCi0JaGFzaG1hcF9pdGVyX2luaXQoZGlyX3JlbmFtZXMsICZpdGVyKTsKLQl3aGlsZSAoKGUgPSBoYXNobWFwX2l0ZXJfbmV4dCgmaXRlcikpKSB7CisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeShkaXJfcmVuYW1lcywgJml0ZXIsIGUsCisJCQkJZW50IC8qIG1lbWJlciBuYW1lICovKSB7CiAJCWZyZWUoZS0+ZGlyKTsKIAkJc3RyYnVmX3JlbGVhc2UoJmUtPm5ld19kaXIpOwogCQkvKiBwb3NzaWJsZV9uZXdfZGlycyBhbHJlYWR5IGNsZWFyZWQgaW4gZ2V0X2RpcmVjdG9yeV9yZW5hbWVzICovCiAJfQotCWhhc2htYXBfZnJlZShkaXJfcmVuYW1lcywgMSk7CisJaGFzaG1hcF9mcmVlX2VudHJpZXMoZGlyX3JlbmFtZXMsIHN0cnVjdCBkaXJfcmVuYW1lX2VudHJ5LCBlbnQpOwogCWZyZWUoZGlyX3JlbmFtZXMpOwogCiAJZnJlZShwYWlycy0+cXVldWUpOwogCWZyZWUocGFpcnMpOwogfQogCi1zdGF0aWMgaW50IGRldGVjdF9hbmRfcHJvY2Vzc19yZW5hbWVzKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLAorc3RhdGljIGludCBkZXRlY3RfYW5kX3Byb2Nlc3NfcmVuYW1lcyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAogCQkJCSAgICAgIHN0cnVjdCB0cmVlICpjb21tb24sCiAJCQkJICAgICAgc3RydWN0IHRyZWUgKmhlYWQsCiAJCQkJICAgICAgc3RydWN0IHRyZWUgKm1lcmdlLApAQCAtMjg0OSwxNyArMjg3OSwxOSBAQAogCXJpLT5oZWFkX3JlbmFtZXMgPSBOVUxMOwogCXJpLT5tZXJnZV9yZW5hbWVzID0gTlVMTDsKIAotCWlmICghbWVyZ2VfZGV0ZWN0X3JlbmFtZShvKSkKKwlpZiAoIW1lcmdlX2RldGVjdF9yZW5hbWUob3B0KSkKIAkJcmV0dXJuIDE7CiAKLQloZWFkX3BhaXJzID0gZ2V0X2RpZmZwYWlycyhvLCBjb21tb24sIGhlYWQpOwotCW1lcmdlX3BhaXJzID0gZ2V0X2RpZmZwYWlycyhvLCBjb21tb24sIG1lcmdlKTsKKwloZWFkX3BhaXJzID0gZ2V0X2RpZmZwYWlycyhvcHQsIGNvbW1vbiwgaGVhZCk7CisJbWVyZ2VfcGFpcnMgPSBnZXRfZGlmZnBhaXJzKG9wdCwgY29tbW9uLCBtZXJnZSk7CiAKLQlpZiAoby0+ZGV0ZWN0X2RpcmVjdG9yeV9yZW5hbWVzKSB7Ci0JCWRpcl9yZV9oZWFkID0gZ2V0X2RpcmVjdG9yeV9yZW5hbWVzKGhlYWRfcGFpcnMsIGhlYWQpOwotCQlkaXJfcmVfbWVyZ2UgPSBnZXRfZGlyZWN0b3J5X3JlbmFtZXMobWVyZ2VfcGFpcnMsIG1lcmdlKTsKKwlpZiAoKG9wdC0+ZGV0ZWN0X2RpcmVjdG9yeV9yZW5hbWVzID09IE1FUkdFX0RJUkVDVE9SWV9SRU5BTUVTX1RSVUUpIHx8CisJICAgIChvcHQtPmRldGVjdF9kaXJlY3RvcnlfcmVuYW1lcyA9PSBNRVJHRV9ESVJFQ1RPUllfUkVOQU1FU19DT05GTElDVCAmJgorCSAgICAgIW9wdC0+cHJpdi0+Y2FsbF9kZXB0aCkpIHsKKwkJZGlyX3JlX2hlYWQgPSBnZXRfZGlyZWN0b3J5X3JlbmFtZXMoaGVhZF9wYWlycyk7CisJCWRpcl9yZV9tZXJnZSA9IGdldF9kaXJlY3RvcnlfcmVuYW1lcyhtZXJnZV9wYWlycyk7CiAKLQkJaGFuZGxlX2RpcmVjdG9yeV9sZXZlbF9jb25mbGljdHMobywKKwkJaGFuZGxlX2RpcmVjdG9yeV9sZXZlbF9jb25mbGljdHMob3B0LAogCQkJCQkJIGRpcl9yZV9oZWFkLCBoZWFkLAogCQkJCQkJIGRpcl9yZV9tZXJnZSwgbWVyZ2UpOwogCX0gZWxzZSB7CkBAIC0yODY5LDE5ICsyOTAxLDE5IEBACiAJCWRpcl9yZW5hbWVfaW5pdChkaXJfcmVfbWVyZ2UpOwogCX0KIAotCXJpLT5oZWFkX3JlbmFtZXMgID0gZ2V0X3JlbmFtZXMobywgaGVhZF9wYWlycywKKwlyaS0+aGVhZF9yZW5hbWVzICA9IGdldF9yZW5hbWVzKG9wdCwgb3B0LT5icmFuY2gxLCBoZWFkX3BhaXJzLAogCQkJCQlkaXJfcmVfbWVyZ2UsIGRpcl9yZV9oZWFkLCBoZWFkLAogCQkJCQljb21tb24sIGhlYWQsIG1lcmdlLCBlbnRyaWVzLAogCQkJCQkmY2xlYW4pOwogCWlmIChjbGVhbiA8IDApCiAJCWdvdG8gY2xlYW51cDsKLQlyaS0+bWVyZ2VfcmVuYW1lcyA9IGdldF9yZW5hbWVzKG8sIG1lcmdlX3BhaXJzLAorCXJpLT5tZXJnZV9yZW5hbWVzID0gZ2V0X3JlbmFtZXMob3B0LCBvcHQtPmJyYW5jaDIsIG1lcmdlX3BhaXJzLAogCQkJCQlkaXJfcmVfaGVhZCwgZGlyX3JlX21lcmdlLCBtZXJnZSwKIAkJCQkJY29tbW9uLCBoZWFkLCBtZXJnZSwgZW50cmllcywKIAkJCQkJJmNsZWFuKTsKIAlpZiAoY2xlYW4gPCAwKQogCQlnb3RvIGNsZWFudXA7Ci0JY2xlYW4gJj0gcHJvY2Vzc19yZW5hbWVzKG8sIHJpLT5oZWFkX3JlbmFtZXMsIHJpLT5tZXJnZV9yZW5hbWVzKTsKKwljbGVhbiAmPSBwcm9jZXNzX3JlbmFtZXMob3B0LCByaS0+aGVhZF9yZW5hbWVzLCByaS0+bWVyZ2VfcmVuYW1lcyk7CiAKIGNsZWFudXA6CiAJLyoKQEAgLTI5MTcsMTIgKzI5NDksNyBAQAogCWZpbmFsX2NsZWFudXBfcmVuYW1lKHJlX2luZm8tPm1lcmdlX3JlbmFtZXMpOwogfQogCi1zdGF0aWMgc3RydWN0IG9iamVjdF9pZCAqc3RhZ2Vfb2lkKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgdW5zaWduZWQgbW9kZSkKLXsKLQlyZXR1cm4gKGlzX251bGxfb2lkKG9pZCkgfHwgbW9kZSA9PSAwKSA/IE5VTEw6IChzdHJ1Y3Qgb2JqZWN0X2lkICopb2lkOwotfQotCi1zdGF0aWMgaW50IHJlYWRfb2lkX3N0cmJ1ZihzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywKK3N0YXRpYyBpbnQgcmVhZF9vaWRfc3RyYnVmKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCiAJCQkgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCiAJCQkgICBzdHJ1Y3Qgc3RyYnVmICpkc3QpCiB7CkBAIC0yOTMxLDEyOSArMjk1OCw5OSBAQAogCXVuc2lnbmVkIGxvbmcgc2l6ZTsKIAlidWYgPSByZWFkX29iamVjdF9maWxlKG9pZCwgJnR5cGUsICZzaXplKTsKIAlpZiAoIWJ1ZikKLQkJcmV0dXJuIGVycihvLCBfKCJjYW5ub3QgcmVhZCBvYmplY3QgJXMiKSwgb2lkX3RvX2hleChvaWQpKTsKKwkJcmV0dXJuIGVycihvcHQsIF8oImNhbm5vdCByZWFkIG9iamVjdCAlcyIpLCBvaWRfdG9faGV4KG9pZCkpOwogCWlmICh0eXBlICE9IE9CSl9CTE9CKSB7CiAJCWZyZWUoYnVmKTsKLQkJcmV0dXJuIGVycihvLCBfKCJvYmplY3QgJXMgaXMgbm90IGEgYmxvYiIpLCBvaWRfdG9faGV4KG9pZCkpOworCQlyZXR1cm4gZXJyKG9wdCwgXygib2JqZWN0ICVzIGlzIG5vdCBhIGJsb2IiKSwgb2lkX3RvX2hleChvaWQpKTsKIAl9CiAJc3RyYnVmX2F0dGFjaChkc3QsIGJ1Ziwgc2l6ZSwgc2l6ZSArIDEpOwogCXJldHVybiAwOwogfQogCiBzdGF0aWMgaW50IGJsb2JfdW5jaGFuZ2VkKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCi0JCQkgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9fb2lkLAotCQkJICB1bnNpZ25lZCBvX21vZGUsCi0JCQkgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmFfb2lkLAotCQkJICB1bnNpZ25lZCBhX21vZGUsCisJCQkgIGNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpvLAorCQkJICBjb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqYSwKIAkJCSAgaW50IHJlbm9ybWFsaXplLCBjb25zdCBjaGFyICpwYXRoKQogewotCXN0cnVjdCBzdHJidWYgbyA9IFNUUkJVRl9JTklUOwotCXN0cnVjdCBzdHJidWYgYSA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBzdHJidWYgb2J1ZiA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBzdHJidWYgYWJ1ZiA9IFNUUkJVRl9JTklUOwogCWludCByZXQgPSAwOyAvKiBhc3N1bWUgY2hhbmdlZCBmb3Igc2FmZXR5ICovCisJY29uc3Qgc3RydWN0IGluZGV4X3N0YXRlICppZHggPSBvcHQtPnJlcG8tPmluZGV4OwogCi0JaWYgKGFfbW9kZSAhPSBvX21vZGUpCisJaWYgKGEtPm1vZGUgIT0gby0+bW9kZSkKIAkJcmV0dXJuIDA7Ci0JaWYgKG9pZF9lcShvX29pZCwgYV9vaWQpKQorCWlmIChvaWRlcSgmby0+b2lkLCAmYS0+b2lkKSkKIAkJcmV0dXJuIDE7CiAJaWYgKCFyZW5vcm1hbGl6ZSkKIAkJcmV0dXJuIDA7CiAKLQlhc3NlcnQob19vaWQgJiYgYV9vaWQpOwotCWlmIChyZWFkX29pZF9zdHJidWYob3B0LCBvX29pZCwgJm8pIHx8IHJlYWRfb2lkX3N0cmJ1ZihvcHQsIGFfb2lkLCAmYSkpCisJaWYgKHJlYWRfb2lkX3N0cmJ1ZihvcHQsICZvLT5vaWQsICZvYnVmKSB8fAorCSAgICByZWFkX29pZF9zdHJidWYob3B0LCAmYS0+b2lkLCAmYWJ1ZikpCiAJCWdvdG8gZXJyb3JfcmV0dXJuOwogCS8qCiAJICogTm90ZTogYmluYXJ5IHwgaXMgdXNlZCBzbyB0aGF0IGJvdGggcmVub3JtYWxpemF0aW9ucyBhcmUKIAkgKiBwZXJmb3JtZWQuICBDb21wYXJpc29uIGNhbiBiZSBza2lwcGVkIGlmIGJvdGggZmlsZXMgYXJlCiAJICogdW5jaGFuZ2VkIHNpbmNlIHRoZWlyIHNoYTFzIGhhdmUgYWxyZWFkeSBiZWVuIGNvbXBhcmVkLgogCSAqLwotCWlmIChyZW5vcm1hbGl6ZV9idWZmZXIoJnRoZV9pbmRleCwgcGF0aCwgby5idWYsIG8ubGVuLCAmbykgfAotCSAgICByZW5vcm1hbGl6ZV9idWZmZXIoJnRoZV9pbmRleCwgcGF0aCwgYS5idWYsIGEubGVuLCAmYSkpCi0JCXJldCA9IChvLmxlbiA9PSBhLmxlbiAmJiAhbWVtY21wKG8uYnVmLCBhLmJ1Ziwgby5sZW4pKTsKKwlpZiAocmVub3JtYWxpemVfYnVmZmVyKGlkeCwgcGF0aCwgb2J1Zi5idWYsIG9idWYubGVuLCAmb2J1ZikgfAorCSAgICByZW5vcm1hbGl6ZV9idWZmZXIoaWR4LCBwYXRoLCBhYnVmLmJ1ZiwgYWJ1Zi5sZW4sICZhYnVmKSkKKwkJcmV0ID0gKG9idWYubGVuID09IGFidWYubGVuICYmICFtZW1jbXAob2J1Zi5idWYsIGFidWYuYnVmLCBvYnVmLmxlbikpOwogCiBlcnJvcl9yZXR1cm46Ci0Jc3RyYnVmX3JlbGVhc2UoJm8pOwotCXN0cmJ1Zl9yZWxlYXNlKCZhKTsKKwlzdHJidWZfcmVsZWFzZSgmb2J1Zik7CisJc3RyYnVmX3JlbGVhc2UoJmFidWYpOwogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgaGFuZGxlX21vZGlmeV9kZWxldGUoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCitzdGF0aWMgaW50IGhhbmRsZV9tb2RpZnlfZGVsZXRlKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCiAJCQkJY29uc3QgY2hhciAqcGF0aCwKLQkJCQlzdHJ1Y3Qgb2JqZWN0X2lkICpvX29pZCwgaW50IG9fbW9kZSwKLQkJCQlzdHJ1Y3Qgb2JqZWN0X2lkICphX29pZCwgaW50IGFfbW9kZSwKLQkJCQlzdHJ1Y3Qgb2JqZWN0X2lkICpiX29pZCwgaW50IGJfbW9kZSkKKwkJCQljb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqbywKKwkJCQljb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqYSwKKwkJCQljb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqYikKIHsKIAljb25zdCBjaGFyICptb2RpZnlfYnJhbmNoLCAqZGVsZXRlX2JyYW5jaDsKLQlzdHJ1Y3Qgb2JqZWN0X2lkICpjaGFuZ2VkX29pZDsKLQlpbnQgY2hhbmdlZF9tb2RlOworCWNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpjaGFuZ2VkOwogCi0JaWYgKGFfb2lkKSB7Ci0JCW1vZGlmeV9icmFuY2ggPSBvLT5icmFuY2gxOwotCQlkZWxldGVfYnJhbmNoID0gby0+YnJhbmNoMjsKLQkJY2hhbmdlZF9vaWQgPSBhX29pZDsKLQkJY2hhbmdlZF9tb2RlID0gYV9tb2RlOworCWlmIChpc192YWxpZChhKSkgeworCQltb2RpZnlfYnJhbmNoID0gb3B0LT5icmFuY2gxOworCQlkZWxldGVfYnJhbmNoID0gb3B0LT5icmFuY2gyOworCQljaGFuZ2VkID0gYTsKIAl9IGVsc2UgewotCQltb2RpZnlfYnJhbmNoID0gby0+YnJhbmNoMjsKLQkJZGVsZXRlX2JyYW5jaCA9IG8tPmJyYW5jaDE7Ci0JCWNoYW5nZWRfb2lkID0gYl9vaWQ7Ci0JCWNoYW5nZWRfbW9kZSA9IGJfbW9kZTsKKwkJbW9kaWZ5X2JyYW5jaCA9IG9wdC0+YnJhbmNoMjsKKwkJZGVsZXRlX2JyYW5jaCA9IG9wdC0+YnJhbmNoMTsKKwkJY2hhbmdlZCA9IGI7CiAJfQogCi0JcmV0dXJuIGhhbmRsZV9jaGFuZ2VfZGVsZXRlKG8sCisJcmV0dXJuIGhhbmRsZV9jaGFuZ2VfZGVsZXRlKG9wdCwKIAkJCQkgICAgcGF0aCwgTlVMTCwKLQkJCQkgICAgb19vaWQsIG9fbW9kZSwKLQkJCQkgICAgY2hhbmdlZF9vaWQsIGNoYW5nZWRfbW9kZSwKKwkJCQkgICAgbywgY2hhbmdlZCwKIAkJCQkgICAgbW9kaWZ5X2JyYW5jaCwgZGVsZXRlX2JyYW5jaCwKIAkJCQkgICAgXygibW9kaWZ5IiksIF8oIm1vZGlmaWVkIikpOwogfQogCi1zdGF0aWMgaW50IGhhbmRsZV9jb250ZW50X21lcmdlKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLAorc3RhdGljIGludCBoYW5kbGVfY29udGVudF9tZXJnZShzdHJ1Y3QgbWVyZ2VfZmlsZV9pbmZvICptZmksCisJCQkJc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKIAkJCQljb25zdCBjaGFyICpwYXRoLAogCQkJCWludCBpc19kaXJ0eSwKLQkJCQlzdHJ1Y3Qgb2JqZWN0X2lkICpvX29pZCwgaW50IG9fbW9kZSwKLQkJCQlzdHJ1Y3Qgb2JqZWN0X2lkICphX29pZCwgaW50IGFfbW9kZSwKLQkJCQlzdHJ1Y3Qgb2JqZWN0X2lkICpiX29pZCwgaW50IGJfbW9kZSwKLQkJCQlzdHJ1Y3QgcmVuYW1lX2NvbmZsaWN0X2luZm8gKnJlbmFtZV9jb25mbGljdF9pbmZvKQorCQkJCWNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpvLAorCQkJCWNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICphLAorCQkJCWNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpiLAorCQkJCXN0cnVjdCByZW5hbWVfY29uZmxpY3RfaW5mbyAqY2kpCiB7CiAJY29uc3QgY2hhciAqcmVhc29uID0gXygiY29udGVudCIpOwotCWNvbnN0IGNoYXIgKnBhdGgxID0gTlVMTCwgKnBhdGgyID0gTlVMTDsKLQlzdHJ1Y3QgbWVyZ2VfZmlsZV9pbmZvIG1maTsKLQlzdHJ1Y3QgZGlmZl9maWxlc3BlYyBvbmUsIGEsIGI7CiAJdW5zaWduZWQgZGZfY29uZmxpY3RfcmVtYWlucyA9IDA7CiAKLQlpZiAoIW9fb2lkKSB7CisJaWYgKCFpc192YWxpZChvKSkKIAkJcmVhc29uID0gXygiYWRkL2FkZCIpOwotCQlvX29pZCA9IChzdHJ1Y3Qgb2JqZWN0X2lkICopJm51bGxfb2lkOwotCX0KLQlvbmUucGF0aCA9IGEucGF0aCA9IGIucGF0aCA9IChjaGFyICopcGF0aDsKLQlvaWRjcHkoJm9uZS5vaWQsIG9fb2lkKTsKLQlvbmUubW9kZSA9IG9fbW9kZTsKLQlvaWRjcHkoJmEub2lkLCBhX29pZCk7Ci0JYS5tb2RlID0gYV9tb2RlOwotCW9pZGNweSgmYi5vaWQsIGJfb2lkKTsKLQliLm1vZGUgPSBiX21vZGU7CiAKLQlpZiAocmVuYW1lX2NvbmZsaWN0X2luZm8pIHsKLQkJc3RydWN0IGRpZmZfZmlsZXBhaXIgKnBhaXIxID0gcmVuYW1lX2NvbmZsaWN0X2luZm8tPnBhaXIxOworCWFzc2VydChvLT5wYXRoICYmIGEtPnBhdGggJiYgYi0+cGF0aCk7CisJaWYgKGNpICYmIGRpcl9pbl93YXkob3B0LT5yZXBvLT5pbmRleCwgcGF0aCwgIW9wdC0+cHJpdi0+Y2FsbF9kZXB0aCwKKwkJCSAgICAgU19JU0dJVExJTksoY2ktPnJlbjEtPnBhaXItPnR3by0+bW9kZSkpKQorCQlkZl9jb25mbGljdF9yZW1haW5zID0gMTsKIAotCQlwYXRoMSA9IChvLT5icmFuY2gxID09IHJlbmFtZV9jb25mbGljdF9pbmZvLT5icmFuY2gxKSA/Ci0JCQlwYWlyMS0+dHdvLT5wYXRoIDogcGFpcjEtPm9uZS0+cGF0aDsKLQkJLyogSWYgcmVuYW1lX2NvbmZsaWN0X2luZm8tPnBhaXIyICE9IE5VTEwsIHdlIGFyZSBpbgotCQkgKiBSRU5BTUVfT05FX0ZJTEVfVE9fT05FIGNhc2UuICBPdGhlcndpc2UsIHdlIGhhdmUgYQotCQkgKiBub3JtYWwgcmVuYW1lLgotCQkgKi8KLQkJcGF0aDIgPSAocmVuYW1lX2NvbmZsaWN0X2luZm8tPnBhaXIyIHx8Ci0JCQkgby0+YnJhbmNoMiA9PSByZW5hbWVfY29uZmxpY3RfaW5mby0+YnJhbmNoMSkgPwotCQkJcGFpcjEtPnR3by0+cGF0aCA6IHBhaXIxLT5vbmUtPnBhdGg7Ci0JCW9uZS5wYXRoID0gcGFpcjEtPm9uZS0+cGF0aDsKLQkJYS5wYXRoID0gKGNoYXIgKilwYXRoMTsKLQkJYi5wYXRoID0gKGNoYXIgKilwYXRoMjsKLQotCQlpZiAoZGlyX2luX3dheShwYXRoLCAhby0+Y2FsbF9kZXB0aCwKLQkJCSAgICAgICBTX0lTR0lUTElOSyhwYWlyMS0+dHdvLT5tb2RlKSkpCi0JCQlkZl9jb25mbGljdF9yZW1haW5zID0gMTsKLQl9Ci0JaWYgKG1lcmdlX21vZGVfYW5kX2NvbnRlbnRzKG8sICZvbmUsICZhLCAmYiwgcGF0aCwKLQkJCQkgICAgby0+YnJhbmNoMSwgby0+YnJhbmNoMiwgJm1maSkpCisJaWYgKG1lcmdlX21vZGVfYW5kX2NvbnRlbnRzKG9wdCwgbywgYSwgYiwgcGF0aCwKKwkJCQkgICAgb3B0LT5icmFuY2gxLCBvcHQtPmJyYW5jaDIsCisJCQkJICAgIG9wdC0+cHJpdi0+Y2FsbF9kZXB0aCAqIDIsIG1maSkpCiAJCXJldHVybiAtMTsKIAogCS8qCkBAIC0zMDYyLDE1ICszMDU5LDE0IEBACiAJICogICBiKSBUaGUgbWVyZ2UgbWF0Y2hlcyB3aGF0IHdhcyBpbiBIRUFEIChjb250ZW50LCBtb2RlLCBwYXRobmFtZSkKIAkgKiAgIGMpIFRoZSB0YXJnZXQgcGF0aCBpcyB1c2FibGUgKGkuZS4gbm90IGludm9sdmVkIGluIEQvRiBjb25mbGljdCkKIAkgKi8KLQlpZiAobWZpLmNsZWFuICYmCi0JICAgIHdhc190cmFja2VkX2FuZF9tYXRjaGVzKG8sIHBhdGgsICZtZmkub2lkLCBtZmkubW9kZSkgJiYKKwlpZiAobWZpLT5jbGVhbiAmJiB3YXNfdHJhY2tlZF9hbmRfbWF0Y2hlcyhvcHQsIHBhdGgsICZtZmktPmJsb2IpICYmCiAJICAgICFkZl9jb25mbGljdF9yZW1haW5zKSB7CiAJCWludCBwb3M7CiAJCXN0cnVjdCBjYWNoZV9lbnRyeSAqY2U7CiAKLQkJb3V0cHV0KG8sIDMsIF8oIlNraXBwZWQgJXMgKG1lcmdlZCBzYW1lIGFzIGV4aXN0aW5nKSIpLCBwYXRoKTsKLQkJaWYgKGFkZF9jYWNoZWluZm8obywgbWZpLm1vZGUsICZtZmkub2lkLCBwYXRoLAotCQkJCSAgMCwgKCFvLT5jYWxsX2RlcHRoICYmICFpc19kaXJ0eSksIDApKQorCQlvdXRwdXQob3B0LCAzLCBfKCJTa2lwcGVkICVzIChtZXJnZWQgc2FtZSBhcyBleGlzdGluZykiKSwgcGF0aCk7CisJCWlmIChhZGRfY2FjaGVpbmZvKG9wdCwgJm1maS0+YmxvYiwgcGF0aCwKKwkJCQkgIDAsICghb3B0LT5wcml2LT5jYWxsX2RlcHRoICYmICFpc19kaXJ0eSksIDApKQogCQkJcmV0dXJuIC0xOwogCQkvKgogCQkgKiBIb3dldmVyLCBhZGRfY2FjaGVpbmZvKCkgd2lsbCBkZWxldGUgdGhlIG9sZCBjYWNoZSBlbnRyeQpAQCAtMzA3OCwyNTMgKzMwNzQsMzcwIEBACiAJCSAqIGZsYWcgdG8gYXZvaWQgbWFraW5nIHRoZSBmaWxlIGFwcGVhciBhcyBpZiBpdCB3ZXJlCiAJCSAqIGRlbGV0ZWQgYnkgdGhlIHVzZXIuCiAJCSAqLwotCQlwb3MgPSBpbmRleF9uYW1lX3Bvcygmby0+b3JpZ19pbmRleCwgcGF0aCwgc3RybGVuKHBhdGgpKTsKLQkJY2UgPSBvLT5vcmlnX2luZGV4LmNhY2hlW3Bvc107CisJCXBvcyA9IGluZGV4X25hbWVfcG9zKCZvcHQtPnByaXYtPm9yaWdfaW5kZXgsIHBhdGgsIHN0cmxlbihwYXRoKSk7CisJCWNlID0gb3B0LT5wcml2LT5vcmlnX2luZGV4LmNhY2hlW3Bvc107CiAJCWlmIChjZV9za2lwX3dvcmt0cmVlKGNlKSkgewotCQkJcG9zID0gaW5kZXhfbmFtZV9wb3MoJnRoZV9pbmRleCwgcGF0aCwgc3RybGVuKHBhdGgpKTsKLQkJCWNlID0gdGhlX2luZGV4LmNhY2hlW3Bvc107CisJCQlwb3MgPSBpbmRleF9uYW1lX3BvcyhvcHQtPnJlcG8tPmluZGV4LCBwYXRoLCBzdHJsZW4ocGF0aCkpOworCQkJY2UgPSBvcHQtPnJlcG8tPmluZGV4LT5jYWNoZVtwb3NdOwogCQkJY2UtPmNlX2ZsYWdzIHw9IENFX1NLSVBfV09SS1RSRUU7CiAJCX0KLQkJcmV0dXJuIG1maS5jbGVhbjsKKwkJcmV0dXJuIG1maS0+Y2xlYW47CiAJfQogCi0JaWYgKCFtZmkuY2xlYW4pIHsKLQkJaWYgKFNfSVNHSVRMSU5LKG1maS5tb2RlKSkKKwlpZiAoIW1maS0+Y2xlYW4pIHsKKwkJaWYgKFNfSVNHSVRMSU5LKG1maS0+YmxvYi5tb2RlKSkKIAkJCXJlYXNvbiA9IF8oInN1Ym1vZHVsZSIpOwotCQlvdXRwdXQobywgMSwgXygiQ09ORkxJQ1QgKCVzKTogTWVyZ2UgY29uZmxpY3QgaW4gJXMiKSwKKwkJb3V0cHV0KG9wdCwgMSwgXygiQ09ORkxJQ1QgKCVzKTogTWVyZ2UgY29uZmxpY3QgaW4gJXMiKSwKIAkJCQlyZWFzb24sIHBhdGgpOwotCQlpZiAocmVuYW1lX2NvbmZsaWN0X2luZm8gJiYgIWRmX2NvbmZsaWN0X3JlbWFpbnMpCi0JCQlpZiAodXBkYXRlX3N0YWdlcyhvLCBwYXRoLCAmb25lLCAmYSwgJmIpKQorCQlpZiAoY2kgJiYgIWRmX2NvbmZsaWN0X3JlbWFpbnMpCisJCQlpZiAodXBkYXRlX3N0YWdlcyhvcHQsIHBhdGgsIG8sIGEsIGIpKQogCQkJCXJldHVybiAtMTsKIAl9CiAKIAlpZiAoZGZfY29uZmxpY3RfcmVtYWlucyB8fCBpc19kaXJ0eSkgewogCQljaGFyICpuZXdfcGF0aDsKLQkJaWYgKG8tPmNhbGxfZGVwdGgpIHsKLQkJCXJlbW92ZV9maWxlX2Zyb21fY2FjaGUocGF0aCk7CisJCWlmIChvcHQtPnByaXYtPmNhbGxfZGVwdGgpIHsKKwkJCXJlbW92ZV9maWxlX2Zyb21faW5kZXgob3B0LT5yZXBvLT5pbmRleCwgcGF0aCk7CiAJCX0gZWxzZSB7Ci0JCQlpZiAoIW1maS5jbGVhbikgewotCQkJCWlmICh1cGRhdGVfc3RhZ2VzKG8sIHBhdGgsICZvbmUsICZhLCAmYikpCisJCQlpZiAoIW1maS0+Y2xlYW4pIHsKKwkJCQlpZiAodXBkYXRlX3N0YWdlcyhvcHQsIHBhdGgsIG8sIGEsIGIpKQogCQkJCQlyZXR1cm4gLTE7CiAJCQl9IGVsc2UgewotCQkJCWludCBmaWxlX2Zyb21fc3RhZ2UyID0gd2FzX3RyYWNrZWQobywgcGF0aCk7Ci0JCQkJc3RydWN0IGRpZmZfZmlsZXNwZWMgbWVyZ2VkOwotCQkJCW9pZGNweSgmbWVyZ2VkLm9pZCwgJm1maS5vaWQpOwotCQkJCW1lcmdlZC5tb2RlID0gbWZpLm1vZGU7CisJCQkJaW50IGZpbGVfZnJvbV9zdGFnZTIgPSB3YXNfdHJhY2tlZChvcHQsIHBhdGgpOwogCi0JCQkJaWYgKHVwZGF0ZV9zdGFnZXMobywgcGF0aCwgTlVMTCwKLQkJCQkJCSAgZmlsZV9mcm9tX3N0YWdlMiA/ICZtZXJnZWQgOiBOVUxMLAotCQkJCQkJICBmaWxlX2Zyb21fc3RhZ2UyID8gTlVMTCA6ICZtZXJnZWQpKQorCQkJCWlmICh1cGRhdGVfc3RhZ2VzKG9wdCwgcGF0aCwgTlVMTCwKKwkJCQkJCSAgZmlsZV9mcm9tX3N0YWdlMiA/ICZtZmktPmJsb2IgOiBOVUxMLAorCQkJCQkJICBmaWxlX2Zyb21fc3RhZ2UyID8gTlVMTCA6ICZtZmktPmJsb2IpKQogCQkJCQlyZXR1cm4gLTE7CiAJCQl9CiAKIAkJfQotCQluZXdfcGF0aCA9IHVuaXF1ZV9wYXRoKG8sIHBhdGgsIHJlbmFtZV9jb25mbGljdF9pbmZvLT5icmFuY2gxKTsKKwkJbmV3X3BhdGggPSB1bmlxdWVfcGF0aChvcHQsIHBhdGgsIGNpLT5yZW4xLT5icmFuY2gpOwogCQlpZiAoaXNfZGlydHkpIHsKLQkJCW91dHB1dChvLCAxLCBfKCJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgJXMiKSwKKwkJCW91dHB1dChvcHQsIDEsIF8oIlJlZnVzaW5nIHRvIGxvc2UgZGlydHkgZmlsZSBhdCAlcyIpLAogCQkJICAgICAgIHBhdGgpOwogCQl9Ci0JCW91dHB1dChvLCAxLCBfKCJBZGRpbmcgYXMgJXMgaW5zdGVhZCIpLCBuZXdfcGF0aCk7Ci0JCWlmICh1cGRhdGVfZmlsZShvLCAwLCAmbWZpLm9pZCwgbWZpLm1vZGUsIG5ld19wYXRoKSkgeworCQlvdXRwdXQob3B0LCAxLCBfKCJBZGRpbmcgYXMgJXMgaW5zdGVhZCIpLCBuZXdfcGF0aCk7CisJCWlmICh1cGRhdGVfZmlsZShvcHQsIDAsICZtZmktPmJsb2IsIG5ld19wYXRoKSkgewogCQkJZnJlZShuZXdfcGF0aCk7CiAJCQlyZXR1cm4gLTE7CiAJCX0KIAkJZnJlZShuZXdfcGF0aCk7Ci0JCW1maS5jbGVhbiA9IDA7Ci0JfSBlbHNlIGlmICh1cGRhdGVfZmlsZShvLCBtZmkuY2xlYW4sICZtZmkub2lkLCBtZmkubW9kZSwgcGF0aCkpCisJCW1maS0+Y2xlYW4gPSAwOworCX0gZWxzZSBpZiAodXBkYXRlX2ZpbGUob3B0LCBtZmktPmNsZWFuLCAmbWZpLT5ibG9iLCBwYXRoKSkKIAkJcmV0dXJuIC0xOwotCXJldHVybiAhaXNfZGlydHkgJiYgbWZpLmNsZWFuOworCXJldHVybiAhaXNfZGlydHkgJiYgbWZpLT5jbGVhbjsKIH0KIAotc3RhdGljIGludCBoYW5kbGVfcmVuYW1lX25vcm1hbChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywKK3N0YXRpYyBpbnQgaGFuZGxlX3JlbmFtZV9ub3JtYWwoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKIAkJCQljb25zdCBjaGFyICpwYXRoLAotCQkJCXN0cnVjdCBvYmplY3RfaWQgKm9fb2lkLCB1bnNpZ25lZCBpbnQgb19tb2RlLAotCQkJCXN0cnVjdCBvYmplY3RfaWQgKmFfb2lkLCB1bnNpZ25lZCBpbnQgYV9tb2RlLAotCQkJCXN0cnVjdCBvYmplY3RfaWQgKmJfb2lkLCB1bnNpZ25lZCBpbnQgYl9tb2RlLAorCQkJCWNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpvLAorCQkJCWNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICphLAorCQkJCWNvbnN0IHN0cnVjdCBkaWZmX2ZpbGVzcGVjICpiLAogCQkJCXN0cnVjdCByZW5hbWVfY29uZmxpY3RfaW5mbyAqY2kpCiB7CisJc3RydWN0IHJlbmFtZSAqcmVuID0gY2ktPnJlbjE7CisJc3RydWN0IG1lcmdlX2ZpbGVfaW5mbyBtZmk7CisJaW50IGNsZWFuOworCWludCBzaWRlID0gKHJlbi0+YnJhbmNoID09IG9wdC0+YnJhbmNoMSA/IDIgOiAzKTsKKwogCS8qIE1lcmdlIHRoZSBjb250ZW50IGFuZCB3cml0ZSBpdCBvdXQgKi8KLQlyZXR1cm4gaGFuZGxlX2NvbnRlbnRfbWVyZ2UobywgcGF0aCwgd2FzX2RpcnR5KG8sIHBhdGgpLAotCQkJCSAgICBvX29pZCwgb19tb2RlLCBhX29pZCwgYV9tb2RlLCBiX29pZCwgYl9tb2RlLAotCQkJCSAgICBjaSk7CisJY2xlYW4gPSBoYW5kbGVfY29udGVudF9tZXJnZSgmbWZpLCBvcHQsIHBhdGgsIHdhc19kaXJ0eShvcHQsIHBhdGgpLAorCQkJCSAgICAgbywgYSwgYiwgY2kpOworCisJaWYgKGNsZWFuICYmCisJICAgIG9wdC0+ZGV0ZWN0X2RpcmVjdG9yeV9yZW5hbWVzID09IE1FUkdFX0RJUkVDVE9SWV9SRU5BTUVTX0NPTkZMSUNUICYmCisJICAgIHJlbi0+ZGlyX3JlbmFtZV9vcmlnaW5hbF9kZXN0KSB7CisJCWlmICh1cGRhdGVfc3RhZ2VzKG9wdCwgcGF0aCwKKwkJCQkgIE5VTEwsCisJCQkJICBzaWRlID09IDIgPyAmbWZpLmJsb2IgOiBOVUxMLAorCQkJCSAgc2lkZSA9PSAyID8gTlVMTCA6ICZtZmkuYmxvYikpCisJCQlyZXR1cm4gLTE7CisJCWNsZWFuID0gMDsgLyogbm90IGNsZWFuLCBidXQgY29uZmxpY3RlZCAqLworCX0KKwlyZXR1cm4gY2xlYW47Cit9CisKK3N0YXRpYyB2b2lkIGRpcl9yZW5hbWVfd2FybmluZyhjb25zdCBjaGFyICptc2csCisJCQkgICAgICAgaW50IGlzX2FkZCwKKwkJCSAgICAgICBpbnQgY2xlYW4sCisJCQkgICAgICAgc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKKwkJCSAgICAgICBzdHJ1Y3QgcmVuYW1lICpyZW4pCit7CisJY29uc3QgY2hhciAqb3RoZXJfYnJhbmNoOworCW90aGVyX2JyYW5jaCA9IChyZW4tPmJyYW5jaCA9PSBvcHQtPmJyYW5jaDEgPworCQkJb3B0LT5icmFuY2gyIDogb3B0LT5icmFuY2gxKTsKKwlpZiAoaXNfYWRkKSB7CisJCW91dHB1dChvcHQsIGNsZWFuID8gMiA6IDEsIG1zZywKKwkJICAgICAgIHJlbi0+cGFpci0+b25lLT5wYXRoLCByZW4tPmJyYW5jaCwKKwkJICAgICAgIG90aGVyX2JyYW5jaCwgcmVuLT5wYWlyLT50d28tPnBhdGgpOworCQlyZXR1cm47CisJfQorCW91dHB1dChvcHQsIGNsZWFuID8gMiA6IDEsIG1zZywKKwkgICAgICAgcmVuLT5wYWlyLT5vbmUtPnBhdGgsIHJlbi0+ZGlyX3JlbmFtZV9vcmlnaW5hbF9kZXN0LCByZW4tPmJyYW5jaCwKKwkgICAgICAgb3RoZXJfYnJhbmNoLCByZW4tPnBhaXItPnR3by0+cGF0aCk7Cit9CitzdGF0aWMgaW50IHdhcm5fYWJvdXRfZGlyX3JlbmFtZWRfZW50cmllcyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAorCQkJCQkgIHN0cnVjdCByZW5hbWUgKnJlbikKK3sKKwljb25zdCBjaGFyICptc2c7CisJaW50IGNsZWFuID0gMSwgaXNfYWRkOworCisJaWYgKCFyZW4pCisJCXJldHVybiBjbGVhbjsKKworCS8qIFJldHVybiBlYXJseSBpZiByZW4gd2FzIG5vdCBhZmZlY3RlZC9jcmVhdGVkIGJ5IGEgZGlyZWN0b3J5IHJlbmFtZSAqLworCWlmICghcmVuLT5kaXJfcmVuYW1lX29yaWdpbmFsX2Rlc3QpCisJCXJldHVybiBjbGVhbjsKKworCS8qIFNhbml0eSBjaGVja3MgKi8KKwlhc3NlcnQob3B0LT5kZXRlY3RfZGlyZWN0b3J5X3JlbmFtZXMgPiBNRVJHRV9ESVJFQ1RPUllfUkVOQU1FU19OT05FKTsKKwlhc3NlcnQocmVuLT5kaXJfcmVuYW1lX29yaWdpbmFsX3R5cGUgPT0gJ0EnIHx8CisJICAgICAgIHJlbi0+ZGlyX3JlbmFtZV9vcmlnaW5hbF90eXBlID09ICdSJyk7CisKKwkvKiBDaGVjayB3aGV0aGVyIHRvIHRyZWF0IGRpcmVjdG9yeSByZW5hbWVzIGFzIGEgY29uZmxpY3QgKi8KKwljbGVhbiA9IChvcHQtPmRldGVjdF9kaXJlY3RvcnlfcmVuYW1lcyA9PSBNRVJHRV9ESVJFQ1RPUllfUkVOQU1FU19UUlVFKTsKKworCWlzX2FkZCA9IChyZW4tPmRpcl9yZW5hbWVfb3JpZ2luYWxfdHlwZSA9PSAnQScpOworCWlmIChyZW4tPmRpcl9yZW5hbWVfb3JpZ2luYWxfdHlwZSA9PSAnQScgJiYgY2xlYW4pIHsKKwkJbXNnID0gXygiUGF0aCB1cGRhdGVkOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSAiCisJCQkiZGlyZWN0b3J5IHRoYXQgd2FzIHJlbmFtZWQgaW4gJXM7IG1vdmluZyBpdCB0byAlcy4iKTsKKwl9IGVsc2UgaWYgKHJlbi0+ZGlyX3JlbmFtZV9vcmlnaW5hbF90eXBlID09ICdBJyAmJiAhY2xlYW4pIHsKKwkJbXNnID0gXygiQ09ORkxJQ1QgKGZpbGUgbG9jYXRpb24pOiAlcyBhZGRlZCBpbiAlcyAiCisJCQkiaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgd2FzIHJlbmFtZWQgaW4gJXMsICIKKwkJCSJzdWdnZXN0aW5nIGl0IHNob3VsZCBwZXJoYXBzIGJlIG1vdmVkIHRvICVzLiIpOworCX0gZWxzZSBpZiAocmVuLT5kaXJfcmVuYW1lX29yaWdpbmFsX3R5cGUgPT0gJ1InICYmIGNsZWFuKSB7CisJCW1zZyA9IF8oIlBhdGggdXBkYXRlZDogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgaW5zaWRlIGEgIgorCQkJImRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkIGluICVzOyBtb3ZpbmcgaXQgdG8gJXMuIik7CisJfSBlbHNlIGlmIChyZW4tPmRpcl9yZW5hbWVfb3JpZ2luYWxfdHlwZSA9PSAnUicgJiYgIWNsZWFuKSB7CisJCW1zZyA9IF8oIkNPTkZMSUNUIChmaWxlIGxvY2F0aW9uKTogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgIgorCQkJImluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkIGluICVzLCAiCisJCQkic3VnZ2VzdGluZyBpdCBzaG91bGQgcGVyaGFwcyBiZSBtb3ZlZCB0byAlcy4iKTsKKwl9IGVsc2UgeworCQlCVUcoIkltcG9zc2libGUgZGlyX3JlbmFtZV9vcmlnaW5hbF90eXBlL2NsZWFuIGNvbWJpbmF0aW9uIik7CisJfQorCWRpcl9yZW5hbWVfd2FybmluZyhtc2csIGlzX2FkZCwgY2xlYW4sIG9wdCwgcmVuKTsKKworCXJldHVybiBjbGVhbjsKIH0KIAogLyogUGVyIGVudHJ5IG1lcmdlIGZ1bmN0aW9uICovCi1zdGF0aWMgaW50IHByb2Nlc3NfZW50cnkoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCitzdGF0aWMgaW50IHByb2Nlc3NfZW50cnkoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKIAkJCSBjb25zdCBjaGFyICpwYXRoLCBzdHJ1Y3Qgc3RhZ2VfZGF0YSAqZW50cnkpCiB7CiAJaW50IGNsZWFuX21lcmdlID0gMTsKLQlpbnQgbm9ybWFsaXplID0gby0+cmVub3JtYWxpemU7Ci0JdW5zaWduZWQgb19tb2RlID0gZW50cnktPnN0YWdlc1sxXS5tb2RlOwotCXVuc2lnbmVkIGFfbW9kZSA9IGVudHJ5LT5zdGFnZXNbMl0ubW9kZTsKLQl1bnNpZ25lZCBiX21vZGUgPSBlbnRyeS0+c3RhZ2VzWzNdLm1vZGU7Ci0Jc3RydWN0IG9iamVjdF9pZCAqb19vaWQgPSBzdGFnZV9vaWQoJmVudHJ5LT5zdGFnZXNbMV0ub2lkLCBvX21vZGUpOwotCXN0cnVjdCBvYmplY3RfaWQgKmFfb2lkID0gc3RhZ2Vfb2lkKCZlbnRyeS0+c3RhZ2VzWzJdLm9pZCwgYV9tb2RlKTsKLQlzdHJ1Y3Qgb2JqZWN0X2lkICpiX29pZCA9IHN0YWdlX29pZCgmZW50cnktPnN0YWdlc1szXS5vaWQsIGJfbW9kZSk7CisJaW50IG5vcm1hbGl6ZSA9IG9wdC0+cmVub3JtYWxpemU7CisKKwlzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqbyA9ICZlbnRyeS0+c3RhZ2VzWzFdOworCXN0cnVjdCBkaWZmX2ZpbGVzcGVjICphID0gJmVudHJ5LT5zdGFnZXNbMl07CisJc3RydWN0IGRpZmZfZmlsZXNwZWMgKmIgPSAmZW50cnktPnN0YWdlc1szXTsKKwlpbnQgb192YWxpZCA9IGlzX3ZhbGlkKG8pOworCWludCBhX3ZhbGlkID0gaXNfdmFsaWQoYSk7CisJaW50IGJfdmFsaWQgPSBpc192YWxpZChiKTsKKwlvLT5wYXRoID0gYS0+cGF0aCA9IGItPnBhdGggPSAoY2hhciopcGF0aDsKIAogCWVudHJ5LT5wcm9jZXNzZWQgPSAxOwogCWlmIChlbnRyeS0+cmVuYW1lX2NvbmZsaWN0X2luZm8pIHsKLQkJc3RydWN0IHJlbmFtZV9jb25mbGljdF9pbmZvICpjb25mbGljdF9pbmZvID0gZW50cnktPnJlbmFtZV9jb25mbGljdF9pbmZvOwotCQlzd2l0Y2ggKGNvbmZsaWN0X2luZm8tPnJlbmFtZV90eXBlKSB7CisJCXN0cnVjdCByZW5hbWVfY29uZmxpY3RfaW5mbyAqY2kgPSBlbnRyeS0+cmVuYW1lX2NvbmZsaWN0X2luZm87CisJCXN0cnVjdCBkaWZmX2ZpbGVzcGVjICp0ZW1wOworCQlpbnQgcGF0aF9jbGVhbjsKKworCQlwYXRoX2NsZWFuID0gd2Fybl9hYm91dF9kaXJfcmVuYW1lZF9lbnRyaWVzKG9wdCwgY2ktPnJlbjEpOworCQlwYXRoX2NsZWFuICY9IHdhcm5fYWJvdXRfZGlyX3JlbmFtZWRfZW50cmllcyhvcHQsIGNpLT5yZW4yKTsKKworCQkvKgorCQkgKiBGb3IgY2FzZXMgd2l0aCBhIHNpbmdsZSByZW5hbWUsIHtvLGEsYn0tPnBhdGggaGF2ZSBhbGwgYmVlbgorCQkgKiBzZXQgdG8gdGhlIHJlbmFtZSB0YXJnZXQgcGF0aDsgd2UgbmVlZCB0byBzZXQgdHdvIG9mIHRoZXNlCisJCSAqIGJhY2sgdG8gdGhlIHJlbmFtZSBzb3VyY2UuCisJCSAqIEZvciByZW5hbWUvcmVuYW1lIGNvbmZsaWN0cywgd2UnbGwgbWFudWFsbHkgZml4IHBhdGhzIGJlbG93LgorCQkgKi8KKwkJdGVtcCA9IChvcHQtPmJyYW5jaDEgPT0gY2ktPnJlbjEtPmJyYW5jaCkgPyBiIDogYTsKKwkJby0+cGF0aCA9IHRlbXAtPnBhdGggPSBjaS0+cmVuMS0+cGFpci0+b25lLT5wYXRoOworCQlpZiAoY2ktPnJlbjIpIHsKKwkJCWFzc2VydChvcHQtPmJyYW5jaDEgPT0gY2ktPnJlbjEtPmJyYW5jaCk7CisJCX0KKworCQlzd2l0Y2ggKGNpLT5yZW5hbWVfdHlwZSkgewogCQljYXNlIFJFTkFNRV9OT1JNQUw6CiAJCWNhc2UgUkVOQU1FX09ORV9GSUxFX1RPX09ORToKLQkJCWNsZWFuX21lcmdlID0gaGFuZGxlX3JlbmFtZV9ub3JtYWwobywKLQkJCQkJCQkgICBwYXRoLAotCQkJCQkJCSAgIG9fb2lkLCBvX21vZGUsCi0JCQkJCQkJICAgYV9vaWQsIGFfbW9kZSwKLQkJCQkJCQkgICBiX29pZCwgYl9tb2RlLAotCQkJCQkJCSAgIGNvbmZsaWN0X2luZm8pOworCQkJY2xlYW5fbWVyZ2UgPSBoYW5kbGVfcmVuYW1lX25vcm1hbChvcHQsIHBhdGgsIG8sIGEsIGIsCisJCQkJCQkJICAgY2kpOwogCQkJYnJlYWs7CiAJCWNhc2UgUkVOQU1FX1ZJQV9ESVI6Ci0JCQljbGVhbl9tZXJnZSA9IDE7Ci0JCQlpZiAoaGFuZGxlX3JlbmFtZV92aWFfZGlyKG8sCi0JCQkJCQkgIGNvbmZsaWN0X2luZm8tPnBhaXIxLAotCQkJCQkJICBjb25mbGljdF9pbmZvLT5icmFuY2gxLAotCQkJCQkJICBjb25mbGljdF9pbmZvLT5icmFuY2gyKSkKLQkJCQljbGVhbl9tZXJnZSA9IC0xOworCQkJY2xlYW5fbWVyZ2UgPSBoYW5kbGVfcmVuYW1lX3ZpYV9kaXIob3B0LCBjaSk7CisJCQlicmVhazsKKwkJY2FzZSBSRU5BTUVfQUREOgorCQkJLyoKKwkJCSAqIFByb2JhYmx5IHVuY2xlYW4gbWVyZ2UsIGJ1dCBpZiB0aGUgcmVuYW1lZCBmaWxlCisJCQkgKiBtZXJnZXMgY2xlYW5seSBhbmQgdGhlIHJlc3VsdCBjYW4gdGhlbiBiZQorCQkJICogdHdvLXdheSBtZXJnZWQgY2xlYW5seSB3aXRoIHRoZSBhZGRlZCBmaWxlLCBJCisJCQkgKiBndWVzcyBpdCdzIGEgY2xlYW4gbWVyZ2U/CisJCQkgKi8KKwkJCWNsZWFuX21lcmdlID0gaGFuZGxlX3JlbmFtZV9hZGQob3B0LCBjaSk7CiAJCQlicmVhazsKIAkJY2FzZSBSRU5BTUVfREVMRVRFOgogCQkJY2xlYW5fbWVyZ2UgPSAwOwotCQkJaWYgKGhhbmRsZV9yZW5hbWVfZGVsZXRlKG8sCi0JCQkJCQkgY29uZmxpY3RfaW5mby0+cGFpcjEsCi0JCQkJCQkgY29uZmxpY3RfaW5mby0+YnJhbmNoMSwKLQkJCQkJCSBjb25mbGljdF9pbmZvLT5icmFuY2gyKSkKKwkJCWlmIChoYW5kbGVfcmVuYW1lX2RlbGV0ZShvcHQsIGNpKSkKIAkJCQljbGVhbl9tZXJnZSA9IC0xOwogCQkJYnJlYWs7CiAJCWNhc2UgUkVOQU1FX09ORV9GSUxFX1RPX1RXTzoKKwkJCS8qCisJCQkgKiBNYW51YWxseSBmaXggdXAgcGF0aHM7IG5vdGU6CisJCQkgKiByZW5bMTJdLT5wYWlyLT5vbmUtPnBhdGggYXJlIGVxdWFsLgorCQkJICovCisJCQlvLT5wYXRoID0gY2ktPnJlbjEtPnBhaXItPm9uZS0+cGF0aDsKKwkJCWEtPnBhdGggPSBjaS0+cmVuMS0+cGFpci0+dHdvLT5wYXRoOworCQkJYi0+cGF0aCA9IGNpLT5yZW4yLT5wYWlyLT50d28tPnBhdGg7CisKIAkJCWNsZWFuX21lcmdlID0gMDsKLQkJCWlmIChoYW5kbGVfcmVuYW1lX3JlbmFtZV8xdG8yKG8sIGNvbmZsaWN0X2luZm8pKQorCQkJaWYgKGhhbmRsZV9yZW5hbWVfcmVuYW1lXzF0bzIob3B0LCBjaSkpCiAJCQkJY2xlYW5fbWVyZ2UgPSAtMTsKIAkJCWJyZWFrOwogCQljYXNlIFJFTkFNRV9UV09fRklMRVNfVE9fT05FOgotCQkJY2xlYW5fbWVyZ2UgPSAwOwotCQkJaWYgKGhhbmRsZV9yZW5hbWVfcmVuYW1lXzJ0bzEobywgY29uZmxpY3RfaW5mbykpCi0JCQkJY2xlYW5fbWVyZ2UgPSAtMTsKKwkJCS8qCisJCQkgKiBNYW51YWxseSBmaXggdXAgcGF0aHM7IG5vdGUsCisJCQkgKiByZW5bMTJdLT5wYWlyLT50d28tPnBhdGggYXJlIGFjdHVhbGx5IGVxdWFsLgorCQkJICovCisJCQlvLT5wYXRoID0gTlVMTDsKKwkJCWEtPnBhdGggPSBjaS0+cmVuMS0+cGFpci0+dHdvLT5wYXRoOworCQkJYi0+cGF0aCA9IGNpLT5yZW4yLT5wYWlyLT50d28tPnBhdGg7CisKKwkJCS8qCisJCQkgKiBQcm9iYWJseSB1bmNsZWFuIG1lcmdlLCBidXQgaWYgdGhlIHR3byByZW5hbWVkCisJCQkgKiBmaWxlcyBtZXJnZSBjbGVhbmx5IGFuZCB0aGUgdHdvIHJlc3VsdGluZyBmaWxlcworCQkJICogY2FuIHRoZW4gYmUgdHdvLXdheSBtZXJnZWQgY2xlYW5seSwgSSBndWVzcyBpdCdzCisJCQkgKiBhIGNsZWFuIG1lcmdlPworCQkJICovCisJCQljbGVhbl9tZXJnZSA9IGhhbmRsZV9yZW5hbWVfcmVuYW1lXzJ0bzEob3B0LCBjaSk7CiAJCQlicmVhazsKIAkJZGVmYXVsdDoKIAkJCWVudHJ5LT5wcm9jZXNzZWQgPSAwOwogCQkJYnJlYWs7CiAJCX0KLQl9IGVsc2UgaWYgKG9fb2lkICYmICghYV9vaWQgfHwgIWJfb2lkKSkgeworCQlpZiAocGF0aF9jbGVhbiA8IGNsZWFuX21lcmdlKQorCQkJY2xlYW5fbWVyZ2UgPSBwYXRoX2NsZWFuOworCX0gZWxzZSBpZiAob192YWxpZCAmJiAoIWFfdmFsaWQgfHwgIWJfdmFsaWQpKSB7CiAJCS8qIENhc2UgQTogRGVsZXRlZCBpbiBvbmUgKi8KLQkJaWYgKCghYV9vaWQgJiYgIWJfb2lkKSB8fAotCQkgICAgKCFiX29pZCAmJiBibG9iX3VuY2hhbmdlZChvLCBvX29pZCwgb19tb2RlLCBhX29pZCwgYV9tb2RlLCBub3JtYWxpemUsIHBhdGgpKSB8fAotCQkgICAgKCFhX29pZCAmJiBibG9iX3VuY2hhbmdlZChvLCBvX29pZCwgb19tb2RlLCBiX29pZCwgYl9tb2RlLCBub3JtYWxpemUsIHBhdGgpKSkgeworCQlpZiAoKCFhX3ZhbGlkICYmICFiX3ZhbGlkKSB8fAorCQkgICAgKCFiX3ZhbGlkICYmIGJsb2JfdW5jaGFuZ2VkKG9wdCwgbywgYSwgbm9ybWFsaXplLCBwYXRoKSkgfHwKKwkJICAgICghYV92YWxpZCAmJiBibG9iX3VuY2hhbmdlZChvcHQsIG8sIGIsIG5vcm1hbGl6ZSwgcGF0aCkpKSB7CiAJCQkvKiBEZWxldGVkIGluIGJvdGggb3IgZGVsZXRlZCBpbiBvbmUgYW5kCiAJCQkgKiB1bmNoYW5nZWQgaW4gdGhlIG90aGVyICovCi0JCQlpZiAoYV9vaWQpCi0JCQkJb3V0cHV0KG8sIDIsIF8oIlJlbW92aW5nICVzIiksIHBhdGgpOworCQkJaWYgKGFfdmFsaWQpCisJCQkJb3V0cHV0KG9wdCwgMiwgXygiUmVtb3ZpbmcgJXMiKSwgcGF0aCk7CiAJCQkvKiBkbyBub3QgdG91Y2ggd29ya2luZyBmaWxlIGlmIGl0IGRpZCBub3QgZXhpc3QgKi8KLQkJCXJlbW92ZV9maWxlKG8sIDEsIHBhdGgsICFhX29pZCk7CisJCQlyZW1vdmVfZmlsZShvcHQsIDEsIHBhdGgsICFhX3ZhbGlkKTsKIAkJfSBlbHNlIHsKIAkJCS8qIE1vZGlmeS9kZWxldGU7IGRlbGV0ZWQgc2lkZSBtYXkgaGF2ZSBwdXQgYSBkaXJlY3RvcnkgaW4gdGhlIHdheSAqLwogCQkJY2xlYW5fbWVyZ2UgPSAwOwotCQkJaWYgKGhhbmRsZV9tb2RpZnlfZGVsZXRlKG8sIHBhdGgsIG9fb2lkLCBvX21vZGUsCi0JCQkJCQkgYV9vaWQsIGFfbW9kZSwgYl9vaWQsIGJfbW9kZSkpCisJCQlpZiAoaGFuZGxlX21vZGlmeV9kZWxldGUob3B0LCBwYXRoLCBvLCBhLCBiKSkKIAkJCQljbGVhbl9tZXJnZSA9IC0xOwogCQl9Ci0JfSBlbHNlIGlmICgoIW9fb2lkICYmIGFfb2lkICYmICFiX29pZCkgfHwKLQkJICAgKCFvX29pZCAmJiAhYV9vaWQgJiYgYl9vaWQpKSB7CisJfSBlbHNlIGlmICgoIW9fdmFsaWQgJiYgYV92YWxpZCAmJiAhYl92YWxpZCkgfHwKKwkJICAgKCFvX3ZhbGlkICYmICFhX3ZhbGlkICYmIGJfdmFsaWQpKSB7CiAJCS8qIENhc2UgQjogQWRkZWQgaW4gb25lLiAqLwogCQkvKiBbbm90aGluZ3xkaXJlY3RvcnldIC0+IChbbm90aGluZ3xkaXJlY3RvcnldLCBmaWxlKSAqLwogCiAJCWNvbnN0IGNoYXIgKmFkZF9icmFuY2g7CiAJCWNvbnN0IGNoYXIgKm90aGVyX2JyYW5jaDsKLQkJdW5zaWduZWQgbW9kZTsKLQkJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkOwogCQljb25zdCBjaGFyICpjb25mOworCQljb25zdCBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqY29udGVudHM7CiAKLQkJaWYgKGFfb2lkKSB7Ci0JCQlhZGRfYnJhbmNoID0gby0+YnJhbmNoMTsKLQkJCW90aGVyX2JyYW5jaCA9IG8tPmJyYW5jaDI7Ci0JCQltb2RlID0gYV9tb2RlOwotCQkJb2lkID0gYV9vaWQ7CisJCWlmIChhX3ZhbGlkKSB7CisJCQlhZGRfYnJhbmNoID0gb3B0LT5icmFuY2gxOworCQkJb3RoZXJfYnJhbmNoID0gb3B0LT5icmFuY2gyOworCQkJY29udGVudHMgPSBhOwogCQkJY29uZiA9IF8oImZpbGUvZGlyZWN0b3J5Iik7CiAJCX0gZWxzZSB7Ci0JCQlhZGRfYnJhbmNoID0gby0+YnJhbmNoMjsKLQkJCW90aGVyX2JyYW5jaCA9IG8tPmJyYW5jaDE7Ci0JCQltb2RlID0gYl9tb2RlOwotCQkJb2lkID0gYl9vaWQ7CisJCQlhZGRfYnJhbmNoID0gb3B0LT5icmFuY2gyOworCQkJb3RoZXJfYnJhbmNoID0gb3B0LT5icmFuY2gxOworCQkJY29udGVudHMgPSBiOwogCQkJY29uZiA9IF8oImRpcmVjdG9yeS9maWxlIik7CiAJCX0KLQkJaWYgKGRpcl9pbl93YXkocGF0aCwKLQkJCSAgICAgICAhby0+Y2FsbF9kZXB0aCAmJiAhU19JU0dJVExJTksoYV9tb2RlKSwKKwkJaWYgKGRpcl9pbl93YXkob3B0LT5yZXBvLT5pbmRleCwgcGF0aCwKKwkJCSAgICAgICAhb3B0LT5wcml2LT5jYWxsX2RlcHRoICYmICFTX0lTR0lUTElOSyhhLT5tb2RlKSwKIAkJCSAgICAgICAwKSkgewotCQkJY2hhciAqbmV3X3BhdGggPSB1bmlxdWVfcGF0aChvLCBwYXRoLCBhZGRfYnJhbmNoKTsKKwkJCWNoYXIgKm5ld19wYXRoID0gdW5pcXVlX3BhdGgob3B0LCBwYXRoLCBhZGRfYnJhbmNoKTsKIAkJCWNsZWFuX21lcmdlID0gMDsKLQkJCW91dHB1dChvLCAxLCBfKCJDT05GTElDVCAoJXMpOiBUaGVyZSBpcyBhIGRpcmVjdG9yeSB3aXRoIG5hbWUgJXMgaW4gJXMuICIKKwkJCW91dHB1dChvcHQsIDEsIF8oIkNPTkZMSUNUICglcyk6IFRoZXJlIGlzIGEgZGlyZWN0b3J5IHdpdGggbmFtZSAlcyBpbiAlcy4gIgogCQkJICAgICAgICJBZGRpbmcgJXMgYXMgJXMiKSwKIAkJCSAgICAgICBjb25mLCBwYXRoLCBvdGhlcl9icmFuY2gsIHBhdGgsIG5ld19wYXRoKTsKLQkJCWlmICh1cGRhdGVfZmlsZShvLCAwLCBvaWQsIG1vZGUsIG5ld19wYXRoKSkKKwkJCWlmICh1cGRhdGVfZmlsZShvcHQsIDAsIGNvbnRlbnRzLCBuZXdfcGF0aCkpCiAJCQkJY2xlYW5fbWVyZ2UgPSAtMTsKLQkJCWVsc2UgaWYgKG8tPmNhbGxfZGVwdGgpCi0JCQkJcmVtb3ZlX2ZpbGVfZnJvbV9jYWNoZShwYXRoKTsKKwkJCWVsc2UgaWYgKG9wdC0+cHJpdi0+Y2FsbF9kZXB0aCkKKwkJCQlyZW1vdmVfZmlsZV9mcm9tX2luZGV4KG9wdC0+cmVwby0+aW5kZXgsIHBhdGgpOwogCQkJZnJlZShuZXdfcGF0aCk7CiAJCX0gZWxzZSB7Ci0JCQlvdXRwdXQobywgMiwgXygiQWRkaW5nICVzIiksIHBhdGgpOworCQkJb3V0cHV0KG9wdCwgMiwgXygiQWRkaW5nICVzIiksIHBhdGgpOwogCQkJLyogZG8gbm90IG92ZXJ3cml0ZSBmaWxlIGlmIGFscmVhZHkgcHJlc2VudCAqLwotCQkJaWYgKHVwZGF0ZV9maWxlX2ZsYWdzKG8sIG9pZCwgbW9kZSwgcGF0aCwgMSwgIWFfb2lkKSkKKwkJCWlmICh1cGRhdGVfZmlsZV9mbGFncyhvcHQsIGNvbnRlbnRzLCBwYXRoLCAxLCAhYV92YWxpZCkpCiAJCQkJY2xlYW5fbWVyZ2UgPSAtMTsKIAkJfQotCX0gZWxzZSBpZiAoYV9vaWQgJiYgYl9vaWQpIHsKLQkJLyogQ2FzZSBDOiBBZGRlZCBpbiBib3RoIChjaGVjayBmb3Igc2FtZSBwZXJtaXNzaW9ucykgYW5kICovCi0JCS8qIGNhc2UgRDogTW9kaWZpZWQgaW4gYm90aCwgYnV0IGRpZmZlcmVudGx5LiAqLwotCQlpbnQgaXNfZGlydHkgPSAwOyAvKiB1bnBhY2tfdHJlZXMgd291bGQgaGF2ZSBiYWlsZWQgaWYgZGlydHkgKi8KLQkJY2xlYW5fbWVyZ2UgPSBoYW5kbGVfY29udGVudF9tZXJnZShvLCBwYXRoLCBpc19kaXJ0eSwKLQkJCQkJCSAgIG9fb2lkLCBvX21vZGUsCi0JCQkJCQkgICBhX29pZCwgYV9tb2RlLAotCQkJCQkJICAgYl9vaWQsIGJfbW9kZSwKLQkJCQkJCSAgIE5VTEwpOwotCX0gZWxzZSBpZiAoIW9fb2lkICYmICFhX29pZCAmJiAhYl9vaWQpIHsKKwl9IGVsc2UgaWYgKGFfdmFsaWQgJiYgYl92YWxpZCkgeworCQlpZiAoIW9fdmFsaWQpIHsKKwkJCS8qIENhc2UgQzogQWRkZWQgaW4gYm90aCAoY2hlY2sgZm9yIHNhbWUgcGVybWlzc2lvbnMpICovCisJCQlvdXRwdXQob3B0LCAxLAorCQkJICAgICAgIF8oIkNPTkZMSUNUIChhZGQvYWRkKTogTWVyZ2UgY29uZmxpY3QgaW4gJXMiKSwKKwkJCSAgICAgICBwYXRoKTsKKwkJCWNsZWFuX21lcmdlID0gaGFuZGxlX2ZpbGVfY29sbGlzaW9uKG9wdCwKKwkJCQkJCQkgICAgcGF0aCwgTlVMTCwgTlVMTCwKKwkJCQkJCQkgICAgb3B0LT5icmFuY2gxLAorCQkJCQkJCSAgICBvcHQtPmJyYW5jaDIsCisJCQkJCQkJICAgIGEsIGIpOworCQl9IGVsc2UgeworCQkJLyogY2FzZSBEOiBNb2RpZmllZCBpbiBib3RoLCBidXQgZGlmZmVyZW50bHkuICovCisJCQlzdHJ1Y3QgbWVyZ2VfZmlsZV9pbmZvIG1maTsKKwkJCWludCBpc19kaXJ0eSA9IDA7IC8qIHVucGFja190cmVlcyB3b3VsZCBoYXZlIGJhaWxlZCBpZiBkaXJ0eSAqLworCQkJY2xlYW5fbWVyZ2UgPSBoYW5kbGVfY29udGVudF9tZXJnZSgmbWZpLCBvcHQsIHBhdGgsCisJCQkJCQkJICAgaXNfZGlydHksCisJCQkJCQkJICAgbywgYSwgYiwgTlVMTCk7CisJCX0KKwl9IGVsc2UgaWYgKCFvX3ZhbGlkICYmICFhX3ZhbGlkICYmICFiX3ZhbGlkKSB7CiAJCS8qCiAJCSAqIHRoaXMgZW50cnkgd2FzIGRlbGV0ZWQgYWx0b2dldGhlci4gYV9tb2RlID09IDAgbWVhbnMKIAkJICogd2UgaGFkIHRoYXQgcGF0aCBhbmQgd2FudCB0byBhY3RpdmVseSByZW1vdmUgaXQuCiAJCSAqLwotCQlyZW1vdmVfZmlsZShvLCAxLCBwYXRoLCAhYV9tb2RlKTsKKwkJcmVtb3ZlX2ZpbGUob3B0LCAxLCBwYXRoLCAhYS0+bW9kZSk7CiAJfSBlbHNlCiAJCUJVRygiZmF0YWwgbWVyZ2UgZmFpbHVyZSwgc2hvdWxkbid0IGhhcHBlbi4iKTsKIAogCXJldHVybiBjbGVhbl9tZXJnZTsKIH0KIAotaW50IG1lcmdlX3RyZWVzKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLAotCQlzdHJ1Y3QgdHJlZSAqaGVhZCwKLQkJc3RydWN0IHRyZWUgKm1lcmdlLAotCQlzdHJ1Y3QgdHJlZSAqY29tbW9uLAotCQlzdHJ1Y3QgdHJlZSAqKnJlc3VsdCkKK3N0YXRpYyBpbnQgbWVyZ2VfdHJlZXNfaW50ZXJuYWwoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKKwkJCQlzdHJ1Y3QgdHJlZSAqaGVhZCwKKwkJCQlzdHJ1Y3QgdHJlZSAqbWVyZ2UsCisJCQkJc3RydWN0IHRyZWUgKm1lcmdlX2Jhc2UsCisJCQkJc3RydWN0IHRyZWUgKipyZXN1bHQpCiB7CisJc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUgPSBvcHQtPnJlcG8tPmluZGV4OwogCWludCBjb2RlLCBjbGVhbjsKLQlzdHJ1Y3Qgc3RyYnVmIHNiID0gU1RSQlVGX0lOSVQ7CiAKLQlpZiAoIW8tPmNhbGxfZGVwdGggJiYgaW5kZXhfaGFzX2NoYW5nZXMoJnRoZV9pbmRleCwgaGVhZCwgJnNiKSkgewotCQllcnIobywgXygiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4gICVzIiksCi0JCSAgICBzYi5idWYpOwotCQlyZXR1cm4gLTE7CisJaWYgKG9wdC0+c3VidHJlZV9zaGlmdCkgeworCQltZXJnZSA9IHNoaWZ0X3RyZWVfb2JqZWN0KG9wdC0+cmVwbywgaGVhZCwgbWVyZ2UsCisJCQkJCSAgb3B0LT5zdWJ0cmVlX3NoaWZ0KTsKKwkJbWVyZ2VfYmFzZSA9IHNoaWZ0X3RyZWVfb2JqZWN0KG9wdC0+cmVwbywgaGVhZCwgbWVyZ2VfYmFzZSwKKwkJCQkJICAgICAgIG9wdC0+c3VidHJlZV9zaGlmdCk7CiAJfQogCi0JaWYgKG8tPnN1YnRyZWVfc2hpZnQpIHsKLQkJbWVyZ2UgPSBzaGlmdF90cmVlX29iamVjdChoZWFkLCBtZXJnZSwgby0+c3VidHJlZV9zaGlmdCk7Ci0JCWNvbW1vbiA9IHNoaWZ0X3RyZWVfb2JqZWN0KGhlYWQsIGNvbW1vbiwgby0+c3VidHJlZV9zaGlmdCk7Ci0JfQotCi0JaWYgKG9pZF9lcSgmY29tbW9uLT5vYmplY3Qub2lkLCAmbWVyZ2UtPm9iamVjdC5vaWQpKSB7Ci0JCW91dHB1dChvLCAwLCBfKCJBbHJlYWR5IHVwIHRvIGRhdGUhIikpOworCWlmIChvaWRlcSgmbWVyZ2VfYmFzZS0+b2JqZWN0Lm9pZCwgJm1lcmdlLT5vYmplY3Qub2lkKSkgeworCQlvdXRwdXQob3B0LCAwLCBfKCJBbHJlYWR5IHVwIHRvIGRhdGUhIikpOwogCQkqcmVzdWx0ID0gaGVhZDsKIAkJcmV0dXJuIDE7CiAJfQogCi0JY29kZSA9IHVucGFja190cmVlc19zdGFydChvLCBjb21tb24sIGhlYWQsIG1lcmdlKTsKKwljb2RlID0gdW5wYWNrX3RyZWVzX3N0YXJ0KG9wdCwgbWVyZ2VfYmFzZSwgaGVhZCwgbWVyZ2UpOwogCiAJaWYgKGNvZGUgIT0gMCkgewotCQlpZiAoc2hvdyhvLCA0KSB8fCBvLT5jYWxsX2RlcHRoKQotCQkJZXJyKG8sIF8oIm1lcmdpbmcgb2YgdHJlZXMgJXMgYW5kICVzIGZhaWxlZCIpLAorCQlpZiAoc2hvdyhvcHQsIDQpIHx8IG9wdC0+cHJpdi0+Y2FsbF9kZXB0aCkKKwkJCWVycihvcHQsIF8oIm1lcmdpbmcgb2YgdHJlZXMgJXMgYW5kICVzIGZhaWxlZCIpLAogCQkJICAgIG9pZF90b19oZXgoJmhlYWQtPm9iamVjdC5vaWQpLAogCQkJICAgIG9pZF90b19oZXgoJm1lcmdlLT5vYmplY3Qub2lkKSk7Ci0JCXVucGFja190cmVlc19maW5pc2gobyk7CisJCXVucGFja190cmVlc19maW5pc2gob3B0KTsKIAkJcmV0dXJuIC0xOwogCX0KIAotCWlmICh1bm1lcmdlZF9jYWNoZSgpKSB7CisJaWYgKHVubWVyZ2VkX2luZGV4KGlzdGF0ZSkpIHsKIAkJc3RydWN0IHN0cmluZ19saXN0ICplbnRyaWVzOwogCQlzdHJ1Y3QgcmVuYW1lX2luZm8gcmVfaW5mbzsKIAkJaW50IGk7CkBAIC0zMzM1LDIxICszNDQ4LDIyIEBACiAJCSAqIG9wcG9zZWQgdG8gZGVjYXJpbmcgYSBsb2NhbCBoYXNobWFwIGlzIGZvciBjb252ZW5pZW5jZQogCQkgKiBzbyB0aGF0IHdlIGRvbid0IGhhdmUgdG8gcGFzcyBpdCB0byBhcm91bmQuCiAJCSAqLwotCQloYXNobWFwX2luaXQoJm8tPmN1cnJlbnRfZmlsZV9kaXJfc2V0LCBwYXRoX2hhc2htYXBfY21wLCBOVUxMLCA1MTIpOwotCQlnZXRfZmlsZXNfZGlycyhvLCBoZWFkKTsKLQkJZ2V0X2ZpbGVzX2RpcnMobywgbWVyZ2UpOworCQloYXNobWFwX2luaXQoJm9wdC0+cHJpdi0+Y3VycmVudF9maWxlX2Rpcl9zZXQsIHBhdGhfaGFzaG1hcF9jbXAsCisJCQkgICAgIE5VTEwsIDUxMik7CisJCWdldF9maWxlc19kaXJzKG9wdCwgaGVhZCk7CisJCWdldF9maWxlc19kaXJzKG9wdCwgbWVyZ2UpOwogCi0JCWVudHJpZXMgPSBnZXRfdW5tZXJnZWQoKTsKLQkJY2xlYW4gPSBkZXRlY3RfYW5kX3Byb2Nlc3NfcmVuYW1lcyhvLCBjb21tb24sIGhlYWQsIG1lcmdlLAorCQllbnRyaWVzID0gZ2V0X3VubWVyZ2VkKG9wdC0+cmVwby0+aW5kZXgpOworCQljbGVhbiA9IGRldGVjdF9hbmRfcHJvY2Vzc19yZW5hbWVzKG9wdCwgbWVyZ2VfYmFzZSwgaGVhZCwgbWVyZ2UsCiAJCQkJCQkgICBlbnRyaWVzLCAmcmVfaW5mbyk7Ci0JCXJlY29yZF9kZl9jb25mbGljdF9maWxlcyhvLCBlbnRyaWVzKTsKKwkJcmVjb3JkX2RmX2NvbmZsaWN0X2ZpbGVzKG9wdCwgZW50cmllcyk7CiAJCWlmIChjbGVhbiA8IDApCiAJCQlnb3RvIGNsZWFudXA7CiAJCWZvciAoaSA9IGVudHJpZXMtPm5yLTE7IDAgPD0gaTsgaS0tKSB7CiAJCQljb25zdCBjaGFyICpwYXRoID0gZW50cmllcy0+aXRlbXNbaV0uc3RyaW5nOwogCQkJc3RydWN0IHN0YWdlX2RhdGEgKmUgPSBlbnRyaWVzLT5pdGVtc1tpXS51dGlsOwogCQkJaWYgKCFlLT5wcm9jZXNzZWQpIHsKLQkJCQlpbnQgcmV0ID0gcHJvY2Vzc19lbnRyeShvLCBwYXRoLCBlKTsKKwkJCQlpbnQgcmV0ID0gcHJvY2Vzc19lbnRyeShvcHQsIHBhdGgsIGUpOwogCQkJCWlmICghcmV0KQogCQkJCQljbGVhbiA9IDA7CiAJCQkJZWxzZSBpZiAocmV0IDwgMCkgewpAQCAtMzM3MSwxOSArMzQ4NSwyMSBAQAogCQlzdHJpbmdfbGlzdF9jbGVhcihlbnRyaWVzLCAxKTsKIAkJZnJlZShlbnRyaWVzKTsKIAotCQloYXNobWFwX2ZyZWUoJm8tPmN1cnJlbnRfZmlsZV9kaXJfc2V0LCAxKTsKKwkJaGFzaG1hcF9mcmVlX2VudHJpZXMoJm9wdC0+cHJpdi0+Y3VycmVudF9maWxlX2Rpcl9zZXQsCisJCQkJCXN0cnVjdCBwYXRoX2hhc2htYXBfZW50cnksIGUpOwogCiAJCWlmIChjbGVhbiA8IDApIHsKLQkJCXVucGFja190cmVlc19maW5pc2gobyk7CisJCQl1bnBhY2tfdHJlZXNfZmluaXNoKG9wdCk7CiAJCQlyZXR1cm4gY2xlYW47CiAJCX0KIAl9CiAJZWxzZQogCQljbGVhbiA9IDE7CiAKLQl1bnBhY2tfdHJlZXNfZmluaXNoKG8pOworCXVucGFja190cmVlc19maW5pc2gob3B0KTsKIAotCWlmIChvLT5jYWxsX2RlcHRoICYmICEoKnJlc3VsdCA9IHdyaXRlX3RyZWVfZnJvbV9tZW1vcnkobykpKQorCWlmIChvcHQtPnByaXYtPmNhbGxfZGVwdGggJiYKKwkgICAgISgqcmVzdWx0ID0gd3JpdGVfaW5fY29yZV9pbmRleF9hc190cmVlKG9wdC0+cmVwbykpKQogCQlyZXR1cm4gLTE7CiAKIAlyZXR1cm4gY2xlYW47CkBAIC0zNDA0LDQ5ICszNTIwLDYyIEBACiAgKiBNZXJnZSB0aGUgY29tbWl0cyBoMSBhbmQgaDIsIHJldHVybiB0aGUgcmVzdWx0aW5nIHZpcnR1YWwKICAqIGNvbW1pdCBvYmplY3QgYW5kIGEgZmxhZyBpbmRpY2F0aW5nIHRoZSBjbGVhbm5lc3Mgb2YgdGhlIG1lcmdlLgogICovCi1pbnQgbWVyZ2VfcmVjdXJzaXZlKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLAotCQkgICAgc3RydWN0IGNvbW1pdCAqaDEsCi0JCSAgICBzdHJ1Y3QgY29tbWl0ICpoMiwKLQkJICAgIHN0cnVjdCBjb21taXRfbGlzdCAqY2EsCi0JCSAgICBzdHJ1Y3QgY29tbWl0ICoqcmVzdWx0KQorc3RhdGljIGludCBtZXJnZV9yZWN1cnNpdmVfaW50ZXJuYWwoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKKwkJCQkgICAgc3RydWN0IGNvbW1pdCAqaDEsCisJCQkJICAgIHN0cnVjdCBjb21taXQgKmgyLAorCQkJCSAgICBzdHJ1Y3QgY29tbWl0X2xpc3QgKm1lcmdlX2Jhc2VzLAorCQkJCSAgICBzdHJ1Y3QgY29tbWl0ICoqcmVzdWx0KQogewogCXN0cnVjdCBjb21taXRfbGlzdCAqaXRlcjsKLQlzdHJ1Y3QgY29tbWl0ICptZXJnZWRfY29tbW9uX2FuY2VzdG9yczsKLQlzdHJ1Y3QgdHJlZSAqbXJ0cmVlOworCXN0cnVjdCBjb21taXQgKm1lcmdlZF9tZXJnZV9iYXNlczsKKwlzdHJ1Y3QgdHJlZSAqcmVzdWx0X3RyZWU7CiAJaW50IGNsZWFuOworCWNvbnN0IGNoYXIgKmFuY2VzdG9yX25hbWU7CisJc3RydWN0IHN0cmJ1ZiBtZXJnZV9iYXNlX2FiYnJldiA9IFNUUkJVRl9JTklUOwogCi0JaWYgKHNob3cobywgNCkpIHsKLQkJb3V0cHV0KG8sIDQsIF8oIk1lcmdpbmc6IikpOwotCQlvdXRwdXRfY29tbWl0X3RpdGxlKG8sIGgxKTsKLQkJb3V0cHV0X2NvbW1pdF90aXRsZShvLCBoMik7CisJaWYgKHNob3cob3B0LCA0KSkgeworCQlvdXRwdXQob3B0LCA0LCBfKCJNZXJnaW5nOiIpKTsKKwkJb3V0cHV0X2NvbW1pdF90aXRsZShvcHQsIGgxKTsKKwkJb3V0cHV0X2NvbW1pdF90aXRsZShvcHQsIGgyKTsKIAl9CiAKLQlpZiAoIWNhKSB7Ci0JCWNhID0gZ2V0X21lcmdlX2Jhc2VzKGgxLCBoMik7Ci0JCWNhID0gcmV2ZXJzZV9jb21taXRfbGlzdChjYSk7CisJaWYgKCFtZXJnZV9iYXNlcykgeworCQltZXJnZV9iYXNlcyA9IGdldF9tZXJnZV9iYXNlcyhoMSwgaDIpOworCQltZXJnZV9iYXNlcyA9IHJldmVyc2VfY29tbWl0X2xpc3QobWVyZ2VfYmFzZXMpOwogCX0KIAotCWlmIChzaG93KG8sIDUpKSB7Ci0JCXVuc2lnbmVkIGNudCA9IGNvbW1pdF9saXN0X2NvdW50KGNhKTsKKwlpZiAoc2hvdyhvcHQsIDUpKSB7CisJCXVuc2lnbmVkIGNudCA9IGNvbW1pdF9saXN0X2NvdW50KG1lcmdlX2Jhc2VzKTsKIAotCQlvdXRwdXQobywgNSwgUV8oImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcjoiLAorCQlvdXRwdXQob3B0LCA1LCBRXygiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yOiIsCiAJCQkJImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcnM6IiwgY250KSwgY250KTsKLQkJZm9yIChpdGVyID0gY2E7IGl0ZXI7IGl0ZXIgPSBpdGVyLT5uZXh0KQotCQkJb3V0cHV0X2NvbW1pdF90aXRsZShvLCBpdGVyLT5pdGVtKTsKKwkJZm9yIChpdGVyID0gbWVyZ2VfYmFzZXM7IGl0ZXI7IGl0ZXIgPSBpdGVyLT5uZXh0KQorCQkJb3V0cHV0X2NvbW1pdF90aXRsZShvcHQsIGl0ZXItPml0ZW0pOwogCX0KIAotCW1lcmdlZF9jb21tb25fYW5jZXN0b3JzID0gcG9wX2NvbW1pdCgmY2EpOwotCWlmIChtZXJnZWRfY29tbW9uX2FuY2VzdG9ycyA9PSBOVUxMKSB7CisJbWVyZ2VkX21lcmdlX2Jhc2VzID0gcG9wX2NvbW1pdCgmbWVyZ2VfYmFzZXMpOworCWlmIChtZXJnZWRfbWVyZ2VfYmFzZXMgPT0gTlVMTCkgewogCQkvKiBpZiB0aGVyZSBpcyBubyBjb21tb24gYW5jZXN0b3IsIHVzZSBhbiBlbXB0eSB0cmVlICovCiAJCXN0cnVjdCB0cmVlICp0cmVlOwogCi0JCXRyZWUgPSBsb29rdXBfdHJlZSh0aGVfcmVwb3NpdG9yeSwgdGhlX3JlcG9zaXRvcnktPmhhc2hfYWxnby0+ZW1wdHlfdHJlZSk7Ci0JCW1lcmdlZF9jb21tb25fYW5jZXN0b3JzID0gbWFrZV92aXJ0dWFsX2NvbW1pdCh0cmVlLCAiYW5jZXN0b3IiKTsKKwkJdHJlZSA9IGxvb2t1cF90cmVlKG9wdC0+cmVwbywgb3B0LT5yZXBvLT5oYXNoX2FsZ28tPmVtcHR5X3RyZWUpOworCQltZXJnZWRfbWVyZ2VfYmFzZXMgPSBtYWtlX3ZpcnR1YWxfY29tbWl0KG9wdC0+cmVwbywgdHJlZSwKKwkJCQkJCQkgImFuY2VzdG9yIik7CisJCWFuY2VzdG9yX25hbWUgPSAiZW1wdHkgdHJlZSI7CisJfSBlbHNlIGlmIChvcHQtPmFuY2VzdG9yICYmICFvcHQtPnByaXYtPmNhbGxfZGVwdGgpIHsKKwkJYW5jZXN0b3JfbmFtZSA9IG9wdC0+YW5jZXN0b3I7CisJfSBlbHNlIGlmIChtZXJnZV9iYXNlcykgeworCQlhbmNlc3Rvcl9uYW1lID0gIm1lcmdlZCBjb21tb24gYW5jZXN0b3JzIjsKKwl9IGVsc2UgeworCQlzdHJidWZfYWRkX3VuaXF1ZV9hYmJyZXYoJm1lcmdlX2Jhc2VfYWJicmV2LAorCQkJCQkgJm1lcmdlZF9tZXJnZV9iYXNlcy0+b2JqZWN0Lm9pZCwKKwkJCQkJIERFRkFVTFRfQUJCUkVWKTsKKwkJYW5jZXN0b3JfbmFtZSA9IG1lcmdlX2Jhc2VfYWJicmV2LmJ1ZjsKIAl9CiAKLQlmb3IgKGl0ZXIgPSBjYTsgaXRlcjsgaXRlciA9IGl0ZXItPm5leHQpIHsKKwlmb3IgKGl0ZXIgPSBtZXJnZV9iYXNlczsgaXRlcjsgaXRlciA9IGl0ZXItPm5leHQpIHsKIAkJY29uc3QgY2hhciAqc2F2ZWRfYjEsICpzYXZlZF9iMjsKLQkJby0+Y2FsbF9kZXB0aCsrOworCQlvcHQtPnByaXYtPmNhbGxfZGVwdGgrKzsKIAkJLyoKIAkJICogV2hlbiB0aGUgbWVyZ2UgZmFpbHMsIHRoZSByZXN1bHQgY29udGFpbnMgZmlsZXMKIAkJICogd2l0aCBjb25mbGljdCBtYXJrZXJzLiBUaGUgY2xlYW5uZXNzIGZsYWcgaXMKQEAgLTM0NTUsNjAgKzM1ODQsMTQ5IEBACiAJCSAqIG92ZXJ3cml0dGVuIGl0OiB0aGUgY29tbWl0dGVkICJjb25mbGljdHMiIHdlcmUKIAkJICogYWxyZWFkeSByZXNvbHZlZC4KIAkJICovCi0JCWRpc2NhcmRfY2FjaGUoKTsKLQkJc2F2ZWRfYjEgPSBvLT5icmFuY2gxOwotCQlzYXZlZF9iMiA9IG8tPmJyYW5jaDI7Ci0JCW8tPmJyYW5jaDEgPSAiVGVtcG9yYXJ5IG1lcmdlIGJyYW5jaCAxIjsKLQkJby0+YnJhbmNoMiA9ICJUZW1wb3JhcnkgbWVyZ2UgYnJhbmNoIDIiOwotCQlpZiAobWVyZ2VfcmVjdXJzaXZlKG8sIG1lcmdlZF9jb21tb25fYW5jZXN0b3JzLCBpdGVyLT5pdGVtLAotCQkJCSAgICBOVUxMLCAmbWVyZ2VkX2NvbW1vbl9hbmNlc3RvcnMpIDwgMCkKKwkJZGlzY2FyZF9pbmRleChvcHQtPnJlcG8tPmluZGV4KTsKKwkJc2F2ZWRfYjEgPSBvcHQtPmJyYW5jaDE7CisJCXNhdmVkX2IyID0gb3B0LT5icmFuY2gyOworCQlvcHQtPmJyYW5jaDEgPSAiVGVtcG9yYXJ5IG1lcmdlIGJyYW5jaCAxIjsKKwkJb3B0LT5icmFuY2gyID0gIlRlbXBvcmFyeSBtZXJnZSBicmFuY2ggMiI7CisJCWlmIChtZXJnZV9yZWN1cnNpdmVfaW50ZXJuYWwob3B0LCBtZXJnZWRfbWVyZ2VfYmFzZXMsIGl0ZXItPml0ZW0sCisJCQkJCSAgICAgTlVMTCwgJm1lcmdlZF9tZXJnZV9iYXNlcykgPCAwKQogCQkJcmV0dXJuIC0xOwotCQlvLT5icmFuY2gxID0gc2F2ZWRfYjE7Ci0JCW8tPmJyYW5jaDIgPSBzYXZlZF9iMjsKLQkJby0+Y2FsbF9kZXB0aC0tOworCQlvcHQtPmJyYW5jaDEgPSBzYXZlZF9iMTsKKwkJb3B0LT5icmFuY2gyID0gc2F2ZWRfYjI7CisJCW9wdC0+cHJpdi0+Y2FsbF9kZXB0aC0tOwogCi0JCWlmICghbWVyZ2VkX2NvbW1vbl9hbmNlc3RvcnMpCi0JCQlyZXR1cm4gZXJyKG8sIF8oIm1lcmdlIHJldHVybmVkIG5vIGNvbW1pdCIpKTsKKwkJaWYgKCFtZXJnZWRfbWVyZ2VfYmFzZXMpCisJCQlyZXR1cm4gZXJyKG9wdCwgXygibWVyZ2UgcmV0dXJuZWQgbm8gY29tbWl0IikpOwogCX0KIAotCWRpc2NhcmRfY2FjaGUoKTsKLQlpZiAoIW8tPmNhbGxfZGVwdGgpCi0JCXJlYWRfY2FjaGUoKTsKKwlkaXNjYXJkX2luZGV4KG9wdC0+cmVwby0+aW5kZXgpOworCWlmICghb3B0LT5wcml2LT5jYWxsX2RlcHRoKQorCQlyZXBvX3JlYWRfaW5kZXgob3B0LT5yZXBvKTsKIAotCW8tPmFuY2VzdG9yID0gIm1lcmdlZCBjb21tb24gYW5jZXN0b3JzIjsKLQljbGVhbiA9IG1lcmdlX3RyZWVzKG8sIGdldF9jb21taXRfdHJlZShoMSksIGdldF9jb21taXRfdHJlZShoMiksCi0JCQkgICAgZ2V0X2NvbW1pdF90cmVlKG1lcmdlZF9jb21tb25fYW5jZXN0b3JzKSwKLQkJCSAgICAmbXJ0cmVlKTsKKwlvcHQtPmFuY2VzdG9yID0gYW5jZXN0b3JfbmFtZTsKKwljbGVhbiA9IG1lcmdlX3RyZWVzX2ludGVybmFsKG9wdCwKKwkJCQkgICAgIHJlcG9fZ2V0X2NvbW1pdF90cmVlKG9wdC0+cmVwbywgaDEpLAorCQkJCSAgICAgcmVwb19nZXRfY29tbWl0X3RyZWUob3B0LT5yZXBvLCBoMiksCisJCQkJICAgICByZXBvX2dldF9jb21taXRfdHJlZShvcHQtPnJlcG8sCisJCQkJCQkJICBtZXJnZWRfbWVyZ2VfYmFzZXMpLAorCQkJCSAgICAgJnJlc3VsdF90cmVlKTsKKwlzdHJidWZfcmVsZWFzZSgmbWVyZ2VfYmFzZV9hYmJyZXYpOworCW9wdC0+YW5jZXN0b3IgPSBOVUxMOyAgLyogYXZvaWQgYWNjaWRlbnRhbCByZS11c2Ugb2Ygb3B0LT5hbmNlc3RvciAqLwogCWlmIChjbGVhbiA8IDApIHsKLQkJZmx1c2hfb3V0cHV0KG8pOworCQlmbHVzaF9vdXRwdXQob3B0KTsKIAkJcmV0dXJuIGNsZWFuOwogCX0KIAotCWlmIChvLT5jYWxsX2RlcHRoKSB7Ci0JCSpyZXN1bHQgPSBtYWtlX3ZpcnR1YWxfY29tbWl0KG1ydHJlZSwgIm1lcmdlZCB0cmVlIik7CisJaWYgKG9wdC0+cHJpdi0+Y2FsbF9kZXB0aCkgeworCQkqcmVzdWx0ID0gbWFrZV92aXJ0dWFsX2NvbW1pdChvcHQtPnJlcG8sIHJlc3VsdF90cmVlLAorCQkJCQkgICAgICAibWVyZ2VkIHRyZWUiKTsKIAkJY29tbWl0X2xpc3RfaW5zZXJ0KGgxLCAmKCpyZXN1bHQpLT5wYXJlbnRzKTsKIAkJY29tbWl0X2xpc3RfaW5zZXJ0KGgyLCAmKCpyZXN1bHQpLT5wYXJlbnRzLT5uZXh0KTsKIAl9Ci0JZmx1c2hfb3V0cHV0KG8pOwotCWlmICghby0+Y2FsbF9kZXB0aCAmJiBvLT5idWZmZXJfb3V0cHV0IDwgMikKLQkJc3RyYnVmX3JlbGVhc2UoJm8tPm9idWYpOwotCWlmIChzaG93KG8sIDIpKQotCQlkaWZmX3dhcm5fcmVuYW1lX2xpbWl0KCJtZXJnZS5yZW5hbWVsaW1pdCIsCi0JCQkJICAgICAgIG8tPm5lZWRlZF9yZW5hbWVfbGltaXQsIDApOwogCXJldHVybiBjbGVhbjsKIH0KIAotc3RhdGljIHN0cnVjdCBjb21taXQgKmdldF9yZWYoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBjb25zdCBjaGFyICpuYW1lKQorc3RhdGljIGludCBtZXJnZV9zdGFydChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LCBzdHJ1Y3QgdHJlZSAqaGVhZCkKK3sKKwlzdHJ1Y3Qgc3RyYnVmIHNiID0gU1RSQlVGX0lOSVQ7CisKKwkvKiBTYW5pdHkgY2hlY2tzIG9uIG9wdCAqLworCWFzc2VydChvcHQtPnJlcG8pOworCisJYXNzZXJ0KG9wdC0+YnJhbmNoMSAmJiBvcHQtPmJyYW5jaDIpOworCisJYXNzZXJ0KG9wdC0+ZGV0ZWN0X3JlbmFtZXMgPj0gLTEgJiYKKwkgICAgICAgb3B0LT5kZXRlY3RfcmVuYW1lcyA8PSBESUZGX0RFVEVDVF9DT1BZKTsKKwlhc3NlcnQob3B0LT5kZXRlY3RfZGlyZWN0b3J5X3JlbmFtZXMgPj0gTUVSR0VfRElSRUNUT1JZX1JFTkFNRVNfTk9ORSAmJgorCSAgICAgICBvcHQtPmRldGVjdF9kaXJlY3RvcnlfcmVuYW1lcyA8PSBNRVJHRV9ESVJFQ1RPUllfUkVOQU1FU19UUlVFKTsKKwlhc3NlcnQob3B0LT5yZW5hbWVfbGltaXQgPj0gLTEpOworCWFzc2VydChvcHQtPnJlbmFtZV9zY29yZSA+PSAwICYmIG9wdC0+cmVuYW1lX3Njb3JlIDw9IE1BWF9TQ09SRSk7CisJYXNzZXJ0KG9wdC0+c2hvd19yZW5hbWVfcHJvZ3Jlc3MgPj0gMCAmJiBvcHQtPnNob3dfcmVuYW1lX3Byb2dyZXNzIDw9IDEpOworCisJYXNzZXJ0KG9wdC0+eGRsX29wdHMgPj0gMCk7CisJYXNzZXJ0KG9wdC0+cmVjdXJzaXZlX3ZhcmlhbnQgPj0gTUVSR0VfVkFSSUFOVF9OT1JNQUwgJiYKKwkgICAgICAgb3B0LT5yZWN1cnNpdmVfdmFyaWFudCA8PSBNRVJHRV9WQVJJQU5UX1RIRUlSUyk7CisKKwlhc3NlcnQob3B0LT52ZXJib3NpdHkgPj0gMCAmJiBvcHQtPnZlcmJvc2l0eSA8PSA1KTsKKwlhc3NlcnQob3B0LT5idWZmZXJfb3V0cHV0IDw9IDIpOworCWFzc2VydChvcHQtPm9idWYubGVuID09IDApOworCisJYXNzZXJ0KG9wdC0+cHJpdiA9PSBOVUxMKTsKKworCS8qIFNhbml0eSBjaGVjayBvbiByZXBvIHN0YXRlOyBpbmRleCBtdXN0IG1hdGNoIGhlYWQgKi8KKwlpZiAocmVwb19pbmRleF9oYXNfY2hhbmdlcyhvcHQtPnJlcG8sIGhlYWQsICZzYikpIHsKKwkJZXJyKG9wdCwgXygiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4gICVzIiksCisJCSAgICBzYi5idWYpOworCQlzdHJidWZfcmVsZWFzZSgmc2IpOworCQlyZXR1cm4gLTE7CisJfQorCisJb3B0LT5wcml2ID0geGNhbGxvYygxLCBzaXplb2YoKm9wdC0+cHJpdikpOworCXN0cmluZ19saXN0X2luaXQoJm9wdC0+cHJpdi0+ZGZfY29uZmxpY3RfZmlsZV9zZXQsIDEpOworCXJldHVybiAwOworfQorCitzdGF0aWMgdm9pZCBtZXJnZV9maW5hbGl6ZShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0KQoreworCWZsdXNoX291dHB1dChvcHQpOworCWlmICghb3B0LT5wcml2LT5jYWxsX2RlcHRoICYmIG9wdC0+YnVmZmVyX291dHB1dCA8IDIpCisJCXN0cmJ1Zl9yZWxlYXNlKCZvcHQtPm9idWYpOworCWlmIChzaG93KG9wdCwgMikpCisJCWRpZmZfd2Fybl9yZW5hbWVfbGltaXQoIm1lcmdlLnJlbmFtZWxpbWl0IiwKKwkJCQkgICAgICAgb3B0LT5wcml2LT5uZWVkZWRfcmVuYW1lX2xpbWl0LCAwKTsKKwlGUkVFX0FORF9OVUxMKG9wdC0+cHJpdik7Cit9CisKK2ludCBtZXJnZV90cmVlcyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAorCQlzdHJ1Y3QgdHJlZSAqaGVhZCwKKwkJc3RydWN0IHRyZWUgKm1lcmdlLAorCQlzdHJ1Y3QgdHJlZSAqbWVyZ2VfYmFzZSkKK3sKKwlpbnQgY2xlYW47CisJc3RydWN0IHRyZWUgKmlnbm9yZWQ7CisKKwlhc3NlcnQob3B0LT5hbmNlc3RvciAhPSBOVUxMKTsKKworCWlmIChtZXJnZV9zdGFydChvcHQsIGhlYWQpKQorCQlyZXR1cm4gLTE7CisJY2xlYW4gPSBtZXJnZV90cmVlc19pbnRlcm5hbChvcHQsIGhlYWQsIG1lcmdlLCBtZXJnZV9iYXNlLCAmaWdub3JlZCk7CisJbWVyZ2VfZmluYWxpemUob3B0KTsKKworCXJldHVybiBjbGVhbjsKK30KKworaW50IG1lcmdlX3JlY3Vyc2l2ZShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAorCQkgICAgc3RydWN0IGNvbW1pdCAqaDEsCisJCSAgICBzdHJ1Y3QgY29tbWl0ICpoMiwKKwkJICAgIHN0cnVjdCBjb21taXRfbGlzdCAqbWVyZ2VfYmFzZXMsCisJCSAgICBzdHJ1Y3QgY29tbWl0ICoqcmVzdWx0KQoreworCWludCBjbGVhbjsKKworCWFzc2VydChvcHQtPmFuY2VzdG9yID09IE5VTEwgfHwKKwkgICAgICAgIXN0cmNtcChvcHQtPmFuY2VzdG9yLCAiY29uc3RydWN0ZWQgbWVyZ2UgYmFzZSIpKTsKKworCWlmIChtZXJnZV9zdGFydChvcHQsIHJlcG9fZ2V0X2NvbW1pdF90cmVlKG9wdC0+cmVwbywgaDEpKSkKKwkJcmV0dXJuIC0xOworCWNsZWFuID0gbWVyZ2VfcmVjdXJzaXZlX2ludGVybmFsKG9wdCwgaDEsIGgyLCBtZXJnZV9iYXNlcywgcmVzdWx0KTsKKwltZXJnZV9maW5hbGl6ZShvcHQpOworCisJcmV0dXJuIGNsZWFuOworfQorCitzdGF0aWMgc3RydWN0IGNvbW1pdCAqZ2V0X3JlZihzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCSAgICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCSAgICAgIGNvbnN0IGNoYXIgKm5hbWUpCiB7CiAJc3RydWN0IG9iamVjdCAqb2JqZWN0OwogCi0Jb2JqZWN0ID0gZGVyZWZfdGFnKHRoZV9yZXBvc2l0b3J5LCBwYXJzZV9vYmplY3QodGhlX3JlcG9zaXRvcnksIG9pZCksCi0JCQkgICBuYW1lLAotCQkJICAgc3RybGVuKG5hbWUpKTsKKwlvYmplY3QgPSBkZXJlZl90YWcocmVwbywgcGFyc2Vfb2JqZWN0KHJlcG8sIG9pZCksCisJCQkgICBuYW1lLCBzdHJsZW4obmFtZSkpOwogCWlmICghb2JqZWN0KQogCQlyZXR1cm4gTlVMTDsKIAlpZiAob2JqZWN0LT50eXBlID09IE9CSl9UUkVFKQotCQlyZXR1cm4gbWFrZV92aXJ0dWFsX2NvbW1pdCgoc3RydWN0IHRyZWUqKW9iamVjdCwgbmFtZSk7CisJCXJldHVybiBtYWtlX3ZpcnR1YWxfY29tbWl0KHJlcG8sIChzdHJ1Y3QgdHJlZSopb2JqZWN0LCBuYW1lKTsKIAlpZiAob2JqZWN0LT50eXBlICE9IE9CSl9DT01NSVQpCiAJCXJldHVybiBOVUxMOwogCWlmIChwYXJzZV9jb21taXQoKHN0cnVjdCBjb21taXQgKilvYmplY3QpKQpAQCAtMzUxNiwxMzUgKzM3MzQsMTU4IEBACiAJcmV0dXJuIChzdHJ1Y3QgY29tbWl0ICopb2JqZWN0OwogfQogCi1pbnQgbWVyZ2VfcmVjdXJzaXZlX2dlbmVyaWMoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCitpbnQgbWVyZ2VfcmVjdXJzaXZlX2dlbmVyaWMoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKIAkJCSAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpoZWFkLAogCQkJICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm1lcmdlLAotCQkJICAgIGludCBudW1fYmFzZV9saXN0LAotCQkJICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKipiYXNlX2xpc3QsCisJCQkgICAgaW50IG51bV9tZXJnZV9iYXNlcywKKwkJCSAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICoqbWVyZ2VfYmFzZXMsCiAJCQkgICAgc3RydWN0IGNvbW1pdCAqKnJlc3VsdCkKIHsKIAlpbnQgY2xlYW47CiAJc3RydWN0IGxvY2tfZmlsZSBsb2NrID0gTE9DS19JTklUOwotCXN0cnVjdCBjb21taXQgKmhlYWRfY29tbWl0ID0gZ2V0X3JlZihoZWFkLCBvLT5icmFuY2gxKTsKLQlzdHJ1Y3QgY29tbWl0ICpuZXh0X2NvbW1pdCA9IGdldF9yZWYobWVyZ2UsIG8tPmJyYW5jaDIpOworCXN0cnVjdCBjb21taXQgKmhlYWRfY29tbWl0ID0gZ2V0X3JlZihvcHQtPnJlcG8sIGhlYWQsIG9wdC0+YnJhbmNoMSk7CisJc3RydWN0IGNvbW1pdCAqbmV4dF9jb21taXQgPSBnZXRfcmVmKG9wdC0+cmVwbywgbWVyZ2UsIG9wdC0+YnJhbmNoMik7CiAJc3RydWN0IGNvbW1pdF9saXN0ICpjYSA9IE5VTEw7CiAKLQlpZiAoYmFzZV9saXN0KSB7CisJaWYgKG1lcmdlX2Jhc2VzKSB7CiAJCWludCBpOwotCQlmb3IgKGkgPSAwOyBpIDwgbnVtX2Jhc2VfbGlzdDsgKytpKSB7CisJCWZvciAoaSA9IDA7IGkgPCBudW1fbWVyZ2VfYmFzZXM7ICsraSkgewogCQkJc3RydWN0IGNvbW1pdCAqYmFzZTsKLQkJCWlmICghKGJhc2UgPSBnZXRfcmVmKGJhc2VfbGlzdFtpXSwgb2lkX3RvX2hleChiYXNlX2xpc3RbaV0pKSkpCi0JCQkJcmV0dXJuIGVycihvLCBfKCJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcyciKSwKLQkJCQkJICAgb2lkX3RvX2hleChiYXNlX2xpc3RbaV0pKTsKKwkJCWlmICghKGJhc2UgPSBnZXRfcmVmKG9wdC0+cmVwbywgbWVyZ2VfYmFzZXNbaV0sCisJCQkJCSAgICAgb2lkX3RvX2hleChtZXJnZV9iYXNlc1tpXSkpKSkKKwkJCQlyZXR1cm4gZXJyKG9wdCwgXygiQ291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnIiksCisJCQkJCSAgIG9pZF90b19oZXgobWVyZ2VfYmFzZXNbaV0pKTsKIAkJCWNvbW1pdF9saXN0X2luc2VydChiYXNlLCAmY2EpOwogCQl9CisJCWlmIChudW1fbWVyZ2VfYmFzZXMgPT0gMSkKKwkJCW9wdC0+YW5jZXN0b3IgPSAiY29uc3RydWN0ZWQgbWVyZ2UgYmFzZSI7CiAJfQogCi0JaG9sZF9sb2NrZWRfaW5kZXgoJmxvY2ssIExPQ0tfRElFX09OX0VSUk9SKTsKLQljbGVhbiA9IG1lcmdlX3JlY3Vyc2l2ZShvLCBoZWFkX2NvbW1pdCwgbmV4dF9jb21taXQsIGNhLAorCXJlcG9faG9sZF9sb2NrZWRfaW5kZXgob3B0LT5yZXBvLCAmbG9jaywgTE9DS19ESUVfT05fRVJST1IpOworCWNsZWFuID0gbWVyZ2VfcmVjdXJzaXZlKG9wdCwgaGVhZF9jb21taXQsIG5leHRfY29tbWl0LCBjYSwKIAkJCQlyZXN1bHQpOwogCWlmIChjbGVhbiA8IDApIHsKIAkJcm9sbGJhY2tfbG9ja19maWxlKCZsb2NrKTsKIAkJcmV0dXJuIGNsZWFuOwogCX0KIAotCWlmICh3cml0ZV9sb2NrZWRfaW5kZXgoJnRoZV9pbmRleCwgJmxvY2ssCisJaWYgKHdyaXRlX2xvY2tlZF9pbmRleChvcHQtPnJlcG8tPmluZGV4LCAmbG9jaywKIAkJCSAgICAgICBDT01NSVRfTE9DSyB8IFNLSVBfSUZfVU5DSEFOR0VEKSkKLQkJcmV0dXJuIGVycihvLCBfKCJVbmFibGUgdG8gd3JpdGUgaW5kZXguIikpOworCQlyZXR1cm4gZXJyKG9wdCwgXygiVW5hYmxlIHRvIHdyaXRlIGluZGV4LiIpKTsKIAogCXJldHVybiBjbGVhbiA/IDAgOiAxOwogfQogCi1zdGF0aWMgdm9pZCBtZXJnZV9yZWN1cnNpdmVfY29uZmlnKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvKQorc3RhdGljIHZvaWQgbWVyZ2VfcmVjdXJzaXZlX2NvbmZpZyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0KQogewogCWNoYXIgKnZhbHVlID0gTlVMTDsKLQlnaXRfY29uZmlnX2dldF9pbnQoIm1lcmdlLnZlcmJvc2l0eSIsICZvLT52ZXJib3NpdHkpOwotCWdpdF9jb25maWdfZ2V0X2ludCgiZGlmZi5yZW5hbWVsaW1pdCIsICZvLT5kaWZmX3JlbmFtZV9saW1pdCk7Ci0JZ2l0X2NvbmZpZ19nZXRfaW50KCJtZXJnZS5yZW5hbWVsaW1pdCIsICZvLT5tZXJnZV9yZW5hbWVfbGltaXQpOworCWdpdF9jb25maWdfZ2V0X2ludCgibWVyZ2UudmVyYm9zaXR5IiwgJm9wdC0+dmVyYm9zaXR5KTsKKwlnaXRfY29uZmlnX2dldF9pbnQoImRpZmYucmVuYW1lbGltaXQiLCAmb3B0LT5yZW5hbWVfbGltaXQpOworCWdpdF9jb25maWdfZ2V0X2ludCgibWVyZ2UucmVuYW1lbGltaXQiLCAmb3B0LT5yZW5hbWVfbGltaXQpOwogCWlmICghZ2l0X2NvbmZpZ19nZXRfc3RyaW5nKCJkaWZmLnJlbmFtZXMiLCAmdmFsdWUpKSB7Ci0JCW8tPmRpZmZfZGV0ZWN0X3JlbmFtZSA9IGdpdF9jb25maWdfcmVuYW1lKCJkaWZmLnJlbmFtZXMiLCB2YWx1ZSk7CisJCW9wdC0+ZGV0ZWN0X3JlbmFtZXMgPSBnaXRfY29uZmlnX3JlbmFtZSgiZGlmZi5yZW5hbWVzIiwgdmFsdWUpOwogCQlmcmVlKHZhbHVlKTsKIAl9CiAJaWYgKCFnaXRfY29uZmlnX2dldF9zdHJpbmcoIm1lcmdlLnJlbmFtZXMiLCAmdmFsdWUpKSB7Ci0JCW8tPm1lcmdlX2RldGVjdF9yZW5hbWUgPSBnaXRfY29uZmlnX3JlbmFtZSgibWVyZ2UucmVuYW1lcyIsIHZhbHVlKTsKKwkJb3B0LT5kZXRlY3RfcmVuYW1lcyA9IGdpdF9jb25maWdfcmVuYW1lKCJtZXJnZS5yZW5hbWVzIiwgdmFsdWUpOworCQlmcmVlKHZhbHVlKTsKKwl9CisJaWYgKCFnaXRfY29uZmlnX2dldF9zdHJpbmcoIm1lcmdlLmRpcmVjdG9yeXJlbmFtZXMiLCAmdmFsdWUpKSB7CisJCWludCBib29sdmFsID0gZ2l0X3BhcnNlX21heWJlX2Jvb2wodmFsdWUpOworCQlpZiAoMCA8PSBib29sdmFsKSB7CisJCQlvcHQtPmRldGVjdF9kaXJlY3RvcnlfcmVuYW1lcyA9IGJvb2x2YWwgPworCQkJCU1FUkdFX0RJUkVDVE9SWV9SRU5BTUVTX1RSVUUgOgorCQkJCU1FUkdFX0RJUkVDVE9SWV9SRU5BTUVTX05PTkU7CisJCX0gZWxzZSBpZiAoIXN0cmNhc2VjbXAodmFsdWUsICJjb25mbGljdCIpKSB7CisJCQlvcHQtPmRldGVjdF9kaXJlY3RvcnlfcmVuYW1lcyA9CisJCQkJTUVSR0VfRElSRUNUT1JZX1JFTkFNRVNfQ09ORkxJQ1Q7CisJCX0gLyogYXZvaWQgZXJyb3Jpbmcgb24gdmFsdWVzIGZyb20gZnV0dXJlIHZlcnNpb25zIG9mIGdpdCAqLwogCQlmcmVlKHZhbHVlKTsKIAl9CiAJZ2l0X2NvbmZpZyhnaXRfeG1lcmdlX2NvbmZpZywgTlVMTCk7CiB9CiAKLXZvaWQgaW5pdF9tZXJnZV9vcHRpb25zKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvKQordm9pZCBpbml0X21lcmdlX29wdGlvbnMoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKKwkJCXN0cnVjdCByZXBvc2l0b3J5ICpyZXBvKQogewogCWNvbnN0IGNoYXIgKm1lcmdlX3ZlcmJvc2l0eTsKLQltZW1zZXQobywgMCwgc2l6ZW9mKHN0cnVjdCBtZXJnZV9vcHRpb25zKSk7Ci0Jby0+dmVyYm9zaXR5ID0gMjsKLQlvLT5idWZmZXJfb3V0cHV0ID0gMTsKLQlvLT5kaWZmX3JlbmFtZV9saW1pdCA9IC0xOwotCW8tPm1lcmdlX3JlbmFtZV9saW1pdCA9IC0xOwotCW8tPnJlbm9ybWFsaXplID0gMDsKLQlvLT5kaWZmX2RldGVjdF9yZW5hbWUgPSAtMTsKLQlvLT5tZXJnZV9kZXRlY3RfcmVuYW1lID0gLTE7Ci0Jby0+ZGV0ZWN0X2RpcmVjdG9yeV9yZW5hbWVzID0gMTsKLQltZXJnZV9yZWN1cnNpdmVfY29uZmlnKG8pOworCW1lbXNldChvcHQsIDAsIHNpemVvZihzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucykpOworCisJb3B0LT5yZXBvID0gcmVwbzsKKworCW9wdC0+ZGV0ZWN0X3JlbmFtZXMgPSAtMTsKKwlvcHQtPmRldGVjdF9kaXJlY3RvcnlfcmVuYW1lcyA9IE1FUkdFX0RJUkVDVE9SWV9SRU5BTUVTX0NPTkZMSUNUOworCW9wdC0+cmVuYW1lX2xpbWl0ID0gLTE7CisKKwlvcHQtPnZlcmJvc2l0eSA9IDI7CisJb3B0LT5idWZmZXJfb3V0cHV0ID0gMTsKKwlzdHJidWZfaW5pdCgmb3B0LT5vYnVmLCAwKTsKKworCW9wdC0+cmVub3JtYWxpemUgPSAwOworCisJbWVyZ2VfcmVjdXJzaXZlX2NvbmZpZyhvcHQpOwogCW1lcmdlX3ZlcmJvc2l0eSA9IGdldGVudigiR0lUX01FUkdFX1ZFUkJPU0lUWSIpOwogCWlmIChtZXJnZV92ZXJib3NpdHkpCi0JCW8tPnZlcmJvc2l0eSA9IHN0cnRvbChtZXJnZV92ZXJib3NpdHksIE5VTEwsIDEwKTsKLQlpZiAoby0+dmVyYm9zaXR5ID49IDUpCi0JCW8tPmJ1ZmZlcl9vdXRwdXQgPSAwOwotCXN0cmJ1Zl9pbml0KCZvLT5vYnVmLCAwKTsKLQlzdHJpbmdfbGlzdF9pbml0KCZvLT5kZl9jb25mbGljdF9maWxlX3NldCwgMSk7CisJCW9wdC0+dmVyYm9zaXR5ID0gc3RydG9sKG1lcmdlX3ZlcmJvc2l0eSwgTlVMTCwgMTApOworCWlmIChvcHQtPnZlcmJvc2l0eSA+PSA1KQorCQlvcHQtPmJ1ZmZlcl9vdXRwdXQgPSAwOwogfQogCi1pbnQgcGFyc2VfbWVyZ2Vfb3B0KHN0cnVjdCBtZXJnZV9vcHRpb25zICpvLCBjb25zdCBjaGFyICpzKQoraW50IHBhcnNlX21lcmdlX29wdChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LCBjb25zdCBjaGFyICpzKQogewogCWNvbnN0IGNoYXIgKmFyZzsKIAogCWlmICghcyB8fCAhKnMpCiAJCXJldHVybiAtMTsKIAlpZiAoIXN0cmNtcChzLCAib3VycyIpKQotCQlvLT5yZWN1cnNpdmVfdmFyaWFudCA9IE1FUkdFX1JFQ1VSU0lWRV9PVVJTOworCQlvcHQtPnJlY3Vyc2l2ZV92YXJpYW50ID0gTUVSR0VfVkFSSUFOVF9PVVJTOwogCWVsc2UgaWYgKCFzdHJjbXAocywgInRoZWlycyIpKQotCQlvLT5yZWN1cnNpdmVfdmFyaWFudCA9IE1FUkdFX1JFQ1VSU0lWRV9USEVJUlM7CisJCW9wdC0+cmVjdXJzaXZlX3ZhcmlhbnQgPSBNRVJHRV9WQVJJQU5UX1RIRUlSUzsKIAllbHNlIGlmICghc3RyY21wKHMsICJzdWJ0cmVlIikpCi0JCW8tPnN1YnRyZWVfc2hpZnQgPSAiIjsKKwkJb3B0LT5zdWJ0cmVlX3NoaWZ0ID0gIiI7CiAJZWxzZSBpZiAoc2tpcF9wcmVmaXgocywgInN1YnRyZWU9IiwgJmFyZykpCi0JCW8tPnN1YnRyZWVfc2hpZnQgPSBhcmc7CisJCW9wdC0+c3VidHJlZV9zaGlmdCA9IGFyZzsKIAllbHNlIGlmICghc3RyY21wKHMsICJwYXRpZW5jZSIpKQotCQlvLT54ZGxfb3B0cyA9IERJRkZfV0lUSF9BTEcobywgUEFUSUVOQ0VfRElGRik7CisJCW9wdC0+eGRsX29wdHMgPSBESUZGX1dJVEhfQUxHKG9wdCwgUEFUSUVOQ0VfRElGRik7CiAJZWxzZSBpZiAoIXN0cmNtcChzLCAiaGlzdG9ncmFtIikpCi0JCW8tPnhkbF9vcHRzID0gRElGRl9XSVRIX0FMRyhvLCBISVNUT0dSQU1fRElGRik7CisJCW9wdC0+eGRsX29wdHMgPSBESUZGX1dJVEhfQUxHKG9wdCwgSElTVE9HUkFNX0RJRkYpOwogCWVsc2UgaWYgKHNraXBfcHJlZml4KHMsICJkaWZmLWFsZ29yaXRobT0iLCAmYXJnKSkgewogCQlsb25nIHZhbHVlID0gcGFyc2VfYWxnb3JpdGhtX3ZhbHVlKGFyZyk7CiAJCWlmICh2YWx1ZSA8IDApCiAJCQlyZXR1cm4gLTE7CiAJCS8qIGNsZWFyIG91dCBwcmV2aW91cyBzZXR0aW5ncyAqLwotCQlESUZGX1hETF9DTFIobywgTkVFRF9NSU5JTUFMKTsKLQkJby0+eGRsX29wdHMgJj0gflhERl9ESUZGX0FMR09SSVRITV9NQVNLOwotCQlvLT54ZGxfb3B0cyB8PSB2YWx1ZTsKKwkJRElGRl9YRExfQ0xSKG9wdCwgTkVFRF9NSU5JTUFMKTsKKwkJb3B0LT54ZGxfb3B0cyAmPSB+WERGX0RJRkZfQUxHT1JJVEhNX01BU0s7CisJCW9wdC0+eGRsX29wdHMgfD0gdmFsdWU7CiAJfQogCWVsc2UgaWYgKCFzdHJjbXAocywgImlnbm9yZS1zcGFjZS1jaGFuZ2UiKSkKLQkJRElGRl9YRExfU0VUKG8sIElHTk9SRV9XSElURVNQQUNFX0NIQU5HRSk7CisJCURJRkZfWERMX1NFVChvcHQsIElHTk9SRV9XSElURVNQQUNFX0NIQU5HRSk7CiAJZWxzZSBpZiAoIXN0cmNtcChzLCAiaWdub3JlLWFsbC1zcGFjZSIpKQotCQlESUZGX1hETF9TRVQobywgSUdOT1JFX1dISVRFU1BBQ0UpOworCQlESUZGX1hETF9TRVQob3B0LCBJR05PUkVfV0hJVEVTUEFDRSk7CiAJZWxzZSBpZiAoIXN0cmNtcChzLCAiaWdub3JlLXNwYWNlLWF0LWVvbCIpKQotCQlESUZGX1hETF9TRVQobywgSUdOT1JFX1dISVRFU1BBQ0VfQVRfRU9MKTsKKwkJRElGRl9YRExfU0VUKG9wdCwgSUdOT1JFX1dISVRFU1BBQ0VfQVRfRU9MKTsKIAllbHNlIGlmICghc3RyY21wKHMsICJpZ25vcmUtY3ItYXQtZW9sIikpCi0JCURJRkZfWERMX1NFVChvLCBJR05PUkVfQ1JfQVRfRU9MKTsKKwkJRElGRl9YRExfU0VUKG9wdCwgSUdOT1JFX0NSX0FUX0VPTCk7CiAJZWxzZSBpZiAoIXN0cmNtcChzLCAicmVub3JtYWxpemUiKSkKLQkJby0+cmVub3JtYWxpemUgPSAxOworCQlvcHQtPnJlbm9ybWFsaXplID0gMTsKIAllbHNlIGlmICghc3RyY21wKHMsICJuby1yZW5vcm1hbGl6ZSIpKQotCQlvLT5yZW5vcm1hbGl6ZSA9IDA7CisJCW9wdC0+cmVub3JtYWxpemUgPSAwOwogCWVsc2UgaWYgKCFzdHJjbXAocywgIm5vLXJlbmFtZXMiKSkKLQkJby0+bWVyZ2VfZGV0ZWN0X3JlbmFtZSA9IDA7CisJCW9wdC0+ZGV0ZWN0X3JlbmFtZXMgPSAwOwogCWVsc2UgaWYgKCFzdHJjbXAocywgImZpbmQtcmVuYW1lcyIpKSB7Ci0JCW8tPm1lcmdlX2RldGVjdF9yZW5hbWUgPSAxOwotCQlvLT5yZW5hbWVfc2NvcmUgPSAwOworCQlvcHQtPmRldGVjdF9yZW5hbWVzID0gMTsKKwkJb3B0LT5yZW5hbWVfc2NvcmUgPSAwOwogCX0KIAllbHNlIGlmIChza2lwX3ByZWZpeChzLCAiZmluZC1yZW5hbWVzPSIsICZhcmcpIHx8CiAJCSBza2lwX3ByZWZpeChzLCAicmVuYW1lLXRocmVzaG9sZD0iLCAmYXJnKSkgewotCQlpZiAoKG8tPnJlbmFtZV9zY29yZSA9IHBhcnNlX3JlbmFtZV9zY29yZSgmYXJnKSkgPT0gLTEgfHwgKmFyZyAhPSAwKQorCQlpZiAoKG9wdC0+cmVuYW1lX3Njb3JlID0gcGFyc2VfcmVuYW1lX3Njb3JlKCZhcmcpKSA9PSAtMSB8fCAqYXJnICE9IDApCiAJCQlyZXR1cm4gLTE7Ci0JCW8tPm1lcmdlX2RldGVjdF9yZW5hbWUgPSAxOworCQlvcHQtPmRldGVjdF9yZW5hbWVzID0gMTsKIAl9CisJLyoKKwkgKiBQbGVhc2UgdXBkYXRlICRfX2dpdF9tZXJnZV9zdHJhdGVneV9vcHRpb25zIGluCisJICogZ2l0LWNvbXBsZXRpb24uYmFzaCB3aGVuIHlvdSBhZGQgbmV3IG9wdGlvbnMKKwkgKi8KIAllbHNlCiAJCXJldHVybiAtMTsKIAlyZXR1cm4gMDsKZGlmZiAtLWdpdCBhL21lcmdlLXJlY3Vyc2l2ZS5oIGIvbWVyZ2UtcmVjdXJzaXZlLmgKaW5kZXggZTZhMDgyOC4uOTc4ODQ3ZSAxMDA2NDQKLS0tIGEvbWVyZ2UtcmVjdXJzaXZlLmgKKysrIGIvbWVyZ2UtcmVjdXJzaXZlLmgKQEAgLTEsMTAwICsxLDEyNCBAQAogI2lmbmRlZiBNRVJHRV9SRUNVUlNJVkVfSAogI2RlZmluZSBNRVJHRV9SRUNVUlNJVkVfSAogCi0jaW5jbHVkZSAic3RyaW5nLWxpc3QuaCIKLSNpbmNsdWRlICJ1bnBhY2stdHJlZXMuaCIKKyNpbmNsdWRlICJzdHJidWYuaCIKIAogc3RydWN0IGNvbW1pdDsKK3N0cnVjdCBjb21taXRfbGlzdDsKK3N0cnVjdCBvYmplY3RfaWQ7CitzdHJ1Y3QgcmVwb3NpdG9yeTsKK3N0cnVjdCB0cmVlOwogCitzdHJ1Y3QgbWVyZ2Vfb3B0aW9uc19pbnRlcm5hbDsKIHN0cnVjdCBtZXJnZV9vcHRpb25zIHsKKwlzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbzsKKworCS8qIHJlZiBuYW1lcyB1c2VkIGluIGNvbnNvbGUgbWVzc2FnZXMgYW5kIGNvbmZsaWN0IG1hcmtlcnMgKi8KIAljb25zdCBjaGFyICphbmNlc3RvcjsKIAljb25zdCBjaGFyICpicmFuY2gxOwogCWNvbnN0IGNoYXIgKmJyYW5jaDI7CisKKwkvKiByZW5hbWUgcmVsYXRlZCBvcHRpb25zICovCisJaW50IGRldGVjdF9yZW5hbWVzOwogCWVudW0gewotCQlNRVJHRV9SRUNVUlNJVkVfTk9STUFMID0gMCwKLQkJTUVSR0VfUkVDVVJTSVZFX09VUlMsCi0JCU1FUkdFX1JFQ1VSU0lWRV9USEVJUlMKLQl9IHJlY3Vyc2l2ZV92YXJpYW50OwotCWNvbnN0IGNoYXIgKnN1YnRyZWVfc2hpZnQ7Ci0JdW5zaWduZWQgYnVmZmVyX291dHB1dDsgLyogMTogb3V0cHV0IGF0IGVuZCwgMjoga2VlcCBidWZmZXJlZCAqLwotCXVuc2lnbmVkIHJlbm9ybWFsaXplIDogMTsKLQlsb25nIHhkbF9vcHRzOwotCWludCB2ZXJib3NpdHk7Ci0JaW50IGRldGVjdF9kaXJlY3RvcnlfcmVuYW1lczsKLQlpbnQgZGlmZl9kZXRlY3RfcmVuYW1lOwotCWludCBtZXJnZV9kZXRlY3RfcmVuYW1lOwotCWludCBkaWZmX3JlbmFtZV9saW1pdDsKLQlpbnQgbWVyZ2VfcmVuYW1lX2xpbWl0OworCQlNRVJHRV9ESVJFQ1RPUllfUkVOQU1FU19OT05FID0gMCwKKwkJTUVSR0VfRElSRUNUT1JZX1JFTkFNRVNfQ09ORkxJQ1QgPSAxLAorCQlNRVJHRV9ESVJFQ1RPUllfUkVOQU1FU19UUlVFID0gMgorCX0gZGV0ZWN0X2RpcmVjdG9yeV9yZW5hbWVzOworCWludCByZW5hbWVfbGltaXQ7CiAJaW50IHJlbmFtZV9zY29yZTsKLQlpbnQgbmVlZGVkX3JlbmFtZV9saW1pdDsKIAlpbnQgc2hvd19yZW5hbWVfcHJvZ3Jlc3M7Ci0JaW50IGNhbGxfZGVwdGg7Ci0Jc3RydWN0IHN0cmJ1ZiBvYnVmOwotCXN0cnVjdCBoYXNobWFwIGN1cnJlbnRfZmlsZV9kaXJfc2V0OwotCXN0cnVjdCBzdHJpbmdfbGlzdCBkZl9jb25mbGljdF9maWxlX3NldDsKLQlzdHJ1Y3QgdW5wYWNrX3RyZWVzX29wdGlvbnMgdW5wYWNrX29wdHM7Ci0Jc3RydWN0IGluZGV4X3N0YXRlIG9yaWdfaW5kZXg7CisKKwkvKiB4ZGlmZi1yZWxhdGVkIG9wdGlvbnMgKHBhdGllbmNlLCBpZ25vcmUgd2hpdGVzcGFjZSwgb3Vycy90aGVpcnMpICovCisJbG9uZyB4ZGxfb3B0czsKKwllbnVtIHsKKwkJTUVSR0VfVkFSSUFOVF9OT1JNQUwgPSAwLAorCQlNRVJHRV9WQVJJQU5UX09VUlMsCisJCU1FUkdFX1ZBUklBTlRfVEhFSVJTCisJfSByZWN1cnNpdmVfdmFyaWFudDsKKworCS8qIGNvbnNvbGUgb3V0cHV0IHJlbGF0ZWQgb3B0aW9ucyAqLworCWludCB2ZXJib3NpdHk7CisJdW5zaWduZWQgYnVmZmVyX291dHB1dDsgLyogMTogb3V0cHV0IGF0IGVuZCwgMjoga2VlcCBidWZmZXJlZCAqLworCXN0cnVjdCBzdHJidWYgb2J1ZjsgICAgIC8qIG91dHB1dCBidWZmZXI7IGlmIGJ1ZmZlcl9vdXRwdXQgPT0gMiwgY2FsbGVyCisJCQkJICogbXVzdCBoYW5kbGUgYW5kIGNhbGwgc3RyYnVmX3JlbGVhc2UgKi8KKworCS8qIG1pc2NlbGxhbmVvdXMgY29udHJvbCBvcHRpb25zICovCisJY29uc3QgY2hhciAqc3VidHJlZV9zaGlmdDsKKwl1bnNpZ25lZCByZW5vcm1hbGl6ZSA6IDE7CisKKwkvKiBpbnRlcm5hbCBmaWVsZHMgdXNlZCBieSB0aGUgaW1wbGVtZW50YXRpb24gKi8KKwlzdHJ1Y3QgbWVyZ2Vfb3B0aW9uc19pbnRlcm5hbCAqcHJpdjsKIH07CiAKK3ZvaWQgaW5pdF9tZXJnZV9vcHRpb25zKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsIHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvKTsKKworLyogcGFyc2UgdGhlIG9wdGlvbiBpbiBzIGFuZCB1cGRhdGUgdGhlIHJlbGV2YW50IGZpZWxkIG9mIG9wdCAqLworaW50IHBhcnNlX21lcmdlX29wdChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LCBjb25zdCBjaGFyICpzKTsKKwogLyoKLSAqIEZvciBkaXJfcmVuYW1lX2VudHJ5LCBkaXJlY3RvcnkgbmFtZXMgYXJlIHN0b3JlZCBhcyBhIGZ1bGwgcGF0aCBmcm9tIHRoZQotICogdG9wbGV2ZWwgb2YgdGhlIHJlcG9zaXRvcnkgYW5kIGRvIG5vdCBpbmNsdWRlIGEgdHJhaWxpbmcgJy8nLiAgQWxzbzoKLSAqCi0gKiAgIGRpcjogICAgICAgICAgICAgICAgb3JpZ2luYWwgbmFtZSBvZiBkaXJlY3RvcnkgYmVpbmcgcmVuYW1lZAotICogICBub25fdW5pcXVlX25ld19kaXI6IGlmIHRydWUsIGNvdWxkIG5vdCBkZXRlcm1pbmUgbmV3X2RpcgotICogICBuZXdfZGlyOiAgICAgICAgICAgIGZpbmFsIG5hbWUgb2YgZGlyZWN0b3J5IGJlaW5nIHJlbmFtZWQKLSAqICAgcG9zc2libGVfbmV3X2RpcnM6ICB0ZW1wb3JhcnkgdXNlZCB0byBoZWxwIGRldGVybWluZSBuZXdfZGlyOyBzZWUgY29tbWVudHMKLSAqICAgICAgICAgICAgICAgICAgICAgICBpbiBnZXRfZGlyZWN0b3J5X3JlbmFtZXMoKSBmb3IgZGV0YWlscworICogUkVUVVJOIFZBTFVFUzogQWxsIHRoZSBtZXJnZV8qIGZ1bmN0aW9ucyBiZWxvdyByZXR1cm4gYSB2YWx1ZSBhcyBmb2xsb3dzOgorICogICA+IDAgICAgIE1lcmdlIHdhcyBjbGVhbgorICogICA9IDAgICAgIE1lcmdlIGhhZCBjb25mbGljdHMKKyAqICAgPCAwICAgICBNZXJnZSBoaXQgYW4gdW5leHBlY3RlZCBhbmQgdW5yZWNvdmVyYWJsZSBwcm9ibGVtIChlLmcuIGRpc2sKKyAqICAgICAgICAgICAgIGZ1bGwpIGFuZCBhYm9ydGVkIG1lcmdlIHBhcnQtd2F5IHRocm91Z2guCiAgKi8KLXN0cnVjdCBkaXJfcmVuYW1lX2VudHJ5IHsKLQlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSBlbnQ7IC8qIG11c3QgYmUgdGhlIGZpcnN0IG1lbWJlciEgKi8KLQljaGFyICpkaXI7Ci0JdW5zaWduZWQgbm9uX3VuaXF1ZV9uZXdfZGlyOjE7Ci0Jc3RydWN0IHN0cmJ1ZiBuZXdfZGlyOwotCXN0cnVjdCBzdHJpbmdfbGlzdCBwb3NzaWJsZV9uZXdfZGlyczsKLX07CiAKLXN0cnVjdCBjb2xsaXNpb25fZW50cnkgewotCXN0cnVjdCBoYXNobWFwX2VudHJ5IGVudDsgLyogbXVzdCBiZSB0aGUgZmlyc3QgbWVtYmVyISAqLwotCWNoYXIgKnRhcmdldF9maWxlOwotCXN0cnVjdCBzdHJpbmdfbGlzdCBzb3VyY2VfZmlsZXM7Ci0JdW5zaWduZWQgcmVwb3J0ZWRfYWxyZWFkeToxOwotfTsKLQotc3RhdGljIGlubGluZSBpbnQgbWVyZ2VfZGV0ZWN0X3JlbmFtZShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbykKLXsKLQlyZXR1cm4gby0+bWVyZ2VfZGV0ZWN0X3JlbmFtZSA+PSAwID8gby0+bWVyZ2VfZGV0ZWN0X3JlbmFtZSA6Ci0JCW8tPmRpZmZfZGV0ZWN0X3JlbmFtZSA+PSAwID8gby0+ZGlmZl9kZXRlY3RfcmVuYW1lIDogMTsKLX0KLQotLyogbWVyZ2VfdHJlZXMoKSBidXQgd2l0aCByZWN1cnNpdmUgYW5jZXN0b3IgY29uc29saWRhdGlvbiAqLwotaW50IG1lcmdlX3JlY3Vyc2l2ZShzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywKLQkJICAgIHN0cnVjdCBjb21taXQgKmgxLAotCQkgICAgc3RydWN0IGNvbW1pdCAqaDIsCi0JCSAgICBzdHJ1Y3QgY29tbWl0X2xpc3QgKmFuY2VzdG9ycywKLQkJICAgIHN0cnVjdCBjb21taXQgKipyZXN1bHQpOwotCi0vKiByZW5hbWUtZGV0ZWN0aW5nIHRocmVlLXdheSBtZXJnZSwgbm8gcmVjdXJzaW9uICovCi1pbnQgbWVyZ2VfdHJlZXMoc3RydWN0IG1lcmdlX29wdGlvbnMgKm8sCisvKgorICogcmVuYW1lLWRldGVjdGluZyB0aHJlZS13YXkgbWVyZ2UsIG5vIHJlY3Vyc2lvbi4KKyAqCisgKiBPdXRwdXRzOgorICogICAtIFNlZSBSRVRVUk4gVkFMVUVTIGFib3ZlCisgKiAgIC0gTm8gY29tbWl0IGlzIGNyZWF0ZWQKKyAqICAgLSBvcHQtPnJlcG8tPmluZGV4IGhhcyB0aGUgbmV3IGluZGV4CisgKiAgIC0gJEdJVF9JTkRFWF9GSUxFIGlzIG5vdCB1cGRhdGVkCisgKiAgIC0gVGhlIHdvcmtpbmcgdHJlZSBpcyB1cGRhdGVkIHdpdGggcmVzdWx0cyBvZiB0aGUgbWVyZ2UKKyAqLworaW50IG1lcmdlX3RyZWVzKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvcHQsCiAJCXN0cnVjdCB0cmVlICpoZWFkLAogCQlzdHJ1Y3QgdHJlZSAqbWVyZ2UsCi0JCXN0cnVjdCB0cmVlICpjb21tb24sCi0JCXN0cnVjdCB0cmVlICoqcmVzdWx0KTsKKwkJc3RydWN0IHRyZWUgKm1lcmdlX2Jhc2UpOwogCiAvKgotICogImdpdC1tZXJnZS1yZWN1cnNpdmUiIGNhbiBiZSBmZWQgdHJlZXM7IHdyYXAgdGhlbSBpbnRvCi0gKiB2aXJ0dWFsIGNvbW1pdHMgYW5kIGNhbGwgbWVyZ2VfcmVjdXJzaXZlKCkgcHJvcGVyLgorICogbWVyZ2VfcmVjdXJzaXZlIGlzIGxpa2UgbWVyZ2VfdHJlZXMoKSBidXQgd2l0aCByZWN1cnNpdmUgYW5jZXN0b3IKKyAqIGNvbnNvbGlkYXRpb24gYW5kLCBpZiB0aGUgY29tbWl0IGlzIGNsZWFuLCBjcmVhdGlvbiBvZiBhIGNvbW1pdC4KKyAqCisgKiBOT1RFOiBlbXBpcmljYWxseSwgYWJvdXQgYSBkZWNhZGUgYWdvIGl0IHdhcyBkZXRlcm1pbmVkIHRoYXQgd2l0aCBtb3JlCisgKiAgICAgICB0aGFuIHR3byBtZXJnZSBiYXNlcywgb3B0aW1hbCBiZWhhdmlvciB3YXMgZm91bmQgd2hlbiB0aGUKKyAqICAgICAgIG1lcmdlX2Jhc2VzIHdlcmUgcGFzc2VkIGluIHRoZSBvcmRlciBvZiBvbGRlc3QgY29tbWl0IHRvIG5ld2VzdAorICogICAgICAgY29tbWl0LiAgQWxzbywgbWVyZ2VfYmFzZXMgd2lsbCBiZSBjb25zdW1lZCAoZW1wdGllZCkgc28gbWFrZSBhCisgKiAgICAgICBjb3B5IGlmIHlvdSBuZWVkIGl0LgorICoKKyAqIE91dHB1dHM6CisgKiAgIC0gU2VlIFJFVFVSTiBWQUxVRVMgYWJvdmUKKyAqICAgLSBJZiBtZXJnZSBpcyBjbGVhbiwgYSBjb21taXQgaXMgY3JlYXRlZCBhbmQgaXRzIGFkZHJlc3Mgd3JpdHRlbiB0byAqcmVzdWx0CisgKiAgIC0gb3B0LT5yZXBvLT5pbmRleCBoYXMgdGhlIG5ldyBpbmRleAorICogICAtICRHSVRfSU5ERVhfRklMRSBpcyBub3QgdXBkYXRlZAorICogICAtIFRoZSB3b3JraW5nIHRyZWUgaXMgdXBkYXRlZCB3aXRoIHJlc3VsdHMgb2YgdGhlIG1lcmdlCiAgKi8KLWludCBtZXJnZV9yZWN1cnNpdmVfZ2VuZXJpYyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqbywKK2ludCBtZXJnZV9yZWN1cnNpdmUoc3RydWN0IG1lcmdlX29wdGlvbnMgKm9wdCwKKwkJICAgIHN0cnVjdCBjb21taXQgKmgxLAorCQkgICAgc3RydWN0IGNvbW1pdCAqaDIsCisJCSAgICBzdHJ1Y3QgY29tbWl0X2xpc3QgKm1lcmdlX2Jhc2VzLAorCQkgICAgc3RydWN0IGNvbW1pdCAqKnJlc3VsdCk7CisKKy8qCisgKiBtZXJnZV9yZWN1cnNpdmVfZ2VuZXJpYyBjYW4gb3BlcmF0ZSBvbiB0cmVlcyBpbnN0ZWFkIG9mIGNvbW1pdHMsIGJ5CisgKiB3cmFwcGluZyB0aGUgdHJlZXMgaW50byB2aXJ0dWFsIGNvbW1pdHMsIGFuZCBjYWxsaW5nIG1lcmdlX3JlY3Vyc2l2ZSgpLgorICogSXQgYWxzbyB3cml0ZXMgb3V0IHRoZSBpbi1tZW1vcnkgaW5kZXggdG8gZGlzayBpZiB0aGUgbWVyZ2UgaXMgc3VjY2Vzc2Z1bC4KKyAqCisgKiBPdXRwdXRzOgorICogICAtIFNlZSBSRVRVUk4gVkFMVUVTIGFib3ZlCisgKiAgIC0gSWYgbWVyZ2UgaXMgY2xlYW4sIGEgY29tbWl0IGlzIGNyZWF0ZWQgYW5kIGl0cyBhZGRyZXNzIHdyaXR0ZW4gdG8gKnJlc3VsdAorICogICAtIG9wdC0+cmVwby0+aW5kZXggaGFzIHRoZSBuZXcgaW5kZXgKKyAqICAgLSAkR0lUX0lOREVYX0ZJTEUgaXMgdXBkYXRlZAorICogICAtIFRoZSB3b3JraW5nIHRyZWUgaXMgdXBkYXRlZCB3aXRoIHJlc3VsdHMgb2YgdGhlIG1lcmdlCisgKi8KK2ludCBtZXJnZV9yZWN1cnNpdmVfZ2VuZXJpYyhzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3B0LAogCQkJICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmhlYWQsCiAJCQkgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqbWVyZ2UsCi0JCQkgICAgaW50IG51bV9jYSwKLQkJCSAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICoqY2EsCisJCQkgICAgaW50IG51bV9tZXJnZV9iYXNlcywKKwkJCSAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICoqbWVyZ2VfYmFzZXMsCiAJCQkgICAgc3RydWN0IGNvbW1pdCAqKnJlc3VsdCk7CiAKLXZvaWQgaW5pdF9tZXJnZV9vcHRpb25zKHN0cnVjdCBtZXJnZV9vcHRpb25zICpvKTsKLXN0cnVjdCB0cmVlICp3cml0ZV90cmVlX2Zyb21fbWVtb3J5KHN0cnVjdCBtZXJnZV9vcHRpb25zICpvKTsKLQotaW50IHBhcnNlX21lcmdlX29wdChzdHJ1Y3QgbWVyZ2Vfb3B0aW9ucyAqb3V0LCBjb25zdCBjaGFyICpzKTsKLQogI2VuZGlmCmRpZmYgLS1naXQgYS9tZXJnZS5jIGIvbWVyZ2UuYwppbmRleCA5MTAwOGY3Li43YzFkNzU2IDEwMDY0NAotLS0gYS9tZXJnZS5jCisrKyBiL21lcmdlLmMKQEAgLTM3LDcgKzM3LDcgQEAKIAlhcmd2X2FycmF5X2NsZWFyKCZhcmdzKTsKIAogCWRpc2NhcmRfaW5kZXgoci0+aW5kZXgpOwotCWlmIChyZWFkX2luZGV4KHItPmluZGV4KSA8IDApCisJaWYgKHJlcG9fcmVhZF9pbmRleChyKSA8IDApCiAJCWRpZShfKCJmYWlsZWQgdG8gcmVhZCB0aGUgY2FjaGUiKSk7CiAJcmVzb2x2ZV91bmRvX2NsZWFyX2luZGV4KHItPmluZGV4KTsKIApAQCAtNTgsNyArNTgsNyBAQAogCiAJcmVmcmVzaF9pbmRleChyLT5pbmRleCwgUkVGUkVTSF9RVUlFVCwgTlVMTCwgTlVMTCwgTlVMTCk7CiAKLQlpZiAoaG9sZF9sb2NrZWRfaW5kZXgoJmxvY2tfZmlsZSwgTE9DS19SRVBPUlRfT05fRVJST1IpIDwgMCkKKwlpZiAocmVwb19ob2xkX2xvY2tlZF9pbmRleChyLCAmbG9ja19maWxlLCBMT0NLX1JFUE9SVF9PTl9FUlJPUikgPCAwKQogCQlyZXR1cm4gLTE7CiAKIAltZW1zZXQoJnRyZWVzLCAwLCBzaXplb2YodHJlZXMpKTsKZGlmZiAtLWdpdCBhL21lcmdldG9vbHMvc21lcmdlIGIvbWVyZ2V0b29scy9zbWVyZ2UKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWMyZTZmNgotLS0gL2Rldi9udWxsCisrKyBiL21lcmdldG9vbHMvc21lcmdlCkBAIC0wLDAgKzEsMTIgQEAKK2RpZmZfY21kICgpIHsKKwkiJG1lcmdlX3Rvb2xfcGF0aCIgbWVyZ2V0b29sICIkTE9DQUwiICIkUkVNT1RFIiAtbyAiJE1FUkdFRCIKK30KKworbWVyZ2VfY21kICgpIHsKKwlpZiAkYmFzZV9wcmVzZW50CisJdGhlbgorCQkiJG1lcmdlX3Rvb2xfcGF0aCIgbWVyZ2V0b29sICIkQkFTRSIgIiRMT0NBTCIgIiRSRU1PVEUiIC1vICIkTUVSR0VEIgorCWVsc2UKKwkJIiRtZXJnZV90b29sX3BhdGgiIG1lcmdldG9vbCAiJExPQ0FMIiAiJFJFTU9URSIgLW8gIiRNRVJHRUQiCisJZmkKK30KZGlmZiAtLWdpdCBhL21pZHguYyBiL21pZHguYwppbmRleCAyYTZhMjRmLi4xNTI3ZTQ2IDEwMDY0NAotLS0gYS9taWR4LmMKKysrIGIvbWlkeC5jCkBAIC04LDYgKzgsOCBAQAogI2luY2x1ZGUgInNoYTEtbG9va3VwLmgiCiAjaW5jbHVkZSAibWlkeC5oIgogI2luY2x1ZGUgInByb2dyZXNzLmgiCisjaW5jbHVkZSAidHJhY2UyLmgiCisjaW5jbHVkZSAicnVuLWNvbW1hbmQuaCIKIAogI2RlZmluZSBNSURYX1NJR05BVFVSRSAweDRkNDk0NDU4IC8qICJNSURYIiAqLwogI2RlZmluZSBNSURYX1ZFUlNJT04gMQpAQCAtMTcsOCArMTksNyBAQAogI2RlZmluZSBNSURYX0JZVEVfTlVNX1BBQ0tTIDgKICNkZWZpbmUgTUlEWF9IQVNIX1ZFUlNJT04gMQogI2RlZmluZSBNSURYX0hFQURFUl9TSVpFIDEyCi0jZGVmaW5lIE1JRFhfSEFTSF9MRU4gMjAKLSNkZWZpbmUgTUlEWF9NSU5fU0laRSAoTUlEWF9IRUFERVJfU0laRSArIE1JRFhfSEFTSF9MRU4pCisjZGVmaW5lIE1JRFhfTUlOX1NJWkUgKE1JRFhfSEVBREVSX1NJWkUgKyB0aGVfaGFzaF9hbGdvLT5yYXdzeikKIAogI2RlZmluZSBNSURYX01BWF9DSFVOS1MgNQogI2RlZmluZSBNSURYX0NIVU5LX0FMSUdOTUVOVCA0CkBAIC0zMyw2ICszNCw4IEBACiAjZGVmaW5lIE1JRFhfQ0hVTktfTEFSR0VfT0ZGU0VUX1dJRFRIIChzaXplb2YodWludDY0X3QpKQogI2RlZmluZSBNSURYX0xBUkdFX09GRlNFVF9ORUVERUQgMHg4MDAwMDAwMAogCisjZGVmaW5lIFBBQ0tfRVhQSVJFRCBVSU5UX01BWAorCiBzdGF0aWMgY2hhciAqZ2V0X21pZHhfZmlsZW5hbWUoY29uc3QgY2hhciAqb2JqZWN0X2RpcikKIHsKIAlyZXR1cm4geHN0cmZtdCgiJXMvcGFjay9tdWx0aS1wYWNrLWluZGV4Iiwgb2JqZWN0X2Rpcik7CkBAIC03MCw3ICs3Myw3IEBACiAKIAltaWR4X21hcCA9IHhtbWFwKE5VTEwsIG1pZHhfc2l6ZSwgUFJPVF9SRUFELCBNQVBfUFJJVkFURSwgZmQsIDApOwogCi0JRkxFWF9BTExPQ19NRU0obSwgb2JqZWN0X2Rpciwgb2JqZWN0X2Rpciwgc3RybGVuKG9iamVjdF9kaXIpKTsKKwlGTEVYX0FMTE9DX1NUUihtLCBvYmplY3RfZGlyLCBvYmplY3RfZGlyKTsKIAltLT5mZCA9IGZkOwogCW0tPmRhdGEgPSBtaWR4X21hcDsKIAltLT5kYXRhX2xlbiA9IG1pZHhfc2l6ZTsKQEAgLTg5LDcgKzkyLDcgQEAKIAloYXNoX3ZlcnNpb24gPSBtLT5kYXRhW01JRFhfQllURV9IQVNIX1ZFUlNJT05dOwogCWlmIChoYXNoX3ZlcnNpb24gIT0gTUlEWF9IQVNIX1ZFUlNJT04pCiAJCWRpZShfKCJoYXNoIHZlcnNpb24gJXUgZG9lcyBub3QgbWF0Y2giKSwgaGFzaF92ZXJzaW9uKTsKLQltLT5oYXNoX2xlbiA9IE1JRFhfSEFTSF9MRU47CisJbS0+aGFzaF9sZW4gPSB0aGVfaGFzaF9hbGdvLT5yYXdzejsKIAogCW0tPm51bV9jaHVua3MgPSBtLT5kYXRhW01JRFhfQllURV9OVU1fQ0hVTktTXTsKIApAQCAtMTY0LDYgKzE2Nyw5IEBACiAJCQkgICAgICBtLT5wYWNrX25hbWVzW2ldKTsKIAl9CiAKKwl0cmFjZTJfZGF0YV9pbnRtYXgoIm1pZHgiLCB0aGVfcmVwb3NpdG9yeSwgImxvYWQvbnVtX3BhY2tzIiwgbS0+bnVtX3BhY2tzKTsKKwl0cmFjZTJfZGF0YV9pbnRtYXgoIm1pZHgiLCB0aGVfcmVwb3NpdG9yeSwgImxvYWQvbnVtX29iamVjdHMiLCBtLT5udW1fb2JqZWN0cyk7CisKIAlyZXR1cm4gbTsKIAogY2xlYW51cF9mYWlsOgpAQCAtMTg4LDE4ICsxOTQsMTcgQEAKIAltLT5mZCA9IC0xOwogCiAJZm9yIChpID0gMDsgaSA8IG0tPm51bV9wYWNrczsgaSsrKSB7Ci0JCWlmIChtLT5wYWNrc1tpXSkgewotCQkJY2xvc2VfcGFjayhtLT5wYWNrc1tpXSk7Ci0JCQlmcmVlKG0tPnBhY2tzW2ldKTsKLQkJfQorCQlpZiAobS0+cGFja3NbaV0pCisJCQltLT5wYWNrc1tpXS0+bXVsdGlfcGFja19pbmRleCA9IDA7CiAJfQogCUZSRUVfQU5EX05VTEwobS0+cGFja3MpOwogCUZSRUVfQU5EX05VTEwobS0+cGFja19uYW1lcyk7CiB9CiAKLWludCBwcmVwYXJlX21pZHhfcGFjayhzdHJ1Y3QgbXVsdGlfcGFja19pbmRleCAqbSwgdWludDMyX3QgcGFja19pbnRfaWQpCitpbnQgcHJlcGFyZV9taWR4X3BhY2soc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptLCB1aW50MzJfdCBwYWNrX2ludF9pZCkKIHsKIAlzdHJ1Y3Qgc3RyYnVmIHBhY2tfbmFtZSA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBwYWNrZWRfZ2l0ICpwOwogCiAJaWYgKHBhY2tfaW50X2lkID49IG0tPm51bV9wYWNrcykKIAkJZGllKF8oImJhZCBwYWNrLWludC1pZDogJXUgKCV1IHRvdGFsIHBhY2tzKSIpLApAQCAtMjExLDE1ICsyMTYsMjQgQEAKIAlzdHJidWZfYWRkZigmcGFja19uYW1lLCAiJXMvcGFjay8lcyIsIG0tPm9iamVjdF9kaXIsCiAJCSAgICBtLT5wYWNrX25hbWVzW3BhY2tfaW50X2lkXSk7CiAKLQltLT5wYWNrc1twYWNrX2ludF9pZF0gPSBhZGRfcGFja2VkX2dpdChwYWNrX25hbWUuYnVmLCBwYWNrX25hbWUubGVuLCBtLT5sb2NhbCk7CisJcCA9IGFkZF9wYWNrZWRfZ2l0KHBhY2tfbmFtZS5idWYsIHBhY2tfbmFtZS5sZW4sIG0tPmxvY2FsKTsKIAlzdHJidWZfcmVsZWFzZSgmcGFja19uYW1lKTsKLQlyZXR1cm4gIW0tPnBhY2tzW3BhY2tfaW50X2lkXTsKKworCWlmICghcCkKKwkJcmV0dXJuIDE7CisKKwlwLT5tdWx0aV9wYWNrX2luZGV4ID0gMTsKKwltLT5wYWNrc1twYWNrX2ludF9pZF0gPSBwOworCWluc3RhbGxfcGFja2VkX2dpdChyLCBwKTsKKwlsaXN0X2FkZF90YWlsKCZwLT5tcnUsICZyLT5vYmplY3RzLT5wYWNrZWRfZ2l0X21ydSk7CisKKwlyZXR1cm4gMDsKIH0KIAogaW50IGJzZWFyY2hfbWlkeChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptLCB1aW50MzJfdCAqcmVzdWx0KQogewogCXJldHVybiBic2VhcmNoX2hhc2gob2lkLT5oYXNoLCBtLT5jaHVua19vaWRfZmFub3V0LCBtLT5jaHVua19vaWRfbG9va3VwLAotCQkJICAgIE1JRFhfSEFTSF9MRU4sIHJlc3VsdCk7CisJCQkgICAgdGhlX2hhc2hfYWxnby0+cmF3c3osIHJlc3VsdCk7CiB9CiAKIHN0cnVjdCBvYmplY3RfaWQgKm50aF9taWR4ZWRfb2JqZWN0X29pZChzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCkBAIC0yNTcsNyArMjcxLDEwIEBACiAJcmV0dXJuIGdldF9iZTMyKG0tPmNodW5rX29iamVjdF9vZmZzZXRzICsgcG9zICogTUlEWF9DSFVOS19PRkZTRVRfV0lEVEgpOwogfQogCi1zdGF0aWMgaW50IG50aF9taWR4ZWRfcGFja19lbnRyeShzdHJ1Y3QgbXVsdGlfcGFja19pbmRleCAqbSwgc3RydWN0IHBhY2tfZW50cnkgKmUsIHVpbnQzMl90IHBvcykKK3N0YXRpYyBpbnQgbnRoX21pZHhlZF9wYWNrX2VudHJ5KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSBzdHJ1Y3QgbXVsdGlfcGFja19pbmRleCAqbSwKKwkJCQkgc3RydWN0IHBhY2tfZW50cnkgKmUsCisJCQkJIHVpbnQzMl90IHBvcykKIHsKIAl1aW50MzJfdCBwYWNrX2ludF9pZDsKIAlzdHJ1Y3QgcGFja2VkX2dpdCAqcDsKQEAgLTI2Nyw3ICsyODQsNyBAQAogCiAJcGFja19pbnRfaWQgPSBudGhfbWlkeGVkX3BhY2tfaW50X2lkKG0sIHBvcyk7CiAKLQlpZiAocHJlcGFyZV9taWR4X3BhY2sobSwgcGFja19pbnRfaWQpKQorCWlmIChwcmVwYXJlX21pZHhfcGFjayhyLCBtLCBwYWNrX2ludF9pZCkpCiAJCWRpZShfKCJlcnJvciBwcmVwYXJpbmcgcGFja2ZpbGUgZnJvbSBtdWx0aS1wYWNrLWluZGV4IikpOwogCXAgPSBtLT5wYWNrc1twYWNrX2ludF9pZF07CiAKQEAgLTI5NywxNyArMzE0LDUyIEBACiAJcmV0dXJuIDE7CiB9CiAKLWludCBmaWxsX21pZHhfZW50cnkoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBzdHJ1Y3QgcGFja19lbnRyeSAqZSwgc3RydWN0IG11bHRpX3BhY2tfaW5kZXggKm0pCitpbnQgZmlsbF9taWR4X2VudHJ5KHN0cnVjdCByZXBvc2l0b3J5ICogciwKKwkJICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJICAgIHN0cnVjdCBwYWNrX2VudHJ5ICplLAorCQkgICAgc3RydWN0IG11bHRpX3BhY2tfaW5kZXggKm0pCiB7CiAJdWludDMyX3QgcG9zOwogCiAJaWYgKCFic2VhcmNoX21pZHgob2lkLCBtLCAmcG9zKSkKIAkJcmV0dXJuIDA7CiAKLQlyZXR1cm4gbnRoX21pZHhlZF9wYWNrX2VudHJ5KG0sIGUsIHBvcyk7CisJcmV0dXJuIG50aF9taWR4ZWRfcGFja19lbnRyeShyLCBtLCBlLCBwb3MpOwogfQogCi1pbnQgbWlkeF9jb250YWluc19wYWNrKHN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptLCBjb25zdCBjaGFyICppZHhfbmFtZSkKKy8qIE1hdGNoICJmb28uaWR4IiBhZ2FpbnN0IGVpdGhlciAiZm9vLnBhY2siIF9vcl8gImZvby5pZHgiLiAqLworc3RhdGljIGludCBjbXBfaWR4X29yX3BhY2tfbmFtZShjb25zdCBjaGFyICppZHhfb3JfcGFja19uYW1lLAorCQkJCWNvbnN0IGNoYXIgKmlkeF9uYW1lKQoreworCS8qIFNraXAgcGFzdCBhbnkgaW5pdGlhbCBtYXRjaGluZyBwcmVmaXguICovCisJd2hpbGUgKCppZHhfbmFtZSAmJiAqaWR4X25hbWUgPT0gKmlkeF9vcl9wYWNrX25hbWUpIHsKKwkJaWR4X25hbWUrKzsKKwkJaWR4X29yX3BhY2tfbmFtZSsrOworCX0KKworCS8qCisJICogSWYgd2UgZGlkbid0IG1hdGNoIGNvbXBsZXRlbHksIHdlIG1heSBoYXZlIG1hdGNoZWQgInBhY2stMTIzNC4iIGFuZAorCSAqIGJlIGxlZnQgd2l0aCAiaWR4IiBhbmQgInBhY2siIHJlc3BlY3RpdmVseSwgd2hpY2ggaXMgYWxzbyBPSy4gV2UgZG8KKwkgKiBub3QgaGF2ZSB0byBjaGVjayBmb3IgImlkeCIgYW5kICJpZHgiLCBiZWNhdXNlIHRoYXQgd291bGQgaGF2ZSBiZWVuCisJICogYSBjb21wbGV0ZSBtYXRjaCAoYW5kIGluIHRoYXQgY2FzZSB0aGVzZSBzdHJjbXBzIHdpbGwgYmUgZmFsc2UsIGJ1dAorCSAqIHdlJ2xsIGNvcnJlY3RseSByZXR1cm4gMCBmcm9tIHRoZSBmaW5hbCBzdHJjbXAoKSBiZWxvdy4KKwkgKgorCSAqIFRlY2huaWNhbGx5IHRoaXMgbWF0Y2hlcyAiZm9vaWR4IiBhbmQgImZvb3BhY2siLCBidXQgd2UnZCBuZXZlciBoYXZlCisJICogc3VjaCBuYW1lcyBpbiB0aGUgZmlyc3QgcGxhY2UuCisJICovCisJaWYgKCFzdHJjbXAoaWR4X25hbWUsICJpZHgiKSAmJiAhc3RyY21wKGlkeF9vcl9wYWNrX25hbWUsICJwYWNrIikpCisJCXJldHVybiAwOworCisJLyoKKwkgKiBUaGlzIG5vdCBvbmx5IGNoZWNrcyBmb3IgYSBjb21wbGV0ZSBtYXRjaCwgYnV0IGFsc28gb3JkZXJzIGJhc2VkIG9uCisJICogdGhlIGZpcnN0IG5vbi1pZGVudGljYWwgY2hhcmFjdGVyLCB3aGljaCBtZWFucyBvdXIgb3JkZXJpbmcgd2lsbAorCSAqIG1hdGNoIGEgcmF3IHN0cmNtcCgpLiBUaGF0IG1ha2VzIGl0IE9LIHRvIHVzZSB0aGlzIHRvIGJpbmFyeSBzZWFyY2gKKwkgKiBhIG5haXZlbHktc29ydGVkIGxpc3QuCisJICovCisJcmV0dXJuIHN0cmNtcChpZHhfb3JfcGFja19uYW1lLCBpZHhfbmFtZSk7Cit9CisKK2ludCBtaWR4X2NvbnRhaW5zX3BhY2soc3RydWN0IG11bHRpX3BhY2tfaW5kZXggKm0sIGNvbnN0IGNoYXIgKmlkeF9vcl9wYWNrX25hbWUpCiB7CiAJdWludDMyX3QgZmlyc3QgPSAwLCBsYXN0ID0gbS0+bnVtX3BhY2tzOwogCkBAIC0zMTcsNyArMzY5LDcgQEAKIAkJaW50IGNtcDsKIAogCQljdXJyZW50ID0gbS0+cGFja19uYW1lc1ttaWRdOwotCQljbXAgPSBzdHJjbXAoaWR4X25hbWUsIGN1cnJlbnQpOworCQljbXAgPSBjbXBfaWR4X29yX3BhY2tfbmFtZShpZHhfb3JfcGFja19uYW1lLCBjdXJyZW50KTsKIAkJaWYgKCFjbXApCiAJCQlyZXR1cm4gMTsKIAkJaWYgKGNtcCA+IDApIHsKQEAgLTM3NywxNCArNDI5LDI3IEBACiAJcmV0dXJuIE1JRFhfSEVBREVSX1NJWkU7CiB9CiAKK3N0cnVjdCBwYWNrX2luZm8geworCXVpbnQzMl90IG9yaWdfcGFja19pbnRfaWQ7CisJY2hhciAqcGFja19uYW1lOworCXN0cnVjdCBwYWNrZWRfZ2l0ICpwOworCXVuc2lnbmVkIGV4cGlyZWQgOiAxOworfTsKKworc3RhdGljIGludCBwYWNrX2luZm9fY29tcGFyZShjb25zdCB2b2lkICpfYSwgY29uc3Qgdm9pZCAqX2IpCit7CisJc3RydWN0IHBhY2tfaW5mbyAqYSA9IChzdHJ1Y3QgcGFja19pbmZvICopX2E7CisJc3RydWN0IHBhY2tfaW5mbyAqYiA9IChzdHJ1Y3QgcGFja19pbmZvICopX2I7CisJcmV0dXJuIHN0cmNtcChhLT5wYWNrX25hbWUsIGItPnBhY2tfbmFtZSk7Cit9CisKIHN0cnVjdCBwYWNrX2xpc3QgewotCXN0cnVjdCBwYWNrZWRfZ2l0ICoqbGlzdDsKLQljaGFyICoqbmFtZXM7CisJc3RydWN0IHBhY2tfaW5mbyAqaW5mbzsKIAl1aW50MzJfdCBucjsKLQl1aW50MzJfdCBhbGxvY19saXN0OwotCXVpbnQzMl90IGFsbG9jX25hbWVzOwotCXNpemVfdCBwYWNrX25hbWVfY29uY2F0X2xlbjsKKwl1aW50MzJfdCBhbGxvYzsKIAlzdHJ1Y3QgbXVsdGlfcGFja19pbmRleCAqbTsKKwlzdHJ1Y3QgcHJvZ3Jlc3MgKnByb2dyZXNzOworCXVuc2lnbmVkIHBhY2tfcGF0aHNfY2hlY2tlZDsKIH07CiAKIHN0YXRpYyB2b2lkIGFkZF9wYWNrX3RvX21pZHgoY29uc3QgY2hhciAqZnVsbF9wYXRoLCBzaXplX3QgZnVsbF9wYXRoX2xlbiwKQEAgLTM5Myw3MCArNDU4LDM3IEBACiAJc3RydWN0IHBhY2tfbGlzdCAqcGFja3MgPSAoc3RydWN0IHBhY2tfbGlzdCAqKWRhdGE7CiAKIAlpZiAoZW5kc193aXRoKGZpbGVfbmFtZSwgIi5pZHgiKSkgeworCQlkaXNwbGF5X3Byb2dyZXNzKHBhY2tzLT5wcm9ncmVzcywgKytwYWNrcy0+cGFja19wYXRoc19jaGVja2VkKTsKIAkJaWYgKHBhY2tzLT5tICYmIG1pZHhfY29udGFpbnNfcGFjayhwYWNrcy0+bSwgZmlsZV9uYW1lKSkKIAkJCXJldHVybjsKIAotCQlBTExPQ19HUk9XKHBhY2tzLT5saXN0LCBwYWNrcy0+bnIgKyAxLCBwYWNrcy0+YWxsb2NfbGlzdCk7Ci0JCUFMTE9DX0dST1cocGFja3MtPm5hbWVzLCBwYWNrcy0+bnIgKyAxLCBwYWNrcy0+YWxsb2NfbmFtZXMpOworCQlBTExPQ19HUk9XKHBhY2tzLT5pbmZvLCBwYWNrcy0+bnIgKyAxLCBwYWNrcy0+YWxsb2MpOwogCi0JCXBhY2tzLT5saXN0W3BhY2tzLT5ucl0gPSBhZGRfcGFja2VkX2dpdChmdWxsX3BhdGgsCi0JCQkJCQkJZnVsbF9wYXRoX2xlbiwKLQkJCQkJCQkwKTsKKwkJcGFja3MtPmluZm9bcGFja3MtPm5yXS5wID0gYWRkX3BhY2tlZF9naXQoZnVsbF9wYXRoLAorCQkJCQkJCSAgZnVsbF9wYXRoX2xlbiwKKwkJCQkJCQkgIDApOwogCi0JCWlmICghcGFja3MtPmxpc3RbcGFja3MtPm5yXSkgeworCQlpZiAoIXBhY2tzLT5pbmZvW3BhY2tzLT5ucl0ucCkgewogCQkJd2FybmluZyhfKCJmYWlsZWQgdG8gYWRkIHBhY2tmaWxlICclcyciKSwKIAkJCQlmdWxsX3BhdGgpOwogCQkJcmV0dXJuOwogCQl9CiAKLQkJaWYgKG9wZW5fcGFja19pbmRleChwYWNrcy0+bGlzdFtwYWNrcy0+bnJdKSkgeworCQlpZiAob3Blbl9wYWNrX2luZGV4KHBhY2tzLT5pbmZvW3BhY2tzLT5ucl0ucCkpIHsKIAkJCXdhcm5pbmcoXygiZmFpbGVkIHRvIG9wZW4gcGFjay1pbmRleCAnJXMnIiksCiAJCQkJZnVsbF9wYXRoKTsKLQkJCWNsb3NlX3BhY2socGFja3MtPmxpc3RbcGFja3MtPm5yXSk7Ci0JCQlGUkVFX0FORF9OVUxMKHBhY2tzLT5saXN0W3BhY2tzLT5ucl0pOworCQkJY2xvc2VfcGFjayhwYWNrcy0+aW5mb1twYWNrcy0+bnJdLnApOworCQkJRlJFRV9BTkRfTlVMTChwYWNrcy0+aW5mb1twYWNrcy0+bnJdLnApOwogCQkJcmV0dXJuOwogCQl9CiAKLQkJcGFja3MtPm5hbWVzW3BhY2tzLT5ucl0gPSB4c3RyZHVwKGZpbGVfbmFtZSk7Ci0JCXBhY2tzLT5wYWNrX25hbWVfY29uY2F0X2xlbiArPSBzdHJsZW4oZmlsZV9uYW1lKSArIDE7CisJCXBhY2tzLT5pbmZvW3BhY2tzLT5ucl0ucGFja19uYW1lID0geHN0cmR1cChmaWxlX25hbWUpOworCQlwYWNrcy0+aW5mb1twYWNrcy0+bnJdLm9yaWdfcGFja19pbnRfaWQgPSBwYWNrcy0+bnI7CisJCXBhY2tzLT5pbmZvW3BhY2tzLT5ucl0uZXhwaXJlZCA9IDA7CiAJCXBhY2tzLT5ucisrOwogCX0KIH0KIAotc3RydWN0IHBhY2tfcGFpciB7Ci0JdWludDMyX3QgcGFja19pbnRfaWQ7Ci0JY2hhciAqcGFja19uYW1lOwotfTsKLQotc3RhdGljIGludCBwYWNrX3BhaXJfY29tcGFyZShjb25zdCB2b2lkICpfYSwgY29uc3Qgdm9pZCAqX2IpCi17Ci0Jc3RydWN0IHBhY2tfcGFpciAqYSA9IChzdHJ1Y3QgcGFja19wYWlyICopX2E7Ci0Jc3RydWN0IHBhY2tfcGFpciAqYiA9IChzdHJ1Y3QgcGFja19wYWlyICopX2I7Ci0JcmV0dXJuIHN0cmNtcChhLT5wYWNrX25hbWUsIGItPnBhY2tfbmFtZSk7Ci19Ci0KLXN0YXRpYyB2b2lkIHNvcnRfcGFja3NfYnlfbmFtZShjaGFyICoqcGFja19uYW1lcywgdWludDMyX3QgbnJfcGFja3MsIHVpbnQzMl90ICpwZXJtKQotewotCXVpbnQzMl90IGk7Ci0Jc3RydWN0IHBhY2tfcGFpciAqcGFpcnM7Ci0KLQlBTExPQ19BUlJBWShwYWlycywgbnJfcGFja3MpOwotCi0JZm9yIChpID0gMDsgaSA8IG5yX3BhY2tzOyBpKyspIHsKLQkJcGFpcnNbaV0ucGFja19pbnRfaWQgPSBpOwotCQlwYWlyc1tpXS5wYWNrX25hbWUgPSBwYWNrX25hbWVzW2ldOwotCX0KLQotCVFTT1JUKHBhaXJzLCBucl9wYWNrcywgcGFja19wYWlyX2NvbXBhcmUpOwotCi0JZm9yIChpID0gMDsgaSA8IG5yX3BhY2tzOyBpKyspIHsKLQkJcGFja19uYW1lc1tpXSA9IHBhaXJzW2ldLnBhY2tfbmFtZTsKLQkJcGVybVtwYWlyc1tpXS5wYWNrX2ludF9pZF0gPSBpOwotCX0KLQotCWZyZWUocGFpcnMpOwotfQotCiBzdHJ1Y3QgcGFja19taWR4X2VudHJ5IHsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAl1aW50MzJfdCBwYWNrX2ludF9pZDsKQEAgLTQ4Miw3ICs1MTQsNiBAQAogfQogCiBzdGF0aWMgaW50IG50aF9taWR4ZWRfcGFja19taWR4X2VudHJ5KHN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptLAotCQkJCSAgICAgIHVpbnQzMl90ICpwYWNrX3Blcm0sCiAJCQkJICAgICAgc3RydWN0IHBhY2tfbWlkeF9lbnRyeSAqZSwKIAkJCQkgICAgICB1aW50MzJfdCBwb3MpCiB7CkBAIC00OTAsNyArNTIxLDcgQEAKIAkJcmV0dXJuIDE7CiAKIAludGhfbWlkeGVkX29iamVjdF9vaWQoJmUtPm9pZCwgbSwgcG9zKTsKLQllLT5wYWNrX2ludF9pZCA9IHBhY2tfcGVybVtudGhfbWlkeGVkX3BhY2tfaW50X2lkKG0sIHBvcyldOworCWUtPnBhY2tfaW50X2lkID0gbnRoX21pZHhlZF9wYWNrX2ludF9pZChtLCBwb3MpOwogCWUtPm9mZnNldCA9IG50aF9taWR4ZWRfb2Zmc2V0KG0sIHBvcyk7CiAKIAkvKiBjb25zaWRlciBvYmplY3RzIGluIG1pZHggdG8gYmUgZnJvbSAib2xkIiBwYWNrcyAqLwpAQCAtNTAzLDcgKzUzNCw3IEBACiAJCQkgICAgdWludDMyX3QgY3VyX29iamVjdCwKIAkJCSAgICBzdHJ1Y3QgcGFja19taWR4X2VudHJ5ICplbnRyeSkKIHsKLQlpZiAoIW50aF9wYWNrZWRfb2JqZWN0X29pZCgmZW50cnktPm9pZCwgcCwgY3VyX29iamVjdCkpCisJaWYgKG50aF9wYWNrZWRfb2JqZWN0X2lkKCZlbnRyeS0+b2lkLCBwLCBjdXJfb2JqZWN0KSA8IDApCiAJCWRpZShfKCJmYWlsZWQgdG8gbG9jYXRlIG9iamVjdCAlZCBpbiBwYWNrZmlsZSIpLCBjdXJfb2JqZWN0KTsKIAogCWVudHJ5LT5wYWNrX2ludF9pZCA9IHBhY2tfaW50X2lkOwpAQCAtNTI0LDggKzU1NSw3IEBACiAgKiBvZiBhIHBhY2tmaWxlIGNvbnRhaW5pbmcgdGhlIG9iamVjdCkuCiAgKi8KIHN0YXRpYyBzdHJ1Y3QgcGFja19taWR4X2VudHJ5ICpnZXRfc29ydGVkX2VudHJpZXMoc3RydWN0IG11bHRpX3BhY2tfaW5kZXggKm0sCi0JCQkJCQkgIHN0cnVjdCBwYWNrZWRfZ2l0ICoqcCwKLQkJCQkJCSAgdWludDMyX3QgKnBlcm0sCisJCQkJCQkgIHN0cnVjdCBwYWNrX2luZm8gKmluZm8sCiAJCQkJCQkgIHVpbnQzMl90IG5yX3BhY2tzLAogCQkJCQkJICB1aW50MzJfdCAqbnJfb2JqZWN0cykKIHsKQEAgLTUzNiw3ICs1NjYsNyBAQAogCXVpbnQzMl90IHN0YXJ0X3BhY2sgPSBtID8gbS0+bnVtX3BhY2tzIDogMDsKIAogCWZvciAoY3VyX3BhY2sgPSBzdGFydF9wYWNrOyBjdXJfcGFjayA8IG5yX3BhY2tzOyBjdXJfcGFjaysrKQotCQl0b3RhbF9vYmplY3RzICs9IHBbY3VyX3BhY2tdLT5udW1fb2JqZWN0czsKKwkJdG90YWxfb2JqZWN0cyArPSBpbmZvW2N1cl9wYWNrXS5wLT5udW1fb2JqZWN0czsKIAogCS8qCiAJICogQXMgd2UgZGUtZHVwbGljYXRlIGJ5IGZhbm91dCB2YWx1ZSwgd2UgZXhwZWN0IHRoZSBmYW5vdXQKQEAgLTU2MSw3ICs1OTEsNyBAQAogCiAJCQlmb3IgKGN1cl9vYmplY3QgPSBzdGFydDsgY3VyX29iamVjdCA8IGVuZDsgY3VyX29iamVjdCsrKSB7CiAJCQkJQUxMT0NfR1JPVyhlbnRyaWVzX2J5X2Zhbm91dCwgbnJfZmFub3V0ICsgMSwgYWxsb2NfZmFub3V0KTsKLQkJCQludGhfbWlkeGVkX3BhY2tfbWlkeF9lbnRyeShtLCBwZXJtLAorCQkJCW50aF9taWR4ZWRfcGFja19taWR4X2VudHJ5KG0sCiAJCQkJCQkJICAgJmVudHJpZXNfYnlfZmFub3V0W25yX2Zhbm91dF0sCiAJCQkJCQkJICAgY3VyX29iamVjdCk7CiAJCQkJbnJfZmFub3V0Kys7CkBAIC01NzIsMTIgKzYwMiwxMiBAQAogCQkJdWludDMyX3Qgc3RhcnQgPSAwLCBlbmQ7CiAKIAkJCWlmIChjdXJfZmFub3V0KQotCQkJCXN0YXJ0ID0gZ2V0X3BhY2tfZmFub3V0KHBbY3VyX3BhY2tdLCBjdXJfZmFub3V0IC0gMSk7Ci0JCQllbmQgPSBnZXRfcGFja19mYW5vdXQocFtjdXJfcGFja10sIGN1cl9mYW5vdXQpOworCQkJCXN0YXJ0ID0gZ2V0X3BhY2tfZmFub3V0KGluZm9bY3VyX3BhY2tdLnAsIGN1cl9mYW5vdXQgLSAxKTsKKwkJCWVuZCA9IGdldF9wYWNrX2Zhbm91dChpbmZvW2N1cl9wYWNrXS5wLCBjdXJfZmFub3V0KTsKIAogCQkJZm9yIChjdXJfb2JqZWN0ID0gc3RhcnQ7IGN1cl9vYmplY3QgPCBlbmQ7IGN1cl9vYmplY3QrKykgewogCQkJCUFMTE9DX0dST1coZW50cmllc19ieV9mYW5vdXQsIG5yX2Zhbm91dCArIDEsIGFsbG9jX2Zhbm91dCk7Ci0JCQkJZmlsbF9wYWNrX2VudHJ5KHBlcm1bY3VyX3BhY2tdLCBwW2N1cl9wYWNrXSwgY3VyX29iamVjdCwgJmVudHJpZXNfYnlfZmFub3V0W25yX2Zhbm91dF0pOworCQkJCWZpbGxfcGFja19lbnRyeShjdXJfcGFjaywgaW5mb1tjdXJfcGFja10ucCwgY3VyX29iamVjdCwgJmVudHJpZXNfYnlfZmFub3V0W25yX2Zhbm91dF0pOwogCQkJCW5yX2Zhbm91dCsrOwogCQkJfQogCQl9CkBAIC02MDYsNyArNjM2LDcgQEAKIH0KIAogc3RhdGljIHNpemVfdCB3cml0ZV9taWR4X3BhY2tfbmFtZXMoc3RydWN0IGhhc2hmaWxlICpmLAotCQkJCSAgICBjaGFyICoqcGFja19uYW1lcywKKwkJCQkgICAgc3RydWN0IHBhY2tfaW5mbyAqaW5mbywKIAkJCQkgICAgdWludDMyX3QgbnVtX3BhY2tzKQogewogCXVpbnQzMl90IGk7CkBAIC02MTQsMTQgKzY0NCwxOCBAQAogCXNpemVfdCB3cml0dGVuID0gMDsKIAogCWZvciAoaSA9IDA7IGkgPCBudW1fcGFja3M7IGkrKykgewotCQlzaXplX3Qgd3JpdGVsZW4gPSBzdHJsZW4ocGFja19uYW1lc1tpXSkgKyAxOworCQlzaXplX3Qgd3JpdGVsZW47CiAKLQkJaWYgKGkgJiYgc3RyY21wKHBhY2tfbmFtZXNbaV0sIHBhY2tfbmFtZXNbaSAtIDFdKSA8PSAwKQorCQlpZiAoaW5mb1tpXS5leHBpcmVkKQorCQkJY29udGludWU7CisKKwkJaWYgKGkgJiYgc3RyY21wKGluZm9baV0ucGFja19uYW1lLCBpbmZvW2kgLSAxXS5wYWNrX25hbWUpIDw9IDApCiAJCQlCVUcoImluY29ycmVjdCBwYWNrLWZpbGUgb3JkZXI6ICVzIGJlZm9yZSAlcyIsCi0JCQkgICAgcGFja19uYW1lc1tpIC0gMV0sCi0JCQkgICAgcGFja19uYW1lc1tpXSk7CisJCQkgICAgaW5mb1tpIC0gMV0ucGFja19uYW1lLAorCQkJICAgIGluZm9baV0ucGFja19uYW1lKTsKIAotCQloYXNod3JpdGUoZiwgcGFja19uYW1lc1tpXSwgd3JpdGVsZW4pOworCQl3cml0ZWxlbiA9IHN0cmxlbihpbmZvW2ldLnBhY2tfbmFtZSkgKyAxOworCQloYXNod3JpdGUoZiwgaW5mb1tpXS5wYWNrX25hbWUsIHdyaXRlbGVuKTsKIAkJd3JpdHRlbiArPSB3cml0ZWxlbjsKIAl9CiAKQEAgLTY5Miw2ICs3MjYsNyBAQAogfQogCiBzdGF0aWMgc2l6ZV90IHdyaXRlX21pZHhfb2JqZWN0X29mZnNldHMoc3RydWN0IGhhc2hmaWxlICpmLCBpbnQgbGFyZ2Vfb2Zmc2V0X25lZWRlZCwKKwkJCQkJdWludDMyX3QgKnBlcm0sCiAJCQkJCXN0cnVjdCBwYWNrX21pZHhfZW50cnkgKm9iamVjdHMsIHVpbnQzMl90IG5yX29iamVjdHMpCiB7CiAJc3RydWN0IHBhY2tfbWlkeF9lbnRyeSAqbGlzdCA9IG9iamVjdHM7CkBAIC03MDEsNyArNzM2LDEyIEBACiAJZm9yIChpID0gMDsgaSA8IG5yX29iamVjdHM7IGkrKykgewogCQlzdHJ1Y3QgcGFja19taWR4X2VudHJ5ICpvYmogPSBsaXN0Kys7CiAKLQkJaGFzaHdyaXRlX2JlMzIoZiwgb2JqLT5wYWNrX2ludF9pZCk7CisJCWlmIChwZXJtW29iai0+cGFja19pbnRfaWRdID09IFBBQ0tfRVhQSVJFRCkKKwkJCUJVRygib2JqZWN0ICVzIGlzIGluIGFuIGV4cGlyZWQgcGFjayB3aXRoIGludC1pZCAlZCIsCisJCQkgICAgb2lkX3RvX2hleCgmb2JqLT5vaWQpLAorCQkJICAgIG9iai0+cGFja19pbnRfaWQpOworCisJCWhhc2h3cml0ZV9iZTMyKGYsIHBlcm1bb2JqLT5wYWNrX2ludF9pZF0pOwogCiAJCWlmIChsYXJnZV9vZmZzZXRfbmVlZGVkICYmIG9iai0+b2Zmc2V0ID4+IDMxKQogCQkJaGFzaHdyaXRlX2JlMzIoZiwgTUlEWF9MQVJHRV9PRkZTRVRfTkVFREVEIHwgbnJfbGFyZ2Vfb2Zmc2V0KyspOwpAQCAtNzQ3LDcgKzc4Nyw4IEBACiAJcmV0dXJuIHdyaXR0ZW47CiB9CiAKLWludCB3cml0ZV9taWR4X2ZpbGUoY29uc3QgY2hhciAqb2JqZWN0X2RpcikKK3N0YXRpYyBpbnQgd3JpdGVfbWlkeF9pbnRlcm5hbChjb25zdCBjaGFyICpvYmplY3RfZGlyLCBzdHJ1Y3QgbXVsdGlfcGFja19pbmRleCAqbSwKKwkJCSAgICAgICBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKnBhY2tzX3RvX2Ryb3AsIHVuc2lnbmVkIGZsYWdzKQogewogCXVuc2lnbmVkIGNoYXIgY3VyX2NodW5rLCBudW1fY2h1bmtzID0gMDsKIAljaGFyICptaWR4X25hbWU7CkBAIC03NjEsNyArODAyLDExIEBACiAJdWludDY0X3QgY2h1bmtfb2Zmc2V0c1tNSURYX01BWF9DSFVOS1MgKyAxXTsKIAl1aW50MzJfdCBucl9lbnRyaWVzLCBudW1fbGFyZ2Vfb2Zmc2V0cyA9IDA7CiAJc3RydWN0IHBhY2tfbWlkeF9lbnRyeSAqZW50cmllcyA9IE5VTEw7CisJc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcyA9IE5VTEw7CiAJaW50IGxhcmdlX29mZnNldHNfbmVlZGVkID0gMDsKKwlpbnQgcGFja19uYW1lX2NvbmNhdF9sZW4gPSAwOworCWludCBkcm9wcGVkX3BhY2tzID0gMDsKKwlpbnQgcmVzdWx0ID0gMDsKIAogCW1pZHhfbmFtZSA9IGdldF9taWR4X2ZpbGVuYW1lKG9iamVjdF9kaXIpOwogCWlmIChzYWZlX2NyZWF0ZV9sZWFkaW5nX2RpcmVjdG9yaWVzKG1pZHhfbmFtZSkpIHsKQEAgLTc3MCw0MiArODE1LDQxIEBACiAJCQkgIG1pZHhfbmFtZSk7CiAJfQogCi0JcGFja3MubSA9IGxvYWRfbXVsdGlfcGFja19pbmRleChvYmplY3RfZGlyLCAxKTsKKwlpZiAobSkKKwkJcGFja3MubSA9IG07CisJZWxzZQorCQlwYWNrcy5tID0gbG9hZF9tdWx0aV9wYWNrX2luZGV4KG9iamVjdF9kaXIsIDEpOwogCiAJcGFja3MubnIgPSAwOwotCXBhY2tzLmFsbG9jX2xpc3QgPSBwYWNrcy5tID8gcGFja3MubS0+bnVtX3BhY2tzIDogMTY7Ci0JcGFja3MuYWxsb2NfbmFtZXMgPSBwYWNrcy5hbGxvY19saXN0OwotCXBhY2tzLmxpc3QgPSBOVUxMOwotCXBhY2tzLm5hbWVzID0gTlVMTDsKLQlwYWNrcy5wYWNrX25hbWVfY29uY2F0X2xlbiA9IDA7Ci0JQUxMT0NfQVJSQVkocGFja3MubGlzdCwgcGFja3MuYWxsb2NfbGlzdCk7Ci0JQUxMT0NfQVJSQVkocGFja3MubmFtZXMsIHBhY2tzLmFsbG9jX25hbWVzKTsKKwlwYWNrcy5hbGxvYyA9IHBhY2tzLm0gPyBwYWNrcy5tLT5udW1fcGFja3MgOiAxNjsKKwlwYWNrcy5pbmZvID0gTlVMTDsKKwlBTExPQ19BUlJBWShwYWNrcy5pbmZvLCBwYWNrcy5hbGxvYyk7CiAKIAlpZiAocGFja3MubSkgewogCQlmb3IgKGkgPSAwOyBpIDwgcGFja3MubS0+bnVtX3BhY2tzOyBpKyspIHsKLQkJCUFMTE9DX0dST1cocGFja3MubGlzdCwgcGFja3MubnIgKyAxLCBwYWNrcy5hbGxvY19saXN0KTsKLQkJCUFMTE9DX0dST1cocGFja3MubmFtZXMsIHBhY2tzLm5yICsgMSwgcGFja3MuYWxsb2NfbmFtZXMpOworCQkJQUxMT0NfR1JPVyhwYWNrcy5pbmZvLCBwYWNrcy5uciArIDEsIHBhY2tzLmFsbG9jKTsKIAotCQkJcGFja3MubGlzdFtwYWNrcy5ucl0gPSBOVUxMOwotCQkJcGFja3MubmFtZXNbcGFja3MubnJdID0geHN0cmR1cChwYWNrcy5tLT5wYWNrX25hbWVzW2ldKTsKLQkJCXBhY2tzLnBhY2tfbmFtZV9jb25jYXRfbGVuICs9IHN0cmxlbihwYWNrcy5uYW1lc1twYWNrcy5ucl0pICsgMTsKKwkJCXBhY2tzLmluZm9bcGFja3MubnJdLm9yaWdfcGFja19pbnRfaWQgPSBpOworCQkJcGFja3MuaW5mb1twYWNrcy5ucl0ucGFja19uYW1lID0geHN0cmR1cChwYWNrcy5tLT5wYWNrX25hbWVzW2ldKTsKKwkJCXBhY2tzLmluZm9bcGFja3MubnJdLnAgPSBOVUxMOworCQkJcGFja3MuaW5mb1twYWNrcy5ucl0uZXhwaXJlZCA9IDA7CiAJCQlwYWNrcy5ucisrOwogCQl9CiAJfQogCi0JZm9yX2VhY2hfZmlsZV9pbl9wYWNrX2RpcihvYmplY3RfZGlyLCBhZGRfcGFja190b19taWR4LCAmcGFja3MpOworCXBhY2tzLnBhY2tfcGF0aHNfY2hlY2tlZCA9IDA7CisJaWYgKGZsYWdzICYgTUlEWF9QUk9HUkVTUykKKwkJcGFja3MucHJvZ3Jlc3MgPSBzdGFydF9wcm9ncmVzcyhfKCJBZGRpbmcgcGFja2ZpbGVzIHRvIG11bHRpLXBhY2staW5kZXgiKSwgMCk7CisJZWxzZQorCQlwYWNrcy5wcm9ncmVzcyA9IE5VTEw7CiAKLQlpZiAocGFja3MubSAmJiBwYWNrcy5uciA9PSBwYWNrcy5tLT5udW1fcGFja3MpCisJZm9yX2VhY2hfZmlsZV9pbl9wYWNrX2RpcihvYmplY3RfZGlyLCBhZGRfcGFja190b19taWR4LCAmcGFja3MpOworCXN0b3BfcHJvZ3Jlc3MoJnBhY2tzLnByb2dyZXNzKTsKKworCWlmIChwYWNrcy5tICYmIHBhY2tzLm5yID09IHBhY2tzLm0tPm51bV9wYWNrcyAmJiAhcGFja3NfdG9fZHJvcCkKIAkJZ290byBjbGVhbnVwOwogCi0JaWYgKHBhY2tzLnBhY2tfbmFtZV9jb25jYXRfbGVuICUgTUlEWF9DSFVOS19BTElHTk1FTlQpCi0JCXBhY2tzLnBhY2tfbmFtZV9jb25jYXRfbGVuICs9IE1JRFhfQ0hVTktfQUxJR05NRU5UIC0KLQkJCQkJICAgICAgKHBhY2tzLnBhY2tfbmFtZV9jb25jYXRfbGVuICUgTUlEWF9DSFVOS19BTElHTk1FTlQpOwotCi0JQUxMT0NfQVJSQVkocGFja19wZXJtLCBwYWNrcy5ucik7Ci0Jc29ydF9wYWNrc19ieV9uYW1lKHBhY2tzLm5hbWVzLCBwYWNrcy5uciwgcGFja19wZXJtKTsKLQotCWVudHJpZXMgPSBnZXRfc29ydGVkX2VudHJpZXMocGFja3MubSwgcGFja3MubGlzdCwgcGFja19wZXJtLCBwYWNrcy5uciwgJm5yX2VudHJpZXMpOworCWVudHJpZXMgPSBnZXRfc29ydGVkX2VudHJpZXMocGFja3MubSwgcGFja3MuaW5mbywgcGFja3MubnIsICZucl9lbnRyaWVzKTsKIAogCWZvciAoaSA9IDA7IGkgPCBucl9lbnRyaWVzOyBpKyspIHsKIAkJaWYgKGVudHJpZXNbaV0ub2Zmc2V0ID4gMHg3ZmZmZmZmZikKQEAgLTgxNCw2ICs4NTgsNjEgQEAKIAkJCWxhcmdlX29mZnNldHNfbmVlZGVkID0gMTsKIAl9CiAKKwlRU09SVChwYWNrcy5pbmZvLCBwYWNrcy5uciwgcGFja19pbmZvX2NvbXBhcmUpOworCisJaWYgKHBhY2tzX3RvX2Ryb3AgJiYgcGFja3NfdG9fZHJvcC0+bnIpIHsKKwkJaW50IGRyb3BfaW5kZXggPSAwOworCQlpbnQgbWlzc2luZ19kcm9wcyA9IDA7CisKKwkJZm9yIChpID0gMDsgaSA8IHBhY2tzLm5yICYmIGRyb3BfaW5kZXggPCBwYWNrc190b19kcm9wLT5ucjsgaSsrKSB7CisJCQlpbnQgY21wID0gc3RyY21wKHBhY2tzLmluZm9baV0ucGFja19uYW1lLAorCQkJCQkgcGFja3NfdG9fZHJvcC0+aXRlbXNbZHJvcF9pbmRleF0uc3RyaW5nKTsKKworCQkJaWYgKCFjbXApIHsKKwkJCQlkcm9wX2luZGV4Kys7CisJCQkJcGFja3MuaW5mb1tpXS5leHBpcmVkID0gMTsKKwkJCX0gZWxzZSBpZiAoY21wID4gMCkgeworCQkJCWVycm9yKF8oImRpZCBub3Qgc2VlIHBhY2stZmlsZSAlcyB0byBkcm9wIiksCisJCQkJICAgICAgcGFja3NfdG9fZHJvcC0+aXRlbXNbZHJvcF9pbmRleF0uc3RyaW5nKTsKKwkJCQlkcm9wX2luZGV4Kys7CisJCQkJbWlzc2luZ19kcm9wcysrOworCQkJCWktLTsKKwkJCX0gZWxzZSB7CisJCQkJcGFja3MuaW5mb1tpXS5leHBpcmVkID0gMDsKKwkJCX0KKwkJfQorCisJCWlmIChtaXNzaW5nX2Ryb3BzKSB7CisJCQlyZXN1bHQgPSAxOworCQkJZ290byBjbGVhbnVwOworCQl9CisJfQorCisJLyoKKwkgKiBwYWNrX3Blcm0gc3RvcmVzIGEgcGVybXV0YXRpb24gYmV0d2VlbiBwYWNrLWludC1pZHMgZnJvbSB0aGUKKwkgKiBwcmV2aW91cyBtdWx0aS1wYWNrLWluZGV4IHRvIHRoZSBuZXcgb25lIHdlIGFyZSB3cml0aW5nOgorCSAqCisJICogcGFja19wZXJtW29sZF9pZF0gPSBuZXdfaWQKKwkgKi8KKwlBTExPQ19BUlJBWShwYWNrX3Blcm0sIHBhY2tzLm5yKTsKKwlmb3IgKGkgPSAwOyBpIDwgcGFja3MubnI7IGkrKykgeworCQlpZiAocGFja3MuaW5mb1tpXS5leHBpcmVkKSB7CisJCQlkcm9wcGVkX3BhY2tzKys7CisJCQlwYWNrX3Blcm1bcGFja3MuaW5mb1tpXS5vcmlnX3BhY2tfaW50X2lkXSA9IFBBQ0tfRVhQSVJFRDsKKwkJfSBlbHNlIHsKKwkJCXBhY2tfcGVybVtwYWNrcy5pbmZvW2ldLm9yaWdfcGFja19pbnRfaWRdID0gaSAtIGRyb3BwZWRfcGFja3M7CisJCX0KKwl9CisKKwlmb3IgKGkgPSAwOyBpIDwgcGFja3MubnI7IGkrKykgeworCQlpZiAoIXBhY2tzLmluZm9baV0uZXhwaXJlZCkKKwkJCXBhY2tfbmFtZV9jb25jYXRfbGVuICs9IHN0cmxlbihwYWNrcy5pbmZvW2ldLnBhY2tfbmFtZSkgKyAxOworCX0KKworCWlmIChwYWNrX25hbWVfY29uY2F0X2xlbiAlIE1JRFhfQ0hVTktfQUxJR05NRU5UKQorCQlwYWNrX25hbWVfY29uY2F0X2xlbiArPSBNSURYX0NIVU5LX0FMSUdOTUVOVCAtCisJCQkJCShwYWNrX25hbWVfY29uY2F0X2xlbiAlIE1JRFhfQ0hVTktfQUxJR05NRU5UKTsKKwogCWhvbGRfbG9ja19maWxlX2Zvcl91cGRhdGUoJmxrLCBtaWR4X25hbWUsIExPQ0tfRElFX09OX0VSUk9SKTsKIAlmID0gaGFzaGZkKGxrLnRlbXBmaWxlLT5mZCwgbGsudGVtcGZpbGUtPmZpbGVuYW1lLmJ1Zik7CiAJRlJFRV9BTkRfTlVMTChtaWR4X25hbWUpOwpAQCAtODI0LDE0ICs5MjMsMTQgQEAKIAljdXJfY2h1bmsgPSAwOwogCW51bV9jaHVua3MgPSBsYXJnZV9vZmZzZXRzX25lZWRlZCA/IDUgOiA0OwogCi0Jd3JpdHRlbiA9IHdyaXRlX21pZHhfaGVhZGVyKGYsIG51bV9jaHVua3MsIHBhY2tzLm5yKTsKKwl3cml0dGVuID0gd3JpdGVfbWlkeF9oZWFkZXIoZiwgbnVtX2NodW5rcywgcGFja3MubnIgLSBkcm9wcGVkX3BhY2tzKTsKIAogCWNodW5rX2lkc1tjdXJfY2h1bmtdID0gTUlEWF9DSFVOS0lEX1BBQ0tOQU1FUzsKIAljaHVua19vZmZzZXRzW2N1cl9jaHVua10gPSB3cml0dGVuICsgKG51bV9jaHVua3MgKyAxKSAqIE1JRFhfQ0hVTktMT09LVVBfV0lEVEg7CiAKIAljdXJfY2h1bmsrKzsKIAljaHVua19pZHNbY3VyX2NodW5rXSA9IE1JRFhfQ0hVTktJRF9PSURGQU5PVVQ7Ci0JY2h1bmtfb2Zmc2V0c1tjdXJfY2h1bmtdID0gY2h1bmtfb2Zmc2V0c1tjdXJfY2h1bmsgLSAxXSArIHBhY2tzLnBhY2tfbmFtZV9jb25jYXRfbGVuOworCWNodW5rX29mZnNldHNbY3VyX2NodW5rXSA9IGNodW5rX29mZnNldHNbY3VyX2NodW5rIC0gMV0gKyBwYWNrX25hbWVfY29uY2F0X2xlbjsKIAogCWN1cl9jaHVuaysrOwogCWNodW5rX2lkc1tjdXJfY2h1bmtdID0gTUlEWF9DSFVOS0lEX09JRExPT0tVUDsKQEAgLTgzOSw3ICs5MzgsNyBAQAogCiAJY3VyX2NodW5rKys7CiAJY2h1bmtfaWRzW2N1cl9jaHVua10gPSBNSURYX0NIVU5LSURfT0JKRUNUT0ZGU0VUUzsKLQljaHVua19vZmZzZXRzW2N1cl9jaHVua10gPSBjaHVua19vZmZzZXRzW2N1cl9jaHVuayAtIDFdICsgbnJfZW50cmllcyAqIE1JRFhfSEFTSF9MRU47CisJY2h1bmtfb2Zmc2V0c1tjdXJfY2h1bmtdID0gY2h1bmtfb2Zmc2V0c1tjdXJfY2h1bmsgLSAxXSArIG5yX2VudHJpZXMgKiB0aGVfaGFzaF9hbGdvLT5yYXdzejsKIAogCWN1cl9jaHVuaysrOwogCWNodW5rX29mZnNldHNbY3VyX2NodW5rXSA9IGNodW5rX29mZnNldHNbY3VyX2NodW5rIC0gMV0gKyBucl9lbnRyaWVzICogTUlEWF9DSFVOS19PRkZTRVRfV0lEVEg7CkBAIC04NzAsNiArOTY5LDkgQEAKIAkJd3JpdHRlbiArPSBNSURYX0NIVU5LTE9PS1VQX1dJRFRIOwogCX0KIAorCWlmIChmbGFncyAmIE1JRFhfUFJPR1JFU1MpCisJCXByb2dyZXNzID0gc3RhcnRfcHJvZ3Jlc3MoXygiV3JpdGluZyBjaHVua3MgdG8gbXVsdGktcGFjay1pbmRleCIpLAorCQkJCQkgIG51bV9jaHVua3MpOwogCWZvciAoaSA9IDA7IGkgPCBudW1fY2h1bmtzOyBpKyspIHsKIAkJaWYgKHdyaXR0ZW4gIT0gY2h1bmtfb2Zmc2V0c1tpXSkKIAkJCUJVRygiaW5jb3JyZWN0IGNodW5rIG9mZnNldCAoJSJQUkl1NjQiICE9ICUiUFJJdTY0IikgZm9yIGNodW5rIGlkICUiUFJJeDMyLApAQCAtODc5LDcgKzk4MSw3IEBACiAKIAkJc3dpdGNoIChjaHVua19pZHNbaV0pIHsKIAkJCWNhc2UgTUlEWF9DSFVOS0lEX1BBQ0tOQU1FUzoKLQkJCQl3cml0dGVuICs9IHdyaXRlX21pZHhfcGFja19uYW1lcyhmLCBwYWNrcy5uYW1lcywgcGFja3MubnIpOworCQkJCXdyaXR0ZW4gKz0gd3JpdGVfbWlkeF9wYWNrX25hbWVzKGYsIHBhY2tzLmluZm8sIHBhY2tzLm5yKTsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBNSURYX0NIVU5LSURfT0lERkFOT1VUOgpAQCAtODg3LDExICs5ODksMTEgQEAKIAkJCQlicmVhazsKIAogCQkJY2FzZSBNSURYX0NIVU5LSURfT0lETE9PS1VQOgotCQkJCXdyaXR0ZW4gKz0gd3JpdGVfbWlkeF9vaWRfbG9va3VwKGYsIE1JRFhfSEFTSF9MRU4sIGVudHJpZXMsIG5yX2VudHJpZXMpOworCQkJCXdyaXR0ZW4gKz0gd3JpdGVfbWlkeF9vaWRfbG9va3VwKGYsIHRoZV9oYXNoX2FsZ28tPnJhd3N6LCBlbnRyaWVzLCBucl9lbnRyaWVzKTsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBNSURYX0NIVU5LSURfT0JKRUNUT0ZGU0VUUzoKLQkJCQl3cml0dGVuICs9IHdyaXRlX21pZHhfb2JqZWN0X29mZnNldHMoZiwgbGFyZ2Vfb2Zmc2V0c19uZWVkZWQsIGVudHJpZXMsIG5yX2VudHJpZXMpOworCQkJCXdyaXR0ZW4gKz0gd3JpdGVfbWlkeF9vYmplY3Rfb2Zmc2V0cyhmLCBsYXJnZV9vZmZzZXRzX25lZWRlZCwgcGFja19wZXJtLCBlbnRyaWVzLCBucl9lbnRyaWVzKTsKIAkJCQlicmVhazsKIAogCQkJY2FzZSBNSURYX0NIVU5LSURfTEFSR0VPRkZTRVRTOgpAQCAtOTAyLDcgKzEwMDQsMTAgQEAKIAkJCQlCVUcoInRyeWluZyB0byB3cml0ZSB1bmtub3duIGNodW5rIGlkICUiUFJJeDMyLAogCQkJCSAgICBjaHVua19pZHNbaV0pOwogCQl9CisKKwkJZGlzcGxheV9wcm9ncmVzcyhwcm9ncmVzcywgaSArIDEpOwogCX0KKwlzdG9wX3Byb2dyZXNzKCZwcm9ncmVzcyk7CiAKIAlpZiAod3JpdHRlbiAhPSBjaHVua19vZmZzZXRzW251bV9jaHVua3NdKQogCQlCVUcoImluY29ycmVjdCBmaW5hbCBvZmZzZXQgJSJQUkl1NjQiICE9ICUiUFJJdTY0LApAQCAtOTE0LDI0ICsxMDE5LDI4IEBACiAKIGNsZWFudXA6CiAJZm9yIChpID0gMDsgaSA8IHBhY2tzLm5yOyBpKyspIHsKLQkJaWYgKHBhY2tzLmxpc3RbaV0pIHsKLQkJCWNsb3NlX3BhY2socGFja3MubGlzdFtpXSk7Ci0JCQlmcmVlKHBhY2tzLmxpc3RbaV0pOworCQlpZiAocGFja3MuaW5mb1tpXS5wKSB7CisJCQljbG9zZV9wYWNrKHBhY2tzLmluZm9baV0ucCk7CisJCQlmcmVlKHBhY2tzLmluZm9baV0ucCk7CiAJCX0KLQkJZnJlZShwYWNrcy5uYW1lc1tpXSk7CisJCWZyZWUocGFja3MuaW5mb1tpXS5wYWNrX25hbWUpOwogCX0KIAotCWZyZWUocGFja3MubGlzdCk7Ci0JZnJlZShwYWNrcy5uYW1lcyk7CisJZnJlZShwYWNrcy5pbmZvKTsKIAlmcmVlKGVudHJpZXMpOwogCWZyZWUocGFja19wZXJtKTsKIAlmcmVlKG1pZHhfbmFtZSk7Ci0JcmV0dXJuIDA7CisJcmV0dXJuIHJlc3VsdDsKK30KKworaW50IHdyaXRlX21pZHhfZmlsZShjb25zdCBjaGFyICpvYmplY3RfZGlyLCB1bnNpZ25lZCBmbGFncykKK3sKKwlyZXR1cm4gd3JpdGVfbWlkeF9pbnRlcm5hbChvYmplY3RfZGlyLCBOVUxMLCBOVUxMLCBmbGFncyk7CiB9CiAKIHZvaWQgY2xlYXJfbWlkeF9maWxlKHN0cnVjdCByZXBvc2l0b3J5ICpyKQogewotCWNoYXIgKm1pZHggPSBnZXRfbWlkeF9maWxlbmFtZShyLT5vYmplY3RzLT5vYmplY3RkaXIpOworCWNoYXIgKm1pZHggPSBnZXRfbWlkeF9maWxlbmFtZShyLT5vYmplY3RzLT5vZGItPnBhdGgpOwogCiAJaWYgKHItPm9iamVjdHMgJiYgci0+b2JqZWN0cy0+bXVsdGlfcGFja19pbmRleCkgewogCQljbG9zZV9taWR4KHItPm9iamVjdHMtPm11bHRpX3BhY2tfaW5kZXgpOwpAQCAtOTU4LDIwICsxMDY3LDUzIEBACiAJdmFfZW5kKGFwKTsKIH0KIAotaW50IHZlcmlmeV9taWR4X2ZpbGUoY29uc3QgY2hhciAqb2JqZWN0X2RpcikKK3N0cnVjdCBwYWlyX3Bvc192c19pZAogeworCXVpbnQzMl90IHBvczsKKwl1aW50MzJfdCBwYWNrX2ludF9pZDsKK307CisKK3N0YXRpYyBpbnQgY29tcGFyZV9wYWlyX3Bvc192c19pZChjb25zdCB2b2lkICpfYSwgY29uc3Qgdm9pZCAqX2IpCit7CisJc3RydWN0IHBhaXJfcG9zX3ZzX2lkICphID0gKHN0cnVjdCBwYWlyX3Bvc192c19pZCAqKV9hOworCXN0cnVjdCBwYWlyX3Bvc192c19pZCAqYiA9IChzdHJ1Y3QgcGFpcl9wb3NfdnNfaWQgKilfYjsKKworCXJldHVybiBiLT5wYWNrX2ludF9pZCAtIGEtPnBhY2tfaW50X2lkOworfQorCisvKgorICogTGltaXQgY2FsbHMgdG8gZGlzcGxheV9wcm9ncmVzcygpIGZvciBwZXJmb3JtYW5jZSByZWFzb25zLgorICogVGhlIGludGVydmFsIGhlcmUgd2FzIGFyYml0cmFyaWx5IGNob3Nlbi4KKyAqLworI2RlZmluZSBTUEFSU0VfUFJPR1JFU1NfSU5URVJWQUwgKDEgPDwgMTIpCisjZGVmaW5lIG1pZHhfZGlzcGxheV9zcGFyc2VfcHJvZ3Jlc3MocHJvZ3Jlc3MsIG4pIFwKKwlkbyB7IFwKKwkJdWludDY0X3QgX24gPSAobik7IFwKKwkJaWYgKChfbiAmIChTUEFSU0VfUFJPR1JFU1NfSU5URVJWQUwgLSAxKSkgPT0gMCkgXAorCQkJZGlzcGxheV9wcm9ncmVzcyhwcm9ncmVzcywgX24pOyBcCisJfSB3aGlsZSAoMCkKKworaW50IHZlcmlmeV9taWR4X2ZpbGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKm9iamVjdF9kaXIsIHVuc2lnbmVkIGZsYWdzKQoreworCXN0cnVjdCBwYWlyX3Bvc192c19pZCAqcGFpcnMgPSBOVUxMOwogCXVpbnQzMl90IGk7Ci0Jc3RydWN0IHByb2dyZXNzICpwcm9ncmVzczsKKwlzdHJ1Y3QgcHJvZ3Jlc3MgKnByb2dyZXNzID0gTlVMTDsKIAlzdHJ1Y3QgbXVsdGlfcGFja19pbmRleCAqbSA9IGxvYWRfbXVsdGlfcGFja19pbmRleChvYmplY3RfZGlyLCAxKTsKIAl2ZXJpZnlfbWlkeF9lcnJvciA9IDA7CiAKIAlpZiAoIW0pCiAJCXJldHVybiAwOwogCisJaWYgKGZsYWdzICYgTUlEWF9QUk9HUkVTUykKKwkJcHJvZ3Jlc3MgPSBzdGFydF9wcm9ncmVzcyhfKCJMb29raW5nIGZvciByZWZlcmVuY2VkIHBhY2tmaWxlcyIpLAorCQkJCQkgIG0tPm51bV9wYWNrcyk7CiAJZm9yIChpID0gMDsgaSA8IG0tPm51bV9wYWNrczsgaSsrKSB7Ci0JCWlmIChwcmVwYXJlX21pZHhfcGFjayhtLCBpKSkKKwkJaWYgKHByZXBhcmVfbWlkeF9wYWNrKHIsIG0sIGkpKQogCQkJbWlkeF9yZXBvcnQoImZhaWxlZCB0byBsb2FkIHBhY2sgaW4gcG9zaXRpb24gJWQiLCBpKTsKKworCQlkaXNwbGF5X3Byb2dyZXNzKHByb2dyZXNzLCBpICsgMSk7CiAJfQorCXN0b3BfcHJvZ3Jlc3MoJnByb2dyZXNzKTsKIAogCWZvciAoaSA9IDA7IGkgPCAyNTU7IGkrKykgewogCQl1aW50MzJfdCBvaWRfZmFub3V0MSA9IG50b2hsKG0tPmNodW5rX29pZF9mYW5vdXRbaV0pOwpAQCAtOTgyLDYgKzExMjQsOSBAQAogCQkJCSAgICBpLCBvaWRfZmFub3V0MSwgb2lkX2Zhbm91dDIsIGkgKyAxKTsKIAl9CiAKKwlpZiAoZmxhZ3MgJiBNSURYX1BST0dSRVNTKQorCQlwcm9ncmVzcyA9IHN0YXJ0X3NwYXJzZV9wcm9ncmVzcyhfKCJWZXJpZnlpbmcgT0lEIG9yZGVyIGluIG11bHRpLXBhY2staW5kZXgiKSwKKwkJCQkJCSBtLT5udW1fb2JqZWN0cyAtIDEpOwogCWZvciAoaSA9IDA7IGkgPCBtLT5udW1fb2JqZWN0cyAtIDE7IGkrKykgewogCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDEsIG9pZDI7CiAKQEAgLTk5MSwxOCArMTEzNiw0OSBAQAogCQlpZiAob2lkY21wKCZvaWQxLCAmb2lkMikgPj0gMCkKIAkJCW1pZHhfcmVwb3J0KF8oIm9pZCBsb29rdXAgb3V0IG9mIG9yZGVyOiBvaWRbJWRdID0gJXMgPj0gJXMgPSBvaWRbJWRdIiksCiAJCQkJICAgIGksIG9pZF90b19oZXgoJm9pZDEpLCBvaWRfdG9faGV4KCZvaWQyKSwgaSArIDEpOworCisJCW1pZHhfZGlzcGxheV9zcGFyc2VfcHJvZ3Jlc3MocHJvZ3Jlc3MsIGkgKyAxKTsKKwl9CisJc3RvcF9wcm9ncmVzcygmcHJvZ3Jlc3MpOworCisJLyoKKwkgKiBDcmVhdGUgYW4gYXJyYXkgbWFwcGluZyBlYWNoIG9iamVjdCB0byBpdHMgcGFja2ZpbGUgaWQuICBTb3J0IGl0CisJICogdG8gZ3JvdXAgdGhlIG9iamVjdHMgYnkgcGFja2ZpbGUuICBVc2UgdGhpcyBwZXJtdXRhdGlvbiB0byB2aXNpdAorCSAqIGVhY2ggb2YgdGhlIG9iamVjdHMgYW5kIG9ubHkgcmVxdWlyZSAxIHBhY2tmaWxlIHRvIGJlIG9wZW4gYXQgYQorCSAqIHRpbWUuCisJICovCisJQUxMT0NfQVJSQVkocGFpcnMsIG0tPm51bV9vYmplY3RzKTsKKwlmb3IgKGkgPSAwOyBpIDwgbS0+bnVtX29iamVjdHM7IGkrKykgeworCQlwYWlyc1tpXS5wb3MgPSBpOworCQlwYWlyc1tpXS5wYWNrX2ludF9pZCA9IG50aF9taWR4ZWRfcGFja19pbnRfaWQobSwgaSk7CiAJfQogCi0JcHJvZ3Jlc3MgPSBzdGFydF9wcm9ncmVzcyhfKCJWZXJpZnlpbmcgb2JqZWN0IG9mZnNldHMiKSwgbS0+bnVtX29iamVjdHMpOworCWlmIChmbGFncyAmIE1JRFhfUFJPR1JFU1MpCisJCXByb2dyZXNzID0gc3RhcnRfc3BhcnNlX3Byb2dyZXNzKF8oIlNvcnRpbmcgb2JqZWN0cyBieSBwYWNrZmlsZSIpLAorCQkJCQkJIG0tPm51bV9vYmplY3RzKTsKKwlkaXNwbGF5X3Byb2dyZXNzKHByb2dyZXNzLCAwKTsgLyogVE9ETzogTWVhc3VyZSBRU09SVCgpIHByb2dyZXNzICovCisJUVNPUlQocGFpcnMsIG0tPm51bV9vYmplY3RzLCBjb21wYXJlX3BhaXJfcG9zX3ZzX2lkKTsKKwlzdG9wX3Byb2dyZXNzKCZwcm9ncmVzcyk7CisKKwlpZiAoZmxhZ3MgJiBNSURYX1BST0dSRVNTKQorCQlwcm9ncmVzcyA9IHN0YXJ0X3NwYXJzZV9wcm9ncmVzcyhfKCJWZXJpZnlpbmcgb2JqZWN0IG9mZnNldHMiKSwgbS0+bnVtX29iamVjdHMpOwogCWZvciAoaSA9IDA7IGkgPCBtLT5udW1fb2JqZWN0czsgaSsrKSB7CiAJCXN0cnVjdCBvYmplY3RfaWQgb2lkOwogCQlzdHJ1Y3QgcGFja19lbnRyeSBlOwogCQlvZmZfdCBtX29mZnNldCwgcF9vZmZzZXQ7CiAKLQkJbnRoX21pZHhlZF9vYmplY3Rfb2lkKCZvaWQsIG0sIGkpOwotCQlpZiAoIWZpbGxfbWlkeF9lbnRyeSgmb2lkLCAmZSwgbSkpIHsKKwkJaWYgKGkgPiAwICYmIHBhaXJzW2ktMV0ucGFja19pbnRfaWQgIT0gcGFpcnNbaV0ucGFja19pbnRfaWQgJiYKKwkJICAgIG0tPnBhY2tzW3BhaXJzW2ktMV0ucGFja19pbnRfaWRdKQorCQl7CisJCQljbG9zZV9wYWNrX2ZkKG0tPnBhY2tzW3BhaXJzW2ktMV0ucGFja19pbnRfaWRdKTsKKwkJCWNsb3NlX3BhY2tfaW5kZXgobS0+cGFja3NbcGFpcnNbaS0xXS5wYWNrX2ludF9pZF0pOworCQl9CisKKwkJbnRoX21pZHhlZF9vYmplY3Rfb2lkKCZvaWQsIG0sIHBhaXJzW2ldLnBvcyk7CisKKwkJaWYgKCFmaWxsX21pZHhfZW50cnkociwgJm9pZCwgJmUsIG0pKSB7CiAJCQltaWR4X3JlcG9ydChfKCJmYWlsZWQgdG8gbG9hZCBwYWNrIGVudHJ5IGZvciBvaWRbJWRdID0gJXMiKSwKLQkJCQkgICAgaSwgb2lkX3RvX2hleCgmb2lkKSk7CisJCQkJICAgIHBhaXJzW2ldLnBvcywgb2lkX3RvX2hleCgmb2lkKSk7CiAJCQljb250aW51ZTsKIAkJfQogCkBAIC0xMDE3LDExICsxMTkzLDIyOCBAQAogCiAJCWlmIChtX29mZnNldCAhPSBwX29mZnNldCkKIAkJCW1pZHhfcmVwb3J0KF8oImluY29ycmVjdCBvYmplY3Qgb2Zmc2V0IGZvciBvaWRbJWRdID0gJXM6ICUiUFJJeDY0IiAhPSAlIlBSSXg2NCksCi0JCQkJICAgIGksIG9pZF90b19oZXgoJm9pZCksIG1fb2Zmc2V0LCBwX29mZnNldCk7CisJCQkJICAgIHBhaXJzW2ldLnBvcywgb2lkX3RvX2hleCgmb2lkKSwgbV9vZmZzZXQsIHBfb2Zmc2V0KTsKIAorCQltaWR4X2Rpc3BsYXlfc3BhcnNlX3Byb2dyZXNzKHByb2dyZXNzLCBpICsgMSk7CisJfQorCXN0b3BfcHJvZ3Jlc3MoJnByb2dyZXNzKTsKKworCWZyZWUocGFpcnMpOworCisJcmV0dXJuIHZlcmlmeV9taWR4X2Vycm9yOworfQorCitpbnQgZXhwaXJlX21pZHhfcGFja3Moc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKm9iamVjdF9kaXIsIHVuc2lnbmVkIGZsYWdzKQoreworCXVpbnQzMl90IGksICpjb3VudCwgcmVzdWx0ID0gMDsKKwlzdHJ1Y3Qgc3RyaW5nX2xpc3QgcGFja3NfdG9fZHJvcCA9IFNUUklOR19MSVNUX0lOSVRfRFVQOworCXN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptID0gbG9hZF9tdWx0aV9wYWNrX2luZGV4KG9iamVjdF9kaXIsIDEpOworCXN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MgPSBOVUxMOworCisJaWYgKCFtKQorCQlyZXR1cm4gMDsKKworCWNvdW50ID0geGNhbGxvYyhtLT5udW1fcGFja3MsIHNpemVvZih1aW50MzJfdCkpOworCisJaWYgKGZsYWdzICYgTUlEWF9QUk9HUkVTUykKKwkJcHJvZ3Jlc3MgPSBzdGFydF9wcm9ncmVzcyhfKCJDb3VudGluZyByZWZlcmVuY2VkIG9iamVjdHMiKSwKKwkJCQkJICBtLT5udW1fb2JqZWN0cyk7CisJZm9yIChpID0gMDsgaSA8IG0tPm51bV9vYmplY3RzOyBpKyspIHsKKwkJaW50IHBhY2tfaW50X2lkID0gbnRoX21pZHhlZF9wYWNrX2ludF9pZChtLCBpKTsKKwkJY291bnRbcGFja19pbnRfaWRdKys7CiAJCWRpc3BsYXlfcHJvZ3Jlc3MocHJvZ3Jlc3MsIGkgKyAxKTsKIAl9CiAJc3RvcF9wcm9ncmVzcygmcHJvZ3Jlc3MpOwogCi0JcmV0dXJuIHZlcmlmeV9taWR4X2Vycm9yOworCWlmIChmbGFncyAmIE1JRFhfUFJPR1JFU1MpCisJCXByb2dyZXNzID0gc3RhcnRfcHJvZ3Jlc3MoXygiRmluZGluZyBhbmQgZGVsZXRpbmcgdW5yZWZlcmVuY2VkIHBhY2tmaWxlcyIpLAorCQkJCQkgIG0tPm51bV9wYWNrcyk7CisJZm9yIChpID0gMDsgaSA8IG0tPm51bV9wYWNrczsgaSsrKSB7CisJCWNoYXIgKnBhY2tfbmFtZTsKKwkJZGlzcGxheV9wcm9ncmVzcyhwcm9ncmVzcywgaSArIDEpOworCisJCWlmIChjb3VudFtpXSkKKwkJCWNvbnRpbnVlOworCisJCWlmIChwcmVwYXJlX21pZHhfcGFjayhyLCBtLCBpKSkKKwkJCWNvbnRpbnVlOworCisJCWlmIChtLT5wYWNrc1tpXS0+cGFja19rZWVwKQorCQkJY29udGludWU7CisKKwkJcGFja19uYW1lID0geHN0cmR1cChtLT5wYWNrc1tpXS0+cGFja19uYW1lKTsKKwkJY2xvc2VfcGFjayhtLT5wYWNrc1tpXSk7CisKKwkJc3RyaW5nX2xpc3RfaW5zZXJ0KCZwYWNrc190b19kcm9wLCBtLT5wYWNrX25hbWVzW2ldKTsKKwkJdW5saW5rX3BhY2tfcGF0aChwYWNrX25hbWUsIDApOworCQlmcmVlKHBhY2tfbmFtZSk7CisJfQorCXN0b3BfcHJvZ3Jlc3MoJnByb2dyZXNzKTsKKworCWZyZWUoY291bnQpOworCisJaWYgKHBhY2tzX3RvX2Ryb3AubnIpCisJCXJlc3VsdCA9IHdyaXRlX21pZHhfaW50ZXJuYWwob2JqZWN0X2RpciwgbSwgJnBhY2tzX3RvX2Ryb3AsIGZsYWdzKTsKKworCXN0cmluZ19saXN0X2NsZWFyKCZwYWNrc190b19kcm9wLCAwKTsKKwlyZXR1cm4gcmVzdWx0OworfQorCitzdHJ1Y3QgcmVwYWNrX2luZm8geworCXRpbWVzdGFtcF90IG10aW1lOworCXVpbnQzMl90IHJlZmVyZW5jZWRfb2JqZWN0czsKKwl1aW50MzJfdCBwYWNrX2ludF9pZDsKK307CisKK3N0YXRpYyBpbnQgY29tcGFyZV9ieV9tdGltZShjb25zdCB2b2lkICphXywgY29uc3Qgdm9pZCAqYl8pCit7CisJY29uc3Qgc3RydWN0IHJlcGFja19pbmZvICphLCAqYjsKKworCWEgPSAoY29uc3Qgc3RydWN0IHJlcGFja19pbmZvICopYV87CisJYiA9IChjb25zdCBzdHJ1Y3QgcmVwYWNrX2luZm8gKiliXzsKKworCWlmIChhLT5tdGltZSA8IGItPm10aW1lKQorCQlyZXR1cm4gLTE7CisJaWYgKGEtPm10aW1lID4gYi0+bXRpbWUpCisJCXJldHVybiAxOworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGZpbGxfaW5jbHVkZWRfcGFja3NfYWxsKHN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptLAorCQkJCSAgIHVuc2lnbmVkIGNoYXIgKmluY2x1ZGVfcGFjaykKK3sKKwl1aW50MzJfdCBpOworCisJZm9yIChpID0gMDsgaSA8IG0tPm51bV9wYWNrczsgaSsrKQorCQlpbmNsdWRlX3BhY2tbaV0gPSAxOworCisJcmV0dXJuIG0tPm51bV9wYWNrcyA8IDI7Cit9CisKK3N0YXRpYyBpbnQgZmlsbF9pbmNsdWRlZF9wYWNrc19iYXRjaChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgICAgIHN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptLAorCQkJCSAgICAgdW5zaWduZWQgY2hhciAqaW5jbHVkZV9wYWNrLAorCQkJCSAgICAgc2l6ZV90IGJhdGNoX3NpemUpCit7CisJdWludDMyX3QgaSwgcGFja3NfdG9fcmVwYWNrOworCXNpemVfdCB0b3RhbF9zaXplOworCXN0cnVjdCByZXBhY2tfaW5mbyAqcGFja19pbmZvID0geGNhbGxvYyhtLT5udW1fcGFja3MsIHNpemVvZihzdHJ1Y3QgcmVwYWNrX2luZm8pKTsKKworCWZvciAoaSA9IDA7IGkgPCBtLT5udW1fcGFja3M7IGkrKykgeworCQlwYWNrX2luZm9baV0ucGFja19pbnRfaWQgPSBpOworCisJCWlmIChwcmVwYXJlX21pZHhfcGFjayhyLCBtLCBpKSkKKwkJCWNvbnRpbnVlOworCisJCXBhY2tfaW5mb1tpXS5tdGltZSA9IG0tPnBhY2tzW2ldLT5tdGltZTsKKwl9CisKKwlmb3IgKGkgPSAwOyBiYXRjaF9zaXplICYmIGkgPCBtLT5udW1fb2JqZWN0czsgaSsrKSB7CisJCXVpbnQzMl90IHBhY2tfaW50X2lkID0gbnRoX21pZHhlZF9wYWNrX2ludF9pZChtLCBpKTsKKwkJcGFja19pbmZvW3BhY2tfaW50X2lkXS5yZWZlcmVuY2VkX29iamVjdHMrKzsKKwl9CisKKwlRU09SVChwYWNrX2luZm8sIG0tPm51bV9wYWNrcywgY29tcGFyZV9ieV9tdGltZSk7CisKKwl0b3RhbF9zaXplID0gMDsKKwlwYWNrc190b19yZXBhY2sgPSAwOworCWZvciAoaSA9IDA7IHRvdGFsX3NpemUgPCBiYXRjaF9zaXplICYmIGkgPCBtLT5udW1fcGFja3M7IGkrKykgeworCQlpbnQgcGFja19pbnRfaWQgPSBwYWNrX2luZm9baV0ucGFja19pbnRfaWQ7CisJCXN0cnVjdCBwYWNrZWRfZ2l0ICpwID0gbS0+cGFja3NbcGFja19pbnRfaWRdOworCQlzaXplX3QgZXhwZWN0ZWRfc2l6ZTsKKworCQlpZiAoIXApCisJCQljb250aW51ZTsKKwkJaWYgKG9wZW5fcGFja19pbmRleChwKSB8fCAhcC0+bnVtX29iamVjdHMpCisJCQljb250aW51ZTsKKworCQlleHBlY3RlZF9zaXplID0gKHNpemVfdCkocC0+cGFja19zaXplCisJCQkJCSAqIHBhY2tfaW5mb1tpXS5yZWZlcmVuY2VkX29iamVjdHMpOworCQlleHBlY3RlZF9zaXplIC89IHAtPm51bV9vYmplY3RzOworCisJCWlmIChleHBlY3RlZF9zaXplID49IGJhdGNoX3NpemUpCisJCQljb250aW51ZTsKKworCQlwYWNrc190b19yZXBhY2srKzsKKwkJdG90YWxfc2l6ZSArPSBleHBlY3RlZF9zaXplOworCQlpbmNsdWRlX3BhY2tbcGFja19pbnRfaWRdID0gMTsKKwl9CisKKwlmcmVlKHBhY2tfaW5mbyk7CisKKwlpZiAodG90YWxfc2l6ZSA8IGJhdGNoX3NpemUgfHwgcGFja3NfdG9fcmVwYWNrIDwgMikKKwkJcmV0dXJuIDE7CisKKwlyZXR1cm4gMDsKK30KKworaW50IG1pZHhfcmVwYWNrKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpvYmplY3RfZGlyLCBzaXplX3QgYmF0Y2hfc2l6ZSwgdW5zaWduZWQgZmxhZ3MpCit7CisJaW50IHJlc3VsdCA9IDA7CisJdWludDMyX3QgaTsKKwl1bnNpZ25lZCBjaGFyICppbmNsdWRlX3BhY2s7CisJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY21kID0gQ0hJTERfUFJPQ0VTU19JTklUOworCXN0cnVjdCBzdHJidWYgYmFzZV9uYW1lID0gU1RSQlVGX0lOSVQ7CisJc3RydWN0IG11bHRpX3BhY2tfaW5kZXggKm0gPSBsb2FkX211bHRpX3BhY2tfaW5kZXgob2JqZWN0X2RpciwgMSk7CisKKwlpZiAoIW0pCisJCXJldHVybiAwOworCisJaW5jbHVkZV9wYWNrID0geGNhbGxvYyhtLT5udW1fcGFja3MsIHNpemVvZih1bnNpZ25lZCBjaGFyKSk7CisKKwlpZiAoYmF0Y2hfc2l6ZSkgeworCQlpZiAoZmlsbF9pbmNsdWRlZF9wYWNrc19iYXRjaChyLCBtLCBpbmNsdWRlX3BhY2ssIGJhdGNoX3NpemUpKQorCQkJZ290byBjbGVhbnVwOworCX0gZWxzZSBpZiAoZmlsbF9pbmNsdWRlZF9wYWNrc19hbGwobSwgaW5jbHVkZV9wYWNrKSkKKwkJZ290byBjbGVhbnVwOworCisJYXJndl9hcnJheV9wdXNoKCZjbWQuYXJncywgInBhY2stb2JqZWN0cyIpOworCisJc3RyYnVmX2FkZHN0cigmYmFzZV9uYW1lLCBvYmplY3RfZGlyKTsKKwlzdHJidWZfYWRkc3RyKCZiYXNlX25hbWUsICIvcGFjay9wYWNrIik7CisJYXJndl9hcnJheV9wdXNoKCZjbWQuYXJncywgYmFzZV9uYW1lLmJ1Zik7CisKKwlpZiAoZmxhZ3MgJiBNSURYX1BST0dSRVNTKQorCQlhcmd2X2FycmF5X3B1c2goJmNtZC5hcmdzLCAiLS1wcm9ncmVzcyIpOworCWVsc2UKKwkJYXJndl9hcnJheV9wdXNoKCZjbWQuYXJncywgIi1xIik7CisKKwlzdHJidWZfcmVsZWFzZSgmYmFzZV9uYW1lKTsKKworCWNtZC5naXRfY21kID0gMTsKKwljbWQuaW4gPSBjbWQub3V0ID0gLTE7CisKKwlpZiAoc3RhcnRfY29tbWFuZCgmY21kKSkgeworCQllcnJvcihfKCJjb3VsZCBub3Qgc3RhcnQgcGFjay1vYmplY3RzIikpOworCQlyZXN1bHQgPSAxOworCQlnb3RvIGNsZWFudXA7CisJfQorCisJZm9yIChpID0gMDsgaSA8IG0tPm51bV9vYmplY3RzOyBpKyspIHsKKwkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CisJCXVpbnQzMl90IHBhY2tfaW50X2lkID0gbnRoX21pZHhlZF9wYWNrX2ludF9pZChtLCBpKTsKKworCQlpZiAoIWluY2x1ZGVfcGFja1twYWNrX2ludF9pZF0pCisJCQljb250aW51ZTsKKworCQludGhfbWlkeGVkX29iamVjdF9vaWQoJm9pZCwgbSwgaSk7CisJCXh3cml0ZShjbWQuaW4sIG9pZF90b19oZXgoJm9pZCksIHRoZV9oYXNoX2FsZ28tPmhleHN6KTsKKwkJeHdyaXRlKGNtZC5pbiwgIlxuIiwgMSk7CisJfQorCWNsb3NlKGNtZC5pbik7CisKKwlpZiAoZmluaXNoX2NvbW1hbmQoJmNtZCkpIHsKKwkJZXJyb3IoXygiY291bGQgbm90IGZpbmlzaCBwYWNrLW9iamVjdHMiKSk7CisJCXJlc3VsdCA9IDE7CisJCWdvdG8gY2xlYW51cDsKKwl9CisKKwlyZXN1bHQgPSB3cml0ZV9taWR4X2ludGVybmFsKG9iamVjdF9kaXIsIG0sIE5VTEwsIGZsYWdzKTsKKwltID0gTlVMTDsKKworY2xlYW51cDoKKwlpZiAobSkKKwkJY2xvc2VfbWlkeChtKTsKKwlmcmVlKGluY2x1ZGVfcGFjayk7CisJcmV0dXJuIHJlc3VsdDsKIH0KZGlmZiAtLWdpdCBhL21pZHguaCBiL21pZHguaAppbmRleCA3NzRmNjUyLi5lNmZhMzU2IDEwMDY0NAotLS0gYS9taWR4LmgKKysrIGIvbWlkeC5oCkBAIC01LDYgKzUsNyBAQAogCiBzdHJ1Y3Qgb2JqZWN0X2lkOwogc3RydWN0IHBhY2tfZW50cnk7CitzdHJ1Y3QgcmVwb3NpdG9yeTsKIAogI2RlZmluZSBHSVRfVEVTVF9NVUxUSV9QQUNLX0lOREVYICJHSVRfVEVTVF9NVUxUSV9QQUNLX0lOREVYIgogCkBAIC0zNiwxOSArMzcsMjMgQEAKIAljaGFyIG9iamVjdF9kaXJbRkxFWF9BUlJBWV07CiB9OwogCisjZGVmaW5lIE1JRFhfUFJPR1JFU1MgICAgICgxIDw8IDApCisKIHN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICpsb2FkX211bHRpX3BhY2tfaW5kZXgoY29uc3QgY2hhciAqb2JqZWN0X2RpciwgaW50IGxvY2FsKTsKLWludCBwcmVwYXJlX21pZHhfcGFjayhzdHJ1Y3QgbXVsdGlfcGFja19pbmRleCAqbSwgdWludDMyX3QgcGFja19pbnRfaWQpOworaW50IHByZXBhcmVfbWlkeF9wYWNrKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgbXVsdGlfcGFja19pbmRleCAqbSwgdWludDMyX3QgcGFja19pbnRfaWQpOwogaW50IGJzZWFyY2hfbWlkeChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptLCB1aW50MzJfdCAqcmVzdWx0KTsKIHN0cnVjdCBvYmplY3RfaWQgKm50aF9taWR4ZWRfb2JqZWN0X29pZChzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCiAJCQkJCXN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptLAogCQkJCQl1aW50MzJfdCBuKTsKLWludCBmaWxsX21pZHhfZW50cnkoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBzdHJ1Y3QgcGFja19lbnRyeSAqZSwgc3RydWN0IG11bHRpX3BhY2tfaW5kZXggKm0pOwotaW50IG1pZHhfY29udGFpbnNfcGFjayhzdHJ1Y3QgbXVsdGlfcGFja19pbmRleCAqbSwgY29uc3QgY2hhciAqaWR4X25hbWUpOworaW50IGZpbGxfbWlkeF9lbnRyeShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBzdHJ1Y3QgcGFja19lbnRyeSAqZSwgc3RydWN0IG11bHRpX3BhY2tfaW5kZXggKm0pOworaW50IG1pZHhfY29udGFpbnNfcGFjayhzdHJ1Y3QgbXVsdGlfcGFja19pbmRleCAqbSwgY29uc3QgY2hhciAqaWR4X29yX3BhY2tfbmFtZSk7CiBpbnQgcHJlcGFyZV9tdWx0aV9wYWNrX2luZGV4X29uZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqb2JqZWN0X2RpciwgaW50IGxvY2FsKTsKIAotaW50IHdyaXRlX21pZHhfZmlsZShjb25zdCBjaGFyICpvYmplY3RfZGlyKTsKK2ludCB3cml0ZV9taWR4X2ZpbGUoY29uc3QgY2hhciAqb2JqZWN0X2RpciwgdW5zaWduZWQgZmxhZ3MpOwogdm9pZCBjbGVhcl9taWR4X2ZpbGUoc3RydWN0IHJlcG9zaXRvcnkgKnIpOwotaW50IHZlcmlmeV9taWR4X2ZpbGUoY29uc3QgY2hhciAqb2JqZWN0X2Rpcik7CitpbnQgdmVyaWZ5X21pZHhfZmlsZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqb2JqZWN0X2RpciwgdW5zaWduZWQgZmxhZ3MpOworaW50IGV4cGlyZV9taWR4X3BhY2tzKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpvYmplY3RfZGlyLCB1bnNpZ25lZCBmbGFncyk7CitpbnQgbWlkeF9yZXBhY2soc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKm9iamVjdF9kaXIsIHNpemVfdCBiYXRjaF9zaXplLCB1bnNpZ25lZCBmbGFncyk7CiAKIHZvaWQgY2xvc2VfbWlkeChzdHJ1Y3QgbXVsdGlfcGFja19pbmRleCAqbSk7CiAKZGlmZiAtLWdpdCBhL25hbWUtaGFzaC5jIGIvbmFtZS1oYXNoLmMKaW5kZXggNjIzY2E2OS4uZmI1MjZhMyAxMDA2NDQKLS0tIGEvbmFtZS1oYXNoLmMKKysrIGIvbmFtZS1oYXNoLmMKQEAgLTUsNyArNSw2IEBACiAgKgogICogQ29weXJpZ2h0IChDKSAyMDA4IExpbnVzIFRvcnZhbGRzCiAgKi8KLSNkZWZpbmUgTk9fVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJ0aHJlYWQtdXRpbHMuaCIKIApAQCAtMTgsMTQgKzE3LDE2IEBACiB9OwogCiBzdGF0aWMgaW50IGRpcl9lbnRyeV9jbXAoY29uc3Qgdm9pZCAqdW51c2VkX2NtcF9kYXRhLAotCQkJIGNvbnN0IHZvaWQgKmVudHJ5LAotCQkJIGNvbnN0IHZvaWQgKmVudHJ5X29yX2tleSwKKwkJCSBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJCSBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAogCQkJIGNvbnN0IHZvaWQgKmtleWRhdGEpCiB7Ci0JY29uc3Qgc3RydWN0IGRpcl9lbnRyeSAqZTEgPSBlbnRyeTsKLQljb25zdCBzdHJ1Y3QgZGlyX2VudHJ5ICplMiA9IGVudHJ5X29yX2tleTsKKwljb25zdCBzdHJ1Y3QgZGlyX2VudHJ5ICplMSwgKmUyOwogCWNvbnN0IGNoYXIgKm5hbWUgPSBrZXlkYXRhOwogCisJZTEgPSBjb250YWluZXJfb2YoZXB0ciwgY29uc3Qgc3RydWN0IGRpcl9lbnRyeSwgZW50KTsKKwllMiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIGNvbnN0IHN0cnVjdCBkaXJfZW50cnksIGVudCk7CisKIAlyZXR1cm4gZTEtPm5hbWVsZW4gIT0gZTItPm5hbWVsZW4gfHwgc3RybmNhc2VjbXAoZTEtPm5hbWUsCiAJCQluYW1lID8gbmFtZSA6IGUyLT5uYW1lLCBlMS0+bmFtZWxlbik7CiB9CkBAIC0zNCw5ICszNSw5IEBACiAJCWNvbnN0IGNoYXIgKm5hbWUsIHVuc2lnbmVkIGludCBuYW1lbGVuLCB1bnNpZ25lZCBpbnQgaGFzaCkKIHsKIAlzdHJ1Y3QgZGlyX2VudHJ5IGtleTsKLQloYXNobWFwX2VudHJ5X2luaXQoJmtleSwgaGFzaCk7CisJaGFzaG1hcF9lbnRyeV9pbml0KCZrZXkuZW50LCBoYXNoKTsKIAlrZXkubmFtZWxlbiA9IG5hbWVsZW47Ci0JcmV0dXJuIGhhc2htYXBfZ2V0KCZpc3RhdGUtPmRpcl9oYXNoLCAma2V5LCBuYW1lKTsKKwlyZXR1cm4gaGFzaG1hcF9nZXRfZW50cnkoJmlzdGF0ZS0+ZGlyX2hhc2gsICZrZXksIGVudCwgbmFtZSk7CiB9CiAKIHN0YXRpYyBzdHJ1Y3QgZGlyX2VudHJ5ICpmaW5kX2Rpcl9lbnRyeShzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKQEAgLTY5LDkgKzcwLDkgQEAKIAlpZiAoIWRpcikgewogCQkvKiBub3QgZm91bmQsIGNyZWF0ZSBpdCBhbmQgYWRkIHRvIGhhc2ggdGFibGUgKi8KIAkJRkxFWF9BTExPQ19NRU0oZGlyLCBuYW1lLCBjZS0+bmFtZSwgbmFtZWxlbik7Ci0JCWhhc2htYXBfZW50cnlfaW5pdChkaXIsIG1lbWloYXNoKGNlLT5uYW1lLCBuYW1lbGVuKSk7CisJCWhhc2htYXBfZW50cnlfaW5pdCgmZGlyLT5lbnQsIG1lbWloYXNoKGNlLT5uYW1lLCBuYW1lbGVuKSk7CiAJCWRpci0+bmFtZWxlbiA9IG5hbWVsZW47Ci0JCWhhc2htYXBfYWRkKCZpc3RhdGUtPmRpcl9oYXNoLCBkaXIpOworCQloYXNobWFwX2FkZCgmaXN0YXRlLT5kaXJfaGFzaCwgJmRpci0+ZW50KTsKIAogCQkvKiByZWN1cnNpdmVseSBhZGQgbWlzc2luZyBwYXJlbnQgZGlyZWN0b3JpZXMgKi8KIAkJZGlyLT5wYXJlbnQgPSBoYXNoX2Rpcl9lbnRyeShpc3RhdGUsIGNlLCBuYW1lbGVuKTsKQEAgLTk2LDcgKzk3LDcgQEAKIAlzdHJ1Y3QgZGlyX2VudHJ5ICpkaXIgPSBoYXNoX2Rpcl9lbnRyeShpc3RhdGUsIGNlLCBjZV9uYW1lbGVuKGNlKSk7CiAJd2hpbGUgKGRpciAmJiAhKC0tZGlyLT5ucikpIHsKIAkJc3RydWN0IGRpcl9lbnRyeSAqcGFyZW50ID0gZGlyLT5wYXJlbnQ7Ci0JCWhhc2htYXBfcmVtb3ZlKCZpc3RhdGUtPmRpcl9oYXNoLCBkaXIsIE5VTEwpOworCQloYXNobWFwX3JlbW92ZSgmaXN0YXRlLT5kaXJfaGFzaCwgJmRpci0+ZW50LCBOVUxMKTsKIAkJZnJlZShkaXIpOwogCQlkaXIgPSBwYXJlbnQ7CiAJfQpAQCAtMTA3LDIwICsxMDgsMjMgQEAKIAlpZiAoY2UtPmNlX2ZsYWdzICYgQ0VfSEFTSEVEKQogCQlyZXR1cm47CiAJY2UtPmNlX2ZsYWdzIHw9IENFX0hBU0hFRDsKLQloYXNobWFwX2VudHJ5X2luaXQoY2UsIG1lbWloYXNoKGNlLT5uYW1lLCBjZV9uYW1lbGVuKGNlKSkpOwotCWhhc2htYXBfYWRkKCZpc3RhdGUtPm5hbWVfaGFzaCwgY2UpOworCWhhc2htYXBfZW50cnlfaW5pdCgmY2UtPmVudCwgbWVtaWhhc2goY2UtPm5hbWUsIGNlX25hbWVsZW4oY2UpKSk7CisJaGFzaG1hcF9hZGQoJmlzdGF0ZS0+bmFtZV9oYXNoLCAmY2UtPmVudCk7CiAKIAlpZiAoaWdub3JlX2Nhc2UpCiAJCWFkZF9kaXJfZW50cnkoaXN0YXRlLCBjZSk7CiB9CiAKIHN0YXRpYyBpbnQgY2FjaGVfZW50cnlfY21wKGNvbnN0IHZvaWQgKnVudXNlZF9jbXBfZGF0YSwKLQkJCSAgIGNvbnN0IHZvaWQgKmVudHJ5LAotCQkJICAgY29uc3Qgdm9pZCAqZW50cnlfb3Jfa2V5LAorCQkJICAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmVwdHIsCisJCQkgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAogCQkJICAgY29uc3Qgdm9pZCAqcmVtb3ZlKQogewotCWNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UxID0gZW50cnk7Ci0JY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICpjZTIgPSBlbnRyeV9vcl9rZXk7CisJY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICpjZTEsICpjZTI7CisKKwljZTEgPSBjb250YWluZXJfb2YoZXB0ciwgY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5LCBlbnQpOworCWNlMiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSwgZW50KTsKKwogCS8qCiAJICogRm9yIHJlbW92ZV9uYW1lX2hhc2gsIGZpbmQgdGhlIGV4YWN0IGVudHJ5IChwb2ludGVyIGVxdWFsaXR5KTsgZm9yCiAJICogaW5kZXhfZmlsZV9leGlzdHMsIGZpbmQgYWxsIGVudHJpZXMgd2l0aCBtYXRjaGluZyBoYXNoIGNvZGUgYW5kCkBAIC0xMzQsNyArMTM4LDcgQEAKIAogLyoKICAqIFNldCBhIG1pbmltdW0gbnVtYmVyIG9mIGNhY2hlX2VudHJpZXMgdGhhdCB3ZSB3aWxsIGhhbmRsZSBwZXIKLSAqIHRocmVhZCBhbmQgdXNlIHRoYXQgdG8gZGVjaWRlIGhvdyBtYW55IHRocmVhZHMgdG8gcnVuICh1cHRvCisgKiB0aHJlYWQgYW5kIHVzZSB0aGF0IHRvIGRlY2lkZSBob3cgbWFueSB0aHJlYWRzIHRvIHJ1biAodXAgdG8KICAqIHRoZSBudW1iZXIgb24gdGhlIHN5c3RlbSkuCiAgKgogICogRm9yIGd1aWRhbmNlIHNldHRpbmcgdGhlIGxvd2VyIHBlci10aHJlYWQgYm91bmQsIHNlZToKQEAgLTIxNCw3ICsyMTgsNyBAQAogICogSG93ZXZlciwgdGhlIGhhc2htYXAgaXMgZ29pbmcgdG8gcHV0IGl0ZW1zIGludG8gYnVja2V0CiAgKiBjaGFpbnMgYmFzZWQgb24gdGhlaXIgaGFzaCB2YWx1ZXMuICBVc2UgdGhhdCB0byBjcmVhdGUgbgogICogbXV0ZXhlcyBhbmQgbG9jayBvbiBtdXRleFtidWNrZXQoaGFzaCkgJSBuXS4gIFRoaXMgd2lsbAotICogZGVjcmVhc2UgdGhlIGNvbGxpc2lvbiByYXRlIGJ5IChob3BlZnVsbHkpIGJ5IGEgZmFjdG9yIG9mIG4uCisgKiBkZWNyZWFzZSB0aGUgY29sbGlzaW9uIHJhdGUgYnkgKGhvcGVmdWxseSkgYSBmYWN0b3Igb2Ygbi4KICAqLwogc3RhdGljIHZvaWQgaW5pdF9kaXJfbXV0ZXgodm9pZCkKIHsKQEAgLTI4MSwxMCArMjg1LDEwIEBACiAJZGlyID0gZmluZF9kaXJfZW50cnlfX2hhc2goaXN0YXRlLCBwcmVmaXgtPmJ1ZiwgcHJlZml4LT5sZW4sIGhhc2gpOwogCWlmICghZGlyKSB7CiAJCUZMRVhfQUxMT0NfTUVNKGRpciwgbmFtZSwgcHJlZml4LT5idWYsIHByZWZpeC0+bGVuKTsKLQkJaGFzaG1hcF9lbnRyeV9pbml0KGRpciwgaGFzaCk7CisJCWhhc2htYXBfZW50cnlfaW5pdCgmZGlyLT5lbnQsIGhhc2gpOwogCQlkaXItPm5hbWVsZW4gPSBwcmVmaXgtPmxlbjsKIAkJZGlyLT5wYXJlbnQgPSBwYXJlbnQ7Ci0JCWhhc2htYXBfYWRkKCZpc3RhdGUtPmRpcl9oYXNoLCBkaXIpOworCQloYXNobWFwX2FkZCgmaXN0YXRlLT5kaXJfaGFzaCwgJmRpci0+ZW50KTsKIAogCQlpZiAocGFyZW50KSB7CiAJCQl1bmxvY2tfZGlyX211dGV4KGxvY2tfbnIpOwpAQCAtMzQ2LDggKzM1MCw5IEBACiAJZWxzZSB7CiAJCWludCBiZWdpbiA9IGtfc3RhcnQ7CiAJCWludCBlbmQgPSBrX2VuZDsKKwkJYXNzZXJ0KGJlZ2luID49IDApOwogCQl3aGlsZSAoYmVnaW4gPCBlbmQpIHsKLQkJCWludCBtaWQgPSAoYmVnaW4gKyBlbmQpID4+IDE7CisJCQlpbnQgbWlkID0gYmVnaW4gKyAoKGVuZCAtIGJlZ2luKSA+PiAxKTsKIAkJCWludCBjbXAgPSBzdHJuY21wKGlzdGF0ZS0+Y2FjaGVbbWlkXS0+bmFtZSwgcHJlZml4LT5idWYsIHByZWZpeC0+bGVuKTsKIAkJCWlmIChjbXAgPT0gMCkgLyogbWlkIGhhcyBzYW1lIHByZWZpeDsgbG9vayBpbiBzZWNvbmQgcGFydCAqLwogCQkJCWJlZ2luID0gbWlkICsgMTsKQEAgLTQ3Miw4ICs0NzcsOCBAQAogCWZvciAoayA9IDA7IGsgPCBkLT5pc3RhdGUtPmNhY2hlX25yOyBrKyspIHsKIAkJc3RydWN0IGNhY2hlX2VudHJ5ICpjZV9rID0gZC0+aXN0YXRlLT5jYWNoZVtrXTsKIAkJY2Vfay0+Y2VfZmxhZ3MgfD0gQ0VfSEFTSEVEOwotCQloYXNobWFwX2VudHJ5X2luaXQoY2VfaywgZC0+bGF6eV9lbnRyaWVzW2tdLmhhc2hfbmFtZSk7Ci0JCWhhc2htYXBfYWRkKCZkLT5pc3RhdGUtPm5hbWVfaGFzaCwgY2Vfayk7CisJCWhhc2htYXBfZW50cnlfaW5pdCgmY2Vfay0+ZW50LCBkLT5sYXp5X2VudHJpZXNba10uaGFzaF9uYW1lKTsKKwkJaGFzaG1hcF9hZGQoJmQtPmlzdGF0ZS0+bmFtZV9oYXNoLCAmY2Vfay0+ZW50KTsKIAl9CiAKIAlyZXR1cm4gTlVMTDsKQEAgLTYyNSw3ICs2MzAsNyBAQAogCWlmICghaXN0YXRlLT5uYW1lX2hhc2hfaW5pdGlhbGl6ZWQgfHwgIShjZS0+Y2VfZmxhZ3MgJiBDRV9IQVNIRUQpKQogCQlyZXR1cm47CiAJY2UtPmNlX2ZsYWdzICY9IH5DRV9IQVNIRUQ7Ci0JaGFzaG1hcF9yZW1vdmUoJmlzdGF0ZS0+bmFtZV9oYXNoLCBjZSwgY2UpOworCWhhc2htYXBfcmVtb3ZlKCZpc3RhdGUtPm5hbWVfaGFzaCwgJmNlLT5lbnQsIGNlKTsKIAogCWlmIChpZ25vcmVfY2FzZSkKIAkJcmVtb3ZlX2Rpcl9lbnRyeShpc3RhdGUsIGNlKTsKQEAgLTcwMiwxNSArNzA3LDE1IEBACiBzdHJ1Y3QgY2FjaGVfZW50cnkgKmluZGV4X2ZpbGVfZXhpc3RzKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLCBjb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbiwgaW50IGljYXNlKQogewogCXN0cnVjdCBjYWNoZV9lbnRyeSAqY2U7CisJdW5zaWduZWQgaW50IGhhc2ggPSBtZW1paGFzaChuYW1lLCBuYW1lbGVuKTsKIAogCWxhenlfaW5pdF9uYW1lX2hhc2goaXN0YXRlKTsKIAotCWNlID0gaGFzaG1hcF9nZXRfZnJvbV9oYXNoKCZpc3RhdGUtPm5hbWVfaGFzaCwKLQkJCQkgICBtZW1paGFzaChuYW1lLCBuYW1lbGVuKSwgTlVMTCk7Ci0Jd2hpbGUgKGNlKSB7CisJY2UgPSBoYXNobWFwX2dldF9lbnRyeV9mcm9tX2hhc2goJmlzdGF0ZS0+bmFtZV9oYXNoLCBoYXNoLCBOVUxMLAorCQkJCQkgc3RydWN0IGNhY2hlX2VudHJ5LCBlbnQpOworCWhhc2htYXBfZm9yX2VhY2hfZW50cnlfZnJvbSgmaXN0YXRlLT5uYW1lX2hhc2gsIGNlLCBlbnQpIHsKIAkJaWYgKHNhbWVfbmFtZShjZSwgbmFtZSwgbmFtZWxlbiwgaWNhc2UpKQogCQkJcmV0dXJuIGNlOwotCQljZSA9IGhhc2htYXBfZ2V0X25leHQoJmlzdGF0ZS0+bmFtZV9oYXNoLCBjZSk7CiAJfQogCXJldHVybiBOVUxMOwogfQpAQCAtNzIxLDYgKzcyNiw2IEBACiAJCXJldHVybjsKIAlpc3RhdGUtPm5hbWVfaGFzaF9pbml0aWFsaXplZCA9IDA7CiAKLQloYXNobWFwX2ZyZWUoJmlzdGF0ZS0+bmFtZV9oYXNoLCAwKTsKLQloYXNobWFwX2ZyZWUoJmlzdGF0ZS0+ZGlyX2hhc2gsIDEpOworCWhhc2htYXBfZnJlZSgmaXN0YXRlLT5uYW1lX2hhc2gpOworCWhhc2htYXBfZnJlZV9lbnRyaWVzKCZpc3RhdGUtPmRpcl9oYXNoLCBzdHJ1Y3QgZGlyX2VudHJ5LCBlbnQpOwogfQpkaWZmIC0tZ2l0IGEvbm90ZXMtY2FjaGUuYyBiL25vdGVzLWNhY2hlLmMKaW5kZXggZDg3ZTdjYS4uMjQ3MzMxNCAxMDA2NDQKLS0tIGEvbm90ZXMtY2FjaGUuYworKysgYi9ub3Rlcy1jYWNoZS5jCkBAIC01LDcgKzUsOSBAQAogI2luY2x1ZGUgImNvbW1pdC5oIgogI2luY2x1ZGUgInJlZnMuaCIKIAotc3RhdGljIGludCBub3Rlc19jYWNoZV9tYXRjaF92YWxpZGl0eShjb25zdCBjaGFyICpyZWYsIGNvbnN0IGNoYXIgKnZhbGlkaXR5KQorc3RhdGljIGludCBub3Rlc19jYWNoZV9tYXRjaF92YWxpZGl0eShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgICAgICBjb25zdCBjaGFyICpyZWYsCisJCQkJICAgICAgY29uc3QgY2hhciAqdmFsaWRpdHkpCiB7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJc3RydWN0IGNvbW1pdCAqY29tbWl0OwpAQCAtMTYsNyArMTgsNyBAQAogCWlmIChyZWFkX3JlZihyZWYsICZvaWQpIDwgMCkKIAkJcmV0dXJuIDA7CiAKLQljb21taXQgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZV9nZW50bHkodGhlX3JlcG9zaXRvcnksICZvaWQsIDEpOworCWNvbW1pdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlX2dlbnRseShyLCAmb2lkLCAxKTsKIAlpZiAoIWNvbW1pdCkKIAkJcmV0dXJuIDA7CiAKQEAgLTMwLDggKzMyLDggQEAKIAlyZXR1cm4gcmV0OwogfQogCi12b2lkIG5vdGVzX2NhY2hlX2luaXQoc3RydWN0IG5vdGVzX2NhY2hlICpjLCBjb25zdCBjaGFyICpuYW1lLAotCQkgICAgIGNvbnN0IGNoYXIgKnZhbGlkaXR5KQordm9pZCBub3Rlc19jYWNoZV9pbml0KHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3Qgbm90ZXNfY2FjaGUgKmMsCisJCSAgICAgIGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKnZhbGlkaXR5KQogewogCXN0cnVjdCBzdHJidWYgcmVmID0gU1RSQlVGX0lOSVQ7CiAJaW50IGZsYWdzID0gTk9URVNfSU5JVF9XUklUQUJMRTsKQEAgLTQwLDcgKzQyLDcgQEAKIAljLT52YWxpZGl0eSA9IHhzdHJkdXAodmFsaWRpdHkpOwogCiAJc3RyYnVmX2FkZGYoJnJlZiwgInJlZnMvbm90ZXMvJXMiLCBuYW1lKTsKLQlpZiAoIW5vdGVzX2NhY2hlX21hdGNoX3ZhbGlkaXR5KHJlZi5idWYsIHZhbGlkaXR5KSkKKwlpZiAoIW5vdGVzX2NhY2hlX21hdGNoX3ZhbGlkaXR5KHIsIHJlZi5idWYsIHZhbGlkaXR5KSkKIAkJZmxhZ3MgfD0gTk9URVNfSU5JVF9FTVBUWTsKIAlpbml0X25vdGVzKCZjLT50cmVlLCByZWYuYnVmLCBjb21iaW5lX25vdGVzX292ZXJ3cml0ZSwgZmxhZ3MpOwogCXN0cmJ1Zl9yZWxlYXNlKCZyZWYpOwpkaWZmIC0tZ2l0IGEvbm90ZXMtY2FjaGUuaCBiL25vdGVzLWNhY2hlLmgKaW5kZXggYWVlZWU4NC4uNTZmOGM5OCAxMDA2NDQKLS0tIGEvbm90ZXMtY2FjaGUuaAorKysgYi9ub3Rlcy1jYWNoZS5oCkBAIC0zLDEzICszLDE1IEBACiAKICNpbmNsdWRlICJub3Rlcy5oIgogCitzdHJ1Y3QgcmVwb3NpdG9yeTsKKwogc3RydWN0IG5vdGVzX2NhY2hlIHsKIAlzdHJ1Y3Qgbm90ZXNfdHJlZSB0cmVlOwogCWNoYXIgKnZhbGlkaXR5OwogfTsKIAotdm9pZCBub3Rlc19jYWNoZV9pbml0KHN0cnVjdCBub3Rlc19jYWNoZSAqYywgY29uc3QgY2hhciAqbmFtZSwKLQkJICAgICBjb25zdCBjaGFyICp2YWxpZGl0eSk7Cit2b2lkIG5vdGVzX2NhY2hlX2luaXQoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBub3Rlc19jYWNoZSAqYywKKwkJICAgICAgY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqdmFsaWRpdHkpOwogaW50IG5vdGVzX2NhY2hlX3dyaXRlKHN0cnVjdCBub3Rlc19jYWNoZSAqYyk7CiAKIGNoYXIgKm5vdGVzX2NhY2hlX2dldChzdHJ1Y3Qgbm90ZXNfY2FjaGUgKmMsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgc2l6ZV90CmRpZmYgLS1naXQgYS9ub3Rlcy1tZXJnZS5jIGIvbm90ZXMtbWVyZ2UuYwppbmRleCBiZDA1ZDUwLi4yZmU3MjRmIDEwMDY0NAotLS0gYS9ub3Rlcy1tZXJnZS5jCisrKyBiL25vdGVzLW1lcmdlLmMKQEAgLTE4LDIzICsxOCwyNSBAQAogCXN0cnVjdCBvYmplY3RfaWQgb2JqLCBiYXNlLCBsb2NhbCwgcmVtb3RlOwogfTsKIAotdm9pZCBpbml0X25vdGVzX21lcmdlX29wdGlvbnMoc3RydWN0IG5vdGVzX21lcmdlX29wdGlvbnMgKm8pCit2b2lkIGluaXRfbm90ZXNfbWVyZ2Vfb3B0aW9ucyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgICAgIHN0cnVjdCBub3Rlc19tZXJnZV9vcHRpb25zICpvKQogewogCW1lbXNldChvLCAwLCBzaXplb2Yoc3RydWN0IG5vdGVzX21lcmdlX29wdGlvbnMpKTsKIAlzdHJidWZfaW5pdCgmKG8tPmNvbW1pdF9tc2cpLCAwKTsKIAlvLT52ZXJib3NpdHkgPSBOT1RFU19NRVJHRV9WRVJCT1NJVFlfREVGQVVMVDsKKwlvLT5yZXBvID0gcjsKIH0KIAogc3RhdGljIGludCBwYXRoX3RvX29pZChjb25zdCBjaGFyICpwYXRoLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0JY2hhciBoZXhfb2lkW0dJVF9TSEExX0hFWFNaXTsKKwljaGFyIGhleF9vaWRbR0lUX01BWF9IRVhTWl07CiAJaW50IGkgPSAwOwotCXdoaWxlICgqcGF0aCAmJiBpIDwgR0lUX1NIQTFfSEVYU1opIHsKKwl3aGlsZSAoKnBhdGggJiYgaSA8IHRoZV9oYXNoX2FsZ28tPmhleHN6KSB7CiAJCWlmICgqcGF0aCAhPSAnLycpCiAJCQloZXhfb2lkW2krK10gPSAqcGF0aDsKIAkJcGF0aCsrOwogCX0KLQlpZiAoKnBhdGggfHwgaSAhPSBHSVRfU0hBMV9IRVhTWikKKwlpZiAoKnBhdGggfHwgaSAhPSB0aGVfaGFzaF9hbGdvLT5oZXhzeikKIAkJcmV0dXJuIC0xOwogCXJldHVybiBnZXRfb2lkX2hleChoZXhfb2lkLCBvaWQpOwogfQpAQCAtMTI3LDcgKzEyOSw3IEBACiAJdHJhY2VfcHJpbnRmKCJcdGRpZmZfdHJlZV9yZW1vdGUoYmFzZSA9ICUuN3MsIHJlbW90ZSA9ICUuN3MpXG4iLAogCSAgICAgICBvaWRfdG9faGV4KGJhc2UpLCBvaWRfdG9faGV4KHJlbW90ZSkpOwogCi0JcmVwb19kaWZmX3NldHVwKHRoZV9yZXBvc2l0b3J5LCAmb3B0KTsKKwlyZXBvX2RpZmZfc2V0dXAoby0+cmVwbywgJm9wdCk7CiAJb3B0LmZsYWdzLnJlY3Vyc2l2ZSA9IDE7CiAJb3B0Lm91dHB1dF9mb3JtYXQgPSBESUZGX0ZPUk1BVF9OT19PVVRQVVQ7CiAJZGlmZl9zZXR1cF9kb25lKCZvcHQpOwpAQCAtMTkwLDcgKzE5Miw3IEBACiAJdHJhY2VfcHJpbnRmKCJcdGRpZmZfdHJlZV9sb2NhbChsZW4gPSAlaSwgYmFzZSA9ICUuN3MsIGxvY2FsID0gJS43cylcbiIsCiAJICAgICAgIGxlbiwgb2lkX3RvX2hleChiYXNlKSwgb2lkX3RvX2hleChsb2NhbCkpOwogCi0JcmVwb19kaWZmX3NldHVwKHRoZV9yZXBvc2l0b3J5LCAmb3B0KTsKKwlyZXBvX2RpZmZfc2V0dXAoby0+cmVwbywgJm9wdCk7CiAJb3B0LmZsYWdzLnJlY3Vyc2l2ZSA9IDE7CiAJb3B0Lm91dHB1dF9mb3JtYXQgPSBESUZGX0ZPUk1BVF9OT19PVVRQVVQ7CiAJZGlmZl9zZXR1cF9kb25lKCZvcHQpOwpAQCAtMzUwLDcgKzM1Miw3IEBACiAKIAlzdGF0dXMgPSBsbF9tZXJnZSgmcmVzdWx0X2J1Ziwgb2lkX3RvX2hleCgmcC0+b2JqKSwgJmJhc2UsIE5VTEwsCiAJCQkgICZsb2NhbCwgby0+bG9jYWxfcmVmLCAmcmVtb3RlLCBvLT5yZW1vdGVfcmVmLAotCQkJICAmdGhlX2luZGV4LCBOVUxMKTsKKwkJCSAgby0+cmVwby0+aW5kZXgsIE5VTEwpOwogCiAJZnJlZShiYXNlLnB0cik7CiAJZnJlZShsb2NhbC5wdHIpOwpAQCAtNTU2LDcgKzU1OCw3IEBACiAJZWxzZSBpZiAoIWNoZWNrX3JlZm5hbWVfZm9ybWF0KG8tPmxvY2FsX3JlZiwgMCkgJiYKIAkJaXNfbnVsbF9vaWQoJmxvY2FsX29pZCkpCiAJCWxvY2FsID0gTlVMTDsgLyogbG9jYWxfb2lkID09IG51bGxfb2lkIGluZGljYXRlcyB1bmJvcm4gcmVmICovCi0JZWxzZSBpZiAoIShsb2NhbCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHRoZV9yZXBvc2l0b3J5LCAmbG9jYWxfb2lkKSkpCisJZWxzZSBpZiAoIShsb2NhbCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKG8tPnJlcG8sICZsb2NhbF9vaWQpKSkKIAkJZGllKCJDb3VsZCBub3QgcGFyc2UgbG9jYWwgY29tbWl0ICVzICglcykiLAogCQkgICAgb2lkX3RvX2hleCgmbG9jYWxfb2lkKSwgby0+bG9jYWxfcmVmKTsKIAl0cmFjZV9wcmludGYoIlx0bG9jYWwgY29tbWl0OiAlLjdzXG4iLCBvaWRfdG9faGV4KCZsb2NhbF9vaWQpKTsKQEAgLTU3NCw3ICs1NzYsNyBAQAogCQkJZGllKCJGYWlsZWQgdG8gcmVzb2x2ZSByZW1vdGUgbm90ZXMgcmVmICclcyciLAogCQkJICAgIG8tPnJlbW90ZV9yZWYpOwogCQl9Ci0JfSBlbHNlIGlmICghKHJlbW90ZSA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHRoZV9yZXBvc2l0b3J5LCAmcmVtb3RlX29pZCkpKSB7CisJfSBlbHNlIGlmICghKHJlbW90ZSA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKG8tPnJlcG8sICZyZW1vdGVfb2lkKSkpIHsKIAkJZGllKCJDb3VsZCBub3QgcGFyc2UgcmVtb3RlIGNvbW1pdCAlcyAoJXMpIiwKIAkJICAgIG9pZF90b19oZXgoJnJlbW90ZV9vaWQpLCBvLT5yZW1vdGVfcmVmKTsKIAl9CkBAIC02NDcsNyArNjQ5LDcgQEAKIAkJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnRzID0gTlVMTDsKIAkJY29tbWl0X2xpc3RfaW5zZXJ0KHJlbW90ZSwgJnBhcmVudHMpOyAvKiBMSUZPIG9yZGVyICovCiAJCWNvbW1pdF9saXN0X2luc2VydChsb2NhbCwgJnBhcmVudHMpOwotCQljcmVhdGVfbm90ZXNfY29tbWl0KGxvY2FsX3RyZWUsIHBhcmVudHMsIG8tPmNvbW1pdF9tc2cuYnVmLAorCQljcmVhdGVfbm90ZXNfY29tbWl0KG8tPnJlcG8sIGxvY2FsX3RyZWUsIHBhcmVudHMsIG8tPmNvbW1pdF9tc2cuYnVmLAogCQkJCSAgICBvLT5jb21taXRfbXNnLmxlbiwgcmVzdWx0X29pZCk7CiAJfQogCkBAIC03MTEsNyArNzEzLDcgQEAKIAkJLyogd3JpdGUgZmlsZSBhcyBibG9iLCBhbmQgYWRkIHRvIHBhcnRpYWxfdHJlZSAqLwogCQlpZiAoc3RhdChwYXRoLmJ1ZiwgJnN0KSkKIAkJCWRpZV9lcnJubygiRmFpbGVkIHRvIHN0YXQgJyVzJyIsIHBhdGguYnVmKTsKLQkJaWYgKGluZGV4X3BhdGgoJnRoZV9pbmRleCwgJmJsb2Jfb2lkLCBwYXRoLmJ1ZiwgJnN0LCBIQVNIX1dSSVRFX09CSkVDVCkpCisJCWlmIChpbmRleF9wYXRoKG8tPnJlcG8tPmluZGV4LCAmYmxvYl9vaWQsIHBhdGguYnVmLCAmc3QsIEhBU0hfV1JJVEVfT0JKRUNUKSkKIAkJCWRpZSgiRmFpbGVkIHRvIHdyaXRlIGJsb2Igb2JqZWN0IGZyb20gJyVzJyIsIHBhdGguYnVmKTsKIAkJaWYgKGFkZF9ub3RlKHBhcnRpYWxfdHJlZSwgJm9ial9vaWQsICZibG9iX29pZCwgTlVMTCkpCiAJCQlkaWUoIkZhaWxlZCB0byBhZGQgcmVzb2x2ZWQgbm90ZSAnJXMnIHRvIG5vdGVzIHRyZWUiLApAQCAtNzIyLDcgKzcyNCw3IEBACiAJCXN0cmJ1Zl9zZXRsZW4oJnBhdGgsIGJhc2VsZW4pOwogCX0KIAotCWNyZWF0ZV9ub3Rlc19jb21taXQocGFydGlhbF90cmVlLCBwYXJ0aWFsX2NvbW1pdC0+cGFyZW50cywgbXNnLAorCWNyZWF0ZV9ub3Rlc19jb21taXQoby0+cmVwbywgcGFydGlhbF90cmVlLCBwYXJ0aWFsX2NvbW1pdC0+cGFyZW50cywgbXNnLAogCQkJICAgIHN0cmxlbihtc2cpLCByZXN1bHRfb2lkKTsKIAl1bnVzZV9jb21taXRfYnVmZmVyKHBhcnRpYWxfY29tbWl0LCBidWZmZXIpOwogCWlmIChvLT52ZXJib3NpdHkgPj0gNCkKZGlmZiAtLWdpdCBhL25vdGVzLW1lcmdlLmggYi9ub3Rlcy1tZXJnZS5oCmluZGV4IDZjNzRlOTMuLjk5ZjljNzAgMTAwNjQ0Ci0tLSBhL25vdGVzLW1lcmdlLmgKKysrIGIvbm90ZXMtbWVyZ2UuaApAQCAtNiw2ICs2LDcgQEAKIAogc3RydWN0IGNvbW1pdDsKIHN0cnVjdCBvYmplY3RfaWQ7CitzdHJ1Y3QgcmVwb3NpdG9yeTsKIAogI2RlZmluZSBOT1RFU19NRVJHRV9XT1JLVFJFRSAiTk9URVNfTUVSR0VfV09SS1RSRUUiCiAKQEAgLTE1LDYgKzE2LDcgQEAKIH07CiAKIHN0cnVjdCBub3Rlc19tZXJnZV9vcHRpb25zIHsKKwlzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbzsKIAljb25zdCBjaGFyICpsb2NhbF9yZWY7CiAJY29uc3QgY2hhciAqcmVtb3RlX3JlZjsKIAlzdHJ1Y3Qgc3RyYnVmIGNvbW1pdF9tc2c7CkBAIC0yMyw3ICsyNSw4IEBACiAJdW5zaWduZWQgaGFzX3dvcmt0cmVlOjE7CiB9OwogCi12b2lkIGluaXRfbm90ZXNfbWVyZ2Vfb3B0aW9ucyhzdHJ1Y3Qgbm90ZXNfbWVyZ2Vfb3B0aW9ucyAqbyk7Cit2b2lkIGluaXRfbm90ZXNfbWVyZ2Vfb3B0aW9ucyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgICAgIHN0cnVjdCBub3Rlc19tZXJnZV9vcHRpb25zICpvKTsKIAogLyoKICAqIE1lcmdlIG5vdGVzIGZyb20gby0+cmVtb3RlX3JlZiBpbnRvIG8tPmxvY2FsX3JlZgpkaWZmIC0tZ2l0IGEvbm90ZXMtdXRpbHMuYyBiL25vdGVzLXV0aWxzLmMKaW5kZXggMTRlYTAzMS4uNGJmNDg4OCAxMDA2NDQKLS0tIGEvbm90ZXMtdXRpbHMuYworKysgYi9ub3Rlcy11dGlscy5jCkBAIC01LDcgKzUsOSBAQAogI2luY2x1ZGUgIm5vdGVzLXV0aWxzLmgiCiAjaW5jbHVkZSAicmVwb3NpdG9yeS5oIgogCi12b2lkIGNyZWF0ZV9ub3Rlc19jb21taXQoc3RydWN0IG5vdGVzX3RyZWUgKnQsIHN0cnVjdCBjb21taXRfbGlzdCAqcGFyZW50cywKK3ZvaWQgY3JlYXRlX25vdGVzX2NvbW1pdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSBzdHJ1Y3Qgbm90ZXNfdHJlZSAqdCwKKwkJCSBzdHJ1Y3QgY29tbWl0X2xpc3QgKnBhcmVudHMsCiAJCQkgY29uc3QgY2hhciAqbXNnLCBzaXplX3QgbXNnX2xlbiwKIAkJCSBzdHJ1Y3Qgb2JqZWN0X2lkICpyZXN1bHRfb2lkKQogewpAQCAtMjAsOCArMjIsNyBAQAogCQkvKiBEZWR1Y2UgcGFyZW50IGNvbW1pdCBmcm9tIHQtPnJlZiAqLwogCQlzdHJ1Y3Qgb2JqZWN0X2lkIHBhcmVudF9vaWQ7CiAJCWlmICghcmVhZF9yZWYodC0+cmVmLCAmcGFyZW50X29pZCkpIHsKLQkJCXN0cnVjdCBjb21taXQgKnBhcmVudCA9IGxvb2t1cF9jb21taXQodGhlX3JlcG9zaXRvcnksCi0JCQkJCQkJICAgICAgJnBhcmVudF9vaWQpOworCQkJc3RydWN0IGNvbW1pdCAqcGFyZW50ID0gbG9va3VwX2NvbW1pdChyLCAmcGFyZW50X29pZCk7CiAJCQlpZiAocGFyc2VfY29tbWl0KHBhcmVudCkpCiAJCQkJZGllKCJGYWlsZWQgdG8gZmluZC9wYXJzZSBjb21taXQgJXMiLCB0LT5yZWYpOwogCQkJY29tbWl0X2xpc3RfaW5zZXJ0KHBhcmVudCwgJnBhcmVudHMpOwpAQCAtMzQsNyArMzUsNyBAQAogCQlkaWUoIkZhaWxlZCB0byBjb21taXQgbm90ZXMgdHJlZSB0byBkYXRhYmFzZSIpOwogfQogCi12b2lkIGNvbW1pdF9ub3RlcyhzdHJ1Y3Qgbm90ZXNfdHJlZSAqdCwgY29uc3QgY2hhciAqbXNnKQordm9pZCBjb21taXRfbm90ZXMoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBub3Rlc190cmVlICp0LCBjb25zdCBjaGFyICptc2cpCiB7CiAJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIGNvbW1pdF9vaWQ7CkBAIC01MCw4ICs1MSw4IEBACiAJc3RyYnVmX2FkZHN0cigmYnVmLCBtc2cpOwogCXN0cmJ1Zl9jb21wbGV0ZV9saW5lKCZidWYpOwogCi0JY3JlYXRlX25vdGVzX2NvbW1pdCh0LCBOVUxMLCBidWYuYnVmLCBidWYubGVuLCAmY29tbWl0X29pZCk7Ci0Jc3RyYnVmX2luc2VydCgmYnVmLCAwLCAibm90ZXM6ICIsIDcpOyAvKiBjb21taXQgbWVzc2FnZSBzdGFydHMgYXQgaW5kZXggNyAqLworCWNyZWF0ZV9ub3Rlc19jb21taXQociwgdCwgTlVMTCwgYnVmLmJ1ZiwgYnVmLmxlbiwgJmNvbW1pdF9vaWQpOworCXN0cmJ1Zl9pbnNlcnRzdHIoJmJ1ZiwgMCwgIm5vdGVzOiAiKTsKIAl1cGRhdGVfcmVmKGJ1Zi5idWYsIHQtPnVwZGF0ZV9yZWYsICZjb21taXRfb2lkLCBOVUxMLCAwLAogCQkgICBVUERBVEVfUkVGU19ESUVfT05fRVJSKTsKIApAQCAtMTcxLDExICsxNzIsMTMgQEAKIAlyZXR1cm4gcmV0OwogfQogCi12b2lkIGZpbmlzaF9jb3B5X25vdGVzX2Zvcl9yZXdyaXRlKHN0cnVjdCBub3Rlc19yZXdyaXRlX2NmZyAqYywgY29uc3QgY2hhciAqbXNnKQordm9pZCBmaW5pc2hfY29weV9ub3Rlc19mb3JfcmV3cml0ZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgICBzdHJ1Y3Qgbm90ZXNfcmV3cml0ZV9jZmcgKmMsCisJCQkJICAgY29uc3QgY2hhciAqbXNnKQogewogCWludCBpOwogCWZvciAoaSA9IDA7IGMtPnRyZWVzW2ldOyBpKyspIHsKLQkJY29tbWl0X25vdGVzKGMtPnRyZWVzW2ldLCBtc2cpOworCQljb21taXRfbm90ZXMociwgYy0+dHJlZXNbaV0sIG1zZyk7CiAJCWZyZWVfbm90ZXMoYy0+dHJlZXNbaV0pOwogCX0KIAlmcmVlKGMtPnRyZWVzKTsKZGlmZiAtLWdpdCBhL25vdGVzLXV0aWxzLmggYi9ub3Rlcy11dGlscy5oCmluZGV4IDU0MDgzMDYuLmQ5YjNjMDkgMTAwNjQ0Ci0tLSBhL25vdGVzLXV0aWxzLmgKKysrIGIvbm90ZXMtdXRpbHMuaApAQCAtNSw2ICs1LDcgQEAKIAogc3RydWN0IGNvbW1pdF9saXN0Owogc3RydWN0IG9iamVjdF9pZDsKK3N0cnVjdCByZXBvc2l0b3J5OwogCiAvKgogICogQ3JlYXRlIG5ldyBub3RlcyBjb21taXQgZnJvbSB0aGUgZ2l2ZW4gbm90ZXMgdHJlZQpAQCAtMTcsMTEgKzE4LDEzIEBACiAgKgogICogVGhlIHJlc3VsdGluZyBjb21taXQgU0hBMSBpcyBzdG9yZWQgaW4gcmVzdWx0X3NoYTEuCiAgKi8KLXZvaWQgY3JlYXRlX25vdGVzX2NvbW1pdChzdHJ1Y3Qgbm90ZXNfdHJlZSAqdCwgc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnRzLAordm9pZCBjcmVhdGVfbm90ZXNfY29tbWl0KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJIHN0cnVjdCBub3Rlc190cmVlICp0LAorCQkJIHN0cnVjdCBjb21taXRfbGlzdCAqcGFyZW50cywKIAkJCSBjb25zdCBjaGFyICptc2csIHNpemVfdCBtc2dfbGVuLAogCQkJIHN0cnVjdCBvYmplY3RfaWQgKnJlc3VsdF9vaWQpOwogCi12b2lkIGNvbW1pdF9ub3RlcyhzdHJ1Y3Qgbm90ZXNfdHJlZSAqdCwgY29uc3QgY2hhciAqbXNnKTsKK3ZvaWQgY29tbWl0X25vdGVzKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3Qgbm90ZXNfdHJlZSAqdCwgY29uc3QgY2hhciAqbXNnKTsKIAogZW51bSBub3Rlc19tZXJnZV9zdHJhdGVneSB7CiAJCU5PVEVTX01FUkdFX1JFU09MVkVfTUFOVUFMID0gMCwKQEAgLTQ1LDYgKzQ4LDggQEAKIHN0cnVjdCBub3Rlc19yZXdyaXRlX2NmZyAqaW5pdF9jb3B5X25vdGVzX2Zvcl9yZXdyaXRlKGNvbnN0IGNoYXIgKmNtZCk7CiBpbnQgY29weV9ub3RlX2Zvcl9yZXdyaXRlKHN0cnVjdCBub3Rlc19yZXdyaXRlX2NmZyAqYywKIAkJCSAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqZnJvbV9vYmosIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKnRvX29iaik7Ci12b2lkIGZpbmlzaF9jb3B5X25vdGVzX2Zvcl9yZXdyaXRlKHN0cnVjdCBub3Rlc19yZXdyaXRlX2NmZyAqYywgY29uc3QgY2hhciAqbXNnKTsKK3ZvaWQgZmluaXNoX2NvcHlfbm90ZXNfZm9yX3Jld3JpdGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJICAgc3RydWN0IG5vdGVzX3Jld3JpdGVfY2ZnICpjLAorCQkJCSAgIGNvbnN0IGNoYXIgKm1zZyk7CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbm90ZXMuYyBiL25vdGVzLmMKaW5kZXggMjVjZGNlMi4uNTY0YmFhYyAxMDA2NDQKLS0tIGEvbm90ZXMuYworKysgYi9ub3Rlcy5jCkBAIC02Nyw4ICs2Nyw5IEBACiAKICNkZWZpbmUgR0VUX05JQkJMRShuLCBzaGExKSAoKCgoc2hhMSlbKG4pID4+IDFdKSA+PiAoKH4obikgJiAweDAxKSA8PCAyKSkgJiAweDBmKQogCi0jZGVmaW5lIEtFWV9JTkRFWCAoR0lUX1NIQTFfUkFXU1ogLSAxKQotI2RlZmluZSBGQU5PVVRfUEFUSF9TRVBBUkFUT1JTICgoR0lUX1NIQTFfSEVYU1ogLyAyKSAtIDEpCisjZGVmaW5lIEtFWV9JTkRFWCAodGhlX2hhc2hfYWxnby0+cmF3c3ogLSAxKQorI2RlZmluZSBGQU5PVVRfUEFUSF9TRVBBUkFUT1JTICh0aGVfaGFzaF9hbGdvLT5yYXdzeiAtIDEpCisjZGVmaW5lIEZBTk9VVF9QQVRIX1NFUEFSQVRPUlNfTUFYICgoR0lUX01BWF9IRVhTWiAvIDIpIC0gMSkKICNkZWZpbmUgU1VCVFJFRV9TSEExX1BSRUZJWENNUChrZXlfc2hhMSwgc3VidHJlZV9zaGExKSBcCiAJKG1lbWNtcChrZXlfc2hhMSwgc3VidHJlZV9zaGExLCBzdWJ0cmVlX3NoYTFbS0VZX0lOREVYXSkpCiAKQEAgLTE5OCw3ICsxOTksNyBAQAogCQlzdHJ1Y3QgbGVhZl9ub2RlICplbnRyeSkKIHsKIAlzdHJ1Y3QgbGVhZl9ub2RlICpsOwotCXN0cnVjdCBpbnRfbm9kZSAqcGFyZW50X3N0YWNrW0dJVF9TSEExX1JBV1NaXTsKKwlzdHJ1Y3QgaW50X25vZGUgKnBhcmVudF9zdGFja1tHSVRfTUFYX1JBV1NaXTsKIAl1bnNpZ25lZCBjaGFyIGksIGo7CiAJdm9pZCAqKnAgPSBub3RlX3RyZWVfc2VhcmNoKHQsICZ0cmVlLCAmbiwgZW50cnktPmtleV9vaWQuaGFzaCk7CiAKQEAgLTI2OCw4ICsyNjksMTAgQEAKIAkJY2FzZSBQVFJfVFlQRV9OT1RFOgogCQkJaWYgKG9pZGVxKCZsLT5rZXlfb2lkLCAmZW50cnktPmtleV9vaWQpKSB7CiAJCQkJLyogc2tpcCBjb25jYXRlbmF0aW9uIGlmIGwgPT0gZW50cnkgKi8KLQkJCQlpZiAob2lkZXEoJmwtPnZhbF9vaWQsICZlbnRyeS0+dmFsX29pZCkpCisJCQkJaWYgKG9pZGVxKCZsLT52YWxfb2lkLCAmZW50cnktPnZhbF9vaWQpKSB7CisJCQkJCWZyZWUoZW50cnkpOwogCQkJCQlyZXR1cm4gMDsKKwkJCQl9CiAKIAkJCQlyZXQgPSBjb21iaW5lX25vdGVzKCZsLT52YWxfb2lkLAogCQkJCQkJICAgICZlbnRyeS0+dmFsX29pZCk7CkBAIC0zOTQsMTQgKzM5NywxNSBAQAogCXZvaWQgKmJ1ZjsKIAlzdHJ1Y3QgdHJlZV9kZXNjIGRlc2M7CiAJc3RydWN0IG5hbWVfZW50cnkgZW50cnk7CisJY29uc3QgdW5zaWduZWQgaGFzaHN6ID0gdGhlX2hhc2hfYWxnby0+cmF3c3o7CiAKLQlidWYgPSBmaWxsX3RyZWVfZGVzY3JpcHRvcigmZGVzYywgJnN1YnRyZWUtPnZhbF9vaWQpOworCWJ1ZiA9IGZpbGxfdHJlZV9kZXNjcmlwdG9yKHRoZV9yZXBvc2l0b3J5LCAmZGVzYywgJnN1YnRyZWUtPnZhbF9vaWQpOwogCWlmICghYnVmKQogCQlkaWUoIkNvdWxkIG5vdCByZWFkICVzIGZvciBub3Rlcy1pbmRleCIsCiAJCSAgICAgb2lkX3RvX2hleCgmc3VidHJlZS0+dmFsX29pZCkpOwogCiAJcHJlZml4X2xlbiA9IHN1YnRyZWUtPmtleV9vaWQuaGFzaFtLRVlfSU5ERVhdOwotCWlmIChwcmVmaXhfbGVuID49IEdJVF9TSEExX1JBV1NaKQorCWlmIChwcmVmaXhfbGVuID49IGhhc2hzeikKIAkJQlVHKCJwcmVmaXhfbGVuICglIlBSSXVNQVgiKSBpcyBvdXQgb2YgcmFuZ2UiLCAodWludG1heF90KXByZWZpeF9sZW4pOwogCWlmIChwcmVmaXhfbGVuICogMiA8IG4pCiAJCUJVRygicHJlZml4X2xlbiAoJSJQUkl1TUFYIikgaXMgdG9vIHNtYWxsIiwgKHVpbnRtYXhfdClwcmVmaXhfbGVuKTsKQEAgLTQxMSw3ICs0MTUsNyBAQAogCQlzdHJ1Y3QgbGVhZl9ub2RlICpsOwogCQlzaXplX3QgcGF0aF9sZW4gPSBzdHJsZW4oZW50cnkucGF0aCk7CiAKLQkJaWYgKHBhdGhfbGVuID09IDIgKiAoR0lUX1NIQTFfUkFXU1ogLSBwcmVmaXhfbGVuKSkgeworCQlpZiAocGF0aF9sZW4gPT0gMiAqIChoYXNoc3ogLSBwcmVmaXhfbGVuKSkgewogCQkJLyogVGhpcyBpcyBwb3RlbnRpYWxseSB0aGUgcmVtYWluZGVyIG9mIHRoZSBTSEEtMSAqLwogCiAJCQlpZiAoIVNfSVNSRUcoZW50cnkubW9kZSkpCkBAIC00MTksNyArNDIzLDcgQEAKIAkJCQlnb3RvIGhhbmRsZV9ub25fbm90ZTsKIAogCQkJaWYgKGhleF90b19ieXRlcyhvYmplY3Rfb2lkLmhhc2ggKyBwcmVmaXhfbGVuLCBlbnRyeS5wYXRoLAotCQkJCQkgR0lUX1NIQTFfUkFXU1ogLSBwcmVmaXhfbGVuKSkKKwkJCQkJIGhhc2hzeiAtIHByZWZpeF9sZW4pKQogCQkJCWdvdG8gaGFuZGxlX25vbl9ub3RlOyAvKiBlbnRyeS5wYXRoIGlzIG5vdCBhIFNIQTEgKi8KIAogCQkJdHlwZSA9IFBUUl9UWVBFX05PVEU7CkBAIC00MzksNyArNDQzLDcgQEAKIAkJCSAqIGV4Y2VwdCBmb3IgdGhlIGxhc3QgYnl0ZSwgd2hlcmUgd2Ugd3JpdGUKIAkJCSAqIHRoZSBsZW5ndGg6CiAJCQkgKi8KLQkJCW1lbXNldChvYmplY3Rfb2lkLmhhc2ggKyBsZW4sIDAsIEdJVF9TSEExX1JBV1NaIC0gbGVuIC0gMSk7CisJCQltZW1zZXQob2JqZWN0X29pZC5oYXNoICsgbGVuLCAwLCBoYXNoc3ogLSBsZW4gLSAxKTsKIAkJCW9iamVjdF9vaWQuaGFzaFtLRVlfSU5ERVhdID0gKHVuc2lnbmVkIGNoYXIpbGVuOwogCiAJCQl0eXBlID0gUFRSX1RZUEVfU1VCVFJFRTsKQEAgLTQ1MCwxMyArNDU0LDEzIEBACiAKIAkJbCA9IHhjYWxsb2MoMSwgc2l6ZW9mKCpsKSk7CiAJCW9pZGNweSgmbC0+a2V5X29pZCwgJm9iamVjdF9vaWQpOwotCQlvaWRjcHkoJmwtPnZhbF9vaWQsIGVudHJ5Lm9pZCk7CisJCW9pZGNweSgmbC0+dmFsX29pZCwgJmVudHJ5Lm9pZCk7CiAJCWlmIChub3RlX3RyZWVfaW5zZXJ0KHQsIG5vZGUsIG4sIGwsIHR5cGUsCiAJCQkJICAgICBjb21iaW5lX25vdGVzX2NvbmNhdGVuYXRlKSkKIAkJCWRpZSgiRmFpbGVkIHRvIGxvYWQgJXMgJXMgaW50byBub3RlcyB0cmVlICIKIAkJCSAgICAiZnJvbSAlcyIsCiAJCQkgICAgdHlwZSA9PSBQVFJfVFlQRV9OT1RFID8gIm5vdGUiIDogInN1YnRyZWUiLAotCQkJICAgIG9pZF90b19oZXgoJmwtPmtleV9vaWQpLCB0LT5yZWYpOworCQkJICAgIG9pZF90b19oZXgoJm9iamVjdF9vaWQpLCB0LT5yZWYpOwogCiAJCWNvbnRpbnVlOwogCkBAIC00ODEsNyArNDg1LDcgQEAKIAkJCX0KIAkJCXN0cmJ1Zl9hZGRzdHIoJm5vbl9ub3RlX3BhdGgsIGVudHJ5LnBhdGgpOwogCQkJYWRkX25vbl9ub3RlKHQsIHN0cmJ1Zl9kZXRhY2goJm5vbl9ub3RlX3BhdGgsIE5VTEwpLAotCQkJCSAgICAgZW50cnkubW9kZSwgZW50cnkub2lkLT5oYXNoKTsKKwkJCQkgICAgIGVudHJ5Lm1vZGUsIGVudHJ5Lm9pZC5oYXNoKTsKIAkJfQogCX0KIAlmcmVlKGJ1Zik7CkBAIC01MjcsMjIgKzUzMSwyMiBAQAogCXJldHVybiBmYW5vdXQgKyAxOwogfQogCi0vKiBoZXggU0hBMSArIDE5ICogJy8nICsgTlVMICovCi0jZGVmaW5lIEZBTk9VVF9QQVRIX01BWCBHSVRfU0hBMV9IRVhTWiArIEZBTk9VVF9QQVRIX1NFUEFSQVRPUlMgKyAxCisvKiBoZXggb2lkICsgJy8nIGJldHdlZW4gZWFjaCBwYWlyIG9mIGhleCBkaWdpdHMgKyBOVUwgKi8KKyNkZWZpbmUgRkFOT1VUX1BBVEhfTUFYIEdJVF9NQVhfSEVYU1ogKyBGQU5PVVRfUEFUSF9TRVBBUkFUT1JTX01BWCArIDEKIAotc3RhdGljIHZvaWQgY29uc3RydWN0X3BhdGhfd2l0aF9mYW5vdXQoY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwKK3N0YXRpYyB2b2lkIGNvbnN0cnVjdF9wYXRoX3dpdGhfZmFub3V0KGNvbnN0IHVuc2lnbmVkIGNoYXIgKmhhc2gsCiAJCXVuc2lnbmVkIGNoYXIgZmFub3V0LCBjaGFyICpwYXRoKQogewogCXVuc2lnbmVkIGludCBpID0gMCwgaiA9IDA7Ci0JY29uc3QgY2hhciAqaGV4X3NoYTEgPSBzaGExX3RvX2hleChzaGExKTsKLQlhc3NlcnQoZmFub3V0IDwgR0lUX1NIQTFfUkFXU1opOworCWNvbnN0IGNoYXIgKmhleF9oYXNoID0gaGFzaF90b19oZXgoaGFzaCk7CisJYXNzZXJ0KGZhbm91dCA8IHRoZV9oYXNoX2FsZ28tPnJhd3N6KTsKIAl3aGlsZSAoZmFub3V0KSB7Ci0JCXBhdGhbaSsrXSA9IGhleF9zaGExW2orK107Ci0JCXBhdGhbaSsrXSA9IGhleF9zaGExW2orK107CisJCXBhdGhbaSsrXSA9IGhleF9oYXNoW2orK107CisJCXBhdGhbaSsrXSA9IGhleF9oYXNoW2orK107CiAJCXBhdGhbaSsrXSA9ICcvJzsKIAkJZmFub3V0LS07CiAJfQotCXhzbnByaW50ZihwYXRoICsgaSwgRkFOT1VUX1BBVEhfTUFYIC0gaSwgIiVzIiwgaGV4X3NoYTEgKyBqKTsKKwl4c25wcmludGYocGF0aCArIGksIEZBTk9VVF9QQVRIX01BWCAtIGksICIlcyIsIGhleF9oYXNoICsgaik7CiB9CiAKIHN0YXRpYyBpbnQgZm9yX2VhY2hfbm90ZV9oZWxwZXIoc3RydWN0IG5vdGVzX3RyZWUgKnQsIHN0cnVjdCBpbnRfbm9kZSAqdHJlZSwKQEAgLTU3MiwxNiArNTc2LDE2IEBACiAJCQkgKiB0aGUgbm90ZSB0cmVlIHRoYXQgaGF2ZSBub3QgeWV0IGJlZW4gZXhwbG9yZWQuIFRoZXJlCiAJCQkgKiBpcyBhIGRpcmVjdCByZWxhdGlvbnNoaXAgYmV0d2VlbiBzdWJ0cmVlIGVudHJpZXMgYXQKIAkJCSAqIGxldmVsICduJyBpbiB0aGUgdHJlZSwgYW5kIHRoZSAnZmFub3V0JyB2YXJpYWJsZToKLQkJCSAqIFN1YnRyZWUgZW50cmllcyBhdCBsZXZlbCAnbiA8PSAyICogZmFub3V0JyBzaG91bGQgYmUKKwkJCSAqIFN1YnRyZWUgZW50cmllcyBhdCBsZXZlbCAnbiA8IDIgKiBmYW5vdXQnIHNob3VsZCBiZQogCQkJICogcHJlc2VydmVkLCBzaW5jZSB0aGV5IGNvcnJlc3BvbmQgZXhhY3RseSB0byBhIGZhbm91dAogCQkJICogZGlyZWN0b3J5IGluIHRoZSBvbi1kaXNrIHN0cnVjdHVyZS4gSG93ZXZlciwgc3VidHJlZQotCQkJICogZW50cmllcyBhdCBsZXZlbCAnbiA+IDIgKiBmYW5vdXQnIHNob3VsZCBOT1QgYmUKKwkJCSAqIGVudHJpZXMgYXQgbGV2ZWwgJ24gPj0gMiAqIGZhbm91dCcgc2hvdWxkIE5PVCBiZQogCQkJICogcHJlc2VydmVkLCBidXQgcmF0aGVyIGNvbnNvbGlkYXRlZCBpbnRvIHRoZSBhYm92ZQogCQkJICogbm90ZXMgdHJlZSBsZXZlbC4gV2UgYWNoaWV2ZSB0aGlzIGJ5IHVuY29uZGl0aW9uYWxseQogCQkJICogdW5wYWNraW5nIHN1YnRyZWUgZW50cmllcyB0aGF0IGV4aXN0IGJlbG93IHRoZQogCQkJICogdGhyZXNob2xkIGxldmVsIGF0ICduID0gMiAqIGZhbm91dCcuCiAJCQkgKi8KLQkJCWlmIChuIDw9IDIgKiBmYW5vdXQgJiYKKwkJCWlmIChuIDwgMiAqIGZhbm91dCAmJgogCQkJICAgIGZsYWdzICYgRk9SX0VBQ0hfTk9URV9ZSUVMRF9TVUJUUkVFUykgewogCQkJCS8qIGludm9rZSBjYWxsYmFjayB3aXRoIHN1YnRyZWUgKi8KIAkJCQl1bnNpZ25lZCBpbnQgcGF0aF9sZW4gPQpAQCAtNTk4LDcgKzYwMiw3IEBACiAJCQkJCSBwYXRoLAogCQkJCQkgY2JfZGF0YSk7CiAJCQl9Ci0JCQlpZiAobiA+IGZhbm91dCAqIDIgfHwKKwkJCWlmIChuID49IDIgKiBmYW5vdXQgfHwKIAkJCSAgICAhKGZsYWdzICYgRk9SX0VBQ0hfTk9URV9ET05UX1VOUEFDS19TVUJUUkVFUykpIHsKIAkJCQkvKiB1bnBhY2sgc3VidHJlZSBhbmQgcmVzdW1lIHRyYXZlcnNhbCAqLwogCQkJCXRyZWUtPmFbaV0gPSBOVUxMOwpAQCAtNjM3LDEwICs2NDEsMTAgQEAKIAogc3RhdGljIHZvaWQgd3JpdGVfdHJlZV9lbnRyeShzdHJ1Y3Qgc3RyYnVmICpidWYsIHVuc2lnbmVkIGludCBtb2RlLAogCQljb25zdCBjaGFyICpwYXRoLCB1bnNpZ25lZCBpbnQgcGF0aF9sZW4sIGNvbnN0Ci0JCXVuc2lnbmVkIGNoYXIgKnNoYTEpCisJCXVuc2lnbmVkIGNoYXIgKmhhc2gpCiB7CiAJc3RyYnVmX2FkZGYoYnVmLCAiJW8gJS4qcyVjIiwgbW9kZSwgcGF0aF9sZW4sIHBhdGgsICdcMCcpOwotCXN0cmJ1Zl9hZGQoYnVmLCBzaGExLCBHSVRfU0hBMV9SQVdTWik7CisJc3RyYnVmX2FkZChidWYsIGhhc2gsIHRoZV9oYXNoX2FsZ28tPnJhd3N6KTsKIH0KIAogc3RhdGljIHZvaWQgdHJlZV93cml0ZV9zdGFja19pbml0X3N1YnRyZWUoc3RydWN0IHRyZWVfd3JpdGVfc3RhY2sgKnR3cywKQEAgLTY1Miw3ICs2NTYsNyBAQAogCW4gPSAoc3RydWN0IHRyZWVfd3JpdGVfc3RhY2sgKikKIAkJeG1hbGxvYyhzaXplb2Yoc3RydWN0IHRyZWVfd3JpdGVfc3RhY2spKTsKIAluLT5uZXh0ID0gTlVMTDsKLQlzdHJidWZfaW5pdCgmbi0+YnVmLCAyNTYgKiAoMzIgKyBHSVRfU0hBMV9IRVhTWikpOyAvKiBhc3N1bWUgMjU2IGVudHJpZXMgcGVyIHRyZWUgKi8KKwlzdHJidWZfaW5pdCgmbi0+YnVmLCAyNTYgKiAoMzIgKyB0aGVfaGFzaF9hbGdvLT5oZXhzeikpOyAvKiBhc3N1bWUgMjU2IGVudHJpZXMgcGVyIHRyZWUgKi8KIAluLT5wYXRoWzBdID0gbi0+cGF0aFsxXSA9ICdcMCc7CiAJdHdzLT5uZXh0ID0gbjsKIAl0d3MtPnBhdGhbMF0gPSBwYXRoWzBdOwpAQCAtNzE5LDEzICs3MjMsMTUgQEAKIAogc3RydWN0IHdyaXRlX2VhY2hfbm90ZV9kYXRhIHsKIAlzdHJ1Y3QgdHJlZV93cml0ZV9zdGFjayAqcm9vdDsKLQlzdHJ1Y3Qgbm9uX25vdGUgKm5leHRfbm9uX25vdGU7CisJc3RydWN0IG5vbl9ub3RlICoqbm5fbGlzdDsKKwlzdHJ1Y3Qgbm9uX25vdGUgKm5uX3ByZXY7CiB9OwogCiBzdGF0aWMgaW50IHdyaXRlX2VhY2hfbm9uX25vdGVfdW50aWwoY29uc3QgY2hhciAqbm90ZV9wYXRoLAogCQlzdHJ1Y3Qgd3JpdGVfZWFjaF9ub3RlX2RhdGEgKmQpCiB7Ci0Jc3RydWN0IG5vbl9ub3RlICpuID0gZC0+bmV4dF9ub25fbm90ZTsKKwlzdHJ1Y3Qgbm9uX25vdGUgKnAgPSBkLT5ubl9wcmV2OworCXN0cnVjdCBub25fbm90ZSAqbiA9IHAgPyBwLT5uZXh0IDogKmQtPm5uX2xpc3Q7CiAJaW50IGNtcCA9IDAsIHJldDsKIAl3aGlsZSAobiAmJiAoIW5vdGVfcGF0aCB8fCAoY21wID0gc3RyY21wKG4tPnBhdGgsIG5vdGVfcGF0aCkpIDw9IDApKSB7CiAJCWlmIChub3RlX3BhdGggJiYgY21wID09IDApCkBAIC03MzYsOSArNzQyLDEwIEBACiAJCQlpZiAocmV0KQogCQkJCXJldHVybiByZXQ7CiAJCX0KKwkJcCA9IG47CiAJCW4gPSBuLT5uZXh0OwogCX0KLQlkLT5uZXh0X25vbl9ub3RlID0gbjsKKwlkLT5ubl9wcmV2ID0gcDsKIAlyZXR1cm4gMDsKIH0KIApAQCAtNzU3LDcgKzc2NCw3IEBACiAJCW5vdGVfcGF0aFtub3RlX3BhdGhfbGVuXSA9ICdcMCc7CiAJCW1vZGUgPSAwNDAwMDA7CiAJfQotCWFzc2VydChub3RlX3BhdGhfbGVuIDw9IEdJVF9TSEExX0hFWFNaICsgRkFOT1VUX1BBVEhfU0VQQVJBVE9SUyk7CisJYXNzZXJ0KG5vdGVfcGF0aF9sZW4gPD0gR0lUX01BWF9IRVhTWiArIEZBTk9VVF9QQVRIX1NFUEFSQVRPUlMpOwogCiAJLyogV2VhdmUgbm9uLW5vdGUgZW50cmllcyBpbnRvIG5vdGUgZW50cmllcyAqLwogCXJldHVybiAgd3JpdGVfZWFjaF9ub25fbm90ZV91bnRpbChub3RlX3BhdGgsIGQpIHx8CkBAIC05ODYsNyArOTkzLDcgQEAKIAkJY29tYmluZV9ub3Rlc19mbiBjb21iaW5lX25vdGVzLCBpbnQgZmxhZ3MpCiB7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQsIG9iamVjdF9vaWQ7Ci0JdW5zaWduZWQgbW9kZTsKKwl1bnNpZ25lZCBzaG9ydCBtb2RlOwogCXN0cnVjdCBsZWFmX25vZGUgcm9vdF90cmVlOwogCiAJaWYgKCF0KQpAQCAtMTAxMyw3ICsxMDIwLDcgQEAKIAkJcmV0dXJuOwogCWlmIChmbGFncyAmIE5PVEVTX0lOSVRfV1JJVEFCTEUgJiYgcmVhZF9yZWYobm90ZXNfcmVmLCAmb2JqZWN0X29pZCkpCiAJCWRpZSgiQ2Fubm90IHVzZSBub3RlcyByZWYgJXMiLCBub3Rlc19yZWYpOwotCWlmIChnZXRfdHJlZV9lbnRyeSgmb2JqZWN0X29pZCwgIiIsICZvaWQsICZtb2RlKSkKKwlpZiAoZ2V0X3RyZWVfZW50cnkodGhlX3JlcG9zaXRvcnksICZvYmplY3Rfb2lkLCAiIiwgJm9pZCwgJm1vZGUpKQogCQlkaWUoIkZhaWxlZCB0byByZWFkIG5vdGVzIHRyZWUgcmVmZXJlbmNlZCBieSAlcyAoJXMpIiwKIAkJICAgIG5vdGVzX3JlZiwgb2lkX3RvX2hleCgmb2JqZWN0X29pZCkpOwogCkBAIC0xMDM5LDYgKzEwNDYsMzkgQEAKIAogdm9pZCBpbml0X2Rpc3BsYXlfbm90ZXMoc3RydWN0IGRpc3BsYXlfbm90ZXNfb3B0ICpvcHQpCiB7CisJbWVtc2V0KG9wdCwgMCwgc2l6ZW9mKCpvcHQpKTsKKwlvcHQtPnVzZV9kZWZhdWx0X25vdGVzID0gLTE7Cit9CisKK3ZvaWQgZW5hYmxlX2RlZmF1bHRfZGlzcGxheV9ub3RlcyhzdHJ1Y3QgZGlzcGxheV9ub3Rlc19vcHQgKm9wdCwgaW50ICpzaG93X25vdGVzKQoreworCW9wdC0+dXNlX2RlZmF1bHRfbm90ZXMgPSAxOworCSpzaG93X25vdGVzID0gMTsKK30KKwordm9pZCBlbmFibGVfcmVmX2Rpc3BsYXlfbm90ZXMoc3RydWN0IGRpc3BsYXlfbm90ZXNfb3B0ICpvcHQsIGludCAqc2hvd19ub3RlcywKKwkJY29uc3QgY2hhciAqcmVmKSB7CisJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKKwlzdHJidWZfYWRkc3RyKCZidWYsIHJlZik7CisJZXhwYW5kX25vdGVzX3JlZigmYnVmKTsKKwlzdHJpbmdfbGlzdF9hcHBlbmQoJm9wdC0+ZXh0cmFfbm90ZXNfcmVmcywKKwkJCXN0cmJ1Zl9kZXRhY2goJmJ1ZiwgTlVMTCkpOworCSpzaG93X25vdGVzID0gMTsKK30KKwordm9pZCBkaXNhYmxlX2Rpc3BsYXlfbm90ZXMoc3RydWN0IGRpc3BsYXlfbm90ZXNfb3B0ICpvcHQsIGludCAqc2hvd19ub3RlcykKK3sKKwlvcHQtPnVzZV9kZWZhdWx0X25vdGVzID0gLTE7CisJLyogd2UgaGF2ZSBiZWVuIHN0cmR1cCdpbmcgb3Vyc2VsdmVzLCBzbyB0cmljaworCSAqIHN0cmluZ19saXN0IGludG8gZnJlZSgpaW5nIHN0cmluZ3MgKi8KKwlvcHQtPmV4dHJhX25vdGVzX3JlZnMuc3RyZHVwX3N0cmluZ3MgPSAxOworCXN0cmluZ19saXN0X2NsZWFyKCZvcHQtPmV4dHJhX25vdGVzX3JlZnMsIDApOworCW9wdC0+ZXh0cmFfbm90ZXNfcmVmcy5zdHJkdXBfc3RyaW5ncyA9IDA7CisJKnNob3dfbm90ZXMgPSAwOworfQorCit2b2lkIGxvYWRfZGlzcGxheV9ub3RlcyhzdHJ1Y3QgZGlzcGxheV9ub3Rlc19vcHQgKm9wdCkKK3sKIAljaGFyICpkaXNwbGF5X3JlZl9lbnY7CiAJaW50IGxvYWRfY29uZmlnX3JlZnMgPSAwOwogCWRpc3BsYXlfbm90ZXNfcmVmcy5zdHJkdXBfc3RyaW5ncyA9IDE7CkBAIC0xMTM3LDEwICsxMTc3LDExIEBACiAKIAkvKiBQcmVwYXJlIGZvciB0cmF2ZXJzYWwgb2YgY3VycmVudCBub3RlcyB0cmVlICovCiAJcm9vdC5uZXh0ID0gTlVMTDsgLyogbGFzdCBmb3J3YXJkIGVudHJ5IGluIGxpc3QgaXMgZ3JvdW5kZWQgKi8KLQlzdHJidWZfaW5pdCgmcm9vdC5idWYsIDI1NiAqICgzMiArIEdJVF9TSEExX0hFWFNaKSk7IC8qIGFzc3VtZSAyNTYgZW50cmllcyAqLworCXN0cmJ1Zl9pbml0KCZyb290LmJ1ZiwgMjU2ICogKDMyICsgdGhlX2hhc2hfYWxnby0+aGV4c3opKTsgLyogYXNzdW1lIDI1NiBlbnRyaWVzICovCiAJcm9vdC5wYXRoWzBdID0gcm9vdC5wYXRoWzFdID0gJ1wwJzsKIAljYl9kYXRhLnJvb3QgPSAmcm9vdDsKLQljYl9kYXRhLm5leHRfbm9uX25vdGUgPSB0LT5maXJzdF9ub25fbm90ZTsKKwljYl9kYXRhLm5uX2xpc3QgPSAmKHQtPmZpcnN0X25vbl9ub3RlKTsKKwljYl9kYXRhLm5uX3ByZXYgPSBOVUxMOwogCiAJLyogV3JpdGUgdHJlZSBvYmplY3RzIHJlcHJlc2VudGluZyBjdXJyZW50IG5vdGVzIHRyZWUgKi8KIAlmbGFncyA9IEZPUl9FQUNIX05PVEVfRE9OVF9VTlBBQ0tfU1VCVFJFRVMgfApAQCAtMTE2NSw3ICsxMjA2LDcgQEAKIAogCXdoaWxlIChsKSB7CiAJCWlmIChmbGFncyAmIE5PVEVTX1BSVU5FX1ZFUkJPU0UpCi0JCQlwcmludGYoIiVzXG4iLCBzaGExX3RvX2hleChsLT5zaGExKSk7CisJCQlwcmludGYoIiVzXG4iLCBoYXNoX3RvX2hleChsLT5zaGExKSk7CiAJCWlmICghKGZsYWdzICYgTk9URVNfUFJVTkVfRFJZUlVOKSkKIAkJCXJlbW92ZV9ub3RlKHQsIGwtPnNoYTEpOwogCQlsID0gbC0+bmV4dDsKQEAgLTEyNDIsMTAgKzEyODMsOCBAQAogCQlpZiAoIXJlZiB8fCAhc3RyY21wKHJlZiwgR0lUX05PVEVTX0RFRkFVTFRfUkVGKSkgewogCQkJc3RyYnVmX2FkZHN0cihzYiwgIlxuTm90ZXM6XG4iKTsKIAkJfSBlbHNlIHsKLQkJCWlmIChzdGFydHNfd2l0aChyZWYsICJyZWZzLyIpKQotCQkJCXJlZiArPSA1OwotCQkJaWYgKHN0YXJ0c193aXRoKHJlZiwgIm5vdGVzLyIpKQotCQkJCXJlZiArPSA2OworCQkJc2tpcF9wcmVmaXgocmVmLCAicmVmcy8iLCAmcmVmKTsKKwkJCXNraXBfcHJlZml4KHJlZiwgIm5vdGVzLyIsICZyZWYpOwogCQkJc3RyYnVmX2FkZGYoc2IsICJcbk5vdGVzICglcyk6XG4iLCByZWYpOwogCQl9CiAJfQpAQCAtMTI5NSw5ICsxMzM0LDkgQEAKIAlpZiAoc3RhcnRzX3dpdGgoc2ItPmJ1ZiwgInJlZnMvbm90ZXMvIikpCiAJCXJldHVybjsgLyogd2UncmUgaGFwcHkgKi8KIAllbHNlIGlmIChzdGFydHNfd2l0aChzYi0+YnVmLCAibm90ZXMvIikpCi0JCXN0cmJ1Zl9pbnNlcnQoc2IsIDAsICJyZWZzLyIsIDUpOworCQlzdHJidWZfaW5zZXJ0c3RyKHNiLCAwLCAicmVmcy8iKTsKIAllbHNlCi0JCXN0cmJ1Zl9pbnNlcnQoc2IsIDAsICJyZWZzL25vdGVzLyIsIDExKTsKKwkJc3RyYnVmX2luc2VydHN0cihzYiwgMCwgInJlZnMvbm90ZXMvIik7CiB9CiAKIHZvaWQgZXhwYW5kX2xvb3NlX25vdGVzX3JlZihzdHJ1Y3Qgc3RyYnVmICpzYikKZGlmZiAtLWdpdCBhL25vdGVzLmggYi9ub3Rlcy5oCmluZGV4IDQxNGJjNjguLmMxNjgyYzMgMTAwNjQ0Ci0tLSBhL25vdGVzLmgKKysrIGIvbm90ZXMuaApAQCAtMjYxLDYgKzI2MSwyNiBAQAogfTsKIAogLyoKKyAqIEluaXRpYWxpemUgYSBkaXNwbGF5X25vdGVzX29wdCB0byBpdHMgZGVmYXVsdCB2YWx1ZS4KKyAqLwordm9pZCBpbml0X2Rpc3BsYXlfbm90ZXMoc3RydWN0IGRpc3BsYXlfbm90ZXNfb3B0ICpvcHQpOworCisvKgorICogVGhpcyBmYW1pbHkgb2YgZnVuY3Rpb25zIGVuYWJsZXMgb3IgZGlzYWJsZXMgdGhlIGRpc3BsYXkgb2Ygbm90ZXMuIEluCisgKiBwYXJ0aWN1bGFyLCAnZW5hYmxlX2RlZmF1bHRfZGlzcGxheV9ub3Rlcycgd2lsbCBkaXNwbGF5IHRoZSBkZWZhdWx0IG5vdGVzLAorICogJ2VuYWJsZV9yZWZfZGlzcGxheV9ub3Rlcycgd2lsbCBkaXNwbGF5IHRoZSBub3RlcyByZWYgJ3JlZicgYW5kCisgKiAnZGlzYWJsZV9kaXNwbGF5X25vdGVzJyB3aWxsIGRpc2FibGUgbm90ZXMsIGluY2x1ZGluZyB0aG9zZSBhZGRlZCBieSBwcmV2aW91cworICogaW52b2NhdGlvbnMgb2YgdGhlICdlbmFibGVfKl9kaXNwbGF5X25vdGVzJyBmdW5jdGlvbnMuCisgKgorICogJ3Nob3dfbm90ZXMnIGlzIGEgcG9pbnRlciB0byBhIGJvb2xlYW4gd2hpY2ggd2lsbCBiZSBzZXQgdG8gMSBpZiBub3RlcyBhcmUKKyAqIGRpc3BsYXllZCwgZWxzZSAwLiBJdCBtdXN0IG5vdCBiZSBOVUxMLgorICovCit2b2lkIGVuYWJsZV9kZWZhdWx0X2Rpc3BsYXlfbm90ZXMoc3RydWN0IGRpc3BsYXlfbm90ZXNfb3B0ICpvcHQsIGludCAqc2hvd19ub3Rlcyk7Cit2b2lkIGVuYWJsZV9yZWZfZGlzcGxheV9ub3RlcyhzdHJ1Y3QgZGlzcGxheV9ub3Rlc19vcHQgKm9wdCwgaW50ICpzaG93X25vdGVzLAorCQljb25zdCBjaGFyICpyZWYpOwordm9pZCBkaXNhYmxlX2Rpc3BsYXlfbm90ZXMoc3RydWN0IGRpc3BsYXlfbm90ZXNfb3B0ICpvcHQsIGludCAqc2hvd19ub3Rlcyk7CisKKy8qCiAgKiBMb2FkIHRoZSBub3RlcyBtYWNoaW5lcnkgZm9yIGRpc3BsYXlpbmcgc2V2ZXJhbCBub3RlcyB0cmVlcy4KICAqCiAgKiBJZiAnb3B0JyBpcyBub3QgTlVMTCwgdGhlbiBpdCBzcGVjaWZpZXMgYWRkaXRpb25hbCBzZXR0aW5ncyBmb3IgdGhlCkBAIC0yNzIsMTggKzI5MiwxNiBAQAogICogLSBleHRyYV9ub3Rlc19yZWZzIG1heSBjb250YWluIGEgbGlzdCBvZiBnbG9icyAoaW4gdGhlIHNhbWUgc3R5bGUKICAqICAgYXMgbm90ZXMuZGlzcGxheVJlZikgd2hlcmUgbm90ZXMgc2hvdWxkIGJlIGxvYWRlZCBmcm9tLgogICovCi12b2lkIGluaXRfZGlzcGxheV9ub3RlcyhzdHJ1Y3QgZGlzcGxheV9ub3Rlc19vcHQgKm9wdCk7Cit2b2lkIGxvYWRfZGlzcGxheV9ub3RlcyhzdHJ1Y3QgZGlzcGxheV9ub3Rlc19vcHQgKm9wdCk7CiAKIC8qCiAgKiBBcHBlbmQgbm90ZXMgZm9yIHRoZSBnaXZlbiAnb2JqZWN0X3NoYTEnIGZyb20gYWxsIHRyZWVzIHNldCB1cCBieQotICogaW5pdF9kaXNwbGF5X25vdGVzKCkgdG8gJ3NiJy4gIFRoZSAnZmxhZ3MnIGFyZSBhIGJpdHdpc2UKLSAqIGNvbWJpbmF0aW9uIG9mCisgKiBsb2FkX2Rpc3BsYXlfbm90ZXMoKSB0byAnc2InLgogICoKLSAqIC0gTk9URVNfU0hPV19IRUFERVI6IGFkZCBhICdOb3RlcyAocmVmbmFtZSk6JyBoZWFkZXIKKyAqIElmICdyYXcnIGlzIGZhbHNlIHRoZSBub3RlIHdpbGwgYmUgaW5kZW50ZWQgYnkgNCBwbGFjZXMgYW5kCisgKiBhICdOb3RlcyAocmVmbmFtZSk6JyBoZWFkZXIgYWRkZWQuCiAgKgotICogLSBOT1RFU19JTkRFTlQ6IGluZGVudCB0aGUgbm90ZXMgYnkgNCBwbGFjZXMKLSAqCi0gKiBZb3UgKm11c3QqIGNhbGwgaW5pdF9kaXNwbGF5X25vdGVzKCkgYmVmb3JlIHVzaW5nIHRoaXMgZnVuY3Rpb24uCisgKiBZb3UgKm11c3QqIGNhbGwgbG9hZF9kaXNwbGF5X25vdGVzKCkgYmVmb3JlIHVzaW5nIHRoaXMgZnVuY3Rpb24uCiAgKi8KIHZvaWQgZm9ybWF0X2Rpc3BsYXlfbm90ZXMoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2JqZWN0X29pZCwKIAkJCSAgc3RydWN0IHN0cmJ1ZiAqc2IsIGNvbnN0IGNoYXIgKm91dHB1dF9lbmNvZGluZywgaW50IHJhdyk7CmRpZmYgLS1naXQgYS9vYmplY3Qtc3RvcmUuaCBiL29iamVjdC1zdG9yZS5oCmluZGV4IDYzYjc2MDUuLmJlNzJmZWUgMTAwNjQ0Ci0tLSBhL29iamVjdC1zdG9yZS5oCisrKyBiL29iamVjdC1zdG9yZS5oCkBAIC02LDQwICs2LDM2IEBACiAjaW5jbHVkZSAibGlzdC5oIgogI2luY2x1ZGUgInNoYTEtYXJyYXkuaCIKICNpbmNsdWRlICJzdHJidWYuaCIKKyNpbmNsdWRlICJ0aHJlYWQtdXRpbHMuaCIKIAotc3RydWN0IGFsdGVybmF0ZV9vYmplY3RfZGF0YWJhc2UgewotCXN0cnVjdCBhbHRlcm5hdGVfb2JqZWN0X2RhdGFiYXNlICpuZXh0OwotCi0JLyogc2VlIGFsdF9zY3JhdGNoX2J1ZigpICovCi0Jc3RydWN0IHN0cmJ1ZiBzY3JhdGNoOwotCXNpemVfdCBiYXNlX2xlbjsKK3N0cnVjdCBvYmplY3RfZGlyZWN0b3J5IHsKKwlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqbmV4dDsKIAogCS8qCi0JICogVXNlZCB0byBzdG9yZSB0aGUgcmVzdWx0cyBvZiByZWFkZGlyKDMpIGNhbGxzIHdoZW4gc2VhcmNoaW5nCi0JICogZm9yIHVuaXF1ZSBhYmJyZXZpYXRlZCBoYXNoZXMuICBUaGlzIGNhY2hlIGlzIG5ldmVyCi0JICogaW52YWxpZGF0ZWQsIHRodXMgaXQncyByYWN5IGFuZCBub3QgbmVjZXNzYXJpbHkgYWNjdXJhdGUuCi0JICogVGhhdCdzIGZpbmUgZm9yIGl0cyBwdXJwb3NlOyBkb24ndCB1c2UgaXQgZm9yIHRhc2tzIHJlcXVpcmluZwotCSAqIGdyZWF0ZXIgYWNjdXJhY3khCisJICogVXNlZCB0byBzdG9yZSB0aGUgcmVzdWx0cyBvZiByZWFkZGlyKDMpIGNhbGxzIHdoZW4gd2UgYXJlIE9LCisJICogc2FjcmlmaWNpbmcgYWNjdXJhY3kgZHVlIHRvIHJhY2VzIGZvciBzcGVlZC4gVGhhdCBpbmNsdWRlcworCSAqIG9iamVjdCBleGlzdGVuY2Ugd2l0aCBPQkpFQ1RfSU5GT19RVUlDSywgYXMgd2VsbCBhcworCSAqIG91ciBzZWFyY2ggZm9yIHVuaXF1ZSBhYmJyZXZpYXRlZCBoYXNoZXMuIERvbid0IHVzZSBpdCBmb3IgdGFza3MKKwkgKiByZXF1aXJpbmcgZ3JlYXRlciBhY2N1cmFjeSEKKwkgKgorCSAqIEJlIHN1cmUgdG8gY2FsbCBvZGJfbG9hZF9sb29zZV9jYWNoZSgpIGJlZm9yZSB1c2luZy4KIAkgKi8KIAljaGFyIGxvb3NlX29iamVjdHNfc3ViZGlyX3NlZW5bMjU2XTsKLQlzdHJ1Y3Qgb2lkX2FycmF5IGxvb3NlX29iamVjdHNfY2FjaGU7CisJc3RydWN0IG9pZF9hcnJheSBsb29zZV9vYmplY3RzX2NhY2hlWzI1Nl07CiAKIAkvKgogCSAqIFBhdGggdG8gdGhlIGFsdGVybmF0aXZlIG9iamVjdCBzdG9yZS4gSWYgdGhpcyBpcyBhIHJlbGF0aXZlIHBhdGgsCiAJICogaXQgaXMgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuCiAJICovCi0JY2hhciBwYXRoW0ZMRVhfQVJSQVldOworCWNoYXIgKnBhdGg7CiB9OworCiB2b2lkIHByZXBhcmVfYWx0X29kYihzdHJ1Y3QgcmVwb3NpdG9yeSAqcik7CiBjaGFyICpjb21wdXRlX2FsdGVybmF0ZV9wYXRoKGNvbnN0IGNoYXIgKnBhdGgsIHN0cnVjdCBzdHJidWYgKmVycik7Ci10eXBlZGVmIGludCBhbHRfb2RiX2ZuKHN0cnVjdCBhbHRlcm5hdGVfb2JqZWN0X2RhdGFiYXNlICosIHZvaWQgKik7Cit0eXBlZGVmIGludCBhbHRfb2RiX2ZuKHN0cnVjdCBvYmplY3RfZGlyZWN0b3J5ICosIHZvaWQgKik7CiBpbnQgZm9yZWFjaF9hbHRfb2RiKGFsdF9vZGJfZm4sIHZvaWQqKTsKLQotLyoKLSAqIEFsbG9jYXRlIGEgInN0cnVjdCBhbHRlcm5hdGVfb2JqZWN0X2RhdGFiYXNlIiBidXQgZG8gX25vdF8gYWN0dWFsbHkKLSAqIGFkZCBpdCB0byB0aGUgbGlzdCBvZiBhbHRlcm5hdGVzLgotICovCi1zdHJ1Y3QgYWx0ZXJuYXRlX29iamVjdF9kYXRhYmFzZSAqYWxsb2NfYWx0X29kYihjb25zdCBjaGFyICpkaXIpOwordHlwZWRlZiB2b2lkIGFsdGVybmF0ZV9yZWZfZm4oY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCB2b2lkICopOwordm9pZCBmb3JfZWFjaF9hbHRlcm5hdGVfcmVmKGFsdGVybmF0ZV9yZWZfZm4sIHZvaWQgKik7CiAKIC8qCiAgKiBBZGQgdGhlIGRpcmVjdG9yeSB0byB0aGUgb24tZGlzayBhbHRlcm5hdGVzIGZpbGU7IHRoZSBuZXcgZW50cnkgd2lsbCBhbHNvCkBAIC01NSwxNCArNTEsMTcgQEAKIHZvaWQgYWRkX3RvX2FsdGVybmF0ZXNfbWVtb3J5KGNvbnN0IGNoYXIgKmRpcik7CiAKIC8qCi0gKiBSZXR1cm5zIGEgc2NyYXRjaCBzdHJidWYgcHJlLWZpbGxlZCB3aXRoIHRoZSBhbHRlcm5hdGUgb2JqZWN0IGRpcmVjdG9yeSwKLSAqIGluY2x1ZGluZyBhIHRyYWlsaW5nIHNsYXNoLCB3aGljaCBjYW4gYmUgdXNlZCB0byBhY2Nlc3MgcGF0aHMgaW4gdGhlCi0gKiBhbHRlcm5hdGUuIEFsd2F5cyB1c2UgdGhpcyBvdmVyIGRpcmVjdCBhY2Nlc3MgdG8gYWx0LT5zY3JhdGNoLCBhcyBpdAotICogY2xlYW5zIHVwIGFueSBwcmV2aW91cyB1c2Ugb2YgdGhlIHNjcmF0Y2ggYnVmZmVyLgorICogUG9wdWxhdGUgYW5kIHJldHVybiB0aGUgbG9vc2Ugb2JqZWN0IGNhY2hlIGFycmF5IGNvcnJlc3BvbmRpbmcgdG8gdGhlCisgKiBnaXZlbiBvYmplY3QgSUQuCiAgKi8KLXN0cnVjdCBzdHJidWYgKmFsdF9zY3JhdGNoX2J1ZihzdHJ1Y3QgYWx0ZXJuYXRlX29iamVjdF9kYXRhYmFzZSAqYWx0KTsKK3N0cnVjdCBvaWRfYXJyYXkgKm9kYl9sb29zZV9jYWNoZShzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiLAorCQkJCSAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKKworLyogRW1wdHkgdGhlIGxvb3NlIG9iamVjdCBjYWNoZSBmb3IgdGhlIHNwZWNpZmllZCBvYmplY3QgZGlyZWN0b3J5LiAqLwordm9pZCBvZGJfY2xlYXJfbG9vc2VfY2FjaGUoc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKm9kYik7CiAKIHN0cnVjdCBwYWNrZWRfZ2l0IHsKKwlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSBwYWNrbWFwX2VudDsKIAlzdHJ1Y3QgcGFja2VkX2dpdCAqbmV4dDsKIAlzdHJ1Y3QgbGlzdF9oZWFkIG1ydTsKIAlzdHJ1Y3QgcGFja193aW5kb3cgKndpbmRvd3M7CkBAIC04MSw4ICs4MCw5IEBACiAJCSBwYWNrX2tlZXBfaW5fY29yZToxLAogCQkgZnJlc2hlbmVkOjEsCiAJCSBkb19ub3RfY2xvc2U6MSwKLQkJIHBhY2tfcHJvbWlzb3I6MTsKLQl1bnNpZ25lZCBjaGFyIHNoYTFbMjBdOworCQkgcGFja19wcm9taXNvcjoxLAorCQkgbXVsdGlfcGFja19pbmRleDoxOworCXVuc2lnbmVkIGNoYXIgaGFzaFtHSVRfTUFYX1JBV1NaXTsKIAlzdHJ1Y3QgcmV2aW5kZXhfZW50cnkgKnJldmluZGV4OwogCS8qIHNvbWV0aGluZyBsaWtlICIuZ2l0L29iamVjdHMvcGFjay94eHh4eC5wYWNrIiAqLwogCWNoYXIgcGFja19uYW1lW0ZMRVhfQVJSQVldOyAvKiBtb3JlICovCkBAIC05MCwyNCArOTAsNDQgQEAKIAogc3RydWN0IG11bHRpX3BhY2tfaW5kZXg7CiAKK3N0YXRpYyBpbmxpbmUgaW50IHBhY2tfbWFwX2VudHJ5X2NtcChjb25zdCB2b2lkICp1bnVzZWRfY21wX2RhdGEsCisJCQkJICAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnksCisJCQkJICAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnkyLAorCQkJCSAgICAgY29uc3Qgdm9pZCAqa2V5ZGF0YSkKK3sKKwljb25zdCBjaGFyICprZXkgPSBrZXlkYXRhOworCWNvbnN0IHN0cnVjdCBwYWNrZWRfZ2l0ICpwZzEsICpwZzI7CisKKwlwZzEgPSBjb250YWluZXJfb2YoZW50cnksIGNvbnN0IHN0cnVjdCBwYWNrZWRfZ2l0LCBwYWNrbWFwX2VudCk7CisJcGcyID0gY29udGFpbmVyX29mKGVudHJ5MiwgY29uc3Qgc3RydWN0IHBhY2tlZF9naXQsIHBhY2ttYXBfZW50KTsKKworCXJldHVybiBzdHJjbXAocGcxLT5wYWNrX25hbWUsIGtleSA/IGtleSA6IHBnMi0+cGFja19uYW1lKTsKK30KKwogc3RydWN0IHJhd19vYmplY3Rfc3RvcmUgewogCS8qCi0JICogUGF0aCB0byB0aGUgcmVwb3NpdG9yeSdzIG9iamVjdCBzdG9yZS4KLQkgKiBDYW5ub3QgYmUgTlVMTCBhZnRlciBpbml0aWFsaXphdGlvbi4KKwkgKiBTZXQgb2YgYWxsIG9iamVjdCBkaXJlY3RvcmllczsgdGhlIG1haW4gZGlyZWN0b3J5IGlzIGZpcnN0IChhbmQKKwkgKiBjYW5ub3QgYmUgTlVMTCBhZnRlciBpbml0aWFsaXphdGlvbikuIFN1YnNlcXVlbnQgZGlyZWN0b3JpZXMgYXJlCisJICogYWx0ZXJuYXRlcy4KIAkgKi8KLQljaGFyICpvYmplY3RkaXI7CisJc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKm9kYjsKKwlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqKm9kYl90YWlsOworCWludCBsb2FkZWRfYWx0ZXJuYXRlczsKIAotCS8qIFBhdGggdG8gZXh0cmEgYWx0ZXJuYXRlIG9iamVjdCBkYXRhYmFzZSBpZiBub3QgTlVMTCAqLworCS8qCisJICogQSBsaXN0IG9mIGFsdGVybmF0ZSBvYmplY3QgZGlyZWN0b3JpZXMgbG9hZGVkIGZyb20gdGhlIGVudmlyb25tZW50OworCSAqIHRoaXMgc2hvdWxkIG5vdCBnZW5lcmFsbHkgbmVlZCB0byBiZSBhY2Nlc3NlZCBkaXJlY3RseSwgYnV0IHdpbGwKKwkgKiBwb3B1bGF0ZSB0aGUgIm9kYiIgbGlzdCB3aGVuIHByZXBhcmVfYWx0X29kYigpIGlzIHJ1bi4KKwkgKi8KIAljaGFyICphbHRlcm5hdGVfZGI7CiAKLQlzdHJ1Y3QgYWx0ZXJuYXRlX29iamVjdF9kYXRhYmFzZSAqYWx0X29kYl9saXN0OwotCXN0cnVjdCBhbHRlcm5hdGVfb2JqZWN0X2RhdGFiYXNlICoqYWx0X29kYl90YWlsOwotCiAJLyoKIAkgKiBPYmplY3RzIHRoYXQgc2hvdWxkIGJlIHN1YnN0aXR1dGVkIGJ5IG90aGVyIG9iamVjdHMKIAkgKiAoc2VlIGdpdC1yZXBsYWNlKDEpKS4KIAkgKi8KIAlzdHJ1Y3Qgb2lkbWFwICpyZXBsYWNlX21hcDsKKwl1bnNpZ25lZCByZXBsYWNlX21hcF9pbml0aWFsaXplZCA6IDE7CisJcHRocmVhZF9tdXRleF90IHJlcGxhY2VfbXV0ZXg7IC8qIHByb3RlY3Qgb2JqZWN0IHJlcGxhY2UgZnVuY3Rpb25zICovCiAKIAlzdHJ1Y3QgY29tbWl0X2dyYXBoICpjb21taXRfZ3JhcGg7CiAJdW5zaWduZWQgY29tbWl0X2dyYXBoX2F0dGVtcHRlZCA6IDE7IC8qIGlmIGxvYWRpbmcgaGFzIGJlZW4gYXR0ZW1wdGVkICovCkBAIC0xMzAsMTAgKzE1MCwxMCBAQAogCXN0cnVjdCBsaXN0X2hlYWQgcGFja2VkX2dpdF9tcnU7CiAKIAkvKgotCSAqIEEgbGlua2VkIGxpc3QgY29udGFpbmluZyBhbGwgcGFja2ZpbGVzLCBzdGFydGluZyB3aXRoIHRob3NlCi0JICogY29udGFpbmVkIGluIHRoZSBtdWx0aV9wYWNrX2luZGV4LgorCSAqIEEgbWFwIG9mIHBhY2tmaWxlcyB0byBwYWNrZWRfZ2l0IHN0cnVjdHMgZm9yIHRyYWNraW5nIHdoaWNoCisJICogcGFja3MgaGF2ZSBiZWVuIGxvYWRlZCBhbHJlYWR5LgogCSAqLwotCXN0cnVjdCBwYWNrZWRfZ2l0ICphbGxfcGFja3M7CisJc3RydWN0IGhhc2htYXAgcGFja19tYXA7CiAKIAkvKgogCSAqIEEgZmFzdCwgcm91Z2ggY291bnQgb2YgdGhlIG51bWJlciBvZiBvYmplY3RzIGluIHRoZSByZXBvc2l0b3J5LgpAQCAtMTU1LDM3ICsxNzUsNTUgQEAKIAogLyoKICAqIFB1dCBpbiBgYnVmYCB0aGUgbmFtZSBvZiB0aGUgZmlsZSBpbiB0aGUgbG9jYWwgb2JqZWN0IGRhdGFiYXNlIHRoYXQKLSAqIHdvdWxkIGJlIHVzZWQgdG8gc3RvcmUgYSBsb29zZSBvYmplY3Qgd2l0aCB0aGUgc3BlY2lmaWVkIHNoYTEuCisgKiB3b3VsZCBiZSB1c2VkIHRvIHN0b3JlIGEgbG9vc2Ugb2JqZWN0IHdpdGggdGhlIHNwZWNpZmllZCBvaWQuCiAgKi8KLXZvaWQgc2hhMV9maWxlX25hbWUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBzdHJidWYgKmJ1ZiwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSk7Citjb25zdCBjaGFyICpsb29zZV9vYmplY3RfcGF0aChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHN0cmJ1ZiAqYnVmLAorCQkJICAgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKIAotdm9pZCAqbWFwX3NoYTFfZmlsZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwgdW5zaWduZWQgbG9uZyAqc2l6ZSk7Cit2b2lkICptYXBfbG9vc2Vfb2JqZWN0KHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCSAgICAgICB1bnNpZ25lZCBsb25nICpzaXplKTsKIAotZXh0ZXJuIHZvaWQgKnJlYWRfb2JqZWN0X2ZpbGVfZXh0ZW5kZWQoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAotCQkJCSAgICAgICBlbnVtIG9iamVjdF90eXBlICp0eXBlLAotCQkJCSAgICAgICB1bnNpZ25lZCBsb25nICpzaXplLCBpbnQgbG9va3VwX3JlcGxhY2UpOwotc3RhdGljIGlubGluZSB2b2lkICpyZWFkX29iamVjdF9maWxlKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgZW51bSBvYmplY3RfdHlwZSAqdHlwZSwgdW5zaWduZWQgbG9uZyAqc2l6ZSkKK3ZvaWQgKnJlYWRfb2JqZWN0X2ZpbGVfZXh0ZW5kZWQoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJCWVudW0gb2JqZWN0X3R5cGUgKnR5cGUsCisJCQkJdW5zaWduZWQgbG9uZyAqc2l6ZSwgaW50IGxvb2t1cF9yZXBsYWNlKTsKK3N0YXRpYyBpbmxpbmUgdm9pZCAqcmVwb19yZWFkX29iamVjdF9maWxlKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQkgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCQkJICBlbnVtIG9iamVjdF90eXBlICp0eXBlLAorCQkJCQkgIHVuc2lnbmVkIGxvbmcgKnNpemUpCiB7Ci0JcmV0dXJuIHJlYWRfb2JqZWN0X2ZpbGVfZXh0ZW5kZWQob2lkLCB0eXBlLCBzaXplLCAxKTsKKwlyZXR1cm4gcmVhZF9vYmplY3RfZmlsZV9leHRlbmRlZChyLCBvaWQsIHR5cGUsIHNpemUsIDEpOwogfQorI2lmbmRlZiBOT19USEVfUkVQT1NJVE9SWV9DT01QQVRJQklMSVRZX01BQ1JPUworI2RlZmluZSByZWFkX29iamVjdF9maWxlKG9pZCwgdHlwZSwgc2l6ZSkgcmVwb19yZWFkX29iamVjdF9maWxlKHRoZV9yZXBvc2l0b3J5LCBvaWQsIHR5cGUsIHNpemUpCisjZW5kaWYKIAogLyogUmVhZCBhbmQgdW5wYWNrIGFuIG9iamVjdCBmaWxlIGludG8gbWVtb3J5LCB3cml0ZSBtZW1vcnkgdG8gYW4gb2JqZWN0IGZpbGUgKi8KIGludCBvaWRfb2JqZWN0X2luZm8oc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKiwgdW5zaWduZWQgbG9uZyAqKTsKIAotZXh0ZXJuIGludCBoYXNoX29iamVjdF9maWxlKGNvbnN0IHZvaWQgKmJ1ZiwgdW5zaWduZWQgbG9uZyBsZW4sCi0JCQkgICAgY29uc3QgY2hhciAqdHlwZSwgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKK2ludCBoYXNoX29iamVjdF9maWxlKGNvbnN0IHN0cnVjdCBnaXRfaGFzaF9hbGdvICphbGdvLCBjb25zdCB2b2lkICpidWYsCisJCSAgICAgdW5zaWduZWQgbG9uZyBsZW4sIGNvbnN0IGNoYXIgKnR5cGUsCisJCSAgICAgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKIAotZXh0ZXJuIGludCB3cml0ZV9vYmplY3RfZmlsZShjb25zdCB2b2lkICpidWYsIHVuc2lnbmVkIGxvbmcgbGVuLAotCQkJICAgICBjb25zdCBjaGFyICp0eXBlLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOworaW50IHdyaXRlX29iamVjdF9maWxlKGNvbnN0IHZvaWQgKmJ1ZiwgdW5zaWduZWQgbG9uZyBsZW4sCisJCSAgICAgIGNvbnN0IGNoYXIgKnR5cGUsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CiAKLWV4dGVybiBpbnQgaGFzaF9vYmplY3RfZmlsZV9saXRlcmFsbHkoY29uc3Qgdm9pZCAqYnVmLCB1bnNpZ25lZCBsb25nIGxlbiwKLQkJCQkgICAgICBjb25zdCBjaGFyICp0eXBlLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCi0JCQkJICAgICAgdW5zaWduZWQgZmxhZ3MpOworaW50IGhhc2hfb2JqZWN0X2ZpbGVfbGl0ZXJhbGx5KGNvbnN0IHZvaWQgKmJ1ZiwgdW5zaWduZWQgbG9uZyBsZW4sCisJCQkgICAgICAgY29uc3QgY2hhciAqdHlwZSwgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJICAgICAgIHVuc2lnbmVkIGZsYWdzKTsKIAotZXh0ZXJuIGludCBwcmV0ZW5kX29iamVjdF9maWxlKHZvaWQgKiwgdW5zaWduZWQgbG9uZywgZW51bSBvYmplY3RfdHlwZSwKLQkJCSAgICAgICBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOworLyoKKyAqIEFkZCBhbiBvYmplY3QgZmlsZSB0byB0aGUgaW4tbWVtb3J5IG9iamVjdCBzdG9yZSwgd2l0aG91dCB3cml0aW5nIGl0CisgKiB0byBkaXNrLgorICoKKyAqIENhbGxlcnMgYXJlIHJlc3BvbnNpYmxlIGZvciBjYWxsaW5nIHdyaXRlX29iamVjdF9maWxlIHRvIHJlY29yZCB0aGUKKyAqIG9iamVjdCBpbiBwZXJzaXN0ZW50IHN0b3JhZ2UgYmVmb3JlIHdyaXRpbmcgYW55IG90aGVyIG5ldyBvYmplY3RzCisgKiB0aGF0IHJlZmVyZW5jZSBpdC4KKyAqLworaW50IHByZXRlbmRfb2JqZWN0X2ZpbGUodm9pZCAqLCB1bnNpZ25lZCBsb25nLCBlbnVtIG9iamVjdF90eXBlLAorCQkJc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKIAotZXh0ZXJuIGludCBmb3JjZV9vYmplY3RfbG9vc2UoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCB0aW1lX3QgbXRpbWUpOworaW50IGZvcmNlX29iamVjdF9sb29zZShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHRpbWVfdCBtdGltZSk7CiAKIC8qCiAgKiBPcGVuIHRoZSBsb29zZSBvYmplY3QgYXQgcGF0aCwgY2hlY2sgaXRzIGhhc2gsIGFuZCByZXR1cm4gdGhlIGNvbnRlbnRzLApAQCAtMjAwLDM2ICsyMzgsNjkgQEAKIAkJICAgICAgdW5zaWduZWQgbG9uZyAqc2l6ZSwKIAkJICAgICAgdm9pZCAqKmNvbnRlbnRzKTsKIAotLyoKLSAqIENvbnZlbmllbmNlIGZvciBzaGExX29iamVjdF9pbmZvX2V4dGVuZGVkKCkgd2l0aCBhIE5VTEwgc3RydWN0Ci0gKiBvYmplY3RfaW5mby4gT0JKRUNUX0lORk9fU0tJUF9DQUNIRUQgaXMgYXV0b21hdGljYWxseSBzZXQ7IHBhc3MKLSAqIG5vbnplcm8gZmxhZ3MgdG8gYWxzbyBzZXQgb3RoZXIgZmxhZ3MuCi0gKi8KLWV4dGVybiBpbnQgaGFzX3NoYTFfZmlsZV93aXRoX2ZsYWdzKGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsIGludCBmbGFncyk7Ci1zdGF0aWMgaW5saW5lIGludCBoYXNfc2hhMV9maWxlKGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpCi17Ci0JcmV0dXJuIGhhc19zaGExX2ZpbGVfd2l0aF9mbGFncyhzaGExLCAwKTsKLX0KKyNpZm5kZWYgTk9fVEhFX1JFUE9TSVRPUllfQ09NUEFUSUJJTElUWV9NQUNST1MKKyNkZWZpbmUgaGFzX3NoYTFfZmlsZV93aXRoX2ZsYWdzKHNoYTEsIGZsYWdzKSByZXBvX2hhc19zaGExX2ZpbGVfd2l0aF9mbGFncyh0aGVfcmVwb3NpdG9yeSwgc2hhMSwgZmxhZ3MpCisjZGVmaW5lIGhhc19zaGExX2ZpbGUoc2hhMSkgcmVwb19oYXNfc2hhMV9maWxlKHRoZV9yZXBvc2l0b3J5LCBzaGExKQorI2VuZGlmCiAKIC8qIFNhbWUgYXMgdGhlIGFib3ZlLCBleGNlcHQgZm9yIHN0cnVjdCBvYmplY3RfaWQuICovCi1leHRlcm4gaW50IGhhc19vYmplY3RfZmlsZShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOwotZXh0ZXJuIGludCBoYXNfb2JqZWN0X2ZpbGVfd2l0aF9mbGFncyhjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGludCBmbGFncyk7CitpbnQgcmVwb19oYXNfb2JqZWN0X2ZpbGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CitpbnQgcmVwb19oYXNfb2JqZWN0X2ZpbGVfd2l0aF9mbGFncyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBpbnQgZmxhZ3MpOworI2lmbmRlZiBOT19USEVfUkVQT1NJVE9SWV9DT01QQVRJQklMSVRZX01BQ1JPUworI2RlZmluZSBoYXNfb2JqZWN0X2ZpbGUob2lkKSByZXBvX2hhc19vYmplY3RfZmlsZSh0aGVfcmVwb3NpdG9yeSwgb2lkKQorI2RlZmluZSBoYXNfb2JqZWN0X2ZpbGVfd2l0aF9mbGFncyhvaWQsIGZsYWdzKSByZXBvX2hhc19vYmplY3RfZmlsZV93aXRoX2ZsYWdzKHRoZV9yZXBvc2l0b3J5LCBvaWQsIGZsYWdzKQorI2VuZGlmCiAKIC8qCiAgKiBSZXR1cm4gdHJ1ZSBpZmYgYW4gYWx0ZXJuYXRlIG9iamVjdCBkYXRhYmFzZSBoYXMgYSBsb29zZSBvYmplY3QKICAqIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLiAgVGhpcyBmdW5jdGlvbiBkb2VzIG5vdCByZXNwZWN0IHJlcGxhY2UKICAqIHJlZmVyZW5jZXMuCiAgKi8KLWV4dGVybiBpbnQgaGFzX2xvb3NlX29iamVjdF9ub25sb2NhbChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICopOworaW50IGhhc19sb29zZV9vYmplY3Rfbm9ubG9jYWwoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqKTsKIAotZXh0ZXJuIHZvaWQgYXNzZXJ0X29pZF90eXBlKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgZW51bSBvYmplY3RfdHlwZSBleHBlY3QpOwordm9pZCBhc3NlcnRfb2lkX3R5cGUoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBlbnVtIG9iamVjdF90eXBlIGV4cGVjdCk7CisKKy8qCisgKiBFbmFibGluZyB0aGUgb2JqZWN0IHJlYWQgbG9jayBhbGxvd3MgbXVsdGlwbGUgdGhyZWFkcyB0byBzYWZlbHkgY2FsbCB0aGUKKyAqIGZvbGxvd2luZyBmdW5jdGlvbnMgaW4gcGFyYWxsZWw6IHJlcG9fcmVhZF9vYmplY3RfZmlsZSgpLCByZWFkX29iamVjdF9maWxlKCksCisgKiByZWFkX29iamVjdF9maWxlX2V4dGVuZGVkKCksIHJlYWRfb2JqZWN0X3dpdGhfcmVmZXJlbmNlKCksIHJlYWRfb2JqZWN0KCksCisgKiBvaWRfb2JqZWN0X2luZm8oKSBhbmQgb2lkX29iamVjdF9pbmZvX2V4dGVuZGVkKCkuCisgKgorICogb2JqX3JlYWRfbG9jaygpIGFuZCBvYmpfcmVhZF91bmxvY2soKSBtYXkgYWxzbyBiZSB1c2VkIHRvIHByb3RlY3Qgb3RoZXIKKyAqIHNlY3Rpb24gd2hpY2ggY2Fubm90IGV4ZWN1dGUgaW4gcGFyYWxsZWwgd2l0aCBvYmplY3QgcmVhZGluZy4gU2luY2UgdGhlIHVzZWQKKyAqIGxvY2sgaXMgYSByZWN1cnNpdmUgbXV0ZXgsIHRoZXNlIHNlY3Rpb25zIGNhbiBldmVuIGNvbnRhaW4gY2FsbHMgdG8gb2JqZWN0CisgKiByZWFkaW5nIGZ1bmN0aW9ucy4gSG93ZXZlciwgYmV3YXJlIHRoYXQgaW4gdGhlc2UgY2FzZXMgemxpYiBpbmZsYXRpb24gd29uJ3QKKyAqIGJlIHBlcmZvcm1lZCBpbiBwYXJhbGxlbCwgbG9zaW5nIHBlcmZvcm1hbmNlLgorICoKKyAqIFRPRE86IG9pZF9vYmplY3RfaW5mb19leHRlbmRlZCgpJ3MgY2FsbCBzdGFjayBoYXMgYSByZWN1cnNpdmUgYmVoYXZpb3IuIElmCisgKiBhbnkgb2YgaXRzIGNhbGxlZXMgZW5kIHVwIGNhbGxpbmcgaXQsIHRoaXMgcmVjdXJzaXZlIGNhbGwgd29uJ3QgYmVuZWZpdCBmcm9tCisgKiBwYXJhbGxlbCBpbmZsYXRpb24uCisgKi8KK3ZvaWQgZW5hYmxlX29ial9yZWFkX2xvY2sodm9pZCk7Cit2b2lkIGRpc2FibGVfb2JqX3JlYWRfbG9jayh2b2lkKTsKKworZXh0ZXJuIGludCBvYmpfcmVhZF91c2VfbG9jazsKK2V4dGVybiBwdGhyZWFkX211dGV4X3Qgb2JqX3JlYWRfbXV0ZXg7CisKK3N0YXRpYyBpbmxpbmUgdm9pZCBvYmpfcmVhZF9sb2NrKHZvaWQpCit7CisJaWYob2JqX3JlYWRfdXNlX2xvY2spCisJCXB0aHJlYWRfbXV0ZXhfbG9jaygmb2JqX3JlYWRfbXV0ZXgpOworfQorCitzdGF0aWMgaW5saW5lIHZvaWQgb2JqX3JlYWRfdW5sb2NrKHZvaWQpCit7CisJaWYob2JqX3JlYWRfdXNlX2xvY2spCisJCXB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZvYmpfcmVhZF9tdXRleCk7Cit9CiAKIHN0cnVjdCBvYmplY3RfaW5mbyB7CiAJLyogUmVxdWVzdCAqLwogCWVudW0gb2JqZWN0X3R5cGUgKnR5cGVwOwogCXVuc2lnbmVkIGxvbmcgKnNpemVwOwogCW9mZl90ICpkaXNrX3NpemVwOwotCXVuc2lnbmVkIGNoYXIgKmRlbHRhX2Jhc2Vfc2hhMTsKKwlzdHJ1Y3Qgb2JqZWN0X2lkICpkZWx0YV9iYXNlX29pZDsKIAlzdHJ1Y3Qgc3RyYnVmICp0eXBlX25hbWU7CiAJdm9pZCAqKmNvbnRlbnRwOwogCkBAIC0yNjcsMTIgKzMzOCwyMCBAQAogI2RlZmluZSBPQkpFQ1RfSU5GT19MT09LVVBfUkVQTEFDRSAxCiAvKiBBbGxvdyByZWFkaW5nIGZyb20gYSBsb29zZSBvYmplY3QgZmlsZSBvZiB1bmtub3duL2JvZ3VzIHR5cGUgKi8KICNkZWZpbmUgT0JKRUNUX0lORk9fQUxMT1dfVU5LTk9XTl9UWVBFIDIKLS8qIERvIG5vdCBjaGVjayBjYWNoZWQgc3RvcmFnZSAqLwotI2RlZmluZSBPQkpFQ1RfSU5GT19TS0lQX0NBQ0hFRCA0CiAvKiBEbyBub3QgcmV0cnkgcGFja2VkIHN0b3JhZ2UgYWZ0ZXIgY2hlY2tpbmcgcGFja2VkIGFuZCBsb29zZSBzdG9yYWdlICovCiAjZGVmaW5lIE9CSkVDVF9JTkZPX1FVSUNLIDgKIC8qIERvIG5vdCBjaGVjayBsb29zZSBvYmplY3QgKi8KICNkZWZpbmUgT0JKRUNUX0lORk9fSUdOT1JFX0xPT1NFIDE2CisvKgorICogRG8gbm90IGF0dGVtcHQgdG8gZmV0Y2ggdGhlIG9iamVjdCBpZiBtaXNzaW5nIChldmVuIGlmIGZldGNoX2lzX21pc3NpbmcgaXMKKyAqIG5vbnplcm8pLgorICovCisjZGVmaW5lIE9CSkVDVF9JTkZPX1NLSVBfRkVUQ0hfT0JKRUNUIDMyCisvKgorICogVGhpcyBpcyBtZWFudCBmb3IgYnVsayBwcmVmZXRjaGluZyBvZiBtaXNzaW5nIGJsb2JzIGluIGEgcGFydGlhbAorICogY2xvbmUuIEltcGxpZXMgT0JKRUNUX0lORk9fU0tJUF9GRVRDSF9PQkpFQ1QgYW5kIE9CSkVDVF9JTkZPX1FVSUNLCisgKi8KKyNkZWZpbmUgT0JKRUNUX0lORk9fRk9SX1BSRUZFVENIIChPQkpFQ1RfSU5GT19TS0lQX0ZFVENIX09CSkVDVCB8IE9CSkVDVF9JTkZPX1FVSUNLKQogCiBpbnQgb2lkX29iamVjdF9pbmZvX2V4dGVuZGVkKHN0cnVjdCByZXBvc2l0b3J5ICpyLAogCQkJICAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICosCmRpZmYgLS1naXQgYS9vYmplY3QuYyBiL29iamVjdC5jCmluZGV4IGU1NDE2MDUuLjc5NGM4NjYgMTAwNjQ0Ci0tLSBhL29iamVjdC5jCisrKyBiL29iamVjdC5jCkBAIC03LDcgKzcsNiBAQAogI2luY2x1ZGUgImNvbW1pdC5oIgogI2luY2x1ZGUgInRhZy5oIgogI2luY2x1ZGUgImFsbG9jLmgiCi0jaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCiAjaW5jbHVkZSAicGFja2ZpbGUuaCIKICNpbmNsdWRlICJjb21taXQtZ3JhcGguaCIKIApAQCAtNTksOSArNTgsOSBAQAogICogdGhlIHNwZWNpZmllZCBzaGExLiAgbiBtdXN0IGJlIGEgcG93ZXIgb2YgMi4gIFBsZWFzZSBub3RlIHRoYXQgdGhlCiAgKiByZXR1cm4gdmFsdWUgaXMgKm5vdCogY29uc2lzdGVudCBhY3Jvc3MgY29tcHV0ZXIgYXJjaGl0ZWN0dXJlcy4KICAqLwotc3RhdGljIHVuc2lnbmVkIGludCBoYXNoX29iaihjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExLCB1bnNpZ25lZCBpbnQgbikKK3N0YXRpYyB1bnNpZ25lZCBpbnQgaGFzaF9vYmooY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCB1bnNpZ25lZCBpbnQgbikKIHsKLQlyZXR1cm4gc2hhMWhhc2goc2hhMSkgJiAobiAtIDEpOworCXJldHVybiBvaWRoYXNoKG9pZCkgJiAobiAtIDEpOwogfQogCiAvKgpAQCAtNzEsNyArNzAsNyBAQAogICovCiBzdGF0aWMgdm9pZCBpbnNlcnRfb2JqX2hhc2goc3RydWN0IG9iamVjdCAqb2JqLCBzdHJ1Y3Qgb2JqZWN0ICoqaGFzaCwgdW5zaWduZWQgaW50IHNpemUpCiB7Ci0JdW5zaWduZWQgaW50IGogPSBoYXNoX29iaihvYmotPm9pZC5oYXNoLCBzaXplKTsKKwl1bnNpZ25lZCBpbnQgaiA9IGhhc2hfb2JqKCZvYmotPm9pZCwgc2l6ZSk7CiAKIAl3aGlsZSAoaGFzaFtqXSkgewogCQlqKys7CkBAIC04NSw3ICs4NCw3IEBACiAgKiBMb29rIHVwIHRoZSByZWNvcmQgZm9yIHRoZSBnaXZlbiBzaGExIGluIHRoZSBoYXNoIG1hcCBzdG9yZWQgaW4KICAqIG9ial9oYXNoLiAgUmV0dXJuIE5VTEwgaWYgaXQgd2FzIG5vdCBmb3VuZC4KICAqLwotc3RydWN0IG9iamVjdCAqbG9va3VwX29iamVjdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSkKK3N0cnVjdCBvYmplY3QgKmxvb2t1cF9vYmplY3Qoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAl1bnNpZ25lZCBpbnQgaSwgZmlyc3Q7CiAJc3RydWN0IG9iamVjdCAqb2JqOwpAQCAtOTMsOSArOTIsOSBAQAogCWlmICghci0+cGFyc2VkX29iamVjdHMtPm9ial9oYXNoKQogCQlyZXR1cm4gTlVMTDsKIAotCWZpcnN0ID0gaSA9IGhhc2hfb2JqKHNoYTEsIHItPnBhcnNlZF9vYmplY3RzLT5vYmpfaGFzaF9zaXplKTsKKwlmaXJzdCA9IGkgPSBoYXNoX29iaihvaWQsIHItPnBhcnNlZF9vYmplY3RzLT5vYmpfaGFzaF9zaXplKTsKIAl3aGlsZSAoKG9iaiA9IHItPnBhcnNlZF9vYmplY3RzLT5vYmpfaGFzaFtpXSkgIT0gTlVMTCkgewotCQlpZiAoaGFzaGVxKHNoYTEsIG9iai0+b2lkLmhhc2gpKQorCQlpZiAob2lkZXEob2lkLCAmb2JqLT5vaWQpKQogCQkJYnJlYWs7CiAJCWkrKzsKIAkJaWYgKGkgPT0gci0+cGFyc2VkX29iamVjdHMtPm9ial9oYXNoX3NpemUpCkBAIC0xNDEsMTMgKzE0MCwxMyBAQAogCXItPnBhcnNlZF9vYmplY3RzLT5vYmpfaGFzaF9zaXplID0gbmV3X2hhc2hfc2l6ZTsKIH0KIAotdm9pZCAqY3JlYXRlX29iamVjdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwgdm9pZCAqbykKK3ZvaWQgKmNyZWF0ZV9vYmplY3Qoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgdm9pZCAqbykKIHsKIAlzdHJ1Y3Qgb2JqZWN0ICpvYmogPSBvOwogCiAJb2JqLT5wYXJzZWQgPSAwOwogCW9iai0+ZmxhZ3MgPSAwOwotCWhhc2hjcHkob2JqLT5vaWQuaGFzaCwgc2hhMSk7CisJb2lkY3B5KCZvYmotPm9pZCwgb2lkKTsKIAogCWlmIChyLT5wYXJzZWRfb2JqZWN0cy0+b2JqX2hhc2hfc2l6ZSAtIDEgPD0gci0+cGFyc2VkX29iamVjdHMtPm5yX29ianMgKiAyKQogCQlncm93X29iamVjdF9oYXNoKHIpOwpAQCAtMTY0LDggKzE2Myw5IEBACiAJCXJldHVybiBvYmo7CiAJZWxzZSBpZiAob2JqLT50eXBlID09IE9CSl9OT05FKSB7CiAJCWlmICh0eXBlID09IE9CSl9DT01NSVQpCi0JCQkoKHN0cnVjdCBjb21taXQgKilvYmopLT5pbmRleCA9IGFsbG9jX2NvbW1pdF9pbmRleChyKTsKLQkJb2JqLT50eXBlID0gdHlwZTsKKwkJCWluaXRfY29tbWl0X25vZGUociwgKHN0cnVjdCBjb21taXQgKikgb2JqKTsKKwkJZWxzZQorCQkJb2JqLT50eXBlID0gdHlwZTsKIAkJcmV0dXJuIG9iajsKIAl9CiAJZWxzZSB7CkBAIC0xNzcsMTEgKzE3NywxMSBAQAogCX0KIH0KIAotc3RydWN0IG9iamVjdCAqbG9va3VwX3Vua25vd25fb2JqZWN0KGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpCitzdHJ1Y3Qgb2JqZWN0ICpsb29rdXBfdW5rbm93bl9vYmplY3QoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewotCXN0cnVjdCBvYmplY3QgKm9iaiA9IGxvb2t1cF9vYmplY3QodGhlX3JlcG9zaXRvcnksIHNoYTEpOworCXN0cnVjdCBvYmplY3QgKm9iaiA9IGxvb2t1cF9vYmplY3QodGhlX3JlcG9zaXRvcnksIG9pZCk7CiAJaWYgKCFvYmopCi0JCW9iaiA9IGNyZWF0ZV9vYmplY3QodGhlX3JlcG9zaXRvcnksIHNoYTEsCisJCW9iaiA9IGNyZWF0ZV9vYmplY3QodGhlX3JlcG9zaXRvcnksIG9pZCwKIAkJCQkgICAgYWxsb2Nfb2JqZWN0X25vZGUodGhlX3JlcG9zaXRvcnkpKTsKIAlyZXR1cm4gb2JqOwogfQpAQCAtMjU1LDI2ICsyNTUsMjcgQEAKIAl2b2lkICpidWZmZXI7CiAJc3RydWN0IG9iamVjdCAqb2JqOwogCi0Jb2JqID0gbG9va3VwX29iamVjdChyLCBvaWQtPmhhc2gpOworCW9iaiA9IGxvb2t1cF9vYmplY3Qociwgb2lkKTsKIAlpZiAob2JqICYmIG9iai0+cGFyc2VkKQogCQlyZXR1cm4gb2JqOwogCi0JaWYgKChvYmogJiYgb2JqLT50eXBlID09IE9CSl9CTE9CICYmIGhhc19vYmplY3RfZmlsZShvaWQpKSB8fAotCSAgICAoIW9iaiAmJiBoYXNfb2JqZWN0X2ZpbGUob2lkKSAmJgorCWlmICgob2JqICYmIG9iai0+dHlwZSA9PSBPQkpfQkxPQiAmJiByZXBvX2hhc19vYmplY3RfZmlsZShyLCBvaWQpKSB8fAorCSAgICAoIW9iaiAmJiByZXBvX2hhc19vYmplY3RfZmlsZShyLCBvaWQpICYmCiAJICAgICBvaWRfb2JqZWN0X2luZm8ociwgb2lkLCBOVUxMKSA9PSBPQkpfQkxPQikpIHsKLQkJaWYgKGNoZWNrX29iamVjdF9zaWduYXR1cmUocmVwbCwgTlVMTCwgMCwgTlVMTCkgPCAwKSB7Ci0JCQllcnJvcihfKCJzaGExIG1pc21hdGNoICVzIiksIG9pZF90b19oZXgob2lkKSk7CisJCWlmIChjaGVja19vYmplY3Rfc2lnbmF0dXJlKHIsIHJlcGwsIE5VTEwsIDAsIE5VTEwpIDwgMCkgeworCQkJZXJyb3IoXygiaGFzaCBtaXNtYXRjaCAlcyIpLCBvaWRfdG9faGV4KG9pZCkpOwogCQkJcmV0dXJuIE5VTEw7CiAJCX0KIAkJcGFyc2VfYmxvYl9idWZmZXIobG9va3VwX2Jsb2Iociwgb2lkKSwgTlVMTCwgMCk7Ci0JCXJldHVybiBsb29rdXBfb2JqZWN0KHIsIG9pZC0+aGFzaCk7CisJCXJldHVybiBsb29rdXBfb2JqZWN0KHIsIG9pZCk7CiAJfQogCi0JYnVmZmVyID0gcmVhZF9vYmplY3RfZmlsZShvaWQsICZ0eXBlLCAmc2l6ZSk7CisJYnVmZmVyID0gcmVwb19yZWFkX29iamVjdF9maWxlKHIsIG9pZCwgJnR5cGUsICZzaXplKTsKIAlpZiAoYnVmZmVyKSB7Ci0JCWlmIChjaGVja19vYmplY3Rfc2lnbmF0dXJlKHJlcGwsIGJ1ZmZlciwgc2l6ZSwgdHlwZV9uYW1lKHR5cGUpKSA8IDApIHsKKwkJaWYgKGNoZWNrX29iamVjdF9zaWduYXR1cmUociwgcmVwbCwgYnVmZmVyLCBzaXplLAorCQkJCQkgICB0eXBlX25hbWUodHlwZSkpIDwgMCkgewogCQkJZnJlZShidWZmZXIpOwotCQkJZXJyb3IoXygic2hhMSBtaXNtYXRjaCAlcyIpLCBvaWRfdG9faGV4KHJlcGwpKTsKKwkJCWVycm9yKF8oImhhc2ggbWlzbWF0Y2ggJXMiKSwgb2lkX3RvX2hleChyZXBsKSk7CiAJCQlyZXR1cm4gTlVMTDsKIAkJfQogCkBAIC0zMDcsNiArMzA4LDE1IEBACiAJcmV0dXJuIDA7CiB9CiAKK3ZvaWQgb2JqZWN0X2xpc3RfZnJlZShzdHJ1Y3Qgb2JqZWN0X2xpc3QgKipsaXN0KQoreworCXdoaWxlICgqbGlzdCkgeworCQlzdHJ1Y3Qgb2JqZWN0X2xpc3QgKnAgPSAqbGlzdDsKKwkJKmxpc3QgPSBwLT5uZXh0OworCQlmcmVlKHApOworCX0KK30KKwogLyoKICAqIEEgemVyby1sZW5ndGggc3RyaW5nIHRvIHdoaWNoIG9iamVjdF9hcnJheV9lbnRyeTo6bmFtZSBjYW4gYmUKICAqIGluaXRpYWxpemVkIHdpdGhvdXQgcmVxdWlyaW5nIGEgbWFsbG9jL2ZyZWUuCkBAIC00NzksNDUgKzQ4OSw1MCBAQAogCiAJbWVtc2V0KG8sIDAsIHNpemVvZigqbykpOwogCUlOSVRfTElTVF9IRUFEKCZvLT5wYWNrZWRfZ2l0X21ydSk7CisJaGFzaG1hcF9pbml0KCZvLT5wYWNrX21hcCwgcGFja19tYXBfZW50cnlfY21wLCBOVUxMLCAwKTsKKwlwdGhyZWFkX211dGV4X2luaXQoJm8tPnJlcGxhY2VfbXV0ZXgsIE5VTEwpOwogCXJldHVybiBvOwogfQogCi1zdGF0aWMgdm9pZCBmcmVlX2FsdF9vZGIoc3RydWN0IGFsdGVybmF0ZV9vYmplY3RfZGF0YWJhc2UgKmFsdCkKK3N0YXRpYyB2b2lkIGZyZWVfb2JqZWN0X2RpcmVjdG9yeShzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiKQogewotCXN0cmJ1Zl9yZWxlYXNlKCZhbHQtPnNjcmF0Y2gpOwotCW9pZF9hcnJheV9jbGVhcigmYWx0LT5sb29zZV9vYmplY3RzX2NhY2hlKTsKLQlmcmVlKGFsdCk7CisJZnJlZShvZGItPnBhdGgpOworCW9kYl9jbGVhcl9sb29zZV9jYWNoZShvZGIpOworCWZyZWUob2RiKTsKIH0KIAotc3RhdGljIHZvaWQgZnJlZV9hbHRfb2RicyhzdHJ1Y3QgcmF3X29iamVjdF9zdG9yZSAqbykKK3N0YXRpYyB2b2lkIGZyZWVfb2JqZWN0X2RpcmVjdG9yaWVzKHN0cnVjdCByYXdfb2JqZWN0X3N0b3JlICpvKQogewotCXdoaWxlIChvLT5hbHRfb2RiX2xpc3QpIHsKLQkJc3RydWN0IGFsdGVybmF0ZV9vYmplY3RfZGF0YWJhc2UgKm5leHQ7CisJd2hpbGUgKG8tPm9kYikgeworCQlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqbmV4dDsKIAotCQluZXh0ID0gby0+YWx0X29kYl9saXN0LT5uZXh0OwotCQlmcmVlX2FsdF9vZGIoby0+YWx0X29kYl9saXN0KTsKLQkJby0+YWx0X29kYl9saXN0ID0gbmV4dDsKKwkJbmV4dCA9IG8tPm9kYi0+bmV4dDsKKwkJZnJlZV9vYmplY3RfZGlyZWN0b3J5KG8tPm9kYik7CisJCW8tPm9kYiA9IG5leHQ7CiAJfQogfQogCiB2b2lkIHJhd19vYmplY3Rfc3RvcmVfY2xlYXIoc3RydWN0IHJhd19vYmplY3Rfc3RvcmUgKm8pCiB7Ci0JRlJFRV9BTkRfTlVMTChvLT5vYmplY3RkaXIpOwogCUZSRUVfQU5EX05VTEwoby0+YWx0ZXJuYXRlX2RiKTsKIAogCW9pZG1hcF9mcmVlKG8tPnJlcGxhY2VfbWFwLCAxKTsKIAlGUkVFX0FORF9OVUxMKG8tPnJlcGxhY2VfbWFwKTsKKwlwdGhyZWFkX211dGV4X2Rlc3Ryb3koJm8tPnJlcGxhY2VfbXV0ZXgpOwogCiAJZnJlZV9jb21taXRfZ3JhcGgoby0+Y29tbWl0X2dyYXBoKTsKIAlvLT5jb21taXRfZ3JhcGggPSBOVUxMOwogCW8tPmNvbW1pdF9ncmFwaF9hdHRlbXB0ZWQgPSAwOwogCi0JZnJlZV9hbHRfb2RicyhvKTsKLQlvLT5hbHRfb2RiX3RhaWwgPSBOVUxMOworCWZyZWVfb2JqZWN0X2RpcmVjdG9yaWVzKG8pOworCW8tPm9kYl90YWlsID0gTlVMTDsKKwlvLT5sb2FkZWRfYWx0ZXJuYXRlcyA9IDA7CiAKIAlJTklUX0xJU1RfSEVBRCgmby0+cGFja2VkX2dpdF9tcnUpOwotCWNsb3NlX2FsbF9wYWNrcyhvKTsKKwljbG9zZV9vYmplY3Rfc3RvcmUobyk7CiAJby0+cGFja2VkX2dpdCA9IE5VTEw7CisKKwloYXNobWFwX2ZyZWUoJm8tPnBhY2tfbWFwKTsKIH0KIAogdm9pZCBwYXJzZWRfb2JqZWN0X3Bvb2xfY2xlYXIoc3RydWN0IHBhcnNlZF9vYmplY3RfcG9vbCAqbykKQEAgLTU0MCw3ICs1NTUsNyBAQAogCQlpZiAob2JqLT50eXBlID09IE9CSl9UUkVFKQogCQkJZnJlZV90cmVlX2J1ZmZlcigoc3RydWN0IHRyZWUqKW9iaik7CiAJCWVsc2UgaWYgKG9iai0+dHlwZSA9PSBPQkpfQ09NTUlUKQotCQkJcmVsZWFzZV9jb21taXRfbWVtb3J5KChzdHJ1Y3QgY29tbWl0KilvYmopOworCQkJcmVsZWFzZV9jb21taXRfbWVtb3J5KG8sIChzdHJ1Y3QgY29tbWl0KilvYmopOwogCQllbHNlIGlmIChvYmotPnR5cGUgPT0gT0JKX1RBRykKIAkJCXJlbGVhc2VfdGFnX21lbW9yeSgoc3RydWN0IHRhZyopb2JqKTsKIAl9CkBAIC01NTYsOSArNTcxLDExIEBACiAJY2xlYXJfYWxsb2Nfc3RhdGUoby0+Y29tbWl0X3N0YXRlKTsKIAljbGVhcl9hbGxvY19zdGF0ZShvLT50YWdfc3RhdGUpOwogCWNsZWFyX2FsbG9jX3N0YXRlKG8tPm9iamVjdF9zdGF0ZSk7CisJc3RhdF92YWxpZGl0eV9jbGVhcihvLT5zaGFsbG93X3N0YXQpOwogCUZSRUVfQU5EX05VTEwoby0+YmxvYl9zdGF0ZSk7CiAJRlJFRV9BTkRfTlVMTChvLT50cmVlX3N0YXRlKTsKIAlGUkVFX0FORF9OVUxMKG8tPmNvbW1pdF9zdGF0ZSk7CiAJRlJFRV9BTkRfTlVMTChvLT50YWdfc3RhdGUpOwogCUZSRUVfQU5EX05VTEwoby0+b2JqZWN0X3N0YXRlKTsKKwlGUkVFX0FORF9OVUxMKG8tPnNoYWxsb3dfc3RhdCk7CiB9CmRpZmYgLS1naXQgYS9vYmplY3QuaCBiL29iamVjdC5oCmluZGV4IDc5Njc5MmMuLjJkYmFiZmMgMTAwNjQ0Ci0tLSBhL29iamVjdC5oCisrKyBiL29iamVjdC5oCkBAIC02OCw3ICs2OCw4IEBACiAgKiBiaXNlY3QuYzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTYKICAqIGJ1bmRsZS5jOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNgogICogaHR0cC1wdXNoLmM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE2LS0tLS0xOQotICogY29tbWl0LXJlYWNoLmM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNS0tLS0tLS0xOQorICogY29tbWl0LWdyYXBoLmM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNQorICogY29tbWl0LXJlYWNoLmM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE2LS0tLS0xOQogICogc2hhMS1uYW1lLmM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwCiAgKiBsaXN0LW9iamVjdHMtZmlsdGVyLmM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMQogICogYnVpbHRpbi9mc2NrLmM6ICAgICAgICAgICAwLS0zCkBAIC05MCwxOSArOTEsMTkgQEAKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIH07CiAKLWV4dGVybiBjb25zdCBjaGFyICp0eXBlX25hbWUodW5zaWduZWQgaW50IHR5cGUpOwotZXh0ZXJuIGludCB0eXBlX2Zyb21fc3RyaW5nX2dlbnRseShjb25zdCBjaGFyICpzdHIsIHNzaXplX3QsIGludCBnZW50bGUpOworY29uc3QgY2hhciAqdHlwZV9uYW1lKHVuc2lnbmVkIGludCB0eXBlKTsKK2ludCB0eXBlX2Zyb21fc3RyaW5nX2dlbnRseShjb25zdCBjaGFyICpzdHIsIHNzaXplX3QsIGludCBnZW50bGUpOwogI2RlZmluZSB0eXBlX2Zyb21fc3RyaW5nKHN0cikgdHlwZV9mcm9tX3N0cmluZ19nZW50bHkoc3RyLCAtMSwgMCkKIAogLyoKICAqIFJldHVybiB0aGUgY3VycmVudCBudW1iZXIgb2YgYnVja2V0cyBpbiB0aGUgb2JqZWN0IGhhc2htYXAuCiAgKi8KLWV4dGVybiB1bnNpZ25lZCBpbnQgZ2V0X21heF9vYmplY3RfaW5kZXgodm9pZCk7Cit1bnNpZ25lZCBpbnQgZ2V0X21heF9vYmplY3RfaW5kZXgodm9pZCk7CiAKIC8qCiAgKiBSZXR1cm4gdGhlIG9iamVjdCBmcm9tIHRoZSBzcGVjaWZpZWQgYnVja2V0IGluIHRoZSBvYmplY3QgaGFzaG1hcC4KICAqLwotZXh0ZXJuIHN0cnVjdCBvYmplY3QgKmdldF9pbmRleGVkX29iamVjdCh1bnNpZ25lZCBpbnQpOworc3RydWN0IG9iamVjdCAqZ2V0X2luZGV4ZWRfb2JqZWN0KHVuc2lnbmVkIGludCk7CiAKIC8qCiAgKiBUaGlzIGNhbiBiZSB1c2VkIHRvIHNlZSBpZiB3ZSBoYXZlIGhlYXJkIG9mIHRoZSBvYmplY3QgYmVmb3JlLCBidXQKQEAgLTExNiw5ICsxMTcsOSBAQAogICogaGFsZi1pbml0aWFsaXNlZCBvYmplY3RzLCB0aGUgY2FsbGVyIGlzIGV4cGVjdGVkIHRvIGluaXRpYWxpemUgdGhlbQogICogYnkgY2FsbGluZyBwYXJzZV9vYmplY3QoKSBvbiB0aGVtLgogICovCi1zdHJ1Y3Qgb2JqZWN0ICpsb29rdXBfb2JqZWN0KHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKTsKK3N0cnVjdCBvYmplY3QgKmxvb2t1cF9vYmplY3Qoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CiAKLWV4dGVybiB2b2lkICpjcmVhdGVfb2JqZWN0KHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExLCB2b2lkICpvYmopOwordm9pZCAqY3JlYXRlX29iamVjdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCB2b2lkICpvYmopOwogCiB2b2lkICpvYmplY3RfYXNfdHlwZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IG9iamVjdCAqb2JqLCBlbnVtIG9iamVjdF90eXBlIHR5cGUsIGludCBxdWlldCk7CiAKQEAgLTE0MywxMyArMTQ0LDE1IEBACiBzdHJ1Y3Qgb2JqZWN0ICpwYXJzZV9vYmplY3RfYnVmZmVyKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGVudW0gb2JqZWN0X3R5cGUgdHlwZSwgdW5zaWduZWQgbG9uZyBzaXplLCB2b2lkICpidWZmZXIsIGludCAqZWF0ZW5fcCk7CiAKIC8qKiBSZXR1cm5zIHRoZSBvYmplY3QsIHdpdGggcG90ZW50aWFsbHkgZXhjZXNzIG1lbW9yeSBhbGxvY2F0ZWQuICoqLwotc3RydWN0IG9iamVjdCAqbG9va3VwX3Vua25vd25fb2JqZWN0KGNvbnN0IHVuc2lnbmVkICBjaGFyICpzaGExKTsKK3N0cnVjdCBvYmplY3QgKmxvb2t1cF91bmtub3duX29iamVjdChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOwogCiBzdHJ1Y3Qgb2JqZWN0X2xpc3QgKm9iamVjdF9saXN0X2luc2VydChzdHJ1Y3Qgb2JqZWN0ICppdGVtLAogCQkJCSAgICAgICBzdHJ1Y3Qgb2JqZWN0X2xpc3QgKipsaXN0X3ApOwogCiBpbnQgb2JqZWN0X2xpc3RfY29udGFpbnMoc3RydWN0IG9iamVjdF9saXN0ICpsaXN0LCBzdHJ1Y3Qgb2JqZWN0ICpvYmopOwogCit2b2lkIG9iamVjdF9saXN0X2ZyZWUoc3RydWN0IG9iamVjdF9saXN0ICoqbGlzdCk7CisKIC8qIE9iamVjdCBhcnJheSBoYW5kbGluZyAuLiAqLwogdm9pZCBhZGRfb2JqZWN0X2FycmF5KHN0cnVjdCBvYmplY3QgKm9iaiwgY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IG9iamVjdF9hcnJheSAqYXJyYXkpOwogdm9pZCBhZGRfb2JqZWN0X2FycmF5X3dpdGhfcGF0aChzdHJ1Y3Qgb2JqZWN0ICpvYmosIGNvbnN0IGNoYXIgKm5hbWUsIHN0cnVjdCBvYmplY3RfYXJyYXkgKmFycmF5LCB1bnNpZ25lZCBtb2RlLCBjb25zdCBjaGFyICpwYXRoKTsKQEAgLTE4OSw2ICsxOTIsNiBAQAogLyoKICAqIENsZWFyIHRoZSBzcGVjaWZpZWQgb2JqZWN0IGZsYWdzIGZyb20gYWxsIGluLWNvcmUgY29tbWl0IG9iamVjdHMuCiAgKi8KLWV4dGVybiB2b2lkIGNsZWFyX2NvbW1pdF9tYXJrc19hbGwodW5zaWduZWQgaW50IGZsYWdzKTsKK3ZvaWQgY2xlYXJfY29tbWl0X21hcmtzX2FsbCh1bnNpZ25lZCBpbnQgZmxhZ3MpOwogCiAjZW5kaWYgLyogT0JKRUNUX0ggKi8KZGlmZiAtLWdpdCBhL29pZG1hcC5jIGIvb2lkbWFwLmMKaW5kZXggYjA4NDFhMC4uNDIzYWEwMSAxMDA2NDQKLS0tIGEvb2lkbWFwLmMKKysrIGIvb2lkbWFwLmMKQEAgLTIsMjEgKzIsMTggQEAKICNpbmNsdWRlICJvaWRtYXAuaCIKIAogc3RhdGljIGludCBvaWRtYXBfbmVxKGNvbnN0IHZvaWQgKmhhc2htYXBfY21wX2ZuX2RhdGEsCi0JCSAgICAgIGNvbnN0IHZvaWQgKmVudHJ5LCBjb25zdCB2b2lkICplbnRyeV9vcl9rZXksCisJCSAgICAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplMSwKKwkJICAgICAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmUyLAogCQkgICAgICBjb25zdCB2b2lkICprZXlkYXRhKQogewotCWNvbnN0IHN0cnVjdCBvaWRtYXBfZW50cnkgKmVudHJ5XyA9IGVudHJ5OwotCWlmIChrZXlkYXRhKQotCQlyZXR1cm4gIW9pZGVxKCZlbnRyeV8tPm9pZCwgKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKikga2V5ZGF0YSk7Ci0JcmV0dXJuICFvaWRlcSgmZW50cnlfLT5vaWQsCi0JCSAgICAgICYoKGNvbnN0IHN0cnVjdCBvaWRtYXBfZW50cnkgKikgZW50cnlfb3Jfa2V5KS0+b2lkKTsKLX0KKwljb25zdCBzdHJ1Y3Qgb2lkbWFwX2VudHJ5ICphLCAqYjsKIAotc3RhdGljIGludCBoYXNoKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKLXsKLQlpbnQgaGFzaDsKLQltZW1jcHkoJmhhc2gsIG9pZC0+aGFzaCwgc2l6ZW9mKGhhc2gpKTsKLQlyZXR1cm4gaGFzaDsKKwlhID0gY29udGFpbmVyX29mKGUxLCBjb25zdCBzdHJ1Y3Qgb2lkbWFwX2VudHJ5LCBpbnRlcm5hbF9lbnRyeSk7CisJYiA9IGNvbnRhaW5lcl9vZihlMiwgY29uc3Qgc3RydWN0IG9pZG1hcF9lbnRyeSwgaW50ZXJuYWxfZW50cnkpOworCisJaWYgKGtleWRhdGEpCisJCXJldHVybiAhb2lkZXEoJmEtPm9pZCwgKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKikga2V5ZGF0YSk7CisJcmV0dXJuICFvaWRlcSgmYS0+b2lkLCAmYi0+b2lkKTsKIH0KIAogdm9pZCBvaWRtYXBfaW5pdChzdHJ1Y3Qgb2lkbWFwICptYXAsIHNpemVfdCBpbml0aWFsX3NpemUpCkBAIC0yOCw3ICsyNSw5IEBACiB7CiAJaWYgKCFtYXApCiAJCXJldHVybjsKLQloYXNobWFwX2ZyZWUoJm1hcC0+bWFwLCBmcmVlX2VudHJpZXMpOworCisJLyogVE9ETzogbWFrZSBvaWRtYXAgaXRzZWxmIG5vdCBkZXBlbmQgb24gc3RydWN0IGxheW91dHMgKi8KKwloYXNobWFwX2ZyZWVfKCZtYXAtPm1hcCwgZnJlZV9lbnRyaWVzID8gMCA6IC0xKTsKIH0KIAogdm9pZCAqb2lkbWFwX2dldChjb25zdCBzdHJ1Y3Qgb2lkbWFwICptYXAsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmtleSkKQEAgLTM2LDcgKzM1LDcgQEAKIAlpZiAoIW1hcC0+bWFwLmNtcGZuKQogCQlyZXR1cm4gTlVMTDsKIAotCXJldHVybiBoYXNobWFwX2dldF9mcm9tX2hhc2goJm1hcC0+bWFwLCBoYXNoKGtleSksIGtleSk7CisJcmV0dXJuIGhhc2htYXBfZ2V0X2Zyb21faGFzaCgmbWFwLT5tYXAsIG9pZGhhc2goa2V5KSwga2V5KTsKIH0KIAogdm9pZCAqb2lkbWFwX3JlbW92ZShzdHJ1Y3Qgb2lkbWFwICptYXAsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmtleSkKQEAgLTQ2LDcgKzQ1LDcgQEAKIAlpZiAoIW1hcC0+bWFwLmNtcGZuKQogCQlvaWRtYXBfaW5pdChtYXAsIDApOwogCi0JaGFzaG1hcF9lbnRyeV9pbml0KCZlbnRyeSwgaGFzaChrZXkpKTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmVudHJ5LCBvaWRoYXNoKGtleSkpOwogCXJldHVybiBoYXNobWFwX3JlbW92ZSgmbWFwLT5tYXAsICZlbnRyeSwga2V5KTsKIH0KIApAQCAtNTcsNiArNTYsNiBAQAogCWlmICghbWFwLT5tYXAuY21wZm4pCiAJCW9pZG1hcF9pbml0KG1hcCwgMCk7CiAKLQloYXNobWFwX2VudHJ5X2luaXQoJnRvX3B1dC0+aW50ZXJuYWxfZW50cnksIGhhc2goJnRvX3B1dC0+b2lkKSk7Ci0JcmV0dXJuIGhhc2htYXBfcHV0KCZtYXAtPm1hcCwgdG9fcHV0KTsKKwloYXNobWFwX2VudHJ5X2luaXQoJnRvX3B1dC0+aW50ZXJuYWxfZW50cnksIG9pZGhhc2goJnRvX3B1dC0+b2lkKSk7CisJcmV0dXJuIGhhc2htYXBfcHV0KCZtYXAtPm1hcCwgJnRvX3B1dC0+aW50ZXJuYWxfZW50cnkpOwogfQpkaWZmIC0tZ2l0IGEvb2lkbWFwLmggYi9vaWRtYXAuaAppbmRleCA3MjQzMGI2Li5jNjZhODNhIDEwMDY0NAotLS0gYS9vaWRtYXAuaAorKysgYi9vaWRtYXAuaApAQCAtMzMsNyArMzMsNyBAQAogICogcGFyYW1ldGVyIG1heSBiZSB1c2VkIHRvIHByZWFsbG9jYXRlIGEgc3VmZmljaWVudGx5IGxhcmdlIHRhYmxlIGFuZCB0aHVzCiAgKiBwcmV2ZW50IGV4cGVuc2l2ZSByZXNpemluZy4gSWYgMCwgdGhlIHRhYmxlIGlzIGR5bmFtaWNhbGx5IHJlc2l6ZWQuCiAgKi8KLWV4dGVybiB2b2lkIG9pZG1hcF9pbml0KHN0cnVjdCBvaWRtYXAgKm1hcCwgc2l6ZV90IGluaXRpYWxfc2l6ZSk7Cit2b2lkIG9pZG1hcF9pbml0KHN0cnVjdCBvaWRtYXAgKm1hcCwgc2l6ZV90IGluaXRpYWxfc2l6ZSk7CiAKIC8qCiAgKiBGcmVlcyBhbiBvaWRtYXAgc3RydWN0dXJlIGFuZCBhbGxvY2F0ZWQgbWVtb3J5LgpAQCAtNDEsMTMgKzQxLDEzIEBACiAgKiBJZiBgZnJlZV9lbnRyaWVzYCBpcyB0cnVlLCBlYWNoIG9pZG1hcF9lbnRyeSBpbiB0aGUgbWFwIGlzIGZyZWVkIGFzIHdlbGwKICAqIHVzaW5nIHN0ZGxpYnMgZnJlZSgpLgogICovCi1leHRlcm4gdm9pZCBvaWRtYXBfZnJlZShzdHJ1Y3Qgb2lkbWFwICptYXAsIGludCBmcmVlX2VudHJpZXMpOwordm9pZCBvaWRtYXBfZnJlZShzdHJ1Y3Qgb2lkbWFwICptYXAsIGludCBmcmVlX2VudHJpZXMpOwogCiAvKgogICogUmV0dXJucyB0aGUgb2lkbWFwIGVudHJ5IGZvciB0aGUgc3BlY2lmaWVkIG9pZCwgb3IgTlVMTCBpZiBub3QgZm91bmQuCiAgKi8KLWV4dGVybiB2b2lkICpvaWRtYXBfZ2V0KGNvbnN0IHN0cnVjdCBvaWRtYXAgKm1hcCwKLQkJCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmtleSk7Cit2b2lkICpvaWRtYXBfZ2V0KGNvbnN0IHN0cnVjdCBvaWRtYXAgKm1hcCwKKwkJIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmtleSk7CiAKIC8qCiAgKiBBZGRzIG9yIHJlcGxhY2VzIGFuIG9pZG1hcCBlbnRyeS4KQEAgLTU3LDE0ICs1NywxNCBAQAogICoKICAqIFJldHVybnMgdGhlIHJlcGxhY2VkIGVudHJ5LCBvciBOVUxMIGlmIG5vdCBmb3VuZCAoaS5lLiB0aGUgZW50cnkgd2FzIGFkZGVkKS4KICAqLwotZXh0ZXJuIHZvaWQgKm9pZG1hcF9wdXQoc3RydWN0IG9pZG1hcCAqbWFwLCB2b2lkICplbnRyeSk7Cit2b2lkICpvaWRtYXBfcHV0KHN0cnVjdCBvaWRtYXAgKm1hcCwgdm9pZCAqZW50cnkpOwogCiAvKgogICogUmVtb3ZlcyBhbiBvaWRtYXAgZW50cnkgbWF0Y2hpbmcgdGhlIHNwZWNpZmllZCBvaWQuCiAgKgogICogUmV0dXJucyB0aGUgcmVtb3ZlZCBlbnRyeSwgb3IgTlVMTCBpZiBub3QgZm91bmQuCiAgKi8KLWV4dGVybiB2b2lkICpvaWRtYXBfcmVtb3ZlKHN0cnVjdCBvaWRtYXAgKm1hcCwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqa2V5KTsKK3ZvaWQgKm9pZG1hcF9yZW1vdmUoc3RydWN0IG9pZG1hcCAqbWFwLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICprZXkpOwogCiAKIHN0cnVjdCBvaWRtYXBfaXRlciB7CkBAIC03OCwxNCArNzgsMTYgQEAKIAogc3RhdGljIGlubGluZSB2b2lkICpvaWRtYXBfaXRlcl9uZXh0KHN0cnVjdCBvaWRtYXBfaXRlciAqaXRlcikKIHsKLQlyZXR1cm4gaGFzaG1hcF9pdGVyX25leHQoJml0ZXItPmhfaXRlcik7CisJLyogVE9ETzogdGhpcyBBUEkgY291bGQgYmUgcmV3b3JrZWQgdG8gZG8gY29tcGlsZS10aW1lIHR5cGUgY2hlY2tzICovCisJcmV0dXJuICh2b2lkICopaGFzaG1hcF9pdGVyX25leHQoJml0ZXItPmhfaXRlcik7CiB9CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCAqb2lkbWFwX2l0ZXJfZmlyc3Qoc3RydWN0IG9pZG1hcCAqbWFwLAogCQkJCSAgICAgIHN0cnVjdCBvaWRtYXBfaXRlciAqaXRlcikKIHsKIAlvaWRtYXBfaXRlcl9pbml0KG1hcCwgaXRlcik7Ci0JcmV0dXJuIG9pZG1hcF9pdGVyX25leHQoaXRlcik7CisJLyogVE9ETzogdGhpcyBBUEkgY291bGQgYmUgcmV3b3JrZWQgdG8gZG8gY29tcGlsZS10aW1lIHR5cGUgY2hlY2tzICovCisJcmV0dXJuICh2b2lkICopb2lkbWFwX2l0ZXJfbmV4dChpdGVyKTsKIH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9vaWRzZXQuYyBiL29pZHNldC5jCmluZGV4IGZlNGViOTIuLmY2M2NlODEgMTAwNjQ0Ci0tLSBhL29pZHNldC5jCisrKyBiL29pZHNldC5jCkBAIC01LDMzICs1LDY4IEBACiB7CiAJbWVtc2V0KCZzZXQtPnNldCwgMCwgc2l6ZW9mKHNldC0+c2V0KSk7CiAJaWYgKGluaXRpYWxfc2l6ZSkKLQkJa2hfcmVzaXplX29pZCgmc2V0LT5zZXQsIGluaXRpYWxfc2l6ZSk7CisJCWtoX3Jlc2l6ZV9vaWRfc2V0KCZzZXQtPnNldCwgaW5pdGlhbF9zaXplKTsKIH0KIAogaW50IG9pZHNldF9jb250YWlucyhjb25zdCBzdHJ1Y3Qgb2lkc2V0ICpzZXQsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKLQlraGl0ZXJfdCBwb3MgPSBraF9nZXRfb2lkKCZzZXQtPnNldCwgKm9pZCk7CisJa2hpdGVyX3QgcG9zID0ga2hfZ2V0X29pZF9zZXQoJnNldC0+c2V0LCAqb2lkKTsKIAlyZXR1cm4gcG9zICE9IGtoX2VuZCgmc2V0LT5zZXQpOwogfQogCiBpbnQgb2lkc2V0X2luc2VydChzdHJ1Y3Qgb2lkc2V0ICpzZXQsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAlpbnQgYWRkZWQ7Ci0Ja2hfcHV0X29pZCgmc2V0LT5zZXQsICpvaWQsICZhZGRlZCk7CisJa2hfcHV0X29pZF9zZXQoJnNldC0+c2V0LCAqb2lkLCAmYWRkZWQpOwogCXJldHVybiAhYWRkZWQ7CiB9CiAKIGludCBvaWRzZXRfcmVtb3ZlKHN0cnVjdCBvaWRzZXQgKnNldCwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewotCWtoaXRlcl90IHBvcyA9IGtoX2dldF9vaWQoJnNldC0+c2V0LCAqb2lkKTsKKwlraGl0ZXJfdCBwb3MgPSBraF9nZXRfb2lkX3NldCgmc2V0LT5zZXQsICpvaWQpOwogCWlmIChwb3MgPT0ga2hfZW5kKCZzZXQtPnNldCkpCiAJCXJldHVybiAwOwotCWtoX2RlbF9vaWQoJnNldC0+c2V0LCBwb3MpOworCWtoX2RlbF9vaWRfc2V0KCZzZXQtPnNldCwgcG9zKTsKIAlyZXR1cm4gMTsKIH0KIAogdm9pZCBvaWRzZXRfY2xlYXIoc3RydWN0IG9pZHNldCAqc2V0KQogewotCWtoX3JlbGVhc2Vfb2lkKCZzZXQtPnNldCk7CisJa2hfcmVsZWFzZV9vaWRfc2V0KCZzZXQtPnNldCk7CiAJb2lkc2V0X2luaXQoc2V0LCAwKTsKIH0KKwordm9pZCBvaWRzZXRfcGFyc2VfZmlsZShzdHJ1Y3Qgb2lkc2V0ICpzZXQsIGNvbnN0IGNoYXIgKnBhdGgpCit7CisJRklMRSAqZnA7CisJc3RydWN0IHN0cmJ1ZiBzYiA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBvYmplY3RfaWQgb2lkOworCisJZnAgPSBmb3BlbihwYXRoLCAiciIpOworCWlmICghZnApCisJCWRpZSgiY291bGQgbm90IG9wZW4gb2JqZWN0IG5hbWUgbGlzdDogJXMiLCBwYXRoKTsKKwl3aGlsZSAoIXN0cmJ1Zl9nZXRsaW5lKCZzYiwgZnApKSB7CisJCWNvbnN0IGNoYXIgKnA7CisJCWNvbnN0IGNoYXIgKm5hbWU7CisKKwkJLyoKKwkJICogQWxsb3cgdHJhaWxpbmcgY29tbWVudHMsIGxlYWRpbmcgd2hpdGVzcGFjZQorCQkgKiAoaW5jbHVkaW5nIGJlZm9yZSBjb21taXRzKSwgYW5kIGVtcHR5IG9yIHdoaXRlc3BhY2UKKwkJICogb25seSBsaW5lcy4KKwkJICovCisJCW5hbWUgPSBzdHJjaHIoc2IuYnVmLCAnIycpOworCQlpZiAobmFtZSkKKwkJCXN0cmJ1Zl9zZXRsZW4oJnNiLCBuYW1lIC0gc2IuYnVmKTsKKwkJc3RyYnVmX3RyaW0oJnNiKTsKKwkJaWYgKCFzYi5sZW4pCisJCQljb250aW51ZTsKKworCQlpZiAocGFyc2Vfb2lkX2hleChzYi5idWYsICZvaWQsICZwKSB8fCAqcCAhPSAnXDAnKQorCQkJZGllKCJpbnZhbGlkIG9iamVjdCBuYW1lOiAlcyIsIHNiLmJ1Zik7CisJCW9pZHNldF9pbnNlcnQoc2V0LCAmb2lkKTsKKwl9CisJaWYgKGZlcnJvcihmcCkpCisJCWRpZV9lcnJubygiQ291bGQgbm90IHJlYWQgJyVzJyIsIHBhdGgpOworCWZjbG9zZShmcCk7CisJc3RyYnVmX3JlbGVhc2UoJnNiKTsKK30KZGlmZiAtLWdpdCBhL29pZHNldC5oIGIvb2lkc2V0LmgKaW5kZXggOTMxNTMyNi4uZDhhMTA2YiAxMDA2NDQKLS0tIGEvb2lkc2V0LmgKKysrIGIvb2lkc2V0LmgKQEAgLTE1LDIzICsxNSwxMSBAQAogICogICAgICB0YWJsZSBvdmVyaGVhZC4KICAqLwogCi1zdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCBvaWRfaGFzaChzdHJ1Y3Qgb2JqZWN0X2lkIG9pZCkKLXsKLQlyZXR1cm4gc2hhMWhhc2gob2lkLmhhc2gpOwotfQotCi1zdGF0aWMgaW5saW5lIGludCBvaWRfZXF1YWwoc3RydWN0IG9iamVjdF9pZCBhLCBzdHJ1Y3Qgb2JqZWN0X2lkIGIpCi17Ci0JcmV0dXJuIG9pZGVxKCZhLCAmYik7Ci19Ci0KLUtIQVNIX0lOSVQob2lkLCBzdHJ1Y3Qgb2JqZWN0X2lkLCBpbnQsIDAsIG9pZF9oYXNoLCBvaWRfZXF1YWwpCi0KIC8qKgogICogQSBzaW5nbGUgb2lkc2V0OyBzaG91bGQgYmUgemVyby1pbml0aWFsaXplZCAob3IgdXNlIE9JRFNFVF9JTklUKS4KICAqLwogc3RydWN0IG9pZHNldCB7Ci0Ja2hfb2lkX3Qgc2V0OworCWtoX29pZF9zZXRfdCBzZXQ7CiB9OwogCiAjZGVmaW5lIE9JRFNFVF9JTklUIHsgeyAwIH0gfQpAQCAtNzIsOCArNjAsMTYgQEAKICAqLwogdm9pZCBvaWRzZXRfY2xlYXIoc3RydWN0IG9pZHNldCAqc2V0KTsKIAorLyoqCisgKiBBZGQgdGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlICdwYXRoJyB0byBhbiBpbml0aWFsaXplZCBvaWRzZXQuICBFYWNoIGxpbmUgaXMKKyAqIGFuIHVuYWJicmV2aWF0ZWQgb2JqZWN0IG5hbWUuICBDb21tZW50cyBiZWdpbiB3aXRoICcjJywgYW5kIHRyYWlsaW5nIGNvbW1lbnRzCisgKiBhcmUgYWxsb3dlZC4gIExlYWRpbmcgd2hpdGVzcGFjZSBhbmQgZW1wdHkgb3Igd2hpdGUtc3BhY2Ugb25seSBsaW5lcyBhcmUKKyAqIGlnbm9yZWQuCisgKi8KK3ZvaWQgb2lkc2V0X3BhcnNlX2ZpbGUoc3RydWN0IG9pZHNldCAqc2V0LCBjb25zdCBjaGFyICpwYXRoKTsKKwogc3RydWN0IG9pZHNldF9pdGVyIHsKLQlraF9vaWRfdCAqc2V0OworCWtoX29pZF9zZXRfdCAqc2V0OwogCWtoaXRlcl90IGl0ZXI7CiB9OwogCmRpZmYgLS1naXQgYS9wYWNrLWJpdG1hcC13cml0ZS5jIGIvcGFjay1iaXRtYXAtd3JpdGUuYwppbmRleCA5ZDFiOTUxLi5hN2E0OTY0IDEwMDY0NAotLS0gYS9wYWNrLWJpdG1hcC13cml0ZS5jCisrKyBiL3BhY2stYml0bWFwLXdyaXRlLmMKQEAgLTI4LDggKzI4LDggQEAKIAlzdHJ1Y3QgZXdhaF9iaXRtYXAgKmJsb2JzOwogCXN0cnVjdCBld2FoX2JpdG1hcCAqdGFnczsKIAotCWtoYXNoX3NoYTEgKmJpdG1hcHM7Ci0Ja2hhc2hfc2hhMSAqcmV1c2VkOworCWtoX29pZF9tYXBfdCAqYml0bWFwczsKKwlraF9vaWRfbWFwX3QgKnJldXNlZDsKIAlzdHJ1Y3QgcGFja2luZ19kYXRhICp0b19wYWNrOwogCiAJc3RydWN0IGJpdG1hcHBlZF9jb21taXQgKnNlbGVjdGVkOwpAQCAtNzcsNyArNzcsNyBAQAogCQkJYnJlYWs7CiAKIAkJZGVmYXVsdDoKLQkJCXJlYWxfdHlwZSA9IG9pZF9vYmplY3RfaW5mbyh0aGVfcmVwb3NpdG9yeSwKKwkJCXJlYWxfdHlwZSA9IG9pZF9vYmplY3RfaW5mbyh0b19wYWNrLT5yZXBvLAogCQkJCQkJICAgICZlbnRyeS0+aWR4Lm9pZCwgTlVMTCk7CiAJCQlicmVhazsKIAkJfQpAQCAtMTQyLDEzICsxNDIsMTMgQEAKIAlzZWVuX29iamVjdHNfbnIgPSAwOwogfQogCi1zdGF0aWMgdWludDMyX3QgZmluZF9vYmplY3RfcG9zKGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpCitzdGF0aWMgdWludDMyX3QgZmluZF9vYmplY3RfcG9zKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKLQlzdHJ1Y3Qgb2JqZWN0X2VudHJ5ICplbnRyeSA9IHBhY2tsaXN0X2ZpbmQod3JpdGVyLnRvX3BhY2ssIHNoYTEsIE5VTEwpOworCXN0cnVjdCBvYmplY3RfZW50cnkgKmVudHJ5ID0gcGFja2xpc3RfZmluZCh3cml0ZXIudG9fcGFjaywgb2lkKTsKIAogCWlmICghZW50cnkpIHsKIAkJZGllKCJGYWlsZWQgdG8gd3JpdGUgYml0bWFwIGluZGV4LiBQYWNrZmlsZSBkb2Vzbid0IGhhdmUgZnVsbCBjbG9zdXJlICIKLQkJCSIob2JqZWN0ICVzIGlzIG1pc3NpbmcpIiwgc2hhMV90b19oZXgoc2hhMSkpOworCQkJIihvYmplY3QgJXMgaXMgbWlzc2luZykiLCBvaWRfdG9faGV4KG9pZCkpOwogCX0KIAogCXJldHVybiBvZV9pbl9wYWNrX3Bvcyh3cml0ZXIudG9fcGFjaywgZW50cnkpOwpAQCAtMTU3LDcgKzE1Nyw3IEBACiBzdGF0aWMgdm9pZCBzaG93X29iamVjdChzdHJ1Y3Qgb2JqZWN0ICpvYmplY3QsIGNvbnN0IGNoYXIgKm5hbWUsIHZvaWQgKmRhdGEpCiB7CiAJc3RydWN0IGJpdG1hcCAqYmFzZSA9IGRhdGE7Ci0JYml0bWFwX3NldChiYXNlLCBmaW5kX29iamVjdF9wb3Mob2JqZWN0LT5vaWQuaGFzaCkpOworCWJpdG1hcF9zZXQoYmFzZSwgZmluZF9vYmplY3RfcG9zKCZvYmplY3QtPm9pZCkpOwogCW1hcmtfYXNfc2VlbihvYmplY3QpOwogfQogCkBAIC0xNzAsMTIgKzE3MCwxMiBAQAogYWRkX3RvX2luY2x1ZGVfc2V0KHN0cnVjdCBiaXRtYXAgKmJhc2UsIHN0cnVjdCBjb21taXQgKmNvbW1pdCkKIHsKIAlraGl0ZXJfdCBoYXNoX3BvczsKLQl1aW50MzJfdCBiaXRtYXBfcG9zID0gZmluZF9vYmplY3RfcG9zKGNvbW1pdC0+b2JqZWN0Lm9pZC5oYXNoKTsKKwl1aW50MzJfdCBiaXRtYXBfcG9zID0gZmluZF9vYmplY3RfcG9zKCZjb21taXQtPm9iamVjdC5vaWQpOwogCiAJaWYgKGJpdG1hcF9nZXQoYmFzZSwgYml0bWFwX3BvcykpCiAJCXJldHVybiAwOwogCi0JaGFzaF9wb3MgPSBraF9nZXRfc2hhMSh3cml0ZXIuYml0bWFwcywgY29tbWl0LT5vYmplY3Qub2lkLmhhc2gpOworCWhhc2hfcG9zID0ga2hfZ2V0X29pZF9tYXAod3JpdGVyLmJpdG1hcHMsIGNvbW1pdC0+b2JqZWN0Lm9pZCk7CiAJaWYgKGhhc2hfcG9zIDwga2hfZW5kKHdyaXRlci5iaXRtYXBzKSkgewogCQlzdHJ1Y3QgYml0bWFwcGVkX2NvbW1pdCAqYmMgPSBraF92YWx1ZSh3cml0ZXIuYml0bWFwcywgaGFzaF9wb3MpOwogCQliaXRtYXBfb3JfZXdhaChiYXNlLCBiYy0+Yml0bWFwKTsKQEAgLTI1NiwxMyArMjU2LDEzIEBACiAJc3RydWN0IGJpdG1hcCAqYmFzZSA9IGJpdG1hcF9uZXcoKTsKIAlzdHJ1Y3QgcmV2X2luZm8gcmV2czsKIAotCXdyaXRlci5iaXRtYXBzID0ga2hfaW5pdF9zaGExKCk7CisJd3JpdGVyLmJpdG1hcHMgPSBraF9pbml0X29pZF9tYXAoKTsKIAl3cml0ZXIudG9fcGFjayA9IHRvX3BhY2s7CiAKIAlpZiAod3JpdGVyLnNob3dfcHJvZ3Jlc3MpCiAJCXdyaXRlci5wcm9ncmVzcyA9IHN0YXJ0X3Byb2dyZXNzKCJCdWlsZGluZyBiaXRtYXBzIiwgd3JpdGVyLnNlbGVjdGVkX25yKTsKIAotCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksICZyZXZzLCBOVUxMKTsKKwlyZXBvX2luaXRfcmV2aXNpb25zKHRvX3BhY2stPnJlcG8sICZyZXZzLCBOVUxMKTsKIAlyZXZzLnRhZ19vYmplY3RzID0gMTsKIAlyZXZzLnRyZWVfb2JqZWN0cyA9IDE7CiAJcmV2cy5ibG9iX29iamVjdHMgPSAxOwpAQCAtMzExLDcgKzMxMSw3IEBACiAJCWlmIChpID49IHJldXNlX2FmdGVyKQogCQkJc3RvcmVkLT5mbGFncyB8PSBCSVRNQVBfRkxBR19SRVVTRTsKIAotCQloYXNoX3BvcyA9IGtoX3B1dF9zaGExKHdyaXRlci5iaXRtYXBzLCBvYmplY3QtPm9pZC5oYXNoLCAmaGFzaF9yZXQpOworCQloYXNoX3BvcyA9IGtoX3B1dF9vaWRfbWFwKHdyaXRlci5iaXRtYXBzLCBvYmplY3QtPm9pZCwgJmhhc2hfcmV0KTsKIAkJaWYgKGhhc2hfcmV0ID09IDApCiAJCQlkaWUoIkR1cGxpY2F0ZSBlbnRyeSB3aGVuIHdyaXRpbmcgaW5kZXg6ICVzIiwKIAkJCSAgICBvaWRfdG9faGV4KCZvYmplY3QtPm9pZCkpOwpAQCAtMzYzLDEwICszNjMsMTAgQEAKIHZvaWQgYml0bWFwX3dyaXRlcl9yZXVzZV9iaXRtYXBzKHN0cnVjdCBwYWNraW5nX2RhdGEgKnRvX3BhY2spCiB7CiAJc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdDsKLQlpZiAoIShiaXRtYXBfZ2l0ID0gcHJlcGFyZV9iaXRtYXBfZ2l0KCkpKQorCWlmICghKGJpdG1hcF9naXQgPSBwcmVwYXJlX2JpdG1hcF9naXQodG9fcGFjay0+cmVwbykpKQogCQlyZXR1cm47CiAKLQl3cml0ZXIucmV1c2VkID0ga2hfaW5pdF9zaGExKCk7CisJd3JpdGVyLnJldXNlZCA9IGtoX2luaXRfb2lkX21hcCgpOwogCXJlYnVpbGRfZXhpc3RpbmdfYml0bWFwcyhiaXRtYXBfZ2l0LCB0b19wYWNrLCB3cml0ZXIucmV1c2VkLAogCQkJCSB3cml0ZXIuc2hvd19wcm9ncmVzcyk7CiAJLyoKQEAgLTM3NSwxNCArMzc1LDE0IEBACiAJICovCiB9CiAKLXN0YXRpYyBzdHJ1Y3QgZXdhaF9iaXRtYXAgKmZpbmRfcmV1c2VkX2JpdG1hcChjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKQorc3RhdGljIHN0cnVjdCBld2FoX2JpdG1hcCAqZmluZF9yZXVzZWRfYml0bWFwKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAlraGl0ZXJfdCBoYXNoX3BvczsKIAogCWlmICghd3JpdGVyLnJldXNlZCkKIAkJcmV0dXJuIE5VTEw7CiAKLQloYXNoX3BvcyA9IGtoX2dldF9zaGExKHdyaXRlci5yZXVzZWQsIHNoYTEpOworCWhhc2hfcG9zID0ga2hfZ2V0X29pZF9tYXAod3JpdGVyLnJldXNlZCwgKm9pZCk7CiAJaWYgKGhhc2hfcG9zID49IGtoX2VuZCh3cml0ZXIucmV1c2VkKSkKIAkJcmV0dXJuIE5VTEw7CiAKQEAgLTQyMiwxNCArNDIyLDE0IEBACiAKIAkJaWYgKG5leHQgPT0gMCkgewogCQkJY2hvc2VuID0gaW5kZXhlZF9jb21taXRzW2ldOwotCQkJcmV1c2VkX2JpdG1hcCA9IGZpbmRfcmV1c2VkX2JpdG1hcChjaG9zZW4tPm9iamVjdC5vaWQuaGFzaCk7CisJCQlyZXVzZWRfYml0bWFwID0gZmluZF9yZXVzZWRfYml0bWFwKCZjaG9zZW4tPm9iamVjdC5vaWQpOwogCQl9IGVsc2UgewogCQkJY2hvc2VuID0gaW5kZXhlZF9jb21taXRzW2kgKyBuZXh0XTsKIAogCQkJZm9yIChqID0gMDsgaiA8PSBuZXh0OyArK2opIHsKIAkJCQlzdHJ1Y3QgY29tbWl0ICpjbSA9IGluZGV4ZWRfY29tbWl0c1tpICsgal07CiAKLQkJCQlyZXVzZWRfYml0bWFwID0gZmluZF9yZXVzZWRfYml0bWFwKGNtLT5vYmplY3Qub2lkLmhhc2gpOworCQkJCXJldXNlZF9iaXRtYXAgPSBmaW5kX3JldXNlZF9iaXRtYXAoJmNtLT5vYmplY3Qub2lkKTsKIAkJCQlpZiAocmV1c2VkX2JpdG1hcCB8fCAoY20tPm9iamVjdC5mbGFncyAmIE5FRURTX0JJVE1BUCkgIT0gMCkgewogCQkJCQljaG9zZW4gPSBjbTsKIAkJCQkJYnJlYWs7CkBAIC01MzUsNyArNTM1LDcgQEAKIAloZWFkZXIuZW50cnlfY291bnQgPSBodG9ubCh3cml0ZXIuc2VsZWN0ZWRfbnIpOwogCWhhc2hjcHkoaGVhZGVyLmNoZWNrc3VtLCB3cml0ZXIucGFja19jaGVja3N1bSk7CiAKLQloYXNod3JpdGUoZiwgJmhlYWRlciwgc2l6ZW9mKGhlYWRlcikpOworCWhhc2h3cml0ZShmLCAmaGVhZGVyLCBzaXplb2YoaGVhZGVyKSAtIEdJVF9NQVhfUkFXU1ogKyB0aGVfaGFzaF9hbGdvLT5yYXdzeik7CiAJZHVtcF9iaXRtYXAoZiwgd3JpdGVyLmNvbW1pdHMpOwogCWR1bXBfYml0bWFwKGYsIHdyaXRlci50cmVlcyk7CiAJZHVtcF9iaXRtYXAoZiwgd3JpdGVyLmJsb2JzKTsKZGlmZiAtLWdpdCBhL3BhY2stYml0bWFwLmMgYi9wYWNrLWJpdG1hcC5jCmluZGV4IDU4NDhjYzkuLjQ5YThkMTAgMTAwNjQ0Ci0tLSBhL3BhY2stYml0bWFwLmMKKysrIGIvcGFjay1iaXRtYXAuYwpAQCAtMTIsMTMgKzEyLDE0IEBACiAjaW5jbHVkZSAicGFja2ZpbGUuaCIKICNpbmNsdWRlICJyZXBvc2l0b3J5LmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCisjaW5jbHVkZSAibGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmgiCiAKIC8qCiAgKiBBbiBlbnRyeSBvbiB0aGUgYml0bWFwIGluZGV4LCByZXByZXNlbnRpbmcgdGhlIGJpdG1hcCBmb3IgYSBnaXZlbgogICogY29tbWl0LgogICovCiBzdHJ1Y3Qgc3RvcmVkX2JpdG1hcCB7Ci0JdW5zaWduZWQgY2hhciBzaGExWzIwXTsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAlzdHJ1Y3QgZXdhaF9iaXRtYXAgKnJvb3Q7CiAJc3RydWN0IHN0b3JlZF9iaXRtYXAgKnhvcjsKIAlpbnQgZmxhZ3M7CkBAIC02MCw4ICs2MSw4IEBACiAJc3RydWN0IGV3YWhfYml0bWFwICpibG9iczsKIAlzdHJ1Y3QgZXdhaF9iaXRtYXAgKnRhZ3M7CiAKLQkvKiBNYXAgZnJvbSBTSEExIC0+IGBzdG9yZWRfYml0bWFwYCBmb3IgYWxsIHRoZSBiaXRtYXBwZWQgY29tbWl0cyAqLwotCWtoYXNoX3NoYTEgKmJpdG1hcHM7CisJLyogTWFwIGZyb20gb2JqZWN0IElEIC0+IGBzdG9yZWRfYml0bWFwYCBmb3IgYWxsIHRoZSBiaXRtYXBwZWQgY29tbWl0cyAqLworCWtoX29pZF9tYXBfdCAqYml0bWFwczsKIAogCS8qIE51bWJlciBvZiBiaXRtYXBwZWQgY29tbWl0cyAqLwogCXVpbnQzMl90IGVudHJ5X2NvdW50OwpAQCAtODAsNyArODEsNyBAQAogCQlzdHJ1Y3Qgb2JqZWN0ICoqb2JqZWN0czsKIAkJdWludDMyX3QgKmhhc2hlczsKIAkJdWludDMyX3QgY291bnQsIGFsbG9jOwotCQlraGFzaF9zaGExX3BvcyAqcG9zaXRpb25zOworCQlraF9vaWRfcG9zX3QgKnBvc2l0aW9uczsKIAl9IGV4dF9pbmRleDsKIAogCS8qIEJpdG1hcCByZXN1bHQgb2YgdGhlIGxhc3QgcGVyZm9ybWVkIHdhbGsgKi8KQEAgLTEzOCw3ICsxMzksNyBAQAogewogCXN0cnVjdCBiaXRtYXBfZGlza19oZWFkZXIgKmhlYWRlciA9ICh2b2lkICopaW5kZXgtPm1hcDsKIAotCWlmIChpbmRleC0+bWFwX3NpemUgPCBzaXplb2YoKmhlYWRlcikgKyAyMCkKKwlpZiAoaW5kZXgtPm1hcF9zaXplIDwgc2l6ZW9mKCpoZWFkZXIpICsgdGhlX2hhc2hfYWxnby0+cmF3c3opCiAJCXJldHVybiBlcnJvcigiQ29ycnVwdGVkIGJpdG1hcCBpbmRleCAobWlzc2luZyBoZWFkZXIgZGF0YSkiKTsKIAogCWlmIChtZW1jbXAoaGVhZGVyLT5tYWdpYywgQklUTUFQX0lEWF9TSUdOQVRVUkUsIHNpemVvZihCSVRNQVBfSURYX1NJR05BVFVSRSkpICE9IDApCkBAIC0xNTcsMTkgKzE1OCwxOSBAQAogCQkJCSIoR2l0IHJlcXVpcmVzIEJJVE1BUF9PUFRfRlVMTF9EQUcpIik7CiAKIAkJaWYgKGZsYWdzICYgQklUTUFQX09QVF9IQVNIX0NBQ0hFKSB7Ci0JCQl1bnNpZ25lZCBjaGFyICplbmQgPSBpbmRleC0+bWFwICsgaW5kZXgtPm1hcF9zaXplIC0gMjA7CisJCQl1bnNpZ25lZCBjaGFyICplbmQgPSBpbmRleC0+bWFwICsgaW5kZXgtPm1hcF9zaXplIC0gdGhlX2hhc2hfYWxnby0+cmF3c3o7CiAJCQlpbmRleC0+aGFzaGVzID0gKCh1aW50MzJfdCAqKWVuZCkgLSBpbmRleC0+cGFjay0+bnVtX29iamVjdHM7CiAJCX0KIAl9CiAKIAlpbmRleC0+ZW50cnlfY291bnQgPSBudG9obChoZWFkZXItPmVudHJ5X2NvdW50KTsKLQlpbmRleC0+bWFwX3BvcyArPSBzaXplb2YoKmhlYWRlcik7CisJaW5kZXgtPm1hcF9wb3MgKz0gc2l6ZW9mKCpoZWFkZXIpIC0gR0lUX01BWF9SQVdTWiArIHRoZV9oYXNoX2FsZ28tPnJhd3N6OwogCXJldHVybiAwOwogfQogCiBzdGF0aWMgc3RydWN0IHN0b3JlZF9iaXRtYXAgKnN0b3JlX2JpdG1hcChzdHJ1Y3QgYml0bWFwX2luZGV4ICppbmRleCwKIAkJCQkJICBzdHJ1Y3QgZXdhaF9iaXRtYXAgKnJvb3QsCi0JCQkJCSAgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwKKwkJCQkJICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCiAJCQkJCSAgc3RydWN0IHN0b3JlZF9iaXRtYXAgKnhvcl93aXRoLAogCQkJCQkgIGludCBmbGFncykKIHsKQEAgLTE4MSwxNSArMTgyLDE1IEBACiAJc3RvcmVkLT5yb290ID0gcm9vdDsKIAlzdG9yZWQtPnhvciA9IHhvcl93aXRoOwogCXN0b3JlZC0+ZmxhZ3MgPSBmbGFnczsKLQloYXNoY3B5KHN0b3JlZC0+c2hhMSwgc2hhMSk7CisJb2lkY3B5KCZzdG9yZWQtPm9pZCwgb2lkKTsKIAotCWhhc2hfcG9zID0ga2hfcHV0X3NoYTEoaW5kZXgtPmJpdG1hcHMsIHN0b3JlZC0+c2hhMSwgJnJldCk7CisJaGFzaF9wb3MgPSBraF9wdXRfb2lkX21hcChpbmRleC0+Yml0bWFwcywgc3RvcmVkLT5vaWQsICZyZXQpOwogCiAJLyogYSAwIHJldHVybiBjb2RlIG1lYW5zIHRoZSBpbnNlcnRpb24gc3VjY2VlZGVkIHdpdGggbm8gY2hhbmdlcywKIAkgKiBiZWNhdXNlIHRoZSBTSEExIGFscmVhZHkgZXhpc3RlZCBvbiB0aGUgbWFwLiB0aGlzIGlzIGJhZCwgdGhlcmUKIAkgKiBzaG91bGRuJ3QgYmUgZHVwbGljYXRlZCBjb21taXRzIGluIHRoZSBpbmRleCAqLwogCWlmIChyZXQgPT0gMCkgewotCQllcnJvcigiRHVwbGljYXRlIGVudHJ5IGluIGJpdG1hcCBpbmRleDogJXMiLCBzaGExX3RvX2hleChzaGExKSk7CisJCWVycm9yKCJEdXBsaWNhdGUgZW50cnkgaW4gYml0bWFwIGluZGV4OiAlcyIsIG9pZF90b19oZXgob2lkKSk7CiAJCXJldHVybiBOVUxMOwogCX0KIApAQCAtMjIxLDEzICsyMjIsMTMgQEAKIAkJc3RydWN0IGV3YWhfYml0bWFwICpiaXRtYXAgPSBOVUxMOwogCQlzdHJ1Y3Qgc3RvcmVkX2JpdG1hcCAqeG9yX2JpdG1hcCA9IE5VTEw7CiAJCXVpbnQzMl90IGNvbW1pdF9pZHhfcG9zOwotCQljb25zdCB1bnNpZ25lZCBjaGFyICpzaGExOworCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAogCQljb21taXRfaWR4X3BvcyA9IHJlYWRfYmUzMihpbmRleC0+bWFwLCAmaW5kZXgtPm1hcF9wb3MpOwogCQl4b3Jfb2Zmc2V0ID0gcmVhZF91OChpbmRleC0+bWFwLCAmaW5kZXgtPm1hcF9wb3MpOwogCQlmbGFncyA9IHJlYWRfdTgoaW5kZXgtPm1hcCwgJmluZGV4LT5tYXBfcG9zKTsKIAotCQlzaGExID0gbnRoX3BhY2tlZF9vYmplY3Rfc2hhMShpbmRleC0+cGFjaywgY29tbWl0X2lkeF9wb3MpOworCQludGhfcGFja2VkX29iamVjdF9pZCgmb2lkLCBpbmRleC0+cGFjaywgY29tbWl0X2lkeF9wb3MpOwogCiAJCWJpdG1hcCA9IHJlYWRfYml0bWFwXzEoaW5kZXgpOwogCQlpZiAoIWJpdG1hcCkKQEAgLTI0NCw3ICsyNDUsNyBAQAogCQl9CiAKIAkJcmVjZW50X2JpdG1hcHNbaSAlIE1BWF9YT1JfT0ZGU0VUXSA9IHN0b3JlX2JpdG1hcCgKLQkJCWluZGV4LCBiaXRtYXAsIHNoYTEsIHhvcl9iaXRtYXAsIGZsYWdzKTsKKwkJCWluZGV4LCBiaXRtYXAsICZvaWQsIHhvcl9iaXRtYXAsIGZsYWdzKTsKIAl9CiAKIAlyZXR1cm4gMDsKQEAgLTMwNiw5ICszMDcsMTAgQEAKIHsKIAlhc3NlcnQoYml0bWFwX2dpdC0+bWFwKTsKIAotCWJpdG1hcF9naXQtPmJpdG1hcHMgPSBraF9pbml0X3NoYTEoKTsKLQliaXRtYXBfZ2l0LT5leHRfaW5kZXgucG9zaXRpb25zID0ga2hfaW5pdF9zaGExX3BvcygpOwotCWxvYWRfcGFja19yZXZpbmRleChiaXRtYXBfZ2l0LT5wYWNrKTsKKwliaXRtYXBfZ2l0LT5iaXRtYXBzID0ga2hfaW5pdF9vaWRfbWFwKCk7CisJYml0bWFwX2dpdC0+ZXh0X2luZGV4LnBvc2l0aW9ucyA9IGtoX2luaXRfb2lkX3BvcygpOworCWlmIChsb2FkX3BhY2tfcmV2aW5kZXgoYml0bWFwX2dpdC0+cGFjaykpCisJCWdvdG8gZmFpbGVkOwogCiAJaWYgKCEoYml0bWFwX2dpdC0+Y29tbWl0cyA9IHJlYWRfYml0bWFwXzEoYml0bWFwX2dpdCkpIHx8CiAJCSEoYml0bWFwX2dpdC0+dHJlZXMgPSByZWFkX2JpdG1hcF8xKGJpdG1hcF9naXQpKSB8fApAQCAtMzI1LDE3ICszMjcsMjUgQEAKIAltdW5tYXAoYml0bWFwX2dpdC0+bWFwLCBiaXRtYXBfZ2l0LT5tYXBfc2l6ZSk7CiAJYml0bWFwX2dpdC0+bWFwID0gTlVMTDsKIAliaXRtYXBfZ2l0LT5tYXBfc2l6ZSA9IDA7CisKKwlraF9kZXN0cm95X29pZF9tYXAoYml0bWFwX2dpdC0+Yml0bWFwcyk7CisJYml0bWFwX2dpdC0+Yml0bWFwcyA9IE5VTEw7CisKKwlraF9kZXN0cm95X29pZF9wb3MoYml0bWFwX2dpdC0+ZXh0X2luZGV4LnBvc2l0aW9ucyk7CisJYml0bWFwX2dpdC0+ZXh0X2luZGV4LnBvc2l0aW9ucyA9IE5VTEw7CisKIAlyZXR1cm4gLTE7CiB9CiAKLXN0YXRpYyBpbnQgb3Blbl9wYWNrX2JpdG1hcChzdHJ1Y3QgYml0bWFwX2luZGV4ICpiaXRtYXBfZ2l0KQorc3RhdGljIGludCBvcGVuX3BhY2tfYml0bWFwKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgIHN0cnVjdCBiaXRtYXBfaW5kZXggKmJpdG1hcF9naXQpCiB7CiAJc3RydWN0IHBhY2tlZF9naXQgKnA7CiAJaW50IHJldCA9IC0xOwogCiAJYXNzZXJ0KCFiaXRtYXBfZ2l0LT5tYXApOwogCi0JZm9yIChwID0gZ2V0X2FsbF9wYWNrcyh0aGVfcmVwb3NpdG9yeSk7IHA7IHAgPSBwLT5uZXh0KSB7CisJZm9yIChwID0gZ2V0X2FsbF9wYWNrcyhyKTsgcDsgcCA9IHAtPm5leHQpIHsKIAkJaWYgKG9wZW5fcGFja19iaXRtYXBfMShiaXRtYXBfZ2l0LCBwKSA9PSAwKQogCQkJcmV0ID0gMDsKIAl9CkBAIC0zNDMsMTEgKzM1MywxMSBAQAogCXJldHVybiByZXQ7CiB9CiAKLXN0cnVjdCBiaXRtYXBfaW5kZXggKnByZXBhcmVfYml0bWFwX2dpdCh2b2lkKQorc3RydWN0IGJpdG1hcF9pbmRleCAqcHJlcGFyZV9iaXRtYXBfZ2l0KHN0cnVjdCByZXBvc2l0b3J5ICpyKQogewogCXN0cnVjdCBiaXRtYXBfaW5kZXggKmJpdG1hcF9naXQgPSB4Y2FsbG9jKDEsIHNpemVvZigqYml0bWFwX2dpdCkpOwogCi0JaWYgKCFvcGVuX3BhY2tfYml0bWFwKGJpdG1hcF9naXQpICYmICFsb2FkX3BhY2tfYml0bWFwKGJpdG1hcF9naXQpKQorCWlmICghb3Blbl9wYWNrX2JpdG1hcChyLCBiaXRtYXBfZ2l0KSAmJiAhbG9hZF9wYWNrX2JpdG1hcChiaXRtYXBfZ2l0KSkKIAkJcmV0dXJuIGJpdG1hcF9naXQ7CiAKIAlmcmVlX2JpdG1hcF9pbmRleChiaXRtYXBfZ2l0KTsKQEAgLTM2MSwxMCArMzcxLDEwIEBACiB9OwogCiBzdGF0aWMgaW5saW5lIGludCBiaXRtYXBfcG9zaXRpb25fZXh0ZW5kZWQoc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdCwKLQkJCQkJICAgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSkKKwkJCQkJICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewotCWtoYXNoX3NoYTFfcG9zICpwb3NpdGlvbnMgPSBiaXRtYXBfZ2l0LT5leHRfaW5kZXgucG9zaXRpb25zOwotCWtoaXRlcl90IHBvcyA9IGtoX2dldF9zaGExX3Bvcyhwb3NpdGlvbnMsIHNoYTEpOworCWtoX29pZF9wb3NfdCAqcG9zaXRpb25zID0gYml0bWFwX2dpdC0+ZXh0X2luZGV4LnBvc2l0aW9uczsKKwlraGl0ZXJfdCBwb3MgPSBraF9nZXRfb2lkX3Bvcyhwb3NpdGlvbnMsICpvaWQpOwogCiAJaWYgKHBvcyA8IGtoX2VuZChwb3NpdGlvbnMpKSB7CiAJCWludCBiaXRtYXBfcG9zID0ga2hfdmFsdWUocG9zaXRpb25zLCBwb3MpOwpAQCAtMzc1LDkgKzM4NSw5IEBACiB9CiAKIHN0YXRpYyBpbmxpbmUgaW50IGJpdG1hcF9wb3NpdGlvbl9wYWNrZmlsZShzdHJ1Y3QgYml0bWFwX2luZGV4ICpiaXRtYXBfZ2l0LAotCQkJCQkgICBjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKQorCQkJCQkgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0Jb2ZmX3Qgb2Zmc2V0ID0gZmluZF9wYWNrX2VudHJ5X29uZShzaGExLCBiaXRtYXBfZ2l0LT5wYWNrKTsKKwlvZmZfdCBvZmZzZXQgPSBmaW5kX3BhY2tfZW50cnlfb25lKG9pZC0+aGFzaCwgYml0bWFwX2dpdC0+cGFjayk7CiAJaWYgKCFvZmZzZXQpCiAJCXJldHVybiAtMTsKIApAQCAtMzg1LDEwICszOTUsMTAgQEAKIH0KIAogc3RhdGljIGludCBiaXRtYXBfcG9zaXRpb24oc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdCwKLQkJCSAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpCisJCQkgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0JaW50IHBvcyA9IGJpdG1hcF9wb3NpdGlvbl9wYWNrZmlsZShiaXRtYXBfZ2l0LCBzaGExKTsKLQlyZXR1cm4gKHBvcyA+PSAwKSA/IHBvcyA6IGJpdG1hcF9wb3NpdGlvbl9leHRlbmRlZChiaXRtYXBfZ2l0LCBzaGExKTsKKwlpbnQgcG9zID0gYml0bWFwX3Bvc2l0aW9uX3BhY2tmaWxlKGJpdG1hcF9naXQsIG9pZCk7CisJcmV0dXJuIChwb3MgPj0gMCkgPyBwb3MgOiBiaXRtYXBfcG9zaXRpb25fZXh0ZW5kZWQoYml0bWFwX2dpdCwgb2lkKTsKIH0KIAogc3RhdGljIGludCBleHRfaW5kZXhfYWRkX29iamVjdChzdHJ1Y3QgYml0bWFwX2luZGV4ICpiaXRtYXBfZ2l0LApAQCAtNDAwLDcgKzQxMCw3IEBACiAJaW50IGhhc2hfcmV0OwogCWludCBiaXRtYXBfcG9zOwogCi0JaGFzaF9wb3MgPSBraF9wdXRfc2hhMV9wb3MoZWluZGV4LT5wb3NpdGlvbnMsIG9iamVjdC0+b2lkLmhhc2gsICZoYXNoX3JldCk7CisJaGFzaF9wb3MgPSBraF9wdXRfb2lkX3BvcyhlaW5kZXgtPnBvc2l0aW9ucywgb2JqZWN0LT5vaWQsICZoYXNoX3JldCk7CiAJaWYgKGhhc2hfcmV0ID4gMCkgewogCQlpZiAoZWluZGV4LT5jb3VudCA+PSBlaW5kZXgtPmFsbG9jKSB7CiAJCQllaW5kZXgtPmFsbG9jID0gKGVpbmRleC0+YWxsb2MgKyAxNikgKiAzIC8gMjsKQEAgLTQzMCw3ICs0NDAsNyBAQAogCXN0cnVjdCBiaXRtYXBfc2hvd19kYXRhICpkYXRhID0gZGF0YV87CiAJaW50IGJpdG1hcF9wb3M7CiAKLQliaXRtYXBfcG9zID0gYml0bWFwX3Bvc2l0aW9uKGRhdGEtPmJpdG1hcF9naXQsIG9iamVjdC0+b2lkLmhhc2gpOworCWJpdG1hcF9wb3MgPSBiaXRtYXBfcG9zaXRpb24oZGF0YS0+Yml0bWFwX2dpdCwgJm9iamVjdC0+b2lkKTsKIAogCWlmIChiaXRtYXBfcG9zIDwgMCkKIAkJYml0bWFwX3BvcyA9IGV4dF9pbmRleF9hZGRfb2JqZWN0KGRhdGEtPmJpdG1hcF9naXQsIG9iamVjdCwKQEAgLTQ0NSw3ICs0NTUsNyBAQAogCiBzdGF0aWMgaW50IGFkZF90b19pbmNsdWRlX3NldChzdHJ1Y3QgYml0bWFwX2luZGV4ICpiaXRtYXBfZ2l0LAogCQkJICAgICAgc3RydWN0IGluY2x1ZGVfZGF0YSAqZGF0YSwKLQkJCSAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsCisJCQkgICAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCiAJCQkgICAgICBpbnQgYml0bWFwX3BvcykKIHsKIAlraGl0ZXJfdCBoYXNoX3BvczsKQEAgLTQ1Niw3ICs0NjYsNyBAQAogCWlmIChiaXRtYXBfZ2V0KGRhdGEtPmJhc2UsIGJpdG1hcF9wb3MpKQogCQlyZXR1cm4gMDsKIAotCWhhc2hfcG9zID0ga2hfZ2V0X3NoYTEoYml0bWFwX2dpdC0+Yml0bWFwcywgc2hhMSk7CisJaGFzaF9wb3MgPSBraF9nZXRfb2lkX21hcChiaXRtYXBfZ2l0LT5iaXRtYXBzLCAqb2lkKTsKIAlpZiAoaGFzaF9wb3MgPCBraF9lbmQoYml0bWFwX2dpdC0+Yml0bWFwcykpIHsKIAkJc3RydWN0IHN0b3JlZF9iaXRtYXAgKnN0ID0ga2hfdmFsdWUoYml0bWFwX2dpdC0+Yml0bWFwcywgaGFzaF9wb3MpOwogCQliaXRtYXBfb3JfZXdhaChkYXRhLT5iYXNlLCBsb29rdXBfc3RvcmVkX2JpdG1hcChzdCkpOwpAQCAtNDcyLDEzICs0ODIsMTMgQEAKIAlzdHJ1Y3QgaW5jbHVkZV9kYXRhICpkYXRhID0gX2RhdGE7CiAJaW50IGJpdG1hcF9wb3M7CiAKLQliaXRtYXBfcG9zID0gYml0bWFwX3Bvc2l0aW9uKGRhdGEtPmJpdG1hcF9naXQsIGNvbW1pdC0+b2JqZWN0Lm9pZC5oYXNoKTsKKwliaXRtYXBfcG9zID0gYml0bWFwX3Bvc2l0aW9uKGRhdGEtPmJpdG1hcF9naXQsICZjb21taXQtPm9iamVjdC5vaWQpOwogCWlmIChiaXRtYXBfcG9zIDwgMCkKIAkJYml0bWFwX3BvcyA9IGV4dF9pbmRleF9hZGRfb2JqZWN0KGRhdGEtPmJpdG1hcF9naXQsCiAJCQkJCQkgIChzdHJ1Y3Qgb2JqZWN0ICopY29tbWl0LAogCQkJCQkJICBOVUxMKTsKIAotCWlmICghYWRkX3RvX2luY2x1ZGVfc2V0KGRhdGEtPmJpdG1hcF9naXQsIGRhdGEsIGNvbW1pdC0+b2JqZWN0Lm9pZC5oYXNoLAorCWlmICghYWRkX3RvX2luY2x1ZGVfc2V0KGRhdGEtPmJpdG1hcF9naXQsIGRhdGEsICZjb21taXQtPm9iamVjdC5vaWQsCiAJCQkJYml0bWFwX3BvcykpIHsKIAkJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnQgPSBjb21taXQtPnBhcmVudHM7CiAKQEAgLTUxNiw3ICs1MjYsNyBAQAogCQlyb290cyA9IHJvb3RzLT5uZXh0OwogCiAJCWlmIChvYmplY3QtPnR5cGUgPT0gT0JKX0NPTU1JVCkgewotCQkJa2hpdGVyX3QgcG9zID0ga2hfZ2V0X3NoYTEoYml0bWFwX2dpdC0+Yml0bWFwcywgb2JqZWN0LT5vaWQuaGFzaCk7CisJCQlraGl0ZXJfdCBwb3MgPSBraF9nZXRfb2lkX21hcChiaXRtYXBfZ2l0LT5iaXRtYXBzLCBvYmplY3QtPm9pZCk7CiAKIAkJCWlmIChwb3MgPCBraF9lbmQoYml0bWFwX2dpdC0+Yml0bWFwcykpIHsKIAkJCQlzdHJ1Y3Qgc3RvcmVkX2JpdG1hcCAqc3QgPSBraF92YWx1ZShiaXRtYXBfZ2l0LT5iaXRtYXBzLCBwb3MpOwpAQCAtNTU4LDcgKzU2OCw3IEBACiAJCWludCBwb3M7CiAKIAkJcm9vdHMgPSByb290cy0+bmV4dDsKLQkJcG9zID0gYml0bWFwX3Bvc2l0aW9uKGJpdG1hcF9naXQsIG9iamVjdC0+b2lkLmhhc2gpOworCQlwb3MgPSBiaXRtYXBfcG9zaXRpb24oYml0bWFwX2dpdCwgJm9iamVjdC0+b2lkKTsKIAogCQlpZiAocG9zIDwgMCB8fCBiYXNlID09IE5VTEwgfHwgIWJpdG1hcF9nZXQoYmFzZSwgcG9zKSkgewogCQkJb2JqZWN0LT5mbGFncyAmPSB+VU5JTlRFUkVTVElORzsKQEAgLTU5Nyw2ICs2MDcsNyBAQAogfQogCiBzdGF0aWMgdm9pZCBzaG93X2V4dGVuZGVkX29iamVjdHMoc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdCwKKwkJCQkgIHN0cnVjdCByZXZfaW5mbyAqcmV2cywKIAkJCQkgIHNob3dfcmVhY2hhYmxlX2ZuIHNob3dfcmVhY2gpCiB7CiAJc3RydWN0IGJpdG1hcCAqb2JqZWN0cyA9IGJpdG1hcF9naXQtPnJlc3VsdDsKQEAgLTYxMCwxNyArNjIxLDQ4IEBACiAJCQljb250aW51ZTsKIAogCQlvYmogPSBlaW5kZXgtPm9iamVjdHNbaV07CisJCWlmICgob2JqLT50eXBlID09IE9CSl9CTE9CICYmICFyZXZzLT5ibG9iX29iamVjdHMpIHx8CisJCSAgICAob2JqLT50eXBlID09IE9CSl9UUkVFICYmICFyZXZzLT50cmVlX29iamVjdHMpIHx8CisJCSAgICAob2JqLT50eXBlID09IE9CSl9UQUcgJiYgIXJldnMtPnRhZ19vYmplY3RzKSkKKwkJCWNvbnRpbnVlOworCiAJCXNob3dfcmVhY2goJm9iai0+b2lkLCBvYmotPnR5cGUsIDAsIGVpbmRleC0+aGFzaGVzW2ldLCBOVUxMLCAwKTsKIAl9CiB9CiAKK3N0YXRpYyB2b2lkIGluaXRfdHlwZV9pdGVyYXRvcihzdHJ1Y3QgZXdhaF9pdGVyYXRvciAqaXQsCisJCQkgICAgICAgc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdCwKKwkJCSAgICAgICBlbnVtIG9iamVjdF90eXBlIHR5cGUpCit7CisJc3dpdGNoICh0eXBlKSB7CisJY2FzZSBPQkpfQ09NTUlUOgorCQlld2FoX2l0ZXJhdG9yX2luaXQoaXQsIGJpdG1hcF9naXQtPmNvbW1pdHMpOworCQlicmVhazsKKworCWNhc2UgT0JKX1RSRUU6CisJCWV3YWhfaXRlcmF0b3JfaW5pdChpdCwgYml0bWFwX2dpdC0+dHJlZXMpOworCQlicmVhazsKKworCWNhc2UgT0JKX0JMT0I6CisJCWV3YWhfaXRlcmF0b3JfaW5pdChpdCwgYml0bWFwX2dpdC0+YmxvYnMpOworCQlicmVhazsKKworCWNhc2UgT0JKX1RBRzoKKwkJZXdhaF9pdGVyYXRvcl9pbml0KGl0LCBiaXRtYXBfZ2l0LT50YWdzKTsKKwkJYnJlYWs7CisKKwlkZWZhdWx0OgorCQlCVUcoIm9iamVjdCB0eXBlICVkIG5vdCBzdG9yZWQgYnkgYml0bWFwIHR5cGUgaW5kZXgiLCB0eXBlKTsKKwkJYnJlYWs7CisJfQorfQorCiBzdGF0aWMgdm9pZCBzaG93X29iamVjdHNfZm9yX3R5cGUoCiAJc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdCwKLQlzdHJ1Y3QgZXdhaF9iaXRtYXAgKnR5cGVfZmlsdGVyLAogCWVudW0gb2JqZWN0X3R5cGUgb2JqZWN0X3R5cGUsCiAJc2hvd19yZWFjaGFibGVfZm4gc2hvd19yZWFjaCkKIHsKLQlzaXplX3QgcG9zID0gMCwgaSA9IDA7CisJc2l6ZV90IGkgPSAwOwogCXVpbnQzMl90IG9mZnNldDsKIAogCXN0cnVjdCBld2FoX2l0ZXJhdG9yIGl0OwpAQCAtNjI4LDEzICs2NzAsMTUgQEAKIAogCXN0cnVjdCBiaXRtYXAgKm9iamVjdHMgPSBiaXRtYXBfZ2l0LT5yZXN1bHQ7CiAKLQlpZiAoYml0bWFwX2dpdC0+cmV1c2Vfb2JqZWN0cyA9PSBiaXRtYXBfZ2l0LT5wYWNrLT5udW1fb2JqZWN0cykKLQkJcmV0dXJuOworCWluaXRfdHlwZV9pdGVyYXRvcigmaXQsIGJpdG1hcF9naXQsIG9iamVjdF90eXBlKTsKIAotCWV3YWhfaXRlcmF0b3JfaW5pdCgmaXQsIHR5cGVfZmlsdGVyKTsKLQotCXdoaWxlIChpIDwgb2JqZWN0cy0+d29yZF9hbGxvYyAmJiBld2FoX2l0ZXJhdG9yX25leHQoJmZpbHRlciwgJml0KSkgeworCWZvciAoaSA9IDA7IGkgPCBvYmplY3RzLT53b3JkX2FsbG9jICYmCisJCQlld2FoX2l0ZXJhdG9yX25leHQoJmZpbHRlciwgJml0KTsgaSsrKSB7CiAJCWV3b3JkX3Qgd29yZCA9IG9iamVjdHMtPndvcmRzW2ldICYgZmlsdGVyOworCQlzaXplX3QgcG9zID0gKGkgKiBCSVRTX0lOX0VXT1JEKTsKKworCQlpZiAoIXdvcmQpCisJCQljb250aW51ZTsKIAogCQlmb3IgKG9mZnNldCA9IDA7IG9mZnNldCA8IEJJVFNfSU5fRVdPUkQ7ICsrb2Zmc2V0KSB7CiAJCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKQEAgLTY0NiwyMCArNjkwLDE0IEBACiAKIAkJCW9mZnNldCArPSBld2FoX2JpdF9jdHo2NCh3b3JkID4+IG9mZnNldCk7CiAKLQkJCWlmIChwb3MgKyBvZmZzZXQgPCBiaXRtYXBfZ2l0LT5yZXVzZV9vYmplY3RzKQotCQkJCWNvbnRpbnVlOwotCiAJCQllbnRyeSA9ICZiaXRtYXBfZ2l0LT5wYWNrLT5yZXZpbmRleFtwb3MgKyBvZmZzZXRdOwotCQkJbnRoX3BhY2tlZF9vYmplY3Rfb2lkKCZvaWQsIGJpdG1hcF9naXQtPnBhY2ssIGVudHJ5LT5ucik7CisJCQludGhfcGFja2VkX29iamVjdF9pZCgmb2lkLCBiaXRtYXBfZ2l0LT5wYWNrLCBlbnRyeS0+bnIpOwogCiAJCQlpZiAoYml0bWFwX2dpdC0+aGFzaGVzKQogCQkJCWhhc2ggPSBnZXRfYmUzMihiaXRtYXBfZ2l0LT5oYXNoZXMgKyBlbnRyeS0+bnIpOwogCiAJCQlzaG93X3JlYWNoKCZvaWQsIG9iamVjdF90eXBlLCAwLCBoYXNoLCBiaXRtYXBfZ2l0LT5wYWNrLCBlbnRyeS0+b2Zmc2V0KTsKIAkJfQotCi0JCXBvcyArPSBCSVRTX0lOX0VXT1JEOwotCQlpKys7CiAJfQogfQogCkBAIC02NzcsNyArNzE1LDE3OSBAQAogCXJldHVybiAwOwogfQogCi1zdHJ1Y3QgYml0bWFwX2luZGV4ICpwcmVwYXJlX2JpdG1hcF93YWxrKHN0cnVjdCByZXZfaW5mbyAqcmV2cykKK3N0YXRpYyBzdHJ1Y3QgYml0bWFwICpmaW5kX3RpcF9ibG9icyhzdHJ1Y3QgYml0bWFwX2luZGV4ICpiaXRtYXBfZ2l0LAorCQkJCSAgICAgc3RydWN0IG9iamVjdF9saXN0ICp0aXBfb2JqZWN0cykKK3sKKwlzdHJ1Y3QgYml0bWFwICpyZXN1bHQgPSBiaXRtYXBfbmV3KCk7CisJc3RydWN0IG9iamVjdF9saXN0ICpwOworCisJZm9yIChwID0gdGlwX29iamVjdHM7IHA7IHAgPSBwLT5uZXh0KSB7CisJCWludCBwb3M7CisKKwkJaWYgKHAtPml0ZW0tPnR5cGUgIT0gT0JKX0JMT0IpCisJCQljb250aW51ZTsKKworCQlwb3MgPSBiaXRtYXBfcG9zaXRpb24oYml0bWFwX2dpdCwgJnAtPml0ZW0tPm9pZCk7CisJCWlmIChwb3MgPCAwKQorCQkJY29udGludWU7CisKKwkJYml0bWFwX3NldChyZXN1bHQsIHBvcyk7CisJfQorCisJcmV0dXJuIHJlc3VsdDsKK30KKworc3RhdGljIHZvaWQgZmlsdGVyX2JpdG1hcF9ibG9iX25vbmUoc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdCwKKwkJCQkgICAgc3RydWN0IG9iamVjdF9saXN0ICp0aXBfb2JqZWN0cywKKwkJCQkgICAgc3RydWN0IGJpdG1hcCAqdG9fZmlsdGVyKQoreworCXN0cnVjdCBlaW5kZXggKmVpbmRleCA9ICZiaXRtYXBfZ2l0LT5leHRfaW5kZXg7CisJc3RydWN0IGJpdG1hcCAqdGlwczsKKwlzdHJ1Y3QgZXdhaF9pdGVyYXRvciBpdDsKKwlld29yZF90IG1hc2s7CisJdWludDMyX3QgaTsKKworCS8qCisJICogVGhlIG5vbi1iaXRtYXAgdmVyc2lvbiBvZiB0aGlzIGZpbHRlciBuZXZlciByZW1vdmVzCisJICogYmxvYnMgd2hpY2ggdGhlIG90aGVyIHNpZGUgc3BlY2lmaWNhbGx5IGFza2VkIGZvciwKKwkgKiBzbyB3ZSBtdXN0IG1hdGNoIHRoYXQgYmVoYXZpb3IuCisJICovCisJdGlwcyA9IGZpbmRfdGlwX2Jsb2JzKGJpdG1hcF9naXQsIHRpcF9vYmplY3RzKTsKKworCS8qCisJICogV2UgY2FuIHVzZSB0aGUgYmxvYiB0eXBlLWJpdG1hcCB0byB3b3JrIGluIHdob2xlIHdvcmRzCisJICogZm9yIHRoZSBvYmplY3RzIHRoYXQgYXJlIGFjdHVhbGx5IGluIHRoZSBiaXRtYXBwZWQgcGFja2ZpbGUuCisJICovCisJZm9yIChpID0gMCwgaW5pdF90eXBlX2l0ZXJhdG9yKCZpdCwgYml0bWFwX2dpdCwgT0JKX0JMT0IpOworCSAgICAgaSA8IHRvX2ZpbHRlci0+d29yZF9hbGxvYyAmJiBld2FoX2l0ZXJhdG9yX25leHQoJm1hc2ssICZpdCk7CisJICAgICBpKyspIHsKKwkJaWYgKGkgPCB0aXBzLT53b3JkX2FsbG9jKQorCQkJbWFzayAmPSB+dGlwcy0+d29yZHNbaV07CisJCXRvX2ZpbHRlci0+d29yZHNbaV0gJj0gfm1hc2s7CisJfQorCisJLyoKKwkgKiBDbGVhciBhbnkgYmxvYnMgdGhhdCB3ZXJlbid0IGluIHRoZSBwYWNrZmlsZSAoYW5kIHNvIHdvdWxkIG5vdCBoYXZlCisJICogYmVlbiBjYXVnaHQgYnkgdGhlIGxvb3AgYWJvdmUuIFdlJ2xsIGhhdmUgdG8gY2hlY2sgdGhlbQorCSAqIGluZGl2aWR1YWxseS4KKwkgKi8KKwlmb3IgKGkgPSAwOyBpIDwgZWluZGV4LT5jb3VudDsgaSsrKSB7CisJCXVpbnQzMl90IHBvcyA9IGkgKyBiaXRtYXBfZ2l0LT5wYWNrLT5udW1fb2JqZWN0czsKKwkJaWYgKGVpbmRleC0+b2JqZWN0c1tpXS0+dHlwZSA9PSBPQkpfQkxPQiAmJgorCQkgICAgYml0bWFwX2dldCh0b19maWx0ZXIsIHBvcykgJiYKKwkJICAgICFiaXRtYXBfZ2V0KHRpcHMsIHBvcykpCisJCQliaXRtYXBfdW5zZXQodG9fZmlsdGVyLCBwb3MpOworCX0KKworCWJpdG1hcF9mcmVlKHRpcHMpOworfQorCitzdGF0aWMgdW5zaWduZWQgbG9uZyBnZXRfc2l6ZV9ieV9wb3Moc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdCwKKwkJCQkgICAgIHVpbnQzMl90IHBvcykKK3sKKwlzdHJ1Y3QgcGFja2VkX2dpdCAqcGFjayA9IGJpdG1hcF9naXQtPnBhY2s7CisJdW5zaWduZWQgbG9uZyBzaXplOworCXN0cnVjdCBvYmplY3RfaW5mbyBvaSA9IE9CSkVDVF9JTkZPX0lOSVQ7CisKKwlvaS5zaXplcCA9ICZzaXplOworCisJaWYgKHBvcyA8IHBhY2stPm51bV9vYmplY3RzKSB7CisJCXN0cnVjdCByZXZpbmRleF9lbnRyeSAqZW50cnkgPSAmcGFjay0+cmV2aW5kZXhbcG9zXTsKKwkJaWYgKHBhY2tlZF9vYmplY3RfaW5mbyh0aGVfcmVwb3NpdG9yeSwgcGFjaywKKwkJCQkgICAgICAgZW50cnktPm9mZnNldCwgJm9pKSA8IDApIHsKKwkJCXN0cnVjdCBvYmplY3RfaWQgb2lkOworCQkJbnRoX3BhY2tlZF9vYmplY3RfaWQoJm9pZCwgcGFjaywgZW50cnktPm5yKTsKKwkJCWRpZShfKCJ1bmFibGUgdG8gZ2V0IHNpemUgb2YgJXMiKSwgb2lkX3RvX2hleCgmb2lkKSk7CisJCX0KKwl9IGVsc2UgeworCQlzdHJ1Y3QgZWluZGV4ICplaW5kZXggPSAmYml0bWFwX2dpdC0+ZXh0X2luZGV4OworCQlzdHJ1Y3Qgb2JqZWN0ICpvYmogPSBlaW5kZXgtPm9iamVjdHNbcG9zIC0gcGFjay0+bnVtX29iamVjdHNdOworCQlpZiAob2lkX29iamVjdF9pbmZvX2V4dGVuZGVkKHRoZV9yZXBvc2l0b3J5LCAmb2JqLT5vaWQsICZvaSwgMCkgPCAwKQorCQkJZGllKF8oInVuYWJsZSB0byBnZXQgc2l6ZSBvZiAlcyIpLCBvaWRfdG9faGV4KCZvYmotPm9pZCkpOworCX0KKworCXJldHVybiBzaXplOworfQorCitzdGF0aWMgdm9pZCBmaWx0ZXJfYml0bWFwX2Jsb2JfbGltaXQoc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdCwKKwkJCQkgICAgIHN0cnVjdCBvYmplY3RfbGlzdCAqdGlwX29iamVjdHMsCisJCQkJICAgICBzdHJ1Y3QgYml0bWFwICp0b19maWx0ZXIsCisJCQkJICAgICB1bnNpZ25lZCBsb25nIGxpbWl0KQoreworCXN0cnVjdCBlaW5kZXggKmVpbmRleCA9ICZiaXRtYXBfZ2l0LT5leHRfaW5kZXg7CisJc3RydWN0IGJpdG1hcCAqdGlwczsKKwlzdHJ1Y3QgZXdhaF9pdGVyYXRvciBpdDsKKwlld29yZF90IG1hc2s7CisJdWludDMyX3QgaTsKKworCXRpcHMgPSBmaW5kX3RpcF9ibG9icyhiaXRtYXBfZ2l0LCB0aXBfb2JqZWN0cyk7CisKKwlmb3IgKGkgPSAwLCBpbml0X3R5cGVfaXRlcmF0b3IoJml0LCBiaXRtYXBfZ2l0LCBPQkpfQkxPQik7CisJICAgICBpIDwgdG9fZmlsdGVyLT53b3JkX2FsbG9jICYmIGV3YWhfaXRlcmF0b3JfbmV4dCgmbWFzaywgJml0KTsKKwkgICAgIGkrKykgeworCQlld29yZF90IHdvcmQgPSB0b19maWx0ZXItPndvcmRzW2ldICYgbWFzazsKKwkJdW5zaWduZWQgb2Zmc2V0OworCisJCWZvciAob2Zmc2V0ID0gMDsgb2Zmc2V0IDwgQklUU19JTl9FV09SRDsgb2Zmc2V0KyspIHsKKwkJCXVpbnQzMl90IHBvczsKKworCQkJaWYgKCh3b3JkID4+IG9mZnNldCkgPT0gMCkKKwkJCQlicmVhazsKKwkJCW9mZnNldCArPSBld2FoX2JpdF9jdHo2NCh3b3JkID4+IG9mZnNldCk7CisJCQlwb3MgPSBpICogQklUU19JTl9FV09SRCArIG9mZnNldDsKKworCQkJaWYgKCFiaXRtYXBfZ2V0KHRpcHMsIHBvcykgJiYKKwkJCSAgICBnZXRfc2l6ZV9ieV9wb3MoYml0bWFwX2dpdCwgcG9zKSA+PSBsaW1pdCkKKwkJCQliaXRtYXBfdW5zZXQodG9fZmlsdGVyLCBwb3MpOworCQl9CisJfQorCisJZm9yIChpID0gMDsgaSA8IGVpbmRleC0+Y291bnQ7IGkrKykgeworCQl1aW50MzJfdCBwb3MgPSBpICsgYml0bWFwX2dpdC0+cGFjay0+bnVtX29iamVjdHM7CisJCWlmIChlaW5kZXgtPm9iamVjdHNbaV0tPnR5cGUgPT0gT0JKX0JMT0IgJiYKKwkJICAgIGJpdG1hcF9nZXQodG9fZmlsdGVyLCBwb3MpICYmCisJCSAgICAhYml0bWFwX2dldCh0aXBzLCBwb3MpICYmCisJCSAgICBnZXRfc2l6ZV9ieV9wb3MoYml0bWFwX2dpdCwgcG9zKSA+PSBsaW1pdCkKKwkJCWJpdG1hcF91bnNldCh0b19maWx0ZXIsIHBvcyk7CisJfQorCisJYml0bWFwX2ZyZWUodGlwcyk7Cit9CisKK3N0YXRpYyBpbnQgZmlsdGVyX2JpdG1hcChzdHJ1Y3QgYml0bWFwX2luZGV4ICpiaXRtYXBfZ2l0LAorCQkJIHN0cnVjdCBvYmplY3RfbGlzdCAqdGlwX29iamVjdHMsCisJCQkgc3RydWN0IGJpdG1hcCAqdG9fZmlsdGVyLAorCQkJIHN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgKmZpbHRlcikKK3sKKwlpZiAoIWZpbHRlciB8fCBmaWx0ZXItPmNob2ljZSA9PSBMT0ZDX0RJU0FCTEVEKQorCQlyZXR1cm4gMDsKKworCWlmIChmaWx0ZXItPmNob2ljZSA9PSBMT0ZDX0JMT0JfTk9ORSkgeworCQlpZiAoYml0bWFwX2dpdCkKKwkJCWZpbHRlcl9iaXRtYXBfYmxvYl9ub25lKGJpdG1hcF9naXQsIHRpcF9vYmplY3RzLAorCQkJCQkJdG9fZmlsdGVyKTsKKwkJcmV0dXJuIDA7CisJfQorCisJaWYgKGZpbHRlci0+Y2hvaWNlID09IExPRkNfQkxPQl9MSU1JVCkgeworCQlpZiAoYml0bWFwX2dpdCkKKwkJCWZpbHRlcl9iaXRtYXBfYmxvYl9saW1pdChiaXRtYXBfZ2l0LCB0aXBfb2JqZWN0cywKKwkJCQkJCSB0b19maWx0ZXIsCisJCQkJCQkgZmlsdGVyLT5ibG9iX2xpbWl0X3ZhbHVlKTsKKwkJcmV0dXJuIDA7CisJfQorCisJLyogZmlsdGVyIGNob2ljZSBub3QgaGFuZGxlZCAqLworCXJldHVybiAtMTsKK30KKworc3RhdGljIGludCBjYW5fZmlsdGVyX2JpdG1hcChzdHJ1Y3QgbGlzdF9vYmplY3RzX2ZpbHRlcl9vcHRpb25zICpmaWx0ZXIpCit7CisJcmV0dXJuICFmaWx0ZXJfYml0bWFwKE5VTEwsIE5VTEwsIE5VTEwsIGZpbHRlcik7Cit9CisKK3N0cnVjdCBiaXRtYXBfaW5kZXggKnByZXBhcmVfYml0bWFwX3dhbGsoc3RydWN0IHJldl9pbmZvICpyZXZzLAorCQkJCQkgc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyKQogewogCXVuc2lnbmVkIGludCBpOwogCkBAIC02ODcsMTAgKzg5NywyMyBAQAogCXN0cnVjdCBiaXRtYXAgKndhbnRzX2JpdG1hcCA9IE5VTEw7CiAJc3RydWN0IGJpdG1hcCAqaGF2ZXNfYml0bWFwID0gTlVMTDsKIAotCXN0cnVjdCBiaXRtYXBfaW5kZXggKmJpdG1hcF9naXQgPSB4Y2FsbG9jKDEsIHNpemVvZigqYml0bWFwX2dpdCkpOworCXN0cnVjdCBiaXRtYXBfaW5kZXggKmJpdG1hcF9naXQ7CisKKwkvKgorCSAqIFdlIGNhbid0IGRvIHBhdGhzcGVjIGxpbWl0aW5nIHdpdGggYml0bWFwcywgYmVjYXVzZSB3ZSBkb24ndCBrbm93CisJICogd2hpY2ggY29tbWl0cyBhcmUgYXNzb2NpYXRlZCB3aXRoIHdoaWNoIG9iamVjdCBjaGFuZ2VzIChsZXQgYWxvbmUKKwkgKiBldmVuIHdoaWNoIG9iamVjdHMgYXJlIGFzc29jaWF0ZWQgd2l0aCB3aGljaCBwYXRocykuCisJICovCisJaWYgKHJldnMtPnBydW5lKQorCQlyZXR1cm4gTlVMTDsKKworCWlmICghY2FuX2ZpbHRlcl9iaXRtYXAoZmlsdGVyKSkKKwkJcmV0dXJuIE5VTEw7CisKIAkvKiB0cnkgdG8gb3BlbiBhIGJpdG1hcHBlZCBwYWNrLCBidXQgZG9uJ3QgcGFyc2UgaXQgeWV0CiAJICogYmVjYXVzZSB3ZSBtYXkgbm90IG5lZWQgdG8gdXNlIGl0ICovCi0JaWYgKG9wZW5fcGFja19iaXRtYXAoYml0bWFwX2dpdCkgPCAwKQorCWJpdG1hcF9naXQgPSB4Y2FsbG9jKDEsIHNpemVvZigqYml0bWFwX2dpdCkpOworCWlmIChvcGVuX3BhY2tfYml0bWFwKHJldnMtPnJlcG8sIGJpdG1hcF9naXQpIDwgMCkKIAkJZ290byBjbGVhbnVwOwogCiAJZm9yIChpID0gMDsgaSA8IHJldnMtPnBlbmRpbmcubnI7ICsraSkgewpAQCAtNzA3LDkgKzkzMCw3IEBACiAJCQllbHNlCiAJCQkJb2JqZWN0X2xpc3RfaW5zZXJ0KG9iamVjdCwgJndhbnRzKTsKIAotCQkJaWYgKCF0YWctPnRhZ2dlZCkKLQkJCQlkaWUoImJhZCB0YWciKTsKLQkJCW9iamVjdCA9IHBhcnNlX29iamVjdF9vcl9kaWUoJnRhZy0+dGFnZ2VkLT5vaWQsIE5VTEwpOworCQkJb2JqZWN0ID0gcGFyc2Vfb2JqZWN0X29yX2RpZShnZXRfdGFnZ2VkX29pZCh0YWcpLCBOVUxMKTsKIAkJfQogCiAJCWlmIChvYmplY3QtPmZsYWdzICYgVU5JTlRFUkVTVElORykKQEAgLTc1OCw5MyArOTc5LDE3MyBAQAogCWlmIChoYXZlc19iaXRtYXApCiAJCWJpdG1hcF9hbmRfbm90KHdhbnRzX2JpdG1hcCwgaGF2ZXNfYml0bWFwKTsKIAorCWZpbHRlcl9iaXRtYXAoYml0bWFwX2dpdCwgd2FudHMsIHdhbnRzX2JpdG1hcCwgZmlsdGVyKTsKKwogCWJpdG1hcF9naXQtPnJlc3VsdCA9IHdhbnRzX2JpdG1hcDsKIAliaXRtYXBfZ2l0LT5oYXZlcyA9IGhhdmVzX2JpdG1hcDsKIAorCW9iamVjdF9saXN0X2ZyZWUoJndhbnRzKTsKKwlvYmplY3RfbGlzdF9mcmVlKCZoYXZlcyk7CisKIAlyZXR1cm4gYml0bWFwX2dpdDsKIAogY2xlYW51cDoKIAlmcmVlX2JpdG1hcF9pbmRleChiaXRtYXBfZ2l0KTsKKwlvYmplY3RfbGlzdF9mcmVlKCZ3YW50cyk7CisJb2JqZWN0X2xpc3RfZnJlZSgmaGF2ZXMpOwogCXJldHVybiBOVUxMOwogfQogCi1pbnQgcmV1c2VfcGFydGlhbF9wYWNrZmlsZV9mcm9tX2JpdG1hcChzdHJ1Y3QgYml0bWFwX2luZGV4ICpiaXRtYXBfZ2l0LAotCQkJCSAgICAgICBzdHJ1Y3QgcGFja2VkX2dpdCAqKnBhY2tmaWxlLAotCQkJCSAgICAgICB1aW50MzJfdCAqZW50cmllcywKLQkJCQkgICAgICAgb2ZmX3QgKnVwX3RvKQorc3RhdGljIHZvaWQgdHJ5X3BhcnRpYWxfcmV1c2Uoc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdCwKKwkJCSAgICAgIHNpemVfdCBwb3MsCisJCQkgICAgICBzdHJ1Y3QgYml0bWFwICpyZXVzZSwKKwkJCSAgICAgIHN0cnVjdCBwYWNrX3dpbmRvdyAqKndfY3VycykKIHsKLQkvKgotCSAqIFJldXNlIHRoZSBwYWNrZmlsZSBjb250ZW50IGlmIHdlIG5lZWQgbW9yZSB0aGFuCi0JICogOTAlIG9mIGl0cyBvYmplY3RzCi0JICovCi0Jc3RhdGljIGNvbnN0IGRvdWJsZSBSRVVTRV9QRVJDRU5UID0gMC45OworCXN0cnVjdCByZXZpbmRleF9lbnRyeSAqcmV2aWR4OworCW9mZl90IG9mZnNldDsKKwllbnVtIG9iamVjdF90eXBlIHR5cGU7CisJdW5zaWduZWQgbG9uZyBzaXplOwogCisJaWYgKHBvcyA+PSBiaXRtYXBfZ2l0LT5wYWNrLT5udW1fb2JqZWN0cykKKwkJcmV0dXJuOyAvKiBub3QgYWN0dWFsbHkgaW4gdGhlIHBhY2sgKi8KKworCXJldmlkeCA9ICZiaXRtYXBfZ2l0LT5wYWNrLT5yZXZpbmRleFtwb3NdOworCW9mZnNldCA9IHJldmlkeC0+b2Zmc2V0OworCXR5cGUgPSB1bnBhY2tfb2JqZWN0X2hlYWRlcihiaXRtYXBfZ2l0LT5wYWNrLCB3X2N1cnMsICZvZmZzZXQsICZzaXplKTsKKwlpZiAodHlwZSA8IDApCisJCXJldHVybjsgLyogYnJva2VuIHBhY2tmaWxlLCBwdW50ICovCisKKwlpZiAodHlwZSA9PSBPQkpfUkVGX0RFTFRBIHx8IHR5cGUgPT0gT0JKX09GU19ERUxUQSkgeworCQlvZmZfdCBiYXNlX29mZnNldDsKKwkJaW50IGJhc2VfcG9zOworCisJCS8qCisJCSAqIEZpbmQgdGhlIHBvc2l0aW9uIG9mIHRoZSBiYXNlIG9iamVjdCBzbyB3ZSBjYW4gbG9vayBpdCB1cAorCQkgKiBpbiBvdXIgYml0bWFwcy4gSWYgd2UgY2FuJ3QgY29tZSB1cCB3aXRoIGFuIG9mZnNldCwgb3IgaWYKKwkJICogdGhhdCBvZmZzZXQgaXMgbm90IGluIHRoZSByZXZpZHgsIHRoZSBwYWNrIGlzIGNvcnJ1cHQuCisJCSAqIFRoZXJlJ3Mgbm90aGluZyB3ZSBjYW4gZG8sIHNvIGp1c3QgcHVudCBvbiB0aGlzIG9iamVjdCwKKwkJICogYW5kIHRoZSBub3JtYWwgc2xvdyBwYXRoIHdpbGwgY29tcGxhaW4gYWJvdXQgaXQgaW4KKwkJICogbW9yZSBkZXRhaWwuCisJCSAqLworCQliYXNlX29mZnNldCA9IGdldF9kZWx0YV9iYXNlKGJpdG1hcF9naXQtPnBhY2ssIHdfY3VycywKKwkJCQkJICAgICAmb2Zmc2V0LCB0eXBlLCByZXZpZHgtPm9mZnNldCk7CisJCWlmICghYmFzZV9vZmZzZXQpCisJCQlyZXR1cm47CisJCWJhc2VfcG9zID0gZmluZF9yZXZpbmRleF9wb3NpdGlvbihiaXRtYXBfZ2l0LT5wYWNrLCBiYXNlX29mZnNldCk7CisJCWlmIChiYXNlX3BvcyA8IDApCisJCQlyZXR1cm47CisKKwkJLyoKKwkJICogV2UgYXNzdW1lIGRlbHRhIGRlcGVuZGVuY2llcyBhbHdheXMgcG9pbnQgYmFja3dhcmRzLiBUaGlzCisJCSAqIGxldHMgdXMgZG8gYSBzaW5nbGUgcGFzcywgYW5kIGlzIGJhc2ljYWxseSBhbHdheXMgdHJ1ZQorCQkgKiBkdWUgdG8gdGhlIHdheSBPRlNfREVMVEFzIHdvcmsuIFlvdSB3b3VsZCBub3QgdHlwaWNhbGx5CisJCSAqIGZpbmQgUkVGX0RFTFRBIGluIGEgYml0bWFwcGVkIHBhY2ssIHNpbmNlIHdlIG9ubHkgYml0bWFwCisJCSAqIHBhY2tzIHdlIHdyaXRlIGZyZXNoLCBhbmQgT0ZTX0RFTFRBIGlzIHRoZSBkZWZhdWx0KS4gQnV0CisJCSAqIGxldCdzIGRvdWJsZSBjaGVjayB0byBtYWtlIHN1cmUgdGhlIHBhY2sgd2Fzbid0IHdyaXR0ZW4gd2l0aAorCQkgKiBvZGQgcGFyYW1ldGVycy4KKwkJICovCisJCWlmIChiYXNlX3BvcyA+PSBwb3MpCisJCQlyZXR1cm47CisKKwkJLyoKKwkJICogQW5kIGZpbmFsbHksIGlmIHdlJ3JlIG5vdCBzZW5kaW5nIHRoZSBiYXNlIGFzIHBhcnQgb2Ygb3VyCisJCSAqIHJldXNlIGNodW5rLCB0aGVuIGRvbid0IHNlbmQgdGhpcyBvYmplY3QgZWl0aGVyLiBUaGUgYmFzZQorCQkgKiB3b3VsZCBjb21lIGFmdGVyIHVzLCBhbG9uZyB3aXRoIG90aGVyIG9iamVjdHMgbm90CisJCSAqIG5lY2Vzc2FyaWx5IGluIHRoZSBwYWNrLCB3aGljaCBtZWFucyB3ZSdkIG5lZWQgdG8gY29udmVydAorCQkgKiB0byBSRUZfREVMVEEgb24gdGhlIGZseS4gQmV0dGVyIHRvIGp1c3QgbGV0IHRoZSBub3JtYWwKKwkJICogb2JqZWN0X2VudHJ5IGNvZGUgcGF0aCBoYW5kbGUgaXQuCisJCSAqLworCQlpZiAoIWJpdG1hcF9nZXQocmV1c2UsIGJhc2VfcG9zKSkKKwkJCXJldHVybjsKKwl9CisKKwkvKgorCSAqIElmIHdlIGdvdCBoZXJlLCB0aGVuIHRoZSBvYmplY3QgaXMgT0sgdG8gcmV1c2UuIE1hcmsgaXQuCisJICovCisJYml0bWFwX3NldChyZXVzZSwgcG9zKTsKK30KKworaW50IHJldXNlX3BhcnRpYWxfcGFja2ZpbGVfZnJvbV9iaXRtYXAoc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdCwKKwkJCQkgICAgICAgc3RydWN0IHBhY2tlZF9naXQgKipwYWNrZmlsZV9vdXQsCisJCQkJICAgICAgIHVpbnQzMl90ICplbnRyaWVzLAorCQkJCSAgICAgICBzdHJ1Y3QgYml0bWFwICoqcmV1c2Vfb3V0KQorewogCXN0cnVjdCBiaXRtYXAgKnJlc3VsdCA9IGJpdG1hcF9naXQtPnJlc3VsdDsKLQl1aW50MzJfdCByZXVzZV90aHJlc2hvbGQ7Ci0JdWludDMyX3QgaSwgcmV1c2Vfb2JqZWN0cyA9IDA7CisJc3RydWN0IGJpdG1hcCAqcmV1c2U7CisJc3RydWN0IHBhY2tfd2luZG93ICp3X2N1cnMgPSBOVUxMOworCXNpemVfdCBpID0gMDsKKwl1aW50MzJfdCBvZmZzZXQ7CiAKIAlhc3NlcnQocmVzdWx0KTsKIAotCWZvciAoaSA9IDA7IGkgPCByZXN1bHQtPndvcmRfYWxsb2M7ICsraSkgewotCQlpZiAocmVzdWx0LT53b3Jkc1tpXSAhPSAoZXdvcmRfdCl+MCkgewotCQkJcmV1c2Vfb2JqZWN0cyArPSBld2FoX2JpdF9jdHo2NCh+cmVzdWx0LT53b3Jkc1tpXSk7Ci0JCQlicmVhazsKKwl3aGlsZSAoaSA8IHJlc3VsdC0+d29yZF9hbGxvYyAmJiByZXN1bHQtPndvcmRzW2ldID09IChld29yZF90KX4wKQorCQlpKys7CisKKwkvKiBEb24ndCBtYXJrIG9iamVjdHMgbm90IGluIHRoZSBwYWNrZmlsZSAqLworCWlmIChpID4gYml0bWFwX2dpdC0+cGFjay0+bnVtX29iamVjdHMgLyBCSVRTX0lOX0VXT1JEKQorCQlpID0gYml0bWFwX2dpdC0+cGFjay0+bnVtX29iamVjdHMgLyBCSVRTX0lOX0VXT1JEOworCisJcmV1c2UgPSBiaXRtYXBfd29yZF9hbGxvYyhpKTsKKwltZW1zZXQocmV1c2UtPndvcmRzLCAweEZGLCBpICogc2l6ZW9mKGV3b3JkX3QpKTsKKworCWZvciAoOyBpIDwgcmVzdWx0LT53b3JkX2FsbG9jOyArK2kpIHsKKwkJZXdvcmRfdCB3b3JkID0gcmVzdWx0LT53b3Jkc1tpXTsKKwkJc2l6ZV90IHBvcyA9IChpICogQklUU19JTl9FV09SRCk7CisKKwkJZm9yIChvZmZzZXQgPSAwOyBvZmZzZXQgPCBCSVRTX0lOX0VXT1JEOyArK29mZnNldCkgeworCQkJaWYgKCh3b3JkID4+IG9mZnNldCkgPT0gMCkKKwkJCQlicmVhazsKKworCQkJb2Zmc2V0ICs9IGV3YWhfYml0X2N0ejY0KHdvcmQgPj4gb2Zmc2V0KTsKKwkJCXRyeV9wYXJ0aWFsX3JldXNlKGJpdG1hcF9naXQsIHBvcyArIG9mZnNldCwgcmV1c2UsICZ3X2N1cnMpOwogCQl9Ci0KLQkJcmV1c2Vfb2JqZWN0cyArPSBCSVRTX0lOX0VXT1JEOwogCX0KIAotI2lmZGVmIEdJVF9CSVRNQVBfREVCVUcKLQl7Ci0JCWNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTE7Ci0JCXN0cnVjdCByZXZpbmRleF9lbnRyeSAqZW50cnk7CisJdW51c2VfcGFjaygmd19jdXJzKTsKIAotCQllbnRyeSA9ICZiaXRtYXBfZ2l0LT5yZXZlcnNlX2luZGV4LT5yZXZpbmRleFtyZXVzZV9vYmplY3RzXTsKLQkJc2hhMSA9IG50aF9wYWNrZWRfb2JqZWN0X3NoYTEoYml0bWFwX2dpdC0+cGFjaywgZW50cnktPm5yKTsKLQotCQlmcHJpbnRmKHN0ZGVyciwgIkZhaWxlZCB0byByZXVzZSBhdCAlZCAoJTAxNmxseClcbiIsCi0JCQlyZXVzZV9vYmplY3RzLCByZXN1bHQtPndvcmRzW2ldKTsKLQkJZnByaW50ZihzdGRlcnIsICIgJXNcbiIsIHNoYTFfdG9faGV4KHNoYTEpKTsKLQl9Ci0jZW5kaWYKLQotCWlmICghcmV1c2Vfb2JqZWN0cykKKwkqZW50cmllcyA9IGJpdG1hcF9wb3Bjb3VudChyZXVzZSk7CisJaWYgKCEqZW50cmllcykgeworCQliaXRtYXBfZnJlZShyZXVzZSk7CiAJCXJldHVybiAtMTsKLQotCWlmIChyZXVzZV9vYmplY3RzID49IGJpdG1hcF9naXQtPnBhY2stPm51bV9vYmplY3RzKSB7Ci0JCWJpdG1hcF9naXQtPnJldXNlX29iamVjdHMgPSAqZW50cmllcyA9IGJpdG1hcF9naXQtPnBhY2stPm51bV9vYmplY3RzOwotCQkqdXBfdG8gPSAtMTsgLyogcmV1c2UgdGhlIGZ1bGwgcGFjayAqLwotCQkqcGFja2ZpbGUgPSBiaXRtYXBfZ2l0LT5wYWNrOwotCQlyZXR1cm4gMDsKIAl9CiAKLQlyZXVzZV90aHJlc2hvbGQgPSBiaXRtYXBfcG9wY291bnQoYml0bWFwX2dpdC0+cmVzdWx0KSAqIFJFVVNFX1BFUkNFTlQ7Ci0KLQlpZiAocmV1c2Vfb2JqZWN0cyA8IHJldXNlX3RocmVzaG9sZCkKLQkJcmV0dXJuIC0xOwotCi0JYml0bWFwX2dpdC0+cmV1c2Vfb2JqZWN0cyA9ICplbnRyaWVzID0gcmV1c2Vfb2JqZWN0czsKLQkqdXBfdG8gPSBiaXRtYXBfZ2l0LT5wYWNrLT5yZXZpbmRleFtyZXVzZV9vYmplY3RzXS5vZmZzZXQ7Ci0JKnBhY2tmaWxlID0gYml0bWFwX2dpdC0+cGFjazsKLQorCS8qCisJICogRHJvcCBhbnkgcmV1c2VkIG9iamVjdHMgZnJvbSB0aGUgcmVzdWx0LCBzaW5jZSB0aGV5IHdpbGwgbm90CisJICogbmVlZCB0byBiZSBoYW5kbGVkIHNlcGFyYXRlbHkuCisJICovCisJYml0bWFwX2FuZF9ub3QocmVzdWx0LCByZXVzZSk7CisJKnBhY2tmaWxlX291dCA9IGJpdG1hcF9naXQtPnBhY2s7CisJKnJldXNlX291dCA9IHJldXNlOwogCXJldHVybiAwOwogfQogCitpbnQgYml0bWFwX3dhbGtfY29udGFpbnMoc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdCwKKwkJCSBzdHJ1Y3QgYml0bWFwICpiaXRtYXAsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKK3sKKwlpbnQgaWR4OworCisJaWYgKCFiaXRtYXApCisJCXJldHVybiAwOworCisJaWR4ID0gYml0bWFwX3Bvc2l0aW9uKGJpdG1hcF9naXQsIG9pZCk7CisJcmV0dXJuIGlkeCA+PSAwICYmIGJpdG1hcF9nZXQoYml0bWFwLCBpZHgpOworfQorCiB2b2lkIHRyYXZlcnNlX2JpdG1hcF9jb21taXRfbGlzdChzdHJ1Y3QgYml0bWFwX2luZGV4ICpiaXRtYXBfZ2l0LAorCQkJCSBzdHJ1Y3QgcmV2X2luZm8gKnJldnMsCiAJCQkJIHNob3dfcmVhY2hhYmxlX2ZuIHNob3dfcmVhY2hhYmxlKQogewogCWFzc2VydChiaXRtYXBfZ2l0LT5yZXN1bHQpOwogCi0Jc2hvd19vYmplY3RzX2Zvcl90eXBlKGJpdG1hcF9naXQsIGJpdG1hcF9naXQtPmNvbW1pdHMsCi0JCU9CSl9DT01NSVQsIHNob3dfcmVhY2hhYmxlKTsKLQlzaG93X29iamVjdHNfZm9yX3R5cGUoYml0bWFwX2dpdCwgYml0bWFwX2dpdC0+dHJlZXMsCi0JCU9CSl9UUkVFLCBzaG93X3JlYWNoYWJsZSk7Ci0Jc2hvd19vYmplY3RzX2Zvcl90eXBlKGJpdG1hcF9naXQsIGJpdG1hcF9naXQtPmJsb2JzLAotCQlPQkpfQkxPQiwgc2hvd19yZWFjaGFibGUpOwotCXNob3dfb2JqZWN0c19mb3JfdHlwZShiaXRtYXBfZ2l0LCBiaXRtYXBfZ2l0LT50YWdzLAotCQlPQkpfVEFHLCBzaG93X3JlYWNoYWJsZSk7CisJc2hvd19vYmplY3RzX2Zvcl90eXBlKGJpdG1hcF9naXQsIE9CSl9DT01NSVQsIHNob3dfcmVhY2hhYmxlKTsKKwlpZiAocmV2cy0+dHJlZV9vYmplY3RzKQorCQlzaG93X29iamVjdHNfZm9yX3R5cGUoYml0bWFwX2dpdCwgT0JKX1RSRUUsIHNob3dfcmVhY2hhYmxlKTsKKwlpZiAocmV2cy0+YmxvYl9vYmplY3RzKQorCQlzaG93X29iamVjdHNfZm9yX3R5cGUoYml0bWFwX2dpdCwgT0JKX0JMT0IsIHNob3dfcmVhY2hhYmxlKTsKKwlpZiAocmV2cy0+dGFnX29iamVjdHMpCisJCXNob3dfb2JqZWN0c19mb3JfdHlwZShiaXRtYXBfZ2l0LCBPQkpfVEFHLCBzaG93X3JlYWNoYWJsZSk7CiAKLQlzaG93X2V4dGVuZGVkX29iamVjdHMoYml0bWFwX2dpdCwgc2hvd19yZWFjaGFibGUpOworCXNob3dfZXh0ZW5kZWRfb2JqZWN0cyhiaXRtYXBfZ2l0LCByZXZzLCBzaG93X3JlYWNoYWJsZSk7CiB9CiAKIHN0YXRpYyB1aW50MzJfdCBjb3VudF9vYmplY3RfdHlwZShzdHJ1Y3QgYml0bWFwX2luZGV4ICpiaXRtYXBfZ2l0LApAQCAtODU3LDI2ICsxMTU4LDcgQEAKIAlzdHJ1Y3QgZXdhaF9pdGVyYXRvciBpdDsKIAlld29yZF90IGZpbHRlcjsKIAotCXN3aXRjaCAodHlwZSkgewotCWNhc2UgT0JKX0NPTU1JVDoKLQkJZXdhaF9pdGVyYXRvcl9pbml0KCZpdCwgYml0bWFwX2dpdC0+Y29tbWl0cyk7Ci0JCWJyZWFrOwotCi0JY2FzZSBPQkpfVFJFRToKLQkJZXdhaF9pdGVyYXRvcl9pbml0KCZpdCwgYml0bWFwX2dpdC0+dHJlZXMpOwotCQlicmVhazsKLQotCWNhc2UgT0JKX0JMT0I6Ci0JCWV3YWhfaXRlcmF0b3JfaW5pdCgmaXQsIGJpdG1hcF9naXQtPmJsb2JzKTsKLQkJYnJlYWs7Ci0KLQljYXNlIE9CSl9UQUc6Ci0JCWV3YWhfaXRlcmF0b3JfaW5pdCgmaXQsIGJpdG1hcF9naXQtPnRhZ3MpOwotCQlicmVhazsKLQotCWRlZmF1bHQ6Ci0JCXJldHVybiAwOwotCX0KKwlpbml0X3R5cGVfaXRlcmF0b3IoJml0LCBiaXRtYXBfZ2l0LCB0eXBlKTsKIAogCXdoaWxlIChpIDwgb2JqZWN0cy0+d29yZF9hbGxvYyAmJiBld2FoX2l0ZXJhdG9yX25leHQoJmZpbHRlciwgJml0KSkgewogCQlld29yZF90IHdvcmQgPSBvYmplY3RzLT53b3Jkc1tpKytdICYgZmlsdGVyOwpAQCAtOTI0LDcgKzEyMDYsNyBAQAogCXN0cnVjdCBiaXRtYXBfdGVzdF9kYXRhICp0ZGF0YSA9IGRhdGE7CiAJaW50IGJpdG1hcF9wb3M7CiAKLQliaXRtYXBfcG9zID0gYml0bWFwX3Bvc2l0aW9uKHRkYXRhLT5iaXRtYXBfZ2l0LCBvYmplY3QtPm9pZC5oYXNoKTsKKwliaXRtYXBfcG9zID0gYml0bWFwX3Bvc2l0aW9uKHRkYXRhLT5iaXRtYXBfZ2l0LCAmb2JqZWN0LT5vaWQpOwogCWlmIChiaXRtYXBfcG9zIDwgMCkKIAkJZGllKCJPYmplY3Qgbm90IGluIGJpdG1hcDogJXNcbiIsIG9pZF90b19oZXgoJm9iamVjdC0+b2lkKSk7CiAKQEAgLTkzOCw3ICsxMjIwLDcgQEAKIAlpbnQgYml0bWFwX3BvczsKIAogCWJpdG1hcF9wb3MgPSBiaXRtYXBfcG9zaXRpb24odGRhdGEtPmJpdG1hcF9naXQsCi0JCQkJICAgICBjb21taXQtPm9iamVjdC5vaWQuaGFzaCk7CisJCQkJICAgICAmY29tbWl0LT5vYmplY3Qub2lkKTsKIAlpZiAoYml0bWFwX3BvcyA8IDApCiAJCWRpZSgiT2JqZWN0IG5vdCBpbiBiaXRtYXA6ICVzXG4iLCBvaWRfdG9faGV4KCZjb21taXQtPm9iamVjdC5vaWQpKTsKIApAQCAtOTU1LDcgKzEyMzcsNyBAQAogCXN0cnVjdCBiaXRtYXBfdGVzdF9kYXRhIHRkYXRhOwogCXN0cnVjdCBiaXRtYXBfaW5kZXggKmJpdG1hcF9naXQ7CiAKLQlpZiAoIShiaXRtYXBfZ2l0ID0gcHJlcGFyZV9iaXRtYXBfZ2l0KCkpKQorCWlmICghKGJpdG1hcF9naXQgPSBwcmVwYXJlX2JpdG1hcF9naXQocmV2cy0+cmVwbykpKQogCQlkaWUoImZhaWxlZCB0byBsb2FkIGJpdG1hcCBpbmRleGVzIik7CiAKIAlpZiAocmV2cy0+cGVuZGluZy5uciAhPSAxKQpAQCAtOTY1LDcgKzEyNDcsNyBAQAogCQliaXRtYXBfZ2l0LT52ZXJzaW9uLCBiaXRtYXBfZ2l0LT5lbnRyeV9jb3VudCk7CiAKIAlyb290ID0gcmV2cy0+cGVuZGluZy5vYmplY3RzWzBdLml0ZW07Ci0JcG9zID0ga2hfZ2V0X3NoYTEoYml0bWFwX2dpdC0+Yml0bWFwcywgcm9vdC0+b2lkLmhhc2gpOworCXBvcyA9IGtoX2dldF9vaWRfbWFwKGJpdG1hcF9naXQtPmJpdG1hcHMsIHJvb3QtPm9pZCk7CiAKIAlpZiAocG9zIDwga2hfZW5kKGJpdG1hcF9naXQtPmJpdG1hcHMpKSB7CiAJCXN0cnVjdCBzdG9yZWRfYml0bWFwICpzdCA9IGtoX3ZhbHVlKGJpdG1hcF9naXQtPmJpdG1hcHMsIHBvcyk7CkBAIC0xMDM5LDcgKzEzMjEsNyBAQAogCiBpbnQgcmVidWlsZF9leGlzdGluZ19iaXRtYXBzKHN0cnVjdCBiaXRtYXBfaW5kZXggKmJpdG1hcF9naXQsCiAJCQkgICAgIHN0cnVjdCBwYWNraW5nX2RhdGEgKm1hcHBpbmcsCi0JCQkgICAgIGtoYXNoX3NoYTEgKnJldXNlZF9iaXRtYXBzLAorCQkJICAgICBraF9vaWRfbWFwX3QgKnJldXNlZF9iaXRtYXBzLAogCQkJICAgICBpbnQgc2hvd19wcm9ncmVzcykKIHsKIAl1aW50MzJfdCBpLCBudW1fb2JqZWN0czsKQEAgLTEwNTUsMTMgKzEzMzcsMTMgQEAKIAlyZXBvc2l0aW9uID0geGNhbGxvYyhudW1fb2JqZWN0cywgc2l6ZW9mKHVpbnQzMl90KSk7CiAKIAlmb3IgKGkgPSAwOyBpIDwgbnVtX29iamVjdHM7ICsraSkgewotCQljb25zdCB1bnNpZ25lZCBjaGFyICpzaGExOworCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAkJc3RydWN0IHJldmluZGV4X2VudHJ5ICplbnRyeTsKIAkJc3RydWN0IG9iamVjdF9lbnRyeSAqb2U7CiAKIAkJZW50cnkgPSAmYml0bWFwX2dpdC0+cGFjay0+cmV2aW5kZXhbaV07Ci0JCXNoYTEgPSBudGhfcGFja2VkX29iamVjdF9zaGExKGJpdG1hcF9naXQtPnBhY2ssIGVudHJ5LT5ucik7Ci0JCW9lID0gcGFja2xpc3RfZmluZChtYXBwaW5nLCBzaGExLCBOVUxMKTsKKwkJbnRoX3BhY2tlZF9vYmplY3RfaWQoJm9pZCwgYml0bWFwX2dpdC0+cGFjaywgZW50cnktPm5yKTsKKwkJb2UgPSBwYWNrbGlzdF9maW5kKG1hcHBpbmcsICZvaWQpOwogCiAJCWlmIChvZSkKIAkJCXJlcG9zaXRpb25baV0gPSBvZV9pbl9wYWNrX3BvcyhtYXBwaW5nLCBvZSkgKyAxOwpAQCAtMTA3OCw5ICsxMzYwLDkgQEAKIAkJCWlmICghcmVidWlsZF9iaXRtYXAocmVwb3NpdGlvbiwKIAkJCQkJICAgIGxvb2t1cF9zdG9yZWRfYml0bWFwKHN0b3JlZCksCiAJCQkJCSAgICByZWJ1aWxkKSkgewotCQkJCWhhc2hfcG9zID0ga2hfcHV0X3NoYTEocmV1c2VkX2JpdG1hcHMsCi0JCQkJCQkgICAgICAgc3RvcmVkLT5zaGExLAotCQkJCQkJICAgICAgICZoYXNoX3JldCk7CisJCQkJaGFzaF9wb3MgPSBraF9wdXRfb2lkX21hcChyZXVzZWRfYml0bWFwcywKKwkJCQkJCQkgIHN0b3JlZC0+b2lkLAorCQkJCQkJCSAgJmhhc2hfcmV0KTsKIAkJCQlraF92YWx1ZShyZXVzZWRfYml0bWFwcywgaGFzaF9wb3MpID0KIAkJCQkJYml0bWFwX3RvX2V3YWgocmVidWlsZCk7CiAJCQl9CkBAIC0xMTA3LDcgKzEzODksNyBAQAogCWV3YWhfcG9vbF9mcmVlKGItPnRyZWVzKTsKIAlld2FoX3Bvb2xfZnJlZShiLT5ibG9icyk7CiAJZXdhaF9wb29sX2ZyZWUoYi0+dGFncyk7Ci0Ja2hfZGVzdHJveV9zaGExKGItPmJpdG1hcHMpOworCWtoX2Rlc3Ryb3lfb2lkX21hcChiLT5iaXRtYXBzKTsKIAlmcmVlKGItPmV4dF9pbmRleC5vYmplY3RzKTsKIAlmcmVlKGItPmV4dF9pbmRleC5oYXNoZXMpOwogCWJpdG1hcF9mcmVlKGItPnJlc3VsdCk7CkBAIC0xMTE1LDE5ICsxMzk3LDkgQEAKIAlmcmVlKGIpOwogfQogCi1pbnQgYml0bWFwX2hhc19zaGExX2luX3VuaW50ZXJlc3Rpbmcoc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdCwKLQkJCQkgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpCitpbnQgYml0bWFwX2hhc19vaWRfaW5fdW5pbnRlcmVzdGluZyhzdHJ1Y3QgYml0bWFwX2luZGV4ICpiaXRtYXBfZ2l0LAorCQkJCSAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0JaW50IHBvczsKLQotCWlmICghYml0bWFwX2dpdCkKLQkJcmV0dXJuIDA7IC8qIG5vIGJpdG1hcCBsb2FkZWQgKi8KLQlpZiAoIWJpdG1hcF9naXQtPmhhdmVzKQotCQlyZXR1cm4gMDsgLyogd2FsayBoYWQgbm8gImhhdmVzIiAqLwotCi0JcG9zID0gYml0bWFwX3Bvc2l0aW9uX3BhY2tmaWxlKGJpdG1hcF9naXQsIHNoYTEpOwotCWlmIChwb3MgPCAwKQotCQlyZXR1cm4gMDsKLQotCXJldHVybiBiaXRtYXBfZ2V0KGJpdG1hcF9naXQtPmhhdmVzLCBwb3MpOworCXJldHVybiBiaXRtYXBfZ2l0ICYmCisJCWJpdG1hcF93YWxrX2NvbnRhaW5zKGJpdG1hcF9naXQsIGJpdG1hcF9naXQtPmhhdmVzLCBvaWQpOwogfQpkaWZmIC0tZ2l0IGEvcGFjay1iaXRtYXAuaCBiL3BhY2stYml0bWFwLmgKaW5kZXggMTg5ZGQ2OC4uMTIwMzEyMCAxMDA2NDQKLS0tIGEvcGFjay1iaXRtYXAuaAorKysgYi9wYWNrLWJpdG1hcC5oCkBAIC0zLDIxICszLDI0IEBACiAKICNpbmNsdWRlICJld2FoL2V3b2suaCIKICNpbmNsdWRlICJraGFzaC5oIgorI2luY2x1ZGUgInBhY2suaCIKICNpbmNsdWRlICJwYWNrLW9iamVjdHMuaCIKIAogc3RydWN0IGNvbW1pdDsKK3N0cnVjdCByZXBvc2l0b3J5Owogc3RydWN0IHJldl9pbmZvOworc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9uczsKKworc3RhdGljIGNvbnN0IGNoYXIgQklUTUFQX0lEWF9TSUdOQVRVUkVbXSA9IHsnQicsICdJJywgJ1QnLCAnTSd9OwogCiBzdHJ1Y3QgYml0bWFwX2Rpc2tfaGVhZGVyIHsKLQljaGFyIG1hZ2ljWzRdOworCWNoYXIgbWFnaWNbQVJSQVlfU0laRShCSVRNQVBfSURYX1NJR05BVFVSRSldOwogCXVpbnQxNl90IHZlcnNpb247CiAJdWludDE2X3Qgb3B0aW9uczsKIAl1aW50MzJfdCBlbnRyeV9jb3VudDsKLQl1bnNpZ25lZCBjaGFyIGNoZWNrc3VtWzIwXTsKKwl1bnNpZ25lZCBjaGFyIGNoZWNrc3VtW0dJVF9NQVhfUkFXU1pdOwogfTsKIAotc3RhdGljIGNvbnN0IGNoYXIgQklUTUFQX0lEWF9TSUdOQVRVUkVbXSA9IHsnQicsICdJJywgJ1QnLCAnTSd9OwotCiAjZGVmaW5lIE5FRURTX0JJVE1BUCAoMXU8PDIyKQogCiBlbnVtIHBhY2tfYml0bWFwX29wdHMgewpAQCAtMzksMjYgKzQyLDMxIEBACiAKIHN0cnVjdCBiaXRtYXBfaW5kZXg7CiAKLXN0cnVjdCBiaXRtYXBfaW5kZXggKnByZXBhcmVfYml0bWFwX2dpdCh2b2lkKTsKK3N0cnVjdCBiaXRtYXBfaW5kZXggKnByZXBhcmVfYml0bWFwX2dpdChzdHJ1Y3QgcmVwb3NpdG9yeSAqcik7CiB2b2lkIGNvdW50X2JpdG1hcF9jb21taXRfbGlzdChzdHJ1Y3QgYml0bWFwX2luZGV4ICosIHVpbnQzMl90ICpjb21taXRzLAogCQkJICAgICAgdWludDMyX3QgKnRyZWVzLCB1aW50MzJfdCAqYmxvYnMsIHVpbnQzMl90ICp0YWdzKTsKIHZvaWQgdHJhdmVyc2VfYml0bWFwX2NvbW1pdF9saXN0KHN0cnVjdCBiaXRtYXBfaW5kZXggKiwKKwkJCQkgc3RydWN0IHJldl9pbmZvICpyZXZzLAogCQkJCSBzaG93X3JlYWNoYWJsZV9mbiBzaG93X3JlYWNoYWJsZSk7CiB2b2lkIHRlc3RfYml0bWFwX3dhbGsoc3RydWN0IHJldl9pbmZvICpyZXZzKTsKLXN0cnVjdCBiaXRtYXBfaW5kZXggKnByZXBhcmVfYml0bWFwX3dhbGsoc3RydWN0IHJldl9pbmZvICpyZXZzKTsKK3N0cnVjdCBiaXRtYXBfaW5kZXggKnByZXBhcmVfYml0bWFwX3dhbGsoc3RydWN0IHJldl9pbmZvICpyZXZzLAorCQkJCQkgc3RydWN0IGxpc3Rfb2JqZWN0c19maWx0ZXJfb3B0aW9ucyAqZmlsdGVyKTsKIGludCByZXVzZV9wYXJ0aWFsX3BhY2tmaWxlX2Zyb21fYml0bWFwKHN0cnVjdCBiaXRtYXBfaW5kZXggKiwKIAkJCQkgICAgICAgc3RydWN0IHBhY2tlZF9naXQgKipwYWNrZmlsZSwKLQkJCQkgICAgICAgdWludDMyX3QgKmVudHJpZXMsIG9mZl90ICp1cF90byk7CisJCQkJICAgICAgIHVpbnQzMl90ICplbnRyaWVzLAorCQkJCSAgICAgICBzdHJ1Y3QgYml0bWFwICoqcmV1c2Vfb3V0KTsKIGludCByZWJ1aWxkX2V4aXN0aW5nX2JpdG1hcHMoc3RydWN0IGJpdG1hcF9pbmRleCAqLCBzdHJ1Y3QgcGFja2luZ19kYXRhICptYXBwaW5nLAotCQkJICAgICBraGFzaF9zaGExICpyZXVzZWRfYml0bWFwcywgaW50IHNob3dfcHJvZ3Jlc3MpOworCQkJICAgICBraF9vaWRfbWFwX3QgKnJldXNlZF9iaXRtYXBzLCBpbnQgc2hvd19wcm9ncmVzcyk7CiB2b2lkIGZyZWVfYml0bWFwX2luZGV4KHN0cnVjdCBiaXRtYXBfaW5kZXggKik7CitpbnQgYml0bWFwX3dhbGtfY29udGFpbnMoc3RydWN0IGJpdG1hcF9pbmRleCAqLAorCQkJIHN0cnVjdCBiaXRtYXAgKmJpdG1hcCwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKIAogLyoKICAqIEFmdGVyIGEgdHJhdmVyc2FsIGhhcyBiZWVuIHBlcmZvcm1lZCBieSBwcmVwYXJlX2JpdG1hcF93YWxrKCksIHRoaXMgY2FuIGJlCiAgKiBxdWVyaWVkIHRvIHNlZSBpZiBhIHBhcnRpY3VsYXIgb2JqZWN0IHdhcyByZWFjaGFibGUgZnJvbSBhbnkgb2YgdGhlCiAgKiBvYmplY3RzIGZsYWdnZWQgYXMgVU5JTlRFUkVTVElORy4KICAqLwotaW50IGJpdG1hcF9oYXNfc2hhMV9pbl91bmludGVyZXN0aW5nKHN0cnVjdCBiaXRtYXBfaW5kZXggKiwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSk7CitpbnQgYml0bWFwX2hhc19vaWRfaW5fdW5pbnRlcmVzdGluZyhzdHJ1Y3QgYml0bWFwX2luZGV4ICosIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CiAKIHZvaWQgYml0bWFwX3dyaXRlcl9zaG93X3Byb2dyZXNzKGludCBzaG93KTsKIHZvaWQgYml0bWFwX3dyaXRlcl9zZXRfY2hlY2tzdW0odW5zaWduZWQgY2hhciAqc2hhMSk7CmRpZmYgLS1naXQgYS9wYWNrLWNoZWNrLmMgYi9wYWNrLWNoZWNrLmMKaW5kZXggZmE1ZjBmZi4uZGFkNmQ4YSAxMDA2NDQKLS0tIGEvcGFjay1jaGVjay5jCisrKyBiL3BhY2stY2hlY2suYwpAQCAtOCwxMCArOCw2IEBACiAKIHN0cnVjdCBpZHhfZW50cnkgewogCW9mZl90ICAgICAgICAgICAgICAgIG9mZnNldDsKLQl1bmlvbiBpZHhfZW50cnlfb2JqZWN0IHsKLQkJY29uc3QgdW5zaWduZWQgY2hhciAqaGFzaDsKLQkJc3RydWN0IG9iamVjdF9pZCAqb2lkOwotCX0gb2lkOwogCXVuc2lnbmVkIGludCBucjsKIH07CiAKQEAgLTQ4LDcgKzQ0LDggQEAKIAlyZXR1cm4gZGF0YV9jcmMgIT0gbnRvaGwoKmluZGV4X2NyYyk7CiB9CiAKLXN0YXRpYyBpbnQgdmVyaWZ5X3BhY2tmaWxlKHN0cnVjdCBwYWNrZWRfZ2l0ICpwLAorc3RhdGljIGludCB2ZXJpZnlfcGFja2ZpbGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgICBzdHJ1Y3QgcGFja2VkX2dpdCAqcCwKIAkJCSAgIHN0cnVjdCBwYWNrX3dpbmRvdyAqKndfY3VycywKIAkJCSAgIHZlcmlmeV9mbiBmbiwKIAkJCSAgIHN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MsIHVpbnQzMl90IGJhc2VfY291bnQpCkBAIC02NiwyMyArNjMsMjMgQEAKIAlpZiAoIWlzX3BhY2tfdmFsaWQocCkpCiAJCXJldHVybiBlcnJvcigicGFja2ZpbGUgJXMgY2Fubm90IGJlIGFjY2Vzc2VkIiwgcC0+cGFja19uYW1lKTsKIAotCXRoZV9oYXNoX2FsZ28tPmluaXRfZm4oJmN0eCk7CisJci0+aGFzaF9hbGdvLT5pbml0X2ZuKCZjdHgpOwogCWRvIHsKIAkJdW5zaWduZWQgbG9uZyByZW1haW5pbmc7CiAJCXVuc2lnbmVkIGNoYXIgKmluID0gdXNlX3BhY2socCwgd19jdXJzLCBvZmZzZXQsICZyZW1haW5pbmcpOwogCQlvZmZzZXQgKz0gcmVtYWluaW5nOwogCQlpZiAoIXBhY2tfc2lnX29mcykKLQkJCXBhY2tfc2lnX29mcyA9IHAtPnBhY2tfc2l6ZSAtIHRoZV9oYXNoX2FsZ28tPnJhd3N6OworCQkJcGFja19zaWdfb2ZzID0gcC0+cGFja19zaXplIC0gci0+aGFzaF9hbGdvLT5yYXdzejsKIAkJaWYgKG9mZnNldCA+IHBhY2tfc2lnX29mcykKIAkJCXJlbWFpbmluZyAtPSAodW5zaWduZWQgaW50KShvZmZzZXQgLSBwYWNrX3NpZ19vZnMpOwotCQl0aGVfaGFzaF9hbGdvLT51cGRhdGVfZm4oJmN0eCwgaW4sIHJlbWFpbmluZyk7CisJCXItPmhhc2hfYWxnby0+dXBkYXRlX2ZuKCZjdHgsIGluLCByZW1haW5pbmcpOwogCX0gd2hpbGUgKG9mZnNldCA8IHBhY2tfc2lnX29mcyk7Ci0JdGhlX2hhc2hfYWxnby0+ZmluYWxfZm4oaGFzaCwgJmN0eCk7CisJci0+aGFzaF9hbGdvLT5maW5hbF9mbihoYXNoLCAmY3R4KTsKIAlwYWNrX3NpZyA9IHVzZV9wYWNrKHAsIHdfY3VycywgcGFja19zaWdfb2ZzLCBOVUxMKTsKIAlpZiAoIWhhc2hlcShoYXNoLCBwYWNrX3NpZykpCiAJCWVyciA9IGVycm9yKCIlcyBwYWNrIGNoZWNrc3VtIG1pc21hdGNoIiwKIAkJCSAgICBwLT5wYWNrX25hbWUpOwotCWlmICghaGFzaGVxKGluZGV4X2Jhc2UgKyBpbmRleF9zaXplIC0gdGhlX2hhc2hfYWxnby0+aGV4c3osIHBhY2tfc2lnKSkKKwlpZiAoIWhhc2hlcShpbmRleF9iYXNlICsgaW5kZXhfc2l6ZSAtIHItPmhhc2hfYWxnby0+aGV4c3osIHBhY2tfc2lnKSkKIAkJZXJyID0gZXJyb3IoIiVzIHBhY2sgY2hlY2tzdW0gZG9lcyBub3QgbWF0Y2ggaXRzIGluZGV4IiwKIAkJCSAgICBwLT5wYWNrX25hbWUpOwogCXVudXNlX3BhY2sod19jdXJzKTsKQEAgLTk2LDkgKzkzLDYgQEAKIAllbnRyaWVzW25yX29iamVjdHNdLm9mZnNldCA9IHBhY2tfc2lnX29mczsKIAkvKiBmaXJzdCBzb3J0IGVudHJpZXMgYnkgcGFjayBvZmZzZXQsIHNpbmNlIHVucGFja2luZyB0aGVtIGlzIG1vcmUgZWZmaWNpZW50IHRoYXQgd2F5ICovCiAJZm9yIChpID0gMDsgaSA8IG5yX29iamVjdHM7IGkrKykgewotCQllbnRyaWVzW2ldLm9pZC5oYXNoID0gbnRoX3BhY2tlZF9vYmplY3Rfc2hhMShwLCBpKTsKLQkJaWYgKCFlbnRyaWVzW2ldLm9pZC5oYXNoKQotCQkJZGllKCJpbnRlcm5hbCBlcnJvciBwYWNrLWNoZWNrIG50aC1wYWNrZWQtb2JqZWN0Iik7CiAJCWVudHJpZXNbaV0ub2Zmc2V0ID0gbnRoX3BhY2tlZF9vYmplY3Rfb2Zmc2V0KHAsIGkpOwogCQllbnRyaWVzW2ldLm5yID0gaTsKIAl9CkBAIC0xMDYsMTEgKzEwMCwxNiBAQAogCiAJZm9yIChpID0gMDsgaSA8IG5yX29iamVjdHM7IGkrKykgewogCQl2b2lkICpkYXRhOworCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAkJZW51bSBvYmplY3RfdHlwZSB0eXBlOwogCQl1bnNpZ25lZCBsb25nIHNpemU7CiAJCW9mZl90IGN1cnBvczsKIAkJaW50IGRhdGFfdmFsaWQ7CiAKKwkJaWYgKG50aF9wYWNrZWRfb2JqZWN0X2lkKCZvaWQsIHAsIGVudHJpZXNbaV0ubnIpIDwgMCkKKwkJCUJVRygidW5hYmxlIHRvIGdldCBvaWQgb2Ygb2JqZWN0ICVsdSBmcm9tICVzIiwKKwkJCSAgICAodW5zaWduZWQgbG9uZyllbnRyaWVzW2ldLm5yLCBwLT5wYWNrX25hbWUpOworCiAJCWlmIChwLT5pbmRleF92ZXJzaW9uID4gMSkgewogCQkJb2ZmX3Qgb2Zmc2V0ID0gZW50cmllc1tpXS5vZmZzZXQ7CiAJCQlvZmZfdCBsZW4gPSBlbnRyaWVzW2krMV0ub2Zmc2V0IC0gb2Zmc2V0OwpAQCAtMTE4LDcgKzExNyw3IEBACiAJCQlpZiAoY2hlY2tfcGFja19jcmMocCwgd19jdXJzLCBvZmZzZXQsIGxlbiwgbnIpKQogCQkJCWVyciA9IGVycm9yKCJpbmRleCBDUkMgbWlzbWF0Y2ggZm9yIG9iamVjdCAlcyAiCiAJCQkJCSAgICAiZnJvbSAlcyBhdCBvZmZzZXQgJSJQUkl1TUFYIiIsCi0JCQkJCSAgICBvaWRfdG9faGV4KGVudHJpZXNbaV0ub2lkLm9pZCksCisJCQkJCSAgICBvaWRfdG9faGV4KCZvaWQpLAogCQkJCQkgICAgcC0+cGFja19uYW1lLCAodWludG1heF90KW9mZnNldCk7CiAJCX0KIApAQCAtMTM1LDIwICsxMzQsMjAgQEAKIAkJCWRhdGEgPSBOVUxMOwogCQkJZGF0YV92YWxpZCA9IDA7CiAJCX0gZWxzZSB7Ci0JCQlkYXRhID0gdW5wYWNrX2VudHJ5KHRoZV9yZXBvc2l0b3J5LCBwLCBlbnRyaWVzW2ldLm9mZnNldCwgJnR5cGUsICZzaXplKTsKKwkJCWRhdGEgPSB1bnBhY2tfZW50cnkociwgcCwgZW50cmllc1tpXS5vZmZzZXQsICZ0eXBlLCAmc2l6ZSk7CiAJCQlkYXRhX3ZhbGlkID0gMTsKIAkJfQogCiAJCWlmIChkYXRhX3ZhbGlkICYmICFkYXRhKQogCQkJZXJyID0gZXJyb3IoImNhbm5vdCB1bnBhY2sgJXMgZnJvbSAlcyBhdCBvZmZzZXQgJSJQUkl1TUFYIiIsCi0JCQkJICAgIG9pZF90b19oZXgoZW50cmllc1tpXS5vaWQub2lkKSwgcC0+cGFja19uYW1lLAorCQkJCSAgICBvaWRfdG9faGV4KCZvaWQpLCBwLT5wYWNrX25hbWUsCiAJCQkJICAgICh1aW50bWF4X3QpZW50cmllc1tpXS5vZmZzZXQpOwotCQllbHNlIGlmIChjaGVja19vYmplY3Rfc2lnbmF0dXJlKGVudHJpZXNbaV0ub2lkLm9pZCwgZGF0YSwgc2l6ZSwgdHlwZV9uYW1lKHR5cGUpKSkKKwkJZWxzZSBpZiAoY2hlY2tfb2JqZWN0X3NpZ25hdHVyZShyLCAmb2lkLCBkYXRhLCBzaXplLCB0eXBlX25hbWUodHlwZSkpKQogCQkJZXJyID0gZXJyb3IoInBhY2tlZCAlcyBmcm9tICVzIGlzIGNvcnJ1cHQiLAotCQkJCSAgICBvaWRfdG9faGV4KGVudHJpZXNbaV0ub2lkLm9pZCksIHAtPnBhY2tfbmFtZSk7CisJCQkJICAgIG9pZF90b19oZXgoJm9pZCksIHAtPnBhY2tfbmFtZSk7CiAJCWVsc2UgaWYgKGZuKSB7CiAJCQlpbnQgZWF0ZW4gPSAwOwotCQkJZXJyIHw9IGZuKGVudHJpZXNbaV0ub2lkLm9pZCwgdHlwZSwgc2l6ZSwgZGF0YSwgJmVhdGVuKTsKKwkJCWVyciB8PSBmbigmb2lkLCB0eXBlLCBzaXplLCBkYXRhLCAmZWF0ZW4pOwogCQkJaWYgKGVhdGVuKQogCQkJCWRhdGEgPSBOVUxMOwogCQl9CkBAIC0xODYsNyArMTg1LDcgQEAKIAlyZXR1cm4gZXJyOwogfQogCi1pbnQgdmVyaWZ5X3BhY2soc3RydWN0IHBhY2tlZF9naXQgKnAsIHZlcmlmeV9mbiBmbiwKK2ludCB2ZXJpZnlfcGFjayhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHBhY2tlZF9naXQgKnAsIHZlcmlmeV9mbiBmbiwKIAkJc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcywgdWludDMyX3QgYmFzZV9jb3VudCkKIHsKIAlpbnQgZXJyID0gMDsKQEAgLTE5Niw3ICsxOTUsNyBAQAogCWlmICghcC0+aW5kZXhfZGF0YSkKIAkJcmV0dXJuIC0xOwogCi0JZXJyIHw9IHZlcmlmeV9wYWNrZmlsZShwLCAmd19jdXJzLCBmbiwgcHJvZ3Jlc3MsIGJhc2VfY291bnQpOworCWVyciB8PSB2ZXJpZnlfcGFja2ZpbGUociwgcCwgJndfY3VycywgZm4sIHByb2dyZXNzLCBiYXNlX2NvdW50KTsKIAl1bnVzZV9wYWNrKCZ3X2N1cnMpOwogCiAJcmV0dXJuIGVycjsKZGlmZiAtLWdpdCBhL3BhY2stb2JqZWN0cy5jIGIvcGFjay1vYmplY3RzLmMKaW5kZXggYjZjZGJiMC4uZjJhNDMzOCAxMDA2NDQKLS0tIGEvcGFjay1vYmplY3RzLmMKKysrIGIvcGFjay1vYmplY3RzLmMKQEAgLTYsMTcgKzYsMTcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKIAogc3RhdGljIHVpbnQzMl90IGxvY2F0ZV9vYmplY3RfZW50cnlfaGFzaChzdHJ1Y3QgcGFja2luZ19kYXRhICpwZGF0YSwKLQkJCQkJIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsCisJCQkJCSBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCiAJCQkJCSBpbnQgKmZvdW5kKQogewogCXVpbnQzMl90IGksIG1hc2sgPSAocGRhdGEtPmluZGV4X3NpemUgLSAxKTsKIAotCWkgPSBzaGExaGFzaChzaGExKSAmIG1hc2s7CisJaSA9IG9pZGhhc2gob2lkKSAmIG1hc2s7CiAKIAl3aGlsZSAocGRhdGEtPmluZGV4W2ldID4gMCkgewogCQl1aW50MzJfdCBwb3MgPSBwZGF0YS0+aW5kZXhbaV0gLSAxOwogCi0JCWlmIChoYXNoZXEoc2hhMSwgcGRhdGEtPm9iamVjdHNbcG9zXS5pZHgub2lkLmhhc2gpKSB7CisJCWlmIChvaWRlcShvaWQsICZwZGF0YS0+b2JqZWN0c1twb3NdLmlkeC5vaWQpKSB7CiAJCQkqZm91bmQgPSAxOwogCQkJcmV0dXJuIGk7CiAJCX0KQEAgLTU2LDcgKzU2LDcgQEAKIAlmb3IgKGkgPSAwOyBpIDwgcGRhdGEtPm5yX29iamVjdHM7IGkrKykgewogCQlpbnQgZm91bmQ7CiAJCXVpbnQzMl90IGl4ID0gbG9jYXRlX29iamVjdF9lbnRyeV9oYXNoKHBkYXRhLAotCQkJCQkJICAgICAgIGVudHJ5LT5pZHgub2lkLmhhc2gsCisJCQkJCQkgICAgICAgJmVudHJ5LT5pZHgub2lkLAogCQkJCQkJICAgICAgICZmb3VuZCk7CiAKIAkJaWYgKGZvdW5kKQpAQCAtNjgsOCArNjgsNyBAQAogfQogCiBzdHJ1Y3Qgb2JqZWN0X2VudHJ5ICpwYWNrbGlzdF9maW5kKHN0cnVjdCBwYWNraW5nX2RhdGEgKnBkYXRhLAotCQkJCSAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsCi0JCQkJICAgdWludDMyX3QgKmluZGV4X3BvcykKKwkJCQkgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7CiAJdWludDMyX3QgaTsKIAlpbnQgZm91bmQ7CkBAIC03NywxMCArNzYsNyBAQAogCWlmICghcGRhdGEtPmluZGV4X3NpemUpCiAJCXJldHVybiBOVUxMOwogCi0JaSA9IGxvY2F0ZV9vYmplY3RfZW50cnlfaGFzaChwZGF0YSwgc2hhMSwgJmZvdW5kKTsKLQotCWlmIChpbmRleF9wb3MpCi0JCSppbmRleF9wb3MgPSBpOworCWkgPSBsb2NhdGVfb2JqZWN0X2VudHJ5X2hhc2gocGRhdGEsIG9pZCwgJmZvdW5kKTsKIAogCWlmICghZm91bmQpCiAJCXJldHVybiBOVUxMOwpAQCAtOTksNyArOTUsNyBAQAogCSAqIChpLmUuIGluX3BhY2tfaWR4IGFsc28gemVybykgc2hvdWxkIHJldHVybiBOVUxMLgogCSAqLwogCW1hcHBpbmdbY250KytdID0gTlVMTDsKLQlmb3IgKHAgPSBnZXRfYWxsX3BhY2tzKHRoZV9yZXBvc2l0b3J5KTsgcDsgcCA9IHAtPm5leHQsIGNudCsrKSB7CisJZm9yIChwID0gZ2V0X2FsbF9wYWNrcyhwZGF0YS0+cmVwbyk7IHA7IHAgPSBwLT5uZXh0LCBjbnQrKykgewogCQlpZiAoY250ID09IG5yKSB7CiAJCQlmcmVlKG1hcHBpbmcpOwogCQkJcmV0dXJuOwpAQCAtMTE5LDEyICsxMTUsMTQgQEAKICAqIHRoaXMgZmFsbCBiYWNrIGNvZGUsIGp1c3Qgc3RheSBzaW1wbGUgYW5kIGZhbGwgYmFjayB0byB1c2luZwogICogaW5fcGFja1tdIGFycmF5LgogICovCi12b2lkIG9lX21hcF9uZXdfcGFjayhzdHJ1Y3QgcGFja2luZ19kYXRhICpwYWNrLAotCQkgICAgIHN0cnVjdCBwYWNrZWRfZ2l0ICpwKQordm9pZCBvZV9tYXBfbmV3X3BhY2soc3RydWN0IHBhY2tpbmdfZGF0YSAqcGFjaykKIHsKIAl1aW50MzJfdCBpOwogCi0JUkVBTExPQ19BUlJBWShwYWNrLT5pbl9wYWNrLCBwYWNrLT5ucl9hbGxvYyk7CisJaWYgKHBhY2stPmluX3BhY2spCisJCUJVRygicGFja2luZ19kYXRhIGhhcyBhbHJlYWR5IGJlZW4gY29udmVydGVkIHRvIHBhY2sgYXJyYXkiKTsKKworCUFMTE9DX0FSUkFZKHBhY2stPmluX3BhY2ssIHBhY2stPm5yX2FsbG9jKTsKIAogCWZvciAoaSA9IDA7IGkgPCBwYWNrLT5ucl9vYmplY3RzOyBpKyspCiAJCXBhY2stPmluX3BhY2tbaV0gPSBvZV9pbl9wYWNrKHBhY2ssIHBhY2stPm9iamVjdHMgKyBpKTsKQEAgLTEzMyw4ICsxMzEsMTAgQEAKIH0KIAogLyogYXNzdW1lIHBkYXRhIGlzIGFscmVhZHkgemVybydkIGJ5IGNhbGxlciAqLwotdm9pZCBwcmVwYXJlX3BhY2tpbmdfZGF0YShzdHJ1Y3QgcGFja2luZ19kYXRhICpwZGF0YSkKK3ZvaWQgcHJlcGFyZV9wYWNraW5nX2RhdGEoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBwYWNraW5nX2RhdGEgKnBkYXRhKQogeworCXBkYXRhLT5yZXBvID0gcjsKKwogCWlmIChnaXRfZW52X2Jvb2woIkdJVF9URVNUX0ZVTExfSU5fUEFDS19BUlJBWSIsIDApKSB7CiAJCS8qCiAJCSAqIGRvIG5vdCBpbml0aWFsaXplIGluX3BhY2tfYnlfaWR4W10gdG8gZm9yY2UgdGhlCkBAIC0xNDgsMTQgKzE0OCwxMSBAQAogCQkJCQkgICAgIDFVIDw8IE9FX1NJWkVfQklUUyk7CiAJcGRhdGEtPm9lX2RlbHRhX3NpemVfbGltaXQgPSBnaXRfZW52X3Vsb25nKCJHSVRfVEVTVF9PRV9ERUxUQV9TSVpFIiwKIAkJCQkJCSAgIDFVTCA8PCBPRV9ERUxUQV9TSVpFX0JJVFMpOwotI2lmbmRlZiBOT19QVEhSRUFEUwotCXB0aHJlYWRfbXV0ZXhfaW5pdCgmcGRhdGEtPmxvY2ssIE5VTEwpOwotI2VuZGlmCisJaW5pdF9yZWN1cnNpdmVfbXV0ZXgoJnBkYXRhLT5vZGJfbG9jayk7CiB9CiAKIHN0cnVjdCBvYmplY3RfZW50cnkgKnBhY2tsaXN0X2FsbG9jKHN0cnVjdCBwYWNraW5nX2RhdGEgKnBkYXRhLAotCQkJCSAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExLAotCQkJCSAgICB1aW50MzJfdCBpbmRleF9wb3MpCisJCQkJICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAlzdHJ1Y3Qgb2JqZWN0X2VudHJ5ICpuZXdfZW50cnk7CiAKQEAgLTE3OCwxMiArMTc1LDE5IEBACiAJbmV3X2VudHJ5ID0gcGRhdGEtPm9iamVjdHMgKyBwZGF0YS0+bnJfb2JqZWN0cysrOwogCiAJbWVtc2V0KG5ld19lbnRyeSwgMCwgc2l6ZW9mKCpuZXdfZW50cnkpKTsKLQloYXNoY3B5KG5ld19lbnRyeS0+aWR4Lm9pZC5oYXNoLCBzaGExKTsKKwlvaWRjcHkoJm5ld19lbnRyeS0+aWR4Lm9pZCwgb2lkKTsKIAogCWlmIChwZGF0YS0+aW5kZXhfc2l6ZSAqIDMgPD0gcGRhdGEtPm5yX29iamVjdHMgKiA0KQogCQlyZWhhc2hfb2JqZWN0cyhwZGF0YSk7Ci0JZWxzZQotCQlwZGF0YS0+aW5kZXhbaW5kZXhfcG9zXSA9IHBkYXRhLT5ucl9vYmplY3RzOworCWVsc2UgeworCQlpbnQgZm91bmQ7CisJCXVpbnQzMl90IHBvcyA9IGxvY2F0ZV9vYmplY3RfZW50cnlfaGFzaChwZGF0YSwKKwkJCQkJCQkmbmV3X2VudHJ5LT5pZHgub2lkLAorCQkJCQkJCSZmb3VuZCk7CisJCWlmIChmb3VuZCkKKwkJCUJVRygiZHVwbGljYXRlIG9iamVjdCBpbnNlcnRlZCBpbnRvIGhhc2giKTsKKwkJcGRhdGEtPmluZGV4W3Bvc10gPSBwZGF0YS0+bnJfb2JqZWN0czsKKwl9CiAKIAlpZiAocGRhdGEtPmluX3BhY2spCiAJCXBkYXRhLT5pbl9wYWNrW3BkYXRhLT5ucl9vYmplY3RzIC0gMV0gPSBOVUxMOwpAQCAtMTk5LDE0ICsyMDMsMTQgQEAKIAogdm9pZCBvZV9zZXRfZGVsdGFfZXh0KHN0cnVjdCBwYWNraW5nX2RhdGEgKnBkYXRhLAogCQkgICAgICBzdHJ1Y3Qgb2JqZWN0X2VudHJ5ICpkZWx0YSwKLQkJICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSkKKwkJICAgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewogCXN0cnVjdCBvYmplY3RfZW50cnkgKmJhc2U7CiAKIAlBTExPQ19HUk9XKHBkYXRhLT5leHRfYmFzZXMsIHBkYXRhLT5ucl9leHQgKyAxLCBwZGF0YS0+YWxsb2NfZXh0KTsKIAliYXNlID0gJnBkYXRhLT5leHRfYmFzZXNbcGRhdGEtPm5yX2V4dCsrXTsKIAltZW1zZXQoYmFzZSwgMCwgc2l6ZW9mKCpiYXNlKSk7Ci0JaGFzaGNweShiYXNlLT5pZHgub2lkLmhhc2gsIHNoYTEpOworCW9pZGNweSgmYmFzZS0+aWR4Lm9pZCwgb2lkKTsKIAogCS8qIFRoZXNlIGZsYWdzIG1hcmsgdGhhdCB3ZSBhcmUgbm90IHBhcnQgb2YgdGhlIGFjdHVhbCBwYWNrIG91dHB1dC4gKi8KIAliYXNlLT5wcmVmZXJyZWRfYmFzZSA9IDE7CmRpZmYgLS1naXQgYS9wYWNrLW9iamVjdHMuaCBiL3BhY2stb2JqZWN0cy5oCmluZGV4IGRjODY5ZjIuLjlkODhlM2UgMTAwNjQ0Ci0tLSBhL3BhY2stb2JqZWN0cy5oCisrKyBiL3BhY2stb2JqZWN0cy5oCkBAIC01LDYgKzUsOCBAQAogI2luY2x1ZGUgInRocmVhZC11dGlscy5oIgogI2luY2x1ZGUgInBhY2suaCIKIAorc3RydWN0IHJlcG9zaXRvcnk7CisKICNkZWZpbmUgREVGQVVMVF9ERUxUQV9DQUNIRV9TSVpFICgyNTYgKiAxMDI0ICogMTAyNCkKIAogI2RlZmluZSBPRV9ERlNfU1RBVEVfQklUUwkyCkBAIC0xMjcsNiArMTI5LDcgQEAKIH07CiAKIHN0cnVjdCBwYWNraW5nX2RhdGEgeworCXN0cnVjdCByZXBvc2l0b3J5ICpyZXBvOwogCXN0cnVjdCBvYmplY3RfZW50cnkgKm9iamVjdHM7CiAJdWludDMyX3QgbnJfb2JqZWN0cywgbnJfYWxsb2M7CiAKQEAgLTE0NSw3ICsxNDgsMTEgQEAKIAlzdHJ1Y3QgcGFja2VkX2dpdCAqKmluX3BhY2tfYnlfaWR4OwogCXN0cnVjdCBwYWNrZWRfZ2l0ICoqaW5fcGFjazsKIAotCXB0aHJlYWRfbXV0ZXhfdCBsb2NrOworCS8qCisJICogRHVyaW5nIHBhY2tpbmcgd2l0aCBtdWx0aXBsZSB0aHJlYWRzLCBwcm90ZWN0IHRoZSBpbi1jb3JlCisJICogb2JqZWN0IGRhdGFiYXNlIGZyb20gY29uY3VycmVudCBhY2Nlc3Nlcy4KKwkgKi8KKwlwdGhyZWFkX211dGV4X3Qgb2RiX2xvY2s7CiAKIAkvKgogCSAqIFRoaXMgbGlzdCBjb250YWlucyBlbnRyaWVzIGZvciBiYXNlcyB3aGljaCB3ZSBrbm93IHRoZSBvdGhlciBzaWRlCkBAIC0xNjMsMjQgKzE3MCwyMyBAQAogCXVuc2lnbmVkIGNoYXIgKmxheWVyOwogfTsKIAotdm9pZCBwcmVwYXJlX3BhY2tpbmdfZGF0YShzdHJ1Y3QgcGFja2luZ19kYXRhICpwZGF0YSk7Cit2b2lkIHByZXBhcmVfcGFja2luZ19kYXRhKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgcGFja2luZ19kYXRhICpwZGF0YSk7CiAKKy8qIFByb3RlY3QgYWNjZXNzIHRvIG9iamVjdCBkYXRhYmFzZSAqLwogc3RhdGljIGlubGluZSB2b2lkIHBhY2tpbmdfZGF0YV9sb2NrKHN0cnVjdCBwYWNraW5nX2RhdGEgKnBkYXRhKQogewotCXB0aHJlYWRfbXV0ZXhfbG9jaygmcGRhdGEtPmxvY2spOworCXB0aHJlYWRfbXV0ZXhfbG9jaygmcGRhdGEtPm9kYl9sb2NrKTsKIH0KIHN0YXRpYyBpbmxpbmUgdm9pZCBwYWNraW5nX2RhdGFfdW5sb2NrKHN0cnVjdCBwYWNraW5nX2RhdGEgKnBkYXRhKQogewotCXB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZwZGF0YS0+bG9jayk7CisJcHRocmVhZF9tdXRleF91bmxvY2soJnBkYXRhLT5vZGJfbG9jayk7CiB9CiAKIHN0cnVjdCBvYmplY3RfZW50cnkgKnBhY2tsaXN0X2FsbG9jKHN0cnVjdCBwYWNraW5nX2RhdGEgKnBkYXRhLAotCQkJCSAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExLAotCQkJCSAgICB1aW50MzJfdCBpbmRleF9wb3MpOworCQkJCSAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOwogCiBzdHJ1Y3Qgb2JqZWN0X2VudHJ5ICpwYWNrbGlzdF9maW5kKHN0cnVjdCBwYWNraW5nX2RhdGEgKnBkYXRhLAotCQkJCSAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsCi0JCQkJICAgdWludDMyX3QgKmluZGV4X3Bvcyk7CisJCQkJICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKIAogc3RhdGljIGlubGluZSB1aW50MzJfdCBwYWNrX25hbWVfaGFzaChjb25zdCBjaGFyICpuYW1lKQogewpAQCAtMjM5LDE4ICsyNDUsMjcgQEAKIAkJcmV0dXJuIHBhY2stPmluX3BhY2tbZSAtIHBhY2stPm9iamVjdHNdOwogfQogCi12b2lkIG9lX21hcF9uZXdfcGFjayhzdHJ1Y3QgcGFja2luZ19kYXRhICpwYWNrLAotCQkgICAgIHN0cnVjdCBwYWNrZWRfZ2l0ICpwKTsKK3ZvaWQgb2VfbWFwX25ld19wYWNrKHN0cnVjdCBwYWNraW5nX2RhdGEgKnBhY2spOworCiBzdGF0aWMgaW5saW5lIHZvaWQgb2Vfc2V0X2luX3BhY2soc3RydWN0IHBhY2tpbmdfZGF0YSAqcGFjaywKIAkJCQkgIHN0cnVjdCBvYmplY3RfZW50cnkgKmUsCiAJCQkJICBzdHJ1Y3QgcGFja2VkX2dpdCAqcCkKIHsKLQlpZiAoIXAtPmluZGV4KQotCQlvZV9tYXBfbmV3X3BhY2socGFjaywgcCk7Ci0JaWYgKHBhY2stPmluX3BhY2tfYnlfaWR4KQotCQllLT5pbl9wYWNrX2lkeCA9IHAtPmluZGV4OwotCWVsc2UKLQkJcGFjay0+aW5fcGFja1tlIC0gcGFjay0+b2JqZWN0c10gPSBwOworCWlmIChwYWNrLT5pbl9wYWNrX2J5X2lkeCkgeworCQlpZiAocC0+aW5kZXgpIHsKKwkJCWUtPmluX3BhY2tfaWR4ID0gcC0+aW5kZXg7CisJCQlyZXR1cm47CisJCX0KKwkJLyoKKwkJICogV2UncmUgYWNjZXNzaW5nIHBhY2tzIGJ5IGluZGV4LCBidXQgdGhpcyBwYWNrIGRvZXNuJ3QgaGF2ZQorCQkgKiBhbiBpbmRleCAoZS5nLiwgYmVjYXVzZSBpdCB3YXMgYWRkZWQgc2luY2Ugd2UgY3JlYXRlZCB0aGUKKwkJICogaW5fcGFja19ieV9pZHggYXJyYXkpLiBCYWlsIHRvIG9lX21hcF9uZXdfcGFjaygpLCB3aGljaAorCQkgKiB3aWxsIGNvbnZlcnQgdXMgdG8gdXNpbmcgdGhlIGZ1bGwgaW5fcGFjayBhcnJheSwgYW5kIHRoZW4KKwkJICogZmFsbCB0aHJvdWdoIHRvIG91ciBpbl9wYWNrIGhhbmRsaW5nLgorCQkgKi8KKwkJb2VfbWFwX25ld19wYWNrKHBhY2spOworCX0KKwlwYWNrLT5pbl9wYWNrW2UgLSBwYWNrLT5vYmplY3RzXSA9IHA7CiB9CiAKIHN0YXRpYyBpbmxpbmUgc3RydWN0IG9iamVjdF9lbnRyeSAqb2VfZGVsdGEoCkBAIC0yNzcsNyArMjkyLDcgQEAKIAogdm9pZCBvZV9zZXRfZGVsdGFfZXh0KHN0cnVjdCBwYWNraW5nX2RhdGEgKnBhY2ssCiAJCSAgICAgIHN0cnVjdCBvYmplY3RfZW50cnkgKmUsCi0JCSAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpOworCQkgICAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOwogCiBzdGF0aWMgaW5saW5lIHN0cnVjdCBvYmplY3RfZW50cnkgKm9lX2RlbHRhX2NoaWxkKAogCQljb25zdCBzdHJ1Y3QgcGFja2luZ19kYXRhICpwYWNrLApkaWZmIC0tZ2l0IGEvcGFjay1yZXZpbmRleC5jIGIvcGFjay1yZXZpbmRleC5jCmluZGV4IDNjNTg3ODQuLmQyOGE3ZTQgMTAwNjQ0Ci0tLSBhL3BhY2stcmV2aW5kZXguYworKysgYi9wYWNrLXJldmluZGV4LmMKQEAgLTEsNiArMSw3IEBACiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJwYWNrLXJldmluZGV4LmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCisjaW5jbHVkZSAicGFja2ZpbGUuaCIKIAogLyoKICAqIFBhY2sgaW5kZXggZm9yIGV4aXN0aW5nIHBhY2tzIGdpdmUgdXMgZWFzeSBhY2Nlc3MgdG8gdGhlIG9mZnNldHMgaW50bwpAQCAtMTE5LDcgKzEyMCw3IEBACiAgKi8KIHN0YXRpYyB2b2lkIGNyZWF0ZV9wYWNrX3JldmluZGV4KHN0cnVjdCBwYWNrZWRfZ2l0ICpwKQogewotCXVuc2lnbmVkIG51bV9lbnQgPSBwLT5udW1fb2JqZWN0czsKKwljb25zdCB1bnNpZ25lZCBudW1fZW50ID0gcC0+bnVtX29iamVjdHM7CiAJdW5zaWduZWQgaTsKIAljb25zdCBjaGFyICppbmRleCA9IHAtPmluZGV4X2RhdGE7CiAJY29uc3QgdW5zaWduZWQgaGFzaHN6ID0gdGhlX2hhc2hfYWxnby0+cmF3c3o7CkBAIC0xMzIsNyArMTMzLDcgQEAKIAkJCSh1aW50MzJfdCAqKShpbmRleCArIDggKyBwLT5udW1fb2JqZWN0cyAqIChoYXNoc3ogKyA0KSk7CiAJCWNvbnN0IHVpbnQzMl90ICpvZmZfNjQgPSBvZmZfMzIgKyBwLT5udW1fb2JqZWN0czsKIAkJZm9yIChpID0gMDsgaSA8IG51bV9lbnQ7IGkrKykgewotCQkJdWludDMyX3Qgb2ZmID0gbnRvaGwoKm9mZl8zMisrKTsKKwkJCWNvbnN0IHVpbnQzMl90IG9mZiA9IG50b2hsKCpvZmZfMzIrKyk7CiAJCQlpZiAoIShvZmYgJiAweDgwMDAwMDAwKSkgewogCQkJCXAtPnJldmluZGV4W2ldLm9mZnNldCA9IG9mZjsKIAkJCX0gZWxzZSB7CkBAIC0xNDMsNyArMTQ0LDcgQEAKIAkJfQogCX0gZWxzZSB7CiAJCWZvciAoaSA9IDA7IGkgPCBudW1fZW50OyBpKyspIHsKLQkJCXVpbnQzMl90IGhsID0gKigodWludDMyX3QgKikoaW5kZXggKyAoaGFzaHN6ICsgNCkgKiBpKSk7CisJCQljb25zdCB1aW50MzJfdCBobCA9ICooKHVpbnQzMl90ICopKGluZGV4ICsgKGhhc2hzeiArIDQpICogaSkpOwogCQkJcC0+cmV2aW5kZXhbaV0ub2Zmc2V0ID0gbnRvaGwoaGwpOwogCQkJcC0+cmV2aW5kZXhbaV0ubnIgPSBpOwogCQl9CkBAIC0xNTgsMjAgKzE1OSwyNCBAQAogCXNvcnRfcmV2aW5kZXgocC0+cmV2aW5kZXgsIG51bV9lbnQsIHAtPnBhY2tfc2l6ZSk7CiB9CiAKLXZvaWQgbG9hZF9wYWNrX3JldmluZGV4KHN0cnVjdCBwYWNrZWRfZ2l0ICpwKQoraW50IGxvYWRfcGFja19yZXZpbmRleChzdHJ1Y3QgcGFja2VkX2dpdCAqcCkKIHsKLQlpZiAoIXAtPnJldmluZGV4KQorCWlmICghcC0+cmV2aW5kZXgpIHsKKwkJaWYgKG9wZW5fcGFja19pbmRleChwKSkKKwkJCXJldHVybiAtMTsKIAkJY3JlYXRlX3BhY2tfcmV2aW5kZXgocCk7CisJfQorCXJldHVybiAwOwogfQogCiBpbnQgZmluZF9yZXZpbmRleF9wb3NpdGlvbihzdHJ1Y3QgcGFja2VkX2dpdCAqcCwgb2ZmX3Qgb2ZzKQogewogCWludCBsbyA9IDA7CiAJaW50IGhpID0gcC0+bnVtX29iamVjdHMgKyAxOwotCXN0cnVjdCByZXZpbmRleF9lbnRyeSAqcmV2aW5kZXggPSBwLT5yZXZpbmRleDsKKwljb25zdCBzdHJ1Y3QgcmV2aW5kZXhfZW50cnkgKnJldmluZGV4ID0gcC0+cmV2aW5kZXg7CiAKIAlkbyB7Ci0JCXVuc2lnbmVkIG1pID0gbG8gKyAoaGkgLSBsbykgLyAyOworCQljb25zdCB1bnNpZ25lZCBtaSA9IGxvICsgKGhpIC0gbG8pIC8gMjsKIAkJaWYgKHJldmluZGV4W21pXS5vZmZzZXQgPT0gb2ZzKSB7CiAJCQlyZXR1cm4gbWk7CiAJCX0gZWxzZSBpZiAob2ZzIDwgcmV2aW5kZXhbbWldLm9mZnNldCkKQEAgLTE4OCw3ICsxOTMsOSBAQAogewogCWludCBwb3M7CiAKLQlsb2FkX3BhY2tfcmV2aW5kZXgocCk7CisJaWYgKGxvYWRfcGFja19yZXZpbmRleChwKSkKKwkJcmV0dXJuIE5VTEw7CisKIAlwb3MgPSBmaW5kX3JldmluZGV4X3Bvc2l0aW9uKHAsIG9mcyk7CiAKIAlpZiAocG9zIDwgMCkKZGlmZiAtLWdpdCBhL3BhY2stcmV2aW5kZXguaCBiL3BhY2stcmV2aW5kZXguaAppbmRleCBlMjYyZjNlLi44NDgzMzFkIDEwMDY0NAotLS0gYS9wYWNrLXJldmluZGV4LmgKKysrIGIvcGFjay1yZXZpbmRleC5oCkBAIC04LDcgKzgsNyBAQAogCXVuc2lnbmVkIGludCBucjsKIH07CiAKLXZvaWQgbG9hZF9wYWNrX3JldmluZGV4KHN0cnVjdCBwYWNrZWRfZ2l0ICpwKTsKK2ludCBsb2FkX3BhY2tfcmV2aW5kZXgoc3RydWN0IHBhY2tlZF9naXQgKnApOwogaW50IGZpbmRfcmV2aW5kZXhfcG9zaXRpb24oc3RydWN0IHBhY2tlZF9naXQgKnAsIG9mZl90IG9mcyk7CiAKIHN0cnVjdCByZXZpbmRleF9lbnRyeSAqZmluZF9wYWNrX3JldmluZGV4KHN0cnVjdCBwYWNrZWRfZ2l0ICpwLCBvZmZfdCBvZnMpOwpkaWZmIC0tZ2l0IGEvcGFjay13cml0ZS5jIGIvcGFjay13cml0ZS5jCmluZGV4IDI5ZDE3YTkuLmYwMDE3YmUgMTAwNjQ0Ci0tLSBhL3BhY2std3JpdGUuYworKysgYi9wYWNrLXdyaXRlLmMKQEAgLTM0OSw3ICszNDksNyBAQAogCQkJIHN0cnVjdCBwYWNrX2lkeF9lbnRyeSAqKndyaXR0ZW5fbGlzdCwKIAkJCSB1aW50MzJfdCBucl93cml0dGVuLAogCQkJIHN0cnVjdCBwYWNrX2lkeF9vcHRpb24gKnBhY2tfaWR4X29wdHMsCi0JCQkgdW5zaWduZWQgY2hhciBzaGExW10pCisJCQkgdW5zaWduZWQgY2hhciBoYXNoW10pCiB7CiAJY29uc3QgY2hhciAqaWR4X3RtcF9uYW1lOwogCWludCBiYXNlbmFtZV9sZW4gPSBuYW1lX2J1ZmZlci0+bGVuOwpAQCAtMzU4LDE4ICszNTgsMTggQEAKIAkJZGllX2Vycm5vKCJ1bmFibGUgdG8gbWFrZSB0ZW1wb3JhcnkgcGFjayBmaWxlIHJlYWRhYmxlIik7CiAKIAlpZHhfdG1wX25hbWUgPSB3cml0ZV9pZHhfZmlsZShOVUxMLCB3cml0dGVuX2xpc3QsIG5yX3dyaXR0ZW4sCi0JCQkJICAgICAgcGFja19pZHhfb3B0cywgc2hhMSk7CisJCQkJICAgICAgcGFja19pZHhfb3B0cywgaGFzaCk7CiAJaWYgKGFkanVzdF9zaGFyZWRfcGVybShpZHhfdG1wX25hbWUpKQogCQlkaWVfZXJybm8oInVuYWJsZSB0byBtYWtlIHRlbXBvcmFyeSBpbmRleCBmaWxlIHJlYWRhYmxlIik7CiAKLQlzdHJidWZfYWRkZihuYW1lX2J1ZmZlciwgIiVzLnBhY2siLCBzaGExX3RvX2hleChzaGExKSk7CisJc3RyYnVmX2FkZGYobmFtZV9idWZmZXIsICIlcy5wYWNrIiwgaGFzaF90b19oZXgoaGFzaCkpOwogCiAJaWYgKHJlbmFtZShwYWNrX3RtcF9uYW1lLCBuYW1lX2J1ZmZlci0+YnVmKSkKIAkJZGllX2Vycm5vKCJ1bmFibGUgdG8gcmVuYW1lIHRlbXBvcmFyeSBwYWNrIGZpbGUiKTsKIAogCXN0cmJ1Zl9zZXRsZW4obmFtZV9idWZmZXIsIGJhc2VuYW1lX2xlbik7CiAKLQlzdHJidWZfYWRkZihuYW1lX2J1ZmZlciwgIiVzLmlkeCIsIHNoYTFfdG9faGV4KHNoYTEpKTsKKwlzdHJidWZfYWRkZihuYW1lX2J1ZmZlciwgIiVzLmlkeCIsIGhhc2hfdG9faGV4KGhhc2gpKTsKIAlpZiAocmVuYW1lKGlkeF90bXBfbmFtZSwgbmFtZV9idWZmZXItPmJ1ZikpCiAJCWRpZV9lcnJubygidW5hYmxlIHRvIHJlbmFtZSB0ZW1wb3JhcnkgaW5kZXggZmlsZSIpOwogCmRpZmYgLS1naXQgYS9wYWNrLmggYi9wYWNrLmgKaW5kZXggMzRhOWQ0NS4uOWZjMDk0NSAxMDA2NDQKLS0tIGEvcGFjay5oCisrKyBiL3BhY2suaApAQCAtNCw2ICs0LDggQEAKICNpbmNsdWRlICJvYmplY3QuaCIKICNpbmNsdWRlICJjc3VtLWZpbGUuaCIKIAorc3RydWN0IHJlcG9zaXRvcnk7CisKIC8qCiAgKiBQYWNrZWQgb2JqZWN0IGhlYWRlcgogICovCkBAIC01Myw3ICs1NSw3IEBACiAJdWludDMyX3QgKmFub21hbHk7CiB9OwogCi1leHRlcm4gdm9pZCByZXNldF9wYWNrX2lkeF9vcHRpb24oc3RydWN0IHBhY2tfaWR4X29wdGlvbiAqKTsKK3ZvaWQgcmVzZXRfcGFja19pZHhfb3B0aW9uKHN0cnVjdCBwYWNrX2lkeF9vcHRpb24gKik7CiAKIC8qCiAgKiBQYWNrZWQgb2JqZWN0IGluZGV4IGhlYWRlcgpAQCAtNzcsMjggKzc5LDI4IEBACiAvKiBOb3RlLCB0aGUgZGF0YSBhcmd1bWVudCBjb3VsZCBiZSBOVUxMIGlmIG9iamVjdCB0eXBlIGlzIGJsb2IgKi8KIHR5cGVkZWYgaW50ICgqdmVyaWZ5X2ZuKShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICosIGVudW0gb2JqZWN0X3R5cGUsIHVuc2lnbmVkIGxvbmcsIHZvaWQqLCBpbnQqKTsKIAotZXh0ZXJuIGNvbnN0IGNoYXIgKndyaXRlX2lkeF9maWxlKGNvbnN0IGNoYXIgKmluZGV4X25hbWUsIHN0cnVjdCBwYWNrX2lkeF9lbnRyeSAqKm9iamVjdHMsIGludCBucl9vYmplY3RzLCBjb25zdCBzdHJ1Y3QgcGFja19pZHhfb3B0aW9uICosIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpOwotZXh0ZXJuIGludCBjaGVja19wYWNrX2NyYyhzdHJ1Y3QgcGFja2VkX2dpdCAqcCwgc3RydWN0IHBhY2tfd2luZG93ICoqd19jdXJzLCBvZmZfdCBvZmZzZXQsIG9mZl90IGxlbiwgdW5zaWduZWQgaW50IG5yKTsKLWV4dGVybiBpbnQgdmVyaWZ5X3BhY2tfaW5kZXgoc3RydWN0IHBhY2tlZF9naXQgKik7Ci1leHRlcm4gaW50IHZlcmlmeV9wYWNrKHN0cnVjdCBwYWNrZWRfZ2l0ICosIHZlcmlmeV9mbiBmbiwgc3RydWN0IHByb2dyZXNzICosIHVpbnQzMl90KTsKLWV4dGVybiBvZmZfdCB3cml0ZV9wYWNrX2hlYWRlcihzdHJ1Y3QgaGFzaGZpbGUgKmYsIHVpbnQzMl90KTsKLWV4dGVybiB2b2lkIGZpeHVwX3BhY2tfaGVhZGVyX2Zvb3RlcihpbnQsIHVuc2lnbmVkIGNoYXIgKiwgY29uc3QgY2hhciAqLCB1aW50MzJfdCwgdW5zaWduZWQgY2hhciAqLCBvZmZfdCk7Ci1leHRlcm4gY2hhciAqaW5kZXhfcGFja19sb2NrZmlsZShpbnQgZmQpOworY29uc3QgY2hhciAqd3JpdGVfaWR4X2ZpbGUoY29uc3QgY2hhciAqaW5kZXhfbmFtZSwgc3RydWN0IHBhY2tfaWR4X2VudHJ5ICoqb2JqZWN0cywgaW50IG5yX29iamVjdHMsIGNvbnN0IHN0cnVjdCBwYWNrX2lkeF9vcHRpb24gKiwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSk7CitpbnQgY2hlY2tfcGFja19jcmMoc3RydWN0IHBhY2tlZF9naXQgKnAsIHN0cnVjdCBwYWNrX3dpbmRvdyAqKndfY3Vycywgb2ZmX3Qgb2Zmc2V0LCBvZmZfdCBsZW4sIHVuc2lnbmVkIGludCBucik7CitpbnQgdmVyaWZ5X3BhY2tfaW5kZXgoc3RydWN0IHBhY2tlZF9naXQgKik7CitpbnQgdmVyaWZ5X3BhY2soc3RydWN0IHJlcG9zaXRvcnkgKiwgc3RydWN0IHBhY2tlZF9naXQgKiwgdmVyaWZ5X2ZuIGZuLCBzdHJ1Y3QgcHJvZ3Jlc3MgKiwgdWludDMyX3QpOworb2ZmX3Qgd3JpdGVfcGFja19oZWFkZXIoc3RydWN0IGhhc2hmaWxlICpmLCB1aW50MzJfdCk7Cit2b2lkIGZpeHVwX3BhY2tfaGVhZGVyX2Zvb3RlcihpbnQsIHVuc2lnbmVkIGNoYXIgKiwgY29uc3QgY2hhciAqLCB1aW50MzJfdCwgdW5zaWduZWQgY2hhciAqLCBvZmZfdCk7CitjaGFyICppbmRleF9wYWNrX2xvY2tmaWxlKGludCBmZCk7CiAKIC8qCiAgKiBUaGUgImhkciIgb3V0cHV0IGJ1ZmZlciBzaG91bGQgYmUgYXQgbGVhc3QgdGhpcyBiaWcsIHdoaWNoIHdpbGwgaGFuZGxlIHNpemVzCiAgKiB1cCB0byAyXjY3LgogICovCiAjZGVmaW5lIE1BWF9QQUNLX09CSkVDVF9IRUFERVIgMTAKLWV4dGVybiBpbnQgZW5jb2RlX2luX3BhY2tfb2JqZWN0X2hlYWRlcih1bnNpZ25lZCBjaGFyICpoZHIsIGludCBoZHJfbGVuLAotCQkJCQllbnVtIG9iamVjdF90eXBlLCB1aW50bWF4X3QpOworaW50IGVuY29kZV9pbl9wYWNrX29iamVjdF9oZWFkZXIodW5zaWduZWQgY2hhciAqaGRyLCBpbnQgaGRyX2xlbiwKKwkJCQkgZW51bSBvYmplY3RfdHlwZSwgdWludG1heF90KTsKIAogI2RlZmluZSBQSF9FUlJPUl9FT0YJCSgtMSkKICNkZWZpbmUgUEhfRVJST1JfUEFDS19TSUdOQVRVUkUJKC0yKQogI2RlZmluZSBQSF9FUlJPUl9QUk9UT0NPTAkoLTMpCi1leHRlcm4gaW50IHJlYWRfcGFja19oZWFkZXIoaW50IGZkLCBzdHJ1Y3QgcGFja19oZWFkZXIgKik7CitpbnQgcmVhZF9wYWNrX2hlYWRlcihpbnQgZmQsIHN0cnVjdCBwYWNrX2hlYWRlciAqKTsKIAotZXh0ZXJuIHN0cnVjdCBoYXNoZmlsZSAqY3JlYXRlX3RtcF9wYWNrZmlsZShjaGFyICoqcGFja190bXBfbmFtZSk7Ci1leHRlcm4gdm9pZCBmaW5pc2hfdG1wX3BhY2tmaWxlKHN0cnVjdCBzdHJidWYgKm5hbWVfYnVmZmVyLCBjb25zdCBjaGFyICpwYWNrX3RtcF9uYW1lLCBzdHJ1Y3QgcGFja19pZHhfZW50cnkgKip3cml0dGVuX2xpc3QsIHVpbnQzMl90IG5yX3dyaXR0ZW4sIHN0cnVjdCBwYWNrX2lkeF9vcHRpb24gKnBhY2tfaWR4X29wdHMsIHVuc2lnbmVkIGNoYXIgc2hhMVtdKTsKK3N0cnVjdCBoYXNoZmlsZSAqY3JlYXRlX3RtcF9wYWNrZmlsZShjaGFyICoqcGFja190bXBfbmFtZSk7Cit2b2lkIGZpbmlzaF90bXBfcGFja2ZpbGUoc3RydWN0IHN0cmJ1ZiAqbmFtZV9idWZmZXIsIGNvbnN0IGNoYXIgKnBhY2tfdG1wX25hbWUsIHN0cnVjdCBwYWNrX2lkeF9lbnRyeSAqKndyaXR0ZW5fbGlzdCwgdWludDMyX3QgbnJfd3JpdHRlbiwgc3RydWN0IHBhY2tfaWR4X29wdGlvbiAqcGFja19pZHhfb3B0cywgdW5zaWduZWQgY2hhciBzaGExW10pOwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL3BhY2tmaWxlLmMgYi9wYWNrZmlsZS5jCmluZGV4IGQxZTY2ODMuLmY0ZTc1MjkgMTAwNjQ0Ci0tLSBhL3BhY2tmaWxlLmMKKysrIGIvcGFja2ZpbGUuYwpAQCAtNiw3ICs2LDYgQEAKICNpbmNsdWRlICJtZXJnZXNvcnQuaCIKICNpbmNsdWRlICJwYWNrZmlsZS5oIgogI2luY2x1ZGUgImRlbHRhLmgiCi0jaW5jbHVkZSAibGlzdC5oIgogI2luY2x1ZGUgInN0cmVhbWluZy5oIgogI2luY2x1ZGUgInNoYTEtbG9va3VwLmgiCiAjaW5jbHVkZSAiY29tbWl0LmgiCkBAIC0xNiwxNCArMTUsMTYgQEAKICNpbmNsdWRlICJ0cmVlLmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCiAjaW5jbHVkZSAibWlkeC5oIgorI2luY2x1ZGUgImNvbW1pdC1ncmFwaC5oIgorI2luY2x1ZGUgInByb21pc29yLXJlbW90ZS5oIgogCiBjaGFyICpvZGJfcGFja19uYW1lKHN0cnVjdCBzdHJidWYgKmJ1ZiwKLQkJICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsCisJCSAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpoYXNoLAogCQkgICAgY29uc3QgY2hhciAqZXh0KQogewogCXN0cmJ1Zl9yZXNldChidWYpOwogCXN0cmJ1Zl9hZGRmKGJ1ZiwgIiVzL3BhY2svcGFjay0lcy4lcyIsIGdldF9vYmplY3RfZGlyZWN0b3J5KCksCi0JCSAgICBzaGExX3RvX2hleChzaGExKSwgZXh0KTsKKwkJICAgIGhhc2hfdG9faGV4KGhhc2gpLCBleHQpOwogCXJldHVybiBidWYtPmJ1ZjsKIH0KIApAQCAtMjM1LDcgKzIzNiw3IEBACiAJc3RydWN0IHBhY2tlZF9naXQgKnAgPSBhbGxvY19wYWNrZWRfZ2l0KGFsbG9jKTsKIAogCW1lbWNweShwLT5wYWNrX25hbWUsIHBhdGgsIGFsbG9jKTsgLyogaW5jbHVkZXMgTlVMICovCi0JaGFzaGNweShwLT5zaGExLCBzaGExKTsKKwloYXNoY3B5KHAtPmhhc2gsIHNoYTEpOwogCWlmIChjaGVja19wYWNrZWRfZ2l0X2lkeChpZHhfcGF0aCwgcCkpIHsKIAkJZnJlZShwKTsKIAkJcmV0dXJuIE5VTEw7CkBAIC0yODYsMTMgKzI4Nyw2IEBACiAJcmV0dXJuIDA7CiB9CiAKLXZvaWQgcmVsZWFzZV9wYWNrX21lbW9yeShzaXplX3QgbmVlZCkKLXsKLQlzaXplX3QgY3VyID0gcGFja19tYXBwZWQ7Ci0Jd2hpbGUgKG5lZWQgPj0gKGN1ciAtIHBhY2tfbWFwcGVkKSAmJiB1bnVzZV9vbmVfd2luZG93KE5VTEwpKQotCQk7IC8qIG5vdGhpbmcgKi8KLX0KLQogdm9pZCBjbG9zZV9wYWNrX3dpbmRvd3Moc3RydWN0IHBhY2tlZF9naXQgKnApCiB7CiAJd2hpbGUgKHAtPndpbmRvd3MpIHsKQEAgLTMwOSw3ICszMDMsNyBAQAogCX0KIH0KIAotc3RhdGljIGludCBjbG9zZV9wYWNrX2ZkKHN0cnVjdCBwYWNrZWRfZ2l0ICpwKQoraW50IGNsb3NlX3BhY2tfZmQoc3RydWN0IHBhY2tlZF9naXQgKnApCiB7CiAJaWYgKHAtPnBhY2tfZmQgPCAwKQogCQlyZXR1cm4gMDsKQEAgLTMzNiw3ICszMzAsNyBAQAogCWNsb3NlX3BhY2tfaW5kZXgocCk7CiB9CiAKLXZvaWQgY2xvc2VfYWxsX3BhY2tzKHN0cnVjdCByYXdfb2JqZWN0X3N0b3JlICpvKQordm9pZCBjbG9zZV9vYmplY3Rfc3RvcmUoc3RydWN0IHJhd19vYmplY3Rfc3RvcmUgKm8pCiB7CiAJc3RydWN0IHBhY2tlZF9naXQgKnA7CiAKQEAgLTM1MCw2ICszNDQsMzYgQEAKIAkJY2xvc2VfbWlkeChvLT5tdWx0aV9wYWNrX2luZGV4KTsKIAkJby0+bXVsdGlfcGFja19pbmRleCA9IE5VTEw7CiAJfQorCisJY2xvc2VfY29tbWl0X2dyYXBoKG8pOworfQorCit2b2lkIHVubGlua19wYWNrX3BhdGgoY29uc3QgY2hhciAqcGFja19uYW1lLCBpbnQgZm9yY2VfZGVsZXRlKQoreworCXN0YXRpYyBjb25zdCBjaGFyICpleHRzW10gPSB7Ii5wYWNrIiwgIi5pZHgiLCAiLmtlZXAiLCAiLmJpdG1hcCIsICIucHJvbWlzb3IifTsKKwlpbnQgaTsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOworCXNpemVfdCBwbGVuOworCisJc3RyYnVmX2FkZHN0cigmYnVmLCBwYWNrX25hbWUpOworCXN0cmlwX3N1ZmZpeF9tZW0oYnVmLmJ1ZiwgJmJ1Zi5sZW4sICIucGFjayIpOworCXBsZW4gPSBidWYubGVuOworCisJaWYgKCFmb3JjZV9kZWxldGUpIHsKKwkJc3RyYnVmX2FkZHN0cigmYnVmLCAiLmtlZXAiKTsKKwkJaWYgKCFhY2Nlc3MoYnVmLmJ1ZiwgRl9PSykpIHsKKwkJCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOworCQkJcmV0dXJuOworCQl9CisJfQorCisJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUoZXh0cyk7IGkrKykgeworCQlzdHJidWZfc2V0bGVuKCZidWYsIHBsZW4pOworCQlzdHJidWZfYWRkc3RyKCZidWYsIGV4dHNbaV0pOworCQl1bmxpbmsoYnVmLmJ1Zik7CisJfQorCisJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CiB9CiAKIC8qCkBAIC00NjYsNiArNDkwLDE2IEBACiAjZW5kaWYKIH0KIAorY29uc3QgY2hhciAqcGFja19iYXNlbmFtZShzdHJ1Y3QgcGFja2VkX2dpdCAqcCkKK3sKKwljb25zdCBjaGFyICpyZXQgPSBzdHJyY2hyKHAtPnBhY2tfbmFtZSwgJy8nKTsKKwlpZiAocmV0KQorCQlyZXQgPSByZXQgKyAxOyAvKiBza2lwIHBhc3Qgc2xhc2ggKi8KKwllbHNlCisJCXJldCA9IHAtPnBhY2tfbmFtZTsgLyogd2Ugb25seSBoYXZlIGEgYmFzZSAqLworCXJldHVybiByZXQ7Cit9CisKIC8qCiAgKiBEbyBub3QgY2FsbCB0aGlzIGRpcmVjdGx5IGFzIHRoaXMgbGVha3MgcC0+cGFja19mZCBvbiBlcnJvciByZXR1cm47CiAgKiBjYWxsIG9wZW5fcGFja2VkX2dpdCgpIGluc3RlYWQuCkBAIC00NzYsMTMgKzUxMCwxMiBAQAogCXN0cnVjdCBwYWNrX2hlYWRlciBoZHI7CiAJdW5zaWduZWQgY2hhciBoYXNoW0dJVF9NQVhfUkFXU1pdOwogCXVuc2lnbmVkIGNoYXIgKmlkeF9oYXNoOwotCWxvbmcgZmRfZmxhZzsKIAlzc2l6ZV90IHJlYWRfcmVzdWx0OwogCWNvbnN0IHVuc2lnbmVkIGhhc2hzeiA9IHRoZV9oYXNoX2FsZ28tPnJhd3N6OwogCiAJaWYgKCFwLT5pbmRleF9kYXRhKSB7CiAJCXN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptOwotCQljb25zdCBjaGFyICpwYWNrX25hbWUgPSBzdHJyY2hyKHAtPnBhY2tfbmFtZSwgJy8nKTsKKwkJY29uc3QgY2hhciAqcGFja19uYW1lID0gcGFja19iYXNlbmFtZShwKTsKIAogCQlmb3IgKG0gPSB0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cy0+bXVsdGlfcGFja19pbmRleDsKIAkJICAgICBtOyBtID0gbS0+bmV4dCkgewpAQCAtNTIwLDE2ICs1NTMsNiBAQAogCX0gZWxzZSBpZiAocC0+cGFja19zaXplICE9IHN0LnN0X3NpemUpCiAJCXJldHVybiBlcnJvcigicGFja2ZpbGUgJXMgc2l6ZSBjaGFuZ2VkIiwgcC0+cGFja19uYW1lKTsKIAotCS8qIFdlIGxlYXZlIHRoZXNlIGZpbGUgZGVzY3JpcHRvcnMgb3BlbiB3aXRoIHNsaWRpbmcgbW1hcDsKLQkgKiB0aGVyZSBpcyBubyBwb2ludCBrZWVwaW5nIHRoZW0gb3BlbiBhY3Jvc3MgZXhlYygpLCB0aG91Z2guCi0JICovCi0JZmRfZmxhZyA9IGZjbnRsKHAtPnBhY2tfZmQsIEZfR0VURkQsIDApOwotCWlmIChmZF9mbGFnIDwgMCkKLQkJcmV0dXJuIGVycm9yKCJjYW5ub3QgZGV0ZXJtaW5lIGZpbGUgZGVzY3JpcHRvciBmbGFncyIpOwotCWZkX2ZsYWcgfD0gRkRfQ0xPRVhFQzsKLQlpZiAoZmNudGwocC0+cGFja19mZCwgRl9TRVRGRCwgZmRfZmxhZykgPT0gLTEpCi0JCXJldHVybiBlcnJvcigiY2Fubm90IHNldCBGRF9DTE9FWEVDIik7Ci0KIAkvKiBWZXJpZnkgd2UgcmVjb2duaXplIHRoaXMgcGFjayBmaWxlIGZvcm1hdC4gKi8KIAlyZWFkX3Jlc3VsdCA9IHJlYWRfaW5fZnVsbChwLT5wYWNrX2ZkLCAmaGRyLCBzaXplb2YoaGRyKSk7CiAJaWYgKHJlYWRfcmVzdWx0IDwgMCkKQEAgLTU1Myw5ICs1NzYsOCBAQAogCQkJICAgICAiIHdoaWxlIGluZGV4IGluZGljYXRlcyAlIlBSSXUzMiIgb2JqZWN0cyIsCiAJCQkgICAgIHAtPnBhY2tfbmFtZSwgbnRvaGwoaGRyLmhkcl9lbnRyaWVzKSwKIAkJCSAgICAgcC0+bnVtX29iamVjdHMpOwotCWlmIChsc2VlayhwLT5wYWNrX2ZkLCBwLT5wYWNrX3NpemUgLSBoYXNoc3osIFNFRUtfU0VUKSA9PSAtMSkKLQkJcmV0dXJuIGVycm9yKCJlbmQgb2YgcGFja2ZpbGUgJXMgaXMgdW5hdmFpbGFibGUiLCBwLT5wYWNrX25hbWUpOwotCXJlYWRfcmVzdWx0ID0gcmVhZF9pbl9mdWxsKHAtPnBhY2tfZmQsIGhhc2gsIGhhc2hzeik7CisJcmVhZF9yZXN1bHQgPSBwcmVhZF9pbl9mdWxsKHAtPnBhY2tfZmQsIGhhc2gsIGhhc2hzeiwKKwkJCQkJcC0+cGFja19zaXplIC0gaGFzaHN6KTsKIAlpZiAocmVhZF9yZXN1bHQgPCAwKQogCQlyZXR1cm4gZXJyb3JfZXJybm8oImVycm9yIHJlYWRpbmcgZnJvbSAlcyIsIHAtPnBhY2tfbmFtZSk7CiAJaWYgKHJlYWRfcmVzdWx0ICE9IGhhc2hzeikKQEAgLTYzMCw3ICs2NTIsNyBAQAogCQkJd2hpbGUgKHBhY2tlZF9naXRfbGltaXQgPCBwYWNrX21hcHBlZAogCQkJCSYmIHVudXNlX29uZV93aW5kb3cocCkpCiAJCQkJOyAvKiBub3RoaW5nICovCi0JCQl3aW4tPmJhc2UgPSB4bW1hcChOVUxMLCB3aW4tPmxlbiwKKwkJCXdpbi0+YmFzZSA9IHhtbWFwX2dlbnRseShOVUxMLCB3aW4tPmxlbiwKIAkJCQlQUk9UX1JFQUQsIE1BUF9QUklWQVRFLAogCQkJCXAtPnBhY2tfZmQsIHdpbi0+b2Zmc2V0KTsKIAkJCWlmICh3aW4tPmJhc2UgPT0gTUFQX0ZBSUxFRCkKQEAgLTY2OSwyMyArNjkxLDEyIEBACiAJfQogfQogCi1zdGF0aWMgdm9pZCB0cnlfdG9fZnJlZV9wYWNrX21lbW9yeShzaXplX3Qgc2l6ZSkKLXsKLQlyZWxlYXNlX3BhY2tfbWVtb3J5KHNpemUpOwotfQotCiBzdHJ1Y3QgcGFja2VkX2dpdCAqYWRkX3BhY2tlZF9naXQoY29uc3QgY2hhciAqcGF0aCwgc2l6ZV90IHBhdGhfbGVuLCBpbnQgbG9jYWwpCiB7Ci0Jc3RhdGljIGludCBoYXZlX3NldF90cnlfdG9fZnJlZV9yb3V0aW5lOwogCXN0cnVjdCBzdGF0IHN0OwogCXNpemVfdCBhbGxvYzsKIAlzdHJ1Y3QgcGFja2VkX2dpdCAqcDsKIAotCWlmICghaGF2ZV9zZXRfdHJ5X3RvX2ZyZWVfcm91dGluZSkgewotCQloYXZlX3NldF90cnlfdG9fZnJlZV9yb3V0aW5lID0gMTsKLQkJc2V0X3RyeV90b19mcmVlX3JvdXRpbmUodHJ5X3RvX2ZyZWVfcGFja19tZW1vcnkpOwotCX0KLQogCS8qCiAJICogTWFrZSBzdXJlIGEgY29ycmVzcG9uZGluZyAucGFjayBmaWxlIGV4aXN0cyBhbmQgdGhhdAogCSAqIHRoZSBpbmRleCBsb29rcyBzYW5lLgpAQCAtNzIyLDggKzczMyw4IEBACiAJcC0+cGFja19sb2NhbCA9IGxvY2FsOwogCXAtPm10aW1lID0gc3Quc3RfbXRpbWU7CiAJaWYgKHBhdGhfbGVuIDwgdGhlX2hhc2hfYWxnby0+aGV4c3ogfHwKLQkgICAgZ2V0X3NoYTFfaGV4KHBhdGggKyBwYXRoX2xlbiAtIHRoZV9oYXNoX2FsZ28tPmhleHN6LCBwLT5zaGExKSkKLQkJaGFzaGNscihwLT5zaGExKTsKKwkgICAgZ2V0X3NoYTFfaGV4KHBhdGggKyBwYXRoX2xlbiAtIHRoZV9oYXNoX2FsZ28tPmhleHN6LCBwLT5oYXNoKSkKKwkJaGFzaGNscihwLT5oYXNoKTsKIAlyZXR1cm4gcDsKIH0KIApAQCAtNzM0LDYgKzc0NSw5IEBACiAKIAlwYWNrLT5uZXh0ID0gci0+b2JqZWN0cy0+cGFja2VkX2dpdDsKIAlyLT5vYmplY3RzLT5wYWNrZWRfZ2l0ID0gcGFjazsKKworCWhhc2htYXBfZW50cnlfaW5pdCgmcGFjay0+cGFja21hcF9lbnQsIHN0cmhhc2gocGFjay0+cGFja19uYW1lKSk7CisJaGFzaG1hcF9hZGQoJnItPm9iamVjdHMtPnBhY2tfbWFwLCAmcGFjay0+cGFja21hcF9lbnQpOwogfQogCiB2b2lkICgqcmVwb3J0X2dhcmJhZ2UpKHVuc2lnbmVkIHNlZW5fYml0cywgY29uc3QgY2hhciAqcGF0aCk7CkBAIC04MzMsMjAgKzg0NywxOCBAQAogCiAJaWYgKHN0cmlwX3N1ZmZpeF9tZW0oZnVsbF9uYW1lLCAmYmFzZV9sZW4sICIuaWR4IikgJiYKIAkgICAgIShkYXRhLT5tICYmIG1pZHhfY29udGFpbnNfcGFjayhkYXRhLT5tLCBmaWxlX25hbWUpKSkgewotCQkvKiBEb24ndCByZW9wZW4gYSBwYWNrIHdlIGFscmVhZHkgaGF2ZS4gKi8KLQkJZm9yIChwID0gZGF0YS0+ci0+b2JqZWN0cy0+cGFja2VkX2dpdDsgcDsgcCA9IHAtPm5leHQpIHsKLQkJCXNpemVfdCBsZW47Ci0JCQlpZiAoc3RyaXBfc3VmZml4KHAtPnBhY2tfbmFtZSwgIi5wYWNrIiwgJmxlbikgJiYKLQkJCSAgICBsZW4gPT0gYmFzZV9sZW4gJiYKLQkJCSAgICAhbWVtY21wKHAtPnBhY2tfbmFtZSwgZnVsbF9uYW1lLCBsZW4pKQotCQkJCWJyZWFrOwotCQl9CisJCXN0cnVjdCBoYXNobWFwX2VudHJ5IGhlbnQ7CisJCWNoYXIgKnBhY2tfbmFtZSA9IHhzdHJmbXQoIiUuKnMucGFjayIsIChpbnQpYmFzZV9sZW4sIGZ1bGxfbmFtZSk7CisJCXVuc2lnbmVkIGludCBoYXNoID0gc3RyaGFzaChwYWNrX25hbWUpOworCQloYXNobWFwX2VudHJ5X2luaXQoJmhlbnQsIGhhc2gpOwogCi0JCWlmICghcCkgeworCQkvKiBEb24ndCByZW9wZW4gYSBwYWNrIHdlIGFscmVhZHkgaGF2ZS4gKi8KKwkJaWYgKCFoYXNobWFwX2dldCgmZGF0YS0+ci0+b2JqZWN0cy0+cGFja19tYXAsICZoZW50LCBwYWNrX25hbWUpKSB7CiAJCQlwID0gYWRkX3BhY2tlZF9naXQoZnVsbF9uYW1lLCBmdWxsX25hbWVfbGVuLCBkYXRhLT5sb2NhbCk7CiAJCQlpZiAocCkKIAkJCQlpbnN0YWxsX3BhY2tlZF9naXQoZGF0YS0+ciwgcCk7CiAJCX0KKwkJZnJlZShwYWNrX25hbWUpOwogCX0KIAogCWlmICghcmVwb3J0X2dhcmJhZ2UpCkBAIC04OTMsMjUgKzkwNSwyNSBAQAogICogYWxsIHVucmVhY2hhYmxlIG9iamVjdHMgYWJvdXQgdG8gYmUgcHJ1bmVkLCBpbiB3aGljaCBjYXNlIHRoZXkncmUgbm90IHJlYWxseQogICogaW50ZXJlc3RpbmcgYXMgYSBtZWFzdXJlIG9mIHJlcG8gc2l6ZSBpbiB0aGUgZmlyc3QgcGxhY2UuCiAgKi8KLXVuc2lnbmVkIGxvbmcgYXBwcm94aW1hdGVfb2JqZWN0X2NvdW50KHZvaWQpCit1bnNpZ25lZCBsb25nIHJlcG9fYXBwcm94aW1hdGVfb2JqZWN0X2NvdW50KHN0cnVjdCByZXBvc2l0b3J5ICpyKQogewotCWlmICghdGhlX3JlcG9zaXRvcnktPm9iamVjdHMtPmFwcHJveGltYXRlX29iamVjdF9jb3VudF92YWxpZCkgeworCWlmICghci0+b2JqZWN0cy0+YXBwcm94aW1hdGVfb2JqZWN0X2NvdW50X3ZhbGlkKSB7CiAJCXVuc2lnbmVkIGxvbmcgY291bnQ7CiAJCXN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptOwogCQlzdHJ1Y3QgcGFja2VkX2dpdCAqcDsKIAotCQlwcmVwYXJlX3BhY2tlZF9naXQodGhlX3JlcG9zaXRvcnkpOworCQlwcmVwYXJlX3BhY2tlZF9naXQocik7CiAJCWNvdW50ID0gMDsKLQkJZm9yIChtID0gZ2V0X211bHRpX3BhY2tfaW5kZXgodGhlX3JlcG9zaXRvcnkpOyBtOyBtID0gbS0+bmV4dCkKKwkJZm9yIChtID0gZ2V0X211bHRpX3BhY2tfaW5kZXgocik7IG07IG0gPSBtLT5uZXh0KQogCQkJY291bnQgKz0gbS0+bnVtX29iamVjdHM7Ci0JCWZvciAocCA9IHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzLT5wYWNrZWRfZ2l0OyBwOyBwID0gcC0+bmV4dCkgeworCQlmb3IgKHAgPSByLT5vYmplY3RzLT5wYWNrZWRfZ2l0OyBwOyBwID0gcC0+bmV4dCkgewogCQkJaWYgKG9wZW5fcGFja19pbmRleChwKSkKIAkJCQljb250aW51ZTsKIAkJCWNvdW50ICs9IHAtPm51bV9vYmplY3RzOwogCQl9Ci0JCXRoZV9yZXBvc2l0b3J5LT5vYmplY3RzLT5hcHByb3hpbWF0ZV9vYmplY3RfY291bnQgPSBjb3VudDsKKwkJci0+b2JqZWN0cy0+YXBwcm94aW1hdGVfb2JqZWN0X2NvdW50ID0gY291bnQ7CiAJfQotCXJldHVybiB0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cy0+YXBwcm94aW1hdGVfb2JqZWN0X2NvdW50OworCXJldHVybiByLT5vYmplY3RzLT5hcHByb3hpbWF0ZV9vYmplY3RfY291bnQ7CiB9CiAKIHN0YXRpYyB2b2lkICpnZXRfbmV4dF9wYWNrZWRfZ2l0KGNvbnN0IHZvaWQgKnApCkBAIC05NzEsMzAgKzk4MywzNSBAQAogCiBzdGF0aWMgdm9pZCBwcmVwYXJlX3BhY2tlZF9naXQoc3RydWN0IHJlcG9zaXRvcnkgKnIpCiB7Ci0Jc3RydWN0IGFsdGVybmF0ZV9vYmplY3RfZGF0YWJhc2UgKmFsdDsKKwlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiOwogCiAJaWYgKHItPm9iamVjdHMtPnBhY2tlZF9naXRfaW5pdGlhbGl6ZWQpCiAJCXJldHVybjsKLQlwcmVwYXJlX211bHRpX3BhY2tfaW5kZXhfb25lKHIsIHItPm9iamVjdHMtPm9iamVjdGRpciwgMSk7Ci0JcHJlcGFyZV9wYWNrZWRfZ2l0X29uZShyLCByLT5vYmplY3RzLT5vYmplY3RkaXIsIDEpOworCiAJcHJlcGFyZV9hbHRfb2RiKHIpOwotCWZvciAoYWx0ID0gci0+b2JqZWN0cy0+YWx0X29kYl9saXN0OyBhbHQ7IGFsdCA9IGFsdC0+bmV4dCkgewotCQlwcmVwYXJlX211bHRpX3BhY2tfaW5kZXhfb25lKHIsIGFsdC0+cGF0aCwgMCk7Ci0JCXByZXBhcmVfcGFja2VkX2dpdF9vbmUociwgYWx0LT5wYXRoLCAwKTsKKwlmb3IgKG9kYiA9IHItPm9iamVjdHMtPm9kYjsgb2RiOyBvZGIgPSBvZGItPm5leHQpIHsKKwkJaW50IGxvY2FsID0gKG9kYiA9PSByLT5vYmplY3RzLT5vZGIpOworCQlwcmVwYXJlX211bHRpX3BhY2tfaW5kZXhfb25lKHIsIG9kYi0+cGF0aCwgbG9jYWwpOworCQlwcmVwYXJlX3BhY2tlZF9naXRfb25lKHIsIG9kYi0+cGF0aCwgbG9jYWwpOwogCX0KIAlyZWFycmFuZ2VfcGFja2VkX2dpdChyKTsKIAotCXItPm9iamVjdHMtPmFsbF9wYWNrcyA9IE5VTEw7Ci0KIAlwcmVwYXJlX3BhY2tlZF9naXRfbXJ1KHIpOwogCXItPm9iamVjdHMtPnBhY2tlZF9naXRfaW5pdGlhbGl6ZWQgPSAxOwogfQogCiB2b2lkIHJlcHJlcGFyZV9wYWNrZWRfZ2l0KHN0cnVjdCByZXBvc2l0b3J5ICpyKQogeworCXN0cnVjdCBvYmplY3RfZGlyZWN0b3J5ICpvZGI7CisKKwlvYmpfcmVhZF9sb2NrKCk7CisJZm9yIChvZGIgPSByLT5vYmplY3RzLT5vZGI7IG9kYjsgb2RiID0gb2RiLT5uZXh0KQorCQlvZGJfY2xlYXJfbG9vc2VfY2FjaGUob2RiKTsKKwogCXItPm9iamVjdHMtPmFwcHJveGltYXRlX29iamVjdF9jb3VudF92YWxpZCA9IDA7CiAJci0+b2JqZWN0cy0+cGFja2VkX2dpdF9pbml0aWFsaXplZCA9IDA7CiAJcHJlcGFyZV9wYWNrZWRfZ2l0KHIpOworCW9ial9yZWFkX3VubG9jaygpOwogfQogCiBzdHJ1Y3QgcGFja2VkX2dpdCAqZ2V0X3BhY2tlZF9naXQoc3RydWN0IHJlcG9zaXRvcnkgKnIpCkBAIC0xMDExLDI2ICsxMDI4LDE2IEBACiAKIHN0cnVjdCBwYWNrZWRfZ2l0ICpnZXRfYWxsX3BhY2tzKHN0cnVjdCByZXBvc2l0b3J5ICpyKQogeworCXN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptOworCiAJcHJlcGFyZV9wYWNrZWRfZ2l0KHIpOwotCi0JaWYgKCFyLT5vYmplY3RzLT5hbGxfcGFja3MpIHsKLQkJc3RydWN0IHBhY2tlZF9naXQgKnAgPSByLT5vYmplY3RzLT5wYWNrZWRfZ2l0OwotCQlzdHJ1Y3QgbXVsdGlfcGFja19pbmRleCAqbTsKLQotCQlmb3IgKG0gPSByLT5vYmplY3RzLT5tdWx0aV9wYWNrX2luZGV4OyBtOyBtID0gbS0+bmV4dCkgewotCQkJdWludDMyX3QgaTsKLQkJCWZvciAoaSA9IDA7IGkgPCBtLT5udW1fcGFja3M7IGkrKykgewotCQkJCWlmICghcHJlcGFyZV9taWR4X3BhY2sobSwgaSkpIHsKLQkJCQkJbS0+cGFja3NbaV0tPm5leHQgPSBwOwotCQkJCQlwID0gbS0+cGFja3NbaV07Ci0JCQkJfQotCQkJfQotCQl9Ci0KLQkJci0+b2JqZWN0cy0+YWxsX3BhY2tzID0gcDsKKwlmb3IgKG0gPSByLT5vYmplY3RzLT5tdWx0aV9wYWNrX2luZGV4OyBtOyBtID0gbS0+bmV4dCkgeworCQl1aW50MzJfdCBpOworCQlmb3IgKGkgPSAwOyBpIDwgbS0+bnVtX3BhY2tzOyBpKyspCisJCQlwcmVwYXJlX21pZHhfcGFjayhyLCBtLCBpKTsKIAl9CiAKLQlyZXR1cm4gci0+b2JqZWN0cy0+YWxsX3BhY2tzOworCXJldHVybiByLT5vYmplY3RzLT5wYWNrZWRfZ2l0OwogfQogCiBzdHJ1Y3QgbGlzdF9oZWFkICpnZXRfcGFja2VkX2dpdF9tcnUoc3RydWN0IHJlcG9zaXRvcnkgKnIpCkBAIC0xMDgxLDcgKzEwODgsMjMgQEAKIAlkbyB7CiAJCWluID0gdXNlX3BhY2socCwgd19jdXJzLCBjdXJwb3MsICZzdHJlYW0uYXZhaWxfaW4pOwogCQlzdHJlYW0ubmV4dF9pbiA9IGluOworCQkvKgorCQkgKiBOb3RlOiB0aGUgd2luZG93IHNlY3Rpb24gcmV0dXJuZWQgYnkgdXNlX3BhY2soKSBtdXN0IGJlCisJCSAqIGF2YWlsYWJsZSB0aHJvdWdob3V0IGdpdF9pbmZsYXRlKCkncyB1bmxvY2tlZCBleGVjdXRpb24uIFRvCisJCSAqIGVuc3VyZSBubyBvdGhlciB0aHJlYWQgd2lsbCBtb2RpZnkgdGhlIHdpbmRvdyBpbiB0aGUKKwkJICogbWVhbnRpbWUsIHdlIHJlbHkgb24gdGhlIHBhY2tlZF93aW5kb3cuaW51c2VfY250LiBUaGlzCisJCSAqIGNvdW50ZXIgaXMgaW5jcmVtZW50ZWQgYmVmb3JlIHdpbmRvdyByZWFkaW5nIGFuZCBjaGVja2VkCisJCSAqIGJlZm9yZSB3aW5kb3cgZGlzcG9zYWwuCisJCSAqCisJCSAqIE90aGVyIHdvcnJ5aW5nIHNlY3Rpb25zIGNvdWxkIGJlIHRoZSBjYWxsIHRvIGNsb3NlX3BhY2tfZmQoKSwKKwkJICogd2hpY2ggY2FuIGNsb3NlIHBhY2tzIGV2ZW4gd2l0aCBpbi11c2Ugd2luZG93cywgYW5kIHRvCisJCSAqIHJlcHJlcGFyZV9wYWNrZWRfZ2l0KCkuIFJlZ2FyZGluZyB0aGUgZm9ybWVyLCBtbWFwIGRvYyBzYXlzOgorCQkgKiAiY2xvc2luZyB0aGUgZmlsZSBkZXNjcmlwdG9yIGRvZXMgbm90IHVubWFwIHRoZSByZWdpb24iLiBBbmQKKwkJICogZm9yIHRoZSBsYXR0ZXIsIGl0IHdvbid0IHJlLW9wZW4gYWxyZWFkeSBhdmFpbGFibGUgcGFja3MuCisJCSAqLworCQlvYmpfcmVhZF91bmxvY2soKTsKIAkJc3QgPSBnaXRfaW5mbGF0ZSgmc3RyZWFtLCBaX0ZJTklTSCk7CisJCW9ial9yZWFkX2xvY2soKTsKIAkJY3VycG9zICs9IHN0cmVhbS5uZXh0X2luIC0gaW47CiAJfSB3aGlsZSAoKHN0ID09IFpfT0sgfHwgc3QgPT0gWl9CVUZfRVJST1IpICYmCiAJCSBzdHJlYW0udG90YWxfb3V0IDwgc2l6ZW9mKGRlbHRhX2hlYWQpKTsKQEAgLTExNDMsMTIgKzExNjYsMTMgQEAKIAlwLT5udW1fYmFkX29iamVjdHMrKzsKIH0KIAotY29uc3Qgc3RydWN0IHBhY2tlZF9naXQgKmhhc19wYWNrZWRfYW5kX2JhZChjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKQorY29uc3Qgc3RydWN0IHBhY2tlZF9naXQgKmhhc19wYWNrZWRfYW5kX2JhZChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpCiB7CiAJc3RydWN0IHBhY2tlZF9naXQgKnA7CiAJdW5zaWduZWQgaTsKIAotCWZvciAocCA9IHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzLT5wYWNrZWRfZ2l0OyBwOyBwID0gcC0+bmV4dCkKKwlmb3IgKHAgPSByLT5vYmplY3RzLT5wYWNrZWRfZ2l0OyBwOyBwID0gcC0+bmV4dCkKIAkJZm9yIChpID0gMDsgaSA8IHAtPm51bV9iYWRfb2JqZWN0czsgaSsrKQogCQkJaWYgKGhhc2hlcShzaGExLAogCQkJCSAgIHAtPmJhZF9vYmplY3Rfc2hhMSArIHRoZV9oYXNoX2FsZ28tPnJhd3N6ICogaSkpCkBAIC0xMTU2LDExICsxMTgwLDExIEBACiAJcmV0dXJuIE5VTEw7CiB9CiAKLXN0YXRpYyBvZmZfdCBnZXRfZGVsdGFfYmFzZShzdHJ1Y3QgcGFja2VkX2dpdCAqcCwKLQkJCQkgICAgc3RydWN0IHBhY2tfd2luZG93ICoqd19jdXJzLAotCQkJCSAgICBvZmZfdCAqY3VycG9zLAotCQkJCSAgICBlbnVtIG9iamVjdF90eXBlIHR5cGUsCi0JCQkJICAgIG9mZl90IGRlbHRhX29ial9vZmZzZXQpCitvZmZfdCBnZXRfZGVsdGFfYmFzZShzdHJ1Y3QgcGFja2VkX2dpdCAqcCwKKwkJICAgICBzdHJ1Y3QgcGFja193aW5kb3cgKip3X2N1cnMsCisJCSAgICAgb2ZmX3QgKmN1cnBvcywKKwkJICAgICBlbnVtIG9iamVjdF90eXBlIHR5cGUsCisJCSAgICAgb2ZmX3QgZGVsdGFfb2JqX29mZnNldCkKIHsKIAl1bnNpZ25lZCBjaGFyICpiYXNlX2luZm8gPSB1c2VfcGFjayhwLCB3X2N1cnMsICpjdXJwb3MsIE5VTEwpOwogCW9mZl90IGJhc2Vfb2Zmc2V0OwpAQCAtMTIwMSwzMCArMTIyNSwzMiBAQAogICogdGhlIGZpbmFsIG9iamVjdCBsb29rdXApLCBidXQgbW9yZSBleHBlbnNpdmUgZm9yIE9GUyBkZWx0YXMgKHdlCiAgKiBoYXZlIHRvIGxvYWQgdGhlIHJldmlkeCB0byBjb252ZXJ0IHRoZSBvZmZzZXQgYmFjayBpbnRvIGEgc2hhMSkuCiAgKi8KLXN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyICpnZXRfZGVsdGFfYmFzZV9zaGExKHN0cnVjdCBwYWNrZWRfZ2l0ICpwLAotCQkJCQkJc3RydWN0IHBhY2tfd2luZG93ICoqd19jdXJzLAotCQkJCQkJb2ZmX3QgY3VycG9zLAotCQkJCQkJZW51bSBvYmplY3RfdHlwZSB0eXBlLAotCQkJCQkJb2ZmX3QgZGVsdGFfb2JqX29mZnNldCkKK3N0YXRpYyBpbnQgZ2V0X2RlbHRhX2Jhc2Vfb2lkKHN0cnVjdCBwYWNrZWRfZ2l0ICpwLAorCQkJICAgICAgc3RydWN0IHBhY2tfd2luZG93ICoqd19jdXJzLAorCQkJICAgICAgb2ZmX3QgY3VycG9zLAorCQkJICAgICAgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJICAgICAgZW51bSBvYmplY3RfdHlwZSB0eXBlLAorCQkJICAgICAgb2ZmX3QgZGVsdGFfb2JqX29mZnNldCkKIHsKIAlpZiAodHlwZSA9PSBPQkpfUkVGX0RFTFRBKSB7CiAJCXVuc2lnbmVkIGNoYXIgKmJhc2UgPSB1c2VfcGFjayhwLCB3X2N1cnMsIGN1cnBvcywgTlVMTCk7Ci0JCXJldHVybiBiYXNlOworCQlvaWRyZWFkKG9pZCwgYmFzZSk7CisJCXJldHVybiAwOwogCX0gZWxzZSBpZiAodHlwZSA9PSBPQkpfT0ZTX0RFTFRBKSB7CiAJCXN0cnVjdCByZXZpbmRleF9lbnRyeSAqcmV2aWR4OwogCQlvZmZfdCBiYXNlX29mZnNldCA9IGdldF9kZWx0YV9iYXNlKHAsIHdfY3VycywgJmN1cnBvcywKIAkJCQkJCSAgIHR5cGUsIGRlbHRhX29ial9vZmZzZXQpOwogCiAJCWlmICghYmFzZV9vZmZzZXQpCi0JCQlyZXR1cm4gTlVMTDsKKwkJCXJldHVybiAtMTsKIAogCQlyZXZpZHggPSBmaW5kX3BhY2tfcmV2aW5kZXgocCwgYmFzZV9vZmZzZXQpOwogCQlpZiAoIXJldmlkeCkKLQkJCXJldHVybiBOVUxMOworCQkJcmV0dXJuIC0xOwogCi0JCXJldHVybiBudGhfcGFja2VkX29iamVjdF9zaGExKHAsIHJldmlkeC0+bnIpOworCQlyZXR1cm4gbnRoX3BhY2tlZF9vYmplY3RfaWQob2lkLCBwLCByZXZpZHgtPm5yKTsKIAl9IGVsc2UKLQkJcmV0dXJuIE5VTEw7CisJCXJldHVybiAtMTsKIH0KIAogc3RhdGljIGludCByZXRyeV9iYWRfcGFja2VkX29mZnNldChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKQEAgLTEyMzcsNyArMTI2Myw3IEBACiAJcmV2aWR4ID0gZmluZF9wYWNrX3JldmluZGV4KHAsIG9ial9vZmZzZXQpOwogCWlmICghcmV2aWR4KQogCQlyZXR1cm4gT0JKX0JBRDsKLQludGhfcGFja2VkX29iamVjdF9vaWQoJm9pZCwgcCwgcmV2aWR4LT5ucik7CisJbnRoX3BhY2tlZF9vYmplY3RfaWQoJm9pZCwgcCwgcmV2aWR4LT5ucik7CiAJbWFya19iYWRfcGFja2VkX29iamVjdChwLCBvaWQuaGFzaCk7CiAJdHlwZSA9IG9pZF9vYmplY3RfaW5mbyhyLCAmb2lkLCBOVUxMKTsKIAlpZiAodHlwZSA8PSBPQkpfTk9ORSkKQEAgLTEyNjUsNyArMTI5MSw3IEBACiAJCWlmIChwb2lfc3RhY2tfbnIgPj0gcG9pX3N0YWNrX2FsbG9jICYmIHBvaV9zdGFjayA9PSBzbWFsbF9wb2lfc3RhY2spIHsKIAkJCXBvaV9zdGFja19hbGxvYyA9IGFsbG9jX25yKHBvaV9zdGFja19ucik7CiAJCQlBTExPQ19BUlJBWShwb2lfc3RhY2ssIHBvaV9zdGFja19hbGxvYyk7Ci0JCQltZW1jcHkocG9pX3N0YWNrLCBzbWFsbF9wb2lfc3RhY2ssIHNpemVvZihvZmZfdCkqcG9pX3N0YWNrX25yKTsKKwkJCUNPUFlfQVJSQVkocG9pX3N0YWNrLCBzbWFsbF9wb2lfc3RhY2ssIHBvaV9zdGFja19ucik7CiAJCX0gZWxzZSB7CiAJCQlBTExPQ19HUk9XKHBvaV9zdGFjaywgcG9pX3N0YWNrX25yKzEsIHBvaV9zdGFja19hbGxvYyk7CiAJCX0KQEAgLTEzMjYsNyArMTM1Miw3IEBACiB9OwogCiBzdHJ1Y3QgZGVsdGFfYmFzZV9jYWNoZV9lbnRyeSB7Ci0Jc3RydWN0IGhhc2htYXAgaGFzaDsKKwlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSBlbnQ7CiAJc3RydWN0IGRlbHRhX2Jhc2VfY2FjaGVfa2V5IGtleTsKIAlzdHJ1Y3QgbGlzdF9oZWFkIGxydTsKIAl2b2lkICpkYXRhOwpAQCAtMTM0Niw3ICsxMzcyLDcgQEAKIHN0YXRpYyBzdHJ1Y3QgZGVsdGFfYmFzZV9jYWNoZV9lbnRyeSAqCiBnZXRfZGVsdGFfYmFzZV9jYWNoZV9lbnRyeShzdHJ1Y3QgcGFja2VkX2dpdCAqcCwgb2ZmX3QgYmFzZV9vZmZzZXQpCiB7Ci0Jc3RydWN0IGhhc2htYXBfZW50cnkgZW50cnk7CisJc3RydWN0IGhhc2htYXBfZW50cnkgZW50cnksICplOwogCXN0cnVjdCBkZWx0YV9iYXNlX2NhY2hlX2tleSBrZXk7CiAKIAlpZiAoIWRlbHRhX2Jhc2VfY2FjaGUuY21wZm4pCkBAIC0xMzU1LDcgKzEzODEsOCBAQAogCWhhc2htYXBfZW50cnlfaW5pdCgmZW50cnksIHBhY2tfZW50cnlfaGFzaChwLCBiYXNlX29mZnNldCkpOwogCWtleS5wID0gcDsKIAlrZXkuYmFzZV9vZmZzZXQgPSBiYXNlX29mZnNldDsKLQlyZXR1cm4gaGFzaG1hcF9nZXQoJmRlbHRhX2Jhc2VfY2FjaGUsICZlbnRyeSwgJmtleSk7CisJZSA9IGhhc2htYXBfZ2V0KCZkZWx0YV9iYXNlX2NhY2hlLCAmZW50cnksICZrZXkpOworCXJldHVybiBlID8gY29udGFpbmVyX29mKGUsIHN0cnVjdCBkZWx0YV9iYXNlX2NhY2hlX2VudHJ5LCBlbnQpIDogTlVMTDsKIH0KIAogc3RhdGljIGludCBkZWx0YV9iYXNlX2NhY2hlX2tleV9lcShjb25zdCBzdHJ1Y3QgZGVsdGFfYmFzZV9jYWNoZV9rZXkgKmEsCkBAIC0xMzY1LDExICsxMzkyLDE2IEBACiB9CiAKIHN0YXRpYyBpbnQgZGVsdGFfYmFzZV9jYWNoZV9oYXNoX2NtcChjb25zdCB2b2lkICp1bnVzZWRfY21wX2RhdGEsCi0JCQkJICAgICBjb25zdCB2b2lkICp2YSwgY29uc3Qgdm9pZCAqdmIsCisJCQkJICAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqdmEsCisJCQkJICAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqdmIsCiAJCQkJICAgICBjb25zdCB2b2lkICp2a2V5KQogewotCWNvbnN0IHN0cnVjdCBkZWx0YV9iYXNlX2NhY2hlX2VudHJ5ICphID0gdmEsICpiID0gdmI7CisJY29uc3Qgc3RydWN0IGRlbHRhX2Jhc2VfY2FjaGVfZW50cnkgKmEsICpiOwogCWNvbnN0IHN0cnVjdCBkZWx0YV9iYXNlX2NhY2hlX2tleSAqa2V5ID0gdmtleTsKKworCWEgPSBjb250YWluZXJfb2YodmEsIGNvbnN0IHN0cnVjdCBkZWx0YV9iYXNlX2NhY2hlX2VudHJ5LCBlbnQpOworCWIgPSBjb250YWluZXJfb2YodmIsIGNvbnN0IHN0cnVjdCBkZWx0YV9iYXNlX2NhY2hlX2VudHJ5LCBlbnQpOworCiAJaWYgKGtleSkKIAkJcmV0dXJuICFkZWx0YV9iYXNlX2NhY2hlX2tleV9lcSgmYS0+a2V5LCBrZXkpOwogCWVsc2UKQEAgLTEzODgsNyArMTQyMCw3IEBACiAgKi8KIHN0YXRpYyB2b2lkIGRldGFjaF9kZWx0YV9iYXNlX2NhY2hlX2VudHJ5KHN0cnVjdCBkZWx0YV9iYXNlX2NhY2hlX2VudHJ5ICplbnQpCiB7Ci0JaGFzaG1hcF9yZW1vdmUoJmRlbHRhX2Jhc2VfY2FjaGUsIGVudCwgJmVudC0+a2V5KTsKKwloYXNobWFwX3JlbW92ZSgmZGVsdGFfYmFzZV9jYWNoZSwgJmVudC0+ZW50LCAmZW50LT5rZXkpOwogCWxpc3RfZGVsKCZlbnQtPmxydSk7CiAJZGVsdGFfYmFzZV9jYWNoZWQgLT0gZW50LT5zaXplOwogCWZyZWUoZW50KTsKQEAgLTE0MzMsNiArMTQ2NSwxNCBAQAogCXN0cnVjdCBkZWx0YV9iYXNlX2NhY2hlX2VudHJ5ICplbnQgPSB4bWFsbG9jKHNpemVvZigqZW50KSk7CiAJc3RydWN0IGxpc3RfaGVhZCAqbHJ1LCAqdG1wOwogCisJLyoKKwkgKiBDaGVjayByZXF1aXJlZCB0byBhdm9pZCByZWR1bmRhbnQgZW50cmllcyB3aGVuIG1vcmUgdGhhbiBvbmUgdGhyZWFkCisJICogaXMgdW5wYWNraW5nIHRoZSBzYW1lIG9iamVjdCwgaW4gdW5wYWNrX2VudHJ5KCkgKHNpbmNlIGl0cyBwaGFzZXMgSQorCSAqIGFuZCBJSUkgbWlnaHQgcnVuIGNvbmN1cnJlbnRseSBhY3Jvc3MgbXVsdGlwbGUgdGhyZWFkcykuCisJICovCisJaWYgKGluX2RlbHRhX2Jhc2VfY2FjaGUocCwgYmFzZV9vZmZzZXQpKQorCQlyZXR1cm47CisKIAlkZWx0YV9iYXNlX2NhY2hlZCArPSBiYXNlX3NpemU7CiAKIAlsaXN0X2Zvcl9lYWNoX3NhZmUobHJ1LCB0bXAsICZkZWx0YV9iYXNlX2NhY2hlX2xydSkgewpAQCAtMTQ1Miw4ICsxNDkyLDggQEAKIAogCWlmICghZGVsdGFfYmFzZV9jYWNoZS5jbXBmbikKIAkJaGFzaG1hcF9pbml0KCZkZWx0YV9iYXNlX2NhY2hlLCBkZWx0YV9iYXNlX2NhY2hlX2hhc2hfY21wLCBOVUxMLCAwKTsKLQloYXNobWFwX2VudHJ5X2luaXQoZW50LCBwYWNrX2VudHJ5X2hhc2gocCwgYmFzZV9vZmZzZXQpKTsKLQloYXNobWFwX2FkZCgmZGVsdGFfYmFzZV9jYWNoZSwgZW50KTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmVudC0+ZW50LCBwYWNrX2VudHJ5X2hhc2gocCwgYmFzZV9vZmZzZXQpKTsKKwloYXNobWFwX2FkZCgmZGVsdGFfYmFzZV9jYWNoZSwgJmVudC0+ZW50KTsKIH0KIAogaW50IHBhY2tlZF9vYmplY3RfaW5mbyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHBhY2tlZF9naXQgKnAsCkBAIC0xNTE4LDIwICsxNTU4LDE2IEBACiAJCX0KIAl9CiAKLQlpZiAob2ktPmRlbHRhX2Jhc2Vfc2hhMSkgeworCWlmIChvaS0+ZGVsdGFfYmFzZV9vaWQpIHsKIAkJaWYgKHR5cGUgPT0gT0JKX09GU19ERUxUQSB8fCB0eXBlID09IE9CSl9SRUZfREVMVEEpIHsKLQkJCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmJhc2U7Ci0KLQkJCWJhc2UgPSBnZXRfZGVsdGFfYmFzZV9zaGExKHAsICZ3X2N1cnMsIGN1cnBvcywKLQkJCQkJCSAgIHR5cGUsIG9ial9vZmZzZXQpOwotCQkJaWYgKCFiYXNlKSB7CisJCQlpZiAoZ2V0X2RlbHRhX2Jhc2Vfb2lkKHAsICZ3X2N1cnMsIGN1cnBvcywKKwkJCQkJICAgICAgIG9pLT5kZWx0YV9iYXNlX29pZCwKKwkJCQkJICAgICAgIHR5cGUsIG9ial9vZmZzZXQpIDwgMCkgewogCQkJCXR5cGUgPSBPQkpfQkFEOwogCQkJCWdvdG8gb3V0OwogCQkJfQotCi0JCQloYXNoY3B5KG9pLT5kZWx0YV9iYXNlX3NoYTEsIGJhc2UpOwogCQl9IGVsc2UKLQkJCWhhc2hjbHIob2ktPmRlbHRhX2Jhc2Vfc2hhMSk7CisJCQlvaWRjbHIob2ktPmRlbHRhX2Jhc2Vfb2lkKTsKIAl9CiAKIAlvaS0+d2hlbmNlID0gaW5fZGVsdGFfYmFzZV9jYWNoZShwLCBvYmpfb2Zmc2V0KSA/IE9JX0RCQ0FDSEVEIDoKQEAgLTE1NjIsNyArMTU5OCwxNSBAQAogCWRvIHsKIAkJaW4gPSB1c2VfcGFjayhwLCB3X2N1cnMsIGN1cnBvcywgJnN0cmVhbS5hdmFpbF9pbik7CiAJCXN0cmVhbS5uZXh0X2luID0gaW47CisJCS8qCisJCSAqIE5vdGU6IHdlIG11c3QgZW5zdXJlIHRoZSB3aW5kb3cgc2VjdGlvbiByZXR1cm5lZCBieQorCQkgKiB1c2VfcGFjaygpIHdpbGwgYmUgYXZhaWxhYmxlIHRocm91Z2hvdXQgZ2l0X2luZmxhdGUoKSdzCisJCSAqIHVubG9ja2VkIGV4ZWN1dGlvbi4gUGxlYXNlIHJlZmVyIHRvIHRoZSBjb21tZW50IGF0CisJCSAqIGdldF9zaXplX2Zyb21fZGVsdGEoKSB0byBzZWUgaG93IHRoaXMgaXMgZG9uZS4KKwkJICovCisJCW9ial9yZWFkX3VubG9jaygpOwogCQlzdCA9IGdpdF9pbmZsYXRlKCZzdHJlYW0sIFpfRklOSVNIKTsKKwkJb2JqX3JlYWRfbG9jaygpOwogCQlpZiAoIXN0cmVhbS5hdmFpbF9vdXQpCiAJCQlicmVhazsgLyogdGhlIHBheWxvYWQgaXMgbGFyZ2VyIHRoYW4gaXQgc2hvdWxkIGJlICovCiAJCWN1cnBvcyArPSBzdHJlYW0ubmV4dF9pbiAtIGluOwpAQCAtMTY0Nyw3ICsxNjkxLDcgQEAKIAkJCW9mZl90IGxlbiA9IHJldmlkeFsxXS5vZmZzZXQgLSBvYmpfb2Zmc2V0OwogCQkJaWYgKGNoZWNrX3BhY2tfY3JjKHAsICZ3X2N1cnMsIG9ial9vZmZzZXQsIGxlbiwgcmV2aWR4LT5ucikpIHsKIAkJCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKLQkJCQludGhfcGFja2VkX29iamVjdF9vaWQoJm9pZCwgcCwgcmV2aWR4LT5ucik7CisJCQkJbnRoX3BhY2tlZF9vYmplY3RfaWQoJm9pZCwgcCwgcmV2aWR4LT5ucik7CiAJCQkJZXJyb3IoImJhZCBwYWNrZWQgb2JqZWN0IENSQyBmb3IgJXMiLAogCQkJCSAgICAgIG9pZF90b19oZXgoJm9pZCkpOwogCQkJCW1hcmtfYmFkX3BhY2tlZF9vYmplY3QocCwgb2lkLmhhc2gpOwpAQCAtMTY3NSw4ICsxNzE5LDggQEAKIAkJICAgICYmIGRlbHRhX3N0YWNrID09IHNtYWxsX2RlbHRhX3N0YWNrKSB7CiAJCQlkZWx0YV9zdGFja19hbGxvYyA9IGFsbG9jX25yKGRlbHRhX3N0YWNrX25yKTsKIAkJCUFMTE9DX0FSUkFZKGRlbHRhX3N0YWNrLCBkZWx0YV9zdGFja19hbGxvYyk7Ci0JCQltZW1jcHkoZGVsdGFfc3RhY2ssIHNtYWxsX2RlbHRhX3N0YWNrLAotCQkJICAgICAgIHNpemVvZigqZGVsdGFfc3RhY2spKmRlbHRhX3N0YWNrX25yKTsKKwkJCUNPUFlfQVJSQVkoZGVsdGFfc3RhY2ssIHNtYWxsX2RlbHRhX3N0YWNrLAorCQkJCSAgIGRlbHRhX3N0YWNrX25yKTsKIAkJfSBlbHNlIHsKIAkJCUFMTE9DX0dST1coZGVsdGFfc3RhY2ssIGRlbHRhX3N0YWNrX25yKzEsIGRlbHRhX3N0YWNrX2FsbG9jKTsKIAkJfQpAQCAtMTczNiw3ICsxNzgwLDcgQEAKIAkJCXN0cnVjdCBvYmplY3RfaWQgYmFzZV9vaWQ7CiAJCQlyZXZpZHggPSBmaW5kX3BhY2tfcmV2aW5kZXgocCwgb2JqX29mZnNldCk7CiAJCQlpZiAocmV2aWR4KSB7Ci0JCQkJbnRoX3BhY2tlZF9vYmplY3Rfb2lkKCZiYXNlX29pZCwgcCwgcmV2aWR4LT5ucik7CisJCQkJbnRoX3BhY2tlZF9vYmplY3RfaWQoJmJhc2Vfb2lkLCBwLCByZXZpZHgtPm5yKTsKIAkJCQllcnJvcigiZmFpbGVkIHRvIHJlYWQgZGVsdGEgYmFzZSBvYmplY3QgJXMiCiAJCQkJICAgICAgIiBhdCBvZmZzZXQgJSJQUkl1TUFYIiBmcm9tICVzIiwKIAkJCQkgICAgICBvaWRfdG9faGV4KCZiYXNlX29pZCksICh1aW50bWF4X3Qpb2JqX29mZnNldCwKQEAgLTE4MjMsMzYgKzE4NjcsMjcgQEAKIAkJCSAgICBpbmRleF9sb29rdXAsIGluZGV4X2xvb2t1cF93aWR0aCwgcmVzdWx0KTsKIH0KIAotY29uc3QgdW5zaWduZWQgY2hhciAqbnRoX3BhY2tlZF9vYmplY3Rfc2hhMShzdHJ1Y3QgcGFja2VkX2dpdCAqcCwKLQkJCQkJICAgIHVpbnQzMl90IG4pCitpbnQgbnRoX3BhY2tlZF9vYmplY3RfaWQoc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJIHN0cnVjdCBwYWNrZWRfZ2l0ICpwLAorCQkJIHVpbnQzMl90IG4pCiB7CiAJY29uc3QgdW5zaWduZWQgY2hhciAqaW5kZXggPSBwLT5pbmRleF9kYXRhOwogCWNvbnN0IHVuc2lnbmVkIGludCBoYXNoc3ogPSB0aGVfaGFzaF9hbGdvLT5yYXdzejsKIAlpZiAoIWluZGV4KSB7CiAJCWlmIChvcGVuX3BhY2tfaW5kZXgocCkpCi0JCQlyZXR1cm4gTlVMTDsKKwkJCXJldHVybiAtMTsKIAkJaW5kZXggPSBwLT5pbmRleF9kYXRhOwogCX0KIAlpZiAobiA+PSBwLT5udW1fb2JqZWN0cykKLQkJcmV0dXJuIE5VTEw7CisJCXJldHVybiAtMTsKIAlpbmRleCArPSA0ICogMjU2OwogCWlmIChwLT5pbmRleF92ZXJzaW9uID09IDEpIHsKLQkJcmV0dXJuIGluZGV4ICsgKGhhc2hzeiArIDQpICogbiArIDQ7CisJCW9pZHJlYWQob2lkLCBpbmRleCArIChoYXNoc3ogKyA0KSAqIG4gKyA0KTsKIAl9IGVsc2UgewogCQlpbmRleCArPSA4OwotCQlyZXR1cm4gaW5kZXggKyBoYXNoc3ogKiBuOworCQlvaWRyZWFkKG9pZCwgaW5kZXggKyBoYXNoc3ogKiBuKTsKIAl9Ci19Ci0KLWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm50aF9wYWNrZWRfb2JqZWN0X29pZChzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCi0JCQkJCSAgICAgIHN0cnVjdCBwYWNrZWRfZ2l0ICpwLAotCQkJCQkgICAgICB1aW50MzJfdCBuKQotewotCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmhhc2ggPSBudGhfcGFja2VkX29iamVjdF9zaGExKHAsIG4pOwotCWlmICghaGFzaCkKLQkJcmV0dXJuIE5VTEw7Ci0JaGFzaGNweShvaWQtPmhhc2gsIGhhc2gpOwotCXJldHVybiBvaWQ7CisJcmV0dXJuIDA7CiB9CiAKIHZvaWQgY2hlY2tfcGFja19pbmRleF9wdHIoY29uc3Qgc3RydWN0IHBhY2tlZF9naXQgKnAsIGNvbnN0IHZvaWQgKnZwdHIpCkBAIC0xOTgyLDEzICsyMDE3LDEzIEBACiAJCXJldHVybiAwOwogCiAJZm9yIChtID0gci0+b2JqZWN0cy0+bXVsdGlfcGFja19pbmRleDsgbTsgbSA9IG0tPm5leHQpIHsKLQkJaWYgKGZpbGxfbWlkeF9lbnRyeShvaWQsIGUsIG0pKQorCQlpZiAoZmlsbF9taWR4X2VudHJ5KHIsIG9pZCwgZSwgbSkpCiAJCQlyZXR1cm4gMTsKIAl9CiAKIAlsaXN0X2Zvcl9lYWNoKHBvcywgJnItPm9iamVjdHMtPnBhY2tlZF9naXRfbXJ1KSB7CiAJCXN0cnVjdCBwYWNrZWRfZ2l0ICpwID0gbGlzdF9lbnRyeShwb3MsIHN0cnVjdCBwYWNrZWRfZ2l0LCBtcnUpOwotCQlpZiAoZmlsbF9wYWNrX2VudHJ5KG9pZCwgZSwgcCkpIHsKKwkJaWYgKCFwLT5tdWx0aV9wYWNrX2luZGV4ICYmIGZpbGxfcGFja19lbnRyeShvaWQsIGUsIHApKSB7CiAJCQlsaXN0X21vdmUoJnAtPm1ydSwgJnItPm9iamVjdHMtPnBhY2tlZF9naXRfbXJ1KTsKIAkJCXJldHVybiAxOwogCQl9CkBAIC0yMDE3LDggKzIwNTIsMTAgQEAKIAl1aW50MzJfdCBpOwogCWludCByID0gMDsKIAotCWlmIChmbGFncyAmIEZPUl9FQUNIX09CSkVDVF9QQUNLX09SREVSKQotCQlsb2FkX3BhY2tfcmV2aW5kZXgocCk7CisJaWYgKGZsYWdzICYgRk9SX0VBQ0hfT0JKRUNUX1BBQ0tfT1JERVIpIHsKKwkJaWYgKGxvYWRfcGFja19yZXZpbmRleChwKSkKKwkJCXJldHVybiAtMTsKKwl9CiAKIAlmb3IgKGkgPSAwOyBpIDwgcC0+bnVtX29iamVjdHM7IGkrKykgewogCQl1aW50MzJfdCBwb3M7CkBAIC0yMDI5LDcgKzIwNjYsNyBAQAogCQllbHNlCiAJCQlwb3MgPSBpOwogCi0JCWlmICghbnRoX3BhY2tlZF9vYmplY3Rfb2lkKCZvaWQsIHAsIHBvcykpCisJCWlmIChudGhfcGFja2VkX29iamVjdF9pZCgmb2lkLCBwLCBwb3MpIDwgMCkKIAkJCXJldHVybiBlcnJvcigidW5hYmxlIHRvIGdldCBzaGExIG9mIG9iamVjdCAldSBpbiAlcyIsCiAJCQkJICAgICBwb3MsIHAtPnBhY2tfbmFtZSk7CiAKQEAgLTIwOTIsNyArMjEyOSw3IEBACiAJCQkgKi8KIAkJCXJldHVybiAwOwogCQl3aGlsZSAodHJlZV9lbnRyeV9nZW50bHkoJmRlc2MsICZlbnRyeSkpCi0JCQlvaWRzZXRfaW5zZXJ0KHNldCwgZW50cnkub2lkKTsKKwkJCW9pZHNldF9pbnNlcnQoc2V0LCAmZW50cnkub2lkKTsKIAl9IGVsc2UgaWYgKG9iai0+dHlwZSA9PSBPQkpfQ09NTUlUKSB7CiAJCXN0cnVjdCBjb21taXQgKmNvbW1pdCA9IChzdHJ1Y3QgY29tbWl0ICopIG9iajsKIAkJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnRzID0gY29tbWl0LT5wYXJlbnRzOwpAQCAtMjEwMiw3ICsyMTM5LDcgQEAKIAkJCW9pZHNldF9pbnNlcnQoc2V0LCAmcGFyZW50cy0+aXRlbS0+b2JqZWN0Lm9pZCk7CiAJfSBlbHNlIGlmIChvYmotPnR5cGUgPT0gT0JKX1RBRykgewogCQlzdHJ1Y3QgdGFnICp0YWcgPSAoc3RydWN0IHRhZyAqKSBvYmo7Ci0JCW9pZHNldF9pbnNlcnQoc2V0LCAmdGFnLT50YWdnZWQtPm9pZCk7CisJCW9pZHNldF9pbnNlcnQoc2V0LCBnZXRfdGFnZ2VkX29pZCh0YWcpKTsKIAl9CiAJcmV0dXJuIDA7CiB9CkBAIC0yMTEzLDcgKzIxNTAsNyBAQAogCXN0YXRpYyBpbnQgcHJvbWlzb3Jfb2JqZWN0c19wcmVwYXJlZDsKIAogCWlmICghcHJvbWlzb3Jfb2JqZWN0c19wcmVwYXJlZCkgewotCQlpZiAocmVwb3NpdG9yeV9mb3JtYXRfcGFydGlhbF9jbG9uZSkgeworCQlpZiAoaGFzX3Byb21pc29yX3JlbW90ZSgpKSB7CiAJCQlmb3JfZWFjaF9wYWNrZWRfb2JqZWN0KGFkZF9wcm9taXNvcl9vYmplY3QsCiAJCQkJCSAgICAgICAmcHJvbWlzb3Jfb2JqZWN0cywKIAkJCQkJICAgICAgIEZPUl9FQUNIX09CSkVDVF9QUk9NSVNPUl9PTkxZKTsKZGlmZiAtLWdpdCBhL3BhY2tmaWxlLmggYi9wYWNrZmlsZS5oCmluZGV4IDZjNDAzNzYuLjI0MGFhNzMgMTAwNjQ0Ci0tLSBhL3BhY2tmaWxlLmgKKysrIGIvcGFja2ZpbGUuaApAQCAtMTUsMjMgKzE1LDI5IEBACiAgKgogICogRXhhbXBsZTogb2RiX3BhY2tfbmFtZShvdXQsIHNoYTEsICJpZHgiKSA9PiAiLmdpdC9vYmplY3RzL3BhY2svcGFjay0xMjM0Li5pZHgiCiAgKi8KLWV4dGVybiBjaGFyICpvZGJfcGFja19uYW1lKHN0cnVjdCBzdHJidWYgKmJ1ZiwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwgY29uc3QgY2hhciAqZXh0KTsKK2NoYXIgKm9kYl9wYWNrX25hbWUoc3RydWN0IHN0cmJ1ZiAqYnVmLCBjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExLCBjb25zdCBjaGFyICpleHQpOwogCiAvKgogICogUmV0dXJuIHRoZSBuYW1lIG9mIHRoZSAobG9jYWwpIHBhY2tmaWxlIHdpdGggdGhlIHNwZWNpZmllZCBzaGExIGluCiAgKiBpdHMgbmFtZS4gIFRoZSByZXR1cm4gdmFsdWUgaXMgYSBwb2ludGVyIHRvIG1lbW9yeSB0aGF0IGlzCiAgKiBvdmVyd3JpdHRlbiBlYWNoIHRpbWUgdGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQuCiAgKi8KLWV4dGVybiBjaGFyICpzaGExX3BhY2tfbmFtZShjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKTsKK2NoYXIgKnNoYTFfcGFja19uYW1lKGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpOwogCiAvKgogICogUmV0dXJuIHRoZSBuYW1lIG9mIHRoZSAobG9jYWwpIHBhY2sgaW5kZXggZmlsZSB3aXRoIHRoZSBzcGVjaWZpZWQKICAqIHNoYTEgaW4gaXRzIG5hbWUuICBUaGUgcmV0dXJuIHZhbHVlIGlzIGEgcG9pbnRlciB0byBtZW1vcnkgdGhhdCBpcwogICogb3ZlcndyaXR0ZW4gZWFjaCB0aW1lIHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkLgogICovCi1leHRlcm4gY2hhciAqc2hhMV9wYWNrX2luZGV4X25hbWUoY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSk7CitjaGFyICpzaGExX3BhY2tfaW5kZXhfbmFtZShjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKTsKIAotZXh0ZXJuIHN0cnVjdCBwYWNrZWRfZ2l0ICpwYXJzZV9wYWNrX2luZGV4KHVuc2lnbmVkIGNoYXIgKnNoYTEsIGNvbnN0IGNoYXIgKmlkeF9wYXRoKTsKKy8qCisgKiBSZXR1cm4gdGhlIGJhc2VuYW1lIG9mIHRoZSBwYWNrZmlsZSwgb21pdHRpbmcgYW55IGNvbnRhaW5pbmcgZGlyZWN0b3J5CisgKiAoZS5nLiwgInBhY2stMTIzNGFiY2RbLi4uXS5wYWNrIikuCisgKi8KK2NvbnN0IGNoYXIgKnBhY2tfYmFzZW5hbWUoc3RydWN0IHBhY2tlZF9naXQgKnApOworCitzdHJ1Y3QgcGFja2VkX2dpdCAqcGFyc2VfcGFja19pbmRleCh1bnNpZ25lZCBjaGFyICpzaGExLCBjb25zdCBjaGFyICppZHhfcGF0aCk7CiAKIHR5cGVkZWYgdm9pZCBlYWNoX2ZpbGVfaW5fcGFja19kaXJfZm4oY29uc3QgY2hhciAqZnVsbF9wYXRoLCBzaXplX3QgZnVsbF9wYXRoX2xlbiwKIAkJCQkgICAgICBjb25zdCBjaGFyICpmaWxlX3BhY2gsIHZvaWQgKmRhdGEpOwpAQCAtNDUsOCArNTEsOCBAQAogI2RlZmluZSBQQUNLRElSX0ZJTEVfR0FSQkFHRSA0CiBleHRlcm4gdm9pZCAoKnJlcG9ydF9nYXJiYWdlKSh1bnNpZ25lZCBzZWVuX2JpdHMsIGNvbnN0IGNoYXIgKnBhdGgpOwogCi1leHRlcm4gdm9pZCByZXByZXBhcmVfcGFja2VkX2dpdChzdHJ1Y3QgcmVwb3NpdG9yeSAqcik7Ci1leHRlcm4gdm9pZCBpbnN0YWxsX3BhY2tlZF9naXQoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBwYWNrZWRfZ2l0ICpwYWNrKTsKK3ZvaWQgcmVwcmVwYXJlX3BhY2tlZF9naXQoc3RydWN0IHJlcG9zaXRvcnkgKnIpOwordm9pZCBpbnN0YWxsX3BhY2tlZF9naXQoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBwYWNrZWRfZ2l0ICpwYWNrKTsKIAogc3RydWN0IHBhY2tlZF9naXQgKmdldF9wYWNrZWRfZ2l0KHN0cnVjdCByZXBvc2l0b3J5ICpyKTsKIHN0cnVjdCBsaXN0X2hlYWQgKmdldF9wYWNrZWRfZ2l0X21ydShzdHJ1Y3QgcmVwb3NpdG9yeSAqcik7CkBAIC01NywzNCArNjMsNDQgQEAKICAqIEdpdmUgYSByb3VnaCBjb3VudCBvZiBvYmplY3RzIGluIHRoZSByZXBvc2l0b3J5LiBUaGlzIHNhY3JpZmljZXMgYWNjdXJhY3kKICAqIGZvciBzcGVlZC4KICAqLwotdW5zaWduZWQgbG9uZyBhcHByb3hpbWF0ZV9vYmplY3RfY291bnQodm9pZCk7Cit1bnNpZ25lZCBsb25nIHJlcG9fYXBwcm94aW1hdGVfb2JqZWN0X2NvdW50KHN0cnVjdCByZXBvc2l0b3J5ICpyKTsKKyNkZWZpbmUgYXBwcm94aW1hdGVfb2JqZWN0X2NvdW50KCkgcmVwb19hcHByb3hpbWF0ZV9vYmplY3RfY291bnQodGhlX3JlcG9zaXRvcnkpCiAKLWV4dGVybiBzdHJ1Y3QgcGFja2VkX2dpdCAqZmluZF9zaGExX3BhY2soY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwKLQkJCQkJIHN0cnVjdCBwYWNrZWRfZ2l0ICpwYWNrcyk7CitzdHJ1Y3QgcGFja2VkX2dpdCAqZmluZF9zaGExX3BhY2soY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwKKwkJCQkgIHN0cnVjdCBwYWNrZWRfZ2l0ICpwYWNrcyk7CiAKLWV4dGVybiB2b2lkIHBhY2tfcmVwb3J0KHZvaWQpOwordm9pZCBwYWNrX3JlcG9ydCh2b2lkKTsKIAogLyoKICAqIG1tYXAgdGhlIGluZGV4IGZpbGUgZm9yIHRoZSBzcGVjaWZpZWQgcGFja2ZpbGUgKGlmIGl0IGlzIG5vdAogICogYWxyZWFkeSBtbWFwcGVkKS4gIFJldHVybiAwIG9uIHN1Y2Nlc3MuCiAgKi8KLWV4dGVybiBpbnQgb3Blbl9wYWNrX2luZGV4KHN0cnVjdCBwYWNrZWRfZ2l0ICopOworaW50IG9wZW5fcGFja19pbmRleChzdHJ1Y3QgcGFja2VkX2dpdCAqKTsKIAogLyoKICAqIG11bm1hcCB0aGUgaW5kZXggZmlsZSBmb3IgdGhlIHNwZWNpZmllZCBwYWNrZmlsZSAoaWYgaXQgaXMKICAqIGN1cnJlbnRseSBtbWFwcGVkKS4KICAqLwotZXh0ZXJuIHZvaWQgY2xvc2VfcGFja19pbmRleChzdHJ1Y3QgcGFja2VkX2dpdCAqKTsKK3ZvaWQgY2xvc2VfcGFja19pbmRleChzdHJ1Y3QgcGFja2VkX2dpdCAqKTsKIAotZXh0ZXJuIHVpbnQzMl90IGdldF9wYWNrX2Zhbm91dChzdHJ1Y3QgcGFja2VkX2dpdCAqcCwgdWludDMyX3QgdmFsdWUpOworaW50IGNsb3NlX3BhY2tfZmQoc3RydWN0IHBhY2tlZF9naXQgKnApOwogCi1leHRlcm4gdW5zaWduZWQgY2hhciAqdXNlX3BhY2soc3RydWN0IHBhY2tlZF9naXQgKiwgc3RydWN0IHBhY2tfd2luZG93ICoqLCBvZmZfdCwgdW5zaWduZWQgbG9uZyAqKTsKLWV4dGVybiB2b2lkIGNsb3NlX3BhY2tfd2luZG93cyhzdHJ1Y3QgcGFja2VkX2dpdCAqKTsKLWV4dGVybiB2b2lkIGNsb3NlX3BhY2soc3RydWN0IHBhY2tlZF9naXQgKik7Ci1leHRlcm4gdm9pZCBjbG9zZV9hbGxfcGFja3Moc3RydWN0IHJhd19vYmplY3Rfc3RvcmUgKm8pOwotZXh0ZXJuIHZvaWQgdW51c2VfcGFjayhzdHJ1Y3QgcGFja193aW5kb3cgKiopOwotZXh0ZXJuIHZvaWQgY2xlYXJfZGVsdGFfYmFzZV9jYWNoZSh2b2lkKTsKLWV4dGVybiBzdHJ1Y3QgcGFja2VkX2dpdCAqYWRkX3BhY2tlZF9naXQoY29uc3QgY2hhciAqcGF0aCwgc2l6ZV90IHBhdGhfbGVuLCBpbnQgbG9jYWwpOwordWludDMyX3QgZ2V0X3BhY2tfZmFub3V0KHN0cnVjdCBwYWNrZWRfZ2l0ICpwLCB1aW50MzJfdCB2YWx1ZSk7CisKK3Vuc2lnbmVkIGNoYXIgKnVzZV9wYWNrKHN0cnVjdCBwYWNrZWRfZ2l0ICosIHN0cnVjdCBwYWNrX3dpbmRvdyAqKiwgb2ZmX3QsIHVuc2lnbmVkIGxvbmcgKik7Cit2b2lkIGNsb3NlX3BhY2tfd2luZG93cyhzdHJ1Y3QgcGFja2VkX2dpdCAqKTsKK3ZvaWQgY2xvc2VfcGFjayhzdHJ1Y3QgcGFja2VkX2dpdCAqKTsKK3ZvaWQgY2xvc2Vfb2JqZWN0X3N0b3JlKHN0cnVjdCByYXdfb2JqZWN0X3N0b3JlICpvKTsKK3ZvaWQgdW51c2VfcGFjayhzdHJ1Y3QgcGFja193aW5kb3cgKiopOwordm9pZCBjbGVhcl9kZWx0YV9iYXNlX2NhY2hlKHZvaWQpOworc3RydWN0IHBhY2tlZF9naXQgKmFkZF9wYWNrZWRfZ2l0KGNvbnN0IGNoYXIgKnBhdGgsIHNpemVfdCBwYXRoX2xlbiwgaW50IGxvY2FsKTsKKworLyoKKyAqIFVubGluayB0aGUgLnBhY2sgYW5kIGFzc29jaWF0ZWQgZXh0ZW5zaW9uIGZpbGVzLgorICogRG9lcyBub3QgdW5saW5rIGlmICdmb3JjZV9kZWxldGUnIGlzIGZhbHNlIGFuZCB0aGUgcGFjay1maWxlIGlzCisgKiBtYXJrZWQgYXMgIi5rZWVwIi4KKyAqLwordm9pZCB1bmxpbmtfcGFja19wYXRoKGNvbnN0IGNoYXIgKnBhY2tfbmFtZSwgaW50IGZvcmNlX2RlbGV0ZSk7CiAKIC8qCiAgKiBNYWtlIHN1cmUgdGhhdCBhIHBvaW50ZXIgYWNjZXNzIGludG8gYW4gbW1hcCdkIGluZGV4IGZpbGUgaXMgd2l0aGluIGJvdW5kcywKQEAgLTk0LDcgKzExMCw3IEBACiAgKiAobGlrZSB0aGUgNjQtYml0IGV4dGVuZGVkIG9mZnNldCB0YWJsZSksIGFzIHdlIGNvbXBhcmUgdGhlIHNpemUgdG8gdGhlCiAgKiBmaXhlZC1sZW5ndGggcGFydHMgd2hlbiB3ZSBvcGVuIHRoZSBmaWxlLgogICovCi1leHRlcm4gdm9pZCBjaGVja19wYWNrX2luZGV4X3B0cihjb25zdCBzdHJ1Y3QgcGFja2VkX2dpdCAqcCwgY29uc3Qgdm9pZCAqcHRyKTsKK3ZvaWQgY2hlY2tfcGFja19pbmRleF9wdHIoY29uc3Qgc3RydWN0IHBhY2tlZF9naXQgKnAsIGNvbnN0IHZvaWQgKnB0cik7CiAKIC8qCiAgKiBQZXJmb3JtIGJpbmFyeSBzZWFyY2ggb24gYSBwYWNrLWluZGV4IGZvciBhIGdpdmVuIG9pZC4gUGFja2ZpbGUgaXMgZXhwZWN0ZWQgdG8KQEAgLTEwNSw2NCArMTIxLDYwIEBACiBpbnQgYnNlYXJjaF9wYWNrKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY29uc3Qgc3RydWN0IHBhY2tlZF9naXQgKnAsIHVpbnQzMl90ICpyZXN1bHQpOwogCiAvKgotICogUmV0dXJuIHRoZSBTSEEtMSBvZiB0aGUgbnRoIG9iamVjdCB3aXRoaW4gdGhlIHNwZWNpZmllZCBwYWNrZmlsZS4KLSAqIE9wZW4gdGhlIGluZGV4IGlmIGl0IGlzIG5vdCBhbHJlYWR5IG9wZW4uICBUaGUgcmV0dXJuIHZhbHVlIHBvaW50cwotICogYXQgdGhlIFNIQS0xIHdpdGhpbiB0aGUgbW1hcHBlZCBpbmRleC4gIFJldHVybiBOVUxMIGlmIHRoZXJlIGlzIGFuCi0gKiBlcnJvci4KKyAqIFdyaXRlIHRoZSBvaWQgb2YgdGhlIG50aCBvYmplY3Qgd2l0aGluIHRoZSBzcGVjaWZpZWQgcGFja2ZpbGUgaW50byB0aGUgZmlyc3QKKyAqIHBhcmFtZXRlci4gT3BlbiB0aGUgaW5kZXggaWYgaXQgaXMgbm90IGFscmVhZHkgb3Blbi4gIFJldHVybnMgMCBvbiBzdWNjZXNzLAorICogbmVnYXRpdmUgb3RoZXJ3aXNlLgogICovCi1leHRlcm4gY29uc3QgdW5zaWduZWQgY2hhciAqbnRoX3BhY2tlZF9vYmplY3Rfc2hhMShzdHJ1Y3QgcGFja2VkX2dpdCAqLCB1aW50MzJfdCBuKTsKLS8qCi0gKiBMaWtlIG50aF9wYWNrZWRfb2JqZWN0X3NoYTEsIGJ1dCB3cml0ZSB0aGUgZGF0YSBpbnRvIHRoZSBvYmplY3Qgc3BlY2lmaWVkIGJ5Ci0gKiB0aGUgdGhlIGZpcnN0IGFyZ3VtZW50LiAgUmV0dXJucyB0aGUgZmlyc3QgYXJndW1lbnQgb24gc3VjY2VzcywgYW5kIE5VTEwgb24KLSAqIGVycm9yLgotICovCi1leHRlcm4gY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqbnRoX3BhY2tlZF9vYmplY3Rfb2lkKHN0cnVjdCBvYmplY3RfaWQgKiwgc3RydWN0IHBhY2tlZF9naXQgKiwgdWludDMyX3Qgbik7CitpbnQgbnRoX3BhY2tlZF9vYmplY3RfaWQoc3RydWN0IG9iamVjdF9pZCAqLCBzdHJ1Y3QgcGFja2VkX2dpdCAqLCB1aW50MzJfdCBuKTsKIAogLyoKICAqIFJldHVybiB0aGUgb2Zmc2V0IG9mIHRoZSBudGggb2JqZWN0IHdpdGhpbiB0aGUgc3BlY2lmaWVkIHBhY2tmaWxlLgogICogVGhlIGluZGV4IG11c3QgYWxyZWFkeSBiZSBvcGVuZWQuCiAgKi8KLWV4dGVybiBvZmZfdCBudGhfcGFja2VkX29iamVjdF9vZmZzZXQoY29uc3Qgc3RydWN0IHBhY2tlZF9naXQgKiwgdWludDMyX3Qgbik7CitvZmZfdCBudGhfcGFja2VkX29iamVjdF9vZmZzZXQoY29uc3Qgc3RydWN0IHBhY2tlZF9naXQgKiwgdWludDMyX3Qgbik7CiAKIC8qCiAgKiBJZiB0aGUgb2JqZWN0IG5hbWVkIHNoYTEgaXMgcHJlc2VudCBpbiB0aGUgc3BlY2lmaWVkIHBhY2tmaWxlLAogICogcmV0dXJuIGl0cyBvZmZzZXQgd2l0aGluIHRoZSBwYWNrZmlsZTsgb3RoZXJ3aXNlLCByZXR1cm4gMC4KICAqLwotZXh0ZXJuIG9mZl90IGZpbmRfcGFja19lbnRyeV9vbmUoY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwgc3RydWN0IHBhY2tlZF9naXQgKik7CitvZmZfdCBmaW5kX3BhY2tfZW50cnlfb25lKGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsIHN0cnVjdCBwYWNrZWRfZ2l0ICopOwogCi1leHRlcm4gaW50IGlzX3BhY2tfdmFsaWQoc3RydWN0IHBhY2tlZF9naXQgKik7Ci1leHRlcm4gdm9pZCAqdW5wYWNrX2VudHJ5KHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgcGFja2VkX2dpdCAqLCBvZmZfdCwgZW51bSBvYmplY3RfdHlwZSAqLCB1bnNpZ25lZCBsb25nICopOwotZXh0ZXJuIHVuc2lnbmVkIGxvbmcgdW5wYWNrX29iamVjdF9oZWFkZXJfYnVmZmVyKGNvbnN0IHVuc2lnbmVkIGNoYXIgKmJ1ZiwgdW5zaWduZWQgbG9uZyBsZW4sIGVudW0gb2JqZWN0X3R5cGUgKnR5cGUsIHVuc2lnbmVkIGxvbmcgKnNpemVwKTsKLWV4dGVybiB1bnNpZ25lZCBsb25nIGdldF9zaXplX2Zyb21fZGVsdGEoc3RydWN0IHBhY2tlZF9naXQgKiwgc3RydWN0IHBhY2tfd2luZG93ICoqLCBvZmZfdCk7Ci1leHRlcm4gaW50IHVucGFja19vYmplY3RfaGVhZGVyKHN0cnVjdCBwYWNrZWRfZ2l0ICosIHN0cnVjdCBwYWNrX3dpbmRvdyAqKiwgb2ZmX3QgKiwgdW5zaWduZWQgbG9uZyAqKTsKK2ludCBpc19wYWNrX3ZhbGlkKHN0cnVjdCBwYWNrZWRfZ2l0ICopOwordm9pZCAqdW5wYWNrX2VudHJ5KHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgcGFja2VkX2dpdCAqLCBvZmZfdCwgZW51bSBvYmplY3RfdHlwZSAqLCB1bnNpZ25lZCBsb25nICopOwordW5zaWduZWQgbG9uZyB1bnBhY2tfb2JqZWN0X2hlYWRlcl9idWZmZXIoY29uc3QgdW5zaWduZWQgY2hhciAqYnVmLCB1bnNpZ25lZCBsb25nIGxlbiwgZW51bSBvYmplY3RfdHlwZSAqdHlwZSwgdW5zaWduZWQgbG9uZyAqc2l6ZXApOwordW5zaWduZWQgbG9uZyBnZXRfc2l6ZV9mcm9tX2RlbHRhKHN0cnVjdCBwYWNrZWRfZ2l0ICosIHN0cnVjdCBwYWNrX3dpbmRvdyAqKiwgb2ZmX3QpOworaW50IHVucGFja19vYmplY3RfaGVhZGVyKHN0cnVjdCBwYWNrZWRfZ2l0ICosIHN0cnVjdCBwYWNrX3dpbmRvdyAqKiwgb2ZmX3QgKiwgdW5zaWduZWQgbG9uZyAqKTsKK29mZl90IGdldF9kZWx0YV9iYXNlKHN0cnVjdCBwYWNrZWRfZ2l0ICpwLCBzdHJ1Y3QgcGFja193aW5kb3cgKip3X2N1cnMsCisJCSAgICAgb2ZmX3QgKmN1cnBvcywgZW51bSBvYmplY3RfdHlwZSB0eXBlLAorCQkgICAgIG9mZl90IGRlbHRhX29ial9vZmZzZXQpOwogCi1leHRlcm4gdm9pZCByZWxlYXNlX3BhY2tfbWVtb3J5KHNpemVfdCk7Cit2b2lkIHJlbGVhc2VfcGFja19tZW1vcnkoc2l6ZV90KTsKIAogLyogZ2xvYmFsIGZsYWcgdG8gZW5hYmxlIGV4dHJhIGNoZWNrcyB3aGVuIGFjY2Vzc2luZyBwYWNrZWQgb2JqZWN0cyAqLwogZXh0ZXJuIGludCBkb19jaGVja19wYWNrZWRfb2JqZWN0X2NyYzsKIAotZXh0ZXJuIGludCBwYWNrZWRfb2JqZWN0X2luZm8oc3RydWN0IHJlcG9zaXRvcnkgKnIsCi0JCQkgICAgICBzdHJ1Y3QgcGFja2VkX2dpdCAqcGFjaywKLQkJCSAgICAgIG9mZl90IG9mZnNldCwgc3RydWN0IG9iamVjdF9pbmZvICopOworaW50IHBhY2tlZF9vYmplY3RfaW5mbyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJICAgICAgIHN0cnVjdCBwYWNrZWRfZ2l0ICpwYWNrLAorCQkgICAgICAgb2ZmX3Qgb2Zmc2V0LCBzdHJ1Y3Qgb2JqZWN0X2luZm8gKik7CiAKLWV4dGVybiB2b2lkIG1hcmtfYmFkX3BhY2tlZF9vYmplY3Qoc3RydWN0IHBhY2tlZF9naXQgKnAsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpOwotZXh0ZXJuIGNvbnN0IHN0cnVjdCBwYWNrZWRfZ2l0ICpoYXNfcGFja2VkX2FuZF9iYWQoY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSk7Cit2b2lkIG1hcmtfYmFkX3BhY2tlZF9vYmplY3Qoc3RydWN0IHBhY2tlZF9naXQgKnAsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpOworY29uc3Qgc3RydWN0IHBhY2tlZF9naXQgKmhhc19wYWNrZWRfYW5kX2JhZChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSk7CiAKIC8qCiAgKiBJZmYgYSBwYWNrIGZpbGUgaW4gdGhlIGdpdmVuIHJlcG9zaXRvcnkgY29udGFpbnMgdGhlIG9iamVjdCBuYW1lZCBieSBzaGExLAogICogcmV0dXJuIHRydWUgYW5kIHN0b3JlIGl0cyBsb2NhdGlvbiB0byBlLgogICovCi1leHRlcm4gaW50IGZpbmRfcGFja19lbnRyeShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBzdHJ1Y3QgcGFja19lbnRyeSAqZSk7CitpbnQgZmluZF9wYWNrX2VudHJ5KHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHN0cnVjdCBwYWNrX2VudHJ5ICplKTsKIAotZXh0ZXJuIGludCBoYXNfb2JqZWN0X3BhY2soY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKK2ludCBoYXNfb2JqZWN0X3BhY2soY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKIAotZXh0ZXJuIGludCBoYXNfcGFja19pbmRleChjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKTsKK2ludCBoYXNfcGFja19pbmRleChjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKTsKIAogLyoKICAqIFJldHVybiAxIGlmIGFuIG9iamVjdCBpbiBhIHByb21pc29yIHBhY2tmaWxlIGlzIG9yIHJlZmVycyB0byB0aGUgZ2l2ZW4KICAqIG9iamVjdCwgMCBvdGhlcndpc2UuCiAgKi8KLWV4dGVybiBpbnQgaXNfcHJvbWlzb3Jfb2JqZWN0KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CitpbnQgaXNfcHJvbWlzb3Jfb2JqZWN0KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CiAKIC8qCiAgKiBFeHBvc2UgYSBmdW5jdGlvbiBmb3IgZnV6eiB0ZXN0aW5nLgpAQCAtMTc0LDcgKzE4Niw3IEBACiAgKiBoYXZlIGEgY29udmVuaWVudCBlbnRyeS1wb2ludCBmb3IgZnV6eiB0ZXN0aW5nLiBGb3IgcmVhbCB1c2VzLCB5b3Ugc2hvdWxkCiAgKiBwcm9iYWJseSB1c2Ugb3Blbl9wYWNrX2luZGV4KCkgb3IgcGFyc2VfcGFja19pbmRleCgpIGluc3RlYWQuCiAgKi8KLWV4dGVybiBpbnQgbG9hZF9pZHgoY29uc3QgY2hhciAqcGF0aCwgY29uc3QgdW5zaWduZWQgaW50IGhhc2hzeiwgdm9pZCAqaWR4X21hcCwKLQkJICAgIHNpemVfdCBpZHhfc2l6ZSwgc3RydWN0IHBhY2tlZF9naXQgKnApOworaW50IGxvYWRfaWR4KGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IHVuc2lnbmVkIGludCBoYXNoc3osIHZvaWQgKmlkeF9tYXAsCisJICAgICBzaXplX3QgaWR4X3NpemUsIHN0cnVjdCBwYWNrZWRfZ2l0ICpwKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9wYWdlci5jIGIvcGFnZXIuYwppbmRleCBhNzY4Nzk3Li40MTQ0NmQ0IDEwMDY0NAotLS0gYS9wYWdlci5jCisrKyBiL3BhZ2VyLmMKQEAgLTEwMCw2ICsxMDAsNyBAQAogCWFyZ3ZfYXJyYXlfcHVzaCgmcGFnZXJfcHJvY2Vzcy0+YXJncywgcGFnZXIpOwogCXBhZ2VyX3Byb2Nlc3MtPnVzZV9zaGVsbCA9IDE7CiAJc2V0dXBfcGFnZXJfZW52KCZwYWdlcl9wcm9jZXNzLT5lbnZfYXJyYXkpOworCXBhZ2VyX3Byb2Nlc3MtPnRyYWNlMl9jaGlsZF9jbGFzcyA9ICJwYWdlciI7CiB9CiAKIHZvaWQgc2V0dXBfcGFnZXIodm9pZCkKQEAgLTE3Nyw2ICsxNzgsMjYgQEAKIH0KIAogLyoKKyAqIENsZWFyIHRoZSBlbnRpcmUgbGluZSwgbGVhdmUgY3Vyc29yIGluIGZpcnN0IGNvbHVtbi4KKyAqLwordm9pZCB0ZXJtX2NsZWFyX2xpbmUodm9pZCkKK3sKKwlpZiAoaXNfdGVybWluYWxfZHVtYigpKQorCQkvKgorCQkgKiBGYWxsIGJhY2sgdG8gcHJpbnQgYSB0ZXJtaW5hbCB3aWR0aCB3b3J0aCBvZiBzcGFjZQorCQkgKiBjaGFyYWN0ZXJzIChob3BpbmcgdGhhdCB0aGUgdGVybWluYWwgaXMgc3RpbGwgYXMgd2lkZQorCQkgKiBhcyBpdCB3YXMgdXBvbiB0aGUgZmlyc3QgY2FsbCB0byB0ZXJtX2NvbHVtbnMoKSkuCisJCSAqLworCQlmcHJpbnRmKHN0ZGVyciwgIlxyJSpzXHIiLCB0ZXJtX2NvbHVtbnMoKSwgIiIpOworCWVsc2UKKwkJLyoKKwkJICogT24gbm9uLWR1bWIgdGVybWluYWxzIHVzZSBhbiBlc2NhcGUgc2VxdWVuY2UgdG8gY2xlYXIKKwkJICogdGhlIHdob2xlIGxpbmUsIG5vIG1hdHRlciBob3cgd2lkZSB0aGUgdGVybWluYWwuCisJCSAqLworCQlmcHV0cygiXHJcMDMzW0siLCBzdGRlcnIpOworfQorCisvKgogICogSG93IG1hbnkgY29sdW1ucyBkbyB3ZSBuZWVkIHRvIHNob3cgdGhpcyBudW1iZXIgaW4gZGVjaW1hbD8KICAqLwogaW50IGRlY2ltYWxfd2lkdGgodWludG1heF90IG51bWJlcikKZGlmZiAtLWdpdCBhL3BhcnNlLW9wdGlvbnMtY2IuYyBiL3BhcnNlLW9wdGlvbnMtY2IuYwppbmRleCA4YzllZGNlLi5hMjhiNTViIDEwMDY0NAotLS0gYS9wYXJzZS1vcHRpb25zLWNiLmMKKysrIGIvcGFyc2Utb3B0aW9ucy1jYi5jCkBAIC0xNiwxMyArMTYsMTcgQEAKIAlpZiAoIWFyZykgewogCQl2ID0gdW5zZXQgPyAwIDogREVGQVVMVF9BQkJSRVY7CiAJfSBlbHNlIHsKKwkJaWYgKCEqYXJnKQorCQkJcmV0dXJuIGVycm9yKF8oIm9wdGlvbiBgJXMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiKSwKKwkJCQkgICAgIG9wdC0+bG9uZ19uYW1lKTsKIAkJdiA9IHN0cnRvbChhcmcsIChjaGFyICoqKSZhcmcsIDEwKTsKIAkJaWYgKCphcmcpCi0JCQlyZXR1cm4gb3B0ZXJyb3Iob3B0LCAiZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIsIDApOworCQkJcmV0dXJuIGVycm9yKF8oIm9wdGlvbiBgJXMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiKSwKKwkJCQkgICAgIG9wdC0+bG9uZ19uYW1lKTsKIAkJaWYgKHYgJiYgdiA8IE1JTklNVU1fQUJCUkVWKQogCQkJdiA9IE1JTklNVU1fQUJCUkVWOwotCQllbHNlIGlmICh2ID4gNDApCi0JCQl2ID0gNDA7CisJCWVsc2UgaWYgKHYgPiB0aGVfaGFzaF9hbGdvLT5oZXhzeikKKwkJCXYgPSB0aGVfaGFzaF9hbGdvLT5oZXhzejsKIAl9CiAJKihpbnQgKikob3B0LT52YWx1ZSkgPSB2OwogCXJldHVybiAwOwpAQCAtNDcsOCArNTEsOCBAQAogCQlhcmcgPSB1bnNldCA/ICJuZXZlciIgOiAoY29uc3QgY2hhciAqKW9wdC0+ZGVmdmFsOwogCXZhbHVlID0gZ2l0X2NvbmZpZ19jb2xvcmJvb2woTlVMTCwgYXJnKTsKIAlpZiAodmFsdWUgPCAwKQotCQlyZXR1cm4gb3B0ZXJyb3Iob3B0LAotCQkJImV4cGVjdHMgXCJhbHdheXNcIiwgXCJhdXRvXCIsIG9yIFwibmV2ZXJcIiIsIDApOworCQlyZXR1cm4gZXJyb3IoXygib3B0aW9uIGAlcycgZXhwZWN0cyBcImFsd2F5c1wiLCBcImF1dG9cIiwgb3IgXCJuZXZlclwiIiksCisJCQkgICAgIG9wdC0+bG9uZ19uYW1lKTsKIAkqKGludCAqKW9wdC0+dmFsdWUgPSB2YWx1ZTsKIAlyZXR1cm4gMDsKIH0KQEAgLTk1LDYgKzk5LDIzIEBACiAJcmV0dXJuIDA7CiB9CiAKK2ludCBwYXJzZV9vcHRfY29tbWl0KGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IG9iamVjdF9pZCBvaWQ7CisJc3RydWN0IGNvbW1pdCAqY29tbWl0OworCXN0cnVjdCBjb21taXQgKip0YXJnZXQgPSBvcHQtPnZhbHVlOworCisJaWYgKCFhcmcpCisJCXJldHVybiAtMTsKKwlpZiAoZ2V0X29pZChhcmcsICZvaWQpKQorCQlyZXR1cm4gZXJyb3IoIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAlcyIsIGFyZyk7CisJY29tbWl0ID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2UodGhlX3JlcG9zaXRvcnksICZvaWQpOworCWlmICghY29tbWl0KQorCQlyZXR1cm4gZXJyb3IoIm5vIHN1Y2ggY29tbWl0ICVzIiwgYXJnKTsKKwkqdGFyZ2V0ID0gY29tbWl0OworCXJldHVybiAwOworfQorCiBpbnQgcGFyc2Vfb3B0X29iamVjdF9uYW1lKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCiB7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CkBAIC0xMTEsNiArMTMyLDIzIEBACiAJcmV0dXJuIDA7CiB9CiAKK2ludCBwYXJzZV9vcHRfb2JqZWN0X2lkKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCit7CisJc3RydWN0IG9iamVjdF9pZCBvaWQ7CisJc3RydWN0IG9iamVjdF9pZCAqdGFyZ2V0ID0gb3B0LT52YWx1ZTsKKworCWlmICh1bnNldCkgeworCQkqdGFyZ2V0ID0gbnVsbF9vaWQ7CisJCXJldHVybiAwOworCX0KKwlpZiAoIWFyZykKKwkJcmV0dXJuIC0xOworCWlmIChnZXRfb2lkKGFyZywgJm9pZCkpCisJCXJldHVybiBlcnJvcihfKCJtYWxmb3JtZWQgb2JqZWN0IG5hbWUgJyVzJyIpLCBhcmcpOworCSp0YXJnZXQgPSBvaWQ7CisJcmV0dXJuIDA7Cit9CisKIGludCBwYXJzZV9vcHRfdGVydGlhcnkoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LCBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCkKIHsKIAlpbnQgKnRhcmdldCA9IG9wdC0+dmFsdWU7CkBAIC0xMjEsMjIgKzE1OSwzMiBAQAogCXJldHVybiAwOwogfQogCi1zdHJ1Y3Qgb3B0aW9uICpwYXJzZV9vcHRpb25zX2NvbmNhdChzdHJ1Y3Qgb3B0aW9uICphLCBzdHJ1Y3Qgb3B0aW9uICpiKQorc3RhdGljIHNpemVfdCBwYXJzZV9vcHRpb25zX2NvdW50KGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCkKK3sKKwlzaXplX3QgbiA9IDA7CisKKwlmb3IgKDsgb3B0ICYmIG9wdC0+dHlwZSAhPSBPUFRJT05fRU5EOyBvcHQrKykKKwkJbisrOworCXJldHVybiBuOworfQorCitzdHJ1Y3Qgb3B0aW9uICpwYXJzZV9vcHRpb25zX2R1cChjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvKQoreworCXN0cnVjdCBvcHRpb24gbm9fb3B0aW9uc1tdID0geyBPUFRfRU5EKCkgfTsKKworCXJldHVybiBwYXJzZV9vcHRpb25zX2NvbmNhdChvLCBub19vcHRpb25zKTsKK30KKworc3RydWN0IG9wdGlvbiAqcGFyc2Vfb3B0aW9uc19jb25jYXQoY29uc3Qgc3RydWN0IG9wdGlvbiAqYSwKKwkJCQkgICAgY29uc3Qgc3RydWN0IG9wdGlvbiAqYikKIHsKIAlzdHJ1Y3Qgb3B0aW9uICpyZXQ7Ci0Jc2l6ZV90IGksIGFfbGVuID0gMCwgYl9sZW4gPSAwOwotCi0JZm9yIChpID0gMDsgYVtpXS50eXBlICE9IE9QVElPTl9FTkQ7IGkrKykKLQkJYV9sZW4rKzsKLQlmb3IgKGkgPSAwOyBiW2ldLnR5cGUgIT0gT1BUSU9OX0VORDsgaSsrKQotCQliX2xlbisrOworCXNpemVfdCBhX2xlbiA9IHBhcnNlX29wdGlvbnNfY291bnQoYSk7CisJc2l6ZV90IGJfbGVuID0gcGFyc2Vfb3B0aW9uc19jb3VudChiKTsKIAogCUFMTE9DX0FSUkFZKHJldCwgc3RfYWRkMyhhX2xlbiwgYl9sZW4sIDEpKTsKLQlmb3IgKGkgPSAwOyBpIDwgYV9sZW47IGkrKykKLQkJcmV0W2ldID0gYVtpXTsKLQlmb3IgKGkgPSAwOyBpIDwgYl9sZW47IGkrKykKLQkJcmV0W2FfbGVuICsgaV0gPSBiW2ldOwotCXJldFthX2xlbiArIGJfbGVuXSA9IGJbYl9sZW5dOyAvKiBmaW5hbCBPUFRJT05fRU5EICovCisJQ09QWV9BUlJBWShyZXQsIGEsIGFfbGVuKTsKKwlDT1BZX0FSUkFZKHJldCArIGFfbGVuLCBiLCBiX2xlbiArIDEpOyAvKiArIDEgZm9yIGZpbmFsIE9QVElPTl9FTkQgKi8KIAogCXJldHVybiByZXQ7CiB9CkBAIC0xNjksOSArMjE3LDEyIEBACiAgKiAiLWgiIG91dHB1dCBldmVuIGlmIGl0J3Mgbm90IGJlaW5nIGhhbmRsZWQgZGlyZWN0bHkgYnkKICAqIHBhcnNlX29wdGlvbnMoKS4KICAqLwotaW50IHBhcnNlX29wdF91bmtub3duX2NiKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCitlbnVtIHBhcnNlX29wdF9yZXN1bHQgcGFyc2Vfb3B0X3Vua25vd25fY2Ioc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqY3R4LAorCQkJCQkgICBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJCQkJCSAgIGNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KQogewotCXJldHVybiAtMjsKKwlCVUdfT05fT1BUX0FSRyhhcmcpOworCXJldHVybiBQQVJTRV9PUFRfVU5LTk9XTjsKIH0KIAogLyoqCmRpZmYgLS1naXQgYS9wYXJzZS1vcHRpb25zLmMgYi9wYXJzZS1vcHRpb25zLmMKaW5kZXggNjkzMmVhZi4uNjNkNmJhYiAxMDA2NDQKLS0tIGEvcGFyc2Utb3B0aW9ucy5jCisrKyBiL3BhcnNlLW9wdGlvbnMuYwpAQCAtNiw2ICs2LDggQEAKICNpbmNsdWRlICJjb2xvci5oIgogI2luY2x1ZGUgInV0ZjguaCIKIAorc3RhdGljIGludCBkaXNhbGxvd19hYmJyZXZpYXRlZF9vcHRpb25zOworCiAjZGVmaW5lIE9QVF9TSE9SVCAxCiAjZGVmaW5lIE9QVF9VTlNFVCAyCiAKQEAgLTIwLDggKzIyLDkgQEAKIAlyZXR1cm4gZXJyb3IoIkJVRzogc3dpdGNoICclYycgJXMiLCBvcHQtPnNob3J0X25hbWUsIHJlYXNvbik7CiB9CiAKLXN0YXRpYyBpbnQgZ2V0X2FyZyhzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpwLCBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCi0JCSAgIGludCBmbGFncywgY29uc3QgY2hhciAqKmFyZykKK3N0YXRpYyBlbnVtIHBhcnNlX29wdF9yZXN1bHQgZ2V0X2FyZyhzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpwLAorCQkJCSAgICAgY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LAorCQkJCSAgICAgaW50IGZsYWdzLCBjb25zdCBjaGFyICoqYXJnKQogewogCWlmIChwLT5vcHQpIHsKIAkJKmFyZyA9IHAtPm9wdDsKQEAgLTMyLDcgKzM1LDcgQEAKIAkJcC0+YXJnYy0tOwogCQkqYXJnID0gKisrcC0+YXJndjsKIAl9IGVsc2UKLQkJcmV0dXJuIG9wdGVycm9yKG9wdCwgInJlcXVpcmVzIGEgdmFsdWUiLCBmbGFncyk7CisJCXJldHVybiBlcnJvcihfKCIlcyByZXF1aXJlcyBhIHZhbHVlIiksIG9wdG5hbWUob3B0LCBmbGFncykpOwogCXJldHVybiAwOwogfQogCkBAIC00NCwxMiArNDcsMTIgQEAKIAkqZmlsZSA9IHByZWZpeF9maWxlbmFtZShwcmVmaXgsICpmaWxlKTsKIH0KIAotc3RhdGljIGludCBvcHRfY29tbWFuZF9tb2RlX2Vycm9yKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKLQkJCQkgIGNvbnN0IHN0cnVjdCBvcHRpb24gKmFsbF9vcHRzLAotCQkJCSAgaW50IGZsYWdzKQorc3RhdGljIGVudW0gcGFyc2Vfb3B0X3Jlc3VsdCBvcHRfY29tbWFuZF9tb2RlX2Vycm9yKAorCWNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKKwljb25zdCBzdHJ1Y3Qgb3B0aW9uICphbGxfb3B0cywKKwlpbnQgZmxhZ3MpCiB7CiAJY29uc3Qgc3RydWN0IG9wdGlvbiAqdGhhdDsKLQlzdHJ1Y3Qgc3RyYnVmIG1lc3NhZ2UgPSBTVFJCVUZfSU5JVDsKIAlzdHJ1Y3Qgc3RyYnVmIHRoYXRfbmFtZSA9IFNUUkJVRl9JTklUOwogCiAJLyoKQEAgLTU4LDcgKzYxLDcgQEAKIAkgKi8KIAlmb3IgKHRoYXQgPSBhbGxfb3B0czsgdGhhdC0+dHlwZSAhPSBPUFRJT05fRU5EOyB0aGF0KyspIHsKIAkJaWYgKHRoYXQgPT0gb3B0IHx8Ci0JCSAgICB0aGF0LT50eXBlICE9IE9QVElPTl9DTURNT0RFIHx8CisJCSAgICAhKHRoYXQtPmZsYWdzICYgUEFSU0VfT1BUX0NNRE1PREUpIHx8CiAJCSAgICB0aGF0LT52YWx1ZSAhPSBvcHQtPnZhbHVlIHx8CiAJCSAgICB0aGF0LT5kZWZ2YWwgIT0gKihpbnQgKilvcHQtPnZhbHVlKQogCQkJY29udGludWU7CkBAIC02NywzNCArNzAsNDIgQEAKIAkJCXN0cmJ1Zl9hZGRmKCZ0aGF0X25hbWUsICItLSVzIiwgdGhhdC0+bG9uZ19uYW1lKTsKIAkJZWxzZQogCQkJc3RyYnVmX2FkZGYoJnRoYXRfbmFtZSwgIi0lYyIsIHRoYXQtPnNob3J0X25hbWUpOwotCQlzdHJidWZfYWRkZigmbWVzc2FnZSwgIjogaW5jb21wYXRpYmxlIHdpdGggJXMiLCB0aGF0X25hbWUuYnVmKTsKKwkJZXJyb3IoXygiJXMgaXMgaW5jb21wYXRpYmxlIHdpdGggJXMiKSwKKwkJICAgICAgb3B0bmFtZShvcHQsIGZsYWdzKSwgdGhhdF9uYW1lLmJ1Zik7CiAJCXN0cmJ1Zl9yZWxlYXNlKCZ0aGF0X25hbWUpOwotCQlvcHRlcnJvcihvcHQsIG1lc3NhZ2UuYnVmLCBmbGFncyk7Ci0JCXN0cmJ1Zl9yZWxlYXNlKCZtZXNzYWdlKTsKLQkJcmV0dXJuIC0xOworCQlyZXR1cm4gUEFSU0VfT1BUX0VSUk9SOwogCX0KLQlyZXR1cm4gb3B0ZXJyb3Iob3B0LCAiOiBpbmNvbXBhdGlibGUgd2l0aCBzb21ldGhpbmcgZWxzZSIsIGZsYWdzKTsKKwlyZXR1cm4gZXJyb3IoXygiJXMgOiBpbmNvbXBhdGlibGUgd2l0aCBzb21ldGhpbmcgZWxzZSIpLAorCQkgICAgIG9wdG5hbWUob3B0LCBmbGFncykpOwogfQogCi1zdGF0aWMgaW50IGdldF92YWx1ZShzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpwLAotCQkgICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKLQkJICAgICBjb25zdCBzdHJ1Y3Qgb3B0aW9uICphbGxfb3B0cywKLQkJICAgICBpbnQgZmxhZ3MpCitzdGF0aWMgZW51bSBwYXJzZV9vcHRfcmVzdWx0IGdldF92YWx1ZShzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpwLAorCQkJCSAgICAgICBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsCisJCQkJICAgICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKmFsbF9vcHRzLAorCQkJCSAgICAgICBpbnQgZmxhZ3MpCiB7CiAJY29uc3QgY2hhciAqcywgKmFyZzsKIAljb25zdCBpbnQgdW5zZXQgPSBmbGFncyAmIE9QVF9VTlNFVDsKIAlpbnQgZXJyOwogCiAJaWYgKHVuc2V0ICYmIHAtPm9wdCkKLQkJcmV0dXJuIG9wdGVycm9yKG9wdCwgInRha2VzIG5vIHZhbHVlIiwgZmxhZ3MpOworCQlyZXR1cm4gZXJyb3IoXygiJXMgdGFrZXMgbm8gdmFsdWUiKSwgb3B0bmFtZShvcHQsIGZsYWdzKSk7CiAJaWYgKHVuc2V0ICYmIChvcHQtPmZsYWdzICYgUEFSU0VfT1BUX05PTkVHKSkKLQkJcmV0dXJuIG9wdGVycm9yKG9wdCwgImlzbid0IGF2YWlsYWJsZSIsIGZsYWdzKTsKKwkJcmV0dXJuIGVycm9yKF8oIiVzIGlzbid0IGF2YWlsYWJsZSIpLCBvcHRuYW1lKG9wdCwgZmxhZ3MpKTsKIAlpZiAoIShmbGFncyAmIE9QVF9TSE9SVCkgJiYgcC0+b3B0ICYmIChvcHQtPmZsYWdzICYgUEFSU0VfT1BUX05PQVJHKSkKLQkJcmV0dXJuIG9wdGVycm9yKG9wdCwgInRha2VzIG5vIHZhbHVlIiwgZmxhZ3MpOworCQlyZXR1cm4gZXJyb3IoXygiJXMgdGFrZXMgbm8gdmFsdWUiKSwgb3B0bmFtZShvcHQsIGZsYWdzKSk7CisKKwkvKgorCSAqIEdpdmluZyB0aGUgc2FtZSBtb2RlIG9wdGlvbiB0d2ljZSwgYWx0aG91Z2ggdW5uZWNlc3NhcnksCisJICogaXMgbm90IGEgZ3JhdmUgZXJyb3IsIHNvIGxldCBpdCBwYXNzLgorCSAqLworCWlmICgob3B0LT5mbGFncyAmIFBBUlNFX09QVF9DTURNT0RFKSAmJgorCSAgICAqKGludCAqKW9wdC0+dmFsdWUgJiYgKihpbnQgKilvcHQtPnZhbHVlICE9IG9wdC0+ZGVmdmFsKQorCQlyZXR1cm4gb3B0X2NvbW1hbmRfbW9kZV9lcnJvcihvcHQsIGFsbF9vcHRzLCBmbGFncyk7CiAKIAlzd2l0Y2ggKG9wdC0+dHlwZSkgewogCWNhc2UgT1BUSU9OX0xPV0xFVkVMX0NBTExCQUNLOgotCQlyZXR1cm4gKCoocGFyc2Vfb3B0X2xsX2NiICopb3B0LT5jYWxsYmFjaykocCwgb3B0LCB1bnNldCk7CisJCXJldHVybiBvcHQtPmxsX2NhbGxiYWNrKHAsIG9wdCwgTlVMTCwgdW5zZXQpOwogCiAJY2FzZSBPUFRJT05fQklUOgogCQlpZiAodW5zZXQpCkBAIC0xMTAsNiArMTIxLDEzIEBACiAJCQkqKGludCAqKW9wdC0+dmFsdWUgJj0gfm9wdC0+ZGVmdmFsOwogCQlyZXR1cm4gMDsKIAorCWNhc2UgT1BUSU9OX0JJVE9QOgorCQlpZiAodW5zZXQpCisJCQlCVUcoIkJJVE9QIGNhbid0IGhhdmUgdW5zZXQgZm9ybSIpOworCQkqKGludCAqKW9wdC0+dmFsdWUgJj0gfm9wdC0+ZXh0cmE7CisJCSooaW50ICopb3B0LT52YWx1ZSB8PSBvcHQtPmRlZnZhbDsKKwkJcmV0dXJuIDA7CisKIAljYXNlIE9QVElPTl9DT1VOVFVQOgogCQlpZiAoKihpbnQgKilvcHQtPnZhbHVlIDwgMCkKIAkJCSooaW50ICopb3B0LT52YWx1ZSA9IDA7CkBAIC0xMjAsMTYgKzEzOCw2IEBACiAJCSooaW50ICopb3B0LT52YWx1ZSA9IHVuc2V0ID8gMCA6IG9wdC0+ZGVmdmFsOwogCQlyZXR1cm4gMDsKIAotCWNhc2UgT1BUSU9OX0NNRE1PREU6Ci0JCS8qCi0JCSAqIEdpdmluZyB0aGUgc2FtZSBtb2RlIG9wdGlvbiB0d2ljZSwgYWx0aG91Z2ggaXMgdW5uZWNlc3NhcnksCi0JCSAqIGlzIG5vdCBhIGdyYXZlIGVycm9yLCBzbyBsZXQgaXQgcGFzcy4KLQkJICovCi0JCWlmICgqKGludCAqKW9wdC0+dmFsdWUgJiYgKihpbnQgKilvcHQtPnZhbHVlICE9IG9wdC0+ZGVmdmFsKQotCQkJcmV0dXJuIG9wdF9jb21tYW5kX21vZGVfZXJyb3Iob3B0LCBhbGxfb3B0cywgZmxhZ3MpOwotCQkqKGludCAqKW9wdC0+dmFsdWUgPSBvcHQtPmRlZnZhbDsKLQkJcmV0dXJuIDA7Ci0KIAljYXNlIE9QVElPTl9TVFJJTkc6CiAJCWlmICh1bnNldCkKIAkJCSooY29uc3QgY2hhciAqKilvcHQtPnZhbHVlID0gTlVMTDsKQEAgLTE1MywxNiArMTYxLDI3IEBACiAJCXJldHVybiBlcnI7CiAKIAljYXNlIE9QVElPTl9DQUxMQkFDSzoKLQkJaWYgKHVuc2V0KQotCQkJcmV0dXJuICgqb3B0LT5jYWxsYmFjaykob3B0LCBOVUxMLCAxKSA/ICgtMSkgOiAwOwotCQlpZiAob3B0LT5mbGFncyAmIFBBUlNFX09QVF9OT0FSRykKLQkJCXJldHVybiAoKm9wdC0+Y2FsbGJhY2spKG9wdCwgTlVMTCwgMCkgPyAoLTEpIDogMDsKLQkJaWYgKG9wdC0+ZmxhZ3MgJiBQQVJTRV9PUFRfT1BUQVJHICYmICFwLT5vcHQpCi0JCQlyZXR1cm4gKCpvcHQtPmNhbGxiYWNrKShvcHQsIE5VTEwsIDApID8gKC0xKSA6IDA7Ci0JCWlmIChnZXRfYXJnKHAsIG9wdCwgZmxhZ3MsICZhcmcpKQotCQkJcmV0dXJuIC0xOwotCQlyZXR1cm4gKCpvcHQtPmNhbGxiYWNrKShvcHQsIGFyZywgMCkgPyAoLTEpIDogMDsKKwl7CisJCWNvbnN0IGNoYXIgKnBfYXJnID0gTlVMTDsKKwkJaW50IHBfdW5zZXQ7CiAKKwkJaWYgKHVuc2V0KQorCQkJcF91bnNldCA9IDE7CisJCWVsc2UgaWYgKG9wdC0+ZmxhZ3MgJiBQQVJTRV9PUFRfTk9BUkcpCisJCQlwX3Vuc2V0ID0gMDsKKwkJZWxzZSBpZiAob3B0LT5mbGFncyAmIFBBUlNFX09QVF9PUFRBUkcgJiYgIXAtPm9wdCkKKwkJCXBfdW5zZXQgPSAwOworCQllbHNlIGlmIChnZXRfYXJnKHAsIG9wdCwgZmxhZ3MsICZhcmcpKQorCQkJcmV0dXJuIC0xOworCQllbHNlIHsKKwkJCXBfdW5zZXQgPSAwOworCQkJcF9hcmcgPSBhcmc7CisJCX0KKwkJaWYgKG9wdC0+Y2FsbGJhY2spCisJCQlyZXR1cm4gKCpvcHQtPmNhbGxiYWNrKShvcHQsIHBfYXJnLCBwX3Vuc2V0KSA/ICgtMSkgOiAwOworCQllbHNlCisJCQlyZXR1cm4gKCpvcHQtPmxsX2NhbGxiYWNrKShwLCBvcHQsIHBfYXJnLCBwX3Vuc2V0KTsKKwl9CiAJY2FzZSBPUFRJT05fSU5URUdFUjoKIAkJaWYgKHVuc2V0KSB7CiAJCQkqKGludCAqKW9wdC0+dmFsdWUgPSAwOwpAQCAtMTc0LDkgKzE5MywxMyBAQAogCQl9CiAJCWlmIChnZXRfYXJnKHAsIG9wdCwgZmxhZ3MsICZhcmcpKQogCQkJcmV0dXJuIC0xOworCQlpZiAoISphcmcpCisJCQlyZXR1cm4gZXJyb3IoXygiJXMgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIpLAorCQkJCSAgICAgb3B0bmFtZShvcHQsIGZsYWdzKSk7CiAJCSooaW50ICopb3B0LT52YWx1ZSA9IHN0cnRvbChhcmcsIChjaGFyICoqKSZzLCAxMCk7CiAJCWlmICgqcykKLQkJCXJldHVybiBvcHRlcnJvcihvcHQsICJleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIiwgZmxhZ3MpOworCQkJcmV0dXJuIGVycm9yKF8oIiVzIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiKSwKKwkJCQkgICAgIG9wdG5hbWUob3B0LCBmbGFncykpOwogCQlyZXR1cm4gMDsKIAogCWNhc2UgT1BUSU9OX01BR05JVFVERToKQEAgLTE5MSwxNyArMjE0LDE4IEBACiAJCWlmIChnZXRfYXJnKHAsIG9wdCwgZmxhZ3MsICZhcmcpKQogCQkJcmV0dXJuIC0xOwogCQlpZiAoIWdpdF9wYXJzZV91bG9uZyhhcmcsIG9wdC0+dmFsdWUpKQotCQkJcmV0dXJuIG9wdGVycm9yKG9wdCwKLQkJCQkiZXhwZWN0cyBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIHZhbHVlIHdpdGggYW4gb3B0aW9uYWwgay9tL2cgc3VmZml4IiwKLQkJCQlmbGFncyk7CisJCQlyZXR1cm4gZXJyb3IoXygiJXMgZXhwZWN0cyBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIHZhbHVlIgorCQkJCSAgICAgICAiIHdpdGggYW4gb3B0aW9uYWwgay9tL2cgc3VmZml4IiksCisJCQkJICAgICBvcHRuYW1lKG9wdCwgZmxhZ3MpKTsKIAkJcmV0dXJuIDA7CiAKIAlkZWZhdWx0OgotCQlkaWUoInNob3VsZCBub3QgaGFwcGVuLCBzb21lb25lIG11c3QgYmUgaGl0IG9uIHRoZSBmb3JlaGVhZCIpOworCQlCVUcoIm9wdC0+dHlwZSAlZCBzaG91bGQgbm90IGhhcHBlbiIsIG9wdC0+dHlwZSk7CiAJfQogfQogCi1zdGF0aWMgaW50IHBhcnNlX3Nob3J0X29wdChzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpwLCBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zKQorc3RhdGljIGVudW0gcGFyc2Vfb3B0X3Jlc3VsdCBwYXJzZV9zaG9ydF9vcHQoc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqcCwKKwkJCQkJICAgICBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zKQogewogCWNvbnN0IHN0cnVjdCBvcHRpb24gKmFsbF9vcHRzID0gb3B0aW9uczsKIAljb25zdCBzdHJ1Y3Qgb3B0aW9uICpudW1vcHQgPSBOVUxMOwpAQCAtMjI4LDE1ICsyNTIsNDggQEAKIAkJCWxlbisrOwogCQlhcmcgPSB4bWVtZHVweihwLT5vcHQsIGxlbik7CiAJCXAtPm9wdCA9IHAtPm9wdFtsZW5dID8gcC0+b3B0ICsgbGVuIDogTlVMTDsKLQkJcmMgPSAoKm51bW9wdC0+Y2FsbGJhY2spKG51bW9wdCwgYXJnLCAwKSA/ICgtMSkgOiAwOworCQlpZiAobnVtb3B0LT5jYWxsYmFjaykKKwkJCXJjID0gKCpudW1vcHQtPmNhbGxiYWNrKShudW1vcHQsIGFyZywgMCkgPyAoLTEpIDogMDsKKwkJZWxzZQorCQkJcmMgPSAoKm51bW9wdC0+bGxfY2FsbGJhY2spKHAsIG51bW9wdCwgYXJnLCAwKTsKIAkJZnJlZShhcmcpOwogCQlyZXR1cm4gcmM7CiAJfQotCXJldHVybiAtMjsKKwlyZXR1cm4gUEFSU0VfT1BUX1VOS05PV047CiB9CiAKLXN0YXRpYyBpbnQgcGFyc2VfbG9uZ19vcHQoc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqcCwgY29uc3QgY2hhciAqYXJnLAotICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zKQorc3RhdGljIGludCBoYXNfc3RyaW5nKGNvbnN0IGNoYXIgKml0LCBjb25zdCBjaGFyICoqYXJyYXkpCit7CisJd2hpbGUgKCphcnJheSkKKwkJaWYgKCFzdHJjbXAoaXQsICooYXJyYXkrKykpKQorCQkJcmV0dXJuIDE7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgaXNfYWxpYXMoc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqY3R4LAorCQkgICAgY29uc3Qgc3RydWN0IG9wdGlvbiAqb25lX29wdCwKKwkJICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKmFub3RoZXJfb3B0KQoreworCWNvbnN0IGNoYXIgKipncm91cDsKKworCWlmICghY3R4LT5hbGlhc19ncm91cHMpCisJCXJldHVybiAwOworCisJaWYgKCFvbmVfb3B0LT5sb25nX25hbWUgfHwgIWFub3RoZXJfb3B0LT5sb25nX25hbWUpCisJCXJldHVybiAwOworCisJZm9yIChncm91cCA9IGN0eC0+YWxpYXNfZ3JvdXBzOyAqZ3JvdXA7IGdyb3VwICs9IDMpIHsKKwkJLyogaXQgYW5kIG90aGVyIGFyZSBmcm9tIHRoZSBzYW1lIGZhbWlseT8gKi8KKwkJaWYgKGhhc19zdHJpbmcob25lX29wdC0+bG9uZ19uYW1lLCBncm91cCkgJiYKKwkJICAgIGhhc19zdHJpbmcoYW5vdGhlcl9vcHQtPmxvbmdfbmFtZSwgZ3JvdXApKQorCQkJcmV0dXJuIDE7CisJfQorCXJldHVybiAwOworfQorCitzdGF0aWMgZW51bSBwYXJzZV9vcHRfcmVzdWx0IHBhcnNlX2xvbmdfb3B0KAorCXN0cnVjdCBwYXJzZV9vcHRfY3R4X3QgKnAsIGNvbnN0IGNoYXIgKmFyZywKKwljb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zKQogewogCWNvbnN0IHN0cnVjdCBvcHRpb24gKmFsbF9vcHRzID0gb3B0aW9uczsKIAljb25zdCBjaGFyICphcmdfZW5kID0gc3RyY2hybnVsKGFyZywgJz0nKTsKQEAgLTI1NywxNyArMzE0LDIyIEBACiAJCQlpZiAoIXJlc3QpCiAJCQkJY29udGludWU7CiAJCQlpZiAoKnJlc3QgPT0gJz0nKQotCQkJCXJldHVybiBvcHRlcnJvcihvcHRpb25zLCAidGFrZXMgbm8gdmFsdWUiLCBmbGFncyk7CisJCQkJcmV0dXJuIGVycm9yKF8oIiVzIHRha2VzIG5vIHZhbHVlIiksCisJCQkJCSAgICAgb3B0bmFtZShvcHRpb25zLCBmbGFncykpOwogCQkJaWYgKCpyZXN0KQogCQkJCWNvbnRpbnVlOworCQkJaWYgKG9wdGlvbnMtPnZhbHVlKQorCQkJCSooaW50ICopb3B0aW9ucy0+dmFsdWUgPSBvcHRpb25zLT5kZWZ2YWw7CiAJCQlwLT5vdXRbcC0+Y3BpZHgrK10gPSBhcmcgLSAyOwotCQkJcmV0dXJuIDA7CisJCQlyZXR1cm4gUEFSU0VfT1BUX0RPTkU7CiAJCX0KIAkJaWYgKCFyZXN0KSB7CiAJCQkvKiBhYmJyZXZpYXRlZD8gKi8KLQkJCWlmICghc3RybmNtcChsb25nX25hbWUsIGFyZywgYXJnX2VuZCAtIGFyZykpIHsKKwkJCWlmICghKHAtPmZsYWdzICYgUEFSU0VfT1BUX0tFRVBfVU5LTk9XTikgJiYKKwkJCSAgICAhc3RybmNtcChsb25nX25hbWUsIGFyZywgYXJnX2VuZCAtIGFyZykpIHsKIGlzX2FiYnJldmlhdGVkOgotCQkJCWlmIChhYmJyZXZfb3B0aW9uKSB7CisJCQkJaWYgKGFiYnJldl9vcHRpb24gJiYKKwkJCQkgICAgIWlzX2FsaWFzKHAsIGFiYnJldl9vcHRpb24sIG9wdGlvbnMpKSB7CiAJCQkJCS8qCiAJCQkJCSAqIElmIHRoaXMgaXMgYWJicmV2aWF0ZWQsIGl0IGlzCiAJCQkJCSAqIGFtYmlndW91cy4gU28gd2hlbiB0aGVyZSBpcyBubwpAQCAtMjkzLDggKzM1NSw3IEBACiAJCQl9CiAJCQkvKiBuZWdhdGVkPyAqLwogCQkJaWYgKCFzdGFydHNfd2l0aChhcmcsICJuby0iKSkgewotCQkJCWlmIChzdGFydHNfd2l0aChsb25nX25hbWUsICJuby0iKSkgewotCQkJCQlsb25nX25hbWUgKz0gMzsKKwkJCQlpZiAoc2tpcF9wcmVmaXgobG9uZ19uYW1lLCAibm8tIiwgJmxvbmdfbmFtZSkpIHsKIAkJCQkJb3B0X2ZsYWdzIHw9IE9QVF9VTlNFVDsKIAkJCQkJZ290byBhZ2FpbjsKIAkJCQl9CkBAIC0zMTcsMTkgKzM3OCwyMyBAQAogCQlyZXR1cm4gZ2V0X3ZhbHVlKHAsIG9wdGlvbnMsIGFsbF9vcHRzLCBmbGFncyBeIG9wdF9mbGFncyk7CiAJfQogCisJaWYgKGRpc2FsbG93X2FiYnJldmlhdGVkX29wdGlvbnMgJiYgKGFtYmlndW91c19vcHRpb24gfHwgYWJicmV2X29wdGlvbikpCisJCWRpZSgiZGlzYWxsb3dlZCBhYmJyZXZpYXRlZCBvciBhbWJpZ3VvdXMgb3B0aW9uICclLipzJyIsCisJCSAgICAoaW50KShhcmdfZW5kIC0gYXJnKSwgYXJnKTsKKwogCWlmIChhbWJpZ3VvdXNfb3B0aW9uKSB7Ci0JCWVycm9yKCJBbWJpZ3VvdXMgb3B0aW9uOiAlcyAiCi0JCQkiKGNvdWxkIGJlIC0tJXMlcyBvciAtLSVzJXMpIiwKKwkJZXJyb3IoXygiYW1iaWd1b3VzIG9wdGlvbjogJXMgIgorCQkJIihjb3VsZCBiZSAtLSVzJXMgb3IgLS0lcyVzKSIpLAogCQkJYXJnLAogCQkJKGFtYmlndW91c19mbGFncyAmIE9QVF9VTlNFVCkgPyAgIm5vLSIgOiAiIiwKIAkJCWFtYmlndW91c19vcHRpb24tPmxvbmdfbmFtZSwKIAkJCShhYmJyZXZfZmxhZ3MgJiBPUFRfVU5TRVQpID8gICJuby0iIDogIiIsCiAJCQlhYmJyZXZfb3B0aW9uLT5sb25nX25hbWUpOwotCQlyZXR1cm4gLTM7CisJCXJldHVybiBQQVJTRV9PUFRfSEVMUDsKIAl9CiAJaWYgKGFiYnJldl9vcHRpb24pCiAJCXJldHVybiBnZXRfdmFsdWUocCwgYWJicmV2X29wdGlvbiwgYWxsX29wdHMsIGFiYnJldl9mbGFncyk7Ci0JcmV0dXJuIC0yOworCXJldHVybiBQQVJTRV9PUFRfVU5LTk9XTjsKIH0KIAogc3RhdGljIGludCBwYXJzZV9ub2Rhc2hfb3B0KHN0cnVjdCBwYXJzZV9vcHRfY3R4X3QgKnAsIGNvbnN0IGNoYXIgKmFyZywKQEAgLTM1Miw3ICs0MTcsNyBAQAogCQlyZXR1cm47CiAKIAlpZiAoc3RhcnRzX3dpdGgoYXJnLCAibm8tIikpIHsKLQkJZXJyb3IgKCJkaWQgeW91IG1lYW4gYC0tJXNgICh3aXRoIHR3byBkYXNoZXMgPykiLCBhcmcpOworCQllcnJvcihfKCJkaWQgeW91IG1lYW4gYC0tJXNgICh3aXRoIHR3byBkYXNoZXMpPyIpLCBhcmcpOwogCQlleGl0KDEyOSk7CiAJfQogCkBAIC0zNjAsNyArNDI1LDcgQEAKIAkJaWYgKCFvcHRpb25zLT5sb25nX25hbWUpCiAJCQljb250aW51ZTsKIAkJaWYgKHN0YXJ0c193aXRoKG9wdGlvbnMtPmxvbmdfbmFtZSwgYXJnKSkgewotCQkJZXJyb3IgKCJkaWQgeW91IG1lYW4gYC0tJXNgICh3aXRoIHR3byBkYXNoZXMgPykiLCBhcmcpOworCQkJZXJyb3IoXygiZGlkIHlvdSBtZWFuIGAtLSVzYCAod2l0aCB0d28gZGFzaGVzKT8iKSwgYXJnKTsKIAkJCWV4aXQoMTI5KTsKIAkJfQogCX0KQEAgLTM5OSw2ICs0NjQsMjMgQEAKIAkJCWlmICgob3B0cy0+ZmxhZ3MgJiBQQVJTRV9PUFRfT1BUQVJHKSB8fAogCQkJICAgICEob3B0cy0+ZmxhZ3MgJiBQQVJTRV9PUFRfTk9BUkcpKQogCQkJCWVyciB8PSBvcHRidWcob3B0cywgInNob3VsZCBub3QgYWNjZXB0IGFuIGFyZ3VtZW50Iik7CisJCQlicmVhazsKKwkJY2FzZSBPUFRJT05fQ0FMTEJBQ0s6CisJCQlpZiAoIW9wdHMtPmNhbGxiYWNrICYmICFvcHRzLT5sbF9jYWxsYmFjaykKKwkJCQlCVUcoIk9QVElPTl9DQUxMQkFDSyBuZWVkcyBvbmUgY2FsbGJhY2siKTsKKwkJCWlmIChvcHRzLT5jYWxsYmFjayAmJiBvcHRzLT5sbF9jYWxsYmFjaykKKwkJCQlCVUcoIk9QVElPTl9DQUxMQkFDSyBjYW4ndCBoYXZlIHR3byBjYWxsYmFja3MiKTsKKwkJCWJyZWFrOworCQljYXNlIE9QVElPTl9MT1dMRVZFTF9DQUxMQkFDSzoKKwkJCWlmICghb3B0cy0+bGxfY2FsbGJhY2spCisJCQkJQlVHKCJPUFRJT05fTE9XTEVWRUxfQ0FMTEJBQ0sgbmVlZHMgYSBjYWxsYmFjayIpOworCQkJaWYgKG9wdHMtPmNhbGxiYWNrKQorCQkJCUJVRygiT1BUSU9OX0xPV0xFVkVMX0NBTExCQUNLIG5lZWRzIG5vIGhpZ2ggbGV2ZWwgY2FsbGJhY2siKTsKKwkJCWJyZWFrOworCQljYXNlIE9QVElPTl9BTElBUzoKKwkJCUJVRygiT1BUX0FMSUFTKCkgc2hvdWxkIG5vdCByZW1haW4gYXQgdGhpcyBwb2ludC4gIgorCQkJICAgICJBcmUgeW91IHVzaW5nIHBhcnNlX29wdGlvbnNfc3RlcCgpIGRpcmVjdGx5P1xuIgorCQkJICAgICJUaGF0IGNhc2UgaXMgbm90IHN1cHBvcnRlZCB5ZXQuIik7CiAJCWRlZmF1bHQ6CiAJCQk7IC8qIG9rLiAodXN1YWxseSBhY2NlcHRzIGFuIGFyZ3VtZW50KSAqLwogCQl9CkBAIC00MTAsMjEgKzQ5MiwzNyBAQAogCQlleGl0KDEyOCk7CiB9CiAKK3N0YXRpYyB2b2lkIHBhcnNlX29wdGlvbnNfc3RhcnRfMShzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpjdHgsCisJCQkJICBpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCwKKwkJCQkgIGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdGlvbnMsIGludCBmbGFncykKK3sKKwljdHgtPmFyZ2MgPSBhcmdjOworCWN0eC0+YXJndiA9IGFyZ3Y7CisJaWYgKCEoZmxhZ3MgJiBQQVJTRV9PUFRfT05FX1NIT1QpKSB7CisJCWN0eC0+YXJnYy0tOworCQljdHgtPmFyZ3YrKzsKKwl9CisJY3R4LT50b3RhbCA9IGN0eC0+YXJnYzsKKwljdHgtPm91dCAgID0gYXJndjsKKwljdHgtPnByZWZpeCA9IHByZWZpeDsKKwljdHgtPmNwaWR4ID0gKChmbGFncyAmIFBBUlNFX09QVF9LRUVQX0FSR1YwKSAhPSAwKTsKKwljdHgtPmZsYWdzID0gZmxhZ3M7CisJaWYgKChmbGFncyAmIFBBUlNFX09QVF9LRUVQX1VOS05PV04pICYmCisJICAgIChmbGFncyAmIFBBUlNFX09QVF9TVE9QX0FUX05PTl9PUFRJT04pICYmCisJICAgICEoZmxhZ3MgJiBQQVJTRV9PUFRfT05FX1NIT1QpKQorCQlCVUcoIlNUT1BfQVRfTk9OX09QVElPTiBhbmQgS0VFUF9VTktOT1dOIGRvbid0IGdvIHRvZ2V0aGVyIik7CisJaWYgKChmbGFncyAmIFBBUlNFX09QVF9PTkVfU0hPVCkgJiYKKwkgICAgKGZsYWdzICYgUEFSU0VfT1BUX0tFRVBfQVJHVjApKQorCQlCVUcoIkNhbid0IGtlZXAgYXJndjAgaWYgeW91IGRvbid0IGhhdmUgaXQiKTsKKwlwYXJzZV9vcHRpb25zX2NoZWNrKG9wdGlvbnMpOworfQorCiB2b2lkIHBhcnNlX29wdGlvbnNfc3RhcnQoc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqY3R4LAogCQkJIGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4LAogCQkJIGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdGlvbnMsIGludCBmbGFncykKIHsKIAltZW1zZXQoY3R4LCAwLCBzaXplb2YoKmN0eCkpOwotCWN0eC0+YXJnYyA9IGN0eC0+dG90YWwgPSBhcmdjIC0gMTsKLQljdHgtPmFyZ3YgPSBhcmd2ICsgMTsKLQljdHgtPm91dCAgPSBhcmd2OwotCWN0eC0+cHJlZml4ID0gcHJlZml4OwotCWN0eC0+Y3BpZHggPSAoKGZsYWdzICYgUEFSU0VfT1BUX0tFRVBfQVJHVjApICE9IDApOwotCWN0eC0+ZmxhZ3MgPSBmbGFnczsKLQlpZiAoKGZsYWdzICYgUEFSU0VfT1BUX0tFRVBfVU5LTk9XTikgJiYKLQkgICAgKGZsYWdzICYgUEFSU0VfT1BUX1NUT1BfQVRfTk9OX09QVElPTikpCi0JCWRpZSgiU1RPUF9BVF9OT05fT1BUSU9OIGFuZCBLRUVQX1VOS05PV04gZG9uJ3QgZ28gdG9nZXRoZXIiKTsKLQlwYXJzZV9vcHRpb25zX2NoZWNrKG9wdGlvbnMpOworCXBhcnNlX29wdGlvbnNfc3RhcnRfMShjdHgsIGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywgZmxhZ3MpOwogfQogCiBzdGF0aWMgdm9pZCBzaG93X25lZ2F0ZWRfZ2l0Y29tcChjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRzLCBpbnQgbnJfbm9vcHRzKQpAQCAtNDc0LDggKzU3Miw3IEBACiAJfQogfQogCi1zdGF0aWMgaW50IHNob3dfZ2l0Y29tcChzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpjdHgsCi0JCQljb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRzKQorc3RhdGljIGludCBzaG93X2dpdGNvbXAoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0cykKIHsKIAljb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcmlnaW5hbF9vcHRzID0gb3B0czsKIAlpbnQgbnJfbm9vcHRzID0gMDsKQEAgLTUxOSw2ICs2MTYsODMgQEAKIAlyZXR1cm4gUEFSU0VfT1BUX0NPTVBMRVRFOwogfQogCisvKgorICogU2NhbiBhbmQgbWF5IHByb2R1Y2UgYSBuZXcgb3B0aW9uW10gYXJyYXksIHdoaWNoIHNob3VsZCBiZSB1c2VkCisgKiBpbnN0ZWFkIG9mIHRoZSBvcmlnaW5hbCAnb3B0aW9ucycuCisgKgorICogUmlnaHQgbm93IHRoaXMgaXMgb25seSB1c2VkIHRvIHByZXByb2Nlc3MgYW5kIHN1YnN0aXR1dGUKKyAqIE9QVElPTl9BTElBUy4KKyAqLworc3RhdGljIHN0cnVjdCBvcHRpb24gKnByZXByb2Nlc3Nfb3B0aW9ucyhzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpjdHgsCisJCQkJCSBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zKQoreworCXN0cnVjdCBvcHRpb24gKm5ld29wdDsKKwlpbnQgaSwgbnIsIGFsaWFzOworCWludCBucl9hbGlhc2VzID0gMDsKKworCWZvciAobnIgPSAwOyBvcHRpb25zW25yXS50eXBlICE9IE9QVElPTl9FTkQ7IG5yKyspIHsKKwkJaWYgKG9wdGlvbnNbbnJdLnR5cGUgPT0gT1BUSU9OX0FMSUFTKQorCQkJbnJfYWxpYXNlcysrOworCX0KKworCWlmICghbnJfYWxpYXNlcykKKwkJcmV0dXJuIE5VTEw7CisKKwlBTExPQ19BUlJBWShuZXdvcHQsIG5yICsgMSk7CisJQ09QWV9BUlJBWShuZXdvcHQsIG9wdGlvbnMsIG5yICsgMSk7CisKKwkvKiBlYWNoIGFsaWFzIGhhcyB0d28gc3RyaW5nIHBvaW50ZXJzIGFuZCBOVUxMICovCisJQ0FMTE9DX0FSUkFZKGN0eC0+YWxpYXNfZ3JvdXBzLCAzICogKG5yX2FsaWFzZXMgKyAxKSk7CisKKwlmb3IgKGFsaWFzID0gMCwgaSA9IDA7IGkgPCBucjsgaSsrKSB7CisJCWludCBzaG9ydF9uYW1lOworCQljb25zdCBjaGFyICpsb25nX25hbWU7CisJCWNvbnN0IGNoYXIgKnNvdXJjZTsKKwkJaW50IGo7CisKKwkJaWYgKG5ld29wdFtpXS50eXBlICE9IE9QVElPTl9BTElBUykKKwkJCWNvbnRpbnVlOworCisJCXNob3J0X25hbWUgPSBuZXdvcHRbaV0uc2hvcnRfbmFtZTsKKwkJbG9uZ19uYW1lID0gbmV3b3B0W2ldLmxvbmdfbmFtZTsKKwkJc291cmNlID0gbmV3b3B0W2ldLnZhbHVlOworCisJCWlmICghbG9uZ19uYW1lKQorCQkJQlVHKCJBbiBhbGlhcyBtdXN0IGhhdmUgbG9uZyBvcHRpb24gbmFtZSIpOworCisJCWZvciAoaiA9IDA7IGogPCBucjsgaisrKSB7CisJCQljb25zdCBjaGFyICpuYW1lID0gb3B0aW9uc1tqXS5sb25nX25hbWU7CisKKwkJCWlmICghbmFtZSB8fCBzdHJjbXAobmFtZSwgc291cmNlKSkKKwkJCQljb250aW51ZTsKKworCQkJaWYgKG9wdGlvbnNbal0udHlwZSA9PSBPUFRJT05fQUxJQVMpCisJCQkJQlVHKCJObyBwbGVhc2UuIE5lc3RlZCBhbGlhc2VzIGFyZSBub3Qgc3VwcG9ydGVkLiIpOworCisJCQkvKgorCQkJICogTkVFRFNXT1JLOiB0aGlzIGlzIGEgYml0IGluY29uc2lzdGVudCBiZWNhdXNlCisJCQkgKiB1c2FnZV93aXRoX29wdGlvbnMoKSBvbiB0aGUgb3JpZ2luYWwgb3B0aW9uc1tdIHdpbGwgcHJpbnQKKwkJCSAqIGhlbHAgc3RyaW5nIGFzICJhbGlhcyBvZiAlcyIgYnV0ICJnaXQgY21kIC1oIiB3aWxsCisJCQkgKiBwcmludCB0aGUgb3JpZ2luYWwgaGVscCBzdHJpbmcuCisJCQkgKi8KKwkJCW1lbWNweShuZXdvcHQgKyBpLCBvcHRpb25zICsgaiwgc2l6ZW9mKCpuZXdvcHQpKTsKKwkJCW5ld29wdFtpXS5zaG9ydF9uYW1lID0gc2hvcnRfbmFtZTsKKwkJCW5ld29wdFtpXS5sb25nX25hbWUgPSBsb25nX25hbWU7CisJCQlicmVhazsKKwkJfQorCisJCWlmIChqID09IG5yKQorCQkJQlVHKCJjb3VsZCBub3QgZmluZCBzb3VyY2Ugb3B0aW9uICclcycgb2YgYWxpYXMgJyVzJyIsCisJCQkgICAgc291cmNlLCBuZXdvcHRbaV0ubG9uZ19uYW1lKTsKKwkJY3R4LT5hbGlhc19ncm91cHNbYWxpYXMgKiAzICsgMF0gPSBuZXdvcHRbaV0ubG9uZ19uYW1lOworCQljdHgtPmFsaWFzX2dyb3Vwc1thbGlhcyAqIDMgKyAxXSA9IG9wdGlvbnNbal0ubG9uZ19uYW1lOworCQljdHgtPmFsaWFzX2dyb3Vwc1thbGlhcyAqIDMgKyAyXSA9IE5VTEw7CisJCWFsaWFzKys7CisJfQorCisJcmV0dXJuIG5ld29wdDsKK30KKwogc3RhdGljIGludCB1c2FnZV93aXRoX29wdGlvbnNfaW50ZXJuYWwoc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqLAogCQkJCSAgICAgICBjb25zdCBjaGFyICogY29uc3QgKiwKIAkJCQkgICAgICAgY29uc3Qgc3RydWN0IG9wdGlvbiAqLCBpbnQsIGludCk7CkBAIC01MzUsNiArNzA5LDEwIEBACiAJZm9yICg7IGN0eC0+YXJnYzsgY3R4LT5hcmdjLS0sIGN0eC0+YXJndisrKSB7CiAJCWNvbnN0IGNoYXIgKmFyZyA9IGN0eC0+YXJndlswXTsKIAorCQlpZiAoY3R4LT5mbGFncyAmIFBBUlNFX09QVF9PTkVfU0hPVCAmJgorCQkgICAgY3R4LT5hcmdjICE9IGN0eC0+dG90YWwpCisJCQlicmVhazsKKwogCQlpZiAoKmFyZyAhPSAnLScgfHwgIWFyZ1sxXSkgewogCQkJaWYgKHBhcnNlX25vZGFzaF9vcHQoY3R4LCBhcmcsIG9wdGlvbnMpID09IDApCiAJCQkJY29udGludWU7CkBAIC01NTAsMjcgKzcyOCwzMyBAQAogCiAJCS8qIGxvbmUgLS1naXQtY29tcGxldGlvbi1oZWxwZXIgaXMgYXNrZWQgYnkgZ2l0LWNvbXBsZXRpb24uYmFzaCAqLwogCQlpZiAoY3R4LT50b3RhbCA9PSAxICYmICFzdHJjbXAoYXJnICsgMSwgIi1naXQtY29tcGxldGlvbi1oZWxwZXIiKSkKLQkJCXJldHVybiBzaG93X2dpdGNvbXAoY3R4LCBvcHRpb25zKTsKKwkJCXJldHVybiBzaG93X2dpdGNvbXAob3B0aW9ucyk7CiAKIAkJaWYgKGFyZ1sxXSAhPSAnLScpIHsKIAkJCWN0eC0+b3B0ID0gYXJnICsgMTsKIAkJCXN3aXRjaCAocGFyc2Vfc2hvcnRfb3B0KGN0eCwgb3B0aW9ucykpIHsKLQkJCWNhc2UgLTE6CisJCQljYXNlIFBBUlNFX09QVF9FUlJPUjoKIAkJCQlyZXR1cm4gUEFSU0VfT1BUX0VSUk9SOwotCQkJY2FzZSAtMjoKKwkJCWNhc2UgUEFSU0VfT1BUX1VOS05PV046CiAJCQkJaWYgKGN0eC0+b3B0KQogCQkJCQljaGVja190eXBvcyhhcmcgKyAxLCBvcHRpb25zKTsKIAkJCQlpZiAoaW50ZXJuYWxfaGVscCAmJiAqY3R4LT5vcHQgPT0gJ2gnKQogCQkJCQlnb3RvIHNob3dfdXNhZ2U7CiAJCQkJZ290byB1bmtub3duOworCQkJY2FzZSBQQVJTRV9PUFRfTk9OX09QVElPTjoKKwkJCWNhc2UgUEFSU0VfT1BUX0hFTFA6CisJCQljYXNlIFBBUlNFX09QVF9DT01QTEVURToKKwkJCQlCVUcoInBhcnNlX3Nob3J0X29wdCgpIGNhbm5vdCByZXR1cm4gdGhlc2UiKTsKKwkJCWNhc2UgUEFSU0VfT1BUX0RPTkU6CisJCQkJYnJlYWs7CiAJCQl9CiAJCQlpZiAoY3R4LT5vcHQpCiAJCQkJY2hlY2tfdHlwb3MoYXJnICsgMSwgb3B0aW9ucyk7CiAJCQl3aGlsZSAoY3R4LT5vcHQpIHsKIAkJCQlzd2l0Y2ggKHBhcnNlX3Nob3J0X29wdChjdHgsIG9wdGlvbnMpKSB7Ci0JCQkJY2FzZSAtMToKKwkJCQljYXNlIFBBUlNFX09QVF9FUlJPUjoKIAkJCQkJcmV0dXJuIFBBUlNFX09QVF9FUlJPUjsKLQkJCQljYXNlIC0yOgorCQkJCWNhc2UgUEFSU0VfT1BUX1VOS05PV046CiAJCQkJCWlmIChpbnRlcm5hbF9oZWxwICYmICpjdHgtPm9wdCA9PSAnaCcpCiAJCQkJCQlnb3RvIHNob3dfdXNhZ2U7CiAKQEAgLTU4MiwxMiArNzY2LDE5IEBACiAJCQkJCWN0eC0+YXJndlswXSA9IHhzdHJkdXAoY3R4LT5vcHQgLSAxKTsKIAkJCQkJKihjaGFyICopY3R4LT5hcmd2WzBdID0gJy0nOwogCQkJCQlnb3RvIHVua25vd247CisJCQkJY2FzZSBQQVJTRV9PUFRfTk9OX09QVElPTjoKKwkJCQljYXNlIFBBUlNFX09QVF9DT01QTEVURToKKwkJCQljYXNlIFBBUlNFX09QVF9IRUxQOgorCQkJCQlCVUcoInBhcnNlX3Nob3J0X29wdCgpIGNhbm5vdCByZXR1cm4gdGhlc2UiKTsKKwkJCQljYXNlIFBBUlNFX09QVF9ET05FOgorCQkJCQlicmVhazsKIAkJCQl9CiAJCQl9CiAJCQljb250aW51ZTsKIAkJfQogCi0JCWlmICghYXJnWzJdKSB7IC8qICItLSIgKi8KKwkJaWYgKCFhcmdbMl0gLyogIi0tIiAqLyB8fAorCQkgICAgIXN0cmNtcChhcmcgKyAyLCAiZW5kLW9mLW9wdGlvbnMiKSkgewogCQkJaWYgKCEoY3R4LT5mbGFncyAmIFBBUlNFX09QVF9LRUVQX0RBU0hEQVNIKSkgewogCQkJCWN0eC0+YXJnYy0tOwogCQkJCWN0eC0+YXJndisrOwpAQCAtNjAwLDE1ICs3OTEsMjIgQEAKIAkJaWYgKGludGVybmFsX2hlbHAgJiYgIXN0cmNtcChhcmcgKyAyLCAiaGVscCIpKQogCQkJZ290byBzaG93X3VzYWdlOwogCQlzd2l0Y2ggKHBhcnNlX2xvbmdfb3B0KGN0eCwgYXJnICsgMiwgb3B0aW9ucykpIHsKLQkJY2FzZSAtMToKKwkJY2FzZSBQQVJTRV9PUFRfRVJST1I6CiAJCQlyZXR1cm4gUEFSU0VfT1BUX0VSUk9SOwotCQljYXNlIC0yOgorCQljYXNlIFBBUlNFX09QVF9VTktOT1dOOgogCQkJZ290byB1bmtub3duOwotCQljYXNlIC0zOgorCQljYXNlIFBBUlNFX09QVF9IRUxQOgogCQkJZ290byBzaG93X3VzYWdlOworCQljYXNlIFBBUlNFX09QVF9OT05fT1BUSU9OOgorCQljYXNlIFBBUlNFX09QVF9DT01QTEVURToKKwkJCUJVRygicGFyc2VfbG9uZ19vcHQoKSBjYW5ub3QgcmV0dXJuIHRoZXNlIik7CisJCWNhc2UgUEFSU0VfT1BUX0RPTkU6CisJCQlicmVhazsKIAkJfQogCQljb250aW51ZTsKIHVua25vd246CisJCWlmIChjdHgtPmZsYWdzICYgUEFSU0VfT1BUX09ORV9TSE9UKQorCQkJYnJlYWs7CiAJCWlmICghKGN0eC0+ZmxhZ3MgJiBQQVJTRV9PUFRfS0VFUF9VTktOT1dOKSkKIAkJCXJldHVybiBQQVJTRV9PUFRfVU5LTk9XTjsKIAkJY3R4LT5vdXRbY3R4LT5jcGlkeCsrXSA9IGN0eC0+YXJndlswXTsKQEAgLTYyMiw2ICs4MjAsOSBAQAogCiBpbnQgcGFyc2Vfb3B0aW9uc19lbmQoc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqY3R4KQogeworCWlmIChjdHgtPmZsYWdzICYgUEFSU0VfT1BUX09ORV9TSE9UKQorCQlyZXR1cm4gY3R4LT50b3RhbCAtIGN0eC0+YXJnYzsKKwogCU1PVkVfQVJSQVkoY3R4LT5vdXQgKyBjdHgtPmNwaWR4LCBjdHgtPmFyZ3YsIGN0eC0+YXJnYyk7CiAJY3R4LT5vdXRbY3R4LT5jcGlkeCArIGN0eC0+YXJnY10gPSBOVUxMOwogCXJldHVybiBjdHgtPmNwaWR4ICsgY3R4LT5hcmdjOwpAQCAtNjMyLDggKzgzMywxNiBAQAogCQkgIGludCBmbGFncykKIHsKIAlzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90IGN0eDsKKwlzdHJ1Y3Qgb3B0aW9uICpyZWFsX29wdGlvbnM7CiAKLQlwYXJzZV9vcHRpb25zX3N0YXJ0KCZjdHgsIGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywgZmxhZ3MpOworCWRpc2FsbG93X2FiYnJldmlhdGVkX29wdGlvbnMgPQorCQlnaXRfZW52X2Jvb2woIkdJVF9URVNUX0RJU0FMTE9XX0FCQlJFVklBVEVEX09QVElPTlMiLCAwKTsKKworCW1lbXNldCgmY3R4LCAwLCBzaXplb2YoY3R4KSk7CisJcmVhbF9vcHRpb25zID0gcHJlcHJvY2Vzc19vcHRpb25zKCZjdHgsIG9wdGlvbnMpOworCWlmIChyZWFsX29wdGlvbnMpCisJCW9wdGlvbnMgPSByZWFsX29wdGlvbnM7CisJcGFyc2Vfb3B0aW9uc19zdGFydF8xKCZjdHgsIGFyZ2MsIGFyZ3YsIHByZWZpeCwgb3B0aW9ucywgZmxhZ3MpOwogCXN3aXRjaCAocGFyc2Vfb3B0aW9uc19zdGVwKCZjdHgsIG9wdGlvbnMsIHVzYWdlc3RyKSkgewogCWNhc2UgUEFSU0VfT1BUX0hFTFA6CiAJY2FzZSBQQVJTRV9PUFRfRVJST1I6CkBAIC02NDUsMTcgKzg1NCwxOSBAQAogCQlicmVhazsKIAlkZWZhdWx0OiAvKiBQQVJTRV9PUFRfVU5LTk9XTiAqLwogCQlpZiAoY3R4LmFyZ3ZbMF1bMV0gPT0gJy0nKSB7Ci0JCQllcnJvcigidW5rbm93biBvcHRpb24gYCVzJyIsIGN0eC5hcmd2WzBdICsgMik7CisJCQllcnJvcihfKCJ1bmtub3duIG9wdGlvbiBgJXMnIiksIGN0eC5hcmd2WzBdICsgMik7CiAJCX0gZWxzZSBpZiAoaXNhc2NpaSgqY3R4Lm9wdCkpIHsKLQkJCWVycm9yKCJ1bmtub3duIHN3aXRjaCBgJWMnIiwgKmN0eC5vcHQpOworCQkJZXJyb3IoXygidW5rbm93biBzd2l0Y2ggYCVjJyIpLCAqY3R4Lm9wdCk7CiAJCX0gZWxzZSB7Ci0JCQllcnJvcigidW5rbm93biBub24tYXNjaWkgb3B0aW9uIGluIHN0cmluZzogYCVzJyIsCisJCQllcnJvcihfKCJ1bmtub3duIG5vbi1hc2NpaSBvcHRpb24gaW4gc3RyaW5nOiBgJXMnIiksCiAJCQkgICAgICBjdHguYXJndlswXSk7CiAJCX0KIAkJdXNhZ2Vfd2l0aF9vcHRpb25zKHVzYWdlc3RyLCBvcHRpb25zKTsKIAl9CiAKIAlwcmVjb21wb3NlX2FyZ3YoYXJnYywgYXJndik7CisJZnJlZShyZWFsX29wdGlvbnMpOworCWZyZWUoY3R4LmFsaWFzX2dyb3Vwcyk7CiAJcmV0dXJuIHBhcnNlX29wdGlvbnNfZW5kKCZjdHgpOwogfQogCkBAIC03NTAsNiArOTYxLDEyIEBACiAJCQlmcHV0YygnXG4nLCBvdXRmaWxlKTsKIAkJCXBhZCA9IFVTQUdFX09QVFNfV0lEVEg7CiAJCX0KKwkJaWYgKG9wdHMtPnR5cGUgPT0gT1BUSU9OX0FMSUFTKSB7CisJCQlmcHJpbnRmKG91dGZpbGUsICIlKnMiLCBwYWQgKyBVU0FHRV9HQVAsICIiKTsKKwkJCWZwcmludGZfbG4ob3V0ZmlsZSwgXygiYWxpYXMgb2YgLS0lcyIpLAorCQkJCSAgIChjb25zdCBjaGFyICopb3B0cy0+dmFsdWUpOworCQkJY29udGludWU7CisJCX0KIAkJZnByaW50ZihvdXRmaWxlLCAiJSpzJXNcbiIsIHBhZCArIFVTQUdFX0dBUCwgIiIsIF8ob3B0cy0+aGVscCkpOwogCX0KIAlmcHV0YygnXG4nLCBvdXRmaWxlKTsKQEAgLTc3NSwxMiArOTkyLDE3IEBACiAJdXNhZ2Vfd2l0aF9vcHRpb25zKHVzYWdlc3RyLCBvcHRpb25zKTsKIH0KIAotI3VuZGVmIG9wdGVycm9yCi1pbnQgb3B0ZXJyb3IoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LCBjb25zdCBjaGFyICpyZWFzb24sIGludCBmbGFncykKK2NvbnN0IGNoYXIgKm9wdG5hbWUoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LCBpbnQgZmxhZ3MpCiB7CisJc3RhdGljIHN0cnVjdCBzdHJidWYgc2IgPSBTVFJCVUZfSU5JVDsKKworCXN0cmJ1Zl9yZXNldCgmc2IpOwogCWlmIChmbGFncyAmIE9QVF9TSE9SVCkKLQkJcmV0dXJuIGVycm9yKCJzd2l0Y2ggYCVjJyAlcyIsIG9wdC0+c2hvcnRfbmFtZSwgcmVhc29uKTsKLQlpZiAoZmxhZ3MgJiBPUFRfVU5TRVQpCi0JCXJldHVybiBlcnJvcigib3B0aW9uIGBuby0lcycgJXMiLCBvcHQtPmxvbmdfbmFtZSwgcmVhc29uKTsKLQlyZXR1cm4gZXJyb3IoIm9wdGlvbiBgJXMnICVzIiwgb3B0LT5sb25nX25hbWUsIHJlYXNvbik7CisJCXN0cmJ1Zl9hZGRmKCZzYiwgInN3aXRjaCBgJWMnIiwgb3B0LT5zaG9ydF9uYW1lKTsKKwllbHNlIGlmIChmbGFncyAmIE9QVF9VTlNFVCkKKwkJc3RyYnVmX2FkZGYoJnNiLCAib3B0aW9uIGBuby0lcyciLCBvcHQtPmxvbmdfbmFtZSk7CisJZWxzZQorCQlzdHJidWZfYWRkZigmc2IsICJvcHRpb24gYCVzJyIsIG9wdC0+bG9uZ19uYW1lKTsKKworCXJldHVybiBzYi5idWY7CiB9CmRpZmYgLS1naXQgYS9wYXJzZS1vcHRpb25zLmggYi9wYXJzZS1vcHRpb25zLmgKaW5kZXggYTY1MGE3ZC4uZmVjZTViYSAxMDA2NDQKLS0tIGEvcGFyc2Utb3B0aW9ucy5oCisrKyBiL3BhcnNlLW9wdGlvbnMuaApAQCAtMSwxOCArMSwyMyBAQAogI2lmbmRlZiBQQVJTRV9PUFRJT05TX0gKICNkZWZpbmUgUEFSU0VfT1BUSU9OU19ICiAKKy8qKgorICogUmVmZXIgdG8gRG9jdW1lbnRhdGlvbi90ZWNobmljYWwvYXBpLXBhcnNlLW9wdGlvbnMudHh0IGZvciB0aGUgQVBJIGRvYy4KKyAqLworCiBlbnVtIHBhcnNlX29wdF90eXBlIHsKIAkvKiBzcGVjaWFsIHR5cGVzICovCiAJT1BUSU9OX0VORCwKIAlPUFRJT05fQVJHVU1FTlQsCiAJT1BUSU9OX0dST1VQLAogCU9QVElPTl9OVU1CRVIsCisJT1BUSU9OX0FMSUFTLAogCS8qIG9wdGlvbnMgd2l0aCBubyBhcmd1bWVudHMgKi8KIAlPUFRJT05fQklULAogCU9QVElPTl9ORUdCSVQsCisJT1BUSU9OX0JJVE9QLAogCU9QVElPTl9DT1VOVFVQLAogCU9QVElPTl9TRVRfSU5ULAotCU9QVElPTl9DTURNT0RFLAogCS8qIG9wdGlvbnMgd2l0aCBhcmd1bWVudHMgKHVzdWFsbHkpICovCiAJT1BUSU9OX1NUUklORywKIAlPUFRJT05fSU5URUdFUiwKQEAgLTI3LDcgKzMyLDggQEAKIAlQQVJTRV9PUFRfU1RPUF9BVF9OT05fT1BUSU9OID0gMiwKIAlQQVJTRV9PUFRfS0VFUF9BUkdWMCA9IDQsCiAJUEFSU0VfT1BUX0tFRVBfVU5LTk9XTiA9IDgsCi0JUEFSU0VfT1BUX05PX0lOVEVSTkFMX0hFTFAgPSAxNgorCVBBUlNFX09QVF9OT19JTlRFUk5BTF9IRUxQID0gMTYsCisJUEFSU0VfT1BUX09ORV9TSE9UID0gMzIKIH07CiAKIGVudW0gcGFyc2Vfb3B0X29wdGlvbl9mbGFncyB7CkBAIC00MCwxNSArNDYsMjYgQEAKIAlQQVJTRV9PUFRfTElURVJBTF9BUkdIRUxQID0gNjQsCiAJUEFSU0VfT1BUX1NIRUxMX0VWQUwgPSAyNTYsCiAJUEFSU0VfT1BUX05PQ09NUExFVEUgPSA1MTIsCi0JUEFSU0VfT1BUX0NPTVBfQVJHID0gMTAyNAorCVBBUlNFX09QVF9DT01QX0FSRyA9IDEwMjQsCisJUEFSU0VfT1BUX0NNRE1PREUgPSAyMDQ4Cit9OworCitlbnVtIHBhcnNlX29wdF9yZXN1bHQgeworCVBBUlNFX09QVF9DT01QTEVURSA9IC0zLAorCVBBUlNFX09QVF9IRUxQID0gLTIsCisJUEFSU0VfT1BUX0VSUk9SID0gLTEsCS8qIG11c3QgYmUgdGhlIHNhbWUgYXMgZXJyb3IoKSAqLworCVBBUlNFX09QVF9ET05FID0gMCwJLyogZml4ZWQgc28gdGhhdCAicmV0dXJuIDAiIHdvcmtzICovCisJUEFSU0VfT1BUX05PTl9PUFRJT04sCisJUEFSU0VfT1BUX1VOS05PV04KIH07CiAKIHN0cnVjdCBvcHRpb247CiB0eXBlZGVmIGludCBwYXJzZV9vcHRfY2IoY29uc3Qgc3RydWN0IG9wdGlvbiAqLCBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCk7CiAKIHN0cnVjdCBwYXJzZV9vcHRfY3R4X3Q7Ci10eXBlZGVmIGludCBwYXJzZV9vcHRfbGxfY2Ioc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqY3R4LAotCQkJCWNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwgaW50IHVuc2V0KTsKK3R5cGVkZWYgZW51bSBwYXJzZV9vcHRfcmVzdWx0IHBhcnNlX29wdF9sbF9jYihzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpjdHgsCisJCQkJCSAgICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKKwkJCQkJICAgICAgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpOwogCiAvKgogICogYHR5cGVgOjoKQEAgLTk4LDEzICsxMTUsMTYgQEAKICAqCQkJIHRoZSBvcHRpb24gdGFrZXMgb3B0aW9uYWwgYXJndW1lbnQuCiAgKgogICogYGNhbGxiYWNrYDo6Ci0gKiAgIHBvaW50ZXIgdG8gdGhlIGNhbGxiYWNrIHRvIHVzZSBmb3IgT1BUSU9OX0NBTExCQUNLIG9yCi0gKiAgIE9QVElPTl9MT1dMRVZFTF9DQUxMQkFDSy4KKyAqICAgcG9pbnRlciB0byB0aGUgY2FsbGJhY2sgdG8gdXNlIGZvciBPUFRJT05fQ0FMTEJBQ0sKICAqCiAgKiBgZGVmdmFsYDo6CiAgKiAgIGRlZmF1bHQgdmFsdWUgdG8gZmlsbCAoKi0+dmFsdWUpIHdpdGggZm9yIFBBUlNFX09QVF9PUFRBUkcuCiAgKiAgIE9QVElPTl97QklULFNFVF9JTlR9IHN0b3JlIHRoZSB7bWFzayxpbnRlZ2VyfSB0byBwdXQgaW4gdGhlIHZhbHVlIHdoZW4gbWV0LgogICogICBDQUxMQkFDS1MgY2FuIHVzZSBpdCBsaWtlIHRoZXkgd2FudC4KKyAqCisgKiBgbGxfY2FsbGJhY2tgOjoKKyAqICAgcG9pbnRlciB0byB0aGUgY2FsbGJhY2sgdG8gdXNlIGZvciBPUFRJT05fTE9XTEVWRUxfQ0FMTEJBQ0sKKyAqCiAgKi8KIHN0cnVjdCBvcHRpb24gewogCWVudW0gcGFyc2Vfb3B0X3R5cGUgdHlwZTsKQEAgLTExNyw2ICsxMzcsOCBAQAogCWludCBmbGFnczsKIAlwYXJzZV9vcHRfY2IgKmNhbGxiYWNrOwogCWludHB0cl90IGRlZnZhbDsKKwlwYXJzZV9vcHRfbGxfY2IgKmxsX2NhbGxiYWNrOworCWludHB0cl90IGV4dHJhOwogfTsKIAogI2RlZmluZSBPUFRfQklUX0YocywgbCwgdiwgaCwgYiwgZikgeyBPUFRJT05fQklULCAocyksIChsKSwgKHYpLCBOVUxMLCAoaCksIFwKQEAgLTEyNiwxMiArMTQ4LDE5IEBACiAjZGVmaW5lIE9QVF9TRVRfSU5UX0YocywgbCwgdiwgaCwgaSwgZikgeyBPUFRJT05fU0VUX0lOVCwgKHMpLCAobCksICh2KSwgTlVMTCwgXAogCQkJCQkgIChoKSwgUEFSU0VfT1BUX05PQVJHIHwgKGYpLCBOVUxMLCAoaSkgfQogI2RlZmluZSBPUFRfQk9PTF9GKHMsIGwsIHYsIGgsIGYpICAgT1BUX1NFVF9JTlRfRihzLCBsLCB2LCBoLCAxLCBmKQorI2RlZmluZSBPUFRfQ0FMTEJBQ0tfRihzLCBsLCB2LCBhLCBoLCBmLCBjYikJCQlcCisJeyBPUFRJT05fQ0FMTEJBQ0ssIChzKSwgKGwpLCAodiksIChhKSwgKGgpLCAoZiksIChjYikgfQorI2RlZmluZSBPUFRfU1RSSU5HX0YocywgbCwgdiwgYSwgaCwgZikgICB7IE9QVElPTl9TVFJJTkcsICAocyksIChsKSwgKHYpLCAoYSksIChoKSwgKGYpIH0KKyNkZWZpbmUgT1BUX0lOVEVHRVJfRihzLCBsLCB2LCBoLCBmKSAgICAgeyBPUFRJT05fSU5URUdFUiwgKHMpLCAobCksICh2KSwgTl8oIm4iKSwgKGgpLCAoZikgfQogCiAjZGVmaW5lIE9QVF9FTkQoKSAgICAgICAgICAgICAgICAgICB7IE9QVElPTl9FTkQgfQotI2RlZmluZSBPUFRfQVJHVU1FTlQobCwgaCkgICAgICAgICAgeyBPUFRJT05fQVJHVU1FTlQsIDAsIChsKSwgTlVMTCwgTlVMTCwgXAotCQkJCSAgICAgIChoKSwgUEFSU0VfT1BUX05PQVJHfQorI2RlZmluZSBPUFRfQVJHVU1FTlQobCwgdiwgaCkgICAgICAgeyBPUFRJT05fQVJHVU1FTlQsIDAsIChsKSwgKHYpLCBOVUxMLCBcCisJCQkJICAgICAgKGgpLCBQQVJTRV9PUFRfTk9BUkcsIE5VTEwsIDEgfQogI2RlZmluZSBPUFRfR1JPVVAoaCkgICAgICAgICAgICAgICAgeyBPUFRJT05fR1JPVVAsIDAsIE5VTEwsIE5VTEwsIE5VTEwsIChoKSB9CiAjZGVmaW5lIE9QVF9CSVQocywgbCwgdiwgaCwgYikgICAgICBPUFRfQklUX0YocywgbCwgdiwgaCwgYiwgMCkKKyNkZWZpbmUgT1BUX0JJVE9QKHMsIGwsIHYsIGgsIHNldCwgY2xlYXIpIHsgT1BUSU9OX0JJVE9QLCAocyksIChsKSwgKHYpLCBOVUxMLCAoaCksIFwKKwkJCQkJICAgIFBBUlNFX09QVF9OT0FSR3xQQVJTRV9PUFRfTk9ORUcsIE5VTEwsIFwKKwkJCQkJICAgIChzZXQpLCBOVUxMLCAoY2xlYXIpIH0KICNkZWZpbmUgT1BUX05FR0JJVChzLCBsLCB2LCBoLCBiKSAgIHsgT1BUSU9OX05FR0JJVCwgKHMpLCAobCksICh2KSwgTlVMTCwgXAogCQkJCSAgICAgIChoKSwgUEFSU0VfT1BUX05PQVJHLCBOVUxMLCAoYikgfQogI2RlZmluZSBPUFRfQ09VTlRVUChzLCBsLCB2LCBoKSAgICAgT1BUX0NPVU5UVVBfRihzLCBsLCB2LCBoLCAwKQpAQCAtMTM5LDEyICsxNjgsMTIgQEAKICNkZWZpbmUgT1BUX0JPT0wocywgbCwgdiwgaCkgICAgICAgIE9QVF9CT09MX0YocywgbCwgdiwgaCwgMCkKICNkZWZpbmUgT1BUX0hJRERFTl9CT09MKHMsIGwsIHYsIGgpIHsgT1BUSU9OX1NFVF9JTlQsIChzKSwgKGwpLCAodiksIE5VTEwsIFwKIAkJCQkgICAgICAoaCksIFBBUlNFX09QVF9OT0FSRyB8IFBBUlNFX09QVF9ISURERU4sIE5VTEwsIDF9Ci0jZGVmaW5lIE9QVF9DTURNT0RFKHMsIGwsIHYsIGgsIGkpICB7IE9QVElPTl9DTURNT0RFLCAocyksIChsKSwgKHYpLCBOVUxMLCBcCi0JCQkJICAgICAgKGgpLCBQQVJTRV9PUFRfTk9BUkd8UEFSU0VfT1BUX05PTkVHLCBOVUxMLCAoaSkgfQotI2RlZmluZSBPUFRfSU5URUdFUihzLCBsLCB2LCBoKSAgICAgeyBPUFRJT05fSU5URUdFUiwgKHMpLCAobCksICh2KSwgTl8oIm4iKSwgKGgpIH0KKyNkZWZpbmUgT1BUX0NNRE1PREUocywgbCwgdiwgaCwgaSkgIHsgT1BUSU9OX1NFVF9JTlQsIChzKSwgKGwpLCAodiksIE5VTEwsIFwKKwkJCQkgICAgICAoaCksIFBBUlNFX09QVF9DTURNT0RFfFBBUlNFX09QVF9OT0FSR3xQQVJTRV9PUFRfTk9ORUcsIE5VTEwsIChpKSB9CisjZGVmaW5lIE9QVF9JTlRFR0VSKHMsIGwsIHYsIGgpICAgICBPUFRfSU5URUdFUl9GKHMsIGwsIHYsIGgsIDApCiAjZGVmaW5lIE9QVF9NQUdOSVRVREUocywgbCwgdiwgaCkgICB7IE9QVElPTl9NQUdOSVRVREUsIChzKSwgKGwpLCAodiksIFwKIAkJCQkgICAgICBOXygibiIpLCAoaCksIFBBUlNFX09QVF9OT05FRyB9Ci0jZGVmaW5lIE9QVF9TVFJJTkcocywgbCwgdiwgYSwgaCkgICB7IE9QVElPTl9TVFJJTkcsICAocyksIChsKSwgKHYpLCAoYSksIChoKSB9CisjZGVmaW5lIE9QVF9TVFJJTkcocywgbCwgdiwgYSwgaCkgICBPUFRfU1RSSU5HX0YocywgbCwgdiwgYSwgaCwgMCkKICNkZWZpbmUgT1BUX1NUUklOR19MSVNUKHMsIGwsIHYsIGEsIGgpIFwKIAkJCQkgICAgeyBPUFRJT05fQ0FMTEJBQ0ssIChzKSwgKGwpLCAodiksIChhKSwgXAogCQkJCSAgICAgIChoKSwgMCwgJnBhcnNlX29wdF9zdHJpbmdfbGlzdCB9CkBAIC0xNTMsOCArMTgyLDcgQEAKICNkZWZpbmUgT1BUX0VYUElSWV9EQVRFKHMsIGwsIHYsIGgpIFwKIAl7IE9QVElPTl9DQUxMQkFDSywgKHMpLCAobCksICh2KSwgTl8oImV4cGlyeS1kYXRlIiksKGgpLCAwLAlcCiAJICBwYXJzZV9vcHRfZXhwaXJ5X2RhdGVfY2IgfQotI2RlZmluZSBPUFRfQ0FMTEJBQ0socywgbCwgdiwgYSwgaCwgZikgXAotCXsgT1BUSU9OX0NBTExCQUNLLCAocyksIChsKSwgKHYpLCAoYSksIChoKSwgMCwgKGYpIH0KKyNkZWZpbmUgT1BUX0NBTExCQUNLKHMsIGwsIHYsIGEsIGgsIGYpIE9QVF9DQUxMQkFDS19GKHMsIGwsIHYsIGEsIGgsIDAsIGYpCiAjZGVmaW5lIE9QVF9OVU1CRVJfQ0FMTEJBQ0sodiwgaCwgZikgXAogCXsgT1BUSU9OX05VTUJFUiwgMCwgTlVMTCwgKHYpLCBOVUxMLCAoaCksIFwKIAkgIFBBUlNFX09QVF9OT0FSRyB8IFBBUlNFX09QVF9OT05FRywgKGYpIH0KQEAgLTE2OSwyNyArMTk3LDM1IEBACiAJICBOXygibm8tb3AgKGJhY2t3YXJkIGNvbXBhdGliaWxpdHkpIiksCQlcCiAJICBQQVJTRV9PUFRfSElEREVOIHwgUEFSU0VfT1BUX05PQVJHLCBwYXJzZV9vcHRfbm9vcF9jYiB9CiAKLS8qIHBhcnNlX29wdGlvbnMoKSB3aWxsIGZpbHRlciBvdXQgdGhlIHByb2Nlc3NlZCBvcHRpb25zIGFuZCBsZWF2ZSB0aGUKLSAqIG5vbi1vcHRpb24gYXJndW1lbnRzIGluIGFyZ3ZbXS4gdXNhZ2VzdHIgc3RyaW5ncyBzaG91bGQgYmUgbWFya2VkCi0gKiBmb3IgdHJhbnNsYXRpb24gd2l0aCBOXygpLgorI2RlZmluZSBPUFRfQUxJQVMocywgbCwgc291cmNlX2xvbmdfbmFtZSkgXAorCXsgT1BUSU9OX0FMSUFTLCAocyksIChsKSwgKHNvdXJjZV9sb25nX25hbWUpIH0KKworLyoKKyAqIHBhcnNlX29wdGlvbnMoKSB3aWxsIGZpbHRlciBvdXQgdGhlIHByb2Nlc3NlZCBvcHRpb25zIGFuZCBsZWF2ZSB0aGUKKyAqIG5vbi1vcHRpb24gYXJndW1lbnRzIGluIGFyZ3ZbXS4gYXJndjAgaXMgYXNzdW1lZCBwcm9ncmFtIG5hbWUgYW5kCisgKiBza2lwcGVkLgorICoKKyAqIHVzYWdlc3RyIHN0cmluZ3Mgc2hvdWxkIGJlIG1hcmtlZCBmb3IgdHJhbnNsYXRpb24gd2l0aCBOXygpLgorICoKICAqIFJldHVybnMgdGhlIG51bWJlciBvZiBhcmd1bWVudHMgbGVmdCBpbiBhcmd2W10uCisgKgorICogSW4gb25lLXNob3QgbW9kZSwgYXJndjAgaXMgbm90IGEgcHJvZ3JhbSBuYW1lLCBhcmd2W10gaXMgbGVmdAorICogdW50b3VjaGVkIGFuZCBwYXJzZV9vcHRpb25zKCkgcmV0dXJucyB0aGUgbnVtYmVyIG9mIG9wdGlvbnMKKyAqIHByb2Nlc3NlZC4KICAqLwotZXh0ZXJuIGludCBwYXJzZV9vcHRpb25zKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY29uc3QgY2hhciAqcHJlZml4LAotICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdGlvbnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqIGNvbnN0IHVzYWdlc3RyW10sIGludCBmbGFncyk7CitpbnQgcGFyc2Vfb3B0aW9ucyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCwKKwkJICBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zLAorCQkgIGNvbnN0IGNoYXIgKiBjb25zdCB1c2FnZXN0cltdLCBpbnQgZmxhZ3MpOwogCi1leHRlcm4gTk9SRVRVUk4gdm9pZCB1c2FnZV93aXRoX29wdGlvbnMoY29uc3QgY2hhciAqIGNvbnN0ICp1c2FnZXN0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zKTsKK05PUkVUVVJOIHZvaWQgdXNhZ2Vfd2l0aF9vcHRpb25zKGNvbnN0IGNoYXIgKiBjb25zdCAqdXNhZ2VzdHIsCisJCQkJIGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdGlvbnMpOwogCi1leHRlcm4gTk9SRVRVUk4gdm9pZCB1c2FnZV9tc2dfb3B0KGNvbnN0IGNoYXIgKm1zZywKLQkJCQkgICBjb25zdCBjaGFyICogY29uc3QgKnVzYWdlc3RyLAotCQkJCSAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdGlvbnMpOworTk9SRVRVUk4gdm9pZCB1c2FnZV9tc2dfb3B0KGNvbnN0IGNoYXIgKm1zZywKKwkJCSAgICBjb25zdCBjaGFyICogY29uc3QgKnVzYWdlc3RyLAorCQkJICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdGlvbnMpOwogCi1leHRlcm4gaW50IG9wdGJ1Zyhjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHQsIGNvbnN0IGNoYXIgKnJlYXNvbik7Ci1leHRlcm4gaW50IG9wdGVycm9yKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwgY29uc3QgY2hhciAqcmVhc29uLCBpbnQgZmxhZ3MpOwotI2lmIGRlZmluZWQoX19HTlVDX18pCi0jZGVmaW5lIG9wdGVycm9yKG8scixmKSAob3B0ZXJyb3IoKG8pLChyKSwoZikpLCBjb25zdF9lcnJvcigpKQotI2VuZGlmCitpbnQgb3B0YnVnKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwgY29uc3QgY2hhciAqcmVhc29uKTsKK2NvbnN0IGNoYXIgKm9wdG5hbWUoY29uc3Qgc3RydWN0IG9wdGlvbiAqb3B0LCBpbnQgZmxhZ3MpOwogCiAvKgogICogVXNlIHRoZXNlIGFzc2VydGlvbnMgZm9yIGNhbGxiYWNrcyB0aGF0IGV4cGVjdCB0byBiZSBjYWxsZWQgd2l0aCBOT05FRyBhbmQKQEAgLTIwNSwxNiArMjQxLDE4IEBACiAJCUJVRygib3B0aW9uIGNhbGxiYWNrIGRvZXMgbm90IGV4cGVjdCBhbiBhcmd1bWVudCIpOyBcCiB9IHdoaWxlICgwKQogCi0vKi0tLS0tIGluY3JlbWVudGFsIGFkdmFuY2VkIEFQSXMgLS0tLS0qLworLyoKKyAqIFNpbWlsYXIgdG8gdGhlIGFzc2VydGlvbnMgYWJvdmUsIGJ1dCBjaGVja3MgdGhhdCAiYXJnIiBpcyBhbHdheXMgbm9uLU5VTEwuCisgKiBUaGlzIGFzc2VydGlvbiBhbHNvIGltcGxpZXMgQlVHX09OX09QVF9ORUcoKSwgbGV0dGluZyB5b3UgZGVjbGFyZSBib3RoCisgKiBhc3NlcnRpb25zIGluIGEgc2luZ2xlIGxpbmUuCisgKi8KKyNkZWZpbmUgQlVHX09OX09QVF9ORUdfTk9BUkcodW5zZXQsIGFyZykgZG8geyBcCisJQlVHX09OX09QVF9ORUcodW5zZXQpOyBcCisJaWYoIShhcmcpKSBcCisJCUJVRygib3B0aW9uIGNhbGxiYWNrIGV4cGVjdHMgYW4gYXJndW1lbnQiKTsgXAorfSB3aGlsZSgwKQogCi1lbnVtIHsKLQlQQVJTRV9PUFRfQ09NUExFVEUgPSAtMiwKLQlQQVJTRV9PUFRfSEVMUCA9IC0xLAotCVBBUlNFX09QVF9ET05FLAotCVBBUlNFX09QVF9OT05fT1BUSU9OLAotCVBBUlNFX09QVF9FUlJPUiwKLQlQQVJTRV9PUFRfVU5LTk9XTgotfTsKKy8qLS0tLS0gaW5jcmVtZW50YWwgYWR2YW5jZWQgQVBJcyAtLS0tLSovCiAKIC8qCiAgKiBJdCdzIG9rYXkgZm9yIHRoZSBjYWxsZXIgdG8gY29uc3VtZSBhcmd2L2FyZ2MgaW4gdGhlIHVzdWFsIHdheS4KQEAgLTIyOCwzMyArMjY2LDQyIEBACiAJY29uc3QgY2hhciAqb3B0OwogCWludCBmbGFnczsKIAljb25zdCBjaGFyICpwcmVmaXg7CisJY29uc3QgY2hhciAqKmFsaWFzX2dyb3VwczsgLyogbXVzdCBiZSBpbiBncm91cHMgb2YgMyBlbGVtZW50cyEgKi8KKwlzdHJ1Y3Qgb3B0aW9uICp1cGRhdGVkX29wdGlvbnM7CiB9OwogCi1leHRlcm4gdm9pZCBwYXJzZV9vcHRpb25zX3N0YXJ0KHN0cnVjdCBwYXJzZV9vcHRfY3R4X3QgKmN0eCwKLQkJCQlpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCwKLQkJCQljb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zLCBpbnQgZmxhZ3MpOwordm9pZCBwYXJzZV9vcHRpb25zX3N0YXJ0KHN0cnVjdCBwYXJzZV9vcHRfY3R4X3QgKmN0eCwKKwkJCSBpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCwKKwkJCSBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zLCBpbnQgZmxhZ3MpOwogCi1leHRlcm4gaW50IHBhcnNlX29wdGlvbnNfc3RlcChzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpjdHgsCi0JCQkgICAgICBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zLAotCQkJICAgICAgY29uc3QgY2hhciAqIGNvbnN0IHVzYWdlc3RyW10pOworaW50IHBhcnNlX29wdGlvbnNfc3RlcChzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpjdHgsCisJCSAgICAgICBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zLAorCQkgICAgICAgY29uc3QgY2hhciAqIGNvbnN0IHVzYWdlc3RyW10pOwogCi1leHRlcm4gaW50IHBhcnNlX29wdGlvbnNfZW5kKHN0cnVjdCBwYXJzZV9vcHRfY3R4X3QgKmN0eCk7CitpbnQgcGFyc2Vfb3B0aW9uc19lbmQoc3RydWN0IHBhcnNlX29wdF9jdHhfdCAqY3R4KTsKIAotZXh0ZXJuIHN0cnVjdCBvcHRpb24gKnBhcnNlX29wdGlvbnNfY29uY2F0KHN0cnVjdCBvcHRpb24gKmEsIHN0cnVjdCBvcHRpb24gKmIpOworc3RydWN0IG9wdGlvbiAqcGFyc2Vfb3B0aW9uc19kdXAoY29uc3Qgc3RydWN0IG9wdGlvbiAqYSk7CitzdHJ1Y3Qgb3B0aW9uICpwYXJzZV9vcHRpb25zX2NvbmNhdChjb25zdCBzdHJ1Y3Qgb3B0aW9uICphLCBjb25zdCBzdHJ1Y3Qgb3B0aW9uICpiKTsKIAogLyotLS0tLSBzb21lIG9mdGVuIHVzZWQgb3B0aW9ucyAtLS0tLSovCi1leHRlcm4gaW50IHBhcnNlX29wdF9hYmJyZXZfY2IoY29uc3Qgc3RydWN0IG9wdGlvbiAqLCBjb25zdCBjaGFyICosIGludCk7Ci1leHRlcm4gaW50IHBhcnNlX29wdF9leHBpcnlfZGF0ZV9jYihjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKiwgaW50KTsKLWV4dGVybiBpbnQgcGFyc2Vfb3B0X2NvbG9yX2ZsYWdfY2IoY29uc3Qgc3RydWN0IG9wdGlvbiAqLCBjb25zdCBjaGFyICosIGludCk7Ci1leHRlcm4gaW50IHBhcnNlX29wdF92ZXJib3NpdHlfY2IoY29uc3Qgc3RydWN0IG9wdGlvbiAqLCBjb25zdCBjaGFyICosIGludCk7Ci1leHRlcm4gaW50IHBhcnNlX29wdF9vYmplY3RfbmFtZShjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKiwgaW50KTsKLWV4dGVybiBpbnQgcGFyc2Vfb3B0X2NvbW1pdHMoY29uc3Qgc3RydWN0IG9wdGlvbiAqLCBjb25zdCBjaGFyICosIGludCk7Ci1leHRlcm4gaW50IHBhcnNlX29wdF90ZXJ0aWFyeShjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKiwgaW50KTsKLWV4dGVybiBpbnQgcGFyc2Vfb3B0X3N0cmluZ19saXN0KGNvbnN0IHN0cnVjdCBvcHRpb24gKiwgY29uc3QgY2hhciAqLCBpbnQpOwotZXh0ZXJuIGludCBwYXJzZV9vcHRfbm9vcF9jYihjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKiwgaW50KTsKLWV4dGVybiBpbnQgcGFyc2Vfb3B0X3Vua25vd25fY2IoY29uc3Qgc3RydWN0IG9wdGlvbiAqLCBjb25zdCBjaGFyICosIGludCk7Ci1leHRlcm4gaW50IHBhcnNlX29wdF9wYXNzdGhydShjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKiwgaW50KTsKLWV4dGVybiBpbnQgcGFyc2Vfb3B0X3Bhc3N0aHJ1X2FyZ3YoY29uc3Qgc3RydWN0IG9wdGlvbiAqLCBjb25zdCBjaGFyICosIGludCk7CitpbnQgcGFyc2Vfb3B0X2FiYnJldl9jYihjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKiwgaW50KTsKK2ludCBwYXJzZV9vcHRfZXhwaXJ5X2RhdGVfY2IoY29uc3Qgc3RydWN0IG9wdGlvbiAqLCBjb25zdCBjaGFyICosIGludCk7CitpbnQgcGFyc2Vfb3B0X2NvbG9yX2ZsYWdfY2IoY29uc3Qgc3RydWN0IG9wdGlvbiAqLCBjb25zdCBjaGFyICosIGludCk7CitpbnQgcGFyc2Vfb3B0X3ZlcmJvc2l0eV9jYihjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKiwgaW50KTsKKy8qIHZhbHVlIGlzIHN0cnVjdCBvaWRfYXJyYXkqICovCitpbnQgcGFyc2Vfb3B0X29iamVjdF9uYW1lKGNvbnN0IHN0cnVjdCBvcHRpb24gKiwgY29uc3QgY2hhciAqLCBpbnQpOworLyogdmFsdWUgaXMgc3RydWN0IG9iamVjdF9pZCogKi8KK2ludCBwYXJzZV9vcHRfb2JqZWN0X2lkKGNvbnN0IHN0cnVjdCBvcHRpb24gKiwgY29uc3QgY2hhciAqLCBpbnQpOworaW50IHBhcnNlX29wdF9jb21taXRzKGNvbnN0IHN0cnVjdCBvcHRpb24gKiwgY29uc3QgY2hhciAqLCBpbnQpOworaW50IHBhcnNlX29wdF9jb21taXQoY29uc3Qgc3RydWN0IG9wdGlvbiAqLCBjb25zdCBjaGFyICosIGludCk7CitpbnQgcGFyc2Vfb3B0X3RlcnRpYXJ5KGNvbnN0IHN0cnVjdCBvcHRpb24gKiwgY29uc3QgY2hhciAqLCBpbnQpOworaW50IHBhcnNlX29wdF9zdHJpbmdfbGlzdChjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKiwgaW50KTsKK2ludCBwYXJzZV9vcHRfbm9vcF9jYihjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKiwgaW50KTsKK2VudW0gcGFyc2Vfb3B0X3Jlc3VsdCBwYXJzZV9vcHRfdW5rbm93bl9jYihzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpjdHgsCisJCQkJCSAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKiwKKwkJCQkJICAgY29uc3QgY2hhciAqLCBpbnQpOworaW50IHBhcnNlX29wdF9wYXNzdGhydShjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKiwgaW50KTsKK2ludCBwYXJzZV9vcHRfcGFzc3RocnVfYXJndihjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKiwgaW50KTsKIAogI2RlZmluZSBPUFRfX1ZFUkJPU0UodmFyLCBoKSAgT1BUX0NPVU5UVVAoJ3YnLCAidmVyYm9zZSIsICh2YXIpLCAoaCkpCiAjZGVmaW5lIE9QVF9fUVVJRVQodmFyLCBoKSAgICBPUFRfQ09VTlRVUCgncScsICJxdWlldCIsICAgKHZhciksIChoKSkKQEAgLTI4Niw1ICszMzMsOCBAQAogI2RlZmluZSBPUFRfTk9fQ09OVEFJTlModiwgaCkgX09QVF9DT05UQUlOU19PUl9XSVRIKCJuby1jb250YWlucyIsIHYsIGgsIFBBUlNFX09QVF9OT05FRykKICNkZWZpbmUgT1BUX1dJVEgodiwgaCkgX09QVF9DT05UQUlOU19PUl9XSVRIKCJ3aXRoIiwgdiwgaCwgUEFSU0VfT1BUX0hJRERFTiB8IFBBUlNFX09QVF9OT05FRykKICNkZWZpbmUgT1BUX1dJVEhPVVQodiwgaCkgX09QVF9DT05UQUlOU19PUl9XSVRIKCJ3aXRob3V0IiwgdiwgaCwgUEFSU0VfT1BUX0hJRERFTiB8IFBBUlNFX09QVF9OT05FRykKKyNkZWZpbmUgT1BUX0NMRUFOVVAodikgT1BUX1NUUklORygwLCAiY2xlYW51cCIsIHYsIE5fKCJtb2RlIiksIE5fKCJob3cgdG8gc3RyaXAgc3BhY2VzIGFuZCAjY29tbWVudHMgZnJvbSBtZXNzYWdlIikpCisjZGVmaW5lIE9QVF9QQVRIU1BFQ19GUk9NX0ZJTEUodikgT1BUX0ZJTEVOQU1FKDAsICJwYXRoc3BlYy1mcm9tLWZpbGUiLCB2LCBOXygicmVhZCBwYXRoc3BlYyBmcm9tIGZpbGUiKSkKKyNkZWZpbmUgT1BUX1BBVEhTUEVDX0ZJTEVfTlVMKHYpICBPUFRfQk9PTCgwLCAicGF0aHNwZWMtZmlsZS1udWwiLCB2LCBOXygid2l0aCAtLXBhdGhzcGVjLWZyb20tZmlsZSwgcGF0aHNwZWMgZWxlbWVudHMgYXJlIHNlcGFyYXRlZCB3aXRoIE5VTCBjaGFyYWN0ZXIiKSkKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9wYXRjaC1pZHMuYyBiL3BhdGNoLWlkcy5jCmluZGV4IGMyNjJlMWIuLjEyYWE2ZDQgMTAwNjQ0Ci0tLSBhL3BhdGNoLWlkcy5jCisrKyBiL3BhdGNoLWlkcy5jCkBAIC0xMSw3ICsxMSw3IEBACiB9CiAKIGludCBjb21taXRfcGF0Y2hfaWQoc3RydWN0IGNvbW1pdCAqY29tbWl0LCBzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHRpb25zLAotCQkgICAgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBpbnQgZGlmZl9oZWFkZXJfb25seSkKKwkJICAgIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgaW50IGRpZmZfaGVhZGVyX29ubHksIGludCBzdGFibGUpCiB7CiAJaWYgKCFwYXRjaF9pZF9kZWZpbmVkKGNvbW1pdCkpCiAJCXJldHVybiAtMTsKQEAgLTIyLDcgKzIyLDcgQEAKIAllbHNlCiAJCWRpZmZfcm9vdF90cmVlX29pZCgmY29tbWl0LT5vYmplY3Qub2lkLCAiIiwgb3B0aW9ucyk7CiAJZGlmZmNvcmVfc3RkKG9wdGlvbnMpOwotCXJldHVybiBkaWZmX2ZsdXNoX3BhdGNoX2lkKG9wdGlvbnMsIG9pZCwgZGlmZl9oZWFkZXJfb25seSk7CisJcmV0dXJuIGRpZmZfZmx1c2hfcGF0Y2hfaWQob3B0aW9ucywgb2lkLCBkaWZmX2hlYWRlcl9vbmx5LCBzdGFibGUpOwogfQogCiAvKgpAQCAtMzYsMjEgKzM2LDIzIEBACiAgKiBhbnkgc2lnbmlmaWNhbmNlOyBvbmx5IHRoYXQgaXQgaXMgbm9uLXplcm8gbWF0dGVycy4KICAqLwogc3RhdGljIGludCBwYXRjaF9pZF9uZXEoY29uc3Qgdm9pZCAqY21wZm5fZGF0YSwKLQkJCWNvbnN0IHZvaWQgKmVudHJ5LAotCQkJY29uc3Qgdm9pZCAqZW50cnlfb3Jfa2V5LAorCQkJY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmVwdHIsCisJCQljb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAogCQkJY29uc3Qgdm9pZCAqdW51c2VkX2tleWRhdGEpCiB7CiAJLyogTkVFRFNXT1JLOiBjb25zdCBjb3JyZWN0bmVzcz8gKi8KIAlzdHJ1Y3QgZGlmZl9vcHRpb25zICpvcHQgPSAodm9pZCAqKWNtcGZuX2RhdGE7Ci0Jc3RydWN0IHBhdGNoX2lkICphID0gKHZvaWQgKillbnRyeTsKLQlzdHJ1Y3QgcGF0Y2hfaWQgKmIgPSAodm9pZCAqKWVudHJ5X29yX2tleTsKKwlzdHJ1Y3QgcGF0Y2hfaWQgKmEsICpiOworCisJYSA9IGNvbnRhaW5lcl9vZihlcHRyLCBzdHJ1Y3QgcGF0Y2hfaWQsIGVudCk7CisJYiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIHN0cnVjdCBwYXRjaF9pZCwgZW50KTsKIAogCWlmIChpc19udWxsX29pZCgmYS0+cGF0Y2hfaWQpICYmCi0JICAgIGNvbW1pdF9wYXRjaF9pZChhLT5jb21taXQsIG9wdCwgJmEtPnBhdGNoX2lkLCAwKSkKKwkgICAgY29tbWl0X3BhdGNoX2lkKGEtPmNvbW1pdCwgb3B0LCAmYS0+cGF0Y2hfaWQsIDAsIDApKQogCQlyZXR1cm4gZXJyb3IoIkNvdWxkIG5vdCBnZXQgcGF0Y2ggSUQgZm9yICVzIiwKIAkJCW9pZF90b19oZXgoJmEtPmNvbW1pdC0+b2JqZWN0Lm9pZCkpOwogCWlmIChpc19udWxsX29pZCgmYi0+cGF0Y2hfaWQpICYmCi0JICAgIGNvbW1pdF9wYXRjaF9pZChiLT5jb21taXQsIG9wdCwgJmItPnBhdGNoX2lkLCAwKSkKKwkgICAgY29tbWl0X3BhdGNoX2lkKGItPmNvbW1pdCwgb3B0LCAmYi0+cGF0Y2hfaWQsIDAsIDApKQogCQlyZXR1cm4gZXJyb3IoIkNvdWxkIG5vdCBnZXQgcGF0Y2ggSUQgZm9yICVzIiwKIAkJCW9pZF90b19oZXgoJmItPmNvbW1pdC0+b2JqZWN0Lm9pZCkpOwogCXJldHVybiAhb2lkZXEoJmEtPnBhdGNoX2lkLCAmYi0+cGF0Y2hfaWQpOwpAQCAtNjksNyArNzEsNyBAQAogCiBpbnQgZnJlZV9wYXRjaF9pZHMoc3RydWN0IHBhdGNoX2lkcyAqaWRzKQogewotCWhhc2htYXBfZnJlZSgmaWRzLT5wYXRjaGVzLCAxKTsKKwloYXNobWFwX2ZyZWVfZW50cmllcygmaWRzLT5wYXRjaGVzLCBzdHJ1Y3QgcGF0Y2hfaWQsIGVudCk7CiAJcmV0dXJuIDA7CiB9CiAKQEAgLTgwLDEwICs4MiwxMCBAQAogCXN0cnVjdCBvYmplY3RfaWQgaGVhZGVyX29ubHlfcGF0Y2hfaWQ7CiAKIAlwYXRjaC0+Y29tbWl0ID0gY29tbWl0OwotCWlmIChjb21taXRfcGF0Y2hfaWQoY29tbWl0LCAmaWRzLT5kaWZmb3B0cywgJmhlYWRlcl9vbmx5X3BhdGNoX2lkLCAxKSkKKwlpZiAoY29tbWl0X3BhdGNoX2lkKGNvbW1pdCwgJmlkcy0+ZGlmZm9wdHMsICZoZWFkZXJfb25seV9wYXRjaF9pZCwgMSwgMCkpCiAJCXJldHVybiAtMTsKIAotCWhhc2htYXBfZW50cnlfaW5pdChwYXRjaCwgc2hhMWhhc2goaGVhZGVyX29ubHlfcGF0Y2hfaWQuaGFzaCkpOworCWhhc2htYXBfZW50cnlfaW5pdCgmcGF0Y2gtPmVudCwgb2lkaGFzaCgmaGVhZGVyX29ubHlfcGF0Y2hfaWQpKTsKIAlyZXR1cm4gMDsKIH0KIApAQCAtOTksNyArMTAxLDcgQEAKIAlpZiAoaW5pdF9wYXRjaF9pZF9lbnRyeSgmcGF0Y2gsIGNvbW1pdCwgaWRzKSkKIAkJcmV0dXJuIE5VTEw7CiAKLQlyZXR1cm4gaGFzaG1hcF9nZXQoJmlkcy0+cGF0Y2hlcywgJnBhdGNoLCBOVUxMKTsKKwlyZXR1cm4gaGFzaG1hcF9nZXRfZW50cnkoJmlkcy0+cGF0Y2hlcywgJnBhdGNoLCBlbnQsIE5VTEwpOwogfQogCiBzdHJ1Y3QgcGF0Y2hfaWQgKmFkZF9jb21taXRfcGF0Y2hfaWQoc3RydWN0IGNvbW1pdCAqY29tbWl0LApAQCAtMTE2LDYgKzExOCw2IEBACiAJCXJldHVybiBOVUxMOwogCX0KIAotCWhhc2htYXBfYWRkKCZpZHMtPnBhdGNoZXMsIGtleSk7CisJaGFzaG1hcF9hZGQoJmlkcy0+cGF0Y2hlcywgJmtleS0+ZW50KTsKIAlyZXR1cm4ga2V5OwogfQpkaWZmIC0tZ2l0IGEvcGF0Y2gtaWRzLmggYi9wYXRjaC1pZHMuaAppbmRleCA4MmExMmI2Li4wM2JiMDRlIDEwMDY0NAotLS0gYS9wYXRjaC1pZHMuaAorKysgYi9wYXRjaC1pZHMuaApAQCAtMjAsNyArMjAsNyBAQAogfTsKIAogaW50IGNvbW1pdF9wYXRjaF9pZChzdHJ1Y3QgY29tbWl0ICpjb21taXQsIHN0cnVjdCBkaWZmX29wdGlvbnMgKm9wdGlvbnMsCi0JCSAgICBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGludCk7CisJCSAgICBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGludCwgaW50KTsKIGludCBpbml0X3BhdGNoX2lkcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqLCBzdHJ1Y3QgcGF0Y2hfaWRzICopOwogaW50IGZyZWVfcGF0Y2hfaWRzKHN0cnVjdCBwYXRjaF9pZHMgKik7CiBzdHJ1Y3QgcGF0Y2hfaWQgKmFkZF9jb21taXRfcGF0Y2hfaWQoc3RydWN0IGNvbW1pdCAqLCBzdHJ1Y3QgcGF0Y2hfaWRzICopOwpkaWZmIC0tZ2l0IGEvcGF0aC5jIGIvcGF0aC5jCmluZGV4IDYxNzU0NWMuLjBhNDJjZWIgMTAwNjQ0Ci0tLSBhL3BhdGguYworKysgYi9wYXRoLmMKQEAgLTExLDYgKzExLDcgQEAKICNpbmNsdWRlICJwYXRoLmgiCiAjaW5jbHVkZSAicGFja2ZpbGUuaCIKICNpbmNsdWRlICJvYmplY3Qtc3RvcmUuaCIKKyNpbmNsdWRlICJsb2NrZmlsZS5oIgogCiBzdGF0aWMgaW50IGdldF9zdF9tb2RlX2JpdHMoY29uc3QgY2hhciAqcGF0aCwgaW50ICptb2RlKQogewpAQCAtMTAxLDMzICsxMDIsMzYgQEAKIAkvKiBOb3QgY29uc2lkZXJlZCBnYXJiYWdlIGZvciByZXBvcnRfbGlua2VkX2NoZWNrb3V0X2dhcmJhZ2UgKi8KIAl1bnNpZ25lZCBpZ25vcmVfZ2FyYmFnZToxOwogCXVuc2lnbmVkIGlzX2RpcjoxOwotCS8qIE5vdCBjb21tb24gZXZlbiB0aG91Z2ggaXRzIHBhcmVudCBpcyAqLwotCXVuc2lnbmVkIGV4Y2x1ZGU6MTsKLQljb25zdCBjaGFyICpkaXJuYW1lOworCS8qIEJlbG9uZ3MgdG8gdGhlIGNvbW1vbiBkaXIsIHRob3VnaCBpdCBtYXkgY29udGFpbiBwYXRocyB0aGF0IGRvbid0ICovCisJdW5zaWduZWQgaXNfY29tbW9uOjE7CisJY29uc3QgY2hhciAqcGF0aDsKIH07CiAKIHN0YXRpYyBzdHJ1Y3QgY29tbW9uX2RpciBjb21tb25fbGlzdFtdID0gewotCXsgMCwgMSwgMCwgImJyYW5jaGVzIiB9LAotCXsgMCwgMSwgMCwgImNvbW1vbiIgfSwKLQl7IDAsIDEsIDAsICJob29rcyIgfSwKLQl7IDAsIDEsIDAsICJpbmZvIiB9LAotCXsgMCwgMCwgMSwgImluZm8vc3BhcnNlLWNoZWNrb3V0IiB9LAotCXsgMSwgMSwgMCwgImxvZ3MiIH0sCi0JeyAxLCAxLCAxLCAibG9ncy9IRUFEIiB9LAotCXsgMCwgMSwgMSwgImxvZ3MvcmVmcy9iaXNlY3QiIH0sCi0JeyAwLCAxLCAwLCAibG9zdC1mb3VuZCIgfSwKLQl7IDAsIDEsIDAsICJvYmplY3RzIiB9LAotCXsgMCwgMSwgMCwgInJlZnMiIH0sCi0JeyAwLCAxLCAxLCAicmVmcy9iaXNlY3QiIH0sCi0JeyAwLCAxLCAxLCAicmVmcy93b3JrdHJlZSIgfSwKLQl7IDAsIDEsIDAsICJyZW1vdGVzIiB9LAotCXsgMCwgMSwgMCwgIndvcmt0cmVlcyIgfSwKLQl7IDAsIDEsIDAsICJyci1jYWNoZSIgfSwKLQl7IDAsIDEsIDAsICJzdm4iIH0sCi0JeyAwLCAwLCAwLCAiY29uZmlnIiB9LAotCXsgMSwgMCwgMCwgImdjLnBpZCIgfSwKLQl7IDAsIDAsIDAsICJwYWNrZWQtcmVmcyIgfSwKLQl7IDAsIDAsIDAsICJzaGFsbG93IiB9LAorCXsgMCwgMSwgMSwgImJyYW5jaGVzIiB9LAorCXsgMCwgMSwgMSwgImNvbW1vbiIgfSwKKwl7IDAsIDEsIDEsICJob29rcyIgfSwKKwl7IDAsIDEsIDEsICJpbmZvIiB9LAorCXsgMCwgMCwgMCwgImluZm8vc3BhcnNlLWNoZWNrb3V0IiB9LAorCXsgMSwgMSwgMSwgImxvZ3MiIH0sCisJeyAxLCAwLCAwLCAibG9ncy9IRUFEIiB9LAorCXsgMCwgMSwgMCwgImxvZ3MvcmVmcy9iaXNlY3QiIH0sCisJeyAwLCAxLCAwLCAibG9ncy9yZWZzL3Jld3JpdHRlbiIgfSwKKwl7IDAsIDEsIDAsICJsb2dzL3JlZnMvd29ya3RyZWUiIH0sCisJeyAwLCAxLCAxLCAibG9zdC1mb3VuZCIgfSwKKwl7IDAsIDEsIDEsICJvYmplY3RzIiB9LAorCXsgMCwgMSwgMSwgInJlZnMiIH0sCisJeyAwLCAxLCAwLCAicmVmcy9iaXNlY3QiIH0sCisJeyAwLCAxLCAwLCAicmVmcy9yZXdyaXR0ZW4iIH0sCisJeyAwLCAxLCAwLCAicmVmcy93b3JrdHJlZSIgfSwKKwl7IDAsIDEsIDEsICJyZW1vdGVzIiB9LAorCXsgMCwgMSwgMSwgIndvcmt0cmVlcyIgfSwKKwl7IDAsIDEsIDEsICJyci1jYWNoZSIgfSwKKwl7IDAsIDEsIDEsICJzdm4iIH0sCisJeyAwLCAwLCAxLCAiY29uZmlnIiB9LAorCXsgMSwgMCwgMSwgImdjLnBpZCIgfSwKKwl7IDAsIDAsIDEsICJwYWNrZWQtcmVmcyIgfSwKKwl7IDAsIDAsIDEsICJzaGFsbG93IiB9LAogCXsgMCwgMCwgMCwgTlVMTCB9CiB9OwogCkBAIC0yMzMsMzAgKzIzNyw0MSBAQAogCXJldHVybiBvbGQ7CiB9CiAKLXR5cGVkZWYgaW50ICgqbWF0Y2hfZm4pKGNvbnN0IGNoYXIgKnVubWF0Y2hlZCwgdm9pZCAqZGF0YSwgdm9pZCAqYmF0b24pOwordHlwZWRlZiBpbnQgKCptYXRjaF9mbikoY29uc3QgY2hhciAqdW5tYXRjaGVkLCB2b2lkICp2YWx1ZSwgdm9pZCAqYmF0b24pOwogCiAvKgogICogU2VhcmNoIGEgdHJpZSBmb3Igc29tZSBrZXkuICBGaW5kIHRoZSBsb25nZXN0IC8tb3ItXDAtdGVybWluYXRlZAotICogcHJlZml4IG9mIHRoZSBrZXkgZm9yIHdoaWNoIHRoZSB0cmllIGNvbnRhaW5zIGEgdmFsdWUuICBDYWxsIGZuCi0gKiB3aXRoIHRoZSB1bm1hdGNoZWQgcG9ydGlvbiBvZiB0aGUga2V5IGFuZCB0aGUgZm91bmQgdmFsdWUsIGFuZAotICogcmV0dXJuIGl0cyByZXR1cm4gdmFsdWUuICBJZiB0aGVyZSBpcyBubyBzdWNoIHByZWZpeCwgcmV0dXJuIC0xLgorICogcHJlZml4IG9mIHRoZSBrZXkgZm9yIHdoaWNoIHRoZSB0cmllIGNvbnRhaW5zIGEgdmFsdWUuICBJZiB0aGVyZSBpcworICogbm8gc3VjaCBwcmVmaXgsIHJldHVybiAtMS4gIE90aGVyd2lzZSBjYWxsIGZuIHdpdGggdGhlIHVubWF0Y2hlZAorICogcG9ydGlvbiBvZiB0aGUga2V5IGFuZCB0aGUgZm91bmQgdmFsdWUuICBJZiBmbiByZXR1cm5zIDAgb3IKKyAqIHBvc2l0aXZlLCB0aGVuIHJldHVybiBpdHMgcmV0dXJuIHZhbHVlLiAgSWYgZm4gcmV0dXJucyBuZWdhdGl2ZSwKKyAqIHRoZW4gY2FsbCBmbiB3aXRoIHRoZSBuZXh0LWxvbmdlc3QgLy10ZXJtaW5hdGVkIHByZWZpeCBvZiB0aGUga2V5CisgKiAoaS5lLiBhIHBhcmVudCBkaXJlY3RvcnkpIGZvciB3aGljaCB0aGUgdHJpZSBjb250YWlucyBhIHZhbHVlLCBhbmQKKyAqIGhhbmRsZSBpdHMgcmV0dXJuIHZhbHVlIHRoZSBzYW1lIHdheS4gIElmIHRoZXJlIGlzIG5vIHNob3J0ZXIKKyAqIC8tdGVybWluYXRlZCBwcmVmaXggd2l0aCBhIHZhbHVlIGxlZnQsIHRoZW4gcmV0dXJuIHRoZSBuZWdhdGl2ZQorICogcmV0dXJuIHZhbHVlIG9mIHRoZSBtb3N0IHJlY2VudCBmbiBpbnZvY2F0aW9uLgogICoKICAqIFRoZSBrZXkgaXMgcGFydGlhbGx5IG5vcm1hbGl6ZWQ6IGNvbnNlY3V0aXZlIHNsYXNoZXMgYXJlIHNraXBwZWQuCiAgKgotICogRm9yIGV4YW1wbGUsIGNvbnNpZGVyIHRoZSB0cmllIGNvbnRhaW5pbmcgb25seSBbcmVmcywKLSAqIHJlZnMvd29ya3RyZWVdIChib3RoIHdpdGggdmFsdWVzKS4KKyAqIEZvciBleGFtcGxlLCBjb25zaWRlciB0aGUgdHJpZSBjb250YWluaW5nIG9ubHkgW2xvZ3MsCisgKiBsb2dzL3JlZnMvYmlzZWN0XSwgYm90aCB3aXRoIHZhbHVlcywgYnV0IG5vdCBsb2dzL3JlZnMuCiAgKgotICogfCBrZXkgICAgICAgICAgICAgfCB1bm1hdGNoZWQgIHwgdmFsIGZyb20gbm9kZSB8IHJldHVybiB2YWx1ZSB8Ci0gKiB8LS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLXwKLSAqIHwgYSAgICAgICAgICAgICAgIHwgbm90IGNhbGxlZCB8IG4vYSAgICAgICAgICAgfCAtMSAgICAgICAgICAgfAotICogfCByZWZzICAgICAgICAgICAgfCBcMCAgICAgICAgIHwgcmVmcyAgICAgICAgICB8IGFzIHBlciBmbiAgICB8Ci0gKiB8IHJlZnMvICAgICAgICAgICB8IC8gICAgICAgICAgfCByZWZzICAgICAgICAgIHwgYXMgcGVyIGZuICAgIHwKLSAqIHwgcmVmcy93ICAgICAgICAgIHwgL3cgICAgICAgICB8IHJlZnMgICAgICAgICAgfCBhcyBwZXIgZm4gICAgfAotICogfCByZWZzL3dvcmt0cmVlICAgfCBcMCAgICAgICAgIHwgcmVmcy93b3JrdHJlZSB8IGFzIHBlciBmbiAgICB8Ci0gKiB8IHJlZnMvd29ya3RyZWUvICB8IC8gICAgICAgICAgfCByZWZzL3dvcmt0cmVlIHwgYXMgcGVyIGZuICAgIHwKLSAqIHwgcmVmcy93b3JrdHJlZS9hIHwgL2EgICAgICAgICB8IHJlZnMvd29ya3RyZWUgfCBhcyBwZXIgZm4gICAgfAotICogfC0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS18Ci0gKgorICogfCBrZXkgICAgICAgICAgICAgICAgfCB1bm1hdGNoZWQgICAgICB8IHByZWZpeCB0byBub2RlICAgfCByZXR1cm4gdmFsdWUgfAorICogfC0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tfAorICogfCBhICAgICAgICAgICAgICAgICAgfCBub3QgY2FsbGVkICAgICB8IG4vYSAgICAgICAgICAgICAgfCAtMSAgICAgICAgICAgfAorICogfCBsb2dzdG9yZSAgICAgICAgICAgfCBub3QgY2FsbGVkICAgICB8IG4vYSAgICAgICAgICAgICAgfCAtMSAgICAgICAgICAgfAorICogfCBsb2dzICAgICAgICAgICAgICAgfCBcMCAgICAgICAgICAgICB8IGxvZ3MgICAgICAgICAgICAgfCBhcyBwZXIgZm4gICAgfAorICogfCBsb2dzLyAgICAgICAgICAgICAgfCAvICAgICAgICAgICAgICB8IGxvZ3MgICAgICAgICAgICAgfCBhcyBwZXIgZm4gICAgfAorICogfCBsb2dzL3JlZnMgICAgICAgICAgfCAvcmVmcyAgICAgICAgICB8IGxvZ3MgICAgICAgICAgICAgfCBhcyBwZXIgZm4gICAgfAorICogfCBsb2dzL3JlZnMvICAgICAgICAgfCAvcmVmcy8gICAgICAgICB8IGxvZ3MgICAgICAgICAgICAgfCBhcyBwZXIgZm4gICAgfAorICogfCBsb2dzL3JlZnMvYiAgICAgICAgfCAvcmVmcy9iICAgICAgICB8IGxvZ3MgICAgICAgICAgICAgfCBhcyBwZXIgZm4gICAgfAorICogfCBsb2dzL3JlZnMvYmlzZWN0ZWQgfCAvcmVmcy9iaXNlY3RlZCB8IGxvZ3MgICAgICAgICAgICAgfCBhcyBwZXIgZm4gICAgfAorICogfCBsb2dzL3JlZnMvYmlzZWN0ICAgfCBcMCAgICAgICAgICAgICB8IGxvZ3MvcmVmcy9iaXNlY3QgfCBhcyBwZXIgZm4gICAgfAorICogfCBsb2dzL3JlZnMvYmlzZWN0LyAgfCAvICAgICAgICAgICAgICB8IGxvZ3MvcmVmcy9iaXNlY3QgfCBhcyBwZXIgZm4gICAgfAorICogfCBsb2dzL3JlZnMvYmlzZWN0L2EgfCAvYSAgICAgICAgICAgICB8IGxvZ3MvcmVmcy9iaXNlY3QgfCBhcyBwZXIgZm4gICAgfAorICogfCAoSWYgZm4gaW4gdGhlIHByZXZpb3VzIGxpbmUgcmV0dXJucyAtMSwgdGhlbiBmbiBpcyBjYWxsZWQgb25jZSBtb3JlOikgfAorICogfCBsb2dzL3JlZnMvYmlzZWN0L2EgfCAvcmVmcy9iaXNlY3QvYSB8IGxvZ3MgICAgICAgICAgICAgfCBhcyBwZXIgZm4gICAgfAorICogfC0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tfAogICovCiBzdGF0aWMgaW50IHRyaWVfZmluZChzdHJ1Y3QgdHJpZSAqcm9vdCwgY29uc3QgY2hhciAqa2V5LCBtYXRjaF9mbiBmbiwKIAkJICAgICB2b2lkICpiYXRvbikKQEAgLTI4NSw5ICszMDAsMTMgQEAKIAogCS8qIE1hdGNoZWQgdGhlIGVudGlyZSBjb21wcmVzc2VkIHNlY3Rpb24gKi8KIAlrZXkgKz0gaTsKLQlpZiAoISprZXkpCisJaWYgKCEqa2V5KSB7CiAJCS8qIEVuZCBvZiBrZXkgKi8KLQkJcmV0dXJuIGZuKGtleSwgcm9vdC0+dmFsdWUsIGJhdG9uKTsKKwkJaWYgKHJvb3QtPnZhbHVlKQorCQkJcmV0dXJuIGZuKGtleSwgcm9vdC0+dmFsdWUsIGJhdG9uKTsKKwkJZWxzZQorCQkJcmV0dXJuIC0xOworCX0KIAogCS8qIFBhcnRpYWwgcGF0aCBub3JtYWxpemF0aW9uOiBza2lwIGNvbnNlY3V0aXZlIHNsYXNoZXMgKi8KIAl3aGlsZSAoa2V5WzBdID09ICcvJyAmJiBrZXlbMV0gPT0gJy8nKQpAQCAtMzE3LDggKzMzNiw4IEBACiAJaWYgKGNvbW1vbl90cmllX2RvbmVfc2V0dXApCiAJCXJldHVybjsKIAotCWZvciAocCA9IGNvbW1vbl9saXN0OyBwLT5kaXJuYW1lOyBwKyspCi0JCWFkZF90b190cmllKCZjb21tb25fdHJpZSwgcC0+ZGlybmFtZSwgcCk7CisJZm9yIChwID0gY29tbW9uX2xpc3Q7IHAtPnBhdGg7IHArKykKKwkJYWRkX3RvX3RyaWUoJmNvbW1vbl90cmllLCBwLT5wYXRoLCBwKTsKIAogCWNvbW1vbl90cmllX2RvbmVfc2V0dXAgPSAxOwogfQpAQCAtMzMxLDE0ICszNTAsMTEgQEAKIHsKIAlzdHJ1Y3QgY29tbW9uX2RpciAqZGlyID0gdmFsdWU7CiAKLQlpZiAoIWRpcikKLQkJcmV0dXJuIDA7Ci0KIAlpZiAoZGlyLT5pc19kaXIgJiYgKHVubWF0Y2hlZFswXSA9PSAwIHx8IHVubWF0Y2hlZFswXSA9PSAnLycpKQotCQlyZXR1cm4gIWRpci0+ZXhjbHVkZTsKKwkJcmV0dXJuIGRpci0+aXNfY29tbW9uOwogCiAJaWYgKCFkaXItPmlzX2RpciAmJiB1bm1hdGNoZWRbMF0gPT0gMCkKLQkJcmV0dXJuICFkaXItPmV4Y2x1ZGU7CisJCXJldHVybiBkaXItPmlzX2NvbW1vbjsKIAogCXJldHVybiAwOwogfQpAQCAtMzQ3LDkgKzM2MywxNCBAQAogCQkJICAgICAgY29uc3QgY2hhciAqY29tbW9uX2RpcikKIHsKIAljaGFyICpiYXNlID0gYnVmLT5idWYgKyBnaXRfZGlyX2xlbjsKKwlpbnQgaGFzX2xvY2tfc3VmZml4ID0gc3RyYnVmX3N0cmlwX3N1ZmZpeChidWYsIExPQ0tfU1VGRklYKTsKKwogCWluaXRfY29tbW9uX3RyaWUoKTsKIAlpZiAodHJpZV9maW5kKCZjb21tb25fdHJpZSwgYmFzZSwgY2hlY2tfY29tbW9uLCBOVUxMKSA+IDApCiAJCXJlcGxhY2VfZGlyKGJ1ZiwgZ2l0X2Rpcl9sZW4sIGNvbW1vbl9kaXIpOworCisJaWYgKGhhc19sb2NrX3N1ZmZpeCkKKwkJc3RyYnVmX2FkZHN0cihidWYsIExPQ0tfU1VGRklYKTsKIH0KIAogdm9pZCByZXBvcnRfbGlua2VkX2NoZWNrb3V0X2dhcmJhZ2Uodm9pZCkKQEAgLTM2Miw4ICszODMsOCBAQAogCQlyZXR1cm47CiAJc3RyYnVmX2FkZGYoJnNiLCAiJXMvIiwgZ2V0X2dpdF9kaXIoKSk7CiAJbGVuID0gc2IubGVuOwotCWZvciAocCA9IGNvbW1vbl9saXN0OyBwLT5kaXJuYW1lOyBwKyspIHsKLQkJY29uc3QgY2hhciAqcGF0aCA9IHAtPmRpcm5hbWU7CisJZm9yIChwID0gY29tbW9uX2xpc3Q7IHAtPnBhdGg7IHArKykgeworCQljb25zdCBjaGFyICpwYXRoID0gcC0+cGF0aDsKIAkJaWYgKHAtPmlnbm9yZV9nYXJiYWdlKQogCQkJY29udGludWU7CiAJCXN0cmJ1Zl9zZXRsZW4oJnNiLCBsZW4pOwpAQCAtMzg1LDcgKzQwNiw3IEBACiAJCXN0cmJ1Zl9zcGxpY2UoYnVmLCAwLCBidWYtPmxlbiwKIAkJCSAgICAgIHJlcG8tPmluZGV4X2ZpbGUsIHN0cmxlbihyZXBvLT5pbmRleF9maWxlKSk7CiAJZWxzZSBpZiAoZGlyX3ByZWZpeChiYXNlLCAib2JqZWN0cyIpKQotCQlyZXBsYWNlX2RpcihidWYsIGdpdF9kaXJfbGVuICsgNywgcmVwby0+b2JqZWN0cy0+b2JqZWN0ZGlyKTsKKwkJcmVwbGFjZV9kaXIoYnVmLCBnaXRfZGlyX2xlbiArIDcsIHJlcG8tPm9iamVjdHMtPm9kYi0+cGF0aCk7CiAJZWxzZSBpZiAoZ2l0X2hvb2tzX3BhdGggJiYgZGlyX3ByZWZpeChiYXNlLCAiaG9va3MiKSkKIAkJcmVwbGFjZV9kaXIoYnVmLCBnaXRfZGlyX2xlbiArIDUsIGdpdF9ob29rc19wYXRoKTsKIAllbHNlIGlmIChyZXBvLT5kaWZmZXJlbnRfY29tbW9uZGlyKQpAQCAtNzAyLDcgKzcyMyw3IEBACiAgKiB0aGVuIGl0IGlzIGEgbmV3bHkgYWxsb2NhdGVkIHN0cmluZy4gUmV0dXJucyBOVUxMIG9uIGdldHB3IGZhaWx1cmUgb3IKICAqIGlmIHBhdGggaXMgTlVMTC4KICAqCi0gKiBJZiByZWFsX2hvbWUgaXMgdHJ1ZSwgcmVhbF9wYXRoKCRIT01FKSBpcyB1c2VkIGluIHRoZSBleHBhbnNpb24uCisgKiBJZiByZWFsX2hvbWUgaXMgdHJ1ZSwgc3RyYnVmX3JlYWxwYXRoKCRIT01FKSBpcyB1c2VkIGluIHRoZSBleHBhbnNpb24uCiAgKi8KIGNoYXIgKmV4cGFuZF91c2VyX3BhdGgoY29uc3QgY2hhciAqcGF0aCwgaW50IHJlYWxfaG9tZSkKIHsKQEAgLTgyOSw3ICs4NTAsNyBAQAogCX0KIAogCWlmIChpc19naXRfZGlyZWN0b3J5KCIuIikpIHsKLQkJc2V0X2dpdF9kaXIoIi4iKTsKKwkJc2V0X2dpdF9kaXIoIi4iLCAwKTsKIAkJY2hlY2tfcmVwb3NpdG9yeV9mb3JtYXQoKTsKIAkJcmV0dXJuIHBhdGg7CiAJfQpAQCAtMTA1Niw2ICsxMDc3LDggQEAKIAogLyoKICAqIEl0IGlzIG9rYXkgaWYgZHN0ID09IHNyYywgYnV0IHRoZXkgc2hvdWxkIG5vdCBvdmVybGFwIG90aGVyd2lzZS4KKyAqIFRoZSAiZHN0IiBidWZmZXIgbXVzdCBiZSBhdCBsZWFzdCBhcyBsb25nIGFzICJzcmMiOyBub3JtYWxpemluZyBtYXkgc2hyaW5rCisgKiB0aGUgc2l6ZSBvZiB0aGUgcGF0aCwgYnV0IHdpbGwgbmV2ZXIgZ3JvdyBpdC4KICAqCiAgKiBQZXJmb3JtcyB0aGUgZm9sbG93aW5nIG5vcm1hbGl6YXRpb25zIG9uIHNyYywgc3RvcmluZyB0aGUgcmVzdWx0IGluIGRzdDoKICAqIC0gRW5zdXJlcyB0aGF0IGNvbXBvbmVudHMgYXJlIHNlcGFyYXRlZCBieSAnLycgKFdpbmRvd3Mgb25seSkKQEAgLTEyMTgsMzEgKzEyNDEsNTIgQEAKIH0KIAogLyoKKyAqIElmIHBhdGggZW5kcyB3aXRoIHN1ZmZpeCAoY29tcGxldGUgcGF0aCBjb21wb25lbnRzKSwgcmV0dXJucyB0aGUgb2Zmc2V0IG9mCisgKiB0aGUgbGFzdCBjaGFyYWN0ZXIgaW4gdGhlIHBhdGggYmVmb3JlIHRoZSBzdWZmaXggKHNhbnMgdHJhaWxpbmcgZGlyZWN0b3J5CisgKiBzZXBhcmF0b3JzKSwgYW5kIC0xIG90aGVyd2lzZS4KKyAqLworc3RhdGljIHNzaXplX3Qgc3RyaXBwZWRfcGF0aF9zdWZmaXhfb2Zmc2V0KGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IGNoYXIgKnN1ZmZpeCkKK3sKKwlpbnQgcGF0aF9sZW4gPSBzdHJsZW4ocGF0aCksIHN1ZmZpeF9sZW4gPSBzdHJsZW4oc3VmZml4KTsKKworCXdoaWxlIChzdWZmaXhfbGVuKSB7CisJCWlmICghcGF0aF9sZW4pCisJCQlyZXR1cm4gLTE7CisKKwkJaWYgKGlzX2Rpcl9zZXAocGF0aFtwYXRoX2xlbiAtIDFdKSkgeworCQkJaWYgKCFpc19kaXJfc2VwKHN1ZmZpeFtzdWZmaXhfbGVuIC0gMV0pKQorCQkJCXJldHVybiAtMTsKKwkJCXBhdGhfbGVuID0gY2hvbXBfdHJhaWxpbmdfZGlyX3NlcChwYXRoLCBwYXRoX2xlbik7CisJCQlzdWZmaXhfbGVuID0gY2hvbXBfdHJhaWxpbmdfZGlyX3NlcChzdWZmaXgsIHN1ZmZpeF9sZW4pOworCQl9CisJCWVsc2UgaWYgKHBhdGhbLS1wYXRoX2xlbl0gIT0gc3VmZml4Wy0tc3VmZml4X2xlbl0pCisJCQlyZXR1cm4gLTE7CisJfQorCisJaWYgKHBhdGhfbGVuICYmICFpc19kaXJfc2VwKHBhdGhbcGF0aF9sZW4gLSAxXSkpCisJCXJldHVybiAtMTsKKwlyZXR1cm4gY2hvbXBfdHJhaWxpbmdfZGlyX3NlcChwYXRoLCBwYXRoX2xlbik7Cit9CisKKy8qCisgKiBSZXR1cm5zIHRydWUgaWYgdGhlIHBhdGggZW5kcyB3aXRoIGNvbXBvbmVudHMsIGNvbnNpZGVyaW5nIG9ubHkgY29tcGxldGUgcGF0aAorICogY29tcG9uZW50cywgYW5kIGZhbHNlIG90aGVyd2lzZS4KKyAqLworaW50IGVuZHNfd2l0aF9wYXRoX2NvbXBvbmVudHMoY29uc3QgY2hhciAqcGF0aCwgY29uc3QgY2hhciAqY29tcG9uZW50cykKK3sKKwlyZXR1cm4gc3RyaXBwZWRfcGF0aF9zdWZmaXhfb2Zmc2V0KHBhdGgsIGNvbXBvbmVudHMpICE9IC0xOworfQorCisvKgogICogSWYgcGF0aCBlbmRzIHdpdGggc3VmZml4IChjb21wbGV0ZSBwYXRoIGNvbXBvbmVudHMpLCByZXR1cm5zIHRoZQogICogcGFydCBiZWZvcmUgc3VmZml4IChzYW5zIHRyYWlsaW5nIGRpcmVjdG9yeSBzZXBhcmF0b3JzKS4KICAqIE90aGVyd2lzZSByZXR1cm5zIE5VTEwuCiAgKi8KIGNoYXIgKnN0cmlwX3BhdGhfc3VmZml4KGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IGNoYXIgKnN1ZmZpeCkKIHsKLQlpbnQgcGF0aF9sZW4gPSBzdHJsZW4ocGF0aCksIHN1ZmZpeF9sZW4gPSBzdHJsZW4oc3VmZml4KTsKKwlzc2l6ZV90IG9mZnNldCA9IHN0cmlwcGVkX3BhdGhfc3VmZml4X29mZnNldChwYXRoLCBzdWZmaXgpOwogCi0Jd2hpbGUgKHN1ZmZpeF9sZW4pIHsKLQkJaWYgKCFwYXRoX2xlbikKLQkJCXJldHVybiBOVUxMOwotCi0JCWlmIChpc19kaXJfc2VwKHBhdGhbcGF0aF9sZW4gLSAxXSkpIHsKLQkJCWlmICghaXNfZGlyX3NlcChzdWZmaXhbc3VmZml4X2xlbiAtIDFdKSkKLQkJCQlyZXR1cm4gTlVMTDsKLQkJCXBhdGhfbGVuID0gY2hvbXBfdHJhaWxpbmdfZGlyX3NlcChwYXRoLCBwYXRoX2xlbik7Ci0JCQlzdWZmaXhfbGVuID0gY2hvbXBfdHJhaWxpbmdfZGlyX3NlcChzdWZmaXgsIHN1ZmZpeF9sZW4pOwotCQl9Ci0JCWVsc2UgaWYgKHBhdGhbLS1wYXRoX2xlbl0gIT0gc3VmZml4Wy0tc3VmZml4X2xlbl0pCi0JCQlyZXR1cm4gTlVMTDsKLQl9Ci0KLQlpZiAocGF0aF9sZW4gJiYgIWlzX2Rpcl9zZXAocGF0aFtwYXRoX2xlbiAtIDFdKSkKLQkJcmV0dXJuIE5VTEw7Ci0JcmV0dXJuIHhzdHJuZHVwKHBhdGgsIGNob21wX3RyYWlsaW5nX2Rpcl9zZXAocGF0aCwgcGF0aF9sZW4pKTsKKwlyZXR1cm4gb2Zmc2V0ID09IC0xID8gTlVMTCA6IHhzdHJuZHVwKHBhdGgsIG9mZnNldCk7CiB9CiAKIGludCBkYWVtb25fYXZvaWRfYWxpYXMoY29uc3QgY2hhciAqcCkKZGlmZiAtLWdpdCBhL3BhdGguaCBiL3BhdGguaAppbmRleCBiNjU0ZWE4Li4xNGQ2ZGNhIDEwMDY0NAotLS0gYS9wYXRoLmgKKysrIGIvcGF0aC5oCkBAIC0xMywxOSArMTMsMTkgQEAKIC8qCiAgKiBSZXR1cm4gYSBzdGF0aWNhbGx5IGFsbG9jYXRlZCBwYXRoLgogICovCi1leHRlcm4gY29uc3QgY2hhciAqbWtwYXRoKGNvbnN0IGNoYXIgKmZtdCwgLi4uKQorY29uc3QgY2hhciAqbWtwYXRoKGNvbnN0IGNoYXIgKmZtdCwgLi4uKQogCV9fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLCAxLCAyKSkpOwogCiAvKgogICogUmV0dXJuIGEgcGF0aC4KICAqLwotZXh0ZXJuIGNoYXIgKm1rcGF0aGR1cChjb25zdCBjaGFyICpmbXQsIC4uLikKK2NoYXIgKm1rcGF0aGR1cChjb25zdCBjaGFyICpmbXQsIC4uLikKIAlfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMSwgMikpKTsKIAogLyoKICAqIENvbnN0cnVjdCBhIHBhdGggYW5kIHBsYWNlIHRoZSByZXN1bHQgaW4gdGhlIHByb3ZpZGVkIGJ1ZmZlciBgYnVmYC4KICAqLwotZXh0ZXJuIGNoYXIgKm1rc25wYXRoKGNoYXIgKmJ1Ziwgc2l6ZV90IG4sIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQorY2hhciAqbWtzbnBhdGgoY2hhciAqYnVmLCBzaXplX3QgbiwgY29uc3QgY2hhciAqZm10LCAuLi4pCiAJX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDMsIDQpKSk7CiAKIC8qCkBAIC0zNywxNiArMzcsMTYgQEAKICAqIENvbnN0cnVjdHMgYSBwYXRoIGludG8gdGhlIGNvbW1vbiBnaXQgZGlyZWN0b3J5IG9mIHJlcG9zaXRvcnkgYHJlcG9gIGFuZAogICogYXBwZW5kIGl0IGluIHRoZSBwcm92aWRlZCBidWZmZXIgYHNiYC4KICAqLwotZXh0ZXJuIHZvaWQgc3RyYnVmX2dpdF9jb21tb25fcGF0aChzdHJ1Y3Qgc3RyYnVmICpzYiwKLQkJCQkgICBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKLQkJCQkgICBjb25zdCBjaGFyICpmbXQsIC4uLikKK3ZvaWQgc3RyYnVmX2dpdF9jb21tb25fcGF0aChzdHJ1Y3Qgc3RyYnVmICpzYiwKKwkJCSAgICBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCSAgICBjb25zdCBjaGFyICpmbXQsIC4uLikKIAlfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMywgNCkpKTsKIAogLyoKICAqIFJldHVybiBhIHN0YXRpY2FsbHkgYWxsb2NhdGVkIHBhdGggaW50byB0aGUgbWFpbiByZXBvc2l0b3J5J3MKICAqICh0aGVfcmVwb3NpdG9yeSkgY29tbW9uIGdpdCBkaXJlY3RvcnkuCiAgKi8KLWV4dGVybiBjb25zdCBjaGFyICpnaXRfY29tbW9uX3BhdGgoY29uc3QgY2hhciAqZm10LCAuLi4pCitjb25zdCBjaGFyICpnaXRfY29tbW9uX3BhdGgoY29uc3QgY2hhciAqZm10LCAuLi4pCiAJX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDEsIDIpKSk7CiAKIApAQCAtNjYsMzAgKzY2LDMwIEBACiAvKgogICogUmV0dXJuIGEgcGF0aCBpbnRvIHRoZSBnaXQgZGlyZWN0b3J5IG9mIHJlcG9zaXRvcnkgYHJlcG9gLgogICovCi1leHRlcm4gY2hhciAqcmVwb19naXRfcGF0aChjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKLQkJCSAgIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQorY2hhciAqcmVwb19naXRfcGF0aChjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJICAgIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQogCV9fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLCAyLCAzKSkpOwogCiAvKgogICogQ29uc3RydWN0IGEgcGF0aCBpbnRvIHRoZSBnaXQgZGlyZWN0b3J5IG9mIHJlcG9zaXRvcnkgYHJlcG9gIGFuZCBhcHBlbmQgaXQKICAqIHRvIHRoZSBwcm92aWRlZCBidWZmZXIgYHNiYC4KICAqLwotZXh0ZXJuIHZvaWQgc3RyYnVmX3JlcG9fZ2l0X3BhdGgoc3RydWN0IHN0cmJ1ZiAqc2IsCi0JCQkJIGNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAotCQkJCSBjb25zdCBjaGFyICpmbXQsIC4uLikKK3ZvaWQgc3RyYnVmX3JlcG9fZ2l0X3BhdGgoc3RydWN0IHN0cmJ1ZiAqc2IsCisJCQkgIGNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkJICBjb25zdCBjaGFyICpmbXQsIC4uLikKIAlfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMywgNCkpKTsKIAogLyoKICAqIFJldHVybiBhIHN0YXRpY2FsbHkgYWxsb2NhdGVkIHBhdGggaW50byB0aGUgbWFpbiByZXBvc2l0b3J5J3MKICAqICh0aGVfcmVwb3NpdG9yeSkgZ2l0IGRpcmVjdG9yeS4KICAqLwotZXh0ZXJuIGNvbnN0IGNoYXIgKmdpdF9wYXRoKGNvbnN0IGNoYXIgKmZtdCwgLi4uKQorY29uc3QgY2hhciAqZ2l0X3BhdGgoY29uc3QgY2hhciAqZm10LCAuLi4pCiAJX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDEsIDIpKSk7CiAKIC8qCiAgKiBSZXR1cm4gYSBwYXRoIGludG8gdGhlIG1haW4gcmVwb3NpdG9yeSdzICh0aGVfcmVwb3NpdG9yeSkgZ2l0IGRpcmVjdG9yeS4KICAqLwotZXh0ZXJuIGNoYXIgKmdpdF9wYXRoZHVwKGNvbnN0IGNoYXIgKmZtdCwgLi4uKQorY2hhciAqZ2l0X3BhdGhkdXAoY29uc3QgY2hhciAqZm10LCAuLi4pCiAJX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDEsIDIpKSk7CiAKIC8qCkBAIC05NywxNCArOTcsMTQgQEAKICAqIGFuZCBwbGFjZSBpdCBpbiB0aGUgcHJvdmlkZWQgYnVmZmVyIGBidWZgLCB0aGUgY29udGVudHMgb2YgdGhlIGJ1ZmZlciB3aWxsCiAgKiBiZSBvdmVycmlkZGVuLgogICovCi1leHRlcm4gY2hhciAqZ2l0X3BhdGhfYnVmKHN0cnVjdCBzdHJidWYgKmJ1ZiwgY29uc3QgY2hhciAqZm10LCAuLi4pCitjaGFyICpnaXRfcGF0aF9idWYoc3RydWN0IHN0cmJ1ZiAqYnVmLCBjb25zdCBjaGFyICpmbXQsIC4uLikKIAlfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMiwgMykpKTsKIAogLyoKICAqIENvbnN0cnVjdCBhIHBhdGggaW50byB0aGUgbWFpbiByZXBvc2l0b3J5J3MgKHRoZV9yZXBvc2l0b3J5KSBnaXQgZGlyZWN0b3J5CiAgKiBhbmQgYXBwZW5kIGl0IHRvIHRoZSBwcm92aWRlZCBidWZmZXIgYHNiYC4KICAqLwotZXh0ZXJuIHZvaWQgc3RyYnVmX2dpdF9wYXRoKHN0cnVjdCBzdHJidWYgKnNiLCBjb25zdCBjaGFyICpmbXQsIC4uLikKK3ZvaWQgc3RyYnVmX2dpdF9wYXRoKHN0cnVjdCBzdHJidWYgKnNiLCBjb25zdCBjaGFyICpmbXQsIC4uLikKIAlfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMiwgMykpKTsKIAogLyoKQEAgLTExMiw3ICsxMTIsNyBAQAogICoKICAqIElmIHRoZSByZXBvc2l0b3J5IGRvZXNuJ3QgaGF2ZSBhIHdvcmt0cmVlIE5VTEwgaXMgcmV0dXJuZWQuCiAgKi8KLWV4dGVybiBjaGFyICpyZXBvX3dvcmt0cmVlX3BhdGgoY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCitjaGFyICpyZXBvX3dvcmt0cmVlX3BhdGgoY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCiAJCQkJY29uc3QgY2hhciAqZm10LCAuLi4pCiAJX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDIsIDMpKSk7CiAKQEAgLTEyMiw3ICsxMjIsNyBAQAogICoKICAqIElmIHRoZSByZXBvc2l0b3J5IGRvZXNuJ3QgaGF2ZSBhIHdvcmt0cmVlIG5vdGhpbmcgd2lsbCBiZSBhcHBlbmRlZCB0byBgc2JgLgogICovCi1leHRlcm4gdm9pZCBzdHJidWZfcmVwb193b3JrdHJlZV9wYXRoKHN0cnVjdCBzdHJidWYgKnNiLAordm9pZCBzdHJidWZfcmVwb193b3JrdHJlZV9wYXRoKHN0cnVjdCBzdHJidWYgKnNiLAogCQkJCSAgICAgIGNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAogCQkJCSAgICAgIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQogCV9fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLCAzLCA0KSkpOwpAQCAtMTMxLDcgKzEzMSw3IEBACiAgKiBSZXR1cm4gYSBwYXRoIGludG8gYSBzdWJtb2R1bGUncyBnaXQgZGlyZWN0b3J5IGxvY2F0ZWQgYXQgYHBhdGhgLiAgYHBhdGhgCiAgKiBtdXN0IG9ubHkgcmVmZXJlbmNlIGEgc3VibW9kdWxlIG9mIHRoZSBtYWluIHJlcG9zaXRvcnkgKHRoZV9yZXBvc2l0b3J5KS4KICAqLwotZXh0ZXJuIGNoYXIgKmdpdF9wYXRoZHVwX3N1Ym1vZHVsZShjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICpmbXQsIC4uLikKK2NoYXIgKmdpdF9wYXRoZHVwX3N1Ym1vZHVsZShjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICpmbXQsIC4uLikKIAlfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMiwgMykpKTsKIAogLyoKQEAgLTEzOSwxMSArMTM5LDExIEBACiAgKiBhcHBlbmQgaXQgdG8gdGhlIHByb3ZpZGVkIGJ1ZmZlciBgc2JgLiAgYHBhdGhgIG11c3Qgb25seSByZWZlcmVuY2UgYQogICogc3VibW9kdWxlIG9mIHRoZSBtYWluIHJlcG9zaXRvcnkgKHRoZV9yZXBvc2l0b3J5KS4KICAqLwotZXh0ZXJuIGludCBzdHJidWZfZ2l0X3BhdGhfc3VibW9kdWxlKHN0cnVjdCBzdHJidWYgKnNiLCBjb25zdCBjaGFyICpwYXRoLAoraW50IHN0cmJ1Zl9naXRfcGF0aF9zdWJtb2R1bGUoc3RydWN0IHN0cmJ1ZiAqc2IsIGNvbnN0IGNoYXIgKnBhdGgsCiAJCQkJICAgICBjb25zdCBjaGFyICpmbXQsIC4uLikKIAlfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMywgNCkpKTsKIAotZXh0ZXJuIHZvaWQgcmVwb3J0X2xpbmtlZF9jaGVja291dF9nYXJiYWdlKHZvaWQpOwordm9pZCByZXBvcnRfbGlua2VkX2NoZWNrb3V0X2dhcmJhZ2Uodm9pZCk7CiAKIC8qCiAgKiBZb3UgY2FuIGRlZmluZSBhIHN0YXRpYyBtZW1vaXplZCBnaXQgcGF0aCBsaWtlOgpAQCAtMTY1LDcgKzE2NSw3IEBACiAJY29uc3QgY2hhciAqZ2l0X3BhdGhfIyN2YXIoc3RydWN0IHJlcG9zaXRvcnkgKnIpIFwKIAl7IFwKIAkJaWYgKCFyLT5jYWNoZWRfcGF0aHMudmFyKSBcCi0JCQlyLT5jYWNoZWRfcGF0aHMudmFyID0gZ2l0X3BhdGhkdXAoZmlsZW5hbWUpOyBcCisJCQlyLT5jYWNoZWRfcGF0aHMudmFyID0gcmVwb19naXRfcGF0aChyLCBmaWxlbmFtZSk7IFwKIAkJcmV0dXJuIHItPmNhY2hlZF9wYXRocy52YXI7IFwKIAl9CiAKQEAgLTE5Myw0ICsxOTMsNyBAQAogY29uc3QgY2hhciAqZ2l0X3BhdGhfZmV0Y2hfaGVhZChzdHJ1Y3QgcmVwb3NpdG9yeSAqcik7CiBjb25zdCBjaGFyICpnaXRfcGF0aF9zaGFsbG93KHN0cnVjdCByZXBvc2l0b3J5ICpyKTsKIAorCitpbnQgZW5kc193aXRoX3BhdGhfY29tcG9uZW50cyhjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICpjb21wb25lbnRzKTsKKwogI2VuZGlmIC8qIFBBVEhfSCAqLwpkaWZmIC0tZ2l0IGEvcGF0aHNwZWMuYyBiL3BhdGhzcGVjLmMKaW5kZXggNmYwMDU5OS4uODI0M2UwNiAxMDA2NDQKLS0tIGEvcGF0aHNwZWMuYworKysgYi9wYXRoc3BlYy5jCkBAIC0xLDkgKzEsMTAgQEAKLSNkZWZpbmUgTk9fVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJkaXIuaCIKICNpbmNsdWRlICJwYXRoc3BlYy5oIgogI2luY2x1ZGUgImF0dHIuaCIKKyNpbmNsdWRlICJhcmd2LWFycmF5LmgiCisjaW5jbHVkZSAicXVvdGUuaCIKIAogLyoKICAqIEZpbmRzIHdoaWNoIG9mIHRoZSBnaXZlbiBwYXRoc3BlY3MgbWF0Y2ggaXRlbXMgaW4gdGhlIGluZGV4LgpAQCAtNDM3LDggKzQzOCwxMyBAQAogCX0gZWxzZSB7CiAJCW1hdGNoID0gcHJlZml4X3BhdGhfZ2VudGx5KHByZWZpeCwgcHJlZml4bGVuLAogCQkJCQkgICAmcHJlZml4bGVuLCBjb3B5ZnJvbSk7Ci0JCWlmICghbWF0Y2gpCi0JCQlkaWUoXygiJXM6ICclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IiksIGVsdCwgY29weWZyb20pOworCQlpZiAoIW1hdGNoKSB7CisJCQljb25zdCBjaGFyICpoaW50X3BhdGggPSBnZXRfZ2l0X3dvcmtfdHJlZSgpOworCQkJaWYgKCFoaW50X3BhdGgpCisJCQkJaGludF9wYXRoID0gZ2V0X2dpdF9kaXIoKTsKKwkJCWRpZShfKCIlczogJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkgYXQgJyVzJyIpLCBlbHQsCisJCQkgICAgY29weWZyb20sIGFic29sdXRlX3BhdGgoaGludF9wYXRoKSk7CisJCX0KIAl9CiAKIAlpdGVtLT5tYXRjaCA9IG1hdGNoOwpAQCAtNjE0LDYgKzYyMCw0MiBAQAogCX0KIH0KIAordm9pZCBwYXJzZV9wYXRoc3BlY19maWxlKHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsIHVuc2lnbmVkIG1hZ2ljX21hc2ssCisJCQkgdW5zaWduZWQgZmxhZ3MsIGNvbnN0IGNoYXIgKnByZWZpeCwKKwkJCSBjb25zdCBjaGFyICpmaWxlLCBpbnQgbnVsX3Rlcm1fbGluZSkKK3sKKwlzdHJ1Y3QgYXJndl9hcnJheSBwYXJzZWRfZmlsZSA9IEFSR1ZfQVJSQVlfSU5JVDsKKwlzdHJidWZfZ2V0bGluZV9mbiBnZXRsaW5lX2ZuID0gbnVsX3Rlcm1fbGluZSA/IHN0cmJ1Zl9nZXRsaW5lX251bCA6CisJCQkJCQkgICAgICAgc3RyYnVmX2dldGxpbmU7CisJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3Qgc3RyYnVmIHVucXVvdGVkID0gU1RSQlVGX0lOSVQ7CisJRklMRSAqaW47CisKKwlpZiAoIXN0cmNtcChmaWxlLCAiLSIpKQorCQlpbiA9IHN0ZGluOworCWVsc2UKKwkJaW4gPSB4Zm9wZW4oZmlsZSwgInIiKTsKKworCXdoaWxlIChnZXRsaW5lX2ZuKCZidWYsIGluKSAhPSBFT0YpIHsKKwkJaWYgKCFudWxfdGVybV9saW5lICYmIGJ1Zi5idWZbMF0gPT0gJyInKSB7CisJCQlzdHJidWZfcmVzZXQoJnVucXVvdGVkKTsKKwkJCWlmICh1bnF1b3RlX2Nfc3R5bGUoJnVucXVvdGVkLCBidWYuYnVmLCBOVUxMKSkKKwkJCQlkaWUoXygibGluZSBpcyBiYWRseSBxdW90ZWQ6ICVzIiksIGJ1Zi5idWYpOworCQkJc3RyYnVmX3N3YXAoJmJ1ZiwgJnVucXVvdGVkKTsKKwkJfQorCQlhcmd2X2FycmF5X3B1c2goJnBhcnNlZF9maWxlLCBidWYuYnVmKTsKKwkJc3RyYnVmX3Jlc2V0KCZidWYpOworCX0KKworCXN0cmJ1Zl9yZWxlYXNlKCZ1bnF1b3RlZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CisJaWYgKGluICE9IHN0ZGluKQorCQlmY2xvc2UoaW4pOworCisJcGFyc2VfcGF0aHNwZWMocGF0aHNwZWMsIG1hZ2ljX21hc2ssIGZsYWdzLCBwcmVmaXgsIHBhcnNlZF9maWxlLmFyZ3YpOworCWFyZ3ZfYXJyYXlfY2xlYXIoJnBhcnNlZF9maWxlKTsKK30KKwogdm9pZCBjb3B5X3BhdGhzcGVjKHN0cnVjdCBwYXRoc3BlYyAqZHN0LCBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnNyYykKIHsKIAlpbnQgaSwgajsKQEAgLTY1OSwzICs3MDEsNDEgQEAKIAlGUkVFX0FORF9OVUxMKHBhdGhzcGVjLT5pdGVtcyk7CiAJcGF0aHNwZWMtPm5yID0gMDsKIH0KKworaW50IG1hdGNoX3BhdGhzcGVjX2F0dHJzKGNvbnN0IHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAorCQkJIGNvbnN0IGNoYXIgKm5hbWUsIGludCBuYW1lbGVuLAorCQkJIGNvbnN0IHN0cnVjdCBwYXRoc3BlY19pdGVtICppdGVtKQoreworCWludCBpOworCWNoYXIgKnRvX2ZyZWUgPSBOVUxMOworCisJaWYgKG5hbWVbbmFtZWxlbl0pCisJCW5hbWUgPSB0b19mcmVlID0geG1lbWR1cHoobmFtZSwgbmFtZWxlbik7CisKKwlnaXRfY2hlY2tfYXR0cihpc3RhdGUsIG5hbWUsIGl0ZW0tPmF0dHJfY2hlY2spOworCisJZnJlZSh0b19mcmVlKTsKKworCWZvciAoaSA9IDA7IGkgPCBpdGVtLT5hdHRyX21hdGNoX25yOyBpKyspIHsKKwkJY29uc3QgY2hhciAqdmFsdWU7CisJCWludCBtYXRjaGVkOworCQllbnVtIGF0dHJfbWF0Y2hfbW9kZSBtYXRjaF9tb2RlOworCisJCXZhbHVlID0gaXRlbS0+YXR0cl9jaGVjay0+aXRlbXNbaV0udmFsdWU7CisJCW1hdGNoX21vZGUgPSBpdGVtLT5hdHRyX21hdGNoW2ldLm1hdGNoX21vZGU7CisKKwkJaWYgKEFUVFJfVFJVRSh2YWx1ZSkpCisJCQltYXRjaGVkID0gKG1hdGNoX21vZGUgPT0gTUFUQ0hfU0VUKTsKKwkJZWxzZSBpZiAoQVRUUl9GQUxTRSh2YWx1ZSkpCisJCQltYXRjaGVkID0gKG1hdGNoX21vZGUgPT0gTUFUQ0hfVU5TRVQpOworCQllbHNlIGlmIChBVFRSX1VOU0VUKHZhbHVlKSkKKwkJCW1hdGNoZWQgPSAobWF0Y2hfbW9kZSA9PSBNQVRDSF9VTlNQRUNJRklFRCk7CisJCWVsc2UKKwkJCW1hdGNoZWQgPSAobWF0Y2hfbW9kZSA9PSBNQVRDSF9WQUxVRSAmJgorCQkJCSAgICFzdHJjbXAoaXRlbS0+YXR0cl9tYXRjaFtpXS52YWx1ZSwgdmFsdWUpKTsKKwkJaWYgKCFtYXRjaGVkKQorCQkJcmV0dXJuIDA7CisJfQorCisJcmV0dXJuIDE7Cit9CmRpZmYgLS1naXQgYS9wYXRoc3BlYy5oIGIvcGF0aHNwZWMuaAppbmRleCBhNjUyNWE2Li40NTRjZTM2IDEwMDY0NAotLS0gYS9wYXRoc3BlYy5oCisrKyBiL3BhdGhzcGVjLmgKQEAgLTIyLDYgKzIyLDExIEBACiAKICNkZWZpbmUgUEFUSFNQRUNfT05FU1RBUiAxCS8qIHRoZSBwYXRoc3BlYyBwYXR0ZXJuIHNhdGlzZmllcyBHRk5NX09ORVNUQVIgKi8KIAorLyoqCisgKiBTZWUgZ2xvc3NhcnktY29udGV4dC50eHQgZm9yIHRoZSBzeW50YXggb2YgcGF0aHNwZWMuCisgKiBJbiBtZW1vcnksIGEgcGF0aHNwZWMgc2V0IGlzIHJlcHJlc2VudGVkIGJ5ICJzdHJ1Y3QgcGF0aHNwZWMiIGFuZCBpcworICogcHJlcGFyZWQgYnkgcGFyc2VfcGF0aHNwZWMoKS4KKyAqLwogc3RydWN0IHBhdGhzcGVjIHsKIAlpbnQgbnI7CiAJdW5zaWduZWQgaW50IGhhc193aWxkY2FyZDoxOwpAQCAtNzMsMjAgKzc4LDU4IEBACiAgKi8KICNkZWZpbmUgUEFUSFNQRUNfTElURVJBTF9QQVRIICgxPDw2KQogCi0vKgorLyoqCiAgKiBHaXZlbiBjb21tYW5kIGxpbmUgYXJndW1lbnRzIGFuZCBhIHByZWZpeCwgY29udmVydCB0aGUgaW5wdXQgdG8KICAqIHBhdGhzcGVjLiBkaWUoKSBpZiBhbnkgbWFnaWMgaW4gbWFnaWNfbWFzayBpcyB1c2VkLgogICoKICAqIEFueSBhcmd1bWVudHMgdXNlZCBhcmUgY29waWVkLiBJdCBpcyBzYWZlIGZvciB0aGUgY2FsbGVyIHRvIG1vZGlmeQogICogb3IgZnJlZSAncHJlZml4JyBhbmQgJ2FyZ3MnIGFmdGVyIGNhbGxpbmcgdGhpcyBmdW5jdGlvbi4KKyAqCisgKiAtIG1hZ2ljX21hc2sgc3BlY2lmaWVzIHdoYXQgZmVhdHVyZXMgdGhhdCBhcmUgTk9UIHN1cHBvcnRlZCBieSB0aGUgZm9sbG93aW5nCisgKiBjb2RlLiBJZiBhIHVzZXIgYXR0ZW1wdHMgdG8gdXNlIHN1Y2ggYSBmZWF0dXJlLCBwYXJzZV9wYXRoc3BlYygpIGNhbiByZWplY3QKKyAqIGl0IGVhcmx5LgorICoKKyAqIC0gZmxhZ3Mgc3BlY2lmaWVzIG90aGVyIHRoaW5ncyB0aGF0IHRoZSBjYWxsZXIgd2FudHMgcGFyc2VfcGF0aHNwZWMgdG8KKyAqIHBlcmZvcm0uCisgKgorICogLSBwcmVmaXggYW5kIGFyZ3MgY29tZSBmcm9tIGNtZF8qIGZ1bmN0aW9ucworICoKKyAqIHBhcnNlX3BhdGhzcGVjKCkgaGVscHMgY2F0Y2ggdW5zdXBwb3J0ZWQgZmVhdHVyZXMgYW5kIHJlamVjdCB0aGVtIHBvbGl0ZWx5LgorICogQXQgYSBsb3dlciBsZXZlbCwgZGlmZmVyZW50IHBhdGhzcGVjLXJlbGF0ZWQgZnVuY3Rpb25zIG1heSBub3Qgc3VwcG9ydCB0aGUKKyAqIHNhbWUgc2V0IG9mIGZlYXR1cmVzLiBTdWNoIHBhdGhzcGVjLXNlbnNpdGl2ZSBmdW5jdGlvbnMgYXJlIGd1YXJkZWQgd2l0aAorICogR1VBUkRfUEFUSFNQRUMoKSwgd2hpY2ggd2lsbCBkaWUgaW4gYW4gdW5mcmllbmRseSB3YXkgd2hlbiBhbiB1bnN1cHBvcnRlZAorICogZmVhdHVyZSBpcyByZXF1ZXN0ZWQuCisgKgorICogVGhlIGNvbW1hbmQgZGVzaWduZXJzIGFyZSBzdXBwb3NlZCB0byBtYWtlIHN1cmUgdGhhdCBHVUFSRF9QQVRIU1BFQygpIG5ldmVyCisgKiBkaWVzLiBUaGV5IGhhdmUgdG8gbWFrZSBzdXJlIGFsbCB1bnN1cHBvcnRlZCBmZWF0dXJlcyBhcmUgY2F1Z2h0IGJ5CisgKiBwYXJzZV9wYXRoc3BlYygpLCBub3QgYnkgR1VBUkRfUEFUSFNQRUMuIGdyZXBwaW5nIEdVQVJEX1BBVEhTUEVDKCkgc2hvdWxkCisgKiBnaXZlIHRoZSBkZXNpZ25lcnMgYWxsIHBhdGhzcGVjLXNlbnNpdGl2ZSBjb2RlcGF0aHMgYW5kIHdoYXQgZmVhdHVyZXMgdGhleQorICogc3VwcG9ydC4KKyAqCisgKiBBIHNpbWlsYXIgcHJvY2VzcyBpcyBhcHBsaWVkIHdoZW4gYSBuZXcgcGF0aHNwZWMgbWFnaWMgaXMgYWRkZWQuIFRoZSBkZXNpZ25lcgorICogbGlmdHMgdGhlIEdVQVJEX1BBVEhTUEVDIHJlc3RyaWN0aW9uIGluIHRoZSBmdW5jdGlvbnMgdGhhdCBzdXBwb3J0IHRoZSBuZXcKKyAqIG1hZ2ljLiBBdCB0aGUgc2FtZSB0aW1lIChzKWhlIGhhcyB0byBtYWtlIHN1cmUgdGhpcyBuZXcgZmVhdHVyZSB3aWxsIGJlCisgKiBjYXVnaHQgYXQgcGFyc2VfcGF0aHNwZWMoKSBpbiBjb21tYW5kcyB0aGF0IGNhbm5vdCBoYW5kbGUgdGhlIG5ldyBtYWdpYyBpbgorICogc29tZSBjYXNlcy4gZ3JlcHBpbmcgcGFyc2VfcGF0aHNwZWMoKSBzaG91bGQgaGVscC4KICAqLwotZXh0ZXJuIHZvaWQgcGFyc2VfcGF0aHNwZWMoc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYywKLQkJCSAgIHVuc2lnbmVkIG1hZ2ljX21hc2ssCi0JCQkgICB1bnNpZ25lZCBmbGFncywKLQkJCSAgIGNvbnN0IGNoYXIgKnByZWZpeCwKLQkJCSAgIGNvbnN0IGNoYXIgKiphcmdzKTsKLWV4dGVybiB2b2lkIGNvcHlfcGF0aHNwZWMoc3RydWN0IHBhdGhzcGVjICpkc3QsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqc3JjKTsKLWV4dGVybiB2b2lkIGNsZWFyX3BhdGhzcGVjKHN0cnVjdCBwYXRoc3BlYyAqKTsKK3ZvaWQgcGFyc2VfcGF0aHNwZWMoc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYywKKwkJICAgIHVuc2lnbmVkIG1hZ2ljX21hc2ssCisJCSAgICB1bnNpZ25lZCBmbGFncywKKwkJICAgIGNvbnN0IGNoYXIgKnByZWZpeCwKKwkJICAgIGNvbnN0IGNoYXIgKiphcmdzKTsKKy8qCisgKiBTYW1lIGFzIHBhcnNlX3BhdGhzcGVjKCkgYnV0IHVzZXMgZmlsZSBhcyBpbnB1dC4KKyAqIFdoZW4gJ2ZpbGUnIGlzIGV4YWN0bHkgIi0iIGl0IHVzZXMgJ3N0ZGluJyBpbnN0ZWFkLgorICovCit2b2lkIHBhcnNlX3BhdGhzcGVjX2ZpbGUoc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYywKKwkJCSB1bnNpZ25lZCBtYWdpY19tYXNrLAorCQkJIHVuc2lnbmVkIGZsYWdzLAorCQkJIGNvbnN0IGNoYXIgKnByZWZpeCwKKwkJCSBjb25zdCBjaGFyICpmaWxlLAorCQkJIGludCBudWxfdGVybV9saW5lKTsKKwordm9pZCBjb3B5X3BhdGhzcGVjKHN0cnVjdCBwYXRoc3BlYyAqZHN0LCBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnNyYyk7Cit2b2lkIGNsZWFyX3BhdGhzcGVjKHN0cnVjdCBwYXRoc3BlYyAqKTsKIAogc3RhdGljIGlubGluZSBpbnQgcHNfc3RybmNtcChjb25zdCBzdHJ1Y3QgcGF0aHNwZWNfaXRlbSAqaXRlbSwKIAkJCSAgICAgY29uc3QgY2hhciAqczEsIGNvbnN0IGNoYXIgKnMyLCBzaXplX3QgbikKQEAgLTEwNiwxMCArMTQ5LDEzIEBACiAJCXJldHVybiBzdHJjbXAoczEsIHMyKTsKIH0KIAotZXh0ZXJuIHZvaWQgYWRkX3BhdGhzcGVjX21hdGNoZXNfYWdhaW5zdF9pbmRleChjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjLAotCQkJCQkgICAgICAgY29uc3Qgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCi0JCQkJCSAgICAgICBjaGFyICpzZWVuKTsKLWV4dGVybiBjaGFyICpmaW5kX3BhdGhzcGVjc19tYXRjaGluZ19hZ2FpbnN0X2luZGV4KGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCi0JCQkJCQkgICBjb25zdCBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSk7Cit2b2lkIGFkZF9wYXRoc3BlY19tYXRjaGVzX2FnYWluc3RfaW5kZXgoY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYywKKwkJCQkJY29uc3Qgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCisJCQkJCWNoYXIgKnNlZW4pOworY2hhciAqZmluZF9wYXRoc3BlY3NfbWF0Y2hpbmdfYWdhaW5zdF9pbmRleChjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjLAorCQkJCQkgICAgY29uc3Qgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpOworaW50IG1hdGNoX3BhdGhzcGVjX2F0dHJzKGNvbnN0IHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAorCQkJIGNvbnN0IGNoYXIgKm5hbWUsIGludCBuYW1lbGVuLAorCQkJIGNvbnN0IHN0cnVjdCBwYXRoc3BlY19pdGVtICppdGVtKTsKIAogI2VuZGlmIC8qIFBBVEhTUEVDX0ggKi8KZGlmZiAtLWdpdCBhL3BlcmwvR2l0LnBtIGIvcGVybC9HaXQucG0KaW5kZXggZDg1NjkzMC4uNTRjOWVkMCAxMDA2NDQKLS0tIGEvcGVybC9HaXQucG0KKysrIGIvcGVybC9HaXQucG0KQEAgLTU2Myw3ICs1NjMsNyBAQAogUXVlcnkgdXNlciBDPFBST01QVD4gYW5kIHJldHVybiBhbnN3ZXIgZnJvbSB1c2VyLgogCiBIb25vdXJzIEdJVF9BU0tQQVNTIGFuZCBTU0hfQVNLUEFTUyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZm9yIHF1ZXJ5aW5nCi10aGUgdXNlci4gSWYgbm8gKl9BU0tQQVNTIHZhcmlhYmxlIGlzIHNldCBvciBhbiBlcnJvciBvY2NvdXJlZCwKK3RoZSB1c2VyLiBJZiBubyAqX0FTS1BBU1MgdmFyaWFibGUgaXMgc2V0IG9yIGFuIGVycm9yIG9jY3VycmVkLAogdGhlIHRlcm1pbmFsIGlzIHRyaWVkIGFzIGEgZmFsbGJhY2suCiBJZiBDPElTUEFTU1dPUkQ+IGlzIHNldCBhbmQgdHJ1ZSwgdGhlIHRlcm1pbmFsIGRpc2FibGVzIGVjaG8uCiAKQEAgLTk4MCw3ICs5ODAsNyBAQAogCQlyZXR1cm4gLTE7CiAJfQogCi0JaWYgKCRkZXNjcmlwdGlvbiAhfiAvXlswLTlhLWZBLUZdezQwfSBcUysgKFxkKykkLykgeworCWlmICgkZGVzY3JpcHRpb24gIX4gL15bMC05YS1mQS1GXXs0MH0oPzpbMC05YS1mQS1GXXsyNH0pPyBcUysgKFxkKykkLykgewogCQljYXJwICJVbmV4cGVjdGVkIHJlc3VsdCByZXR1cm5lZCBmcm9tIGdpdCBjYXQtZmlsZSI7CiAJCXJldHVybiAtMTsKIAl9CmRpZmYgLS1naXQgYS9wZXJsL0dpdC9TVk4ucG0gYi9wZXJsL0dpdC9TVk4ucG0KaW5kZXggNzZiMjk2NS4uNGIyOGI4NyAxMDA2NDQKLS0tIGEvcGVybC9HaXQvU1ZOLnBtCisrKyBiL3BlcmwvR2l0L1NWTi5wbQpAQCAtMTQ5MSw2ICsxNDkxLDEwIEBACiAKIHN1YiBjaGVja19hdXRob3IgewogCW15ICgkYXV0aG9yKSA9IEBfOworCWlmIChkZWZpbmVkICRhdXRob3IpIHsKKwkJJGF1dGhvciA9fiBzL15ccysvL2c7CisJCSRhdXRob3IgPX4gcy9ccyskLy9nOworCX0KIAlpZiAoIWRlZmluZWQgJGF1dGhvciB8fCBsZW5ndGggJGF1dGhvciA9PSAwKSB7CiAJCSRhdXRob3IgPSAnKG5vIGF1dGhvciknOwogCX0KZGlmZiAtLWdpdCBhL3BrdC1saW5lLmMgYi9wa3QtbGluZS5jCmluZGV4IDA0ZDEwYmIuLmEwZTg3YjEgMTAwNjQ0Ci0tLSBhL3BrdC1saW5lLmMKKysrIGIvcGt0LWxpbmUuYwpAQCAtODgsMTMgKzg4LDE1IEBACiB2b2lkIHBhY2tldF9mbHVzaChpbnQgZmQpCiB7CiAJcGFja2V0X3RyYWNlKCIwMDAwIiwgNCwgMSk7Ci0Jd3JpdGVfb3JfZGllKGZkLCAiMDAwMCIsIDQpOworCWlmICh3cml0ZV9pbl9mdWxsKGZkLCAiMDAwMCIsIDQpIDwgMCkKKwkJZGllX2Vycm5vKF8oInVuYWJsZSB0byB3cml0ZSBmbHVzaCBwYWNrZXQiKSk7CiB9CiAKIHZvaWQgcGFja2V0X2RlbGltKGludCBmZCkKIHsKIAlwYWNrZXRfdHJhY2UoIjAwMDEiLCA0LCAxKTsKLQl3cml0ZV9vcl9kaWUoZmQsICIwMDAxIiwgNCk7CisJaWYgKHdyaXRlX2luX2Z1bGwoZmQsICIwMDAxIiwgNCkgPCAwKQorCQlkaWVfZXJybm8oXygidW5hYmxlIHRvIHdyaXRlIGRlbGltIHBhY2tldCIpKTsKIH0KIAogaW50IHBhY2tldF9mbHVzaF9nZW50bHkoaW50IGZkKQpAQCAtMTE3LDcgKzExOSw3IEBACiAJc3RyYnVmX2FkZChidWYsICIwMDAxIiwgNCk7CiB9CiAKLXN0YXRpYyB2b2lkIHNldF9wYWNrZXRfaGVhZGVyKGNoYXIgKmJ1ZiwgY29uc3QgaW50IHNpemUpCit2b2lkIHNldF9wYWNrZXRfaGVhZGVyKGNoYXIgKmJ1ZiwgaW50IHNpemUpCiB7CiAJc3RhdGljIGNoYXIgaGV4Y2hhcltdID0gIjAxMjM0NTY3ODlhYmNkZWYiOwogCkBAIC0xMjksMTIgKzEzMSwxNCBAQAogCSN1bmRlZiBoZXgKIH0KIAotc3RhdGljIHZvaWQgZm9ybWF0X3BhY2tldChzdHJ1Y3Qgc3RyYnVmICpvdXQsIGNvbnN0IGNoYXIgKmZtdCwgdmFfbGlzdCBhcmdzKQorc3RhdGljIHZvaWQgZm9ybWF0X3BhY2tldChzdHJ1Y3Qgc3RyYnVmICpvdXQsIGNvbnN0IGNoYXIgKnByZWZpeCwKKwkJCSAgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFyZ3MpCiB7CiAJc2l6ZV90IG9yaWdfbGVuLCBuOwogCiAJb3JpZ19sZW4gPSBvdXQtPmxlbjsKIAlzdHJidWZfYWRkc3RyKG91dCwgIjAwMDAiKTsKKwlzdHJidWZfYWRkc3RyKG91dCwgcHJlZml4KTsKIAlzdHJidWZfdmFkZGYob3V0LCBmbXQsIGFyZ3MpOwogCW4gPSBvdXQtPmxlbiAtIG9yaWdfbGVuOwogCkBAIC0xNDUsMTMgKzE0OSwxMyBAQAogCXBhY2tldF90cmFjZShvdXQtPmJ1ZiArIG9yaWdfbGVuICsgNCwgbiAtIDQsIDEpOwogfQogCi1zdGF0aWMgaW50IHBhY2tldF93cml0ZV9mbXRfMShpbnQgZmQsIGludCBnZW50bHksCitzdGF0aWMgaW50IHBhY2tldF93cml0ZV9mbXRfMShpbnQgZmQsIGludCBnZW50bHksIGNvbnN0IGNoYXIgKnByZWZpeCwKIAkJCSAgICAgIGNvbnN0IGNoYXIgKmZtdCwgdmFfbGlzdCBhcmdzKQogewogCXN0YXRpYyBzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCiAJc3RyYnVmX3Jlc2V0KCZidWYpOwotCWZvcm1hdF9wYWNrZXQoJmJ1ZiwgZm10LCBhcmdzKTsKKwlmb3JtYXRfcGFja2V0KCZidWYsIHByZWZpeCwgZm10LCBhcmdzKTsKIAlpZiAod3JpdGVfaW5fZnVsbChmZCwgYnVmLmJ1ZiwgYnVmLmxlbikgPCAwKSB7CiAJCWlmICghZ2VudGx5KSB7CiAJCQljaGVja19waXBlKGVycm5vKTsKQEAgLTE2OCw3ICsxNzIsNyBAQAogCXZhX2xpc3QgYXJnczsKIAogCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7Ci0JcGFja2V0X3dyaXRlX2ZtdF8xKGZkLCAwLCBmbXQsIGFyZ3MpOworCXBhY2tldF93cml0ZV9mbXRfMShmZCwgMCwgIiIsIGZtdCwgYXJncyk7CiAJdmFfZW5kKGFyZ3MpOwogfQogCkBAIC0xNzgsNyArMTgyLDcgQEAKIAl2YV9saXN0IGFyZ3M7CiAKIAl2YV9zdGFydChhcmdzLCBmbXQpOwotCXN0YXR1cyA9IHBhY2tldF93cml0ZV9mbXRfMShmZCwgMSwgZm10LCBhcmdzKTsKKwlzdGF0dXMgPSBwYWNrZXRfd3JpdGVfZm10XzEoZmQsIDEsICIiLCBmbXQsIGFyZ3MpOwogCXZhX2VuZChhcmdzKTsKIAlyZXR1cm4gc3RhdHVzOwogfQpAQCAtMjExLDcgKzIxNSw3IEBACiAJdmFfbGlzdCBhcmdzOwogCiAJdmFfc3RhcnQoYXJncywgZm10KTsKLQlmb3JtYXRfcGFja2V0KGJ1ZiwgZm10LCBhcmdzKTsKKwlmb3JtYXRfcGFja2V0KGJ1ZiwgIiIsIGZtdCwgYXJncyk7CiAJdmFfZW5kKGFyZ3MpOwogfQogCkBAIC0zNTIsNiArMzU2LDExIEBACiAKIAlidWZmZXJbbGVuXSA9IDA7CiAJcGFja2V0X3RyYWNlKGJ1ZmZlciwgbGVuLCAwKTsKKworCWlmICgob3B0aW9ucyAmIFBBQ0tFVF9SRUFEX0RJRV9PTl9FUlJfUEFDS0VUKSAmJgorCSAgICBzdGFydHNfd2l0aChidWZmZXIsICJFUlIgIikpCisJCWRpZShfKCJyZW1vdGUgZXJyb3I6ICVzIiksIGJ1ZmZlciArIDQpOworCiAJKnBrdGxlbiA9IGxlbjsKIAlyZXR1cm4gUEFDS0VUX1JFQURfTk9STUFMOwogfQpAQCAtNDMzLDYgKzQ0MiwyOSBAQAogCXJldHVybiBzYl9vdXQtPmxlbiAtIG9yaWdfbGVuOwogfQogCitpbnQgcmVjdl9zaWRlYmFuZChjb25zdCBjaGFyICptZSwgaW50IGluX3N0cmVhbSwgaW50IG91dCkKK3sKKwljaGFyIGJ1ZltMQVJHRV9QQUNLRVRfTUFYICsgMV07CisJaW50IGxlbjsKKwlzdHJ1Y3Qgc3RyYnVmIHNjcmF0Y2ggPSBTVFJCVUZfSU5JVDsKKwllbnVtIHNpZGViYW5kX3R5cGUgc2lkZWJhbmRfdHlwZTsKKworCXdoaWxlICgxKSB7CisJCWxlbiA9IHBhY2tldF9yZWFkKGluX3N0cmVhbSwgTlVMTCwgTlVMTCwgYnVmLCBMQVJHRV9QQUNLRVRfTUFYLAorCQkJCSAgMCk7CisJCWlmICghZGVtdWx0aXBsZXhfc2lkZWJhbmQobWUsIGJ1ZiwgbGVuLCAwLCAmc2NyYXRjaCwKKwkJCQkJICAmc2lkZWJhbmRfdHlwZSkpCisJCQljb250aW51ZTsKKwkJc3dpdGNoIChzaWRlYmFuZF90eXBlKSB7CisJCWNhc2UgU0lERUJBTkRfUFJJTUFSWToKKwkJCXdyaXRlX29yX2RpZShvdXQsIGJ1ZiArIDEsIGxlbiAtIDEpOworCQkJYnJlYWs7CisJCWRlZmF1bHQ6IC8qIGVycm9yczogbWVzc2FnZSBhbHJlYWR5IHdyaXR0ZW4gKi8KKwkJCXJldHVybiBzaWRlYmFuZF90eXBlOworCQl9CisJfQorfQorCiAvKiBQYWNrZXQgUmVhZGVyIEZ1bmN0aW9ucyAqLwogdm9pZCBwYWNrZXRfcmVhZGVyX2luaXQoc3RydWN0IHBhY2tldF9yZWFkZXIgKnJlYWRlciwgaW50IGZkLAogCQkJY2hhciAqc3JjX2J1ZmZlciwgc2l6ZV90IHNyY19sZW4sCkBAIC00NDYsMjUgKzQ3OCw0MyBAQAogCXJlYWRlci0+YnVmZmVyID0gcGFja2V0X2J1ZmZlcjsKIAlyZWFkZXItPmJ1ZmZlcl9zaXplID0gc2l6ZW9mKHBhY2tldF9idWZmZXIpOwogCXJlYWRlci0+b3B0aW9ucyA9IG9wdGlvbnM7CisJcmVhZGVyLT5tZSA9ICJnaXQiOwogfQogCiBlbnVtIHBhY2tldF9yZWFkX3N0YXR1cyBwYWNrZXRfcmVhZGVyX3JlYWQoc3RydWN0IHBhY2tldF9yZWFkZXIgKnJlYWRlcikKIHsKKwlzdHJ1Y3Qgc3RyYnVmIHNjcmF0Y2ggPSBTVFJCVUZfSU5JVDsKKwogCWlmIChyZWFkZXItPmxpbmVfcGVla2VkKSB7CiAJCXJlYWRlci0+bGluZV9wZWVrZWQgPSAwOwogCQlyZXR1cm4gcmVhZGVyLT5zdGF0dXM7CiAJfQogCi0JcmVhZGVyLT5zdGF0dXMgPSBwYWNrZXRfcmVhZF93aXRoX3N0YXR1cyhyZWFkZXItPmZkLAotCQkJCQkJICZyZWFkZXItPnNyY19idWZmZXIsCi0JCQkJCQkgJnJlYWRlci0+c3JjX2xlbiwKLQkJCQkJCSByZWFkZXItPmJ1ZmZlciwKLQkJCQkJCSByZWFkZXItPmJ1ZmZlcl9zaXplLAotCQkJCQkJICZyZWFkZXItPnBrdGxlbiwKLQkJCQkJCSByZWFkZXItPm9wdGlvbnMpOworCS8qCisJICogQ29uc3VtZSBhbGwgcHJvZ3Jlc3MgcGFja2V0cyB1bnRpbCBhIHByaW1hcnkgcGF5bG9hZCBwYWNrZXQgaXMKKwkgKiByZWNlaXZlZAorCSAqLworCXdoaWxlICgxKSB7CisJCWVudW0gc2lkZWJhbmRfdHlwZSBzaWRlYmFuZF90eXBlOworCQlyZWFkZXItPnN0YXR1cyA9IHBhY2tldF9yZWFkX3dpdGhfc3RhdHVzKHJlYWRlci0+ZmQsCisJCQkJCQkJICZyZWFkZXItPnNyY19idWZmZXIsCisJCQkJCQkJICZyZWFkZXItPnNyY19sZW4sCisJCQkJCQkJIHJlYWRlci0+YnVmZmVyLAorCQkJCQkJCSByZWFkZXItPmJ1ZmZlcl9zaXplLAorCQkJCQkJCSAmcmVhZGVyLT5wa3RsZW4sCisJCQkJCQkJIHJlYWRlci0+b3B0aW9ucyk7CisJCWlmICghcmVhZGVyLT51c2Vfc2lkZWJhbmQpCisJCQlicmVhazsKKwkJaWYgKGRlbXVsdGlwbGV4X3NpZGViYW5kKHJlYWRlci0+bWUsIHJlYWRlci0+YnVmZmVyLAorCQkJCQkgcmVhZGVyLT5wa3RsZW4sIDEsICZzY3JhdGNoLAorCQkJCQkgJnNpZGViYW5kX3R5cGUpKQorCQkJYnJlYWs7CisJfQogCiAJaWYgKHJlYWRlci0+c3RhdHVzID09IFBBQ0tFVF9SRUFEX05PUk1BTCkKLQkJcmVhZGVyLT5saW5lID0gcmVhZGVyLT5idWZmZXI7CisJCS8qIFNraXAgdGhlIHNpZGViYW5kIGRlc2lnbmF0b3IgaWYgc2lkZWJhbmQgaXMgdXNlZCAqLworCQlyZWFkZXItPmxpbmUgPSByZWFkZXItPnVzZV9zaWRlYmFuZCA/CisJCQlyZWFkZXItPmJ1ZmZlciArIDEgOiByZWFkZXItPmJ1ZmZlcjsKIAllbHNlCiAJCXJlYWRlci0+bGluZSA9IE5VTEw7CiAKQEAgLTQ4MiwzICs1MzIsMzkgQEAKIAlyZWFkZXItPmxpbmVfcGVla2VkID0gMTsKIAlyZXR1cm4gcmVhZGVyLT5zdGF0dXM7CiB9CisKK3ZvaWQgcGFja2V0X3dyaXRlcl9pbml0KHN0cnVjdCBwYWNrZXRfd3JpdGVyICp3cml0ZXIsIGludCBkZXN0X2ZkKQoreworCXdyaXRlci0+ZGVzdF9mZCA9IGRlc3RfZmQ7CisJd3JpdGVyLT51c2Vfc2lkZWJhbmQgPSAwOworfQorCit2b2lkIHBhY2tldF93cml0ZXJfd3JpdGUoc3RydWN0IHBhY2tldF93cml0ZXIgKndyaXRlciwgY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcmdzOworCisJdmFfc3RhcnQoYXJncywgZm10KTsKKwlwYWNrZXRfd3JpdGVfZm10XzEod3JpdGVyLT5kZXN0X2ZkLCAwLAorCQkJICAgd3JpdGVyLT51c2Vfc2lkZWJhbmQgPyAiXDAwMSIgOiAiIiwgZm10LCBhcmdzKTsKKwl2YV9lbmQoYXJncyk7Cit9CisKK3ZvaWQgcGFja2V0X3dyaXRlcl9lcnJvcihzdHJ1Y3QgcGFja2V0X3dyaXRlciAqd3JpdGVyLCBjb25zdCBjaGFyICpmbXQsIC4uLikKK3sKKwl2YV9saXN0IGFyZ3M7CisKKwl2YV9zdGFydChhcmdzLCBmbXQpOworCXBhY2tldF93cml0ZV9mbXRfMSh3cml0ZXItPmRlc3RfZmQsIDAsCisJCQkgICB3cml0ZXItPnVzZV9zaWRlYmFuZCA/ICJcMDAzIiA6ICJFUlIgIiwgZm10LCBhcmdzKTsKKwl2YV9lbmQoYXJncyk7Cit9CisKK3ZvaWQgcGFja2V0X3dyaXRlcl9kZWxpbShzdHJ1Y3QgcGFja2V0X3dyaXRlciAqd3JpdGVyKQoreworCXBhY2tldF9kZWxpbSh3cml0ZXItPmRlc3RfZmQpOworfQorCit2b2lkIHBhY2tldF93cml0ZXJfZmx1c2goc3RydWN0IHBhY2tldF93cml0ZXIgKndyaXRlcikKK3sKKwlwYWNrZXRfZmx1c2god3JpdGVyLT5kZXN0X2ZkKTsKK30KZGlmZiAtLWdpdCBhL3BrdC1saW5lLmggYi9wa3QtbGluZS5oCmluZGV4IDViMjhkNDMuLmZlZjNhMGQgMTAwNjQ0Ci0tLSBhL3BrdC1saW5lLmgKKysrIGIvcGt0LWxpbmUuaApAQCAtMyw2ICszLDcgQEAKIAogI2luY2x1ZGUgImdpdC1jb21wYXQtdXRpbC5oIgogI2luY2x1ZGUgInN0cmJ1Zi5oIgorI2luY2x1ZGUgInNpZGViYW5kLmgiCiAKIC8qCiAgKiBXcml0ZSBhIHBhY2tldGl6ZWQgc3RyZWFtLCB3aGVyZSBlYWNoIGxpbmUgaXMgcHJlY2VkZWQgYnkKQEAgLTI0LDYgKzI1LDcgQEAKIHZvaWQgcGFja2V0X3dyaXRlX2ZtdChpbnQgZmQsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKSBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMiwgMykpKTsKIHZvaWQgcGFja2V0X2J1Zl9mbHVzaChzdHJ1Y3Qgc3RyYnVmICpidWYpOwogdm9pZCBwYWNrZXRfYnVmX2RlbGltKHN0cnVjdCBzdHJidWYgKmJ1Zik7Cit2b2lkIHNldF9wYWNrZXRfaGVhZGVyKGNoYXIgKmJ1ZiwgaW50IHNpemUpOwogdm9pZCBwYWNrZXRfd3JpdGUoaW50IGZkX291dCwgY29uc3QgY2hhciAqYnVmLCBzaXplX3Qgc2l6ZSk7CiB2b2lkIHBhY2tldF9idWZfd3JpdGUoc3RydWN0IHN0cmJ1ZiAqYnVmLCBjb25zdCBjaGFyICpmbXQsIC4uLikgX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDIsIDMpKSk7CiB2b2lkIHBhY2tldF9idWZfd3JpdGVfbGVuKHN0cnVjdCBzdHJidWYgKmJ1ZiwgY29uc3QgY2hhciAqZGF0YSwgc2l6ZV90IGxlbik7CkBAIC02MiwxNiArNjQsMjAgQEAKICAqCiAgKiBJZiBvcHRpb25zIGNvbnRhaW5zIFBBQ0tFVF9SRUFEX0NIT01QX05FV0xJTkUsIGEgdHJhaWxpbmcgbmV3bGluZSAoaWYKICAqIHByZXNlbnQpIGlzIHJlbW92ZWQgZnJvbSB0aGUgYnVmZmVyIGJlZm9yZSByZXR1cm5pbmcuCisgKgorICogSWYgb3B0aW9ucyBjb250YWlucyBQQUNLRVRfUkVBRF9ESUVfT05fRVJSX1BBQ0tFVCwgaXQgZGllcyB3aGVuIGl0IHNlZXMgYW4KKyAqIEVSUiBwYWNrZXQuCiAgKi8KLSNkZWZpbmUgUEFDS0VUX1JFQURfR0VOVExFX09OX0VPRiAoMXU8PDApCi0jZGVmaW5lIFBBQ0tFVF9SRUFEX0NIT01QX05FV0xJTkUgKDF1PDwxKQorI2RlZmluZSBQQUNLRVRfUkVBRF9HRU5UTEVfT05fRU9GICAgICAoMXU8PDApCisjZGVmaW5lIFBBQ0tFVF9SRUFEX0NIT01QX05FV0xJTkUgICAgICgxdTw8MSkKKyNkZWZpbmUgUEFDS0VUX1JFQURfRElFX09OX0VSUl9QQUNLRVQgKDF1PDwyKQogaW50IHBhY2tldF9yZWFkKGludCBmZCwgY2hhciAqKnNyY19idWZmZXIsIHNpemVfdCAqc3JjX2xlbiwgY2hhcgogCQkqYnVmZmVyLCB1bnNpZ25lZCBzaXplLCBpbnQgb3B0aW9ucyk7CiAKIC8qCiAgKiBSZWFkIGEgcGFja2V0aXplZCBsaW5lIGludG8gYSBidWZmZXIgbGlrZSB0aGUgJ3BhY2tldF9yZWFkKCknIGZ1bmN0aW9uIGJ1dAogICogcmV0dXJucyBhbiAnZW51bSBwYWNrZXRfcmVhZF9zdGF0dXMnIHdoaWNoIGluZGljYXRlcyB0aGUgc3RhdHVzIG9mIHRoZSByZWFkLgotICogVGhlIG51bWJlciBvZiBieXRlcyByZWFkIHdpbGwgYmUgYXNzaWdpbmVkIHRvICpwa3RsZW4gaWYgdGhlIHN0YXR1cyBvZiB0aGUKKyAqIFRoZSBudW1iZXIgb2YgYnl0ZXMgcmVhZCB3aWxsIGJlIGFzc2lnbmVkIHRvICpwa3RsZW4gaWYgdGhlIHN0YXR1cyBvZiB0aGUKICAqIHJlYWQgd2FzICdQQUNLRVRfUkVBRF9OT1JNQUwnLgogICovCiBlbnVtIHBhY2tldF9yZWFkX3N0YXR1cyB7CkBAIC0xMTYsNiArMTIyLDIxIEBACiAgKi8KIHNzaXplX3QgcmVhZF9wYWNrZXRpemVkX3RvX3N0cmJ1ZihpbnQgZmRfaW4sIHN0cnVjdCBzdHJidWYgKnNiX291dCk7CiAKKy8qCisgKiBSZWNlaXZlIG11bHRpcGxleGVkIG91dHB1dCBzdHJlYW0gb3ZlciBnaXQgbmF0aXZlIHByb3RvY29sLgorICogaW5fc3RyZWFtIGlzIHRoZSBpbnB1dCBzdHJlYW0gZnJvbSB0aGUgcmVtb3RlLCB3aGljaCBjYXJyaWVzIGRhdGEKKyAqIGluIHBrdF9saW5lIGZvcm1hdCB3aXRoIGJhbmQgZGVzaWduYXRvci4gIERlbXVsdGlwbGV4IGl0IGludG8gb3V0CisgKiBhbmQgZXJyIGFuZCByZXR1cm4gZXJyb3IgYXBwcm9wcmlhdGVseS4gIEJhbmQgIzEgY2FycmllcyB0aGUKKyAqIHByaW1hcnkgcGF5bG9hZC4gIFRoaW5ncyBjb21pbmcgb3ZlciBiYW5kICMyIGlzIG5vdCBuZWNlc3NhcmlseQorICogZXJyb3I7IHRoZXkgYXJlIHVzdWFsbHkgaW5mb3JtYXRpdmUgbWVzc2FnZSBvbiB0aGUgc3RhbmRhcmQgZXJyb3IKKyAqIHN0cmVhbSwgYWthICJ2ZXJib3NlIikuICBBIG1lc3NhZ2Ugb3ZlciBiYW5kICMzIGlzIGEgc2lnbmFsIHRoYXQKKyAqIHRoZSByZW1vdGUgZGllZCB1bmV4cGVjdGVkbHkuICBBIGZsdXNoKCkgY29uY2x1ZGVzIHRoZSBzdHJlYW0uCisgKgorICogUmV0dXJucyBTSURFQkFORF9GTFVTSCB1cG9uIGEgbm9ybWFsIGNvbmNsdXNpb24sIGFuZCBTSURFQkFORF9QUk9UT0NPTF9FUlJPUgorICogb3IgU0lERUJBTkRfUkVNT1RFX0VSUk9SIGlmIGFuIGVycm9yIG9jY3VycmVkLgorICovCitpbnQgcmVjdl9zaWRlYmFuZChjb25zdCBjaGFyICptZSwgaW50IGluX3N0cmVhbSwgaW50IG91dCk7CisKIHN0cnVjdCBwYWNrZXRfcmVhZGVyIHsKIAkvKiBzb3VyY2UgZmlsZSBkZXNjcmlwdG9yICovCiAJaW50IGZkOwpAQCAtMTQyLDE1ICsxNjMsMTggQEAKIAogCS8qIGluZGljYXRlcyBpZiBhIGxpbmUgaGFzIGJlZW4gcGVla2VkICovCiAJaW50IGxpbmVfcGVla2VkOworCisJdW5zaWduZWQgdXNlX3NpZGViYW5kIDogMTsKKwljb25zdCBjaGFyICptZTsKIH07CiAKIC8qCiAgKiBJbml0aWFsaXplIGEgJ3N0cnVjdCBwYWNrZXRfcmVhZGVyJyBvYmplY3Qgd2hpY2ggaXMgYW4KICAqIGFic3RyYWN0aW9uIGFyb3VuZCB0aGUgJ3BhY2tldF9yZWFkX3dpdGhfc3RhdHVzKCknIGZ1bmN0aW9uLgogICovCi1leHRlcm4gdm9pZCBwYWNrZXRfcmVhZGVyX2luaXQoc3RydWN0IHBhY2tldF9yZWFkZXIgKnJlYWRlciwgaW50IGZkLAotCQkJICAgICAgIGNoYXIgKnNyY19idWZmZXIsIHNpemVfdCBzcmNfbGVuLAotCQkJICAgICAgIGludCBvcHRpb25zKTsKK3ZvaWQgcGFja2V0X3JlYWRlcl9pbml0KHN0cnVjdCBwYWNrZXRfcmVhZGVyICpyZWFkZXIsIGludCBmZCwKKwkJCWNoYXIgKnNyY19idWZmZXIsIHNpemVfdCBzcmNfbGVuLAorCQkJaW50IG9wdGlvbnMpOwogCiAvKgogICogUGVyZm9ybSBhIHBhY2tldCByZWFkIGFuZCByZXR1cm4gdGhlIHN0YXR1cyBvZiB0aGUgcmVhZC4KQEAgLTE2Miw3ICsxODYsNyBAQAogICoJCSAgICAgICAnbGluZScgaXMgc2V0IHRvIHBvaW50IGF0IHRoZSByZWFkIGxpbmUKICAqIFBBQ0tFVF9SRUFEX0ZMVVNIOiAncGt0bGVuJyBpcyBzZXQgdG8gJzAnIGFuZCAnbGluZScgaXMgc2V0IHRvIE5VTEwKICAqLwotZXh0ZXJuIGVudW0gcGFja2V0X3JlYWRfc3RhdHVzIHBhY2tldF9yZWFkZXJfcmVhZChzdHJ1Y3QgcGFja2V0X3JlYWRlciAqcmVhZGVyKTsKK2VudW0gcGFja2V0X3JlYWRfc3RhdHVzIHBhY2tldF9yZWFkZXJfcmVhZChzdHJ1Y3QgcGFja2V0X3JlYWRlciAqcmVhZGVyKTsKIAogLyoKICAqIFBlZWsgdGhlIG5leHQgcGFja2V0IGxpbmUgd2l0aG91dCBjb25zdW1pbmcgaXQgYW5kIHJldHVybiB0aGUgc3RhdHVzLgpAQCAtMTcyLDExICsxOTYsMjYgQEAKICAqIFBlZWtpbmcgbXVsdGlwbGUgdGltZXMgd2l0aG91dCBjYWxsaW5nICdwYWNrZXRfcmVhZGVyX3JlYWQoKScgd2lsbCByZXR1cm4KICAqIHRoZSBzYW1lIHJlc3VsdC4KICAqLwotZXh0ZXJuIGVudW0gcGFja2V0X3JlYWRfc3RhdHVzIHBhY2tldF9yZWFkZXJfcGVlayhzdHJ1Y3QgcGFja2V0X3JlYWRlciAqcmVhZGVyKTsKK2VudW0gcGFja2V0X3JlYWRfc3RhdHVzIHBhY2tldF9yZWFkZXJfcGVlayhzdHJ1Y3QgcGFja2V0X3JlYWRlciAqcmVhZGVyKTsKIAogI2RlZmluZSBERUZBVUxUX1BBQ0tFVF9NQVggMTAwMAogI2RlZmluZSBMQVJHRV9QQUNLRVRfTUFYIDY1NTIwCiAjZGVmaW5lIExBUkdFX1BBQ0tFVF9EQVRBX01BWCAoTEFSR0VfUEFDS0VUX01BWCAtIDQpCiBleHRlcm4gY2hhciBwYWNrZXRfYnVmZmVyW0xBUkdFX1BBQ0tFVF9NQVhdOwogCitzdHJ1Y3QgcGFja2V0X3dyaXRlciB7CisJaW50IGRlc3RfZmQ7CisJdW5zaWduZWQgdXNlX3NpZGViYW5kIDogMTsKK307CisKK3ZvaWQgcGFja2V0X3dyaXRlcl9pbml0KHN0cnVjdCBwYWNrZXRfd3JpdGVyICp3cml0ZXIsIGludCBkZXN0X2ZkKTsKKworLyogVGhlc2UgZnVuY3Rpb25zIGRpZSB1cG9uIGZhaWx1cmUuICovCitfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMiwgMykpKQordm9pZCBwYWNrZXRfd3JpdGVyX3dyaXRlKHN0cnVjdCBwYWNrZXRfd3JpdGVyICp3cml0ZXIsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKTsKK19fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLCAyLCAzKSkpCit2b2lkIHBhY2tldF93cml0ZXJfZXJyb3Ioc3RydWN0IHBhY2tldF93cml0ZXIgKndyaXRlciwgY29uc3QgY2hhciAqZm10LCAuLi4pOwordm9pZCBwYWNrZXRfd3JpdGVyX2RlbGltKHN0cnVjdCBwYWNrZXRfd3JpdGVyICp3cml0ZXIpOwordm9pZCBwYWNrZXRfd3JpdGVyX2ZsdXNoKHN0cnVjdCBwYWNrZXRfd3JpdGVyICp3cml0ZXIpOworCiAjZW5kaWYKZGlmZiAtLWdpdCBhL3BvL1JFQURNRSBiL3BvL1JFQURNRQppbmRleCBhYTcwNGZmLi4wNzU5NWQzIDEwMDY0NAotLS0gYS9wby9SRUFETUUKKysrIGIvcG8vUkVBRE1FCkBAIC0yOTMsNyArMjkzLDcgQEAKIGVtaXRzIGdpYmJlcmlzaCBvbiBldmVyeSBjYWxsIHRvIGdldHRleHQuIFRvIHVzZSBpdCBydW4gdGhlIHRlc3Qgc3VpdGUKIHdpdGggaXQsIGUuZy46CiAKLSAgICBjZCB0ICYmIEdJVF9URVNUX0dFVFRFWFRfUE9JU09OPVllc1BsZWFzZSBwcm92ZSAtaiA5IC4vdFswLTldKi5zaAorICAgIGNkIHQgJiYgR0lUX1RFU1RfR0VUVEVYVF9QT0lTT049dHJ1ZSBwcm92ZSAtaiA5IC4vdFswLTldKi5zaAogCiBJZiB0ZXN0cyBicmVhayB3aXRoIGl0IHlvdSBzaG91bGQgaW5zcGVjdCB0aGVtIG1hbnVhbGx5IGFuZCBzZWUgaWYKIHdoYXQgeW91J3JlIHRyYW5zbGF0aW5nIGlzIHNhbmUsIGkuZS4gdGhhdCB5b3UncmUgbm90IHRyYW5zbGF0aW5nCmRpZmYgLS1naXQgYS9wby9URUFNUyBiL3BvL1RFQU1TCmluZGV4IGQ4ZjdhMmIuLmRiY2NlNGIgMTAwNjQ0Ci0tLSBhL3BvL1RFQU1TCisrKyBiL3BvL1RFQU1TCkBAIC0xMSwxMSArMTEsMTUgQEAKIE1lbWJlcnM6CUFsZXggSGVucmllIDxhbGV4aGVucmllMjRAZ21haWwuY29tPgogCiBMYW5ndWFnZToJZGUgKEdlcm1hbikKLVJlcG9zaXRvcnk6CWh0dHBzOi8vZ2l0aHViLmNvbS9yYWxmdGgvZ2l0LXBvLWRlCi1MZWFkZXI6CQlSYWxmIFRoaWVsb3cgPHJhbGYudGhpZWxvd0BnbWFpbC5jb20+Ci1NZW1iZXJzOglNYXR0aGlhcyBSw7xzdGVyIDxtYXR0aGlhcy5ydWVzdGVyQGdtYWlsLmNvbT4KK1JlcG9zaXRvcnk6CWh0dHBzOi8vZ2l0aHViLmNvbS9ydWVzdGVyL2dpdC1wby1kZQorTGVhZGVyOgkJTWF0dGhpYXMgUsO8c3RlciA8bWF0dGhpYXMucnVlc3RlckBnbWFpbC5jb20+CitNZW1iZXJzOglSYWxmIFRoaWVsb3cgPHJhbGYudGhpZWxvd0BnbWFpbC5jb20+CiAJCVBoaWxsaXAgU3plbGF0IDxwaGlsbGlwLnN6ZWxhdEBnbWFpbC5jb20+CiAKK0xhbmd1YWdlOgllbCAoR3JlZWspCitSZXBvc2l0b3J5OglodHRwczovL2dpdGh1Yi5jb20vdnlydXNzL2dpdC1wby1lbAorTGVhZGVyOgkJSmltbXkgQW5nZWxha29zIDx2eXJ1c3NAaGVsbHVnLmdyPgorCiBMYW5ndWFnZToJZXMgKFNwYW5pc2gpCiBSZXBvc2l0b3J5OglodHRwczovL2dpdGh1Yi5jb20vQ2hyaXNBRFIvZ2l0LXBvCiBMZWFkZXI6CQlDaHJpc3RvcGhlciBEw61heiA8Y2hyaXN0b3BoZXIuZGlhei5yaXZAZ21haWwuY29tPgpAQCAtMjksOSArMzMsOCBAQAogTGVhZGVyOgkJw4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24gPGF2YXJhYkBnbWFpbC5jb20+CiAKIExhbmd1YWdlOglpdCAoSXRhbGlhbikKLVJlcG9zaXRvcnk6CWh0dHBzOi8vZ2l0aHViLmNvbS9xdWl6emxvL2dpdC1wby1pdC8KLUxlYWRlcjoJCU1hcmNvIFBhb2xvbmUgPG1hcmNvcGFvbG9uZSBBVCBnbWFpbC5jb20+Ci1NZW1iZXJzOglTdGVmYW5vIExhdHRhcmluaSA8c3RlZmFuby5sYXR0YXJpbmkgQVQgZ21haWwuY29tPgorUmVwb3NpdG9yeToJaHR0cHM6Ly9naXRodWIuY29tL0FsZXNzYW5kcm9NZW50aS9naXQtcG8KK0xlYWRlcjoJCUFsZXNzYW5kcm8gTWVudGkgPGFsZXNzYW5kcm8ubWVudGlAYWxlc3NhbmRyb21lbnRpLml0PgogCiBMYW5ndWFnZToJa28gKEtvcmVhbikKIFJlcG9zaXRvcnk6CWh0dHBzOi8vZ2l0aHViLmNvbS9naXQtbDEwbi1rby9naXQtbDEwbi1rby8KQEAgLTUzLDYgKzU2LDEwIEBACiBSZXBvc2l0b3J5OglodHRwczovL2dpdGh1Yi5jb20vbmFmbW8vZ2l0LWwxMG4tc3YvCiBMZWFkZXI6CQlQZXRlciBLcmVmdGluZyA8cGV0ZXJAc29mdHdvbHZlcy5wcC5zZT4KIAorTGFuZ3VhZ2U6CXRyIChUdXJraXNoKQorUmVwb3NpdG9yeToJaHR0cHM6Ly9naXRodWIuY29tL2JpdGlnY2hpL2dpdC1wby8KK0xlYWRlcjoJCUVtaXIgU0FSSSA8Yml0aWdjaGlAbWUuY29tPgorCiBMYW5ndWFnZToJdmkgKFZpZXRuYW1lc2UpCiBSZXBvc2l0b3J5OglodHRwczovL2dpdGh1Yi5jb20vdm53aWxkbWFuL2dpdC8KIExlYWRlcjoJCVRy4bqnbiBOZ+G7jWMgUXXDom4gPHZud2lsZG1hbiBBVCBnbWFpbC5jb20+CkBAIC02Myw0ICs3MCw5IEBACiBMZWFkZXI6CQlKaWFuZyBYaW4gPHdvcmxkaGVsbG8ubmV0IEFUIGdtYWlsLmNvbT4KIE1lbWJlcnM6CVJheSBDaGVuIDxvbGRzaGFycCBBVCBnbWFpbC5jb20+CiAJCeS+neS6kSA8bGlseWRqd2cgQVQgZ21haWwuY29tPgotCQlGYW5neWkgWmhvdSA8ZmFuZ3lpLnpob3UgQVQgeXVyaWtvLm1vZT4KKwkJRmFuZ3lpIFpob3UgPG1lIEFUIGZhbmd5aS5pbz4KKworTGFuZ3VhZ2U6CXpoX1RXIChUcmFkaXRpb25hbCBDaGluZXNlKQorUmVzcG9zaXRvcnk6CWh0dHBzOi8vZ2l0aHViLmNvbS9sMTBuLXR3L2dpdC1wbworTGVhZGVyOiAJWWktSnl1biBQYW4gPHBhbjkzNDEyIEFUIGdtYWlsLmNvbT4KK01lbWJlcnM6CUZyYW5rbGluIFdlbmcgPGZyYW5rbGluIEFUIGdvb2Rob3JzZS5pZHYudHc+CmRpZmYgLS1naXQgYS9wby9iZy5wbyBiL3BvL2JnLnBvCmluZGV4IDgxNGQ0MGEuLjc5OTAzMTMgMTAwNjQ0Ci0tLSBhL3BvL2JnLnBvCisrKyBiL3BvL2JnLnBvCkBAIC0xLDcgKzEsNyBAQAogIyBCdWxnYXJpYW4gdHJhbnNsYXRpb24gb2YgZ2l0IHBvLWZpbGUuCi0jIENvcHlyaWdodCAoQykgMjAxNCwgMjAxNSwgMjAxNiwgMjAxNywgMjAxOCBBbGV4YW5kZXIgU2hvcG92IDxhc2hAa2FtYmFuYXJpYS5vcmc+LgorIyBDb3B5cmlnaHQgKEMpIDIwMTQsIDIwMTUsIDIwMTYsIDIwMTcsIDIwMTgsIDIwMTksIDIwMjAgQWxleGFuZGVyIFNob3BvdiA8YXNoQGthbWJhbmFyaWEub3JnPi4KICMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGdpdCBwYWNrYWdlLgotIyBBbGV4YW5kZXIgU2hvcG92IDxhc2hAa2FtYmFuYXJpYS5vcmc+LCAyMDE0LCAyMDE1LCAyMDE2LCAyMDE3LCAyMDE4LgorIyBBbGV4YW5kZXIgU2hvcG92IDxhc2hAa2FtYmFuYXJpYS5vcmc+LCAyMDE0LCAyMDE1LCAyMDE2LCAyMDE3LCAyMDE4LCAyMDE5LCAyMDIwLgogIwogIyA9PT09PT09PT09PT09PT09PT09PT09PT0KICMgRElDVElPTkFSWSBUTyBNRVJHRSBJTiBHSVQgR1VJCkBAIC0zMSw3ICszMSw3IEBACiAjIGFtINC/0YDQuNC70LDQs9Cw0Lwg0L/QvtGA0LXQtNC40YbQsCDQvtGCINC60YDRitC/0LrQuAogIyB3b3JraW5nIGRpcmVjdG9yeS90cmVlIOKAlCDQstC40L3QsNCz0Lgg0YDQsNCx0L7RgtC90L4g0LTRitGA0LLQviwgZ2l0INGB0LvQtdC00Lgg0YbRj9C70L7RgtC+INC00YrRgNCy0L4sINCwINC90LUg0LTQuNGA0LXQutGC0L7RgNC40LgsINGA0LDQsdC+0YLQvdCwINC00LjRgNC10LrRgtC+0YDQuNGPINC30LAgY3dkCiAjIHN3aXRjaCB0byBicmFuY2gg0L/RgNC10LzQuNC90LDQstCw0Lwg0LrRitC8INC60LvQvtC9Ci0jIHNwYXJzZSBlbnRyeSDRh9Cw0YHRgtC40YfQvdC+INC40LfRgtC10LPQu9C10L3QsCDQtNC40YDQtdC60YLQvtGA0LjRjy/Qv9GK0YIKKyMgc3BhcnNlIGVudHJ5L2Jsb2Ig0YfQsNGB0YLQuNGH0L3QviDQuNC30YLQtdCz0LvQtdC90LAg0LTQuNGA0LXQutGC0L7RgNC40Y8v0L/RitGCL9C+0LHQtdC60YItQkxPQgogIyByZXZpc2lvbiByYW5nZSDQtNC40LDQv9Cw0LfQvtC9INC90LAg0LLQtdGA0YHQuNC40YLQtQogIyBjb3ZlciBsZXR0ZXIg0L/RgNC40LTRgNGD0LbQsNCy0LDRidC+INC/0LjRgdC80L4KICMgcmVmZXJlbmNlIHJlcG9zaXRvcnkg0LXRgtCw0LvQvtC90L3QviDRhdGA0LDQvdC40LvQuNGJ0LUKQEAgLTc5LDcgKzc5LDkgQEAKICMgcGFja2ZpbGUg0L/QsNC60LXRggogIyBwcm9taXNvcnkg0LPQsNGA0LDQvdGC0LjRgNCw0YksINCz0LDRgNCw0L3RgiBwcm9taXNvcnkgcGFja2ZpbGUg0LPQsNGA0LDQvdGC0LjRgNCw0Ykg0L/QsNC60LXRgiwgcHJvbWlzb3J5IHJlbW90ZSDRhdGA0LDQvdC40LvQuNGJ0LUt0LPQsNGA0LDQvdGCCiAjIGRlbHRhIC0g0YDQsNC30LvQuNC60LAsINC00LXQu9GC0LAsINC+0LHQtdC60YIt0YDQsNC30LvQuNC60LAKLSMgcGVlbGVkIHRhZyAtINC/0YDQvtGB0LvQtdC00LXQvSDQtdGC0LjQutC10YIgLSDQutC+0LPQsNGC0L4g0LXRgtC40LrQtdGCINGB0L7Rh9C4INC60YrQvCDQtNGA0YPQsyDQtdGC0LjQutC10YIsINCwINC90LUg0L/QvtC00LDQstCw0L3QtSDQuCDQv9GA0L7RgdC70LXQtNGP0LLQsNC80LUg0L/QvtC00L7QsdC90L4g0L3QsCDRgdC40LzQstC+0LvQvdCwINCy0YDRitC30LrQsAorIyA/PworIyBwZWVsZWQgdGFnIC0g0L/RgNC+0YHQu9C10LTRj9Cy0LDQvdC1INC90LAg0LXRgtC40LrQtdGCIC0g0LrQvtCz0LDRgtC+INC10YLQuNC60LXRgiDRgdC+0YfQuCDQutGK0Lwg0LTRgNGD0LMg0LXRgtC40LrQtdGCLCDQsCDQvdC1INC/0L7QtNCw0LLQsNC90LUg0Lgg0L/RgNC+0YHQu9C10LTRj9Cy0LDQvNC1INC/0L7QtNC+0LHQvdC+INC90LAg0YHQuNC80LLQvtC70L3QsCDQstGA0YrQt9C60LAKKyMgbmVzdGVkIHRhZyAtINC90LXQv9GA0Y/QuiDQtdGC0LjQutC10YIKICMgc3RyaXAgLSDQv9GA0LXQvNCw0YXQstCw0LwgKNC30LAg0LrQvtC80L/QvtC90LXQvdGCINC/0YDQuCDRhNC40LvRgtGA0LjRgNCw0L3QtSkKICMgdW5yZWxhdGVkIGhpc3RvcmllcyAtINC90LXQt9Cw0LLQuNGB0LjQvNC4INC40YHRgtC+0YDQuNC4CiAjIGluZXhhY3QgcmVuYW1lIGRldGVjdGlvbiDRgtGK0YDRgdC10L3QtSDQvdCwINC/0YDQtdC40LzQtdC90YPQstCw0L3QuNGPINC90LAg0L7QsdC10LrRgtC4INGB0YrRh9C10YLQsNC90Lgg0YEg0L/RgNC+0LzQtdC90LgKQEAgLTEyNyw2ICsxMjksMjAgQEAKICMgc3NsIGJhY2tlbmQg0YDQtdCw0LvQuNC30LDRhtC40Y8g0L3QsCBTU0wKICMgZGVsdGEgaXNsYW5kINCz0YDRg9C/0LAg0YDQsNC30LvQuNC60LgKICMgaXNsYW5kIG1hcmtzINCz0YDQsNC90LjRhtC4INC90LAg0LPRgNGD0L/QuNGC0LUKKyMgcmVmbG9nINC20YPRgNC90LDQuyDQvdCwINGD0LrQsNC30LDRgtC10LvQuNGC0LUKKyMgaGFzaCDQutC+0L3RgtGA0L7Qu9C90LAg0YHRg9C80LAsINC40LfRh9C40YHQu9GP0LLQsNC90LUg0L3QsCDQutC+0L3RgtGA0L7Qu9C90LAg0YHRg9C80LAKKyMgZmFub3V0INC+0YLQutGK0YEgKNGA0LDQt9C/0LXRgNCy0LDQvdC1Pz8/KQorIyBpZHggLSBpbmRleCBvZiBwYWNrIGZpbGUsIDEgaW5kZXggcGVyIDEgcGFja2ZpbGUKKyMgbWlkeCAtIG11bHRpLXBhY2sgaW5kZXgsIGZvciBvYmplY3RzIGFjcm9zcyBtdWx0aXBsZSBwYWNrZmlsZXMKKyMgb3ZlcmxheSBtb2RlIC0g0L/RgNC40L/QvtC60YDQuNCy0LDRiSDRgNC10LbQuNC8ICjQv9GA0Lgg0LjQt9GC0LXQs9C70Y/QvWUpCisjIGluY3JlbWVudGFsIGZpbGUg0L3QsNGA0LDRgdGC0LLQsNGJINGE0LDQudC7CisjIHNwbGl0IChjb21taXQtZ3JhcGhyKSDRgNCw0LfQtNGA0L7QsdC10L0gKNCz0YDQsNGEINGBINC/0L7QtNCw0LLQsNC90LjRjykKKyMgY2xvYmJlciAoYSB0YWcpINC/0YDQtdC30LDQv9C40YHQstCw0LwgKNC10YLQuNC60LXRgikKKyMgYmxhbWUg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LDQstGC0L7RgNGB0YLQstC+CisjIHJlZm5hbWUg0LjQvNC1INC90LAg0YPQutCw0LfQsNGC0LXQuworIyBjb25lIHBhdHRlcm4gbWF0Y2hpbmcg0L/RitGC0LXQstC+0LTQvdC+INC90LDQv9Cw0YHQstCw0L3QtQorIyBuZWdhdGl2ZSBwYXR0ZXJuINC+0YLRgNC40YbQsNGC0LXQu9C10L0g0YjQsNCx0LvQvtC9CisjIGNvbG9yZWQgaHVuay9kaWZmINC+0YbQstC10YLQtdC90L4g0L/QsNGA0YfQtS/RgNCw0LfQu9C40LrQsAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICMg4oCeJHZhcuKAnCAtINC80L7QttC1INC00LAg0L3QtSDRgdGA0LDQsdC+0YLQstCwINC30LAgc2hlbGwg0LjQvNCwIGdldHRleHQg0LggZXZhbF9nZXR0ZXh0IC0g0L/RgNC+0LLQtdGA0LrQsCAtINC90LDQvNC40YDQsNGCINGB0LUg0LvQtdGB0L3QviDQv9C+IOKAniQKICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkBAIC0xNDMsMTAgKzE1OSwxMCBAQAogIyBmb3IgaSBpbiBgc29ydCAtdSBGSUxFU2A7IGRvIGNudD1gZ3JlcCAkaSBGSUxFUyB8IHdjIC1sYDsgZWNobyAkY250ICRpIDtkb25lIHwgc29ydCAtbgogbXNnaWQgIiIKIG1zZ3N0ciAiIgotIlByb2plY3QtSWQtVmVyc2lvbjogZ2l0IDIuMjBcbiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGdpdCAyLjI1XG4iCiAiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IEdpdCBNYWlsaW5nIExpc3QgPGdpdEB2Z2VyLmtlcm5lbC5vcmc+XG4iCi0iUE9ULUNyZWF0aW9uLURhdGU6IDIwMTgtMTItMDIgMTA6NTUrMDgwMFxuIgotIlBPLVJldmlzaW9uLURhdGU6IDIwMTgtMTItMDIgMTM6NDErMDEwMFxuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDIwLTAzLTExIDE1OjI2KzA4MDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDIwLTAzLTEyIDAwOjAzKzAxMDBcbiIKICJMYXN0LVRyYW5zbGF0b3I6IEFsZXhhbmRlciBTaG9wb3YgPGFzaEBrYW1iYW5hcmlhLm9yZz5cbiIKICJMYW5ndWFnZS1UZWFtOiBCdWxnYXJpYW4gPGRpY3RAZnNhLWJnLm9yZz5cbiIKICJMYW5ndWFnZTogYmdcbiIKQEAgLTE1NSwzNyArMTcxLDc0MCBAQAogIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKICJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD0obiAhPSAxKTtcbiIKIAotIzogYWR2aWNlLmM6OTkKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjM2OAorIywgYy1mb3JtYXQKK21zZ2lkICJIdWggKCVzKT8iCittc2dzdHIgItCd0LXRg9GB0L/QtdGI0LXQvSDQsNC90LDQu9C40Lcg4oCUIOKAniVz4oCcLiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NTIxIGFkZC1pbnRlcmFjdGl2ZS5jOjgyMiBzZXF1ZW5jZXIuYzozMTI0CisjOiBzZXF1ZW5jZXIuYzozNTYyIGJ1aWx0aW4vcmViYXNlLmM6ODc1IGJ1aWx0aW4vcmViYXNlLmM6MTY4NworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDg2IGJ1aWx0aW4vcmViYXNlLmM6MjEzMAorbXNnaWQgImNvdWxkIG5vdCByZWFkIGluZGV4IgorbXNnc3RyICLQuNC90LTQtdC60YHRitGCINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0L7Rh9C10YLQtdC9IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo1NzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyNjkKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjk0Cittc2dpZCAiYmluYXJ5IgorbXNnc3RyICLQtNCy0L7QuNGH0L3QviIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjM0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjc4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMzMgorbXNnaWQgIm5vdGhpbmciCittc2dzdHIgItC90LjRidC+IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2MzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMTQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzI5Cittc2dpZCAidW5jaGFuZ2VkIgorbXNnc3RyICLQvdGP0LzQsCDQv9GA0L7QvNC10L3QuCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjQzCittc2dpZCAiVXBkYXRlIgorbXNnc3RyICLQntCx0L3QvtCy0Y/QstCw0L3QtSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njg5IGFkZC1pbnRlcmFjdGl2ZS5jOjg3NworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhZ2UgJyVzJyIKK21zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC00L7QsdCw0LLRj9C90LUg0LIg0LjQvdC00LXQutGB0LAg0L3QsCDigJ4lc+KAnCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njk1IGFkZC1pbnRlcmFjdGl2ZS5jOjg4NCBzZXF1ZW5jZXIuYzozMzE3CisjOiBidWlsdGluL3JlYmFzZS5jOjg5OQorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBpbmRleCIKK21zZ3N0ciAi0LjQvdC00LXQutGB0YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LjRgdCw0L0iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAidXBkYXRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInVwZGF0ZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAiJWQg0YTQsNC50Lsg0L7QsdC90L7QstC10L1cbiIKK21zZ3N0clsxXSAiJWQg0YTQsNC50LvQsCDQvtCx0L3QvtCy0LXQvdC4XG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjcxNiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3OAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAibm90ZTogJXMgaXMgdW50cmFja2VkIG5vdy5cbiIKK21zZ3N0ciAi0JHQldCb0JXQltCa0JA6IOKAniVz4oCcINCy0LXRh9C1INC90LUg0YHQtSDRgdC70LXQtNC4LlxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3MjEgYXBwbHkuYzo0MTEwIGJ1aWx0aW4vY2hlY2tvdXQuYzoyODEKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFrZV9jYWNoZV9lbnRyeSBmYWlsZWQgZm9yIHBhdGggJyVzJyIKK21zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INGB0YrQt9C00LDQstCw0L3QtSDQvdCwINC30LDQv9C40YEg0LIg0LrQtdGI0LAg0YfRgNC10Lcg4oCebWFrZV9jYWNoZV9lbnRyeeKAnCDQt9CwIOKAniVz4oCcIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3NTEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NTUKK21zZ2lkICJSZXZlcnQiCittc2dzdHIgItCe0YLQvNGP0L3QsCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NzY3Cittc2dpZCAiQ291bGQgbm90IHBhcnNlIEhFQURee3RyZWV9IgorbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFEXnt0cmVlfeKAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LDQvdCw0LvQuNC30LjRgNCw0L0iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjgwNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzMQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAicmV2ZXJ0ZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJyZXZlcnRlZCAlZCBwYXRoc1xuIgorbXNnc3RyWzBdICIlZCDRhNCw0LnQuyDRgSDQvtGC0LzQtdC90LXQvdC4INC/0YDQvtC80LXQvdC4XG4iCittc2dzdHJbMV0gIiVkINGE0LDQudC70LAg0YEg0L7RgtC80LXQvdC10L3QuCDQv9GA0L7QvNC10L3QuFxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4NTYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gdW50cmFja2VkIGZpbGVzLlxuIgorbXNnc3RyICLQndGP0LzQsCDQvdC10YHQu9C10LTQtdC90Lgg0YTQsNC50LvQvtCy0LUuXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjg2MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY4OQorbXNnaWQgIkFkZCB1bnRyYWNrZWQiCittc2dzdHIgItCU0L7QsdCw0LLRj9C90LUg0L3QsCDQvdC10YHQu9C10LTQtdC90LgiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjg4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyNQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWRkZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJhZGRlZCAlZCBwYXRoc1xuIgorbXNnc3RyWzBdICIlZCDRhNCw0LnQuyDQtNC+0LHQsNCy0LXQvVxuIgorbXNnc3RyWzFdICIlZCDRhNCw0LnQu9CwINC00L7QsdCw0LLQtdC90LhcbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHVubWVyZ2VkOiAlcyIKK21zZ3N0ciAi0L/RgNC10L3QtdCx0YDQtdCz0LLQsNC90LUg0L3QsCDQvdC10YHQu9GP0YLQvtGC0L46IOKAniVz4oCcIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5MjkgYWRkLXBhdGNoLmM6MTY3NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiT25seSBiaW5hcnkgZmlsZXMgY2hhbmdlZC5cbiIKK21zZ3N0ciAi0KHQsNC80L4g0LTQstC+0LjRh9C90Lgg0YTQsNC50LvQvtCy0LUg0YHQsCDQv9GA0L7QvNC10L3QtdC90LguXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkzMSBhZGQtcGF0Y2guYzoxNjczIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2OAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBjaGFuZ2VzLlxuIgorbXNnc3RyICLQndGP0LzQsCDQv9GA0L7QvNC10L3QuC5cbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTM1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM3NgorbXNnaWQgIlBhdGNoIHVwZGF0ZSIKK21zZ3N0ciAi0J7QsdC90L7QstGP0LLQsNC90LUg0L3QsCDQutGA0YrQv9C60LAiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjk3NCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NTQKK21zZ2lkICJSZXZpZXcgZGlmZiIKK21zZ3N0ciAi0J/RgNC10LPQu9C10LQg0L3QsCDRgNCw0LfQu9C40LrQsNGC0LAiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDIKK21zZ2lkICJzaG93IHBhdGhzIHdpdGggY2hhbmdlcyIKK21zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L/RitGC0LjRidCw0YLQsCDRgSDQv9GA0L7QvNC10L3QuCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwNAorbXNnaWQgImFkZCB3b3JraW5nIHRyZWUgc3RhdGUgdG8gdGhlIHN0YWdlZCBzZXQgb2YgY2hhbmdlcyIKK21zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINGB0YrRgdGC0L7Rj9C90LjQtdGC0L4g0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviDQutGK0Lwg0L/RgNC+0LzQtdC90LjRgtC1INCyINC40L3QtNC10LrRgdCwIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA2Cittc2dpZCAicmV2ZXJ0IHN0YWdlZCBzZXQgb2YgY2hhbmdlcyBiYWNrIHRvIHRoZSBIRUFEIHZlcnNpb24iCittc2dzdHIgItCy0YDRitGJ0LDQvdC1INC90LAg0YHRitGB0YLQvtGP0L3QuNC10YLQviDQvdCwINC40L3QtNC10LrRgdCwINC60YrQvCDRgdC+0YfQtdC90L7RgtC+INC+0YIg4oCeSEVBROKAnCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwOAorbXNnaWQgInBpY2sgaHVua3MgYW5kIHVwZGF0ZSBzZWxlY3RpdmVseSIKK21zZ3N0ciAi0LjQvdGC0LXRgNCw0LrRgtC40LLQvdC4INC40LfQsdC+0YAg0Lgg0L/RgNC+0LzRj9C90LAg0L3QsCDQv9Cw0YDRh9C10YLQsCDQutC+0LQiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMTAKK21zZ2lkICJ2aWV3IGRpZmYgYmV0d2VlbiBIRUFEIGFuZCBpbmRleCIKK21zZ3N0ciAi0YDQsNC30LvQuNC60LAg0LzQtdC20LTRgyDRgdC+0YfQtdC90L7RgtC+INC+0YIg4oCeSEVBROKAnCDQuCDQuNC90LTQtdC60YHQsCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAxMgorbXNnaWQgImFkZCBjb250ZW50cyBvZiB1bnRyYWNrZWQgZmlsZXMgdG8gdGhlIHN0YWdlZCBzZXQgb2YgY2hhbmdlcyIKK21zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINGB0YrQtNGK0YDQttCw0L3QuNC10YLQviDQvdCwINC90LXRgdC70LXQtNC10L3QuNGC0LUg0YTQsNC50LvQvtCy0LUg0LrRitC8INC40L3QtNC10LrRgdCwIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDIwIGFkZC1pbnRlcmFjdGl2ZS5jOjEwNjkKK21zZ2lkICJQcm9tcHQgaGVscDoiCittc2dzdHIgItCf0L7QvNC+0Yk6IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDIyCittc2dpZCAic2VsZWN0IGEgc2luZ2xlIGl0ZW0iCittc2dzdHIgItC40LfQsdC+0YAg0L3QsCBl0LTQuNC9INC10LvQtdC80LXQvdGCIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDI0Cittc2dpZCAic2VsZWN0IGEgcmFuZ2Ugb2YgaXRlbXMiCittc2dzdHIgItC40LfQsdC+0YAg0L3QsCDQv9C+0YDQtdC00LjRhtCwINC+0YIg0LXQu9C10LzQtdC90YLQuCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyNgorbXNnaWQgInNlbGVjdCBtdWx0aXBsZSByYW5nZXMiCittc2dzdHIgItC40LfQsdC+0YAg0L3QsCDQvdGP0LrQvtC70LrQviDQv9C+0YDQtdC00LjRhtC4INC+0YIg0LXQu9C10LzQtdC90YLQuCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyOCBhZGQtaW50ZXJhY3RpdmUuYzoxMDczCittc2dpZCAic2VsZWN0IGl0ZW0gYmFzZWQgb24gdW5pcXVlIHByZWZpeCIKK21zZ3N0ciAi0LjQt9Cx0L7RgCDQvdCwINCx0LDQt9Cw0YLQsCDQvdCwINGD0L3QuNC60LDQu9C10L0g0L/RgNC10YTQuNC60YEiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMzAKK21zZ2lkICJ1bnNlbGVjdCBzcGVjaWZpZWQgaXRlbXMiCittc2dzdHIgItC40LfQstCw0LbQtNCw0L3QtSDQvdCwINGD0LrQsNC30LDQvdC+0YLQviDQvtGCINC40LfQsdC+0YDQsCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAzMgorbXNnaWQgImNob29zZSBhbGwgaXRlbXMiCittc2dzdHIgItC40LfQsdC+0YAg0L3QsCDQstGB0LjRh9C60Lgg0LXQu9C10LzQtdC90YLQuCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAzNAorbXNnaWQgIihlbXB0eSkgZmluaXNoIHNlbGVjdGluZyIKK21zZ3N0ciAiKNC/0YDQsNC30L3Qvikg0L/RgNC40LrQu9GO0YfQstCw0L3QtSDQvdCwINC40LfQsdC40YDQsNC90LXRgtC+IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDcxCittc2dpZCAic2VsZWN0IGEgbnVtYmVyZWQgaXRlbSIKK21zZ3N0ciAi0LjQt9Cx0L7RgCDQvdCwINC90L7QvNC10YDQuNGA0LDQvSDQtdC70LXQvNC10L3RgiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3NQorbXNnaWQgIihlbXB0eSkgc2VsZWN0IG5vdGhpbmciCittc2dzdHIgIijQv9GA0LDQt9C90L4pINCx0LXQtyDQuNC30LHQvtGAINC90LAg0L3QuNGJ0L4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwODMgYnVpbHRpbi9jbGVhbi5jOjgyMiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4NTEKK21zZ2lkICIqKiogQ29tbWFuZHMgKioqIgorbXNnc3RyICLil4/il4/il48g0JrQvtC80LDQvdC00Lgg4peP4peP4pePIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDg0IGJ1aWx0aW4vY2xlYW4uYzo4MjMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODQ4Cittc2dpZCAiV2hhdCBub3ciCittc2dzdHIgItCY0LfQsdC+0YAg0L3QsCDRgdC70LXQtNCy0LDRidC+INC00LXQudGB0YLQstC40LUiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJzdGFnZWQiCittc2dzdHIgItCyINC40L3QtNC10LrRgdCwIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTM2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEzCittc2dpZCAidW5zdGFnZWQiCittc2dzdHIgItC40LfQstGK0L0g0LjQvdC00LXQutGB0LAiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgYXBwbHkuYzo0OTY3IGFwcGx5LmM6NDk3MCBidWlsdGluL2FtLmM6MjI1MQorIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9jbG9uZS5jOjEyMyBidWlsdGluL2ZldGNoLmM6MTQ0CisjOiBidWlsdGluL21lcmdlLmM6Mjc0IGJ1aWx0aW4vcHVsbC5jOjE4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTQ4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEzCittc2dpZCAicGF0aCIKK21zZ3N0ciAi0L/RitGCIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTQzCittc2dpZCAiY291bGQgbm90IHJlZnJlc2ggaW5kZXgiCittc2dzdHIgItC40L3QtNC10LrRgdGK0YIg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0LHQvdC+0LLQtdC9IgorCisjCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTU3IGJ1aWx0aW4vY2xlYW4uYzo3ODcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIkJ5ZS5cbiIKK21zZ3N0ciAi0JjQt9GF0L7QtC5cbiIKKworIzogYWRkLXBhdGNoLmM6MzMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi0JTQvtCx0LDQstGP0L3QtSDQvdCwINC/0YDQvtC80Y/QvdCw0YLQsCDQvdCwINC/0YDQsNCy0LDRgtCwINC30LAg0LTQvtGB0YLRitC/IFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzozNCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjkKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YWdlIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLQlNC+0LHQsNCy0Y/QvdC1INC90LAg0LjQt9GC0YDQuNCy0LDQvdC10YLQviBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDMwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgItCU0L7QsdCw0LLRj9C90LUg0L3QsCDRgtC+0LLQsCDQv9Cw0YDRh9C1IFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzozNworbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJzdGFnaW5nLiIKK21zZ3N0ciAiIgorItCQ0LrQviDQutGA0YrQv9C60LDRgtCwINC80L7QttC1INC00LAg0YHQtSDQv9GA0LjQu9C+0LbQuCDRh9C40YHRgtC+LCDRgNC10LTQsNC60YLQuNGA0LDQvdC+0YLQviDQv9Cw0YDRh9C1INGJ0LUg0LHRitC00LUg0L3QtdC30LDQsdCw0LLQvdC+ICIKKyLQtNC+0LHQsNCy0LXQvdC+INC60YrQvCDQuNC90LTQtdC60YHQsC4iCisKKyM6IGFkZC1wYXRjaC5jOjQwCittc2dpZCAiIgorInkgLSBzdGFnZSB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHN0YWdlIHRoaXMgaHVua1xuIgorInEgLSBxdWl0OyBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IOKAlCDQtNC+0LHQsNCy0Y/QvdC1INC90LAg0L/QsNGA0YfQtdGC0L4g0LIg0LjQvdC00LXQutGB0LBcbiIKKyJuIOKAlCDQsdC10Lcg0LTQvtCx0LDQstGP0L3QtSDQvdCwINC/0LDRgNGH0LXRgtC+INCyINC40L3QtNC10LrRgdCwXG4iCisicSDigJQg0LjQt9GF0L7QtCwg0LHQtdC3INC00L7QsdCw0LLRj9C90LUg0L3QsCDRgtC+0LLQsCDQuCDQstGB0LjRh9C60Lgg0L7RgdGC0LDQstCw0YnQuCDQv9Cw0YDRh9C10YLQsCDQvtGCINGE0LDQudC70LBcbiIKKyJhIOKAlCDQtNC+0LHQsNCy0Y/QvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INGB0LvQtdC00LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LAg0L7RgiDRhNCw0LnQu9CwINCyINC40L3QtNC10LrRgdCwXG4iCisiZCDigJQg0LHQtdC3INC00L7QsdCw0LLRj9C90LUg0L3QsCDRgtC+0LLQsCDQuCDQstGB0LjRh9C60Lgg0YHQu9C10LTQstCw0YnQuCDQv9Cw0YDRh9C10YLQsCDQvtGCINGE0LDQudC70LAg0LIg0LjQvdC00LXQutGB0LBcbiIKKworIzogYWRkLXBhdGNoLmM6NTQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDMzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi0KHQutCw0YLQsNCy0LDQvdC1INC90LAg0L/RgNC+0LzRj9C90LDRgtCwINC90LAg0L/RgNCw0LLQsNGC0LAg0LfQsCDQtNC+0YHRgtGK0L8gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjU1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzNAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3Rhc2ggZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgItCh0LrQsNGC0LDQstCw0L3QtSDQvdCwINC40LfRgtGA0LjQstCw0L3QtdGC0L4gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjU2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzNQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3Rhc2ggdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLQodC60LDRgtCw0LLQsNC90LUg0L3QsCDRgtC+0LLQsCDQv9Cw0YDRh9C1IFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo1OAorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJzdGFzaGluZy4iCittc2dzdHIgIiIKKyLQkNC60L4g0LrRgNGK0L/QutCw0YLQsCDQvNC+0LbQtSDQtNCwINGB0LUg0L/RgNC40LvQvtC20Lgg0YfQuNGB0YLQviwg0YDQtdC00LDQutGC0LjRgNCw0L3QvtGC0L4g0L/QsNGA0YfQtSDRidC1INCx0YrQtNC1INC90LXQt9Cw0LHQsNCy0L3QviAiCisi0YHQutGK0YLQsNC90L4uIgorCisjOiBhZGQtcGF0Y2guYzo2MQorbXNnaWQgIiIKKyJ5IC0gc3Rhc2ggdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCBzdGFzaCB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHN0YXNoIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHN0YXNoIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBzdGFzaCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSDigJQg0YHQutCw0YLQsNCy0LDQvdC1INC90LAg0L/QsNGA0YfQtdGC0L5cbiIKKyJuIOKAlCDQsdC10Lcg0YHQutCw0YLQsNCy0LDQvdC1INC90LAg0L/QsNGA0YfQtdGC0L5cbiIKKyJxIOKAlCDQuNC30YXQvtC0LCDQsdC10Lcg0YHQutCw0YLQsNCy0LDQvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INC+0YHRgtCw0LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LBcbiIKKyJhIOKAlCDRgdC60LDRgtCw0LLQsNC90LUg0L3QsCDRgtC+0LLQsCDQuCDQstGB0LjRh9C60Lgg0YHQu9C10LTQstCw0YnQuCDQv9Cw0YDRh9C10YLQsCDQvtGCINGE0LDQudC70LBcbiIKKyJkIOKAlCDQsdC10Lcg0YHQutCw0YLQsNCy0LDQvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INGB0LvQtdC00LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LAg0L7RgiDRhNCw0LnQu9CwXG4iCisKKyM6IGFkZC1wYXRjaC5jOjc3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5zdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi0JjQt9Cy0LDQttC00LDQvdC1INC90LAg0L/RgNC+0LzRj9C90LDRgtCwINC90LAg0L/RgNCw0LLQsNGC0LAg0LfQsCDQtNC+0YHRgtGK0L8gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjc4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzOQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5zdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi0JjQt9Cy0LDQttC00LDQvdC1INC90LAg0LjQt9GC0YDQuNCy0LDQvdC10YLQviBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NzkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi0JjQt9Cy0LDQttC00LDQvdC1INC90LAg0YLQvtCy0LAg0L/QsNGA0YfQtSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6ODEKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisidW5zdGFnaW5nLiIKK21zZ3N0ciAiIgorItCQ0LrQviDQutGA0YrQv9C60LDRgtCwINC80L7QttC1INC00LAg0YHQtSDQv9GA0LjQu9C+0LbQuCDRh9C40YHRgtC+LCDRgNC10LTQsNC60YLQuNGA0LDQvdC+0YLQviDQv9Cw0YDRh9C1INGJ0LUg0LHRitC00LUg0L3QtdC30LDQsdCw0LLQvdC+ICIKKyLQuNC30LLQsNC00LXQvdC+INC+0YIg0LjQvdC00LXQutGB0LAuIgorCisjOiBhZGQtcGF0Y2guYzo4NAorbXNnaWQgIiIKKyJ5IC0gdW5zdGFnZSB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHVuc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkg4oCUINC40LfQstCw0LbQtNCw0L3QtSDQvdCwINC/0LDRgNGH0LXRgtC+INC+0YIg0LjQvdC00LXQutGB0LBcbiIKKyJuIOKAlCDQsdC10Lcg0LjQt9Cy0LDQttC00LDQvdC1INC90LAg0L/QsNGA0YfQtdGC0L4g0L7RgiDQuNC90LTQtdC60YHQsFxuIgorInEg4oCUINC40LfRhdC+0LQsINCx0LXQtyDQuNC30LLQsNC20LTQsNC90LUg0L3QsCDRgtC+0LLQsCDQuCDQstGB0LjRh9C60Lgg0L7RgdGC0LDQstCw0YnQuCDQv9Cw0YDRh9C10YLQsCDQvtGCINC40L3QtNC10LrRgdCwXG4iCisiYSDigJQg0LjQt9Cy0LDQttC00LDQvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INGB0LvQtdC00LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LAg0L7RgiDRhNCw0LnQu9CwINC+0YIg0LjQvdC00LXQutGB0LBcbiIKKyJkIOKAlCDQsdC10Lcg0LjQt9Cy0LDQttC00LDQvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INGB0LvQtdC00LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LAg0L7RgiDRhNCw0LnQu9CwINC+0YIg0LjQvdC00LXQutGB0LBcbiIKKworIzogYWRkLXBhdGNoLmM6OTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorItCf0YDQuNC70LDQs9Cw0L3QtSDQvdCwINC/0YDQvtC80Y/QvdCw0YLQsCDQvdCwINC/0YDQsNCy0LDRgtCwINC30LAg0LTQvtGB0YLRitC/INC60YrQvCDQuNC90LTQtdC60YHQsCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0NAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgItCf0YDQuNC70LDQs9Cw0L3QtSDQvdCwINC40LfRgtGA0LjQstCw0L3QtdGC0L4g0LrRitC8INC40L3QtNC10LrRgdCwIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMDEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgItCf0YDQuNC70LDQs9Cw0L3QtSDQvdCwINGC0L7QstCwINC/0LDRgNGH0LUg0LrRitC8INC40L3QtNC10LrRgdCwIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMDMgYWRkLXBhdGNoLmM6MTY4IGFkZC1wYXRjaC5jOjIxMQorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJhcHBseWluZy4iCittc2dzdHIgIiIKKyLQkNC60L4g0LrRgNGK0L/QutCw0YLQsCDQvNC+0LbQtSDQtNCwINGB0LUg0L/RgNC40LvQvtC20Lgg0YfQuNGB0YLQviwg0YDQtdC00LDQutGC0LjRgNCw0L3QvtGC0L4g0L/QsNGA0YfQtSDRidC1INCx0YrQtNC1INC90LXQt9Cw0LHQsNCy0L3QviAiCisi0L3QsNCx0LXQu9GP0LfQsNC90L4g0LfQsCDQv9GA0LjQu9Cw0LPQsNC90LUuIgorCisjOiBhZGQtcGF0Y2guYzoxMDYKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4XG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkg4oCUINC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINC/0LDRgNGH0LXRgtC+INC60YrQvCDQuNC90LTQtdC60YHQsFxuIgorIm4g4oCUINCx0LXQtyDQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDQv9Cw0YDRh9C10YLQviDQutGK0Lwg0LjQvdC00LXQutGB0LBcbiIKKyJxIOKAlCDQuNC30YXQvtC0LCDQsdC10Lcg0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INC+0YHRgtCw0LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LAg0LrRitC8INC40L3QtNC10LrRgdCwXG4iCisiYSDigJQg0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INGB0LvQtdC00LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LAg0L7RgiDRhNCw0LnQu9CwINC60YrQvCDQuNC90LTQtdC60YHQsFxuIgorImQg4oCUINCx0LXQtyDQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDRgtC+0LLQsCDQuCDQstGB0LjRh9C60Lgg0YHQu9C10LTQstCw0YnQuCDQv9Cw0YDRh9C10YLQsCDQvtGCINGE0LDQudC70LAg0LrRitC8INC40L3QtNC10LrRgdCwXG4iCisKKyM6IGFkZC1wYXRjaC5jOjEyMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2MworIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisi0J/RgNC10LzQsNGF0LLQsNC90LUg0L3QsCDQv9GA0L7QvNGP0L3QsNGC0LAg0LIg0L/RgNCw0LLQsNGC0LAg0LfQsCDQtNC+0YHRgtGK0L8g0L7RgiDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviBbeSxuLHEsYSxkIgorIiVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyMiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDkKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2NAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBkZWxldGlvbiBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLQn9GA0LXQvNCw0YXQstCw0L3QtSDQvdCwINC40LfRgtGA0LjQstCw0L3QtdGC0L4g0L7RgiDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTIzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLQn9GA0LXQvNCw0YXQstCw0L3QtSDQvdCwINC/0LDRgNGH0LXRgtC+INC+0YIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyNSBhZGQtcGF0Y2guYzoxNDcgYWRkLXBhdGNoLmM6MTkwCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorImRpc2NhcmRpbmcuIgorbXNnc3RyICIiCisi0JDQutC+INC60YDRitC/0LrQsNGC0LAg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQuNC70L7QttC4INGH0LjRgdGC0L4sINGA0LXQtNCw0LrRgtC40YDQsNC90L7RgtC+INC/0LDRgNGH0LUg0YnQtSDQsdGK0LTQtSDQvdC10LfQsNCx0LDQstC90L4gIgorItC90LDQsdC10LvRj9C30LDQvdC+INC30LAg0LfQsNC90YPQu9GP0LLQsNC90LUuIgorCisjOiBhZGQtcGF0Y2guYzoxMjggYWRkLXBhdGNoLmM6MTkzCittc2dpZCAiIgorInkgLSBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGRpc2NhcmQgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkg4oCUINC/0YDQtdC80LDRhdCy0LDQvdC1INC90LAg0L/QsNGA0YfQtdGC0L4g0L7RgiDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQvlxuIgorIm4g4oCUINCx0LXQtyDQv9GA0LXQvNCw0YXQstCw0L3QtSDQvdCwINC/0LDRgNGH0LXRgtC+INC+0YIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L5cbiIKKyJxIOKAlCDQuNC30YXQvtC0LCDQsdC10Lcg0L/RgNC10LzQsNGF0LLQsNC90LUg0L3QsCDRgtC+0LLQsCDQuCDQstGB0LjRh9C60Lgg0L7RgdGC0LDQstCw0YnQuCDQv9Cw0YDRh9C10YLQsCDQvtGCINGA0LDQsdC+0YLQvdC+0YLQviAiCisi0LTRitGA0LLQvlxuIgorImEg4oCUINC/0YDQtdC80LDRhdCy0LDQvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INGB0LvQtdC00LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LAg0L7RgiDRhNCw0LnQu9CwINC+0YIg0YDQsNCx0L7RgtC90L7RgtC+ICIKKyLQtNGK0YDQstC+XG4iCisiZCDigJQg0LHQtdC3INC/0YDQtdC80LDRhdCy0LDQvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INGB0LvQtdC00LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LAg0L7RgiDRhNCw0LnQu9CwINC+0YIg0YDQsNCx0L7RgtC90L7RgtC+ICIKKyLQtNGK0YDQstC+XG4iCisKKyM6IGFkZC1wYXRjaC5jOjE0MyBhZGQtcGF0Y2guYzoxODYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDUzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisi0J/RgNC10LzQsNGF0LLQsNC90LUg0L3QsCDQv9GA0L7QvNGP0L3QsNGC0LAg0LIg0L/RgNCw0LLQsNGC0LAg0LfQsCDQtNC+0YHRgtGK0L8g0L7RgiDQuNC90LTQtdC60YHQsCDQuCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviBbeSwiCisibixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE0NCBhZGQtcGF0Y2guYzoxODcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDU0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisi0J/RgNC10LzQsNGF0LLQsNC90LUg0L3QsCDQuNC30YLRgNC40LLQsNC90LXRgtC+INC+0YIg0LjQvdC00LXQutGB0LAg0Lgg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE0NSBhZGQtcGF0Y2guYzoxODggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDU1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi0J/RgNC10LzQsNGF0LLQsNC90LUg0L3QsCDQv9Cw0YDRh9C10YLQviDQvtGCINC40L3QtNC10LrRgdCwINC4INGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNTAKK21zZ2lkICIiCisieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IOKAlCDQv9GA0LXQvNCw0YXQstCw0L3QtSDQvdCwINC/0LDRgNGH0LXRgtC+INC+0YIg0LjQvdC00LXQutGB0LAg0Lgg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L5cbiIKKyJuIOKAlCDQsdC10Lcg0L/RgNC10LzQsNGF0LLQsNC90LUg0L3QsCDQv9Cw0YDRh9C10YLQviDQvtGCINC40L3QtNC10LrRgdCwINC4INGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+XG4iCisicSDigJQg0LjQt9GF0L7QtCwg0LHQtdC3INC/0YDQtdC80LDRhdCy0LDQvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INC+0YHRgtCw0LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LAg0L7RgiDQuNC90LTQtdC60YHQsCDQuCAiCisi0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L5cbiIKKyJhIOKAlCDQv9GA0LXQvNCw0YXQstCw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsCDQvtGCINC40L3QtNC10LrRgdCwINC4ICIKKyLRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQvlxuIgorImQg4oCUINCx0LXQtyDQv9GA0LXQvNCw0YXQstCw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsCDQvtGCINC40L3QtNC10LrRgdCwINC4ICIKKyLRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQvlxuIgorCisjOiBhZGQtcGF0Y2guYzoxNjQgYWRkLXBhdGNoLmM6MjA3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1OAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisi0J/RgNC40LvQsNCz0LDQvdC1INC90LAg0L/RgNC+0LzRj9C90LDRgtCwINCyINC/0YDQsNCy0LDRgtCwINC30LAg0LTQvtGB0YLRitC/INC+0YIg0LjQvdC00LXQutGB0LAg0Lgg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4gW3ksbiwiCisicSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNjUgYWRkLXBhdGNoLmM6MjA4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1OQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisi0J/RgNC40LvQsNCz0LDQvdC1INC90LAg0LjQt9GC0YDQuNCy0LDQvdC10YLQviDQvtGCINC40L3QtNC10LrRgdCwINC4INGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNjYgYWRkLXBhdGNoLmM6MjA5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2MAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi0J/RgNC40LvQsNCz0LDQvdC1INC90LAg0L/QsNGA0YfQtdGC0L4g0L7RgiDQuNC90LTQtdC60YHQsCDQuCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTcxCittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkg4oCUINC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINC/0LDRgNGH0LXRgtC+INC+0YIg0LjQvdC00LXQutGB0LAg0Lgg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L5cbiIKKyJuIOKAlCDQsdC10Lcg0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0L/QsNGA0YfQtdGC0L4g0L7RgiDQuNC90LTQtdC60YHQsCDQuCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQvlxuIgorInEg4oCUINC40LfRhdC+0LQsINCx0LXQtyDQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDRgtC+0LLQsCDQuCDQstGB0LjRh9C60Lgg0L7RgdGC0LDQstCw0YnQuCDQv9Cw0YDRh9C10YLQsCDQvtGCINC40L3QtNC10LrRgdCwINC4ICIKKyLRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQvlxuIgorImEg4oCUINC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsCDQvtGCINC40L3QtNC10LrRgdCwINC4ICIKKyLRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQvlxuIgorImQg4oCUINCx0LXQtyDQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDRgtC+0LLQsCDQuCDQstGB0LjRh9C60Lgg0YHQu9C10LTQstCw0YnQuCDQv9Cw0YDRh9C10YLQsCDQvtGCINGE0LDQudC70LAg0L7RgiDQuNC90LTQtdC60YHQsCDQuCAiCisi0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L5cbiIKKworIzogYWRkLXBhdGNoLmM6MjE0Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IOKAlCDQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDQv9Cw0YDRh9C10YLQviDQutGK0Lwg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L5cbiIKKyJuIOKAlCDQsdC10Lcg0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0L/QsNGA0YfQtdGC0L4g0LrRitC8INGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+XG4iCisicSDigJQg0LjQt9GF0L7QtCwg0LHQtdC3INC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDQvtGB0YLQsNCy0LDRidC4INC/0LDRgNGH0LXRgtCwXG4iCisiYSDigJQg0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INGB0LvQtdC00LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LAg0L7RgiDRhNCw0LnQu9CwXG4iCisiZCDigJQg0LHQtdC3INC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsFxuIgorCisjOiBhZGQtcGF0Y2guYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGh1bmsgaGVhZGVyICclLipzJyIKK21zZ3N0ciAi0LfQsNCz0LvQsNCy0L3QsNGC0LAg0YfQsNGB0YIg0L3QsCDQv9Cw0YDRh9C10YLQviDigJ4lLipz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INCw0L3QsNC70LjQt9C40YDQsCIKKworIzogYWRkLXBhdGNoLmM6MzM3IGFkZC1wYXRjaC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29sb3JlZCBodW5rIGhlYWRlciAnJS4qcyciCittc2dzdHIgItC30LDQs9C70LDQstC90LDRgtCwINGH0LDRgdGCINC90LAg0L7RhtCy0LXRgtC10L3QvtGC0L4g0L/QsNGA0YfQtSDigJ4lLipz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INCw0L3QsNC70LjQt9C40YDQsCIKKworIzogYWRkLXBhdGNoLmM6Mzk1Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGRpZmYiCittc2dzdHIgItGA0LDQt9C70LjQutCw0YLQsCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQsNC90LDQu9C40LfQuNGA0LAiCisKKyM6IGFkZC1wYXRjaC5jOjQxNAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb2xvcmVkIGRpZmYiCittc2dzdHIgItC+0YbQstC10YLQtdC90LDRgtCwINGA0LDQt9C70LjQutCwINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INCw0L3QsNC70LjQt9C40YDQsCIKKworIzogYWRkLXBhdGNoLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBydW4gJyVzJyIKK21zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg4oCeJXPigJwiCisKKyM6IGFkZC1wYXRjaC5jOjU4NworbXNnaWQgIm1pc21hdGNoZWQgb3V0cHV0IGZyb20gaW50ZXJhY3RpdmUuZGlmZkZpbHRlciIKK21zZ3N0ciAi0LjQt9GF0L7QtNGK0YIg0L7RgiDigJ5pbnRlcmFjdGl2ZS5kaWZmRmlsdGVy4oCcINC90LUg0L3QsNC/0LDRgdCy0LAiCisKKyM6IGFkZC1wYXRjaC5jOjU4OAorbXNnaWQgIiIKKyJZb3VyIGZpbHRlciBtdXN0IG1haW50YWluIGEgb25lLXRvLW9uZSBjb3JyZXNwb25kZW5jZVxuIgorImJldHdlZW4gaXRzIGlucHV0IGFuZCBvdXRwdXQgbGluZXMuIgorbXNnc3RyICIiCisi0J7QsdGA0LDQsdC+0YLQtdC90LjRgtC1INGA0LXQtNC+0LLQtSDQvdCwINC40LfRhdC+0LTQsCDQvdCwINC/0L7Qu9C30LLQsNC90LjRjyDRhNC40LvRgtGK0YAsINGC0YDRj9Cx0LLQsFxuIgorItC00LAg0YHQtSDQvtGC0L3QsNGB0Y/RgiDQtdC00L3QviDQutGK0Lwg0LXQtNC90L4g0YHQv9GA0Y/QvNC+INGA0LXQtNC+0LLQtdGC0LUg0L3QsCDQstGF0L7QtNCwLiIKKworIzogYWRkLXBhdGNoLmM6NzYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJleHBlY3RlZCBjb250ZXh0IGxpbmUgIyVkIGluXG4iCisiJS4qcyIKK21zZ3N0ciAiIgorItC+0YfQsNC60LLQsCDRgdC1INGA0LXQtCDihJYlZCDQvtGCINC60L7QvdGC0LXQutGB0YLQsCDQslxuIgorIiUuKnMiCisKKyM6IGFkZC1wYXRjaC5jOjc3NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaHVua3MgZG8gbm90IG92ZXJsYXA6XG4iCisiJS4qc1xuIgorIlx0ZG9lcyBub3QgZW5kIHdpdGg6XG4iCisiJS4qcyIKK21zZ3N0ciAiIgorItC/0LDRgNGH0LXRgtCw0YLQsCDQutC+0LQg0L3QtSDRgdC1INC/0YDQuNC/0L7QutGA0LjQstCw0YI6XG4iCisiJS4qc1xuIgorIiAgICDQvdC1INC30LDQstGK0YDRiNCy0LAg0YE6XG4iCisiJS4qcyIKKworIzogYWRkLXBhdGNoLmM6MTA1MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTIKK21zZ2lkICJNYW51YWwgaHVuayBlZGl0IG1vZGUgLS0gc2VlIGJvdHRvbSBmb3IgYSBxdWljayBndWlkZS5cbiIKK21zZ3N0ciAi0KDRitGH0L3QviDRgNC10LTQsNC60YLQuNGA0LDQvdC1INC90LAg0L/QsNGA0YfQtdGC0LAg0LrQvtC0IOKAlCDQvtGC0LTQvtC70YMg0LjQvNCwINC/0L7QtNGB0LrQsNC30LrQsC5cbiIKKworIzogYWRkLXBhdGNoLmM6MTA1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0tXG4iCisiVG8gcmVtb3ZlICclYycgbGluZXMsIG1ha2UgdGhlbSAnICcgbGluZXMgKGNvbnRleHQpLlxuIgorIlRvIHJlbW92ZSAnJWMnIGxpbmVzLCBkZWxldGUgdGhlbS5cbiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICVjIHdpbGwgYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorIuKAlOKAlOKAlFxuIgorItCX0LAg0LTQsCDQv9GA0L7Qv9GD0YHQvdC10YLQtSDRgNC10LTQvtCy0LXRgtC1LCDQt9Cw0L/QvtGH0LLQsNGJ0Lgg0YEg4oCeJWPigJw6INC30LDQvNC10L3QtdGC0LUg0LfQvdCw0LrQsCDRgSDigJ4g4oCcICjRgdGC0LDQstCw0YIgIgorItC60L7QvdGC0LXQutGB0YIpXG4iCisi0JfQsCDQtNCwINC/0YDQvtC/0YPRgdC90LXRgtC1INGA0LXQtNC+0LLQtdGC0LUsINC30LDQv9C+0YfQstCw0YnQuCDRgSDigJ4lY+KAnDog0LjQt9GC0YDQuNC50YLQtSDQs9C4LlxuIgorItCg0LXQtNC+0LLQtdGC0LUsINC60L7QuNGC0L4g0LfQsNC/0L7Rh9Cy0LDRgiDRgSDigJ4lY+KAnCDRidC1INCx0YrQtNCw0YIg0L/RgNC+0L/Rg9GB0L3QsNGC0LguXG4iCisKKyMuIFRSQU5TTEFUT1JTOiAnaXQnIHJlZmVycyB0byB0aGUgcGF0Y2ggbWVudGlvbmVkIGluIHRoZSBwcmV2aW91cyBtZXNzYWdlcy4KKyM6IGFkZC1wYXRjaC5jOjEwNzAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTI2Cittc2dpZCAiIgorIklmIGl0IGRvZXMgbm90IGFwcGx5IGNsZWFubHksIHlvdSB3aWxsIGJlIGdpdmVuIGFuIG9wcG9ydHVuaXR5IHRvXG4iCisiZWRpdCBhZ2Fpbi4gIElmIGFsbCBsaW5lcyBvZiB0aGUgaHVuayBhcmUgcmVtb3ZlZCwgdGhlbiB0aGUgZWRpdCBpc1xuIgorImFib3J0ZWQgYW5kIHRoZSBodW5rIGlzIGxlZnQgdW5jaGFuZ2VkLlxuIgorbXNnc3RyICIiCisi0JDQutC+INC1INC90LXQstGK0LfQvNC+0LbQvdC+INGH0LjRgdGC0L4g0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0LrQvtC00LAsINGJ0LUg0LzQvtC20LUg0L/QsNC6INC00LAg0YDQtdC00LDQutGC0LjRgNCw0YLQtS4gINCQ0LrQvlxuIgorItC40LfRgtGA0LjQtdGC0LUg0LLRgdC40YfQutC4INGA0LXQtNC+0LLQtSDQvtGCINC/0LDRgNGH0LXRgtC+INC60L7QtCwg0YLQviDRidC1INCx0YrQtNC1INC+0YHRgtCw0LLQtdC90L4g0L3QtdC/0YDQvtC80LXQvdC10L3Qviwg0LBcbiIKKyLRgNC10LTQsNC60YLQuNGA0LDQvdC10YLQviDigJQg0L7RgtC60LDQt9Cw0L3Qvi5cbiIKKworIzogYWRkLXBhdGNoLmM6MTEwMworbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciIKK21zZ3N0ciAi0LfQsNCz0LvQsNCy0L3QsNGC0LAg0YfQsNGB0YIg0L/QsNGA0YfQtdGC0L4g0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LDQvdCw0LvQuNC30LjRgNCwIgorCisjOiBhZGQtcGF0Y2guYzoxMTQ4Cittc2dpZCAiJ2dpdCBhcHBseSAtLWNhY2hlZCcgZmFpbGVkIgorbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDigJ5naXQgYXBwbHkgLS1jYWNoZWTigJwiCisKKyMuIFRSQU5TTEFUT1JTOiBkbyBub3QgdHJhbnNsYXRlIFt5L25dCisjLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IHRoYXQgaW5wdXQgYXQgdGhpcyBwb2ludC4KKyMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCisjLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgorIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCisjLgorIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KKyMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dAorIy4gYXQgdGhpcyBwb2ludC4KKyMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCisjLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgorIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCisjOiBhZGQtcGF0Y2guYzoxMjE4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIzOQorbXNnaWQgIiIKKyJZb3VyIGVkaXRlZCBodW5rIGRvZXMgbm90IGFwcGx5LiBFZGl0IGFnYWluIChzYXlpbmcgXCJub1wiIGRpc2NhcmRzISkgW3kvbl0/ICIKK21zZ3N0ciAiIgorItCg0LXQtNCw0LrRgtC40YDQsNC90L7RgtC+INC/0LDRgNGH0LUg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/RgNC40LvQvtC20LguICDQlNCwINGB0LUg0L/RgNC+0LTRitC70LbQuCDQu9C4INGBICIKKyLRgNC10LTQsNC60YLQuNGA0LDQvdC10YLQvj8gKNGC0LXQutGD0YnQuNGC0LUg0YDQtdC00LDQutGG0LjQuCDRidC1INGB0LUg0L7RgtC80LXQvdGP0YIg0L/RgNC4INC+0YLQutCw0LchKTog4oCeeeKAnCAo0LTQsCkvICIKKyLigJ5u4oCcICjQvdC1KT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjYxCittc2dpZCAiVGhlIHNlbGVjdGVkIGh1bmtzIGRvIG5vdCBhcHBseSB0byB0aGUgaW5kZXghIgorbXNnc3RyICLQmNC30LHRgNCw0L3QuNGC0LUg0L/QsNGA0YfQtdGC0LAg0L3QtSDQvNC+0LPQsNGCINC00LAg0YHQtSDQtNC+0LHQsNCy0Y/RgiDQsiDQuNC90LTQtdC60YHQsCEiCisKKyM6IGFkZC1wYXRjaC5jOjEyNjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQzCittc2dpZCAiQXBwbHkgdGhlbSB0byB0aGUgd29ya3RyZWUgYW55d2F5PyAiCittc2dzdHIgItCU0LAg0YHQtSDQv9GA0LjQu9C+0LbQsNGCINC70Lgg0LrRitC8INGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+PyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyNjkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQ2Cittc2dpZCAiTm90aGluZyB3YXMgYXBwbGllZC5cbiIKK21zZ3N0ciAi0J3QuNGJ0L4g0L3QtSDQtSDQv9GA0LjQu9C+0LbQtdC90L4uXG4iCisKKyM6IGFkZC1wYXRjaC5jOjEzMjYKK21zZ2lkICIiCisiaiAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBuZXh0IHVuZGVjaWRlZCBodW5rXG4iCisiSiAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBuZXh0IGh1bmtcbiIKKyJrIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIHByZXZpb3VzIHVuZGVjaWRlZCBodW5rXG4iCisiSyAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBwcmV2aW91cyBodW5rXG4iCisiZyAtIHNlbGVjdCBhIGh1bmsgdG8gZ28gdG9cbiIKKyIvIC0gc2VhcmNoIGZvciBhIGh1bmsgbWF0Y2hpbmcgdGhlIGdpdmVuIHJlZ2V4XG4iCisicyAtIHNwbGl0IHRoZSBjdXJyZW50IGh1bmsgaW50byBzbWFsbGVyIGh1bmtzXG4iCisiZSAtIG1hbnVhbGx5IGVkaXQgdGhlIGN1cnJlbnQgaHVua1xuIgorIj8gLSBwcmludCBoZWxwXG4iCittc2dzdHIgIiIKKyJqIOKAlCDQsdC10Lcg0YDQtdGI0LXQvdC40LUg0LfQsCDQv9Cw0YDRh9C10YLQviwg0LrRitC8INGB0LvQtdC00LLQsNGJ0L7RgtC+INC/0LDRgNGH0LUg0LHQtdC3INGA0LXRiNC10L3QuNC1XG4iCisiSiDigJQg0LHQtdC3INGA0LXRiNC10L3QuNC1INC30LAg0L/QsNGA0YfQtdGC0L4sINC60YrQvCDRgdC70LXQtNCy0LDRidC+0YLQviDQv9Cw0YDRh9C1XG4iCisiayDigJQg0LHQtdC3INGA0LXRiNC10L3QuNC1INC30LAg0L/QsNGA0YfQtdGC0L4sINC60YrQvCDQv9GA0LXQtNC40YjQvdC+0YLQviDQv9Cw0YDRh9C1INCx0LXQtyDRgNC10YjQtdC90LjQtVxuIgorIksg4oCUINCx0LXQtyDRgNC10YjQtdC90LjQtSDQt9CwINC/0LDRgNGH0LXRgtC+LCDQutGK0Lwg0L/RgNC10LTQuNGI0L3QvtGC0L4g0L/QsNGA0YfQtVxuIgorImcg4oCUINC40LfQsdC+0YAg0LrRitC8INC60L7QtSDQv9Cw0YDRh9C1INC00LAg0YHQtSDQv9GA0LXQvNC40L3QtVxuIgorIi8g4oCUINGC0YrRgNGB0LXQvdC1INC90LAg0L/QsNGA0YfQtSwg0L3QsNC/0LDRgdCy0LDRidC+INC60YrQvCDQtNCw0LTQtdC9INGA0LXQs9GD0LvRj9GA0LXQvSDQuNC30YDQsNC3XG4iCisicyDigJQg0YDQsNC30LTQtdC70Y/QvdC1INC90LAg0YLQtdC60YPRidC+0YLQviDQv9Cw0YDRh9C1INC90LAg0L/Qvi3QvNCw0LvQutC4XG4iCisiZSDigJQg0YDRitGH0L3QviDRgNC10LTQsNC60YLQuNGA0LDQvdC1INC90LAg0YLQtdC60YPRidC+0YLQviDQv9Cw0YDRh9C1XG4iCisiPyDigJQg0LjQt9Cy0LXQttC00LDQvdC1INC90LUg0L/QvtC80L7RidGC0LBcbiIKKworIzogYWRkLXBhdGNoLmM6MTQ0NyBhZGQtcGF0Y2guYzoxNDU3Cittc2dpZCAiTm8gcHJldmlvdXMgaHVuayIKK21zZ3N0ciAi0J3Rj9C80LAg0LTRgNGD0LPQviDQv9Cw0YDRh9C1INC/0YDQtdC00Lgg0YLQvtCy0LAiCisKKyM6IGFkZC1wYXRjaC5jOjE0NTIgYWRkLXBhdGNoLmM6MTQ2MgorbXNnaWQgIk5vIG5leHQgaHVuayIKK21zZ3N0ciAi0J3Rj9C80LAg0LTRgNGD0LPQviDQv9Cw0YDRh9C1INGB0LvQtdC0INGC0L7QstCwIgorCisjOiBhZGQtcGF0Y2guYzoxNDY4Cittc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gZ290byIKK21zZ3N0ciAi0J3Rj9C80LAg0LTRgNGD0LPQuCDQv9Cw0YDRh9C10YLQsCIKKworIzogYWRkLXBhdGNoLmM6MTQ3OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzcKK21zZ2lkICJnbyB0byB3aGljaCBodW5rICg8cmV0PiB0byBzZWUgbW9yZSk/ICIKK21zZ3N0ciAi0LrRitC8INC60L7QtSDQv9Cw0YDRh9C1INC00LAg0YHQtSDQv9GA0LjQtNCy0LjQttC4ICjQt9CwINC/0L7QstC10YfQtSDQstCw0YDQuNCw0L3RgtC4INC90LDRgtC40YHQvdC10YLQtSDigJ5lbnRlcuKAnCk/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ4MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzkKK21zZ2lkICJnbyB0byB3aGljaCBodW5rPyAiCittc2dzdHIgItC60YrQvCDQutC+0LUg0L/QsNGA0YfQtSDQtNCwINGB0LUg0L/RgNC40LTQstC40LbQuD8gIgorCisjOiBhZGQtcGF0Y2guYzoxNDkxCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgbnVtYmVyOiAnJXMnIgorbXNnc3RyICLQndC10L/RgNCw0LLQuNC70LXQvSDQvdC+0LzQtdGAOiDigJ4lc+KAnCIKKworIzogYWRkLXBhdGNoLmM6MTQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJTb3JyeSwgb25seSAlZCBodW5rIGF2YWlsYWJsZS4iCittc2dpZF9wbHVyYWwgIlNvcnJ5LCBvbmx5ICVkIGh1bmtzIGF2YWlsYWJsZS4iCittc2dzdHJbMF0gItCY0LzQsCDRgdCw0LzQviAlZCDQv9Cw0YDRh9C1LiIKK21zZ3N0clsxXSAi0JjQvNCwINGB0LDQvNC+ICVkINC/0LDRgNGH0LXRgtCwLiIKKworIzogYWRkLXBhdGNoLmM6MTUwNQorbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIHNlYXJjaCIKK21zZ3N0ciAi0J3Rj9C80LAg0LTRgNGD0LPQuCDQv9Cw0YDRh9C10YLQsCDQt9CwINGC0YrRgNGB0LXQvdC1IgorCisjOiBhZGQtcGF0Y2guYzoxNTExIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYyMworbXNnaWQgInNlYXJjaCBmb3IgcmVnZXg/ICIKK21zZ3N0ciAi0LTQsCDRgdC1INGC0YrRgNGB0Lgg0YEg0YDQtdCz0YPQu9GP0YDQtdC9INC40LfRgNCw0Lc/ICIKKworIzogYWRkLXBhdGNoLmM6MTUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJNYWxmb3JtZWQgc2VhcmNoIHJlZ2V4cCAlczogJXMiCittc2dzdHIgItCh0LPRgNC10YjQtdC9INGA0LXQs9GD0LvRj9GA0LXQvSDQuNC30YDQsNC3IOKAniVz4oCcOiAlcyIKKworIzogYWRkLXBhdGNoLmM6MTU0MworbXNnaWQgIk5vIGh1bmsgbWF0Y2hlcyB0aGUgZ2l2ZW4gcGF0dGVybiIKK21zZ3N0ciAi0J3QuNC60L7QtSDQv9Cw0YDRh9C1INC90LUg0L3QsNC/0LDRgdCy0LAg0L3QsCDRgNC10LPRg9C70Y/RgNC90LjRjyDQuNC30YDQsNC3IgorCisjOiBhZGQtcGF0Y2guYzoxNTUwCittc2dpZCAiU29ycnksIGNhbm5vdCBzcGxpdCB0aGlzIGh1bmsiCittc2dzdHIgItCi0L7QstCwINC/0LDRgNGH0LUg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGA0LDQt9C00LXQu9C10L3QviIKKworIzogYWRkLXBhdGNoLmM6MTU1NAorIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdCBpbnRvICVkIGh1bmtzLiIKK21zZ3N0ciAi0KDQsNC30LTQtdC70Y/QvdC1INC90LAgJWQg0L/QsNGA0YfQtdGC0LAuIgorCisjOiBhZGQtcGF0Y2guYzoxNTU4Cittc2dpZCAiU29ycnksIGNhbm5vdCBlZGl0IHRoaXMgaHVuayIKK21zZ3N0ciAi0KLQvtCy0LAg0L/QsNGA0YfQtSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YDQtdC00LDQutGC0LjRgNCw0L3QviIKKworIzogYWRkLXBhdGNoLmM6MTYwOQorbXNnaWQgIidnaXQgYXBwbHknIGZhaWxlZCIKK21zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg4oCeZ2l0IGFwcGx54oCcIgorCisjOiBhZHZpY2UuYzoxMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXNoaW50OiAlLipzJXNcbiIKIG1zZ3N0ciAiJXPQv9C+0LTRgdC60LDQt9C60LA6ICUuKnMlc1xuIgogCi0jOiBhZHZpY2UuYzoxNTIKKyM6IGFkdmljZS5jOjE2OAogbXNnaWQgIkNoZXJyeS1waWNraW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAi0J7RgtCx0LjRgNCw0L3QtdGC0L4g0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y8g0LUg0LHQu9C+0LrQuNGA0LDQvdC+INC+0YIg0L3QtdGB0LvQtdGC0Lgg0YTQsNC50LvQvtCy0LUuIgogCi0jOiBhZHZpY2UuYzoxNTQKKyM6IGFkdmljZS5jOjE3MAogbXNnaWQgIkNvbW1pdHRpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICLQn9C+0LTQsNCy0LDQvdC10YLQviDQtSDQsdC70L7QutC40YDQsNC90L4g0L7RgiDQvdC10YHQu9C10YLQuCDRhNCw0LnQu9C+0LLQtS4iCiAKLSM6IGFkdmljZS5jOjE1NgorIzogYWR2aWNlLmM6MTcyCiBtc2dpZCAiTWVyZ2luZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgItCh0LvQuNCy0LDQvdC10YLQviDQtSDQsdC70L7QutC40YDQsNC90L4g0L7RgiDQvdC10YHQu9C10YLQuCDRhNCw0LnQu9C+0LLQtS4iCiAKLSM6IGFkdmljZS5jOjE1OAorIzogYWR2aWNlLmM6MTc0CiBtc2dpZCAiUHVsbGluZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgItCY0LfQtNGK0YDQv9Cy0LDQvdC10YLQviDQtSDQsdC70L7QutC40YDQsNC90L4g0L7RgiDQvdC10YHQu9C10YLQuCDRhNCw0LnQu9C+0LLQtS4iCiAKLSM6IGFkdmljZS5jOjE2MAorIzogYWR2aWNlLmM6MTc2CiBtc2dpZCAiUmV2ZXJ0aW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAi0J7RgtC80Y/QvdCw0YLQsCDQtSDQsdC70L7QutC40YDQsNC90LAg0L7RgiDQvdC10YHQu9C10YLQuCDRhNCw0LnQu9C+0LLQtS4iCiAKLSM6IGFkdmljZS5jOjE2MgorIzogYWR2aWNlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkl0IGlzIG5vdCBwb3NzaWJsZSB0byAlcyBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAi0JTQtdC50YHRgtCy0LjQtdGC0L4g4oCeJXPigJwg0LUg0LHQu9C+0LrQuNGA0LDQvdC+INC+0YIg0L3QtdGB0LvQtdGC0Lgg0YTQsNC50LvQvtCy0LUuIgogCi0jOiBhZHZpY2UuYzoxNzAKKyM6IGFkdmljZS5jOjE4NgogbXNnaWQgIiIKICJGaXggdGhlbSB1cCBpbiB0aGUgd29yayB0cmVlLCBhbmQgdGhlbiB1c2UgJ2dpdCBhZGQvcm0gPGZpbGU+J1xuIgogImFzIGFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbiBhbmQgbWFrZSBhIGNvbW1pdC4iCkBAIC0xOTMsMzggKzkxMiw0NSBAQAogItCg0LXQtNCw0LrRgtC40YDQsNC50YLQtSDQs9C4INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+LCDQuCDRgtC+0LPQsNCy0LAg0L/QvtC70LfQstCw0LnRgtC1IOKAnmdpdCBhZGQvcm0g0KTQkNCZ0JvigJwsXG4iCiAi0LfQsCDQtNCwINC+0YLQsdC10LvQtdC20LjRgtC1INC60L7RgNC40LPQuNGA0LDQvdC10YLQviDQuNC8LiAg0KHQu9C10LQg0YLQvtCy0LAg0LjQt9Cy0YrRgNGI0LXRgtC1INC/0L7QtNCw0LLQsNC90LXRgtC+LiIKIAotIzogYWR2aWNlLmM6MTc4CisjOiBhZHZpY2UuYzoxOTQKIG1zZ2lkICJFeGl0aW5nIGJlY2F1c2Ugb2YgYW4gdW5yZXNvbHZlZCBjb25mbGljdC4iCiBtc2dzdHIgItCY0LfRhdC+0LQg0L7RgiDQv9GA0L7Qs9GA0LDQvNCw0YLQsCDQt9Cw0YDQsNC00Lgg0L3QtdC60L7RgNC40LPQuNGA0LDQvSDQutC+0L3RhNC70LjQutGCLiIKIAotIzogYWR2aWNlLmM6MTgzIGJ1aWx0aW4vbWVyZ2UuYzoxMjg5CisjOiBhZHZpY2UuYzoxOTkgYnVpbHRpbi9tZXJnZS5jOjEzMzUKIG1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS4iCiBtc2dzdHIgItCd0LUg0YHRgtC1INC30LDQstGK0YDRiNC40LvQuCDRgdC70LjQstCw0L3QtS4gICjQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5NRVJHRV9IRUFE4oCcINGB0YrRidC10YHRgtCy0YPQstCwKS4iCiAKLSM6IGFkdmljZS5jOjE4NQorIzogYWR2aWNlLmM6MjAxCiBtc2dpZCAiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSBtZXJnaW5nLiIKIG1zZ3N0ciAi0J/RgNC+0LzQtdC90LjRgtC1INGC0YDRj9Cx0LLQsCDQtNCwINGB0LUg0L/QvtC00LDQtNCw0YIg0L/RgNC10LTQuCDRgdC70LjQstCw0L3QtS4iCiAKLSM6IGFkdmljZS5jOjE4NgorIzogYWR2aWNlLmM6MjAyCiBtc2dpZCAiRXhpdGluZyBiZWNhdXNlIG9mIHVuZmluaXNoZWQgbWVyZ2UuIgogbXNnc3RyICLQmNC30YXQvtC0INC+0YIg0L/RgNC+0LPRgNCw0LzQsNGC0LAg0LfQsNGA0LDQtNC4INC90LXQt9Cw0LLRitGA0YjQtdC90L4g0YHQu9C40LLQsNC90LUuIgogCi0jOiBhZHZpY2UuYzoxOTIKKyM6IGFkdmljZS5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCi0iTm90ZTogY2hlY2tpbmcgb3V0ICclcycuXG4iCisiTm90ZTogc3dpdGNoaW5nIHRvICclcycuXG4iCiAiXG4iCiAiWW91IGFyZSBpbiAnZGV0YWNoZWQgSEVBRCcgc3RhdGUuIFlvdSBjYW4gbG9vayBhcm91bmQsIG1ha2UgZXhwZXJpbWVudGFsXG4iCiAiY2hhbmdlcyBhbmQgY29tbWl0IHRoZW0sIGFuZCB5b3UgY2FuIGRpc2NhcmQgYW55IGNvbW1pdHMgeW91IG1ha2UgaW4gdGhpc1xuIgotInN0YXRlIHdpdGhvdXQgaW1wYWN0aW5nIGFueSBicmFuY2hlcyBieSBwZXJmb3JtaW5nIGFub3RoZXIgY2hlY2tvdXQuXG4iCisic3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHN3aXRjaGluZyBiYWNrIHRvIGEgYnJhbmNoLlxuIgogIlxuIgogIklmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIG5ldyBicmFuY2ggdG8gcmV0YWluIGNvbW1pdHMgeW91IGNyZWF0ZSwgeW91IG1heVxuIgotImRvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1iIHdpdGggdGhlIGNoZWNrb3V0IGNvbW1hbmQgYWdhaW4uIEV4YW1wbGU6XG4iCisiZG8gc28gKG5vdyBvciBsYXRlcikgYnkgdXNpbmcgLWMgd2l0aCB0aGUgc3dpdGNoIGNvbW1hbmQuIEV4YW1wbGU6XG4iCiAiXG4iCi0iICBnaXQgY2hlY2tvdXQgLWIgPG5ldy1icmFuY2gtbmFtZT5cbiIKKyIgIGdpdCBzd2l0Y2ggLWMgPG5ldy1icmFuY2gtbmFtZT5cbiIKKyJcbiIKKyJPciB1bmRvIHRoaXMgb3BlcmF0aW9uIHdpdGg6XG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1cbiIKKyJcbiIKKyJUdXJuIG9mZiB0aGlzIGFkdmljZSBieSBzZXR0aW5nIGNvbmZpZyB2YXJpYWJsZSBhZHZpY2UuZGV0YWNoZWRIZWFkIHRvICIKKyJmYWxzZVxuIgogIlxuIgogbXNnc3RyICIiCi0i0JHQtdC70LXQttC60LA6INC40LfRgtC10LPQu9GP0L3QtSDQvdCwIOKAniVz4oCcLlxuIgorItCR0LXQu9C10LbQutCwOiDQv9GA0LXQvNC40L3QsNCy0LDQvdC1INC60YrQvCDigJ4lc+KAnC5cbiIKICJcbiIKICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINC90LUg0LUg0YHQstGK0YDQt9Cw0L0uICDQnNC+0LbQtSDQtNCwINGA0LDQt9Cz0LvQtdC20LTQsNGC0LUsINC00LAg0L/RgNCw0LLQuNGC0LUg0L/RgNC+0LjQt9Cy0L7Qu9C90LhcbiIKICLQv9GA0L7QvNC10L3QuCDQuCDQtNCwINCz0Lgg0L/QvtC00LDQstCw0YLQtS4gINCQ0LrQviDQuNC30YLQtdCz0LvQuNGC0LUg0L3QtdGJ0L4g0LTRgNGD0LPQviwg0LLRgdC40YfQutC4INC/0YDQvtC80LXQvdC4INGJ0LUgIgpAQCAtMjMyLDEwNiArOTU4LDExMSBAQAogItC30LDQsdGA0LDQstC10L3QuCDQuCDQvdC40LrQvtC5INC60LvQvtC9INC90Y/QvNCwINC00LAg0YHQtSDQv9GA0L7QvNC10L3QuC5cbiIKICJcbiIKICLQkNC60L4g0LjRgdC60LDRgtC1INC00LAg0YHRitC30LTQsNC00LXRgtC1INC90L7QsiDQutC70L7QvSwg0LfQsCDQtNCwINC30LDQv9Cw0LfQuNGC0LUg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDRgdC4LCDQvNC+0LbQtdGC0LUg0LTQsFxuIgotItC90LDQv9GA0LDQstC40YLQtSDRgtC+0LLQsCDQutCw0YLQviDQt9Cw0LTQsNC00LXRgtC1INC40LzQtSDQvdCwINC60LvQvtC9INC60YrQvCDQvtC/0YbQuNGP0YLQsCDigJ4tYuKAnCDQvdCwINC60L7QvNCw0L3QtNCw0YLQsFxuIgotIuKAnmNvbW1pdOKAnC4gINCd0LDQv9GA0LjQvNC10YA6XG4iCisi0L3QsNC/0YDQsNCy0LjRgtC1INGC0L7QstCwINC60LDRgtC+INC30LDQtNCw0LTQtdGC0LUg0LjQvNC1INC90LAg0LrQu9C+0L0g0LrRitC8INC+0L/RhtC40Y/RgtCwIOKAni1j4oCcINC90LAg0LrQvtC80LDQvdC00LDRgtCwXG4iCisi4oCec3dpdGNo4oCcLiAg0J3QsNC/0YDQuNC80LXRgDpcbiIKICJcbiIKLSIgIGdpdCBjaGVja291dCAtYiDQmNCc0JVf0J3QkF/QndCe0JJf0JrQm9Ce0J1cbiIKKyIgICAgZ2l0IHN3aXRjaCAtYyDQmNCc0JVf0J3QkF/QndCe0JJf0JrQm9Ce0J1cbiIKICJcbiIKKyLQnNC+0LbQtSDQtNCwINC+0YLQvNC10L3QuNGC0LUg0YLQvtCy0LAg0LTQtdC50YHRgtCy0LjQtSDRgSDQutC+0LzQsNC90LTQsNGC0LA6XG4iCisiXG4iCisiICAgIGdpdCBzd2l0Y2ggLVxuIgorIlxuIgorItCc0L7QttC1INC00LAg0YHQv9GA0LXRgtC1INGC0L7QstCwINGB0YrQvtCx0YnQtdC90LjQtSDRgdGK0YEg0LfQsNC00LDQstCw0L3QtSDQvdCwINC90LDRgdGC0YDQvtC50LrQsNGC0LAg4oCeYWR2aWNlLiIKKyJkZXRhY2hlZEhlYWTigJxcbiIKKyLQtNCwINC1IOKAnmZhbHNl4oCcLlxuIgogCi0jOiBhcHBseS5jOjU5CisjOiBhbGlhcy5jOjUwCittc2dpZCAiY21kbGluZSBlbmRzIHdpdGggXFwiCittc2dzdHIgItC60L7QvNCw0L3QtNC90LjRj9GCINGA0LXQtCDQt9Cw0LLRitGA0YjQstCwINGBIOKAni/igJwiCisKKyM6IGFsaWFzLmM6NTEKK21zZ2lkICJ1bmNsb3NlZCBxdW90ZSIKK21zZ3N0ciAi0LrQsNCy0LjRh9C60LAg0LHQtdC3INC10YgiCisKKyM6IGFwcGx5LmM6NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2Ugb3B0aW9uICclcyciCiBtc2dzdHIgItC90LXQv9C+0LfQvdCw0YLQsCDQvtC/0YbQuNGPINC30LAg0LfQvdCw0YbQuNGC0LUg0LfQsCDQuNC90YLQtdGA0LLQsNC70Lgg4oCeJXPigJwiCiAKLSM6IGFwcGx5LmM6NzUKKyM6IGFwcGx5LmM6ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2UgaWdub3JlIG9wdGlvbiAnJXMnIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGC0LAg0L7Qv9GG0LjRjyDQt9CwINC40LPQvdC+0YDQuNGA0LDQvdC1INC90LAg0LfQvdCw0YbQuNGC0LUg0LfQsCDQuNC90YLQtdGA0LLQsNC70Lgg4oCeJXPigJwiCiAKLSM6IGFwcGx5LmM6MTI1CisjOiBhcHBseS5jOjEzNQogbXNnaWQgIi0tcmVqZWN0IGFuZCAtLTN3YXkgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuIgogbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLXJlamVjdOKAnCDQuCDigJ4tLTN3YXnigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKLSM6IGFwcGx5LmM6MTI3CisjOiBhcHBseS5jOjEzNwogbXNnaWQgIi0tY2FjaGVkIGFuZCAtLTN3YXkgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuIgogbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLWNhY2hlZOKAnCDQuCDigJ4tLTN3YXnigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKLSM6IGFwcGx5LmM6MTMwCisjOiBhcHBseS5jOjE0MAogbXNnaWQgIi0tM3dheSBvdXRzaWRlIGEgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0LrQsNGC0L4g4oCeLS0zd2F54oCcLCDQvdC+INC40LfQstGK0L0g0YXRgNCw0L3QuNC70LjRidC1IgogCi0jOiBhcHBseS5jOjE0MQorIzogYXBwbHkuYzoxNTEKIG1zZ2lkICItLWluZGV4IG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICLQutCw0YLQviDigJ4tLWluZGV44oCcLCDQvdC+INC40LfQstGK0L0g0YXRgNCw0L3QuNC70LjRidC1IgogCi0jOiBhcHBseS5jOjE0NAorIzogYXBwbHkuYzoxNTQKIG1zZ2lkICItLWNhY2hlZCBvdXRzaWRlIGEgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0LrQsNGC0L4g4oCeLS1jYWNoZWTigJwsINC90L4g0LjQt9Cy0YrQvSDRhdGA0LDQvdC40LvQuNGJ0LUiCiAKLSM6IGFwcGx5LmM6ODI2CisjOiBhcHBseS5jOjgwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgcHJlcGFyZSB0aW1lc3RhbXAgcmVnZXhwICVzIgogbXNnc3RyICLQoNC10LPRg9C70Y/RgNC90LjRj9GCINC40LfRgNCw0Lcg0LfQsCDQstGA0LXQvNC10YLQviDigJ4lc+KAnCDQvdC1INC80L7QttC1INC30LAg0LHRitC00LUg0LrQvtC80L/QuNC70LjRgNCw0L0iCiAKLSM6IGFwcGx5LmM6ODM1CisjOiBhcHBseS5jOjgxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWdleGVjIHJldHVybmVkICVkIGZvciBpbnB1dDogJXMiCiBtc2dzdHIgItCg0LXQs9GD0LvRj9GA0L3QuNGP0YIg0LjQt9GA0LDQtyDQstGK0YDQvdCwICVkINC/0YDQuCDQv9C+0LTQsNC00LXQvdCwINC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9C90L7RgdGCIOKAniVz4oCcINC90LAg0LLRhdC+0LTQsCIKIAotIzogYXBwbHkuYzo5MDkKKyM6IGFwcGx5LmM6ODg0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBmaW5kIGZpbGVuYW1lIGluIHBhdGNoIGF0IGxpbmUgJWQiCiBtc2dzdHIgItCb0LjQv9GB0LLQsCDQuNC80LUg0L3QsCDRhNCw0LnQuyDQvdCwINGA0LXQtCAlZCDQvtGCINC60YDRitC/0LrQsNGC0LAiCiAKLSM6IGFwcGx5LmM6OTQ3CisjOiBhcHBseS5jOjkyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGV4cGVjdGVkIC9kZXYvbnVsbCwgZ290ICVzIG9uIGxpbmUgJWQiCiBtc2dzdHIgIiIKICJnaXQgYXBwbHk6INC70L7RiCDQuNC30YXQvtC0INC+0YIg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdC1kaWZm4oCcIOKAlCDQvdCwINGA0LXQtCAlMiRkINGB0LUg0L7Rh9Cw0LrQstCw0YjQtSDigJ4vZGV2LyIKICJudWxs4oCcLCDQsCDQsdC1INC/0L7Qu9GD0YfQtdC9IOKAniUxJHPigJwiCiAKLSM6IGFwcGx5LmM6OTUzCisjOiBhcHBseS5jOjkyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGluY29uc2lzdGVudCBuZXcgZmlsZW5hbWUgb24gbGluZSAlZCIKIG1zZ3N0ciAiIgogImdpdCBhcHBseTog0LvQvtGIINC40LfRhdC+0LQg0L7RgiDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0LWRpZmbigJwg4oCUINC90LAg0YDQtdC0ICVkINCx0LUg0L/QvtC70YPRh9C10L3QviAiCiAi0L3QtdC/0YDQsNCy0LjQu9C90L4g0LjQvNC1INC90LAg0L3QvtCyINGE0LDQudC7IgogCi0jOiBhcHBseS5jOjk1NAorIzogYXBwbHkuYzo5MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBpbmNvbnNpc3RlbnQgb2xkIGZpbGVuYW1lIG9uIGxpbmUgJWQiCiBtc2dzdHIgIiIKICJnaXQgYXBwbHk6INC70L7RiCDQuNC30YXQvtC0INC+0YIg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdC1kaWZm4oCcIOKAlCDQvdCwINGA0LXQtCAlZCDQsdC1INC/0L7Qu9GD0YfQtdC90L4gIgogItC90LXQv9GA0LDQstC40LvQvdC+INC40LzQtSDQvdCwINGB0YLQsNGAINGE0LDQudC7IgogCi0jOiBhcHBseS5jOjk1OQorIzogYXBwbHkuYzo5MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwgb24gbGluZSAlZCIKIG1zZ3N0ciAiIgogImdpdCBhcHBseTog0LvQvtGIINC40LfRhdC+0LQg0L7RgiDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0LWRpZmbigJwg4oCUINC90LAg0YDQtdC0ICVkINGB0LUg0L7Rh9Cw0LrQstCw0YjQtSDigJ4vZGV2LyIKICJudWxs4oCcIgogCi0jOiBhcHBseS5jOjk4OAorIzogYXBwbHkuYzo5NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBtb2RlIG9uIGxpbmUgJWQ6ICVzIgogbXNnc3RyICLQs9GA0LXRiNC10L0g0YDQtdC20LjQvCDQvdCwINGA0LXQtCDihJYlZDogJXMiCiAKLSM6IGFwcGx5LmM6MTMwNworIzogYXBwbHkuYzoxMjgyCiAjLCBjLWZvcm1hdAogbXNnaWQgImluY29uc2lzdGVudCBoZWFkZXIgbGluZXMgJWQgYW5kICVkIgogbXNnc3RyICLQvdC10YHRitCy0LzQtdGB0YLQuNC80Lgg0LfQsNCz0LvQsNCy0L3QuCDRh9Cw0YHRgtC4INC90LAg0YDQtdC00L7QstC1IOKEliVkINC4IOKEliVkIgogCi0jOiBhcHBseS5jOjE0NzkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicmVjb3VudDogdW5leHBlY3RlZCBsaW5lOiAlLipzIgotbXNnc3RyICLQv9GA0Lgg0L/QvtCy0YLQvtGA0L3QvtGC0L4g0L/RgNC10LHRgNC+0Y/QstCw0L3QtSDQsdC1INC/0L7Qu9GD0YfQtdC9INC90LXQvtGH0LDQutCy0LDQvSDRgNC10LQ6IOKAniUuKnPigJwiCi0KLSM6IGFwcGx5LmM6MTU0OAotIywgYy1mb3JtYXQKLW1zZ2lkICJwYXRjaCBmcmFnbWVudCB3aXRob3V0IGhlYWRlciBhdCBsaW5lICVkOiAlLipzIgotbXNnc3RyICLRh9Cw0YHRgiDQvtGCINC60YDRitC/0LrQsCDQsdC10Lcg0LfQsNCz0LvQsNCy0L3QsCDRh9Cw0YHRgiDQvdCwINGA0LXQtCAlZDogJS4qcyIKLQotIzogYXBwbHkuYzoxNTY4CisjOiBhcHBseS5jOjEzNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImdpdCBkaWZmIGhlYWRlciBsYWNrcyBmaWxlbmFtZSBpbmZvcm1hdGlvbiB3aGVuIHJlbW92aW5nICVkIGxlYWRpbmcgcGF0aG5hbWUgIgpAQCAtMzQ2LDcxICsxMDc3LDgxIEBACiAi0KHQu9C10LQg0YHRitC60YDQsNGJ0LDQstCw0L3QtdGC0L4g0L3QsCDQv9GK0YDQstC40YLQtSAlZCDRh9Cw0YHRgtC4INC+0YIg0LrQvtC80L/QvtC90LXQvdGC0LjRgtC1INC90LAg0L/RitGC0Y8sINCyINC30LDQs9C70LDQstC90LDRgtCwICIKICLRh9Cw0YHRgiDQvdCwIOKAnmdpdCBkaWZm4oCcINC70LjQv9GB0LLQsCDQuNC90YTQvtGA0LzQsNGG0LjRjyDQt9CwINC40LzQtSDQvdCwINGE0LDQudC7ICjRgNC10LQ6ICVkKSIKIAotIzogYXBwbHkuYzoxNTgxCisjOiBhcHBseS5jOjEzODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIChsaW5lICVkKSIKIG1zZ3N0ciAiIgogItCyINC30LDQs9C70LDQstC90LDRgtCwINGH0LDRgdGCINC90LAg4oCeZ2l0IGRpZmbigJwg0LvQuNC/0YHQstCwINC40L3RhNC+0YDQvNCw0YbQuNGPINC30LAg0LjQvNC1INC90LAg0YTQsNC50LsgKNGA0LXQtDogJWQpIgogCi0jOiBhcHBseS5jOjE3NjkKKyM6IGFwcGx5LmM6MTQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWNvdW50OiB1bmV4cGVjdGVkIGxpbmU6ICUuKnMiCittc2dzdHIgItC/0YDQuCDQv9C+0LLRgtC+0YDQvdC+0YLQviDQv9GA0LXQsdGA0L7Rj9Cy0LDQvdC1INCx0LUg0L/QvtC70YPRh9C10L0g0L3QtdC+0YfQsNC60LLQsNC9INGA0LXQtDog4oCeJS4qc+KAnCIKKworIzogYXBwbHkuYzoxNTUwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGNoIGZyYWdtZW50IHdpdGhvdXQgaGVhZGVyIGF0IGxpbmUgJWQ6ICUuKnMiCittc2dzdHIgItGH0LDRgdGCINC+0YIg0LrRgNGK0L/QutCwINCx0LXQtyDQt9Cw0LPQu9Cw0LLQvdCwINGH0LDRgdGCINC90LAg0YDQtdC0ICVkOiAlLipzIgorCisjOiBhcHBseS5jOjE3NTMKIG1zZ2lkICJuZXcgZmlsZSBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKIG1zZ3N0ciAi0L3QvtCy0LjRj9GCINGE0LDQudC7INC30LDQstC40YHQuCDQvtGCINGB0YLQsNGA0L7RgtC+INGB0YrQtNGK0YDQttCw0L3QuNC1INC90LAg0YTQsNC50LvQsCIKIAotIzogYXBwbHkuYzoxNzcxCisjOiBhcHBseS5jOjE3NTUKIG1zZ2lkICJkZWxldGVkIGZpbGUgc3RpbGwgaGFzIGNvbnRlbnRzIgogbXNnc3RyICLQuNC30YLRgNC40YLQuNGP0YIg0YTQsNC50Lsg0L3QtSDQtSDQv9GA0LDQt9C10L0iCiAKLSM6IGFwcGx5LmM6MTgwNQorIzogYXBwbHkuYzoxNzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgcGF0Y2ggYXQgbGluZSAlZCIKIG1zZ3N0ciAi0LPRgNC10YjQutCwINCyINC60YDRitC/0LrQsNGC0LAg0L3QsCDRgNC10LQgJWQiCiAKLSM6IGFwcGx5LmM6MTg0MgorIzogYXBwbHkuYzoxODI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBmaWxlICVzIGRlcGVuZHMgb24gb2xkIGNvbnRlbnRzIgogbXNnc3RyICLQvdC+0LLQuNGP0YIg0YTQsNC50Lsg4oCeJXPigJwg0LfQsNCy0LjRgdC4INC+0YIg0YHRgtCw0YDQvtGC0L4g0YHRitC00YrRgNC20LDQvdC40LUg0L3QsCDRhNCw0LnQu9CwIgogCi0jOiBhcHBseS5jOjE4NDQKKyM6IGFwcGx5LmM6MTgyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWxldGVkIGZpbGUgJXMgc3RpbGwgaGFzIGNvbnRlbnRzIgogbXNnc3RyICLQuNC30YLRgNC40YLQuNGP0YIg0YTQsNC50Lsg4oCeJXPigJwg0L3QtSDQtSDQv9GA0LDQt9C10L0iCiAKLSM6IGFwcGx5LmM6MTg0NworIzogYXBwbHkuYzoxODMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIioqIHdhcm5pbmc6IGZpbGUgJXMgYmVjb21lcyBlbXB0eSBidXQgaXMgbm90IGRlbGV0ZWQiCiBtc2dzdHIgIuKXjyDQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1OiDRhNCw0LnQu9GK0YIg4oCeJXPigJwg0LLQtdGH0LUg0LUg0L/RgNCw0LfQtdC9LCDQvdC+INC90LUg0LUg0LjQt9GC0YDQuNGCIgogCi0jOiBhcHBseS5jOjE5OTQKKyM6IGFwcGx5LmM6MTk3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IGJpbmFyeSBwYXRjaCBhdCBsaW5lICVkOiAlLipzIgogbXNnc3RyICLQs9GA0LXRiNC60LAg0LIg0LTQstC+0LjRh9C90LDRgtCwINC60YDRitC/0LrQsCDQvdCwINGA0LXQtCAlZDogJS4qcyIKIAotIzogYXBwbHkuYzoyMDMxCisjOiBhcHBseS5jOjIwMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIGJpbmFyeSBwYXRjaCBhdCBsaW5lICVkIgogbXNnc3RyICLQvdC10YDQsNC30L/QvtC30L3QsNGC0LAg0LTQstC+0LjRh9C90LDRgtCwINC60YDRitC/0LrQsCDQvdCwINGA0LXQtCAlZCIKIAotIzogYXBwbHkuYzoyMTkzCisjOiBhcHBseS5jOjIxNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0Y2ggd2l0aCBvbmx5IGdhcmJhZ2UgYXQgbGluZSAlZCIKIG1zZ3N0ciAi0LrRgNGK0L/QutCw0YLQsCDQtSDRgSDQuNC30YbRj9C70L4g0L/QvtCy0YDQtdC00LXQvdC4INC00LDQvdC90Lgg0L3QsCDRgNC10LQgJWQiCiAKLSM6IGFwcGx5LmM6MjI3OQorIzogYXBwbHkuYzoyMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHN5bWxpbmsgJXMiCiBtc2dzdHIgItGB0LjQvNCy0L7Qu9C90LDRgtCwINCy0YDRitC30LrQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvdCwIgogCi0jOiBhcHBseS5jOjIyODMKKyM6IGFwcGx5LmM6MjI2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBvciByZWFkICVzIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQstC+0YDQtdC9INC40LvQuCDQv9GA0L7Rh9C10YLQtdC9IgogCi0jOiBhcHBseS5jOjI5NDIKKyM6IGFwcGx5LmM6MjkzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHN0YXJ0IG9mIGxpbmU6ICclYyciCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdC+INC90LDRh9Cw0LvQviDQvdCwINGA0LXQtDog4oCeJWPigJwiCiAKLSM6IGFwcGx5LmM6MzA2MworIzogYXBwbHkuYzozMDU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkh1bmsgIyVkIHN1Y2NlZWRlZCBhdCAlZCAob2Zmc2V0ICVkIGxpbmUpLiIKIG1zZ2lkX3BsdXJhbCAiSHVuayAjJWQgc3VjY2VlZGVkIGF0ICVkIChvZmZzZXQgJWQgbGluZXMpLiIKQEAgLTQxOSwxMyArMTE2MCwxMyBAQAogbXNnc3RyWzFdICIiCiAiJWQt0YLQviDQv9Cw0YDRh9C1INC60L7QtCDQsdC1INGD0YHQv9C10YjQvdC+INC/0YDQuNC70L7QttC10L3QviDQvdCwINGA0LXQtCAlZCAo0L7RgtC80LXRgdGC0LLQsNC90LUg0L7RgiAlZCDRgNC10LTQsCkuIgogCi0jOiBhcHBseS5jOjMwNzUKKyM6IGFwcGx5LmM6MzA2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb250ZXh0IHJlZHVjZWQgdG8gKCVsZC8lbGQpIHRvIGFwcGx5IGZyYWdtZW50IGF0ICVkIgogbXNnc3RyICIiCiAi0JrQvtC90YLQtdC60YHRgtGK0YIg0LUg0L3QsNC80LDQu9C10L0g0L3QsCAoJWxkLyVsZCkg0LfQsCDQv9GA0LjQu9Cw0LPQsNC90LXRgtC+INC90LAg0L/QsNGA0YfQtdGC0L4g0LrQvtC0INC90LAg0YDQtdC0ICVkIgogCi0jOiBhcHBseS5jOjMwODEKKyM6IGFwcGx5LmM6MzA3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAid2hpbGUgc2VhcmNoaW5nIGZvcjpcbiIKQEAgLTQzNCwzMTYgKzExNzUsMzEyIEBACiAi0L/RgNC4INGC0YrRgNGB0LXQvdC1INC30LA6XG4iCiAiJS4qcyIKIAotIzogYXBwbHkuYzozMTAzCisjOiBhcHBseS5jOjMwOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBiaW5hcnkgcGF0Y2ggZGF0YSBmb3IgJyVzJyIKIG1zZ3N0ciAi0LvQuNC/0YHQstCw0YIg0LTQsNC90L3QuNGC0LUg0LfQsCDQtNCy0L7QuNGH0L3QsNGC0LAg0LrRgNGK0L/QutCwINC30LAg4oCeJXPigJwiCiAKLSM6IGFwcGx5LmM6MzExMQorIzogYXBwbHkuYzozMTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZXZlcnNlLWFwcGx5IGEgYmluYXJ5IHBhdGNoIHdpdGhvdXQgdGhlIHJldmVyc2UgaHVuayB0byAnJXMnIgogbXNnc3RyICIiCiAi0LTQstC+0LjRh9C90LDRgtCwINC60YDRitC/0LrQsCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9GA0LjQu9C+0LbQuCDQsiDQvtCx0YDQsNGC0L3QsCDQv9C+0YHQvtC60LAsINC60L7Qs9Cw0YLQviDQvtCx0YDQsNGC0L3QvtGC0L4gIgogItC/0LDRgNGH0LUg0LfQsCDigJ4lc+KAnCDQu9C40L/RgdCy0LAiCiAKLSM6IGFwcGx5LmM6MzE1OAorIzogYXBwbHkuYzozMTUyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBhcHBseSBiaW5hcnkgcGF0Y2ggdG8gJyVzJyB3aXRob3V0IGZ1bGwgaW5kZXggbGluZSIKIG1zZ3N0ciAi0LrRitC8IOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQuNC70L7QttC4INC00LLQvtC40YfQvdCwINC60YDRitC/0LrQsCDQsdC10Lcg0L/RitC70LXQvSDQuNC90LTQtdC60YEiCiAKLSM6IGFwcGx5LmM6MzE2OAorIzogYXBwbHkuYzozMTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ0aGUgcGF0Y2ggYXBwbGllcyB0byAnJXMnICglcyksIHdoaWNoIGRvZXMgbm90IG1hdGNoIHRoZSBjdXJyZW50IGNvbnRlbnRzLiIKIG1zZ3N0ciAi0LrRgNGK0L/QutCw0YLQsCDRgdGK0L7RgtCy0LXRgtGB0YLQstCwINC90LAg4oCeJXPigJwgKCVzKSwg0LrQvtC50YLQviDQvdC1INGB0YrQstC/0LDQtNCwINC/0L4g0YHRitC00YrRgNC20LDQvdC40LUuIgogCi0jOiBhcHBseS5jOjMxNzYKKyM6IGFwcGx5LmM6MzE3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgcGF0Y2ggYXBwbGllcyB0byBhbiBlbXB0eSAnJXMnIGJ1dCBpdCBpcyBub3QgZW1wdHkiCiBtc2dzdHIgItC60YDRitC/0LrQsNGC0LAg0YHRitC+0YLQstC10YLRgdGC0LLQsCDQvdCwIOKAniVz4oCcLCDQutC+0LnRgtC+INGC0YDRj9Cx0LLQsCDQtNCwINC1INC/0YDQsNC30LXQvSwg0L3QviDQvdC1INC1IgogCi0jOiBhcHBseS5jOjMxOTQKKyM6IGFwcGx5LmM6MzE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgbmVjZXNzYXJ5IHBvc3RpbWFnZSAlcyBmb3IgJyVzJyBjYW5ub3QgYmUgcmVhZCIKIG1zZ3N0ciAiIgogItC90LXQvtCx0YXQvtC00LjQvNC40Y/RgiDRgNC10LfRg9C70YLQsNGCINGB0LvQtdC0INC+0L/QtdGA0LDRhtC40Y/RgtCwICDigJQg4oCeJXPigJwg0LfQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUgIgogItC/0YDQvtGH0LXRgtC10L0iCiAKLSM6IGFwcGx5LmM6MzIwNworIzogYXBwbHkuYzozMjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImJpbmFyeSBwYXRjaCBkb2VzIG5vdCBhcHBseSB0byAnJXMnIgogbXNnc3RyICLQtNCy0L7QuNGH0L3QsNGC0LAg0LrRgNGK0L/QutCwINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0LjQu9C+0LbQtdC90LAg0LLRitGA0YXRgyDigJ4lc+KAnCIKIAotIzogYXBwbHkuYzozMjEzCisjOiBhcHBseS5jOjMyMDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmluYXJ5IHBhdGNoIHRvICclcycgY3JlYXRlcyBpbmNvcnJlY3QgcmVzdWx0IChleHBlY3RpbmcgJXMsIGdvdCAlcykiCiBtc2dzdHIgIiIKICLQtNCy0L7QuNGH0L3QsNGC0LAg0LrRgNGK0L/QutCwINC30LAg4oCeJXPigJwg0LLQvtC00Lgg0LTQviDQvdC10L/RgNCw0LLQuNC70L3QuCDRgNC10LfRg9C70YLQsNGC0LggKNC+0YfQsNC60LLQsNGI0LUg0YHQtTog4oCeJXPigJwsINCwICIKICLQsdC1INC/0L7Qu9GD0YfQtdC90L46IOKAniVz4oCcKSIKIAotIzogYXBwbHkuYzozMjM0CisjOiBhcHBseS5jOjMyMzAKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0Y2ggZmFpbGVkOiAlczolbGQiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDQutGA0YrQv9C60LA6IOKAniVzOiVsZOKAnCIKIAotIzogYXBwbHkuYzozMzU2CisjOiBhcHBseS5jOjMzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoZWNrb3V0ICVzIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQuNC30YLQtdCz0LvQuCIKIAotIzogYXBwbHkuYzozNDA4IGFwcGx5LmM6MzQxOSBhcHBseS5jOjM0NjUgbWlkeC5jOjU4IHNldHVwLmM6Mjc4CisjOiBhcHBseS5jOjM0MDUgYXBwbHkuYzozNDE2IGFwcGx5LmM6MzQ2MiBtaWR4LmM6NjEgc2V0dXAuYzoyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgJXMiCiBtc2dzdHIgItGE0LDQudC70YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogYXBwbHkuYzozNDE2CisjOiBhcHBseS5jOjM0MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZGluZyBmcm9tICclcycgYmV5b25kIGEgc3ltYm9saWMgbGluayIKIG1zZ3N0ciAi0LjQt9GH0LjRgtCw0L3QtSDQvdCwIOKAniVz4oCcINGB0LvQtdC0INC/0YDQvtGB0LvQtdC00Y/QstCw0L3QtSDQvdCwINGB0LjQvNCy0L7Qu9C90LAg0LLRgNGK0LfQutCwIgogCi0jOiBhcHBseS5jOjM0NDUgYXBwbHkuYzozNjg4CisjOiBhcHBseS5jOjM0NDIgYXBwbHkuYzozNjg1CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJXMgaGFzIGJlZW4gcmVuYW1lZC9kZWxldGVkIgogbXNnc3RyICLQvtCx0LXQutGC0YrRgiDRgSDQv9GK0YIg4oCeJXPigJwg0LUg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvSDQuNC70Lgg0LjQt9GC0YDQuNGCIgogCi0jOiBhcHBseS5jOjM1MzEgYXBwbHkuYzozNzAzCisjOiBhcHBseS5jOjM1MjggYXBwbHkuYzozNzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBkb2VzIG5vdCBleGlzdCBpbiBpbmRleCIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDRgdGK0YnQtdGB0YLQstGD0LLQsCDQsiDQuNC90LTQtdC60YHQsCIKIAotIzogYXBwbHkuYzozNTQwIGFwcGx5LmM6MzcxMQorIzogYXBwbHkuYzozNTM3IGFwcGx5LmM6MzcwOAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZG9lcyBub3QgbWF0Y2ggaW5kZXgiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0YHRitC+0YLQstC10YLRgdGC0LLQsCDQvdCwINC40L3QtNC10LrRgdCwIgogCi0jOiBhcHBseS5jOjM1NzUKKyM6IGFwcGx5LmM6MzU3MgogbXNnaWQgInJlcG9zaXRvcnkgbGFja3MgdGhlIG5lY2Vzc2FyeSBibG9iIHRvIGZhbGwgYmFjayBvbiAzLXdheSBtZXJnZS4iCiBtc2dzdHIgIiIKICLQsiDRhdGA0LDQvdC40LvQuNGJ0LXRgtC+INC70LjQv9GB0LLQsNGCINC90LXQvtCx0YXQvtC00LjQvNC40YLQtSDQvtCx0LXQutGC0LgtQkxPQiwg0LfQsCDQtNCwINGB0LUg0L/RgNC10LzQuNC90LUg0LrRitC8INGC0YDQvtC50L3QviAiCiAi0YHQu9C40LLQsNC90LUuIgogCi0jOiBhcHBseS5jOjM1NzgKKyM6IGFwcGx5LmM6MzU3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWxsaW5nIGJhY2sgdG8gdGhyZWUtd2F5IG1lcmdlLi4uXG4iCiBtc2dzdHIgItCf0YDQtdC80LjQvdCw0LLQsNC90LUg0LrRitC8INGC0YDQvtC50L3QviDRgdC70LjQstCw0L3QteKAplxuIgogCi0jOiBhcHBseS5jOjM1OTQgYXBwbHkuYzozNTk4CisjOiBhcHBseS5jOjM1OTEgYXBwbHkuYzozNTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIHRoZSBjdXJyZW50IGNvbnRlbnRzIG9mICclcyciCiBtc2dzdHIgItGC0LXQutGD0YnQvtGC0L4g0YHRitC00YrRgNC20LDQvdC40LUg0L3QsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvdC+IgogCi0jOiBhcHBseS5jOjM2MTAKKyM6IGFwcGx5LmM6MzYwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gZmFsbCBiYWNrIG9uIHRocmVlLXdheSBtZXJnZS4uLlxuIgogbXNnc3RyICLQndC10YPRgdC/0LXRiNC90L4g0L/RgNC10LzQuNC90LDQstCw0L3QtSDQutGK0Lwg0YLRgNC+0LnQvdC+INGB0LvQuNCy0LDQvdC14oCmXG4iCiAKLSM6IGFwcGx5LmM6MzYyNAorIzogYXBwbHkuYzozNjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyB3aXRoIGNvbmZsaWN0cy5cbiIKIG1zZ3N0ciAi0JrQvtC90YTQu9C40LrRgtC4INC/0YDQuCDQv9GA0LjQu9Cw0LPQsNC90LXRgtC+INC90LAg0LrRgNGK0L/QutCw0YLQsCDQutGK0Lwg4oCeJXPigJwuXG4iCiAKLSM6IGFwcGx5LmM6MzYyOQorIzogYXBwbHkuYzozNjI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyBjbGVhbmx5LlxuIgogbXNnc3RyICLQmtGA0YrQv9C60LDRgtCwINCx0LUg0L/RgNC40LvQvtC20LXQvdCwINGH0LjRgdGC0L4g0LrRitC8IOKAniVz4oCcLlxuIgogCi0jOiBhcHBseS5jOjM2NTUKKyM6IGFwcGx5LmM6MzY1MgogbXNnaWQgInJlbW92YWwgcGF0Y2ggbGVhdmVzIGZpbGUgY29udGVudHMiCiBtc2dzdHIgItC40LfRgtGA0LjQstCw0YnQsNGC0LAg0LrRgNGK0L/QutCwINC+0YHRgtCw0LLRjyDRhNCw0LnQu9CwINC90LXQv9GA0LDQt9C10L0iCiAKLSM6IGFwcGx5LmM6MzcyOAorIzogYXBwbHkuYzozNzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiB3cm9uZyB0eXBlIgogbXNnc3RyICLigJ4lc+KAnDog0L3QtdC/0YDQsNCy0LjQu9C10L0g0LLQuNC0IgogCi0jOiBhcHBseS5jOjM3MzAKKyM6IGFwcGx5LmM6MzcyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBoYXMgdHlwZSAlbywgZXhwZWN0ZWQgJW8iCiBtc2dzdHIgIuKAniVz4oCcINC1INC+0YIg0LLQuNC0IOKAniVv4oCcLCDQsCDRgdC1INC+0YfQsNC60LLQsNGI0LUg4oCeJW/igJwiCiAKLSM6IGFwcGx5LmM6Mzg4MSBhcHBseS5jOjM4ODMKKyM6IGFwcGx5LmM6Mzg3OCBhcHBseS5jOjM4ODAgcmVhZC1jYWNoZS5jOjgzMCByZWFkLWNhY2hlLmM6ODU2CisjOiByZWFkLWNhY2hlLmM6MTMyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHBhdGggJyVzJyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0L/RitGCOiDigJ4lc+KAnCIKIAotIzogYXBwbHkuYzozOTM5CisjOiBhcHBseS5jOjM5MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGFscmVhZHkgZXhpc3RzIGluIGluZGV4IgogbXNnc3RyICLigJ4lc+KAnDog0LLQtdGH0LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LAg0LIg0LjQvdC00LXQutGB0LAiCiAKLSM6IGFwcGx5LmM6Mzk0MgorIzogYXBwbHkuYzozOTM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBhbHJlYWR5IGV4aXN0cyBpbiB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAi4oCeJXPigJw6INCy0LXRh9C1INGB0YrRidC10YHRgtCy0YPQstCwINCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IgogCi0jOiBhcHBseS5jOjM5NjIKKyM6IGFwcGx5LmM6Mzk1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgbW9kZSAoJW8pIG9mICVzIGRvZXMgbm90IG1hdGNoIG9sZCBtb2RlICglbykiCiBtc2dzdHIgItC90L7QstC40YLQtSDQv9GA0LDQstCwINC30LAg0LTQvtGB0YLRitC/ICglbykg0L3QsCDigJ4lc+KAnCDQvdC1INGB0YrQstC/0LDQtNCw0YIg0YHRitGBINGB0YLQsNGA0LjRgtC1ICglbykiCiAKLSM6IGFwcGx5LmM6Mzk2NworIzogYXBwbHkuYzozOTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSBvZiAlcyIKIG1zZ3N0ciAiIgogItC90L7QstC40YLQtSDQv9GA0LDQstCwINC30LAg0LTQvtGB0YLRitC/ICglbykg0L3QsCDigJ4lc+KAnCDQvdC1INGB0YrQstC/0LDQtNCw0YIg0YHRitGBINGB0YLQsNGA0LjRgtC1ICglbykg0L3QsCDigJ4lc+KAnCIKIAotIzogYXBwbHkuYzozOTg3CisjOiBhcHBseS5jOjM5ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWZmZWN0ZWQgZmlsZSAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCiBtc2dzdHIgItC30LDRgdC10LPQvdCw0YLQuNGP0YIg0YTQsNC50Lsg4oCeJXPigJwg0LUg0YHQu9C10LQg0YHQuNC80LLQvtC70L3QsCDQstGA0YrQt9C60LAiCiAKLSM6IGFwcGx5LmM6Mzk5MQorIzogYXBwbHkuYzozOTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBwYXRjaCBkb2VzIG5vdCBhcHBseSIKIG1zZ3N0ciAi0JrRgNGK0L/QutCw0YLQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC40LvQvtC20LXQvdCwIgogCi0jOiBhcHBseS5jOjQwMDYKKyM6IGFwcGx5LmM6NDAwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJDaGVja2luZyBwYXRjaCAlcy4uLiIKIG1zZ3N0ciAi0J/RgNC+0LLQtdGA0Y/QstCw0L3QtSDQvdCwINC60YDRitC/0LrQsNGC0LAg4oCeJXPigJzigKYiCiAKLSM6IGFwcGx5LmM6NDA5OAorIzogYXBwbHkuYzo0MDk1CiAjLCBjLWZvcm1hdAogbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzIGZvciBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIiIKICLQuNC90YTQvtGA0LzQsNGG0LjRj9GC0LAg0LfQsCDRgdGD0LzQsNGC0LAg0L/QviBTSEExINC30LAg0L/QvtC00LzQvtC00YPQu9CwINC70LjQv9GB0LLQsCDQuNC70Lgg0L3QtSDQtSDQtNC+0YHRgtCw0YLRitGH0L3QsCAoJXMpLiIKIAotIzogYXBwbHkuYzo0MTA1CisjOiBhcHBseS5jOjQxMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9kZSBjaGFuZ2UgZm9yICVzLCB3aGljaCBpcyBub3QgaW4gY3VycmVudCBIRUFEIgogbXNnc3RyICLRgdC80Y/QvdCwINC90LAg0YDQtdC20LjQvNCwINC90LAg0LTQvtGB0YLRitC/0LAg0L3QsCDigJ4lc+KAnCwg0LrQvtC50YLQviDQvdC1INC1INCyINGC0LXQutGD0YnQuNGPINCy0YDRitGFIOKAnkhFQUTigJwiCiAKLSM6IGFwcGx5LmM6NDEwOAorIzogYXBwbHkuYzo0MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzICglcykuIgogbXNnc3RyICLQuNC90YTQvtGA0LzQsNGG0LjRj9GC0LAg0LfQsCDRgdGD0LzQsNGC0LAg0L/QviBTSEExINC70LjQv9GB0LLQsCDQuNC70Lgg0L3QtSDQtSDQtNC+0YHRgtCw0YLRitGH0L3QsCAoJXMpLiIKIAotIzogYXBwbHkuYzo0MTEzIGJ1aWx0aW4vY2hlY2tvdXQuYzoyNDQgYnVpbHRpbi9yZXNldC5jOjE0MgotIywgYy1mb3JtYXQKLW1zZ2lkICJtYWtlX2NhY2hlX2VudHJ5IGZhaWxlZCBmb3IgcGF0aCAnJXMnIgotbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YHRitC30LTQsNCy0LDQvdC1INC90LAg0LfQsNC/0LjRgSDQsiDQutC10YjQsCDRh9GA0LXQtyDigJ5tYWtlX2NhY2hlX2VudHJ54oCcINC30LAg4oCeJXPigJwiCi0KLSM6IGFwcGx5LmM6NDExNworIzogYXBwbHkuYzo0MTE0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBhZGQgJXMgdG8gdGVtcG9yYXJ5IGluZGV4IgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQtNC+0LHQsNCy0Lgg0LrRitC8INCy0YDQtdC80LXQvdC90LjRjyDQuNC90LTQtdC60YEiCiAKLSM6IGFwcGx5LmM6NDEyNworIzogYXBwbHkuYzo0MTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSB0ZW1wb3JhcnkgaW5kZXggdG8gJXMiCiBtc2dzdHIgItCy0YDQtdC80LXQvdC90LjRj9GCINC40L3QtNC10LrRgSDQvdC1INC80L7QttC1INC00LAg0YHQtSDQt9Cw0L/QsNC30Lgg0LIg4oCeJXPigJwiCiAKLSM6IGFwcGx5LmM6NDI2NQorIzogYXBwbHkuYzo0MjYyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXMgZnJvbSBpbmRleCIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9Cy0LDQtNC4INC+0YIg0LjQvdC00LXQutGB0LAiCiAKLSM6IGFwcGx5LmM6NDI5OQorIzogYXBwbHkuYzo0Mjk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgcGF0Y2ggZm9yIHN1Ym1vZHVsZSAlcyIKIG1zZ3N0ciAi0L/QvtCy0YDQtdC00LXQvdCwINC60YDRitC/0LrQsCDQt9CwINC80L7QtNGD0LvQsCDigJ4lc+KAnCIKIAotIzogYXBwbHkuYzo0MzA1CisjOiBhcHBseS5jOjQzMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3bHkgY3JlYXRlZCBmaWxlICclcyciCiBtc2dzdHIgIiIKICLQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9C+0LvRg9GH0Lgg0LjQvdGE0L7RgNC80LDRhtC40Y8g0YfRgNC10Lcg4oCec3RhdOKAnCDQt9CwINC90L7QstC+0YHRitC30LTQsNC00LXQvdC40Y8g0YTQsNC50Lsg4oCeJXPigJwiCiAKLSM6IGFwcGx5LmM6NDMxMworIzogYXBwbHkuYzo0MzEwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYmFja2luZyBzdG9yZSBmb3IgbmV3bHkgY3JlYXRlZCBmaWxlICVzIgogbXNnc3RyICIiCiAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsCDRgdGK0LfQtNCw0LTQtSDQvNGP0YHRgtC+0YLQviDQt9CwINGB0YrRhdGA0LDQvdC10L3QuNC1INC90LAg0L3QvtCy0L7RgdGK0LfQtNCw0LTQtdC90LjRjyDRhNCw0LnQuyDigJ4lc+KAnCIKIAotIzogYXBwbHkuYzo0MzE5IGFwcGx5LmM6NDQ2NAorIzogYXBwbHkuYzo0MzE2IGFwcGx5LmM6NDQ2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIGNhY2hlIGVudHJ5IGZvciAlcyIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LTQvtCx0LDQstC4INC30LDQv9C40YEg0LIg0LrQtdGI0LAg0LfQsCDigJ4lc+KAnCIKIAotIzogYXBwbHkuYzo0MzYyCisjOiBhcHBseS5jOjQzNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvICclcyciCiBtc2dzdHIgItCyIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0LjRiNC1IgogCi0jOiBhcHBseS5jOjQzNjYKKyM6IGFwcGx5LmM6NDM2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjbG9zaW5nIGZpbGUgJyVzJyIKIG1zZ3N0ciAi0LfQsNGC0LLQsNGA0Y/QvdC1INC90LAg0YTQsNC50LvQsCDigJ4lc+KAnCIKIAotIzogYXBwbHkuYzo0NDM2CisjOiBhcHBseS5jOjQ0MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyBtb2RlICVvIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNC/0LjRiNC1INGBINGA0LXQttC40Lwg0L3QsCDQtNC+0YHRgtGK0L8g4oCeJW/igJwiCiAKLSM6IGFwcGx5LmM6NDUzNAorIzogYXBwbHkuYzo0NTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgcGF0Y2ggJXMgY2xlYW5seS4iCiBtc2dzdHIgItCa0YDRitC/0LrQsNGC0LAg4oCeJXPigJwg0LHQtSDQv9GA0LjQu9C+0LbQtdC90LAg0YfQuNGB0YLQvi4iCiAKLSM6IGFwcGx5LmM6NDU0MgorIzogYXBwbHkuYzo0NTM5CiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IiCiBtc2dzdHIgItCy0YrRgtGA0LXRiNC90LAg0LPRgNC10YjQutCwIgogCi0jOiBhcHBseS5jOjQ1NDUKKyM6IGFwcGx5LmM6NDU0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBseWluZyBwYXRjaCAlJXMgd2l0aCAlZCByZWplY3QuLi4iCiBtc2dpZF9wbHVyYWwgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdHMuLi4iCiBtc2dzdHJbMF0gItCf0YDQuNC70LDQs9Cw0L3QtSDQvdCwINC60YDRitC/0LrQsNGC0LAg4oCeJSVz4oCcINGBICVkINC+0YLRhdCy0YrRgNC70LXQvdC+INC/0LDRgNGH0LXigKYiCiBtc2dzdHJbMV0gItCf0YDQuNC70LDQs9Cw0L3QtSDQvdCwINC60YDRitC/0LrQsNGC0LAg4oCeJSVz4oCcINGBICVkINC+0YLRhdCy0YrRgNC70LXQvdC4INC/0LDRgNGH0LXRgtCw4oCmIgogCi0jOiBhcHBseS5jOjQ1NTYKKyM6IGFwcGx5LmM6NDU1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cnVuY2F0aW5nIC5yZWogZmlsZW5hbWUgdG8gJS4qcy5yZWoiCiBtc2dzdHIgItGB0YrQutGA0LDRidCw0LLQsNC90LUg0L3QsCDQuNC80LXRgtC+INC90LAg0YTQsNC50LvQsCDRgSDQvtGC0YXQstGK0YDQu9C10L3QuNGC0LUg0L/QsNGA0YfQtdGC0LAg0L3QsCDigJ4gJS4qcy5yZWrigJwiCiAKLSM6IGFwcGx5LmM6NDU2NCBidWlsdGluL2ZldGNoLmM6ODQzIGJ1aWx0aW4vZmV0Y2guYzoxMTIyCisjOiBhcHBseS5jOjQ1NjEgYnVpbHRpbi9mZXRjaC5jOjkwMSBidWlsdGluL2ZldGNoLmM6MTIwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgb3BlbiAlcyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQstC+0YDQtdC9IgogCi0jOiBhcHBseS5jOjQ1NzgKKyM6IGFwcGx5LmM6NDU3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJIdW5rICMlZCBhcHBsaWVkIGNsZWFubHkuIgogbXNnc3RyICIlZC3RgtC+INC/0LDRgNGH0LUg0LHQtSDRg9GB0L/QtdGI0L3QviDQv9GA0LjQu9C+0LbQtdC90L4uIgogCi0jOiBhcHBseS5jOjQ1ODIKKyM6IGFwcGx5LmM6NDU3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWplY3RlZCBodW5rICMlZC4iCiBtc2dzdHIgIiVkLdGC0L4g0L/QsNGA0YfQtSDQsdC1INC+0YLRhdCy0YrRgNC70LXQvdC+LiIKIAotIzogYXBwbHkuYzo0NjkyCisjOiBhcHBseS5jOjQ2OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBlZCBwYXRjaCAnJXMnLiIKIG1zZ3N0ciAi0J/RgNC+0L/Rg9GB0L3QsNGC0LAg0LrRgNGK0L/QutCwOiDigJ4lc+KAnCIKIAotIzogYXBwbHkuYzo0NzAwCisjOiBhcHBseS5jOjQ3MDYKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaW5wdXQiCiBtc2dzdHIgItC90LXQv9C+0LfQvdCw0YIg0LLRhdC+0LQiCiAKLSM6IGFwcGx5LmM6NDcxOQorIzogYXBwbHkuYzo0NzI2CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgaW5kZXggZmlsZSIKIG1zZ3N0ciAi0LjQvdC00LXQutGB0YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LjRgdCw0L0iCiAKLSM6IGFwcGx5LmM6NDg3NAorIzogYXBwbHkuYzo0ODgzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IG9wZW4gcGF0Y2ggJyVzJzogJXMiCiBtc2dzdHIgItC60YDRitC/0LrQsNGC0LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQstC+0YDQtdC90LA6ICVzIgogCi0jOiBhcHBseS5jOjQ5MDEKKyM6IGFwcGx5LmM6NDkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJzcXVlbGNoZWQgJWQgd2hpdGVzcGFjZSBlcnJvciIKIG1zZ2lkX3BsdXJhbCAic3F1ZWxjaGVkICVkIHdoaXRlc3BhY2UgZXJyb3JzIgogbXNnc3RyWzBdICLQv9GA0LXQvdC10LHRgNC10LPQvdCw0YLQsCDQtSAlZCDQs9GA0LXRiNC60LAg0LIg0LfQvdCw0YbQuNGC0LUg0LfQsCDQuNC90YLQtdGA0LLQsNC70LgiCiBtc2dzdHJbMV0gItC/0YDQtdC90LXQsdGA0LXQs9C90LDRgtC4INGB0LAgJWQg0LPRgNC10YjQutC4INCyINC30L3QsNGG0LjRgtC1INC30LAg0LjQvdGC0LXRgNCy0LDQu9C4IgogCi0jOiBhcHBseS5jOjQ5MDcgYXBwbHkuYzo0OTIyCisjOiBhcHBseS5jOjQ5MTYgYXBwbHkuYzo0OTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVkIGxpbmUgYWRkcyB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dpZF9wbHVyYWwgIiVkIGxpbmVzIGFkZCB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dzdHJbMF0gIiVkINGA0LXQtCDQtNC+0LHQsNCy0Y8g0LPRgNC10YjQutC4INCyINC30L3QsNGG0LjRgtC1INC30LAg0LjQvdGC0LXRgNCy0LDQu9C4LiIKIG1zZ3N0clsxXSAiJWQg0YDQtdC00LAg0LTQvtCx0LDQstGP0YIg0LPRgNC10YjQutC4INCyINC30L3QsNGG0LjRgtC1INC30LAg0LjQvdGC0LXRgNCy0LDQu9C4LiIKIAotIzogYXBwbHkuYzo0OTE1CisjOiBhcHBseS5jOjQ5MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJWQgbGluZSBhcHBsaWVkIGFmdGVyIGZpeGluZyB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dpZF9wbHVyYWwgIiVkIGxpbmVzIGFwcGxpZWQgYWZ0ZXIgZml4aW5nIHdoaXRlc3BhY2UgZXJyb3JzLiIKQEAgLTc1MiwxNDUgKzE0ODksMTM1IEBACiBtc2dzdHJbMV0gIiIKICLQlNC+0LHQsNCy0LXQvdC4INGB0LAgJWQg0YDQtdC00LAg0YHQu9C10LQg0LrQvtGA0LXQutGG0LjRj9GC0LAg0L3QsCDQs9GA0LXRiNC60LjRgtC1INCyINC30L3QsNGG0LjRgtC1INC30LAg0LjQvdGC0LXRgNCy0LDQu9C4LiIKIAotIzogYXBwbHkuYzo0OTMxIGJ1aWx0aW4vYWRkLmM6NTM4IGJ1aWx0aW4vbXYuYzozMDAgYnVpbHRpbi9ybS5jOjM4OQorIzogYXBwbHkuYzo0OTQwIGJ1aWx0aW4vYWRkLmM6NjEyIGJ1aWx0aW4vbXYuYzozMDEgYnVpbHRpbi9ybS5jOjQwNgogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAi0J3QvtCy0LjRj9GCINC40L3QtNC10LrRgSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LjRgdCw0L0iCiAKLSM6IGFwcGx5LmM6NDk1OCBhcHBseS5jOjQ5NjEgYnVpbHRpbi9hbS5jOjIyMDkgYnVpbHRpbi9hbS5jOjIyMTIKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjEgYnVpbHRpbi9mZXRjaC5jOjExOCBidWlsdGluL21lcmdlLmM6MjYyCi0jOiBidWlsdGluL3B1bGwuYzoxOTkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwNgotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjUKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODQ2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODQ5Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA4OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NwotbXNnaWQgInBhdGgiCi1tc2dzdHIgItC/0YrRgiIKLQotIzogYXBwbHkuYzo0OTU5CisjOiBhcHBseS5jOjQ5NjgKIG1zZ2lkICJkb24ndCBhcHBseSBjaGFuZ2VzIG1hdGNoaW5nIHRoZSBnaXZlbiBwYXRoIgogbXNnc3RyICLQsdC10Lcg0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0L/RgNC+0LzQtdC90LjRgtC1INC90LDQv9Cw0YHQstCw0YnQuCDQvdCwINC00LDQtNC10L3QuNGPINC/0YrRgiIKIAotIzogYXBwbHkuYzo0OTYyCisjOiBhcHBseS5jOjQ5NzEKIG1zZ2lkICJhcHBseSBjaGFuZ2VzIG1hdGNoaW5nIHRoZSBnaXZlbiBwYXRoIgogbXNnc3RyICLQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDQv9GA0L7QvNC10L3QuNGC0LUg0L3QsNC/0LDRgdCy0LDRidC4INC90LAg0LTQsNC00LXQvdC40Y8g0L/RitGCIgogCi0jOiBhcHBseS5jOjQ5NjQgYnVpbHRpbi9hbS5jOjIyMTgKKyM6IGFwcGx5LmM6NDk3MyBidWlsdGluL2FtLmM6MjI2MAogbXNnaWQgIm51bSIKIG1zZ3N0ciAi0JHQoNCe0JkiCiAKLSM6IGFwcGx5LmM6NDk2NQorIzogYXBwbHkuYzo0OTc0CiBtc2dpZCAicmVtb3ZlIDxudW0+IGxlYWRpbmcgc2xhc2hlcyBmcm9tIHRyYWRpdGlvbmFsIGRpZmYgcGF0aHMiCiBtc2dzdHIgItC/0YDQtdC80LDRhdCy0LDQvdC1INC90LAg0YLQvtC30Lgg0JHQoNCe0Jkg0LLQvtC00LXRidC4INC10LvQtdC80LXQvdGC0Lgg0L7RgiDQv9GK0YLQuNGJ0LDRgtCwINCyINGA0LDQt9C70LjQutCw0YLQsCIKIAotIzogYXBwbHkuYzo0OTY4CisjOiBhcHBseS5jOjQ5NzcKIG1zZ2lkICJpZ25vcmUgYWRkaXRpb25zIG1hZGUgYnkgdGhlIHBhdGNoIgogbXNnc3RyICLQuNCz0L3QvtGA0LjRgNCw0L3QtSDQvdCwINGA0LXQtNC+0LLQtdGC0LUg0LTQvtCx0LDQstC10L3QuCDQvtGCINGC0LDQt9C4INC60YDRitC/0LrQsCIKIAotIzogYXBwbHkuYzo0OTcwCisjOiBhcHBseS5jOjQ5NzkKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGRpZmZzdGF0IGZvciB0aGUgaW5wdXQiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINGB0YLQsNGC0LjRgdGC0LjQutCwINC90LAg0L/RgNC+0LzQtdC90LjRgtC1INCx0LXQtyDQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDQutGA0YrQv9C60LDRgtCwIgogCi0jOiBhcHBseS5jOjQ5NzQKKyM6IGFwcGx5LmM6NDk4MwogbXNnaWQgInNob3cgbnVtYmVyIG9mIGFkZGVkIGFuZCBkZWxldGVkIGxpbmVzIGluIGRlY2ltYWwgbm90YXRpb24iCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINCx0YDQvtGPINC90LAg0LTQvtCx0LDQstC10L3QuNGC0LUg0Lgg0LjQt9GC0YDQuNGC0LjRgtC1INGA0LXQtNC+0LLQtSIKIAotIzogYXBwbHkuYzo0OTc2CisjOiBhcHBseS5jOjQ5ODUKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGEgc3VtbWFyeSBmb3IgdGhlIGlucHV0IgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRgdGC0LDRgtC40YHRgtC40LrQsCDQvdCwINCy0YXQvtC00L3QuNGC0LUg0LTQsNC90L3QuCDQsdC10Lcg0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0LrRgNGK0L/QutCw0YLQsCIKIAotIzogYXBwbHkuYzo0OTc4CisjOiBhcHBseS5jOjQ5ODcKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgc2VlIGlmIHRoZSBwYXRjaCBpcyBhcHBsaWNhYmxlIgogbXNnc3RyICLQv9GA0L7QstC10YDQutCwINC00LDQu9C4INC60YDRitC/0LrQsNGC0LAg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQuNC70L7QttC4LCDQsdC10Lcg0LTQtdC50YHRgtCy0LjRgtC10LvQvdC+INC/0YDQuNC70LDQs9Cw0L3QtSIKIAotIzogYXBwbHkuYzo0OTgwCisjOiBhcHBseS5jOjQ5ODkKIG1zZ2lkICJtYWtlIHN1cmUgdGhlIHBhdGNoIGlzIGFwcGxpY2FibGUgdG8gdGhlIGN1cnJlbnQgaW5kZXgiCiBtc2dzdHIgItC/0YDQvtCy0LXRgNC60LAg0LTQsNC70Lgg0LrRgNGK0L/QutCw0YLQsCDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQuNC70L7QttC10L3QsCDQutGK0Lwg0YLQtdC60YPRidC40Y8g0LjQvdC00LXQutGBIgogCi0jOiBhcHBseS5jOjQ5ODIKKyM6IGFwcGx5LmM6NDk5MQogbXNnaWQgIm1hcmsgbmV3IGZpbGVzIHdpdGggYGdpdCBhZGQgLS1pbnRlbnQtdG8tYWRkYCIKIG1zZ3N0ciAi0L7RgtCx0LXQu9GP0LfQstCw0L3QtSDQvdCwINC90L7QstC40YLQtSDRhNCw0LnQu9C+0LLQtSDRgSDigJ5naXQgYWRkIC0taW50ZW50LXRvLWFkZOKAnCIKIAotIzogYXBwbHkuYzo0OTg0CisjOiBhcHBseS5jOjQ5OTMKIG1zZ2lkICJhcHBseSBhIHBhdGNoIHdpdGhvdXQgdG91Y2hpbmcgdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAi0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0LrRgNGK0L/QutCw0YLQsCDQsdC10Lcg0L/RgNC+0LzRj9C90LAg0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKIAotIzogYXBwbHkuYzo0OTg2CisjOiBhcHBseS5jOjQ5OTUKIG1zZ2lkICJhY2NlcHQgYSBwYXRjaCB0aGF0IHRvdWNoZXMgb3V0c2lkZSB0aGUgd29ya2luZyBhcmVhIgogbXNnc3RyICLQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDQutGA0YrQv9C60LAsINC60L7Rj9GC0L4g0L/RgNC+0LzQtdC90Y8g0Lgg0YTQsNC50LvQvtCy0LUg0LjQt9Cy0YrQvSDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKIAotIzogYXBwbHkuYzo0OTg5CisjOiBhcHBseS5jOjQ5OTgKIG1zZ2lkICJhbHNvIGFwcGx5IHRoZSBwYXRjaCAodXNlIHdpdGggLS1zdGF0Ly0tc3VtbWFyeS8tLWNoZWNrKSIKIG1zZ3N0ciAiIgogItC60YDRitC/0LrQsNGC0LAg0LTQsCDQsdGK0LTQtSDQv9GA0LjQu9C+0LbQtdC90LAuICDQntC/0YbQuNGP0YLQsCDRgdC1INC60L7QvNCx0LjQvdC40YDQsCDRgSDigJ4tLWNoZWNr4oCcL+KAni0tc3RhdOKAnC/igJ4tLSIKICJzdW1tYXJ54oCcIgogCi0jOiBhcHBseS5jOjQ5OTEKKyM6IGFwcGx5LmM6NTAwMAogbXNnaWQgImF0dGVtcHQgdGhyZWUtd2F5IG1lcmdlIGlmIGEgcGF0Y2ggZG9lcyBub3QgYXBwbHkiCiBtc2dzdHIgItC/0YDQvtCx0LLQsNC90LUg0YEg0YLRgNC+0LnQvdC+INGB0LvQuNCy0LDQvdC1LCDQsNC60L4g0LrRgNGK0L/QutCw0YLQsCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9GA0LjQu9C+0LbQuCDQtNC40YDQtdC60YLQvdC+IgogCi0jOiBhcHBseS5jOjQ5OTMKKyM6IGFwcGx5LmM6NTAwMgogbXNnaWQgImJ1aWxkIGEgdGVtcG9yYXJ5IGluZGV4IGJhc2VkIG9uIGVtYmVkZGVkIGluZGV4IGluZm9ybWF0aW9uIgogbXNnc3RyICIiCiAi0YHRitC30LTQsNCy0LDQvdC1INC90LAg0LLRgNC10LzQtdC90LXQvSDQuNC90LTQtdC60YEg0L3QsCDQsdCw0LfQsCDQvdCwINCy0LrQu9GO0YfQtdC90LDRgtCwINC40L3RhNC+0YDQvNCw0YbQuNGPINC30LAg0LjQvdC00LXQutGB0LAiCiAKLSM6IGFwcGx5LmM6NDk5NiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjMKKyM6IGFwcGx5LmM6NTAwNSBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTczIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjQKIG1zZ2lkICJwYXRocyBhcmUgc2VwYXJhdGVkIHdpdGggTlVMIGNoYXJhY3RlciIKIG1zZ3N0ciAi0YDQsNC30LTQtdC70Y/QvdC1INC90LAg0L/RitGC0LjRidCw0YLQsCDRgSDQvdGD0LvQtdCy0LjRjyDQt9C90LDQuiDigJ5OVUzigJwiCiAKLSM6IGFwcGx5LmM6NDk5OAorIzogYXBwbHkuYzo1MDA3CiBtc2dpZCAiZW5zdXJlIGF0IGxlYXN0IDxuPiBsaW5lcyBvZiBjb250ZXh0IG1hdGNoIgogbXNnc3RyICLQtNCwINGB0LUg0L7RgdC40LPRg9GA0Lgg0LrQvtC90YLQtdC60YHRgiDQvtGCINC/0L7QvdC1INGC0LDQutGK0LIg0JHQoNCe0Jkg0YHRitCy0L/QsNC00LDRidC4INGA0LXQtNC+0LLQtSIKIAotIzogYXBwbHkuYzo0OTk5IGJ1aWx0aW4vYW0uYzoyMTk3IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTcKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTkgYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDEKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxMiBidWlsdGluL3JlYmFzZS5jOjg1NworIzogYXBwbHkuYzo1MDA4IGJ1aWx0aW4vYW0uYzoyMjM5IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTgKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAwIGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTcgYnVpbHRpbi9yZWJhc2UuYzoxNTA4CiBtc2dpZCAiYWN0aW9uIgogbXNnc3RyICLQtNC10LnRgdGC0LLQuNC1IgogCi0jOiBhcHBseS5jOjUwMDAKKyM6IGFwcGx5LmM6NTAwOQogbXNnaWQgImRldGVjdCBuZXcgb3IgbW9kaWZpZWQgbGluZXMgdGhhdCBoYXZlIHdoaXRlc3BhY2UgZXJyb3JzIgogbXNnc3RyICLQt9Cw0YHQuNGH0LDQvdC1INC90LAg0L3QvtCy0Lgg0LjQu9C4INC/0YDQvtC80LXQvdC10L3QuCDRgNC10LTQvtCy0LUg0YEg0LPRgNC10YjQutC4INCyINC30L3QsNGG0LjRgtC1INC30LAg0LjQvdGC0LXRgNCy0LDQu9C4IgogCi0jOiBhcHBseS5jOjUwMDMgYXBwbHkuYzo1MDA2CisjOiBhcHBseS5jOjUwMTIgYXBwbHkuYzo1MDE1CiBtc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSB3aGVuIGZpbmRpbmcgY29udGV4dCIKIG1zZ3N0ciAiIgogItC40LPQvdC+0YDQuNGA0LDQvdC1INC90LAg0L/RgNC+0LzQtdC90LjRgtC1INCyINC30L3QsNGG0LjRgtC1INC30LAg0LjQvdGC0LXRgNCy0LDQu9C4INC/0YDQuCDQvtGC0LrRgNC40LLQsNC90LUg0L3QsCDQutC+0L3RgtC10LrRgdGC0LAiCiAKLSM6IGFwcGx5LmM6NTAwOQorIzogYXBwbHkuYzo1MDE4CiBtc2dpZCAiYXBwbHkgdGhlIHBhdGNoIGluIHJldmVyc2UiCiBtc2dzdHIgItC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINC60YDRitC/0LrQsNGC0LAg0LIg0L7QsdGA0LDRgtC90LAg0L/QvtGB0L7QutCwIgogCi0jOiBhcHBseS5jOjUwMTEKKyM6IGFwcGx5LmM6NTAyMAogbXNnaWQgImRvbid0IGV4cGVjdCBhdCBsZWFzdCBvbmUgbGluZSBvZiBjb250ZXh0IgogbXNnc3RyICLQsdC10Lcg0LjQt9C40YHQutCy0LDQvdC1INC90LAg0LTQvtGA0Lgg0Lgg0LXQtNC40L0g0YDQtdC0INC60L7QvdGC0LXQutGB0YIiCiAKLSM6IGFwcGx5LmM6NTAxMworIzogYXBwbHkuYzo1MDIyCiBtc2dpZCAibGVhdmUgdGhlIHJlamVjdGVkIGh1bmtzIGluIGNvcnJlc3BvbmRpbmcgKi5yZWogZmlsZXMiCiBtc2dzdHIgItC+0YHRgtCw0LLRj9C90LUg0L3QsCDQvtGC0YXQstGK0YDQu9C10L3QuNGC0LUg0L/QsNGA0YfQtdGC0LAg0LLRitCyINGE0LDQudC70L7QstC1INGBINGA0LDQt9GI0LjRgNC10L3QuNC1IOKAni5yZWrigJwiCiAKLSM6IGFwcGx5LmM6NTAxNQorIzogYXBwbHkuYzo1MDI0CiBtc2dpZCAiYWxsb3cgb3ZlcmxhcHBpbmcgaHVua3MiCiBtc2dzdHIgItC/0L7Qt9Cy0L7Qu9GP0LLQsNC90LUg0L3QsCDQt9Cw0YHRgtGK0L/QstCw0YnQuCDRgdC1INC/0LDRgNGH0LXRgtCwIgogCi0jOiBhcHBseS5jOjUwMTYgYnVpbHRpbi9hZGQuYzoyOTAgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyMQotIzogYnVpbHRpbi9jb21taXQuYzoxMzA5IGJ1aWx0aW4vY291bnQtb2JqZWN0cy5jOjk4IGJ1aWx0aW4vZnNjay5jOjY5OAotIzogYnVpbHRpbi9sb2cuYzoyMDIzIGJ1aWx0aW4vbXYuYzoxMjIgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjcKLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1NworIzogYXBwbHkuYzo1MDI1IGJ1aWx0aW4vYWRkLmM6MzIzIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MCBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5OCBidWlsdGluL2ZzY2suYzo3NzQKKyM6IGJ1aWx0aW4vbG9nLmM6MjE2NiBidWlsdGluL212LmM6MTIzIGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI4CiBtc2dpZCAiYmUgdmVyYm9zZSIKIG1zZ3N0ciAi0L/QvtCy0LXRh9C1INC/0L7QtNGA0L7QsdC90L7RgdGC0LgiCiAKLSM6IGFwcGx5LmM6NTAxOAorIzogYXBwbHkuYzo1MDI3CiBtc2dpZCAidG9sZXJhdGUgaW5jb3JyZWN0bHkgZGV0ZWN0ZWQgbWlzc2luZyBuZXctbGluZSBhdCB0aGUgZW5kIG9mIGZpbGUiCiBtc2dzdHIgItC/0YDQtdC90LXQsdGA0LXQs9Cy0LDQvdC1INC90LAg0L3QtdC/0YDQsNCy0LjQu9C90L4g0LvQuNC/0YHQstCw0Ykg0LfQvdCw0Log0LfQsCDQvdC+0LIg0YDQtdC0INCyINC60YDQsNGPINC90LAg0YTQsNC50LsiCiAKLSM6IGFwcGx5LmM6NTAyMQorIzogYXBwbHkuYzo1MDMwCiBtc2dpZCAiZG8gbm90IHRydXN0IHRoZSBsaW5lIGNvdW50cyBpbiB0aGUgaHVuayBoZWFkZXJzIgogbXNnc3RyICLQsdC10Lcg0LTQvtCy0LXRgNGP0LLQsNC90LUg0L3QsCDQvdC+0LzQtdGA0LDRgtCwINC90LAg0YDQtdC00L7QstC10YLQtSDQsiDQt9Cw0LPQu9Cw0LLQvdC40YLQtSDRh9Cw0YHRgtC4INC90LAg0L/QsNGA0YfQtdGC0LDRgtCwIgogCi0jOiBhcHBseS5jOjUwMjMgYnVpbHRpbi9hbS5jOjIyMDYKKyM6IGFwcGx5LmM6NTAzMiBidWlsdGluL2FtLmM6MjI0OAogbXNnaWQgInJvb3QiCiBtc2dzdHIgItCd0JDQp9CQ0JvQndCQX9CU0JjQoNCV0JrQotCe0KDQmNCvIgogCi0jOiBhcHBseS5jOjUwMjQKKyM6IGFwcGx5LmM6NTAzMwogbXNnaWQgInByZXBlbmQgPHJvb3Q+IHRvIGFsbCBmaWxlbmFtZXMiCiBtc2dzdHIgItC00L7QsdCw0LLRj9C90LUg0L3QsCDRgtCw0LfQuCDQndCQ0KfQkNCb0J3QkF/QlNCY0KDQldCa0KLQntCg0JjQryDQutGK0Lwg0LjQvNC10L3QsNGC0LAg0L3QsCDQstGB0LjRh9C60Lgg0YTQsNC50LvQvtCy0LUiCiAKQEAgLTkxMywxNDggKzE2NDAsMTY4IEBACiBtc2dpZCAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPHJlcG8+IFstLWV4ZWMgPGNtZD5dIC0tbGlzdCIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUg0KXQoNCQ0J3QmNCb0JjQqdCVIFstLWV4ZWMg0JrQntCc0JDQndCU0JBdIC0tbGlzdCIKIAotIzogYXJjaGl2ZS5jOjM3MCBidWlsdGluL2FkZC5jOjE3NiBidWlsdGluL2FkZC5jOjUxNCBidWlsdGluL3JtLmM6Mjk4CisjOiBhcmNoaXZlLmM6MzcyIGJ1aWx0aW4vYWRkLmM6MTgxIGJ1aWx0aW4vYWRkLmM6NTg4IGJ1aWx0aW4vcm0uYzozMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlcyIKIG1zZ3N0ciAi0L/RitGC0Y/RgiDigJ4lc+KAnCDQvdC1INGB0YrQstC/0LDQtNCwINGBINC90LjQutC+0Lkg0YTQsNC50LsiCiAKLSM6IGFyY2hpdmUuYzo0NTMKKyM6IGFyY2hpdmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCByZWY6ICUuKnMiCittc2dzdHIgItGC0LDQutGK0LIg0YPQutCw0LfQsNGC0LXQuyDQvdGP0LzQsDogJS4qcyIKKworIzogYXJjaGl2ZS5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJXMiCittc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdC+INC40LzQtSDQvdCwINC+0LHQtdC60YI6IOKAniVz4oCcIgorCisjOiBhcmNoaXZlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHRyZWUgb2JqZWN0OiAlcyIKK21zZ3N0ciAi0L3QtSDQtSDQvtCx0LXQutGCLdC00YrRgNCy0L46ICVzIgorCisjOiBhcmNoaXZlLmM6NDI2Cittc2dpZCAiY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSBpcyB1bnRyYWNrZWQiCittc2dzdHIgItGC0LXQutGD0YnQsNGC0LAg0YDQsNCx0L7RgtC90LAg0LTQuNGA0LXQutGC0L7RgNC40Y8g0L3QtSDQtSDRgdC70LXQtNC10L3QsCIKKworIzogYXJjaGl2ZS5jOjQ1NwogbXNnaWQgImZtdCIKIG1zZ3N0ciAi0KTQntCg0JzQkNCiIgogCi0jOiBhcmNoaXZlLmM6NDUzCisjOiBhcmNoaXZlLmM6NDU3CiBtc2dpZCAiYXJjaGl2ZSBmb3JtYXQiCiBtc2dzdHIgItCk0J7QoNCc0JDQoiDQvdCwINCw0YDRhdC40LLQsCIKIAotIzogYXJjaGl2ZS5jOjQ1NCBidWlsdGluL2xvZy5jOjE1MzYKKyM6IGFyY2hpdmUuYzo0NTggYnVpbHRpbi9sb2cuYzoxNjUzCiBtc2dpZCAicHJlZml4IgogbXNnc3RyICLQn9Cg0JXQpNCY0JrQoSIKIAotIzogYXJjaGl2ZS5jOjQ1NQorIzogYXJjaGl2ZS5jOjQ1OQogbXNnaWQgInByZXBlbmQgcHJlZml4IHRvIGVhY2ggcGF0aG5hbWUgaW4gdGhlIGFyY2hpdmUiCiBtc2dzdHIgItC00L7QsdCw0LLRj9C90LUg0L3QsCDRgtC+0LfQuCDQn9Cg0JXQpNCY0JrQoSDQutGK0Lwg0LLRgdC10LrQuCDQv9GK0YIg0LIg0LDRgNGF0LjQstCwIgogCi0jOiBhcmNoaXZlLmM6NDU2IGJ1aWx0aW4vYmxhbWUuYzo4MjAgYnVpbHRpbi9ibGFtZS5jOjgyMSBidWlsdGluL2NvbmZpZy5jOjEyOQotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTMgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTUgYnVpbHRpbi9ncmVwLmM6ODg0Ci0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTkgYnVpbHRpbi9scy1maWxlcy5jOjU2MgotIzogYnVpbHRpbi9ub3Rlcy5jOjQxMiBidWlsdGluL25vdGVzLmM6NTc1IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTIyCi0jOiBwYXJzZS1vcHRpb25zLmg6MTYyCisjOiBhcmNoaXZlLmM6NDYwIGJ1aWx0aW4vYmxhbWUuYzo4NjEgYnVpbHRpbi9ibGFtZS5jOjg2NSBidWlsdGluL2JsYW1lLmM6ODY2CisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE3IGJ1aWx0aW4vY29uZmlnLmM6MTMwIGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTYyCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2NCBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2OCBidWlsdGluL2dyZXAuYzo4ODcKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDUgYnVpbHRpbi9scy1maWxlcy5jOjU2MCBidWlsdGluL2xzLWZpbGVzLmM6NTYzCisjOiBidWlsdGluL25vdGVzLmM6NDEyIGJ1aWx0aW4vbm90ZXMuYzo1NzggYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjMKKyM6IHBhcnNlLW9wdGlvbnMuaDoxOTAKIG1zZ2lkICJmaWxlIgogbXNnc3RyICLQpNCQ0JnQmyIKIAotIzogYXJjaGl2ZS5jOjQ1NyBidWlsdGluL2FyY2hpdmUuYzo4OQorIzogYXJjaGl2ZS5jOjQ2MSBidWlsdGluL2FyY2hpdmUuYzo5MAogbXNnaWQgIndyaXRlIHRoZSBhcmNoaXZlIHRvIHRoaXMgZmlsZSIKIG1zZ3N0ciAi0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0LDRgNGF0LjQstCwINCyINGC0L7Qt9C4INCk0JDQmdCbIgogCi0jOiBhcmNoaXZlLmM6NDU5CisjOiBhcmNoaXZlLmM6NDYzCiBtc2dpZCAicmVhZCAuZ2l0YXR0cmlidXRlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAi0LjQt9GH0LjRgtCw0L3QtSDQvdCwIOKAni5naXRhdHRyaWJ1dGVz4oCcINCyINGA0LDQsdC+0YLQvdCw0YLQsCDQtNC40YDQtdC60YLQvtGA0LjRjyIKIAotIzogYXJjaGl2ZS5jOjQ2MAorIzogYXJjaGl2ZS5jOjQ2NAogbXNnaWQgInJlcG9ydCBhcmNoaXZlZCBmaWxlcyBvbiBzdGRlcnIiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINCw0YDRhdC40LLQuNGA0LDQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSDQvdCwINGB0YLQsNC90LTQsNGA0YLQvdCw0YLQsCDQs9GA0LXRiNC60LAiCiAKLSM6IGFyY2hpdmUuYzo0NjEKKyM6IGFyY2hpdmUuYzo0NjUKIG1zZ2lkICJzdG9yZSBvbmx5IgotbXNnc3RyICLRgdCw0LzQviDRgdGK0YXRgNCw0L3QtdC90LjQtSDQsdC10Lcg0LrQvtC80L/RgNC10YHQuNGA0LDQvdC1IgorbXNnc3RyICLRgdGK0YXRgNCw0L3QtdC90LjQtSDQsdC10Lcg0LrQvtC80L/RgNC10YHQuNGA0LDQvdC1IgogCi0jOiBhcmNoaXZlLmM6NDYyCisjOiBhcmNoaXZlLmM6NDY2CiBtc2dpZCAiY29tcHJlc3MgZmFzdGVyIgogbXNnc3RyICLQsdGK0YDQt9C+INC60L7QvNC/0YDQtdGB0LjRgNCw0L3QtSIKIAotIzogYXJjaGl2ZS5jOjQ3MAorIzogYXJjaGl2ZS5jOjQ3NAogbXNnaWQgImNvbXByZXNzIGJldHRlciIKIG1zZ3N0ciAi0LTQvtCx0YDQviDQutC+0LzQv9GA0LXRgdC40YDQsNC90LUiCiAKLSM6IGFyY2hpdmUuYzo0NzMKKyM6IGFyY2hpdmUuYzo0NzcKIG1zZ2lkICJsaXN0IHN1cHBvcnRlZCBhcmNoaXZlIGZvcm1hdHMiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINGB0L/QuNGB0YrQutCwINGBINC/0L7QtNC00YrRgNC20LDQvdC40YLQtSDRhNC+0YDQvNCw0YLQuCIKIAotIzogYXJjaGl2ZS5jOjQ3NSBidWlsdGluL2FyY2hpdmUuYzo5MCBidWlsdGluL2Nsb25lLmM6MTExIGJ1aWx0aW4vY2xvbmUuYzoxMTQKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU1CisjOiBhcmNoaXZlLmM6NDc5IGJ1aWx0aW4vYXJjaGl2ZS5jOjkxIGJ1aWx0aW4vY2xvbmUuYzoxMTMgYnVpbHRpbi9jbG9uZS5jOjExNgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTEKIG1zZ2lkICJyZXBvIgogbXNnc3RyICLRhdGA0LDQvdC40LvQuNGJ0LUiCiAKLSM6IGFyY2hpdmUuYzo0NzYgYnVpbHRpbi9hcmNoaXZlLmM6OTEKKyM6IGFyY2hpdmUuYzo0ODAgYnVpbHRpbi9hcmNoaXZlLmM6OTIKIG1zZ2lkICJyZXRyaWV2ZSB0aGUgYXJjaGl2ZSBmcm9tIHJlbW90ZSByZXBvc2l0b3J5IDxyZXBvPiIKIG1zZ3N0ciAi0LjQt9GC0LXQs9C70Y/QvdC1INC90LAg0LDRgNGF0LjQstCwINC+0YIg0L7RgtC00LDQu9C10YfQtdC90L7RgtC+INCl0KDQkNCd0JjQm9CY0KnQlSIKIAotIzogYXJjaGl2ZS5jOjQ3NyBidWlsdGluL2FyY2hpdmUuYzo5MiBidWlsdGluL2RpZmZ0b29sLmM6NzE0Ci0jOiBidWlsdGluL25vdGVzLmM6NDk2CisjOiBhcmNoaXZlLmM6NDgxIGJ1aWx0aW4vYXJjaGl2ZS5jOjkzIGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTgKIG1zZ2lkICJjb21tYW5kIgogbXNnc3RyICLQutC+0LzQsNC90LTQsCIKIAotIzogYXJjaGl2ZS5jOjQ3OCBidWlsdGluL2FyY2hpdmUuYzo5MworIzogYXJjaGl2ZS5jOjQ4MiBidWlsdGluL2FyY2hpdmUuYzo5NAogbXNnaWQgInBhdGggdG8gdGhlIHJlbW90ZSBnaXQtdXBsb2FkLWFyY2hpdmUgY29tbWFuZCIKIG1zZ3N0ciAi0L/RitGCINC60YrQvCDQvtGC0LTQsNC70LXRh9C10L3QsNGC0LAg0LrQvtC80LDQvdC00LAg4oCeZ2l0LXVwbG9hZC1hcmNoaXZl4oCcIgogCi0jOiBhcmNoaXZlLmM6NDg1CisjOiBhcmNoaXZlLmM6NDg5CiBtc2dpZCAiVW5leHBlY3RlZCBvcHRpb24gLS1yZW1vdGUiCiBtc2dzdHIgItCd0LXQvtGH0LDQutCy0LDQvdCwINC+0L/RhtC40Y8g4oCeLS1yZW1vdGXigJwiCiAKLSM6IGFyY2hpdmUuYzo0ODcKKyM6IGFyY2hpdmUuYzo0OTEKIG1zZ2lkICJPcHRpb24gLS1leGVjIGNhbiBvbmx5IGJlIHVzZWQgdG9nZXRoZXIgd2l0aCAtLXJlbW90ZSIKIG1zZ3N0ciAi0J7Qv9GG0LjRj9GC0LAg4oCeLS1leGVj4oCcINC40LfQuNGB0LrQstCwIOKAni0tcmVtb3Rl4oCcIgogCi0jOiBhcmNoaXZlLmM6NDg5CisjOiBhcmNoaXZlLmM6NDkzCiBtc2dpZCAiVW5leHBlY3RlZCBvcHRpb24gLS1vdXRwdXQiCiBtc2dzdHIgItCd0LXQvtGH0LDQutCy0LDQvdCwINC+0L/RhtC40Y8g4oCeLS1vdXRwdXTigJwiCiAKLSM6IGFyY2hpdmUuYzo1MTEKKyM6IGFyY2hpdmUuYzo1MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biBhcmNoaXZlIGZvcm1hdCAnJXMnIgogbXNnc3RyICLQndC10L/QvtC30L3QsNGCINGE0L7RgNC80LDRgiDQvdCwINCw0YDRhdC40LI6IOKAniVz4oCcIgogCi0jOiBhcmNoaXZlLmM6NTE4CisjOiBhcmNoaXZlLmM6NTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFyZ3VtZW50IG5vdCBzdXBwb3J0ZWQgZm9yIGZvcm1hdCAnJXMnOiAtJWQiCiBtc2dzdHIgItCQ0YDQs9GD0LzQtdC90YLRitGCINC90LUg0YHQtSDQv9C+0LTQtNGK0YDQttCwINC30LAg0YTQvtGA0LzQsMyA0YLQsCDigJ4lc+KAnDogLSVkIgogCi0jOiBhcmNoaXZlLXRhci5jOjEyNSBhcmNoaXZlLXppcC5jOjM0NQorIzogYXJjaGl2ZS10YXIuYzoxMjUgYXJjaGl2ZS16aXAuYzozNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0cmVhbSBibG9iICVzIgogbXNnc3RyICLQvtCx0LXQutGC0YrRgi1CTE9CIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtCx0YDQsNCx0L7RgtC10L0iCiAKLSM6IGFyY2hpdmUtdGFyLmM6MjYwIGFyY2hpdmUtemlwLmM6MzYzCisjOiBhcmNoaXZlLXRhci5jOjI2NiBhcmNoaXZlLXppcC5jOjM2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnN1cHBvcnRlZCBmaWxlIG1vZGU6IDAlbyAoU0hBMTogJXMpIgogbXNnc3RyICLQvdC10L/QvtC00LTRitGA0LbQsNC90Lgg0L/RgNCw0LLQsCDQt9CwINC00L7RgdGC0YrQvyDQtNC+INGE0LDQudC7OiAwJW8gKFNIQTE6ICVzKSIKIAotIzogYXJjaGl2ZS10YXIuYzoyODcgYXJjaGl2ZS16aXAuYzozNTMKKyM6IGFyY2hpdmUtdGFyLmM6MjkzIGFyY2hpdmUtemlwLmM6MzU5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICVzIgogbXNnc3RyICLQvtCx0LXQutGC0YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogYXJjaGl2ZS10YXIuYzo0NTgKKyM6IGFyY2hpdmUtdGFyLmM6NDY1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBzdGFydCAnJXMnIGZpbHRlciIKIG1zZ3N0ciAi0YTQuNC70YLRitGA0YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRgtCw0YDRgtC40YDQsNC9IgogCi0jOiBhcmNoaXZlLXRhci5jOjQ2MQorIzogYXJjaGl2ZS10YXIuYzo0NjgKIG1zZ2lkICJ1bmFibGUgdG8gcmVkaXJlY3QgZGVzY3JpcHRvciIKIG1zZ3N0ciAi0LTQtdGB0LrRgNC40L/RgtC+0YDRitGCINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0LXQvdCw0YHQvtGH0LXQvSIKIAotIzogYXJjaGl2ZS10YXIuYzo0NjgKKyM6IGFyY2hpdmUtdGFyLmM6NDc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZmlsdGVyIHJlcG9ydGVkIGVycm9yIgogbXNnc3RyICLRhNC40LvRgtGK0YDRitGCIOKAniVz4oCcINCy0YrRgNC90LAg0LPRgNC10YjQutCwIgogCi0jOiBhcmNoaXZlLXppcC5jOjMxNAorIzogYXJjaGl2ZS16aXAuYzozMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCBpcyBub3QgdmFsaWQgVVRGLTg6ICVzIgogbXNnc3RyICLQv9GK0YLRj9GCINC90LUg0LUg0L/RgNCw0LLQuNC70L3QviDQutC+0LTQuNGA0LDQvSDQsiBVVEYtODogJXMiCiAKLSM6IGFyY2hpdmUtemlwLmM6MzE4CisjOiBhcmNoaXZlLXppcC5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoIHRvbyBsb25nICglZCBjaGFycywgU0hBMTogJXMpOiAlcyIKIG1zZ3N0ciAi0YLQstGK0YDQtNC1INC00YrQu9GK0LMg0L/RitGCICglZCDQt9C90LDQutCwLCBTSEExOiAlcyk6ICVzIgogCi0jOiBhcmNoaXZlLXppcC5jOjQ3NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNworIzogYXJjaGl2ZS16aXAuYzo0ODAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMzEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVmbGF0ZSBlcnJvciAoJWQpIgogbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INC00LXQutC+0LzQv9GA0LXRgdC40YDQsNC90LUg0YEg4oCeZGVmbGF0ZeKAnCAoJWQpIgogCi0jOiBhcmNoaXZlLXppcC5jOjYwOQorIzogYXJjaGl2ZS16aXAuYzo2MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidGltZXN0YW1wIHRvbyBsYXJnZSBmb3IgdGhpcyBzeXN0ZW06ICU8UFJJdU1BWD4iCiBtc2dzdHIgItCy0YDQtdC80LXQstCw0YLQsCDRgdGC0L7QudC90L7RgdGCINC1INGC0LLRitGA0LTQtSDQs9C+0LvRj9C80LAg0LfQsCDRgtCw0LfQuCDRgdC40YHRgtC10LzQsDogJTxQUkl1TUFYPiIKQEAgLTEwNjQsNiArMTgxMSwxMSBAQAogbXNnaWQgIiUuKnMgaXMgbm90IGEgdmFsaWQgYXR0cmlidXRlIG5hbWUiCiBtc2dzdHIgIuKAniUuKnPigJwg0LUg0L3QtdC/0YDQsNCy0LjQu9C90L4g0LjQvNC1INC30LAg0LDRgtGA0LjQsdGD0YIiCiAKKyM6IGF0dHIuYzozNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgbm90IGFsbG93ZWQ6ICVzOiVkIgorbXNnc3RyICIlczog0LrQvtC80LDQvdC00LDRgtCwINC90LUg0LUg0L/QvtC30LLQvtC70LXQvdCwOiDigJ4lczolZOKAnCIKKwogIzogYXR0ci5jOjQwOQogbXNnaWQgIiIKICJOZWdhdGl2ZSBwYXR0ZXJucyBhcmUgaWdub3JlZCBpbiBnaXQgYXR0cmlidXRlc1xuIgpAQCAtMTA3NywxNyArMTgyOSwxNyBAQAogbXNnaWQgIkJhZGx5IHF1b3RlZCBjb250ZW50IGluIGZpbGUgJyVzJzogJXMiCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvQvdC+INGG0LjRgtC40YDQsNC90L4g0YHRitC00YrRgNC20LDQvdC40LUg0LLRitCyINGE0LDQudC70LAg4oCeJXPigJw6ICVzIgogCi0jOiBiaXNlY3QuYzo2NzYKKyM6IGJpc2VjdC5jOjY3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJXZSBjYW5ub3QgYmlzZWN0IG1vcmUhXG4iCiBtc2dzdHIgItCf0L7QstC10YfQtSDQvdC1INC80L7QttC1INC00LAg0YHQtSDRgtGK0YDRgdC4INC00LLQvtC40YfQvdC+IVxuIgogCi0jOiBiaXNlY3QuYzo3MzAKKyM6IGJpc2VjdC5jOjc0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCBjb21taXQgbmFtZSAlcyIKIG1zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9C90L4g0LjQvNC1INC90LAg0L/QvtC00LDQstCw0L3QtSDigJ4lc+KAnCIKIAotIzogYmlzZWN0LmM6NzU0CisjOiBiaXNlY3QuYzo3NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBtZXJnZSBiYXNlICVzIGlzIGJhZC5cbiIKQEAgLTEwOTYsNyArMTg0OCw3IEBACiAi0J3QtdC/0YDQsNCy0LjQu9C90LAg0LHQsNC30LAg0LfQsCDRgdC70LjQstCw0L3QtTogJXMuXG4iCiAi0KHQu9C10LTQvtCy0LDRgtC10LvQvdC+INCz0YDQtdGI0LrQsNGC0LAg0LUg0LrQvtGA0LjQs9C40YDQsNC90LAg0LzQtdC20LTRgyDigJ4lc+KAnCDQuCBbJXNdLlxuIgogCi0jOiBiaXNlY3QuYzo3NTkKKyM6IGJpc2VjdC5jOjc3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIG1lcmdlIGJhc2UgJXMgaXMgbmV3LlxuIgpAQCAtMTEwNSw3ICsxODU3LDcgQEAKICLQndC+0LLQsCDQsdCw0LfQsCDQt9CwINGB0LvQuNCy0LDQvdC1OiAlcy5cbiIKICLQodCy0L7QudGB0YLQstC+0YLQviDQtSDQv9GA0L7QvNC10L3QtdC90L4g0LzQtdC20LTRgyDigJ4lc+KAnCDQuCBbJXNdLlxuIgogCi0jOiBiaXNlY3QuYzo3NjQKKyM6IGJpc2VjdC5jOjc4MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIG1lcmdlIGJhc2UgJXMgaXMgJXMuXG4iCkBAIC0xMTE0LDcgKzE4NjYsNyBAQAogItCR0LDQt9Cw0YLQsCDQt9CwINGB0LvQuNCy0LDQvdC1IOKAniVz4oCcINC1ICVzLlxuIgogItCh0LvQtdC00L7QstCw0YLQtdC70L3QviDQv9GK0YDQstC+0YLQviAlcyDQv9C+0LTQsNCy0LDQvdC1INC1INC80LXQttC00YMg4oCeJXPigJwg0LggWyVzXS5cbiIKIAotIzogYmlzZWN0LmM6NzcyCisjOiBiaXNlY3QuYzo3ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlNvbWUgJXMgcmV2cyBhcmUgbm90IGFuY2VzdG9ycyBvZiB0aGUgJXMgcmV2LlxuIgpAQCAtMTEyNSw3ICsxODc3LDcgQEAKICLQlNCy0L7QuNGH0L3QvtGC0L4g0YLRitGA0YHQtdC90LUg0YEgZ2l0IGJpc2VjdCDQvdGP0LzQsCDQtNCwINGA0LDQsdC+0YLQuCDQv9GA0LDQstC40LvQvdC+LlxuIgogItCU0LDQu9C4INC90LUg0YHRgtC1INC+0LHRitGA0LrQsNC70Lgg0YPQutCw0LfQsNGC0LXQu9C40YLQtSDigJ4lc+KAnCDQuCDigJ4lc+KAnD9cbiIKIAotIzogYmlzZWN0LmM6Nzg1CisjOiBiaXNlY3QuYzo4MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInRoZSBtZXJnZSBiYXNlIGJldHdlZW4gJXMgYW5kIFslc10gbXVzdCBiZSBza2lwcGVkLlxuIgpAQCAtMTEzNiwzNiArMTg4OCwzNiBAQAogItCd0LUg0LzQvtC20LUg0LTQsCDRgdC80LUg0YHQuNCz0YPRgNC90LgsINGH0LUg0L/RitGA0LLQvtGC0L4gJXMg0L/QvtC00LDQstCw0L3QtSDQtSDQvNC10LbQtNGDIOKAniVz4oCcINC4IOKAniVz4oCcLlxuIgogItCU0LLQvtC40YfQvdC+0YLQviDRgtGK0YDRgdC10L3QtSDQv9GA0L7QtNGK0LvQttCw0LLQsC4iCiAKLSM6IGJpc2VjdC5jOjgxOAorIzogYmlzZWN0LmM6ODQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJpc2VjdGluZzogYSBtZXJnZSBiYXNlIG11c3QgYmUgdGVzdGVkXG4iCiBtc2dzdHIgItCU0LLQvtC40YfQvdC+INGC0YrRgNGB0LXQvdC1OiDRgtGA0Y/QsdCy0LAg0LTQsCDRgdC1INC/0YDQvtCy0LXRgNC4INCx0LDQt9CwINC30LAg0YHQu9C40LLQsNC90LVcbiIKIAotIzogYmlzZWN0LmM6ODU4CisjOiBiaXNlY3QuYzo4OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSAlcyByZXZpc2lvbiBpcyBuZWVkZWQiCiBtc2dzdHIgItC90LXQvtCx0YXQvtC00LjQvNCwINC1INCy0LXRgNGB0LjRjyDigJ4lc+KAnCIKIAotIzogYmlzZWN0LmM6ODc3IGJ1aWx0aW4vbm90ZXMuYzoxNzcgYnVpbHRpbi90YWcuYzoyMzcKKyM6IGJpc2VjdC5jOjkyMCBidWlsdGluL25vdGVzLmM6MTc3IGJ1aWx0aW4vdGFnLmM6MjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZmlsZSAnJXMnIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGB0YrQt9C00LDQtNC10L0iCiAKLSM6IGJpc2VjdC5jOjkyOCBidWlsdGluL21lcmdlLmM6MTM4CisjOiBiaXNlY3QuYzo5NjYgYnVpbHRpbi9tZXJnZS5jOjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBmaWxlICclcyciCiBtc2dzdHIgItGE0LDQudC70YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogYmlzZWN0LmM6OTU4CisjOiBiaXNlY3QuYzo5OTcKIG1zZ2lkICJyZWFkaW5nIGJpc2VjdCByZWZzIGZhaWxlZCIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC/0YDQvtGH0LjRgtCw0L3QtSDQvdCwINGD0LrQsNC30LDRgtC10LvQuNGC0LUg0LfQsCDQtNCy0L7QuNGH0L3QviDRgtGK0YDRgdC10L3QtSIKIAotIzogYmlzZWN0LmM6OTc3CisjOiBiaXNlY3QuYzoxMDE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHdhcyBib3RoICVzIGFuZCAlc1xuIgogbXNnc3RyICLigJ4lc+KAnCBlINC60LDQutGC0L4g4oCeJXPigJwsINGC0LDQutCwINC4IOKAniVz4oCcXG4iCiAKLSM6IGJpc2VjdC5jOjk4NQorIzogYmlzZWN0LmM6MTAyOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gdGVzdGFibGUgY29tbWl0IGZvdW5kLlxuIgpAQCAtMTE3NCw3ICsxOTI2LDcgQEAKICLQm9C40L/RgdCy0LAg0L/QvtC00YXQvtC00Y/RidC+INC30LAg0YLQtdGB0YLQstCw0L3QtSDQv9C+0LTQsNCy0LDQvdC1LlxuIgogItCf0YDQvtCy0LXRgNC10YLQtSDQv9Cw0YDQsNC80LXRgtGA0LjRgtC1INC30LAg0L/RitGC0LjRidCw0YLQsC5cbiIKIAotIzogYmlzZWN0LmM6MTAwNAorIzogYmlzZWN0LmM6MTA1NwogIywgYy1mb3JtYXQKIG1zZ2lkICIocm91Z2hseSAlZCBzdGVwKSIKIG1zZ2lkX3BsdXJhbCAiKHJvdWdobHkgJWQgc3RlcHMpIgpAQCAtMTE4NCw1MyArMTkzNiw1MyBAQAogIy4gVFJBTlNMQVRPUlM6IHRoZSBsYXN0ICVzIHdpbGwgYmUgcmVwbGFjZWQgd2l0aCAiKHJvdWdobHkgJWQKICMuIHN0ZXBzKSIgdHJhbnNsYXRpb24uCiAjLgotIzogYmlzZWN0LmM6MTAxMAorIzogYmlzZWN0LmM6MTA2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJCaXNlY3Rpbmc6ICVkIHJldmlzaW9uIGxlZnQgdG8gdGVzdCBhZnRlciB0aGlzICVzXG4iCiBtc2dpZF9wbHVyYWwgIkJpc2VjdGluZzogJWQgcmV2aXNpb25zIGxlZnQgdG8gdGVzdCBhZnRlciB0aGlzICVzXG4iCiBtc2dzdHJbMF0gItCU0LLQvtC40YfQvdC+INGC0YrRgNGB0LXQvdC1OiDQvtGB0YLQsNCy0LAgJWQg0LLQtdGA0YHQuNGPINGB0LvQtdC0INGC0LDQt9C4ICVzXG4iCiBtc2dzdHJbMV0gItCU0LLQvtC40YfQvdC+INGC0YrRgNGB0LXQvdC1OiDQvtGB0YLQsNCy0LDRgiAlZCDQstC10YDRgdC40Lgg0YHQu9C10LQg0YLQsNC30LggJXNcbiIKIAotIzogYmxhbWUuYzoxNzg3CisjOiBibGFtZS5jOjI3MDAKIG1zZ2lkICItLWNvbnRlbnRzIGFuZCAtLXJldmVyc2UgZG8gbm90IGJsZW5kIHdlbGwuIgogbXNnc3RyICLQntC/0YbQuNC40YLQtSDigJ4tLWNvbnRlbnRz4oCcINC4IOKAni0tcmV2ZXJzZeKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCIKIAotIzogYmxhbWUuYzoxODAxCisjOiBibGFtZS5jOjI3MTQKIG1zZ2lkICJjYW5ub3QgdXNlIC0tY29udGVudHMgd2l0aCBmaW5hbCBjb21taXQgb2JqZWN0IG5hbWUiCiBtc2dzdHIgItCe0L/RhtC40Y/RgtCwIOKAni0tY29udGVudHPigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBINC40LzQtSDQvdCwINC+0LHQtdC60YIg0L7RgiDQutGA0LDQudC90L4g0L/QvtC00LDQstCw0L3QtSIKIAotIzogYmxhbWUuYzoxODIyCisjOiBibGFtZS5jOjI3MzUKIG1zZ2lkICItLXJldmVyc2UgYW5kIC0tZmlyc3QtcGFyZW50IHRvZ2V0aGVyIHJlcXVpcmUgc3BlY2lmaWVkIGxhdGVzdCBjb21taXQiCiBtc2dzdHIgIiIKICLQldC00L3QvtCy0YDQtdC80LXQvdC90L7RgtC+INC30LDQtNCw0LLQsNC90LUg0L3QsCDQvtC/0YbQuNC40YLQtSDigJ4tLXJldmVyc2XigJwg0Lgg4oCeLS1maXJzdC1wYXJlbnTigJwg0LjQt9C40YHQutCy0LAgIgogItGD0LrQsNC30LLQsNC90LXRgtC+INC90LAg0LrRgNCw0LnQvdC+INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGJsYW1lLmM6MTgzMSBidW5kbGUuYzoxNjIgcmVmLWZpbHRlci5jOjIwNDYgc2VxdWVuY2VyLmM6MTk2MwotIzogc2VxdWVuY2VyLmM6NDAwMiBidWlsdGluL2NvbW1pdC5jOjEwMDEgYnVpbHRpbi9sb2cuYzozNzcgYnVpbHRpbi9sb2cuYzo5MzIKLSM6IGJ1aWx0aW4vbG9nLmM6MTQwNyBidWlsdGluL2xvZy5jOjE3ODMgYnVpbHRpbi9sb2cuYzoyMDcyIGJ1aWx0aW4vbWVyZ2UuYzo0MDYKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzNyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNTIKKyM6IGJsYW1lLmM6Mjc0NCBidW5kbGUuYzoxNjcgcmVmLWZpbHRlci5jOjIyMDMgcmVtb3RlLmM6MTk0MiBzZXF1ZW5jZXIuYzoyMDA2CisjOiBzZXF1ZW5jZXIuYzo0MzU4IHN1Ym1vZHVsZS5jOjg0NyBidWlsdGluL2NvbW1pdC5jOjEwNDUgYnVpbHRpbi9sb2cuYzozODgKKyM6IGJ1aWx0aW4vbG9nLmM6OTkxIGJ1aWx0aW4vbG9nLmM6MTUyMCBidWlsdGluL2xvZy5jOjE5MjUgYnVpbHRpbi9sb2cuYzoyMjE1CisjOiBidWlsdGluL21lcmdlLmM6NDEyIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTAKICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxOTIKIG1zZ2lkICJyZXZpc2lvbiB3YWxrIHNldHVwIGZhaWxlZCIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC90LDRgdGC0YDQvtC50LLQsNC90LUg0L3QsCDQvtCx0YXQvtC20LTQsNC90LXRgtC+INC90LAg0LLQtdGA0YHQuNC40YLQtSIKIAotIzogYmxhbWUuYzoxODQ5CisjOiBibGFtZS5jOjI3NjIKIG1zZ2lkICIiCiAiLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IHRvZ2V0aGVyIHJlcXVpcmUgcmFuZ2UgYWxvbmcgZmlyc3QtcGFyZW50IGNoYWluIgogbXNnc3RyICIiCiAi0JXQtNC90L7QstGA0LXQvNC10L3QvdC+0YLQviDQt9Cw0LTQsNCy0LDQvdC1INC90LAg0L7Qv9GG0LjQuNGC0LUg4oCeLS1yZXZlcnNl4oCcINC4IOKAni0tZmlyc3QtcGFyZW504oCcINC40LfQuNGB0LrQstCwICIKICLRg9C60LDQt9Cy0LDQvdC10YLQviDQvdCwINC00LjQsNC/0LDQt9C+0L0g0L/QviDQstC10YDQuNCz0LDRgtCwINC90LAg0L/RitGA0LLQuNGC0LUg0L3QsNGB0LvQtdC00L3QuNGG0LgiCiAKLSM6IGJsYW1lLmM6MTg2MAorIzogYmxhbWUuYzoyNzczCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggcGF0aCAlcyBpbiAlcyIKIG1zZ3N0ciAi0L3Rj9C80LAg0L/RitGCINC90LAg0LjQvNC1IOKAniVz4oCcINCyIOKAniVz4oCcIgogCi0jOiBibGFtZS5jOjE4NzEKKyM6IGJsYW1lLmM6Mjc4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBibG9iICVzIGZvciBwYXRoICVzIgogbXNnc3RyICLQvtCx0LXQutGC0YrRgi1CTE9CIOKAniVz4oCcINCyINC/0YrRgtGPICVzINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0L7Rh9C10YLQtdC9IgogCi0jOiBicmFuY2guYzo1MgorIzogYnJhbmNoLmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTI0Myw4OCArMTk5NSw4OCBAQAogItC40L3RhNC+0YDQvNCw0YbQuNGP0YLQsCDQt9CwINGB0LvQtdC00LXQvdC40Y8g0LrQu9C+0L0g0YfRgNC10Lc6XG4iCiAiZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10bz0lcyVzJXMiCiAKLSM6IGJyYW5jaC5jOjY2CisjOiBicmFuY2guYzo2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3Qgc2V0dGluZyBicmFuY2ggJXMgYXMgaXRzIG93biB1cHN0cmVhbS4iCiBtc2dzdHIgIiIKICLQmtC70L7QvdGK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LvRg9C20Lgg0LrQsNGC0L4g0LjQt9GC0L7Rh9C90LjQuiDQt9CwINGB0L7QsdGB0YLQstC10L3QsNGC0LAg0YHQuCDRgdC40L3RhdGA0L7QvdC40LfQsNGG0LjRjy4iCiAKLSM6IGJyYW5jaC5jOjkyCisjOiBicmFuY2guYzo5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIGJyYW5jaCAnJXMnIGZyb20gJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgIiIKICLQmtC70L7QvdGK0YIg4oCeJXPigJwg0YnQtSDRgdC70LXQtNC4INC+0YLQtNCw0LvQtdGH0LXQvdC40Y8g0LrQu9C+0L0g4oCeJXPigJwg0L7RgiDRhdGA0LDQvdC40LvQuNGJ0LXRgtC+IOKAniVz4oCcINGH0YDQtdC3ICIKICLQv9GA0LXQsdCw0LfQuNGA0LDQvdC1LiIKIAotIzogYnJhbmNoLmM6OTMKKyM6IGJyYW5jaC5jOjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgYnJhbmNoICclcycgZnJvbSAnJXMnLiIKIG1zZ3N0ciAi0JrQu9C+0L3RitGCIOKAniVz4oCcINGJ0LUg0YHQu9C10LTQuCDQvtGC0LTQsNC70LXRh9C10L3QuNGPINC60LvQvtC9IOKAniVz4oCcINC+0YIg0YXRgNCw0L3QuNC70LjRidC10YLQviDigJ4lc+KAnC4iCiAKLSM6IGJyYW5jaC5jOjk3CisjOiBicmFuY2guYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycgYnkgcmViYXNpbmcuIgogbXNnc3RyICLQmtC70L7QvdGK0YIg4oCeJXPigJwg0YnQtSDRgdC70LXQtNC4INC70L7QutCw0LvQvdC40Y8g0LrQu9C+0L0g4oCeJXPigJwg0YfRgNC10Lcg0L/RgNC10LHQsNC30LjRgNCw0L3QtS4iCiAKLSM6IGJyYW5jaC5jOjk4CisjOiBicmFuY2guYzo5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycuIgogbXNnc3RyICLQmtC70L7QvdGK0YIg4oCeJXPigJwg0YnQtSDRgdC70LXQtNC4INC70L7QutCw0LvQvdC40Y8g0LrQu9C+0L0g4oCeJXPigJwuIgogCi0jOiBicmFuY2guYzoxMDMKKyM6IGJyYW5jaC5jOjEwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIHJlZiAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAi0JrQu9C+0L3RitGCIOKAniVz4oCcINGJ0LUg0YHQu9C10LTQuCDQvtGC0LTQsNC70LXRh9C10L3QuNGPINGD0LrQsNC30LDRgtC10Lsg4oCeJXPigJwg0YfRgNC10Lcg0L/RgNC10LHQsNC30LjRgNCw0L3QtS4iCiAKLSM6IGJyYW5jaC5jOjEwNAorIzogYnJhbmNoLmM6MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgcmVmICclcycuIgogbXNnc3RyICLQmtC70L7QvdGK0YIg4oCeJXPigJwg0YnQtSDRgdC70LXQtNC4INC+0YLQtNCw0LvQtdGH0LXQvdC40Y8g0YPQutCw0LfQsNGC0LXQuyDigJ4lc+KAnC4iCiAKLSM6IGJyYW5jaC5jOjEwOAorIzogYnJhbmNoLmM6MTA5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCByZWYgJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgItCa0LvQvtC90YrRgiDigJ4lc+KAnCDRidC1INGB0LvQtdC00Lgg0LvQvtC60LDQu9C90LjRjyDRg9C60LDQt9Cw0YLQtdC7IOKAniVz4oCcINGH0YDQtdC3INC/0YDQtdCx0LDQt9C40YDQsNC90LUuIgogCi0jOiBicmFuY2guYzoxMDkKKyM6IGJyYW5jaC5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycuIgogbXNnc3RyICLQmtC70L7QvdGK0YIg4oCeJXPigJwg0YnQtSDRgdC70LXQtNC4INC70L7QutCw0LvQvdC40Y8g0YPQutCw0LfQsNGC0LXQuyDigJ4lc+KAnC4iCiAKLSM6IGJyYW5jaC5jOjExOAorIzogYnJhbmNoLmM6MTE5CiBtc2dpZCAiVW5hYmxlIHRvIHdyaXRlIHVwc3RyZWFtIGJyYW5jaCBjb25maWd1cmF0aW9uIgogbXNnc3RyICLQndCw0YHRgtGA0L7QudC60LjRgtC1INC30LAg0YHQu9C10LTQtdC90LjRjyDQutC70L7QvSDQvdC1INC80L7Qs9Cw0YIg0LTQsCDQsdGK0LTQsNGCINC30LDQv9C40YHQsNC90LgiCiAKLSM6IGJyYW5jaC5jOjE1NQorIzogYnJhbmNoLmM6MTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCB0cmFja2luZzogYW1iaWd1b3VzIGluZm9ybWF0aW9uIGZvciByZWYgJXMiCiBtc2dzdHIgItCd0Y/QvNCwINGB0LvQtdC00LXQvdC1OiDQuNC90YTQvtGA0LzQsNGG0LjRj9GC0LAg0LfQsCDRg9C60LDQt9Cw0YLQtdC70Y8g4oCeJXPigJwg0L3QtSDQtSDQtdC00L3QvtC30L3QsNGH0L3QsCIKIAotIzogYnJhbmNoLmM6MTg4CisjOiBicmFuY2guYzoxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBicmFuY2ggbmFtZS4iCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LUg0L/QvtC30LLQvtC70LXQvdC+INC40LzQtSDQt9CwINC60LvQvtC9LiIKIAotIzogYnJhbmNoLmM6MjA3CisjOiBicmFuY2guYzoyMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQSBicmFuY2ggbmFtZWQgJyVzJyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgItCS0LXRh9C1INGB0YrRidC10YHRgtCy0YPQstCwINC60LvQvtC9INGBINC40LzQtSDigJ4lc+KAnC4iCiAKLSM6IGJyYW5jaC5jOjIxMgorIzogYnJhbmNoLmM6MjEzCiBtc2dpZCAiQ2Fubm90IGZvcmNlIHVwZGF0ZSB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICLQotC10LrRg9GJ0LjRj9GCINC60LvQvtC9INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0LjQvdGD0LTQuNGC0LXQu9C90L4g0L7QsdC90L7QstC10L0uIgogCi0jOiBicmFuY2guYzoyMzIKKyM6IGJyYW5jaC5jOjIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgc2V0dXAgdHJhY2tpbmcgaW5mb3JtYXRpb247IHN0YXJ0aW5nIHBvaW50ICclcycgaXMgbm90IGEgYnJhbmNoLiIKIG1zZ3N0ciAi0JfQsNC00LDQtNC10L3QuNGC0LUg0L3QsNGB0YLRgNC+0LnQutC4INC30LAg0YHQu9C10LTQtdC90LXRgtC+INGB0LAg0LPRgNC10YjQvdC4IOKAlCDQvdCw0YfQsNC70L7RgtC+IOKAniVz4oCcINC90LUg0LUg0LrQu9C+0L0uIgogCi0jOiBicmFuY2guYzoyMzQKKyM6IGJyYW5jaC5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgcmVxdWVzdGVkIHVwc3RyZWFtIGJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICLQt9Cw0Y/QstC10L3QuNGP0YIg0L7RgtC00LDQu9C10YfQtdC9INC60LvQvtC9IOKAniVz4oCcINC90LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LAiCiAKLSM6IGJyYW5jaC5jOjIzNgorIzogYnJhbmNoLmM6MjM3CiBtc2dpZCAiIgogIlxuIgogIklmIHlvdSBhcmUgcGxhbm5pbmcgb24gYmFzaW5nIHlvdXIgd29yayBvbiBhbiB1cHN0cmVhbVxuIgpAQCAtMTM0MywyNyArMjA5NSwyNyBAQAogItC80L7QttC1INC00LAg0LjQt9C/0L7Qu9C30LLQsNGC0LUg4oCeZ2l0IHB1c2ggLXXigJwsINC30LAg0LTQsCDQvdCw0YHRgtGA0L7QuNGC0LUg0LrRitC8INC60L7QuSDQutC70L7QvSDQtNCwINGB0LUgIgogItC40LfRgtC70LDRgdC60LLQsC4iCiAKLSM6IGJyYW5jaC5jOjI3OQorIzogYnJhbmNoLmM6MjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnLiIKIG1zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9C90L4g0LjQvNC1INC90LAg0L7QsdC10LrRgjog4oCeJXPigJwiCiAKLSM6IGJyYW5jaC5jOjI5OQorIzogYnJhbmNoLmM6MzAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFtYmlndW91cyBvYmplY3QgbmFtZTogJyVzJy4iCiBtc2dzdHIgItCY0LzQtdGC0L4g0L3QsCDQvtCx0LXQutGCINC90LUg0LUg0LXQtNC90L7Qt9C90LDRh9C90L46IOKAniVz4oCcIgogCi0jOiBicmFuY2guYzozMDQKKyM6IGJyYW5jaC5jOjMwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCBicmFuY2ggcG9pbnQ6ICclcycuIgogbXNnc3RyICLQndC10L/RgNCw0LLQuNC70L3QviDQvNGP0YHRgtC+INC30LAg0L3QsNGH0LDQu9C+INC90LAg0LrQu9C+0L06IOKAniVz4oCcIgogCi0jOiBicmFuY2guYzozNTgKKyM6IGJyYW5jaC5jOjM2NAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFscmVhZHkgY2hlY2tlZCBvdXQgYXQgJyVzJyIKIG1zZ3N0ciAi4oCeJXPigJwg0LLQtdGH0LUg0LUg0LjQt9GC0LXQs9C70LXQvSDQsiDigJ4lc+KAnCIKIAotIzogYnJhbmNoLmM6MzgxCisjOiBicmFuY2guYzozODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSEVBRCBvZiB3b3JraW5nIHRyZWUgJXMgaXMgbm90IHVwZGF0ZWQiCiBtc2dzdHIgItCj0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviDigJ4lc+KAnCDQvdC1INC1INC+0LHQvdC+0LLQtdC9IgpAQCAtMTM3OCw4NyArMjEzMCw5MCBAQAogbXNnaWQgInVucmVjb2duaXplZCBoZWFkZXI6ICVzJXMgKCVkKSIKIG1zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgtCwINC30LDQs9C70LDQstC90LAg0YfQsNGB0YI6ICVzJXMgKCVkKSIKIAotIzogYnVuZGxlLmM6OTAgcmVyZXJlLmM6NDgwIHJlcmVyZS5jOjY5MCBzZXF1ZW5jZXIuYzoyMTgyIHNlcXVlbmNlci5jOjI3MjIKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Nzc0CisjOiBidW5kbGUuYzo5MCByZXJlcmUuYzo0ODAgcmVyZXJlLmM6NjkwIHNlcXVlbmNlci5jOjIyNTggc2VxdWVuY2VyLmM6MzAxNgorIzogYnVpbHRpbi9jb21taXQuYzo4MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7RgtCy0L7RgNC4IgogCi0jOiBidW5kbGUuYzoxNDEKKyM6IGJ1bmRsZS5jOjE0MwogbXNnaWQgIlJlcG9zaXRvcnkgbGFja3MgdGhlc2UgcHJlcmVxdWlzaXRlIGNvbW1pdHM6IgogbXNnc3RyICLQkiDRhdGA0LDQvdC40LvQuNGJ0LXRgtC+INC70LjQv9GB0LLQsNGCINGB0LvQtdC00L3QuNGC0LUg0L3QtdC+0LHRhdC+0LTQuNC80Lgg0L/QvtC00LDQstCw0L3QuNGPOiIKIAotIzogYnVuZGxlLmM6MTkyCisjOiBidW5kbGUuYzoxNDYKK21zZ2lkICJuZWVkIGEgcmVwb3NpdG9yeSB0byB2ZXJpZnkgYSBidW5kbGUiCittc2dzdHIgItC30LAg0L/RgNC+0LLQtdGA0LrQsNGC0LAg0L3QsCDQv9GA0LDRgtC60LAg0LUg0L3QtdC+0LHRhdC+0LTQuNC80L4g0YXRgNCw0L3QuNC70LjRidC1IgorCisjOiBidW5kbGUuYzoxOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIGJ1bmRsZSBjb250YWlucyB0aGlzIHJlZjoiCiBtc2dpZF9wbHVyYWwgIlRoZSBidW5kbGUgY29udGFpbnMgdGhlc2UgJWQgcmVmczoiCiBtc2dzdHJbMF0gItCf0YDQsNGC0LrQsNGC0LAg0YHRitC00YrRgNC20LAg0YHQu9C10LTQvdC40Y8g0YPQutCw0LfQsNGC0LXQuzoiCiBtc2dzdHJbMV0gItCf0YDQsNGC0LrQsNGC0LAg0YHRitC00YrRgNC20LAg0YHQu9C10LTQvdC40YLQtSAlZCDRg9C60LDQt9Cw0YLQtdC70Lg6IgogCi0jOiBidW5kbGUuYzoxOTkKKyM6IGJ1bmRsZS5jOjIwNAogbXNnaWQgIlRoZSBidW5kbGUgcmVjb3JkcyBhIGNvbXBsZXRlIGhpc3RvcnkuIgogbXNnc3RyICLQn9GA0LDRgtC60LDRgtCwINGB0YrQtNGK0YDQttCwINC/0YrQu9C90LAg0LjRgdGC0L7RgNC40Y8uIgogCi0jOiBidW5kbGUuYzoyMDEKKyM6IGJ1bmRsZS5jOjIwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoaXMgcmVmOiIKIG1zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSByZXF1aXJlcyB0aGVzZSAlZCByZWZzOiIKIG1zZ3N0clswXSAi0J/RgNCw0YLQutCw0YLQsCDQuNC30LjRgdC60LLQsCDRgdC70LXQtNC90LjRjyDRg9C60LDQt9Cw0YLQtdC7OiIKIG1zZ3N0clsxXSAi0J/RgNCw0YLQutCw0YLQsCDQuNC30LjRgdC60LLQsCDRgdC70LXQtNC90LjRgtC1ICVkINGD0LrQsNC30LDRgtC10LvQuDoiCiAKLSM6IGJ1bmRsZS5jOjI2NworIzogYnVuZGxlLmM6MjczCiBtc2dpZCAidW5hYmxlIHRvIGR1cCBidW5kbGUgZGVzY3JpcHRvciIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC00YPQsdC70LjRgNCw0L3QtSDQvdCwINC00LXRgdC60YDQuNC/0YLQvtGA0LAg0L3QsCDQv9GA0LDRgtC60LDRgtCwINGBIOKAnmR1cOKAnCIKIAotIzogYnVuZGxlLmM6Mjc0CisjOiBidW5kbGUuYzoyODAKIG1zZ2lkICJDb3VsZCBub3Qgc3Bhd24gcGFjay1vYmplY3RzIgogbXNnc3RyICLQmtC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0IHBhY2stb2JqZWN0c+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRgtCw0YDRgtC40YDQsNC90LAiCiAKLSM6IGJ1bmRsZS5jOjI4NQorIzogYnVuZGxlLmM6MjkxCiBtc2dpZCAicGFjay1vYmplY3RzIGRpZWQiCiBtc2dzdHIgItCa0L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgcGFjay1vYmplY3Rz4oCcINC90LUg0LfQsNCy0YrRgNGI0Lgg0YPRgdC/0LXRiNC90L4iCiAKLSM6IGJ1bmRsZS5jOjMyNworIzogYnVuZGxlLmM6MzMzCiBtc2dpZCAicmV2LWxpc3QgZGllZCIKIG1zZ3N0ciAi0JrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCByZXYtbGlzdOKAnCDQvdC1INC30LDQstGK0YDRiNC4INGD0YHQv9C10YjQvdC+IgogCi0jOiBidW5kbGUuYzozNzYKKyM6IGJ1bmRsZS5jOjM4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWYgJyVzJyBpcyBleGNsdWRlZCBieSB0aGUgcmV2LWxpc3Qgb3B0aW9ucyIKIG1zZ3N0ciAiIgogItGD0LrQsNC30LDRgtC10LvRj9GCIOKAniVz4oCcINC90LUg0LUg0LHQuNC7INCy0LrQu9GO0YfQtdC9INC/0L7RgNCw0LTQuCDQvtC/0YbQuNC40YLQtSDQt9Cw0LTQsNC00LXQvdC4INC90LAg4oCeZ2l0IHJldi1saXN04oCcIgogCi0jOiBidW5kbGUuYzo0NTYgYnVpbHRpbi9sb2cuYzoxOTIgYnVpbHRpbi9sb2cuYzoxNjg4IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDQKKyM6IGJ1bmRsZS5jOjQ2MSBidWlsdGluL2xvZy5jOjIwMyBidWlsdGluL2xvZy5jOjE4MTQgYnVpbHRpbi9zaG9ydGxvZy5jOjMwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgYXJndW1lbnQ6ICVzIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGCINCw0YDQs9GD0LzQtdC90YI6ICVzIgogCi0jOiBidW5kbGUuYzo0NjQKKyM6IGJ1bmRsZS5jOjQ2OQogbXNnaWQgIlJlZnVzaW5nIHRvIGNyZWF0ZSBlbXB0eSBidW5kbGUuIgogbXNnc3RyICLQodGK0LfQtNCw0LLQsNC90LXRgtC+INC90LAg0L/RgNCw0LfQvdCwINC/0YDQsNGC0LrQsCDQtSDQvdC10LLRitC30LzQvtC20L3Qvi4iCiAKLSM6IGJ1bmRsZS5jOjQ3NAorIzogYnVuZGxlLmM6NDc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjcmVhdGUgJyVzJyIKIG1zZ3N0ciAi0KTQsNC50LvRitGCIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDRgdGK0LfQtNCw0LTQtdC9IgogCi0jOiBidW5kbGUuYzo0OTgKKyM6IGJ1bmRsZS5jOjUwNAogbXNnaWQgImluZGV4LXBhY2sgZGllZCIKIG1zZ3N0ciAi0JrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCBpbmRleC1wYWNr4oCcINC90LUg0LfQsNCy0YrRgNGI0Lgg0YPRgdC/0LXRiNC90L4iCiAKLSM6IGNvbG9yLmM6Mjk2CisjOiBjb2xvci5jOjMyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbG9yIHZhbHVlOiAlLipzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QsCDRgdGC0L7QudC90L7RgdGCINC30LAg0YbQstGP0YI6ICUuKnMiCiAKLSM6IGNvbW1pdC5jOjUwIHNlcXVlbmNlci5jOjI1MjggYnVpbHRpbi9hbS5jOjM3MCBidWlsdGluL2FtLmM6NDE0Ci0jOiBidWlsdGluL2FtLmM6MTM5MCBidWlsdGluL2FtLmM6MjAyNSBidWlsdGluL3JlcGxhY2UuYzozNzYKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ0OAorIzogY29tbWl0LmM6NTEgc2VxdWVuY2VyLmM6MjcxOSBidWlsdGluL2FtLmM6MzU5IGJ1aWx0aW4vYW0uYzo0MDMKKyM6IGJ1aWx0aW4vYW0uYzoxMzcxIGJ1aWx0aW4vYW0uYzoyMDE0IGJ1aWx0aW4vcmVwbGFjZS5jOjQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJXMiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INCw0L3QsNC70LjQt9C40YDQsCIKIAotIzogY29tbWl0LmM6NTIKKyM6IGNvbW1pdC5jOjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzICVzIGlzIG5vdCBhIGNvbW1pdCEiCiBtc2dzdHIgIiVzICVzINC90LUg0LUg0L/QvtC00LDQstCw0L3QtSEiCkBAIC0xNDgyLDMzICsyMjM3LDMzIEBACiAiXG4iCiAiICAgIGdpdCByZXBsYWNlIC0tY29udmVydC1ncmFmdC1maWxlXG4iCiAiXG4iCi0i0JfQsCDQtNCwINC40LfQutC70Y7Rh9C40YLQtSDRgtC+0LLQsCDRgdGK0L7QsdGJ0LXQvdC40LUsINC/0L7Qu9C30LLQsNC50YLQtSDQutC+0LzQsNC90LTQsNGC0LA6XG4iCisi0JfQsCDQtNCwINC40LfQutC70Y7Rh9C40YLQtSDRgtC+0LLQsCDRgdGK0L7QsdGJ0LXQvdC40LUsINC40LfQv9GK0LvQvdC10YLQtTpcbiIKICJcbiIKICIgICAgZ2l0IGNvbmZpZyBhZHZpY2UuZ3JhZnRGaWxlRGVwcmVjYXRlZCBmYWxzZSIKIAotIzogY29tbWl0LmM6MTExNQorIzogY29tbWl0LmM6MTE1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaGFzIGFuIHVudHJ1c3RlZCBHUEcgc2lnbmF0dXJlLCBhbGxlZ2VkbHkgYnkgJXMuIgogbXNnc3RyICIiCiAi0J/QvtC00LDQstCw0L3QtdGC0L4g4oCeJXPigJwg0LUg0YEg0L3QtdC00L7QstC10YDQtdC9INC/0L7QtNC/0LjRgSDQvtGCIEdQRywg0LrQvtC50YLQviDRgtCy0YrRgNC00LgsINGH0LUg0LUg0L3QsCDigJ4lc+KAnC4iCiAKLSM6IGNvbW1pdC5jOjExMTgKKyM6IGNvbW1pdC5jOjExNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29tbWl0ICVzIGhhcyBhIGJhZCBHUEcgc2lnbmF0dXJlIGFsbGVnZWRseSBieSAlcy4iCiBtc2dzdHIgIiIKICLQn9C+0LTQsNCy0LDQvdC10YLQviDigJ4lc+KAnCDQtSDRgSDQvdC10L/RgNCw0LLQuNC70LXQvSDQv9C+0LTQv9C40YEg0L7RgiBHUEcsINC60L7QudGC0L4g0YLQstGK0YDQtNC4LCDRh9C1INC1INC90LAg4oCeJXPigJwuIgogCi0jOiBjb21taXQuYzoxMTIxCisjOiBjb21taXQuYzoxMTYwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIGEgR1BHIHNpZ25hdHVyZS4iCiBtc2dzdHIgItCf0L7QtNCw0LLQsNC90LXRgtC+IOKAniVz4oCcINC1INCx0LXQtyDQv9C+0LTQv9C40YEg0L7RgiBHUEcuIgogCi0jOiBjb21taXQuYzoxMTI0CisjOiBjb21taXQuYzoxMTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBoYXMgYSBnb29kIEdQRyBzaWduYXR1cmUgYnkgJXNcbiIKIG1zZ3N0ciAi0J/QvtC00LDQstCw0L3QtdGC0L4g4oCeJXPigJwg0LUg0YEg0LrQvtGA0LXQutGC0LXQvSDQv9C+0LTQv9C40YEg0L7RgiBHUEcg0L3QsCDigJ4lc+KAnC5cbiIKIAotIzogY29tbWl0LmM6MTM3OAorIzogY29tbWl0LmM6MTQxNwogbXNnaWQgIiIKICJXYXJuaW5nOiBjb21taXQgbWVzc2FnZSBkaWQgbm90IGNvbmZvcm0gdG8gVVRGLTguXG4iCiAiWW91IG1heSB3YW50IHRvIGFtZW5kIGl0IGFmdGVyIGZpeGluZyB0aGUgbWVzc2FnZSwgb3Igc2V0IHRoZSBjb25maWdcbiIKQEAgLTE1MTgsOTUgKzIyNzMsMjgxIEBACiAi0JzQvtC20LUg0LTQsCDQv9C+0L/RgNCw0LLQuNGC0LUg0L/QvtC00LDQstCw0L3QtdGC0L4g0LfQsNC10LTQvdC+INGB0YrRgSDRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC40LvQuCDQvNC+0LbQtSDQtNCwXG4iCiAi0LfQsNC00LDQtNC10YLQtSDQv9C+0LvQt9Cy0LDQvdC+0YLQviDQutC+0LTQuNGA0LDQvdC1INCyINC90LDRgdGC0YDQvtC50LrQsNGC0LAg4oCeaTE4bi5jb21taXRlbmNvZGluZ+KAnC5cbiIKIAotIzogY29tbWl0LWdyYXBoLmM6MTA4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdyYXBoIGZpbGUgJXMgaXMgdG9vIHNtYWxsIgotbXNnc3RyICLRhNCw0LnQu9GK0YIg0YEg0LPRgNCwzIDRhNCwINC90LAg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDigJ4lc+KAnCDQtSDRgtCy0YrRgNC00LUg0LzQsNC70YrQuiIKLQotIzogY29tbWl0LWdyYXBoLmM6MTE1Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCi1tc2dzdHIgItC+0YLQv9C10YfQsNGC0YrQutGK0YIg0L3QsCDQs9GA0LDMgNGE0LAg0YEg0L/QvtC00LDQstCw0L3QuNGP0YLQsCAlWCDQvdC1INGB0YrQstC/0LDQtNCwINGBICVYIgotCiAjOiBjb21taXQtZ3JhcGguYzoxMjIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ3JhcGggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgotbXNnc3RyICLQstC10YDRgdC40Y/RgtCwINC90LAg0LPRgNCwzIDRhNCwINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAgJVgg0L3QtSDRgdGK0LLQv9Cw0LTQsCDRgSAlWCIKLQotIzogY29tbWl0LWdyYXBoLmM6MTI5Ci0jLCBjLWZvcm1hdAotbXNnaWQgImhhc2ggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgotbXNnc3RyICLQstC10YDRgdC40Y/RgtCwINC90LAg0L7RgtC/0LXRh9Cw0YLRitC60LAg0L3QsCDQs9GA0LDMgNGE0LAg0YEg0L/QvtC00LDQstCw0L3QuNGP0YLQsCAlWCDQvdC1INGB0YrQstC/0LDQtNCwINGBICVYIgotCi0jOiBjb21taXQtZ3JhcGguYzoxNTMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW1wcm9wZXIgY2h1bmsgb2Zmc2V0ICUwOHglMDh4IgotbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QviDQvtGC0LzQtdGB0YLQstCw0L3QtSDQvdCwINC+0YLQutGK0YE6ICUwOHglMDh4IgorbXNnaWQgImNvbW1pdC1ncmFwaCBmaWxlIGlzIHRvbyBzbWFsbCIKK21zZ3N0ciAi0YTQsNC50LvRitGCINGBINCz0YDQsMyA0YTQsCDQvdCwINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0LUg0YLQstGK0YDQtNC1INC80LDQu9GK0LoiCiAKICM6IGNvbW1pdC1ncmFwaC5jOjE4OQogIywgYy1mb3JtYXQKLW1zZ2lkICJjaHVuayBpZCAlMDh4IGFwcGVhcnMgbXVsdGlwbGUgdGltZXMiCittc2dpZCAiY29tbWl0LWdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCittc2dzdHIgItC+0YLQv9C10YfQsNGC0YrQutGK0YIg0L3QsCDQs9GA0LDMgNGE0LAg0YEg0L/QvtC00LDQstCw0L3QuNGP0YLQsCAlWCDQvdC1INGB0YrQstC/0LDQtNCwINGBICVYIgorCisjOiBjb21taXQtZ3JhcGguYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKK21zZ3N0ciAi0LLQtdGA0YHQuNGP0YLQsCDQvdCwINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwICVYINC90LUg0YHRitCy0L/QsNC00LAg0YEgJVgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCittc2dzdHIgItCy0LXRgNGB0LjRj9GC0LAg0L3QsCDQutC+0L3RgtGA0L7Qu9C90LDRgtCwINGB0YPQvNCwINC90LAg0LPRgNCwzIDRhNCwINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAgJVgg0L3QtSDRgdGK0LLQv9Cw0LTQsCDRgSAlWCIKKworIzogY29tbWl0LWdyYXBoLmM6MjI2Cittc2dpZCAiY29tbWl0LWdyYXBoIGNodW5rIGxvb2t1cCB0YWJsZSBlbnRyeSBtaXNzaW5nOyBmaWxlIG1heSBiZSBpbmNvbXBsZXRlIgorbXNnc3RyICIiCisi0LfQsNC/0LjRgdGK0YIg0LIg0YLQsNCx0LvQuNGG0LDRgtCwINC30LAg0L7RgtC60YrRgdC4INC70LjQv9GB0LLQsCwg0YTQsNC50LvRitGCINC30LAg0LPRgNCwzIDRhNCwINC80L7QttC1INC00LAg0LUg0L3QtdC/0YrQu9C10L0iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaW1wcm9wZXIgY2h1bmsgb2Zmc2V0ICUwOHglMDh4IgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QviDQvtGC0LzQtdGB0YLQstCw0L3QtSDQvdCwINC+0YLQutGK0YE6ICUwOHglMDh4IgorCisjOiBjb21taXQtZ3JhcGguYzoyODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGNodW5rIGlkICUwOHggYXBwZWFycyBtdWx0aXBsZSB0aW1lcyIKIG1zZ3N0ciAi0L7RgtC60YrRgdGK0YIgJTA4eCDRgdC1INGP0LLRj9Cy0LAg0LzQvdC+0LPQvtC60YDQsNGC0L3QviIKIAotIzogY29tbWl0LWdyYXBoLmM6MzA4CisjOiBjb21taXQtZ3JhcGguYzozNDMKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzIG5vIGJhc2UgZ3JhcGhzIGNodW5rIgorbXNnc3RyICLQsdCw0LfQvtCy0LjRj9GCINC+0YLQutGK0YEg0LvQuNC/0YHQstCwINCyINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwIgorCisjOiBjb21taXQtZ3JhcGguYzozNTMKK21zZ2lkICJjb21taXQtZ3JhcGggY2hhaW4gZG9lcyBub3QgbWF0Y2giCittc2dzdHIgItCy0LXRgNC40LPQsNGC0LAg0L3QsCDQs9GA0LDMgNGE0LAg0YEg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQvdC1INGB0YrQstC/0LDQtNCwIgorCisjOiBjb21taXQtZ3JhcGguYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21taXQtZ3JhcGggY2hhaW46IGxpbmUgJyVzJyBub3QgYSBoYXNoIgorbXNnc3RyICIiCisi0LPRgNC10YjQutCwINCy0YrQsiDQstC10YDQuNCz0LDRgtCwINC90LAg0LPRgNCwzIDRhNCwINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LA6INGA0LXQtCDigJ4lc+KAnCDQvdC1INC1INC60L7QvdGC0YDQvtC70L3QsCDRgdGD0LzQsCIKKworIzogY29tbWl0LWdyYXBoLmM6NDI1Cittc2dpZCAidW5hYmxlIHRvIGZpbmQgYWxsIGNvbW1pdC1ncmFwaCBmaWxlcyIKK21zZ3N0ciAi0L3Rj9C60L7QuCDRhNCw0LnQu9C+0LLQtSDQvdCwINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC90LUg0LzQvtCz0LDRgiDQtNCwINCx0YrQtNCw0YIg0L7RgtC60YDQuNGC0LgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjU1OCBjb21taXQtZ3JhcGguYzo2MTgKK21zZ2lkICJpbnZhbGlkIGNvbW1pdCBwb3NpdGlvbi4gY29tbWl0LWdyYXBoIGlzIGxpa2VseSBjb3JydXB0IgorbXNnc3RyICIiCisi0L3QtdC/0YDQsNCy0LjQu9C90LAg0L/QvtC30LjRhtC40Y8g0L3QsCDQv9C+0LTQsNCy0LDQvdC10YLQvi4gINCS0LXRgNC+0Y/RgtC90L4g0LPRgNCw0YTRitGCINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0LUg0L/QvtCy0YDQtdC00LXQvSIKKworIzogY29tbWl0LWdyYXBoLmM6NTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBmaW5kIGNvbW1pdCAlcyIKIG1zZ3N0ciAi0L/QvtC00LDQstCw0L3QtdGC0L4g4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgtC+IgogCi0jOiBjb21taXQtZ3JhcGguYzo2MTcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjUyCisjOiBjb21taXQtZ3JhcGguYzo4NTIgYnVpbHRpbi9hbS5jOjEyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbW1pdCAlcyIKK21zZ3N0ciAi0L/QvtC00LDQstCw0L3QtdGC0L4g0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INCw0L3QsNC70LjQt9C40YDQsNC90L46ICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoxMDExIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjc4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHR5cGUgb2Ygb2JqZWN0ICVzIgogbXNnc3RyICLQstC40LTRitGCINC90LAg0L7QsdC10LrRgtCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtC/0YDQtdC00LXQu9C10L0iCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjY1MQotbXNnaWQgIkFubm90YXRpbmcgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCi1tc2dzdHIgItCQ0L3QvtGC0LjRgNCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0LIg0LPRgNCwzIDRhNCwIgorIzogY29tbWl0LWdyYXBoLmM6MTA0MworbXNnaWQgIkxvYWRpbmcga25vd24gY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgItCX0LDRgNC10LbQtNCw0L3QtSDQvdCwINC/0L7Qt9C90LDRgtC40YLQtSDQv9C+0LTQsNCy0LDQvdC40Y8g0LIg0LPRgNCwzIDRhNCwINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjY5MQorIzogY29tbWl0LWdyYXBoLmM6MTA2MAorbXNnaWQgIkV4cGFuZGluZyByZWFjaGFibGUgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgItCg0LDQt9GI0LjRgNGP0LLQsNC90LUg0L3QsCDQtNC+0YHRgtC40LbQuNC80LjRgtC1INC/0L7QtNCw0LLQsNC90LjRjyDQsiDQs9GA0LDMgNGE0LAiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNzkKK21zZ2lkICJDbGVhcmluZyBjb21taXQgbWFya3MgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICLQmNC30YfQuNGB0YLQstCw0L3QtSDQvdCwINC+0YLQsdC10LvRj9C30LLQsNC90LjRj9GC0LAg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINCyINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwIgorCisjOiBjb21taXQtZ3JhcGguYzoxMDk4CiBtc2dpZCAiQ29tcHV0aW5nIGNvbW1pdCBncmFwaCBnZW5lcmF0aW9uIG51bWJlcnMiCiBtc2dzdHIgItCY0LfRh9C40YHQu9GP0LLQsNC90LUg0L3QsCDQvdC+0LzQtdGA0LDRgtCwINC90LAg0L/QvtC60L7Qu9C10L3QuNGP0YLQsCDQsiDQs9GA0LDMgNGE0LAg0YEg0L/QvtC00LDQstCw0L3QuNGP0YLQsCIKIAotIzogY29tbWl0LWdyYXBoLmM6ODAzIGNvbW1pdC1ncmFwaC5jOjgyNiBjb21taXQtZ3JhcGguYzo4NTIKLW1zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCIKLW1zZ3N0ciAi0J7RgtC60YDQuNCy0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQsiDQs9GA0LDMgNGE0LAiCisjOiBjb21taXQtZ3JhcGguYzoxMTczCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGluICVkIHBhY2siCittc2dpZF9wbHVyYWwgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGluICVkIHBhY2tzIgorbXNnc3RyWzBdICLQntGC0LrRgNC40LLQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINCyINCz0YDQsMyA0YTQsCDQsiAlZCDQv9Cw0LrQtdGC0LXQvSDRhNCw0LnQuyIKK21zZ3N0clsxXSAi0J7RgtC60YDQuNCy0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQsiDQs9GA0LDMgNGE0LAg0LIgJWQg0L/QsNC60LXRgtC90Lgg0YTQsNC50LvQsCIKIAotIzogY29tbWl0LWdyYXBoLmM6ODEyCisjOiBjb21taXQtZ3JhcGguYzoxMTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIGFkZGluZyBwYWNrICVzIgogbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INC00L7QsdCw0LLRj9C90LUg0L3QsCDQv9Cw0LrQtdGC0LXQvSDRhNCw0LnQuyDigJ4lc+KAnCIKIAotIzogY29tbWl0LWdyYXBoLmM6ODE0CisjOiBjb21taXQtZ3JhcGguYzoxMTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIG9wZW5pbmcgaW5kZXggZm9yICVzIgogbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INC+0YLQstCw0YDRj9C90LUg0L3QsCDQuNC90LTQtdC60YHQsCDQvdCwIOKAniVz4oCcIgogCi0jOiBjb21taXQtZ3JhcGguYzo4NjgKKyM6IGNvbW1pdC1ncmFwaC5jOjEyMTQKICMsIGMtZm9ybWF0Ci1tc2dpZCAidGhlIGNvbW1pdCBncmFwaCBmb3JtYXQgY2Fubm90IHdyaXRlICVkIGNvbW1pdHMiCi1tc2dzdHIgItGE0L7RgNC80LDRgtGK0YIg0L3QsCDQs9GA0LDMgNGE0LAg0YEg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQvdC1INC80L7QttC1INC00LAg0LfQsNC/0LjRiNC1ICVkINC/0L7QtNCw0LLQsNC90LjRjyIKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBmcm9tICVkIHJlZiIKK21zZ2lkX3BsdXJhbCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggZnJvbSAlZCByZWZzIgorbXNnc3RyWzBdICLQntGC0LrRgNC40LLQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINCyINCz0YDQsMyA0YTQsCDQuNC30LzQtdC20LTRgyAlZCDRg9C60LDQt9Cw0YLQtdC7IgorbXNnc3RyWzFdICLQntGC0LrRgNC40LLQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINCyINCz0YDQsMyA0YTQsCDQuNC30LzQtdC20LTRgyAlZCDRg9C60LDQt9Cw0YLQtdC70LgiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjg5NQotbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgdG8gd3JpdGUgZ3JhcGgiCi1tc2dzdHIgItC/0YDQtdC60LDQu9C10L3QviDQvNC90L7Qs9C+INC/0L7QtNCw0LLQsNC90LjRjyDQt9CwINC30LDQv9C40YHQstCw0L3QtSDQvdCwINCz0YDQsMyA0YTQsCIKKyM6IGNvbW1pdC1ncmFwaC5jOjEyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21taXQgb2JqZWN0IGlkOiAlcyIKK21zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0L3QsCDQvtCx0LXQutGCLdC/0L7QtNCw0LLQsNC90LU6IOKAniVz4oCcIgogCi0jOiBjb21taXQtZ3JhcGguYzo5MDIgbWlkeC5jOjc2OQorIzogY29tbWl0LWdyYXBoLmM6MTI0OQorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGFtb25nIHBhY2tlZCBvYmplY3RzIgorbXNnc3RyICLQntGC0LrRgNC40LLQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINCyINCz0YDQsMyA0YTQsCDQuNC30LzQtdC20LTRgyDQv9Cw0LrQtdGC0LjRgNCw0L3QuNGC0LUg0L7QsdC10LrRgtC4IgorCisjOiBjb21taXQtZ3JhcGguYzoxMjY0Cittc2dpZCAiQ291bnRpbmcgZGlzdGluY3QgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgItCf0YDQtdCx0YDQvtGP0LLQsNC90LUg0L3QsCDRgNCw0LfQu9C40YfQvdC40YLQtSDQv9C+0LTQsNCy0LDQvdC40Y8g0LIg0LPRgNCwzIDRhNCwIgorCisjOiBjb21taXQtZ3JhcGguYzoxMjk0Cittc2dpZCAiRmluZGluZyBleHRyYSBlZGdlcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgItCe0YLQutGA0LjQstCw0L3QtSDQvdCwINC+0YnQtSDQstGK0YDRhdC+0LLQtSDQsiDQs9GA0LDMgNGE0LAg0YEg0L/QvtC00LDQstCw0L3QuNGP0YLQsCIKKworIzogY29tbWl0LWdyYXBoLmM6MTM0MAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBjb3JyZWN0IG51bWJlciBvZiBiYXNlIGdyYXBoIGlkcyIKK21zZ3N0ciAi0L/RgNCw0LLQuNC70L3QuNGP0YIg0LHRgNC+0Lkg0L3QsCDQsdCw0LfQvtCy0LjRgtC1INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0Lgg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNC/0LjRiNC1IgorCisjOiBjb21taXQtZ3JhcGguYzoxMzczIG1pZHguYzo4MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsZWFkaW5nIGRpcmVjdG9yaWVzIG9mICVzIgogbXNnc3RyICLRgNC+0LTQuNGC0LXQu9GB0LrQuNGC0LUg0LTQuNGA0LXQutGC0L7RgNC40Lgg0L3QsCDigJ4lc+KAnCDQvdC1INC80L7Qs9Cw0YIg0LTQsCDQsdGK0LTQsNGCINGB0YrQt9C00LDQtNC10L3QuCIKIAotIzogY29tbWl0LWdyYXBoLmM6MTAwMgorIzogY29tbWl0LWdyYXBoLmM6MTM4NSBidWlsdGluL2luZGV4LXBhY2suYzozMDYgYnVpbHRpbi9yZXBhY2suYzoyNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAnJXMnIgorbXNnc3RyICLQv9Cw0LrQtdGC0L3QuNGP0YIg0YTQsNC50Lsg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGB0YrQt9C00LDQtNC10L0iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiV3JpdGluZyBvdXQgY29tbWl0IGdyYXBoIGluICVkIHBhc3MiCittc2dpZF9wbHVyYWwgIldyaXRpbmcgb3V0IGNvbW1pdCBncmFwaCBpbiAlZCBwYXNzZXMiCittc2dzdHJbMF0gItCX0LDQv9Cw0LfQstCw0L3QtSDQvdCwINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINCyICVkINC/0LDRgSIKK21zZ3N0clsxXSAi0JfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0LPRgNCwzIDRhNCwINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0LIgJWQg0L/QsNGB0LAiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0ODYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjb21taXQtZ3JhcGggY2hhaW4gZmlsZSIKK21zZ3N0ciAi0YTQsNC50LvRitGCINGBINCy0LXRgNC40LPQsNGC0LAg0L3QsCDQs9GA0LDMgNGE0LAg0YEg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtGC0LLQvtGA0LgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0OTgKK21zZ2lkICJmYWlsZWQgdG8gcmVuYW1lIGJhc2UgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgItC+0YHQvdC+0LLQvdC40Y/RgiDRhNCw0LnQuyDQvdCwINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0LXQuNC80LXQvdGD0LLQsNC9IgorCisjOiBjb21taXQtZ3JhcGguYzoxNTE4Cittc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSB0ZW1wb3JhcnkgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgItCy0YDQtdC80LXQvdC90LjRj9GCINGE0LDQudC7INC90LAg0LPRgNCwzIDRhNCwINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQtdC40LzQtdC90YPQstCw0L0iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2MzEKK21zZ2lkICJTY2FubmluZyBtZXJnZWQgY29tbWl0cyIKK21zZ3N0ciAi0KLRitGA0YHQtdC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINGB0YrRgSDRgdC70LjQstCw0L3QuNGPIgorCisjOiBjb21taXQtZ3JhcGguYzoxNjQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZHVwbGljYXRlIGNvbW1pdCBpZCAlcyIKK21zZ3N0ciAi0L3QtdC+0YfQsNC60LLQsNC9LCDQv9C+0LLRgtCw0YDRj9GJINGB0LUg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0L3QsCDQv9C+0LTQsNCy0LDQvdC1OiAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTY2NQorbXNnaWQgIk1lcmdpbmcgY29tbWl0LWdyYXBoIgorbXNnc3RyICLQodC70LjQstCw0L3QtSDQvdCwINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwIgorCisjOiBjb21taXQtZ3JhcGguYzoxODQ0CisjLCBjLWZvcm1hdAorbXNnaWQgInRoZSBjb21taXQgZ3JhcGggZm9ybWF0IGNhbm5vdCB3cml0ZSAlZCBjb21taXRzIgorbXNnc3RyICLRhNC+0YDQvNCw0YLRitGCINC90LAg0LPRgNCwzIDRhNCwINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0L3QtSDQvNC+0LbQtSDQtNCwINC30LDQv9C40YjQtSAlZCDQv9C+0LTQsNCy0LDQvdC40Y8iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE4NTUKK21zZ2lkICJ0b28gbWFueSBjb21taXRzIHRvIHdyaXRlIGdyYXBoIgorbXNnc3RyICLQv9GA0LXQutCw0LvQtdC90L4g0LzQvdC+0LPQviDQv9C+0LTQsNCy0LDQvdC40Y8g0LfQsCDQt9Cw0L/QuNGB0LLQsNC90LUg0L3QsCDQs9GA0LDMgNGE0LAiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NDQKIG1zZ2lkICJ0aGUgY29tbWl0LWdyYXBoIGZpbGUgaGFzIGluY29ycmVjdCBjaGVja3N1bSBhbmQgaXMgbGlrZWx5IGNvcnJ1cHQiCiBtc2dzdHIgItCz0YDQsNGE0YrRgiDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC1INGBINCz0YDQtdGI0L3QsCDRgdGD0LzQsCDQt9CwINC/0YDQvtCy0LXRgNC60LAg4oCUINCy0LXRgNC+0Y/RgtC90L4g0LUg0L/QvtCy0YDQtdC00LXQvSIKIAotIzogY29tbWl0LWdyYXBoLmM6MTA0NgorIzogY29tbWl0LWdyYXBoLmM6MTk1NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzIGluY29ycmVjdCBPSUQgb3JkZXI6ICVzIHRoZW4gJXMiCittc2dzdHIgIiIKKyLQvdC10L/RgNCw0LLQuNC70L3QsCDQv9C+0LTRgNC10LTQsdCwINC90LAg0L7QsdC10LrRgtC40YLQtSDQv9C+INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINCyINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwOiDigJ4lc+KAnCAiCisi0LUg0L/RgNC10LTQuCDigJ4lc+KAnCwg0LAg0L3QtSDRgtGA0Y/QsdCy0LAiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NjQgY29tbWl0LWdyYXBoLmM6MTk3OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzIGluY29ycmVjdCBmYW5vdXQgdmFsdWU6IGZhbm91dFslZF0gPSAldSAhPSAldSIKK21zZ3N0ciAiIgorItC90LXQv9GA0LDQstC40LvQvdCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCDQvtGC0LrRitGBINCyINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwOiBmYW5vdXRbJWRdID0gJXUsINCwICIKKyLRgtGA0Y/QsdCy0LAg0LTQsCDQtSAldSIKKworIzogY29tbWl0LWdyYXBoLmM6MTk3MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgY29tbWl0ICVzIGZyb20gY29tbWl0LWdyYXBoIgorbXNnc3RyICLQv9C+0LTQsNCy0LDQvdC1IOKAniVz4oCcINCyINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INCw0L3QsNC70LjQt9C40YDQsCIKKworIzogY29tbWl0LWdyYXBoLmM6MTk4OQogbXNnaWQgIlZlcmlmeWluZyBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKIG1zZ3N0ciAi0J/RgNC+0LLQtdGA0LrQsCDQvdCwINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0LIg0LPRgNCwzIDRhNCwIgogCi0jOiBjb21wYXQvb2JzdGFjay5jOjQwNSBjb21wYXQvb2JzdGFjay5jOjQwNworIzogY29tbWl0LWdyYXBoLmM6MjAwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgY29tbWl0ICVzIGZyb20gb2JqZWN0IGRhdGFiYXNlIGZvciBjb21taXQtZ3JhcGgiCittc2dzdHIgIiIKKyLQv9C+0LTQsNCy0LDQvdC1IOKAniVz4oCcINCyINCx0LDQt9Cw0YLQsCDQvtGCINC00LDQvdC90Lgg0LrRitC8INCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC90LUg0LzQvtC20LUg0LTQsCDRgdC1ICIKKyLQsNC90LDQu9C40LfQuNGA0LAiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicm9vdCB0cmVlIE9JRCBmb3IgY29tbWl0ICVzIGluIGNvbW1pdC1ncmFwaCBpcyAlcyAhPSAlcyIKK21zZ3N0ciAiIgorItC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0YrRgiDQvdCwINC+0LHQtdC60YIg0LfQsCDQutC+0YDQtdC90L7QstC+0YLQviDQtNGK0YDQstC+INC30LAg0L/QvtC00LDQstCw0L3QtSDigJ4lc+KAnCDQsiDQs9GA0LDMgNGE0LAg0YEgIgorItC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0LUg4oCeJXPigJwsINCwINGC0YDRj9Cx0LLQsCDQtNCwINC1IOKAniVz4oCcIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDIwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgbGlzdCBmb3IgY29tbWl0ICVzIGlzIHRvbyBsb25nIgorbXNnc3RyICLRgdC/0LjRgdGK0LrRitGCINGBINGA0L7QtNC40YLQtdC70Lgg0L3QsCDigJ4lc+KAnCDQsiDQs9GA0LDMgNGE0LAg0YEg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQtSDQv9GA0LXQutCw0LvQtdC90L4g0LTRitC70YrQsyIKKworIzogY29tbWl0LWdyYXBoLmM6MjAyOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggcGFyZW50IGZvciAlcyBpcyAlcyAhPSAlcyIKK21zZ3N0ciAi0YDQvtC00LjRgtC10LvRj9GCINC90LAg4oCeJXPigJwg0LIg0LPRgNCwzIDRhNCwINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0LUg4oCeJXPigJwsINCwINGC0YDRj9Cx0LLQsCDQtNCwINC1IOKAniVz4oCcIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgbGlzdCBmb3IgY29tbWl0ICVzIHRlcm1pbmF0ZXMgZWFybHkiCittc2dzdHIgItGB0L/QuNGB0YrQutGK0YIg0YEg0YDQvtC00LjRgtC10LvQuCDQvdCwIOKAniVz4oCcINCyINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC1INC/0YDQtdC60LDQu9C10L3QviDQutGK0YEiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbW1pdC1ncmFwaCBoYXMgZ2VuZXJhdGlvbiBudW1iZXIgemVybyBmb3IgY29tbWl0ICVzLCBidXQgbm9uLXplcm8gZWxzZXdoZXJlIgorbXNnc3RyICIiCisi0L3QvtC80LXRgNGK0YIg0L3QsCDQv9C+0LrQvtC70LXQvdC40LXRgtC+INC90LAg0L/QvtC00LDQstCw0L3QtSDigJ4lc+KAnCDQsiDQs9GA0LDMgNGE0LAg0YEg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQtSAwLCDQsCDQtNGA0YPQs9Cw0LTQtSAiCisi0L3QtSDQtSIKKworIzogY29tbWl0LWdyYXBoLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29tbWl0LWdyYXBoIGhhcyBub24temVybyBnZW5lcmF0aW9uIG51bWJlciBmb3IgY29tbWl0ICVzLCBidXQgemVybyBlbHNld2hlcmUiCittc2dzdHIgIiIKKyLQvdC+0LzQtdGA0YrRgiDQvdCwINC/0L7QutC+0LvQtdC90LjQtdGC0L4g0L3QsCDQv9C+0LTQsNCy0LDQvdC1IOKAniVz4oCcINCyINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC90LUg0LUgMCwg0LAgIgorItC00YDRg9Cz0LDQtNC1INC1IgorCisjOiBjb21taXQtZ3JhcGguYzoyMDY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBnZW5lcmF0aW9uIGZvciBjb21taXQgJXMgaXMgJXUgIT0gJXUiCittc2dzdHIgIiIKKyLQvdC+0LzQtdGA0YrRgiDQvdCwINC/0L7QutC+0LvQtdC90LjQtdGC0L4g0L3QsCDQv9C+0LTQsNCy0LDQvdC1IOKAniVz4oCcINCyINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC1ICV1LCDQsCAiCisi0LTRgNGD0LPQsNC00LUg0LUgJXUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0IGRhdGUgZm9yIGNvbW1pdCAlcyBpbiBjb21taXQtZ3JhcGggaXMgJTxQUkl1TUFYPiAhPSAlPFBSSXVNQVg+IgorbXNnc3RyICIiCisi0LTQsNGC0LDRgtCwINC90LAg0L/QvtC00LDQstCw0L3QtSDQvdCwIOKAniVz4oCcINCyINCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC1ICU8UFJJdU1BWD4sINCwINGC0YDRj9Cx0LLQsCDQtNCwINC1ICIKKyIlPFBSSXVNQVg+IgorCisjOiBjb21wYXQvb2JzdGFjay5jOjQwNiBjb21wYXQvb2JzdGFjay5jOjQwOAogbXNnaWQgIm1lbW9yeSBleGhhdXN0ZWQiCiBtc2dzdHIgItC/0LDQvNC10YLRgtCwINGB0LLRitGA0YjQuCIKIAotIzogY29uZmlnLmM6MTIzCisjOiBjb25maWcuYzoxMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4Y2VlZGVkIG1heGltdW0gaW5jbHVkZSBkZXB0aCAoJWQpIHdoaWxlIGluY2x1ZGluZ1xuIgpAQCAtMTYyMSwxNjIgKzI1NjIsMTYyIEBACiAiICAgICVzXG4iCiAi0KLQvtCy0LAg0LzQvtC20LUg0LTQsCDRgdC1INC00YrQu9C20Lgg0L3QsCDQt9Cw0YbQuNC60LvRj9C90LUg0L/RgNC4INCy0LzRitC60LLQsNC90LXRgtC+LiIKIAotIzogY29uZmlnLmM6MTM5CisjOiBjb25maWcuYzoxNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGV4cGFuZCBpbmNsdWRlIHBhdGggJyVzJyIKIG1zZ3N0ciAi0L/RitGC0Y/RgiDQt9CwINCy0LzRitC60LLQsNC90LUg4oCeJXPigJzQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YDQsNC30YjQuNGA0LXQvSIKIAotIzogY29uZmlnLmM6MTUwCisjOiBjb25maWcuYzoxNTEKIG1zZ2lkICJyZWxhdGl2ZSBjb25maWcgaW5jbHVkZXMgbXVzdCBjb21lIGZyb20gZmlsZXMiCiBtc2dzdHIgItC+0YLQvdC+0YHQuNGC0LXQu9C90LjRgtC1INCy0LzRitC60LLQsNC90LjRjyDQvdCwINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCDRgtGA0Y/QsdCy0LAg0LTQsCDQuNC00LLQsNGCINC+0YIg0YTQsNC50LvQvtCy0LUiCiAKLSM6IGNvbmZpZy5jOjE5MAorIzogY29uZmlnLmM6MTk3CiBtc2dpZCAicmVsYXRpdmUgY29uZmlnIGluY2x1ZGUgY29uZGl0aW9uYWxzIG11c3QgY29tZSBmcm9tIGZpbGVzIgogbXNnc3RyICLQvtGC0L3QvtGB0LjRgtC10LvQvdC40YLQtSDRg9GB0LvQvtCy0L3QuCDQuNC30YDQsNC30Lgg0LfQsCDQstC80YrQutCy0LDQvdC1INGC0YDRj9Cx0LLQsCDQtNCwINC40LTQstCw0YIg0L7RgiDRhNCw0LnQu9C+0LLQtSIKIAotIzogY29uZmlnLmM6MzQ4CisjOiBjb25maWcuYzozNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAia2V5IGRvZXMgbm90IGNvbnRhaW4gYSBzZWN0aW9uOiAlcyIKIG1zZ3N0ciAi0LrQu9GO0YfRitGCINC90LUg0YHRitC00YrRgNC20LAg0YDQsNC30LTQtdC7OiDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6MzU0CisjOiBjb25maWcuYzozODIKICMsIGMtZm9ybWF0CiBtc2dpZCAia2V5IGRvZXMgbm90IGNvbnRhaW4gdmFyaWFibGUgbmFtZTogJXMiCiBtc2dzdHIgItC60LvRjtGH0YrRgiDQvdC1INGB0YrQtNGK0YDQttCwINC40LzQtSDQvdCwINC/0YDQvtC80LXQvdC70LjQstCwOiDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6Mzc4IHNlcXVlbmNlci5jOjIyOTYKKyM6IGNvbmZpZy5jOjQwNiBzZXF1ZW5jZXIuYzoyNDQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQga2V5OiAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0LrQu9GO0Yc6IOKAniVz4oCcIgogCi0jOiBjb25maWcuYzozODQKKyM6IGNvbmZpZy5jOjQxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGtleSAobmV3bGluZSk6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQutC70Y7RhyAo0L3QvtCyINGA0LXQtCk6IOKAniVz4oCcIgogCi0jOiBjb25maWcuYzo0MjAgY29uZmlnLmM6NDMyCisjOiBjb25maWcuYzo0NDggY29uZmlnLmM6NDYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJvZ3VzIGNvbmZpZyBwYXJhbWV0ZXI6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC10L0g0L/QsNGA0LDQvNC10YLRitGAOiDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6NDY3CisjOiBjb25maWcuYzo0OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYm9ndXMgZm9ybWF0IGluICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDRhNC+0YDQvNCw0YIg0LIg4oCeJXPigJwiCiAKLSM6IGNvbmZpZy5jOjc5MworIzogY29uZmlnLmM6ODIxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBibG9iICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDRgNC10LQg0LfQsCDQvdCw0YHRgtGA0L7QudC60LggJWQg0LIgQkxPQiDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6Nzk3CisjOiBjb25maWcuYzo4MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGZpbGUgJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INGA0LXQtCDQt9CwINC90LDRgdGC0YDQvtC50LrQuCAlZCDQstGK0LIg0YTQsNC50LvQsCDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6ODAxCisjOiBjb25maWcuYzo4MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDRgNC10LQg0LfQsCDQvdCw0YHRgtGA0L7QudC60LggJWQg0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINCy0YXQvtC0IgogCi0jOiBjb25maWcuYzo4MDUKKyM6IGNvbmZpZy5jOjgzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gc3VibW9kdWxlLWJsb2IgJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INGA0LXQtCDQt9CwINC90LDRgdGC0YDQvtC50LrQuCAlZCDQsiBCTE9CINC30LAg0L/QvtC00LzQvtC00YPQuyDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6ODA5CisjOiBjb25maWcuYzo4MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGNvbW1hbmQgbGluZSAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0YDQtdC0INC30LAg0L3QsNGB0YLRgNC+0LnQutC4ICVkINC90LAg0LrQvtC80LDQvdC00L3QuNGPINGA0LXQtCDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6ODEzCisjOiBjb25maWcuYzo4NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDRgNC10LQg0LfQsCDQvdCw0YHRgtGA0L7QudC60LggJWQg0LIg4oCeJXPigJwiCiAKLSM6IGNvbmZpZy5jOjk1MgorIzogY29uZmlnLmM6OTc4CiBtc2dpZCAib3V0IG9mIHJhbmdlIgogbXNnc3RyICLQuNC30LLRitC9INC00LjQsNC/0LDQt9C+0L3QsCIKIAotIzogY29uZmlnLmM6OTUyCisjOiBjb25maWcuYzo5NzgKIG1zZ2lkICJpbnZhbGlkIHVuaXQiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINC80LXRgNC90LAg0LXQtNC40L3QuNGG0LAiCiAKLSM6IGNvbmZpZy5jOjk1OAorIzogY29uZmlnLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnOiAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90LAg0YfQuNGB0LvQvtCy0LAg0YHRgtC+0LnQvdC+0YHRgiDigJ4lc+KAnCDQt9CwIOKAniVz4oCcOiAlcyIKIAotIzogY29uZmlnLmM6OTYzCisjOiBjb25maWcuYzo5OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gYmxvYiAlczogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINGH0LjRgdC70L7QstCwINGB0YLQvtC50L3QvtGB0YIg4oCeJXPigJwg0LfQsCDigJ4lc+KAnCDQsiBCTE9CIOKAniVz4oCcOiAlcyIKIAotIzogY29uZmlnLmM6OTY2CisjOiBjb25maWcuYzoxMDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIGZpbGUgJXM6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QsCDRh9C40YHQu9C+0LLQsCDRgdGC0L7QudC90L7RgdGCIOKAniVz4oCcINC30LAg4oCeJXPigJwg0LLRitCyINGE0LDQudC70LAg4oCeJXPigJw6ICVzIgogCi0jOiBjb25maWcuYzo5NjkKKyM6IGNvbmZpZy5jOjEwMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gc3RhbmRhcmQgaW5wdXQ6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QsCDRh9C40YHQu9C+0LLQsCDRgdGC0L7QudC90L7RgdGCIOKAniVz4oCcINC30LAg4oCeJXPigJwg0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINCy0YXQvtC0OiAlcyIKIAotIzogY29uZmlnLmM6OTcyCisjOiBjb25maWcuYzoxMDA3CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN1Ym1vZHVsZS1ibG9iICVzOiAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90LAg0YfQuNGB0LvQvtCy0LAg0YHRgtC+0LnQvdC+0YHRgiDigJ4lc+KAnCDQt9CwIOKAniVz4oCcINCyIEJMT0Ig0L7RgiDQv9C+0LTQvNC+0LTRg9C7IOKAniVz4oCcOiAlcyIKIAotIzogY29uZmlnLmM6OTc1CisjOiBjb25maWcuYzoxMDEwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIGNvbW1hbmQgbGluZSAlczogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINGH0LjRgdC70L7QstCwINGB0YLQvtC50L3QvtGB0YIg4oCeJXPigJwg0LfQsCDigJ4lc+KAnCDQvdCwINC60L7QvNCw0L3QtNC90LjRjyDRgNC10LQg4oCeJXPigJw6ICVzIgogCi0jOiBjb25maWcuYzo5NzgKKyM6IGNvbmZpZy5jOjEwMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gJXM6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QsCDRh9C40YHQu9C+0LLQsCDRgdGC0L7QudC90L7RgdGCIOKAniVz4oCcINC30LAg4oCeJXPigJwg0LIgJXM6ICVzIgogCi0jOiBjb25maWcuYzoxMDczCisjOiBjb25maWcuYzoxMTA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBleHBhbmQgdXNlciBkaXIgaW46ICclcyciCiBtc2dzdHIgItC00L7QvNCw0YjQvdCw0YLQsCDQv9Cw0L/QutCwINC90LAg0L/QvtGC0YDQtdCx0LjRgtC10LvRjyDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGC0LA6IOKAniVz4oCcIgogCi0jOiBjb25maWcuYzoxMDgyCisjOiBjb25maWcuYzoxMTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZm9yICclcycgaXMgbm90IGEgdmFsaWQgdGltZXN0YW1wIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC1INC/0YDQsNCy0LjQu9C90LAg0YHRgtC+0LnQvdC+0YHRgiDQt9CwINCy0YDQtdC80LUg0LfQsCDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6MTE3MworIzogY29uZmlnLmM6MTIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJhYmJyZXYgbGVuZ3RoIG91dCBvZiByYW5nZTogJWQiCiBtc2dzdHIgItC00YrQu9C20LjQvdCw0YLQsCDQvdCwINGB0YrQutGA0LDRidCw0LLQsNC90LUg0LUg0LjQt9Cy0YrQvSDQuNC90YLQtdGA0LLQsNC70LAgKFs0OyA0MF0pOiAlZCIKIAotIzogY29uZmlnLmM6MTE4NyBjb25maWcuYzoxMTk4CisjOiBjb25maWcuYzoxMjIyIGNvbmZpZy5jOjEyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHpsaWIgY29tcHJlc3Npb24gbGV2ZWwgJWQiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdC+INC90LjQstC+INC90LAg0LrQvtC80L/RgNC10YHQuNGA0LDQvdC1OiAlZCIKIAotIzogY29uZmlnLmM6MTI5MAorIzogY29uZmlnLmM6MTMyNQogbXNnaWQgImNvcmUuY29tbWVudENoYXIgc2hvdWxkIG9ubHkgYmUgb25lIGNoYXJhY3RlciIKIG1zZ3N0ciAi0L3QsNGB0YLRgNC+0LnQutCw0YLQsCDigJ5jb3JlLmNvbW1lbnRDaGFy4oCcINGC0YDRj9Cx0LLQsCDQtNCwINC1INGB0LDQvNC+INC10LTQuNC9INC30L3QsNC6IgogCi0jOiBjb25maWcuYzoxMzIzCisjOiBjb25maWcuYzoxMzU4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbW9kZSBmb3Igb2JqZWN0IGNyZWF0aW9uOiAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0YDQtdC20LjQvCDQt9CwINGB0YrQt9C00LDQstCw0L3QtdGC0L4g0L3QsCDQvtCx0LXQutGC0Lg6ICVzIgogCi0jOiBjb25maWcuYzoxMzk1CisjOiBjb25maWcuYzoxNDMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCB2YWx1ZSBmb3IgJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6MTQyMQorIzogY29uZmlnLmM6MTQ1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgdmFsdWUgZm9yICVzOiAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90LAg0YHRgtC+0LnQvdC+0YHRgiDQt9CwIOKAniVz4oCcOiDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6MTQyMgorIzogY29uZmlnLmM6MTQ1NwogbXNnaWQgIm11c3QgYmUgb25lIG9mIG5vdGhpbmcsIG1hdGNoaW5nLCBzaW1wbGUsIHVwc3RyZWFtIG9yIGN1cnJlbnQiCiBtc2dzdHIgIiIKICLRgtGA0Y/QsdCy0LAg0LTQsCDQtSDQtdC00L3QsCDQvtGCINGB0LvQtdC00L3QuNGC0LUg0YHRgtC+0LnQvdC+0YHRgtC4OiDigJ5ub3RoaW5n4oCcICjQsdC10Lcg0LjQt9GC0LvQsNGB0LrQstCw0L3QtSDQv9GA0Lgg0LvQuNC/0YHQsCAiCkBAIC0xNzg0LDEzOSArMjcyNSwxMzIgQEAKICLigJ5zaW1wbGXigJwgKNC60LvQvtC90YrRgiDRgdGK0YEg0YHRitGJ0L7RgtC+INC40LzQtSwg0L7RgiDQutC+0LnRgtC+INGB0LUg0LjQt9C00YrRgNC/0LLQsCksIOKAnnVwc3RyZWFt4oCcICjQutC70L7QvdGK0YIsICIKICLQvtGCINC60L7QudGC0L4g0YHQtSDQuNC30LTRitGA0L/QstCwKSDQuNC70Lgg4oCeY3VycmVudOKAnCAo0LrQu9C+0L3RitGCINGB0YrRgSDRgdGK0YnQvtGC0L4g0LjQvNC1KSIKIAotIzogY29uZmlnLmM6MTQ4MSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTEKKyM6IGNvbmZpZy5jOjE1MTggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBwYWNrIGNvbXByZXNzaW9uIGxldmVsICVkIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QviDQvdC40LLQviDQvdCwINC60L7QvNC/0YDQtdGB0LjRgNCw0L3QtSDQv9GA0Lgg0L/QsNC60LXRgtC40YDQsNC90LU6ICVkIgogCi0jOiBjb25maWcuYzoxNjAyCisjOiBjb25maWcuYzoxNjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBsb2FkIGNvbmZpZyBibG9iIG9iamVjdCAnJXMnIgogbXNnc3RyICLQvtCx0LXQutGC0YrRgi1CTE9CIOKAniVz4oCcINGBINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQt9Cw0YDQtdC00LgiCiAKLSM6IGNvbmZpZy5jOjE2MDUKKyM6IGNvbmZpZy5jOjE2NDIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmZXJlbmNlICclcycgZG9lcyBub3QgcG9pbnQgdG8gYSBibG9iIgogbXNnc3RyICLRg9C60LDQt9Cw0YLQtdC70Y/RgiDigJ4lc+KAnCDQvdC1INGB0L7Rh9C4INC60YrQvCDQvtCx0LXQutGCLUJMT0IiCiAKLSM6IGNvbmZpZy5jOjE2MjIKKyM6IGNvbmZpZy5jOjE2NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgY29uZmlnIGJsb2IgJyVzJyIKIG1zZ3N0ciAi0L7QsdC10LrRgtGK0YItQkxPQiDigJ4lc+KAnCDRgSDQutC+0L3RhNC40LPRg9GA0LDRhtC40Lgg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgiIKIAotIzogY29uZmlnLmM6MTY1MgorIzogY29uZmlnLmM6MTY4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcGFyc2UgJXMiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQsNC90LDQu9C40LfQuNGA0LDQvSIKIAotIzogY29uZmlnLmM6MTcwNQorIzogY29uZmlnLmM6MTc0MwogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21tYW5kLWxpbmUgY29uZmlnIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QuCDQvdCw0YHRgtGA0L7QudC60Lgg0L7RgiDQutC+0LzQsNC90LTQvdC40Y8g0YDQtdC0IgogCi0jOiBjb25maWcuYzoyMDM3CisjOiBjb25maWcuYzoyMDk3CiBtc2dpZCAidW5rbm93biBlcnJvciBvY2N1cnJlZCB3aGlsZSByZWFkaW5nIHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIgogbXNnc3RyICLQvdC10L7Rh9Cw0LrQstCw0L3QsCDQs9GA0LXRiNC60LAg0L/RgNC4INC40LfRh9C40YLQsNC90LXRgtC+INC90LAg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdC40YLQtSDRhNCw0LnQu9C+0LLQtSIKIAotIzogY29uZmlnLmM6MjIwNworIzogY29uZmlnLmM6MjI2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkICVzOiAnJXMnIgogbXNnc3RyICLQndC10L/RgNCw0LLQuNC70LXQvSAlczog4oCeJXPigJwiCiAKLSM6IGNvbmZpZy5jOjIyNTAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5rbm93biBjb3JlLnVudHJhY2tlZENhY2hlIHZhbHVlICclcyc7IHVzaW5nICdrZWVwJyBkZWZhdWx0IHZhbHVlIgotbXNnc3RyICIiCi0i0L3QtdC/0L7Qt9C90LDRgtCwINGB0YLQvtC50L3QvtGB0YIg4oCeJXPigJwg0LfQsCDQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAnmNvcmUudW50cmFja2VkQ2FjaGXigJwuICDQqdC1INGB0LUg0L/QvtC70LfQstCwICIKLSLRgdGC0LDQvdC00LDRgNGC0L3QsNGC0LAg0YHRgtC+0LnQvdC+0YHRgiDigJ5rZWVw4oCcICjQt9Cw0L/QsNC30LLQsNC90LUpIgotCi0jOiBjb25maWcuYzoyMjc2CisjOiBjb25maWcuYzoyMzEyCiAjLCBjLWZvcm1hdAogbXNnaWQgInNwbGl0SW5kZXgubWF4UGVyY2VudENoYW5nZSB2YWx1ZSAnJWQnIHNob3VsZCBiZSBiZXR3ZWVuIDAgYW5kIDEwMCIKIG1zZ3N0ciAiIgogItGB0YLQvtC50L3QvtGB0YLRgtCwINC90LAg4oCec3BsaXRJbmRleC5tYXhQZXJjZW50Q2hhbmdl4oCcINGC0YDRj9Cx0LLQsCDQtNCwINC1INC80LXQttC00YMgMSDQuCAxMDAsINCwINC90LUgIgogIiVkIgogCi0jOiBjb25maWcuYzoyMzIyCisjOiBjb25maWcuYzoyMzU4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAnJXMnIGZyb20gY29tbWFuZC1saW5lIGNvbmZpZyIKIG1zZ3N0ciAi0L3QtdGA0LDQt9C/0L7Qt9C90LDRgtCwINGB0YLQvtC50L3QvtGB0YIg4oCeJXPigJwg0L7RgiDQutC+0LzQsNC90LTQvdC40Y8g0YDQtdC0IgogCi0jOiBjb25maWcuYzoyMzI0CisjOiBjb25maWcuYzoyMzYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgdmFyaWFibGUgJyVzJyBpbiBmaWxlICclcycgYXQgbGluZSAlZCIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90LAg0L3QsNGB0YLRgNC+0LnQutCwIOKAniVz4oCcINCy0YrQsiDRhNCw0LnQu9CwIOKAniVz4oCcINC90LAg0YDQtdC0IOKEliVkIgogCi0jOiBjb25maWcuYzoyNDA1CisjOiBjb25maWcuYzoyNDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc2VjdGlvbiBuYW1lICclcyciCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdC+INC40LzQtSDQvdCwINGA0LDQt9C00LXQuzog4oCeJXPigJwiCiAKLSM6IGNvbmZpZy5jOjI0MzcKKyM6IGNvbmZpZy5jOjI0NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaGFzIG11bHRpcGxlIHZhbHVlcyIKIG1zZ3N0ciAi0LfQsNC00LDQtNC10L3QuCDRgdCwINC90Y/QutC+0LvQutC+INGB0YLQvtC50L3QvtGB0YLQuCDQt9CwIOKAniVz4oCcIgogCi0jOiBjb25maWcuYzoyNDY2CisjOiBjb25maWcuYzoyNTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byB3cml0ZSBuZXcgY29uZmlndXJhdGlvbiBmaWxlICVzIgogbXNnc3RyICLQvdC+0LLQuNGP0YIg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QtdC9INGE0LDQudC7IOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0L/QsNC30LXQvSIKIAotIzogY29uZmlnLmM6MjcxNyBjb25maWcuYzozMDQxCisjOiBjb25maWcuYzoyNzU0IGNvbmZpZy5jOjMwNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvY2sgY29uZmlnIGZpbGUgJXMiCiBtc2dzdHIgItC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3QuNGP0YIg0YTQsNC50Lsg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC30LDQutC70Y7Rh9C10L0iCiAKLSM6IGNvbmZpZy5jOjI3MjgKKyM6IGNvbmZpZy5jOjI3NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAib3BlbmluZyAlcyIKIG1zZ3N0ciAi0L7RgtCy0LDRgNGP0L3QtSDQvdCwIOKAniVz4oCcIgogCi0jOiBjb25maWcuYzoyNzYzIGJ1aWx0aW4vY29uZmlnLmM6MzI3CisjOiBjb25maWcuYzoyODAwIGJ1aWx0aW4vY29uZmlnLmM6MzQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgcGF0dGVybjogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INGI0LDQsdC70L7QvTogJXMiCiAKLSM6IGNvbmZpZy5jOjI3ODgKKyM6IGNvbmZpZy5jOjI4MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb25maWcgZmlsZSAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QtdC9INGE0LDQudC7OiDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6MjgwMSBjb25maWcuYzozMDU0CisjOiBjb25maWcuYzoyODM4IGNvbmZpZy5jOjMwOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZnN0YXQgb24gJXMgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDigJ5mc3RhdOKAnCDQstGK0YDRhdGDIOKAniVz4oCcIgogCi0jOiBjb25maWcuYzoyODEyCisjOiBjb25maWcuYzoyODQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtbWFwICclcyciCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQuNC30L/RitC70L3QtdC90LjQtSDQvdCwIOKAnm1tYXDigJwg0LLRitGA0YXRgyDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6MjgyMSBjb25maWcuYzozMDU5CisjOiBjb25maWcuYzoyODU4IGNvbmZpZy5jOjMwOTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2htb2Qgb24gJXMgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90LAg0YHQvNGP0L3QsCDQvdCwINC/0YDQsNCy0LAg0YEg4oCeY2htb2TigJwg0LLRitGA0YXRgyDigJ4lc+KAnCIKIAotIzogY29uZmlnLmM6MjkwNiBjb25maWcuYzozMTU2CisjOiBjb25maWcuYzoyOTQzIGNvbmZpZy5jOjMxOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIGNvbmZpZyBmaWxlICVzIgogbXNnc3RyICLQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC90LjRj9GCINGE0LDQudC7IOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0L/QuNGB0LDQvSIKIAotIzogY29uZmlnLmM6Mjk0MAorIzogY29uZmlnLmM6Mjk3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc2V0ICclcycgdG8gJyVzJyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNC00LDQtNC1INC00LAg0LUg4oCeJXPigJwiCiAKLSM6IGNvbmZpZy5jOjI5NDIgYnVpbHRpbi9yZW1vdGUuYzo3ODIKKyM6IGNvbmZpZy5jOjI5NzkgYnVpbHRpbi9yZW1vdGUuYzo2NTUgYnVpbHRpbi9yZW1vdGUuYzo4NDkgYnVpbHRpbi9yZW1vdGUuYzo4NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHVuc2V0ICclcyciCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQtdC80LDRhdC90LUiCiAKLSM6IGNvbmZpZy5jOjMwMzIKKyM6IGNvbmZpZy5jOjMwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzZWN0aW9uIG5hbWU6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QviDQuNC80LUg0L3QsCDRgNCw0LfQtNC10Ls6ICVzIgogCi0jOiBjb25maWcuYzozMTk5CisjOiBjb25maWcuYzozMjM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3NpbmcgdmFsdWUgZm9yICclcyciCiBtc2dzdHIgItC70LjQv9GB0LLQsCDRgdGC0L7QudC90L7RgdGCINC30LAg4oCeJXPigJwiCkBAIC0xOTcwLDUwICsyOTA0LDQ1IEBACiBtc2dpZCAicmVwb3NpdG9yeSBvbiB0aGUgb3RoZXIgZW5kIGNhbm5vdCBiZSBzaGFsbG93IgogbXNnc3RyICLQvtGC0YHRgNC10YnQvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUg0L3QtSDQvNC+0LbQtSDQtNCwINC1INC/0LvQuNGC0LrQviIKIAotIzogY29ubmVjdC5jOjMxMCBmZXRjaC1wYWNrLmM6MTgyIGJ1aWx0aW4vYXJjaGl2ZS5jOjYzCi0jLCBjLWZvcm1hdAotbXNnaWQgInJlbW90ZSBlcnJvcjogJXMiCi1tc2dzdHIgItC+0YLQtNCw0LvQtdGH0LXQvdCwINCz0YDQtdGI0LrQsDogJXMiCi0KLSM6IGNvbm5lY3QuYzozMTYKKyM6IGNvbm5lY3QuYzozMTMKIG1zZ2lkICJpbnZhbGlkIHBhY2tldCIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0L/QsNC60LXRgiIKIAotIzogY29ubmVjdC5jOjMzNgorIzogY29ubmVjdC5jOjMzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogdW5leHBlY3RlZCAnJXMnIgogbXNnc3RyICLQv9GA0L7RgtC+0LrQvtC70L3QsCDQs9GA0LXRiNC60LA6INC90LXQvtGH0LDQutCy0LDQvdC+IOKAniVz4oCcIgogCi0jOiBjb25uZWN0LmM6NDQ0CisjOiBjb25uZWN0LmM6NDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbHMtcmVmcyByZXNwb25zZTogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INC+0YLQs9C+0LLQvtGAINC90LAg4oCebHMtcmVmc+KAnDog4oCeJXPigJwiCiAKLSM6IGNvbm5lY3QuYzo0NDgKKyM6IGNvbm5lY3QuYzo0NDUKIG1zZ2lkICJleHBlY3RlZCBmbHVzaCBhZnRlciByZWYgbGlzdGluZyIKIG1zZ3N0ciAi0L7Rh9Cw0LrQstCw0YjQtSDRgdC1INC40LfRh9C40YHRgtCy0LDQvdC1INC90LAg0LHRg9GE0LXRgNC40YLQtSDRgdC70LXQtCDQuNC30LHRgNC+0Y/QstCw0L3QtdGC0L4g0L3QsCDRg9C60LDQt9Cw0YLQtdC70LjRgtC1IgogCi0jOiBjb25uZWN0LmM6NTQ3CisjOiBjb25uZWN0LmM6NTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sICclcycgaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAi0L/RgNC+0YLQvtC60L7QuyDigJ4lc+KAnCDQvdC1INGB0LUg0L/QvtC00LTRitGA0LbQsCIKIAotIzogY29ubmVjdC5jOjU5OAorIzogY29ubmVjdC5jOjU5NQogbXNnaWQgInVuYWJsZSB0byBzZXQgU09fS0VFUEFMSVZFIG9uIHNvY2tldCIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC30LDQtNCw0LLQsNC90LUg0L3QsCDigJ5TT19LRUVQQUxJVkXigJwg0L3QsCDQs9C90LXQt9C00L4iCiAKLSM6IGNvbm5lY3QuYzo2MzggY29ubmVjdC5jOjcwMQorIzogY29ubmVjdC5jOjYzNSBjb25uZWN0LmM6Njk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkxvb2tpbmcgdXAgJXMgLi4uICIKIG1zZ3N0ciAi0KLRitGA0YHQtdC90LUg0L3QsCDigJ4lc+KAnOKApiAiCiAKLSM6IGNvbm5lY3QuYzo2NDIKKyM6IGNvbm5lY3QuYzo2MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGxvb2sgdXAgJXMgKHBvcnQgJXMpICglcykiCiBtc2dzdHIgIuKAniVz4oCcICjQv9C+0YDRgiAlcykg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7RgtC60YDQuNC1ICjigJ4lc+KAnCkiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkxvb2tpbmcgdXAgJXMgLi4uICIKLSM6IGNvbm5lY3QuYzo2NDYgY29ubmVjdC5jOjcxNworIzogY29ubmVjdC5jOjY0MyBjb25uZWN0LmM6NzE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJkb25lLlxuIgpAQCAtMjAyMiw3ICsyOTUxLDcgQEAKICLQs9C+0YLQvtCy0L4uXG4iCiAi0KHQstGK0YDQt9Cy0LDQvdC1INC60YrQvCDigJ4lc+KAnCAo0L/QvtGA0YIgJXMp4oCmIgogCi0jOiBjb25uZWN0LmM6NjY4IGNvbm5lY3QuYzo3NDUKKyM6IGNvbm5lY3QuYzo2NjUgY29ubmVjdC5jOjc0MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5hYmxlIHRvIGNvbm5lY3QgdG8gJXM6XG4iCkBAIC0yMDMyLDc3ICsyOTYxLDc3IEBACiAiJXMiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkNvbm5lY3RpbmcgdG8gJXMgKHBvcnQgJXMpIC4uLiAiCi0jOiBjb25uZWN0LmM6Njc0IGNvbm5lY3QuYzo3NTEKKyM6IGNvbm5lY3QuYzo2NzEgY29ubmVjdC5jOjc0OAogbXNnaWQgImRvbmUuIgogbXNnc3RyICLQtNC10LnRgdGC0LLQuNC10YLQviDQt9Cw0LLRitGA0YjQuC4iCiAKLSM6IGNvbm5lY3QuYzo3MDUKKyM6IGNvbm5lY3QuYzo3MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGxvb2sgdXAgJXMgKCVzKSIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7RgtC60YDQuNC1ICglcykiCiAKLSM6IGNvbm5lY3QuYzo3MTEKKyM6IGNvbm5lY3QuYzo3MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBwb3J0ICVzIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGCINC/0L7RgNGCIOKAniVz4oCcIgogCi0jOiBjb25uZWN0LmM6ODQ4IGNvbm5lY3QuYzoxMTc0CisjOiBjb25uZWN0LmM6ODQ1IGNvbm5lY3QuYzoxMTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgInN0cmFuZ2UgaG9zdG5hbWUgJyVzJyBibG9ja2VkIgogbXNnc3RyICLQvdC10L7QsdC40YfQsNC50L3QvtGC0L4g0LjQvNC1INC90LAg0YXQvtGB0YIg4oCeJXPigJwg0LUg0LHQu9C+0LrQuNGA0LDQvdC+IgogCi0jOiBjb25uZWN0LmM6ODUwCisjOiBjb25uZWN0LmM6ODQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInN0cmFuZ2UgcG9ydCAnJXMnIGJsb2NrZWQiCiBtc2dzdHIgItC90LXQvtCx0LjRh9Cw0LnQvdC40Y/RgiDQv9C+0YDRgiDigJ4lc+KAnCDQtSDQsdC70L7QutC40YDQsNC9IgogCi0jOiBjb25uZWN0LmM6ODYwCisjOiBjb25uZWN0LmM6ODU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGFydCBwcm94eSAlcyIKIG1zZ3N0ciAi0L/QvtGB0YDQtdC00L3QuNC60YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDRgdGC0LDRgNGC0LjRgNCwIgogCi0jOiBjb25uZWN0LmM6OTI3CisjOiBjb25uZWN0LmM6OTI4CiBtc2dpZCAibm8gcGF0aCBzcGVjaWZpZWQ7IHNlZSAnZ2l0IGhlbHAgcHVsbCcgZm9yIHZhbGlkIHVybCBzeW50YXgiCiBtc2dzdHIgIiIKICLQvdC1INC1INGD0LrQsNC30LDQvSDQv9GK0YIuINCf0YDQvtCy0LXRgNC10YLQtSDRgdC40L3RgtCw0LrRgdC40YHQsCDRgSDQutC+0LzQsNC90LTQsNGC0LA6XG4iCiAiXG4iCiAiICAgIGdpdCBoZWxwIHB1bGwiCiAKLSM6IGNvbm5lY3QuYzoxMTIyCisjOiBjb25uZWN0LmM6MTEyMwogbXNnaWQgInNzaCB2YXJpYW50ICdzaW1wbGUnIGRvZXMgbm90IHN1cHBvcnQgLTQiCiBtc2dzdHIgItCy0LDRgNC40LDQvdGC0YrRgiDQt9CwIOKAnnNzaOKAnCDigJQg4oCec2ltcGxl4oCcICjQvtC/0YDQvtGB0YLQtdC9KSwg0L3QtSDQv9C+0LTQtNGK0YDQttCwINC+0L/RhtC40Y/RgtCwIOKAni004oCcIgogCi0jOiBjb25uZWN0LmM6MTEzNAorIzogY29ubmVjdC5jOjExMzUKIG1zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IC02IgogbXNnc3RyICLQstCw0YDQuNCw0L3RgtGK0YIg0LfQsCDigJ5zc2jigJwg4oCUIOKAnnNpbXBsZeKAnCAo0L7Qv9GA0L7RgdGC0LXQvSksINC90LUg0L/QvtC00LTRitGA0LbQsCDQvtC/0YbQuNGP0YLQsCDigJ4tNuKAnCIKIAotIzogY29ubmVjdC5jOjExNTEKKyM6IGNvbm5lY3QuYzoxMTUyCiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCBzZXR0aW5nIHBvcnQiCiBtc2dzdHIgIiIKICLQstCw0YDQuNCw0L3RgtGK0YIg0LfQsCDigJ5zc2jigJwg4oCUIOKAnnNpbXBsZeKAnCAo0L7Qv9GA0L7RgdGC0LXQvSksINC90LUg0L/QvtC00LTRitGA0LbQsCDQt9Cw0LTQsNCy0LDQvdC10YLQviDQvdCwINC/0L7RgNGCIgogCi0jOiBjb25uZWN0LmM6MTI2MgorIzogY29ubmVjdC5jOjEyNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBwYXRobmFtZSAnJXMnIGJsb2NrZWQiCiBtc2dzdHIgItC90LXQvtCx0LjRh9Cw0LnQvdC40Y/RgiDQv9GK0YIg4oCeJXPigJwg0LUg0LHQu9C+0LrQuNGA0LDQvSIKIAotIzogY29ubmVjdC5jOjEzMDcKKyM6IGNvbm5lY3QuYzoxMzExCiBtc2dpZCAidW5hYmxlIHRvIGZvcmsiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDRgdGK0LfQtNCw0LLQsNC90LUg0L3QsCDQv9GA0L7RhtC10YEiCiAKLSM6IGNvbm5lY3RlZC5jOjY4IGJ1aWx0aW4vZnNjay5jOjIwMiBidWlsdGluL3BydW5lLmM6MTQ3CisjOiBjb25uZWN0ZWQuYzo5OCBidWlsdGluL2ZzY2suYzoyMDggYnVpbHRpbi9wcnVuZS5jOjQzCiBtc2dpZCAiQ2hlY2tpbmcgY29ubmVjdGl2aXR5IgotbXNnc3RyICLQn9GA0L7QstC10YDQutCwINC90LAg0LLRgNGK0LfQutCw0YLQsCIKK21zZ3N0ciAi0J/RgNC+0LLQtdGA0LrQsCDQvdCwINGB0LLRitGA0LfQsNC90L7RgdGC0YLQsCIKIAotIzogY29ubmVjdGVkLmM6ODAKKyM6IGNvbm5lY3RlZC5jOjExMAogbXNnaWQgIkNvdWxkIG5vdCBydW4gJ2dpdCByZXYtbGlzdCciCiBtc2dzdHIgItCa0L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgcmV2LWxpc3TigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40LfQv9GK0LvQvdC10L3QsC4iCiAKLSM6IGNvbm5lY3RlZC5jOjEwMAorIzogY29ubmVjdGVkLmM6MTMwCiBtc2dpZCAiZmFpbGVkIHdyaXRlIHRvIHJldi1saXN0IgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC10L0g0LfQsNC/0LjRgSDQvdCwINGB0L/QuNGB0YrQutCwINGBINCy0LXRgNGB0LjQuNGC0LUiCiAKLSM6IGNvbm5lY3RlZC5jOjEwNworIzogY29ubmVjdGVkLmM6MTM3CiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHJldi1saXN0J3Mgc3RkaW4iCiBtc2dzdHIgItGB0YLQsNC90LTQsNGA0YLQvdC40Y/RgiDQstGF0L7QtCDQvdCwINGB0L/QuNGB0YrQutCwINGBINCy0LXRgNGB0LjQuNGC0LUg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC30LDRgtCy0L7RgNC10L0iCiAKQEAgLTIxNDMsMzAgKzMwNzIsMzAgQEAKICLQpNCw0LnQu9GK0YIg0YnQtSDQvtGB0YLQsNC90LUg0YEg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdC40YLQtSDQt9C90LDRhtC4INC30LAg0LrRgNCw0Lkg0L3QsCDRgNC10LQg0LIg0YDQsNCx0L7RgtC90LDRgtCwINCy0LggIgogItC00LjRgNC10LrRgtC+0YDQuNGPLiIKIAotIzogY29udmVydC5jOjI4MAorIzogY29udmVydC5jOjI4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJCT00gaXMgcHJvaGliaXRlZCBpbiAnJXMnIGlmIGVuY29kZWQgYXMgJXMiCiBtc2dzdHIgIiIKICLigJ4lc+KAnCDQvdC1INGC0YDRj9Cx0LLQsCDQtNCwINGB0YrQtNGK0YDQttCwINC80LDRgNC60LXRgCDQt9CwINC/0L7RgNC10LTQvdC+0YHRgtGC0LAg0L3QsCDQsdCw0LnRgtC+0LLQtdGC0LUgKEJPTSkg0L/RgNC4ICIKICLQutC+0LTQuNGA0LDQvdC1IOKAniVz4oCcIgogCi0jOiBjb252ZXJ0LmM6Mjg3CisjOiBjb252ZXJ0LmM6MjkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKLSJUaGUgZmlsZSAnJXMnIGNvbnRhaW5zIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lcyBhcyB3b3JraW5nLSIKLSJ0cmVlLWVuY29kaW5nLiIKKyJUaGUgZmlsZSAnJXMnIGNvbnRhaW5zIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lLipzIGFzICIKKyJ3b3JraW5nLXRyZWUtZW5jb2RpbmcuIgogbXNnc3RyICIiCiAi0KTQsNC50LvRitGCIOKAniVz4oCcINGB0YrQtNGK0YDQttCwINC80LDRgNC60LXRgCDQt9CwINC/0L7RgNC10LTQvdC+0YHRgtGC0LAg0L3QsCDQsdCw0LnRgtC+0LLQtdGC0LUgKEJPTSkuICDQmNC30L/QvtC70LfQstCw0LnRgtC1ICIKLSLigJ5VVEYtJXPigJwg0LrQsNGC0L4g0LrQvtC00LjRgNCw0L3QtSDQt9CwINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+LiIKKyLigJ5VVEYtJS4qc+KAnCDQutCw0YLQviDQutC+0LTQuNGA0LDQvdC1INC30LAg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4uIgogCi0jOiBjb252ZXJ0LmM6MzA1CisjOiBjb252ZXJ0LmM6MzA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJPTSBpcyByZXF1aXJlZCBpbiAnJXMnIGlmIGVuY29kZWQgYXMgJXMiCiBtc2dzdHIgIiIKICLigJ4lc+KAnCDRgtGA0Y/QsdCy0LAg0LTQsCDRgdGK0LTRitGA0LbQsCDQvNCw0YDQutC10YAg0LfQsCDQv9C+0YDQtdC00L3QvtGB0YLRgtCwINC90LAg0LHQsNC50YLQvtCy0LXRgtC1IChCT00pINC/0YDQuCDQutC+0LTQuNGA0LDQvdC1ICIKICLigJ4lc+KAnCIKIAotIzogY29udmVydC5jOjMwNworIzogY29udmVydC5jOjMwNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZpbGUgJyVzJyBpcyBtaXNzaW5nIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lc0JFIG9yIFVURi0iCkBAIC0yMTc2LDUwICszMTA1LDUwIEBACiAi0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviDQuNC30L/QvtC70LfQstCw0LnRgtC1IFVURi0lc0JFINC40LvQuCBVVEYtJXNMRSAo0LIg0LfQsNCy0LjRgdC40LzQvtGB0YIg0L7RgiAiCiAi0L/QvtGA0LXQtNC90L7RgdGC0YLQsCDQvdCwINCx0LDQudGC0L7QstC10YLQtSkuIgogCi0jOiBjb252ZXJ0LmM6NDI1IGNvbnZlcnQuYzo0OTYKKyM6IGNvbnZlcnQuYzo0MTkgY29udmVydC5jOjQ5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZW5jb2RlICclcycgZnJvbSAlcyB0byAlcyIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC/0YDQtdC60L7QtNC40YDQsNC90LUg0L3QsCDigJ4lc+KAnCDQvtGCIOKAniVz4oCcINC60YrQvCDigJ4lc+KAnCIKIAotIzogY29udmVydC5jOjQ2OAorIzogY29udmVydC5jOjQ2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJlbmNvZGluZyAnJXMnIGZyb20gJXMgdG8gJXMgYW5kIGJhY2sgaXMgbm90IHRoZSBzYW1lIgogbXNnc3RyICLQn9GA0LXQutC+0LTQuNGA0LDQvdC10YLQviDQvdCwIOKAniVz4oCcINC+0YIg4oCeJXPigJwg0LrRitC8IOKAniVz4oCcINC4INC+0LHRgNCw0YLQvdC+INC/0YDQvtC80LXQvdGPINGE0LDQudC70LAiCiAKLSM6IGNvbnZlcnQuYzo2NzQKKyM6IGNvbnZlcnQuYzo2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZvcmsgdG8gcnVuIGV4dGVybmFsIGZpbHRlciAnJXMnIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YHRitC30LTQsNCy0LDQvdC1INC90LAg0L/RgNC+0YbQtdGBINC30LAg0LLRitC90YjQtdC9INGE0LjQu9GC0YrRgCDigJ4lc+KAnCIKIAotIzogY29udmVydC5jOjY5NAorIzogY29udmVydC5jOjY4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmVlZCB0aGUgaW5wdXQgdG8gZXh0ZXJuYWwgZmlsdGVyICclcyciCiBtc2dzdHIgItCy0YXQvtC00YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/QvtC00LDQtNC10L0g0L3QsCDQstGK0L3RiNC90LjRjyDRhNC40LvRgtGK0YAg4oCeJXPigJwiCiAKLSM6IGNvbnZlcnQuYzo3MDEKKyM6IGNvbnZlcnQuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkICVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDQstGK0L3RiNC90LjRjyDRhNC40LvRgtGK0YAg4oCeJXPigJw6ICVkIgogCi0jOiBjb252ZXJ0LmM6NzM2IGNvbnZlcnQuYzo3MzkKKyM6IGNvbnZlcnQuYzo3MzAgY29udmVydC5jOjczMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkIGZyb20gZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YfQtdGC0LXQvdC1INC+0YIg0LLRitC90YjQvdC40Y8g0YTQuNC70YLRitGAIOKAniVz4oCcIgogCi0jOiBjb252ZXJ0LmM6NzQyIGNvbnZlcnQuYzo3OTYKKyM6IGNvbnZlcnQuYzo3MzYgY29udmVydC5jOjc5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQuNC30L/RitC70L3QtdC90LjQtSDQvdCwINCy0YrQvdGI0L3QuNGPINGE0LjQu9GC0YrRgCDigJ4lc+KAnCIKIAotIzogY29udmVydC5jOjg0NAorIzogY29udmVydC5jOjgzOQogbXNnaWQgInVuZXhwZWN0ZWQgZmlsdGVyIHR5cGUiCiBtc2dzdHIgItC90LXQvtGH0LDQutCy0LDQvSDQstC40LQg0YTQuNC70YLRitGAIgogCi0jOiBjb252ZXJ0LmM6ODU1CisjOiBjb252ZXJ0LmM6ODUwCiBtc2dpZCAicGF0aCBuYW1lIHRvbyBsb25nIGZvciBleHRlcm5hbCBmaWx0ZXIiCiBtc2dzdHIgItC/0YrRgtGP0YIg0LUg0L/RgNC10LrQsNC70LXQvdC+INC00YrQu9GK0LMg0LfQsCDQstGK0L3RiNC10L0g0YTQuNC70YLRitGAIgogCi0jOiBjb252ZXJ0LmM6OTI5CisjOiBjb252ZXJ0LmM6OTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBpcyBub3QgYXZhaWxhYmxlIGFueW1vcmUgYWx0aG91Z2ggbm90IGFsbCBwYXRocyBoYXZlICIKQEAgLTIyMjgsNjcgKzMxNTcsNjcgQEAKICLQstGK0L3RiNC90LjRj9GCINGE0LjQu9GC0YrRgCDigJ4lc+KAnCDQstC10YfQtSDQvdC1INC1INC90LDQu9C40YfQtdC9LCDQstGK0L/RgNC10LrQuCDRh9C1INC90LUg0LLRgdC40YfQutC4INC/0YrRgtC40YnQsCDRgdCwICIKICLRhNC40LvRgtGA0LjRgNCw0L3QuCIKIAotIzogY29udmVydC5jOjEyMjgKKyM6IGNvbnZlcnQuYzoxMjIzCiBtc2dpZCAidHJ1ZS9mYWxzZSBhcmUgbm8gdmFsaWQgd29ya2luZy10cmVlLWVuY29kaW5ncyIKIG1zZ3N0ciAi4oCedHJ1ZeKAnC/igJ5mYWxzZeKAnCDQvdC1INC80L7QttC1INC00LAg0YHQsCDQutC+0LTQuNGA0LDQvdC40Y8g0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKIAotIzogY29udmVydC5jOjEzOTggY29udmVydC5jOjE0MzIKKyM6IGNvbnZlcnQuYzoxNDExIGNvbnZlcnQuYzoxNDQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjbGVhbiBmaWx0ZXIgJyVzJyBmYWlsZWQiCiBtc2dzdHIgIiVzOiDQvdC10YPRgdC/0LXRiNC90L4g0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDQtNC10LrQvtC00LjRgNCw0Ykg0YTQuNC70YLRitGAIOKAniVz4oCcIgogCi0jOiBjb252ZXJ0LmM6MTQ3NgorIzogY29udmVydC5jOjE0ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHNtdWRnZSBmaWx0ZXIgJXMgZmFpbGVkIgogbXNnc3RyICIlczog0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg0LrQvtC00LjRgNCw0Ykg0YTQuNC70YLRitGAIOKAniVz4oCcIgogCi0jOiBkYXRlLmM6MTE2CisjOiBkYXRlLmM6MTM4CiBtc2dpZCAiaW4gdGhlIGZ1dHVyZSIKIG1zZ3N0ciAi0LIg0LHRitC00LXRidC10YLQviIKIAotIzogZGF0ZS5jOjEyMgorIzogZGF0ZS5jOjE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHNlY29uZCBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gc2Vjb25kcyBhZ28iCiBtc2dzdHJbMF0gItC/0YDQtdC00LggJTxQUkl1TUFYPiDRgdC10LrRg9C90LTQsCIKIG1zZ3N0clsxXSAi0L/RgNC10LTQuCAlPFBSSXVNQVg+INGB0LXQutGD0L3QtNC4IgogCi0jOiBkYXRlLmM6MTI5CisjOiBkYXRlLmM6MTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gbWludXRlIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtaW51dGVzIGFnbyIKIG1zZ3N0clswXSAi0L/RgNC10LTQuCAlPFBSSXVNQVg+INC80LjQvdGD0YLQsCIKIG1zZ3N0clsxXSAi0L/RgNC10LTQuCAlPFBSSXVNQVg+INC80LjQvdGD0YLQuCIKIAotIzogZGF0ZS5jOjEzNgorIzogZGF0ZS5jOjE1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IGhvdXIgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IGhvdXJzIGFnbyIKIG1zZ3N0clswXSAi0L/RgNC10LTQuCAlPFBSSXVNQVg+INGH0LDRgSIKIG1zZ3N0clsxXSAi0L/RgNC10LTQuCAlPFBSSXVNQVg+INGH0LDRgdCwIgogCi0jOiBkYXRlLmM6MTQzCisjOiBkYXRlLmM6MTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gZGF5IGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBkYXlzIGFnbyIKIG1zZ3N0clswXSAi0L/RgNC10LTQuCAlPFBSSXVNQVg+INC00LXQvSIKIG1zZ3N0clsxXSAi0L/RgNC10LTQuCAlPFBSSXVNQVg+INC00LXQvdCwIgogCi0jOiBkYXRlLmM6MTQ5CisjOiBkYXRlLmM6MTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gd2VlayBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gd2Vla3MgYWdvIgogbXNnc3RyWzBdICLQv9GA0LXQtNC4ICU8UFJJdU1BWD4g0YHQtdC00LzQuNGG0LAiCiBtc2dzdHJbMV0gItC/0YDQtdC00LggJTxQUkl1TUFYPiDRgdC10LTQvNC40YbQuCIKIAotIzogZGF0ZS5jOjE1NgorIzogZGF0ZS5jOjE3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IG1vbnRoIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtb250aHMgYWdvIgogbXNnc3RyWzBdICLQv9GA0LXQtNC4ICU8UFJJdU1BWD4g0LzQtdGB0LXRhiIKIG1zZ3N0clsxXSAi0L/RgNC10LTQuCAlPFBSSXVNQVg+INC80LXRgdC10YbQsCIKIAotIzogZGF0ZS5jOjE2NworIzogZGF0ZS5jOjE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHllYXIiCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4geWVhcnMiCkBAIC0yMjk2LDQyICszMjI1LDQyIEBACiBtc2dzdHJbMV0gIiU8UFJJdU1BWD4g0LPQvtC00LjQvdC4IgogCiAjLiBUUkFOU0xBVE9SUzogIiVzIiBpcyAiPG4+IHllYXJzIgotIzogZGF0ZS5jOjE3MAorIzogZGF0ZS5jOjE5MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcywgJTxQUkl1TUFYPiBtb250aCBhZ28iCiBtc2dpZF9wbHVyYWwgIiVzLCAlPFBSSXVNQVg+IG1vbnRocyBhZ28iCiBtc2dzdHJbMF0gItC/0YDQtdC00LggJXMg0LggJTxQUkl1TUFYPiDQvNC10YHQtdGGIgogbXNnc3RyWzFdICLQv9GA0LXQtNC4ICVzINC4ICU8UFJJdU1BWD4g0LzQtdGB0LXRhtCwIgogCi0jOiBkYXRlLmM6MTc1IGRhdGUuYzoxODAKKyM6IGRhdGUuYzoxOTcgZGF0ZS5jOjIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHllYXIgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHllYXJzIGFnbyIKIG1zZ3N0clswXSAi0L/RgNC10LTQuCAlPFBSSXVNQVg+INCz0L7QtNC40L3QsCIKIG1zZ3N0clsxXSAi0L/RgNC10LTQuCAlPFBSSXVNQVg+INCz0L7QtNC40L3QuCIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjI2OAorIzogZGVsdGEtaXNsYW5kcy5jOjI3MgogbXNnaWQgIlByb3BhZ2F0aW5nIGlzbGFuZCBtYXJrcyIKIG1zZ3N0ciAi0KDQsNC30L/RgNC+0YHRgtGA0LDQvdGP0LLQsNC90LUg0L3QsCDQs9GA0LDQvdC40YbQuNGC0LUg0L3QsCDQs9GA0YPQv9C40YLQtSIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjI4NgorIzogZGVsdGEtaXNsYW5kcy5jOjI5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgdHJlZSBvYmplY3QgJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INC+0LHQtdC60YIt0LTRitGA0LLQvjogJXMiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzozMzAKKyM6IGRlbHRhLWlzbGFuZHMuYzozMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvYWQgaXNsYW5kIHJlZ2V4IGZvciAnJXMnOiAlcyIKIG1zZ3N0ciAi0YDQtdCz0YPQu9GP0YDQvdC40Y/RgiDQuNC30YDQsNC3INC90LAg0LPRgNGD0L/QsNGC0LAg0LfQsCDigJ4lc+KAnCwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC30LDRgNC10LTQtdC9OiDigJ4lc+KAnCIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjM4NgorIzogZGVsdGEtaXNsYW5kcy5jOjM5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpc2xhbmQgcmVnZXggZnJvbSBjb25maWcgaGFzIHRvbyBtYW55IGNhcHR1cmUgZ3JvdXBzIChtYXg9JWQpIgogbXNnc3RyICIiCiAi0YDQtdCz0YPQu9GP0YDQvdC40Y/RgiDQuNC30YDQsNC3INC90LAg0LPRgNGD0L/QsNGC0LAg0LIg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdC40Y8g0YTQsNC50Lsg0YHRitC00YrRgNC20LAg0L/QvtCy0LXRh9C1INC+0YIgIgogItC80LDQutGB0LjQvNCw0LvQvdC+INC/0L7QtNC00YrRgNC20LDQvdC40YLQtSAoJWQpINC/0YDQuNGF0LLQsNGJ0LDRidC4INCz0YDRg9C/0LgiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzo0NjIKKyM6IGRlbHRhLWlzbGFuZHMuYzo0NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWFya2VkICVkIGlzbGFuZHMsIGRvbmUuXG4iCiBtc2dzdHIgItCe0YLQsdC10LvRj9C30LDQvdC4INGB0LAgJWQg0LPRgNGD0L/QuCwg0YDQsNCx0L7RgtCw0YLQsCDQv9GA0LjQutC70Y7Rh9C4LlxuIgpAQCAtMjM0MSwyOCArMzI3MCwzNSBAQAogbXNnaWQgImZhaWxlZCB0byByZWFkIG9yZGVyZmlsZSAnJXMnIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg0YEg0L/QvtC00YDQtdC00LHQsNGC0LAg0L3QsCDRgdGK0L7RgtCy0LXRgtGB0YLQstC40Y/RgtCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0L7Rh9C10YLQtdC9IgogCi0jOiBkaWZmY29yZS1yZW5hbWUuYzo1NDQKKyM6IGRpZmZjb3JlLXJlbmFtZS5jOjU0MwogbXNnaWQgIlBlcmZvcm1pbmcgaW5leGFjdCByZW5hbWUgZGV0ZWN0aW9uIgogbXNnc3RyICLQotGK0YDRgdC10L3QtSDQvdCwINC/0YDQtdC40LzQtdC90YPQstCw0L3QuNGPINC90LAg0L7QsdC10LrRgtC4INGB0YrRh9C10YLQsNC90Lgg0YEg0L/RgNC+0LzQtdC90LgiCiAKLSM6IGRpZmYuYzoxMDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAib3B0aW9uICclcycgcmVxdWlyZXMgYSB2YWx1ZSIKLW1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeJXPigJwg0LjQt9C40YHQutCy0LAg0YHRgtC+0LnQvdC+0YHRgiIKKyM6IGRpZmYtbm8taW5kZXguYzoyMzgKK21zZ2lkICJnaXQgZGlmZiAtLW5vLWluZGV4IFs8b3B0aW9ucz5dIDxwYXRoPiA8cGF0aD4iCittc2dzdHIgImdpdCBkaWZmIC0tbm8taW5kZXggW9Ce0J/QptCY0K/igKZdINCf0KrQoiDQn9Cq0KIiCiAKLSM6IGRpZmYuYzoxNTgKKyM6IGRpZmYtbm8taW5kZXguYzoyNjMKK21zZ2lkICIiCisiTm90IGEgZ2l0IHJlcG9zaXRvcnkuIFVzZSAtLW5vLWluZGV4IHRvIGNvbXBhcmUgdHdvIHBhdGhzIG91dHNpZGUgYSB3b3JraW5nICIKKyJ0cmVlIgorbXNnc3RyICIiCisi0J3QtSDQtSDRhdGA0LDQvdC40LvQuNGJ0LUg0L3QsCBnaXQuICDQn9C+0LvQt9Cy0LDQudGC0LUg0L7Qv9GG0LjRj9GC0LAg4oCeLS1uby1pbmRleOKAnCwg0LfQsCDQtNCwINGB0YDQsNCy0L3QuNGC0LUgIgorItC/0YrRgtC40YnQsCDQuNC30LLRitC9INGA0LDQsdC+0YLQvdC+INC00YrRgNCy0L4iCisKKyM6IGRpZmYuYzoxNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBGYWlsZWQgdG8gcGFyc2UgZGlyc3RhdCBjdXQtb2ZmIHBlcmNlbnRhZ2UgJyVzJ1xuIgogbXNnc3RyICIiCiAiICDQndC10YPRgdC/0LXRiNC90L4g0YDQsNC30L/QvtC30L3QsNCy0LDQvdC1INC90LAg4oCeJXPigJwg0LrQsNGC0L4g0L/RgNC+0YbQtdC90YIt0L/RgNCw0LMg0LfQsCDRgdGC0LDRgtC40YHRgtC40LrQsNGC0LAg0L/QviAiCiAi0LTQuNGA0LXQutGC0L7RgNC40LhcbiIKIAotIzogZGlmZi5jOjE2MworIzogZGlmZi5jOjE2MAogIywgYy1mb3JtYXQKIG1zZ2lkICIgIFVua25vd24gZGlyc3RhdCBwYXJhbWV0ZXIgJyVzJ1xuIgogbXNnc3RyICIgINCd0LXQv9C+0LfQvdCw0YIg0L/QsNGA0LDQvNC10YLRitGAIOKAniVz4oCcINC30LAg0YHRgtCw0YLQuNGB0YLQuNC60LDRgtCwINC/0L4g0LTQuNGA0LXQutGC0L7RgNC40LgnXG4iCiAKLSM6IGRpZmYuYzoyOTEKKyM6IGRpZmYuYzoyOTYKIG1zZ2lkICIiCiAiY29sb3IgbW92ZWQgc2V0dGluZyBtdXN0IGJlIG9uZSBvZiAnbm8nLCAnZGVmYXVsdCcsICdibG9ja3MnLCAnemVicmEnLCAiCiAiJ2RpbW1lZC16ZWJyYScsICdwbGFpbiciCkBAIC0yMzcxLDI1ICszMzA3LDMzIEBACiAi4oCeZGVmYXVsdOKAnCAo0YHRgtCw0L3QtNCw0YDRgtC90L4pLCDigJ5ibG9ja3PigJwgKNC/0LDRgNGH0LXRgtCwKSwg4oCeemVicmHigJwgKNGA0LDQudC1KSwgIgogIuKAnmRpbW1lZF96ZWJyYeKAnCAo0YLRitC80L3QviDRgNCw0LnQtSksIOKAnnBsYWlu4oCcICjQvtCx0LjQutC90L7QstC10L3QvikiCiAKLSM6IGRpZmYuYzozMTYKKyM6IGRpZmYuYzozMjQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiaWdub3JpbmcgdW5rbm93biBjb2xvci1tb3ZlZC13cyBtb2RlICclcyciCi1tc2dzdHIgItC90LXQv9C+0LfQvdCw0YLQsNGC0LAg0YHRgtC+0LnQvdC+0YHRgiDigJ4lc+KAnCDQvdCwINC90LDRgdGC0YDQvtC50LrQsNGC0LAg4oCeY29sb3ItbW92ZWQtd3PigJwg0YHQtSDQv9GA0LXRgdC60LDRh9CwIgotCi0jOiBkaWZmLmM6MzIzCiBtc2dpZCAiIgotImNvbG9yLW1vdmVkLXdzOiBhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UgY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgd2hpdGUgIgotInNwYWNlIG1vZGVzIgorInVua25vd24gY29sb3ItbW92ZWQtd3MgbW9kZSAnJXMnLCBwb3NzaWJsZSB2YWx1ZXMgYXJlICdpZ25vcmUtc3BhY2UtY2hhbmdlJywgIgorIidpZ25vcmUtc3BhY2UtYXQtZW9sJywgJ2lnbm9yZS1hbGwtc3BhY2UnLCAnYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlJyIKIG1zZ3N0ciAiIgotImNvbG9yLW1vdmVkLXdzOiDigJ5hbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2XigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBINC00YDRg9Cz0LjRgtC1INGA0LXQttC40LzQuCAiCi0i0LfQsCDQt9C90LDRhtC40YLQtSDQt9CwINC40L3RgtC10YDQstCw0LvQuCIKKyLQvdC10L/QvtC00LTRitGA0LbQsNC9INGA0LXQttC40Lwg0LfQsCDQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAnmNvbG9yLW1vdmVkLXdzIG1vZGXigJwg4oCUwqDigJ4lc+KAnCwg0LLRitC30LzQvtC20L3QuNGC0LUgIgorItGB0YLQvtC50L3QvtGB0YLQuCDRgdCwIOKAnmlnbm9yZS1zcGFjZS1jaGFuZ2XigJwgKNC/0YDQtdC90LXQsdGA0LXQs9Cy0LDQvdC1INC90LAg0L/RgNC+0LzQtdC90LjRgtC1INC90LAg0L/RgNCw0LfQvdC40YLQtSAiCisi0LfQvdCw0YbQuCksIOKAnmlnbm9yZS1zcGFjZS1hdC1lb2zigJwgKNC/0YDQtdC90LXQsdGA0LXQs9Cy0LDQvdC1INC90LAg0L/RgNC+0LzQtdC90LjRgtC1INC90LAg0L/RgNCw0LfQvdC40YLQtSDQt9C90LDRhtC4ICIKKyLQsiDQutGA0LDRjyDQvdCwINGA0LXQtNCwKSwg4oCeaWdub3JlLWFsbC1zcGFjZeKAnCAo0L/RgNC10L3QtdCx0YDQtdCz0LLQsNC90LUg0L3QsCDQstGB0LjRh9C60Lgg0L/RgNCw0LfQvdC4INC30L3QsNGG0LgpLCAiCisi4oCeYWxsb3ctaW5kZW50YXRpb24tY2hhbmdl4oCcICjQv9C+0LfQstC+0LvRj9Cy0LDQvdC1INC90LAg0L/RgNC+0LzQtdC90LjRgtC1INCyINC/0YDQsNC30L3QuNGC0LUg0LfQvdCw0YbQuCDQt9CwICIKKyLRhNC+0YDQvNCw0YLQuNGA0LDQvdC1KSIKIAotIzogZGlmZi5jOjM5NAorIzogZGlmZi5jOjMzMgorbXNnaWQgIiIKKyJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyICIKKyJ3aGl0ZXNwYWNlIG1vZGVzIgorbXNnc3RyICIiCisi4oCeY29sb3ItbW92ZWQtd3PigJw6IOKAnmFsbG93LWluZGVudGF0aW9uLWNoYW5nZeKAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg0LTRgNGD0LPQuNGC0LUg0YDQtdC20LjQvNC4ICIKKyLQt9CwINC/0YDQsNC30L3QuCDQt9C90LDRhtC4IgorCisjOiBkaWZmLmM6NDA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gdmFsdWUgZm9yICdkaWZmLnN1Ym1vZHVsZScgY29uZmlnIHZhcmlhYmxlOiAnJXMnIgogbXNnc3RyICLQndC10L/QvtC30L3QsNGC0LAg0YHRgtC+0LnQvdC+0YHRgiDigJ4lc+KAnCDQt9CwINC90LDRgdGC0YDQvtC50LrQsNGC0LAg4oCeZGlmZi5zdWJtb2R1bGXigJwiCiAKLSM6IGRpZmYuYzo0NTQKKyM6IGRpZmYuYzo0NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkZvdW5kIGVycm9ycyBpbiAnZGlmZi5kaXJzdGF0JyBjb25maWcgdmFyaWFibGU6XG4iCkBAIC0yMzk4LDI3ICszMzQyLDM4IEBACiAi0JPRgNC10YjQutC4INCyINC90LDRgdGC0YDQvtC50LrQsNGC0LAg4oCeZGlmZi5kaXJzdGF04oCcOlxuIgogIiVzIgogCi0jOiBkaWZmLmM6NDE0MAorIzogZGlmZi5jOjQyMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZGlmZiBkaWVkLCBzdG9wcGluZyBhdCAlcyIKIG1zZ3N0ciAiIgogItCy0YrQvdGI0L3QsNGC0LAg0L/RgNC+0LPRgNCw0LzQsCDQt9CwINGA0LDQt9C70LjQutC4INC30LDQstGK0YDRiNC4INC90LXRg9GB0L/QtdGI0L3Qvi4gINCh0L/QuNGA0LDQvdC1INC90LAg0YDQsNCx0L7RgtCw0YLQsCDQv9GA0Lgg4oCeJXPigJwiCiAKLSM6IGRpZmYuYzo0NDgyCisjOiBkaWZmLmM6NDU0NwogbXNnaWQgIi0tbmFtZS1vbmx5LCAtLW5hbWUtc3RhdHVzLCAtLWNoZWNrIGFuZCAtcyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICIiCiAi0J7Qv9GG0LjQuNGC0LUg4oCeLS1uYW1lLW9ubHnigJwsIOKAni0tbmFtZS1zdGF0dXPigJwsIOKAni0tY2hlY2vigJwg0Lgg4oCeLXPigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LggIgogItC10LTQvdCwINGBINC00YDRg9Cz0LAiCiAKLSM6IGRpZmYuYzo0NDg1CisjOiBkaWZmLmM6NDU1MAogbXNnaWQgIi1HLCAtUyBhbmQgLS1maW5kLW9iamVjdCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICLQntC/0YbQuNC40YLQtSDigJ4tR+KAnCwg4oCeLVPigJwg0Lgg4oCeLS1maW5kLW9iamVjdOKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCDQtdC00L3QsCDRgSDQtNGA0YPQs9CwIgogCi0jOiBkaWZmLmM6NDU2MworIzogZGlmZi5jOjQ2MjgKIG1zZ2lkICItLWZvbGxvdyByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXRoc3BlYyIKIG1zZ3N0ciAi0J7Qv9GG0LjRj9GC0LAg4oCeLS1mb2xsb3figJwg0LjQt9C40YHQutCy0LAg0YLQvtGH0L3QviDQtdC00LjQvSDQv9GK0YIiCiAKLSM6IGRpZmYuYzo0NzI5CisjOiBkaWZmLmM6NDY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIC0tc3RhdCB2YWx1ZTogJXMiCittc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCDigJ4tLXN0YXTigJw6ICVzIgorCisjOiBkaWZmLmM6NDY4MSBkaWZmLmM6NDY4NiBkaWZmLmM6NDY5MSBkaWZmLmM6NDY5NiBkaWZmLmM6NTIwOQorIzogcGFyc2Utb3B0aW9ucy5jOjE5NyBwYXJzZS1vcHRpb25zLmM6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCittc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAniVz4oCcINC+0YfQsNC60LLQsCDRh9C40YHQu9C+INC30LAg0LDRgNCz0YPQvNC10L3RgiIKKworIzogZGlmZi5jOjQ3MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkZhaWxlZCB0byBwYXJzZSAtLWRpcnN0YXQvLVggb3B0aW9uIHBhcmFtZXRlcjpcbiIKQEAgLTI0MjcsNjMgKzMzODIsNTg0IEBACiAi0J3QtdGA0LDQt9C/0L7Qt9C90LDRgiDQv9Cw0YDQsNC80LXRgtGK0YAg0LrRitC8INC+0L/RhtC40Y/RgtCwIOKAni0tZGlyc3RhdC8tWOKAnDpcbiIKICIlcyIKIAotIzogZGlmZi5jOjQ3NDMKKyM6IGRpZmYuYzo0Nzk4CiAjLCBjLWZvcm1hdAotbXNnaWQgIkZhaWxlZCB0byBwYXJzZSAtLXN1Ym1vZHVsZSBvcHRpb24gcGFyYW1ldGVyOiAnJXMnIgotbXNnc3RyICLQndC10YDQsNC30L/QvtC30L3QsNGCINC/0LDRgNCw0LzQtdGC0YrRgCDQutGK0Lwg0L7Qv9GG0LjRj9GC0LAg4oCeLS1zdWJtb2R1bGXigJw6IOKAniVz4oCcIgorbXNnaWQgInVua25vd24gY2hhbmdlIGNsYXNzICclYycgaW4gLS1kaWZmLWZpbHRlcj0lcyIKK21zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgiDQstC40LQg0L/RgNC+0LzRj9C90LA6IOKAniVj4oCcINCyIOKAni0tZGlmZi1maWx0ZXI9JXPigJwiCiAKLSM6IGRpZmYuYzo1ODIzCisjOiBkaWZmLmM6NDgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHZhbHVlIGFmdGVyIHdzLWVycm9yLWhpZ2hsaWdodD0lLipzIgorbXNnc3RyICLQvdC10L/QvtC30L3QsNGC0LAg0YHRgtC+0LnQvdC+0YHRgiDRgdC70LXQtCDigJ53cy1lcnJvci1oaWdobGlnaHQ9JS4qc+KAnCIKKworIzogZGlmZi5jOjQ4MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgJyVzJyIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7RgtC60YDQuNC1IgorCisjOiBkaWZmLmM6NDg4NiBkaWZmLmM6NDg5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIDxuPi88bT4gZm9ybSIKK21zZ3N0ciAiIgorItC+0L/RhtC40Y/RgtCwIOKAniVz4oCcINC40LfQuNGB0LrQstCwINGB0YLQvtC50L3QvtGB0YLQuCDQt9CwINCc0JjQndCY0JzQkNCb0JXQnV8lJV/Qn9Cg0J7QnNCv0J3QkF/Ql9CQX9CY0JfQotCe0KfQndCY0JpfLyIKKyLQnNCQ0JrQodCY0JzQkNCb0JXQnV8lJV/Qn9Cg0J7QnNCv0J3QkF/Ql9CQX9CX0JDQnNCv0J3QkCDQvtGCIgorCisjOiBkaWZmLmM6NDkwNAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIGEgY2hhcmFjdGVyLCBnb3QgJyVzJyIKK21zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeJXPigJwg0LjQt9C40YHQutCy0LAg0LfQvdCw0LosINCwINC90LU6IOKAniVz4oCcIgorCisjOiBkaWZmLmM6NDkyNQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS1jb2xvci1tb3ZlZCBhcmd1bWVudDogJXMiCittc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INCw0YDQs9GD0LzQtdC90YIg0LfQsCDigJ4tLWNvbG9yLW1vdmVk4oCcOiDigJ4lc+KAnCIKKworIzogZGlmZi5jOjQ5NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBtb2RlICclcycgaW4gLS1jb2xvci1tb3ZlZC13cyIKK21zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0YDQtdC20LjQvCDigJ4lc+KAnCDQt9CwIOKAniAtLWNvbG9yLW1vdmVkLXdz4oCcIgorCisjOiBkaWZmLmM6NDk4NAorbXNnaWQgIiIKKyJvcHRpb24gZGlmZi1hbGdvcml0aG0gYWNjZXB0cyBcIm15ZXJzXCIsIFwibWluaW1hbFwiLCBcInBhdGllbmNlXCIgYW5kICIKKyJcImhpc3RvZ3JhbVwiIgorbXNnc3RyICIiCisi0L7Qv9GG0LjRj9GC0LAg0L/RgNC40LXQvNCwINGB0LvQtdC00L3QuNGC0LUg0LLQsNGA0LjQsNC90YLQuCDQt9CwINCw0LvQs9C+0YDQuNGC0YrQvCDQt9CwINGA0LDQt9C70LjQutC4OiDigJ5teWVyc+KAnCAo0L/QviAiCisi0JzQsNC50LXRgNGBKSwg4oCebWluaW1hbOKAnCAo0LzQuNC90LjQvNC40LfQuNGA0LDQvdC1INC90LAg0YDQsNC30LvQuNC60LjRgtC1KSwg4oCecGF0aWVuY2XigJwgKNC/0LDRgdC40LDQvdGBKSDQuCAiCisi4oCeaGlzdG9ncmFt4oCcICjRhdC40YHRgtC+0LPRgNCw0LzQtdC9KSIKKworIzogZGlmZi5jOjUwMjAgZGlmZi5jOjUwNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBhcmd1bWVudCB0byAlcyIKK21zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0LDRgNCz0YPQvNC10L3RgiDQutGK0Lwg4oCeJXPigJwiCisKKyM6IGRpZmYuYzo1MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSAtLXN1Ym1vZHVsZSBvcHRpb24gcGFyYW1ldGVyOiAnJXMnIgorbXNnc3RyICLQvdC10YDQsNC30L/QvtC30L3QsNGCINC/0LDRgNCw0LzQtdGC0YrRgCDQutGK0Lwg0L7Qv9GG0LjRj9GC0LAg4oCeLS1zdWJtb2R1bGXigJw6IOKAniVz4oCcIgorCisjOiBkaWZmLmM6NTIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS13b3JkLWRpZmYgYXJndW1lbnQ6ICVzIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQsNGA0LPRg9C80LXQvdGCINC60YrQvCDigJ4tLXdvcmQtZGlmZuKAnDog4oCeJXPigJwiCisKKyM6IGRpZmYuYzo1MjU3Cittc2dpZCAiRGlmZiBvdXRwdXQgZm9ybWF0IG9wdGlvbnMiCittc2dzdHIgItCk0L7RgNC80LDRgiDQvdCwINC40LfRhdC+0LTQsCDQt9CwINGA0LDQt9C70LjQutC40YLQtSIKKworIzogZGlmZi5jOjUyNTkgZGlmZi5jOjUyNjUKK21zZ2lkICJnZW5lcmF0ZSBwYXRjaCIKK21zZ3N0ciAi0YHRitC30LTQsNCy0LDQvdC1INC90LAg0LrRgNGK0L/QutC4IgorCisjOiBkaWZmLmM6NTI2MiBidWlsdGluL2xvZy5jOjE3MworbXNnaWQgInN1cHByZXNzIGRpZmYgb3V0cHV0IgorbXNnc3RyICLQsdC10Lcg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YDQsNC30LvQuNC60LjRgtC1IgorCisjOiBkaWZmLmM6NTI2NyBkaWZmLmM6NTM4MSBkaWZmLmM6NTM4OAorbXNnaWQgIjxuPiIKK21zZ3N0ciAi0JHQoNCe0JkiCisKKyM6IGRpZmYuYzo1MjY4IGRpZmYuYzo1MjcxCittc2dpZCAiZ2VuZXJhdGUgZGlmZnMgd2l0aCA8bj4gbGluZXMgY29udGV4dCIKK21zZ3N0ciAi0YTQsNC50LvQvtCy0LXRgtC1INGBINGA0LDQt9C70LjQutC4INC00LAg0YHQsCDRgSDQutC+0L3RgtC10LrRgdGCINGBINGC0LDQutGK0LIg0JHQoNCe0Jkg0YDQtdC00L7QstC1IgorCisjOiBkaWZmLmM6NTI3MworbXNnaWQgImdlbmVyYXRlIHRoZSBkaWZmIGluIHJhdyBmb3JtYXQiCittc2dzdHIgItGE0LDQudC70L7QstC10YLQtSDRgSDRgNCw0LfQu9C40LrQuCDQtNCwINGB0LAg0LIg0YHRg9GA0L7QsiDRhNC+0YDQvNCw0YIiCisKKyM6IGRpZmYuYzo1Mjc2Cittc2dpZCAic3lub255bSBmb3IgJy1wIC0tcmF3JyIKK21zZ3N0ciAi0L/RgdC10LLQtNC+0L3QuNC8INC90LAg4oCeLXAgLS1zdGF04oCcIgorCisjOiBkaWZmLmM6NTI4MAorbXNnaWQgInN5bm9ueW0gZm9yICctcCAtLXN0YXQnIgorbXNnc3RyICLQv9GB0LXQstC00L7QvdC40Lwg0L3QsCDigJ4tcCAtLXN0YXTigJwiCisKKyM6IGRpZmYuYzo1Mjg0Cittc2dpZCAibWFjaGluZSBmcmllbmRseSAtLXN0YXQiCittc2dzdHIgIuKAni0tc3RhdOKAnCDQstGK0LIg0YTQvtGA0LzQsNGCINC30LAg0YfQtdGC0LXQvdC1INC+0YIg0L/RgNC+0LPRgNCw0LzQsCIKKworIzogZGlmZi5jOjUyODcKK21zZ2lkICJvdXRwdXQgb25seSB0aGUgbGFzdCBsaW5lIG9mIC0tc3RhdCIKK21zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INGB0LDQvNC+INC90LAg0L/QvtGB0LvQtdC00L3QuNGPINGA0LXQtCDQvdCwIOKAni0tc3RhdOKAnCIKKworIzogZGlmZi5jOjUyODkgZGlmZi5jOjUyOTcKK21zZ2lkICI8cGFyYW0xLHBhcmFtMj4uLi4iCittc2dzdHIgItCf0JDQoNCQ0JzQldCi0KrQoF8xLCDQn9CQ0KDQkNCc0JXQotCq0KBfMiwg4oCmIgorCisjOiBkaWZmLmM6NTI5MAorbXNnaWQgIiIKKyJvdXRwdXQgdGhlIGRpc3RyaWJ1dGlvbiBvZiByZWxhdGl2ZSBhbW91bnQgb2YgY2hhbmdlcyBmb3IgZWFjaCBzdWItZGlyZWN0b3J5IgorbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRgNCw0LfQv9GA0LXQtNC10LvQtdC90LjQtdGC0L4g0L3QsCDQv9GA0L7QvNC10L3QuNGC0LUg0LfQsCDQstGB0Y/QutCwINC/0L7QtNC00LjRgNC10LrRgtC+0YDQuNGPIgorCisjOiBkaWZmLmM6NTI5NAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1jdW11bGF0aXZlIgorbXNnc3RyICLQv9GB0LXQstC00L7QvdC40Lwg0L3QsCDigJ4tLWRpcnN0YXQ9Y3VtdWxhdGl2ZeKAnCIKKworIzogZGlmZi5jOjUyOTgKK21zZ2lkICJzeW5vbnltIGZvciAtLWRpcnN0YXQ9ZmlsZXMscGFyYW0xLHBhcmFtMi4uLiIKK21zZ3N0ciAi0L/RgdC10LLQtNC+0L3QuNC8INC90LAg4oCeLS1kaXJzdGF0PdCk0JDQmdCb0J7QktCVLNCf0JDQoNCQ0JzQldCi0KrQoF8xLNCf0JDQoNCQ0JzQldCi0KrQoF8yLOKApuKAnCIKKworIzogZGlmZi5jOjUzMDIKK21zZ2lkICJ3YXJuIGlmIGNoYW5nZXMgaW50cm9kdWNlIGNvbmZsaWN0IG1hcmtlcnMgb3Igd2hpdGVzcGFjZSBlcnJvcnMiCittc2dzdHIgIiIKKyLQv9GA0LXQtNGD0L/RgNC10LbQtNCw0LLQsNC90LUsINCw0LrQviDQv9GA0L7QvNC10L3QuNGC0LUg0LLQvtC00Y/RgiDQtNC+INC80LDRgNC60LXRgNC4INC30LAg0LrQvtC90YTQu9C40LrRgiDQuNC70Lgg0LPRgNC10YjQutC4INCyICIKKyLQv9GA0LDQt9C90LjRgtC1INC30L3QsNGG0LgiCisKKyM6IGRpZmYuYzo1MzA1Cittc2dpZCAiY29uZGVuc2VkIHN1bW1hcnkgc3VjaCBhcyBjcmVhdGlvbnMsIHJlbmFtZXMgYW5kIG1vZGUgY2hhbmdlcyIKK21zZ3N0ciAiIgorItGB0YrQutGA0LDRgtC10L3QviDRgNC10LfRjtC80LUg0L3QsCDRgdGK0LfQtNCw0LTQtdC90LjRgtC1LCDQv9GA0LXQuNC80LXQvdGD0LLQsNC90LjRgtC1INC4INGE0LDQudC70L7QstC10YLQtSDRgSDQv9GA0L7QvNGP0L3QsCDQvdCwICIKKyLRgNC10LbQuNC80LAg0L3QsCDQtNC+0YHRgtGK0L8iCisKKyM6IGRpZmYuYzo1MzA4Cittc2dpZCAic2hvdyBvbmx5IG5hbWVzIG9mIGNoYW5nZWQgZmlsZXMiCittc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDRgdCw0LzQviDQvdCwINC40LzQtdC90LDRgtCwINC90LAg0L/RgNC+0LzQtdC90LXQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSIKKworIzogZGlmZi5jOjUzMTEKK21zZ2lkICJzaG93IG9ubHkgbmFtZXMgYW5kIHN0YXR1cyBvZiBjaGFuZ2VkIGZpbGVzIgorbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0YHQsNC80L4g0L3QsCDQuNC80LXQvdCw0YLQsCDQuCDRgdGC0LDRgtC40YHRgtC40LrQsNGC0LAg0LfQsCDQv9GA0L7QvNC10L3QtdC90LjRgtC1INGE0LDQudC70L7QstC1IgorCisjOiBkaWZmLmM6NTMxMworbXNnaWQgIjx3aWR0aD5bLDxuYW1lLXdpZHRoPlssPGNvdW50Pl1dIgorbXNnc3RyICLQqNCY0KDQntCn0JjQndCQWyzQmNCc0JUt0KjQmNCg0J7Qp9CY0J3QkFss0JHQoNCe0JldXSIKKworIzogZGlmZi5jOjUzMTQKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCIKK21zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHRgtCw0YLQuNGB0YLQuNC60LAg0LfQsCDQv9GA0L7QvNC10L3QuNGC0LUiCisKKyM6IGRpZmYuYzo1MzE2IGRpZmYuYzo1MzE5IGRpZmYuYzo1MzIyCittc2dpZCAiPHdpZHRoPiIKK21zZ3N0ciAi0KjQmNCg0J7Qp9CY0J3QkCIKKworIzogZGlmZi5jOjUzMTcKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGEgZ2l2ZW4gd2lkdGgiCittc2dzdHIgItGB0YLQsNGC0LjRgdGC0LjQutCwINGBINGC0LDQutCw0LLQsCDQqNCY0KDQntCn0JjQndCQINC30LAg0L/RgNC+0LzQtdC90LjRgtC1IgorCisjOiBkaWZmLmM6NTMyMAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBuYW1lIHdpZHRoIgorbXNnc3RyICLRgdGC0LDRgtC40YHRgtC40LrQsCDQt9CwINC/0YDQvtC80LXQvdC40YLQtSDRgSDRgtCw0LrQsNCy0LAg0KjQmNCg0J7Qp9CY0J3QkCDQvdCwINC40LzQtdC90LDRgtCwIgorCisjOiBkaWZmLmM6NTMyMworbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBncmFwaCB3aWR0aCIKK21zZ3N0ciAi0YHRgtCw0YLQuNGB0YLQuNC60LAg0LfQsCDQv9GA0L7QvNC10L3QuNGC0LUg0YEg0YLQsNC60LDQstCwINCo0JjQoNCe0KfQmNCd0JAg0L3QsCDQs9GA0LDMgNGE0LAiCisKKyM6IGRpZmYuYzo1MzI1Cittc2dpZCAiPGNvdW50PiIKK21zZ3N0ciAi0JHQoNCe0JkiCisKKyM6IGRpZmYuYzo1MzI2Cittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBsaW1pdGVkIGxpbmVzIgorbXNnc3RyICLQvtCz0YDQsNC90LjRh9Cw0LLQsNC90LUg0L3QsCDQkdCg0J7RjyDQvdCwINGA0LXQtNC+0LLQtdGC0LUg0LIg0YHRgtCw0YLQuNGB0YLQuNC60LDRgtCwINC30LAg0L/RgNC+0LzQtdC90LjRgtC1IgorCisjOiBkaWZmLmM6NTMyOQorbXNnaWQgImdlbmVyYXRlIGNvbXBhY3Qgc3VtbWFyeSBpbiBkaWZmc3RhdCIKK21zZ3N0ciAi0LrRgNCw0YLQutC+INGA0LXQt9GO0LzQtSDQsiDRgdGC0LDRgtC40YHRgtC40LrQsNGC0LAg0LfQsCDQv9GA0L7QvNC10L3QuNGC0LUiCisKKyM6IGRpZmYuYzo1MzMyCittc2dpZCAib3V0cHV0IGEgYmluYXJ5IGRpZmYgdGhhdCBjYW4gYmUgYXBwbGllZCIKK21zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LTQstC+0LjRh9C90LAg0YDQsNC30LvQuNC60LAg0LLRitCyINCy0LjQtCDQt9CwINC/0YDQuNC70LDQs9Cw0L3QtSIKKworIzogZGlmZi5jOjUzMzUKK21zZ2lkICJzaG93IGZ1bGwgcHJlLSBhbmQgcG9zdC1pbWFnZSBvYmplY3QgbmFtZXMgb24gdGhlIFwiaW5kZXhcIiBsaW5lcyIKK21zZ3N0ciAiIgorItC/0L7QutCw0LfQstCw0L3QtSDQvdCwINC/0YrQu9C90LjRgtC1INC40LzQtdC90LAg0L3QsCDQvtCx0LXQutGC0Lgg0LIg0YDQtdC00L7QstC10YLQtSDQt9CwINC40L3QtNC10LrRgdCwINC/0YDQuCDQstCw0YDQuNCw0L3RgtC40YLQtSAiCisi0L/RgNC10LTQuCDQuCDRgdC70LXQtCDQv9GA0L7QvNGP0L3QsNGC0LAiCisKKyM6IGRpZmYuYzo1MzM3Cittc2dpZCAic2hvdyBjb2xvcmVkIGRpZmYiCittc2dzdHIgItGA0LDQt9C70LjQutC4INCyINGG0LLRj9GCIgorCisjOiBkaWZmLmM6NTMzOAorbXNnaWQgIjxraW5kPiIKK21zZ3N0ciAi0JLQmNCUIgorCisjOiBkaWZmLmM6NTMzOQorbXNnaWQgIiIKKyJoaWdobGlnaHQgd2hpdGVzcGFjZSBlcnJvcnMgaW4gdGhlICdjb250ZXh0JywgJ29sZCcgb3IgJ25ldycgbGluZXMgaW4gdGhlICIKKyJkaWZmIgorbXNnc3RyICIiCisi0LPRgNC10YjQutC40YLQtSDQsiDQv9GA0LDQt9C90LjRgtC1INC30L3QsNGG0Lgg0LTQsCDRgdC1INGD0LrQsNC30LLQsNGCINCyINGA0LXQtNC+0LLQtdGC0LUg0LfQsCDQutC+0L3RgtC10LrRgdGC0LAsINCy0LDRgNC40LDQvdGC0LjRgtC1ICIKKyLQv9GA0LXQtNC4INC4INGB0LvQtdC0INGA0LDQt9C70LjQutCw0YLQsCwiCisKKyM6IGRpZmYuYzo1MzQyCittc2dpZCAiIgorImRvIG5vdCBtdW5nZSBwYXRobmFtZXMgYW5kIHVzZSBOVUxzIGFzIG91dHB1dCBmaWVsZCB0ZXJtaW5hdG9ycyBpbiAtLXJhdyBvciAiCisiLS1udW1zdGF0IgorbXNnc3RyICIiCisi0LHQtdC3INC/0YDQtdC40LzQtdC90YPQstCw0L3QtSDQvdCwINC/0YrRgtC40YnQsNGC0LAuICDQlNCwINGB0LUg0LjQt9C/0L7Qu9C30LLQsNGCINC90YPQu9C10LLQuCDQsdCw0LnRgtC+0LLQtSDQt9CwINGA0LDQt9C00LXQu9C40YLQtdC70LggIgorItC90LAg0L/QvtC70LXRgtCwINCyINC40LfRhdC+0LTQsCDQv9GA0Lgg0L/QvtC70LfQstCw0L3QtSDQvdCwINC+0L/RhtC40Y/RgtCwIOKAni0tcmF34oCcINC40LvQuCDigJ4tLW51bXN0YXTigJwiCisKKyM6IGRpZmYuYzo1MzQ1IGRpZmYuYzo1MzQ4IGRpZmYuYzo1MzUxIGRpZmYuYzo1NDU3Cittc2dpZCAiPHByZWZpeD4iCittc2dzdHIgItCf0KDQldCk0JjQmtChIgorCisjOiBkaWZmLmM6NTM0NgorbXNnaWQgInNob3cgdGhlIGdpdmVuIHNvdXJjZSBwcmVmaXggaW5zdGVhZCBvZiBcImEvXCIiCittc2dzdHIgItC/0YDQtdGE0LjQutGBINCy0LzQtdGB0YLQviDigJ5hL+KAnCDQt9CwINC40LfRgtC+0YfQvdC40LoiCisKKyM6IGRpZmYuYzo1MzQ5Cittc2dpZCAic2hvdyB0aGUgZ2l2ZW4gZGVzdGluYXRpb24gcHJlZml4IGluc3RlYWQgb2YgXCJiL1wiIgorbXNnc3RyICLQv9GA0LXRhNC40LrRgSDQstC80LXRgdGC0L4g4oCeYi/igJwg0LfQsCDRhtC10LsiCisKKyM6IGRpZmYuYzo1MzUyCittc2dpZCAicHJlcGVuZCBhbiBhZGRpdGlvbmFsIHByZWZpeCB0byBldmVyeSBsaW5lIG9mIG91dHB1dCIKK21zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINC00L7Qv9GK0LvQvdC40YLQtdC70LXQvSDQv9GA0LXRhNC40LrRgSDQt9CwINCy0YHQtdC60Lgg0YDQtdC0INC90LAg0LjQt9GF0L7QtNCwIgorCisjOiBkaWZmLmM6NTM1NQorbXNnaWQgImRvIG5vdCBzaG93IGFueSBzb3VyY2Ugb3IgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICLQsdC10Lcg0L/RgNC10YTQuNC60YEg0LfQsCDQuNC30YLQvtGH0L3QuNC60LAg0Lgg0YbQtdC70YLQsCIKKworIzogZGlmZi5jOjUzNTgKK21zZ2lkICJzaG93IGNvbnRleHQgYmV0d2VlbiBkaWZmIGh1bmtzIHVwIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGxpbmVzIgorbXNnc3RyICIiCisi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LrQvtC90YLQtdC60YHRgiDQvNC10LbQtNGDINC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9C90LjRgtC1INC/0LDRgNGH0LXRgtCwINGBINGA0LDQt9C70LjQutC4INC+0YIg0YPQutCw0LfQsNC90LjRjyAiCisi0JHQoNCe0Jkg0YDQtdC00L7QstC1IgorCisjOiBkaWZmLmM6NTM2MiBkaWZmLmM6NTM2NyBkaWZmLmM6NTM3MgorbXNnaWQgIjxjaGFyPiIKK21zZ3N0ciAi0JfQndCQ0JoiCisKKyM6IGRpZmYuYzo1MzYzCittc2dpZCAic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGEgbmV3IGxpbmUgaW5zdGVhZCBvZiAnKyciCittc2dzdHIgItC30L3QsNC6INCy0LzQtdGB0YLQviDigJ4r4oCcINC30LAg0L3QvtCyINCy0LDRgNC40LDQvdGCINC90LAg0YDQtdC0IgorCisjOiBkaWZmLmM6NTM2OAorbXNnaWQgInNwZWNpZnkgdGhlIGNoYXJhY3RlciB0byBpbmRpY2F0ZSBhbiBvbGQgbGluZSBpbnN0ZWFkIG9mICctJyIKK21zZ3N0ciAi0LfQvdCw0Log0LLQvNC10YHRgtC+IOKAni3igJwg0LfQsCDRgdGC0LDRgCDQstCw0YDQuNCw0L3RgiDQvdCwINGA0LXQtCIKKworIzogZGlmZi5jOjUzNzMKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBjb250ZXh0IGluc3RlYWQgb2YgJyAnIgorbXNnc3RyICLQt9C90LDQuiDQstC80LXRgdGC0L4g4oCeIOKAnCDQt9CwINC60L7QvdGC0LXQutGB0YIiCisKKyM6IGRpZmYuYzo1Mzc2Cittc2dpZCAiRGlmZiByZW5hbWUgb3B0aW9ucyIKK21zZ3N0ciAi0J3QsNGB0YLRgNC+0LnQutC4INC30LAg0YDQsNC30LvQuNC60Lgg0YEg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1IgorCisjOiBkaWZmLmM6NTM3NworbXNnaWQgIjxuPlsvPG0+XSIKK21zZ3N0ciAi0JzQmNCd0JjQnNCQ0JvQldCdXyVf0J/QoNCe0JzQr9Cd0JBf0JfQkF/QmNCX0KLQntCn0J3QmNCaWy/QnNCQ0JrQodCY0JzQkNCbRdCdXyVf0J/QoNCe0JzQr9Cd0JBf0JfQkF/Ql9CQ0JzQr9Cd0JBdIgorCisjOiBkaWZmLmM6NTM3OAorbXNnaWQgImJyZWFrIGNvbXBsZXRlIHJld3JpdGUgY2hhbmdlcyBpbnRvIHBhaXJzIG9mIGRlbGV0ZSBhbmQgY3JlYXRlIgorbXNnc3RyICIiCisi0LfQsNC80LXRgdGC0LLQsNC90LUg0L3QsCDQv9GK0LvQvdC40YLQtSDQv9GA0L7QvNC10L3QuCDRgSDQv9C+0YHQu9C10LTQvtCy0LDRgtC10LvQvdC+0YHRgiDQvtGCINC40LfRgtGA0LjQstCw0L3QtSDQuCDRgdGK0LfQtNCw0LLQsNC90LUiCisKKyM6IGRpZmYuYzo1MzgyCittc2dpZCAiZGV0ZWN0IHJlbmFtZXMiCittc2dzdHIgItC30LDRgdC40YfQsNC90LUg0L3QsCDQv9GA0LXQuNC80LXQvdGD0LLQsNC90LjRj9GC0LAiCisKKyM6IGRpZmYuYzo1Mzg2Cittc2dpZCAib21pdCB0aGUgcHJlaW1hZ2UgZm9yIGRlbGV0ZXMiCittc2dzdHIgItCx0LXQtyDQv9GA0LXQtNCy0LDRgNC40YLQtdC70LXQvSDQstCw0YDQuNCw0L3RgiDQv9GA0Lgg0LjQt9GC0YDQuNCy0LDQvdC1IgorCisjOiBkaWZmLmM6NTM4OQorbXNnaWQgImRldGVjdCBjb3BpZXMiCittc2dzdHIgItC30LDRgdC40YfQsNC90LUg0L3QsCDQutC+0L/QuNGA0LDQvdC40Y/RgtCwIgorCisjOiBkaWZmLmM6NTM5MworbXNnaWQgInVzZSB1bm1vZGlmaWVkIGZpbGVzIGFzIHNvdXJjZSB0byBmaW5kIGNvcGllcyIKK21zZ3N0ciAi0YLRitGA0YHQtdC90LUg0L3QsCDQutC+0L/QuNGA0LDQvdC+INC4INC+0YIg0L3QtdC/0YDQvtC80LXQvdC10L3QuNGC0LUg0YTQsNC50LvQvtCy0LUiCisKKyM6IGRpZmYuYzo1Mzk1Cittc2dpZCAiZGlzYWJsZSByZW5hbWUgZGV0ZWN0aW9uIgorbXNnc3RyICLQsdC10Lcg0YLRitGA0YHQtdC90LUg0L3QsCDQv9GA0LXQuNC80LXQvdGD0LLQsNC90LjRjyIKKworIzogZGlmZi5jOjUzOTgKK21zZ2lkICJ1c2UgZW1wdHkgYmxvYnMgYXMgcmVuYW1lIHNvdXJjZSIKK21zZ3N0ciAi0L/RgNCw0LfQvdC4INC+0LHQtdC60YLQuCDQutCw0YLQviDQuNC30YLQvtGH0L3QuNC6INC/0YDQuCDQv9GA0LXQuNC80LXQvdGD0LLQsNC90LjRjyIKKworIzogZGlmZi5jOjU0MDAKK21zZ2lkICJjb250aW51ZSBsaXN0aW5nIHRoZSBoaXN0b3J5IG9mIGEgZmlsZSBiZXlvbmQgcmVuYW1lcyIKK21zZ3N0ciAiIgorItC/0YDQvtC00YrQu9C20LDQstCw0L3QtSDQvdCwINC40LfQstC10LbQtNCw0L3QtdGC0L4g0L3QsCDQuNGB0YLQvtGA0LjRj9GC0LAg4oCUINCx0LXQtyDQvtGC0YDRj9C30LLQsNC90LXRgtC+INC/0YDQuCDQv9GA0LXQuNC80LXQvdGD0LLQsNC90LjRjyAiCisi0L3QsCDRhNCw0LnQuyIKKworIzogZGlmZi5jOjU0MDMKK21zZ2lkICIiCisicHJldmVudCByZW5hbWUvY29weSBkZXRlY3Rpb24gaWYgdGhlIG51bWJlciBvZiByZW5hbWUvY29weSB0YXJnZXRzIGV4Y2VlZHMgIgorImdpdmVuIGxpbWl0IgorbXNnc3RyICIiCisi0LHQtdC3INC30LDRgdC40YfQsNC90LUg0L3QsCDQv9GA0LXQuNC80LXQvdGD0LLQsNC90LjRjy/QutC+0L/QuNGA0LDQvdC40Y8sINCw0LrQviDQsdGA0L7Rj9GCINC40Lwg0L3QsNC00LLQuNGI0LDQstCwINGC0LDQt9C4INGB0YLQvtC50L3QvtGB0YIiCisKKyM6IGRpZmYuYzo1NDA1Cittc2dpZCAiRGlmZiBhbGdvcml0aG0gb3B0aW9ucyIKK21zZ3N0ciAi0J7Qv9GG0LjQuCDQutGK0Lwg0LDQu9Cz0L7RgNC40YLRitC80LAg0LfQsCDRgNCw0LfQu9C40LrQuCIKKworIzogZGlmZi5jOjU0MDcKK21zZ2lkICJwcm9kdWNlIHRoZSBzbWFsbGVzdCBwb3NzaWJsZSBkaWZmIgorbXNnc3RyICLRgtGK0YDRgdC10L3QtSDQvdCwINCy0YrQt9C80L7QttC90L4g0L3QsNC5LdC80LDQu9C60LAg0YDQsNC30LvQuNC60LAiCisKKyM6IGRpZmYuYzo1NDEwCittc2dpZCAiaWdub3JlIHdoaXRlc3BhY2Ugd2hlbiBjb21wYXJpbmcgbGluZXMiCittc2dzdHIgItCx0LXQtyDQv9GA0L7QvNC10L3QuCDQsiDQv9GA0LDQt9C90LjRgtC1INC30L3QsNGG0Lgg0L/RgNC4INGB0YDQsNCy0L3Rj9Cy0LDQvdC1INC90LAg0YDQtdC00L7QstC1IgorCisjOiBkaWZmLmM6NTQxMworbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIGFtb3VudCBvZiB3aGl0ZXNwYWNlIgorbXNnc3RyICLQsdC10Lcg0L/RgNC+0LzQtdC90Lgg0LIg0L/RgNCw0LfQvdC40YLQtSDQt9C90LDRhtC4IgorCisjOiBkaWZmLmM6NTQxNgorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIHdoaXRlc3BhY2UgYXQgRU9MIgorbXNnc3RyICLQsdC10Lcg0L/RgNC+0LzQtdC90Lgg0LIg0L/RgNCw0LfQvdC40YLQtSDQt9C90LDRhtC4INCyINC60YDQsNGPINC90LAg0YDQtdC00L7QstC10YLQtSIKKworIzogZGlmZi5jOjU0MTkKK21zZ2lkICJpZ25vcmUgY2Fycmllci1yZXR1cm4gYXQgdGhlIGVuZCBvZiBsaW5lIgorbXNnc3RyICLQsdC10Lcg0L/RgNC+0LzQtdC90Lgg0LIg0LfQvdCw0YbQuNGC0LUg0LfQsCDQutGA0LDQuSDQvdCwINGA0LXQtCIKKworIzogZGlmZi5jOjU0MjIKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyB3aG9zZSBsaW5lcyBhcmUgYWxsIGJsYW5rIgorbXNnc3RyICLQsdC10Lcg0L/RgNC+0LzQtdC90Lgg0LIg0YDQtdC00L7QstC10YLQtSwg0LrQvtC40YLQviDRgdCwINC40LfRhtGP0LvQviDQvtGCINC/0YDQsNC30L3QuCDQt9C90LDRhtC4IgorCisjOiBkaWZmLmM6NTQyNQorbXNnaWQgImhldXJpc3RpYyB0byBzaGlmdCBkaWZmIGh1bmsgYm91bmRhcmllcyBmb3IgZWFzeSByZWFkaW5nIgorbXNnc3RyICIiCisi0LXQstGA0LjRgdGC0LjQutCwINC30LAg0L/RgNC10LzQtdGB0YLQstCw0L3QtSDQvdCwINCz0YDQsNC90LjRhtC40YLQtSDQvdCwINC/0LDRgNGH0LXRgtCw0YLQsCDQt9CwINGD0LvQtdGB0L3Rj9Cy0LDQvdC1INC90LAg0YfQtdGC0LXQvdC10YLQviIKKworIzogZGlmZi5jOjU0MjgKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcInBhdGllbmNlIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgItGA0LDQt9C70LjQutCwINGH0YDQtdC3INCw0LvQs9C+0YDQuNGC0YrQvCDQt9CwINC/0L7QtNGA0LXQtNCx0LAg0LrQsNGC0L4g0L/QsNGB0LjQsNC90YEiCisKKyM6IGRpZmYuYzo1NDMyCittc2dpZCAiZ2VuZXJhdGUgZGlmZiB1c2luZyB0aGUgXCJoaXN0b2dyYW0gZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAi0YDQsNC30LvQuNC60LAg0L/QviDRhdC40YHRgtC+0LPRgNCw0LzQvdC40Y8g0LDQu9Cz0L7RgNC40YLRitC8IgorCisjOiBkaWZmLmM6NTQzNAorbXNnaWQgIjxhbGdvcml0aG0+IgorbXNnc3RyICLQkNCb0JPQntCg0JjQotCq0JwiCisKKyM6IGRpZmYuYzo1NDM1Cittc2dpZCAiY2hvb3NlIGEgZGlmZiBhbGdvcml0aG0iCittc2dzdHIgItC40LfQsdC+0YAg0L3QsCDQkNCb0JPQntCg0JjQotCq0JzQsCDQt9CwINGA0LDQt9C70LjQutC4IgorCisjOiBkaWZmLmM6NTQzNworbXNnaWQgIjx0ZXh0PiIKK21zZ3N0ciAi0KLQldCa0KHQoiIKKworIzogZGlmZi5jOjU0MzgKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcImFuY2hvcmVkIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgItGA0LDQt9C70LjQutCwINGH0YDQtdC3INCw0LvQs9C+0YDQuNGC0YrQvNCwINGB0YrRgSDQt9Cw0LrQvtGC0LLRj9C90LUiCisKKyM6IGRpZmYuYzo1NDQwIGRpZmYuYzo1NDQ5IGRpZmYuYzo1NDUyCittc2dpZCAiPG1vZGU+IgorbXNnc3RyICLQoNCV0JbQmNCcIgorCisjOiBkaWZmLmM6NTQ0MQorbXNnaWQgInNob3cgd29yZCBkaWZmLCB1c2luZyA8bW9kZT4gdG8gZGVsaW1pdCBjaGFuZ2VkIHdvcmRzIgorbXNnc3RyICIiCisi0YDQsNC30LvQuNC60LAg0L/QviDQtNGD0LzQuCwg0LrQsNGC0L4g0YHQtSDQv9C+0LvQt9Cy0LAg0YLQvtC30Lgg0KDQldCW0JjQnCDQt9CwINC+0YLQtNC10LvRj9C90LXRgtC+INC90LAg0L/RgNC+0LzQtdC90LXQvdC40YLQtSDQtNGD0LzQuCIKKworIzogZGlmZi5jOjU0NDMgZGlmZi5jOjU0NDYgZGlmZi5jOjU0OTEKK21zZ2lkICI8cmVnZXg+IgorbXNnc3RyICLQoNCV0JPQo9Cb0K/QoNCV0J1f0JjQl9Cg0JDQlyIKKworIzogZGlmZi5jOjU0NDQKK21zZ2lkICJ1c2UgPHJlZ2V4PiB0byBkZWNpZGUgd2hhdCBhIHdvcmQgaXMiCittc2dzdHIgItCg0JXQk9Cj0JvQr9Cg0JXQnV/QmNCX0KDQkNCXINC30LAg0YDQsNC30LTQtdC70Y/QvdC1INC/0L4g0LTRg9C80LgiCisKKyM6IGRpZmYuYzo1NDQ3Cittc2dpZCAiZXF1aXZhbGVudCB0byAtLXdvcmQtZGlmZj1jb2xvciAtLXdvcmQtZGlmZi1yZWdleD08cmVnZXg+IgorbXNnc3RyICLQv9GB0LXQstC00L7QvdC40Lwg0L3QsCDigJ4tLXdvcmQtZGlmZj1jb2xvciAtLXdvcmQtZGlmZi1yZWdleD3QoNCV0JPQo9Cb0K/QoNCV0J1f0JjQl9Cg0JDQl+KAnCIKKworIzogZGlmZi5jOjU0NTAKK21zZ2lkICJtb3ZlZCBsaW5lcyBvZiBjb2RlIGFyZSBjb2xvcmVkIGRpZmZlcmVudGx5IgorbXNnc3RyICLRgNCw0LfQu9C40YfQtdC9INGG0LLRj9GCINC30LAg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L/RgNC10LzQtdGB0YLQtdC90LjRgtC1INGA0LXQtNC+0LLQtSIKKworIzogZGlmZi5jOjU0NTMKK21zZ2lkICJob3cgd2hpdGUgc3BhY2VzIGFyZSBpZ25vcmVkIGluIC0tY29sb3ItbW92ZWQiCittc2dzdHIgIiIKKyLRgNC10LbQuNC8INC30LAg0L/RgNC10YHQutCw0YfQsNC90LXRgtC+INC90LAg0L/RgNCw0LfQvdC40YLQtSDQt9C90LDRhtC4INC/0YDQuCDQt9Cw0LTQsNCy0LDQvdC10YLQviDQvdCwIOKAni0tY29sb3ItbW92ZWTigJwiCisKKyM6IGRpZmYuYzo1NDU2Cittc2dpZCAiT3RoZXIgZGlmZiBvcHRpb25zIgorbXNnc3RyICLQlNGA0YPQs9C4INC+0L/RhtC40Lgg0LfQsCDRgNCw0LfQu9C40LrQuCIKKworIzogZGlmZi5jOjU0NTgKK21zZ2lkICJ3aGVuIHJ1biBmcm9tIHN1YmRpciwgZXhjbHVkZSBjaGFuZ2VzIG91dHNpZGUgYW5kIHNob3cgcmVsYXRpdmUgcGF0aHMiCittc2dzdHIgIiIKKyLQv9GA0Lgg0LjQt9C/0YrQu9C90LXQvdC40LUg0L7RgiDQv9C+0LTQtNC40YDQtdC60YLQvtGA0LjRjyDQtNCwINGB0LUg0L/RgNC10L3QtdCx0YDQtdCz0LLQsNGCINGA0LDQt9C70LjQutC40YLQtSDQuNC30LLRitC9INC90LXRjyDQuCDQtNCwICIKKyLRgdC1INC/0L7Qu9C30LLQsNGCINC+0YLQvdC+0YHQuNGC0LXQu9C90Lgg0L/RitGC0LjRidCwIgorCisjOiBkaWZmLmM6NTQ2MgorbXNnaWQgInRyZWF0IGFsbCBmaWxlcyBhcyB0ZXh0IgorbXNnc3RyICLQvtCx0YDQsNCx0L7RgtC60LAg0L3QsCDQstGB0LjRh9C60Lgg0YTQsNC50LvQvtCy0LUg0LrQsNGC0L4g0YLQtdC60YHRgtC+0LLQuCIKKworIzogZGlmZi5jOjU0NjQKK21zZ2lkICJzd2FwIHR3byBpbnB1dHMsIHJldmVyc2UgdGhlIGRpZmYiCittc2dzdHIgItGA0LDQt9C80Y/QvdCwINC90LAg0LTQstCw0YLQsCDQstGF0L7QtNCwIOKAlCDQvtCx0YDRitGJ0LDQvdC1INC90LAg0YDQsNC30LvQuNC60LDRgtCwIgorCisjOiBkaWZmLmM6NTQ2NgorbXNnaWQgImV4aXQgd2l0aCAxIGlmIHRoZXJlIHdlcmUgZGlmZmVyZW5jZXMsIDAgb3RoZXJ3aXNlIgorbXNnc3RyICIiCisi0LfQsNCy0YrRgNGI0LLQsNC90LUg0YEg0LrQvtC0INC30LAg0YHRitGB0YLQvtGP0L3QuNC1IDEg0L/RgNC4INC90LDQu9C40YfQuNC10YLQviDQvdCwINGA0LDQt9C70LjQutC4LCDQsCDQsiDQv9GA0L7RgtC40LLQtdC9ICIKKyLRgdC70YPRh9Cw0Lkg4oCUINGBIDAiCisKKyM6IGRpZmYuYzo1NDY4Cittc2dpZCAiZGlzYWJsZSBhbGwgb3V0cHV0IG9mIHRoZSBwcm9ncmFtIgorbXNnc3RyICLQsdC10Lcg0LLRgdGP0LrQsNC60YrQsiDQuNC30YXQvtC0INC+0YIg0L/RgNC+0LPRgNCw0LzQsNGC0LAiCisKKyM6IGRpZmYuYzo1NDcwCittc2dpZCAiYWxsb3cgYW4gZXh0ZXJuYWwgZGlmZiBoZWxwZXIgdG8gYmUgZXhlY3V0ZWQiCittc2dzdHIgItC/0L7Qt9Cy0L7Qu9GP0LLQsNC90LUg0L3QsCDQuNC30L/RitC70L3QtdC90LjQtSDQvdCwINCy0YrQvdGI0L3QsCDQv9C+0LzQvtGJ0L3QsCDQv9GA0L7Qs9GA0LDQvNCwINC30LAg0YDQsNC30LvQuNC60LgiCisKKyM6IGRpZmYuYzo1NDcyCittc2dpZCAicnVuIGV4dGVybmFsIHRleHQgY29udmVyc2lvbiBmaWx0ZXJzIHdoZW4gY29tcGFyaW5nIGJpbmFyeSBmaWxlcyIKK21zZ3N0ciAiIgorItC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg0LLRitC90YjQvdC4INC/0YDQvtCz0YDQsNC80Lgt0YTQuNC70YLRgNC4INC/0YDQuCDRgdGA0LDQstC90LXQvdC40LXRgtC+INC90LAg0LTQstC+0LjRh9C90Lgg0YTQsNC50LvQvtCy0LUiCisKKyM6IGRpZmYuYzo1NDc0Cittc2dpZCAiPHdoZW4+IgorbXNnc3RyICLQmtCe0JPQkCIKKworIzogZGlmZi5jOjU0NzUKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyB0byBzdWJtb2R1bGVzIGluIHRoZSBkaWZmIGdlbmVyYXRpb24iCittc2dzdHIgItC40LPQvdC+0YDQuNGA0LDQvdC1INC90LAg0L/RgNC+0LzQtdC90LjRgtC1INCyINC/0L7QtNC80L7QtNGD0LvQuNGC0LUg0L/RgNC4INC40LfQstC10LbQtNCw0L3QtdGC0L4g0L3QsCDRgNCw0LfQu9C40LrQuNGC0LUiCisKKyM6IGRpZmYuYzo1NDc4Cittc2dpZCAiPGZvcm1hdD4iCittc2dzdHIgItCk0J7QoNCc0JDQoiIKKworIzogZGlmZi5jOjU0NzkKK21zZ2lkICJzcGVjaWZ5IGhvdyBkaWZmZXJlbmNlcyBpbiBzdWJtb2R1bGVzIGFyZSBzaG93biIKK21zZ3N0ciAi0L3QsNGH0LjQvSDQt9CwINC40LfQstC10LbQtNCw0L3QtSDQvdCwINC/0YDQvtC80LXQvdC40YLQtSDQsiDQv9C+0LTQvNC+0LTRg9C70LjRgtC1IgorCisjOiBkaWZmLmM6NTQ4MworbXNnaWQgImhpZGUgJ2dpdCBhZGQgLU4nIGVudHJpZXMgZnJvbSB0aGUgaW5kZXgiCittc2dzdHIgItCx0LXQtyDQstC60LvRjtGH0LLQsNC90LUg0LIg0LjQvdC00LXQutGB0LAg0L3QsCDQt9Cw0L/QuNGB0LjRgtC1LCDQtNC+0LHQsNCy0LXQvdC4INGBIOKAnmdpdCBhZGQgLU7igJwiCisKKyM6IGRpZmYuYzo1NDg2Cittc2dpZCAidHJlYXQgJ2dpdCBhZGQgLU4nIGVudHJpZXMgYXMgcmVhbCBpbiB0aGUgaW5kZXgiCittc2dzdHIgItCy0LrQu9GO0YfQstCw0L3QtSDQsiDQuNC90LTQtdC60YHQsCDQvdCwINC30LDQv9C40YHQuNGC0LUsINC00L7QsdCw0LLQtdC90Lgg0YEg4oCeZ2l0IGFkZCAtTuKAnCIKKworIzogZGlmZi5jOjU0ODgKK21zZ2lkICI8c3RyaW5nPiIKK21zZ3N0ciAi0J3QmNCXIgorCisjOiBkaWZmLmM6NTQ4OQorbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorInN0cmluZyIKK21zZ3N0ciAi0YLRitGA0YHQtdC90LUg0L3QsCDRgNCw0LfQu9C40LrQuCwg0LrQvtC40YLQviDQv9GA0L7QvNC10L3Rj9GCINCx0YDQvtGPINC90LAg0L/QvtGP0LLQsCDQvdCwINGD0LrQsNC30LDQvdC40YLQtSDQvdC40LfQvtCy0LUiCisKKyM6IGRpZmYuYzo1NDkyCittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisicmVnZXgiCittc2dzdHIgIiIKKyLRgtGK0YDRgdC10L3QtSDQvdCwINGA0LDQt9C70LjQutC4LCDQutC+0LjRgtC+INC/0YDQvtC80LXQvdGP0YIg0LHRgNC+0Y8g0L3QsCDQv9C+0Y/QstCwINC90LAg0L3QuNC30L7QstC10YLQtSwg0LrQvtC40YLQviDQvdCw0L/QsNGB0LLQsNGCICIKKyLQvdCwINGA0LXQs9GD0LvRj9GA0L3QuNGPINC40LfRgNCw0LciCisKKyM6IGRpZmYuYzo1NDk1Cittc2dpZCAic2hvdyBhbGwgY2hhbmdlcyBpbiB0aGUgY2hhbmdlc2V0IHdpdGggLVMgb3IgLUciCittc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINCy0YHQuNGH0LrQuCDQv9GA0L7QvNC10L3QuCDRgSDigJ4tR+KAnC/igJ4tU+KAnCIKKworIzogZGlmZi5jOjU0OTgKK21zZ2lkICJ0cmVhdCA8c3RyaW5nPiBpbiAtUyBhcyBleHRlbmRlZCBQT1NJWCByZWd1bGFyIGV4cHJlc3Npb24iCittc2dzdHIgItCd0JjQl9GK0YIg0LrRitC8IOKAni1T4oCcINC00LAg0YHQtSDRgtGK0LvQutGD0LLQsCDQutCw0YLQviDRgNCw0LfRiNC40YDQtdC9INGA0LXQs9GD0LvRj9GA0LXQvSDQuNC30YDQsNC3INC/0L4gUE9TSVgiCisKKyM6IGRpZmYuYzo1NTAxCittc2dpZCAiY29udHJvbCB0aGUgb3JkZXIgaW4gd2hpY2ggZmlsZXMgYXBwZWFyIGluIHRoZSBvdXRwdXQiCittc2dzdHIgItGD0L/RgNCw0LLQu9C10L3QuNC1INC90LAg0L/QvtC00YDQtdC00LHQsNGC0LAg0L3QsCDRhNCw0LnQu9C+0LLQtdGC0LUg0LIg0LjQt9GF0L7QtNCwIgorCisjOiBkaWZmLmM6NTUwMgorbXNnaWQgIjxvYmplY3QtaWQ+IgorbXNnc3RyICLQmNCU0JXQndCi0JjQpNCY0JrQkNCi0J7QoF/QndCQX9Ce0JHQldCa0KIiCisKKyM6IGRpZmYuYzo1NTAzCittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisib2JqZWN0IgorbXNnc3RyICLRgtGK0YDRgdC10L3QtSDQvdCwINGA0LDQt9C70LjQutC4LCDQutC+0LjRgtC+INC/0YDQvtC80LXQvdGP0YIg0LHRgNC+0Y8g0L3QsCDQv9C+0Y/QstCwINC90LAg0YPQutCw0LfQsNC90LjRjyDQvtCx0LXQutGCIgorCisjOiBkaWZmLmM6NTUwNQorbXNnaWQgIlsoQXxDfER8TXxSfFR8VXxYfEIpLi4uWypdXSIKK21zZ3N0ciAiWyhBfEN8RHxNfFJ8VHxVfFh8QinigKZbKl1dIgorCisjOiBkaWZmLmM6NTUwNgorbXNnaWQgInNlbGVjdCBmaWxlcyBieSBkaWZmIHR5cGUiCittc2dzdHIgItC40LfQsdC+0YAg0L3QsCDRhNCw0LnQu9C+0LLQtdGC0LUg0L/QviDQstC40LQg0YDQsNC30LvQuNC60LAiCisKKyM6IGRpZmYuYzo1NTA4Cittc2dpZCAiPGZpbGU+IgorbXNnc3RyICLQpNCQ0JnQmyIKKworIzogZGlmZi5jOjU1MDkKK21zZ2lkICJPdXRwdXQgdG8gYSBzcGVjaWZpYyBmaWxlIgorbXNnc3RyICLQmNC30YXQvtC0INC60YrQvCDRg9C60LDQt9Cw0L3QuNGPINGE0LDQudC7IgorCisjOiBkaWZmLmM6NjE2NAogbXNnaWQgImluZXhhY3QgcmVuYW1lIGRldGVjdGlvbiB3YXMgc2tpcHBlZCBkdWUgdG8gdG9vIG1hbnkgZmlsZXMuIgogbXNnc3RyICIiCiAi0YLRitGA0YHQtdC90LXRgtC+INC90LAg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC40Y8g0L3QsCDQvtCx0LXQutGC0Lgg0YHRitGH0LXRgtCw0L3QuCDRgSDQv9GA0L7QvNC10L3QuCDRgdC1INC/0YDQtdGB0LrQsNGH0LAg0L/QvtGA0LDQtNC4ICIKICLQvNC90L7Qs9C+0YLQviDRhNCw0LnQu9C+0LLQtS4iCiAKLSM6IGRpZmYuYzo1ODI2CisjOiBkaWZmLmM6NjE2NwogbXNnaWQgIm9ubHkgZm91bmQgY29waWVzIGZyb20gbW9kaWZpZWQgcGF0aHMgZHVlIHRvIHRvbyBtYW55IGZpbGVzLiIKIG1zZ3N0ciAiIgotItGD0YHRgtCw0L3QvtCy0LXQvdC4INGB0LAg0YLQvtGH0L3QuNGC0LUg0LrQvtC/0LjRjyDQvdCwINC/0YDQvtC80LXQvdC10L3QuNGC0LUg0L/RitGC0LjRidCwINC/0L7RgNCw0LTQuCDQvNC90L7Qs9C+0YLQviDRhNCw0LnQu9C+0LLQtS4iCisi0YPRgdGC0LDQvdC+0LLQtdC90Lgg0YHQsCDRgdCw0LzQviDRgtC+0YfQvdC40YLQtSDQutC+0L/QuNGPINC90LAg0L/RgNC+0LzQtdC90LXQvdC40YLQtSDQv9GK0YLQuNGJ0LAg0L/QvtGA0LDQtNC4INC80L3QvtCz0L7RgtC+ICIKKyLRhNCw0LnQu9C+0LLQtS4iCiAKLSM6IGRpZmYuYzo1ODI5CisjOiBkaWZmLmM6NjE3MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAieW91IG1heSB3YW50IHRvIHNldCB5b3VyICVzIHZhcmlhYmxlIHRvIGF0IGxlYXN0ICVkIGFuZCByZXRyeSB0aGUgY29tbWFuZC4iCiBtc2dzdHIgItC30LDQtNCw0LnRgtC1INC/0YDQvtC80LXQvdC70LjQstCw0YLQsCDigJ4lc+KAnCDQtNCwINC1INC/0L7QvdC1ICVkINC4INC+0YLQvdC+0LLQviDQuNC30L/RitC70L3QtdGC0LUg0LrQvtC80LDQvdC00LDRgtCwLiIKIAotIzogZGlyLmM6NTc2CisjOiBkaXIuYzo1NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlKHMpIGtub3duIHRvIGdpdCIKIG1zZ3N0ciAi0L/RitGC0Y/RgiDigJ4lc+KAnCDQvdC1INGB0YrQstC/0LDQtNCwINGBINC90LjQutC+0Lkg0YTQsNC50Lsg0LIgZ2l0IgogCi0jOiBkaXIuYzo5NjUKKyM6IGRpci5jOjY5NSBkaXIuYzo3MjQgZGlyLmM6NzM3CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBwYXR0ZXJuOiAnJXMnIgorbXNnc3RyICLQvdC10L/QvtC30L3QsNGCINGI0LDQsdC70L7QvTog4oCeJXPigJwiCisKKyM6IGRpci5jOjc1NCBkaXIuYzo3NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIG5lZ2F0aXZlIHBhdHRlcm46ICclcyciCittc2dzdHIgItC90LXQv9C+0LfQvdCw0YIg0L7RgtGA0LjRhtCw0YLQtdC70LXQvSDRiNCw0LHQu9C+0L06IOKAniVz4oCcIgorCisjOiBkaXIuYzo3ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAieW91ciBzcGFyc2UtY2hlY2tvdXQgZmlsZSBtYXkgaGF2ZSBpc3N1ZXM6IHBhdHRlcm4gJyVzJyBpcyByZXBlYXRlZCIKK21zZ3N0ciAiIgorItGE0LDQudC70YrRgiDQvtC/0YDQtdC00LXQu9GP0Ykg0YfQsNGB0YLQuNGH0L3QvtGB0YLRgtCwINC90LAg0LjQt9GC0LXQs9C70LXQvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUg0LzQvtC20LUg0LTQsCDQuNC80LAg0L/RgNC+0LHQu9C10Lw6ICIKKyLRiNCw0LHQu9C+0L3RitGCIOKAniVz4oCcINGB0LUg0L/QvtCy0YLQsNGA0Y8iCisKKyM6IGRpci5jOjc5NgorbXNnaWQgImRpc2FibGluZyBjb25lIHBhdHRlcm4gbWF0Y2hpbmciCittc2dzdHIgItC40LfQutC70Y7Rh9Cy0LDQvdC1INC90LAg0L/RitGC0LXQstC+0LTQvdC+0YLQviDQvdCw0L/QsNGB0LLQsNC90LUiCisKKyM6IGRpci5jOjExNzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHVzZSAlcyBhcyBhbiBleGNsdWRlIGZpbGUiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0L7Qu9C30LLQsCDQt9CwINC40LPQvdC+0YDQuNGA0LDQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSAo0LrQsNGC0L4gZ2l0aWdub3JlKSIKIAotIzogZGlyLmM6MTg4MAorIzogZGlyLmM6MjE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAi0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LLQvtGA0LXQvdCwIgogCi0jOiBkaXIuYzoyMTIyCisjOiBkaXIuYzoyNDc5CiBtc2dpZCAiZmFpbGVkIHRvIGdldCBrZXJuZWwgbmFtZSBhbmQgaW5mb3JtYXRpb24iCiBtc2dzdHIgItC40LzQtdGC0L4g0Lgg0LLQtdGA0YHQuNGP0YLQsCDQvdCwINGP0LTRgNC+0YLQviDQvdC1INCx0Y/RhdCwINC/0L7Qu9GD0YfQtdC90LgiCiAKLSM6IGRpci5jOjIyNDYKKyM6IGRpci5jOjI2MDMKIG1zZ2lkICJ1bnRyYWNrZWQgY2FjaGUgaXMgZGlzYWJsZWQgb24gdGhpcyBzeXN0ZW0gb3IgbG9jYXRpb24iCiBtc2dzdHIgIiIKICLQutC10YjRitGCINC30LAg0L3QtdGB0LvQtdC00LXQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSDQtSDQuNC30LrQu9GO0YfQtdC9INC90LAg0YLQsNC30Lgg0YHQuNGB0YLQtdC80LAg0LjQu9C4INC80LXRgdGC0L7Qv9C+0LvQvtC20LXQvdC40LUiCiAKLSM6IGRpci5jOjMwNDcKKyM6IGRpci5jOjM0MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IGluIHJlcG8gJXMiCiBtc2dzdHIgItGE0LDQudC70YrRgiDRgSDQuNC90LTQtdC60YHQsCDQtSDQv9C+0LLRgNC10LTQtdC9INCyINGF0YDQsNC90LjQu9C40YnQtdGC0L4g4oCeJXPigJwiCiAKLSM6IGRpci5jOjMwOTIgZGlyLmM6MzA5NworIzogZGlyLmM6MzQ1MiBkaXIuYzozNDU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3JpZXMgZm9yICVzIgogbXNnc3RyICLQtNC40YDQtdC60YLQvtGA0LjQuNGC0LUg0LfQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LDRgiDRgdGK0LfQtNCw0LTQtdC90LgiCiAKLSM6IGRpci5jOjMxMjYKKyM6IGRpci5jOjM0ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG1pZ3JhdGUgZ2l0IGRpcmVjdG9yeSBmcm9tICclcycgdG8gJyVzJyIKIG1zZ3N0ciAi0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwINC90LAgZ2l0INC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC80LjQs9GA0LjRgNCwINC+0YIg4oCeJXPigJwg0LTQviDigJ4lc+KAnCIKQEAgLTI0OTcsMzAxICszOTczLDI5MyBAQAogbXNnaWQgIkZpbHRlcmluZyBjb250ZW50IgogbXNnc3RyICLQpNC40LvRgtGA0LjRgNCw0L3QtSDQvdCwINGB0YrQtNGK0YDQttCw0L3QuNC10YLQviIKIAotIzogZW50cnkuYzo0NjUKKyM6IGVudHJ5LmM6NDc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0IGZpbGUgJyVzJyIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg4oCec3RhdOKAnCDQstGK0YDRhdGDINGE0LDQudC70LAg4oCeJXPigJwiCiAKLSM6IGVudmlyb25tZW50LmM6MTUwCisjOiBlbnZpcm9ubWVudC5jOjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgZ2l0IG5hbWVzcGFjZSBwYXRoIFwiJXNcIiIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0L/RitGCINC60YrQvCDQv9GA0L7RgdGC0YDQsNC90YHRgtCy0LAg0L7RgiDQuNC80LXQvdCwIOKAniVz4oCcIgogCi0jOiBlbnZpcm9ubWVudC5jOjMzMgorIzogZW52aXJvbm1lbnQuYzozMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHNldCBHSVRfRElSIHRvICclcyciCiBtc2dzdHIgIkdJVF9ESVIg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNC00LDQtNC1INC00LAg0LUg4oCeJXPigJwiCiAKLSM6IGV4ZWMtY21kLmM6MzYxCisjOiBleGVjLWNtZC5jOjM2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0b28gbWFueSBhcmdzIHRvIHJ1biAlcyIKIG1zZ3N0ciAi0L/RgNC10LrQsNC70LXQvdC+INC80L3QvtCz0L4g0LDRgNCz0YPQvNC10L3RgtC4INC30LAg0LjQt9C/0YrQu9C90LXQvdC40LUg4oCeJXPigJwiCiAKLSM6IGZldGNoLW9iamVjdC5jOjE3Ci1tc2dpZCAiUmVtb3RlIHdpdGggbm8gVVJMIgotbXNnc3RyICLQm9C40L/RgdCy0LAg0LDQtNGA0LXRgSDQt9CwINC+0YLQtNCw0LvQtdGH0LXQvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUiCi0KLSM6IGZldGNoLXBhY2suYzoxNTEKKyM6IGZldGNoLXBhY2suYzoxNTAKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgc2hhbGxvdyBsaXN0IgogbXNnc3RyICJnaXQgZmV0Y2gtcGFjazog0L7Rh9Cw0LrQstCwINGB0LUg0L/Qu9C40YLRitC6INGB0L/QuNGB0YrQuiIKIAotIzogZmV0Y2gtcGFjay5jOjE2MworIzogZmV0Y2gtcGFjay5jOjE1MworbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBhIGZsdXNoIHBhY2tldCBhZnRlciBzaGFsbG93IGxpc3QiCittc2dzdHIgImdpdCBmZXRjaC1wYWNrOiDRgdC70LXQtCDQv9C70LjRgtGK0Log0YHQv9C40YHRitC6INGB0LUg0L7Rh9Cw0LrQstCwINC40LfRh9C40YHRgtCy0LDRiSDQv9Cw0LrQtdGCIOKAnmZsdXNo4oCcIgorCisjOiBmZXRjaC1wYWNrLmM6MTY0CiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCBhIGZsdXNoIHBhY2tldCIKIG1zZ3N0ciAiIgogImdpdCBmZXRjaC1wYWNrOiDQvtGH0LDQutCy0LAg0YHQtSDigJ5BQ0vigJwv4oCeTkFL4oCcLCDQsCDQsdC1INC/0L7Qu9GD0YfQtdC9INC40LfRh9C40YHRgtCy0LDRiSDQv9Cw0LrQtdGCIOKAnmZsdXNo4oCcIgogCi0jOiBmZXRjaC1wYWNrLmM6MTgzCisjOiBmZXRjaC1wYWNrLmM6MTg0CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgJyVzJyIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6INC+0YfQsNC60LLQsCDRgdC1IOKAnkFDS+KAnC/igJ5OQUvigJwsINCwINCx0LUg0L/QvtC70YPRh9C10L3QviDigJ4lc+KAnCIKIAotIzogZmV0Y2gtcGFjay5jOjI1MworIzogZmV0Y2gtcGFjay5jOjE5NQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byByZW1vdGUiCittc2dzdHIgItC90LXQstGK0LfQvNC+0LbQvdC+INC/0LjRgdCw0L3QtSDQutGK0Lwg0L7RgtC00LDQu9C10YfQtdC90L4g0YXRgNCw0L3QuNC70LjRidC1IgorCisjOiBmZXRjaC1wYWNrLmM6MjU3CiBtc2dpZCAiLS1zdGF0ZWxlc3MtcnBjIHJlcXVpcmVzIG11bHRpX2Fja19kZXRhaWxlZCIKIG1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1zdGF0ZWxlc3MtcnBj4oCcINC40LfQuNGB0LrQstCwICDigJ5tdWx0aV9hY2tfZGV0YWlsZWTigJwiCiAKLSM6IGZldGNoLXBhY2suYzozNDcgZmV0Y2gtcGFjay5jOjEyNzcKKyM6IGZldGNoLXBhY2suYzozNTYgZmV0Y2gtcGFjay5jOjEzNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzaGFsbG93IGxpbmU6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQv9C70LjRgtGK0Log0YDQtdC0OiDigJ4lc+KAnCIKIAotIzogZmV0Y2gtcGFjay5jOjM1MyBmZXRjaC1wYWNrLmM6MTI4MworIzogZmV0Y2gtcGFjay5jOjM2MiBmZXRjaC1wYWNrLmM6MTM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHVuc2hhbGxvdyBsaW5lOiAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0L3QtdC/0LvQuNGC0YrQuiDRgNC10LQ6IOKAniVz4oCcIgogCi0jOiBmZXRjaC1wYWNrLmM6MzU1IGZldGNoLXBhY2suYzoxMjg1CisjOiBmZXRjaC1wYWNrLmM6MzY0IGZldGNoLXBhY2suYzoxMzQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCBub3QgZm91bmQ6ICVzIgogbXNnc3RyICLQvtCx0LXQutGC0YrRgiDigJ4lc+KAnCDQu9C40L/RgdCy0LAiCiAKLSM6IGZldGNoLXBhY2suYzozNTggZmV0Y2gtcGFjay5jOjEyODgKKyM6IGZldGNoLXBhY2suYzozNjcgZmV0Y2gtcGFjay5jOjEzNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgaW4gb2JqZWN0OiAlcyIKIG1zZ3N0ciAi0LPRgNC10YjQutCwINCyINC+0LHQtdC60YLQsDog4oCeJXPigJwiCiAKLSM6IGZldGNoLXBhY2suYzozNjAgZmV0Y2gtcGFjay5jOjEyOTAKKyM6IGZldGNoLXBhY2suYzozNjkgZmV0Y2gtcGFjay5jOjEzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc2hhbGxvdyBmb3VuZDogJXMiCiBtc2dzdHIgItC90LUg0LUg0L7RgtC60YDQuNGCINC/0LvQuNGC0YrQuiDQvtCx0LXQutGCOiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM2MyBmZXRjaC1wYWNrLmM6MTI5MworIzogZmV0Y2gtcGFjay5jOjM3MiBmZXRjaC1wYWNrLmM6MTM1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBzaGFsbG93L3Vuc2hhbGxvdywgZ290ICVzIgogbXNnc3RyICLQvtGH0LDQutCy0LAg0YHQtSDQv9C70LjRgtGK0Log0LjQu9C4INC90LUg0L7QsdC10LrRgiwg0LAg0LHQtSDQv9C+0LvRg9GH0LXQvdC+OiDigJ4lc+KAnCIKIAotIzogZmV0Y2gtcGFjay5jOjQwNAorIzogZmV0Y2gtcGFjay5jOjQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJnb3QgJXMgJWQgJXMiCiBtc2dzdHIgItC/0L7Qu9GD0YfQtdC90L4g0LHQtSAlcyAlZCAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjQyMQorIzogZmV0Y2gtcGFjay5jOjQzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbW1pdCAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90L4g0L/QvtC00LDQstCw0L3QtTog4oCeJXPigJwiCiAKLSM6IGZldGNoLXBhY2suYzo0NTIKKyM6IGZldGNoLXBhY2suYzo0NjIKIG1zZ2lkICJnaXZpbmcgdXAiCiBtc2dzdHIgItC/0YDQtdGD0YHRgtCw0L3QvtCy0Y/QstCw0L3QtSIKIAotIzogZmV0Y2gtcGFjay5jOjQ2NCBwcm9ncmVzcy5jOjIyOQorIzogZmV0Y2gtcGFjay5jOjQ3NSBwcm9ncmVzcy5jOjMyMwogbXNnaWQgImRvbmUiCiBtc2dzdHIgItC00LXQudGB0YLQstC40LXRgtC+INC30LDQstGK0YDRiNC4IgogCi0jOiBmZXRjaC1wYWNrLmM6NDc2CisjOiBmZXRjaC1wYWNrLmM6NDg3CiAjLCBjLWZvcm1hdAogbXNnaWQgImdvdCAlcyAoJWQpICVzIgogbXNnc3RyICLQv9C+0LvRg9GH0LXQvdC+INCx0LUgJXMgKCVkKSAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjUyMgorIzogZmV0Y2gtcGFjay5jOjUzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJNYXJraW5nICVzIGFzIGNvbXBsZXRlIgogbXNnc3RyICLQntGC0LHQtdC70Y/Qt9Cy0LDQvdC1INC90LAg4oCeJXPigJwg0LrQsNGC0L4g0L/RitC70L3QviIKIAotIzogZmV0Y2gtcGFjay5jOjc2NAorIzogZmV0Y2gtcGFjay5jOjc1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJhbHJlYWR5IGhhdmUgJXMgKCVzKSIKIG1zZ3N0ciAi0LLQtdGH0LUg0LjQvNCwIOKAniVz4oCcICglcykiCiAKLSM6IGZldGNoLXBhY2suYzo4MDMKKyM6IGZldGNoLXBhY2suYzo4MTgKIG1zZ2lkICJmZXRjaC1wYWNrOiB1bmFibGUgdG8gZm9yayBvZmYgc2lkZWJhbmQgZGVtdWx0aXBsZXhlciIKIG1zZ3N0ciAiZmV0Y2gtcGFjazog0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0YHRitC30LTQsNC00LUg0L/RgNC+0YbQtdGBINC30LAg0LTQtdC80YPQu9GC0LjQv9C70LXQutGB0L7RgNCwIgogCi0jOiBmZXRjaC1wYWNrLmM6ODExCisjOiBmZXRjaC1wYWNrLmM6ODI2CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBwYWNrIGhlYWRlciIKIG1zZ3N0ciAi0L/RgNC+0YLQvtC60L7Qu9C90LAg0LPRgNC10YjQutCwOiDQvdC10L/RgNCw0LLQuNC70L3QsCDQt9Cw0LPQu9Cw0LLQvdCwINGH0LDRgdGCINC90LAg0L/QsNC60LXRgiIKIAotIzogZmV0Y2gtcGFjay5jOjg3OQorIzogZmV0Y2gtcGFjay5jOjkwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJmZXRjaC1wYWNrOiB1bmFibGUgdG8gZm9yayBvZmYgJXMiCiBtc2dzdHIgImZldGNoLXBhY2s6INC90LUg0LzQvtC20LUg0LTQsCDRgdC1INGB0YrQt9C00LDQtNC1INC/0YDQvtGG0LXRgSDQt9CwIOKAniVz4oCcIgogCi0jOiBmZXRjaC1wYWNrLmM6ODk1CisjOiBmZXRjaC1wYWNrLmM6OTE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGZhaWxlZCIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg4oCeJXPigJwiCiAKLSM6IGZldGNoLXBhY2suYzo4OTcKKyM6IGZldGNoLXBhY2suYzo5MTgKIG1zZ2lkICJlcnJvciBpbiBzaWRlYmFuZCBkZW11bHRpcGxleGVyIgogbXNnc3RyICLQs9GA0LXRiNC60LAg0LIg0LTQtdC80YPQu9GC0LjQv9C70LXQutGB0L7RgNCwIgogCi0jOiBmZXRjaC1wYWNrLmM6OTI2Ci1tc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjbGllbnRzIgotbXNnc3RyICLQodGK0YDQstGK0YDRitGCINC90LUg0L/QvtC00LTRitGA0LbQsCDQv9C70LjRgtC60Lgg0LrQu9C40LXQvdGC0LgiCi0KLSM6IGZldGNoLXBhY2suYzo5MzAKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgbXVsdGlfYWNrX2RldGFpbGVkIgotbXNnc3RyICLQodGK0YDQstGK0YDRitGCINC/0L7QtNC00YrRgNC20LAg4oCebXVsdGlfYWNrX2RldGFpbGVk4oCcIgotCi0jOiBmZXRjaC1wYWNrLmM6OTMzCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIG5vLWRvbmUiCi1tc2dzdHIgItCh0YrRgNCy0YrRgNGK0YIg0L/QvtC00LTRitGA0LbQsCDigJ5uby1kb25l4oCcIgotCi0jOiBmZXRjaC1wYWNrLmM6OTM5Ci1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIG11bHRpX2FjayIKLW1zZ3N0ciAi0KHRitGA0LLRitGA0YrRgiDQv9C+0LTQtNGK0YDQttCwIOKAnm11bHRpX2Fja+KAnCIKLQotIzogZmV0Y2gtcGFjay5jOjk0MwotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQtNjRrIgotbXNnc3RyICLQodGK0YDQstGK0YDRitGCINC/0L7QtNC00YrRgNC20LAg4oCec2lkZS1iYW5kLTY0a+KAnCIKLQotIzogZmV0Y2gtcGFjay5jOjk0NwotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQiCi1tc2dzdHIgItCh0YrRgNCy0YrRgNGK0YIg0L/QvtC00LTRitGA0LbQsCDigJ5zaWRlLWJhbmTigJwiCi0KLSM6IGZldGNoLXBhY2suYzo5NTEKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgYWxsb3ctdGlwLXNoYTEtaW4td2FudCIKLW1zZ3N0ciAi0KHRitGA0LLRitGA0YrRgiDQv9C+0LTQtNGK0YDQttCwIOKAnmFsbG93LXRpcC1zaGExLWluLXdhbnTigJwiCi0KLSM6IGZldGNoLXBhY2suYzo5NTUKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgYWxsb3ctcmVhY2hhYmxlLXNoYTEtaW4td2FudCIKLW1zZ3N0ciAi0KHRitGA0LLRitGA0YrRgiDQv9C+0LTQtNGK0YDQttCwIOKAnmFsbG93LXJlYWNoYWJsZS1zaGExLWluLXdhbnTigJwiCi0KICM6IGZldGNoLXBhY2suYzo5NjUKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgb2ZzLWRlbHRhIgotbXNnc3RyICLQodGK0YDQstGK0YDRitGCINC/0L7QtNC00YrRgNC20LAg4oCeb2ZzLWRlbHRh4oCcIgotCi0jOiBmZXRjaC1wYWNrLmM6OTcxIGZldGNoLXBhY2suYzoxMTU4Ci1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIGZpbHRlciIKLW1zZ3N0ciAi0KHRitGA0LLRitGA0YrRgiDQv9C+0LTQtNGK0YDQttCwINGE0LjQu9GC0YDQuCIKLQotIzogZmV0Y2gtcGFjay5jOjk3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZXJ2ZXIgdmVyc2lvbiBpcyAlLipzIgogbXNnc3RyICLQktC10YDRgdC40Y/RgtCwINC90LAg0YHRitGA0LLRitGA0LAg0LU6ICUuKnMiCiAKLSM6IGZldGNoLXBhY2suYzo5ODUKKyM6IGZldGNoLXBhY2suYzo5NzAgZmV0Y2gtcGFjay5jOjk3NiBmZXRjaC1wYWNrLmM6OTc5IGZldGNoLXBhY2suYzo5ODUKKyM6IGZldGNoLXBhY2suYzo5ODkgZmV0Y2gtcGFjay5jOjk5MyBmZXRjaC1wYWNrLmM6OTk3IGZldGNoLXBhY2suYzoxMDAxCisjOiBmZXRjaC1wYWNrLmM6MTAwNSBmZXRjaC1wYWNrLmM6MTAwOSBmZXRjaC1wYWNrLmM6MTAxMyBmZXRjaC1wYWNrLmM6MTAxNworIzogZmV0Y2gtcGFjay5jOjEwMjMgZmV0Y2gtcGFjay5jOjEwMjkgZmV0Y2gtcGFjay5jOjEwMzQgZmV0Y2gtcGFjay5jOjEwMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2VydmVyIHN1cHBvcnRzICVzIgorbXNnc3RyICLQodGK0YDQstGK0YDRitGCINC/0L7QtNC00YrRgNC20LAg4oCeJXPigJwiCisKKyM6IGZldGNoLXBhY2suYzo5NzIKK21zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IGNsaWVudHMiCittc2dzdHIgItCh0YrRgNCy0YrRgNGK0YIg0L3QtSDQv9C+0LTQtNGK0YDQttCwINC/0LvQuNGC0LrQuCDQutC70LjQtdC90YLQuCIKKworIzogZmV0Y2gtcGFjay5jOjEwMzIKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLXNoYWxsb3ctc2luY2UiCiBtc2dzdHIgItCh0YrRgNCy0YrRgNGK0YIg0L3QtSDQv9C+0LTQtNGK0YDQttCwINC+0L/RhtC40Y/RgtCwIOKAni0tc2hhbGxvdy1zaW5jZeKAnCIKIAotIzogZmV0Y2gtcGFjay5jOjk4OQorIzogZmV0Y2gtcGFjay5jOjEwMzcKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLXNoYWxsb3ctZXhjbHVkZSIKIG1zZ3N0ciAi0KHRitGA0LLRitGA0YrRgiDQvdC1INC/0L7QtNC00YrRgNC20LAg0L7Qv9GG0LjRj9GC0LAg4oCeLS1zaGFsbG93LWV4Y2x1ZGXigJwiCiAKLSM6IGZldGNoLXBhY2suYzo5OTEKKyM6IGZldGNoLXBhY2suYzoxMDQxCiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1kZWVwZW4iCiBtc2dzdHIgItCh0YrRgNCy0YrRgNGK0YIg0L3QtSDQv9C+0LTQtNGK0YDQttCwINC+0L/RhtC40Y/RgtCwIOKAni0tZGVlcGVu4oCcIgogCi0jOiBmZXRjaC1wYWNrLmM6MTAwOAorIzogZmV0Y2gtcGFjay5jOjEwNTgKIG1zZ2lkICJubyBjb21tb24gY29tbWl0cyIKIG1zZ3N0ciAi0L3Rj9C80LAg0L7QsdGJ0Lgg0L/QvtC00LDQstCw0L3QuNGPIgogCi0jOiBmZXRjaC1wYWNrLmM6MTAyMCBmZXRjaC1wYWNrLmM6MTQxOAorIzogZmV0Y2gtcGFjay5jOjEwNzAgZmV0Y2gtcGFjay5jOjE1MzYKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZmV0Y2ggZmFpbGVkLiIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6INC90LXRg9GB0L/QtdGI0L3QviDQtNC+0YHRgtCw0LLRj9C90LUuIgogCi0jOiBmZXRjaC1wYWNrLmM6MTE1MworIzogZmV0Y2gtcGFjay5jOjEyMDkKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IHJlcXVlc3RzIgogbXNnc3RyICLQodGK0YDQstGK0YDRitGCINC90LUg0L/QvtC00LTRitGA0LbQsCDQv9C70LjRgtC60Lgg0LfQsNGP0LLQutC4IgogCi0jOiBmZXRjaC1wYWNrLmM6MTE5OQorIzogZmV0Y2gtcGFjay5jOjEyMTYKK21zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgZmlsdGVyIgorbXNnc3RyICLQodGK0YDQstGK0YDRitGCINC/0L7QtNC00YrRgNC20LAg0YTQuNC70YLRgNC4IgorCisjOiBmZXRjaC1wYWNrLmM6MTIzOQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSByZXF1ZXN0IHRvIHJlbW90ZSIKK21zZ3N0ciAi0L3QtdCy0YrQt9C80L7QttC90L4g0L/QuNGB0LDQvdC1INC60YrQvCDQvtGC0LTQsNC70LXRh9C10L3QviDRhdGA0LDQvdC40LvQuNGJ0LUiCisKKyM6IGZldGNoLXBhY2suYzoxMjU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHJlYWRpbmcgc2VjdGlvbiBoZWFkZXIgJyVzJyIKIG1zZ3N0ciAi0LPRgNC10YjQutCwINC/0YDQuCDQv9GA0L7Rh9C40YLQsNC90LUg0L3QsCDQt9Cw0LPQu9Cw0LLQvdCw0YLQsCDRh9Cw0YHRgiDQvdCwINGA0LDQt9C00LXQuyDigJ4lc+KAnCIKIAotIzogZmV0Y2gtcGFjay5jOjEyMDUKKyM6IGZldGNoLXBhY2suYzoxMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkICclcycsIHJlY2VpdmVkICclcyciCiBtc2dzdHIgItC+0YfQsNC60LLQsCDRgdC1IOKAniVz4oCcLCDQsCDQsdC1INC/0L7Qu9GD0YfQtdC90L4g4oCeJXPigJwiCiAKLSM6IGZldGNoLXBhY2suYzoxMjQ0CisjOiBmZXRjaC1wYWNrLmM6MTMwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIGFja25vd2xlZGdtZW50IGxpbmU6ICclcyciCiBtc2dzdHIgItC90LXQvtGH0LDQutCy0LDQvSDRgNC10LQg0LfQsCDQv9C+0YLQstGK0YDQttC00LXQvdC40LU6IOKAniVz4oCcIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI0OQorIzogZmV0Y2gtcGFjay5jOjEzMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBhY2tzOiAlZCIKIG1zZ3N0ciAi0LPRgNC10YjQutCwINC/0YDQuCDQvtCx0YDQsNCx0L7RgtC60LAg0L3QsCDQv9C+0YLQstGK0YDQttC00LXQvdC40Y/RgtCwOiAlZCIKIAotIzogZmV0Y2gtcGFjay5jOjEyNTkKKyM6IGZldGNoLXBhY2suYzoxMzE4CiBtc2dpZCAiZXhwZWN0ZWQgcGFja2ZpbGUgdG8gYmUgc2VudCBhZnRlciAncmVhZHknIgogbXNnc3RyICIiCiAi0L7Rh9Cw0LrQstCw0YjQtSDRgdC1INC/0LDQutC10YLQvdC40Y/RgiDRhNCw0LnQuyDQtNCwINCx0YrQtNC1INC40LfQv9GA0LDRgtC10L0g0YHQu9C10LQg0L7RgtCz0L7QstC+0YAg0LfQsCDQs9C+0YLQvtCy0L3QvtGB0YIgKHJlYWR5KSIKIAotIzogZmV0Y2gtcGFjay5jOjEyNjEKKyM6IGZldGNoLXBhY2suYzoxMzIwCiBtc2dpZCAiZXhwZWN0ZWQgbm8gb3RoZXIgc2VjdGlvbnMgdG8gYmUgc2VudCBhZnRlciBubyAncmVhZHknIgogbXNnc3RyICIiCiAi0L7Rh9Cw0LrQstCw0YjQtSDRgdC1INGB0LvQtdC0INC70LjQv9GB0LAg0L3QsCDQvtGC0LPQvtCy0L7RgCDQt9CwINCz0L7RgtC+0LLQvdC+0YHRgiAocmVhZHkpINC00LAg0L3QtSDRgdC1INGB0LUg0L/RgNCw0YnQsNGCICIKICLQtNGA0YPQs9C4INGA0LDQt9C00LXQu9C4IgogCi0jOiBmZXRjaC1wYWNrLmM6MTI5OAorIzogZmV0Y2gtcGFjay5jOjEzNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBzaGFsbG93IGluZm86ICVkIgogbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INC+0LHRgNCw0LHQvtGC0LrQsCDQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGPINC30LAg0LTRitC70LHQvtGH0LjQvdCw0YLQsC/Qv9C70LjRgtC60L7RgdGC0YLQsDogJWQiCiAKLSM6IGZldGNoLXBhY2suYzoxMzE0CisjOiBmZXRjaC1wYWNrLmM6MTQwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCB3YW50ZWQtcmVmLCBnb3QgJyVzJyIKIG1zZ3N0ciAi0L7Rh9Cw0LrQstCwINGB0LUg0LjRgdC60LDQvSDRg9C60LDQt9Cw0YLQtdC7LCDQsCDQsdC1INC/0L7Qu9GD0YfQtdC90L46IOKAniVz4oCcIgogCi0jOiBmZXRjaC1wYWNrLmM6MTMyNAorIzogZmV0Y2gtcGFjay5jOjE0MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCB3YW50ZWQtcmVmOiAnJXMnIgogbXNnc3RyICLQvdC10L7Rh9Cw0LrQstCw0L0g0LjRgdC60LDQvSDRg9C60LDQt9Cw0YLQtdC7OiDigJ4lc+KAnCIKIAotIzogZmV0Y2gtcGFjay5jOjEzMjgKKyM6IGZldGNoLXBhY2suYzoxNDE5CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHByb2Nlc3Npbmcgd2FudGVkIHJlZnM6ICVkIgogbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INC+0LHRgNCw0LHQvtGC0LrQsNGC0LAg0L3QsCDQuNGB0LrQsNC90LjRgtC1INGD0LrQsNC30LDRgtC10LvQuDogJWQiCiAKLSM6IGZldGNoLXBhY2suYzoxNjQyCisjOiBmZXRjaC1wYWNrLmM6MTc2MgogbXNnaWQgIm5vIG1hdGNoaW5nIHJlbW90ZSBoZWFkIgogbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGCINC/0L7QtNGF0L7QtNGP0Ykg0LLRgNGK0YUg0L7RgiDQvtGC0LTQsNC70LXRh9C10L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1IgogCi0jOiBmZXRjaC1wYWNrLmM6MTY2MCBidWlsdGluL2Nsb25lLmM6NjY0CisjOiBmZXRjaC1wYWNrLmM6MTc4NSBidWlsdGluL2Nsb25lLmM6Njg5CiBtc2dpZCAicmVtb3RlIGRpZCBub3Qgc2VuZCBhbGwgbmVjZXNzYXJ5IG9iamVjdHMiCiBtc2dzdHIgItC+0YLQtNCw0LvQtdGH0LXQvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUg0L3QtSDQuNC30L/RgNCw0YLQuCDQstGB0LjRh9C60Lgg0L3QtdC+0LHRhdC+0LTQuNC80Lgg0L7QsdC10LrRgtC4LiIKIAotIzogZmV0Y2gtcGFjay5jOjE2ODYKKyM6IGZldGNoLXBhY2suYzoxODEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggcmVtb3RlIHJlZiAlcyIKIG1zZ3N0ciAi0YLQsNC60YrQsiDQvtGC0LTQsNC70LXRh9C10L0g0YPQutCw0LfQsNGC0LXQuyDQvdGP0LzQsDogJXMiCiAKLSM6IGZldGNoLXBhY2suYzoxNjg5CisjOiBmZXRjaC1wYWNrLmM6MTgxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3QgYWxsb3cgcmVxdWVzdCBmb3IgdW5hZHZlcnRpc2VkIG9iamVjdCAlcyIKLW1zZ3N0ciAi0KHRitGA0LLRitGA0YrRgiDQvdC1INC/0L7Qt9Cy0L7Qu9GP0LLQsCDQt9Cw0Y/QstC60LAg0LfQsCDQvdC10L7QsdGP0LLQtdC9IOKAniVz4oCcIgorbXNnc3RyICLQodGK0YDQstGK0YDRitGCINC90LUg0L/QvtC30LLQvtC70Y/QstCwINC30LDRj9Cy0LrQsCDQt9CwINC90LXQvtCx0Y/QstC10L0g0L7QsdC10LrRgiDigJ4lc+KAnCIKIAotIzogZ3BnLWludGVyZmFjZS5jOjMxOAorIzogZ3BnLWludGVyZmFjZS5jOjQwOAogbXNnaWQgImdwZyBmYWlsZWQgdG8gc2lnbiB0aGUgZGF0YSIKIG1zZ3N0ciAi0J/RgNC+0LPRgNCw0LzQsNGC0LAg4oCeZ3Bn4oCcINC90LUg0L/QvtC00L/QuNGB0LAg0LTQsNC90L3QuNGC0LUuIgogCi0jOiBncGctaW50ZXJmYWNlLmM6MzQ0CisjOiBncGctaW50ZXJmYWNlLmM6NDM0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZSIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0YHRitC30LTQsNC00LUg0LLRgNC10LzQtdC90LXQvSDRhNCw0LnQuyIKIAotIzogZ3BnLWludGVyZmFjZS5jOjM0NworIzogZ3BnLWludGVyZmFjZS5jOjQzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgd3JpdGluZyBkZXRhY2hlZCBzaWduYXR1cmUgdG8gJyVzJyIKIG1zZ3N0ciAi0J/RgNC+0LPRgNCw0LzQsNGC0LAg0L3QtSDRg9GB0L/RjyDQtNCwINC30LDQv9C40YjQtSDRgdCw0LzQvtGB0YLQvtGP0YLQtdC70L3QuNGPINC/0L7QtNC/0LjRgSDQsiDigJ4lc+KAnCIKIAotIzogZ3JhcGguYzo5NworIzogZ3JhcGguYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmUgaW52YWxpZCBjb2xvciAnJS4qcycgaW4gbG9nLmdyYXBoQ29sb3JzIgogbXNnc3RyICLQv9GA0LXRgdC60LDRh9Cw0L3QtSDQvdCwINC90LXQv9GA0LDQstC40LvQvdC40Y8g0YbQstGP0YIg4oCeJS4qc+KAnCDQsiDigJ5sb2cuZ3JhcGhDb2xvcnPigJwiCiAKLSM6IGdyZXAuYzoyMTEzCisjOiBncmVwLmM6NjY4Cittc2dpZCAiIgorImdpdmVuIHBhdHRlcm4gY29udGFpbnMgTlVMTCBieXRlICh2aWEgLWYgPGZpbGU+KS4gVGhpcyBpcyBvbmx5IHN1cHBvcnRlZCAiCisid2l0aCAtUCB1bmRlciBQQ1JFIHYyIgorbXNnc3RyICIiCisi0LfQsNC00LDQtNC10L3QuNGP0YIg0YjQsNCx0LvQvtC9INGB0YrQtNGK0YDQttCwINC90YPQu9C10LIg0LfQvdCw0LogKNC40LTQstCwINC+0YIgLWYg4oCe0KTQkNCZ0JvigJwpLiAg0KLQvtCy0LAg0YHQtSDQv9C+0LTQtNGK0YDQttCwICIKKyLQsiDQutC+0LzQsdC40L3QsNGG0LjRjyDRgSDigJ4tUOKAnCDRgdCw0LzQviDQv9GA0Lgg0L/QvtC70LfQstCw0L3QtdGC0L4g0L3QsCDigJ5QQ1JFIHYy4oCcIgorCisjOiBncmVwLmM6MjEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiB1bmFibGUgdG8gcmVhZCAlcyIKIG1zZ3N0ciAi4oCeJXPigJw6INGE0LDQudC70YrRgiDRgdC+0YfQtdC9INC+0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L0iCiAKLSM6IGdyZXAuYzoyMTMwIHNldHVwLmM6MTY0IGJ1aWx0aW4vY2xvbmUuYzo0MTAgYnVpbHRpbi9kaWZmLmM6ODEKLSM6IGJ1aWx0aW4vcm0uYzoxMzQKKyM6IGdyZXAuYzoyMTQ1IHNldHVwLmM6MTY2IGJ1aWx0aW4vY2xvbmUuYzo0MTEgYnVpbHRpbi9kaWZmLmM6ODIKKyM6IGJ1aWx0aW4vcm0uYzoxMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0YXQgJyVzJyIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0L7Qu9GD0YfQtdC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y8g0YfRgNC10Lcg4oCec3RhdOKAnCDQt9CwIOKAniVz4oCcIgogCi0jOiBncmVwLmM6MjE0MQorIzogZ3JlcC5jOjIxNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogc2hvcnQgcmVhZCIKIG1zZ3N0ciAi4oCeJXPigJw6INC40LfRh9C40YLQsNC90LXRgtC+INCy0YrRgNC90LAg0L/Qvi3QvNCw0LvQutC+INCx0LDQudGC0L7QstC1INC+0YIg0L7Rh9Cw0LrQstCw0L3QvtGC0L4iCkBAIC0yODIyLDExICs0MjkwLDExIEBACiAKICM6IGhlbHAuYzozMgogbXNnaWQgIkFuY2lsbGFyeSBDb21tYW5kcyAvIE1hbmlwdWxhdG9ycyIKLW1zZ3N0ciAi0J/QvtC80L7RidC90Lgg0LrQvtC80LDQvdC00Lgv0J/RgNC+0LzQtdC90Y/RidC4IgorbXNnc3RyICLQn9C+0LzQvtGJ0L3QuCDQutC+0LzQsNC90LTQuCAvINCf0YDQvtC80LXQvdGP0YnQuCIKIAogIzogaGVscC5jOjMzCiBtc2dpZCAiQW5jaWxsYXJ5IENvbW1hbmRzIC8gSW50ZXJyb2dhdG9ycyIKLW1zZ3N0ciAi0J/QvtC80L7RidC90Lgg0LrQvtC80LDQvdC00Lgv0JfQsNC/0LjRgtCy0LDRidC4IgorbXNnc3RyICLQn9C+0LzQvtGJ0L3QuCDQutC+0LzQsNC90LTQuCAvINCX0LDQv9C40YLQstCw0YnQuCIKIAogIzogaGVscC5jOjM0CiBtc2dpZCAiSW50ZXJhY3Rpbmcgd2l0aCBPdGhlcnMiCkBAIC0yODM0LDU1ICs0MzAyLDU1IEBACiAKICM6IGhlbHAuYzozNQogbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIE1hbmlwdWxhdG9ycyIKLW1zZ3N0ciAi0JrQvtC80LDQvdC00Lgg0L7RgiDQvdC40YHQutC+INC90LjQstC+L9Cf0YDQvtC80LXQvdGP0YnQuCIKK21zZ3N0ciAi0JrQvtC80LDQvdC00Lgg0L7RgiDQvdC40YHQutC+INC90LjQstC+IC8g0J/RgNC+0LzQtdC90Y/RidC4IgogCiAjOiBoZWxwLmM6MzYKIG1zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBJbnRlcnJvZ2F0b3JzIgotbXNnc3RyICLQmtC+0LzQsNC90LTQuCDQvtGCINC90LjRgdC60L4g0L3QuNCy0L4v0JfQsNC/0LjRgtCy0LDRidC4IgorbXNnc3RyICLQmtC+0LzQsNC90LTQuCDQvtGCINC90LjRgdC60L4g0L3QuNCy0L4gLyDQl9Cw0L/QuNGC0LLQsNGJ0LgiCiAKICM6IGhlbHAuYzozNwotbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIFN5bmNoaW5nIFJlcG9zaXRvcmllcyIKLW1zZ3N0ciAi0JrQvtC80LDQvdC00Lgg0L7RgiDQvdC40YHQutC+INC90LjQstC+L9Ch0LjQvdGF0YDQvtC90LjQt9Cw0YbQuNGPINC90LAg0YXRgNCw0L3QuNC70LjRidCwIgorbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIFN5bmNpbmcgUmVwb3NpdG9yaWVzIgorbXNnc3RyICLQmtC+0LzQsNC90LTQuCDQvtGCINC90LjRgdC60L4g0L3QuNCy0L4gLyDQodC40L3RhdGA0L7QvdC40LfQsNGG0LjRjyDQvdCwINGF0YDQsNC90LjQu9C40YnQsCIKIAogIzogaGVscC5jOjM4CiBtc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gSW50ZXJuYWwgSGVscGVycyIKLW1zZ3N0ciAi0JrQvtC80LDQvdC00Lgg0L7RgiDQvdC40YHQutC+INC90LjQstC+L9CU0L7Qv9GK0LvQvdC40YLQtdC70L3QuCDQuNC90YHRgtGA0YPQvNC10L3RgtC4IgorbXNnc3RyICLQmtC+0LzQsNC90LTQuCDQvtGCINC90LjRgdC60L4g0L3QuNCy0L4gLyDQlNC+0L/RitC70L3QuNGC0LXQu9C90Lgg0LjQvdGB0YLRgNGD0LzQtdC90YLQuCIKIAotIzogaGVscC5jOjI5NgorIzogaGVscC5jOjI5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJhdmFpbGFibGUgZ2l0IGNvbW1hbmRzIGluICclcyciCiBtc2dzdHIgItC90LDQu9C40YfQvdC4INC60L7QvNCw0L3QtNC4INC90LAgZ2l0INC+0YIg4oCeJXPigJwiCiAKLSM6IGhlbHAuYzozMDMKKyM6IGhlbHAuYzozMDUKIG1zZ2lkICJnaXQgY29tbWFuZHMgYXZhaWxhYmxlIGZyb20gZWxzZXdoZXJlIG9uIHlvdXIgJFBBVEgiCiBtc2dzdHIgItC60L7QvNCw0L3QtNC4INC90LAgZ2l0INC+0YIg0LTRgNGD0LPQuCDQtNC40YDQtdC60YLQvtGA0LjQuCDQvtGCIOKAniRQQVRI4oCcIgogCi0jOiBoZWxwLmM6MzEyCisjOiBoZWxwLmM6MzE0CiBtc2dpZCAiVGhlc2UgYXJlIGNvbW1vbiBHaXQgY29tbWFuZHMgdXNlZCBpbiB2YXJpb3VzIHNpdHVhdGlvbnM6IgogbXNnc3RyICLQotC+0LLQsCDRgdCwINC90LDQuS3Rh9C10YHRgtC+INC40LfQv9C+0LvQt9Cy0LDQvdC40YLQtSDQutC+0LzQsNC90LTQuCDQvdCwIEdpdDoiCiAKLSM6IGhlbHAuYzozNjEgZ2l0LmM6OTAKKyM6IGhlbHAuYzozNjMgZ2l0LmM6OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5zdXBwb3J0ZWQgY29tbWFuZCBsaXN0aW5nIHR5cGUgJyVzJyIKIG1zZ3N0ciAi0L3QtdC/0L7QtNC00YrRgNC20LDQvSDRgdC/0LjRgdGK0Log0L7RgiDQutC+0LzQsNC90LTQuCDigJ4lc+KAnCIKIAotIzogaGVscC5jOjQwOAorIzogaGVscC5jOjQwMwogbXNnaWQgIlRoZSBjb21tb24gR2l0IGd1aWRlcyBhcmU6IgogbXNnc3RyICLQn9C+0L/Rg9C70Y/RgNC90LjRgtC1INCy0YrQstC10LTQtdC90LjRjyDQsiBHaXQg0YHQsDoiCiAKLSM6IGhlbHAuYzo1MTcKKyM6IGhlbHAuYzo1MTIKIG1zZ2lkICJTZWUgJ2dpdCBoZWxwIDxjb21tYW5kPicgdG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQiCiBtc2dzdHIgItCX0LAg0L/QvtCy0LXRh9C1INC40L3RhNC+0YDQvNCw0YbQuNGPINC30LAg0JrQntCc0JDQndCU0JAg0LjQt9C/0YrQu9C90LXRgtC1IOKAnmdpdCBoZWxwINCa0J7QnNCQ0J3QlNCQ4oCcIgogCi0jOiBoZWxwLmM6NTIyCisjOiBoZWxwLmM6NTE3CiBtc2dpZCAiRXh0ZXJuYWwgY29tbWFuZHMiCiBtc2dzdHIgItCS0YrQvdGI0L3QuCDQutC+0LzQsNC90LTQuCIKIAotIzogaGVscC5jOjUzMAorIzogaGVscC5jOjUzMgogbXNnaWQgIkNvbW1hbmQgYWxpYXNlcyIKIG1zZ3N0ciAi0J/RgdC10LLQtNC+0L3QuNC80Lgg0L3QsCDQutC+0LzQsNC90LTQuNGC0LUiCiAKLSM6IGhlbHAuYzo1OTQKKyM6IGhlbHAuYzo1OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcycgYXBwZWFycyB0byBiZSBhIGdpdCBjb21tYW5kLCBidXQgd2Ugd2VyZSBub3RcbiIKQEAgLTI4OTEsMzYgKzQzNTksMzYgQEAKICLQmNC30LPQu9C10LbQtNCwLCDRh9C1IOKAniVz4oCcINC1INC60L7QvNCw0L3QtNCwINC90LAgZ2l0LCDQvdC+INGC0Y8g0L3QtSDQvNC+0LbQtSDQtNCwXG4iCiAi0LHRitC00LUg0LjQt9C/0YrQu9C90LXQvdCwLiAg0JLQtdGA0L7Rj9GC0L3QviDQv9Cw0LrQtdGC0YrRgiDigJ5naXQtJXPigJwg0LUg0L/QvtCy0YDQtdC00LXQvS4iCiAKLSM6IGhlbHAuYzo2NTMKKyM6IGhlbHAuYzo2NTUKIG1zZ2lkICJVaCBvaC4gWW91ciBzeXN0ZW0gcmVwb3J0cyBubyBHaXQgY29tbWFuZHMgYXQgYWxsLiIKIG1zZ3N0ciAi0KHRgtGA0LDQvdC90L4sINC40LfQs9C70LXQttC00LAsINGH0LUg0L3QsCDRgdC40YHRgtC10LzQsNGC0LAg0LLQuCDQvdGP0LzQsCDQvdC40YLQviDQtdC00L3QsCDQutC+0LzQsNC90LTQsCDQvdCwIGdpdC4iCiAKLSM6IGhlbHAuYzo2NzUKKyM6IGhlbHAuYzo2NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiV0FSTklORzogWW91IGNhbGxlZCBhIEdpdCBjb21tYW5kIG5hbWVkICclcycsIHdoaWNoIGRvZXMgbm90IGV4aXN0LiIKIG1zZ3N0ciAiIgogItCf0KDQldCU0KPQn9Cg0JXQltCU0JXQndCY0JU6INCf0YDQvtCx0LLQsNGF0YLQtSDQtNCwINC40LfQv9GK0LvQvdC40YLQtSDQutC+0LzQsNC90LTQsCDQvdCwIEdpdCDQvdCwINC40LzQtSDigJ4lc+KAnCwg0LAg0YLQsNC60LDQstCwICIKICLQvdC1INGB0YrRidC10YHRgtCy0YPQstCwLiIKIAotIzogaGVscC5jOjY4MAorIzogaGVscC5jOjY4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb250aW51aW5nIHVuZGVyIHRoZSBhc3N1bXB0aW9uIHRoYXQgeW91IG1lYW50ICclcycuIgogbXNnc3RyICIiCiAi0JjQt9C/0YrQu9C90LXQvdC40LXRgtC+INCw0LLRgtC+0LzQsNGC0LjRh9C90L4g0L/RgNC+0LTRitC70LbQsNCy0LAsINC60LDRgtC+INGB0LUg0YHRh9C40YLQsCwg0YfQtSDQuNC80LDRgtC1INC/0YDQtdC00LLQuNC0IOKAniVz4oCcLiIKIAotIzogaGVscC5jOjY4NQorIzogaGVscC5jOjY4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb250aW51aW5nIGluICUwLjFmIHNlY29uZHMsIGFzc3VtaW5nIHRoYXQgeW91IG1lYW50ICclcycuIgogbXNnc3RyICIiCiAi0JjQt9C/0YrQu9C90LXQvdC40LXRgtC+INCw0LLRgtC+0LzQsNGC0LjRh9C90L4g0YnQtSDQv9GA0L7QtNGK0LvQttC4INGB0LvQtdC0ICUwLjFmINGB0LXQui4sINC60LDRgtC+INGB0LUg0YHRh9C40YLQsCwg0YfQtSAiCiAi0LjQvNCw0YLQtSDQv9GA0LXQtNCy0LjQtCDigJ4lc+KAnC4iCiAKLSM6IGhlbHAuYzo2OTMKKyM6IGhlbHAuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0OiAnJXMnIGlzIG5vdCBhIGdpdCBjb21tYW5kLiBTZWUgJ2dpdCAtLWhlbHAnLiIKIG1zZ3N0ciAiZ2l0OiDigJ4lc+KAnCDQvdC1INC1INC60L7QvNCw0L3QtNCwINC90LAgZ2l0LiAg0J/QvtCz0LvQtdC00L3QtdGC0LUg0LjQt9GF0L7QtNCwINC+0YIg4oCeZ2l0IC0taGVscOKAnC4iCiAKLSM6IGhlbHAuYzo2OTcKKyM6IGhlbHAuYzo2OTkKIG1zZ2lkICIiCiAiXG4iCiAiVGhlIG1vc3Qgc2ltaWxhciBjb21tYW5kIGlzIgpAQCAtMjkzNCwxNiArNDQwMiwxNiBAQAogIlxuIgogItCd0LDQuS3QsdC70LjQt9C60LjRgtC1INC60L7QvNCw0L3QtNC4INGB0LAiCiAKLSM6IGhlbHAuYzo3MTIKKyM6IGhlbHAuYzo3MTQKIG1zZ2lkICJnaXQgdmVyc2lvbiBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IHZlcnNpb24gW9Ce0J/QptCY0K/igKZdIgogCi0jOiBoZWxwLmM6NzgwCisjOiBoZWxwLmM6NzgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAlcyAtICVzIgogbXNnc3RyICIlczogJXMg4oCUICVzIgogCi0jOiBoZWxwLmM6Nzg0CisjOiBoZWxwLmM6Nzg3CiBtc2dpZCAiIgogIlxuIgogIkRpZCB5b3UgbWVhbiB0aGlzPyIKQEAgLTI5NTcsNyArNDQyNSw3IEBACiAiXG4iCiAi0JrQvtC80LDQvdC00Lgg0YEg0L/QvtC00L7QsdC90L4g0LjQvNC1INGB0LA6IgogCi0jOiBpZGVudC5jOjM0NQorIzogaWRlbnQuYzozNDkKIG1zZ2lkICIiCiAiXG4iCiAiKioqIFBsZWFzZSB0ZWxsIG1lIHdobyB5b3UgYXJlLlxuIgpAQCAtMjk3Niw2MCArNDQ0NCwxMDAgQEAKICJcbiIKICLQmNC30L/RitC70L3QtdGC0LU6XG4iCiAiXG4iCi0iICBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIuZW1haWwgXCLQmNCc0JVAZXhhbXBsZS5jb21cIlxuIgotIiAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLm5hbWUgXCLQktCQ0KjQldCi0J4g0JjQnNCVXCJcbiIKKyIgICAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLmVtYWlsIFwi0JjQnNCVQGV4YW1wbGUuY29tXCJcbiIKKyIgICAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLm5hbWUgXCLQktCQ0KjQldCi0J4g0JjQnNCVXCJcbiIKICJcbiIKICLQuCDQstGK0LLQtdC00LXRgtC1INC00LDQvdC90Lgg0LfQsCDRgdC10LHQtSDRgdC4LlxuIgogItCQ0LrQviDQv9GA0L7Qv9GD0YHQvdC10YLQtSDQvtC/0YbQuNGP0YLQsCDigJ4tLWdsb2JhbOKAnCwg0YHQsNC80L7Qu9C40YfQvdC+0YHRgtGC0LAg0LUg0YHQsNC80L4g0LfQsCDRgtC10LrRg9GJ0L7RgtC+ICIKICLRhdGA0LDQvdC40LvQuNGJ0LUuXG4iCiAiXG4iCiAKLSM6IGlkZW50LmM6MzY5CisjOiBpZGVudC5jOjM3OQogbXNnaWQgIm5vIGVtYWlsIHdhcyBnaXZlbiBhbmQgYXV0by1kZXRlY3Rpb24gaXMgZGlzYWJsZWQiCiBtc2dzdHIgItC70LjQv9GB0LLQsCDQsNC00YDQtdGBINC30LAg0LUt0L/QvtGJ0LAsINCwINCw0LLRgtC+0LzQsNGC0LjRh9C90L7RgtC+INC+0YLQs9Cw0YLQstCw0L3QtSDQtSDQuNC30LrQu9GO0YfQtdC90L4iCiAKLSM6IGlkZW50LmM6Mzc0CisjOiBpZGVudC5jOjM4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYXV0by1kZXRlY3QgZW1haWwgYWRkcmVzcyAoZ290ICclcycpIgogbXNnc3RyICIiCiAi0LDQtNGA0LXRgdGK0YIg0LfQsCDQtS3Qv9C+0YnQsCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtCz0LDRgtC90LDRgiAo0L3QsNC5LdC00L7QsdGA0L7RgtC+INC/0YDQtdC00L/QvtC70L7QttC10L3QuNC1INCx0LUgIgogIuKAniVz4oCcKSIKIAotIzogaWRlbnQuYzozODQKKyM6IGlkZW50LmM6NDAxCiBtc2dpZCAibm8gbmFtZSB3YXMgZ2l2ZW4gYW5kIGF1dG8tZGV0ZWN0aW9uIGlzIGRpc2FibGVkIgogbXNnc3RyICLQu9C40L/RgdCy0LAg0LjQvNC1LCDQsCDQsNCy0YLQvtC80LDRgtC40YfQvdC+0YLQviDQvtGC0LPQsNGC0LLQsNC90LUg0LUg0LjQt9C60LvRjtGH0LXQvdC+IgogCi0jOiBpZGVudC5jOjM5MAorIzogaWRlbnQuYzo0MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGF1dG8tZGV0ZWN0IG5hbWUgKGdvdCAnJXMnKSIKIG1zZ3N0ciAi0LjQvNC10YLQviDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtCz0LDRgtC90LDRgtC+ICjQvdCw0Lkt0LTQvtCx0YDQvtGC0L4g0L/RgNC10LTQv9C+0LvQvtC20LXQvdC40LUg0LHQtSDigJ4lc+KAnCkiCiAKLSM6IGlkZW50LmM6Mzk4CisjOiBpZGVudC5jOjQxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJlbXB0eSBpZGVudCBuYW1lIChmb3IgPCVzPikgbm90IGFsbG93ZWQiCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0L7Qu9C30LLQsCDQv9GA0LDQt9C90L4g0LjQvNC1INC60LDRgtC+INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGAICjQt9CwIDwlcz4pIgogCi0jOiBpZGVudC5jOjQwNAorIzogaWRlbnQuYzo0MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAibmFtZSBjb25zaXN0cyBvbmx5IG9mIGRpc2FsbG93ZWQgY2hhcmFjdGVyczogJXMiCiBtc2dzdHIgItC40LzQtdGC0L4g0YHRitC00YrRgNC20LAg0YHQsNC80L4g0L3QtdC/0L7Qt9Cy0L7Qu9C10L3QuCDQt9C90LDRhtC4OiDigJ4lc+KAnCIKIAotIzogaWRlbnQuYzo0MTkgYnVpbHRpbi9jb21taXQuYzo2MDYKKyM6IGlkZW50LmM6NDM2IGJ1aWx0aW4vY29tbWl0LmM6NjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZGF0ZSBmb3JtYXQ6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDRhNC+0YDQvNCw0YIg0L3QsCDQtNCw0YLQsDogJXMiCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjM1Ci1tc2dpZCAibXVsdGlwbGUgZmlsdGVyLXNwZWNzIGNhbm5vdCBiZSBjb21iaW5lZCIKLW1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINC60L7QvNCx0LjQvdC40YDQsNGC0LUg0LzQvdC+0LbQtdGB0YLQstC+INGE0LjQu9GC0YDQuCIKKyM6IGxpc3Qtb2JqZWN0cy5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICJlbnRyeSAnJXMnIGluIHRyZWUgJXMgaGFzIHRyZWUgbW9kZSwgYnV0IGlzIG5vdCBhIHRyZWUiCittc2dzdHIgItC+0LHQtdC60YIg4oCeJXPigJwg0LIg0LTRitGA0LLQvtGC0L4g4oCeJXPigJwg0LUg0L7RgtCx0LXQu9GP0LfQsNC9INC60LDRgtC+INC00YrRgNCy0L4sINC90L4g0L3QtSDQtSIKKworIzogbGlzdC1vYmplY3RzLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgImVudHJ5ICclcycgaW4gdHJlZSAlcyBoYXMgYmxvYiBtb2RlLCBidXQgaXMgbm90IGEgYmxvYiIKK21zZ3N0ciAi0L7QsdC10LrRgiDigJ4lc+KAnCDQsiDQtNGK0YDQstC+0YLQviDigJ4lc+KAnCDQtSDQvtGC0LHQtdC70Y/Qt9Cw0L0g0LrQsNGC0L4gQkxPQiwg0L3QviDQvdC1INC1IgorCisjOiBsaXN0LW9iamVjdHMuYzozNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGxvYWQgcm9vdCB0cmVlIGZvciBjb21taXQgJXMiCittc2dzdHIgItC60L7RgNC10L3QvtCy0L7RgtC+INC00YrRgNCy0L4g0LfQsCDQv9C+0LTQsNCy0LDQvdC1IOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC30LDRgNC10LTQuCIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIHNwYXJzZSBibG9iIGluICclcyciCittc2dzdHIgItC90Y/QvNCwINC00L7RgdGC0YrQvyDQtNC+INGH0LDRgdGC0LjRh9C90L4g0LjQt9GC0LXQs9C70LXQvdC40Y8g0L7QsdC10LrRgi1CTE9CINCyIOKAniVz4oCcIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLmM6NDk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBzcGFyc2UgZmlsdGVyIGRhdGEgaW4gJXMiCittc2dzdHIgIiIKKyLQtNCw0L3QvdC40YLQtSDQvtGCINGE0LjQu9GC0YrRgNCwINC30LAg0YfQsNGB0YLQuNGH0L3QuCDQuNC30YLQtdCz0LvRj9C90LjRjyDQsiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LDRgiDQsNC90LDQu9C40LfQuNGA0LDQvdC4IgogCiAjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo1OAotbXNnaWQgIm9ubHkgJ3RyZWU6MCcgaXMgc3VwcG9ydGVkIgotbXNnc3RyICLQv9C+0LTQtNGK0YDQttCwINGB0LUg0LXQtNC40L3RgdGC0LLQtdC90L4g4oCedHJlZTow4oCcIgorbXNnaWQgImV4cGVjdGVkICd0cmVlOjxkZXB0aD4nIgorbXNnc3RyICLQvtGH0LDQutCy0LAg0YHQtSDigJ50cmVlOtCU0KrQm9CR0J7Qp9CY0J3QkOKAnCIKIAotIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTM3Ci1tc2dpZCAiY2Fubm90IGNoYW5nZSBwYXJ0aWFsIGNsb25lIHByb21pc29yIHJlbW90ZSIKLW1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINC/0YDQvtC80LXQvdC40YLQtSDRhdGA0LDQvdC40LvQuNGJ0LXRgtC+LdCz0LDRgNCw0L3RgiDQvdCwINC90LXQv9GK0LvQvdC+INGF0YDQsNC90LjQu9C40YnQtSIKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjczCittc2dpZCAic3BhcnNlOnBhdGggZmlsdGVycyBzdXBwb3J0IGhhcyBiZWVuIGRyb3BwZWQiCittc2dzdHIgItC/0L7QtNC00YDRitC20LrQsNGC0LAg0L3QsCDRhNC40LvRgtGA0Lgg0YHRitGBIOKAnnNwYXJzZTpwYXRo4oCcINC1INC/0YDQtdC80LDRhdC90LDRgtCwIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGZpbHRlci1zcGVjICclcyciCittc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INGE0LjQu9GC0YrRgDog4oCeJXPigJwiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJtdXN0IGVzY2FwZSBjaGFyIGluIHN1Yi1maWx0ZXItc3BlYzogJyVjJyIKK21zZ3N0ciAi0LfQvdCw0Log0LfQsCDQtdC60YDQsNC90LjRgNCw0L3QtSDQsiDQv9C+0LTRhNC40LvRgtGK0YA6IOKAniVj4oCcIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxNDQKK21zZ2lkICJleHBlY3RlZCBzb21ldGhpbmcgYWZ0ZXIgY29tYmluZToiCittc2dzdHIgItC00L7QsdCw0LLQtdGC0LUg0L3QtdGJ0L4g0YHQu9C10LQg0LrQvtC80LHQuNC90LjRgNCw0L3QtdGC0L46IgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoyMjYKK21zZ2lkICJtdWx0aXBsZSBmaWx0ZXItc3BlY3MgY2Fubm90IGJlIGNvbWJpbmVkIgorbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0LrQvtC80LHQuNC90LjRgNCw0YLQtSDQvNC90L7QttC10YHRgtCy0L4g0YTQuNC70YLRgNC4IgogCiAjOiBsb2NrZmlsZS5jOjE1MQogIywgYy1mb3JtYXQKQEAgLTMwNTksMTI1ICs0NTY3LDEyMiBAQAogbXNnaWQgImZhaWxlZCB0byByZWFkIHRoZSBjYWNoZSIKIG1zZ3N0ciAi0LrQtdGI0YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogbWVyZ2UuYzoxMDcgcmVyZXJlLmM6NzIwIGJ1aWx0aW4vYW0uYzoxODk5IGJ1aWx0aW4vYW0uYzoxOTMzCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Mzg3IGJ1aWx0aW4vY2hlY2tvdXQuYzo3MDggYnVpbHRpbi9jbG9uZS5jOjc2NAorIzogbWVyZ2UuYzoxMDcgcmVyZXJlLmM6NzIwIGJ1aWx0aW4vYW0uYzoxODc5IGJ1aWx0aW4vYW0uYzoxOTEzCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTQxIGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDAgYnVpbHRpbi9jbG9uZS5jOjgxMAorIzogYnVpbHRpbi9zdGFzaC5jOjI2NQogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC30LDQv9C40YHQstCw0L3QtSDQvdCwINC90L7QstC40Y8g0LjQvdC00LXQutGBIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NgogbXNnaWQgIihiYWQgY29tbWl0KVxuIgogbXNnc3RyICIo0LvQvtGI0L4g0L/QvtC00LDQstCw0L3QtSlcbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQ1CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkX2NhY2hlaW5mbyBmYWlsZWQgZm9yIHBhdGggJyVzJzsgbWVyZ2UgYWJvcnRpbmcuIgogbXNnc3RyICIiCiAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg4oCeYWRkX2NhY2hlaW5mb+KAnCDQt9CwINC/0YrRgtGPIOKAniVz4oCcLiAg0KHQu9C40LLQsNC90LXRgtC+INC1ICIKICLQv9GA0LXRg9GB0YLQsNC90L7QstC10L3Qvi4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1MworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mzg4CiAjLCBjLWZvcm1hdAogbXNnaWQgImFkZF9jYWNoZWluZm8gZmFpbGVkIHRvIHJlZnJlc2ggZm9yIHBhdGggJyVzJzsgbWVyZ2UgYWJvcnRpbmcuIgogbXNnc3RyICIiCiAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg4oCeYWRkX2NhY2hlaW5mb+KAnCDQt9CwINC+0LHQvdC+0LLRj9Cy0LDQvdC10YLQviDQvdCwINC/0YrRgtGPIOKAniVz4oCcLiAgIgogItCh0LvQuNCy0LDQvdC10YLQviDQtSDQv9GA0LXRg9GB0YLQsNC90L7QstC10L3Qvi4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjQzNQotbXNnaWQgImVycm9yIGJ1aWxkaW5nIHRyZWVzIgotbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INC40LfQs9GA0LDQttC00LDQvdC1INC90LAg0LTRitGA0LLQtdGC0LDRgtCwIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5MDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBhdGggJyVzJyVzIgogbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INGB0YrQt9C00LDQstCw0L3QtdGC0L4g0L3QsCDQv9GK0YLRjyDigJ4lc+KAnCVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5MTcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyAlcyB0byBtYWtlIHJvb20gZm9yIHN1YmRpcmVjdG9yeVxuIgogbXNnc3RyICLQmNC30YLRgNC40LLQsNC90LUg0L3QsCDigJ4lc+KAnCwg0LfQsCDQtNCwINGB0LUg0L7RgdCy0L7QsdC+0LTQuCDQvNGP0YHRgtC+INC30LAg0L/QvtC00LTQuNGA0LXQutGC0L7RgNC40Y9cbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTMxIG1lcmdlLXJlY3Vyc2l2ZS5jOjk1MAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6ODk5IG1lcmdlLXJlY3Vyc2l2ZS5jOjkxOAogbXNnaWQgIjogcGVyaGFwcyBhIEQvRiBjb25mbGljdD8iCiBtc2dzdHIgIjog0LLRitC30LzQvtC20L3QviDQtSDQtNCwINC40LzQsCDQutC+0L3RhNC70LjQutGCINC00LjRgNC10LrRgtC+0YDQuNGPL9GE0LDQudC7LiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTQwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAnJXMnIgogbXNnc3RyICIiCiAi0L/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LTQtdC50YHRgtCy0LjQtdGC0L4sINC30LAg0LTQsCDQvdC1INGB0LUg0LjQt9GC0YDQuNC1INC90LXRgdC70LXQtNC10L3QuNGP0YIg0YTQsNC50Lsg4oCeJXPigJwiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk4MiBidWlsdGluL2NhdC1maWxlLmM6MzkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk0OSBidWlsdGluL2NhdC1maWxlLmM6NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgb2JqZWN0ICVzICclcyciCiBtc2dzdHIgItC+0LHQtdC60YLRitGCIOKAniVz4oCcICglcykg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L0iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk4NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJsb2IgZXhwZWN0ZWQgZm9yICVzICclcyciCiBtc2dzdHIgItC+0LHQtdC60YLRitGCIOKAniVz4oCcICglcykg0YHQtSDQvtGH0LDQutCy0LDRiNC1INC00LAg0LUgQkxPQiwg0LAg0L3QtSDQtSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTAwOAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyc6ICVzIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtGC0LLQvtGA0Lg6ICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDE5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN5bWxpbmsgJyVzJzogJXMiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDRgdGK0LfQtNCw0LLQsNC90LUg0L3QsCDRgdC40LzQstC+0LvQvdCw0YLQsCDQstGA0YrQt9C60LAg4oCeJXPigJw6ICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZG8gbm90IGtub3cgd2hhdCB0byBkbyB3aXRoICUwNm8gJXMgJyVzJyIKIG1zZ3N0ciAiIgogItC90LUg0LUg0Y/RgdC90L4g0LrQsNC60LLQviDQtNCwINGB0LUg0L/RgNCw0LLQuCDRgSDQvtCx0LXQutGC0LAg4oCeJTIkc+KAnCAoJTMkcykg0YEg0L/RgNCw0LLQsCDQt9CwINC00L7RgdGC0YrQvyDigJ4lMSQwNm/igJwiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjExOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobm90IGNoZWNrZWQgb3V0KSIKIG1zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdC+INGB0LvQuNCy0LDQvdC1INC90LAg0L/QvtC00LzQvtC00YPQu9CwIOKAniVz4oCcICjQvdC1INC1INC40LfRgtC10LPQu9C10L0pIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjE5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKGNvbW1pdHMgbm90IHByZXNlbnQpIgogbXNnc3RyICLQndC10YPRgdC/0LXRiNC90L4g0YHQu9C40LLQsNC90LUg0L3QsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwgKNC90Y/QvNCwINC/0L7QtNCw0LLQsNC90LjRjykiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMjYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAoY29tbWl0cyBkb24ndCBmb2xsb3cgbWVyZ2UtYmFzZSkiCiBtc2dzdHIgIiIKICLQn9C+0LTQvNC+0LTRg9C70YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHQu9GP0YIgKNCx0LDQt9Cw0YLQsCDQt9CwINGB0LvQuNCy0LDQvdC1INC90LUg0L/RgNC10LTRiNC10YHRgtCy0LAgIgogItC/0L7QtNCw0LLQsNC90LjRj9GC0LApIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjM0IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTMgbWVyZ2UtcmVjdXJzaXZlLmM6MTIyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIHRvIHRoZSBmb2xsb3dpbmcgY29tbWl0OiIKIG1zZ3N0ciAi0J/RgNC10LLRitGA0YLQsNC90LUg0L3QsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwg0LTQviDRgdC70LXQtNC90L7RgtC+INC/0L7QtNCw0LLQsNC90LU6IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjM3IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNDkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTYgbWVyZ2UtcmVjdXJzaXZlLmM6MTIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIgogbXNnc3RyICLQn9GA0LXQstGK0YDRgtCw0L3QtSDQvdCwINC/0L7QtNC80L7QtNGD0LvQsCDigJ4lc+KAnCIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3MQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChtZXJnZSBmb2xsb3dpbmcgY29tbWl0cyBub3QgZm91bmQpIgogbXNnc3RyICIiCiAi0J3QtdGD0YHQv9C10YjQvdC+INGB0LvQuNCy0LDQvdC1INC90LAg0L/QvtC00LzQvtC00YPQu9CwIOKAniVz4oCcICjQu9C40L/RgdCy0LAg0YHQu9C40LLQsNC90LXRgtC+LCDQutC+0LXRgtC+INGB0LUg0L/RgNC10LTRiNC10YHRgtCy0LAgIgogItC+0YIg0L/QvtC00LDQstCw0L3QuNGP0YLQsCkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobm90IGZhc3QtZm9yd2FyZCkiCiBtc2dzdHIgItCd0LXRg9GB0L/QtdGI0L3QviDRgdC70LjQstCw0L3QtSDQvdCwINC/0L7QtNC80L7QtNGD0LvQsCDigJ4lc+KAnCAo0L3QtSDQtSDQv9GA0LXQstGK0YDRgtCw0L3QtSkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTYKIG1zZ2lkICJGb3VuZCBhIHBvc3NpYmxlIG1lcmdlIHJlc29sdXRpb24gZm9yIHRoZSBzdWJtb2R1bGU6XG4iCiBtc2dzdHIgIiIKICLQntGC0LrRgNC40YLQviDQtSDRgdC70LjQstCw0L3QtSwg0LrQvtC10YLQviDQvNC+0LbQtSDQtNCwINGA0LXRiNCw0LLQsCDQv9GA0L7QsdC70LXQvNCwINGB0YrRgSDRgdC70LjQstCw0L3QtdGC0L4g0L3QsCAiCiAi0L/QvtC00LzQvtC00YPQu9CwOlxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjc5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJZiB0aGlzIGlzIGNvcnJlY3Qgc2ltcGx5IGFkZCBpdCB0byB0aGUgaW5kZXggZm9yIGV4YW1wbGVcbiIKQEAgLTMxOTMsMzEgKzQ2OTgsMzEgQEAKICJcbiIKICLQotC+0LLQsCDQv9GA0LjQtdC80LAg0L/RgNC10LTQu9C+0LbQtdC90L7RgtC+LlxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjg4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG11bHRpcGxlIG1lcmdlcyBmb3VuZCkiCiBtc2dzdHIgItCd0LXRg9GB0L/QtdGI0L3QviDRgdC70LjQstCw0L3QtSDQvdCwINC/0L7QtNC80L7QtNGD0LvQsCDigJ4lc+KAnCAo0L7RgtC60YDQuNGC0Lgg0YHQsCDQvNC90L7QttC10YHRgtCy0L4g0YHQu9C40LLQsNC90LjRjykiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNTgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNDEKIG1zZ2lkICJGYWlsZWQgdG8gZXhlY3V0ZSBpbnRlcm5hbCBtZXJnZSIKIG1zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdC+INCy0YrRgtGA0LXRiNC90L4g0YHQu9C40LLQsNC90LUiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNjMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGFkZCAlcyB0byBkYXRhYmFzZSIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LTQvtCx0LDQstC4INCyINCx0LDQt9Cw0YLQsCDRgSDQtNCw0L3QvdC4IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzk1CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG8tbWVyZ2luZyAlcyIKIG1zZ3N0ciAi0JDQstGC0L7QvNCw0YLQuNGH0L3QviDRgdC70LjQstCw0L3QtSDQvdCwIOKAniVz4oCcIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDE2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkVycm9yOiBSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzOyB3cml0aW5nIHRvICVzIGluc3RlYWQuIgogbXNnc3RyICLQk9GA0LXRiNC60LA6INC30LAg0LTQsCDQvdC1INGB0LUg0LjQt9GC0YDQuNC1INC90LXRgdC70LXQtNC10L3QuNGP0YIg0YTQsNC50Lsg4oCeJXPigJwsINGB0LUg0LfQsNC/0LjRgdCy0LAg0LIg4oCeJXPigJwuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDgzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgbGVmdCAiCkBAIC0zMjI2LDcgKzQ3MzEsNyBAQAogItCa0J7QndCk0JvQmNCa0KIgKCVzL9C40LfRgtGA0LjQstCw0L3QtSk6IOKAniVz4oCcINC1INC40LfRgtGA0LjRgiDQsiAlcywg0LAg4oCeJXPigJwg0LIgJXMuICDQktC10YDRgdC40Y8gJXMg0L3QsCDigJ4lc+KAnCAiCiAi0LUg0L7RgdGC0LDQstC10L3QsCDQsiDQtNGK0YDQstC+0YLQvi4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0ODgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyB0byAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyAiCkBAIC0zMjM1LDcgKzQ3NDAsNyBAQAogItCa0J7QndCk0JvQmNCa0KIgKCVzL9C40LfRgtGA0LjQstCw0L3QtSk6IOKAniVz4oCcINC1INC40LfRgtGA0LjRgiDQsiAlcywg0LAg4oCeJXPigJwg0LUg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvSDQvdCwIOKAniVz4oCcINCyICIKICIlcy4gINCS0LXRgNGB0LjRjyAlcyDQvdCwIOKAniVz4oCcINC1INC+0YHRgtCw0LLQtdC90LAg0LIg0LTRitGA0LLQvtGC0L4uIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDk1CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgbGVmdCAiCkBAIC0zMjQ0LDcgKzQ3NDksNyBAQAogItCa0J7QndCk0JvQmNCa0KIgKCVzL9C40LfRgtGA0LjQstCw0L3QtSk6IOKAniVz4oCcINC1INC40LfRgtGA0LjRgiDQsiAlcywg0LAg4oCeJXPigJwg0LIgJXMuICDQktC10YDRgdC40Y8gJXMg0L3QsCDigJ4lc+KAnCAiCiAi0LUg0L7RgdGC0LDQstC10L3QsCDQsiDQtNGK0YDQstC+0YLQvjogJXMuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTAwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgdG8gJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgIgpAQCAtMzI1MywzMyArNDc1OCw0NSBAQAogItCa0J7QndCk0JvQmNCa0KIgKCVzL9C40LfRgtGA0LjQstCw0L3QtSk6IOKAniVz4oCcINC1INC40LfRgtGA0LjRgiDQsiAlcywg0LAg4oCeJXPigJwg0LUg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvSDQvdCwIOKAniVz4oCcINCyICIKICIlcy4gINCS0LXRgNGB0LjRjyAlcyDQvdCwIOKAniVz4oCcINC1INC+0YHRgtCw0LLQtdC90LAg0LIg0LTRitGA0LLQvtGC0L46ICVzLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUzNAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUyNgogbXNnaWQgInJlbmFtZSIKIG1zZ3N0ciAi0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTM0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTI2CiBtc2dpZCAicmVuYW1lZCIKIG1zZ3N0ciAi0L/RgNC10LjQvNC10L3Rg9Cy0LDQvSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTU4OCBtZXJnZS1yZWN1cnNpdmUuYzoxNzM3IG1lcmdlLXJlY3Vyc2l2ZS5jOjIzNjkKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMxMjQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1NzcgbWVyZ2UtcmVjdXJzaXZlLmM6MjQ3MiBtZXJnZS1yZWN1cnNpdmUuYzozMTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgZGlydHkgZmlsZSBhdCAlcyIKIG1zZ3N0ciAi0J/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LTQtdC50YHRgtCy0LjQtdGC0L4sINC30LAg0LTQsCDQvdC1INGB0LUg0LjQt9Cz0YPQsdC4INC/0YDQvtC80LXQvdC10L3QuNGP0YIg4oCeJXPigJwiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MDIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlcywgZXZlbiB0aG91Z2ggaXQncyBpbiB0aGUgd2F5LiIKK21zZ3N0ciAiIgorItCe0YLQutCw0Lcg0LTQsCDRgdC1INC30LDQs9GD0LHQuCDQvdC10YHQu9C10LTQtdC90LjRj9GCINGE0LDQudC7IOKAniVz4oCcLCDQt9Cw0YnQvtGC0L4g0LUg0L3QsCDQvNGP0YHRgtC+LCDQutGK0LTQtdGC0L4g0L/RgNC10YfQuC4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9hZGQpOiBSZW5hbWUgJXMtPiVzIGluICVzLiAgQWRkZWQgJXMgaW4gJXMiCittc2dzdHIgIiIKKyLQmtCe0J3QpNCb0JjQmtCiICjQv9GA0LXQuNC80LXQvdGD0LLQsNC90LUv0LTQvtCx0LDQstGP0L3QtSk6IOKAniVz4oCcINC1INC/0YDQtdC40LzQtdC90YPQstCw0L0g0L3QsCDigJ4lc+KAnCDQsiDQutC70L7QvSDigJ4lc+KAnCwg0LAgIgorIuKAniVz4oCcINC1INC00L7QsdCw0LLQtdC9INCyIOKAniVz4oCcIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIGEgZGlyZWN0b3J5IGluICVzIGFkZGluZyBhcyAlcyBpbnN0ZWFkIgogbXNnc3RyICLigJ4lc+KAnCDQtSDQtNC40YDQtdC60YLQvtGA0LjRjyDQsiDigJ4lc+KAnCwg0LfQsNGC0L7QstCwINGB0LUg0LTQvtCx0LDQstGPINC60LDRgtC+IOKAniVz4oCcIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjA3CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXM7IGFkZGluZyBhcyAlcyBpbnN0ZWFkIgogbXNnc3RyICIiCiAi0J/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LTQtdC50YHRgtCy0LjQtdGC0L4sINC30LAg0LTQsCDQvdC1INGB0LUg0LjQt9Cz0YPQsdC4INC90LXRgdC70LXQtNC10L3QuNGP0YIg0YTQsNC50Lsg4oCeJXPigJwuICAiCiAi0JLQvNC10YHRgtC+INC90LXQs9C+INGB0LUg0LTQvtCx0LDQstGPIOKAniVz4oCcIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjMzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAocmVuYW1lL3JlbmFtZSk6IFJlbmFtZSBcIiVzXCItPlwiJXNcIiBpbiBicmFuY2ggXCIlc1wiIHJlbmFtZSBcIiVzIgpAQCAtMzI4OCwyOSArNDgwNSwxOCBAQAogItCa0J7QndCk0JvQmNCa0KIgKNC/0YDQtdC40LzQtdC90YPQstCw0L3QtS/Qv9GA0LXQuNC80LXQvdGD0LLQsNC90LUpOiDigJ4lc+KAnCDQtSDQv9GA0LXQuNC80LXQvdGD0LLQsNC9INC90LAg4oCeJXPigJwg0LIg0LrQu9C+0L0gIgogIuKAniVz4oCcLCDQsCDigJ4lc+KAnCDQtSDQv9GA0LXQuNC80LXQvdGD0LLQsNC9INC90LAg4oCeJXPigJwg0LIg4oCeJXPigJwvJXMuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjM4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzEzCiBtc2dpZCAiIChsZWZ0IHVucmVzb2x2ZWQpIgogbXNnc3RyICIgKNC90LXQutC+0YDQuNCz0LjRgNCw0L0g0LrQvtC90YTQu9C40LrRgikiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2OTkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiBSZW5hbWUgJXMtPiVzIGluICVzLiBSZW5hbWUgJXMtPiVzIGluICVzIgogbXNnc3RyICIiCiAi0JrQntCd0KTQm9CY0JrQoiAo0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1L9C/0YDQtdC40LzQtdC90YPQstCw0L3QtSk6IOKAniVz4oCcINC1INC/0YDQtdC40LzQtdC90YPQstCw0L0g0L3QsCDigJ4lc+KAnCDQsiDQutC70L7QvSAiCiAi4oCeJXPigJwsINCwIOKAniVz4oCcINC1INC/0YDQtdC40LzQtdC90YPQstCw0L0g0L3QsCDigJ4lc+KAnCDQsiDigJ4lc+KAnCIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTczNAotIywgYy1mb3JtYXQKLW1zZ2lkICJSZW5hbWluZyAlcyB0byAlcyBhbmQgJXMgdG8gJXMgaW5zdGVhZCIKLW1zZ3N0ciAi0J/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1INC90LAg4oCeJXPigJwg0L3QsCDigJ4lc+KAnCwg0LAg4oCeJXPigJwg0L3QsCDigJ4lc+KAnCIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTc0NgotIywgYy1mb3JtYXQKLW1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzLCBldmVuIHRob3VnaCBpdCdzIGluIHRoZSB3YXkuIgotbXNnc3RyICIiCi0i0J7RgtC60LDQtyDQtNCwINGB0LUg0LfQsNCz0YPQsdC4INC90LXRgdC70LXQtNC10L3QuNGP0YIg0YTQsNC50Lsg4oCeJXPigJwsINC30LDRidC+0YLQviDQtSDQvdCwINC80Y/RgdGC0L4sINC60YrQtNC10YLQviDQv9GA0LXRh9C4LiIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTk1MgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjA1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKGRpcmVjdG9yeSByZW5hbWUgc3BsaXQpOiBVbmNsZWFyIHdoZXJlIHRvIHBsYWNlICVzIGJlY2F1c2UgIgpAQCAtMzMyMSw3ICs0ODI3LDcgQEAKICLQv9C+0YHRgtCw0LLQuCDigJ4lc+KAnCwg0LfQsNGJ0L7RgtC+INC90Y/QutC+0LvQutC+INC90L7QstC4INC00LjRgNC10LrRgtC+0YDQuNC4INC/0L7QtNC10LvRj9GCINGB0YrQtNGK0YDQttCw0L3QuNC10YLQviDQvdCwICIKICLQtNC40YDQtdC60YLQvtGA0LjRjyDigJ4lc+KAnCwg0LrQsNGC0L4g0L3QuNC60L7RjyDQvdC1INGB0YrQtNGK0YDQttCwINC80L3QvtC30LjQvdGB0YLQstC+INC+0YIg0YTQsNC50LvQvtCy0LXRgtC1INGdLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTk4NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjA4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKGltcGxpY2l0IGRpciByZW5hbWUpOiBFeGlzdGluZyBmaWxlL2RpciBhdCAlcyBpbiB0aGUgd2F5IG9mICIKQEAgLTMzMzAsNyArNDgzNiw3IEBACiAi0JrQntCd0KTQm9CY0JrQoiAo0LrQvtGB0LLQtdC90L4g0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1INC90LAg0LTQuNGA0LXQutGC0L7RgNC40Y8pOiDRgdC70LXQtNC90LjRj9GCINGE0LDQudC7INC40LvQuCDQtNC40YDQtdC60YLQvtGA0LjRjyAiCiAi4oCeJXPigJwg0L3QtSDQv9C+0LfQstC+0LvRj9Cy0LDRgiDQutC+0YHQstC10L3QvtGC0L4g0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1INC90LAg0YHQu9C10LTQvdC40Y8g0L/RitGCL9C40YnQsDogJXMuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxOTk0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoaW1wbGljaXQgZGlyIHJlbmFtZSk6IENhbm5vdCBtYXAgbW9yZSB0aGFuIG9uZSBwYXRoIHRvICVzOyAiCkBAIC0zMzQwLDcgKzQ4NDYsNyBAQAogItGB0YrQvtGC0LLQtdGC0YHRgtCy0LAg0L3QsCDigJ4lc+KAnC4gINCa0L7RgdCy0LXQvdC+INC/0YDQtdC40LzQtdC90YPQstCw0L3QtSDQvdCwINC00LjRgNC10LrRgtC+0YDQuNGPINCy0L7QtNC4INC00L4g0L/QvtGB0YLQsNCy0Y/QvdC10YLQviAiCiAi0L3QsCDRgtC10LfQuCDQv9GK0YLQuNGJ0LAg0YLQsNC8OiAlcy4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwODYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIxOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIGRpcmVjdG9yeSAlcy0+JXMgaW4gJXMuIFJlbmFtZSBkaXJlY3RvcnkgJXMtIgpAQCAtMzM0OSw3ICs0ODU1LDcgQEAKICLQmtCe0J3QpNCb0JjQmtCiICjQv9GA0LXQuNC80LXQvdGD0LLQsNC90LUv0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1KTog4oCeJXPigJwg0LUg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvSDQvdCwIOKAniVz4oCcINCyINC60LvQvtC9ICIKICLigJ4lc+KAnCwg0LAg4oCeJXPigJwg0LUg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvSDQvdCwIOKAniVz4oCcINCyIOKAniVz4oCcIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyMzMxCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyNDM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJXQVJOSU5HOiBBdm9pZGluZyBhcHBseWluZyAlcyAtPiAlcyByZW5hbWUgdG8gJXMsIGJlY2F1c2UgJXMgaXRzZWxmIHdhcyAiCkBAIC0zMzU4LDg5ICs0ODY0LDE0MiBAQAogItCf0KDQldCU0KPQn9Cg0JXQltCU0JXQndCY0JU6INC/0YDQtdGB0LrQsNGH0LDQvdC1INC90LAg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC10YLQviDQvdCwIOKAniVz4oCcINC90LAg4oCeJXPigJwg0LIg4oCeJXPigJwsINC30LDRidC+0YLQviAiCiAi4oCeJXPigJwg0YHRitGJ0L4g0LUg0YEg0L/RgNC+0LzQtdC90LXQvdC+INC40LzQtS4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI3MzcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9hZGQpOiBSZW5hbWUgJXMtPiVzIGluICVzLiAlcyBhZGRlZCBpbiAlcyIKLW1zZ3N0ciAiIgotItCa0J7QndCk0JvQmNCa0KIgKNC/0YDQtdC40LzQtdC90YPQstCw0L3QtS/QtNC+0LHQsNCy0Y/QvdC1KTog4oCeJXPigJwg0LUg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvSDQvdCwIOKAniVz4oCcINCyINC60LvQvtC9IOKAniVz4oCcLCDQsCAiCi0i4oCeJXPigJwg0LUg0LTQvtCx0LDQstC10L0g0LIg4oCeJXPigJwiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI3NjMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQWRkaW5nIG1lcmdlZCAlcyIKLW1zZ3N0ciAi0JTQvtCx0LDQstGP0L3QtSDQvdCwINGB0LvQtdGC0LjRjyDigJ4lc+KAnCIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjc3MCBtZXJnZS1yZWN1cnNpdmUuYzozMTI3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkFkZGluZyBhcyAlcyBpbnN0ZWFkIgotbXNnc3RyICLQlNC+0LHQsNCy0Y/QvdC1INC60LDRgtC+IOKAniVz4oCcIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyOTM0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyOTYxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCAlcyIKIG1zZ3N0ciAi0L7QsdC10LrRgtGK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/RgNC+0YfQtdGC0LUiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5MzcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGlzIG5vdCBhIGJsb2IiCiBtc2dzdHIgItC+0LHQtdC60YLRitGCIOKAniVz4oCcINC90LUg0LUgQkxPQiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAwNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAyOAogbXNnaWQgIm1vZGlmeSIKIG1zZ3N0ciAi0L/RgNC+0LzRj9C90LAiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjgKIG1zZ2lkICJtb2RpZmllZCIKIG1zZ3N0ciAi0L/RgNC+0LzQtdC90LXQvSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAxNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA0MAogbXNnaWQgImNvbnRlbnQiCiBtc2dzdHIgItGB0YrQtNGK0YDQttCw0L3QuNC1IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDQ0CiBtc2dpZCAiYWRkL2FkZCIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtS/QtNC+0LHQsNCy0Y/QvdC1IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDcxCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwZWQgJXMgKG1lcmdlZCBzYW1lIGFzIGV4aXN0aW5nKSIKIG1zZ3N0ciAi0J/RgNC10YHQutCw0YfQsNC90LUg0L3QsCDigJ4lc+KAnCAo0YHQu9C10YLQuNGP0YIg0YDQtdC30YPQu9GC0LDRgiDQtSDQuNC00LXQvdGC0LjRh9C10L0g0YHRitGBINGB0LXQs9Cw0YjQvdC40Y8pIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkzIGdpdC1zdWJtb2R1bGUuc2g6ODU4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDg5IGdpdC1zdWJtb2R1bGUuc2g6MTAwMwogbXNnaWQgInN1Ym1vZHVsZSIKIG1zZ3N0ciAi0J/QntCU0JzQntCU0KPQmyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA5NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDT05GTElDVCAoJXMpOiBNZXJnZSBjb25mbGljdCBpbiAlcyIKIG1zZ3N0ciAi0JrQntCd0KTQm9CY0JrQoiAoJXMpOiDQmtC+0L3RhNC70LjQutGCINC/0YDQuCDRgdC70LjQstCw0L3QtSDQvdCwIOKAniVz4oCcIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjE2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyBhcyAlcyBpbnN0ZWFkIgorbXNnc3RyICLQlNC+0LHQsNCy0Y/QvdC1INC60LDRgtC+IOKAniVz4oCcIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYXRoIHVwZGF0ZWQ6ICVzIGFkZGVkIGluICVzIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkIGluICVzOyAiCisibW92aW5nIGl0IHRvICVzLiIKK21zZ3N0ciAiIgorItCe0LHQvdC+0LLQtdC9INC/0YrRgjog4oCeJXPigJwg0LUg0LTQvtCx0LDQstC10L0g0LIg4oCeJXPigJwg0LIg0LTQuNGA0LXQutGC0L7RgNC40Y8sINC60L7Rj9GC0L4g0LUg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdCwINCyICIKKyLigJ4lc+KAnC4gINCe0LHQtdC60YLRitGCINGB0LUg0LzQtdGB0YLQuCDQsiDigJ4lc+KAnC4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChmaWxlIGxvY2F0aW9uKTogJXMgYWRkZWQgaW4gJXMgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgd2FzIHJlbmFtZWQgIgorImluICVzLCBzdWdnZXN0aW5nIGl0IHNob3VsZCBwZXJoYXBzIGJlIG1vdmVkIHRvICVzLiIKK21zZ3N0ciAiIgorItCa0J7QndCk0JvQmNCa0KIgKNC80LXRgdGC0LAg0L3QsCDRhNCw0LnQu9C+0LLQtSk6IOKAniVz4oCcINC1INC00L7QsdCw0LLQtdC9INCyIOKAniVz4oCcINCyINC00LjRgNC10LrRgtC+0YDQuNGPLCDQutC+0Y/RgtC+INC1ICIKKyLQv9GA0LXQuNC80LXQvdGD0LLQsNC90LAg0LIg4oCeJXPigJwuICDQn9GA0LXQtNC70L7QttC10L3QuNC10YLQviDQtSDQtNCwINC/0YDQtdC80LXRgdGC0LjRgtC1INC+0LHQtdC60YLQsCDQsiDigJ4lc+KAnC4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhdGggdXBkYXRlZDogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgd2FzIHJlbmFtZWQgaW4gIgorIiVzOyBtb3ZpbmcgaXQgdG8gJXMuIgorbXNnc3RyICIiCisi0J7QsdC90L7QstC10L0g0L/RitGCOiDigJ4lc+KAnCDQtSDQv9GA0LXQuNC80LXQvdGD0LLQsNC9INC90LAg4oCeJXPigJwg0LIg4oCeJXPigJwg0LIg0LTQuNGA0LXQutGC0L7RgNC40Y8sINC60L7Rj9GC0L4g0LUgIgorItC/0YDQtdC40LzQtdC90YPQstCw0L3QsCDQsiDigJ4lc+KAnC4gINCe0LHQtdC60YLRitGCINGB0LUg0LzQtdGB0YLQuCDQsiDigJ4lc+KAnC4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChmaWxlIGxvY2F0aW9uKTogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgIgorIndhcyByZW5hbWVkIGluICVzLCBzdWdnZXN0aW5nIGl0IHNob3VsZCBwZXJoYXBzIGJlIG1vdmVkIHRvICVzLiIKK21zZ3N0ciAiIgorItCa0J7QndCk0JvQmNCa0KIgKNC80LXRgdGC0LAg0L3QsCDRhNCw0LnQu9C+0LLQtSk6IOKAniVz4oCcINC1INC/0YDQtdC40LzQtdC90YPQstCw0L0g0L3QsCDigJ4lc+KAnCDQsiDigJ4lc+KAnCDQsiDQtNC40YDQtdC60YLQvtGA0LjRjywgIgorItC60L7Rj9GC0L4g0LUg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdCwINCyIOKAniVz4oCcLiAg0J/RgNC10LTQu9C+0LbQtdC90LjQtdGC0L4g0LUg0LTQsCDQv9GA0LXQvNC10YHRgtC40YLQtSDQvtCx0LXQutGC0LAg0LIg4oCeJXPigJwuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzIgogbXNnc3RyICLQmNC30YLRgNC40LLQsNC90LUg0L3QsCDigJ4lc+KAnCIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI0MgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM1MAogbXNnaWQgImZpbGUvZGlyZWN0b3J5IgogbXNnc3RyICLRhNCw0LnQuy/QtNC40YDQtdC60YLQvtGA0LjRjyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI0OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM1NQogbXNnaWQgImRpcmVjdG9yeS9maWxlIgogbXNnc3RyICLQtNC40YDQtdC60YLQvtGA0LjRjy/RhNCw0LnQuyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI1NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDT05GTElDVCAoJXMpOiBUaGVyZSBpcyBhIGRpcmVjdG9yeSB3aXRoIG5hbWUgJXMgaW4gJXMuIEFkZGluZyAlcyBhcyAlcyIKIG1zZ3N0ciAiIgogItCa0J7QndCk0JvQmNCa0KIgKCVzKTog0KHRitGJ0LXRgdGC0LLRg9Cy0LAg0LTQuNGA0LXQutGC0L7RgNC40Y8g0L3QsCDQuNC80LUg4oCeJXPigJwg0LIg4oCeJXPigJwuICDQlNC+0LHQsNCy0Y/QvdC1INC90LAg4oCeJXPigJwgIgogItC60LDRgtC+IOKAniVz4oCcIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjY0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFkZGluZyAlcyIKIG1zZ3N0ciAi0JTQvtCx0LDQstGP0L3QtSDQvdCwIOKAniVz4oCcIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMzAwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUIChhZGQvYWRkKTogTWVyZ2UgY29uZmxpY3QgaW4gJXMiCittc2dzdHIgItCa0J7QndCk0JvQmNCa0KIgKNC00L7QsdCw0LLRj9C90LUv0LTQvtCx0LDQstGP0L3QtSk6INCa0L7QvdGE0LvQuNC60YIg0L/RgNC4INGB0LvQuNCy0LDQvdC1INC90LAg4oCeJXPigJwiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MjQKK21zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUhIgorbXNnc3RyICLQktC10YfQtSDQtSDQvtCx0L3QvtCy0LXQvdC+ISIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQzMworIywgYy1mb3JtYXQKK21zZ2lkICJtZXJnaW5nIG9mIHRyZWVzICVzIGFuZCAlcyBmYWlsZWQiCittc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDRgdC70LjQstCw0L3QtSDQvdCwINC00YrRgNCy0LXRgtCw0YLQsCDigJ4lc+KAnCDQuCDigJ4lc+KAnCIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzNworbXNnaWQgIk1lcmdpbmc6IgorbXNnc3RyICLQodC70LjQstCw0L3QtToiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yOiIKK21zZ2lkX3BsdXJhbCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yczoiCittc2dzdHJbMF0gItC+0YLQutGA0LjRgiDQtSAldSDQvtCx0Ykg0L/RgNC10LTRiNC10YHRgtCy0LXQvdC40Lo6IgorbXNnc3RyWzFdICLQvtGC0LrRgNC40YLQuCDRgdCwICV1INC+0LHRidC4INC/0YDQtdC00YjQtdGB0YLQstC10L3QuNGG0Lg6IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjAwCittc2dpZCAibWVyZ2UgcmV0dXJuZWQgbm8gY29tbWl0IgorbXNnc3RyICLRgdC70LjQstCw0L3QtdGC0L4g0L3QtSDQstGK0YDQvdCwINC/0L7QtNCw0LLQsNC90LUiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM2NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtMzQ0OSwxMzEgKzUwMDgsMTI0IEBACiAi0KHQu9C40LLQsNC90LXRgtC+INGJ0LUg0L/RgNC10LfQsNC/0LjRiNC1INC70L7QutCw0LvQvdC40YLQtSDQv9GA0L7QvNC10L3QuCDQvdCwINGC0LXQt9C4INGE0LDQudC70L7QstC1OlxuIgogIiAgICAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMxMQotbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZSEiCi1tc2dzdHIgItCS0LXRh9C1INC1INC+0LHQvdC+0LLQtdC90L4hIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMzIwCi0jLCBjLWZvcm1hdAotbXNnaWQgIm1lcmdpbmcgb2YgdHJlZXMgJXMgYW5kICVzIGZhaWxlZCIKLW1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INGB0LvQuNCy0LDQvdC1INC90LAg0LTRitGA0LLQtdGC0LDRgtCwIOKAniVz4oCcINC4IOKAniVz4oCcIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDE5Ci1tc2dpZCAiTWVyZ2luZzoiCi1tc2dzdHIgItCh0LvQuNCy0LDQvdC1OiIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQzMgotIywgYy1mb3JtYXQKLW1zZ2lkICJmb3VuZCAldSBjb21tb24gYW5jZXN0b3I6IgotbXNnaWRfcGx1cmFsICJmb3VuZCAldSBjb21tb24gYW5jZXN0b3JzOiIKLW1zZ3N0clswXSAi0L7RgtC60YDQuNGCINC1ICV1INC+0LHRiSDQv9GA0LXQtNGI0LXRgdGC0LLQtdC90LjQujoiCi1tc2dzdHJbMV0gItC+0YLQutGA0LjRgtC4INGB0LAgJXUg0L7QsdGJ0Lgg0L/RgNC10LTRiNC10YHRgtCy0LXQvdC40YbQuDoiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0NzEKLW1zZ2lkICJtZXJnZSByZXR1cm5lZCBubyBjb21taXQiCi1tc2dzdHIgItGB0LvQuNCy0LDQvdC10YLQviDQvdC1INCy0YrRgNC90LAg0L/QvtC00LDQstCw0L3QtSIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mzc1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgItCd0LXRg9GB0L/QtdGI0LXQvSDQsNC90LDQu9C40Lcg0L3QsCDQvtCx0LXQutGC0LAg4oCeJXPigJwiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NTMgYnVpbHRpbi9tZXJnZS5jOjY5MSBidWlsdGluL21lcmdlLmM6ODQ5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNzc0IGJ1aWx0aW4vbWVyZ2UuYzo2OTcgYnVpbHRpbi9tZXJnZS5jOjg3NwogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSBpbmRleC4iCiBtc2dzdHIgItCY0L3QtNC10LrRgdGK0YIg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L0iCiAKLSM6IG1pZHguYzo2NQorIzogbWlkeC5jOjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggZmlsZSAlcyBpcyB0b28gc21hbGwiCiBtc2dzdHIgItGE0LDQudC70YrRgiDRgSDQuNC90LTQtdC60YHQsCDQt9CwINC80L3QvtC20LXRgdGC0LLQviDQv9Cw0LrQtdGC0Lgg4oCeJXPigJwg0LUg0YLQstGK0YDQtNC1INC80LDQu9GK0LoiCiAKLSM6IG1pZHguYzo4MQorIzogbWlkeC5jOjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggc2lnbmF0dXJlIDB4JTA4eCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgMHglMDh4IgogbXNnc3RyICLQvtGC0L/QtdGH0LDRgtGK0LrRitGCINC90LAg0LjQvdC00LXQutGB0LAg0LfQsCDQvNC90L7QttC10YHRgtCy0L4g0L/QsNC60LXRgtC4IDB4JTA4eCDQvdC1INGB0YrQstC/0LDQtNCwINGBIDB4JTA4eCIKIAotIzogbWlkeC5jOjg2CisjOiBtaWR4LmM6ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCB2ZXJzaW9uICVkIG5vdCByZWNvZ25pemVkIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGC0LAg0LLQtdGA0YHQuNGPINC90LAg0LjQvdC00LXQutGBINC30LAg0LzQvdC+0LbQtdGB0YLQstC+INC/0LDQutC10YLQuCDigJQgJWQiCiAKLSM6IG1pZHguYzo5MQorIzogbWlkeC5jOjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImhhc2ggdmVyc2lvbiAldSBkb2VzIG5vdCBtYXRjaCIKIG1zZ3N0ciAi0LLQtdGA0YHQuNGP0YLQsCDQvdCwINC+0YLQv9C10YfQsNGC0YrQutCwICV1INC90LUg0YHRitCy0L/QsNC00LAiCiAKLSM6IG1pZHguYzoxMDUKKyM6IG1pZHguYzoxMDgKIG1zZ2lkICJpbnZhbGlkIGNodW5rIG9mZnNldCAodG9vIGxhcmdlKSIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90L4gKNC/0YDQtdC60LDQu9C10L3QviDQs9C+0LvRj9C80L4pINC+0YLQvNC10YHRgtCy0LDQvdC1INC90LAg0L7RgtC60YrRgSIKIAotIzogbWlkeC5jOjEyOQorIzogbWlkeC5jOjEzMgogbXNnaWQgInRlcm1pbmF0aW5nIG11bHRpLXBhY2staW5kZXggY2h1bmsgaWQgYXBwZWFycyBlYXJsaWVyIHRoYW4gZXhwZWN0ZWQiCiBtc2dzdHIgIiIKICLQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGK0YIg0LfQsCDQutGA0LDQtdC9INC+0YLQutGK0YEg0L3QsCDQuNC90LTQtdC60YEg0LfQsCDQvNC90L7QttC10YHRgtCy0L4g0L/QsNC60LXRgtC4INGB0LUg0Y/QstGP0LLQsCDQv9C+LSIKICLRgNCw0L3QviDQvtGCINC+0YfQsNC60LLQsNC90L7RgtC+IgogCi0jOiBtaWR4LmM6MTQyCisjOiBtaWR4LmM6MTQ1CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIHBhY2stbmFtZSBjaHVuayIKIG1zZ3N0ciAi0LvQuNC/0YHQstCwINC+0YLQutGK0YEgKHBhY2stbmFtZSkg0L7RgiDQuNC90LTQtdC60YEg0LfQsCDQvNC90L7QttC10YHRgtCy0L4g0L/QsNC60LXRgtC4IgogCi0jOiBtaWR4LmM6MTQ0CisjOiBtaWR4LmM6MTQ3CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIE9JRCBmYW5vdXQgY2h1bmsiCiBtc2dzdHIgItC70LjQv9GB0LLQsCDQvtGC0LrRitGBIChPSUQgZmFub3V0KSDQvtGCINC40L3QtNC10LrRgSDQt9CwINC80L3QvtC20LXRgdGC0LLQviDQv9Cw0LrQtdGC0LgiCiAKLSM6IG1pZHguYzoxNDYKKyM6IG1pZHguYzoxNDkKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgT0lEIGxvb2t1cCBjaHVuayIKIG1zZ3N0ciAi0LvQuNC/0YHQstCwINC+0YLQutGK0YEgKE9JRCBsb29rdXApINC+0YIg0LjQvdC00LXQutGBINC30LAg0LzQvdC+0LbQtdGB0YLQstC+INC/0LDQutC10YLQuCIKIAotIzogbWlkeC5jOjE0OAorIzogbWlkeC5jOjE1MQogbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBvYmplY3Qgb2Zmc2V0cyBjaHVuayIKIG1zZ3N0ciAi0LvQuNC/0YHQstCwINC+0YLQutGK0YEg0LfQsCDQvtGC0LzQtdGB0YLQstCw0L3QuNGP0YLQsCDQvdCwINC+0LHQtdC60YLQuCDQvtGCINC40L3QtNC10LrRgSDQt9CwINC80L3QvtC20LXRgdGC0LLQviDQv9Cw0LrQtdGC0LgiCiAKLSM6IG1pZHguYzoxNjIKKyM6IG1pZHguYzoxNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBwYWNrIG5hbWVzIG91dCBvZiBvcmRlcjogJyVzJyBiZWZvcmUgJyVzJyIKIG1zZ3N0ciAiIgogItC90LXQv9GA0LDQstC40LvQvdCwINC/0L7QtNGA0LXQtNCx0LAg0L3QsCDQuNC80LXQvdCw0YLQsCDQsiDQuNC90LTQtdC60YEg0LfQsCDQvNC90L7QttC10YHRgtCy0L4g0L/QsNC60LXRgtC4OiDigJ4lc+KAnCDRgdC1INC/0L7Rj9Cy0LggIgogItC/0YDQtdC00Lgg4oCeJXPigJwiCiAKLSM6IG1pZHguYzoyMDUKKyM6IG1pZHguYzoyMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2staW50LWlkOiAldSAoJXUgdG90YWwgcGFja3MpIgogbXNnc3RyICIiCiAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0L3QsCDQv9Cw0LrQtdGCIChwYWNrLWludC1pZCk6ICV1ICjQvtGCINC+0LHRidC+ICV1INC/0LDQutC10YLQuCkiCiAKLSM6IG1pZHguYzoyNDYKKyM6IG1pZHguYzoyNjAKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHN0b3JlcyBhIDY0LWJpdCBvZmZzZXQsIGJ1dCBvZmZfdCBpcyB0b28gc21hbGwiCiBtc2dzdHIgIiIKICLQuNC90LTQtdC60YHRitGCINC30LAg0LzQvdC+0LbQtdGB0YLQstC+INC/0LDQutC10YLQuCDRgdGK0LTRitGA0LbQsCA2NC3QsdC40YLQvtCy0Lgg0L7RgtC80LXRgdGC0LLQsNC90LjRjywg0L3QviDRgNCw0LfQvNC10YDRitGCINC90LAgIgogIuKAnm9mZl904oCcINC1INC90LXQtNC+0YHRgtCw0YLRitGH0LXQvSIKIAotIzogbWlkeC5jOjI3MQorIzogbWlkeC5jOjI4OAogbXNnaWQgImVycm9yIHByZXBhcmluZyBwYWNrZmlsZSBmcm9tIG11bHRpLXBhY2staW5kZXgiCiBtc2dzdHIgIiIKICLQs9GA0LXRiNC60LAg0L/RgNC4INGB0YrQt9C00LDQstCw0L3QtdGC0L4g0L3QsCDQv9Cw0LrQtdGC0LXQvSDRhNCw0LnQuyDQvdCwINCx0LDQt9Cw0YLQsCDQvdCwINC40L3QtNC10LrRgSDQt9CwINC80L3QvtC20LXRgdGC0LLQviAiCiAi0L/QsNC60LXRgtC4IgogCi0jOiBtaWR4LmM6NDA3CisjOiBtaWR4LmM6NDcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBhZGQgcGFja2ZpbGUgJyVzJyIKIG1zZ3N0ciAi0L/QsNC60LXRgtC90LjRj9GCINGE0LDQudC7IOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQtNC+0LHQsNCy0LXQvSIKIAotIzogbWlkeC5jOjQxMworIzogbWlkeC5jOjQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrLWluZGV4ICclcyciCiBtc2dzdHIgItC40L3QtNC10LrRgdGK0YIg0LfQsCDQv9Cw0LrQtdGC0Lgg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQstC+0YDQtdC9IgogCi0jOiBtaWR4LmM6NTA3CisjOiBtaWR4LmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBsb2NhdGUgb2JqZWN0ICVkIGluIHBhY2tmaWxlIgogbXNnc3RyICLQvtCx0LXQutGCICVkINCyINC/0LDQutC10YLQvdC40Y8g0YTQsNC50Lsg0LvQuNC/0YHQstCwIgogCi0jOiBtaWR4LmM6OTQzCisjOiBtaWR4LmM6ODQyCittc2dpZCAiQWRkaW5nIHBhY2tmaWxlcyB0byBtdWx0aS1wYWNrLWluZGV4IgorbXNnc3RyICLQlNC+0LHQsNCy0Y/QvdC1INC90LAg0L/QsNC60LXRgtC90Lgg0YTQsNC50LvQvtCy0LUg0LrRitC8INC40L3QtNC10LrRgSDQt9CwINC80L3QvtC20LXRgdGC0LLQviDQv9Cw0LrQtdGC0LgiCisKKyM6IG1pZHguYzo4NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIG5vdCBzZWUgcGFjay1maWxlICVzIHRvIGRyb3AiCittc2dzdHIgItC/0LDQutC10YLQvdC40Y/RgiDRhNCw0LnQuyDQt9CwINGC0YDQuNC10L3QtSDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtGC0LrRgNC40LUiCisKKyM6IG1pZHguYzo5NzMKK21zZ2lkICJXcml0aW5nIGNodW5rcyB0byBtdWx0aS1wYWNrLWluZGV4IgorbXNnc3RyICLQl9Cw0L/QuNGBINC90LAg0L7RgtC60YrRgdC4INC60YrQvCDQuNC90LTQtdC60YEg0LfQsCDQvNC90L7QttC10YHRgtCy0L4g0L/QsNC60LXRgtC4IgorCisjOiBtaWR4LmM6MTA1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY2xlYXIgbXVsdGktcGFjay1pbmRleCBhdCAlcyIKIG1zZ3N0ciAi0LjQvdC00LXQutGB0YrRgiDQt9CwINC80L3QvtC20LXRgdGC0LLQviDQv9Cw0LrQtdGC0Lgg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40LfRh9C40YHRgtC10L0g0L/RgNC4IOKAniVz4oCcIgogCi0jOiBtaWR4LmM6OTgxCisjOiBtaWR4LmM6MTEwOAorbXNnaWQgIkxvb2tpbmcgZm9yIHJlZmVyZW5jZWQgcGFja2ZpbGVzIgorbXNnc3RyICLQotGK0YDRgdC10L3QtSDQvdCwINGD0LrQsNC30LDQvdC40YLQtSDQv9Cw0LrQtdGC0L3QuCDRhNCw0LnQu9C+0LLQtSIKKworIzogbWlkeC5jOjExMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm9pZCBmYW5vdXQgb3V0IG9mIG9yZGVyOiBmYW5vdXRbJWRdID0gJTxQUkl4MzI+ID4gJTxQUkl4MzI+ID0gZmFub3V0WyVkXSIKQEAgLTM1ODEsNDcgKzUxMzMsNzMgQEAKICLQvdC10L/RgNCw0LLQuNC70L3QsCDQv9C+0LTRgNC10LTQsdCwINC90LAg0L7RgtC60YrRgdC4IChPSUQgZmFub3V0KTogZmFub3V0WyVkXSA9ICU8UFJJeDMyPiA+ICIKICIlPFBSSXgzMj4gPSBmYW5vdXRbJWRdIgogCi0jOiBtaWR4LmM6OTkyCisjOiBtaWR4LmM6MTEyOAorbXNnaWQgIlZlcmlmeWluZyBPSUQgb3JkZXIgaW4gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAiIgorItCf0YDQvtCy0LXRgNC60LAg0L3QsCDQv9C+0LTRgNC10LTQsdCw0YLQsCDQvdCwINC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0Lgg0L3QsCDQvtCx0LXQutGC0Lgg0LLRitCyINGE0LDQudC7INGBINC40L3QtNC10LrRgSDQutGK0LwgIgorItC80L3QvtC20LXRgdGC0LLQviDQv9Cw0LrQtdGC0L3QuCDRhNCw0LnQu9C+0LLQtSIKKworIzogbWlkeC5jOjExMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAib2lkIGxvb2t1cCBvdXQgb2Ygb3JkZXI6IG9pZFslZF0gPSAlcyA+PSAlcyA9IG9pZFslZF0iCiBtc2dzdHIgIiIKICLQvdC10L/RgNCw0LLQuNC70L3QsCDQv9C+0LTRgNC10LTQsdCwINC90LAg0L7RgtC60YrRgdC4IChPSUQgbG9va3VwKTogb2lkWyVkXSA9ICVzID49ICVzID0gb2lkWyVkXSIKIAotIzogbWlkeC5jOjk5NgorIzogbWlkeC5jOjExNTcKK21zZ2lkICJTb3J0aW5nIG9iamVjdHMgYnkgcGFja2ZpbGUiCittc2dzdHIgItCf0L7QtNGA0LXQtNCx0LAg0L3QsCDQvtCx0LXQutGC0LjRgtC1INC/0L4g0L/QsNC60LXRgtC90Lgg0YTQsNC50LvQvtCy0LUiCisKKyM6IG1pZHguYzoxMTY0CiBtc2dpZCAiVmVyaWZ5aW5nIG9iamVjdCBvZmZzZXRzIgogbXNnc3RyICLQn9GA0L7QstC10YDQutCwINC90LAg0L7RgtC80LXRgdGC0LLQsNC90LXRgtC+INC90LAg0L7QsdC10LrRgtC4IgogCi0jOiBtaWR4LmM6MTAwNAorIzogbWlkeC5jOjExODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvYWQgcGFjayBlbnRyeSBmb3Igb2lkWyVkXSA9ICVzIgogbXNnc3RyICLQt9Cw0L/QuNGB0YrRgiDQsiDQv9Cw0LrQtdGC0LAg0LfQsCDQvtCx0LXQutGC0LAgb2lkWyVkXSA9ICVzINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0YDQtdC00LXQvSIKIAotIzogbWlkeC5jOjEwMTAKKyM6IG1pZHguYzoxMTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBsb2FkIHBhY2staW5kZXggZm9yIHBhY2tmaWxlICVzIgogbXNnc3RyICLQuNC90LTQtdC60YHRitGCINC90LAg0L/QsNC60LXRgtCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0YDQtdC00LXQvSIKIAotIzogbWlkeC5jOjEwMTkKKyM6IG1pZHguYzoxMTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImluY29ycmVjdCBvYmplY3Qgb2Zmc2V0IGZvciBvaWRbJWRdID0gJXM6ICU8UFJJeDY0PiAhPSAlPFBSSXg2ND4iCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdC+INC+0YLQvNC10YHRgtCy0LDQvdC1INC90LAg0L7QsdC10LrRgiDQt9CwIG9pZFslZF0gPSAlczogJTxQUkl4NjQ+ICE9ICU8UFJJeDY0PiIKIAotIzogbmFtZS1oYXNoLmM6NTMyCisjOiBtaWR4LmM6MTIyMAorbXNnaWQgIkNvdW50aW5nIHJlZmVyZW5jZWQgb2JqZWN0cyIKK21zZ3N0ciAi0J/RgNC10LHRgNC+0Y/QstCw0L3QtSDQvdCwINGB0LLRitGA0LfQsNC90LjRgtC1INC+0LHQtdC60YLQuCIKKworIzogbWlkeC5jOjEyMzAKK21zZ2lkICJGaW5kaW5nIGFuZCBkZWxldGluZyB1bnJlZmVyZW5jZWQgcGFja2ZpbGVzIgorbXNnc3RyICLQotGK0YDRgdC10L3QtSDQuCDQuNC30YLRgNC40LLQsNC90LUg0L3QsCDQvdC10YHQstGK0YDQt9Cw0L3QuNGC0LUg0L/QsNC60LXRgtC90Lgg0YTQsNC50LvQvtCy0LUiCisKKyM6IG1pZHguYzoxMzg4Cittc2dpZCAiY291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyIKK21zZ3N0ciAi0LrQvtC80LDQvdC00LDRgtCwIOKAnnBhY2stb2JqZWN0c+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRgtCw0YDRgtC40YDQsNC90LAiCisKKyM6IG1pZHguYzoxNDA3Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCBwYWNrLW9iamVjdHMiCittc2dzdHIgItC60L7QvNCw0L3QtNCw0YLQsCDigJ5wYWNrLW9iamVjdHPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC30LDQstGK0YDRiNC10L3QsCIKKworIzogbmFtZS1oYXNoLmM6NTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbGF6eV9kaXIgdGhyZWFkOiAlcyIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0YHRitC30LTQsNC00LUg0L3QuNGI0LrQsCDQt9CwINC00LjRgNC10LrRgtC+0YDQuNC4OiAlcyIKIAotIzogbmFtZS1oYXNoLmM6NTU0CisjOiBuYW1lLWhhc2guYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsYXp5X25hbWUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0YHRitC30LTQsNC00LUg0L3QuNGI0LrQsCDQt9CwINC40LzQtdC90LA6ICVzIgogCi0jOiBuYW1lLWhhc2guYzo1NjAKKyM6IG5hbWUtaGFzaC5jOjU2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gam9pbiBsYXp5X25hbWUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9GH0LDQutCwINC90LjRiNC60LAg0LfQsCDQuNC80LXQvdCwOiAlcyIKIAotIzogbm90ZXMtbWVyZ2UuYzoyNzUKKyM6IG5vdGVzLW1lcmdlLmM6Mjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgcHJldmlvdXMgbm90ZXMgbWVyZ2UgKCVzIGV4aXN0cykuXG4iCkBAIC0zNjM4LDIzICs1MjE2LDIzIEBACiAiXG4iCiAiICAgIGdpdCBub3RlcyBtZXJnZSAtLWFib3J0IgogCi0jOiBub3Rlcy1tZXJnZS5jOjI4MgorIzogbm90ZXMtbWVyZ2UuYzoyODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG5vdGVzIG1lcmdlICglcyBleGlzdHMpLiIKIG1zZ3N0ciAiIgogItCd0LUg0YHRgtC1INC30LDQstGK0YDRiNC40LvQuCDRgdC70LjQstCw0L3QtdGC0L4g0L3QsCDQsdC10LvQtdC20LrQuNGC0LUuICAo0KPQutCw0LfQsNGC0LXQu9GP0YIg4oCeJXPigJwg0YHRitGJ0LXRgdGC0LLRg9Cy0LApLiIKIAotIzogbm90ZXMtdXRpbHMuYzo0NQorIzogbm90ZXMtdXRpbHMuYzo0NgogbXNnaWQgIkNhbm5vdCBjb21taXQgdW5pbml0aWFsaXplZC91bnJlZmVyZW5jZWQgbm90ZXMgdHJlZSIKIG1zZ3N0ciAiIgogItCd0LXQuNC90LjRhtC40LDQu9C40LfQuNGA0LDQvdC+INC40LvQuCDQvdC10YDQtdGE0LXRgNC40YDQsNC90L4g0LTRitGA0LLQviDQt9CwINCx0LXQu9C10LbQutC4INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9C+0LTQsNC00LXQvdC+IgogCi0jOiBub3Rlcy11dGlscy5jOjEwNAorIzogbm90ZXMtdXRpbHMuYzoxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkIG5vdGVzLnJld3JpdGVNb2RlIHZhbHVlOiAnJXMnIgogbXNnc3RyICLQndC10L/RgNCw0LLQuNC70L3QsCDRgdGC0L7QudC90L7RgdGCINC30LAg4oCebm90ZXMucmV3cml0ZU1vZGXigJw6IOKAniVz4oCcIgogCi0jOiBub3Rlcy11dGlscy5jOjExNAorIzogbm90ZXMtdXRpbHMuYzoxMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gcmV3cml0ZSBub3RlcyBpbiAlcyAob3V0c2lkZSBvZiByZWZzL25vdGVzLykiCiBtc2dzdHIgIiIKQEAgLTM2NjQsMTIgKzUyNDIsMTIgQEAKICMuIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSwgdGhlIHNlY29uZCAlcyBpcwogIy4gaXRzIHZhbHVlLgogIy4KLSM6IG5vdGVzLXV0aWxzLmM6MTQ0CisjOiBub3Rlcy11dGlscy5jOjE0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgJXMgdmFsdWU6ICclcyciCiBtc2dzdHIgItCX0LDQtNCw0LTQtdC90LAg0LUg0LvQvtGI0LAg0YHRgtC+0LnQvdC+0YHRgiDQvdCwINC/0YDQvtC80LXQvdC70LjQstCw0YLQsCDigJ4lc+KAnDog4oCeJXPigJwiCiAKLSM6IG9iamVjdC5jOjU0CisjOiBvYmplY3QuYzo1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9iamVjdCB0eXBlIFwiJXNcIiIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0LLQuNC0INC+0LHQtdC60YI6IOKAniVz4oCcIgpAQCAtMzY4OSwzNSArNTI2Nyw5NiBAQAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBvYmplY3Q6ICVzIgogbXNnc3RyICLQvtCx0LXQutGC0YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LDQvdCw0LvQuNC30LjRgNCw0L0iCiAKLSM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzcKKyM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzgKICMsIGMtZm9ybWF0Ci1tc2dpZCAic2hhMSBtaXNtYXRjaCAlcyIKLW1zZ3N0ciAi0YDQsNC30LvQuNC60LAg0LIgU0hBMTog4oCeJXPigJwiCittc2dpZCAiaGFzaCBtaXNtYXRjaCAlcyIKK21zZ3N0ciAi0YDQsNC30LvQuNC60LAg0LIg0LrQvtC90YLRgNC+0LvQvdCw0YLQsCDRgdGD0LzQsDog4oCeJXPigJwiCiAKLSM6IHBhY2tmaWxlLmM6NjA3CisjOiBwYWNrZmlsZS5jOjYyOQogbXNnaWQgIm9mZnNldCBiZWZvcmUgZW5kIG9mIHBhY2tmaWxlIChicm9rZW4gLmlkeD8pIgogbXNnc3RyICIiCiAi0L7RgtC80LXRgdGC0LLQsNC90LUg0L/RgNC10LTQuCDQutGA0LDRjyDQvdCwINC/0LDQutC10YLQvdC40Y8g0YTQsNC50LsgKNCy0YrQt9C80L7QttC90L4g0LUg0LjQvdC00LXQutGB0YrRgiDQtNCwINC1INC/0L7QstGA0LXQtNC10L0pIgogCi0jOiBwYWNrZmlsZS5jOjE4NjQKKyM6IHBhY2tmaWxlLmM6MTg5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJvZmZzZXQgYmVmb3JlIHN0YXJ0IG9mIHBhY2sgaW5kZXggZm9yICVzIChjb3JydXB0IGluZGV4PykiCiBtc2dzdHIgIiIKICLQvtGC0LzQtdGB0YLQstCw0L3QtSDQv9GA0LXQtNC4INC90LDRh9Cw0LvQvtGC0L4g0L3QsCDQuNC90LTQtdC60YHQsCDQvdCwINC/0LDQutC10YLQvdC40Y8g0YTQsNC50Lsg4oCeJXPigJwgKNCy0YrQt9C80L7QttC90L4g0LUgIgogItC40L3QtNC10LrRgdGK0YIg0LTQsCDQtSDQv9C+0LLRgNC10LTQtdC9KSIKIAotIzogcGFja2ZpbGUuYzoxODY4CisjOiBwYWNrZmlsZS5jOjE5MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAib2Zmc2V0IGJleW9uZCBlbmQgb2YgcGFjayBpbmRleCBmb3IgJXMgKHRydW5jYXRlZCBpbmRleD8pIgogbXNnc3RyICIiCiAi0L7RgtC80LXRgdGC0LLQsNC90LUg0L/RgNC10LTQuCDQutGA0LDRjyDQvdCwINC40L3QtNC10LrRgdCwINC90LAg0L/QsNC60LXRgtC90LjRjyDRhNCw0LnQuyDigJ4lc+KAnCAo0LLRitC30LzQvtC20L3QviDQtSDQuNC90LTQtdC60YHRitGCICIKICLQtNCwINC1INC+0YLRgNGP0LfQsNC9KSIKIAotIzogcGFyc2Utb3B0aW9ucy5jOjY3MgorIzogcGFjay1iaXRtYXAuYzo4MDAgcGFjay1iaXRtYXAuYzo4MDYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBnZXQgc2l6ZSBvZiAlcyIKK21zZ3N0ciAi0YDQsNC30LzQtdGA0YrRgiDQvdCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9C+0LvRg9GH0LXQvSIKKworIzogcGFyc2Utb3B0aW9ucy5jOjM4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlcXVpcmVzIGEgdmFsdWUiCittc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAniVz4oCcINC40LfQuNGB0LrQstCwINCw0YDQs9GD0LzQtdC90YIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAlcyIKK21zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeJXPigJwg0Lgg4oCeJXPigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyA6IGluY29tcGF0aWJsZSB3aXRoIHNvbWV0aGluZyBlbHNlIgorbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4lc+KAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg0L3QtdGJ0L4iCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MiBwYXJzZS1vcHRpb25zLmM6OTYgcGFyc2Utb3B0aW9ucy5jOjMxNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0YWtlcyBubyB2YWx1ZSIKK21zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeJXPigJwg0L3QtSDQv9GA0LjQtdC80LAg0LDRgNCz0YPQvNC10L3RgtC4IgorCisjOiBwYXJzZS1vcHRpb25zLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXNuJ3QgYXZhaWxhYmxlIgorbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4lc+KAnCDQvdC1INC1INC90LDQu9C40YfQvdCwIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MjE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBub24tbmVnYXRpdmUgaW50ZWdlciB2YWx1ZSB3aXRoIGFuIG9wdGlvbmFsIGsvbS9nIHN1ZmZpeCIKK21zZ3N0ciAiIgorIuKAniVz4oCcINC+0YfQsNC60LLQsCDQvdC10L7RgtGA0LjRhtCw0YLQtdC70L3QviDRhtGP0LvQviDRh9C40YHQu9C+LCDQtdCy0LXQvdGC0YPQsNC70L3QviDRgdGK0YEg0YHRg9GE0LjQutGBIOKAnmvigJwv4oCebeKAnC/igJ5n4oCcIgorCisjOiBwYXJzZS1vcHRpb25zLmM6Mzg2CisjLCBjLWZvcm1hdAorbXNnaWQgImFtYmlndW91cyBvcHRpb246ICVzIChjb3VsZCBiZSAtLSVzJXMgb3IgLS0lcyVzKSIKK21zZ3N0ciAi0L3QtdC10LTQvdC+0LfQvdCw0YfQvdCwINC+0L/RhtC40Y86IOKAniVz4oCcICjQvNC+0LbQtSDQtNCwINC1IOKAni0tJXMlc+KAnCDQuNC70Lgg4oCeLS0lcyVz4oCcKSIKKworIzogcGFyc2Utb3B0aW9ucy5jOjQyMCBwYXJzZS1vcHRpb25zLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgImRpZCB5b3UgbWVhbiBgLS0lc2AgKHdpdGggdHdvIGRhc2hlcyk/IgorbXNnc3RyICLigJ4tLSVz4oCcICjRgSAyINGC0LjRgNC10YLQsCkg0LvQuCDQuNC80LDRhdGC0LUg0L/RgNC10LTQstC40LQ/IgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgItC90LXQv9C+0LfQvdCw0YLQsCDQvtC/0YbQuNGPOiDigJ4lc+KAnCIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHN3aXRjaCBgJWMnIgorbXNnc3RyICLQvdC10L/QvtC30L3QsNGCINGE0LvQsNCzIOKAniVj4oCcIgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gbm9uLWFzY2lpIG9wdGlvbiBpbiBzdHJpbmc6IGAlcyciCittc2dzdHIgItC90LXQv9C+0LfQvdCw0YLQsCDRgdGC0L7QudC90L7RgdGCINC40LfQstGK0L0g4oCeYXNjaWnigJwg0LIg0L3QuNC30LA6IOKAniVz4oCcIgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODg1CiBtc2dpZCAiLi4uIgogbXNnc3RyICLigKYiCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo2OTEKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidXNhZ2U6ICVzIgogbXNnc3RyICLRg9C/0L7RgtGA0LXQsdCwOiAlcyIKQEAgLTM3MjUsNTggKzUzNjQsNzUgQEAKICMuIFRSQU5TTEFUT1JTOiB0aGUgY29sb24gaGVyZSBzaG91bGQgYWxpZ24gd2l0aCB0aGUKICMuIG9uZSBpbiAidXNhZ2U6ICVzIiB0cmFuc2xhdGlvbi4KICMuCi0jOiBwYXJzZS1vcHRpb25zLmM6Njk3CisjOiBwYXJzZS1vcHRpb25zLmM6OTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgIG9yOiAlcyIKIG1zZ3N0ciAiICAgICDQuNC70Lg6ICVzIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzAwCisjOiBwYXJzZS1vcHRpb25zLmM6OTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlcyIKIG1zZ3N0ciAiICAgICVzIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzM5CisjOiBwYXJzZS1vcHRpb25zLmM6OTUyCiBtc2dpZCAiLU5VTSIKIG1zZ3N0ciAiLdCn0JjQodCb0J4iCiAKLSM6IHBhcnNlLW9wdGlvbnMtY2IuYzozNworIzogcGFyc2Utb3B0aW9ucy5jOjk2NgorIywgYy1mb3JtYXQKK21zZ2lkICJhbGlhcyBvZiAtLSVzIgorbXNnc3RyICLQv9GB0LXQstC00L7QvdC40Lwg0L3QsCDigJ4tLSVz4oCcIgorCisjOiBwYXJzZS1vcHRpb25zLWNiLmM6MjAgcGFyc2Utb3B0aW9ucy1jYi5jOjI0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCittc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAniVz4oCcINC+0YfQsNC60LLQsCDRh9C40YHQu9C+INC30LAg0LDRgNCz0YPQvNC10L3RgiIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBleHBpcmF0aW9uIGRhdGUgJyVzJyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90LAg0LTQsNGC0LAg0L3QsCDRgdGA0L7Qujog4oCeJXPigJwiCiAKLSM6IHBhcnNlLW9wdGlvbnMtY2IuYzoxMDkKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIFwiYWx3YXlzXCIsIFwiYXV0b1wiLCBvciBcIm5ldmVyXCIiCittc2dzdHIgIiIKKyLQvtC/0YbQuNGP0YLQsCDigJ4lc+KAnCDQuNC30LjRgdC60LLQsCDQvdGP0LrQvtGPINC+0YIg0YHRgtC+0LnQvdC+0YHRgtC40YLQtTog4oCeYWx3YXlz4oCcICjQstC40L3QsNCz0LgpLCAiCisi4oCeYXV0b+KAnCAo0LDQstGC0L7QvNCw0YLQuNGH0L3Qvikg0LjQu9C4IOKAnm5ldmVy4oCcICjQvdC40LrQvtCz0LApIgorCisjOiBwYXJzZS1vcHRpb25zLWNiLmM6MTMwIHBhcnNlLW9wdGlvbnMtY2IuYzoxNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG9iamVjdCBuYW1lICclcyciCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdC+INC40LzQtSDQvdCwINC+0LHQtdC60YIg4oCeJXPigJwiCiAKLSM6IHBhdGguYzo4OTQKKyM6IHBhdGguYzo5MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IG1ha2UgJXMgd3JpdGFibGUgYnkgZ3JvdXAiCiBtc2dzdHIgItCd0LUg0LzQvtCz0LDRgiDQtNCwINGB0LUg0LTQsNC00LDRgiDQv9GA0LDQstCwINC30LAg0LfQsNC/0LjRgSDQsiDQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg4oCeJXPigJwg0L3QsCDQs9GA0YPQv9Cw0YLQsCIKIAotIzogcGF0aHNwZWMuYzoxMjkKKyM6IHBhdGhzcGVjLmM6MTMwCiBtc2dpZCAiRXNjYXBlIGNoYXJhY3RlciAnXFwnIG5vdCBhbGxvd2VkIGFzIGxhc3QgY2hhcmFjdGVyIGluIGF0dHIgdmFsdWUiCiBtc2dzdHIgIiIKICLQldC60YDQsNC90LjRgNCw0YnQuNGP0YIg0LfQvdCw0Log4oCeXFzigJzQvdC1INC80L7QttC1INC00LAg0LUg0L/QvtGB0LvQtdC00LXQvSDQt9C90LDQuiDQsiDRgdGC0L7QudC90L7RgdGC0YLQsCDQvdCwINCw0YLRgNC40LHRg9GCIgogCi0jOiBwYXRoc3BlYy5jOjE0NworIzogcGF0aHNwZWMuYzoxNDgKIG1zZ2lkICJPbmx5IG9uZSAnYXR0cjonIHNwZWNpZmljYXRpb24gaXMgYWxsb3dlZC4iCiBtc2dzdHIgItCf0L7Qt9Cy0L7Qu9C10L3QviDQtSDRgdCw0LzQviDQtdC00L3QviDRg9C60LDQt9Cy0LDQvdC1INC90LAg4oCeYXR0cjrigJwuIgogCi0jOiBwYXRoc3BlYy5jOjE1MAorIzogcGF0aHNwZWMuYzoxNTEKIG1zZ2lkICJhdHRyIHNwZWMgbXVzdCBub3QgYmUgZW1wdHkiCiBtc2dzdHIgIuKAnmF0dHI64oCcINGC0YDRj9Cx0LLQsCDQtNCwINGD0LrQsNC30LLQsCDRgdGC0L7QudC90L7RgdGCIgogCi0jOiBwYXRoc3BlYy5jOjE5MworIzogcGF0aHNwZWMuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBhdHRyaWJ1dGUgbmFtZSAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90L4g0LjQvNC1INC90LAg0LDRgtGA0LjQsdGD0YI6IOKAniVz4oCcIgogCi0jOiBwYXRoc3BlYy5jOjI1OAorIzogcGF0aHNwZWMuYzoyNTkKIG1zZ2lkICJnbG9iYWwgJ2dsb2InIGFuZCAnbm9nbG9iJyBwYXRoc3BlYyBzZXR0aW5ncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICLQs9C70L7QsdCw0LvQvdC40YLQtSDQvdCw0YHRgtGA0L7QudC60Lgg0LfQsCDQv9GK0YLQuNGJ0LAg4oCeZ2xvYuKAnCDQuCDigJ5ub2dsb2LigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKLSM6IHBhdGhzcGVjLmM6MjY1CisjOiBwYXRoc3BlYy5jOjI2NgogbXNnaWQgIiIKICJnbG9iYWwgJ2xpdGVyYWwnIHBhdGhzcGVjIHNldHRpbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggYWxsIG90aGVyIGdsb2JhbCAiCiAicGF0aHNwZWMgc2V0dGluZ3MiCkBAIC0zNzg0LDEzMSArNTQ0MCwyMDYgQEAKICLQs9C70L7QsdCw0LvQvdCw0YLQsCDQvdCw0YHRgtGA0L7QudC60LAg0LfQsCDQtNC+0YHQu9C+0LLQvdC4INC/0YrRgtC40YnQsCDigJ5saXRlcmFs4oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgSDQstGB0LjRh9C60LggIgogItC00YDRg9Cz0Lgg0LPQu9C+0LHQsNC70L3QuCDQvdCw0YHRgtGA0L7QudC60Lgg0LfQsCDQv9GK0YLQuNGJ0LAiCiAKLSM6IHBhdGhzcGVjLmM6MzA1CisjOiBwYXRoc3BlYy5jOjMwNgogbXNnaWQgImludmFsaWQgcGFyYW1ldGVyIGZvciBwYXRoc3BlYyBtYWdpYyAncHJlZml4JyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0L/QsNGA0LDQvNC10YLRitGAINC30LAg0L7Qv9GG0LjRj9GC0LAg0LfQsCDQvNCw0LPQuNGH0LXRgdC60Lgg0L/RitGC0LjRidCwIOKAnnByZWZpeOKAnCIKIAotIzogcGF0aHNwZWMuYzozMjYKKyM6IHBhdGhzcGVjLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgcGF0aHNwZWMgbWFnaWMgJyUuKnMnIGluICclcyciCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvQvdCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCDQvtC/0YbQuNGP0YLQsCDQt9CwINC80LDQs9C40YfQtdGB0LrQuCDQv9GK0YLQuNGJ0LAg4oCeJS4qc+KAnCDQsiDigJ4lc+KAnCIKIAotIzogcGF0aHNwZWMuYzozMzEKKyM6IHBhdGhzcGVjLmM6MzMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1pc3NpbmcgJyknIGF0IHRoZSBlbmQgb2YgcGF0aHNwZWMgbWFnaWMgaW4gJyVzJyIKIG1zZ3N0ciAi0JfQvdCw0LrRitGCIOKAninigJwg0LvQuNC/0YHQstCwINCyINC+0L/RhtC40Y/RgtCwINC30LAg0LzQsNCz0LjRh9C10YHQutC4INC/0YrRgtC40YnQsCDQsiDigJ4lc+KAnCIKIAotIzogcGF0aHNwZWMuYzozNjkKKyM6IHBhdGhzcGVjLmM6MzcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuaW1wbGVtZW50ZWQgcGF0aHNwZWMgbWFnaWMgJyVjJyBpbiAnJXMnIgogbXNnc3RyICLQnNCw0LPQuNGH0LXRgdC60LjRgtC1INC/0YrRgtC40YnQsCDigJ4lY+KAnCDRgdCwINCx0LXQtyDRgNC10LDQu9C40LfQsNGG0LjRjyDQt9CwIOKAniVz4oCcIgogCi0jOiBwYXRoc3BlYy5jOjQyOAorIzogcGF0aHNwZWMuYzo0MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6ICdsaXRlcmFsJyBhbmQgJ2dsb2InIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIiVzOiDQvtC/0YbQuNC40YLQtSDigJ5saXRlcmFs4oCcINC4IOKAnmdsb2LigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKLSM6IHBhdGhzcGVjLmM6NDQxCisjOiBwYXRoc3BlYy5jOjQ0MgogIywgYy1mb3JtYXQKLW1zZ2lkICIlczogJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkiCi1tc2dzdHIgIiVzOiDigJ4lc+KAnCDQtSDQuNC30LLRitC9INGF0YDQsNC90LjQu9C40YnQtdGC0L4iCittc2dpZCAiJXM6ICclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IGF0ICclcyciCittc2dzdHIgIiVzOiDigJ4lc+KAnCDQtSDQuNC30LLRitC9INGF0YDQsNC90LjQu9C40YnQtdGC0L4g0L/RgNC4IOKAniVz4oCcIgogCi0jOiBwYXRoc3BlYy5jOjUxNQorIzogcGF0aHNwZWMuYzo1MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyAobW5lbW9uaWM6ICclYycpIgogbXNnc3RyICLigJ4lc+KAnCAo0LrQu9Cw0LLQuNGIOiDigJ4lY+KAnCkiCiAKLSM6IHBhdGhzcGVjLmM6NTI1CisjOiBwYXRoc3BlYy5jOjUyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogcGF0aHNwZWMgbWFnaWMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvbW1hbmQ6ICVzIgogbXNnc3RyICIlczog0LzQsNCz0LjRh9C10YHQutC40YLQtSDQv9GK0YLQuNGJ0LAg0L3QtSDRgdC1INC/0L7QtNC00YrRgNC20LDRgiDQvtGCINC60L7QvNCw0L3QtNCw0YLQsCDigJ4lc+KAnCIKIAotIzogcGF0aHNwZWMuYzo1OTIKKyM6IHBhdGhzcGVjLmM6NTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGhzcGVjICclcycgaXMgYmV5b25kIGEgc3ltYm9saWMgbGluayIKIG1zZ3N0ciAi0L/RitGC0Y/RgiDigJ4lc+KAnCDQtSDRgdC70LXQtCDRgdC40LzQstC+0LvQvdCwINCy0YDRitC30LrQsCIKIAotIzogcGt0LWxpbmUuYzoxMDQKKyM6IHBhdGhzcGVjLmM6NjM5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgaXMgYmFkbHkgcXVvdGVkOiAlcyIKK21zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90L4g0YbQuNGC0LjRgNCw0L0g0YDQtdC0OiAlcyIKKworIzogcGt0LWxpbmUuYzo5MgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmbHVzaCBwYWNrZXQiCittc2dzdHIgItC/0LDQutC10YLRitGCINC30LAg0LjQt9GH0LjRgdGC0LLQsNC90LUg0L3QsCDQsdGD0YTQtdGA0LjRgtC1INC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC30LDQv9C40YjQtSIKKworIzogcGt0LWxpbmUuYzo5OQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBkZWxpbSBwYWNrZXQiCittc2dzdHIgItGA0LDQt9C00LXQu9GP0YnQuNGP0YIg0L/QsNC60LXRgiDQvdC1INC80L7QttC1INC00LAg0YHQtSDQt9Cw0L/QuNGI0LUiCisKKyM6IHBrdC1saW5lLmM6MTA2CiBtc2dpZCAiZmx1c2ggcGFja2V0IHdyaXRlIGZhaWxlZCIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfRh9C40YHRgtCy0LDQvdC1INC90LAg0LHRg9GE0LXRgNC40YLQtSDQv9GA0Lgg0LfQsNC/0LjRgSDQvdCwINC/0LDQutC10YIiCiAKLSM6IHBrdC1saW5lLmM6MTQyIHBrdC1saW5lLmM6MjI4CisjOiBwa3QtbGluZS5jOjE0NiBwa3QtbGluZS5jOjIzMgogbXNnaWQgInByb3RvY29sIGVycm9yOiBpbXBvc3NpYmx5IGxvbmcgbGluZSIKIG1zZ3N0ciAi0L/RgNC+0YLQvtC60L7Qu9C90LAg0LPRgNC10YjQutCwOiDQv9GA0LXQutCw0LvQtdC90L4g0LTRitC70YrQsyDRgNC10LQiCiAKLSM6IHBrdC1saW5lLmM6MTU4IHBrdC1saW5lLmM6MTYwCisjOiBwa3QtbGluZS5jOjE2MiBwa3QtbGluZS5jOjE2NAogbXNnaWQgInBhY2tldCB3cml0ZSB3aXRoIGZvcm1hdCBmYWlsZWQiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0LXQvSDQt9Cw0L/QuNGBINC90LAg0L/QsNC60LXRgiDRgSDRhNC+0YDQvNCw0YIiCiAKLSM6IHBrdC1saW5lLmM6MTkyCisjOiBwa3QtbGluZS5jOjE5NgogbXNnaWQgInBhY2tldCB3cml0ZSBmYWlsZWQgLSBkYXRhIGV4Y2VlZHMgbWF4IHBhY2tldCBzaXplIgogbXNnc3RyICIiCiAi0L3QtdGD0YHQv9C10YjQtdC9INC30LDQv9C40YEg0L3QsCDQv9Cw0LrQtdGC0LXQvSDRhNCw0LnQuyDigJQg0LTQsNC90L3QuNGC0LUg0L3QsNC00LLQuNGI0LDQstCw0YIg0LzQsNC60YHQuNC80LDQu9C90LjRj9GCINGA0LDQt9C80LXRgCDQvdCwICIKICLQv9Cw0LrQtdGCIgogCi0jOiBwa3QtbGluZS5jOjE5OSBwa3QtbGluZS5jOjIwNgorIzogcGt0LWxpbmUuYzoyMDMgcGt0LWxpbmUuYzoyMTAKIG1zZ2lkICJwYWNrZXQgd3JpdGUgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC10L0g0LfQsNC/0LjRgSDQvdCwINC/0LDQutC10YIiCiAKLSM6IHBrdC1saW5lLmM6MjkxCisjOiBwa3QtbGluZS5jOjI5NQogbXNnaWQgInJlYWQgZXJyb3IiCiBtc2dzdHIgItCz0YDQtdGI0LrQsCDQv9GA0Lgg0YfQtdGC0LXQvdC1IgogCi0jOiBwa3QtbGluZS5jOjI5OQorIzogcGt0LWxpbmUuYzozMDMKIG1zZ2lkICJ0aGUgcmVtb3RlIGVuZCBodW5nIHVwIHVuZXhwZWN0ZWRseSIKIG1zZ3N0ciAi0L7RgtC00LDQu9C10YfQtdC90L7RgtC+INGF0YDQsNC90LjQu9C40YnQtSDQvdC10L7Rh9Cw0LrQstCw0L3QviDQv9GA0LXQutGK0YHQvdCwINCy0YDRitC30LrQsNGC0LAiCiAKLSM6IHBrdC1saW5lLmM6MzI3CisjOiBwa3QtbGluZS5jOjMzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIGxpbmUgbGVuZ3RoIGNoYXJhY3RlcjogJS40cyIKIG1zZ3N0ciAi0L/RgNC+0YLQvtC60L7Qu9C90LAg0LPRgNC10YjQutCwOiDQvdC10L/RgNCw0LLQuNC7ZdC9INC30L3QsNC6INC30LAg0LTRitC70LbQuNC90LAg0L3QsCDRgNC10LQ6ICUuNHMiCiAKLSM6IHBrdC1saW5lLmM6MzM3IHBrdC1saW5lLmM6MzQyCisjOiBwa3QtbGluZS5jOjM0MSBwa3QtbGluZS5jOjM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIGxpbmUgbGVuZ3RoICVkIgogbXNnc3RyICLQv9GA0L7RgtC+0LrQvtC70L3QsCDQs9GA0LXRiNC60LA6INC90LXQv9GA0LDQstC40LvQvdCwINC00YrQu9C20LjQvdCwINC90LAg0YDQtdC0OiAlZCIKIAotIzogcHJlbG9hZC1pbmRleC5jOjExOAorIzogcGt0LWxpbmUuYzozNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlIGVycm9yOiAlcyIKK21zZ3N0ciAi0L7RgtC00LDQu9C10YfQtdC90LAg0LPRgNC10YjQutCwOiAlcyIKKworIzogcHJlbG9hZC1pbmRleC5jOjExOQogbXNnaWQgIlJlZnJlc2hpbmcgaW5kZXgiCiBtc2dzdHIgItCe0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LjQvdC00LXQutGB0LAiCiAKLSM6IHByZWxvYWQtaW5kZXguYzoxMzcKKyM6IHByZWxvYWQtaW5kZXguYzoxMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0aHJlYWRlZCBsc3RhdDogJXMiCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INGB0YrQt9C00LDQtNC1INC90LjRiNC60LAg0LfQsCDQuNC30L/RitC70L3QtdC90LjQtdGC0L4g0L3QsCDigJ5sc3RhdOKAnDogJXMiCiAKLSM6IHByZXR0eS5jOjk2MgorIzogcHJldHR5LmM6OTgxCiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIC0tcHJldHR5IGZvcm1hdCIKIG1zZ3N0ciAi0LDRgNCz0YPQvNC10L3RgtGK0YIg0LrRitC8INC+0L/RhtC40Y/RgtCwIOKAni0tcHJldHR54oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INCw0L3QsNC70LjQt9C40YDQsCIKIAotIzogcmFuZ2UtZGlmZi5jOjU2CisjOiBwcm9taXNvci1yZW1vdGUuYzoyMworbXNnaWQgIlJlbW90ZSB3aXRoIG5vIFVSTCIKK21zZ3N0ciAi0JvQuNC/0YHQstCwINCw0LTRgNC10YEg0LfQsCDQvtGC0LTQsNC70LXRh9C10L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1IgorCisjOiBwcm9taXNvci1yZW1vdGUuYzo1OAorIywgYy1mb3JtYXQKK21zZ2lkICJwcm9taXNvciByZW1vdGUgbmFtZSBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIgorbXNnc3RyICIiCisi0LjQvNC10YLQviDQvtGC0LTQsNC70LXRh9C10L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1LdCz0LDRgNCw0L3RgiDQvdC1INC80L7QttC1INC30LAg0LfQsNC/0L7Rh9Cy0LAg0YHRitGBINC30L3QsNC60LAg4oCeL+KAnDogJXMiCisKKyM6IHJhbmdlLWRpZmYuYzo3NQogbXNnaWQgImNvdWxkIG5vdCBzdGFydCBgbG9nYCIKIG1zZ3N0ciAi0LrQvtC80LDQvdC00LDRgtCwINC30LAg0LbRg9GA0L3QsNC70LAg0YEg0L/QvtC00LDQstCw0L3QuNGPIOKAnmxvZ+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDRgdGC0LDRgNGC0LjRgNCwIgogCi0jOiByYW5nZS1kaWZmLmM6NTkKKyM6IHJhbmdlLWRpZmYuYzo3NwogbXNnaWQgImNvdWxkIG5vdCByZWFkIGBsb2dgIG91dHB1dCIKIG1zZ3N0ciAiIgogItC40LfRhdC+0LTRitGCINC+0YIg0LrQvtC80LDQvdC00LDRgtCwINC30LAg0LbRg9GA0L3QsNC70LAg0YEg0L/QvtC00LDQstCw0L3QuNGPIOKAnmxvZ+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9GA0L7Rh9C10YLQtSIKIAotIzogcmFuZ2UtZGlmZi5jOjc0IHNlcXVlbmNlci5jOjQ3NjQKKyM6IHJhbmdlLWRpZmYuYzo5NiBzZXF1ZW5jZXIuYzo1MDIwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgJyVzJyIKIG1zZ3N0ciAi0L/QvtC00LDQstCw0L3QtdGC0L4g4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INCw0L3QsNC70LjQt9C40YDQsNC90L4iCiAKLSM6IHJhbmdlLWRpZmYuYzoyMjQKKyM6IHJhbmdlLWRpZmYuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGdpdCBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICLQt9Cw0LPQu9Cw0LLQvdCw0YLQsCDRh9Cw0YHRgiDQvdCwIGdpdCDigJ4lLipz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INCw0L3QsNC70LjQt9C40YDQsCIKKworIzogcmFuZ2UtZGlmZi5jOjI4NQogbXNnaWQgImZhaWxlZCB0byBnZW5lcmF0ZSBkaWZmIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YLRitGA0YHQtdC90LUg0L3QsCDRgNCw0LfQu9C40LrQsCIKIAotIzogcmFuZ2UtZGlmZi5jOjQ1NSByYW5nZS1kaWZmLmM6NDU3CisjOiByYW5nZS1kaWZmLmM6NTE4IHJhbmdlLWRpZmYuYzo1MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGxvZyBmb3IgJyVzJyIKIG1zZ3N0ciAi0LbRg9GA0L3QsNC70YrRgiDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC90LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INCw0L3QsNC70LjQt9C40YDQsNC9IgogCi0jOiByZWFkLWNhY2hlLmM6MTQ5MAorIzogcmVhZC1jYWNoZS5jOjY4MAorIywgYy1mb3JtYXQKK21zZ2lkICJ3aWxsIG5vdCBhZGQgZmlsZSBhbGlhcyAnJXMnICgnJXMnIGFscmVhZHkgZXhpc3RzIGluIGluZGV4KSIKK21zZ3N0ciAiIgorItC90Y/QvNCwINC00LAg0LHRitC00LUg0LTQvtCx0LDQstC10L0g0L/RgdC10LLQtNC+0L3QuNC8INC30LAg0YTQsNC50Lsg4oCeJXPigJwgKOKAniVz4oCcINCy0LXRh9C1INGB0YrRidC10YHRgtCy0YPQstCwINCyINC40L3QtNC10LrRgdCwKSIKKworIzogcmVhZC1jYWNoZS5jOjY5NgorbXNnaWQgImNhbm5vdCBjcmVhdGUgYW4gZW1wdHkgYmxvYiBpbiB0aGUgb2JqZWN0IGRhdGFiYXNlIgorbXNnc3RyICLQsiDQsdCw0LfQsNGC0LAg0L7RgiDQtNCw0L3QvdC4INC30LAg0L7QsdC10LrRgtC40YLQtSDQvdC1INC80L7QttC1INC00LAg0YHQtSDRgdGK0LfQtNCw0LTQtSDQv9GA0LDQt9C10L0g0L7QsdC10LrRgi1CTE9CIgorCisjOiByZWFkLWNhY2hlLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW4gb25seSBhZGQgcmVndWxhciBmaWxlcywgc3ltYm9saWMgbGlua3Mgb3IgZ2l0LWRpcmVjdG9yaWVzIgorbXNnc3RyICIiCisiJXM6INC80L7QttC1INC00LAg0LTQvtCx0LDQstGP0YLQtSDRgdCw0LzQviDQvtCx0LjQutC90L7QstC10L3QuCDRhNCw0LnQu9C+0LLQtSwg0YHQuNC80LLQvtC70L3QuCDQstGA0YrQt9C60Lgg0Lgg0LTQuNGA0LXQutGC0L7RgNC40LggIgorItC90LAgZ2l0IgorCisjOiByZWFkLWNhY2hlLmM6NzIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgaGF2ZSBhIGNvbW1pdCBjaGVja2VkIG91dCIKK21zZ3N0ciAi0L3QtSDQtSDQuNC30YLQtdCz0LvQtdC90L4g0L/QvtC00LDQstCw0L3QtSDQsiDigJ4lc+KAnCIKKworIzogcmVhZC1jYWNoZS5jOjc3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5kZXggZmlsZSAnJXMnIgorbXNnc3RyICLRhNCw0LnQu9GK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40L3QtNC10LrRgdC40YDQsNC9IgorCisjOiByZWFkLWNhY2hlLmM6Nzk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhZGQgJyVzJyB0byBpbmRleCIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LTQvtCx0LDQstC4INCyINC40L3QtNC10LrRgdCwIgorCisjOiByZWFkLWNhY2hlLmM6ODA1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICclcyciCittc2dzdHIgIuKAnnN0YXTigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9C/0YrQu9C90Lgg0LLRitGA0YXRgyDigJ4lc+KAnCIKKworIzogcmVhZC1jYWNoZS5jOjEzMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBhcHBlYXJzIGFzIGJvdGggYSBmaWxlIGFuZCBhcyBhIGRpcmVjdG9yeSIKK21zZ3N0ciAi4oCeJXPigJwg0YHRitGJ0LXRgdGC0LLRg9Cy0LAg0Lgg0LrQsNGC0L4g0YTQsNC50LssINC4INC60LDRgtC+INC00LjRgNC10LrRgtC+0YDQuNGPIgorCisjOiByZWFkLWNhY2hlLmM6MTUzNgogbXNnaWQgIlJlZnJlc2ggaW5kZXgiCiBtc2dzdHIgItCe0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LjQvdC00LXQutGB0LAiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNjA0CisjOiByZWFkLWNhY2hlLmM6MTY1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiaW5kZXgudmVyc2lvbiBzZXQsIGJ1dCB0aGUgdmFsdWUgaXMgaW52YWxpZC5cbiIKQEAgLTM5MTcsNyArNTY0OCw3IEBACiAi0JfQsNC00LDQtNC10L3QsCDQtSDQvdC10L/RgNCw0LLQuNC70L3QsCDRgdGC0L7QudC90L7RgdGCINC90LAg0L3QsNGB0YLRgNC+0LnQutCw0YLQsCDigJ5pbmRleC52ZXJzaW9u4oCcLlxuIgogItCp0LUg0YHQtSDQv9C+0LvQt9Cy0LAg0LLQtdGA0YHQuNGPICVpIgogCi0jOiByZWFkLWNhY2hlLmM6MTYxNAorIzogcmVhZC1jYWNoZS5jOjE2NjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkdJVF9JTkRFWF9WRVJTSU9OIHNldCwgYnV0IHRoZSB2YWx1ZSBpcyBpbnZhbGlkLlxuIgpAQCAtMzkyNyw2MiArNTY1OCwxNjUgQEAKICLigJ5HSVRfSU5ERVhfVkVSU0lPTuKAnC5cbiIKICLQqdC1INGB0LUg0L/QvtC70LfQstCwINCy0LXRgNGB0LjRjyAlaSIKIAotIzogcmVhZC1jYWNoZS5jOjE3OTIKKyM6IHJlYWQtY2FjaGUuYzoxNzE3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaWduYXR1cmUgMHglMDh4IgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQv9C+0LTQv9C40YE6IOKAnjB4JTA4eOKAnCIKKworIzogcmVhZC1jYWNoZS5jOjE3MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJWQiCittc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINCy0LXRgNGB0LjRjyDQvdCwINC40L3QtNC10LrRgdCwICVkIgorCisjOiByZWFkLWNhY2hlLmM6MTcyOQorbXNnaWQgImJhZCBpbmRleCBmaWxlIHNoYTEgc2lnbmF0dXJlIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQv9C+0LTQv9C40YEg0LfQsCDQutC+0L3RgtGA0L7Qu9C90LAg0YHRg9C80LAg0L/QviBTSEExINC90LAg0YTQsNC50LvQsCDQvdCwINC40L3QtNC10LrRgdCwIgorCisjOiByZWFkLWNhY2hlLmM6MTc1OQorIywgYy1mb3JtYXQKK21zZ2lkICJpbmRleCB1c2VzICUuNHMgZXh0ZW5zaW9uLCB3aGljaCB3ZSBkbyBub3QgdW5kZXJzdGFuZCIKK21zZ3N0ciAiIgorItC40L3QtNC10LrRgdGK0YIg0L/QvtC70LfQstCwINGA0LDQt9GI0LjRgNC10L3QuNC1IOKAniUuNHPigJwsINC60L7QtdGC0L4g0L3QtSDRgdC1INC/0L7QtNC00YrRgNC20LAg0L7RgiDRgtCw0LfQuCDQstC10YDRgdC40Y8g0L3QsCBnaXQiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzYxCisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICUuNHMgZXh0ZW5zaW9uIgorbXNnc3RyICLQuNCz0L3QvtGA0LjRgNCw0L3QtSDQvdCwINGA0LDQt9GI0LjRgNC10L3QuNC10YLQviDigJ4lLjRz4oCcIgorCisjOiByZWFkLWNhY2hlLmM6MTc5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGluZGV4IGVudHJ5IGZvcm1hdCAweCUwOHgiCittc2dzdHIgItC90LXQv9C+0LfQvdCw0YIg0YTQvtGA0LzQsNGCINC90LAg0LfQsNC/0LjRgSDQsiDQuNC90LTQtdC60YHQsDog4oCeMHglMDh44oCcIgorCisjOiByZWFkLWNhY2hlLmM6MTgxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgbmFtZSBmaWVsZCBpbiB0aGUgaW5kZXgsIG5lYXIgcGF0aCAnJXMnIgotbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QviDQuNC80LUg0L3QsCDQv9C+0LvQtSDQsiDQuNC90LTQtdC60YHQsCwg0LHQu9C40LfQviDQtNC+INC/0YrRgtGPIOKAniVz4oCcIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QviDQuNC80LUg0L3QsCDQv9C+0LvQtSDQsiDQuNC90LTQtdC60YHQsCDQsdC70LjQt9C+INC00L4g0L/RitGC0Y8g4oCeJXPigJwiCiAKLSM6IHJlYWQtY2FjaGUuYzoxOTYwIHJlcmVyZS5jOjU2NSByZXJlcmUuYzo1OTkgcmVyZXJlLmM6MTExMSBidWlsdGluL2FkZC5jOjQ1OAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjI4OSBidWlsdGluL2NoZWNrb3V0LmM6NTg1Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTUzIGJ1aWx0aW4vY2xlYW4uYzo5NTQgYnVpbHRpbi9jb21taXQuYzozNDMKLSM6IGJ1aWx0aW4vZGlmZi10cmVlLmM6MTE1IGJ1aWx0aW4vZ3JlcC5jOjQ4OSBidWlsdGluL212LmM6MTQ0Ci0jOiBidWlsdGluL3Jlc2V0LmM6MjQ0IGJ1aWx0aW4vcm0uYzoyNzAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjMyOQorIzogcmVhZC1jYWNoZS5jOjE4NzEKK21zZ2lkICJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBpbiBpbmRleCIKK21zZ3N0ciAi0L3QtdC/0L7QtNGA0LXQtNC10L3QuCDQt9Cw0L/QuNGB0Lgg0LIg0LjQvdC00LXQutGB0LAiCisKKyM6IHJlYWQtY2FjaGUuYzoxODc0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YWdlIGVudHJpZXMgZm9yIG1lcmdlZCBmaWxlICclcyciCittc2dzdHIgItC80L3QvtC20LXRgdGC0LLQviDQt9Cw0L/QuNGB0Lgg0LfQsCDRgdC70LXRgtC40Y8g0YTQsNC50Lsg4oCeJXPigJwiCisKKyM6IHJlYWQtY2FjaGUuYzoxODc3CisjLCBjLWZvcm1hdAorbXNnaWQgInVub3JkZXJlZCBzdGFnZSBlbnRyaWVzIGZvciAnJXMnIgorbXNnc3RyICLQvdC10L/QvtC00YDQtdC00LXQvdC4INC30LDQv9C40YHQuCDQt9CwIOKAniVz4oCcIgorCisjOiByZWFkLWNhY2hlLmM6MTk4MyByZWFkLWNhY2hlLmM6MjI3MSByZXJlcmUuYzo1NjUgcmVyZXJlLmM6NTk5IHJlcmVyZS5jOjExMTEKKyM6IHN1Ym1vZHVsZS5jOjE2MTkgYnVpbHRpbi9hZGQuYzo1MzIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NzAgYnVpbHRpbi9jaGVja291dC5jOjY1NiBidWlsdGluL2NsZWFuLmM6OTY3CisjOiBidWlsdGluL2NvbW1pdC5jOjM2NyBidWlsdGluL2RpZmYtdHJlZS5jOjEyMCBidWlsdGluL2dyZXAuYzo0ODUKKyM6IGJ1aWx0aW4vbXYuYzoxNDUgYnVpbHRpbi9yZXNldC5jOjI0NiBidWlsdGluL3JtLmM6MjkwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MzMyCiBtc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IgogbXNnc3RyICLRhNCw0LnQu9GK0YIg0YEg0LjQvdC00LXQutGB0LAg0LUg0L/QvtCy0YDQtdC00LXQvSIKIAotIzogcmVhZC1jYWNoZS5jOjIxMDEKKyM6IHJlYWQtY2FjaGUuYzoyMTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INGB0YrQt9C00LDQtNC1INC90LjRiNC60LAg0LfQsCDQt9Cw0YDQtdC20LTQsNC90LUg0L3QsCDQvtCx0LXQutGC0LjRgtC1INC+0YIg0LrQtdGI0LA6ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6MjExNAorIzogcmVhZC1jYWNoZS5jOjIxMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGpvaW4gbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC40LfRh9Cw0LrQsCDQvdC40YjQutCwINC30LAg0LfQsNGA0LXQttC00LDQvdC1INC90LAg0L7QsdC10LrRgtC40YLQtSDQvtGCINC60LXRiNCwOiAlcyIKIAotIzogcmVhZC1jYWNoZS5jOjIyMDEKKyM6IHJlYWQtY2FjaGUuYzoyMTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbmRleCBmaWxlIG9wZW4gZmFpbGVkIgorbXNnc3RyICIlczog0L3QtdGD0YHQv9C10YjQvdC+INC+0YLQstCw0YDRj9C90LUg0L3QsCDRhNCw0LnQu9CwINC90LAg0LjQvdC00LXQutGB0LAiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW5ub3Qgc3RhdCB0aGUgb3BlbiBpbmRleCIKK21zZ3N0ciAiJXM6INC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0L7Qu9GD0YfQuCDQuNC90YTQvtGA0LzQsNGG0LjRjyDQt9CwINC+0YLQstC+0YDQtdC90LjRjyDQuNC90LTQtdC60YEg0YHRitGBIOKAnnN0YXTigJwiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbmRleCBmaWxlIHNtYWxsZXIgdGhhbiBleHBlY3RlZCIKK21zZ3N0ciAiJXM6INGE0LDQudC70YrRgiDQvdCwINC40L3QtNC10LrRgdCwINC1INC/0L4t0LzQsNC70YrQuiDQvtGCINC+0YfQsNC60LLQsNC90L7RgtC+IgorCisjOiByZWFkLWNhY2hlLmM6MjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG1hcCBpbmRleCBmaWxlIgorbXNnc3RyICIlczog0L3QtdGD0YHQv9C10YjQvdC+INC30LDQtNC10LvRj9C90LUg0L3QsCDRgdGK0L7RgtCy0LXRgtGB0YLQstCw0YnQsCDQv9Cw0LzQtdGCINGH0YDQtdC3IOKAnm1tYXDigJwg0L3QsCDQuNC90LTQtdC60YHQsCIKKworIzogcmVhZC1jYWNoZS5jOjIyMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsb2FkX2luZGV4X2V4dGVuc2lvbnMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiIgogItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INGB0YrQt9C00LDQtNC1INC90LjRiNC60LAg0LfQsCDQt9Cw0YDQtdC20LTQsNC90LUg0L3QsCDRgNCw0LfRiNC40YDQtdC90LjRj9GC0LAg0L3QsCDQuNC90LTQtdC60YHQsDogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzoyMjI4CisjOiByZWFkLWNhY2hlLmM6MjI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gam9pbiBsb2FkX2luZGV4X2V4dGVuc2lvbnMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiIgogItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INGB0YrQt9C00LDQtNC1INC90LjRiNC60LAg0LfQsCDQt9Cw0YDQtdC20LTQsNC90LUg0L3QsCDRgNCw0LfRiNC40YDQtdC90LjRj9GC0LAg0L3QsCDQuNC90LTQtdC60YHQsDogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzoyOTgyIHNlcXVlbmNlci5jOjQ3Mjcgd3JhcHBlci5jOjY1OCBidWlsdGluL21lcmdlLmM6MTA4NgorIzogcmVhZC1jYWNoZS5jOjIyODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZyZXNoZW4gc2hhcmVkIGluZGV4ICclcyciCittc2dzdHIgItGB0L/QvtC00LXQu9C10L3QuNGP0YIg0LjQvdC00LXQutGBIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0LHQvdC+0LLQuCIKKworIzogcmVhZC1jYWNoZS5jOjIzMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYnJva2VuIGluZGV4LCBleHBlY3QgJXMgaW4gJXMsIGdvdCAlcyIKK21zZ3N0ciAi0LPRgNC10YjQutC4INCyINC40L3QtNC10LrRgdCwIOKAlCDQsiDigJ4lMiRz4oCcINGB0LUg0L7Rh9Cw0LrQstCwIOKAniUxJHPigJwsINCwINCx0LUg0L/QvtC70YPRh9C10L3QviDigJ4lMyRz4oCcIgorCisjOiByZWFkLWNhY2hlLmM6MzAyNiBzdHJidWYuYzoxMTYwIHdyYXBwZXIuYzo2MjIgYnVpbHRpbi9tZXJnZS5jOjExMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNsb3NlICclcyciCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC30LDRgtCy0L7RgNC4IgogCi0jOiByZWFkLWNhY2hlLmM6MzA1NSBzZXF1ZW5jZXIuYzoyMjAzIHNlcXVlbmNlci5jOjM1OTIKKyM6IHJlYWQtY2FjaGUuYzozMTI5IHNlcXVlbmNlci5jOjIzNDMgc2VxdWVuY2VyLmM6Mzk1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc3RhdCAnJXMnIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDigJ5zdGF04oCcINCy0YrRgNGF0YMg4oCeJXPigJwiCiAKLSM6IHJlYWQtY2FjaGUuYzozMDY4CisjOiByZWFkLWNhY2hlLmM6MzE0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBnaXQgZGlyOiAlcyIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7RgtCy0L7RgNC4INC00LjRgNC10LrRgtC+0YDQuNGP0YLQsCDQvdCwIGdpdDogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzozMDgwCisjOiByZWFkLWNhY2hlLmM6MzE1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5saW5rOiAlcyIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfRgtGA0LjQstCw0L3QtSDQvdCwIOKAniVz4oCcIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMAorIzogcmVhZC1jYWNoZS5jOjMxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpeCBwZXJtaXNzaW9uIGJpdHMgb24gJyVzJyIKK21zZ3N0ciAi0L/RgNCw0LLQsNGC0LAg0LfQsCDQtNC+0YHRgtGK0L8g0LTQviDigJ4lc+KAnCDQvdC1INC80L7Qs9Cw0YIg0LTQsCDQsdGK0LTQsNGCINC/0L7Qv9GA0LDQstC10L3QuCIKKworIzogcmVhZC1jYWNoZS5jOjMzMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbm5vdCBkcm9wIHRvIHN0YWdlICMwIgorbXNnc3RyICIlczog0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/RgNC10LzQuNC90LUg0LrRitC8INC10YLQsNC/IOKEljAiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjExCittc2dpZCAiIgorIllvdSBjYW4gZml4IHRoaXMgd2l0aCAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tIgorImNvbnRpbnVlJy5cbiIKKyJPciB5b3UgY2FuIGFib3J0IHRoZSByZWJhc2Ugd2l0aCAnZ2l0IHJlYmFzZSAtLWFib3J0Jy5cbiIKK21zZ3N0ciAiIgorItCc0L7QttC1INC00LAg0L/RgNC+0LzQtdC90LjRgtC1INGC0L7QstCwINGBINC60L7QvNCw0L3QtNC40YLQtSDigJ5naXQgcmViYXNlIC0tZWRpdC10b2Rv4oCcINC4IOKAnmdpdCByZWJhc2UgLS0iCisiY29udGludWXigJwg0YHQu9C10LQg0YLQvtCy0LAuXG4iCisi0JzQvtC20LUg0Lgg0LTQsCDQv9GA0LXRg9GB0YLQsNC90L7QstC40YLQtSDQv9GA0LXQsdCw0LfQuNGA0LDQvdC10YLQviDRgSDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0IHJlYmFzZSAtLWFib3J04oCcLlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzozMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5yZWNvZ25pemVkIHNldHRpbmcgJXMgZm9yIG9wdGlvbiByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4gSWdub3JpbmcuIgorbXNnc3RyICIiCisi0J3QtdC/0L7Qt9C90LDRgtCwINGB0YLQvtC50L3QvtGB0YIg4oCeJXPigJwg0LfQsMKg0L3QsNGB0YLRgNC+0LnQutCw0YLQsCDigJ5yZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVja+KAnC4gICIKKyLQndCw0YHRgtGA0L7QudC60LDRgtCwINGB0LUg0L/RgNC10YHQutCw0YfQsC4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQyCiBtc2dpZCAiIgogIlxuIgogIkNvbW1hbmRzOlxuIgpAQCAtNDAyOSw3ICs1ODYzLDE0IEBACiAi0JzQvtC20LUg0LTQsCDQv9GA0L7QvNC10L3Rj9GC0LUg0L/QvtGB0LvQtdC00L7QstCw0YLQtdC70L3QvtGB0YLRgtCwINC90LAg0YDQtdC00L7QstC10YLQtSDigJQg0YLQtSDRgdC1INC40LfQv9GK0LvQvdGP0LLQsNGCXG4iCiAi0L/QvtGB0LvQtdC00L7QstCw0YLQtdC70L3QviDQvtGC0LPQvtGA0LUt0L3QsNC00L7Qu9GDLlxuIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzozMSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTczCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZCkiCittc2dpZF9wbHVyYWwgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kcykiCittc2dzdHJbMF0gItCf0YDQtdCx0LDQt9C40YDQsNC90LUg0L3QsCDigJ4lc+KAnCDQstGK0YDRhdGDIOKAniVz4oCcICglZCDQutC+0LzQsNC90LTQuCkiCittc2dzdHJbMV0gItCf0YDQtdCx0LDQt9C40YDQsNC90LUg0L3QsCDigJ4lc+KAnCDQstGK0YDRhdGDIOKAniVz4oCcICglZCDQutC+0LzQsNC90LTQsCkiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjcyIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMjgKIG1zZ2lkICIiCiAiXG4iCiAiRG8gbm90IHJlbW92ZSBhbnkgbGluZS4gVXNlICdkcm9wJyBleHBsaWNpdGx5IHRvIHJlbW92ZSBhIGNvbW1pdC5cbiIKQEAgLTQwMzgsNyArNTg3OSw3IEBACiAi0J3QtSDQuNC30YLRgNC40LLQsNC50YLQtSDRgNC10LTQvtCy0LUuICDQn9C+0LTQsNCy0LDQvdC40Y/RgtCwINC80L7Qs9Cw0YIg0LTQsCDRgdC1INC/0YDQtdGB0LrQsNGH0LDRgiDRgSDQutC+0LzQsNC90LTQsNGC0LAgIgogIuKAnmRyb3DigJwuXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjM0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNzcKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjc1IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMzIKIG1zZ2lkICIiCiAiXG4iCiAiSWYgeW91IHJlbW92ZSBhIGxpbmUgaGVyZSBUSEFUIENPTU1JVCBXSUxMIEJFIExPU1QuXG4iCkBAIC00MDQ2LDcgKzU4ODcsNyBAQAogIlxuIgogItCQ0LrQviDQuNC30YLRgNC40LXRgtC1INGA0LXQtCwg0YHRitC+0YLQstC10YLRgdGC0LLQsNGJ0L7RgtC+INC80YMg0L/QvtC00LDQstCw0L3QtSDRidC1INCx0YrQtNC1INCY0JfQotCg0JjQotCeLlxuIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo0MCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODE2CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo4MSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODcxCiBtc2dpZCAiIgogIlxuIgogIllvdSBhcmUgZWRpdGluZyB0aGUgdG9kbyBmaWxlIG9mIGFuIG9uZ29pbmcgaW50ZXJhY3RpdmUgcmViYXNlLlxuIgpAQCAtNDA2MSw3ICs1OTAyLDcgQEAKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAiXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQ1IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4OTMKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjg2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDgKIG1zZ2lkICIiCiAiXG4iCiAiSG93ZXZlciwgaWYgeW91IHJlbW92ZSBldmVyeXRoaW5nLCB0aGUgcmViYXNlIHdpbGwgYmUgYWJvcnRlZC5cbiIKQEAgLTQwNzEsMTI1ICs1OTEyLDE2MCBAQAogItCQ0LrQviDQuNC30YLRgNC40LXRgtC1INCy0YHQuNGH0LrQviwg0L/RgNC10LHQsNC30LjRgNCw0L3QtdGC0L4g0YnQtSDQsdGK0LTQtSDQv9GA0LXRg9GB0YLQsNC90L7QstC10L3Qvi5cbiIKICJcbiIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6NTEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwMAotbXNnaWQgIk5vdGUgdGhhdCBlbXB0eSBjb21taXRzIGFyZSBjb21tZW50ZWQgb3V0IgotbXNnc3RyICLQn9GA0LDQt9C90LjRgtC1INC/0L7QtNCw0LLQsNC90LjRjyDRgdCwINC60L7QvNC10L3RgtC40YDQsNC90LgiCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMTAgcmVyZXJlLmM6NDg1IHJlcmVyZS5jOjY5MiBzZXF1ZW5jZXIuYzozNDQ0CisjOiBzZXF1ZW5jZXIuYzozNDcwIHNlcXVlbmNlci5jOjUxMjUgYnVpbHRpbi9mc2NrLmM6MzQ2IGJ1aWx0aW4vcmViYXNlLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnIgorbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQt9Cw0L/QuNGI0LUiCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjYyIHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjc1IHNlcXVlbmNlci5jOjIxODYKLSM6IHNlcXVlbmNlci5jOjQ1MDUgc2VxdWVuY2VyLmM6NDU2MSBzZXF1ZW5jZXIuYzo0ODM2CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMTYgYnVpbHRpbi9yZWJhc2UuYzoxODQgYnVpbHRpbi9yZWJhc2UuYzoyMTAKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnLiIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNC/0LjRiNC1LiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXYXJuaW5nOiBzb21lIGNvbW1pdHMgbWF5IGhhdmUgYmVlbiBkcm9wcGVkIGFjY2lkZW50YWxseS5cbiIKKyJEcm9wcGVkIGNvbW1pdHMgKG5ld2VyIHRvIG9sZGVyKTpcbiIKK21zZ3N0ciAiIgorItCf0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LU6INC90Y/QutC+0Lgg0L/QvtC00LDQstCw0L3QuNGPINC80L7QttC1INC00LAg0YHQsCDQv9GA0L7Qv9GD0YHQvdCw0YLQuC5cbiIKKyLQn9GA0L7Qv9GD0YHQvdCw0YLQuCDQv9C+0LTQsNCy0LDQvdC40Y8gKNC90L7QstC40YLQtSDRgdCwINC90LDQuS3QvtGC0LPQvtGA0LUpOlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRvIGF2b2lkIHRoaXMgbWVzc2FnZSwgdXNlIFwiZHJvcFwiIHRvIGV4cGxpY2l0bHkgcmVtb3ZlIGEgY29tbWl0LlxuIgorIlxuIgorIlVzZSAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgdG8gY2hhbmdlIHRoZSBsZXZlbCBvZiAiCisid2FybmluZ3MuXG4iCisiVGhlIHBvc3NpYmxlIGJlaGF2aW91cnMgYXJlOiBpZ25vcmUsIHdhcm4sIGVycm9yLlxuIgorIlxuIgorbXNnc3RyICIiCisi0JfQsCDQtNCwINC90LUg0L/QvtC70YPRh9Cw0LLQsNGC0LUg0YLQvtCy0LAg0YHRitC+0LHRidC10L3QuNC1LCDQuNC30YDQuNGH0L3QviDQv9C+0LvQt9Cy0LDQudGC0LUg0LrQvtC80LDQvdC00LDRgtCwIOKAnmRyb3DigJwuXG4iCisiXG4iCisi0J3QsNGB0YLRgNC+0LnQutCw0YLQsCDigJ5yZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVja+KAnCDRg9C/0YDQsNCy0LvRj9Cy0LAg0L3QuNCy0L7RgtC+INC90LAg0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjQtVxuIgorItCS0YrQt9C80L7QttC90LjRgtC1INGB0YLQvtC50L3QvtGB0YLQuCDRgdCwIOKAnmlnbm9yZeKAnCAo0L/RgNC10L3QtdCx0YDQtdCz0LLQsNC90LUpLCDigJ53YXJu4oCcICjRgdCw0LzQviAiCisi0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjQtSlcbiIKKyLQuNC70Lgg4oCeZXJyb3LigJwgKNGB0YfQuNGC0LDQvdC1INC30LAg0LPRgNC10YjQutCwKS5cbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MjMzIHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjIzOCBzZXF1ZW5jZXIuYzoyMjYyCisjOiBidWlsdGluL3JlYmFzZS5jOjE3MCBidWlsdGluL3JlYmFzZS5jOjE5NSBidWlsdGluL3JlYmFzZS5jOjIyMQorIzogYnVpbHRpbi9yZWJhc2UuYzoyNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgJyVzJy4iCiBtc2dzdHIgItC+0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0YfQtdGC0LUuIgogCi0jOiByZWZzLmM6MTkyCisjOiByZWZzLmM6MjYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRvZXMgbm90IHBvaW50IHRvIGEgdmFsaWQgb2JqZWN0ISIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDRgdC+0YfQuCDQutGK0Lwg0L/QvtC30LLQvtC70LXQvSDQvtCx0LXQutGCISIKIAotIzogcmVmcy5jOjU4MworIzogcmVmcy5jOjY2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyBkYW5nbGluZyBzeW1yZWYgJXMiCiBtc2dzdHIgItC40LPQvdC+0YDQuNGA0LDQvdC1INC90LAg0YPQutCw0LfQsNGC0LXQuyDQvdCwINC+0LHQtdC60YIg0LjQt9Cy0YrQvSDQutC70L7QvSDigJ4lc+KAnCIKIAotIzogcmVmcy5jOjU4NSByZWYtZmlsdGVyLmM6MTk1MQorIzogcmVmcy5jOjY2OSByZWYtZmlsdGVyLmM6MjA5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyBicm9rZW4gcmVmICVzIgogbXNnc3RyICLQuNCz0L3QvtGA0LjRgNCw0L3QtSDQvdCwINC/0L7QstGA0LXQtNC10L3QuNGPINGD0LrQsNC30LDRgtC10Lsg4oCeJXPigJwiCiAKLSM6IHJlZnMuYzo3MTEKKyM6IHJlZnMuYzo4MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZzogJXMiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LLQvtGA0LXQvSDQt9CwINC30LDQv9C40YE6ICVzIgogCi0jOiByZWZzLmM6NzIxIHJlZnMuYzo3NzIKKyM6IHJlZnMuYzo4MTQgcmVmcy5jOjg2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCByZWYgJyVzJyIKIG1zZ3N0ciAi0YPQutCw0LfQsNGC0LXQu9GP0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/RgNC+0YfQtdGC0LUiCiAKLSM6IHJlZnMuYzo3MjcKKyM6IHJlZnMuYzo4MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCIOKAniVz4oCcINCy0LXRh9C1INGB0YrRidC10YHRgtCy0YPQstCwIgogCi0jOiByZWZzLmM6NzMyCisjOiByZWZzLmM6ODI1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgb2JqZWN0IElEIHdoZW4gd3JpdGluZyAnJXMnIgogbXNnc3RyICLQvdC10L7Rh9Cw0LrQstCw0L0g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0L3QsCDQvtCx0LXQutGCINC/0YDQuCDQt9Cw0L/QuNGB0LLQsNC90LXRgtC+INC90LAg4oCeJXPigJwiCiAKLSM6IHJlZnMuYzo3NDAgc2VxdWVuY2VyLmM6Mzk0IHNlcXVlbmNlci5jOjI1MTAgc2VxdWVuY2VyLmM6MjYzNgotIzogc2VxdWVuY2VyLmM6MjY1MCBzZXF1ZW5jZXIuYzoyODc3IHNlcXVlbmNlci5jOjQ3MjUgc2VxdWVuY2VyLmM6NDc4OAotIzogd3JhcHBlci5jOjY1NgorIzogcmVmcy5jOjgzMyBzZXF1ZW5jZXIuYzo0MDcgc2VxdWVuY2VyLmM6MjcwMSBzZXF1ZW5jZXIuYzoyOTA1CisjOiBzZXF1ZW5jZXIuYzoyOTE5IHNlcXVlbmNlci5jOjMxNzcgc2VxdWVuY2VyLmM6NTAzNiBzdHJidWYuYzoxMTU3CisjOiB3cmFwcGVyLmM6NjIwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSB0byAnJXMnIgogbXNnc3RyICLQsiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9C40YjQtSIKIAotIzogcmVmcy5jOjc2NyBzZXF1ZW5jZXIuYzo0NzIzIHNlcXVlbmNlci5jOjQ3ODIgd3JhcHBlci5jOjIyNSB3cmFwcGVyLmM6Mzk1Ci0jOiBidWlsdGluL2FtLmM6NzI4CisjOiByZWZzLmM6ODYwIHN0cmJ1Zi5jOjExNTUgd3JhcHBlci5jOjE4OCB3cmFwcGVyLmM6MzU4IGJ1aWx0aW4vYW0uYzo3MTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTAyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtCy0L7RgNC10L0g0LfQsCDQt9Cw0L/QuNGBIgogCi0jOiByZWZzLmM6Nzc0CisjOiByZWZzLmM6ODY3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgb2JqZWN0IElEIHdoZW4gZGVsZXRpbmcgJyVzJyIKIG1zZ3N0ciAi0L3QtdC+0YfQsNC60LLQsNC9INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC90LAg0L7QsdC10LrRgiDQv9GA0Lgg0LjQt9GC0YDQuNCy0LDQvdC10YLQviDQvdCwIOKAniVz4oCcIgogCi0jOiByZWZzLmM6OTA1CisjOiByZWZzLmM6OTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvZyBmb3IgcmVmICVzIGhhcyBnYXAgYWZ0ZXIgJXMiCiBtc2dzdHIgItC40LzQsCDQv9GA0L7Qv9GD0YHQutC4INCyINC20YPRgNC90LDQu9CwINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0LfQsCDRg9C60LDQt9Cw0YLQtdC70Y8g4oCeJXPigJwg0YHQu9C10LQg4oCeJXPigJwiCiAKLSM6IHJlZnMuYzo5MTEKKyM6IHJlZnMuYzoxMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvZyBmb3IgcmVmICVzIHVuZXhwZWN0ZWRseSBlbmRlZCBvbiAlcyIKIG1zZ3N0ciAi0LbRg9GA0L3QsNC70YrRgiDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC30LAg0YPQutCw0LfQsNGC0LXQu9GPIOKAniVz4oCcINGB0LLRitGA0YjQstCwINC90LXQvtGH0LDQutCy0LDQvdC+INGB0LvQtdC0IOKAniVz4oCcIgogCi0jOiByZWZzLmM6OTY5CisjOiByZWZzLmM6MTA2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2cgZm9yICVzIGlzIGVtcHR5IgogbXNnc3RyICLQttGD0YDQvdCw0LvRitGCINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0LfQsCDRg9C60LDQt9Cw0YLQtdC70Y8g4oCeJXPigJwg0LUg0L/RgNCw0LfQtdC9IgogCi0jOiByZWZzLmM6MTA2MQorIzogcmVmcy5jOjExNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmdXNpbmcgdG8gdXBkYXRlIHJlZiB3aXRoIGJhZCBuYW1lICclcyciCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10Lsg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7QsdC90L7QstC4INGBINCz0YDQtdGI0L3QviDQuNC80LUg4oCeJXPigJwiCiAKLSM6IHJlZnMuYzoxMTM3CisjOiByZWZzLmM6MTIzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1cGRhdGVfcmVmIGZhaWxlZCBmb3IgcmVmICclcyc6ICVzIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0L7QsdC90L7QstGP0LLQsNC90LUg0L3QsCDRg9C60LDQt9Cw0YLQtdC70Y8g4oCeJXPigJw6ICVzIgogCi0jOiByZWZzLmM6MTkxMQorIzogcmVmcy5jOjIwMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGlwbGUgdXBkYXRlcyBmb3IgcmVmICclcycgbm90IGFsbG93ZWQiCiBtc2dzdHIgItC90LUg0YHQsCDQv9C+0LfQstC+0LvQtdC90Lgg0L/QvtCy0LXRh9C1INC+0YIg0LXQtNC90LAg0L/RgNC+0LzQtdC90Lgg0L3QsCDRg9C60LDQt9Cw0YLQtdC70Y8g4oCeJXPigJwiCiAKLSM6IHJlZnMuYzoxOTQzCisjOiByZWZzLmM6MjA1NQogbXNnaWQgInJlZiB1cGRhdGVzIGZvcmJpZGRlbiBpbnNpZGUgcXVhcmFudGluZSBlbnZpcm9ubWVudCIKIG1zZ3N0ciAi0L7QsdC90L7QstGP0LLQsNC90LjRj9GC0LAg0L3QsCDRg9C60LDQt9Cw0YLQtdC70Lgg0YHQsCDQt9Cw0LHRgNCw0L3QtdC90Lgg0LIg0YHRgNC10LTQuCDQv9C+0LQg0LrQsNGA0LDQvdGC0LjQvdCwIgogCi0jOiByZWZzLmM6MjAzOSByZWZzLmM6MjA2OQorIzogcmVmcy5jOjIxNTEgcmVmcy5jOjIxODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBleGlzdHM7IGNhbm5vdCBjcmVhdGUgJyVzJyIKIG1zZ3N0ciAi4oCeJXPigJwg0YHRitGJ0LXRgdGC0LLRg9Cy0LAsINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INGB0YrQt9C00LDQtNC1IOKAniVz4oCcIgogCi0jOiByZWZzLmM6MjA0NSByZWZzLmM6MjA4MAorIzogcmVmcy5jOjIxNTcgcmVmcy5jOjIxOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHByb2Nlc3MgJyVzJyBhbmQgJyVzJyBhdCB0aGUgc2FtZSB0aW1lIgogbXNnc3RyICLQvdC10LLRitC30LzQvtC20L3QviDQtSDQtdC00L3QvtCy0YDQtdC80LXQvdC90L4g0LTQsCDRgdC1INC+0LHRgNCw0LHQvtGC0LLQsNGCIOKAniVz4oCcINC4IOKAniVz4oCcIgogCi0jOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjI4CisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgcmVmZXJlbmNlICVzIgogbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LjQt9GC0YDQuNGCIgogCi0jOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjQyIHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTMyCi0jOiByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU0MgorIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI0NyByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU0MQorIzogcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGRlbGV0ZSByZWZlcmVuY2UgJXM6ICVzIgogbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LjQt9GC0YDQuNGCOiAlcyIKIAotIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI0NSByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU0NQorIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI1MCByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZGVsZXRlIHJlZmVyZW5jZXM6ICVzIgogbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70LjRgtC1INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQsNGCINC40LfRgtGA0LjRgtC4OiAlcyIKQEAgLTQxOTksMzUwICs2MDc1LDQ4NiBAQAogbXNnaWQgImludmFsaWQgcmVmc3BlYyAnJXMnIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDRg9C60LDQt9Cw0YLQtdC7OiDigJ4lc+KAnCIKIAotIzogcmVmLWZpbHRlci5jOjM5IHd0LXN0YXR1cy5jOjE4NTUKKyM6IHJlZi1maWx0ZXIuYzo0MiB3dC1zdGF0dXMuYzoxOTM4CiBtc2dpZCAiZ29uZSIKIG1zZ3N0ciAi0LjQt9GC0YDQuNGCIgogCi0jOiByZWYtZmlsdGVyLmM6NDAKKyM6IHJlZi1maWx0ZXIuYzo0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhaGVhZCAlZCIKIG1zZ3N0ciAi0L3QsNC/0YDQtdC0INGBICVkIgogCi0jOiByZWYtZmlsdGVyLmM6NDEKKyM6IHJlZi1maWx0ZXIuYzo0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJiZWhpbmQgJWQiCiBtc2dzdHIgItC90LDQt9Cw0LQg0YEgJWQiCiAKLSM6IHJlZi1maWx0ZXIuYzo0MgorIzogcmVmLWZpbHRlci5jOjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImFoZWFkICVkLCBiZWhpbmQgJWQiCiBtc2dzdHIgItC90LDQv9GA0LXQtCDRgSAlZCwg0L3QsNC30LDQtCDRgSAlZCIKIAotIzogcmVmLWZpbHRlci5jOjEzOAorIzogcmVmLWZpbHRlci5jOjE2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBmb3JtYXQ6ICUlKGNvbG9yOjxjb2xvcj4pIgogbXNnc3RyICLQvtGH0LDQutCy0LDQvSDRhNC+0YDQvNCw0YI6ICUlKGNvbG9yOtCm0JLQr9CiKSIKIAotIzogcmVmLWZpbHRlci5jOjE0MAorIzogcmVmLWZpbHRlci5jOjE2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgY29sb3I6ICUlKGNvbG9yOiVzKSIKIG1zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgiDRhtCy0Y/RgjogJSUoY29sb3I6JXMpIgogCi0jOiByZWYtZmlsdGVyLmM6MTYyCisjOiByZWYtZmlsdGVyLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludGVnZXIgdmFsdWUgZXhwZWN0ZWQgcmVmbmFtZTpsc3RyaXA9JXMiCiBtc2dzdHIgItC+0YfQsNC60LLQsCDRgdC1INGG0Y/Qu9C+INGH0LjRgdC70L4g0LfQsCDigJ5yZWZuYW1lOmxzdHJpcD0lc+KAnCIKIAotIzogcmVmLWZpbHRlci5jOjE2NgorIzogcmVmLWZpbHRlci5jOjE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6cnN0cmlwPSVzIgogbXNnc3RyICLQvtGH0LDQutCy0LAg0YHQtSDRhtGP0LvQviDRh9C40YHQu9C+INC30LAg4oCecmVmbmFtZTpyc3RyaXA9JXPigJwiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNjgKKyM6IHJlZi1maWx0ZXIuYzoxOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKCVzKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgItC90LXQv9C+0LfQvdCw0YIg0LDRgNCz0YPQvNC10L3RgiDQt9CwIOKAniUlKCVzKeKAnDogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMjMKKyM6IHJlZi1maWx0ZXIuYzoyNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJSUob2JqZWN0dHlwZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCiBtc2dzdHIgIiUlKG9iamVjdHR5cGUpINC90LUg0L/RgNC40LXQvNCwINCw0YDQs9GD0LzQtdC90YLQuCIKIAotIzogcmVmLWZpbHRlci5jOjIzNQorIzogcmVmLWZpbHRlci5jOjI3MgogIywgYy1mb3JtYXQKLW1zZ2lkICIlJShvYmplY3RzaXplKSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKLW1zZ3N0ciAiJSUob2JqZWN0c2l6ZSkg0L3QtSDQv9GA0LjQtdC80LAg0LDRgNCz0YPQvNC10L3RgtC4IgorbXNnaWQgInVucmVjb2duaXplZCAlJShvYmplY3RzaXplKSBhcmd1bWVudDogJXMiCittc2dzdHIgItC90LXQv9C+0LfQvdCw0YIg0LDRgNCz0YPQvNC10L3RgiDQt9CwICUlKG9iamVjdHNpemUpOiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjI0NworIzogcmVmLWZpbHRlci5jOjI4MAorIywgYy1mb3JtYXQKK21zZ2lkICIlJShkZWx0YWJhc2UpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnc3RyICIlJShkZWx0YWJhc2UpINC90LUg0L/RgNC40LXQvNCwINCw0YDQs9GD0LzQtdC90YLQuCIKKworIzogcmVmLWZpbHRlci5jOjI5MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlJShib2R5KSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKIG1zZ3N0ciAiJSUoYm9keSkg0L3QtSDQv9GA0LjQtdC80LAg0LDRgNCz0YPQvNC10L3RgtC4IgogCi0jOiByZWYtZmlsdGVyLmM6MjU2CisjOiByZWYtZmlsdGVyLmM6MzAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiUlKHN1YmplY3QpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgogbXNnc3RyICIlJShzdWJqZWN0KSDQvdC1INC/0YDQuNC10LzQsCDQsNGA0LPRg9C80LXQvdGC0LgiCiAKLSM6IHJlZi1maWx0ZXIuYzoyNzgKKyM6IHJlZi1maWx0ZXIuYzozMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biAlJSh0cmFpbGVycykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGCINCw0YDQs9GD0LzQtdC90YIg4oCeJSUodHJhaWxlcnMp4oCcOiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjMwNworIzogcmVmLWZpbHRlci5jOjM1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJwb3NpdGl2ZSB2YWx1ZSBleHBlY3RlZCBjb250ZW50czpsaW5lcz0lcyIKIG1zZ3N0ciAi0L7Rh9Cw0LrQstCwINGB0LUg0L/QvtC70L7QttC40YLQtdC70L3QsCDRgdGC0L7QudC90L7RgdGCINC30LAg4oCeY29udGVudHM6bGluZXM9JXPigJwiCiAKLSM6IHJlZi1maWx0ZXIuYzozMDkKKyM6IHJlZi1maWx0ZXIuYzozNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKGNvbnRlbnRzKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgItC90LXQv9C+0LfQvdCw0YIg0LDRgNCz0YPQvNC10L3RgiDQt9CwICUlKGNvbnRlbnRzKTogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozMjQKKyM6IHJlZi1maWx0ZXIuYzozNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAicG9zaXRpdmUgdmFsdWUgZXhwZWN0ZWQgb2JqZWN0bmFtZTpzaG9ydD0lcyIKIG1zZ3N0ciAi0L7Rh9Cw0LrQstCwINGB0LUg0L/QvtC70L7QttC40YLQtdC70L3QsCDRgdGC0L7QudC90L7RgdGCINC30LAg4oCeb2JqZWN0bmFtZTpzaG9ydD0lc+KAnCIKIAotIzogcmVmLWZpbHRlci5jOjMyOAorIzogcmVmLWZpbHRlci5jOjM3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUob2JqZWN0bmFtZSkgYXJndW1lbnQ6ICVzIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGCINCw0YDQs9GD0LzQtdC90YIg0LfQsCAlJShvYmplY3RuYW1lKTogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozNTgKKyM6IHJlZi1maWx0ZXIuYzo0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgZm9ybWF0OiAlJShhbGlnbjo8d2lkdGg+LDxwb3NpdGlvbj4pIgogbXNnc3RyICLQvtGH0LDQutCy0LDQvSDRhNC+0YDQvNCw0YI6ICUlKGFsaWduOtCo0JjQoNCe0KfQmNCd0JAs0J/QntCX0JjQptCY0K8pIgogCi0jOiByZWYtZmlsdGVyLmM6MzcwCisjOiByZWYtZmlsdGVyLmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBwb3NpdGlvbjolcyIKIG1zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgtCwINC/0L7Qt9C40YbQuNGPOiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjM3NworIzogcmVmLWZpbHRlci5jOjQyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgd2lkdGg6JXMiCiBtc2dzdHIgItC90LXQv9C+0LfQvdCw0YLQsCDRiNC40YDQvtGH0LjQvdCwOiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjM4NgorIzogcmVmLWZpbHRlci5jOjQzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUoYWxpZ24pIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgiDQsNGA0LPRg9C80LXQvdGCINC30LAgJSUoYWxpZ24pOiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjM5NAorIzogcmVmLWZpbHRlci5jOjQzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJwb3NpdGl2ZSB3aWR0aCBleHBlY3RlZCB3aXRoIHRoZSAlJShhbGlnbikgYXRvbSIKIG1zZ3N0ciAi0L7Rh9Cw0LrQstCwINGB0LUg0L/QvtC70L7QttC40YLQtdC70L3QsCDRiNC40YDQvtGH0LjQvdCwINGBINC70LXQutGB0LXQvNCw0YLQsCDigJ4lJShhbGlnbinigJwiCiAKLSM6IHJlZi1maWx0ZXIuYzo0MTIKKyM6IHJlZi1maWx0ZXIuYzo0NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKGlmKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgItC90LXQv9C+0LfQvdCw0YIg0LDRgNCz0YPQvNC10L3RgiDQt9CwIOKAniUlKGlmKeKAnDogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MDgKKyM6IHJlZi1maWx0ZXIuYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIGZpZWxkIG5hbWU6ICUuKnMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdC+INC40LzQtSDQvdCwINC+0LHQtdC60YI6IOKAniUuKnPigJwiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MzUKKyM6IHJlZi1maWx0ZXIuYzo1ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBmaWVsZCBuYW1lOiAlLipzIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGC0L4g0LjQvNC1INC90LAg0L7QsdC10LrRgjog4oCeJS4qc+KAnCIKIAotIzogcmVmLWZpbHRlci5jOjUzOQorIzogcmVmLWZpbHRlci5jOjU5MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibm90IGEgZ2l0IHJlcG9zaXRvcnksIGJ1dCB0aGUgZmllbGQgJyUuKnMnIHJlcXVpcmVzIGFjY2VzcyB0byBvYmplY3QgZGF0YSIKIG1zZ3N0ciAi0L3QtSDQtSDRhdGA0LDQvdC40LvQuNGJ0LUg0L3QsCBnaXQsINCwINC/0L7Qu9C10YLQviDigJ4lLipz4oCcINC40LfQuNGB0LrQstCwINC00L7RgdGC0YrQvyDQtNCw0L3QvdC4INC90LAg0L7QsdC10LrRgtC90LgiCiAKLSM6IHJlZi1maWx0ZXIuYzo2NjMKKyM6IHJlZi1maWx0ZXIuYzo3MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShpZikgYXRvbSB1c2VkIHdpdGhvdXQgYSAlJSh0aGVuKSBhdG9tIgogbXNnc3RyICLRhNC+0YDQvNCw0YI6INC70LXQutGB0LXQvNCw0YLQsCAlJShpZikg0LUg0LjQt9C/0L7Qu9C30LLQsNC90LAg0LHQtdC3INGB0YrQvtGC0LLQtdGC0L3QsNGC0LAg0Z0gJSUodGhlbikiCiAKLSM6IHJlZi1maWx0ZXIuYzo3MjYKKyM6IHJlZi1maWx0ZXIuYzo3NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgd2l0aG91dCBhbiAlJShpZikgYXRvbSIKIG1zZ3N0ciAi0YTQvtGA0LzQsNGCOiDQu9C10LrRgdC10LzQsNGC0LAgJSUodGhlbikg0LUg0LjQt9C/0L7Qu9C30LLQsNC90LAg0LHQtdC3INGB0YrQvtGC0LLQtdGC0L3QsNGC0LAg0Z0gJSUoaWYpIgogCi0jOiByZWYtZmlsdGVyLmM6NzI4CisjOiByZWYtZmlsdGVyLmM6Nzc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgogbXNnc3RyICLRhNC+0YDQvNCw0YI6INC70LXQutGB0LXQvNCw0YLQsCAlJSh0aGVuKSDQtSDQuNC30L/QvtC70LfQstCw0L3QsCDQv9C+0LLQtdGH0LUg0L7RgiDQtdC00LjQvSDQv9GK0YIiCiAKLSM6IHJlZi1maWx0ZXIuYzo3MzAKKyM6IHJlZi1maWx0ZXIuYzo3ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgYWZ0ZXIgJSUoZWxzZSkiCiBtc2dzdHIgItGE0L7RgNC80LDRgjog0LvQtdC60YHQtdC80LDRgtCwICUlKHRoZW4pINC1INC40LfQv9C+0LvQt9Cy0LDQvdCwINGB0LvQtdC0ICUlKGVsc2UpIgogCi0jOiByZWYtZmlsdGVyLmM6NzU4CisjOiByZWYtZmlsdGVyLmM6ODA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIHdpdGhvdXQgYW4gJSUoaWYpIGF0b20iCiBtc2dzdHIgItGE0L7RgNC80LDRgjog0LvQtdC60YHQtdC80LDRgtCwICUlKGVsc2UpINC1INC40LfQv9C+0LvQt9Cy0LDQvdCwINCx0LXQtyDRgdGK0L7RgtCy0LXRgtC90LDRgtCwINGdICUlKGlmKSIKIAotIzogcmVmLWZpbHRlci5jOjc2MAorIzogcmVmLWZpbHRlci5jOjgxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCB3aXRob3V0IGEgJSUodGhlbikgYXRvbSIKIG1zZ3N0ciAi0YTQvtGA0LzQsNGCOiDQu9C10LrRgdC10LzQsNGC0LAgJSUoZWxzZSkg0LUg0LjQt9C/0L7Qu9C30LLQsNC90LAg0LHQtdC3INGB0YrQvtGC0LLQtdGC0L3QsNGC0LAg0Z0gJSUodGhlbikiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NjIKKyM6IHJlZi1maWx0ZXIuYzo4MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgbW9yZSB0aGFuIG9uY2UiCiBtc2dzdHIgItGE0L7RgNC80LDRgjog0LvQtdC60YHQtdC80LDRgtCwICUlKGVsc2UpINC1INC40LfQv9C+0LvQt9Cy0LDQvdCwINC/0L7QstC10YfQtSDQvtGCINC10LTQuNC9INC/0YrRgiIKIAotIzogcmVmLWZpbHRlci5jOjc3NworIzogcmVmLWZpbHRlci5jOjgyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVuZCkgYXRvbSB1c2VkIHdpdGhvdXQgY29ycmVzcG9uZGluZyBhdG9tIgogbXNnc3RyICLRhNC+0YDQvNCw0YI6INC70LXQutGB0LXQvNCw0YLQsCAlJShlbmQpINC1INC40LfQv9C+0LvQt9Cy0LDQvdCwINCx0LXQtyDRgdGK0L7RgtCy0LXRgtC90LDRgtCwINGdIgogCi0jOiByZWYtZmlsdGVyLmM6ODM0CisjOiByZWYtZmlsdGVyLmM6ODg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBmb3JtYXQgc3RyaW5nICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDRhNC+0YDQvNCw0YLQuNGA0LDRiSDQvdC40Lcg4oCeJXPigJwiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDI0CisjOiByZWYtZmlsdGVyLmM6MTQ4OAogIywgYy1mb3JtYXQKLW1zZ2lkICIobm8gYnJhbmNoLCByZWJhc2luZyAlcykiCi1tc2dzdHIgIijQuNC30LLRitC9INC60LvQvtC9LCDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1INC90LAg4oCeJXPigJwpIgorbXNnaWQgIm5vIGJyYW5jaCwgcmViYXNpbmcgJXMiCittc2dzdHIgItC40LfQstGK0L0g0LrQu9C+0L0sINC/0YDQtdCx0LDQt9C40YDQsNC90LUg0L3QsCDigJ4lc+KAnCIKIAotIzogcmVmLWZpbHRlci5jOjE0MjcKKyM6IHJlZi1maWx0ZXIuYzoxNDkxCiAjLCBjLWZvcm1hdAotbXNnaWQgIihubyBicmFuY2gsIHJlYmFzaW5nIGRldGFjaGVkIEhFQUQgJXMpIgotbXNnc3RyICIo0LjQt9Cy0YrQvSDQutC70L7QvSwg0L/RgNC10LHQsNC30LjRgNCw0L3QtSDQvdCwINC90LXRgdCy0YrRgNC30LDQvSDRg9C60LDQt9Cw0YLQtdC7IOKAnkhFQUTigJwg0L/RgNC4IOKAniVz4oCcKSIKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nIGRldGFjaGVkIEhFQUQgJXMiCittc2dzdHIgItC40LfQstGK0L0g0LrQu9C+0L0sINC/0YDQtdCx0LDQt9C40YDQsNC90LUg0L3QsCDQvdC10YHQstGK0YDQt9Cw0L0g0YPQutCw0LfQsNGC0LXQuyDigJ5IRUFE4oCcINC/0YDQuCDigJ4lc+KAnCIKIAotIzogcmVmLWZpbHRlci5jOjE0MzAKKyM6IHJlZi1maWx0ZXIuYzoxNDk0CiAjLCBjLWZvcm1hdAotbXNnaWQgIihubyBicmFuY2gsIGJpc2VjdCBzdGFydGVkIG9uICVzKSIKLW1zZ3N0ciAiKNC40LfQstGK0L0g0LrQu9C+0L0sINC00LLQvtC40YfQvdC+INGC0YrRgNGB0LXQvdC1INC+0YIg4oCeJXPigJwpIgorbXNnaWQgIm5vIGJyYW5jaCwgYmlzZWN0IHN0YXJ0ZWQgb24gJXMiCittc2dzdHIgItC40LfQstGK0L0g0LrQu9C+0L0sINC00LLQvtC40YfQvdC+INGC0YrRgNGB0LXQvdC1INC+0YIg4oCeJXPigJwiCiAKLSMuIFRSQU5TTEFUT1JTOiBtYWtlIHN1cmUgdGhpcyBtYXRjaGVzICJIRUFECi0jLiBkZXRhY2hlZCBhdCAiIGluIHd0LXN0YXR1cy5jCi0jLgotIzogcmVmLWZpbHRlci5jOjE0MzgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiKEhFQUQgZGV0YWNoZWQgYXQgJXMpIgotbXNnc3RyICIo0KPQutCw0LfQsNGC0LXQu9GP0YIg4oCeSEVBROKAnCDQvdC1INC1INGB0LLRitGA0LfQsNC9INC4INC1INC/0YDQuCDigJ4lc+KAnCkiCisjOiByZWYtZmlsdGVyLmM6MTUwNAorbXNnaWQgIm5vIGJyYW5jaCIKK21zZ3N0ciAi0LjQt9Cy0YrQvSDQutC70L7QvSIKIAotIy4gVFJBTlNMQVRPUlM6IG1ha2Ugc3VyZSB0aGlzIG1hdGNoZXMgIkhFQUQKLSMuIGRldGFjaGVkIGZyb20gIiBpbiB3dC1zdGF0dXMuYwotIy4KLSM6IHJlZi1maWx0ZXIuYzoxNDQ1Ci0jLCBjLWZvcm1hdAotbXNnaWQgIihIRUFEIGRldGFjaGVkIGZyb20gJXMpIgotbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINC90LUg0LUg0YHQstGK0YDQt9Cw0L0g0Lgg0LUg0L7RgtC00LXQu9C1zIDQvSDQvtGCIOKAniVz4oCcIgotCi0jOiByZWYtZmlsdGVyLmM6MTQ0OQotbXNnaWQgIihubyBicmFuY2gpIgotbXNnc3RyICIo0LjQt9Cy0YrQvSDQutC70L7QvSkiCi0KLSM6IHJlZi1maWx0ZXIuYzoxNDgzIHJlZi1maWx0ZXIuYzoxNjM4CisjOiByZWYtZmlsdGVyLmM6MTU0MCByZWYtZmlsdGVyLmM6MTc0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIG9iamVjdCAlcyBmb3IgJXMiCiBtc2dzdHIgItC+0LHQtdC60YLRitGCIOKAniVz4oCcINC70LjQv9GB0LLQsCDQt9CwIOKAniVz4oCcIgogCi0jOiByZWYtZmlsdGVyLmM6MTQ5MQorIzogcmVmLWZpbHRlci5jOjE1NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFyc2Vfb2JqZWN0X2J1ZmZlciBmYWlsZWQgb24gJXMgZm9yICVzIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LDQvdCw0LvQuNC30LjRgNCw0L3QtSDRh9GA0LXQtyDigJ5wYXJzZV9vYmplY3RfYnVmZmVy4oCcINC90LAg4oCeJXPigJwg0LfQsCDigJ4lc+KAnCIKIAotIzogcmVmLWZpbHRlci5jOjE4NTcKKyM6IHJlZi1maWx0ZXIuYzoyMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgYXQgJyVzJyIKIG1zZ3N0ciAi0L7QsdC10LrRgiDRgdGK0YEg0YHQs9GA0LXRiNC10L0g0YTQvtGA0LzQsNGCINC/0YDQuCDigJ4lc+KAnCIKIAotIzogcmVmLWZpbHRlci5jOjE5NDYKKyM6IHJlZi1maWx0ZXIuYzoyMDkzCiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIHJlZiB3aXRoIGJyb2tlbiBuYW1lICVzIgogbXNnc3RyICLQuNCz0L3QvtGA0LjRgNCw0L3QtSDQvdCwINGD0LrQsNC30LDRgtC10LvRjyDRgSDQs9GA0LXRiNC90L4g0LjQvNC1IOKAniVz4oCcIgogCi0jOiByZWYtZmlsdGVyLmM6MjIzMgorIzogcmVmLWZpbHRlci5jOjIzODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbmQpIGF0b20gbWlzc2luZyIKIG1zZ3N0ciAi0LPRgNC10YjQutCwINCy0YrQsiDRhNC+0YDQvNCwzIDRgtCwOiDQu9C40L/RgdCy0LAg0LvQtdC60YHQtdC80LDRgtCwICUlKGVuZCkiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMzM4CisjOiByZWYtZmlsdGVyLmM6MjQ4OQorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW1lcmdlZCIKK21zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeJXPigJwg0Lgg4oCeLS1tZXJnZWTigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCisKKyM6IHJlZi1maWx0ZXIuYzoyNDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8tbWVyZ2VkIgorbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4lc+KAnCDQuCDigJ4tLW5vLW1lcmdlZOKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCIKKworIzogcmVmLWZpbHRlci5jOjI1MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG9iamVjdCBuYW1lICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QviDQuNC80LUg0L3QsCDQvtCx0LXQutGCIOKAniVz4oCcIgogCi0jOiByZW1vdGUuYzo2MDcKKyM6IHJlZi1maWx0ZXIuYzoyNTA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIG11c3QgcG9pbnQgdG8gYSBjb21taXQiCittc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAniVz4oCcINC90LUg0YHQvtGH0Lgg0LrRitC8INC/0L7QtNCw0LLQsNC90LUiCisKKyM6IHJlbW90ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25maWcgcmVtb3RlIHNob3J0aGFuZCBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIgorbXNnc3RyICIiCisi0YHRitC60YDQsNGJ0LXQvdC40LXRgtC+INC30LAg0L7RgtC00LDQu9C10YfQtdC90L4g0YXRgNCw0L3QuNC70LjRidC1INC90LUg0LzQvtC20LUg0LfQsCDQt9Cw0L/QvtGH0LLQsCDRgdGK0YEg0LfQvdCw0LrQsCDigJ4v4oCcOiAlcyIKKworIzogcmVtb3RlLmM6NDE0Cittc2dpZCAibW9yZSB0aGFuIG9uZSByZWNlaXZlcGFjayBnaXZlbiwgdXNpbmcgdGhlIGZpcnN0IgorbXNnc3RyICLQt9Cw0LTQsNC00LXQvSDQtSDQv9C+0LLQtdGH0LUg0L7RgiDQtdC00LjQvSDQv9Cw0LrQtdGCINC30LAg0L/QvtC70YPRh9Cw0LLQsNC90LUsINGJ0LUg0YHQtSDQv9C+0LvQt9Cy0LAg0L/RitGA0LLQuNGP0YIiCisKKyM6IHJlbW90ZS5jOjQyMgorbXNnaWQgIm1vcmUgdGhhbiBvbmUgdXBsb2FkcGFjayBnaXZlbiwgdXNpbmcgdGhlIGZpcnN0IgorbXNnc3RyICLQt9Cw0LTQsNC00LXQvSDQtSDQv9C+0LLQtdGH0LUg0L7RgiDQtdC00LjQvSDQv9Cw0LrQtdGCINC30LAg0LjQt9C/0YDQsNGJ0LDQvdC1LCDRidC1INGB0LUg0L/QvtC70LfQstCwINC/0YrRgNCy0LjRj9GCIgorCisjOiByZW1vdGUuYzo2MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGZldGNoIGJvdGggJXMgYW5kICVzIHRvICVzIgogbXNnc3RyICLQndC10LLRitC30LzQvtC20L3QviDQtSDQtNCwINGB0LUg0LTQvtGB0YLQsNCy0Y/RgiDQtdC00L3QvtCy0YDQtdC80LXQvdC90L4g0Lgg4oCeJXPigJwsINC4IOKAniVz4oCcINC60YrQvCDigJ4lc+KAnCIKIAotIzogcmVtb3RlLmM6NjExCisjOiByZW1vdGUuYzo2MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdXN1YWxseSB0cmFja3MgJXMsIG5vdCAlcyIKIG1zZ3N0ciAi4oCeJXPigJwg0L7QsdC40LrQvdC+0LLQtdC90L4g0YHQu9C10LTQuCDigJ4lc+KAnCwg0LAg0L3QtSDigJ4lc+KAnCIKIAotIzogcmVtb3RlLmM6NjE1CisjOiByZW1vdGUuYzo2MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdHJhY2tzIGJvdGggJXMgYW5kICVzIgogbXNnc3RyICLigJ4lc+KAnCDRgdC70LXQtNC4INC60LDQutGC0L4g4oCeJXPigJwsINGC0LDQutCwINC4IOKAniVz4oCcIgogCi0jOiByZW1vdGUuYzo2MjMKLW1zZ2lkICJJbnRlcm5hbCBlcnJvciIKLW1zZ3N0ciAi0JLRitGC0YDQtdGI0L3QsCDQs9GA0LXRiNC60LAiCisjOiByZW1vdGUuYzo2ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAia2V5ICclcycgb2YgcGF0dGVybiBoYWQgbm8gJyonIgorbXNnc3RyICLQutC70Y7RhyDigJ4lc+KAnCDQvdCwINGI0LDQsdC70L7QvdCwINC90LUg0YHRitC00YrRgNC20LAg4oCeKuKAnCIKIAotIzogcmVtb3RlLmM6MTU2OSByZW1vdGUuYzoxNjcwCisjOiByZW1vdGUuYzo2OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgJyVzJyBvZiBwYXR0ZXJuIGhhcyBubyAnKiciCittc2dzdHIgItGB0YLQvtC50L3QvtGB0YIg4oCeJXPigJwg0L3QsCDRiNCw0LHQu9C+0L3QsCDQvdC1INGB0YrQtNGK0YDQttCwIOKAnirigJwiCisKKyM6IHJlbW90ZS5jOjEwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgZG9lcyBub3QgbWF0Y2ggYW55IgorbXNnc3RyICLRg9C60LDQt9Cw0YLQtdC70Y/RgiDQvdCwINCy0LXRgNGB0LjRjy3QuNC30YLQvtGH0L3QuNC6IOKAniVz4oCcINC90LUg0YHRitCy0L/QsNC00LAg0YEg0L3QuNC60L7QuSDQvtCx0LXQutGCIgorCisjOiByZW1vdGUuYzoxMDA5CisjLCBjLWZvcm1hdAorbXNnaWQgInNyYyByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAi0YPQutCw0LfQsNGC0LXQu9GP0YIg0L3QsCDQstC10YDRgdC40Y8t0LjQt9GC0L7Rh9C90LjQuiDigJ4lc+KAnCDRgdGK0LLQv9Cw0LTQsCDRgSDQv9C+0LLQtdGH0LUg0L7RgiDQtdC00LjQvSDQvtCx0LXQutGCIgorCisjLiBUUkFOU0xBVE9SUzogIm1hdGNoZXMgJyVzJyUiIGlzIHRoZSA8ZHN0PiBwYXJ0IG9mICJnaXQgcHVzaAorIy4gPHJlbW90ZT4gPHNyYz46PGRzdD4iIHB1c2gsIGFuZCAiYmVpbmcgcHVzaGVkICgnJXMnKSIgaXMKKyMuIHRoZSA8c3JjPi4KKyMuCisjOiByZW1vdGUuYzoxMDI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZGVzdGluYXRpb24geW91IHByb3ZpZGVkIGlzIG5vdCBhIGZ1bGwgcmVmbmFtZSAoaS5lLixcbiIKKyJzdGFydGluZyB3aXRoIFwicmVmcy9cIikuIFdlIHRyaWVkIHRvIGd1ZXNzIHdoYXQgeW91IG1lYW50IGJ5OlxuIgorIlxuIgorIi0gTG9va2luZyBmb3IgYSByZWYgdGhhdCBtYXRjaGVzICclcycgb24gdGhlIHJlbW90ZSBzaWRlLlxuIgorIi0gQ2hlY2tpbmcgaWYgdGhlIDxzcmM+IGJlaW5nIHB1c2hlZCAoJyVzJylcbiIKKyIgIGlzIGEgcmVmIGluIFwicmVmcy97aGVhZHMsdGFnc30vXCIuIElmIHNvIHdlIGFkZCBhIGNvcnJlc3BvbmRpbmdcbiIKKyIgIHJlZnMve2hlYWRzLHRhZ3N9LyBwcmVmaXggb24gdGhlIHJlbW90ZSBzaWRlLlxuIgorIlxuIgorIk5laXRoZXIgd29ya2VkLCBzbyB3ZSBnYXZlIHVwLiBZb3UgbXVzdCBmdWxseSBxdWFsaWZ5IHRoZSByZWYuIgorbXNnc3RyICIiCisi0JfQsNC00LDQtNC10L3QsNGC0LAg0YbQtdC7INC90LUg0LUg0L/RitC70L3QviDQuNC80LUg0L3QsCDRg9C60LDQt9Cw0YLQtdC7ICjQvdC1INC30LDQv9C+0YfQstCwINGBIOKAnnJlZnMv4oCcKS5cbiIKKyLQkdGP0YXQsCDQv9GA0L7QsdCy0LDQvdC4INGB0LvQtdC00L3QuNGC0LUg0LLQsNGA0LjQsNC90YLQuDpcbiIKKyJcbiIKKyIgIOKBgyDRg9C60LDQt9Cw0YLQtdC7INC+0YIg0L7RgtC00LDQu9C10YfQtdC90L7RgtC+INGF0YDQsNC90LjQu9C40YnQtSwg0LrQvtC50YLQviDQtNCwINGB0YrQvtGC0LLQtdGC0YHRgtCy0LAg0L3QsCDigJ4lc+KAnDtcbiIKKyIgIOKBgyDQtNCw0LvQuCDQuNC30YLQu9Cw0YHQutCy0LDQvdC40Y/RgiDQmNCX0KLQntCn0J3QmNCaICjigJ4lc+KAnCkg0LUg0YPQutCw0LfQsNGC0LXQuyDQsiDigJ5yZWZzL3toZWFkcyx0YWdzfS/igJwuXG4iCisiICAgINCf0YDQuCDRgdGK0LLQv9Cw0LTQtdC90LjQtSDRgdC1INC00L7QsdCw0LLRjyDRgdGK0L7RgtCy0LXRgtC10L0g0L/RgNC10YTQuNC60YEg4oCecmVmcy97aGVhZHMsdGFnc30v4oCcINC30LBcbiIKKyIgICAg0L7RgtC00LDQu9C10YfQtdC90L7RgtC+INGF0YDQsNC90LjQu9C40YnQtS5cbiIKKyJcbiIKKyLQndC40LrQvtC5INC+0YIg0LLQsNGA0LjQsNC90YLQuNGC0LUg0L3QtSDRgdGA0LDQsdC+0YLQuC4gINCi0YDRj9Cx0LLQsCDRgdCw0LzQuCDQtNCwINGD0LrQsNC20LXRgtC1INC/0YrQu9C90L7RgtC+INC40LzQtSDQvdCwXG4iCisi0YPQutCw0LfQsNGC0LXQu9GPLiIKKworIzogcmVtb3RlLmM6MTA0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSBjb21taXQgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byBjcmVhdGUgYSBuZXcgYnJhbmNoIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy9oZWFkcy8lcyc/IgorbXNnc3RyICIiCisi0JjQl9Ci0J7Qp9Cd0JjQmtGK0YIg0LUg0L7QsdC10LrRgi3Qv9C+0LTQsNCy0LDQvdC1LiAg0J3QtSDRhtC10LvQuNGC0LUg0LvQuCDQstGB0YrRidC90L7RgdGCINC00LAg0YHRitC30LTQsNC00LXRgtC1INC90L7QsiDQutC70L7QvSAiCisi0LrQsNGC0L5cbiIKKyLQuNC30YLQu9Cw0YHQutCw0YLQtSDQutGK0Lwg4oCeJXM6cmVmcy9oZWFkcy8lc+KAnD8iCisKKyM6IHJlbW90ZS5jOjEwNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgdGFnIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gY3JlYXRlIGEgbmV3IHRhZyBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisi0JjQl9Ci0J7Qp9Cd0JjQmtGK0YIg0LUg0L7QsdC10LrRgi3QtdGC0LjQutC10YIuICDQndC1INGG0LXQu9C40YLQtSDQu9C4INCy0YHRitGJ0L3QvtGB0YIg0LTQsCDRgdGK0LfQtNCw0LTQtdGC0LUg0L3QvtCyINC60LvQvtC9ICIKKyLQutCw0YLQvlxuIgorItC40LfRgtC70LDRgdC60LDRgtC1INC60YrQvCDigJ4lczpyZWZzL3RhZ3MvJXPigJw/IgorCisjOiByZW1vdGUuYzoxMDU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIHRyZWUgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byB0YWcgYSBuZXcgdHJlZSBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisi0JjQl9Ci0J7Qp9Cd0JjQmtGK0YIg0LUg0L7QsdC10LrRgi3QtNGK0YDQstC+LiAg0J3QtSDRhtC10LvQuNGC0LUg0LvQuCDQstGB0YrRidC90L7RgdGCINC00LAg0YHRitC30LTQsNC00LXRgtC1INC90L7QsiDQutC70L7QvSDQutCw0YLQvlxuIgorItC40LfRgtC70LDRgdC60LDRgtC1INC60YrQvCDigJ4lczpyZWZzL3RhZ3MvJXPigJw/IgorCisjOiByZW1vdGUuYzoxMDU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIGJsb2Igb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byB0YWcgYSBuZXcgYmxvYiBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisi0JjQl9Ci0J7Qp9Cd0JjQmtGK0YIg0LUg0L7QsdC10LrRgi1CTE9CLiAg0J3QtSDRhtC10LvQuNGC0LUg0LvQuCDQstGB0YrRidC90L7RgdGCINC00LAg0YHRitC30LTQsNC00LXRgtC1INC90L7QsiDQutC70L7QvSDQutCw0YLQvlxuIgorItC40LfRgtC70LDRgdC60LDRgtC1INC60YrQvCDigJ4lczpyZWZzL3RhZ3MvJXPigJw/IgorCisjOiByZW1vdGUuYzoxMDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNhbm5vdCBiZSByZXNvbHZlZCB0byBicmFuY2giCittc2dzdHIgItC90LUg0LUg0L7RgtC60YDQuNGCINC60LvQvtC9INGB0YrQvtGC0LLQtdGC0YHRgtCy0LDRiSDQvdCwIOKAniVz4oCcIgorCisjOiByZW1vdGUuYzoxMTA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgJyVzJzogcmVtb3RlIHJlZiBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9GC0YDQuNC1OiDQvtGC0LTQsNC70LXRh9C10L3QuNGPINGD0LrQsNC30LDRgtC10Lsg0L3QtSDRgdGK0YnQtdGB0YLQstGD0LLQsCIKKworIzogcmVtb3RlLmM6MTExOAorIywgYy1mb3JtYXQKK21zZ2lkICJkc3QgcmVmc3BlYyAlcyBtYXRjaGVzIG1vcmUgdGhhbiBvbmUiCittc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCINC90LAg0LLQtdGA0YHQuNGPLdGG0LXQuyDigJ4lc+KAnCDRgdGK0LLQv9Cw0LTQsCDRgSDQv9C+0LLQtdGH0LUg0L7RgiDQtdC00LjQvSDQvtCx0LXQutGCIgorCisjOiByZW1vdGUuYzoxMTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRzdCByZWYgJXMgcmVjZWl2ZXMgZnJvbSBtb3JlIHRoYW4gb25lIHNyYyIKK21zZ3N0ciAiIgorItGD0LrQsNC30LDRgtC10LvRj9GCINC90LAg0LLQtdGA0YHQuNGPLdGG0LXQuyDigJ4lc+KAnCDRgdGK0L7RgtCy0LXRgtGB0YLQstCwINC4INGJ0LUg0L/QvtC70YPRh9Cw0LLQsCDQvtGCINC/0L7QstC10YfQtSDQvtGCINC10LTQuNC9ICIKKyLQuNC30YLQvtGH0L3QuNC6IgorCisjOiByZW1vdGUuYzoxNjI4IHJlbW90ZS5jOjE3MjkKIG1zZ2lkICJIRUFEIGRvZXMgbm90IHBvaW50IHRvIGEgYnJhbmNoIgogbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINC90LUg0YHQvtGH0Lgg0LrRitC8INC60LvQvtC9IgogCi0jOiByZW1vdGUuYzoxNTc4CisjOiByZW1vdGUuYzoxNjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggYnJhbmNoOiAnJXMnIgogbXNnc3RyICLQvdGP0LzQsCDQutC70L7QvSDQvdCwINC40LzQtSDigJ4lc+KAnCIKIAotIzogcmVtb3RlLmM6MTU4MQorIzogcmVtb3RlLmM6MTY0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyB1cHN0cmVhbSBjb25maWd1cmVkIGZvciBicmFuY2ggJyVzJyIKIG1zZ3N0ciAi0L3QtSDQtSDQt9Cw0LTQsNC00LXQvSDQutC70L7QvS3QuNC30YLQvtGH0L3QuNC6INC30LAg0LrQu9C+0L3QsCDigJ4lc+KAnCIKIAotIzogcmVtb3RlLmM6MTU4NworIzogcmVtb3RlLmM6MTY0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1cHN0cmVhbSBicmFuY2ggJyVzJyBub3Qgc3RvcmVkIGFzIGEgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKIG1zZ3N0ciAi0LrQu9C+0L3RitGCLdC40LfRgtC+0YfQvdC40Log4oCeJXPigJwg0L3QtSDQtSDRgdGK0YXRgNCw0L3QtdC9INC60LDRgtC+INGB0LvQtdC00Y/RiSDQutC70L7QvSIKIAotIzogcmVtb3RlLmM6MTYwMgorIzogcmVtb3RlLmM6MTY2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwdXNoIGRlc3RpbmF0aW9uICclcycgb24gcmVtb3RlICclcycgaGFzIG5vIGxvY2FsIHRyYWNraW5nIGJyYW5jaCIKIG1zZ3N0ciAiIgogItC70LjQv9GB0LLQsCDQu9C+0LrQsNC70LXQvSDRgdC70LXQtNGP0Ykg0LrQu9C+0L0g0LfQsCDQvNC10YHRgtC+0L/QvtC70L7QttC10L3QuNC10YLQviDQt9CwINC40LfRgtC70LDRgdC60LLQsNC90LUg4oCeJXPigJwg0LIgIgogItGF0YDQsNC90LjQu9C40YnQtdGC0L4g4oCeJXPigJwiCiAKLSM6IHJlbW90ZS5jOjE2MTQKKyM6IHJlbW90ZS5jOjE2NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYnJhbmNoICclcycgaGFzIG5vIHJlbW90ZSBmb3IgcHVzaGluZyIKIG1zZ3N0ciAi0L3Rj9C80LAg0LjQvdGE0L7RgNC80LDRhtC40Y8g0LrQu9C+0L3RitGCIOKAniVz4oCcINC00LAg0YHQu9C10LTQuCDQvdGP0LrQvtC5INC00YDRg9CzIgogCi0jOiByZW1vdGUuYzoxNjI0CisjOiByZW1vdGUuYzoxNjgzCiAjLCBjLWZvcm1hdAogbXNnaWQgInB1c2ggcmVmc3BlY3MgZm9yICclcycgZG8gbm90IGluY2x1ZGUgJyVzJyIKIG1zZ3N0ciAi0YPQutCw0LfQsNGC0LXQu9GP0YIg0LfQsCDQuNC30YLQu9Cw0YHQutCy0LDQvdC1INC90LAg4oCeJXPigJwg0L3QtSDQstC60LvRjtGH0LLQsCDigJ4lc+KAnCIKIAotIzogcmVtb3RlLmM6MTYzNworIzogcmVtb3RlLmM6MTY5NgogbXNnaWQgInB1c2ggaGFzIG5vIGRlc3RpbmF0aW9uIChwdXNoLmRlZmF1bHQgaXMgJ25vdGhpbmcnKSIKIG1zZ3N0ciAi0YPQutCw0LfQsNGC0LXQu9GP0YIg0LfQsCDQuNC30YLQu9Cw0YHQutCy0LDQvdC1INC90LUg0LLQutC70Y7Rh9Cy0LAg0YbQtdC7ICjigJ5wdXNoLmRlZmF1bHTigJwg0LUg4oCebm90aGluZ+KAnCkiCiAKLSM6IHJlbW90ZS5jOjE2NTkKKyM6IHJlbW90ZS5jOjE3MTgKIG1zZ2lkICJjYW5ub3QgcmVzb2x2ZSAnc2ltcGxlJyBwdXNoIHRvIGEgc2luZ2xlIGRlc3RpbmF0aW9uIgogbXNnc3RyICLQv9GA0L7RgdGC0L7RgtC+IChzaW1wbGUpINC40LfRgtC70LDRgdC60LLQsNC90LUg0L3QtSDRgdGK0L7RgtCy0LXRgtGB0YLQstCwINC90LAg0LXQtNC90LAg0YbQtdC7IgogCi0jOiByZW1vdGUuYzoxOTM1CisjOiByZW1vdGUuYzoxODQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiAlcyIKK21zZ3N0ciAi0L7RgtC00LDQu9C10YfQtdC90LjRj9GCINGD0LrQsNC30LDRgtC10Lsg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgiIKKworIzogcmVtb3RlLmM6MTg1NworIywgYy1mb3JtYXQKK21zZ2lkICIqIElnbm9yaW5nIGZ1bm55IHJlZiAnJXMnIGxvY2FsbHkiCittc2dzdHIgIuKAoiDQv9GA0LXRgdC60LDRh9Cw0L3QtSDQvdCwINC90LXQvtGH0LDQutCy0LDQvdC40Y8g0LvQvtC60LDQu9C10L0g0YPQutCw0LfQsNGC0LXQuyDigJ4lc+KAnCIKKworIzogcmVtb3RlLmM6MjAyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBpcyBiYXNlZCBvbiAnJXMnLCBidXQgdGhlIHVwc3RyZWFtIGlzIGdvbmUuXG4iCiBtc2dzdHIgItCi0L7Qt9C4INC60LvQvtC9INGB0LvQtdC00Lgg4oCeJXPigJwsINC90L4g0YHQu9C10LTQtdC90LjRj9GCINC60LvQvtC9INC1INC40LfRgtGA0LjRgi5cbiIKIAotIzogcmVtb3RlLmM6MTkzOQorIzogcmVtb3RlLmM6MjAyNAogbXNnaWQgIiAgKHVzZSBcImdpdCBicmFuY2ggLS11bnNldC11cHN0cmVhbVwiIHRvIGZpeHVwKVxuIgogbXNnc3RyICIgICjQt9CwINC00LAg0LrQvtGA0LjQs9C40YDQsNGC0LUg0YLQvtCy0LAsINC40LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeZ2l0IGJyYW5jaCAtLXVuc2V0LXVwc3RyZWFt4oCcKVxuIgogCi0jOiByZW1vdGUuYzoxOTQyCisjOiByZW1vdGUuYzoyMDI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIHVwIHRvIGRhdGUgd2l0aCAnJXMnLlxuIgogbXNnc3RyICLQmtC70L7QvdGK0YIg0LUg0LDQutGC0YPQsNC70LjQt9C40YDQsNC9INC60YrQvCDigJ4lc+KAnC5cbiIKIAotIzogcmVtb3RlLmM6MTk0NgorIzogcmVtb3RlLmM6MjAzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBhbmQgJyVzJyByZWZlciB0byBkaWZmZXJlbnQgY29tbWl0cy5cbiIKIG1zZ3N0ciAi0JrQu9C+0L3RitGCINCy0Lgg0Lgg4oCeJXPigJwg0YHQvtGH0LDRgiDQutGK0Lwg0YDQsNC30LvQuNGH0L3QuCDQv9C+0LTQsNCy0LDQvdC40Y8uXG4iCiAKLSM6IHJlbW90ZS5jOjE5NDkKKyM6IHJlbW90ZS5jOjIwMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAodXNlIFwiJXNcIiBmb3IgZGV0YWlscylcbiIKIG1zZ3N0ciAiICAo0LfQsCDQv9C+0LLQtdGH0LUg0LjQvdGE0L7RgNC80LDRhtC40Y8g0L/QvtC70LfQstCw0LnRgtC1IOKAniVz4oCcKVxuIgogCi0jOiByZW1vdGUuYzoxOTUzCisjOiByZW1vdGUuYzoyMDM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIGFoZWFkIG9mICclcycgYnkgJWQgY29tbWl0LlxuIgogbXNnaWRfcGx1cmFsICJZb3VyIGJyYW5jaCBpcyBhaGVhZCBvZiAnJXMnIGJ5ICVkIGNvbW1pdHMuXG4iCiBtc2dzdHJbMF0gItCa0LvQvtC90YrRgiDQstC4INC1INGBICUyJGQg0L/QvtC00LDQstCw0L3QtSDQv9GA0LXQtCDigJ4lMSRz4oCcLlxuIgogbXNnc3RyWzFdICLQmtC70L7QvdGK0YIg0LLQuCDQtSDRgSAlMiRkINC/0L7QtNCw0LLQsNC90LjRjyDQv9GA0LXQtCDigJ4lMSRz4oCcLlxuIgogCi0jOiByZW1vdGUuYzoxOTU5CisjOiByZW1vdGUuYzoyMDQ0CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1c2hcIiB0byBwdWJsaXNoIHlvdXIgbG9jYWwgY29tbWl0cylcbiIKIG1zZ3N0ciAiICAo0L/Rg9Cx0LvQuNC60YPQstCw0LnRgtC1INC70L7QutCw0LvQvdC40YLQtSDRgdC4INC/0YDQvtC80LXQvdC4INGH0YDQtdC3IOKAnmdpdCBwdXNo4oCcKVxuIgogCi0jOiByZW1vdGUuYzoxOTYyCisjOiByZW1vdGUuYzoyMDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIGJlaGluZCAnJXMnIGJ5ICVkIGNvbW1pdCwgYW5kIGNhbiBiZSBmYXN0LWZvcndhcmRlZC5cbiIKIG1zZ2lkX3BsdXJhbCAiIgpAQCAtNDU1MCwxMSArNjU2MiwxMSBAQAogbXNnc3RyWzBdICLQmtC70L7QvdGK0YIg0LLQuCDQtSDRgSAlMiRkINC/0L7QtNCw0LLQsNC90LUg0LfQsNC0IOKAniUxJHPigJwg0Lgg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0LXQstGK0YDRgtGP0L0uXG4iCiBtc2dzdHJbMV0gItCa0LvQvtC90YrRgiDQstC4INC1INGBICUyJGQg0L/QvtC00LDQstCw0L3QuNGPINC30LDQtCDigJ4lMSRz4oCcINC4INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC10LLRitGA0YLRj9C9LlxuIgogCi0jOiByZW1vdGUuYzoxOTcwCisjOiByZW1vdGUuYzoyMDU1CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1bGxcIiB0byB1cGRhdGUgeW91ciBsb2NhbCBicmFuY2gpXG4iCiBtc2dzdHIgIiAgKNC+0LHQvdC+0LLQtdGC0LUg0LvQvtC60LDQu9C90LjRjyDRgdC4INC60LvQvtC9INGH0YDQtdC3IOKAnmdpdCBwdWxs4oCcKVxuIgogCi0jOiByZW1vdGUuYzoxOTczCisjOiByZW1vdGUuYzoyMDU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGJyYW5jaCBhbmQgJyVzJyBoYXZlIGRpdmVyZ2VkLFxuIgpAQCAtNDU2OSwxMCArNjU4MSwxNSBAQAogItCi0LXQutGD0YnQuNGP0YIg0LrQu9C+0L0g0YHQtSDQtSDQvtGC0LTQtdC70LjQuyDQvtGCIOKAniVz4oCcLFxuIgogItC00LLQsNGC0LAg0LjQvNCw0YIg0YHRitC+0YLQstC10YLQvdC+INC/0L4gJWQg0LggJWQg0L3QtdGB0YrQstC/0LDQtNCw0YnQuCDQv9C+0LTQsNCy0LDQvdC40Y8uXG4iCiAKLSM6IHJlbW90ZS5jOjE5ODMKKyM6IHJlbW90ZS5jOjIwNjgKIG1zZ2lkICIgICh1c2UgXCJnaXQgcHVsbFwiIHRvIG1lcmdlIHRoZSByZW1vdGUgYnJhbmNoIGludG8geW91cnMpXG4iCiBtc2dzdHIgIiAgKNGB0LvQtdC50YLQtSDQvtGC0LTQsNC70LXRh9C10L3QuNGPINC60LvQvtC9INCyINC70L7QutCw0LvQvdC40Y8g0YfRgNC10Lcg4oCeZ2l0IHB1bGzigJwpXG4iCiAKKyM6IHJlbW90ZS5jOjIyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHBhcnNlIGV4cGVjdGVkIG9iamVjdCBuYW1lICclcyciCittc2dzdHIgItC+0YfQsNC60LLQsNC90L7RgtC+INC40LzQtSDQvdCwINC+0LHQtdC60YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INCw0L3QsNC70LjQt9C40YDQsNC90L4iCisKICM6IHJlcGxhY2Utb2JqZWN0LmM6MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJlcGxhY2UgcmVmIG5hbWU6ICVzIgpAQCAtNDU4Myw3ICs2NjAwLDcgQEAKIG1zZ2lkICJkdXBsaWNhdGUgcmVwbGFjZSByZWY6ICVzIgogbXNnc3RyICLQv9C+0LLRgtCw0YDRj9GJINGB0LUg0YPQutCw0LfQsNGC0LXQuyDQt9CwINC30LDQvNGP0L3QsDog4oCeJXPigJwiCiAKLSM6IHJlcGxhY2Utb2JqZWN0LmM6NzMKKyM6IHJlcGxhY2Utb2JqZWN0LmM6ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZSBkZXB0aCB0b28gaGlnaCBmb3Igb2JqZWN0ICVzIgogbXNnc3RyICLQtNGK0LvQsdC+0YfQuNC90LDRgtCwINC90LAg0LfQsNC80Y/QvdCwINC1INC/0YDQtdC60LDQu9C10L3QviDQs9C+0LvRj9C80LAg0LfQsCDQvtCx0LXQutGC0LA6IOKAniVz4oCcIgpAQCAtNDU5NiwxMSArNjYxMyw2IEBACiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHJlcmVyZSByZWNvcmQiCiBtc2dzdHIgItC/0YDQuNC70L7QttC10L3QvtGC0L4g0LrQvtGA0LjQs9C40YDQsNC90LUg0L3QsCDQutC+0L3RhNC70LjQutGCINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0L/QuNGB0LDQvdC+IgogCi0jOiByZXJlcmUuYzo0ODUgcmVyZXJlLmM6NjkyIHNlcXVlbmNlci5jOjMxMzYgc2VxdWVuY2VyLmM6MzE2MgotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJyIKLW1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNC/0LjRiNC1IgotCiAjOiByZXJlcmUuYzo0OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlcmUgd2VyZSBlcnJvcnMgd2hpbGUgd3JpdGluZyAnJXMnICglcykiCkBAIC00NjU0LDggKzY2NjYsOCBAQAogbXNnaWQgIlJlY29yZGVkIHByZWltYWdlIGZvciAnJXMnIgogbXNnc3RyICLQn9GA0LXQtNCy0LDRgNC40YLQtdC70L3QuNGP0YIg0LLQsNGA0LjQsNC90YIg0L3QsCDigJ4lc+KAnCDQtSDQt9Cw0L/QsNC30LXQvSIKIAotIzogcmVyZXJlLmM6ODgxIHN1Ym1vZHVsZS5jOjE3NjMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTMKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDIzCisjOiByZXJlcmUuYzo4ODEgc3VibW9kdWxlLmM6MjA3OCBidWlsdGluL2xvZy5jOjE4NzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDU0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgItCU0LjRgNC10LrRgtC+0YDQuNGP0YLQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRitC30LTQsNC00LXQvdCwIgpAQCAtNDY4OSwyOSArNjcwMSwzNSBAQAogbXNnaWQgInVuYWJsZSB0byBvcGVuIHJyLWNhY2hlIGRpcmVjdG9yeSIKIG1zZ3N0ciAi0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwIOKAnnJyLWNhY2hl4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0YLQstC+0YDQuCIKIAotIzogcmV2aXNpb24uYzoyMzI0CisjOiByZXZpc2lvbi5jOjI0OTcKIG1zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoIGFwcGVhcnMgdG8gYmUgYnJva2VuIgogbXNnc3RyICLQotC10LrRg9GJ0LjRj9GCINC60LvQvtC9INC1INC/0L7QstGA0LXQtNC10L0iCiAKLSM6IHJldmlzaW9uLmM6MjMyNworIzogcmV2aXNpb24uYzoyNTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgInlvdXIgY3VycmVudCBicmFuY2ggJyVzJyBkb2VzIG5vdCBoYXZlIGFueSBjb21taXRzIHlldCIKIG1zZ3N0ciAi0KLQtdC60YPRidC40Y/RgiDQutC70L7QvSDigJ4lc+KAnCDQtSDQsdC10Lcg0L/QvtC00LDQstCw0L3QuNGPICIKIAotIzogcmV2aXNpb24uYzoyNTIzCisjOiByZXZpc2lvbi5jOjI3MDgKIG1zZ2lkICItLWZpcnN0LXBhcmVudCBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWJpc2VjdCIKIG1zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeLS1maXJzdC1wYXJlbnTigJwg0Lgg4oCeLS1iaXNlY3TigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKLSM6IHJ1bi1jb21tYW5kLmM6NzQwCisjOiByZXZpc2lvbi5jOjI3MTIKK21zZ2lkICItTCBkb2VzIG5vdCB5ZXQgc3VwcG9ydCBkaWZmIGZvcm1hdHMgYmVzaWRlcyAtcCBhbmQgLXMiCittc2dzdHIgIiIKKyLQvtC/0YbQuNGP0YLQsCDigJ4tTOKAnCDQv9C+0LTQtNGK0YDQttCwINC10LTQuNC90YHRgtCy0LXQvdC+INGE0L7RgNC80LDRgtC40YDQsNC90LXRgtC+INC90LAg0YDQsNC30LvQuNC60LjRgtC1INGB0L/QvtGA0LXQtCDQvtC/0YbQuNC40YLQtSDigJ4tIgorInDigJwg0Lgg4oCeLXPigJwiCisKKyM6IHJ1bi1jb21tYW5kLmM6NzYzCiBtc2dpZCAib3BlbiAvZGV2L251bGwgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0L7RgtCy0LDRgNGP0L3QtSDQvdCwIOKAni9kZXYvbnVsbOKAnCIKIAotIzogcnVuLWNvbW1hbmQuYzoxMjI5CisjOiBydW4tY29tbWFuZC5jOjEyNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNyZWF0ZSBhc3luYyB0aHJlYWQ6ICVzIgogbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDRgdGK0LfQtNCw0LTQtSDQsNGB0LjQvdGF0YDQvtC90L3QsCDQvdC40YjQutCwOiAlcyIKIAotIzogcnVuLWNvbW1hbmQuYzoxMjkzCisjOiBydW4tY29tbWFuZC5jOjEzMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSAnJXMnIGhvb2sgd2FzIGlnbm9yZWQgYmVjYXVzZSBpdCdzIG5vdCBzZXQgYXMgZXhlY3V0YWJsZS5cbiIKQEAgLTQ3MjEsMzIgKzY3MzksMzIgQEAKICLQl9CwINC00LAg0LjQt9C60LvRjtGH0LjRgtC1INGC0L7QstCwINC/0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LUsINC40LfQv9GK0LvQvdC10YLQtTpcbiIKICIgICAgZ2l0IGNvbmZpZyBhZHZpY2UuaWdub3JlZEhvb2sgZmFsc2UiCiAKLSM6IHNlbmQtcGFjay5jOjE0MgorIzogc2VuZC1wYWNrLmM6MTQ0CiBtc2dpZCAidW5leHBlY3RlZCBmbHVzaCBwYWNrZXQgd2hpbGUgcmVhZGluZyByZW1vdGUgdW5wYWNrIHN0YXR1cyIKIG1zZ3N0ciAiIgogItC90LXQvtGH0LDQutCy0LDQvSDQuNC30YfQuNGB0YLQstCw0Ykg0L/QsNC60LXRgiDigJ5mbHVzaOKAnCDQv9GA0Lgg0LjQt9GH0LjRgtCw0L3QtSDQvdCwINGB0YrRgdGC0L7Rj9C90LjQtdGC0L4g0L7RgiAiCiAi0L7RgtC00LDQu9C10YfQtdC90L7RgtC+INGA0LDQt9C/0LDQutC10YLQuNGA0LDQvdC1IgogCi0jOiBzZW5kLXBhY2suYzoxNDQKKyM6IHNlbmQtcGFjay5jOjE0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgcmVtb3RlIHVucGFjayBzdGF0dXM6ICVzIgogbXNnc3RyICIiCiAi0YHRitGB0YLQvtGP0L3QuNC10YLQviDQvtGCINC+0YLQtNCw0LvQtdGH0LXQvdC+0YLQviDRgNCw0LfQv9Cw0LrQtdGC0LjRgNCw0L3QtSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LDQvdCw0LvQuNC30LjRgNCw0L3QvjogJXMiCiAKLSM6IHNlbmQtcGFjay5jOjE0NgorIzogc2VuZC1wYWNrLmM6MTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZSB1bnBhY2sgZmFpbGVkOiAlcyIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC+0YLQtNCw0LvQtdGH0LXQvdC+INGA0LDQt9C/0LDQutC10YLQuNGA0LDQvdC1OiAlcyIKIAotIzogc2VuZC1wYWNrLmM6MzA4CisjOiBzZW5kLXBhY2suYzozMDkKIG1zZ2lkICJmYWlsZWQgdG8gc2lnbiB0aGUgcHVzaCBjZXJ0aWZpY2F0ZSIKIG1zZ3N0ciAi0YHQtdGA0YLQuNGE0LjQutCw0YLRitGCINC30LAg0LjQt9GC0LvQsNGB0LrQstCw0L3QtSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/QvtC00L/QuNGB0LDQvSIKIAotIzogc2VuZC1wYWNrLmM6NDIxCisjOiBzZW5kLXBhY2suYzo0MjMKIG1zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIHB1c2giCiBtc2dzdHIgItC+0YLRgdGA0LXRidC90LDRgtCwINGB0YLRgNCw0L3QsCDQvdC1INC/0L7QtNC00YrRgNC20LAg0LjQt9GC0LvQsNGB0LrQstCw0L3QtSDRgSDQvtC/0YbQuNGP0YLQsCDigJ4tLXNpZ25lZOKAnCIKIAotIzogc2VuZC1wYWNrLmM6NDIzCisjOiBzZW5kLXBhY2suYzo0MjUKIG1zZ2lkICIiCiAibm90IHNlbmRpbmcgYSBwdXNoIGNlcnRpZmljYXRlIHNpbmNlIHRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS0iCiAic2lnbmVkIHB1c2giCkBAIC00NzU0LDQyICs2NzcyLDQ3IEBACiAi0L7RgtGB0YDQtdGJ0L3QsNGC0LAg0YHRgtGA0LDQvdCwINC90LUg0L/QvtC00LTRitGA0LbQsCDQuNC30YLQu9Cw0YHQutCy0LDQvdC1INGBINC+0L/RhtC40Y/RgtCwIOKAni0tc2lnbmVk4oCcLCDQt9Cw0YLQvtCy0LAg0L3QtSDRgdC1ICIKICLQuNC30L/QvtC70LfQstCwINGB0LXRgNGC0LjRhNC40LrQsNGCIgogCi0jOiBzZW5kLXBhY2suYzo0MzUKKyM6IHNlbmQtcGFjay5jOjQzNwogbXNnaWQgInRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS1hdG9taWMgcHVzaCIKIG1zZ3N0ciAi0L/QvtC70YPRh9Cw0LLQsNGJ0LDRgtCwINGB0YLRgNCw0L3QsCDQvdC1INC/0L7QtNC00YrRgNC20LAg0LjQt9GC0LvQsNGB0LrQstCw0L3QtSDRgSDQvtC/0YbQuNGP0YLQsCDigJ4tLWF0b21pY+KAnCIKIAotIzogc2VuZC1wYWNrLmM6NDQwCisjOiBzZW5kLXBhY2suYzo0NDIKIG1zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IHB1c2ggb3B0aW9ucyIKIG1zZ3N0ciAi0L7RgtGB0YDQtdGJ0L3QsNGC0LAg0YHRgtGA0LDQvdCwINC90LUg0L/QvtC00LTRitGA0LbQsCDQvtC/0YbQuNC4INC/0YDQuCDQuNC30YLQu9Cw0YHQutCy0LDQvdC1IgogCi0jOiBzZXF1ZW5jZXIuYzoxODMKKyM6IHNlcXVlbmNlci5jOjE5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbW1pdCBtZXNzYWdlIGNsZWFudXAgbW9kZSAnJXMnIgogbXNnc3RyICLQvdC10YHRitGJ0LXRgdGC0LLRg9Cy0LDRiSDRgNC10LbQuNC8INC90LAg0LjQt9GH0LjRgdGC0LLQsNC90LUg4oCeJXPigJwg0L3QsCDRgdGK0L7QsdGJ0LXQvdC40LUg0L/RgNC4INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IHNlcXVlbmNlci5jOjI4NworIzogc2VxdWVuY2VyLmM6Mjk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgJyVzJyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40LfRgtGA0LjRgiIKIAotIzogc2VxdWVuY2VyLmM6MzEzCisjOiBzZXF1ZW5jZXIuYzozMTUgYnVpbHRpbi9yZWJhc2UuYzo3ODUgYnVpbHRpbi9yZWJhc2UuYzoxNzUwIGJ1aWx0aW4vcm0uYzozODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlbW92ZSAnJXMnIgorbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LjQt9GC0YDQuNGCIgorCisjOiBzZXF1ZW5jZXIuYzozMjUKIG1zZ2lkICJyZXZlcnQiCiBtc2dzdHIgItC+0YLQvNGP0L3QsCIKIAotIzogc2VxdWVuY2VyLmM6MzE1CisjOiBzZXF1ZW5jZXIuYzozMjcKIG1zZ2lkICJjaGVycnktcGljayIKIG1zZ3N0ciAi0L7RgtCx0LjRgNCw0L3QtSIKIAotIzogc2VxdWVuY2VyLmM6MzE3Ci1tc2dpZCAicmViYXNlIC1pIgotbXNnc3RyICJyZWJhc2UgLWkiCisjOiBzZXF1ZW5jZXIuYzozMjkKK21zZ2lkICJyZWJhc2UiCittc2dzdHIgItC/0YDQtdCx0LDQt9C40YDQsNC90LUiCiAKLSM6IHNlcXVlbmNlci5jOjMxOQorIzogc2VxdWVuY2VyLmM6MzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gYWN0aW9uOiAlZCIKIG1zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90L4g0LTQtdC50YHRgtCy0LjQtTogJWQiCiAKLSM6IHNlcXVlbmNlci5jOjM3NgorIzogc2VxdWVuY2VyLmM6Mzg5CiBtc2dpZCAiIgogImFmdGVyIHJlc29sdmluZyB0aGUgY29uZmxpY3RzLCBtYXJrIHRoZSBjb3JyZWN0ZWQgcGF0aHNcbiIKICJ3aXRoICdnaXQgYWRkIDxwYXRocz4nIG9yICdnaXQgcm0gPHBhdGhzPiciCkBAIC00Nzk3LDcgKzY4MjAsNyBAQAogItGB0LvQtdC0INC60L7RgNC40LPQuNGA0LDQvdC10YLQviDQvdCwINC60L7QvdGE0LvQuNC60YLQuNGC0LUsINC+0YLQsdC10LvQtdC20LXRgtC1INGB0YrQvtGC0LLQtdGC0L3QuNGC0LVcbiIKICLQv9GK0YLQuNGJ0LAg0YEg4oCeZ2l0IGFkZCDQn9Cq0KLigKbigJwg0LjQu9C4IOKAnmdpdCBybSDQn9Cq0KLigKbigJwuIgogCi0jOiBzZXF1ZW5jZXIuYzozNzkKKyM6IHNlcXVlbmNlci5jOjM5MgogbXNnaWQgIiIKICJhZnRlciByZXNvbHZpbmcgdGhlIGNvbmZsaWN0cywgbWFyayB0aGUgY29ycmVjdGVkIHBhdGhzXG4iCiAid2l0aCAnZ2l0IGFkZCA8cGF0aHM+JyBvciAnZ2l0IHJtIDxwYXRocz4nXG4iCkBAIC00ODA3LDExMCArNjgzMCwxMTAgQEAKICLQv9GK0YLQuNGJ0LAg0YEg4oCeZ2l0IGFkZCDQn9Cq0KLigKbigJwg0LjQu9C4IOKAnmdpdCBybSDQn9Cq0KLigKbigJwsINGB0LvQtdC0INC60L7QtdGC0L5cbiIKICLQv9C+0LTQsNC50YLQtSDRgNC10LfRg9C70YLQsNGC0LAg0YEg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCBjb21taXQn4oCcLiIKIAotIzogc2VxdWVuY2VyLmM6MzkyIHNlcXVlbmNlci5jOjI2MzIKKyM6IHNlcXVlbmNlci5jOjQwNSBzZXF1ZW5jZXIuYzoyOTAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb2NrICclcyciCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC30LDQutC70Y7Rh9C4IgogCi0jOiBzZXF1ZW5jZXIuYzozOTkKKyM6IHNlcXVlbmNlci5jOjQxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZW9sIHRvICclcyciCiBtc2dzdHIgItC60YDQsNGP0YIg0L3QsCDRgNC10LQg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNC/0LjRiNC1INCyIOKAniVz4oCcIgogCi0jOiBzZXF1ZW5jZXIuYzo0MDQgc2VxdWVuY2VyLmM6MjUxNSBzZXF1ZW5jZXIuYzoyNjM4IHNlcXVlbmNlci5jOjI2NTIKLSM6IHNlcXVlbmNlci5jOjI4ODUKKyM6IHNlcXVlbmNlci5jOjQxNyBzZXF1ZW5jZXIuYzoyNzA2IHNlcXVlbmNlci5jOjI5MDcgc2VxdWVuY2VyLmM6MjkyMQorIzogc2VxdWVuY2VyLmM6MzE4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZmluYWxpemUgJyVzJyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNCy0YrRgNGI0LgiCiAKLSM6IHNlcXVlbmNlci5jOjQyNyBzZXF1ZW5jZXIuYzo5MjEgc2VxdWVuY2VyLmM6MTU5NCBzZXF1ZW5jZXIuYzoyNTM1Ci0jOiBzZXF1ZW5jZXIuYzoyODY3IHNlcXVlbmNlci5jOjI5NzQgYnVpbHRpbi9hbS5jOjI2MCBidWlsdGluL2NvbW1pdC5jOjc0NgotIzogYnVpbHRpbi9tZXJnZS5jOjEwODQgYnVpbHRpbi9yZWJhc2UuYzoxNTIKKyM6IHNlcXVlbmNlci5jOjQ0MCBzZXF1ZW5jZXIuYzoxNjEzIHNlcXVlbmNlci5jOjI3MjYgc2VxdWVuY2VyLmM6MzE2NworIzogc2VxdWVuY2VyLmM6MzI3NiBidWlsdGluL2FtLmM6MjQ5IGJ1aWx0aW4vY29tbWl0LmM6Nzg3IGJ1aWx0aW4vbWVyZ2UuYzoxMTIwCisjOiBidWlsdGluL3JlYmFzZS5jOjU5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCAnJXMnIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L0iCiAKLSM6IHNlcXVlbmNlci5jOjQ1MworIzogc2VxdWVuY2VyLmM6NDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgInlvdXIgbG9jYWwgY2hhbmdlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlcy4iCiBtc2dzdHIgItC70L7QutCw0LvQvdC40YLQtSDQstC4INC/0YDQvtC80LXQvdC4INGJ0LUg0LHRitC00LDRgiDQv9GA0LXQt9Cw0L/QuNGB0LDQvdC4INC/0YDQuCAlcy4iCiAKLSM6IHNlcXVlbmNlci5jOjQ1NworIzogc2VxdWVuY2VyLmM6NDcwCiBtc2dpZCAiY29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQuIgogbXNnc3RyICLQv9C+0LTQsNC50YLQtSDQuNC70Lgg0YHQutCw0YLQsNC50YLQtSDQv9GA0L7QvNC10L3QuNGC0LUsINC30LAg0LTQsCDQv9GA0L7QtNGK0LvQttC40YLQtSIKIAotIzogc2VxdWVuY2VyLmM6NDg2CisjOiBzZXF1ZW5jZXIuYzo1MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGZhc3QtZm9yd2FyZCIKIG1zZ3N0ciAiJXM6INC/0YDQtdCy0YrRgNGC0LDQvdC1IgogCisjOiBzZXF1ZW5jZXIuYzo1NDEgYnVpbHRpbi90YWcuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBjbGVhbnVwIG1vZGUgJXMiCittc2dzdHIgItCd0LXRgdGK0YnQtdGB0YLQstGD0LLQsNGJINGA0LXQttC40Lwg0L3QsCDQuNC30YfQuNGB0YLQstCw0L3QtSDigJ4lc+KAnCIKKwogIy4gVFJBTlNMQVRPUlM6ICVzIHdpbGwgYmUgInJldmVydCIsICJjaGVycnktcGljayIgb3IKLSMuICJyZWJhc2UgLWkiLgorIy4gInJlYmFzZSIuCiAjLgotIzogc2VxdWVuY2VyLmM6NTc1CisjOiBzZXF1ZW5jZXIuYzo2MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IFVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAiJXM6INC90L7QstC40Y/RgiDQuNC90LTQtdC60YEg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC30LDQv9Cw0LfQtdC9IgogCi0jOiBzZXF1ZW5jZXIuYzo1OTEKKyM6IHNlcXVlbmNlci5jOjY1MgogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgY2FjaGUgdHJlZSIKIG1zZ3N0ciAi0LTRitGA0LLQvtGC0L4g0L3QsCDQutC10YjQsCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7QsdC90L7QstC10L3QviIKIAotIzogc2VxdWVuY2VyLmM6NjA0CisjOiBzZXF1ZW5jZXIuYzo2NjYKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIGNvbW1pdCIKIG1zZ3N0ciAi0L/QvtC00LDQstCw0L3QtdGC0L4sINGB0L7Rh9C10L3QviDQvtGCINGD0LrQsNC30LDRgtC10LvRjyDigJ5IRUFE4oCcLCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGC0L4iCiAKLSM6IHNlcXVlbmNlci5jOjY4NAorIzogc2VxdWVuY2VyLmM6NzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGtleSBwcmVzZW50IGluICclLipzJyIKIG1zZ3N0ciAi0LIg4oCeJS4qc+KAnCDQvdGP0LzQsCDQutC70Y7Rh9C+0LLQtSIKIAotIzogc2VxdWVuY2VyLmM6Njk1CisjOiBzZXF1ZW5jZXIuYzo3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlcXVvdGUgdmFsdWUgb2YgJyVzJyIKIG1zZ3N0ciAi0YbQuNGC0LjRgNCw0L3QtdGC0L4g0L3QsCDRgdGC0L7QudC90L7RgdGC0YLQsCDQvdCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YfQuNGB0YLQtdC90L4iCiAKLSM6IHNlcXVlbmNlci5jOjczMiB3cmFwcGVyLmM6MjI3IHdyYXBwZXIuYzozOTcgYnVpbHRpbi9hbS5jOjcxOQotIzogYnVpbHRpbi9hbS5jOjgxMSBidWlsdGluL21lcmdlLmM6MTA4MQorIzogc2VxdWVuY2VyLmM6Nzk0IHdyYXBwZXIuYzoxOTAgd3JhcHBlci5jOjM2MCBidWlsdGluL2FtLmM6NzEwCisjOiBidWlsdGluL2FtLmM6ODAyIGJ1aWx0aW4vbWVyZ2UuYzoxMTE3IGJ1aWx0aW4vcmViYXNlLmM6MTA3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciByZWFkaW5nIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L06IOKAniVz4oCcIgogCi0jOiBzZXF1ZW5jZXIuYzo3NDIKKyM6IHNlcXVlbmNlci5jOjgwNAogbXNnaWQgIidHSVRfQVVUSE9SX05BTUUnIGFscmVhZHkgZ2l2ZW4iCiBtc2dzdHIgItC90LDRgdGC0YDQvtC50LrQsNGC0LAg0LfQsCDQsNCy0YLQvtGAIOKAnkdJVF9BVVRIT1JfTkFNReKAnCDQstC10YfQtSDQtSDQt9Cw0LTQsNC00LXQvdCwIgogCi0jOiBzZXF1ZW5jZXIuYzo3NDcKKyM6IHNlcXVlbmNlci5jOjgwOQogbXNnaWQgIidHSVRfQVVUSE9SX0VNQUlMJyBhbHJlYWR5IGdpdmVuIgogbXNnc3RyICLQvdCw0YHRgtGA0L7QudC60LDRgtCwINC30LAg0LUt0L/QvtGJ0LAg4oCeR0lUX0FVVEhPUl9FTUFJTOKAnCDQstC10YfQtSDQtSDQt9Cw0LTQsNC00LXQvdCwIgogCi0jOiBzZXF1ZW5jZXIuYzo3NTIKKyM6IHNlcXVlbmNlci5jOjgxNAogbXNnaWQgIidHSVRfQVVUSE9SX0RBVEUnIGFscmVhZHkgZ2l2ZW4iCiBtc2dzdHIgItC90LDRgdGC0YDQvtC50LrQsNGC0LAg0LfQsCDQtNCw0YLQsCDigJ5HSVRfQVVUSE9SX0RBVEXigJwg0LLQtdGH0LUg0LUg0LfQsNC00LDQtNC10L3QsCIKIAotIzogc2VxdWVuY2VyLmM6NzU2CisjOiBzZXF1ZW5jZXIuYzo4MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biB2YXJpYWJsZSAnJXMnIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGC0LAg0L/RgNC+0LzQtdC90LvQuNCy0LAg4oCeJXPigJwiCiAKLSM6IHNlcXVlbmNlci5jOjc2MQorIzogc2VxdWVuY2VyLmM6ODIzCiBtc2dpZCAibWlzc2luZyAnR0lUX0FVVEhPUl9OQU1FJyIKIG1zZ3N0ciAi0L3QsNGB0YLRgNC+0LnQutCw0YLQsCDQt9CwINCw0LLRgtC+0YAg4oCeR0lUX0FVVEhPUl9OQU1F4oCcINC70LjQv9GB0LLQsCIKIAotIzogc2VxdWVuY2VyLmM6NzYzCisjOiBzZXF1ZW5jZXIuYzo4MjUKIG1zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX0VNQUlMJyIKIG1zZ3N0ciAi0L3QsNGB0YLRgNC+0LnQutCw0YLQsCDQt9CwINC1LdC/0L7RidCwIOKAnkdJVF9BVVRIT1JfRU1BSUzigJwg0LvQuNC/0YHQstCwIgogCi0jOiBzZXF1ZW5jZXIuYzo3NjUKKyM6IHNlcXVlbmNlci5jOjgyNwogbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfREFURSciCiBtc2dzdHIgItC90LDRgdGC0YDQvtC50LrQsNGC0LAg0LfQsCDQtNCw0YLQsCDigJ5HSVRfQVVUSE9SX0RBVEXigJwg0LvQuNC/0YHQstCwIgogCi0jOiBzZXF1ZW5jZXIuYzo4MjUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBkYXRlIGZvcm1hdCAnJXMnIGluICclcyciCi1tc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INGE0L7RgNC80LDRgiDQvdCwINC00LDRgtCwIOKAniVz4oCcINCyIOKAniVz4oCcIgotCi0jOiBzZXF1ZW5jZXIuYzo4NDIKKyM6IHNlcXVlbmNlci5jOjg3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAieW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWVcbiIKQEAgLTQ5MzksMTcgKzY5NjIsMTMgQEAKICJcbiIKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IHNlcXVlbmNlci5jOjkzNQotbXNnaWQgIndyaXRpbmcgcm9vdCBjb21taXQiCi1tc2dzdHIgItC30LDQv9Cw0LfQstCw0L3QtSDQvdCwINC90LDRh9Cw0LvQvdC+INC/0L7QtNCw0LLQsNC90LUiCi0KLSM6IHNlcXVlbmNlci5jOjExNDIKKyM6IHNlcXVlbmNlci5jOjExNDgKIG1zZ2lkICIncHJlcGFyZS1jb21taXQtbXNnJyBob29rIGZhaWxlZCIKIG1zZ3N0ciAiIgogItC90LXRg9GB0L/QtdGI0L3QviDQuNC30L/RitC70L3QtdC90LjQtSDQvdCwINC60YPQutCw0YLQsCDQv9GA0Lgg0L/RgNC+0LzRj9C90LAg0L3QsCDRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC/0YDQuCDQv9C+0LTQsNCy0LDQvdC1ICIKICIocHJlcGFyZS1jb21taXQtbXNnKSIKIAotIzogc2VxdWVuY2VyLmM6MTE0OQorIzogc2VxdWVuY2VyLmM6MTE1NAogbXNnaWQgIiIKICJZb3VyIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgd2VyZSBjb25maWd1cmVkIGF1dG9tYXRpY2FsbHkgYmFzZWRcbiIKICJvbiB5b3VyIHVzZXJuYW1lIGFuZCBob3N0bmFtZS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhleSBhcmUgYWNjdXJhdGUuXG4iCkBAIC00OTc4LDcgKzY5OTcsNyBAQAogIlxuIgogIiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKIAotIzogc2VxdWVuY2VyLmM6MTE2MgorIzogc2VxdWVuY2VyLmM6MTE2NwogbXNnaWQgIiIKICJZb3VyIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgd2VyZSBjb25maWd1cmVkIGF1dG9tYXRpY2FsbHkgYmFzZWRcbiIKICJvbiB5b3VyIHVzZXJuYW1lIGFuZCBob3N0bmFtZS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhleSBhcmUgYWNjdXJhdGUuXG4iCkBAIC01MDA0LDMxMSArNzAyMywzNjEgQEAKICJcbiIKICIgICAgZ2l0IGNvbW1pdCAtLWFtZW5kIC0tcmVzZXQtYXV0aG9yXG4iCiAKLSM6IHNlcXVlbmNlci5jOjEyMDIKKyM6IHNlcXVlbmNlci5jOjEyMDkKIG1zZ2lkICJjb3VsZG4ndCBsb29rIHVwIG5ld2x5IGNyZWF0ZWQgY29tbWl0IgogbXNnc3RyICLRgtC+0LrRgyDRidC+INGB0YrQt9C00LDQtNC10L3QvtGC0L4g0L/QvtC00LDQstCw0L3QtSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGC0L4iCiAKLSM6IHNlcXVlbmNlci5jOjEyMDQKKyM6IHNlcXVlbmNlci5jOjEyMTEKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgbmV3bHkgY3JlYXRlZCBjb21taXQiCiBtc2dzdHIgItGC0L7QutGDINGJ0L4g0YHRitC30LTQsNC00LXQvdC+0YLQviDQv9C+0LTQsNCy0LDQvdC1INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQsNC90LDQu9C40LfQuNGA0LDQvdC+IgogCi0jOiBzZXF1ZW5jZXIuYzoxMjUwCisjOiBzZXF1ZW5jZXIuYzoxMjU3CiBtc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgSEVBRCBhZnRlciBjcmVhdGluZyBjb21taXQiCiBtc2dzdHIgIiIKICLRgdGK0YHRgtC+0Y/QvdC40LXRgtC+INGB0L7Rh9C10L3QviDQvtGCINGD0LrQsNC30LDRgtC10LvRjyDigJ5IRUFE4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LrRgNC40YLQviDRgdC70LXQtCAiCiAi0L/QvtC00LDQstCw0L3QtdGC0L4iCiAKLSM6IHNlcXVlbmNlci5jOjEyNTIKKyM6IHNlcXVlbmNlci5jOjEyNTkKIG1zZ2lkICJkZXRhY2hlZCBIRUFEIgogbXNnc3RyICLQvdC10YHQstGK0YDQt9Cw0L0g0LLRgNGK0YUg4oCeSEVBROKAnCIKIAotIzogc2VxdWVuY2VyLmM6MTI1NgorIzogc2VxdWVuY2VyLmM6MTI2MwogbXNnaWQgIiAocm9vdC1jb21taXQpIgogbXNnc3RyICIgKNC90LDRh9Cw0LvQvdC+INC/0L7QtNCw0LLQsNC90LUpIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjc3CisjOiBzZXF1ZW5jZXIuYzoxMjg0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIEhFQUQiCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INCw0L3QsNC70LjQt9C40YDQsNC9IgogCi0jOiBzZXF1ZW5jZXIuYzoxMjc5CisjOiBzZXF1ZW5jZXIuYzoxMjg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkhFQUQgJXMgaXMgbm90IGEgY29tbWl0ISIKIG1zZ3N0ciAi0YPQutCw0LfQsNGC0LXQu9GP0YIg4oCeSEVBROKAnCDigJ4lc+KAnCDRgdC+0YfQuCDQutGK0Lwg0L3QtdGJ0L4sINC60L7QtdGC0L4g0L3QtSDQtSDQv9C+0LTQsNCy0LDQvdC1ISIKIAotIzogc2VxdWVuY2VyLmM6MTI4MyBidWlsdGluL2NvbW1pdC5jOjE1NDMKKyM6IHNlcXVlbmNlci5jOjEyOTAgc2VxdWVuY2VyLmM6MTM2NCBidWlsdGluL2NvbW1pdC5jOjE1NzQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgSEVBRCBjb21taXQiCiBtc2dzdHIgItCy0YrRgNGF0L7QstC+0YLQviDQv9C+0LTQsNCy0LDQvdC1IOKAnkhFQUTigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L3QviIKIAotIzogc2VxdWVuY2VyLmM6MTMzNCBzZXF1ZW5jZXIuYzoxOTM0CisjOiBzZXF1ZW5jZXIuYzoxMzQyIHNlcXVlbmNlci5jOjE5NjgKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0IGF1dGhvciIKIG1zZ3N0ciAi0LDQstGC0L7RgNGK0YIg0L3QsCDQv9C+0LTQsNCy0LDQvdC10YLQviDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LDQvdCw0LvQuNC30LjRgNCw0L0iCiAKLSM6IHNlcXVlbmNlci5jOjEzNDQgYnVpbHRpbi9hbS5jOjE1ODUgYnVpbHRpbi9tZXJnZS5jOjY3NworIzogc2VxdWVuY2VyLmM6MTM1MyBidWlsdGluL2FtLmM6MTU2NiBidWlsdGluL21lcmdlLmM6Njg3CiBtc2dpZCAiZ2l0IHdyaXRlLXRyZWUgZmFpbGVkIHRvIHdyaXRlIGEgdHJlZSIKIG1zZ3N0ciAi0JrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCB3cml0ZS10cmVl4oCcINC90LUg0YPRgdC/0Y8g0LTQsCDQt9Cw0L/QuNGI0LUg0L7QsdC10LrRgi3QtNGK0YDQstC+IgogCi0jOiBzZXF1ZW5jZXIuYzoxMzYxIHNlcXVlbmNlci5jOjE0MTYKKyM6IHNlcXVlbmNlci5jOjEzODYgc2VxdWVuY2VyLmM6MTQ0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBjb21taXQgbWVzc2FnZSBmcm9tICclcyciCiBtc2dzdHIgItGB0YrQvtCx0YnQtdC90LjQtdGC0L4g0LfQsCDQv9C+0LTQsNCy0LDQvdC1INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0L7Rh9C10YLQtdC90L4g0L7RgiDigJ4lc+KAnCIKIAotIzogc2VxdWVuY2VyLmM6MTM4MyBidWlsdGluL2FtLmM6MTYwNiBidWlsdGluL2NvbW1pdC5jOjE2NDYgYnVpbHRpbi9tZXJnZS5jOjg1OAotIzogYnVpbHRpbi9tZXJnZS5jOjg4MworIzogc2VxdWVuY2VyLmM6MTQxMyBidWlsdGluL2FtLmM6MTU4OCBidWlsdGluL2NvbW1pdC5jOjE2NzMgYnVpbHRpbi9tZXJnZS5jOjg4NgorIzogYnVpbHRpbi9tZXJnZS5jOjkxMQogbXNnaWQgImZhaWxlZCB0byB3cml0ZSBjb21taXQgb2JqZWN0IgogbXNnc3RyICLQvtCx0LXQutGC0YrRgiDQt9CwINC/0L7QtNCw0LLQsNC90LXRgtC+INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0L/QuNGB0LDQvSIKIAotIzogc2VxdWVuY2VyLmM6MTQ0MworIzogc2VxdWVuY2VyLmM6MTQ3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0ICVzIgogbXNnc3RyICLQv9C+0LTQsNCy0LDQvdC10YLQviDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LDQvdCw0LvQuNC30LjRgNCw0L3QviIKIAotIzogc2VxdWVuY2VyLmM6MTQ0OAorIzogc2VxdWVuY2VyLmM6MTQ3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgcGFyZW50IGNvbW1pdCAlcyIKIG1zZ3N0ciAi0YDQvtC00LjRgtC10LvRgdC60L7RgtC+INC/0L7QtNCw0LLQsNC90LUg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INCw0L3QsNC70LjQt9C40YDQsNC90L4iCiAKLSM6IHNlcXVlbmNlci5jOjE1NDYgc2VxdWVuY2VyLmM6MTY1NAorIzogc2VxdWVuY2VyLmM6MTU2MiBzZXF1ZW5jZXIuYzoxNjczCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gY29tbWFuZDogJWQiCiBtc2dzdHIgItC90LXQv9C+0LfQvdCw0YLQsCDQutC+0LzQsNC90LTQsDogJWQiCiAKLSM6IHNlcXVlbmNlci5jOjE2MDEgc2VxdWVuY2VyLmM6MTYyNgorIzogc2VxdWVuY2VyLmM6MTYyMCBzZXF1ZW5jZXIuYzoxNjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAlZCBjb21taXRzLiIKIG1zZ3N0ciAi0KLQvtCy0LAg0LUg0L7QsdC10LTQuNC90LXQvdC40LUg0L7RgiAlZCDQv9C+0LTQsNCy0LDQvdC40Y8iCiAKLSM6IHNlcXVlbmNlci5jOjE2MTEgc2VxdWVuY2VyLmM6NDc0NAorIzogc2VxdWVuY2VyLmM6MTYzMAogbXNnaWQgIm5lZWQgYSBIRUFEIHRvIGZpeHVwIgogbXNnc3RyICLQl9CwINCy0LrQsNGA0LLQsNC90LUg0LIg0L/RgNC10LTRhdC+0LTQvdC+0YLQviDQv9C+0LTQsNCy0LDQvdC1INCy0Lgg0YLRgNGP0LHQstCwINGD0LrQsNC30LDRgtC10Lsg4oCeSEVBROKAnCIKIAotIzogc2VxdWVuY2VyLmM6MTYxMyBzZXF1ZW5jZXIuYzoyOTEyCisjOiBzZXF1ZW5jZXIuYzoxNjMyIHNlcXVlbmNlci5jOjMyMTIKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBIRUFEIgogbXNnc3RyICLRg9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQvtGH0LXRgtC1IgogCi0jOiBzZXF1ZW5jZXIuYzoxNjE1CisjOiBzZXF1ZW5jZXIuYzoxNjM0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgSEVBRCdzIGNvbW1pdCBtZXNzYWdlIgogbXNnc3RyICIiCiAi0YHRitC+0LHRidC10L3QuNC10YLQviDQt9CwINC/0L7QtNCw0LLQsNC90LUg0LrRitC8INGD0LrQsNC30LDRgtC10LvRjyDigJ5IRUFE4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0L7Rh9C10YLQtdC90L46ICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjIxCisjOiBzZXF1ZW5jZXIuYzoxNjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCB3cml0ZSAnJXMnIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQt9Cw0L/QsNC30LgiCiAKLSM6IHNlcXVlbmNlci5jOjE2MjggZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ0MQorIzogc2VxdWVuY2VyLmM6MTY0NyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDk2CiBtc2dpZCAiVGhpcyBpcyB0aGUgMXN0IGNvbW1pdCBtZXNzYWdlOiIKIG1zZ3N0ciAi0KLQvtCy0LAg0LUgMS3RgtC+INGB0YrQvtCx0YnQtdC90LjQtSDQv9GA0Lgg0L/QvtC00LDQstCw0L3QtToiCiAKLSM6IHNlcXVlbmNlci5jOjE2MzYKKyM6IHNlcXVlbmNlci5jOjE2NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgY29tbWl0IG1lc3NhZ2Ugb2YgJXMiCiBtc2dzdHIgItGB0YrQvtCx0YnQtdC90LjQtdGC0L4g0LfQsCDQv9C+0LTQsNCy0LDQvdC1INC60YrQvCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvdC+IgogCi0jOiBzZXF1ZW5jZXIuYzoxNjQzCisjOiBzZXF1ZW5jZXIuYzoxNjYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgdGhlIGNvbW1pdCBtZXNzYWdlICMlZDoiCiBtc2dzdHIgItCi0L7QstCwINC1INGB0YrQvtCx0YnQtdC90LjQtSDQv9GA0Lgg0L/QvtC00LDQstCw0L3QtSDihJYlZDoiCiAKLSM6IHNlcXVlbmNlci5jOjE2NDkKKyM6IHNlcXVlbmNlci5jOjE2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIGNvbW1pdCBtZXNzYWdlICMlZCB3aWxsIGJlIHNraXBwZWQ6IgogbXNnc3RyICLQodGK0L7QsdGJ0LXQvdC40LUg0L/RgNC4INC/0L7QtNCw0LLQsNC90LUg4oSWJWQg0YnQtSDQsdGK0LTQtSDQv9GA0LXRgdC60L7Rh9C10L3QvjoiCiAKLSM6IHNlcXVlbmNlci5jOjE3MzIKKyM6IHNlcXVlbmNlci5jOjE3NTYKIG1zZ2lkICJ5b3VyIGluZGV4IGZpbGUgaXMgdW5tZXJnZWQuIgogbXNnc3RyICLQuNC90LTQtdC60YHRitGCINC90LUg0LUg0YHQu9GP0YIuIgogCi0jOiBzZXF1ZW5jZXIuYzoxNzM5CisjOiBzZXF1ZW5jZXIuYzoxNzYzCiBtc2dpZCAiY2Fubm90IGZpeHVwIHJvb3QgY29tbWl0IgogbXNnc3RyICLQvdCw0YfQsNC70L3QvtGC0L4g0L/QvtC00LDQstCw0L3QtSDQvdC1INC80L7QttC1INC00LAg0YHQtSDQstC60LDRgNCwINCyINC/0YDQtdC00YXQvtC00L3QvtGC0L4g0LzRgyIKIAotIzogc2VxdWVuY2VyLmM6MTc1OAorIzogc2VxdWVuY2VyLmM6MTc4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJXMgaXMgYSBtZXJnZSBidXQgbm8gLW0gb3B0aW9uIHdhcyBnaXZlbi4iCiBtc2dzdHIgItC/0L7QtNCw0LLQsNC90LXRgtC+IOKAniVz4oCcINC1INGB0LvQuNCy0LDQvdC1LCDQvdC+INC90LUg0LUg0LTQsNC00LXQvdCwINC+0L/RhtC40Y/RgtCwIOKAni1t4oCcIgogCi0jOiBzZXF1ZW5jZXIuYzoxNzY2CisjOiBzZXF1ZW5jZXIuYzoxNzkwIHNlcXVlbmNlci5jOjE3OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICVzIGRvZXMgbm90IGhhdmUgcGFyZW50ICVkIgogbXNnc3RyICLQv9C+0LTQsNCy0LDQvdC10YLQviDigJ4lc+KAnCDQvdGP0LzQsCDRgNC+0LTQuNGC0LXQuyAlZCIKIAotIzogc2VxdWVuY2VyLmM6MTc3MAotIywgYy1mb3JtYXQKLW1zZ2lkICJtYWlubGluZSB3YXMgc3BlY2lmaWVkIGJ1dCBjb21taXQgJXMgaXMgbm90IGEgbWVyZ2UuIgotbXNnc3RyICLRg9C60LDQt9Cw0L3QviDQtSDQsdCw0LfQvtCy0L4g0L/QvtC00LDQstCw0L3QtSwg0L3QviDQv9C+0LTQsNCy0LDQvdC10YLQviDigJ4lc+KAnCDQvdC1INC1INGB0LvQuNCy0LDQvdC1LiIKLQotIzogc2VxdWVuY2VyLmM6MTc3NgorIzogc2VxdWVuY2VyLmM6MTgwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZ2V0IGNvbW1pdCBtZXNzYWdlIGZvciAlcyIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfQstC70LjRh9Cw0L3QtSDQvdCwINGB0YrQvtCx0YnQtdC90LjQtdGC0L4g0LfQsCDQv9C+0LTQsNCy0LDQvdC1INC90LAg4oCeJXPigJwiCiAKICMuIFRSQU5TTEFUT1JTOiBUaGUgZmlyc3QgJXMgd2lsbCBiZSBhICJ0b2RvIiBjb21tYW5kIGxpa2UKICMuICJyZXZlcnQiIG9yICJwaWNrIiwgdGhlIHNlY29uZCAlcyBhIFNIQTEuCi0jOiBzZXF1ZW5jZXIuYzoxNzk1CisjOiBzZXF1ZW5jZXIuYzoxODIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjYW5ub3QgcGFyc2UgcGFyZW50IGNvbW1pdCAlcyIKIG1zZ3N0ciAiJXM6INC90LXRgNCw0LfQv9C+0LfQvdCw0YLQsCDRgdGC0L7QudC90L7RgdGCINC30LAg0YDQvtC00LjRgtC10LvRgdC60L7RgtC+INC/0L7QtNCw0LLQsNC90LUg4oCeJXPigJwiCiAKLSM6IHNlcXVlbmNlci5jOjE4NjAKKyM6IHNlcXVlbmNlci5jOjE4ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlbmFtZSAnJXMnIHRvICclcyciCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQtdC40LzQtdC90YPQstCwINC90LAg4oCeJXPigJwiCiAKLSM6IHNlcXVlbmNlci5jOjE5MTUKKyM6IHNlcXVlbmNlci5jOjE5NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJldmVydCAlcy4uLiAlcyIKIG1zZ3N0ciAi0L/QvtC00LDQstCw0L3QtdGC0L4g4oCeJXPigJzigKYg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQvNC10L3QtdC90L46IOKAniVz4oCcIgogCi0jOiBzZXF1ZW5jZXIuYzoxOTE2CisjOiBzZXF1ZW5jZXIuYzoxOTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBhcHBseSAlcy4uLiAlcyIKIG1zZ3N0ciAi0L/QvtC00LDQstCw0L3QtdGC0L4g4oCeJXPigJzigKYg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQuNC70L7QttC10L3Qvjog4oCeJXPigJwiCiAKLSM6IHNlcXVlbmNlci5jOjE5NzQKKyM6IHNlcXVlbmNlci5jOjE5NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHJvcHBpbmcgJXMgJXMgLS0gcGF0Y2ggY29udGVudHMgYWxyZWFkeSB1cHN0cmVhbVxuIgorbXNnc3RyICLQv9GA0LXRgdC60LDRh9Cw0L3QtSDQvdCwICVzICVzIOKAlCDQutGA0YrQv9C60LDRgtCwINCy0LXRh9C1INC1INC/0YDQuNC70L7QttC10L3QsFxuIgorCisjOiBzZXF1ZW5jZXIuYzoyMDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCAlczogZmFpbGVkIHRvIHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICJnaXQgJXM6INC90LXRg9GB0L/QtdGI0L3QviDQuNC30YfQuNGC0LDQvdC1INC90LAg0LjQvdC00LXQutGB0LAiCiAKLSM6IHNlcXVlbmNlci5jOjE5ODEKKyM6IHNlcXVlbmNlci5jOjIwMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0ICVzOiBmYWlsZWQgdG8gcmVmcmVzaCB0aGUgaW5kZXgiCiBtc2dzdHIgImdpdCAlczog0L3QtdGD0YHQv9C10YjQvdC+INC+0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LjQvdC00LXQutGB0LAiCiAKLSM6IHNlcXVlbmNlci5jOjIwNjIKKyM6IHNlcXVlbmNlci5jOjIxMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lcyBub3QgYWNjZXB0IGFyZ3VtZW50czogJyVzJyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQv9GA0LjQtdC80LAg0LDRgNCz0YPQvNC10L3RgtC4OiDigJ4lc+KAnCIKIAotIzogc2VxdWVuY2VyLmM6MjA3MQorIzogc2VxdWVuY2VyLmM6MjExMQogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIGFyZ3VtZW50cyBmb3IgJXMiCiBtc2dzdHIgIuKAniVz4oCcINC40LfQuNGB0LrQstCwINCw0YDQs9GD0LzQtdC90YLQuCIKIAotIzogc2VxdWVuY2VyLmM6MjEzMAorIzogc2VxdWVuY2VyLmM6MjE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LDQvdCw0LvQuNC30LjRgNCwIgorCisjOiBzZXF1ZW5jZXIuYzoyMjAzCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbGluZSAlZDogJS4qcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0YDQtdC0ICVkOiAlLipzIgogCi0jOiBzZXF1ZW5jZXIuYzoyMTM4CisjOiBzZXF1ZW5jZXIuYzoyMjE0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAnJXMnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgItCR0LXQtyDQv9GA0LXQtNC40YjQvdC+INC/0L7QtNCw0LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9C/0YrQu9C90Lgg4oCeJXPigJwiCiAKLSM6IHNlcXVlbmNlci5jOjIyMDkKKyM6IHNlcXVlbmNlci5jOjIyOTgKK21zZ2lkICJjYW5jZWxsaW5nIGEgY2hlcnJ5IHBpY2tpbmcgaW4gcHJvZ3Jlc3MiCittc2dzdHIgItC/0YDQtdGD0YHRgtCw0L3QvtCy0Y/QstCw0L3QtSDQvdCwINC40LfQstGK0YDRiNCy0LDQvdC+0YLQviDQsiDQvNC+0LzQtdC90YLQsCDQvtGC0LHQuNGA0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QuNGPIgorCisjOiBzZXF1ZW5jZXIuYzoyMzA1Cittc2dpZCAiY2FuY2VsbGluZyBhIHJldmVydCBpbiBwcm9ncmVzcyIKK21zZ3N0ciAi0L/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LjQt9Cy0YrRgNGI0LLQsNC90L7RgtC+INCyINC80L7QvNC10L3RgtCwINC+0YLQvNGP0L3QsCDQvdCwINC/0L7QtNCw0LLQsNC90LUiCisKKyM6IHNlcXVlbmNlci5jOjIzNDkKIG1zZ2lkICJwbGVhc2UgZml4IHRoaXMgdXNpbmcgJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nLiIKIG1zZ3N0ciAi0LrQvtGA0LjQs9C40YDQsNC50YLQtSDRgtC+0LLQsCDRh9GA0LXQtyDigJ5naXQgcmViYXNlIC0tZWRpdC10b2Rv4oCcLiIKIAotIzogc2VxdWVuY2VyLmM6MjIxMQorIzogc2VxdWVuY2VyLmM6MjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnVzYWJsZSBpbnN0cnVjdGlvbiBzaGVldDogJyVzJyIKIG1zZ3N0ciAi0L3QtdC40LfQv9C+0LvQt9Cy0LDQtdC8INGE0LDQudC7INGBINC+0L/QuNGB0LDQvdC40LUg0L3QsCDQv9GA0LXQtNGB0YLQvtGP0YnQuNGC0LUg0LTQtdC50YHRgtCy0LjRjzog4oCeJXPigJwiCiAKLSM6IHNlcXVlbmNlci5jOjIyMTYKKyM6IHNlcXVlbmNlci5jOjIzNTYKIG1zZ2lkICJubyBjb21taXRzIHBhcnNlZC4iCiBtc2dzdHIgItC90LjQutC+0LUg0L7RgiDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INGA0LDQt9C/0L7Qt9C90LDQtS4iCiAKLSM6IHNlcXVlbmNlci5jOjIyMjcKKyM6IHNlcXVlbmNlci5jOjIzNjcKIG1zZ2lkICJjYW5ub3QgY2hlcnJ5LXBpY2sgZHVyaW5nIGEgcmV2ZXJ0LiIKIG1zZ3N0ciAiIgogItC/0L4g0LLRgNC10LzQtSDQvdCwINC+0YLQvNGP0L3QsCDQvdCwINC/0L7QtNCw0LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9Cy0YrRgNGI0Lgg0L7RgtCx0LjRgNCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LUuIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjI5CisjOiBzZXF1ZW5jZXIuYzoyMzY5CiBtc2dpZCAiY2Fubm90IHJldmVydCBkdXJpbmcgYSBjaGVycnktcGljay4iCiBtc2dzdHIgItC/0L4g0LLRgNC10LzQtSDQvdCwINC+0YLQsdC40YDQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9Cy0YrRgNGI0Lgg0L7RgtC80Y/QvdCwINC90LAg0L/QvtC00LDQstCw0L3QtS4iCiAKLSM6IHNlcXVlbmNlci5jOjIyOTkKKyM6IHNlcXVlbmNlci5jOjI0NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QsCDRgdGC0L7QudC90L7RgdGCINC30LAg4oCeJXPigJw6IOKAniVz4oCcIgogCi0jOiBzZXF1ZW5jZXIuYzoyMzgwCisjOiBzZXF1ZW5jZXIuYzoyNTQwCiBtc2dpZCAidW51c2FibGUgc3F1YXNoLW9udG8iCiBtc2dzdHIgItC/0L7QtNCw0LLQsNC90LXRgtC+LCDQsiDQutC+0LXRgtC+INC00YDRg9Cz0LjRgtC1INC00LAg0YHQtSDQstC60LDRgNCw0YIsINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC40LfQv9C+0LvQt9Cy0LAiCiAKLSM6IHNlcXVlbmNlci5jOjIzOTYKKyM6IHNlcXVlbmNlci5jOjI1NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG9wdGlvbnMgc2hlZXQ6ICclcyciCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INGE0LDQudC7INGBINC+0L/RhtC40Lg6IOKAniVz4oCcIgogCi0jOiBzZXF1ZW5jZXIuYzoyNDc5IHNlcXVlbmNlci5jOjQwMDUKKyM6IHNlcXVlbmNlci5jOjI2NDQgc2VxdWVuY2VyLmM6NDM2MQogbXNnaWQgImVtcHR5IGNvbW1pdCBzZXQgcGFzc2VkIgogbXNnc3RyICLQt9Cw0LTQsNC00LXQvdC+INC1INC/0YDQsNC30L3QviDQvNC90L7QttC10YHRgtCy0L4g0L7RgiDQv9C+0LTQsNCy0LDQvdC40Y8iCiAKLSM6IHNlcXVlbmNlci5jOjI0ODcKLW1zZ2lkICJhIGNoZXJyeS1waWNrIG9yIHJldmVydCBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgotbXNnc3RyICIiCi0i0LIg0LzQvtC80LXQvdGC0LAg0LLQtdGH0LUg0YHQtSDQuNC30LLRitGA0YjQstCwINC+0YLQsdC40YDQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y8g0LjQu9C4INC/0YDQtdCx0LDQt9C40YDQsNC90LUg0L3QsCDQutC70L7QvdCwIgorIzogc2VxdWVuY2VyLmM6MjY2MAorbXNnaWQgInJldmVydCBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgorbXNnc3RyICLQsiDQvNC+0LzQtdC90YLQsCDQstC10YfQtSDRgdC1INC40LfQstGK0YDRiNCy0LAg0L7RgtC80Y/QvdCwINC90LAg0L/QvtC00LDQstCw0L3QuNGPIgogCi0jOiBzZXF1ZW5jZXIuYzoyNDg4Ci1tc2dpZCAidHJ5IFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgLS1xdWl0IHwgLS1hYm9ydClcIiIKLW1zZ3N0ciAi0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAtLXF1aXQgfCAtLWFib3J0KeKAnCIKKyM6IHNlcXVlbmNlci5jOjI2NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5IFwiZ2l0IHJldmVydCAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKK21zZ3N0ciAi0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAlcy0tYWJvcnQgfCAtLXF1aXQp4oCcIgogCi0jOiBzZXF1ZW5jZXIuYzoyNDkxCisjOiBzZXF1ZW5jZXIuYzoyNjY1Cittc2dpZCAiY2hlcnJ5LXBpY2sgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIKK21zZ3N0ciAi0LIg0LzQvtC80LXQvdGC0LAg0LLQtdGH0LUg0YHQtSDQuNC30LLRitGA0YjQstCwINC+0YLQsdC40YDQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y8iCisKKyM6IHNlcXVlbmNlci5jOjI2NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5IFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIgorbXNnc3RyICLQuNC30L/QvtC70LfQstCw0LnRgtC1IOKAnmdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdCnigJwiCisKKyM6IHNlcXVlbmNlci5jOjI2ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBzZXF1ZW5jZXIgZGlyZWN0b3J5ICclcyciCi1tc2dzdHIgItC00LjRgNC10LrRgtC+0YDQuNGP0YLQsCDQt9CwINGB0LXQutCy0LXQvdGB0L7RgNCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDRgdGK0LfQtNCw0LTQtdC90LAiCittc2dzdHIgIiIKKyLQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg0LfQsCDQvtC/0YDQtdC00LXQu9GP0L3QtdGC0L4g0L3QsCDQv9C+0YHQu9C10LTQvtCy0LDRgtC10LvQvdC+0YHRgtGC0LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1ICIKKyLRgdGK0LfQtNCw0LTQtdC90LAiCiAKLSM6IHNlcXVlbmNlci5jOjI1MDUKKyM6IHNlcXVlbmNlci5jOjI2OTYKIG1zZ2lkICJjb3VsZCBub3QgbG9jayBIRUFEIgogbXNnc3RyICLRg9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC30LDQutC70Y7Rh9C4IgogCi0jOiBzZXF1ZW5jZXIuYzoyNTYwIHNlcXVlbmNlci5jOjM3NjEKKyM6IHNlcXVlbmNlci5jOjI3NTYgc2VxdWVuY2VyLmM6NDA5OQogbXNnaWQgIm5vIGNoZXJyeS1waWNrIG9yIHJldmVydCBpbiBwcm9ncmVzcyIKIG1zZ3N0ciAiIgogItCyINC80L7QvNC10L3RgtCwINC90LUg0YHQtSDQuNC30LLRitGA0YjQstCwINC+0YLQsdC40YDQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y8g0LjQu9C4INC/0YDQtdCx0LDQt9C40YDQsNC90LUg0L3QsCDQutC70L7QvdCwIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTYyCisjOiBzZXF1ZW5jZXIuYzoyNzU4IHNlcXVlbmNlci5jOjI3NjkKIG1zZ2lkICJjYW5ub3QgcmVzb2x2ZSBIRUFEIgogbXNnc3RyICLQn9C+0LTQsNCy0LDQvdC10YLQviDRgdC+0YfQtdC90L4g0L7RgiDRg9C60LDQt9Cw0YLQtdC70Y8g4oCeSEVBROKAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGC0L4iCiAKLSM6IHNlcXVlbmNlci5jOjI1NjQgc2VxdWVuY2VyLmM6MjU5OQorIzogc2VxdWVuY2VyLmM6Mjc2MCBzZXF1ZW5jZXIuYzoyODA0CiBtc2dpZCAiY2Fubm90IGFib3J0IGZyb20gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iCiBtc2dzdHIgIiIKICLQtNC10LnRgdGC0LLQuNC10YLQviDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC10YPRgdGC0LDQvdC+0LLQtdC90L4sINC60L7Qs9Cw0YLQviDRgdGC0LUg0L3QsCDQutC70L7QvSwg0LrQvtC50YLQviDRgtC10L/RitGA0LLQsCAiCiAi0L/RgNC10LTRgdGC0L7QuCDQtNCwINCx0YrQtNC1INGB0YrQt9C00LDQtNC10L0iCiAKLSM6IHNlcXVlbmNlci5jOjI1ODUgYnVpbHRpbi9ncmVwLmM6NzIxCisjOiBzZXF1ZW5jZXIuYzoyNzkwIGJ1aWx0aW4vZ3JlcC5jOjcyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgb3BlbiAnJXMnIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtCy0L7RgNC10L0iCiAKLSM6IHNlcXVlbmNlci5jOjI1ODcKKyM6IHNlcXVlbmNlci5jOjI3OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJyVzJzogJXMiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0L7Rh9C10YLQtdC9OiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MjU4OAorIzogc2VxdWVuY2VyLmM6Mjc5MwogbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUiCiBtc2dzdHIgItC90LXQvtGH0LDQutCy0LDQvSDQutGA0LDQuSDQvdCwINGE0LDQudC7IgogCi0jOiBzZXF1ZW5jZXIuYzoyNTk0CisjOiBzZXF1ZW5jZXIuYzoyNzk5CiAjLCBjLWZvcm1hdAogbXNnaWQgInN0b3JlZCBwcmUtY2hlcnJ5LXBpY2sgSEVBRCBmaWxlICclcycgaXMgY29ycnVwdCIKIG1zZ3N0ciAiIgogItC30LDQv9Cw0LfQtdC90LjRj9GCINC/0YDQtdC00Lgg0LfQsNC/0L7Rh9Cy0LDQvdC10YLQviDQvdCwINC+0YLQsdC40YDQsNC90LXRgtC+INGE0LDQudC7INC30LAg0YPQutCw0LfQsNGC0LXQu9GPIOKAnkhFQUTigJwg4oCUIOKAniVz4oCcINC1ICIKICLQv9C+0LLRgNC10LTQtdC9IgogCi0jOiBzZXF1ZW5jZXIuYzoyNjA1CisjOiBzZXF1ZW5jZXIuYzoyODEwCiBtc2dpZCAiWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFELiBOb3QgcmV3aW5kaW5nLCBjaGVjayB5b3VyIEhFQUQhIgogbXNnc3RyICIiCiAi0JjQt9Cz0LvQtdC20LTQsCDRg9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINC1INC/0YDQvtC80LXQvdC10L0uICDQn9GA0L7QstC10YDQtdGC0LUg0LrRitC8INC60LDQutCy0L4g0YHQvtGH0LguXG4iCiAi0J3QtSDRgdC1INC/0YDQsNCy0Y/RgiDQv9GA0L7QvNC10L3QuC4iCiAKLSM6IHNlcXVlbmNlci5jOjI3MDkgc2VxdWVuY2VyLmM6MzY3OQorIzogc2VxdWVuY2VyLmM6Mjg1MQorbXNnaWQgIm5vIHJldmVydCBpbiBwcm9ncmVzcyIKK21zZ3N0ciAi0LIg0LzQvtC80LXQvdGC0LAg0L3QtSDRgtC10YfQtSDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1IgorCisjOiBzZXF1ZW5jZXIuYzoyODU5Cittc2dpZCAibm8gY2hlcnJ5LXBpY2sgaW4gcHJvZ3Jlc3MiCittc2dzdHIgItCyINC80L7QvNC10L3RgtCwINC90LUg0YHQtSDQuNC30LLRitGA0YjQstCwINC+0YLQsdC40YDQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y8iCisKKyM6IHNlcXVlbmNlci5jOjI4NjkKK21zZ2lkICJmYWlsZWQgdG8gc2tpcCB0aGUgY29tbWl0IgorbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0L/RgNC10YHQutCw0YfQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC10YLQviIKKworIzogc2VxdWVuY2VyLmM6Mjg3NgorbXNnaWQgInRoZXJlIGlzIG5vdGhpbmcgdG8gc2tpcCIKK21zZ3N0ciAi0L3Rj9C80LAg0LrQsNC60LLQviDQtNCwINGB0LUg0L/RgNC10YHQutC+0YfQuCIKKworIzogc2VxdWVuY2VyLmM6Mjg3OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaGF2ZSB5b3UgY29tbWl0dGVkIGFscmVhZHk/XG4iCisidHJ5IFwiZ2l0ICVzIC0tY29udGludWVcIiIKK21zZ3N0ciAiIgorItC/0L7QtNCw0LvQuCDQu9C4INGB0YLQtSDQstC10YfQtT8gINCf0YDQvtCx0LLQsNC50YLQtSDRgTpcbiIKKyJcbiIKKyIgICAgZ2l0ICVzIC0tY29udGludWUiCisKKyM6IHNlcXVlbmNlci5jOjMwMDMgc2VxdWVuY2VyLmM6NDAxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgdXBkYXRlICVzIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtCx0L3QvtCy0LgiCiAKLSM6IHNlcXVlbmNlci5jOjI3NDcgc2VxdWVuY2VyLmM6MzY1OQorIzogc2VxdWVuY2VyLmM6MzA0MiBzZXF1ZW5jZXIuYzozOTkxCiBtc2dpZCAiY2Fubm90IHJlYWQgSEVBRCIKIG1zZ3N0ciAi0YPQutCw0LfQsNGC0LXQu9GP0YIg4oCeSEVBROKAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogc2VxdWVuY2VyLmM6Mjc2MgorIzogc2VxdWVuY2VyLmM6MzA1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY29weSAnJXMnIHRvICclcyciCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC60L7Qv9C40YDQsCDQutCw0YLQviDigJ4lc+KAnCIKIAotIzogc2VxdWVuY2VyLmM6Mjc3MAorIzogc2VxdWVuY2VyLmM6MzA2NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGNhbiBhbWVuZCB0aGUgY29tbWl0IG5vdywgd2l0aFxuIgpAQCAtNTMyNywyNyArNzM5NiwyMiBAQAogIlxuIgogIiAgICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKIAotIzogc2VxdWVuY2VyLmM6Mjc4MAorIzogc2VxdWVuY2VyLmM6MzA3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgYXBwbHkgJXMuLi4gJS4qcyIKIG1zZ3N0ciAi0J/QvtC00LDQstCw0L3QtdGC0L4g4oCeJXPigJzigKYg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQuNC70L7QttC10L3Qvjog4oCeJS4qc+KAnCIKIAotIzogc2VxdWVuY2VyLmM6Mjc4NworIzogc2VxdWVuY2VyLmM6MzA4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgbWVyZ2UgJS4qcyIKIG1zZ3N0ciAi0J3QtdCy0YrQt9C80L7QttC90L4g0YHQu9C40LLQsNC90LUg0L3QsCDigJ4lLipz4oCcIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzk4IHNlcXVlbmNlci5jOjI4MDIgYnVpbHRpbi9kaWZmdG9vbC5jOjY0MAorIzogc2VxdWVuY2VyLmM6MzA5OCBzZXF1ZW5jZXIuYzozMTAyIGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNvcHkgJyVzJyB0byAnJXMnIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQutC+0L/QuNGA0LAg0LrQsNGC0L4g4oCeJXPigJwiCiAKLSM6IHNlcXVlbmNlci5jOjI4MjQgc2VxdWVuY2VyLmM6MzI0MiBidWlsdGluL3JlYmFzZS5jOjU4MCBidWlsdGluL3JlYmFzZS5jOjEwMTkKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTM3MiBidWlsdGluL3JlYmFzZS5jOjE0MjYKLW1zZ2lkICJjb3VsZCBub3QgcmVhZCBpbmRleCIKLW1zZ3N0ciAi0LjQvdC00LXQutGB0YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKLQotIzogc2VxdWVuY2VyLmM6MjgyOQorIzogc2VxdWVuY2VyLmM6MzEyOQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhlY3V0aW9uIGZhaWxlZDogJXNcbiIKQEAgLTUzNjIsMTEgKzc0MjYsMTEgQEAKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAiXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI4MzUKKyM6IHNlcXVlbmNlci5jOjMxMzUKIG1zZ2lkICJhbmQgbWFkZSBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZVxuIgotbXNnc3RyICLQuCDQv9GA0L7QvNC10L3QuCDQuNC90LTQtdC60YHQsCDQuC/QuNC70Lgg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L5cbiIKK21zZ3N0ciAi0Lgg0L/RgNC+0LzQtdC90Z0g0LjQvdC00LXQutGB0LAg0Lgv0LjQu9C4INGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+XG4iCiAKLSM6IHNlcXVlbmNlci5jOjI4NDEKKyM6IHNlcXVlbmNlci5jOjMxNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4ZWN1dGlvbiBzdWNjZWVkZWQ6ICVzXG4iCkBAIC01MzgzLDc2ICs3NDQ3LDcyIEBACiAiICAgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogIlxuIgogCi0jOiBzZXF1ZW5jZXIuYzoyOTAyCisjOiBzZXF1ZW5jZXIuYzozMjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImlsbGVnYWwgbGFiZWwgbmFtZTogJyUuKnMnIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QviDQuNC80LUg0L3QsCDQtdGC0LjQutC10YI6IOKAniUuKnPigJwiCiAKLSM6IHNlcXVlbmNlci5jOjI5NTQKKyM6IHNlcXVlbmNlci5jOjMyNTYKIG1zZ2lkICJ3cml0aW5nIGZha2Ugcm9vdCBjb21taXQiCiBtc2dzdHIgItC30LDQv9Cw0LfQstCw0L3QtSDQvdCwINGE0LDQu9GI0LjQstC+INC90LDRh9Cw0LvQvdC+INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IHNlcXVlbmNlci5jOjI5NTkKKyM6IHNlcXVlbmNlci5jOjMyNjEKIG1zZ2lkICJ3cml0aW5nIHNxdWFzaC1vbnRvIgogbXNnc3RyICLQt9Cw0L/QsNC30LLQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC10YLQviwg0LIg0LrQvtC10YLQviDQtNGA0YPQs9C40YLQtSDQtNCwINGB0LUg0LLQutCw0YDQsNGCIgogCi0jOiBzZXF1ZW5jZXIuYzoyOTk3IGJ1aWx0aW4vcmViYXNlLmM6NTg1IGJ1aWx0aW4vcmViYXNlLmM6NTkxCisjOiBzZXF1ZW5jZXIuYzozMjk5IGJ1aWx0aW4vcmViYXNlLmM6ODgwIGJ1aWx0aW4vcmViYXNlLmM6ODg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBmaW5kIHRyZWUgb2YgJXMiCiBtc2dzdHIgItC00YrRgNCy0L7RgtC+LCDRgdC+0YfQtdC90L4g0L7RgiDigJ4lc+KAnCwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgtC+IgogCi0jOiBzZXF1ZW5jZXIuYzozMDE1IGJ1aWx0aW4vcmViYXNlLmM6NjA0Ci1tc2dpZCAiY291bGQgbm90IHdyaXRlIGluZGV4IgotbXNnc3RyICLQuNC90LTQtdC60YHRitGCINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0L/QuNGB0LDQvSIKLQotIzogc2VxdWVuY2VyLmM6MzA0MgorIzogc2VxdWVuY2VyLmM6MzM0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSAnJXMnIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGCIgogCi0jOiBzZXF1ZW5jZXIuYzozMDY4CisjOiBzZXF1ZW5jZXIuYzozMzc1CiBtc2dpZCAiY2Fubm90IG1lcmdlIHdpdGhvdXQgYSBjdXJyZW50IHJldmlzaW9uIgogbXNnc3RyICLQsdC10Lcg0YLQtdC60YPRidC+INC/0L7QtNCw0LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0YHQu9C40LLQsCIKIAotIzogc2VxdWVuY2VyLmM6MzA5MAorIzogc2VxdWVuY2VyLmM6MzM5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJyUuKnMnIgogbXNnc3RyICLigJ4lLipz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INCw0L3QsNC70LjQt9C40YDQsCIKIAotIzogc2VxdWVuY2VyLmM6MzA5OQorIzogc2VxdWVuY2VyLmM6MzQwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIG1lcmdlOiAnJS4qcyciCiBtc2dzdHIgItC90Y/QvNCwINC90LjRidC+INC30LAg0YHQu9C40LLQsNC90LU6IOKAniUuKnPigJwiCiAKLSM6IHNlcXVlbmNlci5jOjMxMTEKKyM6IHNlcXVlbmNlci5jOjM0MTgKIG1zZ2lkICJvY3RvcHVzIG1lcmdlIGNhbm5vdCBiZSBleGVjdXRlZCBvbiB0b3Agb2YgYSBbbmV3IHJvb3RdIgogbXNnc3RyICLQstGK0YDRhdGDINC90LDRh9Cw0LvQvdC+INC/0L7QtNCw0LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9Cy0YrRgNGI0Lgg0LzQvdC+0LbQtdGB0YLQstC10L3QviDRgdC70LjQstCw0L3QtSIKIAotIzogc2VxdWVuY2VyLmM6MzEyNgorIzogc2VxdWVuY2VyLmM6MzQzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0IGNvbW1pdCBtZXNzYWdlIG9mICclcyciCiBtc2dzdHIgItGB0YrQvtCx0YnQtdC90LjQtdGC0L4g0LfQsCDQv9C+0LTQsNCy0LDQvdC1INC60YrQvCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/QvtC70YPRh9C10L3QviIKIAotIzogc2VxdWVuY2VyLmM6MzI3NAorIzogc2VxdWVuY2VyLmM6MzU5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZXZlbiBhdHRlbXB0IHRvIG1lcmdlICclLipzJyIKIG1zZ3N0ciAi0YHQu9C40LLQsNC90LXRgtC+INC90LAg4oCeJS4qc+KAnCDQvdC1INC80L7QttC1INC00LDQttC1INC00LAg0LfQsNC/0L7Rh9C90LUiCiAKLSM6IHNlcXVlbmNlci5jOjMyOTAKKyM6IHNlcXVlbmNlci5jOjM2MTAKIG1zZ2lkICJtZXJnZTogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgogbXNnc3RyICLRgdC70LjQstCw0L3QtTog0L3QvtCy0LjRj9GCINC40L3QtNC10LrRgSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LDQt9C10L0iCiAKLSM6IHNlcXVlbmNlci5jOjMzNTggYnVpbHRpbi9yZWJhc2UuYzoyNjgKKyM6IHNlcXVlbmNlci5jOjM2NzkgYnVpbHRpbi9yZWJhc2UuYzo3MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guXG4iCiBtc2dzdHIgItCQ0LLRgtC+0LzQsNGC0LjRh9C90L4g0YHQutCw0YLQsNC90L7RgtC+INC1INC/0YDQuNC70L7QttC10L3Qvi5cbiIKIAotIzogc2VxdWVuY2VyLmM6MzM3MAorIzogc2VxdWVuY2VyLmM6MzY5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RvcmUgJXMiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0L/QsNC30LXQvSIKIAotIzogc2VxdWVuY2VyLmM6MzM3MyBidWlsdGluL3JlYmFzZS5jOjI4NAorIzogc2VxdWVuY2VyLmM6MzY5NCBidWlsdGluL3JlYmFzZS5jOjc1MyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJBcHBseWluZyBhdXRvc3Rhc2ggcmVzdWx0ZWQgaW4gY29uZmxpY3RzLlxuIgpAQCAtNTQ2MywzMSArNzUyMywyNiBAQAogItC90LDQtNC10LbQtNC90L4g0YHQutCw0YLQsNC90LguICDQnNC+0LbQtdGC0LUg0LTQsCDQv9GA0L7QsdCy0LDRgtC1INC00LAg0LPQuCDQv9GA0LjQu9C+0LbQuNGC0LUg0YfRgNC10Lcg4oCeZ2l0IHN0YXNoIHBvcOKAnFxuIgogItC40LvQuCDQtNCwINCz0Lgg0LjQt9GF0LLRitGA0LvQuNGC0LUg0YfRgNC10Lcg4oCeZ2l0IHN0YXNoIGRyb3DigJwsINC60L7Qs9Cw0YLQviDQv9C+0LjRgdC60LDRgtC1LlxuIgogCi0jOiBzZXF1ZW5jZXIuYzozNDI3Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBjaGVja291dCAlcyIKLW1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9GC0LXQs9C70LgiCi0KLSM6IHNlcXVlbmNlci5jOjM0NDEKKyM6IHNlcXVlbmNlci5jOjM3NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IG5vdCBhIHZhbGlkIE9JRCIKIG1zZ3N0ciAi4oCeJXPigJwg0LUg0L3QtdC/0YDQsNCy0LjQu9C10L0g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0L3QsCDQvtCx0LXQutGCIgogCi0jOiBzZXF1ZW5jZXIuYzozNDQ2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MjQKKyM6IHNlcXVlbmNlci5jOjM3NjAgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc3OQogbXNnaWQgImNvdWxkIG5vdCBkZXRhY2ggSEVBRCIKIG1zZ3N0ciAi0YPQutCw0LfQsNGC0LXQu9GP0YIg4oCeSEVBROKAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtGC0LTQtdC70LgiCiAKLSM6IHNlcXVlbmNlci5jOjM0NjEKKyM6IHNlcXVlbmNlci5jOjM3NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCBIRUFEXG4iCiBtc2dzdHIgItCR0LUg0YHQv9GA0Y/QvdC+INC/0YDQuCDigJ5IRUFE4oCcXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM0NjMKKyM6IHNlcXVlbmNlci5jOjM3NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAlc1xuIgogbXNnc3RyICLQkdC1INGB0L/RgNGP0L3QviDQv9GA0Lgg4oCeJXPigJxcbiIKIAotIzogc2VxdWVuY2VyLmM6MzQ3MQorIzogc2VxdWVuY2VyLmM6Mzc4NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IGV4ZWN1dGUgdGhlIHRvZG8gY29tbWFuZFxuIgpAQCAtNTUxMCw0OCArNzU2NSw0OCBAQAogIiAgICBnaXQgcmViYXNlIC0tZWRpdC10b2RvXG4iCiAiICAgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogCi0jOiBzZXF1ZW5jZXIuYzozNTQzCisjOiBzZXF1ZW5jZXIuYzozODY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN0b3BwZWQgYXQgJXMuLi4gICUuKnNcbiIKIG1zZ3N0ciAi0KHQv9C40YDQsNC90LUg0L/RgNC4IOKAniVz4oCc4oCmICAlLipzXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM2MjIKKyM6IHNlcXVlbmNlci5jOjM5NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBjb21tYW5kICVkIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGC0LAg0LrQvtC80LDQvdC00LAgJWQiCiAKLSM6IHNlcXVlbmNlci5jOjM2NjcKKyM6IHNlcXVlbmNlci5jOjM5OTkKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBvcmlnLWhlYWQiCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCINC30LAg4oCeb3JpZy1oZWFk4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQvtGH0LXRgtC1IgogCi0jOiBzZXF1ZW5jZXIuYzozNjcyIHNlcXVlbmNlci5jOjQ3NDEKKyM6IHNlcXVlbmNlci5jOjQwMDQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCAnb250byciCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCINC30LAg4oCeb250b+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9GA0L7Rh9C10YLQtSIKIAotIzogc2VxdWVuY2VyLmM6MzY4NgorIzogc2VxdWVuY2VyLmM6NDAxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgdXBkYXRlIEhFQUQgdG8gJXMiCiBtc2dzdHIgIuKAnkhFQUTigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0LHQvdC+0LLQtdC9INC00L4g4oCeJXPigJwiCiAKLSM6IHNlcXVlbmNlci5jOjM3NzIKKyM6IHNlcXVlbmNlci5jOjQxMTEKIG1zZ2lkICJjYW5ub3QgcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINC/0YDQtdCx0LDQt9C40YDQsNGC0LUsINC30LDRidC+0YLQviDQuNC80LAg0L/RgNC+0LzQtdC90LgsINC60L7QuNGC0L4g0L3QtSDRgdCwINCyINC40L3QtNC10LrRgdCwLiIKIAotIzogc2VxdWVuY2VyLmM6Mzc4MQorIzogc2VxdWVuY2VyLmM6NDEyMAogbXNnaWQgImNhbm5vdCBhbWVuZCBub24tZXhpc3RpbmcgY29tbWl0IgogbXNnc3RyICLQvdC10YHRitGJ0LXRgdGC0LLRg9Cy0LDRidC+INC/0L7QtNCw0LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/QvtC/0YDQsNCy0LgiCiAKLSM6IHNlcXVlbmNlci5jOjM3ODMKKyM6IHNlcXVlbmNlci5jOjQxMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBmaWxlOiAnJXMnIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDRhNCw0LnQuzog4oCeJXPigJwiCiAKLSM6IHNlcXVlbmNlci5jOjM3ODUKKyM6IHNlcXVlbmNlci5jOjQxMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb250ZW50czogJyVzJyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90L4g0YHRitC00YrRgNC20LDQvdC40LU6IOKAniVz4oCcIgogCi0jOiBzZXF1ZW5jZXIuYzozNzg4CisjOiBzZXF1ZW5jZXIuYzo0MTI3CiBtc2dpZCAiIgogIlxuIgogIllvdSBoYXZlIHVuY29tbWl0dGVkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuIFBsZWFzZSwgY29tbWl0IHRoZW1cbiIKQEAgLTU1NjEsMTI1ICs3NjE2LDU5IEBACiAi0JIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0LjQvNCwINC90LXQv9C+0LTQsNC00LXQvdC4INC/0YDQvtC80LXQvdC4LiAg0J/RitGA0LLQviDQs9C4INC/0L7QtNCw0LnRgtC1LCDQsCDRgdC70LXQtCDRgtC+0LLQsFxuIgogItC+0YLQvdC+0LLQviDQuNC30L/RitC70L3QtdGC0LUg4oCeZ2l0IHJlYmFzZSAtLWNvbnRpbnVl4oCcLiIKIAotIzogc2VxdWVuY2VyLmM6MzgyNCBzZXF1ZW5jZXIuYzozODYyCisjOiBzZXF1ZW5jZXIuYzo0MTYzIHNlcXVlbmNlci5jOjQyMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIGZpbGU6ICclcyciCiBtc2dzdHIgItGE0LDQudC70YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LjRgdCw0L0iCiAKLSM6IHNlcXVlbmNlci5jOjM4NzcKKyM6IHNlcXVlbmNlci5jOjQyMTcKIG1zZ2lkICJjb3VsZCBub3QgcmVtb3ZlIENIRVJSWV9QSUNLX0hFQUQiCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCIOKAnkNIRVJSWV9QSUNLX0hFQUTigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40LfRgtGA0LjRgiIKIAotIzogc2VxdWVuY2VyLmM6Mzg4NAorIzogc2VxdWVuY2VyLmM6NDIyNAogbXNnaWQgImNvdWxkIG5vdCBjb21taXQgc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICLQv9GA0L7QvNC10L3QuNGC0LUg0LIg0LjQvdC00LXQutGB0LAg0L3QtSDQvNC+0LPQsNGCINC00LAg0LHRitC00LDRgiDQv9C+0LTQsNC00LXQvdC4LiIKIAotIzogc2VxdWVuY2VyLmM6Mzk4MgorIzogc2VxdWVuY2VyLmM6NDMzOAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogY2FuJ3QgY2hlcnJ5LXBpY2sgYSAlcyIKIG1zZ3N0ciAiJXM6INC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0YLQsdC10YDQtSDigJ4lc+KAnCIKIAotIzogc2VxdWVuY2VyLmM6Mzk4NgorIzogc2VxdWVuY2VyLmM6NDM0MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogYmFkIHJldmlzaW9uIgogbXNnc3RyICIlczog0L3QtdC/0YDQsNCy0LjQu9C90LAg0LLQtdGA0YHQuNGPIgogCi0jOiBzZXF1ZW5jZXIuYzo0MDIxCisjOiBzZXF1ZW5jZXIuYzo0Mzc3CiBtc2dpZCAiY2FuJ3QgcmV2ZXJ0IGFzIGluaXRpYWwgY29tbWl0IgogbXNnc3RyICLQv9GK0YDQstC+0L3QsNGH0LDQu9C90L7RgtC+INC/0L7QtNCw0LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQvNC10L3QtdC90L4iCiAKLSM6IHNlcXVlbmNlci5jOjQ0NjYKKyM6IHNlcXVlbmNlci5jOjQ4NDYKIG1zZ2lkICJtYWtlX3NjcmlwdDogdW5oYW5kbGVkIG9wdGlvbnMiCiBtc2dzdHIgIm1ha2Vfc2NyaXB0OiDQvdC10L/QvtC00LTRitGA0LbQsNC90Lgg0L7Qv9GG0LjQuCIKIAotIzogc2VxdWVuY2VyLmM6NDQ2OQorIzogc2VxdWVuY2VyLmM6NDg0OQogbXNnaWQgIm1ha2Vfc2NyaXB0OiBlcnJvciBwcmVwYXJpbmcgcmV2aXNpb25zIgogbXNnc3RyICJtYWtlX3NjcmlwdDog0LPRgNC10YjQutCwINC/0YDQuCDQv9C+0LTQs9C+0YLQvtCy0LrQsNGC0LAg0L3QsCDQstC10YDRgdC40LgiCiAKLSM6IHNlcXVlbmNlci5jOjQ1MDkgc2VxdWVuY2VyLmM6NDU2NSBzZXF1ZW5jZXIuYzo0ODQwCi0jLCBjLWZvcm1hdAotbXNnaWQgInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIKLW1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfRgtGA0LjQstCw0L3QtSDQvdCwINGB0L/QuNGB0YrQutCwINC30LAg0LjQt9C/0YrQu9C90LXQvdC40LU6IOKAniVz4oCcIgotCi0jOiBzZXF1ZW5jZXIuYzo0NjIwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJ1bnJlY29nbml6ZWQgc2V0dGluZyAlcyBmb3Igb3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmluZy4iCi1tc2dzdHIgIiIKLSLQndC10L/QvtC30L3QsNGC0LAg0YHRgtC+0LnQvdC+0YHRgiDigJ4lc+KAnCDQt9CwwqDQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAnnJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNr4oCcLiAgIgotItCd0LDRgdGC0YDQvtC50LrQsNGC0LAg0YHQtSDQv9GA0LXRgdC60LDRh9CwLiIKLQotIzogc2VxdWVuY2VyLmM6NDY5MAotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCi0iRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCi1tc2dzdHIgIiIKLSLQn9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1OiDQvdGP0LrQvtC4INC/0L7QtNCw0LLQsNC90LjRjyDQvNC+0LbQtSDQtNCwINGB0LAg0L/RgNC+0L/Rg9GB0L3QsNGC0LguXG4iCi0i0J/RgNC+0L/Rg9GB0L3QsNGC0Lgg0L/QvtC00LDQstCw0L3QuNGPICjQvdC+0LLQuNGC0LUg0YHQsCDQvdCw0Lkt0L7RgtCz0L7RgNC1KTpcbiIKLQotIzogc2VxdWVuY2VyLmM6NDY5NwotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iVG8gYXZvaWQgdGhpcyBtZXNzYWdlLCB1c2UgXCJkcm9wXCIgdG8gZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuXG4iCi0iXG4iCi0iVXNlICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyB0byBjaGFuZ2UgdGhlIGxldmVsIG9mICIKLSJ3YXJuaW5ncy5cbiIKLSJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCi0iXG4iCi1tc2dzdHIgIiIKLSLQl9CwINC00LAg0L3QtSDQv9C+0LvRg9GH0LDQstCw0YLQtSDRgtC+0LLQsCDRgdGK0L7QsdGJ0LXQvdC40LUsINC40LfRgNC40YfQvdC+INC/0L7Qu9C30LLQsNC50YLQtSDQutC+0LzQsNC90LTQsNGC0LAg4oCeZHJvcOKAnC5cbiIKLSJcbiIKLSLQndCw0YHRgtGA0L7QudC60LDRgtCwIOKAnnJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNr4oCcINGD0L/RgNCw0LLQu9GP0LLQsCDQvdC40LLQvtGC0L4g0L3QsCDQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1XG4iCi0i0JLRitC30LzQvtC20L3QuNGC0LUg0YHRgtC+0LnQvdC+0YHRgtC4INGB0LAg4oCeaWdub3Jl4oCcICjQv9GA0LXQvdC10LHRgNC10LPQstCw0L3QtSksIOKAnndhcm7igJwgKNGB0LDQvNC+ICIKLSLQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1KVxuIgotItC40LvQuCDigJ5lcnJvcuKAnCAo0YHRh9C40YLQsNC90LUg0LfQsCDQs9GA0LXRiNC60LApLlxuIgotCi0jOiBzZXF1ZW5jZXIuYzo0NzEwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJZb3UgY2FuIGZpeCB0aGlzIHdpdGggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLSIKLSJjb250aW51ZScuXG4iCi0iT3IgeW91IGNhbiBhYm9ydCB0aGUgcmViYXNlIHdpdGggJ2dpdCByZWJhc2UgLS1hYm9ydCcuXG4iCi1tc2dzdHIgIiIKLSLQnNC+0LbQtSDQtNCwINC/0YDQvtC80LXQvdC40YLQtSDRgtC+0LLQsCDRgSDQutC+0LzQsNC90LTQuNGC0LUg4oCeZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb+KAnCDQuCDigJ5naXQgcmViYXNlIC0tIgotImNvbnRpbnVl4oCcINGB0LvQtdC0INGC0L7QstCwLlxuIgotItCc0L7QttC1INC4INC00LAg0L/RgNC10YPRgdGC0LDQvdC+0LLQuNGC0LUg0L/RgNC10LHQsNC30LjRgNCw0L3QtdGC0L4g0YEg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCByZWJhc2UgLS1hYm9ydOKAnC5cbiIKLQotIzogc2VxdWVuY2VyLmM6NDg0OCBzZXF1ZW5jZXIuYzo0ODg2CisjOiBzZXF1ZW5jZXIuYzo1MDgzIHNlcXVlbmNlci5jOjUxMDAKIG1zZ2lkICJub3RoaW5nIHRvIGRvIgogbXNnc3RyICLQvdGP0LzQsCDQutCw0LrQstC+INC00LAg0YHQtSDQv9GA0LDQstC4IgogCi0jOiBzZXF1ZW5jZXIuYzo0ODUyCi0jLCBjLWZvcm1hdAotbXNnaWQgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kKSIKLW1zZ2lkX3BsdXJhbCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmRzKSIKLW1zZ3N0clswXSAi0J/RgNC10LHQsNC30LjRgNCw0L3QtSDQvdCwIOKAniVz4oCcINCy0YrRgNGF0YMg4oCeJXPigJwgKCVkINC60L7QvNCw0L3QtNC4KSIKLW1zZ3N0clsxXSAi0J/RgNC10LHQsNC30LjRgNCw0L3QtSDQvdCwIOKAniVz4oCcINCy0YrRgNGF0YMg4oCeJXPigJwgKCVkINC60L7QvNCw0L3QtNCwKSIKLQotIzogc2VxdWVuY2VyLmM6NDg2NAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcycuIgotbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQutC+0L/QuNGA0LAg0LrQsNGC0L4g4oCeJXPigJwuIgotCi0jOiBzZXF1ZW5jZXIuYzo0ODY4IHNlcXVlbmNlci5jOjQ4OTcKLW1zZ2lkICJjb3VsZCBub3QgdHJhbnNmb3JtIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgItGE0LDQudC70YrRgiDRgSDQutC+0LzQsNC90LTQuNGC0LUg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7QsdGA0LDQsdC+0YLQuCIKLQotIzogc2VxdWVuY2VyLmM6NDkwMAorIzogc2VxdWVuY2VyLmM6NTExOQogbXNnaWQgImNvdWxkIG5vdCBza2lwIHVubmVjZXNzYXJ5IHBpY2sgY29tbWFuZHMiCiBtc2dzdHIgItC40LfQu9C40YjQvdC40YLQtSDQutC+0LzQsNC90LTQuCDQt9CwINC+0YLQsdC40YDQsNC90LUg0L3QtSDQsdGP0YXQsCDQv9GA0LXRgdC60L7Rh9C10L3QuCIKIAotIzogc2VxdWVuY2VyLmM6NDk4MworIzogc2VxdWVuY2VyLmM6NTIxMwogbXNnaWQgInRoZSBzY3JpcHQgd2FzIGFscmVhZHkgcmVhcnJhbmdlZC4iCiBtc2dzdHIgItGB0LrRgNC40L/RgtGK0YIg0LLQtdGH0LUg0LUg0L/RgNC10L/QvtC00YDQtdC00LXQvS4iCiAKLSM6IHNldHVwLmM6MTIzCisjOiBzZXR1cC5jOjEyNAogIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSIKLW1zZ3N0ciAi4oCeJXPigJwg0LUg0LjQt9Cy0YrQvSDRhdGA0LDQvdC40LvQuNGJ0LXRgtC+IgorbXNnaWQgIiclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IGF0ICclcyciCittc2dzdHIgIuKAniVz4oCcINC1INC40LfQstGK0L0g0YXRgNCw0L3QuNC70LjRidC10YLQviDQv9GA0Lgg4oCeJXPigJwiCiAKLSM6IHNldHVwLmM6MTcyCisjOiBzZXR1cC5jOjE3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJXM6IG5vIHN1Y2ggcGF0aCBpbiB0aGUgd29ya2luZyB0cmVlLlxuIgpAQCAtNTY5MCw3ICs3Njc5LDcgQEAKICJcbiIKICIgICAgZ2l0INCa0J7QnNCQ0J3QlNCQIC0tINCf0KrQouKApiIKIAotIzogc2V0dXAuYzoxODUKKyM6IHNldHVwLmM6MTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJhbWJpZ3VvdXMgYXJndW1lbnQgJyVzJzogdW5rbm93biByZXZpc2lvbiBvciBwYXRoIG5vdCBpbiB0aGUgd29ya2luZyB0cmVlLlxuIgpAQCAtNTcwMywxMiArNzY5MiwxMiBAQAogIlxuIgogIiAgICBnaXQg0JrQntCc0JDQndCU0JAgW9CS0JXQoNCh0JjQr+KApl0gLS0gW9Ck0JDQmdCb4oCmXSIKIAotIzogc2V0dXAuYzoyMzQKKyM6IHNldHVwLmM6MjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9wdGlvbiAnJXMnIG11c3QgY29tZSBiZWZvcmUgbm9uLW9wdGlvbiBhcmd1bWVudHMiCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAniVz4oCcINGC0YDRj9Cx0LLQsCDQtNCwINC1INC/0YDQtdC00Lgg0L/RitGA0LLQuNGPINCw0YDQs9GD0LzQtdC90YIsINC60L7QudGC0L4g0L3QtSDQtSDQvtC/0YbQuNGPIgogCi0jOiBzZXR1cC5jOjI1MworIzogc2V0dXAuYzoyNzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImFtYmlndW91cyBhcmd1bWVudCAnJXMnOiBib3RoIHJldmlzaW9uIGFuZCBmaWxlbmFtZVxuIgpAQCAtNTcyMCw5NSArNzcwOSw5NSBAQAogIlxuIgogIiAgICBnaXQg0JrQntCc0JDQndCU0JAgW9CS0JXQoNCh0JjQr+KApl0gLS0gW9Ck0JDQmdCb4oCmXSIKIAotIzogc2V0dXAuYzozODkKKyM6IHNldHVwLmM6NDA5CiBtc2dpZCAidW5hYmxlIHRvIHNldCB1cCB3b3JrIHRyZWUgdXNpbmcgaW52YWxpZCBjb25maWciCiBtc2dzdHIgIiIKICLQvdC1INC80L7QttC1INC00LAg0YHQtSDQt9Cw0LTQsNC00LUg0YLQtdC60YPRidCwINGA0LDQsdC+0YLQvdCwINC00LjRgNC10LrRgtC+0YDQuNGPINC/0YDQuCDQvdC10L/RgNCw0LLQuNC70L3QuCDQvdCw0YHRgtGA0L7QudC60LgiCiAKLSM6IHNldHVwLmM6MzkzCisjOiBzZXR1cC5jOjQxMwogbXNnaWQgInRoaXMgb3BlcmF0aW9uIG11c3QgYmUgcnVuIGluIGEgd29yayB0cmVlIgogbXNnc3RyICLRgtCw0LfQuCDQutC+0LzQsNC90LTQsCDRgtGA0Y/QsdCy0LAg0LTQsCDRgdC1INC40LfQv9GK0LvQvdC4INCyINGA0LDQsdC+0YLQvdC+INC00YrRgNCy0L4iCiAKLSM6IHNldHVwLmM6NTI3CisjOiBzZXR1cC5jOjU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJFeHBlY3RlZCBnaXQgcmVwbyB2ZXJzaW9uIDw9ICVkLCBmb3VuZCAlZCIKIG1zZ3N0ciAi0J7Rh9Cw0LrQstCwINGB0LUg0LLQtdGA0YHQuNGPINC90LAg0YXRgNCw0L3QuNC70LjRidC10YLQviDQvdCwIGdpdCA8PSAlZCwg0LAg0L3QtSAlZCIKIAotIzogc2V0dXAuYzo1MzUKKyM6IHNldHVwLmM6NTY3CiBtc2dpZCAidW5rbm93biByZXBvc2l0b3J5IGV4dGVuc2lvbnMgZm91bmQ6IgogbXNnc3RyICLQvtGC0LrRgNC40YLQuCDRgdCwINC90LXQv9C+0LfQvdCw0YLQuCDRgNCw0LfRiNC40YDQtdC90LjRjyDQsiDRhdGA0LDQvdC40LvQuNGJ0LXRgtC+OiIKIAotIzogc2V0dXAuYzo1NTQKKyM6IHNldHVwLmM6NTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIG9wZW5pbmcgJyVzJyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7RgtCy0L7RgNC4IgogCi0jOiBzZXR1cC5jOjU1NgorIzogc2V0dXAuYzo1ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAidG9vIGxhcmdlIHRvIGJlIGEgLmdpdCBmaWxlOiAnJXMnIgogbXNnc3RyICLQv9GA0LXQutCw0LvQtdC90L4g0LPQvtC70Y/QvCDRhNCw0LnQuyDigJ4uZ2l04oCcOiDigJ4lc+KAnCIKIAotIzogc2V0dXAuYzo1NTgKKyM6IHNldHVwLmM6NTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHJlYWRpbmcgJXMiCiBtc2dzdHIgItCz0YDQtdGI0LrQsCDQv9GA0Lgg0L/RgNC+0YfQuNGC0LDQvdC1INC90LAg4oCeJXPigJwiCiAKLSM6IHNldHVwLmM6NTYwCisjOiBzZXR1cC5jOjU5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGdpdGZpbGUgZm9ybWF0OiAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0YTQvtGA0LzQsNGCINC90LAgZ2l0ZmlsZTogJXMiCiAKLSM6IHNldHVwLmM6NTYyCisjOiBzZXR1cC5jOjU5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBwYXRoIGluIGdpdGZpbGU6ICVzIgogbXNnc3RyICLQu9C40L/RgdCy0LAg0L/RitGCINCyIGdpdGZpbGU6IOKAniVz4oCcIgogCi0jOiBzZXR1cC5jOjU2NAorIzogc2V0dXAuYzo1OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnk6ICVzIgogbXNnc3RyICLQvdC1INC1INGF0YDQsNC90LjQu9C40YnQtSDQvdCwIEdpdDogJXMiCiAKLSM6IHNldHVwLmM6NjYzCisjOiBzZXR1cC5jOjY5NQogIywgYy1mb3JtYXQKIG1zZ2lkICInJCVzJyB0b28gYmlnIgogbXNnc3RyICLigJ4lc+KAnCDQtSDQv9GA0LXQutCw0LvQtdC90L4g0LPQvtC70Y/QvCIKIAotIzogc2V0dXAuYzo2NzcKKyM6IHNldHVwLmM6NzA5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5OiAnJXMnIgogbXNnc3RyICLQvdC1INC1INGF0YDQsNC90LjQu9C40YnQtSDQvdCwIGdpdDog4oCeJXPigJwiCiAKLSM6IHNldHVwLmM6NzA2IHNldHVwLmM6NzA4IHNldHVwLmM6NzM5CisjOiBzZXR1cC5jOjczOCBzZXR1cC5jOjc0MCBzZXR1cC5jOjc3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY2hkaXIgdG8gJyVzJyIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LLQu9C10LfQtSDQsiDQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg4oCeJXPigJwiCiAKLSM6IHNldHVwLmM6NzExIHNldHVwLmM6NzY3IHNldHVwLmM6Nzc3IHNldHVwLmM6ODE2IHNldHVwLmM6ODI0IHNldHVwLmM6ODM5CisjOiBzZXR1cC5jOjc0MyBzZXR1cC5jOjc5OSBzZXR1cC5jOjgwOSBzZXR1cC5jOjg0OCBzZXR1cC5jOjg1NgogbXNnaWQgImNhbm5vdCBjb21lIGJhY2sgdG8gY3dkIgogbXNnc3RyICLQv9GA0L7RhtC10YHRitGCINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INCy0YrRgNC90LUg0LrRitC8INC/0YDQtdC00LjRiNC90LDRgtCwINGA0LDQsdC+0YLQvdCwINC00LjRgNC10LrRgtC+0YDQuNGPIgogCi0jOiBzZXR1cC5jOjgzNworIzogc2V0dXAuYzo4NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgJyUqcyVzJXMnIgorbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/QvtC70YPRh9C10L3QsCDQuNC90YTQvtGA0LzQsNGG0LjRjyDRh9GA0LXQtyDigJ5zdGF04oCcINC30LAg4oCeJSpzJXMlc+KAnCIKKworIzogc2V0dXAuYzoxMTA4Cittc2dpZCAiVW5hYmxlIHRvIHJlYWQgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAi0KLQtdC60YPRidCw0YLQsCDRgNCw0LHQvtGC0L3QsCDQtNC40YDQtdC60YLQvtGA0LjRjyDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvdCwIgorCisjOiBzZXR1cC5jOjExMTcgc2V0dXAuYzoxMTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjaGFuZ2UgdG8gJyVzJyIKK21zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LLQu9C10LfQtSDQsiDQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg4oCeJXPigJwiCisKKyM6IHNldHVwLmM6MTEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeSAob3IgYW55IG9mIHRoZSBwYXJlbnQgZGlyZWN0b3JpZXMpOiAlcyIKIG1zZ3N0ciAiIgogItC90LjRgtC+INGC0LDQt9C4LCDQvdC40YLQviDQutC+0Y/RgtC+INC4INC00LAg0LUg0L7RgiDQv9C+LdCz0L7RgNC90LjRgtC1INC00LjRgNC10LrRgtC+0YDQuNC4LCDQvdC1INC1INGF0YDQsNC90LjQu9C40YnQtSDQvdCwICIKICJnaXQ6ICVzIgogCi0jOiBzZXR1cC5jOjg0OAotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJSpzJXMlcyciCi1tc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9C+0LvRg9GH0LXQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGPINGH0YDQtdC3IOKAnnN0YXTigJwg0LfQsCDigJ4lKnMlcyVz4oCcIgotCi0jOiBzZXR1cC5jOjEwNzgKLW1zZ2lkICJVbmFibGUgdG8gcmVhZCBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IgotbXNnc3RyICLQotC10LrRg9GJ0LDRgtCwINGA0LDQsdC+0YLQvdCwINC00LjRgNC10LrRgtC+0YDQuNGPINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0L7Rh9C10YLQtdC90LAiCi0KLSM6IHNldHVwLmM6MTA5MCBzZXR1cC5jOjEwOTYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY2Fubm90IGNoYW5nZSB0byAnJXMnIgotbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDQstC70LXQt9C1INCyINC00LjRgNC10LrRgtC+0YDQuNGP0YLQsCDigJ4lc+KAnCIKLQotIzogc2V0dXAuYzoxMTA5CisjOiBzZXR1cC5jOjExMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgcGFyZW50IHVwIHRvIG1vdW50IHBvaW50ICVzKVxuIgpAQCAtNTgxOSw3ICs3ODA4LDcgQEAKICJHaXQg0YDQsNCx0L7RgtC4INCyINGA0LDQvNC60LjRgtC1INC90LAg0LXQtNC90LAg0YTQsNC50LvQvtCy0LAg0YHQuNGB0YLQtdC80LAsINC30LDRidC+0YLQviDQv9GA0L7QvNC10L3Qu9C40LLQsNGC0LAg0L3QsCDRgdGA0LXQtNCw0YLQsCAiCiAi4oCeR0lUX0RJU0NPVkVSWV9BQ1JPU1NfRklMRVNZU1RFTeKAnCDQvdC1INC1INC30LDQtNCw0LTQtdC90LAuIgogCi0jOiBzZXR1cC5jOjExOTIKKyM6IHNldHVwLmM6MTI0NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicHJvYmxlbSB3aXRoIGNvcmUuc2hhcmVkUmVwb3NpdG9yeSBmaWxlbW9kZSB2YWx1ZSAoMCUuM28pLlxuIgpAQCAtNTgyOSwzNzQgKzc4MTgsNTkwIEBACiAiKDAlLjNvKS5cbiIKICLQodC+0LHRgdGC0LLQtdC90LjQutGK0YIg0L3QsCDRhNCw0LnQu9CwINGC0YDRj9Cx0LLQsCDQtNCwINC40LzQsCDQv9GA0LDQstCwINC30LAg0L/QuNGB0LDQvdC1INC4INGH0LXRgtC10L3QtS4iCiAKLSM6IHNldHVwLmM6MTIzNQorIzogc2V0dXAuYzoxMjg5CiBtc2dpZCAib3BlbiAvZGV2L251bGwgb3IgZHVwIGZhaWxlZCIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg4oCeb3BlbuKAnCDQuNC70Lgg4oCeZHVw4oCcINCy0YrRgNGF0YMg4oCeL2Rldi9udWxs4oCcIgogCi0jOiBzZXR1cC5jOjEyNTAKKyM6IHNldHVwLmM6MTMwNAogbXNnaWQgImZvcmsgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YHRitC30LTQsNCy0LDQvdC1INC90LAg0L/RgNC+0YbQtdGBINGH0YDQtdC3IOKAnmZvcmvigJwiCiAKLSM6IHNldHVwLmM6MTI1NQorIzogc2V0dXAuYzoxMzA5CiBtc2dpZCAic2V0c2lkIGZhaWxlZCIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg4oCec2V0c2lk4oCcIgogCi0jOiBzaGExLWZpbGUuYzozODEKKyM6IHNoYTEtZmlsZS5jOjQ1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgZGlyZWN0b3J5ICVzIGRvZXMgbm90IGV4aXN0OyBjaGVjayAuZ2l0L29iamVjdHMvaW5mby9hbHRlcm5hdGVzIgogbXNnc3RyICIiCiAi0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwINC30LAg0L7QsdC10LrRgtC4IOKAniVz4oCcINC90LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LAsINC/0YDQvtCy0LXRgNC10YLQtSDigJ4uZ2l0L29iamVjdHMvaW5mby8iCiAiYWx0ZXJuYXRlc+KAnCIKIAotIzogc2hhMS1maWxlLmM6NDMyCisjOiBzaGExLWZpbGUuYzo1MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG5vcm1hbGl6ZSBhbHRlcm5hdGUgb2JqZWN0IHBhdGg6ICVzIgogbXNnc3RyICLQsNC70YLQtdGA0L3QsNGC0LjQstC90LjRj9GCINC/0YrRgiDQutGK0Lwg0L7QsdC10LrRgtC4INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvdC+0YDQvNCw0LvQuNC30LjRgNCw0L06IOKAniVz4oCcIgogCi0jOiBzaGExLWZpbGUuYzo1MDMKKyM6IHNoYTEtZmlsZS5jOjU3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogaWdub3JpbmcgYWx0ZXJuYXRlIG9iamVjdCBzdG9yZXMsIG5lc3RpbmcgdG9vIGRlZXAiCiBtc2dzdHIgIiIKICIlczog0LDQu9GC0LXRgNC90LDRgtC40LLQvdC40YLQtSDRhdGA0LDQvdC40LvQuNGJ0LAg0LfQsCDQvtCx0LXQutGC0Lgg0YHQtSDQv9GA0LXQvdC10LHRgNC10LPQstCw0YIg0L/QvtGA0LDQtNC4INC/0YDQtdC60LDQu9C10L3QviAiCiAi0LTRitC70LHQvtC60L4g0LLQu9Cw0LPQsNC90LUiCiAKLSM6IHNoYTEtZmlsZS5jOjUxMAorIzogc2hhMS1maWxlLmM6NTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgb2JqZWN0IGRpcmVjdG9yeTogJXMiCiBtc2dzdHIgItC00LjRgNC10LrRgtC+0YDQuNGP0YLQsCDQt9CwINC+0LHQtdC60YLQuCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L3QvtGA0LzQsNC70LjQt9C40YDQsNC90LAiCiAKLSM6IHNoYTEtZmlsZS5jOjU2NQorIzogc2hhMS1maWxlLmM6NjI1CiBtc2dpZCAidW5hYmxlIHRvIGZkb3BlbiBhbHRlcm5hdGVzIGxvY2tmaWxlIgogbXNnc3RyICLQt9Cw0LrQu9GO0YfQstCw0YnQuNGP0YIg0YTQsNC50Lsg0LfQsCDQsNC70YLQtdGA0L3QsNGC0LjQstC40YLQtSDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtGC0LLQvtGA0Lgg0YEg4oCeZmRvcGVu4oCcIgogCi0jOiBzaGExLWZpbGUuYzo1ODMKKyM6IHNoYTEtZmlsZS5jOjY0MwogbXNnaWQgInVuYWJsZSB0byByZWFkIGFsdGVybmF0ZXMgZmlsZSIKIG1zZ3N0ciAi0YTQsNC50LvRitGCINGBINCw0LvRgtC10YDQvdCw0YLQuNCy0LjRgtC1INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0L7Rh9C10YLQtdC9IgogCi0jOiBzaGExLWZpbGUuYzo1OTAKKyM6IHNoYTEtZmlsZS5jOjY1MAogbXNnaWQgInVuYWJsZSB0byBtb3ZlIG5ldyBhbHRlcm5hdGVzIGZpbGUgaW50byBwbGFjZSIKIG1zZ3N0ciAi0L3QvtCy0LjRj9GCINGE0LDQudC7INGBINCw0LvRgtC10YDQvdCw0YLQuNCy0LjRgtC1INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0LXQvNC10YHRgtC10L0g0L3QsCDQvNGP0YHRgtC+0YLQviDQvNGDIgogCi0jOiBzaGExLWZpbGUuYzo2MjUKKyM6IHNoYTEtZmlsZS5jOjY4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgItC/0YrRgtGP0YIg4oCeJXPigJwg0L3QtSDRgdGK0YnQtdGB0YLQstGD0LLQsC4iCiAKLSM6IHNoYTEtZmlsZS5jOjY1MQorIzogc2hhMS1maWxlLmM6NzExCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgYXMgYSBsaW5rZWQgY2hlY2tvdXQgaXMgbm90IHN1cHBvcnRlZCB5ZXQuIgogbXNnc3RyICLQstGB0LUg0L7RidC1INC90LUg0YHQtSDQv9C+0LTQtNGK0YDQttCwINC10YLQsNC70L7QvdC90L4g0YXRgNCw0L3QuNC70LjRidC1IOKAniVz4oCcINC60LDRgtC+INGB0LLRitGA0LfQsNC90L4uIgogCi0jOiBzaGExLWZpbGUuYzo2NTcKKyM6IHNoYTEtZmlsZS5jOjcxNwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIG5vdCBhIGxvY2FsIHJlcG9zaXRvcnkuIgogbXNnc3RyICLQtdGC0LDQu9C+0L3QvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUg4oCeJXPigJwg0L3QtSDQtSDQu9C+0LrQsNC70L3QviIKIAotIzogc2hhMS1maWxlLmM6NjYzCisjOiBzaGExLWZpbGUuYzo3MjMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBpcyBzaGFsbG93IgogbXNnc3RyICLQtdGC0LDQu9C+0L3QvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUg4oCeJXPigJwg0LUg0L/Qu9C40YLQutC+IgogCi0jOiBzaGExLWZpbGUuYzo2NzEKKyM6IHNoYTEtZmlsZS5jOjczMQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIGdyYWZ0ZWQiCiBtc2dzdHIgItC10YLQsNC70L7QvdC90L7RgtC+INGF0YDQsNC90LjQu9C40YnQtSDigJ4lc+KAnCDQtSDRgSDQv9GA0LjRgdCw0LbQtNCw0L3QtSIKIAotIzogc2hhMS1maWxlLmM6NzgxCisjOiBzaGExLWZpbGUuYzo3OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lIHdoaWxlIHBhcnNpbmcgYWx0ZXJuYXRlIHJlZnM6ICVzIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDRgNC10LQg0L/RgNC4INCw0L3QsNC70LjQt9CwINC90LAg0LDQu9GC0LXRgNC90LDRgtC40LLQvdC40YLQtSDRg9C60LDQt9Cw0YLQtdC70Lg6IOKAniVz4oCcIgorCisjOiBzaGExLWZpbGUuYzo5NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYXR0ZW1wdGluZyB0byBtbWFwICU8UFJJdU1BWD4gb3ZlciBsaW1pdCAlPFBSSXVNQVg+IgogbXNnc3RyICIiCiAi0L3QtdGD0YHQv9C10YjQtdC9INC+0L/QuNGCINC30LAg4oCebW1hcOKAnCAlPFBSSXVNQVg+LCDQutC+0LXRgtC+INC1INC90LDQtCDQv9C+0LfQstC+0LvQtdC90L7RgtC+ICU8UFJJdU1BWD4iCiAKLSM6IHNoYTEtZmlsZS5jOjgwNgorIzogc2hhMS1maWxlLmM6OTY0CiBtc2dpZCAibW1hcCBmYWlsZWQiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQuNC30L/RitC70L3QtdC90LjQtSDQvdCwIOKAnm1tYXDigJwiCiAKLSM6IHNoYTEtZmlsZS5jOjk3MworIzogc2hhMS1maWxlLmM6MTEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgZmlsZSAlcyBpcyBlbXB0eSIKIG1zZ3N0ciAi0YTQsNC50LvRitGCINGBINC+0LHQtdC60YLQuNGC0LUg4oCeJXPigJwg0LUg0L/RgNCw0LfQtdC9IgogCi0jOiBzaGExLWZpbGUuYzoxMDkzIHNoYTEtZmlsZS5jOjIyMTUKKyM6IHNoYTEtZmlsZS5jOjEyNjMgc2hhMS1maWxlLmM6MjQ0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IGxvb3NlIG9iamVjdCAnJXMnIgogbXNnc3RyICLQvdC10L/QsNC60LXRgtC40YDQsNC90LjRj9GCINC+0LHQtdC60YIg4oCeJXPigJwg0LUg0L/QvtCy0YDQtdC00LXQvSIKIAotIzogc2hhMS1maWxlLmM6MTA5NSBzaGExLWZpbGUuYzoyMjE5CisjOiBzaGExLWZpbGUuYzoxMjY1IHNoYTEtZmlsZS5jOjI0NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2FyYmFnZSBhdCBlbmQgb2YgbG9vc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgItCz0YDQtdGI0L3QuCDQtNCw0L3QvdC4INCyINC60YDQsNGPINC90LAg0L3QtdC/0LDQutC10YLQuNGA0LDQvdC40Y8g0L7QsdC10LrRgiDigJ4lc+KAnCIKIAotIzogc2hhMS1maWxlLmM6MTEzNworIzogc2hhMS1maWxlLmM6MTMwNwogbXNnaWQgImludmFsaWQgb2JqZWN0IHR5cGUiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INCy0LjQtCDQvtCx0LXQutGCIgogCi0jOiBzaGExLWZpbGUuYzoxMjE5CisjOiBzaGExLWZpbGUuYzoxMzkxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgJXMgaGVhZGVyIHdpdGggLS1hbGxvdy11bmtub3duLXR5cGUiCiBtc2dzdHIgIiIKICLQt9Cw0LPQu9Cw0LLQvdCw0YLQsCDRh9Cw0YHRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDRgNCw0LfQv9Cw0LrQtdGC0LjRgNCwINGBINC+0L/RhtC40Y/RgtCwIOKAni0tYWxsb3ctdW5rbm93bi0iCiAidHlwZeKAnCIKIAotIzogc2hhMS1maWxlLmM6MTIyMgorIzogc2hhMS1maWxlLmM6MTM5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5wYWNrICVzIGhlYWRlciIKIG1zZ3N0ciAi0LfQsNCz0LvQsNCy0L3QsNGC0LAg0YfQsNGB0YIg0L3QsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YDQsNC30L/QsNC60LXRgtC40YDQsNC90LAiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMjgKKyM6IHNoYTEtZmlsZS5jOjE0MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciB3aXRoIC0tYWxsb3ctdW5rbm93bi10eXBlIgogbXNnc3RyICIiCiAi0LfQsNCz0LvQsNCy0L3QsNGC0LAg0YfQsNGB0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LDQvdCw0LvQuNC30LjRgNCwINGBINC+0L/RhtC40Y/RgtCwIOKAni0tYWxsb3ctdW5rbm93bi10eXBl4oCcIgogCi0jOiBzaGExLWZpbGUuYzoxMjMxCisjOiBzaGExLWZpbGUuYzoxNDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAlcyBoZWFkZXIiCiBtc2dzdHIgItC30LDQs9C70LDQstC90LDRgtCwINGH0LDRgdGCINC90LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INCw0L3QsNC70LjQt9C40YDQsNC90LAiCiAKLSM6IHNoYTEtZmlsZS5jOjE0MjIKKyM6IHNoYTEtZmlsZS5jOjE2MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgb2JqZWN0ICVzIgogbXNnc3RyICLQvtCx0LXQutGC0YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogc2hhMS1maWxlLmM6MTQyNgorIzogc2hhMS1maWxlLmM6MTYzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBsYWNlbWVudCAlcyBub3QgZm91bmQgZm9yICVzIgogbXNnc3RyICLQt9Cw0LzQtdGB0YLQuNGC0LXQu9GP0YIg4oCeJXPigJwg0L3QsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGCIgogCi0jOiBzaGExLWZpbGUuYzoxNDMwCisjOiBzaGExLWZpbGUuYzoxNjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvb3NlIG9iamVjdCAlcyAoc3RvcmVkIGluICVzKSBpcyBjb3JydXB0IgogbXNnc3RyICLQvdC10L/QsNC60LXRgtC40YDQsNC90LjRj9GCINC+0LHQtdC60YIg4oCeJXPigJwgKNCyIOKAniVz4oCcKSDQtSDQv9C+0LLRgNC10LTQtdC9IgogCi0jOiBzaGExLWZpbGUuYzoxNDM0CisjOiBzaGExLWZpbGUuYzoxNjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2tlZCBvYmplY3QgJXMgKHN0b3JlZCBpbiAlcykgaXMgY29ycnVwdCIKIG1zZ3N0ciAi0L/QsNC60LXRgtC40YDQsNC90LjRj9GCINC+0LHQtdC60YIg4oCeJXPigJwgKNCyIOKAniVz4oCcKSDQtSDQv9C+0LLRgNC10LTQtdC9IgogCi0jOiBzaGExLWZpbGUuYzoxNTM2CisjOiBzaGExLWZpbGUuYzoxNzQ2CiAjLCBjLWZvcm1hdAotbXNnaWQgInVuYWJsZSB0byB3cml0ZSBzaGExIGZpbGVuYW1lICVzIgotbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INC30LDQv9C40YHQsCDQvdCwINGE0LDQudC70LAg0YHRitGBINGB0YPQvNC40YLQtSDQv9C+IFNIQTEg4oCeJXPigJwiCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJXMiCittc2dzdHIgItGE0LDQudC70YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LjRgdCw0L0iCiAKLSM6IHNoYTEtZmlsZS5jOjE1NDMKKyM6IHNoYTEtZmlsZS5jOjE3NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHNldCBwZXJtaXNzaW9uIHRvICclcyciCiBtc2dzdHIgItC/0YDQsNCy0LDRgtCwINC30LAg0LTQvtGB0YLRitC/INC00L4g4oCeJXPigJwg0L3QtSDQvNC+0LPQsNGCINC00LAg0LHRitC00LDRgiDQt9Cw0LTQsNC00LXQvdC4IgogCi0jOiBzaGExLWZpbGUuYzoxNTUwCisjOiBzaGExLWZpbGUuYzoxNzYwCiBtc2dpZCAiZmlsZSB3cml0ZSBlcnJvciIKIG1zZ3N0ciAi0LPRgNC10YjQutCwINC/0YDQuCDQt9Cw0L/QuNGBINC90LAg0YTQsNC50LsiCiAKLSM6IHNoYTEtZmlsZS5jOjE1NjkKLW1zZ2lkICJlcnJvciB3aGVuIGNsb3Npbmcgc2hhMSBmaWxlIgotbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INC30LDRgtCy0LDRgNGP0L3QtdGC0L4g0L3QsCDRhNCw0LnQu9CwINGB0YrRgSDRgdGD0LzQuNGC0LUg0L/QviBTSEExIgorIzogc2hhMS1maWxlLmM6MTc4MAorbXNnaWQgImVycm9yIHdoZW4gY2xvc2luZyBsb29zZSBvYmplY3QgZmlsZSIKK21zZ3N0ciAi0LPRgNC10YjQutCwINC/0YDQuCDQt9Cw0YLQstCw0YDRj9C90LXRgtC+INC90LAg0YTQsNC50LvQsCDRgSDQvdC10L/QsNC60LXRgtC40YDQsNC9INC+0LHQtdC60YIiCiAKLSM6IHNoYTEtZmlsZS5jOjE2MzUKKyM6IHNoYTEtZmlsZS5jOjE4NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5zdWZmaWNpZW50IHBlcm1pc3Npb24gZm9yIGFkZGluZyBhbiBvYmplY3QgdG8gcmVwb3NpdG9yeSBkYXRhYmFzZSAlcyIKIG1zZ3N0ciAiIgogItC90Y/QvNCwINC/0YDQsNCy0LAg0LfQsCDQtNC+0LHQsNCy0Y/QvdC1INC90LAg0L7QsdC10LrRgiDQutGK0Lwg0LHQsNC30LDRgtCwINC+0YIg0LTQsNC90L3QuCDQvdCwINGF0YDQsNC90LjQu9C40YnQtdGC0L4g4oCeJXPigJwiCiAKLSM6IHNoYTEtZmlsZS5jOjE2MzcKKyM6IHNoYTEtZmlsZS5jOjE4NDcKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBmaWxlIgogbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRitC30LTQsNC00LXQvSDQstGA0LXQvNC10L3QtdC9INGE0LDQudC7IgogCi0jOiBzaGExLWZpbGUuYzoxNjYxCi1tc2dpZCAidW5hYmxlIHRvIHdyaXRlIHNoYTEgZmlsZSIKLW1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/QuNGI0LUg0LLRitCyINGE0LDQudC70LAg0YHRitGBINGB0YPQvNC40YLQtSDQv9C+IFNIQTEiCisjOiBzaGExLWZpbGUuYzoxODcxCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGxvb3NlIG9iamVjdCBmaWxlIgorbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INC30LDQv9C40YHQsCDQvdCwINGE0LDQudC70LAg0YEg0L3QtdC/0LDQutC10YLQuNGA0LDQvSDQvtCx0LXQutGCIgogCi0jOiBzaGExLWZpbGUuYzoxNjY3CisjOiBzaGExLWZpbGUuYzoxODc3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBkZWZsYXRlIG5ldyBvYmplY3QgJXMgKCVkKSIKIG1zZ3N0ciAi0L3QvtCy0LjRj9GCINC+0LHQtdC60YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LrQvtC80L/RgNC10YHQuNGA0LAg0YEg4oCeZGVmbGF0ZeKAnDogJWQiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NzEKKyM6IHNoYTEtZmlsZS5jOjE4ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVmbGF0ZUVuZCBvbiBvYmplY3QgJXMgZmFpbGVkICglZCkiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQv9GA0LjQutC70Y7Rh9Cy0LDQvdC1INC90LAg4oCeZGVmbGF0ZeKAnCDQstGK0YDRhdGDIOKAniVz4oCcOiAlZCIKIAotIzogc2hhMS1maWxlLmM6MTY3NQorIzogc2hhMS1maWxlLmM6MTg4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb25mdXNlZCBieSB1bnN0YWJsZSBvYmplY3Qgc291cmNlIGRhdGEgZm9yICVzIgogbXNnc3RyICLQs9GA0LXRiNC60LAg0L/QvtGA0LDQtNC4INC90LXRgdGC0LDQsdC40LvQvdC40Y8g0LjQt9GC0L7Rh9C90LjQuiDQtNCw0L3QvdC4INC30LAg0L7QsdC10LrRgtC40YLQtSDigJ4lc+KAnCIKIAotIzogc2hhMS1maWxlLmM6MTY4NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjkxOAorIzogc2hhMS1maWxlLmM6MTg5NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjEwNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHV0aW1lKCkgb24gJXMiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQt9Cw0LTQsNCy0LDQvdC1INC90LAg0LLRgNC10LzQtSDQvdCwINC00L7RgdGC0YrQvy/RgdGK0LfQtNCw0LLQsNC90LUg0YfRgNC10Lcg4oCedXRpbWXigJwg0L3QsCDigJ4lc+KAnCIKIAotIzogc2hhMS1maWxlLmM6MTc2MAorIzogc2hhMS1maWxlLmM6MTk3MgogIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3QgcmVhZCBzaGExX2ZpbGUgZm9yICVzIgotbXNnc3RyICLRhNCw0LnQu9GK0YIg0YHRitGBINGB0YPQvNC40YLQtSDQv9C+IFNIQTEg0L3QsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKK21zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgZm9yICVzIgorbXNnc3RyICLQvtCx0LXQutGC0YrRgiDQt9CwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQvtGH0LXRgtC1IgogCi0jOiBzaGExLWZpbGUuYzoxODA1CisjOiBzaGExLWZpbGUuYzoyMDExCiBtc2dpZCAiY29ycnVwdCBjb21taXQiCiBtc2dzdHIgItC/0L7QstGA0LXQtNC10L3QviDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBzaGExLWZpbGUuYzoxODEzCisjOiBzaGExLWZpbGUuYzoyMDE5CiBtc2dpZCAiY29ycnVwdCB0YWciCiBtc2dzdHIgItC/0L7QstGA0LXQtNC10L0g0LXRgtC40LrQtdGCIgogCi0jOiBzaGExLWZpbGUuYzoxOTEyCisjOiBzaGExLWZpbGUuYzoyMTE5CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYWQgZXJyb3Igd2hpbGUgaW5kZXhpbmcgJXMiCiBtc2dzdHIgItCz0YDQtdGI0LrQsCDQv9GA0Lgg0YfQtdGC0LXQvdC1INC/0L4g0LLRgNC10LzQtSDQvdCwINC40L3QtNC10LrRgdC40YDQsNC90LUg0L3QsCDigJ4lc+KAnCIKIAotIzogc2hhMS1maWxlLmM6MTkxNQorIzogc2hhMS1maWxlLmM6MjEyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJzaG9ydCByZWFkIHdoaWxlIGluZGV4aW5nICVzIgogbXNnc3RyICLQvdC10L/RitC70L3QviDQv9GA0L7Rh9C40YLQsNC90LUg0L/QviDQstGA0LXQvNC1INC90LAg0LjQvdC00LXQutGB0LjRgNCw0L3QtSDQvdCwIOKAniVz4oCcIgogCi0jOiBzaGExLWZpbGUuYzoxOTg4IHNoYTEtZmlsZS5jOjE5OTcKKyM6IHNoYTEtZmlsZS5jOjIxOTUgc2hhMS1maWxlLmM6MjIwNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZmFpbGVkIHRvIGluc2VydCBpbnRvIGRhdGFiYXNlIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQstC80YrQutC90LUg0LIg0LHQsNC30LDRgtCwINC+0YIg0LTQsNC90L3QuCIKIAotIzogc2hhMS1maWxlLmM6MjAwMworIzogc2hhMS1maWxlLmM6MjIxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogdW5zdXBwb3J0ZWQgZmlsZSB0eXBlIgogbXNnc3RyICLQvdC10L/QvtC00LTRitGA0LbQsNC9INCy0LjQtCDRhNCw0LnQuzog4oCeJXPigJwiCiAKLSM6IHNoYTEtZmlsZS5jOjIwMjcKKyM6IHNoYTEtZmlsZS5jOjIyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgb2JqZWN0IgogbXNnc3RyICLigJ4lc+KAnCDQtSDQvdC10L/RgNCw0LLQuNC70LXQvSDQvtCx0LXQutGCIgogCi0jOiBzaGExLWZpbGUuYzoyMDI5CisjOiBzaGExLWZpbGUuYzoyMjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkICclcycgb2JqZWN0IgogbXNnc3RyICLigJ4lc+KAnCDQtSDQvdC10L/RgNCw0LLQuNC70LXQvSDQvtCx0LXQutGCINC+0YIg0LLQuNC0IOKAniVz4oCcIgogCi0jOiBzaGExLWZpbGUuYzoyMDU2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NAorIzogc2hhMS1maWxlLmM6MjI2NCBidWlsdGluL2luZGV4LXBhY2suYzoxNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMiCiBtc2dzdHIgItC+0LHQtdC60YLRitGCIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LLQvtGA0LXQvSIKIAotIzogc2hhMS1maWxlLmM6MjIyNiBzaGExLWZpbGUuYzoyMjc4CisjOiBzaGExLWZpbGUuYzoyNDU0IHNoYTEtZmlsZS5jOjI1MDcKICMsIGMtZm9ybWF0Ci1tc2dpZCAic2hhMSBtaXNtYXRjaCBmb3IgJXMgKGV4cGVjdGVkICVzKSIKLW1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90LAg0YHRg9C80LAg0L/QviBTSEExINC30LAg4oCeJXPigJwgKNGC0YDRj9Cx0LLQsCDQtNCwINC1ICVzKSIKK21zZ2lkICJoYXNoIG1pc21hdGNoIGZvciAlcyAoZXhwZWN0ZWQgJXMpIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QsCDQutC+0L3RgtGA0L7Qu9C90LAg0YHRg9C80LAg0LfQsCDigJ4lc+KAnCAo0YLRgNGP0LHQstCwINC00LAg0LUgJXMpIgogCi0jOiBzaGExLWZpbGUuYzoyMjUwCisjOiBzaGExLWZpbGUuYzoyNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtbWFwICVzIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDigJ5tbWFw4oCcINCy0YrRgNGF0YMg4oCeJXPigJwiCiAKLSM6IHNoYTEtZmlsZS5jOjIyNTUKKyM6IHNoYTEtZmlsZS5jOjI0ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayBoZWFkZXIgb2YgJXMiCiBtc2dzdHIgItC30LDQs9C70LDQstC90LDRgtCwINGH0LDRgdGCINC90LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGA0LDQt9C/0LDQutC10YLQuNGA0LDQvdCwIgogCi0jOiBzaGExLWZpbGUuYzoyMjYxCisjOiBzaGExLWZpbGUuYzoyNDg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBoZWFkZXIgb2YgJXMiCiBtc2dzdHIgItC30LDQs9C70LDQstC90LDRgtCwINGH0LDRgdGCINC90LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INCw0L3QsNC70LjQt9C40YDQsNC90LAiCiAKLSM6IHNoYTEtZmlsZS5jOjIyNzIKKyM6IHNoYTEtZmlsZS5jOjI1MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayBjb250ZW50cyBvZiAlcyIKIG1zZ3N0ciAi0YHRitC00YrRgNC20LDQvdC40LXRgtC+INC90LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGA0LDQt9C/0LDQutC10YLQuNGA0LDQvdC+IgogCi0jOiBzaGExLW5hbWUuYzo0NzYKKyM6IHNoYTEtbmFtZS5jOjQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJzaG9ydCBTSEExICVzIGlzIGFtYmlndW91cyIKIG1zZ3N0ciAi0LrRitGB0LjRj9GCIFNIQTEg4oCeJXPigJwg0L3QtSDQtSDQtdC00L3QvtC30L3QsNGH0LXQvSIKIAotIzogc2hhMS1uYW1lLmM6NDg3CisjOiBzaGExLW5hbWUuYzo0OTcKIG1zZ2lkICJUaGUgY2FuZGlkYXRlcyBhcmU6IgogbXNnc3RyICLQktGK0LfQvNC+0LbQvdC+0YHRgtC40YLQtSDRgdCwOiIKIAotIzogc2hhMS1uYW1lLmM6NzcwCisjOiBzaGExLW5hbWUuYzo3OTYKIG1zZ2lkICIiCiAiR2l0IG5vcm1hbGx5IG5ldmVyIGNyZWF0ZXMgYSByZWYgdGhhdCBlbmRzIHdpdGggNDAgaGV4IGNoYXJhY3RlcnNcbiIKICJiZWNhdXNlIGl0IHdpbGwgYmUgaWdub3JlZCB3aGVuIHlvdSBqdXN0IHNwZWNpZnkgNDAtaGV4LiBUaGVzZSByZWZzXG4iCiAibWF5IGJlIGNyZWF0ZWQgYnkgbWlzdGFrZS4gRm9yIGV4YW1wbGUsXG4iCiAiXG4iCi0iICBnaXQgY2hlY2tvdXQgLWIgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCisiICBnaXQgc3dpdGNoIC1jICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgogIlxuIgogIndoZXJlIFwiJGJyXCIgaXMgc29tZWhvdyBlbXB0eSBhbmQgYSA0MC1oZXggcmVmIGlzIGNyZWF0ZWQuIFBsZWFzZVxuIgogImV4YW1pbmUgdGhlc2UgcmVmcyBhbmQgbWF5YmUgZGVsZXRlIHRoZW0uIFR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieVxuIgogInJ1bm5pbmcgXCJnaXQgY29uZmlnIGFkdmljZS5vYmplY3ROYW1lV2FybmluZyBmYWxzZVwiIgogbXNnc3RyICIiCi0i0J/RgNC4INC90L7RgNC80LDQu9C90LAg0YDQsNCx0L7RgtCwIEdpdCDQvdC40LrQvtCz0LAg0L3QtSDRgdGK0LfQtNCw0LLQsCDRg9C60LDQt9Cw0YLQtdC70LgsINC60L7QuNGC0L4g0LfQsNCy0YrRgNGI0LLQsNGCINGBIDQwXG4iCi0i0YjQtdGB0YLQvdCw0LTQtdGB0LXRgtC40YfQvdC4INC30L3QsNC60LAsINC30LDRidC+0YLQviDRgdGC0LDQvdC00LDRgNGC0L3QviDRgtC1INGJ0LUg0LHRitC00LDRgiDQv9GA0LXRgdC60LDRh9Cw0L3QuC5cbiIKKyLQn9GA0Lgg0L3QvtGA0LzQsNC70L3QsCDRgNCw0LHQvtGC0LAgR2l0INC90LjQutC+0LPQsCDQvdC1INGB0YrQt9C00LDQstCwINGD0LrQsNC30LDRgtC10LvQuCwg0LrQvtC40YLQviDQt9Cw0LLRitGA0YjQstCw0YJcbiIKKyLRgSA0MCDRiNC10YHRgtC90LDQtNC10YHQtdGC0LjRh9C90Lgg0LfQvdCw0LrQsCwg0LfQsNGJ0L7RgtC+INGB0YLQsNC90LTQsNGA0YLQvdC+INGC0LUg0YnQtSDQsdGK0LTQsNGCINC/0YDQtdGB0LrQsNGH0LDQvdC4LlxuIgogItCS0YrQt9C80L7QttC90L4g0LUg0YLQsNC60LjQstCwINGD0LrQsNC30LDRgtC10LvQuCDQtNCwINGB0LAg0YHRitC30LTQsNC00LXQvdC4INGB0LvRg9GH0LDQudC90L4uICDQndCw0L/RgNC40LzQtdGAOlxuIgogIlxuIgotIiAgICBnaXQgY2hlY2tvdXQgLWIgJEJSQU5DSCAkKGdpdCByZXYtcGFyc2XigKYpXG4iCisiICAgIGdpdCBzd2l0Y2ggLWMgJEJSQU5DSCAkKGdpdCByZXYtcGFyc2Ug4oCmKVxuIgogIlxuIgotItC60YrQtNC10YLQviDRgdGC0L7QudC90L7RgdGC0YLQsCDQvdCwINC/0YDQvtC80LXQvdC70LjQstCw0YLQsCDQvdCwINGB0YDQtdC00LDRgtCwIEJSQU5DSCDQtSDQv9GA0LDQt9C90LAsINC/0YDQuCDQutC+0LXRgtC+INGB0LVcbiIKLSLRgdGK0LfQtNCw0LLQsCDQv9C+0LTQvtCx0LXQvSDRg9C60LDQt9Cw0YLQtdC7LiAg0J/RgNC10LPQu9C10LTQsNC50YLQtSDRgtC10LfQuCDRg9C60LDQt9Cw0YLQtdC70Lgg0Lgg0LPQuCDQuNC30YLRgNC40LnRgtC1LiAg0JzQvtC20LXRgtC1ICIKLSLQtNCwXG4iCi0i0YHQv9GA0LXRgtC1INGC0L7QstCwINGB0YrQvtCx0YnQtdC90LjQtSDQutCw0YLQviDQuNC30L/RitC70L3QuNGC0LUg0LrQvtC80LDQvdC00LDRgtCwOlxuIgotIuKAnmdpdCBjb25maWcgYWR2aWNlLm9iamVjdE5hbWVXYXJuaW5nIGZhbHNl4oCcIgorItC60YrQtNC10YLQviDRgdGC0L7QudC90L7RgdGC0YLQsCDQvdCwINC/0YDQvtC80LXQvdC70LjQstCw0YLQsCDQvdCwINGB0YDQtdC00LDRgtCwIEJSQU5DSCDQtSDQv9GA0LDQt9C90LAsINC/0YDQuCDQutC+0LXRgtC+XG4iCisi0YHQtSDRgdGK0LfQtNCw0LLQsCDQv9C+0LTQvtCx0LXQvSDRg9C60LDQt9Cw0YLQtdC7LiAg0J/RgNC10LPQu9C10LTQsNC50YLQtSDRgtC10LfQuCDRg9C60LDQt9Cw0YLQtdC70Lgg0Lgg0LPQuCDQuNC30YLRgNC40LnRgtC1LlxuIgorItCX0LAg0LTQsCDQuNC30LrQu9GO0YfQuNGC0LUg0YLQvtCy0LAg0YHRitC+0LHRidC10L3QuNC1LCDQuNC30L/RitC70L3QtdGC0LU6XG4iCisiXG4iCisiICAgIGdpdCBjb25maWcgYWR2aWNlLm9iamVjdE5hbWVXYXJuaW5nIGZhbHNlIgogCi0jOiBzdWJtb2R1bGUuYzoxMTYgc3VibW9kdWxlLmM6MTQ1CisjOiBzaGExLW5hbWUuYzo5MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciAnJS4qcycgb25seSBnb2VzIGJhY2sgdG8gJXMiCittc2dzdHIgItC20YPRgNC90LDQu9GK0YIg0LfQsCDigJ4lLipz4oCcINGB0YLQuNCz0LAg0YHQsNC80L4g0LTQviDigJ4lc+KAnCIKKworIzogc2hhMS1uYW1lLmM6OTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImxvZyBmb3IgJyUuKnMnIG9ubHkgaGFzICVkIGVudHJpZXMiCittc2dzdHIgItC20YPRgNC90LDQu9GK0YIg0LfQsCDigJ4lLipz4oCcINGB0YrQtNGK0YDQttCwINGB0LDQvNC+ICVkINC30LDQv9C40YHQsCIKKworIzogc2hhMS1uYW1lLmM6MTY4OQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gJyUuKnMnIgorbXNnc3RyICLQv9GK0YLRj9GCIOKAniVz4oCcINGB0YrRidC10YHRgtCy0YPQstCwINC90LAg0LTQuNGB0LrQsCwg0L3QviDQvdC1INC4INCyIOKAniUuKnPigJwiCisKKyM6IHNoYTEtbmFtZS5jOjE2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBleGlzdHMsIGJ1dCBub3QgJyVzJ1xuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnJS4qczolcycgYWthICclLipzOi4vJXMnPyIKK21zZ3N0ciAiIgorItC/0YrRgtGP0YIg4oCeJXPigJwg0YHRitGJ0LXRgdGC0LLRg9Cy0LAg0L3QsCDQtNC40YHQutCwLCDQvdC+INC90LUg0LUg0LIg4oCeJXPigJxcbiIKKyLQn9GA0L7QsdCy0LDQudGC0LUg0YEg4oCeJS4qczolc+KAnCwg0LrQvtC10YLQviDQtSDRgdGK0YnQvtGC0L4g0LrQsNGC0L4g4oCeJS4qczouLyVz4oCcLiIKKworIzogc2hhMS1uYW1lLmM6MTcwNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZG9lcyBub3QgZXhpc3QgaW4gJyUuKnMnIgorbXNnc3RyICLQv9GK0YLRj9GCIOKAniVz4oCcINC90LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LAg0LIg4oCeJS4qc+KAnCIKKworIzogc2hhMS1uYW1lLmM6MTczMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGlzIGluIHRoZSBpbmRleCwgYnV0IG5vdCBhdCBzdGFnZSAlZFxuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnOiVkOiVzJz8iCittc2dzdHIgIiIKKyLQv9GK0YLRj9GCIOKAniVz4oCcINC1INCyINC40L3QtNC10LrRgdCwLCDQvdC+INC90LUg0LLQtdGA0YHQuNGPICVkXG4iCisi0J/RgNC+0LHQstCw0LnRgtC1INGBIOKAniVkOiVz4oCcLiIKKworIzogc2hhMS1uYW1lLmM6MTc0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGlzIGluIHRoZSBpbmRleCwgYnV0IG5vdCAnJXMnXG4iCisiaGludDogRGlkIHlvdSBtZWFuICc6JWQ6JXMnIGFrYSAnOiVkOi4vJXMnPyIKK21zZ3N0ciAiIgorItC/0YrRgtGP0YIg4oCeJXPigJwg0LUg0LIg0LjQvdC00LXQutGB0LAsINC90L4g0L3QtSDQsiDigJ4lc+KAnFxuIgorItCf0YDQvtCx0LLQsNC50YLQtSDRgSDigJ4lZDolc+KAnCwg0LrQvtC10YLQviDQtSDRgdGK0YnQvtGC0L4g0LrQsNGC0L4g4oCeJWQ6Li8lc+KAnC4iCisKKyM6IHNoYTEtbmFtZS5jOjE3NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGV4aXN0cyBvbiBkaXNrLCBidXQgbm90IGluIHRoZSBpbmRleCIKK21zZ3N0ciAi0L/RitGC0Y/RgiDigJ4lc+KAnCDRgdGK0YnQtdGB0YLQstGD0LLQsCDQvdCwINC00LjRgdC60LAsINC90L4g0L3QtSDQtSDQsiDQuNC90LTQtdC60YHQsCIKKworIzogc2hhMS1uYW1lLmM6MTc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZG9lcyBub3QgZXhpc3QgKG5laXRoZXIgb24gZGlzayBub3IgaW4gdGhlIGluZGV4KSIKK21zZ3N0ciAi0L/RitGC0Y/RgiDigJ4lc+KAnCDQvdC1INGB0YrRidC10YHRgtCy0YPQstCwINC90LjRgtC+INC90LAg0LTQuNGB0LrQsCwg0L3QuNGC0L4g0LIg0LjQvdC00LXQutGB0LAiCisKKyM6IHNoYTEtbmFtZS5jOjE3NzEKK21zZ2lkICJyZWxhdGl2ZSBwYXRoIHN5bnRheCBjYW4ndCBiZSB1c2VkIG91dHNpZGUgd29ya2luZyB0cmVlIgorbXNnc3RyICLQvtGC0L3QvtGB0LjRgtC10LvQtdC9INC/0YrRgiDQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9C+0LvQt9Cy0LAg0LjQt9Cy0YrQvSDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKKworIzogc2hhMS1uYW1lLmM6MTkwOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG9iamVjdCBuYW1lICclLipzJy4iCittc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdC+INC40LzQtSDQvdCwINC+0LHQtdC60YI6IOKAniUuKnPigJwiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBnaWJpYnl0ZQorIzogc3RyYnVmLmM6ODM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEdpQiIKK21zZ3N0ciAiJXUuJTIuMnUgR2lCIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggZ2liaWJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgR2lCL3MiCittc2dzdHIgIiV1LiUyLjJ1IEdpQi9zIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggbWViaWJ5dGUKKyM6IHN0cmJ1Zi5jOjg0NworIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBNaUIiCittc2dzdHIgIiV1LiUyLjJ1IE1pQiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IG1lYmlieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IE1pQi9zIgorbXNnc3RyICIldS4lMi4ydSBNaUIvcyIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGtpYmlieXRlCisjOiBzdHJidWYuYzo4NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgS2lCIgorbXNnc3RyICIldS4lMi4ydSBLaUIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBraWJpYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjg1OAorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBLaUIvcyIKK21zZ3N0ciAiJXUuJTIuMnUgS2lCL3MiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBieXRlCisjOiBzdHJidWYuYzo4NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUgYnl0ZSIKK21zZ2lkX3BsdXJhbCAiJXUgYnl0ZXMiCittc2dzdHJbMF0gIiV1INCx0LDQudGCIgorbXNnc3RyWzFdICIldSDQsdCw0LnRgtCwIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjg2NgorIywgYy1mb3JtYXQKK21zZ2lkICIldSBieXRlL3MiCittc2dpZF9wbHVyYWwgIiV1IGJ5dGVzL3MiCittc2dzdHJbMF0gIiV1INCx0LDQudGCL9GB0LXQui4iCittc2dzdHJbMV0gIiV1INCx0LDQudGC0LAv0YHQtdC6LiIKKworIzogc3RyYnVmLmM6MTE2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZWRpdCAnJXMnIgorbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDRgNC10LTQsNC60YLQuNGA0LAiCisKKyM6IHN1Ym1vZHVsZS5jOjExNCBzdWJtb2R1bGUuYzoxNDMKIG1zZ2lkICJDYW5ub3QgY2hhbmdlIHVubWVyZ2VkIC5naXRtb2R1bGVzLCByZXNvbHZlIG1lcmdlIGNvbmZsaWN0cyBmaXJzdCIKIG1zZ3N0ciAiIgogItCd0LXRgdC70LXRgtC40YLQtSDRhNCw0LnQu9C+0LLQtSDigJ4uZ2l0bW9kdWxlc+KAnCDQvdC1INC80L7Qs9Cw0YIg0LTQsCDQsdGK0LTQsNGCINC/0YDQvtC80LXQvdGP0L3QuC4gINCf0YrRgNCy0L4gIgogItC60L7RgNC40LPQuNGA0LDQudGC0LUg0LrQvtC90YTQu9C40LrRgtC40YLQtSIKIAotIzogc3VibW9kdWxlLmM6MTIwIHN1Ym1vZHVsZS5jOjE0OQorIzogc3VibW9kdWxlLmM6MTE4IHN1Ym1vZHVsZS5jOjE0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCBzZWN0aW9uIGluIC5naXRtb2R1bGVzIHdoZXJlIHBhdGg9JXMiCiBtc2dzdHIgItCS0YrQsiDRhNCw0LnQu9CwIOKAni5naXRtb2R1bGVz4oCcINC70LjQv9GB0LLQsCDRgNCw0LfQtNC10Lsg0LfQsCDQtNC40YDQtdC60YLQvtGA0LjRjyDigJ5wYXRoPSVz4oCcIgogCi0jOiBzdWJtb2R1bGUuYzoxNTYKKyM6IHN1Ym1vZHVsZS5jOjE1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIC5naXRtb2R1bGVzIGVudHJ5IGZvciAlcyIKIG1zZ3N0ciAi0JfQsNC/0LjRgdGK0YIg4oCeJXPigJwg0LLRitCyINGE0LDQudC70LAg4oCeLmdpdG1vZHVsZXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40LfRgtGA0LjRgiIKIAotIzogc3VibW9kdWxlLmM6MTY3CisjOiBzdWJtb2R1bGUuYzoxNjUKIG1zZ2lkICJzdGFnaW5nIHVwZGF0ZWQgLmdpdG1vZHVsZXMgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LTQvtCx0LDQstGP0L3QtSDQvdCwINC/0YDQvtC80LXQvdC10L3QuNGPINGE0LDQudC7IOKAni5naXRtb2R1bGVz4oCcINCyINC40L3QtNC10LrRgdCwIgogCi0jOiBzdWJtb2R1bGUuYzozMjkKKyM6IHN1Ym1vZHVsZS5jOjMyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbiB1bnBvcHVsYXRlZCBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAi0LIg0L3QtdC/0L7QtNCz0L7RgtCy0LXQvdC40Y8g0L/QvtC00LzQvtC00YPQuyDigJ4lc+KAnCIKIAotIzogc3VibW9kdWxlLmM6MzYwCisjOiBzdWJtb2R1bGUuYzozNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUGF0aHNwZWMgJyVzJyBpcyBpbiBzdWJtb2R1bGUgJyUuKnMnIgogbXNnc3RyICLQn9GK0YLRj9GCIOKAniVz4oCcINC1INCyINC/0L7QtNC80L7QtNGD0LvQsCDigJ4lLipz4oCcIgogCi0jOiBzdWJtb2R1bGUuYzo4NTcKKyM6IHN1Ym1vZHVsZS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS1pZ25vcmUtc3VibW9kdWxlcyBhcmd1bWVudDogJXMiCittc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INCw0YDQs9GD0LzQtdC90YIg0LfQsCDigJ4tLWlnbm9yZS1zdWJtb2R1bGVz4oCcOiDigJ4lc+KAnCIKKworIzogc3VibW9kdWxlLmM6ODE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTdWJtb2R1bGUgaW4gY29tbWl0ICVzIGF0IHBhdGg6ICclcycgY29sbGlkZXMgd2l0aCBhIHN1Ym1vZHVsZSBuYW1lZCB0aGUgIgorInNhbWUuIFNraXBwaW5nIGl0LiIKK21zZ3N0ciAiIgorItCf0L7QtNC80L7QtNGD0LvRitGCINC/0YDQuCDQv9C+0LTQsNCy0LDQvdC1ICVzINC90LAg0L/RitGC0Y8g4oCeJXPigJwg0LUg0YDQsNC30LvQuNGH0LXQvSDQvtGCINC00YDRg9Cz0LjRjyDQvNC+0LTRg9C7INGB0YrRgSAiCisi0YHRitGJ0L7RgtC+INC40LzQtSwg0LfQsNGC0L7QstCwINC/0YrRgNCy0LjRj9GCINGB0LUg0L/RgNC10YHQutCw0YfQsC4iCisKKyM6IHN1Ym1vZHVsZS5jOjkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgZW50cnkgJyVzJyAoJXMpIGlzIGEgJXMsIG5vdCBhIGNvbW1pdCIKIG1zZ3N0ciAi0LfQsNC/0LjRgdGK0YIg0LfQsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwgKCVzKSDQtSAlcywg0LAg0L3QtSDQv9C+0LTQsNCy0LDQvdC1ISIKIAotIzogc3VibW9kdWxlLmM6MTA5NyBidWlsdGluL2JyYW5jaC5jOjY1NiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk4NQorIzogc3VibW9kdWxlLmM6OTk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3VsZCBub3QgcnVuICdnaXQgcmV2LWxpc3QgPGNvbW1pdHM+IC0tbm90IC0tcmVtb3RlcyAtbiAxJyBjb21tYW5kIGluICIKKyJzdWJtb2R1bGUgJXMiCittc2dzdHIgIiIKKyLQmtC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0IHJldi1saXN0INCf0J7QlNCQ0JLQkNCd0JjQryAtLW5vdCAtLXJlbW90ZXMgLW4gMeKAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSAiCisi0LjQt9C/0YrQu9C90Lgg0LIg0L/QvtC00LzQvtC00YPQu9CwIOKAniVz4oCcIgorCisjOiBzdWJtb2R1bGUuYzoxMTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInByb2Nlc3MgZm9yIHN1Ym1vZHVsZSAnJXMnIGZhaWxlZCIKK21zZ3N0ciAi0L/RgNC+0YbQtdGB0YrRgiDQt9CwINC/0L7QtNC80L7QtNGD0LvQsCDigJ4lc+KAnCDQt9Cw0LLRitGA0YjQuCDQvdC10YPRgdC/0LXRiNC90L4iCisKKyM6IHN1Ym1vZHVsZS5jOjExNDcgYnVpbHRpbi9icmFuY2guYzo2ODAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwNDUKIG1zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSBIRUFEIGFzIGEgdmFsaWQgcmVmLiIKIG1zZ3N0ciAi0J3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7RgtC60YDQuNC1INC60YrQvCDQutCw0LrQstC+INGB0L7Rh9C4INGD0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwiCiAKLSM6IHN1Ym1vZHVsZS5jOjE0MDQKKyM6IHN1Ym1vZHVsZS5jOjExNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHVzaGluZyBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICLQmNC30YLQu9Cw0YHQutCy0LDQvdC1INC90LAg0L/QvtC00LzQvtC00YPQu9CwIOKAniVz4oCcXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjExNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIHB1c2ggc3VibW9kdWxlICclcydcbiIKK21zZ3N0ciAi0J/QvtC00LzQvtC00YPQu9GK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40LfRgtC70LDRgdC60LDQvVxuIgorCisjOiBzdWJtb2R1bGUuYzoxNDUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZldGNoaW5nIHN1Ym1vZHVsZSAlcyVzXG4iCittc2dzdHIgItCU0L7RgdGC0LDQstGP0L3QtSDQvdCwINC/0L7QtNC80L7QtNGD0LvQsCDigJ4lcyVz4oCcXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjE0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGFjY2VzcyBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICLQn9C+0LTQvNC+0LTRg9C70YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LTQvtGB0YLRitC/0LXQvVxuIgorCisjOiBzdWJtb2R1bGUuYzoxNjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFcnJvcnMgZHVyaW5nIHN1Ym1vZHVsZSBmZXRjaDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorItCT0YDQtdGI0LrQuCDQv9GA0Lgg0LTQvtGB0YLQsNCy0Y/QvdC1INC90LAg0L/QvtC00LzQvtC00YPQuzpcbiIKKyIlcyIKKworIzogc3VibW9kdWxlLmM6MTY2MgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIG5vdCByZWNvZ25pemVkIGFzIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LUg0YXRgNCw0L3QuNC70LjRidC1INC90LAgZ2l0IgogCi0jOiBzdWJtb2R1bGUuYzoxNTQyCisjOiBzdWJtb2R1bGUuYzoxNjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBydW4gJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgaW4gc3VibW9kdWxlICVzIgorbXNnc3RyICIiCisi0JrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCBzdGF0dXMgLS1wb3JjZWxhaW49MuKAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQuNC30L/RitC70L3QuCDQsiDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwiCisKKyM6IHN1Ym1vZHVsZS5jOjE3MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgZmFpbGVkIGluIHN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiIgorItC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgc3RhdHVzIC0tcG9yY2VsYWluPTLigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9C/0YrQu9C90Lgg0LIg0L/QvtC00LzQvtC00YPQu9CwIOKAniVz4oCcIgorCisjOiBzdWJtb2R1bGUuYzoxODAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGFydCAnZ2l0IHN0YXR1cycgaW4gc3VibW9kdWxlICclcyciCiBtc2dzdHIgItC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgc3RhdHVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC40LfQv9GK0LvQvdC4INCyINC/0L7QtNC80L7QtNGD0LvQsCDigJ4lc+KAnCIKIAotIzogc3VibW9kdWxlLmM6MTU1NQorIzogc3VibW9kdWxlLmM6MTgxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcnVuICdnaXQgc3RhdHVzJyBpbiBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAi0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCBzdGF0dXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9C/0YrQu9C90Lgg0LIg0L/QvtC00LzQvtC00YPQu9CwIOKAniVz4oCcIgogCi0jOiBzdWJtb2R1bGUuYzoxNjQ4CisjOiBzdWJtb2R1bGUuYzoxODI4CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCB1bnNldCBjb3JlLndvcmt0cmVlIHNldHRpbmcgaW4gc3VibW9kdWxlICclcyciCittc2dzdHIgItCd0LDRgdGC0YDQvtC50LrQsNGC0LAg4oCeY29yZS53b3JrdHJlZeKAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQuNC30YLRgNC40LUg0LIg0L/QvtC00LzQvtC00YPQu9CwIOKAniVz4oCcIgorCisjOiBzdWJtb2R1bGUuYzoxODU1IHN1Ym1vZHVsZS5jOjIxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdCwINC+0LHRgNCw0LHQvtGC0LrQsCDQvdCwINC/0L7QtNC00LjRgNC10LrRgtC+0YDQuNC40YLQtSDQsiDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwiCisKKyM6IHN1Ym1vZHVsZS5jOjE4NzYKK21zZ2lkICJjb3VsZCBub3QgcmVzZXQgc3VibW9kdWxlIGluZGV4IgorbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LfQsNC90YPQu9GP0LLQsNC90LUg0L3QsCDQuNC90LTQtdC60YHQsCDQvdCwINC/0L7QtNC80L7QtNGD0LvQsCIKKworIzogc3VibW9kdWxlLmM6MTkxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgJyVzJyBoYXMgZGlydHkgaW5kZXgiCiBtc2dzdHIgItC40L3QtNC10LrRgdGK0YIg0L3QsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwg0L3QtSDQtSDRh9C40YHRgiIKIAotIzogc3VibW9kdWxlLmM6MTcwMAorIzogc3VibW9kdWxlLmM6MTk3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyBjb3VsZCBub3QgYmUgdXBkYXRlZC4iCiBtc2dzdHIgItCf0L7QtNC80L7QtNGD0LvRitGCIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0LHQvdC+0LLQuC4iCiAKLSM6IHN1Ym1vZHVsZS5jOjE3NDcKKyM6IHN1Ym1vZHVsZS5jOjIwMzgKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VibW9kdWxlIGdpdCBkaXIgJyVzJyBpcyBpbnNpZGUgZ2l0IGRpciAnJS4qcyciCittc2dzdHIgIuKAniVz4oCcICjQtNC40YDQtdC60YLQvtGA0LjRjyDQvdCwINC/0L7QtNC80L7QtNGD0LspINC1INCyINC00LjRgNC10LrRgtC+0YDQuNGP0YLQsCDQvdCwIGdpdDog4oCeJS4qc+KAnCIKKworIzogc3VibW9kdWxlLmM6MjA1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicmVsb2NhdGVfZ2l0ZGlyIGZvciBzdWJtb2R1bGUgJyVzJyB3aXRoIG1vcmUgdGhhbiBvbmUgd29ya3RyZWUgbm90IHN1cHBvcnRlZCIKQEAgLTYyMDQsMTIgKzg0MDksMTcgQEAKICLQvdC1INGB0LUg0L/QvtC00LTRitGA0LbQsCDigJ5yZWxvY2F0ZV9naXRkaXLigJwg0LfQsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwsINC60L7QudGC0L4g0LjQvNCwINC/0L7QstC10YfQtSDQvtGCINC10LTQvdC+ICIKICLRgNCw0LHQvtGC0L3QviDQtNGK0YDQstC+IgogCi0jOiBzdWJtb2R1bGUuYzoxNzU5IHN1Ym1vZHVsZS5jOjE4MTUKKyM6IHN1Ym1vZHVsZS5jOjIwNzEgc3VibW9kdWxlLmM6MjEzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9va3VwIG5hbWUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICLQuNC80LXRgtC+INC90LAg0L/QvtC00LzQvtC00YPQu9CwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvdCw0LzQtdGA0LXQvdC+IgogCi0jOiBzdWJtb2R1bGUuYzoxNzY2CisjOiBzdWJtb2R1bGUuYzoyMDc1CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZnVzaW5nIHRvIG1vdmUgJyVzJyBpbnRvIGFuIGV4aXN0aW5nIGdpdCBkaXIiCittc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQtdC80LXRgdGC0Lgg0LIg0YHRitGJ0LXRgdGC0LLRg9Cy0LDRidCwINC00LjRgNC10LrRgtC+0YDQuNGPINC90LAgZ2l0IgorCisjOiBzdWJtb2R1bGUuYzoyMDgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJNaWdyYXRpbmcgZ2l0IGRpcmVjdG9yeSBvZiAnJXMlcycgZnJvbVxuIgpAQCAtNjIyMCw0MiArODQzMCwzNyBAQAogIuKAniVz4oCcINC60YrQvFxuIgogIuKAniVz4oCcXG4iCiAKLSM6IHN1Ym1vZHVsZS5jOjE4NTAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKLW1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdCwINC+0LHRgNCw0LHQvtGC0LrQsCDQvdCwINC/0L7QtNC00LjRgNC10LrRgtC+0YDQuNC40YLQtSDQsiDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwiCi0KLSM6IHN1Ym1vZHVsZS5jOjE4OTQKKyM6IHN1Ym1vZHVsZS5jOjIyMDkKIG1zZ2lkICJjb3VsZCBub3Qgc3RhcnQgbHMtZmlsZXMgaW4gLi4iCiBtc2dzdHIgIuKAnmxzLXN0YXTigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0YHRgtCw0YDRgtC40YDQsCDQsiDigJ4uLuKAnCIKIAotIzogc3VibW9kdWxlLmM6MTkzMworIzogc3VibW9kdWxlLmM6MjI0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJscy10cmVlIHJldHVybmVkIHVuZXhwZWN0ZWQgcmV0dXJuIGNvZGUgJWQiCiBtc2dzdHIgIuKAnmxzLXRyZWXigJwg0LfQsNCy0YrRgNGI0Lgg0YEg0L3QtdC+0YfQsNC60LLQsNC9INC40LfRhdC+0LTQtdC9INC60L7QtDogJWQiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzIKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3Jpbmcgc3VzcGljaW91cyBzdWJtb2R1bGUgbmFtZTogJXMiCiBtc2dzdHIgItC40LPQvdC+0YDQuNGA0LDQvdC1INC90LAg0L/QvtC00L7Qt9GA0LjRgtC10LvQvdC+INC40LzQtSDQvdCwINC/0L7QtNC80L7QtNGD0Ls6IOKAniVz4oCcIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6Mjk2CisjOiBzdWJtb2R1bGUtY29uZmlnLmM6MzAzCiBtc2dpZCAibmVnYXRpdmUgdmFsdWVzIG5vdCBhbGxvd2VkIGZvciBzdWJtb2R1bGUuZmV0Y2hqb2JzIgogbXNnc3RyICLQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAnnN1Ym1vZHVsZS5mZXRjaGpvYnPigJwg0L3QtSDQv9GA0LjQtdC80LAg0L7RgtGA0LjRhtCw0YLQtdC70L3QuCDRgdGC0L7QudC90L7RgdGC0LgiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzozOTAKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo0MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgJyVzJyB3aGljaCBtYXkgYmUgaW50ZXJwcmV0ZWQgYXMgYSBjb21tYW5kLWxpbmUgb3B0aW9uOiAlcyIKIG1zZ3N0ciAiIgogIuKAniVz4oCcINGB0LUg0L/RgNC10YHQutCw0YfQsCwg0LfQsNGJ0L7RgtC+INC1INCy0YrQt9C80L7QttC90L4g0LTQsCDRgdC1INGC0YrQu9C60YPQstCwINC60LDRgtC+INC+0L/RhtC40Y8g0LfQsCDQutC+0LzQsNC90LTQvdC40Y8gIgogItGA0LXQtDogJXMiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzo0NzkKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo0OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgJXMiCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvQvdCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCDigJ4lc+KAnCIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjc1NAorIzogc3VibW9kdWxlLWNvbmZpZy5jOjc2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgdXBkYXRlIC5naXRtb2R1bGVzIGVudHJ5ICVzIgogbXNnc3RyICLQl9Cw0L/QuNGB0YrRgiDigJ4lc+KAnCDQstGK0LIg0YTQsNC50LvQsCDigJ4uZ2l0bW9kdWxlc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0LzQtdC90LXQvSIKQEAgLTYyNzEsNyArODQ3Niw3IEBACiBtc2dpZCAidW5rbm93biB2YWx1ZSAnJXMnIGZvciBrZXkgJyVzJyIKIG1zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgtCwINGB0YLQvtC50L3QvtGB0YIg4oCeJXPigJwg0LfQsCDQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAniVz4oCcIgogCi0jOiB0cmFpbGVyLmM6NTM5IHRyYWlsZXIuYzo1NDQgYnVpbHRpbi9yZW1vdGUuYzoyOTUKKyM6IHRyYWlsZXIuYzo1MzkgdHJhaWxlci5jOjU0NCBidWlsdGluL3JlbW90ZS5jOjI5OCBidWlsdGluL3JlbW90ZS5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJtb3JlIHRoYW4gb25lICVzIgogbXNnc3RyICLRgdGC0L7QudC90L7RgdGC0YLQsCDigJ4lc+KAnCDRgdC1INC/0L7QstGC0LDRgNGPINCyINC90LDRgdGC0YDQvtC50LrQuNGC0LUiCkBAIC02MjkwLDcgKzg0OTUsNyBAQAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGZyb20gc3RkaW4iCiBtc2dzdHIgItC+0YIg0YHRgtCw0L3QtNCw0YDRgtC90LjRjyDQstGF0L7QtCDQvdC1INC80L7QttC1INC00LAg0YHQtSDRh9C10YLQtSIKIAotIzogdHJhaWxlci5jOjEwMTEgYnVpbHRpbi9hbS5jOjQ3CisjOiB0cmFpbGVyLmM6MTAxMSB3cmFwcGVyLmM6NjY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0ICVzIgogbXNnc3RyICLQndC1INC80L7QttC1INC00LAg0YHQtSDQv9C+0LvRg9GH0Lgg0LjQvdGE0L7RgNC80LDRhtC40Y8g0YfRgNC10Lcg4oCec3RhdOKAnCDQt9CwIOKAniVz4oCcIgpAQCAtNjMxOSwzOSArODUyNCw0OCBAQAogbXNnaWQgIldvdWxkIHNldCB1cHN0cmVhbSBvZiAnJXMnIHRvICclcycgb2YgJyVzJ1xuIgogbXNnc3RyICLQmtC70L7QvdGK0YIg4oCeJXPigJwg0YnQtSDRgdC70LXQtNC4IOKAniVz4oCcINC+0YIg4oCeJXPigJxcbiIKIAotIzogdHJhbnNwb3J0LmM6MTQyCisjOiB0cmFuc3BvcnQuYzoxNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgYnVuZGxlICclcyciCiBtc2dzdHIgItC/0YDQsNGC0LrQsNGC0LAg0L3QsCBnaXQg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L3QsCIKIAotIzogdHJhbnNwb3J0LmM6MjA4CisjOiB0cmFuc3BvcnQuYzoyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJhbnNwb3J0OiBpbnZhbGlkIGRlcHRoIG9wdGlvbiAnJXMnIgogbXNnc3RyICJ0cmFuc3BvcnQ6INC90LXQv9GA0LDQstC40LvQvdCwINC+0L/RhtC40Y8g0LfQsCDQtNGK0LvQsdC+0YfQuNC90LA6ICVzIgogCi0jOiB0cmFuc3BvcnQuYzo2MTYKKyM6IHRyYW5zcG9ydC5jOjI2NgorbXNnaWQgInNlZSBwcm90b2NvbC52ZXJzaW9uIGluICdnaXQgaGVscCBjb25maWcnIGZvciBtb3JlIGRldGFpbHMiCittc2dzdHIgIiIKKyLQl9CwINC/0L7QstC10YfQtSDQuNC90YTQvtGA0LzQsNGG0LjRjyDQstC40LbRgtC1INGA0LDQt9C00LXQu9CwIOKAnnByb3RvY29sLnZlcnNpb27igJwg0LIg4oCeZ2l0IGhlbHAgY29uZmln4oCcIgorCisjOiB0cmFuc3BvcnQuYzoyNjcKK21zZ2lkICJzZXJ2ZXIgb3B0aW9ucyByZXF1aXJlIHByb3RvY29sIHZlcnNpb24gMiBvciBsYXRlciIKK21zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg0L3QsCDRgdGK0YDQstGK0YDQsCDQuNC30LjRgdC60LLQsNGCINC/0L7QvdC1INCy0LXRgNGB0LjRjyAyINC90LAg0L/RgNC+0YLQvtC60L7Qu9CwIgorCisjOiB0cmFuc3BvcnQuYzo2MzIKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgdHJhbnNwb3J0LmNvbG9yLiogY29uZmlnIgogbXNnc3RyICLRgdGC0L7QudC90L7RgdGC0YLQsCDQvdCwINC90LDRgdGC0YDQvtC50LrQsNGC0LAg4oCedHJhbnNwb3J0LmNvbG9yLirigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0YDQsNC30L/QvtC30L3QsNC1IgogCi0jOiB0cmFuc3BvcnQuYzo2ODkKKyM6IHRyYW5zcG9ydC5jOjcwNQogbXNnaWQgInN1cHBvcnQgZm9yIHByb3RvY29sIHYyIG5vdCBpbXBsZW1lbnRlZCB5ZXQiCiBtc2dzdHIgItC/0YDQvtGC0L7QutC+0Lsg0LLQtdGA0YHQuNGPIDIg0LLRgdC1INC+0YnQtSDQvdC1INGB0LUg0L/QvtC00LTRitGA0LbQsCIKIAotIzogdHJhbnNwb3J0LmM6ODE2CisjOiB0cmFuc3BvcnQuYzo4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biB2YWx1ZSBmb3IgY29uZmlnICclcyc6ICVzIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGC0LAg0YHRgtC+0LnQvdC+0YHRgiDQt9CwINC90LDRgdGC0YDQvtC50LrQsNGC0LAg4oCeJXPigJw6IOKAniVz4oCcIgogCi0jOiB0cmFuc3BvcnQuYzo4ODIKKyM6IHRyYW5zcG9ydC5jOjg5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmFuc3BvcnQgJyVzJyBub3QgYWxsb3dlZCIKIG1zZ3N0ciAi0L/RgNC10L3QvtGB0YrRgiDQv9C+IOKAniVz4oCcINC90LUg0LUg0L/QvtC30LLQvtC70LXQvSIKIAotIzogdHJhbnNwb3J0LmM6OTM2CisjOiB0cmFuc3BvcnQuYzo5NDkKIG1zZ2lkICJnaXQtb3Zlci1yc3luYyBpcyBubyBsb25nZXIgc3VwcG9ydGVkIgogbXNnc3RyICLQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0LW92ZXItcnN5bmPigJwg0LLQtdGH0LUg0L3QtSDRgdC1INC/0L7QtNC00YrRgNC20LAiCiAKLSM6IHRyYW5zcG9ydC5jOjEwMzEKKyM6IHRyYW5zcG9ydC5jOjEwNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgc3VibW9kdWxlIHBhdGhzIGNvbnRhaW4gY2hhbmdlcyB0aGF0IGNhblxuIgpAQCAtNjM2MCw3ICs4NTc0LDcgQEAKICLQodC70LXQtNC90LjRgtC1INC/0YrRgtC40YnQsCDQt9CwINC/0L7QtNC80L7QtNGD0LvQuCDRgdGK0LTRitGA0LbQsNGCINC/0YDQvtC80LXQvdC4LFxuIgogItC60L7QuNGC0L4g0LvQuNC/0YHQstCw0YIg0L7RgiDQstGB0LjRh9C60Lgg0L7RgtC00LDQu9C10YfQtdC90Lgg0YXRgNCw0L3QuNC70LjRidCwOlxuIgogCi0jOiB0cmFuc3BvcnQuYzoxMDM1CisjOiB0cmFuc3BvcnQuYzoxMDQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTYzODUsMzkgKzg1OTksMzQgQEAKICIgICAgZ2l0IHB1c2hcbiIKICJcbiIKIAotIzogdHJhbnNwb3J0LmM6MTA0MworIzogdHJhbnNwb3J0LmM6MTA1NgogbXNnaWQgIkFib3J0aW5nLiIKIG1zZ3N0ciAi0J/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LTQtdC50YHRgtCy0LjQtdGC0L4uIgogCi0jOiB0cmFuc3BvcnQuYzoxMTgyCisjOiB0cmFuc3BvcnQuYzoxMjAxCiBtc2dpZCAiZmFpbGVkIHRvIHB1c2ggYWxsIG5lZWRlZCBzdWJtb2R1bGVzIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LjQt9GC0LvQsNGB0LrQstCw0L3QtSDQvdCwINCy0YHQuNGH0LrQuCDQvdC10L7QsdGF0L7QtNC40LzQuCDQv9C+0LTQvNC+0LTRg9C70LgiCiAKLSM6IHRyYW5zcG9ydC5jOjEzMTUgdHJhbnNwb3J0LWhlbHBlci5jOjY0MworIzogdHJhbnNwb3J0LmM6MTM0NSB0cmFuc3BvcnQtaGVscGVyLmM6NjU3CiBtc2dpZCAib3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwINC90LUg0YHQtSDQv9C+0LTQtNGK0YDQttCwINC+0YIg0L/RgNC+0YLQvtC60L7Qu9CwIgogCi0jOiB0cmFuc3BvcnQuYzoxNDE5Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgbGluZSB3aGlsZSBwYXJzaW5nIGFsdGVybmF0ZSByZWZzOiAlcyIKLW1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0YDQtdC0INC/0YDQuCDQsNC90LDQu9C40LfQsCDQvdCwINCw0LvRgtC10YDQvdCw0YLQuNCy0L3QuNGC0LUg0YPQutCw0LfQsNGC0LXQu9C4OiDigJ4lc+KAnCIKLQotIzogdHJhbnNwb3J0LWhlbHBlci5jOjUxIHRyYW5zcG9ydC1oZWxwZXIuYzo4MAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjYxIHRyYW5zcG9ydC1oZWxwZXIuYzo5MAogbXNnaWQgImZ1bGwgd3JpdGUgdG8gcmVtb3RlIGhlbHBlciBmYWlsZWQiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0LXQvSDQv9GK0LvQtdC9INC30LDQv9C40YEg0LrRitC8INC90LDRgdGA0LXRidC90LDRgtCwINC/0L7QvNC+0YnQvdCwINC/0YDQvtCz0YDQsNC80LAiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZpbmQgcmVtb3RlIGhlbHBlciBmb3IgJyVzJyIKIG1zZ3N0ciAi0L3QsNGB0YDQtdGJ0L3QsNGC0LAg0L/QvtC80L7RidC90LAg0L/RgNC+0LPRgNCw0LzQsCDQt9CwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LrRgNC40YLQsCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0OCB0cmFuc3BvcnQtaGVscGVyLmM6NTU3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTYwIHRyYW5zcG9ydC1oZWxwZXIuYzo1NzEKIG1zZ2lkICJjYW4ndCBkdXAgaGVscGVyIG91dHB1dCBmZCIKIG1zZ3N0ciAiIgogItGE0LDQudC70L7QstC40Y/RgiDQtNC10YHQutGA0LjQv9GC0L7RgCDQvtGCINC90LDRgdGA0LXRidC90LDRgtCwINC/0L7QvNC+0YnQvdCwINC/0YDQvtCz0YDQsNC80LAg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LTRg9Cx0LvQuNGA0LAg0YEgIgogIuKAnmR1cOKAnCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjE5OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5rbm93biBtYW5kYXRvcnkgY2FwYWJpbGl0eSAlczsgdGhpcyByZW1vdGUgaGVscGVyIHByb2JhYmx5IG5lZWRzIG5ld2VyICIKQEAgLTY0MjYsMTA2ICs4NjM1LDExMSBAQAogItC90LXQv9C+0LfQvdCw0YLQsCDQt9Cw0LTRitC70LbQuNGC0LXQu9C90LAg0YHQv9C+0YHQvtCx0L3QvtGB0YIg4oCeJXPigJwuICDQndCw0YHRgNC10YnQvdCw0YLQsCDQv9C+0LzQvtGJ0L3QsCDQv9GA0L7Qs9GA0LDQvNCwICIKICLQstC10YDQvtGP0YLQvdC+INC40LfQuNGB0LrQstCwINC90L7QstCwINCy0LXRgNGB0LjRjyDQvdCwIEdpdCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjIwNQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxNwogbXNnaWQgInRoaXMgcmVtb3RlIGhlbHBlciBzaG91bGQgaW1wbGVtZW50IHJlZnNwZWMgY2FwYWJpbGl0eSIKIG1zZ3N0ciAiIgogItC90LDRgdGA0LXRidC90LDRgtCwINC/0L7QvNC+0YnQvdCwINC/0YDQvtCz0YDQsNC80LAg0YLRgNGP0LHQstCwINC00LAg0L/QvtC00LTRitGA0LbQsCDRgdC/0L7RgdC+0LHQvdC+0YHRgiDQt9CwINC40LfQsdGA0L7Rj9Cy0LDQvdC1INC90LAgIgogItGD0LrQsNC30LDRgtC10LvQuCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjI3MiB0cmFuc3BvcnQtaGVscGVyLmM6NDEyCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6Mjg0IHRyYW5zcG9ydC1oZWxwZXIuYzo0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdW5leHBlY3RlZGx5IHNhaWQ6ICclcyciCiBtc2dzdHIgIuKAniVz4oCcINC90LXQvtGH0LDQutCy0LDQvdC+INCy0YrRgNC90LA6IOKAniVz4oCcIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NDAxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGFsc28gbG9ja2VkICVzIgogbXNnc3RyICLigJ4lc+KAnCDQt9Cw0LrQu9GO0YfQuCDQuCDigJ4lc+KAnCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjQ3OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjQ5MwogbXNnaWQgImNvdWxkbid0IHJ1biBmYXN0LWltcG9ydCIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg0LHRitGA0LfQviDQstC90LDRgdGP0L3QtSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjUwMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjUxNgogbXNnaWQgImVycm9yIHdoaWxlIHJ1bm5pbmcgZmFzdC1pbXBvcnQiCiBtc2dzdHIgItCz0YDQtdGI0LrQsCDQv9GA0Lgg0LjQt9C/0YrQu9C90LXQvdC40LXRgtC+INC90LAg0LHRitGA0LfQviDQstC90LDRgdGP0L3QtSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjUzMSB0cmFuc3BvcnQtaGVscGVyLmM6MTA5MQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjU0NSB0cmFuc3BvcnQtaGVscGVyLmM6MTEzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCByZWYgJXMiCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQvtGH0LXRgtC1IgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTc2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gcmVzcG9uc2UgdG8gY29ubmVjdDogJXMiCiBtc2dzdHIgItC90LXQvtGH0LDQutCy0LDQvSDQvtGC0LPQvtCy0L7RgCDQv9GA0Lgg0YHQstGK0YDQt9Cy0LDQvdC1OiDigJ4lc+KAnCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjU5OAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjYxMgogbXNnaWQgInNldHRpbmcgcmVtb3RlIHNlcnZpY2UgcGF0aCBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sIgogbXNnc3RyICLQv9GA0L7RgtC+0LrQvtC70YrRgiDQvdC1INC/0L7QtNC00YrRgNC20LAg0LfQsNC00LDQstCw0L3QtdGC0L4g0L3QsCDQv9GK0YIg0L3QsCDQvtGC0LTQsNC70LXRh9C10L3QsNGC0LAg0YPRgdC70YPQs9CwIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NjAwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjE0CiBtc2dpZCAiaW52YWxpZCByZW1vdGUgc2VydmljZSBwYXRoIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQv9GK0YIg0L3QsCDQvtGC0LTQsNC70LXRh9C10L3QsNGC0LAg0YPRgdC70YPQs9CwIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NjQ2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IGNvbm5lY3QgdG8gc3Vic2VydmljZSAlcyIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INGB0LLRitGA0LfQstCw0L3QtSDQutGK0Lwg0L/QvtC00YPRgdC70YPQs9Cw0YLQsCDigJ4lc+KAnCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjcxMworIzogdHJhbnNwb3J0LWhlbHBlci5jOjczNgogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBvay9lcnJvciwgaGVscGVyIHNhaWQgJyVzJyIKIG1zZ3N0ciAiIgogItC+0YfQsNC60LLQsCDRgdC1INC40LvQuCDRg9GB0L/QtdGFLCDQuNC70Lgg0LPRgNC10YjQutCwLCDQvdC+INC90LDRgdGA0LXRidC90LDRgtCwINC/0L7QvNC+0YnQvdCwINC/0YDQvtCz0YDQsNC80LAg0LLRitGA0L3QsCDigJ4lc+KAnCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjc2NgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjc4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgcmVwb3J0ZWQgdW5leHBlY3RlZCBzdGF0dXMgb2YgJXMiCiBtc2dzdHIgItC90LDRgdGA0LXRidC90LDRgtCwINC/0L7QvNC+0YnQvdCwINC/0YDQvtCz0YDQsNC80LAg0LfQsNCy0YrRgNGI0Lgg0YEg0L3QtdC+0YfQsNC60LLQsNC9INC40LfRhdC+0LTQtdC9INC60L7QtDog4oCeJXPigJwiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4MjcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgZHJ5LXJ1biIKIG1zZ3N0ciAi0L3QsNGB0YDQtdGJ0L3QsNGC0LAg0L/QvtC80L7RidC90LAg0L/RgNC+0LPRgNCw0LzQsCDigJ4lc+KAnCDQvdC1INC/0L7QtNC00YrRgNC20LAg0L/RgNC+0LHQuCDigJ5kcnktcnVu4oCcIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODMwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIgogbXNnc3RyICLQvdCw0YHRgNC10YnQvdCw0YLQsCDQv9C+0LzQvtGJ0L3QsCDQv9GA0L7Qs9GA0LDQvNCwIOKAniVz4oCcINC90LUg0L/QvtC00LTRitGA0LbQsCDQvtC/0YbQuNGP0YLQsCDigJ4tLXNpZ25lZOKAnCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjgzMworIzogdHJhbnNwb3J0LWhlbHBlci5jOjg1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAtLXNpZ25lZD1pZi1hc2tlZCIKIG1zZ3N0ciAiIgogItC90LDRgdGA0LXRidC90LDRgtCwINC/0L7QvNC+0YnQvdCwINC/0YDQvtCz0YDQsNC80LAg4oCeJXPigJwg0L3QtSDQv9C+0LTQtNGK0YDQttCwINC+0L/RhtC40Y/RgtCwIOKAni0tc2lnbmVkPWlmLWFza2Vk4oCcIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODQwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODYxCisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tYXRvbWljIgorbXNnc3RyICLQvdCw0YHRgNC10YnQvdCw0YLQsCDQv9C+0LzQvtGJ0L3QsCDQv9GA0L7Qs9GA0LDQvNCwIOKAniVz4oCcINC90LUg0L/QvtC00LTRitGA0LbQsCDQvtC/0YbQuNGP0YLQsCDigJ4tLWF0b21pY+KAnCIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjg2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAncHVzaC1vcHRpb24nIgogbXNnc3RyICLQvdCw0YHRgNC10YnQvdCw0YLQsCDQv9C+0LzQvtGJ0L3QsCDQv9GA0L7Qs9GA0LDQvNCwIOKAniVz4oCcINC90LUg0L/QvtC00LTRitGA0LbQsCDQvtC/0YbQuNC4INC30LAg0LjQt9GC0LvQsNGB0LrQstCw0L3QtSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjkzMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjk2NQogbXNnaWQgInJlbW90ZS1oZWxwZXIgZG9lc24ndCBzdXBwb3J0IHB1c2g7IHJlZnNwZWMgbmVlZGVkIgogbXNnc3RyICIiCiAi0L3QsNGB0YDQtdGJ0L3QsNGC0LAg0L/QvtC80L7RidC90LAg0L/RgNC+0LPRgNCw0LzQsCDQvdC1INC/0L7QtNC00YrRgNC20LAg0LjQt9GC0LvQsNGB0LrQstCw0L3QtS4gINCd0LXQvtCx0YXQvtC00LjQvNC+INC1ICIKICLQuNC30LHRgNC+0Y/QstCw0L3QtSDQvdCwINGD0LrQsNC30LDRgtC10LvQuNGC0LUiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5MzcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgJ2ZvcmNlJyIKIG1zZ3N0ciAiIgogItC90LDRgdGA0LXRidC90LDRgtCwINC/0L7QvNC+0YnQvdCwINC/0YDQvtCz0YDQsNC80LAg0L3QtSDQv9C+0LTQtNGK0YDQttCwIOKAniVz4oCcINC/0L7QtNC00YrRgNC20LAg0L7Qv9GG0LjRj9GC0LAg4oCeLS1mb3JjZeKAnCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjk4NAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMTcKIG1zZ2lkICJjb3VsZG4ndCBydW4gZmFzdC1leHBvcnQiCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC40LfQstGK0YDRiNC4INCx0YrRgNC30L4g0LjQt9C90LDRgdGP0L3QtSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjk4OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMjIKIG1zZ2lkICJlcnJvciB3aGlsZSBydW5uaW5nIGZhc3QtZXhwb3J0IgogbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INC40LfQv9GK0LvQvdC10L3QuNC10YLQviDQvdCwINC60L7QvNCw0L3QtNCw0YLQsCDQt9CwINCx0YrRgNC30L4g0LjQt9C90LDRgdGP0L3QtSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMTQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyByZWZzIGluIGNvbW1vbiBhbmQgbm9uZSBzcGVjaWZpZWQ7IGRvaW5nIG5vdGhpbmcuXG4iCkBAIC02NTM0LDY3ICs4NzQ4LDY3IEBACiAi0J3Rj9C80LAg0L7QsdGJ0Lgg0YPQutCw0LfQsNGC0LXQu9C4LCDQvdC1INGB0LAg0YPQutCw0LfQsNC90Lgg0L3QuNC60LDQutCy0Lgg0YPQutCw0LfQsNGC0LXQu9C4IOKAlCDQvdC40YnQviDQvdGP0LzQsCDQtNCwINCx0YrQtNC1XG4iCiAi0L3QsNC/0YDQsNCy0LXQvdC+LiAg0J/RgNC+0LHQstCw0LnRgtC1INC00LAg0YPQutCw0LbQtdGC0LUg0LrQu9C+0L0sINC90LDQv9GALiDigJxtYXN0ZXLigJwuXG4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDc3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTEyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgcmVzcG9uc2UgaW4gcmVmIGxpc3Q6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQvtGC0LPQvtCy0L7RgCDQsiDRgdC/0LjRgdGK0LrQsCDRgSDRg9C60LDQt9Cw0YLQtdC70Lg6IOKAniVz4oCcIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTIzMQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZCglcykgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YfQtdGC0LXQvdC1INC90LAg4oCeJXPigJwiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjU4CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cml0ZSglcykgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC10L0g0LfQsNC/0LjRgSDQsiDigJ4lc+KAnCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMDcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHRocmVhZCBmYWlsZWQiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQuNC30L/RitC70L3QtdC90LjQtSDQvdCwINC90LjRiNC60LDRgtCwIOKAniVz4oCcIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMxMQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdGhyZWFkIGZhaWxlZCB0byBqb2luOiAlcyIKIG1zZ3N0ciAi0LfQsNCy0YrRgNGI0LLQsNC90LXRgtC+INC90LAg0L3QuNGI0LrQsNGC0LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9GH0LDQutCwOiDigJ4lc+KAnCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMzAgdHJhbnNwb3J0LWhlbHBlci5jOjEzMzQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzcxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IHN0YXJ0IHRocmVhZCBmb3IgY29weWluZyBkYXRhOiAlcyIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INGB0YLQsNGA0YLQuNGA0LDQvdC1INC90LAg0L3QuNGI0LrQsCDQt9CwINC60L7Qv9C40YDQsNC90LUg0L3QsCDQtNCw0L3QvdC40YLQtTog4oCeJXPigJwiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzcxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQxMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBwcm9jZXNzIGZhaWxlZCB0byB3YWl0IgogbXNnc3RyICLQv9GA0L7RhtC10YHRitGCINC90LAg4oCeJXPigJwg0L3QtSDRg9GB0L/RjyDQtNCwINC40LfRh9Cw0LrQsCDRh9GA0LXQtyDigJ53YWl0cGlk4oCcIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM3NQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcHJvY2VzcyBmYWlsZWQiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQuNC30L/RitC70L3QtdC90LjQtSDQvdCwIOKAniVz4oCcIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM5MyB0cmFuc3BvcnQtaGVscGVyLmM6MTQwMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0MzQgdHJhbnNwb3J0LWhlbHBlci5jOjE0NDMKIG1zZ2lkICJjYW4ndCBzdGFydCB0aHJlYWQgZm9yIGNvcHlpbmcgZGF0YSIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INGB0YLQsNGA0YLQuNGA0LDQvdC1INC90LAg0L3QuNGI0LrQsCDQt9CwINC60L7Qv9C40YDQsNC90LUg0L3QsCDQtNCw0L3QvdC40YLQtSIKIAotIzogdHJlZS13YWxrLmM6MzMKKyM6IHRyZWUtd2Fsay5jOjMyCiBtc2dpZCAidG9vLXNob3J0IHRyZWUgb2JqZWN0IgogbXNnc3RyICLQv9GA0LXQutCw0LvQtdC90L4g0LrRgNCw0YLRitC6INC+0LHQtdC60YIt0LTRitGA0LLQviIKIAotIzogdHJlZS13YWxrLmM6MzkKKyM6IHRyZWUtd2Fsay5jOjM4CiBtc2dpZCAibWFsZm9ybWVkIG1vZGUgaW4gdHJlZSBlbnRyeSIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90Lgg0L/RgNCw0LLQsCDQt9CwINC00L7RgdGC0YrQvyDQsiDQt9Cw0L/QuNGBINCyINC00YrRgNCy0L4iCiAKLSM6IHRyZWUtd2Fsay5jOjQzCisjOiB0cmVlLXdhbGsuYzo0MgogbXNnaWQgImVtcHR5IGZpbGVuYW1lIGluIHRyZWUgZW50cnkiCiBtc2dzdHIgItC/0YDQsNC30L3QviDQuNC80LUg0L3QsCDRhNCw0LnQuyDQsiDQt9Cw0L/QuNGBINCyINC00YrRgNCy0L4iCiAKLSM6IHRyZWUtd2Fsay5jOjExNQorIzogdHJlZS13YWxrLmM6MTE3CiBtc2dpZCAidG9vLXNob3J0IHRyZWUgZmlsZSIKIG1zZ3N0ciAi0L/RgNC10LrQsNC70LXQvdC+INC60YDQsNGC0YrQuiDRhNCw0LnQuy3QtNGK0YDQstC+IgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTIKKyM6IHVucGFjay10cmVlcy5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCkBAIC02NjAzLDcgKzg4MTcsNyBAQAogItCY0LfRgtC10LPQu9GP0L3QtdGC0L4g0YnQtSDQv9GA0LXQt9Cw0L/QuNGI0LUg0LvQvtC60LDQu9C90LjRgtC1INC/0YDQvtC80LXQvdC4INC90LAg0YLQtdC30Lgg0YTQsNC50LvQvtCy0LU6XG4iCiAiJSVz0J/QvtC00LDQudGC0LUg0LjQu9C4INGB0LrQsNGC0LDQudGC0LUg0L/RgNC+0LzQtdC90LjRgtC1LCDQt9CwINC00LAg0L/RgNC10LzQuNC90LXRgtC1INC60YrQvCDQvdC+0LIg0LrQu9C+0L0uIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTQKKyM6IHVucGFjay10cmVlcy5jOjExMgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCkBAIC02NjEyLDcgKzg4MjYsNyBAQAogItCY0LfRgtC10LPQu9GP0L3QtdGC0L4g0YnQtSDQv9GA0LXQt9Cw0L/QuNGI0LUg0LvQvtC60LDQu9C90LjRgtC1INC/0YDQvtC80LXQvdC4INC90LAg0YLQtdC30Lgg0YTQsNC50LvQvtCy0LU6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTcKKyM6IHVucGFjay10cmVlcy5jOjExNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCkBAIC02NjIxLDcgKzg4MzUsNyBAQAogItCh0LvQuNCy0LDQvdC10YLQviDRidC1INC/0YDQtdC30LDQv9C40YjQtSDQu9C+0LrQsNC70L3QuNGC0LUg0L/RgNC+0LzQtdC90Lgg0L3QsCDRgtC10LfQuCDRhNCw0LnQu9C+0LLQtTpcbiIKICIlJXPQn9C+0LTQsNC50YLQtSDQuNC70Lgg0YHQutCw0YLQsNC50YLQtSDQv9GA0L7QvNC10L3QuNGC0LUsINC30LAg0LTQsCDRgdC70LXQtdGC0LUuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTkKKyM6IHVucGFjay10cmVlcy5jOjExNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCkBAIC02NjMwLDcgKzg4NDQsNyBAQAogItCh0LvQuNCy0LDQvdC10YLQviDRidC1INC/0YDQtdC30LDQv9C40YjQtSDQu9C+0LrQsNC70L3QuNGC0LUg0L/RgNC+0LzQtdC90Lgg0L3QsCDRgtC10LfQuCDRhNCw0LnQu9C+0LLQtTpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjEyMgorIzogdW5wYWNrLXRyZWVzLmM6MTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKQEAgLTY2MzksNyArODg1Myw3IEBACiAi4oCeJXPigJwg0YnQtSDQv9GA0LXQt9Cw0L/QuNGI0LUg0LvQvtC60LDQu9C90LjRgtC1INC/0YDQvtC80LXQvdC4INC90LAg0YLQtdC30Lgg0YTQsNC50LvQvtCy0LU6XG4iCiAiJSVz0J/QvtC00LDQudGC0LUg0LjQu9C4INGB0LrQsNGC0LDQudGC0LUg0L/RgNC+0LzQtdC90LjRgtC1LCDQt9CwINC00LAg0LjQt9Cy0YrRgNGI0LjRgtC1IOKAniVz4oCcLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTI0CisjOiB1bnBhY2stdHJlZXMuYzoxMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjY0OCw3ICs4ODYyLDcgQEAKICLigJ4lc+KAnCDRidC1INC/0YDQtdC30LDQv9C40YjQtSDQu9C+0LrQsNC70L3QuNGC0LUg0L/RgNC+0LzQtdC90Lgg0L3QsCDRgtC10LfQuCDRhNCw0LnQu9C+0LLQtTpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjEyOQorIzogdW5wYWNrLXRyZWVzLmM6MTI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJVcGRhdGluZyB0aGUgZm9sbG93aW5nIGRpcmVjdG9yaWVzIHdvdWxkIGxvc2UgdW50cmFja2VkIGZpbGVzIGluIHRoZW06XG4iCkBAIC02NjU3LDcgKzg4NzEsNyBAQAogItCe0LHQvdC+0LLRj9Cy0LDQvdC10YLQviDQvdCwINGB0LvQtdC00L3QuNGC0LUg0LTQuNGA0LXQutGC0L7RgNC40Lgg0YnQtSDQuNC30YLRgNC40LUg0L3QtdGB0LvQtdC00LXQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSDQsiDRgtGP0YU6XG4iCiAiJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjEzMworIzogdW5wYWNrLXRyZWVzLmM6MTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKQEAgLTY2NjYsNyArODg4MCw3IEBACiAi0JjQt9GC0LXQs9C70Y/QvdC10YLQviDRidC1INC40LfRgtGA0LjQtSDRgtC10LfQuCDQvdC10YHQu9C10LTQtdC90Lgg0YTQsNC50LvQvtCy0LUg0LIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L46XG4iCiAiJSVz0J/RgNC10LzQtdGB0YLQtdGC0LUg0LPQuCDQuNC70Lgg0LPQuCDQuNC30YLRgNC40LnRgtC1LCDQt9CwINC00LAg0L/RgNC10LzQuNC90LXRgtC1INC90LAg0LTRgNGD0LMg0LrQu9C+0L0uIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMzUKKyM6IHVucGFjay10cmVlcy5jOjEzMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgY2hlY2tvdXQ6XG4iCkBAIC02Njc1LDcgKzg4ODksNyBAQAogItCY0LfRgtC10LPQu9GP0L3QtdGC0L4g0YnQtSDQuNC30YLRgNC40LUg0YLQtdC30Lgg0L3QtdGB0LvQtdC00LXQvdC4INGE0LDQudC70L7QstC1INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+OlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTM4CisjOiB1bnBhY2stdHJlZXMuYzoxMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgpAQCAtNjY4NCw3ICs4ODk4LDcgQEAKICLQodC70LjQstCw0L3QtdGC0L4g0YnQtSDQuNC30YLRgNC40LUg0YLQtdC30Lgg0L3QtdGB0LvQtdC00LXQvdC4INGE0LDQudC70L7QstC1INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+OlxuIgogIiUlc9Cf0YDQtdC80LXRgdGC0LXRgtC1INCz0Lgg0LjQu9C4INCz0Lgg0LjQt9GC0YDQuNC50YLQtSwg0LfQsCDQtNCwINGB0LvQtdC10YLQtS4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE0MAorIzogdW5wYWNrLXRyZWVzLmM6MTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBtZXJnZTpcbiIKQEAgLTY2OTMsNyArODkwNyw3IEBACiAi0KHQu9C40LLQsNC90LXRgtC+INGJ0LUg0LjQt9GC0YDQuNC1INGC0LXQt9C4INC90LXRgdC70LXQtNC10L3QuCDRhNCw0LnQu9C+0LLQtSDQsiDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQvjpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE0MworIzogdW5wYWNrLXRyZWVzLmM6MTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSAlczpcbiIKQEAgLTY3MDIsNyArODkxNiw3IEBACiAi4oCeJXPigJwg0YnQtSDQuNC30YLRgNC40LUg0YLQtdC30Lgg0L3QtdGB0LvQtdC00LXQvdC4INGE0LDQudC70L7QstC1INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+OlxuIgogIiUlc9Cf0YDQtdC80LXRgdGC0LXRgtC1INCz0Lgg0LjQu9C4INCz0Lgg0LjQt9GC0YDQuNC50YLQtSwg0LfQsCDQtNCwINC40LfQstGK0YDRiNC40YLQtSDigJ4lc+KAnC4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE0NQorIzogdW5wYWNrLXRyZWVzLmM6MTQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSAlczpcbiIKQEAgLTY3MTEsNyArODkyNSw3IEBACiAi4oCeJXPigJwg0YnQtSDQuNC30YLRgNC40LUg0YLQtdC30Lgg0L3QtdGB0LvQtdC00LXQvdC4INGE0LDQudC70L7QstC1INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+OlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTUxCisjOiB1bnBhY2stdHJlZXMuYzoxNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCkBAIC02NzIxLDcgKzg5MzUsNyBAQAogItCY0LfRgtC10LPQu9GP0L3QtdGC0L4g0YnQtSDQv9GA0LXQt9Cw0L/QuNGI0LUg0YLQtdC30Lgg0L3QtdGB0LvQtdC00LXQvdC4INGE0LDQudC70L7QstC1INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+OlxuIgogIiUlc9Cf0YDQtdC80LXRgdGC0LXRgtC1INCz0Lgg0LjQu9C4INCz0Lgg0LjQt9GC0YDQuNC50YLQtSwg0LfQsCDQtNCwINGB0LzQtdC90LjRgtC1INC60LvQvtC9LiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTUzCisjOiB1bnBhY2stdHJlZXMuYzoxNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCkBAIC02NzMxLDcgKzg5NDUsNyBAQAogItCY0LfRgtC10LPQu9GP0L3QtdGC0L4g0YnQtSDQv9GA0LXQt9Cw0L/QuNGI0LUg0YLQtdC30Lgg0L3QtdGB0LvQtdC00LXQvdC4INGE0LDQudC70L7QstC1INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+OlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTU2CisjOiB1bnBhY2stdHJlZXMuYzoxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTY3NDAsNyArODk1NCw3IEBACiAi0KHQu9C40LLQsNC90LXRgtC+INGJ0LUg0L/RgNC10LfQsNC/0LjRiNC1INGC0LXQt9C4INC90LXRgdC70LXQtNC10L3QuCDRhNCw0LnQu9C+0LLQtSDQsiDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQvjpcbiIKICIlJXPQn9GA0LXQvNC10YHRgtC10YLQtSDQs9C4INC40LvQuCDQs9C4INC40LfRgtGA0LjQudGC0LUsINC30LAg0LTQsCDRgdC70LXQtdGC0LUuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNTgKKyM6IHVucGFjay10cmVlcy5jOjE1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtNjc0OSw3ICs4OTYzLDcgQEAKICLQodC70LjQstCw0L3QtdGC0L4g0YnQtSDQv9GA0LXQt9Cw0L/QuNGI0LUg0YLQtdC30Lgg0L3QtdGB0LvQtdC00LXQvdC4INGE0LDQudC70L7QstC1INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+OlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTYxCisjOiB1bnBhY2stdHJlZXMuYzoxNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKQEAgLTY3NTgsNyArODk3Miw3IEBACiAi4oCeJXPigJwg0YnQtSDQv9GA0LXQt9Cw0L/QuNGI0LUg0YLQtdC30Lgg0L3QtdGB0LvQtdC00LXQvdC4INGE0LDQudC70L7QstC1INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+OlxuIgogIiUlc9Cf0YDQtdC80LXRgdGC0LXRgtC1INCz0Lgg0LjQu9C4INCz0Lgg0LjQt9GC0YDQuNC50YLQtSwg0LfQsCDQtNCwINC40LfQstGK0YDRiNC40YLQtSDigJ4lc+KAnC4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE2MworIzogdW5wYWNrLXRyZWVzLmM6MTYxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCkBAIC02NzY3LDEyICs4OTgxLDEyIEBACiAi4oCeJXPigJwg0YnQtSDQv9GA0LXQt9Cw0L/QuNGI0LUg0YLQtdC30Lgg0L3QtdGB0LvQtdC00LXQvdC4INGE0LDQudC70L7QstC1INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+OlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTcxCisjOiB1bnBhY2stdHJlZXMuYzoxNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiRW50cnkgJyVzJyBvdmVybGFwcyB3aXRoICclcycuICBDYW5ub3QgYmluZC4iCiBtc2dzdHIgItCX0LDQv9C40YHRitGCINC30LAg4oCeJXPigJwg0YHRitCy0L/QsNC00LAg0YEg0YLQvtC30Lgg0LfQsCDigJ4lc+KAnC4gINCd0LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQuNGB0LLQvtC4LiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTc0CisjOiB1bnBhY2stdHJlZXMuYzoxNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNhbm5vdCB1cGRhdGUgc3BhcnNlIGNoZWNrb3V0OiB0aGUgZm9sbG93aW5nIGVudHJpZXMgYXJlIG5vdCB1cCB0byBkYXRlOlxuIgpAQCAtNjc4Miw3ICs4OTk2LDcgQEAKICLQsNC60YLRg9Cw0LvQvdC4OlxuIgogIiVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNzYKKyM6IHVucGFjay10cmVlcy5jOjE3NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgc3BhcnNlIGNoZWNrb3V0ICIKQEAgLTY3OTMsNyArOTAwNyw3IEBACiAi0LTRitGA0LLQvjpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTc4CisjOiB1bnBhY2stdHJlZXMuYzoxNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgc3BhcnNlIGNoZWNrb3V0ICIKQEAgLTY4MDQsNyArOTAxOCw3IEBACiAi0LTRitGA0LLQvjpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTgwCisjOiB1bnBhY2stdHJlZXMuYzoxNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNhbm5vdCB1cGRhdGUgc3VibW9kdWxlOlxuIgpAQCAtNjgxMywxNiArOTAyNywxNiBAQAogItCf0L7QtNC80L7QtNGD0LvRitGCINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtCx0L3QvtCy0LXQvTpcbiIKICLigJ4lc+KAnCIKIAotIzogdW5wYWNrLXRyZWVzLmM6MjU0CisjOiB1bnBhY2stdHJlZXMuYzoyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmdcbiIKIG1zZ3N0ciAi0J/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LTQtdC50YHRgtCy0LjQtdGC0L5cbiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MzM2Ci1tc2dpZCAiQ2hlY2tpbmcgb3V0IGZpbGVzIgotbXNnc3RyICLQmNC30YLQtdCz0LvRj9C90LUg0L3QsCDRhNCw0LnQu9C+0LLQtSIKKyM6IHVucGFjay10cmVlcy5jOjMxNworbXNnaWQgIlVwZGF0aW5nIGZpbGVzIgorbXNnc3RyICLQntCx0L3QvtCy0Y/QstCw0L3QtSDQvdCwINGE0LDQudC70L7QstC1IgogCi0jOiB1bnBhY2stdHJlZXMuYzozNjgKKyM6IHVucGFjay10cmVlcy5jOjM0OQogbXNnaWQgIiIKICJ0aGUgZm9sbG93aW5nIHBhdGhzIGhhdmUgY29sbGlkZWQgKGUuZy4gY2FzZS1zZW5zaXRpdmUgcGF0aHNcbiIKICJvbiBhIGNhc2UtaW5zZW5zaXRpdmUgZmlsZXN5c3RlbSkgYW5kIG9ubHkgb25lIGZyb20gdGhlIHNhbWVcbiIKQEAgLTY4MzIsNiArOTA0NiwxMCBAQAogItCy0YrQsiDRhNCw0LnQu9C+0LLQuCDRgdC40YHRgtC10LzQuCwg0LrQvtC40YLQviDQvdC1INGA0LDQt9C70LjRh9Cw0LLQsNGCINCz0LvQsNCy0L3QuCDQvtGCINC80LDQu9C60Lgg0LHRg9C60LLQuClcbiIKICLQuCDRgdCw0LzQviDQtdC00LjQvSDQvtGCINGD0YfQsNGB0YLQvdC40YbQuNGC0LUg0LIg0LrQvtC90YTQu9C40LrRgtCwINC1INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+OlxuIgogCisjOiB1bnBhY2stdHJlZXMuYzoxNDQ1Cittc2dpZCAiVXBkYXRpbmcgaW5kZXggZmxhZ3MiCittc2dzdHIgItCe0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAg0YTQu9Cw0LPQvtCy0LXRgtC1INC90LAg0LjQvdC00LXQutGB0LAiCisKICM6IHVybG1hdGNoLmM6MTYzCiBtc2dpZCAiaW52YWxpZCBVUkwgc2NoZW1lIG5hbWUgb3IgbWlzc2luZyAnOi8vJyBzdWZmaXgiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINGB0YXQtdC80LAg0LfQsCDQsNC00YDQtdGBINC40LvQuCDRgdGD0YTQuNC60YHRitGCIOKAnjovL+KAnCDQu9C40L/RgdCy0LAiCkBAIC02ODYxLDIwNiArOTA3OSwyMTcgQEAKIG1zZ2lkICJpbnZhbGlkICcuLicgcGF0aCBzZWdtZW50IgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QsCDRh9Cw0YHRgiDQvtGCINC/0YrRgtGPIOKAni4u4oCcIgogCi0jOiB3b3JrdHJlZS5jOjI0OSBidWlsdGluL2FtLmM6MjEwMAorIzogd2Fsa2VyLmM6MTcwCittc2dpZCAiRmV0Y2hpbmcgb2JqZWN0cyIKK21zZ3N0ciAi0JTQvtGB0YLQsNCy0Y/QvdC1INC90LAg0L7QsdC10LrRgtC40YLQtSIKKworIzogd29ya3RyZWUuYzoyNTkgYnVpbHRpbi9hbS5jOjIwOTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgJyVzJyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L0iCiAKLSM6IHdvcmt0cmVlLmM6Mjk1CisjOiB3b3JrdHJlZS5jOjMwNQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGF0IG1haW4gd29ya2luZyB0cmVlIGlzIG5vdCB0aGUgcmVwb3NpdG9yeSBkaXJlY3RvcnkiCiBtc2dzdHIgIuKAniVz4oCcINCyINC+0YHQvdC+0LLQvdC+0YLQviDRgNCw0LHQvtGC0L3QviDQtNGK0YDQstC+INC90LUg0LUg0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwINC90LAg0YXRgNCw0L3QuNC70LjRidC10YLQviIKIAotIzogd29ya3RyZWUuYzozMDYKKyM6IHdvcmt0cmVlLmM6MzE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZmlsZSBkb2VzIG5vdCBjb250YWluIGFic29sdXRlIHBhdGggdG8gdGhlIHdvcmtpbmcgdHJlZSBsb2NhdGlvbiIKIG1zZ3N0ciAiIgogItGE0LDQudC70YrRgiDigJ4lc+KAnCDQvdC1INGB0YrQtNGK0YDQttCwINCw0LHRgdC+0LvRjtGC0L3QuNGPINC/0YrRgiDQutGK0Lwg0LzQtdGB0YLQvtC/0L7Qu9C+0LbQtdC90LjQtdGC0L4g0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKIAotIzogd29ya3RyZWUuYzozMTgKKyM6IHdvcmt0cmVlLmM6MzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LAuIgogCi0jOiB3b3JrdHJlZS5jOjMyNAorIzogd29ya3RyZWUuYzozMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSAuZ2l0IGZpbGUsIGVycm9yIGNvZGUgJWQiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LUg0YTQsNC50Lsg0L3QsCAuZ2l0LCDQutC+0LQg0LfQsCDQs9GA0LXRiNC60LA6ICVkIgogCi0jOiB3b3JrdHJlZS5jOjMzMgorIzogd29ya3RyZWUuYzozNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBkb2VzIG5vdCBwb2ludCBiYWNrIHRvICclcyciCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0YHQvtGH0Lgg0LrRitC8INC+0LHRgNCw0YLQvdC+INC60YrQvCDigJ4lc+KAnCIKIAotIzogd3JhcHBlci5jOjIyMyB3cmFwcGVyLmM6MzkzCisjOiB3cmFwcGVyLmM6MTg2IHdyYXBwZXIuYzozNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3IgcmVhZGluZyBhbmQgd3JpdGluZyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQstC+0YDQtdC9INC4INC30LAg0YfQtdGC0LXQvdC1LCDQuCDQt9CwINC30LDQv9C40YEiCiAKLSM6IHdyYXBwZXIuYzo0MjQgd3JhcHBlci5jOjYyNAorIzogd3JhcHBlci5jOjM4NyB3cmFwcGVyLmM6NTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgJyVzJyIKIG1zZ3N0ciAi0L3Rj9C80LAg0LTQvtGB0YLRitC/INC00L4g4oCeJXPigJwiCiAKLSM6IHdyYXBwZXIuYzo2MzIKKyM6IHdyYXBwZXIuYzo1OTYKIG1zZ2lkICJ1bmFibGUgdG8gZ2V0IGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgItGC0LXQutGD0YnQsNGC0LAg0YDQsNCx0L7RgtC90LAg0LTQuNGA0LXQutGC0L7RgNC40Y8g0LUg0L3QtdC00L7RgdGC0YrQv9C90LAiCiAKLSM6IHd0LXN0YXR1cy5jOjE1NAorIzogd3Qtc3RhdHVzLmM6MTU4CiBtc2dpZCAiVW5tZXJnZWQgcGF0aHM6IgogbXNnc3RyICLQndC10YHQu9C10YLQuCDQv9GK0YLQuNGJ0LA6IgogCi0jOiB3dC1zdGF0dXMuYzoxODEgd3Qtc3RhdHVzLmM6MjA4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiAgKHVzZSBcImdpdCByZXNldCAlcyA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKLW1zZ3N0ciAiICAo0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgcmVzZXQgJXMg0KTQkNCZ0JvigKbigJwsINC30LAg0LTQsCDQuNC30LLQsNC00LjRgtC1INCk0JDQmdCb0LAg0L7RgiDQuNC90LTQtdC60YHQsCkiCisjOiB3dC1zdGF0dXMuYzoxODcgd3Qtc3RhdHVzLmM6MjE5Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiIKKyIgICjQuNC30L/QvtC70LfQstCw0LnRgtC1IOKAnmdpdCByZXN0b3JlIC0tc3RhZ2VkINCk0JDQmdCb4oCm4oCcLCDQt9CwINC00LAg0LjQt9Cy0LDQtNC40YLQtSDQpNCQ0JnQm9CwINC+0YIg0LjQvdC00LXQutGB0LApIgogCi0jOiB3dC1zdGF0dXMuYzoxODMgd3Qtc3RhdHVzLmM6MjEwCisjOiB3dC1zdGF0dXMuYzoxOTAgd3Qtc3RhdHVzLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgKHVzZSBcImdpdCByZXN0b3JlIC0tc291cmNlPSVzIC0tc3RhZ2VkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgorbXNnc3RyICIiCisiICAo0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgcmVzdG9yZSAtLXNvdXJjZT0lcyAtLXN0YWdlZCDQpNCQ0JnQm+KApuKAnCwg0LfQsCDQtNCwINC40LfQstCw0LTQuNGC0LUgIgorItCk0JDQmdCb0LAg0L7RgiDQuNC90LTQtdC60YHQsCkiCisKKyM6IHd0LXN0YXR1cy5jOjE5MyB3dC1zdGF0dXMuYzoyMjUKIG1zZ2lkICIgICh1c2UgXCJnaXQgcm0gLS1jYWNoZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCiBtc2dzdHIgIiIKICIgICjQuNC30L/QvtC70LfQstCw0LnRgtC1IOKAnmdpdCBybSAtLWNhY2hlZCAlcyDQpNCQ0JnQm+KApuKAnCwg0LfQsCDQtNCwINC40LfQstCw0LTQuNGC0LUg0KTQkNCZ0JvQsCDQvtGCINC40L3QtNC10LrRgdCwKSIKIAotIzogd3Qtc3RhdHVzLmM6MTg3CisjOiB3dC1zdGF0dXMuYzoxOTcKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkIDxmaWxlPi4uLlwiIHRvIG1hcmsgcmVzb2x1dGlvbikiCiBtc2dzdHIgIiIKICIgICjQuNC30L/QvtC70LfQstCw0LnRgtC1IOKAnmdpdCBhZGQg0KTQkNCZ0JvigKbigJwsINC30LAg0LTQsCDRg9C60LDQttC10YLQtSDRgNCw0LfRgNC10YjQsNCy0LDQvdC10YLQviDQvdCwINC60L7QvdGE0LvQuNC60YLQsCkiCiAKLSM6IHd0LXN0YXR1cy5jOjE4OSB3dC1zdGF0dXMuYzoxOTMKKyM6IHd0LXN0YXR1cy5jOjE5OSB3dC1zdGF0dXMuYzoyMDMKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIGFzIGFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbikiCiBtc2dzdHIgIiIKICIgICjQuNC30L/QvtC70LfQstCw0LnRgtC1IOKAnmdpdCBhZGQvcm0g0KTQkNCZ0JvigKbigJwsINGB0L/QvtGA0LXQtCDRgNC10YjQtdC90LjQtdGC0L4sINC60L7QtdGC0L4g0LjQt9Cx0LjRgNCw0YLQtSDQt9CwICIKICLQutC+0L3RhNC70LjQutGC0LApIgogCi0jOiB3dC1zdGF0dXMuYzoxOTEKKyM6IHd0LXN0YXR1cy5jOjIwMQogbXNnaWQgIiAgKHVzZSBcImdpdCBybSA8ZmlsZT4uLi5cIiB0byBtYXJrIHJlc29sdXRpb24pIgogbXNnc3RyICIiCiAiICAo0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgcm0g0KTQkNCZ0JvigKbigJwsINC30LAg0LTQsCDRg9C60LDQttC10YLQtSDRgNCw0LfRgNC10YjQsNCy0LDQvdC10YLQviDQvdCwINC60L7QvdGE0LvQuNC60YLQsCkiCiAKLSM6IHd0LXN0YXR1cy5jOjIwMiB3dC1zdGF0dXMuYzoxMDQyCisjOiB3dC1zdGF0dXMuYzoyMTEgd3Qtc3RhdHVzLmM6MTA3NAogbXNnaWQgIkNoYW5nZXMgdG8gYmUgY29tbWl0dGVkOiIKIG1zZ3N0ciAi0J/RgNC+0LzQtdC90LgsINC60L7QuNGC0L4g0YnQtSDQsdGK0LTQsNGCINC/0L7QtNCw0LTQtdC90Lg6IgogCi0jOiB3dC1zdGF0dXMuYzoyMjAgd3Qtc3RhdHVzLmM6MTA1MQorIzogd3Qtc3RhdHVzLmM6MjM0IHd0LXN0YXR1cy5jOjEwODMKIG1zZ2lkICJDaGFuZ2VzIG5vdCBzdGFnZWQgZm9yIGNvbW1pdDoiCiBtc2dzdHIgItCf0YDQvtC80LXQvdC4LCDQutC+0LjRgtC+INC90LUg0YHQsCDQsiDQuNC90LTQtdC60YHQsCDQt9CwINC/0L7QtNCw0LLQsNC90LU6IgogCi0jOiB3dC1zdGF0dXMuYzoyMjQKKyM6IHd0LXN0YXR1cy5jOjIzOAogbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQgPGZpbGU+Li4uXCIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIgogbXNnc3RyICIiCiAiICAo0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgYWRkINCk0JDQmdCb4oCm4oCcLCDQt9CwINC00LAg0L7QsdC90L7QstC40YLQtSDRgdGK0LTRitGA0LbQsNC90LjQtdGC0L4g0LfQsCDQv9C+0LTQsNCy0LDQvdC1KSIKIAotIzogd3Qtc3RhdHVzLmM6MjI2CisjOiB3dC1zdGF0dXMuYzoyNDAKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiIgogIiAgKNC40LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeZ2l0IGFkZC9ybSDQpNCQ0JnQm+KApuKAnCwg0LfQsCDQtNCwINC+0LHQvdC+0LLQuNGC0LUg0YHRitC00YrRgNC20LDQvdC40LXRgtC+INC30LAg0L/QvtC00LDQstCw0L3QtSkiCiAKLSM6IHd0LXN0YXR1cy5jOjIyNworIzogd3Qtc3RhdHVzLmM6MjQxCiBtc2dpZCAiIgotIiAgKHVzZSBcImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi5cIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpIgorIiAgKHVzZSBcImdpdCByZXN0b3JlIDxmaWxlPi4uLlwiIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkiCiBtc2dzdHIgIiIKLSIgICjQuNC30L/QvtC70LfQstCw0LnRgtC1IOKAnmdpdCBjaGVja291dCAtLSDQpNCQ0JnQm+KApuKAnCwg0LfQsCDQtNCwINC+0YLRhdCy0YrRgNC70LjRgtC1INC/0YDQvtC80LXQvdC40YLQtSDQsiAiCi0i0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4pIgorIiAgKNC40LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeZ2l0IHJlc3RvcmUg0KTQkNCZ0JvigKbigJwsINC30LAg0LTQsCDQvtGC0YXQstGK0YDQu9C40YLQtSDQv9GA0L7QvNC10L3QuNGC0LUg0LIg0YDQsNCx0L7RgtC90LDRgtCwICIKKyLQtNC40YDQtdC60YLQvtGA0LjRjykiCiAKLSM6IHd0LXN0YXR1cy5jOjIyOQorIzogd3Qtc3RhdHVzLmM6MjQzCiBtc2dpZCAiICAoY29tbWl0IG9yIGRpc2NhcmQgdGhlIHVudHJhY2tlZCBvciBtb2RpZmllZCBjb250ZW50IGluIHN1Ym1vZHVsZXMpIgogbXNnc3RyICIiCiAiICAo0L/QvtC00LDQudGC0LUg0LjQu9C4INC+0YLRhdCy0YrRgNC70LXRgtC1INC90LXRgdC70LXQtNC10L3QvtGC0L4g0LjQu9C4INC/0YDQvtC80LXQvdC10L3QvtGC0L4g0YHRitC00YrRgNC20LDQvdC40LUg0LIgIgogItC/0L7QtNC80L7QtNGD0LvQuNGC0LUpIgogCi0jOiB3dC1zdGF0dXMuYzoyNDEKKyM6IHd0LXN0YXR1cy5jOjI1NAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICh1c2UgXCJnaXQgJXMgPGZpbGU+Li4uXCIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiIgogIiAgKNC40LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeZ2l0ICVzINCk0JDQmdCb4oCm4oCcLCDQt9CwINC00LAg0L7Qv9GA0LXQtNC10LvQuNGC0LUg0LrQsNC60LLQviDQstC60LvRjtGH0LLQsNGC0LUg0LIg0L/QvtC00LDQstCw0L3QtdGC0L4pIgogCi0jOiB3dC1zdGF0dXMuYzoyNTYKKyM6IHd0LXN0YXR1cy5jOjI2OAogbXNnaWQgImJvdGggZGVsZXRlZDoiCiBtc2dzdHIgItC40LfRgtGA0LjRgtC4INCyINC00LLQsNGC0LAg0YHQu9GD0YfQsNGPOiIKIAotIzogd3Qtc3RhdHVzLmM6MjU4CisjOiB3dC1zdGF0dXMuYzoyNzAKIG1zZ2lkICJhZGRlZCBieSB1czoiCiBtc2dzdHIgItC00L7QsdCw0LLQtdC90Lgg0L7RgiDQstCw0YE6IgogCi0jOiB3dC1zdGF0dXMuYzoyNjAKKyM6IHd0LXN0YXR1cy5jOjI3MgogbXNnaWQgImRlbGV0ZWQgYnkgdGhlbToiCiBtc2dzdHIgItC40LfRgtGA0LjRgtC4INC+0YIg0YLRj9GFOiIKIAotIzogd3Qtc3RhdHVzLmM6MjYyCisjOiB3dC1zdGF0dXMuYzoyNzQKIG1zZ2lkICJhZGRlZCBieSB0aGVtOiIKIG1zZ3N0ciAi0LTQvtCx0LDQstC10L3QuCDQvtGCINGC0Y/RhToiCiAKLSM6IHd0LXN0YXR1cy5jOjI2NAorIzogd3Qtc3RhdHVzLmM6Mjc2CiBtc2dpZCAiZGVsZXRlZCBieSB1czoiCiBtc2dzdHIgItC40LfRgtGA0LjRgtC4INC+0YIg0LLQsNGBOiIKIAotIzogd3Qtc3RhdHVzLmM6MjY2CisjOiB3dC1zdGF0dXMuYzoyNzgKIG1zZ2lkICJib3RoIGFkZGVkOiIKIG1zZ3N0ciAi0LTQvtCx0LDQstC10L3QuCDQuCDQsiDQtNCy0LDRgtCwINGB0LvRg9GH0LDRjzoiCiAKLSM6IHd0LXN0YXR1cy5jOjI2OAorIzogd3Qtc3RhdHVzLmM6MjgwCiBtc2dpZCAiYm90aCBtb2RpZmllZDoiCiBtc2dzdHIgItC/0YDQvtC80LXQvdC10L3QuCDQuCDQsiDQtNCy0LDRgtCwINGB0LvRg9GH0LDRjzoiCiAKLSM6IHd0LXN0YXR1cy5jOjI3OAorIzogd3Qtc3RhdHVzLmM6MjkwCiBtc2dpZCAibmV3IGZpbGU6IgogbXNnc3RyICLQvdC+0LIg0YTQsNC50Ls6IgogCi0jOiB3dC1zdGF0dXMuYzoyODAKKyM6IHd0LXN0YXR1cy5jOjI5MgogbXNnaWQgImNvcGllZDoiCiBtc2dzdHIgItC60L7Qv9C40YDQsNC9OiIKIAotIzogd3Qtc3RhdHVzLmM6MjgyCisjOiB3dC1zdGF0dXMuYzoyOTQKIG1zZ2lkICJkZWxldGVkOiIKIG1zZ3N0ciAi0LjQt9GC0YDQuNGCOiIKIAotIzogd3Qtc3RhdHVzLmM6Mjg0CisjOiB3dC1zdGF0dXMuYzoyOTYKIG1zZ2lkICJtb2RpZmllZDoiCiBtc2dzdHIgItC/0YDQvtC80LXQvdC10L06IgogCi0jOiB3dC1zdGF0dXMuYzoyODYKKyM6IHd0LXN0YXR1cy5jOjI5OAogbXNnaWQgInJlbmFtZWQ6IgogbXNnc3RyICLQv9GA0LXQuNC80LXQvdGD0LLQsNC9OiIKIAotIzogd3Qtc3RhdHVzLmM6Mjg4CisjOiB3dC1zdGF0dXMuYzozMDAKIG1zZ2lkICJ0eXBlY2hhbmdlOiIKIG1zZ3N0ciAi0YHQvNGP0L3QsCDQvdCwINCy0LjQtNCwOiIKIAotIzogd3Qtc3RhdHVzLmM6MjkwCisjOiB3dC1zdGF0dXMuYzozMDIKIG1zZ2lkICJ1bmtub3duOiIKIG1zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgtCwINC/0YDQvtC80Y/QvdCwOiIKIAotIzogd3Qtc3RhdHVzLmM6MjkyCisjOiB3dC1zdGF0dXMuYzozMDQKIG1zZ2lkICJ1bm1lcmdlZDoiCiBtc2dzdHIgItC90LXRgdC70Y/RgjoiCiAKLSM6IHd0LXN0YXR1cy5jOjM3MgorIzogd3Qtc3RhdHVzLmM6Mzg0CiBtc2dpZCAibmV3IGNvbW1pdHMsICIKIG1zZ3N0ciAi0L3QvtCy0Lgg0L/QvtC00LDQstCw0L3QuNGPLCAiCiAKLSM6IHd0LXN0YXR1cy5jOjM3NAorIzogd3Qtc3RhdHVzLmM6Mzg2CiBtc2dpZCAibW9kaWZpZWQgY29udGVudCwgIgogbXNnc3RyICLQv9GA0L7QvNC10L3QtdC90L4g0YHRitC00YrRgNC20LDQvdC40LUsICIKIAotIzogd3Qtc3RhdHVzLmM6Mzc2CisjOiB3dC1zdGF0dXMuYzozODgKIG1zZ2lkICJ1bnRyYWNrZWQgY29udGVudCwgIgogbXNnc3RyICLQvdC10YHQu9C10LTQtdC90L4g0YHRitC00YrRgNC20LDQvdC40LUsICIKIAotIzogd3Qtc3RhdHVzLmM6ODgwCisjOiB3dC1zdGF0dXMuYzo5MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBzdGFzaCBjdXJyZW50bHkgaGFzICVkIGVudHJ5IgogbXNnaWRfcGx1cmFsICJZb3VyIHN0YXNoIGN1cnJlbnRseSBoYXMgJWQgZW50cmllcyIKIG1zZ3N0clswXSAi0JjQvNCwICVkINGB0LrQsNGC0LDQstCw0L3QtS4iCiBtc2dzdHJbMV0gItCY0LzQsCAlZCDRgdC60LDRgtCw0LLQsNC90LjRjy4iCiAKLSM6IHd0LXN0YXR1cy5jOjkxMgorIzogd3Qtc3RhdHVzLmM6OTM4CiBtc2dpZCAiU3VibW9kdWxlcyBjaGFuZ2VkIGJ1dCBub3QgdXBkYXRlZDoiCiBtc2dzdHIgItCf0L7QtNC80L7QtNGD0LvQuNGC0LUg0YHQsCDQv9GA0L7QvNC10L3QtdC90LgsINC90L4g0L3QtSDRgdCwINC+0LHQvdC+0LLQtdC90Lg6IgogCi0jOiB3dC1zdGF0dXMuYzo5MTQKKyM6IHd0LXN0YXR1cy5jOjk0MAogbXNnaWQgIlN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCiBtc2dzdHIgItCf0YDQvtC80LXQvdC4INCyINC/0L7QtNC80L7QtNGD0LvQuNGC0LUg0LfQsCDQv9C+0LTQsNCy0LDQvdC1OiIKIAotIzogd3Qtc3RhdHVzLmM6OTk2CisjOiB3dC1zdGF0dXMuYzoxMDIyCiBtc2dpZCAiIgogIkRvIG5vdCBtb2RpZnkgb3IgcmVtb3ZlIHRoZSBsaW5lIGFib3ZlLlxuIgogIkV2ZXJ5dGhpbmcgYmVsb3cgaXQgd2lsbCBiZSBpZ25vcmVkLiIKQEAgLTcwNjgsMjQxICs5Mjk3LDI2OCBAQAogItCd0LUg0L/RgNC+0LzQtdC90Y/QudGC0LUg0Lgg0L3QtSDQuNC30YLRgNC40LLQsNC50YLQtSDQs9C+0YDQvdC40Y8g0YDQtdC0LlxuIgogItCS0YHQuNGH0LrQviDQvtGC0LTQvtC70YMg0YnQtSDQsdGK0LTQtSDQuNC30YLRgNC40YLQvi4iCiAKLSM6IHd0LXN0YXR1cy5jOjEwOTcKKyM6IHd0LXN0YXR1cy5jOjExMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGNvbXB1dGUgdGhlIGJyYW5jaCBhaGVhZC9iZWhpbmQgdmFsdWVzLlxuIgorIllvdSBjYW4gdXNlICctLW5vLWFoZWFkLWJlaGluZCcgdG8gYXZvaWQgdGhpcy5cbiIKK21zZ3N0ciAiIgorIlxuIgorItCY0LfRh9C40YHQu9GP0LLQsNC90LXRgtC+INC90LAg0LHRgNC+0Y8g0YDQsNC30LvQuNGH0LDQstCw0YnQuCDRgdC1INC/0L7QtNCw0LLQsNC90LjRjyDQvtGC0L3QtSAlLjJmINGB0LXQui5cbiIKKyLQl9CwINC00LAg0LjQt9Cx0LXQs9C90LXRgtC1INGC0L7QstCwLCDQv9C+0LvQt9Cy0LDQudGC0LUg4oCeLS1uby1haGVhZC1iZWhpbmTigJwuXG4iCisKKyM6IHd0LXN0YXR1cy5jOjExNDQKIG1zZ2lkICJZb3UgaGF2ZSB1bm1lcmdlZCBwYXRocy4iCiBtc2dzdHIgItCd0Y/QutC+0Lgg0L/RitGC0LjRidCwINC90LUg0YHQsCDRgdC70LXRgtC4LiIKIAotIzogd3Qtc3RhdHVzLmM6MTEwMAorIzogd3Qtc3RhdHVzLmM6MTE0NwogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjb21taXRcIikiCiBtc2dzdHIgIiAgKNC60L7RgNC40LPQuNGA0LDQudGC0LUg0LrQvtC90YTQu9C40LrRgtC40YLQtSDQuCDQuNC30L/RitC70L3QtdGC0LUg4oCeZ2l0IGNvbW1pdOKAnCkiCiAKLSM6IHd0LXN0YXR1cy5jOjExMDIKKyM6IHd0LXN0YXR1cy5jOjExNDkKIG1zZ2lkICIgICh1c2UgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIHRvIGFib3J0IHRoZSBtZXJnZSkiCiBtc2dzdHIgIiAgKNC40LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeZ2l0IG1lcmdlIC0tYWJvcnTigJwsINC30LAg0LTQsCDQv9GA0LXRg9GB0YLQsNC90L7QstC40YLQtSDRgdC70LjQstCw0L3QtdGC0L4pIgogCi0jOiB3dC1zdGF0dXMuYzoxMTA2CisjOiB3dC1zdGF0dXMuYzoxMTUzCiBtc2dpZCAiQWxsIGNvbmZsaWN0cyBmaXhlZCBidXQgeW91IGFyZSBzdGlsbCBtZXJnaW5nLiIKIG1zZ3N0ciAi0JLRgdC40YfQutC4INC60L7QvdGE0LvQuNC60YLQuCDRgdCwINGA0LXRiNC10L3QuCwg0L3QviDQv9GA0L7QtNGK0LvQttCw0LLQsNGC0LUg0YHQu9C40LLQsNC90LXRgtC+LiIKIAotIzogd3Qtc3RhdHVzLmM6MTEwOQorIzogd3Qtc3RhdHVzLmM6MTE1NgogbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXRcIiB0byBjb25jbHVkZSBtZXJnZSkiCiBtc2dzdHIgIiAgKNC40LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeZ2l0IGNvbW1pdOKAnCwg0LfQsCDQtNCwINC30LDQstGK0YDRiNC40YLQtSDRgdC70LjQstCw0L3QtdGC0L4pIgogCi0jOiB3dC1zdGF0dXMuYzoxMTE4CisjOiB3dC1zdGF0dXMuYzoxMTY1CiBtc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGFuIGFtIHNlc3Npb24uIgogbXNnc3RyICLQkiDQvNC+0LzQtdC90YLQsCDQv9GA0LjQu9Cw0LPQsNGC0LUg0L/QvtGA0LXQtNC40YbQsCDQvtGCINC60YDRitC/0LrQuCDRh9GA0LXQtyDigJ5naXQgYW3igJwuIgogCi0jOiB3dC1zdGF0dXMuYzoxMTIxCisjOiB3dC1zdGF0dXMuYzoxMTY4CiBtc2dpZCAiVGhlIGN1cnJlbnQgcGF0Y2ggaXMgZW1wdHkuIgogbXNnc3RyICLQotC10LrRg9GJ0LDRgtCwINC60YDRitC/0LrQsCDQtSDQv9GA0LDQt9C90LAuIgogCi0jOiB3dC1zdGF0dXMuYzoxMTI1CisjOiB3dC1zdGF0dXMuYzoxMTcyCiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBydW4gXCJnaXQgYW0gLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiICAo0LrQvtGA0LjQs9C40YDQsNC50YLQtSDQutC+0L3RhNC70LjQutGC0LjRgtC1INC4INC40LfQv9GK0LvQvdC10YLQtSDigJ5naXQgYW0gLS1jb250aW51ZeKAnCkiCiAKLSM6IHd0LXN0YXR1cy5jOjExMjcKKyM6IHd0LXN0YXR1cy5jOjExNzQKIG1zZ2lkICIgICh1c2UgXCJnaXQgYW0gLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKIG1zZ3N0ciAiICAo0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgYW0gLS1za2lw4oCcLCDQt9CwINC00LAg0L/RgNC+0L/Rg9GB0L3QtdGC0LUg0YLQsNC30Lgg0LrRgNGK0L/QutCwKSIKIAotIzogd3Qtc3RhdHVzLmM6MTEyOQorIzogd3Qtc3RhdHVzLmM6MTE3NgogbXNnaWQgIiAgKHVzZSBcImdpdCBhbSAtLWFib3J0XCIgdG8gcmVzdG9yZSB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiIgogIiAgKNC40LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeZ2l0IGFtIC0tYWJvcnTigJwsINC30LAg0LTQsCDQstGK0LfRgdGC0LDQvdC+0LLQuNGC0LUg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdC40Y8g0LrQu9C+0L0pIgogCi0jOiB3dC1zdGF0dXMuYzoxMjYwCisjOiB3dC1zdGF0dXMuYzoxMzA5CiBtc2dpZCAiZ2l0LXJlYmFzZS10b2RvIGlzIG1pc3NpbmcuIgogbXNnc3RyICLigJ5naXQtcmViYXNlLXRvZG/igJwg0LvQuNC/0YHQstCwLiIKIAotIzogd3Qtc3RhdHVzLmM6MTI2MgorIzogd3Qtc3RhdHVzLmM6MTMxMQogbXNnaWQgIk5vIGNvbW1hbmRzIGRvbmUuIgogbXNnc3RyICLQndC1INGB0LAg0LjQt9C/0YrQu9C90LXQvdC4INC60L7QvNCw0L3QtNC4LiIKIAotIzogd3Qtc3RhdHVzLmM6MTI2NQorIzogd3Qtc3RhdHVzLmM6MTMxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJMYXN0IGNvbW1hbmQgZG9uZSAoJWQgY29tbWFuZCBkb25lKToiCiBtc2dpZF9wbHVyYWwgIkxhc3QgY29tbWFuZHMgZG9uZSAoJWQgY29tbWFuZHMgZG9uZSk6IgotbXNnc3RyWzBdICLQn9C+0YHQu9C10LTQvdCwINC40LfQv9GK0LvQvdC10L3QsCDQutC+0LzQsNC90LTQsCAo0LjQt9C/0YrQu9C90LXQvdCwINC1INC+0LHRidC+ICVkINC60L7QvNCw0L3QtNCwKToiCi1tc2dzdHJbMV0gItCf0L7RgdC70LXQtNC90LAg0LjQt9C/0YrQu9C90LXQvdCwINC60L7QvNCw0L3QtNCwICjQuNC30L/RitC70L3QtdC90Lgg0YHQsCDQvtCx0YnQviAlZCDQutC+0LzQsNC90LTQuCk6IgorbXNnc3RyWzBdICLQn9C+0YHQu9C10LTQvdC+INC40LfQv9GK0LvQvdC10L3QsCDQutC+0LzQsNC90LTQsCAo0LjQt9C/0YrQu9C90LXQvdCwINC1INC+0LHRidC+ICVkINC60L7QvNCw0L3QtNCwKToiCittc2dzdHJbMV0gItCf0L7RgdC70LXQtNC90L4g0LjQt9C/0YrQu9C90LXQvdC4INC60L7QvNCw0L3QtNC4ICjQuNC30L/RitC70L3QtdC90Lgg0YHQsCDQvtCx0YnQviAlZCDQutC+0LzQsNC90LTQuCk6IgogCi0jOiB3dC1zdGF0dXMuYzoxMjc2CisjOiB3dC1zdGF0dXMuYzoxMzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgKHNlZSBtb3JlIGluIGZpbGUgJXMpIgotbXNnc3RyICIgINC/0L7QstC10YfQtSDQuNC90YTQvtGA0LzQsNGG0LjRjyDQuNC80LAg0LLRitCyINGE0LDQudC70LAg4oCeJXPigJwpIgorbXNnc3RyICIgICjQv9C+0LLQtdGH0LUg0LjQvdGE0L7RgNC80LDRhtC40Y8g0LjQvNCwINCy0YrQsiDRhNCw0LnQu9CwIOKAniVz4oCcKSIKIAotIzogd3Qtc3RhdHVzLmM6MTI4MQorIzogd3Qtc3RhdHVzLmM6MTMzMAogbXNnaWQgIk5vIGNvbW1hbmRzIHJlbWFpbmluZy4iCiBtc2dzdHIgItCd0LUg0L7RgdGC0LDQstCw0YIg0L/QvtCy0LXRh9C1INC60L7QvNCw0L3QtNC4LiIKIAotIzogd3Qtc3RhdHVzLmM6MTI4NAorIzogd3Qtc3RhdHVzLmM6MTMzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJOZXh0IGNvbW1hbmQgdG8gZG8gKCVkIHJlbWFpbmluZyBjb21tYW5kKToiCiBtc2dpZF9wbHVyYWwgIk5leHQgY29tbWFuZHMgdG8gZG8gKCVkIHJlbWFpbmluZyBjb21tYW5kcyk6IgogbXNnc3RyWzBdICLQodC70LXQtNCy0LDRidCwINC60L7QvNCw0L3QtNCwINC30LAg0LjQt9C/0YrQu9C90LXQvdC40LUgKNC+0YHRgtCw0LLQsCDQvtGJ0LUgJWQg0LrQvtC80LDQvdC00LApOiIKLW1zZ3N0clsxXSAi0KHQu9C10LTQstCw0YnQsCDQutC+0LzQsNC90LTQsCDQt9CwINC40LfQv9GK0LvQvdC10L3QuNC1ICjQvtGB0YLQsNCy0LDRgiDQvtGJ0LUgJWQg0LrQvtC80LDQvdC00LgpOiIKK21zZ3N0clsxXSAi0KHQu9C10LTQstCw0YnQuCDQutC+0LzQsNC90LTQuCDQt9CwINC40LfQv9GK0LvQvdC10L3QuNC1ICjQvtGB0YLQsNCy0LDRgiDQvtGJ0LUgJWQg0LrQvtC80LDQvdC00LgpOiIKIAotIzogd3Qtc3RhdHVzLmM6MTI5MgorIzogd3Qtc3RhdHVzLmM6MTM0MQogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1lZGl0LXRvZG9cIiB0byB2aWV3IGFuZCBlZGl0KSIKIG1zZ3N0ciAiIgogIiAgKNC40LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb+KAnCwg0LfQsCDQtNCwINGA0LDQt9Cz0LvQtdC00LDRgtC1INC4INGA0LXQtNCw0LrRgtC40YDQsNGC0LUpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzA0CisjOiB3dC1zdGF0dXMuYzoxMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgogbXNnc3RyICLQkiDQvNC+0LzQtdC90YLQsCDQv9GA0LXQsdCw0LfQuNGA0LDRgtC1INC60LvQvtC90LAg4oCeJXPigJwg0LLRitGA0YXRgyDigJ4lc+KAnC4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzMDkKKyM6IHd0LXN0YXR1cy5jOjEzNTgKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSByZWJhc2luZy4iCiBtc2dzdHIgItCSINC80L7QvNC10L3RgtCwINC/0YDQtdCx0LDQt9C40YDQsNGC0LUuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzIyCisjOiB3dC1zdGF0dXMuYzoxMzcxCiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKNC60L7RgNC40LPQuNGA0LDQudGC0LUg0LrQvtC90YTQu9C40LrRgtC40YLQtSDQuCDQuNC30L/QvtC70LfQstCw0LnRgtC1IOKAnmdpdCByZWJhc2UgLS1jb250aW51ZeKAnCkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMjQKKyM6IHd0LXN0YXR1cy5jOjEzNzMKIG1zZ2lkICIgICh1c2UgXCJnaXQgcmViYXNlIC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCiBtc2dzdHIgIiAgKNC40LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeZ2l0IHJlYmFzZSAtLXNraXDigJwsINC30LAg0LTQsCDQv9GA0L7Qv9GD0YHQvdC10YLQtSDRgtCw0LfQuCDQutGA0YrQv9C60LApIgogCi0jOiB3dC1zdGF0dXMuYzoxMzI2CisjOiB3dC1zdGF0dXMuYzoxMzc1CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWFib3J0XCIgdG8gY2hlY2sgb3V0IHRoZSBvcmlnaW5hbCBicmFuY2gpIgogbXNnc3RyICIiCiAiICAo0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgcmViYXNlIC0tYWJvcnTigJwsINC30LAg0LTQsCDQstGK0LfRgdGC0LDQvdC+0LLQuNGC0LUg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdC40Y8g0LrQu9C+0L0pIgogCi0jOiB3dC1zdGF0dXMuYzoxMzMzCisjOiB3dC1zdGF0dXMuYzoxMzgyCiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgICjQstGB0LjRh9C60Lgg0LrQvtC90YTQu9C40LrRgtC4INGB0LAg0LrQvtGA0LjQs9C40YDQsNC90Lg6INC40LfQv9GK0LvQvdC10YLQtSDigJ5naXQgcmViYXNlIC0tY29udGludWXigJwpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzM3CisjOiB3dC1zdGF0dXMuYzoxMzg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXJlIGN1cnJlbnRseSBzcGxpdHRpbmcgYSBjb21taXQgd2hpbGUgcmViYXNpbmcgYnJhbmNoICclcycgb24gJyVzJy4iCiBtc2dzdHIgItCSINC80L7QvNC10L3RgtCwINGA0LDQt9C00LXQu9GP0YLQtSDQv9C+0LTQsNCy0LDQvdC1INC00L7QutCw0YLQviDQv9GA0LXQsdCw0LfQuNGA0LDRgtC1INC60LvQvtC90LAg4oCeJXPigJwg0LLRitGA0YXRgyDigJ4lc+KAnC4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzNDIKKyM6IHd0LXN0YXR1cy5jOjEzOTEKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBzcGxpdHRpbmcgYSBjb21taXQgZHVyaW5nIGEgcmViYXNlLiIKIG1zZ3N0ciAi0JIg0LzQvtC80LXQvdGC0LAg0YDQsNC30LTQtdC70Y/RgtC1INC/0L7QtNCw0LLQsNC90LUg0LTQvtC60LDRgtC+INC/0YDQtdCx0LDQt9C40YDQsNGC0LUuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzQ1CisjOiB3dC1zdGF0dXMuYzoxMzk0CiBtc2dpZCAiICAoT25jZSB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IGlzIGNsZWFuLCBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiIKICIgICjQodC70LXQtCDQutCw0YLQviDRgNCw0LHQvtGC0L3QvtGC0L4g0LLQuCDQtNGK0YDQstC+INGB0YLQsNC90LUg0YfQuNGB0YLQviwg0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgcmViYXNlIC0tIgogImNvbnRpbnVl4oCcKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM0OQorIzogd3Qtc3RhdHVzLmM6MTM5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBlZGl0aW5nIGEgY29tbWl0IHdoaWxlIHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgogbXNnc3RyICIiCiAi0JIg0LzQvtC80LXQvdGC0LAg0YDQtdC00LDQutGC0LjRgNCw0YLQtSDQv9C+0LTQsNCy0LDQvdC1INC00L7QutCw0YLQviDQv9GA0LXQsdCw0LfQuNGA0LDRgtC1INC60LvQvtC90LAg4oCeJXPigJwg0LLRitGA0YXRgyDigJ4lc+KAnC4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTQKKyM6IHd0LXN0YXR1cy5jOjE0MDMKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBlZGl0aW5nIGEgY29tbWl0IGR1cmluZyBhIHJlYmFzZS4iCiBtc2dzdHIgItCSINC80L7QvNC10L3RgtCwINGA0LXQtNCw0LrRgtC40YDQsNGC0LUg0L/QvtC00LDQstCw0L3QtSDQtNC+0LrQsNGC0L4g0L/RgNC10LHQsNC30LjRgNCw0YLQtS4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTcKKyM6IHd0LXN0YXR1cy5jOjE0MDYKIG1zZ2lkICIgICh1c2UgXCJnaXQgY29tbWl0IC0tYW1lbmRcIiB0byBhbWVuZCB0aGUgY3VycmVudCBjb21taXQpIgogbXNnc3RyICIiCiAiICAo0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgY29tbWl0IC0tYW1lbmTigJwsINC30LAg0LTQsCDRgNC10LTQsNC60YLQuNGA0LDRgtC1INGC0LXQutGD0YnQvtGC0L4g0L/QvtC00LDQstCw0L3QtSkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTkKKyM6IHd0LXN0YXR1cy5jOjE0MDgKIG1zZ2lkICIiCiAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIgb25jZSB5b3UgYXJlIHNhdGlzZmllZCB3aXRoIHlvdXIgY2hhbmdlcykiCiBtc2dzdHIgIiIKICIgICjQuNC30L/QvtC70LfQstCw0LnRgtC1IOKAnmdpdCByZWJhc2UgLS1jb250aW51ZeKAnCwg0YHQu9C10LQg0LrQsNGC0L4g0LfQsNCy0YrRgNGI0LjRgtC1INC/0YDQvtC80LXQvdC40YLQtSDRgdC4KSIKIAotIzogd3Qtc3RhdHVzLmM6MTM2OAorIzogd3Qtc3RhdHVzLmM6MTQxOQorbXNnaWQgIkNoZXJyeS1waWNrIGN1cnJlbnRseSBpbiBwcm9ncmVzcy4iCittc2dzdHIgItCSINC80L7QvNC10L3RgtCwINGB0LUg0LjQt9Cy0YrRgNGI0LLQsCDQvtGC0LHQuNGA0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QuNGPLiIKKworIzogd3Qtc3RhdHVzLmM6MTQyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBjaGVycnktcGlja2luZyBjb21taXQgJXMuIgogbXNnc3RyICLQkiDQvNC+0LzQtdC90YLQsCDQvtGC0LHQuNGA0LDRgtC1INC/0L7QtNCw0LLQsNC90LXRgtC+IOKAniVz4oCcLiIKIAotIzogd3Qtc3RhdHVzLmM6MTM3MworIzogd3Qtc3RhdHVzLmM6MTQyOQogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgICjQutC+0YDQuNCz0LjRgNCw0LnRgtC1INC60L7QvdGE0LvQuNC60YLQuNGC0LUg0Lgg0LjQt9C/0YrQu9C90LXRgtC1IOKAnmdpdCBjaGVycnktcGljayAtLWNvbnRpbnVl4oCcKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM3NgorIzogd3Qtc3RhdHVzLmM6MTQzMgorbXNnaWQgIiAgKHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgdG8gY29udGludWUpIgorbXNnc3RyICIgICjQt9CwINC00LAg0L/RgNC+0LTRitC70LbQuNGC0LUsINC40LfQv9GK0LvQvdC10YLQtSDigJ5naXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZeKAnCkiCisKKyM6IHd0LXN0YXR1cy5jOjE0MzUKIG1zZ2lkICIgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiIgogIiAgKNCy0YHQuNGH0LrQuCDQutC+0L3RhNC70LjQutGC0Lgg0YHQsCDQutC+0YDQuNCz0LjRgNCw0L3QuCwg0LjQt9C/0YrQu9C90LXRgtC1IOKAnmdpdCBjaGVycnktcGljayAtLWNvbnRpbnVl4oCcKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM3OAorIzogd3Qtc3RhdHVzLmM6MTQzNworbXNnaWQgIiAgKHVzZSBcImdpdCBjaGVycnktcGljayAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgorbXNnc3RyICIgICjQuNC30L/QvtC70LfQstCw0LnRgtC1IOKAnmdpdCBjaGVycnktcGljayAtLXNraXDigJwsINC30LAg0LTQsCDQv9GA0L7Qv9GD0YHQvdC10YLQtSDRgtCw0LfQuCDQutGA0YrQv9C60LApIgorCisjOiB3dC1zdGF0dXMuYzoxNDM5CiBtc2dpZCAiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnRcIiB0byBjYW5jZWwgdGhlIGNoZXJyeS1waWNrIG9wZXJhdGlvbikiCiBtc2dzdHIgIiIKICIgICjQuNC30L/QvtC70LfQstCw0LnRgtC1IOKAnmdpdCBjaGVycnktcGljayAtLWFib3J04oCcLCDQt9CwINC00LAg0L7RgtC80LXQvdC40YLQtSDQstGB0LjRh9C60Lgg0LTQtdC50YHRgtCy0LjRjyDRgSAiCiAi0L7RgtCx0LjRgNCw0L3QtSkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzODYKKyM6IHd0LXN0YXR1cy5jOjE0NDkKK21zZ2lkICJSZXZlcnQgY3VycmVudGx5IGluIHByb2dyZXNzLiIKK21zZ3N0ciAi0JIg0LzQvtC80LXQvdGC0LAg0YLQtdGH0LUg0L7RgtC80Y/QvdCwINC90LAg0L/QvtC00LDQstCw0L3QtS4iCisKKyM6IHd0LXN0YXR1cy5jOjE0NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmV2ZXJ0aW5nIGNvbW1pdCAlcy4iCiBtc2dzdHIgItCSINC80L7QvNC10L3RgtCwINC+0YLQvNC10L3Rj9GC0LUg0L/QvtC00LDQstCw0L3QtSDigJ4lc+KAnC4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzOTEKKyM6IHd0LXN0YXR1cy5jOjE0NTgKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKNC60L7RgNC40LPQuNGA0LDQudGC0LUg0LrQvtC90YTQu9C40LrRgtC40YLQtSDQuCDQuNC30L/RitC70L3QtdGC0LUg4oCeZ2l0IHJldmVydCAtLWNvbnRpbnVl4oCcKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM5NAorIzogd3Qtc3RhdHVzLmM6MTQ2MQorbXNnaWQgIiAgKHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiIHRvIGNvbnRpbnVlKSIKK21zZ3N0ciAiICAo0LfQsCDQtNCwINC/0YDQvtC00YrQu9C20LjRgtC1LCDQuNC30L/RitC70L3QtdGC0LUg4oCeZ2l0IHJldmVydCAtLWNvbnRpbnVl4oCcKSIKKworIzogd3Qtc3RhdHVzLmM6MTQ2NAogbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiICAo0LLRgdC40YfQutC4INC60L7QvdGE0LvQuNC60YLQuCDRgdCwINC60L7RgNC40LPQuNGA0LDQvdC4LCDQuNC30L/RitC70L3QtdGC0LUg4oCeZ2l0IHJldmVydCAtLWNvbnRpbnVl4oCcKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM5NgorIzogd3Qtc3RhdHVzLmM6MTQ2NgorbXNnaWQgIiAgKHVzZSBcImdpdCByZXZlcnQgLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKK21zZ3N0ciAiICAo0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgcmV2ZXJ0IC0tc2tpcOKAnCwg0LfQsCDQtNCwINC/0YDQvtC/0YPRgdC90LXRgtC1INGC0LDQt9C4INC60YDRitC/0LrQsCkiCisKKyM6IHd0LXN0YXR1cy5jOjE0NjgKIG1zZ2lkICIgICh1c2UgXCJnaXQgcmV2ZXJ0IC0tYWJvcnRcIiB0byBjYW5jZWwgdGhlIHJldmVydCBvcGVyYXRpb24pIgogbXNnc3RyICIiCiAiICAo0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgcmV2ZXJ0IC0tYWJvcnTigJwsINC30LAg0LTQsCDQv9GA0LXRg9GB0YLQsNC90L7QstC40YLQtSDQvtGC0LzRj9C90LDRgtCwINC90LAgIgogItC/0L7QtNCw0LLQsNC90LUpIgogCi0jOiB3dC1zdGF0dXMuYzoxNDA2CisjOiB3dC1zdGF0dXMuYzoxNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGJpc2VjdGluZywgc3RhcnRlZCBmcm9tIGJyYW5jaCAnJXMnLiIKIG1zZ3N0ciAi0JIg0LzQvtC80LXQvdGC0LAg0YLRitGA0YHQuNGC0LUg0LTQstC+0LjRh9C90L4sINC60LDRgtC+INGB0YLQtSDRgdGC0LDRgNGC0LjRgNCw0LvQuCDQvtGCINC60LvQvtC9IOKAniVz4oCcLiIKIAotIzogd3Qtc3RhdHVzLmM6MTQxMAorIzogd3Qtc3RhdHVzLmM6MTQ4MgogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGJpc2VjdGluZy4iCiBtc2dzdHIgItCSINC80L7QvNC10L3RgtCwINGC0YrRgNGB0LjRgtC1INC00LLQvtC40YfQvdC+LiIKIAotIzogd3Qtc3RhdHVzLmM6MTQxMworIzogd3Qtc3RhdHVzLmM6MTQ4NQogbXNnaWQgIiAgKHVzZSBcImdpdCBiaXNlY3QgcmVzZXRcIiB0byBnZXQgYmFjayB0byB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiIgogIiAgKNC40LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeZ2l0IGJpc2VjdCByZXNldOKAnCwg0LfQsCDQtNCwINGB0LUg0LLRitGA0L3QtdGC0LUg0LrRitC8INC/0YrRgNCy0L7QvdCw0YfQsNC70L3QvtGC0L4gIgogItGB0YrRgdGC0L7Rj9C90LjQtSDQuCDQutC70L7QvSkiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MTEKKyM6IHd0LXN0YXR1cy5jOjE2OTQKIG1zZ2lkICJPbiBicmFuY2ggIgogbXNnc3RyICLQndCwINC60LvQvtC9ICIKIAotIzogd3Qtc3RhdHVzLmM6MTYxOAorIzogd3Qtc3RhdHVzLmM6MTcwMQogbXNnaWQgImludGVyYWN0aXZlIHJlYmFzZSBpbiBwcm9ncmVzczsgb250byAiCiBtc2dzdHIgItC40LfQstGK0YDRiNCy0LDRgtC1INC40L3RgtC10YDQsNC60YLQuNCy0L3QviDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1INCy0YrRgNGF0YMgIgogCi0jOiB3dC1zdGF0dXMuYzoxNjIwCisjOiB3dC1zdGF0dXMuYzoxNzAzCiBtc2dpZCAicmViYXNlIGluIHByb2dyZXNzOyBvbnRvICIKIG1zZ3N0ciAi0LjQt9Cy0YrRgNGI0LLQsNGC0LUg0L/RgNC10LHQsNC30LjRgNCw0L3QtSDQstGK0YDRhdGDICIKIAotIzogd3Qtc3RhdHVzLmM6MTYyNQotbXNnaWQgIkhFQUQgZGV0YWNoZWQgYXQgIgotbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINC90LUg0LUg0YHQstGK0YDQt9Cw0L0g0Lgg0LUg0L/RgNC4ICIKLQotIzogd3Qtc3RhdHVzLmM6MTYyNwotbXNnaWQgIkhFQUQgZGV0YWNoZWQgZnJvbSAiCi1tc2dzdHIgItCj0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0L3QtSDQtSDRgdCy0YrRgNC30LDQvSDQuCDQtSDQvtGC0LTQtdC70LXMgNC9INC+0YIgIgotCi0jOiB3dC1zdGF0dXMuYzoxNjMwCisjOiB3dC1zdGF0dXMuYzoxNzEzCiBtc2dpZCAiTm90IGN1cnJlbnRseSBvbiBhbnkgYnJhbmNoLiIKIG1zZ3N0ciAi0JjQt9Cy0YrQvSDQstGB0LjRh9C60Lgg0LrQu9C+0L3QuC4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2NDcKKyM6IHd0LXN0YXR1cy5jOjE3MzAKIG1zZ2lkICJJbml0aWFsIGNvbW1pdCIKIG1zZ3N0ciAi0J/RitGA0LLQvtC90LDRh9Cw0LvQvdC+INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NDgKKyM6IHd0LXN0YXR1cy5jOjE3MzEKIG1zZ2lkICJObyBjb21taXRzIHlldCIKIG1zZ3N0ciAi0JLRgdC1INC+0YnQtSDQu9C40L/RgdCy0LDRgiDQv9C+0LTQsNCy0LDQvdC40Y8iCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjIKKyM6IHd0LXN0YXR1cy5jOjE3NDUKIG1zZ2lkICJVbnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgItCd0LXRgdC70LXQtNC10L3QuCDRhNCw0LnQu9C+0LLQtSIKIAotIzogd3Qtc3RhdHVzLmM6MTY2NAorIzogd3Qtc3RhdHVzLmM6MTc0NwogbXNnaWQgIklnbm9yZWQgZmlsZXMiCiBtc2dzdHIgItCY0LPQvdC+0YDQuNGA0LDQvdC4INGE0LDQudC70L7QstC1IgogCi0jOiB3dC1zdGF0dXMuYzoxNjY4CisjOiB3dC1zdGF0dXMuYzoxNzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBlbnVtZXJhdGUgdW50cmFja2VkIGZpbGVzLiAnc3RhdHVzIC11bm8nXG4iCkBAIC03MzExLDM1ICs5NTY3LDM1IEBACiBtc2dzdHIgIiIKICLQkdGP0YXQsCDQvdC10L7QsdGF0L7QtNC40LzQuCAlLjJmINGB0LXQutGD0L3QtNC4INC30LAg0LjQt9Cx0YDQvtGP0LLQsNC90LXRgtC+INC90LAg0L3QtdGB0LvQtdC00LXQvdC40YLQtSDRhNCw0LnQu9C+0LLQtS5cbiIKICLQlNC+0LHQsNCy0Y/QvdC10YLQviDQvdCwINC+0L/RhtC40Y/RgtCwIOKAni11bm/igJwg0LrRitC8INC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgc3RhdHVz4oCcLCDRidC1INGD0YHQutC+0YDQuFxuIgotItC40LfQv9GK0LvQvdC10L3QuNC10YLQviwg0L3QviDQvdC1INGC0YDRj9Cx0LLQsCDQtNCwINC30LDQsdGA0LDQstGP0YLQtSDRgNGK0YfQvdC+INC00LAg0LTQvtCx0LDQstGP0YLQtSDQvdC+0LLQuNGC0LUg0YTQsNC50LvQvtCy0LUuXG4iCisi0LjQt9C/0YrQu9C90LXQvdC40LXRgtC+LCDQvdC+INGJ0LUg0YLRgNGP0LHQstCwINC00LAg0LTQvtCx0LDQstGP0YLQtSDQvdC+0LLQuNGC0LUg0YTQsNC50LvQvtCy0LUg0YDRitGH0L3Qvi5cbiIKICLQl9CwINC/0L7QstC10YfQtSDQv9C+0LTRgNC+0LHQvdC+0YHRgtC4INC/0L7Qs9C70LXQtNC90LXRgtC1IOKAnmdpdCBzdGF0dXMgaGVscOKAnC4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2NzQKKyM6IHd0LXN0YXR1cy5jOjE3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW50cmFja2VkIGZpbGVzIG5vdCBsaXN0ZWQlcyIKIG1zZ3N0ciAi0J3QtdGB0LvQtdC00LXQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSDQvdC1INGB0LAg0LjQt9Cy0LXQtNC10L3QuCVzIgogCi0jOiB3dC1zdGF0dXMuYzoxNjc2CisjOiB3dC1zdGF0dXMuYzoxNzU5CiBtc2dpZCAiICh1c2UgLXUgb3B0aW9uIHRvIHNob3cgdW50cmFja2VkIGZpbGVzKSIKIG1zZ3N0ciAiICjQuNC30L/QvtC70LfQstCw0LnRgtC1INC+0L/RhtC40Y/RgtCwIOKAni114oCcLCDQt9CwINC00LAg0LjQt9Cy0LXQtNC10YLQtSDQvdC10YHQu9C10LTQtdC90LjRgtC1INGE0LDQudC70L7QstC1KSIKIAotIzogd3Qtc3RhdHVzLmM6MTY4MgorIzogd3Qtc3RhdHVzLmM6MTc2NQogbXNnaWQgIk5vIGNoYW5nZXMiCiBtc2dzdHIgItCd0Y/QvNCwINC/0YDQvtC80LXQvdC4IgogCi0jOiB3dC1zdGF0dXMuYzoxNjg3CisjOiB3dC1zdGF0dXMuYzoxNzcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGNoYW5nZXMgYWRkZWQgdG8gY29tbWl0ICh1c2UgXCJnaXQgYWRkXCIgYW5kL29yIFwiZ2l0IGNvbW1pdCAtYVwiKVxuIgogbXNnc3RyICIiCiAi0LrRitC8INC40L3QtNC10LrRgdCwINC30LAg0L/QvtC00LDQstCw0L3QtSDQvdC1INGB0LAg0LTQvtCx0LDQstC10L3QuCDQv9GA0L7QvNC10L3QuCAo0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgYWRk4oCcINC4L9C40LvQuCAiCiAi4oCeZ2l0IGNvbW1pdCAtYeKAnClcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTY5MAorIzogd3Qtc3RhdHVzLmM6MTc3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdFxuIgogbXNnc3RyICLQutGK0Lwg0LjQvdC00LXQutGB0LAg0LfQsCDQv9C+0LTQsNCy0LDQvdC1INC90LUg0YHQsCDQtNC+0LHQsNCy0LXQvdC4INC/0YDQvtC80LXQvdC4XG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTMKKyM6IHd0LXN0YXR1cy5jOjE3NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdGhpbmcgYWRkZWQgdG8gY29tbWl0IGJ1dCB1bnRyYWNrZWQgZmlsZXMgcHJlc2VudCAodXNlIFwiZ2l0IGFkZFwiIHRvICIKQEAgLTczNDgsMTk2ICs5NjA0LDIwNSBAQAogItC60YrQvCDQuNC90LTQtdC60YHQsCDQt9CwINC/0L7QtNCw0LLQsNC90LUg0L3QtSDRgdCwINC00L7QsdCw0LLQtdC90Lgg0L/RgNC+0LzQtdC90LgsINC90L4g0LjQvNCwINC90L7QstC4INGE0LDQudC70L7QstC1ICIKICIo0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgYWRk4oCcLCDQt9CwINC00LAg0LfQsNC/0L7Rh9C90LUg0YLRj9GF0L3QvtGC0L4g0YHQu9C10LTQtdC90LUpXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTYKKyM6IHd0LXN0YXR1cy5jOjE3NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyBhZGRlZCB0byBjb21taXQgYnV0IHVudHJhY2tlZCBmaWxlcyBwcmVzZW50XG4iCiBtc2dzdHIgItC60YrQvCDQuNC90LTQtdC60YHQsCDQt9CwINC/0L7QtNCw0LLQsNC90LUg0L3QtSDRgdCwINC00L7QsdCw0LLQtdC90Lgg0L/RgNC+0LzQtdC90LgsINC90L4g0LjQvNCwINC90L7QstC4INGE0LDQudC70L7QstC1XG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTkKKyM6IHd0LXN0YXR1cy5jOjE3ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXQgKGNyZWF0ZS9jb3B5IGZpbGVzIGFuZCB1c2UgXCJnaXQgYWRkXCIgdG8gdHJhY2spXG4iCiBtc2dzdHIgIiIKICLQu9C40L/RgdCy0LDRgiDQutCw0LrQstC40YLQviDQuCDQtNCwINC1INC/0YDQvtC80LXQvdC4ICjRgdGK0LfQtNCw0LnRgtC1INC40LvQuCDQutC+0L/QuNGA0LDQudGC0LUg0YTQsNC50LvQvtCy0LUg0Lgg0LjQt9C/0L7Qu9C30LLQsNC50YLQtSAiCiAi4oCeZ2l0IGFkZOKAnCwg0LfQsCDQtNCwINC30LDQv9C+0YfQvdC1INGC0Y/RhdC90L7RgtC+INGB0LvQtdC00LXQvdC1KVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNzAyIHd0LXN0YXR1cy5jOjE3MDcKKyM6IHd0LXN0YXR1cy5jOjE3ODUgd3Qtc3RhdHVzLmM6MTc5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIGNvbW1pdFxuIgogbXNnc3RyICLQu9C40L/RgdCy0LDRgiDQutCw0LrQstC40YLQviDQuCDQtNCwINC1INC/0YDQvtC80LXQvdC4XG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE3MDUKKyM6IHd0LXN0YXR1cy5jOjE3ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXQgKHVzZSAtdSB0byBzaG93IHVudHJhY2tlZCBmaWxlcylcbiIKIG1zZ3N0ciAiIgogItC70LjQv9GB0LLQsNGCINC60LDQutCy0LjRgtC+INC4INC00LAg0LUg0L/RgNC+0LzQtdC90LggKNC40LfQv9C+0LvQt9Cy0LDQudGC0LUg0L7Qv9GG0LjRj9GC0LAg4oCeLXXigJwsINC30LAg0LTQsCDRgdC1INC40LfQstC10LTQsNGCINC4ICIKICLQvdC10YHQu9C10LTQtdC90LjRgtC1INGE0LDQudC70L7QstC1KVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNzA5CisjOiB3dC1zdGF0dXMuYzoxNzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0LCB3b3JraW5nIHRyZWUgY2xlYW5cbiIKIG1zZ3N0ciAi0LvQuNC/0YHQstCw0YIg0LrQsNC60LLQuNGC0L4g0Lgg0LTQsCDQtSDQv9GA0L7QvNC10L3QuCwg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0LUg0YfQuNGB0YLQvlxuIgogCi0jOiB3dC1zdGF0dXMuYzoxODIyCisjOiB3dC1zdGF0dXMuYzoxOTA1CiBtc2dpZCAiTm8gY29tbWl0cyB5ZXQgb24gIgogbXNnc3RyICLQktGB0LUg0L7RidC1INC70LjQv9GB0LLQsNGCINC/0L7QtNCw0LLQsNC90LjRjyDQsiAiCiAKLSM6IHd0LXN0YXR1cy5jOjE4MjYKKyM6IHd0LXN0YXR1cy5jOjE5MDkKIG1zZ2lkICJIRUFEIChubyBicmFuY2gpIgogbXNnc3RyICJIRUFEICjQuNC30LLRitC9INC60LvQvtC9KSIKIAotIzogd3Qtc3RhdHVzLmM6MTg1NworIzogd3Qtc3RhdHVzLmM6MTk0MAogbXNnaWQgImRpZmZlcmVudCIKIG1zZ3N0ciAi0YDQsNC30LvQuNGH0LXQvSIKIAotIzogd3Qtc3RhdHVzLmM6MTg1OSB3dC1zdGF0dXMuYzoxODY3CisjOiB3dC1zdGF0dXMuYzoxOTQyIHd0LXN0YXR1cy5jOjE5NTAKIG1zZ2lkICJiZWhpbmQgIgogbXNnc3RyICLQvdCw0LfQsNC0INGBICIKIAotIzogd3Qtc3RhdHVzLmM6MTg2MiB3dC1zdGF0dXMuYzoxODY1CisjOiB3dC1zdGF0dXMuYzoxOTQ1IHd0LXN0YXR1cy5jOjE5NDgKIG1zZ2lkICJhaGVhZCAiCiBtc2dzdHIgItC90LDQv9GA0LXQtCDRgSAiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGUgYWN0aW9uIGlzIGUuZy4gInB1bGwgd2l0aCByZWJhc2UiCi0jOiB3dC1zdGF0dXMuYzoyMzc0CisjOiB3dC1zdGF0dXMuYzoyNDcwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDQuNC30LLRitGA0YjQuNGC0LUg4oCeJXPigJwsINC30LDRidC+0YLQviDQuNC80LAg0L/RgNC+0LzQtdC90LgsINC60L7QuNGC0L4g0L3QtSDRgdCwINCyINC40L3QtNC10LrRgdCwLiIKIAotIzogd3Qtc3RhdHVzLmM6MjM4MAorIzogd3Qtc3RhdHVzLmM6MjQ3NgogbXNnaWQgImFkZGl0aW9uYWxseSwgeW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAi0L7RgdCy0LXQvSDRgtC+0LLQsCDQsiDQuNC90LTQtdC60YHQsCDQuNC80LAg0L3QtdC/0L7QtNCw0LTQtdC90Lgg0L/RgNC+0LzQtdC90LguIgogCi0jOiB3dC1zdGF0dXMuYzoyMzgyCisjOiB3dC1zdGF0dXMuYzoyNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAlczogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINC40LfQstGK0YDRiNC40YLQtSDigJ4lc+KAnCwg0LfQsNGJ0L7RgtC+INCyINC40L3QtNC10LrRgdCwINC40LzQsCDQvdC10L/QvtC00LDQtNC10L3QuCDQv9GA0L7QvNC10L3QuC4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQKKyM6IGNvbXBhdC9wcmVjb21wb3NlX3V0ZjguYzo1OCBidWlsdGluL2Nsb25lLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgJyVzJyIKK21zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfRgtGA0LjQstCw0L3QtSDQvdCwIOKAniVz4oCcIgorCisjOiBidWlsdGluL2FkZC5jOjI2CiBtc2dpZCAiZ2l0IGFkZCBbPG9wdGlvbnM+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCiBtc2dzdHIgImdpdCBhZGQgW9Ce0J/QptCY0K/igKZdIFstLV0g0J/QqtCi4oCmIgogCi0jOiBidWlsdGluL2FkZC5jOjgzCisjOiBidWlsdGluL2FkZC5jOjg4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgZGlmZiBzdGF0dXMgJWMiCiBtc2dzdHIgItC90LXQvtGH0LDQutCy0LDQvSDQuNC30YXQvtC00LXQvSDQutC+0LQg0L/RgNC4INCz0LXQvdC10YDQuNGA0LDQvdC1INC90LAg0YDQsNC30LvQuNC60LA6ICVjIgogCi0jOiBidWlsdGluL2FkZC5jOjg4IGJ1aWx0aW4vY29tbWl0LmM6Mjg0CisjOiBidWlsdGluL2FkZC5jOjkzIGJ1aWx0aW4vY29tbWl0LmM6Mjg4CiBtc2dpZCAidXBkYXRpbmcgZmlsZXMgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0L7QsdC90L7QstGP0LLQsNC90LUg0L3QsCDRhNCw0LnQu9C+0LLQtdGC0LUiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6OTgKKyM6IGJ1aWx0aW4vYWRkLmM6MTAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW92ZSAnJXMnXG4iCiBtc2dzdHIgItC40LfRgtGA0LjQstCw0L3QtSDQvdCwIOKAniVz4oCcXG4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MTczCisjOiBidWlsdGluL2FkZC5jOjE3OAogbXNnaWQgIlVuc3RhZ2VkIGNoYW5nZXMgYWZ0ZXIgcmVmcmVzaGluZyB0aGUgaW5kZXg6IgogbXNnc3RyICLQn9GA0L7QvNC10L3QuCwg0LrQvtC40YLQviDQuCDRgdC70LXQtCDQvtCx0L3QvtCy0Y/QstCw0L3QtdGC0L4g0L3QsCDQuNC90LTQtdC60YHQsCDQvdC1INGB0LAg0LTQvtCx0LDQstC10L3QuCDQutGK0Lwg0L3QtdCz0L46IgogCi0jOiBidWlsdGluL2FkZC5jOjIzMyBidWlsdGluL3Jldi1wYXJzZS5jOjg5NQorIzogYnVpbHRpbi9hZGQuYzoyNjYgYnVpbHRpbi9yZXYtcGFyc2UuYzo4OTkKIG1zZ2lkICJDb3VsZCBub3QgcmVhZCB0aGUgaW5kZXgiCiBtc2dzdHIgItCY0L3QtNC10LrRgdGK0YIg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L0iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQ0CisjOiBidWlsdGluL2FkZC5jOjI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nLiIKIG1zZ3N0ciAi0KTQsNC50LvRitGCIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LLQvtGA0LXQvSDQt9CwINC30LDQv9C40YEuIgogCi0jOiBidWlsdGluL2FkZC5jOjI0OAorIzogYnVpbHRpbi9hZGQuYzoyODEKIG1zZ2lkICJDb3VsZCBub3Qgd3JpdGUgcGF0Y2giCiBtc2dzdHIgItCa0YDRitC/0LrQsNGC0LAg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC30LDQv9C40YHQsNC90LAiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjUxCisjOiBidWlsdGluL2FkZC5jOjI4NAogbXNnaWQgImVkaXRpbmcgcGF0Y2ggZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YDQtdC00LDQutGC0LjRgNCw0L3QtSDQvdCwINC60YDRitC/0LrQsCIKIAotIzogYnVpbHRpbi9hZGQuYzoyNTQKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzdGF0ICclcyciCiBtc2dzdHIgItCd0LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0L7Qu9GD0YfQuCDQuNC90YTQvtGA0LzQsNGG0LjRjyDRh9GA0LXQtyDigJ5zdGF04oCcINC30LAg0YTQsNC50LvQsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9hZGQuYzoyNTYKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg5CiBtc2dpZCAiRW1wdHkgcGF0Y2guIEFib3J0ZWQuIgogbXNnc3RyICLQn9GA0LDQt9C90LAg0LrRgNGK0L/QutCwLCDQv9GA0LXRg9GB0YLQsNC90L7QstGP0LLQsNC90LUg0L3QsCDQtNC10LnRgdGC0LLQuNC10YLQvi4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjYxCisjOiBidWlsdGluL2FkZC5jOjI5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgYXBwbHkgJyVzJyIKIG1zZ3N0ciAi0JrRgNGK0L/QutCw0YLQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC40LvQvtC20LXQvdCwIgogCi0jOiBidWlsdGluL2FkZC5jOjI2OQorIzogYnVpbHRpbi9hZGQuYzozMDIKIG1zZ2lkICJUaGUgZm9sbG93aW5nIHBhdGhzIGFyZSBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCiBtc2dzdHIgIiIKICLQodC70LXQtNC90LjRgtC1INC/0YrRgtC40YnQsCDRidC1INCx0YrQtNCw0YIg0LjQs9C90L7RgNC40YDQsNC90Lgg0YHQv9C+0YDQtdC0INC90Y/QutC+0Lkg0L7RgiDRhNCw0LnQu9C+0LLQtdGC0LUg4oCeLmdpdGlnbm9yZeKAnDpcbiIKIAotIzogYnVpbHRpbi9hZGQuYzoyODkgYnVpbHRpbi9jbGVhbi5jOjkwNyBidWlsdGluL2ZldGNoLmM6MTM3IGJ1aWx0aW4vbXYuYzoxMjMKLSM6IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTYgYnVpbHRpbi9wdWxsLmM6MjEzIGJ1aWx0aW4vcHVzaC5jOjU1NwotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzQ1IGJ1aWx0aW4vcm0uYzoyNDAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjUKKyM6IGJ1aWx0aW4vYWRkLmM6MzIyIGJ1aWx0aW4vY2xlYW4uYzo5MTAgYnVpbHRpbi9mZXRjaC5jOjE2MyBidWlsdGluL212LmM6MTI0CisjOiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU2IGJ1aWx0aW4vcHVsbC5jOjIwMyBidWlsdGluL3B1c2guYzo1NDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQyMSBidWlsdGluL3JtLmM6MjQyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY1CiBtc2dpZCAiZHJ5IHJ1biIKIG1zZ3N0ciAi0L/RgNC+0LHQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1IgogCi0jOiBidWlsdGluL2FkZC5jOjI5MgorIzogYnVpbHRpbi9hZGQuYzozMjUKIG1zZ2lkICJpbnRlcmFjdGl2ZSBwaWNraW5nIgogbXNnc3RyICLQuNC90YLQtdGA0LDQutGC0LjQstC90L4g0L7RgtCx0LjRgNCw0L3QtSDQvdCwINC/0YDQvtC80LXQvdC4IgogCi0jOiBidWlsdGluL2FkZC5jOjI5MyBidWlsdGluL2NoZWNrb3V0LmM6MTI1OCBidWlsdGluL3Jlc2V0LmM6MzA1CisjOiBidWlsdGluL2FkZC5jOjMyNiBidWlsdGluL2NoZWNrb3V0LmM6MTUxMSBidWlsdGluL3Jlc2V0LmM6MzA3CiBtc2dpZCAic2VsZWN0IGh1bmtzIGludGVyYWN0aXZlbHkiCiBtc2dzdHIgItC40L3RgtC10YDQsNC60YLQuNCy0LXQvSDQuNC30LHQvtGAINC90LAg0L/QsNGA0YfQtdGC0LAg0LrQvtC0IgogCi0jOiBidWlsdGluL2FkZC5jOjI5NAorIzogYnVpbHRpbi9hZGQuYzozMjcKIG1zZ2lkICJlZGl0IGN1cnJlbnQgZGlmZiBhbmQgYXBwbHkiCiBtc2dzdHIgItGA0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDRgtC10LrRg9GJ0LDRgtCwINGA0LDQt9C70LjQutCwINC4INC/0YDQuNC70LDQs9Cw0L3QtSIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTUKKyM6IGJ1aWx0aW4vYWRkLmM6MzI4CiBtc2dpZCAiYWxsb3cgYWRkaW5nIG90aGVyd2lzZSBpZ25vcmVkIGZpbGVzIgogbXNnc3RyICLQtNC+0LHQsNCy0Y/QvdC1INC4INC90LAg0LjQvdCw0YfQtSDQuNCz0L3QvtGA0LjRgNCw0L3QuNGC0LUg0YTQsNC50LvQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk2CisjOiBidWlsdGluL2FkZC5jOjMyOQogbXNnaWQgInVwZGF0ZSB0cmFja2VkIGZpbGVzIgogbXNnc3RyICLQvtCx0L3QvtCy0Y/QstCw0L3QtSDQvdCwINGB0LvQtdC00LXQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTcKKyM6IGJ1aWx0aW4vYWRkLmM6MzMwCiBtc2dpZCAicmVub3JtYWxpemUgRU9MIG9mIHRyYWNrZWQgZmlsZXMgKGltcGxpZXMgLXUpIgogbXNnc3RyICLRg9C10LTQvdCw0LrQstGP0LLQsNC90LUg0L3QsCDQt9C90LDRhtC40YLQtSDQt9CwINC60YDQsNC5INC90LAg0YTQsNC50LsgKNCy0LrQu9GO0YfQstCwINC+0L/RhtC40Y/RgtCwIOKAni114oCcKSIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTgKKyM6IGJ1aWx0aW4vYWRkLmM6MzMxCiBtc2dpZCAicmVjb3JkIG9ubHkgdGhlIGZhY3QgdGhhdCB0aGUgcGF0aCB3aWxsIGJlIGFkZGVkIGxhdGVyIgogbXNnc3RyICLQvtGC0LHQtdC70Y/Qt9Cy0LDQvdC1INGB0LDQvNC+INC90LAg0YTQsNC60YLQsCwg0YfQtSDQv9GK0YLRj9GCINGJ0LUg0LHRitC00LUg0LTQvtCx0LDQstC10L0g0L/Qvi3QutGK0YHQvdC+IgogCi0jOiBidWlsdGluL2FkZC5jOjI5OQorIzogYnVpbHRpbi9hZGQuYzozMzIKIG1zZ2lkICJhZGQgY2hhbmdlcyBmcm9tIGFsbCB0cmFja2VkIGFuZCB1bnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgItC00L7QsdCw0LLRj9C90LUg0L3QsCDQstGB0LjRh9C60Lgg0L/RgNC+0LzQtdC90Lgg0LIg0YHQu9C10LTQtdC90LjRgtC1INC4INC90LXRgdC70LXQtNC10L3QuNGC0LUg0YTQsNC50LvQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzAyCisjOiBidWlsdGluL2FkZC5jOjMzNQogbXNnaWQgImlnbm9yZSBwYXRocyByZW1vdmVkIGluIHRoZSB3b3JraW5nIHRyZWUgKHNhbWUgYXMgLS1uby1hbGwpIgogbXNnc3RyICIiCiAi0LjQs9C90L7RgNC40YDQsNC90LUg0L3QsCDQv9GK0YLQuNGJ0LDRgtCwLCDQutC+0LjRgtC+INGB0LAg0LjQt9GC0YDQuNGC0Lgg0L7RgiDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviAo0YHRitGJ0L7RgtC+INC60LDRgtC+IOKAni0tIgogIm5vLWFsbOKAnCkiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzA0CisjOiBidWlsdGluL2FkZC5jOjMzNwogbXNnaWQgImRvbid0IGFkZCwgb25seSByZWZyZXNoIHRoZSBpbmRleCIKIG1zZ3N0ciAi0LHQtdC3INC00L7QsdCw0LLRj9C90LUg0L3QsCDQvdC+0LLQuCDRhNCw0LnQu9C+0LLQtSwg0YHQsNC80L4g0L7QsdC90L7QstGP0LLQsNC90LUg0L3QsCDQuNC90LTQtdC60YHQsCIKIAotIzogYnVpbHRpbi9hZGQuYzozMDUKKyM6IGJ1aWx0aW4vYWRkLmM6MzM4CiBtc2dpZCAianVzdCBza2lwIGZpbGVzIHdoaWNoIGNhbm5vdCBiZSBhZGRlZCBiZWNhdXNlIG9mIGVycm9ycyIKIG1zZ3N0ciAiIgogItC/0YDQtdGB0LrQsNGH0LDQvdC1INC90LAg0YTQsNC50LvQvtCy0LXRgtC1LCDQutC+0LjRgtC+INC90LUg0LzQvtCz0LDRgiDQtNCwINCx0YrQtNCw0YIg0LTQvtCx0LDQstC10L3QuCDQv9C+0YDQsNC00Lgg0LPRgNC10YjQutC4IgogCi0jOiBidWlsdGluL2FkZC5jOjMwNgorIzogYnVpbHRpbi9hZGQuYzozMzkKIG1zZ2lkICJjaGVjayBpZiAtIGV2ZW4gbWlzc2luZyAtIGZpbGVzIGFyZSBpZ25vcmVkIGluIGRyeSBydW4iCiBtc2dzdHIgIiIKICLQv9GA0L7QstC10YDQutCwLCDRh9C1INC/0YDQuCDQv9GA0L7QsdC90L4g0LjQt9C/0YrQu9C90LXQvdC40LUg0LLRgdC40YfQutC4INGE0LDQudC70L7QstC1LCDQtNC+0YDQuCDQuCDQuNC30YLRgNC40YLQuNGC0LUsINGB0LUgIgogItC40LPQvdC+0YDQuNGA0LDRgiIKIAotIzogYnVpbHRpbi9hZGQuYzozMDggYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTAKKyM6IGJ1aWx0aW4vYWRkLmM6MzQxIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwNAogbXNnaWQgIm92ZXJyaWRlIHRoZSBleGVjdXRhYmxlIGJpdCBvZiB0aGUgbGlzdGVkIGZpbGVzIgogbXNnc3RyICLQuNC30YDQuNGH0L3QviDQt9Cw0LTQsNCy0LDQvdC1INC90LAg0YHRgtC+0LnQvdC+0YHRgtGC0LAg0L3QsCDRhNC70LDQs9CwINC00LDQu9C4INGE0LDQudC70YrRgiDQtSDQuNC30L/RitC70L3QuNC8IgogCi0jOiBidWlsdGluL2FkZC5jOjMxMAorIzogYnVpbHRpbi9hZGQuYzozNDMKIG1zZ2lkICJ3YXJuIHdoZW4gYWRkaW5nIGFuIGVtYmVkZGVkIHJlcG9zaXRvcnkiCiBtc2dzdHIgItC/0YDQtdC00YPQv9GA0LXQttC00LDQstCw0L3QtSDQv9GA0Lgg0LTQvtCx0LDQstGP0L3QtSDQvdCwINCy0LPRgNCw0LTQtdC90L4g0YXRgNCw0L3QuNC70LjRidC1IgogCi0jOiBidWlsdGluL2FkZC5jOjMyNQorIzogYnVpbHRpbi9hZGQuYzozNDUKK21zZ2lkICJiYWNrZW5kIGZvciBgZ2l0IHN0YXNoIC1wYCIKK21zZ3N0ciAi0YDQtdCw0LvQuNC30LDRhtC40Y8g0L3QsCDigJ5naXQgc3Rhc2ggLXDigJwiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UndmUgYWRkZWQgYW5vdGhlciBnaXQgcmVwb3NpdG9yeSBpbnNpZGUgeW91ciBjdXJyZW50IHJlcG9zaXRvcnkuXG4iCkBAIC03NTY4LDE1MSArOTgzMywxODAgQEAKICJcbiIKICLQl9CwINC/0L7QstC10YfQtSDQuNC90YTQvtGA0LzQsNGG0LjRjyDQv9C+0LPQu9C10LTQvdC10YLQtSDigJ5naXQgaGVscCBzdWJtb2R1bGXigJwuIgogCi0jOiBidWlsdGluL2FkZC5jOjM1MworIzogYnVpbHRpbi9hZGQuYzozOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkaW5nIGVtYmVkZGVkIGdpdCByZXBvc2l0b3J5OiAlcyIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINCy0LPRgNCw0LTQtdC90L4g0YXRgNCw0L3QuNC70LjRidC1OiAlcyIKIAotIzogYnVpbHRpbi9hZGQuYzozNzEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgdGhlbS5cbiIKLW1zZ3N0ciAi0JjQt9C/0L7Qu9C30LLQsNC50YLQtSDQvtC/0YbQuNGP0YLQsCDigJ4tZuKAnCwg0LfQsCDQtNCwINCz0Lgg0LTQvtCx0LDQstC40YLQtSDQvdCw0LjRgdGC0LjQvdCwLlxuIgorIzogYnVpbHRpbi9hZGQuYzo0MTAKK21zZ2lkICIiCisiVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgdGhlbS5cbiIKKyJUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnkgcnVubmluZ1xuIgorIlwiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkSWdub3JlZEZpbGUgZmFsc2VcIiIKK21zZ3N0ciAiIgorItCf0L7Qu9C30LLQsNC50YLQtSDQvtC/0YbQuNGP0YLQsCDigJ4tZuKAnCwg0LDQutC+INC90LDQuNGB0YLQuNC90LAg0LjRgdC60LDRgtC1INC00LAg0LPQuCDQtNC+0LHQsNCy0LjRgtC1LlxuIgorItCX0LAg0LTQsCDQuNC30LrQu9GO0YfQuNGC0LUg0YLQvtCy0LAg0YHRitC+0LHRidC10L3QuNC1LCDQuNC30L/RitC70L3QtdGC0LU6XG4iCisiXG4iCisiICAgIGdpdCBjb25maWcgYWR2aWNlLmFkZElnbm9yZWRGaWxlIGZhbHNlIgogCi0jOiBidWlsdGluL2FkZC5jOjM3OQorIzogYnVpbHRpbi9hZGQuYzo0MTkKIG1zZ2lkICJhZGRpbmcgZmlsZXMgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LTQvtCx0LDQstGP0L3QtSDQvdCwINGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL2FkZC5jOjQxNworIzogYnVpbHRpbi9hZGQuYzo0NDcgYnVpbHRpbi9jb21taXQuYzozNDgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWludGVyYWN0aXZlLy0tcGF0Y2giCittc2dzdHIgIiIKKyLQvtC/0YbQuNGP0YLQsCDigJ4tLXBhdGhzcGVjLWZyb20tZmlsZeKAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg0LLRgdGP0LrQsCDQvtGCINC+0L/RhtC40LjRgtC1IOKAni0tIgorImludGVyYWN0aXZl4oCcL+KAni0tcGF0Y2jigJwiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDY0Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1lZGl0IgorbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLXBhdGhzcGVjLWZyb20tZmlsZeKAnCDQuCDigJ4tLWVkaXTigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDc2CiBtc2dpZCAiLUEgYW5kIC11IGFyZSBtdXR1YWxseSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgItC+0L/RhtC40LjRgtC1IOKAni1B4oCcINC4IOKAni114oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgogCi0jOiBidWlsdGluL2FkZC5jOjQyNAorIzogYnVpbHRpbi9hZGQuYzo0NzkKIG1zZ2lkICJPcHRpb24gLS1pZ25vcmUtbWlzc2luZyBjYW4gb25seSBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggLS1kcnktcnVuIgotbXNnc3RyICLQntC/0YbQuNGP0YLQsCDigJ4tLWlnbm9yZS1taXNzaW5n4oCcINC1INGB0YrQstC80LXRgdGC0LjQvNCwINGB0LDQvNC+INGBIOKAni0tZHJ5LXJ1buKAnCIKK21zZ3N0ciAi0J7Qv9GG0LjRj9GC0LAg4oCeLS1pZ25vcmUtbWlzc2luZ+KAnCDQuNC30LjRgdC60LLQsCDigJ4tLWRyeS1ydW7igJwiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDI4CisjOiBidWlsdGluL2FkZC5jOjQ4MwogIywgYy1mb3JtYXQKIG1zZ2lkICItLWNobW9kIHBhcmFtICclcycgbXVzdCBiZSBlaXRoZXIgLXggb3IgK3giCiBtc2dzdHIgItC/0LDRgNCw0LzQtdGC0YrRgNGK0YIg0LrRitC8IOKAni0tY2htb2TigJwg4oCUIOKAniVz4oCcINC80L7QttC1INC00LAg0LUg0LjQu9C4IOKAni144oCcLCDQuNC70Lgg4oCeK3jigJwiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDQzCisjOiBidWlsdGluL2FkZC5jOjUwMSBidWlsdGluL2NoZWNrb3V0LmM6MTY3NSBidWlsdGluL2NvbW1pdC5jOjM1NAorIzogYnVpbHRpbi9yZXNldC5jOjMyNyBidWlsdGluL3JtLmM6MjcyIGJ1aWx0aW4vc3Rhc2guYzoxNTA5Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggcGF0aHNwZWMgYXJndW1lbnRzIgorbXNnc3RyICIiCisi0L7Qv9GG0LjRj9GC0LAg4oCeLS1wYXRoc3BlYy1mcm9tLWZpbGXigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBINCw0YDQs9GD0LzQtdC90YLQuCwg0YPQutCw0LfQstCw0YnQuCDQv9GK0YLQuNGJ0LAiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NTA4IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjg3IGJ1aWx0aW4vY29tbWl0LmM6MzYwCisjOiBidWlsdGluL3Jlc2V0LmM6MzMzIGJ1aWx0aW4vcm0uYzoyNzggYnVpbHRpbi9zdGFzaC5jOjE1MTUKK21zZ2lkICItLXBhdGhzcGVjLWZpbGUtbnVsIHJlcXVpcmVzIC0tcGF0aHNwZWMtZnJvbS1maWxlIgorbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLXBhdGhzcGVjLWZpbGUtbnVs4oCcINC40LfQuNGB0LrQstCwINC+0L/RhtC40Y8g4oCeLS1wYXRoc3BlYy1mcm9tLWZpbGXigJwiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NTEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdGhpbmcgc3BlY2lmaWVkLCBub3RoaW5nIGFkZGVkLlxuIgogbXNnc3RyICLQndC40YnQviDQvdC1INC1INC30LDQtNCw0LTQtdC90L4g0Lgg0L3QuNGJ0L4g0L3QtSDQtSDQtNC+0LHQsNCy0LXQvdC+LlxuIgogCi0jOiBidWlsdGluL2FkZC5jOjQ0NAotIywgYy1mb3JtYXQKLW1zZ2lkICJNYXliZSB5b3Ugd2FudGVkIHRvIHNheSAnZ2l0IGFkZCAuJz9cbiIKLW1zZ3N0ciAi0JLQtdGA0L7Rj9GC0L3QviDQuNGB0LrQsNGF0YLQtSDQtNCwINC40LfQv9C+0LvQt9Cy0LDRgtC1IOKAnmdpdCBhZGQgLuKAnD9cbiIKKyM6IGJ1aWx0aW4vYWRkLmM6NTE0Cittc2dpZCAiIgorIk1heWJlIHlvdSB3YW50ZWQgdG8gc2F5ICdnaXQgYWRkIC4nP1xuIgorIlR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieSBydW5uaW5nXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRFbXB0eVBhdGhzcGVjIGZhbHNlXCIiCittc2dzdHIgIiIKKyLigJ5naXQgYWRkIC7igJwg0LvQuCDQuNGB0LrQsNGF0YLQtSDQtNCwINC40LfQv9GK0LvQvdC40YLQtT9cbiIKKyLQl9CwINC00LAg0LjQt9C60LvRjtGH0LjRgtC1INGC0L7QstCwINGB0YrQvtCx0YnQtdC90LjQtSwg0LjQt9C/0YrQu9C90LXRgtC1OlxuIgorIlxuIgorIiAgICBnaXQgY29uZmlnIGFkdmljZS5hZGRFbXB0eVBhdGhzcGVjIGZhbHNlIgogCi0jOiBidWlsdGluL2FtLmM6MzYzCisjOiBidWlsdGluL2FtLmM6MzUyCiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGF1dGhvciBzY3JpcHQiCiBtc2dzdHIgItGB0LrRgNC40L/RgtGK0YIg0LfQsCDQsNCy0YLQvtGAINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INCw0L3QsNC70LjQt9C40YDQsCIKIAotIzogYnVpbHRpbi9hbS5jOjQ0NworIzogYnVpbHRpbi9hbS5jOjQzNgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIHdhcyBkZWxldGVkIGJ5IHRoZSBhcHBseXBhdGNoLW1zZyBob29rIgogbXNnc3RyICLigJ4lc+KAnCDQsdC1INC40LfRgtGA0LjRgiDQvtGCINC60YPQutCw0YLQsCDigJ5hcHBseXBhdGNoLW1zZ+KAnCIKIAotIzogYnVpbHRpbi9hbS5jOjQ4OAorIzogYnVpbHRpbi9hbS5jOjQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJNYWxmb3JtZWQgaW5wdXQgbGluZTogJyVzJy4iCiBtc2dzdHIgItCU0LDQtNC10L3QuNGP0YIg0LLRhdC+0LTQtdC9INGA0LXQtCDQtSDRgSDQvdC10L/RgNCw0LLQuNC70LXQvSDRhNC+0YDQvNCw0YI6IOKAniVz4oCcLiIKIAotIzogYnVpbHRpbi9hbS5jOjUyNQorIzogYnVpbHRpbi9hbS5jOjUxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY29weSBub3RlcyBmcm9tICclcycgdG8gJyVzJyIKIG1zZ3N0ciAi0JHQtdC70LXQttC60LDRgtCwINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC60L7Qv9C40YDQsCDQvtGCIOKAniVz4oCcINC60YrQvCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9hbS5jOjU1MQorIzogYnVpbHRpbi9hbS5jOjU0MgogbXNnaWQgImZzZWVrIGZhaWxlZCIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg4oCeZnNlZWvigJwiCiAKLSM6IGJ1aWx0aW4vYW0uYzo3MzkKKyM6IGJ1aWx0aW4vYW0uYzo3MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHBhdGNoICclcyciCiBtc2dzdHIgItC60YDRitC/0LrQsNGC0LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LDQvdCw0LvQuNC30LjRgNCwIgogCi0jOiBidWlsdGluL2FtLmM6ODA0CisjOiBidWlsdGluL2FtLmM6Nzk1CiBtc2dpZCAiT25seSBvbmUgU3RHSVQgcGF0Y2ggc2VyaWVzIGNhbiBiZSBhcHBsaWVkIGF0IG9uY2UiCiBtc2dzdHIgIiIKICLQodCw0LzQviDQtdC00L3QsCDQv9C+0YDQtdC00LjRhtCwINC+0YIg0LrRgNGK0L/QutC4INC+0YIg4oCeU3RHSVTigJwg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0LjQu9Cw0LPQsNC90LAg0LIg0LTQsNC00LXQvSDQvNC+0LzQtdC90YIiCiAKLSM6IGJ1aWx0aW4vYW0uYzo4NTIKKyM6IGJ1aWx0aW4vYW0uYzo4NDMKIG1zZ2lkICJpbnZhbGlkIHRpbWVzdGFtcCIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90LAg0YHRgtC+0LnQvdC+0YHRgiDQt9CwINCy0YDQtdC80LUiCiAKLSM6IGJ1aWx0aW4vYW0uYzo4NTcgYnVpbHRpbi9hbS5jOjg2OQorIzogYnVpbHRpbi9hbS5jOjg0OCBidWlsdGluL2FtLmM6ODYwCiBtc2dpZCAiaW52YWxpZCBEYXRlIGxpbmUiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INGA0LXQtCDQt9CwINC00LDRgtCwIOKAnkRhdGXigJwiCiAKLSM6IGJ1aWx0aW4vYW0uYzo4NjQKKyM6IGJ1aWx0aW4vYW0uYzo4NTUKIG1zZ2lkICJpbnZhbGlkIHRpbWV6b25lIG9mZnNldCIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90L4g0L7RgtC80LXRgdGC0LLQsNC90LUg0L3QsCDRh9Cw0YHQvtCy0LjRjyDQv9C+0Y/RgSIKIAotIzogYnVpbHRpbi9hbS5jOjk1NworIzogYnVpbHRpbi9hbS5jOjk0OAogbXNnaWQgIlBhdGNoIGZvcm1hdCBkZXRlY3Rpb24gZmFpbGVkLiIKIG1zZ3N0ciAi0KTQvtGA0LzQsNGC0YrRgiDQvdCwINC60YDRitC/0LrQsNGC0LAg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0L/RgNC10LTQtdC70LXQvS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzo5NjIgYnVpbHRpbi9jbG9uZS5jOjQwOAorIzogYnVpbHRpbi9hbS5jOjk1MyBidWlsdGluL2Nsb25lLmM6NDA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgItC00LjRgNC10LrRgtC+0YDQuNGP0YLQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRitC30LTQsNC00LXQvdCwIgogCi0jOiBidWlsdGluL2FtLmM6OTY3CisjOiBidWlsdGluL2FtLmM6OTU4CiBtc2dpZCAiRmFpbGVkIHRvIHNwbGl0IHBhdGNoZXMuIgogbXNnc3RyICLQmtGA0YrQv9C60LjRgtC1INC90LUg0LzQvtCz0LDRgiDQtNCwINCx0YrQtNCw0YIg0YDQsNC30LTQtdC70LXQvdC4LiIKIAotIzogYnVpbHRpbi9hbS5jOjEwOTcgYnVpbHRpbi9jb21taXQuYzozNjkKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgaW5kZXggZmlsZSIKLW1zZ3N0ciAi0LjQvdC00LXQutGB0YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LjRgdCw0L0iCi0KLSM6IGJ1aWx0aW4vYW0uYzoxMTExCisjOiBidWlsdGluL2FtLmM6MTA4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJXaGVuIHlvdSBoYXZlIHJlc29sdmVkIHRoaXMgcHJvYmxlbSwgcnVuIFwiJXMgLS1jb250aW51ZVwiLiIKIG1zZ3N0ciAi0KHQu9C10LQg0LrQvtGA0LjQs9C40YDQsNC90LXRgtC+INC90LAg0YLQvtC30Lgg0L/RgNC+0LHQu9C10Lwg0LjQt9C/0YrQu9C90LXRgtC1IOKAniVzIC0tY29udGludWXigJwuIgogCi0jOiBidWlsdGluL2FtLmM6MTExMgorIzogYnVpbHRpbi9hbS5jOjEwOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiSWYgeW91IHByZWZlciB0byBza2lwIHRoaXMgcGF0Y2gsIHJ1biBcIiVzIC0tc2tpcFwiIGluc3RlYWQuIgogbXNnc3RyICLQkNC60L4g0L/RgNC10LTQv9C+0YfQuNGC0LDRgtC1INC00LAg0L/RgNC10YHQutC+0YfQuNGC0LUg0YLQsNC30Lgg0LrRgNGK0L/QutCwLCDQuNC30L/RitC70L3QtdGC0LUg4oCeJXMgLS1za2lw4oCcLiIKIAotIzogYnVpbHRpbi9hbS5jOjExMTMKKyM6IGJ1aWx0aW4vYW0uYzoxMDkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgc3RvcCBwYXRjaGluZywgcnVuIFwiJXMgLS1hYm9ydFwiLiIKIG1zZ3N0ciAi0JfQsCDQtNCwINGB0LUg0LLRitGA0L3QtdGC0LUg0LrRitC8INC/0YrRgNCy0L7QvdCw0YfQsNC70L3QvtGC0L4g0YHRitGB0YLQvtGP0L3QuNC1LCDQuNC30L/RitC70L3QtdGC0LUg4oCeJXMgLS1hYm9ydOKAnC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMTk2CisjOiBidWlsdGluL2FtLmM6MTE3NAogbXNnaWQgIlBhdGNoIHNlbnQgd2l0aCBmb3JtYXQ9Zmxvd2VkOyBzcGFjZSBhdCB0aGUgZW5kIG9mIGxpbmVzIG1pZ2h0IGJlIGxvc3QuIgogbXNnc3RyICIiCiAi0JrRgNGK0L/QutCw0YLQsCDQtSDQv9GA0LDRgtC10L3QsCDRgSDRhNC+0YDQvNCw0YLQuNGA0LDQvdC1IOKAnmZvcm1hdD1mbG93ZWTigJwuICDQn9GA0LDQt9C90LjRgtC1INC30L3QsNGG0Lgg0LIg0LrRgNCw0Y8g0L3QsCAiCiAi0YDQtdC00L7QstC10YLQtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNCz0YPQsdGP0YIuIgogCi0jOiBidWlsdGluL2FtLmM6MTIyNAorIzogYnVpbHRpbi9hbS5jOjEyMDIKIG1zZ2lkICJQYXRjaCBpcyBlbXB0eS4iCiBtc2dzdHIgItCa0YDRitC/0LrQsNGC0LAg0LUg0L/RgNCw0LfQvdCwLiIKIAotIzogYnVpbHRpbi9hbS5jOjEyOTAKKyM6IGJ1aWx0aW4vYW0uYzoxMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgYXV0aG9yIGxpbmUgaW4gY29tbWl0ICVzIgorbXNnc3RyICLQu9C40L/RgdCy0LAg0YDQtdC0INC30LAg0LDQstGC0L7RgNGB0YLQstC+INCyINC/0L7QtNCw0LLQsNC90LXRgtC+IOKAniVz4oCcIgorCisjOiBidWlsdGluL2FtLmM6MTI3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGlkZW50IGxpbmU6ICUuKnMiCiBtc2dzdHIgItCz0YDQtdGI0LXQvSDRgNC10LQg0YEg0LjQtNC10L3RgtC40YfQvdC+0YHRgjogJS4qcyIKIAotIzogYnVpbHRpbi9hbS5jOjEzMTIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbW1pdCAlcyIKLW1zZ3N0ciAi0L/QvtC00LDQstCw0L3QtdGC0L4g0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INCw0L3QsNC70LjQt9C40YDQsNC90L46ICVzIgotCi0jOiBidWlsdGluL2FtLmM6MTUwOAorIzogYnVpbHRpbi9hbS5jOjE0ODkKIG1zZ2lkICJSZXBvc2l0b3J5IGxhY2tzIG5lY2Vzc2FyeSBibG9icyB0byBmYWxsIGJhY2sgb24gMy13YXkgbWVyZ2UuIgogbXNnc3RyICIiCiAi0JIg0YXRgNCw0L3QuNC70LjRidC10YLQviDQu9C40L/RgdCy0LDRgiDQvdC10L7QsdGF0L7QtNC40LzQuNGC0LUg0L7QsdC10LrRgtC4LUJMT0IsINC30LAg0LTQsCDRgdC1INC/0YDQtdC80LjQvdC1INC60YrQvCDRgtGA0L7QudC90L4gIgogItGB0LvQuNCy0LDQvdC1LiIKIAotIzogYnVpbHRpbi9hbS5jOjE1MTAKKyM6IGJ1aWx0aW4vYW0uYzoxNDkxCiBtc2dpZCAiVXNpbmcgaW5kZXggaW5mbyB0byByZWNvbnN0cnVjdCBhIGJhc2UgdHJlZS4uLiIKIG1zZ3N0ciAi0JHQsNC30L7QstC+0YLQviDQtNGK0YDQstC+INGB0LUg0YDQtdC60L7QvdGB0YLRgNGD0LjRgNCwINC+0YIg0LjQvdGE0L7RgNC80LDRhtC40Y/RgtCwINCyINC40L3QtNC10LrRgdCw4oCmIgogCi0jOiBidWlsdGluL2FtLmM6MTUyOQorIzogYnVpbHRpbi9hbS5jOjE1MTAKIG1zZ2lkICIiCiAiRGlkIHlvdSBoYW5kIGVkaXQgeW91ciBwYXRjaD9cbiIKICJJdCBkb2VzIG5vdCBhcHBseSB0byBibG9icyByZWNvcmRlZCBpbiBpdHMgaW5kZXguIgpAQCAtNzcyMCwzMCArMTAwMTQsMjQgQEAKICLQmtGA0YrQv9C60LDRgtCwINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQuNC70L7QttC4INC60YrQvCDQvtCx0LXQutGC0LjRgtC1LUJMT0Ig0LIg0LjQvdC00LXQutGB0LAuXG4iCiAi0JTQsCDQvdC1INCx0Lgg0LTQsCDRgdGC0LUg0Y8g0YDQtdC00LDQutGC0LjRgNCw0LvQuCDQvdCwINGA0YrQutCwPyIKIAotIzogYnVpbHRpbi9hbS5jOjE1MzUKKyM6IGJ1aWx0aW4vYW0uYzoxNTE2CiBtc2dpZCAiRmFsbGluZyBiYWNrIHRvIHBhdGNoaW5nIGJhc2UgYW5kIDMtd2F5IG1lcmdlLi4uIgogbXNnc3RyICLQn9GA0LXQvNC40L3QsNCy0LDQvdC1INC60YrQvCDQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDQutGA0YrQv9C60LAg0LrRitC8INCx0LDQt9Cw0YLQsCDQuCDRgtGA0L7QudC90L4g0YHQu9C40LLQsNC90LXigKYiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTYxCisjOiBidWlsdGluL2FtLmM6MTU0MgogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBpbiB0aGUgY2hhbmdlcy4iCiBtc2dzdHIgItCd0LXRg9GB0L/QtdGI0L3QviDRgdC70LjQstCw0L3QtSDQvdCwINC/0YDQvtC80LXQvdC40YLQtS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTkzCisjOiBidWlsdGluL2FtLmM6MTU3NAogbXNnaWQgImFwcGx5aW5nIHRvIGFuIGVtcHR5IGhpc3RvcnkiCiBtc2dzdHIgItC/0YDQuNC70LDQs9Cw0L3QtSDQstGK0YDRhdGDINC/0YDQsNC30L3QsCDQuNGB0YLQvtGA0LjRjyIKIAotIzogYnVpbHRpbi9hbS5jOjE2MzkgYnVpbHRpbi9hbS5jOjE2NDMKKyM6IGJ1aWx0aW4vYW0uYzoxNjIxIGJ1aWx0aW4vYW0uYzoxNjI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZXN1bWU6ICVzIGRvZXMgbm90IGV4aXN0LiIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/RgNC+0LTRitC70LbQuCDigJQg4oCeJXPigJwg0L3QtSDRgdGK0YnQtdGB0YLQstGD0LLQsC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNjU5Ci1tc2dpZCAiY2Fubm90IGJlIGludGVyYWN0aXZlIHdpdGhvdXQgc3RkaW4gY29ubmVjdGVkIHRvIGEgdGVybWluYWwuIgotbXNnc3RyICIiCi0i0JfQsCDQuNC90YLQtdGA0LDQutGC0LjQstC90L4g0LjQt9C/0YrQu9C90LXQvdC40LUg0LUg0L3QtdC+0LHRhdC+0LTQuNC80L4g0YHRgtCw0L3QtNCw0YDRgtC90LjRj9GCXG4iCi0i0LLRhdC+0LQg0LTQsCDQtSDRgdCy0YrRgNC30LDQvSDRgSDRgtC10YDQvNC40L3QsNC7LCDQsCDQsiDQvNC+0LzQtdC90YLQsCDQvdC1INC1LiIKLQotIzogYnVpbHRpbi9hbS5jOjE2NjQKKyM6IGJ1aWx0aW4vYW0uYzoxNjQzCiBtc2dpZCAiQ29tbWl0IEJvZHkgaXM6IgogbXNnc3RyICLQotGP0LvQvtGC0L4g0L3QsCDQutGA0YrQv9C60LDRgtCwINC30LAg0L/RgNC40LvQsNCz0LDQvdC1INC1OiIKIApAQCAtNzc1MSwzOSArMTAwMzksNDUgQEAKICMuIGluIHlvdXIgdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaAogIy4gaW5wdXQgYXQgdGhpcyBwb2ludC4KICMuCi0jOiBidWlsdGluL2FtLmM6MTY3NAorIzogYnVpbHRpbi9hbS5jOjE2NTMKKyMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbHk/IFt5XWVzL1tuXW8vW2VdZGl0L1t2XWlldyBwYXRjaC9bYV1jY2VwdCBhbGw6ICIKIG1zZ3N0ciAiIgogItCf0YDQuNC70LDQs9Cw0L3QtT8g4oCeeeKAnCDigJQg0LTQsC/igJ5u4oCcIOKAlCDQvdC1L+KAnmXigJwg4oCUINGA0LXQtNCw0LrRgtC40YDQsNC90LUv4oCeduKAnCDigJQg0L/RgNC10LPQu9C10LQv4oCeYeKAnCDigJQg0L/RgNC40LXQvNCw0L3QtSAiCiAi0L3QsCDQstGB0LjRh9C60L46IgogCi0jOiBidWlsdGluL2FtLmM6MTcyNAorIzogYnVpbHRpbi9hbS5jOjE3MDAgYnVpbHRpbi9jb21taXQuYzozOTgKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgaW5kZXggZmlsZSIKK21zZ3N0ciAi0LjQvdC00LXQutGB0YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LjRgdCw0L0iCisKKyM6IGJ1aWx0aW4vYW0uYzoxNzA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRpcnR5IGluZGV4OiBjYW5ub3QgYXBwbHkgcGF0Y2hlcyAoZGlydHk6ICVzKSIKIG1zZ3N0ciAiIgogItCY0L3QtNC10LrRgdGK0YIg0L3QtSDQtSDRh9C40YHRgjog0LrRgNGK0L/QutC40YLQtSDQvdC1INC80L7Qs9Cw0YIg0LTQsCDQsdGK0LTQsNGCINC/0YDQuNC70L7QttC10L3QuCAo0LfQsNC80YrRgNGB0LXQvdC4INGB0LA6ICVzKSIKIAotIzogYnVpbHRpbi9hbS5jOjE3NjQgYnVpbHRpbi9hbS5jOjE4MzIKKyM6IGJ1aWx0aW4vYW0uYzoxNzQ0IGJ1aWx0aW4vYW0uYzoxODEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGx5aW5nOiAlLipzIgogbXNnc3RyICLQn9GA0LjQu9Cw0LPQsNC90LU6ICUuKnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzgxCisjOiBidWlsdGluL2FtLmM6MTc2MQogbXNnaWQgIk5vIGNoYW5nZXMgLS0gUGF0Y2ggYWxyZWFkeSBhcHBsaWVkLiIKIG1zZ3N0ciAi0JHQtdC3INC/0YDQvtC80LXQvdC4IOKAlCDQutGA0YrQv9C60LDRgtCwINCy0LXRh9C1INC1INC/0YDQuNC70L7QttC10L3QsC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzg3CisjOiBidWlsdGluL2FtLmM6MTc2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJQYXRjaCBmYWlsZWQgYXQgJXMgJS4qcyIKIG1zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdC+INC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINC60YDRitC/0LrQsCDQv9GA0LggJXMgJS4qc+KAnCIKIAotIzogYnVpbHRpbi9hbS5jOjE3OTEKLW1zZ2lkICJVc2UgJ2dpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaCcgdG8gc2VlIHRoZSBmYWlsZWQgcGF0Y2giCisjOiBidWlsdGluL2FtLmM6MTc3MQorbXNnaWQgIlVzZSAnZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoPWRpZmYnIHRvIHNlZSB0aGUgZmFpbGVkIHBhdGNoIgogbXNnc3RyICIiCi0i0JfQsCDQtNCwINCy0LjQtNC40YLQtSDQvdC10YPRgdC/0LXRiNC90L4g0L/RgNC40LvQvtC20LXQvdC4INC60YDRitC/0LrQuCwg0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDQvtC/0YbQuNGP0YLQsCDigJ5naXQgYW0gLS1zaG93LSIKLSJjdXJyZW50LXBhdGNo4oCcIHRvIHNlZSB0aGUgZmFpbGVkIHBhdGNoIgorItCX0LAg0LTQsCDQstC40LTQuNGC0LUg0L3QtdGD0YHQv9C10YjQvdC+INC/0YDQuNC70L7QttC10L3QuCDQutGA0YrQv9C60LgsINC40LfQv9C+0LvQt9Cy0LDQudGC0LU6XG4iCisiXG4iCisiICAgIGdpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaD1kaWZmIgogCi0jOiBidWlsdGluL2FtLmM6MTgzNQorIzogYnVpbHRpbi9hbS5jOjE4MTUKIG1zZ2lkICIiCiAiTm8gY2hhbmdlcyAtIGRpZCB5b3UgZm9yZ2V0IHRvIHVzZSAnZ2l0IGFkZCc/XG4iCiAiSWYgdGhlcmUgaXMgbm90aGluZyBsZWZ0IHRvIHN0YWdlLCBjaGFuY2VzIGFyZSB0aGF0IHNvbWV0aGluZyBlbHNlXG4iCkBAIC03NzkzLDcgKzEwMDg3LDcgQEAKICLQkNC60L4g0L3Rj9C80LAg0LTRgNGD0LPQsCDQv9GA0L7QvNGP0L3QsCDQt9CwINCy0LrQu9GO0YfQstCw0L3QtSDQsiDQuNC90LTQtdC60YHQsCwg0L3QsNC5LdCy0LXRgNC+0Y/RgtC90L4g0L3Rj9C60L7RjyDQtNGA0YPQs9CwXG4iCiAi0LrRgNGK0L/QutCwINC1INC00L7QstC10LvQsCDQtNC+INGB0YrRidC40YLQtSDQv9GA0L7QvNC10L3QuCDQuCDQsiDRgtCw0LrRitCyINGB0LvRg9GH0LDQuSDQv9GA0L7RgdGC0L4g0L/RgNC+0L/Rg9GB0L3QtdGC0LUg0YLQsNC30LguIgogCi0jOiBidWlsdGluL2FtLmM6MTg0MgorIzogYnVpbHRpbi9hbS5jOjE4MjIKIG1zZ2lkICIiCiAiWW91IHN0aWxsIGhhdmUgdW5tZXJnZWQgcGF0aHMgaW4geW91ciBpbmRleC5cbiIKICJZb3Ugc2hvdWxkICdnaXQgYWRkJyBlYWNoIGZpbGUgd2l0aCByZXNvbHZlZCBjb25mbGljdHMgdG8gbWFyayB0aGVtIGFzICIKQEAgLTc4MDQsMTcgKzEwMDk4LDE3IEBACiAi0KHQu9C10LQg0LrQvtGA0LXQutGG0LjRjyDQvdCwINC60L7QvdGE0LvQuNC60YLQuNGC0LUg0LjQt9C/0YrQu9C90LXRgtC1IOKAnmdpdCBhZGTigJwg0LLRitGA0YXRgyDQv9C+0L/RgNCw0LLQtdC90LjRgtC1INGE0LDQudC70L7QstC1LlxuIgogItCX0LAg0LTQsCDQv9GA0LjQtdC80LXRgtC1IOKAntC40LfRgtGA0LjRgtC4INC+0YIg0YLRj9GF4oCcLCDQuNC30L/RitC70L3QtdGC0LUg4oCeZ2l0IHJt4oCcINCy0YrRgNGF0YMg0LjQt9GC0YDQuNGC0LjRgtC1INGE0LDQudC70L7QstC1LiIKIAotIzogYnVpbHRpbi9hbS5jOjE5NDkgYnVpbHRpbi9hbS5jOjE5NTMgYnVpbHRpbi9hbS5jOjE5NjUgYnVpbHRpbi9yZXNldC5jOjMyOAotIzogYnVpbHRpbi9yZXNldC5jOjMzNgorIzogYnVpbHRpbi9hbS5jOjE5MjkgYnVpbHRpbi9hbS5jOjE5MzMgYnVpbHRpbi9hbS5jOjE5NDUgYnVpbHRpbi9yZXNldC5jOjM0NgorIzogYnVpbHRpbi9yZXNldC5jOjM1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcycuIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC1INGA0LDQt9C/0L7Qt9C90LDRgiDQutCw0YLQviDQvtCx0LXQutGCLiIKIAotIzogYnVpbHRpbi9hbS5jOjIwMDEKKyM6IGJ1aWx0aW4vYW0uYzoxOTgxCiBtc2dpZCAiZmFpbGVkIHRvIGNsZWFuIGluZGV4IgogbXNnc3RyICLQuNC90LTQtdC60YHRitGCINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YfQuNGB0YLQtdC9IgogCi0jOiBidWlsdGluL2FtLmM6MjAzNgorIzogYnVpbHRpbi9hbS5jOjIwMjUKIG1zZ2lkICIiCiAiWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFEIHNpbmNlIHRoZSBsYXN0ICdhbScgZmFpbHVyZS5cbiIKICJOb3QgcmV3aW5kaW5nIHRvIE9SSUdfSEVBRCIKQEAgLTc4MjUsMTQ5ICsxMDExOSwxNjAgQEAKICLRgdC+0YfQuCDQutGK0LxcbiIKICLigJ5PUklHX0hFQUTigJwiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTI5CisjOiBidWlsdGluL2FtLmM6MjEzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciAtLXBhdGNoLWZvcm1hdDogJXMiCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvQvdCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCDigJ4tLXBhdGNoLWZvcm1hdOKAnDog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTY1CisjOiBidWlsdGluL2FtLmM6MjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciAtLXNob3ctY3VycmVudC1wYXRjaDogJXMiCittc2dzdHIgItCd0LXQv9GA0LDQstC40LvQvdCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCDigJ4tLXNob3ctY3VycmVudC1wYXRjaOKAnDog4oCeJXPigJwiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIgorbXNnc3RyICIiCisi0L7Qv9GG0LjQuNGC0LUg4oCeLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXPigJwg0Lgg4oCeLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXPigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjA3CiBtc2dpZCAiZ2l0IGFtIFs8b3B0aW9ucz5dIFsoPG1ib3g+IHwgPE1haWxkaXI+KS4uLl0iCiBtc2dzdHIgImdpdCBhbSBb0J7Qn9Cm0JjQr+KApl0gWyjQpNCQ0JnQm1/QoV/Qn9Ce0KnQkHzQlNCY0KDQldCa0KLQntCg0JjQr1/QoV/Qn9Ce0KnQkCnigKZdIgogCi0jOiBidWlsdGluL2FtLmM6MjE2NgorIzogYnVpbHRpbi9hbS5jOjIyMDgKIG1zZ2lkICJnaXQgYW0gWzxvcHRpb25zPl0gKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0KSIKIG1zZ3N0ciAiZ2l0IGFtIFvQntCf0KbQmNCv4oCmXSAoLS1jb250aW51ZSB8IC0tcXVpdCB8IC0tYWJvcnQpIgogCi0jOiBidWlsdGluL2FtLmM6MjE3MgorIzogYnVpbHRpbi9hbS5jOjIyMTQKIG1zZ2lkICJydW4gaW50ZXJhY3RpdmVseSIKIG1zZ3N0ciAi0LjQvdGC0LXRgNCw0LrRgtC40LLQvdCwINGA0LDQsdC+0YLQsCIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzQKKyM6IGJ1aWx0aW4vYW0uYzoyMjE2CiBtc2dpZCAiaGlzdG9yaWNhbCBvcHRpb24gLS0gbm8tb3AiCiBtc2dzdHIgItC40LfQvtGB0YLQsNCy0LXQvdCwINC+0L/RhtC40Y8sINGB0YrRidC10YHRgtCy0YPQstCwINC/0L4g0LjRgdGC0L7RgNC40YfQtdGB0LrQuCDQv9GA0LjRh9C40L3QuCwg0L3QuNGJ0L4g0L3QtSDQv9GA0LDQstC4IgogCi0jOiBidWlsdGluL2FtLmM6MjE3NgorIzogYnVpbHRpbi9hbS5jOjIyMTgKIG1zZ2lkICJhbGxvdyBmYWxsIGJhY2sgb24gM3dheSBtZXJnaW5nIGlmIG5lZWRlZCIKIG1zZ3N0ciAi0LTQsCDRgdC1INC/0YDQtdC80LjQvdCw0LLQsCDQutGK0Lwg0YLRgNC+0LnQvdC+INGB0LvQuNCy0LDQvdC1INC/0YDQuCDQvdGD0LbQtNCwLiIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzcgYnVpbHRpbi9pbml0LWRiLmM6NDg2IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTgKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA2CisjOiBidWlsdGluL2FtLmM6MjIxOSBidWlsdGluL2luaXQtZGIuYzo0OTQgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1OAorIzogYnVpbHRpbi9yZXBhY2suYzozMDQgYnVpbHRpbi9zdGFzaC5jOjgxMgogbXNnaWQgImJlIHF1aWV0IgogbXNnc3RyICLQsdC10Lcg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc5CisjOiBidWlsdGluL2FtLmM6MjIyMQogbXNnaWQgImFkZCBhIFNpZ25lZC1vZmYtYnkgbGluZSB0byB0aGUgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgItC00L7QsdCw0LLRj9C90LUg0L3QsCDRgNC10LQg0LfQsCDQv9C+0LTQv9C40YEg4oCeU2lnbmVkLW9mZi1ieeKAnCDQsiDRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC30LAg0L/QvtC00LDQstCw0L3QtSIKIAotIzogYnVpbHRpbi9hbS5jOjIxODIKKyM6IGJ1aWx0aW4vYW0uYzoyMjI0CiBtc2dpZCAicmVjb2RlIGludG8gdXRmOCAoZGVmYXVsdCkiCiBtc2dzdHIgItC/0YDQtdC60L7QtNC40YDQsNC90LUg0LIgVVRGLTggKNGB0YLQsNC90LTQsNGA0YLQvdC+KSIKIAotIzogYnVpbHRpbi9hbS5jOjIxODQKKyM6IGJ1aWx0aW4vYW0uYzoyMjI2CiBtc2dpZCAicGFzcyAtayBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKIG1zZ3N0ciAi0L/QvtC00LDQstCw0L3QtSDQvdCwINC+0L/RhtC40Y/RgtCwIOKAni1r4oCcINC90LAg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdC1tYWlsaW5mb+KAnCIKIAotIzogYnVpbHRpbi9hbS5jOjIxODYKKyM6IGJ1aWx0aW4vYW0uYzoyMjI4CiBtc2dpZCAicGFzcyAtYiBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKIG1zZ3N0ciAi0L/QvtC00LDQstCw0L3QtSDQvdCwINC+0L/RhtC40Y/RgtCwIOKAni1i4oCcINC90LAg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdC1tYWlsaW5mb+KAnCIKIAotIzogYnVpbHRpbi9hbS5jOjIxODgKKyM6IGJ1aWx0aW4vYW0uYzoyMjMwCiBtc2dpZCAicGFzcyAtbSBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKIG1zZ3N0ciAi0L/QvtC00LDQstCw0L3QtSDQvdCwINC+0L/RhtC40Y/RgtCwIOKAni1t4oCcINC90LAg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdC1tYWlsaW5mb+KAnCIKIAotIzogYnVpbHRpbi9hbS5jOjIxOTAKKyM6IGJ1aWx0aW4vYW0uYzoyMjMyCiBtc2dpZCAicGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGZvciBtYm94IGZvcm1hdCIKIG1zZ3N0ciAiIgogItC/0L7QtNCw0LLQsNC90LUg0L3QsCDQvtC/0YbQuNGP0YLQsCDigJ4tLWtlZXAtY3LigJwg0L3QsCDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0LW1haWxzcGxpdOKAnCDQt9CwINGE0L7RgNC80LDRgiDigJ5tYm944oCcIgogCi0jOiBidWlsdGluL2FtLmM6MjE5MworIzogYnVpbHRpbi9hbS5jOjIyMzUKIG1zZ2lkICJkbyBub3QgcGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGluZGVwZW5kZW50IG9mIGFtLmtlZXBjciIKIG1zZ3N0ciAiIgogItCx0LXQtyDQv9C+0LTQsNCy0LDQvdC1INC90LAg0L7Qv9GG0LjRj9GC0LAg4oCeLS1rZWVwLWNy4oCcINC90LAg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdC1tYWlsc3BsaXTigJwg0L3QtdC30LDQstC40YHQuNC80L4gIgogItC+0YIg4oCeYW0ua2VlcGNy4oCcIgogCi0jOiBidWlsdGluL2FtLmM6MjE5NgorIzogYnVpbHRpbi9hbS5jOjIyMzgKIG1zZ2lkICJzdHJpcCBldmVyeXRoaW5nIGJlZm9yZSBhIHNjaXNzb3JzIGxpbmUiCiBtc2dzdHIgItC/0YDQvtC/0YPRgdC60LDQvdC1INC90LAg0LLRgdC40YfQutC+INC/0YDQtdC00Lgg0YDQtdC00LAg0LfQsCDQvtGC0YDRj9C30LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTk4IGJ1aWx0aW4vYW0uYzoyMjAxIGJ1aWx0aW4vYW0uYzoyMjA0IGJ1aWx0aW4vYW0uYzoyMjA3Ci0jOiBidWlsdGluL2FtLmM6MjIxMCBidWlsdGluL2FtLmM6MjIxMyBidWlsdGluL2FtLmM6MjIxNiBidWlsdGluL2FtLmM6MjIxOQotIzogYnVpbHRpbi9hbS5jOjIyMjUKKyM6IGJ1aWx0aW4vYW0uYzoyMjQwIGJ1aWx0aW4vYW0uYzoyMjQzIGJ1aWx0aW4vYW0uYzoyMjQ2IGJ1aWx0aW4vYW0uYzoyMjQ5CisjOiBidWlsdGluL2FtLmM6MjI1MiBidWlsdGluL2FtLmM6MjI1NSBidWlsdGluL2FtLmM6MjI1OCBidWlsdGluL2FtLmM6MjI2MQorIzogYnVpbHRpbi9hbS5jOjIyNjcKIG1zZ2lkICJwYXNzIGl0IHRocm91Z2ggZ2l0LWFwcGx5IgogbXNnc3RyICLQv9GA0LXQutCw0YDQstCw0L3QtSDQv9GA0LXQtyDigJ5naXQtYXBwbHnigJwiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjE1IGJ1aWx0aW4vY29tbWl0LmM6MTM0MCBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzEKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NCBidWlsdGluL2dyZXAuYzo4NjggYnVpbHRpbi9tZXJnZS5jOjIzOQotIzogYnVpbHRpbi9wdWxsLmM6MTUxIGJ1aWx0aW4vcHVsbC5jOjIwOSBidWlsdGluL3JlYmFzZS5jOjg1NAotIzogYnVpbHRpbi9yZXBhY2suYzozMTcgYnVpbHRpbi9yZXBhY2suYzozMjEgYnVpbHRpbi9yZXBhY2suYzozMjMKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTEgYnVpbHRpbi9zaG93LXJlZi5jOjE3MSBidWlsdGluL3RhZy5jOjM4NgotIzogcGFyc2Utb3B0aW9ucy5oOjE0NCBwYXJzZS1vcHRpb25zLmg6MTQ2IHBhcnNlLW9wdGlvbnMuaDoyNjgKKyM6IGJ1aWx0aW4vYW0uYzoyMjU3IGJ1aWx0aW4vY29tbWl0LmM6MTM5MSBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzAKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MyBidWlsdGluL2dyZXAuYzo4NzEgYnVpbHRpbi9tZXJnZS5jOjI1MAorIzogYnVpbHRpbi9wdWxsLmM6MTQwIGJ1aWx0aW4vcHVsbC5jOjE5OSBidWlsdGluL3JlYmFzZS5jOjE1MDUKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE1IGJ1aWx0aW4vcmVwYWNrLmM6MzE5IGJ1aWx0aW4vcmVwYWNrLmM6MzIxCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUwIGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzIgYnVpbHRpbi90YWcuYzo0MDMKKyM6IHBhcnNlLW9wdGlvbnMuaDoxNTQgcGFyc2Utb3B0aW9ucy5oOjE3NSBwYXJzZS1vcHRpb25zLmg6MzE2CiBtc2dpZCAibiIKIG1zZ3N0ciAi0JHQoNCe0JkiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjIxIGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0NCBidWlsdGluL3RhZy5jOjQyMiBidWlsdGluL3ZlcmlmeS10YWcuYzozOQorIzogYnVpbHRpbi9hbS5jOjIyNjMgYnVpbHRpbi9icmFuY2guYzo2NjEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU2IGJ1aWx0aW4vdGFnLmM6NDM3IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM4CiBtc2dpZCAiZm9ybWF0IgogbXNnc3RyICLQpNCe0KDQnNCQ0KIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjIyCisjOiBidWlsdGluL2FtLmM6MjI2NAogbXNnaWQgImZvcm1hdCB0aGUgcGF0Y2goZXMpIGFyZSBpbiIKIG1zZ3N0ciAi0YTQvtGA0LzQsNGCINC90LAg0LrRgNGK0L/QutC40YLQtSIKIAotIzogYnVpbHRpbi9hbS5jOjIyMjgKKyM6IGJ1aWx0aW4vYW0uYzoyMjcwCiBtc2dpZCAib3ZlcnJpZGUgZXJyb3IgbWVzc2FnZSB3aGVuIHBhdGNoIGZhaWx1cmUgb2NjdXJzIgogbXNnc3RyICLQuNC30LHRgNCw0L3QviDQvtGCINCy0LDRgSDRgdGK0L7QsdGJ0LXQvdC40LUg0LfQsCDQs9GA0LXRiNC60LAg0L/RgNC4INC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINC60YDRitC/0LrQuCIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzAKKyM6IGJ1aWx0aW4vYW0uYzoyMjcyCiBtc2dpZCAiY29udGludWUgYXBwbHlpbmcgcGF0Y2hlcyBhZnRlciByZXNvbHZpbmcgYSBjb25mbGljdCIKIG1zZ3N0ciAi0L/RgNC+0LTRitC70LbQsNCy0LDQvdC1INC90LAg0L/RgNC40LvQsNCz0LDQvdC10YLQviDQvdCwINC60YDRitC/0LrQuCDRgdC70LXQtCDQutC+0YDQuNCz0LjRgNCw0L3QtdGC0L4g0L3QsCDQutC+0L3RhNC70LjQutGCIgogCi0jOiBidWlsdGluL2FtLmM6MjIzMworIzogYnVpbHRpbi9hbS5jOjIyNzUKIG1zZ2lkICJzeW5vbnltcyBmb3IgLS1jb250aW51ZSIKIG1zZ3N0ciAi0L/RgdC10LLQtNC+0L3QuNC80Lgg0L3QsCDigJ4tLWNvbnRpbnVl4oCcIgogCi0jOiBidWlsdGluL2FtLmM6MjIzNgorIzogYnVpbHRpbi9hbS5jOjIyNzgKIG1zZ2lkICJza2lwIHRoZSBjdXJyZW50IHBhdGNoIgogbXNnc3RyICLQv9GA0LXRgdC60LDRh9Cw0L3QtSDQvdCwINGC0LXQutGD0YnQsNGC0LAg0LrRgNGK0L/QutCwIgogCi0jOiBidWlsdGluL2FtLmM6MjIzOQorIzogYnVpbHRpbi9hbS5jOjIyODEKIG1zZ2lkICJyZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIGFib3J0IHRoZSBwYXRjaGluZyBvcGVyYXRpb24uIgogbXNnc3RyICIiCiAi0LLRitC30YHRgtCw0L3QvtCy0Y/QstCw0L3QtSDQvdCwINC/0YrRgNCy0L7QvdCw0YfQsNC70L3QvtGC0L4g0YHRitGB0YLQvtGP0L3QuNC1INC90LAg0LrQu9C+0L3QsCDQuCDQv9GA0LXRg9GB0YLQsNC90L7QstGP0LLQsNC90LUg0L3QsCAiCiAi0L/RgNC40LvQsNCz0LDQvdC10YLQviDQvdCwINC60YDRitC/0LrQsNGC0LAuIgogCi0jOiBidWlsdGluL2FtLmM6MjI0MgorIzogYnVpbHRpbi9hbS5jOjIyODQKIG1zZ2lkICJhYm9ydCB0aGUgcGF0Y2hpbmcgb3BlcmF0aW9uIGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMuIgogbXNnc3RyICIiCiAi0L/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INC90LAg0L/RgNC40LvQsNCz0LDQvdC10YLQviDQvdCwINC60YDRitC/0LrQsNGC0LAg0LHQtdC3INC/0YDQvtC80Y/QvdCwINC60YrQvCDQutC+0LUg0YHQvtGH0Lgg4oCeSEVBROKAnC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjQ1Ci1tc2dpZCAic2hvdyB0aGUgcGF0Y2ggYmVpbmcgYXBwbGllZC4iCi1tc2dzdHIgItC/0L7QutCw0LfQstCw0L3QtSDQvdCwINC/0YDQuNC70LDQs9Cw0L3QsNGC0LAg0LrRgNGK0L/QutCwLiIKKyM6IGJ1aWx0aW4vYW0uYzoyMjg4Cittc2dpZCAic2hvdyB0aGUgcGF0Y2ggYmVpbmcgYXBwbGllZCIKK21zZ3N0ciAi0L/QvtC60LDQt9Cy0LDQvdC1INC90LAg0L/RgNC40LvQsNCz0LDQvdCw0YLQsCDQutGA0YrQv9C60LAiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjQ5CisjOiBidWlsdGluL2FtLmM6MjI5MwogbXNnaWQgImxpZSBhYm91dCBjb21taXR0ZXIgZGF0ZSIKIG1zZ3N0ciAi0LTQsNGC0LAg0LfQsCDQv9C+0LTQsNCy0LDQvdC1INGA0LDQt9C70LjRh9C90LAg0L7RgiDQv9GK0YDQstC+0L3QsNGH0LDQu9C90LDRgtCwIgogCi0jOiBidWlsdGluL2FtLmM6MjI1MQorIzogYnVpbHRpbi9hbS5jOjIyOTUKIG1zZ2lkICJ1c2UgY3VycmVudCB0aW1lc3RhbXAgZm9yIGF1dGhvciBkYXRlIgogbXNnc3RyICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINGC0LXQutGD0YnQvtGC0L4g0LLRgNC10LzQtSDQutCw0YLQviDRgtC+0LLQsCDQt9CwINCw0LLRgtC+0YAiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjUzIGJ1aWx0aW4vY29tbWl0LmM6MTQ4MyBidWlsdGluL21lcmdlLmM6MjczCi0jOiBidWlsdGluL3B1bGwuYzoxODQgYnVpbHRpbi9yZWJhc2UuYzo4OTggYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgzCi0jOiBidWlsdGluL3JldmVydC5jOjExMyBidWlsdGluL3RhZy5jOjQwMgorIzogYnVpbHRpbi9hbS5jOjIyOTcgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMCBidWlsdGluL2NvbW1pdC5jOjE1MTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODcgYnVpbHRpbi9wdWxsLmM6MTc0IGJ1aWx0aW4vcmViYXNlLmM6NTE3CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NTYgYnVpbHRpbi9yZXZlcnQuYzoxMTcgYnVpbHRpbi90YWcuYzo0MTgKIG1zZ2lkICJrZXktaWQiCiBtc2dzdHIgItCY0JTQldCd0KLQmNCk0JjQmtCQ0KLQntCgX9Cd0JBf0JrQm9Cu0KciCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjU0IGJ1aWx0aW4vcmViYXNlLmM6ODk5IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4NAorIzogYnVpbHRpbi9hbS5jOjIyOTggYnVpbHRpbi9yZWJhc2UuYzo1MTggYnVpbHRpbi9yZWJhc2UuYzoxNTU3CiBtc2dpZCAiR1BHLXNpZ24gY29tbWl0cyIKIG1zZ3N0ciAi0L/QvtC00L/QuNGB0LLQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINGBIEdQRyIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTcKKyM6IGJ1aWx0aW4vYW0uYzoyMzAxCiBtc2dpZCAiKGludGVybmFsIHVzZSBmb3IgZ2l0LXJlYmFzZSkiCiBtc2dzdHIgIijQv9C+0LvQt9Cy0LAg0YHQtSDQstGK0YLRgNC10YjQvdC+INC30LAg4oCeZ2l0LXJlYmFzZeKAnCkiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjc1CisjOiBidWlsdGluL2FtLmM6MjMxOQogbXNnaWQgIiIKICJUaGUgLWIvLS1iaW5hcnkgb3B0aW9uIGhhcyBiZWVuIGEgbm8tb3AgZm9yIGxvbmcgdGltZSwgYW5kXG4iCiAiaXQgd2lsbCBiZSByZW1vdmVkLiBQbGVhc2UgZG8gbm90IHVzZSBpdCBhbnltb3JlLiIKQEAgLTc5NzUsMTggKzEwMjgwLDE4IEBACiAi0J7Qv9GG0LjQuNGC0LUg4oCeLWLigJwv4oCeLS1iaW5hcnnigJwg0L7RgtC00LDQstC90LAg0L3QtSDQv9GA0LDQstGP0YIg0L3QuNGJ0L4g0LhcbiIKICLRidC1INCx0YrQtNCw0YIg0L/RgNC10LzQsNGF0L3QsNGC0Lgg0LIg0LHRitC00LXRidC1LiAg0J3QtSDQs9C4INC/0L7Qu9C30LLQsNC50YLQtS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjgyCisjOiBidWlsdGluL2FtLmM6MjMyNgogbXNnaWQgImZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfRh9C40YLQsNC90LUg0L3QsCDQuNC90LTQtdC60YHQsCIKIAotIzogYnVpbHRpbi9hbS5jOjIyOTcKKyM6IGJ1aWx0aW4vYW0uYzoyMzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInByZXZpb3VzIHJlYmFzZSBkaXJlY3RvcnkgJXMgc3RpbGwgZXhpc3RzIGJ1dCBtYm94IGdpdmVuLiIKIG1zZ3N0ciAiIgogItC/0YDQtdC00LjRiNC90LDRgtCwINC00LjRgNC10LrRgtC+0YDQuNGPINC30LAg0L/RgNC10LHQsNC30LjRgNCw0L3QtSDigJ4lc+KAnCDQstGB0LUg0L7RidC1INGB0YrRidC10YHRgtCy0YPQstCwLCDQsCDQtSDQt9Cw0LTQsNC00LXQvSAiCiAi0YTQsNC50Lsg4oCebWJveOKAnC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMzIxCisjOiBidWlsdGluL2FtLmM6MjM2NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiU3RyYXkgJXMgZGlyZWN0b3J5IGZvdW5kLlxuIgpAQCAtNzk5NSwxMCArMTAzMDAsMTQgQEAKICLQntGC0LrRgNC40YLQsCDQtSDQuNC30LvQuNGI0L3QsCDQtNC40YDQtdC60YLQvtGA0LjRjyDigJ4lc+KAnC5cbiIKICLQnNC+0LbQtdGC0LUg0LTQsCDRjyDQuNC30YLRgNC40LXRgtC1INGBINC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgYW0gLS1hYm9ydOKAnC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMzI3CisjOiBidWlsdGluL2FtLmM6MjM3MQogbXNnaWQgIlJlc29sdmUgb3BlcmF0aW9uIG5vdCBpbiBwcm9ncmVzcywgd2UgYXJlIG5vdCByZXN1bWluZy4iCiBtc2dzdHIgItCSINC80L7QvNC10L3RgtCwINC90LUg0YLQtdGH0LUg0L7Qv9C10YDQsNGG0LjRjyDQv9C+INC60L7RgNC40LPQuNGA0LDQvdC1INC4INC90Y/QvNCwINC60LDQuiDQtNCwINGB0LUg0L/RgNC+0LTRitC70LbQuC4iCiAKKyM6IGJ1aWx0aW4vYW0uYzoyMzgxCittc2dpZCAiaW50ZXJhY3RpdmUgbW9kZSByZXF1aXJlcyBwYXRjaGVzIG9uIHRoZSBjb21tYW5kIGxpbmUiCittc2dzdHIgItC40L3RgtC10YDQsNC60YLQuNCy0L3QuNGP0YIg0YDQtdC20LjQvCDQuNC30LjRgdC60LLQsCDQutGA0YrQv9C60Lgg0L3QsCDQutC+0LzQsNC90LTQvdC40Y8g0YDQtdC0IgorCiAjOiBidWlsdGluL2FwcGx5LmM6OAogbXNnaWQgImdpdCBhcHBseSBbPG9wdGlvbnM+XSBbPHBhdGNoPi4uLl0iCiBtc2dzdHIgImdpdCBhcHBseSBb0J7Qn9Cm0JjQr+KApl0gW9Ca0KDQqtCf0JrQkOKApl0iCkBAIC04MDE2LDg4ICsxMDMyNSwzMDMgQEAKIG1zZ2lkICJnaXQgYXJjaGl2ZTogUmVtb3RlIHdpdGggbm8gVVJMIgogbXNnc3RyICJnaXQgYXJjaGl2ZTog0JvQuNC/0YHQstCwINCw0LTRgNC10YEg0LfQsCDQvtGC0LTQsNC70LXRh9C10L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1IgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo1OAorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjEKIG1zZ2lkICJnaXQgYXJjaGl2ZTogZXhwZWN0ZWQgQUNLL05BSywgZ290IGEgZmx1c2ggcGFja2V0IgogbXNnc3RyICIiCiAiZ2l0IGFyY2hpdmU6INC+0YfQsNC60LLQsNGI0LUg0YHQtSDigJ5BQ0vigJwv4oCeTkFL4oCcLCDQsCDQsdC1INC/0L7Qu9GD0YfQtdC9INC40LfRh9C40YHRgtCy0LDRiSDQv9Cw0LrQtdGCIOKAnmZsdXNo4oCcIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2MQorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFyY2hpdmU6IE5BQ0sgJXMiCiBtc2dzdHIgImdpdCBhcmNoaXZlOiDQv9C+0LvRg9GH0LXQvSDQtSDigJ5OQUNL4oCcIOKAlCAlcyIKIAotIzogYnVpbHRpbi9hcmNoaXZlLmM6NjQKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY1CiBtc2dpZCAiZ2l0IGFyY2hpdmU6IHByb3RvY29sIGVycm9yIgogbXNnc3RyICJnaXQgYXJjaGl2ZTog0L/RgNC+0YLQvtC60L7Qu9C90LAg0LPRgNC10YjQutCwIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2OAorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjkKIG1zZ2lkICJnaXQgYXJjaGl2ZTogZXhwZWN0ZWQgYSBmbHVzaCIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmU6INC+0YfQsNC60LLQsNGI0LUg0YHQtSDQuNC30YfQuNGB0YLQstCw0L3QtSDQvdCwINCx0YPRhNC10YDQuNGC0LUg0YfRgNC10Lcg4oCeZmx1c2jigJwiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyCiBtc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tbmV4dC1hbGwgWy0tbm8tY2hlY2tvdXRdIgogbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCBbLS1uby1jaGVja291dF0iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIzCiBtc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0td3JpdGUtdGVybXMgPGJhZF90ZXJtPiA8Z29vZF90ZXJtPiIKIG1zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0td3JpdGUtdGVybXMg0JvQntCo0J4g0JTQntCR0KDQniIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE0CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjQKIG1zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2xlYW4tc3RhdGUiCiBtc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jbGVhbi1zdGF0ZSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ2CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjUKK21zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtcmVzZXQgWzxjb21taXQ+XSIKK21zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXJlc2V0IFvQn9Ce0JTQkNCS0JDQndCVXSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI2Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC13cml0ZSBbLS1uby1sb2ddIDxzdGF0ZT4gPHJldmlzaW9uPiA8Z29vZF90ZXJtPiAiCisiPGJhZF90ZXJtPiIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC13cml0ZSBbLS1uby1sb2ddINCh0KrQodCi0J7Qr9Cd0JjQlSDQktCV0KDQodCY0K8g0JTQntCR0KDQniDQm9Ce0KjQniIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI3Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDxjb21tYW5kPiA8Z29vZF90ZXJtPiAiCisiPGJhZF90ZXJtPiIKK21zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNoZWNrLWFuZC1zZXQtdGVybXMg0JrQntCc0JDQndCU0JAg0JTQntCR0KDQniIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI4Cittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LW5leHQtY2hlY2sgPGdvb2RfdGVybT4gPGJhZF90ZXJtPiBbPHRlcm0+XSIKK21zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LW5leHQtY2hlY2sg0JvQntCo0J4g0JTQntCR0KDQniDQo9Cf0KDQkNCS0JvQr9CS0JDQqdCQX9CU0KPQnNCQIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjkKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzAKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT08dGVybT4gLS10ZXJtLXtuZXcsYmFkfSIKKyI9PHRlcm0+XVstLW5vLWNoZWNrb3V0XSBbPGJhZD4gWzxnb29kPi4uLl1dIFstLV0gWzxwYXRocz4uLi5dIgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT08dGVybT4gLS10ZXJtLXtuZXcsYmFkfSIKKyI9PHRlcm0+XVstLW5vLWNoZWNrb3V0XSBb0JvQntCo0J4gW9CU0J7QkdCg0J7igKZdXSBbLS1dIFvQn9Cq0KLigKZdIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0ZXJtIgogbXNnc3RyICLigJ4lc+KAnCDQtSDQvdC10L/RgNCw0LLQuNC70L3QsCDRg9C/0YDQsNCy0LvRj9Cy0LDRidCwINC00YPQvNCwIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCB1c2UgdGhlIGJ1aWx0aW4gY29tbWFuZCAnJXMnIGFzIGEgdGVybSIKIG1zZ3N0ciAi4oCeJXPigJwg0LUg0LLQs9GA0LDQtNC10L3QsCDQutC+0LzQsNC90LTQsCDQuCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQuNC30L/QvtC70LfQstCwINC60LDRgtC+INGD0L/RgNCw0LLQu9GP0LLQsNGJ0LAg0LTRg9C80LAiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCBjaGFuZ2UgdGhlIG1lYW5pbmcgb2YgdGhlIHRlcm0gJyVzJyIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LzQtdC90LjRgtC1INC30L3QsNGH0LXQvdC40LXRgtC+INC90LAg0YPQv9GA0LDQstC70Y/QstCw0YnQsNGC0LAg0LTRg9C80LAg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3MQorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjExMQogbXNnaWQgInBsZWFzZSB1c2UgdHdvIGRpZmZlcmVudCB0ZXJtcyIKIG1zZ3N0ciAi0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDQtNCy0LUg0YDQsNC30LvQuNGH0L3QuCDRg9C/0YDQsNCy0LvRj9Cy0LDRidC4INC00YPQvNC4IgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzgKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMTgKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgZmlsZSBCSVNFQ1RfVEVSTVMiCiBtc2dzdHIgItGE0LDQudC70YrRgiDigJ5CSVNFQ1RfVEVSTVPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7RgtCy0L7RgNC4IgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTIwCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLlxuIgorbXNnc3RyICLQkiDQvNC+0LzQtdC90YLQsCDQvdC1INGB0LUg0LjQt9Cy0YrRgNGI0LLQsCDQtNCy0L7QuNGH0L3QviDRgtGK0YDRgdC10L3QtS5cbiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQtSDQv9C+0LTQsNCy0LDQvdC1IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb3VsZCBub3QgY2hlY2sgb3V0IG9yaWdpbmFsIEhFQUQgJyVzJy4gVHJ5ICdnaXQgYmlzZWN0IHJlc2V0IDxjb21taXQ+Jy4iCittc2dzdHIgIiIKKyLQv9GK0YDQstC+0L3QsNGH0LDQu9C90L4g0YPQutCw0LfQsNC90L7RgtC+IOKAniVz4oCcINCyINGD0LrQsNC30LDRgtC10LvRjyDigJ5IRUFE4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtVxuIgorItC40LfRgtC10LPQu9C10L3Qvi4gINCf0YDQvtCx0LLQsNC50YLQtSDQtNCwINC40LfQv9GK0LvQvdC40YLQtSDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0IGJpc2VjdCByZXNldCDQn9Ce0JTQkNCS0JDQndCV4oCcLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9C10L0g0LDRgNCz0YPQvNC10L3RgiDQvdCwINGE0YPQvdC60YbQuNGP0YLQsCDigJ5iaXNlY3Rfd3JpdGXigJw6IOKAniVz4oCcIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGdldCB0aGUgb2lkIG9mIHRoZSByZXYgJyVzJyIKK21zZ3N0ciAi0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRitGCINC90LAg0L7QsdC10LrRgiDQvdCwINCy0LXRgNGB0LjRjyDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/QvtC70YPRh9C10L0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiB0aGUgZmlsZSAnJXMnIgorbXNnc3RyICLRhNCw0LnQu9GK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQstC+0YDQtdC9IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgY29tbWFuZDogeW91J3JlIGN1cnJlbnRseSBpbiBhICVzLyVzIGJpc2VjdCIKK21zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9C90LAg0LrQvtC80LDQvdC00LA6INCyINC80L7QvNC10L3RgtCwINGB0LUg0LjQt9C/0YrQu9C90Y/QstCwINC00LLQvtC40YfQvdC+INGC0YrRgNGB0LXQvdC1INC/0L4gJXMvJXMuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgbmVlZCB0byBnaXZlIG1lIGF0IGxlYXN0IG9uZSAlcyBhbmQgJXMgcmV2aXNpb24uXG4iCisiWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICVzXCIgYW5kIFwiZ2l0IGJpc2VjdCAlc1wiIGZvciB0aGF0LiIKK21zZ3N0ciAiIgorItCi0YDRj9Cx0LLQsCDQtNCwINC30LDQtNCw0LTQtdGC0LUg0L/QvtC90LUg0LXQtNC90LAg4oCeJXPigJwg0Lgg0LXQtNC90LAg4oCeJXPigJwg0LLQtdGA0YHQuNGPLiAgKNCi0L7QstCwINC80L7QttC1INC00LAg0YHQtVxuIgorItC90LDQv9GA0LDQstC4INGB0YrQvtGC0LLQtdGC0L3QviDQuCDRh9GA0LXQtyDQutC+0LzQsNC90LTQuNGC0LUg4oCeZ2l0IGJpc2VjdCAlc+KAnCDQuCDigJ5naXQgYmlzZWN0ICVz4oCcLikiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgorIllvdSB0aGVuIG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJXMgYW5kICVzIHJldmlzaW9uLlxuIgorIllvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAlc1wiIGFuZCBcImdpdCBiaXNlY3QgJXNcIiBmb3IgdGhhdC4iCittc2dzdHIgIiIKKyLQotGA0Y/QsdCy0LAg0LTQsCDQt9Cw0L/QvtGH0L3QtdGC0LUg0LTQstC+0LjRh9C90L7RgtC+INGC0YrRgNGB0LXQvdC1INGH0YDQtdC3INC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgYmlzZWN0IHN0YXJ04oCcLlxuIgorItCi0YDRj9Cx0LLQsCDQtNCwINC30LDQtNCw0LTQtdGC0LUg0L/QvtC90LUg0LXQtNC90LAg4oCeJXPigJwg0Lgg0LXQtNC90LAg4oCeJXPigJwg0LLQtdGA0YHQuNGPLiAgKNCi0L7QstCwINC80L7QttC1INC00LAg0YHQtVxuIgorItC90LDQv9GA0LDQstC4INGB0YrQvtGC0LLQtdGC0L3QviDQuCDRh9GA0LXQtyDQutC+0LzQsNC90LTQuNGC0LUg4oCeZ2l0IGJpc2VjdCAlc+KAnCDQuCDigJ5naXQgYmlzZWN0ICVz4oCcLikiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmlzZWN0aW5nIG9ubHkgd2l0aCBhICVzIGNvbW1pdCIKK21zZ3N0ciAi0LTQstC+0LjRh9C90L4g0YLRitGA0YHQtdC90LUg0YHQsNC80L4g0L/QviDigJ4lc+KAnCDQv9C+0LTQsNCy0LDQvdC1LiIKKworIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtZXSBhbmQgW25dIGluIHlvdXIKKyMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKKyMuIGF0IHRoaXMgcG9pbnQuCisjLgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMxOAorbXNnaWQgIkFyZSB5b3Ugc3VyZSBbWS9uXT8gIgorbXNnc3RyICLQlNCwINGB0LUg0L/RgNC+0LTRitC70LbQuCDQu9C4PyDigJ5Z4oCcIOKAlCAg0JTQkCwg4oCebuKAnCDigJQg0L3QtSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM3OQorbXNnaWQgIm5vIHRlcm1zIGRlZmluZWQiCittc2dzdHIgItC90LUg0YHQsCDRg9C60LDQt9Cw0L3QuCDRg9C/0YDQsNCy0LvRj9Cy0LDRidC4INC00YPQvNC4IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGN1cnJlbnQgdGVybXMgYXJlICVzIGZvciB0aGUgb2xkIHN0YXRlXG4iCisiYW5kICVzIGZvciB0aGUgbmV3IHN0YXRlLlxuIgorbXNnc3RyICIiCisi0KLQtdC60YPRidC40YLQtSDRg9C/0YDQsNCy0LvRj9Cy0LDRidC4INC00YPQvNC4INGB0LA6ICVzINC30LAg0YHRgtCw0YDQvtGC0L4g0YHRitGB0YLQvtGP0L3QuNC1XG4iCisi0LggJXMg0LfQsCDQvdC+0LLQvtGC0L4g0YHRitGB0YLQvtGP0L3QuNC1LlxuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIGFyZ3VtZW50ICVzIGZvciAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCisiU3VwcG9ydGVkIG9wdGlvbnMgYXJlOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGFuZCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgorbXNnc3RyICIiCisi0L3QsCDigJ5naXQgYmlzZWN0IHRlcm1z4oCcINC1INC/0L7QtNCw0LTQtdC9INC90LXQv9GA0LDQstC40LvQtdC9INCw0YDQs9GD0LzQtdC90YIg4oCeJXPigJxcbiIKKyLQn9C+0LTQtNGK0YDQttCw0YIg0YHQtSDQvtC/0YbQuNC40YLQtSDigJ4tLXRlcm0tZ29vZOKAnC/igJ4tLXRlcm0tb2xk4oCcINC4IOKAni0tdGVybS1iYWTigJ4v4oCeLS10ZXJtLW5ld+KAnC4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIG9wdGlvbjogJyVzJyIKK21zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgtCwINC+0L/RhtC40Y86ICVzIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGEgdmFsaWQgcmV2aXNpb24iCittc2dzdHIgIuKAniVz4oCcINC90LUg0LjQt9Cz0LvQtdC20LTQsCDQutCw0YLQviDRg9C60LDQt9Cw0YLQtdC7INC60YrQvCDQstC10YDRgdC40Y8iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MTQKK21zZ2lkICJiYWQgSEVBRCAtIEkgbmVlZCBhIEhFQUQiCittc2dzdHIgItCd0LXQv9GA0LDQstC40LvQtdC9INGD0LrQsNC30LDRgtC10Lsg4oCeSEVBROKAnCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUyOQorIywgYy1mb3JtYXQKK21zZ2lkICJjaGVja2luZyBvdXQgJyVzJyBmYWlsZWQuIFRyeSAnZ2l0IGJpc2VjdCBzdGFydCA8dmFsaWQtYnJhbmNoPicuIgorbXNnc3RyICIiCisi0J3QtdGD0YHQv9C10YjQvdC+INC/0YDQtdC80LjQvdCw0LLQsNC90LUg0LrRitC8IOKAniVz4oCcLiAg0JjQt9C/0YrQu9C90LXRgtC1INC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgYmlzZWN0IHN0YXJ0ICIKKyLQodCq0KnQldCh0KLQktCj0JLQkNCpX9Ca0JvQntCd4oCcLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU1MAorbXNnaWQgIndvbid0IGJpc2VjdCBvbiBjZy1zZWVrJ2VkIHRyZWUiCittc2dzdHIgIiIKKyLQvdC1INC80L7QttC1INC00LAg0YHQtSDRgtGK0YDRgdC4INC00LLQvtC40YfQvdC+LCDQutC+0LPQsNGC0L4g0LUg0LjQt9C/0YrQu9C90LXQvdCwINC60L7QvNCw0L3QtNCw0YLQsCDigJ5jZy1zZWVr4oCcINC+0YIgIgorIuKAnmNvZ2l0b+KAnCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU1MworbXNnaWQgImJhZCBIRUFEIC0gc3RyYW5nZSBzeW1ib2xpYyByZWYiCittc2dzdHIgItCd0LXQv9GA0LDQstC40LvQtdC9INGD0LrQsNC30LDRgtC10Lsg4oCeSEVBROKAnCDigJQg0L3QtdC+0LHQuNGH0LDQtdC9INGB0LjQvNCy0L7Qu9C10L0g0YPQutCw0LfQsNGC0LXQuyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU3NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZjogJyVzJyIKK21zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0YPQutCw0LfQsNGC0LXQuzog4oCeJXPigJwiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzMKIG1zZ2lkICJwZXJmb3JtICdnaXQgYmlzZWN0IG5leHQnIgogbXNnc3RyICLQuNC30LLRitGA0YjQstCw0L3QtSDQvdCwIOKAnmdpdCBiaXNlY3QgbmV4dOKAnCIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyMgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzNQogbXNnaWQgIndyaXRlIHRoZSB0ZXJtcyB0byAuZ2l0L0JJU0VDVF9URVJNUyIKIG1zZ3N0ciAi0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0YPQv9GA0LDQstC70Y/QstCw0YnQuNGC0LUg0LTRg9C80Lgg0LIg4oCe4oCcLmdpdC9CSVNFQ1RfVEVSTVPigJ7igJwiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjQKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzcKIG1zZ2lkICJjbGVhbnVwIHRoZSBiaXNlY3Rpb24gc3RhdGUiCiBtc2dzdHIgItC40LfRh9C40YHRgtCy0LDQvdC1INC90LAg0YHRitGB0YLQvtGP0L3QuNC10YLQviDQvdCwINC00LLQvtC40YfQvdC+0YLQviDRgtGK0YDRgdC10L3QtSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyNgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzOQogbXNnaWQgImNoZWNrIGZvciBleHBlY3RlZCByZXZzIgogbXNnc3RyICLQv9GA0L7QstC10YDQutCwINC30LAg0L7Rh9Cw0LrQstCw0L3QuNGC0LUg0LLQtdGA0YHQuNC4IgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTI4CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQxCittc2dpZCAicmVzZXQgdGhlIGJpc2VjdGlvbiBzdGF0ZSIKK21zZ3N0ciAi0LjQt9GH0LjRgdGC0LLQsNC90LUg0L3QsCDRgdGK0YHRgtC+0Y/QvdC40LXRgtC+INC90LAg0LTQstC+0LjRh9C90L7RgtC+INGC0YrRgNGB0LXQvdC1IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQzCittc2dpZCAid3JpdGUgb3V0IHRoZSBiaXNlY3Rpb24gc3RhdGUgaW4gQklTRUNUX0xPRyIKK21zZ3N0ciAi0LfQsNC/0LjRgSDQvdCwINGB0YrRgdGC0L7Rj9C90LjQtdGC0L4g0L3QsCDQtNCy0L7QuNGH0L3QvtGC0L4g0YLRitGA0YHQtdC90LUg0LIg4oCeQklTRUNUX0xPR+KAnCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0NQorbXNnaWQgImNoZWNrIGFuZCBzZXQgdGVybXMgaW4gYSBiaXNlY3Rpb24gc3RhdGUiCittc2dzdHIgIiIKKyLQv9GA0L7QstC10YDQutCwINC4INC30LDQtNCw0LLQsNC90LUg0L3QsCDRg9C/0YDQsNCy0LvRj9Cy0LDRidC4INC00YPQvNC4INC60YrQvCDRgdGK0YHRgtC+0Y/QvdC40LXRgtC+INC90LAg0LTQstC+0LjRh9C90L7RgtC+INGC0YrRgNGB0LXQvdC1IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ3Cittc2dpZCAiY2hlY2sgd2hldGhlciBiYWQgb3IgZ29vZCB0ZXJtcyBleGlzdCIKK21zZ3N0ciAi0L/RgNC+0LLQtdGA0LrQsCDQtNCw0LvQuCDRgdGK0YnQtdGB0YLQstGD0LLQsNGCINC+0LTQvtCx0YDRj9Cy0LDRidC4L9C+0YLRhdCy0YrRgNC70Y/RidC4INGD0L/RgNCw0LLQu9GP0LLQsNGJ0Lgg0LTRg9C80LgiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDkKK21zZ2lkICJwcmludCBvdXQgdGhlIGJpc2VjdCB0ZXJtcyIKK21zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YPQv9GA0LDQstC70Y/QstCw0YnQuNGC0LUg0LTRg9C80LgiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NTEKK21zZ2lkICJzdGFydCB0aGUgYmlzZWN0IHNlc3Npb24iCittc2dzdHIgItC90LDRh9Cw0LvQviDQvdCwINC00LLQvtC40YfQvdC+INGC0YrRgNGB0LXQvdC1IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUzCiBtc2dpZCAidXBkYXRlIEJJU0VDVF9IRUFEIGluc3RlYWQgb2YgY2hlY2tpbmcgb3V0IHRoZSBjdXJyZW50IGNvbW1pdCIKIG1zZ3N0ciAiIgogItC+0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAg0YPQutCw0LfQsNGC0LXQu9GPIOKAnkJJU0VDVF9IRUFE4oCcINCy0LzQtdGB0YLQviDQtNCwINGB0LUg0LjQt9C/0L7Qu9C30LLQsCDRgtC10LrRg9GJ0L7RgtC+INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNDMKLW1zZ2lkICItLXdyaXRlLXRlcm1zIHJlcXVpcmVzIHR3byBhcmd1bWVudHMiCi1tc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0td3JpdGUtdGVybXPigJwg0LjQt9C40YHQutCy0LAg0YLQvtGH0L3QviDQtNCy0LAg0LDRgNCz0YPQvNC10L3RgtCwIgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY1NQorbXNnaWQgIm5vIGxvZyBmb3IgQklTRUNUX1dSSVRFIgorbXNnc3RyICLQu9C40L/RgdCy0LAg0LfQsNC/0LjRgSDQt9CwIOKAnkJJU0VDVF9XUklUReKAnCIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE0NworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY3MworbXNnaWQgIi0td3JpdGUtdGVybXMgcmVxdWlyZXMgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS13cml0ZS10ZXJtc+KAnCDQuNC30LjRgdC60LLQsCDRgtC+0YfQvdC+IDIg0LDRgNCz0YPQvNC10L3RgtCwIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njc3CiBtc2dpZCAiLS1iaXNlY3QtY2xlYW4tc3RhdGUgcmVxdWlyZXMgbm8gYXJndW1lbnRzIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLWJpc2VjdC1jbGVhbi1zdGF0ZeKAnCDQvdC1INC/0YDQuNC10LzQsCDQsNGA0LPRg9C80LXQvdGC0LgiCiAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2ODQKK21zZ2lkICItLWJpc2VjdC1yZXNldCByZXF1aXJlcyBlaXRoZXIgbm8gYXJndW1lbnQgb3IgYSBjb21taXQiCittc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tYmlzZWN0LXJlc2V04oCcINC40LfQuNGB0LrQstCwINC40LvQuCAwINCw0YDQs9GD0LzQtdC90YLQuCwg0LjQu9C4IDEg4oCUINC/0L7QtNCw0LLQsNC90LUiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2ODgKK21zZ2lkICItLWJpc2VjdC13cml0ZSByZXF1aXJlcyBlaXRoZXIgNCBvciA1IGFyZ3VtZW50cyIKK21zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1iaXNlY3Qtd3JpdGXigJwg0LjQt9C40YHQutCy0LAgNCDQuNC70LggNSDQsNGA0LPRg9C80LXQvdGC0LAiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2OTQKK21zZ2lkICItLWNoZWNrLWFuZC1zZXQtdGVybXMgcmVxdWlyZXMgMyBhcmd1bWVudHMiCittc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tY2hlY2stYW5kLXNldC10ZXJtc+KAnCDQuNC30LjRgdC60LLQsCAzINCw0YDQs9GD0LzQtdC90YLQsCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjcwMAorbXNnaWQgIi0tYmlzZWN0LW5leHQtY2hlY2sgcmVxdWlyZXMgMiBvciAzIGFyZ3VtZW50cyIKK21zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1iaXNlY3QtbmV4dC1jaGVja+KAnCDQuNC30LjRgdC60LLQsCAyINC40LvQuCAzINCw0YDQs9GD0LzQtdC90YLQsCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjcwNgorbXNnaWQgIi0tYmlzZWN0LXRlcm1zIHJlcXVpcmVzIDAgb3IgMSBhcmd1bWVudCIKK21zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1iaXNlY3QtdGVybXPigJwg0LjQt9C40YHQutCy0LAgMCDQuNC70LggMSDQsNGA0LPRg9C80LXQvdGC0LAiCisKICM6IGJ1aWx0aW4vYmxhbWUuYzozMQogbXNnaWQgImdpdCBibGFtZSBbPG9wdGlvbnM+XSBbPHJldi1vcHRzPl0gWzxyZXY+XSBbLS1dIDxmaWxlPiIKIG1zZ3N0ciAiZ2l0IGJsYW1lIFvQntCf0KbQmNCv4oCmXSBb0J7Qn9Cm0JjQr1/Ql9CQX9CS0JXQoNCh0JjQr9Ci0JDigKZdIFvQktCV0KDQodCY0K9dIFstLV0g0KTQkNCZ0JsiCkBAIC04MTA2LDE1MiArMTA2MzAsMTY1IEBACiBtc2dpZCAiPHJldi1vcHRzPiBhcmUgZG9jdW1lbnRlZCBpbiBnaXQtcmV2LWxpc3QoMSkiCiBtc2dzdHIgItCe0J/QptCY0JjRgtC1X9CX0JBf0JLQldCg0KHQmNCv0KLQkCDRgdCwINC00L7QutGD0LzQtdC90YLQuNGA0LDQvdC4INCyINGA0YrQutC+0LLQvtC00YHRgtCy0L7RgtC+IGdpdC1yZXYtbGlzdCgxKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjQwNgorIzogYnVpbHRpbi9ibGFtZS5jOjQwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RpbmcgYSBjb2xvcjogJXMiCiBtc2dzdHIgItGC0YDRj9Cx0LLQsCDQtNCwINC1INGG0LLRj9GCOiAlcyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjQxMworIzogYnVpbHRpbi9ibGFtZS5jOjQxNgogbXNnaWQgIm11c3QgZW5kIHdpdGggYSBjb2xvciIKIG1zZ3N0ciAi0YLRgNGP0LHQstCwINC00LAg0LfQsNCy0YrRgNGI0LLQsCDRgSDRhtCy0Y/RgiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjcwMAorIzogYnVpbHRpbi9ibGFtZS5jOjcyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbG9yICclcycgaW4gY29sb3IuYmxhbWUucmVwZWF0ZWRMaW5lcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0YbQstGP0YIg4oCeJXPigJwg0LIg4oCeY29sb3IuYmxhbWUucmVwZWF0ZWRMaW5lc+KAnCIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjcxOAorIzogYnVpbHRpbi9ibGFtZS5jOjc0NwogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yIGJsYW1lLmNvbG9yaW5nIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QsCDRgdGC0L7QudC90L7RgdGCINC30LAg4oCeYmxhbWUuY29sb3JpbmfigJwiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTMKLW1zZ2lkICJTaG93IGJsYW1lIGVudHJpZXMgYXMgd2UgZmluZCB0aGVtLCBpbmNyZW1lbnRhbGx5IgotbXNnc3RyICLQmNC30LLQtdC20LTQsNC90LUg0L3QsCDQsNC90L7RgtCw0YbQuNC40YLQtSDRgSDQvdCw0LzQuNGA0LDQvdC10YLQviDQuNC8LCDQv9C+0YHQu9C10LTQvtCy0LDRgtC10LvQvdC+IgorIzogYnVpbHRpbi9ibGFtZS5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZmluZCByZXZpc2lvbiAlcyB0byBpZ25vcmUiCittc2dzdHIgItCy0LXRgNGB0LjRj9GC0LAg0LfQsCDQv9GA0LXRgdC60LDRh9Cw0L3QtSDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGC0LAiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTQKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDQKK21zZ2lkICJTaG93IGJsYW1lIGVudHJpZXMgYXMgd2UgZmluZCB0aGVtLCBpbmNyZW1lbnRhbGx5IgorbXNnc3RyICLQmNC30LLQtdC20LTQsNC90LUg0L3QsCDQsNCy0YLQvtGA0YHRgtCy0L7RgtC+INGBINC90LDQvNC40YDQsNC90LXRgtC+INC80YMsINC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9C90L4iCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDUKIG1zZ2lkICJTaG93IGJsYW5rIFNIQS0xIGZvciBib3VuZGFyeSBjb21taXRzIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICIiCiAi0JjQt9Cy0LXQttC00LDQvdC1INC90LAg0L/RgNCw0LfQvdC4INGB0YPQvNC4INC/0L4gU0hBMSDQt9CwINCz0YDQsNC90LjRh9C90LjRgtC1INC/0L7QtNCw0LLQsNC90LjRjyAo0YHRgtCw0L3QtNCw0YDRgtC90L4g0L7Qv9GG0LjRj9GC0LAgIgogItC1INC40LfQutC70Y7Rh9C10L3QsCkiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTUKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDYKIG1zZ2lkICJEbyBub3QgdHJlYXQgcm9vdCBjb21taXRzIGFzIGJvdW5kYXJpZXMgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIiIKICLQndCw0YfQsNC70L3QuNGC0LUg0L/QvtC00LDQstCw0L3QuNGPINC00LAg0L3QtSDRgdC1INGB0YfQuNGC0LDRgiDQt9CwINCz0YDQsNC90LjRh9C90LggKNGB0YLQsNC90LTQsNGA0YLQvdC+INC+0L/RhtC40Y/RgtCwINC1ICIKICLQuNC30LrQu9GO0YfQtdC90LApIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk2CisjOiBidWlsdGluL2JsYW1lLmM6ODQ3CiBtc2dpZCAiU2hvdyB3b3JrIGNvc3Qgc3RhdGlzdGljcyIKIG1zZ3N0ciAi0JjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHRgtCw0YLQuNGB0YLQuNC60LAg0LfQsCDQuNC30LLRitGA0YjQtdC90LjRgtC1INC00LXQudGB0YLQstC40Y8iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTcKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDgKIG1zZ2lkICJGb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCiBtc2dzdHIgItCf0YDQuNC90YPQtNC40YLQtdC70L3QviDQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvdCw0L/RgNC10LTRitC60LAiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDkKIG1zZ2lkICJTaG93IG91dHB1dCBzY29yZSBmb3IgYmxhbWUgZW50cmllcyIKLW1zZ3N0ciAi0JjQt9Cy0LXQttC00LDQvdC1INC90LAg0LTQvtC/0YrQu9C90LjRgtC10LvQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGPINC30LAg0L7Qv9GA0LXQtNC10LvRj9C90LXRgtC+INC90LAg0LDQvdC+0YLQsNGG0LjQuNGC0LUiCittc2dzdHIgItCY0LfQstC10LbQtNCw0L3QtSDQvdCwINC00L7Qv9GK0LvQvdC40YLQtdC70L3QsCDQuNC90YTQvtGA0LzQsNGG0LjRjyDQt9CwINC+0L/RgNC10LTQtdC70Y/QvdC10YLQviDQvdCwINCw0LLRgtC+0YDRgdGC0LLQvtGC0L4iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTkKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTAKIG1zZ2lkICJTaG93IG9yaWdpbmFsIGZpbGVuYW1lIChEZWZhdWx0OiBhdXRvKSIKIG1zZ3N0ciAiIgogItCY0LfQstC10LbQtNCw0L3QtSDQvdCwINC/0YrRgNCy0L7QvdCw0YfQsNC70L3QvtGC0L4g0LjQvNC1INC90LAg0YTQsNC50LsgKNGB0YLQsNC90LTQsNGA0YLQvdC+INGC0L7QstCwINC1INCw0LLRgtC+0LzQsNGC0LjRh9C90L4pIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAwCisjOiBidWlsdGluL2JsYW1lLmM6ODUxCiBtc2dpZCAiU2hvdyBvcmlnaW5hbCBsaW5lbnVtYmVyIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICIiCiAi0JjQt9Cy0LXQttC00LDQvdC1INC90LAg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdC40Y/RgiDQvdC+0LzQtdGAINC90LAg0YDQtdC0ICjRgdGC0LDQvdC00LDRgNGC0L3QviDQvtC/0YbQuNGP0YLQsCDQtSDQuNC30LrQu9GO0YfQtdC90LApIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAxCisjOiBidWlsdGluL2JsYW1lLmM6ODUyCiBtc2dpZCAiU2hvdyBpbiBhIGZvcm1hdCBkZXNpZ25lZCBmb3IgbWFjaGluZSBjb25zdW1wdGlvbiIKIG1zZ3N0ciAi0JjQt9Cy0LXQttC00LDQvdC1INCy0YrQsiDRhNC+0YDQvNCw0YIg0LfQsCDQv9C+LdC90LDRgtCw0YLRitGI0L3QsCDQvtCx0YDQsNCx0L7RgtC60LAiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDIKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTMKIG1zZ2lkICJTaG93IHBvcmNlbGFpbiBmb3JtYXQgd2l0aCBwZXItbGluZSBjb21taXQgaW5mb3JtYXRpb24iCiBtc2dzdHIgIiIKICLQmNC30LLQtdC20LTQsNC90LUg0LLRitCyINGE0L7RgNC80LDRgiDQt9CwINC60L7QvNCw0L3QtNC4INC+0YIg0L/QvtGC0YDQtdCx0LjRgtC10LvRgdC60L4g0L3QuNCy0L4g0YEg0LjQvdGE0L7RgNC80LDRhtC40Y8g0L3QsCDQstGB0LXQutC4ICIKICLRgNC10LQiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTQKIG1zZ2lkICJVc2UgdGhlIHNhbWUgb3V0cHV0IG1vZGUgYXMgZ2l0LWFubm90YXRlIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICIiCiAi0JjQt9C/0L7Qu9C30LLQsNC90LUg0L3QsCDRgdGK0YnQuNGPINGE0L7RgNC80LDRgiDQutCw0YLQviDigJ5naXQtYW5ub3RhdGXigJwgKNGB0YLQsNC90LTQsNGA0YLQvdC+INC+0L/RhtC40Y/RgtCwINC1ICIKICLQuNC30LrQu9GO0YfQtdC90LApIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA0CisjOiBidWlsdGluL2JsYW1lLmM6ODU1CiBtc2dpZCAiU2hvdyByYXcgdGltZXN0YW1wIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICLQmNC30LLQtdC20LTQsNC90LUg0L3QsCDQvdC10YTQvtGA0LzQsNGC0LjRgNCw0L3QuCDQstGA0LXQvNC10L3QsCAo0YHRgtCw0L3QtNCw0YDRgtC90L4g0L7Qv9GG0LjRj9GC0LAg0LUg0LjQt9C60LvRjtGH0LXQvdCwKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwNQorIzogYnVpbHRpbi9ibGFtZS5jOjg1NgogbXNnaWQgIlNob3cgbG9uZyBjb21taXQgU0hBMSAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAi0JjQt9Cy0LXQttC00LDQvdC1INC90LAg0L/RitC70L3QuNGC0LUg0YHRg9C80Lgg0L/QviBTSEExICjRgdGC0LDQvdC00LDRgNGC0L3QviDQvtC/0YbQuNGP0YLQsCDQtSDQuNC30LrQu9GO0YfQtdC90LApIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA2CisjOiBidWlsdGluL2JsYW1lLmM6ODU3CiBtc2dpZCAiU3VwcHJlc3MgYXV0aG9yIG5hbWUgYW5kIHRpbWVzdGFtcCAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAi0JHQtdC3INC40LzQtSDQvdCwINCw0LLRgtC+0YAg0Lgg0LLRgNC10LzQtSDQvdCwINC/0YDQvtC80Y/QvdCwICjRgdGC0LDQvdC00LDRgNGC0L3QviDQvtC/0YbQuNGP0YLQsCDQtSDQuNC30LrQu9GO0YfQtdC90LApIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA3CisjOiBidWlsdGluL2JsYW1lLmM6ODU4CiBtc2dpZCAiU2hvdyBhdXRob3IgZW1haWwgaW5zdGVhZCBvZiBuYW1lIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICIiCiAi0JjQt9Cy0LXQttC00LDQvdC1INC90LAg0LUt0L/QvtGJ0LDRgtCwINC90LAg0LDQstGC0L7RgNCwLCDQsCDQvdC1INC40LzQtdGC0L4g0LzRgyAo0YHRgtCw0L3QtNCw0YDRgtC90L4g0L7Qv9GG0LjRj9GC0LAg0LUgIgogItC40LfQutC70Y7Rh9C10L3QsCkiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTkKIG1zZ2lkICJJZ25vcmUgd2hpdGVzcGFjZSBkaWZmZXJlbmNlcyIKIG1zZ3N0ciAi0JHQtdC3INGA0LDQt9C70LjQutC4INCyINC30L3QsNGG0LjRgtC1INC30LAg0LjQvdGC0LXRgNCy0LDQu9C4IgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA5CisjOiBidWlsdGluL2JsYW1lLmM6ODYwIGJ1aWx0aW4vbG9nLmM6MTcwMgorbXNnaWQgInJldiIKK21zZ3N0ciAi0JLQldCg0KEiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjAKK21zZ2lkICJJZ25vcmUgPHJldj4gd2hlbiBibGFtaW5nIgorbXNnc3RyICLQn9GA0LXRgdC60LDRh9Cw0L3QtSDQvdCwINCS0JXQoNCh0LjRj9GC0LAg0L/RgNC4INC40LfQstC10LbQtNCw0L3QtSDQvdCwINCw0LLRgtC+0YDRgdGC0LLQvtGC0L4iCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjEKK21zZ2lkICJJZ25vcmUgcmV2aXNpb25zIGZyb20gPGZpbGU+IgorbXNnc3RyICLQn9GA0LXRgdC60LDRh9Cw0L3QtSDQvdCwINCy0LXRgNGB0LjQuNGC0LUg0YPQutCw0LfQsNC90Lgg0LLRitCyINCk0JDQmdCb0LAg0L/RgNC4INC40LfQstC10LbQtNCw0L3QtSDQvdCwINCw0LLRgtC+0YDRgdGC0LLQvtGC0L4iCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjIKIG1zZ2lkICJjb2xvciByZWR1bmRhbnQgbWV0YWRhdGEgZnJvbSBwcmV2aW91cyBsaW5lIGRpZmZlcmVudGx5IgogbXNnc3RyICIiCiAi0L7RhtCy0LXRgtGP0LLQsNC90LUg0L3QsCDQv9C+0LLRgtCw0YDRj9GJ0LjRgtC1INGB0LUg0LzQtdGC0LDQtNCw0L3QvdC4INC+0YIg0L/RgNC10LTQuNGI0L3QuNGPINGA0LXQtCDQsiDRgNCw0LfQu9C40YfQtdC9INGG0LLRj9GCIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODEwCisjOiBidWlsdGluL2JsYW1lLmM6ODYzCiBtc2dpZCAiY29sb3IgbGluZXMgYnkgYWdlIgogbXNnc3RyICLQvtGG0LLQtdGC0Y/QstCw0L3QtSDQvdCwINGA0LXQtNC+0LLQtdGC0LUg0L/QviDQstGK0LfRgNCw0YHRgiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgxNwotbXNnaWQgIlVzZSBhbiBleHBlcmltZW50YWwgaGV1cmlzdGljIHRvIGltcHJvdmUgZGlmZnMiCi1tc2dzdHIgItCf0L7QtNC+0LHRgNGP0LLQsNC90LUg0L3QsCDRgNCw0LfQu9C40LrQuNGC0LUg0YfRgNC10Lcg0LXQutGB0L/QtdGA0LjQvNC10L3RgtCw0LvQvdCwINC10LLRgNC40YHRgtC40LrQsCIKLQotIzogYnVpbHRpbi9ibGFtZS5jOjgxOQorIzogYnVpbHRpbi9ibGFtZS5jOjg2NAogbXNnaWQgIlNwZW5kIGV4dHJhIGN5Y2xlcyB0byBmaW5kIGJldHRlciBtYXRjaCIKIG1zZ3N0ciAi0JTQvtC/0YrQu9C90LjRgtC10LvQvdC4INC40LfRh9C40YHQu9C10L3QuNGPINC30LAg0L/Qvi3QtNC+0LHRgNC4INGA0LXQt9GD0LvRgtCw0YLQuCIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMAorIzogYnVpbHRpbi9ibGFtZS5jOjg2NQogbXNnaWQgIlVzZSByZXZpc2lvbnMgZnJvbSA8ZmlsZT4gaW5zdGVhZCBvZiBjYWxsaW5nIGdpdC1yZXYtbGlzdCIKIG1zZ3N0ciAi0JjQt9GH0LjRgtCw0L3QtSDQvdCwINCy0LXRgNGB0LjQuNGC0LUg0L7RgiDQpNCQ0JnQmywg0LAg0L3QtSDRh9GA0LXQtyDQuNC30L/RitC70L3QtdC90LjQtSDQvdCwIOKAnmdpdC1yZXYtbGlzdOKAnCIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMQorIzogYnVpbHRpbi9ibGFtZS5jOjg2NgogbXNnaWQgIlVzZSA8ZmlsZT4ncyBjb250ZW50cyBhcyB0aGUgZmluYWwgaW1hZ2UiCiBtc2dzdHIgItCY0LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0YHRitC00YrRgNC20LDQvdC40LXRgtC+INC90LAg0KTQkNCZ0JvQsCDQutCw0YLQviDQutGA0LDQudC90L4g0L/QvtC70L7QttC10L3QuNC1IgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIyIGJ1aWx0aW4vYmxhbWUuYzo4MjMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjcgYnVpbHRpbi9ibGFtZS5jOjg2OAogbXNnaWQgInNjb3JlIgogbXNnc3RyICLQvdCw0L/QsNGB0LLQsNC90LUg0L3QsCDRgNC10LTQvtCy0LXRgtC1IgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIyCisjOiBidWlsdGluL2JsYW1lLmM6ODY3CiBtc2dpZCAiRmluZCBsaW5lIGNvcGllcyB3aXRoaW4gYW5kIGFjcm9zcyBmaWxlcyIKIG1zZ3N0ciAiIgogItCi0YrRgNGB0LXQvdC1INC90LAg0LrQvtC/0LjRgNCw0L3QuCDRgNC10LTQvtCy0LUg0LrQsNC60YLQviDQsiDRgNCw0LzQutC40YLQtSDQvdCwINC10LTQuNC9INGE0LDQudC7LCDRgtCw0LrQsCDQuCDQvtGCINC10LTQuNC9INGE0LDQudC7ICIKICLQutGK0Lwg0LTRgNGD0LMiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjgKIG1zZ2lkICJGaW5kIGxpbmUgbW92ZW1lbnRzIHdpdGhpbiBhbmQgYWNyb3NzIGZpbGVzIgogbXNnc3RyICIiCiAi0KLRitGA0YHQtdC90LUg0L3QsCDQv9GA0LXQvNC10YHRgtC10L3QuCDRgNC10LTQvtCy0LUg0LrQsNC60YLQviDQsiDRgNCw0LzQutC40YLQtSDQvdCwINC10LTQuNC9INGE0LDQudC7LCDRgtCw0LrQsCDQuCDQvtGCINC10LTQuNC9ICIKICLRhNCw0LnQuyDQutGK0Lwg0LTRgNGD0LMiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjQKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjkKIG1zZ2lkICJuLG0iCiBtc2dzdHIgIm4sbSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyNAorIzogYnVpbHRpbi9ibGFtZS5jOjg2OQogbXNnaWQgIlByb2Nlc3Mgb25seSBsaW5lIHJhbmdlIG4sbSwgY291bnRpbmcgZnJvbSAxIgogbXNnc3RyICIiCiAi0JjQvdGE0L7RgNC80LDRhtC40Y8g0YHQsNC80L4g0LfQsCDRgNC10LTQvtCy0LXRgtC1INCyINC00LjQsNC/0LDQt9C+0L3QsCDQvtGCIG4g0LTQviBtINCy0LrQu9GO0YfQuNGC0LXQu9C90L4uICDQkdGA0L7QtdC90LXRgtC+ICIKICLQt9Cw0L/QvtGH0LLQsCDQvtGCIDEiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4NzMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo5MjEKIG1zZ2lkICItLXByb2dyZXNzIGNhbid0IGJlIHVzZWQgd2l0aCAtLWluY3JlbWVudGFsIG9yIHBvcmNlbGFpbiBmb3JtYXRzIgogbXNnc3RyICIiCiAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1wcm9ncmVzc+KAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg4oCeLS1pbmNyZW1lbnRhbOKAnCDQuCDRhNC+0YDQvNCwzIDRgtCwINC90LAg0LrQvtC80LDQvdC00LjRgtC1ICIKQEAgLTgyNjUsMjAgKzEwODAyLDIwIEBACiAjLiB5b3VyIGxhbmd1YWdlIG1heSBuZWVkIG1vcmUgb3IgZmV3ZXIgZGlzcGxheQogIy4gY29sdW1ucy4KICMuCi0jOiBidWlsdGluL2JsYW1lLmM6OTI0CisjOiBidWlsdGluL2JsYW1lLmM6OTcyCiBtc2dpZCAiNCB5ZWFycywgMTEgbW9udGhzIGFnbyIKIG1zZ3N0ciAi0L/RgNC10LTQuCA0INCz0L7QtNC40L3QuCDQuCAxMSDQvNC10YHQtdGG0LAiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzoxMDExCisjOiBidWlsdGluL2JsYW1lLmM6MTA3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmaWxlICVzIGhhcyBvbmx5ICVsdSBsaW5lIgogbXNnaWRfcGx1cmFsICJmaWxlICVzIGhhcyBvbmx5ICVsdSBsaW5lcyIKIG1zZ3N0clswXSAi0LjQvNCwINGB0LDQvNC+ICUyJGx1INGA0LXQtCDQstGK0LIg0YTQsNC50LvQsCDigJ4lMSRz4oCcIgogbXNnc3RyWzFdICLQuNC80LAg0YHQsNC80L4gJTIkbHUg0YDQtdC00LAg0LLRitCyINGE0LDQudC70LAg4oCeJTEkc+KAnCIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjEwNTcKKyM6IGJ1aWx0aW4vYmxhbWUuYzoxMTI1CiBtc2dpZCAiQmxhbWluZyBsaW5lcyIKLW1zZ3N0ciAi0JDQvdC+0YLQuNGA0LDQvdC4INGA0LXQtNC+0LLQtSIKK21zZ3N0ciAi0KDQtdC00L7QstC1INGBINCw0LLRgtC+0YDRgdGC0LLQviIKIAogIzogYnVpbHRpbi9icmFuY2guYzoyOQogbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1yIHwgLWFdIFstLW1lcmdlZCB8IC0tbm8tbWVyZ2VkXSIKQEAgLTgzMDgsNyArMTA4NDUsNyBAQAogbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1yIHwgLWFdIFstLWZvcm1hdF0iCiBtc2dzdHIgImdpdCBicmFuY2ggW9Ce0J/QptCY0K/igKZdIFstciB8IC1hXSBbLS1mb3JtYXRdIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE1MQorIzogYnVpbHRpbi9icmFuY2guYzoxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImRlbGV0aW5nIGJyYW5jaCAnJXMnIHRoYXQgaGFzIGJlZW4gbWVyZ2VkIHRvXG4iCkBAIC04MzE3LDcgKzEwODU0LDcgQEAKICLQuNC30YLRgNC40LLQsNC90LUg0L3QsCDQutC70L7QvdCwIOKAniVz4oCcLCDQutC+0LnRgtC+INC1INGB0LvRj9GCINC60YrQvCDigJ4lc+KAnCxcbiIKICIgICAg0L3QviDQvtGJ0LUg0L3QtSDQtSDRgdC70Y/RgiDQutGK0Lwg0LLRitGA0YXQsCDigJ5IRUFE4oCcLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxNTUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJub3QgZGVsZXRpbmcgYnJhbmNoICclcycgdGhhdCBpcyBub3QgeWV0IG1lcmdlZCB0b1xuIgpAQCAtODMyNiwxMiArMTA4NjMsMTIgQEAKICLQvtGC0LrQsNC30LLQsNC90LUg0L3QsCDQuNC30YLRgNC40LLQsNC90LUg0L3QsCDQutC70L7QvdCwIOKAniVz4oCcLCDQutC+0LnRgtC+INC90LUg0LUg0YHQu9GP0YIg0LrRitC8XG4iCiAiICAgIOKAniVz4oCcLCDQvdC+INC1INGB0LvRj9GCINC60YrQvCDQstGK0YDRhdCwIOKAnkhFQUTigJwuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE2OQorIzogYnVpbHRpbi9icmFuY2guYzoxNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGRuJ3QgbG9vayB1cCBjb21taXQgb2JqZWN0IGZvciAnJXMnIgogbXNnc3RyICLQntCx0LXQutGC0YrRgi3Qv9C+0LTQsNCy0LDQvdC1INC30LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxNzMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgYnJhbmNoICclcycgaXMgbm90IGZ1bGx5IG1lcmdlZC5cbiIKQEAgLTgzNDAsMTEzICsxMDg3NywxMjIgQEAKICLQmtC70L7QvdGK0YIg4oCeJXPigJwg0L3QtSDQtSDRgdC70Y/RgiDQvdCw0L/RitC70L3Qvi4gINCQ0LrQviDRgdGC0LUg0YHQuNCz0YPRgNC90LgsINGH0LUg0LjRgdC60LDRgtC1XG4iCiAi0LTQsCDQs9C+INC40LfRgtGA0LjQtdGC0LUsINC40LfQv9GK0LvQvdC10YLQtSDigJ5naXQgYnJhbmNoIC1EICVz4oCcLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxODYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTg5CiBtc2dpZCAiVXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKIG1zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdC+INC+0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdC40Y8g0YTQsNC50LsiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjE3CisjOiBidWlsdGluL2JyYW5jaC5jOjIyMAogbXNnaWQgImNhbm5vdCB1c2UgLWEgd2l0aCAtZCIKIG1zZ3N0ciAi0J7Qv9GG0LjRj9GC0LAg4oCeLWHigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBINC+0L/RhtC40Y/RgtCwIOKAni1k4oCcIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjIyMworIzogYnVpbHRpbi9icmFuY2guYzoyMjYKIG1zZ2lkICJDb3VsZG4ndCBsb29rIHVwIGNvbW1pdCBvYmplY3QgZm9yIEhFQUQiCiBtc2dzdHIgItCe0LHQtdC60YLRitGCLdC/0L7QtNCw0LLQsNC90LUsINGB0L7Rh9C10L0g0L7RgiDRg9C60LDQt9Cw0YLQtdC70Y8g4oCeSEVBROKAnCwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBkZWxldGUgYnJhbmNoICclcycgY2hlY2tlZCBvdXQgYXQgJyVzJyIKIG1zZ3N0ciAi0J3QtSDQvNC+0LbQtdGC0LUg0LTQsCDQuNC30YLRgNC40LXRgtC1INC60LvQvtC90LAg4oCeJXPigJwsINC60L7QudGC0L4g0LUg0LjQt9GC0LXQs9C70LXQvSDQsiDQv9GK0YLRjyDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZS10cmFja2luZyBicmFuY2ggJyVzJyBub3QgZm91bmQuIgogbXNnc3RyICLRgdC70LXQtNGP0YnQuNGP0YIg0LrQu9C+0L0g4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgi4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjUzCisjOiBidWlsdGluL2JyYW5jaC5jOjI1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJicmFuY2ggJyVzJyBub3QgZm91bmQuIgogbXNnc3RyICLQutC70L7QvdGK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgi4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjY4CisjOiBidWlsdGluL2JyYW5jaC5jOjI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJFcnJvciBkZWxldGluZyByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICclcyciCiBtc2dzdHIgItCT0YDQtdGI0LrQsCDQv9GA0Lgg0LjQt9GC0YDQuNCy0LDQvdC10YLQviDQvdCwINGB0LvQtdC00Y/RidC40Y8g0LrQu9C+0L0g4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjY5CisjOiBidWlsdGluL2JyYW5jaC5jOjI3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJFcnJvciBkZWxldGluZyBicmFuY2ggJyVzJyIKIG1zZ3N0ciAi0JPRgNC10YjQutCwINC/0YDQuCDQuNC30YLRgNC40LLQsNC90LXRgtC+INC90LAg0LrQu9C+0L3QsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNzYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCAlcyAod2FzICVzKS5cbiIKIG1zZ3N0ciAi0JjQt9GC0YDQuNGCINGB0LvQtdC00Y/RiSDQutC70L7QvSDigJ4lc+KAnCAo0YLQvtC5INGB0L7Rh9C10YjQtSDQutGK0Lwg4oCeJXPigJwpLlxuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI3NworIzogYnVpbHRpbi9icmFuY2guYzoyODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCBicmFuY2ggJXMgKHdhcyAlcykuXG4iCiBtc2dzdHIgItCY0LfRgtGA0LjRgiDQutC70L7QvSDigJ4lc+KAnCAo0YLQvtC5INGB0L7Rh9C10YjQtSDQutGK0Lwg4oCeJXPigJwpLlxuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQyMSBidWlsdGluL3RhZy5jOjU5CisjOiBidWlsdGluL2JyYW5jaC5jOjQyOSBidWlsdGluL3RhZy5jOjYxCiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGZvcm1hdCBzdHJpbmciCiBtc2dzdHIgItGE0L7RgNC80LDRgtC40YDQsNGJ0LjRj9GCINC90LjQtyDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LDQvdCw0LvQuNC30LjRgNCw0L06ICVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ1OAorIzogYnVpbHRpbi9icmFuY2guYzo0NjAKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIgorbXNnc3RyICLQv9C+0LTQsNCy0LDQvdC10YLQviwg0YHQvtGH0LXQvdC+INC+0YIg0YPQutCw0LfQsNGC0LXQu9GPIOKAnkhFQUTigJwsINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INGD0YHRgtCw0L3QvtCy0LgiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDY2CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgKCVzKSBwb2ludHMgb3V0c2lkZSBvZiByZWZzL2hlYWRzLyIKK21zZ3N0ciAi4oCeSEVBROKAnCAoJXMpINGB0L7Rh9C4INC40LfQstGK0L0g0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwIOKAnnJlZnMvaGVhZHPigJwiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAlcyBpcyBiZWluZyByZWJhc2VkIGF0ICVzIgogbXNnc3RyICLQmtC70L7QvdGK0YIg4oCeJXPigJwg0YHQtSDQv9GA0LXQsdCw0LfQuNGA0LAg0LLRitGA0YXRgyDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0NjIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAlcyBpcyBiZWluZyBiaXNlY3RlZCBhdCAlcyIKIG1zZ3N0ciAi0KLRitGA0YHQuCDRgdC1INC00LLQvtC40YfQvdC+INCyINC60LvQvtC90LAg4oCeJXPigJwg0L/RgNC4IOKAniVz4oCcIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ3OQorIzogYnVpbHRpbi9icmFuY2guYzo1MDIKIG1zZ2lkICJjYW5ub3QgY29weSB0aGUgY3VycmVudCBicmFuY2ggd2hpbGUgbm90IG9uIGFueS4iCiBtc2dzdHIgItC90LUg0LzQvtC20LXRgtC1INC00LAg0LrQvtC/0LjRgNCw0YLQtSDRgtC10LrRg9GJ0LjRjyDQutC70L7QvSwg0LfQsNGJ0L7RgtC+INGB0YLQtSDQuNC30LLRitC9INC60L7QudGC0L4g0Lgg0LTQsCDQtSDQutC70L7QvSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0ODEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTA0CiBtc2dpZCAiY2Fubm90IHJlbmFtZSB0aGUgY3VycmVudCBicmFuY2ggd2hpbGUgbm90IG9uIGFueS4iCiBtc2dzdHIgIiIKICLQvdC1INC80L7QttC10YLQtSDQtNCwINC/0YDQtdC40LzQtdC90YPQstCw0YLQtSDRgtC10LrRg9GJ0LjRjyDQutC70L7QvSwg0LfQsNGJ0L7RgtC+INGB0YLQtSDQuNC30LLRitC9INC60L7QudGC0L4g0Lgg0LTQsCDQtSDQutC70L7QvSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0OTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgYnJhbmNoIG5hbWU6ICclcyciCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvQvdC+INC40LzQtSDQvdCwINC60LvQvtC9OiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MTkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQyCiBtc2dpZCAiQnJhbmNoIHJlbmFtZSBmYWlsZWQiCiBtc2dzdHIgItCd0LXRg9GB0L/QtdGI0L3QviDQv9GA0LXQuNC80LXQvdGD0LLQsNC90LUg0L3QsCDQutC70L7QvSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MjEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQ0CiBtc2dpZCAiQnJhbmNoIGNvcHkgZmFpbGVkIgogbXNnc3RyICLQndC10YPRgdC/0LXRiNC90L4g0LrQvtC/0LjRgNCw0L3QtSDQvdCwINC60LvQvtC9IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyNQorIzogYnVpbHRpbi9icmFuY2guYzo1NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3JlYXRlZCBhIGNvcHkgb2YgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyIKIG1zZ3N0ciAi0JrQu9C+0L3RitGCINGBINC90LXQv9GA0LDQstC40LvQvdC+INC40LzQtSDigJ4lc+KAnCDQtSDQutC+0L/QuNGA0LDQvSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MjgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbmFtZWQgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyBhd2F5IgogbXNnc3RyICLQmtC70L7QvdGK0YIg0YEg0L3QtdC/0YDQsNCy0LjQu9C90L4g0LjQvNC1IOKAniVz4oCcINC1INC/0YDQtdC40LzQtdC90YPQstCw0L0iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTM0CisjOiBidWlsdGluL2JyYW5jaC5jOjU1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggcmVuYW1lZCB0byAlcywgYnV0IEhFQUQgaXMgbm90IHVwZGF0ZWQhIgogbXNnc3RyICLQmtC70L7QvdGK0YIg0LUg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvSDQvdCwIOKAniVz4oCcLCDQvdC+INGD0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0L3QtSDQtSDQvtCx0L3QvtCy0LXQvSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1NDMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTY2CiBtc2dpZCAiQnJhbmNoIGlzIHJlbmFtZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICLQmtC70L7QvdGK0YIg0LUg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvSwg0L3QviDQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC90LjRj9GCINGE0LDQudC7INC90LUg0LUg0L7QsdC90L7QstC10L0iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQ1CisjOiBidWlsdGluL2JyYW5jaC5jOjU2OAogbXNnaWQgIkJyYW5jaCBpcyBjb3BpZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICLQmtC70L7QvdGK0YIg0LUg0LrQvtC/0LjRgNCw0L0sINC90L4g0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdC40Y/RgiDRhNCw0LnQuyDQvdC1INC1INC+0LHQvdC+0LLQtdC9IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU2MQorIzogYnVpbHRpbi9icmFuY2guYzo1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlBsZWFzZSBlZGl0IHRoZSBkZXNjcmlwdGlvbiBmb3IgdGhlIGJyYW5jaFxuIgpAQCAtODQ1NywxODkgKzExMDAzLDE4MyBAQAogIiAgICAlc1xuIgogItCg0LXQtNC+0LLQtdGC0LUsINC60L7QuNGC0L4g0LfQsNC/0L7Rh9Cy0LDRgiDRgSDigJ4lY+KAnCwg0YnQtSDQsdGK0LTQsNGCINC/0YDQvtC/0YPRgdC90LDRgtC4LlxuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5NAorIzogYnVpbHRpbi9icmFuY2guYzo2MTgKIG1zZ2lkICJHZW5lcmljIG9wdGlvbnMiCiBtc2dzdHIgItCe0LHRidC4INC90LDRgdGC0YDQvtC50LrQuCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIwCiBtc2dpZCAic2hvdyBoYXNoIGFuZCBzdWJqZWN0LCBnaXZlIHR3aWNlIGZvciB1cHN0cmVhbSBicmFuY2giCiBtc2dzdHIgIiIKLSLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRhdC10YjQsCDQuCDRgtC10LzQsNGC0LAuICDQn9C+0LLRgtCw0YDRj9C90LXRgtC+INC90LAg0L7Qv9GG0LjRj9GC0LAg0L/RgNC40LHQsNCy0Y8g0L7RgtC00LDQu9C10YfQtdC90LjRgtC1ICIKLSLQutC70L7QvdC4IgorItC40LfQstC10LbQtNCw0L3QtSDQvdCwINC60L7QvdGC0YDQvtC70L3QsNGC0LAg0YHRg9C80LAg0Lgg0YLQtdC80LDRgtCwLiAg0J/QvtCy0YLQsNGA0Y/QvdC10YLQviDQvdCwINC+0L/RhtC40Y/RgtCwINC/0YDQuNCx0LDQstGPICIKKyLQvtGC0LTQsNC70LXRh9C10L3QuNGC0LUg0LrQu9C+0L3QuCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIxCiBtc2dpZCAic3VwcHJlc3MgaW5mb3JtYXRpb25hbCBtZXNzYWdlcyIKIG1zZ3N0ciAi0LHQtdC3INC40L3RhNC+0YDQvNCw0YbQuNC+0L3QvdC4INGB0YrQvtCx0YnQtdC90LjRjyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIyCiBtc2dpZCAic2V0IHVwIHRyYWNraW5nIG1vZGUgKHNlZSBnaXQtcHVsbCgxKSkiCiBtc2dzdHIgItC30LDQtNCw0LLQsNC90LUg0L3QsCDRgNC10LbQuNC80LAg0L3QsCDRgdC70LXQtNC10L3QtSAo0LLQuNC2IGdpdC1wdWxsKDEpKSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI0CiBtc2dpZCAiZG8gbm90IHVzZSIKIG1zZ3N0ciAi0LTQsCDQvdC1INGB0LUg0L/QvtC70LfQstCwIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI2IGJ1aWx0aW4vcmViYXNlLmM6NTEzCiBtc2dpZCAidXBzdHJlYW0iCiBtc2dzdHIgItC60LvQvtC9LdC40LfRgtC+0YfQvdC40LoiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjAyCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNgogbXNnaWQgImNoYW5nZSB0aGUgdXBzdHJlYW0gaW5mbyIKIG1zZ3N0ciAi0YHQvNGP0L3QsCDQvdCwINC60LvQvtC90LAt0LjQt9GC0L7Rh9C90LjQuiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDMKLW1zZ2lkICJVbnNldCB0aGUgdXBzdHJlYW0gaW5mbyIKLW1zZ3N0ciAi0LHQtdC3INC60LvQvtC9LdC40LfRgtC+0YfQvdC40LoiCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNworbXNnaWQgInVuc2V0IHRoZSB1cHN0cmVhbSBpbmZvIgorbXNnc3RyICLQuNC30YfQuNGB0YLQstCw0L3QtSDQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGP0YLQsCDQt9CwINC60LvQvtC9LdC40LfRgtC+0YfQvdC40LoiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA0CisjOiBidWlsdGluL2JyYW5jaC5jOjYyOAogbXNnaWQgInVzZSBjb2xvcmVkIG91dHB1dCIKIG1zZ3N0ciAi0YbQstC10YLQtdC9INC40LfRhdC+0LQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA1CisjOiBidWlsdGluL2JyYW5jaC5jOjYyOQogbXNnaWQgImFjdCBvbiByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMiCiBtc2dzdHIgItC00LXQudGB0YLQstC40LUg0LLRitGA0YXRgyDRgdC70LXQtNGP0YnQuNGC0LUg0LrQu9C+0L3QuCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDcgYnVpbHRpbi9icmFuY2guYzo2MDkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMxIGJ1aWx0aW4vYnJhbmNoLmM6NjMzCiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INGB0LDQvNC+INC90LAg0LrQu9C+0L3QuNGC0LUsINC60L7QuNGC0L4g0YHRitC00YrRgNC20LDRgiDRgtC+0LLQsCDQn9Ce0JTQkNCS0JDQndCVIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwOCBidWlsdGluL2JyYW5jaC5jOjYxMAorIzogYnVpbHRpbi9icmFuY2guYzo2MzIgYnVpbHRpbi9icmFuY2guYzo2MzQKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0YHQsNC80L4g0L3QsCDQutC70L7QvdC40YLQtSwg0LrQvtC40YLQviDQvdC1INGB0YrQtNGK0YDQttCw0YIg0YLQvtCy0LAg0J/QntCU0JDQktCQ0J3QlSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM3CiBtc2dpZCAiU3BlY2lmaWMgZ2l0LWJyYW5jaCBhY3Rpb25zOiIKIG1zZ3N0ciAi0KHQv9C10YbQuNCw0LvQvdC4INC00LXQudGB0YLQstC40Y8g0L3QsCDigJ5naXQtYnJhbmNo4oCcOiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM4CiBtc2dpZCAibGlzdCBib3RoIHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQutCw0LrRgtC+INC90LAg0YHQu9C10LTRj9GJ0LjRgtC1LCDRgtCw0LrQsCDQuCDQvdCwINC70L7QutCw0LvQvdC40YLQtSDQutC70L7QvdC4IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxNgorIzogYnVpbHRpbi9icmFuY2guYzo2NDAKIG1zZ2lkICJkZWxldGUgZnVsbHkgbWVyZ2VkIGJyYW5jaCIKIG1zZ3N0ciAi0LjQt9GC0YDQuNCy0LDQvdC1INC90LAg0LrQu9C+0L3QuCwg0LrQvtC40YLQviDRgdCwINC90LDQv9GK0LvQvdC+INGB0LvQtdGC0LgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE3CisjOiBidWlsdGluL2JyYW5jaC5jOjY0MQogbXNnaWQgImRlbGV0ZSBicmFuY2ggKGV2ZW4gaWYgbm90IG1lcmdlZCkiCiBtc2dzdHIgItC40LfRgtGA0LjQstCw0L3QtSDQuCDQvdCwINC60LvQvtC90LgsINC60L7QuNGC0L4g0L3QtSDRgdCwINC90LDQv9GK0LvQvdC+INGB0LvQtdGC0LgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE4CisjOiBidWlsdGluL2JyYW5jaC5jOjY0MgogbXNnaWQgIm1vdmUvcmVuYW1lIGEgYnJhbmNoIGFuZCBpdHMgcmVmbG9nIgogbXNnc3RyICIiCiAi0L/RgNC10LzQtdGB0YLQstCw0L3QtS/Qv9GA0LXQuNC80LXQvdGD0LLQsNC90LUg0L3QsCDQutC70L7QvSDQuCDQv9GA0LjQvdCw0LTQu9C10LbQsNGJ0LjRj9GCINC80YMg0LbRg9GA0L3QsNC7INC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQzCiBtc2dpZCAibW92ZS9yZW5hbWUgYSBicmFuY2gsIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAi0L/RgNC10LzQtdGB0YLQstCw0L3QtS/Qv9GA0LXQuNC80LXQvdGD0LLQsNC90LUg0L3QsCDQutC70L7QvSwg0LTQvtGA0Lgg0LDQutC+INC40LzQsCDQstC10YfQtSDQutC70L7QvSDRgSDRgtCw0LrQvtCy0LAg0LjQvNC1IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMAorIzogYnVpbHRpbi9icmFuY2guYzo2NDQKIG1zZ2lkICJjb3B5IGEgYnJhbmNoIGFuZCBpdHMgcmVmbG9nIgogbXNnc3RyICLQutC+0L/QuNGA0LDQvdC1INC90LAg0LrQu9C+0L0g0Lgg0L/RgNC40L3QsNC00LvQtdC20LDRidC40Y8g0LzRgyDQttGD0YDQvdCw0Lsg0L3QsCDRg9C60LDQt9Cw0YLQtdC70LjRgtC1IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMQorIzogYnVpbHRpbi9icmFuY2guYzo2NDUKIG1zZ2lkICJjb3B5IGEgYnJhbmNoLCBldmVuIGlmIHRhcmdldCBleGlzdHMiCiBtc2dzdHIgItC60L7Qv9C40YDQsNC90LUg0L3QsCDQutC70L7QvSwg0LTQvtGA0Lgg0LDQutC+INC40LzQsCDQstC10YfQtSDQutC70L7QvSDRgSDRgtCw0LrQvtCy0LAg0LjQvNC1IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMgorIzogYnVpbHRpbi9icmFuY2guYzo2NDYKIG1zZ2lkICJsaXN0IGJyYW5jaCBuYW1lcyIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LjQvNC10L3QsNGC0LAg0L3QsCDQutC70L7QvdC40YLQtSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ3Cittc2dpZCAic2hvdyBjdXJyZW50IGJyYW5jaCBuYW1lIgorbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQuNC80LXRgtC+INC90LAg0YLQtdC60YPRidC40Y8g0LrQu9C+0L0iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ4CiBtc2dpZCAiY3JlYXRlIHRoZSBicmFuY2gncyByZWZsb2ciCiBtc2dzdHIgItGB0YrQt9C00LDQstCw0L3QtSDQvdCwINC20YPRgNC90LDQu9CwINC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSDQvdCwINC60LvQvtC90LAiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI1CisjOiBidWlsdGluL2JyYW5jaC5jOjY1MAogbXNnaWQgImVkaXQgdGhlIGRlc2NyaXB0aW9uIGZvciB0aGUgYnJhbmNoIgogbXNnc3RyICLRgNC10LTQsNC60YLQuNGA0LDQvdC1INC90LAg0L7Qv9C40YHQsNC90LjQtdGC0L4g0L3QsCDQutC70L7QvdCwIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyNgorIzogYnVpbHRpbi9icmFuY2guYzo2NTEKIG1zZ2lkICJmb3JjZSBjcmVhdGlvbiwgbW92ZS9yZW5hbWUsIGRlbGV0aW9uIgogbXNnc3RyICLQv9GA0LjQvdGD0LTQuNGC0LXQu9C90L4g0YHRitC30LTQsNCy0LDQvdC1LCDQv9GA0LXQvNC10YHRgtCy0LDQvdC1LCDQv9GA0LXQuNC80LXQvdGD0LLQsNC90LUsINC40LfRgtGA0LjQstCw0L3QtSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUyCiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGFyZSBtZXJnZWQiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDRgdCw0LzQviDQvdCwINGB0LvQtdGC0LjRgtC1INC60LvQvtC90LgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI4CisjOiBidWlsdGluL2JyYW5jaC5jOjY1MwogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBhcmUgbm90IG1lcmdlZCIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INGB0LDQvNC+INC90LAg0L3QtdGB0LvQtdGC0LjRgtC1INC60LvQvtC90LgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI5CisjOiBidWlsdGluL2JyYW5jaC5jOjY1NAogbXNnaWQgImxpc3QgYnJhbmNoZXMgaW4gY29sdW1ucyIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC/0L4g0LrQvtC70L7QvdC4IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzMCBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzAKLSM6IGJ1aWx0aW4vdGFnLmM6NDE1Ci1tc2dpZCAia2V5IgotbXNnc3RyICLQmtCb0K7QpyIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MzEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MSBidWlsdGluL2xzLXJlbW90ZS5jOjcxCi0jOiBidWlsdGluL3RhZy5jOjQxNgotbXNnaWQgImZpZWxkIG5hbWUgdG8gc29ydCBvbiIKLW1zZ3N0ciAi0LjQvNC1INC90LAg0L/QvtC70LXRgtC+LCDQv9C+INC60L7QtdGC0L4g0LTQsCDQtSDQv9C+0LTRgNC10LTQsdCw0YLQsCIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MzMgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MyBidWlsdGluL25vdGVzLmM6NDE1Ci0jOiBidWlsdGluL25vdGVzLmM6NDE4IGJ1aWx0aW4vbm90ZXMuYzo1NzggYnVpbHRpbi9ub3Rlcy5jOjU4MQotIzogYnVpbHRpbi90YWcuYzo0MTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjU3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIgYnVpbHRpbi9ub3Rlcy5jOjQxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQxOCBidWlsdGluL25vdGVzLmM6NTgxIGJ1aWx0aW4vbm90ZXMuYzo1ODQKKyM6IGJ1aWx0aW4vdGFnLmM6NDMzCiBtc2dpZCAib2JqZWN0IgogbXNnc3RyICLQntCR0JXQmtCiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzNAorIzogYnVpbHRpbi9icmFuY2guYzo2NTgKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIG9mIHRoZSBvYmplY3QiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDRgdCw0LzQviDQvdCwINC60LvQvtC90LjRgtC1INC90LAg0J7QkdCV0JrQotCQIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzNiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ5IGJ1aWx0aW4vdGFnLmM6NDI1CisjOiBidWlsdGluL2JyYW5jaC5jOjY2MCBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ4IGJ1aWx0aW4vdGFnLmM6NDQwCiBtc2dpZCAic29ydGluZyBhbmQgZmlsdGVyaW5nIGFyZSBjYXNlIGluc2Vuc2l0aXZlIgogbXNnc3RyICLQv9C+0LTRgNC10LTQsdCw0YLQsCDQuCDRhNC40LvRgtGA0LjRgNCw0L3QtdGC0L4g0YLRgNC10YLQuNGA0LDRgiDQtdC00L3QsNC60LLQviDQvNCw0LvQutC40YLQtSDQuCDQs9C70LDQstC90LjRgtC1INCx0YPQutCy0LgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzggYnVpbHRpbi90YWcuYzo0MjMKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM5CisjOiBidWlsdGluL2JyYW5jaC5jOjY2MSBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4IGJ1aWx0aW4vdGFnLmM6NDM4CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzozOAogbXNnaWQgImZvcm1hdCB0byB1c2UgZm9yIHRoZSBvdXRwdXQiCiBtc2dzdHIgItCk0J7QoNCc0JDQoiDQt9CwINC40LfRhdC+0LTQsCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2NjAgYnVpbHRpbi9jbG9uZS5jOjczOQorIzogYnVpbHRpbi9icmFuY2guYzo2ODQgYnVpbHRpbi9jbG9uZS5jOjc4NQogbXNnaWQgIkhFQUQgbm90IGZvdW5kIGJlbG93IHJlZnMvaGVhZHMhIgogbXNnc3RyICLQkiDQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg4oCecmVmcy9oZWFkc+KAnCDQu9C40L/RgdCy0LAg0YTQsNC50Lsg4oCeSEVBROKAnCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2ODMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzA4CiBtc2dpZCAiLS1jb2x1bW4gYW5kIC0tdmVyYm9zZSBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICLQntC/0YbQuNC40YLQtSDigJ4tLWNvbHVtbuKAnCDQuCDigJ4tLXZlcmJvc2XigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Njk4IGJ1aWx0aW4vYnJhbmNoLmM6NzQ5IGJ1aWx0aW4vYnJhbmNoLmM6NzU4CisjOiBidWlsdGluL2JyYW5jaC5jOjcyMyBidWlsdGluL2JyYW5jaC5jOjc3NyBidWlsdGluL2JyYW5jaC5jOjc4NgogbXNnaWQgImJyYW5jaCBuYW1lIHJlcXVpcmVkIgogbXNnc3RyICLQndC10L7QsdGF0L7QtNC40LzQviDQtSDQuNC80LUg0L3QsCDQutC70L7QvSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MjUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzUzCiBtc2dpZCAiQ2Fubm90IGdpdmUgZGVzY3JpcHRpb24gdG8gZGV0YWNoZWQgSEVBRCIKIG1zZ3N0ciAi0J3QtSDQvNC+0LbQtSDQtNCwINC30LDQtNCw0LTQtdGC0LUg0L7Qv9C40YHQsNC90LjQtSDQvdCwINC90LXRgdCy0YrRgNC30LDQvSDigJ5IRUFE4oCcIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjczMAorIzogYnVpbHRpbi9icmFuY2guYzo3NTgKIG1zZ2lkICJjYW5ub3QgZWRpdCBkZXNjcmlwdGlvbiBvZiBtb3JlIHRoYW4gb25lIGJyYW5jaCIKIG1zZ3N0ciAi0J3QtSDQvNC+0LbQtSDQtNCwINGA0LXQtNCw0LrRgtC40YDQsNGC0LUg0L7Qv9C40YHQsNC90LjQtdGC0L4g0L3QsCDQv9C+0LLQtdGH0LUg0L7RgiDQtdC00LjQvSDQutC70L7QvSDQtdC00L3QvtCy0YDQtdC80LXQvdC90L4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzM3CisjOiBidWlsdGluL2JyYW5jaC5jOjc2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBjb21taXQgb24gYnJhbmNoICclcycgeWV0LiIKIG1zZ3N0ciAi0JIg0LrQu9C+0L3QsCDigJ4lc+KAnCDQstGB0LUg0L7RidC1INC90Y/QvNCwINC/0L7QtNCw0LLQsNC90LjRjy4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzQwCisjOiBidWlsdGluL2JyYW5jaC5jOjc2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBicmFuY2ggbmFtZWQgJyVzJy4iCiBtc2dzdHIgItCb0LjQv9GB0LLQsCDQutC70L7QvSDQvdCwINC40LzQtSDigJ4lc+KAnC4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzU1CisjOiBidWlsdGluL2JyYW5jaC5jOjc4MwogbXNnaWQgInRvbyBtYW55IGJyYW5jaGVzIGZvciBhIGNvcHkgb3BlcmF0aW9uIgogbXNnc3RyICLQv9GA0LXQutCw0LvQtdC90L4g0LzQvdC+0LPQviDQutC70L7QvdC4INC30LAg0LrQvtC/0LjRgNCw0L3QtSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NjQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzkyCiBtc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIGZvciBhIHJlbmFtZSBvcGVyYXRpb24iCiBtc2dzdHIgItC/0YDQtdC60LDQu9C10L3QviDQvNC90L7Qs9C+INCw0YDQs9GD0LzQtdC90YLQuCDQutGK0Lwg0LrQvtC80LDQvdC00LDRgtCwINC30LAg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc2OQorIzogYnVpbHRpbi9icmFuY2guYzo3OTcKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgdG8gc2V0IG5ldyB1cHN0cmVhbSIKIG1zZ3N0ciAi0L/RgNC10LrQsNC70LXQvdC+INC80L3QvtCz0L4g0LDRgNCz0YPQvNC10L3RgtC4INC60YrQvCDQutC+0LzQsNC90LTQsNGC0LAg0LfQsCDRgdC70LXQtNC10L3QtSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NzMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjb3VsZCBub3Qgc2V0IHVwc3RyZWFtIG9mIEhFQUQgdG8gJXMgd2hlbiBpdCBkb2VzIG5vdCBwb2ludCB0byBhbnkgYnJhbmNoLiIKQEAgLTg2NDcsMzUgKzExMTg3LDM5IEBACiAi0KHQu9C10LTQtdC90L7RgtC+INC+0YIg4oCeSEVBROKAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQt9Cw0LTQsNC00LUg0LTQsCDQtSDigJ4lc+KAnCwg0LfQsNGJ0L7RgtC+INGC0L4g0L3QtSDRgdC+0YfQuCDQutGK0LwgIgogItC90LjQutC+0Lkg0LrQu9C+0L0uIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc3NiBidWlsdGluL2JyYW5jaC5jOjc5OAorIzogYnVpbHRpbi9icmFuY2guYzo4MDQgYnVpbHRpbi9icmFuY2guYzo4MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBicmFuY2ggJyVzJyIKIG1zZ3N0ciAi0J3Rj9C80LAg0LrQu9C+0L0g0L3QsCDQuNC80LUg4oCeJXPigJwuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc4MAorIzogYnVpbHRpbi9icmFuY2guYzo4MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYnJhbmNoICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgItCd0LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LAg0LrQu9C+0L0g0L3QsCDQuNC80LUg4oCeJXPigJwuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc5MgorIzogYnVpbHRpbi9icmFuY2guYzo4MjEKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgdG8gdW5zZXQgdXBzdHJlYW0iCiBtc2dzdHIgItC/0YDQtdC60LDQu9C10L3QviDQvNC90L7Qs9C+INCw0YDQs9GD0LzQtdC90YLQuCDQutGK0Lwg0LrQvtC80LDQvdC00LDRgtCwINC30LAg0YHQv9C40YDQsNC90LUg0L3QsCDRgdC70LXQtNC10L3QtSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3OTYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODI1CiBtc2dpZCAiY291bGQgbm90IHVuc2V0IHVwc3RyZWFtIG9mIEhFQUQgd2hlbiBpdCBkb2VzIG5vdCBwb2ludCB0byBhbnkgYnJhbmNoLiIKIG1zZ3N0ciAiIgogItCh0LvQtdC00LXQvdC+0YLQviDQvtGCIOKAnkhFQUTigJwg0L3QtSDQvNC+0LbQtSDQtNCwINC80LDRhdC90LUsINC30LDRidC+0YLQviDRgtC+INC90LUg0YHQvtGH0Lgg0LrRitC8INC90LjQutC+0Lkg0LrQu9C+0L0uIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjgwMgorIzogYnVpbHRpbi9icmFuY2guYzo4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgaGFzIG5vIHVwc3RyZWFtIGluZm9ybWF0aW9uIgogbXNnc3RyICLQndGP0LzQsCDQuNC90YTQvtGA0LzQsNGG0LjRjyDQutC70L7QvdGK0YIg4oCeJXPigJwg0LTQsCDRgdC70LXQtNC4INC90Y/QutC+0Lkg0LTRgNGD0LMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6ODEyCi1tc2dpZCAiLWEgYW5kIC1yIG9wdGlvbnMgdG8gJ2dpdCBicmFuY2gnIGRvIG5vdCBtYWtlIHNlbnNlIHdpdGggYSBicmFuY2ggbmFtZSIKLW1zZ3N0ciAi0J7Qv9GG0LjQuNGC0LUg4oCeLWHigJwg0Lgg4oCeLXLigJwg0L3QsCDigJ5naXQgYnJhbmNo4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4INGBINC40LzQtSDQvdCwINC60LvQvtC9IgorIzogYnVpbHRpbi9icmFuY2guYzo4NDEKK21zZ2lkICIiCisiVGhlIC1hLCBhbmQgLXIsIG9wdGlvbnMgdG8gJ2dpdCBicmFuY2gnIGRvIG5vdCB0YWtlIGEgYnJhbmNoIG5hbWUuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHVzZTogLWF8LXIgLS1saXN0IDxwYXR0ZXJuPj8iCittc2dzdHIgIiIKKyLQntC/0YbQuNC40YLQtSDigJ4tYeKAnCDQuCDigJ4tcuKAnCDQvdCwIOKAnmdpdCBicmFuY2jigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80Lgg0YEg0LjQvNC1INC90LAg0LrQu9C+0L0uXG4iCisi0J/RgNC+0LHQstCw0LnRgtC1INGBOiDigJ4tYXwtciAtLWxpc3Qg0KjQkNCR0JvQntCd4oCcIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjgxNQorIzogYnVpbHRpbi9icmFuY2guYzo4NDUKIG1zZ2lkICIiCiAidGhlICctLXNldC11cHN0cmVhbScgb3B0aW9uIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQuIFBsZWFzZSB1c2UgJy0tdHJhY2snIG9yICIKICInLS1zZXQtdXBzdHJlYW0tdG8nIGluc3RlYWQuIgpAQCAtODY4MywyMCArMTEyMjcsNjYgQEAKICLQntC/0YbQuNGP0YLQsCDigJ4tLXNldC11cHN0cmVhbeKAnCDQstC10YfQtSDQvdC1INGB0LUg0L/QvtC00LTRitGA0LbQsC4gINCY0LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeLS10cmFja+KAnCDQuNC70Lgg4oCeLS0iCiAic2V0LXVwc3RyZWFtLXRv4oCcIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjQ1CisjOiBidWlsdGluL2J1bmRsZS5jOjE1IGJ1aWx0aW4vYnVuZGxlLmM6MjMKK21zZ2lkICJnaXQgYnVuZGxlIGNyZWF0ZSBbPG9wdGlvbnM+XSA8ZmlsZT4gPGdpdC1yZXYtbGlzdCBhcmdzPiIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSBjcmVhdGUgW9Ce0J/QptCY0K/igKZdINCk0JDQmdCbINCQ0KDQk9Cj0JzQldCd0KJf0JfQkF9naXRfcmV2LWxpc3TigKYiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTYgYnVpbHRpbi9idW5kbGUuYzoyOAorbXNnaWQgImdpdCBidW5kbGUgdmVyaWZ5IFs8b3B0aW9ucz5dIDxmaWxlPiIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSB2ZXJpZnkgW9Ce0J/QptCY0K/igKZdINCk0JDQmdCb4oCmIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE3IGJ1aWx0aW4vYnVuZGxlLmM6MzMKK21zZ2lkICJnaXQgYnVuZGxlIGxpc3QtaGVhZHMgPGZpbGU+IFs8cmVmbmFtZT4uLi5dIgorbXNnc3RyICJnaXQgYnVuZGxlIGxpc3QtaGVhZHMg0KTQkNCZ0JsgW9CY0JzQlV/QndCQX9Cj0JrQkNCX0JDQotCV0JvigKZdIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE4IGJ1aWx0aW4vYnVuZGxlLmM6MzgKK21zZ2lkICJnaXQgYnVuZGxlIHVuYnVuZGxlIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSB1bmJ1bmRsZSDQpNCQ0JnQmyBb0JjQnNCVX9Cd0JBf0KPQmtCQ0JfQkNCi0JXQm+KApl0iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NjYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzc1Cittc2dpZCAiZG8gbm90IHNob3cgcHJvZ3Jlc3MgbWV0ZXIiCittc2dzdHIgItCx0LXQtyDQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvdCw0L/RgNC10LTRitC60LAiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NjggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzc3Cittc2dpZCAic2hvdyBwcm9ncmVzcyBtZXRlciIKK21zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L3QsNC/0YDQtdC00YrQutCwIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjcwIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM3OQorbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIgZHVyaW5nIG9iamVjdCB3cml0aW5nIHBoYXNlIgorbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvdCw0L/RgNC10LTRitC60LAg0LLRitCyINGE0LDQt9Cw0YLQsCDQvdCwINC30LDQv9Cw0LfQstCw0L3QtSDQvdCwINC+0LHQtdC60YLQuNGC0LUiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NzMgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzgyCittc2dpZCAic2ltaWxhciB0byAtLWFsbC1wcm9ncmVzcyB3aGVuIHByb2dyZXNzIG1ldGVyIGlzIHNob3duIgorbXNnc3RyICIiCisi0YHRitGJ0L7RgtC+INC00LXQudGB0YLQstC40LUg0LrQsNGC0L4g0L7Qv9GG0LjRj9GC0LAg4oCeLS1hbGwtcHJvZ3Jlc3PigJwg0L/RgNC4INC40LfQstC10LbQtNCw0L3QtdGC0L4g0L3QsCDQvdCw0L/RgNC10LTRitC60LAiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6OTMKK21zZ2lkICJOZWVkIGEgcmVwb3NpdG9yeSB0byBjcmVhdGUgYSBidW5kbGUuIgorbXNnc3RyICLQl9CwINGB0YrQt9C00LDQstCw0L3QtdGC0L4g0L3QsCDQv9GA0LDRgtC60LAg0LUg0L3QtdC+0LHRhdC+0LTQuNC80L4g0YXRgNCw0L3QuNC70LjRidC1LiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxMDQKK21zZ2lkICJkbyBub3Qgc2hvdyBidW5kbGUgZGV0YWlscyIKK21zZ3N0ciAi0LHQtdC3INC/0L7QtNGA0L7QsdC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y8g0LfQsCDQv9GA0LDRgtC60LjRgtC1IgorCisjOiBidWlsdGluL2J1bmRsZS5jOjExOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBva2F5XG4iCiBtc2dzdHIgItCf0YDQsNGC0LrQsNGC0LAg4oCeJXPigJwg0LUg0L3QsNGA0LXQtFxuIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjU4Ci1tc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKLW1zZ3N0ciAi0JfQsCDRgdGK0LfQtNCw0LLQsNC90LXRgtC+INC90LAg0L/RgNCw0YLQutCwINC1INC90LXQvtCx0YXQvtC00LjQvNC+INGF0YDQsNC90LjQu9C40YnQtS4iCi0KLSM6IGJ1aWx0aW4vYnVuZGxlLmM6NjIKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTYwCiBtc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gdW5idW5kbGUuIgogbXNnc3RyICLQl9CwINC/0YDQuNC10LzQsNC90LXRgtC+INC90LAg0L/RgNCw0YLQutCwINC1INC90LXQvtCx0YXQvtC00LjQvNC+INGF0YDQsNC90LjQu9C40YnQtS4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1ODcKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTY4IGJ1aWx0aW4vcmVtb3RlLmM6MTY4NgorbXNnaWQgImJlIHZlcmJvc2U7IG11c3QgYmUgcGxhY2VkIGJlZm9yZSBhIHN1YmNvbW1hbmQiCittc2dzdHIgItC/0L7QstC10YfQtSDQv9C+0LTRgNC+0LHQvdC+0YHRgtC4LiAg0J/QvtGB0YLQsNCy0Y8g0YHQtSDQv9GA0LXQtCDQv9C+0LTQutC+0LzQsNC90LTQsCIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxOTAgYnVpbHRpbi9yZW1vdGUuYzoxNzE3CisjLCBjLWZvcm1hdAorbXNnaWQgIlVua25vd24gc3ViY29tbWFuZDogJXMiCittc2dzdHIgItCd0LXQv9C+0LfQvdCw0YLQsCDQv9C+0LTQutC+0LzQsNC90LTQsDogJXMiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1OTUKIG1zZ2lkICIiCiAiZ2l0IGNhdC1maWxlICgtdCBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1lIHwgLSIKICJwIHwgPHR5cGU+IHwgLS10ZXh0Y29udiB8IC0tZmlsdGVycykgWy0tcGF0aD08cGF0aD5dIDxvYmplY3Q+IgpAQCAtODcwNCw3ICsxMTI5NCw3IEBACiAiZ2l0IGNhdC1maWxlICgtdCBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1lIHwgLSIKICJwIHwg0JLQmNCUIHwgLS10ZXh0Y29udiAtLWZpbHRlcnMpIFstLXBhdGg90J/QqtCiXSDQntCR0JXQmtCiIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NTg4CisjOiBidWlsdGluL2NhdC1maWxlLmM6NTk2CiBtc2dpZCAiIgogImdpdCBjYXQtZmlsZSAoLS1iYXRjaCB8IC0tYmF0Y2gtY2hlY2spIFstLWZvbGxvdy1zeW1saW5rc10gWy0tdGV4dGNvbnYgfCAtLSIKICJmaWx0ZXJzXSIKQEAgLTg3MTIsMTQwICsxMTMwMiwxNDAgQEAKICJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCiAiZmlsdGVyc10iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MDkKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MTcKIG1zZ2lkICJvbmx5IG9uZSBiYXRjaCBvcHRpb24gbWF5IGJlIHNwZWNpZmllZCIKIG1zZ3N0ciAi0LzQvtC20LUg0LTQsCDRg9C60LDQttC10YLQtSDRgdCw0LzQviDQtdC00L3QsCDQv9Cw0LrQtdGC0L3QsCDQvtC/0YbQuNGPIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjI3CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM1CiBtc2dpZCAiPHR5cGU+IGNhbiBiZSBvbmUgb2Y6IGJsb2IsIHRyZWUsIGNvbW1pdCwgdGFnIgogbXNnc3RyICIiCiAi0JLQmNCU0YrRgiDQvNC+0LbQtSDQtNCwINC1OiDigJ5ibG9i4oCcIChCTE9CKSwg4oCedHJlZeKAnCAo0LTRitGA0LLQviksIOKAnmNvbW1pdOKAnCAo0L/QvtC00LDQstCw0L3QtSksICIKICLigJ50YWfigJwgKNC10YLQuNC60LXRgikiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MjgKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzYKIG1zZ2lkICJzaG93IG9iamVjdCB0eXBlIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQstC40LTQsCDQvdCwINC+0LHQtdC60YIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MjkKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzcKIG1zZ2lkICJzaG93IG9iamVjdCBzaXplIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRgNCw0LfQvNC10YDQsCDQvdCwINC+0LHQtdC60YIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzEKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzkKIG1zZ2lkICJleGl0IHdpdGggemVybyB3aGVuIHRoZXJlJ3Mgbm8gZXJyb3IiCiBtc2dzdHIgItC40LfRhdC+0LQg0YEgMCwg0LrQvtCz0LDRgtC+INC90Y/QvNCwINCz0YDQtdGI0LrQsCIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzMgorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MAogbXNnaWQgInByZXR0eS1wcmludCBvYmplY3QncyBjb250ZW50IgogbXNnc3RyICLRhNC+0YDQvNCw0YLQuNGA0LDQvdC+INC40LfQstC10LbQtNCw0L3QtSDQvdCwINGB0YrQtNGK0YDQttCw0L3QuNC10YLQviDQvdCwINC+0LHQtdC60YLQsCIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MgogbXNnaWQgImZvciBibG9iIG9iamVjdHMsIHJ1biB0ZXh0Y29udiBvbiBvYmplY3QncyBjb250ZW50IgogbXNnc3RyICIiCiAi0LTQsCDRgdC1INGB0YLQsNGA0YLQuNGA0LAg0L/RgNC+0LPRgNCw0LzQsNGC0LAg0LfQsNC00LDQtNC10L3QsCDQsiDQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAnnRleHRjb2524oCcINC30LAg0L/RgNC10L7QsdGA0LDQt9GD0LLQsNC90LUgIgogItC90LAg0YHRitC00YrRgNC20LDQvdC40LXRgtC+INC90LAg0L7QsdC10LrRgtCwLUJMT0IiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzYKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDQKIG1zZ2lkICJmb3IgYmxvYiBvYmplY3RzLCBydW4gZmlsdGVycyBvbiBvYmplY3QncyBjb250ZW50IgogbXNnc3RyICIiCiAi0LTQsCDRgdC1INGB0YLQsNGA0YLQuNGA0LDRgiDQv9GA0L7Qs9GA0LDQvNC40YLQtSDQt9CwINC/0YDQtdC+0LHRgNCw0LfRg9Cy0LDQvdC1INC90LAg0YHRitC00YrRgNC20LDQvdC40LXRgtC+INC90LAg0L7QsdC10LrRgtC40YLQtS1CTE9CIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM3IGdpdC1zdWJtb2R1bGUuc2g6ODU3CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ1IGdpdC1zdWJtb2R1bGUuc2g6MTAwMgogbXNnaWQgImJsb2IiCiBtc2dzdHIgItC+0LHQtdC60YItQkxPQiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzOAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NgogbXNnaWQgInVzZSBhIHNwZWNpZmljIHBhdGggZm9yIC0tdGV4dGNvbnYvLS1maWx0ZXJzIgogbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLXRleHRjb2524oCcL+KAni0tZmlsdGVyc+KAnCDQuNC30LjRgdC60LLQsNGCINC/0YrRgiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0OAogbXNnaWQgImFsbG93IC1zIGFuZCAtdCB0byB3b3JrIHdpdGggYnJva2VuL2NvcnJ1cHQgb2JqZWN0cyIKIG1zZ3N0ciAi0L/QvtC30LLQvtC70Y/QstCw0L3QtSDQvdCwINC+0L/RhtC40LjRgtC1IOKAni1z4oCcINC4IOKAni104oCcINC00LAg0YDQsNCx0L7RgtGP0YIg0YEg0L/QvtCy0YDQtdC00LXQvdC4INC+0LHQtdC60YLQuCIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0OQogbXNnaWQgImJ1ZmZlciAtLWJhdGNoIG91dHB1dCIKIG1zZ3N0ciAi0LHRg9GE0LXRgNC40YDQsNC90LUg0L3QsCDQuNC30YXQvtC00LAg0L7RgiDigJ4tLWJhdGNo4oCcIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjQzCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjUxCiBtc2dpZCAic2hvdyBpbmZvIGFuZCBjb250ZW50IG9mIG9iamVjdHMgZmVkIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICIiCiAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y8g0Lgg0YHRitC00YrRgNC20LDQvdC40LUg0L3QsCDQvtCx0LXQutGC0LjRgtC1INC/0L7QtNCw0LTQtdC90Lgg0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINCy0YXQvtC0IgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjQ3CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjU1CiBtc2dpZCAic2hvdyBpbmZvIGFib3V0IG9iamVjdHMgZmVkIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQuNC90YTQvtGA0LzQsNGG0LjRjyDQt9CwINC+0LHQtdC60YLQuNGC0LUg0L/QvtC00LDQtNC10L3QuCDQvdCwINGB0YLQsNC90LTQsNGA0YLQvdC40Y8g0LLRhdC+0LQiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTEKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTkKIG1zZ2lkICJmb2xsb3cgaW4tdHJlZSBzeW1saW5rcyAodXNlZCB3aXRoIC0tYmF0Y2ggb3IgLS1iYXRjaC1jaGVjaykiCiBtc2dzdHIgIiIKICLRgdC70LXQtNCy0LDQvdC1INC90LAg0YHQuNC80LLQvtC70L3QuNGC0LUg0LLRgNGK0LfQutC4INGB0L7Rh9C10YnQuCDQsiDQtNGK0YDQstC+0YLQviAo0L/QvtC70LfQstCwINGB0LUg0YEg4oCeLS1iYXRjaOKAnCDQuNC70Lgg4oCeLS0iCiAiYmF0Y2gtY2hlY2vigJwpIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjUzCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjYxCiBtc2dpZCAic2hvdyBhbGwgb2JqZWN0cyB3aXRoIC0tYmF0Y2ggb3IgLS1iYXRjaC1jaGVjayIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LLRgdC40YfQutC4INC+0LHQtdC60YLQuCDRgSDigJ4tLWJhdGNo4oCcINC40LvQuCDigJ4tLWJhdGNoLWNoZWNr4oCcIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjU1CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjYzCiBtc2dpZCAiZG8gbm90IG9yZGVyIC0tYmF0Y2gtYWxsLW9iamVjdHMgb3V0cHV0IgogbXNnc3RyICLQsdC10Lcg0L/QvtC00YDQtdC20LTQsNC90LUg0L3QsCDQuNC30YXQvtC00LAg0L7RgiDigJ4tLWJhdGNoLWFsbC1vYmplY3Rz4oCcIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxMgorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTMKIG1zZ2lkICJnaXQgY2hlY2stYXR0ciBbLWEgfCAtLWFsbCB8IDxhdHRyPi4uLl0gWy0tXSA8cGF0aG5hbWU+Li4uIgogbXNnc3RyICJnaXQgY2hlY2stYXR0ciBbLWEgfCAtLWFsbCB8INCQ0KLQoNCY0JHQo9Ci4oCmXSBbLS1dINCf0KrQouKApiIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTMKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjE0CiBtc2dpZCAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSIKIG1zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwg0JDQotCg0JjQkdCj0KLigKZdIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMAorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjEKIG1zZ2lkICJyZXBvcnQgYWxsIGF0dHJpYnV0ZXMgc2V0IG9uIGZpbGUiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINCy0YHQuNGH0LrQuCDQsNGC0YDQuNCx0YPRgtC4LCDQt9Cw0LTQsNC00LXQvdC4INCy0YrRgNGF0YMg0YTQsNC50LsiCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIxCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMgogbXNnaWQgInVzZSAuZ2l0YXR0cmlidXRlcyBvbmx5IGZyb20gdGhlIGluZGV4IgogbXNnc3RyICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINGE0LDQudC70LAg4oCeLmdpdGF0dHJpYnV0ZXPigJwg0YHQsNC80L4g0L7RgiDQuNC90LTQtdC60YHQsCIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNCBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAxCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMyBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI1IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKIG1zZ2lkICJyZWFkIGZpbGUgbmFtZXMgZnJvbSBzdGRpbiIKIG1zZ3N0ciAi0LjQt9GH0LjRgtCw0L3QtSDQvdCwINC40LzQtdC90LDRgtCwINC90LAg0YTQsNC50LvQvtCy0LXRgtC1INC+0YIg0YHRgtCw0L3QtNCw0YDRgtC90LjRjyDQstGF0L7QtCIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjQgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNgorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjUgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNwogbXNnaWQgInRlcm1pbmF0ZSBpbnB1dCBhbmQgb3V0cHV0IHJlY29yZHMgYnkgYSBOVUwgY2hhcmFjdGVyIgogbXNnc3RyICLRgNCw0LfQtNC10LvRj9C90LUg0L3QsCDQstGF0L7QtNC90LjRgtC1INC4INC40LfRhdC+0LTQvdC40YLQtSDQt9Cw0L/QuNGB0Lgg0YEg0L3Rg9C70LXQstC40Y8g0LfQvdCw0Log4oCeTlVM4oCcIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjIwIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM0IGJ1aWx0aW4vZ2MuYzo1MTcKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTUKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjEgYnVpbHRpbi9jaGVja291dC5jOjE0NjQgYnVpbHRpbi9nYy5jOjUzNworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5OQogbXNnaWQgInN1cHByZXNzIHByb2dyZXNzIHJlcG9ydGluZyIKIG1zZ3N0ciAi0LHQtdC3INC/0L7QutCw0LfQstCw0L3QtSDQvdCwINC90LDQv9GA0LXQtNGK0LrQsCIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOQogbXNnaWQgInNob3cgbm9uLW1hdGNoaW5nIGlucHV0IHBhdGhzIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvdC10YHRitCy0L/QsNC00LDRidC40YLQtSDQv9GK0YLQuNGJ0LAiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzAKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzEKIG1zZ2lkICJpZ25vcmUgaW5kZXggd2hlbiBjaGVja2luZyIKIG1zZ3N0ciAi0L/RgNC10YHQutCw0YfQsNC90LUg0L3QsCDQuNC90LTQtdC60YHQsCDQv9GA0Lgg0L/RgNC+0LLQtdGA0LrQsNGC0LAiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTU5CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2MwogbXNnaWQgImNhbm5vdCBzcGVjaWZ5IHBhdGhuYW1lcyB3aXRoIC0tc3RkaW4iCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tc3RkaW7igJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBINC40LzQtdC90LAg0L3QsCDQv9GK0YLQuNGJ0LAiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTYyCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2NgogbXNnaWQgIi16IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLXN0ZGluIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4teuKAnCDQuNC30LjRgdC60LLQsCDigJ4tLXN0ZGlu4oCcIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2NAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjgKIG1zZ2lkICJubyBwYXRoIHNwZWNpZmllZCIKIG1zZ3N0ciAi0L3QtSDQtSDQt9Cw0LTQsNC00LXQvSDQv9GK0YIiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY4CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3MgogbXNnaWQgIi0tcXVpZXQgaXMgb25seSB2YWxpZCB3aXRoIGEgc2luZ2xlIHBhdGhuYW1lIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLXF1aWV04oCcINC40LfQuNGB0LrQstCwINC00LAg0LUg0L/QvtC00LDQtNC10L0g0YLQvtGH0L3QviDQtdC00LjQvSDQv9GK0YIiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTcwCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3NAogbXNnaWQgImNhbm5vdCBoYXZlIGJvdGggLS1xdWlldCBhbmQgLS12ZXJib3NlIgogbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLXF1aWV04oCcINC4IOKAni0tdmVyYm9zZeKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzMKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTc3CiBtc2dpZCAiLS1ub24tbWF0Y2hpbmcgaXMgb25seSB2YWxpZCB3aXRoIC0tdmVyYm9zZSIKIG1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1ub24tbWF0Y2hpbmfigJwg0LjQt9C40YHQutCy0LAg4oCeLS12ZXJib3Nl4oCcIgogCkBAIC04ODY2LDU0ICsxMTQ1Niw1NCBAQAogbXNnaWQgIm5vIGNvbnRhY3RzIHNwZWNpZmllZCIKIG1zZ3N0ciAi0L3QtSDRgdCwINGD0LrQsNC30LDQvdC4INC60L7QvdGC0LDQutGC0LgiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxMjgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxMzEKIG1zZ2lkICJnaXQgY2hlY2tvdXQtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKIG1zZ3N0ciAiZ2l0IGNoZWNrb3V0LWluZGV4IFvQntCf0KbQmNCv4oCmXSBbLS1dIFvQpNCQ0JnQm+KApl0iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNDUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNDgKIG1zZ2lkICJzdGFnZSBzaG91bGQgYmUgYmV0d2VlbiAxIGFuZCAzIG9yIGFsbCIKIG1zZ3N0ciAi0LXRgtCw0L/RitGCINGC0YDRj9Cx0LLQsCDQtNCwINC1IOKAnjHigJwsIOKAnjLigJwsIOKAnjPigJwg0LjQu9C4IOKAnmFsbOKAnCAo0LLRgdC40YfQutC4KSIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2MQorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NAogbXNnaWQgImNoZWNrIG91dCBhbGwgZmlsZXMgaW4gdGhlIGluZGV4IgogbXNnc3RyICLQuNC30YLQtdCz0LvRj9C90LUg0L3QsCDQstGB0LjRh9C60Lgg0YTQsNC50LvQvtCy0LUg0LIg0LjQvdC00LXQutGB0LAiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjUKIG1zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgZXhpc3RpbmcgZmlsZXMiCiBtc2dzdHIgItC/0YDQtdC30LDQv9C40YHQstCw0L3QtSDQvdCwINGE0LDQudC70L7QstC10YLQtSwg0LTQvtGA0Lgg0Lgg0LTQsCDRgdGK0YnQtdGB0YLQstGD0LLQsNGCIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY0CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY3CiBtc2dpZCAibm8gd2FybmluZyBmb3IgZXhpc3RpbmcgZmlsZXMgYW5kIGZpbGVzIG5vdCBpbiBpbmRleCIKIG1zZ3N0ciAi0LHQtdC3INC/0YDQtdC00YPQv9GA0LXQttC00LXQvdC40Y8g0L/RgNC4INC70LjQv9GB0LLQsNGJ0Lgg0YTQsNC50LvQvtCy0LUg0Lgg0YTQsNC50LvQvtCy0LUg0L3QtSDQsiDQuNC90LTQtdC60YHQsCIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2OQogbXNnaWQgImRvbid0IGNoZWNrb3V0IG5ldyBmaWxlcyIKIG1zZ3N0ciAi0LHQtdC3INC40LfRgtC10LPQu9GP0L3QtSDQvdCwINC90L7QstC4INGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcxCiBtc2dpZCAidXBkYXRlIHN0YXQgaW5mb3JtYXRpb24gaW4gdGhlIGluZGV4IGZpbGUiCiBtc2dzdHIgItC+0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y/RgtCwINC/0L7Qu9GD0YfQtdC90LAg0YfRgNC10Lcg4oCec3RhdOKAnCDQt9CwINGE0LDQudC70L7QstC10YLQtSDQsiDQuNC90LTQtdC60YHQsCIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3MgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NQogbXNnaWQgInJlYWQgbGlzdCBvZiBwYXRocyBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAi0LjQt9GH0LjRgtCw0L3QtSDQvdCwINC/0YrRgtC40YnQsNGC0LAg0L7RgiDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINCy0YXQvtC0IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc0CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc3CiBtc2dpZCAid3JpdGUgdGhlIGNvbnRlbnQgdG8gdGVtcG9yYXJ5IGZpbGVzIgogbXNnc3RyICLQt9Cw0L/QuNGB0LLQsNC90LUg0L3QsCDRgdGK0LTRitGA0LbQsNC90LjQtdGC0L4g0LLRitCyINCy0YDQtdC80LXQvdC90Lgg0YTQsNC50LvQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzUgYnVpbHRpbi9jb2x1bW4uYzozMQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzEKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODUzCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjY4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc4IGJ1aWx0aW4vY29sdW1uLmM6MzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxMSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY3MgogbXNnaWQgInN0cmluZyIKIG1zZ3N0ciAi0J3QmNCXIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc2CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc5CiBtc2dpZCAid2hlbiBjcmVhdGluZyBmaWxlcywgcHJlcGVuZCA8c3RyaW5nPiIKIG1zZ3N0ciAi0L/RgNC4INGB0YrQt9C00LDQstCw0L3QtdGC0L4g0L3QsCDQvdC+0LLQuCDRhNCw0LnQu9C+0LLQtSDQtNCwINGB0LUg0LTQvtCx0LDQstGPINC/0YDQtdGE0LjQutGB0LAg0J3QmNCXIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTgxCiBtc2dpZCAiY29weSBvdXQgdGhlIGZpbGVzIGZyb20gbmFtZWQgc3RhZ2UiCiBtc2dzdHIgItC60L7Qv9C40YDQsNC90LUg0L3QsCDRhNCw0LnQu9C+0LLQtdGC0LUg0L7RgiDRgtC+0LLQsCDRgdGK0YHRgtC+0Y/QvdC40LUg0L3QsCDRgdC70LjQstCw0L3QtSIKIApAQCAtODkyNSwxMDYgKzExNTE1LDE2MCBAQAogbXNnaWQgImdpdCBjaGVja291dCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIC0tIDxmaWxlPi4uLiIKIG1zZ3N0ciAiZ2l0IGNoZWNrb3V0IFvQntCf0KbQmNCv4oCmXSBb0JrQm9Ce0J1dIC0tINCk0JDQmdCb4oCmIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ0IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNworbXNnaWQgImdpdCBzd2l0Y2ggWzxvcHRpb25zPl0gWzxicmFuY2g+XSIKK21zZ3N0ciAiZ2l0IHN3aXRjaCBb0J7Qn9Cm0JjQr+KApl0g0JrQm9Ce0J0iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MgorbXNnaWQgImdpdCByZXN0b3JlIFs8b3B0aW9ucz5dIFstLXNvdXJjZT08YnJhbmNoPl0gPGZpbGU+Li4uIgorbXNnc3RyICJnaXQgcmVzdG9yZSBb0J7Qn9Cm0JjQr+KApl0gWy0tc291cmNlPdCa0JvQntCdXSDQpNCQ0JnQm+KApiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NSBidWlsdGluL2NoZWNrb3V0LmM6MjE0CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG91ciB2ZXJzaW9uIgogbXNnc3RyICLQstCw0YjQsNGC0LAg0LLQtdGA0YHQuNGPINC70LjQv9GB0LLQsCDQsiDQv9GK0YLRjyDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjE0NiBidWlsdGluL2NoZWNrb3V0LmM6MTc5CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgdGhlaXIgdmVyc2lvbiIKIG1zZ3N0ciAi0YfRg9C20LTQsNGC0LAg0LLQtdGA0YHQuNGPINC70LjQv9GB0LLQsCDQsiDQv9GK0YLRjyDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjE2MgorIzogYnVpbHRpbi9jaGVja291dC5jOjE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSBhbGwgbmVjZXNzYXJ5IHZlcnNpb25zIgogbXNnc3RyICLQvdGP0LrQvtGPINC+0YIg0L3QtdC+0LHRhdC+0LTQuNC80LjRgtC1INCy0LXRgNGB0LjQuCDQu9C40L/RgdCy0LAg0LIg0L/RitGC0Y8g4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMDYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNDMKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgbmVjZXNzYXJ5IHZlcnNpb25zIgogbXNnc3RyICLQvdGP0LrQvtGPINC+0YIg0L3QtdC+0LHRhdC+0LTQuNC80LjRgtC1INCy0LXRgNGB0LjQuCDQu9C40L/RgdCy0LAg0LIg0L/RitGC0Y8g4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMjQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNjEKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnOiBjYW5ub3QgbWVyZ2UiCiBtc2dzdHIgItC/0YrRgtGP0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGB0LvRj9C9IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjQwCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBhZGQgbWVyZ2UgcmVzdWx0IGZvciAnJXMnIgogbXNnc3RyICLQoNC10LfRg9C70YLQsNGC0YrRgiDQt9CwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDRgdC70Y/QvSIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjI2MiBidWlsdGluL2NoZWNrb3V0LmM6MjY1IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNjgKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0IgorbXNnaWRfcGx1cmFsICJSZWNyZWF0ZWQgJWQgbWVyZ2UgY29uZmxpY3RzIgorbXNnc3RyWzBdICLQn9GA0LXRgdGK0LfQtNCw0LTQtdC9INC1ICVkINC60L7QvdGE0LvQuNC60YIg0L/RgNC4INGB0LvQuNCy0LDQvdC1IgorbXNnc3RyWzFdICLQn9GA0LXRgdGK0LfQtNCw0LTQtdC90Lgg0YHQsCAlZCDQutC+0L3RhNC70LjQutGC0LAg0L/RgNC4INGB0LvQuNCy0LDQvdC1IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0ZWQgJWQgcGF0aCBmcm9tICVzIgorbXNnaWRfcGx1cmFsICJVcGRhdGVkICVkIHBhdGhzIGZyb20gJXMiCittc2dzdHJbMF0gItCe0LHQvdC+0LLQtdC9INC1ICVkINC/0YrRgiDQvtGCIOKAniVz4oCcIgorbXNnc3RyWzFdICLQntCx0L3QvtCy0LXQvdC4INGB0LAgJWQg0L/RitGC0Y8g0L7RgiDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4OQorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSB0aGUgaW5kZXgiCittc2dpZF9wbHVyYWwgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSB0aGUgaW5kZXgiCittc2dzdHJbMF0gItCe0LHQvdC+0LLQtdC9INC1ICVkINC/0YrRgiDQvtGCINC40L3QtNC10LrRgdCwIgorbXNnc3RyWzFdICLQntCx0L3QvtCy0LXQvdC4INGB0LAgJWQg0L/RitGC0Y8g0L7RgiDQuNC90LTQtdC60YHQsCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQxMiBidWlsdGluL2NoZWNrb3V0LmM6NDE1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHVwZGF0aW5nIHBhdGhzIgotbXNnc3RyICLQntC/0YbQuNGP0YLQsCDigJ4lc+KAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg0L7QsdC90L7QstGP0LLQsNC90LXRgtC+INC90LAg0L/RitGC0LjRidCwIgorbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4lc+KAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg0L7QsdC90L7QstGP0LLQsNC90LXRgtC+INC90LAg0L/RitGC0LjRidCwIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Mjc0IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MjUgYnVpbHRpbi9jaGVja291dC5jOjQyOAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiCi1tc2dzdHIgItCe0L/RhtC40Y/RgtCwIOKAniVz4oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgSDigJ4lc+KAnCIKK21zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeJXPigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBIOKAniVz4oCcIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjgwCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCB1cGRhdGUgcGF0aHMgYW5kIHN3aXRjaCB0byBicmFuY2ggJyVzJyBhdCB0aGUgc2FtZSB0aW1lLiIKIG1zZ3N0ciAiIgogItCd0LXQstGK0LfQvNC+0LbQvdC+INC1INC10LTQvdC+0LLRgNC10LzQtdC90L3QviDQtNCwINC+0LHQvdC+0LLRj9Cy0LDRgtC1INC/0YrRgtC40YnQsCDQuCDQtNCwINC/0YDQtdC80LjQvdC10YLQtSDQutGK0Lwg0LrQu9C+0L3QsCDigJ4lc+KAnC4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNDkgYnVpbHRpbi9jaGVja291dC5jOjM1NgorIzogYnVpbHRpbi9jaGVja291dC5jOjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICJuZWl0aGVyICclcycgb3IgJyVzJyBpcyBzcGVjaWZpZWQiCittc2dzdHIgItC90LUg0LUg0YPQutCw0LfQsNC90L4g0L3QuNGC0L4g4oCeJXPigJwsINC90LjRgtC+IOKAniVz4oCcIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDQwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbXVzdCBiZSB1c2VkIHdoZW4gJyVzJyBpcyBub3Qgc3BlY2lmaWVkIgorbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4lc+KAnCDQtSDQt9Cw0LTRitC70LbQuNGC0LXQu9C90LAsINC60L7Qs9Cw0YLQviDigJ4lc+KAnCDQvdC1INC1INC30LDQtNCw0LTQtdC90LAiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NDUgYnVpbHRpbi9jaGVja291dC5jOjQ1MAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG9yICclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKK21zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeJTMkc+KAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0LrQsNC60YLQviDRgSDigJ4lMSRz4oCcLCDRgtCw0LrQsCDQuCDRgSDigJ4lMiRz4oCcIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTA5IGJ1aWx0aW4vY2hlY2tvdXQuYzo1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGlzIHVubWVyZ2VkIgogbXNnc3RyICLQv9GK0YLRj9GCIOKAniVz4oCcINC90LUg0LUg0YHQu9GP0YIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2MDgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2ODQgYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoxMDYKIG1zZ2lkICJ5b3UgbmVlZCB0byByZXNvbHZlIHlvdXIgY3VycmVudCBpbmRleCBmaXJzdCIKIG1zZ3N0ciAi0L/RitGA0LLQviDRgtGA0Y/QsdCy0LAg0LTQsCDQutC+0YDQuNCz0LjRgNCw0YLQtSDQuNC90LTQtdC60YHQsCDRgdC4IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NzQ1CisjOiBidWlsdGluL2NoZWNrb3V0LmM6NzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjYW5ub3QgY29udGludWUgd2l0aCBzdGFnZWQgY2hhbmdlcyBpbiB0aGUgZm9sbG93aW5nIGZpbGVzOlxuIgorIiVzIgorbXNnc3RyICIiCisi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/RgNC+0LTRitC70LbQuCDRgSDQv9GA0L7QvNC10L3QuCDQsiDRgdC70LXQtNC90LjRgtC1INGE0LDQudC70L7QstC1LCDQutC+0LjRgtC+INGB0LAg0LTQvtCx0LDQstC10L3QuCDQsiAiCisi0LjQvdC00LXQutGB0LA6XG4iCisiJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2FuIG5vdCBkbyByZWZsb2cgZm9yICclcyc6ICVzXG4iCiBtc2dzdHIgItCW0YPRgNC90LDQu9GK0YIg0L3QsCDRg9C60LDQt9Cw0YLQtdC70LjRgtC1INC30LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/RgNC+0YHQu9C10LTQuDogJXNcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc4NgorIzogYnVpbHRpbi9jaGVja291dC5jOjg3OQogbXNnaWQgIkhFQUQgaXMgbm93IGF0IgogbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINCyINC80L7QvNC10L3RgtCwINGB0L7Rh9C4INC60YrQvCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc5MCBidWlsdGluL2Nsb25lLmM6NjkyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODgzIGJ1aWx0aW4vY2xvbmUuYzo3MTcKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIEhFQUQiCiBtc2dzdHIgItCj0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0LHQvdC+0LLQtdC9IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Nzk0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlc2V0IGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgItCX0LDQvdGD0LvRj9Cy0LDQvdC1INC90LAg0LrQu9C+0L3QsCDigJ4lc+KAnFxuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Nzk3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFscmVhZHkgb24gJyVzJ1xuIgogbXNnc3RyICLQktC10YfQtSDRgdGC0LUg0L3QsCDigJ4lc+KAnFxuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODAxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN3aXRjaGVkIHRvIGFuZCByZXNldCBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICLQn9GA0LXQvNC40L3QsNCy0LDQvdC1INC60YrQvCDQutC70L7QvdCwIOKAniVz4oCcINC4INC30LDQvdGD0LvRj9Cy0LDQvdC1INC90LAg0L/RgNC+0LzQtdC90LjRgtC1XG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDMgYnVpbHRpbi9jaGVja291dC5jOjExNjYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTYgYnVpbHRpbi9jaGVja291dC5jOjEzMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3dpdGNoZWQgdG8gYSBuZXcgYnJhbmNoICclcydcbiIKIG1zZ3N0ciAi0J/RgNC10LzQuNC90LDRhdGC0LUg0LrRitC8INC90L7QstC40Y8g0LrQu9C+0L0g4oCeJXPigJxcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjgwNQorIzogYnVpbHRpbi9jaGVja291dC5jOjg5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJTd2l0Y2hlZCB0byBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICLQn9GA0LXQvNC40L3QsNGF0YLQtSDQutGK0Lwg0LrQu9C+0L3QsCDigJ4lc+KAnFxuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODU2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAuLi4gYW5kICVkIG1vcmUuXG4iCiBtc2dzdHIgIuKApiDQuCDQvtGJ0LUgJWQuXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4NjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIldhcm5pbmc6IHlvdSBhcmUgbGVhdmluZyAlZCBjb21taXQgYmVoaW5kLCBub3QgY29ubmVjdGVkIHRvXG4iCkBAIC05MDQ2LDcgKzExNjkwLDcgQEAKICJcbiIKICIlc1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODgxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJZiB5b3Ugd2FudCB0byBrZWVwIGl0IGJ5IGNyZWF0aW5nIGEgbmV3IGJyYW5jaCwgdGhpcyBtYXkgYmUgYSBnb29kIHRpbWVcbiIKQEAgLTkwNjQsMTg3ICsxMTcwOCwzOCBAQAogItCQ0LrQviDQstGB0LUg0L/QsNC6INC40YHQutCw0YLQtSDQtNCwINC30LDQv9Cw0LfQuNGC0LUg0YLQsNC30Lgg0L/RgNC+0LzRj9C90LAg0YfRgNC10Lcg0YHRitC30LTQsNCy0LDQvdC1INC90LAg0LrQu9C+0L0sXG4iCiAi0YHQtdCz0LAg0LUg0L3QsNC5LdC/0L7QtNGF0L7QtNGP0YnQuNGP0YIg0LfQsCDRgtC+0LLQsCDRh9GA0LXQtyDQutC+0LzQsNC90LTQsNGC0LA6XG4iCiAiXG4iCi0iIGdpdCBicmFuY2gg0JjQnNCVX9Cd0JBf0J3QntCS0JjQr1/QmtCb0J7QnSAlc1xuIgorIiAgICBnaXQgYnJhbmNoINCY0JzQlV/QndCQX9Cd0J7QktCY0K9f0JrQm9Ce0J0gJXNcbiIKICJcbiIKIG1zZ3N0clsxXSAiIgogItCQ0LrQviDQstGB0LUg0L/QsNC6INC40YHQutCw0YLQtSDQtNCwINC30LDQv9Cw0LfQuNGC0LUg0YLQtdC30Lgg0L/RgNC+0LzQtdC90Lgg0YfRgNC10Lcg0YHRitC30LTQsNCy0LDQvdC1INC90LAg0LrQu9C+0L0sXG4iCiAi0YHQtdCz0LAg0LUg0L3QsNC5LdC/0L7QtNGF0L7QtNGP0YnQuNGP0YIg0LfQsCDRgtC+0LLQsCDRh9GA0LXQtyDQutC+0LzQsNC90LTQsNGC0LA6XG4iCiAiXG4iCi0iIGdpdCBicmFuY2gg0JjQnNCVX9Cd0JBf0J3QntCS0JjQr1/QmtCb0J7QnSAlc1xuIgorIiAgICBnaXQgYnJhbmNoINCY0JzQlV/QndCQX9Cd0J7QktCY0K9f0JrQm9Ce0J0gJXNcbiIKICJcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjkxMworIzogYnVpbHRpbi9jaGVja291dC5jOjEwMDkKIG1zZ2lkICJpbnRlcm5hbCBlcnJvciBpbiByZXZpc2lvbiB3YWxrIgogbXNnc3RyICLQstGK0YLRgNC10YjQvdCwINCz0YDQtdGI0LrQsCDQv9GA0Lgg0L7QsdGF0L7QttC00LDQvdC10YLQviDQvdCwINCy0LXRgNGB0LjQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5MTcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDEzCiBtc2dpZCAiUHJldmlvdXMgSEVBRCBwb3NpdGlvbiB3YXMiCiBtc2dzdHIgItCf0YDQtdC00Lgg0YLQvtCy0LAg4oCeSEVBROKAnCDRgdC+0YfQtdGI0LUg0LrRitC8IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTQ1IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTYxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTA1MyBidWlsdGluL2NoZWNrb3V0LmM6MTMxNQogbXNnaWQgIllvdSBhcmUgb24gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iCi1tc2dzdHIgItCSINC80L7QvNC10L3RgtCwINGB0YLQtSDQvdCwINC60LvQvtC9LCDQutC+0LnRgtC+INC/0YDQtdC00YHRgtC+0Lgg0LTQsCDQsdGK0LTQtSDRgdGK0LfQtNCw0LTQtdC9IgorbXNnc3RyICLQkiDQvNC+0LzQtdC90YLQsCDRgdGC0LUg0L3QsCDQutC70L7QvSwg0LrQvtC50YLQviDQstGB0LUg0L7RidC1INC90LUg0LUg0YHRitC30LTQsNC00LXQvSIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEwNjYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkLCAlZCBnaXZlbi4iCi1tc2dzdHIgItC+0YfQsNC60LLQsNGI0LUg0YHQtSDQtdC00LjQvSDRg9C60LDQt9Cw0YLQtdC7LCDQsCDRgdGC0LUg0L/QvtC00LDQu9C4ICVkLiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExMDcgYnVpbHRpbi93b3JrdHJlZS5jOjI4OSBidWlsdGluL3dvcmt0cmVlLmM6NDQ0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKLW1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0YPQutCw0LfQsNGC0LXQuzogJXMiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTM2Ci0jLCBjLWZvcm1hdAotbXNnaWQgInJlZmVyZW5jZSBpcyBub3QgYSB0cmVlOiAlcyIKLW1zZ3N0ciAi0YPQutCw0LfQsNGC0LXQu9GP0YIg0L3QtSDRgdC+0YfQuCDQutGK0Lwg0L7QsdC10LrRgi3QtNGK0YDQstC+OiAlcyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExNzUKLW1zZ2lkICJwYXRocyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKLW1zZ3N0ciAi0LfQsNC00LDQstCw0L3QtdGC0L4g0L3QsCDQv9GK0YIg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC+INGBINC/0YDQtdC80LjQvdCw0LLQsNC90LXRgtC+INC+0YIg0LXQtNC40L0g0LrQu9C+0L0g0LrRitC8INC00YDRg9CzIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE3OCBidWlsdGluL2NoZWNrb3V0LmM6MTE4MgotIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgotbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4lc+KAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg0L/RgNC10LzQuNC90LDQstCw0L3QtdGC0L4g0L7RgiDQtdC00LjQvSDQutC70L7QvSDQutGK0Lwg0LTRgNGD0LMiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTg2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTg5IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTk0Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE5NwotIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJyVzJyIKLW1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeJXPigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBIOKAniVz4oCcIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIwMgotIywgYy1mb3JtYXQKLW1zZ2lkICJDYW5ub3Qgc3dpdGNoIGJyYW5jaCB0byBhIG5vbi1jb21taXQgJyVzJyIKLW1zZ3N0ciAiIgotItCX0LAg0LTQsCDQv9GA0LXQvNC40L3QtdGC0LUg0LrRitC8INC60LvQvtC9LCDQv9C+0LTQsNC50YLQtSDRg9C60LDQt9Cw0YLQtdC7LCDQutC+0LnRgtC+INGB0L7Rh9C4INC60YrQvCDQv9C+0LTQsNCy0LDQvdC1LiAg4oCeJXPigJwgIgotItC90LUg0LUg0YLQsNC60YrQsiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMzUgYnVpbHRpbi9jaGVja291dC5jOjEyMzcgYnVpbHRpbi9jbG9uZS5jOjExOQotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjkgYnVpbHRpbi9yZW1vdGUuYzoxNzEgYnVpbHRpbi93b3JrdHJlZS5jOjQ4OAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MAotbXNnaWQgImJyYW5jaCIKLW1zZ3N0ciAi0LrQu9C+0L0iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM2Ci1tc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCi1tc2dzdHIgItGB0YrQt9C00LDQstCw0L3QtSDQuCDQv9GA0LXQvNC40L3QsNCy0LDQvdC1INC60YrQvCDQvdC+0LIg0LrQu9C+0L0iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM4Ci1tc2dpZCAiY3JlYXRlL3Jlc2V0IGFuZCBjaGVja291dCBhIGJyYW5jaCIKLW1zZ3N0ciAi0YHRitC30LTQsNCy0LDQvdC1L9C30LDQvdGD0LvRj9Cy0LDQvdC1INC90LAg0LrQu9C+0L0g0Lgg0L/RgNC10LzQuNC90LDQstCw0L3QtSDQutGK0Lwg0L3QtdCz0L4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM5Ci1tc2dpZCAiY3JlYXRlIHJlZmxvZyBmb3IgbmV3IGJyYW5jaCIKLW1zZ3N0ciAi0YHRitC30LTQsNCy0LDQvdC1INC90LAg0LbRg9GA0L3QsNC7INC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSDQt9CwINC90L7QsiDQutC70L7QvSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDAgYnVpbHRpbi93b3JrdHJlZS5jOjQ5MgotbXNnaWQgImRldGFjaCBIRUFEIGF0IG5hbWVkIGNvbW1pdCIKLW1zZ3N0ciAi0L7RgtC00LXQu9GP0L3QtSDQvdCwINGD0LrQsNC30LDRgtC10LvRjyDigJ5IRUFE4oCcINC60YrQvCDRg9C60LDQt9Cw0L3QvtGC0L4g0L/QvtC00LDQstCw0L3QtSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDEKLW1zZ2lkICJzZXQgdXBzdHJlYW0gaW5mbyBmb3IgbmV3IGJyYW5jaCIKLW1zZ3N0ciAi0LfQsNC00LDQstCw0L3QtSDQvdCwINC60L7QuSDQutC70L7QvSDQsdC40LLQsCDRgdC70LXQtNC10L0g0L/RgNC4INGB0YrQt9C00LDQstCw0L3QtdGC0L4g0L3QsCDQvdC+0LLQuNGPINC60LvQvtC9IgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MwotbXNnaWQgIm5ldy1icmFuY2giCi1tc2dzdHIgItCd0J7Qkl/QmtCb0J7QnSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDMKLW1zZ2lkICJuZXcgdW5wYXJlbnRlZCBicmFuY2giCi1tc2dzdHIgItC90L7QsiDQutC70L7QvSDQsdC10Lcg0YDQvtC00LjRgtC10LsiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQ1Ci1tc2dpZCAiY2hlY2tvdXQgb3VyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgotbXNnc3RyICLQuNC30YLQtdCz0LvRj9C90LUg0L3QsCDQstCw0YjQsNGC0LAg0LLQtdGA0YHQuNGPINC90LAg0L3QtdGB0LvQtdGC0LjRgtC1INGE0LDQudC70L7QstC1IgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0OAotbXNnaWQgImNoZWNrb3V0IHRoZWlyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgotbXNnc3RyICLQuNC30YLQtdCz0LvRj9C90LUg0L3QsCDRh9GD0LbQtNCw0YLQsCDQstC10YDRgdC40Y8g0L3QsCDQvdC10YHQu9C10YLQuNGC0LUg0YTQsNC50LvQvtCy0LUiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjUwCi1tc2dpZCAiZm9yY2UgY2hlY2tvdXQgKHRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucykiCi1tc2dzdHIgItC/0YDQuNC90YPQtNC40YLQtdC70L3QviDQuNC30YLQtdCz0LvRj9C90LUgKNCy0LDRiNC40YLQtSDQv9GA0L7QvNC10L3QuCDRidC1INCx0YrQtNCw0YIg0LfQsNC90YPQu9C10L3QuCkiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjUyCi1tc2dpZCAicGVyZm9ybSBhIDMtd2F5IG1lcmdlIHdpdGggdGhlIG5ldyBicmFuY2giCi1tc2dzdHIgItC40LfQstGK0YDRiNCy0LDQvdC1INC90LAg0YLRgNC+0LnQvdC+INGB0LvQuNCy0LDQvdC1INGBINC90L7QstC40Y8g0LrQu9C+0L0iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU0IGJ1aWx0aW4vbWVyZ2UuYzoyNzUKLW1zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCi1tc2dzdHIgItC+0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LjQs9C90L7RgNC40YDQsNC90LjRgtC1INGE0LDQudC70L7QstC1ICjRgdGC0LDQvdC00LDRgNGC0L3QvikiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU2IGJ1aWx0aW4vbG9nLmM6MTU3MyBwYXJzZS1vcHRpb25zLmg6Mjc0Ci1tc2dpZCAic3R5bGUiCi1tc2dzdHIgItCh0KLQmNCbIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1NwotbXNnaWQgImNvbmZsaWN0IHN0eWxlIChtZXJnZSBvciBkaWZmMykiCi1tc2dzdHIgItC00LXQudGB0YLQstC40LUg0L/RgNC4INC60L7QvdGE0LvQuNC60YIgKNGB0LvQuNCy0LDQvdC1INC40LvQuCDRgtGA0L7QudC90LAg0YDQsNC30LvQuNC60LApIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI2MAotbXNnaWQgImRvIG5vdCBsaW1pdCBwYXRoc3BlY3MgdG8gc3BhcnNlIGVudHJpZXMgb25seSIKLW1zZ3N0ciAi0LHQtdC3INC+0LPRgNCw0L3QuNGH0LDQstCw0L3QtSDQvdCwINC40LfQsdGA0L7QtdC90LjRgtC1INC/0YrRgtC40YnQsCDRgdCw0LzQviDQtNC+INGH0LDRgdGC0LjRh9C90L4g0LjQt9GC0LXQs9C70LXQvdC40YLQtSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNjIKLW1zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBjaGVja291dCA8bm8tc3VjaC1icmFuY2g+JyIKLW1zZ3N0ciAiIgotItC+0L/QuNGCINC30LAg0L7RgtCz0LDRgtCy0LDQvdC1INC90LAg0LjQvNC1INC90LAg0LrQu9C+0L0g0YHQu9C10LQg0L3QtdGD0YHQv9C10YjQtdC9INC+0L/QuNGCINGBIOKAnmdpdCBjaGVja291dCAiCi0i0J3QldCh0KrQqdCV0KHQotCS0KPQktCQ0Klf0JrQm9Ce0J3igJwiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjY0Ci1tc2dpZCAiZG8gbm90IGNoZWNrIGlmIGFub3RoZXIgd29ya3RyZWUgaXMgaG9sZGluZyB0aGUgZ2l2ZW4gcmVmIgotbXNnc3RyICLQsdC10Lcg0L/RgNC+0LLQtdGA0LrQsCDQtNCw0LvQuCDQtNGA0YPQs9C+INGA0LDQsdC+0YLQvdC+INC00YrRgNCy0L4g0LTRitGA0LbQuCDRg9C60LDQt9Cw0YLQtdC70Y8iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjY4IGJ1aWx0aW4vY2xvbmUuYzo4NiBidWlsdGluL2ZldGNoLmM6MTQxCi0jOiBidWlsdGluL21lcmdlLmM6MjcyIGJ1aWx0aW4vcHVsbC5jOjEyOSBidWlsdGluL3B1c2guYzo1NzIKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc0Ci1tc2dpZCAiZm9yY2UgcHJvZ3Jlc3MgcmVwb3J0aW5nIgotbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvdCw0L/RgNC10LTRitC60LAiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjk4Ci1tc2dpZCAiLWIsIC1CIGFuZCAtLW9ycGhhbiBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgotbXNnc3RyICLQntC/0YbQuNC40YLQtSDigJ4tYuKAnCwg4oCeLULigJwg0Lgg4oCeLS1vcnBoYW7igJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80Lgg0LXQtNC90LAg0YEg0LTRgNGD0LPQsCIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzMTUKLW1zZ2lkICItLXRyYWNrIG5lZWRzIGEgYnJhbmNoIG5hbWUiCi1tc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tdHJhY2vigJwg0LjQt9C40YHQutCy0LAg0LjQvNC1INC90LAg0LrQu9C+0L0iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzIwCi1tc2dpZCAibWlzc2luZyBicmFuY2ggbmFtZTsgdHJ5IC1iIgotbXNnc3RyICLQu9C40L/RgdCy0LAg0LjQvNC1INC90LAg0LrQu9C+0L0sINC40LfQv9C+0LvQt9Cy0LDQudGC0LUg0L7Qv9GG0LjRj9GC0LAg4oCeLWLigJwiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzU3Ci1tc2dpZCAiaW52YWxpZCBwYXRoIHNwZWNpZmljYXRpb24iCi1tc2dzdHIgItGD0LrQsNC30LDQvSDQtSDQvdC10L/RgNCw0LLQuNC70LXQvSDQv9GK0YIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY0Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiclcycgaXMgbm90IGEgY29tbWl0IGFuZCBhIGJyYW5jaCAnJXMnIGNhbm5vdCBiZSBjcmVhdGVkIGZyb20gaXQiCi1tc2dzdHIgIuKAniVz4oCcINC90LUg0LUg0L/QvtC00LDQstCw0L3QtSwg0LfQsNGC0L7QstCwINC+0YIg0L3QtdCz0L4g0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0YHRitC30LTQsNC00LUg0LrQu9C+0L0g4oCeJXPigJwiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdpdCBjaGVja291dDogLS1kZXRhY2ggZG9lcyBub3QgdGFrZSBhIHBhdGggYXJndW1lbnQgJyVzJyIKLW1zZ3N0ciAiZ2l0IGNoZWNrb3V0OiDQvtC/0YbQuNGP0YLQsCDigJ4tLWRldGFjaOKAnCDQvdC1INC/0YDQuNC10LzQsCDQsNGA0LPRg9C80LXQvdGCLdC/0YrRgiDigJ4lc+KAnCIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzIKLW1zZ2lkICIiCi0iZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgYW5kIC0tbWVyZ2UgYXJlIGluY29tcGF0aWJsZSB3aGVuXG4iCi0iY2hlY2tpbmcgb3V0IG9mIHRoZSBpbmRleC4iCi1tc2dzdHIgIiIKLSJnaXQgY2hlY2tvdXQ6INC+0L/RhtC40LjRgtC1IOKAni0tb3Vyc+KAnC/igJ4tLXRoZWlyc+KAnCwg4oCeLS1mb3JjZeKAnCDQuCDigJ4tLW1lcmdl4oCcXG4iCi0i0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80Lgg0YEg0LjQt9GC0LXQs9C70Y/QvdC1INC+0YIg0LjQvdC00LXQutGB0LAuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTM5MgorIzogYnVpbHRpbi9jaGVja291dC5jOjExMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgotIiclcycgbWF0Y2hlZCBtb3JlIHRoYW4gb25lIHJlbW90ZSB0cmFja2luZyBicmFuY2guXG4iCi0iV2UgZm91bmQgJWQgcmVtb3RlcyB3aXRoIGEgcmVmZXJlbmNlIHRoYXQgbWF0Y2hlZC4gU28gd2UgZmVsbCBiYWNrXG4iCi0ib24gdHJ5aW5nIHRvIHJlc29sdmUgdGhlIGFyZ3VtZW50IGFzIGEgcGF0aCwgYnV0IGZhaWxlZCB0aGVyZSB0b28hXG4iCi0iXG4iCisiJyVzJyBjb3VsZCBiZSBib3RoIGEgbG9jYWwgZmlsZSBhbmQgYSB0cmFja2luZyBicmFuY2guXG4iCisiUGxlYXNlIHVzZSAtLSAoYW5kIG9wdGlvbmFsbHkgLS1uby1ndWVzcykgdG8gZGlzYW1iaWd1YXRlIgorbXNnc3RyICIiCisi4oCeJXPigJwg0LzQvtC20LUg0LTQsCDQtSDQutCw0LrRgtC+INC70L7QutCw0LvQtdC9INGE0LDQudC7LCDRgtCw0LrQsCDQuCDRgdC70LXQtNGP0Ykg0LrQu9C+0L0uICDQl9CwINGD0YLQvtGH0L3Rj9Cy0LDQvdC1XG4iCisi0L/QvtC70LfQstCw0LnRgtC1INGA0LDQt9C00LXQu9C40YLQtdC70Y8g4oCeLS3igJwgKNC4INC10LLQtdC90YLRg9Cw0LvQvdC+INC+0L/RhtC40Y/RgtCwIOKAni0tbm8tZ3Vlc3PigJwpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTEzNQorbXNnaWQgIiIKICJJZiB5b3UgbWVhbnQgdG8gY2hlY2sgb3V0IGEgcmVtb3RlIHRyYWNraW5nIGJyYW5jaCBvbiwgZS5nLiAnb3JpZ2luJyxcbiIKICJ5b3UgY2FuIGRvIHNvIGJ5IGZ1bGx5IHF1YWxpZnlpbmcgdGhlIG5hbWUgd2l0aCB0aGUgLS10cmFjayBvcHRpb246XG4iCiAiXG4iCkBAIC05MjU0LDkgKzExNzQ5LDYgQEAKICJvbmUgcmVtb3RlLCBlLmcuIHRoZSAnb3JpZ2luJyByZW1vdGUsIGNvbnNpZGVyIHNldHRpbmdcbiIKICJjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbiBpbiB5b3VyIGNvbmZpZy4iCiBtc2dzdHIgIiIKLSLigJ4lc+KAnCDRgdGK0LLQv9Cw0LTQsCDRgSDQv9C+0LLQtdGH0LUg0L7RgiDQtdC00LjQvSDQvtGC0LTQsNC70LXRh9C10L0g0LrQu9C+0L0g4oCUINC+0YLQutGA0LjRgtC4INGB0LAgJWQg0LLRitC30LzQvtC20L3QvtGB0YLQuC5cbiIKLSLQn9GA0L7QsdCw0YLQsCDQsNGA0LPRg9C80LXQvdGC0YrRgiDQtNCwINGB0LUg0YLRitC70LrRg9Cy0LAg0LrQsNGC0L4g0L/RitGCINGB0YrRidC+INCx0LUg0L3QtdGD0YHQv9C10YjQvdCwLlxuIgotIlxuIgogItCQ0LrQviDQuNGB0LrQsNGC0LUg0LTQsCDQuNC30YLQtdCz0LvQuNGC0LUg0LrQu9C+0L3QsCDQvtGCINC60L7QvdC60YDQtdGC0L3QviDRhdGA0LDQvdC40LvQuNGJ0LUsINC90LDQv9GALiDigJ5vcmlnaW7igJwsXG4iCiAi0LjQt9GA0LjRh9C90L4g0LPQviDRg9C60LDQttC10YLQtSDQutGK0Lwg0L7Qv9GG0LjRj9GC0LAg4oCeLS10cmFja+KAnDpcbiIKICJcbiIKQEAgLTkyNjgsMzcgKzExNzYwLDM0MiBAQAogIlxuIgogIiAgICBjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjI3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTE0NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG1hdGNoZWQgbXVsdGlwbGUgKCVkKSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoZXMiCittc2dzdHIgIuKAniVz4oCcINC90LDQv9Cw0YHQstCwINGBINC80L3QvtC20LXRgdGC0LLQviAoJWQpINC+0YLQtNCw0LvQtdGH0LXQvdC4INC60LvQvtC90LgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjExCittc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkIgorbXNnc3RyICLQvtGH0LDQutCy0LAg0YHQtSDRgdCw0LzQviDQtdC00LjQvSDRg9C60LDQt9Cw0YLQtdC7IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQsICVkIGdpdmVuLiIKK21zZ3N0ciAi0L7Rh9Cw0LrQstCwINGB0LUg0LXQtNC40L0g0YPQutCw0LfQsNGC0LXQuywg0LAg0YHRgtC1INC/0L7QtNCw0LvQuCAlZC4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjc0IGJ1aWx0aW4vd29ya3RyZWUuYzoyODMgYnVpbHRpbi93b3JrdHJlZS5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZmVyZW5jZTogJXMiCittc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INGD0LrQsNC30LDRgtC10Ls6ICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTI4NyBidWlsdGluL2NoZWNrb3V0LmM6MTY0OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZlcmVuY2UgaXMgbm90IGEgdHJlZTogJXMiCittc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCINC90LUg0YHQvtGH0Lgg0LrRitC8INC+0LHQtdC60YIt0LTRitGA0LLQvjogJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM0CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgdGFnICclcyciCittc2dzdHIgItC+0YfQsNC60LLQsCDRgdC1INC60LvQvtC9LCDQsCDQvdC1INC10YLQuNC60LXRgiDigJQg4oCeJXPigJwiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgcmVtb3RlIGJyYW5jaCAnJXMnIgorbXNnc3RyICLQvtGH0LDQutCy0LAg0YHQtSDQu9C+0LrQsNC70LXQvSwg0LAg0L3QtSDQvtGC0LTQsNC70LXRh9C10L0g0LrQu9C+0L0g4oCUIOKAniVz4oCcIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMzNyBidWlsdGluL2NoZWNrb3V0LmM6MTM0NQorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290ICclcyciCittc2dzdHIgItC+0YfQsNC60LLQsCDRgdC1INC60LvQvtC9LCDQsCDQvdC1IOKAniVz4oCcIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM0MAorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290IGNvbW1pdCAnJXMnIgorbXNnc3RyICLQvtGH0LDQutCy0LAg0YHQtSDQutC70L7QvSwg0LAg0L3QtSDQv9C+0LTQsNCy0LDQvdC1IOKAlCDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNTYKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgbWVyZ2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IG1lcmdlIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorItC/0L4g0LLRgNC10LzQtSDQvdCwINGB0LvQuNCy0LDQvdC1INC90LUg0LzQvtC20LUg0LTQsCDQv9GA0LXQvNC40L3QtdGC0LUg0LrRitC8INC00YDRg9CzINC60LvQvtC9LlxuIgorItCf0YDQvtCx0LLQsNC50YLQtSDRgSDigJ5naXQgbWVyZ2UgLS1xdWl04oCcINC40LvQuCDigJ5naXQgd29ya3RyZWUgYWRk4oCcLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjAKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggaW4gdGhlIG1pZGRsZSBvZiBhbiBhbSBzZXNzaW9uXG4iCisiQ29uc2lkZXIgXCJnaXQgYW0gLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisi0L/QviDQstGA0LXQvNC1INC90LAg0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0L/QvtGA0LXQtNC40YbQsCDQvtGCINC60YDRitC/0LrQuCDQvdC1INC80L7QttC1INC00LAg0L/RgNC10LzQuNC90LXRgtC1INC60YrQvCDQtNGA0YPQsyAiCisi0LrQu9C+0L0uXG4iCisi0J/RgNC+0LHQstCw0LnRgtC1INGBIOKAnmdpdCBhbSAtLXF1aXTigJwg0LjQu9C4IOKAnmdpdCB3b3JrdHJlZSBhZGTigJwuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2NAorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSByZWJhc2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IHJlYmFzZSAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyLQv9C+INCy0YDQtdC80LUg0L3QsCDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1INC90LUg0LzQvtC20LUg0LTQsCDQv9GA0LXQvNC40L3QtdGC0LUg0LrRitC8INC00YDRg9CzINC60LvQvtC9LlxuIgorItCf0YDQvtCx0LLQsNC50YLQtSDRgSDigJ5naXQgcmViYXNlIC0tcXVpdOKAnCDQuNC70Lgg4oCeZ2l0IHdvcmt0cmVlIGFkZOKAnC4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY4Cittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIGNoZXJyeS1waWNraW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgY2hlcnJ5LXBpY2sgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisi0L/QviDQstGA0LXQvNC1INC90LAg0L7RgtCx0LjRgNCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LjRjyDQvdC1INC80L7QttC1INC00LAg0L/RgNC10LzQuNC90LXRgtC1INC60YrQvCDQtNGA0YPQsyDQutC70L7QvS5cbiIKKyLQn9GA0L7QsdCy0LDQudGC0LUg0YEg4oCeZ2l0IGNoZXJyeS1waWNrIC0tcXVpdOKAnCDQuNC70Lgg4oCeZ2l0IHdvcmt0cmVlIGFkZOKAnC4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzcyCittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIHJldmVydGluZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IHJldmVydCAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyLQv9C+INCy0YDQtdC80LUg0L3QsCDQvtGC0LzRj9C90LAg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y8g0L3QtSDQvNC+0LbQtSDQtNCwINC/0YDQtdC80LjQvdC10YLQtSDQutGK0Lwg0LTRgNGD0LMg0LrQu9C+0L0uXG4iCisi0J/RgNC+0LHQstCw0LnRgtC1INGBIOKAnmdpdCByZXZlcnQgLS1xdWl04oCcINC40LvQuCDigJ5naXQgd29ya3RyZWUgYWRk4oCcLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzYKK21zZ2lkICJ5b3UgYXJlIHN3aXRjaGluZyBicmFuY2ggd2hpbGUgYmlzZWN0aW5nIgorbXNnc3RyICLQv9GA0LXQvNC40L3QsNCy0LDQvdC1INC60YrQvCDQtNGA0YPQsyDQutC70L7QvSDQv9C+INCy0YDQtdC80LUg0L3QsCDQtNCy0L7QuNGH0L3QviDRgtGK0YDRgdC10L3QtSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzODMKK21zZ2lkICJwYXRocyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKK21zZ3N0ciAi0LfQsNC00LDQstCw0L3QtdGC0L4g0L3QsCDQv9GK0YIg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC+INGBINC/0YDQtdC80LjQvdCw0LLQsNC90LXRgtC+INC+0YIg0LXQtNC40L0g0LrQu9C+0L0g0LrRitC8INC00YDRg9CzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM4NiBidWlsdGluL2NoZWNrb3V0LmM6MTM5MCBidWlsdGluL2NoZWNrb3V0LmM6MTM5NAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgorbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4lc+KAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg0L/RgNC10LzQuNC90LDQstCw0L3QtdGC0L4g0L7RgiDQtdC00LjQvSDQutC70L7QvSDQutGK0Lwg0LTRgNGD0LMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzk4IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDAxIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDA0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQwOSBidWlsdGluL2NoZWNrb3V0LmM6MTQxNAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJyVzJyIKK21zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeJXPigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBIOKAniVz4oCcIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQxMQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCB0YWtlIDxzdGFydC1wb2ludD4iCittc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAniVz4oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgdGK0YEg0LfQsNC00LDQstCw0L3QtdGC0L4g0L3QsCDQndCQ0KfQkNCb0J4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDE5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBzd2l0Y2ggYnJhbmNoIHRvIGEgbm9uLWNvbW1pdCAnJXMnIgorbXNnc3RyICIiCisi0JfQsCDQtNCwINC/0YDQtdC80LjQvdC10YLQtSDQutGK0Lwg0LrQu9C+0L0sINC/0L7QtNCw0LnRgtC1INGD0LrQsNC30LDRgtC10LssINC60L7QudGC0L4g0YHQvtGH0Lgg0LrRitC8INC/0L7QtNCw0LLQsNC90LUuICDigJ4lc+KAnCAiCisi0L3QtSDQtSDRgtCw0LrRitCyIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQyNgorbXNnaWQgIm1pc3NpbmcgYnJhbmNoIG9yIGNvbW1pdCBhcmd1bWVudCIKK21zZ3N0ciAi0LvQuNC/0YHQstCwINCw0YDQs9GD0LzQtdC90YIg4oCUINC60LvQvtC9INC40LvQuCDQv9C+0LTQsNCy0LDQvdC1IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2OCBidWlsdGluL2Nsb25lLmM6OTEgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3MgorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzUgYnVpbHRpbi9mZXRjaC5jOjE2NyBidWlsdGluL21lcmdlLmM6Mjg2CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyNyBidWlsdGluL3B1bGwuYzoxMTggYnVpbHRpbi9wdXNoLmM6NTYzCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE3NAorbXNnaWQgImZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKK21zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L3QsNC/0YDQtdC00YrQutCwIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2OQorbXNnaWQgInBlcmZvcm0gYSAzLXdheSBtZXJnZSB3aXRoIHRoZSBuZXcgYnJhbmNoIgorbXNnc3RyICLQuNC30LLRitGA0YjQstCw0L3QtSDQvdCwINGC0YDQvtC50L3QviDRgdC70LjQstCw0L3QtSDRgSDQvdC+0LLQuNGPINC60LvQvtC9IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ3MCBidWlsdGluL2xvZy5jOjE2OTAgcGFyc2Utb3B0aW9ucy5oOjMyMgorbXNnaWQgInN0eWxlIgorbXNnc3RyICLQodCi0JjQmyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NzEKK21zZ2lkICJjb25mbGljdCBzdHlsZSAobWVyZ2Ugb3IgZGlmZjMpIgorbXNnc3RyICLQtNC10LnRgdGC0LLQuNC1INC/0YDQuCDQutC+0L3RhNC70LjQutGCICjRgdC70LjQstCw0L3QtSDQuNC70Lgg0YLRgNC+0LnQvdCwINGA0LDQt9C70LjQutCwKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODMgYnVpbHRpbi93b3JrdHJlZS5jOjQ5NgorbXNnaWQgImRldGFjaCBIRUFEIGF0IG5hbWVkIGNvbW1pdCIKK21zZ3N0ciAi0L7RgtC00LXQu9GP0L3QtSDQvdCwINGD0LrQsNC30LDRgtC10LvRjyDigJ5IRUFE4oCcINC60YrQvCDRg9C60LDQt9Cw0L3QvtGC0L4g0L/QvtC00LDQstCw0L3QtSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODQKK21zZ2lkICJzZXQgdXBzdHJlYW0gaW5mbyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAi0LfQsNC00LDQstCw0L3QtSDQvdCwINC60L7QuSDQutC70L7QvSDQsdC40LLQsCDRgdC70LXQtNC10L0g0L/RgNC4INGB0YrQt9C00LDQstCw0L3QtdGC0L4g0L3QsCDQvdC+0LLQuNGPINC60LvQvtC9IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4NgorbXNnaWQgImZvcmNlIGNoZWNrb3V0ICh0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMpIgorbXNnc3RyICLQv9GA0LjQvdGD0LTQuNGC0LXQu9C90L4g0LjQt9GC0LXQs9C70Y/QvdC1ICjQstCw0YjQuNGC0LUg0L/RgNC+0LzQtdC90Lgg0YnQtSDQsdGK0LTQsNGCINC30LDQvdGD0LvQtdC90LgpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4OAorbXNnaWQgIm5ldy1icmFuY2giCittc2dzdHIgItCd0J7Qkl/QmtCb0J7QnSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODgKK21zZ2lkICJuZXcgdW5wYXJlbnRlZCBicmFuY2giCittc2dzdHIgItC90L7QsiDQutC70L7QvSDQsdC10Lcg0YDQvtC00LjRgtC10LsiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDkwIGJ1aWx0aW4vbWVyZ2UuYzoyODkKK21zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCittc2dzdHIgItC+0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LjQs9C90L7RgNC40YDQsNC90LjRgtC1INGE0LDQudC70L7QstC1ICjRgdGC0LDQvdC00LDRgNGC0L3QvikiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDkzCittc2dpZCAiZG8gbm90IGNoZWNrIGlmIGFub3RoZXIgd29ya3RyZWUgaXMgaG9sZGluZyB0aGUgZ2l2ZW4gcmVmIgorbXNnc3RyICLQsdC10Lcg0L/RgNC+0LLQtdGA0LrQsCDQtNCw0LvQuCDQtNGA0YPQs9C+INGA0LDQsdC+0YLQvdC+INC00YrRgNCy0L4g0LTRitGA0LbQuCDRg9C60LDQt9Cw0YLQtdC70Y8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTA2Cittc2dpZCAiY2hlY2tvdXQgb3VyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgorbXNnc3RyICLQuNC30YLQtdCz0LvRj9C90LUg0L3QsCDQstCw0YjQsNGC0LAg0LLQtdGA0YHQuNGPINC90LAg0L3QtdGB0LvQtdGC0LjRgtC1INGE0LDQudC70L7QstC1IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTUwOQorbXNnaWQgImNoZWNrb3V0IHRoZWlyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgorbXNnc3RyICLQuNC30YLQtdCz0LvRj9C90LUg0L3QsCDRh9GD0LbQtNCw0YLQsCDQstC10YDRgdC40Y8g0L3QsCDQvdC10YHQu9C10YLQuNGC0LUg0YTQsNC50LvQvtCy0LUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTEzCittc2dpZCAiZG8gbm90IGxpbWl0IHBhdGhzcGVjcyB0byBzcGFyc2UgZW50cmllcyBvbmx5IgorbXNnc3RyICLQsdC10Lcg0L7Qs9GA0LDQvdC40YfQsNCy0LDQvdC1INC90LAg0LjQt9Cx0YDQvtC10L3QuNGC0LUg0L/RitGC0LjRidCwINGB0LDQvNC+INC00L4g0YfQsNGB0YLQuNGH0L3QviDQuNC30YLQtdCz0LvQtdC90LjRgtC1IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTU2NQorbXNnaWQgIi1iLCAtQiBhbmQgLS1vcnBoYW4gYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAi0J7Qv9GG0LjQuNGC0LUg4oCeLWLigJwsIOKAni1C4oCcINC4IOKAni0tb3JwaGFu4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4INC10LTQvdCwINGBINC00YDRg9Cz0LAiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTY4Cittc2dpZCAiLXAgYW5kIC0tb3ZlcmxheSBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tcOKAnCDQuCDigJ4tLW92ZXJsYXnigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjA1Cittc2dpZCAiLS10cmFjayBuZWVkcyBhIGJyYW5jaCBuYW1lIgorbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLXRyYWNr4oCcINC40LfQuNGB0LrQstCwINC40LzQtSDQvdCwINC60LvQvtC9IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTYxMAorbXNnaWQgIm1pc3NpbmcgYnJhbmNoIG5hbWU7IHRyeSAtYiIKK21zZ3N0ciAi0LvQuNC/0YHQstCwINC40LzQtSDQvdCwINC60LvQvtC9LCDQuNC30L/QvtC70LfQstCw0LnRgtC1INC+0L/RhtC40Y/RgtCwIOKAni1i4oCcIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY0MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSAlcyIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NTgKK21zZ2lkICJpbnZhbGlkIHBhdGggc3BlY2lmaWNhdGlvbiIKK21zZ3N0ciAi0YPQutCw0LfQsNC9INC1INC90LXQv9GA0LDQstC40LvQtdC9INC/0YrRgiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBjb21taXQgYW5kIGEgYnJhbmNoICclcycgY2Fubm90IGJlIGNyZWF0ZWQgZnJvbSBpdCIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQtSDQv9C+0LTQsNCy0LDQvdC1LCDQt9Cw0YLQvtCy0LAg0L7RgiDQvdC10LPQviDQvdC1INC80L7QttC1INC00LAg0YHQtSDRgdGK0LfQtNCw0LTQtSDQutC70L7QvSDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCAnJXMnIgorbXNnc3RyICJnaXQgY2hlY2tvdXQ6INC+0L/RhtC40Y/RgtCwIOKAni0tZGV0YWNo4oCcINC90LUg0L/RgNC40LXQvNCwINCw0YDQs9GD0LzQtdC90YIt0L/RitGCIOKAniVz4oCcIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY3OAorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tZGV0YWNoIgorbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLXBhdGhzcGVjLWZyb20tZmlsZeKAnCDQuCDigJ4tLWRldGFjaOKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2ODEgYnVpbHRpbi9yZXNldC5jOjMyNCBidWlsdGluL3N0YXNoLmM6MTUwNgorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tcGF0Y2giCittc2dzdHIgItC+0L/RhtC40LjRgtC1IOKAni0tcGF0aHNwZWMtZnJvbS1maWxl4oCcINC4IOKAni0tcGF0Y2jigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjkyCittc2dpZCAiIgorImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIGFuZCAtLW1lcmdlIGFyZSBpbmNvbXBhdGlibGUgd2hlblxuIgorImNoZWNraW5nIG91dCBvZiB0aGUgaW5kZXguIgorbXNnc3RyICIiCisiZ2l0IGNoZWNrb3V0OiDQvtC/0YbQuNC40YLQtSDigJ4tLW91cnPigJwv4oCeLS10aGVpcnPigJwsIOKAni0tZm9yY2XigJwg0Lgg4oCeLS1tZXJnZeKAnFxuIgorItGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4INGBINC40LfRgtC10LPQu9GP0L3QtSDQvtGCINC40L3QtNC10LrRgdCwLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2OTcKK21zZ2lkICJ5b3UgbXVzdCBzcGVjaWZ5IHBhdGgocykgdG8gcmVzdG9yZSIKK21zZ3N0ciAi0YLRgNGP0LHQstCwINC00LAg0YPQutCw0LbQtdGC0LUg0L/QvtC90LUg0LXQtNC40L0g0L/RitGCINC30LAg0LLRitC30YHRgtCw0L3QvtCy0Y/QstCw0L3QtSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjMgYnVpbHRpbi9jaGVja291dC5jOjE3MjUgYnVpbHRpbi9jaGVja291dC5jOjE3NzQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc2IGJ1aWx0aW4vY2xvbmUuYzoxMjEgYnVpbHRpbi9yZW1vdGUuYzoxNzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcyIGJ1aWx0aW4vd29ya3RyZWUuYzo0OTIgYnVpbHRpbi93b3JrdHJlZS5jOjQ5NAorbXNnaWQgImJyYW5jaCIKK21zZ3N0ciAi0LrQu9C+0L0iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI0Cittc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCittc2dzdHIgItGB0YrQt9C00LDQstCw0L3QtSDQuCDQv9GA0LXQvNC40L3QsNCy0LDQvdC1INC60YrQvCDQvdC+0LIg0LrQu9C+0L0iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI2Cittc2dpZCAiY3JlYXRlL3Jlc2V0IGFuZCBjaGVja291dCBhIGJyYW5jaCIKK21zZ3N0ciAi0YHRitC30LTQsNCy0LDQvdC1L9C30LDQvdGD0LvRj9Cy0LDQvdC1INC90LAg0LrQu9C+0L0g0Lgg0L/RgNC10LzQuNC90LDQstCw0L3QtSDQutGK0Lwg0L3QtdCz0L4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI3Cittc2dpZCAiY3JlYXRlIHJlZmxvZyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAi0YHRitC30LTQsNCy0LDQvdC1INC90LAg0LbRg9GA0L3QsNC7INC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSDQt9CwINC90L7QsiDQutC70L7QvSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjkKK21zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBjaGVja291dCA8bm8tc3VjaC1icmFuY2g+JyAoZGVmYXVsdCkiCittc2dzdHIgIiIKKyLQvtC/0LjRgiDQt9CwINC+0YLQs9Cw0YLQstCw0L3QtSDQvdCwINC40LzQtSDQvdCwINC60LvQvtC9INGB0LvQtdC0INC90LXRg9GB0L/QtdGI0LXQvSDQvtC/0LjRgiDRgSDigJ5naXQgY2hlY2tvdXQgIgorItCd0JXQodCq0KnQldCh0KLQktCj0JLQkNCpX9Ca0JvQntCd4oCcICjRgdGC0LDQvdC00LDRgNGC0L3QvikiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzMwCittc2dpZCAidXNlIG92ZXJsYXkgbW9kZSAoZGVmYXVsdCkiCittc2dzdHIgItC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0L/RgNC40L/QvtC60YDQuNCy0LDRiSDRgNC10LbQuNC8ICjRgdGC0LDQvdC00LDRgNGC0L3QvikiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc1Cittc2dpZCAiY3JlYXRlIGFuZCBzd2l0Y2ggdG8gYSBuZXcgYnJhbmNoIgorbXNnc3RyICLRgdGK0LfQtNCw0LLQsNC90LUg0Lgg0L/RgNC10LzQuNC90LDQstCw0L3QtSDQutGK0Lwg0L3QvtCyINC60LvQvtC9IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3NworbXNnaWQgImNyZWF0ZS9yZXNldCBhbmQgc3dpdGNoIHRvIGEgYnJhbmNoIgorbXNnc3RyICLRgdGK0LfQtNCw0LLQsNC90LUv0LfQsNC90YPQu9GP0LLQsNC90LUg0L3QsCDQutC70L7QvSDQuCDQv9GA0LXQvNC40L3QsNCy0LDQvdC1INC60YrQvCDQvdC10LPQviIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzkKK21zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBzd2l0Y2ggPG5vLXN1Y2gtYnJhbmNoPiciCittc2dzdHIgIiIKKyLQvtC/0LjRgiDQt9CwINC+0YLQs9Cw0YLQstCw0L3QtSDQvdCwINC40LzQtSDQvdCwINC60LvQvtC9INGB0LvQtdC0INC90LXRg9GB0L/QtdGI0LXQvSDQvtC/0LjRgiDRgSDigJ5naXQgc3dpdGNoICIKKyLQndCV0KHQqtCp0JXQodCi0JLQo9CS0JDQqV/QmtCb0J7QneKAnCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3ODEKK21zZ2lkICJ0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMiCittc2dzdHIgItC30LDQvdGD0LvRj9Cy0LDQvdC1INC90LAg0LvQvtC60LDQu9C90LjRgtC1INC/0YDQvtC80LXQvdC4IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxMworbXNnaWQgIndoaWNoIHRyZWUtaXNoIHRvIGNoZWNrb3V0IGZyb20iCittc2dzdHIgItC60YrQvCDQutC+0Lkg0YPQutCw0LfQsNGC0LXQuyDQutGK0Lwg0LTRitGA0LLQviDQtNCwINGB0LUg0L/RgNC10LzQuNC90LUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODE1Cittc2dpZCAicmVzdG9yZSB0aGUgaW5kZXgiCittc2dzdHIgItCy0YrQt9GB0YLQsNC90L7QstGP0LLQsNC90LUg0L3QsCDQuNC90LTQtdC60YHQsCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTcKK21zZ2lkICJyZXN0b3JlIHRoZSB3b3JraW5nIHRyZWUgKGRlZmF1bHQpIgorbXNnc3RyICLQstGK0LfRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INC90LAg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4gKNGB0YLQsNC90LTQsNGA0YLQvdC+KSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTkKK21zZ2lkICJpZ25vcmUgdW5tZXJnZWQgZW50cmllcyIKK21zZ3N0ciAi0L/RgNC10L3QtdCx0YDQtdCz0LLQsNC90LUg0L3QsCDQvdC10YHQu9C10YLQuNGC0LUg0LXQu9C10LzQtdC90YLQuCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MjAKK21zZ2lkICJ1c2Ugb3ZlcmxheSBtb2RlIgorbXNnc3RyICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINC/0YDQuNC/0L7QutGA0LjQstCw0Ykg0YDQtdC20LjQvCIKKworIzogYnVpbHRpbi9jbGVhbi5jOjI4CiBtc2dpZCAiIgogImdpdCBjbGVhbiBbLWRdIFstZl0gWy1pXSBbLW5dIFstcV0gWy1lIDxwYXR0ZXJuPl0gWy14IHwgLVhdIFstLV0gPHBhdGhzPi4uLiIKIG1zZ3N0ciAiZ2l0IGNsZWFuIFstZF0gWy1mXSBbLWldIFstbl0gWy1xXSBbLWUg0KjQkNCR0JvQntCdXSBbLXggfCAtWF0gWy0tXSDQn9Cq0KLigKYiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMQorIzogYnVpbHRpbi9jbGVhbi5jOjMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzXG4iCiBtc2dzdHIgItCY0LfRgtGA0LjQstCw0L3QtSDQvdCwIOKAniVz4oCcXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMgorIzogYnVpbHRpbi9jbGVhbi5jOjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIldvdWxkIHJlbW92ZSAlc1xuIgogbXNnc3RyICLQpNCw0LnQu9GK0YIg4oCeJXPigJwg0YnQtSDQsdGK0LTQtSDQuNC30YLRgNC40YJcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjMzCisjOiBidWlsdGluL2NsZWFuLmM6MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBpbmcgcmVwb3NpdG9yeSAlc1xuIgogbXNnc3RyICLQn9GA0LXRgdC60LDRh9Cw0L3QtSDQvdCwINGF0YDQsNC90LjQu9C40YnQtdGC0L4g4oCeJXPigJxcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjM0CisjOiBidWlsdGluL2NsZWFuLmM6MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiV291bGQgc2tpcCByZXBvc2l0b3J5ICVzXG4iCiBtc2dzdHIgItCl0YDQsNC90LjQu9C40YnQtdGC0L4g4oCeJXPigJwg0YnQtSDQsdGK0LTQtSDQv9GA0LXRgdC60L7Rh9C10L3QvlxuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzUKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICVzIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40LfRgtGA0LjRgiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjI5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3OQorIzogYnVpbHRpbi9jbGVhbi5jOjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBsc3RhdCAlc1xuIgorbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9C+0LvRg9GH0Lgg0LjQvdGE0L7RgNC80LDRhtC40Y8g0YfRgNC10Lcg4oCebHN0YXTigJwg0LfQsCDigJ4lc+KAnFxuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzAxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQcm9tcHQgaGVscDpcbiIKQEAgLTkzMTEsNyArMTIxMDgsNyBAQAogItCf0KDQldCk0JjQmtChICAgIOKAlCDQuNC30LHQvtGAINC90LAg0LXQtNC40L3RgdGC0LLQtdC9INC+0LHQtdC60YIg0L/QviDRgtC+0LfQuCDRg9C90LjQutCw0LvQtdC9INC/0YDQtdGE0LjQutGBXG4iCiAiICAgICAgICAgICDigJQgKNC/0YDQsNC30L3Qvikg0L3QuNGJ0L4g0LTQsCDQvdC1INGB0LUg0LjQt9Cx0LjRgNCwXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMDIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1ODgKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMDUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlByb21wdCBoZWxwOlxuIgpAQCAtOTMzMiwzOSArMTIxMjksMzMgQEAKICIqICAgICAgICAgIOKAlCDQuNC30LHQuNGA0LDQvdC1INC90LAg0LLRgdC40YfQutC4INC+0LHQtdC60YLQuFxuIgogIiAgICAgICAgICAg4oCUICjQv9GA0LDQt9C90L4pINC30LDQstGK0YDRiNCy0LDQvdC1INC90LAg0LjQt9Cx0LjRgNCw0L3QtdGC0L5cbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjUxOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU1NAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NTkKKyM6IGJ1aWx0aW4vY2xlYW4uYzo1MjEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NzAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTc1CiAjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKIG1zZ2lkICJIdWggKCVzKT9cbiIKIG1zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9C10L0g0LjQt9Cx0L7RgCAoJXMpLlxuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6NjYwCisjOiBidWlsdGluL2NsZWFuLmM6NjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIklucHV0IGlnbm9yZSBwYXR0ZXJucz4+ICIKIG1zZ3N0ciAi0KjQsNCx0LvQvtC90Lgg0LfQsCDQuNCz0L3QvtGA0LjRgNCw0L3QuCDQtdC70LXQvNC10L3RgtC44omrICIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjY5NworIzogYnVpbHRpbi9jbGVhbi5jOjcwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJXQVJOSU5HOiBDYW5ub3QgZmluZCBpdGVtcyBtYXRjaGVkIGJ5OiAlcyIKIG1zZ3N0ciAi0J/QoNCV0JTQo9Cf0KDQldCW0JTQldCd0JjQlTog0J3QuNC60L7QuSDQvtCx0LXQutGCINC90LUg0L3QsNC/0LDRgdCy0LAg0L3QsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjcxOAorIzogYnVpbHRpbi9jbGVhbi5jOjcyMQogbXNnaWQgIlNlbGVjdCBpdGVtcyB0byBkZWxldGUiCiBtc2dzdHIgItCY0LfQsdC40YDQsNC90LUg0L3QsCDQvtCx0LXQutGC0Lgg0LfQsCDQuNC30YLRgNC40LLQsNC90LUiCiAKICMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8ga2VlcCBbeS9OXSBhcyBpcwotIzogYnVpbHRpbi9jbGVhbi5jOjc1OQorIzogYnVpbHRpbi9jbGVhbi5jOjc2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmUgJXMgW3kvTl0/ICIKIG1zZ3N0ciAi0JTQsCDRgdC1INC40LfRgtGA0LjQtSDQu9C4IOKAniVz4oCcPyDigJ554oCcIOKAlCAg0LTQsCwg4oCeTuKAnCDigJQg0J3QlSIKIAotIwotIzogYnVpbHRpbi9jbGVhbi5jOjc4NCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQnllLlxuIgotbXNnc3RyICLQmNC30YXQvtC0LlxuIgotCi0jOiBidWlsdGluL2NsZWFuLmM6NzkyCisjOiBidWlsdGluL2NsZWFuLmM6Nzk1CiBtc2dpZCAiIgogImNsZWFuICAgICAgICAgICAgICAgLSBzdGFydCBjbGVhbmluZ1xuIgogImZpbHRlciBieSBwYXR0ZXJuICAgLSBleGNsdWRlIGl0ZW1zIGZyb20gZGVsZXRpb25cbiIKQEAgLTkzODIsNjQgKzEyMTczLDU2IEBACiAiaGVscCAgICAgICAgICAgICAgICDigJQg0YLQvtC30Lgg0LrRgNCw0LlcbiIKICI/ICAgICAgICAgICAgICAgICAgIOKAlCDQv9C+0LTRgdC60LDQt9C60LAg0LfQsCDRiNCw0LHQu9C+0L3QuNGC0LUiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo4MTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzkzCi1tc2dpZCAiKioqIENvbW1hbmRzICoqKiIKLW1zZ3N0ciAi4peP4peP4pePINCa0L7QvNCw0L3QtNC4IOKXj+KXj+KXjyIKLQotIzogYnVpbHRpbi9jbGVhbi5jOjgyMCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTAKLW1zZ2lkICJXaGF0IG5vdyIKLW1zZ3N0ciAi0JjQt9Cx0L7RgCDQvdCwINGB0LvQtdC00LLQsNGJ0L4g0LTQtdC50YHRgtCy0LjQtSIKLQotIzogYnVpbHRpbi9jbGVhbi5jOjgyOAorIzogYnVpbHRpbi9jbGVhbi5jOjgzMQogbXNnaWQgIldvdWxkIHJlbW92ZSB0aGUgZm9sbG93aW5nIGl0ZW06IgogbXNnaWRfcGx1cmFsICJXb3VsZCByZW1vdmUgdGhlIGZvbGxvd2luZyBpdGVtczoiCiBtc2dzdHJbMF0gItCh0LvQtdC00L3QuNGP0YIg0L7QsdC10LrRgiDRidC1INCx0YrQtNC1INC40LfRgtGA0LjRgjoiCiBtc2dzdHJbMV0gItCh0LvQtdC00L3QuNGC0LUg0L7QsdC10LrRgtC4INGJ0LUg0LHRitC00LDRgiDQuNC30YLRgNC40YLQuDoiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo4NDQKKyM6IGJ1aWx0aW4vY2xlYW4uYzo4NDcKIG1zZ2lkICJObyBtb3JlIGZpbGVzIHRvIGNsZWFuLCBleGl0aW5nLiIKIG1zZ3N0ciAi0KTQsNC50LvQvtCy0LXRgtC1INC30LAg0LjQt9GH0LjRgdGC0LLQsNC90LUg0YHQstGK0YDRiNC40YXQsC4gINCY0LfRhdC+0LQg0L7RgiDQv9GA0L7Qs9GA0LDQvNCw0YLQsC4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MDYKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MDkKIG1zZ2lkICJkbyBub3QgcHJpbnQgbmFtZXMgb2YgZmlsZXMgcmVtb3ZlZCIKIG1zZ3N0ciAi0LHQtdC3INC40LfQstC10LbQtNCw0L3QtSDQvdCwINC40LzQtdC90LDRgtCwINC90LAg0YTQsNC50LvQvtCy0LXRgtC1LCDQutC+0LjRgtC+INGJ0LUg0LHRitC00LDRgiDQuNC30YLRgNC40YLQuCIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwOAorIzogYnVpbHRpbi9jbGVhbi5jOjkxMQogbXNnaWQgImZvcmNlIgogbXNnc3RyICLQv9GA0LjQvdGD0LTQuNGC0LXQu9C90L4g0LjQt9GC0YDQuNCy0LDQvdC1IgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA5CisjOiBidWlsdGluL2NsZWFuLmM6OTEyCiBtc2dpZCAiaW50ZXJhY3RpdmUgY2xlYW5pbmciCiBtc2dzdHIgItC40L3RgtC10YDQsNC60YLQuNCy0L3QviDQuNC30YLRgNC40LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTEKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTQKIG1zZ2lkICJyZW1vdmUgd2hvbGUgZGlyZWN0b3JpZXMiCiBtc2dzdHIgItC40LfRgtGA0LjQstCw0L3QtSDQvdCwINGG0LXQu9C4INC00LjRgNC10LrRgtC+0YDQuNC4IgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTEyIGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDUgYnVpbHRpbi9kZXNjcmliZS5jOjU0NwotIzogYnVpbHRpbi9ncmVwLmM6ODg2IGJ1aWx0aW4vbG9nLmM6MTY2IGJ1aWx0aW4vbG9nLmM6MTY4Ci0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTU2IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTUgYnVpbHRpbi9uYW1lLXJldi5jOjQxNwotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OAorIzogYnVpbHRpbi9jbGVhbi5jOjkxNSBidWlsdGluL2Rlc2NyaWJlLmM6NTYyIGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4OSBidWlsdGluL2xvZy5jOjE3NyBidWlsdGluL2xvZy5jOjE3OQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NyBidWlsdGluL25hbWUtcmV2LmM6NTI2IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjgKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzkKIG1zZ2lkICJwYXR0ZXJuIgogbXNnc3RyICLQqNCQ0JHQm9Ce0J0iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTMKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTYKIG1zZ2lkICJhZGQgPHBhdHRlcm4+IHRvIGlnbm9yZSBydWxlcyIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINCo0JDQkdCb0J7QnSDQvtGCINGE0LDQudC70L7QstC1LCDQutC+0LjRgtC+INC00LAg0L3QtSDRgdC1INGC0YDQuNGP0YIiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTQKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTcKIG1zZ2lkICJyZW1vdmUgaWdub3JlZCBmaWxlcywgdG9vIgogbXNnc3RyICLQuNC30YLRgNC40LLQsNC90LUg0Lgg0L3QsCDQuNCz0L3QvtGA0LjRgNCw0L3QuNGC0LUg0YTQsNC50LvQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTYKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTkKIG1zZ2lkICJyZW1vdmUgb25seSBpZ25vcmVkIGZpbGVzIgogbXNnc3RyICLQuNC30YLRgNC40LLQsNC90LUg0YHQsNC80L4g0L3QsCDQuNCz0L3QvtGA0LjRgNCw0L3QuCDRhNCw0LnQu9C+0LLQtSIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkzNAorIzogYnVpbHRpbi9jbGVhbi5jOjkzNwogbXNnaWQgIi14IGFuZCAtWCBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeLXjigJwg0Lgg4oCeLVjigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MzgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5NDEKIG1zZ2lkICIiCiAiY2xlYW4ucmVxdWlyZUZvcmNlIHNldCB0byB0cnVlIGFuZCBuZWl0aGVyIC1pLCAtbiwgbm9yIC1mIGdpdmVuOyByZWZ1c2luZyB0byAiCiAiY2xlYW4iCkBAIC05NDQ3LDcgKzEyMjMwLDcgQEAKICLQndCw0YHRgtGA0L7QudC60LDRgtCwIOKAnmNsZWFuLnJlcXVpcmVGb3JjZeKAnCDQtSDQt9Cw0LTQsNC00LXQvdCwINC60LDRgtC+INC40YHRgtC40L3QsCwg0LrQvtC10YLQviDQuNC30LjRgdC60LLQsCDQvdGP0LrQvtGPICIKICLQvtGCINC+0L/RhtC40LjRgtC1IOKAni1p4oCcLCDigJ4tbuKAnCDQuNC70Lgg4oCeLWbigJwuICDQndGP0LzQsCDQtNCwINGB0LUg0LjQt9Cy0YrRgNGI0Lgg0LjQt9GH0LjRgdGC0LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5NDEKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5NDQKIG1zZ2lkICIiCiAiY2xlYW4ucmVxdWlyZUZvcmNlIGRlZmF1bHRzIHRvIHRydWUgYW5kIG5laXRoZXIgLWksIC1uLCBub3IgLWYgZ2l2ZW47ICIKICJyZWZ1c2luZyB0byBjbGVhbiIKQEAgLTk0NTYsMTUwICsxMjIzOSwxNzEgQEAKICLQutC+0LXRgtC+INC40LfQuNGB0LrQstCwINC90Y/QutC+0Y8g0L7RgiDQvtC/0YbQuNC40YLQtSDigJ4taeKAnCwg4oCeLW7igJwg0LjQu9C4IOKAni1m4oCcLiAg0J3Rj9C80LAg0LTQsCDRgdC1INC40LfQstGK0YDRiNC4ICIKICLQuNC30YfQuNGB0YLQstCw0L3QtSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQzCisjOiBidWlsdGluL2Nsb25lLmM6NDUKIG1zZ2lkICJnaXQgY2xvbmUgWzxvcHRpb25zPl0gWy0tXSA8cmVwbz4gWzxkaXI+XSIKIG1zZ3N0ciAiZ2l0IGNsb25lIFvQntCf0KbQmNCv4oCmXSBbLS1dINCl0KDQkNCd0JjQm9CY0KnQlSBb0JTQmNCg0JXQmtCi0J7QoNCY0K9dIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MwogbXNnaWQgImRvbid0IGNyZWF0ZSBhIGNoZWNrb3V0IgogbXNnc3RyICLQsdC10Lcg0YHRitC30LTQsNCy0LDQvdC1INC90LAg0YDQsNCx0L7RgtC90L4g0LTRitGA0LLQviIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjg5IGJ1aWx0aW4vY2xvbmUuYzo5MSBidWlsdGluL2luaXQtZGIuYzo0ODEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NCBidWlsdGluL2Nsb25lLmM6OTYgYnVpbHRpbi9pbml0LWRiLmM6NDg5CiBtc2dpZCAiY3JlYXRlIGEgYmFyZSByZXBvc2l0b3J5IgogbXNnc3RyICLRgdGK0LfQtNCw0LLQsNC90LUg0L3QsCDQs9C+0LvQviDRhdGA0LDQvdC40LvQuNGJ0LUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MworIzogYnVpbHRpbi9jbG9uZS5jOjk4CiBtc2dpZCAiY3JlYXRlIGEgbWlycm9yIHJlcG9zaXRvcnkgKGltcGxpZXMgYmFyZSkiCiBtc2dzdHIgIiIKICLRgdGK0LfQtNCw0LLQsNC90LUg0L3QsCDRhdGA0LDQvdC40LvQuNGJ0LUt0L7Qs9C70LXQtNCw0LvQviAo0LLQutC70Y7Rh9Cy0LAg0L7Qv9GG0LjRj9GC0LAg4oCeLS1iYXJl4oCcINC30LAg0LPQvtC70L4g0YXRgNCw0L3QuNC70LjRidC1KSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk1CisjOiBidWlsdGluL2Nsb25lLmM6MTAwCiBtc2dpZCAidG8gY2xvbmUgZnJvbSBhIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgItC60LvQvtC90LjRgNCw0L3QtSDQvtGCINC70L7QutCw0LvQvdC+INGF0YDQsNC90LjQu9C40YnQtSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk3CisjOiBidWlsdGluL2Nsb25lLmM6MTAyCiBtc2dpZCAiZG9uJ3QgdXNlIGxvY2FsIGhhcmRsaW5rcywgYWx3YXlzIGNvcHkiCiBtc2dzdHIgItCx0LXQtyDRgtCy0YrRgNC00Lgg0LLRgNGK0LfQutC4LCDRhNCw0LnQu9C+0LLQtdGC0LUg0LLQuNC90LDQs9C4INC00LAg0YHQtSDQutC+0L/QuNGA0LDRgiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk5CisjOiBidWlsdGluL2Nsb25lLmM6MTA0CiBtc2dpZCAic2V0dXAgYXMgc2hhcmVkIHJlcG9zaXRvcnkiCiBtc2dzdHIgItC90LDRgdGC0YDQvtC50LLQsNC90LUg0LfQsCDRgdC/0L7QtNC10LvQtdC90L4g0YXRgNCw0L3QuNC70LjRidC1IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxIGJ1aWx0aW4vY2xvbmUuYzoxMDUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDcKIG1zZ2lkICJwYXRoc3BlYyIKIG1zZ3N0ciAi0L/RitGCIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxIGJ1aWx0aW4vY2xvbmUuYzoxMDUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDcKIG1zZ2lkICJpbml0aWFsaXplIHN1Ym1vZHVsZXMgaW4gdGhlIGNsb25lIgogbXNnc3RyICLQuNC90LjRhtC40LDQu9C40LfQuNGA0LDQvdC1INC90LAg0L/QvtC00LzQvtC00YPQu9C40YLQtSDQv9GA0Lgg0YLQvtCy0LAg0LrQu9C+0L3QuNGA0LDQvdC1IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA4CisjOiBidWlsdGluL2Nsb25lLmM6MTEwCiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgY2xvbmVkIGluIHBhcmFsbGVsIgogbXNnc3RyICLQsdGA0L7QuSDQv9C+0LTQvNC+0LTRg9C70LgsINC60LvQvtC90LjRgNCw0L3QuCDQv9Cw0YDQsNC70LXQu9C90L4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDkgYnVpbHRpbi9pbml0LWRiLmM6NDc4CisjOiBidWlsdGluL2Nsb25lLmM6MTExIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NgogbXNnaWQgInRlbXBsYXRlLWRpcmVjdG9yeSIKIG1zZ3N0ciAi0LTQuNGA0LXQutGC0L7RgNC40Y8g0YEg0YjQsNCx0LvQvtC90LgiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAgYnVpbHRpbi9pbml0LWRiLmM6NDc5CisjOiBidWlsdGluL2Nsb25lLmM6MTEyIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NwogbXNnaWQgImRpcmVjdG9yeSBmcm9tIHdoaWNoIHRlbXBsYXRlcyB3aWxsIGJlIHVzZWQiCiBtc2dzdHIgItC00LjRgNC10LrRgtC+0YDQuNGPLCDQutC+0Y/RgtC+INGB0YrQtNGK0YDQttCwINGI0LDQsdC70L7QvdC40YLQtSwg0LrQvtC40YLQviDQtNCwINGB0LUg0L/QvtC70LfQstCw0YIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTIgYnVpbHRpbi9jbG9uZS5jOjExNCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTYKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTQgYnVpbHRpbi9jbG9uZS5jOjExNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTIKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0LXRgtCw0LvQvtC90L3QviDRhdGA0LDQvdC40LvQuNGJ0LUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzcKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU4CisjOiBidWlsdGluL2Nsb25lLmM6MTE4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxNAogbXNnaWQgInVzZSAtLXJlZmVyZW5jZSBvbmx5IHdoaWxlIGNsb25pbmciCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tcmVmZXJlbmNl4oCcINC80L7QttC1INC00LAg0YHQtSDQuNC30L/QvtC70LfQstCwINGB0LDQvNC+INC/0YDQuCDQutC70L7QvdC40YDQsNC90LUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTcgYnVpbHRpbi9jb2x1bW4uYzoyNyBidWlsdGluL21lcmdlLWZpbGUuYzo0NgotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAxIGJ1aWx0aW4vcmVwYWNrLmM6MzI5CisjOiBidWlsdGluL2Nsb25lLmM6MTE5IGJ1aWx0aW4vY29sdW1uLmM6MjcgYnVpbHRpbi9tZXJnZS1maWxlLmM6NDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0MSBidWlsdGluL3JlcGFjay5jOjMyNwogbXNnaWQgIm5hbWUiCiBtc2dzdHIgItCY0JzQlSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExOAorIzogYnVpbHRpbi9jbG9uZS5jOjEyMAogbXNnaWQgInVzZSA8bmFtZT4gaW5zdGVhZCBvZiAnb3JpZ2luJyB0byB0cmFjayB1cHN0cmVhbSIKIG1zZ3N0ciAi0LjQt9C/0L7Qu9C30LLQsNC90LUg0L3QsCDRgtC+0LLQsCDQmNCc0JUg0LLQvNC10YHRgtC+IOKAnm9yaWdpbuKAnCDQv9GA0Lgg0L/RgNC+0YHQu9C10LTRj9Cy0LDQvdC1INC90LAg0LrQu9C+0L3QuCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyMAorIzogYnVpbHRpbi9jbG9uZS5jOjEyMgogbXNnaWQgImNoZWNrb3V0IDxicmFuY2g+IGluc3RlYWQgb2YgdGhlIHJlbW90ZSdzIEhFQUQiCiBtc2dzdHIgItC40LfRgtC10LPQu9GP0L3QtSDQvdCwINGC0L7Qt9C4INCa0JvQntCdLCDQsCDQvdC1INGB0L7Rh9C10L3QuNGP0YIg0L7RgiDQvtGC0LTQsNC70LXRh9C10L3QuNGPINGD0LrQsNC30LDRgtC10Lsg4oCeSEVBROKAnCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyMgorIzogYnVpbHRpbi9jbG9uZS5jOjEyNAogbXNnaWQgInBhdGggdG8gZ2l0LXVwbG9hZC1wYWNrIG9uIHRoZSByZW1vdGUiCiBtc2dzdHIgItC/0YrRgiDQutGK0Lwg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdC11cGxvYWQtcGFja+KAnCDQvdCwINC+0YLQtNCw0LvQtdGH0LXQvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjMgYnVpbHRpbi9mZXRjaC5jOjE0MiBidWlsdGluL2dyZXAuYzo4MjUKLSM6IGJ1aWx0aW4vcHVsbC5jOjIxNworIzogYnVpbHRpbi9jbG9uZS5jOjEyNSBidWlsdGluL2ZldGNoLmM6MTY4IGJ1aWx0aW4vZ3JlcC5jOjgyOAorIzogYnVpbHRpbi9wdWxsLmM6MjA3CiBtc2dpZCAiZGVwdGgiCiBtc2dzdHIgItCU0KrQm9CR0J7Qp9CY0J3QkCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyNAorIzogYnVpbHRpbi9jbG9uZS5jOjEyNgogbXNnaWQgImNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgb2YgdGhhdCBkZXB0aCIKIG1zZ3N0ciAi0L/Qu9C40YLQutC+INC60LvQvtC90LjRgNCw0L3QtSDQtNC+INGC0LDQt9C4INCU0KrQm9CR0J7Qp9CY0J3QkCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyNSBidWlsdGluL2ZldGNoLmM6MTQ0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5MgorIzogYnVpbHRpbi9jbG9uZS5jOjEyNyBidWlsdGluL2ZldGNoLmM6MTcwIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQzMAogbXNnaWQgInRpbWUiCiBtc2dzdHIgItCS0KDQldCc0JUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjYKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjgKIG1zZ2lkICJjcmVhdGUgYSBzaGFsbG93IGNsb25lIHNpbmNlIGEgc3BlY2lmaWMgdGltZSIKIG1zZ3N0ciAi0L/Qu9C40YLQutC+INC60LvQvtC90LjRgNCw0L3QtSDQtNC+INC80L7QvNC10L3RgiDQstGK0LIg0LLRgNC10LzQtdGC0L4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjcgYnVpbHRpbi9mZXRjaC5jOjE0NiBidWlsdGluL2ZldGNoLmM6MTY5Ci0jOiBidWlsdGluL3JlYmFzZS5jOjgzMQorIzogYnVpbHRpbi9jbG9uZS5jOjEyOSBidWlsdGluL2ZldGNoLmM6MTcyIGJ1aWx0aW4vZmV0Y2guYzoxOTUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MAogbXNnaWQgInJldmlzaW9uIgotbXNnc3RyICLQstC10YDRgdC40Y8iCittc2dzdHIgItCS0JXQoNCh0JjQryIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyOCBidWlsdGluL2ZldGNoLmM6MTQ3CisjOiBidWlsdGluL2Nsb25lLmM6MTMwIGJ1aWx0aW4vZmV0Y2guYzoxNzMKIG1zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IGNsb25lLCBleGNsdWRpbmcgcmV2IgogbXNnc3RyICLQt9Cw0LTRitC70LHQvtGH0LDQstCw0L3QtSDQvdCwINC40YHRgtC+0YDQuNGP0YLQsCDQvdCwINC/0LvQuNGC0LrQviDRhdGA0LDQvdC40LvQuNGJ0LUg0LTQviDQuNC30LrQu9GO0YfQstCw0Ykg0YPQutCw0LfQsNGC0LXQuyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzMAorIzogYnVpbHRpbi9jbG9uZS5jOjEzMiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjgKIG1zZ2lkICJjbG9uZSBvbmx5IG9uZSBicmFuY2gsIEhFQUQgb3IgLS1icmFuY2giCiBtc2dzdHIgIiIKICLQutC70L7QvdC40YDQsNC90LUg0YHQsNC80L4g0L3QsCDQtdC00LjQvSDQutC70L7QvSDigJQg0LjQu9C4INGB0L7Rh9C10L3QuNGPINC+0YIg0L7RgtC00LDQu9C10YfQtdC90LjRjyDigJ5IRUFE4oCcLCDQuNC70Lgg0LjQt9GA0LjRh9C90L4gIgogItC30LDQtNCw0LTQtdC90LjRjyDRgSDigJ4tLWJyYW5jaOKAnCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzMgorIzogYnVpbHRpbi9jbG9uZS5jOjEzNAogbXNnaWQgImRvbid0IGNsb25lIGFueSB0YWdzLCBhbmQgbWFrZSBsYXRlciBmZXRjaGVzIG5vdCB0byBmb2xsb3cgdGhlbSIKIG1zZ3N0ciAiIgogItCx0LXQtyDQutC70L7QvdC40YDQsNC90LUg0L3QsCDQtdGC0LjQutC10YLQuCwg0LrQsNGC0L4g0L/QvtGB0LvQtdC00LLQsNGJ0LjRgtC1INC00L7RgdGC0LDQstGP0L3QuNGPINC90Y/QvNCwINC00LAg0LPQuCDRgdC70LXQtNGP0YIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzQKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzYKIG1zZ2lkICJhbnkgY2xvbmVkIHN1Ym1vZHVsZXMgd2lsbCBiZSBzaGFsbG93IgogbXNnc3RyICLQstGB0LjRh9C60Lgg0LrQu9C+0L3QuNGA0LDQvdC4INC/0L7QtNC80L7QtNGD0LvQuCDRidC1INGB0LAg0L/Qu9C40YLQutC4IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM1IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NworIzogYnVpbHRpbi9jbG9uZS5jOjEzNyBidWlsdGluL2luaXQtZGIuYzo0OTUKIG1zZ2lkICJnaXRkaXIiCiBtc2dzdHIgItCh0JvQo9CW0JXQkdCd0JBf0JTQmNCg0JXQmtCi0J7QoNCY0K8iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzYgYnVpbHRpbi9pbml0LWRiLmM6NDg4CisjOiBidWlsdGluL2Nsb25lLmM6MTM4IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5NgogbXNnaWQgInNlcGFyYXRlIGdpdCBkaXIgZnJvbSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgItC+0YLQtNC10LvQvdCwINCh0JvQo9CW0JXQkdCd0JBf0JTQmNCg0JXQmtCi0J7QoNCY0K8g0LfQsCBnaXQg0LjQt9Cy0YrQvSDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNworIzogYnVpbHRpbi9jbG9uZS5jOjEzOQogbXNnaWQgImtleT12YWx1ZSIKIG1zZ3N0ciAi0JrQm9Cu0Kc90KHQotCe0JnQndCe0KHQoiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzOAorIzogYnVpbHRpbi9jbG9uZS5jOjE0MAogbXNnaWQgInNldCBjb25maWcgaW5zaWRlIHRoZSBuZXcgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0LfQsNC00LDQstCw0L3QtSDQvdCwINC90LDRgdGC0YDQvtC50LrQuNGC0LUg0L3QsCDQvdC+0LLQvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM5IGJ1aWx0aW4vZmV0Y2guYzoxNjUgYnVpbHRpbi9wdWxsLmM6MjMwCi0jOiBidWlsdGluL3B1c2guYzo1ODMKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDIgYnVpbHRpbi9mZXRjaC5jOjE5MCBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL3B1c2guYzo1NzMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzIKK21zZ2lkICJzZXJ2ZXItc3BlY2lmaWMiCittc2dzdHIgItGB0L/QtdGG0LjRhNC40YfQvdC4INC30LAg0YHRitGA0LLRitGA0LAiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDIgYnVpbHRpbi9mZXRjaC5jOjE5MCBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL3B1c2guYzo1NzMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzMKK21zZ2lkICJvcHRpb24gdG8gdHJhbnNtaXQiCittc2dzdHIgItC+0L/RhtC40Y8g0LfQsCDQv9GA0LXQvdC+0YEiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDMgYnVpbHRpbi9mZXRjaC5jOjE5MSBidWlsdGluL3B1bGwuYzoyMjAKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3NAogbXNnaWQgInVzZSBJUHY0IGFkZHJlc3NlcyBvbmx5IgogbXNnc3RyICLRgdCw0LzQviDQsNC00YDQtdGB0LggSVB2NCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjE0MSBidWlsdGluL2ZldGNoLmM6MTY3IGJ1aWx0aW4vcHVsbC5jOjIzMwotIzogYnVpbHRpbi9wdXNoLmM6NTg1CisjOiBidWlsdGluL2Nsb25lLmM6MTQ1IGJ1aWx0aW4vZmV0Y2guYzoxOTMgYnVpbHRpbi9wdWxsLmM6MjIzCisjOiBidWlsdGluL3B1c2guYzo1NzYKIG1zZ2lkICJ1c2UgSVB2NiBhZGRyZXNzZXMgb25seSIKIG1zZ3N0ciAi0YHQsNC80L4g0LDQtNGA0LXRgdC4IElQdjYiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoyNzkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDkKK21zZ2lkICJhbnkgY2xvbmVkIHN1Ym1vZHVsZXMgd2lsbCB1c2UgdGhlaXIgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKK21zZ3N0ciAi0LLRgdC40YfQutC4INC60LvQvtC90LjRgNCw0L3QuCDQv9C+0LTQvNC+0LTRg9C70Lgg0YnQtSDQv9C+0LvQt9Cy0LDRgiDRgdC70LXQtNGP0YnQuNGC0LUg0YHQuCDQutC70L7QvdC4IgorCisjOiBidWlsdGluL2Nsb25lLmM6MTUxCittc2dpZCAiaW5pdGlhbGl6ZSBzcGFyc2UtY2hlY2tvdXQgZmlsZSB0byBpbmNsdWRlIG9ubHkgZmlsZXMgYXQgcm9vdCIKK21zZ3N0ciAiIgorItC40L3QuNGG0LjQsNC70LjQt9C40YDQsNC90LUg0L3QsCDRhNCw0LnQu9CwINC30LAg0YfQsNGB0YLQuNGH0L3QviDQuNC30YLQtdCz0LvRj9C90LUgKOKAni5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXTigJwpICIKKyLQtNCwINGB0YrQtNGK0YDQttCwINGB0LDQvNC+INGE0LDQudC70L7QstC10YLQtSDQsiDQvtGB0L3QvtCy0L3QsNGC0LAg0LTQuNGA0LXQutGC0L7RgNC40Y8iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoyODcKIG1zZ2lkICIiCiAiTm8gZGlyZWN0b3J5IG5hbWUgY291bGQgYmUgZ3Vlc3NlZC5cbiIKICJQbGVhc2Ugc3BlY2lmeSBhIGRpcmVjdG9yeSBvbiB0aGUgY29tbWFuZCBsaW5lIgpAQCAtOTYwNywxNTEgKzEyNDExLDE1MiBAQAogItCY0LzQtdGC0L4g0L3QsCDQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQs9Cw0YLQvdCw0YLQvi5cbiIKICLQl9Cw0LTQsNC50YLQtSDQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg0LjQt9GA0LjRh9C90L4g0L3QsCDQutC+0LzQsNC90LTQvdC40Y8g0YDQtdC0IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MzMyCisjOiBidWlsdGluL2Nsb25lLmM6MzQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImluZm86IENvdWxkIG5vdCBhZGQgYWx0ZXJuYXRlIGZvciAnJXMnOiAlc1xuIgogbXNnc3RyICIiCiAi0J/QoNCV0JTQo9Cf0KDQldCW0JTQldCd0JjQlTog0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LTQvtCx0LDQstC4INCw0LvRgtC10YDQvdCw0YLQuNCy0LXQvSDQuNC30YLQvtGH0L3QuNC6INC90LAg4oCeJXPigJw6ICVzXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0MDQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyIKLW1zZ3N0ciAi0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LLQvtGA0LXQvdCwIgotCi0jOiBidWlsdGluL2Nsb25lLmM6NDEyCisjOiBidWlsdGluL2Nsb25lLmM6NDEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGV4aXN0cyBhbmQgaXMgbm90IGEgZGlyZWN0b3J5IgogbXNnc3RyICLigJ4lc+KAnCDRgdGK0YnQtdGB0YLQstGD0LLQsCDQuCDQvdC1INC1INC00LjRgNC10LrRgtC+0YDQuNGPIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDI2CisjOiBidWlsdGluL2Nsb25lLmM6NDMwCiAjLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBzdGF0ICVzXG4iCi1tc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9C+0LvRg9GH0LXQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGPINGH0YDQtdC3IOKAnnN0YXTigJwg0LfQsCDigJ4lc+KAnFxuIgorbXNnaWQgImZhaWxlZCB0byBzdGFydCBpdGVyYXRvciBvdmVyICclcyciCittc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQuNGC0LXRgNC40YDQsNC90LUg0L/QviDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ0MwotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gdW5saW5rICclcyciCi1tc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQuNC30YLRgNC40LLQsNC90LUg0L3QsCDigJ4lc+KAnCIKLQotIzogYnVpbHRpbi9jbG9uZS5jOjQ0OAorIzogYnVpbHRpbi9jbG9uZS5jOjQ2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGxpbmsgJyVzJyIKIG1zZ3N0ciAi0LLRgNGK0LfQutCw0YLQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRitC30LTQsNC00LXQvdCwIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDUyCisjOiBidWlsdGluL2Nsb25lLmM6NDY0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjb3B5IGZpbGUgdG8gJyVzJyIKIG1zZ3N0ciAi0YTQsNC50LvRitGCINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQutC+0L/QuNGA0LDQvSDQutCw0YLQviDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ3OAorIzogYnVpbHRpbi9jbG9uZS5jOjQ2OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaXRlcmF0ZSBvdmVyICclcyciCittc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQuNGC0LXRgNC40YDQsNC90LUg0L/QviDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjQ5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJkb25lLlxuIgogbXNnc3RyICLQtNC10LnRgdGC0LLQuNC10YLQviDQt9Cw0LLRitGA0YjQuC5cbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ5MgorIzogYnVpbHRpbi9jbG9uZS5jOjUwOAogbXNnaWQgIiIKICJDbG9uZSBzdWNjZWVkZWQsIGJ1dCBjaGVja291dCBmYWlsZWQuXG4iCiAiWW91IGNhbiBpbnNwZWN0IHdoYXQgd2FzIGNoZWNrZWQgb3V0IHdpdGggJ2dpdCBzdGF0dXMnXG4iCi0iYW5kIHJldHJ5IHRoZSBjaGVja291dCB3aXRoICdnaXQgY2hlY2tvdXQgLWYgSEVBRCdcbiIKKyJhbmQgcmV0cnkgd2l0aCAnZ2l0IHJlc3RvcmUgLS1zb3VyY2U9SEVBRCA6LydcbiIKIG1zZ3N0ciAiIgogItCa0LvQvtC90LjRgNCw0L3QtdGC0L4g0LHQtSDRg9GB0L/QtdGI0L3QviDQt9CwINGA0LDQt9C70LjQutCwINC+0YIg0L/QvtC00LPQvtGC0L7QstC60LDRgtCwINC90LAg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L5cbiIKICLQt9CwINC+0L/RgNC10LTQtdC70LXQvSDQutC70L7QvS4gINCS0YHQtSDQv9Cw0Log0LzQvtC20LXRgtC1INC00LAg0L/RgNC+0LLQtdGA0LjRgtC1INC60L7QuCDRhNCw0LnQu9C+0LLQtSDQuCDQvtGCINC60L7QuVxuIgogItC60LvQvtC9INCyINC80L7QvNC10L3RgtCwINGB0LAg0LjQt9GC0LXQs9C70LXQvdC4INGBINC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgc3RhdHVz4oCcLiAg0JzQvtC20LXRgtC1INC00LBcbiIKLSLQt9Cw0LLRitGA0YjQuNGC0LUg0LjQt9GC0LXQs9C70Y/QvdC10YLQviDQvdCwINC60LvQvtC90LAg0YEg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCBjaGVja291dCAtZiBIRUFE4oCcLlxuIgorItC30LDQstGK0YDRiNC40YLQtSDQuNC30YLQtdCz0LvRj9C90LXRgtC+INC90LAg0LrQu9C+0L3QsCDRgSDQutC+0LzQsNC90LTQsNGC0LA6XG4iCisiXG4iCisiICAgIGdpdCByZXN0b3JlIC0tc291cmNlPUhFQUQgOi9cbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjU2OQorIzogYnVpbHRpbi9jbG9uZS5jOjU4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCByZW1vdGUgYnJhbmNoICVzIHRvIGNsb25lLiIKIG1zZ3N0ciAiIgogItCa0LvQvtC90YrRgiDigJ4lc+KAnCDQvtGCINC+0YLQtNCw0LvQtdGH0LXQvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUsINC60L7QtdGC0L4g0LrQu9C+0L3QuNGA0LDRgtC1LFxuIgogItC4INC60L7QudGC0L4g0YHQu9C10LTQstCwINC00LAg0LHRitC00LUg0LjQt9GC0LXQs9C70LXQvSwg0L3QtSDRgdGK0YnQtdGB0YLQstGD0LLQsC4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo2ODAKKyM6IGJ1aWx0aW4vY2xvbmUuYzo3MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSAlcyIKIG1zZ3N0ciAi0L7QsdC10LrRgtGK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0LHQvdC+0LLQtdC9IgogCi0jOiBidWlsdGluL2Nsb25lLmM6NzMwCisjOiBidWlsdGluL2Nsb25lLmM6NzUzCittc2dpZCAiZmFpbGVkIHRvIGluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICLRh9Cw0YHRgtC40YfQvdC+0YLQviDQuNC30YLQtdCz0LvRj9C90LUg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQvdC40YbQuNCw0LvQuNC30LjRgNCwIgorCisjOiBidWlsdGluL2Nsb25lLmM6Nzc2CiBtc2dpZCAicmVtb3RlIEhFQUQgcmVmZXJzIHRvIG5vbmV4aXN0ZW50IHJlZiwgdW5hYmxlIHRvIGNoZWNrb3V0LlxuIgogbXNnc3RyICIiCiAi0YPQutCw0LfQsNGC0LXQu9GP0YIg4oCeSEVBROKAnCDQvtGCINC+0YLQtNCw0LvQtdGH0LXQvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUg0YHQvtGH0Lgg0LrRitC8INC90LXRidC+LFxuIgogItC60L7QtdGC0L4g0L3QtSDRgdGK0YnQtdGB0YLQstGD0LLQsC4gINCd0LUg0LzQvtC20LUg0LTQsCDRgdC1INC40LfRgtC10LPQu9C4INC+0L/RgNC10LTQtdC70LXQvSDQutC70L7QvS5cbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjc2MQorIzogYnVpbHRpbi9jbG9uZS5jOjgwNwogbXNnaWQgInVuYWJsZSB0byBjaGVja291dCB3b3JraW5nIHRyZWUiCiBtc2dzdHIgItGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9C+0LTQs9C+0YLQstC10L3QviIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjgwNgorIzogYnVpbHRpbi9jbG9uZS5jOjg2MgogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBwYXJhbWV0ZXJzIHRvIGNvbmZpZyBmaWxlIgogbXNnc3RyICLQvdCw0YHRgtGA0L7QudC60LjRgtC1INC90LUg0LzQvtCz0LDRgiDQtNCwINCx0YrQtNCw0YIg0LfQsNC/0LjRgdCw0L3QuCDQsiDQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC90LjRjyDRhNCw0LnQuyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjg2OQorIzogYnVpbHRpbi9jbG9uZS5jOjkyNQogbXNnaWQgImNhbm5vdCByZXBhY2sgdG8gY2xlYW4gdXAiCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC40LfQstGK0YDRiNC4INC/0LDQutC10YLQuNGA0LDQvdC1INC30LAg0LjQt9GH0LjRgdGC0LLQsNC90LUg0L3QsCDRhNCw0LnQu9C+0LLQtdGC0LUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4NzEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MjcKIG1zZ2lkICJjYW5ub3QgdW5saW5rIHRlbXBvcmFyeSBhbHRlcm5hdGVzIGZpbGUiCiBtc2dzdHIgItCy0YDQtdC80LXQvdC90LjRj9GCINGE0LDQudC7INC30LAg0LDQu9GC0LXRgNC90LDRgtC40LLQvdC4INC+0LHQtdC60YLQuCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LjQt9GC0YDQuNGCIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTExIGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk0MQorIzogYnVpbHRpbi9jbG9uZS5jOjk2NSBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NTAKIG1zZ2lkICJUb28gbWFueSBhcmd1bWVudHMuIgogbXNnc3RyICLQn9GA0LXQutCw0LvQtdC90L4g0LzQvdC+0LPQviDQsNGA0LPRg9C80LXQvdGC0LguIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTE1CisjOiBidWlsdGluL2Nsb25lLmM6OTY5CiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIHJlcG9zaXRvcnkgdG8gY2xvbmUuIgogbXNnc3RyICLQotGA0Y/QsdCy0LAg0LTQsCDRg9C60LDQttC10YLQtSDQutC+0LUg0YXRgNCw0L3QuNC70LjRidC1INC40YHQutCw0YLQtSDQtNCwINC60LvQvtC90LjRgNCw0YLQtS4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MjgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiLS1iYXJlIGFuZCAtLW9yaWdpbiAlcyBvcHRpb25zIGFyZSBpbmNvbXBhdGlibGUuIgogbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLWJhcmXigJwg0Lgg4oCeLS1vcmlnaW4gJXPigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LguIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTMxCisjOiBidWlsdGluL2Nsb25lLmM6OTg1CiBtc2dpZCAiLS1iYXJlIGFuZCAtLXNlcGFyYXRlLWdpdC1kaXIgYXJlIGluY29tcGF0aWJsZS4iCiBtc2dzdHIgItC+0L/RhtC40LjRgtC1IOKAni0tYmFyZeKAnCDQuCDigJ4tLXNlcGFyYXRlLWdpdC1kaXLigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LguIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTQ0CisjOiBidWlsdGluL2Nsb25lLmM6OTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcG9zaXRvcnkgJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAi0L3QtSDRgdGK0YnQtdGB0YLQstGD0LLQsCDRhdGA0LDQvdC40LvQuNGJ0LUg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NTAgYnVpbHRpbi9mZXRjaC5jOjE2MDYKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDA0IGJ1aWx0aW4vZmV0Y2guYzoxNzk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlcHRoICVzIGlzIG5vdCBhIHBvc2l0aXZlIG51bWJlciIKIG1zZ3N0ciAi0LTRitC70LHQvtGH0LjQvdCw0YLQsCDRgtGA0Y/QsdCy0LAg0LTQsCDQtSDQv9C+0LvQvtC20LjRgtC10LvQvdC+INGG0Y/Qu9C+INGH0LjRgdC70L4sINCwINC90LUg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NjAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlc3RpbmF0aW9uIHBhdGggJyVzJyBhbHJlYWR5IGV4aXN0cyBhbmQgaXMgbm90IGFuIGVtcHR5IGRpcmVjdG9yeS4iCiBtc2dzdHIgItGG0LXQu9C10LLQuNGP0YIg0L/RitGCIOKAniVz4oCcINGB0YrRidC10YHRgtCy0YPQstCwINC4INC90LUg0LUg0L/RgNCw0LfQvdCwINC00LjRgNC10LrRgtC+0YDQuNGPLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk3MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAid29ya2luZyB0cmVlICclcycgYWxyZWFkeSBleGlzdHMuIgogbXNnc3RyICLQsiDigJ4lc+KAnCDQstC10YfQtSDRgdGK0YnQtdGB0YLQstGD0LLQsCDRgNCw0LHQvtGC0L3QviDQtNGK0YDQstC+LiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk4NSBidWlsdGluL2Nsb25lLmM6MTAwNiBidWlsdGluL2RpZmZ0b29sLmM6MjcxCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Mjk1IGJ1aWx0aW4vd29ya3RyZWUuYzozMjUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDM5IGJ1aWx0aW4vY2xvbmUuYzoxMDYwIGJ1aWx0aW4vZGlmZnRvb2wuYzoyNzEKKyM6IGJ1aWx0aW4vbG9nLmM6MTg2NiBidWlsdGluL3dvcmt0cmVlLmM6Mjk1IGJ1aWx0aW4vd29ya3RyZWUuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBsZWFkaW5nIGRpcmVjdG9yaWVzIG9mICclcyciCiBtc2dzdHIgItGA0L7QtNC40YLQtdC70YHQutC40YLQtSDQtNC40YDQtdC60YLQvtGA0LjQuCDQvdCwIOKAniVz4oCcINC90LUg0LzQvtCz0LDRgiDQtNCwINCx0YrQtNCw0YIg0YHRitC30LTQsNC00LXQvdC4IgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTkwCisjOiBidWlsdGluL2Nsb25lLmM6MTA0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHdvcmsgdHJlZSBkaXIgJyVzJyIKIG1zZ3N0ciAi0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0LIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGB0YrQt9C00LDQtNC10L3Qvi4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEwCisjOiBidWlsdGluL2Nsb25lLmM6MTA2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDbG9uaW5nIGludG8gYmFyZSByZXBvc2l0b3J5ICclcycuLi5cbiIKIG1zZ3N0ciAi0JrQu9C+0L3QuNGA0LDQvdC1INC4INGB0YrQt9C00LDQstCw0L3QtSDQvdCwINCz0L7Qu9C+INGF0YDQsNC90LjQu9C40YnQtSDQsiDigJ4lc+KAnOKAplxuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxMgorIzogYnVpbHRpbi9jbG9uZS5jOjEwNjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2xvbmluZyBpbnRvICclcycuLi5cbiIKIG1zZ3N0ciAi0JrQu9C+0L3QuNGA0LDQvdC1INC4INGB0YrQt9C00LDQstCw0L3QtSDQvdCwINGF0YDQsNC90LjQu9C40YnQtSDQsiDigJ4lc+KAnOKAplxuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAzNgorIzogYnVpbHRpbi9jbG9uZS5jOjEwOTAKIG1zZ2lkICIiCiAiY2xvbmUgLS1yZWN1cnNpdmUgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBib3RoIC0tcmVmZXJlbmNlIGFuZCAtLXJlZmVyZW5jZS1pZi0iCiAiYWJsZSIKQEAgLTk3NTksNDQgKzEyNTY0LDQ0IEBACiAi0J7Qv9GG0LjRj9GC0LAg4oCeLS1yZWN1cnNpdmXigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBINC+0L/RhtC40LjRgtC1IOKAni0tcmVmZXJlbmNl4oCcINC4IOKAni0tcmVmZXJlbmNlLSIKICJpZi1hYmxl4oCcIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA5NworIzogYnVpbHRpbi9jbG9uZS5jOjExNTQKIG1zZ2lkICItLWRlcHRoIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKIG1zZ3N0ciAiIgogItCf0YDQuCDQu9C+0LrQsNC70L3QviDQutC70L7QvdC40YDQsNC90LUg0L7Qv9GG0LjRj9GC0LAg4oCeLS1kZXB0aOKAnCDRgdC1INC/0YDQtdGB0LrQsNGH0LAuICDQn9C+0LvQt9Cy0LDQudGC0LUg0YHRhdC10LzQsNGC0LAgIgogIuKAnmZpbGU6Ly/igJwuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA5OQorIzogYnVpbHRpbi9jbG9uZS5jOjExNTYKIG1zZ2lkICItLXNoYWxsb3ctc2luY2UgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAi0J/RgNC4INC70L7QutCw0LvQvdC+INC60LvQvtC90LjRgNCw0L3QtSDQvtC/0YbQuNGP0YLQsCDigJ4tLXNoYWxsb3ctc2luY2XigJwg0YHQtSDQv9GA0LXRgdC60LDRh9CwLiAg0J/QvtC70LfQstCw0LnRgtC1ICIKICLRgdGF0LXQvNCw0YLQsCDigJ5maWxlOi8v4oCcLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMDEKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTU4CiBtc2dpZCAiLS1zaGFsbG93LWV4Y2x1ZGUgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAi0J/RgNC4INC70L7QutCw0LvQvdC+INC60LvQvtC90LjRgNCw0L3QtSDQvtC/0YbQuNGP0YLQsCDigJ4tLXNoYWxsb3ctZXhjbHVkZeKAnCDRgdC1INC/0YDQtdGB0LrQsNGH0LAuICDQn9C+0LvQt9Cy0LDQudGC0LUgIgogItGB0YXQtdC80LDRgtCwIOKAnmZpbGU6Ly/igJwuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTEwMworIzogYnVpbHRpbi9jbG9uZS5jOjExNjAKIG1zZ2lkICItLWZpbHRlciBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCiBtc2dzdHIgIiIKICLQn9GA0Lgg0LvQvtC60LDQu9C90L4g0LrQu9C+0L3QuNGA0LDQvdC1INC+0L/RhtC40Y/RgtCwIOKAni0tZmlsdGVy4oCcINGB0LUg0L/RgNC10YHQutCw0YfQsC4gINCf0L7Qu9C30LLQsNC50YLQtSDRgdGF0LXQvNCw0YLQsCAiCiAi4oCeZmlsZTovL+KAnC4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTA2CisjOiBidWlsdGluL2Nsb25lLmM6MTE2MwogbXNnaWQgInNvdXJjZSByZXBvc2l0b3J5IGlzIHNoYWxsb3csIGlnbm9yaW5nIC0tbG9jYWwiCiBtc2dzdHIgItC60LvQvtC90LjRgNCw0L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1INC1INC/0LvQuNGC0LrQviwg0LfQsNGC0L7QstCwINC+0L/RhtC40Y/RgtCwIOKAni0tbG9jYWzigJwg0YHQtSDQv9GA0LXRgdC60LDRh9CwIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTExMQorIzogYnVpbHRpbi9jbG9uZS5jOjExNjgKIG1zZ2lkICItLWxvY2FsIGlzIGlnbm9yZWQiCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tbG9jYWzigJwg0YHQtSDQv9GA0LXRgdC60LDRh9CwIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE4MSBidWlsdGluL2Nsb25lLmM6MTE4OQorIzogYnVpbHRpbi9jbG9uZS5jOjEyNDMgYnVpbHRpbi9jbG9uZS5jOjEyNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3RlIGJyYW5jaCAlcyBub3QgZm91bmQgaW4gdXBzdHJlYW0gJXMiCiBtc2dzdHIgItCe0YLQtNCw0LvQtdGH0LXQvdC40Y/RgiDQutC70L7QvSDigJ4lc+KAnCDQu9C40L/RgdCy0LAg0LIg0LrQu9C+0L3QuNGA0LDQvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTkyCisjOiBidWlsdGluL2Nsb25lLmM6MTI1NAogbXNnaWQgIllvdSBhcHBlYXIgdG8gaGF2ZSBjbG9uZWQgYW4gZW1wdHkgcmVwb3NpdG9yeS4iCiBtc2dzdHIgItCY0LfQs9C70LXQttC00LAg0LrQu9C+0L3QuNGA0LDRhdGC0LUg0L/RgNCw0LfQvdC+INGF0YDQsNC90LjQu9C40YnQtS4iCiAKQEAgLTk4MzIsMTUgKzEyNjM3LDgzIEBACiBtc2dpZCAiLS1jb21tYW5kIG11c3QgYmUgdGhlIGZpcnN0IGFyZ3VtZW50IgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLWNvbW1hbmTigJwg0YLRgNGP0LHQstCwINC00LAg0LUg0L/RitGA0LLQuNGP0YIg0LDRgNCz0YPQvNC10L3RgiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0MAorIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjE4Cittc2dpZCAiIgorImdpdCBjb21taXQtdHJlZSBbKC1wIDxwYXJlbnQ+KS4uLl0gWy1TWzxrZXlpZD5dXSBbKC1tIDxtZXNzYWdlPikuLi5dIFsoLUYgIgorIjxmaWxlPikuLi5dIDx0cmVlPiIKK21zZ3N0ciAiIgorImdpdCBjb21taXQtdHJlZSBbKC1wINCg0J7QlNCY0KLQldCbKeKApl0gWy1TW9CY0JTQldCd0KLQmNCk0JjQmtCQ0KLQntCgXV0gWygtbSDQodCq0J7QkdCp0JXQndCY0JUp4oCmXSBbKC1GICIKKyLQpNCQ0JnQmynigKZdINCU0KrQoNCS0J4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzozMQorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGFyZW50ICVzIGlnbm9yZWQiCittc2dzdHIgItC/0YDQtdGB0LrQsNGH0LDQvdC1INC90LAg0L/QvtCy0YLQsNGA0Y/RiSDRgdC1INGA0L7QtNC40YLQtdC7OiDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjU2IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMzYgYnVpbHRpbi9sb2cuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0IG5hbWUgJXMiCittc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdC+INC40LzQtSDQvdCwINC+0LHQtdC60YI6IOKAniVz4oCcIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gb3BlbiAnJXMnIgorbXNnc3RyICJnaXQgY29tbWl0LXRyZWU6IOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0YLQstC+0YDQuCIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk2CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQgJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9GA0L7Rh9C10YLQtSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk4CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIGNsb3NlICclcyciCittc2dzdHIgImdpdCBjb21taXQtdHJlZTog4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNGC0LLQvtGA0LgiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTEKK21zZ2lkICJwYXJlbnQiCittc2dzdHIgItGA0L7QtNC40YLQtdC7IgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTEyCittc2dpZCAiaWQgb2YgYSBwYXJlbnQgY29tbWl0IG9iamVjdCIKK21zZ3N0ciAi0JjQlNCV0J3QotCY0KTQmNCa0JDQotCe0KAg0L3QsCDQvtCx0LXQutGC0LAg0LfQsCDQv9C+0LTQsNCy0LDQvdC10YLQvi3RgNC+0LTQuNGC0LXQuyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExNCBidWlsdGluL2NvbW1pdC5jOjE1MDEgYnVpbHRpbi9tZXJnZS5jOjI3MQorIzogYnVpbHRpbi9ub3Rlcy5jOjQwOSBidWlsdGluL25vdGVzLmM6NTc1IGJ1aWx0aW4vc3Rhc2guYzoxNDc3CisjOiBidWlsdGluL3RhZy5jOjQxMgorbXNnaWQgIm1lc3NhZ2UiCittc2dzdHIgItCh0KrQntCR0KnQldCd0JjQlSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExNSBidWlsdGluL2NvbW1pdC5jOjE1MDEKK21zZ2lkICJjb21taXQgbWVzc2FnZSIKK21zZ3N0ciAi0KHQqtCe0JHQqdCV0J3QmNCVINC/0YDQuCDQv9C+0LTQsNCy0LDQvdC1IgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE4Cittc2dpZCAicmVhZCBjb21taXQgbG9nIG1lc3NhZ2UgZnJvbSBmaWxlIgorbXNnc3RyICLQuNC30YfQuNGC0LDQvdC1INC90LAg0YHRitC+0LHRidC10L3QuNC10YLQviDQt9CwINC/0L7QtNCw0LLQsNC90LUg0L7RgiDQpNCQ0JnQmyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMSBidWlsdGluL2NvbW1pdC5jOjE1MTMgYnVpbHRpbi9tZXJnZS5jOjI4OAorIzogYnVpbHRpbi9wdWxsLmM6MTc1IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE4Cittc2dpZCAiR1BHIHNpZ24gY29tbWl0IgorbXNnc3RyICLQv9C+0LTQv9C40YHQstCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LXRgtC+INGBIEdQRyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjEzMworbXNnaWQgIm11c3QgZ2l2ZSBleGFjdGx5IG9uZSB0cmVlIgorbXNnc3RyICLRgtGA0Y/QsdCy0LAg0LTQsCDQtSDRgtC+0YfQvdC+INC10LTQvdC+INC00YrRgNCy0L4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxNDAKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byByZWFkIgorbXNnc3RyICJnaXQgY29tbWl0LXRyZWU6INC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQvtGH0LXRgtC1IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjQxCiBtc2dpZCAiZ2l0IGNvbW1pdCBbPG9wdGlvbnM+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCiBtc2dzdHIgImdpdCBjb21taXQgW9Ce0J/QptCY0K/igKZdIFstLV0g0J/QqtCi4oCmIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ1CisjOiBidWlsdGluL2NvbW1pdC5jOjQ2CiBtc2dpZCAiZ2l0IHN0YXR1cyBbPG9wdGlvbnM+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCiBtc2dzdHIgImdpdCBzdGF0dXMgW9Ce0J/QptCY0K/igKZdIFstLV0g0J/QqtCi4oCmIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjUwCisjOiBidWlsdGluL2NvbW1pdC5jOjUxCiBtc2dpZCAiIgogIllvdSBhc2tlZCB0byBhbWVuZCB0aGUgbW9zdCByZWNlbnQgY29tbWl0LCBidXQgZG9pbmcgc28gd291bGQgbWFrZVxuIgogIml0IGVtcHR5LiBZb3UgY2FuIHJlcGVhdCB5b3VyIGNvbW1hbmQgd2l0aCAtLWFsbG93LWVtcHR5LCBvciB5b3UgY2FuXG4iCkBAIC05ODUyLDcgKzEyNzI1LDcgQEAKICLRgSDQvtC/0YbQuNGP0YLQsCDigJ4tLWFsbG93LWVtcHR54oCcLCDQuNC70Lgg0LTQsCDQs9C+INC40LfRgtGA0LjQtdGC0LUg0L7RgiDQuNGB0YLQvtGA0LjRj9GC0LAg0YEg0LrQvtC80LDQvdC00LDRgtCwOlxuIgogIuKAnmdpdCByZXNldCBIRUFEXuKAnC5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo1NQorIzogYnVpbHRpbi9jb21taXQuYzo1NgogbXNnaWQgIiIKICJUaGUgcHJldmlvdXMgY2hlcnJ5LXBpY2sgaXMgbm93IGVtcHR5LCBwb3NzaWJseSBkdWUgdG8gY29uZmxpY3QgcmVzb2x1dGlvbi5cbiIKICJJZiB5b3Ugd2lzaCB0byBjb21taXQgaXQgYW55d2F5LCB1c2U6XG4iCkBAIC05ODY3LDgxICsxMjc0MCw5OCBAQAogIiAgICBnaXQgY29tbWl0IC0tYWxsb3ctZW1wdHlcbiIKICJcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2MgotbXNnaWQgIk90aGVyd2lzZSwgcGxlYXNlIHVzZSAnZ2l0IHJlc2V0J1xuIgotbXNnc3RyICLQkiDQv9GA0L7RgtC40LLQtdC9INGB0LvRg9GH0LDQuSDQuNC30L/QvtC70LfQstCw0LnRgtC1INC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgcmVzZXTigJxcbiIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjMKK21zZ2lkICJPdGhlcndpc2UsIHBsZWFzZSB1c2UgJ2dpdCBjaGVycnktcGljayAtLXNraXAnXG4iCittc2dzdHIgIiIKKyLQkiDQv9GA0L7RgtC40LLQtdC9INGB0LvRg9GH0LDQuSDQuNC30L/QvtC70LfQstCw0LnRgtC1INC60L7QvNCw0L3QtNCw0YLQsDpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY1CisjOiBidWlsdGluL2NvbW1pdC5jOjY2CiBtc2dpZCAiIgorImFuZCB0aGVuIHVzZTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcbiIKKyJcbiIKKyJ0byByZXN1bWUgY2hlcnJ5LXBpY2tpbmcgdGhlIHJlbWFpbmluZyBjb21taXRzLlxuIgogIklmIHlvdSB3aXNoIHRvIHNraXAgdGhpcyBjb21taXQsIHVzZTpcbiIKICJcbiIKLSIgICAgZ2l0IHJlc2V0XG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLXNraXBcbiIKICJcbiIKLSJUaGVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB3aWxsIHJlc3VtZSBjaGVycnktcGlja2luZ1xuIgotInRoZSByZW1haW5pbmcgY29tbWl0cy5cbiIKIG1zZ3N0ciAiIgotItCQ0LrQviDQuNGB0LrQsNGC0LUg0LTQsCDQv9GA0LXRgdC60L7Rh9C40YLQtSDRgtC+0LLQsCDQv9C+0LTQsNCy0LDQvdC1LCDQuNC30L/QvtC70LfQstCw0LnRgtC1INC60L7QvNCw0L3QtNCw0YLQsDpcbiIKKyLRgdC70LXQtCDRgtC+0LLQsCDQuNC30L/RitC70L3QtdGC0LU6XG4iCiAiXG4iCi0iICAgIGdpdCByZXNldFxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVxuIgogIlxuIgotItCn0YDQtdC3INC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZeKAnCDRidC1INC/0YDQvtC00YrQu9C20LjRgtC1INC+0YLQsdC40YDQsNC90LXRgtC+INC90LBcbiIKLSLQvtGB0YLQsNC90LDQu9C40YLQtSDQv9C+0LTQsNCy0LDQvdC40Y8uXG4iCisi0Lgg0YnQtSDQv9GA0L7QtNGK0LvQttC40YLQtSDQtNCwINC+0YLQsdC40YDQsNGC0LUg0L7RgdGC0LDQvdCw0LvQuNGC0LUg0L/QvtC00LDQstCw0L3QuNGPLlxuIgorItCX0LAg0LTQsCDQv9GA0LXRgdC60L7Rh9C40YLQtSDRgtC+0LLQsCDQv9C+0LTQsNCy0LDQvdC1LCDQuNC30L/RitC70L3QtdGC0LU6XG4iCisiXG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLXNraXBcbiIKKyJcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzozMTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzE1CiBtc2dpZCAiZmFpbGVkIHRvIHVucGFjayBIRUFEIHRyZWUgb2JqZWN0IgogbXNnc3RyICLQstGK0YDRhdC+0LLQvtGC0L4g0LTRitGA0LLQviAoSEVBRCB0cmVlIG9iamVjdCkg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40LfQstCw0LTQtdC90L4g0L7RgiDQv9Cw0LrQtdGCIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM1MgorIzogYnVpbHRpbi9jb21taXQuYzozNTEKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgItC+0L/RhtC40LjRgtC1IOKAni1h4oCcINC4IOKAni0tcGF0aHNwZWMtZnJvbS1maWxl4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjM2NAorbXNnaWQgIk5vIHBhdGhzIHdpdGggLS1pbmNsdWRlLy0tb25seSBkb2VzIG5vdCBtYWtlIHNlbnNlLiIKK21zZ3N0ciAi0J7Qv9GG0LjQuNGC0LUg4oCeLS1pbmNsdWRl4oCcINC4IOKAni0tb25seeKAnCDQuNC30LjRgdC60LLQsNGCINCw0YDQs9GD0LzQtdC90YLQuC4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzc2CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgItCy0YDQtdC80LXQvdC90LjRj9GCINC40L3QtNC10LrRgSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRitC30LTQsNC00LXQvSIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzg1CiBtc2dpZCAiaW50ZXJhY3RpdmUgYWRkIGZhaWxlZCIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40L3RgtC10YDQsNC60YLQuNCy0L3QviDQtNC+0LHQsNCy0Y/QvdC1IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM3MQorIzogYnVpbHRpbi9jb21taXQuYzo0MDAKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIHRlbXBvcmFyeSBpbmRleCIKIG1zZ3N0ciAi0LLRgNC10LzQtdC90L3QuNGP0YIg0LjQvdC00LXQutGBINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtCx0L3QvtCy0LXQvSIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNzMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDAyCiBtc2dpZCAiRmFpbGVkIHRvIHVwZGF0ZSBtYWluIGNhY2hlIHRyZWUiCiBtc2dzdHIgItCU0YrRgNCy0L7RgtC+INC90LAg0L7RgdC90L7QstC90LjRjyDQutC10Ygg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0LHQvdC+0LLQtdC90L4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Mzk4IGJ1aWx0aW4vY29tbWl0LmM6NDIxIGJ1aWx0aW4vY29tbWl0LmM6NDY3CisjOiBidWlsdGluL2NvbW1pdC5jOjQyNyBidWlsdGluL2NvbW1pdC5jOjQ1MCBidWlsdGluL2NvbW1pdC5jOjQ5NgogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXdfaW5kZXggZmlsZSIKIG1zZ3N0ciAi0L3QvtCy0LjRj9GCINC40L3QtNC10LrRgSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LjRgdCw0L0iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDUwCisjOiBidWlsdGluL2NvbW1pdC5jOjQ3OQogbXNnaWQgImNhbm5vdCBkbyBhIHBhcnRpYWwgY29tbWl0IGR1cmluZyBhIG1lcmdlLiIKIG1zZ3N0ciAi0L/QviDQstGA0LXQvNC1INC90LAg0YHQu9C40LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9Cy0YrRgNGI0Lgg0YfQsNGB0YLQuNGH0L3QviDQv9C+0LTQsNCy0LDQvdC1LiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NTIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDgxCiBtc2dpZCAiY2Fubm90IGRvIGEgcGFydGlhbCBjb21taXQgZHVyaW5nIGEgY2hlcnJ5LXBpY2suIgogbXNnc3RyICLQv9C+INCy0YDQtdC80LUg0L3QsCDQvtGC0LHQuNGA0LDQvdC1INC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC40LfQstGK0YDRiNC4INGH0LDRgdGC0LjRh9C90L4g0L/QvtC00LDQstCw0L3QtS4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDYwCisjOiBidWlsdGluL2NvbW1pdC5jOjQ4OQogbXNnaWQgImNhbm5vdCByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAi0LjQvdC00LXQutGB0YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTA4CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRlbXBvcmFyeSBpbmRleCBmaWxlIgogbXNnc3RyICLQstGA0LXQvNC10L3QvdC40Y/RgiDQuNC90LTQtdC60YEg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC30LDQv9C40YHQsNC9IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3NworIzogYnVpbHRpbi9jb21taXQuYzo2MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgbGFja3MgYXV0aG9yIGhlYWRlciIKIG1zZ3N0ciAi0LfQsNCz0LvQsNCy0L3QsNGC0LAg0YfQsNGB0YIg0LfQsCDQsNCy0YLQvtGAINCyINC/0L7QtNCw0LLQsNC90LXRgtC+IOKAniVz4oCcINC70LjQv9GB0LLQsCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo1NzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbW1pdCAnJXMnIGhhcyBtYWxmb3JtZWQgYXV0aG9yIGxpbmUiCiBtc2dzdHIgItC30LDQs9C70LDQstC90LDRgtCwINGH0LDRgdGCINC30LAg0LDQstGC0L7RgCDQsiDQv9C+0LTQsNCy0LDQvdC10YLQviDigJ4lc+KAnCDQtSDQvdC10L/RgNCw0LLQuNC70L3QsCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo1OTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjI3CiBtc2dpZCAibWFsZm9ybWVkIC0tYXV0aG9yIHBhcmFtZXRlciIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0L/QsNGA0LDQvNC10YLRitGAINC60YrQvCDQvtC/0YbQuNGP0YLQsCDigJ4tLWF1dGhvcuKAnCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2NTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjgwCiBtc2dpZCAiIgogInVuYWJsZSB0byBzZWxlY3QgYSBjb21tZW50IGNoYXJhY3RlciB0aGF0IGlzIG5vdCB1c2VkXG4iCiAiaW4gdGhlIGN1cnJlbnQgY29tbWl0IG1lc3NhZ2UiCkBAIC05OTQ5LDM4ICsxMjgzOSwzOCBAQAogItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC40LfQsdC10YDQtSDQt9C90LDQuiDQt9CwINC60L7QvNC10L3RgtCw0YAg4oCUINCyINGC0LXQutGD0YnQvtGC0L4g0YHRitC+0LHRidC10L3QuNC1INC30LAg0L/QvtC00LDQstCw0L3QtSDRgdCwICIKICLQuNC30L/QvtC70LfQstCw0L3QuCDQstGB0LjRh9C60Lgg0L/QvtC00L7QsdC90Lgg0LfQvdCw0YbQuCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2ODcgYnVpbHRpbi9jb21taXQuYzo3MjAgYnVpbHRpbi9jb21taXQuYzoxMDQ5CisjOiBidWlsdGluL2NvbW1pdC5jOjcxOCBidWlsdGluL2NvbW1pdC5jOjc1MSBidWlsdGluL2NvbW1pdC5jOjEwOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvb2t1cCBjb21taXQgJXMiCiBtc2dzdHIgItGB0LvQtdC00L3QvtGC0L4g0L/QvtC00LDQstCw0L3QtSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGC0L46ICVzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY5OSBidWlsdGluL3Nob3J0bG9nLmM6MzE3CisjOiBidWlsdGluL2NvbW1pdC5jOjczMCBidWlsdGluL3Nob3J0bG9nLmM6MzE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIihyZWFkaW5nIGxvZyBtZXNzYWdlIGZyb20gc3RhbmRhcmQgaW5wdXQpXG4iCiBtc2dzdHIgIijQuNC30YfQuNGC0LDQvdC1INC90LAg0YHRitC+0LHRidC10L3QuNC10YLQviDQt9CwINC/0L7QtNCw0LLQsNC90LUg0L7RgiDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINCy0YXQvtC0KVxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjcwMQorIzogYnVpbHRpbi9jb21taXQuYzo3MzIKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBsb2cgZnJvbSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAi0YHRitC+0LHRidC10L3QuNC10YLQviDQt9CwINC/0L7QtNCw0LLQsNC90LUg0L3QtSDQsdC1INC/0YDQvtGH0LXRgtC10L3QviDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINCy0YXQvtC0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjcwNQorIzogYnVpbHRpbi9jb21taXQuYzo3MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZpbGUgJyVzJyIKIG1zZ3N0ciAi0YTQsNC50LvRitGCINGB0YrRgSDRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC30LAg0L/QvtC00LDQstCw0L3QtSDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3MzQgYnVpbHRpbi9jb21taXQuYzo3NDIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzY3IGJ1aWx0aW4vY29tbWl0LmM6NzgzCiBtc2dpZCAiY291bGQgbm90IHJlYWQgU1FVQVNIX01TRyIKIG1zZ3N0ciAi0YHRitC+0LHRidC10L3QuNC10YLQviDQt9CwINCy0LrQsNGA0LLQsNC90LUgU1FVQVNIX01TRyDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvdC+IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjczOQorIzogYnVpbHRpbi9jb21taXQuYzo3NzQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBNRVJHRV9NU0ciCiBtc2dzdHIgItGB0YrQvtCx0YnQtdC90LjQtdGC0L4g0LfQsCDRgdC70LjQstCw0L3QtSBNRVJHRV9NU0cg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L3QviIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3OTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODM0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIGNvbW1pdCB0ZW1wbGF0ZSIKIG1zZ3N0ciAi0YjQsNCx0LvQvtC90YrRgiDQt9CwINC/0L7QtNCw0LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC30LDQv9Cw0LfQtdC9IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjgxMQorIzogYnVpbHRpbi9jb21taXQuYzo4NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtOTk5MiwxMCArMTI4ODIsMTAgQEAKICJcbiIKICLQmNC30LPQu9C10LbQtNCwLCDRh9C1INC/0L7QtNCw0LLQsNGC0LUg0YHQu9C40LLQsNC90LUuICDQkNC60L4g0YLQvtCy0LAg0L3QtSDQtSDRgtCw0LrQsCwg0LjQt9GC0YDQuNC50YLQtSDRhNCw0LnQu9CwOlxuIgogIlxuIgotIiAgJXNcbiIKKyIgICAgJXNcbiIKICLQuCDQvtC/0LjRgtCw0LnRgtC1INC+0YLQvdC+0LLQvi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MTYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTEwMDA4LDEwICsxMjg5OCwxMCBAQAogItCY0LfQs9C70LXQttC00LAsINGH0LUg0LjQt9Cy0YrRgNGI0LLQsNGC0LUg0L7RgtCx0YDQsNC90L4g0L/QvtC00LDQstCw0L3QtS4gINCQ0LrQviDRgtC+0LLQsCDQvdC1INC1INGC0LDQutCwLCDQuNC30YLRgNC40LnRgtC1ICIKICLRhNCw0LnQu9CwOlxuIgogIlxuIgotIiAgJXNcbiIKKyIgICAgJXNcbiIKICLQuCDQvtC/0LjRgtCw0LnRgtC1INC+0YLQvdC+0LLQvi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MjkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQbGVhc2UgZW50ZXIgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB5b3VyIGNoYW5nZXMuIExpbmVzIHN0YXJ0aW5nXG4iCkBAIC0xMDAyMCw3ICsxMjkxMCw3IEBACiAi0JLRitCy0LXQtNC10YLQtSDRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC30LAg0L/QvtC00LDQstCw0L3QtSDQvdCwINC/0YDQvtC80LXQvdC40YLQtS4gINCg0LXQtNC+0LLQtdGC0LUsINC60L7QuNGC0L4g0LfQsNC/0L7Rh9Cy0LDRglxuIgogItGBIOKAniVj4oCcLCDRidC1INCx0YrQtNCw0YIg0L/RgNC+0L/Rg9GB0L3QsNGC0LgsINCwINC/0YDQsNC30L3QviDRgdGK0L7QsdGJ0LXQvdC40LUg0L/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LAg0L/QvtC00LDQstCw0L3QtdGC0L4uXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODM3CisjOiBidWlsdGluL2NvbW1pdC5jOjg3OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgeW91ciBjaGFuZ2VzLiBMaW5lcyBzdGFydGluZ1xuIgpAQCAtMTAwMzEsMTU1ICsxMjkyMSwxNDcgQEAKICLRgSDigJ4lY+KAnCwg0YHRitGJ0L4g0YnQtSDQsdGK0LTQsNGCINCy0LrQu9GO0YfQtdC90Lgg4oCUINC80L7QttC1INC00LAg0LPQuCDQuNC30YLRgNC40LXRgtC1INCy0LjQtS4gINCf0YDQsNC30L3QviBcbiIKICLRgdGK0L7QsdGJ0LXQvdC40LUg0L/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LAg0L/QvtC00LDQstCw0L3QtdGC0L4uXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODU0CisjOiBidWlsdGluL2NvbW1pdC5jOjg5NgogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0F1dGhvcjogICAgJS4qcyA8JS4qcz4iCiBtc2dzdHIgIiVz0JDQstGC0L7RgDogICAlLipzIDwlLipzPiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4NjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzRGF0ZTogICAgICAlcyIKIG1zZ3N0ciAiJXPQlNCw0YLQsDogICAgJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODY5CisjOiBidWlsdGluL2NvbW1pdC5jOjkxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0NvbW1pdHRlcjogJS4qcyA8JS4qcz4iCiBtc2dzdHIgIiVz0J/QvtC00LDQstCw0Yk6ICUuKnMgPCUuKnM+IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjg4NworIzogYnVpbHRpbi9jb21taXQuYzo5MjkKIG1zZ2lkICJDYW5ub3QgcmVhZCBpbmRleCIKIG1zZ3N0ciAi0JjQvdC00LXQutGB0YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogYnVpbHRpbi9jb21taXQuYzo5NTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTk3CiBtc2dpZCAiRXJyb3IgYnVpbGRpbmcgdHJlZXMiCiBtc2dzdHIgItCT0YDQtdGI0LrQsCDQv9GA0Lgg0LjQt9Cz0YDQsNC20LTQsNC90LUg0L3QsCDQtNGK0YDQstC10YLQsNGC0LAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6OTY3IGJ1aWx0aW4vdGFnLmM6MjU4CisjOiBidWlsdGluL2NvbW1pdC5jOjEwMTEgYnVpbHRpbi90YWcuYzoyNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiUGxlYXNlIHN1cHBseSB0aGUgbWVzc2FnZSB1c2luZyBlaXRoZXIgLW0gb3IgLUYgb3B0aW9uLlxuIgogbXNnc3RyICLQn9C+0LTQsNC50YLQtSDRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INGBINC90Y/QutC+0Y8g0L7RgiDQvtC/0YbQuNC40YLQtSDigJ4tbeKAnCDQuNC70Lgg4oCeLUbigJwuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAxMQorIzogYnVpbHRpbi9jb21taXQuYzoxMDU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIi0tYXV0aG9yICclcycgaXMgbm90ICdOYW1lIDxlbWFpbD4nIGFuZCBtYXRjaGVzIG5vIGV4aXN0aW5nIGF1dGhvciIKIG1zZ3N0ciAiIgogItCe0L/RhtC40Y/RgtCwIOKAni0tYXV0aG9yICclcyfigJwg0L3QtSDQvtGC0LPQvtCy0LDRgNGPINC90LAg0YTQvtGA0LzQsMyA0YLQsCDigJ7QmNC80LUgPNC1LdC/0L7RidCwPuKAnCDQuCDQvdC1INGB0YrQstC/0LDQtNCwINGBICIKICLQvdC40LrQvtC5INCw0LLRgtC+0YAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAyNQorIzogYnVpbHRpbi9jb21taXQuYzoxMDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgaWdub3JlZCBtb2RlICclcyciCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvQtdC9INGA0LXQttC40Lwg0LfQsCDQuNCz0L3QvtGA0LjRgNCw0L3QuNGC0LUg0YTQsNC50LvQvtCy0LU6IOKAniVz4oCcIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwMzkgYnVpbHRpbi9jb21taXQuYzoxMjc2CisjOiBidWlsdGluL2NvbW1pdC5jOjEwODcgYnVpbHRpbi9jb21taXQuYzoxMzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdW50cmFja2VkIGZpbGVzIG1vZGUgJyVzJyIKIG1zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9C10L0g0YDQtdC20LjQvCDQt9CwINC90LXRgdC70LXQtNC10L3QuNGC0LUg0YTQsNC50LvQvtCy0LU6IOKAniVz4oCcIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwNzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNwogbXNnaWQgIi0tbG9uZyBhbmQgLXogYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAi0J7Qv9GG0LjQuNGC0LUg4oCeLS1sb25n4oCcINC4IOKAni164oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4LiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTEwCisjOiBidWlsdGluL2NvbW1pdC5jOjExNzEKIG1zZ2lkICJVc2luZyBib3RoIC0tcmVzZXQtYXV0aG9yIGFuZCAtLWF1dGhvciBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICLQntC/0YbQuNC40YLQtSDigJ4tLXJlc2V0LWF1dGhvcuKAnCDQuCDigJ4tLWF1dGhvcuKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuC4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTExOQorIzogYnVpbHRpbi9jb21taXQuYzoxMTgwCiBtc2dpZCAiWW91IGhhdmUgbm90aGluZyB0byBhbWVuZC4iCiBtc2dzdHIgItCd0Y/QvNCwINC60LDQutCy0L4g0LTQsCDQsdGK0LTQtSDQv9C+0L/RgNCw0LLQtdC90L4uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MwogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIC0tIGNhbm5vdCBhbWVuZC4iCiBtc2dzdHIgItCSINC80L7QvNC10L3RgtCwINGB0LUg0LjQt9Cy0YrRgNGI0LLQsCDRgdC70LjQstCw0L3QtSwg0L3QtSDQvNC+0LbQtdGC0LUg0LTQsCDQv9C+0L/RgNCw0LLRj9GC0LUuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4NQogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhIGNoZXJyeS1waWNrIC0tIGNhbm5vdCBhbWVuZC4iCiBtc2dzdHIgItCSINC80L7QvNC10L3RgtCwINGB0LUg0LjQt9Cy0YrRgNGI0LLQsCDQvtGC0LHQuNGA0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QtSwg0L3QtSDQvNC+0LbQtdGC0LUg0LTQsCDQv9C+0L/RgNCw0LLRj9GC0LUuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMjcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4OAogbXNnaWQgIk9wdGlvbnMgLS1zcXVhc2ggYW5kIC0tZml4dXAgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCiBtc2dzdHIgItCe0L/RhtC40LjRgtC1IOKAni0tc3F1YXNo4oCcINC4IOKAni0tZml4dXDigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LguIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE5OAogbXNnaWQgIk9ubHkgb25lIG9mIC1jLy1DLy1GLy0tZml4dXAgY2FuIGJlIHVzZWQuIgogbXNnc3RyICLQntC/0YbQuNC40YLQtSDigJ4tY+KAnCwg4oCeLUPigJwsIOKAni1G4oCcINC4IOKAni0tZml4dXDigJzigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LguIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIwMAogbXNnaWQgIk9wdGlvbiAtbSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCAtYy8tQy8tRi4iCiBtc2dzdHIgItCe0L/RhtC40Y/RgtCwIOKAni1t4oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgSDigJ4tY+KAnCwg4oCeLUPigJwg0Lgg4oCeLUbigJwuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNDcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIwOAogbXNnaWQgIi0tcmVzZXQtYXV0aG9yIGNhbiBiZSB1c2VkIG9ubHkgd2l0aCAtQywgLWMgb3IgLS1hbWVuZC4iCiBtc2dzdHIgIiIKICLQntC/0YbQuNGP0YLQsCDigJ4tLXJlc2V0LWF1dGhvcuKAnCDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9C/0L7Qu9C30LLQsCDRgdCw0LzQviDQt9Cw0LXQtNC90L4g0YEg4oCeLUPigJwsIOKAni1j4oCcINC40LvQuFxuIgogIuKAni0tYW1lbmTigJwuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIyNQogbXNnaWQgIk9ubHkgb25lIG9mIC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIGNhbiBiZSB1c2VkLiIKIG1zZ3N0ciAiIgogItCe0L/RhtC40LjRgtC1IOKAni0taW5jbHVkZeKAnCwg4oCeLS1vbmx54oCcLCDigJ4tLWFsbOKAnCwg4oCeLS1pbnRlcmFjdGl2ZeKAnCDQuCDigJ4tLXBhdGNo4oCcINGB0LBcbiIKICLQvdC10YHRitCy0LzQtdGB0YLQuNC80LguIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNjYKLW1zZ2lkICJObyBwYXRocyB3aXRoIC0taW5jbHVkZS8tLW9ubHkgZG9lcyBub3QgbWFrZSBzZW5zZS4iCi1tc2dzdHIgItCe0L/RhtC40LjRgtC1IOKAni0taW5jbHVkZeKAnCDQuCDigJ4tLW9ubHnigJwg0LjQt9C40YHQutCy0LDRgiDQsNGA0LPRg9C80LXQvdGC0LguIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjExODAgYnVpbHRpbi90YWcuYzo1NDYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIzMQogIywgYy1mb3JtYXQKLW1zZ2lkICJJbnZhbGlkIGNsZWFudXAgbW9kZSAlcyIKLW1zZ3N0ciAi0J3QtdGB0YrRidC10YHRgtCy0YPQstCw0Ykg0YDQtdC20LjQvCDQvdCwINC40LfRh9C40YHRgtCy0LDQvdC1IOKAniVz4oCcIgorbXNnaWQgInBhdGhzICclcyAuLi4nIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLWHigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGB0YrRgSDQt9Cw0LTQsNCy0LDQvdC10YLQviDQvdCwINC/0YrRgtC40YnQsDog4oCeJXPigKbigJwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4NQotbXNnaWQgIlBhdGhzIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZS4iCi1tc2dzdHIgItCe0L/RhtC40Y/RgtCwIOKAni1h4oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgdGK0YEg0LfQsNC00LDQstCw0L3QtdGC0L4g0L3QsCDQv9GK0YLQuNGJ0LAuIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTEgYnVpbHRpbi9jb21taXQuYzoxNDk1CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjIgYnVpbHRpbi9jb21taXQuYzoxNTI0CiBtc2dpZCAic2hvdyBzdGF0dXMgY29uY2lzZWx5IgogbXNnc3RyICLQutGA0LDRgtC60LAg0LjQvdGE0L7RgNC80LDRhtC40Y8g0LfQsCDRgdGK0YHRgtC+0Y/QvdC40LXRgtC+IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTMgYnVpbHRpbi9jb21taXQuYzoxNDk3CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjQgYnVpbHRpbi9jb21taXQuYzoxNTI2CiBtc2dpZCAic2hvdyBicmFuY2ggaW5mb3JtYXRpb24iCiBtc2dzdHIgItC40L3RhNC+0YDQvNCw0YbQuNGPINC30LAg0LrQu9C+0L3QuNGC0LUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxNQorIzogYnVpbHRpbi9jb21taXQuYzoxMzY2CiBtc2dpZCAic2hvdyBzdGFzaCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAi0LjQvdGE0L7RgNC80LDRhtC40Y8g0LfQsCDRgdC60LDRgtCw0L3QvtGC0L4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxNyBidWlsdGluL2NvbW1pdC5jOjE0OTkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2OCBidWlsdGluL2NvbW1pdC5jOjE1MjgKIG1zZ2lkICJjb21wdXRlIGZ1bGwgYWhlYWQvYmVoaW5kIHZhbHVlcyIKIG1zZ3N0ciAi0LjQt9GH0LjRgdC70Y/QstCw0L3QtSDQvdCwINGC0L7Rh9C90LjRgtC1INGB0YLQvtC50L3QvtGB0YLQuCDQvdCw0L/RgNC10LQv0L3QsNC30LDQtCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzE5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzAKIG1zZ2lkICJ2ZXJzaW9uIgogbXNnc3RyICLQstC10YDRgdC40Y8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxOSBidWlsdGluL2NvbW1pdC5jOjE1MDEgYnVpbHRpbi9wdXNoLmM6NTU4Ci0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjM5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzAgYnVpbHRpbi9jb21taXQuYzoxNTMwIGJ1aWx0aW4vcHVzaC5jOjU0OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY0MwogbXNnaWQgIm1hY2hpbmUtcmVhZGFibGUgb3V0cHV0IgogbXNnc3RyICLRhNC+0YDQvNCw0YIg0L3QsCDQuNC30YXQvtC00LAg0LfQsCDRh9C10YLQtdC90LUg0L7RgiDQv9GA0L7Qs9GA0LDQvNCwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjIgYnVpbHRpbi9jb21taXQuYzoxNTAzCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzMgYnVpbHRpbi9jb21taXQuYzoxNTMyCiBtc2dpZCAic2hvdyBzdGF0dXMgaW4gbG9uZyBmb3JtYXQgKGRlZmF1bHQpIgogbXNnc3RyICLQv9C+0LTRgNC+0LHQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGPINC30LAg0YHRitGB0YLQvtGP0L3QuNC10YLQviAo0YHRgtCw0L3QtNCw0YDRgtC90L4pIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjUgYnVpbHRpbi9jb21taXQuYzoxNTA2CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzYgYnVpbHRpbi9jb21taXQuYzoxNTM1CiBtc2dpZCAidGVybWluYXRlIGVudHJpZXMgd2l0aCBOVUwiCiBtc2dzdHIgItGA0LDQt9C00LXQu9GP0L3QtSDQvdCwINC10LvQtdC80LXQvdGC0LjRgtC1INGBINC90YPQu9C10LLQuNGPINC30L3QsNC6IOKAnk5VTOKAnCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzI3IGJ1aWx0aW4vY29tbWl0LmM6MTMzMSBidWlsdGluL2NvbW1pdC5jOjE1MDkKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA3IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDEwIGJ1aWx0aW4vcmViYXNlLmM6OTEwCi0jOiBidWlsdGluL3RhZy5jOjQwMAorIzogYnVpbHRpbi9jb21taXQuYzoxMzc4IGJ1aWx0aW4vY29tbWl0LmM6MTM4MiBidWlsdGluL2NvbW1pdC5jOjE1MzgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTUzIGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTU2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1OSBidWlsdGluL3JlYmFzZS5jOjE1NjkgcGFyc2Utb3B0aW9ucy5oOjMzNgogbXNnaWQgIm1vZGUiCiBtc2dzdHIgItCg0JXQltCY0JwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyOCBidWlsdGluL2NvbW1pdC5jOjE1MDkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3OSBidWlsdGluL2NvbW1pdC5jOjE1MzgKIG1zZ2lkICJzaG93IHVudHJhY2tlZCBmaWxlcywgb3B0aW9uYWwgbW9kZXM6IGFsbCwgbm9ybWFsLCBuby4gKERlZmF1bHQ6IGFsbCkiCiBtc2dzdHIgIiIKICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvdC10YHQu9C10LTQtdC90LjRgtC1INGE0LDQudC70L7QstC1LiAg0JLRitC30LzQvtC20L3QuNGC0LUg0KDQldCW0JjQnNC4INGB0LAg4oCeYWxs4oCcICjQv9C+0LTRgNC+0LHQvdCwICIKICLQuNC90YTQvtGA0LzQsNGG0LjRjyksIOKAnm5vcm1hbOKAnCAo0LrRgNCw0YLQutCwINC40L3RhNC+0YDQvNCw0YbQuNGPKSwg4oCebm/igJwgKNCx0LXQtyDQvdC10YHQu9C10LTQtdC90LjRgtC1INGE0LDQudC70L7QstC1KS4gICIKICLQodGC0LDQvdC00LDRgNGC0L3QuNGP0YIg0KDQldCW0JjQnCDQtTog4oCeYWxs4oCcLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzMyCisjOiBidWlsdGluL2NvbW1pdC5jOjEzODMKIG1zZ2lkICIiCiAic2hvdyBpZ25vcmVkIGZpbGVzLCBvcHRpb25hbCBtb2RlczogdHJhZGl0aW9uYWwsIG1hdGNoaW5nLCBuby4gKERlZmF1bHQ6ICIKICJ0cmFkaXRpb25hbCkiCkBAIC0xMDE4OCwxMSArMTMwNzAsMTEgQEAKICLigJ50cmFkaXRpb25hbOKAnCAo0YLRgNCw0LTQuNGG0LjQvtC90LXQvSksIOKAnm1hdGNoaW5n4oCcICjQvdCw0L/QsNGB0LLQsNGJ0LgpLCDigJ5ub+KAnCAo0LHQtdC3INC40LPQvdC+0YDQuNGA0LDQvdC40YLQtSAiCiAi0YTQsNC50LvQvtCy0LUpLiAg0KHRgtCw0L3QtNCw0YDRgtC90LjRj9GCINCg0JXQltCY0Jwg0LU6IOKAnnRyYWRpdGlvbmFs4oCcLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM0IHBhcnNlLW9wdGlvbnMuaDoxNjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4NSBwYXJzZS1vcHRpb25zLmg6MTkyCiBtc2dpZCAid2hlbiIKIG1zZ3N0ciAi0JrQntCT0JAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMzNQorIzogYnVpbHRpbi9jb21taXQuYzoxMzg2CiBtc2dpZCAiIgogImlnbm9yZSBjaGFuZ2VzIHRvIHN1Ym1vZHVsZXMsIG9wdGlvbmFsIHdoZW46IGFsbCwgZGlydHksIHVudHJhY2tlZC4gIgogIihEZWZhdWx0OiBhbGwpIgpAQCAtMTAyMDEsMjU3ICsxMzA4MywyNjAgQEAKICLQtdC00L3QsCDQvtGCIOKAnmFsbOKAnCAo0LLRgdC40YfQutC4KSwg4oCeZGlydHnigJwgKNGC0LXQt9C4INGBINC90LXQv9C+0LTQsNC00LXQvdC4INC/0YDQvtC80LXQvdC4KSwgIgogIuKAnnVudHJhY2tlZOKAnCAo0L3QtdGB0LvQtdC00LXQvdC4KSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM3CisjOiBidWlsdGluL2NvbW1pdC5jOjEzODgKIG1zZ2lkICJsaXN0IHVudHJhY2tlZCBmaWxlcyBpbiBjb2x1bW5zIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvdC10YHQu9C10LTQtdC90LjRgtC1INGE0LDQudC70L7QstC1INCyINC60L7Qu9C+0L3QuCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM4CisjOiBidWlsdGluL2NvbW1pdC5jOjEzODkKIG1zZ2lkICJkbyBub3QgZGV0ZWN0IHJlbmFtZXMiCiBtc2dzdHIgItCx0LXQtyDQt9Cw0YHQuNGH0LDQvdC1INC90LAg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC40Y/RgtCwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzNDAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM5MQogbXNnaWQgImRldGVjdCByZW5hbWVzLCBvcHRpb25hbGx5IHNldCBzaW1pbGFyaXR5IGluZGV4IgogbXNnc3RyICLQt9Cw0YHQuNGH0LDQvdC1INC90LAg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC40Y/RgtCwLCDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNC00LDQtNC1INC60L7QtdGE0LjRhtC40LXQvdGCINC90LAg0L/RgNC40LvQuNC60LAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MAorIzogYnVpbHRpbi9jb21taXQuYzoxNDExCiBtc2dpZCAiVW5zdXBwb3J0ZWQgY29tYmluYXRpb24gb2YgaWdub3JlZCBhbmQgdW50cmFja2VkLWZpbGVzIGFyZ3VtZW50cyIKIG1zZ3N0ciAi0J3QtdC/0L7QtNC00YrRgNC20LDQvdCwINC60L7QvNCx0LjQvdCw0YbQuNGPINC+0YIg0LDRgNCz0YPQvNC10L3RgtC4INC30LAg0LjQs9C90L7RgNC40YDQsNC90Lgg0Lgg0L3QtdGB0LvQtdC00LXQvdC4INGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NAogbXNnaWQgInN1cHByZXNzIHN1bW1hcnkgYWZ0ZXIgc3VjY2Vzc2Z1bCBjb21taXQiCiBtc2dzdHIgItCx0LXQtyDQuNC90YTQvtGA0LzQsNGG0LjRjyDRgdC70LXQtCDRg9GB0L/QtdGI0L3QviDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NQogbXNnaWQgInNob3cgZGlmZiBpbiBjb21taXQgbWVzc2FnZSB0ZW1wbGF0ZSIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINGA0LDQt9C70LjQutCw0YLQsCDQutGK0Lwg0YjQsNCx0LvQvtC90LAg0LfQsCDRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC/0YDQuCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NwogbXNnaWQgIkNvbW1pdCBtZXNzYWdlIG9wdGlvbnMiCiBtc2dzdHIgItCe0L/RhtC40Lgg0LfQsCDRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC/0YDQuCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjkgYnVpbHRpbi9tZXJnZS5jOjI2MyBidWlsdGluL3RhZy5jOjM5NworIzogYnVpbHRpbi9jb21taXQuYzoxNDk4IGJ1aWx0aW4vbWVyZ2UuYzoyNzUgYnVpbHRpbi90YWcuYzo0MTQKIG1zZ2lkICJyZWFkIG1lc3NhZ2UgZnJvbSBmaWxlIgogbXNnc3RyICLQstC30LjQvNCw0L3QtSDQvdCwINGB0YrQvtCx0YnQtdC90LjQtdGC0L4g0L7RgiDQpNCQ0JnQmyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcwCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTkKIG1zZ2lkICJhdXRob3IiCiBtc2dzdHIgItCQ0JLQotCe0KAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MAorIzogYnVpbHRpbi9jb21taXQuYzoxNDk5CiBtc2dpZCAib3ZlcnJpZGUgYXV0aG9yIGZvciBjb21taXQiCiBtc2dzdHIgItC30LDQtNCw0LLQsNC90LUg0L3QsCDQkNCS0KLQntCgINC30LAg0L/QvtC00LDQstCw0L3QtdGC0L4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MSBidWlsdGluL2djLmM6NTE4CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDAgYnVpbHRpbi9nYy5jOjUzOAogbXNnaWQgImRhdGUiCiBtc2dzdHIgItCU0JDQotCQIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMAogbXNnaWQgIm92ZXJyaWRlIGRhdGUgZm9yIGNvbW1pdCIKIG1zZ3N0ciAi0LfQsNC00LDQstCw0L3QtSDQvdCwINCU0JDQotCQINC30LAg0L/QvtC00LDQstCw0L3QtdGC0L4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MiBidWlsdGluL21lcmdlLmM6MjU5IGJ1aWx0aW4vbm90ZXMuYzo0MDkKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1NzIgYnVpbHRpbi90YWcuYzozOTUKLW1zZ2lkICJtZXNzYWdlIgotbXNnc3RyICLQodCq0J7QkdCp0JXQndCY0JUiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MgotbXNnaWQgImNvbW1pdCBtZXNzYWdlIgotbXNnc3RyICLQodCq0J7QkdCp0JXQndCY0JUg0L/RgNC4INC/0L7QtNCw0LLQsNC90LUiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MyBidWlsdGluL2NvbW1pdC5jOjE0NzQgYnVpbHRpbi9jb21taXQuYzoxNDc1Ci0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzYgcmVmLWZpbHRlci5oOjkyIHBhcnNlLW9wdGlvbnMuaDoyODAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMiBidWlsdGluL2NvbW1pdC5jOjE1MDMgYnVpbHRpbi9jb21taXQuYzoxNTA0CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDUgcGFyc2Utb3B0aW9ucy5oOjMyOCByZWYtZmlsdGVyLmg6OTIKIG1zZ2lkICJjb21taXQiCiBtc2dzdHIgItCf0J7QlNCQ0JLQkNCd0JUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MworIzogYnVpbHRpbi9jb21taXQuYzoxNTAyCiBtc2dpZCAicmV1c2UgYW5kIGVkaXQgbWVzc2FnZSBmcm9tIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgItC/0YDQtdC40LfQv9C+0LvQt9Cy0LDQvdC1INC4INGA0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC+0YIg0YPQutCw0LfQsNC90L7RgtC+INCf0J7QlNCQ0JLQkNCd0JUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NAorIzogYnVpbHRpbi9jb21taXQuYzoxNTAzCiBtc2dpZCAicmV1c2UgbWVzc2FnZSBmcm9tIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgItC/0YDQtdC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0YHRitC+0LHRidC10L3QuNC10YLQviDQvtGCINGD0LrQsNC30LDQvdC+0YLQviDQn9Ce0JTQkNCS0JDQndCVIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNAogbXNnaWQgInVzZSBhdXRvc3F1YXNoIGZvcm1hdHRlZCBtZXNzYWdlIHRvIGZpeHVwIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgIiIKICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINCw0LLRgtC+0LzQsNGC0LjRh9C90L7RgtC+INGB0YrQvtCx0YnQtdC90LjQtSDQt9CwINCy0LrQsNGA0LLQsNC90LUg0L3QsCDRg9C60LDQt9Cw0L3QvtGC0L4g0J/QntCU0JDQktCQ0J3QlSDQsiAiCiAi0L/RgNC10LTRhdC+0LTQvdC+0YLQviDQsdC10Lcg0YHQu9C10LTQsCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc2CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDUKIG1zZ2lkICJ1c2UgYXV0b3NxdWFzaCBmb3JtYXR0ZWQgbWVzc2FnZSB0byBzcXVhc2ggc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAiIgogItC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0LDQstGC0L7QvNCw0YLQuNGH0L3QvtGC0L4g0YHRitC+0LHRidC10L3QuNC1INC30LAg0LLQutCw0YDQstCw0L3QtSDQvdCwINGD0LrQsNC30LDQvdC+0YLQviDQn9Ce0JTQkNCS0JDQndCVINCyICIKICLQv9GA0LXQtNC90L7RgtC+IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNgogbXNnaWQgInRoZSBjb21taXQgaXMgYXV0aG9yZWQgYnkgbWUgbm93ICh1c2VkIHdpdGggLUMvLWMvLS1hbWVuZCkiCiBtc2dzdHIgIiIKICLRgdC80Y/QvdCwINC90LAg0LDQstGC0L7RgNCwINC00LAg0YHRitCy0L/QsNC00LAg0YEg0L/QvtC00LDQstCw0YnQuNGPICjQuNC30L/QvtC70LfQstCwINGB0LUg0YEg4oCeLUPigJwv4oCeLWPigJwv4oCeLS1hbWVuZOKAnCkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3OCBidWlsdGluL2xvZy5jOjE1MjAgYnVpbHRpbi9tZXJnZS5jOjI3NgotIzogYnVpbHRpbi9wdWxsLmM6MTU1IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA2CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDcgYnVpbHRpbi9sb2cuYzoxNjM0IGJ1aWx0aW4vbWVyZ2UuYzoyOTAKKyM6IGJ1aWx0aW4vcHVsbC5jOjE0NCBidWlsdGluL3JldmVydC5jOjExMAogbXNnaWQgImFkZCBTaWduZWQtb2ZmLWJ5OiIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINC/0L7Qu9C1INC30LAg0L/QvtC00L/QuNGBIOKAlCDigJ5TaWduZWQtb2ZmLWJ5OuKAnCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc5CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDgKIG1zZ2lkICJ1c2Ugc3BlY2lmaWVkIHRlbXBsYXRlIGZpbGUiCiBtc2dzdHIgItC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0YPQutCw0LfQsNC90LjRjyDRiNCw0LHQu9C+0L3QtdC9INCk0JDQmdCbIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwOQogbXNnaWQgImZvcmNlIGVkaXQgb2YgY29tbWl0IgogbXNnc3RyICLRgNC10LTQsNC60YLQuNGA0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QtSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDgxCi1tc2dpZCAiZGVmYXVsdCIKLW1zZ3N0ciAi0YHRgtCw0L3QtNCw0YDRgtC90L4iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MSBidWlsdGluL3RhZy5jOjQwMQotbXNnaWQgImhvdyB0byBzdHJpcCBzcGFjZXMgYW5kICNjb21tZW50cyBmcm9tIG1lc3NhZ2UiCi1tc2dzdHIgItC60L7QuCDQv9GA0LDQt9C90Lgg0LfQvdCw0YbQuCDQuCAj0LrQvtC80LXQvdGC0LDRgNC4INC00LAg0YHQtSDQvNCw0YXQsNGCINC+0YIg0YHRitC+0LHRidC10L3QuNGP0YLQsCIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDgyCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTEKIG1zZ2lkICJpbmNsdWRlIHN0YXR1cyBpbiBjb21taXQgbWVzc2FnZSB0ZW1wbGF0ZSIKIG1zZ3N0ciAi0LLQvNGK0LrQstCw0L3QtSDQvdCwINGB0YrRgdGC0L7Rj9C90LjQtdGC0L4g0LIg0YjQsNCx0LvQvtC90LAg0LfQsCDRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC/0YDQuCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODQgYnVpbHRpbi9tZXJnZS5jOjI3NCBidWlsdGluL3B1bGwuYzoxODUKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0Ci1tc2dpZCAiR1BHIHNpZ24gY29tbWl0IgotbXNnc3RyICLQv9C+0LTQv9C40YHQstCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LXRgtC+INGBIEdQRyIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDg3CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTYKIG1zZ2lkICJDb21taXQgY29udGVudHMgb3B0aW9ucyIKIG1zZ3N0ciAi0J7Qv9GG0LjQuCDQt9CwINC40LfQsdC+0YAg0L3QsCDRhNCw0LnQu9C+0LLQtSDQv9GA0Lgg0L/QvtC00LDQstCw0L3QtSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTcKIG1zZ2lkICJjb21taXQgYWxsIGNoYW5nZWQgZmlsZXMiCiBtc2dzdHIgItC/0L7QtNCw0LLQsNC90LUg0L3QsCDQstGB0LjRh9C60Lgg0L/RgNC+0LzQtdC90LXQvdC4INGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxOAogbXNnaWQgImFkZCBzcGVjaWZpZWQgZmlsZXMgdG8gaW5kZXggZm9yIGNvbW1pdCIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINGD0LrQsNC30LDQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSDQutGK0Lwg0LjQvdC00LXQutGB0LAg0LfQsCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxOQogbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGZpbGVzIgogbXNnc3RyICLQuNC90YLQtdGA0LDQutGC0LjQstC90L4g0LTQvtCx0LDQstGP0L3QtSDQvdCwINGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMAogbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGNoYW5nZXMiCiBtc2dzdHIgItC40L3RgtC10YDQsNC60YLQuNCy0L3QviDQtNC+0LHQsNCy0Y/QvdC1INC90LAg0L/RgNC+0LzQtdC90LgiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MgorIzogYnVpbHRpbi9jb21taXQuYzoxNTIxCiBtc2dpZCAiY29tbWl0IG9ubHkgc3BlY2lmaWVkIGZpbGVzIgogbXNnc3RyICLQv9C+0LTQsNCy0LDQvdC1INGB0LDQvNC+INC90LAg0YPQutCw0LfQsNC90LjRgtC1INGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMgogbXNnaWQgImJ5cGFzcyBwcmUtY29tbWl0IGFuZCBjb21taXQtbXNnIGhvb2tzIgogbXNnc3RyICIiCiAi0LHQtdC3INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg0LrRg9C60LjRgtC1INC/0YDQtdC00Lgg0L/QvtC00LDQstCw0L3QtSDQuCDQv9GA0Lgg0L/RgNC+0LzRj9C90LAg0L3QsCDRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC30LAgIgogItC/0L7QtNCw0LLQsNC90LUgKHByZS1jb21taXQg0LggY29tbWl0LW1zZykiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NAorIzogYnVpbHRpbi9jb21taXQuYzoxNTIzCiBtc2dpZCAic2hvdyB3aGF0IHdvdWxkIGJlIGNvbW1pdHRlZCIKIG1zZ3N0ciAi0L7RgtC/0LXRh9Cw0YLQstCw0L3QtSDQvdCwINGC0L7QstCwLCDQutC+0LXRgtC+INCx0Lgg0LHQuNC70L4g0L/QvtC00LDQtNC10L3QviIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTA3CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MzYKIG1zZ2lkICJhbWVuZCBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgItC/0L7Qv9GA0LDQstGP0L3QtSDQvdCwINC/0YDQtdC00LjRiNC90L7RgtC+INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwOAorIzogYnVpbHRpbi9jb21taXQuYzoxNTM3CiBtc2dpZCAiYnlwYXNzIHBvc3QtcmV3cml0ZSBob29rIgogbXNnc3RyICLQsdC10Lcg0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDQutGD0LrQsNGC0LAg0YHQu9C10LQg0L/RgNC10LfQsNC/0LjRgdCy0LDQvdC1IChwb3N0LXJld3JpdGUpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTU0NAogbXNnaWQgIm9rIHRvIHJlY29yZCBhbiBlbXB0eSBjaGFuZ2UiCiBtc2dzdHIgItC/0L7Qt9Cy0L7Qu9GP0LLQsNC90LUg0L3QsCDQv9GA0LDQt9C90Lgg0L/QvtC00LDQstCw0L3QuNGPIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTU0NgogbXNnaWQgIm9rIHRvIHJlY29yZCBhIGNoYW5nZSB3aXRoIGFuIGVtcHR5IG1lc3NhZ2UiCiBtc2dzdHIgItC/0L7Qt9Cy0L7Qu9GP0LLQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y8g0YEg0L/RgNCw0LfQvdC4INGB0YrQvtCx0YnQtdC90LjRjyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE2MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29ycnVwdCBNRVJHRV9IRUFEIGZpbGUgKCVzKSIKIG1zZ3N0ciAi0J/QvtCy0YDQtdC00LXQvSDRhNCw0LnQuyDQt9CwINCy0YrRgNGF0LAg0LfQsCDRgdC70LjQstCw0L3QtdGC0L4g4oCeTUVSR0VfSEVBROKAnCAoJXMpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1OTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTYyNgogbXNnaWQgImNvdWxkIG5vdCByZWFkIE1FUkdFX01PREUiCiBtc2dzdHIgItGA0LXQttC40LzRitGCINC90LAg0YHQu9C40LLQsNC90LUg4oCeTUVSR0VfTU9EReKAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjE0CisjOiBidWlsdGluL2NvbW1pdC5jOjE2NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgY29tbWl0IG1lc3NhZ2U6ICVzIgogbXNnc3RyICLRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC30LAg0L/QvtC00LDQstCw0L3QtSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvdC+OiAlcyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjI1CisjOiBidWlsdGluL2NvbW1pdC5jOjE2NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmcgY29tbWl0IGR1ZSB0byBlbXB0eSBjb21taXQgbWVzc2FnZS5cbiIKIG1zZ3N0ciAi0J3QtdC40LfQstGK0YDRiNCy0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QtSDQv9C+0YDQsNC00Lgg0L/RgNCw0LfQvdC+INGB0YrQvtCx0YnQtdC90LjQtS5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjMwCisjOiBidWlsdGluL2NvbW1pdC5jOjE2NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmcgY29tbWl0OyB5b3UgZGlkIG5vdCBlZGl0IHRoZSBtZXNzYWdlLlxuIgogbXNnc3RyICLQndC10LjQt9Cy0YrRgNGI0LLQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC1INC/0L7RgNCw0LTQuCDQvdC10YDQtdC00LDQutGC0LjRgNCw0L3QviDRgdGK0L7QsdGJ0LXQvdC40LUuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTY2NQorIzogYnVpbHRpbi9jb21taXQuYzoxNjkxCiBtc2dpZCAiIgogInJlcG9zaXRvcnkgaGFzIGJlZW4gdXBkYXRlZCwgYnV0IHVuYWJsZSB0byB3cml0ZVxuIgogIm5ld19pbmRleCBmaWxlLiBDaGVjayB0aGF0IGRpc2sgaXMgbm90IGZ1bGwgYW5kIHF1b3RhIGlzXG4iCi0ibm90IGV4Y2VlZGVkLCBhbmQgdGhlbiBcImdpdCByZXNldCBIRUFEXCIgdG8gcmVjb3Zlci4iCisibm90IGV4Y2VlZGVkLCBhbmQgdGhlbiBcImdpdCByZXN0b3JlIC0tc3RhZ2VkIDovXCIgdG8gcmVjb3Zlci4iCiBtc2dzdHIgIiIKICLRhdGA0LDQvdC40LvQuNGJ0LXRgtC+INC1INC+0LHQvdC+0LLQtdC90L4sINC90L4g0L3QvtCy0LjRj9GCINGE0LDQudC7INC30LAg0LjQvdC00LXQutGBIOKAnm5ld19pbmRleOKAnFxuIgogItC90LUg0LUg0LfQsNC/0LjRgdCw0L0uICDQn9GA0L7QstC10YDQtdGC0LUg0LTQsNC70Lgg0LTQuNGB0LrRitGCINC90LUg0LUg0L/RgNC10L/RitC70L3QtdC9INC40LvQuCDQvdC1INGB0YLQtVxuIgotItC/0YDQtdCy0LjRiNC40LvQuCDQtNC40YHQutC+0LLQsNGC0LAg0YHQuCDQutCy0L7RgtCwLiAg0KHQu9C10LQg0YLQvtCy0LAg0LjQt9C/0YrQu9C90LXRgtC1IOKAnmdpdCByZXNldCBIRUFE4oCcLiIKKyLQv9GA0LXQstC40YjQuNC70Lgg0LTQuNGB0LrQvtCy0LDRgtCwINGB0Lgg0LrQstC+0YLQsC4gINCX0LAg0LLRitC30YHRgtCw0L3QvtCy0Y/QstCw0L3QtSDQuNC30L/RitC70L3QtdGC0LU6XG4iCisiXG4iCisiICAgIGdpdCByZXN0b3JlIC0tc3RhZ2VkIDovIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEwCi1tc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKLW1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyINCU0JjQoF/QntCR0JXQmtCi0JhdIgotCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjExIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjMKLW1zZ2lkICJnaXQgY29tbWl0LWdyYXBoIHJlYWQgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi1tc2dzdHIgImdpdCBjb21taXQtZ3JhcGggcmVhZCBbLS1vYmplY3QtZGlyINCU0JjQoF/QntCR0JXQmtCi0JhdIgotCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTgKLW1zZ2lkICJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKLW1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgWy0tb2JqZWN0LWRpciDQlNCY0KBf0J7QkdCV0JrQotCYXSIKLQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMyBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjI4CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjExIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTcKIG1zZ2lkICIiCi0iZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1hcHBlbmRdIFstLXJlYWNoYWJsZXwtLSIKLSJzdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIgorImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPG9iamRpcj5dIFstLXNoYWxsb3ddIFstLVtuby1dcHJvZ3Jlc3NdIgogbXNnc3RyICIiCi0iZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyINCU0JjQoF/QntCR0JXQmtCi0JhdIFstLWFwcGVuZF0gWy0tcmVhY2hhYmxlfC0tIgotInN0ZGluLXBhY2tzfC0tc3RkaW4tY29tbWl0c10iCisiZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgWy0tb2JqZWN0LWRpciDQlNCY0KBf0J7QkdCV0JrQotCYXSBbLS1zaGFsbG93XSBbLS0iCisiW25vLV1wcm9ncmVzc10iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NDggYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3OAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzIgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxOTAgYnVpbHRpbi9mZXRjaC5jOjE1MwotIzogYnVpbHRpbi9sb2cuYzoxNTQwCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjIKK21zZ2lkICIiCisiZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1hcHBlbmR8LS1zcGxpdF0gWy0tIgorInJlYWNoYWJsZXwtLXN0ZGluLXBhY2tzfC0tc3RkaW4tY29tbWl0c10gWy0tW25vLV1wcm9ncmVzc10gPHNwbGl0IG9wdGlvbnM+IgorbXNnc3RyICIiCisiZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyINCU0JjQoF/QntCR0JXQmtCi0JhdIFstLWFwcGVuZHwtLXNwbGl0XSBbLS0iCisicmVhY2hhYmxlfC0tc3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSBbLS1bbm8tXXByb2dyZXNzXSDQntCf0KbQmNCYX9CX0JBf0KDQkNCX0JTQldCb0K/QndCVIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5kIG9iamVjdCBkaXJlY3RvcnkgbWF0Y2hpbmcgJXMiCittc2dzdHIgItC00LjRgNC10LrRgtC+0YDQuNGP0YLQsCDRgSDQvtCx0LXQutGC0LgsINC60L7Rj9GC0L4g0L7RgtCz0L7QstCw0YDRjyDQvdCwIOKAniVz4oCcLCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGC0LAiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NjggYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjUKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjEwIGJ1aWx0aW4vZmV0Y2guYzoxNzkgYnVpbHRpbi9sb2cuYzoxNjU3CiBtc2dpZCAiZGlyIgogbXNnc3RyICLQtNC40YDQtdC60YLQvtGA0LjRjyIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo0OSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjc5Ci0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzMyBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE5MQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo2OSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyNgorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMTEKIG1zZ2lkICJUaGUgb2JqZWN0IGRpcmVjdG9yeSB0byBzdG9yZSB0aGUgZ3JhcGgiCiBtc2dzdHIgItCU0JjQoNC10LrRgtC+0YDQuNGP0YLQsF/RgV/QntCR0JXQmtCi0Jgg0LfQsCDQt9Cw0L/QsNC30LLQsNC90LUg0L3QsCDQs9GA0LDMgNGE0LAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM1CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjcxCittc2dpZCAiaWYgdGhlIGNvbW1pdC1ncmFwaCBpcyBzcGxpdCwgb25seSB2ZXJpZnkgdGhlIHRpcCBmaWxlIgorbXNnc3RyICIiCisi0LDQutC+INCz0YDQsMyA0YTQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC1INGA0LDQt9C00YDQvtCx0LXQvSwg0LTQsCDRgdC1INC/0YDQvtCy0LXRgNGP0LLQsCDRgdCw0LzQviDRhNCw0LnQu9GK0YIg0L3QsCDQstGK0YDRhdCwIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjk0IHQvaGVscGVyL3Rlc3QtcmVhZC1ncmFwaC5jOjIzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBvcGVuIGNvbW1pdC1ncmFwaCAnJXMnIgorbXNnc3RyICLQk9GA0LDRhNGK0YIg0YEg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtGC0LLQvtGA0Lg6IOKAniVz4oCcIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyOAogbXNnaWQgInN0YXJ0IHdhbGsgYXQgYWxsIHJlZnMiCiBtc2dzdHIgItC+0LHRhdC+0LbQtNCw0L3QtdGC0L4g0LTQsCDQt9Cw0L/QvtGH0L3QtSDQvtGCINCy0YHQuNGH0LrQuCDRg9C60LDQt9Cw0YLQtdC70LgiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM3CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzMAogbXNnaWQgInNjYW4gcGFjay1pbmRleGVzIGxpc3RlZCBieSBzdGRpbiBmb3IgY29tbWl0cyIKIG1zZ3N0ciAiIgogItC/0YDQvtCy0LXRgNC60LAg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINC30LAg0LjQvdC00LXQutGB0LjRgtC1INC90LAg0L/QsNC60LXRgtC40YLQtSDQuNC30LHRgNC+0LXQvdC4INC90LAg0LrQvtC80LDQvdC00L3QuNGPINGA0LXQtCIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzkKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMyCiBtc2dpZCAic3RhcnQgd2FsayBhdCBjb21taXRzIGxpc3RlZCBieSBzdGRpbiIKIG1zZ3N0ciAi0LfQsNC/0L7Rh9Cy0LDQvdC1INC90LAg0L7QsdGF0L7QttC00LDQvdC10YLQviDQv9GA0Lgg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQv9C+0LTQsNC00LXQvdC4INC90LAg0YHRgtCw0L3QtNCw0YDRgtC90LjRjyDQstGF0L7QtCIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDEKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM0CiBtc2dpZCAiaW5jbHVkZSBhbGwgY29tbWl0cyBhbHJlYWR5IGluIHRoZSBjb21taXQtZ3JhcGggZmlsZSIKIG1zZ3N0ciAiIgogItCy0LrQu9GO0YfQstCw0L3QtSDQvdCwINCy0YHQuNGH0LrQuCDQv9C+0LTQsNCy0LDQvdC40Y8sINC60L7QuNGC0L4g0LLQtdGH0LUg0YHQsCDQstGK0LIg0YTQsNC50LvQsCDRgSDQs9GA0LDMgNGE0LAg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE1MAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzcKK21zZ2lkICJhbGxvdyB3cml0aW5nIGFuIGluY3JlbWVudGFsIGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICLQv9C+0LfQstC+0LvRj9Cy0LDQvdC1INC90LAg0LfQsNC/0LjRgSDQvdCwINC90LDRgNCw0YHRgtCy0LDRiSDRhNCw0LnQuyDRgSDQs9GA0LDMgNGE0LAg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzOSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0MworbXNnaWQgIm1heGltdW0gbnVtYmVyIG9mIGNvbW1pdHMgaW4gYSBub24tYmFzZSBzcGxpdCBjb21taXQtZ3JhcGgiCittc2dzdHIgItC80LDQutGB0LjQvNCw0LvQtdC9INCx0YDQvtC5INC/0L7QtNCw0LLQsNC90LjRjyDQsiDQvdC10LHQsNC30L7QstC+INC90LjQstC+INC90LAg0YDQsNC30LTRgNC+0LHQtdC9INCz0YDQsNGEIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0MQorbXNnaWQgIm1heGltdW0gcmF0aW8gYmV0d2VlbiB0d28gbGV2ZWxzIG9mIGEgc3BsaXQgY29tbWl0LWdyYXBoIgorbXNnc3RyICIiCisi0LzQsNC60YHQuNC80LDQu9C90L4g0L7RgtC90L7RiNC10L3QuNC1INC90LAg0LHRgNC+0Y8g0L/QvtC00LDQstCw0L3QuNGPINCyINC00LLQtSDQv9C+0YHQu9C10LTQvtCy0LDRgtC10LvQvdC4INC90LjQstCwINCyINGA0LDQt9C00YDQvtCx0LXQvSAiCisi0LPRgNCw0YQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTU5CiBtc2dpZCAidXNlIGF0IG1vc3Qgb25lIG9mIC0tcmVhY2hhYmxlLCAtLXN0ZGluLWNvbW1pdHMsIG9yIC0tc3RkaW4tcGFja3MiCiBtc2dzdHIgIiIKICLQvtC/0YbQuNC40YLQtSDigJ4tLXJlYWNoYWJsZeKAnCwg4oCeLS1zdGRpbi1jb21taXRz4oCcINC4IOKAni0tc3RkaW4tcGFja3PigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCkBAIC0xMDQ2MCwyMTIgKzEzMzQ1LDIxOSBAQAogbXNnaWQgImdpdCBjb25maWcgWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCBjb25maWcgW9Ce0J/QptCY0K/igKZdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEwMworIzogYnVpbHRpbi9jb25maWcuYzoxMDQgYnVpbHRpbi9lbnYtLWhlbHBlci5jOjIzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAtLXR5cGUgYXJndW1lbnQsICVzIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGCINCw0YDQs9GD0LzQtdC90YIg4oCeLS10eXBl4oCcOiAlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMTUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTE2CiBtc2dpZCAib25seSBvbmUgdHlwZSBhdCBhIHRpbWUiCiBtc2dzdHIgItGB0LDQvNC+INC/0L4g0LXQtNC40L0g0LLQuNC0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNAorIzogYnVpbHRpbi9jb25maWcuYzoxMjUKIG1zZ2lkICJDb25maWcgZmlsZSBsb2NhdGlvbiIKIG1zZ3N0ciAi0JzQtdGB0YLQvtC/0L7Qu9C+0LbQtdC90LjQtSDQvdCwINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3QuNGPINGE0LDQudC7IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNQorIzogYnVpbHRpbi9jb25maWcuYzoxMjYKIG1zZ2lkICJ1c2UgZ2xvYmFsIGNvbmZpZyBmaWxlIgogbXNnc3RyICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINCz0LvQvtCx0LDQu9C90LjRjyDQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC10L0g0YTQsNC50LsiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTI2CisjOiBidWlsdGluL2NvbmZpZy5jOjEyNwogbXNnaWQgInVzZSBzeXN0ZW0gY29uZmlnIGZpbGUiCiBtc2dzdHIgItC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0YHQuNGB0YLQtdC80L3QuNGPINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90LXQvSDRhNCw0LnQuyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI4CiBtc2dpZCAidXNlIHJlcG9zaXRvcnkgY29uZmlnIGZpbGUiCiBtc2dzdHIgItC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdC40Y8g0YTQsNC50Lsg0L3QsCDRhdGA0LDQvdC40LvQuNGJ0LXRgtC+IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyOAorIzogYnVpbHRpbi9jb25maWcuYzoxMjkKIG1zZ2lkICJ1c2UgcGVyLXdvcmt0cmVlIGNvbmZpZyBmaWxlIgogbXNnc3RyICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3QuNGPINGE0LDQudC7INC90LAg0YDQsNCx0L7RgtC90L7RgtC+INC60L7Qv9C40LUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTI5CisjOiBidWlsdGluL2NvbmZpZy5jOjEzMAogbXNnaWQgInVzZSBnaXZlbiBjb25maWcgZmlsZSIKIG1zZ3N0ciAi0LjQt9C/0L7Qu9C30LLQsNC90LUg0L3QsCDQt9Cw0LTQsNC00LXQvdC40Y8g0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QtdC9INCk0JDQmdCbIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMAorIzogYnVpbHRpbi9jb25maWcuYzoxMzEKIG1zZ2lkICJibG9iLWlkIgogbXNnc3RyICLQmNCU0JXQndCi0JjQpNCY0JrQkNCi0J7QoCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMxCiBtc2dpZCAicmVhZCBjb25maWcgZnJvbSBnaXZlbiBibG9iIG9iamVjdCIKIG1zZ3N0ciAiIgogItC40LfRh9C40YLQsNC90LUg0L3QsCDQutC+0L3RhNC40LPRg9GA0LDRhtC40Y/RgtCwINC+0YIgQkxPQiDRgSDRgtC+0LfQuCDQmNCU0JXQndCi0JjQpNCY0JrQkNCi0J7QoCDQvdCwINGB0YrQtNGK0YDQttCw0L3QuNC10YLQviIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMyCiBtc2dpZCAiQWN0aW9uIgogbXNnc3RyICLQlNC10LnRgdGC0LLQuNC1IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMgorIzogYnVpbHRpbi9jb25maWcuYzoxMzMKIG1zZ2lkICJnZXQgdmFsdWU6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHRgtC+0LnQvdC+0YHRgjog0JjQnNCVIFvQoNCV0JPQo9Cb0K/QoNCV0J1f0JjQl9Cg0JDQl1/Ql9CQX9Ch0KLQntCZ0J3QntCh0KLQotCQXSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM0CiBtc2dpZCAiZ2V0IGFsbCB2YWx1ZXM6IGtleSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQstGB0LjRh9C60Lgg0YHRgtC+0LnQvdC+0YHRgtC4OiDQutC70Y7RhyBb0KDQldCT0KPQm9Cv0KDQldCdX9CY0JfQoNCQ0Jdf0JfQkF/QodCi0J7QmdCd0J7QodCi0KLQkF0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM0CisjOiBidWlsdGluL2NvbmZpZy5jOjEzNQogbXNnaWQgImdldCB2YWx1ZXMgZm9yIHJlZ2V4cDogbmFtZS1yZWdleCBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICIiCiAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHRgtC+0LnQvdC+0YHRgtC40YLQtSDQt9CwINCg0JXQk9Cj0JvQr9Cg0J3QuNGPX9CY0JfQoNCQ0Jc6INCg0JXQk9Cj0JvQr9Cg0JXQnV/QmNCX0KDQkNCXX9CX0JBf0JjQnNCV0KLQniAiCiAiW9Cg0JXQk9Cj0JvQr9Cg0JXQnV/QmNCX0KDQkNCXX9CX0JBf0KHQotCe0JnQndCe0KHQotCi0JBdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNQorIzogYnVpbHRpbi9jb25maWcuYzoxMzYKIG1zZ2lkICJnZXQgdmFsdWUgc3BlY2lmaWMgZm9yIHRoZSBVUkw6IHNlY3Rpb25bLnZhcl0gVVJMIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRgdGC0L7QudC90L7RgdGC0YLQsCDQt9CwINGD0LrQsNC30LDQvdC40Y8g0LDQtNGA0LXRgTog0KDQkNCX0JTQldCbWy7Qn9Cg0J7QnNCV0J3Qm9CY0JLQkF0g0JDQlNCg0JXQoSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM3CiBtc2dpZCAicmVwbGFjZSBhbGwgbWF0Y2hpbmcgdmFyaWFibGVzOiBuYW1lIHZhbHVlIFt2YWx1ZV9yZWdleF0iCiBtc2dzdHIgIiIKICLQt9Cw0LzRj9C90LAg0L3QsCDQstGB0LjRh9C60Lgg0YHRitCy0L/QsNC00LDRidC4INC/0YDQvtC80LXQvdC70LjQstC4OiDQmNCc0JUg0KHQotCe0JnQndCe0KHQoiAiCiAiW9Cg0JXQk9Cj0JvQr9Cg0JXQnV/QmNCX0KDQkNCXX9CX0JBf0KHQotCe0JnQndCe0KHQotCi0JBdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNworIzogYnVpbHRpbi9jb25maWcuYzoxMzgKIG1zZ2lkICJhZGQgYSBuZXcgdmFyaWFibGU6IG5hbWUgdmFsdWUiCiBtc2dzdHIgItC00L7QsdCw0LLRj9C90LUg0L3QsCDQvdC+0LLQsCDQv9GA0L7QvNC10L3Qu9C40LLQsDog0JjQnNCVINCh0KLQntCZ0J3QntCh0KIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM4CisjOiBidWlsdGluL2NvbmZpZy5jOjEzOQogbXNnaWQgInJlbW92ZSBhIHZhcmlhYmxlOiBuYW1lIFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgItC40LfRgtGA0LjQstCw0L3QtSDQvdCwINC/0YDQvtC80LXQvdC70LjQstCwOiDQmNCc0JUgW9Cg0JXQk9Cj0JvQr9Cg0JXQnV/QmNCX0KDQkNCXX9CX0JBf0KHQotCe0JnQndCe0KHQotCi0JBdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzOQorIzogYnVpbHRpbi9jb25maWcuYzoxNDAKIG1zZ2lkICJyZW1vdmUgYWxsIG1hdGNoZXM6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAi0LjQt9GC0YDQuNCy0LDQvdC1INC90LAg0LLRgdC40YfQutC4INGB0YrQstC/0LDQtNCw0YnQuDog0JjQnNCVIFvQoNCV0JPQo9Cb0K/QoNCV0J1f0JjQl9Cg0JDQl1/Ql9CQX9Ch0KLQntCZ0J3QntCh0KLQotCQXSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQxCiBtc2dpZCAicmVuYW1lIHNlY3Rpb246IG9sZC1uYW1lIG5ldy1uYW1lIgogbXNnc3RyICLQv9GA0LXQuNC80LXQvdGD0LLQsNC90LUg0L3QsCDRgNCw0LfQtNC10Ls6INCh0KLQkNCg0J5f0JjQnNCVINCd0J7QktCeX9CY0JzQlSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQyCiBtc2dpZCAicmVtb3ZlIGEgc2VjdGlvbjogbmFtZSIKIG1zZ3N0ciAi0LjQt9GC0YDQuNCy0LDQvdC1INC90LAg0YDQsNC30LTQtdC7OiDQmNCc0JUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQyCisjOiBidWlsdGluL2NvbmZpZy5jOjE0MwogbXNnaWQgImxpc3QgYWxsIgogbXNnc3RyICLQuNC30LHRgNC+0Y/QstCw0L3QtSDQvdCwINCy0YHQuNGH0LrQuCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ0CiBtc2dpZCAib3BlbiBhbiBlZGl0b3IiCiBtc2dzdHIgItC+0YLQstCw0YDRj9C90LUg0L3QsCDRgNC10LTQsNC60YLQvtGAIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NAorIzogYnVpbHRpbi9jb25maWcuYzoxNDUKIG1zZ2lkICJmaW5kIHRoZSBjb2xvciBjb25maWd1cmVkOiBzbG90IFtkZWZhdWx0XSIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LfQsNC00LDQtNC10L3QuNGPINGG0LLRj9GCOiDQvdC+0LzQtdGAIFvRgdGC0LDQvdC00LDRgNGC0L3Qvl0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ1CisjOiBidWlsdGluL2NvbmZpZy5jOjE0NgogbXNnaWQgImZpbmQgdGhlIGNvbG9yIHNldHRpbmc6IHNsb3QgW3N0ZG91dC1pcy10dHldIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQt9Cw0LTQsNC00LXQvdC40Y8g0YbQstGP0YI6INC90L7QvNC10YAgKNGB0YLQsNC90LTQsNGA0YLQvdC40Y/RgiDQuNC30YXQvtC0INC1INGC0LXRgNC80LjQvdCw0LspIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NgorIzogYnVpbHRpbi9jb25maWcuYzoxNDcKIG1zZ2lkICJUeXBlIgogbXNnc3RyICLQktC40LQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ3CisjOiBidWlsdGluL2NvbmZpZy5jOjE0OCBidWlsdGluL2Vudi0taGVscGVyLmM6MzgKIG1zZ2lkICJ2YWx1ZSBpcyBnaXZlbiB0aGlzIHR5cGUiCiBtc2dzdHIgItGB0YLQvtC50L3QvtGB0YLRgtCwINC1INC+0YIg0YLQvtC30Lgg0LLQuNC0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0OAorIzogYnVpbHRpbi9jb25maWcuYzoxNDkKIG1zZ2lkICJ2YWx1ZSBpcyBcInRydWVcIiBvciBcImZhbHNlXCIiCiBtc2dzdHIgItCh0KLQntCZ0J3QntCh0KLQotCQINC1IOKAnnRydWXigJwgKNC40YHRgtC40L3QsCkg0LjQu9C4IOKAnmZhbHNl4oCcICjQu9GK0LbQsCkiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ5CisjOiBidWlsdGluL2NvbmZpZy5jOjE1MAogbXNnaWQgInZhbHVlIGlzIGRlY2ltYWwgbnVtYmVyIgogbXNnc3RyICLQodCi0J7QmdCd0J7QodCi0KLQkCDQtSDRhtGP0LvQviwg0LTQtdGB0LXRgtC40YfQvdC+INGH0LjRgdC70L4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUwCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MQogbXNnaWQgInZhbHVlIGlzIC0tYm9vbCBvciAtLWludCIKIG1zZ3N0ciAi0KHQotCe0JnQndCe0KHQotCi0JAg0LUg4oCeLS1ib29s4oCcICjQsdGD0LvQtdCy0LApINC40LvQuCDigJ4tLWludOKAnCAo0LTQtdGB0LXRgtC40YfQvdC+INGG0Y/Qu9C+INGH0LjRgdC70L4pIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1MQorIzogYnVpbHRpbi9jb25maWcuYzoxNTIKIG1zZ2lkICJ2YWx1ZSBpcyBhIHBhdGggKGZpbGUgb3IgZGlyZWN0b3J5IG5hbWUpIgogbXNnc3RyICLQodCi0J7QmdCd0J7QodCi0KLQkCDQtSDQv9GK0YIgKNC00L4g0YTQsNC50Lsg0LjQu9C4INC00LjRgNC10LrRgtC+0YDQuNGPKSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUzCiBtc2dpZCAidmFsdWUgaXMgYW4gZXhwaXJ5IGRhdGUiCiBtc2dzdHIgItGB0YLQvtC50L3QvtGB0YLRgtCwINC1INC/0LXRgNC40L7QtCDQvdCwINCy0LDQu9C40LTQvdC+0YHRgi/Qt9Cw0L/QsNC30LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUzCisjOiBidWlsdGluL2NvbmZpZy5jOjE1NAogbXNnaWQgIk90aGVyIgogbXNnc3RyICLQlNGA0YPQs9C4IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NAorIzogYnVpbHRpbi9jb25maWcuYzoxNTUKIG1zZ2lkICJ0ZXJtaW5hdGUgdmFsdWVzIHdpdGggTlVMIGJ5dGUiCiBtc2dzdHIgItGA0LDQt9C00LXQu9GP0L3QtSDQvdCwINGB0YLQvtC50L3QvtGB0YLQuNGC0LUg0YEg0L3Rg9C70LXQstC40Y8g0LfQvdCw0Log4oCeTlVM4oCcIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NQorIzogYnVpbHRpbi9jb25maWcuYzoxNTYKIG1zZ2lkICJzaG93IHZhcmlhYmxlIG5hbWVzIG9ubHkiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINC40LzQtdC90LDRgtCwINC90LAg0L/RgNC+0LzQtdC90LvQuNCy0LjRgtC1IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NgorIzogYnVpbHRpbi9jb25maWcuYzoxNTcKIG1zZ2lkICJyZXNwZWN0IGluY2x1ZGUgZGlyZWN0aXZlcyBvbiBsb29rdXAiCiBtc2dzdHIgItC/0YDQuCDRgtGK0YDRgdC10L3QtSDQtNCwINGB0LUg0YPQstCw0LbQsNGCINC4INC00LjRgNC10LrRgtC40LLQuNGC0LUg0LfQsCDQstC60LvRjtGH0LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU3CisjOiBidWlsdGluL2NvbmZpZy5jOjE1OAogbXNnaWQgInNob3cgb3JpZ2luIG9mIGNvbmZpZyAoZmlsZSwgc3RhbmRhcmQgaW5wdXQsIGJsb2IsIGNvbW1hbmQgbGluZSkiCiBtc2dzdHIgIiIKICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvNGP0YHRgtC+0YLQviDQvdCwINC30LDQtNCw0LLQsNC90LUg0L3QsCDQvdCw0YHRgtGA0L7QudC60LDRgtCwICjRhNCw0LnQuywg0YHRgtCw0L3QtNCw0YDRgtC10L0g0LLRhdC+0LQsICIKICLQvtCx0LXQutGCLUJMT0IsINC60L7QvNCw0L3QtNC10L0g0YDQtdC0KSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU5Cittc2dpZCAic2hvdyBzY29wZSBvZiBjb25maWcgKHdvcmt0cmVlLCBsb2NhbCwgZ2xvYmFsLCBzeXN0ZW0sIGNvbW1hbmQpIgorbXNnc3RyICIiCisi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L7QsdGF0LLQsNGC0LAg0L3QsCDQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAnndvcmt0cmVl4oCcICjRgNCw0LHQvtGC0L3QviDQtNGK0YDQstC+KSwgIgorIuKAnmxvY2Fs4oCcICjRhdGA0LDQvdC40LvQuNGJ0LUpLCDigJ5nbG9iYWzigJwgKNC/0L7RgtGA0LXQsdC40YLQtdC7KSwg4oCec3lzdGVt4oCcICjRgdC40YHRgtC10LzQsCksICIKKyLigJ5jb21tYW5k4oCcICjQutC+0LzQsNC90LTQsCkiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTYwIGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MAogbXNnaWQgInZhbHVlIgogbXNnc3RyICLQodCi0J7QmdCd0J7QodCiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1OAorIzogYnVpbHRpbi9jb25maWcuYzoxNjAKIG1zZ2lkICJ3aXRoIC0tZ2V0LCB1c2UgZGVmYXVsdCB2YWx1ZSB3aGVuIG1pc3NpbmcgZW50cnkiCiBtc2dzdHIgItGBIOKAni0tZ2V04oCcINGB0LUg0LjQt9C/0L7Qu9C30LLQsCDRgdGC0LDQvdC00LDRgNGC0L3QsCDQodCi0J7QmdCd0J7QodCiINC/0YDQuCDQu9C40L/RgdCy0LDRidCwIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE3MQorIzogYnVpbHRpbi9jb25maWcuYzoxNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAid3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cywgc2hvdWxkIGJlICVkIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQsdGA0L7QuSDQsNGA0LPRg9C80LXQvdGC0LgsINGC0YDRj9Cx0LLQsCDQtNCwINC1INGC0L7Rh9C90L4gJWQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTczCisjOiBidWlsdGluL2NvbmZpZy5jOjE3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgZnJvbSAlZCB0byAlZCIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0LHRgNC+0Lkg0LDRgNCz0YPQvNC10L3RgtC4LCDRgtGA0Y/QsdCy0LAg0LTQsCDQtSDQvtGCICVkINC00L4gJWQg0LLQutC70Y7Rh9C40YLQtdC70L3QviIKIAotIzogYnVpbHRpbi9jb25maWcuYzozMDcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MzI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQga2V5IHBhdHRlcm46ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDRiNCw0LHQu9C+0L0g0LfQsCDQutC70Y7Rhzog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MzQzCisjOiBidWlsdGluL2NvbmZpZy5jOjM2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZm9ybWF0IGRlZmF1bHQgY29uZmlnIHZhbHVlOiAlcyIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INGE0L7RgNC80LDRgtC40YDQsNC90LUg0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3QsNGC0LAg0YHRgtC+0LnQvdC+0YHRgiDQvdCwINC90LDRgdGC0YDQvtC50LrQsDogJXMiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDAwCisjOiBidWlsdGluL2NvbmZpZy5jOjQxNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcGFyc2UgY29sb3IgJyVzJyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LDQvdCw0LvQuNC30LjRgNCwINC60LDRgtC+INGG0LLRj9GCIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjQ0MgorIzogYnVpbHRpbi9jb25maWcuYzo0NTkKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgZGVmYXVsdCBjb2xvciB2YWx1ZSIKIG1zZ3N0ciAi0L3QtdGA0LDQt9C/0L7Qt9C90LDRgtCwINGB0YLQvtC50L3QvtGB0YIg0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINGG0LLRj9GCIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjQ5NSBidWlsdGluL2NvbmZpZy5jOjc0MQorIzogYnVpbHRpbi9jb25maWcuYzo1MTIgYnVpbHRpbi9jb25maWcuYzo3NjgKIG1zZ2lkICJub3QgaW4gYSBnaXQgZGlyZWN0b3J5IgogbXNnc3RyICLQvdC1INC1INCyINC00LjRgNC10LrRgtC+0YDQuNGPINC/0L7QtCBHaXQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDk4CisjOiBidWlsdGluL2NvbmZpZy5jOjUxNQogbXNnaWQgIndyaXRpbmcgdG8gc3RkaW4gaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAi0L3QtSDRgdC1INC/0L7QtNC00YrRgNC20LAg0LfQsNC/0LjRgdCy0LDQvdC1INCyINGB0YLQsNC90LTQsNGA0YLQvdC40Y8g0LLRhdC+0LQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NTAxCisjOiBidWlsdGluL2NvbmZpZy5jOjUxOAogbXNnaWQgIndyaXRpbmcgY29uZmlnIGJsb2JzIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgItC+0LHQtdC60YLQuC1CTE9CINCyINC90LDRgdGC0YDQvtC50LrQuNGC0LUg0L3QtSDRgdC1INC/0L7QtNC00YrRgNC20LDRgiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo1ODYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIjIFRoaXMgaXMgR2l0J3MgcGVyLXVzZXIgY29uZmlndXJhdGlvbiBmaWxlLlxuIgpAQCAtMTA2ODAsMjMgKzEzNTcyLDIzIEBACiAiI1x0bmFtZSA9ICVzXG4iCiAiI1x0ZW1haWwgPSAlc1xuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYxMAorIzogYnVpbHRpbi9jb25maWcuYzo2MjcKIG1zZ2lkICJvbmx5IG9uZSBjb25maWcgZmlsZSBhdCBhIHRpbWUiCiBtc2dzdHIgItGB0LDQvNC+INC/0L4g0LXQtNC40L0g0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QtdC9INGE0LDQudC7IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYxNQorIzogYnVpbHRpbi9jb25maWcuYzo2MzIKIG1zZ2lkICItLWxvY2FsIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIuKAni0tbG9jYWzigJwg0LzQvtC20LUg0LTQsCDRgdC1INC40LfQv9C+0LvQt9Cy0LAg0YHQsNC80L4g0LIg0YXRgNCw0L3QuNC70LjRidC1IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYxOAorIzogYnVpbHRpbi9jb25maWcuYzo2MzUKIG1zZ2lkICItLWJsb2IgY2FuIG9ubHkgYmUgdXNlZCBpbnNpZGUgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi4oCeLS1ibG9i4oCcINC80L7QttC1INC00LAg0YHQtSDQuNC30L/QvtC70LfQstCwINGB0LDQvNC+INCyINGF0YDQsNC90LjQu9C40YnQtSIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MzcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjU1CiBtc2dpZCAiJEhPTUUgbm90IHNldCIKIG1zZ3N0ciAi0L/RgNC+0LzQtdC90LvQuNCy0LDRgtCwIOKAnkhPTUXigJwg0L3QtSDQtSDQt9Cw0LTQsNC00LXQvdCwIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjY1NworIzogYnVpbHRpbi9jb25maWcuYzo2NzkKIG1zZ2lkICIiCiAiLS13b3JrdHJlZSBjYW5ub3QgYmUgdXNlZCB3aXRoIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMgdW5sZXNzIHRoZSBjb25maWdcbiIKICJleHRlbnNpb24gd29ya3RyZWVDb25maWcgaXMgZW5hYmxlZC4gUGxlYXNlIHJlYWQgXCJDT05GSUdVUkFUSU9OIEZJTEVcIlxuIgpAQCAtMTA3MDcsMjAgKzEzNTk5LDIwIEBACiAi0L/QvtCy0LXRh9C1INC40L3RhNC+0YDQvNCw0YbQuNGPINCy0LjQttGC0LUg0YDQsNC30LTQtdC70LAg4oCeQ09ORklHVVJBVElPTiBGSUxF4oCcINCyXG4iCiAi4oCeZ2l0IGhlbHAgd29ya3RyZWXigJwiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6Njg3CisjOiBidWlsdGluL2NvbmZpZy5jOjcxNAogbXNnaWQgIi0tZ2V0LWNvbG9yIGFuZCB2YXJpYWJsZSB0eXBlIGFyZSBpbmNvaGVyZW50IgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLWdldC1jb2xvcuKAnCDQvdC1INGB0YrQvtGC0LLQtdGC0YHRgtCy0LAg0L3QsCDQstC40LTQsCDQvdCwINC/0YDQvtC80LXQvdC70LjQstCw0YLQsCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2OTIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzE5CiBtc2dpZCAib25seSBvbmUgYWN0aW9uIGF0IGEgdGltZSIKIG1zZ3N0ciAi0YHQsNC80L4g0L/QviDQtdC00L3QviDQtNC10LnRgdGC0LLQuNC1IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjcwNQorIzogYnVpbHRpbi9jb25maWcuYzo3MzIKIG1zZ2lkICItLW5hbWUtb25seSBpcyBvbmx5IGFwcGxpY2FibGUgdG8gLS1saXN0IG9yIC0tZ2V0LXJlZ2V4cCIKIG1zZ3N0ciAiIgogItC+0L/RhtC40Y/RgtCwIOKAni0tbmFtZS1vbmx54oCcINC1INC/0YDQuNC70L7QttC40LzQsCDRgdCw0LzQviDQutGK0Lwg0L7Qv9GG0LjQuNGC0LUg4oCeLS1saXN04oCcINC4IOKAni0tZ2V0LXJlZ2V4cOKAnCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MTEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzM4CiBtc2dpZCAiIgogIi0tc2hvdy1vcmlnaW4gaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCwgYW5kIC0tIgogImxpc3QiCkBAIC0xMDcyOCwzMyArMTM2MjAsMzMgQEAKICLQvtC/0YbQuNGP0YLQsCDigJ4tLXNob3ctb3JpZ2lu4oCcINC1INC/0YDQuNC70L7QttC40LzQsCDRgdCw0LzQviDQutGK0Lwg0L7Qv9GG0LjQuNGC0LUg4oCeLS1nZXTigJwsIOKAni0tZ2V0LWFsbOKAnCwgIgogIuKAni0tZ2V0LXJlZ2V4cOKAnCDQuCDigJ4tLWxpc3TigJwiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzE3CisjOiBidWlsdGluL2NvbmZpZy5jOjc0NAogbXNnaWQgIi0tZGVmYXVsdCBpcyBvbmx5IGFwcGxpY2FibGUgdG8gLS1nZXQiCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tZGVmYXVsdOKAnCDQtSDQv9GA0LjQu9C+0LbQuNC80LAg0YHQsNC80L4g0LrRitC8INC+0L/RhtC40Y/RgtCwIOKAni0tZ2V04oCcIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjczMAorIzogYnVpbHRpbi9jb25maWcuYzo3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgY29uZmlnIGZpbGUgJyVzJyIKIG1zZ3N0ciAi0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdC40Y/RgiDRhNCw0LnQuyDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MzMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzYwCiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBjb25maWcgZmlsZShzKSIKIG1zZ3N0ciAi0LPRgNC10YjQutCwINC/0YDQuCDQvtCx0YDQsNCx0L7RgtC60LDRgtCwINC90LAg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QtdC9INGE0LDQudC7IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc0MworIzogYnVpbHRpbi9jb25maWcuYzo3NzAKIG1zZ2lkICJlZGl0aW5nIHN0ZGluIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgItC90LUg0YHQtSDQv9C+0LTQtNGK0YDQttCwINGA0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINCy0YXQvtC0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc0NQorIzogYnVpbHRpbi9jb25maWcuYzo3NzIKIG1zZ2lkICJlZGl0aW5nIGJsb2JzIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgItC90LUg0YHQtSDQv9C+0LTQtNGK0YDQttCwINGA0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDQvtCx0LXQutGC0LgtQkxPQiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3NTkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6Nzg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjcmVhdGUgY29uZmlndXJhdGlvbiBmaWxlICVzIgogbXNnc3RyICLQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC90LjRj9GCINGE0LDQudC7IOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDRgdGK0LfQtNCw0LTQtdC9IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc3MgorIzogYnVpbHRpbi9jb25maWcuYzo3OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNhbm5vdCBvdmVyd3JpdGUgbXVsdGlwbGUgdmFsdWVzIHdpdGggYSBzaW5nbGUgdmFsdWVcbiIKQEAgLTEwNzY0LDcgKzEzNjU2LDcgQEAKICLQl9CwINC00LAg0L/RgNC+0LzQtdC90LjRgtC1IOKAniVz4oCcLCDQv9C+0LvQt9Cy0LDQudGC0LUg0YDQtdCz0YPQu9GP0YDQtdC9INC40LfRgNCw0Lcg0LjQu9C4INC+0L/RhtC40LjRgtC1IOKAni0tYWRk4oCcINC4IOKAni0tIgogInJlcGxhY2UtYWxs4oCcLiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo4NDYgYnVpbHRpbi9jb25maWcuYzo4NTcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6ODczIGJ1aWx0aW4vY29uZmlnLmM6ODg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggc2VjdGlvbjogJXMiCiBtc2dzdHIgItGC0LDQutGK0LIg0YDQsNC30LfQtdC7INC90Y/QvNCwOiAlcyIKQEAgLTEwNzk3LDM3ICsxMzY4OSwzNyBAQAogbXNnaWQgImFubm90YXRlZCIKIG1zZ3N0ciAi0LDQvdC+0YLQuNGA0LDQvdC+IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MjcyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc1CiAjLCBjLWZvcm1hdAogbXNnaWQgImFubm90YXRlZCB0YWcgJXMgbm90IGF2YWlsYWJsZSIKIG1zZ3N0ciAi0L3QtSDRgdGK0YnQtdGB0YLQstGD0LLQsCDQsNC90L7RgtC40YDQsNC9INC10YLQuNC60LXRgiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3NgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJhbm5vdGF0ZWQgdGFnICVzIGhhcyBubyBlbWJlZGRlZCBuYW1lIgogbXNnc3RyICLQsiDQsNC90L7RgtC40YDQsNC90LjRjyDQtdGC0LjQutC10YIg4oCeJXPigJwg0LvQuNC/0YHQstCwINCy0LPRgNCw0LTQtdC90L4g0LjQvNC1IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIGlzIHJlYWxseSAnJXMnIGhlcmUiCiBtc2dzdHIgItC10YLQuNC60LXRgtGK0YIg4oCeJXPigJwg0YLRg9C6INC1INCy0YHRitGJ0L3QvtGB0YIg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gdGFnIGV4YWN0bHkgbWF0Y2hlcyAnJXMnIgogbXNnc3RyICLQvdC40LrQvtC5INC10YLQuNC60LXRgiDQvdC1INC90LDQv9Cw0YHQstCwINGC0L7Rh9C90L4g4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gZXhhY3QgbWF0Y2ggb24gcmVmcyBvciB0YWdzLCBzZWFyY2hpbmcgdG8gZGVzY3JpYmVcbiIKIG1zZ3N0ciAi0J3QuNC60L7RjyDQstC10YDRgdC40Y8g0Lgg0LXRgtC40LrQtdGCINC90LUg0L3QsNC/0LDRgdCy0LDRgiDRgtC+0YfQvdC+LiAg0KLRitGA0YHQuCDRgdC1INC/0L4g0L7Qv9C40YHQsNC90LjQtVxuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mzc4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mzk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZpbmlzaGVkIHNlYXJjaCBhdCAlc1xuIgogbXNnc3RyICLRgtGK0YDRgdC10L3QtdGC0L4g0L/RgNC40LrQu9GO0YfQuCDQv9GA0Lgg4oCeJXPigJxcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQwNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQyMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gYW5ub3RhdGVkIHRhZ3MgY2FuIGRlc2NyaWJlICclcycuXG4iCkBAIC0xMDgzNiw3ICsxMzcyOCw3IEBACiAi0J3QuNC60L7QuSDQsNC90L7RgtC40YDQsNC9INC10YLQuNC60LXRgiDQvdC1INC+0L/QuNGB0LLQsCDigJ4lc+KAnC5cbiIKICLQodGK0YnQtdGB0YLQstGD0LLQsNGCINC4INC90LXQsNC90L7RgtC40YDQsNC90Lgg0LXRgtC40LrQtdGC0LguICDQn9GA0L7QsdCy0LDQudGC0LUg0YEg0L7Qv9GG0LjRj9GC0LAg4oCeLS10YWdz4oCcLiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQwOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQyNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gdGFncyBjYW4gZGVzY3JpYmUgJyVzJy5cbiIKQEAgLTEwODQ1LDEyICsxMzczNywxMiBAQAogItCd0LjQutC+0Lkg0LXRgtC40LrQtdGCINC90LUg0L7Qv9C40YHQstCwIOKAniVz4oCcLlxuIgogItCf0YDQvtCx0LLQsNC50YLQtSDRgSDQvtC/0YbQuNGP0YLQsCDigJ4tLWFsd2F5c+KAnCDQuNC70Lgg0YHRitC30LTQsNC50YLQtSDQtdGC0LjQutC10YLQuC4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MzgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJhdmVyc2VkICVsdSBjb21taXRzXG4iCiBtc2dzdHIgItC/0YDQtdGC0YrRgNGB0LXQvdC4INGB0LAgJWx1INC/0L7QtNCw0LLQsNC90LjRj1xuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDQxCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJtb3JlIHRoYW4gJWkgdGFncyBmb3VuZDsgbGlzdGVkICVpIG1vc3QgcmVjZW50XG4iCkBAIC0xMDg1OSwxMjEgKzEzNzUxLDEyMSBAQAogItC+0YLQutGA0LjRgtC4INGB0LAg0L3QsNC0ICVpINC10YLQuNC60LXRgtCwLCDQuNC30LLQtdC00LXQvdC4INGB0LAg0L/QvtGB0LvQtdC00L3QuNGC0LUgJWksXG4iCiAi0YLRitGA0YHQtdC90LXRgtC+INCx0LUg0L/RgNC10LrRgNCw0YLQtdC90L4g0L/RgNC4IOKAniVz4oCcLlxuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTA5CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTI2CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlc2NyaWJlICVzXG4iCiBtc2dzdHIgItC+0L/QuNGB0LDQvdC40LUg0L3QsCDigJ4lc+KAnFxuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTEyIGJ1aWx0aW4vbG9nLmM6NTEzCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIG9iamVjdCBuYW1lICVzIgogbXNnc3RyICLQndC10L/RgNCw0LLQuNC70L3QviDQuNC80LUg0L3QsCDQvtCx0LXQutGCIOKAniVz4oCcIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTIwCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5laXRoZXIgYSBjb21taXQgbm9yIGJsb2IiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LUg0L3QuNGC0L4g0L/QvtC00LDQstCw0L3QtSwg0L3QuNGC0L4g0L7QsdC10LrRgi1CTE9CIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUxCiBtc2dpZCAiZmluZCB0aGUgdGFnIHRoYXQgY29tZXMgYWZ0ZXIgdGhlIGNvbW1pdCIKIG1zZ3N0ciAi0L7RgtC60YDQuNCy0LDQvdC1INC90LAg0LXRgtC40LrQtdGC0LAsINC60L7QudGC0L4g0YHQu9C10LTQstCwINC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzUKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTIKIG1zZ2lkICJkZWJ1ZyBzZWFyY2ggc3RyYXRlZ3kgb24gc3RkZXJyIgogbXNnc3RyICIiCiAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y8g0LfQsCDRgtGA0LDRgdC40YDQsNC90LUg0L3QsCDRgdGC0YDQsNGC0LXQs9C40Y/RgtCwINC30LAg0YLRitGA0YHQtdC90LUg0L3QsCAiCiAi0YHRgtCw0L3QtNCw0YDRgtC90LDRgtCwINCz0YDQtdGI0LrQsCIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzNgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MwogbXNnaWQgInVzZSBhbnkgcmVmIgogbXNnc3RyICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINC/0YDQvtC40LfQstC+0LvQtdC9INGD0LrQsNC30LDRgtC10LsiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzcKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTQKIG1zZ2lkICJ1c2UgYW55IHRhZywgZXZlbiB1bmFubm90YXRlZCIKIG1zZ3N0ciAi0LjQt9C/0L7Qu9C30LLQsNC90LUg0L3QsCDQstGB0LXQutC4INC10YLQuNC60LXRgiDigJQg0LLQutC70Y7Rh9C40YLQtdC70L3QviDQuCDQvdC10LDQvdC+0YLQuNGA0LDQvdC40YLQtSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NQogbXNnaWQgImFsd2F5cyB1c2UgbG9uZyBmb3JtYXQiCiBtc2dzdHIgItCy0LjQvdCw0LPQuCDQtNCwINGB0LUg0L/QvtC70LfQstCwINC00YrQu9Cz0LjRj9GCINGE0L7RgNC80LDRgiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NgogbXNnaWQgIm9ubHkgZm9sbG93IGZpcnN0IHBhcmVudCIKIG1zZ3N0ciAi0L/RgNC+0YHQu9C10LTRj9Cy0LDQvdC1INGB0LDQvNC+INC90LAg0L/RitGA0LLQuNGPINGA0L7QtNC40YLQtdC7IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU5CiBtc2dpZCAib25seSBvdXRwdXQgZXhhY3QgbWF0Y2hlcyIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INGB0LDQvNC+INC90LAg0YLQvtGH0L3QuNGC0LUg0YHRitCy0L/QsNC00LXQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjEKIG1zZ2lkICJjb25zaWRlciA8bj4gbW9zdCByZWNlbnQgdGFncyAoZGVmYXVsdDogMTApIgogbXNnc3RyICLQtNCwINGB0LUg0YLRitGA0YHQuCDRgdCw0LzQviDQsiDRgtC+0LfQuCDQkdCg0J7QmSDQv9C+0YHQu9C10LTQvdC4INC10YLQuNC60LXRgtC4ICjRgdGC0LDQvdC00LDRgNGC0L3QvjogMTApIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ2CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTYzCiBtc2dpZCAib25seSBjb25zaWRlciB0YWdzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKIG1zZ3N0ciAi0LTQsCDRgdC1INGC0YrRgNGB0Lgg0YHQsNC80L4g0LjQt9C80LXQttC00YMg0LXRgtC40LrQtdGC0LjRgtC1INC90LDQv9Cw0YHQstCw0YnQuCDRgtC+0LfQuCDQqNCQ0JHQm9Ce0J0iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjUKIG1zZ2lkICJkbyBub3QgY29uc2lkZXIgdGFncyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgItC00LAg0L3QtSDRgdC1INGC0YrRgNGB0Lgg0LjQt9C80LXQttC00YMg0LXRgtC40LrQtdGC0LjRgtC1INC90LDQv9Cw0YHQstCw0YnQuCDRgtC+0LfQuCDQqNCQ0JHQm9Ce0J0iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTAgYnVpbHRpbi9uYW1lLXJldi5jOjQyNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2NyBidWlsdGluL25hbWUtcmV2LmM6NTM1CiBtc2dpZCAic2hvdyBhYmJyZXZpYXRlZCBjb21taXQgb2JqZWN0IGFzIGZhbGxiYWNrIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRgdGK0LrRgNCw0YLQtdC90L4g0LjQvNC1INC90LAg0L7QsdC10LrRgiDQutCw0YLQviDRgNC10LfQtdGA0LLQtdC9INCy0LDRgNC40LDQvdGCIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUxIGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjggYnVpbHRpbi9kZXNjcmliZS5jOjU3MQogbXNnaWQgIm1hcmsiCiBtc2dzdHIgItCc0JDQoNCa0JXQoCIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2OQogbXNnaWQgImFwcGVuZCA8bWFyaz4gb24gZGlydHkgd29ya2luZyB0cmVlIChkZWZhdWx0OiBcIi1kaXJ0eVwiKSIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINGC0LDQutGK0LIg0JzQkNCg0JrQldCgINC90LAg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4gKNGB0YLQsNC90LTQsNGA0YLQvdC+INC1IOKAni1kaXJ0eeKAnCkiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTUKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NzIKIG1zZ2lkICJhcHBlbmQgPG1hcms+IG9uIGJyb2tlbiB3b3JraW5nIHRyZWUgKGRlZmF1bHQ6IFwiLWJyb2tlblwiKSIKIG1zZ3N0ciAiIgogItC00L7QsdCw0LLRj9C90LUg0L3QsCDRgtCw0LrRitCyINCc0JDQoNCa0JXQoCDQvdCwINGB0YfRg9C/0LXQvdC+0YLQviDRgNCw0LHQvtGC0L3QviDQtNGK0YDQstC+ICjRgdGC0LDQvdC00LDRgNGC0L3QviDQtSDigJ4tYnJva2Vu4oCcKSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU3MworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU5MAogbXNnaWQgIi0tbG9uZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFiYnJldj0wIgogbXNnc3RyICLQntC/0YbQuNC40YLQtSDigJ4tLWxvbmfigJwg0Lgg4oCeLS1hYmJyZXY9MOKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjYwMgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjYxOQogbXNnaWQgIk5vIG5hbWVzIGZvdW5kLCBjYW5ub3QgZGVzY3JpYmUgYW55dGhpbmcuIgogbXNnc3RyICLQndC1INGB0LAg0L7RgtC60YDQuNGC0Lgg0LjQvNC10L3QsCDigJQg0L3QuNGJ0L4g0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0L/QuNGB0LDQvdC+LiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjY1MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjY3MAogbXNnaWQgIi0tZGlydHkgaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLWRpcnR54oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgSDRg9C60LDQt9Cw0YLQtdC7INC60YrQvCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NjU0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjcyCiBtc2dpZCAiLS1icm9rZW4gaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLWJyb2tlbuKAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg0YPQutCw0LfQsNGC0LXQuyDQutGK0Lwg0L/QvtC00LDQstCw0L3QtSIKIAotIzogYnVpbHRpbi9kaWZmLmM6ODMKKyM6IGJ1aWx0aW4vZGlmZi5jOjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IG5vdCBhIHJlZ3VsYXIgZmlsZSBvciBzeW1saW5rIgogbXNnc3RyICLigJ4lc+KAnDog0L3QtSDQtSDQvdC40YLQviDQvtCx0LjQutC90L7QstC10L0g0YTQsNC50LssINC90LjRgtC+INGB0LjQvNCy0L7Qu9C90LAg0LLRgNGK0LfQutCwIgogCi0jOiBidWlsdGluL2RpZmYuYzoyMzQKKyM6IGJ1aWx0aW4vZGlmZi5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9wdGlvbjogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINC+0L/RhtC40Y86ICVzIgogCi0jOiBidWlsdGluL2RpZmYuYzozNjMKKyM6IGJ1aWx0aW4vZGlmZi5jOjM1MAogbXNnaWQgIk5vdCBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICLQndC1INC1INGF0YDQsNC90LjQu9C40YnQtSDQvdCwIEdpdCIKIAotIzogYnVpbHRpbi9kaWZmLmM6NDA3CisjOiBidWlsdGluL2RpZmYuYzozOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvYmplY3QgJyVzJyBnaXZlbi4iCiBtc2dzdHIgItC30LDQtNCw0LTQtdC9INC1INC90LXQv9GA0LDQstC40LvQtdC9INC+0LHQtdC60YIg4oCeJXPigJwuIgogCi0jOiBidWlsdGluL2RpZmYuYzo0MTYKKyM6IGJ1aWx0aW4vZGlmZi5jOjQwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJtb3JlIHRoYW4gdHdvIGJsb2JzIGdpdmVuOiAnJXMnIgogbXNnc3RyICLQt9Cw0LTQsNC00LXQvdC4INGB0LAg0L/QvtCy0LXRh9C1INC+0YIgMiDQvtCx0LXQutGC0LAtQkxPQjog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjQyMQorIzogYnVpbHRpbi9kaWZmLmM6NDA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuaGFuZGxlZCBvYmplY3QgJyVzJyBnaXZlbi4iCiBtc2dzdHIgItC30LDQtNCw0LTQtdC9INC1INC90LXQv9C+0LTQtNGK0YDQttCw0L0g0L7QsdC10LrRgiDigJ4lc+KAnC4iCkBAIC0xMTAxMCw1NSArMTM5MDIsNTUgQEAKICLQutC+0LzQsdC40L3QuNGA0LDQvdC40YLQtSDRhNC+0YDQvNCw0YLQuCDQvdCwINGA0LDQt9C70LjQutC40YLQtSAo4oCeLWPigJwg0Lgg4oCeLS1jY+KAnCkg0L3QtSDRgdC1INC/0L7QtNC00YrRgNC20LDRglxuIgogItCyINGA0LXQttC40LzQsCDQt9CwINGA0LDQt9C70LjQutC4INCy0YrRgNGF0YMg0LTQuNGA0LXQutGC0L7RgNC40LggKOKAni1k4oCcINC4IOKAni0tZGlyLWRpZmbigJwpLiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjYzMworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjYzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJib3RoIGZpbGVzIG1vZGlmaWVkOiAnJXMnIGFuZCAnJXMnLiIKIG1zZ3N0ciAi0Lgg0LTQstCw0YLQsCDRhNCw0LnQu9CwINGB0LAg0L/RgNC+0LzQtdC90LXQvdC4OiDigJ4lc+KAnCDQuCDigJ4lc+KAnC4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzUKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzYKIG1zZ2lkICJ3b3JraW5nIHRyZWUgZmlsZSBoYXMgYmVlbiBsZWZ0LiIKIG1zZ3N0ciAi0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0LUg0LjQt9C+0YHRgtCw0LLQtdC90L4uIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInRlbXBvcmFyeSBmaWxlcyBleGlzdCBpbiAnJXMnLiIKIG1zZ3N0ciAi0LIg4oCeJXPigJwg0LjQvNCwINCy0YDQtdC80LXQvdC90Lgg0YTQsNC50LvQvtCy0LUuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ3CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ4CiBtc2dpZCAieW91IG1heSB3YW50IHRvIGNsZWFudXAgb3IgcmVjb3ZlciB0aGVzZS4iCiBtc2dzdHIgItCy0YrQt9C80L7QttC90L4g0LUg0LTQsCDQs9C4INC40LfRh9C40YHRgtC40YLQtSDQuNC70Lgg0LLRitC30YHRgtCw0L3QvtCy0LjRgtC1IgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6Njk2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6Njk3CiBtc2dpZCAidXNlIGBkaWZmLmd1aXRvb2xgIGluc3RlYWQgb2YgYGRpZmYudG9vbGAiCiBtc2dzdHIgItC40LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeZGlmZi5ndWl0b29s4oCcINCy0LzQtdGB0YLQviDigJ5kaWZmLnRvb2zigJwiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTgKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTkKIG1zZ2lkICJwZXJmb3JtIGEgZnVsbC1kaXJlY3RvcnkgZGlmZiIKIG1zZ3N0ciAi0YDQsNC30LvQuNC60LAg0L/QviDQtNC40YDQtdC60YLQvtGA0LjQuCIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwMAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwMQogbXNnaWQgImRvIG5vdCBwcm9tcHQgYmVmb3JlIGxhdW5jaGluZyBhIGRpZmYgdG9vbCIKIG1zZ3N0ciAi0YHRgtCw0YDRgtC40YDQsNC90LUg0L3QsCDQn9Cg0J7Qk9Cg0JDQnNCQ0YLQsCDQt9CwINGA0LDQt9C70LjQutC4INCx0LXQtyDQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1IgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzA1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzA2CiBtc2dpZCAidXNlIHN5bWxpbmtzIGluIGRpci1kaWZmIG1vZGUiCiBtc2dzdHIgItGB0LvQtdC00LLQsNC90LUg0L3QsCDRgdC40LzQstC+0LvQvdC40YLQtSDQstGA0YrQt9C60Lgg0L/RgNC4INGA0LDQt9C70LjQutCwINC/0L4g0LTQuNGA0LXQutGC0L7RgNC40LgiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDYKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDcKIG1zZ2lkICJ0b29sIgogbXNnc3RyICLQn9Cg0J7Qk9Cg0JDQnNCQIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzA3CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzA4CiBtc2dpZCAidXNlIHRoZSBzcGVjaWZpZWQgZGlmZiB0b29sIgogbXNnc3RyICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINGD0LrQsNC30LDQvdCw0YLQsCDQn9Cg0J7Qk9Cg0JDQnNCQIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzA5CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEwCiBtc2dpZCAicHJpbnQgYSBsaXN0IG9mIGRpZmYgdG9vbHMgdGhhdCBtYXkgYmUgdXNlZCB3aXRoIGAtLXRvb2xgIgogbXNnc3RyICIiCiAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHQv9C40YHRitC6INGBINCy0YHQuNGH0LrQuCDQn9Cg0J7Qk9Cg0JDQnNC4LCDQutC+0LjRgtC+INC80L7QttC1INC00LAg0YHQtSDQv9C+0LvQt9Cy0LDRgiDRgSDQvtC/0YbQuNGP0YLQsCDigJ4tLSIKICJ0b29s4oCcIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzEyCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEzCiBtc2dpZCAiIgogIm1ha2UgJ2dpdC1kaWZmdG9vbCcgZXhpdCB3aGVuIGFuIGludm9rZWQgZGlmZiB0b29sIHJldHVybnMgYSBub24gLSB6ZXJvIGV4aXQgIgogImNvZGUiCkBAIC0xMTA2NiwxNjEgKzEzOTU4LDI0OSBAQAogIuKAnmdpdC1kaWZmdG9vbOKAnCDQtNCwINGB0L/RgNC1INGA0LDQsdC+0YLQsCwg0LrQvtCz0LDRgtC+INGB0YLQsNGA0YLQuNGA0LDQvdCw0YLQsCDQn9Cg0J7Qk9Cg0JDQnNCQINC30LDQstGK0YDRiNC4INGBICIKICLQvdC10L3Rg9C70LXQsiDQutC+0LQiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTUKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTYKIG1zZ2lkICJzcGVjaWZ5IGEgY3VzdG9tIGNvbW1hbmQgZm9yIHZpZXdpbmcgZGlmZnMiCiBtc2dzdHIgItC60L7QvNCw0L3QtNCwINC30LAg0YDQsNC30LPQu9C10LbQtNCw0L3QtSDQvdCwINGA0LDQt9C70LjQutC4IgogCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE3Cittc2dpZCAicGFzc2VkIHRvIGBkaWZmYCIKK21zZ3N0ciAi0L/QvtC00LDQstCwINGB0LUg0LrRitC8IOKAnmRpZmbigJwiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzIKK21zZ2lkICJkaWZmdG9vbCByZXF1aXJlcyB3b3JrdHJlZSBvciAtLW5vLWluZGV4IgorbXNnc3RyICLigJ5naXQtZGlmZnRvb2zigJwg0LjQt9C40YHQutCy0LAg0YDQsNCx0L7RgtC90L4g0LTRitGA0LLQviDQuNC70Lgg0L7Qv9GG0LjRj9GC0LAg4oCeLS1uby1pbmRleOKAnCIKKwogIzogYnVpbHRpbi9kaWZmdG9vbC5jOjczOQorbXNnaWQgIi0tZGlyLWRpZmYgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1uby1pbmRleCIKK21zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeLS1kaXItZGlmZuKAnCDQuCDigJ4tLW5vLWluZGV44oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzQyCittc2dpZCAiLS1ndWksIC0tdG9vbCBhbmQgLS1leHRjbWQgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeLS1ndWnigJwsIOKAni0tdG9vbOKAnCDQuCDigJ4tLWV4dGNtZOKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCDQtdC00L3QsCDRgSDQtNGA0YPQs9CwIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzUwCiBtc2dpZCAibm8gPHRvb2w+IGdpdmVuIGZvciAtLXRvb2w9PHRvb2w+IgogbXNnc3RyICLQvdC1INC1INC30LDQtNCw0LTQtdC90LAg0L/RgNC+0LPRgNCw0LzQsCDQt9CwIOKAni0tdG9vbD3Qn9Cg0J7Qk9Cg0JDQnNCQ4oCcIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzQ2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzU3CiBtc2dpZCAibm8gPGNtZD4gZ2l2ZW4gZm9yIC0tZXh0Y21kPTxjbWQ+IgogbXNnc3RyICLQvdC1INC1INC30LDQtNCw0LTQtdC90LAg0LrQvtC80LDQvdC00LAg0LfQsCDigJ4tLWV4dGNtZD3QmtCe0JzQkNCd0JTQkOKAnCIKIAorIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjYKK21zZ2lkICJnaXQgZW52LS1oZWxwZXIgLS10eXBlPVtib29sfHVsb25nXSA8b3B0aW9ucz4gPGVudi12YXI+IgorbXNnc3RyICJnaXQgZW52LS1oZWxwZXIgLS10eXBlPVtib29sfHVsb25nXSDQntCf0KbQmNCYINCf0KDQntCc0JXQndCb0JjQktCYIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6MzcgYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk4Cittc2dpZCAidHlwZSIKK21zZ3N0ciAi0JLQmNCUIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NDEKK21zZ2lkICJkZWZhdWx0IGZvciBnaXRfZW52XyooLi4uKSB0byBmYWxsIGJhY2sgb24iCittc2dzdHIgItGB0YLQsNC90LTQsNGA0YLQvdCwLCDRgNC10LfQtdGA0LLQvdCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCDigJ5naXRfZW52Xyoo4oCmKeKAnCIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjQzCittc2dpZCAiYmUgcXVpZXQgb25seSB1c2UgZ2l0X2Vudl8qKCkgdmFsdWUgYXMgZXhpdCBjb2RlIgorbXNnc3RyICIiCisi0LHQtdC3INC40LfQstC10LbQtNCw0L3QtSDQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGPIOKAlCDRgdGC0L7QudC90L7RgdGC0YLQsCDQvdCwIOKAnmdpdF9lbnZfKigp4oCcINC00LAg0LUg0LjQt9GF0L7QtNC10L0g0LrQvtC0IgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAtLWRlZmF1bHQnIGV4cGVjdHMgYSBib29sZWFuIHZhbHVlIHdpdGggYC0tdHlwZT1ib29sYCwgbm90IGAlc2AiCittc2dzdHIgIiIKKyLQvtC/0YbQuNGP0YLQsCDigJ4tLWRlZmF1bHTigJwg0LjQt9C40YHQutCy0LAg0LHRg9C70LXQstCwINGB0YLQvtC50L3QvtGB0YIg0L/RgNC4IOKAni0tdHlwZT1ib29s4oCcLCDQsCDQvdC1IOKAniVz4oCcIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9wdGlvbiBgLS1kZWZhdWx0JyBleHBlY3RzIGFuIHVuc2lnbmVkIGxvbmcgdmFsdWUgd2l0aCBgLS10eXBlPXVsb25nYCwgbm90IGAiCisiJXNgIgorbXNnc3RyICIiCisi0L7Qv9GG0LjRj9GC0LAg4oCeLS1kZWZhdWx04oCcINC40LfQuNGB0LrQstCwINGG0LXQu9C+0YfQuNGB0LvQtdC90LAg0YHRgtC+0LnQvdC+0YHRgiDQsdC10Lcg0LfQvdCw0Log0L/RgNC4IOKAni0tIgorInR5cGU9dWxvbmfigJwsINCwINC90LUg4oCeJXPigJwiCisKICM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoyOQogbXNnaWQgImdpdCBmYXN0LWV4cG9ydCBbcmV2LWxpc3Qtb3B0c10iCiBtc2dzdHIgImdpdCBmYXN0LWV4cG9ydCBb0J7Qn9Cm0JjQmF/Ql9CQX9Ch0J/QmNCh0KrQmtCQX9ChX9CS0JXQoNCh0JjQmF0iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6ODUzCittc2dpZCAiRXJyb3I6IENhbm5vdCBleHBvcnQgbmVzdGVkIHRhZ3MgdW5sZXNzIC0tbWFyay10YWdzIGlzIHNwZWNpZmllZC4iCittc2dzdHIgIiIKKyLQk9GA0LXRiNC60LA6INC90LXQv9GA0LXQutC40YLQtSDQtdGC0LjQutC10YLQuCDQvdC1INGB0LUg0LjQt9C90LDRgdGP0YIsINC+0YHQstC10L0g0LDQutC+INC90LUg0LfQsNC00LDQtNC10YLQtSDigJ4tLW1hcmstdGFnc+KAnC4iCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTUyCiBtc2dpZCAic2hvdyBwcm9ncmVzcyBhZnRlciA8bj4gb2JqZWN0cyIKIG1zZ3N0ciAi0KHRitC+0LHRidC10L3QuNC1INC30LAg0L3QsNC/0YDQtdC00YrQutCwINC90LAg0LLRgdC10LrQuCDRgtCw0LrRitCyINCR0KDQntCZINC+0LHQtdC60YLQsCIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMDgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTU0CiBtc2dpZCAic2VsZWN0IGhhbmRsaW5nIG9mIHNpZ25lZCB0YWdzIgogbXNnc3RyICLQmtCw0Log0LTQsCDRgdC1INC+0LHRgNCw0LHQvtGC0LLQsNGCINC/0L7QtNC/0LjRgdCw0L3QuNGC0LUg0LXRgtC40LrQtdGC0LgiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDExCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NwogbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiB0YWdzIHRoYXQgdGFnIGZpbHRlcmVkIG9iamVjdHMiCiBtc2dzdHIgItCa0LDQuiDQtNCwINGB0LUg0L7QsdGA0LDQsdC+0YLQstCw0YIg0LXRgtC40LrQtdGC0LjRgtC1INC90LAg0YTQuNC70YLRgNC40YDQsNC90LjRgtC1INC+0LHQtdC60YLQuCIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTQKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTYwCittc2dpZCAic2VsZWN0IGhhbmRsaW5nIG9mIGNvbW1pdCBtZXNzYWdlcyBpbiBhbiBhbHRlcm5hdGUgZW5jb2RpbmciCittc2dzdHIgIiIKKyLQutCw0Log0LTQsCDRgdC1INC+0LHRgNCw0LHQvtGC0LLQsNGCINGB0YrQvtCx0YnQtdC90LjRj9GC0LAg0LfQsCDQv9C+0LTQsNCy0LDQvdC1LCDQutC+0LjRgtC+INGB0LAg0LIg0LTRgNGD0LPQviDQutC+0LTQuNGA0LDQvdC1IgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2MwogbXNnaWQgIkR1bXAgbWFya3MgdG8gdGhpcyBmaWxlIgogbXNnc3RyICLQl9Cw0L/QsNC30LLQsNC90LUg0L3QsCDQvNCw0YDQutC10YDQuNGC0LUg0LIg0YLQvtC30Lgg0KTQkNCZ0JsiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDE2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2NQogbXNnaWQgIkltcG9ydCBtYXJrcyBmcm9tIHRoaXMgZmlsZSIKIG1zZ3N0ciAi0JLQvdCw0YHRj9C90LUg0L3QsCDQvNCw0YDQutC10YDQuNGC0LUg0L7RgiDRgtC+0LfQuCDQpNCQ0JnQmyIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY5Cittc2dpZCAiSW1wb3J0IG1hcmtzIGZyb20gdGhpcyBmaWxlIGlmIGl0IGV4aXN0cyIKK21zZ3N0ciAi0JLQvdCw0YHRj9C90LUg0L3QsCDQvNCw0YDQutC10YDQuNGC0LUg0L7RgiDRgtC+0LfQuCDQpNCQ0JnQmywg0LDQutC+INGB0YrRidC10YHRgtCy0YPQstCwIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3MQogbXNnaWQgIkZha2UgYSB0YWdnZXIgd2hlbiB0YWdzIGxhY2sgb25lIgogbXNnc3RyICLQlNCwINGB0LUg0LjQt9C/0L7Qu9C30LLQsCDQuNC30LrRg9GB0YLQstC10L3QviDQuNC80LUg0L3QsCDRh9C+0LLQtdC6INC/0YDQuCDQu9C40L/RgdCwINC90LAg0LfQsNC00LDQstCw0Ykg0LXRgtC40LrQtdGC0LAiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDIwCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3MwogbXNnaWQgIk91dHB1dCBmdWxsIHRyZWUgZm9yIGVhY2ggY29tbWl0IgogbXNnc3RyICLQmNC30LLQtdC20LTQsNC90LUg0L3QsCDRhtGP0LvQvtGC0L4g0LTRitGA0LLQviDQt9CwINCy0YHRj9C60L4g0L/QvtC00LDQstCw0L3QtSIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc1CiBtc2dpZCAiVXNlIHRoZSBkb25lIGZlYXR1cmUgdG8gdGVybWluYXRlIHRoZSBzdHJlYW0iCiBtc2dzdHIgItCY0LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0LzQsNGA0LrQtdGAINC30LAg0LfQsNCy0YrRgNGI0LLQsNC90LUg0L3QsCDQv9C+0YLQvtC60LAiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDIzCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NgogbXNnaWQgIlNraXAgb3V0cHV0IG9mIGJsb2IgZGF0YSIKIG1zZ3N0ciAi0JHQtdC3INC40LfQstC10LbQtNCw0L3QtSDQvdCwINGB0YrQtNGK0YDQttCw0L3QuNC10YLQviDQvdCwINC+0LHQtdC60YLQuNGC0LUtQkxPQiIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjQgYnVpbHRpbi9sb2cuYzoxNTg4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NyBidWlsdGluL2xvZy5jOjE3MDUKIG1zZ2lkICJyZWZzcGVjIgogbXNnc3RyICLQo9Ca0JDQl9CQ0KLQldCbX9Cd0JBf0JLQldCg0KHQmNCvIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyNQorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzgKIG1zZ2lkICJBcHBseSByZWZzcGVjIHRvIGV4cG9ydGVkIHJlZnMiCiBtc2dzdHIgItCf0YDQuNC70LDQs9Cw0L3QtSDQvdCwINCj0JrQkNCX0JDQotCV0JvRj1/QndCQX9CS0JXQoNCh0JjQryDQutGK0Lwg0LjQt9C90LXRgdC10L3QuNGC0LUg0YPQutCw0LfQsNGC0LXQu9C4IgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyNgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzkKIG1zZ2lkICJhbm9ueW1pemUgb3V0cHV0IgogbXNnc3RyICLQsNC90L7QvdC40LzQuNC30LjRgNCw0L3QtSDQvdCwINC40LfQstC10LbQtNCw0L3QsNGC0LAg0LjQvdGE0L7RgNC80LDRhtC40Y8iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoyOAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODEKK21zZ2lkICJSZWZlcmVuY2UgcGFyZW50cyB3aGljaCBhcmUgbm90IGluIGZhc3QtZXhwb3J0IHN0cmVhbSBieSBvYmplY3QgaWQiCittc2dzdHIgIiIKKyLQo9C60LDQt9Cy0LDQvdC1INC90LAg0YDQvtC00LjRgtC10LvQuNGC0LUsINC60L7QuNGC0L4g0L3QtSDRgdCwINCyINC/0L7RgtC+0LrQsCDQvdCwINCx0YrRgNC30L4g0LjQt9C90LDRgdGP0L3QtSwg0YEgIgorItC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC90LAg0L7QsdC10LrRgiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODMKK21zZ2lkICJTaG93IG9yaWdpbmFsIG9iamVjdCBpZHMgb2YgYmxvYnMvY29tbWl0cyIKK21zZ3N0ciAi0JjQt9Cy0LXQttC00LDQvdC1INC90LAg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdC40YLQtSDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNC4INC90LAg0L7QsdC10LrRgtC40YLQtSBCTE9CL9C/0L7QtNCw0LLRj9C90LjRjyIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODUKK21zZ2lkICJMYWJlbCB0YWdzIHdpdGggbWFyayBpZHMiCittc2dzdHIgItCX0LDQtNCw0LLQsNC90LUg0L3QsCDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNC4INC90LAg0LzQsNGA0LrQtdGA0Lgg0L3QsCDQtdGC0LjQutC10YLQuNGC0LUiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMjIwCittc2dpZCAiQ2Fubm90IHBhc3MgYm90aCAtLWltcG9ydC1tYXJrcyBhbmQgLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzIgorbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLWltcG9ydC1tYXJrc+KAnCDQuCDigJ4tLWltcG9ydC1tYXJrcy1pZi1leGlzdHPigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNAogbXNnaWQgImdpdCBmZXRjaCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKIG1zZ3N0ciAiZ2l0IGZldGNoIFvQntCf0KbQmNCv4oCmXSBb0KXQoNCQ0J3QmNCb0JjQqdCVIFvQo9Ca0JDQl9CQ0KLQldCb4oCmXV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoyOQorIzogYnVpbHRpbi9mZXRjaC5jOjM1CiBtc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIDxncm91cD4iCiBtc2dzdHIgImdpdCBmZXRjaCBb0J7Qn9Cm0JjQr+KApl0g0JPQoNCj0J/QkCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjMwCisjOiBidWlsdGluL2ZldGNoLmM6MzYKIG1zZ2lkICJnaXQgZmV0Y2ggLS1tdWx0aXBsZSBbPG9wdGlvbnM+XSBbKDxyZXBvc2l0b3J5PiB8IDxncm91cD4pLi4uXSIKIG1zZ3N0ciAiZ2l0IGZldGNoIC0tbXVsdGlwbGUgW9Ce0J/QptCY0K/igKZdIFso0KXQoNCQ0J3QmNCb0JjQqdCVIHwg0JPQoNCj0J/QkCnigKZdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MzEKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNwogbXNnaWQgImdpdCBmZXRjaCAtLWFsbCBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IGZldGNoIC0tYWxsIFvQntCf0KbQmNCv4oCmXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExNSBidWlsdGluL3B1bGwuYzoxOTQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTYKK21zZ2lkICJmZXRjaC5wYXJhbGxlbCBjYW5ub3QgYmUgbmVnYXRpdmUiCittc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAnmZldGNoLnBhcmFsbGVs4oCcINGC0YDRj9Cx0LLQsCDQtNCwINC1INC90LXQvtGC0YDQuNGG0LDRgtC10LvQvdCwIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTM5IGJ1aWx0aW4vcHVsbC5jOjE4NAogbXNnaWQgImZldGNoIGZyb20gYWxsIHJlbW90ZXMiCiBtc2dzdHIgItC00L7RgdGC0LDQstGP0L3QtSDQvtGCINCy0YHQuNGH0LrQuCDQvtGC0LTQsNC70LXRh9C10L3QuCDRhdGA0LDQvdC40LvQuNGJ0LAiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTcgYnVpbHRpbi9wdWxsLmM6MTk3CisjOiBidWlsdGluL2ZldGNoLmM6MTQxIGJ1aWx0aW4vcHVsbC5jOjIyOAorbXNnaWQgInNldCB1cHN0cmVhbSBmb3IgZ2l0IHB1bGwvZmV0Y2giCittc2dzdHIgItC30LDQtNCw0LLQsNC90LUg0L3QsCDQutC70L7QvSDQt9CwINGB0LvQtdC00LXQvdC1INC30LAg0LjQt9C00YrRgNC/0LLQsNC90LUv0LTQvtGB0YLQsNCy0Y/QvdC1IgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzIGJ1aWx0aW4vcHVsbC5jOjE4NwogbXNnaWQgImFwcGVuZCB0byAuZ2l0L0ZFVENIX0hFQUQgaW5zdGVhZCBvZiBvdmVyd3JpdGluZyIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQutGK0Lwg4oCeLmdpdC9GRVRDSF9IRUFE4oCcINCy0LzQtdGB0YLQviDQt9Cw0LzRj9C90LAiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTkgYnVpbHRpbi9wdWxsLmM6MjAwCisjOiBidWlsdGluL2ZldGNoLmM6MTQ1IGJ1aWx0aW4vcHVsbC5jOjE5MAogbXNnaWQgInBhdGggdG8gdXBsb2FkIHBhY2sgb24gcmVtb3RlIGVuZCIKIG1zZ3N0ciAi0L7RgtC00LDQu9C10YfQtdC9INC/0YrRgiwg0LrRitC00LXRgtC+INC00LAg0YHQtSDQutCw0YfQuCDQv9Cw0LrQtdGC0YrRgiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyMAorIzogYnVpbHRpbi9mZXRjaC5jOjE0NgogbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBsb2NhbCByZWZlcmVuY2UiCiBtc2dzdHIgItC/0YDQuNC90YPQtNC40YLQtdC70L3QviDQv9GA0LXQt9Cw0L/QuNGB0LLQsNC90LUg0L3QsCDQu9C+0LrQsNC70LXQvSDRg9C60LDQt9Cw0YLQtdC7IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTIyCisjOiBidWlsdGluL2ZldGNoLmM6MTQ4CiBtc2dpZCAiZmV0Y2ggZnJvbSBtdWx0aXBsZSByZW1vdGVzIgogbXNnc3RyICLQtNC+0YHRgtCw0LLRj9C90LUg0L7RgiDQvNC90L7QttC10YHRgtCy0L4g0L7RgtC00LDQu9C10YfQtdC90Lgg0YXRgNCw0L3QuNC70LjRidCwIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI0IGJ1aWx0aW4vcHVsbC5jOjIwNAorIzogYnVpbHRpbi9mZXRjaC5jOjE1MCBidWlsdGluL3B1bGwuYzoxOTQKIG1zZ2lkICJmZXRjaCBhbGwgdGFncyBhbmQgYXNzb2NpYXRlZCBvYmplY3RzIgogbXNnc3RyICLQtNC+0YHRgtCw0LLRj9C90LUg0L3QsCDQstGB0LjRh9C60Lgg0LXRgtC40LrQtdGC0Lgg0Lgg0L/RgNC40L3QsNC00LvQtdC20LDRidC4INC+0LHQtdC60YLQuCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyNgorIzogYnVpbHRpbi9mZXRjaC5jOjE1MgogbXNnaWQgImRvIG5vdCBmZXRjaCBhbGwgdGFncyAoLS1uby10YWdzKSIKIG1zZ3N0ciAi0LHQtdC3INC00L7RgdGC0LDQstGP0L3QtdGC0L4g0L3QsCDQstGB0LjRh9C60Lgg0LXRgtC40LrQtdGC0Lgg4oCeLS1uby10YWdz4oCcIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI4CisjOiBidWlsdGluL2ZldGNoLmM6MTU0CiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgZmV0Y2hlZCBpbiBwYXJhbGxlbCIKIG1zZ3N0ciAi0LHRgNC+0Lkg0L/QvtC00LzQvtC00YPQu9C4INC00L7RgdGC0LDQstC10L3QuCDQv9Cw0YDQsNC70LXQu9C90L4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzAgYnVpbHRpbi9wdWxsLmM6MjA3CisjOiBidWlsdGluL2ZldGNoLmM6MTU2IGJ1aWx0aW4vcHVsbC5jOjE5NwogbXNnaWQgInBydW5lIHJlbW90ZS10cmFja2luZyBicmFuY2hlcyBubyBsb25nZXIgb24gcmVtb3RlIgogbXNnc3RyICLQvtC60LDRgdGC0YDRj9C90LUg0L3QsCDQutC70L7QvdC40YLQtSDRgdC70LXQtNGP0YnQuCDQstC10YfQtSDQvdC10YHRitGJ0LXRgdGC0LLRg9Cy0LDRidC4INC+0YLQtNCw0LvQtdGH0LXQvdC4INC60LvQvtC90LgiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTgKIG1zZ2lkICJwcnVuZSBsb2NhbCB0YWdzIG5vIGxvbmdlciBvbiByZW1vdGUgYW5kIGNsb2JiZXIgY2hhbmdlZCB0YWdzIgogbXNnc3RyICIiCiAi0L7QutCw0YHRgtGA0Y/QvdC1INC90LAg0LvQvtC60LDQu9C90LjRgtC1INC10YLQuNC60LXRgtC4LCDQutC+0LjRgtC+INCy0LXRh9C1INC90LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LDRgiDQsiDQvtGC0LTQsNC70LXRh9C10L3QvtGC0L4gIgotItGF0YDQsNC90LjQu9C40YnQtSDQuCDQvNCw0YXQsNC90LUg0L3QsCDQv9GA0L7QvNC10L3QtdC90LjRgtC1IgorItGF0YDQsNC90LjQu9C40YnQtSDQuCDQv9GA0LXQt9Cw0L/QuNGB0LLQsNC90LUg0L3QsCDQv9GA0L7QvNC10L3QtdC90LjRgtC1IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMzIGJ1aWx0aW4vZmV0Y2guYzoxNTYgYnVpbHRpbi9wdWxsLmM6MTMyCisjOiBidWlsdGluL2ZldGNoLmM6MTU5IGJ1aWx0aW4vZmV0Y2guYzoxODIgYnVpbHRpbi9wdWxsLmM6MTIxCiBtc2dpZCAib24tZGVtYW5kIgogbXNnc3RyICLQn9Cg0Jgg0J3Qo9CW0JTQkCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzNAorIzogYnVpbHRpbi9mZXRjaC5jOjE2MAogbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMiCiBtc2dzdHIgItGD0L/RgNCw0LLQu9C10L3QuNC1INC90LAg0YDQtdC60YPRgNGB0LjQstC90L7RgtC+INC00L7RgdGC0LDQstGP0L3QtSDQvdCwINC/0L7QtNC80L7QtNGD0LvQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzggYnVpbHRpbi9wdWxsLmM6MjE1CisjOiBidWlsdGluL2ZldGNoLmM6MTY0IGJ1aWx0aW4vcHVsbC5jOjIwNQogbXNnaWQgImtlZXAgZG93bmxvYWRlZCBwYWNrIgogbXNnc3RyICLQt9Cw0L/QsNC30LLQsNC90LUg0L3QsCDQuNC30YLQtdCz0LvQtdC90LjRgtC1INC/0LDQutC10YLQuCDRgSDQvtCx0LXQutGC0LgiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjYKIG1zZ2lkICJhbGxvdyB1cGRhdGluZyBvZiBIRUFEIHJlZiIKIG1zZ3N0ciAi0L/QvtC30LLQvtC70Y/QstCw0L3QtSDQvdCwINC+0LHQvdC+0LLRj9Cy0LDQvdC10YLQviDQvdCwINGD0LrQsNC30LDRgtC10LvRjyDigJ5IRUFE4oCcIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQzIGJ1aWx0aW4vZmV0Y2guYzoxNDkgYnVpbHRpbi9wdWxsLmM6MjE4CisjOiBidWlsdGluL2ZldGNoLmM6MTY5IGJ1aWx0aW4vZmV0Y2guYzoxNzUgYnVpbHRpbi9wdWxsLmM6MjA4CiBtc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyBjbG9uZSIKIG1zZ3N0ciAi0LfQsNC00YrQu9Cx0L7Rh9Cw0LLQsNC90LUg0L3QsCDQuNGB0YLQvtGA0LjRj9GC0LAg0L3QsCDQv9C70LjRgtC60L4g0YXRgNCw0L3QuNC70LjRidC1IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQ1CisjOiBidWlsdGluL2ZldGNoLmM6MTcxCiBtc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyByZXBvc2l0b3J5IGJhc2VkIG9uIHRpbWUiCiBtc2dzdHIgItC30LDQtNGK0LvQsdC+0YfQsNCy0LDQvdC1INC90LAg0LjRgdGC0L7RgNC40Y/RgtCwINC90LAg0L/Qu9C40YLQutC+INGF0YDQsNC90LjQu9C40YnQtSDQtNC+INC+0L/RgNC10LTQtdC70LXQvdC+INCy0YDQtdC80LUiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTEgYnVpbHRpbi9wdWxsLmM6MjIxCisjOiBidWlsdGluL2ZldGNoLmM6MTc3IGJ1aWx0aW4vcHVsbC5jOjIxMQogbXNnaWQgImNvbnZlcnQgdG8gYSBjb21wbGV0ZSByZXBvc2l0b3J5IgogbXNnc3RyICLQv9GA0LXQstGA0YrRidCw0L3QtSDQsiDQv9GK0LvQvdC+INGF0YDQsNC90LjQu9C40YnQtSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1NAorIzogYnVpbHRpbi9mZXRjaC5jOjE4MAogbXNnaWQgInByZXBlbmQgdGhpcyB0byBzdWJtb2R1bGUgcGF0aCBvdXRwdXQiCiBtc2dzdHIgItC00L7QsdCw0LLRj9C90LUg0L3QsCDRgtC+0LLQsCDQv9GA0LXQtCDQv9GK0YLRjyDQvdCwINC/0L7QtNC80L7QtNGD0LvQsCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1NworIzogYnVpbHRpbi9mZXRjaC5jOjE4MwogbXNnaWQgIiIKICJkZWZhdWx0IGZvciByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyAobG93ZXIgcHJpb3JpdHkgdGhhbiBjb25maWcgIgogImZpbGVzKSIKQEAgLTExMjI4LDEwOSArMTQyMDgsMTM2IEBACiAi0YHRgtCw0L3QtNCw0YDRgtC90L4g0YDQtdC60YPRgNGB0LjQstC90L4g0LjQt9GC0LXQs9C70Y/QvdC1INC90LAg0L/QvtC00LzQvtC00YPQu9C40YLQtSAo0YTQsNC50LvQvtCy0LXRgtC1INGBINC90LDRgdGC0YDQvtC50LrQuCDRgdCwINGBICIKICLQv9GA0LjQvtGA0LjRgtC10YIpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYxIGJ1aWx0aW4vcHVsbC5jOjIyNAorIzogYnVpbHRpbi9mZXRjaC5jOjE4NyBidWlsdGluL3B1bGwuYzoyMTQKIG1zZ2lkICJhY2NlcHQgcmVmcyB0aGF0IHVwZGF0ZSAuZ2l0L3NoYWxsb3ciCiBtc2dzdHIgItC/0YDQuNC10LzQsNC90LUg0L3QsCDRg9C60LDQt9Cw0YLQtdC70LgsINC60L7QuNGC0L4g0L7QsdC90L7QstGP0LLQsNGCIOKAni5naXQvc2hhbGxvd+KAnCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MiBidWlsdGluL3B1bGwuYzoyMjYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODggYnVpbHRpbi9wdWxsLmM6MjE2CiBtc2dpZCAicmVmbWFwIgogbXNnc3RyICLQmtCQ0KDQotCQX9ChX9Cj0JrQkNCX0JDQotCV0JvQmCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MyBidWlsdGluL3B1bGwuYzoyMjcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODkgYnVpbHRpbi9wdWxsLmM6MjE3CiBtc2dpZCAic3BlY2lmeSBmZXRjaCByZWZtYXAiCiBtc2dzdHIgItGD0LrQsNC30LLQsNC90LUg0L3QsCDQmtCQ0KDQotCQ0YLQsF/QoV/Qo9Ca0JDQl9CQ0KLQldCb0Jgg0LfQsCDQtNC+0YHRgtCw0LLRj9C90LUiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9scy1yZW1vdGUuYzo3NyBidWlsdGluL3B1c2guYzo1ODIKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTcyCi1tc2dpZCAic2VydmVyLXNwZWNpZmljIgotbXNnc3RyICLRgdC/0LXRhtC40YTQuNGH0L3QuCDQt9CwINGB0YrRgNCy0YrRgNCwIgotCi0jOiBidWlsdGluL2ZldGNoLmM6MTY0IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzcgYnVpbHRpbi9wdXNoLmM6NTgyCi0jOiBidWlsdGluL3NlbmQtcGFjay5jOjE3MwotbXNnaWQgIm9wdGlvbiB0byB0cmFuc21pdCIKLW1zZ3N0ciAi0L7Qv9GG0LjRjyDQt9CwINC/0YDQtdC90L7RgSIKLQotIzogYnVpbHRpbi9mZXRjaC5jOjE3MAorIzogYnVpbHRpbi9mZXRjaC5jOjE5NgogbXNnaWQgInJlcG9ydCB0aGF0IHdlIGhhdmUgb25seSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHRoaXMgb2JqZWN0IgogbXNnc3RyICLQtNC+0LrQu9Cw0LTQstCw0L3QtSwg0YfQtSDQstGB0LjRh9C60Lgg0L7QsdC10LrRgtC4INC80L7Qs9Cw0YIg0YHQsCDQtNC+0YHRgtC40LbQuNC80Lgg0L/RgNC4INC30LDQv9C+0YfQstCw0L3QtSDQvtGCINGC0L7Qt9C4IgogCi0jOiBidWlsdGluL2ZldGNoLmM6NDcwCisjOiBidWlsdGluL2ZldGNoLmM6MTk5Cittc2dpZCAicnVuICdnYyAtLWF1dG8nIGFmdGVyIGZldGNoaW5nIgorbXNnc3RyICLQuNC30L/RitC70L3Rj9Cy0LDQvdC1INC90LAg4oCeZ2MgLS1hdXRv4oCcINGB0LvQtdC0INC00L7RgdGC0LDQstGP0L3QtSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjIwMSBidWlsdGluL3B1bGwuYzoyMjYKK21zZ2lkICJjaGVjayBmb3IgZm9yY2VkLXVwZGF0ZXMgb24gYWxsIHVwZGF0ZWQgYnJhbmNoZXMiCittc2dzdHIgItC/0YDQvtCy0LXRgNC60LAg0LfQsCDQv9GA0LjQvdGD0LTQuNGC0LXQu9C90Lgg0L7QsdC90L7QstGP0LLQsNC90LjRjyDQvdCwINCy0YHQuNGH0LrQuCDQutC70L7QvdC4IgorCisjOiBidWlsdGluL2ZldGNoLmM6MjAzCittc2dpZCAid3JpdGUgdGhlIGNvbW1pdC1ncmFwaCBhZnRlciBmZXRjaGluZyIKK21zZ3N0ciAi0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0LPRgNCwzIDRhNCwINGBINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0YHQu9C10LQg0LTQvtGB0YLQsNCy0Y/QvdC1IgorCisjOiBidWlsdGluL2ZldGNoLmM6NTEzCiBtc2dpZCAiQ291bGRuJ3QgZmluZCByZW1vdGUgcmVmIEhFQUQiCiBtc2dzdHIgItCj0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0LIg0L7RgtC00LDQu9C10YfQtdC90L7RgtC+INGF0YDQsNC90LjQu9C40YnQtSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGCIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NjA5CisjOiBidWlsdGluL2ZldGNoLmM6NjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbmZpZ3VyYXRpb24gZmV0Y2gub3V0cHV0IGNvbnRhaW5zIGludmFsaWQgdmFsdWUgJXMiCiBtc2dzdHIgItC90LDRgdGC0YDQvtC50LrQsNGC0LAg4oCeZmV0Y2gub3V0cHV04oCcINC1INGBINC90LXQv9GA0LDQstC40LvQvdCwINGB0YLQvtC50L3QvtGB0YIg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MDIKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIG5vdCBmb3VuZCIKIG1zZ3N0ciAi0L7QsdC10LrRgtGK0YIg4oCeJXPigJwg0LvQuNC/0YHQstCwIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzA2CisjOiBidWlsdGluL2ZldGNoLmM6NzU1CiBtc2dpZCAiW3VwIHRvIGRhdGVdIgogbXNnc3RyICJb0LDQutGC0YPQsNC70LjQt9C40YDQsNC9XSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjcxOSBidWlsdGluL2ZldGNoLmM6NzM1IGJ1aWx0aW4vZmV0Y2guYzo4MDcKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NjggYnVpbHRpbi9mZXRjaC5jOjc4NCBidWlsdGluL2ZldGNoLmM6ODU2CiBtc2dpZCAiW3JlamVjdGVkXSIKIG1zZ3N0ciAiW9C+0YLRhdCy0YrRgNC70LXQvV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MjAKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NjkKIG1zZ2lkICJjYW4ndCBmZXRjaCBpbiBjdXJyZW50IGJyYW5jaCIKIG1zZ3N0ciAi0LIg0YLQtdC60YPRidC40Y8g0LrQu9C+0L0g0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LTQvtGB0YLQsNCy0Y8iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NzkKIG1zZ2lkICJbdGFnIHVwZGF0ZV0iCiBtc2dzdHIgIlvQvtCx0L3QvtCy0Y/QstCw0L3QtSDQvdCwINC10YLQuNC60LXRgtC40YLQtV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MzEgYnVpbHRpbi9mZXRjaC5jOjc3MSBidWlsdGluL2ZldGNoLmM6Nzg3Ci0jOiBidWlsdGluL2ZldGNoLmM6ODAyCisjOiBidWlsdGluL2ZldGNoLmM6NzgwIGJ1aWx0aW4vZmV0Y2guYzo4MTcgYnVpbHRpbi9mZXRjaC5jOjgzOQorIzogYnVpbHRpbi9mZXRjaC5jOjg1MQogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgbG9jYWwgcmVmIgogbXNnc3RyICLQu9C+0LrQsNC70LXQvSDRg9C60LDQt9Cw0YLQtdC7INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtCx0L3QvtCy0LXQvSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjczNQorIzogYnVpbHRpbi9mZXRjaC5jOjc4NAogbXNnaWQgIndvdWxkIGNsb2JiZXIgZXhpc3RpbmcgdGFnIgogbXNnc3RyICLRgdGK0YnQtdGB0YLQstGD0LLQsNGJINC10YLQuNC60LXRgiDRidC1INCx0YrQtNC1INC/0YDQtdC30LDQv9C40YHQsNC9IgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzU3CisjOiBidWlsdGluL2ZldGNoLmM6ODA2CiBtc2dpZCAiW25ldyB0YWddIgogbXNnc3RyICJb0L3QvtCyINC10YLQuNC60LXRgl0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3NjAKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MDkKIG1zZ2lkICJbbmV3IGJyYW5jaF0iCiBtc2dzdHIgIlvQvdC+0LIg0LrQu9C+0L1dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzYzCisjOiBidWlsdGluL2ZldGNoLmM6ODEyCiBtc2dpZCAiW25ldyByZWZdIgogbXNnc3RyICJb0L3QvtCyINGD0LrQsNC30LDRgtC10LtdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODAyCisjOiBidWlsdGluL2ZldGNoLmM6ODUxCiBtc2dpZCAiZm9yY2VkIHVwZGF0ZSIKIG1zZ3N0ciAi0L/RgNC40L3Rg9C00LjRgtC10LvQvdC+INC+0LHQvdC+0LLRj9Cy0LDQvdC1IgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODA3CisjOiBidWlsdGluL2ZldGNoLmM6ODU2CiBtc2dpZCAibm9uLWZhc3QtZm9yd2FyZCIKIG1zZ3N0ciAi0YHRitGJ0LjQvdGB0LrQviDRgdC70LjQstCw0L3QtSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjg1MworIzogYnVpbHRpbi9mZXRjaC5jOjg3NworbXNnaWQgIiIKKyJGZXRjaCBub3JtYWxseSBpbmRpY2F0ZXMgd2hpY2ggYnJhbmNoZXMgaGFkIGEgZm9yY2VkIHVwZGF0ZSxcbiIKKyJidXQgdGhhdCBjaGVjayBoYXMgYmVlbiBkaXNhYmxlZC4gVG8gcmUtZW5hYmxlLCB1c2UgJy0tc2hvdy1mb3JjZWQtdXBkYXRlcydcbiIKKyJmbGFnIG9yIHJ1biAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyB0cnVlJy4iCittc2dzdHIgIiIKKyLQl9CwINC00LAg0Y8g0LLQutC70Y7Rh9C40YLQtSDQtdC00L3QvtC60YDQsNGC0L3QviDQv9C+0LvQt9Cy0LDQudGC0LUg0L7Qv9GG0LjRj9GC0LAg4oCeLS1zaG93LWZvcmNlZC11cGRhdGVz4oCcLCDQsCDQt9CwICIKKyLQtNCwINGPINCy0LrQu9GO0YfQuNGC0LUg0LfQsCDQv9C+0YHRgtC+0Y/QvdC90L4sINC40LfQv9GK0LvQvdC10YLQtTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyB0cnVlIgorCisjOiBidWlsdGluL2ZldGNoLmM6ODgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBjaGVjayBmb3JjZWQgdXBkYXRlcy4gWW91IGNhbiB1c2VcbiIKKyInLS1uby1zaG93LWZvcmNlZC11cGRhdGVzJyBvciBydW4gJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgIgorImZhbHNlJ1xuIgorIiB0byBhdm9pZCB0aGlzIGNoZWNrLlxuIgorbXNnc3RyICIiCisi0J/RgNC+0LLQtdGA0LrQsNGC0LAg0LfQsCDQv9GA0LjQvdGD0LTQuNGC0LXQu9C90Lgg0LjQt9GC0LvQsNGB0LrQstCw0L3QuNGPINC+0YLQvdC1ICUuMmYg0YHQtdC6LiAg0JzQvtC20LUg0LTQsCDRjyDQv9GA0LXRgdC60L7Rh9C40YLQtSAiCisi0LXQtNC90L7QutGA0LDRgtC90L4g0YEg0L7Qv9GG0LjRj9GC0LAg4oCeLS1uby1zaG93LWZvcmNlZC11cGRhdGVz4oCcLCDQsCDQt9CwINC00LAg0Y8g0LjQt9C60LvRjtGH0LjRgtC1INC30LAgIgorItC/0L7RgdGC0L7Rj9C90L3Qviwg0LjQt9C/0YrQu9C90LXRgtC1OlxuIgorIlxuIgorIiAgICBnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzIGZhbHNlXG4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo5MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZGlkIG5vdCBzZW5kIGFsbCBuZWNlc3Nhcnkgb2JqZWN0c1xuIgogbXNnc3RyICLRhdGA0LDQvdC40LvQuNGJ0LXRgtC+IOKAniVz4oCcINC90LUg0LjQt9C/0YDQsNGC0Lgg0LLRgdC40YfQutC4INC90LXQvtCx0YXQvtC00LjQvNC4INC+0LHQtdC60YLQuFxuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODc0CisjOiBidWlsdGluL2ZldGNoLmM6OTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlamVjdCAlcyBiZWNhdXNlIHNoYWxsb3cgcm9vdHMgYXJlIG5vdCBhbGxvd2VkIHRvIGJlIHVwZGF0ZWQiCiBtc2dzdHIgIiIKICLQvtGC0YXQstGK0YDQu9GP0L3QtSDQvdCwINCy0YrRgNGF0LAg4oCeJXPigJwsINC30LDRidC+0YLQviDQv9C70LjRgtC60LjRgtC1INGF0YDQsNC90LjQu9C40YnQsCDQvdC1INC80L7Qs9Cw0YIg0LTQsCDQsdGK0LTQsNGCICIKICLQvtCx0L3QvtCy0Y/QstCw0L3QuCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjk2MyBidWlsdGluL2ZldGNoLmM6MTA4NQorIzogYnVpbHRpbi9mZXRjaC5jOjEwMjYgYnVpbHRpbi9mZXRjaC5jOjExNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRnJvbSAlLipzXG4iCiBtc2dzdHIgItCe0YIgJS4qc1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6OTc0CisjOiBidWlsdGluL2ZldGNoLmM6MTAzNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAic29tZSBsb2NhbCByZWZzIGNvdWxkIG5vdCBiZSB1cGRhdGVkOyB0cnkgcnVubmluZ1xuIgpAQCAtMTEzNDAsNTcgKzE0MzQ3LDgwIEBACiAi4oCeZ2l0IHJlbW90ZSBwcnVuZSAlc+KAnCwg0LfQsCDQtNCwINC/0YDQtdC80LDRhdC90LXRgtC1INC+0YHRgtCw0YDQtdC70LjRgtC1INC60LvQvtC90LgsINC60L7QuNGC0L5cbiIKICLQv9GA0LXQtNC40LfQstC40LrQstCw0YIg0LrQvtC90YTQu9C40LrRgtCwIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA1NQorIzogYnVpbHRpbi9mZXRjaC5jOjExMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgKCVzIHdpbGwgYmVjb21lIGRhbmdsaW5nKSIKIG1zZ3N0ciAiICAgKNC+0LHQtdC60YLRitGCIOKAniVz4oCcINGJ0LUg0YHQtSDQvtC60LDQttC1INC40LfQstGK0L0g0LrQu9C+0L0pIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA1NgorIzogYnVpbHRpbi9mZXRjaC5jOjExMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgKCVzIGhhcyBiZWNvbWUgZGFuZ2xpbmcpIgogbXNnc3RyICIgICAo0L7QsdC10LrRgtGK0YIg4oCeJXPigJwg0LLQtdGH0LUg0LUg0LjQt9Cy0YrQvSDQutC70L7QvSkiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMDg4CisjOiBidWlsdGluL2ZldGNoLmM6MTE2NwogbXNnaWQgIltkZWxldGVkXSIKIG1zZ3N0ciAiW9C40LfRgtGA0LjRgl0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMDg5IGJ1aWx0aW4vcmVtb3RlLmM6MTAzNgorIzogYnVpbHRpbi9mZXRjaC5jOjExNjggYnVpbHRpbi9yZW1vdGUuYzoxMTEyCiBtc2dpZCAiKG5vbmUpIgogbXNnc3RyICIo0L3QuNGJ0L4pIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTExMgorIzogYnVpbHRpbi9mZXRjaC5jOjExOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gZmV0Y2ggaW50byBjdXJyZW50IGJyYW5jaCAlcyBvZiBub24tYmFyZSByZXBvc2l0b3J5IgogbXNnc3RyICLQndC1INC80L7QttC1INC00LAg0LTQvtGB0YLQsNCy0LjRgtC1INCyINGC0LXQutGD0YnQuNGPINC60LvQvtC9IOKAniVz4oCcINC90LAg0YXRgNCw0L3QuNC70LjRidC1LCDQutC+0LXRgtC+INC90LUg0LUg0LPQvtC70L4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTMxCisjOiBidWlsdGluL2ZldGNoLmM6MTIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJPcHRpb24gXCIlc1wiIHZhbHVlIFwiJXNcIiBpcyBub3QgdmFsaWQgZm9yICVzIgogbXNnc3RyICLQodGC0L7QudC90L7RgdGC0YLQsCDigJ4lMiRz4oCcINC30LAg0L7Qv9GG0LjRj9GC0LAg4oCeJTEkc+KAnCDQvdC1INC1INGB0YrQstC80LXRgdGC0LjQvNCwINGBIOKAniUzJHPigJwiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTM0CisjOiBidWlsdGluL2ZldGNoLmM6MTIxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJPcHRpb24gXCIlc1wiIGlzIGlnbm9yZWQgZm9yICVzXG4iCiBtc2dzdHIgItCe0L/RhtC40Y/RgtCwIOKAniVz4oCcINGB0LUg0L/RgNC10YHQutCw0YfQsCDQv9GA0Lgg4oCeJXPigJxcbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0MzMKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDIxCittc2dpZCAibXVsdGlwbGUgYnJhbmNoZXMgZGV0ZWN0ZWQsIGluY29tcGF0aWJsZSB3aXRoIC0tc2V0LXVwc3RyZWFtIgorbXNnc3RyICIiCisi0LfQsNGB0LXRh9C10L3QuCDRgdCwINC80L3QvtC20LXRgdGC0LLQviDQutC70L7QvdC4LCDRgtC+0LLQsCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80L4g0YEg0L7Qv9GG0LjRj9GC0LAg4oCeLS1zZXQtdXBzdHJlYW3igJwiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDM2Cittc2dpZCAibm90IHNldHRpbmcgdXBzdHJlYW0gZm9yIGEgcmVtb3RlIHJlbW90ZS10cmFja2luZyBicmFuY2giCittc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRg9C60LDQt9Cy0LDRgtC1INC60LvQvtC9INC30LAg0YHQu9C10LTQtdC90LUg0L3QsCDQvtGC0LTQsNC70LXRh9C10L0g0LXRgtC40LrQtdGCIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzOAorbXNnaWQgIm5vdCBzZXR0aW5nIHVwc3RyZWFtIGZvciBhIHJlbW90ZSB0YWciCittc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRg9C60LDQt9Cy0LDRgtC1INC60LvQvtC9INC30LAg0YHQu9C10LTQtdC90LUg0L3QsCDQvtGC0LTQsNC70LXRh9C10L0g0LXRgtC40LrQtdGCIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ0MAorbXNnaWQgInVua25vd24gYnJhbmNoIHR5cGUiCittc2dzdHIgItC90LXQv9C+0LfQvdCw0YIg0LLQuNC0INC60LvQvtC9IgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ0MgorbXNnaWQgIiIKKyJubyBzb3VyY2UgYnJhbmNoIGZvdW5kLlxuIgorInlvdSBuZWVkIHRvIHNwZWNpZnkgZXhhY3RseSBvbmUgYnJhbmNoIHdpdGggdGhlIC0tc2V0LXVwc3RyZWFtIG9wdGlvbi4iCittc2dzdHIgIiIKKyLQvdC1INC1INC+0YLQutGA0LjRgiDQutC70L7QvSDQt9CwINGB0LvQtdC00LXQvdC1LlxuIgorItCi0YDRj9Cx0LLQsCDQuNC30YDQuNGH0L3QviDQtNCwINC30LDQtNCw0LTQtdGC0LUg0LXQtNC40L0g0LrQu9C+0L0g0YEg0L7Qv9GG0LjRj9GC0LAg4oCeLS1zZXQtdXBzdHJlYW0gb3B0aW9u4oCcLiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE1NjggYnVpbHRpbi9mZXRjaC5jOjE2MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmV0Y2hpbmcgJXNcbiIKIG1zZ3N0ciAi0JTQvtGB0YLQsNCy0Y/QvdC1INC90LAg4oCeJXPigJxcbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0MzUgYnVpbHRpbi9yZW1vdGUuYzoxMDAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTc4IGJ1aWx0aW4vZmV0Y2guYzoxNjMzIGJ1aWx0aW4vcmVtb3RlLmM6MTAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBmZXRjaCAlcyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LTQvtGB0YLQsNCy0LgiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDgxIGJ1aWx0aW4vZmV0Y2guYzoxNjQ5Ci1tc2dpZCAiIgotIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gY29yZS5wYXJ0aWFsQ2xvbmUiCi1tc2dzdHIgIiIKLSLQvtC/0YbQuNGP0YLQsCDigJ4tLWZpbHRlcuKAnCDQvNC+0LbQtSDQtNCwINGB0LUg0L/QvtC70LfQstCwINGB0LDQvNC+INGBINC+0YLQtNCw0LvQtdGH0LXQvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUg0YPQutCw0LfQsNC90L4g0LIgIgotItC90LDRgdGC0YDQvtC50LrQsNGC0LAg4oCeY29yZS5wYXJ0aWFsQ2xvbmXigJwiCisjOiBidWlsdGluL2ZldGNoLmM6MTU5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZmV0Y2ggJyVzJyAoZXhpdCBjb2RlOiAlZClcbiIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LTQvtGB0YLQsNCy0LggKNC40LfRhdC+0LTQvdC40Y/RgiDQutC+0LQg0LU6ICVkKVxuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTUwNAorIzogYnVpbHRpbi9mZXRjaC5jOjE2OTMKIG1zZ2lkICIiCiAiTm8gcmVtb3RlIHJlcG9zaXRvcnkgc3BlY2lmaWVkLiAgUGxlYXNlLCBzcGVjaWZ5IGVpdGhlciBhIFVSTCBvciBhXG4iCiAicmVtb3RlIG5hbWUgZnJvbSB3aGljaCBuZXcgcmV2aXNpb25zIHNob3VsZCBiZSBmZXRjaGVkLiIKQEAgLTExMzk4LDY5ICsxNDQyOCw3NyBAQAogItCd0LUg0YHRgtC1INGD0LrQsNC30LDQu9C4INC+0YLQtNCw0LvQtdGH0LXQvdC+INGF0YDQsNC90LjQu9C40YnQtS4gINCX0LDQtNCw0LnRgtC1INC40LvQuCDQsNC00YDQtdGBLCDQuNC70Lgg0LjQvNC1XG4iCiAi0L3QsCDQvtGC0LTQsNC70LXRh9C10L3QviDRhdGA0LDQvdC40LvQuNGJ0LUsINC+0YLQutGK0LTQtdGC0L4g0LTQsCDRgdC1INC00L7RgdGC0LDQstGP0YIg0L3QvtCy0LjRgtC1INCy0LXRgNGB0LjQuC4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQxCisjOiBidWlsdGluL2ZldGNoLmM6MTczMAogbXNnaWQgIllvdSBuZWVkIHRvIHNwZWNpZnkgYSB0YWcgbmFtZS4iCiBtc2dzdHIgItCi0YDRj9Cx0LLQsCDQtNCwINGD0LrQsNC20LXRgtC1INC40LzQtSDQvdCwINC10YLQuNC60LXRgi4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTkwCisjOiBidWlsdGluL2ZldGNoLmM6MTc4MAogbXNnaWQgIk5lZ2F0aXZlIGRlcHRoIGluIC0tZGVlcGVuIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgItCe0YLRgNC40YbQsNGC0LXQu9C90LAg0LTRitC70LHQvtGH0LjQvdCwINC60LDRgtC+INCw0YDQs9GD0LzQtdC90YIg0L3QsCDigJ4tLWRlZXBlbuKAnCDQvdC1INGB0LUg0L/QvtC00LTRitGA0LbQsCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzgyCiBtc2dpZCAiLS1kZWVwZW4gYW5kIC0tZGVwdGggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKLW1zZ3N0ciAi0J7Qv9GG0LjQuNGC0LUg4oCeLS1kZWVwZW7igJwg0Lgg4oCeLS1kZXB0aOKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCDQtdC00L3QsCDRgSDQtNGA0YPQs9CwIgorbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLWRlZXBlbuKAnCDQuCDigJ4tLWRlcHRo4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU5NworIzogYnVpbHRpbi9mZXRjaC5jOjE3ODcKIG1zZ2lkICItLWRlcHRoIGFuZCAtLXVuc2hhbGxvdyBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeLS1kZXB0aOKAnCDQuCDigJ4tLXVuc2hhbGxvd+KAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTkKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzg5CiBtc2dpZCAiLS11bnNoYWxsb3cgb24gYSBjb21wbGV0ZSByZXBvc2l0b3J5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgItC90LUg0LzQvtC20LXRgtC1INC00LAg0LjQt9C/0L7Qu9C30LLQsNGC0LUg0L7Qv9GG0LjRj9GC0LAg4oCeLS11bnNoYWxsb3figJwg0LLRitGA0YXRgyDQv9GK0LvQvdC+INGF0YDQsNC90LjQu9C40YnQtSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MTUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODA1CiBtc2dpZCAiZmV0Y2ggLS1hbGwgZG9lcyBub3QgdGFrZSBhIHJlcG9zaXRvcnkgYXJndW1lbnQiCiBtc2dzdHIgItC60YrQvCDigJ5naXQgZmV0Y2ggLS1hbGzigJwg0L3QtSDQvNC+0LbQtdGC0LUg0LTQsCDQtNC+0LHQsNCy0LjRgtC1INCw0YDQs9GD0LzQtdC90YIg4oCUINGF0YDQsNC90LjQu9C40YnQtSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODA3CiBtc2dpZCAiZmV0Y2ggLS1hbGwgZG9lcyBub3QgbWFrZSBzZW5zZSB3aXRoIHJlZnNwZWNzIgogbXNnc3RyICIiCiAi0LrRitC8IOKAnmdpdCBmZXRjaCAtLWFsbOKAnCDQvdC1INC80L7QttC10YLQtSDQtNCwINC00L7QsdCw0LLQuNGC0LUg0LDRgNCz0YPQvNC10L3RgiDigJQg0YPQutCw0LfQsNGC0LXQuyDQvdCwINCy0LXRgNGB0LjRjyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MjYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVtb3RlIG9yIHJlbW90ZSBncm91cDogJXMiCiBtc2dzdHIgItCd0Y/QvNCwINC90LjRgtC+INC+0YLQtNCw0LvQtdGH0LXQvdC+INGF0YDQsNC90LjQu9C40YnQtSwg0L3QuNGC0L4g0LPRgNGD0L/QsCDQvtGCINGF0YDQsNC90LjQu9C40YnQsCDQvdCwINC40LzQtSDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MzMKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODIzCiBtc2dpZCAiRmV0Y2hpbmcgYSBncm91cCBhbmQgc3BlY2lmeWluZyByZWZzcGVjcyBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICLQo9C60LDQt9Cy0LDQvdC10YLQviDQvdCwINCz0YDRg9C/0LAg0Lgg0YPQutCw0LfQstCw0L3QtdGC0L4g0L3QsCDQstC10YDRgdC40Y8g0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODQxCittc2dpZCAiIgorIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gZXh0ZW5zaW9ucy4iCisicGFydGlhbGNsb25lIgorbXNnc3RyICIiCisi0L7Qv9GG0LjRj9GC0LAg4oCeLS1maWx0ZXLigJwg0LzQvtC20LUg0LTQsCDRgdC1INC/0L7Qu9C30LLQsCDRgdCw0LzQviDRgSDQvtGC0LTQsNC70LXRh9C10L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1INGD0LrQsNC30LDQvdC+INCyICIKKyLQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAnmV4dGVuc2lvbnMucGFydGlhbENsb25l4oCcIgorCiAjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzoxOAogbXNnaWQgIiIKICJnaXQgZm10LW1lcmdlLW1zZyBbLW0gPG1lc3NhZ2U+XSBbLS1sb2dbPTxuPl0gfCAtLW5vLWxvZ10gWy0tZmlsZSA8ZmlsZT5dIgogbXNnc3RyICIiCiAiZ2l0IGZtdC1tZXJnZS1tc2cgWy1tINCh0KrQntCR0KnQldCd0JjQlV0gWy0tbG9nWz3QkdCg0J7QmV0gfCAtLW5vLWxvZ10gWy0tZmlsZSDQpNCQ0JnQm10iCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MgorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcxCiBtc2dpZCAicG9wdWxhdGUgbG9nIHdpdGggYXQgbW9zdCA8bj4gZW50cmllcyBmcm9tIHNob3J0bG9nIgogbXNnc3RyICIiCiAi0LLQvNGK0LrQstCw0L3QtSDQvdCwINC20YPRgNC90LDQuyDRgdGK0YHRgtC+0Y/RiSDRgdC1INC+0YIg0L3QtSDQv9C+0LLQtdGH0LUg0L7RgiDQkdCg0J7QmSDQt9Cw0L/QuNGB0LAg0L7RgiDRgdGK0LrRgNCw0YLQtdC90LjRjyAiCiAi0LbRg9GA0L3QsNC7IgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzUKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NAogbXNnaWQgImFsaWFzIGZvciAtLWxvZyAoZGVwcmVjYXRlZCkiCi1tc2dzdHIgItC/0YHQtdCy0LTQvtC90LjQvCDQvdCwIOKAni0tbG9n4oCcICjQvtGB0YLQsNGA0Y/Qu9C+KSIKK21zZ3N0ciAi0L/RgdC10LLQtNC+0L3QuNC8INC90LAg4oCeLS1sb2figJwgKNCe0KHQotCQ0KDQr9Cb0J4pIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzgKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NwogbXNnaWQgInRleHQiCiBtc2dzdHIgItCi0JXQmtCh0KIiCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc4CiBtc2dpZCAidXNlIDx0ZXh0PiBhcyBzdGFydCBvZiBtZXNzYWdlIgogbXNnc3RyICLQt9CwINC90LDRh9Cw0LvQviDQvdCwINGB0YrQvtCx0YnQtdC90LjQtdGC0L4g0LTQsCDRgdC1INC/0L7Qu9C30LLQsCDQotCV0JrQodCiIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2ODAKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQogbXNnaWQgImZpbGUgdG8gcmVhZCBmcm9tIgogbXNnc3RyICLRhNCw0LnQuywg0L7RgiDQutC+0LnRgtC+INC00LAg0YHQtSDRh9C10YLQtSIKIApAQCAtMTE1MDAsOTIgKzE0NTM4LDI3NSBAQAogbXNnaWQgInNob3cgb25seSA8bj4gbWF0Y2hlZCByZWZzIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0YHQsNC80L4g0L3QsCDRgtC+0LfQuCDQkdCg0J7QmSDQvdCw0L/QsNGB0L3QsNGC0Lgg0YPQutCw0LfQsNGC0LXQu9C4IgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM5IGJ1aWx0aW4vdGFnLmM6NDI0CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM5IGJ1aWx0aW4vdGFnLmM6NDM5CiBtc2dpZCAicmVzcGVjdCBmb3JtYXQgY29sb3JzIgogbXNnc3RyICLRgdC/0LDQt9Cy0LDQvdC1INC90LAg0YbQstC10YLQvtCy0LXRgtC1INC90LAg0YTQvtGA0LzQsMyA0YLQsCIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MgogbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBwb2ludHMgYXQgdGhlIGdpdmVuIG9iamVjdCIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INGB0LDQvNC+INC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSwg0YHQvtGH0LXRidC4INC60YrQvCDQntCR0JXQmtCi0JAiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDUKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDQKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgdGhhdCBhcmUgbWVyZ2VkIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0YHQsNC80L4g0L3QsCDRgdC70LXRgtC40YLQtSDRg9C60LDQt9Cw0YLQtdC70LgiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDYKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDUKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgdGhhdCBhcmUgbm90IG1lcmdlZCIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INGB0LDQvNC+INC90LAg0L3QtdGB0LvQtdGC0LjRgtC1INGD0LrQsNC30LDRgtC10LvQuCIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NgogbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDRgdCw0LzQviDQvdCwINGD0LrQsNC30LDRgtC10LvQuNGC0LUsINC60L7QuNGC0L4g0YHRitC00YrRgNC20LDRgiDRgtC+0LLQsCDQn9Ce0JTQkNCS0JDQndCVIgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ4CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ3CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHdoaWNoIGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INGB0LDQvNC+INC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSwg0LrQvtC40YLQviDQvdC1INGB0YrQtNGK0YDQttCw0YIg0YLQvtCy0LAg0J/QntCU0JDQktCQ0J3QlSIKIAotIzogYnVpbHRpbi9mc2NrLmM6NTk4CisjOiBidWlsdGluL2ZzY2suYzo2OCBidWlsdGluL2ZzY2suYzoxNDcgYnVpbHRpbi9mc2NrLmM6MTQ4Cittc2dpZCAidW5rbm93biIKK21zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgiIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gZXJyb3IgaW4gdHJlZSAwMWJmZGE6IDxtb3JlIGV4cGxhbmF0aW9uPgorIzogYnVpbHRpbi9mc2NrLmM6MTAwIGJ1aWx0aW4vZnNjay5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiAlcyAlczogJXMiCittc2dzdHIgItCz0YDQtdGI0LrQsCDQsiAlcyDigJ4lc+KAnDogJXMiCisKKyMuIFRSQU5TTEFUT1JTOiBlLmcuIHdhcm5pbmcgaW4gdHJlZSAwMWJmZGE6IDxtb3JlIGV4cGxhbmF0aW9uPgorIzogYnVpbHRpbi9mc2NrLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIndhcm5pbmcgaW4gJXMgJXM6ICVzIgorbXNnc3RyICLQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1INC30LAgJXMg4oCeJXPigJw6ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzoxNDMgYnVpbHRpbi9mc2NrLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImJyb2tlbiBsaW5rIGZyb20gJTdzICVzIgorbXNnc3RyICLRgdC60YrRgdCw0L3QsCDQstGA0YrQt9C60LAg0L7RgiAlN3MgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE1NQorbXNnaWQgIndyb25nIG9iamVjdCB0eXBlIGluIGxpbmsiCittc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INCy0LjQtCDQvtCx0LXQutGCINCy0YrQsiDQstGA0YrQt9C60LDRgtCwIgorCisjOiBidWlsdGluL2ZzY2suYzoxNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImJyb2tlbiBsaW5rIGZyb20gJTdzICVzXG4iCisiICAgICAgICAgICAgICB0byAlN3MgJXMiCittc2dzdHIgIiIKKyLRgdC60YrRgdCw0L3QsCDQstGA0YrQt9C60LAg0L7RgiAlN3MgJXNcbiIKKyIgICAgICAgICAgICAgINC60YrQvCAlN3MgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjI4MgorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzICVzIgorbXNnc3RyICLQu9C40L/RgdCy0LDRiSDQvtCx0LXQutGCOiAlcyDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9mc2NrLmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVhY2hhYmxlICVzICVzIgorbXNnc3RyICLQvdC10LTQvtGB0YLQuNC20LjQvCDQvtCx0LXQutGCOiAlcyDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9mc2NrLmM6MzI5CisjLCBjLWZvcm1hdAorbXNnaWQgImRhbmdsaW5nICVzICVzIgorbXNnc3RyICLQuNC30LLRitC9INC60LvQvtC9OiAlcyDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9mc2NrLmM6MzM5Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSBsb3N0LWZvdW5kIgorbXNnc3RyICLigJ5sb3N0LWZvdW5k4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INGB0YrQt9C00LDQtNC1IgorCisjOiBidWlsdGluL2ZzY2suYzozNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCAnJXMnIgorbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQt9Cw0LLRitGA0YjQuCIKKworIzogYnVpbHRpbi9mc2NrLmM6MzY3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzIgorbXNnc3RyICLQn9GA0L7QstC10YDQutCwINC90LAg4oCeJXPigJwiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQwNQorIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkgKCVkIG9iamVjdHMpIgorbXNnc3RyICLQn9GA0L7QstC10YDQutCwINC90LAg0YHQstGK0YDQt9Cw0L3QvtGB0YLRgtCwICglZCDQvtCx0LXQutGC0LApIgorCisjOiBidWlsdGluL2ZzY2suYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgJXMiCittc2dzdHIgItCf0YDQvtCy0LXRgNGP0LLQsNC90LUg0L3QsCAlcyDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9mc2NrLmM6NDI5Cittc2dpZCAiYnJva2VuIGxpbmtzIgorbXNnc3RyICLRgdC60YrRgdCw0L3QuCDQstGA0YrQt9C60LgiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJyb290ICVzIgorbXNnc3RyICLQvdCw0YfQsNC70L3QsCDQtNC40YDQtdC60YLQvtGA0LjRjyDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9mc2NrLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInRhZ2dlZCAlcyAlcyAoJXMpIGluICVzIgorbXNnc3RyICLQv9GA0LjQu9C+0LbQtdC9INC10YLQuNC60LXRgiDigJ4lc+KAnCDQstGK0YDRhdGDIOKAniVz4oCcICglcykg0LIg4oCeJXPigJwiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvcnJ1cHQgb3IgbWlzc2luZyIKK21zZ3N0ciAiJXM6INC70LjQv9GB0LLQsNGJINC40LvQuCDQv9C+0LLRgNC10LTQtdC9INC+0LHQtdC60YIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjUwMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCByZWZsb2cgZW50cnkgJXMiCittc2dzdHIgIiVzOiDQvdC10L/RgNCw0LLQuNC70LXQvSDQt9Cw0L/QuNGBINCyINC20YPRgNC90LDQu9CwINC30LAg0YPQutCw0LfQsNGC0LXQu9C4IOKAniVz4oCcIgorCisjOiBidWlsdGluL2ZzY2suYzo1MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgcmVmbG9nICVzLT4lcyIKK21zZ3N0ciAi0J/RgNC+0LLQtdGA0LrQsCDQvdCwINC20YPRgNC90LDQu9CwINC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtTog4oCeJXPigJwg0LTQviDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9mc2NrLmM6NTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHNoYTEgcG9pbnRlciAlcyIKK21zZ3N0ciAi4oCeJXPigJw6INC90LXQv9GA0LDQstC40LvQtdC9INGD0LrQsNC30LDRgtC10Lsg0LfQsCBTSEExOiDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9mc2NrLmM6NTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBub3QgYSBjb21taXQiCittc2dzdHIgIiVzOiDQvdC1INC1INC/0L7QtNCw0LLQsNC90LUhIgorCisjOiBidWlsdGluL2ZzY2suYzo2MDkKK21zZ2lkICJub3RpY2U6IE5vIGRlZmF1bHQgcmVmZXJlbmNlcyIKK21zZ3N0ciAi0LLQvdC40LzQsNC90LjQtTog0L3Rj9C80LAg0YPQutCw0LfQsNGC0LXQu9C4INC/0L4g0L/QvtC00YDQsNC30LHQuNGA0LDQvdC1IgorCisjOiBidWlsdGluL2ZzY2suYzo2MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3Npbmc6ICVzIgorbXNnc3RyICLigJ4lc+KAnDog0LvQuNC/0YHQstCw0Ykg0L7QsdC10LrRgjog4oCeJXPigJwiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvdWxkIG5vdCBiZSBwYXJzZWQ6ICVzIgorbXNnc3RyICLigJ4lc+KAnDog0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LDQvdCw0LvQuNC30LjRgNCwOiDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9mc2NrLmM6NjU3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaGExIGZpbGU6ICVzIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDRgNC10LQg0YEg0LrQvtC90YLRgNC+0LvQvdCwINGB0YPQvNCwINC/0L4gU0hBMTog4oCeJXPigJwiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY3MgorbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcnkiCittc2dzdHIgItCf0YDQvtCy0LXRgNC60LAg0L3QsCDQtNC40YDQtdC60YLQvtGA0LjRjyDRgSDQvtCx0LXQutGC0LgiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY3NQogbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcmllcyIKIG1zZ3N0ciAi0J/RgNC+0LLQtdGA0LrQsCDQvdCwINC00LjRgNC10LrRgtC+0YDQuNC40YLQtSDRgSDQvtCx0LXQutGC0LgiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjY5MworIzogYnVpbHRpbi9mc2NrLmM6NjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzIGxpbmsiCittc2dzdHIgItCf0YDQvtCy0LXRgNC60LAg0L3QsCDQstGA0YrQt9C60LjRgtC1INC90LAg4oCeJXPigJwiCisKKyMKKyM6IGJ1aWx0aW4vZnNjay5jOjY5NSBidWlsdGluL2luZGV4LXBhY2suYzo4NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAlcyIKK21zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0YPQutCw0LfQsNGC0LXQuyDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9mc2NrLmM6NzAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBvaW50cyB0byBzb21ldGhpbmcgc3RyYW5nZSAoJXMpIgorbXNnc3RyICLigJ4lc+KAnCDRgdC+0YfQuCDQutGK0Lwg0L3QtdGJ0L4g0L3QtdC+0LHQuNGH0LDQudC90L4gKCVzKSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZXRhY2hlZCBIRUFEIHBvaW50cyBhdCBub3RoaW5nIgorbXNnc3RyICIlczog0L3QtdGB0LLRitGA0LfQsNC90LjRj9GCINCy0YDRitGFIOKAnkhFQUTigJwg0L3QtSDRgdC+0YfQuCDQutGK0Lwg0L3QuNGJ0L4iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJub3RpY2U6ICVzIHBvaW50cyB0byBhbiB1bmJvcm4gYnJhbmNoICglcykiCittc2dzdHIgItC/0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LU6IOKAniVz4oCcINGB0L7Rh9C4INC60YrQvCDQstGB0LUg0L7RidC1INC90LXRgdGK0YnQtdGB0YLQstGD0LLQsNGJINC60LvQvtC9ICglcykiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcyNAorbXNnaWQgIkNoZWNraW5nIGNhY2hlIHRyZWUiCittc2dzdHIgItCf0YDQvtCy0LXRgNC60LAg0L3QsCDQtNGK0YDQstC+0YLQviDQvdCwINC60LXRiNCwIgorCisjOiBidWlsdGluL2ZzY2suYzo3MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyIGluIGNhY2hlLXRyZWUiCittc2dzdHIgIuKAniVz4oCcOiDQvdC10L/RgNCw0LLQuNC70LXQvSDRg9C60LDQt9Cw0YLQtdC7INC30LAgU0hBMSDQsiDQtNGK0YDQstC+0YLQviDQvdCwINC60LXRiNCwIgorCisjOiBidWlsdGluL2ZzY2suYzo3MzgKK21zZ2lkICJub24tdHJlZSBpbiBjYWNoZS10cmVlIgorbXNnc3RyICLQsiDQtNGK0YDQstC+0YLQviDQvdCwINC60LXRiNCwINC40LzQsCDQvdC10YnQviwg0LrQvtC10YLQviDQvdC1INC1INC00YrRgNCy0L4iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc2OQogbXNnaWQgImdpdCBmc2NrIFs8b3B0aW9ucz5dIFs8b2JqZWN0Pi4uLl0iCiBtc2dzdHIgImdpdCBmc2NrIFvQntCf0KbQmNCv4oCmXSBb0J7QkdCV0JrQouKApl0iCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjY5OQorIzogYnVpbHRpbi9mc2NrLmM6Nzc1CiBtc2dpZCAic2hvdyB1bnJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICLQv9C+0LrQsNC30LLQsNC90LUg0L3QsCDQvdC10LTQvtGB0YLQuNC20LjQvNC40YLQtSDQvtCx0LXQutGC0LgiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMAorIzogYnVpbHRpbi9mc2NrLmM6Nzc2CiBtc2dpZCAic2hvdyBkYW5nbGluZyBvYmplY3RzIgogbXNnc3RyICLQv9C+0LrQsNC30LLQsNC90LUg0L3QsCDQvtCx0LXQutGC0LjRgtC1INC40LfQstGK0L0g0LrQu9C+0L3QuNGC0LUiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMQorIzogYnVpbHRpbi9mc2NrLmM6Nzc3CiBtc2dpZCAicmVwb3J0IHRhZ3MiCiBtc2dzdHIgItC/0L7QutCw0LfQstCw0L3QtSDQvdCwINC10YLQuNC60LXRgtC40YLQtSIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzAyCisjOiBidWlsdGluL2ZzY2suYzo3NzgKIG1zZ2lkICJyZXBvcnQgcm9vdCBub2RlcyIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cy0LDQvdC1INC90LAg0LrQvtGA0LXQvdC+0LLQuNGC0LUg0LLRitC30LvQuCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzAzCisjOiBidWlsdGluL2ZzY2suYzo3NzkKIG1zZ2lkICJtYWtlIGluZGV4IG9iamVjdHMgaGVhZCBub2RlcyIKIG1zZ3N0ciAi0LfQsNC00LDQstCw0L3QtSDQvdCwINC+0LHQtdC60YLQuCDQvtGCINC40L3QtNC10LrRgdCwINC00LAg0YHQsCDQutC+0YDQtdC90L7QstC4IgogCi0jIEZJWE1FIGJhZCBtZXNzYWdlCi0jOiBidWlsdGluL2ZzY2suYzo3MDQKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MAogbXNnaWQgIm1ha2UgcmVmbG9ncyBoZWFkIG5vZGVzIChkZWZhdWx0KSIKLW1zZ3N0ciAi0L/RgNC+0YHQu9C10LTRj9Cy0LDQvdC1INC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSDQvtGCINC20YPRgNC90LDQu9CwINC60LDRgtC+INCz0LvQsNCy0LggKNGB0YLQsNC90LTQsNGA0YLQvdC+KSIKK21zZ3N0ciAi0L/RgNC+0YHQu9C10LTRj9Cy0LDQvdC1INC4INC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSDQvtGCINC20YPRgNC90LDQu9CwINGBINGD0LrQsNC30LDRgtC10LvQuNGC0LUgKNGB0YLQsNC90LTQsNGA0YLQvdC+KSIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzA1CisjOiBidWlsdGluL2ZzY2suYzo3ODEKIG1zZ2lkICJhbHNvIGNvbnNpZGVyIHBhY2tzIGFuZCBhbHRlcm5hdGUgb2JqZWN0cyIKIG1zZ3N0ciAi0LTQvtC/0YrQu9C90LjRgtC10LvQvdC+INC00LAg0YHQtSDQv9GA0L7QstC10YDRj9Cy0LDRgiDQv9Cw0LrQtdGC0LjRgtC1INC4INCw0LvRgtC10YDQvdCw0YLQuNCy0L3QuNGC0LUg0L7QsdC10LrRgtC4IgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDYKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MgogbXNnaWQgImNoZWNrIG9ubHkgY29ubmVjdGl2aXR5IgogbXNnc3RyICLQv9GA0L7QstC10YDQutCwINGB0LDQvNC+INC90LAg0LLRgNGK0LfQutCw0YLQsCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzA3CisjOiBidWlsdGluL2ZzY2suYzo3ODMKIG1zZ2lkICJlbmFibGUgbW9yZSBzdHJpY3QgY2hlY2tpbmciCiBtc2dzdHIgItC/0L4t0YHRgtGA0L7Qs9C4INC/0YDQvtCy0LXRgNC60LgiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwOQorIzogYnVpbHRpbi9mc2NrLmM6Nzg1CiBtc2dpZCAid3JpdGUgZGFuZ2xpbmcgb2JqZWN0cyBpbiAuZ2l0L2xvc3QtZm91bmQiCiBtc2dzdHIgItC30LDQv9Cw0LfQstCw0L3QtSDQvdCwINC+0LHQtdC60YLQuNGC0LUg0LjQt9Cy0YrQvSDQutC70L7QvdC40YLQtSDQsiDQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg4oCeLmdpdC9sb3N0LWZvdW5k4oCcIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MTAgYnVpbHRpbi9wcnVuZS5jOjExMAorIzogYnVpbHRpbi9mc2NrLmM6Nzg2IGJ1aWx0aW4vcHJ1bmUuYzoxMzIKIG1zZ2lkICJzaG93IHByb2dyZXNzIgogbXNnc3RyICLQv9C+0LrQsNC30LLQsNC90LUg0L3QsCDQvdCw0L/RgNC10LTRitC60LAiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcxMQorIzogYnVpbHRpbi9mc2NrLmM6Nzg3CiBtc2dpZCAic2hvdyB2ZXJib3NlIG5hbWVzIGZvciByZWFjaGFibGUgb2JqZWN0cyIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cy0LDQvdC1INC90LAg0L/QvtC00YDQvtCx0L3QuCDQuNC80LXQvdCwINC90LAg0LTQvtGB0YLQuNC20LjQvNC40YLQtSDQvtCx0LXQutGC0LgiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjc3NgorIzogYnVpbHRpbi9mc2NrLmM6ODQ2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIyNQogbXNnaWQgIkNoZWNraW5nIG9iamVjdHMiCiBtc2dzdHIgItCf0YDQvtCy0LXRgNC60LAg0L3QsCDQvtCx0LXQutGC0LjRgtC1IgogCi0jOiBidWlsdGluL2djLmM6MzQKKyM6IGJ1aWx0aW4vZnNjay5jOjg3NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IG1pc3NpbmciCittc2dzdHIgIuKAniVz4oCcOiDQu9C40L/RgdCy0LDRiSDQvtCx0LXQutGCIgorCisjOiBidWlsdGluL2ZzY2suYzo4ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYXJhbWV0ZXI6IGV4cGVjdGVkIHNoYTEsIGdvdCAnJXMnIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQv9Cw0YDQsNC80LXRgtGK0YA6INC+0YfQsNC60LLQsCDRgdC1IFNIQTEsINCwINCx0LUg0L/QvtC70YPRh9C10L3Qvjog4oCeJXPigJwiCisKKyM6IGJ1aWx0aW4vZ2MuYzozNQogbXNnaWQgImdpdCBnYyBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IGdjIFvQntCf0KbQmNCv4oCmXSIKIApAQCAtMTE1OTQsMTcgKzE0ODE1LDIyIEBACiBtc2dpZCAiRmFpbGVkIHRvIGZzdGF0ICVzOiAlcyIKIG1zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg4oCeZnN0YXTigJwg0LLRitGA0YXRgyDigJ4lc+KAnDogJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo0NjEgYnVpbHRpbi9pbml0LWRiLmM6NTUKKyM6IGJ1aWx0aW4vZ2MuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlICclcycgdmFsdWUgJyVzJyIKK21zZ3N0ciAi0YHRgtC+0LnQvdC+0YHRgtGC0LAg0L3QsCDigJ4lc+KAnCDigJQg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LDQvdCw0LvQuNC30LjRgNCwIgorCisjOiBidWlsdGluL2djLmM6NDc1IGJ1aWx0aW4vaW5pdC1kYi5jOjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGF0ICclcyciCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0L7Qu9GD0YfQuCDQuNC90YTQvtGA0LzQsNGG0LjRjyDRh9GA0LXQtyDigJ5zdGF04oCcINC30LAg0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwIOKAniVz4oCcIgogCi0jOiBidWlsdGluL2djLmM6NDcwIGJ1aWx0aW4vbm90ZXMuYzoyNDAgYnVpbHRpbi90YWcuYzo1MTAKKyM6IGJ1aWx0aW4vZ2MuYzo0ODQgYnVpbHRpbi9ub3Rlcy5jOjI0MCBidWlsdGluL3RhZy5jOjUyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCAnJXMnIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L0iCiAKLSM6IGJ1aWx0aW4vZ2MuYzo0NzcKKyM6IGJ1aWx0aW4vZ2MuYzo0OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBsYXN0IGdjIHJ1biByZXBvcnRlZCB0aGUgZm9sbG93aW5nLiBQbGVhc2UgY29ycmVjdCB0aGUgcm9vdCBjYXVzZVxuIgpAQCAtMTE2MjEsNTggKzE0ODQ3LDU4IEBACiAiXG4iCiAiJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1MTkKKyM6IGJ1aWx0aW4vZ2MuYzo1MzkKIG1zZ2lkICJwcnVuZSB1bnJlZmVyZW5jZWQgb2JqZWN0cyIKIG1zZ3N0ciAi0L7QutCw0YHRgtGA0Y/QvdC1INC90LAg0L7QsdC10LrRgtC40YLQtSwg0LrRitC8INC60L7QuNGC0L4g0L3QuNGJ0L4g0L3QtSDRgdC+0YfQuCIKIAotIzogYnVpbHRpbi9nYy5jOjUyMQorIzogYnVpbHRpbi9nYy5jOjU0MQogbXNnaWQgImJlIG1vcmUgdGhvcm91Z2ggKGluY3JlYXNlZCBydW50aW1lKSIKIG1zZ3N0ciAi0LjQt9GH0LXRgNC/0LDRgtC10LvQvdC+INGC0YrRgNGB0LXQvdC1INC90LAg0LHQvtC60LvRg9C60LAgKNC30LAg0YHQvNC10YLQutCwINC90LAg0L/QvtCy0LXRh9C1INCy0YDQtdC80LUg0YDQsNCx0L7RgtCwKSIKIAotIzogYnVpbHRpbi9nYy5jOjUyMgorIzogYnVpbHRpbi9nYy5jOjU0MgogbXNnaWQgImVuYWJsZSBhdXRvLWdjIG1vZGUiCiBtc2dzdHIgItCy0LrQu9GO0YfQstCw0L3QtSDQvdCwINCw0LLRgtC+0LzQsNGC0LjRh9C90L7RgtC+INGB0YrQsdC40YDQsNC90LUg0L3QsCDQsdC+0LrQu9GD0LrQsCAoYXV0by1nYykiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1MjUKKyM6IGJ1aWx0aW4vZ2MuYzo1NDUKIG1zZ2lkICJmb3JjZSBydW5uaW5nIGdjIGV2ZW4gaWYgdGhlcmUgbWF5IGJlIGFub3RoZXIgZ2MgcnVubmluZyIKIG1zZ3N0ciAiIgogItC40LfRgNC40YfQvdC+INGB0YLQsNGA0YLQuNGA0LDQvdC1INC90LAg0YHRitCx0LjRgNCw0L3QtdGC0L4g0L3QsCDQsdC+0LrQu9GD0LrQsCwg0LTQvtGA0Lgg0Lgg0LDQutC+INCy0LXRh9C1INGA0LDQsdC+0YLQuCDQtNGA0YPQs9C+ICIKICLRgdGK0LHQuNGA0LDQvdC1IgogCi0jOiBidWlsdGluL2djLmM6NTI4CisjOiBidWlsdGluL2djLmM6NTQ4CiBtc2dpZCAicmVwYWNrIGFsbCBvdGhlciBwYWNrcyBleGNlcHQgdGhlIGxhcmdlc3QgcGFjayIKIG1zZ3N0ciAi0L/RgNC10L/QsNC60LXRgtC40YDQsNC90LUg0L3QsCDQstGB0LjRh9C60L4g0LHQtdC3INC90LDQuS3Qs9C+0LvQtdC80LjRjyDQv9Cw0LrQtdGCIgogCi0jOiBidWlsdGluL2djLmM6NTQ1CisjOiBidWlsdGluL2djLmM6NTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwYXJzZSBnYy5sb2dleHBpcnkgdmFsdWUgJXMiCiBtc2dzdHIgItC90LXRgNCw0LfQv9C+0LfQvdCw0YLQsCDRgdGC0L7QudC90L7RgdGCINC90LAg4oCeZ2MubG9nZXhwaXJ54oCcICVzIgogCi0jOiBidWlsdGluL2djLmM6NTU2CisjOiBidWlsdGluL2djLmM6NTc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwYXJzZSBwcnVuZSBleHBpcnkgdmFsdWUgJXMiCiBtc2dzdHIgItC90LXRgNCw0LfQv9C+0LfQvdCw0YLQsCDRgdGC0L7QudC90L7RgdGCINC90LAg0L/QtdGA0LjQvtC00LAg0LfQsCDQvtC60LDRgdGC0YDRj9C90LU6ICVzIgogCi0jOiBidWlsdGluL2djLmM6NTc2CisjOiBidWlsdGluL2djLmM6NTk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG8gcGFja2luZyB0aGUgcmVwb3NpdG9yeSBpbiBiYWNrZ3JvdW5kIGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgogbXNnc3RyICIiCiAi0JDQstGC0L7QvNCw0YLQuNGH0L3QviDQv9Cw0LrQtdGC0LjRgNCw0L3QtSDQvdCwINC30LDQtNC10L0g0YTQvtC9INC90LAg0YXRgNCw0L3QuNC70LjRidC10YLQviDQt9CwINC/0L4t0LTQvtCx0YDQsCAiCiAi0L/RgNC+0LjQt9Cy0L7QtNC40YLQtdC70L3QvtGB0YIuXG4iCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NzgKKyM6IGJ1aWx0aW4vZ2MuYzo1OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0byBwYWNraW5nIHRoZSByZXBvc2l0b3J5IGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgogbXNnc3RyICLQkNCy0YLQvtC80LDRgtC40YfQvdC+INC/0LDQutC10YLQuNGA0LDQvdC1INC90LAg0YXRgNCw0L3QuNC70LjRidC10YLQviDQt9CwINC/0L4t0LTQvtCx0YDQsCDQv9GA0L7QuNC30LLQvtC00LjRgtC10LvQvdC+0YHRgi5cbiIKIAotIzogYnVpbHRpbi9nYy5jOjU3OQorIzogYnVpbHRpbi9nYy5jOjU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZWUgXCJnaXQgaGVscCBnY1wiIGZvciBtYW51YWwgaG91c2VrZWVwaW5nLlxuIgogbXNnc3RyICIiCiAi0J/QvtCz0LvQtdC00L3QtdGC0LUg0YDRitC60L7QstC+0LTRgdGC0LLQvtGC0L4g0LfQsCDQv9C+0LLQtdGH0LUg0LjQvdGE0L7RgNC80LDRhtC40Y8g0LrQsNC6INC00LAg0LjQt9C/0YrQu9C90LjRgtC1IOKAnmdpdCBoZWxwICIKICJnY+KAnC5cbiIKIAotIzogYnVpbHRpbi9nYy5jOjYxOQorIzogYnVpbHRpbi9nYy5jOjYzOQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZ2MgaXMgYWxyZWFkeSBydW5uaW5nIG9uIG1hY2hpbmUgJyVzJyBwaWQgJTxQUkl1TUFYPiAodXNlIC0tZm9yY2UgaWYgbm90KSIKQEAgLTExNjgxLDIzICsxNDkwNywyMyBAQAogItC/0YDQvtGG0LXRgdCwOiAlPFBSSXVNQVg+ICjQsNC60L4g0YHRgtC1INGB0LjQs9GD0YDQvdC4LCDRh9C1INGC0L7QstCwINC90LUg0LUg0LLRj9GA0L3Qviwg0YLQvtCy0LAg0LjQt9C/0L7Qu9C30LLQsNC50YLQtVxuIgogItC+0L/RhtC40Y/RgtCwIOKAni0tZm9yY2XigJwpIgogCi0jOiBidWlsdGluL2djLmM6NjcwCisjOiBidWlsdGluL2djLmM6Njk0CiBtc2dpZCAiIgogIlRoZXJlIGFyZSB0b28gbWFueSB1bnJlYWNoYWJsZSBsb29zZSBvYmplY3RzOyBydW4gJ2dpdCBwcnVuZScgdG8gcmVtb3ZlIHRoZW0uIgogbXNnc3RyICIiCiAi0JjQvNCwINC/0YDQtdC60LDQu9C10L3QviDQvNC90L7Qs9C+INC90LXQtNC+0YHRgtC40LbQuNC80LgsINC90LXQv9Cw0LrQtdGC0LjRgNCw0L3QuCDQvtCx0LXQutGC0LguXG4iCiAi0JjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgcHJ1bmXigJwsINC30LAg0LTQsCDQs9C4INC+0LrQsNGB0YLRgNC40YLQtS4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjI4CisjOiBidWlsdGluL2dyZXAuYzozMAogbXNnaWQgImdpdCBncmVwIFs8b3B0aW9ucz5dIFstZV0gPHBhdHRlcm4+IFs8cmV2Pi4uLl0gW1stLV0gPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IGdyZXAgW9Ce0J/QptCY0K/igKZdIFstZV0g0KjQkNCR0JvQntCdIFvQktCV0KDQodCY0K/igKZdIFtbLS1dINCf0KrQouKApl0iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjIyNAorIzogYnVpbHRpbi9ncmVwLmM6MjI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdyZXA6IGZhaWxlZCB0byBjcmVhdGUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiZ3JlcDog0L3QtdGD0YHQv9C10YjQvdC+INGB0YrQt9C00LDQstCw0L3QtSDQvdCwINC90LjRiNC60LA6ICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzoyNzgKKyM6IGJ1aWx0aW4vZ3JlcC5jOjI3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG51bWJlciBvZiB0aHJlYWRzIHNwZWNpZmllZCAoJWQpIGZvciAlcyIKIG1zZ3N0ciAi0LfQsNC00LDQtNC10L0g0LUg0L3QtdC/0YDQsNCy0LjQu9C10L0g0LHRgNC+0Lkg0L3QuNGI0LrQuCAoJWQpINC30LAgJXMiCkBAIC0xMTcwNiwyNzYgKzE0OTMyLDI3NSBAQAogIy4gdmFyaWFibGUgZm9yIHR3ZWFraW5nIHRocmVhZHMsIGN1cnJlbnRseQogIy4gZ3JlcC50aHJlYWRzCiAjLgotIzogYnVpbHRpbi9ncmVwLmM6Mjg2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MDYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY5NwotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzE5CisjOiBidWlsdGluL2dyZXAuYzoyODcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzOCBidWlsdGluL2luZGV4LXBhY2suYzoxNzMxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gdGhyZWFkcyBzdXBwb3J0LCBpZ25vcmluZyAlcyIKIG1zZ3N0ciAi0LvQuNC/0YHQstCwINC/0L7QtNC00YDRitC20LrQsCDQt9CwINC90LjRiNC60LguICDigJ4lc+KAnCDRidC1INGB0LUg0L/RgNC10L3QtdCx0YDQtdCz0L3QtSIKIAotIzogYnVpbHRpbi9ncmVwLmM6NDU4IGJ1aWx0aW4vZ3JlcC5jOjU3OSBidWlsdGluL2dyZXAuYzo2MjAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjQ1MyBidWlsdGluL2dyZXAuYzo1NzggYnVpbHRpbi9ncmVwLmM6NjE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHRyZWUgKCVzKSIKIG1zZ3N0ciAi0LTRitGA0LLQvtGC0L4g0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L3QviAoJXMpIgogCi0jOiBidWlsdGluL2dyZXAuYzo2MzUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjYzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ3JlcCBmcm9tIG9iamVjdCBvZiB0eXBlICVzIgogbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDQuNC30L/RitC70L3QuCDigJ5ncmVw4oCcINC+0YIg0L7QsdC10LrRgiDQvtGCINCy0LjQtNCwICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo3MDEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjcwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJzd2l0Y2ggYCVjJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4lY+KAnCDQvtGH0LDQutCy0LAg0YfQuNGB0LvQviDQt9CwINCw0YDQs9GD0LzQtdC90YIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwMAorIzogYnVpbHRpbi9ncmVwLmM6ODAzCiBtc2dpZCAic2VhcmNoIGluIGluZGV4IGluc3RlYWQgb2YgaW4gdGhlIHdvcmsgdHJlZSIKIG1zZ3N0ciAi0YLRitGA0YHQtdC90LUg0LIg0LjQvdC00LXQutGB0LAsINCwINC90LUg0LIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwMgorIzogYnVpbHRpbi9ncmVwLmM6ODA1CiBtc2dpZCAiZmluZCBpbiBjb250ZW50cyBub3QgbWFuYWdlZCBieSBnaXQiCiBtc2dzdHIgItGC0YrRgNGB0LXQvdC1INC4INCy0YrQsiDRhNCw0LnQu9C+0LLQtdGC0LUsINC60L7QuNGC0L4g0L3QtSDRgdCwINC/0L7QtCDRg9C/0YDQsNCy0LvQtdC90LjQtdGC0L4g0L3QsCBnaXQiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwNAorIzogYnVpbHRpbi9ncmVwLmM6ODA3CiBtc2dpZCAic2VhcmNoIGluIGJvdGggdHJhY2tlZCBhbmQgdW50cmFja2VkIGZpbGVzIgogbXNnc3RyICLRgtGK0YDRgdC10L3QtSDQuCDQsiDRgdC70LXQtNC10L3QuNGC0LUsINC4INCyINC90LXRgdC70LXQtNC10L3QuNGC0LUg0YTQsNC50LvQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwNgorIzogYnVpbHRpbi9ncmVwLmM6ODA5CiBtc2dpZCAiaWdub3JlIGZpbGVzIHNwZWNpZmllZCB2aWEgJy5naXRpZ25vcmUnIgogbXNnc3RyICLQuNCz0L3QvtGA0LjRgNCw0L3QtSDQvdCwINGE0LDQudC70L7QstC10YLQtSDRg9C60LDQt9Cw0L3QuCDQsiDigJ4uZ2l0aWdub3Jl4oCcIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDgKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxMQogbXNnaWQgInJlY3Vyc2l2ZWx5IHNlYXJjaCBpbiBlYWNoIHN1Ym1vZHVsZSIKIG1zZ3N0ciAi0YDQtdC60YPRgNGB0LjQstC90L4g0YLRitGA0YHQtdC90LUg0LLRitCyINCy0YHQuNGH0LrQuCDQv9C+0LTQvNC+0LTRg9C70LgiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxMQorIzogYnVpbHRpbi9ncmVwLmM6ODE0CiBtc2dpZCAic2hvdyBub24tbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINGA0LXQtNC+0LLQtdGC0LUsINC60L7QuNGC0L4g0L3QtSDRgdGK0LLQv9Cw0LTQsNGCIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxNgogbXNnaWQgImNhc2UgaW5zZW5zaXRpdmUgbWF0Y2hpbmciCiBtc2dzdHIgItCx0LXQtyDQt9C90LDRh9C10L3QuNC1INC90LAg0YDQtdCz0LjRgdGC0YrRgNCwINC90LAg0LHRg9C60LLQuNGC0LUgKNCz0LvQsNCy0L3QuC/QvNCw0LvQutC4KSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODE1CisjOiBidWlsdGluL2dyZXAuYzo4MTgKIG1zZ2lkICJtYXRjaCBwYXR0ZXJucyBvbmx5IGF0IHdvcmQgYm91bmRhcmllcyIKIG1zZ3N0ciAi0L3QsNC/0LDRgdCy0LDQvdC1INC90LAg0YjQsNCx0LvQvtC90LjRgtC1INGB0LDQvNC+INC/0L4g0LPRgNCw0L3QuNGG0LjRgtC1INC90LAg0LTRg9C80LjRgtC1IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyMAogbXNnaWQgInByb2Nlc3MgYmluYXJ5IGZpbGVzIGFzIHRleHQiCiBtc2dzdHIgItC+0LHRgNCw0LHQvtGC0LLQsNC90LUg0L3QsCDQtNCy0L7QuNGH0L3QuNGC0LUg0YTQsNC50LvQvtCy0LUg0LrQsNGC0L4g0YLQtdC60YHRgtC+0LLQuCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODE5CisjOiBidWlsdGluL2dyZXAuYzo4MjIKIG1zZ2lkICJkb24ndCBtYXRjaCBwYXR0ZXJucyBpbiBiaW5hcnkgZmlsZXMiCiBtc2dzdHIgItC/0YDQtdGB0LrQsNGH0LDQvdC1INC90LAg0LTQstC+0LjRh9C90LjRgtC1INGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MjIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyNQogbXNnaWQgInByb2Nlc3MgYmluYXJ5IGZpbGVzIHdpdGggdGV4dGNvbnYgZmlsdGVycyIKIG1zZ3N0ciAiIgogItC+0LHRgNCw0LHQvtGC0LLQsNC90LUg0L3QsCDQtNCy0L7QuNGH0L3QuNGC0LUg0YTQsNC50LvQvtCy0LUg0YfRgNC10Lcg0YTQuNC70YLRgNC4INC30LAg0L/RgNC10L7QsdGA0LDQt9GD0LLQsNC90LUg0LrRitC8INGC0LXQutGB0YIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgyNAorIzogYnVpbHRpbi9ncmVwLmM6ODI3CiBtc2dpZCAic2VhcmNoIGluIHN1YmRpcmVjdG9yaWVzIChkZWZhdWx0KSIKIG1zZ3N0ciAi0YLRitGA0YHQtdC90LUg0LIg0L/QvtC00LTQuNGA0LXQutGC0L7RgNC40LjRgtC1ICjRgdGC0LDQvdC00LDRgNGC0L3QvikiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgyNgorIzogYnVpbHRpbi9ncmVwLmM6ODI5CiBtc2dpZCAiZGVzY2VuZCBhdCBtb3N0IDxkZXB0aD4gbGV2ZWxzIgogbXNnc3RyICLQvdCw0LLQu9C40LfQsNC90LUg0LzQsNC60YHQuNC80LDQu9C90L4g0L3QsCDRgtCw0LfQuCDQlNCq0JvQkdCe0KfQmNCd0JAg0LIg0LTRitGA0LLQvtGC0L4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzMAorIzogYnVpbHRpbi9ncmVwLmM6ODMzCiBtc2dpZCAidXNlIGV4dGVuZGVkIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCiBtc2dzdHIgItGA0LDQt9GI0LjRgNC10L3QuCDRgNC10LPRg9C70Y/RgNC90Lgg0LjQt9GA0LDQt9C4INC/0L4gUE9TSVgiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzMworIzogYnVpbHRpbi9ncmVwLmM6ODM2CiBtc2dpZCAidXNlIGJhc2ljIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbnMgKGRlZmF1bHQpIgogbXNnc3RyICLQvtGB0L3QvtCy0L3QuCDRgNC10LPRg9C70Y/RgNC90Lgg0LjQt9GA0LDQt9C4INC/0L4gUE9TSVggKNGB0YLQsNC90LTQsNGA0YLQvdC+KSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODM2CisjOiBidWlsdGluL2dyZXAuYzo4MzkKIG1zZ2lkICJpbnRlcnByZXQgcGF0dGVybnMgYXMgZml4ZWQgc3RyaW5ncyIKIG1zZ3N0ciAi0YjQsNCx0LvQvtC90LjRgtC1INGB0LAg0LTQvtGB0LvQvtCy0L3QuCDQvdC40LfQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzOQorIzogYnVpbHRpbi9ncmVwLmM6ODQyCiBtc2dpZCAidXNlIFBlcmwtY29tcGF0aWJsZSByZWd1bGFyIGV4cHJlc3Npb25zIgogbXNnc3RyICLRgNC10LPRg9C70Y/RgNC90Lgg0LjQt9GA0LDQt9C4INC90LAgUGVybCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQyCisjOiBidWlsdGluL2dyZXAuYzo4NDUKIG1zZ2lkICJzaG93IGxpbmUgbnVtYmVycyIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L3QvtC80LXRgNCw0YLQsCDQvdCwINGA0LXQtNC+0LLQtdGC0LUiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0MworIzogYnVpbHRpbi9ncmVwLmM6ODQ2CiBtc2dpZCAic2hvdyBjb2x1bW4gbnVtYmVyIG9mIGZpcnN0IG1hdGNoIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvdC+0LzQtdGA0LAg0L3QsCDQutC+0LvQvtC90LDRgtCwINC90LAg0L/RitGA0LLQvtGC0L4g0L3QsNC/0LDRgdCy0LDQvdC1IgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NwogbXNnaWQgImRvbid0IHNob3cgZmlsZW5hbWVzIgogbXNnc3RyICLQsdC10Lcg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LjQvNC10L3QsNGC0LAg0L3QsCDRhNCw0LnQu9C+0LLQtdGC0LUiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0NQorIzogYnVpbHRpbi9ncmVwLmM6ODQ4CiBtc2dpZCAic2hvdyBmaWxlbmFtZXMiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINC40LzQtdC90LDRgtCwINC90LAg0YTQsNC50LvQvtCy0LXRgtC1IgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1MAogbXNnaWQgInNob3cgZmlsZW5hbWVzIHJlbGF0aXZlIHRvIHRvcCBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvtGC0L3QvtGB0LjRgtC10LvQvdC40YLQtSDQuNC80LXQvdCwINC90LAg0YTQsNC50LvQvtCy0LXRgtC1INGB0L/RgNGP0LzQviDQvtGB0L3QvtCy0L3QsNGC0LAg0LTQuNGA0LXQutGC0L7RgNC40Y8g0L3QsCAiCiAi0YXRgNCw0L3QuNC70LjRidC10YLQviIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQ5CisjOiBidWlsdGluL2dyZXAuYzo4NTIKIG1zZ2lkICJzaG93IG9ubHkgZmlsZW5hbWVzIGluc3RlYWQgb2YgbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDRgdCw0LzQviDQvdCwINC40LzQtdC90LDRgtCwINC90LAg0YTQsNC50LvQvtCy0LXRgtC1INCx0LXQtyDQvdCw0L/QsNGB0LLQsNGJ0LjRgtC1INGA0LXQtNC+0LLQtSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODUxCisjOiBidWlsdGluL2dyZXAuYzo4NTQKIG1zZ2lkICJzeW5vbnltIGZvciAtLWZpbGVzLXdpdGgtbWF0Y2hlcyIKIG1zZ3N0ciAi0L/RgdC10LLQtNC+0L3QuNC8INC90LAg4oCeLS1maWxlcy13aXRoLW1hdGNoZXPigJwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1NAorIzogYnVpbHRpbi9ncmVwLmM6ODU3CiBtc2dpZCAic2hvdyBvbmx5IHRoZSBuYW1lcyBvZiBmaWxlcyB3aXRob3V0IG1hdGNoIgogbXNnc3RyICIiCiAi0LjQt9Cy0LXQttC00LDQvdC1INGB0LDQvNC+INC90LAg0LjQvNC10L3QsNGC0LAg0L3QsCDRhNCw0LnQu9C+0LLQtdGC0LUsINC60L7QuNGC0L4g0L3QtSDRgdGK0LTRitGA0LbQsNGCINGA0LXQtCwg0L3QsNC/0LDRgdCy0LDRiSDQvdCwICIKICLRiNCw0LHQu9C+0L3QsCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODU2CisjOiBidWlsdGluL2dyZXAuYzo4NTkKIG1zZ2lkICJwcmludCBOVUwgYWZ0ZXIgZmlsZW5hbWVzIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvdGD0LvQtdCy0LjRjyDQt9C90LDQuiDigJ5OVUzigJwg0YHQu9C10LQg0LLRgdGP0LrQviDQuNC80LUg0L3QsCDRhNCw0LnQuyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODU5CisjOiBidWlsdGluL2dyZXAuYzo4NjIKIG1zZ2lkICJzaG93IG9ubHkgbWF0Y2hpbmcgcGFydHMgb2YgYSBsaW5lIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0YHQsNC80L4g0L3QsCDRh9Cw0YHRgtC40YLQtSDQvdCwINGA0LXQtNC+0LLQtdGC0LUsINC60L7QuNGC0L4g0YHRitCy0L/QsNC00LDRgiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODYxCisjOiBidWlsdGluL2dyZXAuYzo4NjQKIG1zZ2lkICJzaG93IHRoZSBudW1iZXIgb2YgbWF0Y2hlcyBpbnN0ZWFkIG9mIG1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQsdGA0L7RjyDQvdCwINGB0YrQstC/0LDQtNC10L3QuNGP0YLQsCDQstC80LXRgdGC0L4g0L3QsNC/0LDRgdCy0LDRidC40YLQtSDRgNC10LTQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2MgorIzogYnVpbHRpbi9ncmVwLmM6ODY1CiBtc2dpZCAiaGlnaGxpZ2h0IG1hdGNoZXMiCiBtc2dzdHIgItC+0YbQstC10YLRj9Cy0LDQvdC1INC90LAg0L3QsNC/0LDRgdCy0LDQvdC40Y/RgtCwIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2NwogbXNnaWQgInByaW50IGVtcHR5IGxpbmUgYmV0d2VlbiBtYXRjaGVzIGZyb20gZGlmZmVyZW50IGZpbGVzIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQv9GA0LDQt9C10L0g0YDQtdC0INC80LXQttC00YMg0L3QsNC/0LDRgdCy0LDQvdC40Y/RgtCwINC+0YIg0YDQsNC30LvQuNGH0L3QuCDRhNCw0LnQu9C+0LLQtSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODY2CisjOiBidWlsdGluL2dyZXAuYzo4NjkKIG1zZ2lkICJzaG93IGZpbGVuYW1lIG9ubHkgb25jZSBhYm92ZSBtYXRjaGVzIGZyb20gc2FtZSBmaWxlIgogbXNnc3RyICIiCiAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LjQvNC10YLQviDQvdCwINGE0LDQudC70LAg0YHQsNC80L4g0LLQtdC00L3RitC2INC30LAg0LLRgdC40YfQutC4INC90LDQv9Cw0YHQstCw0L3QuNGPINC+0YIg0YLQvtC30Lgg0YTQsNC50LsiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2OQorIzogYnVpbHRpbi9ncmVwLmM6ODcyCiBtc2dpZCAic2hvdyA8bj4gY29udGV4dCBsaW5lcyBiZWZvcmUgYW5kIGFmdGVyIG1hdGNoZXMiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINGC0LDQutGK0LIg0JHQoNCe0Jkg0YDQtdC00L7QstC1INC/0YDQtdC00Lgg0Lgg0YHQu9C10LQg0L3QsNC/0LDRgdCy0LDQvdC40Y/RgtCwIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3NQogbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYmVmb3JlIG1hdGNoZXMiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINGC0LDQutGK0LIg0JHQoNCe0Jkg0YDQtdC00L7QstC1INC/0YDQtdC00Lgg0L3QsNC/0LDRgdCy0LDQvdC40Y/RgtCwIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3NwogbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYWZ0ZXIgbWF0Y2hlcyIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YLQsNC60YrQsiDQkdCg0J7QmSDRgNC10LTQvtCy0LUg0YHQu9C10LQg0L3QsNC/0LDRgdCy0LDQvdC40Y/RgtCwIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3OQogbXNnaWQgInVzZSA8bj4gd29ya2VyIHRocmVhZHMiCiBtc2dzdHIgItC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0YLQsNC60YrQsiDQkdCg0J7QmSDRgNCw0LHQvtGC0LXRidC4INC90LjRiNC60LgiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NworIzogYnVpbHRpbi9ncmVwLmM6ODgwCiBtc2dpZCAic2hvcnRjdXQgZm9yIC1DIE5VTSIKIG1zZ3N0ciAi0L/RgdC10LLQtNC+0L3QuNC8INC90LAg4oCeLUMg0JHQoNCe0JnigJwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4MAorIzogYnVpbHRpbi9ncmVwLmM6ODgzCiBtc2dpZCAic2hvdyBhIGxpbmUgd2l0aCB0aGUgZnVuY3Rpb24gbmFtZSBiZWZvcmUgbWF0Y2hlcyIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YDQtdC0INGBINC40LzQtdGC0L4g0L3QsCDRhNGD0L3QutGG0LjRj9GC0LAsINCyINC60L7Rj9GC0L4g0LUg0L3QsNC/0LDRgdC90LDRgiDRiNCw0LHQu9C+0L3QsCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODgyCisjOiBidWlsdGluL2dyZXAuYzo4ODUKIG1zZ2lkICJzaG93IHRoZSBzdXJyb3VuZGluZyBmdW5jdGlvbiIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L7QsdGF0LLQsNGJ0LDRidCw0YLQsCDRhNGD0L3QutGG0LjRjyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODg1CisjOiBidWlsdGluL2dyZXAuYzo4ODgKIG1zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gZmlsZSIKIG1zZ3N0ciAi0LjQt9GH0LjRgtCw0L3QtSDQvdCwINGI0LDQsdC70L7QvdC40YLQtSDQvtGCINCk0JDQmdCbIgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5MAogbXNnaWQgIm1hdGNoIDxwYXR0ZXJuPiIKIG1zZ3N0ciAi0L3QsNC/0LDRgdCy0LDQvdC1INC90LAg0KjQkNCR0JvQntCdIgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5MgogbXNnaWQgImNvbWJpbmUgcGF0dGVybnMgc3BlY2lmaWVkIHdpdGggLWUiCiBtc2dzdHIgItC60L7QvNCx0LjQvdC40YDQsNC90LUg0L3QsCDRiNCw0LHQu9C+0L3QuNGC0LUg0YPQutCw0LfQsNC90Lgg0YEg0L7Qv9GG0LjRj9GC0LAg4oCeLWXigJwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwMQorIzogYnVpbHRpbi9ncmVwLmM6OTA0CiBtc2dpZCAiaW5kaWNhdGUgaGl0IHdpdGggZXhpdCBzdGF0dXMgd2l0aG91dCBvdXRwdXQiCiBtc2dzdHIgIiIKICLQsdC10Lcg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHRgtCw0L3QtNCw0YDRgtC90LjRjyDQuNC30YXQvtC0LiAg0JjQt9GF0L7QtNC90LjRj9GCINC60L7QtCDRg9C60LDQt9Cy0LAg0L3QsNC70LjRh9C40LXRgtC+INC90LAgIgogItC90LDQv9Cw0YHQstCw0L3QtSIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTAzCisjOiBidWlsdGluL2dyZXAuYzo5MDYKIG1zZ2lkICJzaG93IG9ubHkgbWF0Y2hlcyBmcm9tIGZpbGVzIHRoYXQgbWF0Y2ggYWxsIHBhdHRlcm5zIgogbXNnc3RyICIiCiAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YDQtdC00L7QstC1INGB0LDQvNC+INC+0YIg0YTQsNC50LvQvtCy0LXRgtC1LCDQutC+0LjRgtC+INC90LDQv9Cw0YHQstCw0YIg0L3QsCDQstGB0LjRh9C60Lgg0YjQsNCx0LvQvtC90LgiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwNQorIzogYnVpbHRpbi9ncmVwLmM6OTA4CiBtc2dpZCAic2hvdyBwYXJzZSB0cmVlIGZvciBncmVwIGV4cHJlc3Npb24iCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINC00YrRgNCy0L7RgtC+INC30LAg0LDQvdCw0LvQuNC3INC90LAg0YDQtdCz0YPQu9GP0YDQvdC40Y8g0LjQt9GA0LDQtyIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTA5CisjOiBidWlsdGluL2dyZXAuYzo5MTIKIG1zZ2lkICJwYWdlciIKIG1zZ3N0ciAi0L/RgNC+0LPRgNCw0LzQsCDQt9CwINC/0YDQtdCz0LvQtdC0INC/0L4g0YHRgtGA0LDQvdC40YbQuCIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTA5CisjOiBidWlsdGluL2dyZXAuYzo5MTIKIG1zZ2lkICJzaG93IG1hdGNoaW5nIGZpbGVzIGluIHRoZSBwYWdlciIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHRitCy0L/QsNC00LDRidC40YLQtSDRhNCw0LnQu9C+0LLQtSDQsiDQv9GA0L7Qs9GA0LDQvNCwINC30LAg0L/RgNC10LPQu9C10LQg0L/QviDRgdGC0YDQsNC90LjRhtC4IgogCi0jOiBidWlsdGluL2dyZXAuYzo5MTMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxNgogbXNnaWQgImFsbG93IGNhbGxpbmcgb2YgZ3JlcCgxKSAoaWdub3JlZCBieSB0aGlzIGJ1aWxkKSIKIG1zZ3N0ciAiIgogItC/0L7Qt9Cy0L7Qu9GP0LLQsNC90LUg0L3QsCDRgdGC0LDRgNGC0LjRgNCw0L3QtdGC0L4g0L3QsCBncmVwKDEpICjRgtC10LrRg9GJ0LjRj9GCINC60L7QvNC/0LjQu9Cw0YIg0L/RgNC10L3QtdCx0YDQtdCz0LLQsCDRgtCw0LfQuCAiCiAi0L7Qv9GG0LjRjykiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjk3NworIzogYnVpbHRpbi9ncmVwLmM6OTgzCiBtc2dpZCAibm8gcGF0dGVybiBnaXZlbiIKIG1zZ3N0ciAi0L3QtSDRgdGC0LUg0LfQsNC00LDQu9C4INGI0LDQsdC70L7QvSIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTAxMworIzogYnVpbHRpbi9ncmVwLmM6MTAxOQogbXNnaWQgIi0tbm8taW5kZXggb3IgLS11bnRyYWNrZWQgY2Fubm90IGJlIHVzZWQgd2l0aCByZXZzIgogbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLWNhY2hlZOKAnCDQuCDigJ4tLXVudHJhY2tlZOKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCDRgSDQstC10YDRgdC40LguIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDIwCisjOiBidWlsdGluL2dyZXAuYzoxMDI3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIHJldmlzaW9uOiAlcyIKIG1zZ3N0ciAi0LLQtdGA0YHQuNGP0YLQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INCx0YrQtNC1INC+0YLQutGA0LjRgtCwIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDUxCisjOiBidWlsdGluL2dyZXAuYzoxMDU3Cittc2dpZCAiLS11bnRyYWNrZWQgbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgorbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLXVudHJhY2tlZOKAnCDQuCDigJ4tLXJlY3Vyc2Utc3VibW9kdWxlc+KAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCIKKworIzogYnVpbHRpbi9ncmVwLmM6MTA2MQogbXNnaWQgImludmFsaWQgb3B0aW9uIGNvbWJpbmF0aW9uLCBpZ25vcmluZyAtLXRocmVhZHMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINC60L7QvNCx0LjQvdCw0YbQuNGPINC+0YIg0L7Qv9GG0LjQuCwg4oCeLS10aHJlYWRz4oCcINGJ0LUg0YHQtSDQv9GA0LXQvdC10LHRgNC10LPQvdC1IgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDU0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NworIzogYnVpbHRpbi9ncmVwLmM6MTA2NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NDcKIG1zZ2lkICJubyB0aHJlYWRzIHN1cHBvcnQsIGlnbm9yaW5nIC0tdGhyZWFkcyIKIG1zZ3N0ciAi0LvQuNC/0YHQstCwINC/0L7QtNC00YDRitC20LrQsCDQt9CwINC90LjRiNC60LguICDigJ4tLXRocmVhZHPigJwg0YnQtSDRgdC1INC/0YDQtdC90LXQsdGA0LXQs9C90LUiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUwMyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MTYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzNSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBudW1iZXIgb2YgdGhyZWFkcyBzcGVjaWZpZWQgKCVkKSIKIG1zZ3N0ciAi0LfQsNC00LDQtNC10L0g0LUg0L3QtdC/0YDQsNCy0LjQu9C10L0g0LHRgNC+0Lkg0L3QuNGI0LrQuDogJWQiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwODAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExMDEKIG1zZ2lkICItLW9wZW4tZmlsZXMtaW4tcGFnZXIgb25seSB3b3JrcyBvbiB0aGUgd29ya3RyZWUiCi1tc2dzdHIgIiIKLSLQvtC/0YbQuNGP0YLQsCDigJ4tLW9wZW4tZmlsZXMtaW4tcGFnZXLigJwg0LUg0YHRitCy0LzQtdGB0YLQuNC80LAg0YHQsNC80L4g0YEg0YLRitGA0YHQtdC90LUg0LIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4iCittc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tb3Blbi1maWxlcy1pbi1wYWdlcuKAnCDQuNC30LjRgdC60LLQsCDRgtGK0YDRgdC10L3QtSDQsiDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTEwMwotbXNnaWQgIm9wdGlvbiBub3Qgc3VwcG9ydGVkIHdpdGggLS1yZWN1cnNlLXN1Ym1vZHVsZXMiCi1tc2dzdHIgItC+0L/RhtC40Y/RgtCwINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgSDigJ4tLXJlY3Vyc2Utc3VibW9kdWxlc+KAnCIKLQotIzogYnVpbHRpbi9ncmVwLmM6MTEwOQorIzogYnVpbHRpbi9ncmVwLmM6MTEyNwogbXNnaWQgIi0tY2FjaGVkIG9yIC0tdW50cmFja2VkIGNhbm5vdCBiZSB1c2VkIHdpdGggLS1uby1pbmRleCIKIG1zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeLS1jYWNoZWTigJwg0Lgg4oCeLS11bnRyYWNrZWTigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80Lgg0YEg4oCeLS1uby1pbmRleOKAnCIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTExNQorIzogYnVpbHRpbi9ncmVwLmM6MTEzMwogbXNnaWQgIi0tW25vLV1leGNsdWRlLXN0YW5kYXJkIGNhbm5vdCBiZSB1c2VkIGZvciB0cmFja2VkIGNvbnRlbnRzIgogbXNnc3RyICIiCiAi0L7Qv9GG0LjQuNGC0LUg4oCeLS0obm8tKWV4Y2x1ZGUtc3RhbmRhcmTigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80Lgg0YEg0YLRitGA0YHQtdC90LUg0L/QviDRgdC70LXQtNC10L3QuCAiCiAi0YTQsNC50LvQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMjMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExNDEKIG1zZ2lkICJib3RoIC0tY2FjaGVkIGFuZCB0cmVlcyBhcmUgZ2l2ZW4iCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tY2FjaGVk4oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgdGK0YEg0LfQsNC00LDQstCw0L3QtSDQvdCwINC00YrRgNCy0L4iCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg1CiBtc2dpZCAiIgogImdpdCBoYXNoLW9iamVjdCBbLXQgPHR5cGU+XSBbLXddIFstLXBhdGg9PGZpbGU+IHwgLS1uby1maWx0ZXJzXSBbLS1zdGRpbl0gIgogIlstLV0gPGZpbGU+Li4uIgpAQCAtMTE5ODMsMzggKzE1MjA4LDM0IEBACiAiZ2l0IGhhc2gtb2JqZWN0IFstdCDQktCY0JRdIFstd10gWy0tcGF0aD3QpNCQ0JnQmyB8IC0tbm8tZmlsdGVyc10gWy0tc3RkaW5dIFstLV0gIgogItCk0JDQmdCb4oCmIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODUKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NgogbXNnaWQgImdpdCBoYXNoLW9iamVjdCAgLS1zdGRpbi1wYXRocyIKIG1zZ3N0ciAiZ2l0IGhhc2gtb2JqZWN0IC0tc3RkaW4tcGF0aHMiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5NwotbXNnaWQgInR5cGUiCi1tc2dzdHIgItCS0JjQlCIKLQotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk3CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKIG1zZ2lkICJvYmplY3QgdHlwZSIKIG1zZ3N0ciAi0JLQmNCUINC90LAg0L7QsdC10LrRgtCwIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OQogbXNnaWQgIndyaXRlIHRoZSBvYmplY3QgaW50byB0aGUgb2JqZWN0IGRhdGFiYXNlIgogbXNnc3RyICLQt9Cw0L/QuNGB0LLQsNC90LUg0L3QsCDQvtCx0LXQutGC0LAg0LIg0LHQsNC30LDRgtCwINC+0YIg0LTQsNC90L3QuCDQt9CwINC+0LHQtdC60YLQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDAKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDEKIG1zZ2lkICJyZWFkIHRoZSBvYmplY3QgZnJvbSBzdGRpbiIKIG1zZ3N0ciAi0LjQt9GH0LjRgtCw0L3QtSDQvdCwINC+0LHQtdC60YLQsCDQvtGCINGB0YLQsNC90LTQsNGA0YLQvdC40Y8g0LLRhdC+0LQiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDMKIG1zZ2lkICJzdG9yZSBmaWxlIGFzIGlzIHdpdGhvdXQgZmlsdGVycyIKIG1zZ3N0ciAi0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0YTQsNC50LvQsCDQutCw0LrRgtC+INC1IOKAlCDQsdC10Lcg0YTQuNC70YLRgNC4IgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAzCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0CiBtc2dpZCAiIgogImp1c3QgaGFzaCBhbnkgcmFuZG9tIGdhcmJhZ2UgdG8gY3JlYXRlIGNvcnJ1cHQgb2JqZWN0cyBmb3IgZGVidWdnaW5nIEdpdCIKIG1zZ3N0ciAiIgotItGB0YrQt9C00LDQstCw0L3QtSDQuCDRhdC10YjQuNGA0LDQvdC1INC90LAg0L/RgNC+0LjQt9Cy0L7Qu9C90Lgg0LTQsNC90L3QuCDQt9CwINC/0L7QstGA0LXQtNC10L3QuCDQvtCx0LXQutGC0Lgg0LfQsCDRgtGA0LDRgdC40YDQsNC90LUg0L3QsCAiCi0iR2l0IgorItGB0YrQt9C00LDQstCw0L3QtSDQuCDQuNC30YfQuNGB0LvRj9Cy0LDQvdC1INC90LAg0LrQvtC90YLRgNC+0LvQvdC4INGB0YPQvNC4INC90LAg0L/RgNC+0LjQt9Cy0L7Qu9C90Lgg0LTQsNC90L3QuCDQt9CwINC/0L7QstGA0LXQtNC10L3QuCAiCisi0L7QsdC10LrRgtC4INC30LAg0YLRgNCw0YHQuNGA0LDQvdC1INC90LAgR2l0IgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA1CiBtc2dpZCAicHJvY2VzcyBmaWxlIGFzIGl0IHdlcmUgZnJvbSB0aGlzIHBhdGgiCiBtc2dzdHIgItC+0LHRgNCw0LHQvtGC0LLQsNC90LUg0L3QsCDQpNCQ0JnQm9CwINCy0YHQtSDQtdC00L3QviDQtSDRgSDRgtC+0LfQuCDQv9GK0YIiCiAKQEAgLTEyMDU0LDMwICsxNTI3NSwzMCBAQAogbXNnaWQgImdpdCBoZWxwIFstLWFsbF0gWy0tZ3VpZGVzXSBbLS1tYW4gfCAtLXdlYiB8IC0taW5mb10gWzxjb21tYW5kPl0iCiBtc2dzdHIgImdpdCBoZWxwIFstLWFsbF0gWy0tZ3VpZGVzXSBbLS1tYW4gfCAtLXdlYiB8IC0taW5mb10gW9Ca0J7QnNCQ0J3QlNCQXSIKIAotIzogYnVpbHRpbi9oZWxwLmM6NzMKKyM6IGJ1aWx0aW4vaGVscC5jOjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBoZWxwIGZvcm1hdCAnJXMnIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGCINGE0L7RgNC80LDRgiDQvdCwINC/0L7QvNC+0YnRgtCwIOKAniVz4oCcIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMDAKKyM6IGJ1aWx0aW4vaGVscC5jOjEwNAogbXNnaWQgIkZhaWxlZCB0byBzdGFydCBlbWFjc2NsaWVudC4iCiBtc2dzdHIgItCd0LXRg9GB0L/QtdGI0L3QviDRgdGC0LDRgNGC0LjRgNCw0L3QtSDQvdCwIOKAnmVtYWNzY2xpZW504oCcLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTEzCisjOiBidWlsdGluL2hlbHAuYzoxMTcKIG1zZ2lkICJGYWlsZWQgdG8gcGFyc2UgZW1hY3NjbGllbnQgdmVyc2lvbi4iCiBtc2dzdHIgItCS0LXRgNGB0LjRj9GC0LAg0L3QsCDigJ5lbWFjc2NsaWVudOKAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQsNC90LDQu9C40LfQuNGA0LAuIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMjEKKyM6IGJ1aWx0aW4vaGVscC5jOjEyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJlbWFjc2NsaWVudCB2ZXJzaW9uICclZCcgdG9vIG9sZCAoPCAyMikuIgogbXNnc3RyICLQn9GA0LXQutCw0LvQtdC90L4g0YHRgtCw0YDQsCDQstC10YDRgdC40Y8g0L3QsCDigJ5lbWFjc2NsaWVudOKAnCDigJQgJWQgKDwgMjIpLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTM5IGJ1aWx0aW4vaGVscC5jOjE2MSBidWlsdGluL2hlbHAuYzoxNzEgYnVpbHRpbi9oZWxwLmM6MTc5CisjOiBidWlsdGluL2hlbHAuYzoxNDMgYnVpbHRpbi9oZWxwLmM6MTY1IGJ1aWx0aW4vaGVscC5jOjE3NSBidWlsdGluL2hlbHAuYzoxODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgJyVzJyIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjIxNworIzogYnVpbHRpbi9oZWxwLmM6MjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnOiBwYXRoIGZvciB1bnN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgpAQCAtMTIwODYsNyArMTUzMDcsNyBAQAogIuKAniVz4oCcOiDQv9GK0YIg0LrRitC8INC90LXQv9C+0LTQtNGK0YDQttCw0L3QsCDQv9GA0L7Qs9GA0LDQvNCwINC30LAg0L/RgNC10LPQu9C10LQg0L3QsFxuIgogIiDRgNGK0LrQvtCy0L7QtNGB0YLQstC+0YLQvi4gINCS0LzQtdGB0YLQviDQvdC10Y8g0L/RgNC+0LHQstCw0LnRgtC1IOKAnm1hbi48dG9vbD4uY21k4oCcLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MjI5CisjOiBidWlsdGluL2hlbHAuYzoyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcyc6IGNtZCBmb3Igc3VwcG9ydGVkIG1hbiB2aWV3ZXIuXG4iCkBAIC0xMjA5NSwzMzkgKzE1MzE2LDMyOCBAQAogIuKAniVz4oCcOiDQutC+0LzQsNC90LTQsCDQt9CwINC/0L7QtNC00YrRgNC20LDQvdCwINC/0YDQvtCz0YDQsNC80LAg0LfQsCDQv9GA0LXQs9C70LXQtCDQvdCwXG4iCiAiINGA0YrQutC+0LLQvtC00YHRgtCy0L7RgtC+LiAg0JLQvNC10YHRgtC+INC90LXRjyDQv9GA0L7QsdCy0LDQudGC0LUg4oCebWFuLjx0b29sPi5wYXRo4oCcLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MzQ2CisjOiBidWlsdGluL2hlbHAuYzozNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogdW5rbm93biBtYW4gdmlld2VyLiIKIG1zZ3N0ciAi4oCeJXPigJw6INC90LXQv9C+0LfQvdCw0YLQsCDQv9GA0L7Qs9GA0LDQvNCwINC30LAg0L/RgNC10LPQu9C10LQg0L3QsCDRgNGK0LrQvtCy0L7QtNGB0YLQstC+0YLQvi4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM2MworIzogYnVpbHRpbi9oZWxwLmM6MzY3CiBtc2dpZCAibm8gbWFuIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgogbXNnc3RyICLQvdC40LrQvtGPINC/0YDQvtCz0YDQsNC80LAg0LfQsCDQv9GA0LXQs9C70LXQtCDQvdCwINGA0YrQutC+0LLQvtC00YHRgtCy0L4g0L3QtSDRg9GB0L/RjyDQtNCwINC+0LHRgNCw0LHQvtGC0Lgg0LfQsNGP0LLQutCw0YLQsCIKIAotIzogYnVpbHRpbi9oZWxwLmM6MzcxCisjOiBidWlsdGluL2hlbHAuYzozNzUKIG1zZ2lkICJubyBpbmZvIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgogbXNnc3RyICIiCiAi0L3QuNC60L7RjyDQv9GA0L7Qs9GA0LDQvNCwINC30LAg0L/RgNC10LPQu9C10LQg0L3QsCDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3QuNGC0LUg0YHRgtGA0LDQvdC40YbQuCDQvdC1INGD0YHQv9GPINC00LAg0L7QsdGA0LDQsdC+0YLQuCAiCiAi0LfQsNGP0LLQutCw0YLQsCIKIAotIzogYnVpbHRpbi9oZWxwLmM6NDMwIGJ1aWx0aW4vaGVscC5jOjQ0MSBnaXQuYzozMjIKKyM6IGJ1aWx0aW4vaGVscC5jOjQzNCBidWlsdGluL2hlbHAuYzo0NDUgZ2l0LmM6MzM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxpYXNlZCB0byAnJXMnIgogbXNnc3RyICLigJ4lc+KAnCDQtSDQv9GB0LXQstC00L7QvdC40Lwg0L3QsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9oZWxwLmM6NDQ0CisjOiBidWlsdGluL2hlbHAuYzo0NDggZ2l0LmM6MzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBhbGlhcy4lcyBzdHJpbmc6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQvdC40Lcg0LfQsCDQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAnmFsaWFzLiVz4oCcOiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9oZWxwLmM6NDczIGJ1aWx0aW4vaGVscC5jOjUwMworIzogYnVpbHRpbi9oZWxwLmM6NDc3IGJ1aWx0aW4vaGVscC5jOjUwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1c2FnZTogJXMlcyIKIG1zZ3N0ciAi0YPQv9C+0YLRgNC10LHQsDogJXMlcyIKIAotIzogYnVpbHRpbi9oZWxwLmM6NDg3CisjOiBidWlsdGluL2hlbHAuYzo0OTEKIG1zZ2lkICInZ2l0IGhlbHAgY29uZmlnJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAi0JfQsCDQv9C+0LLQtdGH0LUg0LjQvdGE0L7RgNC80LDRhtC40Y8g0LjQt9C/0YrQu9C90LXRgtC1IOKAnmdpdCBoZWxwIGNvbmZpZ+KAnCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTg0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxODUKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IHR5cGUgbWlzbWF0Y2ggYXQgJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INCy0LjQtCDQvdCwINC+0LHQtdC60YLQsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGlkIG5vdCByZWNlaXZlIGV4cGVjdGVkIG9iamVjdCAlcyIKIG1zZ3N0ciAi0L7Rh9Cw0LrQstCw0L3QuNGP0YIg0L7QsdC10LrRgiDigJ4lc+KAnCDQvdC1INCx0LUg0L/QvtC70YPRh9C10L0iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlczogZXhwZWN0ZWQgdHlwZSAlcywgZm91bmQgJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INCy0LjQtCDQvdCwINC+0LHQtdC60YLQsCDigJ4lc+KAnDog0L7Rh9Cw0LrQstCw0YjQtSDRgdC1IOKAniVz4oCcLCDQsCDQsdC1INC/0L7Qu9GD0YfQtdC9IOKAniVz4oCcIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNDkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmlsbCAlZCBieXRlIgogbXNnaWRfcGx1cmFsICJjYW5ub3QgZmlsbCAlZCBieXRlcyIKIG1zZ3N0clswXSAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNC/0YrQu9C90LggJWQg0LHQsNC50YIiCiBtc2dzdHJbMV0gItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC30LDQv9GK0LvQvdGP0YIgJWQg0LHQsNC50YLQsCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjU5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyNjgKIG1zZ2lkICJlYXJseSBFT0YiCiBtc2dzdHIgItC90LXQvtGH0LDQutCy0LDQvSDQutGA0LDQuSDQvdCwINGE0LDQudC7IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNjAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OQogbXNnaWQgInJlYWQgZXJyb3Igb24gaW5wdXQiCiBtc2dzdHIgItCz0YDQtdGI0LrQsCDQv9GA0Lgg0YfQtdGC0LXQvdC1INC90LAg0LLRhdC+0LTQvdC40YLQtSDQtNCw0L3QvdC4IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNzIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI4MQogbXNnaWQgInVzZWQgbW9yZSBieXRlcyB0aGFuIHdlcmUgYXZhaWxhYmxlIgogbXNnc3RyICLQuNC30L/QvtC70LfQstCw0L3QuCDRgdCwINC/0L7QstC10YfQtSDQvtGCINC90LDQu9C40YfQvdC40YLQtSDQsdCw0LnRgtC+0LLQtSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6Mjc5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTk4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyODggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo2MDYKIG1zZ2lkICJwYWNrIHRvbyBsYXJnZSBmb3IgY3VycmVudCBkZWZpbml0aW9uIG9mIG9mZl90IgogbXNnc3RyICLQv9Cw0LrQtdGC0L3QuNGP0YIg0YTQsNC50Lsg0LUg0L/RgNC10LrQsNC70LXQvdC+INCz0L7Qu9GP0Lwg0LfQsCDRgtC10LrRg9GJ0LDRgtCwINGB0YLQvtC50L3QvtGB0YIg0L3QsCDRgtC40L/QsCDigJ5vZmZfdOKAnCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjgyIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo5NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjkxIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo5NQogbXNnaWQgInBhY2sgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgc2l6ZSIKIG1zZ3N0ciAi0L/QsNC60LXRgtC90LjRj9GCINGE0LDQudC7INC90LDQtNCy0LjRiNCw0LLQsCDQvNCw0LrRgdC40LzQsNC70L3QuNGPINCy0YrQt9C80L7QttC10L0g0YDQsNC30LzQtdGAIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyOTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAnJXMnIgotbXNnc3RyICLQv9Cw0LrQtdGC0L3QuNGP0YIg0YTQsNC50Lsg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGB0YrQt9C00LDQtNC10L0iCi0KLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMwMworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuIHBhY2tmaWxlICclcyciCiBtc2dzdHIgItC/0LDQutC10YLQvdC40Y/RgiDRhNCw0LnQuyDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtCy0L7RgNC10L0iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMxNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzI2CiBtc2dpZCAicGFjayBzaWduYXR1cmUgbWlzbWF0Y2giCiBtc2dzdHIgItC90LXRgdGK0L7RgtCy0LXRgtGB0YLQstC40LUg0LIg0L/QvtC00L/QuNGB0LAg0LrRitC8INC/0LDQutC10YLQvdC40Y8g0YTQsNC50LsiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMxOQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2sgdmVyc2lvbiAlPFBSSXUzMj4gdW5zdXBwb3J0ZWQiCiBtc2dzdHIgItC90LUg0YHQtSDQv9C+0LTQtNGK0YDQttCwINC/0LDQutC10YLQuNGA0LDQvdC1INCyZdGA0YHQuNGPIOKAniU8UFJJdTMyPuKAnCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzM3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzozNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjayBoYXMgYmFkIG9iamVjdCBhdCBvZmZzZXQgJTxQUkl1TUFYPjogJXMiCiBtc2dzdHIgItC/0L7QstGA0LXQtNC10L0g0L7QsdC10LrRgiDQsiDQv9Cw0LrQtdGC0L3QuNGPINGE0LDQudC7INC/0YDQuCDQvtGC0LzQtdGB0YLQstCw0L3QtSAlPFBSSXVNQVg+OiAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NDU3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5mbGF0ZSByZXR1cm5lZCAlZCIKIG1zZ3N0ciAi0LTQtdC60L7QvNC/0YDQtdGB0LjRgNCw0L3QtdGC0L4g0YEg4oCeaW5mbGF0ZeKAnCDQstGK0YDQvdCwICVkIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1MDYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNQogbXNnaWQgIm9mZnNldCB2YWx1ZSBvdmVyZmxvdyBmb3IgZGVsdGEgYmFzZSBvYmplY3QiCiBtc2dzdHIgItGB0YLQvtC50L3QvtGB0YLRgtCwINC90LAg0L7RgtC80LXRgdGC0LLQsNC90LXRgtC+INC30LAg0L7QsdC10LrRgtCwLdGA0LDQt9C70LjQutCwINCy0L7QtNC4INC00L4g0L/RgNC10L/RitC70LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTIzCiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgaXMgb3V0IG9mIGJvdW5kIgogbXNnc3RyICLRgdGC0L7QudC90L7RgdGC0YLQsCDQvdCwINC+0YLQvNC10YHRgtCy0LDQvdC10YLQviDQt9CwINC+0LHQtdC60YLQsC3RgNCw0LfQu9C40LrQsCDQtSDQuNC30LLRitC9INC00LjQsNC/0LDQt9C+0L3QsCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTIyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvYmplY3QgdHlwZSAlZCIKIG1zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgiDQstC40LQg0L7QsdC10LrRgiAlZCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTUzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NjIKIG1zZ2lkICJjYW5ub3QgcHJlYWQgcGFjayBmaWxlIgogbXNnc3RyICLQv9Cw0LrQtdGC0L3QuNGP0YIg0YTQsNC50Lsg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L0iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU1NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgInByZW1hdHVyZSBlbmQgb2YgcGFjayBmaWxlLCAlPFBSSXVNQVg+IGJ5dGUgbWlzc2luZyIKIG1zZ2lkX3BsdXJhbCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICU8UFJJdU1BWD4gYnl0ZXMgbWlzc2luZyIKIG1zZ3N0clswXSAi0L3QtdC+0YfQsNC60LLQsNC9INC60YDQsNC5INC90LAg0YTQsNC50LssINC70LjQv9GB0LLQsCAlPFBSSXVNQVg+INCx0LDQudGCIgogbXNnc3RyWzFdICLQvdC10L7Rh9Cw0LrQstCw0L0g0LrRgNCw0Lkg0L3QsCDRhNCw0LnQuywg0LvQuNC/0YHQstCw0YIgJTxQUkl1TUFYPiDQsdCw0LnRgtCwIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1ODEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU5MAogbXNnaWQgInNlcmlvdXMgaW5mbGF0ZSBpbmNvbnNpc3RlbmN5IgogbXNnc3RyICLRgdC10YDQuNC+0LfQvdCwINCz0YDQtdGI0LrQsCDQv9GA0Lgg0LTQtdC60L7QvNC/0YDQtdGB0LjRgNCw0L3QtSDRgSDigJ5pbmZsYXRl4oCcIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3MjYgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzMyIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc1NQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6Nzk0IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwMworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzM1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc0MSBidWlsdGluL2luZGV4LXBhY2suYzo3NjUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwNCBidWlsdGluL2luZGV4LXBhY2suYzo4MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiU0hBMSBDT0xMSVNJT04gRk9VTkQgV0lUSCAlcyAhIgogbXNnc3RyICIiCiAi0KHQqtCS0J/QkNCU0JXQndCY0JUg0J3QkCDQodCi0J7QmdCd0J7QodCi0JjQotCVINCX0JAg0KHQo9Cc0JjQotCVINCX0JAgU0hBMTog4oCeJXPigJwg0J3QkCDQlNCS0JAg0KDQkNCX0JvQmNCn0J3QmCDQntCR0JXQmtCi0JAhIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3MjkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTEKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjExIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzA1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo3MzggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjE4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkICVzIgogbXNnc3RyICLQvtCx0LXQutGC0YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzkyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgZXhpc3Rpbmcgb2JqZWN0IGluZm8gJXMiCiBtc2dzdHIgItGB0YrRidC10YHRgtCy0YPQstCw0YnQuNGP0YIg0L7QsdC10LrRgiDQsiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgZXhpc3Rpbmcgb2JqZWN0ICVzIgogbXNnc3RyICLRgdGK0YnQtdGB0YLQstGD0LLQsNGJ0LjRj9GCINC+0LHQtdC60YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L0iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxNAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgYmxvYiBvYmplY3QgJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INC+0LHQtdC60YItQkxPQiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODE3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzNgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODI3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0NgogbXNnaWQgImZzY2sgZXJyb3IgaW4gcGFja2VkIG9iamVjdCIKIG1zZ3N0ciAi0LPRgNC10YjQutCwINC/0YDQuCDQv9GA0L7QstC10YDQutCw0YLQsCDQvdCwINC/0LDQutC10YLQuNGA0LDQvdC4INC+0LHQtdC60YLQuCIKIAotIyBGSVhNRSBwZXJoYXBzIGludmFsaWQgb2JqZWN0IG9yIHBhY2sKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzMwotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkICVzIgotbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQvtCx0LXQutGCIOKAniVz4oCcIgotCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4MzgKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYWxsIGNoaWxkIG9iamVjdHMgb2YgJXMgYXJlIHJlYWNoYWJsZSIKIG1zZ3N0ciAi0J3Rj9C60L7QuCDQvtCx0LXQutGC0LgsINC90LDRgdC70LXQtNC90LjRhtC4INC90LAg4oCeJXPigJwsINC90LUg0LzQvtCz0LDRgiDQtNCwINCx0YrQtNCw0YIg0LTQvtGB0YLQuNCz0L3QsNGC0LgiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjkxMCBidWlsdGluL2luZGV4LXBhY2suYzo5NDEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjkyMCBidWlsdGluL2luZGV4LXBhY2suYzo5NTEKIG1zZ2lkICJmYWlsZWQgdG8gYXBwbHkgZGVsdGEiCiBtc2dzdHIgItGA0LDQt9C70LjQutCw0YLQsCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC40LvQvtC20LXQvdCwIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTA5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTIxCiBtc2dpZCAiUmVjZWl2aW5nIG9iamVjdHMiCiBtc2dzdHIgItCf0L7Qu9GD0YfQsNCy0LDQvdC1INC90LAg0L7QsdC10LrRgtC4IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTA5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTIxCiBtc2dpZCAiSW5kZXhpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi0JjQvdC00LXQutGB0LjRgNCw0L3QtSDQvdCwINC+0LHQtdC60YLQuCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE0MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE1NQogbXNnaWQgInBhY2sgaXMgY29ycnVwdGVkIChTSEExIG1pc21hdGNoKSIKIG1zZ3N0ciAi0L/QsNC60LXRgtC90LjRj9GCINGE0LDQudC7INC1INC/0L7QstGA0LXQtNC10L0gKNC90LXQtdC00L3QsNC60LLQuCDRgdGD0LzQuCDQv9C+IFNIQTEpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTQ4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYwCiBtc2dpZCAiY2Fubm90IGZzdGF0IHBhY2tmaWxlIgogbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9C+0LvRg9GH0Lgg0LjQvdGE0L7RgNC80LDRhtC40Y8g0LfQsCDQv9Cw0LrQtdGC0L3QuNGPINGE0LDQudC7INGBIOKAnmZzdGF04oCcIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTUxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYzCiBtc2dpZCAicGFjayBoYXMganVuayBhdCB0aGUgZW5kIgogbXNnc3RyICLQsiDQutGA0LDRjyDQvdCwINC/0LDQutC10YLQvdC40Y8g0YTQsNC50Lsg0LjQvNCwINC/0L7QstGA0LXQtNC10L3QuCDQtNCw0L3QvdC4IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTc1CiBtc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSBpbiBwYXJzZV9wYWNrX29iamVjdHMoKSIKIG1zZ3N0ciAiIgogItGE0LDRgtCw0LvQvdCwINCz0YDQtdGI0LrQsCDQstGK0LIg0YTRg9C90LrRhtC40Y/RgtCwIOKAnnBhcnNlX3BhY2tfb2JqZWN0c+KAnC4gINCi0L7QstCwINC1INCz0YDQtdGI0LrQsCDQsiBHaXQsICIKICLQtNC+0LrQu9Cw0LTQstCw0LnRgtC1INGPINC90LAg0YDQsNC30YDQsNCx0L7RgtGH0LjRhtC40YLQtSwg0LrQsNGC0L4g0L/RgNCw0YLQuNGC0LUg0LUt0L/QuNGB0LzQviDQvdCwINCw0LTRgNC10YE6IOKAnmdpdEB2Z2VyLiIKICJrZXJuZWwub3Jn4oCcLiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE4NgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE5OAogbXNnaWQgIlJlc29sdmluZyBkZWx0YXMiCiBtc2dzdHIgItCe0YLQutGA0LjQstCw0L3QtSDQvdCwINGB0YrQvtGC0LLQtdGC0L3QuNGC0LUg0YDQsNC30LvQuNC60LgiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExOTYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNDkyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjA4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjYxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRocmVhZDogJXMiCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INGB0YrQt9C00LDQtNC1INC90LjRiNC60LA6ICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjM3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjQ5CiBtc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSIKIG1zZ3N0ciAiIgogItGE0LDRgtCw0LvQvdCwINCz0YDQtdGI0LrQsCDQstGK0LIg0YTRg9C90LrRhtC40Y/RgtCwIOKAnmNvbmNsdWRlX3BhY2vigJwuICDQotC+0LLQsCDQtSDQs9GA0LXRiNC60LAg0LIgR2l0LCAiCiAi0LTQvtC60LvQsNC00LLQsNC50YLQtSDRjyDQvdCwINGA0LDQt9GA0LDQsdC+0YLRh9C40YbQuNGC0LUsINC60LDRgtC+INC/0YDQsNGC0LjRgtC1INC1LdC/0LjRgdC80L4g0L3QsCDQsNC00YDQtdGBOiDigJ5naXRAdmdlci4iCiAia2VybmVsLm9yZ+KAnC4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tcGxldGVkIHdpdGggJWQgbG9jYWwgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJjb21wbGV0ZWQgd2l0aCAlZCBsb2NhbCBvYmplY3RzIgogbXNnc3RyWzBdICLQtNC10LnRgdGC0LLQuNC10YLQviDQt9Cw0LLRitGA0YjQuCDRgSAlZCDQu9C+0LrQsNC70LXQvSDQvtCx0LXQutGCIgogbXNnc3RyWzFdICLQtNC10LnRgdGC0LLQuNC10YLQviDQt9Cw0LLRitGA0YjQuCDRgSAlZCDQu9C+0LrQsNC70L3QuCDQvtCx0LXQutGC0LAiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5leHBlY3RlZCB0YWlsIGNoZWNrc3VtIGZvciAlcyAoZGlzayBjb3JydXB0aW9uPykiCiBtc2dzdHIgIiIKICLQndC10L7Rh9Cw0LrQstCw0L3QsCDQv9C+0YHQu9C10LTQstCw0YnQsCDRgdGD0LzQsCDQt9CwINCz0YDQtdGI0LrQuCDQt9CwIOKAniVz4oCcICjQv9GA0LjRh9C40L3QsNGC0LAg0LzQvtC20LUg0LTQsCDQtSDQs9GA0LXRiNC60LAg0LIgIgogItC00LjRgdC60LApIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjU5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2sgaGFzICVkIHVucmVzb2x2ZWQgZGVsdGEiCiBtc2dpZF9wbHVyYWwgInBhY2sgaGFzICVkIHVucmVzb2x2ZWQgZGVsdGFzIgogbXNnc3RyWzBdICLQsiDQv9Cw0LrQtdGC0LAg0LjQvNCwICVkINC90LXQvdCw0L/QsNGB0LLQsNGJ0LAg0YDQsNC30LvQuNC60LAiCiBtc2dzdHJbMV0gItCyINC/0LDQutC10YLQsCDQuNC80LAgJWQg0L3QtdC90LDQv9Cw0YHQstCw0YnQuCDRgNCw0LfQu9C40LrQuCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI4MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZGVmbGF0ZSBhcHBlbmRlZCBvYmplY3QgKCVkKSIKIG1zZ3N0ciAi0LTQvtCx0LDQstC10L3QuNGP0YIg0L7QsdC10LrRgiDQvdC1INC80L7QttC1INC00LAg0YHQtSDQutC+0LzQv9GA0LXRgdC40YDQsCDRgSDigJ5kZWZsYXRl4oCcOiAlZCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM2MAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2NhbCBvYmplY3QgJXMgaXMgY29ycnVwdCIKIG1zZ3N0ciAi0LvQvtC60LDQu9C90LjRj9GCINC+0LHQtdC60YIg4oCeJXPigJwg0LUg0L/QvtCy0YDQtdC00LXQvSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM3NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrZmlsZSBuYW1lICclcycgZG9lcyBub3QgZW5kIHdpdGggJy5wYWNrJyIKIG1zZ3N0ciAi0LjQvNC10YLQviDQvdCwINC/0LDQutC10YLQvdC40Y8g0YTQsNC50Lsg4oCeJXPigJwg0L3QtSDQt9Cw0LLRitGA0YjQstCwINC90LAg4oCeLnBhY2vigJwiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzOTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHdyaXRlICVzIGZpbGUgJyVzJyIKIG1zZ3N0ciAi0LPRgNC10YjQutCwINC/0YDQuCDQt9Cw0L/QuNGBINC90LAg0YTQsNC50LvQsCDigJ4lc+KAnCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQwNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY2xvc2Ugd3JpdHRlbiAlcyBmaWxlICclcyciCiBtc2dzdHIgItCz0YDQtdGI0LrQsCDQv9GA0Lgg0LfQsNGC0LLQsNGA0Y/QvdC10YLQviDQvdCwINC30LDQv9C40YHQsNC90LjRjyDRhNCw0LnQuyDigJ4lc+KAnCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQzMQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ2MwogbXNnaWQgImVycm9yIHdoaWxlIGNsb3NpbmcgcGFjayBmaWxlIgogbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INC30LDRgtCy0LDRgNGP0L3QtdGC0L4g0L3QsCDQv9Cw0LrQtdGC0L3QuNGPINGE0LDQudC7IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDQ1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDc3CiBtc2dpZCAiY2Fubm90IHN0b3JlIHBhY2sgZmlsZSIKIG1zZ3N0ciAi0L/QsNC60LXRgtC90LjRj9GCINGE0LDQudC7INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0L/QsNC30LXQvSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ1MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ4NQogbXNnaWQgImNhbm5vdCBzdG9yZSBpbmRleCBmaWxlIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg0LfQsCDQuNC90LTQtdC60YHQsCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRitGF0YDQsNC90LXQvSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ5NyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MjcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MjkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODYyCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBwYWNrLmluZGV4dmVyc2lvbj0lPFBSSXUzMj4iCiBtc2dzdHIgItC30LDQtNCw0LTQtdC90LAg0LUg0L3QtdC/0YDQsNCy0LjQu9C90LAg0LLQtdGA0YHQuNGPINC/0LDQutC10YLQuNGA0LDQvdC1OiDigJ5wYWNrLmluZGV4dmVyc2lvbj0lPFBSSXUzMj7igJwiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NjUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IG9wZW4gZXhpc3RpbmcgcGFjayBmaWxlICclcyciCiBtc2dzdHIgItCh0YrRidC10YHRgtCy0YPQstCw0YnQuNGP0YIg0L/QsNC60LXRgtC10L0g0YTQsNC50Lsg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQstC+0YDQtdC9IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTY3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBvcGVuIGV4aXN0aW5nIHBhY2sgaWR4IGZpbGUgZm9yICclcyciCiBtc2dzdHIgItCh0YrRidC10YHRgtCy0YPQstCw0YnQuNGP0YIg0LjQvdC00LXQutGBINC30LAg0L/QsNC60LXRgtC90LjRjyDRhNCw0LnQuyDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtCy0L7RgNC10L0iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2MTUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAibm9uIGRlbHRhOiAlZCBvYmplY3QiCiBtc2dpZF9wbHVyYWwgIm5vbiBkZWx0YTogJWQgb2JqZWN0cyIKIG1zZ3N0clswXSAiJWQg0L7QsdC10LrRgiDQvdC1INC1INGA0LDQt9C70LjQutCwIgogbXNnc3RyWzFdICIlZCDQvtCx0LXQutGC0LAg0L3QtSDRgdCwINGA0LDQt9C70LjQutCwIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjIyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNoYWluIGxlbmd0aCA9ICVkOiAlbHUgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJjaGFpbiBsZW5ndGggPSAlZDogJWx1IG9iamVjdHMiCiBtc2dzdHJbMF0gItC00YrQu9C20LjQvdCw0YLQsCDQvdCwINCy0LXRgNC40LPQsNGC0LAg0LUgJWQ6ICVsdSDQvtCx0LXQutGCIgogbXNnc3RyWzFdICLQtNGK0LvQttC40L3QsNGC0LAg0L3QsCDQstC10YDQuNCz0LDRgtCwINC1ICVkOiAlbHUg0L7QsdC10LrRgtCwIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjU5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjkzCiBtc2dpZCAiQ2Fubm90IGNvbWUgYmFjayB0byBjd2QiCiBtc2dzdHIgItCf0YDQvtGG0LXRgdGK0YIg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LLRitGA0L3QtSDQutGK0Lwg0L/RgNC10LTQuNGI0L3QsNGC0LAg0YDQsNCx0L7RgtC90LAg0LTQuNGA0LXQutGC0L7RgNC40Y8iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MDggYnVpbHRpbi9pbmRleC1wYWNrLmM6MTcxMQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTcyNyBidWlsdGluL2luZGV4LXBhY2suYzoxNzMxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQyIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NjEgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINGB0YLQvtC50L3QvtGB0YIg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3ODEKIG1zZ2lkICItLWZpeC10aGluIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgLS1zdGRpbiIKIG1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1maXgtdGhpbuKAnCDQuNC30LjRgdC60LLQsCDigJ4tLXN0ZGlu4oCcIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQ5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzgzCiBtc2dpZCAiLS1zdGRpbiByZXF1aXJlcyBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICLigJ4tLXN0ZGlu4oCcINC40LfQuNGB0LrQstCwINGF0YDQsNC90LjQu9C40YnQtSDQvdCwIGdpdCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc1NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4OQogbXNnaWQgIi0tdmVyaWZ5IHdpdGggbm8gcGFja2ZpbGUgbmFtZSBnaXZlbiIKIG1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS12ZXJpZnnigJwg0LjQt9C40YHQutCy0LAg0LjQvNC1INC90LAg0L/QsNC60LXRgtC10L0g0YTQsNC50LsiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4MDMgYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjU4MAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTgzNyBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTgyCiBtc2dpZCAiZnNjayBlcnJvciBpbiBwYWNrIG9iamVjdHMiCiBtc2dzdHIgItCz0YDQtdGI0LrQsCDQv9GA0Lgg0L/RgNC+0LLQtdGA0LrQsCDRgSDigJ5mc2Nr4oCcINC90LAg0L/QsNC60LXRgtC90LjRgtC1INC+0LHQtdC60YLQuCIKIApAQCAtMTI0NzEsNDMgKzE1NjgxLDQzIEBACiBtc2dpZCAibm90IGNvcHlpbmcgdGVtcGxhdGVzIGZyb20gJyVzJzogJXMiCiBtc2dzdHIgItGI0LDQsdC70L7QvdC40YLQtSDQvdGP0LzQsCDQtNCwINCx0YrQtNCw0YIg0LrQvtC/0LjRgNCw0L3QuCDQvtGCIOKAniVz4oCcOiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6MzI5CisjOiBidWlsdGluL2luaXQtZGIuYzozMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGhhbmRsZSBmaWxlIHR5cGUgJWQiCiBtc2dzdHIgItGE0LDQudC70L7QstC1INC+0YIg0LLQuNC0ICVkINC90LUg0YHQtSDQv9C+0LTQtNGK0YDQttCw0YIiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMzMgorIzogYnVpbHRpbi9pbml0LWRiLmM6MzM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtb3ZlICVzIHRvICVzIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9GA0LXQvNC10YHRgtC4INCyIOKAniVz4oCcIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzozNDkgYnVpbHRpbi9pbml0LWRiLmM6MzUyCisjOiBidWlsdGluL2luaXQtZGIuYzozNTQgYnVpbHRpbi9pbml0LWRiLmM6MzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICLQlNC40YDQtdC60YLQvtGA0LjRj9GC0LAg4oCeJXPigJwg0LLQtdGH0LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LAiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQwNQorIzogYnVpbHRpbi9pbml0LWRiLmM6NDEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlaW5pdGlhbGl6ZWQgZXhpc3Rpbmcgc2hhcmVkIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAiIgogItCY0L3QuNGG0LjQsNC70LjQt9C40YDQsNC90LUg0L3QsNC90L7QstC+INC90LAg0YHRitGJ0LXRgdGC0LLRg9Cy0LDRidC+LCDRgdC/0L7QtNC10LvQtdC90L4g0YXRgNCw0L3QuNC70LjRidC1INC90LAgR2l0INCyIOKAniVzJXPigJxcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDA2CisjOiBidWlsdGluL2luaXQtZGIuYzo0MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVpbml0aWFsaXplZCBleGlzdGluZyBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgItCY0L3QuNGG0LjQsNC70LjQt9C40YDQsNC90LUg0L3QsNC90L7QstC+INC90LAg0YHRitGJ0LXRgdGC0LLRg9Cy0LDRidC+INGF0YDQsNC90LjQu9C40YnQtSDQvdCwIEdpdCDQsiDigJ4lcyVz4oCcXG4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMAorIzogYnVpbHRpbi9pbml0LWRiLmM6NDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkluaXRpYWxpemVkIGVtcHR5IHNoYXJlZCBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgItCY0L3QuNGG0LjQsNC70LjQt9C40YDQsNC90LUg0L3QsCDQv9GA0LDQt9C90L4sINGB0L/QvtC00LXQu9C10L3QviDRhdGA0LDQvdC40LvQuNGJ0LUg0L3QsCBHaXQg0LIg4oCeJXMlc+KAnFxuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MTEKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxOQogIywgYy1mb3JtYXQKIG1zZ2lkICJJbml0aWFsaXplZCBlbXB0eSBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgItCY0L3QuNGG0LjQsNC70LjQt9C40YDQsNC90LUg0L3QsCDQv9GA0LDQt9C90L4g0YXRgNCw0L3QuNC70LjRidC1INC90LAgR2l0INCyIOKAniVzJXPigJxcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDYwCisjOiBidWlsdGluL2luaXQtZGIuYzo0NjgKIG1zZ2lkICIiCiAiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU9PHRlbXBsYXRlLWRpcmVjdG9yeT5dIFstLSIKICJzaGFyZWRbPTxwZXJtaXNzaW9ucz5dXSBbPGRpcmVjdG9yeT5dIgpAQCAtMTI1MTUsMjcgKzE1NzI1LDI3IEBACiAiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU90JTQmNCg0JXQmtCi0J7QoNCY0K9f0KFf0KjQkNCR0JvQntCd0JhdIFstLSIKICJzaGFyZWRbPdCf0KDQkNCS0JBdXSBb0JTQmNCg0JXQmtCi0J7QoNCY0K9dIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0ODMKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MQogbXNnaWQgInBlcm1pc3Npb25zIgogbXNnc3RyICLQv9GA0LDQstCwIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0ODQKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MgogbXNnaWQgInNwZWNpZnkgdGhhdCB0aGUgZ2l0IHJlcG9zaXRvcnkgaXMgdG8gYmUgc2hhcmVkIGFtb25nc3Qgc2V2ZXJhbCB1c2VycyIKIG1zZ3N0ciAiIgogItGD0LrQsNC30LLQsNC90LUsINGH0LUg0YXRgNCw0L3QuNC70LjRidC10YLQviDQvdCwIEdpdCDRidC1INCx0YrQtNC1INGB0L/QvtC00LXQu9C10L3QviDQvtGCINC/0L7QstC10YfQtSDQvtGCINC10LTQuNC9ICIKICLQv9C+0YLRgNC10LHQuNGC0LXQuyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTE4IGJ1aWx0aW4vaW5pdC1kYi5jOjUyMworIzogYnVpbHRpbi9pbml0LWRiLmM6NTI5IGJ1aWx0aW4vaW5pdC1kYi5jOjUzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgbWtkaXIgJXMiCiBtc2dzdHIgItC00LjRgNC10LrRgtC+0YDQuNGP0YLQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRitC30LTQsNC00LXQvdCwIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo1MjcKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY2hkaXIgdG8gJXMiCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INCy0LvQtdC30LUg0LIg0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwIOKAniVz4oCcIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo1NDgKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJXMgKG9yIC0td29yay10cmVlPTxkaXJlY3Rvcnk+KSBub3QgYWxsb3dlZCB3aXRob3V0IHNwZWNpZnlpbmcgJXMgKG9yIC0tZ2l0LSIKQEAgLTEyNTQ0LDEyICsxNTc1NCwxMiBAQAogIiVzICjQuNC70LggLS13b3JrLXRyZWU90JTQmNCg0JXQmtCi0J7QoNCY0K8pINC40LfQuNGB0LrQstCwINGD0LrQsNC30LLQsNC90LXRgtC+INC90LAgJXMgKNC40LvQuCAtLWdpdC0iCiAiZGlyPdCU0JjQoNCV0JrQotCe0KDQmNCvKSIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTc2CisjOiBidWlsdGluL2luaXQtZGIuYzo1ODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGFjY2VzcyB3b3JrIHRyZWUgJyVzJyIKIG1zZ3N0ciAi0KDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0LIg4oCeJXPigJwg0LUg0L3QtdC00L7RgdGC0YrQv9C90L4iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTUKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTYKIG1zZ2lkICIiCiAiZ2l0IGludGVycHJldC10cmFpbGVycyBbLS1pbi1wbGFjZV0gWy0tdHJpbS1lbXB0eV0gWygtLXRyYWlsZXIgIgogIjx0b2tlbj5bKD18Oik8dmFsdWU+XSkuLi5dIFs8ZmlsZT4uLi5dIgpAQCAtMTI1NTcsNDczICsxNTc2Nyw0ODAgQEAKICJnaXQgaW50ZXJwcmV0LXRyYWlsZXJzIFstLWluLXBsYWNlXSBbLS10cmltLWVtcHR5XSBbKC0tdHJhaWxlciAiCiAi0JvQldCa0KHQldCc0JBbKD18OinQodCi0J7QmdCd0J7QodCiXSnigKZdIFvQpNCQ0JnQm+KApl0iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTQKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTUKIG1zZ2lkICJlZGl0IGZpbGVzIGluIHBsYWNlIgogbXNnc3RyICLQtNC40YDQtdC60YLQvdC+INGA0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDRhNCw0LnQu9C+0LLQtdGC0LUiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTUKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTYKIG1zZ2lkICJ0cmltIGVtcHR5IHRyYWlsZXJzIgogbXNnc3RyICLQuNC30YfQuNGB0YLQstCw0L3QtSDQvdCwINC/0YDQsNC30L3QuNGC0LUg0LXQv9C40LvQvtC30LgiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTgKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTkKIG1zZ2lkICJ3aGVyZSB0byBwbGFjZSB0aGUgbmV3IHRyYWlsZXIiCiBtc2dzdHIgItC60YrQtNC1INC00LAg0YHQtSDQv9C+0YHRgtCw0LLQuCDQvdC+0LLQuNGP0YIg0LXQv9C40LvQvtCzIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDEKIG1zZ2lkICJhY3Rpb24gaWYgdHJhaWxlciBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAi0LTQtdC50YHRgtCy0LjQtSwg0LDQutC+INC10L/QuNC70L7QsyDQstC10YfQtSDRgdGK0YnQtdGB0YLQstGD0LLQsCIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDIKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAzCiBtc2dpZCAiYWN0aW9uIGlmIHRyYWlsZXIgaXMgbWlzc2luZyIKIG1zZ3N0ciAi0LTQtdC50YHRgtCy0LjQtSDQv9GA0Lgg0LvQuNC/0YHQstCw0Ykg0LXQv9C40LvQvtCzIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDUKIG1zZ2lkICJvdXRwdXQgb25seSB0aGUgdHJhaWxlcnMiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDRgdCw0LzQviDQvdCwINC10L/QuNC70L7Qt9C40YLQtSIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDUKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA2CiBtc2dpZCAiZG8gbm90IGFwcGx5IGNvbmZpZyBydWxlcyIKIG1zZ3N0ciAi0LHQtdC3INC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINC/0YDQsNCy0LjQu9Cw0YLQsCDQt9CwINC90LDRgdGC0YDQvtC50LrQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA2CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNwogbXNnaWQgImpvaW4gd2hpdGVzcGFjZS1jb250aW51ZWQgdmFsdWVzIgogbXNnc3RyICLRgdC70LjQstCw0L3QtSDQvdCwINGB0YLQvtC50L3QvtGB0YLQuNGC0LUg0L/QvtGB0LvQtdC00LLQsNC90LUg0L7RgiDQt9C90LDRhtC4INC30LAg0LjQvdGC0LXRgNCy0LDQu9C4IgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDgKIG1zZ2lkICJzZXQgcGFyc2luZyBvcHRpb25zIgogbXNnc3RyICLQvtC/0YbQuNC4INC/0YDQuCDQsNC90LDQu9C40LciCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA5CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMAogbXNnaWQgImRvIG5vdCB0cmVhdCAtLS0gc3BlY2lhbGx5IgogbXNnc3RyICLigJ4tLS3igJwg0L3Rj9C80LAg0YHQv9C10YbQuNCw0LvQvdC+INC30L3QsNGH0LXQvdC40LUiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMQogbXNnaWQgInRyYWlsZXIiCiBtc2dzdHIgItC10L/QuNC70L7QsyIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTEKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEyCiBtc2dpZCAidHJhaWxlcihzKSB0byBhZGQiCiBtc2dzdHIgItC10L/QuNC70L7Qt9C4INC30LAg0LTQvtCx0LDQstGP0L3QtSIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMjAKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTIzCiBtc2dpZCAiLS10cmFpbGVyIHdpdGggLS1vbmx5LWlucHV0IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tdHJhaWxlcuKAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg4oCeLS1uYW1lLW9ubHnigJwiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTMwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEzMwogbXNnaWQgIm5vIGlucHV0IGZpbGUgZ2l2ZW4gZm9yIGluLXBsYWNlIGVkaXRpbmciCiBtc2dzdHIgItC90LUg0LUg0LfQsNC00LDQtNC10L0g0LLRhdC+0LTQtdC9INGE0LDQudC7INC30LAg0YDQtdC00LDQutGC0LjRgNCw0L3QtSDQvdCwINC80Y/RgdGC0L4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTQKKyM6IGJ1aWx0aW4vbG9nLmM6NTYKIG1zZ2lkICJnaXQgbG9nIFs8b3B0aW9ucz5dIFs8cmV2aXNpb24tcmFuZ2U+XSBbWy0tXSA8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgbG9nIFvQntCf0KbQmNCv4oCmXSBb0JTQmNCQ0J/QkNCX0J7QnV/QndCQX9CS0JXQoNCh0JjQmNCi0JVdIFtbLS1dINCf0KrQouKApl0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTUKKyM6IGJ1aWx0aW4vbG9nLmM6NTcKIG1zZ2lkICJnaXQgc2hvdyBbPG9wdGlvbnM+XSA8b2JqZWN0Pi4uLiIKIG1zZ3N0ciAiZ2l0IHNob3cgW9Ce0J/QptCY0K/igKZdINCe0JHQldCa0KLigKYiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6OTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgLS1kZWNvcmF0ZSBvcHRpb246ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QsCDQvtC/0YbQuNGPIOKAni0tZGVjb3JhdGXigJw6ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjE2MgotbXNnaWQgInN1cHByZXNzIGRpZmYgb3V0cHV0IgotbXNnc3RyICLQsdC10Lcg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YDQsNC30LvQuNC60LjRgtC1IgotCi0jOiBidWlsdGluL2xvZy5jOjE2MworIzogYnVpbHRpbi9sb2cuYzoxNzQKIG1zZ2lkICJzaG93IHNvdXJjZSIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LjQt9GF0L7QtNC90LjRjyDQutC+0LQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY0CisjOiBidWlsdGluL2xvZy5jOjE3NQogbXNnaWQgIlVzZSBtYWlsIG1hcCBmaWxlIgogbXNnc3RyICIiCiAi0JjQt9C/0L7Qu9C30LLQsNC90LUg0L3QsCDRhNCw0LnQuyDQt9CwINGB0YrQvtGC0LLQtdGC0YHRgtCy0LjRj9GC0LAg0L3QsCDQuNC80LXQvdCw0YLQsCDQuCDQsNC00YDQtdGB0LjRgtC1INC90LAg0LUt0L/QvtGJ0LAgKOKAni4iCiAibWFpbG1hcOKAnCkiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY2CisjOiBidWlsdGluL2xvZy5jOjE3NwogbXNnaWQgIm9ubHkgZGVjb3JhdGUgcmVmcyB0aGF0IG1hdGNoIDxwYXR0ZXJuPiIKIG1zZ3N0ciAi0YHQv9C10YbQuNCw0LvQtdC9INGE0L7RgNC80LDRgiDRgdCw0LzQviDQvdCwINGD0LrQsNC30LDRgtC10LvQuNGC0LUg0L3QsNC/0LDRgdCy0LDRidC4INC90LAg0KjQkNCR0JvQntCd0LAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY4CisjOiBidWlsdGluL2xvZy5jOjE3OQogbXNnaWQgImRvIG5vdCBkZWNvcmF0ZSByZWZzIHRoYXQgbWF0Y2ggPHBhdHRlcm4+IgogbXNnc3RyICLQsdC10Lcg0YHQv9C10YbQuNCw0LvQtdC9INGE0L7RgNC80LDRgiDQvdCwINGD0LrQsNC30LDRgtC10LvQuNGC0LUg0L3QsNC/0LDRgdCy0LDRidC4INC90LAg0KjQkNCR0JvQntCd0LAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5CisjOiBidWlsdGluL2xvZy5jOjE4MAogbXNnaWQgImRlY29yYXRlIG9wdGlvbnMiCiBtc2dzdHIgItC90LDRgdGC0YDQvtC50LrQuCDQvdCwINGE0L7RgNC80LDMgNGC0LAg0L3QsCDQuNC30LLQtdC20LTQsNC90LDRgtCwINC40L3RhNC+0YDQvNCw0YbQuNGPIgogCi0jOiBidWlsdGluL2xvZy5jOjE3MgorIzogYnVpbHRpbi9sb2cuYzoxODMKIG1zZ2lkICJQcm9jZXNzIGxpbmUgcmFuZ2UgbixtIGluIGZpbGUsIGNvdW50aW5nIGZyb20gMSIKIG1zZ3N0ciAiIgogItCe0LHRgNCw0LHQvtGC0LLQsNC90LUg0YHQsNC80L4g0L3QsCDRgNC10LTQvtCy0LXRgtC1INCy0YrQsiDRhNCw0LnQu9CwINCyINC00LjQsNC/0LDQt9C+0L3QsCDQvtGCIG4g0LTQviBtINCy0LrQu9GO0YfQuNGC0LXQu9C90L4uICAiCiAi0JHRgNC+0LXQvdC10YLQviDQt9Cw0L/QvtGH0LLQsCDQvtGCIDEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MjcwCisjOiBidWlsdGluL2xvZy5jOjI4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGaW5hbCBvdXRwdXQ6ICVkICVzXG4iCiBtc2dzdHIgItCg0LXQt9GD0LvRgtCw0YI6ICVkICVzXG4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTIyCisjOiBidWlsdGluL2xvZy5jOjUzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgc2hvdyAlczogYmFkIGZpbGUiCiBtc2dzdHIgImdpdCBzaG93ICVzOiDQv9C+0LLRgNC10LTQtdC9INGE0LDQudC7IgogCi0jOiBidWlsdGluL2xvZy5jOjUzNyBidWlsdGluL2xvZy5jOjYzMQorIzogYnVpbHRpbi9sb2cuYzo1NTAgYnVpbHRpbi9sb2cuYzo2NDUKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgotbXNnc3RyICLQntCx0LXQutGC0YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvTogJXMiCittc2dpZCAiY291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgorbXNnc3RyICLQvtCx0LXQutGC0YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0YfQtdGC0LXQvTogJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NjU1CisjOiBidWlsdGluL2xvZy5jOjY3MAogIywgYy1mb3JtYXQKLW1zZ2lkICJVbmtub3duIHR5cGU6ICVkIgotbXNnc3RyICLQndC10LjQt9Cy0LXRgdGC0LXQvSDQstC40LQ6ICVkIgorbXNnaWQgInVua25vd24gdHlwZTogJWQiCittc2dzdHIgItC90LXQuNC30LLQtdGB0YLQtdC9INCy0LjQtDogJWQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6Nzc2CisjOiBidWlsdGluL2xvZy5jOjgxNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCBjb3ZlciBmcm9tIGRlc2NyaXB0aW9uIG1vZGUiCittc2dzdHIgIiVzOiDQvdC10L/RgNCw0LLQuNC70L3QviDQv9GA0LjQtNGA0YPQttCw0LLQsNGJ0L4g0L/QuNGB0LzQviDQvtGCINGA0LXQttC40LzQsCDQvdCwINC+0L/QuNGB0LDQvdC40LUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6ODIxCiBtc2dpZCAiZm9ybWF0LmhlYWRlcnMgd2l0aG91dCB2YWx1ZSIKIG1zZ3N0ciAi0L3QtSDQtSDQt9Cw0LTQsNC00LXQvdCwINGB0YLQvtC50L3QvtGB0YIg0L3QsCDigJ5mb3JtYXQuaGVhZGVyc+KAnCIKIAotIzogYnVpbHRpbi9sb2cuYzo4NzcKKyM6IGJ1aWx0aW4vbG9nLmM6OTM2CiBtc2dpZCAibmFtZSBvZiBvdXRwdXQgZGlyZWN0b3J5IGlzIHRvbyBsb25nIgogbXNnc3RyICLQv9GA0LXQutCw0LvQtdC90L4g0LTRitC70LPQviDQuNC80LUg0L3QsCDQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg0LfQsCDQuNC30YXQvtC00L3QsNGC0LAg0LjQvdGE0L7RgNC80LDRhtC40Y8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6ODkzCisjOiBidWlsdGluL2xvZy5jOjk1MgogIywgYy1mb3JtYXQKLW1zZ2lkICJDYW5ub3Qgb3BlbiBwYXRjaCBmaWxlICVzIgotbXNnc3RyICLQpNCw0LnQu9GK0YIt0LrRgNGK0L/QutCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LLQvtGA0LXQvSIKK21zZ2lkICJjYW5ub3Qgb3BlbiBwYXRjaCBmaWxlICVzIgorbXNnc3RyICLRhNCw0LnQu9GK0YIt0LrRgNGK0L/QutCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LLQvtGA0LXQvSIKIAotIzogYnVpbHRpbi9sb2cuYzo5MTAKLW1zZ2lkICJOZWVkIGV4YWN0bHkgb25lIHJhbmdlLiIKLW1zZ3N0ciAi0KLRgNGP0LHQstCwINC00LAg0LfQsNC00LDQtNC10YLQtSDRgtC+0YfQvdC+INC10LTQuNC9INC00LjQsNC/0LDQt9C+0L0uIgorIzogYnVpbHRpbi9sb2cuYzo5NjkKK21zZ2lkICJuZWVkIGV4YWN0bHkgb25lIHJhbmdlIgorbXNnc3RyICLRgtGA0Y/QsdCy0LAg0LTQsCDQt9Cw0LTQsNC00LXRgtC1INGC0L7Rh9C90L4g0LXQtNC40L0g0LTQuNCw0L/QsNC30L7QvSIKIAotIzogYnVpbHRpbi9sb2cuYzo5MjAKLW1zZ2lkICJOb3QgYSByYW5nZS4iCi1tc2dzdHIgItCd0LUg0LUg0LTQuNCw0L/QsNC30L7QvS4iCisjOiBidWlsdGluL2xvZy5jOjk3OQorbXNnaWQgIm5vdCBhIHJhbmdlIgorbXNnc3RyICLQvdC1INC1INC00LjQsNC/0LDQt9C+0L0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTA0MwotbXNnaWQgIkNvdmVyIGxldHRlciBuZWVkcyBlbWFpbCBmb3JtYXQiCi1tc2dzdHIgItCf0YDQuNC00YDRg9C20LDQstCw0YnQvtGC0L4g0L/QuNGB0LzQviDRgtGA0Y/QsdCy0LAg0LTQsCDQtSDRhNC+0YDQvNCw0YLQuNGA0LDQvdC+INC60LDRgtC+INC1LdC/0LjRgdC80L4iCisjOiBidWlsdGluL2xvZy5jOjExNDMKK21zZ2lkICJjb3ZlciBsZXR0ZXIgbmVlZHMgZW1haWwgZm9ybWF0IgorbXNnc3RyICLQv9GA0LjQtNGA0YPQttCw0LLQsNGJ0L7RgtC+INC/0LjRgdC80L4g0YLRgNGP0LHQstCwINC00LAg0LUg0YTQvtGA0LzQsNGC0LjRgNCw0L3QviDQutCw0YLQviDQtS3Qv9C40YHQvNC+IgogCi0jOiBidWlsdGluL2xvZy5jOjExMTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTE0OQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgY292ZXItbGV0dGVyIGZpbGUiCittc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDRgdGK0LfQtNCw0LLQsNC90LUg0L3QsCDQv9GA0LjQtNGA0YPQttCw0LLQsNGJ0L4g0L/QuNGB0LzQviIKKworIzogYnVpbHRpbi9sb2cuYzoxMjI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImluc2FuZSBpbi1yZXBseS10bzogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INGE0L7RgNC80LDRgiDQvdCwINC30LDQs9C70LDQstC90LDRgtCwINGH0LDRgdGCINC30LAg0L7RgtCz0L7QstC+0YAg4oCeaW4tcmVwbHktdG/igJw6ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjExNDYKKyM6IGJ1aWx0aW4vbG9nLmM6MTI1NQogbXNnaWQgImdpdCBmb3JtYXQtcGF0Y2ggWzxvcHRpb25zPl0gWzxzaW5jZT4gfCA8cmV2aXNpb24tcmFuZ2U+XSIKIG1zZ3N0ciAiZ2l0IGZvcm1hdC1wYXRjaCBb0J7Qn9Cm0JjQr+KApl0gW9Ce0KIgfCDQlNCY0JDQn9CQ0JfQntCdX9Cd0JBf0JLQldCg0KHQmNCY0KLQlV0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTIwNAotbXNnaWQgIlR3byBvdXRwdXQgZGlyZWN0b3JpZXM/IgotbXNnc3RyICLQnNC+0LbQtdGC0LUg0LTQsCDRg9C60LDQttC10YLQtSDQvNCw0LrRgdC40LzRg9C8INC10LTQvdCwINC00LjRgNC10LrRgtC+0YDQuNGPINC30LAg0LjQt9GF0L7QtC4iCisjOiBidWlsdGluL2xvZy5jOjEzMTMKK21zZ2lkICJ0d28gb3V0cHV0IGRpcmVjdG9yaWVzPyIKK21zZ3N0ciAi0LzQvtC20LUg0LTQsCDRg9C60LDQttC10YLQtSDQvNCw0LrRgdC40LzRg9C8INC10LTQvdCwINC00LjRgNC10LrRgtC+0YDQuNGPINC30LAg0LjQt9GF0L7QtCIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzExIGJ1aWx0aW4vbG9nLmM6MjA1NCBidWlsdGluL2xvZy5jOjIwNTYgYnVpbHRpbi9sb2cuYzoyMDY4CisjOiBidWlsdGluL2xvZy5jOjE0MjQgYnVpbHRpbi9sb2cuYzoyMTk3IGJ1aWx0aW4vbG9nLmM6MjE5OSBidWlsdGluL2xvZy5jOjIyMTEKICMsIGMtZm9ybWF0Ci1tc2dpZCAiVW5rbm93biBjb21taXQgJXMiCi1tc2dzdHIgItCd0LXQv9C+0LfQvdCw0YLQviDQv9C+0LTQsNCy0LDQvdC1IOKAniVz4oCcIgorbXNnaWQgInVua25vd24gY29tbWl0ICVzIgorbXNnc3RyICLQvdC10L/QvtC30L3QsNGC0L4g0L/QvtC00LDQstCw0L3QtTog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTMyMSBidWlsdGluL25vdGVzLmM6ODk0IGJ1aWx0aW4vdGFnLmM6NTI2CisjOiBidWlsdGluL2xvZy5jOjE0MzQgYnVpbHRpbi9yZXBsYWNlLmM6NTggYnVpbHRpbi9yZXBsYWNlLmM6MjA3CisjOiBidWlsdGluL3JlcGxhY2UuYzoyMTAKICMsIGMtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZi4iCi1tc2dzdHIgItCd0LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0YLQutGA0LjQtSDQutGK0Lwg0LrQsNC60LLQviDRgdC+0YfQuCDigJ4lc+KAnC4iCittc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZiIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQtSDRg9C60LDQt9Cw0YLQtdC7INC40LvQuCDQvdC1INGB0L7Rh9C4INC60YrQvCDQvdC40YnQviIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzI2Ci1tc2dpZCAiQ291bGQgbm90IGZpbmQgZXhhY3QgbWVyZ2UgYmFzZS4iCi1tc2dzdHIgItCi0L7Rh9C90LDRgtCwINCx0LDQt9CwINC30LAg0YHQu9C40LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7RgtC60YDQuNC1LiIKKyM6IGJ1aWx0aW4vbG9nLmM6MTQzOQorbXNnaWQgImNvdWxkIG5vdCBmaW5kIGV4YWN0IG1lcmdlIGJhc2UiCittc2dzdHIgItGC0L7Rh9C90LDRgtCwINCx0LDQt9CwINC30LAg0YHQu9C40LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgtCwIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ0MwogbXNnaWQgIiIKLSJGYWlsZWQgdG8gZ2V0IHVwc3RyZWFtLCBpZiB5b3Ugd2FudCB0byByZWNvcmQgYmFzZSBjb21taXQgYXV0b21hdGljYWxseSxcbiIKKyJmYWlsZWQgdG8gZ2V0IHVwc3RyZWFtLCBpZiB5b3Ugd2FudCB0byByZWNvcmQgYmFzZSBjb21taXQgYXV0b21hdGljYWxseSxcbiIKICJwbGVhc2UgdXNlIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG8gdG8gdHJhY2sgYSByZW1vdGUgYnJhbmNoLlxuIgotIk9yIHlvdSBjb3VsZCBzcGVjaWZ5IGJhc2UgY29tbWl0IGJ5IC0tYmFzZT08YmFzZS1jb21taXQtaWQ+IG1hbnVhbGx5LiIKKyJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseSIKIG1zZ3N0ciAiIgotItCh0LvQtdC00LXQvdC40Y/RgiDQutC70L7QvSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YPRgdGC0LDQvdC+0LLQtdC9LiAg0JDQutC+INC40YHQutCw0YLQtSDRgNGK0YfQvdC+INC00LAg0LPQvlxuIgorItGB0LvQtdC00LXQvdC40Y/RgiDQutC70L7QvSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YPRgdGC0LDQvdC+0LLQtdC9LiAg0JDQutC+INC40YHQutCw0YLQtSDRgNGK0YfQvdC+INC00LAg0LPQvlxuIgogItC30LDQtNCw0LTQtdGC0LUsINC40LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10b+KAnC5cbiIKICLQnNC+0LbQtdGC0LUg0YDRitGH0L3QviDQtNCwINC30LDQtNCw0LTQtdGC0LUg0LHQsNC30L7QstC+INC/0L7QtNCw0LLQsNC90LUg0YfRgNC10Lcg4oCeLS1iYXNlPTxiYXNlLWNvbW1pdC1pZD7igJwuIgogCi0jOiBidWlsdGluL2xvZy5jOjEzNTAKLW1zZ2lkICJGYWlsZWQgdG8gZmluZCBleGFjdCBtZXJnZSBiYXNlIgotbXNnc3RyICLQotC+0YfQvdCw0YLQsCDQsdCw0LfQsCDQv9GA0Lgg0YHQu9C40LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgtCwIgorIzogYnVpbHRpbi9sb2cuYzoxNDYzCittc2dpZCAiZmFpbGVkIHRvIGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKK21zZ3N0ciAi0YLQvtGH0L3QsNGC0LAg0LHQsNC30LAg0L/RgNC4INGB0LvQuNCy0LDQvdC1INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LrRgNC40YLQsCIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzYxCisjOiBidWlsdGluL2xvZy5jOjE0NzQKIG1zZ2lkICJiYXNlIGNvbW1pdCBzaG91bGQgYmUgdGhlIGFuY2VzdG9yIG9mIHJldmlzaW9uIGxpc3QiCiBtc2dzdHIgItCx0LDQt9C+0LLQvtGC0L4g0L/QvtC00LDQstCw0L3QtSDRgtGA0Y/QsdCy0LAg0LTQsCDQtSDQv9GA0LXQtNGI0LXRgdGC0LLQtdC90LjQutGK0YIg0L3QsCDRgdC/0LjRgdGK0LrQsCDRgSDQstC10YDRgdC40LjRgtC1IgogCi0jOiBidWlsdGluL2xvZy5jOjEzNjUKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ3OAogbXNnaWQgImJhc2UgY29tbWl0IHNob3VsZG4ndCBiZSBpbiByZXZpc2lvbiBsaXN0IgogbXNnc3RyICLQsdCw0LfQvtCy0L7RgtC+INC/0L7QtNCw0LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINC1INCyINGB0L/QuNGB0YrQutCwINGBINCy0LXRgNGB0LjQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTQxOAorIzogYnVpbHRpbi9sb2cuYzoxNTMxCiBtc2dpZCAiY2Fubm90IGdldCBwYXRjaCBpZCIKIG1zZ3N0ciAi0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRitGCINC90LAg0LrRgNGK0L/QutCw0YLQsCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/QvtC70YPRh9C10L0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTQ3MAorIzogYnVpbHRpbi9sb2cuYzoxNTgzCiBtc2dpZCAiZmFpbGVkIHRvIGluZmVyIHJhbmdlLWRpZmYgcmFuZ2VzIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0L7Qv9GA0LXQtNC10LvRj9C90LUg0L3QsCDQtNC40LDQv9Cw0LfQvtC90LjRgtC1INC30LAg0YDQsNC30LvQuNC60LAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUxNQorIzogYnVpbHRpbi9sb2cuYzoxNjI5CiBtc2dpZCAidXNlIFtQQVRDSCBuL21dIGV2ZW4gd2l0aCBhIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAi0L3QvtC80LXRgNCw0YbQuNGPIOKAnltQQVRDSCBuL21d4oCcINC00L7RgNC4INC4INC/0YDQuCDQtdC00LjQvdGB0YLQstC10L3QsCDQutGA0YrQv9C60LAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUxOAorIzogYnVpbHRpbi9sb2cuYzoxNjMyCiBtc2dpZCAidXNlIFtQQVRDSF0gZXZlbiB3aXRoIG11bHRpcGxlIHBhdGNoZXMiCiBtc2dzdHIgItC90L7QvNC10YDQsNGG0LjRjyDigJ5bUEFUQ0hd4oCcINC00L7RgNC4INC4INC/0YDQuCDQvNC90L7QttC10YHRgtCy0L4g0LrRgNGK0L/QutC4IgogCi0jOiBidWlsdGluL2xvZy5jOjE1MjIKKyM6IGJ1aWx0aW4vbG9nLmM6MTYzNgogbXNnaWQgInByaW50IHBhdGNoZXMgdG8gc3RhbmRhcmQgb3V0IgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQutGA0YrQv9C60LjRgtC1INC90LAg0YHRgtCw0L3QtNCw0YDRgtC90LjRjyDQuNC30YXQvtC0IgogCi0jOiBidWlsdGluL2xvZy5jOjE1MjQKKyM6IGJ1aWx0aW4vbG9nLmM6MTYzOAogbXNnaWQgImdlbmVyYXRlIGEgY292ZXIgbGV0dGVyIgogbXNnc3RyICLRgdGK0LfQtNCw0LLQsNC90LUg0L3QsCDQv9GA0LjQtNGA0YPQttCw0LLQsNGJ0L4g0L/QuNGB0LzQviIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI2CisjOiBidWlsdGluL2xvZy5jOjE2NDAKIG1zZ2lkICJ1c2Ugc2ltcGxlIG51bWJlciBzZXF1ZW5jZSBmb3Igb3V0cHV0IGZpbGUgbmFtZXMiCiBtc2dzdHIgItC/0YDQvtGB0YLQsCDRh9C40YHQu9C+0LLQsCDQv9C+0YHQu9C10LTQvtCy0LDRgtC10LvQvdC+0YHRgiDQt9CwINC40LzQtdC90LDRgtCwINC90LAg0YTQsNC50LvQvtCy0LXRgtC1LdC60YDRitC/0LrQuCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI3CisjOiBidWlsdGluL2xvZy5jOjE2NDEKIG1zZ2lkICJzZngiCiBtc2dzdHIgItCX0J3QkNCm0JgiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyOAorIzogYnVpbHRpbi9sb2cuYzoxNjQyCiBtc2dpZCAidXNlIDxzZng+IGluc3RlYWQgb2YgJy5wYXRjaCciCiBtc2dzdHIgItC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0YLQtdC30Lgg0JfQndCQ0KbQmCDQt9CwINGB0YPRhNC40LrRgSDQstC80LXRgdGC0L4g4oCeLnBhdGNo4oCcIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0NAogbXNnaWQgInN0YXJ0IG51bWJlcmluZyBwYXRjaGVzIGF0IDxuPiBpbnN0ZWFkIG9mIDEiCiBtc2dzdHIgItC90L7QvNC10YDQuNGA0LDQvdC10YLQviDQvdCwINC60YDRitC/0LrQuNGC0LUg0LTQsCDQt9Cw0L/QvtGH0LLQsCDQvtGCINGC0L7Qt9C4INCR0KDQntCZLCDQsCDQvdC1INGBIDEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzMgorIzogYnVpbHRpbi9sb2cuYzoxNjQ2CiBtc2dpZCAibWFyayB0aGUgc2VyaWVzIGFzIE50aCByZS1yb2xsIgogbXNnc3RyICLQvtGC0LHQtdC70Y/Qt9Cy0LDQvdC1LCDRh9C1INGC0L7QstCwINC1IE4t0YLQsNGC0LAg0L/QvtGA0LXQtNC90LAg0YDQtdC00LDQutGG0LjRjyDQvdCwINC/0L7RgNC10LTQuNGG0LDRgtCwINC+0YIg0LrRgNGK0L/QutC4IgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzQKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0OAogbXNnaWQgIlVzZSBbUkZDIFBBVENIXSBpbnN0ZWFkIG9mIFtQQVRDSF0iCiBtc2dzdHIgItCY0LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg4oCeW1JGQyBQQVRDSF3igJwg0LLQvNC10YHRgtC+IOKAnltQQVRDSF3igJwiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzNworIzogYnVpbHRpbi9sb2cuYzoxNjUxCittc2dpZCAiY292ZXItZnJvbS1kZXNjcmlwdGlvbi1tb2RlIgorbXNnc3RyICLRgNC10LbQuNC8LdC/0YDQuNC00YDRg9C20LDQstCw0YnQvi3Qv9C40YHQvNC+LdC/0L4t0L7Qv9C40YHQsNC90LjQtSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjUyCittc2dpZCAiZ2VuZXJhdGUgcGFydHMgb2YgYSBjb3ZlciBsZXR0ZXIgYmFzZWQgb24gYSBicmFuY2gncyBkZXNjcmlwdGlvbiIKK21zZ3N0ciAiIgorItCz0LXQvdC10YDQuNGA0LDQvdC1INC90LAg0YfQsNGB0YLQuNGC0LUg0L3QsCDQv9GA0LjQtNGA0YPQttCw0LLQsNGJ0L7RgtC+INC/0LjRgdC80L4g0L3QsCDQsdCw0LfQsNGC0LAg0L3QsCDQvtC/0LjRgdCw0L3QuNC10YLQviDQvdCwICIKKyLQutC70L7QvdCwIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTQKIG1zZ2lkICJVc2UgWzxwcmVmaXg+XSBpbnN0ZWFkIG9mIFtQQVRDSF0iCiBtc2dzdHIgItCY0LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0YLQvtC30Lgg4oCeW9Cf0KDQldCk0JjQmtChXeKAnCDQstC80LXRgdGC0L4g4oCeW1BBVENIXeKAnCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTQwCisjOiBidWlsdGluL2xvZy5jOjE2NTcKIG1zZ2lkICJzdG9yZSByZXN1bHRpbmcgZmlsZXMgaW4gPGRpcj4iCiBtc2dzdHIgItC30LDQv9Cw0LfQstCw0L3QtSDQvdCwINC40LfRhdC+0LTQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSDQsiDRgtCw0LfQuCDQlNCY0KDQldCa0KLQntCg0JjQryIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTQzCisjOiBidWlsdGluL2xvZy5jOjE2NjAKIG1zZ2lkICJkb24ndCBzdHJpcC9hZGQgW1BBVENIXSIKIG1zZ3N0ciAi0LHQtdC3INC00L7QsdCw0LLRj9C90LUv0LzQsNGF0LDQvdC1INC90LAg0L/RgNC10YTQuNC60YHQsCDigJ5bUEFUQ0hd4oCcIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDYKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2MwogbXNnaWQgImRvbid0IG91dHB1dCBiaW5hcnkgZGlmZnMiCiBtc2dzdHIgItCx0LXQtyDQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRgNCw0LfQu9C40LrQuCDQvNC10LbQtNGDINC00LLQvtC40YfQvdC4INGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDgKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2NQogbXNnaWQgIm91dHB1dCBhbGwtemVybyBoYXNoIGluIEZyb20gaGVhZGVyIgotbXNnc3RyICLQsiDQt9Cw0LPQu9Cw0LLQvdCw0YLQsCDRh9Cw0YHRgiDigJ5Gcm9tOuKAnCAo0L7Rgikg0YXQtdGI0YrRgiDQtNCwINC1INGB0LDQvNC+INC+0YIg0L3Rg9C70LgiCittc2dzdHIgItCyINC30LDQs9C70LDQstC90LDRgtCwINGH0LDRgdGCIOKAnkZyb2064oCcICjQvtGCKSDQutC+0L3RgtGA0L7Qu9C90LDRgtCwINGB0YPQvNCwINC00LAg0LUg0YHQsNC80L4g0L7RgiDQvdGD0LvQuCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTUwCisjOiBidWlsdGluL2xvZy5jOjE2NjcKIG1zZ2lkICJkb24ndCBpbmNsdWRlIGEgcGF0Y2ggbWF0Y2hpbmcgYSBjb21taXQgdXBzdHJlYW0iCi1tc2dzdHIgItC00LAg0L3QtSDRgdC1INCy0LrQu9GO0YfQstCw0YIg0LrRgNGK0L/QutC4LCDQutC+0LjRgtC+INC/0YDQuNGB0YrRgdGC0LLQsNGCINCyINGB0LvQtdC00LXQvdC40Y8g0LrQu9C+0L0iCittc2dzdHIgItCx0LXQtyDQutGA0YrQv9C60LgsINC60L7QuNGC0L4g0L/RgNC40YHRitGB0YLQstCw0YIg0LIg0YHQu9C10LTQtdC90LjRjyDQutC70L7QvSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTUyCisjOiBidWlsdGluL2xvZy5jOjE2NjkKIG1zZ2lkICJzaG93IHBhdGNoIGZvcm1hdCBpbnN0ZWFkIG9mIGRlZmF1bHQgKHBhdGNoICsgc3RhdCkiCiBtc2dzdHIgIiIKICLQuNC30LLQtdC20LTQsNC90LUg0LLRitCyINGE0L7RgNC80LDRgiDQt9CwINC60YDRitC/0LrQuCwg0LAg0L3QsCDQsiDRgdGC0LDQvdC00LDRgNGC0L3QuNGPICjQutGA0YrQv9C60LAg0Lgg0YHRgtCw0YLQuNGB0YLQuNC60LApIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTQKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MQogbXNnaWQgIk1lc3NhZ2luZyIKIG1zZ3N0ciAi0J7Qv9GG0LjQuCDQv9GA0Lgg0LjQt9C/0YDQsNGJ0LDQvdC1IgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTUKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MgogbXNnaWQgImhlYWRlciIKIG1zZ3N0ciAi0JfQkNCT0JvQkNCS0J3QkF/Qp9CQ0KHQoiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU2CisjOiBidWlsdGluL2xvZy5jOjE2NzMKIG1zZ2lkICJhZGQgZW1haWwgaGVhZGVyIgogbXNnc3RyICLQtNC+0LHQsNCy0Y/QvdC1INC90LAg0YLQsNC30Lgg0JfQkNCT0JvQkNCS0J3QkF/Qp9CQ0KHQoiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU3IGJ1aWx0aW4vbG9nLmM6MTU1OQorIzogYnVpbHRpbi9sb2cuYzoxNjc0IGJ1aWx0aW4vbG9nLmM6MTY3NgogbXNnaWQgImVtYWlsIgogbXNnc3RyICLQlS3Qn9Ce0KnQkCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU3CisjOiBidWlsdGluL2xvZy5jOjE2NzQKIG1zZ2lkICJhZGQgVG86IGhlYWRlciIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINC30LDQs9C70LDQstC90LAg0YfQsNGB0YIg4oCeVG864oCcICjQtNC+KSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU5CisjOiBidWlsdGluL2xvZy5jOjE2NzYKIG1zZ2lkICJhZGQgQ2M6IGhlYWRlciIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINC30LDQs9C70LDQstC90LAg0YfQsNGB0YIg4oCeQ2M64oCcICjQuCDQtNC+KSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTYxCisjOiBidWlsdGluL2xvZy5jOjE2NzgKIG1zZ2lkICJpZGVudCIKIG1zZ3N0ciAi0JjQlNCV0J3QotCY0KfQndCe0KHQoiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTYyCisjOiBidWlsdGluL2xvZy5jOjE2NzkKIG1zZ2lkICJzZXQgRnJvbSBhZGRyZXNzIHRvIDxpZGVudD4gKG9yIGNvbW1pdHRlciBpZGVudCBpZiBhYnNlbnQpIgogbXNnc3RyICIiCiAi0LfQsNC00LDQstCw0L3QtSDQvdCwINCw0LTRgNC10YHQsCDQsiDQt9Cw0LPQu9Cw0LLQvdCw0YLQsCDRh9Cw0YHRgiDigJ5Gcm9t4oCcICjQvtGCKSDQtNCwINC1INGC0LDQt9C4INCY0JTQldCd0KLQmNCn0J3QntCh0KIuICDQkNC60L4gIgogItC90LUg0LUg0LfQsNC00LDQtNC10L3QsCDRgtCw0LrQsNCy0LAsINGB0LUg0LLQt9C40LzQsCDQsNC00YDQtdGB0LAg0L3QsCDQv9C+0LTQsNCy0LDRidC40Y8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NAorIzogYnVpbHRpbi9sb2cuYzoxNjgxCiBtc2dpZCAibWVzc2FnZS1pZCIKIG1zZ3N0ciAi0JjQlNCV0J3QotCY0KTQmNCa0JDQotCe0KBf0J3QkF/QodCq0J7QkdCp0JXQndCY0JUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NQorIzogYnVpbHRpbi9sb2cuYzoxNjgyCiBtc2dpZCAibWFrZSBmaXJzdCBtYWlsIGEgcmVwbHkgdG8gPG1lc3NhZ2UtaWQ+IgogbXNnc3RyICIiCiAi0L/RitGA0LLQvtGC0L4g0YHRitC+0LHRidC10L3QuNC1INC00LAg0LUg0LIg0L7RgtCz0L7QstC+0YAg0L3QsCDQtS3Qv9C40YHQvNC+0YLQviDRgSDRgtC+0LfQuCAiCiAi0JjQlNCV0J3QotCY0KTQmNCa0JDQotCe0KBf0J3QkF/QodCq0J7QkdCp0JXQndCY0JUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NiBidWlsdGluL2xvZy5jOjE1NjkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4MyBidWlsdGluL2xvZy5jOjE2ODYKIG1zZ2lkICJib3VuZGFyeSIKIG1zZ3N0ciAi0LPRgNCw0L3QuNGG0LAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NworIzogYnVpbHRpbi9sb2cuYzoxNjg0CiBtc2dpZCAiYXR0YWNoIHRoZSBwYXRjaCIKIG1zZ3N0ciAi0L/RgNC40LrRgNC10L/Rj9C90LUg0L3QsCDQutGA0YrQv9C60LDRgtCwIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4NwogbXNnaWQgImlubGluZSB0aGUgcGF0Y2giCiBtc2dzdHIgItCy0LrQu9GO0YfQstCw0L3QtSDQvdCwINC60YDRitC/0LrQsNGC0LAg0LIg0YLQtdC60YHRgtCwINC90LAg0L/QuNGB0LzQsNGC0LAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3NAorIzogYnVpbHRpbi9sb2cuYzoxNjkxCiBtc2dpZCAiZW5hYmxlIG1lc3NhZ2UgdGhyZWFkaW5nLCBzdHlsZXM6IHNoYWxsb3csIGRlZXAiCiBtc2dzdHIgIiIKICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINC90LjRiNC60Lgg0LfQsCDRgdGK0L7QsdGJ0LXQvdC40Y/RgtCwLiAg0KHQotCY0JvRitGCINC1IOKAnnNoYWxsb3figJwgKNC/0LvQuNGC0YrQuikg0LjQu9C4ICIKICLigJ5kZWVw4oCcICjQtNGK0LvQsdC+0LopIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzYKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5MwogbXNnaWQgInNpZ25hdHVyZSIKIG1zZ3N0ciAi0L/QvtC00L/QuNGBIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5NAogbXNnaWQgImFkZCBhIHNpZ25hdHVyZSIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINC/0L7Qu9C1INC30LAg0L/QvtC00L/QuNGBIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzgKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5NQogbXNnaWQgImJhc2UtY29tbWl0IgogbXNnc3RyICLQkdCQ0JfQntCS0J5f0J/QntCU0JDQktCQ0J3QlSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc5CisjOiBidWlsdGluL2xvZy5jOjE2OTYKIG1zZ2lkICJhZGQgcHJlcmVxdWlzaXRlIHRyZWUgaW5mbyB0byB0aGUgcGF0Y2ggc2VyaWVzIgogbXNnc3RyICLQtNC+0LHQsNCy0Y/QvdC1INC90LAg0L3QtdC+0LHRhdC+0LTQuNC80L7RgtC+INCR0JDQl9C+0LLQviDQtNGK0YDQstC+INC60YrQvCDQv9C+0YDQtdC00LjRhtCw0YLQsCDQvtGCINC60YDRitC/0LrQuCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTgxCisjOiBidWlsdGluL2xvZy5jOjE2OTgKIG1zZ2lkICJhZGQgYSBzaWduYXR1cmUgZnJvbSBhIGZpbGUiCiBtc2dzdHIgItC00L7QsdCw0LLRj9C90LUg0L3QsCDQv9C+0LTQv9C40YEg0L7RgiDRhNCw0LnQuyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTgyCisjOiBidWlsdGluL2xvZy5jOjE2OTkKIG1zZ2lkICJkb24ndCBwcmludCB0aGUgcGF0Y2ggZmlsZW5hbWVzIgogbXNnc3RyICLQsdC10Lcg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LjQvNC10L3QsNGC0LAg0L3QsCDQutGA0YrQv9C60LjRgtC1IgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODQKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMQogbXNnaWQgInNob3cgcHJvZ3Jlc3Mgd2hpbGUgZ2VuZXJhdGluZyBwYXRjaGVzIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvdCw0L/RgNC10LTRitC60LAg0LLRitCyINGE0LDQt9Cw0YLQsCDQvdCwINGB0YrQt9C00LDQstCw0L3QtSDQvdCwINC60YDRitC/0LrQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4NQotbXNnaWQgInJldiIKLW1zZ3N0ciAi0JLQldCg0KEiCi0KLSM6IGJ1aWx0aW4vbG9nLmM6MTU4NgorIzogYnVpbHRpbi9sb2cuYzoxNzAzCiBtc2dpZCAic2hvdyBjaGFuZ2VzIGFnYWluc3QgPHJldj4gaW4gY292ZXIgbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAiIgogItC/0L7QutCw0LfQstCw0L3QtSDQvdCwINC/0YDQvtC80LXQvdC40YLQtSDRgdC/0YDRj9C80L4g0JLQldCg0KHQuNGP0YLQsCDQsiDQv9GA0LjQtNGA0YPQttCw0LLQsNGJ0L7RgtC+INC/0LjRgdC80L4g0LjQu9C4INC10LTQuNC90YHRgtCy0LXQvdCwICIKICLQutGA0YrQv9C60LAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4OQorIzogYnVpbHRpbi9sb2cuYzoxNzA2CiBtc2dpZCAic2hvdyBjaGFuZ2VzIGFnYWluc3QgPHJlZnNwZWM+IGluIGNvdmVyIGxldHRlciBvciBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgIiIKICLQv9C+0LrQsNC30LLQsNC90LUg0L3QsCDQv9GA0L7QvNC10L3QuNGC0LUg0YHQv9GA0Y/QvNC+INGD0LrQsNC30LDRgtC10LvRjyDQvdCwINCS0JXQoNCh0LjRj9GC0LAg0LIg0L/RgNC40LTRgNGD0LbQsNCy0LDRidC+0YLQviDQv9C40YHQvNC+ICIKICLQuNC70Lgg0LXQtNC40L3RgdGC0LLQtdC90LAg0LrRgNGK0L/QutCwIgogCi0jOiBidWlsdGluL2xvZy5jOjE1OTEKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwOAogbXNnaWQgInBlcmNlbnRhZ2UgYnkgd2hpY2ggY3JlYXRpb24gaXMgd2VpZ2h0ZWQiCiBtc2dzdHIgItC/0YDQvtGG0LXQvdGCINC30LAg0L/RgNC10YLQtdCz0LvRj9C90LUg0L/RgNC4INC+0YbQtdC90LrQsCDQvdCwINGB0YrQt9C00LDQstCw0L3QtdGC0L4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY2NgorIzogYnVpbHRpbi9sb2cuYzoxNzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgaWRlbnQgbGluZTogJXMiCiBtc2dzdHIgItCz0YDQtdGI0L3QsCDQuNC00LXQvdGC0LjRh9C90L7RgdGCOiAlcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjgxCisjOiBidWlsdGluL2xvZy5jOjE4MDcKIG1zZ2lkICItbiBhbmQgLWsgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeLW7igJwg0Lgg4oCeLWvigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY4MworIzogYnVpbHRpbi9sb2cuYzoxODA5CiBtc2dpZCAiLS1zdWJqZWN0LXByZWZpeC8tLXJmYyBhbmQgLWsgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeLS1zdWJqZWN0LXByZWZpeOKAnC/igJ4tcmZj4oCcINC4IOKAni1r4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgogCi0jOiBidWlsdGluL2xvZy5jOjE2OTEKKyM6IGJ1aWx0aW4vbG9nLmM6MTgxNwogbXNnaWQgIi0tbmFtZS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tbmFtZS1vbmx54oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgSDQs9C10L3QtdGA0LjRgNCw0L3QtdGC0L4g0L3QsCDQutGA0YrQv9C60LgiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5MworIzogYnVpbHRpbi9sb2cuYzoxODE5CiBtc2dpZCAiLS1uYW1lLXN0YXR1cyBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLW5hbWUtc3RhdHVz4oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgSDQs9C10L3QtdGA0LjRgNCw0L3QtdGC0L4g0L3QsCDQutGA0YrQv9C60LgiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5NQorIzogYnVpbHRpbi9sb2cuYzoxODIxCiBtc2dpZCAiLS1jaGVjayBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLWNoZWNr4oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgSDQs9C10L3QtdGA0LjRgNCw0L3QtdGC0L4g0L3QsCDQutGA0YrQv9C60LgiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTcyNworIzogYnVpbHRpbi9sb2cuYzoxODU0CiBtc2dpZCAic3RhbmRhcmQgb3V0cHV0LCBvciBkaXJlY3RvcnksIHdoaWNoIG9uZT8iCiBtc2dzdHIgIiIKICLQuNC30YXQvtC00YrRgiDQvNC+0LbQtSDQtNCwINC40LvQuCDRgdGC0LDQvdC00LDRgNGC0L3QuNGP0YIsINC40LvQuCDQtNCwINC1INCyINC00LjRgNC10LrRgtC+0YDQuNGPLCDQvdC+INC90LUg0Lgg0LTQstC10YLQtS4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTcyOQotIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgotbXNnc3RyICLQlNC40YDQtdC60YLQvtGA0LjRj9GC0LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGB0YrQt9C00LDQtNC10L3QsCIKLQotIzogYnVpbHRpbi9sb2cuYzoxODE2CisjOiBidWlsdGluL2xvZy5jOjE5NTgKIG1zZ2lkICItLWludGVyZGlmZiByZXF1aXJlcyAtLWNvdmVyLWxldHRlciBvciBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgIiIKICLQvtC/0YbQuNGP0YLQsCDigJ4tLWludGVyZGlmZuKAnCDQuNC30LjRgdC60LLQsCDQvtC/0YbQuNGPIOKAni0tY292ZXItbGV0dGVy4oCcINC40LvQuCDQtdC00LjQvdGB0YLQstC10L3QsCDQutGA0YrQv9C60LAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgyMAorIzogYnVpbHRpbi9sb2cuYzoxOTYyCiBtc2dpZCAiSW50ZXJkaWZmOiIKIG1zZ3N0ciAi0KDQsNC30LvQuNC60LAg0LIg0YDQsNC30LvQuNC60LjRgtC1OiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODIxCisjOiBidWlsdGluL2xvZy5jOjE5NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW50ZXJkaWZmIGFnYWluc3QgdiVkOiIKIG1zZ3N0ciAi0KDQsNC30LvQuNC60LAg0LIg0YDQsNC30LvQuNC60LjRgtC1INGB0L/RgNGP0LzQviB2JWQ6IgogCi0jOiBidWlsdGluL2xvZy5jOjE4MjcKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2OQogbXNnaWQgIi0tY3JlYXRpb24tZmFjdG9yIHJlcXVpcmVzIC0tcmFuZ2UtZGlmZiIKIG1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1jcmVhdGlvbi1mYWN0b3LigJwg0LjQt9C40YHQutCy0LAg0L7Qv9GG0LjRjyDigJ4tLXJhbmdlLWRpZmbigJwiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgzMQorIzogYnVpbHRpbi9sb2cuYzoxOTczCiBtc2dpZCAiLS1yYW5nZS1kaWZmIHJlcXVpcmVzIC0tY292ZXItbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAiIgotItC+0L/RhtC40Y/RgtCwIOKAni0tcmFuZ2UtZGlmZuKAnCDQuNC30LjRgdC60LLQsCDQvtC/0YbQuNGPIOKAni0tY292ZXItbGV0dGVy4oCcINC40LvQuCDQtdC00LjQvdGB0YLQstC10L3QsCDQutGA0YrQv9C60LA8IgorItC+0L/RhtC40Y/RgtCwIOKAni0tcmFuZ2UtZGlmZuKAnCDQuNC30LjRgdC60LLQsCDQvtC/0YbQuNGPIOKAni0tY292ZXItbGV0dGVy4oCcINC40LvQuCDQtdC00LjQvdGB0YLQstC10L3QsCDQutGA0YrQv9C60LAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgzOQorIzogYnVpbHRpbi9sb2cuYzoxOTgxCiBtc2dpZCAiUmFuZ2UtZGlmZjoiCiBtc2dzdHIgItCU0LjQsNC/0LDQt9C+0L3QvdCwINGA0LDQt9C70LjQutCwOiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODQwCisjOiBidWlsdGluL2xvZy5jOjE5ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmFuZ2UtZGlmZiBhZ2FpbnN0IHYlZDoiCiBtc2dzdHIgItCU0LjQsNC/0LDQt9C+0L3QvdCwINGA0LDQt9C70LjQutCwINGB0L/RgNGP0LzQviB2JWQ6IgogCi0jOiBidWlsdGluL2xvZy5jOjE4NTEKKyM6IGJ1aWx0aW4vbG9nLmM6MTk5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBzaWduYXR1cmUgZmlsZSAnJXMnIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg4oCeJXPigJwg0YEg0L/QvtC00L/QuNGBINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0L7Rh9C10YLQtdC9IgogCi0jOiBidWlsdGluL2xvZy5jOjE4ODcKKyM6IGJ1aWx0aW4vbG9nLmM6MjAyOQogbXNnaWQgIkdlbmVyYXRpbmcgcGF0Y2hlcyIKIG1zZ3N0ciAi0KHRitC30LTQsNCy0LDQvdC1INC90LAg0LrRgNGK0L/QutC4IgogCi0jOiBidWlsdGluL2xvZy5jOjE5MzEKLW1zZ2lkICJGYWlsZWQgdG8gY3JlYXRlIG91dHB1dCBmaWxlcyIKLW1zZ3N0ciAi0JjQt9GF0L7QtNC90LjRgtC1INGE0LDQudC70L7QstC1INC90LUg0LzQvtCz0LDRgiDQtNCwINCx0YrQtNCw0YIg0YHRitC30LTQsNC00LXQvdC4IgorIzogYnVpbHRpbi9sb2cuYzoyMDczCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBvdXRwdXQgZmlsZXMiCittc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDRgdGK0LfQtNCw0LLQsNC90LUg0L3QsCDQuNC30YXQvtC00L3QuCDRhNCw0LnQu9C+0LLQtSIKIAotIzogYnVpbHRpbi9sb2cuYzoxOTg5CisjOiBidWlsdGluL2xvZy5jOjIxMzIKIG1zZ2lkICJnaXQgY2hlcnJ5IFstdl0gWzx1cHN0cmVhbT4gWzxoZWFkPiBbPGxpbWl0Pl1dXSIKIG1zZ3N0ciAiZ2l0IGNoZXJyeSBbLXZdIFvQntCi0JTQkNCb0JXQp9CV0J1f0JrQm9Ce0J0gW9CS0KDQqtClIFvQn9Cg0JXQlNCV0JtdXV0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MjA0MworIzogYnVpbHRpbi9sb2cuYzoyMTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDb3VsZCBub3QgZmluZCBhIHRyYWNrZWQgcmVtb3RlIGJyYW5jaCwgcGxlYXNlIHNwZWNpZnkgPHVwc3RyZWFtPiBtYW51YWxseS5cbiIKQEAgLTEzMDMxLDEwOSArMTYyNDgsMTA5IEBACiAi0KHQu9C10LTQtdC90LjRj9GCINC+0YLQtNCw0LvQtdGH0LXQvSDQutC70L7QvSDQvdC1INCx0LUg0L7RgtC60YDQuNGCLCDQt9Cw0YLQvtCy0LAg0LjQt9GA0LjRh9C90L4g0LfQsNC00LDQudGC0LUgIgogItCe0KLQlNCQ0JvQldCn0JXQnV/QmtCb0J7QnS5cbiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjQ2OQorIzogYnVpbHRpbi9scy1maWxlcy5jOjQ3MAogbXNnaWQgImdpdCBscy1maWxlcyBbPG9wdGlvbnM+XSBbPGZpbGU+Li4uXSIKIG1zZ3N0ciAiZ2l0IGxzLWZpbGVzIFvQntCf0KbQmNCv4oCmXSBb0KTQkNCZ0JvigKZdIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTI1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTI2CiBtc2dpZCAiaWRlbnRpZnkgdGhlIGZpbGUgc3RhdHVzIHdpdGggdGFncyIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHRitGB0YLQvtGP0L3QuNC10YLQviDQvdCwINGE0LDQudC70L7QstC10YLQtSDRgSDQtdC00L3QvtCx0YPQutCy0LXQvdC4INGE0LvQsNCz0L7QstC1IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTI3CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTI4CiBtc2dpZCAidXNlIGxvd2VyY2FzZSBsZXR0ZXJzIGZvciAnYXNzdW1lIHVuY2hhbmdlZCcgZmlsZXMiCiBtc2dzdHIgItC80LDQu9C60Lgg0LHRg9C60LLQuCDQt9CwINGE0LDQudC70L7QstC10YLQtSwg0LrQvtC40YLQviDQtNCwINGB0LUg0YHRh9C10YLQsNGCINC30LAg0L3QtdC/0YDQvtC80LXQvdC10L3QuCIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUyOQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMAogbXNnaWQgInVzZSBsb3dlcmNhc2UgbGV0dGVycyBmb3IgJ2ZzbW9uaXRvciBjbGVhbicgZmlsZXMiCiBtc2dzdHIgItC80LDQu9C60Lgg0LHRg9C60LLQuCDQt9CwINGE0LDQudC70L7QstC10YLQtSDQt9CwINC60L7QvNCw0L3QtNCw0YLQsCDigJ5mc21vbml0b3IgY2xlYW7igJwiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzEKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzIKIG1zZ2lkICJzaG93IGNhY2hlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IChkZWZhdWx0KSIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LrQtdGI0LjRgNCw0L3QuNGC0LUg0YTQsNC50LvQvtCy0LUgKNGB0YLQsNC90LTQsNGA0YLQvdC+KSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNAogbXNnaWQgInNob3cgZGVsZXRlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQuNC30YLRgNC40YLQuNGC0LUg0YTQsNC50LvQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzYKIG1zZ2lkICJzaG93IG1vZGlmaWVkIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINC/0YDQvtC80LXQvdC10L3QuNGC0LUg0YTQsNC50LvQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzcKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzgKIG1zZ2lkICJzaG93IG90aGVyIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINC00YDRg9Cz0LjRgtC1INGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTM5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQwCiBtc2dpZCAic2hvdyBpZ25vcmVkIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINC40LPQvdC+0YDQuNGA0LDQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MwogbXNnaWQgInNob3cgc3RhZ2VkIGNvbnRlbnRzJyBvYmplY3QgbmFtZSBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQuNC80LXRgtC+INC90LAg0L7QsdC10LrRgtCwINC30LAg0YHRitC00YrRgNC20LDQvdC40LXRgtC+INC90LAg0LjQvdC00LXQutGB0LAiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDQKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDUKIG1zZ2lkICJzaG93IGZpbGVzIG9uIHRoZSBmaWxlc3lzdGVtIHRoYXQgbmVlZCB0byBiZSByZW1vdmVkIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRhNCw0LnQu9C+0LLQtdGC0LUsINC60L7QuNGC0L4g0YLRgNGP0LHQstCwINC00LAg0LHRitC00LDRgiDQuNC30YLRgNC40YLQuCIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0NgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0NwogbXNnaWQgInNob3cgJ290aGVyJyBkaXJlY3RvcmllcycgbmFtZXMgb25seSIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INGB0LDQvNC+INC90LAg0LjQvNC10YLQviDQvdCwINC00YDRg9Cz0LjRgtC1ICjQvdC10YHQu9C10LTQtdC90LjRgtC1KSDQtNC40YDQtdC60YLQvtGA0LjQuCIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OQogbXNnaWQgInNob3cgbGluZSBlbmRpbmdzIG9mIGZpbGVzIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQt9C90LDRhtC40YLQtSDQt9CwINC60YDQsNC5INC90LAg0YDQtdC0INCy0YrQsiDRhNCw0LnQu9C+0LLQtdGC0LUiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTAKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTEKIG1zZ2lkICJkb24ndCBzaG93IGVtcHR5IGRpcmVjdG9yaWVzIgogbXNnc3RyICLQsdC10Lcg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L/RgNCw0LfQvdC40YLQtSDQtNC40YDQtdC60YLQvtGA0LjQuCIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1MworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NAogbXNnaWQgInNob3cgdW5tZXJnZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L3QtdGB0LvQtdGC0LjRgtC1INGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTU1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU2CiBtc2dpZCAic2hvdyByZXNvbHZlLXVuZG8gaW5mb3JtYXRpb24iCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGP0YLQsCDQt9CwINC+0YLQvNGP0L3QsCDQvdCwINGA0LDQt9GA0LXRiNC10L3QuNGC0LUg0L/QvtC00LDQstCw0L3QuNGPIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTU3CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU4CiBtc2dpZCAic2tpcCBmaWxlcyBtYXRjaGluZyBwYXR0ZXJuIgogbXNnc3RyICLQv9GA0LXRgdC60LDRh9Cw0L3QtSDQvdCwINGE0LDQudC70L7QstC10YLQtSDQvdCw0L/QsNGB0LLQsNGJ0Lgg0KjQkNCR0JvQntCd0LAiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjAKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjEKIG1zZ2lkICJleGNsdWRlIHBhdHRlcm5zIGFyZSByZWFkIGZyb20gPGZpbGU+IgogbXNnc3RyICLRiNCw0LHQu9C+0L3QuNGC0LUg0LfQsCDQuNCz0L3QvtGA0LjRgNCw0L3QtSDQtNCwINGB0LUg0L/RgNC+0YfQtdGC0LDRgiDQvtGCINGC0L7Qt9C4INCk0JDQmdCbIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTYzCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTY0CiBtc2dpZCAicmVhZCBhZGRpdGlvbmFsIHBlci1kaXJlY3RvcnkgZXhjbHVkZSBwYXR0ZXJucyBpbiA8ZmlsZT4iCiBtc2dzdHIgIiIKICLQuNC30YfQuNGC0LDQvdC1INC90LAg0LTQvtC/0YrQu9C90LjRgtC10LvQvdC40YLQtSDRiNCw0LHQu9C+0L3QuCDQt9CwINC40LPQvdC+0YDQuNGA0LDQvdC1INC/0L4g0LTQuNGA0LXQutGC0L7RgNC40Y8g0L7RgiDRgtC+0LfQuCDQpNCQ0JnQmyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NgogbXNnaWQgImFkZCB0aGUgc3RhbmRhcmQgZ2l0IGV4Y2x1c2lvbnMiCiBtc2dzdHIgItC00L7QsdCw0LLRj9C90LUg0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3QviDQuNCz0L3QvtGA0LjRgNCw0L3QuNGC0LUg0L7RgiBHaXQg0YTQsNC50LvQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzAKIG1zZ2lkICJtYWtlIHRoZSBvdXRwdXQgcmVsYXRpdmUgdG8gdGhlIHByb2plY3QgdG9wIGRpcmVjdG9yeSIKIG1zZ3N0ciAi0L/RitGC0LjRidCw0YLQsCDQtNCwINGB0LAg0L7RgtC90L7RgdC40YLQtdC70L3QuCDRgdC/0YDRj9C80L4g0L7RgdC90L7QstC90LDRgtCwINC00LjRgNC10LrRgtC+0YDQuNGPINC90LAg0L/RgNC+0LXQutGC0LAiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzIKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzMKIG1zZ2lkICJyZWN1cnNlIHRocm91Z2ggc3VibW9kdWxlcyIKIG1zZ3N0ciAi0YDQtdC60YPRgNGB0LjQstC90L4g0L7QsdGF0L7QttC00LDQvdC1INC/0L7QtNC80L7QtNGD0LvQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzQKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzUKIG1zZ2lkICJpZiBhbnkgPGZpbGU+IGlzIG5vdCBpbiB0aGUgaW5kZXgsIHRyZWF0IHRoaXMgYXMgYW4gZXJyb3IiCiBtc2dzdHIgItCz0YDQtdGI0LrQsCwg0LDQutC+INC90Y/QutC+0Lkg0L7RgiDRgtC10LfQuCDQpNCQ0JnQm9C+0LLQtSDQvdC1INC1INCyINC40L3QtNC10LrRgdCwIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTc1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc2CiBtc2dpZCAidHJlZS1pc2giCiBtc2dzdHIgItCj0JrQkNCX0JDQotCV0Jtf0JrQqtCcX9CU0KrQoNCS0J4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzYKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzcKIG1zZ2lkICJwcmV0ZW5kIHRoYXQgcGF0aHMgcmVtb3ZlZCBzaW5jZSA8dHJlZS1pc2g+IGFyZSBzdGlsbCBwcmVzZW50IgogbXNnc3RyICIiCiAi0YHRh9C40YLQsNC90LUsINGH0LUg0L/RitGC0LjRidCw0YLQsCDQuNC30YLRgNC40YLQuCDRgdC70LXQtCDQo9Ca0JDQl9CQ0KLQldCb0Y9f0JrQqtCcX9CU0KrQoNCS0J4g0LLRgdC1INC+0YnQtSDRgdGK0YnQtdGB0YLQstGD0LLQsNGCIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTc4CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc5CiBtc2dpZCAic2hvdyBkZWJ1Z2dpbmcgZGF0YSIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y/RgtCwINC30LAg0LjQt9GH0LjRgdGC0LLQsNC90LUg0L3QsCDQs9GA0LXRiNC60LgiCiAKQEAgLTEzMTUxLDcgKzE2MzY4LDcgQEAKIG1zZ2lkICJkbyBub3QgcHJpbnQgcmVtb3RlIFVSTCIKIG1zZ3N0ciAi0LHQtdC3INC40LfQstC10LbQtNCw0L3QtSDQvdCwINCw0LTRgNC10YHQuNGC0LUg0L3QsCDQvtGC0LTQsNC70LXRh9C10L3QuNGC0LUg0YXRgNCw0L3QuNC70LjRidCwIgogCi0jOiBidWlsdGluL2xzLXJlbW90ZS5jOjYwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjIgYnVpbHRpbi9yZWJhc2UuYzo5MDMKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjAgYnVpbHRpbi9scy1yZW1vdGUuYzo2MiBidWlsdGluL3JlYmFzZS5jOjE1NjEKIG1zZ2lkICJleGVjIgogbXNnc3RyICLQmtCe0JzQkNCd0JTQkCIKIApAQCAtMTMxNjksMTcgKzE2Mzg2LDE3IEBACiAKICM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjcKIG1zZ2lkICJkbyBub3Qgc2hvdyBwZWVsZWQgdGFncyIKLW1zZ3N0ciAi0LHQtdC3INC40LfQstC10LbQtNCw0L3QtSDQvdCwINC/0YDQvtGB0LvQtdC00LXQvdC40YLQtSDQtdGC0LjQutC10YLQuCIKK21zZ3N0ciAi0LHQtdC3INC/0YDQvtGB0LvQtdC00Y/QstCw0L3QtSDQvdCwINC90LXQv9GA0LXQutC40YLQtSDQtdGC0LjQutC10YLQuCIKIAogIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2OQogbXNnaWQgInRha2UgdXJsLjxiYXNlPi5pbnN0ZWFkT2YgaW50byBhY2NvdW50IgogbXNnc3RyICLQstC30LjQvNCw0L3QtSDQv9GA0LXQtNCy0LjQtCDQvdCwIOKAnnVybC7QkdCQ0JfQkC5pbnN0ZWFkT2bigJwiCiAKLSM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzMKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzIKIG1zZ2lkICJleGl0IHdpdGggZXhpdCBjb2RlIDIgaWYgbm8gbWF0Y2hpbmcgcmVmcyBhcmUgZm91bmQiCiBtc2dzdHIgItC40LfRhdC+0LQg0YEg0LrQvtC0IDIsINCw0LrQviDQvdC1INGB0LUg0L7RgtC60YDQuNGP0YIg0YHRitCy0L/QsNC00LDRidC4INGD0LrQsNC30LDRgtC10LvQuCIKIAotIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NQogbXNnaWQgInNob3cgdW5kZXJseWluZyByZWYgaW4gYWRkaXRpb24gdG8gdGhlIG9iamVjdCBwb2ludGVkIGJ5IGl0IgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRg9C60LDQt9Cw0YLQtdC70Y8g0LfQsNC10LTQvdC+INGBINC+0LHQtdC60YLQsCDRgdC+0YfQtdC9INC+0YIg0L3QtdCz0L4iCiAKQEAgLTEzMjI2LDI2NiArMTY0NDMsMjg3IEBACiBtc2dpZCAiZW1wdHkgbWJveDogJyVzJyIKIG1zZ3N0ciAi0L/RgNCw0LfQvdCwINC/0L7RidC10L3RgdC60LAg0LrRg9GC0LjRjyBtYm94OiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjUyCisjOiBidWlsdGluL21lcmdlLmM6NTUKIG1zZ2lkICJnaXQgbWVyZ2UgWzxvcHRpb25zPl0gWzxjb21taXQ+Li4uXSIKIG1zZ3N0ciAiZ2l0IG1lcmdlIFvQntCf0KbQmNCv4oCmXSBb0J/QntCU0JDQktCQ0J3QleKApl0iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1MworIzogYnVpbHRpbi9tZXJnZS5jOjU2CiBtc2dpZCAiZ2l0IG1lcmdlIC0tYWJvcnQiCiBtc2dzdHIgImdpdCBtZXJnZSAtLWFib3J0IgogCi0jOiBidWlsdGluL21lcmdlLmM6NTQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1NwogbXNnaWQgImdpdCBtZXJnZSAtLWNvbnRpbnVlIgogbXNnc3RyICJnaXQgbWVyZ2UgLS1jb250aW51ZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjExMQorIzogYnVpbHRpbi9tZXJnZS5jOjExOQogbXNnaWQgInN3aXRjaCBgbScgcmVxdWlyZXMgYSB2YWx1ZSIKIG1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLW3igJwg0LjQt9C40YHQutCy0LAg0YHRgtC+0LnQvdC+0YHRgiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE3NworIzogYnVpbHRpbi9tZXJnZS5jOjE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyByZXF1aXJlcyBhIHZhbHVlIgorbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4lc+KAnCDQuNC30LjRgdC60LLQsCDRgdGC0L7QudC90L7RgdGCIgorCisjOiBidWlsdGluL21lcmdlLmM6MTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBmaW5kIG1lcmdlIHN0cmF0ZWd5ICclcycuXG4iCiBtc2dzdHIgItCd0Y/QvNCwINGC0LDQutCw0LLQsCDRgdGC0YDQsNGC0LXQs9C40Y8g0LfQsCDRgdC70LjQstCw0L3QtTog4oCeJXPigJwuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNzgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXZhaWxhYmxlIHN0cmF0ZWdpZXMgYXJlOiIKIG1zZ3N0ciAi0J3QsNC70LjRh9C90LjRgtC1INGB0YLRgNCw0YLQtdCz0LjQuCDRgdCwOiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE4MworIzogYnVpbHRpbi9tZXJnZS5jOjE5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJBdmFpbGFibGUgY3VzdG9tIHN0cmF0ZWdpZXMgYXJlOiIKIG1zZ3N0ciAi0JTQvtC/0YrQu9C90LjRgtC10LvQvdC40YLQtSDRgdGC0YDQsNGC0LXQs9C40Lgg0YHQsDoiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzQgYnVpbHRpbi9wdWxsLmM6MTQzCisjOiBidWlsdGluL21lcmdlLmM6MjQ1IGJ1aWx0aW4vcHVsbC5jOjEzMgogbXNnaWQgImRvIG5vdCBzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCiBtc2dzdHIgItCx0LXQtyDQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRgdGC0LDRgtC40YHRgtC40LrQsNGC0LAg0YHQu9C10LQg0LfQsNCy0YrRgNGI0LLQsNC90LUg0L3QsCDRgdC70LjQstCw0L3QtSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjIzNyBidWlsdGluL3B1bGwuYzoxNDYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDggYnVpbHRpbi9wdWxsLmM6MTM1CiBtc2dpZCAic2hvdyBhIGRpZmZzdGF0IGF0IHRoZSBlbmQgb2YgdGhlIG1lcmdlIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRgdGC0LDRgtC40YHRgtC40LrQsNGC0LAg0YHQu9C10LQg0LfQsNCy0YrRgNGI0LLQsNC90LUg0L3QsCDRgdC70LjQstCw0L3QtSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjIzOCBidWlsdGluL3B1bGwuYzoxNDkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDkgYnVpbHRpbi9wdWxsLmM6MTM4CiBtc2dpZCAiKHN5bm9ueW0gdG8gLS1zdGF0KSIKIG1zZ3N0ciAiKNC/0YHQtdCy0LTQvtC90LjQvCDQvdCwIOKAni0tc3RhdOKAnCkiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDAgYnVpbHRpbi9wdWxsLmM6MTUyCisjOiBidWlsdGluL21lcmdlLmM6MjUxIGJ1aWx0aW4vcHVsbC5jOjE0MQogbXNnaWQgImFkZCAoYXQgbW9zdCA8bj4pIGVudHJpZXMgZnJvbSBzaG9ydGxvZyB0byBtZXJnZSBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAiIgogItC00L7QsdCw0LLRj9C90LUgKNC90LAg0LzQsNC60YHQuNC80YPQvCDRgtCw0LrRitCyINCR0KDQntCZKSDQt9Cw0L/QuNGB0Lgg0L7RgiDRgdGK0LrRgNCw0YLQtdC90LjRjyDQttGD0YDQvdCw0Lsg0LIg0YHRitC+0LHRidC10L3QuNC10YLQviAiCiAi0LfQsCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQzIGJ1aWx0aW4vcHVsbC5jOjE1OAorIzogYnVpbHRpbi9tZXJnZS5jOjI1NCBidWlsdGluL3B1bGwuYzoxNDcKIG1zZ2lkICJjcmVhdGUgYSBzaW5nbGUgY29tbWl0IGluc3RlYWQgb2YgZG9pbmcgYSBtZXJnZSIKIG1zZ3N0ciAi0YHRitC30LTQsNCy0LDQvdC1INC90LAg0LXQtNC90L4g0L/QvtC00LDQstCw0L3QtSDQstC80LXRgdGC0L4g0LjQt9Cy0YrRgNGI0LLQsNC90LUg0L3QsCDRgdC70LjQstCw0L3QtSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0NSBidWlsdGluL3B1bGwuYzoxNjEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTYgYnVpbHRpbi9wdWxsLmM6MTUwCiBtc2dpZCAicGVyZm9ybSBhIGNvbW1pdCBpZiB0aGUgbWVyZ2Ugc3VjY2VlZHMgKGRlZmF1bHQpIgogbXNnc3RyICLQuNC30LLRitGA0YjQstCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LUg0L/RgNC4INGD0YHQv9C10YjQvdC+INGB0LvQuNCy0LDQvdC1ICjRgdGC0LDQvdC00LDRgNGC0L3QviDQtNC10LnRgdGC0LLQuNC1KSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0NyBidWlsdGluL3B1bGwuYzoxNjQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTggYnVpbHRpbi9wdWxsLmM6MTUzCiBtc2dpZCAiZWRpdCBtZXNzYWdlIGJlZm9yZSBjb21taXR0aW5nIgogbXNnc3RyICLRgNC10LTQsNC60YLQuNGA0LDQvdC1INC90LAg0YHRitC+0LHRidC10L3QuNC10YLQviDQv9GA0LXQtNC4INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjAKIG1zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQgKGRlZmF1bHQpIgogbXNnc3RyICLQv9C+0LfQstC+0LvRj9Cy0LDQvdC1INC90LAg0L/RgNC10LLRitGA0YLQsNC90LUgKNGB0YLQsNC90LTQsNGA0YLQvdC+INC00LXQudGB0YLQstC40LUpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjUwIGJ1aWx0aW4vcHVsbC5jOjE3MAorIzogYnVpbHRpbi9tZXJnZS5jOjI2MiBidWlsdGluL3B1bGwuYzoxNjAKIG1zZ2lkICJhYm9ydCBpZiBmYXN0LWZvcndhcmQgaXMgbm90IHBvc3NpYmxlIgogbXNnc3RyICLQv9GA0LXRg9GB0YLQsNC90L7QstGP0LLQsNC90LUsINCw0LrQviDQv9GA0LXQstGK0YDRgtCw0L3QtdGC0L4g0LUg0L3QtdCy0YrQt9C80L7QttC90L4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTQgYnVpbHRpbi9wdWxsLmM6MTczCisjOiBidWlsdGluL21lcmdlLmM6MjY2IGJ1aWx0aW4vcHVsbC5jOjE2MwogbXNnaWQgInZlcmlmeSB0aGF0IHRoZSBuYW1lZCBjb21taXQgaGFzIGEgdmFsaWQgR1BHIHNpZ25hdHVyZSIKIG1zZ3N0ciAi0L/RgNC+0LLQtdGA0LrQsCwg0YfQtSDRg9C60LDQt9Cw0L3QvtGC0L4g0L/QvtC00LDQstCw0L3QtSDQtSDRgSDQv9GA0LDQstC40LvQtdC9INC/0L7QtNC/0LjRgSDQvdCwIEdQRyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NSBidWlsdGluL25vdGVzLmM6Nzg0IGJ1aWx0aW4vcHVsbC5jOjE3NwotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTYgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg2IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCisjOiBidWlsdGluL21lcmdlLmM6MjY3IGJ1aWx0aW4vbm90ZXMuYzo3ODcgYnVpbHRpbi9wdWxsLmM6MTY3CisjOiBidWlsdGluL3JlYmFzZS5jOjUyMCBidWlsdGluL3JlYmFzZS5jOjE1NzUgYnVpbHRpbi9yZXZlcnQuYzoxMTQKIG1zZ2lkICJzdHJhdGVneSIKIG1zZ3N0ciAi0KHQotCg0JDQotCV0JPQmNCvIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU2IGJ1aWx0aW4vcHVsbC5jOjE3OAorIzogYnVpbHRpbi9tZXJnZS5jOjI2OCBidWlsdGluL3B1bGwuYzoxNjgKIG1zZ2lkICJtZXJnZSBzdHJhdGVneSB0byB1c2UiCiBtc2dzdHIgItCh0KLQoNCQ0KLQldCT0JjQryDQt9CwINGB0LvQuNCy0LDQvdC1LCDQutC+0Y/RgtC+INC00LAg0YHQtSDQv9C+0LvQt9Cy0LAiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTcgYnVpbHRpbi9wdWxsLmM6MTgxCisjOiBidWlsdGluL21lcmdlLmM6MjY5IGJ1aWx0aW4vcHVsbC5jOjE3MQogbXNnaWQgIm9wdGlvbj12YWx1ZSIKIG1zZ3N0ciAi0J7Qn9Cm0JjQrz3QodCi0J7QmdCd0J7QodCiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU4IGJ1aWx0aW4vcHVsbC5jOjE4MgorIzogYnVpbHRpbi9tZXJnZS5jOjI3MCBidWlsdGluL3B1bGwuYzoxNzIKIG1zZ2lkICJvcHRpb24gZm9yIHNlbGVjdGVkIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICLQntCf0KbQmNCvINC30LAg0LjQt9Cx0YDQsNC90LDRgtCwINGB0YLRgNCw0YLQtdCz0LjRjyDQt9CwINGB0LvQuNCy0LDQvdC1IgogCi0jOiBidWlsdGluL21lcmdlLmM6MjYwCisjOiBidWlsdGluL21lcmdlLmM6MjcyCiBtc2dpZCAibWVyZ2UgY29tbWl0IG1lc3NhZ2UgKGZvciBhIG5vbi1mYXN0LWZvcndhcmQgbWVyZ2UpIgogbXNnc3RyICLQodCq0J7QkdCp0JXQndCY0JUg0L/RgNC4INC/0L7QtNCw0LLQsNC90LXRgtC+INGB0YrRgSDRgdC70LjQstCw0L3QtSAo0L/RgNC4INGB0YrRidC40L3RgdC60Lgg0YHQu9C40LLQsNC90LjRjykiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzkKIG1zZ2lkICJhYm9ydCB0aGUgY3VycmVudCBpbi1wcm9ncmVzcyBtZXJnZSIKIG1zZ3N0ciAi0L/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INC90LAg0YLQtdC60YPRidC+0YLQviDRgdC70LjQstCw0L3QtSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI2OQorIzogYnVpbHRpbi9tZXJnZS5jOjI4MQorbXNnaWQgIi0tYWJvcnQgYnV0IGxlYXZlIGluZGV4IGFuZCB3b3JraW5nIHRyZWUgYWxvbmUiCittc2dzdHIgItC/0YDQtdGD0YHRgtCw0L3QvtCy0Y/QstCw0L3QtSDQsdC10Lcg0L/RgNC+0LzRj9C90LAg0L3QsCDQuNC90LTQtdC60YHQsCDQuCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI4MwogbXNnaWQgImNvbnRpbnVlIHRoZSBjdXJyZW50IGluLXByb2dyZXNzIG1lcmdlIgogbXNnc3RyICLQv9GA0L7QtNGK0LvQttCw0LLQsNC90LUg0L3QsCDRgtC10LrRg9GJ0L7RgtC+INGB0LvQuNCy0LDQvdC1IgogCi0jOiBidWlsdGluL21lcmdlLmM6MjcxIGJ1aWx0aW4vcHVsbC5jOjE4OQorIzogYnVpbHRpbi9tZXJnZS5jOjI4NSBidWlsdGluL3B1bGwuYzoxNzkKIG1zZ2lkICJhbGxvdyBtZXJnaW5nIHVucmVsYXRlZCBoaXN0b3JpZXMiCiBtc2dzdHIgItC/0L7Qt9Cy0L7Qu9GP0LLQsNC90LUg0L3QsCDRgdC70LjQstCw0L3QtSDQvdCwINC90LXQt9Cw0LLQuNGB0LjQvNC4INC40YHRgtC+0YDQuNC4IgogCi0jOiBidWlsdGluL21lcmdlLmM6Mjc3Ci1tc2dpZCAidmVyaWZ5IGNvbW1pdC1tc2cgaG9vayIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyOTEKK21zZ2lkICJieXBhc3MgcHJlLW1lcmdlLWNvbW1pdCBhbmQgY29tbWl0LW1zZyBob29rcyIKIG1zZ3N0ciAiIgotItC/0YDQvtCy0LXRgNC60LAg0L3QsCDQutGD0LrQsNGC0LAg0L/RgNC4INC/0YDQvtC80Y/QvdCwINC90LAg0YHRitC+0LHRidC10L3QuNC10YLQviDQv9GA0Lgg0L/QvtC00LDQstCw0L3QtSAoY29tbWl0LW1zZykiCisi0LHQtdC3INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg0LrRg9C60LjRgtC1INC/0YDQtdC00Lgg0L/QvtC00LDQstCw0L3QtSDQuCDRgdC70LjQstCw0L3QtSDQuCDQv9GA0Lgg0L/RgNC+0LzRj9C90LAg0L3QsCAiCisi0YHRitC+0LHRidC10L3QuNC10YLQviDQt9CwINC/0L7QtNCw0LLQsNC90LUgKHByZS1tZXJnZS1jb21taXQg0LggY29tbWl0LW1zZykiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozMDIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMDgKIG1zZ2lkICJjb3VsZCBub3QgcnVuIHN0YXNoLiIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9Cy0YrRgNGI0Lgg0YHQutCw0YLQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL21lcmdlLmM6MzA3CisjOiBidWlsdGluL21lcmdlLmM6MzEzCiBtc2dpZCAic3Rhc2ggZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YHQutCw0YLQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL21lcmdlLmM6MzEyCisjOiBidWlsdGluL21lcmdlLmM6MzE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdDogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INC+0LHQtdC60YI6IOKAniVz4oCcIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzM0IGJ1aWx0aW4vbWVyZ2UuYzozNTEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozNDAgYnVpbHRpbi9tZXJnZS5jOjM1NwogbXNnaWQgInJlYWQtdHJlZSBmYWlsZWQiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQv9GA0L7Rh9C40YLQsNC90LUg0L3QsCDQvtCx0LXQutGCLdC00YrRgNCy0L4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozODEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozODcKIG1zZ2lkICIgKG5vdGhpbmcgdG8gc3F1YXNoKSIKIG1zZ3N0ciAiICjQvdGP0LzQsCDQutCw0LrQstC+INC00LAg0YHQtSDQstC60LDRgNCwKSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjM5MgorIzogYnVpbHRpbi9tZXJnZS5jOjM5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJTcXVhc2ggY29tbWl0IC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCiBtc2dzdHIgItCS0LrQsNGA0LDQvdC+INC/0L7QtNCw0LLQsNC90LUg4oCUINGD0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0L3Rj9C80LAg0LTQsCDQsdGK0LTQtSDQvtCx0L3QvtCy0LXQvVxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6NDQyCisjOiBidWlsdGluL21lcmdlLmM6NDQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIG1lcmdlIG1lc3NhZ2UgLS0gbm90IHVwZGF0aW5nIEhFQURcbiIKIG1zZ3N0ciAiIgogItCb0LjQv9GB0LLQsCDRgdGK0L7QsdGJ0LXQvdC40LUg0L/RgNC4INC/0L7QtNCw0LLQsNC90LUg4oCUINGD0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0L3Rj9C80LAg0LTQsCDQsdGK0LTQtSDQvtCx0L3QvtCy0LXQvVxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6NDkzCisjOiBidWlsdGluL21lcmdlLmM6NDk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZG9lcyBub3QgcG9pbnQgdG8gYSBjb21taXQiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0YHQvtGH0Lgg0LrRitC8INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1ODAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkIGJyYW5jaC4lcy5tZXJnZW9wdGlvbnMgc3RyaW5nOiAlcyIKIG1zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9C10L0g0L3QuNC3INC30LAg0L3QsNGB0YLRgNC+0LnQutCw0YLQsCDigJ5icmFuY2guJXMubWVyZ2VvcHRpb25z4oCcOiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjcwMQorIzogYnVpbHRpbi9tZXJnZS5jOjcwOAogbXNnaWQgIk5vdCBoYW5kbGluZyBhbnl0aGluZyBvdGhlciB0aGFuIHR3byBoZWFkcyBtZXJnZS4iCiBtc2dzdHIgItCf0L7QtNC00YrRgNC20LAg0YHQtSDRgdCw0LzQviDRgdC70LjQstCw0L3QtSDQvdCwINGC0L7Rh9C90L4g0LTQstC1INC40YHRgtC+0YDQuNC4LiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjcxNQorIzogYnVpbHRpbi9tZXJnZS5jOjcyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmtub3duIG9wdGlvbiBmb3IgbWVyZ2UtcmVjdXJzaXZlOiAtWCVzIgogbXNnc3RyICLQndC10L/QvtC30L3QsNGC0LAg0L7Qv9GG0LjRjyDQt9CwINGA0LXQutGD0YDRgdC40LLQvdC+0YLQviDRgdC70LjQstCw0L3QtSDigJ5tZXJnZS1yZWN1cnNpdmXigJw6IOKAni1YJXPigJwiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3MzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlICVzIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LjRgdCw0L0iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3ODIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlYWQgZnJvbSAnJXMnIgogbXNnc3RyICLQntGCIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INGH0LXRgtC1IgogCi0jOiBidWlsdGluL21lcmdlLmM6NzkxCisjOiBidWlsdGluL21lcmdlLmM6Nzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBjb21taXR0aW5nIG1lcmdlOyB1c2UgJ2dpdCBjb21taXQnIHRvIGNvbXBsZXRlIHRoZSBtZXJnZS5cbiIKIG1zZ3N0ciAiIgogItCh0LvQuNCy0LDQvdC10YLQviDQvdGP0LzQsCDQtNCwINCx0YrQtNC1INC/0L7QtNCw0LTQtdC90L4uICDQl9CwINC30LDQstGK0YDRiNCy0LDQvdC10YLQviDQvNGDINC4INC/0L7QtNCw0LLQsNC90LXRgtC+INC80YMgIgogItC40LfQv9C+0LvQt9Cy0LDQudGC0LUg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCBjb21taXTigJwuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTcKLSMsIGMtZm9ybWF0CisjOiBidWlsdGluL21lcmdlLmM6ODA0CiBtc2dpZCAiIgogIlBsZWFzZSBlbnRlciBhIGNvbW1pdCBtZXNzYWdlIHRvIGV4cGxhaW4gd2h5IHRoaXMgbWVyZ2UgaXMgbmVjZXNzYXJ5LFxuIgogImVzcGVjaWFsbHkgaWYgaXQgbWVyZ2VzIGFuIHVwZGF0ZWQgdXBzdHJlYW0gaW50byBhIHRvcGljIGJyYW5jaC5cbiIKICJcbiIKLSJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBpZ25vcmVkLCBhbmQgYW4gZW1wdHkgbWVzc2FnZSBhYm9ydHNcbiIKLSJ0aGUgY29tbWl0LlxuIgogbXNnc3RyICIiCiAi0JIg0YHRitC+0LHRidC10L3QuNC10YLQviDQv9GA0Lgg0L/QvtC00LDQstCw0L3QtSDQtNC+0LHQsNCy0LXRgtC1INC40L3RhNC+0YDQvNCw0YbQuNGPINC30LAg0L/RgNC40YfQuNC90LDRgtCwINC30LBcbiIKICLRgdC70LjQstCw0L3QtdGC0L4sINC+0YHQvtCx0LXQvdC+INCw0LrQviDRgdC70LjQstCw0YLQtSDQvtCx0L3QvtCy0LXQvSDQvtGC0LTQsNC70LXRh9C10L0g0LrQu9C+0L0g0LIg0YLQtdC80LDRgtC40YfQtdC9INC60LvQvtC9LlxuIgotIlxuIgotItCg0LXQtNC+0LLQtdGC0LUsINC60L7QuNGC0L4g0LfQsNC/0L7Rh9Cy0LDRgiDRgSDigJ4lY+KAnCDRidC1INCx0YrQtNCw0YIg0L/RgNC+0L/Rg9GB0L3QsNGC0LgsINCwINC/0YDQsNC30L3QviDRgdGK0L7QsdGJ0LXQvdC40LVcbiIKLSLQv9GA0LXRg9GB0YLQsNC90L7QstGP0LLQsCDQv9C+0LTQsNCy0LDQvdC10YLQvi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjgzMworIzogYnVpbHRpbi9tZXJnZS5jOjgwOQorbXNnaWQgIkFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCittc2dzdHIgItCf0YDQsNC30L3QviDRgdGK0L7QsdGJ0LXQvdC40LUg0L/RgNC10LTQvtGC0LLRgNCw0YLRj9Cy0LAg0L/QvtC00LDQstCw0L3QtdGC0L4uXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQsIGFuZCBhbiBlbXB0eSBtZXNzYWdlIGFib3J0c1xuIgorInRoZSBjb21taXQuXG4iCittc2dzdHIgIiIKKyLQoNC10LTQvtCy0LXRgtC1LCDQutC+0LjRgtC+INC30LDQv9C+0YfQstCw0YIg0YEg4oCeJWPigJwsINGJ0LUg0LHRitC00LDRgiDQv9GA0L7Qv9GD0YHQvdCw0YLQuCwg0LAg0L/RgNCw0LfQvdC+XG4iCisi0YHRitC+0LHRidC10L3QuNC1INC/0YDQtdGD0YHRgtCw0L3QvtCy0Y/QstCwINC/0L7QtNCw0LLQsNC90LXRgtC+LlxuIgorCisjOiBidWlsdGluL21lcmdlLmM6ODY1CiBtc2dpZCAiRW1wdHkgY29tbWl0IG1lc3NhZ2UuIgogbXNnc3RyICLQn9GA0LDQt9C90L4g0YHRitC+0LHRidC10L3QuNC1INC/0YDQuCDQv9C+0LTQsNCy0LDQvdC1LiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjg1MgorIzogYnVpbHRpbi9tZXJnZS5jOjg4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJXb25kZXJmdWwuXG4iCiBtc2dzdHIgItCf0YrRgNCy0LjRj9GCINC10YLQsNC/INC90LAg0YHQu9C40LLQsNC90LXRgtC+INC30LDQstGK0YDRiNC4LlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTA1CisjOiBidWlsdGluL21lcmdlLmM6OTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG9tYXRpYyBtZXJnZSBmYWlsZWQ7IGZpeCBjb25mbGljdHMgYW5kIHRoZW4gY29tbWl0IHRoZSByZXN1bHQuXG4iCiBtc2dzdHIgIiIKICLQndC10YPRgdC/0LXRiNC90L4g0LDQstGC0L7QvNCw0YLQuNGH0L3QviDRgdC70LjQstCw0L3QtSDigJQg0LrQvtGA0LjQs9C40YDQsNC50YLQtSDQutC+0L3RhNC70LjQutGC0LjRgtC1INC4INC/0L7QtNCw0LnRgtC1ICIKICLRgNC10LfRg9C70YLQsNGC0LAuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5NDQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODAKIG1zZ2lkICJObyBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgItCd0Y/QvNCwINGC0LXQutGD0Ykg0LrQu9C+0L0uIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ2CisjOiBidWlsdGluL21lcmdlLmM6OTgyCiBtc2dpZCAiTm8gcmVtb3RlIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICLQotC10LrRg9GJ0LjRj9GCINC60LvQvtC9INC90LUg0YHQu9C10LTQuCDQvdC40LrQvtC5LiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjk0OAorIzogYnVpbHRpbi9tZXJnZS5jOjk4NAogbXNnaWQgIk5vIGRlZmF1bHQgdXBzdHJlYW0gZGVmaW5lZCBmb3IgdGhlIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAi0KLQtdC60YPRidC40Y/RgiDQutC70L7QvSDQvdC1INGB0LvQtdC00Lgg0L3QuNC60L7QuSDQutC70L7QvS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5NTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gcmVtb3RlLXRyYWNraW5nIGJyYW5jaCBmb3IgJXMgZnJvbSAlcyIKIG1zZ3N0ciAi0J3QuNC60L7QuSDQutC70L7QvSDQvdC1INGB0LvQtdC00Lgg0LrQu9C+0L3QsCDigJ4lc+KAnCDQvtGCINGF0YDQsNC90LjQu9C40YnQtdGC0L4g4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDEwCisjOiBidWlsdGluL21lcmdlLmM6MTA0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgdmFsdWUgJyVzJyBpbiBlbnZpcm9ubWVudCAnJXMnIgogbXNnc3RyICLQndC10L/RgNCw0LLQuNC70L3QsCDRgdGC0L7QudC90L7RgdGCIOKAniVz4oCcINCyINGB0YDQtdC00LDRgtCwIOKAniVz4oCcIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTExMworIzogYnVpbHRpbi9tZXJnZS5jOjExNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UgaW4gJXM6ICVzIgogbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDRgdC70LXQtSDQsiDigJ4lc+KAnDogJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTQ3CisjOiBidWlsdGluL21lcmdlLmM6MTE4MwogbXNnaWQgIm5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgogbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDRgdC70LXQtSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNTAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjg2CiBtc2dpZCAiLS1hYm9ydCBleHBlY3RzIG5vIGFyZ3VtZW50cyIKIG1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1hYm9ydOKAnCDQvdC1INC/0YDQuNC10LzQsCDQsNGA0LPRg9C80LXQvdGC0LgiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjU0CisjOiBidWlsdGluL21lcmdlLmM6MTI5MAogbXNnaWQgIlRoZXJlIGlzIG5vIG1lcmdlIHRvIGFib3J0IChNRVJHRV9IRUFEIG1pc3NpbmcpLiIKIG1zZ3N0ciAiIgogItCd0LUg0LzQvtC20LUg0LTQsCDQv9GA0LXRg9GB0YLQsNC90L7QstC40YLQtSDRgdC70LjQstCw0L3QtSwg0LfQsNGJ0L7RgtC+INCyINC80L7QvNC10L3RgtCwINC90LUg0YHQtSDQuNC30LLRitGA0YjQstCwINGC0LDQutC+0LLQsCAiCiAiKNC70LjQv9GB0LLQsCDRg9C60LDQt9Cw0YLQtdC7IOKAnk1FUkdFX0hFQUTigJwpLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNjYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjk5Cittc2dpZCAiLS1xdWl0IGV4cGVjdHMgbm8gYXJndW1lbnRzIgorbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLXF1aXTigJwg0L3QtSDQv9GA0LjQtdC80LAg0LDRgNCz0YPQvNC10L3RgtC4IgorCisjOiBidWlsdGluL21lcmdlLmM6MTMxMgogbXNnaWQgIi0tY29udGludWUgZXhwZWN0cyBubyBhcmd1bWVudHMiCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tY29udGludWXigJwg0L3QtSDQv9GA0LjQtdC80LAg0LDRgNCz0YPQvNC10L3RgtC4IgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI3MAorIzogYnVpbHRpbi9tZXJnZS5jOjEzMTYKIG1zZ2lkICJUaGVyZSBpcyBubyBtZXJnZSBpbiBwcm9ncmVzcyAoTUVSR0VfSEVBRCBtaXNzaW5nKS4iCiBtc2dzdHIgItCSINC80L7QvNC10L3RgtCwINC90LUg0YHQtSDQuNC30LLRitGA0YjQstCwINGB0LvQuNCy0LDQvdC1ICjQu9C40L/RgdCy0LAg0YPQutCw0LfQsNGC0LXQuyDigJ5NRVJHRV9IRUFE4oCcKS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjg2CisjOiBidWlsdGluL21lcmdlLmM6MTMzMgogbXNnaWQgIiIKICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS5cbiIKICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIHlvdSBtZXJnZS4iCkBAIC0xMzQ5Myw3ICsxNjczMSw3IEBACiAi0J3QtSDRgdGC0LUg0LfQsNCy0YrRgNGI0LjQu9C4INGB0LvQuNCy0LDQvdC1LiAgKNCj0LrQsNC30LDRgtC10LvRj9GCIOKAnk1FUkdFX0hFQUTigJwg0YHRitGJ0LXRgdGC0LLRg9Cy0LApLlxuIgogItCf0L7QtNCw0LnRgtC1INC/0YDQvtC80LXQvdC40YLQtSDRgdC4LCDQv9GA0LXQtNC4INC00LAg0LfQsNC/0L7Rh9C90LXRgtC1INC90L7QstC+INGB0LvQuNCy0LDQvdC1LiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyOTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzM5CiBtc2dpZCAiIgogIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdHMpLlxuIgogIlBsZWFzZSwgY29tbWl0IHlvdXIgY2hhbmdlcyBiZWZvcmUgeW91IG1lcmdlLiIKQEAgLTEzNTAxLDk5ICsxNjczOSwxMDMgQEAKICLQndC1INGB0YLQtSDQt9Cw0LLRitGA0YjQuNC70Lgg0L7RgtCx0LjRgNCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LUgKNGD0LrQsNC30LDRgtC10LvRj9GCIOKAnkNIRVJSWV9QSUNLX0hFQUTigJxcbiIKICLRgdGK0YnQtdGB0YLQstGD0LLQsCkuICDQn9C+0LTQsNC50YLQtSDQv9GA0L7QvNC10L3QuNGC0LUg0YHQuCwg0L/RgNC10LTQuCDQtNCwINC30LDQv9C+0YfQvdC10YLQtSDQvdC+0LLQviDRgdC70LjQstCw0L3QtS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjk2CisjOiBidWlsdGluL21lcmdlLmM6MTM0MgogbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdHMpLiIKIG1zZ3N0ciAiIgogItCd0LUg0YHRgtC1INC30LDQstGK0YDRiNC40LvQuCDQvtGC0LHQuNGA0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QtSAo0YPQutCw0LfQsNGC0LXQu9GP0YIg4oCeQ0hFUlJZX1BJQ0tfSEVBROKAnFxuIgogItGB0YrRidC10YHRgtCy0YPQstCwKS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzA1CisjOiBidWlsdGluL21lcmdlLmM6MTM1NgogbXNnaWQgIllvdSBjYW5ub3QgY29tYmluZSAtLXNxdWFzaCB3aXRoIC0tbm8tZmYuIgogbXNnc3RyICLQntC/0YbQuNGP0YLQsCDigJ4tLXNxdWFzaOKAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg4oCeLS1uby1mZuKAnC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzEzCisjOiBidWlsdGluL21lcmdlLmM6MTM1OAorbXNnaWQgIllvdSBjYW5ub3QgY29tYmluZSAtLXNxdWFzaCB3aXRoIC0tY29tbWl0LiIKK21zZ3N0ciAi0J7Qv9GG0LjRj9GC0LAg4oCeLS1zcXVhc2jigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBIOKAni0tY29tbWl04oCcLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzNzQKIG1zZ2lkICJObyBjb21taXQgc3BlY2lmaWVkIGFuZCBtZXJnZS5kZWZhdWx0VG9VcHN0cmVhbSBub3Qgc2V0LiIKIG1zZ3N0ciAiIgogItCd0LUg0LUg0YPQutCw0LfQsNC90L4g0L/QvtC00LDQstCw0L3QtSDQuCDQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAnm1lcmdlLmRlZmF1bHRUb1Vwc3RyZWFt4oCcINC90LUg0LUg0LfQsNC00LDQtNC10L3QsC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzMwCisjOiBidWlsdGluL21lcmdlLmM6MTM5MQogbXNnaWQgIlNxdWFzaCBjb21taXQgaW50byBlbXB0eSBoZWFkIG5vdCBzdXBwb3J0ZWQgeWV0IgogbXNnc3RyICLQktC60LDRgNCy0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QtSDQstGK0LIg0LLRgNGK0YUg0LHQtdC3INC40YHRgtC+0YDQuNGPINCy0YHQtSDQvtGJ0LUg0L3QtSDRgdC1INC/0L7QtNC00YrRgNC20LAiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzMyCisjOiBidWlsdGluL21lcmdlLmM6MTM5MwogbXNnaWQgIk5vbi1mYXN0LWZvcndhcmQgY29tbWl0IGRvZXMgbm90IG1ha2Ugc2Vuc2UgaW50byBhbiBlbXB0eSBoZWFkIgogbXNnc3RyICIiCiAi0J/QvtC90LXQttC1INCy0YrRgNGF0YrRgiDQtSDQsdC10Lcg0LjRgdGC0L7RgNC40Y8sINCy0YHQuNGH0LrQuCDRgdC70LjQstCw0L3QuNGPINGB0LAg0L/RgNC10LLRitGA0YLQsNC90LjRjywg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUgIgogItC40LfQstGK0YDRiNC4INGB0YrRidC40L3RgdC60L4g0YHQu9C40LLQsNC90LUg0LjQt9C40YHQutCy0LDQvdC+INC+0YIg0L7Qv9GG0LjRj9GC0LAg4oCeLS1uby1mZuKAnCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIC0gbm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UiCiBtc2dzdHIgIuKAniVz4oCcIOKAlCDQvdC1INC1INC90LXRidC+LCDQutC+0LXRgtC+INC80L7QttC1INC00LAg0YHQtSDRgdC70LXQtSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDAwCiBtc2dpZCAiQ2FuIG1lcmdlIG9ubHkgZXhhY3RseSBvbmUgY29tbWl0IGludG8gZW1wdHkgaGVhZCIKIG1zZ3N0ciAi0JzQvtC20LXRgtC1INC00LAg0YHQu9C10LXRgtC1INGC0L7Rh9C90L4g0LXQtNC90L4g0L/QvtC00LDQstCw0L3QtSDQstGK0LIg0LLRgNGK0YUg0LHQtdC3INC40YHRgtC+0YDQuNGPIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQyMQorIzogYnVpbHRpbi9tZXJnZS5jOjE0ODEKIG1zZ2lkICJyZWZ1c2luZyB0byBtZXJnZSB1bnJlbGF0ZWQgaGlzdG9yaWVzIgogbXNnc3RyICLQvdC10LfQsNCy0LjRgdC40LzQuCDQuNGB0YLQvtGA0LjQuCDQvdC1INC80L7QttC1INC00LAg0YHQtSDRgdC70LXRj9GCIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQzMAorIzogYnVpbHRpbi9tZXJnZS5jOjE0OTAKIG1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIgogbXNnc3RyICLQktC10YfQtSDQtSDQvtCx0L3QvtCy0LXQvdC+LiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0NDAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVwZGF0aW5nICVzLi4lc1xuIgogbXNnc3RyICLQntCx0L3QvtCy0Y/QstCw0L3QtSDigJ4lcy4uJXPigJxcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0ODIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRyeWluZyByZWFsbHkgdHJpdmlhbCBpbi1pbmRleCBtZXJnZS4uLlxuIgogbXNnc3RyICLQn9GA0L7QsdCwINGB0YrRgSDRgdC70LjQstCw0L3QtSDQsiDRgNCw0LzQutC40YLQtSDQvdCwINC40L3QtNC10LrRgdCw4oCmXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDg5CisjOiBidWlsdGluL21lcmdlLmM6MTU0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3BlLlxuIgogbXNnc3RyICLQndC10YPRgdC/0LXRiNC90L4g0YHQu9C40LLQsNC90LUuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTE0CisjOiBidWlsdGluL21lcmdlLmM6MTU3NAogbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZS4gWWVlYWghIgogbXNnc3RyICLQktC10YfQtSDQtSDQvtCx0L3QvtCy0LXQvdC+ISIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1MjAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTgwCiBtc2dpZCAiTm90IHBvc3NpYmxlIHRvIGZhc3QtZm9yd2FyZCwgYWJvcnRpbmcuIgogbXNnc3RyICLQndC1INC80L7QttC1INC00LAg0YHQtSDQuNC30LLRitGA0YjQuCDQv9GA0LXQstGK0YDRgtCw0L3QtSwg0L/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LTQtdC50YHRgtCy0LjQtdGC0L4uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTU0MyBidWlsdGluL21lcmdlLmM6MTYyMgorIzogYnVpbHRpbi9tZXJnZS5jOjE2MDMgYnVpbHRpbi9tZXJnZS5jOjE2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmV3aW5kaW5nIHRoZSB0cmVlIHRvIHByaXN0aW5lLi4uXG4iCiBtc2dzdHIgItCf0YDQuNCy0LXQttC00LDQvdC1INC90LAg0LTRitGA0LLQvtGC0L4g0LrRitC8INC/0YrRgNCy0L7QvdCw0YfQsNC70L3QvtGC0L7igKZcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1NDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjA3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRyeWluZyBtZXJnZSBzdHJhdGVneSAlcy4uLlxuIgogbXNnc3RyICLQn9GA0L7QsdCy0LDQvdC1INGB0YrRgSDRgdGC0YDQsNGC0LXQs9C40Y/RgtCwINC30LAg0YHQu9C40LLQsNC90LUg4oCeJXPigJzigKZcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIG1lcmdlIHN0cmF0ZWd5IGhhbmRsZWQgdGhlIG1lcmdlLlxuIgogbXNnc3RyICLQndC40LrQvtGPINGB0YLRgNCw0YLQtdCz0LjRjyDQt9CwINGB0LvQuNCy0LDQvdC1INC90LUg0LzQvtC20LUg0LTQsCDQuNC30LLRitGA0YjQuCDRgdC70LjQstCw0L3QtdGC0L4uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjE1CisjOiBidWlsdGluL21lcmdlLmM6MTY2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJNZXJnZSB3aXRoIHN0cmF0ZWd5ICVzIGZhaWxlZC5cbiIKIG1zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdC+INGB0LvQuNCy0LDQvdC1INGB0YrRgSDRgdGC0YDQsNGC0LXQs9C40Y8g4oCeJXPigJwuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjI0CisjOiBidWlsdGluL21lcmdlLmM6MTY3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJVc2luZyB0aGUgJXMgdG8gcHJlcGFyZSByZXNvbHZpbmcgYnkgaGFuZC5cbiIKIG1zZ3N0ciAiIgogItCf0L7Qu9C30LLQsCDRgdC1INGB0YLRgNCw0YLQtdCz0LjRj9GC0LAg4oCeJXPigJwsINC60L7Rj9GC0L4g0YnQtSDQv9C+0LTQs9C+0YLQstC4INC00YrRgNCy0L7RgtC+INC30LAg0LrQvtGA0LjQs9C40YDQsNC90LUg0L3QsCAiCiAi0YDRitC60LAuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjM2CisjOiBidWlsdGluL21lcmdlLmM6MTY4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvbWF0aWMgbWVyZ2Ugd2VudCB3ZWxsOyBzdG9wcGVkIGJlZm9yZSBjb21taXR0aW5nIGFzIHJlcXVlc3RlZFxuIgogbXNnc3RyICIiCkBAIC0xMzY4MSwzMyArMTY5MjMsMzMgQEAKIG1zZ2lkICJzZXQgbGFiZWxzIGZvciBmaWxlMS9vcmlnLWZpbGUvZmlsZTIiCiBtc2dzdHIgItC30LDQtNCw0LLQsNC90LUg0L3QsCDQtdGC0LjQutC10YLQuCDQt9CwINCk0JDQmdCbXzEv0J7QoNCY0JPQmNCd0JDQmy/QpNCQ0JnQm18yIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjQ1CisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gb3B0aW9uICVzIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGC0LAg0L7Qv9GG0LjRjzog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTEKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC10L0g0LDQvdCw0LvQuNC3INC90LAg0L7QsdC10LrRgtCwIOKAniVz4oCcIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjU1CisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIGJhc2UuIElnbm9yaW5nICVzLiIKIG1zZ2lkX3BsdXJhbCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgYmFzZXMuIElnbm9yaW5nICVzLiIKIG1zZ3N0clswXSAi0L3QtSDRgdC1INC/0L7QtNC00YrRgNC20LAg0L/QvtCy0LXRh9C1INC+0YIgJWQg0LHQsNC30LAuICDigJ4lc+KAnCDRgdC1INC/0YDQtdGB0LrQsNGH0LAuIgogbXNnc3RyWzFdICLQvdC1INGB0LUg0L/QvtC00LTRitGA0LbQsNGCINC/0L7QstC10YfQtSDQvtGCICVkINCx0LDQt9C4LiAg4oCeJXPigJwg0YHQtSDQv9GA0LXRgdC60LDRh9CwLiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo2MworIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo2NQogbXNnaWQgIm5vdCBoYW5kbGluZyBhbnl0aGluZyBvdGhlciB0aGFuIHR3byBoZWFkcyBtZXJnZS4iCiBtc2dzdHIgItC/0L7QtNC00YrRgNC20LAg0YHQtSDRgdCw0LzQviDRgdC70LjQstCw0L3QtSDQvdCwINGC0L7Rh9C90L4g0LTQstC1INC40YHRgtC+0YDQuNC4LiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo2OSBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjcxCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjc0IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgcmVmICclcyciCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YLRgNC40YIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzcKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWVyZ2luZyAlcyB3aXRoICVzXG4iCiBtc2dzdHIgItCh0LvQuNCy0LDQvdC1INC90LAg4oCeJXPigJwg0YEg4oCeJXPigJxcbiIKQEAgLTEzNzIwLDcgKzE2OTYyLDcgQEAKIG1zZ2lkICJpbnB1dCBpcyBOVUwgdGVybWluYXRlZCIKIG1zZ3N0ciAi0LLRhdC+0LTQvdC40YLQtSDQt9Cw0L/QuNGB0Lgg0YHQsCDRgNCw0LfQtNC10LvQtdC90Lgg0YEg0L3Rg9C70LXQstC40Y8g0LfQvdCw0Log4oCeTlVM4oCcIgogCi0jOiBidWlsdGluL21rdHJlZS5jOjE1NSBidWlsdGluL3dyaXRlLXRyZWUuYzoyNQorIzogYnVpbHRpbi9ta3RyZWUuYzoxNTUgYnVpbHRpbi93cml0ZS10cmVlLmM6MjYKIG1zZ2lkICJhbGxvdyBtaXNzaW5nIG9iamVjdHMiCiBtc2dzdHIgItGA0LDQt9GA0LXRiNCw0LLQsNC90LUg0L3QsCDQu9C40L/RgdCy0LDRidC4INC+0LHQtdC60YLQuCIKIApAQCAtMTM3MjgsMTYyICsxNjk3MCwxNzggQEAKIG1zZ2lkICJhbGxvdyBjcmVhdGlvbiBvZiBtb3JlIHRoYW4gb25lIHRyZWUiCiBtc2dzdHIgItGA0LDQt9GA0LXRiNCw0LLQsNC90LUg0L3QsCDRgdGK0LfQtNCw0LLQsNC90LXRgtC+INC90LAg0L/QvtCy0LXRh9C1INC+0YIg0LXQtNC90L4g0LTRitGA0LLQviIKIAotIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6OAotbXNnaWQgImdpdCBtdWx0aS1wYWNrLWluZGV4IFstLW9iamVjdC1kaXI9PGRpcj5dICh3cml0ZXx2ZXJpZnkpIgotbXNnc3RyICJnaXQgbXVsdGktcGFjay1pbmRleCBbLS1vYmplY3QtZGlyPdCU0JjQoF/QntCR0JXQmtCiXSAod3JpdGV8dmVyaWZ5KSIKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjkKK21zZ2lkICIiCisiZ2l0IG11bHRpLXBhY2staW5kZXggWzxvcHRpb25zPl0gKHdyaXRlfHZlcmlmeXxleHBpcmV8cmVwYWNrIC0tYmF0Y2gtIgorInNpemU9PHNpemU+KSIKK21zZ3N0ciAiIgorImdpdCBtdWx0aS1wYWNrLWluZGV4IFvQntCf0KbQmNCv4oCmXSAod3JpdGV8dmVyaWZ5fGV4cGlyZXxyZXBhY2sgLS1iYXRjaC0iCisic2l6ZT3QoNCQ0JfQnNCV0KApIgogCi0jOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyMQorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjYKIG1zZ2lkICJvYmplY3QgZGlyZWN0b3J5IGNvbnRhaW5pbmcgc2V0IG9mIHBhY2tmaWxlIGFuZCBwYWNrLWluZGV4IHBhaXJzIgogbXNnc3RyICIiCiAi0JTQmNCg0LXQutGC0L7RgNC40Y/RgtCwX9GBX9Ce0JHQldCa0KLQuCDRgdGK0LTRitGA0LbQsCDQvNC90L7QttC10YHRgtCy0L4g0LTQstC+0LnQutC4INC/0LDQutC10YLQvdC4INGE0LDQudC70L7QstC1INGB0YrRgSAiCiAi0YHRitC+0YLQstC10YLQvdC40Y8g0LjQvCDQuNC90LTQtdC60YEiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjM5CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyOQorbXNnaWQgIiIKKyJkdXJpbmcgcmVwYWNrLCBjb2xsZWN0IHBhY2stZmlsZXMgb2Ygc21hbGxlciBzaXplIGludG8gYSBiYXRjaCB0aGF0IGlzICIKKyJsYXJnZXIgdGhhbiB0aGlzIHNpemUiCittc2dzdHIgIiIKKyLQv9GA0Lgg0L/RgNC10L/QsNC60LXRgtC40YDQsNC90LUg0L/QsNC60LXRgtC90LjRgtC1INGE0LDQudC70L7QstC1LCDQutC+0LjRgtC+INGB0LAg0YEg0L/Qvi3QvNCw0LvRitC6INC+0YIg0YLQvtC30Lgg0YDQsNC30LzQtdGALCDQtNCwICIKKyLRgdC1INC+0LHQtdC00LjQvdGP0LLQsNGCINCyINC/0LDQutC10YLQuCDRgSDQv9C+LdCz0L7Qu9GP0Lwg0L7RgiDRgtC+0LfQuCDRgNCw0LfQvNC10YAiCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjUwIGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NjcKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMiCiBtc2dzdHIgItC/0YDQtdC60LDQu9C10L3QviDQvNC90L7Qs9C+INCw0YDQs9GD0LzQtdC90YLQuCIKIAotIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5yZWNvZ25pemVkIHZlcmI6ICVzIgotbXNnc3RyICLQvdC10L/QvtC30L3QsNGCINCz0LvQsNCz0L7QuzogJXMiCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo2MAorbXNnaWQgIi0tYmF0Y2gtc2l6ZSBvcHRpb24gaXMgb25seSBmb3IgJ3JlcGFjaycgc3ViY29tbWFuZCIKK21zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1iYXRjaC1zaXpl4oCcINC40LfQuNGB0LrQstCwINC/0L7QtNC60L7QvNCw0L3QtNCw0YLQsCDigJ5yZXBhY2vigJwiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIHN1YmNvbW1hbmQ6ICVzIgorbXNnc3RyICLQvdC10L/QvtC30L3QsNGC0LAg0L/QvtC00LrQvtC80LDQvdC00LA6ICVzIgorCisjOiBidWlsdGluL212LmM6MTgKIG1zZ2lkICJnaXQgbXYgWzxvcHRpb25zPl0gPHNvdXJjZT4uLi4gPGRlc3RpbmF0aW9uPiIKIG1zZ3N0ciAiZ2l0IG12IFvQntCf0KbQmNCv4oCmXSDQntCR0JXQmtCi4oCmINCm0JXQmyIKIAotIzogYnVpbHRpbi9tdi5jOjgyCisjOiBidWlsdGluL212LmM6ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGlyZWN0b3J5ICVzIGlzIGluIGluZGV4IGFuZCBubyBzdWJtb2R1bGU/IgogbXNnc3RyICLQlNC40YDQtdC60YLQvtGA0LjRj9GC0LAg4oCeJXPigJwg0LUg0LIg0LjQvdC00LXQutGB0LAsINC90L4g0L3QtSDQtSDQv9C+0LTQvNC+0LTRg9C7IgogCi0jOiBidWlsdGluL212LmM6ODQKKyM6IGJ1aWx0aW4vbXYuYzo4NQogbXNnaWQgIlBsZWFzZSBzdGFnZSB5b3VyIGNoYW5nZXMgdG8gLmdpdG1vZHVsZXMgb3Igc3Rhc2ggdGhlbSB0byBwcm9jZWVkIgogbXNnc3RyICIiCiAi0JfQsCDQtNCwINC/0YDQvtC00YrQu9C20LjRgtC1LCDQuNC70Lgg0LLQutCw0YDQsNC50YLQtSDQv9GA0L7QvNC10L3QuNGC0LUg0L/QviDRhNCw0LnQu9CwIOKAni5naXRtb2R1bGVz4oCcINCyINC40L3QtNC10LrRgdCwLFxuIgogItC40LvQuCDQs9C4INGB0LrQsNGC0LDQudGC0LUiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxMDIKKyM6IGJ1aWx0aW4vbXYuYzoxMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJS4qcyBpcyBpbiBpbmRleCIKIG1zZ3N0ciAi4oCeJS4qc+KAnCDQstC10YfQtSDQtSDQsiDQuNC90LTQtdC60YHQsCIKIAotIzogYnVpbHRpbi9tdi5jOjEyNAorIzogYnVpbHRpbi9tdi5jOjEyNQogbXNnaWQgImZvcmNlIG1vdmUvcmVuYW1lIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAi0L/RgNC40L3Rg9C00LjRgtC10LvQvdC+INC/0YDQtdC80LXRgdGC0LLQsNC90LUv0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1INC00L7RgNC4INGG0LXQu9GC0LAg0LTQsCDRgdGK0YnQtdGB0YLQstGD0LLQsCIKIAotIzogYnVpbHRpbi9tdi5jOjEyNgorIzogYnVpbHRpbi9tdi5jOjEyNwogbXNnaWQgInNraXAgbW92ZS9yZW5hbWUgZXJyb3JzIgogbXNnc3RyICLQv9GA0LXRgdC60LDRh9Cw0L3QtSDQvdCwINCz0YDQtdGI0LrQuNGC0LUg0L/RgNC4INC/0YDQtdC80LXRgdGC0LLQsNC90LUv0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1IgogCi0jOiBidWlsdGluL212LmM6MTY4CisjOiBidWlsdGluL212LmM6MTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlc3RpbmF0aW9uICclcycgaXMgbm90IGEgZGlyZWN0b3J5IgogbXNnc3RyICLRhtC10LvRgtCwIOKAniVz4oCcINGB0YrRidC10YHRgtCy0YPQstCwINC4INC90LUg0LUg0LTQuNGA0LXQutGC0L7RgNC40Y8iCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNzkKKyM6IGJ1aWx0aW4vbXYuYzoxODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2hlY2tpbmcgcmVuYW1lIG9mICclcycgdG8gJyVzJ1xuIgogbXNnc3RyICLQn9GA0L7QstC10YDQutCwINC90LAg0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC10YLQviDQvdCwINC+0LHQtdC60YIg0L7RgiDigJ4lc+KAnCDQvdCwIOKAniVz4oCcXG4iCiAKLSM6IGJ1aWx0aW4vbXYuYzoxODMKKyM6IGJ1aWx0aW4vbXYuYzoxODQKIG1zZ2lkICJiYWQgc291cmNlIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQvtCx0LXQutGCIgogCi0jOiBidWlsdGluL212LmM6MTg2CisjOiBidWlsdGluL212LmM6MTg3CiBtc2dpZCAiY2FuIG5vdCBtb3ZlIGRpcmVjdG9yeSBpbnRvIGl0c2VsZiIKIG1zZ3N0ciAi0LTQuNGA0LXQutGC0L7RgNC40Y8g0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/RgNC10LzQtdGB0YLQuCDQsiDRgdC10LHQtSDRgdC4IgogCi0jOiBidWlsdGluL212LmM6MTg5CisjOiBidWlsdGluL212LmM6MTkwCiBtc2dpZCAiY2Fubm90IG1vdmUgZGlyZWN0b3J5IG92ZXIgZmlsZSIKIG1zZ3N0ciAi0LTQuNGA0LXQutGC0L7RgNC40Y8g0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/RgNC10LzQtdGB0YLQuCDQstGK0YDRhdGDINGE0LDQudC7IgogCi0jOiBidWlsdGluL212LmM6MTk4CisjOiBidWlsdGluL212LmM6MTk5CiBtc2dpZCAic291cmNlIGRpcmVjdG9yeSBpcyBlbXB0eSIKIG1zZ3N0ciAi0L/RitGA0LLQvtC90LDRh9Cw0LvQvdCw0YLQsCDQtNC40YDQtdC60YLQvtGA0LjRjyDQtSDQv9GA0LDQt9C90LAiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyMjMKKyM6IGJ1aWx0aW4vbXYuYzoyMjQKIG1zZ2lkICJub3QgdW5kZXIgdmVyc2lvbiBjb250cm9sIgogbXNnc3RyICLQvdC1INC1INC/0L7QtCDQutC+0L3RgtGA0L7Qu9CwINC90LAgR2l0IgogCi0jOiBidWlsdGluL212LmM6MjI2CisjOiBidWlsdGluL212LmM6MjI3CiBtc2dpZCAiZGVzdGluYXRpb24gZXhpc3RzIgogbXNnc3RyICLRhtC10LvRgtCwINGB0YrRidC10YHRgtCy0YPQstCwIgogCi0jOiBidWlsdGluL212LmM6MjM0CisjOiBidWlsdGluL212LmM6MjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm92ZXJ3cml0aW5nICclcyciCiBtc2dzdHIgItC/0YDQtdC30LDQv9C40YHQstCw0L3QtSDQvdCwIOKAniVz4oCcIgogCi0jOiBidWlsdGluL212LmM6MjM3CisjOiBidWlsdGluL212LmM6MjM4CiBtc2dpZCAiQ2Fubm90IG92ZXJ3cml0ZSIKIG1zZ3N0ciAi0J/RgNC10LfQsNC/0LjRgdCy0LDQvdC10YLQviDQtSDQvdC10LLRitC30LzQvtC20L3QviIKIAotIzogYnVpbHRpbi9tdi5jOjI0MAorIzogYnVpbHRpbi9tdi5jOjI0MQogbXNnaWQgIm11bHRpcGxlIHNvdXJjZXMgZm9yIHRoZSBzYW1lIHRhcmdldCIKIG1zZ3N0ciAi0LzQvdC+0LbQtdGB0YLQstC+INC40LfRgtC+0YfQvdC40YbQuCDQt9CwINC10LTQvdCwINGG0LXQuyIKIAotIzogYnVpbHRpbi9tdi5jOjI0MgorIzogYnVpbHRpbi9tdi5jOjI0MwogbXNnaWQgImRlc3RpbmF0aW9uIGRpcmVjdG9yeSBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAi0YbQtdC70LXQstCw0YLQsCDQtNC40YDQtdC60YLQvtGA0LjRjyDQvdC1INGB0YrRidC10YHRgtCy0YPQstCwIgogCi0jOiBidWlsdGluL212LmM6MjQ5CisjOiBidWlsdGluL212LmM6MjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzLCBzb3VyY2U9JXMsIGRlc3RpbmF0aW9uPSVzIgogbXNnc3RyICIlcywg0L7QsdC10LrRgjog4oCeJXPigJwsINGG0LXQuzog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNzAKKyM6IGJ1aWx0aW4vbXYuYzoyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVuYW1pbmcgJXMgdG8gJXNcbiIKIG1zZ3N0ciAi0J/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1INC90LAg4oCeJXPigJwg0L3QsCDigJ4lc+KAnFxuIgogCi0jOiBidWlsdGluL212LmM6Mjc2IGJ1aWx0aW4vcmVtb3RlLmM6NzE3IGJ1aWx0aW4vcmVwYWNrLmM6NTExCisjOiBidWlsdGluL212LmM6Mjc3IGJ1aWx0aW4vcmVtb3RlLmM6NzgxIGJ1aWx0aW4vcmVwYWNrLmM6NTE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbmFtaW5nICclcycgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0L/RgNC10LjQvNC10L3Rg9Cy0LDQvdC1INC90LAg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzozNTUKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0NjUKIG1zZ2lkICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gPGNvbW1pdD4uLi4iCiBtc2dzdHIgImdpdCBuYW1lLXJldiBb0J7Qn9Cm0JjQr+KApl0g0J/QntCU0JDQktCQ0J3QleKApiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NgorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NgogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLWFsbCIKIG1zZ3N0ciAiZ2l0IG5hbWUtcmV2IFvQntCf0KbQmNCv4oCmXSAtLWFsbCIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NwogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLXN0ZGluIgogbXNnc3RyICJnaXQgbmFtZS1yZXYgW9Ce0J/QptCY0K/igKZdIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTMKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjQKIG1zZ2lkICJwcmludCBvbmx5IG5hbWVzIChubyBTSEEtMSkiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDRgdCw0LzQviDQvdCwINC40LzQtdC90LDRgtCwICjQsdC10Lcg0YHRg9C80LjRgtC1INC/0L4gU0hBMSkiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTQKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjUKIG1zZ2lkICJvbmx5IHVzZSB0YWdzIHRvIG5hbWUgdGhlIGNvbW1pdHMiCiBtc2dzdHIgItC40LfQv9C+0LvQt9Cy0LDQvdC1INGB0LDQvNC+INC90LAg0LXRgtC40LrQtdGC0LjRgtC1INC30LAg0LjQvNC10L3Rg9Cy0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QuNGP0YLQsCIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxNgorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUyNwogbXNnaWQgIm9ubHkgdXNlIHJlZnMgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICLQuNC30L/QvtC70LfQstCw0L3QtSDRgdCw0LzQviDQvdCwINGD0LrQsNC30LDRgtC10LvQuNGC0LUg0L3QsNC/0LDRgdCy0LDRidC4INC90LAg0KjQkNCR0JvQntCd0LAiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTgKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjkKIG1zZ2lkICJpZ25vcmUgcmVmcyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgItC40LPQvdC+0YDQuNGA0LDQvdC1INC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSDQvdCw0L/QsNGB0LLQsNGJ0Lgg0L3QsCDQqNCQ0JHQm9Ce0J3QsCIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQyMAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzMQogbXNnaWQgImxpc3QgYWxsIGNvbW1pdHMgcmVhY2hhYmxlIGZyb20gYWxsIHJlZnMiCiBtc2dzdHIgIiIKICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQstGB0LjRh9C60Lgg0L/QvtC00LDQstCw0L3QuNGPLCDQutC+0LjRgtC+INC80L7Qs9Cw0YIg0LTQsCDQsdGK0LTQsNGCINC00L7RgdGC0LjQs9C90LDRgtC4INC+0YIg0LLRgdC40YfQutC4ICIKICLRg9C60LDQt9Cw0YLQtdC70LgiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjEKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzIKIG1zZ2lkICJyZWFkIGZyb20gc3RkaW4iCiBtc2dzdHIgItGH0LXRgtC10L3QtSDQvtGCINGB0YLQsNC90LTQsNGA0YLQvdC40Y8g0LLRhdC+0LQiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjIKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzMKIG1zZ2lkICJhbGxvdyB0byBwcmludCBgdW5kZWZpbmVkYCBuYW1lcyAoZGVmYXVsdCkiCiBtc2dzdHIgItC00LAg0YHQtSDQuNC30LLQtdC20LTQsNGCINC4INC90LXQtNC10YTQuNC90LjRgNCw0L3QuNGC0LUg0LjQvNC10L3QsCAo0YHRgtCw0L3QtNCw0YDRgtC90LAg0YHRgtC+0LnQvdC+0YHRgiDQvdCwINC+0L/RhtC40Y/RgtCwKSIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQyOAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzOQogbXNnaWQgImRlcmVmZXJlbmNlIHRhZ3MgaW4gdGhlIGlucHV0IChpbnRlcm5hbCB1c2UpIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNC40YLQtSDQvdCwINC+0LHQtdC60YLQuC3QtdGC0LjQutC10YLQuCAo0LfQsCDQstGK0YLRgNC10YjQvdC4INC90YPQttC00LgpIgogCkBAIC0xNDAzMCwxNCArMTcyODgsMTQgQEAKIG1zZ2lkICJ0aGUgbm90ZSBjb250ZW50cyBoYXZlIGJlZW4gbGVmdCBpbiAlcyIKIG1zZ3N0ciAi0YHRitC00YrRgNC20LDQvdC40LXRgtC+INC90LAg0LHQtdC70LXQttC60LDRgtCwINC1INCy0YrQsiDRhNCw0LnQu9CwIOKAniVz4oCcIgogCi0jOiBidWlsdGluL25vdGVzLmM6MjQyIGJ1aWx0aW4vdGFnLmM6NTEzCisjOiBidWlsdGluL25vdGVzLmM6MjQyIGJ1aWx0aW4vdGFnLmM6NTMyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuIG9yIHJlYWQgJyVzJyIKIG1zZ3N0ciAi0YTQsNC50LvRitGCIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LLQvtGA0LXQvSDQuNC70Lgg0L/RgNC+0YfQtdGC0LXQvSIKIAogIzogYnVpbHRpbi9ub3Rlcy5jOjI2MyBidWlsdGluL25vdGVzLmM6MzEzIGJ1aWx0aW4vbm90ZXMuYzozMTUKLSM6IGJ1aWx0aW4vbm90ZXMuYzozODMgYnVpbHRpbi9ub3Rlcy5jOjQzOCBidWlsdGluL25vdGVzLmM6NTI0Ci0jOiBidWlsdGluL25vdGVzLmM6NTI5IGJ1aWx0aW4vbm90ZXMuYzo2MDcgYnVpbHRpbi9ub3Rlcy5jOjY2OQorIzogYnVpbHRpbi9ub3Rlcy5jOjM4MyBidWlsdGluL25vdGVzLmM6NDM4IGJ1aWx0aW4vbm90ZXMuYzo1MjYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MzEgYnVpbHRpbi9ub3Rlcy5jOjYxMCBidWlsdGluL25vdGVzLmM6NjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgogbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtGC0LrRgNC40LUg0LrRitC8INC60LDQutCy0L4g0YHQvtGH0Lgg4oCeJXPigJwuIgpAQCAtMTQwNzMsMzggKzE3MzMxLDM4IEBACiAi0L3Rj9C80LAg0LTQsCDRgdC1INC40LfQstGK0YDRiNC4IOKAniVz4oCcINCy0YrRgNGF0YMg0LHQtdC70LXQttC60LjRgtC1INCyIOKAniVz4oCcLCDQt9Cw0YnQvtGC0L4g0YHQsCDQuNC30LLRitC9IOKAnnJlZnMvIgogIm5vdGVzL+KAnC4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzozNzYgYnVpbHRpbi9ub3Rlcy5jOjQzMSBidWlsdGluL25vdGVzLmM6NTA3Ci0jOiBidWlsdGluL25vdGVzLmM6NTE5IGJ1aWx0aW4vbm90ZXMuYzo1OTUgYnVpbHRpbi9ub3Rlcy5jOjY2MgotIzogYnVpbHRpbi9ub3Rlcy5jOjgxMiBidWlsdGluL25vdGVzLmM6OTU5IGJ1aWx0aW4vbm90ZXMuYzo5ODAKKyM6IGJ1aWx0aW4vbm90ZXMuYzozNzYgYnVpbHRpbi9ub3Rlcy5jOjQzMSBidWlsdGluL25vdGVzLmM6NTA5CisjOiBidWlsdGluL25vdGVzLmM6NTIxIGJ1aWx0aW4vbm90ZXMuYzo1OTggYnVpbHRpbi9ub3Rlcy5jOjY2NQorIzogYnVpbHRpbi9ub3Rlcy5jOjgxNSBidWlsdGluL25vdGVzLmM6OTYzIGJ1aWx0aW4vbm90ZXMuYzo5ODUKIG1zZ2lkICJ0b28gbWFueSBwYXJhbWV0ZXJzIgogbXNnc3RyICLQv9GA0LXQutCw0LvQtdC90L4g0LzQvdC+0LPQviDQv9Cw0YDQsNC80LXRgtGA0LgiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzozODkgYnVpbHRpbi9ub3Rlcy5jOjY3NQorIzogYnVpbHRpbi9ub3Rlcy5jOjM4OSBidWlsdGluL25vdGVzLmM6Njc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIG5vdGUgZm91bmQgZm9yIG9iamVjdCAlcy4iCiBtc2dzdHIgItC90Y/QvNCwINCx0LXQu9C10LbQutC4INC30LAg0L7QsdC10LrRgtCwIOKAniVz4oCcLiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxMCBidWlsdGluL25vdGVzLmM6NTczCisjOiBidWlsdGluL25vdGVzLmM6NDEwIGJ1aWx0aW4vbm90ZXMuYzo1NzYKIG1zZ2lkICJub3RlIGNvbnRlbnRzIGFzIGEgc3RyaW5nIgogbXNnc3RyICLQvdC40LcsINC60L7QudGC0L4g0LUg0YHRitC00YrRgNC20LDQvdC40LXRgtC+INC90LAg0LHQtdC70LXQttC60LDRgtCwIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDEzIGJ1aWx0aW4vbm90ZXMuYzo1NzYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTMgYnVpbHRpbi9ub3Rlcy5jOjU3OQogbXNnaWQgIm5vdGUgY29udGVudHMgaW4gYSBmaWxlIgogbXNnc3RyICLQpNCQ0JnQmyDRgdGK0YEg0YHRitC00YrRgNC20LDQvdC40LXRgtC+INC90LAg0LHQtdC70LXQttC60LDRgtCwIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDE2IGJ1aWx0aW4vbm90ZXMuYzo1NzkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTYgYnVpbHRpbi9ub3Rlcy5jOjU4MgogbXNnaWQgInJldXNlIGFuZCBlZGl0IHNwZWNpZmllZCBub3RlIG9iamVjdCIKIG1zZ3N0ciAi0L/RgNC10LjQt9C/0L7Qu9C30LLQsNC90LUg0Lgg0YDQtdC00LDQutGC0LjRgNCw0L3QtSDQvdCwINGD0LrQsNC30LDQvdC40Y8g0J7QkdCV0JrQoi3QsdC10LvQtdC20LrQsCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxOSBidWlsdGluL25vdGVzLmM6NTgyCisjOiBidWlsdGluL25vdGVzLmM6NDE5IGJ1aWx0aW4vbm90ZXMuYzo1ODUKIG1zZ2lkICJyZXVzZSBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCiBtc2dzdHIgItC/0YDQtdC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0YPQutCw0LfQsNC90LjRjyDQntCR0JXQmtCiLdCx0LXQu9C10LbQutCwIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDIyIGJ1aWx0aW4vbm90ZXMuYzo1ODUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MjIgYnVpbHRpbi9ub3Rlcy5jOjU4OAogbXNnaWQgImFsbG93IHN0b3JpbmcgZW1wdHkgbm90ZSIKIG1zZ3N0ciAi0L/RgNC40LXQvNCw0L3QtSDQuCDQvdCwINC/0YDQsNC30L3QuCDQsdC10LvQtdC20LrQuCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQyMyBidWlsdGluL25vdGVzLmM6NDk0CisjOiBidWlsdGluL25vdGVzLmM6NDIzIGJ1aWx0aW4vbm90ZXMuYzo0OTYKIG1zZ2lkICJyZXBsYWNlIGV4aXN0aW5nIG5vdGVzIgogbXNnc3RyICLQt9Cw0LzRj9C90LAg0L3QsCDRgdGK0YnQtdGB0YLQstGD0LLQsNGJ0LjRgtC1INCx0LXQu9C10LbQutC4IgogCkBAIC0xNDExNywzMSArMTczNzUsMzEgQEAKICLQndC1INC80L7QttC1INC00LAg0YHQtSDQtNC+0LHQsNCy0Lgg0LHQtdC70LXQttC60LAsINC30LDRidC+0YLQviDRgtCw0LrQsNCy0LAg0LLQtdGH0LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LAg0LfQsCDQvtCx0LXQutGC0LAg4oCeJXPigJwuICAiCiAi0JjQt9C/0L7Qu9C30LLQsNC50YLQtSDQvtC/0YbQuNGP0YLQsCDigJ4tZuKAnCwg0LfQsCDQtNCwINC/0YDQtdC30LDQv9C40YjQtdGC0LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LDRidC4INCx0LXQu9C10LbQutC4LiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ2MyBidWlsdGluL25vdGVzLmM6NTQyCisjOiBidWlsdGluL25vdGVzLmM6NDYzIGJ1aWx0aW4vbm90ZXMuYzo1NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiT3ZlcndyaXRpbmcgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlc1xuIgogbXNnc3RyICLQn9GA0LXQt9Cw0L/QuNGB0LLQsNC90LUg0L3QsCDRgdGK0YnQtdGB0YLQstGD0LLQsNGJ0LjRgtC1INCx0LXQu9C10LbQutC4INC30LAg0L7QsdC10LrRgtCwIOKAniVz4oCcXG4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0NzQgYnVpbHRpbi9ub3Rlcy5jOjYzNCBidWlsdGluL25vdGVzLmM6ODk5CisjOiBidWlsdGluL25vdGVzLmM6NDc1IGJ1aWx0aW4vbm90ZXMuYzo2MzcgYnVpbHRpbi9ub3Rlcy5jOjkwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyBub3RlIGZvciBvYmplY3QgJXNcbiIKIG1zZ3N0ciAi0JjQt9GC0YDQuNCy0LDQvdC1INC90LAg0LHQtdC70LXQttC60LDRgtCwINC30LAg0L7QsdC10LrRgtCwIOKAniVz4oCcXG4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0OTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTcKIG1zZ2lkICJyZWFkIG9iamVjdHMgZnJvbSBzdGRpbiIKIG1zZ3N0ciAi0LjQt9GH0LjRgtCw0L3QtSDQvdCwINC+0LHQtdC60YLQuNGC0LUg0L7RgiDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINCy0YXQvtC0IgogCi0jOiBidWlsdGluL25vdGVzLmM6NDk3CisjOiBidWlsdGluL25vdGVzLmM6NDk5CiBtc2dpZCAibG9hZCByZXdyaXRpbmcgY29uZmlnIGZvciA8Y29tbWFuZD4gKGltcGxpZXMgLS1zdGRpbikiCiBtc2dzdHIgIiIKICLQt9Cw0YDQtdC20LTQsNC90LUg0L3QsCDQvdCw0YHRgtGA0L7QudC60LjRgtC1INC30LAg0JrQntCc0JDQndCU0JDRgtCwLCDQutC+0Y/RgtC+INC/0YDQtdC30LDQv9C40YHQstCwINC/0L7QtNCw0LLQsNC90LjRjyAo0LLQutC70Y7Rh9Cy0LAgIgogItC+0L/RhtC40Y/RgtCwIOKAni0tc3RkaW7igJwpIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTE1CisjOiBidWlsdGluL25vdGVzLmM6NTE3CiBtc2dpZCAidG9vIGZldyBwYXJhbWV0ZXJzIgogbXNnc3RyICLQv9GA0LXQutCw0LvQtdC90L4g0LzQsNC70LrQviDQv9Cw0YDQsNC80LXRgtGA0LgiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MzYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNhbm5vdCBjb3B5IG5vdGVzLiBGb3VuZCBleGlzdGluZyBub3RlcyBmb3Igb2JqZWN0ICVzLiBVc2UgJy1mJyB0byBvdmVyd3JpdGUgIgpAQCAtMTQxNTAsMTIgKzE3NDA4LDEyIEBACiAi0J3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LrQvtC/0LjRgNCwINCx0LXQu9C10LbQutCwLCDQt9Cw0YnQvtGC0L4g0YLQsNC60LDQstCwINCy0LXRh9C1INGB0YrRidC10YHRgtCy0YPQstCwINC30LAg0L7QsdC10LrRgtCwIOKAniVz4oCcLiAgIgogItCY0LfQv9C+0LvQt9Cy0LDQudGC0LUg0L7Qv9GG0LjRj9GC0LAg4oCeLWbigJwsINC30LAg0LTQsCDQv9GA0LXQt9Cw0L/QuNGI0LXRgtC1INGB0YrRidC10YHRgtCy0YPQstCw0YnQuCDQsdC10LvQtdC20LrQuC4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1NDgKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBub3RlcyBvbiBzb3VyY2Ugb2JqZWN0ICVzLiBDYW5ub3QgY29weS4iCiBtc2dzdHIgItC90Y/QvNCwINCx0LXQu9C10LbQutC4INC30LAg0L7QsdC10LrRgtCwLdC40LfRgtC+0YfQvdC40Log4oCeJXPigJwuICDQndC1INC80L7QttC1INC00LAg0YHQtSDQutC+0L/QuNGA0LAuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NjAwCisjOiBidWlsdGluL25vdGVzLmM6NjAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgLW0vLUYvLWMvLUMgb3B0aW9ucyBoYXZlIGJlZW4gZGVwcmVjYXRlZCBmb3IgdGhlICdlZGl0JyBzdWJjb21tYW5kLlxuIgpAQCAtMTQxNjYsNTIgKzE3NDI0LDUyIEBACiAi0JLQvNC10YHRgtC+INGC0L7QstCwINCz0Lgg0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDRgSDQv9C+0LTQutC+0LzQsNC90LTQsNGC0LAg4oCeYWRk4oCcOiDigJ5naXQgbm90ZXMgYWRkIC1mIC1tLy1GLy1jLy0iCiAiQ+KAnC5cbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjY5NQorIzogYnVpbHRpbi9ub3Rlcy5jOjY5OAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgcmVmIE5PVEVTX01FUkdFX1BBUlRJQUwiCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCIOKAnk5PVEVTX01FUkdFX1BBUlRJQUzigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40LfRgtGA0LjRgiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjY5NworIzogYnVpbHRpbi9ub3Rlcy5jOjcwMAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgcmVmIE5PVEVTX01FUkdFX1JFRiIKIG1zZ3N0ciAi0YPQutCw0LfQsNGC0LXQu9GP0YIg4oCeTk9URVNfTUVSR0VfUkVG4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YLRgNC40YIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2OTkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDIKIG1zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICdnaXQgbm90ZXMgbWVyZ2UnIHdvcmt0cmVlIgogbXNnc3RyICLRgNCw0LHQvtGC0L3QsNGC0LAg0LTQuNGA0LXQutGC0L7RgNC40Y8g0L3QsCDigJ5naXQgbm90ZXMgbWVyZ2XigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40LfRgtGA0LjRgtCwIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzE5CisjOiBidWlsdGluL25vdGVzLmM6NzIyCiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgcmVmIE5PVEVTX01FUkdFX1BBUlRJQUwiCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCIOKAnk5PVEVTX01FUkdFX1BBUlRJQUzigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L0iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MjEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjQKIG1zZ2lkICJjb3VsZCBub3QgZmluZCBjb21taXQgZnJvbSBOT1RFU19NRVJHRV9QQVJUSUFMLiIKIG1zZ3N0ciAi0L/QvtC00LDQstCw0L3QtdGC0L4g0L7RgiDigJ5OT1RFU19NRVJHRV9QQVJUSUFM4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0YLQutGA0LjQtS4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjYKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0IGZyb20gTk9URVNfTUVSR0VfUEFSVElBTC4iCiBtc2dzdHIgItC/0L7QtNCw0LLQsNC90LXRgtC+INC+0YIg4oCeTk9URVNfTUVSR0VfUEFSVElBTOKAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQsNC90LDQu9C40LfQuNGA0LAuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzM2CisjOiBidWlsdGluL25vdGVzLmM6NzM5CiBtc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgTk9URVNfTUVSR0VfUkVGIgogbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtGC0LrRgNC40LUg0LrRitC8INC60LDQutCy0L4g0YHQvtGH0Lgg4oCeTk9URVNfTUVSR0VfUkVG4oCcIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzM5CisjOiBidWlsdGluL25vdGVzLmM6NzQyCiBtc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplIG5vdGVzIG1lcmdlIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YHQu9C40LLQsNC90LUg0L3QsCDQsdC10LvQtdC20LrQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3NjUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBub3RlcyBtZXJnZSBzdHJhdGVneSAlcyIKIG1zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgtCwINGB0YLRgNCw0YLQtdCz0LjRjyDQt9CwINGB0LvQuNCy0LDQvdC1INC90LAg0LHQtdC70LXQttC60Lgg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3ODQKIG1zZ2lkICJHZW5lcmFsIG9wdGlvbnMiCiBtc2dzdHIgItCe0LHRidC4INC+0L/RhtC40LgiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3ODYKIG1zZ2lkICJNZXJnZSBvcHRpb25zIgogbXNnc3RyICLQntC/0YbQuNC4INC/0YDQuCDRgdC70LjQstCw0L3QtSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4NQorIzogYnVpbHRpbi9ub3Rlcy5jOjc4OAogbXNnaWQgIiIKICJyZXNvbHZlIG5vdGVzIGNvbmZsaWN0cyB1c2luZyB0aGUgZ2l2ZW4gc3RyYXRlZ3kgKG1hbnVhbC9vdXJzL3RoZWlycy91bmlvbi8iCiAiY2F0X3NvcnRfdW5pcSkiCkBAIC0xNDIyMSw0NiArMTc0NzksNDYgQEAKICLigJ51bmlvbuKAnCAo0L7QsdC10LTQuNC90Y/QstCw0L3QtSksIOKAnmNhdF9zb3J0X3VuaXHigJwgKNC+0LHQtdC00LjQvdGP0LLQsNC90LUsINC/0L7QtNGA0LXQttC00LDQvdC1LCDRg9C90LjQutCw0LvQvdC4ICIKICLRgNC10LfRg9C70YLQsNGC0LgpIgogCi0jOiBidWlsdGluL25vdGVzLmM6Nzg3CisjOiBidWlsdGluL25vdGVzLmM6NzkwCiBtc2dpZCAiQ29tbWl0dGluZyB1bm1lcmdlZCBub3RlcyIKIG1zZ3N0ciAi0J/QvtC00LDQstCw0L3QtSDQvdCwINC90LXRgdC70LXRgtC4INCx0LXQu9C10LbQutC4IgogCi0jOiBidWlsdGluL25vdGVzLmM6Nzg5CisjOiBidWlsdGluL25vdGVzLmM6NzkyCiBtc2dpZCAiZmluYWxpemUgbm90ZXMgbWVyZ2UgYnkgY29tbWl0dGluZyB1bm1lcmdlZCBub3RlcyIKIG1zZ3N0ciAi0LfQsNCy0YrRgNGI0LLQsNC90LUg0L3QsCDRgdC70LjQstCw0L3QtdGC0L4g0YfRgNC10Lcg0L/QvtC00LDQstCw0L3QtSDQvdCwINC90LXRgdC70LXRgtC4INCx0LXQu9C10LbQutC4IgogCi0jOiBidWlsdGluL25vdGVzLmM6NzkxCisjOiBidWlsdGluL25vdGVzLmM6Nzk0CiBtc2dpZCAiQWJvcnRpbmcgbm90ZXMgbWVyZ2UgcmVzb2x1dGlvbiIKIG1zZ3N0ciAi0J/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LrQvtGA0LXQutGG0LjRj9GC0LAg0L/RgNC4INGB0LvQuNCy0LDQvdC10YLQviDQvdCwINCx0LXQu9C10LbQutC4IgogCi0jOiBidWlsdGluL25vdGVzLmM6NzkzCisjOiBidWlsdGluL25vdGVzLmM6Nzk2CiBtc2dpZCAiYWJvcnQgbm90ZXMgbWVyZ2UiCiBtc2dzdHIgItC/0YDQtdGD0YHRgtCw0L3QvtCy0Y/QstCw0L3QtSDQvdCwINGB0LvQuNCy0LDQvdC10YLQviDQvdCwINCx0LXQu9C10LbQutC4IgogCi0jOiBidWlsdGluL25vdGVzLmM6ODA0CisjOiBidWlsdGluL25vdGVzLmM6ODA3CiBtc2dpZCAiY2Fubm90IG1peCAtLWNvbW1pdCwgLS1hYm9ydCBvciAtcy8tLXN0cmF0ZWd5IgogbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLWNvbW1pdOKAnCwg4oCeLS1hYm9ydOKAnCDQuCDigJ4tc+KAnC/igJ4tLXN0cmF0ZWd54oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgogCi0jOiBidWlsdGluL25vdGVzLmM6ODA5CisjOiBidWlsdGluL25vdGVzLmM6ODEyCiBtc2dpZCAibXVzdCBzcGVjaWZ5IGEgbm90ZXMgcmVmIHRvIG1lcmdlIgogbXNnc3RyICLRgtGA0Y/QsdCy0LAg0LTQsCDRg9C60LDQttC10YLQtSDRg9C60LDQt9Cw0YLQtdC7INC60YrQvCDQsdC10LvQtdC20LrQsCDQt9CwINGB0LvQuNCy0LDQvdC1LiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjgzMworIzogYnVpbHRpbi9ub3Rlcy5jOjgzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIC1zLy0tc3RyYXRlZ3k6ICVzIgogbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3QsCDRgdGC0YDQsNGC0LXQs9C40Y8g0LrRitC8INC+0L/RhtC40Y/RgtCwIOKAni1z4oCcL+KAni0tc3RyYXRlZ3nigJw6IOKAniVz4oCcIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODcwCisjOiBidWlsdGluL25vdGVzLmM6ODczCiAjLCBjLWZvcm1hdAogbXNnaWQgImEgbm90ZXMgbWVyZ2UgaW50byAlcyBpcyBhbHJlYWR5IGluLXByb2dyZXNzIGF0ICVzIgogbXNnc3RyICLQsiDQvNC+0LzQtdC90YLQsCDRgdC1INC40LfQstGK0YDRiNCy0LAg0YHQu9C40LLQsNC90LUg0L3QsCDQsdC10LvQtdC20LrQuNGC0LUg0LIg4oCeJXPigJwg0L/RgNC4IOKAniVz4oCcIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODczCisjOiBidWlsdGluL25vdGVzLmM6ODc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBzdG9yZSBsaW5rIHRvIGN1cnJlbnQgbm90ZXMgcmVmICglcykiCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC30LDQv9Cw0LfQuCDQstGA0YrQt9C60LAg0LrRitC8INGD0LrQsNC30LDRgtC10LvRjyDQvdCwINGC0LXQutGD0YnQsNGC0LAg0LHQtdC70LXQttC60LAgKOKAniVz4oCcKS4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkF1dG9tYXRpYyBub3RlcyBtZXJnZSBmYWlsZWQuIEZpeCBjb25mbGljdHMgaW4gJXMgYW5kIGNvbW1pdCB0aGUgcmVzdWx0IHdpdGggIgpAQCAtMTQyNzEsMTc3ICsxNzUyOSwxNTkgQEAKICLRgNC10LfRg9C70YLQsNGC0LAg0YEg4oCeZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl04oCcINC40LvQuCDQv9GA0LXRg9GB0YLQsNC90L7QstC10YLQtSDRgdC70LjQstCw0L3QtdGC0L4g0YEgIgogItC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgbm90ZXMgbWVyZ2UgLS1hYm9ydOKAnC5cbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg5NworIzogYnVpbHRpbi9ub3Rlcy5jOjg5NyBidWlsdGluL3RhZy5jOjU0NQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAi0J3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7RgtC60YDQuNC1INC60YrQvCDQutCw0LrQstC+INGB0L7Rh9C4IOKAniVz4oCcLiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjkwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJPYmplY3QgJXMgaGFzIG5vIG5vdGVcbiIKIG1zZ3N0ciAi0J3Rj9C80LAg0LHQtdC70LXQttC60Lgg0LfQsCDQvtCx0LXQutGC0LAg4oCeJXPigJxcbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjkwOQorIzogYnVpbHRpbi9ub3Rlcy5jOjkxMgogbXNnaWQgImF0dGVtcHQgdG8gcmVtb3ZlIG5vbi1leGlzdGVudCBub3RlIGlzIG5vdCBhbiBlcnJvciIKIG1zZ3N0ciAi0L7Qv9C40YLRitGCINC30LAg0LjQt9GC0YDQuNCy0LDQvdC10YLQviDQvdCwINC90LXRgdGK0YnQtdGB0YLQstGD0LLQsNGJ0LAg0LHQtdC70LXQttC60LAg0L3QtSDRgdC1INGB0YfQuNGC0LAg0LfQsCDQs9GA0LXRiNC60LAiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5MTIKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MTUKIG1zZ2lkICJyZWFkIG9iamVjdCBuYW1lcyBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAi0LjQt9GH0LjRgtCw0L3QtSDQvdCwINC40LzQtdC90LDRgtCwINC90LAg0L7QsdC10LrRgtC40YLQtSDQvtGCINGB0YLQsNC90LTQsNGA0YLQvdC40Y8g0LLRhdC+0LQiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5NTAgYnVpbHRpbi9wcnVuZS5jOjEwOCBidWlsdGluL3dvcmt0cmVlLmM6MTY0CisjOiBidWlsdGluL25vdGVzLmM6OTU0IGJ1aWx0aW4vcHJ1bmUuYzoxMzAgYnVpbHRpbi93b3JrdHJlZS5jOjE2NAogbXNnaWQgImRvIG5vdCByZW1vdmUsIHNob3cgb25seSIKIG1zZ3N0ciAi0YHQsNC80L4g0LjQt9Cy0LXQttC00LDQvdC1INCx0LXQtyDQtNC10LnRgdGC0LLQuNGC0LXQu9C90L4g0L7QutCw0YHRgtGA0Y/QvdC1IgogCi0jOiBidWlsdGluL25vdGVzLmM6OTUxCisjOiBidWlsdGluL25vdGVzLmM6OTU1CiBtc2dpZCAicmVwb3J0IHBydW5lZCBub3RlcyIKIG1zZ3N0ciAi0LTQvtC60LvQsNC00LLQsNC90LUg0L3QsCDQvtC60LDRgdGC0YDQtdC90LjRgtC1INC+0LHQtdC60YLQuCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk5MworIzogYnVpbHRpbi9ub3Rlcy5jOjk5OAogbXNnaWQgIm5vdGVzLXJlZiIKIG1zZ3N0ciAi0KPQmtCQ0JfQkNCi0JXQm1/Ql9CQX9CR0JXQm9CV0JbQmtCQIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTk0CisjOiBidWlsdGluL25vdGVzLmM6OTk5CiBtc2dpZCAidXNlIG5vdGVzIGZyb20gPG5vdGVzLXJlZj4iCiBtc2dzdHIgItC00LAg0YHQtSDQuNC30L/QvtC70LfQstCwINCx0LXQu9C10LbQutCw0YLQsCDRgdC+0YfQtdC90LAg0L7RgiDRgtC+0LfQuCDQo9Ca0JDQl9CQ0KLQldCbX9CX0JBf0JHQldCb0JXQltCa0JAiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzoxMDI5CisjOiBidWlsdGluL25vdGVzLmM6MTAzNCBidWlsdGluL3N0YXNoLmM6MTY0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHN1YmNvbW1hbmQ6ICVzIgogbXNnc3RyICLQvdC10L/QvtC30L3QsNGC0LAg0L/QvtC00LrQvtC80LDQvdC00LA6ICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUyCiBtc2dpZCAiIgogImdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgWzxvcHRpb25zPi4uLl0gWzwgPHJlZi1saXN0PiB8IDwgPG9iamVjdC1saXN0Pl0iCiBtc2dzdHIgIiIKICJnaXQgcGFjay1vYmplY3RzIC0tc3Rkb3V0IFvQntCf0KbQmNCv4oCmXSBbPCDQodCf0JjQodCq0Jpf0KFf0KPQmtCQ0JfQkNCi0JXQm9CYIHwgPCDQodCf0JjQodCq0Jpf0KFf0J7QkdCV0JrQotCYXSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1MgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1MwogbXNnaWQgIiIKICJnaXQgcGFjay1vYmplY3RzIFs8b3B0aW9ucz4uLi5dIDxiYXNlLW5hbWU+IFs8IDxyZWYtbGlzdD4gfCA8IDxvYmplY3QtbGlzdD5dIgogbXNnc3RyICIiCiAiZ2l0IHBhY2stb2JqZWN0cyBb0J7Qn9Cm0JjQr+KApl0g0J/QoNCV0KTQmNCa0KFf0J3QkF/QmNCc0JXQotCeIFs8INCh0J/QmNCh0KrQml/QoV/Qo9Ca0JDQl9CQ0KLQldCb0JggfCA8ICIKICLQodCf0JjQodCq0Jpf0KFf0J7QkdCV0JrQotCYXSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MjIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDMwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBwYWNrZWQgb2JqZWN0IENSQyBmb3IgJXMiCiBtc2dzdHIgItC70L7RiNCwINC60L7QvdGC0YDQvtC70L3QsCDRgdGD0LzQsCDQt9CwINC/0LDQutC10YLQuNGA0LDQvdC40Y8g0L7QsdC10LrRgiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MzMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgcGFja2VkIG9iamVjdCBmb3IgJXMiCiBtc2dzdHIgItC/0LDQutC10YLQuNGA0LDQvSDQvtCx0LXQutGCINGBINCz0YDQtdGI0LrQuCDQt9CwIOKAniVz4oCcIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjU2NAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1NzIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVjdXJzaXZlIGRlbHRhIGRldGVjdGVkIGZvciBvYmplY3QgJXMiCiBtc2dzdHIgItGA0LXQutGD0YDRgdC40LLQvdCwINGA0LDQt9C70LjQutCwINC30LAg0L7QsdC10LrRgiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3NzUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NzgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9yZGVyZWQgJXUgb2JqZWN0cywgZXhwZWN0ZWQgJTxQUkl1MzI+IgogbXNnc3RyICLQv9C+0LTRgNC10LTQtdC90Lgg0LHRj9GF0LAgJXUg0L7QsdC10LrRgtCwLCDQsCDRgdC1INC+0YfQsNC60LLQsNGF0LAgJTxQUkl1MzI+IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc4OAotIywgYy1mb3JtYXQKLW1zZ2lkICJwYWNrZmlsZSBpcyBpbnZhbGlkOiAlcyIKLW1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0L/QsNC60LXRgtC10L0g0YTQsNC50Ls6IOKAniVz4oCcIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc5MgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gb3BlbiBwYWNrZmlsZSBmb3IgcmV1c2U6ICVzIgotbXNnc3RyICLQv9Cw0LrQtdGC0L3QuNGP0YIg0YTQsNC50Lsg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0L7QstGC0L7RgNC90L4g0L7RgtCy0L7RgNC10L0iCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzk2Ci1tc2dpZCAidW5hYmxlIHRvIHNlZWsgaW4gcmV1c2VkIHBhY2tmaWxlIgotbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YLRitGA0YHQtdC90LUg0LIg0L/RgNC10LjQt9C/0L7Qu9C30LLQsNC9INC/0LDQutC10YLQtdC9INGE0LDQudC7IgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjgwNwotbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gcmV1c2VkIHBhY2tmaWxlIgotbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YfQtdGC0LXQvdC1INC+0YIg0L/RgNC10LjQt9C/0L7Qu9C30LLQsNC9INC/0LDQutC10YLQtdC9INGE0LDQudC7IgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjgzNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5NzIKIG1zZ2lkICJkaXNhYmxpbmcgYml0bWFwIHdyaXRpbmcsIHBhY2tzIGFyZSBzcGxpdCBkdWUgdG8gcGFjay5wYWNrU2l6ZUxpbWl0IgogbXNnc3RyICIiCiAi0LjQt9C60LvRjtGH0LLQsNC90LUg0L3QsCDQt9Cw0L/QuNGB0LLQsNC90LXRgtC+INC90LAg0LHQuNGC0L7QstCw0YLQsCDQvNCw0YHQutCwLCDQv9Cw0LrQtdGC0LjRgtC1INGB0LAg0YDQsNC30LTQtdC70LXQvdC4INC/0L7RgNCw0LTQuCAiCiAi0YHRgtC+0LnQvdC+0YHRgtGC0LAg0L3QsCDigJ5wYWNrLnBhY2tTaXplTGltaXTigJwiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODQ4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk4NQogbXNnaWQgIldyaXRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi0JfQsNC/0LjRgdCy0LDQvdC1INC90LAg0L7QsdC10LrRgtC40YLQtSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5MTAgYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4OAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMDQ2IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0YXQgJXMiCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9C+0LvRg9GH0LXQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGPINGH0YDQtdC3IOKAnnN0YXTigJwg0LfQsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5NjMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm90ZSAlPFBSSXUzMj4gb2JqZWN0cyB3aGlsZSBleHBlY3RpbmcgJTxQUkl1MzI+IgogbXNnc3RyICLQsdGP0YXQsCDQt9Cw0L/QuNGB0LDQvdC4ICU8UFJJdTMyPiDQvtCx0LXQutGC0LgsINCwINGB0LUg0L7Rh9Cw0LrQstCw0YXQsCAlPFBSSXUzMj4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTE1NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMjk3CiBtc2dpZCAiZGlzYWJsaW5nIGJpdG1hcCB3cml0aW5nLCBhcyBzb21lIG9iamVjdHMgYXJlIG5vdCBiZWluZyBwYWNrZWQiCiBtc2dzdHIgIiIKICLQuNC30LrQu9GO0YfQstCw0L3QtSDQvdCwINC30LDQv9C40YHQstCw0L3QtdGC0L4g0L3QsCDQsdC40YLQvtCy0LDRgtCwINC80LDRgdC60LAsINC30LDRidC+0YLQviDQvdGP0LrQvtC4INC+0LHQtdC60YLQuCDQvdGP0LzQsCDQtNCwINGB0LUgIgogItC/0LDQutC10YLQuNGA0LDRgiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTg1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE3MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgb3ZlcmZsb3cgaW4gcGFjayBmb3IgJXMiCiBtc2dzdHIgItC/0YDQtdC60LDQu9C10L3QviDQtNCw0LvQtdGH0L3QviDQvdCw0YfQsNC70L4g0L3QsCDQvtGC0LzQtdGB0YLQstCw0L3QtdGC0L4g0LfQsCDQvtCx0LXQutGC0LjRgtC1LdGA0LDQt9C70LjQutCwINC30LAg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU5NAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IG91dCBvZiBib3VuZCBmb3IgJXMiCiBtc2dzdHIgItC90LXQtNC+0YHRgtC40LbQuNC80L4g0L3QsNGH0LDQu9C+INC90LAg0L7RgtC80LXRgdGC0LLQsNC90LXRgtC+INC30LAg0L7QsdC10LrRgtC40YLQtS3RgNCw0LfQu9C40LrQsCDQt9CwIOKAniVz4oCcIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE4NjMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjAwNAogbXNnaWQgIkNvdW50aW5nIG9iamVjdHMiCiBtc2dzdHIgItCf0YDQtdCx0YDQvtGP0LLQsNC90LUg0L3QsCDQvtCx0LXQutGC0LjRgtC1IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE5OTgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIGdldCBzaXplIG9mICVzIgotbXNnc3RyICLRgNCw0LfQvNC10YDRitGCINC90LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0L7Qu9GD0YfQtdC9IgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwMTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2Ugb2JqZWN0IGhlYWRlciBvZiAlcyIKIG1zZ3N0ciAi0LfQsNCz0LvQsNCy0L3QsNGC0LAg0YfQsNGB0YIg0L3QsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LDQvdCw0LvQuNC30LjRgNCw0L3QsCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDgzIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA5OQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTA5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyMTkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjM1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGNhbm5vdCBiZSByZWFkIgogbXNnc3RyICLQvtCx0LXQutGC0YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9GA0L7Rh9C10YLQtSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDg2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjExMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjIyIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjI0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgJXMgaW5jb25zaXN0ZW50IG9iamVjdCBsZW5ndGggKCU8UFJJdU1BWD4gdnMgJTxQUkl1TUFYPikiCiBtc2dzdHIgItC+0LHQtdC60YLRitGCIOKAniVz4oCcINC1INGBINC90LXQv9GA0LDQstC40LvQvdCwINC00YrQu9C20LjQvdCwICglPFBSSXVNQVg+LCDQsCDQvdC1ICU8UFJJdU1BWD4pIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMjMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjI1OQogbXNnaWQgInN1Ym9wdGltYWwgcGFjayAtIG91dCBvZiBtZW1vcnkiCiBtc2dzdHIgItC90LXQvtC/0YLQuNC80LjQt9C40YDQsNC9INC/0LDQutC10YIg4oCUINC/0LDQvNC10YLRgtCwINGB0LLRitGA0YjQuCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNDUxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI1NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsdGEgY29tcHJlc3Npb24gdXNpbmcgdXAgdG8gJWQgdGhyZWFkcyIKIG1zZ3N0ciAi0JTQtdC70YLQsCDQutC+0LzQv9GA0LXRgdC40Y/RgtCwINGJ0LUg0LjQt9C/0L7Qu9C30LLQsCDQtNC+ICVkINC90LjRiNC60LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjU4MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzEzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYWNrIG9iamVjdHMgcmVhY2hhYmxlIGZyb20gdGFnICVzIgogbXNnc3RyICIiCiAi0L7QsdC10LrRgtC40YLQtSwg0LrQvtC40YLQviDQvNC+0LPQsNGCINC00LAg0LHRitC00LDRgiDQtNC+0YHRgtC40LPQvdCw0YLQuCDQvtGCINC10YLQuNC60LXRgtCwIOKAniVz4oCcLCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LDRgiAiCiAi0L/QsNC60LXRgtC40YDQsNC90LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjY3MAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODAxCiBtc2dpZCAiQ29tcHJlc3Npbmcgb2JqZWN0cyIKIG1zZ3N0ciAi0JrQvtC80L/RgNC10YHQuNGA0LDQvdC1INC90LAg0L7QsdC10LrRgtC40YLQtSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjc2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4MDcKIG1zZ2lkICJpbmNvbnNpc3RlbmN5IHdpdGggZGVsdGEgY291bnQiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INCx0YDQvtC5INGA0LDQt9C70LjQutC4IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3NTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhwZWN0ZWQgZWRnZSBvYmplY3QgSUQsIGdvdCBnYXJiYWdlOlxuIgpAQCAtMTQ0NTAsNyArMTc2OTAsNyBAQAogItC+0YfQsNC60LLQsCDRgdC1INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC90LAg0LrRgNCw0LXQvSDQvtCx0LXQutGCLCDQsCDQvdC1OlxuIgogIiAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzU5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4cGVjdGVkIG9iamVjdCBJRCwgZ290IGdhcmJhZ2U6XG4iCkBAIC0xNDQ1OSwyNjkgKzE3Njk5LDI2MiBAQAogItC+0YfQsNC60LLQsCDRgdC1INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC90LAg0L7QsdC10LrRgiwg0LAg0L3QtTpcbiIKICIgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg1NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTkyCiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgLS1taXNzaW5nIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QsCDRgdGC0L7QudC90L7RgdGCINC30LAg4oCeLS1taXNzaW5n4oCcIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5MTYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDI0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwNTEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTU5CiBtc2dpZCAiY2Fubm90IG9wZW4gcGFjayBpbmRleCIKIG1zZ3N0ciAi0LjQvdC00LXQutGB0YrRgiDQvdCwINC/0LDQutC10YLQvdC40Y8g0YTQsNC50Lsg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQstC+0YDQtdC9IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5NDcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzA4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJsb29zZSBvYmplY3QgYXQgJXMgY291bGQgbm90IGJlIGV4YW1pbmVkIgogbXNnc3RyICLQvdC10L/QsNC60LXRgtC40YDQsNC90LjRj9GCINC+0LHQtdC60YIg0LIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INCw0L3QsNC70LjQt9C40YDQsNC9IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwMzIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE2NwogbXNnaWQgInVuYWJsZSB0byBmb3JjZSBsb29zZSBvYmplY3QiCiBtc2dzdHIgItC+0YHRgtCw0LLQsNC90LXRgtC+INC90LAg0L7QsdC10LrRgtCwINC90LXQv9Cw0LrQtdGC0LjRgNCw0L0g0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC90LDQu9C+0LbQtdC90L4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEyMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjYwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHJldiAnJXMnIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC1INCy0LXRgNGB0LjRjyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTI1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJldmlzaW9uICclcyciCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINCy0LXRgNGB0LjRjyDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTUwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODgKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIHJlY2VudCBvYmplY3RzIgogbXNnc3RyICLRgdC60L7RgNC+0YjQvdC40YLQtSDQvtCx0LXQutGC0Lgg0L3QtSDQvNC+0LPQsNGCINC00LAg0LHRitC00LDRgiDQtNC+0LHQsNCy0LXQvdC4IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMDMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnN1cHBvcnRlZCBpbmRleCB2ZXJzaW9uICVzIgogbXNnc3RyICLQvdC10L/QvtC00LTRitGA0LbQsNC90LAg0LLQtdGA0YHQuNGPINC90LAg0LjQvdC00LXQutGB0LAg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIwNworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBpbmRleCB2ZXJzaW9uICclcyciCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINCy0LXRgNGB0LjRjyDQvdCwINC40L3QtNC10LrRgdCwIOKAniVz4oCcIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMzcKLW1zZ2lkICJkbyBub3Qgc2hvdyBwcm9ncmVzcyBtZXRlciIKLW1zZ3N0ciAi0LHQtdC3INC40LfQstC10LbQtNCw0L3QtSDQvdCwINC90LDQv9GA0LXQtNGK0LrQsCIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjM5Ci1tc2dpZCAic2hvdyBwcm9ncmVzcyBtZXRlciIKLW1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L3QsNC/0YDQtdC00YrQutCwIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDEKLW1zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKLW1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L3QsNC/0YDQtdC00YrQutCwINCy0YrQsiDRhNCw0LfQsNGC0LAg0L3QsCDQt9Cw0L/QsNC30LLQsNC90LUg0L3QsCDQvtCx0LXQutGC0LjRgtC1IgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDQKLW1zZ2lkICJzaW1pbGFyIHRvIC0tYWxsLXByb2dyZXNzIHdoZW4gcHJvZ3Jlc3MgbWV0ZXIgaXMgc2hvd24iCi1tc2dzdHIgIiIKLSLRgdGK0YnQvtGC0L4g0LTQtdC50YHRgtCy0LjQtSDQutCw0YLQviDQvtC/0YbQuNGP0YLQsCDigJ4tLWFsbC1wcm9ncmVzc+KAnCDQv9GA0Lgg0LjQt9Cy0LXQttC00LDQvdC10YLQviDQvdCwINC90LDQv9GA0LXQtNGK0LrQsCIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQ1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODMKIG1zZ2lkICI8dmVyc2lvbj5bLDxvZmZzZXQ+XSIKIG1zZ3N0ciAi0JLQldCg0KHQmNCvWyzQntCi0JzQldCh0KLQktCQ0J3QlV0iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzg0CiBtc2dpZCAid3JpdGUgdGhlIHBhY2sgaW5kZXggZmlsZSBpbiB0aGUgc3BlY2lmaWVkIGlkeCBmb3JtYXQgdmVyc2lvbiIKIG1zZ3N0ciAiIgogItC30LDQv9Cw0LfQstCw0L3QtSDQvdCwINC40L3QtNC10LrRgdCwINC90LAg0L/QsNC60LXRgtC90LjRgtC1INGE0LDQudC70L7QstC1INCy0YrQsiDRhNC+0YDQvNCwzIDRgtCwINGBINGD0LrQsNC30LDQvdCw0YLQsCDQstC10YDRgdC40Y8iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzg3CiBtc2dpZCAibWF4aW11bSBzaXplIG9mIGVhY2ggb3V0cHV0IHBhY2sgZmlsZSIKIG1zZ3N0ciAi0LzQsNC60YHQuNC80LDQu9C10L0g0YDQsNC30LzQtdGAINC90LAg0LLRgdC10LrQuCDQv9Cw0LrQtdGC0LXQvSDRhNCw0LnQuyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjUxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODkKIG1zZ2lkICJpZ25vcmUgYm9ycm93ZWQgb2JqZWN0cyBmcm9tIGFsdGVybmF0ZSBvYmplY3Qgc3RvcmUiCiBtc2dzdHIgItC40LPQvdC+0YDQuNGA0LDQvdC1INC90LAg0L7QsdC10LrRgtC40YLQtSDQt9Cw0LXRgtC4INC+0YIg0LTRgNGD0LPQuCDRhdGA0LDQvdC40LvQuNGJ0LAg0L3QsCDQvtCx0LXQutGC0LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzkxCiBtc2dpZCAiaWdub3JlIHBhY2tlZCBvYmplY3RzIgogbXNnc3RyICLQuNCz0L3QvtGA0LjRgNCw0L3QtSDQvdCwINC/0LDQutC10YLQuNGA0LDQvdC40YLQtSDQvtCx0LXQutGC0LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzkzCiBtc2dpZCAibGltaXQgcGFjayB3aW5kb3cgYnkgb2JqZWN0cyIKIG1zZ3N0ciAi0L7Qs9GA0LDQvdC40YfQsNCy0LDQvdC1INC90LAg0L/RgNC+0LfQvtGA0LXRhtCwINC30LAg0L/QsNC60LXRgtC40YDQsNC90LUg0L/QviDQsdGA0L7QuSDQvtCx0LXQutGC0LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk1CiBtc2dpZCAibGltaXQgcGFjayB3aW5kb3cgYnkgbWVtb3J5IGluIGFkZGl0aW9uIHRvIG9iamVjdCBsaW1pdCIKIG1zZ3N0ciAiIgogItC+0LPRgNCw0L3QuNGH0LDQstCw0L3QtSDQvdCwINC/0YDQvtC30L7RgNC10YbQsCDQt9CwINC/0LDQutC10YLQuNGA0LDQvdC1INC4INC/0L4g0L/QsNC80LXRgiDQvtGB0LLQtdC9INC/0L4g0LHRgNC+0Lkg0L7QsdC10LrRgtC4IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NwogbXNnaWQgIm1heGltdW0gbGVuZ3RoIG9mIGRlbHRhIGNoYWluIGFsbG93ZWQgaW4gdGhlIHJlc3VsdGluZyBwYWNrIgogbXNnc3RyICIiCiAi0LzQsNC60YHQuNC80LDQu9C90LAg0LTRitC70LbQuNC90LAg0L3QsCDQstC10YDQuNCz0LDRgtCwINC+0YIg0YDQsNC30LvQuNC60LgsINC60L7Rj9GC0L4g0LUg0L/QvtC30LLQvtC70LXQvdCwINCyINC/0LDQutC10YLQvdC40Y8g0YTQsNC50LsiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk5CiBtc2dpZCAicmV1c2UgZXhpc3RpbmcgZGVsdGFzIgogbXNnc3RyICLQv9GA0LXQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINGB0YrRidC10YHRgtCy0YPQstCw0YnQuNGC0LUg0YDQsNC30LvQuNC60LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAxCiBtc2dpZCAicmV1c2UgZXhpc3Rpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi0L/RgNC10LjQt9C/0L7Qu9C30LLQsNC90LUg0L3QsCDRgdGK0YnQtdGB0YLQstGD0LLQsNGJ0LjRgtC1INC+0LHQtdC60YLQuCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjY1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDMKIG1zZ2lkICJ1c2UgT0ZTX0RFTFRBIG9iamVjdHMiCiBtc2dzdHIgItC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0L7QsdC10LrRgtC4IOKAnk9GU19ERUxUQeKAnCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjY3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDUKIG1zZ2lkICJ1c2UgdGhyZWFkcyB3aGVuIHNlYXJjaGluZyBmb3IgYmVzdCBkZWx0YSBtYXRjaGVzIgogbXNnc3RyICIiCiAi0YHRgtCw0YDRgtC40YDQsNC90LUg0L3QsCDQvdC40YjQutC4INC30LAg0L/RgNC10YLRitGA0YHQstCw0L3QtSDQvdCwINC90LDQuS3QtNC+0LHRgNC40YLQtSDRgdGK0LLQv9Cw0LTQtdC90LjRjyDQvdCwINGA0LDQt9C70LjQutC40YLQtSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjY5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDcKIG1zZ2lkICJkbyBub3QgY3JlYXRlIGFuIGVtcHR5IHBhY2sgb3V0cHV0IgogbXNnc3RyICLQsdC10Lcg0YHRitC30LTQsNCy0LDQvdC1INC90LAg0L/RgNCw0LfQtdC9INC/0LDQutC10YLQtdC9INGE0LDQudC7IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwOQogbXNnaWQgInJlYWQgcmV2aXNpb24gYXJndW1lbnRzIGZyb20gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgItC40LfRh9C40YLQsNC90LUg0L3QsCDQstC10YDRgdC40LjRgtC1INC+0YIg0YHRgtCw0L3QtNCw0YDRgtC90LjRjyDQstGF0L7QtCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjczCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MTEKIG1zZ2lkICJsaW1pdCB0aGUgb2JqZWN0cyB0byB0aG9zZSB0aGF0IGFyZSBub3QgeWV0IHBhY2tlZCIKIG1zZ3N0ciAi0L7Qs9GA0LDQvdC40YfQsNCy0LDQvdC1INC00L4g0LLRgdC1INC+0YnQtSDQvdC10L/QsNC60LXRgtC40YDQsNC90LjRgtC1INC+0LHQtdC60YLQuCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjc2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MTQKIG1zZ2lkICJpbmNsdWRlIG9iamVjdHMgcmVhY2hhYmxlIGZyb20gYW55IHJlZmVyZW5jZSIKIG1zZ3N0ciAiIgogItCy0LrQu9GO0YfQstCw0L3QtSDQvdCwINCy0YHQuNGH0LrQuCDQvtCx0LXQutGC0LgsINC60L7QuNGC0L4g0LzQvtCz0LDRgiDQtNCwINGB0LUg0LTQvtGB0YLQuNCz0L3QsNGCINC+0YIg0L/RgNC+0LjQt9Cy0L7Qu9C10L0gIgogItGD0LrQsNC30LDRgtC10LsiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDE3CiBtc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlZmVycmVkIGJ5IHJlZmxvZyBlbnRyaWVzIgogbXNnc3RyICLQstC60LvRjtGH0LLQsNC90LUg0Lgg0L3QsCDQvtCx0LXQutGC0LjRgtC1INGB0L7Rh9C10L3QuCDQvtGCINC30LDQv9C40YHQuNGC0LUg0LIg0LbRg9GA0L3QsNC70LAg0L3QsCDRg9C60LDQt9Cw0YLQtdC70LjRgtC1IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyMAogbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWZlcnJlZCB0byBieSB0aGUgaW5kZXgiCiBtc2dzdHIgItCy0LrQu9GO0YfQstCw0L3QtSDQuCDQvdCwINC+0LHQtdC60YLQuNGC0LUg0YHQvtGH0LXQvdC4INC+0YIg0LjQvdC00LXQutGB0LAiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDIzCiBtc2dpZCAib3V0cHV0IHBhY2sgdG8gc3Rkb3V0IgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQv9Cw0LrQtdGC0LAg0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINC40LfRhdC+0LQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDI1CiBtc2dpZCAiaW5jbHVkZSB0YWcgb2JqZWN0cyB0aGF0IHJlZmVyIHRvIG9iamVjdHMgdG8gYmUgcGFja2VkIgogbXNnc3RyICIiCiAi0LLQutC70Y7Rh9Cy0LDQvdC1INC4INC90LAg0L7QsdC10LrRgtC40YLQtS3QtdGC0LjQutC10YLQuCwg0LrQvtC40YLQviDRgdC+0YfQsNGCINC60YrQvCDQvtCx0LXQutGC0LjRgtC1LCDQutC+0LjRgtC+INGJ0LUg0LHRitC00LDRgiAiCiAi0L/QsNC60LXRgtC40YDQsNC90LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDI3CiBtc2dpZCAia2VlcCB1bnJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICLQt9Cw0L/QsNC30LLQsNC90LUg0L3QsCDQvdC10LTQvtGB0YLQuNC20LjQvNC40YLQtSDQvtCx0LXQutGC0LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDI5CiBtc2dpZCAicGFjayBsb29zZSB1bnJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICLQv9Cw0LrQtdGC0LjRgNCw0L3QtSDQuCDQvdCwINC90LXQtNC+0YHRgtC40LbQuNC80LjRgtC1INC+0LHQtdC60YLQuCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzEKIG1zZ2lkICJ1bnBhY2sgdW5yZWFjaGFibGUgb2JqZWN0cyBuZXdlciB0aGFuIDx0aW1lPiIKIG1zZ3N0ciAi0YDQsNC30L/QsNC60LXRgtC40YDQsNC90LUg0L3QsCDQvdC10LTQvtGB0YLQuNC20LjQvNC40YLQtSDQvtCx0LXQutGC0LgsINC60L7QuNGC0L4g0YHQsCDQv9C+LdC90L7QstC4INC+0YIg0YLQvtCy0LAg0JLQoNCV0JzQlSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzQKK21zZ2lkICJ1c2UgdGhlIHNwYXJzZSByZWFjaGFiaWxpdHkgYWxnb3JpdGhtIgorbXNnc3RyICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINCw0LvQs9C+0YDQuNGC0YrQvCDQt9CwINGH0LDRgdGC0LjRh9C90LAg0LTQvtGB0YLQuNC20LjQvNC+0YHRgiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDM2CiBtc2dpZCAiY3JlYXRlIHRoaW4gcGFja3MiCiBtc2dzdHIgItGB0YrQt9C00LDQstCw0L3QtSDQvdCwINGB0YrQutGA0LDRgtC10L3QuCDQv9Cw0LrQtdGC0LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5OAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDM4CiBtc2dpZCAiY3JlYXRlIHBhY2tzIHN1aXRhYmxlIGZvciBzaGFsbG93IGZldGNoZXMiCiBtc2dzdHIgItC/0LDQutC10YLQuNGA0LDQvdC1INC/0L7QtNGF0L7QtNGP0YnQviDQt9CwINC/0LvQuNGC0LrQviDQtNC+0YHRgtCw0LLRj9C90LUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwMAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQwCiBtc2dpZCAiaWdub3JlIHBhY2tzIHRoYXQgaGF2ZSBjb21wYW5pb24gLmtlZXAgZmlsZSIKIG1zZ3N0ciAi0LjQs9C90L7RgNC40YDQsNC90LUg0L3QsCDQv9Cw0LrQtdGC0LjRgtC1LCDQutC+0LjRgtC+INGB0LAg0L/RgNC40LTRgNGD0LbQtdC90Lgg0L7RgiDRhNCw0LnQuyDigJ4ua2VlcOKAnCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDIKIG1zZ2lkICJpZ25vcmUgdGhpcyBwYWNrIgogbXNnc3RyICLQv9GA0L7Qv9GD0YHQutCw0L3QtSDQvdCwINGC0L7Qt9C4INC/0LDQutC10YIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwNAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQ0CiBtc2dpZCAicGFjayBjb21wcmVzc2lvbiBsZXZlbCIKIG1zZ3N0ciAi0L3QuNCy0L4g0L3QsCDQutC+0LzQv9GA0LXRgdC40YDQsNC90LUg0L/RgNC4INC/0LDQutC10YLQuNGA0LDQvdC1IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0NgogbXNnaWQgImRvIG5vdCBoaWRlIGNvbW1pdHMgYnkgZ3JhZnRzIgogbXNnc3RyICIiCiAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LLRgdC40YfQutC4INGA0L7QtNC40YLQtdC70Lgg4oCUINC00L7RgNC4INC4INGC0LXQt9C4LCDQutC+0LjRgtC+INC90L7RgNC80LDQu9C90L4g0YHQsCDRgdC60YDQuNGC0Lgg0L/RgNC4ICIKICLQv9GA0LjRgdCw0LbQtNCw0L3QuNGP0YLQsCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzA4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDgKIG1zZ2lkICJ1c2UgYSBiaXRtYXAgaW5kZXggaWYgYXZhaWxhYmxlIHRvIHNwZWVkIHVwIGNvdW50aW5nIG9iamVjdHMiCiBtc2dzdHIgIiIKICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINGB0YrRidC10YHRgtCy0YPQstCw0YnQuCDQuNC90LTQtdC60YHQuCDQvdCwINCx0LDQt9CwINCx0LjRgtC+0LLQuCDQvNCw0YHQutC4INC30LAg0YPRgdC60L7RgNGP0LLQsNC90LUg0L3QsCAiCiAi0L/RgNC10LHRgNC+0Y/QstCw0L3QtdGC0L4g0L3QsCDQvtCx0LXQutGC0LjRgtC1IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTAKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ1MAogbXNnaWQgIndyaXRlIGEgYml0bWFwIGluZGV4IHRvZ2V0aGVyIHdpdGggdGhlIHBhY2sgaW5kZXgiCiBtc2dzdHIgIiIKICLQt9Cw0L/QsNC30LLQsNC90LUg0Lgg0L3QsCDQuNC90LTQtdC60YEg0L3QsCDQsdCw0LfQsCDQv9C+0LHQuNGC0L7QstCwINC80LDRgdC60LAsINC30LDQtdC00L3QviDRgSDQuNC90LTQtdC60YHQsCDQt9CwINC/0LDQutC10YLQsCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzEzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTQKK21zZ2lkICJ3cml0ZSBhIGJpdG1hcCBpbmRleCBpZiBwb3NzaWJsZSIKK21zZ3N0ciAi0LfQsNC/0LjRgdCy0LDQvdC1INC90LAg0LjQvdC00LXQutGB0Lgg0L3QsCDQsdCw0LfQsCDQsdC40YLQvtCy0Lgg0LzQsNGB0LrQuCDQv9GA0Lgg0LLRitC30LzQvtC20L3QvtGB0YIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ1OAogbXNnaWQgImhhbmRsaW5nIGZvciBtaXNzaW5nIG9iamVjdHMiCiBtc2dzdHIgItC60LDQuiDQtNCwINGB0LUg0L7QsdGA0LDQsdC+0YLQstCw0YIg0LvQuNC/0YHQstCw0YnQuNGC0LUg0L7QsdC10LrRgtC4IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ2MQogbXNnaWQgImRvIG5vdCBwYWNrIG9iamVjdHMgaW4gcHJvbWlzb3IgcGFja2ZpbGVzIgogbXNnc3RyICLQsdC10Lcg0L/QsNC60LXRgtC40YDQsNC90LUg0L3QsCDQvtCx0LXQutGC0Lgg0LIg0LPQsNGA0LDQvdGC0LjRgNCw0YnQuCDQv9Cw0LrQtdGC0LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxOAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDYzCiBtc2dpZCAicmVzcGVjdCBpc2xhbmRzIGR1cmluZyBkZWx0YSBjb21wcmVzc2lvbiIKIG1zZ3N0ciAi0LHQtdC3INC/0YDQvtC80Y/QvdCwINC90LAg0LPRgNGD0L/QuNGC0LUg0L/RgNC4INC00LXQu9GC0LAg0LrQvtC80L/RgNC10YHQuNGPIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWx0YSBjaGFpbiBkZXB0aCAlZCBpcyB0b28gZGVlcCwgZm9yY2luZyAlZCIKIG1zZ3N0ciAi0LLQtdGA0LjQs9Cw0YLQsCDRgSDRgNCw0LfQu9C40LrQuCDQtSDQv9GA0LXQutCw0LvQtdC90L4g0LTRitC70LHQvtC60LAg4oCUICVkLCDRidC1INGB0LUg0L/QvtC70LfQstCwICVkIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrLmRlbHRhQ2FjaGVMaW1pdCBpcyB0b28gaGlnaCwgZm9yY2luZyAlZCIKIG1zZ3N0ciAiIgogItCh0YLQvtC50L3QvtGB0YLRgtCwINC90LAg0L3QsNGB0YLRgNC+0LnQutCw0YLQsCDigJ5wYWNrLmRlbHRhQ2FjaGVMaW1pdOKAnCDQtSDQv9GA0LXQutCw0LvQtdC90L4g0LPQvtC70Y/QvNCwLiAg0KnQtSDRgdC1ICIKICLQv9C+0LvQt9Cy0LAgJWQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTUxCiBtc2dpZCAiLS1tYXgtcGFjay1zaXplIGNhbm5vdCBiZSB1c2VkIHRvIGJ1aWxkIGEgcGFjayBmb3IgdHJhbnNmZXIiCiBtc2dzdHIgIiIKICLQvtC/0YbQuNGP0YLQsCDigJ4tLW1heC1wYWNrLXNpemXigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9C/0L7Qu9C30LLQsCDQt9CwINGB0YrQt9C00LDQstCw0L3QtSDQvdCwINC/0LDQutC10YLQvdC4ICIKICLRhNCw0LnQu9C+0LLQtSDQt9CwINC/0YDQtdC90L7RgSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NTMKIG1zZ2lkICJtaW5pbXVtIHBhY2sgc2l6ZSBsaW1pdCBpcyAxIE1pQiIKIG1zZ3N0ciAi0LzQuNC90LjQvNCw0LvQvdC40Y/RgiDRgNCw0LfQvNC10YAg0L3QsCDQv9Cw0LrQtdGC0LjRgtC1INC1IDHigIpNaUIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwOAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTU4CiBtc2dpZCAiLS10aGluIGNhbm5vdCBiZSB1c2VkIHRvIGJ1aWxkIGFuIGluZGV4YWJsZSBwYWNrIgogbXNnc3RyICIiCiAi0L7Qv9GG0LjRj9GC0LAg4oCeLS10aGlu4oCc0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9C/0L7Qu9C30LLQsCDQt9CwINGB0YrQt9C00LDQstCw0L3QtSDQvdCwINC/0LDQutC10YLQvdC4INGE0LDQudC70L7QstC1INGBICIKICLQuNC90LTQtdC60YEiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxMQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTYxCiBtc2dpZCAiLS1rZWVwLXVucmVhY2hhYmxlIGFuZCAtLXVucGFjay11bnJlYWNoYWJsZSBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLWtlZXAtdW5yZWFjaGFibGXigJwg0Lgg4oCeLS11bnBhY2stdW5yZWFjaGFibGXigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTY3CiBtc2dpZCAiY2Fubm90IHVzZSAtLWZpbHRlciB3aXRob3V0IC0tc3Rkb3V0IgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tZmlsdGVy4oCcINC40LfQuNGB0LrQstCwIOKAni1zdGRvdXTigJwiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ3NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNjI3CiBtc2dpZCAiRW51bWVyYXRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi0JjQt9Cx0YDQvtGP0LLQsNC90LUg0L3QsCDQvtCx0LXQutGC0LjRgtC1IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzY1NwogIywgYy1mb3JtYXQKLW1zZ2lkICJUb3RhbCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHJldXNlZCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPikiCittc2dpZCAiIgorIlRvdGFsICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcmV1c2VkICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcGFjay0iCisicmV1c2VkICU8UFJJdTMyPiIKIG1zZ3N0ciAiIgotItCe0LHRidC+ICU8UFJJdTMyPiAo0YDQsNC30LvQuNC60LggJTxQUkl1MzI+KSwg0L/RgNC10LjQt9C/0L7Qu9C30LLQsNC90LggJTxQUkl1MzI+ICjRgNCw0LfQu9C40LrQuCAiCi0iJTxQUkl1MzI+KSIKKyLQntCx0YnQvjogJTxQUkl1MzI+ICjRgNCw0LfQu9C40LrQuDogJTxQUkl1MzI+KSwg0L/RgNC10LjQt9C/0L7Qu9C30LLQsNC90Lg6ICU8UFJJdTMyPiAo0YDQsNC30LvQuNC60Lg6ICIKKyIlPFBSSXUzMj4pLCDQv9GA0LXQuNC30L/QvtC70LfQstCw0L3QuCDQv9GA0Lgg0L/QsNC60LXRgtC40YDQsNC90LU6ICU8UFJJdTMyPiIKIAotIzogYnVpbHRpbi9wYWNrLXJlZnMuYzo3CisjOiBidWlsdGluL3BhY2stcmVmcy5jOjgKIG1zZ2lkICJnaXQgcGFjay1yZWZzIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgcGFjay1yZWZzIFvQntCf0KbQmNCv4oCmXSIKIAotIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNQorIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNgogbXNnaWQgInBhY2sgZXZlcnl0aGluZyIKIG1zZ3N0ciAi0L/QsNC60LXRgtC40YDQsNC90LUg0L3QsCDQstGB0LjRh9C60L4iCiAKLSM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTcKIG1zZ2lkICJwcnVuZSBsb29zZSByZWZzIChkZWZhdWx0KSIKIG1zZ3N0ciAi0L7QutCw0YHRgtGA0Y/QvdC1INC90LAg0L3QtdC00L7RgdGC0LjQttC40LzQuNGC0LUg0YPQutCw0LfQsNGC0LXQu9C4ICjRgdGC0LDQvdC00LDRgNGC0L3QvikiCiAKQEAgLTE0NzM3LDY5ICsxNzk3MCw2OSBAQAogbXNnaWQgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGltZT5dIFstLV0gWzxoZWFkPi4uLl0iCiBtc2dzdHIgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSDQktCg0JXQnNCVXSBbLS1dIFvQktCg0KrQpeKApl0iCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMDkKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMzEKIG1zZ2lkICJyZXBvcnQgcHJ1bmVkIG9iamVjdHMiCiBtc2dzdHIgItC40L3RhNC+0YDQvNCw0YbQuNGPINC30LAg0L7QutCw0YHRgtGA0LXQvdC40YLQtSDQvtCx0LXQutGC0LgiCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMTIKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMzQKIG1zZ2lkICJleHBpcmUgb2JqZWN0cyBvbGRlciB0aGFuIDx0aW1lPiIKIG1zZ3N0ciAi0L7QutCw0YHRgtGA0Y/QvdC1INC90LAg0L7QsdC10LrRgtC40YLQtSDQv9C+LdGB0YLQsNGA0Lgg0L7RgiDRgtC+0LLQsCDQktCg0JXQnNCVIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTE0CisjOiBidWlsdGluL3BydW5lLmM6MTM2CiBtc2dpZCAibGltaXQgdHJhdmVyc2FsIHRvIG9iamVjdHMgb3V0c2lkZSBwcm9taXNvciBwYWNrZmlsZXMiCiBtc2dzdHIgItC+0LPRgNCw0L3QuNGH0LDQstCw0L3QtSDQvdCwINC+0LHRhdC+0LbQtNCw0L3QtdGC0L4g0LTQviDQvtCx0LXQutGC0Lgg0LjQt9Cy0YrQvSDQs9Cw0YDQsNC90YLQuNGA0LDRidC4INC/0LDQutC10YLQuCIKIAotIzogYnVpbHRpbi9wcnVuZS5jOjEyOQorIzogYnVpbHRpbi9wcnVuZS5jOjE1MAogbXNnaWQgImNhbm5vdCBwcnVuZSBpbiBhIHByZWNpb3VzLW9iamVjdHMgcmVwbyIKIG1zZ3N0ciAi0YXRgNCw0L3QuNC70LjRidC1INGBINCy0LDQttC90Lgg0L7QsdC10LrRgtC4INC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0LrQsNGB0YLRgNGPIgogCi0jOiBidWlsdGluL3B1bGwuYzo2MCBidWlsdGluL3B1bGwuYzo2MgorIzogYnVpbHRpbi9wdWxsLmM6NDUgYnVpbHRpbi9wdWxsLmM6NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICLQndC10L/RgNCw0LLQuNC70L3QsCDRgdGC0L7QudC90L7RgdGCINC30LAg4oCeJXPigJw6IOKAniVz4oCcIgogCi0jOiBidWlsdGluL3B1bGwuYzo4MgorIzogYnVpbHRpbi9wdWxsLmM6NjcKIG1zZ2lkICJnaXQgcHVsbCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKIG1zZ3N0ciAiZ2l0IHB1c2ggW9Ce0J/QptCY0K/igKZdIFvQpdCg0JDQndCY0JvQmNCp0JUgW9Cj0JrQkNCX0JDQotCV0Jtf0J3QkF/QktCV0KDQodCY0K/igKZdXSIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTMzCisjOiBidWlsdGluL3B1bGwuYzoxMjIKIG1zZ2lkICJjb250cm9sIGZvciByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyIKIG1zZ3N0ciAi0YPQv9GA0LDQstC70LXQvdC40LUg0L3QsCDRgNC10LrRg9GA0YHQuNCy0L3QvtGC0L4g0LTQvtGB0YLQsNCy0Y/QvdC1INC90LAg0L/QvtC00LzQvtC00YPQu9C40YLQtSIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTM3CisjOiBidWlsdGluL3B1bGwuYzoxMjYKIG1zZ2lkICJPcHRpb25zIHJlbGF0ZWQgdG8gbWVyZ2luZyIKIG1zZ3N0ciAi0J7Qv9GG0LjQuCDQv9GA0Lgg0YHQu9C40LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE0MAorIzogYnVpbHRpbi9wdWxsLmM6MTI5CiBtc2dpZCAiaW5jb3Jwb3JhdGUgY2hhbmdlcyBieSByZWJhc2luZyByYXRoZXIgdGhhbiBtZXJnaW5nIgogbXNnc3RyICLQstC90LDRgdGP0L3QtSDQvdCwINC/0YDQvtC80LXQvdC40YLQtSDRh9GA0LXQtyDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1LCDQsCDQvdC1INGH0YDQtdC3INGB0LvQuNCy0LDQvdC1IgogCi0jOiBidWlsdGluL3B1bGwuYzoxNjcgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTQ3IGJ1aWx0aW4vcmV2ZXJ0LmM6MTIyCisjOiBidWlsdGluL3B1bGwuYzoxNTcgYnVpbHRpbi9yZWJhc2UuYzo0NzEgYnVpbHRpbi9yZXZlcnQuYzoxMjYKIG1zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQiCiBtc2dzdHIgItC/0L7Qt9Cy0L7Qu9GP0LLQsNC90LUg0L3QsCDQv9GA0LXQstGK0YDRgtCw0L3QuNGPIgogCi0jOiBidWlsdGluL3B1bGwuYzoxNzYKKyM6IGJ1aWx0aW4vcHVsbC5jOjE2NgogbXNnaWQgImF1dG9tYXRpY2FsbHkgc3Rhc2gvc3Rhc2ggcG9wIGJlZm9yZSBhbmQgYWZ0ZXIgcmViYXNlIgogbXNnc3RyICLQsNCy0YLQvtC80LDRgtC40YfQvdC+INGB0LrQsNGC0LDQstCw0L3QtS/Qv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDRgdC60LDRgtCw0L3QvtGC0L4g0L/RgNC10LTQuCDQuCDRgdC70LXQtCDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1IgogCi0jOiBidWlsdGluL3B1bGwuYzoxOTIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE4MgogbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBmZXRjaGluZyIKIG1zZ3N0ciAi0J7Qv9GG0LjQuCDQv9GA0Lgg0LTQvtGB0YLQsNCy0Y/QvdC1IgogCi0jOiBidWlsdGluL3B1bGwuYzoyMDIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE5MgogbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBsb2NhbCBicmFuY2giCiBtc2dzdHIgItC/0YDQuNC90YPQtNC40YLQtdC70L3QviDQv9GA0LXQt9Cw0L/QuNGB0LLQsNC90LUg0L3QsCDQu9C+0LrQsNC70L3QuNGPINC60LvQvtC9IgogCi0jOiBidWlsdGluL3B1bGwuYzoyMTAKKyM6IGJ1aWx0aW4vcHVsbC5jOjIwMAogbXNnaWQgIm51bWJlciBvZiBzdWJtb2R1bGVzIHB1bGxlZCBpbiBwYXJhbGxlbCIKIG1zZ3N0ciAi0LHRgNC+0Lkg0L/QvtC00LzQvtC00YPQu9C4INC40LfQtNGK0YDQv9Cw0L3QuCDQv9Cw0YDQsNC70LXQu9C90L4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjMwNQorIzogYnVpbHRpbi9wdWxsLmM6MzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yIHB1bGwuZmY6ICVzIgogbXNnc3RyICLQndC10L/RgNCw0LLQuNC70L3QsCDRgdGC0L7QudC90L7RgdGCINC30LAg4oCecHVsbC5mZuKAnDog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyMQorIzogYnVpbHRpbi9wdWxsLmM6NDI2CiBtc2dpZCAiIgogIlRoZXJlIGlzIG5vIGNhbmRpZGF0ZSBmb3IgcmViYXNpbmcgYWdhaW5zdCBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0ICIKICJmZXRjaGVkLiIKQEAgLTE0ODA3LDE0ICsxODA0MCwxNCBAQAogItCc0LXQttC00YMg0YPQutCw0LfQsNGC0LXQu9C40YLQtSwg0LrQvtC40YLQviDRgtC+0LrRgyDRidC+INC00L7RgdGC0LDQstC40YXRgtC1LCDQvdGP0LzQsCDQv9C+0LTRhdC+0LTRj9GJINC60LDQvdC00LjQtNCw0YIsINCy0YrRgNGF0YMgIgogItC60L7QudGC0L4g0LTQsCDQv9GA0LXQsdCw0LfQuNGA0LDRgtC1LiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDIzCisjOiBidWlsdGluL3B1bGwuYzo0MjgKIG1zZ2lkICIiCiAiVGhlcmUgYXJlIG5vIGNhbmRpZGF0ZXMgZm9yIG1lcmdpbmcgYW1vbmcgdGhlIHJlZnMgdGhhdCB5b3UganVzdCBmZXRjaGVkLiIKIG1zZ3N0ciAiIgogItCc0LXQttC00YMg0YPQutCw0LfQsNGC0LXQu9C40YLQtSwg0LrQvtC40YLQviDRgtC+0LrRgyDRidC+INC00L7RgdGC0LDQstC40YXRgtC1LCDQvdGP0LzQsCDQv9C+0LTRhdC+0LTRj9GJINC60LDQvdC00LjQtNCw0YIsINC60L7QudGC0L4gIgogItC00LAg0YHQu9C10LXRgtC1LiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDI0CisjOiBidWlsdGluL3B1bGwuYzo0MjkKIG1zZ2lkICIiCiAiR2VuZXJhbGx5IHRoaXMgbWVhbnMgdGhhdCB5b3UgcHJvdmlkZWQgYSB3aWxkY2FyZCByZWZzcGVjIHdoaWNoIGhhZCBub1xuIgogIm1hdGNoZXMgb24gdGhlIHJlbW90ZSBlbmQuIgpAQCAtMTQ4MjIsNyArMTgwNTUsNyBAQAogItCd0LDQuSDQstC10YDQvtGP0YLQvdC+INGB0YLQtSDQv9C+0LTQsNC70Lgg0YjQsNCx0LvQvtC9INC30LAg0YPQutCw0LfQsNGC0LXQu9C4LCDQutC+0LnRgtC+INC90LUg0LUg0L3QsNC/0LDRgdC90LDQuyDRgSDQvdC40YnQviDQsiAiCiAi0L7RgtC00LDQu9C10YfQtdC90L7RgtC+INGF0YDQsNC90LjQu9C40YnQtS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyNworIzogYnVpbHRpbi9wdWxsLmM6NDMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXNrZWQgdG8gcHVsbCBmcm9tIHRoZSByZW1vdGUgJyVzJywgYnV0IGRpZCBub3Qgc3BlY2lmeVxuIgpAQCAtMTQ4MzMsNDQgKzE4MDY2LDQ0IEBACiAi0J/QvtC90LXQttC1INGC0L7QstCwINC90LUg0LUg0YXRgNCw0L3QuNC70LjRidC10YLQviDQv9C+INC/0L7QtNGA0LDQt9Cx0LjRgNCw0L3QtSDQvdCwINGC0LXQutGD0YnQuNGPINC60LvQvtC9LCDRgtGA0Y/QsdCy0LBcbiIKICLQtNCwINGD0LrQsNC20LXRgtC1INC+0YLQtNCw0LvQtdGH0LXQvdC40Y8g0LrQu9C+0L0g0L3QsCDQutC+0LzQsNC90LTQvdC40Y8g0YDQtdC0LiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDMyIGJ1aWx0aW4vcmViYXNlLmM6NzYxIGdpdC1wYXJzZS1yZW1vdGUuc2g6NzMKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzNyBidWlsdGluL3JlYmFzZS5jOjE0MDkgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3MwogbXNnaWQgIllvdSBhcmUgbm90IGN1cnJlbnRseSBvbiBhIGJyYW5jaC4iCiBtc2dzdHIgItCY0LfQstGK0L0g0LLRgdC40YfQutC4INC60LvQvtC90LguIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzQgYnVpbHRpbi9wdWxsLmM6NDQ5IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzkKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NTQgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3OQogbXNnaWQgIlBsZWFzZSBzcGVjaWZ5IHdoaWNoIGJyYW5jaCB5b3Ugd2FudCB0byByZWJhc2UgYWdhaW5zdC4iCiBtc2dzdHIgItCj0LrQsNC20LXRgtC1INCy0YrRgNGF0YMg0LrQvtC5INC60LvQvtC9INC40YHQutCw0YLQtSDQtNCwINC/0YDQtdCx0LDQt9C40YDQsNGC0LUuIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzYgYnVpbHRpbi9wdWxsLmM6NDUxIGdpdC1wYXJzZS1yZW1vdGUuc2g6ODIKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0MSBidWlsdGluL3B1bGwuYzo0NTYgZ2l0LXBhcnNlLXJlbW90ZS5zaDo4MgogbXNnaWQgIlBsZWFzZSBzcGVjaWZ5IHdoaWNoIGJyYW5jaCB5b3Ugd2FudCB0byBtZXJnZSB3aXRoLiIKIG1zZ3N0ciAi0KPQutCw0LbQtdGC0LUg0LrQvtC5INC60LvQvtC9INC40YHQutCw0YLQtSDQtNCwINGB0LvQtdC10YLQtS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzNyBidWlsdGluL3B1bGwuYzo0NTIKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0MiBidWlsdGluL3B1bGwuYzo0NTcKIG1zZ2lkICJTZWUgZ2l0LXB1bGwoMSkgZm9yIGRldGFpbHMuIgogbXNnc3RyICLQl9CwINC/0L7QstC10YfQtSDQuNC90YTQvtGA0LzQsNGG0LjRjyDQv9C+0LPQu9C10LTQvdC10YLQtSDRgNGK0LrQvtCy0L7QtNGB0YLQstC+0YLQviDigJ5naXQtcHVsbCgxKeKAnCIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM5IGJ1aWx0aW4vcHVsbC5jOjQ0NSBidWlsdGluL3B1bGwuYzo0NTQKLSM6IGJ1aWx0aW4vcmViYXNlLmM6NzY3IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjQKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0NCBidWlsdGluL3B1bGwuYzo0NTAgYnVpbHRpbi9wdWxsLmM6NDU5CisjOiBidWlsdGluL3JlYmFzZS5jOjE0MTUgZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NAogbXNnaWQgIjxyZW1vdGU+IgogbXNnc3RyICLQntCi0JTQkNCb0JXQp9CV0J3Qnl/QpdCg0JDQndCY0JvQmNCp0JUiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NTQgYnVpbHRpbi9wdWxsLmM6NDU5Ci0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1NTYgZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NQorIzogYnVpbHRpbi9wdWxsLmM6NDQ0IGJ1aWx0aW4vcHVsbC5jOjQ1OSBidWlsdGluL3B1bGwuYzo0NjQKKyM6IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjUKIG1zZ2lkICI8YnJhbmNoPiIKIG1zZ3N0ciAi0JrQm9Ce0J0iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ0NyBidWlsdGluL3JlYmFzZS5jOjc1OSBnaXQtcGFyc2UtcmVtb3RlLnNoOjc1CisjOiBidWlsdGluL3B1bGwuYzo0NTIgYnVpbHRpbi9yZWJhc2UuYzoxNDA3IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzUKIG1zZ2lkICJUaGVyZSBpcyBubyB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAi0KLQtdC60YPRidC40Y/RgiDQutC70L7QvSDQvdC1INGB0LvQtdC00Lgg0L3QuNC60L7QuS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ1NiBnaXQtcGFyc2UtcmVtb3RlLnNoOjk1CisjOiBidWlsdGluL3B1bGwuYzo0NjEgZ2l0LXBhcnNlLXJlbW90ZS5zaDo5NQogbXNnaWQgIiIKICJJZiB5b3Ugd2lzaCB0byBzZXQgdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoaXMgYnJhbmNoIHlvdSBjYW4gZG8gc28gd2l0aDoiCiBtc2dzdHIgIiIKICLQkNC60L4g0LjRgdC60LDRgtC1INC00LAg0LfQsNC00LDQtNC10YLQtSDQuNC90YTQvtGA0LzQsNGG0LjRjyDQt9CwINGB0LvQtdC00LXQvSDQutC70L7QvSwg0LzQvtC20LXRgtC1INC00LAg0L3QsNC/0YDQsNCy0LjRgtC1INGC0L7QstCwINGBICIKICLQutC+0LzQsNC90LTQsNGC0LA6IgogCi0jOiBidWlsdGluL3B1bGwuYzo0NjEKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ2NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBjb25maWd1cmF0aW9uIHNwZWNpZmllcyB0byBtZXJnZSB3aXRoIHRoZSByZWYgJyVzJ1xuIgpAQCAtMTQ4NzksMzIgKzE4MTEyLDMyIEBACiAi0JfQsCDRgdC70LjQstCw0L3QtSDQtSDRg9C60LDQt9Cw0L0g0L7RgtC00LDQu9C10YfQtdC90LjRj9GCINGD0LrQsNC30LDRgtC10Lsg4oCeJXPigJwsXG4iCiAi0L3QviDRgtCw0LrRitCyINC90LUg0LUg0LTQvtGB0YLQsNCy0LXQvS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjU2NQorIzogYnVpbHRpbi9wdWxsLmM6NTc2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgY29tbWl0ICVzIgogbXNnc3RyICLQvdC10LTQvtGB0YLRitC/0L3QviDQv9C+0LTQsNCy0LDQvdC1OiAlcyIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODQzCisjOiBidWlsdGluL3B1bGwuYzo4NTcKIG1zZ2lkICJpZ25vcmluZyAtLXZlcmlmeS1zaWduYXR1cmVzIGZvciByZWJhc2UiCiBtc2dzdHIgItCx0LXQtyDigJ4tLXZlcmlmeS1zaWduYXR1cmVz4oCcINC/0YDQuCDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1IgogCi0jOiBidWlsdGluL3B1bGwuYzo4OTEKKyM6IGJ1aWx0aW4vcHVsbC5jOjkxMgogbXNnaWQgIi0tW25vLV1hdXRvc3Rhc2ggb3B0aW9uIGlzIG9ubHkgdmFsaWQgd2l0aCAtLXJlYmFzZS4iCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tW25vLV1hdXRvc3Rhc2jigJwg0LjQt9C40YHQutCy0LAg4oCeLS1yZWJhc2XigJwiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg5OQorIzogYnVpbHRpbi9wdWxsLmM6OTIwCiBtc2dpZCAiVXBkYXRpbmcgYW4gdW5ib3JuIGJyYW5jaCB3aXRoIGNoYW5nZXMgYWRkZWQgdG8gdGhlIGluZGV4LiIKIG1zZ3N0ciAi0J7QsdC90L7QstGP0LLQsNC90LUg0L3QsCDQstGB0LUg0L7RidC1INC90LXRgdGK0LfQtNCw0LTQtdC9INC60LvQvtC9INGBINC/0YDQvtC80LXQvdC40YLQtSDQvtGCINC40L3QtNC10LrRgdCwIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MDIKKyM6IGJ1aWx0aW4vcHVsbC5jOjkyNAogbXNnaWQgInB1bGwgd2l0aCByZWJhc2UiCiBtc2dzdHIgItC40LfQtNGK0YDQv9Cy0LDQvdC1INGBINC/0YDQtdCx0LDQt9C40YDQsNC90LUiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjkwMworIzogYnVpbHRpbi9wdWxsLmM6OTI1CiBtc2dpZCAicGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKIG1zZ3N0ciAi0YLRgNGP0LHQstCwINC00LAg0L/QvtC00LDQtNC10YLQtSDQuNC70Lgg0YHQutCw0YLQsNC10YLQtSDQv9GA0L7QvNC10L3QuNGC0LUuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MjgKKyM6IGJ1aWx0aW4vcHVsbC5jOjk1MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZmV0Y2ggdXBkYXRlZCB0aGUgY3VycmVudCBicmFuY2ggaGVhZC5cbiIKQEAgLTE0OTE0LDcgKzE4MTQ3LDcgQEAKICLQtNC+0YHRgtCw0LLRj9C90LXRgtC+INC+0LHQvdC+0LLQuCDQstGK0YDRhdCwINC90LAg0YLQtdC60YPRidC40Y8g0LrQu9C+0L0uICDQoNCw0LHQvtGC0L3QvtGC0L5cbiIKICLQstC4INC60L7Qv9C40LUg0LHQtSDQv9GA0LXQstGK0YDRgtGP0L3QviDQvtGCINC/0L7QtNCw0LLQsNC90LUg4oCeJXPigJwuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MzQKKyM6IGJ1aWx0aW4vcHVsbC5jOjk1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IGZhc3QtZm9yd2FyZCB5b3VyIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTE0OTI2LDIwICsxODE1OSwyMCBAQAogbXNnc3RyICIiCiAi0KDQsNCx0L7RgtC90L7RgtC+INCy0Lgg0LrQvtC/0LjQtSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC10LLRitGA0YLRj9C90L4uXG4iCiAi0KHQu9C10LQg0LrQsNGC0L4g0LfQsNC/0LDQt9C40YLQtSDQstGB0LjRh9C60L4g0L3QtdC+0LHRhdC+0LTQuNC80L4g0L/QvtGB0L7Rh9C10L3QviDQvtGCINC60L7QvNCw0L3QtNCw0YLQsDpcbiIKLSIgICQgZ2l0IGRpZmYgJXNcbiIKKyIgICAgZ2l0IGRpZmYgJXNcbiIKICLQuNC30L/RitC70L3QtdGC0LU6XG4iCi0iICAkIGdpdCByZXNldCAtLWhhcmRcbiIKKyIgICAgZ2l0IHJlc2V0IC0taGFyZFxuIgogItC30LAg0LLRgNGK0YnQsNC90LUg0LrRitC8INC90L7RgNC80LDQu9C90L4g0YHRitGB0YLQvtGP0L3QuNC1LiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTQ5CisjOiBidWlsdGluL3B1bGwuYzo5NzEKIG1zZ2lkICJDYW5ub3QgbWVyZ2UgbXVsdGlwbGUgYnJhbmNoZXMgaW50byBlbXB0eSBoZWFkLiIKIG1zZ3N0ciAi0J3QtSDQvNC+0LbQtSDQtNCwINGB0LvQuNCy0LDRgtC1INC80L3QvtC20LXRgdGC0LLQviDQutC70L7QvdC4INCyINC/0YDQsNC30LXQvSDQstGK0YDRhdC+0LIg0YPQutCw0LfQsNGC0LXQuy4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjk1MworIzogYnVpbHRpbi9wdWxsLmM6OTc1CiBtc2dpZCAiQ2Fubm90IHJlYmFzZSBvbnRvIG11bHRpcGxlIGJyYW5jaGVzLiIKIG1zZ3N0ciAi0J3QtSDQvNC+0LbQtSDQtNCwINC/0YDQtdCx0LDQt9C40YDQsNGC0LUg0LLRitGA0YXRgyDQv9C+0LLQtdGH0LUg0L7RgiDQtdC00LjQvSDQutC70L7QvS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjk2MAorIzogYnVpbHRpbi9wdWxsLmM6OTgyCiBtc2dpZCAiY2Fubm90IHJlYmFzZSB3aXRoIGxvY2FsbHkgcmVjb3JkZWQgc3VibW9kdWxlIG1vZGlmaWNhdGlvbnMiCiBtc2dzdHIgIiIKICLQv9GA0LXQsdCw0LfQuNGA0LDQvdC10YLQviDQtSDQvdC10LLRitC30LzQvtC20L3QviDQt9Cw0YDQsNC00Lgg0LvQvtC60LDQu9C90L4g0LfQsNC/0LjRgdCw0L3QuNGC0LUg0L/RgNC+0LzQtdC90Lgg0L/QviDQv9C+0LTQvNC+0LTRg9C70LjRgtC1IgpAQCAtMTQ5NDgsMTUgKzE4MTgxLDE1IEBACiBtc2dpZCAiZ2l0IHB1c2ggWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCiBtc2dzdHIgImdpdCBwdXNoIFvQntCf0KbQmNCv4oCmXSBb0KXQoNCQ0J3QmNCb0JjQqdCVIFvQo9Ca0JDQl9CQ0KLQldCbX9Cd0JBf0JLQldCg0KHQmNCv4oCmXV0iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjExMQorIzogYnVpbHRpbi9wdXNoLmM6MTEyCiBtc2dpZCAidGFnIHNob3J0aGFuZCB3aXRob3V0IDx0YWc+IgogbXNnc3RyICLRgdGK0LrRgNCw0YnQtdC90LjQtSDQt9CwINC10YLQuNC60LXRgiDQsdC10Lcg0JXQotCY0JrQldCiIgogCi0jOiBidWlsdGluL3B1c2guYzoxMjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjEyMgogbXNnaWQgIi0tZGVsZXRlIG9ubHkgYWNjZXB0cyBwbGFpbiB0YXJnZXQgcmVmIG5hbWVzIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLWRlbGV0ZeKAnCDQv9GA0LjQtdC80LAg0LfQsCDRhtC10Lsg0YHQsNC80L4g0L/RgNC+0YHRgtC4INC40LzQtdC90LAg0L3QsCDRg9C60LDQt9Cw0YLQtdC70LgiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE2NQorIzogYnVpbHRpbi9wdXNoLmM6MTY4CiBtc2dpZCAiIgogIlxuIgogIlRvIGNob29zZSBlaXRoZXIgb3B0aW9uIHBlcm1hbmVudGx5LCBzZWUgcHVzaC5kZWZhdWx0IGluICdnaXQgaGVscCBjb25maWcnLiIKQEAgLTE0OTY1LDcgKzE4MTk4LDcgQEAKICLQl9CwINC00LAg0LLQutC70Y7Rh9C40YLQtSDRgtCw0LfQuCDQvtC/0YbQuNGPINC30LAg0L/QvtGB0YLQvtGP0L3QvdC+LCDQv9C+0LPQu9C10LTQvdC10YLQtSDQtNC+0LrRg9C80LXQvdGC0LDRhtC40Y/RgtCwINC30LAgIgogItC90LDRgdGC0YDQvtC50LrQsNGC0LAg4oCecHVzaC5kZWZhdWx04oCcINCyIOKAnmdpdCBoZWxwIGNvbmZpZ+KAnC4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE2OAorIzogYnVpbHRpbi9wdXNoLmM6MTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgdXBzdHJlYW0gYnJhbmNoIG9mIHlvdXIgY3VycmVudCBicmFuY2ggZG9lcyBub3QgbWF0Y2hcbiIKQEAgLTE0OTkwLDcgKzE4MjIzLDcgQEAKICIgICAgZ2l0IHB1c2ggJXMgSEVBRFxuIgogIiVzIgogCi0jOiBidWlsdGluL3B1c2guYzoxODMKKyM6IGJ1aWx0aW4vcHVzaC5jOjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLlxuIgpAQCAtMTUwMDQsNyArMTgyMzcsNyBAQAogIlxuIgogIiAgICBnaXQgcHVzaCAlcyBIRUFEOtCY0JzQlV/QndCQX9Ce0KLQlNCQ0JvQldCn0JXQndCY0K9f0JrQm9Ce0J1cbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTk3CisjOiBidWlsdGluL3B1c2guYzoyMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBjdXJyZW50IGJyYW5jaCAlcyBoYXMgbm8gdXBzdHJlYW0gYnJhbmNoLlxuIgpAQCAtMTUwMTgsMTQgKzE4MjUxLDE0IEBACiAiXG4iCiAiICAgIGdpdCBwdXNoIC0tc2V0LXVwc3RyZWFtICVzICVzXG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjIwNQorIzogYnVpbHRpbi9wdXNoLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBjdXJyZW50IGJyYW5jaCAlcyBoYXMgbXVsdGlwbGUgdXBzdHJlYW0gYnJhbmNoZXMsIHJlZnVzaW5nIHRvIHB1c2guIgogbXNnc3RyICIiCiAi0KLQtdC60YPRidC40Y/RgiDQutC70L7QvSDigJ4lc+KAnCDRgdC70LXQtNC4INC90Y/QutC+0LvQutC+INC+0YLQtNCw0LvQtdGH0LXQvdC4INC60LvQvtC90LAsINC90LUg0LzQvtC20LXRgtC1INC/0YDQvtGB0YLQviDQtNCwICIKICLQuNC30YLQu9Cw0YHQutCw0YLQtS4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjIwOAorIzogYnVpbHRpbi9wdXNoLmM6MjExCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXJlIHB1c2hpbmcgdG8gcmVtb3RlICclcycsIHdoaWNoIGlzIG5vdCB0aGUgdXBzdHJlYW0gb2ZcbiIKQEAgLTE1MDM3LDE0ICsxODI3MCwxNCBAQAogItCi0YDRj9Cx0LLQsCDQtNCwINGD0LrQsNC20LXRgtC1INC60L7RjyDQstC10YDRgdC40Y8g0LTQsCDRgdC1INC40LfRgtC70LDRgdC60LAsINC30LAg0L7QsdC90L7QstGP0LLQsNC90LUg0L3QsCDQvtGC0LTQsNC70LXRh9C10L3QuNGPICIKICLQutC70L7QvS4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI2NworIzogYnVpbHRpbi9wdXNoLmM6MjcwCiBtc2dpZCAiIgogIllvdSBkaWRuJ3Qgc3BlY2lmeSBhbnkgcmVmc3BlY3MgdG8gcHVzaCwgYW5kIHB1c2guZGVmYXVsdCBpcyBcIm5vdGhpbmdcIi4iCiBtc2dzdHIgIiIKICLQndC1INGB0YLQtSDRg9C60LDQt9Cw0LvQuCDQstC10YDRgdC40Y8g0LfQsCDQv9C+0LTQsNCy0LDQvdC1LCDQsCDQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAnnB1c2guZGVmYXVsdOKAnCDQtSAiCiAi4oCebm90aGluZ+KAnCAo0L3QuNGJ0L4g0LHQtdC3INC40LfRgNC40YfQvdC+INGD0LrQsNC30LDQvdCwINCy0LXRgNGB0LjRjyDQtNCwINC90LUg0YHQtSDQuNC30YLQu9Cw0YHQutCy0LApIgogCi0jOiBidWlsdGluL3B1c2guYzoyNzQKKyM6IGJ1aWx0aW4vcHVzaC5jOjI3NwogbXNnaWQgIiIKICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgdGlwIG9mIHlvdXIgY3VycmVudCBicmFuY2ggaXMgYmVoaW5kXG4iCiAiaXRzIHJlbW90ZSBjb3VudGVycGFydC4gSW50ZWdyYXRlIHRoZSByZW1vdGUgY2hhbmdlcyAoZS5nLlxuIgpAQCAtMTUwNTgsNyArMTgyOTEsNyBAQAogItC/0YDQtdC00Lgg0L7RgtC90L7QstC+INC00LAg0LjQt9GC0LvQsNGB0LrQsNGC0LUg0L/RgNC+0LzQtdC90LjRgtC1LiAg0JfQsCDQv9C+0LLQtdGH0LUg0LjQvdGE0L7RgNC80LDRhtC40Y8g0LLQuNC20YLQtSDRgNCw0LfQtNC10LvQsFxuIgogIuKAnk5vdGUgYWJvdXQgZmFzdC1mb3J3YXJkc+KAnCDQsiDRgdGC0YDQsNC90LjRhtCw0YLQsCDQvtGCINGA0YrQutC+0LLQvtC00YHRgtCy0L7RgtC+IOKAnmdpdCBwdXNoIC0taGVscOKAnC4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI4MAorIzogYnVpbHRpbi9wdXNoLmM6MjgzCiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIGEgcHVzaGVkIGJyYW5jaCB0aXAgaXMgYmVoaW5kIGl0cyByZW1vdGVcbiIKICJjb3VudGVycGFydC4gQ2hlY2sgb3V0IHRoaXMgYnJhbmNoIGFuZCBpbnRlZ3JhdGUgdGhlIHJlbW90ZSBjaGFuZ2VzXG4iCkBAIC0xNTA3Miw3ICsxODMwNSw3IEBACiAi0LjQvdGE0L7RgNC80LDRhtC40Y8g0L/QvtCz0LvQtdC00L3QtdGC0LUg0YDQsNC30LTQtdC70LAg4oCeTm90ZSBhYm91dCBmYXN0LWZvcndhcmRz4oCcINCyINGB0YLRgNCw0L3QuNGG0LDRgtCwINC+0YJcbiIKICLRgNGK0LrQvtCy0L7QtNGB0YLQstC+0YLQviDigJ5naXQgcHVzaCAtLWhlbHDigJwuIgogCi0jOiBidWlsdGluL3B1c2guYzoyODYKKyM6IGJ1aWx0aW4vcHVzaC5jOjI4OQogbXNnaWQgIiIKICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgcmVtb3RlIGNvbnRhaW5zIHdvcmsgdGhhdCB5b3UgZG9cbiIKICJub3QgaGF2ZSBsb2NhbGx5LiBUaGlzIGlzIHVzdWFsbHkgY2F1c2VkIGJ5IGFub3RoZXIgcmVwb3NpdG9yeSBwdXNoaW5nXG4iCkBAIC0xNTA5MSwxNCArMTgzMjQsMTQgQEAKICLRgdGC0YDQsNC90LjRhtCw0YLQsFxuIgogItC+0YIg0YDRitC60L7QstC+0LTRgdGC0LLQvtGC0L4g4oCeZ2l0IHB1c2ggLS1oZWxw4oCcLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjkzCisjOiBidWlsdGluL3B1c2guYzoyOTYKIG1zZ2lkICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgdGFnIGFscmVhZHkgZXhpc3RzIGluIHRoZSByZW1vdGUuIgogbXNnc3RyICIiCiAi0JjQt9GC0LvQsNGB0LrQstCw0L3QtdGC0L4g0LUg0L7RgtGF0LLRitGA0LvQtdC90L4sINC30LDRidC+0YLQviDQsiDQvtGC0LTQsNC70LXRh9C10L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1INGB0YrRidC10YHRgtCy0YPQstCwICIKICLQtdGC0LjQutC10YIsXG4iCiAi0LrQvtC50YLQviDRidC1INC/0YDQuNC/0L7QutGA0LjQtdGC0LUg0YEg0LXRgtC40LrQtdGCINC+0YIg0LLQsNGI0LXRgtC+INGF0YDQsNC90LjQu9C40YnQtS4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI5NgorIzogYnVpbHRpbi9wdXNoLmM6Mjk5CiBtc2dpZCAiIgogIllvdSBjYW5ub3QgdXBkYXRlIGEgcmVtb3RlIHJlZiB0aGF0IHBvaW50cyBhdCBhIG5vbi1jb21taXQgb2JqZWN0LFxuIgogIm9yIHVwZGF0ZSBhIHJlbW90ZSByZWYgdG8gbWFrZSBpdCBwb2ludCBhdCBhIG5vbi1jb21taXQgb2JqZWN0LFxuIgpAQCAtMTUxMDgsMjIgKzE4MzQxLDEwMiBAQAogItGD0LrQsNC30LDRgtC10LssINC60L7QudGC0L4g0LLQtdGH0LUg0YHQvtGH0Lgg0LrRitC8INC+0LHQtdC60YIsINC60L7QudGC0L4g0L3QtSDQtSDQv9C+0LTQsNCy0LDQvdC1LCDQutCw0LrRgtC+INC4INGC0LXQv9GK0YDQstCwXG4iCiAi0LTQsCDQs9C+INC/0YDQvtC80LXQvdC40YLQtSDQtNCwINGB0L7Rh9C4INC60YrQvCDQv9C+0LTQvtCx0LXQvSDQvtCx0LXQutGCLlxuIgogCi0jOiBidWlsdGluL3B1c2guYzozNTcKKyM6IGJ1aWx0aW4vcHVzaC5jOjM2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJQdXNoaW5nIHRvICVzXG4iCiBtc2dzdHIgItCY0LfRgtC70LDRgdC60LLQsNC90LUg0LrRitC8IOKAniVz4oCcXG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM2MQorIzogYnVpbHRpbi9wdXNoLmM6MzY3CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwdXNoIHNvbWUgcmVmcyB0byAnJXMnIgogbXNnc3RyICLRh9Cw0YHRgiDQvtGCINGD0LrQsNC30LDRgtC10LvQuNGC0LUg0L3QtSDQsdGP0YXQsCDQuNC30YLQu9Cw0YHQutCw0L3QuCDQutGK0Lwg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM5NQorIzogYnVpbHRpbi9wdXNoLmM6NTQyCittc2dpZCAicmVwb3NpdG9yeSIKK21zZ3N0ciAi0YXRgNCw0L3QuNC70LjRidC1IgorCisjOiBidWlsdGluL3B1c2guYzo1NDMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjQKK21zZ2lkICJwdXNoIGFsbCByZWZzIgorbXNnc3RyICLQuNC30YLQu9Cw0YHQutCy0LDQvdC1INC90LAg0LLRgdC40YfQutC4INGD0LrQsNC30LDRgtC10LvQuCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ0IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY2Cittc2dpZCAibWlycm9yIGFsbCByZWZzIgorbXNnc3RyICLQvtCz0LvQtdC00LDQu9C90L4g0LrQvtC/0LjQtSDQvdCwINCy0YHQuNGH0LrQuCDRg9C60LDQt9Cw0YLQtdC70LgiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0NgorbXNnaWQgImRlbGV0ZSByZWZzIgorbXNnc3RyICLQuNC30YLRgNC40LLQsNC90LUg0L3QsCDRg9C60LDQt9Cw0YLQtdC70LjRgtC1IgorCisjOiBidWlsdGluL3B1c2guYzo1NDcKK21zZ2lkICJwdXNoIHRhZ3MgKGNhbid0IGJlIHVzZWQgd2l0aCAtLWFsbCBvciAtLW1pcnJvcikiCittc2dzdHIgItC40LfRgtC70LDRgdC60LLQsNC90LUg0L3QsCDQtdGC0LjQutC10YLQuNGC0LUgKNC90LXRgdGK0LLQvNC10YHRgtC40LzQviDRgSDQvtC/0YbQuNC40YLQtSDigJ4tLWFsbOKAnCDQuCDigJ4tLW1pcnJvcuKAnCkiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1MCBidWlsdGluL3NlbmQtcGFjay5jOjE2NworbXNnaWQgImZvcmNlIHVwZGF0ZXMiCittc2dzdHIgItC/0YDQuNC90YPQtNC40YLQtdC70L3QviDQvtCx0L3QvtCy0Y/QstCw0L3QtSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgxCittc2dpZCAiPHJlZm5hbWU+OjxleHBlY3Q+IgorbXNnc3RyICLQmNCc0JVf0J3QkF/Qo9Ca0JDQl9CQ0KLQldCbOtCe0KfQkNCa0JLQkNCd0JBf0KHQotCe0JnQndCe0KHQoiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUzIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgyCittc2dpZCAicmVxdWlyZSBvbGQgdmFsdWUgb2YgcmVmIHRvIGJlIGF0IHRoaXMgdmFsdWUiCittc2dzdHIgItCj0JrQkNCX0JDQotCV0JvRj9GCINGC0YDRj9Cx0LLQsCDQv9GK0YDQstC+0L3QsNGH0LDQu9C90L4g0LTQsCDQtSDRgSDRgtCw0LfQuCDQntCn0JDQmtCS0JDQndCQX9Ch0KLQntCZ0J3QntCh0KIiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1NgorbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIHB1c2hpbmcgb2Ygc3VibW9kdWxlcyIKK21zZ3N0ciAi0YPQv9GA0LDQstC70LXQvdC40LUg0L3QsCDRgNC10LrRg9GA0YHQuNCy0L3QvtGC0L4g0LjQt9GC0LvQsNGB0LrQstCw0L3QtSDQvdCwINC/0L7QtNC80L7QtNGD0LvQuNGC0LUiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1OCBidWlsdGluL3NlbmQtcGFjay5jOjE3NQorbXNnaWQgInVzZSB0aGluIHBhY2siCittc2dzdHIgItC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0YHRitC60YDQsNGC0LXQvdC4INC/0LDQutC10YLQuCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU5IGJ1aWx0aW4vcHVzaC5jOjU2MCBidWlsdGluL3NlbmQtcGFjay5jOjE2MQorIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNjIKK21zZ2lkICJyZWNlaXZlIHBhY2sgcHJvZ3JhbSIKK21zZ3N0ciAi0L/RgNC+0LPRgNCw0LzQsCDQt9CwINC/0L7Qu9GD0YfQsNCy0LDQvdC10YLQviDQvdCwINC/0LDQutC10YLQuCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTYxCittc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9zdGF0dXMiCittc2dzdHIgItC30LDQtNCw0LLQsNC90LUg0L3QsCDQvtGC0LTQsNC70LXRh9C10L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1INC30LAg0LrQvtC80LDQvdC00LjRgtC1IOKAnmdpdCBwdWxsL3N0YXR1c+KAnCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTY0Cittc2dpZCAicHJ1bmUgbG9jYWxseSByZW1vdmVkIHJlZnMiCittc2dzdHIgItC+0LrQsNGB0YLRgNGP0L3QtSDQvdCwINGD0LrQsNC30LDRgtC10LvQuNGC0LUsINC60L7QuNGC0L4g0YHQsCDQv9GA0LXQvNCw0YXQvdCw0YLQuCDQvtGCINC70L7QutCw0LvQvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2NgorbXNnaWQgImJ5cGFzcyBwcmUtcHVzaCBob29rIgorbXNnc3RyICLQsdC10Lcg0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDQutGD0LrQsNGC0LAg0L/RgNC10LTQuCDQuNC30YLQu9Cw0YHQutCy0LDQvdC1IChwcmUtcHVzaCkiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2NworbXNnaWQgInB1c2ggbWlzc2luZyBidXQgcmVsZXZhbnQgdGFncyIKK21zZ3N0ciAiIgorItC40LfRgtC70LDRgdC60LLQsNC90LUg0L3QsCDQu9C40L/RgdCy0LDRidC40YLQtSDQsiDQvtGC0LTQsNC70LXRh9C10L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1LCDQvdC+INGB0LLRitGA0LfQsNC90Lgg0YEg0YLQtdC60YPRidC+0YLQviAiCisi0LjQt9GC0LvQsNGB0LrQstCw0L3QtSwg0LXRgtC40LrQtdGC0LgiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3MCBidWlsdGluL3NlbmQtcGFjay5jOjE2OQorbXNnaWQgIkdQRyBzaWduIHRoZSBwdXNoIgorbXNnc3RyICLQv9C+0LTQv9C40YHQstCw0L3QtSDQvdCwINC40LfRgtC70LDRgdC60LLQsNC90LXRgtC+INGBIEdQRyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc2Cittc2dpZCAicmVxdWVzdCBhdG9taWMgdHJhbnNhY3Rpb24gb24gcmVtb3RlIHNpZGUiCittc2dzdHIgItC40LfQuNGB0LrQstCw0L3QtSDQvdCwINCw0YLQvtC80LDRgNC90Lgg0L7Qv9C10YDQsNGG0LjQuCDQvtGCINC+0YLRgdGA0LXRidC90LDRgtCwINGB0YLRgNCw0L3QsCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTkwCittc2dpZCAiLS1kZWxldGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tbWlycm9yIGFuZCAtLXRhZ3MiCittc2dzdHIgIiIKKyLQvtC/0YbQuNGP0YLQsCDigJ4tLWRlbGV0ZeKAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg0L7Qv9GG0LjQuNGC0LUgIOKAni0tYWxs4oCcLCDigJ4tLW1pcnJvcuKAnCDQuCDigJ4tLXRhZ3PigJwiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU5MgorbXNnaWQgIi0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSB3aXRob3V0IGFueSByZWZzIgorbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLWRlbGV0ZeKAnCDQuNC30LjRgdC60LLQsCDQv9C+0L3QtSDQtdC00LjQvSDRg9C60LDQt9Cw0YLQtdC7INC90LAg0LLQtdGA0YHQuNGPIgorCisjOiBidWlsdGluL3B1c2guYzo2MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJlcG9zaXRvcnkgJyVzJyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90L4g0YPQutCw0LfQsNC90L4g0YXRgNCw0L3QuNC70LjRidC1IOKAniVz4oCcIgogCi0jOiBidWlsdGluL3B1c2guYzozOTYKKyM6IGJ1aWx0aW4vcHVzaC5jOjYxMwogbXNnaWQgIiIKICJObyBjb25maWd1cmVkIHB1c2ggZGVzdGluYXRpb24uXG4iCiAiRWl0aGVyIHNwZWNpZnkgdGhlIFVSTCBmcm9tIHRoZSBjb21tYW5kLWxpbmUgb3IgY29uZmlndXJlIGEgcmVtb3RlICIKQEAgLTE1MTQ1LDEwNyArMTg0NTgsMjcgQEAKICJcbiIKICIgICAgZ2l0IHB1c2gg0JjQnNCVXG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU1MQotbXNnaWQgInJlcG9zaXRvcnkiCi1tc2dzdHIgItGF0YDQsNC90LjQu9C40YnQtSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY0Ci1tc2dpZCAicHVzaCBhbGwgcmVmcyIKLW1zZ3N0ciAi0LjQt9GC0LvQsNGB0LrQstCw0L3QtSDQvdCwINCy0YHQuNGH0LrQuCDRg9C60LDQt9Cw0YLQtdC70LgiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1MyBidWlsdGluL3NlbmQtcGFjay5jOjE2NgotbXNnaWQgIm1pcnJvciBhbGwgcmVmcyIKLW1zZ3N0ciAi0L7Qs9C70LXQtNCw0LvQvdC+INC60L7Qv9C40LUg0L3QsCDQstGB0LjRh9C60Lgg0YPQutCw0LfQsNGC0LXQu9C4IgotCi0jOiBidWlsdGluL3B1c2guYzo1NTUKLW1zZ2lkICJkZWxldGUgcmVmcyIKLW1zZ3N0ciAi0LjQt9GC0YDQuNCy0LDQvdC1INC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTU2Ci1tc2dpZCAicHVzaCB0YWdzIChjYW4ndCBiZSB1c2VkIHdpdGggLS1hbGwgb3IgLS1taXJyb3IpIgotbXNnc3RyICLQuNC30YLQu9Cw0YHQutCy0LDQvdC1INC90LAg0LXRgtC40LrQtdGC0LjRgtC1ICjQvdC10YHRitCy0LzQtdGB0YLQuNC80L4g0YEg0L7Qv9GG0LjQuNGC0LUg4oCeLS1hbGzigJwg0Lgg4oCeLS1taXJyb3LigJwpIgotCi0jOiBidWlsdGluL3B1c2guYzo1NTkgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjcKLW1zZ2lkICJmb3JjZSB1cGRhdGVzIgotbXNnc3RyICLQv9GA0LjQvdGD0LTQuNGC0LXQu9C90L4g0L7QsdC90L7QstGP0LLQsNC90LUiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2MSBidWlsdGluL3NlbmQtcGFjay5jOjE4MQotbXNnaWQgIjxyZWZuYW1lPjo8ZXhwZWN0PiIKLW1zZ3N0ciAi0KPQmtCQ0JfQkNCi0JXQmzrQntCn0JDQmtCS0JDQndCQX9Ch0KLQntCZ0J3QntCh0KIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2MiBidWlsdGluL3NlbmQtcGFjay5jOjE4MgotbXNnaWQgInJlcXVpcmUgb2xkIHZhbHVlIG9mIHJlZiB0byBiZSBhdCB0aGlzIHZhbHVlIgotbXNnc3RyICLQo9Ca0JDQl9CQ0KLQldCb0Y/RgiDRgtGA0Y/QsdCy0LAg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdC+INC00LAg0LUg0YEg0YLQsNC30Lgg0J7Qp9CQ0JrQktCQ0J3QkF/QodCi0J7QmdCd0J7QodCiIgotCi0jOiBidWlsdGluL3B1c2guYzo1NjUKLW1zZ2lkICJjb250cm9sIHJlY3Vyc2l2ZSBwdXNoaW5nIG9mIHN1Ym1vZHVsZXMiCi1tc2dzdHIgItGD0L/RgNCw0LLQu9C10L3QuNC1INC90LAg0YDQtdC60YPRgNGB0LjQstC90L7RgtC+INC40LfRgtC70LDRgdC60LLQsNC90LUg0L3QsCDQv9C+0LTQvNC+0LTRg9C70LjRgtC1IgotCi0jOiBidWlsdGluL3B1c2guYzo1NjcgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzUKLW1zZ2lkICJ1c2UgdGhpbiBwYWNrIgotbXNnc3RyICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINGB0YrQutGA0LDRgtC10L3QuCDQv9Cw0LrQtdGC0LgiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2OCBidWlsdGluL3B1c2guYzo1NjkgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjEKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYyCi1tc2dpZCAicmVjZWl2ZSBwYWNrIHByb2dyYW0iCi1tc2dzdHIgItC/0YDQvtCz0YDQsNC80LAg0LfQsCDQv9C+0LvRg9GH0LDQstCw0L3QtdGC0L4g0L3QsCDQv9Cw0LrQtdGC0LgiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3MAotbXNnaWQgInNldCB1cHN0cmVhbSBmb3IgZ2l0IHB1bGwvc3RhdHVzIgotbXNnc3RyICLQt9Cw0LTQsNCy0LDQvdC1INC90LAg0L7RgtC00LDQu9C10YfQtdC90L7RgtC+INGF0YDQsNC90LjQu9C40YnQtSDQt9CwINC60L7QvNCw0L3QtNC40YLQtSDigJ5naXQgcHVsbC9zdGF0dXPigJwiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3MwotbXNnaWQgInBydW5lIGxvY2FsbHkgcmVtb3ZlZCByZWZzIgotbXNnc3RyICLQvtC60LDRgdGC0YDRj9C90LUg0L3QsCDRg9C60LDQt9Cw0YLQtdC70LjRgtC1LCDQutC+0LjRgtC+INGB0LAg0L/RgNC10LzQsNGF0L3QsNGC0Lgg0L7RgiDQu9C+0LrQsNC70L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1IgotCi0jOiBidWlsdGluL3B1c2guYzo1NzUKLW1zZ2lkICJieXBhc3MgcHJlLXB1c2ggaG9vayIKLW1zZ3N0ciAi0LHQtdC3INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg0LrRg9C60LDRgtCwINC/0YDQtdC00Lgg0LjQt9GC0LvQsNGB0LrQstCw0L3QtSAocHJlLXB1c2gpIgotCi0jOiBidWlsdGluL3B1c2guYzo1NzYKLW1zZ2lkICJwdXNoIG1pc3NpbmcgYnV0IHJlbGV2YW50IHRhZ3MiCi1tc2dzdHIgIiIKLSLQuNC30YLQu9Cw0YHQutCy0LDQvdC1INC90LAg0LvQuNC/0YHQstCw0YnQuNGC0LUg0LIg0L7RgtC00LDQu9C10YfQtdC90L7RgtC+INGF0YDQsNC90LjQu9C40YnQtSwg0L3QviDRgdCy0YrRgNC30LDQvdC4INGBINGC0LXQutGD0YnQvtGC0L4gIgotItC40LfRgtC70LDRgdC60LLQsNC90LUsINC10YLQuNC60LXRgtC4IgotCi0jOiBidWlsdGluL3B1c2guYzo1NzkgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjkKLW1zZ2lkICJHUEcgc2lnbiB0aGUgcHVzaCIKLW1zZ3N0ciAi0L/QvtC00L/QuNGB0LLQsNC90LUg0L3QsCDQuNC30YLQu9Cw0YHQutCy0LDQvdC10YLQviDRgSBHUEciCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU4MSBidWlsdGluL3NlbmQtcGFjay5jOjE3NgotbXNnaWQgInJlcXVlc3QgYXRvbWljIHRyYW5zYWN0aW9uIG9uIHJlbW90ZSBzaWRlIgotbXNnc3RyICLQuNC30LjRgdC60LLQsNC90LUg0L3QsCDQsNGC0L7QvNCw0YDQvdC4INC+0L/QtdGA0LDRhtC40Lgg0L7RgiDQvtGC0YHRgNC10YnQvdCw0YLQsCDRgdGC0YDQsNC90LAiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU5OQotbXNnaWQgIi0tZGVsZXRlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWxsLCAtLW1pcnJvciBhbmQgLS10YWdzIgotbXNnc3RyICIiCi0i0L7Qv9GG0LjRj9GC0LAg4oCeLS1kZWxldGXigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBINC+0L/RhtC40LjRgtC1ICDigJ4tLWFsbOKAnCwg4oCeLS1taXJyb3LigJwg0Lgg4oCeLS10YWdz4oCcIgotCi0jOiBidWlsdGluL3B1c2guYzo2MDEKLW1zZ2lkICItLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2Ugd2l0aG91dCBhbnkgcmVmcyIKLW1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1kZWxldGXigJwg0LjQt9C40YHQutCy0LAg0L/QvtC90LUg0LXQtNC40L0g0YPQutCw0LfQsNGC0LXQuyDQvdCwINCy0LXRgNGB0LjRjyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NjA0CisjOiBidWlsdGluL3B1c2guYzo2MjgKIG1zZ2lkICItLWFsbCBhbmQgLS10YWdzIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgItC+0L/RhtC40LjRgtC1IOKAni0tYWxs4oCcINC4IOKAni0tdGFnc+KAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjA2CisjOiBidWlsdGluL3B1c2guYzo2MzAKIG1zZ2lkICItLWFsbCBjYW4ndCBiZSBjb21iaW5lZCB3aXRoIHJlZnNwZWNzIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLWFsbOKAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg0YPQutCw0LfQstCw0L3QtdGC0L4g0L3QsCDQstC10YDRgdC40Y8iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYxMAorIzogYnVpbHRpbi9wdXNoLmM6NjM0CiBtc2dpZCAiLS1taXJyb3IgYW5kIC0tdGFncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLW1pcnJvcuKAnCDQuCDigJ4tLXRhZ3PigJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYxMgorIzogYnVpbHRpbi9wdXNoLmM6NjM2CiBtc2dpZCAiLS1taXJyb3IgY2FuJ3QgYmUgY29tYmluZWQgd2l0aCByZWZzcGVjcyIKIG1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1taXJyb3LigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBINGD0LrQsNC30LLQsNC90LXRgtC+INC90LAg0LLQtdGA0YHQuNGPIgogCi0jOiBidWlsdGluL3B1c2guYzo2MTUKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzOQogbXNnaWQgIi0tYWxsIGFuZCAtLW1pcnJvciBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLWFsbOKAnCDQuCDigJ4tLW1pcnJvcuKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjM0CisjOiBidWlsdGluL3B1c2guYzo2NDMKIG1zZ2lkICJwdXNoIG9wdGlvbnMgbXVzdCBub3QgaGF2ZSBuZXcgbGluZSBjaGFyYWN0ZXJzIgogbXNnc3RyICLQvtC/0YbQuNC40YLQtSDQt9CwINC40LfRgtC70LDRgdC60LLQsNC90LUg0L3QtSDRgtGA0Y/QsdCy0LAg0LTQsCDRgdGK0LTRitGA0LbQsNGCINC30L3QsNC6INC30LAg0L3QvtCyINGA0LXQtCIKIApAQCAtMTUyNjEsMjggKzE4NDk0LDM2IEBACiBtc2dpZCAiZ2l0IHJhbmdlLWRpZmYgWzxvcHRpb25zPl0gPGJhc2U+IDxvbGQtdGlwPiA8bmV3LXRpcD4iCiBtc2dzdHIgImdpdCByYW5nZS1kaWZmIFvQntCf0KbQmNCv4oCmXSDQkdCQ0JfQkCDQodCi0JDQoF/QktCg0KrQpSDQndCe0JJf0JLQoNCq0KUiCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjIxCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyMgogbXNnaWQgIlBlcmNlbnRhZ2UgYnkgd2hpY2ggY3JlYXRpb24gaXMgd2VpZ2h0ZWQiCiBtc2dzdHIgItCf0YDQvtGG0LXQvdGCINC30LAg0L7RhtC10L3QutCwINC90LAg0YHRitC30LTQsNCy0LDQvdC10YLQviIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjMKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI0CiBtc2dpZCAidXNlIHNpbXBsZSBkaWZmIGNvbG9ycyIKIG1zZ3N0ciAi0LjQt9C/0L7Qu9C30LLQsNC90LUg0L3QsCDQv9GA0L7RgdGC0Lgg0YbQstC10YLQvtCy0LUg0LfQsCDRgNCw0LfQu9C40LrQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjYxIGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjY1CisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyNgorbXNnaWQgIm5vdGVzIgorbXNnc3RyICLQsdC10LvQtdC20LrQuCIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjYKK21zZ2lkICJwYXNzZWQgdG8gJ2dpdCBsb2cnIgorbXNnc3RyICLQv9C+0LTQsNCy0LAg0YHQtSDQvdCwINC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgbG9n4oCcIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo1MCBidWlsdGluL3JhbmdlLWRpZmYuYzo1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyAuLiBpbiByYW5nZTogJyVzJyIKIG1zZ3N0ciAi4oCeLi7igJwg0LvQuNC/0YHQstCwINCyINC00LjQsNC/0LDQt9C+0L3QsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NzUKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjY0CiBtc2dpZCAic2luZ2xlIGFyZyBmb3JtYXQgbXVzdCBiZSBzeW1tZXRyaWMgcmFuZ2UiCiBtc2dzdHIgItCy0LDRgNC40LDQvdGC0YrRgiDRgSDQtdC00LjQvdGB0YLQstC10L0g0LDRgNCz0YPQvNC10L3RgiDQuNC30LjRgdC60LLQsCDRgdC40LzQtdGC0YDQuNGH0LXQvSDQtNC40LDQv9Cw0LfQvtC9IgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo5MAorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NzkKIG1zZ2lkICJuZWVkIHR3byBjb21taXQgcmFuZ2VzIgogbXNnc3RyICLQvdC10L7QsdGF0L7QtNC40LzQuCDRgdCwINC00LLQsCDQtNC40LDQv9Cw0LfQvtC90LAg0YEg0L/QvtC00LDQstCw0L3QuNGPIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjQwCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjQxCiBtc2dpZCAiIgogImdpdCByZWFkLXRyZWUgWygtbSBbLS10cml2aWFsXSBbLS1hZ2dyZXNzaXZlXSB8IC0tcmVzZXQgfCAtLXByZWZpeD08cHJlZml4PikgIgogIlstdSBbLS1leGNsdWRlLXBlci1kaXJlY3Rvcnk9PGdpdGlnbm9yZT5dIHwgLWldXSBbLS1uby1zcGFyc2UtY2hlY2tvdXRdIFstLSIKQEAgLTE1MjkzLDExOSArMTg1MzQsMzAxIEBACiAiY2hlY2tvdXRdIFstLWluZGV4LW91dHB1dD3QpNCQ0JnQm10gKC0tZW1wdHkgfCDQo9Ca0JDQl9CQ0KLQldCbX9Ca0KrQnF/QlNCq0KDQktCeXzEgIgogIlvQo9Ca0JDQl9CQ0KLQldCbX9Ca0KrQnF/QlNCq0KDQktCeXzIgW9Cj0JrQkNCX0JDQotCV0Jtf0JrQqtCcX9CU0KrQoNCS0J5fM11dKSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjMKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI0CiBtc2dpZCAid3JpdGUgcmVzdWx0aW5nIGluZGV4IHRvIDxmaWxlPiIKIG1zZ3N0ciAi0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0LjQvdC00LXQutGB0LAg0LIg0YLQvtC30Lgg0KTQkNCZ0JsiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI2CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNwogbXNnaWQgIm9ubHkgZW1wdHkgdGhlIGluZGV4IgogbXNnc3RyICLRgdCw0LzQviDQt9Cw0L3Rg9C70Y/QstCw0L3QtSDQvdCwINC40L3QtNC10LrRgdCwIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyOAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjkKIG1zZ2lkICJNZXJnaW5nIgogbXNnc3RyICLQodC70LjQstCw0L3QtSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzAKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMxCiBtc2dpZCAicGVyZm9ybSBhIG1lcmdlIGluIGFkZGl0aW9uIHRvIGEgcmVhZCIKIG1zZ3N0ciAi0LTQsCDRgdC1INC40LfQstGK0YDRiNC4INC4INGB0LvQuNCy0LDQvdC1INGB0LvQtdC0INC+0YHQstC10L0g0LjQt9GH0LjRgtCw0L3QtdGC0L4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMyCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMwogbXNnaWQgIjMtd2F5IG1lcmdlIGlmIG5vIGZpbGUgbGV2ZWwgbWVyZ2luZyByZXF1aXJlZCIKIG1zZ3N0ciAi0YLRgNC+0LnQvdC+INGB0LvQuNCy0LDQvdC1LCDQsNC60L4g0L3QtSDRgdC1INC90LDQu9Cw0LPQsCDQv9C+0YTQsNC50LvQvtCy0L4g0YHQu9C40LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM0CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNQogbXNnaWQgIjMtd2F5IG1lcmdlIGluIHByZXNlbmNlIG9mIGFkZHMgYW5kIHJlbW92ZXMiCiBtc2dzdHIgItGC0YDQvtC50L3QviDRgdC70LjQstCw0L3QtSDQv9GA0Lgg0LTQvtCx0LDQstGP0L3QtSDQvdCwINC00L7QsdCw0LLRj9C90LUg0Lgg0LjQt9GC0YDQuNCy0LDQvdC1INC90LAg0YTQsNC50LvQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM2CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNwogbXNnaWQgInNhbWUgYXMgLW0sIGJ1dCBkaXNjYXJkIHVubWVyZ2VkIGVudHJpZXMiCiBtc2dzdHIgItGB0YrRidC+0YLQviDQutCw0YLQviDQvtC/0YbQuNGP0YLQsCDigJ4tbeKAnCwg0L3QviDQvdC10YHQu9C10YLQuNGC0LUg0L7QsdC10LrRgtC4INGB0LUg0L/RgNC10L3QtdCx0YDQtdCz0LLQsNGCIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzgKIG1zZ2lkICI8c3ViZGlyZWN0b3J5Pi8iCiBtc2dzdHIgItCf0J7QlNCU0JjQoNCV0JrQotCe0KDQmNCvLyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzgKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM5CiBtc2dpZCAicmVhZCB0aGUgdHJlZSBpbnRvIHRoZSBpbmRleCB1bmRlciA8c3ViZGlyZWN0b3J5Pi8iCiBtc2dzdHIgItC40LfRh9C40YLQsNC90LUg0L3QsCDQtNGK0YDQstC+0YLQviDQutGK0Lwg0LjQvdC00LXQutGB0LAg0LrQsNGC0L4g0LTQsCDQtSDQsiDRgtCw0LfQuCDQn9Ce0JTQlNCY0KDQldCa0KLQntCg0JjQry8iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQxCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0MgogbXNnaWQgInVwZGF0ZSB3b3JraW5nIHRyZWUgd2l0aCBtZXJnZSByZXN1bHQiCiBtc2dzdHIgItC+0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0YEg0YDQtdC30YPQu9GC0LDRgtCwINC+0YIg0YHQu9C40LLQsNC90LXRgtC+IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0MworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDQKIG1zZ2lkICJnaXRpZ25vcmUiCiBtc2dzdHIgItCk0JDQmdCbX9ChX9CY0JfQmtCb0K7Qp9CV0J3QmNCvIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDUKIG1zZ2lkICJhbGxvdyBleHBsaWNpdGx5IGlnbm9yZWQgZmlsZXMgdG8gYmUgb3ZlcndyaXR0ZW4iCiBtc2dzdHIgItC/0L7Qt9Cy0L7Qu9GP0LLQsNC90LUg0L3QsCDQv9GA0LXQt9Cw0L/QuNGB0LLQsNC90LXRgtC+INC90LAg0LjQt9GA0LjRh9C90L4g0L/RgNC10L3QtdCx0YDQtdCz0LLQsNC90LjRgtC1INGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDgKIG1zZ2lkICJkb24ndCBjaGVjayB0aGUgd29ya2luZyB0cmVlIGFmdGVyIG1lcmdpbmciCiBtc2dzdHIgItCx0LXQtyDQv9GA0L7QstC10YDQutCwINC90LAg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0YHQu9C10LQg0YHQu9C40LLQsNC90LXRgtC+IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0OAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDkKIG1zZ2lkICJkb24ndCB1cGRhdGUgdGhlIGluZGV4IG9yIHRoZSB3b3JrIHRyZWUiCiBtc2dzdHIgItCx0LXQtyDQvtCx0L3QvtCy0Y/QstCw0L3QtSDQuCDQvdCwINC40L3QtNC10LrRgdCwLCDQuCDQvdCwINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTEKIG1zZ2lkICJza2lwIGFwcGx5aW5nIHNwYXJzZSBjaGVja291dCBmaWx0ZXIiCiBtc2dzdHIgItCx0LXQtyDQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDRhNC40LvRgtGK0YDQsCDQt9CwINGH0LDRgdGC0LjRh9C90L4g0LjQt9GC0LXQs9C70Y/QvdC1IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MgorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTMKIG1zZ2lkICJkZWJ1ZyB1bnBhY2stdHJlZXMiCiBtc2dzdHIgItC40LfRh9C40YHRgtCy0LDQvdC1INC90LAg0LPRgNC10YjQutC4INCyINC60L7QvNCw0L3QtNCw0YLQsCDigJ51bnBhY2stdHJlZXPigJwiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MjkKLW1zZ2lkICIiCi0iZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPl0gWzx1cHN0cmVhbT5dICIKLSJbPGJyYW5jaD5dIgotbXNnc3RyICIiCi0iZ2l0IHJlYmFzZSBbLWldIFvQntCf0KbQmNCv4oCmXSBbLS1leGVjINCa0J7QnNCQ0J3QlNCQXSBbLS1vbnRvINCd0J7QktCQX9CR0JDQl9CQXSBb0JrQm9Ce0J1f0JjQl9Ci0J7Qp9Cd0JjQml0gIgotIlvQmtCb0J7QnV0iCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1NworbXNnaWQgInN1cHByZXNzIGZlZWRiYWNrIG1lc3NhZ2VzIgorbXNnc3RyICLQsdC10Lcg0LjQvdGE0L7RgNC80LDRhtC40L7QvdC90Lgg0YHRitC+0LHRidC10L3QuNGPIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjMxCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE4OAorbXNnaWQgIllvdSBuZWVkIHRvIHJlc29sdmUgeW91ciBjdXJyZW50IGluZGV4IGZpcnN0IgorbXNnc3RyICLQn9GK0YDQstC+INGC0YDRj9Cx0LLQsCDQtNCwINC60L7RgNC40LPQuNGA0LDRgtC1INC40L3QtNC10LrRgdCwINGB0LgiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzIKK21zZ2lkICIiCisiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPiB8IC0ta2VlcC1iYXNlXSAiCisiWzx1cHN0cmVhbT4gWzxicmFuY2g+XV0iCittc2dzdHIgIiIKKyJnaXQgcmViYXNlIFstaV0gW9Ce0J/QptCY0K/igKZdIFstLWV4ZWMg0JrQntCc0JDQndCU0JBdIFstLW9udG8g0J3QntCS0JBf0JHQkNCX0JAgfCAtLWtlZXAtYmFzZV0gIgorIlvQmtCb0J7QnV/QmNCX0KLQntCn0J3QmNCaIFvQmtCb0J7QnV1dIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM0CiBtc2dpZCAiIgogImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dIC0tcm9vdCBbPGJyYW5jaD5dIgogbXNnc3RyICIiCiAiZ2l0IHJlYmFzZSBbLWldIFvQntCf0KbQmNCv4oCmXSBbLS1leGVjINCa0J7QnNCQ0J3QlNCQXSBbLS1vbnRvINCd0J7QktCQX9CR0JDQl9CQXSAtLXJvb3QgW9Ca0JvQntCdXSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzozMworIzogYnVpbHRpbi9yZWJhc2UuYzozNgogbXNnaWQgImdpdCByZWJhc2UgLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXAgfCAtLWVkaXQtdG9kbyIKIG1zZ3N0ciAiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIHwgLS1hYm9ydCB8IC0tc2tpcCB8IC0tZWRpdC10b2RvIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExOQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNzUgYnVpbHRpbi9yZWJhc2UuYzoxOTkgYnVpbHRpbi9yZWJhc2UuYzoyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW51c2FibGUgdG9kbyBsaXN0OiAnJXMnIgorbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LjQt9GC0YDQuNCy0LDQvdC1INC90LAg0YHQv9C40YHRitC60LAg0LfQsCDQuNC30L/RitC70L3QtdC90LjQtTog4oCeJXPigJwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5ICVzIgorbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDRgdGK0LfQtNCw0LTQtSDQstGA0LXQvNC10L3QvdCwINC00LjRgNC10LrRgtC+0YDQuNGPIOKAniVz4oCcIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjI5OAorbXNnaWQgImNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgorbXNnc3RyICLQvdC10LLRitC30LzQvtC20L3QviDQt9Cw0LTQsNCy0LDQvdC1INC90LAg0LjQvdGC0LXRgNCw0LrRgtC40LLQvdCwINGA0LDQsdC+0YLQsCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozNTIKK21zZ2lkICJjb3VsZCBub3QgZ2VuZXJhdGUgdG9kbyBsaXN0IgorbXNnc3RyICLRhNCw0LnQu9GK0YIg0YEg0LrQvtC80LDQvdC00LjRgtC1INC90LUg0LzQvtC20LUg0LTQsCDRgdC1INCz0LXQvdC10YDQuNGA0LAiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzkxCittc2dpZCAiYSBiYXNlIGNvbW1pdCBtdXN0IGJlIHByb3ZpZGVkIHdpdGggLS11cHN0cmVhbSBvciAtLW9udG8iCittc2dzdHIgItC+0L/RhtC40LjRgtC1IOKAni0tdXBzdHJlYW3igJwg0Lgg4oCeLS1vbnRv4oCcINC40LfQuNGB0LrQstCw0YIg0LHQsNC30L7QstC+INC/0L7QtNCw0LLQsNC90LUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDYxCittc2dpZCAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFvQntCf0KbQmNCv4oCmXSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NzQgYnVpbHRpbi9yZWJhc2UuYzoxNTUwCittc2dpZCAiKERFUFJFQ0FURUQpIGtlZXAgZW1wdHkgY29tbWl0cyIKK21zZ3N0ciAiKNCe0KHQotCQ0KDQr9Cb0J4pINC30LDQv9Cw0LfQstCw0L3QtSDQvdCwINC/0YDQsNC30L3QuNGC0LUg0L/QvtC00LDQstCw0L3QuNGPIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ3OCBidWlsdGluL3JldmVydC5jOjEyOAorbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKK21zZ3N0ciAi0L/QvtC30LLQvtC70Y/QstCw0L3QtSDQvdCwINC/0YDQsNC30L3QuCDRgdGK0L7QsdGJ0LXQvdC40Y8g0L/RgNC4INC/0L7QtNCw0LLQsNC90LUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDgwCittc2dpZCAicmViYXNlIG1lcmdlIGNvbW1pdHMiCittc2dzdHIgItC/0YDQtdCx0LDQt9C40YDQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINGB0YrRgSDRgdC70LjQstCw0L3QuNGPIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4MgorbXNnaWQgImtlZXAgb3JpZ2luYWwgYnJhbmNoIHBvaW50cyBvZiBjb3VzaW5zIgorbXNnc3RyICIiCisi0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdC40YLQtSDRgtC+0YfQutC4INC90LAg0YDQsNC30LrQu9C+0L3Rj9Cy0LDQvdC1INC90LAg0YHQtdGB0YLRgNC40L3RgdC60LjRgtC1INC60LvQvtC90LgiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg0Cittc2dpZCAibW92ZSBjb21taXRzIHRoYXQgYmVnaW4gd2l0aCBzcXVhc2ghL2ZpeHVwISIKK21zZ3N0ciAi0L/RgNC10LzQtdGB0YLQstCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LjRj9GC0LAsINC60L7QuNGC0L4g0LfQsNC/0L7Rh9Cy0LDRgiDRgdGK0YEg4oCec3F1YXNoIeKAnC/igJxmaXh1cCHigJwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg1Cittc2dpZCAic2lnbiBjb21taXRzIgorbXNnc3RyICLQv9C+0LTQv9C40YHQstCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LjRj9GC0LAiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg3IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MAorbXNnaWQgImRpc3BsYXkgYSBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCittc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINGB0YLQsNGC0LjRgdGC0LjQutCwINGBINC/0YDQvtC80LXQvdC40YLQtSDQsiDRgdC70LXQtNC10L3QuNGPINC60LvQvtC9IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4OQorbXNnaWQgImNvbnRpbnVlIHJlYmFzZSIKK21zZ3N0ciAi0L/RgNC+0LTRitC70LbQsNCy0LDQvdC1INC90LAg0L/RgNC10LHQsNC30LjRgNCw0L3QtdGC0L4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDkxCittc2dpZCAic2tpcCBjb21taXQiCittc2dzdHIgItC/0YDQtdGB0LrQsNGH0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QtSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTIKK21zZ2lkICJlZGl0IHRoZSB0b2RvIGxpc3QiCittc2dzdHIgItGA0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDRgdC/0LjRgdGK0LrQsCDRgSDQutC+0LzQsNC90LTQuCDQt9CwINC40LfQv9GK0LvQvdC10L3QuNC1IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5NAorbXNnaWQgInNob3cgdGhlIGN1cnJlbnQgcGF0Y2giCittc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINGC0LXQutGD0YnQsNGC0LAg0LrRgNGK0L/QutCwIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5NworbXNnaWQgInNob3J0ZW4gY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICLRgdGK0LrRgNCw0YLQtdC90Lgg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDQuCDQsiDRgdC/0LjRgdGK0LrQsCDQt9CwINC40LfQv9GK0LvQvdC10L3QuNC1IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5OQorbXNnaWQgImV4cGFuZCBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCittc2dzdHIgItC/0YrQu9C90Lgg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDQuCDQsiDRgdC/0LjRgdGK0LrQsCDQt9CwINC40LfQv9GK0LvQvdC10L3QuNC1IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwMQorbXNnaWQgImNoZWNrIHRoZSB0b2RvIGxpc3QiCittc2dzdHIgItC/0YDQvtCy0LXRgNC60LAg0L3QsCDRgdC/0LjRgdGK0LrQsCDQt9CwINC40LfQv9GK0LvQvdC10L3QuNC1IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwMworbXNnaWQgInJlYXJyYW5nZSBmaXh1cC9zcXVhc2ggbGluZXMiCittc2dzdHIgIiIKKyLQv9GA0LXQv9C+0LTRgNC10LbQtNCw0L3QtSDQvdCwINGA0LXQtNC+0LLQtdGC0LUg0LfQsCDQstC60LDRgNCy0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINCyICIKKyLQv9GA0LXQtNGF0L7QtNC90LjRgtC1INC40Lwg0YHRitGBINC4INCx0LXQtyDRgdC80LXQvdC4INC90LAg0YHRitC+0LHRidC10L3QuNC10YLQviIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDUKK21zZ2lkICJpbnNlcnQgZXhlYyBjb21tYW5kcyBpbiB0b2RvIGxpc3QiCittc2dzdHIgItCy0LzRitC60LLQsNC90LUg0L3QsCDQutC+0LzQsNC90LTQuNGC0LUg0LfQsCDQuNC30L/RitC70L3QtdC90LjQtSDQsiDRgdC/0LjRgdGK0LrQsCDQt9CwINC40LfQv9GK0LvQvdC10L3QuNC1IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwNgorbXNnaWQgIm9udG8iCittc2dzdHIgItCy0YrRgNGF0YMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTA5Cittc2dpZCAicmVzdHJpY3QtcmV2aXNpb24iCittc2dzdHIgItC+0LPRgNCw0L3QuNGH0LXQvdCwINCy0LXRgNGB0LjRjyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDkKK21zZ2lkICJyZXN0cmljdCByZXZpc2lvbiIKK21zZ3N0ciAi0L7Qs9GA0LDQvdC40YfQtdC90LAg0LLQtdGA0YHQuNGPIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxMQorbXNnaWQgInNxdWFzaC1vbnRvIgorbXNnc3RyICLQv9C+0LTQsNCy0LDQvdC1LCDQsiDQutC+0LXRgtC+INC00YDRg9Cz0LjRgtC1INC00LAg0YHQtSDQstC60LDRgNCw0YIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTEyCittc2dpZCAic3F1YXNoIG9udG8iCittc2dzdHIgItC/0L7QtNCw0LLQsNC90LUsINCyINC60L7QtdGC0L4g0LTRgNGD0LPQuNGC0LUg0LTQsCDRgdC1INCy0LrQsNGA0LDRgiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTQKK21zZ2lkICJ0aGUgdXBzdHJlYW0gY29tbWl0IgorbXNnc3RyICLQv9C+0LTQsNCy0LDQvdC1INC90LAg0LjQt9GC0L7Rh9C90LjQutCwIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxNgorbXNnaWQgImhlYWQtbmFtZSIKK21zZ3N0ciAi0LjQvNC1INC90LAg0LLRitGA0YXQsCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTYKK21zZ2lkICJoZWFkIG5hbWUiCittc2dzdHIgItC40LzQtSDQvdCwINCy0YrRgNGF0LAiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTIxCittc2dpZCAicmViYXNlIHN0cmF0ZWd5IgorbXNnc3RyICLRgdGC0YDQsNGC0LXQs9C40Y8g0L3QsCDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyMgorbXNnaWQgInN0cmF0ZWd5LW9wdHMiCittc2dzdHIgItC+0L/RhtC40Lgg0L3QsCDRgdGC0YDQsNGC0LXQs9C40Y/RgtCwIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyMworbXNnaWQgInN0cmF0ZWd5IG9wdGlvbnMiCittc2dzdHIgItC+0L/RhtC40Lgg0L3QsCDRgdGC0YDQsNGC0LXQs9C40Y/RgtCwIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNAorbXNnaWQgInN3aXRjaC10byIKK21zZ3N0ciAi0L/RgNC10LzQuNC90LDQstCw0L3QtSDQutGK0LwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI1Cittc2dpZCAidGhlIGJyYW5jaCBvciBjb21taXQgdG8gY2hlY2tvdXQiCittc2dzdHIgItC60LvQvtC90YrRgiwg0LrRitC8INC60L7QudGC0L4g0LTQsCDRgdC1INC/0YDQtdC80LjQvdC1IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNgorbXNnaWQgIm9udG8tbmFtZSIKK21zZ3N0ciAi0LjQvNC1INC90LAg0LHQsNC30LAiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI2Cittc2dpZCAib250byBuYW1lIgorbXNnc3RyICLQuNC80LUg0L3QsCDQsdCw0LfQsCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjcKK21zZ2lkICJjbWQiCittc2dzdHIgItC60L7QvNCw0L3QtNCwIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNworbXNnaWQgInRoZSBjb21tYW5kIHRvIHJ1biIKK21zZ3N0ciAi0LrQvtC80LDQvdC00LAg0LfQsCDQuNC30L/RitC70L3QtdC90LjQtSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MzAgYnVpbHRpbi9yZWJhc2UuYzoxNTg0Cittc2dpZCAiYXV0b21hdGljYWxseSByZS1zY2hlZHVsZSBhbnkgYGV4ZWNgIHRoYXQgZmFpbHMiCittc2dzdHIgIiIKKyLQsNCy0YLQvtC80LDRgtC40YfQvdC+INC/0L7QtNCw0LLQsNC90LUg0LfQsCDQv9C+0LLRgtC+0YDQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg0LrQvtC80LDQvdC00LjRgtC1INC30LDQstGK0YDRiNC40LvQuCDRgSDQvdC10YPRgdC/0LXRhSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1NDYKK21zZ2lkICItLVtuby1dcmViYXNlLWNvdXNpbnMgaGFzIG5vIGVmZmVjdCB3aXRob3V0IC0tcmViYXNlLW1lcmdlcyIKK21zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeLS1bbm8tXXJlYmFzZS1jb3VzaW5z4oCcINC40LfQuNGB0LrQstCw0YIg0L7Qv9GG0LjRj9GC0LAg4oCeLS1yZWJhc2UtbWVyZ2Vz4oCcIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjU2MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyByZXF1aXJlcyBhbiBpbnRlcmFjdGl2ZSByZWJhc2UiCiBtc2dzdHIgIuKAniVz4oCcINC40LfQuNGB0LrQstCwINC40L3RgtC10YDQsNC60YLQuNCy0L3QviDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE3MQorIzogYnVpbHRpbi9yZWJhc2UuYzo2MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCAnb250byc6ICclcyciCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQtdC80LjQvdC1INC60YrQvCDQvdC+0LLQsNGC0LAg0LHQsNC30LAsINC30LDQtNCw0LTQtdC90LAg0YEg4oCeb250b+KAnDog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTg2CisjOiBidWlsdGluL3JlYmFzZS5jOjYyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9yaWctaGVhZDogJyVzJyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0YPQutCw0LfQsNGC0LXQuyDQutGK0Lwg0L/RitGA0LLQvtC90LDRh9Cw0LvQtdC9INCy0YDRitGFIOKAnm9yaWctaGVhZOKAnDog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MjE0CisjOiBidWlsdGluL3JlYmFzZS5jOjY1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyBpbnZhbGlkIGFsbG93X3JlcmVyZV9hdXRvdXBkYXRlOiAnJXMnIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QsNGC0LAg0YHRgtC+0LnQvdC+0YHRgiDQvdCwIOKAnmFsbG93X3JlcmVyZV9hdXRvdXBkYXRl4oCcINGB0LUg0L/RgNC10YHQutCw0YfQsDog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MjU5CisjOiBidWlsdGluL3JlYmFzZS5jOjcyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVhZCAnJXMnIgogbXNnc3RyICLQn9GK0YLRj9GCIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0L7Rh9C10YLQtdC9IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjI3NworIzogYnVpbHRpbi9yZWJhc2UuYzo3NDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHN0b3JlICVzIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LDQt9C10L0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MzM3CisjOiBidWlsdGluL3JlYmFzZS5jOjg1MworbXNnaWQgImNvdWxkIG5vdCBkZXRlcm1pbmUgSEVBRCByZXZpc2lvbiIKK21zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7Qv9GA0LXQtNC10LvQuCDQutGK0Lwg0LrQsNC60LLQviDQtNCwINGB0L7Rh9C4INGD0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6OTc2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MQogbXNnaWQgIiIKICJSZXNvbHZlIGFsbCBjb25mbGljdHMgbWFudWFsbHksIG1hcmsgdGhlbSBhcyByZXNvbHZlZCB3aXRoXG4iCiAiXCJnaXQgYWRkL3JtIDxjb25mbGljdGVkX2ZpbGVzPlwiLCB0aGVuIHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiLlxuIgpAQCAtMTU0MTMsMTcgKzE4ODM2LDQwIEBACiAiVG8gYWJvcnQgYW5kIGdldCBiYWNrIHRvIHRoZSBzdGF0ZSBiZWZvcmUgXCJnaXQgcmViYXNlXCIsIHJ1biBcImdpdCByZWJhc2UgLS0iCiAiYWJvcnRcIi4iCiBtc2dzdHIgIiIKLSLQodC70LXQtCDQutC+0YDQuNCz0LjRgNCw0L3QtdGC0L4g0L3QsCDQutC+0L3RhNC70LjQutGC0LjRgtC1LCDQvtGC0LHQtdC70LXQttC10YLQtSDRgNC10YjQsNCy0LDQvdC10YLQviDQuNC8INGH0YDQtdC3OlxuIgorItCh0LvQtdC0INC60L7RgNC40LPQuNGA0LDQvdC10YLQviDQvdCwINC60L7QvdGE0LvQuNC60YLQuNGC0LUg0L7RgtCx0LXQu9C10LbQtdGC0LUg0YDQtdGI0LDQstCw0L3QtdGC0L4g0LjQvCDRh9GA0LXQtzpcbiIKICLigJ5naXQgYWRkL3JtINCk0JDQmdCbX9ChX9Ca0J7QndCk0JvQmNCa0KLigKbigJwg0Lgg0LjQt9C/0YrQu9C90LXRgtC1IOKAnmdpdCByZWJhc2UgLS1jb250aW51ZeKAnC5cbiIKICLQkNC60L4g0L/RgNC10LTQv9C+0YfQuNGC0LDRgtC1INC00LAg0L/RgNC10YHQutC+0YfQuNGC0LUg0YLQsNC30Lgg0LrRgNGK0L/QutCwLCDQuNC30L/RitC70L3QtdGC0LUg4oCeZ2l0IHJlYmFzZSAtLXNraXDigJwuXG4iCiAi0JfQsCDQtNCwINC+0YLQutCw0LbQtdGC0LUg0L/RgNC10LHQsNC30LjRgNCw0L3QtdGC0L4g0Lgg0LTQsCDRgdC1INCy0YrRgNC90LXRgtC1INC60YrQvCDQv9GK0YDQstC+0L3QsNGH0LDQu9C90L7RgtC+INGB0YrRgdGC0L7Rj9C90LjQtSxcbiIKICLQuNC30L/RitC70L3QtdGC0LUg4oCeZ2l0IHJlYmFzZSAtLWFib3J04oCcLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo1NjEKLW1zZ2lkICJjb3VsZCBub3QgZGV0ZXJtaW5lIEhFQUQgcmV2aXNpb24iCi1tc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0L/RgNC10LTQtdC70Lgg0LrRitC8INC60LDQutCy0L4g0LTQsCDRgdC+0YfQuCDRg9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcIgorIzogYnVpbHRpbi9yZWJhc2UuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJnaXQgZW5jb3VudGVyZWQgYW4gZXJyb3Igd2hpbGUgcHJlcGFyaW5nIHRoZSBwYXRjaGVzIHRvIHJlcGxheVxuIgorInRoZXNlIHJldmlzaW9uczpcbiIKKyJcbiIKKyIgICAgJXNcbiIKKyJcbiIKKyJBcyBhIHJlc3VsdCwgZ2l0IGNhbm5vdCByZWJhc2UgdGhlbS4iCittc2dzdHIgIiIKKyJcbiIKKyLQk9GA0LXRiNC60LAg0L/RgNC4INC/0YDQuNCz0L7RgtCy0Y/QvdC10YLQviDQvdCwINC60YDRitC/0LrQuNGC0LUg0LfQsCDQv9GA0LjQu9Cw0LPQsNC90LXRgtC+INC90LAg0YHQu9C10LTQvdC40YLQtSDQstC10YDRgdC40Lg6XG4iCisiXG4iCisiICAgICVzXG4iCisiXG4iCisi0JIg0YDQtdC30YPQu9GC0LDRgiDRgtC1INC90LUg0LzQvtCz0LDRgiDQtNCwINGB0LUg0L/RgNC10LHQsNC30LjRgNCw0YIuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjc1MworIzogYnVpbHRpbi9yZWJhc2UuYzoxMzgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bnJlY29nbml6ZWQgZW1wdHkgdHlwZSAnJXMnOyB2YWxpZCB2YWx1ZXMgYXJlIFwiZHJvcFwiLCBcImtlZXBcIiwgYW5kIFwiYXNrIgorIlwiLiIKK21zZ3N0ciAiIgorItC90LXQv9GA0LDQstC40LvQvdCwINGB0YLQvtC50L3QvtGB0YIg4oCeJXPigJw6INCy0LDRgNC40LDQvdGC0LjRgtC1INGB0LAg4oCeZHJvcOKAnCAo0L/RgNC10YHQutCw0YfQsNC90LUpLCAiCisi4oCea2VlcOKAnCAo0LfQsNC/0LDQt9Cy0LDQvdC1KSDQuCDigJ5hc2vigJwgKNC/0LjRgtCw0L3QtSkiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJXNcbiIKQEAgLTE1NDQwLDcgKzE4ODg2LDcgQEAKICIgICAgZ2l0IHJlYmFzZSDQmtCb0J7QnVxuIgogIlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjc2OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJZiB5b3Ugd2lzaCB0byBzZXQgdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoaXMgYnJhbmNoIHlvdSBjYW4gZG8gc28gd2l0aDpcbiIKQEAgLTE1NDUzLDE1OSArMTg4OTksMTg1IEBACiAiXG4iCiAiICAgIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMv0JrQm9Ce0J0gJXNcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0NworbXNnaWQgImV4ZWMgY29tbWFuZHMgY2Fubm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgItC60L7QvNCw0L3QtNC40YLQtSDQt9CwINC40LfQv9GK0LvQvdC10L3QuNC1INC90LUg0LzQvtC20LUg0LTQsCDRgdGK0LTRitGA0LbQsNGCINC90L7QstC4INGA0LXQtNC+0LLQtSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDUxCittc2dpZCAiZW1wdHkgZXhlYyBjb21tYW5kIgorbXNnc3RyICLQv9GA0LDQt9C90LAg0LrQvtC80LDQvdC00LAg0LfQsCDQuNC30L/RitC70L3QtdC90LjQtSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgxCiBtc2dpZCAicmViYXNlIG9udG8gZ2l2ZW4gYnJhbmNoIGluc3RlYWQgb2YgdXBzdHJlYW0iCiBtc2dzdHIgItC/0YDQtdCx0LDQt9C40YDQsNC90LUg0LLRitGA0YXRgyDQt9Cw0LTQsNC00LXQvdC40Y8sINCwINC90LUg0YHQu9C10LTQtdC90LjRjyDQutC70L7QvSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MworbXNnaWQgInVzZSB0aGUgbWVyZ2UtYmFzZSBvZiB1cHN0cmVhbSBhbmQgYnJhbmNoIGFzIHRoZSBjdXJyZW50IGJhc2UiCittc2dzdHIgItC30LAg0YLQtdC60YPRidCwINCx0LDQt9CwINC00LAg0YHQtSDQv9C+0LvQt9Cy0LAg0LHQsNC30LDRgtCwINC30LAg0YHQu9C40LLQsNC90LUg0L3QsCDQutC70L7QvdCwINC4INGB0LvQtdC00LXQvdC+0YLQviIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDg1CiBtc2dpZCAiYWxsb3cgcHJlLXJlYmFzZSBob29rIHRvIHJ1biIKIG1zZ3N0ciAi0L/QvtC30LLQvtC70Y/QstCw0L3QtSDQvdCwINC60YPQutCw0YLQsCDQv9GA0LXQtNC4INC/0YDQtdCx0LDQt9C40YDQsNC90LUg0LTQsCDRgdC1INC40LfQv9GK0LvQvdC4IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjgzNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDg3CiBtc2dpZCAiYmUgcXVpZXQuIGltcGxpZXMgLS1uby1zdGF0IgogbXNnc3RyICLQsdC10Lcg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y8uICDQktC60LvRjtGH0LLQsCDQvtC/0YbQuNGP0YLQsCDigJ4tLW5vLXN0YXTigJwiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODM5Ci1tc2dpZCAiZGlzcGxheSBhIGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKLW1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHRgtCw0YLQuNGB0YLQuNC60LAg0YEg0L/RgNC+0LzQtdC90LjRgtC1INCyINGB0LvQtdC00LXQvdC40Y8g0LrQu9C+0L0iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODQyCisjOiBidWlsdGluL3JlYmFzZS5jOjE0OTMKIG1zZ2lkICJkbyBub3Qgc2hvdyBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCiBtc2dzdHIgItCx0LXQtyDQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRgdGC0LDRgtC40YHRgtC40LrQsCDRgSDQv9GA0L7QvNC10L3QuNGC0LUg0LIg0YHQu9C10LTQtdC90LjRjyDQutC70L7QvSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NDUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5NgogbXNnaWQgImFkZCBhIFNpZ25lZC1vZmYtYnk6IGxpbmUgdG8gZWFjaCBjb21taXQiCiBtc2dzdHIgIiIKICLQtNC+0LHQsNCy0Y/QvdC1INC90LAg0YDQtdC0INC30LAg0L/QvtC00L/QuNGBIOKAnlNpZ25lZC1vZmYtYnnigJwg0LIg0YHRitC+0LHRidC10L3QuNC10YLQviDQvdCwINCy0YHRj9C60L4g0L/QvtC00LDQstCw0L3QtSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NDcgYnVpbHRpbi9yZWJhc2UuYzo4NTEgYnVpbHRpbi9yZWJhc2UuYzo4NTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5OCBidWlsdGluL3JlYmFzZS5jOjE1MDIgYnVpbHRpbi9yZWJhc2UuYzoxNTA0CiBtc2dpZCAicGFzc2VkIHRvICdnaXQgYW0nIgogbXNnc3RyICLQv9C+0LTQsNCy0LAg0YHQtSDQvdCwINC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgYW3igJwiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODU1IGJ1aWx0aW4vcmViYXNlLmM6ODU3CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MDYgYnVpbHRpbi9yZWJhc2UuYzoxNTA4CiBtc2dpZCAicGFzc2VkIHRvICdnaXQgYXBwbHknIgogbXNnc3RyICLQv9C+0LTQsNCy0LAg0YHQtSDQvdCwINC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgYXBwbHnigJwiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODU5IGJ1aWx0aW4vcmViYXNlLmM6ODYyCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MTAgYnVpbHRpbi9yZWJhc2UuYzoxNTEzCiBtc2dpZCAiY2hlcnJ5LXBpY2sgYWxsIGNvbW1pdHMsIGV2ZW4gaWYgdW5jaGFuZ2VkIgogbXNnc3RyICLQvtGC0LHQuNGA0LDQvdC1INC90LAg0LLRgdC40YfQutC4INC/0L7QtNCw0LLQsNC90LjRjyDQtNC+0YDQuCDQtNCwINC90Y/QvNCwINC/0YDQvtC80LXQvdC4IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg2NAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTE1CiBtc2dpZCAiY29udGludWUiCiBtc2dzdHIgItC/0YDQvtC00YrQu9C20LDQstCw0L3QtSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NjcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxOAogbXNnaWQgInNraXAgY3VycmVudCBwYXRjaCBhbmQgY29udGludWUiCiBtc2dzdHIgItC/0YDQtdGB0LrQsNGH0LDQvdC1INC90LAg0YLQtdC60YPRidCw0YLQsCDQutGA0YrQv9C60LAg0Lgg0L/RgNC+0LTRitC70LbQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg2OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTIwCiBtc2dpZCAiYWJvcnQgYW5kIGNoZWNrIG91dCB0aGUgb3JpZ2luYWwgYnJhbmNoIgogbXNnc3RyICLQv9GA0LXRg9GB0YLQsNC90L7QstGP0LLQsNC90LUg0Lgg0LLRitC30YHRgtCw0L3QvtCy0Y/QstCw0L3QtSDQvdCwINC/0YrRgNCy0L7QvdCw0YfQsNC70L3QuNGPINC60LvQvtC9IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTIzCiBtc2dpZCAiYWJvcnQgYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcyIKIG1zZ3N0ciAi0L/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INCx0LXQtyDQv9GA0L7QvNGP0L3QsCDQutGK0Lwg0LrQsNC60LLQviDRgdC+0YfQuCDigJ5IRUFE4oCcIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3MworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTI0CiBtc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IGR1cmluZyBhbiBpbnRlcmFjdGl2ZSByZWJhc2UiCiBtc2dzdHIgItGA0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDRhNCw0LnQu9CwINGBINC60L7QvNCw0L3QtNC4INC/0YDQuCDQuNC90YLQtdGA0LDQutGC0LjQstC90L4g0L/RgNC10LHQsNC30LjRgNCw0L3QtSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyNwogbXNnaWQgInNob3cgdGhlIHBhdGNoIGZpbGUgYmVpbmcgYXBwbGllZCBvciBtZXJnZWQiCiBtc2dzdHIgItC/0L7QutCw0LfQstCw0L3QtSDQvdCwINC60YDRitC/0LrQsNGC0LAsINC60L7Rj9GC0L4g0YHQtSDQv9GA0LjQu9Cw0LPQsCDQuNC70Lgg0YHQu9C40LLQsCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzkKLW1zZ2lkICJ1c2UgbWVyZ2luZyBzdHJhdGVnaWVzIHRvIHJlYmFzZSIKLW1zZ3N0ciAi0L/RgNC4INC/0YDQtdCx0LDQt9C40YDQsNC90LUg0LTQsCDRgdC1INC/0L7Qu9C30LLQsCDRgdGC0YDQsNGC0LXQs9C40Y8g0LfQsCDRgdC70LjQstCw0L3QtSIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUzMAorbXNnaWQgInVzZSBhcHBseSBzdHJhdGVnaWVzIHRvIHJlYmFzZSIKK21zZ3N0ciAi0L/RgNC4INC/0YDQtdCx0LDQt9C40YDQsNC90LUg0LTQsCDRgdC1INC/0L7Qu9C30LLQsCDRgdGC0YDQsNGC0LXQs9C40Y8g0YEg0L/RgNC40LvQsNCz0LDQvdC1IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg4MworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTM0Cittc2dpZCAidXNlIG1lcmdpbmcgc3RyYXRlZ2llcyB0byByZWJhc2UiCittc2dzdHIgItC/0YDQuCDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1INC00LAg0YHQtSDQv9C+0LvQt9Cy0LAg0YHRgtGA0LDRgtC10LPQuNGPINGB0YrRgSDRgdC70LjQstCw0L3QtSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTM4CiBtc2dpZCAibGV0IHRoZSB1c2VyIGVkaXQgdGhlIGxpc3Qgb2YgY29tbWl0cyB0byByZWJhc2UiCiBtc2dzdHIgIiIKICLQv9C+0LfQstC+0LvRj9Cy0LDQvdC1INC90LAg0L/QvtGC0YDQtdCx0LjRgtC10LvRjyDQtNCwINGA0LXQtNCw0LrRgtC40YDQsCDRgdC/0LjRgdGK0LrQsCDRgSDQv9C+0LTQsNCy0LDQvdC40Y8g0LfQsCDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg4NwotbXNnaWQgInRyeSB0byByZWNyZWF0ZSBtZXJnZXMgaW5zdGVhZCBvZiBpZ25vcmluZyB0aGVtIgotbXNnc3RyICLQv9GA0LXRgdGK0LfQtNCw0LLQsNC90LUg0L3QsCDRgdC70LjQstCw0L3QuNGP0YLQsCDQstC80LXRgdGC0L4g0LTQsCDRgdC1INC/0YDQtdGB0LrQsNGH0LDRgiIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU0MgorbXNnaWQgIihERVBSRUNBVEVEKSB0cnkgdG8gcmVjcmVhdGUgbWVyZ2VzIGluc3RlYWQgb2YgaWdub3JpbmcgdGhlbSIKK21zZ3N0ciAiKNCe0KHQotCQ0KDQr9Cb0J4pINC/0YDQtdGB0YrQt9C00LDQstCw0L3QtSDQvdCwINGB0LvQuNCy0LDQvdC40Y/RgtCwINCy0LzQtdGB0YLQviDQtNCwINGB0LUg0L/RgNC10YHQutCw0YfQsNGCIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg5MQotbXNnaWQgImFsbG93IHJlcmVyZSB0byB1cGRhdGUgaW5kZXggd2l0aCByZXNvbHZlZCBjb25mbGljdCIKLW1zZ3N0ciAi0L/QvtC30LLQvtC70Y/QstCw0L3QtSDQvdCwIOKAnnJlcmVyZeKAnCDQtNCwINC+0LHQvdC+0LLQuCDQuNC90LTQtdC60YHQsCDRgSDQutC+0YDQtdC60YbQuNGP0YLQsCDQvdCwINC60L7QvdGE0LvQuNC60YIiCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NDcKK21zZ2lkICJob3cgdG8gaGFuZGxlIGNvbW1pdHMgdGhhdCBiZWNvbWUgZW1wdHkiCittc2dzdHIgItC60LDQuiDQtNCwINGB0LUg0L7QsdGA0LDQsdC+0YLQstCw0YIg0L7QutCw0LfQsNC70LjRgtC1INGB0LUg0L/RgNCw0LfQvdC4INC/0L7QtNCw0LLQsNC90LjRjyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4OTQKLW1zZ2lkICJwcmVzZXJ2ZSBlbXB0eSBjb21taXRzIGR1cmluZyByZWJhc2UiCi1tc2dzdHIgItC30LDQv9Cw0LfQstCw0L3QtSDQvdCwINC/0YDQsNC30L3QuNGC0LUg0L/QvtC00LDQstCw0L3QuNGPINC/0YDQuCDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1IgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjg5NgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTU0CiBtc2dpZCAibW92ZSBjb21taXRzIHRoYXQgYmVnaW4gd2l0aCBzcXVhc2ghL2ZpeHVwISB1bmRlciAtaSIKIG1zZ3N0ciAiIgogItC/0YDQtdC80LXRgdGC0LLQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwLCDQutC+0LjRgtC+INC30LDQv9C+0YfQstCw0YIg0YHRitGBIOKAnnNxdWFzaCHigJwv4oCcZml4dXAh4oCcINC/0YDQuCDigJ4taeKAnCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MDIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU2MAogbXNnaWQgImF1dG9tYXRpY2FsbHkgc3Rhc2gvc3Rhc2ggcG9wIGJlZm9yZSBhbmQgYWZ0ZXIiCiBtc2dzdHIgItCw0LLRgtC+0LzQsNGC0LjRh9C90L4g0YHQutCw0YLQsNCy0LDQvdC1L9C/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINGB0LrQsNGC0LDQvdC+0YLQviDQv9GA0LXQtNC4INC4INGB0LvQtdC0INC/0YDQtdCx0LDQt9C40YDQsNC90LUiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTA0CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjIKIG1zZ2lkICJhZGQgZXhlYyBsaW5lcyBhZnRlciBlYWNoIGNvbW1pdCBvZiB0aGUgZWRpdGFibGUgbGlzdCIKIG1zZ3N0ciAiIgogItC00L7QsdCw0LLRj9C90LUg0L3QsCDRgNC10LTQvtCy0LUg0YEg0LrQvtC80LDQvdC00Lgg0LfQsCDQuNC30L/RitC70L3QtdC90LjQtSDRgdC70LXQtCDQstGB0Y/QutC+INC/0L7QtNCw0LLQsNC90LUg0LIgIgogItGA0LXQtNCw0LrRgtC40YDQsNC90LjRjyDRgdC/0LjRgdGK0LoiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTA4CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjYKIG1zZ2lkICJhbGxvdyByZWJhc2luZyBjb21taXRzIHdpdGggZW1wdHkgbWVzc2FnZXMiCiBtc2dzdHIgItC/0L7Qt9Cy0L7Qu9GP0LLQsNC90LUg0L3QsCDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QuNGPINGBINC/0YDQsNC30L3QuCDRgdGK0L7QsdGJ0LXQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTExCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzAKIG1zZ2lkICJ0cnkgdG8gcmViYXNlIG1lcmdlcyBpbnN0ZWFkIG9mIHNraXBwaW5nIHRoZW0iCiBtc2dzdHIgItC+0L/QuNGCINC30LAg0L/RgNC10LHQsNC30LjRgNCw0L3QtSDQvdCwINGB0LvQuNCy0LDQvdC40Y/RgtCwINCy0LzQtdGB0YLQviDRgtC1INC00LAg0YHQtSDQv9GA0LXRgdC60LDRh9Cw0YIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTE0CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzMKIG1zZ2lkICJ1c2UgJ21lcmdlLWJhc2UgLS1mb3JrLXBvaW50JyB0byByZWZpbmUgdXBzdHJlYW0iCiBtc2dzdHIgIiIKICLQt9CwINC00L7Rg9GC0L7Rh9C90Y/QstCw0L3QtdGC0L4g0L3QsCDRgdC70LXQtNC10L3QuNGPINC60LvQvtC9LCDQuNC30L/QvtC70LfQstCw0LnRgtC1OlxuIgogIlxuIgotIiAgICBnaXQgbWVyZ2UtYmFzZSAtLWZvcmstcG9pbnQg0KPQmtCQ0JfQkNCi0JXQmyBb0J/QntCU0JDQktCQ0J3QlV0iCisiICAgIGdpdCBtZXJnZS1iYXNlIC0tZm9yay1wb2ludCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3NQogbXNnaWQgInVzZSB0aGUgZ2l2ZW4gbWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgItC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0LfQsNC00LDQtNC10L3QsNGC0LAg0YHRgtGA0LDRgtC10LPQuNGP0YLQsCDQvdCwINGB0LvQuNCy0LDQvdC1IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxOCBidWlsdGluL3JldmVydC5jOjExMQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTc3IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE1CiBtc2dpZCAib3B0aW9uIgogbXNnc3RyICLQvtC/0YbQuNGPIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxOQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTc4CiBtc2dpZCAicGFzcyB0aGUgYXJndW1lbnQgdGhyb3VnaCB0byB0aGUgbWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgItCw0YDQs9GD0LzQtdC90YLRitGCINC00LAg0YHQtSDQv9C+0LTQsNC00LUg0L3QsCDRgdGC0YDQsNGC0LXQs9C40Y/RgtCwINC30LAg0YHQu9C40LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTIyCisjOiBidWlsdGluL3JlYmFzZS5jOjE1ODEKIG1zZ2lkICJyZWJhc2UgYWxsIHJlYWNoYWJsZSBjb21taXRzIHVwIHRvIHRoZSByb290KHMpIgogbXNnc3RyICLQv9GA0LXQsdCw0LfQuNGA0LDQvdC1INC90LAg0LLRgdC40YfQutC4INC00L7RgdGC0LjQttC40LzQuCDQv9C+0LTQsNCy0LDQvdC40Y8g0LTQviDQvdCw0YfQsNC70L3QvtGC0L4g0LjQvCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkzOAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgZXhlYyAlcyIKLW1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9C/0YrQu9C90LgiCisjOiBidWlsdGluL3JlYmFzZS5jOjE1OTgKK21zZ2lkICIiCisidGhlIHJlYmFzZS51c2VCdWlsdGluIHN1cHBvcnQgaGFzIGJlZW4gcmVtb3ZlZCFcbiIKKyJTZWUgaXRzIGVudHJ5IGluICdnaXQgaGVscCBjb25maWcnIGZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorItC/0L7QtNC00YDRitC20LrQsNGC0LAg0L3QsCDigJ5yZWJhc2UudXNlQnVpbHRpbuKAnCDQtSDQv9GA0LXQvNCw0YXQvdCw0YLQsC5cbiIKKyLQl9CwINC/0L7QstC10YfQtSDQuNC90YTQvtGA0LzQsNGG0LjRjyDQstC40LbRgtC1IOKAnmdpdCBoZWxwIGNvbmZpZ+KAnC4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTU2IGdpdC1sZWdhY3ktcmViYXNlLnNoOjIxMworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjA0CiBtc2dpZCAiSXQgbG9va3MgbGlrZSAnZ2l0IGFtJyBpcyBpbiBwcm9ncmVzcy4gQ2Fubm90IHJlYmFzZS4iCiBtc2dzdHIgIiIKICLQmNC30LPQu9C10LbQtNCwLCDRh9C1INGB0LXQs9CwINGB0LUg0L/RgNC40LvQsNCz0LDRgiDQutGA0YrQv9C60Lgg0YfRgNC10Lcg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdC1hbeKAnC4gINCd0LUg0LzQvtC20LUg0LTQsCAiCiAi0L/RgNC10LHQsNC30LjRgNCw0YLQtSDQsiDQvNC+0LzQtdC90YLQsC4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTk3IGdpdC1sZWdhY3ktcmViYXNlLnNoOjM5NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjQ1Cittc2dpZCAiIgorImdpdCByZWJhc2UgLS1wcmVzZXJ2ZS1tZXJnZXMgaXMgZGVwcmVjYXRlZC4gVXNlIC0tcmViYXNlLW1lcmdlcyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorItCe0L/RhtC40Y/RgtCwIOKAni0tcHJlc2VydmUtbWVyZ2Vz4oCcINC1INC+0YHRgtCw0YDRj9C70LAuICDQn9C+0LvQt9Cy0LDQudGC0LUg4oCeLS1yZWJhc2UtbWVyZ2Vz4oCcINCy0LzQtdGB0YLQviAiCisi0L3QtdGPLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjUwCittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0ta2VlcC1iYXNlJyB3aXRoICctLW9udG8nIgorbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLWtlZXAtYmFzZeKAnCDQuCDigJ4tLW9udG/igJwg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1MgorbXNnaWQgImNhbm5vdCBjb21iaW5lICctLWtlZXAtYmFzZScgd2l0aCAnLS1yb290JyIKK21zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeLS1rZWVwLWJhc2XigJwg0Lgg4oCeLS1yb2904oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NTYKIG1zZ2lkICJObyByZWJhc2UgaW4gcHJvZ3Jlc3M/IgogbXNnc3RyICLQmNC30LPQu9C10LbQtNCwINCyINC80L7QvNC10L3RgtCwINC90LUg0YLQtdGH0LUg0L/RgNC10LHQsNC30LjRgNCw0L3QtSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDAxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjQwNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjYwCiBtc2dpZCAiVGhlIC0tZWRpdC10b2RvIGFjdGlvbiBjYW4gb25seSBiZSB1c2VkIGR1cmluZyBpbnRlcmFjdGl2ZSByZWJhc2UuIgogbXNnc3RyICIiCiAi0J7Qv9GG0LjRj9GC0LAg4oCeLS1lZGl0LXRvZG/igJwg0LUg0LTQvtGB0YLRitC/0L3QsCDRgdCw0LzQviDQv9C+INCy0YDQtdC80LUg0L3QsCDQuNC90YLQtdGA0LDQutGC0LjQstC90L4g0L/RgNC10LHQsNC30LjRgNCw0L3QtS4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTAxNSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY4MwogbXNnaWQgIkNhbm5vdCByZWFkIEhFQUQiCiBtc2dzdHIgItCj0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQvtGH0LXRgtC10L0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTAyOCBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MTYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY5NQogbXNnaWQgIiIKICJZb3UgbXVzdCBlZGl0IGFsbCBtZXJnZSBjb25mbGljdHMgYW5kIHRoZW5cbiIKICJtYXJrIHRoZW0gYXMgcmVzb2x2ZWQgdXNpbmcgZ2l0IGFkZCIKQEAgLTE1NjEzLDIxICsxOTA4NSwxNiBAQAogItCi0YDRj9Cx0LLQsCDQtNCwINGA0LXQtNCw0LrRgtC40YDQsNGC0LUg0LLRgdC40YfQutC4INC60L7QvdGE0LvQuNC60YLQuCDQv9GA0Lgg0YHQu9C40LLQsNC90LXRgtC+LiAg0KHQu9C10LQg0YLQvtCy0LBcbiIKICLQvtGC0LHQtdC70LXQttC10YLQtSDQutC+0YDQuNCz0LjRgNCw0L3QtdGC0L4g0LjQvCDRh9GA0LXQtyDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0IGFkZOKAnCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDQ3CisjOiBidWlsdGluL3JlYmFzZS5jOjE3MTQKIG1zZ2lkICJjb3VsZCBub3QgZGlzY2FyZCB3b3JrdHJlZSBjaGFuZ2VzIgogbXNnc3RyICLQv9GA0L7QvNC10L3QuNGC0LUg0LIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0L3QtSDQvNC+0LPQsNGCINC00LAg0LHRitC00LDRgiDQt9Cw0L3Rg9C70LXQvdC4IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwNjYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTczMwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbW92ZSBiYWNrIHRvICVzIgogbXNnc3RyICLQstGA0YrRidCw0L3QtdGC0L4g0LrRitC8IOKAniVz4oCcINC1INC90LXQstGK0LfQvNC+0LbQvdC+IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwNzcgYnVpbHRpbi9ybS5jOjM2OAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgcmVtb3ZlICclcyciCi1tc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YLRgNC40YIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTEwMworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJdCBzZWVtcyB0aGF0IHRoZXJlIGlzIGFscmVhZHkgYSAlcyBkaXJlY3RvcnksIGFuZFxuIgpAQCAtMTU2NDgsMzUxICsxOTExNSwxNzAgQEAKICLQt9CwXG4iCiAi0LTQsCDQvdC1INC30LDQs9GD0LHQuNGC0LUg0YHQu9GD0YfQsNC50L3QviDQv9GA0L7QvNC10L3QuC5cbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTI0CisjOiBidWlsdGluL3JlYmFzZS5jOjE4MDYKIG1zZ2lkICJzd2l0Y2ggYEMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAnkPigJwg0L7Rh9Cw0LrQstCwINGH0LjRgdC70L4g0LfQsCDQsNGA0LPRg9C80LXQvdGCIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExNjEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmtub3duIG1vZGU6ICVzIgogbXNnc3RyICLQndC10LjQt9Cy0LXRgdGC0L3QsCDRgdGC0YDQsNGC0LXQs9C40Y86IOKAniVz4oCcIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExODMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg2OQogbXNnaWQgIi0tc3RyYXRlZ3kgcmVxdWlyZXMgLS1tZXJnZSBvciAtLWludGVyYWN0aXZlIgogbXNnc3RyICIiCiAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1zdHJhdGVneeKAnCDQuNC30LjRgdC60LLQsCDQvdGP0LrQvtGPINC+0YIg0L7Qv9GG0LjQuNGC0LUg4oCeLS1tZXJnZeKAnCDQuNC70Lgg4oCeLS1pbnRlcmFjdGl2ZeKAnCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjI2CisjOiBidWlsdGluL3JlYmFzZS5jOjE4OTkKK21zZ2lkICJjYW5ub3QgY29tYmluZSBhcHBseSBvcHRpb25zIHdpdGggbWVyZ2Ugb3B0aW9ucyIKK21zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg0LfQsCDigJ5hcHBseeKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCDRgSDQvtC/0YbQuNC40YLQtSDQt9CwINGB0LvQuNCy0LDQvdC1IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5MTIKICMsIGMtZm9ybWF0Cittc2dpZCAiVW5rbm93biByZWJhc2UgYmFja2VuZDogJXMiCittc2dzdHIgItCd0LXQv9C+0LfQvdCw0YLQsCDRgNC10LDQu9C40LfQsNGG0LjRjyDQvdCwINC/0YDQtdCx0LDQt9C40YDQsNC90LU6ICVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5MzcKK21zZ2lkICItLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWMgcmVxdWlyZXMgLS1leGVjIG9yIC0taW50ZXJhY3RpdmUiCittc2dzdHIgIiIKKyLQvtC/0YbQuNGP0YLQsCDigJ4tLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWPigJwg0LjQt9C40YHQutCy0LAg0L3Rj9C60L7RjyDQvtGCINC+0L/RhtC40LjRgtC1IOKAni0tZXhlY+KAnCDQuNC70Lgg4oCeLS0iCisiaW50ZXJhY3RpdmXigJwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk1NworbXNnaWQgImNhbm5vdCBjb21iaW5lICctLXByZXNlcnZlLW1lcmdlcycgd2l0aCAnLS1yZWJhc2UtbWVyZ2VzJyIKK21zZ3N0ciAi0L7Qv9GG0LjQuNGC0LUg4oCeLS1wcmVzZXJ2ZS1tZXJnZXPigJwg0Lgg4oCeLS1yZWJhc2UtbWVyZ2Vz4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5NjEKIG1zZ2lkICIiCi0iZXJyb3I6IGNhbm5vdCBjb21iaW5lIGludGVyYWN0aXZlIG9wdGlvbnMgKC0taW50ZXJhY3RpdmUsIC0tZXhlYywgLS1yZWJhc2UtIgotIm1lcmdlcywgLS1wcmVzZXJ2ZS1tZXJnZXMsIC0ta2VlcC1lbXB0eSwgLS1yb290ICsgLS1vbnRvKSB3aXRoIGFtIG9wdGlvbnMgIgotIiglcykiCisiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXByZXNlcnZlLW1lcmdlcycgd2l0aCAnLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjJyIKIG1zZ3N0ciAiIgotItCz0YDQtdGI0LrQsDog0L7Qv9GG0LjQuNGC0LUg0LfQsCDQuNC90YLQtdGA0LDQutGC0LjQstC90LAg0YDQsNCx0L7RgtCwICjigJ4tLWludGVyYWN0aXZl4oCcLCDigJ4tLWV4ZWPigJwsIOKAni0tcmViYXNlLSIKLSJtZXJnZXPigJwsICDigJ4tLXByZXNlcnZlLW1lcmdlc+KAnCwg4oCeLS1rZWVwLWVtcHR54oCcLCDigJ4tLXJvb3TigJwg0Lgg4oCeLS1vbnRv4oCcKSDRgdCwICIKLSLQvdC10YHRitCy0LzQtdGB0YLQuNC80Lgg0YEg0L7Qv9GG0LjQuNGC0LUg0LfQsCDQutC+0LzQsNC90LTQsNGC0LAg4oCeYW3igJwgKOKAniVz4oCcKSIKKyLQk9Cg0JXQqNCa0JA6INC+0L/RhtC40LjRgtC1IOKAni0tcHJlc2VydmUtbWVyZ2Vz4oCcINC4IOKAni0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlY+KAnCDRgdCwICIKKyLQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTIzMQotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iZXJyb3I6IGNhbm5vdCBjb21iaW5lIG1lcmdlIG9wdGlvbnMgKC0tbWVyZ2UsIC0tc3RyYXRlZ3ksIC0tc3RyYXRlZ3ktb3B0aW9uKSAiCi0id2l0aCBhbSBvcHRpb25zICglcykiCi1tc2dzdHIgIiIKLSLQs9GA0LXRiNC60LA6INC+0L/RhtC40LjRgtC1INC30LAg0YHQu9C40LLQsNC90LUgKOKAni0tbWVyZ2XigJwsIOKAni0tc3RyYXRlZ3nigJwg0Lgg4oCeLS1zdHJhdGVneS1vcHRpb27igJwpICIKLSLRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCDRgSDQvtC/0YbQuNC40YLQtSDQt9CwINC60L7QvNCw0L3QtNCw0YLQsCDigJ5hbeKAnCAo4oCeJXPigJwpIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyNTEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTM2Ci1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXByZXNlcnZlLW1lcmdlcycgd2l0aCAnLS1yZWJhc2UtbWVyZ2VzJyIKLW1zZ3N0ciAiIgotItCz0YDQtdGI0LrQsDog0L7Qv9GG0LjQuNGC0LUg4oCeLS1wcmVzZXJ2ZS1tZXJnZXPigJwg0Lgg4oCeLS1yZWJhc2UtbWVyZ2Vz4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyNTYgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTQyCi1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3ktb3B0aW9uJyIKLW1zZ3N0ciAiIgotItCz0YDQtdGI0LrQsDog0L7Qv9GG0LjQuNGC0LUg4oCeLS1yZWJhc2UtbWVyZ2Vz4oCcINC4IOKAni0tc3RyYXRlZ3ktb3B0aW9u4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyNTkgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTQ0Ci1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3knIgotbXNnc3RyICLQs9GA0LXRiNC60LA6INC+0L/RhtC40LjRgtC1IOKAni0tcmViYXNlLW1lcmdlc+KAnCDQuCDigJ4tLXN0cmF0ZWd54oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyODMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICclcyciCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQtdC9INGB0LvQtdC00LXQvSDQutC70L7QvTog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI4OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxOTkxCiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBuZXcgcm9vdCBjb21taXQiCiBtc2dzdHIgItCd0LUg0LzQvtC20LUg0LTQsCDRgdC1INGB0YrQt9C00LDQtNC1INC90L7QstC+INC90LDRh9Cw0LvQvdC+INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTMwNworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IG5lZWQgZXhhY3RseSBvbmUgbWVyZ2UgYmFzZSB3aXRoIGJyYW5jaCIKK21zZ3N0ciAi4oCeJXPigJw6INC40LfQuNGB0LrQstCwINGB0LUg0YLQvtGH0L3QviDQtdC00L3QsCDQsdCw0LfQsCDQt9CwINGB0LvQuNCy0LDQvdC1INGBINC60LvQvtC90LAiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAyMAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiBuZWVkIGV4YWN0bHkgb25lIG1lcmdlIGJhc2UiCiBtc2dzdHIgIuKAniVz4oCcOiDQuNC30LjRgdC60LLQsCDRgdC1INGC0L7Rh9C90L4g0LXQtNC90LAg0LHQsNC30LAg0LfQsCDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzMTQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJEb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIGNvbW1pdCAnJXMnIgogbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ4lc+KAnCDQvdC1INGB0L7Rh9C4INC60YrQvCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzMzkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICclcyciCiBtc2dzdHIgItCk0JDQotCQ0JvQndCQINCT0KDQldCo0JrQkDog0L3QtSDRgdGK0YnQtdGB0YLQstGD0LLQsCDQutC70L7QvSDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzQ3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzozNwotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MzAKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA2MiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVmOiAlcyIKIG1zZ3N0ciAi0KLQsNC60YrQsiDRg9C60LDQt9Cw0YLQtdC7INC90Y/QvNCwOiAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzU5CisjOiBidWlsdGluL3JlYmFzZS5jOjIwNzMKIG1zZ2lkICJDb3VsZCBub3QgcmVzb2x2ZSBIRUFEIHRvIGEgcmV2aXNpb24iCiBtc2dzdHIgItCf0L7QtNCw0LLQsNC90LXRgtC+LCDRgdC+0YfQtdC90L4g0L7RgiDRg9C60LDQt9Cw0YLQtdC70Y8g4oCeSEVBROKAnCwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgtC+IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzOTkgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjY1CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMTEKIG1zZ2lkICJDYW5ub3QgYXV0b3N0YXNoIgogbXNnc3RyICLQndC1INC80L7QttC1INC00LAg0YHQtSDRgdC60LDRgtCw0LUg0LDQstGC0L7QvNCw0YLQuNGH0L3QviIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDAyCisjOiBidWlsdGluL3JlYmFzZS5jOjIxMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5leHBlY3RlZCBzdGFzaCByZXNwb25zZTogJyVzJyIKIG1zZ3N0ciAi0J3QtdC+0YfQsNC60LLQsNC9INGA0LXQt9GD0LvRgtCw0YIg0L/RgNC4INGB0LrQsNGC0LDQstCw0L3QtTog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQwOAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5IGZvciAnJXMnIgogbXNnc3RyICLQlNC40YDQtdC60YLQvtGA0LjRj9GC0LAg0LfQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRitC30LTQsNC00LXQvdCwIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJXNcbiIKIG1zZ3N0ciAi0JDQstGC0L7QvNCw0YLQuNGH0L3QviDRgdC60LDRgtCw0L3Qvjog4oCeJXPigJxcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMjYKIG1zZ2lkICJjb3VsZCBub3QgcmVzZXQgLS1oYXJkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDigJ5naXQgcmVzZXQgLS1oYXJk4oCcIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MTUgYnVpbHRpbi9yZXNldC5jOjExMwotIywgYy1mb3JtYXQKLW1zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKLW1zZ3N0ciAi0KPQutCw0LfQsNGC0LXQu9GP0YIg4oCeSEVBROKAnCDRgdC+0YfQuCDQutGK0Lwg4oCeJXPigJwiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQzMSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2NzQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEzNQogbXNnaWQgIlBsZWFzZSBjb21taXQgb3Igc3Rhc2ggdGhlbS4iCiBtc2dzdHIgItCf0YDQvtC80LXQvdC40YLQtSDRgtGA0Y/QsdCy0LAg0LjQu9C4INC00LAg0YHQtSDQv9C+0LTQsNC00LDRgiwg0LjQu9C4INC00LAg0YHQtSDRgdC60LDRgtCw0Y/Rgi4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ1OAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyIKLW1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LDQvdCw0LvQuNC30LjRgNCwIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0NzAKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc3dpdGNoIHRvICVzIgogbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9GA0LXQvNC40L3QtSDQutGK0Lwg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2OTcKLSMsIHNoLWZvcm1hdAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTgwCiBtc2dpZCAiSEVBRCBpcyB1cCB0byBkYXRlLiIKIG1zZ3N0ciAi0KPQutCw0LfQsNGC0LXQu9GP0YIg4oCeSEVBROKAnCDQtSDQvdCw0L/RitC70L3QviDQsNC60YLRg9Cw0LvQtdC9LiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgzCisjOiBidWlsdGluL3JlYmFzZS5jOjIxODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3VycmVudCBicmFuY2ggJXMgaXMgdXAgdG8gZGF0ZS5cbiIKIG1zZ3N0ciAi0KLQtdC60YPRidC40Y/RgiDQutC70L7QvSDigJ4lc+KAnCDQtSDQvdCw0L/RitC70L3QviDQsNC60YLRg9Cw0LvQtdC9LlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0OTEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzA3Ci0jLCBzaC1mb3JtYXQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE5MAogbXNnaWQgIkhFQUQgaXMgdXAgdG8gZGF0ZSwgcmViYXNlIGZvcmNlZC4iCi1tc2dzdHIgItCj0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0LUg0L3QsNC/0YrQu9C90L4g0LDQutGC0YPQsNC70LXQvS4gINCf0YDQtdCx0LDQt9C40YDQsNC90LXRgtC+INC1INC/0YDQuNC90YPQtNC40YLQtdC70L3Qvi4iCittc2dzdHIgItCj0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0LUg0L3QsNC/0YrQu9C90L4g0LDQutGC0YPQsNC70LXQvSDigJQg0L/RgNC40L3Rg9C00LjRgtC10LvQvdC+INC/0YDQtdCx0LDQt9C40YDQsNC90LUiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkN1cnJlbnQgYnJhbmNoICVzIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuXG4iCi1tc2dzdHIgIiIKLSLQotC10LrRg9GJ0LjRj9GCINC60LvQvtC9IOKAniVz4oCcINC1INC90LDQv9GK0LvQvdC+INCw0LrRgtGD0LDQu9C10L0uICDQn9GA0LXQsdCw0LfQuNGA0LDQvdC10YLQviDQtSDQv9GA0LjQvdGD0LTQuNGC0LXQu9C90L4uXG4iCittc2dzdHIgItCi0LXQutGD0YnQuNGP0YIg0LrQu9C+0L0g4oCeJXPigJwg0LUg0L3QsNC/0YrQu9C90L4g0LDQutGC0YPQsNC70LXQvSDigJQg0L/RgNC40L3Rg9C00LjRgtC10LvQvdC+INC/0YDQtdCx0LDQt9C40YDQsNC90LVcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTAxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjIwOAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMjAwCiBtc2dpZCAiVGhlIHByZS1yZWJhc2UgaG9vayByZWZ1c2VkIHRvIHJlYmFzZS4iCiBtc2dzdHIgItCa0YPQutCw0YLQsCDQt9CwINC40LfQv9GK0LvQvdC10L3QuNC1INC/0YDQtdC00Lgg0L/RgNC10LHQsNC30LjRgNCw0L3QtSDQvtGC0YXQstGK0YDQu9C4INC/0YDQtdCx0LDQt9C40YDQsNC90LXRgtC+LiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTA4CisjOiBidWlsdGluL3JlYmFzZS5jOjIyMDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2hhbmdlcyB0byAlczpcbiIKIG1zZ3N0ciAi0J/RgNC+0LzQtdC90LjRgtC1INCyIOKAniVz4oCcOlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJDaGFuZ2VzIGZyb20gJXMgdG8gJXM6XG4iCiBtc2dzdHIgItCf0YDQvtC80LXQvdC40YLQtSDQvtGCIOKAniVz4oCcINC60YrQvCDigJ4lc+KAnDpcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTM2CisjOiBidWlsdGluL3JlYmFzZS5jOjIyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uXG4iCiBtc2dzdHIgIiIKICLQn9GK0YDQstC+LCDRg9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINC30LDQv9C+0YfQstCwINC00LAg0YHQvtGH0Lgg0LrRitC8INCx0LDQt9Cw0YLQsCwg0LLRitGA0YXRgyDQutC+0Y/RgtC+ICIKICLQv9GA0LXQsdCw0LfQuNGA0LDRgtC14oCmXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTU0MworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjQ0CiBtc2dpZCAiQ291bGQgbm90IGRldGFjaCBIRUFEIgotbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0YLQtNC10LvQuCIKK21zZ3N0ciAi0KPQutCw0LfQsNGC0LXQu9GP0YIg4oCeSEVBROKAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtGC0LTQtdC70Z0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTU1MgorIzogYnVpbHRpbi9yZWJhc2UuYzoyMjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhc3QtZm9yd2FyZGVkICVzIHRvICVzLlxuIgogbXNnc3RyICLQn9GA0LXQstGK0YDRgtCw0L3QtSDQvdCwIOKAniVz4oCcINC60YrQvCDigJ4lc+KAnC5cbiIKIAotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MjQKLW1zZ2lkICJubyBIRUFEPyIKLW1zZ3N0ciAi0JvQuNC/0YHQstCwINGD0LrQsNC30LDRgtC10Lsg4oCeSEVBROKAnCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6NTEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJXMiCi1tc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INGB0YrQt9C00LDQtNC1INCy0YDQtdC80LXQvdC90LAg0LTQuNGA0LXQutGC0L7RgNC40Y8g4oCeJXPigJwiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjU3Ci1tc2dpZCAiY291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCi1tc2dzdHIgItC90LXQstGK0LfQvNC+0LbQvdC+INC30LDQtNCw0LLQsNC90LUg0L3QsCDQuNC90YLQtdGA0LDQutGC0LjQstC90LAg0YDQsNCx0L7RgtCwIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxMDEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IG9wZW4gJXMiCi1tc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0YLQstC+0YDQuCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTE0Ci1tc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIHRvZG8gbGlzdCIKLW1zZ3N0ciAi0YTQsNC50LvRitGCINGBINC60L7QvNCw0L3QtNC40YLQtSDQvdC1INC80L7QttC1INC00LAg0YHQtSDQs9C10L3QtdGA0LjRgNCwIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxMjkKLW1zZ2lkICJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPG9wdGlvbnM+XSIKLW1zZ3N0ciAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgW9Ce0J/QptCY0K/igKZdIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNDgKLW1zZ2lkICJrZWVwIGVtcHR5IGNvbW1pdHMiCi1tc2dzdHIgItC30LDQv9Cw0LfQstCw0L3QtSDQvdCwINC/0YDQsNC30L3QuNGC0LUg0L/QvtC00LDQstCw0L3QuNGPIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTAgYnVpbHRpbi9yZXZlcnQuYzoxMjQKLW1zZ2lkICJhbGxvdyBjb21taXRzIHdpdGggZW1wdHkgbWVzc2FnZXMiCi1tc2dzdHIgItC/0L7Qt9Cy0L7Qu9GP0LLQsNC90LUg0L3QsCDQv9GA0LDQt9C90Lgg0YHRitC+0LHRidC10L3QuNGPINC/0YDQuCDQv9C+0LTQsNCy0LDQvdC1IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTEKLW1zZ2lkICJyZWJhc2UgbWVyZ2UgY29tbWl0cyIKLW1zZ3N0ciAi0L/RgNC10LHQsNC30LjRgNCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0YHRitGBINGB0LvQuNCy0LDQvdC40Y8iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1MwotbXNnaWQgImtlZXAgb3JpZ2luYWwgYnJhbmNoIHBvaW50cyBvZiBjb3VzaW5zIgotbXNnc3RyICIiCi0i0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdC40YLQtSDRgtC+0YfQutC4INC90LAg0YDQsNC30LrQu9C+0L3Rj9Cy0LDQvdC1INC90LAg0YHQtdGB0YLRgNC40L3RgdC60LjRgtC1INC60LvQvtC90LgiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1NQotbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEiCi1tc2dzdHIgItC/0YDQtdC80LXRgdGC0LLQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwLCDQutC+0LjRgtC+INC30LDQv9C+0YfQstCw0YIg0YHRitGBIOKAnnNxdWFzaCHigJwv4oCcZml4dXAh4oCcIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTYKLW1zZ2lkICJzaWduIGNvbW1pdHMiCi1tc2dzdHIgItC/0L7QtNC/0LjRgdCy0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QuNGP0YLQsCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTU4Ci1tc2dpZCAiY29udGludWUgcmViYXNlIgotbXNnc3RyICLQv9GA0L7QtNGK0LvQttCw0LLQsNC90LUg0L3QsCDQv9GA0LXQsdCw0LfQuNGA0LDQvdC10YLQviIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYwCi1tc2dpZCAic2tpcCBjb21taXQiCi1tc2dzdHIgItC/0YDQtdGB0LrQsNGH0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QtSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYxCi1tc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICLRgNC10LTQsNC60YLQuNGA0LDQvdC1INC90LAg0YHQv9C40YHRitC60LAg0YEg0LrQvtC80LDQvdC00Lgg0LfQsCDQuNC30L/RitC70L3QtdC90LjQtSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYzCi1tc2dpZCAic2hvdyB0aGUgY3VycmVudCBwYXRjaCIKLW1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YLQtdC60YPRidCw0YLQsCDQutGA0YrQv9C60LAiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2NgotbXNnaWQgInNob3J0ZW4gY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICLRgdGK0LrRgNCw0YLQtdC90Lgg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDQuCDQsiDRgdC/0LjRgdGK0LrQsCDQt9CwINC40LfQv9GK0LvQvdC10L3QuNC1IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjgKLW1zZ2lkICJleHBhbmQgY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICLQv9GK0LvQvdC4INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0Lgg0LIg0YHQv9C40YHRitC60LAg0LfQsCDQuNC30L/RitC70L3QtdC90LjQtSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTcwCi1tc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAi0L/RgNC+0LLQtdGA0LrQsCDQvdCwINGB0L/QuNGB0YrQutCwINC30LAg0LjQt9C/0YrQu9C90LXQvdC40LUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3MgotbXNnaWQgInJlYXJyYW5nZSBmaXh1cC9zcXVhc2ggbGluZXMiCi1tc2dzdHIgIiIKLSLQv9GA0LXQv9C+0LTRgNC10LbQtNCw0L3QtSDQvdCwINGA0LXQtNC+0LLQtdGC0LUg0LfQsCDQstC60LDRgNCy0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINCyICIKLSLQv9GA0LXQtNGF0L7QtNC90LjRgtC1INC40Lwg0YHRitGBINC4INCx0LXQtyDRgdC80LXQvdC4INC90LAg0YHRitC+0LHRidC10L3QuNC10YLQviIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc0Ci1tc2dpZCAiaW5zZXJ0IGV4ZWMgY29tbWFuZHMgaW4gdG9kbyBsaXN0IgotbXNnc3RyICLQstC80YrQutCy0LDQvdC1INC90LAg0LrQvtC80LDQvdC00LjRgtC1INC30LAg0LjQt9C/0YrQu9C90LXQvdC40LUg0LIg0YHQv9C40YHRitC60LAg0LfQsCDQuNC30L/RitC70L3QtdC90LjQtSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc1Ci1tc2dpZCAib250byIKLW1zZ3N0ciAi0LLRitGA0YXRgyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc3Ci1tc2dpZCAicmVzdHJpY3QtcmV2aXNpb24iCi1tc2dzdHIgItC+0LPRgNCw0L3QuNGH0LXQvdCwINCy0LXRgNGB0LjRjyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc3Ci1tc2dpZCAicmVzdHJpY3QgcmV2aXNpb24iCi1tc2dzdHIgItC+0LPRgNCw0L3QuNGH0LXQvdCwINCy0LXRgNGB0LjRjyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc4Ci1tc2dpZCAic3F1YXNoLW9udG8iCi1tc2dzdHIgItC/0L7QtNCw0LLQsNC90LUsINCyINC60L7QtdGC0L4g0LTRgNGD0LPQuNGC0LUg0LTQsCDRgdC1INCy0LrQsNGA0LDRgiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc5Ci1tc2dpZCAic3F1YXNoIG9udG8iCi1tc2dzdHIgItC/0L7QtNCw0LLQsNC90LUsINCyINC60L7QtdGC0L4g0LTRgNGD0LPQuNGC0LUg0LTQsCDRgdC1INCy0LrQsNGA0LDRgiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgxCi1tc2dpZCAidGhlIHVwc3RyZWFtIGNvbW1pdCIKLW1zZ3N0ciAi0L/QvtC00LDQstCw0L3QtSDQvdCwINC40LfRgtC+0YfQvdC40LrQsCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgyCi1tc2dpZCAiaGVhZC1uYW1lIgotbXNnc3RyICLQuNC80LUg0L3QsCDQstGK0YDRhdCwIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODIKLW1zZ2lkICJoZWFkIG5hbWUiCi1tc2dzdHIgItC40LzQtSDQvdCwINCy0YrRgNGF0LAiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4NwotbXNnaWQgInJlYmFzZSBzdHJhdGVneSIKLW1zZ3N0ciAi0YHRgtGA0LDRgtC10LPQuNGPINC90LAg0L/RgNC10LHQsNC30LjRgNCw0L3QtSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg4Ci1tc2dpZCAic3RyYXRlZ3ktb3B0cyIKLW1zZ3N0ciAi0L7Qv9GG0LjQuCDQvdCwINGB0YLRgNCw0YLQtdCz0LjRj9GC0LAiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4OQotbXNnaWQgInN0cmF0ZWd5IG9wdGlvbnMiCi1tc2dzdHIgItC+0L/RhtC40Lgg0L3QsCDRgdGC0YDQsNGC0LXQs9C40Y/RgtCwIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTAKLW1zZ2lkICJzd2l0Y2gtdG8iCi1tc2dzdHIgItC/0YDQtdC80LjQvdCw0LLQsNC90LUg0LrRitC8IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTEKLW1zZ2lkICJ0aGUgYnJhbmNoIG9yIGNvbW1pdCB0byBjaGVja291dCIKLW1zZ3N0ciAi0LrQu9C+0L3RitGCLCDQutGK0Lwg0LrQvtC50YLQviDQtNCwINGB0LUg0L/RgNC10LzQuNC90LUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MgotbXNnaWQgIm9udG8tbmFtZSIKLW1zZ3N0ciAi0LjQvNC1INC90LAg0LHQsNC30LAiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MgotbXNnaWQgIm9udG8gbmFtZSIKLW1zZ3N0ciAi0LjQvNC1INC90LAg0LHQsNC30LAiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MwotbXNnaWQgImNtZCIKLW1zZ3N0ciAi0LrQvtC80LDQvdC00LAiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MwotbXNnaWQgInRoZSBjb21tYW5kIHRvIHJ1biIKLW1zZ3N0ciAi0LrQvtC80LDQvdC00LAg0LfQsCDQuNC30L/RitC70L3QtdC90LjQtSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MjIwCi1tc2dpZCAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIGhhcyBubyBlZmZlY3Qgd2l0aG91dCAtLXJlYmFzZS1tZXJnZXMiCi1tc2dzdHIgItC+0L/RhtC40LjRgtC1IOKAni0tW25vLV1yZWJhc2UtY291c2luc+KAnCDQuNC30LjRgdC60LLQsNGCINC+0L/RhtC40Y/RgtCwIOKAni0tcmViYXNlLW1lcmdlc+KAnCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MjI2Ci1tc2dpZCAiYSBiYXNlIGNvbW1pdCBtdXN0IGJlIHByb3ZpZGVkIHdpdGggLS11cHN0cmVhbSBvciAtLW9udG8iCi1tc2dzdHIgItC+0L/RhtC40LjRgtC1IOKAni0tdXBzdHJlYW3igJwg0Lgg4oCeLS1vbnRv4oCcINC40LfQuNGB0LrQstCw0YIg0LHQsNC30L7QstC+INC/0L7QtNCw0LLQsNC90LUiCi0KICM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MzMKIG1zZ2lkICJnaXQgcmVjZWl2ZS1wYWNrIDxnaXQtZGlyPiIKIG1zZ3N0ciAiZ2l0IHJlY2VpdmUtcGFjayDQlNCY0KDQldCa0KLQntCg0JjQr1/QndCQX0dJVCIKIAotIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzo4MzAKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODIxCiBtc2dpZCAiIgogIkJ5IGRlZmF1bHQsIHVwZGF0aW5nIHRoZSBjdXJyZW50IGJyYW5jaCBpbiBhIG5vbi1iYXJlIHJlcG9zaXRvcnlcbiIKICJpcyBkZW5pZWQsIGJlY2F1c2UgaXQgd2lsbCBtYWtlIHRoZSBpbmRleCBhbmQgd29yayB0cmVlIGluY29uc2lzdGVudFxuIgpAQCAtMTYwMjUsNyArMTkzMTEsNyBAQAogItCX0LAg0LTQsCDQt9Cw0LPQu9GD0YjQuNGC0LUg0YLQvtCy0LAg0YHRitC+0LHRidC10L3QuNC1LCDQutCw0YLQviDQt9Cw0L/QsNC30LjRgtC1INGB0YLQsNC90LTQsNGA0YLQvdC+0YLQviDQv9C+0LLQtdC00LXQvdC40LUsXG4iCiAi0LfQsNC00LDQudGC0LUg0L3QsNGB0YLRgNC+0LnQutCw0YLQsCDigJ5yZWNlaXZlLmRlbnlDdXJyZW50QnJhbmNo4oCcINC00LAg0LUg4oCecmVmdXNl4oCcICjQvtGC0LrQsNC3KS4iCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODUwCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjg0MQogbXNnaWQgIiIKICJCeSBkZWZhdWx0LCBkZWxldGluZyB0aGUgY3VycmVudCBicmFuY2ggaXMgZGVuaWVkLCBiZWNhdXNlIHRoZSBuZXh0XG4iCiAiJ2dpdCBjbG9uZScgd29uJ3QgcmVzdWx0IGluIGFueSBmaWxlIGNoZWNrZWQgb3V0LCBjYXVzaW5nIGNvbmZ1c2lvbi5cbiIKQEAgLTE2MDQ2LDI0ICsxOTMzMiw3OCBAQAogItCX0LAg0LTQsCDQt9Cw0LPQu9GD0YjQuNGC0LUg0YLQvtCy0LAg0YHRitC+0LHRidC10L3QuNC1LCDQt9Cw0LTQsNC50YLQtSDQvdCw0YHRgtGA0L7QudC60LDRgtCwXG4iCiAi4oCecmVjZWl2ZS5kZW55RGVsZXRlQ3VycmVudOKAnCDQtNCwINC1IOKAnnJlZnVzZeKAnCAo0L7RgtC60LDQtykuIgogCi0jOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5MjkKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTkzOAogbXNnaWQgInF1aWV0IgogbXNnc3RyICLQsdC10Lcg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y8iCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk0MworIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTUyCiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIGRpcmVjdG9yeS4iCiBtc2dzdHIgItCi0YDRj9Cx0LLQsCDQtNCwINGD0LrQsNC20LXRgtC1INC00LjRgNC10LrRgtC+0YDQuNGPLiIKIAotIzogYnVpbHRpbi9yZWZsb2cuYzo1NjMgYnVpbHRpbi9yZWZsb2cuYzo1NjgKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MTcKK21zZ2lkICIiCisiZ2l0IHJlZmxvZyBleHBpcmUgWy0tZXhwaXJlPTx0aW1lPl0gWy0tZXhwaXJlLXVucmVhY2hhYmxlPTx0aW1lPl0gWy0tIgorInJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tc3RhbGUtZml4XSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdIFstLWFsbF0gIgorIjxyZWZzPi4uLiIKK21zZ3N0ciAiIgorImdpdCByZWZsb2cgZXhwaXJlIFstLWV4cGlyZT3QktCg0JXQnNCVXSBbLS1leHBpcmUtdW5yZWFjaGFibGU90JLQoNCV0JzQlV0gWy0tcmV3cml0ZV0gIgorIlstLXVwZGF0ZXJlZl0gWy0tc3RhbGUtZml4XSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdIFstLWFsbF0g0KPQmtCQ0JfQkNCi0JXQm+KApiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzoyMgorbXNnaWQgIiIKKyJnaXQgcmVmbG9nIGRlbGV0ZSBbLS1yZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gIgorIjxyZWZzPi4uLiIKK21zZ3N0ciAiIgorImdpdCByZWZsb2cgZGVsZXRlIFstLXJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSAiCisi0KPQmtCQ0JfQkNCi0JXQm+KApiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzoyNQorbXNnaWQgImdpdCByZWZsb2cgZXhpc3RzIDxyZWY+IgorbXNnc3RyICJnaXQgcmVmbG9nIGV4aXN0cyDQo9Ca0JDQl9CQ0KLQldCbIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjU2OCBidWlsdGluL3JlZmxvZy5jOjU3MwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRpbWVzdGFtcCIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQtSDQv9GA0LDQstC40LvQvdCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCDQstGA0LXQvNC1IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2CisjOiBidWlsdGluL3JlZmxvZy5jOjYwNgorIywgYy1mb3JtYXQKK21zZ2lkICJNYXJraW5nIHJlYWNoYWJsZSBvYmplY3RzLi4uIgorbXNnc3RyICLQntGC0LHQtdC70Y/Qt9Cy0LDQvdC1INC90LAg0LTQvtGB0YLQuNC20LjQvNC40YLQtSDQvtCx0LXQutGC0LjigKYiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBvaW50cyBub3doZXJlISIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDRgdC+0YfQuCDQvdCw0L3QuNC60YrQtNC1ISIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo2OTYKK21zZ2lkICJubyByZWZsb2cgc3BlY2lmaWVkIHRvIGRlbGV0ZSIKK21zZ3N0ciAi0L3QtSDQtSDRg9C60LDQt9Cw0L0g0LbRg9GA0L3QsNC7INGBINC/0L7QtNCw0LLQsNC90LjRjyDQt9CwINC40LfRgtGA0LjQstCw0L3QtSIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgcmVmbG9nOiAlcyIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQtSDQttGD0YDQvdCw0Lsg0YEg0L/QvtC00LDQstCw0L3QuNGPIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjcxMAorIywgYy1mb3JtYXQKK21zZ2lkICJubyByZWZsb2cgZm9yICclcyciCittc2dzdHIgItC70LjQv9GB0LLQsCDQttGD0YDQvdCw0Lsg0YEg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQt9CwIOKAniVz4oCcIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc1NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZiBmb3JtYXQ6ICVzIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDRhNC+0YDQvNCw0YIg0L3QsCDRg9C60LDQt9Cw0YLQtdC7OiAlcyIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3NjUKK21zZ2lkICJnaXQgcmVmbG9nIFsgc2hvdyB8IGV4cGlyZSB8IGRlbGV0ZSB8IGV4aXN0cyBdIgorbXNnc3RyICJnaXQgcmVmbG9nIFsgc2hvdyB8IGV4cGlyZSB8IGRlbGV0ZSB8IGV4aXN0cyBdIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE3CiBtc2dpZCAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIgogbXNnc3RyICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTgKIG1zZ2lkICIiCiAiZ2l0IHJlbW90ZSBhZGQgWy10IDxicmFuY2g+XSBbLW0gPG1hc3Rlcj5dIFstZl0gWy0tdGFncyB8IC0tbm8tdGFnc10gWy0tIgogIm1pcnJvcj08ZmV0Y2h8cHVzaD5dIDxuYW1lPiA8dXJsPiIKQEAgLTE2MDcxLDgzICsxOTQxMSw4MyBAQAogImdpdCByZW1vdGUgYWRkIFstdCDQmtCb0J7QnV0gWy1tINCe0KHQndCe0JLQldCdX9Ca0JvQntCdXSBbLWZdIFstLXRhZ3MgfCAtLW5vLXRhZ3NdIFstLSIKICJtaXJyb3I9PGZldGNofHB1c2g+XSDQmNCc0JUg0JDQlNCg0JXQoSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOCBidWlsdGluL3JlbW90ZS5jOjM4CisjOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6MzkKIG1zZ2lkICJnaXQgcmVtb3RlIHJlbmFtZSA8b2xkPiA8bmV3PiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSByZW5hbWUg0KHQotCQ0KDQnl/QmNCc0JUg0J3QntCS0J5f0JjQnNCVIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6NDMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjAgYnVpbHRpbi9yZW1vdGUuYzo0NAogbXNnaWQgImdpdCByZW1vdGUgcmVtb3ZlIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSByZW1vdmUg0JjQnNCVIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIwIGJ1aWx0aW4vcmVtb3RlLmM6NDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjEgYnVpbHRpbi9yZW1vdGUuYzo0OQogbXNnaWQgImdpdCByZW1vdGUgc2V0LWhlYWQgPG5hbWU+ICgtYSB8IC0tYXV0byB8IC1kIHwgLS1kZWxldGUgfCA8YnJhbmNoPikiCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWhlYWQg0JjQnNCVICgtYSB8IC0tYXV0byB8IC1kIHwgLS1kZWxldGUgfCDQmtCb0J7QnSkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjIKIG1zZ2lkICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gc2hvdyBbLW5dIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHNob3cgWy1uXSDQmNCc0JUiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjMKIG1zZ2lkICJnaXQgcmVtb3RlIHBydW5lIFstbiB8IC0tZHJ5LXJ1bl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHBydW5lIFstbiB8IC0tZHJ5LXJ1bl0g0JjQnNCVIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIzCisjOiBidWlsdGluL3JlbW90ZS5jOjI0CiBtc2dpZCAiIgogImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSB1cGRhdGUgWy1wIHwgLS1wcnVuZV0gWyg8Z3JvdXA+IHwgPHJlbW90ZT4pLi4uXSIKIG1zZ3N0ciAiIgogImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSB1cGRhdGUgWy1wIHwgLS1wcnVuZV0gWyjQk9Cg0KPQn9CQIHwgIgogItCe0KLQlNCQ0JvQldCn0JXQndCeX9Cl0KDQkNCd0JjQm9CY0KnQlSnigKZdIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI0CisjOiBidWlsdGluL3JlbW90ZS5jOjI1CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgWy0tYWRkXSA8bmFtZT4gPGJyYW5jaD4uLi4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIFstLWFkZF0g0JjQnNCVINCa0JvQntCd4oCmIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI1IGJ1aWx0aW4vcmVtb3RlLmM6NzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjYgYnVpbHRpbi9yZW1vdGUuYzo3NQogbXNnaWQgImdpdCByZW1vdGUgZ2V0LXVybCBbLS1wdXNoXSBbLS1hbGxdIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBnZXQtdXJsIFstLXB1c2hdIFstLWFsbF0g0JjQnNCVIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI2IGJ1aWx0aW4vcmVtb3RlLmM6NzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjcgYnVpbHRpbi9yZW1vdGUuYzo4MAogbXNnaWQgImdpdCByZW1vdGUgc2V0LXVybCBbLS1wdXNoXSA8bmFtZT4gPG5ld3VybD4gWzxvbGR1cmw+XSIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIFstLXB1c2hdINCY0JzQlSDQndCe0JJf0JDQlNCg0JXQoSBb0KHQotCQ0KBf0JDQlNCg0JXQoV0iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjcgYnVpbHRpbi9yZW1vdGUuYzo4MAorIzogYnVpbHRpbi9yZW1vdGUuYzoyOCBidWlsdGluL3JlbW90ZS5jOjgxCiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tYWRkIDxuYW1lPiA8bmV3dXJsPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tYWRkINCY0JzQlSDQndCe0JJf0JDQlNCg0JXQoSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyOCBidWlsdGluL3JlbW90ZS5jOjgxCisjOiBidWlsdGluL3JlbW90ZS5jOjI5IGJ1aWx0aW4vcmVtb3RlLmM6ODIKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC11cmwgLS1kZWxldGUgPG5hbWU+IDx1cmw+IgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgLS1kZWxldGUg0JjQnNCVINCQ0JTQoNCV0KEiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MzMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MzQKIG1zZ2lkICJnaXQgcmVtb3RlIGFkZCBbPG9wdGlvbnM+XSA8bmFtZT4gPHVybD4iCiBtc2dzdHIgImdpdCByZW1vdGUgYWRkIFvQntCf0KbQmNCv4oCmXSDQmNCc0JUg0JDQlNCg0JXQoSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo1MworIzogYnVpbHRpbi9yZW1vdGUuYzo1NAogbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIDxuYW1lPiA8YnJhbmNoPi4uLiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMg0JjQnNCVINCa0JvQntCd4oCmIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjU0CisjOiBidWlsdGluL3JlbW90ZS5jOjU1CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgLS1hZGQgPG5hbWU+IDxicmFuY2g+Li4uIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyAtLWFkZCDQmNCc0JUg0JrQm9Ce0J3igKYiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjAKIG1zZ2lkICJnaXQgcmVtb3RlIHNob3cgWzxvcHRpb25zPl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHNob3cgW9Ce0J/QptCY0K/igKZdINCY0JzQlSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NAorIzogYnVpbHRpbi9yZW1vdGUuYzo2NQogbXNnaWQgImdpdCByZW1vdGUgcHJ1bmUgWzxvcHRpb25zPl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHBydW5lIFvQntCf0KbQmNCv4oCmXSDQmNCc0JUiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NjkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzAKIG1zZ2lkICJnaXQgcmVtb3RlIHVwZGF0ZSBbPG9wdGlvbnM+XSBbPGdyb3VwPiB8IDxyZW1vdGU+XS4uLiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSB1cGRhdGUgW9Ce0J/QptCY0K/igKZdIFvQk9Cg0KPQn9CQIHwg0J7QotCU0JDQm9CV0KfQldCd0J5f0KXQoNCQ0J3QmNCb0JjQqdCV4oCmXSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5OAorIzogYnVpbHRpbi9yZW1vdGUuYzo5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJVcGRhdGluZyAlcyIKIG1zZ3N0ciAi0J7QsdC90L7QstGP0LLQsNC90LUg0L3QsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxCiBtc2dpZCAiIgogIi0tbWlycm9yIGlzIGRhbmdlcm91cyBhbmQgZGVwcmVjYXRlZDsgcGxlYXNlXG4iCiAiXHQgdXNlIC0tbWlycm9yPWZldGNoIG9yIC0tbWlycm9yPXB1c2ggaW5zdGVhZCIKQEAgLTE2MTU1LDg2ICsxOTQ5NSwxMDIgQEAKICLQmNC30L/QvtC70LfQstCw0L3QtdGC0L4g0YHQsNC80L4g0L3QsCDigJ4tLW1pcnJvcuKAnCDQtSDQvtC/0LDRgdC90L4uICDQktC80LXRgdGC0L4g0YLQvtCy0LBcbiIKICLQv9C+0LvQt9Cy0LDQudGC0LUg4oCeLS1taXJyb3I9ZmV0Y2jigJwg0LjQu9C4IOKAni0tbWlycm9yPXB1c2jigJwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ3CisjOiBidWlsdGluL3JlbW90ZS5jOjE0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG1pcnJvciBhcmd1bWVudDogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCDigJ4tLW1pcnJvcuKAnDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYzCisjOiBidWlsdGluL3JlbW90ZS5jOjE2NAogbXNnaWQgImZldGNoIHRoZSByZW1vdGUgYnJhbmNoZXMiCiBtc2dzdHIgItC+0YLQtNCw0LvQtdGH0LXQvdC40YLQtSDQutC70L7QvdC4INC90LUg0LzQvtCz0LDRgiDQtNCwINCx0YrQtNCw0YIg0LTQvtGB0YLQsNCy0LXQvdC4IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjYKIG1zZ2lkICJpbXBvcnQgYWxsIHRhZ3MgYW5kIGFzc29jaWF0ZWQgb2JqZWN0cyB3aGVuIGZldGNoaW5nIgogbXNnc3RyICLQstC90LDRgdGP0L3QtSDQvdCwINCy0YHQuNGH0LrQuCDQtdGC0LjQutC10YLQuCDQuCDQv9GA0LjQvdCw0LTQu9C10LbQsNGJ0LjRgtC1INC40Lwg0L7QsdC10LrRgtC4INC/0YDQuCDQtNC+0YHRgtCw0LLRj9C90LUiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY4CisjOiBidWlsdGluL3JlbW90ZS5jOjE2OQogbXNnaWQgIm9yIGRvIG5vdCBmZXRjaCBhbnkgdGFnIGF0IGFsbCAoLS1uby10YWdzKSIKIG1zZ3N0ciAi0LzQvtC20LUg0Lgg0LTQsCDQvdC1INGB0LUg0LTQvtGB0YLQsNCy0Y/RgiDQvdC40LrQsNC60LLQuCDQtdGC0LjQutC10YLQuCAo0YfRgNC10Lcg0L7Qv9GG0LjRj9GC0LAg4oCeLS1uby10YWdz4oCcKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcxCiBtc2dpZCAiYnJhbmNoKGVzKSB0byB0cmFjayIKIG1zZ3N0ciAi0LrQu9C+0L0v0Lgg0LfQsCDRgdC70LXQtNC10L3QtSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcyCiBtc2dpZCAibWFzdGVyIGJyYW5jaCIKIG1zZ3N0ciAi0L7RgdC90L7QstC10L0g0LrQu9C+0L0iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTczCisjOiBidWlsdGluL3JlbW90ZS5jOjE3NAogbXNnaWQgInNldCB1cCByZW1vdGUgYXMgYSBtaXJyb3IgdG8gcHVzaCB0byBvciBmZXRjaCBmcm9tIgogbXNnc3RyICIiCiAi0L3QsNGB0YLRgNC+0LnQstCw0L3QtSDQvdCwINC+0YLQtNCw0LvQtdGH0LXQvdC+INGF0YDQsNC90LjQu9C40YnQtSwg0L7RgiDQutC+0LXRgtC+INC00LAg0YHQtSDQuNC30LTRitGA0L/QstCwINC40LvQuCDQtNC+0YHRgtCw0LLRjyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxODUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg2CiBtc2dpZCAic3BlY2lmeWluZyBhIG1hc3RlciBicmFuY2ggbWFrZXMgbm8gc2Vuc2Ugd2l0aCAtLW1pcnJvciIKIG1zZ3N0ciAiIgogItC90Y/QvNCwINGB0LzQuNGB0YrQuyDQtNCwINGB0LUg0YPQutCw0LfQstCwINC+0YHQvdC+0LLQtdC9INC60LvQvtC9INC/0YDQuCDQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINC+0L/RhtC40Y/RgtCwIOKAni0tbWlycm9y4oCcIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE4NworIzogYnVpbHRpbi9yZW1vdGUuYzoxODgKIG1zZ2lkICJzcGVjaWZ5aW5nIGJyYW5jaGVzIHRvIHRyYWNrIG1ha2VzIHNlbnNlIG9ubHkgd2l0aCBmZXRjaCBtaXJyb3JzIgogbXNnc3RyICIiCiAi0YPQutCw0LfQstCw0L3QtdGC0L4g0L3QsCDRgdC70LXQtNC10L3QuCDQutC70L7QvdC4INC1INGB0LzQuNGB0LvQtdC90L4g0YHQsNC80L4g0LfQsCDQvtGC0LTQsNC70LXRh9C10L3QuCDRhdGA0LDQvdC40LvQuNGJ0LAsINC+0YIgIgogItC60L7QuNGC0L4g0YHQtSDQtNC+0YHRgtCw0LLRjyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOTQgYnVpbHRpbi9yZW1vdGUuYzo2MzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk1IGJ1aWx0aW4vcmVtb3RlLmM6Njk2CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZSAlcyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgItCy0LXRh9C1INGB0YrRidC10YHRgtCy0YPQstCwINC+0YLQtNCw0LvQtdGH0LXQvdC+INGF0YDQsNC90LjQu9C40YnQtSDRgSDQuNC80LUg4oCeJXPigJwuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE5OCBidWlsdGluL3JlbW90ZS5jOjY0MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxOTkgYnVpbHRpbi9yZW1vdGUuYzo3MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZW1vdGUgbmFtZSIKIG1zZ3N0ciAi4oCeJXPigJwg0LUg0L3QtdC/0YDQsNCy0LjQu9C90L4g0LjQvNC1INC30LAg0L7RgtC00LDQu9C10YfQtdC90L4g0YXRgNCw0L3QuNC70LjRidC1IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIzOAorIzogYnVpbHRpbi9yZW1vdGUuYzoyMzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldHVwIG1hc3RlciAnJXMnIgogbXNnc3RyICLQntGB0L3QvtCy0L3QuNGP0YIg0LrQu9C+0L0g4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC90LDRgdGC0YDQvtC10L0iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MzQ0CisjOiBidWlsdGluL3JlbW90ZS5jOjM1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZ2V0IGZldGNoIG1hcCBmb3IgcmVmc3BlYyAlcyIKIG1zZ3N0ciAi0J7QsdC10LrRgtC40YLQtSDQt9CwINC00L7RgdGC0LDQstGP0L3QtSDQt9CwINGD0LrQsNC30LDRgtC10LvRjyDigJ4lc+KAnCDQvdC1INC80L7Qs9Cw0YIg0LTQsCDQsdGK0LTQsNGCINC/0L7Qu9GD0YfQtdC90LgiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NDQzIGJ1aWx0aW4vcmVtb3RlLmM6NDUxCisjOiBidWlsdGluL3JlbW90ZS5jOjQ1MyBidWlsdGluL3JlbW90ZS5jOjQ2MQogbXNnaWQgIihtYXRjaGluZykiCiBtc2dzdHIgIijRgdGK0LLQv9Cw0LTQsNGJ0LgpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjQ1NQorIzogYnVpbHRpbi9yZW1vdGUuYzo0NjUKIG1zZ2lkICIoZGVsZXRlKSIKIG1zZ3N0ciAiKNC30LAg0LjQt9GC0YDQuNCy0LDQvdC1KSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2MjkgYnVpbHRpbi9yZW1vdGUuYzo3NjUgYnVpbHRpbi9yZW1vdGUuYzo4NjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzZXQgJyVzJyIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNC00LDQtNC1IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjY1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlICVzIGNvbmZpZ3VyYXRpb24gcmVtb3RlLnB1c2hEZWZhdWx0IGluOlxuIgorIlx0JXM6JWRcbiIKKyJub3cgbmFtZXMgdGhlIG5vbi1leGlzdGVudCByZW1vdGUgJyVzJyIKK21zZ3N0ciAiIgorItCd0LDRgdGC0YDQvtC50LrQsNGC0LAg4oCecmVtb3RlLnB1c2hEZWZhdWx04oCcINGBINC+0LHRhdCy0LDRgiDigJ4lc+KAnCDQsjpcbiIKKyIgICAgJXM6JWRcbiIKKyLQuNC30L/QvtC70LfQstCwINC+0YLQtNCw0LvQtdGH0LXQvdC+INGF0YDQsNC90LjQu9C40YnQtSwg0LrQvtC10YLQviDQstC10YfQtSDQvdC1INGB0YrRidC10YHRgtCy0YPQstCwOiDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo2ODkgYnVpbHRpbi9yZW1vdGUuYzo4MzIgYnVpbHRpbi9yZW1vdGUuYzo5NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZW1vdGU6ICclcyciCiBtc2dzdHIgItCd0Y/QvNCwINC+0YLQtNCw0LvQtdGH0LXQvdC+INGF0YDQsNC90LjQu9C40YnQtSDQvdCwINC40LzQtSDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NDYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW5hbWUgY29uZmlnIHNlY3Rpb24gJyVzJyB0byAnJXMnIgogbXNnc3RyICLQoNCw0LfQtNC10LvRitGCIOKAniVz4oCcINCyINC90LDRgdGC0YDQvtC50LrQuNGC0LUg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQtdC40LzQtdC90YPQstCw0L0g0L3QsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NjYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJOb3QgdXBkYXRpbmcgbm9uLWRlZmF1bHQgZmV0Y2ggcmVmc3BlY1xuIgpAQCAtMTYyNDUsMTcgKzE5NjAxLDE3IEBACiAiICAgICVzXG4iCiAiICDQn9GA0L7QvNC10L3QtdGC0LUg0L3QsNGB0YLRgNC+0LnQutC40YLQtSDRgNGK0YfQvdC+LCDQsNC60L4g0LUg0L3QtdC+0LHRhdC+0LTQuNC80L4uIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjcwMgorIzogYnVpbHRpbi9yZW1vdGUuYzo3NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsZXRpbmcgJyVzJyBmYWlsZWQiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQuNC30YLRgNC40LLQsNC90LUg0L3QsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo3MzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6ODAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNyZWF0aW5nICclcycgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YHRitC30LTQsNCy0LDQvdC1INC90LAg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6ODAyCisjOiBidWlsdGluL3JlbW90ZS5jOjg3NgogbXNnaWQgIiIKICJOb3RlOiBBIGJyYW5jaCBvdXRzaWRlIHRoZSByZWZzL3JlbW90ZXMvIGhpZXJhcmNoeSB3YXMgbm90IHJlbW92ZWQ7XG4iCiAidG8gZGVsZXRlIGl0LCB1c2U6IgpAQCAtMTYyNjksMTIxICsxOTYyNSwxMjEgQEAKICLQkdC10LvQtdC20LrQsDog0J3Rj9C60L7Qu9C60L4g0LrQu9C+0L3QsCDQuNC30LLRitC9INC50LXRgNCw0YDRhdC40Y/RgtCwIOKAnnJlZnMvcmVtb3Rlcy/igJwg0L3QtSDQsdGP0YXQsCDQuNC30YLRgNC40YLQuC5cbiIKICLQmNC30YLRgNC40LnRgtC1INCz0Lgg0YfRgNC10Lcg0LrQvtC80LDQvdC00LDRgtCwOiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo4MTYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6ODkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgY29uZmlnIHNlY3Rpb24gJyVzJyIKIG1zZ3N0ciAi0KDQsNC30LTQtdC70YrRgiDigJ4lc+KAnCDQsiDQvdCw0YHRgtGA0L7QudC60LjRgtC1INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YLRgNC40YIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTE3CisjOiBidWlsdGluL3JlbW90ZS5jOjk5MwogIywgYy1mb3JtYXQKIG1zZ2lkICIgbmV3IChuZXh0IGZldGNoIHdpbGwgc3RvcmUgaW4gcmVtb3Rlcy8lcykiCiBtc2dzdHIgIiDQvdC+0LIgKNGB0LvQtdC00LLQsNGJ0L7RgtC+INC00L7RgdGC0LDQstGP0L3QtSDRidC1INCz0L4g0YDQsNC30L/QvtC70L7QttC4INCyIOKAnnJlbW90ZXMvJXPigJwpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkyMAorIzogYnVpbHRpbi9yZW1vdGUuYzo5OTYKIG1zZ2lkICIgdHJhY2tlZCIKIG1zZ3N0ciAiINGB0LvQtdC00LXQvSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MjIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTk4CiBtc2dpZCAiIHN0YWxlICh1c2UgJ2dpdCByZW1vdGUgcHJ1bmUnIHRvIHJlbW92ZSkiCiBtc2dzdHIgIiDRgdGC0LDRgCAo0LjQt9GC0YDQuNC50YLQtSDRh9GA0LXQtyDigJ5naXQgcmVtb3RlIHBydW5l4oCcKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAwMAogbXNnaWQgIiA/Pz8iCiBtc2dzdHIgIiDQvdC10Y/RgdC90L4g0YHRitGB0YLQvtGP0L3QuNC1IgogCiAjIENIRUNLCi0jOiBidWlsdGluL3JlbW90ZS5jOjk2NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgYnJhbmNoLiVzLm1lcmdlOyBjYW5ub3QgcmViYXNlIG9udG8gPiAxIGJyYW5jaCIKIG1zZ3N0ciAiIgogItC90LXQv9GA0LDQstC40LvQtdC9INC60LvQvtC9INC30LAg0YHQu9C40LLQsNC90LUg4oCeJXPigJwuICDQndC10LLRitC30LzQvtC20L3QviDQtSDQtNCwINC/0YDQtdCx0LDQt9C40YDQsNGC0LUg0LLRitGA0YXRgyDQv9C+0LLQtdGH0LUgIgogItC+0YIgMSDQutC70L7QvSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgb250byByZW1vdGUgJXMiCiBtc2dzdHIgItC40L3RgtC10YDQsNC60YLQuNCy0L3QviDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1INCy0YrRgNGF0YMg0L7RgtC00LDQu9C10YfQtdC90LjRjyDQutC70L7QvSDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgKHdpdGggbWVyZ2VzKSBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAi0LjQvdGC0LXRgNCw0LrRgtC40LLQvdC+INC/0YDQtdCx0LDQt9C40YDQsNC90LUgKNGB0YrRgSDRgdC70LjQstCw0L3QuNGPKSDQstGK0YDRhdGDINC+0YLQtNCw0LvQtdGH0LXQvdC40Y8g0LrQu9C+0L0g4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTc5CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmViYXNlcyBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAi0L/RgNC10LHQsNC30LjRgNCw0L3QtSDQstGK0YDRhdGDINC+0YLQtNCw0LvQtdGH0LXQvdC40Y8g0LrQu9C+0L0g4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTgzCisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIG1lcmdlcyB3aXRoIHJlbW90ZSAlcyIKIG1zZ3N0ciAiINGB0LvQuNCy0LDQvdC1INGBINC+0YLQtNCw0LvQtdGH0LXQvdC40Y8g0LrQu9C+0L0g4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg2CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAibWVyZ2VzIHdpdGggcmVtb3RlICVzIgogbXNnc3RyICLRgdC70LjQstCw0L3QtSDRgSDQvtGC0LTQsNC70LXRh9C10L3QuNGPINC60LvQvtC9IOKAniVz4oCcIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk4OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiUtKnMgICAgYW5kIHdpdGggcmVtb3RlICVzXG4iCiBtc2dzdHIgIiUtKnMgICAg0Lgg0YEg0L7RgtC00LDQu9C10YfQtdC90LjRjyDQutC70L7QvSDigJ4lc+KAnFxuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMzIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEwOAogbXNnaWQgImNyZWF0ZSIKIG1zZ3N0ciAi0YHRitC30LTQsNC00LXQvSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDM1CisjOiBidWlsdGluL3JlbW90ZS5jOjExMTEKIG1zZ2lkICJkZWxldGUiCiBtc2dzdHIgItC40LfRgtGA0LjRgiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDM5CisjOiBidWlsdGluL3JlbW90ZS5jOjExMTUKIG1zZ2lkICJ1cCB0byBkYXRlIgogbXNnc3RyICLQsNC60YLRg9Cw0LvQtdC9IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNDIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExOAogbXNnaWQgImZhc3QtZm9yd2FyZGFibGUiCiBtc2dzdHIgItC80L7QttC1INC00LAg0YHQtSDQv9GA0LXQstGK0YDRgtC4IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNDUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEyMQogbXNnaWQgImxvY2FsIG91dCBvZiBkYXRlIgogbXNnc3RyICLQu9C+0LrQsNC70L3QuNGP0YIg0LUg0LjQt9C+0YHRgtCw0L3QsNC7IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNTIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBmb3JjZXMgdG8gJS0qcyAoJXMpIgogbXNnc3RyICIgICAgJS0qcyDQv9GA0LjQvdGD0LTQuNGC0LXQu9C90L4g0LjQt9GC0LvQsNGB0LrQstCwINC60YrQvCAlLSpzICglcykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIHB1c2hlcyB0byAlLSpzICglcykiCiBtc2dzdHIgIiAgICAlLSpzINC40LfRgtC70LDRgdC60LLQsCDQutGK0LwgJS0qcyAoJXMpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzNQogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBmb3JjZXMgdG8gJXMiCiBtc2dzdHIgIiAgICAlLSpzINC/0YDQuNC90YPQtNC40YLQtdC70L3QviDQuNC30YLQu9Cw0YHQutCy0LAg0LrRitC8ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNjIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzOAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBwdXNoZXMgdG8gJXMiCiBtc2dzdHIgIiAgICAlLSpzINC40LfRgtC70LDRgdC60LLQsCDQutGK0LwgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjA2CiBtc2dpZCAiZG8gbm90IHF1ZXJ5IHJlbW90ZXMiCiBtc2dzdHIgItCx0LXQtyDQt9Cw0Y/QstC60Lgg0LrRitC8INC+0YLQtNCw0LvQtdGH0LXQvdC40YLQtSDRhdGA0LDQvdC40LvQuNGJ0LAiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1NworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiogcmVtb3RlICVzIgogbXNnc3RyICLil48g0L7RgtC00LDQu9C10YfQtdC90L4g0YXRgNCw0L3QuNC70LjRidC1IOKAniVz4oCcIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNTgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIgIEZldGNoIFVSTDogJXMiCiBtc2dzdHIgIiAg0JDQtNGA0LXRgSDQt9CwINC00L7RgdGC0LDQstGP0L3QtTogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1OSBidWlsdGluL3JlbW90ZS5jOjExNzUgYnVpbHRpbi9yZW1vdGUuYzoxMzE0CisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzUgYnVpbHRpbi9yZW1vdGUuYzoxMjUxIGJ1aWx0aW4vcmVtb3RlLmM6MTM5MAogbXNnaWQgIihubyBVUkwpIgogbXNnc3RyICIo0LHQtdC3INCw0LTRgNC10YEpIgogCkBAIC0xNjM5MSwyNSArMTk3NDcsMjUgQEAKICMuIHdpdGggdGhlIG9uZSBpbiAiIEZldGNoIFVSTDogJXMiCiAjLiB0cmFuc2xhdGlvbi4KICMuCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzMgYnVpbHRpbi9yZW1vdGUuYzoxMTc1CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNDkgYnVpbHRpbi9yZW1vdGUuYzoxMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgUHVzaCAgVVJMOiAlcyIKIG1zZ3N0ciAiICDQkNC00YDQtdGBINC30LAg0LjQt9GC0LvQsNGB0LrQstCw0L3QtTogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NyBidWlsdGluL3JlbW90ZS5jOjExNzkgYnVpbHRpbi9yZW1vdGUuYzoxMTgxCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTMgYnVpbHRpbi9yZW1vdGUuYzoxMjU1IGJ1aWx0aW4vcmVtb3RlLmM6MTI1NwogIywgYy1mb3JtYXQKIG1zZ2lkICIgIEhFQUQgYnJhbmNoOiAlcyIKIG1zZ3N0ciAiICDQutC70L7QvSDRgdC+0YfQtdC9INC+0YIgSEVBRDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjUzCiBtc2dpZCAiKG5vdCBxdWVyaWVkKSIKIG1zZ3N0ciAiKNCx0LXQtyDQv9GA0L7QstC10YDQutCwKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTc5CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTUKIG1zZ2lkICIodW5rbm93bikiCiBtc2dzdHIgIijQvdC10L/QvtC30L3QsNGCKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTgzCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiAgSEVBRCBicmFuY2ggKHJlbW90ZSBIRUFEIGlzIGFtYmlndW91cywgbWF5IGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nKTpcbiIKQEAgLTE2NDE4LDE3MCArMTk3NzQsMTYxIEBACiAi0YXRgNCw0L3QuNC70LjRidC1XG4iCiAiICDQvdC1INC1INC10LTQvdC+0LfQvdCw0YfQtdC9INC4INC1INC90Y/QutC+0Lkg0L7RgiDRgdC70LXQtNC90LjRgtC1KTpcbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTk1CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBSZW1vdGUgYnJhbmNoOiVzIgogbXNnaWRfcGx1cmFsICIgIFJlbW90ZSBicmFuY2hlczolcyIKIG1zZ3N0clswXSAiICDQntGC0LTQsNC70LXRh9C10L0g0LrQu9C+0L06JXMiCiBtc2dzdHJbMV0gIiAg0J7RgtC00LDQu9C10YfQtdC90Lgg0LrQu9C+0L3QuDolcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTk4IGJ1aWx0aW4vcmVtb3RlLmM6MTIyNAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjc0IGJ1aWx0aW4vcmVtb3RlLmM6MTMwMAogbXNnaWQgIiAoc3RhdHVzIG5vdCBxdWVyaWVkKSIKIG1zZ3N0ciAiICjRgdGK0YHRgtC+0Y/QvdC40LXRgtC+INC90LUg0LHQtSDQv9GA0L7QstC10YDQtdC90L4pIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyMDcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI4MwogbXNnaWQgIiAgTG9jYWwgYnJhbmNoIGNvbmZpZ3VyZWQgZm9yICdnaXQgcHVsbCc6IgogbXNnaWRfcGx1cmFsICIgIExvY2FsIGJyYW5jaGVzIGNvbmZpZ3VyZWQgZm9yICdnaXQgcHVsbCc6IgogbXNnc3RyWzBdICIgINCb0L7QutCw0LvQtdC9INC60LvQvtC9INC90LDRgdGC0YDQvtC10L0g0LfQsCDQuNC30LTRitGA0L/QstCw0L3QtSDRh9GA0LXQtyDigJ5naXQgcHVsbOKAnDoiCiBtc2dzdHJbMV0gIiAg0JvQvtC60LDQu9C90Lgg0LrQu9C+0L3QuCDQvdCw0YHRgtGA0L7QtdC90Lgg0LfQsCDQuNC30LTRitGA0L/QstCw0L3QtSDRh9GA0LXQtyDigJ5naXQgcHVsbOKAnDoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIxNQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjkxCiBtc2dpZCAiICBMb2NhbCByZWZzIHdpbGwgYmUgbWlycm9yZWQgYnkgJ2dpdCBwdXNoJyIKIG1zZ3N0ciAiICDQm9C+0LrQsNC70L3QuNGC0LUg0YPQutCw0LfQsNGC0LXQu9C4INGJ0LUg0LHRitC00LDRgiDQv9GA0LXQvdC10YHQtdC90Lgg0YfRgNC10Lcg4oCeIHB1c2jigJwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIyMQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgTG9jYWwgcmVmIGNvbmZpZ3VyZWQgZm9yICdnaXQgcHVzaCclczoiCiBtc2dpZF9wbHVyYWwgIiAgTG9jYWwgcmVmcyBjb25maWd1cmVkIGZvciAnZ2l0IHB1c2gnJXM6IgogbXNnc3RyWzBdICIgINCb0L7QutCw0LvQvdC40Y/RgiDRg9C60LDQt9Cw0YLQtdC7LCDQvdCw0YHRgtGA0L7QtdC9INC30LAg4oCeZ2l0IHB1c2jigJwlczoiCiBtc2dzdHJbMV0gIiAg0JvQvtC60LDQu9C90LjRgtC1INGD0LrQsNC30LDRgtC10LvQuCwg0L3QsNGB0YLRgNC+0LXQvdC4INC30LAg4oCeZ2l0IHB1c2jigJwlczoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzE4CiBtc2dpZCAic2V0IHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCBhY2NvcmRpbmcgdG8gcmVtb3RlIgogbXNnc3RyICLQt9Cw0LTQsNCy0LDQvdC1INC90LAgcmVmcy9yZW1vdGVzL9CY0JzQlS9IRUFEINGB0L/QvtGA0LXQtCDQvtGC0LTQsNC70LXRh9C10L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNDQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMyMAogbXNnaWQgImRlbGV0ZSByZWZzL3JlbW90ZXMvPG5hbWU+L0hFQUQiCiBtc2dzdHIgItC40LfRgtGA0LjQstCw0L3QtSDQvdCwIHJlZnMvcmVtb3Rlcy/QmNCc0JUvSEVBRCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjU5CisjOiBidWlsdGluL3JlbW90ZS5jOjEzMzUKIG1zZ2lkICJDYW5ub3QgZGV0ZXJtaW5lIHJlbW90ZSBIRUFEIgogbXNnc3RyICLQndC1INC80L7QttC1INC00LAg0YHQtSDRg9GB0YLQsNC90L7QstC4INC+0YLQtNCw0LvQtdGH0LXQvdC40Y/RgiDQstGA0YrRhSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjYxCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMzcKIG1zZ2lkICJNdWx0aXBsZSByZW1vdGUgSEVBRCBicmFuY2hlcy4gUGxlYXNlIGNob29zZSBvbmUgZXhwbGljaXRseSB3aXRoOiIKIG1zZ3N0ciAiIgogItCc0L3QvtC20LXRgdGC0LLQviDQutC70L7QvdC4INGBINCy0YrRgNGF0L7QstC1LiAg0JjQt9Cx0LXRgNC10YLQtSDQuNC30YDQuNGH0L3QviDQvdGP0LrQvtC5INC+0YIg0YLRj9GFINGH0YDQtdC3INC60L7QvNCw0L3QtNCw0YLQsDoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBkZWxldGUgJXMiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YLRgNC40YIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIHJlZjogJXMiCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvQtdC9INGD0LrQsNC30LDRgtC10Ls6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyODEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc2V0dXAgJXMiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC90LDRgdGC0YDQvtC4IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyOTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIgJXMgd2lsbCBiZWNvbWUgZGFuZ2xpbmchIgogbXNnc3RyICLigJ4lc+KAnCDRidC1INGB0LUg0L/RgNC10LLRitGA0L3QtSDQsiDQvtCx0LXQutGCINC40LfQstGK0L0g0LrQu9C+0L3QuNGC0LUhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMDAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIgJXMgaGFzIGJlY29tZSBkYW5nbGluZyEiCiBtc2dzdHIgIuKAniVz4oCcINGB0LUg0L/RgNC10LLRitGA0L3QsCDQsiDQvtCx0LXQutGCINC40LfQstGK0L0g0LrQu9C+0L3QuNGC0LUhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMTAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJQcnVuaW5nICVzIgogbXNnc3RyICLQntC60LDRgdGC0YDRj9C90LUg0L3QsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzExCisjOiBidWlsdGluL3JlbW90ZS5jOjEzODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVVJMOiAlcyIKIG1zZ3N0ciAi0LDQtNGA0LXRgTogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMyNworIzogYnVpbHRpbi9yZW1vdGUuYzoxNDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAqIFt3b3VsZCBwcnVuZV0gJXMiCiBtc2dzdHIgIiDil48gW9GJ0LUg0LHRitC00LUg0L7QutCw0YHRgtGA0LXQvdC+XSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzMwCisjOiBidWlsdGluL3JlbW90ZS5jOjE0MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiICogW3BydW5lZF0gJXMiCiBtc2dzdHIgIiDil48gW9C+0LrQsNGB0YLRgNC10L3Qvl0gJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM3NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNDUxCiBtc2dpZCAicHJ1bmUgcmVtb3RlcyBhZnRlciBmZXRjaGluZyIKIG1zZ3N0ciAi0L7QutCw0YHRgtGA0Y/QvdC1INC90LAg0L7Qs9C70LXQtNCw0LvQsNGC0LAg0L3QsCDQvtGC0LTQsNC70LXRh9C10L3QuNGC0LUg0YXRgNCw0L3QuNC70LjRidCwINGB0LvQtdC0INC00L7RgdGC0LDQstGP0L3QtSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDM4IGJ1aWx0aW4vcmVtb3RlLmM6MTQ5MiBidWlsdGluL3JlbW90ZS5jOjE1NjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUxNCBidWlsdGluL3JlbW90ZS5jOjE1NjggYnVpbHRpbi9yZW1vdGUuYzoxNjM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVtb3RlICclcyciCiBtc2dzdHIgItCd0Y/QvNCwINC+0YLQtNCw0LvQtdGH0LXQvdC+INGF0YDQsNC90LjQu9C40YnQtSDQvdCwINC40LzQtSDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDU0CisjOiBidWlsdGluL3JlbW90ZS5jOjE1MzAKIG1zZ2lkICJhZGQgYnJhbmNoIgogbXNnc3RyICLQtNC+0LHQsNCy0Y/QvdC1INC90LAg0LrQu9C+0L0iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ2MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM3CiBtc2dpZCAibm8gcmVtb3RlIHNwZWNpZmllZCIKIG1zZ3N0ciAi0L3QtSDQtSDRg9C60LDQt9Cw0L3QviDQvtGC0LTQsNC70LXRh9C10L3QviDRhdGA0LDQvdC40LvQuNGJ0LUiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ3OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTU0CiBtc2dpZCAicXVlcnkgcHVzaCBVUkxzIHJhdGhlciB0aGFuIGZldGNoIFVSTHMiCiBtc2dzdHIgItC30LDQv9C40YLQstCw0L3QtSDQutGK0Lwg0LDQtNGA0LXRgdC40YLQtSDQt9CwINC40LfRgtC70LDRgdC60LLQsNC90LUsINCwINC90LUg0LfQsCDQtNC+0YHRgtCw0LLRj9C90LUiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ4MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTU2CiBtc2dpZCAicmV0dXJuIGFsbCBVUkxzIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQstGB0LjRh9C60Lgg0LDQtNGA0LXRgdC4IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1MDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBVUkxzIGNvbmZpZ3VyZWQgZm9yIHJlbW90ZSAnJXMnIgogbXNnc3RyICLQvdC1INC1INC30LDQtNCw0LTQtdC9INCw0LTRgNC10YEg0LfQsCDQvtGC0LTQsNC70LXRh9C10L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1IOKAniVz4oCcIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1MzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYxMAogbXNnaWQgIm1hbmlwdWxhdGUgcHVzaCBVUkxzIgogbXNnc3RyICLQv9GA0L7QvNGP0L3QsCDQvdCwINCw0LTRgNC10YHQuNGC0LUg0LfQsCDQuNC30YLQu9Cw0YHQutCy0LDQvdC1IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1MzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYxMgogbXNnaWQgImFkZCBVUkwiCiBtc2dzdHIgItC00L7QsdCw0LLRj9C90LUg0L3QsCDQsNC00YDQtdGB0LgiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzOAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjE0CiBtc2dpZCAiZGVsZXRlIFVSTHMiCiBtc2dzdHIgItC40LfRgtGA0LjQstCw0L3QtSDQvdCwINCw0LTRgNC10YHQuCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTQ1CisjOiBidWlsdGluL3JlbW90ZS5jOjE2MjEKIG1zZ2lkICItLWFkZCAtLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgItC+0L/RhtC40LjRgtC1IOKAni0tYWRk4oCcINC4IOKAni0tZGVsZXRl4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1ODQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIG9sZCBVUkwgcGF0dGVybjogJXMiCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvQtdC9ICjRgdGC0LDRgCkg0YTQvtGA0LzQsNGCINC30LAg0LDQtNGA0LXRgTogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU5MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggVVJMIGZvdW5kOiAlcyIKIG1zZ3N0ciAi0KLQsNC60YrQsiDQsNC00YDQtdGBINC90LUg0LUg0L7RgtC60YDQuNGCOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTk0CisjOiBidWlsdGluL3JlbW90ZS5jOjE2NzAKIG1zZ2lkICJXaWxsIG5vdCBkZWxldGUgYWxsIG5vbi1wdXNoIFVSTHMiCiBtc2dzdHIgItCd0LjQutC+0Lkg0L7RgiDQsNC00YDQtdGB0LjRgtC1LCDQutC+0LjRgtC+INC90LUg0YHQsCDQt9CwINC40LfRgtC70LDRgdC60LLQsNC90LUsINC90Y/QvNCwINC00LAg0YHQtSDQuNC30YLRgNC40LUiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYxMAotbXNnaWQgImJlIHZlcmJvc2U7IG11c3QgYmUgcGxhY2VkIGJlZm9yZSBhIHN1YmNvbW1hbmQiCi1tc2dzdHIgItC/0L7QstC10YfQtSDQv9C+0LTRgNC+0LHQvdC+0YHRgtC4LiAg0J/QvtGB0YLQsNCy0Y8g0YHQtSDQv9GA0LXQtCDQv9C+0LTQutC+0LzQsNC90LTQsCIKLQotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjQxCi0jLCBjLWZvcm1hdAotbXNnaWQgIlVua25vd24gc3ViY29tbWFuZDogJXMiCi1tc2dzdHIgItCd0LXQv9C+0LfQvdCw0YLQsCDQv9C+0LTQutC+0LzQsNC90LTQsDogJXMiCi0KLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MjIKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjMKIG1zZ2lkICJnaXQgcmVwYWNrIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgcmVwYWNrIFvQntCf0KbQmNCv4oCmXSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyNworIzogYnVpbHRpbi9yZXBhY2suYzoyOAogbXNnaWQgIiIKICJJbmNyZW1lbnRhbCByZXBhY2tzIGFyZSBpbmNvbXBhdGlibGUgd2l0aCBiaXRtYXAgaW5kZXhlcy4gIFVzZVxuIgogIi0tbm8td3JpdGUtYml0bWFwLWluZGV4IG9yIGRpc2FibGUgdGhlIHBhY2sud3JpdGViaXRtYXBzIGNvbmZpZ3VyYXRpb24uIgpAQCAtMTY1OTAsMTA0ICsxOTkzNywxNDQgQEAKICLQn9C+0LvQt9Cy0LDQudGC0LUg0L7Qv9GG0LjRj9GC0LAgLS1uby13cml0ZS1iaXRtYXAtaW5kZXgg0LjQu9C4INC40LfQutC70Y7Rh9C10YLQtSDQvdCw0YHRgtGA0L7QudC60LDRgtCwXG4iCiAi4oCecGFjay53cml0ZWJpdG1hcHPigJwuIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5NAorIzogYnVpbHRpbi9yZXBhY2suYzoxOTEKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICIiCisi0LrQvtC80LDQvdC00LDRgtCwIOKAnnBhY2stb2JqZWN0c+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDRgdGC0LDRgNGC0LjRgNCwINC30LAg0L/RgNC10L/QsNC60LXRgtC40YDQsNC90LXRgtC+INC90LAgIgorItCz0LDRgNCw0L3RgtC40YDQsNGJ0LjRgtC1INC+0LHQtdC60YLQuCIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyMzAgYnVpbHRpbi9yZXBhY2suYzo0MTYKK21zZ2lkICJyZXBhY2s6IEV4cGVjdGluZyBmdWxsIGhleCBvYmplY3QgSUQgbGluZXMgb25seSBmcm9tIHBhY2stb2JqZWN0cy4iCittc2dzdHIgIiIKKyJyZXBhY2s6INC+0YIg4oCecGFjay1vYmplY3Rz4oCcINGB0LUg0LjQt9C40YHQutCy0LDRgiDRgNC10LTQvtCy0LUg0YHQsNC80L4g0YEg0L/RitC70L3QuCDRiNC10YHRgtC90LDQudGB0LXRgtC40YfQvdC4ICIKKyLRg9C60LDQt9Cw0YLQtdC70LguIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI1NAorbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICIiCisi0LrQvtC80LDQvdC00LDRgtCwIOKAnnBhY2stb2JqZWN0c+KAnCDQvdC1INC80L7QttC1INC00LAg0LfQsNCy0YrRgNGI0Lgg0LfQsCDQv9GA0LXQv9Cw0LrQtdGC0LjRgNCw0L3QtdGC0L4g0L3QsCAiCisi0LPQsNGA0LDQvdGC0LjRgNCw0YnQuNGC0LUg0L7QsdC10LrRgtC4IgorCisjOiBidWlsdGluL3JlcGFjay5jOjI5MgogbXNnaWQgInBhY2sgZXZlcnl0aGluZyBpbiBhIHNpbmdsZSBwYWNrIgogbXNnc3RyICLQv9Cw0LrQtdGC0LjRgNCw0L3QtSDQvdCwINCy0YHQuNGH0LrQviDQsiDQv9Cw0LrQtdGCIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5NgorIzogYnVpbHRpbi9yZXBhY2suYzoyOTQKIG1zZ2lkICJzYW1lIGFzIC1hLCBhbmQgdHVybiB1bnJlYWNoYWJsZSBvYmplY3RzIGxvb3NlIgogbXNnc3RyICIiCiAi0YHRitGJ0L7RgtC+INC60LDRgtC+INC+0L/RhtC40Y/RgtCwIOKAni1h4oCcLiAg0JTQvtC/0YrQu9C90LjRgtC10LvQvdC+IOKAlCDQvdC10LTQvtGB0YLQuNC20LjQvNC40YLQtSDQvtCx0LXQutGC0Lgg0LTQsCDRgdGC0LDQvdCw0YIgIgogItC90LXQv9Cw0LrQtdGC0LjRgNCw0L3QuCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyOTkKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk3CiBtc2dpZCAicmVtb3ZlIHJlZHVuZGFudCBwYWNrcywgYW5kIHJ1biBnaXQtcHJ1bmUtcGFja2VkIgogbXNnc3RyICIiCiAi0L/RgNC10LzQsNGF0LLQsNC90LUg0L3QsCDQvdC10L3Rg9C20L3QuNGC0LUg0L/QsNC60LXRgtC40YDQsNC90Lgg0YTQsNC50LvQvtCy0LUg0Lgg0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0LSIKICJwcnVuZS1wYWNrZWTigJwiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCisjOiBidWlsdGluL3JlcGFjay5jOjI5OQogbXNnaWQgInBhc3MgLS1uby1yZXVzZS1kZWx0YSB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICLQv9C+0LTQsNCy0LDQvdC1INC90LAg0L7Qv9GG0LjRj9GC0LAg4oCeLS1uby1yZXVzZS1kZWx0YeKAnCDQvdCwINC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQtcGFjay1vYmplY3Rz4oCcIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMwMworIzogYnVpbHRpbi9yZXBhY2suYzozMDEKIG1zZ2lkICJwYXNzIC0tbm8tcmV1c2Utb2JqZWN0IHRvIGdpdC1wYWNrLW9iamVjdHMiCiBtc2dzdHIgIiIKICLQv9C+0LTQsNCy0LDQvdC1INC90LAg0L7Qv9GG0LjRj9GC0LAg4oCeLS1uby1yZXVzZS1vYmplY3TigJwg0L3QsCDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0LXBhY2stb2JqZWN0c+KAnCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDUKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAzCiBtc2dpZCAiZG8gbm90IHJ1biBnaXQtdXBkYXRlLXNlcnZlci1pbmZvIgogbXNnc3RyICLQsdC10Lcg0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0LXVwZGF0ZS1zZXJ2ZXItaW5mb+KAnCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA2CiBtc2dpZCAicGFzcyAtLWxvY2FsIHRvIGdpdC1wYWNrLW9iamVjdHMiCiBtc2dzdHIgItC/0L7QtNCw0LLQsNC90LUg0L3QsCDQvtC/0YbQuNGP0YLQsCDigJ4tLWxvY2Fs4oCcINC90LAg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdC1wYWNrLW9iamVjdHPigJwiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEwCisjOiBidWlsdGluL3JlcGFjay5jOjMwOAogbXNnaWQgIndyaXRlIGJpdG1hcCBpbmRleCIKIG1zZ3N0ciAi0YHRitC30LTQsNCy0LDQvdC1INC4INC30LDQv9C40YHQstCw0L3QtSDQvdCwINC40L3QtNC10LrRgdC4INC90LAg0LHQsNC30LAg0LHQuNGC0L7QstC4INC80LDRgdC60LgiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEyCisjOiBidWlsdGluL3JlcGFjay5jOjMxMAogbXNnaWQgInBhc3MgLS1kZWx0YS1pc2xhbmRzIHRvIGdpdC1wYWNrLW9iamVjdHMiCiBtc2dzdHIgItC/0L7QtNCw0LLQsNC90LUg0L3QsCDQvtC/0YbQuNGP0YLQsCDigJ4tLWRlbHRhLWlzbGFuZHPigJwg0L3QsCDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0LXBhY2stb2JqZWN0c+KAnCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTMKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzExCiBtc2dpZCAiYXBwcm94aWRhdGUiCiBtc2dzdHIgItC10LLRgNC40YHRgtC40YfQvdCwINC00LDRgtCwIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxNAorIzogYnVpbHRpbi9yZXBhY2suYzozMTIKIG1zZ2lkICJ3aXRoIC1BLCBkbyBub3QgbG9vc2VuIG9iamVjdHMgb2xkZXIgdGhhbiB0aGlzIgogbXNnc3RyICIiCiAi0L/RgNC4INC60L7QvNCx0LjQvdC40YDQsNC90LXRgtC+INGBINC+0L/RhtC40Y/RgtCwIOKAni1B4oCcIOKAlCDQsdC10Lcg0YDQsNC30L/QsNC60LXRgtC40YDQsNC90LUg0L3QsCDQvtCx0LXQutGC0LjRgtC1INC/0L4g0YHRgtCw0YDQuCDQvtGCICIKICLRgtC+0LLQsCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTYKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE0CiBtc2dpZCAid2l0aCAtYSwgcmVwYWNrIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgItGBIOKAni1h4oCcIOKAlCDQv9GA0LXQv9Cw0LrQtdGC0LjRgNCw0L3QtSDQvdCwINC90LXQtNC+0YHRgtC40LbQuNC80LjRgtC1INC+0LHQtdC60YLQuCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE2CiBtc2dpZCAic2l6ZSBvZiB0aGUgd2luZG93IHVzZWQgZm9yIGRlbHRhIGNvbXByZXNzaW9uIgogbXNnc3RyICLRgNCw0LfQvNC10YAg0L3QsCDQv9GA0L7Qt9C+0YDQtdGG0LAg0LfQsCDQtNC10LvRgtCwINC60L7QvNC/0YDQtdGB0LjRj9GC0LAiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE5IGJ1aWx0aW4vcmVwYWNrLmM6MzI1CisjOiBidWlsdGluL3JlcGFjay5jOjMxNyBidWlsdGluL3JlcGFjay5jOjMyMwogbXNnaWQgImJ5dGVzIgogbXNnc3RyICLQsdCw0LnRgtC+0LLQtSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMjAKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE4CiBtc2dpZCAic2FtZSBhcyB0aGUgYWJvdmUsIGJ1dCBsaW1pdCBtZW1vcnkgc2l6ZSBpbnN0ZWFkIG9mIGVudHJpZXMgY291bnQiCiBtc2dzdHIgIiIKICLRgdGK0YnQvtGC0L4g0LrQsNGC0L4g0LPQvtGA0L3QsNGC0LAg0L7Qv9GG0LjRjywg0L3QviDQvtCz0YDQsNC90LjRh9C10L3QuNC10YLQviDQtNCwINC1INC/0L4g0YDQsNC30LzQtdGAINC90LAg0L/QsNC80LXRgtGC0LAsINCwINC90LUgIgogItC/0L4g0LHRgNC+0Y8g0L3QsCDQvtCx0LXQutGC0LjRgtC1IgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyMgorIzogYnVpbHRpbi9yZXBhY2suYzozMjAKIG1zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gZGVsdGEgZGVwdGgiCiBtc2dzdHIgItC+0LPRgNCw0L3QuNGH0LDQstCw0L3QtSDQvdCwINC80LDQutGB0LjQvNCw0LvQvdCw0YLQsCDQtNGK0LvQsdC+0YfQuNC90LAg0L3QsCDQtNC10LvRgtCw0YLQsCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMjQKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIyCiBtc2dpZCAibGltaXRzIHRoZSBtYXhpbXVtIG51bWJlciBvZiB0aHJlYWRzIgogbXNnc3RyICLQvtCz0YDQsNC90LjRh9Cw0LLQsNC90LUg0L3QsCDQvNCw0LrRgdC40LzQsNC70L3QuNGPINCx0YDQvtC5INC90LjRiNC60LgiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI2CisjOiBidWlsdGluL3JlcGFjay5jOjMyNAogbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIHBhY2tmaWxlIgogbXNnc3RyICLQvNCw0LrRgdC40LzQsNC70LXQvSDRgNCw0LfQvNC10YAg0L3QsCDQstGB0LXQutC4INC/0LDQutC10YIiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI4CisjOiBidWlsdGluL3JlcGFjay5jOjMyNgogbXNnaWQgInJlcGFjayBvYmplY3RzIGluIHBhY2tzIG1hcmtlZCB3aXRoIC5rZWVwIgogbXNnc3RyICLQv9GA0LXQv9Cw0LrQtdGC0LjRgNCw0L3QtSDQvdCwINC+0LHQtdC60YLQuNGC0LUg0LIg0L/QsNC60LXRgtC4INCx0LXQu9GP0LfQsNC90Lgg0YEg4oCeLmtlZXDigJwiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzMwCisjOiBidWlsdGluL3JlcGFjay5jOjMyOAogbXNnaWQgImRvIG5vdCByZXBhY2sgdGhpcyBwYWNrIgogbXNnc3RyICLQsdC10Lcg0L/RgNC10L/QsNC60LXRgtC40YDQsNC90LUg0L3QsCDRgtC+0LfQuCDQv9Cw0LrQtdGCIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjM0MAorIzogYnVpbHRpbi9yZXBhY2suYzozMzgKIG1zZ2lkICJjYW5ub3QgZGVsZXRlIHBhY2tzIGluIGEgcHJlY2lvdXMtb2JqZWN0cyByZXBvIgogbXNnc3RyICLQv9Cw0LrQtdGC0LjRgtC1INCyINGF0YDQsNC90LjQu9C40YnQtSDRgSDQstCw0LbQvdC4INC+0LHQtdC60YLQuCDQvdC1INC80L7QttC1INC00LAg0YHQtSDRgtGA0LjRj9GCIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjM0NAorIzogYnVpbHRpbi9yZXBhY2suYzozNDIKIG1zZ2lkICItLWtlZXAtdW5yZWFjaGFibGUgYW5kIC1BIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgItCe0L/RhtC40LjRgtC1IOKAni0ta2VlcC11bnJlYWNoYWJsZeKAnCDQuCDigJ4tQeKAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzo1MjcKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NDI1Cittc2dpZCAiTm90aGluZyBuZXcgdG8gcGFjay4iCittc2dzdHIgItCd0LjRidC+INC90L7QstC+INC30LAg0L/QsNC60LXRgtC40YDQsNC90LUiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NDg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXQVJOSU5HOiBTb21lIHBhY2tzIGluIHVzZSBoYXZlIGJlZW4gcmVuYW1lZCBieVxuIgorIldBUk5JTkc6IHByZWZpeGluZyBvbGQtIHRvIHRoZWlyIG5hbWUsIGluIG9yZGVyIHRvXG4iCisiV0FSTklORzogcmVwbGFjZSB0aGVtIHdpdGggdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZVxuIgorIldBUk5JTkc6IGZpbGUuICBCdXQgdGhlIG9wZXJhdGlvbiBmYWlsZWQsIGFuZCB0aGVcbiIKKyJXQVJOSU5HOiBhdHRlbXB0IHRvIHJlbmFtZSB0aGVtIGJhY2sgdG8gdGhlaXJcbiIKKyJXQVJOSU5HOiBvcmlnaW5hbCBuYW1lcyBhbHNvIGZhaWxlZC5cbiIKKyJXQVJOSU5HOiBQbGVhc2UgcmVuYW1lIHRoZW0gaW4gJXMgbWFudWFsbHk6XG4iCittc2dzdHIgIiIKKyLQn9Cg0JXQlNCj0J/QoNCV0JbQlNCV0J3QmNCVOiDQl9CwINC00LAg0LHRitC00LDRgiDQt9Cw0LzQtdC90LXQvdC4INGBINC90L7QstC4INCy0LXRgNGB0LjQuCwg0L3Rj9C60L7QuFxuIgorItCf0KDQldCU0KPQn9Cg0JXQltCU0JXQndCY0JU6INC/0LDQutC10YLQvdC4INGE0LDQudC70L7QstC1INCx0Y/RhdCwINC/0YDQtdC40LzQtdC90YPQstCw0L3QuCwg0LrQsNGC0L4g0LrRitC8XG4iCisi0J/QoNCV0JTQo9Cf0KDQldCW0JTQldCd0JjQlTog0LjQvNC10L3QsNGC0LAg0LjQvCDQsdC1INC00L7QsdCw0LLQtdC9INC/0YDQtdGE0LjQutGB0YrRgiDigJ5vbGQt4oCcLlxuIgorItCf0KDQldCU0KPQn9Cg0JXQltCU0JXQndCY0JU6INCi0LDQt9C4INC+0L/QtdGA0LDRhtC40Y8g0LHQtSDQvdC10YPRgdC/0LXRiNC90LAsINC60LDQutGC0L4g0Lgg0L7QsdGA0LDRgtC90LDRgtCwXG4iCisi0J/QoNCV0JTQo9Cf0KDQldCW0JTQldCd0JjQlTog0LjMgCDigJQg0LfQsCDQstGA0YrRidCw0L3QtdGC0L4g0L3QsCDQv9GK0YDQstC+0L3QsNGH0LDQu9C90LjRgtC1INC40LzQtdC90LAuXG4iCisi0J/QoNCV0JTQo9Cf0KDQldCW0JTQldCd0JjQlTog0J/RgNC10LjQvNC10L3Rg9Cy0LDQudGC0LUg0YTQsNC50LvQvtCy0LXRgtC1INCyIOKAniVz4oCcINGA0YrRh9C90L46XG4iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZW1vdmUgJyVzJyIKIG1zZ3N0ciAi0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YLRgNC40YLQsCIKQEAgLTE2NzE2LDEyICsyMDEwMyw3IEBACiBtc2dpZCAiZ2l0IHJlcGxhY2UgWy0tZm9ybWF0PTxmb3JtYXQ+XSBbLWwgWzxwYXR0ZXJuPl1dIgogbXNnc3RyICJnaXQgcmVwbGFjZSBbLS1mb3JtYXQ90KTQntCg0JzQkNCiXSBbLWwgW9Co0JDQkdCb0J7QnV1dIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1OCBidWlsdGluL3JlcGxhY2UuYzoyMDMgYnVpbHRpbi9yZXBsYWNlLmM6MjA2Ci0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYiCi1tc2dzdHIgIuKAniVz4oCcINC90LUg0LUg0YPQutCw0LfQsNGC0LXQuyDQuNC70Lgg0L3QtSDRgdC+0YfQuCDQutGK0Lwg0L3QuNGJ0L4iCi0KLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjg2CisjOiBidWlsdGluL3JlcGxhY2UuYzo5MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiaW52YWxpZCByZXBsYWNlIGZvcm1hdCAnJXMnXG4iCkBAIC0xNjczMCwyNyArMjAxMTIsMjcgQEAKICLQvdC10L/RgNCw0LLQuNC70LXQvSDRhNC+0YDQvNCw0YIg0YHQsCDQt9Cw0LzQtdGB0YLQstCw0L3QtTog4oCeJXPigJxcbiIKICLQstGK0LfQvNC+0LbQvdC40YLQtSDRhNC+0YDQvNCw0YLQuCDRgdCwIOKAnnNob3J04oCcICjQutGA0LDRgtGK0LopLCDigJ5tZWRpdW3igJwgKNGB0YDQtdC00LXQvSkg0Lgg4oCebG9uZ+KAnCAo0LTRitC70YrQsykiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjEyMQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTI1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2UgcmVmICclcycgbm90IGZvdW5kIgogbXNnc3RyICLRg9C60LDQt9Cw0YLQtdC70Y/RgiDQt9CwINC30LDQvNGP0L3QsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGCIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoxMzcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWxldGVkIHJlcGxhY2UgcmVmICclcyciCiBtc2dzdHIgItCj0LrQsNC30LDRgtC10LvRj9GCINC30LAg0LfQsNC80Y/QvdCwINC1INC40LfRgtGA0LjRgjog4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE0OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVmIG5hbWUiCiBtc2dzdHIgIuKAniVz4oCcINC1INC90LXQv9GA0LDQstC40LvQvdC+INC40LzQtSDQt9CwINGD0LrQsNC30LDRgtC10Lsg0LfQsCDQt9Cw0LzRj9C90LAiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE1NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2UgcmVmICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCINC30LAg0LfQsNC80Y/QvdCwIOKAniVz4oCcINCy0LXRh9C1INGB0YrRidC10YHRgtCy0YPQstCwIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoxNzQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiT2JqZWN0cyBtdXN0IGJlIG9mIHRoZSBzYW1lIHR5cGUuXG4iCkBAIC0xNjc2MSw3NiArMjAxNDMsODEgQEAKICLigJ4lc+KAnCDRgdC+0YfQuCDQutGK0Lwg0LfQsNC80LXQvdC10L0g0L7QsdC10LrRgiDigJ4lc+KAnCxcbiIKICLQsCDigJ4lc+KAnCDRgdC+0YfQuCDQutGK0Lwg0LfQsNC80LXRgdGC0LLQsNGJINC+0LHQtdC60YIg0L7RgiDQstC40LQg4oCeJXPigJwuIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyMjUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjIyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGluZyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQstC+0YDQtdC9INC30LAg0LfQsNC/0LjRgSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjM4CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNDIKIG1zZ2lkICJjYXQtZmlsZSByZXBvcnRlZCBmYWlsdXJlIgogbXNnc3RyICLQuNC30L/RitC70L3QtdC90LjQtdGC0L4g0L3QsCDigJ5jYXQtZmlsZeKAnCDQt9Cw0LLRitGA0YjQuCDRgSDQs9GA0LXRiNC60LAiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI1NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MjU4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciByZWFkaW5nIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtCy0L7RgNC10L0g0LfQsCDRh9C10YLQtdC90LUiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI2OAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MjcyCiBtc2dpZCAidW5hYmxlIHRvIHNwYXduIG1rdHJlZSIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0YHRitC30LTQsNC00LUg0L/RgNC+0YbQtdGBINC30LAg4oCebWt0cmVl4oCcIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyNzIKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3NgogbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gbWt0cmVlIgogbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9GA0L7Rh9C10YLQtSDQvtGCIOKAnm1rdHJlZeKAnCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjgxCisjOiBidWlsdGluL3JlcGxhY2UuYzoyODUKIG1zZ2lkICJta3RyZWUgcmVwb3J0ZWQgZmFpbHVyZSIKIG1zZ3N0ciAi4oCebWt0cmVl4oCcINC30LDQstGK0YDRiNC4INGBINCz0YDQtdGI0LrQsCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg1CisjOiBidWlsdGluL3JlcGxhY2UuYzoyODkKIG1zZ2lkICJta3RyZWUgZGlkIG5vdCByZXR1cm4gYW4gb2JqZWN0IG5hbWUiCiBtc2dzdHIgIuKAnm1rdHJlZeKAnCDQvdC1INCy0YrRgNC90LAg0LjQvNC1INC90LAg0L7QsdC10LrRgiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjk0CisjOiBidWlsdGluL3JlcGxhY2UuYzoyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZzdGF0ICVzIgogbXNnc3RyICLigJ5mc3RhdOKAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQuNC30L/RitC70L3QuCDQstGK0YDRhdGDIOKAniVz4oCcIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyOTkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMwMwogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBvYmplY3QgdG8gZGF0YWJhc2UiCiBtc2dzdHIgItC+0LHQtdC60YLRitGCINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0L/QuNGB0LDQvSDQsiDQsdCw0LfQsNGC0LAg0L7RgiDQtNCw0L3QvdC4IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozMTggYnVpbHRpbi9yZXBsYWNlLmM6MzcxIGJ1aWx0aW4vcmVwbGFjZS5jOjQxNQotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDQ1CisjOiBidWlsdGluL3JlcGxhY2UuYzozMjIgYnVpbHRpbi9yZXBsYWNlLmM6Mzc4IGJ1aWx0aW4vcmVwbGFjZS5jOjQyNAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QviDQuNC80LUg0L3QsCDQvtCx0LXQutGCOiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzIyCisjOiBidWlsdGluL3JlcGxhY2UuYzozMjYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdldCBvYmplY3QgdHlwZSBmb3IgJXMiCiBtc2dzdHIgItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0L/RgNC10LTQtdC70Lgg0LLQuNC00YrRgiDQvdCwINC+0LHQtdC60YLQsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzM4CisjOiBidWlsdGluL3JlcGxhY2UuYzozNDIKIG1zZ2lkICJlZGl0aW5nIG9iamVjdCBmaWxlIGZhaWxlZCIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INGA0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDRhNCw0LnQu9CwINGBINC+0LHQtdC60YLQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjM0NworIzogYnVpbHRpbi9yZXBsYWNlLmM6MzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBvYmplY3QgaXMgdGhlIHNhbWUgYXMgdGhlIG9sZCBvbmU6ICclcyciCiBtc2dzdHIgItC90L7QstC40Y/RgiDQuCDRgdGC0LDRgNC40Y/RgiDQvtCx0LXQutGCINGB0LAg0LXQtNC40L0g0Lgg0YHRitGJOiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDA3CisjOiBidWlsdGluL3JlcGxhY2UuYzozODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlICVzIGFzIGEgY29tbWl0IgorbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQsNC90LDQu9C40LfQuNGA0LAg0LrQsNGC0L4g0L/QvtC00LDQstCw0L3QtSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDE2CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBtZXJnZXRhZyBpbiBjb21taXQgJyVzJyIKIG1zZ3N0ciAi0LXRgtC40LrQtdGC0YrRgiDQv9GA0Lgg0YHQu9C40LLQsNC90LUg0LIg0L/QvtC00LDQstCw0L3QtdGC0L4g4oCeJXPigJwgZSDQvdC10L/RgNCw0LLQuNC70LXQvSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDA5CisjOiBidWlsdGluL3JlcGxhY2UuYzo0MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG1lcmdldGFnIGluIGNvbW1pdCAnJXMnIgogbXNnc3RyICLQtdGC0LjQutC10YLRitGCINC/0YDQuCDRgdC70LjQstCw0L3QtSDQsiDQv9C+0LTQsNCy0LDQvdC10YLQviDigJ4lc+KAnCBlINC90LXQv9GA0LDQstC40LvQtdC9IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MjEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAib3JpZ2luYWwgY29tbWl0ICclcycgY29udGFpbnMgbWVyZ2V0YWcgJyVzJyB0aGF0IGlzIGRpc2NhcmRlZDsgdXNlIC0tZWRpdCAiCkBAIC0xNjgzOSwzMSArMjAyMjYsMzEgQEAKICLQn9GK0YDQstC+0L3QsNGH0LDQu9C90L7RgtC+INC/0L7QtNCw0LLQsNC90LUg4oCeJXPigJwg0YHRitC00YrRgNC20LAg0LXRgtC40LrQtdGC0LAg0L/RgNC4INGB0LvQuNCy0LDQvdC1IOKAniVz4oCcLCDQutC+0LnRgtC+INC1ICIKICLQuNC30YXQstGK0YDQu9C10L0sINC30LDRgtC+0LLQsCDQuNC30L/QvtC70LfQstCw0LnRgtC1INC+0L/RhtC40Y/RgtCwIOKAni0tZWRpdOKAnCwg0LAg0L3QtSDigJ4tLWdyYWZ04oCcLiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDYwCisjOiBidWlsdGluL3JlcGxhY2UuYzo0NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlIG9yaWdpbmFsIGNvbW1pdCAnJXMnIGhhcyBhIGdwZyBzaWduYXR1cmUiCiBtc2dzdHIgItC/0YrRgNCy0L7QvdCw0YfQsNC70L3QvtGC0L4g0L/QvtC00LDQstCw0L3QtSDigJ4lc+KAnCDQtSDRgSDQv9C+0LTQv9C40YEg0L3QsCBHUEciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ2MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDcwCiBtc2dpZCAidGhlIHNpZ25hdHVyZSB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIHJlcGxhY2VtZW50IGNvbW1pdCEiCiBtc2dzdHIgItCf0L7QtNC/0LjRgdGK0YIg0YnQtSDQsdGK0LTQtSDQv9GA0LXQvNCw0YXQvdCw0YIg0LIg0LfQsNC80LXQvdGP0YnQvtGC0L4g0L/QvtC00LDQstCw0L3QtSEiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDgwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSByZXBsYWNlbWVudCBjb21taXQgZm9yOiAnJXMnIgogbXNnc3RyICLQt9Cw0LzQtdC90Y/RidC+0YLQviDQv9C+0LTQsNCy0LDQvdC1INC30LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC30LDQv9C40YHQsNC90L4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDg4CiAjLCBjLWZvcm1hdAogbXNnaWQgImdyYWZ0IGZvciAnJXMnIHVubmVjZXNzYXJ5IgogbXNnc3RyICLQv9GA0LjRgdCw0LTQutCw0YLQsCDQt9CwIOKAniVz4oCcINC1INC40LfQu9C40YjQvdCwIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0ODIKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgY29tbWl0IGlzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lOiAnJXMnIgogbXNnc3RyICLQvdC+0LLQvtGC0L4g0Lgg0YHRgtCw0YDQvtGC0L4g0L/QvtC00LDQstCw0L3QtSDRgdCwINC10LTQvdC+INC4INGB0YrRidC+OiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTE1CisjOiBidWlsdGluL3JlcGxhY2UuYzo1MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNvdWxkIG5vdCBjb252ZXJ0IHRoZSBmb2xsb3dpbmcgZ3JhZnQocyk6XG4iCkBAIC0xNjg3Miw3MSArMjAyNTksNzEgQEAKICLRgdC70LXQtNC90LjRgtC1INC/0YDQuNGB0LDQtNC60Lgg0L3QtSDQvNC+0LPQsNGCINC00LAg0YHQtSDQv9GA0LXQvtCx0YDQsNC30YPQstCw0YI6XG4iCiAiJXMiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzNgorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ4CiBtc2dpZCAibGlzdCByZXBsYWNlIHJlZnMiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINGB0L/QuNGB0YrQutCwINGBINGD0LrQsNC30LDRgtC10LvQuNGC0LUg0LfQsCDQt9Cw0LzRj9C90LAiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzNworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ5CiBtc2dpZCAiZGVsZXRlIHJlcGxhY2UgcmVmcyIKIG1zZ3N0ciAi0LjQt9GC0YDQuNCy0LDQvdC1INC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSDQt9CwINC30LDQvNGP0L3QsCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM4CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTAKIG1zZ2lkICJlZGl0IGV4aXN0aW5nIG9iamVjdCIKIG1zZ3N0ciAi0YDQtdC00LDQutGC0LjRgNCw0L3QtSDQvdCwINGB0YrRidC10YHRgtCy0YPQstCw0Ykg0L7QsdC10LrRgiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM5CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTEKIG1zZ2lkICJjaGFuZ2UgYSBjb21taXQncyBwYXJlbnRzIgogbXNnc3RyICLRgdC80Y/QvdCwINC90LAg0YDQvtC00LjRgtC10LvQuNGC0LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDAKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MgogbXNnaWQgImNvbnZlcnQgZXhpc3RpbmcgZ3JhZnQgZmlsZSIKIG1zZ3N0ciAi0L/RgNC10L7QsdGA0LDQt9GD0LLQsNC90LUg0L3QsCDRhNCw0LnQu9CwINC30LAg0L/RgNC40YHQsNC00LrQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUzCiBtc2dpZCAicmVwbGFjZSB0aGUgcmVmIGlmIGl0IGV4aXN0cyIKIG1zZ3N0ciAi0LfQsNC80Y/QvdCwINC90LAg0YPQutCw0LfQsNGC0LXQu9GPLCDQsNC60L4g0YHRitGJ0LXRgdGC0LLRg9Cy0LAiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0MworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU1CiBtc2dpZCAiZG8gbm90IHByZXR0eS1wcmludCBjb250ZW50cyBmb3IgLS1lZGl0IgogbXNnc3RyICLQsdC10Lcg0YTQvtGA0LzQsNGC0LjRgNCw0L3QviDQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRgdGK0LTRitGA0LbQsNC90LjQtdGC0L4g4oCUINC30LAg0L7Qv9GG0LjRj9GC0LAg4oCeLS1lZGl04oCcIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NgogbXNnaWQgInVzZSB0aGlzIGZvcm1hdCIKIG1zZ3N0ciAi0LjQt9C/0L7Qu9C30LLQsNC90LUg0L3QsCDRgtC+0LfQuCDQpNCe0KDQnNCQ0KIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY5CiBtc2dpZCAiLS1mb3JtYXQgY2Fubm90IGJlIHVzZWQgd2hlbiBub3QgbGlzdGluZyIKIG1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1mb3JtYXTigJwg0LjQt9C40YHQutCy0LAg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHQv9C40YHRitC6IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NjUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU3NwogbXNnaWQgIi1mIG9ubHkgbWFrZXMgc2Vuc2Ugd2hlbiB3cml0aW5nIGEgcmVwbGFjZW1lbnQiCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni1m4oCcINC40LfQuNGB0LrQstCwINC30LDQv9Cw0LfQstCw0L3QtdGC0L4g0L3QsCDQt9Cw0LzQtdGB0YLQuNGC0LXQuyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY5CisjOiBidWlsdGluL3JlcGxhY2UuYzo1ODEKIG1zZ2lkICItLXJhdyBvbmx5IG1ha2VzIHNlbnNlIHdpdGggLS1lZGl0IgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLXJhd+KAnCDQuNC30LjRgdC60LLQsCDigJ4tLWVkaXTigJwiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU3NQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTg3CiBtc2dpZCAiLWQgbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tZOKAnCDQuNC30LjRgdC60LLQsCDQv9C+0L3QtSDQtdC00LjQvSDQsNGA0LPRg9C80LXQvdGCIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1ODEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5MwogbXNnaWQgImJhZCBudW1iZXIgb2YgYXJndW1lbnRzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQsdGA0L7QuSDQsNGA0LPRg9C80LXQvdGC0LgiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4NworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTk5CiBtc2dpZCAiLWUgbmVlZHMgZXhhY3RseSBvbmUgYXJndW1lbnQiCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni1l4oCcINC40LfQuNGB0LrQstCwINC/0L7QvdC1INC10LTQuNC9INCw0YDQs9GD0LzQtdC90YIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5MworIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA1CiBtc2dpZCAiLWcgbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tZ+KAnCDQuNC30LjRgdC60LLQsCDQv9C+0L3QtSDQtdC00LjQvSDQsNGA0LPRg9C80LXQvdGCIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1OTkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYxMQogbXNnaWQgIi0tY29udmVydC1ncmFmdC1maWxlIHRha2VzIG5vIGFyZ3VtZW50IgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLWNvbnZlcnQtZ3JhZnQtZmlsZeKAnCDQvdC1INC/0YDQuNC10LzQsCDQsNGA0LPRg9C80LXQvdGC0LgiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYwNQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NjE3CiBtc2dpZCAib25seSBvbmUgcGF0dGVybiBjYW4gYmUgZ2l2ZW4gd2l0aCAtbCIKIG1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLWzigJwg0L/RgNC40LXQvNCwINGC0L7Rh9C90L4g0LXQtNC40L0g0YjQsNCx0LvQvtC9IgogCkBAIC0xNjk1MiwxMjggKzIwMzM5LDE0MiBAQAogbXNnaWQgIidnaXQgcmVyZXJlIGZvcmdldCcgd2l0aG91dCBwYXRocyBpcyBkZXByZWNhdGVkIgogbXNnc3RyICLQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0IHJlcmVyZSBmb3JnZXTigJwg0LjQt9C40YHQutCy0LAg0YPQutCw0LfQstCw0L3QtdGC0L4g0L3QsCDQv9GK0YIiCiAKLSM6IGJ1aWx0aW4vcmVyZXJlLmM6MTExCisjOiBidWlsdGluL3JlcmVyZS5jOjExMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ2VuZXJhdGUgZGlmZiBmb3IgJyVzJyIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INCz0LXQvdC10YDQuNGA0LDQvdC1INC90LAg0YDQsNC30LvQuNC60LAg0LfQsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMxCisjOiBidWlsdGluL3Jlc2V0LmM6MzIKIG1zZ2lkICIiCiAiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPGNvbW1pdD5dIgogbXNnc3RyICIiCiAiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBb0J/QntCU0JDQktCQ0J3QlV0iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMgotbXNnaWQgImdpdCByZXNldCBbLXFdIFs8dHJlZS1pc2g+XSBbLS1dIDxwYXRocz4uLi4iCi1tc2dzdHIgImdpdCByZXNldCBbLXFdINCj0JrQkNCX0JDQotCV0Jtf0JrQqtCcX9CU0KrQoNCS0J4gWy0tXSDQn9Cq0KLQmNCp0JDigKYiCi0KICM6IGJ1aWx0aW4vcmVzZXQuYzozMwotbXNnaWQgImdpdCByZXNldCAtLXBhdGNoIFs8dHJlZS1pc2g+XSBbLS1dIFs8cGF0aHM+Li4uXSIKK21zZ2lkICJnaXQgcmVzZXQgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgorbXNnc3RyICJnaXQgcmVzZXQgWy1xXSBb0KPQmtCQ0JfQkNCi0JXQm1/QmtCq0Jxf0JTQqtCg0JLQnl0gWy0tXSDQn9Cq0KLQmNCp0JDigKYiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNAorbXNnaWQgIiIKKyJnaXQgcmVzZXQgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGUgWy0tcGF0aHNwZWMtZmlsZS1udWxdXSBbPHRyZWUtaXNoPl0iCittc2dzdHIgIiIKKyJnaXQgcmVzZXQgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGUgWy0tcGF0aHNwZWMtZmlsZS1udWxdXSAiCisiW9Cj0JrQkNCX0JDQotCV0Jtf0JrQqtCcX9CU0KrQoNCS0J5dIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzUKK21zZ2lkICJnaXQgcmVzZXQgLS1wYXRjaCBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzcGVjPi4uLl0iCiBtc2dzdHIgImdpdCByZXNldCAtLXBhdGNoIFvQo9Ca0JDQl9CQ0KLQldCbX9Ca0KrQnF/QlNCq0KDQktCeXSBbLS1dIFvQn9Cq0KLQmNCp0JDigKZdIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgIm1peGVkIgogbXNnc3RyICLRgdC80LXRgdC10L3QviAobWl4ZWQpIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgInNvZnQiCiBtc2dzdHIgItC80LXQutC+IChzb2Z0KSIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJoYXJkIgogbXNnc3RyICLQv9GK0LvQvdC+IChoYXJkKSIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJtZXJnZSIKIG1zZ3N0ciAi0YHQu9GP0YLQviAobWVyZ2UpIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgImtlZXAiCiBtc2dzdHIgItC30LDQv9Cw0LfQstCw0YnQviAoa2VlcCkiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo4MAorIzogYnVpbHRpbi9yZXNldC5jOjgyCiBtc2dpZCAiWW91IGRvIG5vdCBoYXZlIGEgdmFsaWQgSEVBRC4iCiBtc2dzdHIgItCj0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0LUg0L/QvtCy0YDQtdC00LXQvS4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo4MgorIzogYnVpbHRpbi9yZXNldC5jOjg0CiBtc2dpZCAiRmFpbGVkIHRvIGZpbmQgdHJlZSBvZiBIRUFELiIKIG1zZ3N0ciAi0JTRitGA0LLQvtGC0L4sINGB0L7Rh9C10L3QviDQvtGCINGD0LrQsNC30LDRgtC10LvRjyDigJ5IRUFE4oCcLCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGC0L4uIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6ODgKKyM6IGJ1aWx0aW4vcmVzZXQuYzo5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzLiIKIG1zZ3N0ciAi0JTRitGA0LLQvtGC0L4sINGB0L7Rh9C10L3QviDQvtGCIOKAniVz4oCcLCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGC0L4uIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MTkyCisjOiBidWlsdGluL3Jlc2V0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgaXMgbm93IGF0ICVzIgorbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINGB0L7Rh9C4INC60YrQvCDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9yZXNldC5jOjE5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZG8gYSAlcyByZXNldCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UuIgogbXNnc3RyICLQndC1INC80L7QttC1INC00LAg0YHQtSDQuNC30LLRitGA0YjQuCAlcyDQt9Cw0L3Rg9C70Y/QstCw0L3QtSDQv9C+INCy0YDQtdC80LUg0L3QsCDRgdC70LjQstCw0L3QtS4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTIKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQgYnVpbHRpbi9zdGFzaC5jOjUyMCBidWlsdGluL3N0YXNoLmM6NTk1CisjOiBidWlsdGluL3N0YXNoLmM6NjE5CiBtc2dpZCAiYmUgcXVpZXQsIG9ubHkgcmVwb3J0IGVycm9ycyIKIG1zZ3N0ciAi0L/Qvi3QvNCw0LvQutC+INC/0L7QtNGA0L7QsdC90L7RgdGC0LgsINC00LAg0YHQtSDQuNC30LLQtdC20LTQsNGCINGB0LDQvNC+INCz0YDQtdGI0LrQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTYKIG1zZ2lkICJyZXNldCBIRUFEIGFuZCBpbmRleCIKIG1zZ3N0ciAi0LjQvdC00LXQutGB0LAg0Lgg0YPQutCw0LfQsNGC0LXQu9GPIOKAnkhFQUTigJwsINCx0LXQtyDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI5NQorIzogYnVpbHRpbi9yZXNldC5jOjI5NwogbXNnaWQgInJlc2V0IG9ubHkgSEVBRCIKIG1zZ3N0ciAi0YHQsNC80L4g0YPQutCw0LfQsNGC0LXQu9GPIOKAnkhFQUTigJwsINCx0LXQtyDQuNC90LTQtdC60YHQsCDQuCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI5NyBidWlsdGluL3Jlc2V0LmM6Mjk5CisjOiBidWlsdGluL3Jlc2V0LmM6Mjk5IGJ1aWx0aW4vcmVzZXQuYzozMDEKIG1zZ2lkICJyZXNldCBIRUFELCBpbmRleCBhbmQgd29ya2luZyB0cmVlIgogbXNnc3RyICLRg9C60LDQt9Cw0YLQtdC70Y8g4oCeSEVBROKAnCwg0LjQvdC00LXQutGB0LAg0Lgg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMDEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMDMKIG1zZ2lkICJyZXNldCBIRUFEIGJ1dCBrZWVwIGxvY2FsIGNoYW5nZXMiCiBtc2dzdHIgItC30LDQvdGD0LvRj9Cy0LDQvdC1INC90LAg0YPQutCw0LfQsNGC0LXQu9GPIOKAnkhFQUTigJwsINC90L4g0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0LvQvtC60LDQu9C90LjRgtC1INC/0YDQvtC80LXQvdC4IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzA3CisjOiBidWlsdGluL3Jlc2V0LmM6MzA5CiBtc2dpZCAicmVjb3JkIG9ubHkgdGhlIGZhY3QgdGhhdCByZW1vdmVkIHBhdGhzIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCiBtc2dzdHIgIiIKICLQvtGC0LHQtdC70Y/Qt9Cy0LDQvdC1INGB0LDQvNC+INC90LAg0YTQsNC60YLQsCwg0YfQtSDQuNC30YLRgNC40YLQuNGC0LUg0L/RitGC0LjRidCwINGJ0LUg0LHRitC00LDRgiDQtNC+0LHQsNCy0LXQvdC4INC/0L4t0LrRitGB0L3QviIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMyNQorIzogYnVpbHRpbi9yZXNldC5jOjM0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmV2aXNpb24uIgogbXNnc3RyICLQodGC0L7QudC90L7RgdGC0YLQsCDigJ4lc+KAnCDQvdC1INC1INGA0LDQt9C/0L7Qt9C90LDRgtCwINC60LDRgtC+INGB0YrRidC10YHRgtCy0YPQstCw0YnQsCDQstC10YDRgdC40Y8uIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzMzCisjOiBidWlsdGluL3Jlc2V0LmM6MzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCB0cmVlLiIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQtSDRgNCw0LfQv9C+0LfQvdCw0YIg0LrQsNGC0L4g0LTRitGA0LLQvi4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNDIKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNjAKIG1zZ2lkICItLXBhdGNoIGlzIGluY29tcGF0aWJsZSB3aXRoIC0te2hhcmQsbWl4ZWQsc29mdH0iCiBtc2dzdHIgIiIKLSLQvtC/0YbQuNGP0YLQsCDigJ4tLXBhdGNo4oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgSDQstGB0Y/QutCwINC+0YIg0L7Qv9GG0LjQuNGC0LUg4oCeLS1oYXJkLy0tbWl4ZWQvLS1zb2Z04oCcIgorItC+0L/RhtC40Y/RgtCwIOKAni0tcGF0Y2jigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBINCy0YHRj9C60LAg0L7RgiDQvtC/0YbQuNC40YLQtSDigJ4tLWhhcmTigJwv4oCeLS1taXhlZOKAnC/igJ4tLSIKKyJzb2Z04oCcIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzUxCisjOiBidWlsdGluL3Jlc2V0LmM6MzcwCiBtc2dpZCAiLS1taXhlZCB3aXRoIHBhdGhzIGlzIGRlcHJlY2F0ZWQ7IHVzZSAnZ2l0IHJlc2V0IC0tIDxwYXRocz4nIGluc3RlYWQuIgogbXNnc3RyICIiCiAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1taXhlZOKAnCDQvdC1INCx0LjQstCwINC00LAg0YHQtSDQuNC30L/QvtC70LfQstCwINC30LDQtdC00L3QviDRgSDQv9GK0YLQuNGJ0LAuICDQktC80LXRgdGC0L4g0YLQvtCy0LAgIgogItC40LfQv9GK0LvQvdC10YLQtSDigJ5naXQgcmVzZXQgLS0g0J/QqtCi4oCm4oCcLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM1MworIzogYnVpbHRpbi9yZXNldC5jOjM3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZG8gJXMgcmVzZXQgd2l0aCBwYXRocy4iCiBtc2dzdHIgItCd0LUg0LzQvtC20LUg0LTQsCDQuNC30LLRitGA0YjQuNGC0LUgJXMg0LfQsNC90YPQu9GP0LLQsNC90LUsINC60L7Qs9Cw0YLQviDRgdGC0LUg0LfQsNC00LDQu9C4INCf0KrQoi4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNjMKKyM6IGJ1aWx0aW4vcmVzZXQuYzozODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcmVzZXQgaXMgbm90IGFsbG93ZWQgaW4gYSBiYXJlIHJlcG9zaXRvcnkiCiBtc2dzdHIgItCSINCz0L7Qu9C+INGF0YDQsNC90LjQu9C40YnQtSDQvdC1INC80L7QttC1INC00LAg0LjQt9Cy0YrRgNGI0LjRgtC1ICVzINC30LDQvdGD0LvRj9Cy0LDQvdC1IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzY3CisjOiBidWlsdGluL3Jlc2V0LmM6MzkxCiBtc2dpZCAiLU4gY2FuIG9ubHkgYmUgdXNlZCB3aXRoIC0tbWl4ZWQiCi1tc2dzdHIgItCe0L/RhtC40Y/RgtCwIOKAni1O4oCcINC1INGB0YrQstC80LXRgdGC0LjQvNCwINGB0LDQvNC+INGBIOKAni0tbWl4ZWTigJwiCittc2dzdHIgItCe0L/RhtC40Y/RgtCwIOKAni1O4oCcINC40LfQuNGB0LrQstCwINC+0L/RhtC40Y/RgtCwIOKAni0tbWl4ZWTigJwiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozODcKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MTIKIG1zZ2lkICJVbnN0YWdlZCBjaGFuZ2VzIGFmdGVyIHJlc2V0OiIKIG1zZ3N0ciAi0J/RgNC+0LzQtdC90Lgg0LjQt9Cy0YrQvSDQuNC90LTQtdC60YHQsCDRgdC70LXQtCDQt9Cw0L3Rg9C70Y/QstCw0L3QtdGC0L46IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkwCisjOiBidWlsdGluL3Jlc2V0LmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTE3MDg2LDUzICsyMDQ4Nyw0OCBAQAogItCe0L/RhtC40Y/RgtCwIOKAni0tcXVpZXTigJwg0LfQsNCz0LvRg9GI0LDQstCwINGC0L7QstCwINGB0YrQvtCx0YnQtdC90LjQtSDQtdC00L3QvtC60YDQsNGC0L3Qvi4gINCX0LAg0L/QvtGB0YLQvtGP0L3QvdC+XG4iCiAi0LfQsNCz0LvRg9GI0LDQstCw0L3QtSDQt9Cw0LTQsNC50YLQtSDQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAnnJlc2V0LnF1aWV04oCcINC00LAg0LUg4oCedHJ1ZeKAnCAo0LjRgdGC0LjQvdCwKS5cbiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjQwMAorIzogYnVpbHRpbi9yZXNldC5jOjQyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVzZXQgaW5kZXggZmlsZSB0byByZXZpc2lvbiAnJXMnLiIKIG1zZ3N0ciAi0JjQvdC00LXQutGB0YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC90YPQu9C10L0g0LrRitC8INCy0LXRgNGB0LjRjyDigJ4lc+KAnC4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo0MDQKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MjkKIG1zZ2lkICJDb3VsZCBub3Qgd3JpdGUgbmV3IGluZGV4IGZpbGUuIgogbXNnc3RyICLQndC+0LLQuNGP0YIg0LjQvdC00LXQutGBINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0L/QuNGB0LDQvS4iCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0MDMKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0OTkKIG1zZ2lkICJjYW5ub3QgY29tYmluZSAtLWV4Y2x1ZGUtcHJvbWlzb3Itb2JqZWN0cyBhbmQgLS1taXNzaW5nIgogbXNnc3RyICLQvtC/0YbQuNC40YLQtSDigJ4tLWV4Y2x1ZGUtcHJvbWlzb3Itb2JqZWN0c+KAnCDQuCDigJ4tLW1pc3NpbmfigJwg0Lgg0YHQsCDQvdC10YHRitCy0LzQtdGB0YLQuNC80LgiCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0NjEKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1NjAKIG1zZ2lkICJvYmplY3QgZmlsdGVyaW5nIHJlcXVpcmVzIC0tb2JqZWN0cyIKIG1zZ3N0ciAi0YTQuNC70YLRgNC40YDQsNC90LXRgtC+INC90LAg0L7QsdC10LrRgtC4INC40LfQuNGB0LrQstCwINC+0L/RhtC40Y/RgtCwIOKAni0tb2JqZWN0c+KAnCIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQ2NAotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIHNwYXJzZSB2YWx1ZSAnJXMnIgotbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70L3QsCDRh9Cw0YHRgtC40YfQvdCwINGB0YLQvtC50L3QvtGB0YI6ICVzIgotCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NTA1CisjOiBidWlsdGluL3Jldi1saXN0LmM6NjEwCiBtc2dpZCAicmV2LWxpc3QgZG9lcyBub3Qgc3VwcG9ydCBkaXNwbGF5IG9mIG5vdGVzIgogbXNnc3RyICLQutC+0LzQsNC90LTQsNGC0LAg4oCecmV2LWxpc3TigJwg0L3QtSDQv9C+0LTQtNGK0YDQttCwINC40LfQstC10LbQtNCw0L3QtdGC0L4g0L3QsCDQsdC10LvQtdC20LrQuCIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjUwOAotbXNnaWQgImNhbm5vdCBjb21iaW5lIC0tdXNlLWJpdG1hcC1pbmRleCB3aXRoIG9iamVjdCBmaWx0ZXJpbmciCi1tc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tdXNlLWJpdG1hcC1pbmRleOKAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg0YTQuNC70YLRgNC40YDQsNC90LUg0L3QsCDQvtCx0LXQutGC0LjRgtC1IgorIzogYnVpbHRpbi9yZXYtbGlzdC5jOjYxNQorbXNnaWQgIm1hcmtlZCBjb3VudGluZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW9iamVjdHMiCittc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tb2JqZWN0c+KAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg0LjQt9Cx0YDQvtGP0LLQsNC90LXRgtC+IgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQwNworIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MDgKIG1zZ2lkICJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHRpb25zPl0gLS0gWzxhcmdzPi4uLl0iCiBtc2dzdHIgImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBb0J7Qn9Cm0JjQr+KApl0gLS0gW9CQ0KDQk9Cj0JzQldCd0KLigKZdIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxMgorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTMKIG1zZ2lkICJrZWVwIHRoZSBgLS1gIHBhc3NlZCBhcyBhbiBhcmciCiBtc2dzdHIgItC30LDQtNCw0LTQtdC90LjRj9GCINC90LjQtyDigJ4tLeKAnCDQtNCwINGB0LUg0YLRitC70LrRg9Cy0LAg0LrQsNGC0L4g0LDRgNCz0YPQvNC10L3RgiIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTQKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE1CiBtc2dpZCAic3RvcCBwYXJzaW5nIGFmdGVyIHRoZSBmaXJzdCBub24tb3B0aW9uIGFyZ3VtZW50IgogbXNnc3RyICLRgdC/0LjRgNCw0L3QtSDQvdCwINCw0L3QsNC70LjQt9CwINGB0LvQtdC0INC/0YrRgNCy0LjRjyDQsNGA0LPRg9C80LXQvdGCLCDQutC+0LnRgtC+INC90LUg0LUg0L7Qv9GG0LjRjyIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTcKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE4CiBtc2dpZCAib3V0cHV0IGluIHN0dWNrIGxvbmcgZm9ybSIKIG1zZ3N0ciAi0LjQt9GF0L7QtCDQsiDQtNGK0LvQs9C40Y8g0YTQvtGA0LzQsNGCIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjU1MAorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo1NTEKIG1zZ2lkICIiCiAiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IFs8b3B0aW9ucz5dIC0tIFs8YXJncz4uLi5dXG4iCiAiICAgb3I6IGdpdCByZXYtcGFyc2UgLS1zcS1xdW90ZSBbPGFyZz4uLi5dXG4iCkBAIC0xNzE2Myw3MiArMjA1NTksODEgQEAKIG1zZ2lkICJnaXQgY2hlcnJ5LXBpY2sgPHN1YmNvbW1hbmQ+IgogbXNnc3RyICJnaXQgY2hlcnJ5LXBpY2sg0J/QntCU0JrQntCc0JDQndCU0JAiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6OTEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBhIG51bWJlciBncmVhdGVyIHRoYW4gemVybyIKK21zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeJXPigJwg0L7Rh9Cw0LrQstCwINC/0L7Qu9C+0LbQuNGC0LXQu9C90L4g0YfQuNGB0LvQviDQt9CwINCw0YDQs9GD0LzQtdC90YIiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6ICVzIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiCiBtc2dzdHIgIiVzOiDQvtC/0YbQuNGP0YLQsCDigJ4lc+KAnCDQtSDQvdC10YHRitCy0LzQtdGB0YLQuNC80LAg0YEg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAwCisjOiBidWlsdGluL3JldmVydC5jOjEwMgogbXNnaWQgImVuZCByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCiBtc2dzdHIgItC30LDQstGK0YDRiNCy0LDQvdC1INC90LAg0L/QvtGA0LXQtNC40YbQsCDQvtGCINC+0YLQsdC40YDQsNC90LjRjyDQuNC70Lgg0L7RgtC80LXQvdC4INC90LAg0L/QvtC00LDQstCw0L3QuNGPIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwMQorIzogYnVpbHRpbi9yZXZlcnQuYzoxMDMKIG1zZ2lkICJyZXN1bWUgcmV2ZXJ0IG9yIGNoZXJyeS1waWNrIHNlcXVlbmNlIgogbXNnc3RyICLQv9GA0L7QtNGK0LvQttCw0LLQsNC90LUg0L3QsCDQv9C+0YDQtdC00LjRhtCwINC+0YIg0L7RgtCx0LjRgNCw0L3QuNGPINC40LvQuCDQvtGC0LzQtdC90Lgg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAyCisjOiBidWlsdGluL3JldmVydC5jOjEwNAogbXNnaWQgImNhbmNlbCByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCiBtc2dzdHIgItC+0YLQvNGP0L3QsCDQvdCwINC/0L7RgNC10LTQuNGG0LAg0L7RgiDQvtGC0LHQuNGA0LDQvdC40Y8g0LjQu9C4INC+0YLQvNC10L3QuCDQvdCwINC/0L7QtNCw0LLQsNC90LjRjyIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDMKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA1Cittc2dpZCAic2tpcCBjdXJyZW50IGNvbW1pdCBhbmQgY29udGludWUiCittc2dzdHIgItC/0YDQtdGB0LrQsNGH0LDQvdC1INC90LAg0YLQtdC60YPRidC+0YLQviDQv9C+0LTQsNCy0LDQvdC1INC4INC/0YDQvtC00YrQu9C20LDQstCw0L3QtSIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDcKIG1zZ2lkICJkb24ndCBhdXRvbWF0aWNhbGx5IGNvbW1pdCIKIG1zZ3N0ciAi0LHQtdC3INCw0LLRgtC+0LzQsNGC0LjRh9C90L4g0L/QvtC00LDQstCw0L3QtSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDQKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA4CiBtc2dpZCAiZWRpdCB0aGUgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgItGA0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC/0YDQuCDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwNworIzogYnVpbHRpbi9yZXZlcnQuYzoxMTEKIG1zZ2lkICJwYXJlbnQtbnVtYmVyIgogbXNnc3RyICLQvdC+0LzQtdGAINC90LAg0YDQvtC00LjRgtC10LvRjyIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDgKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEyCiBtc2dpZCAic2VsZWN0IG1haW5saW5lIHBhcmVudCIKIG1zZ3N0ciAi0LjQt9Cx0L7RgCDQvdCwINC+0YHQvdC+0LLQvdC40Y8g0YDQvtC00LjRgtC10LsiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCisjOiBidWlsdGluL3JldmVydC5jOjExNAogbXNnaWQgIm1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICLRgdGC0YDQsNGC0LXQs9C40Y8g0L3QsCDRgdC70LjQstCw0L3QtSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMTIKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE2CiBtc2dpZCAib3B0aW9uIGZvciBtZXJnZSBzdHJhdGVneSIKIG1zZ3N0ciAi0L7Qv9GG0LjRjyDQt9CwINGB0YLRgNCw0YLQtdCz0LjRj9GC0LAg0L3QsCDRgdC70LjQstCw0L3QtSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMjEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI1CiBtc2dpZCAiYXBwZW5kIGNvbW1pdCBuYW1lIgogbXNnc3RyICLQtNC+0LHQsNCy0Y/QvdC1INC90LAg0LjQvNC10YLQviDQvdCwINC/0L7QtNCw0LLQsNC90LXRgtC+IgogCi0jOiBidWlsdGluL3JldmVydC5jOjEyMworIzogYnVpbHRpbi9yZXZlcnQuYzoxMjcKIG1zZ2lkICJwcmVzZXJ2ZSBpbml0aWFsbHkgZW1wdHkgY29tbWl0cyIKIG1zZ3N0ciAi0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdC+INC/0YDQsNC30L3QuNGC0LUg0L/QvtC00LDQstCw0L3QuNGPIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEyNQorIzogYnVpbHRpbi9yZXZlcnQuYzoxMjkKIG1zZ2lkICJrZWVwIHJlZHVuZGFudCwgZW1wdHkgY29tbWl0cyIKIG1zZ3N0ciAi0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0LjQt9C70LjRiNC90LjRgtC1LCDQv9GA0LDQt9C90Lgg0L/QvtC00LDQstCw0L3QuNGPIgogCi0jOiBidWlsdGluL3JldmVydC5jOjIxOQorIzogYnVpbHRpbi9yZXZlcnQuYzoyMzIKIG1zZ2lkICJyZXZlcnQgZmFpbGVkIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90LAg0L7RgtC80Y/QvdCwIgogCi0jOiBidWlsdGluL3JldmVydC5jOjIzMgorIzogYnVpbHRpbi9yZXZlcnQuYzoyNDUKIG1zZ2lkICJjaGVycnktcGljayBmYWlsZWQiCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQvtGC0LHQuNGA0LDQvdC1IgogCi0jOiBidWlsdGluL3JtLmM6MTgKKyM6IGJ1aWx0aW4vcm0uYzoxOQogbXNnaWQgImdpdCBybSBbPG9wdGlvbnM+XSBbLS1dIDxmaWxlPi4uLiIKIG1zZ3N0ciAiZ2l0IHJtIFvQntCf0KbQmNCv4oCmXSBbLS1dINCk0JDQmdCb4oCmIgogCi0jOiBidWlsdGluL3JtLmM6MjA2CisjOiBidWlsdGluL3JtLmM6MjA3CiBtc2dpZCAiIgogInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgc3RhZ2VkIGNvbnRlbnQgZGlmZmVyZW50IGZyb20gYm90aCB0aGVcbiIKICJmaWxlIGFuZCB0aGUgSEVBRDoiCkBAIC0xNzI0NCw3ICsyMDY0OSw3IEBACiAi0YHRitC00YrRgNC20LDQvdC40LUg0LhcbiIKICLRgNCw0LfQu9C40YfQvdC+INC+0YIg0YHRitC+0YLQstC10YLRgdGC0LLQsNGJ0L7RgtC+INC90LAgSEVBRDoiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMTEKKyM6IGJ1aWx0aW4vcm0uYzoyMTIKIG1zZ2lkICIiCiAiXG4iCiAiKHVzZSAtZiB0byBmb3JjZSByZW1vdmFsKSIKQEAgLTE3MjUyLDEzICsyMDY1NywxMyBAQAogIlxuIgogIijQt9CwINC/0YDQuNC90YPQtNC40YLQtdC70L3QviDQuNC30YLRgNC40LLQsNC90LUg0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDQvtC/0YbQuNGP0YLQsCDigJ4tZuKAnCkiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMTUKKyM6IGJ1aWx0aW4vcm0uYzoyMTYKIG1zZ2lkICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIGNoYW5nZXMgc3RhZ2VkIGluIHRoZSBpbmRleDoiCiBtc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBjaGFuZ2VzIHN0YWdlZCBpbiB0aGUgaW5kZXg6IgogbXNnc3RyWzBdICLRgdC70LXQtNC90LjRj9GCINGE0LDQudC7INC1INGBINC/0YDQvtC80LXQvdC10L3QviDRgdGK0LTRitGA0LbQsNC90LjQtSDQsiDQuNC90LTQtdC60YHQsDoiCiBtc2dzdHJbMV0gItGB0LvQtdC00L3QuNGC0LUg0YTQsNC50LvQvtCy0LUg0YHQsCDRgSDQv9GA0L7QvNC10L3QtdC90L4g0YHRitC00YrRgNC20LDQvdC40LUg0LIg0LjQvdC00LXQutGB0LA6IgogCi0jOiBidWlsdGluL3JtLmM6MjE5IGJ1aWx0aW4vcm0uYzoyMjgKKyM6IGJ1aWx0aW4vcm0uYzoyMjAgYnVpbHRpbi9ybS5jOjIyOQogbXNnaWQgIiIKICJcbiIKICIodXNlIC0tY2FjaGVkIHRvIGtlZXAgdGhlIGZpbGUsIG9yIC1mIHRvIGZvcmNlIHJlbW92YWwpIgpAQCAtMTcyNjcsNDYgKzIwNjcyLDUwIEBACiAiKNC30LAg0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0YTQsNC50LvQsCDQuNC30L/QvtC70LfQstCw0LnRgtC1INC+0L/RhtC40Y/RgtCwIOKAni0tY2FjaGVk4oCcLCDQsCDQt9CwINC/0YDQuNC90YPQtNC40YLQtdC70L3QvlxuIgogItC40LfRgtGA0LjQstCw0L3QtSDigJQg4oCeLWbigJwpIgogCi0jOiBidWlsdGluL3JtLmM6MjI1CisjOiBidWlsdGluL3JtLmM6MjI2CiBtc2dpZCAidGhlIGZvbGxvd2luZyBmaWxlIGhhcyBsb2NhbCBtb2RpZmljYXRpb25zOiIKIG1zZ2lkX3BsdXJhbCAidGhlIGZvbGxvd2luZyBmaWxlcyBoYXZlIGxvY2FsIG1vZGlmaWNhdGlvbnM6IgogbXNnc3RyWzBdICLRgdC70LXQtNC90LjRj9GCINGE0LDQudC7INC1INGBINC/0YDQvtC80LXQvdC10L3QviDRgdGK0LTRitGA0LbQsNC90LjQtSIKIG1zZ3N0clsxXSAi0YHQu9C10LTQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSDRgdCwINGBINC/0YDQvtC80LXQvdC10L3QviDRgdGK0LTRitGA0LbQsNC90LjQtSIKIAotIzogYnVpbHRpbi9ybS5jOjI0MQorIzogYnVpbHRpbi9ybS5jOjI0MwogbXNnaWQgImRvIG5vdCBsaXN0IHJlbW92ZWQgZmlsZXMiCiBtc2dzdHIgItC00LAg0L3QtSDRgdC1INC40LfQstC10LbQtNCw0YIg0LjQt9GC0YDQuNGC0LjRgtC1INGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL3JtLmM6MjQyCisjOiBidWlsdGluL3JtLmM6MjQ0CiBtc2dpZCAib25seSByZW1vdmUgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgItC40LfRgtGA0LjQstCw0L3QtSDRgdCw0LzQviDQvtGCINC40L3QtNC10LrRgdCwIgogCi0jOiBidWlsdGluL3JtLmM6MjQzCisjOiBidWlsdGluL3JtLmM6MjQ1CiBtc2dpZCAib3ZlcnJpZGUgdGhlIHVwLXRvLWRhdGUgY2hlY2siCiBtc2dzdHIgItCy0YrQv9GA0LXQutC4INC/0YDQvtCy0LXRgNC60LDRgtCwINC30LAg0LDQutGC0YPQsNC70L3QvtGB0YLRgtCwINC90LAg0YHRitC00YrRgNC20LDQvdC40LXRgtC+IgogCi0jOiBidWlsdGluL3JtLmM6MjQ0CisjOiBidWlsdGluL3JtLmM6MjQ2CiBtc2dpZCAiYWxsb3cgcmVjdXJzaXZlIHJlbW92YWwiCiBtc2dzdHIgItGA0LXQutGD0YDRgdC40LLQvdC+INC40LfRgtGA0LjQstCw0L3QtSIKIAotIzogYnVpbHRpbi9ybS5jOjI0NgorIzogYnVpbHRpbi9ybS5jOjI0OAogbXNnaWQgImV4aXQgd2l0aCBhIHplcm8gc3RhdHVzIGV2ZW4gaWYgbm90aGluZyBtYXRjaGVkIgogbXNnc3RyICIiCiAi0LjQt9GF0L7QtNC90LjRj9GCINC60L7QtCDQtNCwINC1IDAsINC00L7RgNC4INCw0LrQviDQvdC40LrQvtC5INGE0LDQudC7INC9ZSBlINC90LDQv9Cw0YHQvdCw0Lsg0YEg0YjQsNCx0LvQvtC90LAg0LfQsCAiCiAi0LjQt9GC0YDQuNCy0LDQvdC1IgogCi0jOiBidWlsdGluL3JtLmM6Mjg4CisjOiBidWlsdGluL3JtLmM6MjgyCittc2dpZCAiTm8gcGF0aHNwZWMgd2FzIGdpdmVuLiBXaGljaCBmaWxlcyBzaG91bGQgSSByZW1vdmU/IgorbXNnc3RyICLQndC1INGB0LAg0LfQsNC00LDQtNC10L3QuCDQv9GK0YLQuNGJ0LAuICDQmtC+0Lgg0YTQsNC50LvQvtCy0LUg0LTQsCDRgdC1INC40LfRgtGA0LjRj9GCPyIKKworIzogYnVpbHRpbi9ybS5jOjMwNQogbXNnaWQgInBsZWFzZSBzdGFnZSB5b3VyIGNoYW5nZXMgdG8gLmdpdG1vZHVsZXMgb3Igc3Rhc2ggdGhlbSB0byBwcm9jZWVkIgogbXNnc3RyICIiCiAi0LfQsCDQtNCwINC/0YDQvtC00YrQu9C20LjRgtC1LCDQuNC70Lgg0LLQutCw0YDQsNC50YLQtSDQv9GA0L7QvNC10L3QuNGC0LUg0L/QviDRhNCw0LnQu9CwIOKAni5naXRtb2R1bGVz4oCcINCyINC40L3QtNC10LrRgdCwLFxuIgogItC40LvQuCDQs9C4INGB0LrQsNGC0LDQudGC0LUiCiAKLSM6IGJ1aWx0aW4vcm0uYzozMDYKKyM6IGJ1aWx0aW4vcm0uYzozMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IHJlbW92aW5nICclcycgcmVjdXJzaXZlbHkgd2l0aG91dCAtciIKIG1zZ3N0ciAi0LHQtdC3INC40LfQv9C+0LvQt9Cy0LDQvdC10YLQviDQvdCwINC+0L/RhtC40Y/RgtCwIOKAni1y4oCcIOKAniVz4oCcINC90Y/QvNCwINC00LAg0YHQtSDQuNC30YLRgNC40LUg0YDQtdC60YPRgNGB0LjQstC90L4iCiAKLSM6IGJ1aWx0aW4vcm0uYzozNDUKKyM6IGJ1aWx0aW4vcm0uYzozNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IHJtOiB1bmFibGUgdG8gcmVtb3ZlICVzIgogbXNnc3RyICJnaXQgcm06IOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC40LfRgtGA0LjQtSIKQEAgLTE3MzM4LDE4ICsyMDc0Nyw2IEBACiBtc2dpZCAicHJpbnQgc3RhdHVzIGZyb20gcmVtb3RlIGhlbHBlciIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHRitGB0YLQvtGP0L3QuNC10YLQviDQvtGCINC+0YLQtNCw0LvQtdGH0LXQvdCw0YLQsCDQv9C+0LzQvtGJ0L3QsCDRhNGD0L3QutGG0LjRjyIKIAotIzogYnVpbHRpbi9zZXJ2ZS5jOjcKLW1zZ2lkICJnaXQgc2VydmUgWzxvcHRpb25zPl0iCi1tc2dzdHIgImdpdCBzZXJ2ZSBb0J7Qn9Cm0JjQr+KApl0iCi0KLSM6IGJ1aWx0aW4vc2VydmUuYzoxNyBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjMKLW1zZ2lkICJxdWl0IGFmdGVyIGEgc2luZ2xlIHJlcXVlc3QvcmVzcG9uc2UgZXhjaGFuZ2UiCi1tc2dzdHIgItC40LfRhdC+0LQg0YHQu9C10LQg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdCw0YLQsCDRgNCw0LfQvNGP0L3QsCDQvdCwINC30LDRj9Cy0LrQsCDQuCDQvtGC0LPQvtCy0L7RgCIKLQotIzogYnVpbHRpbi9zZXJ2ZS5jOjE5Ci1tc2dpZCAiZXhpdCBpbW1lZGlhdGVseSBhZnRlciBhZHZlcnRpc2luZyBjYXBhYmlsaXRpZXMiCi1tc2dzdHIgItC40LfRhdC+0LQg0YHQu9C10LQg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdCw0YLQsCDQvtCx0Y/QstCwINC90LAg0LLRitC30LzQvtC20L3QvtGB0YLQuNGC0LUiCi0KICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxNAogbXNnaWQgImdpdCBzaG9ydGxvZyBbPG9wdGlvbnM+XSBbPHJldmlzaW9uLXJhbmdlPl0gW1stLV0gPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IHNob3J0bG9nIFvQntCf0KbQmNCv4oCmXSBb0JTQmNCQ0J/QkNCX0J7QnV/QndCQX9CS0JXQoNCh0JjQmNCi0JVdIFtbLS1dIFvQn9Cq0KLigKZdXSIKQEAgLTE3Mzg0LDcgKzIwNzgxLDcgQEAKICLQn9GA0LXQvdCw0YHRj9C90LUg0L3QsCDRgNC10LTQvtCy0LXRgtC1INC00L4g0YLQsNC30Lgg0L7QsdGJ0LAg0KjQmNCg0J7Qp9CY0J3QkCAoNzYpLCDRgSDQntCi0KHQotCq0J9fMSAoNikg0LfQsCDQv9GK0YDQstC40Y8gIgogItGA0LXQtCDQuCDQntCi0KHQotCq0J9fMiAoOSkg0LfQsCDQvtGB0YLQsNC90LDQu9C40YLQtSIKIAotIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI5OQorIzogYnVpbHRpbi9zaG9ydGxvZy5jOjMwMQogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyBnaXZlbiBvdXRzaWRlIHJlcG9zaXRvcnkiCiBtc2dzdHIgItC/0YDQtdC60LDQu9C10L3QviDQvNC90L7Qs9C+INCw0YDQs9GD0LzQtdC90YLQuCDQuNC30LLRitC9INGF0YDQsNC90LjQu9C40YnQtSIKIApAQCAtMTc0MTEsMTIyICsyMDgwOCwxMjIgQEAKIG1zZ3N0clswXSAi4oCeJXPigJwg0YHQtSDQv9GA0LXRgdC60LDRh9CwIOKAlCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtCx0YDQsNCx0L7RgtGP0YIg0L/QvtCy0LXRh9C1INC+0YIgJWQg0YPQutCw0LfQsNGC0LXQuyIKIG1zZ3N0clsxXSAi4oCeJXPigJwg0YHQtSDQv9GA0LXRgdC60LDRh9CwIOKAlCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtCx0YDQsNCx0L7RgtGP0YIg0L/QvtCy0LXRh9C1INC+0YIgJWQg0YPQutCw0LfQsNGC0LXQu9C4IgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NTQ5CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIG1hdGNoaW5nIHJlZnMgd2l0aCAlcyIKIG1zZ3N0ciAi0L3QuNC60L7QuSDRg9C60LDQt9Cw0YLQtdC7INC90LUg0YHRitCy0L/QsNC00LAg0YEg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDUKIG1zZ2lkICJzaG93IHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINGB0LvQtdC00Y/RidC40YLQtSDQuCDQu9C+0LrQsNC70L3QuNGC0LUg0LrQu9C+0L3QuCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0OAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NwogbXNnaWQgInNob3cgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRgdC70LXQtNGP0YnQuNGC0LUg0LrQu9C+0L3QuCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0OQogbXNnaWQgImNvbG9yICcqISstJyBjb3JyZXNwb25kaW5nIHRvIHRoZSBicmFuY2giCiBtc2dzdHIgItC+0YbQstC10YLRj9Cy0LDQvdC1INC90LAg4oCeKiErLeKAnCDRgdC/0L7RgNC10LQg0LrQu9C+0L3QuNGC0LUiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTEKIG1zZ2lkICJzaG93IDxuPiBtb3JlIGNvbW1pdHMgYWZ0ZXIgdGhlIGNvbW1vbiBhbmNlc3RvciIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YLQsNC60YrQsiDQkdCg0J7QmSDQv9C+0LTQsNCy0LDQvdC40Y8g0L7RgiDQvtCx0YnQuNGPINC/0YDQtdC00YjQtdGB0YLQstC10L3QuNC6IgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU0CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUzCiBtc2dpZCAic3lub255bSB0byBtb3JlPS0xIgogbXNnc3RyICLQv9GB0LXQstC00L7QvdC40Lwg0L3QsCDigJ5tb3JlPS0x4oCcIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU1CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU0CiBtc2dpZCAic3VwcHJlc3MgbmFtaW5nIHN0cmluZ3MiCiBtc2dzdHIgItCx0LXQtyDQvdC40LfQvtCy0LUg0LfQsCDQuNC80LXQvdCw0YLQsCDQvdCwINC60LvQvtC90LjRgtC1IgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU3CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU2CiBtc2dpZCAiaW5jbHVkZSB0aGUgY3VycmVudCBicmFuY2giCiBtc2dzdHIgItCy0LrQu9GO0YfQstCw0L3QtSDQuCDQvdCwINGC0LXQutGD0YnQuNGPINC60LvQvtC9IgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU5CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU4CiBtc2dpZCAibmFtZSBjb21taXRzIHdpdGggdGhlaXIgb2JqZWN0IG5hbWVzIgogbXNnc3RyICLQuNC80LXQvdGD0LLQsNC90LUg0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwINGBINC40LzQtdC90LDRgtCwINC40Lwg0L3QsCDQvtCx0LXQutGC0LgiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjEKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjAKIG1zZ2lkICJzaG93IHBvc3NpYmxlIG1lcmdlIGJhc2VzIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQstGK0LfQvNC+0LbQvdC40YLQtSDQsdCw0LfQuCDQt9CwINGB0LvQuNCy0LDQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjMKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjIKIG1zZ2lkICJzaG93IHJlZnMgdW5yZWFjaGFibGUgZnJvbSBhbnkgb3RoZXIgcmVmIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQvdC10LTQvtGB0YLQuNC20LjQvNC40YLQtSDRg9C60LDQt9Cw0YLQtdC70LgiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjQKIG1zZ2lkICJzaG93IGNvbW1pdHMgaW4gdG9wb2xvZ2ljYWwgb3JkZXIiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0LIg0YLQvtC/0L7Qu9C+0LPQuNGH0LXRgdC60LAg0L/QvtC00YDQtdC00LHQsCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2OAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NwogbXNnaWQgInNob3cgb25seSBjb21taXRzIG5vdCBvbiB0aGUgZmlyc3QgYnJhbmNoIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0YHQsNC80L4g0L3QsCDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwLCDQutC+0LjRgtC+INC90LUg0YHQsCDQvtGCINC/0YrRgNCy0LjRjyDQutC70L7QvSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2OQogbXNnaWQgInNob3cgbWVyZ2VzIHJlYWNoYWJsZSBmcm9tIG9ubHkgb25lIHRpcCIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHQu9C40LLQsNC90LjRj9GC0LAsINC60L7QuNGC0L4g0LzQvtCz0LDRgiDQtNCwINGB0LUg0LTQvtGB0YLQuNCz0L3QsNGCINGB0LDQvNC+INC+0YIg0LXQtNC40L0g0LLRgNGK0YUiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzEKIG1zZ2lkICJ0b3BvbG9naWNhbGx5IHNvcnQsIG1haW50YWluaW5nIGRhdGUgb3JkZXIgd2hlcmUgcG9zc2libGUiCiBtc2dzdHIgIiIKICLRgtC+0L/QvtC70L7Qs9C40YfQtdGB0LrQsCDQv9C+0LTRgNC10LTQsdCwLCDQv9GA0Lgg0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0L/QvtC00YDQtdC00LHQsNGC0LAg0L/QviDQtNCw0YLQsCwg0LTQvtC60L7Qu9C60L7RgtC+INC1XG4iCiAi0LLRitC30LzQvtC20L3QviIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NAogbXNnaWQgIjxuPlssPGJhc2U+XSIKIG1zZ3N0ciAi0JHQoNCe0JlbLNCR0JDQl9CQXSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NQogbXNnaWQgInNob3cgPG4+IG1vc3QgcmVjZW50IHJlZi1sb2cgZW50cmllcyBzdGFydGluZyBhdCBiYXNlIgogbXNnc3RyICLQv9C+0LrQsNC30LLQsNC90LUg0L3QsCDQvdCw0Lkt0LzQvdC+0LPQviDQkdCg0J7QmSDQttGD0YDQvdCw0LvQvdC4INC30LDQv9C40YHQsCDRgSDQvdCw0YfQsNC70L4g0YHRitC+0YLQstC10YLQvdCw0YLQsCDQkdCQ0JfQkCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjcxMgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjcxMQogbXNnaWQgIiIKICItLXJlZmxvZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1yZW1vdGVzLCAtLWluZGVwZW5kZW50IG9yIC0tbWVyZ2UtYmFzZSIKIG1zZ3N0ciAiIgogItC+0L/RhtC40Y/RgtCwIOKAni0tcmVmbG9n4oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgSDQvtC/0YbQuNC40YLQtSAg4oCeLS1hbGzigJwsIOKAni0tcmVtb3Rlc+KAnCwg4oCeLS0iCiAiaW5kZXBlbmRlbnTigJwg0Lgg4oCeLS1tZXJnZS1iYXNl4oCcIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM2CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM1CiBtc2dpZCAibm8gYnJhbmNoZXMgZ2l2ZW4sIGFuZCBIRUFEIGlzIG5vdCB2YWxpZCIKIG1zZ3N0ciAi0L3QtSDQtSDQt9Cw0LTQsNC00LXQvSDQutC70L7QvSwg0LAg0YPQutCw0LfQsNGC0LXQu9GP0YIg4oCeSEVBROKAnCDQtSDQvdC10L/RgNCw0LLQuNC70LXQvSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczOQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczOAogbXNnaWQgIi0tcmVmbG9nIG9wdGlvbiBuZWVkcyBvbmUgYnJhbmNoIG5hbWUiCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tdHJhY2vigJwg0LjQt9C40YHQutCy0LAg0YLQvtGH0L3QviDQtdC00L3QviDQuNC80LUg0L3QsCDQutC70L7QvSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0MgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJvbmx5ICVkIGVudHJ5IGNhbiBiZSBzaG93biBhdCBvbmUgdGltZS4iCiBtc2dpZF9wbHVyYWwgIm9ubHkgJWQgZW50cmllcyBjYW4gYmUgc2hvd24gYXQgb25lIHRpbWUuIgogbXNnc3RyWzBdICLRgdCw0LzQviAlZCDQt9Cw0L/QuNGBINC80L7QttC1INC00LAg0LHRitC00LUg0L/QvtC60LDQt9Cw0L0g0L3QsNCy0LXQtNC90YrQti4iCiBtc2dzdHJbMV0gItGB0LDQvNC+ICVkINC30LDQv9C40YHQsCDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0L7QutCw0LfQsNC90Lgg0L3QsNCy0LXQtNC90YrQti4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCByZWYgJXMiCiBtc2dzdHIgItGC0LDQutGK0LIg0YPQutCw0LfQsNGC0LXQuyDQvdGP0LzQsDogJXMiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzAKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmV2LiIKIG1zZ2lkX3BsdXJhbCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmV2cy4iCiBtc2dzdHJbMF0gItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0LHRgNCw0LHQvtGC0Lgg0L/QvtCy0LXRh9C1INC+0YIgJWQg0YPQutCw0LfQsNGC0LXQuy4iCiBtc2dzdHJbMV0gItC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0LHRgNCw0LHQvtGC0Y/RgiDQv9C+0LLQtdGH0LUg0L7RgiAlZCDRg9C60LDQt9Cw0YLQtdC70LguIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM0CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVmLiIKIG1zZ3N0ciAi4oCeJXPigJwg0LUg0L3QtdC/0YDQsNCy0LjQu9C10L0g0YPQutCw0LfQsNGC0LXQuy4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzcKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZpbmQgY29tbWl0ICVzICglcykiCiBtc2dzdHIgItC/0L7QtNCw0LLQsNC90LXRgtC+IOKAniVz4oCcICglcykg0LvQuNC/0YHQstCwIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTEKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxMgogbXNnaWQgIiIKICJnaXQgc2hvdy1yZWYgWy1xIHwgLS1xdWlldF0gWy0tdmVyaWZ5XSBbLS1oZWFkXSBbLWQgfCAtLWRlcmVmZXJlbmNlXSBbLXMgfCAtLSIKICJoYXNoWz08bj5dXSBbLS1hYmJyZXZbPTxuPl1dIFstLXRhZ3NdIFstLWhlYWRzXSBbLS1dIFs8cGF0dGVybj4uLi5dIgpAQCAtMTc1MzQsNDYgKzIwOTMxLDM1NCBAQAogImdpdCBzaG93LXJlZiBbLXEgfCAtLXF1aWV0XSBbLS12ZXJpZnldIFstLWhlYWRdIFstZCB8IC0tZGVyZWZlcmVuY2VdIFstcyB8IC0tIgogImhhc2hbPdCn0JjQodCb0J5dXSBbLS1hYmJyZXZbPdCn0JjQodCb0J5dXSBbLS10YWdzXSBbLS1oZWFkc10gWy0tXSBb0KjQkNCR0JvQntCd4oCmXSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjEyCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTMKIG1zZ2lkICJnaXQgc2hvdy1yZWYgLS1leGNsdWRlLWV4aXN0aW5nWz08cGF0dGVybj5dIgogbXNnc3RyICJnaXQgc2hvdy1yZWYgLS1leGNsdWRlLWV4aXN0aW5nWz3QqNCQ0JHQm9Ce0J1dIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTYxCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYyCiBtc2dpZCAib25seSBzaG93IHRhZ3MgKGNhbiBiZSBjb21iaW5lZCB3aXRoIGhlYWRzKSIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LXRgtC40LrQtdGC0LjRgtC1ICjQvNC+0LbQtSDQtNCwINGB0LUg0LrQvtC80LHQuNC90LjRgNCwINGBINCy0YrRgNGF0L7QstC10YLQtSkiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjIKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjMKIG1zZ2lkICJvbmx5IHNob3cgaGVhZHMgKGNhbiBiZSBjb21iaW5lZCB3aXRoIHRhZ3MpIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQstGK0YDRhdC+0LLQtdGC0LUgKNC80L7QttC1INC00LAg0YHQtSDQutC+0LzQsdC40L3QuNGA0LAg0YEg0LXRgtC40LrQtdGC0LjRgtC1KSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2MworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2NAogbXNnaWQgInN0cmljdGVyIHJlZmVyZW5jZSBjaGVja2luZywgcmVxdWlyZXMgZXhhY3QgcmVmIHBhdGgiCiBtc2dzdHIgItGB0YLRgNC+0LPQsCDQv9GA0L7QstC10YDQutCwINC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSwg0LjQt9C40YHQutCy0LAg0YHQtSDRg9C60LDQt9Cw0YLQtdC7INGBINC/0YrQu9C10L0g0L/RitGCIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTY2IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjgKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjcgYnVpbHRpbi9zaG93LXJlZi5jOjE2OQogbXNnaWQgInNob3cgdGhlIEhFQUQgcmVmZXJlbmNlLCBldmVuIGlmIGl0IHdvdWxkIGJlIGZpbHRlcmVkIG91dCIKIG1zZ3N0ciAi0LfQsNC00YrQu9C20LjRgtC10LvQvdC+INC40LfQstC10LbQtNCw0L3QtSDQuCDQvdCwINGD0LrQsNC30LDRgtC10LvRjyBIRUFEIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTcwCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTcxCiBtc2dpZCAiZGVyZWZlcmVuY2UgdGFncyBpbnRvIG9iamVjdCBJRHMiCiBtc2dzdHIgItC00LAg0YHQtSDQuNC30LLQtdC20LTQsNGCINC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0LjRgtC1INC90LAg0L7QsdC10LrRgtC40YLQtS3QtdGC0LjQutC10YLQuCIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MgorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MwogbXNnaWQgIm9ubHkgc2hvdyBTSEExIGhhc2ggdXNpbmcgPG4+IGRpZ2l0cyIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INGB0LDQvNC+INC90LAg0YLQvtC30Lgg0JHQoNCe0Jkg0YbQuNGE0YDQuCDQvtGCINCy0YHRj9C60LAg0YHRg9C80LAg0L/QviBTSEExIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTc2CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc3CiBtc2dpZCAiZG8gbm90IHByaW50IHJlc3VsdHMgdG8gc3Rkb3V0ICh1c2VmdWwgd2l0aCAtLXZlcmlmeSkiCiBtc2dzdHIgIiIKICLQsdC10Lcg0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YDQtdC30YPQu9GC0LDRgtC40YLQtSDQvdCwINGB0YLQsNC90LTQsNGA0YLQvdC40Y8g0LjQt9GF0L7QtCAo0L/QvtC70LXQt9C90L4g0YEg0L7Qv9GG0LjRj9GC0LAg4oCeLS0iCiAidmVyaWZ54oCcKSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OQogbXNnaWQgInNob3cgcmVmcyBmcm9tIHN0ZGluIHRoYXQgYXJlbid0IGluIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgIiIKICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRg9C60LDQt9Cw0YLQtdC70LjRgtC1INC/0YDQuNC10YLQuCDQvtGCINGB0YLQsNC90LTQsNGA0YLQvdC40Y8g0LLRhdC+0LQsINC60L7QuNGC0L4g0LvQuNC/0YHQstCw0YIg0LIgIgogItC70L7QutCw0LvQvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUiCiAKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjEKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IChpbml0fGxpc3R8c2V0fGFkZHxkaXNhYmxlKSA8b3B0aW9ucz4iCittc2dzdHIgImdpdCBzcGFyc2UtY2hlY2tvdXQgKGluaXR8bGlzdHxzZXR8YWRkfGRpc2FibGUpINCe0J/QptCY0K/igKYiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NjQKK21zZ2lkICJ0aGlzIHdvcmt0cmVlIGlzIG5vdCBzcGFyc2UgKHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBub3QgZXhpc3QpIgorbXNnc3RyICIiCisi0YLQvtCy0LAg0L3QtSDQtSDRh9Cw0YHRgtC40YfQvdC+INGA0LDQsdC+0YLQvdC+INC00YrRgNCy0L4gKNCy0LXRgNC+0Y/RgtC90L4g0LvQuNC/0YHQstCwINGE0LDQudC7IOKAnnNwYXJzZS1jaGVja291dOKAnCkiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjI1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgZm9yIHNwYXJzZS1jaGVja291dCBmaWxlIgorbXNnc3RyICLQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg0LfQsCDRh9Cw0YHRgtC40YfQvdC+INC40LfRgtC10LPQu9GP0L3QtSDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRitC30LTQsNC00LXQvdCwIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byBzZXQgZXh0ZW5zaW9ucy53b3JrdHJlZUNvbmZpZyBzZXR0aW5nIgorbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LfQsNC00LDQstCw0L3QtSDQvdCwINC90LDRgdGC0YDQvtC50LrQsNGC0LAg4oCeZXh0ZW5zaW9ucy53b3JrdHJlZUNvbmZpZ+KAnCIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyODMKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IGluaXQgWy0tY29uZV0iCittc2dzdHIgImdpdCBzcGFyc2UtY2hlY2tvdXQgaW5pdCBbLS1jb25lXSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzozMDIKK21zZ2lkICJpbml0aWFsaXplIHRoZSBzcGFyc2UtY2hlY2tvdXQgaW4gY29uZSBtb2RlIgorbXNnc3RyICLQuNC90LjRhtC40LDQu9C40LfQuNGA0LDQvdC1INC90LAg0YfQsNGB0YLQuNGH0L3QvtGC0L4g0LjQt9GC0LXQs9C70Y/QvdC1INCyINC/0YrRgtC10LLQvtC00LXQvSDRgNC10LbQuNC8IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjMwOAorbXNnaWQgImluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICLQuNC90LjRhtC40LDQu9C40LfQuNGA0LDQvdC1INC90LAg0YfQsNGB0YLQuNGH0L3QvtGC0L4g0LjQt9GC0LXQs9C70Y/QvdC1IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIgorbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtGC0LLQvtGA0LgiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6Mzk4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBub3JtYWxpemUgcGF0aCAlcyIKK21zZ3N0ciAi0L/RitGC0Y/RgiDigJ4lc+KAnCAg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L3QvtGA0LzQsNC70LjQt9C40YDQsCIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo0MTAKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IChzZXR8YWRkKSAoLS1zdGRpbiB8IDxwYXR0ZXJucz4pIgorbXNnc3RyICJnaXQgc3BhcnNlLWNoZWNrb3V0IChzZXR8YWRkKSAoLS1zdGRpbiB8INCo0JDQkdCb0J7QneKApikiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bnF1b3RlIEMtc3R5bGUgc3RyaW5nICclcyciCittc2dzdHIgItGG0LjRgtC40YDQsNC90LXRgtC+INC90LAg0L3QuNC3LCDRhNC+0YDQvNCw0YLQuNGA0LDQvSDQt9CwIEMg4oCUIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YfQuNGB0YLQtdC90L4iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDg5IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTEzCittc2dpZCAidW5hYmxlIHRvIGxvYWQgZXhpc3Rpbmcgc3BhcnNlLWNoZWNrb3V0IHBhdHRlcm5zIgorbXNnc3RyICLRiNCw0LHQu9C+0L3QuNGC0LUg0LfQsCDRh9Cw0YHRgtC40YfQvdC+INC40LfRgtC10LPQu9GP0L3QtSDQvdC1INC80L7Qs9Cw0YIg0LTQsCDRgdC1INC30LDRgNC10LTRj9GCIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjU1OAorbXNnaWQgInJlYWQgcGF0dGVybnMgZnJvbSBzdGFuZGFyZCBpbiIKK21zZ3N0ciAi0LjQt9GH0LjRgtCw0L3QtSDQvdCwINGI0LDQsdC70L7QvdC40YLQtSDQvtGCINGB0YLQsNC90LTQsNGA0YLQvdC40Y8g0LLRhdC+0LQiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTY0Cittc2dpZCAic2V0IHNwYXJzZS1jaGVja291dCBwYXR0ZXJucyIKK21zZ3N0ciAi0LfQsNC00LDQstCw0L3QtSDQvdCwINGI0LDQsdC70L7QvdC40YLQtSDQt9CwINGH0LDRgdGC0LjRh9C90L7RgtC+INC40LfRgtC10LPQu9GP0L3QtSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1ODEKK21zZ2lkICJkaXNhYmxlIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAi0LHQtdC3INC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0YfQsNGB0YLQuNGH0L3QviDQuNC30YLQtdCz0LvRj9C90LUiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTkzCittc2dpZCAiZXJyb3Igd2hpbGUgcmVmcmVzaGluZyB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAi0LPRgNC10YjQutCwINC/0YDQuCDQvtCx0L3QvtCy0Y/QstCw0L3QtSDQvdCwINGA0LDQsdC+0YLQvdCw0YLQsCDQtNC40YDQtdC60YLQvtGA0LjRjyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjIyIGJ1aWx0aW4vc3Rhc2guYzozOAorbXNnaWQgImdpdCBzdGFzaCBsaXN0IFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgc3Rhc2ggbGlzdCBb0J7Qn9Cm0JjQr+KApl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMyBidWlsdGluL3N0YXNoLmM6NDMKK21zZ2lkICJnaXQgc3Rhc2ggc2hvdyBbPG9wdGlvbnM+XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBzaG93IFvQntCf0KbQmNCv4oCmXSBb0KHQmtCQ0KLQkNCd0J5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjQgYnVpbHRpbi9zdGFzaC5jOjQ4Cittc2dpZCAiZ2l0IHN0YXNoIGRyb3AgWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGRyb3AgWy1xfC0tcXVpZXRdIFvQodCa0JDQotCQ0J3Qnl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNQorbXNnaWQgImdpdCBzdGFzaCAoIHBvcCB8IGFwcGx5ICkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCAoIHBvcCB8IGFwcGx5ICkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBb0KHQmtCQ0KLQkNCd0J5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjYgYnVpbHRpbi9zdGFzaC5jOjYzCittc2dpZCAiZ2l0IHN0YXNoIGJyYW5jaCA8YnJhbmNobmFtZT4gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggYnJhbmNoINCa0JvQntCdIFvQodCa0JDQotCQ0J3Qnl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNyBidWlsdGluL3N0YXNoLmM6NjgKK21zZ2lkICJnaXQgc3Rhc2ggY2xlYXIiCittc2dzdHIgImdpdCBzdGFzaCBjbGVhciIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI4Cittc2dpZCAiIgorImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dXG4iCisiICAgICAgICAgIFstLXBhdGhzcGVjLWZyb20tZmlsZT08ZmlsZT4gWy0tcGF0aHNwZWMtZmlsZS1udWxdXVxuIgorIiAgICAgICAgICBbLS1dIFs8cGF0aHNwZWM+Li4uXV0iCittc2dzdHIgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2Ug0KHQqtCe0JHQqdCV0J3QmNCVXVxuIgorIiAgICAgICAgICBbLS1wYXRoc3BlYy1mcm9tLWZpbGU90KTQkNCZ0JsgWy0tcGF0aHNwZWMtZmlsZS1udWxdXVxuIgorIiAgICAgICAgICBbLS1dIFvQn9Cq0KLigKZdXSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjMyIGJ1aWx0aW4vc3Rhc2guYzo4NQorbXNnaWQgIiIKKyJnaXQgc3Rhc2ggc2F2ZSBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWzxtZXNzYWdlPl0iCittc2dzdHIgIiIKKyJnaXQgc3Rhc2ggc2F2ZSBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gW9Ch0KrQntCR0KnQldCd0JjQlV0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1MworbXNnaWQgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBb0KHQmtCQ0KLQkNCd0J5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTgKK21zZ2lkICJnaXQgc3Rhc2ggYXBwbHkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBhcHBseSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFvQodCa0JDQotCQ0J3Qnl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo3MworbXNnaWQgImdpdCBzdGFzaCBzdG9yZSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl0gWy1xfC0tcXVpZXRdIDxjb21taXQ+IgorbXNnc3RyICJnaXQgc3Rhc2ggc3RvcmUgWy1tfC0tbWVzc2FnZSDQodCq0J7QkdCp0JXQndCY0JVdIFstcXwtLXF1aWV0XSDQn9Ce0JTQkNCS0JDQndCVIgorCisjOiBidWlsdGluL3N0YXNoLmM6NzgKK21zZ2lkICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlINCh0KrQntCR0KnQldCd0JjQlV1cbiIKKyIgICAgICAgICAgWy0tXSBb0J/QqtCi4oCmXV0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBzdGFzaC1saWtlIGNvbW1pdCIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQtSDQv9C+0LTQsNCy0LDQvdC1LCDQv9GA0LjQu9C40YfQsNGJ0L4g0L3QsCDQvdC10YnQviDRgdC60LDRgtCw0L3QviIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJUb28gbWFueSByZXZpc2lvbnMgc3BlY2lmaWVkOiVzIgorbXNnc3RyICLQo9C60LDQt9Cw0L3QuCDRgdCwINC/0YDQtdC60LDQu9C10L3QviDQvNC90L7Qs9C+INCy0LXRgNGB0LjQuDolcyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE2MiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU0OQorbXNnaWQgIk5vIHN0YXNoIGVudHJpZXMgZm91bmQuIgorbXNnc3RyICLQndC1INC1INC+0YLQutGA0LjRgtC+INC90LjRidC+INGB0LrQsNGC0LDQvdC+LiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCByZWZlcmVuY2UiCittc2dzdHIgIuKAniVz4oCcINC1INC90LXQv9GA0LDQstC40LvQvdC+INC40LzQtSDQt9CwINGD0LrQsNC30LDRgtC10LsiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMjUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3NQorbXNnaWQgImdpdCBzdGFzaCBjbGVhciB3aXRoIHBhcmFtZXRlcnMgaXMgdW5pbXBsZW1lbnRlZCIKK21zZ3N0ciAi0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCBzdGFzaCBjbGVhcuKAnCDQvdC1INC/0L7QtNC00YrRgNC20LAg0LDRgNCz0YPQvNC10L3RgtC4IgorCisjOiBidWlsdGluL3N0YXNoLmM6NDA0Cittc2dpZCAiY2Fubm90IGFwcGx5IGEgc3Rhc2ggaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIgorbXNnc3RyICLQv9C+INCy0YDQtdC80LUg0L3QsCDRgdC70LjQstCw0L3QtSDQvdC1INC80L7QttC1INC00LAg0L/RgNC40LvQvtC20LjRgtC1INC90LXRidC+INGB0LrQsNGC0LDQvdC+IgorCisjOiBidWlsdGluL3N0YXNoLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSBkaWZmICVzXiEuIgorbXNnc3RyICLRhNCw0LnQu9GK0YIg0YEg0YDQsNC30LvQuNC60LjRgtC1IOKAniVzXiHigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LPQtdC90LXRgNC40YDQsCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQyMgorbXNnaWQgImNvbmZsaWN0cyBpbiBpbmRleC5Ucnkgd2l0aG91dCAtLWluZGV4LiIKK21zZ3N0ciAiIgorItCyINC40L3QtNC10LrRgdCwINC40LzQsCDQutC+0L3RhNC70LjQutGC0LguICDQn9GA0L7QsdCy0LDQudGC0LUg0LTQsCDQuNC30L/RitC70L3QuNGC0LUg0LrQvtC80LDQvdC00LDRgtCwINCx0LXQtyDQvtC/0YbQuNGP0YLQsCDigJ4tLSIKKyJpbmRleOKAnC4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MjgKK21zZ2lkICJjb3VsZCBub3Qgc2F2ZSBpbmRleCB0cmVlIgorbXNnc3RyICLQtNGK0YDQstC+0YLQviDRgdC+0YfQtdC90L4g0L7RgiDQuNC90LTQtdC60YHQsCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LDQt9C10L3QviIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQzNworbXNnaWQgImNvdWxkIG5vdCByZXN0b3JlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHN0YXNoIgorbXNnc3RyICLQvdC10YHQu9C10LTQtdC90Lgg0YTQsNC50LvQvtCy0LUg0L3QtSDQvNC+0LPQsNGCINC00LAg0YHQtSDQstGK0LfRgdGC0LDQvdC+0LLRj9GCINC+0YIg0YHQutCw0YLQsNC90L7RgtC+IgorCisjOiBidWlsdGluL3N0YXNoLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIk1lcmdpbmcgJXMgd2l0aCAlcyIKK21zZ3N0ciAi0KHQu9C40LLQsNC90LUg0L3QsCDigJ4lc+KAnCDRgSDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQ2MSBnaXQtbGVnYWN5LXN0YXNoLnNoOjY4MQorbXNnaWQgIkluZGV4IHdhcyBub3QgdW5zdGFzaGVkLiIKK21zZ3N0ciAi0JjQvdC00LXQutGB0YrRgiDQvdC1INC1INC40LfQstCw0LTQtdC9INC+0YIg0YHQutCw0YLQsNC90L7RgtC+LiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjUyMiBidWlsdGluL3N0YXNoLmM6NjIxCittc2dpZCAiYXR0ZW1wdCB0byByZWNyZWF0ZSB0aGUgaW5kZXgiCittc2dzdHIgItC+0L/QuNGCINC30LAg0L/QvtCy0YLQvtGA0L3QviDRgdGK0LfQtNCw0LLQsNC90LUg0L3QsCDQuNC90LTQtdC60YHQsCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEcm9wcGVkICVzICglcykiCittc2dzdHIgItCY0LfRgtGA0LjRgtC+OiDigJ4lc+KAnCAoJXMpIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBDb3VsZCBub3QgZHJvcCBzdGFzaCBlbnRyeSIKK21zZ3N0ciAi0KHQutCw0YLQsNC90L7RgtC+IOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YLRgNC40YLQviIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU4MworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHN0YXNoIHJlZmVyZW5jZSIKK21zZ3N0ciAi4oCeJXPigJwg0L3QtSDQtSDRg9C60LDQt9Cw0YLQtdC7INC60YrQvCDQvdC10YnQviDRgdC60LDRgtCw0L3QviIKKworIzogYnVpbHRpbi9zdGFzaC5jOjYzMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjY5NQorbXNnaWQgIlRoZSBzdGFzaCBlbnRyeSBpcyBrZXB0IGluIGNhc2UgeW91IG5lZWQgaXQgYWdhaW4uIgorbXNnc3RyICLQodC60LDRgtCw0L3QvtGC0L4g0LUg0LfQsNC/0LDQt9C10L3QviDQsiDRgdC70YPRh9Cw0LksINGH0LUg0LLQuCDQv9C+0YLRgNGP0LHQstCwINC+0YLQvdC+0LLQvi4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2NTYgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MTMKK21zZ2lkICJObyBicmFuY2ggbmFtZSBzcGVjaWZpZWQiCittc2dzdHIgItCd0LUg0LUg0YPQutCw0LfQsNC90L4g0LjQvNC1INC90LAg0LrQu9C+0L0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo3OTYgYnVpbHRpbi9zdGFzaC5jOjgzMworIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgdXBkYXRlICVzIHdpdGggJXMiCittc2dzdHIgItCj0LrQsNC30LDRgtC10LvRj9GCIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtCx0L3QvtCy0LXQvSDQtNCwINGB0L7Rh9C4INC60YrQvCDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjgxNCBidWlsdGluL3N0YXNoLmM6MTQ3OCBidWlsdGluL3N0YXNoLmM6MTU0MworbXNnaWQgInN0YXNoIG1lc3NhZ2UiCittc2dzdHIgItGB0YrQvtCx0YnQtdC90LjQtSDQv9GA0Lgg0YHQutCw0YLQsNCy0LDQvdC1IgorCisjOiBidWlsdGluL3N0YXNoLmM6ODI0Cittc2dpZCAiXCJnaXQgc3Rhc2ggc3RvcmVcIiByZXF1aXJlcyBvbmUgPGNvbW1pdD4gYXJndW1lbnQiCittc2dzdHIgItC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgc3Rhc2ggc3RvcmXigJwg0LjQt9C40YHQutCy0LAg0YLQvtGH0L3QviDQtdC00LjQvSDQsNGA0LPRg9C80LXQvdGCLdCf0J7QlNCQ0JLQkNCd0JUiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMDQ5IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjE4Cittc2dpZCAiTm8gY2hhbmdlcyBzZWxlY3RlZCIKK21zZ3N0ciAi0J3QtSDRgdCwINC40LfQsdGA0LDQvdC4INC90LjQutCw0LrQstC4INC/0YDQvtC80LXQvdC4IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE0OSBnaXQtbGVnYWN5LXN0YXNoLnNoOjE1MAorbXNnaWQgIllvdSBkbyBub3QgaGF2ZSB0aGUgaW5pdGlhbCBjb21taXQgeWV0IgorbXNnc3RyICLQktGB0LUg0L7RidC1INC70LjQv9GB0LLQsCDQv9GK0YDQstC+0L3QsNGH0LDQu9C90L4g0L/QvtC00LDQstCw0L3QtSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExNzYgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxNjUKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBpbmRleCBzdGF0ZSIKK21zZ3N0ciAi0KHRitGB0YLQvtGP0L3QuNC10YLQviDQvdCwINGC0LXQutGD0YnQuNGPINC40L3QtNC10LrRgSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LDQt9C10L3QviIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExODUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxODAKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgdW50cmFja2VkIGZpbGVzIgorbXNnc3RyICLQndC10YHQu9C10LTQtdC90LjRgtC1INGE0LDQudC70L7QstC1INC90LUg0LzQvtCz0LDRgiDQtNCwINGB0LUg0LfQsNC/0LDQt9GP0YIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTk2IGJ1aWx0aW4vc3Rhc2guYzoxMjA1IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjAxCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIxNAorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHdvcmt0cmVlIHN0YXRlIgorbXNnc3RyICLQodGK0YHRgtC+0Y/QvdC40LXRgtC+INC90LAg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC30LDQv9Cw0LfQtdC90L4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMjMzIGdpdC1sZWdhY3ktc3Rhc2guc2g6MjM0Cittc2dpZCAiQ2Fubm90IHJlY29yZCB3b3JraW5nIHRyZWUgc3RhdGUiCittc2dzdHIgItCh0YrRgdGC0L7Rj9C90LjQtdGC0L4g0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LDQt9C10L3QviIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyODIgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMzgKK21zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgorbXNnc3RyICLQntC/0YbQuNGP0YLQsCDigJ4tLXBhdGNo4oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgSDigJ4tLWluY2x1ZGUtdW50cmFja2Vk4oCcINC4IOKAni0tYWxs4oCcIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI5OAorbXNnaWQgIkRpZCB5b3UgZm9yZ2V0IHRvICdnaXQgYWRkJz8iCittc2dzdHIgItCf0YDQvtCx0LLQsNC50YLQtSDQtNCwINC40LfQv9C+0LvQt9Cy0LDRgtC1IOKAnmdpdCBhZGTigJwiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzEzIGdpdC1sZWdhY3ktc3Rhc2guc2g6MzQ2Cittc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgorbXNnc3RyICLQndGP0LzQsCDQvdC40LrQsNC60LLQuCDQu9C+0LrQsNC70L3QuCDQv9GA0L7QvNC10L3QuCDQt9CwINGB0LrQsNGC0LDQstCw0L3QtSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMjAgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTEKK21zZ2lkICJDYW5ub3QgaW5pdGlhbGl6ZSBzdGFzaCIKK21zZ3N0ciAi0KHQutCw0YLQsNCy0LDQvdC10YLQviDQvdC1INC80L7QttC1INC00LAg0YHRgtCw0YDRgtC40YDQsCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMzUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTUKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBzdGF0dXMiCittc2dzdHIgItCi0LXQutGD0YnQvtGC0L4g0YHRitGB0YLQvtGP0L3QuNC1INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0L/QsNC30LXQvdC+IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTM0MAorIywgYy1mb3JtYXQKK21zZ2lkICJTYXZlZCB3b3JraW5nIGRpcmVjdG9yeSBhbmQgaW5kZXggc3RhdGUgJXMiCittc2dzdHIgItCh0YrRgdGC0L7Rj9C90LjQtdGC0L4g0L3QsCDRgNCw0LHQvtGC0L3QsNGC0LAg0LTQuNGA0LXQutGC0L7RgNC40Y8g0Lgg0LjQvdC00LXQutGB0LAgZSDQt9Cw0L/QsNC30LXQvdC+OiDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0MzAgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozODUKK21zZ2lkICJDYW5ub3QgcmVtb3ZlIHdvcmt0cmVlIGNoYW5nZXMiCittc2dzdHIgItCf0YDQvtC80LXQvdC40YLQtSDQsiDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviDQvdC1INC80L7Qs9Cw0YIg0LTQsCDQsdGK0LTQsNGCINC30LDQvdGD0LvQtdC90LgiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDY5IGJ1aWx0aW4vc3Rhc2guYzoxNTM0Cittc2dpZCAia2VlcCBpbmRleCIKK21zZ3N0ciAi0LfQsNC/0LDQt9Cy0LDQvdC1INC90LAg0LjQvdC00LXQutGB0LAiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDcxIGJ1aWx0aW4vc3Rhc2guYzoxNTM2Cittc2dpZCAic3Rhc2ggaW4gcGF0Y2ggbW9kZSIKK21zZ3N0ciAi0YHQutCw0YLQsNCy0LDQvdC1INCyINGA0LXQttC40Lwg0LfQsCDQutGA0YrQv9C60LgiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDcyIGJ1aWx0aW4vc3Rhc2guYzoxNTM3Cittc2dpZCAicXVpZXQgbW9kZSIKK21zZ3N0ciAi0LHQtdC3INC40LfQstC10LbQtNCw0L3QtSDQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGPIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3NCBidWlsdGluL3N0YXNoLmM6MTUzOQorbXNnaWQgImluY2x1ZGUgdW50cmFja2VkIGZpbGVzIGluIHN0YXNoIgorbXNnc3RyICLRgdC60LDRgtCw0LLQsNC90LUg0Lgg0L3QsCDQvdC10YHQu9C10LTQtdC90LjRgtC1INGE0LDQudC70L7QstC1IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3NiBidWlsdGluL3N0YXNoLmM6MTU0MQorbXNnaWQgImluY2x1ZGUgaWdub3JlIGZpbGVzIgorbXNnc3RyICLRgdC60LDRgtCw0LLQsNC90LUg0Lgg0L3QsCDQuNCz0L3QvtGA0LjRgNCw0L3QuNGC0LUg0YTQsNC50LvQvtCy0LUiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNjAwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBleGVjICVzIgorbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQuNC30L/RitC70L3QuCIKKwogIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MTgKIG1zZ2lkICJnaXQgc3RyaXBzcGFjZSBbLXMgfCAtLXN0cmlwLWNvbW1lbnRzXSIKIG1zZ3N0ciAiZ2l0IHN0cmlwc3BhY2UgWy1zIHwgLS1zdHJpcC1jb21tZW50c10iCkBAIC0xNzU4Miw0OSArMjEyODcsNDkgQEAKIG1zZ2lkICJnaXQgc3RyaXBzcGFjZSBbLWMgfCAtLWNvbW1lbnQtbGluZXNdIgogbXNnc3RyICJnaXQgc3RyaXBzcGFjZSBbLWMgfCAtLWNvbW1lbnQtbGluZXNdIgogCi0jOiBidWlsdGluL3N0cmlwc3BhY2UuYzozNgorIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MzcKIG1zZ2lkICJza2lwIGFuZCByZW1vdmUgYWxsIGxpbmVzIHN0YXJ0aW5nIHdpdGggY29tbWVudCBjaGFyYWN0ZXIiCiBtc2dzdHIgItC/0YDQvtC/0YPRgdC60LDQvdC1INC90LAg0LLRgdC40YfQutC4INGA0LXQtNC+0LLQtSwg0LrQvtC40YLQviDQt9Cw0L/QvtGH0LLQsNGCINGBIOKAniPigJwiCiAKLSM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM5CisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzo0MAogbXNnaWQgInByZXBlbmQgY29tbWVudCBjaGFyYWN0ZXIgYW5kIHNwYWNlIHRvIGVhY2ggbGluZSIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwIOKAniMg4oCcINCyINC90LDRh9Cw0LvQvtGC0L4g0L3QsCDQstGB0LXQutC4INGA0LXQtCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTM5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXhwZWN0aW5nIGEgZnVsbCByZWYgbmFtZSwgZ290ICVzIgogbXNnc3RyICLQntGH0LDQutCy0LAg0YHQtSDQv9GK0LvQvdC+INC40LzQtSDQvdCwINGD0LrQsNC30LDRgtC10LssINCwINC90LUg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY0CiBtc2dpZCAic3VibW9kdWxlLS1oZWxwZXIgcHJpbnQtZGVmYXVsdC1yZW1vdGUgdGFrZXMgbm8gYXJndW1lbnRzIgogbXNnc3RyICIiCiAi0LrQvtC80LDQvdC00LDRgtCwIOKAnnByaW50LWRlZmF1bHQtcmVtb3Rl4oCcINC90LAg4oCec3VibW9kdWxlLS1oZWxwZXLigJwg0L3QtSDQv9GA0LjQtdC80LAg0LDRgNCz0YPQvNC10L3RgtC4IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0cmlwIG9uZSBjb21wb25lbnQgb2ZmIHVybCAnJXMnIgogbXNnc3RyICLQvdC1INC80L7QttC1INC00LAg0YHQtSDQvNCw0YXQvdC1INC60L7QvNC/0L7QvdC10L3RgiDQvtGCINCw0LTRgNC10YHQsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwNyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxMCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NQogbXNnaWQgImFsdGVybmF0aXZlIGFuY2hvciBmb3IgcmVsYXRpdmUgcGF0aHMiCiBtc2dzdHIgItC00LjRgNC10LrRgtC+0YDQuNGPINC30LAg0L7Qv9GA0LXQtNC10LvRj9C90LXRgtC+INC90LAg0L7RgtC90L7RgdC40YLQtdC70L3QuNGC0LUg0L/RitGC0LjRidCwIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDEyCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDE1CiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGxpc3QgWy0tcHJlZml4PTxwYXRoPl0gWzxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBsaXN0IFstLXByZWZpeD3Qn9Cq0KJdIFvQn9Cq0KLigKZdIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDY5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2MjYKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NDkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYzMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJObyB1cmwgZm91bmQgZm9yIHN1Ym1vZHVsZSBwYXRoICclcycgaW4gLmdpdG1vZHVsZXMiCiBtc2dzdHIgItCS0YrQsiDRhNCw0LnQu9CwIOKAni5naXRtb2R1bGVz4oCcINC90LUg0LUg0L7RgtC60YDQuNGCINCw0LTRgNC10YEg0LfQsCDQv9GK0YLRjyDQutGK0Lwg0L/QvtC00LzQvtC00YPQuyDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyMQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJFbnRlcmluZyAnJXMnXG4iCiBtc2dzdHIgItCS0LvQuNC30LDQvdC1INCyIOKAniVz4oCcXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyBmb3IgJXNcbiIKQEAgLTE3NjMzLDcgKzIxMzM4LDcgQEAKICLQuNC30L/RitC70L3QtdC90LDRgtCwINC60L7QvNCw0L3QtNCwINC30LDQstGK0YDRiNC4INGBINC90LXQvdGD0LvQtdCyINC40LfRhdC+0LQg0LfQsCDigJ4lc+KAnFxuIgogIi4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NDUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyB3aGlsZSByZWN1cnNpbmcgaW4gdGhlIG5lc3RlZCAiCkBAIC0xNzY0NCwxOSArMjEzNDksMTkgQEAKICLQstC70L7QttC10L3QuCDQsiDigJ4lc+KAnFxuIgogIi4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjUKIG1zZ2lkICJTdXBwcmVzcyBvdXRwdXQgb2YgZW50ZXJpbmcgZWFjaCBzdWJtb2R1bGUgY29tbWFuZCIKIG1zZ3N0ciAi0JHQtdC3INC40LfQstC10LbQtNCw0L3QtSDQvdCwINC40LfRhdC+0LQg0L/RgNC4INCy0YrQstC10LbQtNCw0L3QtdGC0L4g0L3QsCDQstGB0Y/QutCwINC60L7QvNCw0L3QtNCwINC30LAg0L/QvtC00LzQvtC00YPQu9C4IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTYzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDQ4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDYzCiBtc2dpZCAiUmVjdXJzZSBpbnRvIG5lc3RlZCBzdWJtb2R1bGVzIgogbXNnc3RyICLQoNC10LrRg9GA0YHQuNCy0L3QviDQvtCx0YXQvtC20LTQsNC90LUg0L3QsCDQv9C+0LTQvNC+0LTRg9C70LjRgtC1IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY4Ci1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGZvcmVhY2ggWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gPGNvbW1hbmQ+IgotbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSDQmtCe0JzQkNCd0JTQkCIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NzIKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbLS1dIDxjb21tYW5kPiIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGZvcmVhY2ggWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWy0tXSDQmtCe0JzQkNCd0JTQkCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU5NQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY291bGQgbm90IGxvb2sgdXAgY29uZmlndXJhdGlvbiAnJXMnLiBBc3N1bWluZyB0aGlzIHJlcG9zaXRvcnkgaXMgaXRzIG93biAiCkBAIC0xNzY2NSw1NSArMjEzNzAsNTUgQEAKICLQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAniVz4oCcINC70LjQv9GB0LLQsC4gINCf0YDQuNC10LzQsCDRgdC1LCDRh9C1INGC0L7QstCwINGF0YDQsNC90LjQu9C40YnQtSDQtSDQv9GA0LDQstC40LvQvdC40Y/RgiDQuNC30YLQvtGH0L3QuNC6ICIKICLQt9CwINGB0LXQsdC1INGB0LguIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjYzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciB1cmwgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgItCd0LXRg9GB0L/QtdGI0L3QviDRgNC10LPQuNGB0YLRgNC40YDQsNC90LUg0L3QsCDQsNC00YDQtdGBINC30LAg0L/RitGC0Y8g0LrRitC8INC/0L7QtNC80L7QtNGD0Lsg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NjcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlICclcycgKCVzKSByZWdpc3RlcmVkIGZvciBwYXRoICclcydcbiIKIG1zZ3N0ciAi0KDQtdCz0LjRgdGC0YDQuNGA0LDQvSDQtSDQv9C+0LTQvNC+0LTRg9C7IOKAniVz4oCcICglcykg0LfQsCDQv9GK0YLRjyDQutGK0Lwg0L/QvtC00LzQvtC00YPQuyDigJ4lc+KAnFxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njc3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGNvbW1hbmQgdXBkYXRlIG1vZGUgc3VnZ2VzdGVkIGZvciBzdWJtb2R1bGUgJyVzJ1xuIgogbXNnc3RyICLQn9Cg0JXQlNCj0J/QoNCV0JbQlNCV0J3QmNCVOiDQv9GA0LXQv9C+0YDRitGH0LLQsCDRgdC1INGA0LXQttC40Lwg0L3QsCDQvtCx0L3QvtCy0Y/QstCw0L3QtSDQt9CwINC/0L7QtNC80L7QtNGD0LvQsCDigJ4lc+KAnFxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njg0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciB1cGRhdGUgbW9kZSBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAiIgogItCd0LXRg9GB0L/QtdGI0L3QviDRgNC10LPQuNGB0YLRgNC40YDQsNC90LUg0L3QsCDRgNC10LbQuNC80LAg0L3QsCDQvtCx0L3QvtCy0Y/QstCw0L3QtSDQt9CwINC/0YrRgtGPINC60YrQvCDQv9C+0LTQvNC+0LTRg9C7IOKAniVz4oCcIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzA2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzEwCiBtc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IGZvciBpbml0aWFsaXppbmcgYSBzdWJtb2R1bGUiCiBtc2dzdHIgItCR0LXQtyDQuNC30LLQtdC20LTQsNC90LUg0L3QsCDQuNC90YTQvtGA0LzQsNGG0LjRjyDQv9GA0Lgg0LjQvdC40YbQuNCw0LvQuNC30LjRgNCw0L3QtdGC0L4g0L3QsCDQv9C+0LTQvNC+0LTRg9C7IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzExCi1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxwYXRoPl0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBuYW1lIFvQn9Cq0KJdIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcxNQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8b3B0aW9ucz5dIFs8cGF0aD5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBb0J7Qn9Cm0JjQr+KApl0gW9Cf0KrQol0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3ODMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjc4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Ym1vZHVsZSBtYXBwaW5nIGZvdW5kIGluIC5naXRtb2R1bGVzIGZvciBwYXRoICclcyciCiBtc2dzdHIgItCS0YrQsiDRhNCw0LnQu9CwIOKAni5naXRtb2R1bGVz4oCcINC70LjQv9GB0LLQsCDQuNC90YTQvtGA0LzQsNGG0LjRjyDQt9CwINC/0YrRgtGPIOKAniVz4oCcIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODIyCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlIEhFQUQgcmVmIGluc2lkZSB0aGUgc3VibW9kdWxlICclcyciCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10LvRj9GCINGB0L7Rh9C10L0g0L7RgiDigJ5IRUFE4oCcINCyINC/0L7QtNC80L7QtNGD0LvQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L7RgtC60YDQuNGCIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODQ5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDE4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODY0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWN1cnNlIGludG8gc3VibW9kdWxlICclcyciCiBtc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDRgNC10LrRg9GA0YHQuNCy0L3QviDQvtCx0YXQvtC20LTQsNC90LUg0L3QsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExOTkKIG1zZ2lkICJTdXBwcmVzcyBzdWJtb2R1bGUgc3RhdHVzIG91dHB1dCIKIG1zZ3N0ciAi0JfQsNCz0LvRg9GI0LDQstCw0L3QtSDQvdCwINC40LfRhdC+0LTQsCDQt9CwINGB0YrRgdGC0L7Rj9C90LjQtdGC0L4g0L3QsCDQv9C+0LTQvNC+0LTRg9C70LAiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODkKIG1zZ2lkICIiCiAiVXNlIGNvbW1pdCBzdG9yZWQgaW4gdGhlIGluZGV4IGluc3RlYWQgb2YgdGhlIG9uZSBzdG9yZWQgaW4gdGhlIHN1Ym1vZHVsZSAiCiAiSEVBRCIKQEAgLTE3NzIxLDQ3ICsyMTQyNiw0NyBAQAogItCY0LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0L/QvtC00LDQstCw0L3QtdGC0L4g0YPQutCw0LfQsNC90L4g0LIg0LjQvdC00LXQutGB0LAsINCwINC90LUg0YLQvtCy0LAg0L7RgiDRg9C60LDQt9Cw0YLQtdC70Y8g4oCeSEVBROKAnCDQvdCwICIKICLQv9C+0LTQvNC+0LTRg9C70LAiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4OTAKIG1zZ2lkICJyZWN1cnNlIGludG8gbmVzdGVkIHN1Ym1vZHVsZXMiCiBtc2dzdHIgItGA0LXQutGD0YDRgdC40LLQvdC+INC+0LHRhdC+0LbQtNCw0L3QtSDQvdCwINC/0L7QtNC80L7QtNGD0LvQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4OTUKIG1zZ2lkICJnaXQgc3VibW9kdWxlIHN0YXR1cyBbLS1xdWlldF0gWy0tY2FjaGVkXSBbLS1yZWN1cnNpdmVdIFs8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgc3VibW9kdWxlIHN0YXR1cyBbLS1xdWlldF0gWy0tY2FjaGVkXSBbLS1yZWN1cnNpdmVdIFvQn9Cq0KLigKZdIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTA0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTE5CiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIG5hbWUgPHBhdGg+IgogbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbmFtZSDQn9Cq0KIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5NjgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIGZvciAnJXMnXG4iCiBtc2dzdHIgItCh0LjQvdGF0YDQvtC90LjQt9C40YDQsNC90LUg0L3QsCDQsNC00YDQtdGB0LAg0L3QsCDQv9C+0LTQvNC+0LTRg9C7INC30LAg4oCeJXPigJxcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk3NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVnaXN0ZXIgdXJsIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0YDQtdCz0LjRgdGC0YDQuNGA0LDQvdC1INC90LAg0LDQtNGA0LXRgSDQt9CwINC/0YrRgtGPINC60YrQvCDQv9C+0LTQvNC+0LTRg9C7IOKAniVz4oCcIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTg4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZ2V0IHRoZSBkZWZhdWx0IHJlbW90ZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgItC+0YLQtNCw0LvQtdGH0LXQvdC40Y/RgiDQsNC00YDQtdGBINC90LAg0L/QvtC00LzQvtC00YPQu9CwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9C+0LvRg9GH0LXQvSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk5OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHVwZGF0ZSByZW1vdGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICLQvtGC0LTQsNC70LXRh9C10L3QuNGP0YIg0LDQtNGA0LXRgSDQvdCwINC/0L7QtNC80L7QtNGD0LvQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/RgNC+0LzQtdC90LXQvSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNDYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDYxCiBtc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IG9mIHN5bmNocm9uaXppbmcgc3VibW9kdWxlIHVybCIKIG1zZ3N0ciAi0JHQtdC3INC40LfQstC10LbQtNCw0L3QtSDQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGPINC/0YDQuCDRgdC40L3RhdGA0L7QvdC40LfQuNGA0LDQvdC10YLQviDQvdCwINC/0L7QtNC80L7QtNGD0LsiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDUzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA2OAogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBzeW5jIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFs8cGF0aD5dIgogbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgc3luYyBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBb0J/QqtCiXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMDcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgd29yayB0cmVlICclcycgY29udGFpbnMgYSAuZ2l0IGRpcmVjdG9yeSAodXNlICdybSAtcmYnIGlmIHlvdSAiCkBAIC0xNzc3MCw3ICsyMTQ3NSw3IEBACiAi0KDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0L3QsCDQv9C+0LTQvNC+0LTRg9C7IOKAniVz4oCcINGB0YrQtNGK0YDQttCwINC00LjRgNC10LrRgtC+0YDQuNGPIOKAni5naXTigJwuXG4iCiAiKNCw0LrQviDQuNGB0LrQsNGC0LUg0LTQsCDQs9C4INC40LfRgtGA0LjQtdGC0LUg0LfQsNC10LTQvdC+INGBINGG0Y/Qu9Cw0YLQsCDQuNC8INC40YHRgtC+0YDQuNGPLCDQuNC30L/QvtC70LfQstCw0LnRgtC1IOKAnnJtIC1yZuKAnCkiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTE5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiU3VibW9kdWxlIHdvcmsgdHJlZSAnJXMnIGNvbnRhaW5zIGxvY2FsIG1vZGlmaWNhdGlvbnM7IHVzZSAnLWYnIHRvIGRpc2NhcmQgIgpAQCAtMTc3NzksMTgwICsyMTQ4NCwyMDkgQEAKICLQoNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviDQvdCwINC/0L7QtNC80L7QtNGD0Lsg4oCeJXPigJwg0YHRitC00YrRgNC20LAg0LvQvtC60LDQu9C90Lgg0L/RgNC+0LzQtdC90LguICDQnNC+0LbQtdGC0LUg0LTQsCDQs9C4ICIKICLQvtGC0YXQstGK0YDQu9C40YLQtSDRgSDQvtC/0YbQuNGP0YLQsCDigJ4tZuKAnCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMjcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNsZWFyZWQgZGlyZWN0b3J5ICclcydcbiIKIG1zZ3N0ciAi0JTQuNGA0LXQutGC0L7RgNC40Y/RgtCwIOKAniVz4oCcINC1INC40LfRh9C40YHRgtC10L3QsFxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBzdWJtb2R1bGUgd29yayB0cmVlICclcydcbiIKIG1zZ3N0ciAiIgogItCU0LjRgNC10LrRgtC+0YDQuNGP0YLQsCDQutGK0Lwg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0L3QsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40LfRgtGA0LjRgtCwXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTM4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGVtcHR5IHN1Ym1vZHVsZSBkaXJlY3RvcnkgJXMiCiBtc2dzdHIgItC/0YDQsNC30L3QsNGC0LAg0LTQuNGA0LXQutGC0L7RgNC40Y8g0LfQsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGB0YrQt9C00LDQtNC10L3QsCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNTQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSAnJXMnICglcykgdW5yZWdpc3RlcmVkIGZvciBwYXRoICclcydcbiIKIG1zZ3N0ciAi0KDQtdCz0LjRgdGC0YDQsNGG0LjRj9GC0LAg0L3QsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwgKCVzKSDQt9CwINC/0YrRgtGPIOKAniVz4oCcINC1INC/0YDQtdC80LDRhdC90LDRgtCwXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTgzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIwMAogbXNnaWQgIlJlbW92ZSBzdWJtb2R1bGUgd29ya2luZyB0cmVlcyBldmVuIGlmIHRoZXkgY29udGFpbiBsb2NhbCBjaGFuZ2VzIgogbXNnc3RyICIiCiAi0JjQt9GC0YDQuNCy0LDQvdC1INC90LAg0YDQsNCx0L7RgtC90LjRgtC1INC00YrRgNCy0LXRgtCwINC90LAg0L/QvtC00LzQvtC00YPQu9C40YLQtSwg0LTQvtGA0Lgg0LrQvtCz0LDRgtC+INGC0LUg0YHRitC00YrRgNC20LDRgiAiCiAi0LvQvtC60LDQu9C90Lgg0L/RgNC+0LzQtdC90LgiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTg0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIwMQogbXNnaWQgIlVucmVnaXN0ZXIgYWxsIHN1Ym1vZHVsZXMiCiBtc2dzdHIgItCf0YDQtdC80LDRhdCy0LDQvdC1INC90LAg0YDQtdCz0LjRgdGC0YDQsNGG0LjQuNGC0LUg0L3QsCDQstGB0LjRh9C60Lgg0L/QvtC00LzQvtC00YPQu9C4IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDYKIG1zZ2lkICIiCiAiZ2l0IHN1Ym1vZHVsZSBkZWluaXQgWy0tcXVpZXRdIFstZiB8IC0tZm9yY2VdIFstLWFsbCB8IFstLV0gWzxwYXRoPi4uLl1dIgogbXNnc3RyICJnaXQgc3VibW9kdWxlIGRlaW5pdCBbLS1xdWlldF0gWy1mIHwgLS1mb3JjZV0gWy0tYWxsIHwgWy0tXSBb0J/QqtCi4oCmXV0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjAzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIyMAogbXNnaWQgIlVzZSAnLS1hbGwnIGlmIHlvdSByZWFsbHkgd2FudCB0byBkZWluaXRpYWxpemUgYWxsIHN1Ym1vZHVsZXMiCiBtc2dzdHIgItCY0LfQv9C+0LvQt9Cy0LDQudGC0LUg4oCeLS1hbGzigJwsINC30LAg0LTQsCDQv9GA0LXQvNCw0YXQvdC10YLQtSDQstGB0LjRh9C60Lgg0L/QvtC00LzQvtC00YPQu9C4IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTI5NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMwMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyODkKK21zZ2lkICIiCisiQW4gYWx0ZXJuYXRlIGNvbXB1dGVkIGZyb20gYSBzdXBlcnByb2plY3QncyBhbHRlcm5hdGUgaXMgaW52YWxpZC5cbiIKKyJUbyBhbGxvdyBHaXQgdG8gY2xvbmUgd2l0aG91dCBhbiBhbHRlcm5hdGUgaW4gc3VjaCBhIGNhc2UsIHNldFxuIgorInN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IHRvICdpbmZvJyBvciwgZXF1aXZhbGVudGx5LCBjbG9uZSB3aXRoXG4iCisiJy0tcmVmZXJlbmNlLWlmLWFibGUnIGluc3RlYWQgb2YgJy0tcmVmZXJlbmNlJy4iCittc2dzdHIgIiIKKyLQkNC70YLQtdGA0L3QsNGC0LjQstC90LjRj9GCINC40LfRgtC+0YfQvdC40LosINC+0L/RgNC10LTQtdC70LXQvSDQvtGCINC+0LHRhdCy0LDRidCw0YnQuNGPINC/0YDQvtC10LrRgiDQtSDQvdC10L/RgNCw0LLQuNC70LXQvS5cbiIKKyLQl9CwINC00LAg0L/QvtC30LLQvtC70LjRgtC1INC90LAgZ2l0INC00LAg0LrQu9C+0L3QuNGA0LAg0LHQtdC3INCw0LvRgtC10YDQvdCw0YLQuNCy0LXQvSDQuNC30YLQvtGH0L3QuNC6INCyINGC0L7Qt9C4INGB0LvRg9GH0LDQuSxcbiIKKyLQt9Cw0LTQsNC50YLQtSDQvdCw0YHRgtGA0L7QudC60LDRgtCwIOKAnnN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd54oCcINC00LAg0LUg4oCeaW5mb+KAnCDQuNC70LhcbiIKKyLQv9GA0Lgg0LrQu9C+0L3QuNGA0LDQvdC1INC/0L7Qu9C30LLQsNC50YLQtSDQvtC/0YbQuNGP0YLQsCDigJ4tLXJlZmVyZW5jZS1pZi1hYmxl4oCcINCy0LzQtdGB0YLQviDigJ4tLXJlZmVyZW5jZeKAnC4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzI4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInN1Ym1vZHVsZSAnJXMnIGNhbm5vdCBhZGQgYWx0ZXJuYXRlOiAlcyIKIG1zZ3N0ciAi0LrRitC8INC/0L7QtNC80L7QtNGD0LvQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQtNC+0LHQsNCy0Lgg0LDQu9GC0LXRgNC90LDRgtC40LLQtdC9INC40LfRgtC+0YfQvdC40Lo6ICVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMzNgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVmFsdWUgJyVzJyBmb3Igc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgaXMgbm90IHJlY29nbml6ZWQiCiBtc2dzdHIgIiIKICLQndC10L/QvtC30L3QsNGC0LAg0YHRgtC+0LnQvdC+0YHRgiDigJ4lc+KAnCDQt9CwINC90LDRgdGC0YDQvtC50LrQsNGC0LAg4oCec3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3nigJwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzQzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJWYWx1ZSAnJXMnIGZvciBzdWJtb2R1bGUuYWx0ZXJuYXRlTG9jYXRpb24gaXMgbm90IHJlY29nbml6ZWQiCiBtc2dzdHIgItCd0LXQv9C+0LfQvdCw0YLQsCDRgdGC0L7QudC90L7RgdGCIOKAniVz4oCcINC30LAg0L3QsNGB0YLRgNC+0LnQutCw0YLQsCDigJ5zdWJtb2R1bGUuYWx0ZXJuYXRlTG9jYXRpb27igJwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5OAogbXNnaWQgIndoZXJlIHRoZSBuZXcgc3VibW9kdWxlIHdpbGwgYmUgY2xvbmVkIHRvIgogbXNnc3RyICLQutGK0LTQtSDQtNCwINGB0LUg0LrQu9C+0L3QuNGA0LAg0L3QvtCy0LjRj9GCINC/0L7QtNC80L7QtNGD0LsiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMQogbXNnaWQgIm5hbWUgb2YgdGhlIG5ldyBzdWJtb2R1bGUiCiBtc2dzdHIgItC40LzQtSDQvdCwINC90L7QstC40Y8g0L/QvtC00LzQvtC00YPQuyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA0CiBtc2dpZCAidXJsIHdoZXJlIHRvIGNsb25lIHRoZSBzdWJtb2R1bGUgZnJvbSIKIG1zZ3N0ciAi0LDQtNGA0LXRgSwg0L7RgiDQutC+0LnRgtC+INC00LAg0YHQtSDQutC70L7QvdC40YDQsCDQvdC+0LLQuNGP0YIg0L/QvtC00LzQvtC00YPQuyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzODAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDEyCiBtc2dpZCAiZGVwdGggZm9yIHNoYWxsb3cgY2xvbmVzIgogbXNnc3RyICLQtNGK0LvQsdC+0YfQuNC90LAg0L3QsCDQv9C70LjRgtC60LjRgtC1INGF0YDQsNC90LjQu9C40YnQsCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzODMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE1IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI0CiBtc2dpZCAiZm9yY2UgY2xvbmluZyBwcm9ncmVzcyIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L3QsNC/0YDQtdC00YrQutCwINC90LAg0LrQu9C+0L3QuNGA0LDQvdC10YLQviIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzODgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI2Cittc2dpZCAiZGlzYWxsb3cgY2xvbmluZyBpbnRvIG5vbi1lbXB0eSBkaXJlY3RvcnkiCittc2dzdHIgItC/0YDQtdC00L7RgtCy0YDQsNGC0Y/QstCw0L3QtSDQvdCwINC60LvQvtC90LjRgNCw0L3QtSDQsiDQvdC10L/RgNCw0LfQvdCwINC40YHRgtC+0YDQuNGPIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQyNAogbXNnaWQgIiIKICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY2xvbmUgWy0tcHJlZml4PTxwYXRoPl0gWy0tcXVpZXRdIFstLXJlZmVyZW5jZSAiCi0iPHJlcG9zaXRvcnk+XSBbLS1uYW1lIDxuYW1lPl0gWy0tZGVwdGggPGRlcHRoPl0gLS11cmwgPHVybD4gLS1wYXRoIDxwYXRoPiIKKyI8cmVwb3NpdG9yeT5dIFstLW5hbWUgPG5hbWU+XSBbLS1kZXB0aCA8ZGVwdGg+XSBbLS1zaW5nbGUtYnJhbmNoXSAtLXVybCAiCisiPHVybD4gLS1wYXRoIDxwYXRoPiIKIG1zZ3N0ciAiIgogImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg90J/QqtCiXSBbLS1xdWlldF0gWy0tcmVmZXJlbmNlINCl0KDQkNCd0JjQm9CY0KnQlV0gIgotIlstLW5hbWUg0JjQnNCVXSBbLS1kZXB0aCDQlNCq0JvQkdCe0KfQmNCd0JBdIC0tdXJsINCQ0JTQoNCV0KEgLS1wYXRoINCf0KrQouKApiIKKyJbLS1uYW1lINCY0JzQlV0gWy0tZGVwdGgg0JTQqtCb0JHQntCn0JjQndCQXSBbLS1zaW5nbGUtYnJhbmNoXSAtLXVybCDQkNCU0KDQldChIC0tcGF0aCDQn9Cq0KIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ0OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBjcmVhdGUvdXNlICclcycgaW4gYW5vdGhlciBzdWJtb2R1bGUncyBnaXQgZGlyIgorbXNnc3RyICIiCisi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQvdC40YLQviDQtNCwINGB0LUg0YHRitC30LTQsNC00LUsINC90LjRgtC+INC00LAg0YHQtSDQv9C+0LvQt9Cy0LAg0LIg0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwINC90LAgZ2l0INC90LAgIgorItC00YDRg9CzINC/0L7QtNC80L7QtNGD0LsiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNsb25lIG9mICclcycgaW50byBzdWJtb2R1bGUgcGF0aCAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdC+INC60LvQvtC90LjRgNCw0L3QtSDQvdCwINCw0LTRgNC10YHQsCDigJ4lc+KAnCDQsiDQv9GK0YLRjyDigJ4lc+KAnCDQutCw0YLQviDQv9C+0LTQvNC+0LTRg9C7IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQzMworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlyZWN0b3J5IG5vdCBlbXB0eTogJyVzJyIKK21zZ3N0ciAi0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwINC90LUg0LUg0L/RgNCw0LfQvdCwOiDigJ4lc+KAnCIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCBzdWJtb2R1bGUgZGlyZWN0b3J5IGZvciAnJXMnIgogbXNnc3RyICLQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg0L3QsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0L7Qu9GD0YfQtdC90LAiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTUxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHVwZGF0ZSBtb2RlICclcycgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvQtdC9INGA0LXQttC40Lwg0L3QsCDQvtCx0L3QvtCy0Y/QstCw0L3QtSDigJ4lc+KAnCDQt9CwINC/0YrRgtGPINC60YrQvCDQv9C+0LTQvNC+0LTRg9C7IOKAniVz4oCcIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ3MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB1cGRhdGUgbW9kZSAnJXMnIGNvbmZpZ3VyZWQgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgIiIKICLQndCw0YHRgtGA0L7QtdC9INC1INC90LXQv9GA0LDQstC40LvQtdC9INGA0LXQttC40Lwg0L3QsCDQvtCx0L3QvtCy0Y/QstCw0L3QtSDigJ4lc+KAnCDQt9CwINC/0YrRgtGPINC60YrQvCDQv9C+0LTQvNC+0LTRg9C7IOKAniVz4oCcIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTU2NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyVzJyBub3QgaW5pdGlhbGl6ZWQiCiBtc2dzdHIgItCf0YrRgtGP0YIg0L3QsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwg0L3QtSDQtSDQuNC90LjRhtC40LDQu9C40LfQuNGA0LDQvSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1NzAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjIxCiBtc2dpZCAiTWF5YmUgeW91IHdhbnQgdG8gdXNlICd1cGRhdGUgLS1pbml0Jz8iCiBtc2dzdHIgItCS0LXRgNC+0Y/RgtC90L4g0LjRgdC60LDRhdGC0LUg0LTQsCDQuNC30L/QvtC70LfQstCw0YLQtSDigJ51cGRhdGUgLS1pbml04oCcPyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MDAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwaW5nIHVubWVyZ2VkIHN1Ym1vZHVsZSAlcyIKIG1zZ3N0ciAi0J/RgNC10YHQutCw0YfQsNC90LUg0L3QsCDQvdC10YHQu9C10YLQuNGPINC/0L7QtNC80L7QtNGD0Lsg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjI5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTY4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAi0J/RgNC10YHQutCw0YfQsNC90LUg0L3QsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzczCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTgzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJy4gUmV0cnkgc2NoZWR1bGVkIgogbXNnc3RyICLQndC10YPRgdC/0LXRiNC10L0g0L7Qv9C40YIg0LfQsCDQutC70L7QvdC40YDQsNC90LUg0L3QsCDigJ4lc+KAnC4gINCd0LDRgdGA0L7Rh9C10L0g0LUg0LLRgtC+0YDQuCDQvtC/0LjRgiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3ODQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBjbG9uZSAnJXMnIGEgc2Vjb25kIHRpbWUsIGFib3J0aW5nIgogbXNnc3RyICIiCiAi0JLRgtC+0YDQuCDQvdC10YPRgdC/0LXRiNC10L0g0L7Qv9C40YIg0LfQsCDQutC70L7QvdC40YDQsNC90LUg0L3QsCDigJ4lc+KAnC4gINCU0LXQudGB0YLQstC40LXRgtC+INGB0LUg0L/RgNC10YPRgdGC0LDQvdC+0LLRj9Cy0LAiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODQ3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDg5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwMyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE0OQogbXNnaWQgInBhdGggaW50byB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICLQv9GK0YIg0LrRitC8INGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDYKIG1zZ2lkICJwYXRoIGludG8gdGhlIHdvcmtpbmcgdHJlZSwgYWNyb3NzIG5lc3RlZCBzdWJtb2R1bGUgYm91bmRhcmllcyIKIG1zZ3N0ciAi0L/RitGCINC60YrQvCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviwg0L/RgNC10Lcg0LPRgNCw0L3QuNGG0LjRgtC1INC90LAg0LLQu9C+0LbQtdC90LjRgtC1INC/0L7QtNC80L7QtNGD0LvQuCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTEwCiBtc2dpZCAicmViYXNlLCBtZXJnZSwgY2hlY2tvdXQgb3Igbm9uZSIKIG1zZ3N0ciAiIgogIuKAnnJlYmFzZeKAnCAo0L/RgNC10LHQsNC30LjRgNCw0L3QtSksIOKAnm1lcmdl4oCcICjRgdC70LjQstCw0L3QtSksIOKAnmNoZWNrb3V04oCcICjQuNC30YLQtdCz0LvRj9C90LUpINC40LvQuCAiCiAi4oCebm9uZeKAnCAo0L3QuNGJ0L4g0LTQsCDQvdC1INGB0LUg0L/RgNCw0LLQuCkiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODYwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxNgogbXNnaWQgIkNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgdHJ1bmNhdGVkIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHJldmlzaW9ucyIKIG1zZ3N0ciAi0J/Qu9C40YLQutC+INC60LvQvtC90LjRgNCw0L3QtSwg0L7RgtGA0Y/Qt9Cw0L3QviDQtNC+INGD0LrQsNC30LDQvdC40Y8g0LHRgNC+0Lkg0LLQtdGA0YHQuNC4IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTkKIG1zZ2lkICJwYXJhbGxlbCBqb2JzIgogbXNnc3RyICLQsdGA0L7QuSDQv9Cw0YDQsNC70LXQu9C90Lgg0L/RgNC+0YbQtdGB0LgiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyMQogbXNnaWQgIndoZXRoZXIgdGhlIGluaXRpYWwgY2xvbmUgc2hvdWxkIGZvbGxvdyB0aGUgc2hhbGxvdyByZWNvbW1lbmRhdGlvbiIKIG1zZ3N0ciAi0LTQsNC70Lgg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdC+0YLQviDQutC70L7QvdC40YDQsNC90LUg0LTQsCDQtSDQv9C70LjRgtC60L4sINC60LDQutGC0L4g0YHQtSDQv9GA0LXQv9C+0YDRitGH0LLQsCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTIyCiBtc2dpZCAiZG9uJ3QgcHJpbnQgY2xvbmluZyBwcm9ncmVzcyIKIG1zZ3N0ciAi0LHQtdC3INC40LfQstC10LbQtNCw0L3QtSDQvdCwINC90LDQv9GA0LXQtNGK0LrQsCDQvdCwINC60LvQvtC90LjRgNCw0L3QtdGC0L4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODczCi1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZV9jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZV9jbG9uZSBbLS1wcmVmaXg90J/QqtCiXSBb0J/QqtCi4oCmXSIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTMzCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg90J/QqtCiXSBb0J/QqtCi4oCmXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4ODYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTQ2CiBtc2dpZCAiYmFkIHZhbHVlIGZvciB1cGRhdGUgcGFyYW1ldGVyIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQv9Cw0YDQsNC80LXRgtGK0YAg0LrRitC8INC+0L/RhtC40Y/RgtCwIOKAni0tdXBkYXRl4oCcIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkzNAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN1Ym1vZHVsZSAoJXMpIGJyYW5jaCBjb25maWd1cmVkIHRvIGluaGVyaXQgYnJhbmNoIGZyb20gc3VwZXJwcm9qZWN0LCBidXQgIgpAQCAtMTc5NjEsNDIgKzIxNjk1LDUwIEBACiAi0JrQu9C+0L3RitGCINC90LAg0L/QvtC00LzQvtC00YPQu9CwIOKAniVz4oCcINC1INC90LDRgdGC0YDQvtC10L0g0LTQsCDQvdCw0YHQu9C10LTRj9Cy0LAg0LrQu9C+0L3QsCDQvtGCINC+0LHRhdCy0LDRidCw0YnQuNGPINC/0YDQvtC10LrRgiwgIgogItC90L4g0YLQvtC5INC90LUg0LUg0L3QsCDQvdC40LrQvtC5INC60LvQvtC9IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA1NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxMTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCBhIHJlcG9zaXRvcnkgaGFuZGxlIGZvciBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/QvtC70YPRh9C4INCy0YDRitC30LrQsCDQutGK0Lwg0YXRgNCw0L3QuNC70LjRidC1INC30LAg0L/QvtC00LzQvtC00YPQu9CwIOKAniVz4oCcIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA5MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTAKIG1zZ2lkICJyZWN1cnNlIGludG8gc3VibW9kdWxlcyIKIG1zZ3N0ciAi0YDQtdC60YPRgNGB0LjQstC90L4g0L7QsdGF0L7QttC00LDQvdC1INC/0L7QtNC80L7QtNGD0LvQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDk2Ci1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGVtYmVkLWdpdC1kaXIgWzxwYXRoPi4uLl0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBuYW1lIGVtYmVkLWdpdC1kaXIgW9Cf0KrQouKApl0iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1NgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzxvcHRpb25zPl0gWzxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgW9Ce0J/QptCY0K/igKZdIFvQn9Cq0KLigKZdIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMTIKIG1zZ2lkICJjaGVjayBpZiBpdCBpcyBzYWZlIHRvIHdyaXRlIHRvIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIgogbXNnc3RyICLQv9GA0L7QstC10YDQutCwINC00LDQu9C4INC/0LjRgdCw0L3QtdGC0L4g0LLRitCyINGE0LDQudC70LAg4oCeLmdpdG1vZHVsZXPigJwg0LUg0LHQtdC30L7Qv9Cw0YHQvdC+IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1NwotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgbmFtZSBbdmFsdWVdIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMTUKK21zZ2lkICJ1bnNldCB0aGUgY29uZmlnIGluIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIgorbXNnc3RyICLQuNC30YLRgNC40LLQsNC90LUg0L3QsCDQvdCw0YHRgtGA0L7QudC60LAg0LLRitCyINGE0LDQudC70LAg4oCeLmdpdG1vZHVsZXPigJwiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjIwCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyA8bmFtZT4gWzx2YWx1ZT5dIgogbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnINCY0JzQlSBb0KHQotCe0JnQndCe0KHQol0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTU4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyMQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS11bnNldCA8bmFtZT4iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS11bnNldCDQmNCc0JUiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjIyCiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLWNoZWNrLXdyaXRlYWJsZSIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLWNoZWNrLXdyaXRlYWJsZSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNzUgZ2l0LXN1Ym1vZHVsZS5zaDoxNjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjQxIGdpdC1zdWJtb2R1bGUuc2g6MTc0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJwbGVhc2UgbWFrZSBzdXJlIHRoYXQgdGhlIC5naXRtb2R1bGVzIGZpbGUgaXMgaW4gdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAi0YTQsNC50LvRitGCIOKAni5naXRtb2R1bGVz4oCcINGC0YDRj9Cx0LLQsCDQtNCwINC1INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyNQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyOTEgZ2l0LmM6NDMzIGdpdC5jOjY4NAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBkb2Vzbid0IHN1cHBvcnQgLS1zdXBlci1wcmVmaXgiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0L/QvtC00LTRitGA0LbQsCDQvtC/0YbQuNGP0YLQsCDigJ4tLXN1cGVyLXByZWZpeOKAnCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgc3VibW9kdWxlLS1oZWxwZXIgc3ViY29tbWFuZCIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQtSDQv9C+0LTQutC+0LzQsNC90LTQsCDQvdCwIOKAnnN1Ym1vZHVsZS0taGVscGVy4oCcIgpAQCAtMTgwMzEsMTcgKzIxNzczLDE3IEBACiAKICM6IGJ1aWx0aW4vdGFnLmM6MjUKIG1zZ2lkICIiCi0iZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA8bXNnPiB8IC1GIDxmaWxlPl0gPHRhZ25hbWU+ICIKLSJbPGhlYWQ+XSIKKyJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPGtleS1pZD5dIFstZl0gWy1tIDxtc2c+IHwgLUYgPGZpbGU+XVxuIgorIlx0XHQ8dGFnbmFtZT4gWzxoZWFkPl0iCiBtc2dzdHIgIiIKLSJnaXQgdGFnIFstYSB8IC1zIHwgLXUg0JjQlNCV0J3QotCY0KTQmNCa0JDQotCe0KBf0J3QkF/QmtCb0K7Qp10gWy1mXSBbLW0g0KHQqtCe0JHQqdCV0J3QmNCVIHwgLUYg0KTQkNCZ0JtdICIKLSLQldCi0JjQmtCV0KIgW9CS0KDQqtClXSIKKyJnaXQgdGFnIFstYSB8IC1zIHwgLXUg0JjQlNCV0J3QotCY0KTQmNCa0JDQotCe0KBf0J3QkF/QmtCb0K7Qp10gWy1mXSBbLW0g0KHQqtCe0JHQqdCV0J3QmNCVIHwgLUYg0KTQkNCZ0JtdXG4iCisiICAgICAgICDQldCi0JjQmtCV0KIgW9CS0KDQqtClXSIKIAotIzogYnVpbHRpbi90YWcuYzoyNgorIzogYnVpbHRpbi90YWcuYzoyNwogbXNnaWQgImdpdCB0YWcgLWQgPHRhZ25hbWU+Li4uIgogbXNnc3RyICJnaXQgdGFnIC1kINCV0KLQmNCa0JXQouKApiIKIAotIzogYnVpbHRpbi90YWcuYzoyNworIzogYnVpbHRpbi90YWcuYzoyOAogbXNnaWQgIiIKICJnaXQgdGFnIC1sIFstbls8bnVtPl1dIFstLWNvbnRhaW5zIDxjb21taXQ+XSBbLS1uby1jb250YWlucyA8Y29tbWl0Pl0gWy0tIgogInBvaW50cy1hdCA8b2JqZWN0Pl1cbiIKQEAgLTE4MDUwLDIxICsyMTc5MiwyMSBAQAogImdpdCB0YWcgLWwgWy1uW9CR0KDQntCZXV0gWy0tY29udGFpbnMg0J/QntCU0JDQktCQ0J3QlV0gWy0tcG9pbnRzLWF0INCe0JHQldCa0KJdXG4iCiAiICAgICAgICAgICBbLS1mb3JtYXQ90KTQntCg0JzQkNCiXSBbLS1bbm8tXW1lcmdlZCBb0J/QntCU0JDQktCQ0J3QlV1dIFvQqNCQ0JHQm9Ce0J3igKZdIgogCi0jOiBidWlsdGluL3RhZy5jOjI5CisjOiBidWlsdGluL3RhZy5jOjMwCiBtc2dpZCAiZ2l0IHRhZyAtdiBbLS1mb3JtYXQ9PGZvcm1hdD5dIDx0YWduYW1lPi4uLiIKIG1zZ3N0ciAiZ2l0IHRhZyAtdiBbLS1mb3JtYXQ90KTQntCg0JzQkNCiXSDQldCi0JjQmtCV0KLigKYiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6ODcKKyM6IGJ1aWx0aW4vdGFnLmM6ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFnICclcycgbm90IGZvdW5kLiIKIG1zZ3N0ciAi0LXRgtC40LrQtdGC0YrRgiDigJ4lc+KAnCDQvdC1INC1INC+0YLQutGA0LjRgi4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTAzCisjOiBidWlsdGluL3RhZy5jOjEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWxldGVkIHRhZyAnJXMnICh3YXMgJXMpXG4iCiBtc2dzdHIgItCY0LfRgtGA0LjRgiDQtSDQtdGC0LjQutC10YLRitGCIOKAniVz4oCcICjQsdC1IOKAniVz4oCcKVxuIgogCi0jOiBidWlsdGluL3RhZy5jOjEzMworIzogYnVpbHRpbi90YWcuYzoxMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTgwNzQsMTAgKzIxODE2LDEwIEBACiBtc2dzdHIgIiIKICJcbiIKICLQktGK0LLQtdC00LXRgtC1INGB0YrQvtCx0YnQtdC90LjQtSDQt9CwINC10YLQuNC60LXRgtCwLlxuIgotIiAgJXNcbiIKKyIgICAgJXNcbiIKICLQoNC10LTQvtCy0LXRgtC1LCDQutC+0LjRgtC+INC30LDQv9C+0YfQstCw0YIg0YEg4oCeJWPigJwsINGJ0LUg0LHRitC00LDRgiDQv9GA0L7Qv9GD0YHQvdCw0YLQuC5cbiIKIAotIzogYnVpbHRpbi90YWcuYzoxMzcKKyM6IGJ1aWx0aW4vdGFnLmM6MTM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTE4MDg4LDM3MCArMjE4MzAsMzg4IEBACiBtc2dzdHIgIiIKICJcbiIKICLQktGK0LLQtdC00LXRgtC1INGB0YrQvtCx0YnQtdC90LjQtSDQt9CwINC10YLQuNC60LXRgi5cbiIKLSIgICVzXG4iCisiICAgICVzXG4iCiAi0KDQtdC00L7QstC10YLQtSwg0LrQvtC40YLQviDQt9Cw0L/QvtGH0LLQsNGCINGBIOKAniVj4oCcLCDRgdGK0YnQviDRidC1INCx0YrQtNCw0YIg0LLQutC70Y7Rh9C10L3QuCDigJQg0LzQvtC20LUg0LTQsCDQs9C4ICIKICLQuNC30YLRgNC40LXRgtC1INCy0LjQtS5cbiIKIAotIzogYnVpbHRpbi90YWcuYzoxOTEKKyM6IGJ1aWx0aW4vdGFnLmM6MTk4CiBtc2dpZCAidW5hYmxlIHRvIHNpZ24gdGhlIHRhZyIKIG1zZ3N0ciAi0LXRgtC40LrQtdGC0YrRgiDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0L/QvtC00L/QuNGB0LDQvSIKIAotIzogYnVpbHRpbi90YWcuYzoxOTMKKyM6IGJ1aWx0aW4vdGFnLmM6MjAwCiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRhZyBmaWxlIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg0LfQsCDQtdGC0LjQutC10YLQsCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LDQt9C10L0iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjE4CisjOiBidWlsdGluL3RhZy5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGhhdmUgY3JlYXRlZCBhIG5lc3RlZCB0YWcuIFRoZSBvYmplY3QgcmVmZXJyZWQgdG8gYnkgeW91ciBuZXcgdGFnIGlzXG4iCisiYWxyZWFkeSBhIHRhZy4gSWYgeW91IG1lYW50IHRvIHRhZyB0aGUgb2JqZWN0IHRoYXQgaXQgcG9pbnRzIHRvLCB1c2U6XG4iCisiXG4iCisiXHRnaXQgdGFnIC1mICVzICVzXnt9IgorbXNnc3RyICIiCisi0KHRitC30LTQsNC70Lgg0YHRgtC1INC90LXQv9GA0Y/QuiDQtdGC0LjQutC10YIg4oCUINC+0LHQtdC60YLRitGCLCDRgdC+0YfQtdC9INC+0YIg0L3QvtCy0L7RgdGK0LfQtNCw0LTQtdC90LjRjyDQtdGC0LjQutC10YIsXG4iCisi0LUg0YHRitGJ0L4g0LXRgtC40LrQtdGCLiAg0JDQutC+INCy0LzQtdGB0YLQviDRgtC+0LLQsCDQuNGB0LrQsNGC0LUg0L3QvtCy0LjRj9GCINC10YLQuNC60LXRgiDQtNCwINGB0L7Rh9C4INC60YrQvCDRgtC+0LLQsCxcbiIKKyLQutC+0LXRgtC+INGB0LUg0YHQvtGH0Lgg0L7RgiDRgdGC0LDRgNC40Y8sINC40LfQv9GK0LvQvdC10YLQtTpcbiIKKyJcbiIKKyIgICAgZ2l0IHRhZyAtZiAlcyAlc157fSIKKworIzogYnVpbHRpbi90YWcuYzoyMzIKIG1zZ2lkICJiYWQgb2JqZWN0IHR5cGUuIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70LXQvSDQstC40LQg0L7QsdC10LrRgi4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjY3CisjOiBidWlsdGluL3RhZy5jOjI4NAogbXNnaWQgIm5vIHRhZyBtZXNzYWdlPyIKIG1zZ3N0ciAi0LvQuNC/0YHQstCwINGB0YrQvtCx0YnQtdC90LjQtSDQt9CwINC10YLQuNC60LXRgtCwIgogCi0jOiBidWlsdGluL3RhZy5jOjI3NAorIzogYnVpbHRpbi90YWcuYzoyOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIHRhZyBtZXNzYWdlIGhhcyBiZWVuIGxlZnQgaW4gJXNcbiIKIG1zZ3N0ciAi0KHRitC+0LHRidC10L3QuNC10YLQviDQt9CwINC10YLQuNC60LXRgtCwINC1INC30LDQv9Cw0LfQtdC90L4g0LLRitCyINGE0LDQudC70LAg4oCeJXPigJxcbiIKIAotIzogYnVpbHRpbi90YWcuYzozODUKKyM6IGJ1aWx0aW4vdGFnLmM6NDAyCiBtc2dpZCAibGlzdCB0YWcgbmFtZXMiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDQvdCwINC40LzQtdC90LDRgtCwINC90LAg0LXRgtC40LrQtdGC0LjRgtC1IgogCi0jOiBidWlsdGluL3RhZy5jOjM4NworIzogYnVpbHRpbi90YWcuYzo0MDQKIG1zZ2lkICJwcmludCA8bj4gbGluZXMgb2YgZWFjaCB0YWcgbWVzc2FnZSIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YLQvtC30Lgg0JHQoNCe0Jkg0YDQtdC00L7QstC1INC+0YIg0LLRgdGP0LrQviDRgdGK0L7QsdGJ0LXQvdC40LUg0LfQsCDQtdGC0LjQutC10YIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzg5CisjOiBidWlsdGluL3RhZy5jOjQwNgogbXNnaWQgImRlbGV0ZSB0YWdzIgogbXNnc3RyICLQuNC30YLRgNC40LLQsNC90LUg0L3QsCDQtdGC0LjQutC10YLQuCIKIAotIzogYnVpbHRpbi90YWcuYzozOTAKKyM6IGJ1aWx0aW4vdGFnLmM6NDA3CiBtc2dpZCAidmVyaWZ5IHRhZ3MiCiBtc2dzdHIgItC/0YDQvtCy0LXRgNC60LAg0L3QsCDQtdGC0LjQutC10YLQuCIKIAotIzogYnVpbHRpbi90YWcuYzozOTIKKyM6IGJ1aWx0aW4vdGFnLmM6NDA5CiBtc2dpZCAiVGFnIGNyZWF0aW9uIG9wdGlvbnMiCiBtc2dzdHIgItCe0L/RhtC40Lgg0L/RgNC4INGB0YrQt9C00LDQstCw0L3QtdGC0L4g0L3QsCDQtdGC0LjQutC10YLQuCIKIAotIzogYnVpbHRpbi90YWcuYzozOTQKKyM6IGJ1aWx0aW4vdGFnLmM6NDExCiBtc2dpZCAiYW5ub3RhdGVkIHRhZywgbmVlZHMgYSBtZXNzYWdlIgogbXNnc3RyICLQsNC90L7RgtC40YDQsNC90LXRgtC+INC90LAg0LXRgtC40LrQtdGC0Lgg0LjQt9C40YHQutCy0LAg0YHRitC+0LHRidC10L3QuNC1IgogCi0jOiBidWlsdGluL3RhZy5jOjM5NgorIzogYnVpbHRpbi90YWcuYzo0MTMKIG1zZ2lkICJ0YWcgbWVzc2FnZSIKIG1zZ3N0ciAi0KHQqtCe0JHQqdCV0J3QmNCVINC30LAg0LXRgtC40LrQtdGCIgogCi0jOiBidWlsdGluL3RhZy5jOjM5OAorIzogYnVpbHRpbi90YWcuYzo0MTUKIG1zZ2lkICJmb3JjZSBlZGl0IG9mIHRhZyBtZXNzYWdlIgogbXNnc3RyICLQv9GA0LjQvdGD0LTQuNGC0LXQu9C90L4g0YDQtdC00LDQutGC0LjRgNCw0L3QtSDQvdCwINGB0YrQvtCx0YnQtdC90LjQtSDQt9CwINC10YLQuNC60LXRgiIKIAotIzogYnVpbHRpbi90YWcuYzozOTkKKyM6IGJ1aWx0aW4vdGFnLmM6NDE2CiBtc2dpZCAiYW5ub3RhdGVkIGFuZCBHUEctc2lnbmVkIHRhZyIKIG1zZ3N0ciAi0LDQvdC+0YLQuNGA0LDQvSDQtdGC0LjQutC10YIg0YEg0L/QvtC00L/QuNGBINC/0L4gR1BHIgogCi0jOiBidWlsdGluL3RhZy5jOjQwMworIzogYnVpbHRpbi90YWcuYzo0MTkKIG1zZ2lkICJ1c2UgYW5vdGhlciBrZXkgdG8gc2lnbiB0aGUgdGFnIgogbXNnc3RyICLQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINC00YDRg9CzINC60LvRjtGHINC30LAg0L/QvtC00L/QuNGB0LLQsNC90LXRgtC+INC90LAg0LXRgtC40LrQtdGCIgogCi0jOiBidWlsdGluL3RhZy5jOjQwNAorIzogYnVpbHRpbi90YWcuYzo0MjAKIG1zZ2lkICJyZXBsYWNlIHRoZSB0YWcgaWYgZXhpc3RzIgogbXNnc3RyICLQt9Cw0LzRj9C90LAg0L3QsCDQtdGC0LjQutC10YLQsCwg0LDQutC+INGB0YrRidC10YHRgtCy0YPQstCwIgogCi0jOiBidWlsdGluL3RhZy5jOjQwNSBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjkKKyM6IGJ1aWx0aW4vdGFnLmM6NDIxIGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2OQogbXNnaWQgImNyZWF0ZSBhIHJlZmxvZyIKIG1zZ3N0ciAi0YHRitC30LTQsNCy0LDQvdC1INC90LAg0LbRg9GA0L3QsNC7INC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSIKIAotIzogYnVpbHRpbi90YWcuYzo0MDcKKyM6IGJ1aWx0aW4vdGFnLmM6NDIzCiBtc2dpZCAiVGFnIGxpc3Rpbmcgb3B0aW9ucyIKIG1zZ3N0ciAi0J7Qv9GG0LjQuCDQt9CwINC40LfQstC10LbQtNCw0L3QtdGC0L4g0L3QsCDQtdGC0LjQutC10YLQuCIKIAotIzogYnVpbHRpbi90YWcuYzo0MDgKKyM6IGJ1aWx0aW4vdGFnLmM6NDI0CiBtc2dpZCAic2hvdyB0YWcgbGlzdCBpbiBjb2x1bW5zIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0L3QsCDRgdC/0LjRgdGK0LrQsCDQvdCwINC10YLQuNC60LXRgtC40YLQtSDQv9C+INC60L7Qu9C+0L3QuCIKIAotIzogYnVpbHRpbi90YWcuYzo0MDkgYnVpbHRpbi90YWcuYzo0MTEKKyM6IGJ1aWx0aW4vdGFnLmM6NDI1IGJ1aWx0aW4vdGFnLmM6NDI3CiBtc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0YHQsNC80L4g0L3QsCDQtdGC0LjQutC10YLQuNGC0LUsINC60L7QuNGC0L4g0YHRitC00YrRgNC20LDRgiDQv9C+0LTQsNCy0LDQvdC10YLQviIKIAotIzogYnVpbHRpbi90YWcuYzo0MTAgYnVpbHRpbi90YWcuYzo0MTIKKyM6IGJ1aWx0aW4vdGFnLmM6NDI2IGJ1aWx0aW4vdGFnLmM6NDI4CiBtc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0YHQsNC80L4g0L3QsCDQtdGC0LjQutC10YLQuNGC0LUsINC60L7QuNGC0L4g0L3QtSDRgdGK0LTRitGA0LbQsNGCINC/0L7QtNCw0LLQsNC90LXRgtC+IgogCi0jOiBidWlsdGluL3RhZy5jOjQxMworIzogYnVpbHRpbi90YWcuYzo0MjkKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBhcmUgbWVyZ2VkIgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0YHQsNC80L4g0L3QsCDRgdC70LXRgtC40YLQtSDQtdGC0LjQutC10YLQuCIKIAotIzogYnVpbHRpbi90YWcuYzo0MTQKKyM6IGJ1aWx0aW4vdGFnLmM6NDMwCiBtc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDRgdCw0LzQviDQvdCwINC90LXRgdC70LXRgtC40YLQtSDQtdGC0LjQutC10YLQuCIKIAotIzogYnVpbHRpbi90YWcuYzo0MTkKKyM6IGJ1aWx0aW4vdGFnLmM6NDM0CiBtc2dpZCAicHJpbnQgb25seSB0YWdzIG9mIHRoZSBvYmplY3QiCiBtc2dzdHIgItC40LfQstC10LbQtNCw0L3QtSDRgdCw0LzQviDQvdCwINC10YLQuNC60LXRgtC40YLQtSDQvdCwINCe0JHQldCa0KLQkCIKIAotIzogYnVpbHRpbi90YWcuYzo0NjMKKyM6IGJ1aWx0aW4vdGFnLmM6NDgyCiBtc2dpZCAiLS1jb2x1bW4gYW5kIC1uIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgItCe0L/RhtC40LjRgtC1IOKAni0tY29sdW1u4oCcINC4IOKAni1u4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgogCi0jOiBidWlsdGluL3RhZy5jOjQ4NQorIzogYnVpbHRpbi90YWcuYzo1MDQKIG1zZ2lkICItbiBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAi0J7Qv9GG0LjRj9GC0LAg4oCeLW7igJwg0LjQt9C40YHQutCy0LAg0YDQtdC20LjQvCDQvdCwINGB0L/QuNGB0YrQui4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDg3CisjOiBidWlsdGluL3RhZy5jOjUwNgogbXNnaWQgIi0tY29udGFpbnMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgItCe0L/RhtC40Y/RgtCwIOKAni1jb250YWluc+KAnCDQuNC30LjRgdC60LLQsCDRgNC10LbQuNC8INC90LAg0YHQv9C40YHRitC6LiIKIAotIzogYnVpbHRpbi90YWcuYzo0ODkKKyM6IGJ1aWx0aW4vdGFnLmM6NTA4CiBtc2dpZCAiLS1uby1jb250YWlucyBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAi0J7Qv9GG0LjRj9GC0LAg4oCeLWNvbnRhaW5z4oCcINC40LfQuNGB0LrQstCwICDRgNC10LbQuNC8INC90LAg0YHQv9C40YHRitC6LiIKIAotIzogYnVpbHRpbi90YWcuYzo0OTEKKyM6IGJ1aWx0aW4vdGFnLmM6NTEwCiBtc2dpZCAiLS1wb2ludHMtYXQgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgItCe0L/RhtC40Y/RgtCwIOKAni1wb2ludHMtYXTigJwg0LjQt9C40YHQutCy0LAg0YDQtdC20LjQvCDQvdCwINGB0L/QuNGB0YrQui4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDkzCisjOiBidWlsdGluL3RhZy5jOjUxMgogbXNnaWQgIi0tbWVyZ2VkIGFuZCAtLW5vLW1lcmdlZCBvcHRpb25zIGFyZSBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICLQntC/0YbQuNC40YLQtSDigJ4tLW1lcmdlZOKAnCDQuCDigJ4tLW5vLW1lcmdlZOKAnCDQuNC30LjRgdC60LLQsNGCINGA0LXQttC40Lwg0L3QsCDRgdC/0LjRgdGK0LouIgogCi0jOiBidWlsdGluL3RhZy5jOjUwNAorIzogYnVpbHRpbi90YWcuYzo1MjMKIG1zZ2lkICJvbmx5IG9uZSAtRiBvciAtbSBvcHRpb24gaXMgYWxsb3dlZC4iCiBtc2dzdHIgItCe0L/RhtC40LjRgtC1IOKAni1G4oCcINC4IOKAni1t4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4LiIKIAotIzogYnVpbHRpbi90YWcuYzo1MjMKKyM6IGJ1aWx0aW4vdGFnLmM6NTQyCiBtc2dpZCAidG9vIG1hbnkgcGFyYW1zIgogbXNnc3RyICLQn9GA0LXQutCw0LvQtdC90L4g0LzQvdC+0LPQviDQsNGA0LPRg9C80LXQvdGC0LgiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTI5CisjOiBidWlsdGluL3RhZy5jOjU0OAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRhZyBuYW1lLiIKIG1zZ3N0ciAi4oCeJXPigJwg0LUg0L3QtdC/0YDQsNCy0LjQu9C90L4g0LjQvNC1INC30LAg0LXRgtC40LrQtdGCLiIKIAotIzogYnVpbHRpbi90YWcuYzo1MzQKKyM6IGJ1aWx0aW4vdGFnLmM6NTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICLQtdGC0LjQutC10YLRitGCIOKAniVz4oCcINCy0LXRh9C1INGB0YrRidC10YHRgtCy0YPQstCwIgogCi0jOiBidWlsdGluL3RhZy5jOjU2NQorIzogYnVpbHRpbi90YWcuYzo1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRlZCB0YWcgJyVzJyAod2FzICVzKVxuIgogbXNnc3RyICLQntCx0L3QvtCy0LXQvSDQtdGC0LjQutC10YIg4oCeJXPigJwgKNCx0LUg4oCeJXPigJwpXG4iCiAKLSM6IGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1MDAKKyM6IGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1MDIKIG1zZ2lkICJVbnBhY2tpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi0KDQsNC30L/QsNC60LXRgtC40YDQsNC90LUg0L3QsCDQvtCx0LXQutGC0LjRgtC1IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjgyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5ICVzIgogbXNnc3RyICLQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGB0YrQt9C00LDQtNC10L3QsCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBmaWxlICVzIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGB0YrQt9C00LDQtNC10L0iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIGZpbGUgJXMiCiBtc2dzdHIgItGE0LDQudC70YrRgiDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LjQt9GC0YDQuNGCIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExMyBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxOQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTUgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSBkaXJlY3RvcnkgJXMiCiBtc2dzdHIgItC00LjRgNC10LrRgtC+0YDQuNGP0YLQsCDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LjQt9GC0YDQuNGC0LAiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTM4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJUZXN0aW5nIG10aW1lIGluICclcycgIgogbXNnc3RyICLQn9GA0L7QstC10YDQutCwINC90LAg0LLRgNC10LzQtdGC0L4g0L3QsCDQv9GA0L7QvNGP0L3QsCAobXRpbWUpINC90LAg0YTQsNC50LvQsCDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNTIKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTU0CiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgYWRkaW5nIGEgbmV3IGZpbGUiCiBtc2dzdHIgIiIKICLQuNC90YTQvtGA0LzQsNGG0LjRj9GC0LAg0L/QvtC70YPRh9C10L3QsCDRh9GA0LXQtyDigJ5zdGF04oCcINC30LAg0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwINC90LUg0YHQtSDQv9GA0L7QvNC10L3RjyDRgdC70LXQtCAiCiAi0LTQvtCx0LDQstGP0L3QtdGC0L4g0L3QsCDQvdC+0LIg0YTQsNC50LsiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTY1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE2NwogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGFkZGluZyBhIG5ldyBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKICLQuNC90YTQvtGA0LzQsNGG0LjRj9GC0LAg0L/QvtC70YPRh9C10L3QsCDRh9GA0LXQtyDigJ5zdGF04oCcINC30LAg0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwINC90LUg0YHQtSDQv9GA0L7QvNC10L3RjyDRgdC70LXQtCAiCiAi0LTQvtCx0LDQstGP0L3QtdGC0L4g0L3QsCDQvdC+0LLQsCDQtNC40YDQtdC60YLQvtGA0LjRjyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNzgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTgwCiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBjaGFuZ2VzIGFmdGVyIHVwZGF0aW5nIGEgZmlsZSIKIG1zZ3N0ciAiIgogItC40L3RhNC+0YDQvNCw0YbQuNGP0YLQsCDQv9C+0LvRg9GH0LXQvdCwINGH0YDQtdC3IOKAnnN0YXTigJwg0LfQsCDQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg0YHQtSDQv9GA0L7QvNC10L3RjyDRgdC70LXQtCAiCiAi0L7QsdC90L7QstGP0LLQsNC90LXRgtC+INC90LAg0L3QvtCyINGE0LDQudC7IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE4OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxOTEKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGNoYW5nZXMgYWZ0ZXIgYWRkaW5nIGEgZmlsZSBpbnNpZGUgc3ViZGlyZWN0b3J5IgogbXNnc3RyICIiCiAi0LjQvdGE0L7RgNC80LDRhtC40Y/RgtCwINC/0L7Qu9GD0YfQtdC90LAg0YfRgNC10Lcg4oCec3RhdOKAnCDQt9CwINC00LjRgNC10LrRgtC+0YDQuNGP0YLQsCDRgdC1INC/0YDQvtC80LXQvdGPINGB0LvQtdC0INC00L7QsdCw0LLRj9C90LXRgtC+ICIKICLQvdCwINGE0LDQudC7INCyINC/0L7QtNC00LjRgNC10LrRgtC+0YDQuNGPIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIwMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMDIKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGZpbGUiCiBtc2dzdHIgIiIKICLQuNC90YTQvtGA0LzQsNGG0LjRj9GC0LAg0L/QvtC70YPRh9C10L3QsCDRh9GA0LXQtyDigJ5zdGF04oCcINC30LAg0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwINC90LUg0YHQtSDQv9GA0L7QvNC10L3RjyDRgdC70LXQtCAiCiAi0LjQt9GC0YDQuNCy0LDQvdC10YLQviDQvdCwINGE0LDQudC7IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxMworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTUKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogItC40L3RhNC+0YDQvNCw0YbQuNGP0YLQsCDQv9C+0LvRg9GH0LXQvdCwINGH0YDQtdC3IOKAnnN0YXTigJwg0LfQsCDQtNC40YDQtdC60YLQvtGA0LjRj9GC0LAg0L3QtSDRgdC1INC/0YDQvtC80LXQvdGPINGB0LvQtdC0ICIKICLQuNC30YLRgNC40LLQsNC90LXRgtC+INC90LAg0LTQuNGA0LXQutGC0L7RgNC40Y8iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMgogbXNnaWQgIiBPSyIKIG1zZ3N0ciAiINCU0L7QsdGA0LUiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6NTg4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjU5MQogbXNnaWQgImdpdCB1cGRhdGUtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKIG1zZ3N0ciAiZ2l0IHVwZGF0ZS1pbmRleCBb0J7Qn9Cm0JjQr+KApl0gWy0tXSBb0KTQkNCZ0JvigKZdIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzQKIG1zZ2lkICJjb250aW51ZSByZWZyZXNoIGV2ZW4gd2hlbiBpbmRleCBuZWVkcyB1cGRhdGUiCiBtc2dzdHIgIiIKICLQv9GA0L7QtNGK0LvQttCw0LLQsNC90LUg0YEg0L7QsdC90L7QstGP0LLQsNC90LXRgtC+LCDQtNC+0YDQuCDQutC+0LPQsNGC0L4g0LjQvdC00LXQutGB0YrRgiDRgtGA0Y/QsdCy0LAg0LTQsCDQsdGK0LTQtSDQvtCx0L3QvtCy0LXQvSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NjQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTc3CiBtc2dpZCAicmVmcmVzaDogaWdub3JlIHN1Ym1vZHVsZXMiCiBtc2dzdHIgItC/0L7QtNC80L7QtNGD0LvQuNGC0LUg0LTQsCDRgdC1INC40LPQvdC+0YDQuNGA0LDRgiDQv9GA0Lgg0L7QsdC90L7QstGP0LLQsNC90LXRgtC+IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODAKIG1zZ2lkICJkbyBub3QgaWdub3JlIG5ldyBmaWxlcyIKIG1zZ3N0ciAi0L3QvtCy0LjRgtC1INGE0LDQudC70L7QstC1INC00LAg0L3QtSDRgdC1INC40LPQvdC+0YDQuNGA0LDRgiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NjkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgyCiBtc2dpZCAibGV0IGZpbGVzIHJlcGxhY2UgZGlyZWN0b3JpZXMgYW5kIHZpY2UtdmVyc2EiCiBtc2dzdHIgItGE0LDQudC70L7QstC1INC00LAg0LzQvtCz0LDRgiDQtNCwINC30LDQvNC10L3Rj9GCINC00LjRgNC10LrRgtC+0YDQuNC4INC4INC+0LHRgNCw0YLQvdC+IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODQKIG1zZ2lkICJub3RpY2UgZmlsZXMgbWlzc2luZyBmcm9tIHdvcmt0cmVlIgogbXNnc3RyICLQv9GA0LXQtNGD0L/RgNC10LbQtNCw0LLQsNC90LUg0L/RgNC4INC70LjQv9GB0LLQsNGJ0Lgg0LIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0YTQsNC50LvQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTczCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NgogbXNnaWQgInJlZnJlc2ggZXZlbiBpZiBpbmRleCBjb250YWlucyB1bm1lcmdlZCBlbnRyaWVzIgogbXNnc3RyICLQvtCx0L3QvtCy0Y/QstCw0L3QtSDQtNC+0YDQuCDQuCDQuNC90LTQtdC60YHRitGCINC00LAg0YHRitC00YrRgNC20LAg0L3QtdGB0LvQtdGC0Lgg0L7QsdC10LrRgtC4IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3NgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODkKIG1zZ2lkICJyZWZyZXNoIHN0YXQgaW5mb3JtYXRpb24iCiBtc2dzdHIgItC+0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y/RgtCwINC+0YIg0YTRg9C90LrRhtC40Y/RgtCwIOKAnnN0YXTigJwiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5MwogbXNnaWQgImxpa2UgLS1yZWZyZXNoLCBidXQgaWdub3JlIGFzc3VtZS11bmNoYW5nZWQgc2V0dGluZyIKIG1zZ3N0ciAiIgogItC60LDRgtC+INC+0L/RhtC40Y/RgtCwIOKAni0tcmVmcmVzaOKAnCwg0L3QviDQtNCwINGB0LUg0L/RgNC+0LLQtdGA0Y/RgiDQuCDQvtCx0LXQutGC0LjRgtC1LCDQutC+0LjRgtC+INGB0LAg0LHQuNC70Lgg0L/RgNC40LXRgtC4ICIKICLQt9CwINC90LXQv9GA0L7QvNC10L3QtdC90LgiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NwogbXNnaWQgIjxtb2RlPiw8b2JqZWN0Piw8cGF0aD4iCiBtc2dzdHIgItCg0JXQltCY0Jws0J7QkdCV0JrQoizQn9Cq0KIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5OAogbXNnaWQgImFkZCB0aGUgc3BlY2lmaWVkIGVudHJ5IHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAi0LTQvtCx0LDQstGP0L3QtSDQvdCwINC40LfQsdGA0L7QtdC90LjRgtC1INC+0LHQtdC60YLQuCDQutGK0Lwg0LjQvdC00LXQutGB0LAiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDgKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIFwibm90IGNoYW5naW5nXCIiCiBtc2dzdHIgItC30LDQtNCw0LLQsNC90LUg0L3QsCDRhNC70LDQsywg0YfQtSDRhNCw0LnQu9GK0YIg0L3QtSDRgdC1INC/0YDQvtC80LXQvdGPIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDExCiBtc2dpZCAiY2xlYXIgYXNzdW1lZC11bmNoYW5nZWQgYml0IgogbXNnc3RyICLQuNC30YfQuNGB0YLQstCw0L3QtSDQvdCwINGE0LvQsNCz0LAsINGH0LUg0YTQsNC50LvRitGCINC90LUg0YHQtSDQv9GA0L7QvNC10L3RjyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTQKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIFwiaW5kZXgtb25seVwiIgogbXNnc3RyICLQt9Cw0LTQsNCy0LDQvdC1INC90LAg0YTQu9Cw0LMsINGH0LUg0YTQsNC50LvQvtCy0LXRgtC1INGB0LAg0YHQsNC80L4g0LfQsCDQuNC90LTQtdC60YHQsCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAzCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTcKIG1zZ2lkICJjbGVhciBza2lwLXdvcmt0cmVlIGJpdCIKLW1zZ3N0ciAi0LjQt9GH0LjRgdGC0LLQsNC90LUg0L3QsCDRhNC70LDQs9CwLCAg0YfQtSDRhNCw0LnQu9C+0LLQtdGC0LUg0YHQsCDRgdCw0LzQviDQt9CwINC40L3QtNC10LrRgdCwIgorbXNnc3RyICLQuNC30YfQuNGB0YLQstCw0L3QtSDQvdCwINGE0LvQsNCz0LAsINGH0LUg0YTQsNC50LvQvtCy0LXRgtC1INGB0LAg0YHQsNC80L4g0LfQsCDQuNC90LTQtdC60YHQsCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjAKK21zZ2lkICJkbyBub3QgdG91Y2ggaW5kZXgtb25seSBlbnRyaWVzIgorbXNnc3RyICLQsdC10Lcg0L/RgNC+0LzRj9C90LAg0L3QsCDRhNCw0LnQu9C+0LLQtdGC0LUg0YHQsNC80L4g0LfQsCDQuNC90LTQtdC60YHQsCIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDIyCiBtc2dpZCAiYWRkIHRvIGluZGV4IG9ubHk7IGRvIG5vdCBhZGQgY29udGVudCB0byBvYmplY3QgZGF0YWJhc2UiCiBtc2dzdHIgItC00L7QsdCw0LLRj9C90LUg0YHQsNC80L4g0LrRitC8INC40L3QtNC10LrRgdCwINCx0LXQtyDQtNC+0LHQsNCy0Y/QvdC1INC60YrQvCDQsdCw0LfQsNGC0LAg0L7RgiDQtNCw0L3QvdC4INC30LAg0L7QsdC10LrRgtC40YLQtSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjQKIG1zZ2lkICJyZW1vdmUgbmFtZWQgcGF0aHMgZXZlbiBpZiBwcmVzZW50IGluIHdvcmt0cmVlIgogbXNnc3RyICLQuNC30YLRgNC40LLQsNC90LUg0L3QsCDRg9C60LDQt9Cw0L3QuNGC0LUg0L/RitGC0LjRidCwLCDQtNC+0YDQuCDQuCDQtNCwINGB0YrRidC10YHRgtCy0YPQstCw0YIg0LIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI2CiBtc2dpZCAid2l0aCAtLXN0ZGluOiBpbnB1dCBsaW5lcyBhcmUgdGVybWluYXRlZCBieSBudWxsIGJ5dGVzIgogbXNnc3RyICIiCiAi0L/RgNC4INC60L7QvNCx0LjQvdC40YDQsNC90LUg0YEg0L7Qv9GG0LjRj9GC0LAg4oCeLS1zdGRpbuKAnCDigJQg0LLRhdC+0LTQvdC40YLQtSDRgNC10LTQvtCy0LUg0YHQsCDRgNCw0LfQtNC10LvQtdC90Lgg0YEg0L3Rg9C70LXQstC40Y8gIgogItCx0LDQudGCIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTIKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyOAogbXNnaWQgInJlYWQgbGlzdCBvZiBwYXRocyB0byBiZSB1cGRhdGVkIGZyb20gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgItC40LfRh9C40YLQsNC90LUg0L3QsCDRgdC/0LjRgdGK0LrQsCDRgSDQv9GK0YLQuNGJ0LAg0LfQsCDQvtCx0L3QvtCy0Y/QstCw0L3QtSDQvtGCINGB0YLQsNC90LTQsNGA0YLQvdC40Y8g0LLRhdC+0LQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDMyCiBtc2dpZCAiYWRkIGVudHJpZXMgZnJvbSBzdGFuZGFyZCBpbnB1dCB0byB0aGUgaW5kZXgiCiBtc2dzdHIgItC00L7QsdCw0LLRj9C90LUg0L3QsCDQtdC70LXQvNC10L3RgtC40YLQtSDQvtGCINGB0YLQsNC90LTQsNGA0YLQvdC40Y8g0LLRhdC+0LQg0LrRitC8INC40L3QtNC10LrRgdCwIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzNgogbXNnaWQgInJlcG9wdWxhdGUgc3RhZ2VzICMyIGFuZCAjMyBmb3IgdGhlIGxpc3RlZCBwYXRocyIKIG1zZ3N0ciAiIgogItCy0YrQt9GB0YLQsNC90L7QstGP0LLQsNC90LUg0L3QsCDRgdGK0YHRgtC+0Y/QvdC40LXRgtC+INC/0YDQtdC00Lgg0YHQu9C40LLQsNC90LUg0LjQu9C4INC90YPQttC00LAg0L7RgiDQvtCx0L3QvtCy0Y/QstCw0L3QtSDQt9CwICIKICLQuNC30LHRgNC+0LXQvdC40YLQtSDQv9GK0YLQuNGJ0LAiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQwCiBtc2dpZCAib25seSB1cGRhdGUgZW50cmllcyB0aGF0IGRpZmZlciBmcm9tIEhFQUQiCiBtc2dzdHIgItC00L7QsdCw0LLRj9C90LUg0YHQsNC80L4g0L3QsCDRgdGK0LTRitGA0LbQsNC90LjQtdGC0L4sINC60L7QtdGC0L4g0YHQtSDRgNCw0LfQu9C40YfQsNCy0LAg0L7RgiDRgtC+0LLQsCDQsiDigJ5IRUFE4oCcIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NAogbXNnaWQgImlnbm9yZSBmaWxlcyBtaXNzaW5nIGZyb20gd29ya3RyZWUiCiBtc2dzdHIgItC40LPQvdC+0YDQuNGA0LDQvdC1INC90LAg0YTQsNC50LvQvtCy0LXRgtC1LCDQutC+0LjRgtC+INC70LjQv9GB0LLQsNGCINCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NwogbXNnaWQgInJlcG9ydCBhY3Rpb25zIHRvIHN0YW5kYXJkIG91dHB1dCIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0LTQtdC50YHRgtCy0LjRj9GC0LAg0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINC40LfRhdC+0LQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzMworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ5CiBtc2dpZCAiKGZvciBwb3JjZWxhaW5zKSBmb3JnZXQgc2F2ZWQgdW5yZXNvbHZlZCBjb25mbGljdHMiCiBtc2dzdHIgIiIKICLQt9Cw0LHRgNCw0LLRj9C90LUg0L3QsCDQt9Cw0L/QuNGB0LDQvdCw0YLQsCDQuNC90YTQvtGA0LzQsNGG0LjRjyDQt9CwINC90LXRgNCw0LfRgNC10YjQtdC90Lgg0LrQvtC90YTQu9C40LrRgtC4IOKAlCDQt9CwINC60L7QvNCw0L3QtNC40YLQtSAiCiAi0L7RgiDQv9C+0YLRgNC10LHQuNGC0LXQu9GB0LrQviDQvdC40LLQviIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDM3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTMKIG1zZ2lkICJ3cml0ZSBpbmRleCBpbiB0aGlzIGZvcm1hdCIKIG1zZ3N0ciAi0LfQsNC/0LjRgdCy0LDQvdC1INC90LAg0LjQvdC00LXQutGB0LAg0LIg0YLQvtC30Lgg0YTQvtGA0LzQsNGCIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1NQogbXNnaWQgImVuYWJsZSBvciBkaXNhYmxlIHNwbGl0IGluZGV4IgogbXNnc3RyICLQstC60LvRjtGH0LLQsNC90LUg0LjQu9C4INC40LfQutC70Y7Rh9Cy0LDQvdC1INC90LAg0YDQsNC30LTQtdC70Y/QvdC10YLQviDQvdCwINC40L3QtNC10LrRgdCwIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1NwogbXNnaWQgImVuYWJsZS9kaXNhYmxlIHVudHJhY2tlZCBjYWNoZSIKIG1zZ3N0ciAi0LLQutC70Y7Rh9Cy0LDQvdC1L9C40LfQutC70Y7Rh9Cy0LDQvdC1INC90LAg0LrQtdGI0LAg0LfQsCDQvdC10YHQu9C10LTQtdC90LjRgtC1INGE0LDQudC70L7QstC1IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1OQogbXNnaWQgInRlc3QgaWYgdGhlIGZpbGVzeXN0ZW0gc3VwcG9ydHMgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICLQv9GA0L7QstC10YDQutCwINC00LDQu9C4INGE0LDQudC70L7QstCw0YLQsCDRgdC40YHRgtC10LzQsCDQv9C+0LTQtNGK0YDQttCwINC60LXRiCDQt9CwINC90LXRgdC70LXQtNC10L3QuCDRhNCw0LnQu9C+0LLQtSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjEKIG1zZ2lkICJlbmFibGUgdW50cmFja2VkIGNhY2hlIHdpdGhvdXQgdGVzdGluZyB0aGUgZmlsZXN5c3RlbSIKIG1zZ3N0ciAiIgogItCy0LrQu9GO0YfQstCw0L3QtSDQvdCwINC60LXRiNCwINC30LAg0L3QtdGB0LvQtdC00LXQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSDQsdC10Lcg0L/RgNC+0LLQtdGA0LrQsCDQvdCwINGE0LDQudC70L7QstCw0YLQsCDRgdC40YHRgtC10LzQsCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjMKIG1zZ2lkICJ3cml0ZSBvdXQgdGhlIGluZGV4IGV2ZW4gaWYgaXMgbm90IGZsYWdnZWQgYXMgY2hhbmdlZCIKIG1zZ3N0ciAi0LfQsNC/0LjRgSDQvdCwINC40L3QtNC10LrRgdCwLCDQtNC+0YDQuCDQtNCwINC90LUg0LUg0L7RgtCx0LXQu9GP0LfQsNC9INC60LDRgtC+INC/0YDQvtC80LXQvdC10L0iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDY1CiBtc2dpZCAiZW5hYmxlIG9yIGRpc2FibGUgZmlsZSBzeXN0ZW0gbW9uaXRvciIKIG1zZ3N0ciAi0LLQutC70Y7Rh9Cy0LDQvdC1INC40LvQuCDQuNC30LrQu9GO0YfQstCw0L3QtSDQvdCwINC90LDQsdC70Y7QtNC10L3QuNC10YLQviDQvdCwINGE0LDQudC70L7QstCw0YLQsCDRgdC40YHRgtC10LzQsCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDUxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjcKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIGZzbW9uaXRvciB2YWxpZCIKIG1zZ3N0ciAi0L7RgtCx0LXQu9GP0LfQstCw0L3QtSDQvdCwINGE0LDQudC70L7QstC10YLQtSwg0YfQtSDQvNC+0LPQsNGCINC00LAg0YHQtSDRgdC70LXQtNGP0YIg0YfRgNC10Lcg0YTQsNC50LvQvtCy0LDRgtCwINGB0LjRgdGC0LXQvNCwIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA3MAogbXNnaWQgImNsZWFyIGZzbW9uaXRvciB2YWxpZCBiaXQiCiBtc2dzdHIgItC40LfRh9C40YHRgtCy0LDQvdC1INC90LAg0YTQu9Cw0LPQsCDQt9CwINGB0LvQtdC00LXQvdC10YLQviDRh9GA0LXQtyDRhNCw0LnQu9C+0LLQsNGC0LAg0YHQuNGB0YLQtdC80LAiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE1MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTczCiBtc2dpZCAiIgogImNvcmUuc3BsaXRJbmRleCBpcyBzZXQgdG8gZmFsc2U7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCB0byAiCiAiZW5hYmxlIHNwbGl0IGluZGV4IgpAQCAtMTg0NTksNyArMjIyMTksNyBAQAogItCd0LDRgdGC0YDQvtC50LrQsNGC0LAg4oCeY29yZS5zcGxpdEluZGV44oCcINC1INC30LDQtNCw0LTQtdC90LAg0L3QsCDigJ5mYWxzZeKAnCAo0LvRitC20LApLiAg0KHQvNC10L3QtdGC0LUg0Y8g0LjQu9C4INGPICIKICLQuNC30YLRgNC40LnRgtC1LCDQt9CwINC00LAg0LLQutC70Y7Rh9C40YLQtSDRgNCw0LfQtNC10LvRj9C90LXRgtC+INC90LAg0LjQvdC00LXQutGB0LAiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE2MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTgyCiBtc2dpZCAiIgogImNvcmUuc3BsaXRJbmRleCBpcyBzZXQgdG8gdHJ1ZTsgcmVtb3ZlIG9yIGNoYW5nZSBpdCwgaWYgeW91IHJlYWxseSB3YW50IHRvICIKICJkaXNhYmxlIHNwbGl0IGluZGV4IgpAQCAtMTg0NjcsNyArMjIyMjcsNyBAQAogItCd0LDRgdGC0YDQvtC50LrQsNGC0LAg4oCeY29yZS5zcGxpdEluZGV44oCcINC1INC30LDQtNCw0LTQtdC90LAg0L3QsCDigJ50cnVl4oCcICjQuNGB0YLQuNC90LApLiAg0KHQvNC10L3QtdGC0LUg0Y8g0LjQu9C4ICIKICLRjyDQuNC30YLRgNC40LnRgtC1LCDQt9CwINC00LAg0LjQt9C60LvRjtGH0LjRgtC1INGA0LDQt9C00LXQu9GP0L3QtdGC0L4g0L3QsCDQuNC90LTQtdC60YHQsC4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTk0CiBtc2dpZCAiIgogImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCiAidG8gZGlzYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgpAQCAtMTg0NzUsMTEgKzIyMjM1LDExIEBACiAi0J3QsNGB0YLRgNC+0LnQutCw0YLQsCDigJ5jb3JlLnVudHJhY2tlZENhY2hl4oCcINC1INC30LDQtNCw0LTQtdC90LAg0L3QsCDigJ50cnVl4oCcICjQuNGB0YLQuNC90LApLiAg0KHQvNC10L3QtdGC0LUg0Y8gIgogItC40LvQuCDRjyDQuNC30YLRgNC40LnRgtC1LCDQt9CwINC00LAg0LjQt9C60LvRjtGH0LjRgtC1INC60LXRiNCwINC30LAg0L3QtdGB0LvQtdC00LXQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTc3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExOTgKIG1zZ2lkICJVbnRyYWNrZWQgY2FjaGUgZGlzYWJsZWQiCiBtc2dzdHIgItCa0LXRiNGK0YIg0LfQsCDQvdC10YHQu9C10LTQtdC90LjRgtC1INGE0LDQudC70L7QstC1INC1INC40LfQutC70Y7Rh9C10L0iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA2CiBtc2dpZCAiIgogImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgIgogInRvIGVuYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgpAQCAtMTg0ODcsMjkgKzIyMjQ3LDI5IEBACiAi0J3QsNGB0YLRgNC+0LnQutCw0YLQsCDigJ5jb3JlLnVudHJhY2tlZENhY2hl4oCcINC1INC30LDQtNCw0LTQtdC90LAg0L3QsCDigJ5mYWxzZeKAnCAo0LvRitC20LApLiAg0KHQvNC10L3QtdGC0LUg0Y8gIgogItC40LvQuCDRjyDQuNC30YLRgNC40LnRgtC1LCDQt9CwINC00LAg0LLQutC70Y7Rh9C40YLQtSDQutC10YjQsCDQt9CwINC90LXRgdC70LXQtNC10L3QuNGC0LUg0YTQsNC50LvQvtCy0LUiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVudHJhY2tlZCBjYWNoZSBlbmFibGVkIGZvciAnJXMnIgogbXNnc3RyICLQmtC10YjRitGCINC30LAg0L3QtdGB0LvQtdC00LXQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSDQtSDQstC60LvRjtGH0LXQvSDQt9CwIOKAniVz4oCcIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExOTcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIxOAogbXNnaWQgImNvcmUuZnNtb25pdG9yIGlzIHVuc2V0OyBzZXQgaXQgaWYgeW91IHJlYWxseSB3YW50IHRvIGVuYWJsZSBmc21vbml0b3IiCiBtc2dzdHIgIiIKICLQndCw0YHRgtGA0L7QudC60LDRgtCwIOKAnmNvcmUuZnNtb25pdG9y4oCcINC90LUg0LUg0LfQsNC00LDQtNC10L3QsC4gINCX0LDQtNCw0LnRgtC1INGPLCDQt9CwINC00LAg0LLQutC70Y7Rh9C40YLQtSAiCiAi0YHQu9C10LTQtdC90LXRgtC+INGH0YDQtdC3INGE0LDQudC70L7QstCw0YLQsCDRgdC40YHRgtC10LzQsC4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwMQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjIyCiBtc2dpZCAiZnNtb25pdG9yIGVuYWJsZWQiCiBtc2dzdHIgItGB0LvQtdC00LXQvdC10YLQviDRh9GA0LXQtyDRhNCw0LnQu9C+0LLQsNGC0LAg0YHQuNGB0YLQtdC80LAg0LUg0LLQutC70Y7Rh9C10L3QviIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMjUKIG1zZ2lkICIiCiAiY29yZS5mc21vbml0b3IgaXMgc2V0OyByZW1vdmUgaXQgaWYgeW91IHJlYWxseSB3YW50IHRvIGRpc2FibGUgZnNtb25pdG9yIgogbXNnc3RyICIiCiAi0J3QsNGB0YLRgNC+0LnQutCw0YLQsCDigJ5jb3JlLmZzbW9uaXRvcuKAnCDQtSDQt9Cw0LTQsNC00LXQvdCwLiAg0JjQt9GC0YDQuNC50YLQtSDRjywg0LfQsCDQtNCwINC40LfQutC70Y7Rh9C40YLQtSAiCiAi0YHQu9C10LTQtdC90LXRgtC+INGH0YDQtdC3INGE0LDQudC70L7QstCw0YLQsCDRgdC40YHRgtC10LzQsC4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwOAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjI5CiBtc2dpZCAiZnNtb25pdG9yIGRpc2FibGVkIgogbXNnc3RyICLRgdC70LXQtNC10L3QtdGC0L4g0YfRgNC10Lcg0YTQsNC50LvQvtCy0LDRgtCwINGB0LjRgdGC0LXQvNCwINC1INC40LfQutC70Y7Rh9C10L3QviIKIApAQCAtMTg1NTUsNiArMjIzMTUsMTAgQEAKIG1zZ2lkICJnaXQgdXBsb2FkLXBhY2sgWzxvcHRpb25zPl0gPGRpcj4iCiBtc2dzdHIgImdpdCB1cGxvYWQtcmVwYWNrIFvQntCf0KbQmNCv4oCmXSDQlNCY0KDQldCa0KLQntCg0JjQryIKIAorIzogYnVpbHRpbi91cGxvYWQtcGFjay5jOjIzIHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzoxNworbXNnaWQgInF1aXQgYWZ0ZXIgYSBzaW5nbGUgcmVxdWVzdC9yZXNwb25zZSBleGNoYW5nZSIKK21zZ3N0ciAi0LjQt9GF0L7QtCDRgdC70LXQtCDQv9GK0YDQstC+0L3QsNGH0LDQu9C90LDRgtCwINGA0LDQt9C80Y/QvdCwINC90LAg0LfQsNGP0LLQutCwINC4INC+0YLQs9C+0LLQvtGAIgorCiAjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjUKIG1zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGluaXRpYWwgcmVmIGFkdmVydGlzZW1lbnQiCiBtc2dzdHIgItC40LfRhdC+0LQg0YHQu9C10LQg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdCw0YLQsCDQvtCx0Y/QstCwINC90LAg0YPQutCw0LfQsNGC0LXQu9C4IgpAQCAtMTg1NjgsMTUgKzIyMzMyLDE1IEBACiBtc2dpZCAiaW50ZXJydXB0IHRyYW5zZmVyIGFmdGVyIDxuPiBzZWNvbmRzIG9mIGluYWN0aXZpdHkiCiBtc2dzdHIgItGC0YDQsNC90YHRhNC10YDRitGCINC00LAg0YHQtSDQv9GA0LXRg9GB0YLQsNC90L7QstC4INGB0LvQtdC0INGC0L7Qt9C4INCR0KDQntCZINGB0LXQutGD0L3QtNC4IgogCi0jOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzoyMAorIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6MTkKIG1zZ2lkICJnaXQgdmVyaWZ5LWNvbW1pdCBbLXYgfCAtLXZlcmJvc2VdIDxjb21taXQ+Li4uIgogbXNnc3RyICJnaXQgdmVyaWZ5LXRhZyBbLXYgfCAtLXZlcmJvc2VdINCf0J7QlNCQ0JLQkNCd0JXigKYiCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjc2CisjOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo2OAogbXNnaWQgInByaW50IGNvbW1pdCBjb250ZW50cyIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHRitC00YrRgNC20LDQvdC40LXRgtC+INC90LAg0L/QvtC00LDQstCw0L3QtdGC0L4iCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjc3IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM4CisjOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo2OSBidWlsdGluL3ZlcmlmeS10YWcuYzozNwogbXNnaWQgInByaW50IHJhdyBncGcgc3RhdHVzIG91dHB1dCIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0L3QtdC+0LHRgNCw0LHQvtGC0LXQvdC40Y8g0LjQt9GF0L7QtCDQvtGCINGB0YrRgdGC0L7Rj9C90LjQtdGC0L4g0L3QsCDigJ5ncGfigJwiCiAKQEAgLTE4NTkyLDExICsyMjM1NiwxMSBAQAogbXNnaWQgInNob3cgc3RhdGlzdGljcyBvbmx5IgogbXNnc3RyICLQuNC30LLQtdC20LTQsNC90LUg0YHQsNC80L4g0L3QsCDRgdGC0LDRgtC40YHRgtC40LrQsNGC0LAiCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjE5CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzoxOAogbXNnaWQgImdpdCB2ZXJpZnktdGFnIFstdiB8IC0tdmVyYm9zZV0gWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnPi4uLiIKIG1zZ3N0ciAiZ2l0IHZlcmlmeS10YWcgWy12IHwgLS12ZXJib3NlXSBbLS1mb3JtYXQ90KTQntCg0JzQkNCiXSDQldCi0JjQmtCV0KLigKYiCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM3CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzozNgogbXNnaWQgInByaW50IHRhZyBjb250ZW50cyIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHRitC00YrRgNC20LDQvdC40LXRgtC+INC90LAg0JXQotCY0JrQldCi0LgiCiAKQEAgLTE4NjI4LDcgKzIyMzkyLDcgQEAKIG1zZ2lkICJnaXQgd29ya3RyZWUgdW5sb2NrIDxwYXRoPiIKIG1zZ3N0ciAiZ2l0IHdvcmt0cmVlIHVubG9jayBb0J/QqtCiXSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjYwIGJ1aWx0aW4vd29ya3RyZWUuYzo4NzEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2MCBidWlsdGluL3dvcmt0cmVlLmM6ODkxCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgJyVzJyIKIG1zZ3N0ciAi0L3QtdGD0YHQv9C10YjQvdC+INC40LfRgtGA0LjQstCw0L3QtSDQvdCwIOKAniVz4oCcIgpAQCAtMTg2ODMsMTIgKzIyNDQ3LDEyIEBACiBtc2dpZCAiJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAi4oCeJXPigJwg0LLQtdGH0LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LAiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlLWFkZCB3b3JrdHJlZSAnJXMnIgogbXNnc3RyICLQtNGK0YDQstC+0YLQviDigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LTQvtCx0LDQstC10L3QviDQvdCw0L3QvtCy0L4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTYKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcycgaXMgYSBtaXNzaW5nIGJ1dCBsb2NrZWQgd29ya3RyZWU7XG4iCkBAIC0xODY5OCw3ICsyMjQ2Miw3IEBACiAi0JfQsCDQuNC30YDQuNGH0L3QviDQt9Cw0LTQsNCy0LDQvdC1INC/0L7Qu9C30LLQsNC50YLQtSDigJ5hZGQgLWbigJwsINCwINC30LAg0LjQt9GH0LjRgdGC0LLQsNC90LUg4oCUIOKAnnBydW5l4oCcINC40LvQuCAiCiAi4oCecmVtb3Zl4oCcIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6MjU4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGlzIGEgbWlzc2luZyBidXQgYWxyZWFkeSByZWdpc3RlcmVkIHdvcmt0cmVlO1xuIgpAQCAtMTg3MDgsMTI1ICsyMjQ3MiwxMjUgQEAKICLQl9CwINC40LfRgNC40YfQvdC+INC30LDQtNCw0LLQsNC90LUg0L/QvtC70LfQstCw0LnRgtC1IOKAnmFkZCAtZuKAnCwg0LAg0LfQsCDQuNC30YfQuNGB0YLQstCw0L3QtSDigJQg4oCecHJ1bmXigJwg0LjQu9C4ICIKICLigJ5yZW1vdmXigJwiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzozMDkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzozMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3Rvcnkgb2YgJyVzJyIKIG1zZ3N0ciAi0LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDRgdGK0LfQtNCw0LTQtdC90LAiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MjggYnVpbHRpbi93b3JrdHJlZS5jOjQzNAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMiBidWlsdGluL3dvcmt0cmVlLmM6NDM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAobmV3IGJyYW5jaCAnJXMnKSIKIG1zZ3N0ciAi0J/RgNC40LPQvtGC0LLRj9C90LUg0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviAo0L3QvtCyINC60LvQvtC9IOKAniVz4oCcKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKHJlc2V0dGluZyBicmFuY2ggJyVzJzsgd2FzIGF0ICVzKSIKIG1zZ3N0ciAiIgogItCf0YDQuNCz0L7RgtCy0Y/QvdC1INC90LAg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4gKNC30LDQvdGD0LvRj9Cy0LDQvdC1INC90LAg0LrQu9C+0L3QsCDigJ4lc+KAnCwg0LrQvtC50YLQviDRgdC+0YfQtdGI0LUg0LrRitC8ICIKICLigJ4lc+KAnCkiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MzkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChjaGVja2luZyBvdXQgJyVzJykiCiBtc2dzdHIgItCf0YDQuNCz0L7RgtCy0Y/QvdC1INC90LAg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4gKNC40LfRgtC10LPQu9GP0L3QtSDQvdCwIOKAniVz4oCcKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKGRldGFjaGVkIEhFQUQgJXMpIgogbXNnc3RyICLQn9C+0LTQs9C+0YLQstGP0L3QtSDQvdCwINGA0LDQsdC+0YLQvdC+INC00YrRgNCy0L4gKNGD0LrQsNC30LDRgtC10LvRj9GCIOKAnkhFQUTigJwg0L3QtSDRgdCy0YrRgNC30LDQvTogJXMpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDg2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDkwCiBtc2dpZCAiY2hlY2tvdXQgPGJyYW5jaD4gZXZlbiBpZiBhbHJlYWR5IGNoZWNrZWQgb3V0IGluIG90aGVyIHdvcmt0cmVlIgogbXNnc3RyICLQmNC30YLQtdCz0LvRj9C90LUg0JrQm9Ce0J3QsCwg0LTQvtGA0Lgg0Lgg0LTQsCDQtSDQuNC30YLQtdCz0LvQtdC9INCyINC00YDRg9Cz0L4g0YDQsNCx0L7RgtC90L4g0LTRitGA0LLQviIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ4OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MwogbXNnaWQgImNyZWF0ZSBhIG5ldyBicmFuY2giCiBtc2dzdHIgItGB0YrQt9C00LDQstCw0L3QtSDQvdCwINC90L7QsiDQutC70L7QvSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NQogbXNnaWQgImNyZWF0ZSBvciByZXNldCBhIGJyYW5jaCIKIG1zZ3N0ciAi0YHRitC30LTQsNCy0LDQvdC1INC40LvQuCDQt9Cw0L3Rg9C70Y/QstCw0L3QtSDQvdCwINC60LvQvtC90LgiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTcKIG1zZ2lkICJwb3B1bGF0ZSB0aGUgbmV3IHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAi0L/QvtC00LPQvtGC0LLRj9C90LUg0L3QsCDQvdC+0LLQvtGC0L4g0YDQsNCx0L7RgtC90L4g0LTRitGA0LLQviIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5OAogbXNnaWQgImtlZXAgdGhlIG5ldyB3b3JraW5nIHRyZWUgbG9ja2VkIgogbXNnc3RyICLQvdC+0LLQvtGC0L4g0YDQsNCx0L7RgtC90L4g0LTRitGA0LLQviDQtNCwINC+0YHRgtCw0L3QtSDQt9Cw0LrQu9GO0YfQtdC90L4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTcKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDEKIG1zZ2lkICJzZXQgdXAgdHJhY2tpbmcgbW9kZSAoc2VlIGdpdC1icmFuY2goMSkpIgogbXNnc3RyICLQt9Cw0LTQsNCy0LDQvdC1INC90LAg0YDQtdC20LjQvNCwINC90LAg0YHQu9C10LTQtdC90LUgKNCy0LjQtiBnaXQtYnJhbmNoKDEpKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwMAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwNAogbXNnaWQgInRyeSB0byBtYXRjaCB0aGUgbmV3IGJyYW5jaCBuYW1lIHdpdGggYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgogbXNnc3RyICLQvtC/0LjRgiDQt9CwINC90LDQv9Cw0YHQstCw0L3QtSDQvdCwINC40LzQtdGC0L4g0L3QsCDQvdC+0LLQuNGPINC60LvQvtC9INGBINGC0L7QstCwINC90LAg0YHQu9C10LTRj9GJINC60LvQvtC9IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NTA4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTEyCiBtc2dpZCAiLWIsIC1CLCBhbmQgLS1kZXRhY2ggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAi0J7Qv9GG0LjQuNGC0LUg4oCeLWLigJwsIOKAni1C4oCcINC4IOKAni0tZGV0YWNo4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4INC10LTQvdCwINGBINC00YDRg9Cz0LAiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1NjkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1NzMKIG1zZ2lkICItLVtuby1ddHJhY2sgY2FuIG9ubHkgYmUgdXNlZCBpZiBhIG5ldyBicmFuY2ggaXMgY3JlYXRlZCIKIG1zZ3N0ciAi4oCeLS1bbm8tXXRyYWNr4oCcINC80L7QttC1INC00LAg0YHQtSDQuNC30L/QvtC70LfQstCwINGB0LDQvNC+INC/0YDQuCDRgdGK0LfQtNCw0LLQsNC90LXRgtC+INC90LAg0L3QvtCyINC60LvQvtC9IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjY5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjczCiBtc2dpZCAicmVhc29uIGZvciBsb2NraW5nIgogbXNnc3RyICLQv9GA0LjRh9C40L3QsCDQt9CwINC30LDQutC70Y7Rh9Cy0LDQvdC1IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjgxIGJ1aWx0aW4vd29ya3RyZWUuYzo3MTQgYnVpbHRpbi93b3JrdHJlZS5jOjc3MgotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg5OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4NSBidWlsdGluL3dvcmt0cmVlLmM6NzE4IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTIKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LUg0YDQsNCx0L7RgtC90L4g0LTRitGA0LLQviIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4MyBidWlsdGluL3dvcmt0cmVlLmM6NzE2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njg3IGJ1aWx0aW4vd29ya3RyZWUuYzo3MjAKIG1zZ2lkICJUaGUgbWFpbiB3b3JraW5nIHRyZWUgY2Fubm90IGJlIGxvY2tlZCBvciB1bmxvY2tlZCIKIG1zZ3N0ciAi0J7RgdC90L7QstC90L7RgtC+INC00YrRgNCy0L4g0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7RgtC60LvRjtGH0Lgg0LjQu9C4INC30LDQutC70Y7Rh9C4IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Njg4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxyZWFkeSBsb2NrZWQsIHJlYXNvbjogJXMiCiBtc2dzdHIgIuKAniVz4oCcINCy0LXRh9C1INC1INC30LDQutC70Y7Rh9C10L3Qviwg0LfQsNGJ0L7RgtC+IOKAniVz4oCcIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjkwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxyZWFkeSBsb2NrZWQiCiBtc2dzdHIgIuKAniVz4oCcINCy0LXRh9C1INC1INC30LDQutC70Y7Rh9C10L3QviIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjcxOAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjcyMgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBsb2NrZWQiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LUg0LfQsNC60LvRjtGH0LXQvdC+IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzQzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzYzCiBtc2dpZCAid29ya2luZyB0cmVlcyBjb250YWluaW5nIHN1Ym1vZHVsZXMgY2Fubm90IGJlIG1vdmVkIG9yIHJlbW92ZWQiCiBtc2dzdHIgIiIKICLQvdC1INC80L7QttC1INC00LAg0LzQtdGB0YLQuNGC0LUg0LjQu9C4INC40LfRgtGA0LjQstCw0YLQtSDRgNCw0LHQvtGC0L3QuCDQtNGK0YDQstC10YLQsCwg0LIg0LrQvtC40YLQviDQuNC80LAg0L/QvtC00LzQvtC00YPQu9C4IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzUxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzcxCiBtc2dpZCAiZm9yY2UgbW92ZSBldmVuIGlmIHdvcmt0cmVlIGlzIGRpcnR5IG9yIGxvY2tlZCIKIG1zZ3N0ciAiIgogItC/0YDQuNC90YPQtNC40YLQtdC70L3QviDQv9GA0LXQvNC10YHRgtCy0LDQvdC1LCDQtNC+0YDQuCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviDQtNCwINC90LUg0LUg0YfQuNGB0YLQviDQuNC70Lgg0LTQsCDQtSAiCiAi0LfQsNC60LvRjtGH0LXQvdC+IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzc0IGJ1aWx0aW4vd29ya3RyZWUuYzo5MDEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTQgYnVpbHRpbi93b3JrdHJlZS5jOjkyMQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGEgbWFpbiB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIuKAniVz4oCcINC1INC+0YHQvdC+0LLQvdC+INGA0LDQsdC+0YLQvdC+INC00YrRgNCy0L4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NzkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGZpZ3VyZSBvdXQgZGVzdGluYXRpb24gbmFtZSBmcm9tICclcyciCiBtc2dzdHIgItC40LzQtdGC0L4g0L3QsCDRhtC10LvRgtCwINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0L/RgNC10LTQtdC70Lgg0L7RgiDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc4NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0YXJnZXQgJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAi0YbQtdC70YLQsCDigJ4lc+KAnCDQstC10YfQtSDRgdGK0YnQtdGB0YLQstGD0LLQsCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5MworIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY2Fubm90IG1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlLCBsb2NrIHJlYXNvbjogJXNcbiIKQEAgLTE4ODM1LDcgKzIyNTk5LDcgQEAKICLQvdC1INC80L7QttC1INC00LAg0L/RgNC10LzQtdGB0YLQuNGC0LUg0LfQsNC60LvRjtGH0LXQvdC+INGA0LDQsdC+0YLQvdC+INC00YrRgNCy0L4sINC/0YDQuNGH0LjQvdCwINC30LAg0LfQsNC60LvRjtGH0LLQsNC90LXRgtC+OiAlc1xuIgogItC40LvQuCDQs9C+INC+0YLQutC70Y7Rh9C10YLQtSwg0LjQu9C4INCz0L4g0L/RgNC10LzQtdGB0YLQtdGC0LUg0L/RgNC40L3Rg9C00LjRgtC10LvQvdC+INGBIOKAnm1vdmUgLWYgLWbigJwiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTUKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTUKIG1zZ2lkICIiCiAiY2Fubm90IG1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlO1xuIgogInVzZSAnbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgpAQCAtMTg4NDMsNDEgKzIyNjA3LDQxIEBACiAi0L3QtSDQvNC+0LbQtSDQtNCwINC/0YDQtdC80LXRgdGC0LjRgtC1INC30LDQutC70Y7Rh9C10L3QviDRgNCw0LHQvtGC0L3QviDQtNGK0YDQstC+OlxuIgogItC40LvQuCDQs9C+INC+0YLQutC70Y7Rh9C10YLQtSwg0LjQu9C4INCz0L4g0L/RgNC10LzQtdGB0YLQtdGC0LUg0L/RgNC40L3Rg9C00LjRgtC10LvQvdC+INGBIOKAnm1vdmUgLWYgLWbigJwiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidmFsaWRhdGlvbiBmYWlsZWQsIGNhbm5vdCBtb3ZlIHdvcmtpbmcgdHJlZTogJXMiCiBtc2dzdHIgIiIKICLQv9GA0L7QstC10YDQutC40YLQtSDRgdCwINC90LXRg9GB0L/QtdGI0L3QuCwg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC/0YDQtdC80LXRgdGC0LXQvdC+OiAlcyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjgwMworIzogYnVpbHRpbi93b3JrdHJlZS5jOjgyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbW92ZSAnJXMnIHRvICclcyciCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0YDQtdC80LXRgdGC0Lgg0LIg4oCeJXPigJwiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAnZ2l0IHN0YXR1cycgb24gJyVzJyIKIG1zZ3N0ciAi0L3QtSDQvNC+0LbQtSDQtNCwINC40LfQv9GK0LvQvdC4IOKAnmdpdCBzdGF0dXPigJwg0LLRitGA0YXRgyDigJ4lc+KAnCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg1NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg3NQogIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGlzIGRpcnR5LCB1c2UgLS1mb3JjZSB0byBkZWxldGUgaXQiCittc2dpZCAiJyVzJyBjb250YWlucyBtb2RpZmllZCBvciB1bnRyYWNrZWQgZmlsZXMsIHVzZSAtLWZvcmNlIHRvIGRlbGV0ZSBpdCIKIG1zZ3N0ciAiIgotItGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IOKAniVz4oCcINC90LUg0LUg0YfQuNGB0YLQviwg0LfQsCDQv9GA0LjQvdGD0LTQuNGC0LXQu9C90L4g0LjQt9GC0YDQuNCy0LDQvdC1INC1INC90LXQvtCx0YXQvtC00LjQvNCwICIKLSLQvtC/0YbQuNGP0YLQsCDigJ4tLWZvcmNl4oCcICIKKyLigJ4lc+KAnCDRgdGK0LTRitGA0LbQsCDQv9GA0L7QvNC10L3QtdC90Lgg0LjQu9C4INC90L7QstC4INGE0LDQudC70L7QstC1LCDQt9CwINC/0YDQuNC90YPQtNC40YLQtdC70L3QviDQuNC30YLRgNC40LLQsNC90LUg0LUgIgorItC90LXQvtCx0YXQvtC00LjQvNCwINC+0L/RhtC40Y/RgtCwIOKAni0tZm9yY2XigJwiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NjAKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAnZ2l0IHN0YXR1cycgb24gJyVzJywgY29kZSAlZCIKIG1zZ3N0ciAiIgogItC60L7QvNCw0L3QtNCw0YLQsCDigJ5naXQgc3RhdHVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC40LfQv9GK0LvQvdC4INC30LAg4oCeJXPigJwsINC60L7QtCDQt9CwINCz0YDQtdGI0LrQsDogJWQiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4ODMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MDMKIG1zZ2lkICJmb3JjZSByZW1vdmFsIGV2ZW4gaWYgd29ya3RyZWUgaXMgZGlydHkgb3IgbG9ja2VkIgogbXNnc3RyICIiCiAi0L/RgNC40L3Rg9C00LjRgtC10LvQvdC+INC40LfRgtGA0LjQstCw0L3QtSwg0LTQvtGA0Lgg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0LTQsCDQvdC1INC1INGH0LjRgdGC0L4g0LjQu9C4INC00LAg0LUg0LfQsNC60LvRjtGH0LXQvdC+IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6OTA2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjYW5ub3QgcmVtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZSwgbG9jayByZWFzb246ICVzXG4iCkBAIC0xODg4Niw3ICsyMjY1MCw3IEBACiAi0L3QtSDQvNC+0LbQtSDQtNCwINC40LfRgtGA0LjQtdGC0LUg0LfQsNC60LvRjtGH0LXQvdC+INGA0LDQsdC+0YLQvdC+INC00YrRgNCy0L4sINC/0YDQuNGH0LjQvdCwINC30LAg0LfQsNC60LvRjtGH0LLQsNC90LXRgtC+OiAlc1xuIgogItC40LvQuCDQs9C+INC+0YLQutC70Y7Rh9C10YLQtSwg0LjQu9C4INCz0L4g0LjQt9GC0YDQuNC50YLQtSDQv9GA0LjQvdGD0LTQuNGC0LXQu9C90L4g0YEg4oCecmVtb3ZlIC1mIC1m4oCcIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6OTA4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTI4CiBtc2dpZCAiIgogImNhbm5vdCByZW1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlO1xuIgogInVzZSAncmVtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCkBAIC0xODg5NCwyOCArMjI2NTgsNDMgQEAKICLQvdC1INC80L7QttC1INC00LAg0LjQt9GC0YDQuNC10YLQtSDQt9Cw0LrQu9GO0YfQtdC90L4g0YDQsNCx0L7RgtC90L4g0LTRitGA0LLQvjpcbiIKICLQuNC70Lgg0LPQviDQvtGC0LrQu9GO0YfQtdGC0LUsINC40LvQuCDQs9C+INC40LfRgtGA0LjQudGC0LUg0L/RgNC40L3Rg9C00LjRgtC10LvQvdC+INGBIOKAnnJlbW92ZSAtZiAtZuKAnCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkxMQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ2YWxpZGF0aW9uIGZhaWxlZCwgY2Fubm90IHJlbW92ZSB3b3JraW5nIHRyZWU6ICVzIgogbXNnc3RyICLQv9GA0L7QstC10YDQutC40YLQtSDRgdCwINC90LXRg9GB0L/QtdGI0L3QuCwg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC40LfRgtGA0LjRgtC+OiAlcyIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MTQKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjE1CiBtc2dpZCAiZ2l0IHdyaXRlLXRyZWUgWy0tbWlzc2luZy1va10gWy0tcHJlZml4PTxwcmVmaXg+L10iCiBtc2dzdHIgImdpdCB3cml0ZS10cmVlIFstLW1pc3Npbmctb2tdIFstLXByZWZpeD3Qn9Cg0JXQpNCY0JrQoS9dIgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyNworIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjgKIG1zZ2lkICI8cHJlZml4Pi8iCiBtc2dzdHIgItCf0KDQldCk0JjQmtChLyIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjgKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI5CiBtc2dpZCAid3JpdGUgdHJlZSBvYmplY3QgZm9yIGEgc3ViZGlyZWN0b3J5IDxwcmVmaXg+IgogbXNnc3RyICLQt9Cw0L/QuNGBINC90LAg0L7QsdC10LrRgi3QtNGK0YDQstC+INC30LAg0L/QvtC00LTQuNGA0LXQutGC0L7RgNC40Y/RgtCwINC30LDQv9C+0YfQstCw0YnQsCDRgSDRgtCw0LfQuCDQn9Cg0JXQpNCY0JrQoSIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MzAKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjMxCiBtc2dpZCAib25seSB1c2VmdWwgZm9yIGRlYnVnZ2luZyIKIG1zZ3N0ciAi0YHQsNC80L4g0LfQsCDQuNC30YfQuNGB0YLQstCw0L3QtSDQvdCwINCz0YDQtdGI0LrQuCIKIAotIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjIyCisjOiBmYXN0LWltcG9ydC5jOjMxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0ZWQgJ21hcmsnIGNvbW1hbmQsIGdvdCAlcyIKK21zZ3N0ciAi0L7Rh9Cw0LrQstCwINGB0LUg0LrQvtC80LDQvdC00LAg4oCebWFya+KAnCwg0LAg0LHQtSDQv9C+0LvRg9GH0LXQvdCwOiDigJ4lc+KAnCIKKworIzogZmFzdC1pbXBvcnQuYzozMTMwCisjLCBjLWZvcm1hdAorbXNnaWQgIkV4cGVjdGVkICd0bycgY29tbWFuZCwgZ290ICVzIgorbXNnc3RyICLQvtGH0LDQutCy0LAg0YHQtSDQutC+0LzQsNC90LTQsCDigJ50b+KAnCwg0LAg0LHQtSDQv9C+0LvRg9GH0LXQvdCwOiDigJ4lc+KAnCIKKworIzogZmFzdC1pbXBvcnQuYzozMjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImZlYXR1cmUgJyVzJyBmb3JiaWRkZW4gaW4gaW5wdXQgd2l0aG91dCAtLWFsbG93LXVuc2FmZS1mZWF0dXJlcyIKK21zZ3N0ciAi4oCeJXPigJwg0LjQt9C40YHQutCy0LAg0LjQt9GA0LjRh9C90L7RgtC+INC30LDQtNCw0LLQsNC90LUg0L3QsCDQvtC/0YbQuNGP0YLQsCDigJ4tLWFsbG93LXVuc2FmZS1mZWF0dXJlc+KAnCIKKworIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgcGVybWlzc2lvbnMgb24geW91ciBzb2NrZXQgZGlyZWN0b3J5IGFyZSB0b28gbG9vc2U7IG90aGVyXG4iCkBAIC0xODkzMCw3ICsyMjcwOSw3IEBACiAiXG4iCiAiICAgIGNobW9kIDA3MDAgJXMiCiAKLSM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjI3MQorIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjcyCiBtc2dpZCAicHJpbnQgZGVidWdnaW5nIG1lc3NhZ2VzIHRvIHN0ZGVyciIKIG1zZ3N0ciAi0LjQt9Cy0LXQttC00LDQvdC1INC90LAg0YHRitC+0LHRidC10L3QuNGP0YLQsCDQt9CwINGC0YDQsNGB0LjRgNCw0L3QtSDQvdCwINGB0YLQsNC90LTQsNGA0YLQvdCw0YLQsCDQs9GA0LXRiNC60LAiCiAKQEAgLTE4OTQzLDYgKzIyNzIyLDE0IEBACiBtc2dpZCAidG9vIG1hbnkgY29tbWl0cyBtYXJrZWQgcmVhY2hhYmxlIgogbXNnc3RyICLQv9GA0LXQutCw0LvQtdC90L4g0LzQvdC+0LPQviDQv9C+0LTQsNCy0LDQvdC40Y8g0YHQsCDQvtGC0LHQtdC70Y/Qt9Cw0L3QuCDQutCw0YLQviDQtNC+0YHRgtC40LbQuNC80LgiCiAKKyM6IHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzo3Cittc2dpZCAidGVzdC10b29sIHNlcnZlLXYyIFs8b3B0aW9ucz5dIgorbXNnc3RyICJ0ZXN0LXRvb2wgc2VydmUtdjIgW9Ce0J/QptCY0K/igKZdIgorCisjOiB0L2hlbHBlci90ZXN0LXNlcnZlLXYyLmM6MTkKK21zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGFkdmVydGlzaW5nIGNhcGFiaWxpdGllcyIKK21zZ3N0ciAi0LjQt9GF0L7QtCDRgdC70LXQtCDQv9GK0YDQstC+0L3QsNGH0LDQu9C90LDRgtCwINC+0LHRj9Cy0LAg0L3QsCDQstGK0LfQvNC+0LbQvdC+0YHRgtC40YLQtSIKKwogIzogZ2l0LmM6MjcKIG1zZ2lkICIiCiAiZ2l0IFstLXZlcnNpb25dIFstLWhlbHBdIFstQyA8cGF0aD5dIFstYyA8bmFtZT49PHZhbHVlPl1cbiIKQEAgLTE4OTYyLDExMSArMjI3NDksMTYwIEBACiBtc2dpZCAiIgogIidnaXQgaGVscCAtYScgYW5kICdnaXQgaGVscCAtZycgbGlzdCBhdmFpbGFibGUgc3ViY29tbWFuZHMgYW5kIHNvbWVcbiIKICJjb25jZXB0IGd1aWRlcy4gU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIG9yICdnaXQgaGVscCA8Y29uY2VwdD4nXG4iCi0idG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC4iCisidG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC5cbiIKKyJTZWUgJ2dpdCBoZWxwIGdpdCcgZm9yIGFuIG92ZXJ2aWV3IG9mIHRoZSBzeXN0ZW0uIgogbXNnc3RyICIiCiAi4oCeZ2l0IGhlbHAgLWHigJwg0LjQt9Cy0LXQttC00LAg0L3QsNC70LjRh9C90LjRgtC1INC/0L7QtNC60L7QvNCw0L3QtNC4LCDQsCDigJ5naXQgaGVscCAtZ+KAnCDQuNC30LLQtdC20LTQsCAiCiAi0L3QsNC70LjRh9C90LjRgtC1XG4iCiAi0LLRitCy0LXQtNC10L3QuNGPLiAg0JfQsCDQv9C+0LzQvtGJINC30LAg0YHQv9C10YbQuNGE0LjRh9C90LAg0JrQntCc0JDQndCU0JAg0L/QvtC70LfQstCw0LnRgtC1IOKAnmdpdCBoZWxwINCa0J7QnNCQ0J3QlNCQ4oCcLCDQsCAiCiAi0LfQsFxuIgotItC90Y/QutC+0LUg0L7Qv9GA0LXQtNC10LvQtdC90L4g0J/QntCd0K/QotCY0JUg0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgaGVscCDQn9Ce0J3Qr9Ci0JjQleKAnC5cbiIKLSJcbiIKLSLQkdGK0LvQs9Cw0YDRgdC60Lgg0L/RgNC10LLQvtC0INC90LAg0LrQvdC40LPQsNGC0LAg4oCeUHJvIEdpdOKAnCDQvtGCINCn0LDQutGK0L0g0Lgg0KHRgtGA0LDRg9CxOlxuIgotImh0dHA6Ly9pLWNhbi5ldS9wcm9naXQyLWJnL3Byb2dpdC5odG1sIgorItC90Y/QutC+0LUg0L7Qv9GA0LXQtNC10LvQtdC90L4g0J/QntCd0K/QotCY0JUg0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgaGVscCDQn9Ce0J3Qr9Ci0JjQleKAnC4gINCX0LAg0L/RgNC10LPQu9C10LQg0L3QsFxuIgorItGB0LjRgdGC0LXQvNCw0YLQsCDQt9CwINC/0L7QvNC+0Ykg0LjQt9C/0L7Qu9C30LLQsNC50YLQtSDigJ5naXQgaGVscCBnaXTigJwuIgogCi0jOiBnaXQuYzoxNzMKKyM6IGdpdC5jOjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBkaXJlY3RvcnkgZ2l2ZW4gZm9yIC0tZ2l0LWRpclxuIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLWdpdC1kaXLigJwg0LjQt9C40YHQutCy0LAg0LTQuNGA0LXQutGC0L7RgNC40Y9cbiIKIAotIzogZ2l0LmM6MTg3CisjOiBnaXQuYzoyMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gbmFtZXNwYWNlIGdpdmVuIGZvciAtLW5hbWVzcGFjZVxuIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLW5hbWVzcGFjZeKAnCDQuNC30LjRgdC60LLQsCDQuNC80LVcbiIKIAotIzogZ2l0LmM6MjAxCisjOiBnaXQuYzoyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtLXdvcmstdHJlZVxuIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tLXdvcmstdHJlZeKAnCDQuNC30LjRgdC60LLQsCDQtNC40YDQtdC60YLQvtGA0LjRj1xuIgogCi0jOiBnaXQuYzoyMTUKKyM6IGdpdC5jOjIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBwcmVmaXggZ2l2ZW4gZm9yIC0tc3VwZXItcHJlZml4XG4iCiBtc2dzdHIgItC+0L/RhtC40Y/RgtCwIOKAni0tc3VwZXItcHJlZml44oCcINC40LfQuNGB0LrQstCwINC/0YDQtdGE0LjQutGBXG4iCiAKLSM6IGdpdC5jOjIzNworIzogZ2l0LmM6MjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIi1jIGV4cGVjdHMgYSBjb25maWd1cmF0aW9uIHN0cmluZ1xuIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tY+KAnCDQuNC30LjRgdC60LLQsCDQvdC40Lcg0LfQsCDQvdCw0YHRgtGA0L7QudC60LBcbiIKIAotIzogZ2l0LmM6Mjc1CisjOiBnaXQuYzoyODgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtQ1xuIgogbXNnc3RyICLQvtC/0YbQuNGP0YLQsCDigJ4tQ+KAnCDQuNC30LjRgdC60LLQsCDQtNC40YDQtdC60YLQvtGA0LjRj1xuIgogCi0jOiBnaXQuYzozMDAKKyM6IGdpdC5jOjMxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG9wdGlvbjogJXNcbiIKIG1zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgtCwINC+0L/RhtC40Y86IOKAniVz4oCcXG4iCiAKLSM6IGdpdC5jOjcxOQorIzogZ2l0LmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIGV4cGFuZGluZyBhbGlhcyAnJXMnOiAnJXMnIgorbXNnc3RyICLQv9GA0Lgg0LfQsNC80LXRgdGC0LLQsNC90LXRgtC+INC90LAg0L/RgdC10LLQtNC+0L3QuNC8IOKAniVz4oCcOiDigJ4lc+KAnCIKKworIzogZ2l0LmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbGlhcyAnJXMnIGNoYW5nZXMgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIllvdSBjYW4gdXNlICchZ2l0JyBpbiB0aGUgYWxpYXMgdG8gZG8gdGhpcyIKK21zZ3N0ciAiIgorItC/0YHQtdCy0LTQvtC90LjQvNGK0YIg4oCeJXPigJwg0L/RgNC+0LzQtdC90Y8g0L/RgNC+0LzQtdC90LvQuNCy0Lgg0L3QsCDRgdGA0LXQtNCw0YLQsC5cbiIKKyLQl9CwINGC0L7QstCwINC80L7QttC1INC00LAg0L/QvtC70LfQstCw0YLQtSDigJ4hZ2l04oCcINCyINC/0YHQtdCy0LTQvtC90LjQvNCwIgorCisjOiBnaXQuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgYWxpYXMgZm9yICVzIgorbXNnc3RyICLQv9GA0LDQt9C10L0g0L/RgdC10LLQtNC+0L3QuNC8INC30LAg4oCeJXPigJwiCisKKyM6IGdpdC5jOjM3OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWN1cnNpdmUgYWxpYXM6ICVzIgorbXNnc3RyICLQt9Cw0YbQuNC60LvQtdC9INC/0YHQtdCy0LTQvtC90LjQvDog4oCeJXPigJwiCisKKyM6IGdpdC5jOjQ1OQorbXNnaWQgIndyaXRlIGZhaWx1cmUgb24gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICLQs9GA0LXRiNC60LAg0L/RgNC4INC30LDQv9C40YEg0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINC40LfRhdC+0LQiCisKKyM6IGdpdC5jOjQ2MQorbXNnaWQgInVua25vd24gd3JpdGUgZmFpbHVyZSBvbiBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgItC90LXQuNC30LLQtdGB0YLQvdCwINCz0YDQtdGI0LrQsCDQv9GA0Lgg0LfQsNC/0LjRgSDQvdCwINGB0YLQsNC90LTQsNGA0YLQvdC40Y8g0LjQt9GF0L7QtCIKKworIzogZ2l0LmM6NDYzCittc2dpZCAiY2xvc2UgZmFpbGVkIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAi0LPRgNC10YjQutCwINC/0YDQuCDQt9Cw0YLQstCw0YDRj9C90LUg0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3QuNGPINC40LfRhdC+0LQiCisKKyM6IGdpdC5jOjc5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhbGlhcyBsb29wIGRldGVjdGVkOiBleHBhbnNpb24gb2YgJyVzJyBkb2VzIG5vdCB0ZXJtaW5hdGU6JXMiCiBtc2dzdHIgItC30LDRhtC40LrQu9GP0L3QtSDQsiDQv9GB0LXQstC00L7QvdC40LzQuNGC0LU6INC30LDQvNC10YHRgtCy0LDQvdC40Y/RgtCwINC90LAg4oCeJXPigJwg0L3QtSDQv9GA0LjQutC70Y7Rh9Cy0LDRgjolcyIKIAotIzogZ2l0LmM6ODAyCisjOiBnaXQuYzo4NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGhhbmRsZSAlcyBhcyBhIGJ1aWx0aW4iCittc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0LHRgNCw0LHQvtGC0Lgg0LrQsNGC0L4g0LLQs9GA0LDQtNC10L3QsCDQutC+0LzQsNC90LTQsCIKKworIzogZ2l0LmM6ODU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1c2FnZTogJXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorItGD0L/QvtGC0YDQtdCx0LA6ICVzXG4iCisiXG4iCisKKyM6IGdpdC5jOjg3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBhbnNpb24gb2YgYWxpYXMgJyVzJyBmYWlsZWQ7ICclcycgaXMgbm90IGEgZ2l0IGNvbW1hbmRcbiIKIG1zZ3N0ciAiIgogItC90LXRg9GB0L/QtdGI0L3QviDQt9Cw0LzQtdGB0YLQstCw0L3QtSDQvdCwINC/0YHQtdCy0LTQvtC90LjQvNCwIOKAniVz4oCcIOKAlCDRgNC10LfRg9C70YLQsNGC0YrRgiDigJ4lc+KAnCDQvdC1INC1INC60L7QvNCw0L3QtNCwINC90LAgIgogImdpdFxuIgogCi0jOiBnaXQuYzo4MTQKKyM6IGdpdC5jOjg4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcnVuIGNvbW1hbmQgJyVzJzogJXNcbiIKIG1zZ3N0ciAi0LrQvtC80LDQvdC00LDRgtCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC40LfQv9GK0LvQvdC4OiAlc1xuIgogCi0jOiBodHRwLmM6Mzc0CisjOiBodHRwLmM6Mzc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5lZ2F0aXZlIHZhbHVlIGZvciBodHRwLnBvc3RidWZmZXI7IGRlZmF1bHRpbmcgdG8gJWQiCiBtc2dzdHIgIiIKICLQvtGC0YDQuNGG0LDRgtC10LvQvdCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCDigJ5odHRwLnBvc3RidWZmZXLigJwuICDQqdC1INGB0LUg0L/QvtC70LfQstCwINGB0YLQsNC90LTQsNGA0YLQvdCw0YLQsDogJWQiCiAKLSM6IGh0dHAuYzozOTUKKyM6IGh0dHAuYzozOTkKIG1zZ2lkICJEZWxlZ2F0aW9uIGNvbnRyb2wgaXMgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjIyLjAiCiBtc2dzdHIgItCj0L/RgNCw0LLQu9C10L3QuNC10YLQviDQvdCwINC00LXQu9C10LPQuNGA0LDQvdC10YLQviDQvdC1INGB0LUg0L/QvtC00LTRitGA0LbQsCDQvtGCIGNVUkwgPCA3LjIyLjAiCiAKLSM6IGh0dHAuYzo0MDQKKyM6IGh0dHAuYzo0MDgKIG1zZ2lkICJQdWJsaWMga2V5IHBpbm5pbmcgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjQ0LjAiCiBtc2dzdHIgItCX0LDQtNCw0LLQsNC90LXRgtC+INC90LAg0L/QvtGB0YLQvtGP0L3QtdC9INC/0YPQsdC70LjRh9C10L0g0LrQu9GO0Ycg0L3QtSDRgdC1INC/0L7QtNC00YrRgNC20LAg0L7RgiBjVVJMIDwgNy40NC4wIgogCi0jOiBodHRwLmM6ODM3CisjOiBodHRwLmM6ODc2CiBtc2dpZCAiQ1VSTFNTTE9QVF9OT19SRVZPS0Ugbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjQ0LjAiCiBtc2dzdHIgIuKAnkNVUkxTU0xPUFRfTk9fUkVWT0tF4oCcINC90LUg0YHQtSDQv9C+0LTQtNGK0YDQttCwINC+0YIgY1VSTCA8IDcuNDQuMCIKIAotIzogaHR0cC5jOjkxMAorIzogaHR0cC5jOjk0OQogbXNnaWQgIlByb3RvY29sIHJlc3RyaWN0aW9ucyBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuMTkuNCIKIG1zZ3N0ciAi0J7Qs9GA0LDQvdC40YfQsNCy0LDQvdC10YLQviDQvdCwINC/0YDQvtGC0L7QutC+0LvQuNGC0LUg0L3QtSDRgdC1INC/0L7QtNC00YrRgNC20LAg0L7RgiBjVVJMIDwgNy40NC4wIgogCi0jOiBodHRwLmM6MTA0NgorIzogaHR0cC5jOjEwODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5zdXBwb3J0ZWQgU1NMIGJhY2tlbmQgJyVzJy4gU3VwcG9ydGVkIFNTTCBiYWNrZW5kczoiCiBtc2dzdHIgItCd0LXQv9C+0LTQtNGK0YDQttCw0L3QsCDRgNC10LDQu9C40LfQsNGG0LjRjyDQvdCwIFNTTCDigJ4lc+KAnC4g0J/QvtC00LTRitGA0LbQsNGCINGB0LU6IgogCi0jOiBodHRwLmM6MTA1MworIzogaHR0cC5jOjEwOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldCBTU0wgYmFja2VuZCB0byAnJXMnOiBjVVJMIHdhcyBidWlsdCB3aXRob3V0IFNTTCBiYWNrZW5kcyIKIG1zZ3N0ciAiIgogItCg0LXQsNC70LjQt9Cw0YbQuNGP0YLQsCDQvdCwIFNTTCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQt9Cw0LTQsNC00LUg0LTQsCDQtSDigJ4lc+KAnDogY1VSTCDQtSDQutC+0LzQv9C40LvQuNGA0LDQvSDQsdC10LcgIgogItC/0L7QtNC00YDRitC20LrQsCDQvdCwIFNTTCIKIAotIzogaHR0cC5jOjEwNTcKKyM6IGh0dHAuYzoxMDk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzZXQgU1NMIGJhY2tlbmQgdG8gJyVzJzogYWxyZWFkeSBzZXQiCiBtc2dzdHIgIiIKICLQoNC10LDQu9C40LfQsNGG0LjRj9GC0LAg0L3QsCBTU0wg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LfQsNC00LDQtNC1INC00LAg0LUg4oCeJXPigJwsINC30LDRidC+0YLQviDQstC10YfQtSDQtSDQt9Cw0LTQsNC00LXQvdCwICIKICLQtNGA0YPQs9CwIgogCi0jOiBodHRwLmM6MTkyMQorIzogaHR0cC5jOjE5NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInVuYWJsZSB0byB1cGRhdGUgdXJsIGJhc2UgZnJvbSByZWRpcmVjdGlvbjpcbiIKQEAgLTE5MDc3LDM5ICsyMjkxMywxODkgQEAKICIgICAg4pePINC30LDRj9Cy0LXQvSDQsNC00YDQtdGBOiAlc1xuIgogIiAgICDil48g0L/RgNC10L3QsNGB0L7Rh9Cy0LDQvdC1OiAlcyIKIAotIzogcmVtb3RlLWN1cmwuYzo0MDEKKyM6IHJlbW90ZS1jdXJsLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcXVvdGluZyBpbiBwdXNoLW9wdGlvbiB2YWx1ZTogJyVzJyIKK21zZ3N0ciAiIgorItC90LXQv9GA0LDQstC40LvQvdC+INC10LrRgNCw0L3QuNGA0LDQvdC1INC40LvQuCDRhtC40YLQuNGA0LDQvdC1INCyINGB0YLQvtC50L3QvtGB0YLRgtCwINC60YrQvCDQvtC/0YbQuNGPINC30LAg0LjQt9GC0LvQsNGB0LrQstCw0L3QtTogIgorIuKAniVz4oCcIgorCisjOiByZW1vdGUtY3VybC5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIlc2luZm8vcmVmcyBub3QgdmFsaWQ6IGlzIHRoaXMgYSBnaXQgcmVwb3NpdG9yeT8iCittc2dzdHIgIuKAniVzaW5mby9yZWZz4oCcINC1INC90LXQuNC30L/QvtC70LfQstCw0LXQvNC+LCDQv9GA0L7QstC10YDQtdGC0LUg0LTQsNC70Lgg0LUg0YXRgNCw0L3QuNC70LjRidC1INC90LAgZ2l0IgorCisjOiByZW1vdGUtY3VybC5jOjM2NAorbXNnaWQgImludmFsaWQgc2VydmVyIHJlc3BvbnNlOyBleHBlY3RlZCBzZXJ2aWNlLCBnb3QgZmx1c2ggcGFja2V0IgorbXNnc3RyICIiCisi0L3QtdC/0YDQsNCy0LjQu9C10L0g0L7RgtCz0L7QstC+0YAg0L7RgiDRgdGK0YDQstGK0YDQsDog0L7Rh9Cw0LrQstCw0YjQtSDRgdC1INGD0YHQu9GD0LPQsCwg0LAg0LHQtSDQv9C+0LvRg9GH0LXQvSDQuNC30YfQuNGB0YLQstCw0YkgIgorItC/0LDQutC10YIg4oCeZmx1c2jigJwiCisKKyM6IHJlbW90ZS1jdXJsLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgc2VydmVyIHJlc3BvbnNlOyBnb3QgJyVzJyIKK21zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C10L0g0L7RgtCz0L7QstC+0YAg0L7RgiDRgdGK0YDQstGK0YDQsCwg0LHQtSDQv9C+0LvRg9GH0LXQvdC+OiDigJ4lc+KAnCIKKworIzogcmVtb3RlLWN1cmwuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVwb3NpdG9yeSAnJXMnIG5vdCBmb3VuZCIKK21zZ3N0ciAi0YXRgNCw0L3QuNC70LjRidC10YLQviDigJ4lc+KAnCDQu9C40L/RgdCy0LAiCisKKyM6IHJlbW90ZS1jdXJsLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW9uIGZhaWxlZCBmb3IgJyVzJyIKK21zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdCwINC40LTQtdC90YLQuNGE0LjQutCw0YbQuNGPINC60YrQvCDigJ4lc+KAnCIKKworIzogcmVtb3RlLWN1cmwuYzo0NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyAnJXMnOiAlcyIKK21zZ3N0ciAi0L3Rj9C80LAg0LTQvtGB0YLRitC/INC00L4g4oCeJXPigJw6ICVzIgorCisjOiByZW1vdGUtY3VybC5jOjQ2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWRpcmVjdGluZyB0byAlcyIKIG1zZ3N0ciAi0L/RgNC10L3QsNGB0L7Rh9Cy0LDQvdC1INC60YrQvCDigJ4lc+KAnCIKIAotIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6NjAKKyM6IHJlbW90ZS1jdXJsLmM6NTkzCittc2dpZCAic2hvdWxkbid0IGhhdmUgRU9GIHdoZW4gbm90IGdlbnRsZSBvbiBFT0YiCittc2dzdHIgItC/0L7Qu9GD0YfQtdC9INC1IEVPRiwg0LIg0YDQtdC20LjQvCDQsdC10Lcg0L/QvtC00LTRgNGK0LbQutCwINC30LAg0YLQvtCy0LAiCisKKyM6IHJlbW90ZS1jdXJsLmM6NjczCittc2dpZCAidW5hYmxlIHRvIHJld2luZCBycGMgcG9zdCBkYXRhIC0gdHJ5IGluY3JlYXNpbmcgaHR0cC5wb3N0QnVmZmVyIgorbXNnc3RyICIiCisi0LTQsNC90L3QuNGC0LUg0LfQsCBQT1NUINC90LUg0LzQvtCz0LDRgiDQtNCwINGB0LUg0L/RgNC+0YfQtdGC0LDRgiDQvdCw0L3QvtCy0L4sINC/0YDQvtCx0LLQsNC50YLQtSDQtNCwINGD0LLQtdC70LjRh9C40YLQtSAiCisi0L3QsNGB0YLRgNC+0LnQutCw0YLQsCDigJ5odHRwLnBvc3RCdWZmZXLigJwiCisKKyM6IHJlbW90ZS1jdXJsLmM6NzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIlJQQyBmYWlsZWQ7ICVzIgorbXNnc3RyICLQndC10YPRgdC/0LXRiNC90L4g0L7RgtC00LDQu9C10YfQtdC90L4g0LjQt9Cy0LjQutCy0LDQvdC1LiAgJXMiCisKKyM6IHJlbW90ZS1jdXJsLmM6NzczCittc2dpZCAiY2Fubm90IGhhbmRsZSBwdXNoZXMgdGhpcyBiaWciCittc2dzdHIgItGC0L7Qu9C60L7QstCwINCz0L7Qu9C10LzQuCDQuNC30YLQu9Cw0YHQutCy0LDQvdC40Y8g0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9C/0YrQu9C90Y/RgiIKKworIzogcmVtb3RlLWN1cmwuYzo4ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRlZmxhdGUgcmVxdWVzdDsgemxpYiBkZWZsYXRlIGVycm9yICVkIgorbXNnc3RyICIiCisi0LfQsNGP0LLQutCw0YLQsCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LTQtdC60L7QvNC/0YDQtdGB0LjRgNCw0L3QsCwg0LPRgNC10YjQutCwINC+0YIg4oCeemxpYuKAnCDQv9GA0LggIgorItC00LXQutC+0LzQv9GA0LXRgdC40YDQsNC90LU6ICVkIgorCisjOiByZW1vdGUtY3VybC5jOjg5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGVuZCBlcnJvciAlZCIKK21zZ3N0ciAiIgorItC30LDRj9Cy0LrQsNGC0LAg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC00LXQutC+0LzQv9GA0LXRgdC40YDQsNC90LA7INCz0YDQtdGI0LrQsCDQvtGCIOKAnnpsaWLigJwg0L/RgNC4INC30LDQstGK0YDRiNCy0LDQvdC1OiAlZDwiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTAyMworbXNnaWQgImR1bWIgaHR0cCB0cmFuc3BvcnQgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IGNhcGFiaWxpdGllcyIKK21zZ3N0ciAi0L7Qv9GA0L7RgdGC0LXQvdC40Y/RgiDRgtGA0LDQvdGB0L/QvtGA0YIg0L/QviBodHRwINC90LUg0L/QvtC00LTRitGA0LbQsCDQv9C70LjRgtC60Lgg0LrQu9C40LXQvdGC0LgiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTAzOAorbXNnaWQgImZldGNoIGZhaWxlZC4iCittc2dzdHIgItC90LXRg9GB0L/QtdGI0L3QviDQtNC+0YHRgtCw0LLRj9C90LUuIgorCisjOiByZW1vdGUtY3VybC5jOjEwODYKK21zZ2lkICJjYW5ub3QgZmV0Y2ggYnkgc2hhMSBvdmVyIHNtYXJ0IGh0dHAiCittc2dzdHIgItGD0LzQvdC40Y/RgiDQstCw0YDQuNCw0L3RgiDQvdCwIGh0dHAg0L3QtSDQvNC+0LbQtSDQtNCwINC00L7RgdGC0LDQstGPINC/0L4gU0hBMSIKKworIzogcmVtb3RlLWN1cmwuYzoxMTMwIHJlbW90ZS1jdXJsLmM6MTEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogZXhwZWN0ZWQgc2hhL3JlZiwgZ290ICclcyciCittc2dzdHIgItC/0YDQvtGC0L7QutC+0LvQvdCwINCz0YDQtdGI0LrQsDog0L7Rh9Cw0LrQstCwINGB0LUgU0hBMSDQuNC70Lgg0YPQutCw0LfQsNGC0LXQuywg0LAg0LHQtSDQv9C+0LvRg9GH0LXQvdC+OiDigJ4lc+KAnCIKKworIzogcmVtb3RlLWN1cmwuYzoxMTQ4IHJlbW90ZS1jdXJsLmM6MTI2MworIywgYy1mb3JtYXQKK21zZ2lkICJodHRwIHRyYW5zcG9ydCBkb2VzIG5vdCBzdXBwb3J0ICVzIgorbXNnc3RyICLRgtGA0LDQvdGB0L/QvtGA0YLRitGCINC/0L4gaHR0cCDQvdC1INC/0L7QtNC00YrRgNC20LAg4oCeJXPigJwiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTE4NAorbXNnaWQgImdpdC1odHRwLXB1c2ggZmFpbGVkIgorbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDigJ5naXQtaHR0cC1wdXNo4oCcIgorCisjOiByZW1vdGUtY3VybC5jOjEzNjkKK21zZ2lkICJyZW1vdGUtY3VybDogdXNhZ2U6IGdpdCByZW1vdGUtY3VybCA8cmVtb3RlPiBbPHVybD5dIgorbXNnc3RyICJyZW1vdGUtY3VybDog0YPQv9C+0YLRgNC10LHQsDogZ2l0IHJlbW90ZS1jdXJsINCl0KDQkNCd0JjQm9CY0KnQlSBb0JDQlNCg0JXQoV0iCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQwMQorbXNnaWQgInJlbW90ZS1jdXJsOiBlcnJvciByZWFkaW5nIGNvbW1hbmQgc3RyZWFtIGZyb20gZ2l0IgorbXNnc3RyICJyZW1vdGUtY3VybDog0LPRgNC10YjQutCwINC/0YDQuCDQuNC30YfQuNGC0LDQvdC10YLQviDQvdCwINC/0L7RgtC+0LrQsCDQutC+0LzQsNC90LTQuCDQvtGCIGdpdCIKKworIzogcmVtb3RlLWN1cmwuYzoxNDA4Cittc2dpZCAicmVtb3RlLWN1cmw6IGZldGNoIGF0dGVtcHRlZCB3aXRob3V0IGEgbG9jYWwgcmVwbyIKK21zZ3N0ciAicmVtb3RlLWN1cmw6INC+0L/QuNGCINC30LAg0LTQvtGB0YLQsNCy0Y/QvdC1INCx0LXQtyDQu9C+0LrQsNC70L3QviDRhdGA0LDQvdC40LvQuNGJ0LUiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdGUtY3VybDogdW5rbm93biBjb21tYW5kICclcycgZnJvbSBnaXQiCittc2dzdHIgInJlbW90ZS1jdXJsOiDQvdC10L/QvtC30L3QsNGC0LAg0LrQvtC80LDQvdC00LAg4oCeJXPigJwg0L7RgiBnaXQiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjg1CiBtc2dpZCAiYXJncyIKIG1zZ3N0ciAi0JDQoNCT0KPQnNCV0J3QotCYIgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo2MQorIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6ODYKIG1zZ2lkICJvYmplY3QgZmlsdGVyaW5nIgogbXNnc3RyICLRhNC40LvRgtGA0LjRgNCw0L3QtSDQv9C+INCy0LjQtCDQvdCwINC+0LHQtdC60YLQsCIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjE1NAorIzogcGFyc2Utb3B0aW9ucy5oOjE4MwogbXNnaWQgImV4cGlyeS1kYXRlIgogbXNnc3RyICLQv9C10YDQuNC+0LQg0L3QsCDQstCw0LvQuNC00L3QvtGB0YIv0LfQsNC/0LDQt9Cy0LDQvdC1IgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MTY5CisjOiBwYXJzZS1vcHRpb25zLmg6MTk3CiBtc2dpZCAibm8tb3AgKGJhY2t3YXJkIGNvbXBhdGliaWxpdHkpIgogbXNnc3RyICLQvdGD0LvQtdCy0LAg0L7Qv9C10YDQsNGG0LjRjyAo0LfQsCDRgdGK0LLQvNC10YHRgtC40LzQvtGB0YIg0YEg0L/RgNC10LTQuNGI0L3QuCDQstC10YDRgdC40LgpIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MjYxCisjOiBwYXJzZS1vcHRpb25zLmg6MzA5CiBtc2dpZCAiYmUgbW9yZSB2ZXJib3NlIgogbXNnc3RyICLQv9C+0LLQtdGH0LUg0L/QvtC00YDQvtCx0L3QvtGB0YLQuCIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjI2MworIzogcGFyc2Utb3B0aW9ucy5oOjMxMQogbXNnaWQgImJlIG1vcmUgcXVpZXQiCiBtc2dzdHIgItC/0L4t0LzQsNC70LrQviDQv9C+0LTRgNC+0LHQvdC+0YHRgtC4IgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MjY5CisjOiBwYXJzZS1vcHRpb25zLmg6MzE3CiBtc2dpZCAidXNlIDxuPiBkaWdpdHMgdG8gZGlzcGxheSBTSEEtMXMiCiBtc2dzdHIgItC00LAg0YHQtSDQv9C+0LrQsNC30LLQsNGCINGC0LDQutGK0LIg0JHQoNCe0Jkg0YbQuNGE0YDQuCDQvtGCINGB0YPQvNC40YLQtSDQv9C+IFNIQTEiCiAKKyM6IHBhcnNlLW9wdGlvbnMuaDozMzYKK21zZ2lkICJob3cgdG8gc3RyaXAgc3BhY2VzIGFuZCAjY29tbWVudHMgZnJvbSBtZXNzYWdlIgorbXNnc3RyICLQutC+0Lgg0L/RgNCw0LfQvdC4INC30L3QsNGG0Lgg0LggI9C60L7QvNC10L3RgtCw0YDQuCDQtNCwINGB0LUg0LzQsNGF0LDRgiDQvtGCINGB0YrQvtCx0YnQtdC90LjRj9GC0LAiCisKKyM6IHBhcnNlLW9wdGlvbnMuaDozMzcKK21zZ2lkICJyZWFkIHBhdGhzcGVjIGZyb20gZmlsZSIKK21zZ3N0ciAi0LjQt9GH0LjRgtCw0L3QtSDQvdCwINC/0YrRgtC40YnQsNGC0LAg0L7RgiDQpNCQ0JnQmyIKKworIzogcGFyc2Utb3B0aW9ucy5oOjMzOAorbXNnaWQgIiIKKyJ3aXRoIC0tcGF0aHNwZWMtZnJvbS1maWxlLCBwYXRoc3BlYyBlbGVtZW50cyBhcmUgc2VwYXJhdGVkIHdpdGggTlVMIGNoYXJhY3RlciIKK21zZ3N0ciAiIgorItC/0YDQuCDQv9C+0LvQt9Cy0LDQvdC10YLQviDQvdCwIOKAni0tcGF0aHNwZWMtZnJvbS1maWxl4oCcLCDQv9GK0YLQuNGJ0LDRgtCwINGB0LAg0YDQsNC30LTQtdC70LXQvdC4INGBINC90YPQu9C10LLQuNGPICIKKyLQt9C90LDQuiDigJ5OVUzigJwiCisKKyM6IHJlZi1maWx0ZXIuaDoxMDEKK21zZ2lkICJrZXkiCittc2dzdHIgItCa0JvQrtCnIgorCisjOiByZWYtZmlsdGVyLmg6MTAxCittc2dpZCAiZmllbGQgbmFtZSB0byBzb3J0IG9uIgorbXNnc3RyICLQuNC80LUg0L3QsCDQv9C+0LvQtdGC0L4sINC/0L4g0LrQvtC10YLQviDQtNCwINC1INC/0L7QtNGA0LXQtNCx0LDRgtCwIgorCisjOiByZXJlcmUuaDo0NAorbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKK21zZ3N0ciAiIgorItC/0YDQuCDQstGK0LfQvNC+0LbQvdC+0YHRgiDQv9GA0LXQuNC30L/QvtC70LfQstCw0L3QtSDQvdCwINGA0LXRiNC10L3QuNC10YLQviDQvdCwINC60L7QvdGE0LvQuNC60YLQsCDQt9CwINC+0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAgIgorItC40L3QtNC10LrRgdCwIgorCisjOiB3dC1zdGF0dXMuaDo2NworbXNnaWQgIkhFQUQgZGV0YWNoZWQgYXQgIgorbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINC90LUg0LUg0YHQstGK0YDQt9Cw0L0g0Lgg0LUg0L/RgNC4ICIKKworIzogd3Qtc3RhdHVzLmg6NjgKK21zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgorbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINC90LUg0LUg0YHQstGK0YDQt9Cw0L0g0Lgg0LUg0L7RgtC00LXQu9C1zIDQvSDQvtGCICIKKwogIzogY29tbWFuZC1saXN0Lmg6NTAKIG1zZ2lkICJBZGQgZmlsZSBjb250ZW50cyB0byB0aGUgaW5kZXgiCiBtc2dzdHIgItCU0L7QsdCw0LLRj9C90LUg0L3QsCDRgdGK0LTRitGA0LbQsNC90LjQtdGC0L4g0L3QsCDRhNCw0LnQu9CwINC60YrQvCDQuNC90LTQtdC60YHQsCIKQEAgLTE5MTIwLDcgKzIzMTA2LDcgQEAKIAogIzogY29tbWFuZC1saXN0Lmg6NTIKIG1zZ2lkICJBbm5vdGF0ZSBmaWxlIGxpbmVzIHdpdGggY29tbWl0IGluZm9ybWF0aW9uIgotbXNnc3RyICLQkNC90L7RgtC40YDQsNC90LUg0L3QsCDRgNC10LTQvtCy0LXRgtC1INC90LAg0YTQsNC50LvQvtCy0LXRgtC1INGBINC40L3RhNC+0YDQvNCw0YbQuNGPINC30LAg0L/QvtC00LDQstCw0L3QuNGP0YLQsCIKK21zZ3N0ciAi0JTQvtCx0LDQstGP0L3QtSDQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGPINC30LAg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQutGK0Lwg0YDQtdC00L7QstC10YLQtSDQvdCwINGE0LDQudC70L7QstC10YLQtSIKIAogIzogY29tbWFuZC1saXN0Lmg6NTMKIG1zZ2lkICJBcHBseSBhIHBhdGNoIHRvIGZpbGVzIGFuZC9vciB0byB0aGUgaW5kZXgiCkBAIC0xOTM3OCw5ICsyMzM2NCw5IEBACiBtc2dzdHIgItCd0LXQt9Cw0LHQsNCy0L3QviDRgNCw0LfQs9C70LXQttC00LDQvdC1INC90LAg0YDQsNCx0L7RgtC90L7RgtC+INCy0Lgg0YXRgNCw0L3QuNC70LjRidC1INGH0YDQtdC3IOKAnmdpdHdlYuKAnCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTEzCi1tc2dpZCAiYWRkIG9yIHBhcnNlIHN0cnVjdHVyZWQgaW5mb3JtYXRpb24gaW4gY29tbWl0IG1lc3NhZ2VzIgorbXNnaWQgIkFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKIG1zZ3N0ciAiIgotItC00L7QsdCw0LLRj9C90LUg0LjQu9C4INC+0LHRgNCw0LHQvtGC0LrQsCDQvdCwINGB0YLRgNGD0LrRgtGD0YDQuNGA0LDQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGPINCyINGB0YrQvtCx0YnQtdC90LjRj9GC0LAg0L/RgNC4INC/0L7QtNCw0LLQsNC90LUiCisi0JTQvtCx0LDQstGP0L3QtSDQuNC70Lgg0L7QsdGA0LDQsdC+0YLQutCwINC90LAg0YHRgtGA0YPQutGC0YPRgNC40YDQsNC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y8g0LIg0YHRitC+0LHRidC10L3QuNGP0YLQsCDQv9GA0Lgg0L/QvtC00LDQstCw0L3QtSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTE0CiBtc2dpZCAiVGhlIEdpdCByZXBvc2l0b3J5IGJyb3dzZXIiCkBAIC0xOTU1MiwyMjQgKzIzNTM4LDIzNCBAQAogbXNnc3RyICLQn9GA0LjQstC10LbQtNCw0L3QtSDQvdCwINGD0LrQsNC30LDRgtC10LvRjyDigJ5IRUFE4oCcINC60YrQvCDQt9Cw0LTQsNC00LXQvdC+0YLQviDRgdGK0YHRgtC+0Y/QvdC40LUiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE1NgorbXNnaWQgIlJlc3RvcmUgd29ya2luZyB0cmVlIGZpbGVzIgorbXNnc3RyICLQktGK0LfRgdGC0LDQvdC+0LLRj9Cy0LDQvdC1INC90LAg0YTQsNC50LvQvtCy0LXRgtC1INCyINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTcKIG1zZ2lkICJSZXZlcnQgc29tZSBleGlzdGluZyBjb21taXRzIgogbXNnc3RyICLQntGC0LzQtdC90Y/QvdC1INC90LAg0YHRitGJ0LXRgdGC0LLRg9Cy0LDRidC4INC/0L7QtNCw0LLQsNC90LjRjyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTU3CisjOiBjb21tYW5kLWxpc3QuaDoxNTgKIG1zZ2lkICJMaXN0cyBjb21taXQgb2JqZWN0cyBpbiByZXZlcnNlIGNocm9ub2xvZ2ljYWwgb3JkZXIiCiBtc2dzdHIgItCY0LfQstC10LbQtNCw0L3QtSDQvdCwINC/0L7QtNCw0LLQsNC90LjRj9GC0LAg0LIg0L7QsdGA0LDRgtC90LAg0YXRgNC+0L3QvtC70L7Qs9C40YfQtdGB0LrQsCDQv9C+0LTRgNC10LTQsdCwIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNTgKKyM6IGNvbW1hbmQtbGlzdC5oOjE1OQogbXNnaWQgIlBpY2sgb3V0IGFuZCBtYXNzYWdlIHBhcmFtZXRlcnMiCiBtc2dzdHIgItCY0LfQsdC+0YAg0Lgg0L/RgNC+0LzRj9C90LAg0L3QsCDQv9Cw0YDQsNC80LXRgtGA0LgiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE1OQorIzogY29tbWFuZC1saXN0Lmg6MTYwCiBtc2dpZCAiUmVtb3ZlIGZpbGVzIGZyb20gdGhlIHdvcmtpbmcgdHJlZSBhbmQgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgItCY0LfRgtGA0LjQstCw0L3QtSDQvdCwINGE0LDQudC70L7QstC1INC+0YIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4g0Lgg0LjQvdC00LXQutGB0LAiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2MAorIzogY29tbWFuZC1saXN0Lmg6MTYxCiBtc2dpZCAiU2VuZCBhIGNvbGxlY3Rpb24gb2YgcGF0Y2hlcyBhcyBlbWFpbHMiCiBtc2dzdHIgItCY0LfQv9GA0LDRidCw0L3QtSDQvdCwINC/0L7RgNC10LTQuNGG0LAg0L7RgiDQutGA0YrQv9C60Lgg0L/QviDQtS3Qv9C+0YnQsCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTYxCisjOiBjb21tYW5kLWxpc3QuaDoxNjIKIG1zZ2lkICJQdXNoIG9iamVjdHMgb3ZlciBHaXQgcHJvdG9jb2wgdG8gYW5vdGhlciByZXBvc2l0b3J5IgogbXNnc3RyICLQmNC30YLQu9Cw0YHQutCy0LDQvdC1INC90LAg0L7QsdC10LrRgtC4INC/0L4g0L/RgNC+0YLQvtC60L7Qu9CwINC90LAgR2l0INC60YrQvCDQtNGA0YPQs9C+INGF0YDQsNC90LjQu9C40YnQtSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTYyCisjOiBjb21tYW5kLWxpc3QuaDoxNjMKIG1zZ2lkICJSZXN0cmljdGVkIGxvZ2luIHNoZWxsIGZvciBHaXQtb25seSBTU0ggYWNjZXNzIgogbXNnc3RyICLQntCz0YDQsNC90LjRh9C10L3QsCDQstGF0L7QtNC90LAg0L7QsdCy0LjQstC60LAg0LfQsCDQtNC+0YHRgtGK0L8g0L/RgNC10LcgU1NIINGB0LDQvNC+INC00L4gR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjMKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NAogbXNnaWQgIlN1bW1hcml6ZSAnZ2l0IGxvZycgb3V0cHV0IgogbXNnc3RyICLQntCx0L7QsdGJ0LXQvSDQuNC30YXQvtC0INC+0YIg4oCeZ2l0IGxvZ+KAnCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTY0CisjOiBjb21tYW5kLWxpc3QuaDoxNjUKIG1zZ2lkICJTaG93IHZhcmlvdXMgdHlwZXMgb2Ygb2JqZWN0cyIKIG1zZ3N0ciAi0JjQt9Cy0LXQttC00LDQvdC1INC90LAg0YDQsNC30LvQuNGH0L3QuNGC0LUg0LLQuNC00L7QstC1INC+0LHQtdC60YLQuCDQsiBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NQorIzogY29tbWFuZC1saXN0Lmg6MTY2CiBtc2dpZCAiU2hvdyBicmFuY2hlcyBhbmQgdGhlaXIgY29tbWl0cyIKIG1zZ3N0ciAi0JjQt9Cy0LXQttC00LDQvdC1INC90LAg0LrQu9C+0L3QuNGC0LUg0Lgg0L/QvtC00LDQstCw0L3QuNGP0YLQsCDQsiDRgtGP0YUiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NgorIzogY29tbWFuZC1saXN0Lmg6MTY3CiBtc2dpZCAiU2hvdyBwYWNrZWQgYXJjaGl2ZSBpbmRleCIKIG1zZ3N0ciAi0JjQt9Cy0LXQttC00LDQvdC1INC90LAg0LjQvdC00LXQutGB0LAg0L3QsCDQv9Cw0LrQtdGC0LjRgNCw0L3QuNGPINCw0YDRhdC40LIiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NworIzogY29tbWFuZC1saXN0Lmg6MTY4CiBtc2dpZCAiTGlzdCByZWZlcmVuY2VzIGluIGEgbG9jYWwgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0JjQt9Cy0LXQttC00LDQvdC1INC90LAg0YPQutCw0LfQsNGC0LXQu9C40YLQtSDQsiDQu9C+0LrQsNC70L3QviDRhdGA0LDQvdC40LvQuNGJ0LUiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2OAorIzogY29tbWFuZC1saXN0Lmg6MTY5CiBtc2dpZCAiR2l0J3MgaTE4biBzZXR1cCBjb2RlIGZvciBzaGVsbCBzY3JpcHRzIgogbXNnc3RyICLQndCw0YHRgtGA0L7QudC60Lgg0L3QsCBHaXQg0LfQsCDQuNC90YLQtdGA0L3QsNGG0LjQvtC90LDQu9C40LfQsNGG0LjRjyDQvdCwINGB0LrRgNC40L/RgtC+0LLQtdGC0LUg0L3QsCDQvtCx0LLQuNCy0LrQsNGC0LAiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2OQorIzogY29tbWFuZC1saXN0Lmg6MTcwCiBtc2dpZCAiQ29tbW9uIEdpdCBzaGVsbCBzY3JpcHQgc2V0dXAgY29kZSIKIG1zZ3N0ciAi0J3QsNGB0YLRgNC+0LnQutC4INC90LAgR2l0INC30LAg0YHQutGA0LjQv9GC0L7QstC10YLQtSDQvdCwINC+0LHQstC40LLQutCw0YLQsCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTcwCisjOiBjb21tYW5kLWxpc3QuaDoxNzEKK21zZ2lkICJJbml0aWFsaXplIGFuZCBtb2RpZnkgdGhlIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAi0JjQvdC40YbQuNCw0LvQuNC30LjRgNCw0L3QtSDQuCDQv9GA0L7QvNGP0L3QsCDQvdCwINGH0LDRgdGC0LjRh9C90L7RgtC+INC40LfRgtC10LPQu9GP0L3QtSIKKworIzogY29tbWFuZC1saXN0Lmg6MTcyCiBtc2dpZCAiU3Rhc2ggdGhlIGNoYW5nZXMgaW4gYSBkaXJ0eSB3b3JraW5nIGRpcmVjdG9yeSBhd2F5IgogbXNnc3RyICLQodC60LDRgtCw0LLQsNC90LUg0L3QsCDQvdC10L/QvtC00LDQtNC10L3QuNGC0LUg0L/RgNC+0LzQtdC90Lgg0LIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3MQorIzogY29tbWFuZC1saXN0Lmg6MTczCiBtc2dpZCAiQWRkIGZpbGUgY29udGVudHMgdG8gdGhlIHN0YWdpbmcgYXJlYSIKIG1zZ3N0ciAi0JTQvtCx0LDQstGP0L3QtSDQvdCwINGB0YrQtNGK0YDQttCw0L3QuNC10YLQviDQvdCwINGE0LDQudC70LAg0LrRitC8INC40L3QtNC10LrRgdCwIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzIKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NAogbXNnaWQgIlNob3cgdGhlIHdvcmtpbmcgdHJlZSBzdGF0dXMiCiBtc2dzdHIgItCY0LfQstC10LbQtNCw0L3QtSDQvdCwINGB0YrRgdGC0L7Rj9C90LjQtdGC0L4g0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKIAotIzogY29tbWFuZC1saXN0Lmg6MTczCisjOiBjb21tYW5kLWxpc3QuaDoxNzUKIG1zZ2lkICJSZW1vdmUgdW5uZWNlc3Nhcnkgd2hpdGVzcGFjZSIKIG1zZ3N0ciAi0J/RgNC10LzQsNGF0LLQsNC90LUg0L3QsCDQuNC30LvQuNGI0L3QuNGC0LUg0LfQvdCw0YbQuCDQt9CwINC40L3RgtC10YDQstCw0LvQuCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc0CisjOiBjb21tYW5kLWxpc3QuaDoxNzYKIG1zZ2lkICJJbml0aWFsaXplLCB1cGRhdGUgb3IgaW5zcGVjdCBzdWJtb2R1bGVzIgogbXNnc3RyICLQmNC90LjRhtC40LDQu9C40LfQuNGA0LDQvdC1LCDQvtCx0L3QvtCy0Y/QstCw0L3QtSDQuNC70Lgg0YDQsNC30LPQu9C10LbQtNCw0L3QtSDQvdCwINC/0L7QtNC80L7QtNGD0LvQuCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc1CisjOiBjb21tYW5kLWxpc3QuaDoxNzcKIG1zZ2lkICJCaWRpcmVjdGlvbmFsIG9wZXJhdGlvbiBiZXR3ZWVuIGEgU3VidmVyc2lvbiByZXBvc2l0b3J5IGFuZCBHaXQiCiBtc2dzdHIgItCU0LLRg9C/0L7RgdC+0YfQvdCwINGA0LDQsdC+0YLQsCDQvNC10LbQtNGDINGF0YDQsNC90LjQu9C40YnQsCDQv9C+0LQgU3VidmVyc2lvbiDQuCBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3NgorIzogY29tbWFuZC1saXN0Lmg6MTc4Cittc2dpZCAiU3dpdGNoIGJyYW5jaGVzIgorbXNnc3RyICLQn9GA0LXQvNC40L3QsNCy0LDQvdC1INC60YrQvCDQtNGA0YPQsyDQutC70L7QvSIKKworIzogY29tbWFuZC1saXN0Lmg6MTc5CiBtc2dpZCAiUmVhZCwgbW9kaWZ5IGFuZCBkZWxldGUgc3ltYm9saWMgcmVmcyIKIG1zZ3N0ciAi0JjQt9Cy0LXQttC00LDQvdC1LCDQv9GA0L7QvNGP0L3QsCDQuCDQuNC30YLRgNC40LLQsNC90LUg0L3QsCDRgdC40LzQstC+0LvQvdC4INGD0LrQsNC30LDRgtC10LvQuCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc3CisjOiBjb21tYW5kLWxpc3QuaDoxODAKIG1zZ2lkICJDcmVhdGUsIGxpc3QsIGRlbGV0ZSBvciB2ZXJpZnkgYSB0YWcgb2JqZWN0IHNpZ25lZCB3aXRoIEdQRyIKIG1zZ3N0ciAi0JjQt9Cy0LXQttC00LDQvdC1LCDRgdGK0LfQtNCw0LLQsNC90LUsINC40LfRgtGA0LjQstCw0L3QtSwg0L/RgNC+0LLQtdGA0LrQsCDQvdCwINC10YLQuNC60LXRgtC4INC/0L7QtNC/0LjRgdCw0L3QuCDRgSBHUEciCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3OAorIzogY29tbWFuZC1saXN0Lmg6MTgxCiBtc2dpZCAiQ3JlYXRlcyBhIHRlbXBvcmFyeSBmaWxlIHdpdGggYSBibG9iJ3MgY29udGVudHMiCiBtc2dzdHIgItCh0YrQt9C00LDQstCw0L3QtSDQvdCwINCy0YDQtdC80LXQvdC10L0g0YTQsNC50Lsg0YHRitGBINGB0YrRidC+0YLQviDRgdGK0LTRitGA0LbQsNC90LjQtSDQutCw0YLQviDQvtCx0LXQutGC0YrRgi1CTE9CIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzkKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MgogbXNnaWQgIlVucGFjayBvYmplY3RzIGZyb20gYSBwYWNrZWQgYXJjaGl2ZSIKIG1zZ3N0ciAi0KDQsNC30L/QsNC60LXRgtC40YDQsNC90LUg0L3QsCDQvtCx0LXQutGC0Lgg0L7RgiDQv9Cw0LrQtdGC0LjRgNCw0L0g0LDRgNGF0LjQsiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTgwCisjOiBjb21tYW5kLWxpc3QuaDoxODMKIG1zZ2lkICJSZWdpc3RlciBmaWxlIGNvbnRlbnRzIGluIHRoZSB3b3JraW5nIHRyZWUgdG8gdGhlIGluZGV4IgogbXNnc3RyICLQoNC10LPQuNGB0YLRgNC40YDQsNC90LUg0L3QsCDRgdGK0LTRitGA0LbQsNC90LjQtdGC0L4g0L3QsCDRhNCw0LnQu9C+0LLQtdGC0LUg0L7RgiDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviDQsiDQuNC90LTQtdC60YHQsCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTgxCisjOiBjb21tYW5kLWxpc3QuaDoxODQKIG1zZ2lkICJVcGRhdGUgdGhlIG9iamVjdCBuYW1lIHN0b3JlZCBpbiBhIHJlZiBzYWZlbHkiCiBtc2dzdHIgItCR0LXQt9C+0L/QsNGB0L3QviDQvtCx0L3QvtCy0Y/QstCw0L3QtSDQvdCwINC40LzQtdGC0L4g0L3QsCDQvtCx0LXQutGCINCyINGD0LrQsNC30LDRgtC10LsiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4MgorIzogY29tbWFuZC1saXN0Lmg6MTg1CiBtc2dpZCAiVXBkYXRlIGF1eGlsaWFyeSBpbmZvIGZpbGUgdG8gaGVscCBkdW1iIHNlcnZlcnMiCiBtc2dzdHIgIiIKICLQntCx0L3QvtCy0Y/QstCw0L3QtSDQvdCwINGE0LDQudC70LAg0YEg0LTQvtC/0YrQu9C90LjRgtC10LvQvdCwINC40L3RhNC+0YDQvNCw0YbQuNGPINCyINC/0L7QvNC+0Ykg0L3QsCDQvtC/0YDQvtGB0YLQtdC90LjRgtC1INGB0YrRgNCy0YrRgNC4IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODMKKyM6IGNvbW1hbmQtbGlzdC5oOjE4NgogbXNnaWQgIlNlbmQgYXJjaGl2ZSBiYWNrIHRvIGdpdC1hcmNoaXZlIgogbXNnc3RyICLQmNC30L/RgNCw0YnQsNC90LUg0L3QsCDQsNGA0YXQuNCy0LAg0L7QsdGA0LDRgtC90L4g0LrRitC8IOKAnmdpdC1hcmNoaXZl4oCcIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODQKKyM6IGNvbW1hbmQtbGlzdC5oOjE4NwogbXNnaWQgIlNlbmQgb2JqZWN0cyBwYWNrZWQgYmFjayB0byBnaXQtZmV0Y2gtcGFjayIKIG1zZ3N0ciAi0JjQt9C/0YDQsNGJ0LDQvdC1INC90LAg0L/QsNC60LXRgtC40YDQsNC90LjRgtC1INC+0LHQtdC60YLQuCDQvtCx0YDQsNGC0L3QviDQutGK0Lwg4oCeZ2l0LWZldGNoLXBhY2vigJwiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4NQorIzogY29tbWFuZC1saXN0Lmg6MTg4CiBtc2dpZCAiU2hvdyBhIEdpdCBsb2dpY2FsIHZhcmlhYmxlIgogbXNnc3RyICLQmNC30LLQtdC20LTQsNC90LUg0L3QsCDQu9C+0LPQuNGH0LXRgdC60LAg0L/RgNC+0LzQtdC90LvQuNCy0LAg0L3QsCBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4NgorIzogY29tbWFuZC1saXN0Lmg6MTg5CiBtc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgY29tbWl0cyIKIG1zZ3N0ciAi0J/RgNC+0LLQtdGA0LrQsCDQvdCwINC/0L7QtNC/0LjRgdC40YLQtSBHUEcg0LLRitGA0YXRgyDQv9C+0LTQsNCy0LDQvdC40Y/RgtCwIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODcKKyM6IGNvbW1hbmQtbGlzdC5oOjE5MAogbXNnaWQgIlZhbGlkYXRlIHBhY2tlZCBHaXQgYXJjaGl2ZSBmaWxlcyIKIG1zZ3N0ciAi0J/RgNC+0LLQtdGA0LrQsCDQvdCwINC/0LDQutC10YLQuNGA0LDQvdC40YLQtSDQsNGA0YXQuNCy0L3QuCDRhNCw0LnQu9C+0LLQtSDQvdCwIEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg4CisjOiBjb21tYW5kLWxpc3QuaDoxOTEKIG1zZ2lkICJDaGVjayB0aGUgR1BHIHNpZ25hdHVyZSBvZiB0YWdzIgogbXNnc3RyICLQn9GA0L7QstC10YDQutCwINC90LAg0L/QvtC00L/QuNGB0LjRgtC1IEdQRyDQstGK0YDRhdGDINC10YLQuNC60LXRgtC40YLQtSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg5CisjOiBjb21tYW5kLWxpc3QuaDoxOTIKIG1zZ2lkICJHaXQgd2ViIGludGVyZmFjZSAod2ViIGZyb250ZW5kIHRvIEdpdCByZXBvc2l0b3JpZXMpIgogbXNnc3RyICLQo9C10LEg0LjQvdGC0LXRgNGE0LXQudGBINC90LAgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTAKKyM6IGNvbW1hbmQtbGlzdC5oOjE5MwogbXNnaWQgIlNob3cgbG9ncyB3aXRoIGRpZmZlcmVuY2UgZWFjaCBjb21taXQgaW50cm9kdWNlcyIKIG1zZ3N0ciAi0JjQt9Cy0LXQttC00LDQvdC1INC90LAg0LbRg9GA0L3QsNC7INGBINGA0LDQt9C70LjQutC40YLQtSwg0LLRitCy0LXQtNC10L3QuCDRgSDQstGB0Y/QutC+INC/0L7QtNCw0LLQsNC90LUiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MQorIzogY29tbWFuZC1saXN0Lmg6MTk0CiBtc2dpZCAiTWFuYWdlIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMiCiBtc2dzdHIgItCj0L/RgNCw0LLQu9C10L3QuNC1INC90LAg0LzQvdC+0LbQtdGB0YLQstC+INGA0LDQsdC+0YLQvdC4INC00YrRgNCy0LXRgtCwIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTIKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NQogbXNnaWQgIkNyZWF0ZSBhIHRyZWUgb2JqZWN0IGZyb20gdGhlIGN1cnJlbnQgaW5kZXgiCiBtc2dzdHIgItCh0YrQt9C00LDQstCw0L3QtSDQvdCwINC+0LHQtdC60YIt0LTRitGA0LLQviDQvtGCINGC0LXQutGD0YnQuNGPINC40L3QtNC10LrRgSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTkzCisjOiBjb21tYW5kLWxpc3QuaDoxOTYKIG1zZ2lkICJEZWZpbmluZyBhdHRyaWJ1dGVzIHBlciBwYXRoIgogbXNnc3RyICLQo9C60LDQt9Cy0LDQvdC1INC90LAg0LDRgtGA0LjQsdGD0YLQuCDQutGK0Lwg0L/RitGCIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTQKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NwogbXNnaWQgIkdpdCBjb21tYW5kLWxpbmUgaW50ZXJmYWNlIGFuZCBjb252ZW50aW9ucyIKIG1zZ3N0ciAi0JrQvtC80LDQvdC00LXQvSDRgNC10LQg0Lgg0LrQvtC90LLQtdC90YbQuNC4INC90LAgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTUKKyM6IGNvbW1hbmQtbGlzdC5oOjE5OAogbXNnaWQgIkEgR2l0IGNvcmUgdHV0b3JpYWwgZm9yIGRldmVsb3BlcnMiCiBtc2dzdHIgItCS0YrQstC10LbQtNCw0Ykg0YPRgNC+0Log0LIgR2l0INC30LAg0YDQsNC30YDQsNCx0L7RgtGH0LjRhtC4IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTYKKyM6IGNvbW1hbmQtbGlzdC5oOjE5OQogbXNnaWQgIkdpdCBmb3IgQ1ZTIHVzZXJzIgogbXNnc3RyICJHaXQg0LfQsCDQv9C+0YLRgNC10LHQuNGC0LXQu9C4INC90LAgQ1ZTIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTcKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMAogbXNnaWQgIlR3ZWFraW5nIGRpZmYgb3V0cHV0IgogbXNnc3RyICLQndCw0YHRgtGA0L7QudCy0LDQvdC1INC90LAg0LjQt9Cz0LvQtdC00LAg0L3QsCDRgNCw0LfQu9C40LrQuNGC0LUiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5OAorIzogY29tbWFuZC1saXN0Lmg6MjAxCiBtc2dpZCAiQSB1c2VmdWwgbWluaW11bSBzZXQgb2YgY29tbWFuZHMgZm9yIEV2ZXJ5ZGF5IEdpdCIKIG1zZ3N0ciAi0J/QvtC70LXQt9C10L0g0LzQuNC90LjQvNCw0LvQtdC9INC90LDQsdC+0YAg0L7RgiDQutC+0LzQsNC90LTQuCDQt9CwINC10LbQtdC00L3QtdCy0L3QsNGC0LAg0YDQsNCx0L7RgtCwINGBIEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk5CisjOiBjb21tYW5kLWxpc3QuaDoyMDIKIG1zZ2lkICJBIEdpdCBHbG9zc2FyeSIKIG1zZ3N0ciAi0KDQtdGH0L3QuNC6INGBINGC0LXRgNC80LjQvdC40YLQtSDQvdCwIEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAwCisjOiBjb21tYW5kLWxpc3QuaDoyMDMKIG1zZ2lkICJIb29rcyB1c2VkIGJ5IEdpdCIKIG1zZ3N0ciAi0JrRg9C60Lgg0L3QsCBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwMQorIzogY29tbWFuZC1saXN0Lmg6MjA0CiBtc2dpZCAiU3BlY2lmaWVzIGludGVudGlvbmFsbHkgdW50cmFja2VkIGZpbGVzIHRvIGlnbm9yZSIKIG1zZ3N0ciAi0KPQutCw0LfQstCw0L3QtSDQvdCwINC90LXRgdC70LXQtNC10L3QuCDRhNCw0LnQu9C+0LLQtSwg0LrQvtC40YLQviDQtNCwINCx0YrQtNCw0YIg0L3QsNGA0L7Rh9C90L4g0L/RgNC10L3QtdCx0YDQtdCz0LLQsNC90LgiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwMgorIzogY29tbWFuZC1saXN0Lmg6MjA1CiBtc2dpZCAiRGVmaW5pbmcgc3VibW9kdWxlIHByb3BlcnRpZXMiCiBtc2dzdHIgItCU0LXRhNC40L3QuNGA0LDQvdC1INC90LAg0YHQstC+0LnRgdGC0LLQsNGC0LAg0L3QsCDQv9C+0LTQvNC+0LTRg9C70LjRgtC1IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDMKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNgogbXNnaWQgIkdpdCBuYW1lc3BhY2VzIgogbXNnc3RyICLQn9GA0L7RgdGC0YDQsNC90YHRgtCy0LAg0L7RgiDQuNC80LXQvdCwINC90LAgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDQKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNwogbXNnaWQgIkdpdCBSZXBvc2l0b3J5IExheW91dCIKIG1zZ3N0ciAi0KPRgdGC0YDQvtC50YHRgtCy0L4g0L3QsCDRhdGA0LDQvdC40LvQuNGJ0LXRgtC+INC90LAgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDUKKyM6IGNvbW1hbmQtbGlzdC5oOjIwOAogbXNnaWQgIlNwZWNpZnlpbmcgcmV2aXNpb25zIGFuZCByYW5nZXMgZm9yIEdpdCIKIG1zZ3N0ciAi0KPQutCw0LfQstCw0L3QtSDQvdCwINCy0LXRgNGB0LjQuCDQuCDQtNC40LDQv9Cw0LfQvtC90Lgg0LIgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDYKKyM6IGNvbW1hbmQtbGlzdC5oOjIwOQorbXNnaWQgIk1vdW50aW5nIG9uZSByZXBvc2l0b3J5IGluc2lkZSBhbm90aGVyIgorbXNnc3RyICLQnNC+0L3RgtC40YDQsNC90LUg0L3QsCDQtdC00L3QviDRhdGA0LDQvdC40LvQuNGJ0LUg0LIg0LTRgNGD0LPQviIKKworIzogY29tbWFuZC1saXN0Lmg6MjEwCiBtc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0OiBwYXJ0IHR3byIKIG1zZ3N0ciAi0JLRitCy0LXQttC00LDRiSDRg9GA0L7QuiDQt9CwIEdpdDog0LLRgtC+0YDQsCDRh9Cw0YHRgiIKIAotIzogY29tbWFuZC1saXN0Lmg6MjA3CisjOiBjb21tYW5kLWxpc3QuaDoyMTEKIG1zZ2lkICJBIHR1dG9yaWFsIGludHJvZHVjdGlvbiB0byBHaXQiCiBtc2dzdHIgItCS0YrQstC10LbQtNCw0Ykg0YPRgNC+0Log0LfQsCBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwOAorIzogY29tbWFuZC1saXN0Lmg6MjEyCiBtc2dpZCAiQW4gb3ZlcnZpZXcgb2YgcmVjb21tZW5kZWQgd29ya2Zsb3dzIHdpdGggR2l0IgogbXNnc3RyICLQntCx0Ykg0L/RgNC10LPQu9C10LQg0L3QsCDQv9GA0LXQv9C+0YDRitGH0LLQsNC90LjRgtC1INC90LDRh9C40L3QuCDQt9CwINGA0LDQsdC+0YLQsCDRgSBHaXQiCiAKLSM6IHJlcmVyZS5oOjQ0Ci1tc2dpZCAidXBkYXRlIHRoZSBpbmRleCB3aXRoIHJldXNlZCBjb25mbGljdCByZXNvbHV0aW9uIGlmIHBvc3NpYmxlIgotbXNnc3RyICIiCi0i0L/RgNC4INCy0YrQt9C80L7QttC90L7RgdGCINC/0YDQtdC40LfQv9C+0LvQt9Cy0LDQvdC1INC90LAg0YDQtdGI0LXQvdC40LXRgtC+INC90LAg0LrQvtC90YTQu9C40LrRgtCwINC30LAg0L7QsdC90L7QstGP0LLQsNC90LUg0L3QsCAiCi0i0LjQvdC00LXQutGB0LAiCi0KICM6IGdpdC1iaXNlY3Quc2g6NTQKIG1zZ2lkICJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIiIKIG1zZ3N0ciAi0JfQsNC/0L7Rh9C90LXRgtC1INC60LDRgtC+INC40LfQv9GK0LvQvdC40YLQtSDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0IGJpc2VjdCBzdGFydOKAnCIKQEAgLTE5NzgxLDE0MiArMjM3NzcsNTIgQEAKIG1zZ2lkICJEbyB5b3Ugd2FudCBtZSB0byBkbyBpdCBmb3IgeW91IFtZL25dPyAiCiBtc2dzdHIgItCU0LAg0YHQtSDQuNC30LLRitGA0YjQuCDQu9C4INCw0LLRgtC+0LzQsNGC0LjRh9C90L4/IOKAnlnigJwg4oCUICDQlNCQLCDigJ5u4oCcIOKAlCDQvdC1IgogCi0jOiBnaXQtYmlzZWN0LnNoOjEyMQotIywgc2gtZm9ybWF0Ci1tc2dpZCAidW5yZWNvZ25pc2VkIG9wdGlvbjogJyRhcmcnIgotbXNnc3RyICLQvdC10L/QvtC30L3QsNGC0LAg0L7Qv9GG0LjRjyDigJ4ke2FyZ33igJwiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTI1Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICInJGFyZycgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGEgdmFsaWQgcmV2aXNpb24iCi1tc2dzdHIgIuKAniRhcmfigJwg0L3QtSDQuNC30LPQu9C10LbQtNCwINC60LDRgtC+INGD0LrQsNC30LDRgtC10Lsg0LrRitC8INCy0LXRgNGB0LjRjyIKLQotIzogZ2l0LWJpc2VjdC5zaDoxNTQKLW1zZ2lkICJCYWQgSEVBRCAtIEkgbmVlZCBhIEhFQUQiCi1tc2dzdHIgItCi0LXQutGD0YnQuNGP0YIg0YPQutCw0LfQsNGC0LXQuyDigJ5IRUFE4oCcINC1INC90LXQv9GA0LDQstC40LvQtdC9LiIKLQotIzogZ2l0LWJpc2VjdC5zaDoxNjcKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJDaGVja2luZyBvdXQgJyRzdGFydF9oZWFkJyBmYWlsZWQuIFRyeSAnZ2l0IGJpc2VjdCByZXNldCA8dmFsaWQtYnJhbmNoPicuIgotbXNnc3RyICIiCi0i0J3QtdGD0YHQv9C10YjQvdC+INC/0YDQtdC80LjQvdCw0LLQsNC90LUg0LrRitC8IOKAniR7c3RhcnRfaGVhZH3igJwuICDQmNC30L/RitC70L3QtdGC0LUg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCBiaXNlY3QgIgotInJlc2V0INCh0KrQqdCV0KHQotCS0KPQktCQ0Klf0JrQm9Ce0J3igJwuIgotCi0jOiBnaXQtYmlzZWN0LnNoOjE3NwotbXNnaWQgIndvbid0IGJpc2VjdCBvbiBjZy1zZWVrJ2VkIHRyZWUiCi1tc2dzdHIgIiIKLSLQvdC1INC80L7QttC1INC00LAg0YHQtSDRgtGK0YDRgdC4INC00LLQvtC40YfQvdC+LCDQutC+0LPQsNGC0L4g0LUg0LjQt9C/0YrQu9C90LXQvdCwINC60L7QvNCw0L3QtNCw0YLQsCDigJ5jZy1zZWVr4oCcINC+0YIgIgotIuKAnmNvZ2l0b+KAnCIKLQotIzogZ2l0LWJpc2VjdC5zaDoxODEKLW1zZ2lkICJCYWQgSEVBRCAtIHN0cmFuZ2Ugc3ltYm9saWMgcmVmIgotbXNnc3RyICLQndC10L/RgNCw0LLQuNC70LXQvSDRg9C60LDQt9Cw0YLQtdC7IOKAnkhFQUTigJwiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MjMzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiAkc3RhdGUiCi1tc2dzdHIgItCd0LXQv9GA0LDQstC40LvQtdC9INCw0YDQs9GD0LzQtdC90YIg0L3QsCDRhNGD0L3QutGG0LjRj9GC0LAg4oCeYmlzZWN0X3dyaXRl4oCcOiDigJ4ke3N0YXRlfeKAnCIKLQotIzogZ2l0LWJpc2VjdC5zaDoyNDYKKyM6IGdpdC1iaXNlY3Quc2g6MTAxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJCYWQgcmV2IGlucHV0OiAkYXJnIgogbXNnc3RyICLQndC10L/RgNCw0LLQuNC70L3QsCDQstC10YDRgdC40Y86IOKAniR7YXJnfeKAnCIKIAotIzogZ2l0LWJpc2VjdC5zaDoyNjUKKyM6IGdpdC1iaXNlY3Quc2g6MTIxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJCYWQgcmV2IGlucHV0OiAkYmlzZWN0ZWRfaGVhZCIKIG1zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9C90LAg0LLQtdGA0YHQuNGPOiDigJ4kYmlzZWN0ZWRfaGVhZOKAnCIKIAotIzogZ2l0LWJpc2VjdC5zaDoyNzQKKyM6IGdpdC1iaXNlY3Quc2g6MTMwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJCYWQgcmV2IGlucHV0OiAkcmV2IgogbXNnc3RyICLQndC10L/RgNCw0LLQuNC70L3QsCDQstC10YDRgdC40Y86IOKAniR7cmV2feKAnCIKIAotIzogZ2l0LWJpc2VjdC5zaDoyODMKKyM6IGdpdC1iaXNlY3Quc2g6MTM5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInZ2l0IGJpc2VjdCAkVEVSTV9CQUQnIGNhbiB0YWtlIG9ubHkgb25lIGFyZ3VtZW50LiIKIG1zZ3N0ciAi0JrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCBiaXNlY3QgJHtURVJNX0JBRH3igJwg0L/RgNC40LXQvNCwINGB0LDQvNC+INC10LTQuNC9INCw0YDQs9GD0LzQtdC90YIuIgogCi0jOiBnaXQtYmlzZWN0LnNoOjMwNgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiV2FybmluZzogYmlzZWN0aW5nIG9ubHkgd2l0aCBhICRURVJNX0JBRCBjb21taXQuIgotbXNnc3RyICLQn9Cg0JXQlNCj0J/QoNCV0JbQlNCV0J3QmNCVOiDQtNCy0L7QuNGH0L3QviDRgtGK0YDRgdC10L3QtSDRgdCw0LzQviDQv9C+ICR7VEVSTV9CQUR9INC/0L7QtNCw0LLQsNC90LUuIgotCi0jLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW1ldIGFuZCBbbl0gaW4geW91cgotIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAotIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1iaXNlY3Quc2g6MzEyCi1tc2dpZCAiQXJlIHlvdSBzdXJlIFtZL25dPyAiCi1tc2dzdHIgItCU0LAg0YHQtSDQv9GA0L7QtNGK0LvQttC4INC70Lg/IOKAnlnigJwg4oCUICDQlNCQLCDigJ5u4oCcIOKAlCDQvdC1IgotCi0jOiBnaXQtYmlzZWN0LnNoOjMyNAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICRiYWRfc3luIGFuZCBvbmUgJGdvb2Rfc3luIHJldmlzaW9uLlxuIgotIihZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJGJhZF9zeW5cIiBhbmQgXCJnaXQgYmlzZWN0ICRnb29kX3N5blwiIGZvciB0aGF0LikiCi1tc2dzdHIgIiIKLSLQotGA0Y/QsdCy0LAg0LTQsCDQt9Cw0LTQsNC00LXRgtC1INC/0L7QvdC1INC10LTQvdCwICR7YmFkX3N5bn0g0Lgg0LXQtNC90LAgJHtnb29kX3N5bn0g0LLQtdGA0YHQuNGPLiAgKNCi0L7QstCwICIKLSLQvNC+0LbQtSDQtNCwINGB0LVcbiIKLSLQvdCw0L/RgNCw0LLQuCDRgdGK0L7RgtCy0LXRgtC90L4g0Lgg0YfRgNC10Lcg0LrQvtC80LDQvdC00LjRgtC1IOKAnmdpdCBiaXNlY3QgJHtiYWRfc3lufeKAnCDQuCDigJ5naXQgYmlzZWN0ICIKLSIke2dvb2Rfc3lufeKAnC4pIgotCi0jOiBnaXQtYmlzZWN0LnNoOjMyNwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgotIllvdSB0aGVuIG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJGdvb2Rfc3luIGFuZCBvbmUgJGJhZF9zeW4gcmV2aXNpb24uXG4iCi0iKFlvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGFuZCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgZm9yIHRoYXQuKSIKLW1zZ3N0ciAiIgotItCi0YDRj9Cx0LLQsCDQtNCwINC30LDQv9C+0YfQvdC10YLQtSDQtNCy0L7QuNGH0L3QvtGC0L4g0YLRitGA0YHQtdC90LUg0YfRgNC10Lcg0LrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCBiaXNlY3Qgc3RhcnTigJwuXG4iCi0i0YLRgNGP0LHQstCwINC00LAg0LfQsNC00LDQtNC10YLQtSDQv9C+0L3QtSDQtdC00L3QsCDQtNC+0LHRgNCwINC4INC10LTQvdCwINC70L7RiNCwINCy0LXRgNGB0LjRjy4gICjQotC+0LLQsCDQvNC+0LbQtSDQtNCwINGB0LVcbiIKLSLQvdCw0L/RgNCw0LLQuCDRgdGK0L7RgtCy0LXRgtC90L4g0Lgg0YfRgNC10Lcg0LrQvtC80LDQvdC00LjRgtC1IOKAnmdpdCBiaXNlY3QgJHtiYWRfc3lufeKAnCDQuCDigJ5naXQgYmlzZWN0ICIKLSIke2dvb2Rfc3lufeKAnC4pIgotCi0jOiBnaXQtYmlzZWN0LnNoOjM5OCBnaXQtYmlzZWN0LnNoOjUxMgotbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLiIKLW1zZ3N0ciAi0JIg0LzQvtC80LXQvdGC0LAg0L3QtSDRgdC1INC40LfQstGK0YDRiNCy0LAg0LTQstC+0LjRh9C90L4g0YLRitGA0YHQtdC90LUuIgotCi0jOiBnaXQtYmlzZWN0LnNoOjQwNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJyRpbnZhbGlkJyBpcyBub3QgYSB2YWxpZCBjb21taXQiCi1tc2dzdHIgIuKAniR7aW52YWxpZH3igJwg0LUg0L3QtdC/0YDQsNCy0LjQu9C90L4g0L/QvtC00LDQstCw0L3QtSIKLQotIzogZ2l0LWJpc2VjdC5zaDo0MTQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJDb3VsZCBub3QgY2hlY2sgb3V0IG9yaWdpbmFsIEhFQUQgJyRicmFuY2gnLlxuIgotIlRyeSAnZ2l0IGJpc2VjdCByZXNldCA8Y29tbWl0PicuIgotbXNnc3RyICIiCi0i0J/RitGA0LLQvtC90LDRh9Cw0LvQvdC+INGD0LrQsNC30LDQvdC40Y/RgiDQutC70L7QvSDigJ4ke2JyYW5jaH3igJwg0LIg0YPQutCw0LfQsNGC0LXQu9GPIOKAnkhFQUTigJwg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1XG4iCi0i0LjQt9GC0LXQs9C70LXQvS4gINCf0YDQvtCx0LLQsNC50YLQtSDQtNCwINC40LfQv9GK0LvQvdC40YLQtSDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0IGJpc2VjdCByZXNldCDQn9Ce0JTQkNCS0JDQndCV4oCcLiIKLQotIzogZ2l0LWJpc2VjdC5zaDo0MjIKKyM6IGdpdC1iaXNlY3Quc2g6MjA5CiBtc2dpZCAiTm8gbG9nZmlsZSBnaXZlbiIKIG1zZ3N0ciAi0J3QtSDQtSDQt9Cw0LTQsNC00LXQvSDQttGD0YDQvdCw0LvQtdC9INGE0LDQudC7IgogCi0jOiBnaXQtYmlzZWN0LnNoOjQyMworIzogZ2l0LWJpc2VjdC5zaDoyMTAKICMsIHNoLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICRmaWxlIGZvciByZXBsYXlpbmciCiBtc2dzdHIgIiIKICLQltGD0YDQvdCw0LvQvdC40Y/RgiDRhNCw0LnQuyDigJ4ke2ZpbGV94oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQv9GA0L7Rh9C10YLQtdC9LCDQt9CwINC00LAg0YHQtSDQuNC30L/RitC70L3Rj9GCICIKICLQutC+0LzQsNC90LTQuNGC0LUg0L7RgiDQvdC10LPQviDQvdCw0L3QvtCy0L4iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDQ0CisjOiBnaXQtYmlzZWN0LnNoOjIzMgogbXNnaWQgIj8/IHdoYXQgYXJlIHlvdSB0YWxraW5nIGFib3V0PyIKIG1zZ3N0ciAiIgogItCd0LXQv9C+0LfQvdCw0YLQsCDQutC+0LzQsNC90LTQsC4gINCS0YrQt9C80L7QttC90LjRgtC1INCy0LDRgNC40LDQvdGC0Lgg0YHQsDog4oCec3RhcnTigJwsIOKAnmdvb2TigJwsIOKAnmJhZOKAnCwg4oCec2tpcOKAnCIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NTMKKyM6IGdpdC1iaXNlY3Quc2g6MjQxCiBtc2dpZCAiYmlzZWN0IHJ1biBmYWlsZWQ6IG5vIGNvbW1hbmQgcHJvdmlkZWQuIgogbXNnc3RyICLQvdC10YPRgdC/0LXRiNC90L4g0LTQstC+0LjRh9C90L4g0YLRitGA0YHQtdC90LUsINC90LUg0LUg0LfQsNC00LDQtNC10L3QsCDQutC+0LzQsNC90LTQsC4iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDU4CisjOiBnaXQtYmlzZWN0LnNoOjI0NgogIywgc2gtZm9ybWF0CiBtc2dpZCAicnVubmluZyAkY29tbWFuZCIKIG1zZ3N0ciAi0LjQt9C/0YrQu9C90LXQvdC40LUg0L3QsCDQutC+0LzQsNC90LTQsNGC0LAg4oCeJHtjb21tYW5kfeKAnCIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NjUKKyM6IGdpdC1iaXNlY3Quc2g6MjUzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiYmlzZWN0IHJ1biBmYWlsZWQ6XG4iCkBAIC0xOTkyNiwxMSArMjM4MzIsMTEgQEAKICLQuNC30YXQvtC00L3QuNGP0YIg0LrQvtC0INC+0YIg0LrQvtC80LDQvdC00LDRgtCwIOKAniR7Y29tbWFuZH3igJwg0LUgJHtyZXN9IOKAlCDRgtC+0LLQsCDQtSDQuNC30LLRitC9INC40L3RgtC10YDQstCw0LvQsCAiCiAiWzAsIDEyOCkiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDkxCisjOiBnaXQtYmlzZWN0LnNoOjI3OQogbXNnaWQgImJpc2VjdCBydW4gY2Fubm90IGNvbnRpbnVlIGFueSBtb3JlIgogbXNnc3RyICLQtNCy0L7QuNGH0L3QvtGC0L4g0YLRitGA0YHQtdC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINC/0YDQvtC00YrQu9C20LgiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDk3CisjOiBnaXQtYmlzZWN0LnNoOjI4NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogImJpc2VjdCBydW4gZmFpbGVkOlxuIgpAQCAtMTk5MzksMjkgKzIzODQ1LDEzIEBACiAi0L3QtdGD0YHQv9C10YjQvdC+INC00LLQvtC40YfQvdC+INGC0YrRgNGB0LXQvdC1OlxuIgogItGE0YPQvdC60YbQuNGP0YLQsCDigJ5iaXNlY3Rfc3RhdGUgJHtzdGF0ZX3igJwg0LfQsNCy0YrRgNGI0Lgg0YEg0LrQvtC0INC30LAg0LPRgNC10YjQutCwICR7cmVzfSIKIAotIzogZ2l0LWJpc2VjdC5zaDo1MDQKKyM6IGdpdC1iaXNlY3Quc2g6MjkyCiBtc2dpZCAiYmlzZWN0IHJ1biBzdWNjZXNzIgogbXNnc3RyICLRg9GB0L/QtdGI0L3QviDQtNCy0L7QuNGH0L3QviDRgtGK0YDRgdC10L3QtSIKIAotIzogZ2l0LWJpc2VjdC5zaDo1MzMKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkludmFsaWQgY29tbWFuZDogeW91J3JlIGN1cnJlbnRseSBpbiBhICRURVJNX0JBRC8kVEVSTV9HT09EIGJpc2VjdC4iCi1tc2dzdHIgIiIKLSLQndC10L/RgNCw0LLQuNC70L3QsCDQutC+0LzQsNC90LTQsDog0LIg0LzQvtC80LXQvdGC0LAg0YHQtSDQuNC30L/RitC70L3Rj9Cy0LAg0LTQstC+0LjRh9C90L4g0YLRitGA0YHQtdC90LUg0L/QviAke1RFUk1fQkFEfS8iCi0iJHtURVJNX0dPT0R9LiIKLQotIzogZ2l0LWJpc2VjdC5zaDo1NjcKLW1zZ2lkICJubyB0ZXJtcyBkZWZpbmVkIgotbXNnc3RyICLQvdC1INGB0LAg0YPQutCw0LfQsNC90Lgg0YPQv9GA0LDQstC70Y/QstCw0YnQuCDQtNGD0LzQuCIKLQotIzogZ2l0LWJpc2VjdC5zaDo1ODQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJpbnZhbGlkIGFyZ3VtZW50ICRhcmcgZm9yICdnaXQgYmlzZWN0IHRlcm1zJy5cbiIKLSJTdXBwb3J0ZWQgb3B0aW9ucyBhcmU6IC0tdGVybS1nb29kfC0tdGVybS1vbGQgYW5kIC0tdGVybS1iYWR8LS10ZXJtLW5ldy4iCi1tc2dzdHIgIiIKLSLQvdCwIOKAnmdpdCBiaXNlY3QgdGVybXPigJwg0LUg0L/QvtC00LDQtNC10L0g0L3QtdC/0YDQsNCy0LjQu9C10L0g0LDRgNCz0YPQvNC10L3RgiDigJ4ke2FyZ33igJxcbiIKLSLQn9C+0LTQtNGK0YDQttCw0YIg0YHQtSDQvtC/0YbQuNC40YLQtSDigJ4tLXRlcm0tZ29vZHwtLXRlcm0tb2xk4oCcINC4IOKAni0tdGVybS1iYWR8LS10ZXJtLW5ld+KAnC4iCisjOiBnaXQtYmlzZWN0LnNoOjMwMAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLiIKK21zZ3N0ciAi0JIg0LzQvtC80LXQvdGC0LAg0L3QtSDRgdC1INC40LfQstGK0YDRiNCy0LAg0LTQstC+0LjRh9C90L4g0YLRitGA0YHQtdC90LUuIgogCiAjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo0NgogbXNnaWQgIiIKQEAgLTIwMDAxLDMwMiArMjM4OTEsMTM4IEBACiBtc2dpZCAiU2ltcGxlIG1lcmdlIGRpZCBub3Qgd29yaywgdHJ5aW5nIGF1dG9tYXRpYyBtZXJnZS4iCiBtc2dzdHIgItCf0YDQvtGB0YLQvtGC0L4g0YHQu9C40LLQsNC90LUg0L3QtSDRgdGA0LDQsdC+0YLQuCwg0L/RgNC+0LHQstCwINGB0LUg0LDQstGC0L7QvNCw0YLQuNGH0L3QviDRgdC70LjQstCw0L3QtS4iCiAKLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQzNAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IG1vdmUgYmFjayB0byAkaGVhZF9uYW1lIgotbXNnc3RyICLQktGA0YrRidCw0L3QtdGC0L4g0LrRitC8IOKAniR7aGVhZF9uYW1lfeKAnCDQtSDQvdC10LLRitC30LzQvtC20L3QviIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDYwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iSXQgc2VlbXMgdGhhdCB0aGVyZSBpcyBhbHJlYWR5IGEgJHN0YXRlX2Rpcl9iYXNlIGRpcmVjdG9yeSwgYW5kXG4iCi0iSSB3b25kZXIgaWYgeW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgcmViYXNlLiAgSWYgdGhhdCBpcyB0aGVcbiIKLSJjYXNlLCBwbGVhc2UgdHJ5XG4iCi0iXHQkY21kX2xpdmVfcmViYXNlXG4iCi0iSWYgdGhhdCBpcyBub3QgdGhlIGNhc2UsIHBsZWFzZVxuIgotIlx0JGNtZF9jbGVhcl9zdGFsZV9yZWJhc2VcbiIKLSJhbmQgcnVuIG1lIGFnYWluLiAgSSBhbSBzdG9wcGluZyBpbiBjYXNlIHlvdSBzdGlsbCBoYXZlIHNvbWV0aGluZ1xuIgotInZhbHVhYmxlIHRoZXJlLiIKLW1zZ3N0ciAiIgotItCS0LXRh9C1INGB0YrRidC10YHRgtCy0YPQstCwINC00LjRgNC10LrRgtC+0YDQuNGPIOKAniR7c3RhdGVfZGlyX2Jhc2V94oCcLiAg0JLRitC30LzQvtC20L3QviDQu9C4INC1INC00LAg0YHRgtC1XG4iCi0i0LIg0L/RgNC+0YbQtdGBINC90LAg0LTRgNGD0LPQviDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1PyDQkNC60L4g0YLQvtCy0LAg0LUg0YLQsNC60LAsINC40LfQv9GK0LvQvdC10YLQtTpcbiIKLSIgICAgJHtjbWRfbGl2ZV9yZWJhc2V9XG4iCi0i0JDQutC+INC90LUg0YHRgtC1INCyINC/0YDQvtGG0LXRgSDQvdCwINC00YDRg9Cz0L4g0L/RgNC10LHQsNC30LjRgNCw0L3QtSwg0LjQt9C/0YrQu9C90LXRgtC1OlxuIgotIiAgICAke2NtZF9jbGVhcl9zdGFsZV9yZWJhc2V9XG4iCi0i0Lgg0L7RgtC90L7QstC+INC30LDQv9C+0YfQvdC10YLQtSDQv9GA0LXQsdCw0LfQuNGA0LDQvdC10YLQvi4gINCi0LXQutGD0YnQvtGC0L4g0L/RgNC10LHQsNC30LjRgNCw0L3QtSDRgdC1INC/0YDQtdGD0YHRgtCw0L3QvtCy0Y/QstCwLCAiCi0i0LfQsFxuIgotItC00LAg0L3QtSDQt9Cw0LPRg9Cx0LjRgtC1INGB0LvRg9GH0LDQudC90L4g0L/RgNC+0LzQtdC90LguIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1MjUKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tc2lnbm9mZicgd2l0aCAnLS1wcmVzZXJ2ZS1tZXJnZXMnIgotbXNnc3RyICLQs9GA0LXRiNC60LA6INC+0L/RhtC40LjRgtC1IOKAni0tc2lnbm9mZuKAnCDQuCDigJ4tLXByZXNlcnZlLW1lcmdlc+KAnCDRgdCwINC90LXRgdGK0LLQvNC10YHRgtC40LzQuCIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTcwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICckdXBzdHJlYW1fbmFtZSciCi1tc2dzdHIgItC90LXQv9GA0LDQstC40LvQvdCwINC+0YHQvdC+0LLQsCDQt9CwINGB0YDQsNCy0L3QtdC90LjQtSDigJ4ke3Vwc3RyZWFtX25hbWV94oCcIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1OTQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiRvbnRvX25hbWU6IHRoZXJlIGFyZSBtb3JlIHRoYW4gb25lIG1lcmdlIGJhc2VzIgotbXNnc3RyICIiCi0i0YPQutCw0LfQsNGC0LXQu9GP0YIg4oCeJHtvbnRvX25hbWV94oCcINC80L7QttC1INC00LAg0YHQvtGH0Lgg0LrRitC8INC/0L7QstC10YfQtSDQvtGCINC10LTQvdCwINC+0YHQvdC+0LLQsCDQt9CwICIKLSLQv9GA0LXQsdCw0LfQuNGA0LDQvdC10YLQviIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTk3IGdpdC1sZWdhY3ktcmViYXNlLnNoOjYwMQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJG9udG9fbmFtZTogdGhlcmUgaXMgbm8gbWVyZ2UgYmFzZSIKLW1zZ3N0ciAi0YPQutCw0LfQsNGC0LXQu9GP0YIg4oCeJHtvbnRvX25hbWV94oCcINC90LUg0YHQvtGH0Lgg0LrRitC8INC90LjQutCw0LrQstCwINC+0YHQvdC+0LLQsCDQt9CwINC/0YDQtdCx0LDQt9C40YDQsNC90LXRgtC+IgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2MDYKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkRvZXMgbm90IHBvaW50IHRvIGEgdmFsaWQgY29tbWl0OiAkb250b19uYW1lIgotbXNnc3RyICLQo9C60LDQt9Cw0YLQtdC70Y/RgiDigJ4ke29udG9fbmFtZX3igJwg0L3QtSDRgdC+0YfQuCDQutGK0Lwg0L/QvtC00LDQstCw0L3QtSIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjMyCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICckYnJhbmNoX25hbWUnIgotbXNnc3RyICLQpNCQ0KLQkNCb0J3QkCDQk9Cg0JXQqNCa0JA6INC90LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LAg0LrQu9C+0L0g4oCeJHticmFuY2hfbmFtZX3igJwiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjY3MAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ3JlYXRlZCBhdXRvc3Rhc2g6ICRzdGFzaF9hYmJyZXYiCi1tc2dzdHIgItCQ0LLRgtC+0LzQsNGC0LjRh9C90L4g0YHQutCw0YLQsNC90L46IOKAniR7c3Rhc2hfYWJicmV2feKAnCIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6Njk5Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDdXJyZW50IGJyYW5jaCAkYnJhbmNoX25hbWUgaXMgdXAgdG8gZGF0ZS4iCi1tc2dzdHIgItCi0LXQutGD0YnQuNGP0YIg0LrQu9C+0L0g4oCeJHticmFuY2hfbmFtZX3igJwg0LUg0L3QsNC/0YrQu9C90L4g0LDQutGC0YPQsNC70LXQvS4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjcwOQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgotbXNnc3RyICIiCi0i0KLQtdC60YPRidC40Y/RgiDQutC70L7QvSDigJ4ke2JyYW5jaF9uYW1lfeKAnCDQtSDQvdCw0L/RitC70L3QviDQsNC60YLRg9Cw0LvQtdC9LiAg0J/RgNC10LHQsNC30LjRgNCw0L3QtdGC0L4g0LUgIgotItC/0YDQuNC90YPQtNC40YLQtdC70L3Qvi4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjcyMwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ2hhbmdlcyB0byAkb250bzoiCi1tc2dzdHIgItCf0YDQvtC80LXQvdC40YLQtSDQsiDigJ4ke29udG994oCcOiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzI1Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDaGFuZ2VzIGZyb20gJG1iIHRvICRvbnRvOiIKLW1zZ3N0ciAi0J/RgNC+0LzQtdC90LjRgtC1INC+0YIg4oCeJHttYn3igJwg0LrRitC8IOKAniR7b250b33igJw6IgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MzYKLW1zZ2lkICJGaXJzdCwgcmV3aW5kaW5nIGhlYWQgdG8gcmVwbGF5IHlvdXIgd29yayBvbiB0b3Agb2YgaXQuLi4iCi1tc2dzdHIgIiIKLSLQn9GK0YDQstC+LCDRg9C60LDQt9Cw0YLQtdC70Y/RgiDigJ5IRUFE4oCcINC30LDQv9C+0YfQstCwINC00LAg0YHQvtGH0Lgg0LrRitC8INCx0LDQt9Cw0YLQsCwg0LLRitGA0YXRgyDQutC+0Y/RgtC+INC/0YDQtdCx0LDQt9C40YDQsNGC0LXigKYiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjc0NgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRmFzdC1mb3J3YXJkZWQgJGJyYW5jaF9uYW1lIHRvICRvbnRvX25hbWUuIgotbXNnc3RyICLQn9GA0LXQstGK0YDRgtCw0L3QtSDQvdCwIOKAniR7YnJhbmNoX25hbWV94oCcINCy0YrRgNGF0YMg4oCeJHtvbnRvX25hbWV94oCcLiIKLQotIzogZ2l0LXN0YXNoLnNoOjYxCi1tc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIHdpdGggcGFyYW1ldGVycyBpcyB1bmltcGxlbWVudGVkIgotbXNnc3RyICLQmtC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0IHN0YXNoIGNsZWFy4oCcINC90LUg0L/QvtC00LTRitGA0LbQsCDQsNGA0LPRg9C80LXQvdGC0LgiCi0KLSM6IGdpdC1zdGFzaC5zaDoxMDgKLW1zZ2lkICJZb3UgZG8gbm90IGhhdmUgdGhlIGluaXRpYWwgY29tbWl0IHlldCIKLW1zZ3N0ciAi0JLRgdC1INC+0YnQtSDQu9C40L/RgdCy0LAg0L/RitGA0LLQvtC90LDRh9Cw0LvQvdC+INC/0L7QtNCw0LLQsNC90LUiCi0KLSM6IGdpdC1zdGFzaC5zaDoxMjMKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBpbmRleCBzdGF0ZSIKLW1zZ3N0ciAi0KHRitGB0YLQvtGP0L3QuNC10YLQviDQvdCwINGC0LXQutGD0YnQuNGPINC40L3QtNC10LrRgSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LDQt9C10L3QviIKLQotIzogZ2l0LXN0YXNoLnNoOjEzOAotbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSB1bnRyYWNrZWQgZmlsZXMiCi1tc2dzdHIgItCd0LXRgdC70LXQtNC10L3QuNGC0LUg0YTQsNC50LvQvtCy0LUg0L3QtSDQvNC+0LPQsNGCINC00LAg0YHQtSDQt9Cw0L/QsNC30Y/RgiIKLQotIzogZ2l0LXN0YXNoLnNoOjE1OCBnaXQtc3Rhc2guc2g6MTcxCi1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgd29ya3RyZWUgc3RhdGUiCi1tc2dzdHIgItCh0YrRgdGC0L7Rj9C90LjQtdGC0L4g0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LDQt9C10L3QviIKLQotIzogZ2l0LXN0YXNoLnNoOjE3NQotbXNnaWQgIk5vIGNoYW5nZXMgc2VsZWN0ZWQiCi1tc2dzdHIgItCd0LUg0YHQsCDQuNC30LHRgNCw0L3QuCDQvdC40LrQsNC60LLQuCDQv9GA0L7QvNC10L3QuCIKLQotIzogZ2l0LXN0YXNoLnNoOjE3OAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMjEKIG1zZ2lkICJDYW5ub3QgcmVtb3ZlIHRlbXBvcmFyeSBpbmRleCAoY2FuJ3QgaGFwcGVuKSIKIG1zZ3N0ciAi0JLRgNC10LzQtdC90L3QuNGP0YIg0LjQvdC00LXQutGBINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YLRgNC40YIiCiAKLSM6IGdpdC1zdGFzaC5zaDoxOTEKLW1zZ2lkICJDYW5ub3QgcmVjb3JkIHdvcmtpbmcgdHJlZSBzdGF0ZSIKLW1zZ3N0ciAi0KHRitGB0YLQvtGP0L3QuNC10YLQviDQvdCwINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0L/QsNC30LXQvdC+IgotCi0jOiBnaXQtc3Rhc2guc2g6MjI5CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjI3MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHVwZGF0ZSAkcmVmX3N0YXNoIHdpdGggJHdfY29tbWl0IgogbXNnc3RyICIiCiAi0KPQutCw0LfQsNGC0LXQu9GP0YIg4oCeJHtyZWZfc3Rhc2h94oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtCx0L3QvtCy0LXQvSDQtNCwINGB0L7Rh9C4INC60YrQvCDigJ4ke3dfY29tbWl0feKAnCIKIAotIzogZ2l0LXN0YXNoLnNoOjI4MQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMjQKICMsIHNoLWZvcm1hdAogbXNnaWQgImVycm9yOiB1bmtub3duIG9wdGlvbiBmb3IgJ3N0YXNoIHB1c2gnOiAkb3B0aW9uIgogbXNnc3RyICLQk9Cg0JXQqNCa0JA6INC60L7QvNCw0L3QtNCw0YLQsCDigJ5zdGFzaCBwdXNo4oCcINC90LUg0L/RgNC40LXQvNCwINC+0L/RhtC40Y/RgtCwIOKAniRvcHRpb27igJwiCiAKLSM6IGdpdC1zdGFzaC5zaDoyOTUKLW1zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgotbXNnc3RyICLQntC/0YbQuNGP0YLQsCDigJ4tLXBhdGNo4oCcINC1INC90LXRgdGK0LLQvNC10YHRgtC40LzQsCDRgSDigJ4tLWluY2x1ZGUtdW50cmFja2Vk4oCcINC4IOKAni0tYWxs4oCcIgotCi0jOiBnaXQtc3Rhc2guc2g6MzAzCi1tc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgotbXNnc3RyICLQndGP0LzQsCDQvdC40LrQsNC60LLQuCDQu9C+0LrQsNC70L3QuCDQv9GA0L7QvNC10L3QuCDQt9CwINGB0LrQsNGC0LDQstCw0L3QtSIKLQotIzogZ2l0LXN0YXNoLnNoOjMwOAotbXNnaWQgIkNhbm5vdCBpbml0aWFsaXplIHN0YXNoIgotbXNnc3RyICLQodC60LDRgtCw0LLQsNC90LXRgtC+INC90LUg0LzQvtC20LUg0LTQsCDRgdGC0LDRgNGC0LjRgNCwIgotCi0jOiBnaXQtc3Rhc2guc2g6MzEyCi1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgc3RhdHVzIgotbXNnc3RyICLQotC10LrRg9GJ0L7RgtC+INGB0YrRgdGC0L7Rj9C90LjQtSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LDQt9C10L3QviIKLQotIzogZ2l0LXN0YXNoLnNoOjMxMworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlNhdmVkIHdvcmtpbmcgZGlyZWN0b3J5IGFuZCBpbmRleCBzdGF0ZSAkc3Rhc2hfbXNnIgogbXNnc3RyICIiCiAi0KHRitGB0YLQvtGP0L3QuNC10YLQviDQvdCwINGA0LDQsdC+0YLQvdCw0YLQsCDQtNC40YDQtdC60YLQvtGA0LjRjyDQuCDQuNC90LTQtdC60YHQsCDRgdCwINC30LDQv9Cw0LfQtdC90Lg6IOKAniRzdGFzaF9tc2figJwiCiAKLSM6IGdpdC1zdGFzaC5zaDozNDIKLW1zZ2lkICJDYW5ub3QgcmVtb3ZlIHdvcmt0cmVlIGNoYW5nZXMiCi1tc2dzdHIgItCf0YDQvtC80LXQvdC40YLQtSDQsiDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviDQvdC1INC80L7Qs9Cw0YIg0LTQsCDQsdGK0LTQsNGCINC30LDQvdGD0LvQtdC90LgiCi0KLSM6IGdpdC1zdGFzaC5zaDo0OTAKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NTM2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG9wdGlvbjogJG9wdCIKIG1zZ3N0ciAi0L3QtdC/0L7Qt9C90LDRgtCwINC+0L/RhtC40Y86ICR7b3B0fSIKIAotIzogZ2l0LXN0YXNoLnNoOjUwMwotbXNnaWQgIk5vIHN0YXNoIGVudHJpZXMgZm91bmQuIgotbXNnc3RyICLQndC1INC1INC+0YLQutGA0LjRgtC+INC90LjRidC+INGB0LrQsNGC0LDQvdC+LiIKLQotIzogZ2l0LXN0YXNoLnNoOjUxMAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NTYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlRvbyBtYW55IHJldmlzaW9ucyBzcGVjaWZpZWQ6ICRSRVYiCiBtc2dzdHIgItCj0LrQsNC30LDQvdC4INGB0LAg0L/RgNC10LrQsNC70LXQvdC+INC80L3QvtCz0L4g0LLQtdGA0YHQuNC4OiDigJ4ke1JFVn3igJwiCiAKLSM6IGdpdC1zdGFzaC5zaDo1MjUKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NTcxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIkcmVmZXJlbmNlIGlzIG5vdCBhIHZhbGlkIHJlZmVyZW5jZSIKIG1zZ3N0ciAi0KPQutCw0LfQsNGC0LXQu9GP0YIg4oCeJHtyZWZlcmVuY2V94oCcINC1INCz0YDQtdGI0LXQvSIKIAotIzogZ2l0LXN0YXNoLnNoOjU1MworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1OTkKICMsIHNoLWZvcm1hdAogbXNnaWQgIickYXJncycgaXMgbm90IGEgc3Rhc2gtbGlrZSBjb21taXQiCiBtc2dzdHIgIuKAniR7YXJnc33igJwg0L3QtSDQtSDQv9C+0LTQsNCy0LDQvdC1LCDQv9GA0LjQu9C40YfQsNGJ0L4g0L3QsCDQvdC10YnQviDRgdC60LDRgtCw0L3QviIKIAotIzogZ2l0LXN0YXNoLnNoOjU2NAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MTAKICMsIHNoLWZvcm1hdAogbXNnaWQgIickYXJncycgaXMgbm90IGEgc3Rhc2ggcmVmZXJlbmNlIgogbXNnc3RyICLigJ4ke2FyZ3N94oCcINC90LUg0LUg0YPQutCw0LfQsNGC0LXQuyDQutGK0Lwg0L3QtdGJ0L4g0YHQutCw0YLQsNC90L4iCiAKLSM6IGdpdC1zdGFzaC5zaDo1NzIKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjE4CiBtc2dpZCAidW5hYmxlIHRvIHJlZnJlc2ggaW5kZXgiCiBtc2dzdHIgItC40L3QtNC10LrRgdGK0YIg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0LHQvdC+0LLQtdC9IgogCi0jOiBnaXQtc3Rhc2guc2g6NTc2CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYyMgogbXNnaWQgIkNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKIG1zZ3N0ciAi0J/QviDQstGA0LXQvNC1INC90LAg0YHQu9C40LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINC/0YDQuNC70L7QttC40YLQtSDQvdC10YnQviDRgdC60LDRgtCw0L3QviIKIAotIzogZ2l0LXN0YXNoLnNoOjU4NAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MzAKIG1zZ2lkICJDb25mbGljdHMgaW4gaW5kZXguIFRyeSB3aXRob3V0IC0taW5kZXguIgogbXNnc3RyICIiCiAi0JIg0LjQvdC00LXQutGB0LAg0LjQvNCwINC60L7QvdGE0LvQuNC60YLQuC4gINCf0YDQvtCx0LLQsNC50YLQtSDQtNCwINC40LfQv9GK0LvQvdC40YLQtSDQutC+0LzQsNC90LTQsNGC0LAg0LHQtdC3INC+0L/RhtC40Y/RgtCwIOKAni0tIgogImluZGV44oCcLiIKIAotIzogZ2l0LXN0YXNoLnNoOjU4NgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MzIKIG1zZ2lkICJDb3VsZCBub3Qgc2F2ZSBpbmRleCB0cmVlIgogbXNnc3RyICLQlNGK0YDQstC+0YLQviDRgdC+0YfQtdC90L4g0L7RgiDQuNC90LTQtdC60YHQsCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LDQt9C10L3QviIKIAotIzogZ2l0LXN0YXNoLnNoOjU5NQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2NDEKIG1zZ2lkICJDb3VsZCBub3QgcmVzdG9yZSB1bnRyYWNrZWQgZmlsZXMgZnJvbSBzdGFzaCBlbnRyeSIKIG1zZ3N0ciAi0J3QtdGB0LvQtdC00LXQvdC4INGE0LDQudC70L7QstC1INC90LUg0LzQvtCz0LDRgiDQtNCwINGB0LUg0LLRitC30YHRgtCw0L3QvtCy0Y/RgiDQvtGCINGB0LrQsNGC0LDQvdC+0YLQviIKIAotIzogZ2l0LXN0YXNoLnNoOjYyMAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2NjYKIG1zZ2lkICJDYW5ub3QgdW5zdGFnZSBtb2RpZmllZCBmaWxlcyIKIG1zZ3N0ciAi0J/RgNC+0LzQtdC90LXQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSDQvdC1INC80L7Qs9Cw0YIg0LTQsCDQsdGK0LTQsNGCINC40LfQstCw0LTQtdC90Lgg0L7RgiDQuNC90LTQtdC60YHQsCIKIAotIzogZ2l0LXN0YXNoLnNoOjYzNQotbXNnaWQgIkluZGV4IHdhcyBub3QgdW5zdGFzaGVkLiIKLW1zZ3N0ciAi0JjQvdC00LXQutGB0YrRgiDQvdC1INC1INGB0LrQsNGC0LDQvS4iCi0KLSM6IGdpdC1zdGFzaC5zaDo2NDkKLW1zZ2lkICJUaGUgc3Rhc2ggZW50cnkgaXMga2VwdCBpbiBjYXNlIHlvdSBuZWVkIGl0IGFnYWluLiIKLW1zZ3N0ciAi0KHQutCw0YLQsNC90L7RgtC+INC1INC30LDQv9Cw0LfQtdC90L4g0LIg0YHQu9GD0YfQsNC5LCDRh9C1INCy0Lgg0L/QvtGC0YDRj9Cx0LLQsCDQvtGC0L3QvtCy0L4iCi0KLSM6IGdpdC1zdGFzaC5zaDo2NTgKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzA0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJEcm9wcGVkICR7UkVWfSAoJHMpIgogbXNnc3RyICLQmNC30YLRgNC40YLQviDQtSDRgdC60LDRgtCw0L3QvtGC0L4g4oCeJHtSRVZ94oCcICgkcykiCiAKLSM6IGdpdC1zdGFzaC5zaDo2NTkKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzA1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIke1JFVn06IENvdWxkIG5vdCBkcm9wIHN0YXNoIGVudHJ5IgogbXNnc3RyICLQodC60LDRgtCw0L3QvtGC0L4g4oCeJHtSRVZ94oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQuNC30YLRgNC40YLQviIKIAotIzogZ2l0LXN0YXNoLnNoOjY2NwotbXNnaWQgIk5vIGJyYW5jaCBuYW1lIHNwZWNpZmllZCIKLW1zZ3N0ciAi0J3QtSDQtSDRg9C60LDQt9Cw0L3QviDQuNC80LUg0L3QsCDQutC70L7QvSIKLQotIzogZ2l0LXN0YXNoLnNoOjc0NgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3OTIKIG1zZ2lkICIoVG8gcmVzdG9yZSB0aGVtIHR5cGUgXCJnaXQgc3Rhc2ggYXBwbHlcIikiCiBtc2dzdHIgIijQl9CwINC00LAg0LPQuCDQstGK0LfRgdGC0LDQvdC+0LLQuNGC0LUsINC40LfQv9GK0LvQvdC10YLQtSDQutC+0LzQsNC90LTQsNGC0LAg4oCeZ2l0IHN0YXNoIGFwcGx54oCcKSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoxOTgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjAzCiBtc2dpZCAiUmVsYXRpdmUgcGF0aCBjYW4gb25seSBiZSB1c2VkIGZyb20gdGhlIHRvcGxldmVsIG9mIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKICLQntGC0L3QvtGB0LjRgtC10LvQtdC9INC/0YrRgiDQvNC+0LbQtSDQtNCwINGB0LUg0L/QvtC70LfQstCwINGB0LDQvNC+INC+0YIg0L7RgdC90L7QstC90LDRgtCwINC00LjRgNC10LrRgtC+0YDQuNGPINC90LAg0YDQsNCx0L7RgtC90L7RgtC+ICIKICLQtNGK0YDQstC+IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjIwOAorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMTMKICMsIHNoLWZvcm1hdAogbXNnaWQgInJlcG8gVVJMOiAnJHJlcG8nIG11c3QgYmUgYWJzb2x1dGUgb3IgYmVnaW4gd2l0aCAuL3wuLi8iCiBtc2dzdHIgIiIKICLQsNC00YDQtdGBINC90LAg0YXRgNCw0L3QuNC70LjRidC1OiDigJ4ke3JlcG994oCcINGC0YDRj9Cx0LLQsCDQuNC70Lgg0LTQsCDQtSDQsNCx0YHQvtC70Y7RgtC10L0sINC40LvQuCDQtNCwINC30LDQv9C+0YfQstCwINGBICIKICLigJ4uL+KAnCDQuNC70Lgg4oCeLi4v4oCcIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjIyNworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzIKICMsIHNoLWZvcm1hdAogbXNnaWQgIickc21fcGF0aCcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGluZGV4IgogbXNnc3RyICLigJ4ke3NtX3BhdGh94oCcINCy0LXRh9C1INGB0YrRidC10YHRgtCy0YPQstCwINCyINC40L3QtNC10LrRgdCwIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjIzMAorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzUKICMsIHNoLWZvcm1hdAogbXNnaWQgIickc21fcGF0aCcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGluZGV4IGFuZCBpcyBub3QgYSBzdWJtb2R1bGUiCiBtc2dzdHIgIuKAniR7c21fcGF0aH3igJwg0LLQtdGH0LUg0YHRitGJ0LXRgdGC0LLRg9Cy0LAg0LIg0LjQvdC00LXQutGB0LAg0Lgg0L3QtSDQtSDQv9C+0LTQvNC+0LTRg9C7IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjIzNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNDIKICMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJUaGUgZm9sbG93aW5nIHBhdGggaXMgaWdub3JlZCBieSBvbmUgb2YgeW91ciAuZ2l0aWdub3JlIGZpbGVzOlxuIgotIiRzbV9wYXRoXG4iCi0iVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgaXQuIgotbXNnc3RyICIiCi0i0KHQu9C10LTQvdC40Y/RgiDQv9GK0YIg0YHQtSDQuNCz0L3QvtGA0LjRgNCwINC/0L7RgNCw0LTQuCDQvdGP0LrQvtC5INC+0YIg0YTQsNC50LvQvtCy0LXRgtC1IOKAni5naXRpZ25vcmXigJw6XG4iCi0iJHtzbV9wYXRofVxuIgotItCY0LfQv9C+0LvQt9Cy0LDQudGC0LUg0L7Qv9GG0LjRj9GC0LAg4oCeLWbigJwsINCw0LrQviDQt9CwINC00LAg0LPQviDQtNC+0LHQsNCy0LjRgtC1INC90LDQuNGB0YLQuNC90LAuIgorbXNnaWQgIickc21fcGF0aCcgZG9lcyBub3QgaGF2ZSBhIGNvbW1pdCBjaGVja2VkIG91dCIKK21zZ3N0ciAi0LIg4oCeJHtzbV9wYXRofeKAnCDQvdC1INC1INC40LfRgtC10LPQu9C10L3QviDQv9C+0LTQsNCy0LDQvdC1IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI1OQorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzMKICMsIHNoLWZvcm1hdAogbXNnaWQgIkFkZGluZyBleGlzdGluZyByZXBvIGF0ICckc21fcGF0aCcgdG8gdGhlIGluZGV4IgogbXNnc3RyICLQlNC+0LHQsNCy0Y/QvdC1INC90LAg0YHRitGJ0LXRgdGC0LLRg9Cy0LDRidC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUg0LIg4oCeJHtzbV9wYXRofeKAnCDQutGK0Lwg0LjQvdC00LXQutGB0LAiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjYxCisjOiBnaXQtc3VibW9kdWxlLnNoOjI3NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBhbmQgaXMgbm90IGEgdmFsaWQgZ2l0IHJlcG8iCiBtc2dzdHIgIuKAniR7c21fcGF0aH3igJwg0YHRitGJ0LXRgdGC0LLRg9Cy0LAsINCwINC90LUg0LUg0YXRgNCw0L3QuNC70LjRidC1INC90LAgR2l0IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI2OQorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyODMKICMsIHNoLWZvcm1hdAogbXNnaWQgIkEgZ2l0IGRpcmVjdG9yeSBmb3IgJyRzbV9uYW1lJyBpcyBmb3VuZCBsb2NhbGx5IHdpdGggcmVtb3RlKHMpOiIKIG1zZ3N0ciAiIgogItCe0YLQutGA0LjRgtCwINC1INC70L7QutCw0LvQvdCwINC00LjRgNC10LrRgtC+0YDQuNGPINC90LAgR2l0IOKAlCDigJ4ke3NtX25hbWV94oCcLCDQutC+0Y/RgtC+INGB0L7Rh9C4INC60YrQvCAiCiAi0L7RgtC00LDQu9C10YfQtdC90LjRgtC1INGF0YDQsNC90LjQu9C40YnQsDoiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjcxCisjOiBnaXQtc3VibW9kdWxlLnNoOjI4NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3YW50IHRvIHJldXNlIHRoaXMgbG9jYWwgZ2l0IGRpcmVjdG9yeSBpbnN0ZWFkIG9mIGNsb25pbmcgYWdhaW4gZnJvbVxuIgpAQCAtMjAzMTMsMzcgKzI0MDM5LDM3IEBACiAi0L/RgNCw0LLQuNC70L3QvtGC0L4g0YXRgNCw0L3QuNC70LjRidC1INC40LvQuCDQsNC60L4g0L3QtSDQt9C90LDQtdGC0LUg0LrQsNC60LLQviDQvtC30L3QsNGH0LDQstCwINGC0L7QstCwLCDQuNC30L/QvtC70LfQstCw0LnRgtC1XG4iCiAi0LTRgNGD0LPQviDQuNC80LUg0LrQsNGC0L4g0LDRgNCz0YPQvNC10L3RgiDQutGK0Lwg0L7Qv9GG0LjRj9GC0LAg4oCeLS1uYW1l4oCcLiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzcKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJSZWFjdGl2YXRpbmcgbG9jYWwgZ2l0IGRpcmVjdG9yeSBmb3Igc3VibW9kdWxlICckc21fbmFtZScuIgogbXNnc3RyICLQkNC60YLQuNCy0LjRgNCw0L3QtSDQvdCwINC70L7QutCw0LvQvdC+0YLQviDRhdGA0LDQvdC40LvQuNGJ0LUg0LfQsCDQv9C+0LTQvNC+0LTRg9C70LAg4oCeJHtzbV9uYW1lfeKAnCDQvdCw0L3QvtCy0L4uIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI4OQorIzogZ2l0LXN1Ym1vZHVsZS5zaDozMDMKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBjaGVja291dCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAi0J/QvtC00LzQvtC00YPQu9GK0YIg4oCeJHtzbV9wYXRofeKAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LjQt9GC0LXQs9C70LXQvSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTQKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MzA4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gYWRkIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICLQndC10YPRgdC/0LXRiNC90L4g0LTQvtCx0LDQstGP0L3QtSDQvdCwINC/0L7QtNC80L7QtNGD0LvQsCDigJ4ke3NtX3BhdGh94oCcIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjMwMworIzogZ2l0LXN1Ym1vZHVsZS5zaDozMTcKICMsIHNoLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdC+INGA0LXQs9C40YHRgtGA0LjRgNCw0L3QtSDQvdCwINC/0L7QtNC80L7QtNGD0LvQsCDigJ4ke3NtX3BhdGh94oCcIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU2MworIzogZ2l0LXN1Ym1vZHVsZS5zaDo1OTAKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBmaW5kIGN1cnJlbnQgcmV2aXNpb24gaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgItCi0LXQutGD0YnQsNGC0LAg0LLQtdGA0YHQuNGPINC30LAg0L/QvtC00LzQvtC00YPQu9CwINCyIOKAniR7ZGlzcGxheXBhdGh94oCcINC70LjQv9GB0LLQsCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NzMKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjAwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJyRzbV9wYXRoJyIKIG1zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdC+INC00L7RgdGC0LDQstGP0L3QtSDQsiDQv9GK0YLRjyDQutGK0Lwg0L/QvtC00LzQvtC00YPQuyDigJ4ke3NtX3BhdGh94oCcIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU3OAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJVbmFibGUgdG8gZmluZCBjdXJyZW50ICR7cmVtb3RlX25hbWV9LyR7YnJhbmNofSByZXZpc2lvbiBpbiBzdWJtb2R1bGUgcGF0aCAiCkBAIC0yMDM1Miw5NCArMjQwNzgsOTggQEAKICLQotC10LrRg9GJ0LDRgtCwINCy0LXRgNGB0LjRjyDigJ4ke3JlbW90ZV9uYW1lfS8ke2JyYW5jaH3igJwg0LIg0L/RitGC0Y8g0LrRitC8INC/0L7QtNC80L7QtNGD0Lsg4oCeJHtzbV9wYXRofeKAnCAiCiAi0LvQuNC/0YHQstCwIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU5NgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjMKICMsIHNoLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKLW1zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdC+INC00L7RgdGC0LDQstGP0L3QtSDQsiDQv9GK0YLRjyDQutGK0Lwg0L/QvtC00LzQvtC00YPQuyDigJ4ke2Rpc3BsYXlwYXRofeKAnCIKK21zZ2lkICIiCisiVW5hYmxlIHRvIGZldGNoIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOyB0cnlpbmcgdG8gZGlyZWN0bHkgZmV0Y2ggIgorIiRzaGExOiIKK21zZ3N0ciAiIgorItCd0LXRg9GB0L/QtdGI0L3QviDQtNC+0YHRgtCw0LLRj9C90LUg0LIg0L/RitGC0Y8g0LrRitC8INC/0L7QtNC80L7QtNGD0Lsg4oCeJHtkaXNwbGF5cGF0aH3igJwsINC+0L/QuNGCINC30LAg0LTQuNGA0LXQutGC0L3QviAiCisi0LTQvtGB0YLQsNCy0Y/QvdC1INC90LAg4oCeJHtzaGExfeKAnCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDIKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjI5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiRmV0Y2hlZCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJywgYnV0IGl0IGRpZCBub3QgY29udGFpbiAkc2hhMS4gIgogIkRpcmVjdCBmZXRjaGluZyBvZiB0aGF0IGNvbW1pdCBmYWlsZWQuIgogbXNnc3RyICIiCiAi0J/QvtC00LzQvtC00YPQu9GK0YIg0LIg0L/RitGC0Y8g4oCeJGRpc3BsYXlwYXRo4oCcINC1INC00L7RgdGC0LDQstC10L0sINC90L4g0L3QtSDRgdGK0LTRitGA0LbQsCDQvtCx0LXQutGC0LAg0YHRitGBINGB0YPQvNCwXG4iCi0i4oCeJHNoYTHigJwuICDQlNC40YDQtdC60YLQvdC+0YLQviDQtNC+0YHRgtCw0LLRj9C90LUg0L3QsCDRgtC+0LLQsCDQv9C+0LTQsNCy0LDQvdC1INC1INC90LXRg9GB0L/QtdGI0L3Qvi4iCisi4oCeJHtzaGExfeKAnC4gINCU0LjRgNC10LrRgtC90L7RgtC+INC00L7RgdGC0LDQstGP0L3QtSDQvdCwINGC0L7QstCwINC/0L7QtNCw0LLQsNC90LUg0LUg0L3QtdGD0YHQv9C10YjQvdC+LiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjM2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gY2hlY2tvdXQgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiIgogItCd0LXRg9GB0L/QtdGI0L3QviDQuNC30YLQtdCz0LvRj9C90LUg0L3QsCDQstC10YDRgdC40Y8g4oCeJHtzaGExfeKAnCDQsiDQv9GK0YLRjyDQutGK0Lwg0L/QvtC00LzQvtC00YPQuyDigJ4ke2Rpc3BsYXlwYXRofeKAnCciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjEwCisjOiBnaXQtc3VibW9kdWxlLnNoOjYzNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IGNoZWNrZWQgb3V0ICckc2hhMSciCiBtc2dzdHIgItCf0YrRgiDQutGK0Lwg0L/QvtC00LzQvtC00YPQuyDigJ4ke2Rpc3BsYXlwYXRofeKAnDog0LjQt9GC0LXQs9C70LXQvdCwINC1INCy0LXRgNGB0LjRjyDigJ4ke3NoYTF94oCcIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYxNAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byByZWJhc2UgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiIgogItCd0LXRg9GB0L/QtdGI0L3QviDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1INC90LAg0LLQtdGA0YHQuNGPIOKAniR7c2hhMX3igJwg0LIg0L/RitGC0Y8g0LrRitC8INC/0L7QtNC80L7QtNGD0LsgIgogIuKAniR7ZGlzcGxheXBhdGh94oCcIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYxNQorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDIKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiByZWJhc2VkIGludG8gJyRzaGExJyIKIG1zZ3N0ciAi0J/RitGCINC60YrQvCDQv9C+0LTQvNC+0LTRg9C7IOKAniR7ZGlzcGxheXBhdGh94oCcOiDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1INCy0YrRgNGF0YMg0LLQtdGA0YHQuNGPIOKAniR7c2hhMX3igJwiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjIwCisjOiBnaXQtc3VibW9kdWxlLnNoOjY0NwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIG1lcmdlICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIiIKICLQndC10YPRgdC/0LXRiNC90L4g0YHQu9C40LLQsNC90LUg0L3QsCDQstC10YDRgdC40Y8g4oCeJHtzaGExfeKAnCDQsiDQv9GK0YLRjyDQutGK0Lwg0L/QvtC00LzQvtC00YPQuyDigJ4ke2Rpc3BsYXlwYXRofeKAnCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjEKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQ4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogbWVyZ2VkIGluICckc2hhMSciCiBtc2dzdHIgItCf0YrRgiDQutGK0Lwg0L/QvtC00LzQvtC00YPQuyDigJ4ke2Rpc3BsYXlwYXRofeKAnDog0YHQu9C40LLQsNC90LUg0YEg0LLQtdGA0YHQuNGPIOKAniR7c2hhMX3igJwiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjI2CisjOiBnaXQtc3VibW9kdWxlLnNoOjY1MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRXhlY3V0aW9uIG9mICckY29tbWFuZCAkc2hhMScgZmFpbGVkIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICIiCiAi0J3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAg0LrQvtC80LDQvdC00LDRgtCwIOKAniR7Y29tbWFuZH0gJHtzaGExfeKAnCDQsiDQv9GK0YLRjyDQutGK0Lwg0L/QvtC00LzQvtC00YPQuyAiCiAi4oCeJHtkaXNwbGF5cGF0aH3igJwiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjI3CisjOiBnaXQtc3VibW9kdWxlLnNoOjY1NAogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6ICckY29tbWFuZCAkc2hhMSciCiBtc2dzdHIgItCf0YrRgiDQutGK0Lwg0L/QvtC00LzQvtC00YPQuyDigJ4ke2Rpc3BsYXlwYXRofeKAnDog4oCeJHtjb21tYW5kfSAke3NoYTF94oCcIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjY1OAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2ODUKICMsIHNoLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZWN1cnNlIGludG8gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIiIKICLQndC10YPRgdC/0LXRiNC90LAg0L7QsdGA0LDQsdC+0YLQutCwINC90LAg0L/QvtC00LTQuNGA0LXQutGC0L7RgNC40LjRgtC1INCyINC/0YrRgtGPINC60YrQvCDQv9C+0LTQvNC+0LTRg9C7IOKAniR7ZGlzcGxheXBhdGh94oCcIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjc1NAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo4OTYKIG1zZ2lkICJUaGUgLS1jYWNoZWQgb3B0aW9uIGNhbm5vdCBiZSB1c2VkIHdpdGggdGhlIC0tZmlsZXMgb3B0aW9uIgogbXNnc3RyICLQntC/0YbQuNC40YLQtSDigJ4tLWNhY2hlZOKAnCDQuCDigJ4tLWZpbGVz4oCcINGB0LAg0L3QtdGB0YrQstC80LXRgdGC0LjQvNC4IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjgwNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NDgKICMsIHNoLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgbW9kZSAkbW9kX2RzdCIKIG1zZ3N0ciAi0L3QtdC+0YfQsNC60LLQsNC9INGA0LXQttC40Lwg4oCeJHttb2RfZHN0feKAnCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MjYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTY4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdCAkc2hhMV9zcmMiCiBtc2dzdHIgIiIKICIgINCf0KDQldCU0KPQn9Cg0JXQltCU0JXQndCY0JU6IOKAniR7ZGlzcGxheV9uYW1lfeKAnCDQvdC1INGB0YrQtNGK0YDQttCwINC/0L7QtNCw0LLQsNC90LXRgtC+IOKAniR7c2hhMV9zcmN94oCcIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjgyOQorIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NzEKICMsIHNoLWZvcm1hdAogbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX2RzdCIKIG1zZ3N0ciAiIgogIiAg0J/QoNCV0JTQo9Cf0KDQldCW0JTQldCd0JjQlTog4oCeJHtkaXNwbGF5X25hbWV94oCcINC90LUg0YHRitC00YrRgNC20LAg0L/QvtC00LDQstCw0L3QtdGC0L4g4oCeJHtzaGExX2RzdH3igJwiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODMyCisjOiBnaXQtc3VibW9kdWxlLnNoOjk3NAogIywgc2gtZm9ybWF0CiBtc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXRzICRzaGExX3NyYyBhbmQgJHNoYTFfZHN0IgogbXNnc3RyICIiCkBAIC0yMDQ1MSwxMiArMjQxODEsMjEgQEAKIG1zZ2lkICJTZWUgZ2l0LSR7Y21kfSgxKSBmb3IgZGV0YWlscy4iCiBtc2dzdHIgItCX0LAg0L/QvtCy0LXRh9C1INC40L3RhNC+0YDQvNCw0YbQuNGPINC/0L7Qs9C70LXQtNC90LXRgtC1INGA0YrQutC+0LLQvtC00YHRgtCy0L7RgtC+INC90LAg4oCeZ2l0LSR7Y21kfSgxKeKAnCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEzNgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEwOQorbXNnaWQgIkFwcGxpZWQgYXV0b3N0YXNoLiIKK21zZ3N0ciAi0JDQstGC0L7QvNCw0YLQuNGH0L3QviDRgdC60LDRgtCw0L3QvtGC0L4g0LUg0L/RgNC40LvQvtC20LXQvdC+LiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjExMgorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN0b3JlICRzdGFzaF9zaGExIgorbXNnc3RyICLigJ4kc3Rhc2hfc2hhMeKAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LDQt9C10L0iCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxOTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYmFzaW5nICgkbmV3X2NvdW50LyR0b3RhbCkiCiBtc2dzdHIgItCf0YDQtdCx0LDQt9C40YDQsNC90LUgKCRuZXdfY291bnQvJHRvdGFsKSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE1MgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIwNwogbXNnaWQgIiIKICJcbiIKICJDb21tYW5kczpcbiIKQEAgLTIwNTAwLDcgKzI0MjM5LDcgQEAKICLQnNC+0LbQtSDQtNCwINC/0YDQvtC80LXQvdGP0YLQtSDQv9C+0YHQu9C10LTQvtCy0LDRgtC10LvQvdC+0YHRgtGC0LAg0L3QsCDRgNC10LTQvtCy0LXRgtC1IOKAlCDRgtC1INGB0LUg0LjQt9C/0YrQu9C90Y/QstCw0YJcbiIKICLQv9C+0YHQu9C10LTQvtCy0LDRgtC10LvQvdC+INC+0YLQs9C+0YDQtS3QvdCw0LTQvtC70YMuXG4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMTUKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyNzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgY2FuIGFtZW5kIHRoZSBjb21taXQgbm93LCB3aXRoXG4iCkBAIC0yMDUxOSw4NCArMjQyNTgsODQgQEAKICJcbiIKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mjk1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIkc2hhMTogbm90IGEgY29tbWl0IHRoYXQgY2FuIGJlIHBpY2tlZCIKIG1zZ3N0ciAiJHNoYTE6INGC0L7QstCwINC90LUg0LUg0L/QvtC00LDQstCw0L3QtSwg0LrQvtC10YLQviDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQsdGA0LDQvdC+IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mjc5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzM0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIGNvbW1pdCBuYW1lOiAkc2hhMSIKIG1zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9C90L4g0LjQvNC1INC90LAg0L/QvtC00LDQstCw0L3QtTog4oCeJHNoYTHigJwiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozMDkKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNjQKIG1zZ2lkICJDYW5ub3Qgd3JpdGUgY3VycmVudCBjb21taXQncyByZXBsYWNlbWVudCBzaGExIgogbXNnc3RyICIiCiAi0JfQsNC80LXRgdGC0LLQsNGJ0LDRgtCwINGB0YPQvNCwINC/0L4gU0hBMSDQt9CwINGC0LXQutGD0YnQvtGC0L4g0L/QvtC00LDQstCw0L3QtSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LfQsNC/0LDQt9C10L3QsCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFzdC1mb3J3YXJkIHRvICRzaGExIgogbXNnc3RyICLQn9GA0LXQstGK0YDRgtCw0L3QtSDQtNC+IOKAniRzaGEx4oCcIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzYyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDE3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZmFzdC1mb3J3YXJkIHRvICRzaGExIgogbXNnc3RyICLQndC1INC80L7QttC1INC00LAg0YHQtSDQv9GA0LXQstGK0YDRgtC4INC00L4g4oCeJHNoYTHigJwiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNzEKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MjYKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBtb3ZlIEhFQUQgdG8gJGZpcnN0X3BhcmVudCIKIG1zZ3N0ciAi0KPQutCw0LfQsNGC0LXQu9GP0YIg4oCeSEVBROKAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvdCw0YHQvtGH0Lgg0LrRitC8IOKAniRmaXJzdF9wYXJlbnTigJwiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNzYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MzEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIHNxdWFzaCBhIG1lcmdlOiAkc2hhMSIKIG1zZ3N0ciAi0J/QvtC00LDQstCw0L3QtdGC0L4g0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0YHQvNCw0YfQutCwOiDigJ4kc2hhMeKAnCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM5NAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ0OQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRXJyb3IgcmVkb2luZyBtZXJnZSAkc2hhMSIKIG1zZ3N0ciAi0JPRgNC10YjQutCwINC/0YDQuCDQv9C+0LLRgtCw0YDRj9C90LXRgtC+INC90LAg0YHQu9C40LLQsNC90LXRgtC+INC90LAg4oCeJHNoYTHigJwiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MDMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NTgKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBwaWNrICRzaGExIgogbXNnc3RyICLigJ4kc2hhMeKAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtGC0LHQtdGA0LUuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDEyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDY3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJUaGlzIGlzIHRoZSBjb21taXQgbWVzc2FnZSAjJHtufToiCiBtc2dzdHIgItCi0L7QstCwINC1INGB0YrQvtCx0YnQtdC90LjQtSDQv9GA0Lgg0L/QvtC00LDQstCw0L3QtSDihJYke259OiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ3MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhlIGNvbW1pdCBtZXNzYWdlICMke259IHdpbGwgYmUgc2tpcHBlZDoiCiBtc2dzdHIgItCh0YrQvtCx0YnQtdC90LjQtSDQv9GA0Lgg0L/QvtC00LDQstCw0L3QtSDihJYke259INGJ0LUg0LHRitC00LUg0L/RgNC10YHQutC+0YfQtdC90L4uIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDI4CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDgzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJGNvdW50IGNvbW1pdC4iCiBtc2dpZF9wbHVyYWwgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAkY291bnQgY29tbWl0cy4iCiBtc2dzdHJbMF0gItCi0L7QstCwINC1INC+0LHQtdC00LjQvdC10L3QuNC1INC+0YIgJGNvdW50INC/0L7QtNCw0LLQsNC90LUuIgogbXNnc3RyWzFdICLQotC+0LLQsCDQtSDQvtCx0LXQtNC40L3QtdC90LjQtSDQvtGCICRjb3VudCDQv9C+0LTQsNCy0LDQvdC40Y8uIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDM3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDkyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgd3JpdGUgJGZpeHVwX21zZyIKIG1zZ3N0ciAi0J3QvtCy0L7RgtC+INGB0YrQvtCx0YnQtdC90LjQtSDQv9GA0Lgg0L/QvtC00LDQstCw0L3QtSDigJ4kZml4dXBfbXNn4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQt9Cw0L/QsNC30LXQvdC+IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDk1CiBtc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mIDIgY29tbWl0cy4iCiBtc2dzdHIgItCi0L7QstCwINC1INC+0LHQtdC00LjQvdC10L3QuNC1INC+0YIgMiDQv9C+0LTQsNCy0LDQvdC40Y8iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0ODEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUyNAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUyNworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUzNiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTc5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTgyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgYXBwbHkgJHNoYTEuLi4gJHJlc3QiCiBtc2dzdHIgItCd0LUg0LzQvtC20LUg0LTQsCDRgdC1INC/0L7QtNCw0LTQtSAkc2hhMeKApiAkcmVzdCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU1NgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYxMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIkNvdWxkIG5vdCBhbWVuZCBjb21taXQgYWZ0ZXIgc3VjY2Vzc2Z1bGx5IHBpY2tpbmcgJHNoYTEuLi4gJHJlc3RcbiIKQEAgLTIwNjEyLDMxICsyNDM1MSwzMSBAQAogItC60L7RgNC40LPQuNGA0LDRgtC1LFxuIgogItC/0YDQtdC00Lgg0LTQsCDQvNC+0LbQtdGC0LUg0LTQsCDQv9GA0L7QvNC10L3QuNGC0LUg0L/QvtC00LDQstCw0L3QtdGC0L4uIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTcxCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjI2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdG9wcGVkIGF0ICRzaGExX2FiYnJldi4uLiAkcmVzdCIKIG1zZ3N0ciAi0KHQv9C40YDQsNC90LUg0L/RgNC4IOKAniRzaGExX2FiYnJlduKApuKAnCAkcmVzdCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU4NgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY0MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90ICckc3F1YXNoX3N0eWxlJyB3aXRob3V0IGEgcHJldmlvdXMgY29tbWl0IgogbXNnc3RyICLQkdC10Lcg0L/RgNC10LTRhdC+0LTQvdC+INC/0L7QtNCw0LLQsNC90LUg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9C/0YrQu9C90Lgg4oCeJHNxdWFzaF9zdHlsZeKAnCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYyOAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY4MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRXhlY3V0aW5nOiAkcmVzdCIKIG1zZ3N0ciAi0JIg0LzQvtC80LXQvdGC0LAg0YHQtSDQuNC30L/RitC70L3Rj9Cy0LA6ICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjM2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJFeGVjdXRpb24gZmFpbGVkOiAkcmVzdCIKIG1zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1OiAkcmVzdCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYzOAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY5MwogbXNnaWQgImFuZCBtYWRlIGNoYW5nZXMgdG8gdGhlIGluZGV4IGFuZC9vciB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICLQuCDQv9GA0L7QvNC10L3QuCDQuNC90LTQtdC60YHQsCDQuC/QuNC70Lgg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NDAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTUKIG1zZ2lkICIiCiAiWW91IGNhbiBmaXggdGhlIHByb2JsZW0sIGFuZCB0aGVuIHJ1blxuIgogIlxuIgpAQCAtMjA2NDcsNyArMjQzODYsNyBAQAogIiAgICBnaXQgcmViYXNlIC0tY29udGludWUiCiAKICMuIFRSQU5TTEFUT1JTOiBhZnRlciB0aGVzZSBsaW5lcyBpcyBhIGNvbW1hbmQgdG8gYmUgaXNzdWVkIGJ5IHRoZSB1c2VyCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjUzCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzA4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiRXhlY3V0aW9uIHN1Y2NlZWRlZDogJHJlc3RcbiIKQEAgLTIwNjYyLDI1ICsyNDQwMSwyNSBAQAogIlxuIgogIiAgICBnaXQgcmViYXNlIC0tY29udGludWUiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NjQKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MTkKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVua25vd24gY29tbWFuZDogJGNvbW1hbmQgJHNoYTEgJHJlc3QiCiBtc2dzdHIgItCd0LXQv9C+0LfQvdCw0YLQsCDQutC+0LzQsNC90LTQsDogJGNvbW1hbmQgJHNoYTEgJHJlc3QiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NjUKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MjAKIG1zZ2lkICJQbGVhc2UgZml4IHRoaXMgdXNpbmcgJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nLiIKIG1zZ3N0ciAi0JrQvtGA0LjQs9C40YDQsNC50YLQtSDRgtC+0LLQsCDRh9GA0LXQtyDigJ5naXQgcmViYXNlIC0tZWRpdC10b2Rv4oCcLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcwMAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc1NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VjY2Vzc2Z1bGx5IHJlYmFzZWQgYW5kIHVwZGF0ZWQgJGhlYWRfbmFtZS4iCiBtc2dzdHIgItCj0YHQv9C10YjQvdC+INC/0YDQtdCx0LDQt9C40YDQsNC90LUg0Lgg0L7QsdC90L7QstGP0LLQsNC90LUg0L3QsCDigJ4kaGVhZF9uYW1l4oCcLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc1NworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgxMgogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgQ0hFUlJZX1BJQ0tfSEVBRCIKIG1zZ3N0ciAi0KPQutCw0LfQsNGC0LXQu9GP0YIg4oCeQ0hFUlJZX1BJQ0tfSEVBROKAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LjQt9GC0YDQuNGCIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzYyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODE3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuXG4iCkBAIC0yMDcxMCwxMSArMjQ0NDksMTEgQEAKICJcbiIKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NzkKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MzQKIG1zZ2lkICJFcnJvciB0cnlpbmcgdG8gZmluZCB0aGUgYXV0aG9yIGlkZW50aXR5IHRvIGFtZW5kIGNvbW1pdCIKIG1zZ3N0ciAi0J3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INC+0YLQutGA0LjRgiDQsNCy0YLQvtGAINC30LAg0L/QvtC/0YDQsNCy0Y/QvdC10YLQviDQvdCwINC/0L7QtNCw0LLQsNC90LXRgtC+IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzg0CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODM5CiBtc2dpZCAiIgogIllvdSBoYXZlIHVuY29tbWl0dGVkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuIFBsZWFzZSBjb21taXQgdGhlbVxuIgogImZpcnN0IGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJyBhZ2Fpbi4iCkBAIC0yMDcyMiwzMyArMjQ0NjEsMzMgQEAKICLQkiDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviDQuNC80LAg0L3QtdC/0L7QtNCw0LTQtdC90Lgg0L/RgNC+0LzQtdC90LguICDQn9GK0YDQstC+INCz0Lgg0L/QvtC00LDQudGC0LUsINCwINGB0LvQtdC0INGC0L7QstCwXG4iCiAi0L7RgtC90L7QstC+INC40LfQv9GK0LvQvdC10YLQtSDigJ5naXQgcmViYXNlIC0tY29udGludWXigJwuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzg5IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3OTMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NDQgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg0OAogbXNnaWQgIkNvdWxkIG5vdCBjb21taXQgc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICLQn9GA0L7QvNC10L3QuNGC0LUg0LIg0LjQvdC00LXQutGB0LAg0L3QtSDQvNC+0LPQsNGCINC00LAg0LHRitC00LDRgiDQv9C+0LTQsNC00LXQvdC4LiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgyNCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTEwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODc5IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NjUKIG1zZ2lkICJDb3VsZCBub3QgZXhlY3V0ZSBlZGl0b3IiCiBtc2dzdHIgItCi0LXQutGB0YLQvtCy0LjRj9GCINGA0LXQtNCw0LrRgtC+0YAg0L3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGB0YLQsNGA0YLQuNGA0LDQvSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg0NQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGNoZWNrb3V0ICRzd2l0Y2hfdG8iCiBtc2dzdHIgIuKAniRzd2l0Y2hfdG/igJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9GC0LXQs9C70LgiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NTIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDcKIG1zZ2lkICJObyBIRUFEPyIKIG1zZ3N0ciAi0JvQuNC/0YHQstCwINGD0LrQsNC30LDRgtC10Lsg4oCeSEVBROKAnCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1MworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwOAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJHN0YXRlX2RpciIKIG1zZ3N0ciAi0JLRgNC10LzQtdC90L3QsNGC0LAg0LTQuNGA0LXQutGC0L7RgNC40Y8g4oCeJHN0YXRlX2RpcuKAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRitC30LTQsNC00LXQvdCwIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODU2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTExCiBtc2dpZCAiQ291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCiBtc2dzdHIgItCf0YDQtdCx0LDQt9C40YDQsNC90LXRgtC+INC90LUg0LUg0LjQvdGC0LXRgNCw0LrRgtC40LLQvdC+IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODg4CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTQzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJSZWJhc2UgJHNob3J0cmV2aXNpb25zIG9udG8gJHNob3J0b250byAoJHRvZG9jb3VudCBjb21tYW5kKSIKIG1zZ2lkX3BsdXJhbCAiUmViYXNlICRzaG9ydHJldmlzaW9ucyBvbnRvICRzaG9ydG9udG8gKCR0b2RvY291bnQgY29tbWFuZHMpIgpAQCAtMjA3NTcsNyArMjQ0OTYsMTEgQEAKIG1zZ3N0clsxXSAiIgogItCf0YDQtdCx0LDQt9C40YDQsNC90LUg0L3QsCAkc2hvcnRyZXZpc2lvbnMg0LLRitGA0YXRgyAkc2hvcnRvbnRvICgkdG9kb2NvdW50INC60L7QvNCw0L3QtNC4KSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0MiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTQ3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTU1Cittc2dpZCAiTm90ZSB0aGF0IGVtcHR5IGNvbW1pdHMgYXJlIGNvbW1lbnRlZCBvdXQiCittc2dzdHIgItCf0YDQsNC30L3QuNGC0LUg0L/QvtC00LDQstCw0L3QuNGPINGB0LAg0LrQvtC80LXQvdGC0LjRgNCw0L3QuCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk5NyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTAwMgogbXNnaWQgIkNvdWxkIG5vdCBpbml0IHJld3JpdHRlbiBjb21taXRzIgogbXNnc3RyICLQodC/0LjRgdGK0LrRitGCINGBINC/0YDQtdC30LDQv9C40YHQsNC90LjRgtC1INC/0L7QtNCw0LLQsNC90LjRjyDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YHRitC30LTQsNC00LXQvSIKIApAQCAtMjA3NjYsMTQ0ICsyNDUwOSw4MiBAQAogbXNnaWQgInVzYWdlOiAkZGFzaGxlc3MgJFVTQUdFIgogbXNnc3RyICLQo9C/0L7RgtGA0LXQsdCwOiAkZGFzaGxlc3MgJFVTQUdFIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MTkwCisjOiBnaXQtc2gtc2V0dXAuc2g6MTkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgY2hkaXIgdG8gJGNkdXAsIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICIiCiAi0J3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L/RgNC10LzQuNC90LUg0LrRitC8IOKAniRjZHVw4oCcIOKAlCDQvtGB0L3QvtCy0L3QsNGC0LAg0LTQuNGA0LXQutGC0L7RgNC40Y8g0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQvi4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoxOTkgZ2l0LXNoLXNldHVwLnNoOjIwNgorIzogZ2l0LXNoLXNldHVwLnNoOjIwMCBnaXQtc2gtc2V0dXAuc2g6MjA3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJmYXRhbDogJHByb2dyYW1fbmFtZSBjYW5ub3QgYmUgdXNlZCB3aXRob3V0IGEgd29ya2luZyB0cmVlLiIKIG1zZ3N0ciAiIgogItCk0JDQotCQ0JvQndCQINCT0KDQldCo0JrQkDog4oCeJHByb2dyYW1fbmFtZeKAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9C+0LvQt9Cy0LAg0LHQtdC3INGA0LDQsdC+0YLQvdC+INC00YrRgNCy0L4uIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjIwCisjOiBnaXQtc2gtc2V0dXAuc2g6MjIxCiBtc2dpZCAiQ2Fubm90IHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgItCd0LUg0LzQvtC20LUg0LTQsCDQv9GA0LXQsdCw0LfQuNGA0LDRgtC1LCDQt9Cw0YnQvtGC0L4g0LjQvNCwINC/0YDQvtC80LXQvdC4LCDQutC+0LjRgtC+INC90LUg0YHQsCDQsiDQuNC90LTQtdC60YHQsC4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjMKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjQKIG1zZ2lkICJDYW5ub3QgcmV3cml0ZSBicmFuY2hlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICLQndC1INC80L7QttC1INC00LAg0L/RgNC10LfQsNC/0LjRiNC10YLQtSDQutC70L7QvdC40YLQtSwg0LfQsNGJ0L7RgtC+INC40LzQsCDQv9GA0L7QvNC10L3QuCwg0LrQvtC40YLQviDQvdC1INGB0LAg0LIg0LjQvdC00LXQutGB0LAuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjI2CisjOiBnaXQtc2gtc2V0dXAuc2g6MjI3CiBtc2dpZCAiQ2Fubm90IHB1bGwgd2l0aCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAi0J3QtSDQvNC+0LbQtdGC0LUg0LTQsCDQuNC30LTRitGA0L/QstCw0YLQtSDQv9GA0Lgg0YLQvtCy0LAg0L/RgNC10LHQsNC30LjRgNCw0L3QtSwg0LfQsNGJ0L7RgtC+INC40LzQsCDQv9GA0L7QvNC10L3QuCwg0LrQvtC40YLQviDQvdC1ICIKICLRgdCwINCyINC40L3QtNC10LrRgdCwLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjIyOQorIzogZ2l0LXNoLXNldHVwLnNoOjIzMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90ICRhY3Rpb246IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAi0J3QtSDQvNC+0LbQtdGC0LUg0LTQsCDQuNC30L/RitC70L3QuNGC0LUg4oCeJGFjdGlvbuKAnCwg0LfQsNGJ0L7RgtC+INC40LzQsCDQv9GA0L7QvNC10L3QuCwg0LrQvtC40YLQviDQvdC1INGB0LAg0LIg0LjQvdC00LXQutGB0LAuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQyCisjOiBnaXQtc2gtc2V0dXAuc2g6MjQzCiBtc2dpZCAiQ2Fubm90IHJlYmFzZTogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAi0J3QtSDQvNC+0LbQtSDQtNCwINC/0YDQtdCx0LDQt9C40YDQsNGC0LUsINC30LDRidC+0YLQviDQsiDQuNC90LTQtdC60YHQsCDQuNC80LAg0L3QtdC/0L7QtNCw0LTQtdC90Lgg0L/RgNC+0LzQtdC90LguIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQ1CisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ2CiBtc2dpZCAiQ2Fubm90IHB1bGwgd2l0aCByZWJhc2U6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICLQndC1INC80L7QttC10YLQtSDQtNCwINC40LfQtNGK0YDQv9Cy0LDRgtC1INC/0YDQuCDRgtC+0LLQsCDQv9GA0LXQsdCw0LfQuNGA0LDQvdC1LCDQt9Cw0YnQvtGC0L4g0LIg0LjQvdC00LXQutGB0LAg0LjQvNCwICIKICLQvdC10L/QvtC00LDQtNC10L3QuCDQv9GA0L7QvNC10L3QuC4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyNDgKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNDkKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCAkYWN0aW9uOiBZb3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAi0J3QtSDQvNC+0LbQtdGC0LUg0LTQsCDQuNC30L/RitC70L3QuNGC0LUg4oCeJGFjdGlvbuKAnCwg0LfQsNGJ0L7RgtC+INCyINC40L3QtNC10LrRgdCwINC40LzQsCDQvdC10L/QvtC00LDQtNC10L3QuCDQv9GA0L7QvNC10L3QuC4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyNTIKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNTMKIG1zZ2lkICJBZGRpdGlvbmFsbHksIHlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgItCe0YHQstC10L0g0YLQvtCy0LAg0LIg0LjQvdC00LXQutGB0LAg0LjQvNCwINC90LXQv9C+0LTQsNC00LXQvdC4INC/0YDQvtC80LXQvdC4LiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjM3MgorIzogZ2l0LXNoLXNldHVwLnNoOjM3MwogbXNnaWQgIllvdSBuZWVkIHRvIHJ1biB0aGlzIGNvbW1hbmQgZnJvbSB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZS4iCiBtc2dzdHIgIiIKICLQotCw0LfQuCDQutC+0LzQsNC90LTQsCDRgtGA0Y/QsdCy0LAg0LTQsCDRgdC1INC40LfQv9GK0LvQvdC4INC+0YIg0L7RgdC90L7QstC90LDRgtCwINC00LjRgNC10LrRgtC+0YDQuNGPINC90LAg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDozNzcKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzgKIG1zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIGFic29sdXRlIHBhdGggb2YgZ2l0IGRpcmVjdG9yeSIKIG1zZ3N0ciAi0JDQsdGB0L7Qu9GO0YLQvdC40Y/RgiDQv9GK0YIg0L3QsCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtC/0YDQtdC00LXQu9C4IgogCiAjLiBUUkFOU0xBVE9SUzogeW91IGNhbiBhZGp1c3QgdGhpcyB0byBhbGlnbiAiZ2l0IGFkZCAtaSIgc3RhdHVzIG1lbnUKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTk2CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIlMTJzICUxMnMgJXMiCiBtc2dzdHIgIiUxNHMgJTE0cyAlcyIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJzdGFnZWQiCi1tc2dzdHIgItCyINC40L3QtNC10LrRgdCwIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NwotbXNnaWQgInVuc3RhZ2VkIgotbXNnc3RyICLQuNC30LLRitC9INC40L3QtNC10LrRgdCwIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI1MyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI3OAotbXNnaWQgImJpbmFyeSIKLW1zZ3N0ciAi0LTQstC+0LjRh9C90L4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjYyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzE2Ci1tc2dpZCAibm90aGluZyIKLW1zZ3N0ciAi0L3QuNGJ0L4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjk4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzEzCi1tc2dpZCAidW5jaGFuZ2VkIgotbXNnc3RyICLQvdGP0LzQsCDQv9GA0L7QvNC10L3QuCIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MDkKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiYWRkZWQgJWQgcGF0aFxuIgotbXNnaWRfcGx1cmFsICJhZGRlZCAlZCBwYXRoc1xuIgotbXNnc3RyWzBdICIlZCDRhNCw0LnQuyDQtNC+0LHQsNCy0LXQvVxuIgotbXNnc3RyWzFdICIlZCDRhNCw0LnQu9CwINC00L7QsdCw0LLQtdC90LhcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAidXBkYXRlZCAlZCBwYXRoXG4iCi1tc2dpZF9wbHVyYWwgInVwZGF0ZWQgJWQgcGF0aHNcbiIKLW1zZ3N0clswXSAiJWQg0YTQsNC50Lsg0L7QsdC90L7QstC10L1cbiIKLW1zZ3N0clsxXSAiJWQg0YTQsNC50LvQsCDQvtCx0L3QvtCy0LXQvdC4XG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjE1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgInJldmVydGVkICVkIHBhdGhcbiIKLW1zZ2lkX3BsdXJhbCAicmV2ZXJ0ZWQgJWQgcGF0aHNcbiIKLW1zZ3N0clswXSAiJWQg0YTQsNC50Lsg0YEg0L7RgtC80LXQvdC10L3QuCDQv9GA0L7QvNC10L3QuFxuIgotbXNnc3RyWzFdICIlZCDRhNCw0LnQu9CwINGBINC+0YLQvNC10L3QtdC90Lgg0L/RgNC+0LzQtdC90LhcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjM0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgInRvdWNoZWQgJWQgcGF0aFxuIgogbXNnaWRfcGx1cmFsICJ0b3VjaGVkICVkIHBhdGhzXG4iCiBtc2dzdHJbMF0gIiVkINGE0LDQudC7INC30LDRgdC10LPQvdCw0YJcbiIKIG1zZ3N0clsxXSAiJWQg0YTQsNC50LvQsCDQt9Cw0YHQtdCz0L3QsNGC0LhcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MjcKLW1zZ2lkICJVcGRhdGUiCi1tc2dzdHIgItCe0LHQvdC+0LLRj9Cy0LDQvdC1IgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzOQotbXNnaWQgIlJldmVydCIKLW1zZ3N0ciAi0J7RgtC80Y/QvdCwIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY2MgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJub3RlOiAlcyBpcyB1bnRyYWNrZWQgbm93LlxuIgotbXNnc3RyICLQkdCV0JvQldCW0JrQkDog4oCeJXPigJwg0LLQtdGH0LUg0L3QtSDRgdC1INGB0LvQtdC00LguXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjczCi1tc2dpZCAiQWRkIHVudHJhY2tlZCIKLW1zZ3N0ciAi0JTQvtCx0LDQstGP0L3QtSDQvdCwINC90LXRgdC70LXQtNC10L3QuCIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NzkKLW1zZ2lkICJObyB1bnRyYWNrZWQgZmlsZXMuXG4iCi1tc2dzdHIgItCd0Y/QvNCwINC90LXRgdC70LXQtNC10L3QuCDRhNCw0LnQu9C+0LLQtS5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDMzCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTMKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHN0YWdpbmcuIgpAQCAtMjA5MTIsNyArMjQ1OTMsNyBAQAogItC90LXQt9Cw0LHQsNCy0L3QvlxuIgogItC00L7QsdCw0LLQtdC90L4g0LrRitC8INC40L3QtNC10LrRgdCwIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwMzYKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA1NgogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3Igc3Rhc2hpbmcuIgpAQCAtMjA5MjEsNyArMjQ2MDIsNyBAQAogItC90LXQt9Cw0LHQsNCy0L3QvlxuIgogItGB0LrRitGC0LDQvdC+IgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwMzkKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA1OQogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3IgdW5zdGFnaW5nLiIKQEAgLTIwOTMwLDcgKzI0NjExLDggQEAKICLQvdC10LfQsNCx0LDQstC90L5cbiIKICLQuNC30LLQsNC00LXQvdC+INC+0YIg0LjQvdC00LXQutGB0LAuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNDIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDUxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDcxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNzcKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIGFwcGx5aW5nLiIKQEAgLTIwOTM5LDcgKzI0NjIxLDggQEAKICLQvdC10LfQsNCx0LDQstC90L5cbiIKICLQvdCw0LHQtdC70Y/Qt9Cw0L3QviDQt9CwINC/0YDQuNC70LDQs9Cw0L3QtS4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA0NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNDgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA2NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNjgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA3NAogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3IgZGlzY2FyZGluZy4iCkBAIC0yMDk0OCwxNiArMjQ2MzEsMTIgQEAKICLQvdC10LfQsNCx0LDQstC90L5cbiIKICLQvdCw0LHQtdC70Y/Qt9Cw0L3QviDQt9CwINC30LDQvdGD0LvRj9Cy0LDQvdC1LiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDg1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTEKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gaHVuayBlZGl0IGZpbGUgZm9yIHdyaXRpbmc6ICVzIgogbXNnc3RyICLRhNCw0LnQu9GK0YIg0LfQsCDRgNC10LTQsNC60YLQuNGA0LDQvdC1INC90LAg0L/QsNGA0YfQtdGC0L4g0LrQvtC0INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LLQvtGA0LXQvTog4oCeJXPigJwiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA4NgotbXNnaWQgIk1hbnVhbCBodW5rIGVkaXQgbW9kZSAtLSBzZWUgYm90dG9tIGZvciBhIHF1aWNrIGd1aWRlLlxuIgotbXNnc3RyICLQoNGK0YfQvdC+INGA0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDQv9Cw0YDRh9C10YLQsCDQutC+0LQg4oCUINC+0YLQtNC+0LvRgyDQuNC80LAg0L/QvtC00YHQutCw0LfQutCwLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwOTIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiLS0tXG4iCkBAIC0yMDk3MSwzOCArMjQ2NTAsMTMgQEAKICLQl9CwINC00LAg0L/RgNC+0L/Rg9GB0L3QtdGC0LUg0YDQtdC00L7QstC10YLQtSDQt9Cw0L/QvtGH0LLQsNGJ0Lgg0YEg4oCeJXPigJwg4oCUINC40LfRgtGA0LjQudGC0LUg0LPQuC5cbiIKICLQoNC10LTQvtCy0LXRgtC1LCDQutC+0LjRgtC+INC30LDQv9C+0YfQstCw0YIg0YEg4oCeJXPigJwg0YnQtSDQsdGK0LTQsNGCINC/0YDQvtC/0YPRgdC90LDRgtC4LlxuIgogCi0jLiBUUkFOU0xBVE9SUzogJ2l0JyByZWZlcnMgdG8gdGhlIHBhdGNoIG1lbnRpb25lZCBpbiB0aGUgcHJldmlvdXMgbWVzc2FnZXMuCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMDAKLW1zZ2lkICIiCi0iSWYgaXQgZG9lcyBub3QgYXBwbHkgY2xlYW5seSwgeW91IHdpbGwgYmUgZ2l2ZW4gYW4gb3Bwb3J0dW5pdHkgdG9cbiIKLSJlZGl0IGFnYWluLiAgSWYgYWxsIGxpbmVzIG9mIHRoZSBodW5rIGFyZSByZW1vdmVkLCB0aGVuIHRoZSBlZGl0IGlzXG4iCi0iYWJvcnRlZCBhbmQgdGhlIGh1bmsgaXMgbGVmdCB1bmNoYW5nZWQuXG4iCi1tc2dzdHIgIiIKLSLQkNC60L4g0LUg0L3QtdCy0YrQt9C80L7QttC90L4g0YfQuNGB0YLQviDQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDQutC+0LTQsCwg0YnQtSDQvNC+0LbQtSDQv9Cw0Log0LTQsCDRgNC10LTQsNC60YLQuNGA0LDRgtC1LiAg0JDQutC+XG4iCi0i0LjQt9GC0YDQuNC10YLQtSDQstGB0LjRh9C60Lgg0YDQtdC00L7QstC1INC+0YIg0L/QsNGA0YfQtdGC0L4g0LrQvtC0LCDRgtC+INGJ0LUg0LHRitC00LUg0L7RgdGC0LDQstC10L3QviDQvdC10L/RgNC+0LzQtdC90LXQvdC+LCDQsFxuIgotItGA0LXQtNCw0LrRgtC40YDQsNC90LXRgtC+IOKAlCDQvtGC0LrQsNC30LDQvdC+LlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTE0MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3IgcmVhZGluZzogJXMiCiBtc2dzdHIgIiIKICLRhNCw0LnQu9GK0YIg0LfQsCDRgNC10LTQsNC60YLQuNGA0LDQvdC1INC90LAg0L/QsNGA0YfQtdGC0L4g0LrQvtC0INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LLQvtGA0LXQvSDQt9CwINGH0LXRgtC10L3QtTog4oCeJXPigJwiCiAKLSMuIFRSQU5TTEFUT1JTOiBkbyBub3QgdHJhbnNsYXRlIFt5L25dCi0jLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IHRoYXQgaW5wdXQKLSMuIGF0IHRoaXMgcG9pbnQuCi0jLiBDb25zaWRlciB0cmFuc2xhdGluZyAoc2F5aW5nICJubyIgZGlzY2FyZHMhKSBhcwotIy4gKHNheWluZyAibiIgZm9yICJubyIgZGlzY2FyZHMhKSBpZiB0aGUgdHJhbnNsYXRpb24KLSMuIG9mIHRoZSB3b3JkICJubyIgZG9lcyBub3Qgc3RhcnQgd2l0aCBuLgotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjEzCi1tc2dpZCAiIgotIllvdXIgZWRpdGVkIGh1bmsgZG9lcyBub3QgYXBwbHkuIEVkaXQgYWdhaW4gKHNheWluZyBcIm5vXCIgZGlzY2FyZHMhKSBbeS9uXT8gIgotbXNnc3RyICIiCi0i0KDQtdC00LDQutGC0LjRgNCw0L3QvtGC0L4g0L/QsNGA0YfQtSDQvdC1INC80L7QttC1INC00LAg0YHQtSDQv9GA0LjQu9C+0LbQuC4gINCU0LAg0YHQtSDQv9GA0L7QtNGK0LvQttC4INC70Lgg0YEgIgotItGA0LXQtNCw0LrRgtC40YDQsNC90LXRgtC+PyAo0YLQtdC60YPRidC40YLQtSDRgNC10LTQsNC60YbQuNC4INGJ0LUg0YHQtSDQvtGC0LzQtdC90Y/RgiDQv9GA0Lgg0L7RgtC60LDQtyEpOiDigJ554oCcICjQtNCwKS8gIgotIuKAnm7igJwgKNC90LUpPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIyMgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjQ4CiBtc2dpZCAiIgogInkgLSBzdGFnZSB0aGlzIGh1bmtcbiIKICJuIC0gZG8gbm90IHN0YWdlIHRoaXMgaHVua1xuIgpAQCAtMjEwMTYsNyArMjQ2NzAsNyBAQAogImEg4oCUINC00L7QsdCw0LLRj9C90LUg0L3QsCDRgtC+0LLQsCDQuCDQstGB0LjRh9C60Lgg0YHQu9C10LTQstCw0YnQuCDQv9Cw0YDRh9C10YLQsCDQvtGCINGE0LDQudC70LAg0LIg0LjQvdC00LXQutGB0LBcbiIKICJkIOKAlCDQsdC10Lcg0LTQvtCx0LDQstGP0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsCDQsiDQuNC90LTQtdC60YHQsCIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjI4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNTQKIG1zZ2lkICIiCiAieSAtIHN0YXNoIHRoaXMgaHVua1xuIgogIm4gLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rXG4iCkBAIC0yMTAzMCw3ICsyNDY4NCw3IEBACiAiYSDigJQg0YHQutCw0YLQsNCy0LDQvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INGB0LvQtdC00LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LAg0L7RgiDRhNCw0LnQu9CwXG4iCiAiZCDigJQg0LHQtdC3INGB0LrQsNGC0LDQstCw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsCIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjM0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNjAKIG1zZ2lkICIiCiAieSAtIHVuc3RhZ2UgdGhpcyBodW5rXG4iCiAibiAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVua1xuIgpAQCAtMjEwNDQsNyArMjQ2OTgsNyBAQAogImEg4oCUINC40LfQstCw0LbQtNCw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsCDQvtGCINC40L3QtNC10LrRgdCwXG4iCiAiZCDigJQg0LHQtdC3INC40LfQstCw0LbQtNCw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsCDQvtGCINC40L3QtNC10LrRgdCwIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNDAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI2NgogbXNnaWQgIiIKICJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4XG4iCiAibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKQEAgLTIxMDU4LDcgKzI0NzEyLDcgQEAKICJhIOKAlCDQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDRgtC+0LLQsCDQuCDQstGB0LjRh9C60Lgg0YHQu9C10LTQstCw0YnQuCDQv9Cw0YDRh9C10YLQsCDQvtGCINGE0LDQudC70LAg0LrRitC8INC40L3QtNC10LrRgdCwXG4iCiAiZCDigJQg0LHQtdC3INC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsCDQutGK0Lwg0LjQvdC00LXQutGB0LAiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0NgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5MAogbXNnaWQgIiIKICJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgogIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgpAQCAtMjEwNzUsNyArMjQ3MjksNyBAQAogImQg4oCUINCx0LXQtyDQv9GA0LXQvNCw0YXQstCw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsCDQvtGCINGA0LDQsdC+0YLQvdC+0YLQviAiCiAi0LTRitGA0LLQviIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjUyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNzgKIG1zZ2lkICIiCiAieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCiAibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgpAQCAtMjEwOTIsNyArMjQ3NDYsNyBAQAogImQg4oCUINCx0LXQtyDQv9GA0LXQvNCw0YXQstCw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsCDQvtGCINC40L3QtNC10LrRgdCwINC4ICIKICLRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjU4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyODQKIG1zZ2lkICIiCiAieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKICJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKQEAgLTIxMTA5LDcgKzI0NzYzLDIxIEBACiAiZCDigJQg0LHQtdC3INC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsCDQvtGCINC40L3QtNC10LrRgdCwINC4ICIKICLRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjczCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyOTYKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKyJ5IOKAlCDQv9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDQv9Cw0YDRh9C10YLQviDQutGK0Lwg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L5cbiIKKyJuIOKAlCDQsdC10Lcg0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0L/QsNGA0YfQtdGC0L4g0LrRitC8INGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+XG4iCisicSDigJQg0LjQt9GF0L7QtCwg0LHQtdC3INC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDQvtGB0YLQsNCy0LDRidC4INC/0LDRgNGH0LXRgtCwXG4iCisiYSDigJQg0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0YLQvtCy0LAg0Lgg0LLRgdC40YfQutC4INGB0LvQtdC00LLQsNGJ0Lgg0L/QsNGA0YfQtdGC0LAg0L7RgiDRhNCw0LnQu9CwXG4iCisiZCDigJQg0LHQtdC3INC/0YDQuNC70LDQs9Cw0L3QtSDQvdCwINGC0L7QstCwINC4INCy0YHQuNGH0LrQuCDRgdC70LXQtNCy0LDRidC4INC/0LDRgNGH0LXRgtCwINC+0YIg0YTQsNC50LvQsCIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzExCiBtc2dpZCAiIgogImcgLSBzZWxlY3QgYSBodW5rIHRvIGdvIHRvXG4iCiAiLyAtIHNlYXJjaCBmb3IgYSBodW5rIG1hdGNoaW5nIHRoZSBnaXZlbiByZWdleFxuIgpAQCAtMjExMzEsMjIwICsyNDc5OSw4NyBAQAogImUg4oCUINGA0YrRh9C90L4g0YDQtdC00LDQutGC0LjRgNCw0L3QtSDQvdCwINGC0LXQutGD0YnQvtGC0L4g0L/QsNGA0YfQtVxuIgogIj8g4oCUINC40LfQstC10LbQtNCw0L3QtSDQvdC1INC/0L7QvNC+0YnRgtCwXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQyCiBtc2dpZCAiVGhlIHNlbGVjdGVkIGh1bmtzIGRvIG5vdCBhcHBseSB0byB0aGUgaW5kZXghXG4iCiBtc2dzdHIgItCY0LfQsdGA0LDQvdC40YLQtSDQv9Cw0YDRh9C10YLQsCDQvdC1INC80L7Qs9Cw0YIg0LTQsCDRgdC1INC00L7QsdCw0LLRj9GCINCyINC40L3QtNC10LrRgdCwIVxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMDUKLW1zZ2lkICJBcHBseSB0aGVtIHRvIHRoZSB3b3JrdHJlZSBhbnl3YXk/ICIKLW1zZ3N0ciAi0JTQsCDRgdC1INC/0YDQuNC70L7QttCw0YIg0LvQuCDQutGK0Lwg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzA4Ci1tc2dpZCAiTm90aGluZyB3YXMgYXBwbGllZC5cbiIKLW1zZ3N0ciAi0J3QuNGJ0L4g0L3QtSDQtSDQv9GA0LjQu9C+0LbQtdC90L4uXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMxOQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzU3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIHVubWVyZ2VkOiAlc1xuIgogbXNnc3RyICLQv9GA0LXQvdC10LHRgNC10LPQstCw0L3QtSDQvdCwINC90LXRgdC70Y/RgtC+0YLQvjog4oCeJXPigJxcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzI4Ci1tc2dpZCAiT25seSBiaW5hcnkgZmlsZXMgY2hhbmdlZC5cbiIKLW1zZ3N0ciAi0KHQsNC80L4g0LTQstC+0LjRh9C90Lgg0YTQsNC50LvQvtCy0LUg0YHQsCDQv9GA0L7QvNC10L3QtdC90LguXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMzMAotbXNnaWQgIk5vIGNoYW5nZXMuXG4iCi1tc2dzdHIgItCd0Y/QvNCwINC/0YDQvtC80LXQvdC4LlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMzgKLW1zZ2lkICJQYXRjaCB1cGRhdGUiCi1tc2dzdHIgItCe0LHQvdC+0LLRj9Cy0LDQvdC1INC90LAg0LrRgNGK0L/QutCwIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2OAogIywgcGVybC1mb3JtYXQKLW1zZ2lkICJTdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAi0JTQvtCx0LDQstGP0L3QtSDQvdCwINC/0YDQvtC80Y/QvdCw0YLQsCDQvdCwINC/0YDQsNCy0LDRgtCwINC30LAg0LTQvtGB0YLRitC/IFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTEKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgItCU0L7QsdCw0LLRj9C90LUg0L3QsCDQuNC30YLRgNC40LLQsNC90LXRgtC+IFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLQlNC+0LHQsNCy0Y/QvdC1INC90LAg0YLQvtCy0LAg0L/QsNGA0YfQtSBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzk1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YXNoIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLQodC60LDRgtCw0LLQsNC90LUg0L3QsCDQv9GA0L7QvNGP0L3QsNGC0LAg0L3QsCDQv9GA0LDQstCw0YLQsCDQt9CwINC00L7RgdGC0YrQvyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzk2Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YXNoIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLQodC60LDRgtCw0LLQsNC90LUg0L3QsCDQuNC30YLRgNC40LLQsNC90LXRgtC+IFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTcKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3Rhc2ggdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLQodC60LDRgtCw0LLQsNC90LUg0L3QsCDRgtC+0LLQsCDQv9Cw0YDRh9C1IFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDAKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiVW5zdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAi0JjQt9Cy0LDQttC00LDQvdC1INC90LAg0L/RgNC+0LzRj9C90LDRgtCwINC90LAg0L/RgNCw0LLQsNGC0LAg0LfQsCDQtNC+0YHRgtGK0L8gW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwMQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJVbnN0YWdlIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLQmNC30LLQsNC20LTQsNC90LUg0L3QsCDQuNC30YLRgNC40LLQsNC90LXRgtC+IFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiVW5zdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgItCY0LfQstCw0LbQtNCw0L3QtSDQvdCwINGC0L7QstCwINC/0LDRgNGH0LUgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwNQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKIG1zZ3N0ciAiIgotItCf0YDQuNC70LDQs9Cw0L3QtSDQvdCwINC/0YDQvtC80Y/QvdCw0YLQsCDQvdCwINC/0YDQsNCy0LDRgtCwINC30LAg0LTQvtGB0YLRitC/INC60YrQvCDQuNC90LTQtdC60YHQsCBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDA2Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLQn9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDQuNC30YLRgNC40LLQsNC90LXRgtC+INC60YrQvCDQuNC90LTQtdC60YHQsCBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDA3Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAi0J/RgNC40LvQsNCz0LDQvdC1INC90LAg0YLQvtCy0LAg0L/QsNGA0YfQtSDQutGK0Lwg0LjQvdC00LXQutGB0LAgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxMAotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLSLQn9GA0LXQvNCw0YXQstCw0L3QtSDQvdCwINC/0YDQvtC80Y/QvdCw0YLQsCDQsiDQv9GA0LDQstCw0YLQsCDQt9CwINC00L7RgdGC0YrQvyDQvtGCINGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IFt5LG4scSxhLGQiCisi0J/RgNC40LvQsNCz0LDQvdC1INC90LAg0L/RgNC+0LzRj9C90LDRgtCwINCyINC/0YDQsNCy0LDRgtCwINC30LAg0LTQvtGB0YLRitC/INC60YrQvCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviBbeSxuLHEsYSxkIgogIiVzLD9dPyAiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxMQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY5CiAjLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAi0J/RgNC10LzQsNGF0LLQsNC90LUg0L3QsCDQuNC30YLRgNC40LLQsNC90LXRgtC+INC+0YIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4gW3ksbixxLGEsZCVzLD9dPyAiCittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgItCf0YDQuNC70LDQs9Cw0L3QtSDQvdCwINC40LfRgtGA0LjQstCw0L3QtdGC0L4g0LrRitC8INGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IFt5LG4scSxhLGQlcyw/XT8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ3MAogIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLQn9GA0LXQvNCw0YXQstCw0L3QtSDQvdCwINC/0LDRgNGH0LXRgtC+INC+0YIg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4gW3ksbixxLGEsZCVzLD9dPyAiCittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLQn9GA0LjQu9Cw0LPQsNC90LUg0L3QsCDQv9Cw0YDRh9C10YLQviDQutGK0Lwg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4gW3ksbixxLGEsZCVzLD9dPyAiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxNQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICIiCi0i0J/RgNC10LzQsNGF0LLQsNC90LUg0L3QsCDQv9GA0L7QvNGP0L3QsNGC0LAg0LIg0L/RgNCw0LLQsNGC0LAg0LfQsCDQtNC+0YHRgtGK0L8g0L7RgiDQuNC90LTQtdC60YHQsCDQuCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviBbeSwiCi0ibixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxNgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICIiCi0i0J/RgNC10LzQsNGF0LLQsNC90LUg0L3QsCDQuNC30YLRgNC40LLQsNC90LXRgtC+INC+0YIg0LjQvdC00LXQutGB0LAg0Lgg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4gW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxNwotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAi0J/RgNC10LzQsNGF0LLQsNC90LUg0L3QsCDQv9Cw0YDRh9C10YLQviDQvtGCINC40L3QtNC10LrRgdCwINC4INGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjAKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICIiCi0i0J/RgNC40LvQsNCz0LDQvdC1INC90LAg0L/RgNC+0LzRj9C90LDRgtCwINCyINC/0YDQsNCy0LDRgtCwINC30LAg0LTQvtGB0YLRitC/INC+0YIg0LjQvdC00LXQutGB0LAg0Lgg0YDQsNCx0L7RgtC90L7RgtC+INC00YrRgNCy0L4gW3ksbiwiCi0icSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjEKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICIiCi0i0J/RgNC40LvQsNCz0LDQvdC1INC90LAg0LjQt9GC0YDQuNCy0LDQvdC10YLQviDQvtGCINC40L3QtNC10LrRgdCwINC4INGA0LDQsdC+0YLQvdC+0YLQviDQtNGK0YDQstC+IFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAi0J/RgNC40LvQsNCz0LDQvdC1INC90LAg0L/QsNGA0YfQtdGC0L4g0L7RgiDQuNC90LTQtdC60YHQsCDQuCDRgNCw0LHQvtGC0L3QvtGC0L4g0LTRitGA0LLQviBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTIyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzAKIG1zZ2lkICJObyBvdGhlciBodW5rcyB0byBnb3RvXG4iCiBtc2dzdHIgItCd0Y/QvNCwINC00YDRg9Cz0Lgg0L/QsNGA0YfQtdGC0LBcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTI5Ci1tc2dpZCAiZ28gdG8gd2hpY2ggaHVuayAoPHJldD4gdG8gc2VlIG1vcmUpPyAiCi1tc2dzdHIgItC60YrQvCDQutC+0LUg0L/QsNGA0YfQtSDQtNCwINGB0LUg0L/RgNC40LTQstC40LbQuCAo0LfQsCDQv9C+0LLQtdGH0LUg0LLQsNGA0LjQsNC90YLQuCDQvdCw0YLQuNGB0L3QtdGC0LUg4oCeZW50ZXLigJwpPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTUzMQotbXNnaWQgImdvIHRvIHdoaWNoIGh1bms/ICIKLW1zZ3N0ciAi0LrRitC8INC60L7QtSDQv9Cw0YDRh9C1INC00LAg0YHQtSDQv9GA0LjQtNCy0LjQttC4PyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU0MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTg4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkludmFsaWQgbnVtYmVyOiAnJXMnXG4iCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvQtdC9INC90L7QvNC10YA6IOKAniVz4oCcXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU0NQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTkzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNvcnJ5LCBvbmx5ICVkIGh1bmsgYXZhaWxhYmxlLlxuIgogbXNnaWRfcGx1cmFsICJTb3JyeSwgb25seSAlZCBodW5rcyBhdmFpbGFibGUuXG4iCiBtc2dzdHJbMF0gItCY0LzQsCDRgdCw0LzQviAlZCDQv9Cw0YDRh9C1LlxuIgogbXNnc3RyWzFdICLQmNC80LAg0YHQsNC80L4gJWQg0L/QsNGA0YfQtdGC0LAuXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjE5CiBtc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gc2VhcmNoXG4iCiBtc2dzdHIgItCd0Y/QvNCwINC00YDRg9Cz0Lgg0L/QsNGA0YfQtdGC0LAg0LfQsCDRgtGK0YDRgdC10L3QtVxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzUKLW1zZ2lkICJzZWFyY2ggZm9yIHJlZ2V4PyAiCi1tc2dzdHIgItC00LAg0YHQtSDRgtGK0YDRgdC4INGBINGA0LXQs9GD0LvRj9GA0LXQvSDQuNC30YDQsNC3PyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU4OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjM2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIk1hbGZvcm1lZCBzZWFyY2ggcmVnZXhwICVzOiAlc1xuIgogbXNnc3RyICLQodCz0YDQtdGI0LXQvSDRgNC10LPRg9C70Y/RgNC10L0g0LjQt9GA0LDQtyDigJ4lc+KAnDogJXNcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTk4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NDYKIG1zZ2lkICJObyBodW5rIG1hdGNoZXMgdGhlIGdpdmVuIHBhdHRlcm5cbiIKIG1zZ3N0ciAi0J3QuNC60L7QtSDQv9Cw0YDRh9C1INC90LUg0L3QsNC/0LDRgdCy0LAg0L3QsCDRgNC10LPRg9C70Y/RgNC90LjRjyDQuNC30YDQsNC3XG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxMCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MzIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY1OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2ODAKIG1zZ2lkICJObyBwcmV2aW91cyBodW5rXG4iCiBtc2dzdHIgItCd0Y/QvNCwINC00YDRg9Cz0L4g0L/QsNGA0YfQtSDQv9GA0LXQtNC4INGC0L7QstCwXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MzgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY2NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2ODYKIG1zZ2lkICJObyBuZXh0IGh1bmtcbiIKIG1zZ3N0ciAi0J3Rj9C80LAg0LTRgNGD0LPQviDQv9Cw0YDRh9C1INGB0LvQtdC0INGC0L7QstCwXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY0NAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjkyCiBtc2dpZCAiU29ycnksIGNhbm5vdCBzcGxpdCB0aGlzIGh1bmtcbiIKIG1zZ3N0ciAi0KLQvtCy0LAg0L/QsNGA0YfQtSDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0YDQsNC30LTQtdC70LXQvdC+XG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY1MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjk4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNwbGl0IGludG8gJWQgaHVuay5cbiIKIG1zZ2lkX3BsdXJhbCAiU3BsaXQgaW50byAlZCBodW5rcy5cbiIKIG1zZ3N0clswXSAi0KDQsNC30LTQtdC70Y/QvdC1INC90LAgJWQg0L/QsNGA0YfQtS5cbiIKIG1zZ3N0clsxXSAi0KDQsNC30LTQtdC70Y/QvdC1INC90LAgJWQg0L/QsNGA0YfQtdGC0LAuXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY2MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzA4CiBtc2dpZCAiU29ycnksIGNhbm5vdCBlZGl0IHRoaXMgaHVua1xuIgogbXNnc3RyICLQotC+0LLQsCDQv9Cw0YDRh9C1INC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDRgNC10LTQsNC60YLQuNGA0LDQvdC+XG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcwNgotbXNnaWQgIlJldmlldyBkaWZmIgotbXNnc3RyICLQn9GA0LXQs9C70LXQtCDQvdCwINGA0LDQt9C70LjQutCw0YLQsCIKLQogIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBkbyBub3QgdHJhbnNsYXRlIHRoZSBjb21tYW5kIG5hbWVzCiAjLiAnc3RhdHVzJywgJ3VwZGF0ZScsICdyZXZlcnQnLCBldGMuCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MjUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc3MwogbXNnaWQgIiIKICJzdGF0dXMgICAgICAgIC0gc2hvdyBwYXRocyB3aXRoIGNoYW5nZXNcbiIKICJ1cGRhdGUgICAgICAgIC0gYWRkIHdvcmtpbmcgdHJlZSBzdGF0ZSB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzXG4iCkBAIC0yMTM2NSwxOCArMjQ5MDAsMTkgQEAKICIgICAgICAgICAgICAgICAg0Lgg0LjQvdC00LXQutGB0LBcbiIKICJhZGQgdW50cmFja2VkIOKAlCDQtNC+0LHQsNCy0Y/QvdC1INC90LAg0L3QtdGB0LvQtdC00LXQvdC40YLQtSDRhNCw0LnQu9C+0LLQtSDQutGK0Lwg0L/RgNC+0LzQtdC90LjRgtC1INCyINC40L3QtNC10LrRgdCwXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc0MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NDcKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NTcKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2MSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjcKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MDUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgwOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MTUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MjUKIG1zZ2lkICJtaXNzaW5nIC0tIgogbXNnc3RyICLigJ4tLeKAnCDQu9C40L/RgdCy0LAiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2MworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODIxCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgInVua25vd24gLS1wYXRjaCBtb2RlOiAlcyIKIG1zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90LAg0YHRgtGA0LDRgtC10LPQuNGPINC30LAg0L/RgNC40LvQsNCz0LDQvdC1INC90LAg0LrRgNGK0L/QutCwOiDigJ4lc+KAnCIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzY5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc3NQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODI3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgzMwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGFyZ3VtZW50ICVzLCBleHBlY3RpbmcgLS0iCiBtc2dzdHIgItGD0LrQsNC30LDQvSDQtSDQvdC10L/RgNCw0LLQuNC70LXQvSDQsNGA0LPRg9C80LXQvdGCIOKAniVz4oCcLCDQsCDRgdC1INC+0YfQsNC60LLQsCDigJ4tLeKAnC4iCkBAIC0yMTM5MSwzMSArMjQ5MjcsMzEgQEAKIG1zZ2lkICJsb2NhbCB0aW1lIG9mZnNldCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMjQgaG91cnNcbiIKIG1zZ3N0ciAi0YDQsNC30LvQuNC60LDRgtCwINC80LXQttC00YMg0LzQtdGB0YLQvdC40Y8g0YfQsNGB0L7QstC40Y8g0L/QvtGP0YEg0LggR01UINC1IDI0INGH0LDRgdCwINC40LvQuCDQv9C+0LLQtdGH0LVcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoyMTkgZ2l0LXNlbmQtZW1haWwucGVybDoyMjUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjIzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MjI5CiBtc2dpZCAidGhlIGVkaXRvciBleGl0ZWQgdW5jbGVhbmx5LCBhYm9ydGluZyBldmVyeXRoaW5nIgogbXNnc3RyICIiCiAi0YLQtdC60YHRgtC+0LLQuNGP0YIg0YDQtdC00LDQutGC0L7RgCDQv9GA0LjQutC70Y7Rh9C4INGA0LDQsdC+0YLQsNGC0LAg0YEg0LPRgNC10YjQutCwLCDQstGB0LjRh9C60L4g0YHQtSDQv9GA0LXRg9GB0YLQsNC90L7QstGP0LLQsCIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzEwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGNvbnRhaW5zIGFuIGludGVybWVkaWF0ZSB2ZXJzaW9uIG9mIHRoZSBlbWFpbCB5b3Ugd2VyZSBjb21wb3NpbmcuXG4iCiBtc2dzdHIgIuKAniVz4oCcINGB0YrQtNGK0YDQttCwINCy0YDQtdC80LXQvdC90LAg0LLQtdGA0YHQuNGPINC90LAg0L/QvtC00LPQvtGC0LLRj9C90L7RgtC+INC1LdC/0LjRgdC80L4uXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzA3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMxNQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICInJXMuZmluYWwnIGNvbnRhaW5zIHRoZSBjb21wb3NlZCBlbWFpbC5cbiIKIG1zZ3N0ciAi4oCeJXMuZmluYWzigJwg0YHRitC00YrRgNC20LAg0L/QvtC00LPQvtGC0LLQtdC90L7RgtC+INC1LdC/0LjRgdC80L4uXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzI2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQwOAogbXNnaWQgIi0tZHVtcC1hbGlhc2VzIGluY29tcGF0aWJsZSB3aXRoIG90aGVyIG9wdGlvbnNcbiIKIG1zZ3N0ciAi0L7Qv9GG0LjRj9GC0LAg4oCeLS1kdW1wLWFsaWFzZXPigJwg0LUg0L3QtdGB0YrQstC80LXRgdGC0LjQvNCwINGBINC00YDRg9Cz0LjRgtC1INC+0L/RhtC40LhcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozOTUgZ2l0LXNlbmQtZW1haWwucGVybDo2NTAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDgxIGdpdC1zZW5kLWVtYWlsLnBlcmw6NjgzCiBtc2dpZCAiQ2Fubm90IHJ1biBnaXQgZm9ybWF0LXBhdGNoIGZyb20gb3V0c2lkZSBhIHJlcG9zaXRvcnlcbiIKIG1zZ3N0ciAi0JrQvtC80LDQvdC00LDRgtCwIOKAnmdpdCBmb3JtYXQtcGF0Y2jigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LjQt9C/0YrQu9C90Lgg0LjQt9Cy0YrQvSDRhdGA0LDQvdC40LvQuNGJ0LVcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozOTgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDg0CiBtc2dpZCAiIgogImBiYXRjaC1zaXplYCBhbmQgYHJlbG9naW5gIG11c3QgYmUgc3BlY2lmaWVkIHRvZ2V0aGVyICh2aWEgY29tbWFuZC1saW5lIG9yICIKICJjb25maWd1cmF0aW9uIG9wdGlvbilcbiIKQEAgLTIxNDIzLDQwICsyNDk1OSw0MCBAQAogIuKAnmJhdGNoLXNpemXigJwg0Lgg4oCecmVsb2dpbuKAnCDRgtGA0Y/QsdCy0LAg0LTQsCDRgdC1INGD0LrQsNC30LLQsNGCINC30LDQtdC00L3QviAo0LjQu9C4INGH0YDQtdC3INC60L7QvNCw0L3QtNC90LjRjyAiCiAi0YDQtdC0LCDQuNC70Lgg0YfRgNC10Lcg0L3QsNGB0YLRgNC+0LnQutC40YLQtSlcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo0NjgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDk3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlVua25vd24gLS1zdXBwcmVzcy1jYyBmaWVsZDogJyVzJ1xuIgogbXNnc3RyICLQndC10L/QvtC30L3QsNGC0L4g0L/QvtC70LUg0LfQsCDQvtC/0YbQuNGP0YLQsCDigJ4tLXN1cHByZXNzLWNj4oCcOiDigJ4lc+KAnFxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ5NworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiVW5rbm93biAtLWNvbmZpcm0gc2V0dGluZzogJyVzJ1xuIgogbXNnc3RyICLQndC10L/QvtC30L3QsNGC0LAg0YHRgtC+0LnQvdC+0YHRgiDQt9CwIOKAni0tY29uZmlybeKAnDogJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTU2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IHNlbmRtYWlsIGFsaWFzIHdpdGggcXVvdGVzIGlzIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCiBtc2dzdHIgIiIKICLQn9Cg0JXQlNCj0J/QoNCV0JbQlNCV0J3QmNCVOiDQv9GB0LXQstC00L7QvdC40LzQuCDQt9CwIHNlbmRtYWlsINGB0YrQtNGK0YDQttCw0YnQuCDQutCw0LLQuNGH0LrQuCAo4oCeXCLigJwpINC90LUg0YHQtSAiCiAi0L/QvtC00LTRitGA0LbQsNGCOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyNworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogYDppbmNsdWRlOmAgbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAi0J/QoNCV0JTQo9Cf0KDQldCW0JTQldCd0JjQlTog4oCeOmluY2x1ZGU64oCcINC90LUg0YHQtSDQv9C+0LTQtNGK0YDQttCwOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyOQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NjAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogYC9maWxlYCBvciBgfHBpcGVgIHJlZGlyZWN0aW9uIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCiBtc2dzdHIgIiIKICLQn9Cg0JXQlNCj0J/QoNCV0JbQlNCV0J3QmNCVOiDQv9GA0LXQvdCw0YHQvtGH0LLQsNC90LjRjyDigJ4vZmlsZeKAnCDQuNC70Lgg4oCefHBpcGXigJwg0L3QtSDRgdC1INC/0L7QtNC00YrRgNC20LDRgjogJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MzQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTY1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IHNlbmRtYWlsIGxpbmUgaXMgbm90IHJlY29nbml6ZWQ6ICVzXG4iCiBtc2dzdHIgItCf0KDQldCU0KPQn9Cg0JXQltCU0JXQndCY0JU6INGA0LXQtNGK0YIg0LfQsCDigJ5zZW5kbWFpbOKAnCDQvdC1INC1INGA0LDQt9C/0L7Qt9C90LDRgjogJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2MTYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjQ5CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICJGaWxlICclcycgZXhpc3RzIGJ1dCBpdCBjb3VsZCBhbHNvIGJlIHRoZSByYW5nZSBvZiBjb21taXRzXG4iCkBAIC0yMTQ3MSwxMiArMjUwMDcsMTIgQEAKICIgICAg4pePINGD0LrQsNC20LXRgtC1IOKAni4vJXPigJwg0LfQsCDRhNCw0LnQuztcbiIKICIgICAg4pePINC40LfQv9C+0LvQt9Cy0LDRgtC1INC+0L/RhtC40Y/RgtCwIOKAni0tZm9ybWF0LXBhdGNo4oCcINC30LAg0LTQuNCw0L/QsNC30L7QvS5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2MzcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjcwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBvcGVuZGlyICVzOiAlcyIKIG1zZ3N0ciAi0JTQuNGA0LXQutGC0L7RgNC40Y/RgtCwIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0YLQstC+0YDQuDogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjYxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY5NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiZmF0YWw6ICVzOiAlc1xuIgpAQCAtMjE0ODUsNyArMjUwMjEsNyBAQAogItCk0JDQotCQ0JvQndCQINCT0KDQldCo0JrQkDogJXM6ICVzXG4iCiAi0J/QoNCV0JTQo9Cf0KDQldCW0JTQldCd0JjQlTog0L3QtSDRgdCwINC/0YDQsNGC0LXQvdC4INC90LjQutCw0LrQstC4INC60YDRitC/0LrQuFxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY3MgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MDUKIG1zZ2lkICIiCiAiXG4iCiAiTm8gcGF0Y2ggZmlsZXMgc3BlY2lmaWVkIVxuIgpAQCAtMjE0OTUsMTcgKzI1MDMxLDE3IEBACiAi0J3QtSDRgdCwINGD0LrQsNC30LDQvdC4INC60YDRitC/0LrQuCFcbiIKICJcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2ODUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzE4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIk5vIHN1YmplY3QgbGluZSBpbiAlcz8iCiBtc2dzdHIgItCSIOKAniVz4oCcINC70LjQv9GB0LLQsCDRgtC10LzQsCIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2OTUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzI4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBvcGVuIGZvciB3cml0aW5nICVzOiAlcyIKIG1zZ3N0ciAi4oCeJXPigJwg0L3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0L7RgtCy0L7RgNC4INC30LAg0LfQsNC/0LjRgTogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzA2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjczOQogbXNnaWQgIiIKICJMaW5lcyBiZWdpbm5pbmcgaW4gXCJHSVQ6XCIgd2lsbCBiZSByZW1vdmVkLlxuIgogIkNvbnNpZGVyIGluY2x1ZGluZyBhbiBvdmVyYWxsIGRpZmZzdGF0IG9yIHRhYmxlIG9mIGNvbnRlbnRzXG4iCkBAIC0yMTUyMCwyNyArMjUwNTYsMjcgQEAKICJcbiIKICLQmNC30YLRgNC40LnRgtC1INCy0YHQuNGH0LrQviwg0LDQutC+INC90LUg0LjRgdC60LDRgtC1INC00LAg0LjQt9C/0YDQsNGC0LjRgtC1INC+0LHQvtCx0YnQsNCy0LDRidC+INC/0LjRgdC80L4uXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzMwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc2MwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiAlczogJXMiCiBtc2dzdHIgIuKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0YLQstC+0YDQuDogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzQ3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc4MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiAlcy5maW5hbDogJXMiCiBtc2dzdHIgIuKAniVzLmZpbmFs4oCcINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC+0YLQstC+0YDQuDogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzkwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjgyMwogbXNnaWQgIlN1bW1hcnkgZW1haWwgaXMgZW1wdHksIHNraXBwaW5nIGl0XG4iCiBtc2dzdHIgItCe0LHQvtCx0YnQsNCy0LDRidC+0YLQviDQv9C40YHQvNC+INC1INC/0YDQsNC30L3QviDQuCDRgdC1INC/0YDQtdGB0LrQsNGH0LBcbiIKIAogIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBrZWVwIFt5L05dIGFzIGlzLgotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4MjUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODU4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byB1c2UgPCVzPiBbeS9OXT8gIgogbXNnc3RyICLQodC40LPRg9GA0L3QuCDQu9C4INGB0YLQtSwg0YfQtSDQuNGB0LrQsNGC0LUg0LTQsCDQv9C+0LvQt9Cy0LDRgtC1IOKAniVz4oCcIFt5L05dPyAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODgwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkxMwogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIGZpbGVzIGFyZSA4Yml0LCBidXQgZG8gbm90IGRlY2xhcmUgYSBDb250ZW50LVRyYW5zZmVyLSIKICJFbmNvZGluZy5cbiIKQEAgLTIxNTQ4LDExICsyNTA4NCwxMSBAQAogItCh0LvQtdC00L3QuNGC0LUg0YTQsNC50LvQvtCy0LUg0YHQsCA4INCx0LjRgtC+0LLQuCwg0L3QviDQvdC1INGB0LAg0YEg0L7QsdGP0LLQtdC90LAg0LfQsNCz0LvQsNCy0L3QsCDRh9Cw0YHRgiDigJ5Db250ZW50LSIKICJUcmFuc2Zlci1FbmNvZGluZ+KAnC5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4ODUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTE4CiBtc2dpZCAiV2hpY2ggOGJpdCBlbmNvZGluZyBzaG91bGQgSSBkZWNsYXJlIFtVVEYtOF0/ICIKIG1zZ3N0ciAi0JrQvtC1IDgg0LHQuNGC0L7QstC+INC60L7QtNC40YDQsNC90LUg0YHQtSDQv9C+0LvQt9Cy0LAgW9GB0YLQsNC90LTQsNGA0YLQvdC+OiBVVEYtOF0/ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4OTMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTI2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICJSZWZ1c2luZyB0byBzZW5kIGJlY2F1c2UgdGhlIHBhdGNoXG4iCkBAIC0yMTU2NSwyMiArMjUxMDEsMjIgQEAKICLQstGB0LUg0L7RidC1INC1INGBINGI0LDQsdC70L7QvdC90L7RgtC+INC30LDQs9C70LDQstC40LUg4oCeKioqIFNVQkpFQ1QgSEVSRSAqKirigJwuICDQn9C+0LvQt9Cy0LDQudGC0LUg0L7Qv9GG0LjRj9GC0LBcbiIKICLigJ4tLWZvcmNl4oCcLCDQsNC60L4g0YHRgtC1INGB0LjQs9GD0YDQvdC4LCDRh9C1INGC0L7Rh9C90L4g0YLQvtCy0LAg0LjRgdC60LDRgtC1INC00LAg0LjQt9C/0YDQsNGC0LjRgtC1LlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkxMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NDUKIG1zZ2lkICJUbyB3aG9tIHNob3VsZCB0aGUgZW1haWxzIGJlIHNlbnQgKGlmIGFueW9uZSk/IgogbXNnc3RyICLQndCwINC60L7QuSDQtNCwINGB0LUg0L/RgNCw0YLRj9GCINC1LdC/0LjRgdC80LDRgtCwICjQvdC10LfQsNC00YrQu9C20LjRgtC10LvQvdC+INC/0L7Qu9C1KSIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MzAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTYzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImZhdGFsOiBhbGlhcyAnJXMnIGV4cGFuZHMgdG8gaXRzZWxmXG4iCiBtc2dzdHIgItCk0JDQotCQ0JvQndCQINCT0KDQldCo0JrQkDog4oCeJXPigJwg0LUg0L/RgdC10LLQtNC+0L3QuNC8INC90LAg0YHQtdCx0LUg0YHQuFxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjk0MgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NzUKIG1zZ2lkICJNZXNzYWdlLUlEIHRvIGJlIHVzZWQgYXMgSW4tUmVwbHktVG8gZm9yIHRoZSBmaXJzdCBlbWFpbCAoaWYgYW55KT8gIgogbXNnc3RyICIiCiAi0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0L3QsCDRgdGK0L7QsdGJ0LXQvdC40LUg4oCeTWVzc2FnZS1JROKAnCwg0LrQvtC10YLQviDQtNCwINGB0LUg0LjQt9C/0L7Qu9C30LLQsCDQt9CwINC+0LHRj9Cy0Y/QstCw0L3QtdGC0L4gIgogItC90LAg0L7RgtCz0L7QstC+0YAg4oCeSW4tUmVwbHktVG/igJwgKNC90LXQt9Cw0LTRitC70LbQuNGC0LXQu9C90L4g0L/QvtC70LUpIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMDAgZ2l0LXNlbmQtZW1haWwucGVybDoxMDA4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMzMgZ2l0LXNlbmQtZW1haWwucGVybDoxMDQxCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImVycm9yOiB1bmFibGUgdG8gZXh0cmFjdCBhIHZhbGlkIGFkZHJlc3MgZnJvbTogJXNcbiIKIG1zZ3N0ciAi0JPQoNCV0KjQmtCQOiDQvdC1INC80L7QttC1INC00LAg0YHQtSDQuNC30LLQu9C10YfQtSDQsNC00YDQtdGBINC+0YIg4oCeJXPigJxcbiIKQEAgLTIxNTg4LDE4ICsyNTEyNCwxOCBAQAogIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtxXSBbZF0gW2VdIGluIHlvdXIKICMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKICMuIGF0IHRoaXMgcG9pbnQuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMTIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTA0NQogbXNnaWQgIldoYXQgdG8gZG8gd2l0aCB0aGlzIGFkZHJlc3M/IChbcV11aXR8W2Rdcm9wfFtlXWRpdCk6ICIKIG1zZ3N0ciAiIgogItCa0LDQutCy0L4g0LTQsCDRgdC1INC90LDQv9GA0LDQstC4INGBINGC0L7Qt9C4INCw0LTRgNC10YE/IOKAnnHigJwgKNGB0L/QuNGA0LDQvdC1KSwg4oCeZOKAnCAo0LjQt9GC0YDQuNCy0LDQvdC1KSwgIgogIuKAnmXigJwgKNGA0LXQtNCw0LrRgtC40YDQsNC90LUpOiAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTMyOQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMzYyCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkNBIHBhdGggXCIlc1wiIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICLQn9GK0YLRj9GCINC60YrQvCDRgdC10YDRgtC40YTQuNC60LDRgiDigJ4lc+KAnCDQvdC1INGB0YrRidC10YHRgtCy0YPQstCwLiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDEyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NDUKIG1zZ2lkICIiCiAiICAgIFRoZSBDYyBsaXN0IGFib3ZlIGhhcyBiZWVuIGV4cGFuZGVkIGJ5IGFkZGl0aW9uYWxcbiIKICIgICAgYWRkcmVzc2VzIGZvdW5kIGluIHRoZSBwYXRjaCBjb21taXQgbWVzc2FnZS4gQnkgZGVmYXVsdFxuIgpAQCAtMjE2MjcsMTMyICsyNTE2MywxMzIgQEAKICMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbeV0gW25dIFtlXSBbcV0gW2FdIGluIHlvdXIKICMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKICMuIGF0IHRoaXMgcG9pbnQuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0MjcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ2MAogbXNnaWQgIlNlbmQgdGhpcyBlbWFpbD8gKFt5XWVzfFtuXW98W2VdZGl0fFtxXXVpdHxbYV1sbCk6ICIKIG1zZ3N0ciAiIgogItCY0LfQv9GA0LDRidCw0L3QtSDQvdCwINC1LdC/0LjRgdC80L7RgtC+PyDigJ554oCcICjQtNCwKSwg4oCebuKAnCAo0L3QtSksIOKAnmXigJwgKNGA0LXQtNCw0LrRgtC40YDQsNC90LUpLCDigJ5x4oCcICjQuNC30YXQvtC0KSwgIgogIuKAnmHigJwgKNCy0YHQuNGH0LrQvik6ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDMwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjMKIG1zZ2lkICJTZW5kIHRoaXMgZW1haWwgcmVwbHkgcmVxdWlyZWQiCiBtc2dzdHIgItCY0LfQuNGB0LrQstCw0L3QtSDQvdCwINC+0YLQs9C+0LLQvtGAINC60YrQvCDRgtC+0LLQsCDQtS3Qv9C40YHQvNC+IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NTgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ5MQogbXNnaWQgIlRoZSByZXF1aXJlZCBTTVRQIHNlcnZlciBpcyBub3QgcHJvcGVybHkgZGVmaW5lZC4iCiBtc2dzdHIgItCh0YrRgNCy0YrRgNGK0YIg0LfQsCBTTVRQINC90LUg0LUg0L3QsNGB0YLRgNC+0LXQvSDQv9GA0LDQstC40LvQvdC+LiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTA1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MzgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgU1RBUlRUTFMhICVzIgogbXNnc3RyICLQodGK0YDQstGK0YDRitGCINC90LUg0L/QvtC00LTRitGA0LbQsCDigJ5TVEFSVFRMU+KAnCEgJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUxMCBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MTQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0MyBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU1RBUlRUTFMgZmFpbGVkISAlcyIKIG1zZ3N0ciAi0J3QtdGD0YHQv9C10YjQvdC+INC40LfQv9GK0LvQvdC10L3QuNC1INC90LAgU1RBUlRUTFMhICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MjMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU1NgogbXNnaWQgIlVuYWJsZSB0byBpbml0aWFsaXplIFNNVFAgcHJvcGVybHkuIENoZWNrIGNvbmZpZyBhbmQgdXNlIC0tc210cC1kZWJ1Zy4iCiBtc2dzdHIgIiIKICLQn9C+0LTRgdC40YHRgtC10LzQsNGC0LAg0LfQsCBTTVRQINC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC40L3QuNGG0LjQsNC70LjQt9C40YDQsC4gINCf0YDQvtCy0LXRgNC10YLQtSDQvdCw0YHRgtGA0L7QudC60LjRgtC1INC4ICIKICLQuNC30L/QvtC70LfQstCw0LnRgtC1INC+0L/RhtC40Y/RgtCwOiDigJ4tLXNtdHAtZGVidWfigJwuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gc2VuZCAlc1xuIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0LHRitC00LUg0LjQt9C/0YDQsNGC0LXQvVxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJEcnktU2VudCAlc1xuIgogbXNnc3RyICLQn9GA0L7QsdCwINC30LAg0LjQt9C/0YDQsNGJ0LDQvdC1INC90LAg4oCeJXPigJxcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU2VudCAlc1xuIgogbXNnc3RyICLQmNC30L/RgNCw0YnQsNC90LUg0L3QsCDigJ4lc+KAnFxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3OQogbXNnaWQgIkRyeS1PSy4gTG9nIHNheXM6XG4iCiBtc2dzdHIgItCj0YHQv9C10YUg0L/RgNC4INC/0YDQvtCx0LDRgtCwLiAg0J7RgiDQttGD0YDQvdCw0LvQsDpcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzkKIG1zZ2lkICJPSy4gTG9nIHNheXM6XG4iCiBtc2dzdHIgItCj0YHQv9C10YUuICDQntGCINC20YPRgNC90LDQu9CwOlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NTgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU5MQogbXNnaWQgIlJlc3VsdDogIgogbXNnc3RyICLQoNC10LfRg9C70YLQsNGCOiAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU2MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTk0CiBtc2dpZCAiUmVzdWx0OiBPS1xuIgogbXNnc3RyICLQoNC10LfRg9C70YLQsNGCOiDRg9GB0L/QtdGFXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3OQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjEyCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImNhbid0IG9wZW4gZmlsZSAlcyIKIG1zZ3N0ciAi0YTQsNC50LvRitGCIOKAniVz4oCcINC90LUg0LzQvtC20LUg0LTQsCDQsdGK0LTQtSDQvtGC0LLQvtGA0LXQvSIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjI2IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjU5IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY3OQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIobWJveCkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIobWJveCkg0JTQvtCx0LDQstGP0L3QtSDQvdCwIOKAntGP0Lo6ICVz4oCcINC+0YIg0YDQtdC0IOKAniVz4oCcXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTYzMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjY1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihtYm94KSBBZGRpbmcgdG86ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIihtYm94KSDQlNC+0LHQsNCy0Y/QvdC1INC90LAg4oCe0LTQvjogJXPigJwg0L7RgiDRgNC10LQg4oCeJXPigJxcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjg1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE3MTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKG5vbi1tYm94KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIijQvdC1LW1ib3gpINCU0L7QsdCw0LLRj9C90LUg0L3QsCDigJ7Rj9C6OiAlc+KAnCDQvtGCINGA0LXQtCDigJ4lc+KAnFxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE3MjAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTc1MwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoYm9keSkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIo0YLRj9C70L4pINCU0L7QsdCw0LLRj9C90LUg0L3QsCDigJ7Rj9C6OiAlc+KAnCDQvtGCINGA0LXQtCDigJ4lc+KAnFxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4MzEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg2NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoJXMpIENvdWxkIG5vdCBleGVjdXRlICclcyciCiBtc2dzdHIgIiglcykg0J3QtSDQvNC+0LbQtSDQtNCwINCx0YrQtNC1INGB0LUg0LjQt9C/0YrQu9C90Lgg4oCeJXPigJwiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTgzOAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODcxCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiglcykgQWRkaW5nICVzOiAlcyBmcm9tOiAnJXMnXG4iCiBtc2dzdHIgIiglcykg0JTQvtCx0LDQstGP0L3QtSDQvdCwIOKAniVzOiAlc+KAnCDQvtGCOiDigJ4lc+KAnFxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg3NQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoJXMpIGZhaWxlZCB0byBjbG9zZSBwaXBlIHRvICclcyciCiBtc2dzdHIgIiglcykg0L/RgNC+0LPRgNCw0LzQvdC40Y/RgiDQutCw0L3QsNC7INC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC30LDRgtCy0L7RgNC4INC30LAg0LjQt9C/0YrQu9C90LXQvdC40LXRgtC+INC90LAg4oCeJXPigJwiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg3MgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTA1CiBtc2dpZCAiY2Fubm90IHNlbmQgbWVzc2FnZSBhcyA3Yml0IgogbXNnc3RyICLRgdGK0L7QsdGJ0LXQvdC40LXRgtC+INC90LUg0LzQvtC20LUg0LTQsCDRgdC1INC40LfQv9GA0LDRgtC4INGH0YDQtdC3IDcg0LHQuNGC0L7QstC4INC30L3QsNGG0LgiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg4MAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTEzCiBtc2dpZCAiaW52YWxpZCB0cmFuc2ZlciBlbmNvZGluZyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9C90L4g0LrQvtC00LjRgNCw0L3QtSDQt9CwINC/0YDQtdC90L7RgSIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTIxIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk3MyBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5ODMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk1NCBnaXQtc2VuZC1lbWFpbC5wZXJsOjIwMDYgZ2l0LXNlbmQtZW1haWwucGVybDoyMDE2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlc1xuIgogbXNnc3RyICLigJ4lc+KAnCDQvdC1INC80L7QttC1INC00LAg0YHQtSDQvtGC0LLQvtGA0Lg6ICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkyNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTU3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiVzOiBwYXRjaCBjb250YWlucyBhIGxpbmUgbG9uZ2VyIHRoYW4gOTk4IGNoYXJhY3RlcnMiCiBtc2dzdHIgIuKAniVz4oCcOiDQutGA0YrQv9C60LDRgtCwINGB0YrQtNGK0YDQttCwINGA0LXQtCDRgSDQvdCw0LQgOTg4INC30L3QsNC60LAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk0MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTc0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNraXBwaW5nICVzIHdpdGggYmFja3VwIHN1ZmZpeCAnJXMnLlxuIgogbXNnc3RyICLigJ4lc+KAnCDRgdC1INC/0YDQvtC/0YPRgdC60LAsINC30LDRidC+0YLQviDQtSDRgSDRgNCw0LfRiNC40YDQtdC90LjQtSDQt9CwINCw0YDRhdC40LLQtdC9INGE0LDQudC7OiDigJ4lc+KAnC5cbiIKIAogIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBrZWVwICJbeXxOXSIgYXMgaXMuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NDUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk3OAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJEbyB5b3UgcmVhbGx5IHdhbnQgdG8gc2VuZCAlcz8gW3l8Tl06ICIKIG1zZ3N0ciAi0J3QsNC40YHRgtC40L3QsCDQu9C4INC40YHQutCw0YLQtSDQtNCwINC40LfQv9GA0LDRgtC40YLQtSDigJ4lc+KAnD8gW3l8Tl06ICIKZGlmZiAtLWdpdCBhL3BvL2NhLnBvIGIvcG8vY2EucG8KaW5kZXggZjQ3M2JiOC4uZTMyNGM4MCAxMDA2NDQKLS0tIGEvcG8vY2EucG8KKysrIGIvcG8vY2EucG8KQEAgLTEsNyArMSw3IEBACiAjIENhdGFsYW4gdHJhbnNsYXRpb25zIGZvciBHaXQuCiAjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBHaXQgcGFja2FnZS4KICMgQWxleCBIZW5yaWUgPGFsZXhoZW5yaWUyNEBnbWFpbC5jb20+LCAyMDE0LTIwMTYuCi0jIEpvcmRpIE1hcyBpIEhlcm7DoG5kZXogPGptYXNAc29mdGNhdGFsYS5vcmc+LCAyMDE2LTIwMTgKKyMgSm9yZGkgTWFzIGkgSGVybsOgbmRleiA8am1hc0Bzb2Z0Y2F0YWxhLm9yZz4sIDIwMTYtMjAyMAogIwogIyBUZXJtaW5vbG9naWEgaSBjcml0ZXJpcyB1dGlsaXR6YXRzCiAjCkBAIC05LDYgKzksNyBAQAogIyAgIC0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIyAgIGFoZWFkICAgICAgICAgICAgfCAgZGF2YW50IHBlcgogIyAgIGFtZW5kICAgICAgICAgICAgfCAgZXNtZW5hcgorIyAgIGJ1bmRsZSAgICAgICAgICAgfCAgZmFyY2VsbAogIyAgIGJyb2tlbiAgICAgICAgICAgfCAgbWFsbcOocwogIyAgIGRlbHRhICAgICAgICAgICAgfCAgZGlmZXLDqG5jaWEKICMgICBkZXByZWNhdGVkICAgICAgIHwgIGVuIGRlc8O6cwpAQCAtMjUsNyArMjYsNyBAQAogIyAgIHVuc2V0ICAgICAgICAgICAgfCAgZGVzYXNzaWduYXIKICMgICB1cHN0cmVhbSAgICAgICAgIHwgIGZvbnQKICMKLSMgQWxndW5zIHRlcm1lcyBxdWUgc8OzbiBjb21hbmRlcyBlc3BlY8OtZmlxdWVzIGRlbCBnaXQgaSBkJ8OgbWJpdCBtb2x0IHTDqGNuaWMKKyMgQWxndW5zIHRlcm1lcyBxdWUgc8OzbiBvcmRyZXMgZXNwZWPDrWZpcXVlcyBkZWwgZ2l0IGkgZCfDoG1iaXQgbW9sdCB0w6hjbmljCiAjIGhlbSBkZWNpZGl0IG5vIHRyYWR1aXItbG9zIHBlciBmYWNpbGl0YXItbmUgbGEgY29tcHJlc3Npw7MgYSBsJ3VzdWFyaSBpIHBlcnF1w6gKICMgbm8gdGVuZW4gdW5hIHRyYW5zY2VuZMOobmNpYSBhbCBncmFuIHDDumJsaWMuIEVzIHRyYWN0YSBkZSBjYXNvcyBzaW1pbGFycwogIyBhIMKrcGluZ8K7IGVuIGwnw6BtYml0IGRlIHhhcnhlcy4KQEAgLTQ4LDggKzQ5LDggQEAKIG1zZ3N0ciAiIgogIlByb2plY3QtSWQtVmVyc2lvbjogR2l0XG4iCiAiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IEdpdCBNYWlsaW5nIExpc3QgPGdpdEB2Z2VyLmtlcm5lbC5vcmc+XG4iCi0iUE9ULUNyZWF0aW9uLURhdGU6IDIwMTgtMTEtMjAgMTA6MDUrMDgwMFxuIgotIlBPLVJldmlzaW9uLURhdGU6IDIwMTgtMTEtMjUgMTU6MzIrMDIwMFxuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDE5LTEyLTMwIDA4OjQ4KzA4MDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDIwLTAxLTA5IDEwOjEwKzAxMDBcbiIKICJMYXN0LVRyYW5zbGF0b3I6IEpvcmRpIE1hcyA8am1hc0Bzb2Z0Y2F0YWxhLm9yZz5cbiIKICJMYW5ndWFnZS1UZWFtOiBDYXRhbGFuXG4iCiAiTGFuZ3VhZ2U6IGNhXG4iCkBAIC01NywzOSArNTgsNDY0IEBACiAiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCiAiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgogIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpO1xuIgotIlgtR2VuZXJhdG9yOiBQb2VkaXQgMi4wLjRcbiIKKyJYLUdlbmVyYXRvcjogUG9lZGl0IDIuMi40XG4iCiAKLSM6IGFkdmljZS5jOjk5Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJIdWggKCVzKT8iCittc2dzdHIgIlBlcmTDsyAoJXMpPyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NTAwIGFkZC1pbnRlcmFjdGl2ZS5jOjgwMSBzZXF1ZW5jZXIuYzozMjE2CisjOiBzZXF1ZW5jZXIuYzozNjU2IGJ1aWx0aW4vcmViYXNlLmM6ODcxIGJ1aWx0aW4vcmViYXNlLmM6MTY0MworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDE5IGJ1aWx0aW4vcmViYXNlLmM6MjA2MworbXNnaWQgImNvdWxkIG5vdCByZWFkIGluZGV4IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBsJ8OtbmRleCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NTU1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjY5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI5NAorbXNnaWQgImJpbmFyeSIKK21zZ3N0ciAiYmluYXJpIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2MTMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyNzgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzMyCittc2dpZCAibm90aGluZyIKK21zZ3N0ciAicmVzIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2MTQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMTQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzI5Cittc2dpZCAidW5jaGFuZ2VkIgorbXNnc3RyICJzZW5zZSBjYW52aXMiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY1MSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY0MworbXNnaWQgIlVwZGF0ZSIKK21zZ3N0ciAiQWN0dWFsaXR6YSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjY4IGFkZC1pbnRlcmFjdGl2ZS5jOjg1NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhZ2UgJyVzJyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBmZXIgwqtzdGFnZcK7IMKrJXPCuyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njc0IGFkZC1pbnRlcmFjdGl2ZS5jOjg2MyBzZXF1ZW5jZXIuYzozNDA5CisjOiBidWlsdGluL3JlYmFzZS5jOjg5NQorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBpbmRleCIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBsJ8OtbmRleCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njc3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjI4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJ1cGRhdGVkICVkIHBhdGhcbiIKK21zZ2lkX3BsdXJhbCAidXBkYXRlZCAlZCBwYXRoc1xuIgorbXNnc3RyWzBdICJhY3R1YWxpdHphdCAlZCBjYW3DrVxuIgorbXNnc3RyWzFdICJhY3R1YWxpdHphdHMgJWQgY2FtaW5zXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY5NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3OAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAibm90ZTogJXMgaXMgdW50cmFja2VkIG5vdy5cbiIKK21zZ3N0ciAibm90YTogJXMgZXN0w6AgYXJhIHNlbnNlIHNlZ3VpbWVudC5cbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NzAwIGFwcGx5LmM6NDEwOCBidWlsdGluL2NoZWNrb3V0LmM6MjgxCisjOiBidWlsdGluL3Jlc2V0LmM6MTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ha2VfY2FjaGVfZW50cnkgZmFpbGVkIGZvciBwYXRoICclcyciCittc2dzdHIgIm1ha2VfY2FjaGVfZW50cnkgaGEgZmFsbGF0IHBlciBhbCBjYW3DrSDCqyVzwrsiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjczMCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY1NQorbXNnaWQgIlJldmVydCIKK21zZ3N0ciAiUmV2ZXJ0ZWl4IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3NDYKK21zZ2lkICJDb3VsZCBub3QgcGFyc2UgSEVBRF57dHJlZX0iCittc2dzdHIgIk5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIEhFQURee3RyZWV9IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3ODQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MzEKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgInJldmVydGVkICVkIHBhdGhcbiIKK21zZ2lkX3BsdXJhbCAicmV2ZXJ0ZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAicmV2ZXJ0aXQgJWQgY2Ftw61cbiIKK21zZ3N0clsxXSAicmV2ZXJ0aXRzICVkIGNhbWluc1xuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4MzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gdW50cmFja2VkIGZpbGVzLlxuIgorbXNnc3RyICJTZW5zZSBmaXR4ZXJzIG5vIHNlZ3VpdHMuXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjgzOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY4OQorbXNnaWQgIkFkZCB1bnRyYWNrZWQiCittc2dzdHIgIkFmZWdlaXggc2Vuc2Ugc2VndWltZW50IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4NjYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MjUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgImFkZGVkICVkIHBhdGhcbiIKK21zZ2lkX3BsdXJhbCAiYWRkZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAiYWZlZ2l0ICVkIGNhbcOtXG4iCittc2dzdHJbMV0gImFmZWdpdHMgJWQgY2FtaW5zXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjg5NgorIywgIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgdW5tZXJnZWQ6ICVzIgorbXNnc3RyICJzJ2VzdMOgIGlnbm9yYW50IGFsbMOyIG5vIGZ1c2lvbmF0OiAlcyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTA4IGFkZC1wYXRjaC5jOjEzMzEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzY2CisjLCBjLWZvcm1hdAorbXNnaWQgIk9ubHkgYmluYXJ5IGZpbGVzIGNoYW5nZWQuXG4iCittc2dzdHIgIk5vbcOpcyBzJ2hhbiBjYW52aWF0IGVscyBmaXR4ZXJzIGJpbmFyaXMuXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkxMCBhZGQtcGF0Y2guYzoxMzI5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2OAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBjaGFuZ2VzLlxuIgorbXNnc3RyICJTZW5zZSBjYW52aXMuXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkxNCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNzYKK21zZ2lkICJQYXRjaCB1cGRhdGUiCittc2dzdHIgIkFjdHVhbGl0emFjacOzIGRlbCBwZWRhw6ciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjk1MyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NTQKK21zZ2lkICJSZXZpZXcgZGlmZiIKK21zZ3N0ciAiUmV2aXNldSBsZXMgZGlmZXLDqG5jaWVzIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5ODEKK21zZ2lkICJzaG93IHBhdGhzIHdpdGggY2hhbmdlcyIKK21zZ3N0ciAibW9zdHJhIGVscyBjYW1pbnMgYW1iIGNhbnZpcyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTgzCittc2dpZCAiYWRkIHdvcmtpbmcgdHJlZSBzdGF0ZSB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjk4NQorbXNnaWQgInJldmVydCBzdGFnZWQgc2V0IG9mIGNoYW5nZXMgYmFjayB0byB0aGUgSEVBRCB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjk4NworbXNnaWQgInBpY2sgaHVua3MgYW5kIHVwZGF0ZSBzZWxlY3RpdmVseSIKK21zZ3N0ciAic2VsZWNjaW9uYSBlbHMgdHJvc3NvcyBpIGFjdHVhbGl0emEgc2VsZWN0aXZhbWVudCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTg5Cittc2dpZCAidmlldyBkaWZmIGJldHdlZW4gSEVBRCBhbmQgaW5kZXgiCittc2dzdHIgInZpc3VhbGl0emEgbGVzIGRpZmVyw6huY2llcyBlbnRyZSBIRUFEIGkgbCfDrW5kZXgiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjk5MQorbXNnaWQgImFkZCBjb250ZW50cyBvZiB1bnRyYWNrZWQgZmlsZXMgdG8gdGhlIHN0YWdlZCBzZXQgb2YgY2hhbmdlcyIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5OTkgYWRkLWludGVyYWN0aXZlLmM6MTA0OAorbXNnaWQgIlByb21wdCBoZWxwOiIKK21zZ3N0ciAiTW9zdHJhIGFqdWRhOiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwMQorbXNnaWQgInNlbGVjdCBhIHNpbmdsZSBpdGVtIgorbXNnc3RyICJzZWxlY2Npb25ldSB1biDDum5pYyDDrXRlbSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwMworbXNnaWQgInNlbGVjdCBhIHJhbmdlIG9mIGl0ZW1zIgorbXNnc3RyICJzZWxlY2Npb25ldSB1biByYW5nIGQnw610ZW1zIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA1Cittc2dpZCAic2VsZWN0IG11bHRpcGxlIHJhbmdlcyIKK21zZ3N0ciAic2VsZWNjaW9uZXUgcmFuZ3MgbcO6bHRpcGxlcyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwNyBhZGQtaW50ZXJhY3RpdmUuYzoxMDUyCittc2dpZCAic2VsZWN0IGl0ZW0gYmFzZWQgb24gdW5pcXVlIHByZWZpeCIKK21zZ3N0ciAic2VsZWNjaW9uZXUgdW4gw610ZW0gYmFzYW50LXNlIGVuIHVuIHByZWZpeCDDum5pYyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwOQorbXNnaWQgInVuc2VsZWN0IHNwZWNpZmllZCBpdGVtcyIKK21zZ3N0ciAiZGVzc2VsZWNjaW9uYSBlbHMgw610ZW1zIGVzcGVjaWZpY2F0cyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAxMQorbXNnaWQgImNob29zZSBhbGwgaXRlbXMiCittc2dzdHIgImVzY29sbGl1IHRvdHMgZWxzIMOtdGVtcyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAxMworbXNnaWQgIihlbXB0eSkgZmluaXNoIHNlbGVjdGluZyIKK21zZ3N0ciAiKGJ1aXQpIGZpbmFsaXR6YSBsYSBzZWxlY2Npw7MiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwNTAKK21zZ2lkICJzZWxlY3QgYSBudW1iZXJlZCBpdGVtIgorbXNnc3RyICJzZWxlY2Npb25ldSB1biDDrXRlbSBudW1lcmF0IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDU0Cittc2dpZCAiKGVtcHR5KSBzZWxlY3Qgbm90aGluZyIKK21zZ3N0ciAiKGJ1aXQpIG5vIHNlbGVjY2lvbmlzIHJlcyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA2MiBidWlsdGluL2NsZWFuLmM6ODIyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTg1MQorbXNnaWQgIioqKiBDb21tYW5kcyAqKioiCittc2dzdHIgIioqKiBPcmRyZXMgKioqIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDYzIGJ1aWx0aW4vY2xlYW4uYzo4MjMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODQ4Cittc2dpZCAiV2hhdCBub3ciCittc2dzdHIgIkkgYXJhIHF1w6giCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMTUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJzdGFnZWQiCittc2dzdHIgInN0YWdlZCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTExNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMworbXNnaWQgInVuc3RhZ2VkIgorbXNnc3RyICJ1bnN0YWdlZCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTExNSBhcHBseS5jOjQ5NjUgYXBwbHkuYzo0OTY4IGJ1aWx0aW4vYW0uYzoyMTk3CisjOiBidWlsdGluL2FtLmM6MjIwMCBidWlsdGluL2Nsb25lLmM6MTIzIGJ1aWx0aW4vZmV0Y2guYzoxNDQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzMgYnVpbHRpbi9wdWxsLmM6MjA5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MDkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzgyCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg3NSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg3OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxMTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJwYXRoIgorbXNnc3RyICJjYW3DrSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTEyMgorbXNnaWQgImNvdWxkIG5vdCByZWZyZXNoIGluZGV4IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFjdHVhbGl0emFyIGwnw61uZGV4IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTM2IGJ1aWx0aW4vY2xlYW4uYzo3ODcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIkJ5ZS5cbiIKK21zZ3N0ciAiQWTDqXUuXG4iCisKKyM6IGFkZC1wYXRjaC5jOjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIlN0YWdlIG1vZGUgY2hhbmdlIFt5LG4sYSxxLGQlcyw/XT8gIgorbXNnc3RyICJDYW52aWEgZWwgbW9kZSBkZSDCq3N0YWdlwrsgW3ksbixhLHEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIlN0YWdlIGRlbGV0aW9uIFt5LG4sYSxxLGQlcyw/XT8gIgorbXNnc3RyICJTdXByaW1laXggwqtzdGFnZcK7IFt5LG4sYSxxLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNworIywgYy1mb3JtYXQKK21zZ2lkICJTdGFnZSB0aGlzIGh1bmsgW3ksbixhLHEsZCVzLD9dPyAiCittc2dzdHIgIkZlciB1biDCq3N0YWdlwrsgZCdhcXVlc3QgdHJvcyBbeSxuLGEscSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTExCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciAnJS4qcyciCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGxhIGNhcMOnYWxlcmEgZGVsIHRyb3MgwqslLipzwrsiCisKKyM6IGFkZC1wYXRjaC5jOjEzMCBhZGQtcGF0Y2guYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbG9yZWQgaHVuayBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsYSBjYXDDp2FsZXJhIGRlbCB0cm9zIGFjb2xvcmlkYSDCqyUuKnPCuyIKKworIzogYWRkLXBhdGNoLmM6MTc2Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGRpZmYiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGVsIGRpZmYiCisKKyM6IGFkZC1wYXRjaC5jOjE5NAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb2xvcmVkIGRpZmYiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGVsIGRpZmYgYWNvbG9yaXQiCisKKyM6IGFkZC1wYXRjaC5jOjUwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZXhwZWN0ZWQgY29udGV4dCBsaW5lICMlZCBpblxuIgorIiUuKnMiCittc2dzdHIgIiIKKyJzJ2VzcGVyYXZhIGxhIGzDrW5pYSBhbWIgY29udGluZ3V0ICMlZCBhXG4iCisiJS4qcyIKKworCisjOiBhZGQtcGF0Y2guYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImh1bmtzIGRvIG5vdCBvdmVybGFwOlxuIgorIiUuKnNcbiIKKyJcdGRvZXMgbm90IGVuZCB3aXRoOlxuIgorIiUuKnMiCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6Nzk5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExMgorbXNnaWQgIk1hbnVhbCBodW5rIGVkaXQgbW9kZSAtLSBzZWUgYm90dG9tIGZvciBhIHF1aWNrIGd1aWRlLlxuIgorbXNnc3RyICIiCisiTW9kZSBkJ2VkaWNpw7MgZGUgdHJvc3NvcyBtYW51YWwgLSB2ZWdldSBtw6lzIGF2YWxsIHBlciB1bmEgZ3VpYSByw6BwaWRhLlxuIgorCisjOiBhZGQtcGF0Y2guYzo4MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tLVxuIgorIlRvIHJlbW92ZSAnJWMnIGxpbmVzLCBtYWtlIHRoZW0gJyAnIGxpbmVzIChjb250ZXh0KS5cbiIKKyJUbyByZW1vdmUgJyVjJyBsaW5lcywgZGVsZXRlIHRoZW0uXG4iCisiTGluZXMgc3RhcnRpbmcgd2l0aCAlYyB3aWxsIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiIKKyItLS1cbiIKKyJQZXIgc3VwcmltaXIgwqslY8K7IGzDrW5pZXMsIGNvbnZlcnRpdS1sZXMgYSAnICcgKGNvbnRleHQpLlxuIgorIlBlciBzdXByaW1pciDCqyVjwrsgbMOtbmllcywgc3VwcmltaXUtbGVzLlxuIgorIkxlcyBsw61uaWVzIHF1ZSBjb21lbmNpbiBwZXIgJWMgc2VyYW4gc3VwcmltaWRlcy5cbiIKKworIzogYWRkLXBhdGNoLmM6ODEwCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCisibWFya2VkIGZvciBzdGFnaW5nLlxuIgorbXNnc3RyICIiCisiU2kgZWwgcGVkYcOnIHMnYXBsaWNhIGNvcnJlY3RhbWVudCwgZWwgdHJvcyBlZGl0YXQgZXMgbWFyY2Fyw6AgaW1tZWRpYXRhbWVudFxuIgorInBlciDCq3N0YWdpbmfCuy5cbiIKKworIy4gVFJBTlNMQVRPUlM6ICdpdCcgcmVmZXJzIHRvIHRoZSBwYXRjaCBtZW50aW9uZWQgaW4gdGhlIHByZXZpb3VzIG1lc3NhZ2VzLgorIzogYWRkLXBhdGNoLmM6ODE4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTEyNgorbXNnaWQgIiIKKyJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSBnaXZlbiBhbiBvcHBvcnR1bml0eSB0b1xuIgorImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlIHJlbW92ZWQsIHRoZW4gdGhlIGVkaXQgaXNcbiIKKyJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIKK21zZ3N0ciAiIgorIlNpIG5vIHMnYXBsaWNhIGNvcnJlY3RhbWVudCwgdGluZHJldSB1bmEgb3BvcnR1bml0YXQgcGVyIGVkaXRhci1sb1xuIgorImRlIG5vdS4gU2kgdG90ZXMgbGVzIGzDrW5pZXMgZGVsIHRyb3Mgc2Ugc3VwcmltZWl4ZW4sIGxsYXZvcnMgbCdlZGljacOzICIKKyJzJ2F2b3J0YVxuIgorImkgZWwgdHJvcyBlcyBkZWl4YSBzZW5zZSBjYXAgY2FudmkuXG4iCisKKyM6IGFkZC1wYXRjaC5jOjg1MQorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbGEgY2Fww6dhbGVyYSBkZWwgdHJvcyIKKworIzogYWRkLXBhdGNoLmM6ODk1IGFkZC1wYXRjaC5jOjEyOTQKK21zZ2lkICInZ2l0IGFwcGx5IC0tY2FjaGVkJyBmYWlsZWQiCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KKyMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dCBhdCB0aGlzIHBvaW50LgorIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKKyMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCisjLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KKyMuCisjLiBUUkFOU0xBVE9SUzogZG8gbm90IHRyYW5zbGF0ZSBbeS9uXQorIy4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCB0aGF0IGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKKyMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCisjLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KKyM6IGFkZC1wYXRjaC5jOjk1MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMzkKK21zZ2lkICIiCisiWW91ciBlZGl0ZWQgaHVuayBkb2VzIG5vdCBhcHBseS4gRWRpdCBhZ2FpbiAoc2F5aW5nIFwibm9cIiBkaXNjYXJkcyEpIFt5L25dPyAiCittc2dzdHIgIiIKKyJFbCB0cm9zIGVkaXRhdCBubyBzJ2FwbGljYS4gRWRpdGV1LWxvIGRlIG5vdSAoc2kgcmVzcG9uZXUgXCJub1wiIGVzICIKKyJkZXNjYXJ0YXLDoCkgW3kvbl0/ICIKKworIzogYWRkLXBhdGNoLmM6MTAwOQorbXNnaWQgIiIKKyJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHN0YWdlIHRoaXMgYW5kIGFsbCB0aGUgcmVtYWluaW5nIGh1bmtzXG4iCisiZCAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgbm9yIGFueSBvZiB0aGUgcmVtYWluaW5nIGh1bmtzXG4iCittc2dzdHIgIiIKKyJ5IC0gZmVzIMKrc3RhZ2XCuyBkJ2FxdWVzdCB0cm9zXG4iCisibiAtIG5vIGZhY2lzIMKrc3RhZ2XCuyBkJ2FxdWVzdCB0cm9zXG4iCisicSAtIHN1cnQ7IG5vIGZhY2lzIMKrc3RhZ2XCuyBkJ2FxdWVzdCB0cm9zIG8gZGUgY2FwIGFsdHJlIHJlc3RhbnRcbiIKKyJhIC0gZmVzIMKrc3RhZ2XCuyBkJ2FxdWVzdCB0cm9zIGkgZGUgdG90YSBsYSByZXN0YSBkZSB0cm9zc29zIGRlbCBmaXR4ZXJcbiIKKyJkIC0gbm8gZmFjaXMgwqtzdGFnZcK7IGQnYXF1ZXN0IHRyb3MgbyBkZSBjYXAgYWx0cmUgcmVzdGFudCBkZWwgZml0eGVyXG4iCisKKyM6IGFkZC1wYXRjaC5jOjEwMTYKK21zZ2lkICIiCisiaiAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBuZXh0IHVuZGVjaWRlZCBodW5rXG4iCisiSiAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBuZXh0IGh1bmtcbiIKKyJrIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIHByZXZpb3VzIHVuZGVjaWRlZCBodW5rXG4iCisiSyAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBwcmV2aW91cyBodW5rXG4iCisiZyAtIHNlbGVjdCBhIGh1bmsgdG8gZ28gdG9cbiIKKyIvIC0gc2VhcmNoIGZvciBhIGh1bmsgbWF0Y2hpbmcgdGhlIGdpdmVuIHJlZ2V4XG4iCisicyAtIHNwbGl0IHRoZSBjdXJyZW50IGh1bmsgaW50byBzbWFsbGVyIGh1bmtzXG4iCisiZSAtIG1hbnVhbGx5IGVkaXQgdGhlIGN1cnJlbnQgaHVua1xuIgorIj8gLSBwcmludCBoZWxwXG4iCittc2dzdHIgIiIKKyJqIC0gZGVpeGEgYXF1ZXN0IHRyb3Mgc2Vuc2UgZGVjaWRpciwgdmV1cmUgZWwgdHJvcyBzZW5zZSBkZWNpZGlyIHNlZ8O8ZW50XG4iCisiSiAtIGRlaXhhIGFxdWVzdCB0cm9zIHNlbnNlIGRlY2lkaXIsIHZldXJlIGVsIHRyb3Mgc2Vnw7xlbnRcbiIKKyJrIC0gZGVpeGEgYXF1ZXN0IHRyb3Mgc2Vuc2UgZGVjaWRpciwgdmV1cmUgZWwgdHJvcyBzZW5zZSBkZWNpZGlyIGFudGVyaW9yXG4iCisiSyAtIGRlaXhhIGFxdWVzdCB0cm9zIHNlbnNlIGRlY2lkaXIsIHZldXJlIGVsIHRyb3MgYW50ZXJpb3JcbiIKKyJnIC0gc2VsZWNjaW9uYSBlbCB0cm9zIG9uIHZvbGV1IGFuYXJcbiIKKyIvIC0gY2VyY2EgdW4gdHJvcyBxdWUgY29pbmNpZGVpeGkgYW1iIGwnZXhwcmVzc2nDsyByZWd1bGFyIGRvbmFkYVxuIgorInMgLSBkaXZpZGVpeCBlbCB0cm9zIGFjdHVhbCBlbiB0cm9zc29zIG3DqXMgcGV0aXRzXG4iCisiZSAtIGVkaXRhIG1hbnVhbG1lbnQgZWwgdHJvcyBhY3R1YWxcbiIKKyI/IC0gbW9zdHJhIGwnYWp1ZGFcbiIKKworIzogYWRkLXBhdGNoLmM6MTEzNyBhZGQtcGF0Y2guYzoxMTQ3Cittc2dpZCAiTm8gcHJldmlvdXMgaHVuayIKK21zZ3N0ciAiU2Vuc2UgdHJvcyBwcmV2aSIKKworIzogYWRkLXBhdGNoLmM6MTE0MiBhZGQtcGF0Y2guYzoxMTUyCittc2dpZCAiTm8gbmV4dCBodW5rIgorbXNnc3RyICJObyBoaSBoYSB0cm9zIHNlZ8O8ZW50IgorCisjOiBhZGQtcGF0Y2guYzoxMTU4Cittc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gZ290byIKK21zZ3N0ciAiTm8gaGkgaGEgYWx0cmVzIHRyb3Nzb3Mgb24gYW5hci1oaSIKKworIzogYWRkLXBhdGNoLmM6MTE2OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzcKK21zZ2lkICJnbyB0byB3aGljaCBodW5rICg8cmV0PiB0byBzZWUgbW9yZSk/ICIKK21zZ3N0ciAidsOpcyBhIHF1aW4gdHJvcyAoPHJldD4gcGVyIHZldXJlJ24gbcOpcyk/ICIKKworIzogYWRkLXBhdGNoLmM6MTE3MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzkKK21zZ2lkICJnbyB0byB3aGljaCBodW5rPyAiCittc2dzdHIgInbDqXMgYSBxdWluIHRyb3M/ICIKKworIzogYWRkLXBhdGNoLmM6MTE4MQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIG51bWJlcjogJyVzJyIKK21zZ3N0ciAiTsO6bWVybyBubyB2w6BsaWQ6IMKrJXPCuyIKKworIzogYWRkLXBhdGNoLmM6MTE4NgorIywgYy1mb3JtYXQKK21zZ2lkICJTb3JyeSwgb25seSAlZCBodW5rIGF2YWlsYWJsZS4iCittc2dpZF9wbHVyYWwgIlNvcnJ5LCBvbmx5ICVkIGh1bmtzIGF2YWlsYWJsZS4iCittc2dzdHJbMF0gIk5vbcOpcyAlZCB0cm9zIGRpc3BvbmlibGUuIgorbXNnc3RyWzFdICJOb23DqXMgJWQgdHJvc3NvcyBkaXNwb25pYmxlcy4iCisKKyM6IGFkZC1wYXRjaC5jOjExOTUKK21zZ2lkICJObyBvdGhlciBodW5rcyB0byBzZWFyY2giCittc2dzdHIgIk5vIGhpIGhhIGNhcCBhbHRyZSB0cm9zIGEgY2VyY2FyIgorCisjOiBhZGQtcGF0Y2guYzoxMjAxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYyMworbXNnaWQgInNlYXJjaCBmb3IgcmVnZXg/ICIKK21zZ3N0ciAiY2VyY2EgcGVyIGV4cHJlc3Npw7MgcmVndWxhcj8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hbGZvcm1lZCBzZWFyY2ggcmVnZXhwICVzOiAlcyIKK21zZ3N0ciAiRXhwcmVzc2nDsyByZWd1bGFyIGRlIGNlcmNhIG1hbCBmb3JtYWRhICVzOiAlcyIKKworIzogYWRkLXBhdGNoLmM6MTIzMworbXNnaWQgIk5vIGh1bmsgbWF0Y2hlcyB0aGUgZ2l2ZW4gcGF0dGVybiIKK21zZ3N0ciAiTm8gaGkgaGEgdHJvc3NvcyBxdWUgY29pbmNpZGVpeGluIGFtYiBlbCBwYXRyw7MgZG9uYXQiCisKKyM6IGFkZC1wYXRjaC5jOjEyNDAKK21zZ2lkICJTb3JyeSwgY2Fubm90IHNwbGl0IHRoaXMgaHVuayIKK21zZ3N0ciAiTm8gZXMgcG90IGRpdmlkaXIgYXF1ZXN0IHRyb3MiCisKKyM6IGFkZC1wYXRjaC5jOjEyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3BsaXQgaW50byAlZCBodW5rcy4iCittc2dzdHIgIkRpdmlkZWl4IGVuICVkIHRyb3Nzb3MuIgorCisjOiBhZGQtcGF0Y2guYzoxMjQ4Cittc2dpZCAiU29ycnksIGNhbm5vdCBlZGl0IHRoaXMgaHVuayIKK21zZ3N0ciAiTm8gZXMgcG90IGVkaXRhciBhcXVlc3QgdHJvcyIKKworIzogYWR2aWNlLmM6MTExCisjLCBjLWZvcm1hdAogbXNnaWQgIiVzaGludDogJS4qcyVzXG4iCi1tc2dzdHIgInBpc3RhOiAlLipzXG4iCittc2dzdHIgIiVzcGlzdGE6ICUuKnMlc1xuIgogCi0jOiBhZHZpY2UuYzoxNTIKKyM6IGFkdmljZS5jOjE2NAogbXNnaWQgIkNoZXJyeS1waWNraW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiRmVyIMKrY2hlcnJ5IHBpY2vCuyBubyDDqXMgcG9zc2libGUgcGVycXXDqCB0ZW5pdSBmaXR4ZXJzIHNlbnNlIGZ1c2lvbmFyLiIKIAotIzogYWR2aWNlLmM6MTU0CisjOiBhZHZpY2UuYzoxNjYKIG1zZ2lkICJDb21taXR0aW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiQ29tZXRyZSBubyDDqXMgcG9zc2libGUgcGVycXXDqCB0ZW5pdSBmaXR4ZXJzIHNlbnNlIGZ1c2lvbmFyLiIKIAotIzogYWR2aWNlLmM6MTU2CisjOiBhZHZpY2UuYzoxNjgKIG1zZ2lkICJNZXJnaW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiRnVzaW9uYXIgbm8gw6lzIHBvc3NpYmxlIHBlcnF1w6ggdGVuaXUgZml0eGVycyBzZW5zZSBmdXNpb25hci4iCiAKLSM6IGFkdmljZS5jOjE1OAorIzogYWR2aWNlLmM6MTcwCiBtc2dpZCAiUHVsbGluZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgIkJhaXhhciBubyDDqXMgcG9zc2libGUgcGVycXXDqCB0ZW5pdSBmaXR4ZXJzIHNlbnNlIGZ1c2lvbmFyLiIKIAotIzogYWR2aWNlLmM6MTYwCisjOiBhZHZpY2UuYzoxNzIKIG1zZ2lkICJSZXZlcnRpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICJSZXZlcnRpciBubyDDqXMgcG9zc2libGUgcGVycXXDqCB0ZW5pdSBmaXR4ZXJzIHNlbnNlIGZ1c2lvbmFyLiIKIAotIzogYWR2aWNlLmM6MTYyCisjOiBhZHZpY2UuYzoxNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiSXQgaXMgbm90IHBvc3NpYmxlIHRvICVzIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICJObyDDqXMgcG9zc2libGUgJXMgcGVycXXDqCB0ZW5pdSBmaXR4ZXJzIHNlbnNlIGZ1c2lvbmFyLiIKIAotIzogYWR2aWNlLmM6MTcwCisjOiBhZHZpY2UuYzoxODIKIG1zZ2lkICIiCiAiRml4IHRoZW0gdXAgaW4gdGhlIHdvcmsgdHJlZSwgYW5kIHRoZW4gdXNlICdnaXQgYWRkL3JtIDxmaWxlPidcbiIKICJhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24gYW5kIG1ha2UgYSBjb21taXQuIgpAQCAtOTgsMTQxICs1MjQsMTQ2IEBACiAiJ2dpdCBhZGQvcm0gPGZpdHhlcj4nIHNlZ29ucyBzaWd1aSBhcHJvcGlhdCBwZXIgYSBtYXJjYXIgbGFcbiIKICJyZXNvbHVjacOzIGkgZmV1IHVuYSBjb21pc3Npw7MuIgogCi0jOiBhZHZpY2UuYzoxNzgKKyM6IGFkdmljZS5jOjE5MAogbXNnaWQgIkV4aXRpbmcgYmVjYXVzZSBvZiBhbiB1bnJlc29sdmVkIGNvbmZsaWN0LiIKIG1zZ3N0ciAiUydlc3TDoCBzb3J0aW50IGEgY2F1c2EgZCd1biBjb25mbGljdGUgbm8gcmVzb2x0LiIKIAotIzogYWR2aWNlLmM6MTgzIGJ1aWx0aW4vbWVyZ2UuYzoxMjg5CisjOiBhZHZpY2UuYzoxOTUgYnVpbHRpbi9tZXJnZS5jOjEzMzIKIG1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS4iCiBtc2dzdHIgIk5vIGhldSBjb25jbMOycyBsYSB2b3N0cmEgZnVzacOzIChNRVJHRV9IRUFEIGV4aXN0ZWl4KS4iCiAKLSM6IGFkdmljZS5jOjE4NQorIzogYWR2aWNlLmM6MTk3CiBtc2dpZCAiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSBtZXJnaW5nLiIKIG1zZ3N0ciAiQ29tZXRldSBlbHMgdm9zdHJlcyBjYW52aXMgYWJhbnMgZGUgZnVzaW9uYXIuIgogCi0jOiBhZHZpY2UuYzoxODYKKyM6IGFkdmljZS5jOjE5OAogbXNnaWQgIkV4aXRpbmcgYmVjYXVzZSBvZiB1bmZpbmlzaGVkIG1lcmdlLiIKIG1zZ3N0ciAiUydlc3TDoCBzb3J0aW50IGEgY2F1c2EgZCd1bmEgZnVzacOzIG5vIHRlcm1pbmFkYS4iCiAKLSM6IGFkdmljZS5jOjE5MgotIywgYy1mb3JtYXQKKyM6IGFkdmljZS5jOjIwNAorIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiIgotIk5vdGU6IGNoZWNraW5nIG91dCAnJXMnLlxuIgorIk5vdGU6IHN3aXRjaGluZyB0byAnJXMnLlxuIgogIlxuIgogIllvdSBhcmUgaW4gJ2RldGFjaGVkIEhFQUQnIHN0YXRlLiBZb3UgY2FuIGxvb2sgYXJvdW5kLCBtYWtlIGV4cGVyaW1lbnRhbFxuIgogImNoYW5nZXMgYW5kIGNvbW1pdCB0aGVtLCBhbmQgeW91IGNhbiBkaXNjYXJkIGFueSBjb21taXRzIHlvdSBtYWtlIGluIHRoaXNcbiIKLSJzdGF0ZSB3aXRob3V0IGltcGFjdGluZyBhbnkgYnJhbmNoZXMgYnkgcGVyZm9ybWluZyBhbm90aGVyIGNoZWNrb3V0LlxuIgorInN0YXRlIHdpdGhvdXQgaW1wYWN0aW5nIGFueSBicmFuY2hlcyBieSBzd2l0Y2hpbmcgYmFjayB0byBhIGJyYW5jaC5cbiIKICJcbiIKICJJZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBuZXcgYnJhbmNoIHRvIHJldGFpbiBjb21taXRzIHlvdSBjcmVhdGUsIHlvdSBtYXlcbiIKLSJkbyBzbyAobm93IG9yIGxhdGVyKSBieSB1c2luZyAtYiB3aXRoIHRoZSBjaGVja291dCBjb21tYW5kIGFnYWluLiBFeGFtcGxlOlxuIgorImRvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1jIHdpdGggdGhlIHN3aXRjaCBjb21tYW5kLiBFeGFtcGxlOlxuIgogIlxuIgotIiAgZ2l0IGNoZWNrb3V0IC1iIDxuZXctYnJhbmNoLW5hbWU+XG4iCisiICBnaXQgc3dpdGNoIC1jIDxuZXctYnJhbmNoLW5hbWU+XG4iCisiXG4iCisiT3IgdW5kbyB0aGlzIG9wZXJhdGlvbiB3aXRoOlxuIgorIlxuIgorIiAgZ2l0IHN3aXRjaCAtXG4iCisiXG4iCisiVHVybiBvZmYgdGhpcyBhZHZpY2UgYnkgc2V0dGluZyBjb25maWcgdmFyaWFibGUgYWR2aWNlLmRldGFjaGVkSGVhZCB0byAiCisiZmFsc2VcbiIKICJcbiIKIG1zZ3N0ciAiIgotIkF2w61zOiBzJ2VzdMOgIGFnYWZhbnQgwqslc8K7LlxuIgorIkF2w61zOiBzJ2VzdMOgIGNhbnZpYW50IGEgwqslc8K7LlxuIgogIlxuIgotIkVzdGV1IGVuIHVuIGVzdGF0IGRlICdIRUFEIHNlcGFyYXQnLiBQb2RldSBtaXJhciBhbCB2b2x0YW50LCBmZXIgY2FudmlzXG4iCi0iZXhwZXJpbWVudGFscyBpIGNvbWV0cmUtbG9zIGkgcG9kZXUgZGVzY2FydGFyIHF1YWxzZXZvbCBjb21pc3Npw7MgcXVlIGZldVxuIgotImVuIGFxdWVzdCBlc3RhdCBzZW5zZSBpbXBhY3RhciBjYXAgYnJhbmNhIHJlYWxpdHphbnQgdW4gYWx0cmUgYWdhZmFtZW50LlxuIgorIkVzdGV1IGVuIHVuIGVzdGF0IGRlIMKrSEVBRCBzZXBhcmF0wrsuIFBvZGV1IG1pcmFyIGFsIHZvbHRhbnQsIGZlciBjYW52aXNcbiIKKyJleHBlcmltZW50YWxzIGkgY29tZXRyZSdscywgaSBwb2RldSBkZXNjYXJ0YXIgcXVhbHNldm9sIGNvbWlzc2nDsyBxdWUgZmV1XG4iCisiZW4gYXF1ZXN0IGVzdGF0IHNlbnNlIGNhcCBicmFuY2EgcmVhbGl0emFudCB1biBhbHRyZSBhZ2FmYW1lbnQuXG4iCiAiXG4iCiAiU2kgdm9sZXUgY3JlYXIgdW5hIGJyYW5jYSBub3ZhIHBlciBhIGNvbnNlcnZhciBsZXMgY29taXNzaW9ucyBxdWUgY3JlZXUsXG4iCi0icG9kZXIgZmVyIGFpeMOtIChhcmEgbyBtw6lzIHRhcmQpIHVzYW50IC1iIGRlIG5vdSBhbWIgbCdvcmRyZSBjaGVja291dC5cbiIKKyJwb2RlciBmZXItaG8gKGFyYSBvIG3DqXMgdGFyZCkgdXNhbnQgLWIgZGUgbm91IGFtYiBsJ29yZHJlIGNoZWNrb3V0LlxuIgogIkV4ZW1wbGU6XG4iCiAiXG4iCiAiICBnaXQgY2hlY2tvdXQgLWIgPG5vbS1kZS1icmFuY2Etbm92YT5cbiIKIAotIzogYXBwbHkuYzo1OQorIzogYWxpYXMuYzo1MAorbXNnaWQgImNtZGxpbmUgZW5kcyB3aXRoIFxcIgorbXNnc3RyICJsYSBsw61uaWEgZCdvcmRyZXMgYWNhYmEgYW1iIFxcIgorCisjOiBhbGlhcy5jOjUxCittc2dpZCAidW5jbG9zZWQgcXVvdGUiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgd2hpdGVzcGFjZSBvcHRpb24gJyVzJyIKIG1zZ3N0ciAib3BjacOzIGQnZXNwYWkgZW4gYmxhbmMgwqslc8K7IG5vIHJlY29uZWd1ZGEiCiAKLSM6IGFwcGx5LmM6NzUKKyM6IGFwcGx5LmM6ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2UgaWdub3JlIG9wdGlvbiAnJXMnIgogbXNnc3RyICJvcGNpw7MgaWdub3JhIGwnZXNwYWkgZW4gYmxhbmMgwqslc8K7IG5vIHJlY29uZWd1ZGEiCiAKLSM6IGFwcGx5LmM6MTI1CisjOiBhcHBseS5jOjEzNQogbXNnaWQgIi0tcmVqZWN0IGFuZCAtLTN3YXkgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuIgogbXNnc3RyICItLXJlamVjdCBpIC0tM3dheSBubyBlcyBwb2RlbiB1c2FyIGp1bnRzLiIKIAotIzogYXBwbHkuYzoxMjcKKyM6IGFwcGx5LmM6MTM3CiBtc2dpZCAiLS1jYWNoZWQgYW5kIC0tM3dheSBjYW5ub3QgYmUgdXNlZCB0b2dldGhlci4iCiBtc2dzdHIgIi0tY2FjaGVkIGkgLS0zd2F5IG5vIGVzIHBvZGVuIHVzYXIganVudHMuIgogCi0jOiBhcHBseS5jOjEzMAorIzogYXBwbHkuYzoxNDAKIG1zZ2lkICItLTN3YXkgb3V0c2lkZSBhIHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0tM3dheSBmb3JhIGQndW4gZGlww7JzaXQiCiAKLSM6IGFwcGx5LmM6MTQxCisjOiBhcHBseS5jOjE1MQogbXNnaWQgIi0taW5kZXggb3V0c2lkZSBhIHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0taW5kZXggZm9yYSBkJ3VuIGRpcMOyc2l0IgogCi0jOiBhcHBseS5jOjE0NAorIzogYXBwbHkuYzoxNTQKIG1zZ2lkICItLWNhY2hlZCBvdXRzaWRlIGEgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiLS1jYWNoZWQgZm9yYSBkJ3VuIGRpcMOyc2l0IgogCi0jOiBhcHBseS5jOjgyNgorIzogYXBwbHkuYzo4MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHByZXBhcmUgdGltZXN0YW1wIHJlZ2V4cCAlcyIKIG1zZ3N0ciAiTm8gZXMgcG90IHByZXBhcmFyIGwnZXhwcmVzc2nDsyByZWd1bGFyIGRlIG1hcmNhIGRlIHRlbXBzICVzIgogCi0jOiBhcHBseS5jOjgzNQorIzogYXBwbHkuYzo4MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVnZXhlYyByZXR1cm5lZCAlZCBmb3IgaW5wdXQ6ICVzIgogbXNnc3RyICJyZWdleGVjIGhhIHJldG9ybmF0ICVkIHBlciBsJ2VudHJhZGE6ICVzIgogCi0jOiBhcHBseS5jOjkwOQorIzogYXBwbHkuYzo4ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZpbmQgZmlsZW5hbWUgaW4gcGF0Y2ggYXQgbGluZSAlZCIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCB0cm9iYXIgZWwgbm9tIGRlIGZpdHhlciBlbiBlbCBwZWRhw6cgYSBsYSBsw61uaWEgJWQiCiAKLSM6IGFwcGx5LmM6OTQ3CisjOiBhcHBseS5jOjkyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGV4cGVjdGVkIC9kZXYvbnVsbCwgZ290ICVzIG9uIGxpbmUgJWQiCiBtc2dzdHIgIiIKICJnaXQgYXBwbHk6IGdpdC1kaWZmIGluY29ycmVjdGUgLSBzJ2VzcGVyYXZhIC9kZXYvbnVsbCwgcydoYSByZWJ1dCAlcyBlbiBsYSAiCiAibMOtbmlhICVkIgogCi0jOiBhcHBseS5jOjk1MworIzogYXBwbHkuYzo5MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBpbmNvbnNpc3RlbnQgbmV3IGZpbGVuYW1lIG9uIGxpbmUgJWQiCiBtc2dzdHIgIiIKICJnaXQgYXBwbHk6IGdpdC1kaWZmIGluY29ycmVjdGUgLSBub20gZGUgZml0eGVyIG5vdSBpbmNvbnNpc3RlbnQgZW4gbGEgbMOtbmlhICIKICIlZCIKIAotIzogYXBwbHkuYzo5NTQKKyM6IGFwcGx5LmM6OTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gaW5jb25zaXN0ZW50IG9sZCBmaWxlbmFtZSBvbiBsaW5lICVkIgogbXNnc3RyICIiCiAiZ2l0IGFwcGx5OiBnaXQtZGlmZiBpbmNvcnJlY3RlIC0gbm9tIGRlIGZpdHhlciBhbnRpYyBpbmNvbnNpc3RlbnQgZW4gbGEgIgogImzDrW5pYSAlZCIKIAotIzogYXBwbHkuYzo5NTkKKyM6IGFwcGx5LmM6OTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gZXhwZWN0ZWQgL2Rldi9udWxsIG9uIGxpbmUgJWQiCiBtc2dzdHIgImdpdCBhcHBseTogZ2l0LWRpZmYgaW5jb3JyZWN0ZSAtIHMnZXNwZXJhdmEgL2Rldi9udWxsIGVuIGxhIGzDrW5pYSAlZCIKIAotIzogYXBwbHkuYzo5ODgKKyM6IGFwcGx5LmM6OTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbW9kZSBvbiBsaW5lICVkOiAlcyIKIG1zZ3N0ciAibW9kZSBubyB2w6BsaWQgZW4gbGEgbMOtbmlhICVkOiAlcyIKIAotIzogYXBwbHkuYzoxMzA3CisjOiBhcHBseS5jOjEyODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5jb25zaXN0ZW50IGhlYWRlciBsaW5lcyAlZCBhbmQgJWQiCiBtc2dzdHIgImzDrW5pZXMgZGUgY2Fww6dhbGVyYSAlZCBpICVkIGluY29uc2lzdGVudHMiCiAKLSM6IGFwcGx5LmM6MTQ3OQotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWNvdW50OiB1bmV4cGVjdGVkIGxpbmU6ICUuKnMiCi1tc2dzdHIgInJlY29tcHRlOiBsw61uaWEgaW5lc3BlcmFkYTogJS4qcyIKLQotIzogYXBwbHkuYzoxNTQ4Ci0jLCBjLWZvcm1hdAotbXNnaWQgInBhdGNoIGZyYWdtZW50IHdpdGhvdXQgaGVhZGVyIGF0IGxpbmUgJWQ6ICUuKnMiCi1tc2dzdHIgImZyYWdtZW50IGRlIHBlZGHDpyBzZW5zZSBjYXDDp2FsZXJhIGEgbGEgbMOtbmlhICVkOiAlLipzIgotCi0jOiBhcHBseS5jOjE1NjgKKyM6IGFwcGx5LmM6MTM3MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIHdoZW4gcmVtb3ZpbmcgJWQgbGVhZGluZyBwYXRobmFtZSAiCkBAIC0yNDcsODMgKzY3OCw5MyBAQAogImEgbGEgY2Fww6dhbGVyYSBkZSBnaXQgZGlmZiBsaSBtYW5jYSBpbmZvcm1hY2nDsyBkZSBub20gZGUgZml0eGVyIGVuIGVsaW1pbmFyICIKICIlZCBjb21wb25lbnRzIGRlIG5vbSBkZSBjYW3DrSBpbmljaWFsIChsw61uaWEgJWQpIgogCi0jOiBhcHBseS5jOjE1ODEKKyM6IGFwcGx5LmM6MTM4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gKGxpbmUgJWQpIgogbXNnc3RyICIiCiAiYSBsYSBjYXDDp2FsZXJhIGRlIGdpdCBkaWZmIGxpIG1hbmNhIGluZm9ybWFjacOzIGRlIG5vbSBkZSBmaXR4ZXIgKGzDrW5pYSAlZCkiCiAKLSM6IGFwcGx5LmM6MTc2OQorIzogYXBwbHkuYzoxNDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlY291bnQ6IHVuZXhwZWN0ZWQgbGluZTogJS4qcyIKK21zZ3N0ciAicmVjb21wdGU6IGzDrW5pYSBpbmVzcGVyYWRhOiAlLipzIgorCisjOiBhcHBseS5jOjE1NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0Y2ggZnJhZ21lbnQgd2l0aG91dCBoZWFkZXIgYXQgbGluZSAlZDogJS4qcyIKK21zZ3N0ciAiZnJhZ21lbnQgZGUgcGVkYcOnIHNlbnNlIGNhcMOnYWxlcmEgYSBsYSBsw61uaWEgJWQ6ICUuKnMiCisKKyM6IGFwcGx5LmM6MTc1MwogbXNnaWQgIm5ldyBmaWxlIGRlcGVuZHMgb24gb2xkIGNvbnRlbnRzIgogbXNnc3RyICJlbCBmaXR4ZXIgbm91IGRlcMOobiBkZWxzIGNvbnRpbmd1dHMgYW50aWNzIgogCi0jOiBhcHBseS5jOjE3NzEKKyM6IGFwcGx5LmM6MTc1NQogbXNnaWQgImRlbGV0ZWQgZmlsZSBzdGlsbCBoYXMgY29udGVudHMiCiBtc2dzdHIgImVsIGZpdHhlciBzdXByaW1pdCBlbmNhcmEgdMOpIGNvbnRpbmd1dHMiCiAKLSM6IGFwcGx5LmM6MTgwNQorIzogYXBwbHkuYzoxNzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgcGF0Y2ggYXQgbGluZSAlZCIKIG1zZ3N0ciAicGVkYcOnIG1hbG3DqHMgYSBsYSBsw61uaWEgJWQiCiAKLSM6IGFwcGx5LmM6MTg0MgorIzogYXBwbHkuYzoxODI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBmaWxlICVzIGRlcGVuZHMgb24gb2xkIGNvbnRlbnRzIgogbXNnc3RyICJlbCBmaXR4ZXIgbm91ICVzIGRlcMOobiBkZWxzIGNvbnRpbmd1dHMgYW50aWNzIgogCi0jOiBhcHBseS5jOjE4NDQKKyM6IGFwcGx5LmM6MTgyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWxldGVkIGZpbGUgJXMgc3RpbGwgaGFzIGNvbnRlbnRzIgogbXNnc3RyICJlbCBmaXR4ZXIgc3VwcmltaXQgJXMgZW5jYXJhIHTDqSBjb250aW5ndXRzIgogCi0jOiBhcHBseS5jOjE4NDcKKyM6IGFwcGx5LmM6MTgzMQogIywgYy1mb3JtYXQKIG1zZ2lkICIqKiB3YXJuaW5nOiBmaWxlICVzIGJlY29tZXMgZW1wdHkgYnV0IGlzIG5vdCBkZWxldGVkIgogbXNnc3RyICIqKiBhZHZlcnTDqG5jaWE6IGVsIGZpdHhlciAlcyBxdWVkYSBidWl0IHBlcsOyIG5vIHNlIHN1cHJpbWVpeCIKIAotIzogYXBwbHkuYzoxOTk0CisjOiBhcHBseS5jOjE5NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZDogJS4qcyIKIG1zZ3N0ciAicGVkYcOnIGJpbmFyaSBtYWxtw6hzIGEgbGEgbMOtbmlhICVkOiAlLipzIgogCi0jOiBhcHBseS5jOjIwMzEKKyM6IGFwcGx5LmM6MjAxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgYmluYXJ5IHBhdGNoIGF0IGxpbmUgJWQiCiBtc2dzdHIgInBlZGHDpyBiaW5hcmkgbm8gcmVjb25lZ3V0IGEgbGEgbMOtbmlhICVkIgogCi0jOiBhcHBseS5jOjIxOTMKKyM6IGFwcGx5LmM6MjE3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRjaCB3aXRoIG9ubHkgZ2FyYmFnZSBhdCBsaW5lICVkIgogbXNnc3RyICJwZWRhw6cgYW1iIG5vbcOpcyBlc2NvbWJyYXJpZXMgYSBsYSBsw61uaWEgJWQiCiAKLSM6IGFwcGx5LmM6MjI3OQorIzogYXBwbHkuYzoyMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHN5bWxpbmsgJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGwnZW5sbGHDpyBzaW1iw7JsaWMgJXMiCiAKLSM6IGFwcGx5LmM6MjI4MworIzogYXBwbHkuYzoyMjY3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuIG9yIHJlYWQgJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgb2JyaXIgbyBsbGVnaXIgJXMiCiAKLSM6IGFwcGx5LmM6Mjk0MgorIzogYXBwbHkuYzoyOTM2CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc3RhcnQgb2YgbGluZTogJyVjJyIKLW1zZ3N0ciAiaW5pY2kgZGUgbMOtbmlhIG5vIHbDoGxpZDogJyVjJyIKK21zZ3N0ciAiaW5pY2kgZGUgbMOtbmlhIG5vIHbDoGxpZDogwqslY8K7IgogCi0jOiBhcHBseS5jOjMwNjMKKyM6IGFwcGx5LmM6MzA1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJIdW5rICMlZCBzdWNjZWVkZWQgYXQgJWQgKG9mZnNldCAlZCBsaW5lKS4iCiBtc2dpZF9wbHVyYWwgIkh1bmsgIyVkIHN1Y2NlZWRlZCBhdCAlZCAob2Zmc2V0ICVkIGxpbmVzKS4iCiBtc2dzdHJbMF0gIkVsIHRyb3MgIyVkIGhhIHRpbmd1dCDDqHhpdCBhICVkIChkZXNwbGHDp2FtZW50IGQnJWQgbMOtbmlhKS4iCiBtc2dzdHJbMV0gIkVsIHRyb3MgIyVkIGhhIHRpbmd1dCDDqHhpdCBhICVkIChkZXNwbGHDp2FtZW50IGRlICVkIGzDrW5pZXMpLiIKIAotIzogYXBwbHkuYzozMDc1CisjOiBhcHBseS5jOjMwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29udGV4dCByZWR1Y2VkIHRvICglbGQvJWxkKSB0byBhcHBseSBmcmFnbWVudCBhdCAlZCIKIG1zZ3N0ciAiRWwgY29udGV4dCBzJ2hhIHJlZHXDr3QgYSAoJWxkLyVsZCkgcGVyIGEgYXBsaWNhciBlbCBmcmFnbWVudCBhICVkIgogCi0jOiBhcHBseS5jOjMwODEKKyM6IGFwcGx5LmM6MzA3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAid2hpbGUgc2VhcmNoaW5nIGZvcjpcbiIKQEAgLTMzMiwyMyArNzczLDIzIEBACiAidG90IGNlcmNhbnQ6XG4iCiAiJS4qcyIKIAotIzogYXBwbHkuYzozMTAzCisjOiBhcHBseS5jOjMwOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBiaW5hcnkgcGF0Y2ggZGF0YSBmb3IgJyVzJyIKIG1zZ3N0ciAibWFucXVlbiBsZXMgZGFkZXMgZGUgcGVkYcOnIGJpbmFyaSBkZSDCqyVzwrsiCiAKLSM6IGFwcGx5LmM6MzExMQorIzogYXBwbHkuYzozMTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZXZlcnNlLWFwcGx5IGEgYmluYXJ5IHBhdGNoIHdpdGhvdXQgdGhlIHJldmVyc2UgaHVuayB0byAnJXMnIgogbXNnc3RyICJubyBlcyBwb3QgYXBsaWNhciBhbCByZXbDqXMgdW4gcGVkYcOnIGJpbmFyaSBzZW5zZSBlbCB0cm9zIHJldsOpcyBhIMKrJXPCuyIKIAotIzogYXBwbHkuYzozMTU4CisjOiBhcHBseS5jOjMxNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGFwcGx5IGJpbmFyeSBwYXRjaCB0byAnJXMnIHdpdGhvdXQgZnVsbCBpbmRleCBsaW5lIgogbXNnc3RyICIiCiAibm8gZXMgcG90IGFwbGljYXIgdW4gcGVkYcOnIGJpbmFyaSBhIMKrJXPCuyBzZW5zZSBsYSBsw61uaWEgZCfDrW5kZXggY29tcGxldGEiCiAKLSM6IGFwcGx5LmM6MzE2OAorIzogYXBwbHkuYzozMTYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ0aGUgcGF0Y2ggYXBwbGllcyB0byAnJXMnICglcyksIHdoaWNoIGRvZXMgbm90IG1hdGNoIHRoZSBjdXJyZW50IGNvbnRlbnRzLiIKQEAgLTM1NiwyODggKzc5NywyODQgQEAKICJlbCBwZWRhw6cgcydhcGxpY2EgYSDCqyVzwrsgKCVzKSwgZWwgcXVhbCBubyBjb2luY2lkZWl4IGFtYiBlbHMgY29udGluZ3V0cyAiCiAiYWN0dWFscy4iCiAKLSM6IGFwcGx5LmM6MzE3NgorIzogYXBwbHkuYzozMTcwCiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSBwYXRjaCBhcHBsaWVzIHRvIGFuIGVtcHR5ICclcycgYnV0IGl0IGlzIG5vdCBlbXB0eSIKIG1zZ3N0ciAiZWwgcGVkYcOnIHMnYXBsaWNhIGEgdW4gwqslc8K7IGJ1aXQgcGVyw7Igbm8gw6lzIGJ1aXQiCiAKLSM6IGFwcGx5LmM6MzE5NAorIzogYXBwbHkuYzozMTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSBuZWNlc3NhcnkgcG9zdGltYWdlICVzIGZvciAnJXMnIGNhbm5vdCBiZSByZWFkIgogbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIGxhIHBvc3RpbWF0Z2UgJXMgbmVjZXNzw6ByaWEgcGVyIGEgwqslc8K7IgogCi0jOiBhcHBseS5jOjMyMDcKKyM6IGFwcGx5LmM6MzIwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJiaW5hcnkgcGF0Y2ggZG9lcyBub3QgYXBwbHkgdG8gJyVzJyIKIG1zZ3N0ciAiZWwgcGVkYcOnIGJpbmFyaSBubyBzJ2FwbGljYSBhIMKrJXPCuyIKIAotIzogYXBwbHkuYzozMjEzCisjOiBhcHBseS5jOjMyMDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmluYXJ5IHBhdGNoIHRvICclcycgY3JlYXRlcyBpbmNvcnJlY3QgcmVzdWx0IChleHBlY3RpbmcgJXMsIGdvdCAlcykiCiBtc2dzdHIgIiIKICJlbCBwZWRhw6cgYmluYXJpIGEgwqslc8K7IGNyZWEgdW4gcmVzdWx0YXQgaW5jb3JyZWN0ZSAocydlc3BlcmF2YSAlcywgcydoYSAiCiAicmVidXQgJXMpIgogCi0jOiBhcHBseS5jOjMyMzQKKyM6IGFwcGx5LmM6MzIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRjaCBmYWlsZWQ6ICVzOiVsZCIKIG1zZ3N0ciAiZWwgcGVkYcOnIGhhIGZhbGxhdDogJXM6JWxkIgogCi0jOiBhcHBseS5jOjMzNTYKKyM6IGFwcGx5LmM6MzM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY2hlY2tvdXQgJXMiCiBtc2dzdHIgIm5vIGVzIHBvdCBhZ2FmYXIgJXMiCiAKLSM6IGFwcGx5LmM6MzQwOCBhcHBseS5jOjM0MTkgYXBwbHkuYzozNDY1IG1pZHguYzo1OCBzZXR1cC5jOjI3OAorIzogYXBwbHkuYzozNDAzIGFwcGx5LmM6MzQxNCBhcHBseS5jOjM0NjAgbWlkeC5jOjYxIHNldHVwLmM6MjgwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWFkICVzIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGxsZWdpciAlcyIKIAotIzogYXBwbHkuYzozNDE2CisjOiBhcHBseS5jOjM0MTEKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZGluZyBmcm9tICclcycgYmV5b25kIGEgc3ltYm9saWMgbGluayIKIG1zZ3N0ciAicydlc3TDoCBsbGVnaW50IGRlIMKrJXPCuyBtw6lzIGVubGzDoCBkJ3VuIGVubGxhw6cgc2ltYsOybGljIgogCi0jOiBhcHBseS5jOjM0NDUgYXBwbHkuYzozNjg4CisjOiBhcHBseS5jOjM0NDAgYXBwbHkuYzozNjgzCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJXMgaGFzIGJlZW4gcmVuYW1lZC9kZWxldGVkIgogbXNnc3RyICJlbCBjYW3DrSAlcyBzJ2hhIGNhbnZpYXQgZGUgbm9tIC8gcydoYSBzdXByaW1pdCIKIAotIzogYXBwbHkuYzozNTMxIGFwcGx5LmM6MzcwMworIzogYXBwbHkuYzozNTI2IGFwcGx5LmM6MzY5OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZG9lcyBub3QgZXhpc3QgaW4gaW5kZXgiCiBtc2dzdHIgIiVzOiBubyBleGlzdGVpeCBlbiBsJ8OtbmRleCIKIAotIzogYXBwbHkuYzozNTQwIGFwcGx5LmM6MzcxMQorIzogYXBwbHkuYzozNTM1IGFwcGx5LmM6MzcwNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZG9lcyBub3QgbWF0Y2ggaW5kZXgiCiBtc2dzdHIgIiVzOiBubyBjb2luY2lkZWl4IGFtYiBsJ8OtbmRleCIKIAotIzogYXBwbHkuYzozNTc1CisjOiBhcHBseS5jOjM1NzAKIG1zZ2lkICJyZXBvc2l0b3J5IGxhY2tzIHRoZSBuZWNlc3NhcnkgYmxvYiB0byBmYWxsIGJhY2sgb24gMy13YXkgbWVyZ2UuIgogbXNnc3RyICIiCiAiYWwgZGlww7JzaXQgbGkgbWFuY2EgZWwgYmxvYiBuZWNlc3NhcmkgcGVyIGEgcmV0cm9jZWRpciBhIHVuYSBmdXNpw7MgZGUgMyB2aWVzLiIKIAotIzogYXBwbHkuYzozNTc4CisjOiBhcHBseS5jOjM1NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFsbGluZyBiYWNrIHRvIHRocmVlLXdheSBtZXJnZS4uLlxuIgogbXNnc3RyICJTJ2VzdMOgIHJldHJvY2VkaW50IGEgdW5hIGZ1c2nDsyBkZSAzIHZpZXMuLi5cbiIKIAotIzogYXBwbHkuYzozNTk0IGFwcGx5LmM6MzU5OAorIzogYXBwbHkuYzozNTg5IGFwcGx5LmM6MzU5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCB0aGUgY3VycmVudCBjb250ZW50cyBvZiAnJXMnIgogbXNnc3RyICJubyBlcyBwb2RlbiBsbGVnaXIgZWxzIGNvbnRpbmd1dHMgYWN0dWFscyBkZSDCqyVzwrsiCiAKLSM6IGFwcGx5LmM6MzYxMAorIzogYXBwbHkuYzozNjA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBmYWxsIGJhY2sgb24gdGhyZWUtd2F5IG1lcmdlLi4uXG4iCiBtc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gcmV0cm9jZWRpciBhIHVuYSBmdXNpw7MgZGUgMyB2aWVzLi4uXG4iCiAKLSM6IGFwcGx5LmM6MzYyNAorIzogYXBwbHkuYzozNjE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyB3aXRoIGNvbmZsaWN0cy5cbiIKIG1zZ3N0ciAiUydoYSBhcGxpY2F0IGVsIHBlZGHDpyBhIMKrJXPCuyBhbWIgY29uZmxpY3Rlcy5cbiIKIAotIzogYXBwbHkuYzozNjI5CisjOiBhcHBseS5jOjM2MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBwYXRjaCB0byAnJXMnIGNsZWFubHkuXG4iCiBtc2dzdHIgIlMnaGEgYXBsaWNhdCBlbCBwZWRhw6cgYSDCqyVzwrsgbmV0YW1lbnQuXG4iCiAKLSM6IGFwcGx5LmM6MzY1NQorIzogYXBwbHkuYzozNjUwCiBtc2dpZCAicmVtb3ZhbCBwYXRjaCBsZWF2ZXMgZmlsZSBjb250ZW50cyIKIG1zZ3N0ciAiZWwgcGVkYcOnIGQnZWxpbWluYWNpw7MgZGVpeGEgZWxzIGNvbnRpbmd1dHMgZGVscyBmaXR4ZXJzIgogCi0jOiBhcHBseS5jOjM3MjgKKyM6IGFwcGx5LmM6MzcyMwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogd3JvbmcgdHlwZSIKIG1zZ3N0ciAiJXM6IHRpcHVzIGVycm9uaSIKIAotIzogYXBwbHkuYzozNzMwCisjOiBhcHBseS5jOjM3MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaGFzIHR5cGUgJW8sIGV4cGVjdGVkICVvIgogbXNnc3RyICIlcyDDqXMgZGVsIHRpcHVzICVvLCBzJ2VzcGVyYXZhICVvIgogCi0jOiBhcHBseS5jOjM4ODEgYXBwbHkuYzozODgzCisjOiBhcHBseS5jOjM4NzYgYXBwbHkuYzozODc4IHJlYWQtY2FjaGUuYzo4MzAgcmVhZC1jYWNoZS5jOjg1NgorIzogcmVhZC1jYWNoZS5jOjEzMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBwYXRoICclcyciCiBtc2dzdHIgImNhbcOtIG5vIHbDoGxpZDogwqslc8K7IgogCi0jOiBhcHBseS5jOjM5MzkKKyM6IGFwcGx5LmM6MzkzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgiCiBtc2dzdHIgIiVzOiBqYSBleGlzdGVpeCBlbiBsJ8OtbmRleCIKIAotIzogYXBwbHkuYzozOTQyCisjOiBhcHBseS5jOjM5MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGFscmVhZHkgZXhpc3RzIGluIHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICIlczogamEgZXhpc3RlaXggZW4gZWwgZGlyZWN0b3JpIGRlIHRyZWJhbGwiCiAKLSM6IGFwcGx5LmM6Mzk2MgorIzogYXBwbHkuYzozOTU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSIKIG1zZ3N0ciAiZWwgbW9kZSBub3UgKCVvKSBkZSAlcyBubyBjb2luY2lkZWl4IGFtYiBlbCBtb2RlIGFudGljICglbykiCiAKLSM6IGFwcGx5LmM6Mzk2NworIzogYXBwbHkuYzozOTYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSBvZiAlcyIKIG1zZ3N0ciAiZWwgbW9kZSBub3UgKCVvKSBkZSAlcyBubyBjb2luY2lkZWl4IGFtYiBlbCBtb2RlIGFudGljICglbykgZGUgJXMiCiAKLSM6IGFwcGx5LmM6Mzk4NworIzogYXBwbHkuYzozOTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgImFmZmVjdGVkIGZpbGUgJyVzJyBpcyBiZXlvbmQgYSBzeW1ib2xpYyBsaW5rIgogbXNnc3RyICJlbCBmaXR4ZXIgYWZlY3RhdCDCqyVzwrsgw6lzIG3DqXMgZW5sbMOgIGQndW4gZW5sbGHDpyBzaW1iw7JsaWMiCiAKLSM6IGFwcGx5LmM6Mzk5MQorIzogYXBwbHkuYzozOTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBwYXRjaCBkb2VzIG5vdCBhcHBseSIKIG1zZ3N0ciAiJXM6IGVsIHBlZGHDpyBubyBzJ2FwbGljYSIKIAotIzogYXBwbHkuYzo0MDA2CisjOiBhcHBseS5jOjQwMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2hlY2tpbmcgcGF0Y2ggJXMuLi4iCiBtc2dzdHIgIlMnZXN0w6AgY29tcHJvdmFudCBlbCBwZWRhw6cgJXMuLi4iCiAKLSM6IGFwcGx5LmM6NDA5OAorIzogYXBwbHkuYzo0MDkzCiAjLCBjLWZvcm1hdAogbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzIGZvciBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgImZhbHRhIGxhIGluZm9ybWFjacOzIHNoYTEgbyDDqXMgaW7DunRpbCBwZXIgYWwgc3VibcOyZHVsICVzIgogCi0jOiBhcHBseS5jOjQxMDUKKyM6IGFwcGx5LmM6NDEwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJtb2RlIGNoYW5nZSBmb3IgJXMsIHdoaWNoIGlzIG5vdCBpbiBjdXJyZW50IEhFQUQiCiBtc2dzdHIgImNhbnZpIGRlIG1vZGUgcGVyIGEgJXMsIGVsIHF1YWwgbm8gZXN0w6AgZW4gbGEgSEVBRCBhY3R1YWwiCiAKLSM6IGFwcGx5LmM6NDEwOAorIzogYXBwbHkuYzo0MTAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzICglcykuIgogbXNnc3RyICJmYWx0YSBpbmZvcm1hY2nDsyBzaGExIG8gw6lzIGluw7p0aWwgKCVzKS4iCiAKLSM6IGFwcGx5LmM6NDExMyBidWlsdGluL2NoZWNrb3V0LmM6MjQ0IGJ1aWx0aW4vcmVzZXQuYzoxNDIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibWFrZV9jYWNoZV9lbnRyeSBmYWlsZWQgZm9yIHBhdGggJyVzJyIKLW1zZ3N0ciAibWFrZV9jYWNoZV9lbnRyeSBoYSBmYWxsYXQgcGVyIGFsIGNhbcOtIMKrJXPCuyIKLQotIzogYXBwbHkuYzo0MTE3CisjOiBhcHBseS5jOjQxMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGFkZCAlcyB0byB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYWZlZ2lyICVzIGEgbCfDrW5kZXggdGVtcG9yYWwiCiAKLSM6IGFwcGx5LmM6NDEyNworIzogYXBwbHkuYzo0MTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSB0ZW1wb3JhcnkgaW5kZXggdG8gJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgbCfDrW5kZXggdGVtcG9yYWwgYSAlcyIKIAotIzogYXBwbHkuYzo0MjY1CisjOiBhcHBseS5jOjQyNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlcyBmcm9tIGluZGV4IgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVsaW1pbmFyICVzIGRlIGwnw61uZGV4IgogCi0jOiBhcHBseS5jOjQyOTkKKyM6IGFwcGx5LmM6NDI5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IHBhdGNoIGZvciBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgInBlZGHDpyBtYWxtw6hzIHBlciBhbCBzdWJtw7JkdWwgJXMiCiAKLSM6IGFwcGx5LmM6NDMwNQorIzogYXBwbHkuYzo0MzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ld2x5IGNyZWF0ZWQgZmlsZSAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZlciBzdGF0IGFsIGZpdHhlciBub3ZhbWVudCBjcmVhdCDCqyVzwrsiCiAKLSM6IGFwcGx5LmM6NDMxMworIzogYXBwbHkuYzo0MzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYmFja2luZyBzdG9yZSBmb3IgbmV3bHkgY3JlYXRlZCBmaWxlICVzIgogbXNnc3RyICIiCiAibm8gcydoYSBwb2d1dCBjcmVhciB1biBtYWdhdHplbSBkZSByZWNvbHphbWVudCBwZXIgYWwgZml0eGVyIG5vdmFtZW50IGNyZWF0ICIKICIlcyIKIAotIzogYXBwbHkuYzo0MzE5IGFwcGx5LmM6NDQ2NAorIzogYXBwbHkuYzo0MzE0IGFwcGx5LmM6NDQ1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIGNhY2hlIGVudHJ5IGZvciAlcyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBhZmVnaXIgdW5hIGVudHJhZGEgZGUgY2F1IHBlciBhICVzIgogCi0jOiBhcHBseS5jOjQzNjIKKyM6IGFwcGx5LmM6NDM1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBhIMKrJXPCuyIKIAotIzogYXBwbHkuYzo0MzY2CisjOiBhcHBseS5jOjQzNjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2xvc2luZyBmaWxlICclcyciCiBtc2dzdHIgInMnZXN0w6AgdGFuY2FudCBlbCBmaXR4ZXIgwqslc8K7IgogCi0jOiBhcHBseS5jOjQ0MzYKKyM6IGFwcGx5LmM6NDQzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIG1vZGUgJW8iCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgZWwgZml0eGVyIMKrJXPCuyBtb2RlICVvIgogCi0jOiBhcHBseS5jOjQ1MzQKKyM6IGFwcGx5LmM6NDUyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBsaWVkIHBhdGNoICVzIGNsZWFubHkuIgogbXNnc3RyICJFbCBwZWRhw6cgJXMgcydoYSBhcGxpY2F0IG5ldGFtZW50LiIKIAotIzogYXBwbHkuYzo0NTQyCisjOiBhcHBseS5jOjQ1MzcKIG1zZ2lkICJpbnRlcm5hbCBlcnJvciIKIG1zZ3N0ciAiZXJyb3IgaW50ZXJuIgogCi0jOiBhcHBseS5jOjQ1NDUKKyM6IGFwcGx5LmM6NDU0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBseWluZyBwYXRjaCAlJXMgd2l0aCAlZCByZWplY3QuLi4iCiBtc2dpZF9wbHVyYWwgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdHMuLi4iCiBtc2dzdHJbMF0gIlMnZXN0w6AgYXBsaWNhbnQgZWwgcGVkYcOnICUlcyBhbWIgJWQgcmVidWlnLi4uIgogbXNnc3RyWzFdICJTJ2VzdMOgIGFwbGljYW50IGVsIHBlZGHDpyAlJXMgYW1iICVkIHJlYnV0am9zLi4uIgogCi0jOiBhcHBseS5jOjQ1NTYKKyM6IGFwcGx5LmM6NDU1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cnVuY2F0aW5nIC5yZWogZmlsZW5hbWUgdG8gJS4qcy5yZWoiCiBtc2dzdHIgInMnZXN0w6AgdHJ1bmNhbnQgZWwgbm9tIGRlbCBmaXR4ZXIgLnJlaiBhICUuKnMucmVqIgogCi0jOiBhcHBseS5jOjQ1NjQgYnVpbHRpbi9mZXRjaC5jOjg0MyBidWlsdGluL2ZldGNoLmM6MTEyMgorIzogYXBwbHkuYzo0NTU5IGJ1aWx0aW4vZmV0Y2guYzo5MDEgYnVpbHRpbi9mZXRjaC5jOjExOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG9wZW4gJXMiCiBtc2dzdHIgIm5vIGVzIHBvdCBvYnJpciAlcyIKIAotIzogYXBwbHkuYzo0NTc4CisjOiBhcHBseS5jOjQ1NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiSHVuayAjJWQgYXBwbGllZCBjbGVhbmx5LiIKIG1zZ3N0ciAiRWwgdHJvcyAjJWQgcydoYSBhcGxpY2F0IG5ldGFtZW50LiIKIAotIzogYXBwbHkuYzo0NTgyCisjOiBhcHBseS5jOjQ1NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVqZWN0ZWQgaHVuayAjJWQuIgogbXNnc3RyICJTJ2hhIHJlYnV0amF0IGVsIHRyb3MgIyVkLiIKIAotIzogYXBwbHkuYzo0NjkyCisjOiBhcHBseS5jOjQ2OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBlZCBwYXRjaCAnJXMnLiIKIG1zZ3N0ciAiUydoYSBvbcOocyBlbCBwZWRhw6cgwqslc8K7LiIKIAotIzogYXBwbHkuYzo0NzAwCisjOiBhcHBseS5jOjQ3MDQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaW5wdXQiCiBtc2dzdHIgImVudHJhZGEgbm8gcmVjb25lZ3VkYSIKIAotIzogYXBwbHkuYzo0NzE5CisjOiBhcHBseS5jOjQ3MjQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBpbmRleCBmaWxlIgogbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIGVsIGZpdHhlciBkJ8OtbmRleCIKIAotIzogYXBwbHkuYzo0ODc0CisjOiBhcHBseS5jOjQ4ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgb3BlbiBwYXRjaCAnJXMnOiAlcyIKIG1zZ3N0ciAibm8gZXMgcG90IG9icmlyIGVsIHBlZGHDpyDCqyVzwrs6ICVzIgogCi0jOiBhcHBseS5jOjQ5MDEKKyM6IGFwcGx5LmM6NDkwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJzcXVlbGNoZWQgJWQgd2hpdGVzcGFjZSBlcnJvciIKIG1zZ2lkX3BsdXJhbCAic3F1ZWxjaGVkICVkIHdoaXRlc3BhY2UgZXJyb3JzIgogbXNnc3RyWzBdICJzJ2hhIHNpbGVuY2lhdCAlZCBlcnJvciBkJ2VzcGFpIGVuIGJsYW5jIgogbXNnc3RyWzFdICJzJ2hhbiBzaWxlbmNpYXQgJWQgZXJyb3JzIGQnZXNwYWkgZW4gYmxhbmMiCiAKLSM6IGFwcGx5LmM6NDkwNyBhcHBseS5jOjQ5MjIKKyM6IGFwcGx5LmM6NDkxNCBhcHBseS5jOjQ5MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJWQgbGluZSBhZGRzIHdoaXRlc3BhY2UgZXJyb3JzLiIKIG1zZ2lkX3BsdXJhbCAiJWQgbGluZXMgYWRkIHdoaXRlc3BhY2UgZXJyb3JzLiIKIG1zZ3N0clswXSAiJWQgbMOtbmlhIGFmZWdlaXggZXJyb3JzIGQnZXNwYWkgZW4gYmxhbmMuIgogbXNnc3RyWzFdICIlZCBsw61uaWVzIGFmZWdlaXhlbiBlcnJvcnMgZCdlc3BhaSBlbiBibGFuYy4iCiAKLSM6IGFwcGx5LmM6NDkxNQorIzogYXBwbHkuYzo0OTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVkIGxpbmUgYXBwbGllZCBhZnRlciBmaXhpbmcgd2hpdGVzcGFjZSBlcnJvcnMuIgogbXNnaWRfcGx1cmFsICIlZCBsaW5lcyBhcHBsaWVkIGFmdGVyIGZpeGluZyB3aGl0ZXNwYWNlIGVycm9ycy4iCkBAIC02NDYsMTQ1ICsxMDgzLDEzNSBAQAogbXNnc3RyWzFdICIiCiAiUydoYW4gYXBsaWNhdCAlZCBsw61uaWVzIGRlc3Byw6lzIGQnYXJyZWdsYXIgZWxzIGVycm9ycyBkJ2VzcGFpIGVuIGJsYW5jLiIKIAotIzogYXBwbHkuYzo0OTMxIGJ1aWx0aW4vYWRkLmM6NTM4IGJ1aWx0aW4vbXYuYzozMDAgYnVpbHRpbi9ybS5jOjM4OQorIzogYXBwbHkuYzo0OTM4IGJ1aWx0aW4vYWRkLmM6NTc5IGJ1aWx0aW4vbXYuYzozMDEgYnVpbHRpbi9ybS5jOjM5MAogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBlc2NyaXVyZSB1biBmaXR4ZXIgZCfDrW5kZXggbm91IgogCi0jOiBhcHBseS5jOjQ5NTggYXBwbHkuYzo0OTYxIGJ1aWx0aW4vYW0uYzoyMjA5IGJ1aWx0aW4vYW0uYzoyMjEyCi0jOiBidWlsdGluL2Nsb25lLmM6MTIxIGJ1aWx0aW4vZmV0Y2guYzoxMTggYnVpbHRpbi9tZXJnZS5jOjI2MgotIzogYnVpbHRpbi9wdWxsLmM6MTk5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MDYKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzYyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY1Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0NiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0OQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwODggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJwYXRoIgotbXNnc3RyICJjYW3DrSIKLQotIzogYXBwbHkuYzo0OTU5CisjOiBhcHBseS5jOjQ5NjYKIG1zZ2lkICJkb24ndCBhcHBseSBjaGFuZ2VzIG1hdGNoaW5nIHRoZSBnaXZlbiBwYXRoIgogbXNnc3RyICJubyBhcGxpcXVpcyBlbHMgY2FudmlzIHF1ZSBjb2luY2lkZWl4aW4gYW1iIGVsIGNhbcOtIGRvbmF0IgogCi0jOiBhcHBseS5jOjQ5NjIKKyM6IGFwcGx5LmM6NDk2OQogbXNnaWQgImFwcGx5IGNoYW5nZXMgbWF0Y2hpbmcgdGhlIGdpdmVuIHBhdGgiCiBtc2dzdHIgImFwbGljYSBlbHMgY2FudmlzIHF1ZSBjb2luY2lkZWl4aW4gYW1iIGVsIGNhbcOtIGRvbmF0IgogCi0jOiBhcHBseS5jOjQ5NjQgYnVpbHRpbi9hbS5jOjIyMTgKKyM6IGFwcGx5LmM6NDk3MSBidWlsdGluL2FtLmM6MjIwNgogbXNnaWQgIm51bSIKIG1zZ3N0ciAibsO6bWVybyIKIAotIzogYXBwbHkuYzo0OTY1CisjOiBhcHBseS5jOjQ5NzIKIG1zZ2lkICJyZW1vdmUgPG51bT4gbGVhZGluZyBzbGFzaGVzIGZyb20gdHJhZGl0aW9uYWwgZGlmZiBwYXRocyIKIG1zZ3N0ciAiIgogImVsaW1pbmEgPG5vbWJyZT4gYmFycmVzIG9ibGlxw7xlcyBpbmljaWFscyBkZWxzIGNhbWlucyBkZSBkaWZlcsOobmNpYSAiCiAidHJhZGljaW9uYWxzIgogCi0jOiBhcHBseS5jOjQ5NjgKKyM6IGFwcGx5LmM6NDk3NQogbXNnaWQgImlnbm9yZSBhZGRpdGlvbnMgbWFkZSBieSB0aGUgcGF0Y2giCiBtc2dzdHIgImlnbm9yYSBhZmVnaW1lbnRzIGZldHMgcGVsIHBlZGHDpyIKIAotIzogYXBwbHkuYzo0OTcwCisjOiBhcHBseS5jOjQ5NzcKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGRpZmZzdGF0IGZvciB0aGUgaW5wdXQiCiBtc2dzdHIgIiIKICJlbiBsbG9jIGQnYXBsaWNhciBlbCBwZWRhw6csIGVtZXQgbGVzIGVzdGFkw61zdGlxdWVzIGRlIGRpZmVyw6huY2lhIGRlIGwnZW50cmFkYSIKIAotIzogYXBwbHkuYzo0OTc0CisjOiBhcHBseS5jOjQ5ODEKIG1zZ2lkICJzaG93IG51bWJlciBvZiBhZGRlZCBhbmQgZGVsZXRlZCBsaW5lcyBpbiBkZWNpbWFsIG5vdGF0aW9uIgogbXNnc3RyICJtb3N0cmEgZWwgbm9tYnJlIGRlIGzDrW5pZXMgYWZlZ2lkZXMgaSBzdXByaW1pZGVzIGVuIG5vdGFjacOzIGRlY2ltYWwiCiAKLSM6IGFwcGx5LmM6NDk3NgorIzogYXBwbHkuYzo0OTgzCiBtc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIG91dHB1dCBhIHN1bW1hcnkgZm9yIHRoZSBpbnB1dCIKIG1zZ3N0ciAiZW4gbGxvYyBkJ2FwbGljYXIgZWwgcGVkYcOnLCBlbWV0IHVuIHJlc3VtIGRlIGwnZW50cmFkYSIKIAotIzogYXBwbHkuYzo0OTc4CisjOiBhcHBseS5jOjQ5ODUKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgc2VlIGlmIHRoZSBwYXRjaCBpcyBhcHBsaWNhYmxlIgogbXNnc3RyICJlbiBsbG9jIGQnYXBsaWNhciBlbCBwZWRhw6csIHZlZ2VzIHNpIGVsIHBlZGHDpyDDqXMgYXBsaWNhYmxlIgogCi0jOiBhcHBseS5jOjQ5ODAKKyM6IGFwcGx5LmM6NDk4NwogbXNnaWQgIm1ha2Ugc3VyZSB0aGUgcGF0Y2ggaXMgYXBwbGljYWJsZSB0byB0aGUgY3VycmVudCBpbmRleCIKIG1zZ3N0ciAiYXNzZWd1cmEgcXVlIGVsIHBlZGHDpyBzaWd1aSBhcGxpY2FibGUgYSBsJ8OtbmRleCBhY3R1YWwiCiAKLSM6IGFwcGx5LmM6NDk4MgorIzogYXBwbHkuYzo0OTg5CiBtc2dpZCAibWFyayBuZXcgZmlsZXMgd2l0aCBgZ2l0IGFkZCAtLWludGVudC10by1hZGRgIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDk4NAorIzogYXBwbHkuYzo0OTkxCiBtc2dpZCAiYXBwbHkgYSBwYXRjaCB3aXRob3V0IHRvdWNoaW5nIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgImFwbGljYSB1biBwZWRhw6cgc2Vuc2UgdG9jYXIgbCdhcmJyZSBkZSB0cmViYWxsIgogCi0jOiBhcHBseS5jOjQ5ODYKKyM6IGFwcGx5LmM6NDk5MwogbXNnaWQgImFjY2VwdCBhIHBhdGNoIHRoYXQgdG91Y2hlcyBvdXRzaWRlIHRoZSB3b3JraW5nIGFyZWEiCiBtc2dzdHIgImFjY2VwdGEgdW4gcGVkYcOnIHF1ZSB0b3F1aSBmb3JhIGRlIGwnw6ByZWEgZGUgdHJlYmFsbCIKIAotIzogYXBwbHkuYzo0OTg5CisjOiBhcHBseS5jOjQ5OTYKIG1zZ2lkICJhbHNvIGFwcGx5IHRoZSBwYXRjaCAodXNlIHdpdGggLS1zdGF0Ly0tc3VtbWFyeS8tLWNoZWNrKSIKIG1zZ3N0ciAiYXBsaWNhIGVsIHBlZGHDpyB0YW1iw6kgKHVzZXUgYW1iIC0tc3RhdC8tLXN1bW1hcnkvLS1jaGVjaykiCiAKLSM6IGFwcGx5LmM6NDk5MQorIzogYXBwbHkuYzo0OTk4CiBtc2dpZCAiYXR0ZW1wdCB0aHJlZS13YXkgbWVyZ2UgaWYgYSBwYXRjaCBkb2VzIG5vdCBhcHBseSIKIG1zZ3N0ciAiaW50ZW50YSB1bmEgZnVzacOzIGRlIHRyZXMgdmllcyBzaSBlbCBwZWRhw6cgbm8gcydhcGxpY2EiCiAKLSM6IGFwcGx5LmM6NDk5MworIzogYXBwbHkuYzo1MDAwCiBtc2dpZCAiYnVpbGQgYSB0ZW1wb3JhcnkgaW5kZXggYmFzZWQgb24gZW1iZWRkZWQgaW5kZXggaW5mb3JtYXRpb24iCiBtc2dzdHIgImNvbnN0cnVlaXggdW4gw61uZGV4IHRlbXBvcmFsIGJhc2F0IGVuIGxhIGluZm9ybWFjacOzIGQnw61uZGV4IGluY3J1c3RhZGEiCiAKLSM6IGFwcGx5LmM6NDk5NiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjMKKyM6IGFwcGx5LmM6NTAwMyBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTczIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjQKIG1zZ2lkICJwYXRocyBhcmUgc2VwYXJhdGVkIHdpdGggTlVMIGNoYXJhY3RlciIKIG1zZ3N0ciAiZWxzIGNhbWlucyBzZSBzZXBhcmVuIGFtYiBlbCBjYXLDoGN0ZXIgTlVMIgogCi0jOiBhcHBseS5jOjQ5OTgKKyM6IGFwcGx5LmM6NTAwNQogbXNnaWQgImVuc3VyZSBhdCBsZWFzdCA8bj4gbGluZXMgb2YgY29udGV4dCBtYXRjaCIKIG1zZ3N0ciAiYXNzZWd1cmEndCBxdWUgYWxtZW55cyA8bj4gbMOtbmllcyBkZSBjb250ZXh0IGNvaW5jaWRlaXhpbiIKIAotIzogYXBwbHkuYzo0OTk5IGJ1aWx0aW4vYW0uYzoyMTk3IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTcKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTkgYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDEKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxMCBidWlsdGluL3JlYmFzZS5jOjgzOQorIzogYXBwbHkuYzo1MDA2IGJ1aWx0aW4vYW0uYzoyMTg1IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTgKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAwIGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTAgYnVpbHRpbi9yZWJhc2UuYzoxNDc0CiBtc2dpZCAiYWN0aW9uIgogbXNnc3RyICJhY2Npw7MiCiAKLSM6IGFwcGx5LmM6NTAwMAorIzogYXBwbHkuYzo1MDA3CiBtc2dpZCAiZGV0ZWN0IG5ldyBvciBtb2RpZmllZCBsaW5lcyB0aGF0IGhhdmUgd2hpdGVzcGFjZSBlcnJvcnMiCiBtc2dzdHIgIiIKICJkZXRlY3RhIGxlcyBsw61uaWVzIG5vdmVzIG8gbW9kaWZpY2FkZXMgcXVlIHRpbmd1aW4gZXJyb3JzIGQnZXNwYWkgZW4gYmxhbmMiCiAKLSM6IGFwcGx5LmM6NTAwMyBhcHBseS5jOjUwMDYKKyM6IGFwcGx5LmM6NTAxMCBhcHBseS5jOjUwMTMKIG1zZ2lkICJpZ25vcmUgY2hhbmdlcyBpbiB3aGl0ZXNwYWNlIHdoZW4gZmluZGluZyBjb250ZXh0IgogbXNnc3RyICJpZ25vcmEgZWxzIGNhbnZpcyBkJ2VzcGFpIGVuIGJsYW5jIGVuIGNlcmNhciBjb250ZXh0IgogCi0jOiBhcHBseS5jOjUwMDkKKyM6IGFwcGx5LmM6NTAxNgogbXNnaWQgImFwcGx5IHRoZSBwYXRjaCBpbiByZXZlcnNlIgogbXNnc3RyICJhcGxpY2EgZWwgcGVkYcOnIGFsIHJldsOpcyIKIAotIzogYXBwbHkuYzo1MDExCisjOiBhcHBseS5jOjUwMTgKIG1zZ2lkICJkb24ndCBleHBlY3QgYXQgbGVhc3Qgb25lIGxpbmUgb2YgY29udGV4dCIKIG1zZ3N0ciAibm8gZXNwZXJpcyBhbG1lbnlzIHVuYSBsw61uaWEgZGUgY29udGV4dCIKIAotIzogYXBwbHkuYzo1MDEzCisjOiBhcHBseS5jOjUwMjAKIG1zZ2lkICJsZWF2ZSB0aGUgcmVqZWN0ZWQgaHVua3MgaW4gY29ycmVzcG9uZGluZyAqLnJlaiBmaWxlcyIKIG1zZ3N0ciAiZGVpeGEgZWxzIHRyb3Nzb3MgcmVidXRqYXRzIGVuIGZpdHhlcnMgKi5yZWogY29ycmVzcG9uZW50cyIKIAotIzogYXBwbHkuYzo1MDE1CisjOiBhcHBseS5jOjUwMjIKIG1zZ2lkICJhbGxvdyBvdmVybGFwcGluZyBodW5rcyIKIG1zZ3N0ciAicGVybWV0IHRyb3Nzb3MgZW5jYXZhbGNhbnRzIgogCi0jOiBhcHBseS5jOjUwMTYgYnVpbHRpbi9hZGQuYzoyOTAgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyMQotIzogYnVpbHRpbi9jb21taXQuYzoxMzA5IGJ1aWx0aW4vY291bnQtb2JqZWN0cy5jOjk4IGJ1aWx0aW4vZnNjay5jOjY5OAotIzogYnVpbHRpbi9sb2cuYzoyMDIzIGJ1aWx0aW4vbXYuYzoxMjIgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjcKLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1NworIzogYXBwbHkuYzo1MDIzIGJ1aWx0aW4vYWRkLmM6MzA5IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM1NSBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5OCBidWlsdGluL2ZzY2suYzo3NzQKKyM6IGJ1aWx0aW4vbG9nLmM6MjE2NiBidWlsdGluL212LmM6MTIzIGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI4CiBtc2dpZCAiYmUgdmVyYm9zZSIKIG1zZ3N0ciAic2lndWVzIGRldGFsbGF0IgogCi0jOiBhcHBseS5jOjUwMTgKKyM6IGFwcGx5LmM6NTAyNQogbXNnaWQgInRvbGVyYXRlIGluY29ycmVjdGx5IGRldGVjdGVkIG1pc3NpbmcgbmV3LWxpbmUgYXQgdGhlIGVuZCBvZiBmaWxlIgogbXNnc3RyICJ0b2xlcmEgdW5hIGzDrW5pYSBub3ZhIGluY29ycmVjdGFtZW50IGRldGVjdGFkYSBhbCBmaW5hbCBkZWwgZml0eGVyIgogCi0jOiBhcHBseS5jOjUwMjEKKyM6IGFwcGx5LmM6NTAyOAogbXNnaWQgImRvIG5vdCB0cnVzdCB0aGUgbGluZSBjb3VudHMgaW4gdGhlIGh1bmsgaGVhZGVycyIKIG1zZ3N0ciAibm8gY29uZmnDr3MgZW4gZWxzIHJlY29tcHRlcyBkZSBsw61uaWEgZW4gbGVzIGNhcMOnYWxlcmVzIGRlbHMgdHJvc3NvcyIKIAotIzogYXBwbHkuYzo1MDIzIGJ1aWx0aW4vYW0uYzoyMjA2CisjOiBhcHBseS5jOjUwMzAgYnVpbHRpbi9hbS5jOjIxOTQKIG1zZ2lkICJyb290IgogbXNnc3RyICJhcnJlbCIKIAotIzogYXBwbHkuYzo1MDI0CisjOiBhcHBseS5jOjUwMzEKIG1zZ2lkICJwcmVwZW5kIDxyb290PiB0byBhbGwgZmlsZW5hbWVzIgogbXNnc3RyICJhbnRlcG9zYSA8YXJyZWw+IGEgdG90cyBlbHMgbm9tcyBkZSBmaXR4ZXIiCiAKQEAgLTgwNywxNTggKzEyMzQsMTgyIEBACiBtc2dpZCAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPHJlcG8+IFstLWV4ZWMgPGNtZD5dIC0tbGlzdCIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPGRpcMOyc2l0PiBbLS1leGVjIDxvcmRyZT5dIC0tbGlzdCIKIAotIzogYXJjaGl2ZS5jOjM3MCBidWlsdGluL2FkZC5jOjE3NiBidWlsdGluL2FkZC5jOjUxNCBidWlsdGluL3JtLmM6Mjk4CisjOiBhcmNoaXZlLmM6MzcyIGJ1aWx0aW4vYWRkLmM6MTgwIGJ1aWx0aW4vYWRkLmM6NTU1IGJ1aWx0aW4vcm0uYzoyOTkKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlcyIKIG1zZ3N0ciAibCdlc3BlY2lmaWNhY2nDsyBkZSBjYW3DrSDCqyVzwrsgbm8gaGEgY29pbmNpZGl0IGFtYiBjYXAgZml0eGVyIgogCi0jOiBhcmNoaXZlLmM6NDUzCisjOiBhcmNoaXZlLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggcmVmOiAlLipzIgorbXNnc3RyICJubyBleGlzdGVpeCBsYSByZWZlcsOobmNpYTogJS4qcyIKKworIzogYXJjaGl2ZS5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJXMiCittc2dzdHIgIm5vIMOpcyB1biBub20gZCdvYmplY3RlIHbDoGxpZDogJXMiCisKKyM6IGFyY2hpdmUuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdHJlZSBvYmplY3Q6ICVzIgorbXNnc3RyICJubyDDqXMgdW4gb2JqZWN0ZSBkJ2FyYnJlOiAlcyIKKworIzogYXJjaGl2ZS5jOjQyNgorbXNnaWQgImN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkgaXMgdW50cmFja2VkIgorbXNnc3RyICJubyBlcyBzZWd1ZWl4IGVsIGRpcmVjdG9yaSBkZSB0cmViYWxsIGFjdHVhbCIKKworIzogYXJjaGl2ZS5jOjQ1NwogbXNnaWQgImZtdCIKIG1zZ3N0ciAiZm9ybWF0IgogCi0jOiBhcmNoaXZlLmM6NDUzCisjOiBhcmNoaXZlLmM6NDU3CiBtc2dpZCAiYXJjaGl2ZSBmb3JtYXQiCiBtc2dzdHIgImZvcm1hdCBkJ2FyeGl1IgogCi0jOiBhcmNoaXZlLmM6NDU0IGJ1aWx0aW4vbG9nLmM6MTUzNgorIzogYXJjaGl2ZS5jOjQ1OCBidWlsdGluL2xvZy5jOjE2NTMKIG1zZ2lkICJwcmVmaXgiCiBtc2dzdHIgInByZWZpeCIKIAotIzogYXJjaGl2ZS5jOjQ1NQorIzogYXJjaGl2ZS5jOjQ1OQogbXNnaWQgInByZXBlbmQgcHJlZml4IHRvIGVhY2ggcGF0aG5hbWUgaW4gdGhlIGFyY2hpdmUiCiBtc2dzdHIgImFudGVwb3NhIGVsIHByZWZpeCBhIGNhZGEgbm9tIGRlIGNhbcOtIGVuIGwnYXJ4aXUiCiAKLSM6IGFyY2hpdmUuYzo0NTYgYnVpbHRpbi9ibGFtZS5jOjgyMCBidWlsdGluL2JsYW1lLmM6ODIxIGJ1aWx0aW4vY29uZmlnLmM6MTI5Ci0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNSBidWlsdGluL2dyZXAuYzo4ODQKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDQgYnVpbHRpbi9scy1maWxlcy5jOjU1OSBidWlsdGluL2xzLWZpbGVzLmM6NTYyCi0jOiBidWlsdGluL25vdGVzLmM6NDEyIGJ1aWx0aW4vbm90ZXMuYzo1NzUgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjIKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNjIKKyM6IGFyY2hpdmUuYzo0NjAgYnVpbHRpbi9ibGFtZS5jOjg2MSBidWlsdGluL2JsYW1lLmM6ODY1IGJ1aWx0aW4vYmxhbWUuYzo4NjYKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTcgYnVpbHRpbi9jb25maWcuYzoxMjkgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY0IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY4IGJ1aWx0aW4vZ3JlcC5jOjg5OQorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNSBidWlsdGluL2xzLWZpbGVzLmM6NTYwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTIgYnVpbHRpbi9ub3Rlcy5jOjU3OCBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogcGFyc2Utb3B0aW9ucy5oOjE5MAogbXNnaWQgImZpbGUiCiBtc2dzdHIgImZpdHhlciIKIAotIzogYXJjaGl2ZS5jOjQ1NyBidWlsdGluL2FyY2hpdmUuYzo4OQorIzogYXJjaGl2ZS5jOjQ2MSBidWlsdGluL2FyY2hpdmUuYzo5MAogbXNnaWQgIndyaXRlIHRoZSBhcmNoaXZlIHRvIHRoaXMgZmlsZSIKIG1zZ3N0ciAiZXNjcml1IGwnYXJ4aXUgYSBhcXVlc3QgZml0eGVyIgogCi0jOiBhcmNoaXZlLmM6NDU5CisjOiBhcmNoaXZlLmM6NDYzCiBtc2dpZCAicmVhZCAuZ2l0YXR0cmlidXRlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAibGxlZ2VpeCAuZ2l0YXR0cmlidXRlcyBlbiBlbCBkaXJlY3RvcmkgZGUgdHJlYmFsbCIKIAotIzogYXJjaGl2ZS5jOjQ2MAorIzogYXJjaGl2ZS5jOjQ2NAogbXNnaWQgInJlcG9ydCBhcmNoaXZlZCBmaWxlcyBvbiBzdGRlcnIiCiBtc2dzdHIgImluZm9ybWEgZGUgZml0eGVycyBhcnhpdmF0cyBlbiBzdGRlcnIiCiAKLSM6IGFyY2hpdmUuYzo0NjEKKyM6IGFyY2hpdmUuYzo0NjUKIG1zZ2lkICJzdG9yZSBvbmx5IgogbXNnc3RyICJub23DqXMgZW1tYWdhdHplbWEiCiAKLSM6IGFyY2hpdmUuYzo0NjIKKyM6IGFyY2hpdmUuYzo0NjYKIG1zZ2lkICJjb21wcmVzcyBmYXN0ZXIiCiBtc2dzdHIgImNvbXByaW1laXggbcOpcyByw6BwaWRhbWVudCIKIAotIzogYXJjaGl2ZS5jOjQ3MAorIzogYXJjaGl2ZS5jOjQ3NAogbXNnaWQgImNvbXByZXNzIGJldHRlciIKIG1zZ3N0ciAiY29tcHJpbWVpeCBtaWxsb3IiCiAKLSM6IGFyY2hpdmUuYzo0NzMKKyM6IGFyY2hpdmUuYzo0NzcKIG1zZ2lkICJsaXN0IHN1cHBvcnRlZCBhcmNoaXZlIGZvcm1hdHMiCiBtc2dzdHIgImxsaXN0YSBlbHMgZm9ybWF0cyBkJ2FyeGl1IGFkbWVzb3MiCiAKLSM6IGFyY2hpdmUuYzo0NzUgYnVpbHRpbi9hcmNoaXZlLmM6OTAgYnVpbHRpbi9jbG9uZS5jOjExMSBidWlsdGluL2Nsb25lLmM6MTE0Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1NQorIzogYXJjaGl2ZS5jOjQ3OSBidWlsdGluL2FyY2hpdmUuYzo5MSBidWlsdGluL2Nsb25lLmM6MTEzIGJ1aWx0aW4vY2xvbmUuYzoxMTYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzkxIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODg0CiBtc2dpZCAicmVwbyIKIG1zZ3N0ciAiZGlww7JzaXQiCiAKLSM6IGFyY2hpdmUuYzo0NzYgYnVpbHRpbi9hcmNoaXZlLmM6OTEKKyM6IGFyY2hpdmUuYzo0ODAgYnVpbHRpbi9hcmNoaXZlLmM6OTIKIG1zZ2lkICJyZXRyaWV2ZSB0aGUgYXJjaGl2ZSBmcm9tIHJlbW90ZSByZXBvc2l0b3J5IDxyZXBvPiIKIG1zZ3N0ciAicmVjdXBlcmEgbCdhcnhpdSBkZWwgZGlww7JzaXQgcmVtb3QgPGRpcMOyc2l0PiIKIAotIzogYXJjaGl2ZS5jOjQ3NyBidWlsdGluL2FyY2hpdmUuYzo5MiBidWlsdGluL2RpZmZ0b29sLmM6NzE0Ci0jOiBidWlsdGluL25vdGVzLmM6NDk2CisjOiBhcmNoaXZlLmM6NDgxIGJ1aWx0aW4vYXJjaGl2ZS5jOjkzIGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTgKIG1zZ2lkICJjb21tYW5kIgogbXNnc3RyICJvcmRyZSIKIAotIzogYXJjaGl2ZS5jOjQ3OCBidWlsdGluL2FyY2hpdmUuYzo5MworIzogYXJjaGl2ZS5jOjQ4MiBidWlsdGluL2FyY2hpdmUuYzo5NAogbXNnaWQgInBhdGggdG8gdGhlIHJlbW90ZSBnaXQtdXBsb2FkLWFyY2hpdmUgY29tbWFuZCIKIG1zZ3N0ciAiY2Ftw60gYSBsJ29yZHJlIGdpdC11cGxvYWQtYXJjaGl2ZSByZW1vdGEiCiAKLSM6IGFyY2hpdmUuYzo0ODUKKyM6IGFyY2hpdmUuYzo0ODkKIG1zZ2lkICJVbmV4cGVjdGVkIG9wdGlvbiAtLXJlbW90ZSIKIG1zZ3N0ciAiT3BjacOzIGluZXNwZXJhZGEgLS1yZW1vdGUiCiAKLSM6IGFyY2hpdmUuYzo0ODcKKyM6IGFyY2hpdmUuYzo0OTEKIG1zZ2lkICJPcHRpb24gLS1leGVjIGNhbiBvbmx5IGJlIHVzZWQgdG9nZXRoZXIgd2l0aCAtLXJlbW90ZSIKIG1zZ3N0ciAiTCdvcGNpw7MgLS1leGVjIG5vbcOpcyBlcyBwb3QgdXNhciBqdW50YW1lbnQgYW1iIC0tcmVtb3RlIgogCi0jOiBhcmNoaXZlLmM6NDg5CisjOiBhcmNoaXZlLmM6NDkzCiBtc2dpZCAiVW5leHBlY3RlZCBvcHRpb24gLS1vdXRwdXQiCiBtc2dzdHIgIk9wY2nDsyBpbmVzcGVyYWRhIC0tb3V0cHV0IgogCi0jOiBhcmNoaXZlLmM6NTExCisjOiBhcmNoaXZlLmM6NTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gYXJjaGl2ZSBmb3JtYXQgJyVzJyIKIG1zZ3N0ciAiRm9ybWF0IGQnYXJ4aXUgZGVzY29uZWd1dCDCqyVzwrsiCiAKLSM6IGFyY2hpdmUuYzo1MTgKKyM6IGFyY2hpdmUuYzo1MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXJndW1lbnQgbm90IHN1cHBvcnRlZCBmb3IgZm9ybWF0ICclcyc6IC0lZCIKIG1zZ3N0ciAiUGFyw6BtZXRyZSBubyBhZG3DqHMgcGVyIGFsIGZvcm1hdCDCqyVzwrs6IC0lZCIKIAotIzogYXJjaGl2ZS10YXIuYzoxMjUgYXJjaGl2ZS16aXAuYzozNDUKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogYXJjaGl2ZS10YXIuYzoxMjUgYXJjaGl2ZS16aXAuYzozNTAKKyMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0cmVhbSBibG9iICVzIgotbXNnc3RyICJubyBlcyBwb3QgZW1tYWdhdHplbWFyICVzIgorbXNnc3RyICJubyBlcyBwb3QgdHJhbnNtZXRyZSBlbCBibG9iICVzIgogCi0jOiBhcmNoaXZlLXRhci5jOjI2MCBhcmNoaXZlLXppcC5jOjM2MworIzogYXJjaGl2ZS10YXIuYzoyNjYgYXJjaGl2ZS16aXAuYzozNjgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5zdXBwb3J0ZWQgZmlsZSBtb2RlOiAwJW8gKFNIQTE6ICVzKSIKIG1zZ3N0ciAibW9kZSBkZSBmaXR4ZXIgbm8gY29tcGF0aWJsZTogMCVvIChTSEExOiAlcykiCiAKLSM6IGFyY2hpdmUtdGFyLmM6Mjg3IGFyY2hpdmUtemlwLmM6MzUzCisjOiBhcmNoaXZlLXRhci5jOjI5MyBhcmNoaXZlLXppcC5jOjM1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCAlcyIKIG1zZ3N0ciAibm8gZXMgcG90IGxsZWdpciDCqyVzwrsiCiAKLSM6IGFyY2hpdmUtdGFyLmM6NDU4CisjOiBhcmNoaXZlLXRhci5jOjQ2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gc3RhcnQgJyVzJyBmaWx0ZXIiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgaW5pY2lhciBlbCBmaWx0cmUgwqslc8K7IgogCi0jOiBhcmNoaXZlLXRhci5jOjQ2MQotIywgZnV6enkKLW1zZ2lkICJ1bmFibGUgdG8gcmVkaXJlY3QgZGVzY3JpcHRvciIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBhY3R1YWxpdHphciBsJ8OtbmRleCIKLQogIzogYXJjaGl2ZS10YXIuYzo0NjgKLSMsIGZ1enp5LCBjLWZvcm1hdAotbXNnaWQgIiclcycgZmlsdGVyIHJlcG9ydGVkIGVycm9yIgotbXNnc3RyICLCqyVzwrsgw6lzIGZvcmEgZGVsIGRpcMOyc2l0IgorbXNnaWQgInVuYWJsZSB0byByZWRpcmVjdCBkZXNjcmlwdG9yIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHJlZGlyaWdpciBlbCBkZXNjcmlwdG9yIgogCi0jOiBhcmNoaXZlLXppcC5jOjMxNAorIzogYXJjaGl2ZS10YXIuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBmaWx0ZXIgcmVwb3J0ZWQgZXJyb3IiCittc2dzdHIgIsKrJXPCuyBlcnJvciByZXBvcnRhdCBwZWwgZmlsdHJlIgorCisjOiBhcmNoaXZlLXppcC5jOjMxOQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoIGlzIG5vdCB2YWxpZCBVVEYtODogJXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAiZWwgY2Ftw60gbm8gw6lzIHbDoGxpZCBlbiBVVEYtODogJXMiCiAKLSM6IGFyY2hpdmUtemlwLmM6MzE4CisjOiBhcmNoaXZlLXppcC5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoIHRvbyBsb25nICglZCBjaGFycywgU0hBMTogJXMpOiAlcyIKLW1zZ3N0ciAiIgorbXNnc3RyICJlbCBjYW3DrSDDqXMgbWFzc2EgbGxhcmcgKCVkIGNhcsOgY3RlcnMsIFNIQTE6ICVzKTogJXMiCiAKLSM6IGFyY2hpdmUtemlwLmM6NDc0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjI0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjI3CisjOiBhcmNoaXZlLXppcC5jOjQ3OSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIzMCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWZsYXRlIGVycm9yICglZCkiCiBtc2dzdHIgImVycm9yIGRlIGRlZmxhY2nDsyAoJWQpIgogCi0jOiBhcmNoaXZlLXppcC5jOjYwOQorIzogYXJjaGl2ZS16aXAuYzo2MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidGltZXN0YW1wIHRvbyBsYXJnZSBmb3IgdGhpcyBzeXN0ZW06ICU8UFJJdU1BWD4iCi1tc2dzdHIgIiIKK21zZ3N0ciAibWFyY2EgZGUgdGVtcHMgbWFzc2EgZ3JhbiBwZXIgYSBhcXVlc3Qgc2lzdGVtYTogJTxQUkl1TUFYPiIKIAogIzogYXR0ci5jOjIxMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlLipzIGlzIG5vdCBhIHZhbGlkIGF0dHJpYnV0ZSBuYW1lIgogbXNnc3RyICIlLipzIG5vIMOpcyB1biBub20gZCdhdHJpYnV0IHbDoGxpZCIKIAorIzogYXR0ci5jOjM2OQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBub3QgYWxsb3dlZDogJXM6JWQiCittc2dzdHIgIiVzIG5vIGVzdMOgIHBlcm3DqHM6ICVzOiVkIgorCiAjOiBhdHRyLmM6NDA5CiBtc2dpZCAiIgogIk5lZ2F0aXZlIHBhdHRlcm5zIGFyZSBpZ25vcmVkIGluIGdpdCBhdHRyaWJ1dGVzXG4iCkBAIC05NzIsMTcgKzE0MjMsMTcgQEAKIG1zZ2lkICJCYWRseSBxdW90ZWQgY29udGVudCBpbiBmaWxlICclcyc6ICVzIgogbXNnc3RyICJDb21lbnRhcmkgYW1iIGNvbWV0ZXMgZXJyw7JuaWVzIGVuIGVsIGZpdHhlciDCqyVzwrs6ICVzIgogCi0jOiBiaXNlY3QuYzo2NzYKKyM6IGJpc2VjdC5jOjY3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJXZSBjYW5ub3QgYmlzZWN0IG1vcmUhXG4iCiBtc2dzdHIgIk5vIHBvZGVtIGJpc2VjYXIgbcOpcyFcbiIKIAotIzogYmlzZWN0LmM6NzMwCisjOiBiaXNlY3QuYzo3MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgY29tbWl0IG5hbWUgJXMiCiBtc2dzdHIgIk5vIMOpcyB1biBub20gZGUgY29taXNzacOzIHbDoGxpZCAlcyIKIAotIzogYmlzZWN0LmM6NzU0CisjOiBiaXNlY3QuYzo3NTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBtZXJnZSBiYXNlICVzIGlzIGJhZC5cbiIKQEAgLTk5MSw3ICsxNDQyLDcgQEAKICJMYSBiYXNlIGRlIGZ1c2nDsyAlcyDDqXMgZXJyw7JuaWEuXG4iCiAiQWl4w7Igdm9sIGRpciBxdWUgZWwgZGVmZWN0ZSBzJ2hhIGFycmVnbGF0IGVudHJlICVzIGkgWyVzXS5cbiIKIAotIzogYmlzZWN0LmM6NzU5CisjOiBiaXNlY3QuYzo3NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBtZXJnZSBiYXNlICVzIGlzIG5ldy5cbiIKQEAgLTEwMDAsNyArMTQ1MSw3IEBACiAiTGEgYmFzZSBkZSBmdXNpw7MgJXMgw6lzIG5vdmEuXG4iCiAiTGEgcHJvcGlldGF0IHMnaGEgY2FudmlhdCBlbnRyZSAlcyBpIFslc10uXG4iCiAKLSM6IGJpc2VjdC5jOjc2NAorIzogYmlzZWN0LmM6NzY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgbWVyZ2UgYmFzZSAlcyBpcyAlcy5cbiIKQEAgLTEwMDksNyArMTQ2MCw3IEBACiAiTGEgYmFzZSBkZSBmdXNpw7MgJXMgw6lzICVzLlxuIgogIkFpeMOyIHZvbCBkaXIgcXVlIGxhIHByaW1lcmEgY29taXNzacOzIMKrJXPCuyDDqXMgZW50cmUgJXMgaSBbJXNdLlxuIgogCi0jOiBiaXNlY3QuYzo3NzIKKyM6IGJpc2VjdC5jOjc3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiU29tZSAlcyByZXZzIGFyZSBub3QgYW5jZXN0b3JzIG9mIHRoZSAlcyByZXYuXG4iCkBAIC0xMDIwLDcgKzE0NzEsNyBAQAogImdpdCBiaXNlY3Qgbm8gcG90IGZ1bmNpb25hciBjb3JyZWN0YW1lbnQgZW4gYXF1ZXN0IGNhcy5cbiIKICJQb3RzZXIgaGV1IGNvbmbDs3MgbGVzIHJldmlzaW9ucyAlcyBpICVzP1xuIgogCi0jOiBiaXNlY3QuYzo3ODUKKyM6IGJpc2VjdC5jOjc4OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidGhlIG1lcmdlIGJhc2UgYmV0d2VlbiAlcyBhbmQgWyVzXSBtdXN0IGJlIHNraXBwZWQuXG4iCkBAIC0xMDMyLDIyICsxNDgzLDIyIEBACiAiJXMuXG4iCiAiQ29udGludWVtIGRlIHRvdGVzIG1hbmVyZXMuIgogCi0jOiBiaXNlY3QuYzo4MTgKKyM6IGJpc2VjdC5jOjgyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJCaXNlY3Rpbmc6IGEgbWVyZ2UgYmFzZSBtdXN0IGJlIHRlc3RlZFxuIgogbXNnc3RyICJCaXNlY2FudDogcydoYSBkZSBwcm92YXIgdW5hIGJhc2UgZGUgZnVzacOzXG4iCiAKLSM6IGJpc2VjdC5jOjg1OAorIzogYmlzZWN0LmM6ODY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImEgJXMgcmV2aXNpb24gaXMgbmVlZGVkIgogbXNnc3RyICJlcyBuZWNlc3NpdGEgdW5hIHJldmlzacOzICVzIgogCi0jOiBiaXNlY3QuYzo4NzcgYnVpbHRpbi9ub3Rlcy5jOjE3NyBidWlsdGluL3RhZy5jOjIzNworIzogYmlzZWN0LmM6ODg0IGJ1aWx0aW4vbm90ZXMuYzoxNzcgYnVpbHRpbi90YWcuYzoyNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBmaWxlICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgZWwgZml0eGVyIMKrJXPCuyIKIAotIzogYmlzZWN0LmM6OTI4IGJ1aWx0aW4vbWVyZ2UuYzoxMzgKKyM6IGJpc2VjdC5jOjkyOCBidWlsdGluL21lcmdlLmM6MTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGZpbGUgJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBsbGVnaXIgZWwgZml0eGVyIMKrJXPCuyIKQEAgLTEwODcsNDYgKzE1MzgsNDYgQEAKIG1zZ3N0clswXSAiQmlzZWNhbnQ6IG1hbmNhICVkIHJldmlzacOzIGEgcHJvdmFyIGRlc3Byw6lzIGQnYXF1ZXN0YSAlc1xuIgogbXNnc3RyWzFdICJCaXNlY2FudDogbWFucXVlbiAlZCByZXZpc2lvbnMgYSBwcm92YXIgZGVzcHLDqXMgZCdhcXVlc3RhICVzXG4iCiAKLSM6IGJsYW1lLmM6MTc4NworIzogYmxhbWUuYzoyNzAwCiBtc2dpZCAiLS1jb250ZW50cyBhbmQgLS1yZXZlcnNlIGRvIG5vdCBibGVuZCB3ZWxsLiIKIG1zZ3N0ciAiLS1jb250ZW50cyBpIC0tcmV2ZXJzZSBubyBmdW5jaW9uZW4gYsOpIGp1bnRlcy4iCiAKLSM6IGJsYW1lLmM6MTgwMQorIzogYmxhbWUuYzoyNzE0CiBtc2dpZCAiY2Fubm90IHVzZSAtLWNvbnRlbnRzIHdpdGggZmluYWwgY29tbWl0IG9iamVjdCBuYW1lIgogbXNnc3RyICJubyBlcyBwb3QgdXNhciAtLWNvbnRlbnRzIGFtYiBlbCBub20gZCdvYmplY3RlIGRlIGxhIGNvbWlzc2nDsyBmaW5hbCIKIAotIzogYmxhbWUuYzoxODIyCisjOiBibGFtZS5jOjI3MzUKIG1zZ2lkICItLXJldmVyc2UgYW5kIC0tZmlyc3QtcGFyZW50IHRvZ2V0aGVyIHJlcXVpcmUgc3BlY2lmaWVkIGxhdGVzdCBjb21taXQiCiBtc2dzdHIgIiIKICItLXJldmVyc2UgaSAtLWZpcnN0LXBhcmVudC10b2dldGhlciByZXF1ZXJlaXhlbiB1bmEgw7psdGltYSBjb21pc3Npw7MgIgogImVzcGVjaWZpY2FkYSIKIAotIzogYmxhbWUuYzoxODMxIGJ1bmRsZS5jOjE2MiByZWYtZmlsdGVyLmM6MjA0NiBzZXF1ZW5jZXIuYzoxOTYzCi0jOiBzZXF1ZW5jZXIuYzo0MDAyIGJ1aWx0aW4vY29tbWl0LmM6MTAwMSBidWlsdGluL2xvZy5jOjM3NyBidWlsdGluL2xvZy5jOjkzMgotIzogYnVpbHRpbi9sb2cuYzoxNDA3IGJ1aWx0aW4vbG9nLmM6MTc4MyBidWlsdGluL2xvZy5jOjIwNzIgYnVpbHRpbi9tZXJnZS5jOjQwNgotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTM1IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE1MAorIzogYmxhbWUuYzoyNzQ0IGJ1bmRsZS5jOjE2NyByZWYtZmlsdGVyLmM6MjIwMyByZW1vdGUuYzoxOTQxIHNlcXVlbmNlci5jOjIwOTMKKyM6IHNlcXVlbmNlci5jOjQ0NjAgYnVpbHRpbi9jb21taXQuYzoxMDQwIGJ1aWx0aW4vbG9nLmM6Mzg4IGJ1aWx0aW4vbG9nLmM6OTkxCisjOiBidWlsdGluL2xvZy5jOjE1MjAgYnVpbHRpbi9sb2cuYzoxOTI1IGJ1aWx0aW4vbG9nLmM6MjIxNSBidWlsdGluL21lcmdlLmM6NDExCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMjggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTQzCiAjOiBidWlsdGluL3Nob3J0bG9nLmM6MTkyCiBtc2dpZCAicmV2aXNpb24gd2FsayBzZXR1cCBmYWlsZWQiCiBtc2dzdHIgImxhIGNvbmZpZ3VyYWNpw7MgZGVsIHBhc3NlaWcgcGVyIHJldmlzaW9ucyBoYSBmYWxsYXQiCiAKLSM6IGJsYW1lLmM6MTg0OQorIzogYmxhbWUuYzoyNzYyCiBtc2dpZCAiIgogIi0tcmV2ZXJzZSAtLWZpcnN0LXBhcmVudCB0b2dldGhlciByZXF1aXJlIHJhbmdlIGFsb25nIGZpcnN0LXBhcmVudCBjaGFpbiIKIG1zZ3N0ciAiIgogIi0tcmV2ZXJzZSAtLWZpcnN0LXBhcmVudCBqdW50cyByZXF1ZXJlaXhlbiB1biByYW5nIGRlIGxhIGNhZGVuYSBkZSBtYXJlcyAiCiAicHJpbWVyZXMiCiAKLSM6IGJsYW1lLmM6MTg2MAorIzogYmxhbWUuYzoyNzczCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggcGF0aCAlcyBpbiAlcyIKIG1zZ3N0ciAibm8gaGkgaGEgdGFsIGNhbcOtICVzIGVuICVzIgogCi0jOiBibGFtZS5jOjE4NzEKKyM6IGJsYW1lLmM6Mjc4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBibG9iICVzIGZvciBwYXRoICVzIgogbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIGVsIGJsb2IgJXMgcGVyIGFsIGNhbcOtICVzIgogCi0jOiBicmFuY2guYzo1MgorIzogYnJhbmNoLmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTEzOSw5NyArMTU5MCw5NyBAQAogImludGVudGFyIGNvcnJlZ2lyIGxhIGluZm9ybWFjacOzIGRlIHNlZ3VpbWVudCByZW1vdFxuIgogImludm9jYW50IFwiZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10bz0lcyVzJXNcIi4iCiAKLSM6IGJyYW5jaC5jOjY2CisjOiBicmFuY2guYzo2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3Qgc2V0dGluZyBicmFuY2ggJXMgYXMgaXRzIG93biB1cHN0cmVhbS4iCiBtc2dzdHIgIk5vIHMnZXN0w6AgZXN0YWJsaW50IGxhIGJyYW5jYSAlcyBjb20gYSBsYSBzZXZhIHByw7JwaWEgZm9udC4iCiAKLSM6IGJyYW5jaC5jOjkyCisjOiBicmFuY2guYzo5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIGJyYW5jaCAnJXMnIGZyb20gJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgIiIKICJMYSBicmFuY2Egwqslc8K7IGVzdMOgIGNvbmZpZ3VyYWRhIHBlciBhIHNlZ3VpciBsYSBicmFuY2EgcmVtb3RhIMKrJXPCuyBkZSDCqyVzwrsgIgogImZlbnQgwqtyZWJhc2XCuy4iCiAKLSM6IGJyYW5jaC5jOjkzCisjOiBicmFuY2guYzo5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIGJyYW5jaCAnJXMnIGZyb20gJyVzJy4iCiBtc2dzdHIgIiIKICJMYSBicmFuY2Egwqslc8K7IGVzdMOgIGNvbmZpZ3VyYWRhIHBlciBhIHNlZ3VpciBsYSBicmFuY2EgcmVtb3RhIMKrJXPCuyBkZSDCqyVzwrsuIgogCi0jOiBicmFuY2guYzo5NworIzogYnJhbmNoLmM6OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIGJyYW5jaCAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAiIgogIkxhIGJyYW5jYSDCqyVzwrsgZXN0w6AgY29uZmlndXJhZGEgcGVyIGEgc2VndWlyIGxhIGJyYW5jYSBsb2NhbCDCqyVzwrsgZmVudCAiCiAiwqtyZWJhc2XCuy4iCiAKLSM6IGJyYW5jaC5jOjk4CisjOiBicmFuY2guYzo5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycuIgogbXNnc3RyICJMYSBicmFuY2Egwqslc8K7IGVzdMOgIGNvbmZpZ3VyYWRhIHBlciBhIHNlZ3VpciBsYSBicmFuY2EgbG9jYWwgwqslc8K7LiIKIAotIzogYnJhbmNoLmM6MTAzCisjOiBicmFuY2guYzoxMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIHJlbW90ZSByZWYgJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgIiIKICJMYSBicmFuY2Egwqslc8K7IGVzdMOgIGNvbmZpZ3VyYWRhIHBlciBhIHNlZ3VpciBsYSByZWZlcsOobmNpYSByZW1vdGEgwqslc8K7IGZlbnQgIgogIsKrcmViYXNlwrsuIgogCi0jOiBicmFuY2guYzoxMDQKKyM6IGJyYW5jaC5jOjEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIHJlZiAnJXMnLiIKIG1zZ3N0ciAiIgogIkxhIGJyYW5jYSDCqyVzwrsgZXN0w6AgY29uZmlndXJhZGEgcGVyIGEgc2VndWlyIGxhIHJlZmVyw6huY2lhIHJlbW90YSDCqyVzwrsuIgogCi0jOiBicmFuY2guYzoxMDgKKyM6IGJyYW5jaC5jOjEwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycgYnkgcmViYXNpbmcuIgogbXNnc3RyICIiCiAiTGEgYnJhbmNhIMKrJXPCuyBlc3TDoCBjb25maWd1cmFkYSBwZXIgYSBzZWd1aXIgbGEgcmVmZXLDqG5jaWEgbG9jYWwgwqslc8K7IGZlbnQgIgogIsKrcmViYXNlwrsuIgogCi0jOiBicmFuY2guYzoxMDkKKyM6IGJyYW5jaC5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycuIgogbXNnc3RyICJMYSBicmFuY2Egwqslc8K7IGVzdMOgIGNvbmZpZ3VyYWRhIHBlciBhIHNlZ3VpciBsYSByZWZlcsOobmNpYSBsb2NhbCDCqyVzwrsuIgogCi0jOiBicmFuY2guYzoxMTgKKyM6IGJyYW5jaC5jOjExOQogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSB1cHN0cmVhbSBicmFuY2ggY29uZmlndXJhdGlvbiIKIG1zZ3N0ciAiTm8gZXMgcG90IGVzY3JpdXJlIGxhIGNvbmZpZ3VyYWNpw7MgZGUgbGEgYnJhbmNhIGZvbnQiCiAKLSM6IGJyYW5jaC5jOjE1NQorIzogYnJhbmNoLmM6MTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCB0cmFja2luZzogYW1iaWd1b3VzIGluZm9ybWF0aW9uIGZvciByZWYgJXMiCiBtc2dzdHIgIk5vIHNlZ3VpbnQ6IGluZm9ybWFjacOzIGFtYmlndWEgcGVyIGEgbGEgcmVmZXLDqG5jaWEgJXMiCiAKLSM6IGJyYW5jaC5jOjE4OAorIzogYnJhbmNoLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgYnJhbmNoIG5hbWUuIgogbXNnc3RyICLCqyVzwrsgbm8gw6lzIHVuIG5vbSBkZSBicmFuY2EgdsOgbGlkLiIKIAotIzogYnJhbmNoLmM6MjA3CisjOiBicmFuY2guYzoyMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQSBicmFuY2ggbmFtZWQgJyVzJyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgIlVuYSBicmFuY2EgYW1iIG5vbSDCqyVzwrsgamEgZXhpc3RlaXguIgogCi0jOiBicmFuY2guYzoyMTIKKyM6IGJyYW5jaC5jOjIxMwogbXNnaWQgIkNhbm5vdCBmb3JjZSB1cGRhdGUgdGhlIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAiTm8gZXMgcG90IGFjdHVhbGl0emFyIGxhIGJyYW5jYSBhY3R1YWwgYSBsYSBmb3LDp2EuIgogCi0jOiBicmFuY2guYzoyMzIKKyM6IGJyYW5jaC5jOjIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgc2V0dXAgdHJhY2tpbmcgaW5mb3JtYXRpb247IHN0YXJ0aW5nIHBvaW50ICclcycgaXMgbm90IGEgYnJhbmNoLiIKIG1zZ3N0ciAiIgogIk5vIGVzIHBvdCBjb25maWd1cmFyIGxhIGluZm9ybWFjacOzIGRlIHNlZ3VpbWVudDsgZWwgcHVudCBpbmljaWFsIMKrJXPCuyBubyDDqXMgIgogInVuYSBicmFuY2EuIgogCi0jOiBicmFuY2guYzoyMzQKKyM6IGJyYW5jaC5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgcmVxdWVzdGVkIHVwc3RyZWFtIGJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJsYSBicmFuY2EgZm9udCBkZW1hbmFkYSDCqyVzwrsgbm8gZXhpc3RlaXgiCiAKLSM6IGJyYW5jaC5jOjIzNgorIzogYnJhbmNoLmM6MjM3CiBtc2dpZCAiIgogIlxuIgogIklmIHlvdSBhcmUgcGxhbm5pbmcgb24gYmFzaW5nIHlvdXIgd29yayBvbiBhbiB1cHN0cmVhbVxuIgpAQCAtMTI1MCwyNyArMTcwMSwyNyBAQAogIsKrZ2l0IHB1c2ggLXXCuyBwZXIgYSBlc3RhYmxpciBsYSBjb25maWd1cmFjacOzIGZvbnRcbiIKICJtZW50cmUgcHVnZXUuIgogCi0jOiBicmFuY2guYzoyNzkKKyM6IGJyYW5jaC5jOjI4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJyVzJy4iCiBtc2dzdHIgIk5vIMOpcyB1biBub20gZCdvYmplY3RlIHbDoGxpZDogwqslc8K7LiIKIAotIzogYnJhbmNoLmM6Mjk5CisjOiBicmFuY2guYzozMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQW1iaWd1b3VzIG9iamVjdCBuYW1lOiAnJXMnLiIKIG1zZ3N0ciAiTm9tIGQnb2JqZWN0ZSBhbWJpZ3U6IMKrJXPCuy4iCiAKLSM6IGJyYW5jaC5jOjMwNAorIzogYnJhbmNoLmM6MzA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIGJyYW5jaCBwb2ludDogJyVzJy4iCiBtc2dzdHIgIk5vIMOpcyB1biBwdW50IGRlIHJhbWlmaWNhY2nDsyB2w6BsaWQ6IMKrJXPCuy4iCiAKLSM6IGJyYW5jaC5jOjM1OAorIzogYnJhbmNoLmM6MzY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxyZWFkeSBjaGVja2VkIG91dCBhdCAnJXMnIgogbXNnc3RyICLCqyVzwrsgamEgcydoYSBhZ2FmYXQgYSDCqyVzwrsiCiAKLSM6IGJyYW5jaC5jOjM4MQorIzogYnJhbmNoLmM6Mzg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkhFQUQgb2Ygd29ya2luZyB0cmVlICVzIGlzIG5vdCB1cGRhdGVkIgogbXNnc3RyICJIRUFEIGRlIGwnYXJicmUgZGUgdHJlYmFsbCAlcyBubyBlc3TDoCBhY3R1YWxpdHphdCIKQEAgLTEyODUsNzEgKzE3MzYsNzQgQEAKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaGVhZGVyOiAlcyVzICglZCkiCiBtc2dzdHIgImNhcMOnYWxlcmEgbm8gcmVjb25lZ3VkYTogJXMlcyAoJWQpIgogCi0jOiBidW5kbGUuYzo5MCByZXJlcmUuYzo0ODAgcmVyZXJlLmM6NjkwIHNlcXVlbmNlci5jOjIxODIgc2VxdWVuY2VyLmM6MjcyMgotIzogYnVpbHRpbi9jb21taXQuYzo3NzQKKyM6IGJ1bmRsZS5jOjkwIHJlcmVyZS5jOjQ4MCByZXJlcmUuYzo2OTAgc2VxdWVuY2VyLmM6MjM0NCBzZXF1ZW5jZXIuYzozMTA4CisjOiBidWlsdGluL2NvbW1pdC5jOjgxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyIMKrJXPCuyIKIAotIzogYnVuZGxlLmM6MTQxCisjOiBidW5kbGUuYzoxNDMKIG1zZ2lkICJSZXBvc2l0b3J5IGxhY2tzIHRoZXNlIHByZXJlcXVpc2l0ZSBjb21taXRzOiIKLW1zZ3N0ciAiQWwgZGlww7JzaXQgbGkgbWFucXVlbiBhcXVlc3RlcyBjb21pc3Npb25zIHByZXJlcXVpc2l0czoiCittc2dzdHIgIkFsIGRpcMOyc2l0IGxpIG1hbnF1ZW4gYXF1ZXN0ZXMgY29taXNzaW9ucyBwcmVyZXF1ZXJpZGVzOiIKIAotIzogYnVuZGxlLmM6MTkyCisjOiBidW5kbGUuYzoxNDYKK21zZ2lkICJuZWVkIGEgcmVwb3NpdG9yeSB0byB2ZXJpZnkgYSBidW5kbGUiCittc2dzdHIgImNhbCB1biBkaXDDsnNpdCBwZXIgdmVyaWZpY2FyIHVuIGZhcmNlbGwiCisKKyM6IGJ1bmRsZS5jOjE5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgYnVuZGxlIGNvbnRhaW5zIHRoaXMgcmVmOiIKIG1zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSBjb250YWlucyB0aGVzZSAlZCByZWZzOiIKIG1zZ3N0clswXSAiRWwgZmFyY2VsbCBjb250w6kgYXF1ZXN0YSByZWZlcsOobmNpYToiCiBtc2dzdHJbMV0gIkVsIGZhcmNlbGwgY29udMOpIGFxdWVzdGVzICVkIHJlZmVyw6huY2llczoiCiAKLSM6IGJ1bmRsZS5jOjE5OQorIzogYnVuZGxlLmM6MjA0CiBtc2dpZCAiVGhlIGJ1bmRsZSByZWNvcmRzIGEgY29tcGxldGUgaGlzdG9yeS4iCiBtc2dzdHIgIkVsIGZhcmNlbGwgcmVnaXN0cmEgdW5hIGhpc3TDsnJpYSBjb21wbGV0YS4iCiAKLSM6IGJ1bmRsZS5jOjIwMQorIzogYnVuZGxlLmM6MjA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBidW5kbGUgcmVxdWlyZXMgdGhpcyByZWY6IgogbXNnaWRfcGx1cmFsICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoZXNlICVkIHJlZnM6IgogbXNnc3RyWzBdICJFbCBmYXJjZWxsIHJlcXVlcmVpeCBhcXVlc3RhIHJlZmVyw6huY2lhOiIKIG1zZ3N0clsxXSAiRWwgZmFyY2VsbCByZXF1ZXJlaXggYXF1ZXN0ZXMgJWQgcmVmZXLDqG5jaWVzOiIKIAotIzogYnVuZGxlLmM6MjY3Ci0jLCBmdXp6eQorIzogYnVuZGxlLmM6MjczCiBtc2dpZCAidW5hYmxlIHRvIGR1cCBidW5kbGUgZGVzY3JpcHRvciIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBhY3R1YWxpdHphciBsJ8OtbmRleCIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBkdXBsaWNhciBlbCBkZXNjcmlwdG9yIGRlbCBmYXJjZWxsIgogCi0jOiBidW5kbGUuYzoyNzQKKyM6IGJ1bmRsZS5jOjI4MAogbXNnaWQgIkNvdWxkIG5vdCBzcGF3biBwYWNrLW9iamVjdHMiCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgZXhlY3V0YXIgZWwgcGFjay1vYmplY3RzIgogCi0jOiBidW5kbGUuYzoyODUKKyM6IGJ1bmRsZS5jOjI5MQogbXNnaWQgInBhY2stb2JqZWN0cyBkaWVkIgogbXNnc3RyICJFbCBwYWNrLW9iamVjdHMgcydoYSBtb3J0IgogCi0jOiBidW5kbGUuYzozMjcKKyM6IGJ1bmRsZS5jOjMzMwogbXNnaWQgInJldi1saXN0IGRpZWQiCiBtc2dzdHIgIkVsIHJldi1saXN0IHMnaGEgbW9ydCIKIAotIzogYnVuZGxlLmM6Mzc2CisjOiBidW5kbGUuYzozODIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmICclcycgaXMgZXhjbHVkZWQgYnkgdGhlIHJldi1saXN0IG9wdGlvbnMiCiBtc2dzdHIgImxlcyBvcGNpb25zIGRlIGxhIGxsaXN0YSBkZSByZXZpc2lvbnMgZXhjbG91ZW4gbGEgcmVmZXLDqG5jaWEgwqslc8K7IgogCi0jOiBidW5kbGUuYzo0NTYgYnVpbHRpbi9sb2cuYzoxOTIgYnVpbHRpbi9sb2cuYzoxNjg4IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDQKKyM6IGJ1bmRsZS5jOjQ2MSBidWlsdGluL2xvZy5jOjIwMyBidWlsdGluL2xvZy5jOjE4MTQgYnVpbHRpbi9zaG9ydGxvZy5jOjMwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJwYXLDoG1ldHJlIG5vIHJlY29uZWd1dDogJXMiCiAKLSM6IGJ1bmRsZS5jOjQ2NAorIzogYnVuZGxlLmM6NDY5CiBtc2dpZCAiUmVmdXNpbmcgdG8gY3JlYXRlIGVtcHR5IGJ1bmRsZS4iCiBtc2dzdHIgIlMnZXN0w6AgcmVmdXNhbnQgY3JlYXIgdW4gZmFyY2VsbCBidWl0LiIKIAotIzogYnVuZGxlLmM6NDc0CisjOiBidW5kbGUuYzo0NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNyZWF0ZSAnJXMnIgogbXNnc3RyICJubyBlcyBwb3QgY3JlYXIgwqslc8K7IgogCi0jOiBidW5kbGUuYzo0OTgKKyM6IGJ1bmRsZS5jOjUwNAogbXNnaWQgImluZGV4LXBhY2sgZGllZCIKIG1zZ3N0ciAiTCdpbmRleC1wYWNrIHMnaGEgbW9ydCIKIApAQCAtMTM1OCwxNCArMTgxMiwxMyBAQAogbXNnaWQgImludmFsaWQgY29sb3IgdmFsdWU6ICUuKnMiCiBtc2dzdHIgInZhbG9yIGRlIGNvbG9yIG5vIHbDoGxpZDogJS4qcyIKIAotIzogY29tbWl0LmM6NTAgc2VxdWVuY2VyLmM6MjUyOCBidWlsdGluL2FtLmM6MzcwIGJ1aWx0aW4vYW0uYzo0MTQKLSM6IGJ1aWx0aW4vYW0uYzoxMzkwIGJ1aWx0aW4vYW0uYzoyMDI1IGJ1aWx0aW4vcmVwbGFjZS5jOjM3NgotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDQ4CisjOiBjb21taXQuYzo1MSBzZXF1ZW5jZXIuYzoyODExIGJ1aWx0aW4vYW0uYzozNTQgYnVpbHRpbi9hbS5jOjM5OAorIzogYnVpbHRpbi9hbS5jOjEzNjYgYnVpbHRpbi9hbS5jOjIwMDkgYnVpbHRpbi9yZXBsYWNlLmM6NDU2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAlcyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgJXMiCiAKLSM6IGNvbW1pdC5jOjUyCisjOiBjb21taXQuYzo1MwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyAlcyBpcyBub3QgYSBjb21taXQhIgogbXNnc3RyICIlcyAlcyBubyDDqXMgdW5hIGNvbWlzc2nDsyEiCkBAIC0xMzgyLDI3ICsxODM1LDI3IEBACiAiXCJnaXQgY29uZmlnIGFkdmljZS5ncmFmdEZpbGVEZXByZWNhdGVkIGZhbHNlXCIiCiBtc2dzdHIgIiIKIAotIzogY29tbWl0LmM6MTExNQorIzogY29tbWl0LmM6MTE1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaGFzIGFuIHVudHJ1c3RlZCBHUEcgc2lnbmF0dXJlLCBhbGxlZ2VkbHkgYnkgJXMuIgogbXNnc3RyICJMYSBjb21pc3Npw7MgJXMgdMOpIHVuYSBzaWduYXR1cmEgR1BHIG5vIGZpYWJsZSwgc3Vwb3NhZGFtZW50IGRlICVzLiIKIAotIzogY29tbWl0LmM6MTExOAorIzogY29tbWl0LmM6MTE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaGFzIGEgYmFkIEdQRyBzaWduYXR1cmUgYWxsZWdlZGx5IGJ5ICVzLiIKIG1zZ3N0ciAiTGEgY29taXNzacOzICVzIHTDqSB1bmEgc2lnbmF0dXJhIEdQRyBpbmNvcnJlY3RhIHN1cG9zYWRhbWVudCBkZSAlcy4iCiAKLSM6IGNvbW1pdC5jOjExMjEKKyM6IGNvbW1pdC5jOjExNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29tbWl0ICVzIGRvZXMgbm90IGhhdmUgYSBHUEcgc2lnbmF0dXJlLiIKIG1zZ3N0ciAiTGEgY29taXNzacOzICVzIG5vIHTDqSBzaWduYXR1cmEgR1BHLiIKIAotIzogY29tbWl0LmM6MTEyNAorIzogY29tbWl0LmM6MTE2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaGFzIGEgZ29vZCBHUEcgc2lnbmF0dXJlIGJ5ICVzXG4iCiBtc2dzdHIgIkxhIGNvbWlzc2nDsyAlcyB0w6kgdW5hIHNpZ25hdHVyYSBHUEcgYm9uYSBkZSAlc1xuIgogCi0jOiBjb21taXQuYzoxMzc4CisjOiBjb21taXQuYzoxNDE1CiBtc2dpZCAiIgogIldhcm5pbmc6IGNvbW1pdCBtZXNzYWdlIGRpZCBub3QgY29uZm9ybSB0byBVVEYtOC5cbiIKICJZb3UgbWF5IHdhbnQgdG8gYW1lbmQgaXQgYWZ0ZXIgZml4aW5nIHRoZSBtZXNzYWdlLCBvciBzZXQgdGhlIGNvbmZpZ1xuIgpAQCAtMTQxMyw5OCArMTg2NiwyNzUgQEAKICJsYSB2YXJpYWJsZSBkZSBjb25maWd1cmFjacOzIGkxOG4uY29tbWl0ZW5jb2RpbmcgYSBsYSBjb2RpZmljYWNpw7MgcXVlXG4iCiAidXNpIGVsIHZvc3RyZSBwcm9qZWN0ZS5cbiIKIAotIzogY29tbWl0LWdyYXBoLmM6MTA4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdyYXBoIGZpbGUgJXMgaXMgdG9vIHNtYWxsIgorIzogY29tbWl0LWdyYXBoLmM6MTMwCittc2dpZCAiY29tbWl0LWdyYXBoIGZpbGUgaXMgdG9vIHNtYWxsIgogbXNnc3RyICIiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjExNQorIzogY29tbWl0LWdyYXBoLmM6MTk1CiAjLCBjLWZvcm1hdAotbXNnaWQgImdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCittc2dpZCAiY29tbWl0LWdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCittc2dzdHIgIiIKKyJsYSBzaWduYXR1cmEgZGVsIGdyYWYgZGUgY29taXNzaW9ucyAlWCBubyBjb2luY2lkZWl4IGFtYiBsYSBzaWduYXR1cmEgJVgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgorbXNnc3RyICJsYSB2ZXJzacOzIGRlbCBncmFmIGRlIGNvbWlzc2lvbnMgJVggbm8gY29pbmNpZGVpeCBhbWIgbGEgdmVyc2nDsyAlWCIKKworIzogY29tbWl0LWdyYXBoLmM6MjA5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXNoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKK21zZ3N0ciAiIgorImxhIHZlcnNpw7MgZGVsIGhhc2ggZGVsIGdyYWYgZGUgY29taXNzaW9ucyAlWCBubyBjb2luY2lkZWl4IGFtYiBsYSB2ZXJzacOzICVYIgorCisjOiBjb21taXQtZ3JhcGguYzoyMzIKK21zZ2lkICJjb21taXQtZ3JhcGggY2h1bmsgbG9va3VwIHRhYmxlIGVudHJ5IG1pc3Npbmc7IGZpbGUgbWF5IGJlIGluY29tcGxldGUiCiBtc2dzdHIgIiIKIAotIzogY29tbWl0LWdyYXBoLmM6MTIyCi0jLCBmdXp6eSwgYy1mb3JtYXQKLW1zZ2lkICJncmFwaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCi1tc2dzdHIgImVsIGNhbcOtIMKrJXPCuyBubyB0w6kgbGEgc2V2YSB2ZXJzacOzIgotCi0jOiBjb21taXQtZ3JhcGguYzoxMjkKLSMsIGZ1enp5LCBjLWZvcm1hdAotbXNnaWQgImhhc2ggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgotbXNnc3RyICJlbCBjYW3DrSDCqyVzwrsgbm8gdMOpIGxhIHNldmEgdmVyc2nDsyIKLQotIzogY29tbWl0LWdyYXBoLmM6MTUzCisjOiBjb21taXQtZ3JhcGguYzoyNDMKICMsIGMtZm9ybWF0Ci1tc2dpZCAiaW1wcm9wZXIgY2h1bmsgb2Zmc2V0ICUwOHglMDh4IgorbXNnaWQgImNvbW1pdC1ncmFwaCBpbXByb3BlciBjaHVuayBvZmZzZXQgJTA4eCUwOHgiCiBtc2dzdHIgIiIKIAotIzogY29tbWl0LWdyYXBoLmM6MTg5CisjOiBjb21taXQtZ3JhcGguYzoyODYKICMsIGMtZm9ybWF0Ci1tc2dpZCAiY2h1bmsgaWQgJTA4eCBhcHBlYXJzIG11bHRpcGxlIHRpbWVzIgorbXNnaWQgImNvbW1pdC1ncmFwaCBjaHVuayBpZCAlMDh4IGFwcGVhcnMgbXVsdGlwbGUgdGltZXMiCiBtc2dzdHIgIiIKIAotIzogY29tbWl0LWdyYXBoLmM6MzA4CisjOiBjb21taXQtZ3JhcGguYzozNTAKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzIG5vIGJhc2UgZ3JhcGhzIGNodW5rIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjM2MAorbXNnaWQgImNvbW1pdC1ncmFwaCBjaGFpbiBkb2VzIG5vdCBtYXRjaCIKK21zZ3N0ciAibGEgY2FkZW5hIGRlbCBncmFmIGRlIGNvbWlzc2lvbnMgbm8gY29pbmNpZGVpeCIKKworIzogY29tbWl0LWdyYXBoLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tbWl0LWdyYXBoIGNoYWluOiBsaW5lICclcycgbm90IGEgaGFzaCIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzo0MzMKK21zZ2lkICJ1bmFibGUgdG8gZmluZCBhbGwgY29tbWl0LWdyYXBoIGZpbGVzIgorbXNnc3RyICJubyBlcyBwb2RlbiB0cm9iYXIgdG90cyBlbHMgZml0eGVycyBkZWwgZ3JhZiBkZSBjb21pc3Npb25zIgorCisjOiBjb21taXQtZ3JhcGguYzo1NjQgY29tbWl0LWdyYXBoLmM6NjI0Cittc2dpZCAiaW52YWxpZCBjb21taXQgcG9zaXRpb24uIGNvbW1pdC1ncmFwaCBpcyBsaWtlbHkgY29ycnVwdCIKK21zZ3N0ciAiIgorInBvc2ljacOzIGRlIGxhIGNvbWlzc2nDsyBubyB2w6BsaWRhLiBQcm9iYWJsZW1lbnQgZWwgZ3JhZiBkZSBjb21pc3Npb25zIGVzdMOgICIKKyJtYWxtw6hzIgorCisjOiBjb21taXQtZ3JhcGguYzo1ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGZpbmQgY29tbWl0ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHRyb2JhciBsYSBjb21pc3Npw7MgJXMiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjYxNyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2NTIKKyM6IGNvbW1pdC1ncmFwaC5jOjg1OCBidWlsdGluL2FtLmM6MTI4NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0ICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsYSBjb21pc3Npw7MgJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwMTcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBnZXQgdHlwZSBvZiBvYmplY3QgJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgb2J0ZW5pciBlbCB0aXB1cyBkZSBsJ29iamVjdGU6ICVzIgogCi0jOiBjb21taXQtZ3JhcGguYzo2NTEKLSMsIGZ1enp5Ci1tc2dpZCAiQW5ub3RhdGluZyBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKLW1zZ3N0ciAibWFzc2VzIGNvbWlzc2lvbnMgcGVyIGVzY3JpdXJlIHVuIGdyYWYiCisjOiBjb21taXQtZ3JhcGguYzoxMDQ5Cittc2dpZCAiTG9hZGluZyBrbm93biBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiUydlc3RhbiBjYXJyZWdhbnQgY29taXNzaW9ucyBjb25lZ3VkZXMgYWwgZ3JhZiBkZSBjb21pc3Npb25zIgogCi0jOiBjb21taXQtZ3JhcGguYzo2OTEKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNjYKK21zZ2lkICJFeHBhbmRpbmcgcmVhY2hhYmxlIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJTJ2VzdGFuIGV4cGFuZGludCBsZXMgY29taXNzaW9ucyBhYmFzdGFibGVzIGFsIGdyYWYgZGUgY29taXNzaW9ucyIKKworIzogY29tbWl0LWdyYXBoLmM6MTA4NQorbXNnaWQgIkNsZWFyaW5nIGNvbW1pdCBtYXJrcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIlMnZXN0YW4gbmV0ZWphbnQgbGVzIG1hcnF1ZXMgZGUgY29taXNzaW9ucyBhbCBncmFmIGRlIGNvbWlzc2lvbnMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjExMDQKIG1zZ2lkICJDb21wdXRpbmcgY29tbWl0IGdyYXBoIGdlbmVyYXRpb24gbnVtYmVycyIKLW1zZ3N0ciAiIgorbXNnc3RyICJTJ2VzdGFuIGNhbGN1bGFudCBlbHMgbm9tYnJlcyBkZSBnZW5lcmFjacOzIGRlbCBncmFmIGRlIGNvbWlzc2lvbnMiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgwMyBjb21taXQtZ3JhcGguYzo4MjYgY29tbWl0LWdyYXBoLmM6ODUyCi0jLCBmdXp6eQotbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIgotbXNnc3RyICJtYXNzZXMgY29taXNzaW9ucyBwZXIgZXNjcml1cmUgdW4gZ3JhZiIKKyM6IGNvbW1pdC1ncmFwaC5jOjExNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggaW4gJWQgcGFjayIKK21zZ2lkX3BsdXJhbCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggaW4gJWQgcGFja3MiCittc2dzdHJbMF0gIlMnZXN0YW4gY2VyY2FudCBsZXMgY29taXNzaW9ucyBwZWwgZ3JhZiBkZSBjb21pc3Npb25zIGVuICVkIHBhcXVldCIKK21zZ3N0clsxXSAiUydlc3RhbiBjZXJjYW50IGxlcyBjb21pc3Npb25zIHBlbCBncmFmIGRlIGNvbWlzc2lvbnMgZW4gJWQgcGFxdWV0cyIKIAotIzogY29tbWl0LWdyYXBoLmM6ODEyCisjOiBjb21taXQtZ3JhcGguYzoxMTkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIGFkZGluZyBwYWNrICVzIgogbXNnc3RyICJlcnJvciBlbiBhZmVnaXIgcGFxdWV0ICVzIgogCi0jOiBjb21taXQtZ3JhcGguYzo4MTQKKyM6IGNvbW1pdC1ncmFwaC5jOjExOTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3Igb3BlbmluZyBpbmRleCBmb3IgJXMiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gb2JyaXIgbCfDrW5kZXggcGVyIMKrJXPCuyIKIAotIzogY29tbWl0LWdyYXBoLmM6ODY4CisjOiBjb21taXQtZ3JhcGguYzoxMjIwCiAjLCBjLWZvcm1hdAotbXNnaWQgInRoZSBjb21taXQgZ3JhcGggZm9ybWF0IGNhbm5vdCB3cml0ZSAlZCBjb21taXRzIgorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGZyb20gJWQgcmVmIgorbXNnaWRfcGx1cmFsICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBmcm9tICVkIHJlZnMiCittc2dzdHJbMF0gIiIKKyJTJ2VzdGFuIGNlcmNhbnQgbGVzIGNvbWlzc2lvbnMgcGVsIGdyYWYgZGUgY29taXNzaW9ucyBkZXMgZGUgJWQgcmVmZXLDqG5jaWEiCittc2dzdHJbMV0gIiIKKyJTJ2VzdGFuIGNlcmNhbnQgbGVzIGNvbWlzc2lvbnMgcGVsIGdyYWYgZGUgY29taXNzaW9ucyBkZXMgZGUgJWQgcmVmZXLDqG5jaWVzIgorCisjOiBjb21taXQtZ3JhcGguYzoxMjQwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tbWl0IG9iamVjdCBpZDogJXMiCittc2dzdHIgImlkZW50aWZpY2Fkb3IgZCdvYmplY3RlIGRlIGNvbWlzc2nDsyBubyB2w6BsaWQ6ICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoxMjU1Cittc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggYW1vbmcgcGFja2VkIG9iamVjdHMiCiBtc2dzdHIgIiIKKyJTJ2VzdGFuIGNlcmNhbnQgbGVzIGNvbWlzc2lvbnMgcGVsIGdyYWYgZGUgY29taXNzaW9ucyBlbnRyZSBlbHMgb2JqZWN0ZXMgIgorImVtcGFxdWV0YXRzIgogCi0jOiBjb21taXQtZ3JhcGguYzo4OTUKLSMsIGZ1enp5Ci1tc2dpZCAidG9vIG1hbnkgY29tbWl0cyB0byB3cml0ZSBncmFwaCIKLW1zZ3N0ciAibWFzc2VzIGNvbWlzc2lvbnMgcGVyIGVzY3JpdXJlIHVuIGdyYWYiCisjOiBjb21taXQtZ3JhcGguYzoxMjcwCittc2dpZCAiQ291bnRpbmcgZGlzdGluY3QgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIlMnZXN0YW4gY29tcHRhbnQgbGVzIGNvbWlzc2lvbnMgZGlmZXJlbnRzIGFsIGdyYWYgZGUgY29taXNzaW9ucyIKIAotIzogY29tbWl0LWdyYXBoLmM6OTAyIG1pZHguYzo3NjkKKyM6IGNvbW1pdC1ncmFwaC5jOjEzMDAKK21zZ2lkICJGaW5kaW5nIGV4dHJhIGVkZ2VzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiUydlc3RhbiBjZXJjYW50IGxlcyB2b3JlcyBhZGRpY2lvbmFscyBhbCBncmFmIGRlIGNvbWlzc2lvbnMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEzNDYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgY29ycmVjdCBudW1iZXIgb2YgYmFzZSBncmFwaCBpZHMiCittc2dzdHIgIiIKKyJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGVzY3JpdXJlIGVsIG5vbWJyZSBjb3JyZWN0ZSBkJ2lkcyBiYXNlIGRlbCBncmFmIgorCisjOiBjb21taXQtZ3JhcGguYzoxMzc5IG1pZHguYzo4MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsZWFkaW5nIGRpcmVjdG9yaWVzIG9mICVzIgogbXNnc3RyICJubyBzJ2hhbiBwb2d1dCBjcmVhciBlbHMgZGlyZWN0b3JpcyBpbmljaWFscyBkZSDCqyVzwrsiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjEwMDIKKyM6IGNvbW1pdC1ncmFwaC5jOjEzOTEgYnVpbHRpbi9pbmRleC1wYWNrLmM6MzA2IGJ1aWx0aW4vcmVwYWNrLmM6MjQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgJyVzJyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBjcmVhciDCqyVzwrsiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiV3JpdGluZyBvdXQgY29tbWl0IGdyYXBoIGluICVkIHBhc3MiCittc2dpZF9wbHVyYWwgIldyaXRpbmcgb3V0IGNvbW1pdCBncmFwaCBpbiAlZCBwYXNzZXMiCittc2dzdHJbMF0gIlMnZXN0w6AgZXNjcml2aW50IGVsIGdyYWYgZGUgY29taXNzaW9ucyBlbiAlZCBwYXMiCittc2dzdHJbMV0gIlMnZXN0w6AgZXNjcml2aW50IGVsIGdyYWYgZGUgY29taXNzaW9ucyBlbiAlZCBwYXNzb3MiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0OTIKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjb21taXQtZ3JhcGggY2hhaW4gZmlsZSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciBlbCBmaXR4ZXIgZCdlbmNhZGVuYW1lbnQgZGVsIGdyYWYgZGUgY29taXNzaW9ucyIKKworIzogY29tbWl0LWdyYXBoLmM6MTUwNAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgYmFzZSBjb21taXQtZ3JhcGggZmlsZSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBjYW52aWFyIGVsIG5vbSBkZWwgZml0eGVyIGJhc2UgZGVsIGdyYWYgZGUgY29taXNzaW9ucyIKKworIzogY29tbWl0LWdyYXBoLmM6MTUyNAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgdGVtcG9yYXJ5IGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICIiCisibm8gcydoYSBwb2d1dCBjYW52aWFyIGVsIG5vbSBkZWwgZml0eGVyIHRlbXBvcmFsIGRlbCBncmFmIGRlIGNvbWlzc2lvbnMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2MzUKK21zZ2lkICJTY2FubmluZyBtZXJnZWQgY29tbWl0cyIKK21zZ3N0ciAiUydlc3RhbiBlc2NhbmVqYW50IGxlcyBjb21pc3Npb25zIGZ1c2lvbmFkZXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkdXBsaWNhdGUgY29tbWl0IGlkICVzIgorbXNnc3RyICJpZCBkZSBjb21pc3Npw7MgZHVwbGljYXQgJXMgbm8gZXNwZXJhdCIKKworIzogY29tbWl0LWdyYXBoLmM6MTY3MAorbXNnaWQgIk1lcmdpbmcgY29tbWl0LWdyYXBoIgorbXNnc3RyICJTJ2VzdMOgIGZ1c2lvbmFudCBlbCBncmFmIGRlIGNvbWlzc2lvbnMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE4NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlIGNvbW1pdCBncmFwaCBmb3JtYXQgY2Fubm90IHdyaXRlICVkIGNvbW1pdHMiCittc2dzdHIgImVsIGZvcm1hdCBkZWwgZ3JhZiBkZSBjb21pc3Npb25zIG5vIHBvdCBlc2NyaXVyZSAlZCBjb21pc3Npb25zIgorCisjOiBjb21taXQtZ3JhcGguYzoxODcxCittc2dpZCAidG9vIG1hbnkgY29tbWl0cyB0byB3cml0ZSBncmFwaCIKK21zZ3N0ciAibWFzc2EgY29taXNzaW9ucyBwZXIgZXNjcml1cmUgdW4gZ3JhZiIKKworIzogY29tbWl0LWdyYXBoLmM6MTk2MQogbXNnaWQgInRoZSBjb21taXQtZ3JhcGggZmlsZSBoYXMgaW5jb3JyZWN0IGNoZWNrc3VtIGFuZCBpcyBsaWtlbHkgY29ycnVwdCIKIG1zZ3N0ciAiIgorImVsIGZpdHhlciBjb21taXQtZ3JhcGggKGdyYWYgZGUgY29taXNzaW9ucykgdMOpIHVuYSBzdW1hIGRlIHZlcmlmaWNhY2nDsyAiCisiaW5jb3JyZWN0YSBpIHByb2JhYmxlbWVudCDDqXMgY29ycnVwdGUiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjEwNDYKLW1zZ2lkICJWZXJpZnlpbmcgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCisjOiBjb21taXQtZ3JhcGguYzoxOTcxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IE9JRCBvcmRlcjogJXMgdGhlbiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb21wYXQvb2JzdGFjay5jOjQwNSBjb21wYXQvb2JzdGFjay5jOjQwNworIzogY29tbWl0LWdyYXBoLmM6MTk4MSBjb21taXQtZ3JhcGguYzoxOTk2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IGZhbm91dCB2YWx1ZTogZmFub3V0WyVkXSA9ICV1ICE9ICV1IgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIGNvbW1pdCAlcyBmcm9tIGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAiIgorInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gYW5hbGl0emFyIGxhIGNvbWlzc2nDsyAlcyBkZWwgZ3JhZiBkZSBjb21pc3Npb25zIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDA2Cittc2dpZCAiVmVyaWZ5aW5nIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJTJ2VzdGFuIHZlcmlmaWNhbnQgbGVzIGNvbWlzc2lvbnMgYWwgZ3JhZiBkZSBjb21pc3Npb25zIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDIwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSBjb21taXQgJXMgZnJvbSBvYmplY3QgZGF0YWJhc2UgZm9yIGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDI3CisjLCBjLWZvcm1hdAorbXNnaWQgInJvb3QgdHJlZSBPSUQgZm9yIGNvbW1pdCAlcyBpbiBjb21taXQtZ3JhcGggaXMgJXMgIT0gJXMiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MjAzNworIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggcGFyZW50IGxpc3QgZm9yIGNvbW1pdCAlcyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgZm9yICVzIGlzICVzICE9ICVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBsaXN0IGZvciBjb21taXQgJXMgdGVybWluYXRlcyBlYXJseSIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDY0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb21taXQtZ3JhcGggaGFzIGdlbmVyYXRpb24gbnVtYmVyIHplcm8gZm9yIGNvbW1pdCAlcywgYnV0IG5vbi16ZXJvIGVsc2V3aGVyZSIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb21taXQtZ3JhcGggaGFzIG5vbi16ZXJvIGdlbmVyYXRpb24gbnVtYmVyIGZvciBjb21taXQgJXMsIGJ1dCB6ZXJvIGVsc2V3aGVyZSIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDgzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBnZW5lcmF0aW9uIGZvciBjb21taXQgJXMgaXMgJXUgIT0gJXUiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MjA4OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgZGF0ZSBmb3IgY29tbWl0ICVzIGluIGNvbW1pdC1ncmFwaCBpcyAlPFBSSXVNQVg+ICE9ICU8UFJJdU1BWD4iCittc2dzdHIgIiIKKworIzogY29tcGF0L29ic3RhY2suYzo0MDYgY29tcGF0L29ic3RhY2suYzo0MDgKIG1zZ2lkICJtZW1vcnkgZXhoYXVzdGVkIgogbXNnc3RyICJtZW3DsnJpYSBlc2dvdGFkYSIKIAotIzogY29uZmlnLmM6MTIzCisjOiBjb25maWcuYzoxMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4Y2VlZGVkIG1heGltdW0gaW5jbHVkZSBkZXB0aCAoJWQpIHdoaWxlIGluY2x1ZGluZ1xuIgpAQCAtMTUxNCwzMDIgKzIxNDQsMjk1IEBACiAiVGhpcyBtaWdodCBiZSBkdWUgdG8gY2lyY3VsYXIgaW5jbHVkZXMuIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjEzOQorIzogY29uZmlnLmM6MTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBleHBhbmQgaW5jbHVkZSBwYXRoICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXhwYW5kaXIgZWwgY2Ftw60gZCdpbmNsdXNpw7Mgwqslc8K7IgogCi0jOiBjb25maWcuYzoxNTAKKyM6IGNvbmZpZy5jOjE1MQogbXNnaWQgInJlbGF0aXZlIGNvbmZpZyBpbmNsdWRlcyBtdXN0IGNvbWUgZnJvbSBmaWxlcyIKIG1zZ3N0ciAibGVzIGluY2x1c2lvbnMgZGUgY29uZmlndXJhY2nDsyByZWxhdGl2ZXMgaGFuIGRlIHZlbmlyIGRlIGZpdHhlcnMiCiAKLSM6IGNvbmZpZy5jOjE5MAorIzogY29uZmlnLmM6MTk3CiBtc2dpZCAicmVsYXRpdmUgY29uZmlnIGluY2x1ZGUgY29uZGl0aW9uYWxzIG11c3QgY29tZSBmcm9tIGZpbGVzIgogbXNnc3RyICIiCiAiZWxzIGNvbmRpY2lvbmFscyBkJ2luY2x1c2nDsyBkZSBjb25maWd1cmFjacOzIHJlbGF0aXVzIGhhbiBkZSB2ZW5pciBkZSBmaXR4ZXJzIgogCi0jOiBjb25maWcuYzozNDgKKyM6IGNvbmZpZy5jOjM3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJrZXkgZG9lcyBub3QgY29udGFpbiBhIHNlY3Rpb246ICVzIgogbXNnc3RyICJsYSBjbGF1IG5vIGNvbnTDqSB1bmEgc2VjY2nDszogwqslc8K7IgogCi0jOiBjb25maWcuYzozNTQKKyM6IGNvbmZpZy5jOjM4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJrZXkgZG9lcyBub3QgY29udGFpbiB2YXJpYWJsZSBuYW1lOiAlcyIKIG1zZ3N0ciAibGEgY2xhdSBubyBjb250w6kgdW4gbm9tIGRlIHZhcmlhYmxlOiDCqyVzwrsiCiAKLSM6IGNvbmZpZy5jOjM3OCBzZXF1ZW5jZXIuYzoyMjk2CisjOiBjb25maWcuYzo0MDYgc2VxdWVuY2VyLmM6MjUzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGtleTogJXMiCiBtc2dzdHIgImNsYXUgbm8gdsOgbGlkYTogJXMiCiAKLSM6IGNvbmZpZy5jOjM4NAorIzogY29uZmlnLmM6NDEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQga2V5IChuZXdsaW5lKTogJXMiCiBtc2dzdHIgImNsYXUgbm8gdsOgbGlkYSAobMOtbmVhIG5vdmEpOiAlcyIKIAotIzogY29uZmlnLmM6NDIwIGNvbmZpZy5jOjQzMgorIzogY29uZmlnLmM6NDQ4IGNvbmZpZy5jOjQ2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJib2d1cyBjb25maWcgcGFyYW1ldGVyOiAlcyIKIG1zZ3N0ciAicGFyw6BtZXRyZSBkZSBjb25maWd1cmFjacOzIGVycm9uaTogJXMiCiAKLSM6IGNvbmZpZy5jOjQ2NworIzogY29uZmlnLmM6NDk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImJvZ3VzIGZvcm1hdCBpbiAlcyIKIG1zZ3N0ciAiZm9ybWF0IGVycm9uaSBhICVzIgogCi0jOiBjb25maWcuYzo3OTMKKyM6IGNvbmZpZy5jOjgyMQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gYmxvYiAlcyIKIG1zZ3N0ciAibMOtbmlhIGRlIGNvbmZpZ3VyYWNpw7MgJWQgZXJyw7JuaWEgZW4gZWwgYmxvYiAlcyIKIAotIzogY29uZmlnLmM6Nzk3CisjOiBjb25maWcuYzo4MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGZpbGUgJXMiCiBtc2dzdHIgImzDrW5pYSBkZSBjb25maWd1cmFjacOzICVkIGVycsOybmlhIGVuIGVsIGZpdHhlciAlcyIKIAotIzogY29uZmlnLmM6ODAxCisjOiBjb25maWcuYzo4MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJsw61uaWEgZGUgY29uZmlndXJhY2nDsyAlZCBlcnLDsm5pYSBlbiBsJ2VudHJhZGEgZXN0w6BuZGFyZCIKIAotIzogY29uZmlnLmM6ODA1CisjOiBjb25maWcuYzo4MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIHN1Ym1vZHVsZS1ibG9iICVzIgogbXNnc3RyICJsw61uaWEgZGUgY29uZmlndXJhY2nDsyAlZCBlcnLDsm5pYSBlbiBlbCBibG9iIGRlIHN1Ym3DsmR1bCAlcyIKIAotIzogY29uZmlnLmM6ODA5CisjOiBjb25maWcuYzo4MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGNvbW1hbmQgbGluZSAlcyIKIG1zZ3N0ciAibMOtbmlhIGRlIGNvbmZpZ3VyYWNpw7MgJWQgZXJyw7JuaWEgZW4gbGEgbMOtbmlhIGQnb3JkcmVzICVzIgogCi0jOiBjb25maWcuYzo4MTMKKyM6IGNvbmZpZy5jOjg0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gJXMiCiBtc2dzdHIgImzDrW5pYSBkZSBjb25maWd1cmFjacOzICVkIGVycsOybmlhIGVuICVzIgogCi0jOiBjb25maWcuYzo5NTIKKyM6IGNvbmZpZy5jOjk3OAogbXNnaWQgIm91dCBvZiByYW5nZSIKIG1zZ3N0ciAiZm9yYSBkZSByYW5nIgogCi0jOiBjb25maWcuYzo5NTIKKyM6IGNvbmZpZy5jOjk3OAogbXNnaWQgImludmFsaWQgdW5pdCIKIG1zZ3N0ciAidW5pdGF0IG5vIHbDoGxpZGEiCiAKLSM6IGNvbmZpZy5jOjk1OAorIzogY29uZmlnLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnOiAlcyIKIG1zZ3N0ciAidmFsb3IgZGUgY29uZmlndXJhY2nDsyBudW3DqHJpYyBlcnJvbmkgwqslc8K7IHBlciDCqyVzwrs6ICVzIgogCi0jOiBjb25maWcuYzo5NjMKKyM6IGNvbmZpZy5jOjk5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBibG9iICVzOiAlcyIKIG1zZ3N0ciAidmFsb3IgZGUgY29uZmlndXJhY2nDsyBudW3DqHJpYyBlcnJvbmkgwqslc8K7IHBlciDCqyVzwrsgZW4gZWwgYmxvYiAlczogJXMiCiAKLSM6IGNvbmZpZy5jOjk2NgorIzogY29uZmlnLmM6MTAwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBmaWxlICVzOiAlcyIKIG1zZ3N0ciAidmFsb3IgZGUgY29uZmlndXJhY2nDsyBudW3DqHJpYyDCqyVzwrsgZXJyb25pIHBlciDCqyVzwrsgZW4gZWwgZml0eGVyICVzOiAlcyIKIAotIzogY29uZmlnLmM6OTY5CisjOiBjb25maWcuYzoxMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN0YW5kYXJkIGlucHV0OiAlcyIKIG1zZ3N0ciAiIgogInZhbG9yIGRlIGNvbmZpZ3VyYWNpw7MgbnVtw6hyaWMgwqslc8K7IGVycm9uaSBwZXIgwqslc8K7IGVuIGwnZW50cmFkYSBlc3TDoG5kYXJkOiAlcyIKIAotIzogY29uZmlnLmM6OTcyCisjOiBjb25maWcuYzoxMDA3CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN1Ym1vZHVsZS1ibG9iICVzOiAlcyIKIG1zZ3N0ciAiIgogInZhbG9yIGRlIGNvbmZpZ3VyYWNpw7MgbnVtw6hyaWMgwqslc8K7IGVycm9uaScgcGVyIMKrJXPCuyBlbiBlbCBibG9iIGRlIHN1Ym3DsmR1bCAiCiAiJXM6ICVzIgogCi0jOiBjb25maWcuYzo5NzUKKyM6IGNvbmZpZy5jOjEwMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gY29tbWFuZCBsaW5lICVzOiAlcyIKIG1zZ3N0ciAiIgogInZhbG9yIGRlIGNvbmZpZ3VyYWNpw7MgbnVtw6hyaWMgwqslc8K7IGVycm9uaSBwZXIgwqslc8K7IGVuIGxhIGzDrW5pYSBkJ29yZHJlcyAlczogIgogIiVzIgogCi0jOiBjb25maWcuYzo5NzgKKyM6IGNvbmZpZy5jOjEwMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gJXM6ICVzIgogbXNnc3RyICJ2YWxvciBkZSBjb25maWd1cmFjacOzIG51bcOocmljIGluY29ycmVjdGUgwqslc8K7IHBlciDCqyVzwrsgZW4gJXM6ICVzIgogCi0jOiBjb25maWcuYzoxMDczCisjOiBjb25maWcuYzoxMTA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBleHBhbmQgdXNlciBkaXIgaW46ICclcyciCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXhwYW5kaXIgZWwgZGlyZWN0b3JpIGQndXN1YXJpIGVuOiDCqyVzwrsiCiAKLSM6IGNvbmZpZy5jOjEwODIKKyM6IGNvbmZpZy5jOjExMTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBmb3IgJyVzJyBpcyBub3QgYSB2YWxpZCB0aW1lc3RhbXAiCiBtc2dzdHIgIsKrJXPCuyBwZXIgYSDCqyVzwrsgbm8gw6lzIHVuYSBtYXJjYSBkZSB0ZW1wcyB2w6BsaWRhIgogCi0jOiBjb25maWcuYzoxMTczCisjOiBjb25maWcuYzoxMjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImFiYnJldiBsZW5ndGggb3V0IG9mIHJhbmdlOiAlZCIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoxMTg3IGNvbmZpZy5jOjExOTgKKyM6IGNvbmZpZy5jOjEyMjIgY29uZmlnLmM6MTIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgemxpYiBjb21wcmVzc2lvbiBsZXZlbCAlZCIKIG1zZ3N0ciAibml2ZWxsIGRlIGNvbXByZXNzacOzIGRlIHpsaWIgaW5jb3JyZWN0ZSAlZCIKIAotIzogY29uZmlnLmM6MTI5MAorIzogY29uZmlnLmM6MTMyNQogbXNnaWQgImNvcmUuY29tbWVudENoYXIgc2hvdWxkIG9ubHkgYmUgb25lIGNoYXJhY3RlciIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoxMzIzCisjOiBjb25maWcuYzoxMzU4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbW9kZSBmb3Igb2JqZWN0IGNyZWF0aW9uOiAlcyIKIG1zZ3N0ciAibW9kZSBkZSBjcmVhY2nDsyBkJ29iamVjdGUgbm8gdsOgbGlkOiAlcyIKIAotIzogY29uZmlnLmM6MTM5NQorIzogY29uZmlnLmM6MTQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgdmFsdWUgZm9yICVzIgogbXNnc3RyICJ2YWxvciBubyB2w6BsaWQgcGVyIGEgJXMiCiAKLSM6IGNvbmZpZy5jOjE0MjEKKyM6IGNvbmZpZy5jOjE0NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIHZhbHVlIGZvciAlczogJXMiCiBtc2dzdHIgInZhbG9yIG5vIHbDoGxpZCBwZXIgYSAlczogJXMiCiAKLSM6IGNvbmZpZy5jOjE0MjIKKyM6IGNvbmZpZy5jOjE0NTcKIG1zZ2lkICJtdXN0IGJlIG9uZSBvZiBub3RoaW5nLCBtYXRjaGluZywgc2ltcGxlLCB1cHN0cmVhbSBvciBjdXJyZW50IgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjE0ODEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzg5CisjOiBjb25maWcuYzoxNTE4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFjayBjb21wcmVzc2lvbiBsZXZlbCAlZCIKIG1zZ3N0ciAibml2ZWxsIGRlIGNvbXByZXNzacOzIGRlIHBhcXVldCAlZCBFcnJvbmkiCiAKLSM6IGNvbmZpZy5jOjE2MDIKKyM6IGNvbmZpZy5jOjE2MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGxvYWQgY29uZmlnIGJsb2Igb2JqZWN0ICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgY2FycmVnYXIgbCdvYmplY3RlIGJsb2IgZGUgY29uZmlndXJhY2nDsyDCqyVzwrsiCiAKLSM6IGNvbmZpZy5jOjE2MDUKKyM6IGNvbmZpZy5jOjE2NDIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmZXJlbmNlICclcycgZG9lcyBub3QgcG9pbnQgdG8gYSBibG9iIgogbXNnc3RyICJsYSByZWZlcsOobmNpYSDCqyVzwrsgbm8gYXNzZW55YWxhIGEgdW4gYmxvYiIKIAotIzogY29uZmlnLmM6MTYyMgorIzogY29uZmlnLmM6MTY1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBjb25maWcgYmxvYiAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHJlc29sZHJlIGVsIGJsb2IgZGUgY29uZmlndXJhY2nDszogwqslc8K7IgogCi0jOiBjb25maWcuYzoxNjUyCisjOiBjb25maWcuYzoxNjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwYXJzZSAlcyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBhbmFsaXR6YXIgJXMiCiAKLSM6IGNvbmZpZy5jOjE3MDUKKyM6IGNvbmZpZy5jOjE3NDUKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWFuZC1saW5lIGNvbmZpZyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbGEgY29uZmlndXJhY2nDsyBkZSBsYSBsw61uaWEgZCdvcmRyZXMiCiAKLSM6IGNvbmZpZy5jOjIwMzcKKyM6IGNvbmZpZy5jOjIwOTYKIG1zZ2lkICJ1bmtub3duIGVycm9yIG9jY3VycmVkIHdoaWxlIHJlYWRpbmcgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMiCiBtc2dzdHIgInVuIGVycm9yIGRlc2NvbmVndXQgaGEgb2NvcnJlZ3V0IGVuIGxsZWdpciBlbHMgZml0eGVycyBkZSBjb25maWd1cmFjacOzIgogCi0jOiBjb25maWcuYzoyMjA3CisjOiBjb25maWcuYzoyMjY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgJXM6ICclcyciCiBtc2dzdHIgIiVzIG5vIHbDoGxpZDogwqslc8K7IgogCi0jOiBjb25maWcuYzoyMjUwCi0jLCBjLWZvcm1hdAotbXNnaWQgInVua25vd24gY29yZS51bnRyYWNrZWRDYWNoZSB2YWx1ZSAnJXMnOyB1c2luZyAna2VlcCcgZGVmYXVsdCB2YWx1ZSIKLW1zZ3N0ciAiIgotInZhbG9yIMKrJXPCuyBhIGNvcmUudW50cmFja2VkQ2FjaGUgZGVzY29uZWd1dDsgdXRpbGl0emFudCBlbCB2YWxvciBwZXIgZGVmZWN0ZSAiCi0iwqtrZWVwwrsiCi0KLSM6IGNvbmZpZy5jOjIyNzYKKyM6IGNvbmZpZy5jOjIzMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAic3BsaXRJbmRleC5tYXhQZXJjZW50Q2hhbmdlIHZhbHVlICclZCcgc2hvdWxkIGJlIGJldHdlZW4gMCBhbmQgMTAwIgogbXNnc3RyICJ2YWxvciDCqyVkwrsgYSBzcGxpdEluZGV4Lm1heFBlcmNlbnRDaGFuZ2UgaGEgZCdlc3RhciBlbnRyZSAwIGkgMTAwIgogCi0jOiBjb25maWcuYzoyMzE5CisjOiBjb25maWcuYzoyMzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAnJXMnIGZyb20gY29tbWFuZC1saW5lIGNvbmZpZyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgwqslc8K7IGRlIGxhIGNvbmZpZ3VyYWNpw7MgZGUgbGEgbMOtbmlhIGQnb3JkcmVzIgogCi0jOiBjb25maWcuYzoyMzIxCisjOiBjb25maWcuYzoyMzU5CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgdmFyaWFibGUgJyVzJyBpbiBmaWxlICclcycgYXQgbGluZSAlZCIKIG1zZ3N0ciAidmFyaWFibGUgZGUgY29uZmlndXJhY2nDsyDCqyVzwrsgZXJyw7JuaWEgZW4gZWwgZml0eGVyIMKrJXPCuyBhIGxhIGzDrW5pYSAlZCIKIAotIzogY29uZmlnLmM6MjQwMgorIzogY29uZmlnLmM6MjQ0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHNlY3Rpb24gbmFtZSAnJXMnIgogbXNnc3RyICJub20gZGUgc2VjY2nDsyBubyB2w6BsaWQgwqslc8K7IgogCi0jOiBjb25maWcuYzoyNDM0CisjOiBjb25maWcuYzoyNDcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGhhcyBtdWx0aXBsZSB2YWx1ZXMiCiBtc2dzdHIgIiVzIHTDqSBtw7psdGlwbGVzIHZhbG9ycyIKIAotIzogY29uZmlnLmM6MjQ2MworIzogY29uZmlnLmM6MjUwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgbmV3IGNvbmZpZ3VyYXRpb24gZmlsZSAlcyIKIG1zZ3N0ciAibm8gZXMgcG90IGVzY3JpdXJlIHVuIG5vdSBmaXR4ZXIgZGUgY29uZmlndXJhY2nDsyAlcyIKIAotIzogY29uZmlnLmM6MjcxNCBjb25maWcuYzozMDM4CisjOiBjb25maWcuYzoyNzUzIGNvbmZpZy5jOjMwNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvY2sgY29uZmlnIGZpbGUgJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYmxvY2FyIGVsIGZpdHhlciBkZSBjb25maWd1cmFjacOzICVzIgogCi0jOiBjb25maWcuYzoyNzI1CisjOiBjb25maWcuYzoyNzY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9wZW5pbmcgJXMiCiBtc2dzdHIgInMnZXN0w6Agb2JyaW50ICVzIgogCi0jOiBjb25maWcuYzoyNzYwIGJ1aWx0aW4vY29uZmlnLmM6MzI3CisjOiBjb25maWcuYzoyNzk5IGJ1aWx0aW4vY29uZmlnLmM6MzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgcGF0dGVybjogJXMiCiBtc2dzdHIgInBhdHLDsyBubyB2w6BsaWQ6ICVzIgogCi0jOiBjb25maWcuYzoyNzg1CisjOiBjb25maWcuYzoyODI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29uZmlnIGZpbGUgJXMiCi1tc2dzdHIgImZpdHhlciBkZSBjb25maWd1cmFjacOzIHbDoGxpZCAlcyIKK21zZ3N0ciAiZml0eGVyIGRlIGNvbmZpZ3VyYWNpw7Mgbm8gdsOgbGlkICVzIgogCi0jOiBjb25maWcuYzoyNzk4IGNvbmZpZy5jOjMwNTEKKyM6IGNvbmZpZy5jOjI4MzcgY29uZmlnLmM6MzA5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmc3RhdCBvbiAlcyBmYWlsZWQiCi1tc2dzdHIgImhhIGZhbGxhdCBmc3RhdCBhICVzIgorbXNnc3RyICJoYSBmYWxsYXQgwqtmc3RhdMK7IGEgJXMiCiAKLSM6IGNvbmZpZy5jOjI4MDkKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogY29uZmlnLmM6Mjg0OAorIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbW1hcCAnJXMnIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFjY2VkaXIgYSDCqyVzwrsiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgZmVyIMKrbW1hcMK7IMKrJXPCuyIKIAotIzogY29uZmlnLmM6MjgxOCBjb25maWcuYzozMDU2CisjOiBjb25maWcuYzoyODU3IGNvbmZpZy5jOjMwOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2htb2Qgb24gJXMgZmFpbGVkIgogbXNnc3RyICJoYSBmYWxsYXQgY2htb2QgYSAlcyIKIAotIzogY29uZmlnLmM6MjkwMyBjb25maWcuYzozMTUzCisjOiBjb25maWcuYzoyOTQyIGNvbmZpZy5jOjMxOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIGNvbmZpZyBmaWxlICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIGVsIGZpdHhlciBkZSBjb25maWd1cmFjacOzIMKrJXPCuyIKIAotIzogY29uZmlnLmM6MjkzNworIzogY29uZmlnLmM6Mjk3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc2V0ICclcycgdG8gJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc3RhYmxpciDCqyVzwrsgYSDCqyVzwrsiCiAKLSM6IGNvbmZpZy5jOjI5MzkgYnVpbHRpbi9yZW1vdGUuYzo3ODIKKyM6IGNvbmZpZy5jOjI5NzggYnVpbHRpbi9yZW1vdGUuYzo3ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHVuc2V0ICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZGVzYXNzaWduYXIgwqslc8K7IgogCi0jOiBjb25maWcuYzozMDI5CisjOiBjb25maWcuYzozMDY4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc2VjdGlvbiBuYW1lOiAlcyIKIG1zZ3N0ciAibm9tIGRlIHNlY2Npw7Mgbm8gdsOgbGlkYTogJXMiCiAKLSM6IGNvbmZpZy5jOjMxOTYKKyM6IGNvbmZpZy5jOjMyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyB2YWx1ZSBmb3IgJyVzJyIKIG1zZ3N0ciAiZmFsdGEgZWwgdmFsb3IgcGVyIMKrJXPCuyIKQEAgLTE4MzgsNyArMjQ2MSw3IEBACiAjOiBjb25uZWN0LmM6MTAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInNlcnZlciBkb2Vzbid0IHN1cHBvcnQgZmVhdHVyZSAnJXMnIgotbXNnc3RyICJlbCBzZXJ2aWRvciBubyBlcyBjb21wYXRpYmxlIGFtYiBsYSBjYXJhY3RlcsOtc3RpY2Egwqslc8K7IgorbXNnc3RyICJlbCBzZXJ2aWRvciBubyDDqXMgY29tcGF0aWJsZSBhbWIgbGEgY2FyYWN0ZXLDrXN0aWNhIMKrJXPCuyIKIAogIzogY29ubmVjdC5jOjExNAogbXNnaWQgImV4cGVjdGVkIGZsdXNoIGFmdGVyIGNhcGFiaWxpdGllcyIKQEAgLTE4NTQsNjUgKzI0NzcsNjMgQEAKIG1zZ3N0ciAiIgogCiAjOiBjb25uZWN0LmM6MjczCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGV4cGVjdGVkIHNoYWxsb3cgc2hhLTEsIGdvdCAnJXMnIgotbXNnc3RyICJzJ2VzcGVyYXZhIHNoYWxsb3cvdW5zaGFsbG93LCBzJ2hhIHJlYnV0ICVzIgorbXNnc3RyICIiCisicydoYSBwcm9kdcOvdCB1biBlcnJvciBkZSBwcm90b2NvbDogcydlc3BlcmF2YSBzaGFsbG93IHNoYS0xLCBzJ2hhIHJlYnV0IMKrJXPCuyIKIAogIzogY29ubmVjdC5jOjI3NQogbXNnaWQgInJlcG9zaXRvcnkgb24gdGhlIG90aGVyIGVuZCBjYW5ub3QgYmUgc2hhbGxvdyIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6MzEwIGZldGNoLXBhY2suYzoxODIgYnVpbHRpbi9hcmNoaXZlLmM6NjMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicmVtb3RlIGVycm9yOiAlcyIKLW1zZ3N0ciAiZXJyb3IgcmVtb3Q6ICVzIgotCi0jOiBjb25uZWN0LmM6MzE2CisjOiBjb25uZWN0LmM6MzEzCiBtc2dpZCAiaW52YWxpZCBwYWNrZXQiCiBtc2dzdHIgInBhcXVldCBubyB2w6BsaWQiCiAKLSM6IGNvbm5lY3QuYzozMzYKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogY29ubmVjdC5jOjMzMworIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogdW5leHBlY3RlZCAnJXMnIgotbXNnc3RyICJlcnJvciBkZSBwcm90b2NvbDogY2Fww6dhbGVyYSBkZSBwYXF1ZXQgZXJyw7JuaWEiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZGUgcHJvdG9jb2w6IG5vIHMnZXNwZXJhdmEgwqslc8K7IgogCi0jOiBjb25uZWN0LmM6NDQ0Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGNvbm5lY3QuYzo0NDEKKyMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBscy1yZWZzIHJlc3BvbnNlOiAlcyIKLW1zZ3N0ciAicmVmZXLDqG5jaWEgbm8gdsOgbGlkYTogJXMiCittc2dzdHIgInJlc3Bvc3RhIGRlIGxzLXJlZnMgbm8gdsOgbGlkYTogJXMiCiAKLSM6IGNvbm5lY3QuYzo0NDgKKyM6IGNvbm5lY3QuYzo0NDUKIG1zZ2lkICJleHBlY3RlZCBmbHVzaCBhZnRlciByZWYgbGlzdGluZyIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6NTQ3CisjOiBjb25uZWN0LmM6NTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sICclcycgaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAiZWwgcHJvdG9jb2wgwqslc8K7IG5vIMOpcyBjb21wYXRpYmxlIgogCi0jOiBjb25uZWN0LmM6NTk4CisjOiBjb25uZWN0LmM6NTk1CiBtc2dpZCAidW5hYmxlIHRvIHNldCBTT19LRUVQQUxJVkUgb24gc29ja2V0IgotbXNnc3RyICIiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXN0YWJsaXIgU09fS0VFUEFMSVZFIGFsIHPDsmNvbCIKIAotIzogY29ubmVjdC5jOjYzOCBjb25uZWN0LmM6NzAxCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGNvbm5lY3QuYzo2MzUgY29ubmVjdC5jOjY5OAorIywgYy1mb3JtYXQKIG1zZ2lkICJMb29raW5nIHVwICVzIC4uLiAiCi1tc2dzdHIgIlMnZXN0w6AgY29tcHJvdmFudCBlbCBwZWRhw6cgJXMuLi4iCittc2dzdHIgIlMnZXN0w6AgY2VyY2FudCAlcy4uLiIKIAotIzogY29ubmVjdC5jOjY0MgotIywgZnV6enksIGMtZm9ybWF0CisjOiBjb25uZWN0LmM6NjM5CisjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzIChwb3J0ICVzKSAoJXMpIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG1vdXJlICVzIGEgJXMiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgdHJvYmFyICVzIChwb3J0ICVzKSAoJXMpIgogCiAjLiBUUkFOU0xBVE9SUzogdGhpcyBpcyB0aGUgZW5kIG9mICJMb29raW5nIHVwICVzIC4uLiAiCi0jOiBjb25uZWN0LmM6NjQ2IGNvbm5lY3QuYzo3MTcKKyM6IGNvbm5lY3QuYzo2NDMgY29ubmVjdC5jOjcxNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZG9uZS5cbiIKICJDb25uZWN0aW5nIHRvICVzIChwb3J0ICVzKSAuLi4gIgogbXNnc3RyICIiCisiZmV0LlxuIgorIlMnZXN0w6AgY29ubmVjdGFudCBhICVzIChwb3J0ICVzKSAuLi4gIgogCi0jOiBjb25uZWN0LmM6NjY4IGNvbm5lY3QuYzo3NDUKKyM6IGNvbm5lY3QuYzo2NjUgY29ubmVjdC5jOjc0MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5hYmxlIHRvIGNvbm5lY3QgdG8gJXM6XG4iCkBAIC0xOTIyLDc1ICsyNTQzLDc1IEBACiAiJXMiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkNvbm5lY3RpbmcgdG8gJXMgKHBvcnQgJXMpIC4uLiAiCi0jOiBjb25uZWN0LmM6Njc0IGNvbm5lY3QuYzo3NTEKKyM6IGNvbm5lY3QuYzo2NzEgY29ubmVjdC5jOjc0OAogbXNnaWQgImRvbmUuIgogbXNnc3RyICJmZXQuIgogCi0jOiBjb25uZWN0LmM6NzA1Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGNvbm5lY3QuYzo3MDIKKyMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGxvb2sgdXAgJXMgKCVzKSIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciAlczogJXNcbiIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCB0cm9iYXIgJXMgKCVzKSIKIAotIzogY29ubmVjdC5jOjcxMQorIzogY29ubmVjdC5jOjcwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHBvcnQgJXMiCiBtc2dzdHIgInBvcnQgZGVzY29uZWd1dCAlcyIKIAotIzogY29ubmVjdC5jOjg0OCBjb25uZWN0LmM6MTE3NAorIzogY29ubmVjdC5jOjg0NSBjb25uZWN0LmM6MTE3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJzdHJhbmdlIGhvc3RuYW1lICclcycgYmxvY2tlZCIKLW1zZ3N0ciAiIgorbXNnc3RyICJzJ2hhIGJsb3F1ZWphdCBlbCBub20gZXN0cmFueSBkJ2FtZml0cmnDsyDCqyVzwrsiCiAKLSM6IGNvbm5lY3QuYzo4NTAKKyM6IGNvbm5lY3QuYzo4NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBwb3J0ICclcycgYmxvY2tlZCIKLW1zZ3N0ciAiIgorbXNnc3RyICJzJ2hhIGJsb3F1ZWphdCBlbCBwb3J0IGVzdHJhbnkgwqslc8K7IgogCi0jOiBjb25uZWN0LmM6ODYwCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGNvbm5lY3QuYzo4NTcKKyMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0YXJ0IHByb3h5ICVzIgotbXNnc3RyICJubyBlcyBwb3QgZmVyIHN0YXQgZW4gwqslc8K7IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGluaWNpYXIgc2Vydmlkb3IgaW50ZXJtZWRpYXJpIMKrJXPCuyIKIAotIzogY29ubmVjdC5jOjkyNworIzogY29ubmVjdC5jOjkyOAogbXNnaWQgIm5vIHBhdGggc3BlY2lmaWVkOyBzZWUgJ2dpdCBoZWxwIHB1bGwnIGZvciB2YWxpZCB1cmwgc3ludGF4IgogbXNnc3RyICIiCisibm8gcydoYSBlc3BlY2lmaWNhdCB1biBjYW3DrTsgdmVnZXUgwqtnaXQgaGVscCBwdWxswrsgcGVyIGxhIHNpbnRheGkgdsOgbGlkYSBwZXIgIgorIlVSTCIKIAotIzogY29ubmVjdC5jOjExMjIKKyM6IGNvbm5lY3QuYzoxMTIzCiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNCIKLW1zZ3N0ciAiIgorbXNnc3RyICJsYSB2YXJpYW50IMKrc2ltcGxlwrsgZCdzc2ggbm8gw6lzIGNvbXBhdGlibGUgYW1iIC00IgogCi0jOiBjb25uZWN0LmM6MTEzNAorIzogY29ubmVjdC5jOjExMzUKIG1zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IC02IgotbXNnc3RyICIiCittc2dzdHIgImxhIHZhcmlhbnQgwqtzaW1wbGXCuyBkJ3NzaCBubyDDqXMgY29tcGF0aWJsZSBhbWIgLTYiCiAKLSM6IGNvbm5lY3QuYzoxMTUxCi0jLCBmdXp6eQorIzogY29ubmVjdC5jOjExNTIKIG1zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IHNldHRpbmcgcG9ydCIKLW1zZ3N0ciAiZWwgZGVzdMOtIHJlY2VwdG9yIG5vIGFkbWV0IHB1amFyIC0tc2lnbmVkIgorbXNnc3RyICJsYSB2YXJpYW50IMKrc2ltcGxlwrsgZCdzc2ggbm8gcGVybWV0IGRlZmluaXIgZWwgcG9ydCIKIAotIzogY29ubmVjdC5jOjEyNjIKKyM6IGNvbm5lY3QuYzoxMjY0CiAjLCBjLWZvcm1hdAogbXNnaWQgInN0cmFuZ2UgcGF0aG5hbWUgJyVzJyBibG9ja2VkIgotbXNnc3RyICIiCittc2dzdHIgInMnaGEgYmxvcXVlamF0IGVsIG5vbSBkZSBmaXR4ZXIgZXN0cmFueSDCqyVzwrsiCiAKLSM6IGNvbm5lY3QuYzoxMzA3Ci0jLCBmdXp6eQorIzogY29ubmVjdC5jOjEzMTEKIG1zZ2lkICJ1bmFibGUgdG8gZm9yayIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciAlcyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBiaWZ1cmNhciIKIAotIzogY29ubmVjdGVkLmM6NjggYnVpbHRpbi9mc2NrLmM6MjAyIGJ1aWx0aW4vcHJ1bmUuYzoxNDcKKyM6IGNvbm5lY3RlZC5jOjg5IGJ1aWx0aW4vZnNjay5jOjIwOCBidWlsdGluL3BydW5lLmM6NDMKIG1zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkiCiBtc2dzdHIgIlMnZXN0w6AgY29tcHJvdmFudCBsYSBjb25uZWN0aXZpdGF0IgogCi0jOiBjb25uZWN0ZWQuYzo4MAorIzogY29ubmVjdGVkLmM6MTAxCiBtc2dpZCAiQ291bGQgbm90IHJ1biAnZ2l0IHJldi1saXN0JyIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBleGVjdXRhciAnZ2l0IHJldi1saXN0JyIKIAotIzogY29ubmVjdGVkLmM6MTAwCisjOiBjb25uZWN0ZWQuYzoxMjEKIG1zZ2lkICJmYWlsZWQgd3JpdGUgdG8gcmV2LWxpc3QiCiBtc2dzdHIgImVzY3JpcHR1cmEgZmFsbGFkYSBhbCByZXYtbGlzdCIKIAotIzogY29ubmVjdGVkLmM6MTA3CisjOiBjb25uZWN0ZWQuYzoxMjgKIG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcmV2LWxpc3QncyBzdGRpbiIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiB0YW5jYXIgbCdzdGRpbiBkZWwgcmV2LWxpc3QiCiAKQEAgLTIwMDAsMTcxICsyNjIxLDE3MCBAQAogbXNnc3RyICIiCiAKICM6IGNvbnZlcnQuYzoyMDcKLSMsIGZ1enp5LCBjLWZvcm1hdAorIywgYy1mb3JtYXQKIG1zZ2lkICJDUkxGIHdvdWxkIGJlIHJlcGxhY2VkIGJ5IExGIGluICVzIgotbXNnc3RyICJMRiByZWVtcGxhw6dhcmlhIENSTEYgZW4gJXMuIgorbXNnc3RyICJDUkxGIGVzIHJlZW1wbGHDp8OgIHBlciBMRiBlbiAlcyIKIAogIzogY29udmVydC5jOjIwOQotIywgZnV6enksIGMtZm9ybWF0CisjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDUkxGIHdpbGwgYmUgcmVwbGFjZWQgYnkgTEYgaW4gJXMuXG4iCiAiVGhlIGZpbGUgd2lsbCBoYXZlIGl0cyBvcmlnaW5hbCBsaW5lIGVuZGluZ3MgaW4geW91ciB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAiIgotIkxGIHJlZW1wbGHDp2Fyw6AgQ1JMRiBlbiAlcy5cbiIKKyJDUkxGIHNlcsOgIHJlZW1wbGHDp2F0IHBlciBMRiBlbiAlcy5cbiIKICJFbCBmaXR4ZXIgdGluZHLDoCBlbHMgc2V1cyB0ZXJtaW5hZG9ycyBkZSBsw61uaWEgb3JpZ2luYWxzIGVuIGVsIHZvc3RyZSAiCi0iZGlyZWN0b3JpIGRlIHRyZWJhbGwuIgorImRpcmVjdG9yaSBkZSB0cmViYWxsIgogCiAjOiBjb252ZXJ0LmM6MjE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkxGIHdvdWxkIGJlIHJlcGxhY2VkIGJ5IENSTEYgaW4gJXMiCi1tc2dzdHIgIkNSTEYgcmVlbXBsYcOnYXJpYSBMRiBlbiAlcyIKK21zZ3N0ciAiTEYgZXMgcmVlbXBsYcOnw6AgcGVyIExGIGVuICVzIgogCiAjOiBjb252ZXJ0LmM6MjE5Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkxGIHdpbGwgYmUgcmVwbGFjZWQgYnkgQ1JMRiBpbiAlcy5cbiIKICJUaGUgZmlsZSB3aWxsIGhhdmUgaXRzIG9yaWdpbmFsIGxpbmUgZW5kaW5ncyBpbiB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICIiCi0iQ1JMRiByZWVtcGxhw6dhcsOgIExGIGVuICVzLlxuIgorIkxGIHNlcsOgIHJlZW1wbGHDp2F0IHBlciBDUkxGIGVuICVzLlxuIgogIkVsIGZpdHhlciB0aW5kcsOgIGVscyBzZXVzIHRlcm1pbmFkb3JzIGRlIGzDrW5pYSBvcmlnaW5hbHMgZW4gZWwgdm9zdHJlICIKLSJkaXJlY3RvcmkgZGUgdHJlYmFsbC4iCisiZGlyZWN0b3JpIGRlIHRyZWJhbGwiCiAKLSM6IGNvbnZlcnQuYzoyODAKKyM6IGNvbnZlcnQuYzoyODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQk9NIGlzIHByb2hpYml0ZWQgaW4gJyVzJyBpZiBlbmNvZGVkIGFzICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbnZlcnQuYzoyODcKKyM6IGNvbnZlcnQuYzoyOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgotIlRoZSBmaWxlICclcycgY29udGFpbnMgYSBieXRlIG9yZGVyIG1hcmsgKEJPTSkuIFBsZWFzZSB1c2UgVVRGLSVzIGFzIHdvcmtpbmctIgotInRyZWUtZW5jb2RpbmcuIgorIlRoZSBmaWxlICclcycgY29udGFpbnMgYSBieXRlIG9yZGVyIG1hcmsgKEJPTSkuIFBsZWFzZSB1c2UgVVRGLSUuKnMgYXMgIgorIndvcmtpbmctdHJlZS1lbmNvZGluZy4iCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjMwNQorIzogY29udmVydC5jOjMwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJCT00gaXMgcmVxdWlyZWQgaW4gJyVzJyBpZiBlbmNvZGVkIGFzICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbnZlcnQuYzozMDcKKyM6IGNvbnZlcnQuYzozMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmaWxlICclcycgaXMgbWlzc2luZyBhIGJ5dGUgb3JkZXIgbWFyayAoQk9NKS4gUGxlYXNlIHVzZSBVVEYtJXNCRSBvciBVVEYtIgogIiVzTEUgKGRlcGVuZGluZyBvbiB0aGUgYnl0ZSBvcmRlcikgYXMgd29ya2luZy10cmVlLWVuY29kaW5nLiIKIG1zZ3N0ciAiIgogCi0jOiBjb252ZXJ0LmM6NDI1IGNvbnZlcnQuYzo0OTYKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogY29udmVydC5jOjQxOSBjb252ZXJ0LmM6NDkwCisjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBlbmNvZGUgJyVzJyBmcm9tICVzIHRvICVzIgotbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNvcGlhciBsZXMgbm90ZXMgZGUgwqslc8K7IGEgwqslc8K7IgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNvZGlmaWNhciDCqyVzwrsgZGVzIGRlICVzIGEgJXMiCiAKLSM6IGNvbnZlcnQuYzo0NjgKKyM6IGNvbnZlcnQuYzo0NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZW5jb2RpbmcgJyVzJyBmcm9tICVzIHRvICVzIGFuZCBiYWNrIGlzIG5vdCB0aGUgc2FtZSIKLW1zZ3N0ciAiIgorbXNnc3RyICJjb2RpZmljYXIgwqslc8K7IGRlcyBkZSAlcyBhICVzIGkgY2FwIGVucmVyZSBubyDDqXMgZWwgbWF0ZWl4IgogCi0jOiBjb252ZXJ0LmM6Njc0Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGNvbnZlcnQuYzo2NjgKKyMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZvcmsgdG8gcnVuIGV4dGVybmFsIGZpbHRlciAnJXMnIgotbXNnc3RyICJObyBlcyBwb3Qgb2JyaXIgZWwgZml0eGVyIGRlIHBhcXVldCBleGlzdGVudCDCqyVzwrsiCittc2dzdHIgIm5vIGVzIHBvdCBiaWZ1cmNhciBwZXIgYSBleGVjdXRhciBlbCBmaWx0cmUgZXh0ZXJuIMKrJXPCuyIKIAotIzogY29udmVydC5jOjY5NAotIywgZnV6enksIGMtZm9ybWF0CisjOiBjb252ZXJ0LmM6Njg4CisjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBmZWVkIHRoZSBpbnB1dCB0byBleHRlcm5hbCBmaWx0ZXIgJyVzJyIKLW1zZ3N0ciAibm8gZXMgcG9kZW4gbGxlZ2lyIGVscyBjb250aW5ndXRzIGFjdHVhbHMgZGUgwqslc8K7IgorbXNnc3RyICJubyBlcyBwb3QgYWxpbWVudGFyIGwnZW50cmFkYSBhbCBmaWx0cmUgZXh0ZXJuIMKrJXPCuyIKIAotIzogY29udmVydC5jOjcwMQorIzogY29udmVydC5jOjY5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQgJWQiCiBtc2dzdHIgImVsIGZpbHRyZSBleHRlcm4gwqslc8K7IGhhIGZhbGxhdCAlZCIKIAotIzogY29udmVydC5jOjczNiBjb252ZXJ0LmM6NzM5CisjOiBjb252ZXJ0LmM6NzMwIGNvbnZlcnQuYzo3MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZCBmcm9tIGV4dGVybmFsIGZpbHRlciAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAibGEgbGVjdHVyYSBkZWwgZmlsdHJlIGV4dGVybiDCqyVzwrsgaGEgZmFsbGF0IgogCi0jOiBjb252ZXJ0LmM6NzQyIGNvbnZlcnQuYzo3OTYKKyM6IGNvbnZlcnQuYzo3MzYgY29udmVydC5jOjc5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQiCiBtc2dzdHIgImVsIGZpbHRyZSBleHRlcm4gwqslc8K7IGhhIGZhbGxhdCIKIAotIzogY29udmVydC5jOjg0NAotIywgZnV6enkKKyM6IGNvbnZlcnQuYzo4MzkKIG1zZ2lkICJ1bmV4cGVjdGVkIGZpbHRlciB0eXBlIgotbXNnc3RyICJmaW5hbCBkZSBmaXR4ZXIgaW5lc3BlcmF0IgorbXNnc3RyICJ0aXB1cyBkZSBmaWx0cmUgaW5lc3BlcmF0IgogCi0jOiBjb252ZXJ0LmM6ODU1CisjOiBjb252ZXJ0LmM6ODUwCiBtc2dpZCAicGF0aCBuYW1lIHRvbyBsb25nIGZvciBleHRlcm5hbCBmaWx0ZXIiCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjkyOQorIzogY29udmVydC5jOjkyNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXh0ZXJuYWwgZmlsdGVyICclcycgaXMgbm90IGF2YWlsYWJsZSBhbnltb3JlIGFsdGhvdWdoIG5vdCBhbGwgcGF0aHMgaGF2ZSAiCiAiYmVlbiBmaWx0ZXJlZCIKIG1zZ3N0ciAiIgogCi0jOiBjb252ZXJ0LmM6MTIyOAorIzogY29udmVydC5jOjEyMjMKIG1zZ2lkICJ0cnVlL2ZhbHNlIGFyZSBubyB2YWxpZCB3b3JraW5nLXRyZWUtZW5jb2RpbmdzIgogbXNnc3RyICIiCiAKLSM6IGNvbnZlcnQuYzoxMzk4IGNvbnZlcnQuYzoxNDMyCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGNvbnZlcnQuYzoxNDExIGNvbnZlcnQuYzoxNDQ1CisjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjbGVhbiBmaWx0ZXIgJyVzJyBmYWlsZWQiCi1tc2dzdHIgImxhIGNyZWFjacOzIGRlIMKrJXPCuyBoYSBmYWxsYXQiCittc2dzdHIgIiVzOiBlbCBmaWx0cmUgZGUgbmV0ZWphdCDCqyVzwrsgaGEgZmFsbGF0IgogCi0jOiBjb252ZXJ0LmM6MTQ3NgorIzogY29udmVydC5jOjE0ODkKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgIiVzOiBzbXVkZ2UgZmlsdGVyICVzIGZhaWxlZCIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBhY3R1YWxpdHphciBlbHMgZml0eGVycyIKIAotIzogZGF0ZS5jOjExNgorIzogZGF0ZS5jOjEzOAogbXNnaWQgImluIHRoZSBmdXR1cmUiCiBtc2dzdHIgImVuIGVsIGZ1dHVyIgogCi0jOiBkYXRlLmM6MTIyCisjOiBkYXRlLmM6MTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gc2Vjb25kIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBzZWNvbmRzIGFnbyIKIG1zZ3N0clswXSAiZmEgJTxQUkl1TUFYPiBzZWdvbiIKIG1zZ3N0clsxXSAiZmEgJTxQUkl1TUFYPiBzZWdvbnMiCiAKLSM6IGRhdGUuYzoxMjkKKyM6IGRhdGUuYzoxNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiBtaW51dGUgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IG1pbnV0ZXMgYWdvIgogbXNnc3RyWzBdICJmYSAlPFBSSXVNQVg+IG1pbnV0IgogbXNnc3RyWzFdICJmYSAlPFBSSXVNQVg+IG1pbnV0cyIKIAotIzogZGF0ZS5jOjEzNgorIzogZGF0ZS5jOjE1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IGhvdXIgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IGhvdXJzIGFnbyIKIG1zZ3N0clswXSAiZmEgJTxQUkl1TUFYPiBob3JhIgogbXNnc3RyWzFdICJmYSAlPFBSSXVNQVg+IGhvcmVzIgogCi0jOiBkYXRlLmM6MTQzCisjOiBkYXRlLmM6MTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gZGF5IGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBkYXlzIGFnbyIKIG1zZ3N0clswXSAiZmEgJTxQUkl1TUFYPiBkaWEiCiBtc2dzdHJbMV0gImZhICU8UFJJdU1BWD4gZGllcyIKIAotIzogZGF0ZS5jOjE0OQorIzogZGF0ZS5jOjE3MQogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHdlZWsgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHdlZWtzIGFnbyIKIG1zZ3N0clswXSAiZmEgJTxQUkl1TUFYPiBzZXRtYW5hIgogbXNnc3RyWzFdICJmYSAlPFBSSXVNQVg+IHNldG1hbmVzIgogCi0jOiBkYXRlLmM6MTU2CisjOiBkYXRlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gbW9udGggYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IG1vbnRocyBhZ28iCiBtc2dzdHJbMF0gImZhICU8UFJJdU1BWD4gbWVzIgogbXNnc3RyWzFdICJmYSAlPFBSSXVNQVg+IG1lc29zIgogCi0jOiBkYXRlLmM6MTY3CisjOiBkYXRlLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4geWVhciIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiB5ZWFycyIKQEAgLTIxNzIsOTcgKzI3OTIsMTA4IEBACiBtc2dzdHJbMV0gIiU8UFJJdU1BWD4gYW55cyIKIAogIy4gVFJBTlNMQVRPUlM6ICIlcyIgaXMgIjxuPiB5ZWFycyIKLSM6IGRhdGUuYzoxNzAKKyM6IGRhdGUuYzoxOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMsICU8UFJJdU1BWD4gbW9udGggYWdvIgogbXNnaWRfcGx1cmFsICIlcywgJTxQUkl1TUFYPiBtb250aHMgYWdvIgogbXNnc3RyWzBdICJmYSAlcyBpICU8UFJJdU1BWD4gbWVzIgogbXNnc3RyWzFdICJmYSAlcyBpICU8UFJJdU1BWD4gbWVzb3MiCiAKLSM6IGRhdGUuYzoxNzUgZGF0ZS5jOjE4MAorIzogZGF0ZS5jOjE5NyBkYXRlLmM6MjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4geWVhciBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4geWVhcnMgYWdvIgogbXNnc3RyWzBdICJmYSAlPFBSSXVNQVg+IGFueSIKIG1zZ3N0clsxXSAiZmEgJTxQUkl1TUFYPiBhbnlzIgogCi0jOiBkZWx0YS1pc2xhbmRzLmM6MjY4CisjOiBkZWx0YS1pc2xhbmRzLmM6MjcyCiBtc2dpZCAiUHJvcGFnYXRpbmcgaXNsYW5kIG1hcmtzIgotbXNnc3RyICIiCittc2dzdHIgIlMnZXN0YW4gcHJvcGFnYW50IGxlcyBtYXJxdWVzIGQnaWxsYSIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjI4NgotIywgZnV6enksIGMtZm9ybWF0CisjOiBkZWx0YS1pc2xhbmRzLmM6MjkwCisjLCBjLWZvcm1hdAogbXNnaWQgImJhZCB0cmVlIG9iamVjdCAlcyIKLW1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgbCdvYmplY3RlIMKrJXPCuy4iCittc2dzdHIgIm9iamVjdGUgZCdhcmJyZSBtYWxtw6hzICVzIgogCi0jOiBkZWx0YS1pc2xhbmRzLmM6MzMwCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGRlbHRhLWlzbGFuZHMuYzozMzQKKyMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvYWQgaXNsYW5kIHJlZ2V4IGZvciAnJXMnOiAlcyIKLW1zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBjZXJjYXIgbCdhcmJyZSBkZSAlcy4iCittc2dzdHIgIiIKKyJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNhcnJlZ2FyIGwnZXhwcmVzc2nDsyByZWd1bGFyIGRlIGwnaWxsYSBwZXIgwqslc8K7OiAlcyIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjM4NgorIzogZGVsdGEtaXNsYW5kcy5jOjM5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpc2xhbmQgcmVnZXggZnJvbSBjb25maWcgaGFzIHRvbyBtYW55IGNhcHR1cmUgZ3JvdXBzIChtYXg9JWQpIgogbXNnc3RyICIiCisibCdleHByZXNzacOzIHJlZ3VsYXIgZGUgbCdpbGxhIGRlcyBkZSBsYSBjb25maWd1cmFjacOzIHTDqSBtYXNzYSBncnVwcyBkZSAiCisiY2FwdHVyYSAobcOgeD0lZCkiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzo0NjIKKyM6IGRlbHRhLWlzbGFuZHMuYzo0NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWFya2VkICVkIGlzbGFuZHMsIGRvbmUuXG4iCi1tc2dzdHIgIiIKK21zZ3N0ciAiTWFyY2FkZXMgJWQgaWxsZXMsIGZldC5cbiIKIAogIzogZGlmZmNvcmUtb3JkZXIuYzoyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcmRlcmZpbGUgJyVzJyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgZWwgZml0eGVyIGQnb3JkcmVzIMKrJXPCuyIKIAotIzogZGlmZmNvcmUtcmVuYW1lLmM6NTQ0CisjOiBkaWZmY29yZS1yZW5hbWUuYzo1NDMKIG1zZ2lkICJQZXJmb3JtaW5nIGluZXhhY3QgcmVuYW1lIGRldGVjdGlvbiIKIG1zZ3N0ciAiUydlc3TDoCByZWFsaXR6YW50IHVuYSBkZXRlY2Npw7MgaW5leGFjdGEgZGUgY2FudmlzIGRlIG5vbSIKIAotIzogZGlmZi5jOjEwOAotIywgYy1mb3JtYXQKLW1zZ2lkICJvcHRpb24gJyVzJyByZXF1aXJlcyBhIHZhbHVlIgotbXNnc3RyICJsJ29wY2nDsyDCqyVzwrsgcmVxdWVyZWl4IHVuIHZhbG9yIgorIzogZGlmZi1uby1pbmRleC5jOjIzOAorbXNnaWQgImdpdCBkaWZmIC0tbm8taW5kZXggWzxvcHRpb25zPl0gPHBhdGg+IDxwYXRoPiIKK21zZ3N0ciAiZ2l0IGRpZmYgLS1uby1pbmRleCBbPG9wY2lvbnM+XSA8Y2Ftw60+IDxjYW3DrT4iCiAKLSM6IGRpZmYuYzoxNTgKKyM6IGRpZmYtbm8taW5kZXguYzoyNjMKK21zZ2lkICIiCisiTm90IGEgZ2l0IHJlcG9zaXRvcnkuIFVzZSAtLW5vLWluZGV4IHRvIGNvbXBhcmUgdHdvIHBhdGhzIG91dHNpZGUgYSB3b3JraW5nICIKKyJ0cmVlIgorbXNnc3RyICIiCisiTm8gw6lzIHVuIGRpcMOyc2l0IEdpdC4gVXNldSAtLW5vLWluZGV4IHBlciBhIGNvbXBhcmFyIGRvcyBjYW1pbnMgZm9yYSBkZWwgIgorImRpcmVjdG9yaSBkZSB0cmViYWxsIgorCisjOiBkaWZmLmM6MTU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgRmFpbGVkIHRvIHBhcnNlIGRpcnN0YXQgY3V0LW9mZiBwZXJjZW50YWdlICclcydcbiIKIG1zZ3N0ciAiIgogIiAgUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBhbmFsaXR6YXIgZWwgcGVyY2VudGF0Z2UgbGltaXRhbnQgZGUgZGlyc3RhdCAiCiAiwqslc8K7XG4iCiAKLSM6IGRpZmYuYzoxNjMKKyM6IGRpZmYuYzoxNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBVbmtub3duIGRpcnN0YXQgcGFyYW1ldGVyICclcydcbiIKIG1zZ3N0ciAiICBQYXLDoG1ldHJlIGRlIGRpcnN0YXQgZGVzY29uZWd1dCDCqyVzwrtcbiIKIAotIzogZGlmZi5jOjI5MQotIywgZnV6enkKKyM6IGRpZmYuYzoyOTYKIG1zZ2lkICIiCiAiY29sb3IgbW92ZWQgc2V0dGluZyBtdXN0IGJlIG9uZSBvZiAnbm8nLCAnZGVmYXVsdCcsICdibG9ja3MnLCAnemVicmEnLCAiCiAiJ2RpbW1lZC16ZWJyYScsICdwbGFpbiciCiBtc2dzdHIgIiIKLSJlbCBwYXLDoG1ldHJlIGRlIGNvbG9yIGVuIG1vdmltZW50IGhhIGRlIHNlciDCq25vwrssIMKrZGVmYXVsdMK7LCDCq3plYnJhwrssICIKLSLCq2RpbW1lZF96ZWJyYcK7IG8gwqtwbGFpbsK7IgorImVsIHBhcsOgbWV0cmUgZGUgY29sb3IgZW4gbW92aW1lbnQgaGEgZGUgc2VyIMKrbm/CuywgwqtkZWZhdWx0wrssIMKrYmxvY2tzwrssICIKKyLCq3plYnJhwrssIMKrZGltbWVkLXplYnJhwrsgbyDCq3BsYWluwrsiCiAKLSM6IGRpZmYuYzozMTYKKyM6IGRpZmYuYzozMjQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiaWdub3JpbmcgdW5rbm93biBjb2xvci1tb3ZlZC13cyBtb2RlICclcyciCi1tc2dzdHIgIiIKLQotIzogZGlmZi5jOjMyMwogbXNnaWQgIiIKLSJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHdoaXRlICIKLSJzcGFjZSBtb2RlcyIKKyJ1bmtub3duIGNvbG9yLW1vdmVkLXdzIG1vZGUgJyVzJywgcG9zc2libGUgdmFsdWVzIGFyZSAnaWdub3JlLXNwYWNlLWNoYW5nZScsICIKKyInaWdub3JlLXNwYWNlLWF0LWVvbCcsICdpZ25vcmUtYWxsLXNwYWNlJywgJ2FsbG93LWluZGVudGF0aW9uLWNoYW5nZSciCiBtc2dzdHIgIiIKIAotIzogZGlmZi5jOjM5NAorIzogZGlmZi5jOjMzMgorbXNnaWQgIiIKKyJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyICIKKyJ3aGl0ZXNwYWNlIG1vZGVzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo0MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biB2YWx1ZSBmb3IgJ2RpZmYuc3VibW9kdWxlJyBjb25maWcgdmFyaWFibGU6ICclcyciCiBtc2dzdHIgIiIKICJWYWxvciBkZXNjb25lZ3V0IGRlIGxhIHZhcmlhYmxlIGRlIGNvbmZpZ3VyYWNpw7MgZGUgJ2RpZmYuc3VibW9kdWxlJzogwqslc8K7IgogCi0jOiBkaWZmLmM6NDU0CisjOiBkaWZmLmM6NDY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJGb3VuZCBlcnJvcnMgaW4gJ2RpZmYuZGlyc3RhdCcgY29uZmlnIHZhcmlhYmxlOlxuIgpAQCAtMjI3MSwyNCArMjkwMiwzNSBAQAogIlMnaGFuIHRyb2JhdCBlcnJvcnMgZW4gbGEgdmFyaWFibGUgZGUgY29uZmlndXJhY2nDsyAnZGlmZi5kaXJzdGF0JzpcbiIKICIlcyIKIAotIzogZGlmZi5jOjQxNDAKKyM6IGRpZmYuYzo0MjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4dGVybmFsIGRpZmYgZGllZCwgc3RvcHBpbmcgYXQgJXMiCiBtc2dzdHIgImVsIGRpZmYgZXh0ZXJuYWwgcydoYSBtb3J0LCBzJ2VzdMOgIGF0dXJhbnQgYSAlcyIKIAotIzogZGlmZi5jOjQ0ODIKKyM6IGRpZmYuYzo0NTQ3CiBtc2dpZCAiLS1uYW1lLW9ubHksIC0tbmFtZS1zdGF0dXMsIC0tY2hlY2sgYW5kIC1zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi0tbmFtZS1vbmx5LCAtLW5hbWUtc3RhdHVzLCAtLWNoZWNrIGkgLXMgc8OzbiBtw7p0dWFtZW50IGV4Y2xvZW50cyIKIAotIzogZGlmZi5jOjQ0ODUKKyM6IGRpZmYuYzo0NTUwCiBtc2dpZCAiLUcsIC1TIGFuZCAtLWZpbmQtb2JqZWN0IGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi1HLCAtUyBhbmQgLS1maW5kLW9iamVjdCBzw7NuIG3DunR1YW1lbnQgZXhjbG9lbnRzIgogCi0jOiBkaWZmLmM6NDU2MworIzogZGlmZi5jOjQ2MjgKIG1zZ2lkICItLWZvbGxvdyByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXRoc3BlYyIKIG1zZ3N0ciAiLS1mb2xsb3cgcmVxdWVyZWl4IGV4YWN0YW1lbnQgdW5hIGVzcGVjaWZpY2FjacOzIGRlIGNhbcOtIgogCi0jOiBkaWZmLmM6NDcyOQorIzogZGlmZi5jOjQ2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAtLXN0YXQgdmFsdWU6ICVzIgorbXNnc3RyICJ2YWxvciAtLXN0YXQgbm8gdsOgbGlkOiAlcyIKKworIzogZGlmZi5jOjQ2ODEgZGlmZi5jOjQ2ODYgZGlmZi5jOjQ2OTEgZGlmZi5jOjQ2OTYgZGlmZi5jOjUyMDkKKyM6IHBhcnNlLW9wdGlvbnMuYzoxOTkgcGFyc2Utb3B0aW9ucy5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICIlcyBlc3BlcmEgdW4gdmFsb3IgbnVtw6hyaWMiCisKKyM6IGRpZmYuYzo0NzEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJGYWlsZWQgdG8gcGFyc2UgLS1kaXJzdGF0Ly1YIG9wdGlvbiBwYXJhbWV0ZXI6XG4iCkBAIC0yMjk3LDIyICsyOTM5LDQ5OCBAQAogIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gYW5hbGl0emFyIGVsIHBhcsOgbWV0cmUgZCdvcGNpw7MgZGUgLS1kaXJzdGF0Ly1YOlxuIgogIiVzIgogCi0jOiBkaWZmLmM6NDc0MworIzogZGlmZi5jOjQ3OTgKICMsIGMtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHBhcnNlIC0tc3VibW9kdWxlIG9wdGlvbiBwYXJhbWV0ZXI6ICclcyciCittc2dpZCAidW5rbm93biBjaGFuZ2UgY2xhc3MgJyVjJyBpbiAtLWRpZmYtZmlsdGVyPSVzIgorbXNnc3RyICJjbGFzc2UgZGUgY2FudmkgwqslY8K7IGRlc2NvbmVndWRhIGEgLS1kaWZmLWZpbHRlcj0lcyIKKworIzogZGlmZi5jOjQ4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB2YWx1ZSBhZnRlciB3cy1lcnJvci1oaWdobGlnaHQ9JS4qcyIKK21zZ3N0ciAidmFsb3IgZGVzY29uZWd1dCBkZXNwcsOpcyBkZSB3cy1lcnJvci1oaWdobGlnaHQ9JS4qcyIKKworIzogZGlmZi5jOjQ4MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgJyVzJyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCByZXNvbGRyZSDCqyVzwrsiCisKKyM6IGRpZmYuYzo0ODg2IGRpZmYuYzo0ODkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgPG4+LzxtPiBmb3JtIgogbXNnc3RyICIiCi0iUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBhbmFsaXR6YXIgZWwgcGFyw6BtZXRyZSBkJ29wY2nDsyBkZSAtLXN1Ym1vZHVsZTogwqslc8K7IgogCi0jOiBkaWZmLmM6NTgyMworIzogZGlmZi5jOjQ5MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIGNoYXJhY3RlciwgZ290ICclcyciCittc2dzdHIgIiVzIGVzcGVyYXZhIHVuIGNhcsOgY3RlciwgcydoYSByZWJ1dCDCqyVzwrsiCisKKyM6IGRpZmYuYzo0OTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLWNvbG9yLW1vdmVkIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAicGFyw6BtZXRyZSAtLWNvbG9yLW1vdmVkIGluY29ycmVjdGU6ICVzIgorCisjOiBkaWZmLmM6NDk0NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG1vZGUgJyVzJyBpbiAtLWNvbG9yLW1vdmVkLXdzIgorbXNnc3RyICJtb2RlIMKrJXPCuyBubyB2w6BsaWQgZW4gLWNvbG9yLW1vdmVkLXdzIgorCisjOiBkaWZmLmM6NDk4NAorbXNnaWQgIiIKKyJvcHRpb24gZGlmZi1hbGdvcml0aG0gYWNjZXB0cyBcIm15ZXJzXCIsIFwibWluaW1hbFwiLCBcInBhdGllbmNlXCIgYW5kICIKKyJcImhpc3RvZ3JhbVwiIgorbXNnc3RyICIiCisibCdvcGNpw7MgZGlmZi1hbGdvcml0aG0gYWNjZXB0YSDCq215ZXJzwrssIMKrbWluaW1hbMK7LCDCq3BhdGllbmNlwrsgaSDCq2hpc3RvZ3JhbcK7IgorCisjOiBkaWZmLmM6NTAyMCBkaWZmLmM6NTA0MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGFyZ3VtZW50IHRvICVzIgorbXNnc3RyICJhcmd1bWVudCBubyB2w6BsaWQgYSAlcyIKKworIzogZGlmZi5jOjUxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIC0tc3VibW9kdWxlIG9wdGlvbiBwYXJhbWV0ZXI6ICclcyciCittc2dzdHIgIiIKKyJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGFuYWxpdHphciBlbCBwYXLDoG1ldHJlIGQnb3BjacOzIGRlIC0tc3VibW9kdWxlOiDCqyVzwrsiCisKKyM6IGRpZmYuYzo1MjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLXdvcmQtZGlmZiBhcmd1bWVudDogJXMiCittc2dzdHIgInBhcsOgbWV0cmUgLS13b3JkLWRpZmYgaW5jb3JyZWN0ZTogJXMiCisKKyM6IGRpZmYuYzo1MjU3Cittc2dpZCAiRGlmZiBvdXRwdXQgZm9ybWF0IG9wdGlvbnMiCittc2dzdHIgIk9wY2lvbnMgZGVsIGZvcm1hdCBkZSBzb3J0aWRhIGRlbCBkaWZmIgorCisjOiBkaWZmLmM6NTI1OSBkaWZmLmM6NTI2NQorbXNnaWQgImdlbmVyYXRlIHBhdGNoIgorbXNnc3RyICJnZW5lcmFudCBwZWRhw6ciCisKKyM6IGRpZmYuYzo1MjYyIGJ1aWx0aW4vbG9nLmM6MTczCittc2dpZCAic3VwcHJlc3MgZGlmZiBvdXRwdXQiCittc2dzdHIgIm9tZXQgbGEgc29ydGlkYSBkZSBkaWZlcsOobmNpZXMiCisKKyM6IGRpZmYuYzo1MjY3IGRpZmYuYzo1MzgxIGRpZmYuYzo1Mzg4Cittc2dpZCAiPG4+IgorbXNnc3RyICI8bj4iCisKKyM6IGRpZmYuYzo1MjY4IGRpZmYuYzo1MjcxCittc2dpZCAiZ2VuZXJhdGUgZGlmZnMgd2l0aCA8bj4gbGluZXMgY29udGV4dCIKK21zZ3N0ciAiZ2VuZXJhIGRpZmZzIGFtYiA8bj4gbMOtbmllcyBkZSBjb250ZXh0IgorCisjOiBkaWZmLmM6NTI3MworbXNnaWQgImdlbmVyYXRlIHRoZSBkaWZmIGluIHJhdyBmb3JtYXQiCittc2dzdHIgImdlbmVyYSBlbCBkaWZmIGVuIGZvcm1hdCBjcnUiCisKKyM6IGRpZmYuYzo1Mjc2Cittc2dpZCAic3lub255bSBmb3IgJy1wIC0tcmF3JyIKK21zZ3N0ciAic2luw7JuaW0gZGUgcGVyIGEgwqstcCAtLXJhd8K7IgorCisjOiBkaWZmLmM6NTI4MAorbXNnaWQgInN5bm9ueW0gZm9yICctcCAtLXN0YXQnIgorbXNnc3RyICJzaW7Dsm5pbSBkZSBwZXIgYSDCqy1wIC0tc3RhdMK7IgorCisjOiBkaWZmLmM6NTI4NAorbXNnaWQgIm1hY2hpbmUgZnJpZW5kbHkgLS1zdGF0IgorbXNnc3RyICJsbGVnaWJsZSBwZXIgbcOgcXVpbmEgLS1zdGF0IgorCisjOiBkaWZmLmM6NTI4NworbXNnaWQgIm91dHB1dCBvbmx5IHRoZSBsYXN0IGxpbmUgb2YgLS1zdGF0IgorbXNnc3RyICJtb3N0cmEgbm9tw6lzIGwnw7psdGltYSBsw61uaWEgZGUgLS1zdGF0IgorCisjOiBkaWZmLmM6NTI4OSBkaWZmLmM6NTI5NworbXNnaWQgIjxwYXJhbTEscGFyYW0yPi4uLiIKK21zZ3N0ciAiPHBhcmFtMSxwYXJhbTI+Li4uIgorCisjOiBkaWZmLmM6NTI5MAorbXNnaWQgIiIKKyJvdXRwdXQgdGhlIGRpc3RyaWJ1dGlvbiBvZiByZWxhdGl2ZSBhbW91bnQgb2YgY2hhbmdlcyBmb3IgZWFjaCBzdWItZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1Mjk0Cittc2dpZCAic3lub255bSBmb3IgLS1kaXJzdGF0PWN1bXVsYXRpdmUiCittc2dzdHIgInNpbsOybmltIHBlciAtZGlyc3RhdD1jdW11bGF0aXZlIgorCisjOiBkaWZmLmM6NTI5OAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1maWxlcyxwYXJhbTEscGFyYW0yLi4uIgorbXNnc3RyICJzaW7Dsm5pbSBwZXIgLS1kaXJzdGF0PWZpbGVzLHBhcmFtMSxwYXJhbTIuLi4iCisKKyM6IGRpZmYuYzo1MzAyCittc2dpZCAid2FybiBpZiBjaGFuZ2VzIGludHJvZHVjZSBjb25mbGljdCBtYXJrZXJzIG9yIHdoaXRlc3BhY2UgZXJyb3JzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzA1Cittc2dpZCAiY29uZGVuc2VkIHN1bW1hcnkgc3VjaCBhcyBjcmVhdGlvbnMsIHJlbmFtZXMgYW5kIG1vZGUgY2hhbmdlcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMwOAorbXNnaWQgInNob3cgb25seSBuYW1lcyBvZiBjaGFuZ2VkIGZpbGVzIgorbXNnc3RyICJtb3N0cmEgbm9tw6lzIGVscyBub21zIGRlIGZpdHhlcnMgY2FudmlhdHMiCisKKyM6IGRpZmYuYzo1MzExCittc2dpZCAic2hvdyBvbmx5IG5hbWVzIGFuZCBzdGF0dXMgb2YgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAibW9zdHJhIG5vbcOpcyBlbHMgbm9tcyBpIGwnZXN0YXQgZGVscyBmaXR4ZXJzIGNhbnZpYXRzIgorCisjOiBkaWZmLmM6NTMxMworbXNnaWQgIjx3aWR0aD5bLDxuYW1lLXdpZHRoPlssPGNvdW50Pl1dIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzE0Cittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQiCittc2dzdHIgImdlbmVyYSBkaWZmc3RhdCIKKworIzogZGlmZi5jOjUzMTYgZGlmZi5jOjUzMTkgZGlmZi5jOjUzMjIKK21zZ2lkICI8d2lkdGg+IgorbXNnc3RyICI8YW1wbGFkYT4iCisKKyM6IGRpZmYuYzo1MzE3Cittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBhIGdpdmVuIHdpZHRoIgorbXNnc3RyICJnZW5lcmEgZGlmZnN0YXQgYW1iIHVuYSBhbXBsYWRhIGRvbmFkYSIKKworIzogZGlmZi5jOjUzMjAKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGEgZ2l2ZW4gbmFtZSB3aWR0aCIKK21zZ3N0ciAiZ2VuZXJhIGRpZmZzdGF0IGFtYiB1biBub20gZCdhbXBsYWRhIGRvbmF0IgorCisjOiBkaWZmLmM6NTMyMworbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBncmFwaCB3aWR0aCIKK21zZ3N0ciAiZ2VuZXJhIGRpZmZzdGF0IGFtYiB1bmEgYW1wbGFkYSBkZSBncmFmIGRvbmFkYSIKKworIzogZGlmZi5jOjUzMjUKK21zZ2lkICI8Y291bnQ+IgorbXNnc3RyICI8Y29tcHRhZG9yPiIKKworIzogZGlmZi5jOjUzMjYKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGxpbWl0ZWQgbGluZXMiCittc2dzdHIgImdlbmVyYSBkaWZmc3RhdCBhbWIgbMOtbmllcyBsaW1pdGFkZXMiCisKKyM6IGRpZmYuYzo1MzI5Cittc2dpZCAiZ2VuZXJhdGUgY29tcGFjdCBzdW1tYXJ5IGluIGRpZmZzdGF0IgorbXNnc3RyICJnZW5lcmEgdW4gcmVzdW0gY29tcGFjdGUgYSBkaWZmc3RhdCIKKworIzogZGlmZi5jOjUzMzIKK21zZ2lkICJvdXRwdXQgYSBiaW5hcnkgZGlmZiB0aGF0IGNhbiBiZSBhcHBsaWVkIgorbXNnc3RyICJkaWZmIGFtYiBzb3J0aWRhIGJpbmFyaWEgcXVlIHBvdCBzZXIgYXBsaWNhZGEiCisKKyM6IGRpZmYuYzo1MzM1Cittc2dpZCAic2hvdyBmdWxsIHByZS0gYW5kIHBvc3QtaW1hZ2Ugb2JqZWN0IG5hbWVzIG9uIHRoZSBcImluZGV4XCIgbGluZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzMzcKK21zZ2lkICJzaG93IGNvbG9yZWQgZGlmZiIKK21zZ3N0ciAibW9zdHJhIHVuIGRpZmYgYW1iIGNvbG9ycyIKKworIzogZGlmZi5jOjUzMzgKK21zZ2lkICI8a2luZD4iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzMzkKK21zZ2lkICIiCisiaGlnaGxpZ2h0IHdoaXRlc3BhY2UgZXJyb3JzIGluIHRoZSAnY29udGV4dCcsICdvbGQnIG9yICduZXcnIGxpbmVzIGluIHRoZSAiCisiZGlmZiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM0MgorbXNnaWQgIiIKKyJkbyBub3QgbXVuZ2UgcGF0aG5hbWVzIGFuZCB1c2UgTlVMcyBhcyBvdXRwdXQgZmllbGQgdGVybWluYXRvcnMgaW4gLS1yYXcgb3IgIgorIi0tbnVtc3RhdCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM0NSBkaWZmLmM6NTM0OCBkaWZmLmM6NTM1MSBkaWZmLmM6NTQ1NworbXNnaWQgIjxwcmVmaXg+IgorbXNnc3RyICI8cHJlZml4PiIKKworIzogZGlmZi5jOjUzNDYKK21zZ2lkICJzaG93IHRoZSBnaXZlbiBzb3VyY2UgcHJlZml4IGluc3RlYWQgb2YgXCJhL1wiIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzQ5Cittc2dpZCAic2hvdyB0aGUgZ2l2ZW4gZGVzdGluYXRpb24gcHJlZml4IGluc3RlYWQgb2YgXCJiL1wiIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzUyCittc2dpZCAicHJlcGVuZCBhbiBhZGRpdGlvbmFsIHByZWZpeCB0byBldmVyeSBsaW5lIG9mIG91dHB1dCIKK21zZ3N0ciAiYWZlZ2lyIHVuIHByZWZpeCBhZGRpY2lvbmFsIHBlciBhIGNhZGEgbMOtbmlhIGRlIHNvcnRpZGEiCisKKyM6IGRpZmYuYzo1MzU1Cittc2dpZCAiZG8gbm90IHNob3cgYW55IHNvdXJjZSBvciBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIm5vIG1vc3RyaXMgY2FwIHByZWZpeCBkJ29yaWdlbiBvIGRlc3TDrSIKKworIzogZGlmZi5jOjUzNTgKKyMsIGZ1enp5Cittc2dpZCAic2hvdyBjb250ZXh0IGJldHdlZW4gZGlmZiBodW5rcyB1cCB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiBsaW5lcyIKK21zZ3N0ciAiQ3JlYSB1biBjbG9uIHN1cGVyZmljaWFsIHRydW5jYXQgYWwgbm9tYnJlIGRlIHJldmlzaW9ucyBlc3BlY2lmaWNhdCIKKworIzogZGlmZi5jOjUzNjIgZGlmZi5jOjUzNjcgZGlmZi5jOjUzNzIKK21zZ2lkICI8Y2hhcj4iCittc2dzdHIgIjxjaGFyPiIKKworIzogZGlmZi5jOjUzNjMKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBuZXcgbGluZSBpbnN0ZWFkIG9mICcrJyIKK21zZ3N0ciAiIgorImVzcGVjaWZpcXVldSBlbCBjYXLDoGN0ZXIgcGVyIGEgaW5kaWNhciB1bmEgbMOtbmlhIG5vdmEgZW4gY29tcHRlcyBkZSDCqyvCuyIKKworIzogZGlmZi5jOjUzNjgKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYW4gb2xkIGxpbmUgaW5zdGVhZCBvZiAnLSciCittc2dzdHIgIiIKKyJlc3BlY2lmaXF1ZXUgZWwgY2Fyw6BjdGVyIHBlciBhIGluZGljYXIgdW5hIGzDrW5pYSBhbnRpZ2EgZW4gY29tcHRlcyBkZSDCqy3CuyIKKworIzogZGlmZi5jOjUzNzMKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBjb250ZXh0IGluc3RlYWQgb2YgJyAnIgorbXNnc3RyICJlc3BlY2lmaXF1ZXUgZWwgY2Fyw6BjdGVyIHBlciBhIGluZGljYXIgY29udGV4dCBlbiBjb21wdGVzIGRlIMKrIMK7IgorCisjOiBkaWZmLmM6NTM3NgorbXNnaWQgIkRpZmYgcmVuYW1lIG9wdGlvbnMiCittc2dzdHIgIk9wY2lvbnMgZGUgY2FudmkgZGUgbm9tIGRlbCBkaWZmIgorCisjOiBkaWZmLmM6NTM3NworbXNnaWQgIjxuPlsvPG0+XSIKK21zZ3N0ciAiPG4+Wy88bT5dIgorCisjOiBkaWZmLmM6NTM3OAorbXNnaWQgImJyZWFrIGNvbXBsZXRlIHJld3JpdGUgY2hhbmdlcyBpbnRvIHBhaXJzIG9mIGRlbGV0ZSBhbmQgY3JlYXRlIgorbXNnc3RyICIiCisiZGl2aWRlaXggZWxzIGNhbnZpcyBkZSByZWVzY3JpcHR1cmEgY29tcGxldGEgZW4gcGFyZWxscyBkZSBzdXByaW1pciBpIGNyZWFyIgorCisjOiBkaWZmLmM6NTM4MgorbXNnaWQgImRldGVjdCByZW5hbWVzIgorbXNnc3RyICJkZXRlY3RhIGVscyBjYW52aXMgZGUgbm9tcyIKKworIzogZGlmZi5jOjUzODYKK21zZ2lkICJvbWl0IHRoZSBwcmVpbWFnZSBmb3IgZGVsZXRlcyIKK21zZ3N0ciAib21ldCBsZXMgcHJlaW1hdGdlcyBwZXIgbGVzIHN1cHJlc3Npb25zIgorCisjOiBkaWZmLmM6NTM4OQorbXNnaWQgImRldGVjdCBjb3BpZXMiCittc2dzdHIgImRldGVjdGEgY8OycGllcyIKKworIzogZGlmZi5jOjUzOTMKK21zZ2lkICJ1c2UgdW5tb2RpZmllZCBmaWxlcyBhcyBzb3VyY2UgdG8gZmluZCBjb3BpZXMiCittc2dzdHIgInVzYSBlbHMgZml0eGVycyBubyBtb2RpZmljYXRzIGNvbSBhIGZvbnQgcGVyIHRyb2JhciBjw7JwaWVzIgorCisjOiBkaWZmLmM6NTM5NQorbXNnaWQgImRpc2FibGUgcmVuYW1lIGRldGVjdGlvbiIKK21zZ3N0ciAiaW5oYWJpbGl0YSBsYSBkZXRlY2Npw7MgZGUgY2FudmlzIGRlIG5vbSIKKworIzogZGlmZi5jOjUzOTgKK21zZ2lkICJ1c2UgZW1wdHkgYmxvYnMgYXMgcmVuYW1lIHNvdXJjZSIKK21zZ3N0ciAidXNhIGVscyBibG9icyBidWl0cyBjb20gYSBmb250IGRlIGNhbnZpIGRlIG5vbSIKKworIzogZGlmZi5jOjU0MDAKK21zZ2lkICJjb250aW51ZSBsaXN0aW5nIHRoZSBoaXN0b3J5IG9mIGEgZmlsZSBiZXlvbmQgcmVuYW1lcyIKK21zZ3N0ciAiIgorImNvbnRpbnVhIGxsaXN0YW50IGwnaGlzdMOycmljIGQndW4gdW4gZml0eGVyIG3DqXMgZW5sbMOgIGRlbHMgY2FudmlzIGRlIG5vbSIKKworIzogZGlmZi5jOjU0MDMKK21zZ2lkICIiCisicHJldmVudCByZW5hbWUvY29weSBkZXRlY3Rpb24gaWYgdGhlIG51bWJlciBvZiByZW5hbWUvY29weSB0YXJnZXRzIGV4Y2VlZHMgIgorImdpdmVuIGxpbWl0IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDA1Cittc2dpZCAiRGlmZiBhbGdvcml0aG0gb3B0aW9ucyIKK21zZ3N0ciAiT3BjaW9ucyBkJ2FsZ29yaXNtZSBEaWZmIgorCisjOiBkaWZmLmM6NTQwNworbXNnaWQgInByb2R1Y2UgdGhlIHNtYWxsZXN0IHBvc3NpYmxlIGRpZmYiCittc2dzdHIgInByb2R1ZWl4IGVsIGRpZmYgbcOpcyBwZXRpdCBwb3NzaWJsZSIKKworIzogZGlmZi5jOjU0MTAKK21zZ2lkICJpZ25vcmUgd2hpdGVzcGFjZSB3aGVuIGNvbXBhcmluZyBsaW5lcyIKK21zZ3N0ciAiaWdub3JhIGVscyBlc3BhaSBlbiBibGFuYyBlbiBjb21wYXJhciBsw61uaWVzIgorCisjOiBkaWZmLmM6NTQxMworbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIGFtb3VudCBvZiB3aGl0ZXNwYWNlIgorbXNnc3RyICJpZ25vcmEgZWxzIGNhbnZpcyBlbiBsYSBxdWFudGl0YXQgZCdlc3BhaSBlbiBibGFuYyIKKworIzogZGlmZi5jOjU0MTYKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyBpbiB3aGl0ZXNwYWNlIGF0IEVPTCIKK21zZ3N0ciAiaWdub3JhIGVscyBjYW52aXMgZCdlc3BhaSBlbiBibGFuYyBhbCBmaW5hbCBkZSBsYSBsw61uaWEiCisKKyM6IGRpZmYuYzo1NDE5Cittc2dpZCAiaWdub3JlIGNhcnJpZXItcmV0dXJuIGF0IHRoZSBlbmQgb2YgbGluZSIKK21zZ3N0ciAiaWdub3JhIGVscyByZXRvcm5zIGRlIGzDrW5pYSBhbCBmaW5hbCBkZSBsYSBsw61uaWEiCisKKyM6IGRpZmYuYzo1NDIyCittc2dpZCAiaWdub3JlIGNoYW5nZXMgd2hvc2UgbGluZXMgYXJlIGFsbCBibGFuayIKK21zZ3N0ciAiaWdub3JhIGVscyBjYW52aXMgZW4gbMOtbmllcyBxdWUgZXN0YW4gZW4gYmxhbmMiCisKKyM6IGRpZmYuYzo1NDI1Cittc2dpZCAiaGV1cmlzdGljIHRvIHNoaWZ0IGRpZmYgaHVuayBib3VuZGFyaWVzIGZvciBlYXN5IHJlYWRpbmciCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0MjgKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcInBhdGllbmNlIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgImdlbmVyYSBkaWZmIHVzYW50IGwnYWxnb3Jpc21lIMKrcGF0aWVuY2UgZGlmZsK7IgorCisjOiBkaWZmLmM6NTQzMgorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwiaGlzdG9ncmFtIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgImdlbmVyYSBkaWZmIHVzYW50IGwnYWxnb3Jpc21lIMKraGlzdG9ncmFtIGRpZmbCuyIKKworIzogZGlmZi5jOjU0MzQKK21zZ2lkICI8YWxnb3JpdGhtPiIKK21zZ3N0ciAiPGFsZ29yaXNtZT4iCisKKyM6IGRpZmYuYzo1NDM1Cittc2dpZCAiY2hvb3NlIGEgZGlmZiBhbGdvcml0aG0iCittc2dzdHIgImVzY29sbGl1IHVuIGFsZ29yaXNtZSBwZWwgZGlmZiIKKworIzogZGlmZi5jOjU0MzcKK21zZ2lkICI8dGV4dD4iCittc2dzdHIgIjx0ZXh0PiIKKworIzogZGlmZi5jOjU0MzgKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcImFuY2hvcmVkIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgImdlbmVyYSBkaWZmIHVzYW50IGwnYWxnb3Jpc21lIMKrYW5jaG9yZWQgZGlmZsK7IgorCisjOiBkaWZmLmM6NTQ0MCBkaWZmLmM6NTQ0OSBkaWZmLmM6NTQ1MgorbXNnaWQgIjxtb2RlPiIKK21zZ3N0ciAiPG1vZGU+IgorCisjOiBkaWZmLmM6NTQ0MQorbXNnaWQgInNob3cgd29yZCBkaWZmLCB1c2luZyA8bW9kZT4gdG8gZGVsaW1pdCBjaGFuZ2VkIHdvcmRzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDQzIGRpZmYuYzo1NDQ2IGRpZmYuYzo1NDkxCittc2dpZCAiPHJlZ2V4PiIKK21zZ3N0ciAiPHJlZ2V4PiIKKworIzogZGlmZi5jOjU0NDQKK21zZ2lkICJ1c2UgPHJlZ2V4PiB0byBkZWNpZGUgd2hhdCBhIHdvcmQgaXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NDcKK21zZ2lkICJlcXVpdmFsZW50IHRvIC0td29yZC1kaWZmPWNvbG9yIC0td29yZC1kaWZmLXJlZ2V4PTxyZWdleD4iCittc2dzdHIgImVxdWl2YWxlbnQgYSAtLXdvcmQtZGlmZj1jb2xvciAtLXdvcmQtZGlmZi1yZWdleD08cmVnZXg+IgorCisjOiBkaWZmLmM6NTQ1MAorbXNnaWQgIm1vdmVkIGxpbmVzIG9mIGNvZGUgYXJlIGNvbG9yZWQgZGlmZmVyZW50bHkiCittc2dzdHIgImxlcyBsw61uaWVzIGRlIGNvZGkgcXVlIHMnaGEgbW9ndXQgcydhY29sb3JlaXhlbiBkaWZlcmVudCIKKworIzogZGlmZi5jOjU0NTMKK21zZ2lkICJob3cgd2hpdGUgc3BhY2VzIGFyZSBpZ25vcmVkIGluIC0tY29sb3ItbW92ZWQiCittc2dzdHIgImNvbSBzJ2lnbm9yZW4gZWxzIGVzcGFpcyBlbiBibGFuYyBhIC0tY29sb3ItbW92ZWQiCisKKyM6IGRpZmYuYzo1NDU2Cittc2dpZCAiT3RoZXIgZGlmZiBvcHRpb25zIgorbXNnc3RyICJBbHRyZXMgb3BjaW9ucyBkaWZmIgorCisjOiBkaWZmLmM6NTQ1OAorbXNnaWQgIndoZW4gcnVuIGZyb20gc3ViZGlyLCBleGNsdWRlIGNoYW5nZXMgb3V0c2lkZSBhbmQgc2hvdyByZWxhdGl2ZSBwYXRocyIKK21zZ3N0ciAicXVhbiBzJ2V4ZWN1dGEgZGVzIGQndW4gc3ViZGlyZWN0b3JpLCBleGNsb3UgZWxzIGNhbnZpcyBkZSBmb3JhIGkgbW9zdHJhIGVscyBjYW1pbnMgcmVsYXRpdXMiCisKKyM6IGRpZmYuYzo1NDYyCittc2dpZCAidHJlYXQgYWxsIGZpbGVzIGFzIHRleHQiCittc2dzdHIgInRyYWN0YSB0b3RzIGVscyBmaXR4ZXJzIGNvbSBhIHRleHQiCisKKyM6IGRpZmYuYzo1NDY0Cittc2dpZCAic3dhcCB0d28gaW5wdXRzLCByZXZlcnNlIHRoZSBkaWZmIgorbXNnc3RyICJpbnRlcmNhbnZpYSBsZXMgZHVlcyBlbnRyYWRlcywgaW52ZXJ0ZWl4IGVsIGRpZmYiCisKKyM6IGRpZmYuYzo1NDY2Cittc2dpZCAiZXhpdCB3aXRoIDEgaWYgdGhlcmUgd2VyZSBkaWZmZXJlbmNlcywgMCBvdGhlcndpc2UiCittc2dzdHIgInN1cnQgYW1iIDEgc2kgaGkgaGEgZGlmZXLDqG5jaWVzLCAwIGVuIGNhcyBjb250cmFyaSIKKworIzogZGlmZi5jOjU0NjgKK21zZ2lkICJkaXNhYmxlIGFsbCBvdXRwdXQgb2YgdGhlIHByb2dyYW0iCittc2dzdHIgImluaGFiaWxpdGEgdG90ZXMgbGVzIHNvcnRpZGVzIGRlbCBwcm9ncmFtYSIKKworIzogZGlmZi5jOjU0NzAKK21zZ2lkICJhbGxvdyBhbiBleHRlcm5hbCBkaWZmIGhlbHBlciB0byBiZSBleGVjdXRlZCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ3MgorbXNnaWQgInJ1biBleHRlcm5hbCB0ZXh0IGNvbnZlcnNpb24gZmlsdGVycyB3aGVuIGNvbXBhcmluZyBiaW5hcnkgZmlsZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NzQKK21zZ2lkICI8d2hlbj4iCittc2dzdHIgIjxxdWFuPiIKKworIzogZGlmZi5jOjU0NzUKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyB0byBzdWJtb2R1bGVzIGluIHRoZSBkaWZmIGdlbmVyYXRpb24iCittc2dzdHIgImlnbm9yYSBlbHMgY2FudmlzIGFscyBzdWJtw7JkdWxzIGVuIGxhIGdlbmVyYWNpw7MgZGVsIGRpZmYiCisKKyM6IGRpZmYuYzo1NDc4Cittc2dpZCAiPGZvcm1hdD4iCittc2dzdHIgIjxmb3JtYXQ+IgorCisjOiBkaWZmLmM6NTQ3OQorbXNnaWQgInNwZWNpZnkgaG93IGRpZmZlcmVuY2VzIGluIHN1Ym1vZHVsZXMgYXJlIHNob3duIgorbXNnc3RyICJlc3BlY2lmaXF1ZXUgY29tIGVzIG1vc3RyZW4gZWxzIGNhbnZpcyBhbHMgc3VibcOyZHVscyIKKworIzogZGlmZi5jOjU0ODMKKyMsIGZ1enp5Cittc2dpZCAiaGlkZSAnZ2l0IGFkZCAtTicgZW50cmllcyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAidXNhIC5naXRhdHRyaWJ1dGVzIG5vbcOpcyBkZXMgZGUgbCfDrW5kZXgiCisKKyM6IGRpZmYuYzo1NDg2Cittc2dpZCAidHJlYXQgJ2dpdCBhZGQgLU4nIGVudHJpZXMgYXMgcmVhbCBpbiB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0ODgKK21zZ2lkICI8c3RyaW5nPiIKK21zZ3N0ciAiPGNhZGVuYT4iCisKKyM6IGRpZmYuYzo1NDg5Cittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisic3RyaW5nIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDkyCittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisicmVnZXgiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0OTUKK21zZ2lkICJzaG93IGFsbCBjaGFuZ2VzIGluIHRoZSBjaGFuZ2VzZXQgd2l0aCAtUyBvciAtRyIKK21zZ3N0ciAibW9zdHJhIHRvdHMgZWxzIGNhbnZpcyBhbWIgZWwgY29uanVudCBkZSBjYW52aXMgYW1iIC1TIG8gLUciCisKKyM6IGRpZmYuYzo1NDk4Cittc2dpZCAidHJlYXQgPHN0cmluZz4gaW4gLVMgYXMgZXh0ZW5kZWQgUE9TSVggcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICJ0cmFjdGEgPGNhZGVuYT4gYSAtUyBjb20gYSBleHByZXNzacOzIHJlZ3VsYXIgUE9TSVggYW1wbGlhZGEiCisKKyM6IGRpZmYuYzo1NTAxCittc2dpZCAiY29udHJvbCB0aGUgb3JkZXIgaW4gd2hpY2ggZmlsZXMgYXBwZWFyIGluIHRoZSBvdXRwdXQiCittc2dzdHIgImNvbnRyb2xhIGwnb3JkcmUgYW1iIGVsIHF1YWwgZWxzIGZpdHhlcnMgYXBhcmVpeGVuIGVuIGxhIHNvcnRpZGEiCisKKyM6IGRpZmYuYzo1NTAyCittc2dpZCAiPG9iamVjdC1pZD4iCittc2dzdHIgIjxpZCBkZSBsJ29iamVjdGU+IgorCisjOiBkaWZmLmM6NTUwMworbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorIm9iamVjdCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTUwNQorbXNnaWQgIlsoQXxDfER8TXxSfFR8VXxYfEIpLi4uWypdXSIKK21zZ3N0ciAiWyhBfEN8RHxNfFJ8VHxVfFh8QikuLi5bKl1dIgorCisjOiBkaWZmLmM6NTUwNgorbXNnaWQgInNlbGVjdCBmaWxlcyBieSBkaWZmIHR5cGUiCittc2dzdHIgInNlbGVjY2lvbmV1IGVscyBmaXR4ZXJzIHBlciB0aXB1cyBkZSBkaWZmIgorCisjOiBkaWZmLmM6NTUwOAorbXNnaWQgIjxmaWxlPiIKK21zZ3N0ciAiPGZpdHhlcj4iCisKKyM6IGRpZmYuYzo1NTA5Cittc2dpZCAiT3V0cHV0IHRvIGEgc3BlY2lmaWMgZmlsZSIKK21zZ3N0ciAiU29ydGlkYSBhIHVuIGZpdHhlciBlc3BlY8OtZmljIgorCisjOiBkaWZmLmM6NjE2NAogbXNnaWQgImluZXhhY3QgcmVuYW1lIGRldGVjdGlvbiB3YXMgc2tpcHBlZCBkdWUgdG8gdG9vIG1hbnkgZmlsZXMuIgotbXNnc3RyICJzJ2hhIG9tw6hzIGxhIGRldGVjY2nDsyBkZSBjYW52aSBkZSBub20gYSBjYXVzYSBkZSBtYXNzYSBmaXR4ZXJzLiIKK21zZ3N0ciAiIgorInMnaGEgb23DqHMgbGEgZGV0ZWNjacOzIGRlIGNhbnZpIGRlIG5vbSBpbmV4YWN0YSBhIGNhdXNhIGRlIG1hc3NhIGZpdHhlcnMuIgogCi0jOiBkaWZmLmM6NTgyNgorIzogZGlmZi5jOjYxNjcKIG1zZ2lkICJvbmx5IGZvdW5kIGNvcGllcyBmcm9tIG1vZGlmaWVkIHBhdGhzIGR1ZSB0byB0b28gbWFueSBmaWxlcy4iCiBtc2dzdHIgIiIKICJub23DqXMgcydoYW4gdHJvYmF0IGPDsnBpZXMgZGVzIGRlIGNhbWlucyBtb2RpZmljYXRzIGEgY2F1c2EgZGUgbWFzc2EgZml0eGVycy4iCiAKLSM6IGRpZmYuYzo1ODI5CisjOiBkaWZmLmM6NjE3MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAieW91IG1heSB3YW50IHRvIHNldCB5b3VyICVzIHZhcmlhYmxlIHRvIGF0IGxlYXN0ICVkIGFuZCByZXRyeSB0aGUgY29tbWFuZC4iCkBAIC0yMzIwLDQyICszNDM4LDYxIEBACiAicG90c2VyIHZvbGV1IGVzdGFibGlyIGxhIHZvc3RyYSB2YXJpYWJsZSAlcyBhIGFsbWVueXMgJWQgaSB0b3JuYXIgYSBpbnRlbnRhciAiCiAibCdvcmRyZS4iCiAKLSM6IGRpci5jOjU3NgorIzogZGlyLmM6NTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGhzcGVjICclcycgZGlkIG5vdCBtYXRjaCBhbnkgZmlsZShzKSBrbm93biB0byBnaXQiCiBtc2dzdHIgIiIKICJsJ2VzcGVjaWZpY2FjacOzIGRlIGNhbcOtIMKrJXPCuyBubyBoYSBjb2luY2lkaXQgYW1iIGNhcCBmaXR4ZXIgcXVlIGdpdCBjb25lZ3VpIgogCi0jOiBkaXIuYzo5NjUKKyM6IGRpci5jOjY2NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgcGF0dGVybjogJyVzJyIKK21zZ3N0ciAicGF0csOzIG5vIHJlY29uZWd1dDogwqslc8K7IgorCisjOiBkaXIuYzo2ODIgZGlyLmM6Njk2CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBuZWdhdGl2ZSBwYXR0ZXJuOiAnJXMnIgorbXNnc3RyICJwYXRyw7MgbmVnYXRpdSBubyByZWNvbmVndXQ6IMKrJXPCuyIKKworIzogZGlyLmM6NzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInlvdXIgc3BhcnNlLWNoZWNrb3V0IGZpbGUgbWF5IGhhdmUgaXNzdWVzOiBwYXR0ZXJuICclcycgaXMgcmVwZWF0ZWQiCittc2dzdHIgIiIKKworIzogZGlyLmM6NzI0Cittc2dpZCAiZGlzYWJsaW5nIGNvbmUgcGF0dGVybiBtYXRjaGluZyIKK21zZ3N0ciAiaW5oYWJpbGl0YSBsYSBjb2luY2lkw6huY2lhIGRlIHBhdHJvbnMgwqtjb25lwrsiCisKKyM6IGRpci5jOjExMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHVzZSAlcyBhcyBhbiBleGNsdWRlIGZpbGUiCi1tc2dzdHIgIm5vIGVzIHBvdCB1c2FyICAlcyBjb20gYSBmaXR4ZXIgZCdleGNsdXNpw7MiCittc2dzdHIgIm5vIGVzIHBvdCB1c2FyICVzIGNvbSBhIGZpdHhlciBkJ2V4Y2x1c2nDsyIKIAotIzogZGlyLmM6MTg4MAorIzogZGlyLmM6MjA3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciBlbCBkaXJlY3Rvcmkgwqslc8K7IgogCi0jOiBkaXIuYzoyMTIyCisjOiBkaXIuYzoyNDE1CiBtc2dpZCAiZmFpbGVkIHRvIGdldCBrZXJuZWwgbmFtZSBhbmQgaW5mb3JtYXRpb24iCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gb2J0ZW5pciBlbCBub21icmUgaSBsYSBpbmZvcm1hY2nDsyBkZWwgbnVjbGkiCiAKLSM6IGRpci5jOjIyNDYKKyM6IGRpci5jOjI1MzkKIG1zZ2lkICJ1bnRyYWNrZWQgY2FjaGUgaXMgZGlzYWJsZWQgb24gdGhpcyBzeXN0ZW0gb3IgbG9jYXRpb24iCiBtc2dzdHIgIiIKICJsYSBtZW3DsnJpYSBjYXUgbm8gc2VndWlkYSBlc3TDoCBpbmhhYmlsaXRhZGEgZW4gYXF1ZXN0IHNpc3RlbWEgbyB1YmljYWNpw7MiCiAKLSM6IGRpci5jOjMwNDcKKyM6IGRpci5jOjMzNDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IGluIHJlcG8gJXMiCiBtc2dzdHIgImVsIGZpdHhlciBkJ8OtbmRleCBhbCBkaXDDsnNpdCAlcyDDqXMgbWFsbcOocyIKIAotIzogZGlyLmM6MzA5MiBkaXIuYzozMDk3CisjOiBkaXIuYzozMzg4IGRpci5jOjMzOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcmllcyBmb3IgJXMiCiBtc2dzdHIgIm5vIHMnaGFuIHBvZ3V0IGNyZWFyIGRpcmVjdG9yaXMgcGVyICVzIgogCi0jOiBkaXIuYzozMTI2CisjOiBkaXIuYzozNDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBtaWdyYXRlIGdpdCBkaXJlY3RvcnkgZnJvbSAnJXMnIHRvICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbWlncmFyIGVsIGRpcmVjdG9yaSBkZSDCqyVzwrsgYSDCqyVzwrsiCkBAIC0yMzY5LDI5OCArMzUwNiwyODggQEAKIG1zZ2lkICJGaWx0ZXJpbmcgY29udGVudCIKIG1zZ3N0ciAiUydlc3TDoCBmaWx0cmFudCBlbCBjb250aW5ndXQiCiAKLSM6IGVudHJ5LmM6NDY1CisjOiBlbnRyeS5jOjQ3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc3RhdCBmaWxlICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZmVyIMKrc3RhdMK7IHNvYnJlIGVsIGZpdHhlciDCqyVzwrsiCiAKLSM6IGVudmlyb25tZW50LmM6MTUwCisjOiBlbnZpcm9ubWVudC5jOjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgZ2l0IG5hbWVzcGFjZSBwYXRoIFwiJXNcIiIKIG1zZ3N0ciAiIgogCi0jOiBlbnZpcm9ubWVudC5jOjMzMgorIzogZW52aXJvbm1lbnQuYzozMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHNldCBHSVRfRElSIHRvICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXN0YWJsaXIgR0lUX0RJUiBhIMKrJXPCuyIKIAotIzogZXhlYy1jbWQuYzozNjEKKyM6IGV4ZWMtY21kLmM6MzYzCiAjLCBjLWZvcm1hdAogbXNnaWQgInRvbyBtYW55IGFyZ3MgdG8gcnVuICVzIgogbXNnc3RyICJoaSBoYSBtYXNzYSBhcmd1bWVudHMgcGVyIGEgZXhlY3V0YXIgJXMiCiAKLSM6IGZldGNoLW9iamVjdC5jOjE3Ci1tc2dpZCAiUmVtb3RlIHdpdGggbm8gVVJMIgotbXNnc3RyICJSZW1vdCBzZW5zZSBVUkwiCi0KLSM6IGZldGNoLXBhY2suYzoxNTEKKyM6IGZldGNoLXBhY2suYzoxNTAKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgc2hhbGxvdyBsaXN0IgogbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogbGxpc3RhIHN1cGVyZmljaWFsIGVzcGVyYWRhIgogCi0jOiBmZXRjaC1wYWNrLmM6MTYzCisjOiBmZXRjaC1wYWNrLmM6MTUzCisjLCBmdXp6eQorbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBhIGZsdXNoIHBhY2tldCBhZnRlciBzaGFsbG93IGxpc3QiCittc2dzdHIgImdpdCBmZXRjaC1wYWNrOiBsbGlzdGEgc3VwZXJmaWNpYWwgZXNwZXJhZGEiCisKKyM6IGZldGNoLXBhY2suYzoxNjQKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290IGEgZmx1c2ggcGFja2V0IgogbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogcydlc3BlcmF2YSBBQ0svTkFLLCBzJ2hhIHJlYnV0IHVuIHBhcXVldCBkZSBuZXRlamEiCiAKLSM6IGZldGNoLXBhY2suYzoxODMKKyM6IGZldGNoLXBhY2suYzoxODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCAnJXMnIgogbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogcydlc3BlcmF2YSBBQ0svTkFLLCBzJ2hhIHJlYnV0IMKrJXPCuyIKIAotIzogZmV0Y2gtcGFjay5jOjI1MworIzogZmV0Y2gtcGFjay5jOjE5NQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byByZW1vdGUiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgYWwgcmVtb3QiCisKKyM6IGZldGNoLXBhY2suYzoyNTcKIG1zZ2lkICItLXN0YXRlbGVzcy1ycGMgcmVxdWlyZXMgbXVsdGlfYWNrX2RldGFpbGVkIgogbXNnc3RyICItLXN0YXRlbGVzcy1ycGMgcmVxdWVyZWl4IG11bHRpX2Fja19kZXRhaWxlZCIKIAotIzogZmV0Y2gtcGFjay5jOjM0NyBmZXRjaC1wYWNrLmM6MTI3NworIzogZmV0Y2gtcGFjay5jOjM1NiBmZXRjaC1wYWNrLmM6MTM0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHNoYWxsb3cgbGluZTogJXMiCiBtc2dzdHIgImzDrW5pYSBkZSBzaGFsbG93IG5vIHbDoGxpZGE6ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzUzIGZldGNoLXBhY2suYzoxMjgzCisjOiBmZXRjaC1wYWNrLmM6MzYyIGZldGNoLXBhY2suYzoxMzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgdW5zaGFsbG93IGxpbmU6ICVzIgogbXNnc3RyICJsw61uaWEgZCd1bnNoYWxsb3cgbm8gdsOgbGlkYTogJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNTUgZmV0Y2gtcGFjay5jOjEyODUKKyM6IGZldGNoLXBhY2suYzozNjQgZmV0Y2gtcGFjay5jOjEzNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IG5vdCBmb3VuZDogJXMiCiBtc2dzdHIgIm9iamVjdGUgbm8gdHJvYmF0OiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM1OCBmZXRjaC1wYWNrLmM6MTI4OAorIzogZmV0Y2gtcGFjay5jOjM2NyBmZXRjaC1wYWNrLmM6MTM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBpbiBvYmplY3Q6ICVzIgogbXNnc3RyICJlcnJvciBlbiBvYmplY3RlOiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM2MCBmZXRjaC1wYWNrLmM6MTI5MAorIzogZmV0Y2gtcGFjay5jOjM2OSBmZXRjaC1wYWNrLmM6MTM1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzaGFsbG93IGZvdW5kOiAlcyIKIG1zZ3N0ciAibm8gcydoYSB0cm9iYXQgY2FwIHNoYWxsb3c6ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzYzIGZldGNoLXBhY2suYzoxMjkzCisjOiBmZXRjaC1wYWNrLmM6MzcyIGZldGNoLXBhY2suYzoxMzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIHNoYWxsb3cvdW5zaGFsbG93LCBnb3QgJXMiCiBtc2dzdHIgInMnZXNwZXJhdmEgc2hhbGxvdy91bnNoYWxsb3csIHMnaGEgcmVidXQgJXMiCiAKLSM6IGZldGNoLXBhY2suYzo0MDQKKyM6IGZldGNoLXBhY2suYzo0MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ290ICVzICVkICVzIgogbXNnc3RyICJzJ2hhIHJlYnV0ICVzICVkICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6NDIxCisjOiBmZXRjaC1wYWNrLmM6NDMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29tbWl0ICVzIgogbXNnc3RyICJjb21pc3Npw7Mgbm8gdsOgbGlkYSAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjQ1MgorIzogZmV0Y2gtcGFjay5jOjQ2MgogbXNnaWQgImdpdmluZyB1cCIKLW1zZ3N0ciAicydlc3TDoCByZW5kaW50IgorbXNnc3RyICJzJ2FiYW5kb25hIgogCi0jOiBmZXRjaC1wYWNrLmM6NDY0IHByb2dyZXNzLmM6MjI5CisjOiBmZXRjaC1wYWNrLmM6NDc1IHByb2dyZXNzLmM6MzIzCiBtc2dpZCAiZG9uZSIKIG1zZ3N0ciAiZmV0IgogCi0jOiBmZXRjaC1wYWNrLmM6NDc2CisjOiBmZXRjaC1wYWNrLmM6NDg3CiAjLCBjLWZvcm1hdAogbXNnaWQgImdvdCAlcyAoJWQpICVzIgogbXNnc3RyICJzJ2hhIHJlYnV0ICVzICglZCkgJXMiCiAKLSM6IGZldGNoLXBhY2suYzo1MjIKKyM6IGZldGNoLXBhY2suYzo1MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWFya2luZyAlcyBhcyBjb21wbGV0ZSIKIG1zZ3N0ciAiUydlc3TDoCBtYXJjYW50ICVzIGNvbSBhIGNvbXBsZXQiCiAKLSM6IGZldGNoLXBhY2suYzo3NjQKKyM6IGZldGNoLXBhY2suYzo3NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWxyZWFkeSBoYXZlICVzICglcykiCiBtc2dzdHIgImphIGVzIHTDqSAlcyAoJXMpIgogCi0jOiBmZXRjaC1wYWNrLmM6ODAzCisjOiBmZXRjaC1wYWNrLmM6ODE4CiBtc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiBtc2dzdHIgImZldGNoLXBhY2s6IG5vIHMnaGEgcG9ndXQgYmlmdXJjYXIgZGVsIGRlc211bHRpcGxleG9yIGRlIGJhbmRhIGxhdGVyYWwiCiAKLSM6IGZldGNoLXBhY2suYzo4MTEKKyM6IGZldGNoLXBhY2suYzo4MjYKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIHBhY2sgaGVhZGVyIgogbXNnc3RyICJlcnJvciBkZSBwcm90b2NvbDogY2Fww6dhbGVyYSBkZSBwYXF1ZXQgZXJyw7JuaWEiCiAKLSM6IGZldGNoLXBhY2suYzo4NzkKKyM6IGZldGNoLXBhY2suYzo5MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmICVzIgogbXNnc3RyICJmZXRjaC1wYWNrOiBubyBlcyBwb3QgYmlmdXJjYXIgZGUgJXMiCiAKLSM6IGZldGNoLXBhY2suYzo4OTUKKyM6IGZldGNoLXBhY2suYzo5MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZmFpbGVkIgogbXNnc3RyICIlcyBoYSBmYWxsYXQiCiAKLSM6IGZldGNoLXBhY2suYzo4OTcKKyM6IGZldGNoLXBhY2suYzo5MTgKIG1zZ2lkICJlcnJvciBpbiBzaWRlYmFuZCBkZW11bHRpcGxleGVyIgogbXNnc3RyICJlcnJvciBlbiBkZXNtdWx0aXBsZXhvciBkZSBiYW5kYSBsYXRlcmFsIgogCi0jOiBmZXRjaC1wYWNrLmM6OTI2Ci1tc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjbGllbnRzIgotbXNnc3RyICJFbCBzZXJ2aWRvciBubyBwZXJtZXQgY2xpZW50cyBzdXBlcmZpY2lhbHMiCi0KLSM6IGZldGNoLXBhY2suYzo5MzAKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgbXVsdGlfYWNrX2RldGFpbGVkIgotbXNnc3RyICJFbCBzZXJ2aWRvciBhY2NlcHRhIG11bHRpX2Fja19kZXRhaWxlZCIKLQotIzogZmV0Y2gtcGFjay5jOjkzMwotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBuby1kb25lIgotbXNnc3RyICJFbCBzZXJ2aWRvciBhY2NlcHRhIG5vLWRvbmUiCi0KLSM6IGZldGNoLXBhY2suYzo5MzkKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgbXVsdGlfYWNrIgotbXNnc3RyICJFbCBzZXJ2aWRvciBhY2NlcHRhIG11bHRpX2FjayIKLQotIzogZmV0Y2gtcGFjay5jOjk0MwotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQtNjRrIgotbXNnc3RyICJFbCBzZXJ2aWRvciBhY2NlcHRhIHNpZGUtYmFuZC02NGsiCi0KLSM6IGZldGNoLXBhY2suYzo5NDcKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgc2lkZS1iYW5kIgotbXNnc3RyICJFbCBzZXJ2aWRvciBhY2NlcHRhIGJhbmRhIGxhdGVyYWwiCi0KLSM6IGZldGNoLXBhY2suYzo5NTEKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgYWxsb3ctdGlwLXNoYTEtaW4td2FudCIKLW1zZ3N0ciAiRWwgc2Vydmlkb3IgYWNjZXB0YSBhbGxvdy10aXAtc2hhMS1pbi13YW50IgotCi0jOiBmZXRjaC1wYWNrLmM6OTU1Ci1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIGFsbG93LXJlYWNoYWJsZS1zaGExLWluLXdhbnQiCi1tc2dzdHIgIkVsIHNlcnZpZG9yIGFjY2VwdGEgYWxsb3ctcmVhY2hhYmxlLXNoYTEtaW4td2FudCIKLQogIzogZmV0Y2gtcGFjay5jOjk2NQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBvZnMtZGVsdGEiCi1tc2dzdHIgIkVsIHNlcnZpZG9yIGFjY2VwdGEgb2ZzLWRlbHRhIgotCi0jOiBmZXRjaC1wYWNrLmM6OTcxIGZldGNoLXBhY2suYzoxMTU4Ci1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIGZpbHRlciIKLW1zZ3N0ciAiRWwgc2Vydmlkb3IgYWNjZXB0YSBmaWx0cmUiCi0KLSM6IGZldGNoLXBhY2suYzo5NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2VydmVyIHZlcnNpb24gaXMgJS4qcyIKIG1zZ3N0ciAiTGEgdmVyc2nDsyBkZWwgc2Vydmlkb3Igw6lzICUuKnMiCiAKLSM6IGZldGNoLXBhY2suYzo5ODUKKyM6IGZldGNoLXBhY2suYzo5NzAgZmV0Y2gtcGFjay5jOjk3NiBmZXRjaC1wYWNrLmM6OTc5IGZldGNoLXBhY2suYzo5ODUKKyM6IGZldGNoLXBhY2suYzo5ODkgZmV0Y2gtcGFjay5jOjk5MyBmZXRjaC1wYWNrLmM6OTk3IGZldGNoLXBhY2suYzoxMDAxCisjOiBmZXRjaC1wYWNrLmM6MTAwNSBmZXRjaC1wYWNrLmM6MTAwOSBmZXRjaC1wYWNrLmM6MTAxMyBmZXRjaC1wYWNrLmM6MTAxNworIzogZmV0Y2gtcGFjay5jOjEwMjMgZmV0Y2gtcGFjay5jOjEwMjkgZmV0Y2gtcGFjay5jOjEwMzQgZmV0Y2gtcGFjay5jOjEwMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2VydmVyIHN1cHBvcnRzICVzIgorbXNnc3RyICJFbCBzZXJ2aWRvciBhY2NlcHRhICVzIgorCisjOiBmZXRjaC1wYWNrLmM6OTcyCittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjbGllbnRzIgorbXNnc3RyICJFbCBzZXJ2aWRvciBubyBwZXJtZXQgY2xpZW50cyBzdXBlcmZpY2lhbHMiCisKKyM6IGZldGNoLXBhY2suYzoxMDMyCiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1zaGFsbG93LXNpbmNlIgogbXNnc3RyICJFbCBzZXJ2aWRvciBubyBhZG1ldCAtLXNoYWxsb3ctc2luY2UiCiAKLSM6IGZldGNoLXBhY2suYzo5ODkKKyM6IGZldGNoLXBhY2suYzoxMDM3CiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1zaGFsbG93LWV4Y2x1ZGUiCiBtc2dzdHIgIkVsIHNlcnZpZG9yIG5vIGFkbWV0IC0tc2hhbGxvdy1leGNsdWRlIgogCi0jOiBmZXRjaC1wYWNrLmM6OTkxCisjOiBmZXRjaC1wYWNrLmM6MTA0MQogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tZGVlcGVuIgogbXNnc3RyICJFbCBzZXJ2aWRvciBubyBhZG1ldCAtLWRlZXBlbiIKIAotIzogZmV0Y2gtcGFjay5jOjEwMDgKKyM6IGZldGNoLXBhY2suYzoxMDU4CiBtc2dpZCAibm8gY29tbW9uIGNvbW1pdHMiCiBtc2dzdHIgImNhcCBjb21pc3Npw7MgZW4gY29tw7oiCiAKLSM6IGZldGNoLXBhY2suYzoxMDIwIGZldGNoLXBhY2suYzoxNDE4CisjOiBmZXRjaC1wYWNrLmM6MTA3MCBmZXRjaC1wYWNrLmM6MTUzNgogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBmZXRjaCBmYWlsZWQuIgogbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogbCdvYnRlbmNpw7MgaGEgZmFsbGF0LiIKIAotIzogZmV0Y2gtcGFjay5jOjExNTMKLSMsIGZ1enp5CisjOiBmZXRjaC1wYWNrLmM6MTIwOQogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgcmVxdWVzdHMiCi1tc2dzdHIgIkVsIHNlcnZpZG9yIG5vIHBlcm1ldCBjbGllbnRzIHN1cGVyZmljaWFscyIKK21zZ3N0ciAiRWwgc2Vydmlkb3Igbm8gcGVybWV0IHBldGljaW9ucyBzdXBlcmZpY2lhbHMiCiAKLSM6IGZldGNoLXBhY2suYzoxMTk5CisjOiBmZXRjaC1wYWNrLmM6MTIxNgorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBmaWx0ZXIiCittc2dzdHIgIkVsIHNlcnZpZG9yIGFjY2VwdGEgZmlsdHJhdGdlIgorCisjOiBmZXRjaC1wYWNrLmM6MTIzOQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSByZXF1ZXN0IHRvIHJlbW90ZSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBsYSBwZXRpY2nDsyBhbCByZW1vdCIKKworIzogZmV0Y2gtcGFjay5jOjEyNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcmVhZGluZyBzZWN0aW9uIGhlYWRlciAnJXMnIgogbXNnc3RyICJlcnJvciBlbiBsbGVnaXIgbGEgY2Fww6dhbGVyYSBkZSBsYSBzZWNjacOzIMKrJXPCuyIKIAotIzogZmV0Y2gtcGFjay5jOjEyMDUKKyM6IGZldGNoLXBhY2suYzoxMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkICclcycsIHJlY2VpdmVkICclcyciCiBtc2dzdHIgInMnZXNwZXJhdmEgwqslc8K7LCBzJ2hhIHJlYnV0IMKrJXPCuyIKIAotIzogZmV0Y2gtcGFjay5jOjEyNDQKKyM6IGZldGNoLXBhY2suYzoxMzAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgYWNrbm93bGVkZ21lbnQgbGluZTogJyVzJyIKLW1zZ3N0ciAiIgorbXNnc3RyICJsw61uaWEgZGUgY29uZmlybWFjacOzIGluZXNwZXJhZGE6IMKrJXPCuyIKIAotIzogZmV0Y2gtcGFjay5jOjEyNDkKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogZmV0Y2gtcGFjay5jOjEzMDgKKyMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBhY2tzOiAlZCIKLW1zZ3N0ciAiZXJyb3IgZW4gbGxlZ2lyICVzIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHByb2Nlc3NhciBlbHMgYWNrczogJWQiCiAKLSM6IGZldGNoLXBhY2suYzoxMjU5CisjOiBmZXRjaC1wYWNrLmM6MTMxOAogbXNnaWQgImV4cGVjdGVkIHBhY2tmaWxlIHRvIGJlIHNlbnQgYWZ0ZXIgJ3JlYWR5JyIKLW1zZ3N0ciAiIgorbXNnc3RyICJzJ2VzcGVyYSBsJ2VudmlhbWVudCBkZWwgZml0eGVyIGRlIHBhcXVldCBkZXNwcsOpcyBkZSDCq3JlYWR5wrsiCiAKLSM6IGZldGNoLXBhY2suYzoxMjYxCisjOiBmZXRjaC1wYWNrLmM6MTMyMAogbXNnaWQgImV4cGVjdGVkIG5vIG90aGVyIHNlY3Rpb25zIHRvIGJlIHNlbnQgYWZ0ZXIgbm8gJ3JlYWR5JyIKLW1zZ3N0ciAiIgorbXNnc3RyICJzJ2VzcGVyYSBxdWUgY2FwIGFsdHJhIHNlY2Npb25zIHMnZW52acOvIGRlc3Byw6lzIGRlIG5vIMKrcmVhZHnCuyIKIAotIzogZmV0Y2gtcGFjay5jOjEyOTgKKyM6IGZldGNoLXBhY2suYzoxMzYyCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHByb2Nlc3Npbmcgc2hhbGxvdyBpbmZvOiAlZCIKLW1zZ3N0ciAiIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHByb2Nlc3NhciBsYSBpbmZvcm1hY2nDsyBzdXBlcmZpY2lhbDogJWQiCiAKLSM6IGZldGNoLXBhY2suYzoxMzE0Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGZldGNoLXBhY2suYzoxNDA5CisjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIHdhbnRlZC1yZWYsIGdvdCAnJXMnIgotbXNnc3RyICJzJ2VzcGVyYXZhIHNoYWxsb3cvdW5zaGFsbG93LCBzJ2hhIHJlYnV0ICVzIgorbXNnc3RyICJzJ2VzcGVyYXZhIHdhbnRlZC1yZWYsIHMnaGEgcmVidXQgwqslc8K7IgogCi0jOiBmZXRjaC1wYWNrLmM6MTMyNAotIywgZnV6enksIGMtZm9ybWF0CisjOiBmZXRjaC1wYWNrLmM6MTQxNAorIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIHdhbnRlZC1yZWY6ICclcyciCi1tc2dzdHIgImZpbmFsIGRlIGZpdHhlciBpbmVzcGVyYXQiCittc2dzdHIgIndhbnRlZC1yZWYgaW5lc3BlcmF0OiDCqyVzwrsiCiAKLSM6IGZldGNoLXBhY2suYzoxMzI4CisjOiBmZXRjaC1wYWNrLmM6MTQxOQogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIHdhbnRlZCByZWZzOiAlZCIKLW1zZ3N0ciAiIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHByb2Nlc3NhciBsZXMgcmVmZXLDqG5jaWVzIGRlc2l0amFkZXM6ICVkIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY0MgorIzogZmV0Y2gtcGFjay5jOjE3NjIKIG1zZ2lkICJubyBtYXRjaGluZyByZW1vdGUgaGVhZCIKIG1zZ3N0ciAibm8gaGkgaGEgY2FwIEhFQUQgcmVtb3QgY29pbmNpZGVudCIKIAotIzogZmV0Y2gtcGFjay5jOjE2NjAgYnVpbHRpbi9jbG9uZS5jOjY2NAorIzogZmV0Y2gtcGFjay5jOjE3ODUgYnVpbHRpbi9jbG9uZS5jOjY4OAogbXNnaWQgInJlbW90ZSBkaWQgbm90IHNlbmQgYWxsIG5lY2Vzc2FyeSBvYmplY3RzIgogbXNnc3RyICJlbCByZW1vdCBubyBoYSBlbnZpYXQgdG90cyBlbHMgb2JqZWN0ZXMgbmVjZXNzYXJpcyIKIAotIzogZmV0Y2gtcGFjay5jOjE2ODYKKyM6IGZldGNoLXBhY2suYzoxODEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggcmVtb3RlIHJlZiAlcyIKIG1zZ3N0ciAibm8gZXhpc3RlaXggbGEgcmVmZXLDqG5jaWEgcmVtb3RhICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY4OQorIzogZmV0Y2gtcGFjay5jOjE4MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IGFsbG93IHJlcXVlc3QgZm9yIHVuYWR2ZXJ0aXNlZCBvYmplY3QgJXMiCiBtc2dzdHIgIkVsIHNlcnZpZG9yIG5vIHBlcm1ldCBzb2zCt2xpY2l0YXIgb2JqZWN0ZXMgbm8gYW51bmNpYXRzICVzIgogCi0jOiBncGctaW50ZXJmYWNlLmM6MzE4Ci1tc2dpZCAiZ3BnIGZhaWxlZCB0byBzaWduIHRoZSBkYXRhIgotbXNnc3RyICJncGcgaGEgZmFsbGF0IGVuIHNpZ25hciBsZXMgZGFkZXMiCi0KLSM6IGdwZy1pbnRlcmZhY2UuYzozNDQKKyM6IGdwZy1pbnRlcmZhY2UuYzoyMjMKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSBmaWxlIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGVsIGZpdHhlciB0ZW1wb3JhbCIKIAotIzogZ3BnLWludGVyZmFjZS5jOjM0NworIzogZ3BnLWludGVyZmFjZS5jOjIyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgd3JpdGluZyBkZXRhY2hlZCBzaWduYXR1cmUgdG8gJyVzJyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBlc2NyaXVyZSBsYSBzaWduYXR1cmEgc2VwYXJhZGEgYSDCqyVzwrsiCiAKLSM6IGdyYXBoLmM6OTcKKyM6IGdwZy1pbnRlcmZhY2UuYzozOTAKK21zZ2lkICJncGcgZmFpbGVkIHRvIHNpZ24gdGhlIGRhdGEiCittc2dzdHIgImdwZyBoYSBmYWxsYXQgZW4gc2lnbmFyIGxlcyBkYWRlcyIKKworIzogZ3JhcGguYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmUgaW52YWxpZCBjb2xvciAnJS4qcycgaW4gbG9nLmdyYXBoQ29sb3JzIgogbXNnc3RyICJpZ25vcmEgZWwgY29sb3Igbm8gdsOgbGlkIMKrJS4qc8K7IGVuIGxvZy5ncmFwaENvbG9ycyIKIAotIzogZ3JlcC5jOjIxMTMKKyM6IGdyZXAuYzo2NjgKK21zZ2lkICIiCisiZ2l2ZW4gcGF0dGVybiBjb250YWlucyBOVUxMIGJ5dGUgKHZpYSAtZiA8ZmlsZT4pLiBUaGlzIGlzIG9ubHkgc3VwcG9ydGVkICIKKyJ3aXRoIC1QIHVuZGVyIFBDUkUgdjIiCittc2dzdHIgIiIKKworIzogZ3JlcC5jOjIxMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogdW5hYmxlIHRvIHJlYWQgJXMiCiBtc2dzdHIgIsKrJXPCuzogbm8gcydoYSBwb2d1dCBsbGVnaXIgJXMiCiAKLSM6IGdyZXAuYzoyMTMwIHNldHVwLmM6MTY0IGJ1aWx0aW4vY2xvbmUuYzo0MTAgYnVpbHRpbi9kaWZmLmM6ODEKLSM6IGJ1aWx0aW4vcm0uYzoxMzQKKyM6IGdyZXAuYzoyMTQxIHNldHVwLmM6MTY1IGJ1aWx0aW4vY2xvbmUuYzo0MTEgYnVpbHRpbi9kaWZmLmM6ODIKKyM6IGJ1aWx0aW4vcm0uYzoxMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0YXQgJyVzJyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBmZXIgc3RhdCBhIMKrJXPCuyIKIAotIzogZ3JlcC5jOjIxNDEKKyM6IGdyZXAuYzoyMTUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IHNob3J0IHJlYWQiCiBtc2dzdHIgIsKrJXPCuzogbGVjdHVyYSBjdXJ0YSIKQEAgLTI3MDMsOTMgKzM4MzAsOTEgQEAKIAogIzogaGVscC5jOjM1CiBtc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gTWFuaXB1bGF0b3JzIgotbXNnc3RyICIiCittc2dzdHIgIk9yZHJlcyBkZSBiYWl4IG5pdmVsbCAvIE1hbmlwdWxhZG9ycyIKIAogIzogaGVscC5jOjM2CiBtc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gSW50ZXJyb2dhdG9ycyIKLW1zZ3N0ciAiIgorbXNnc3RyICJPcmRyZXMgZGUgYmFpeCBuaXZlbGwgLyBJbnRlcnJvZ2Fkb3JzIgogCiAjOiBoZWxwLmM6MzcKLW1zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBTeW5jaGluZyBSZXBvc2l0b3JpZXMiCi1tc2dzdHIgIiIKK21zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBTeW5jaW5nIFJlcG9zaXRvcmllcyIKK21zZ3N0ciAiT3JkcmVzIGRlIGJhaXggbml2ZWxsIC8gU2luY3Jvbml0emFjacOzIGRlIGRpcMOyc2l0cyIKIAogIzogaGVscC5jOjM4CiBtc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gSW50ZXJuYWwgSGVscGVycyIKLW1zZ3N0ciAiIgorbXNnc3RyICJPcmRyZXMgZGUgYmFpeCBuaXZlbGwgLyBBanVkYW50cyBpbnRlcm5zIgogCi0jOiBoZWxwLmM6Mjk2CisjOiBoZWxwLmM6Mjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImF2YWlsYWJsZSBnaXQgY29tbWFuZHMgaW4gJyVzJyIKIG1zZ3N0ciAib3JkcmVzIGRlIGdpdCBkaXNwb25pYmxlcyBlbiDCqyVzwrsiCiAKLSM6IGhlbHAuYzozMDMKKyM6IGhlbHAuYzozMDUKIG1zZ2lkICJnaXQgY29tbWFuZHMgYXZhaWxhYmxlIGZyb20gZWxzZXdoZXJlIG9uIHlvdXIgJFBBVEgiCiBtc2dzdHIgIm9yZHJlcyBkZSBnaXQgZGlzcG9uaWJsZXMgZCdhbHRyZXMgbGxvY3MgZW4gZWwgdm9zdHJlICRQQVRIIgogCi0jOiBoZWxwLmM6MzEyCisjOiBoZWxwLmM6MzE0CiBtc2dpZCAiVGhlc2UgYXJlIGNvbW1vbiBHaXQgY29tbWFuZHMgdXNlZCBpbiB2YXJpb3VzIHNpdHVhdGlvbnM6IgogbXNnc3RyICIiCiAiQXF1ZXN0ZXMgc8OzbiBvcmRyZXMgZGVsIEdpdCBoYWJpdHVhbG1lbnQgdXNhZGVzIGVuIGRpdmVyc2VzIHNpdHVhY2lvbnM6IgogCi0jOiBoZWxwLmM6MzYxIGdpdC5jOjkwCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGhlbHAuYzozNjMgZ2l0LmM6OTgKKyMsIGMtZm9ybWF0CiBtc2dpZCAidW5zdXBwb3J0ZWQgY29tbWFuZCBsaXN0aW5nIHR5cGUgJyVzJyIKLW1zZ3N0ciAidmVyc2nDsyBkJ8OtbmRleCBubyBjb21wYXRpYmxlICVzIgorbXNnc3RyICJ0aXB1cyBkZSBsbGlzdGF0IGRlIGwnb3JkcmUgbm8gY29tcGF0aWJsZSDCqyVzwrsiCiAKLSM6IGhlbHAuYzo0MDgKLSMsIGZ1enp5CisjOiBoZWxwLmM6NDAzCiBtc2dpZCAiVGhlIGNvbW1vbiBHaXQgZ3VpZGVzIGFyZToiCi1tc2dzdHIgIkxlcyBndWllcyBkZSBHaXQgY29tdW5lcyBzw7NuOlxuIgorbXNnc3RyICJMZXMgZ3VpZXMgZGUgR2l0IGNvbXVuZXMgc8OzbjoiCisKKyM6IGhlbHAuYzo1MTIKK21zZ2lkICJTZWUgJ2dpdCBoZWxwIDxjb21tYW5kPicgdG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQiCittc2dzdHIgIlZlZ2V1IMKrZ2l0IGhlbHAgPG9yZHJlPsK7IHBlciBsbGVnaXIgc29icmUgdW4gc3Vib3JkcmUgZXNwZWPDrWZpYyIKIAogIzogaGVscC5jOjUxNwotbXNnaWQgIlNlZSAnZ2l0IGhlbHAgPGNvbW1hbmQ+JyB0byByZWFkIGFib3V0IGEgc3BlY2lmaWMgc3ViY29tbWFuZCIKLW1zZ3N0ciAiIgotCi0jOiBoZWxwLmM6NTIyCi0jLCBmdXp6eQogbXNnaWQgIkV4dGVybmFsIGNvbW1hbmRzIgotbXNnc3RyICJzJ2VzdMOgIGV4ZWN1dGFudCAkY29tbWFuZCIKK21zZ3N0ciAiT3JkcmVzIGV4dGVybmVzIgogCi0jOiBoZWxwLmM6NTMwCisjOiBoZWxwLmM6NTMyCiBtc2dpZCAiQ29tbWFuZCBhbGlhc2VzIgotbXNnc3RyICIiCittc2dzdHIgIsOAbGllcyBkJ29yZHJlcyIKIAotIzogaGVscC5jOjU5NAorIzogaGVscC5jOjU5NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBhcHBlYXJzIHRvIGJlIGEgZ2l0IGNvbW1hbmQsIGJ1dCB3ZSB3ZXJlIG5vdFxuIgogImFibGUgdG8gZXhlY3V0ZSBpdC4gTWF5YmUgZ2l0LSVzIGlzIGJyb2tlbj8iCiBtc2dzdHIgIiIKLSLCqyVzwrsgc2VtYmxhIHVuYSBvcmRyZSBkZSBnaXQsIHBlcsOyIG5vIGhlbSBwb2d1dFxuIgorIsKrJXPCuyBzZW1ibGEgdW4gb3JkcmUgZGUgZ2l0LCBwZXLDsiBubyBoZW0gcG9ndXRcbiIKICJleGVjdXRhci1sYS4gUG90IHNlciBxdWUgZ2l0LSVzIGVzdGlndWkgbWFsbcOocz8iCiAKLSM6IGhlbHAuYzo2NTMKKyM6IGhlbHAuYzo2NTUKIG1zZ2lkICJVaCBvaC4gWW91ciBzeXN0ZW0gcmVwb3J0cyBubyBHaXQgY29tbWFuZHMgYXQgYWxsLiIKIG1zZ3N0ciAiQWkuIEVsIHZvc3RyZSBzaXN0ZW1hIG5vIGluZm9ybWEgZGUgY2FwIG9yZHJlIGRlIEdpdC4iCiAKLSM6IGhlbHAuYzo2NzUKKyM6IGhlbHAuYzo2NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiV0FSTklORzogWW91IGNhbGxlZCBhIEdpdCBjb21tYW5kIG5hbWVkICclcycsIHdoaWNoIGRvZXMgbm90IGV4aXN0LiIKIG1zZ3N0ciAiIgotIkFEVkVSVMOITkNJQTogSGV1IGludm9jYXQgdW5hIG9yZHJlIGRlIEdpdCBhbWIgbm9tIMKrJXPCuywgbGEgcXVhbCBubyBleGlzdGVpeC4iCisiQURWRVJUw4hOQ0lBOiBIZXUgaW52b2NhdCB1biBvcmRyZSBkZSBHaXQgYW1iIG5vbSDCqyVzwrssIGxhIHF1YWwgbm8gZXhpc3RlaXguIgogCi0jOiBoZWxwLmM6NjgwCisjOiBoZWxwLmM6NjgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbnRpbnVpbmcgdW5kZXIgdGhlIGFzc3VtcHRpb24gdGhhdCB5b3UgbWVhbnQgJyVzJy4iCiBtc2dzdHIgIkVsIHByb2PDqXMgY29udGludWFyw6AsIHByZXNzdXBvc2FudCBxdWUgdm9sw61ldSBkaXIgwqslc8K7LiIKIAotIzogaGVscC5jOjY4NQorIzogaGVscC5jOjY4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb250aW51aW5nIGluICUwLjFmIHNlY29uZHMsIGFzc3VtaW5nIHRoYXQgeW91IG1lYW50ICclcycuIgogbXNnc3RyICIiCiAiRWwgcHJvY8OpcyBjb250aW51YXLDoCBlbiAlMC4xZiBzZWdvbnMsIHByZXNzdXBvc2FudCBxdWUgdm9sw61ldSBkaXIgwqslc8K7LiIKIAotIzogaGVscC5jOjY5MworIzogaGVscC5jOjY5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQ6ICclcycgaXMgbm90IGEgZ2l0IGNvbW1hbmQuIFNlZSAnZ2l0IC0taGVscCcuIgotbXNnc3RyICJnaXQ6IMKrJXPCuyBubyDDqXMgdW5hIG9yZHJlIGRlIGdpdC4gVmVnZXUgJ2dpdCAtLWhlbHAnLiIKK21zZ3N0ciAiZ2l0OiDCqyVzwrsgbm8gw6lzIHVuIG9yZHJlIGRlIGdpdC4gVmVnZXUgwqtnaXQgLS1oZWxwwrsuIgogCi0jOiBoZWxwLmM6Njk3CisjOiBoZWxwLmM6Njk5CiBtc2dpZCAiIgogIlxuIgogIlRoZSBtb3N0IHNpbWlsYXIgY29tbWFuZCBpcyIKQEAgLTI4MDEsMTggKzM5MjYsMTggQEAKICJMJ29yZHJlIG3DqXMgc2ltaWxhciDDqXMiCiBtc2dzdHJbMV0gIiIKICJcbiIKLSJMZXMgb3JkcmVzIG3DqXMgc2ltaWxhciBzw7NuIgorIkxlcyBvcmRyZXMgbcOpcyBzaW1pbGFycyBzw7NuIgogCi0jOiBoZWxwLmM6NzEyCisjOiBoZWxwLmM6NzE0CiBtc2dpZCAiZ2l0IHZlcnNpb24gWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCB2ZXJzaW9uIFs8b3BjaW9ucz5dIgogCi0jOiBoZWxwLmM6NzgwCisjOiBoZWxwLmM6NzgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAlcyAtICVzIgogbXNnc3RyICIlczogJXMgLSAlcyIKIAotIzogaGVscC5jOjc4NAorIzogaGVscC5jOjc4NwogbXNnaWQgIiIKICJcbiIKICJEaWQgeW91IG1lYW4gdGhpcz8iCkBAIC0yODI2LDcgKzM5NTEsNyBAQAogIlxuIgogIlZvbMOtZXUgZGlyIHVuIGQnYXF1ZXN0cz8iCiAKLSM6IGlkZW50LmM6MzQ1CisjOiBpZGVudC5jOjM0OQogbXNnaWQgIiIKICJcbiIKICIqKiogUGxlYXNlIHRlbGwgbWUgd2hvIHlvdSBhcmUuXG4iCkBAIC0yODUxLDU3ICszOTc2LDk1IEBACiAicGVyIGEgZXN0YWJsaXIgbGEgaWRlbnRpdGF0IHByZWRldGVybWluYWRhIGRlbCB2b3N0cmUgY29tcHRlLlxuIgogIk9tZXRldSAtLWdsb2JhbCBwZXIgYSBlc3RhYmxpciBsYSBpZGVudGl0YXQgbm9tw6lzIGVuIGFxdWVzdCBkaXDDsnNpdC5cbiIKIAotIzogaWRlbnQuYzozNjkKKyM6IGlkZW50LmM6Mzc5CiBtc2dpZCAibm8gZW1haWwgd2FzIGdpdmVuIGFuZCBhdXRvLWRldGVjdGlvbiBpcyBkaXNhYmxlZCIKIG1zZ3N0ciAiIgogIm5vIHMnaGEgcHJvcG9yY2lvbmF0IGNhcCBhZHJlw6dhIGVsZWN0csOybmljYSBpIGxhIGRldGVjY2nDsyBhdXRvbcOgdGljYSBlc3TDoCAiCiAiaW5oYWJpbGl0YWRhIgogCi0jOiBpZGVudC5jOjM3NAorIzogaWRlbnQuYzozODQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGF1dG8tZGV0ZWN0IGVtYWlsIGFkZHJlc3MgKGdvdCAnJXMnKSIKIG1zZ3N0ciAiIgogIm5vIHMnaGEgcG9ndXQgZGV0ZWN0YXIgYXV0b23DoHRpY2FtZW50IHVuYSBhZHJlw6dhIGVsZWN0csOybmljYSB2w6BsaWRhIChzJ2hhICIKICJyZWJ1dCDCqyVzwrspIgogCi0jOiBpZGVudC5jOjM4NAorIzogaWRlbnQuYzo0MDEKIG1zZ2lkICJubyBuYW1lIHdhcyBnaXZlbiBhbmQgYXV0by1kZXRlY3Rpb24gaXMgZGlzYWJsZWQiCiBtc2dzdHIgIiIKICJubyBzJ2hhIHByb3BvcmNpb25hdCBjYXAgbm9tIGkgbGEgZGV0ZWNjacOzIGF1dG9tw6B0aWNhIGVzdMOgIGluaGFiaWxpdGFkYSIKIAotIzogaWRlbnQuYzozOTAKKyM6IGlkZW50LmM6NDA3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhdXRvLWRldGVjdCBuYW1lIChnb3QgJyVzJykiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZGV0ZWN0YXIgYXV0b23DoHRpY2FtZW50IGVsIG5vbSAocydoYSByZWJ1dCDCqyVzwrspIgogCi0jOiBpZGVudC5jOjM5OAorIzogaWRlbnQuYzo0MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZW1wdHkgaWRlbnQgbmFtZSAoZm9yIDwlcz4pIG5vdCBhbGxvd2VkIgogbXNnc3RyICJub20gZCdpZGVudGl0YXQgYnVpdCAocGVyIDwlcz4pIG5vIMOpcyBwZXJtw6hzIgogCi0jOiBpZGVudC5jOjQwNAorIzogaWRlbnQuYzo0MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAibmFtZSBjb25zaXN0cyBvbmx5IG9mIGRpc2FsbG93ZWQgY2hhcmFjdGVyczogJXMiCiBtc2dzdHIgImVsIG5vbSBjb250w6kgbm9tw6lzIGNhcsOgY3RlcnMgbm8gcGVybWVzb3M6ICVzIgogCi0jOiBpZGVudC5jOjQxOSBidWlsdGluL2NvbW1pdC5jOjYwNgorIzogaWRlbnQuYzo0MzYgYnVpbHRpbi9jb21taXQuYzo2MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBkYXRlIGZvcm1hdDogJXMiCiBtc2dzdHIgImZvcm1hdCBkZSBkYXRhIG5vIHbDoGxpZDogJXMiCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjM1Ci1tc2dpZCAibXVsdGlwbGUgZmlsdGVyLXNwZWNzIGNhbm5vdCBiZSBjb21iaW5lZCIKLW1zZ3N0ciAiIgorIzogbGlzdC1vYmplY3RzLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImVudHJ5ICclcycgaW4gdHJlZSAlcyBoYXMgdHJlZSBtb2RlLCBidXQgaXMgbm90IGEgdHJlZSIKK21zZ3N0ciAibCdlbnRyYWRhIMKrJXPCuyBhIGwnYXJicmUgJXMgdMOpIG1vZGUgZCdhcmJyZSwgcGVyw7Igbm8gw6lzIHVuIGFyYnJlIgorCisjOiBsaXN0LW9iamVjdHMuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW50cnkgJyVzJyBpbiB0cmVlICVzIGhhcyBibG9iIG1vZGUsIGJ1dCBpcyBub3QgYSBibG9iIgorbXNnc3RyICJsJ2VudHJhZGEgwqslc8K7IGEgbCdhcmJyZSAlcyB0w6kgbW9kZSBibG9iLCBwZXLDsiBubyDDqXMgdW4gYmxvYiIKKworIzogbGlzdC1vYmplY3RzLmM6Mzc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb2FkIHJvb3QgdHJlZSBmb3IgY29tbWl0ICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNhcnJlZ2FyIGwnYXJyZWwgZGUgbCdhcmJyZSBwZXIgbGEgY29taXNzacOzICVzIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLmM6NDkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIHNwYXJzZSBibG9iIGluICclcyciCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgYWNjZWRpciBhIMKrJXPCuyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci5jOjQ5NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIHNwYXJzZSBmaWx0ZXIgZGF0YSBpbiAlcyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBsbGVnaXIgJXMiCiAKICM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjU4Ci0jLCBmdXp6eQotbXNnaWQgIm9ubHkgJ3RyZWU6MCcgaXMgc3VwcG9ydGVkIgotbXNnc3RyICJlbCBwcm90b2NvbCDCqyVzwrsgbm8gw6lzIGNvbXBhdGlibGUiCittc2dpZCAiZXhwZWN0ZWQgJ3RyZWU6PGRlcHRoPiciCittc2dzdHIgInMnZXNwZXJhdmEgwqt0cmVlOjxwcm9mdW5kaXRhdD7CuyIKIAotIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTM3Ci1tc2dpZCAiY2Fubm90IGNoYW5nZSBwYXJ0aWFsIGNsb25lIHByb21pc29yIHJlbW90ZSIKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjczCittc2dpZCAic3BhcnNlOnBhdGggZmlsdGVycyBzdXBwb3J0IGhhcyBiZWVuIGRyb3BwZWQiCiBtc2dzdHIgIiIKIAorIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBmaWx0ZXItc3BlYyAnJXMnIgorbXNnc3RyICJmaWx0cmUgZCdlc3BlY2lmaWNhY2nDsyBubyB2w6BsaWQ6IMKrJXPCuyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm11c3QgZXNjYXBlIGNoYXIgaW4gc3ViLWZpbHRlci1zcGVjOiAnJWMnIgorbXNnc3RyICIiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjE0NAorbXNnaWQgImV4cGVjdGVkIHNvbWV0aGluZyBhZnRlciBjb21iaW5lOiIKK21zZ3N0ciAiIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoyMjYKK21zZ2lkICJtdWx0aXBsZSBmaWx0ZXItc3BlY3MgY2Fubm90IGJlIGNvbWJpbmVkIgorbXNnc3RyICJubyBlcyBwb2RlbiBjb21iaW5hciBtw7psdGlwbGVzIGVzcGVjaWZpY2FjaW9ucyBkZSBmaWx0cmF0Z2UiCisKICM6IGxvY2tmaWxlLmM6MTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKQEAgLTI5MTYsOCArNDA3OSw4IEBACiAiTm8gcydoYSBwb2d1dCBjcmVhciAnJXMubG9jayc6ICVzLlxuIgogIlxuIgogIlNlbWJsYSBxdWUgdW4gYWx0cmUgcHJvY8OpcyBkZSBnaXQgcydlc3TDoCBleGVjdXRhbnQgZW4gYXF1ZXN0XG4iCi0iZGlww7JzaXQsIHBlciBleGVtcGxlLCB1biBlZGl0b3Igb2JlcnQgcGVyICdnaXQgY29tbWl0Jy4gXG4iCi0iQXNzZWd1cmV1LXZvcyBxdWUgdG90cyBlbHMgcHJvY2Vzc29zIHMnaGFnaW4gdGVybWluYXQgaVxuIgorImRpcMOyc2l0LCBwZXIgZXhlbXBsZSwgdW4gZWRpdG9yIG9iZXJ0IHBlciDCq2dpdCBjb21taXTCuy4gXG4iCisiQXNzZWd1cmV1LXZvcyBxdWUgdG90cyBlbHMgcHJvY2Vzc29zIHMnaGFnaW4gYWNhYmF0IGlcbiIKICJsbGF2b3JzIHByb3ZldSBkZSBub3UuIFNpIGVuY2FyYSBmYWxsYSwgcG90IHNlciBxdWUgdW4gcHJvY8OpcyBkZVxuIgogImdpdCBoYSB0aW5ndXQgdW4gZXJyb3I6XG4iCiAiZWxpbWluZXUgZWwgZml0eGVyIG1hbnVhbG1lbnQgcGVyIGEgY29udGludWFyLiIKQEAgLTI5MjUsMTE5ICs0MDg4LDEyMCBAQAogIzogbG9ja2ZpbGUuYzoxNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGNyZWF0ZSAnJXMubG9jayc6ICVzIgotbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGNyZWFyICclcy5sb2NrJzogJXMiCittc2dzdHIgIk5vIHMnaGEgcG9ndXQgY3JlYXIgwqslcy5sb2Nrwrs6ICVzIgogCiAjOiBtZXJnZS5jOjQxCiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgdGhlIGNhY2hlIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGxsZWdpciBsYSBtZW3DsnJpYSBjYXUiCiAKLSM6IG1lcmdlLmM6MTA3IHJlcmVyZS5jOjcyMCBidWlsdGluL2FtLmM6MTg5OSBidWlsdGluL2FtLmM6MTkzMwotIzogYnVpbHRpbi9jaGVja291dC5jOjM4NyBidWlsdGluL2NoZWNrb3V0LmM6NzA4IGJ1aWx0aW4vY2xvbmUuYzo3NjQKKyM6IG1lcmdlLmM6MTA3IHJlcmVyZS5jOjcyMCBidWlsdGluL2FtLmM6MTg3NCBidWlsdGluL2FtLmM6MTkwOAorIzogYnVpbHRpbi9jaGVja291dC5jOjUzOSBidWlsdGluL2NoZWNrb3V0LmM6Nzk4IGJ1aWx0aW4vY2xvbmUuYzo4MDkKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNjQKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgdW4gZml0eGVyIGQnw61uZGV4IG5vdSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjcKIG1zZ2lkICIoYmFkIGNvbW1pdClcbiIKIG1zZ3N0ciAiKGNvbWlzc2nDsyBlcnLDsm5pYSlcbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQ1Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM5MAorIywgYy1mb3JtYXQKIG1zZ2lkICJhZGRfY2FjaGVpbmZvIGZhaWxlZCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCi1tc2dzdHIgImFkZGluZm9fY2FjaGUgaGEgZmFsbGF0IHBlciBhbCBjYW3DrSDCqyVzwrsiCittc2dzdHIgImFkZGluZm9fY2FjaGUgaGEgZmFsbGF0IHBlciBhbCBjYW3DrSDCqyVzwrs7IGludGVycm9tcGVudCBsYSBmdXNpw7MuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNTMKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mzk5CisjLCBjLWZvcm1hdAogbXNnaWQgImFkZF9jYWNoZWluZm8gZmFpbGVkIHRvIHJlZnJlc2ggZm9yIHBhdGggJyVzJzsgbWVyZ2UgYWJvcnRpbmcuIgotbXNnc3RyICJhZGRpbmZvX2NhY2hlIGhhIGZhbGxhdCBwZXIgYWwgY2Ftw60gwqslc8K7IgorbXNnc3RyICIiCisiYWRkaW5mb19jYWNoZSBoYSBmYWxsYXQgYWwgcmVmcmVzY2FyIGVsIGNhbcOtIMKrJXPCuzsgaW50ZXJyb21wZW50IGxhIGZ1c2nDsy4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjQzNQotbXNnaWQgImVycm9yIGJ1aWxkaW5nIHRyZWVzIgotbXNnc3RyICJlcnJvciBlbiBjb25zdHJ1aXIgYXJicmVzIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5MDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBhdGggJyVzJyVzIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNyZWFyIGVsIGNhbcOtIMKrJXPCuyVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5MTcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyAlcyB0byBtYWtlIHJvb20gZm9yIHN1YmRpcmVjdG9yeVxuIgogbXNnc3RyICJTJ2VzdMOgIGVsaW1pbmFudCAlcyBwZXIgYSBmZXIgZXNwYWkgcGVyIGFsIHN1YmRpcmVjdG9yaVxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5MzEgbWVyZ2UtcmVjdXJzaXZlLmM6OTUwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5MTAgbWVyZ2UtcmVjdXJzaXZlLmM6OTI5CiBtc2dpZCAiOiBwZXJoYXBzIGEgRC9GIGNvbmZsaWN0PyIKIG1zZ3N0ciAiOiBwb3RzZXIgdW4gY29uZmxpY3RlIEQvRj8iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk0MAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTE5CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJyVzJyIKIG1zZ3N0ciAicydlc3TDoCByZWZ1c2FudCBwZXJkcmUgZWwgZml0eGVyIG5vIHNlZ3VpdCBhIMKrJXPCuyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTgyIGJ1aWx0aW4vY2F0LWZpbGUuYzozOQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTYwIGJ1aWx0aW4vY2F0LWZpbGUuYzo0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgJXMgJyVzJyIKIG1zZ3N0ciAibm8gZXMgcG90IGxsZWdpciBsJ29iamVjdGUgJXMgwqslc8K7IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5ODQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJibG9iIGV4cGVjdGVkIGZvciAlcyAnJXMnIgogbXNnc3RyICJibG9iIGVzcGVyYXQgcGVyIGEgJXMgwqslc8K7IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDA4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJzogJXMiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gb2JyaXIgwqslc8K7OiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTAxOQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTAwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3ltbGluayAnJXMnOiAlcyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBmZXIgbCdlbmxsYcOnIHNpbWLDsmxpYyDCqyVzwrs6ICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDA2CiAjLCBjLWZvcm1hdAogbXNnaWQgImRvIG5vdCBrbm93IHdoYXQgdG8gZG8gd2l0aCAlMDZvICVzICclcyciCiBtc2dzdHIgIm5vIHNlIHNhcCBxdcOoIGZlciBhbWIgJTA2byAlcyDCqyVzwrsiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTIKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTE5OQorIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChub3QgY2hlY2tlZCBvdXQpIgotbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHJlZ2lzdHJhciBlbCBzdWJtw7JkdWwgJyRzbV9wYXRoJyIKK21zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBmdXNpb25hciBlbCBzdWJtw7JkdWwgJXMgKG5vIGVzdMOgIGFnYWZhdCkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTkKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIwNgorIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChjb21taXRzIG5vdCBwcmVzZW50KSIKLW1zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiByZWdpc3RyYXIgZWwgc3VibcOyZHVsICckc21fcGF0aCciCittc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZnVzaW9uYXIgZWwgc3VibcOyZHVsICVzIChubyBoaSBoYSBjb21pc3Npb25zKSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIyNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChjb21taXRzIGRvbid0IGZvbGxvdyBtZXJnZS1iYXNlKSIKIG1zZ3N0ciAiIgorIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZnVzaW9uYXIgZWwgc3VibcOyZHVsICVzIChsZXMgY29taXNzaW9ucyBubyAiCisic2VndWVpeGVuIG1lcmdlLWJhc2UpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjM0IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMjEgbWVyZ2UtcmVjdXJzaXZlLmM6MTIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIHRvIHRoZSBmb2xsb3dpbmcgY29tbWl0OiIKLW1zZ3N0ciAiIgorbXNnc3RyICJBdmFuw6dhbWVudCByw6BwaWQgZGVsIHN1Ym3DsmR1bCAlcyBhIGxhIHNlZ8O8ZW50IGNvbWlzc2nDszoiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMzcgbWVyZ2UtcmVjdXJzaXZlLmM6MTI0OQotIywgZnV6enksIGMtZm9ybWF0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjI0IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMzYKKyMsIGMtZm9ybWF0CiBtc2dpZCAiRmFzdC1mb3J3YXJkaW5nIHN1Ym1vZHVsZSAlcyIKLW1zZ3N0ciAiQXZhbsOnIHLDoHBpZCBhICRzaGExIgorbXNnc3RyICJBdmFuw6dhbWVudCByw6BwaWQgYWwgc3VibcOyZHVsICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjcxCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG1lcmdlIGZvbGxvd2luZyBjb21taXRzIG5vdCBmb3VuZCkiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3NQotIywgZnV6enksIGMtZm9ybWF0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjYzCisjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG5vdCBmYXN0LWZvcndhcmQpIgotbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHJlZ2lzdHJhciBlbCBzdWJtw7JkdWwgJyRzbV9wYXRoJyIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3NgotbXNnaWQgIkZvdW5kIGEgcG9zc2libGUgbWVyZ2UgcmVzb2x1dGlvbiBmb3IgdGhlIHN1Ym1vZHVsZTpcbiIKIG1zZ3N0ciAiIgorIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZnVzaW9uYXIgZWwgc3VibcOyZHVsICVzIChzZW5zZSBhdmFuw6dhbWVudCByw6BwaWQpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjc5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjY0Cittc2dpZCAiRm91bmQgYSBwb3NzaWJsZSBtZXJnZSByZXNvbHV0aW9uIGZvciB0aGUgc3VibW9kdWxlOlxuIgorbXNnc3RyICJTJ2hhIHRyb2JhdCB1bmEgcG9zc2libGUgcmVzb2x1Y2nDsyBkZSBmdXNpw7MgcGVsIHN1Ym3DsmR1bDpcbiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI2NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSWYgdGhpcyBpcyBjb3JyZWN0IHNpbXBseSBhZGQgaXQgdG8gdGhlIGluZGV4IGZvciBleGFtcGxlXG4iCkBAIC0zMDQ4LDMxICs0MjEyLDM1IEBACiAid2hpY2ggd2lsbCBhY2NlcHQgdGhpcyBzdWdnZXN0aW9uLlxuIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyODgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobXVsdGlwbGUgbWVyZ2VzIGZvdW5kKSIKIG1zZ3N0ciAiIgorIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZnVzaW9uYXIgZWwgc3VibcOyZHVsICVzIChzJ2hhbiB0cm9iYXQgbcO6bHRpcGxlcyAiCisiZnVzaW9ucykiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNTgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNDkKIG1zZ2lkICJGYWlsZWQgdG8gZXhlY3V0ZSBpbnRlcm5hbCBtZXJnZSIKIG1zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBleGVjdXRhciBsYSBmdXNpw7MgaW50ZXJuYSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM2MworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gYWRkICVzIHRvIGRhdGFiYXNlIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGFmZWdpciAlcyBhIGxhIGJhc2UgZGUgZGFkZXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzOTUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0by1tZXJnaW5nICVzIgogbXNnc3RyICJTJ2VzdMOgIGF1dG9mdXNpb25hbnQgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0MTYKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQxMAorIywgYy1mb3JtYXQKIG1zZ2lkICJFcnJvcjogUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlczsgd3JpdGluZyB0byAlcyBpbnN0ZWFkLiIKLW1zZ3N0ciAicydlc3TDoCByZWZ1c2FudCBwZXJkcmUgZWwgZml0eGVyIG5vIHNlZ3VpdCBhIMKrJXPCuyIKK21zZ3N0ciAiIgorIkVycm9yOiBzJ2VzdMOgIHJlZnVzYW50IHBlcmRyZSBlbCBmaXR4ZXIgbm8gc2VndWl0IGEgJXM7IGVuIGNvbXB0ZXMgcydoYSAiCisiZXNjcml0IGEgJXMuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDgzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgbGVmdCAiCkBAIC0zMDgxLDcgKzQyNDksNyBAQAogIkNPTkZMSUNURTogKCVzL3N1cHJlc3Npw7MpOiAlcyBzdXByaW1pdCBlbiAlcyBpICVzIGVuICVzLiBMYSB2ZXJzacOzICVzIGRlICVzICIKICJzJ2hhIGRlaXhhdCBlbiBsJ2FyYnJlLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ4OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ4NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIHRvICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzICIKQEAgLTMwOTAsNyArNDI1OCw3IEBACiAiQ09ORkxJQ1RFOiAoJXMvc3VwcmVzc2nDsyk6ICVzIHN1cHJpbWl0IGVuICVzIGkgJXMgYSAlcyBlbiAlcy4gTGEgdmVyc2nDsyAlcyAiCiAiZGUgJXMgcydoYSBkZWl4YXQgZW4gbCdhcmJyZS4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0OTUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0ICIKQEAgLTMwOTksNyArNDI2Nyw3IEBACiAiQ09ORkxJQ1RFOiAoJXMvc3VwcmVzc2nDsyk6ICVzIHN1cHJpbWl0IGVuICVzIGkgJXMgZW4gJXMuIExhIHZlcnNpw7MgJXMgZGUgJXMgIgogInMnaGEgZGVpeGF0IGVuIGwnYXJicmUgYSAlcy4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MDAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyB0byAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyAiCkBAIC0zMTE2LDU1ICs0Mjg0LDU4IEBACiBtc2dpZCAicmVuYW1lZCIKIG1zZ3N0ciAiY2FudmlhdCBkZSBub20iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1ODggbWVyZ2UtcmVjdXJzaXZlLmM6MTczNyBtZXJnZS1yZWN1cnNpdmUuYzoyMzY5Ci0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMTI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjE0IG1lcmdlLXJlY3Vyc2l2ZS5jOjI1MzAgbWVyZ2UtcmVjdXJzaXZlLmM6MzE3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgJXMiCi1tc2dzdHIgInMnZXN0w6AgcmVmdXNhbnQgYSBwZXJkcmUgZWwgZml0eGVyIGJydXQgYSAlcyIKK21zZ3N0ciAiUydlc3TDoCByZWZ1c2FudCBhIHBlcmRyZSBlbCBmaXR4ZXIgYnJ1dCBhICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjAyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjI0CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXMsIGV2ZW4gdGhvdWdoIGl0J3MgaW4gdGhlIHdheS4iCittc2dzdHIgIiIKKyJTJ2VzdMOgIHJlZnVzYW50IHBlcmRyZSBlbCBmaXR4ZXIgbm8gc2VndWl0IGEgwqslc8K7LCBtYWxncmF0IHF1ZSBlc3TDoCBlbiBtaWcgIgorImRlIGwnb3BlcmFjacOzLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTY4MgorIywgYy1mb3JtYXQKK21zZ2lkICJDT05GTElDVCAocmVuYW1lL2FkZCk6IFJlbmFtZSAlcy0+JXMgaW4gJXMuICBBZGRlZCAlcyBpbiAlcyIKK21zZ3N0ciAiIgorIkNPTkZMSUNURSAoY2FudmkgZGUgbm9tL2FmZWdpbWVudCk6IENhbnZpIGRlIG5vbSAlcy0+JXMgYSAlcy4gIFMnaGEgYWZlZ2l0ICIKKyIlcyBhICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIGEgZGlyZWN0b3J5IGluICVzIGFkZGluZyBhcyAlcyBpbnN0ZWFkIgogbXNnc3RyICIlcyDDqXMgdW4gZGlyZWN0b3JpIGVuICVzOyBzJ2VzdMOgIGFmZWdpbnQgY29tIGEgJXMgZW4gbGxvYyBkJ2FpeMOyIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjA3CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXM7IGFkZGluZyBhcyAlcyBpbnN0ZWFkIgogbXNnc3RyICIiCiAicydlc3TDoCByZWZ1c2FudCBwZXJkcmUgZWwgZml0eGVyIG5vIHNlZ3VpdCBhICVzOyBlbiBjb21wdGVzLCBzJ2VzdMOgIGFmZWdpbnQgIgogImNvbSBhICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjMzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAocmVuYW1lL3JlbmFtZSk6IFJlbmFtZSBcIiVzXCItPlwiJXNcIiBpbiBicmFuY2ggXCIlc1wiIHJlbmFtZSBcIiVzIgogIlwiLT5cIiVzXCIgaW4gXCIlc1wiJXMiCiBtc2dzdHIgIiIKLSJDT05GTElDVEUgKGNhbnZpIGRlIG5vbS9jYW52aSBkZSBub20pOiBDYW52aSBkZSBub20gXCIlc1wiLT5cIiVzXCIgZW4gbGEgIgotImJyYW5jYSBcIiVzXCIgY2FudmkgZGUgbm9tIFwiJXNcIi0+XCIlc1wiIGVuIFwiJXNcIiVzIgorIkNPTkZMSUNURSAoY2FudmkgZGUgbm9tL2NhbnZpIGRlIG5vbSk6IENhbnZpIGRlIG5vbSDCqyVzwrstPsKrJXPCuyBlbiBsYSBicmFuY2EgIgorIsKrJXPCuyBjYW52aSBkZSBub20gwqslc8K7LT7CqyVzwrsgZW4gwqslc8K7JXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MzgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3NDIKIG1zZ2lkICIgKGxlZnQgdW5yZXNvbHZlZCkiCiBtc2dzdHIgIiAoZGVpeGF0IHNlbnNlIHJlc29sdWNpw7MpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjk5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxODUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gUmVuYW1lICVzLT4lcyBpbiAlcyIKIG1zZ3N0ciAiIgogIkNPTkZMSUNURSAoY2FudmkgZGUgbm9tL2NhbnZpIGRlIG5vbSk6IENhbnZpIGRlIG5vbSAlcy0+JXMgZW4gJXMuIENhbnZpIGRlICIKICJub20gJXMtPiVzIGVuICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzM0Ci0jLCBjLWZvcm1hdAotbXNnaWQgIlJlbmFtaW5nICVzIHRvICVzIGFuZCAlcyB0byAlcyBpbnN0ZWFkIgotbXNnc3RyICJTJ2VzdMOgIGNhbnZpYW50IGVsIG5vbSBkZSAlcyBhICVzIGkgJXMgYSAlcyBlbiBsbG9jIGQnYWl4w7IiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3NDYKLSMsIGZ1enp5LCBjLWZvcm1hdAotbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXMsIGV2ZW4gdGhvdWdoIGl0J3MgaW4gdGhlIHdheS4iCi1tc2dzdHIgInMnZXN0w6AgcmVmdXNhbnQgcGVyZHJlIGVsIGZpdHhlciBubyBzZWd1aXQgYSDCqyVzwrsiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5NTIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIxMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChkaXJlY3RvcnkgcmVuYW1lIHNwbGl0KTogVW5jbGVhciB3aGVyZSB0byBwbGFjZSAlcyBiZWNhdXNlICIKQEAgLTMxNzIsMjkwICs0MzQzLDM1MyBAQAogImdldHRpbmcgYSBtYWpvcml0eSBvZiB0aGUgZmlsZXMuIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5ODQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIxNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogRXhpc3RpbmcgZmlsZS9kaXIgYXQgJXMgaW4gdGhlIHdheSBvZiAiCiAiaW1wbGljaXQgZGlyZWN0b3J5IHJlbmFtZShzKSBwdXR0aW5nIHRoZSBmb2xsb3dpbmcgcGF0aChzKSB0aGVyZTogJXMuIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5OTQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIxNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogQ2Fubm90IG1hcCBtb3JlIHRoYW4gb25lIHBhdGggdG8gJXM7ICIKICJpbXBsaWNpdCBkaXJlY3RvcnkgcmVuYW1lcyB0cmllZCB0byBwdXQgdGhlc2UgcGF0aHMgdGhlcmU6ICVzIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwODYKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjI0OAorIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiBSZW5hbWUgZGlyZWN0b3J5ICVzLT4lcyBpbiAlcy4gUmVuYW1lIGRpcmVjdG9yeSAlcy0iCiAiPiVzIGluICVzIgogbXNnc3RyICIiCi0iQ09ORkxJQ1RFIChjYW52aSBkZSBub20vY2FudmkgZGUgbm9tKTogQ2FudmkgZGUgbm9tICVzLT4lcyBlbiAlcy4gQ2FudmkgZGUgIgotIm5vbSAlcy0+JXMgZW4gJXMiCisiQ09ORkxJQ1RFIChjYW52aSBkZSBub20vY2FudmkgZGUgbm9tKTogY2FudmkgZGUgbm9tICVzLT4lcyBlbiAlcy4gQ2FudmkgZGUgIgorIm5vbSBkZSBkaXJlY3RvcmkgJXMtPiVzIGVuICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyMzMxCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyNDkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJXQVJOSU5HOiBBdm9pZGluZyBhcHBseWluZyAlcyAtPiAlcyByZW5hbWUgdG8gJXMsIGJlY2F1c2UgJXMgaXRzZWxmIHdhcyAiCiAicmVuYW1lZC4iCiBtc2dzdHIgIiIKKyJBVsONUzogUydlc3TDoCBldml0YW50IGFwbGljYXIgZWwgY2FudmkgZGUgbm9tICVzIC0+ICVzIGEgJXMsIHBlcnF1w6ggJXMgZWxsICIKKyJtYXRlaXggamEgaGF2aWEgY2FudmlhdCBkZSBub20uIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyNzM3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkNPTkZMSUNUIChyZW5hbWUvYWRkKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gJXMgYWRkZWQgaW4gJXMiCi1tc2dzdHIgIiIKLSJDT05GTElDVEUgKGNhbnZpIGRlIG5vbS9hZmVnaW1lbnQpOiBDYW52aSBkZSBub20gJXMtPiVzIGVuICVzLiAlcyBhZmVnaXQgZW4gIgotIiVzIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyNzYzCi0jLCBjLWZvcm1hdAotbXNnaWQgIkFkZGluZyBtZXJnZWQgJXMiCi1tc2dzdHIgIlMnZXN0w6AgYWZlZ2ludCAlcyBmdXNpb25hdCIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjc3MCBtZXJnZS1yZWN1cnNpdmUuYzozMTI3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkFkZGluZyBhcyAlcyBpbnN0ZWFkIgotbXNnc3RyICJTJ2VzdMOgIGFmZWdpbnQgY29tIGEgJXMgZW4gbGxvYyBkJ2FpeMOyIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyOTM0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDE5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCAlcyIKIG1zZ3N0ciAibm8gZXMgcG90IGxsZWdpciBsJ29iamVjdGUgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5MzcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGlzIG5vdCBhIGJsb2IiCiBtc2dzdHIgImwnb2JqZWN0ZSAlcyBubyDDqXMgdW4gYmxvYiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAwNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA4NgogbXNnaWQgIm1vZGlmeSIKIG1zZ3N0ciAibW9kaWZpY2FjacOzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDA2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDg2CiBtc2dpZCAibW9kaWZpZWQiCiBtc2dzdHIgIm1vZGlmaWNhdCIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAxNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA5OAogbXNnaWQgImNvbnRlbnQiCiBtc2dzdHIgImNvbnRpbmd1dCIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAyNAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzEwMgogbXNnaWQgImFkZC9hZGQiCiBtc2dzdHIgImFmZWdpbWVudC9hZmVnaW1lbnQiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNzEKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMxMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBlZCAlcyAobWVyZ2VkIHNhbWUgYXMgZXhpc3RpbmcpIgogbXNnc3RyICJTJ2hhIG9tw6hzICVzIChlbCBmdXNpb25hdCDDqXMgaWd1YWwgYSBsJ2V4aXN0ZW50KSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA5MyBnaXQtc3VibW9kdWxlLnNoOjg1OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzE0NyBnaXQtc3VibW9kdWxlLnNoOjk5MwogbXNnaWQgInN1Ym1vZHVsZSIKIG1zZ3N0ciAic3VibcOyZHVsIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDk0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUICglcyk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgogbXNnc3RyICJDT05GTElDVEUgKCVzKTogQ29uZmxpY3RlIGRlIGZ1c2nDsyBlbiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIxNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgYXMgJXMgaW5zdGVhZCIKK21zZ3N0ciAiUydlc3TDoCBhZmVnaW50IGNvbSBhICVzIGVuIGxsb2MgZCdhaXjDsiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGF0aCB1cGRhdGVkOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCBpbiAlczsgIgorIm1vdmluZyBpdCB0byAlcy4iCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI2NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGZpbGUgbG9jYXRpb24pOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCAiCisiaW4gJXMsIHN1Z2dlc3RpbmcgaXQgc2hvdWxkIHBlcmhhcHMgYmUgbW92ZWQgdG8gJXMuIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhdGggdXBkYXRlZDogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgd2FzIHJlbmFtZWQgaW4gIgorIiVzOyBtb3ZpbmcgaXQgdG8gJXMuIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChmaWxlIGxvY2F0aW9uKTogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgIgorIndhcyByZW5hbWVkIGluICVzLCBzdWdnZXN0aW5nIGl0IHNob3VsZCBwZXJoYXBzIGJlIG1vdmVkIHRvICVzLiIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzIgogbXNnc3RyICJTJ2VzdMOgIGVsaW1pbmFudCAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI0MgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQwOAogbXNnaWQgImZpbGUvZGlyZWN0b3J5IgogbXNnc3RyICJmaXR4ZXIvZGlyZWN0b3JpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjQ4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNDEzCiBtc2dpZCAiZGlyZWN0b3J5L2ZpbGUiCiBtc2dzdHIgImRpcmVjdG9yaS9maXR4ZXIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNTUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ09ORkxJQ1QgKCVzKTogVGhlcmUgaXMgYSBkaXJlY3Rvcnkgd2l0aCBuYW1lICVzIGluICVzLiBBZGRpbmcgJXMgYXMgJXMiCiBtc2dzdHIgIiIKICJDT05GTElDVEUgKCVzKTogSGkgaGEgdW4gZGlyZWN0b3JpIGFtYiBub20gJXMgZW4gJXMuIFMnZXN0w6AgYWZlZ2ludCAlcyBjb20gYSAiCiAiJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNjQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWRkaW5nICVzIgogbXNnc3RyICJTJ2VzdMOgIGFmZWdpbnQgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMDAKLSMsIGZ1enp5LCBjLWZvcm1hdAotbXNnaWQgIiIKLSJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKLSIgICVzIgotbXNnc3RyICIiCi0iRWxzIHZvc3RyZXMgY2FudmlzIGxvY2FscyBhbHMgZml0eGVycyBzZWfDvGVudHMgc2Ugc29icmVlc2NyaXVyaWVuIHBlciAiCi0iZnVzaW9uYXI6XG4iCi0iJSVzIgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJDT05GTElDVCAoYWRkL2FkZCk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgorbXNnc3RyICJDT05GTElDVEUgKGFmZWdpbWVudC9hZmVnaW1lbnQpOiBDb25mbGljdGUgZGUgZnVzacOzIGVuICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMzExCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNDgyCiBtc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlISIKIG1zZ3N0ciAiSmEgZXN0w6AgYWwgZGlhISIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMyMAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQ5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJtZXJnaW5nIG9mIHRyZWVzICVzIGFuZCAlcyBmYWlsZWQiCiBtc2dzdHIgImxhIGZ1c2nDsyBkZWxzIGFyYnJlcyAlcyBpICVzIGhhIGZhbGxhdCIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQxOQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzU5NQogbXNnaWQgIk1lcmdpbmc6IgogbXNnc3RyICJTJ2VzdMOgIGZ1c2lvbmFudDoiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MzIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM2MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yOiIKIG1zZ2lkX3BsdXJhbCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yczoiCiBtc2dzdHJbMF0gInMnaGEgdHJvYmF0ICV1IGF2YW50cGFzc2F0IGVuIGNvbcO6OiIKIG1zZ3N0clsxXSAicydoYW4gdHJvYmF0ICV1IGF2YW50cGFzc2F0cyBlbiBjb23DujoiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0NzEKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM2NTgKIG1zZ2lkICJtZXJnZSByZXR1cm5lZCBubyBjb21taXQiCiBtc2dzdHIgImxhIGZ1c2nDsyBubyBoYSByZXRvcm5hdCBjYXAgY29taXNzacOzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNTM3CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNzE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKKyIgICVzIgorbXNnc3RyICIiCisiRWxzIGNhbnZpcyBsb2NhbHMgYWxzIGZpdHhlcnMgc2Vnw7xlbnRzIHNlIHNvYnJlZXNjcml1cmFuIHBlciBsYSBmdXNpw7M6XG4iCisiICAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzgxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGwnb2JqZWN0ZSDCqyVzwrsiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NTMgYnVpbHRpbi9tZXJnZS5jOjY5MSBidWlsdGluL21lcmdlLmM6ODQ5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozODMyIGJ1aWx0aW4vbWVyZ2UuYzo2OTQgYnVpbHRpbi9tZXJnZS5jOjg3NAogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSBpbmRleC4iCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgZXNjcml1cmUgbCfDrW5kZXguIgogCi0jOiBtaWR4LmM6NjUKKyM6IG1pZHguYzo2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IGZpbGUgJXMgaXMgdG9vIHNtYWxsIgogbXNnc3RyICIiCiAKLSM6IG1pZHguYzo4MQorIzogbWlkeC5jOjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggc2lnbmF0dXJlIDB4JTA4eCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgMHglMDh4IgogbXNnc3RyICIiCiAKLSM6IG1pZHguYzo4NgorIzogbWlkeC5jOjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggdmVyc2lvbiAlZCBub3QgcmVjb2duaXplZCIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6OTEKKyM6IG1pZHguYzo5NAogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiaGFzaCB2ZXJzaW9uICV1IGRvZXMgbm90IG1hdGNoIgogbXNnc3RyICJlbCBjYW3DrSDCqyVzwrsgbm8gdMOpIGxhIHNldmEgdmVyc2nDsyIKIAotIzogbWlkeC5jOjEwNQorIzogbWlkeC5jOjEwOAogbXNnaWQgImludmFsaWQgY2h1bmsgb2Zmc2V0ICh0b28gbGFyZ2UpIgogbXNnc3RyICIiCiAKLSM6IG1pZHguYzoxMjkKKyM6IG1pZHguYzoxMzIKIG1zZ2lkICJ0ZXJtaW5hdGluZyBtdWx0aS1wYWNrLWluZGV4IGNodW5rIGlkIGFwcGVhcnMgZWFybGllciB0aGFuIGV4cGVjdGVkIgogbXNnc3RyICIiCiAKLSM6IG1pZHguYzoxNDIKKyM6IG1pZHguYzoxNDUKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgcGFjay1uYW1lIGNodW5rIgogbXNnc3RyICIiCiAKLSM6IG1pZHguYzoxNDQKKyM6IG1pZHguYzoxNDcKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgT0lEIGZhbm91dCBjaHVuayIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6MTQ2CisjOiBtaWR4LmM6MTQ5CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIE9JRCBsb29rdXAgY2h1bmsiCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjE0OAorIzogbWlkeC5jOjE1MQogbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBvYmplY3Qgb2Zmc2V0cyBjaHVuayIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6MTYyCisjOiBtaWR4LmM6MTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggcGFjayBuYW1lcyBvdXQgb2Ygb3JkZXI6ICclcycgYmVmb3JlICclcyciCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjIwNQorIzogbWlkeC5jOjIxMAogIywgYy1mb3JtYXQKLW1zZ2lkICJiYWQgcGFjay1pbnQtaWQ6ICV1ICgldSB0b3RhbCBwYWNrcyIKK21zZ2lkICJiYWQgcGFjay1pbnQtaWQ6ICV1ICgldSB0b3RhbCBwYWNrcykiCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjI0NgorIzogbWlkeC5jOjI2MAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggc3RvcmVzIGEgNjQtYml0IG9mZnNldCwgYnV0IG9mZl90IGlzIHRvbyBzbWFsbCIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6MjcxCisjOiBtaWR4LmM6Mjg4CiBtc2dpZCAiZXJyb3IgcHJlcGFyaW5nIHBhY2tmaWxlIGZyb20gbXVsdGktcGFjay1pbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6NDA3CisjOiBtaWR4LmM6NDcyCiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gYWRkIHBhY2tmaWxlICclcyciCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gbGxlZ2lyIGVsIGZpdHhlciBkJ29yZHJlcyDCqyVzwrsiCiAKLSM6IG1pZHguYzo0MTMKKyM6IG1pZHguYzo0NzgKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2staW5kZXggJyVzJyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBvYnJpciDCqyVzwrsiCiAKLSM6IG1pZHguYzo1MDcKKyM6IG1pZHguYzo1MzgKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBsb2NhdGUgb2JqZWN0ICVkIGluIHBhY2tmaWxlIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGxsZWdpciBsJ29iamVjdGUgwqslc8K7LiIKIAotIzogbWlkeC5jOjk0MworIzogbWlkeC5jOjg0MgorIywgZnV6enkKK21zZ2lkICJBZGRpbmcgcGFja2ZpbGVzIHRvIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gbmV0ZWphciBsJ8OtbmRleCIKKworIzogbWlkeC5jOjg3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaWQgbm90IHNlZSBwYWNrLWZpbGUgJXMgdG8gZHJvcCIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6OTczCittc2dpZCAiV3JpdGluZyBjaHVua3MgdG8gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTA1MgogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNsZWFyIG11bHRpLXBhY2staW5kZXggYXQgJXMiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gbmV0ZWphciBsJ8OtbmRleCIKIAotIzogbWlkeC5jOjk4MQorIzogbWlkeC5jOjExMDgKK21zZ2lkICJMb29raW5nIGZvciByZWZlcmVuY2VkIHBhY2tmaWxlcyIKK21zZ3N0ciAiUydlc3RhbiBjZXJjYW50IGZpdHhlcnMgZGUgcGFxdWV0cyByZWZlcmVuY2lhdHMiCisKKyM6IG1pZHguYzoxMTIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJvaWQgZmFub3V0IG91dCBvZiBvcmRlcjogZmFub3V0WyVkXSA9ICU8UFJJeDMyPiA+ICU8UFJJeDMyPiA9IGZhbm91dFslZF0iCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjk5MgorIzogbWlkeC5jOjExMjgKK21zZ2lkICJWZXJpZnlpbmcgT0lEIG9yZGVyIGluIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjExMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAib2lkIGxvb2t1cCBvdXQgb2Ygb3JkZXI6IG9pZFslZF0gPSAlcyA+PSAlcyA9IG9pZFslZF0iCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjk5NgotIywgZnV6enkKLW1zZ2lkICJWZXJpZnlpbmcgb2JqZWN0IG9mZnNldHMiCi1tc2dzdHIgIlMnZXN0YW4gZXNjcml2aW50IGVscyBvYmplY3RlcyIKKyM6IG1pZHguYzoxMTU3Cittc2dpZCAiU29ydGluZyBvYmplY3RzIGJ5IHBhY2tmaWxlIgorbXNnc3RyICJTJ2VzdGFuIG9yZGVuYW50IGVscyBvYmplY3RlcyBwZXIgZml0eGVyIGRlIHBhcXVldCIKIAotIzogbWlkeC5jOjEwMDQKKyM6IG1pZHguYzoxMTY0Cittc2dpZCAiVmVyaWZ5aW5nIG9iamVjdCBvZmZzZXRzIgorbXNnc3RyICJTJ2VzdGFuIHZlcmlmaWNhbnQgZWxzIGRlc3BsYcOnYW1lbnRzIGRlbHMgb2JqZWN0ZXMiCisKKyM6IG1pZHguYzoxMTgwCiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBwYWNrIGVudHJ5IGZvciBvaWRbJWRdID0gJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYWZlZ2lyIHVuYSBlbnRyYWRhIGRlIGNhdSBwZXIgYSAlcyIKIAotIzogbWlkeC5jOjEwMTAKKyM6IG1pZHguYzoxMTg2CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBwYWNrLWluZGV4IGZvciBwYWNrZmlsZSAlcyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgZWwgZml0eGVyIGQnb3JkcmVzIMKrJXPCuyIKIAotIzogbWlkeC5jOjEwMTkKKyM6IG1pZHguYzoxMTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImluY29ycmVjdCBvYmplY3Qgb2Zmc2V0IGZvciBvaWRbJWRdID0gJXM6ICU8UFJJeDY0PiAhPSAlPFBSSXg2ND4iCiBtc2dzdHIgIiIKIAotIzogbmFtZS1oYXNoLmM6NTMyCisjOiBtaWR4LmM6MTIyMAorbXNnaWQgIkNvdW50aW5nIHJlZmVyZW5jZWQgb2JqZWN0cyIKK21zZ3N0ciAiUydlc3RhbiBjb21wdGFudCBlbHMgb2JqZWN0ZXMgcmVmZXJlbmNpYXRzIgorCisjOiBtaWR4LmM6MTIzMAorbXNnaWQgIkZpbmRpbmcgYW5kIGRlbGV0aW5nIHVucmVmZXJlbmNlZCBwYWNrZmlsZXMiCittc2dzdHIgIlMnZXN0YW4gY2VyY2FudCBpIHN1cHJpbWludCBlbHMgZml0eGVycyBkZSBwYXF1ZXRzIG5vIHJlZmVyZW5jaWF0cyIKKworIzogbWlkeC5jOjEzODgKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgcGFjay1vYmplY3RzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGV4ZWN1dGFyIGVsIHBhY2stb2JqZWN0cyIKKworIzogbWlkeC5jOjE0MDcKK21zZ2lkICJjb3VsZCBub3QgZmluaXNoIHBhY2stb2JqZWN0cyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBmaW5hbGl0emFyIGVsIHBhY2stb2JqZWN0cyIKKworIzogbmFtZS1oYXNoLmM6NTM3CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxhenlfZGlyIHRocmVhZDogJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgZmlsOiAlcyIKIAotIzogbmFtZS1oYXNoLmM6NTU0CisjOiBuYW1lLWhhc2guYzo1NTkKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbGF6eV9uYW1lIHRocmVhZDogJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgZmlsOiAlcyIKIAotIzogbmFtZS1oYXNoLmM6NTYwCisjOiBuYW1lLWhhc2guYzo1NjUKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBqb2luIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGZpbDogJXMiCiAKLSM6IG5vdGVzLW1lcmdlLmM6Mjc1CisjOiBub3Rlcy1tZXJnZS5jOjI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIHByZXZpb3VzIG5vdGVzIG1lcmdlICglcyBleGlzdHMpLlxuIgpAQCAtMzQ2NiwyMSArNDcwMCwyMSBAQAogIlVzZXUgwqtnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXTCuyBvIMKrZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnTCuyBwZXIgYSBjb21ldHJlLyIKICJhdm9ydGFyIGxhIGZ1c2nDsyBwcsOodmlhIGFiYW5zIGRlIGNvbWVuw6dhciB1bmEgZnVzacOzIGRlIG5vdGVzIG5vdmEuIgogCi0jOiBub3Rlcy1tZXJnZS5jOjI4MgorIzogbm90ZXMtbWVyZ2UuYzoyODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG5vdGVzIG1lcmdlICglcyBleGlzdHMpLiIKIG1zZ3N0ciAiTm8gaGV1IGNvbmNsw7JzIGxhIHZvc3RyYSBmdXNpw7MgZGUgbm90ZXMgKCVzIGV4aXN0ZWl4KS4iCiAKLSM6IG5vdGVzLXV0aWxzLmM6NDUKKyM6IG5vdGVzLXV0aWxzLmM6NDYKIG1zZ2lkICJDYW5ub3QgY29tbWl0IHVuaW5pdGlhbGl6ZWQvdW5yZWZlcmVuY2VkIG5vdGVzIHRyZWUiCiBtc2dzdHIgIk5vIGVzIHBvdCBjb21ldHJlIHVuIGFyYnJlIGRlIG5vdGVzIG5vIGluaWNpYWxpdHphdCAvIG5vIHJlZmVyZW5jaWF0IgogCi0jOiBub3Rlcy11dGlscy5jOjEwNAorIzogbm90ZXMtdXRpbHMuYzoxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkIG5vdGVzLnJld3JpdGVNb2RlIHZhbHVlOiAnJXMnIgogbXNnc3RyICJWYWxvciBkZSBub3Rlcy5yZXdyaXRlTW9kZSBlcnJvbmk6IMKrJXPCuyIKIAotIzogbm90ZXMtdXRpbHMuYzoxMTQKKyM6IG5vdGVzLXV0aWxzLmM6MTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIHJld3JpdGUgbm90ZXMgaW4gJXMgKG91dHNpZGUgb2YgcmVmcy9ub3Rlcy8pIgogbXNnc3RyICJTJ2VzdMOgIHJlZnVzYW50IHJlZXNjcml1cmUgbGVzIG5vdGVzIGVuICVzIChmb3JhIGRlIHJlZnMvbm90ZXMvKSIKQEAgLTM0ODksMjUgKzQ3MjMsMjUgQEAKICMuIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSwgdGhlIHNlY29uZCAlcyBpcwogIy4gaXRzIHZhbHVlLgogIy4KLSM6IG5vdGVzLXV0aWxzLmM6MTQ0CisjOiBub3Rlcy11dGlscy5jOjE0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgJXMgdmFsdWU6ICclcyciCiBtc2dzdHIgIlZhbG9yIGVycm9uaSBkZSAlczogwqslc8K7IgogCi0jOiBvYmplY3QuYzo1NAotIywgZnV6enksIGMtZm9ybWF0CisjOiBvYmplY3QuYzo1MworIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9iamVjdCB0eXBlIFwiJXNcIiIKLW1zZ3N0ciAib2JqZWN0ZSBkZSBibG9iIG5vIHbDoGxpZCAlcyIKK21zZ3N0ciAidGlwdXMgZCdvYmplY3RlIMKrJXPCuyBubyB2w6BsaWQiCiAKICM6IG9iamVjdC5jOjE3MwotIywgZnV6enksIGMtZm9ybWF0CisjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBpcyBhICVzLCBub3QgYSAlcyIKLW1zZ3N0ciAibCdvYmplY3RlICVzIG5vIMOpcyB1biBibG9iIgorbXNnc3RyICJsJ29iamVjdGUgJXMgw6lzICVzLCBubyBwYXMgJXMiCiAKICM6IG9iamVjdC5jOjIzMwotIywgZnV6enksIGMtZm9ybWF0CisjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBoYXMgdW5rbm93biB0eXBlIGlkICVkIgotbXNnc3RyICJMJ29iamVjdGUgJXMgbm8gdMOpIGNhcCBub3RhXG4iCittc2dzdHIgImwnb2JqZWN0ZSAlcyB0w6kgdW4gaWRlbnRpZmljYWRvciBkZSB0aXB1cyAlZCBkZXNjb25lZ3V0IgogCiAjOiBvYmplY3QuYzoyNDYKICMsIGMtZm9ybWF0CkBAIC0zNTE2LDMwICs0NzUwLDg1IEBACiAKICM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzcKICMsIGMtZm9ybWF0Ci1tc2dpZCAic2hhMSBtaXNtYXRjaCAlcyIKK21zZ2lkICJoYXNoIG1pc21hdGNoICVzIgogbXNnc3RyICIiCiAKLSM6IHBhY2tmaWxlLmM6NjA3CisjOiBwYWNrZmlsZS5jOjY0MQogbXNnaWQgIm9mZnNldCBiZWZvcmUgZW5kIG9mIHBhY2tmaWxlIChicm9rZW4gLmlkeD8pIgogbXNnc3RyICJkZXNwbGHDp2FtZW50IGFiYW5zIGRlIGxhIGZpIGRlbCBmaXR4ZXIgZGUgcGFxdWV0ICguaWR4IHRyZW5jYXQ/KSIKIAotIzogcGFja2ZpbGUuYzoxODY0CisjOiBwYWNrZmlsZS5jOjE4ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2Zmc2V0IGJlZm9yZSBzdGFydCBvZiBwYWNrIGluZGV4IGZvciAlcyAoY29ycnVwdCBpbmRleD8pIgogbXNnc3RyICIiCiAiZGVzcGxhw6dhbWVudCBhYmFucyBkJ2luaWNpIGQnw61uZGV4IGRlIHBhcXVldCBwZXIgYSAlcyAow61uZGV4IGNvcnJvbXB1dD8pIgogCi0jOiBwYWNrZmlsZS5jOjE4NjgKKyM6IHBhY2tmaWxlLmM6MTg5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJvZmZzZXQgYmV5b25kIGVuZCBvZiBwYWNrIGluZGV4IGZvciAlcyAodHJ1bmNhdGVkIGluZGV4PykiCiBtc2dzdHIgIiIKICJkZXNwbGHDp2FtZW50IG3DqXMgZW5sbMOgIGRlIGxhIGZpIGQnw61uZGV4IGRlIHBhcXVldCBwZXIgYSAlcyAow61uZGV4IHRydW5jYXQ/KSIKIAotIzogcGFyc2Utb3B0aW9ucy5jOjY3MgorIzogcGFyc2Utb3B0aW9ucy5jOjM4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlcXVpcmVzIGEgdmFsdWUiCittc2dzdHIgIiVzIHJlcXVlcmVpeCB1biB2YWxvciIKKworIzogcGFyc2Utb3B0aW9ucy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIGluY29tcGF0aWJsZSB3aXRoICVzIgorbXNnc3RyICIlcyDDqXMgaW5jb21wYXRpYmxlIGFtYiAlcyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIDogaW5jb21wYXRpYmxlIHdpdGggc29tZXRoaW5nIGVsc2UiCittc2dzdHIgIiVzOiDDqXMgaW5jb21wYXRpYmxlIGFtYiBhbGd1bmEgYWx0cmEgY29zYSIKKworIzogcGFyc2Utb3B0aW9ucy5jOjkyIHBhcnNlLW9wdGlvbnMuYzo5NiBwYXJzZS1vcHRpb25zLmM6MzE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRha2VzIG5vIHZhbHVlIgorbXNnc3RyICIlcyBubyBhY2NlcHRhIGNhcCB2YWxvciIKKworIzogcGFyc2Utb3B0aW9ucy5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzbid0IGF2YWlsYWJsZSIKK21zZ3N0ciAiJXMgbm8gw6lzIGRpc3BvbmlibGUiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzoyMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIHZhbHVlIHdpdGggYW4gb3B0aW9uYWwgay9tL2cgc3VmZml4IgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzozODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW1iaWd1b3VzIG9wdGlvbjogJXMgKGNvdWxkIGJlIC0tJXMlcyBvciAtLSVzJXMpIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo0MjMgcGFyc2Utb3B0aW9ucy5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJkaWQgeW91IG1lYW4gYC0tJXNgICh3aXRoIHR3byBkYXNoZXMgPykiCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg2MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJvcGNpw7MgZGVzY29uZWd1ZGEgwqslc8K7IgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODYyCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gc3dpdGNoIGAlYyciCittc2dzdHIgIsKrc3dpdGNowrsgwqslY8K7IGRlc2NvbmVndXQiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBub24tYXNjaWkgb3B0aW9uIGluIHN0cmluZzogYCVzJyIKK21zZ3N0ciAib3BjacOzIG5vIGFzY2lpIGRlc2NvbmVndWRhIGVuIGxhIGNhZGVuYTogwqslc8K7IgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODg4CiBtc2dpZCAiLi4uIgogbXNnc3RyICIuLi4iCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo2OTEKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAidXNhZ2U6ICVzIgogbXNnc3RyICLDunM6ICVzIgpAQCAtMzU0NywyMDEgKzQ4MzYsMjgwIEBACiAjLiBUUkFOU0xBVE9SUzogdGhlIGNvbG9uIGhlcmUgc2hvdWxkIGFsaWduIHdpdGggdGhlCiAjLiBvbmUgaW4gInVzYWdlOiAlcyIgdHJhbnNsYXRpb24uCiAjLgotIzogcGFyc2Utb3B0aW9ucy5jOjY5NworIzogcGFyc2Utb3B0aW9ucy5jOjkxMwogIywgYy1mb3JtYXQKIG1zZ2lkICIgICBvcjogJXMiCiBtc2dzdHIgIiBvOiAlcyIKIAotIzogcGFyc2Utb3B0aW9ucy5jOjcwMAorIzogcGFyc2Utb3B0aW9ucy5jOjkxNgogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJXMiCiBtc2dzdHIgIiAgICAlcyIKIAotIzogcGFyc2Utb3B0aW9ucy5jOjczOQorIzogcGFyc2Utb3B0aW9ucy5jOjk1NQogbXNnaWQgIi1OVU0iCiBtc2dzdHIgIi1OVU0iCiAKLSM6IHBhcnNlLW9wdGlvbnMtY2IuYzozNwotIywgZnV6enksIGMtZm9ybWF0Ci1tc2dpZCAibWFsZm9ybWVkIGV4cGlyYXRpb24gZGF0ZSAnJXMnIgotbXNnc3RyICJmdWxsIGQnb3BjaW9ucyBtYWwgZm9ybWF0OiDCqyVzwrsiCisjOiBwYXJzZS1vcHRpb25zLmM6OTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsaWFzIG9mIC0tJXMiCittc2dzdHIgIsOgbGllcyBkZSAtLSVzIgogCi0jOiBwYXJzZS1vcHRpb25zLWNiLmM6MTA5CisjOiBwYXJzZS1vcHRpb25zLWNiLmM6MjAgcGFyc2Utb3B0aW9ucy1jYi5jOjI0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCittc2dzdHIgImwnb3BjacOzIMKrJXPCuyBlc3BlcmEgdW4gdmFsb3IgbnVtw6hyaWMiCisKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzo0MQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgZXhwaXJhdGlvbiBkYXRlICclcyciCittc2dzdHIgImRhdGEgZGUgdmVuY2ltZW50IMKrJXPCuyBtYWwgZm9ybWFkYSIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGV4cGVjdHMgXCJhbHdheXNcIiwgXCJhdXRvXCIsIG9yIFwibmV2ZXJcIiIKK21zZ3N0ciAibCdvcGNpw7Mgwqslc8K7IGVzcGVyYSDCq2Fsd2F5c8K7LCDCq2F1dG/CuyBvIMKrbmV2ZXLCuyIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjEzMCBwYXJzZS1vcHRpb25zLWNiLmM6MTQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAnJXMnIgotbXNnc3RyICJub20gZCdvYmplY3RlIG1hbCBmb3JtYXQgwqslc8K7IgorbXNnc3RyICJub20gZCdvYmplY3RlIMKrJXPCuyBtYWwgZm9ybWF0IgogCi0jOiBwYXRoLmM6ODk0CisjOiBwYXRoLmM6OTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBtYWtlICVzIHdyaXRhYmxlIGJ5IGdyb3VwIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGZlciAlcyBlc2NyaXZpYmxlIHBlbCBncnVwIgogCi0jOiBwYXRoc3BlYy5jOjEyOQorIzogcGF0aHNwZWMuYzoxMzAKIG1zZ2lkICJFc2NhcGUgY2hhcmFjdGVyICdcXCcgbm90IGFsbG93ZWQgYXMgbGFzdCBjaGFyYWN0ZXIgaW4gYXR0ciB2YWx1ZSIKIG1zZ3N0ciAiIgotIkVsIGNhcsOgY3RlciBkJ2VzY2FwYW1lbnQgJ1xcJyBubyBlc3TDoCBwZXJtw6hzIGNvbSBhIMO6bHRpbSBjYXLDoGN0ZXIgZW4gdW4gIgorIkVsIGNhcsOgY3RlciBkJ2VzY2FwYW1lbnQgwqtcXMK7IG5vIGVzdMOgIHBlcm3DqHMgY29tIGEgw7psdGltIGNhcsOgY3RlciBlbiB1biAiCiAidmFsb3IgZCd1biBhdHJpYnV0IgogCi0jOiBwYXRoc3BlYy5jOjE0NworIzogcGF0aHNwZWMuYzoxNDgKIG1zZ2lkICJPbmx5IG9uZSAnYXR0cjonIHNwZWNpZmljYXRpb24gaXMgYWxsb3dlZC4iCi1tc2dzdHIgIk5vbcOpcyBlcyBwZXJtZXQgdW5hIGVzcGVjaWZpY2FjacOzICdhdHRyOicuIgorbXNnc3RyICJOb23DqXMgZXMgcGVybWV0IHVuYSBlc3BlY2lmaWNhY2nDsyDCq2F0dHI6wrsuIgogCi0jOiBwYXRoc3BlYy5jOjE1MAorIzogcGF0aHNwZWMuYzoxNTEKIG1zZ2lkICJhdHRyIHNwZWMgbXVzdCBub3QgYmUgZW1wdHkiCiBtc2dzdHIgInVuYSBlc3BlY2lmaWNhY2nDsyBkJ2F0cmlidXQgbm8gcG90IGVzdGFyIGJ1aWRhIgogCi0jOiBwYXRoc3BlYy5jOjE5MworIzogcGF0aHNwZWMuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBhdHRyaWJ1dGUgbmFtZSAlcyIKIG1zZ3N0ciAibm9tIGQnYXRyaWJ1dCBubyB2w6BsaWQgJXMiCiAKLSM6IHBhdGhzcGVjLmM6MjU4CisjOiBwYXRoc3BlYy5jOjI1OQogbXNnaWQgImdsb2JhbCAnZ2xvYicgYW5kICdub2dsb2InIHBhdGhzcGVjIHNldHRpbmdzIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIiIKLSJlbHMgcGFyw6BtZXRyZXMgZCdlc3BlY2lmaWNhY2nDsyBkZSBjYW3DrSAnZ2xvYicgaSAnbm9nbG9iJyBnbG9iYWxzIHPDs24gIgorImVscyBwYXLDoG1ldHJlcyBkJ2VzcGVjaWZpY2FjacOzIGRlIGNhbcOtIMKrZ2xvYsK7IGkgwqtub2dsb2LCuyBnbG9iYWxzIHPDs24gIgogImluY29tcGF0aWJsZXMiCiAKLSM6IHBhdGhzcGVjLmM6MjY1CisjOiBwYXRoc3BlYy5jOjI2NgogbXNnaWQgIiIKICJnbG9iYWwgJ2xpdGVyYWwnIHBhdGhzcGVjIHNldHRpbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggYWxsIG90aGVyIGdsb2JhbCAiCiAicGF0aHNwZWMgc2V0dGluZ3MiCiBtc2dzdHIgIiIKLSJlbCBwYXLDoG1ldHJlIGQnZXNwZWNpZmljYWNpw7MgZGUgY2Ftw60gJ2xpdGVyYWwnIGdsb2JhbCDDqXMgaW5jb21wYXRpYmxlIGFtYiAiCisiZWwgcGFyw6BtZXRyZSBkJ2VzcGVjaWZpY2FjacOzIGRlIGNhbcOtIMKrbGl0ZXJhbMK7IGdsb2JhbCDDqXMgaW5jb21wYXRpYmxlIGFtYiAiCiAidG90cyBlbHMgYWx0cmVzIHBhcsOgbWV0cmVzIGQnZXNwZWNpZmljYWNpw7MgZGUgY2Ftw60gZ2xvYmFscyIKIAotIzogcGF0aHNwZWMuYzozMDUKKyM6IHBhdGhzcGVjLmM6MzA2CiBtc2dpZCAiaW52YWxpZCBwYXJhbWV0ZXIgZm9yIHBhdGhzcGVjIG1hZ2ljICdwcmVmaXgnIgotbXNnc3RyICJwYXLDoG1ldHJlIG5vIHbDoGxpZCBwZXIgYSBsYSBtw6BnaWEgZCdlc3BlY2lmaWNhY2nDsyBkZSBjYW3DrSAncHJlZml4JyIKK21zZ3N0ciAicGFyw6BtZXRyZSBubyB2w6BsaWQgcGVyIGEgbGEgbcOgZ2lhIGQnZXNwZWNpZmljYWNpw7MgZGUgY2Ftw60gwqtwcmVmaXjCuyIKIAotIzogcGF0aHNwZWMuYzozMjYKKyM6IHBhdGhzcGVjLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgcGF0aHNwZWMgbWFnaWMgJyUuKnMnIGluICclcyciCiBtc2dzdHIgIk3DoGdpYSBkJ2VzcGVjaWZpY2FjacOzIGRlIGNhbcOtIG5vIHbDoGxpZGEgJyUuKnMnIGVuIMKrJXPCuyIKIAotIzogcGF0aHNwZWMuYzozMzEKKyM6IHBhdGhzcGVjLmM6MzMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1pc3NpbmcgJyknIGF0IHRoZSBlbmQgb2YgcGF0aHNwZWMgbWFnaWMgaW4gJyVzJyIKLW1zZ3N0ciAiJyknIG1hbmNhbnQgYWwgZmluYWwgZGUgbGEgbcOgZ2lhIGQnZXNwZWNpZmljYWNpw7MgZGUgY2Ftw60gZW4gwqslc8K7IgorbXNnc3RyICLCqynCuyBtYW5jYW50IGFsIGZpbmFsIGRlIGxhIG3DoGdpYSBkJ2VzcGVjaWZpY2FjacOzIGRlIGNhbcOtIGVuIMKrJXPCuyIKIAotIzogcGF0aHNwZWMuYzozNjkKKyM6IHBhdGhzcGVjLmM6MzcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuaW1wbGVtZW50ZWQgcGF0aHNwZWMgbWFnaWMgJyVjJyBpbiAnJXMnIgotbXNnc3RyICJNw6BnaWEgZCdlc3BlY2lmaWNhY2nDsyBkZSBjYW3DrSBubyBpbXBsZW1lbnRhZGEgJyVjJyBlbiDCqyVzwrsiCittc2dzdHIgIk3DoGdpYSBkJ2VzcGVjaWZpY2FjacOzIGRlIGNhbcOtIG5vIGltcGxlbWVudGFkYSDCqyVjwrsgZW4gwqslc8K7IgogCi0jOiBwYXRoc3BlYy5jOjQyOAorIzogcGF0aHNwZWMuYzo0MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6ICdsaXRlcmFsJyBhbmQgJ2dsb2InIGFyZSBpbmNvbXBhdGlibGUiCi1tc2dzdHIgIiVzOiAnbGl0ZXJhbCcgaSAnZ2xvYicgc8OzbiBpbmNvbXBhdGlibGVzIgorbXNnc3RyICIlczogwqtsaXRlcmFswrsgaSDCq2dsb2LCuyBzw7NuIGluY29tcGF0aWJsZXMiCiAKLSM6IHBhdGhzcGVjLmM6NDQxCisjOiBwYXRoc3BlYy5jOjQ0MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkiCiBtc2dzdHIgIiVzOiDCqyVzwrsgw6lzIGZvcmEgZGVsIGRpcMOyc2l0IgogCi0jOiBwYXRoc3BlYy5jOjUxNQorIzogcGF0aHNwZWMuYzo1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyAobW5lbW9uaWM6ICclYycpIgotbXNnc3RyICLCqyVzwrsgKG1uZW3Dsm5pYzogJyVjJykiCittc2dzdHIgIsKrJXPCuyAobW5lbcOybmljOiDCqyVjwrspIgogCi0jOiBwYXRoc3BlYy5jOjUyNQorIzogcGF0aHNwZWMuYzo1MjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHBhdGhzcGVjIG1hZ2ljIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBjb21tYW5kOiAlcyIKIG1zZ3N0ciAiIgogIiVzOiBhcXVlc3RhIG9yZHJlIG5vIGVzdMOgIGFkbWVzYSBhbWIgbGEgbcOgZ2lhIGQnZXNwZWNpZmljYWNpw7MgZGUgY2Ftw606ICVzIgogCi0jOiBwYXRoc3BlYy5jOjU5MgorIzogcGF0aHNwZWMuYzo1OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aHNwZWMgJyVzJyBpcyBiZXlvbmQgYSBzeW1ib2xpYyBsaW5rIgogbXNnc3RyICJsJ2VzcGVjaWZpY2FjacOzIGRlIGNhbcOtIMKrJXPCuyDDqXMgbcOpcyBlbmxsw6AgZCd1biBlbmxsYcOnIHNpbWLDsmxpYyIKIAotIzogcGt0LWxpbmUuYzoxMDQKLSMsIGZ1enp5Ci1tc2dpZCAiZmx1c2ggcGFja2V0IHdyaXRlIGZhaWxlZCIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBlbCBmaXR4ZXIgZCdldGlxdWV0YSIKLQotIzogcGt0LWxpbmUuYzoxNDIgcGt0LWxpbmUuYzoyMjgKLW1zZ2lkICJwcm90b2NvbCBlcnJvcjogaW1wb3NzaWJseSBsb25nIGxpbmUiCisjOiBwYXRoc3BlYy5jOjYzOAorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIGlzIGJhZGx5IHF1b3RlZDogJXMiCiBtc2dzdHIgIiIKIAotIzogcGt0LWxpbmUuYzoxNTggcGt0LWxpbmUuYzoxNjAKLSMsIGZ1enp5Ci1tc2dpZCAicGFja2V0IHdyaXRlIHdpdGggZm9ybWF0IGZhaWxlZCIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBlbCBmaXR4ZXIgZCdldGlxdWV0YSIKKyM6IHBrdC1saW5lLmM6OTIKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmx1c2ggcGFja2V0IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIGVsIHBhcXVldCBkZSBidWlkYXRnZSIKIAotIzogcGt0LWxpbmUuYzoxOTIKKyM6IHBrdC1saW5lLmM6OTkKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZGVsaW0gcGFja2V0IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIGVsIHBhcXVldCBkZWxpbSIKKworIzogcGt0LWxpbmUuYzoxMDYKK21zZ2lkICJmbHVzaCBwYWNrZXQgd3JpdGUgZmFpbGVkIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGVzY3JpdXJlIGVsIHBhcXVldCBkZSBidWlkYXRnZSIKKworIzogcGt0LWxpbmUuYzoxNDYgcGt0LWxpbmUuYzoyMzIKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogaW1wb3NzaWJseSBsb25nIGxpbmUiCittc2dzdHIgImVycm9yIGRlIHByb3RvY29sOiBsb25naXR1ZCBkZSBsw61uaWEgaW1wb3NzaWJsZSIKKworIzogcGt0LWxpbmUuYzoxNjIgcGt0LWxpbmUuYzoxNjQKK21zZ2lkICJwYWNrZXQgd3JpdGUgd2l0aCBmb3JtYXQgZmFpbGVkIgorbXNnc3RyICJoYSBmYWxsYXQgbCdlc2NyaXB0dXJhIGRlbCBwYXF1ZXQgYW1iIGZvcm1hdCIKKworIzogcGt0LWxpbmUuYzoxOTYKIG1zZ2lkICJwYWNrZXQgd3JpdGUgZmFpbGVkIC0gZGF0YSBleGNlZWRzIG1heCBwYWNrZXQgc2l6ZSIKIG1zZ3N0ciAiIgorIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgZWwgcGFxdWV0IC0gbGVzIGRhZGVzIGV4Y2VkZWl4ZW4gbGEgbWlkYSBtw6B4aW1hIGRlbCAiCisicGFxdWV0IgogCi0jOiBwa3QtbGluZS5jOjE5OSBwa3QtbGluZS5jOjIwNgotIywgZnV6enkKKyM6IHBrdC1saW5lLmM6MjAzIHBrdC1saW5lLmM6MjEwCiBtc2dpZCAicGFja2V0IHdyaXRlIGZhaWxlZCIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBlbCBmaXR4ZXIgZCdldGlxdWV0YSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBlbCBwYXF1ZXQiCiAKLSM6IHBrdC1saW5lLmM6MjkxCi0jLCBmdXp6eQorIzogcGt0LWxpbmUuYzoyOTUKIG1zZ2lkICJyZWFkIGVycm9yIgotbXNnc3RyICJlcnJvciBkZSBsZWN0dXJhIGQnZW50cmFkYSIKK21zZ3N0ciAiZXJyb3IgZGUgbGVjdHVyYSIKIAotIzogcGt0LWxpbmUuYzoyOTkKLSMsIGZ1enp5CisjOiBwa3QtbGluZS5jOjMwMwogbXNnaWQgInRoZSByZW1vdGUgZW5kIGh1bmcgdXAgdW5leHBlY3RlZGx5IgotbXNnc3RyICJFbCBjb3N0YXQgcmVtb3QgaGEgcGVuamF0IGVuIGVsIG1vbWVudCBkZSBjb250YWN0ZSBpbmljaWFsIgorbXNnc3RyICJlbCByZW1vdCBoYSBwZW5qYXQgaW5lc3BlcmFkYW1lbnQiCiAKLSM6IHBrdC1saW5lLmM6MzI3Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IHBrdC1saW5lLmM6MzMxCisjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sIGVycm9yOiBiYWQgbGluZSBsZW5ndGggY2hhcmFjdGVyOiAlLjRzIgotbXNnc3RyICJlcnJvciBkZSBwcm90b2NvbDogY2Fww6dhbGVyYSBkZSBwYXF1ZXQgZXJyw7JuaWEiCittc2dzdHIgImVycm9yIGRlIHByb3RvY29sOiBjYXLDoGN0ZXIgZGUgbG9uZ2l0dWQgZGUgbMOtbmlhIGVycm9uaTogJS40cyIKIAotIzogcGt0LWxpbmUuYzozMzcgcGt0LWxpbmUuYzozNDIKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogcGt0LWxpbmUuYzozNDEgcGt0LWxpbmUuYzozNDYKKyMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBsaW5lIGxlbmd0aCAlZCIKLW1zZ3N0ciAiZXJyb3IgZGUgcHJvdG9jb2w6IGNhcMOnYWxlcmEgZGUgcGFxdWV0IGVycsOybmlhIgorbXNnc3RyICJlcnJvciBkZSBwcm90b2NvbDogbG9uZ2l0dWQgZGUgbMOtbmlhIGVycsOybmlhICVkIgogCi0jOiBwcmVsb2FkLWluZGV4LmM6MTE4Ci0jLCBmdXp6eQorIzogcGt0LWxpbmUuYzozNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlIGVycm9yOiAlcyIKK21zZ3N0ciAiZXJyb3IgcmVtb3Q6ICVzIgorCisjOiBwcmVsb2FkLWluZGV4LmM6MTE5CiBtc2dpZCAiUmVmcmVzaGluZyBpbmRleCIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBhY3R1YWxpdHphciBsJ8OtbmRleCIKK21zZ3N0ciAiUydlc3TDoCBhY3R1YWxpdHphbnQgbCfDrW5kZXgiCiAKLSM6IHByZWxvYWQtaW5kZXguYzoxMzcKKyM6IHByZWxvYWQtaW5kZXguYzoxMzgKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGhyZWFkZWQgbHN0YXQ6ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGZpbDogJXMiCiAKLSM6IHByZXR0eS5jOjk2MgorIzogcHJldHR5LmM6OTgxCiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIC0tcHJldHR5IGZvcm1hdCIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgZWwgZm9ybWF0IC0tcHJldHR5IgogCi0jOiByYW5nZS1kaWZmLmM6NTYKLSMsIGZ1enp5CisjOiBwcm9taXNvci1yZW1vdGUuYzoyMworbXNnaWQgIlJlbW90ZSB3aXRoIG5vIFVSTCIKK21zZ3N0ciAiUmVtb3Qgc2Vuc2UgVVJMIgorCisjOiBwcm9taXNvci1yZW1vdGUuYzo1OAorIywgYy1mb3JtYXQKK21zZ2lkICJwcm9taXNvciByZW1vdGUgbmFtZSBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIgorbXNnc3RyICIiCisKKyM6IHJhbmdlLWRpZmYuYzo3NQogbXNnaWQgImNvdWxkIG5vdCBzdGFydCBgbG9nYCIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBmZXIgc3RhdCBhICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGluaWNpYXIgwqtsb2fCuyIKIAotIzogcmFuZ2UtZGlmZi5jOjU5Ci0jLCBmdXp6eQorIzogcmFuZ2UtZGlmZi5jOjc3CiBtc2dpZCAiY291bGQgbm90IHJlYWQgYGxvZ2Agb3V0cHV0IgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBsYSBzb3J0aWRhIGRlICdzaG93JyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBsbGVnaXIgbGEgc29ydGlkYSBkZSDCq2xvZ8K7IgogCi0jOiByYW5nZS1kaWZmLmM6NzQgc2VxdWVuY2VyLmM6NDc2NAorIzogcmFuZ2UtZGlmZi5jOjk2IHNlcXVlbmNlci5jOjUxNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbW1pdCAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsYSBjb21pc3Npw7Mgwqslc8K7IgogCi0jOiByYW5nZS1kaWZmLmM6MjI0Ci0jLCBmdXp6eQorIzogcmFuZ2UtZGlmZi5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgZ2l0IGhlYWRlciAnJS4qcyciCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGxhIGNhcMOnYWxlcmEgZGUgbGEgZ2lmIMKrJS4qc8K7IgorCisjOiByYW5nZS1kaWZmLmM6Mjg1CiBtc2dpZCAiZmFpbGVkIHRvIGdlbmVyYXRlIGRpZmYiCi1tc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXhlY3V0YXIgwqslc8K7IgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGdlbmVyYXIgZWwgZGlmZiIKIAotIzogcmFuZ2UtZGlmZi5jOjQ1NSByYW5nZS1kaWZmLmM6NDU3Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IHJhbmdlLWRpZmYuYzo1MTggcmFuZ2UtZGlmZi5jOjUyMAorIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgbG9nIGZvciAnJXMnIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBlbCBmaXR4ZXIgZGUgcmVnaXN0cmUgwqslc8K7IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBlbCBmaXR4ZXIgZGUgcmVnaXN0cmUgcGVyIMKrJXPCuyIKIAotIzogcmVhZC1jYWNoZS5jOjE0OTAKLSMsIGZ1enp5CisjOiByZWFkLWNhY2hlLmM6NjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIndpbGwgbm90IGFkZCBmaWxlIGFsaWFzICclcycgKCclcycgYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgpIgorbXNnc3RyICJubyBzJ2FmZWdpcsOgIGwnw6BsaWVzIMKrJXPCuzogKMKrJXPCuyBqYSBleGlzdGVpeCBlbiBsJ8OtbmRleCkiCisKKyM6IHJlYWQtY2FjaGUuYzo2OTYKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGFuIGVtcHR5IGJsb2IgaW4gdGhlIG9iamVjdCBkYXRhYmFzZSIKK21zZ3N0ciAibm8gZXMgcG90IGNyZWFyIHVuIGJsb2IgYnVpdCBhIGxhIGJhc2UgZGUgZGFkZXMgZCdvYmplY3RlcyIKKworIzogcmVhZC1jYWNoZS5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2FuIG9ubHkgYWRkIHJlZ3VsYXIgZmlsZXMsIHN5bWJvbGljIGxpbmtzIG9yIGdpdC1kaXJlY3RvcmllcyIKK21zZ3N0ciAiIgorIiVzOiBub23DqXMgcG90IGFmZWdpciBmaXR4ZXJzIG5vcm1hbHMsIGVubGxhw6dvcyBzaW1iw7JsaWNzIG8gZGlyZWN0b3JpcyBnaXQiCisKKyM6IHJlYWQtY2FjaGUuYzo3MjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgaGF2ZSBhIGNvbW1pdCBjaGVja2VkIG91dCIKK21zZ3N0ciAiwqslc8K7IG5vIGFzc2VueWFsYSB1bmEgY29taXNzacOzIgorCisjOiByZWFkLWNhY2hlLmM6Nzc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbmRleCBmaWxlICclcyciCittc2dzdHIgIm5vIGVzIHBvdCBsbGVnaXIgaW5kZXhhciBlbCBmaXR4ZXIgwqslc8K7IgorCisjOiByZWFkLWNhY2hlLmM6Nzk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhZGQgJyVzJyB0byBpbmRleCIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBhZmVnaXIgwqslc8K7IGEgbCfDrW5kZXgiCisKKyM6IHJlYWQtY2FjaGUuYzo4MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJyVzJyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBmZXIgwqtzdGF0wrsgYSDCqyVzwrsiCisKKyM6IHJlYWQtY2FjaGUuYzoxMzI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgYXBwZWFycyBhcyBib3RoIGEgZmlsZSBhbmQgYXMgYSBkaXJlY3RvcnkiCittc2dzdHIgIsKrJXPCuyBhcGFyZWl4IGNvbSBhIGZpdHhlciBpIGNvbSBhIGRpcmVjdG9yaSIKKworIzogcmVhZC1jYWNoZS5jOjE1MzEKIG1zZ2lkICJSZWZyZXNoIGluZGV4IgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFjdHVhbGl0emFyIGwnw61uZGV4IgorbXNnc3RyICJBY3R1YWxpdHphIGwnw61uZGV4IgogCi0jOiByZWFkLWNhY2hlLmM6MTYwNAorIzogcmVhZC1jYWNoZS5jOjE2NDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImluZGV4LnZlcnNpb24gc2V0LCBidXQgdGhlIHZhbHVlIGlzIGludmFsaWQuXG4iCkBAIC0zNzUwLDcgKzUxMTgsNyBAQAogImluZGV4LnZlcnNpb24gZXN0w6AgZXN0YWJsZXJ0YSwgcGVyw7IgZWwgdmFsb3Igbm8gw6lzIHbDoGxpZC5cbiIKICJTJ2VzdMOgIHVzYW50IGxhIHZlcnNpw7MgJWkiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNjE0CisjOiByZWFkLWNhY2hlLmM6MTY1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiR0lUX0lOREVYX1ZFUlNJT04gc2V0LCBidXQgdGhlIHZhbHVlIGlzIGludmFsaWQuXG4iCkBAIC0zNzU5LDYwICs1MTI3LDE1MSBAQAogIkdJVF9JTkRFWF9WRVJTSU9OIGVzdMOgIGVzdGFibGVydGEsIHBlcsOyIGVsIHZhbG9yIG5vIMOpcyB2w6BsaWQuXG4iCiAiUydlc3TDoCB1c2FudCBsYSB2ZXJzacOzICVpIgogCi0jOiByZWFkLWNhY2hlLmM6MTc5MgorIzogcmVhZC1jYWNoZS5jOjE3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHNpZ25hdHVyZSAweCUwOHgiCittc2dzdHIgInNpZ25hdHVyYSBtYWxtZXNhIDB4JTA4eCIKKworIzogcmVhZC1jYWNoZS5jOjE3MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJWQiCittc2dzdHIgInZlcnNpw7MgZCfDrW5kZXggaW5jb3JyZWN0YSAlZCIKKworIzogcmVhZC1jYWNoZS5jOjE3MjQKK21zZ2lkICJiYWQgaW5kZXggZmlsZSBzaGExIHNpZ25hdHVyZSIKK21zZ3N0ciAic2lnbmF0dXJhIHNoYTEgbWFsbWVzYSBhbCBmaXR4ZXIgZCfDrW5kZXgiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzU0CisjLCBjLWZvcm1hdAorbXNnaWQgImluZGV4IHVzZXMgJS40cyBleHRlbnNpb24sIHdoaWNoIHdlIGRvIG5vdCB1bmRlcnN0YW5kIgorbXNnc3RyICJsJ8OtbmRleCB1c2EgbCdleHRlbnNpw7MgJS40cywgcXVlIG5vIGVzIHBvdCBlbnRlbmRyZSIKKworIzogcmVhZC1jYWNoZS5jOjE3NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJS40cyBleHRlbnNpb24iCittc2dzdHIgInMnZXN0w6AgaWdub3JhbnQgbCdleHRlbnNpw7MgJS40cyIKKworIzogcmVhZC1jYWNoZS5jOjE3OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBpbmRleCBlbnRyeSBmb3JtYXQgMHglMDh4IgorbXNnc3RyICJmb3JtYXQgZCdlbnRyYWRhIGQnw61uZGV4IGRlc2NvbmVndWRhIMKrMHglMDh4wrsiCisKKyM6IHJlYWQtY2FjaGUuYzoxODA5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBuYW1lIGZpZWxkIGluIHRoZSBpbmRleCwgbmVhciBwYXRoICclcyciCittc2dzdHIgImNhbXAgZGVsIG5vbSBtYWwgZm9ybWF0YXQgbCdpbmRleCwgY2Ftw60gYSBwcm9wIMKrJXPCuyIKKworIzogcmVhZC1jYWNoZS5jOjE4NjYKK21zZ2lkICJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBpbiBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiByZWFkLWNhY2hlLmM6MTk2MCByZXJlcmUuYzo1NjUgcmVyZXJlLmM6NTk5IHJlcmVyZS5jOjExMTEgYnVpbHRpbi9hZGQuYzo0NTgKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTc3IGJ1aWx0aW4vY2hlY2tvdXQuYzoyODkgYnVpbHRpbi9jaGVja291dC5jOjU4NQotIzogYnVpbHRpbi9jaGVja291dC5jOjk1MyBidWlsdGluL2NsZWFuLmM6OTU0IGJ1aWx0aW4vY29tbWl0LmM6MzQzCi0jOiBidWlsdGluL2RpZmYtdHJlZS5jOjExNSBidWlsdGluL2dyZXAuYzo0ODkgYnVpbHRpbi9tdi5jOjE0NAotIzogYnVpbHRpbi9yZXNldC5jOjI0NCBidWlsdGluL3JtLmM6MjcwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzozMjkKKyM6IHJlYWQtY2FjaGUuYzoxODY5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGFnZSBlbnRyaWVzIGZvciBtZXJnZWQgZmlsZSAnJXMnIgorbXNnc3RyICJub20gZCdpZGVudGl0YXQgYnVpdCAocGVyIDwlcz4pIG5vIMOpcyBwZXJtw6hzIgorCisjOiByZWFkLWNhY2hlLmM6MTg3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5vcmRlcmVkIHN0YWdlIGVudHJpZXMgZm9yICclcyciCittc2dzdHIgIm5vIHMnaGFuIHBvZ3V0IGNyZWFyIGRpcmVjdG9yaXMgcGVyICVzIgorCisjOiByZWFkLWNhY2hlLmM6MTk3OCByZWFkLWNhY2hlLmM6MjI2NiByZXJlcmUuYzo1NjUgcmVyZXJlLmM6NTk5IHJlcmVyZS5jOjExMTEKKyM6IGJ1aWx0aW4vYWRkLmM6NDk5IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTc4IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NzAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2NTQgYnVpbHRpbi9jbGVhbi5jOjk2NyBidWlsdGluL2NvbW1pdC5jOjM2NworIzogYnVpbHRpbi9kaWZmLXRyZWUuYzoxMjAgYnVpbHRpbi9ncmVwLmM6NDk5IGJ1aWx0aW4vbXYuYzoxNDUKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyNDYgYnVpbHRpbi9ybS5jOjI3MSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MzMyCiBtc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IgogbXNnc3RyICJmaXR4ZXIgZCfDrW5kZXggbWFsbcOocyIKIAotIzogcmVhZC1jYWNoZS5jOjIxMDEKKyM6IHJlYWQtY2FjaGUuYzoyMTE5CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxvYWRfY2FjaGVfZW50cmllcyB0aHJlYWQ6ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGZpbDogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzoyMTE0CisjOiByZWFkLWNhY2hlLmM6MjEzMgogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGpvaW4gbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgZmlsOiAlcyIKIAotIzogcmVhZC1jYWNoZS5jOjIyMDAKKyM6IHJlYWQtY2FjaGUuYzoyMTY1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW5kZXggZmlsZSBvcGVuIGZhaWxlZCIKK21zZ3N0ciAiJXM6IHMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gYWN0dWFsaXR6YXIgZWxzIGZpdHhlcnMiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTY5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogY2Fubm90IHN0YXQgdGhlIG9wZW4gaW5kZXgiCittc2dzdHIgIm5vIGVzIHBvdCBsbGVnaXIgbCfDrW5kZXgiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTczCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbmRleCBmaWxlIHNtYWxsZXIgdGhhbiBleHBlY3RlZCIKK21zZ3N0ciAiJXM6IGZpdHhlciBkJ8OtbmRleCBtw6lzIHBldGl0IHF1ZSBzJ2VzcGVyYXZhIgorCisjOiByZWFkLWNhY2hlLmM6MjE3NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG1hcCBpbmRleCBmaWxlIgorbXNnc3RyICIlczogbm8gZXMgcG90IG1hcGFyIGVsIGZpdHhlciBkJ8OtbmRleCIKKworIzogcmVhZC1jYWNoZS5jOjIyMTkKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9pbmRleF9leHRlbnNpb25zIHRocmVhZDogJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgZmlsOiAlcyIKIAotIzogcmVhZC1jYWNoZS5jOjIyMjcKKyM6IHJlYWQtY2FjaGUuYzoyMjQ2CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gam9pbiBsb2FkX2luZGV4X2V4dGVuc2lvbnMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBjcmVhciBmaWw6ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6Mjk1MyBzZXF1ZW5jZXIuYzo0NzI3IHdyYXBwZXIuYzo2NTggYnVpbHRpbi9tZXJnZS5jOjEwODYKKyM6IHJlYWQtY2FjaGUuYzoyMjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmcmVzaGVuIHNoYXJlZCBpbmRleCAnJXMnIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHJlZnJlc2NhciBsJ8OtbmRleCBjb21wYXJ0aXQgwqslc8K7IgorCisjOiByZWFkLWNhY2hlLmM6MjMyNQorIywgYy1mb3JtYXQKK21zZ2lkICJicm9rZW4gaW5kZXgsIGV4cGVjdCAlcyBpbiAlcywgZ290ICVzIgorbXNnc3RyICLDrW5kZXggbWFsbcOocywgcydlc3BlcmF2YSAlcyBhICVzLCBzJ2hhIHJlYnV0ICVzIgorCisjOiByZWFkLWNhY2hlLmM6MzAyMSBzdHJidWYuYzoxMTQ1IHdyYXBwZXIuYzo2MjIgYnVpbHRpbi9tZXJnZS5jOjExMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNsb3NlICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgdGFuY2FyIMKrJXPCuyIKIAotIzogcmVhZC1jYWNoZS5jOjMwMjYgc2VxdWVuY2VyLmM6MjIwMyBzZXF1ZW5jZXIuYzozNTkyCisjOiByZWFkLWNhY2hlLmM6MzEyNCBzZXF1ZW5jZXIuYzoyNDI5IHNlcXVlbmNlci5jOjQwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN0YXQgJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBmZXIgc3RhdCBhIMKrJXPCuyIKIAotIzogcmVhZC1jYWNoZS5jOjMwMzkKKyM6IHJlYWQtY2FjaGUuYzozMTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuIGdpdCBkaXI6ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyIGVsIGRpcmVjdG9yaSBnaXQ6ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6MzA1MQorIzogcmVhZC1jYWNoZS5jOjMxNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVubGluazogJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZGVzZW5sbGHDp2FyOiAlcyIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTAKKyM6IHJlYWQtY2FjaGUuYzozMTc0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZml4IHBlcm1pc3Npb24gYml0cyBvbiAnJXMnIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHJlc29sZHJlIGxhIHJldmlzacOzOiAlcyIKKworIzogcmVhZC1jYWNoZS5jOjMzMjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW5ub3QgZHJvcCB0byBzdGFnZSAjMCIKK21zZ3N0ciAibm8gZXMgcG90IGNhbnZpYXIgZGUgZGlyZWN0b3JpIGEgJXMiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bnJlY29nbml6ZWQgc2V0dGluZyAlcyBmb3Igb3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmluZy4iCittc2dzdHIgIiIKKyJObyBzJ2hhIHJlY29uZWd1dCBlbCBwYXLDoG1ldHJlICVzIHBlciByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4gUydlc3TDoCAiCisiaWdub3JhbnQuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzozNQogIywgZnV6enkKIG1zZ2lkICIiCiAiXG4iCkBAIC0zODQ4LDE2ICs1MzA3LDIzIEBACiAiXG4iCiAiRXMgcG90IGNhbnZpYXIgbCdvcmRyZSBkJ2FxdWVzdGVzIGzDrW5pZXM7IHMnZXhlY3V0ZW4gZGUgZGFsdCBhIGJhaXguXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjMxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNzMKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZCkiCittc2dpZF9wbHVyYWwgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kcykiCittc2dzdHJbMF0gIlJlYmFzYSAkc2hvcnRyZXZpc2lvbnMgc29icmUgJHNob3J0b250byAoJHRvZG9jb3VudCBvcmRyZSkiCittc2dzdHJbMV0gIlJlYmFzYSAkc2hvcnRyZXZpc2lvbnMgc29icmUgJHNob3J0b250byAoJHRvZG9jb3VudCBvcmRyZXMpIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo2NSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjI4CiBtc2dpZCAiIgogIlxuIgogIkRvIG5vdCByZW1vdmUgYW55IGxpbmUuIFVzZSAnZHJvcCcgZXhwbGljaXRseSB0byByZW1vdmUgYSBjb21taXQuXG4iCiBtc2dzdHIgIiIKICJcbiIKLSJObyBlbGltaW5ldSBjYXAgbMOtbmlhLiBVc2V1ICdkcm9wJyBleHBsw61jaXRhbWVudCBwZXIgYSBlbGltaW5hciB1bmEgIgorIk5vIGVsaW1pbmV1IGNhcCBsw61uaWEuIFVzZXUgwqtkcm9wwrsgZXhwbMOtY2l0YW1lbnQgcGVyIGEgZWxpbWluYXIgdW5hICIKICJjb21pc3Npw7MuXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjM0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNzcKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjY4IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMzIKIG1zZ2lkICIiCiAiXG4iCiAiSWYgeW91IHJlbW92ZSBhIGxpbmUgaGVyZSBUSEFUIENPTU1JVCBXSUxMIEJFIExPU1QuXG4iCkBAIC0zODY1LDcgKzUzMzEsNyBAQAogIlxuIgogIlNpIGVsaW1pbmV1IHVuYSBsw61uaWEgYXF1w60sIEVTIFBFUkRSw4AgQVFVRUxMQSBDT01JU1NJw5MuXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQwIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MTYKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjc0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NzEKIG1zZ2lkICIiCiAiXG4iCiAiWW91IGFyZSBlZGl0aW5nIHRoZSB0b2RvIGZpbGUgb2YgYW4gb25nb2luZyBpbnRlcmFjdGl2ZSByZWJhc2UuXG4iCkBAIC0zODc5LDcgKzUzNDUsNyBAQAogIiAgICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKICJcbiIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6NDUgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg5MworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NzkgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0OAogbXNnaWQgIiIKICJcbiIKICJIb3dldmVyLCBpZiB5b3UgcmVtb3ZlIGV2ZXJ5dGhpbmcsIHRoZSByZWJhc2Ugd2lsbCBiZSBhYm9ydGVkLlxuIgpAQCAtMzg4OSw0OTQgKzUzNTUsNjM4IEBACiAiTm8gb2JzdGFudCwgc2kgZWxpbWluZXUgdG90LCBzJ2F2b3J0YXLDoCBlbCDCq3JlYmFzZcK7LlxuIgogIlxuIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo1MSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTAwCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo4NSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTU1CiBtc2dpZCAiTm90ZSB0aGF0IGVtcHR5IGNvbW1pdHMgYXJlIGNvbW1lbnRlZCBvdXQiCi1tc2dzdHIgIk5vdGEgcXVlIGxlcyBjb21pc3Npb25zIGJ1aWRlcyBlc3RhbiBjb21lbnRhZGVzIgorbXNnc3RyICJUaW5ndWV1IGVuIGNvbXB0ZSBxdWUgbGVzIGNvbWlzc2lvbnMgYnVpZGVzIGVzdGFuIGNvbWVudGFkZXMiCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjYyIHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjc1IHNlcXVlbmNlci5jOjIxODYKLSM6IHNlcXVlbmNlci5jOjQ1MDUgc2VxdWVuY2VyLmM6NDU2MSBzZXF1ZW5jZXIuYzo0ODM2CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMDUgcmVyZXJlLmM6NDg1IHJlcmVyZS5jOjY5MiBzZXF1ZW5jZXIuYzozNTM2CisjOiBzZXF1ZW5jZXIuYzozNTYyIHNlcXVlbmNlci5jOjUyNjMgYnVpbHRpbi9mc2NrLmM6MzQ2IGJ1aWx0aW4vcmViYXNlLmM6MjU0CiAjLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCByZWFkICclcycuIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciDCqyVzwrsuIgorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIMKrJXPCuyIKIAotIzogcmVmcy5jOjE5MgotIywgZnV6enksIGMtZm9ybWF0CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNvcHkgJyVzJyB0byAnJXMnLiIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBjb3BpYXIgwqslc8K7IGEgwqslc8K7LiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTczCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXYXJuaW5nOiBzb21lIGNvbW1pdHMgbWF5IGhhdmUgYmVlbiBkcm9wcGVkIGFjY2lkZW50YWxseS5cbiIKKyJEcm9wcGVkIGNvbW1pdHMgKG5ld2VyIHRvIG9sZGVyKTpcbiIKK21zZ3N0ciAiIgorIkFkdmVydMOobmNpYTogcG90IHNlciBxdWUgYWxndW5lcyBjb21pc3Npb25zIHMnaGFnaW4gZGVzY2FydGF0ICIKKyJhY2NpZGVudGFsbWVudC5cbiIKKyJMZXMgY29taXNzaW9ucyBkZXNjYXJ0YWRlcyAobcOpcyBub3ZhIGEgbcOpcyB2ZWxsYSk6XG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjE4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVG8gYXZvaWQgdGhpcyBtZXNzYWdlLCB1c2UgXCJkcm9wXCIgdG8gZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuXG4iCisiXG4iCisiVXNlICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyB0byBjaGFuZ2UgdGhlIGxldmVsIG9mICIKKyJ3YXJuaW5ncy5cbiIKKyJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCisiXG4iCittc2dzdHIgIiIKKyJQZXIgYSBldml0YXIgYXF1ZXN0IG1pc3NhdGdlLCB1c2V1IFwiZHJvcFwiIHBlciBhIGVsaW1pbmFyIGV4cGzDrWNpdGFtZW50IHVuYSAiCisiY29taXNzacOzLlxuIgorIlxuIgorIlVzZXUgJ2dpdCBjb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2snIHBlciBhIGNhbnZpYXIgZWwgbml2ZWxsICIKKyJkJ2FkdmVydMOobmNpZXMuXG4iCisiRWxzIGNvbXBvcnRhbWVudHMgcG9zc2libGVzIHPDs246IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCisKKyM6IHJlZnMuYzoyNjIKKyMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBvYmplY3QhIgotbXNnc3RyICLCqyVzwrsgbm8gYXNzZW55YWxhIHVuYSBjb21pc3Npw7MiCittc2dzdHIgIiVzIG5vIGFwdW50YSBhIHVuIG9iamVjdGUgdsOgbGlkIgogCi0jOiByZWZzLmM6NTgzCisjOiByZWZzLmM6NjY3CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyBkYW5nbGluZyBzeW1yZWYgJXMiCiBtc2dzdHIgInMnZXN0w6AgaWdub3JhbnQgbGEgcmVmZXLDqG5jaWEgdHJlbmNhZGEgJXMiCiAKLSM6IHJlZnMuYzo1ODUgcmVmLWZpbHRlci5jOjE5NTEKKyM6IHJlZnMuYzo2NjkgcmVmLWZpbHRlci5jOjIwOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgYnJva2VuIHJlZiAlcyIKIG1zZ3N0ciAicydlc3TDoCBpZ25vcmFudCBsYSByZWZlcsOobmNpYSB0cmVuY2FkYSAlcyIKIAotIzogcmVmcy5jOjcxMQotIywgZnV6enksIGMtZm9ybWF0CisjOiByZWZzLmM6ODA0CisjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmc6ICVzIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyIMKrJXPCuyBwZXIgYSBlc2NyaXB0dXJhIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyIMKrJXPCuyBwZXIgYSBlc2NyaXB0dXJhOiAlcyIKIAotIzogcmVmcy5jOjcyMSByZWZzLmM6NzcyCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IHJlZnMuYzo4MTQgcmVmcy5jOjg2NQorIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCByZWYgJyVzJyIKLW1zZ3N0ciAiTm8gcydoYSBwb2d1dCBsbGVnaXIgbGEgcmVmZXLDqG5jaWEgJXMiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGxhIHJlZmVyw6huY2lhIMKrJXPCuyIKIAotIzogcmVmcy5jOjcyNwotIywgZnV6enksIGMtZm9ybWF0CisjOiByZWZzLmM6ODIwCisjLCBjLWZvcm1hdAogbXNnaWQgInJlZiAnJXMnIGFscmVhZHkgZXhpc3RzIgotbXNnc3RyICLCqyVzwrsgamEgZXhpc3RlaXgiCittc2dzdHIgImxhIHJlZmVyw6huY2lhIMKrJXPCuyBqYSBleGlzdGVpeCIKIAotIzogcmVmcy5jOjczMgorIzogcmVmcy5jOjgyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG9iamVjdCBJRCB3aGVuIHdyaXRpbmcgJyVzJyIKLW1zZ3N0ciAiIgorbXNnc3RyICJJRCBkJ29iamVjdGUgbm8gZXNwZXJhdCBlbiBlc2NyaXVyZSDCqyVzwrsiCiAKLSM6IHJlZnMuYzo3NDAgc2VxdWVuY2VyLmM6Mzk0IHNlcXVlbmNlci5jOjI1MTAgc2VxdWVuY2VyLmM6MjYzNgotIzogc2VxdWVuY2VyLmM6MjY1MCBzZXF1ZW5jZXIuYzoyODc3IHNlcXVlbmNlci5jOjQ3MjUgc2VxdWVuY2VyLmM6NDc4OAotIzogd3JhcHBlci5jOjY1NgorIzogcmVmcy5jOjgzMyBzZXF1ZW5jZXIuYzo0MDUgc2VxdWVuY2VyLmM6Mjc5MyBzZXF1ZW5jZXIuYzoyOTk3CisjOiBzZXF1ZW5jZXIuYzozMDExIHNlcXVlbmNlci5jOjMyNjkgc2VxdWVuY2VyLmM6NTE3OSBzdHJidWYuYzoxMTQyCisjOiB3cmFwcGVyLmM6NjIwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSB0byAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIGEgwqslc8K7IgogCi0jOiByZWZzLmM6NzY3IHNlcXVlbmNlci5jOjQ3MjMgc2VxdWVuY2VyLmM6NDc4MiB3cmFwcGVyLmM6MjI1IHdyYXBwZXIuYzozOTUKLSM6IGJ1aWx0aW4vYW0uYzo3MjgKKyM6IHJlZnMuYzo4NjAgc3RyYnVmLmM6MTE0MCB3cmFwcGVyLmM6MTg4IHdyYXBwZXIuYzozNTggYnVpbHRpbi9hbS5jOjcxNAorIzogYnVpbHRpbi9yZWJhc2UuYzoxMDMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgb2JyaXIgwqslc8K7IHBlciBhIGVzY3JpcHR1cmEiCiAKLSM6IHJlZnMuYzo3NzQKKyM6IHJlZnMuYzo4NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBvYmplY3QgSUQgd2hlbiBkZWxldGluZyAnJXMnIgotbXNnc3RyICIiCittc2dzdHIgIklEIGQnb2JqZWN0ZSBubyBlc3BlcmF0IGVuIHN1cHJpbWlyIMKrJXPCuyIKIAotIzogcmVmcy5jOjkwNQorIzogcmVmcy5jOjk5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2cgZm9yIHJlZiAlcyBoYXMgZ2FwIGFmdGVyICVzIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzo5MTEKKyM6IHJlZnMuYzoxMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvZyBmb3IgcmVmICVzIHVuZXhwZWN0ZWRseSBlbmRlZCBvbiAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZWZzLmM6OTY5CisjOiByZWZzLmM6MTA2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2cgZm9yICVzIGlzIGVtcHR5IgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzoxMDYxCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IHJlZnMuYzoxMTU1CisjLCBjLWZvcm1hdAogbXNnaWQgInJlZnVzaW5nIHRvIHVwZGF0ZSByZWYgd2l0aCBiYWQgbmFtZSAnJXMnIgotbXNnc3RyICJzJ2VzdMOgIGlnbm9yYW50IGxhIHJlZmVyw6huY2lhIGFtYiBub20gbWFsbcOocyAlcyIKK21zZ3N0ciAicydlc3TDoCByZWZ1c2FudCBsYSByZWZlcsOobmNpYSBhbWIgbm9tIG1hbG3DqHMgwqslc8K7IgogCi0jOiByZWZzLmM6MTEzNworIzogcmVmcy5jOjEyMzEKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInVwZGF0ZV9yZWYgZmFpbGVkIGZvciByZWYgJyVzJzogJXMiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gb2JyaXIgwqslc8K7OiAlcyIKIAotIzogcmVmcy5jOjE5MTEKKyM6IHJlZnMuYzoyMDIzCiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJtdWx0aXBsZSB1cGRhdGVzIGZvciByZWYgJyVzJyBub3QgYWxsb3dlZCIKIG1zZ3N0ciAibm9tIGQnaWRlbnRpdGF0IGJ1aXQgKHBlciA8JXM+KSBubyDDqXMgcGVybcOocyIKIAotIzogcmVmcy5jOjE5NDMKKyM6IHJlZnMuYzoyMDU1CiBtc2dpZCAicmVmIHVwZGF0ZXMgZm9yYmlkZGVuIGluc2lkZSBxdWFyYW50aW5lIGVudmlyb25tZW50IgogbXNnc3RyICJubyBlc3TDoCBwZXJtw6hzIGFjdHVhbGl0emFyIGxlcyByZWZlcsOobmNpZXMgZW4gdW4gZW50b3JuIGRlIHF1YXJhbnRlbmEiCiAKLSM6IHJlZnMuYzoyMDM5IHJlZnMuYzoyMDY5Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IHJlZnMuYzoyMTUxIHJlZnMuYzoyMTgxCisjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZXhpc3RzOyBjYW5ub3QgY3JlYXRlICclcyciCi1tc2dzdHIgIm5vIGVzIHBvdCBjcmVhciDCqyVzwrsiCittc2dzdHIgIsKrJXPCuyBleGlzdGVpeDsgbm8gZXMgcG90IGNyZWFyIMKrJXPCuyIKIAotIzogcmVmcy5jOjIwNDUgcmVmcy5jOjIwODAKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogcmVmcy5jOjIxNTcgcmVmcy5jOjIxOTIKKyMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHByb2Nlc3MgJyVzJyBhbmQgJyVzJyBhdCB0aGUgc2FtZSB0aW1lIgotbXNnc3RyICIiCi0iTm8gZXMgcG9kZW4gYWN0dWFsaXR6YXIgZWxzIGNhbWlucyBpIGNhbnZpYXIgYSBsYSBicmFuY2Egwqslc8K7IGEgbGEgdmVnYWRhLiIKK21zZ3N0ciAibm8gZXMgcG9kZW4gcHJvY2Vzc2FyIMKrJXPCuyBpIMKrJXPCuyBhIGxhIHZlZ2FkYSIKIAotIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTIyNworIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTIzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVtb3ZlIHJlZmVyZW5jZSAlcyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBlbGltaW5hciBsYSByZWZlcsOobmNpYSAlcyIKIAotIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI0MSByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTUzMgotIzogcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NDIKKyM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDggcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NDEKKyM6IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgcmVmZXJlbmNlICVzOiAlcyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBzdXByaW1pciBsYSByZWZlcsOobmNpYSAlczogJXMiCiAKLSM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDQgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NDUKKyM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNTEgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGRlbGV0ZSByZWZlcmVuY2VzOiAlcyIKIG1zZ3N0ciAibm8gcydoYW4gcG9ndXQgc3VwcmltaXIgbGVzIHJlZmVyw6huY2llczogJXMiCiAKICM6IHJlZnNwZWMuYzoxMzcKLSMsIGZ1enp5LCBjLWZvcm1hdAorIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHJlZnNwZWMgJyVzJyIKLW1zZ3N0ciAiZml0eGVyIG5vIHbDoGxpZDogwqslc8K7IgorbXNnc3RyICJyZWZzcGVjIG5vIHbDoGxpZGE6IMKrJXPCuyIKIAotIzogcmVmLWZpbHRlci5jOjM5IHd0LXN0YXR1cy5jOjE4NTUKKyM6IHJlZi1maWx0ZXIuYzo0MiB3dC1zdGF0dXMuYzoxOTM4CiBtc2dpZCAiZ29uZSIKIG1zZ3N0ciAibm8gaGkgw6lzIgogCi0jOiByZWYtZmlsdGVyLmM6NDAKKyM6IHJlZi1maWx0ZXIuYzo0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhaGVhZCAlZCIKIG1zZ3N0ciAiZGF2YW50IHBlciAlZCIKIAotIzogcmVmLWZpbHRlci5jOjQxCisjOiByZWYtZmlsdGVyLmM6NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmVoaW5kICVkIgogbXNnc3RyICJkYXJyZXJlIHBlciAlZCIKIAotIzogcmVmLWZpbHRlci5jOjQyCisjOiByZWYtZmlsdGVyLmM6NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWhlYWQgJWQsIGJlaGluZCAlZCIKIG1zZ3N0ciAiZGF2YW50IHBlciAlZCwgZGFycmVyZSBwZXIgJWQiCiAKLSM6IHJlZi1maWx0ZXIuYzoxMzgKKyM6IHJlZi1maWx0ZXIuYzoxNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgZm9ybWF0OiAlJShjb2xvcjo8Y29sb3I+KSIKIG1zZ3N0ciAiZm9ybWF0IGVzcGVyYXQ6ICUlKGNvbG9yOjxjb2xvcj4pIgogCi0jOiByZWYtZmlsdGVyLmM6MTQwCisjOiByZWYtZmlsdGVyLmM6MTY3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBjb2xvcjogJSUoY29sb3I6JXMpIgogbXNnc3RyICJjb2xvciBubyByZWNvbmVndXQ6ICUlKGNvbG9yOiVzKSIKIAotIzogcmVmLWZpbHRlci5jOjE2MgorIzogcmVmLWZpbHRlci5jOjE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6bHN0cmlwPSVzIgotbXNnc3RyICJ2YWxvciBlbnRlciBlc3BlcmF0IHBlbCBub20gZGUgcmVmZXLDqG5jaWE6bHN0cmlwPSVzIgorbXNnc3RyICJWYWxvciBlbnRlciBlc3BlcmF0IHBlbCBub20gZGUgcmVmZXLDqG5jaWE6bHN0cmlwPSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTY2CisjOiByZWYtZmlsdGVyLmM6MTkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludGVnZXIgdmFsdWUgZXhwZWN0ZWQgcmVmbmFtZTpyc3RyaXA9JXMiCi1tc2dzdHIgInZhbG9yIGVudGVyIGVzcGVyYXQgcGVsIG5vbSBkZSByZWZlcsOobmNpYTpyc3RyaXA9JXMiCittc2dzdHIgIlZhbG9yIGVudGVyIGVzcGVyYXQgcGVsIG5vbSBkZSByZWZlcsOobmNpYTpyc3RyaXA9JXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNjgKKyM6IHJlZi1maWx0ZXIuYzoxOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKCVzKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgInBhcsOgbWV0cmUgJSUoJXMpIGRlc2NvbmVndXQ6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MjIzCisjOiByZWYtZmlsdGVyLmM6MjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiUlKG9iamVjdHR5cGUpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgogbXNnc3RyICIlJShzdWJqZWN0KSBubyBhY2NlcHRhIHBhcsOgbWV0cmVzIgogCi0jOiByZWYtZmlsdGVyLmM6MjM1CisjOiByZWYtZmlsdGVyLmM6MjcyCiAjLCBjLWZvcm1hdAotbXNnaWQgIiUlKG9iamVjdHNpemUpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgotbXNnc3RyICIlJShvYmplY3RzaXplKSBubyBhY2NlcHRhIHBhcsOgbWV0cmVzIgorbXNnaWQgInVucmVjb2duaXplZCAlJShvYmplY3RzaXplKSBhcmd1bWVudDogJXMiCittc2dzdHIgInBhcsOgbWV0cmUgJSUob2JqZWN0c2l6ZSkgbm8gcmVjb25lZ3V0OiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjI0NworIzogcmVmLWZpbHRlci5jOjI4MAorIywgYy1mb3JtYXQKK21zZ2lkICIlJShkZWx0YWJhc2UpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnc3RyICIlJShkZWx0YWJhc2UpIG5vIGFjY2VwdGEgcGFyw6BtZXRyZXMiCisKKyM6IHJlZi1maWx0ZXIuYzoyOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJSUoYm9keSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCiBtc2dzdHIgIiUlKGJvZHkpIG5vIGFjY2VwdGEgcGFyw6BtZXRyZXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoyNTYKKyM6IHJlZi1maWx0ZXIuYzozMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJSUoc3ViamVjdCkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCiBtc2dzdHIgIiUlKHN1YmplY3QpIG5vIGFjY2VwdGEgcGFyw6BtZXRyZXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoyNzgKKyM6IHJlZi1maWx0ZXIuYzozMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biAlJSh0cmFpbGVycykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJwYXLDoG1ldHJlICUlKHRyYWlsZXJzKSBkZXNjb25lZ3V0OiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjMwNworIzogcmVmLWZpbHRlci5jOjM1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJwb3NpdGl2ZSB2YWx1ZSBleHBlY3RlZCBjb250ZW50czpsaW5lcz0lcyIKIG1zZ3N0ciAidmFsb3IgcG9zaXRpdSBlc3BlcmF0IGNvbnTDqTpsaW5lcz0lcyIKIAotIzogcmVmLWZpbHRlci5jOjMwOQorIzogcmVmLWZpbHRlci5jOjM1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUoY29udGVudHMpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAicGFyw6BtZXRyZSAlJShjb250ZW50cykgbm8gcmVjb25lZ3V0OiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjMyNAorIzogcmVmLWZpbHRlci5jOjM2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJwb3NpdGl2ZSB2YWx1ZSBleHBlY3RlZCBvYmplY3RuYW1lOnNob3J0PSVzIgogbXNnc3RyICJ2YWxvciBwb3NpdGl1IGVzcGVyYXQgbm9tIGQnb2JqZWN0ZTpjdXJ0PSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzI4CisjOiByZWYtZmlsdGVyLmM6MzczCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShvYmplY3RuYW1lKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgInBhcsOgbWV0cmUgJSUob2JqZWN0bmFtZSkgbm8gcmVjb25lZ3V0OiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjM1OAorIzogcmVmLWZpbHRlci5jOjQwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBmb3JtYXQ6ICUlKGFsaWduOjx3aWR0aD4sPHBvc2l0aW9uPikiCiBtc2dzdHIgImZvcm1hdCBlc3BlcmF0OiAlJShhbGlnbjo8YW1wbGFkYT4sPHBvc2ljacOzPikiCiAKLSM6IHJlZi1maWx0ZXIuYzozNzAKKyM6IHJlZi1maWx0ZXIuYzo0MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIHBvc2l0aW9uOiVzIgogbXNnc3RyICJwb3NpY2nDsyBubyByZWNvbmVndWRhOiVzIgogCi0jOiByZWYtZmlsdGVyLmM6Mzc3CisjOiByZWYtZmlsdGVyLmM6NDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCB3aWR0aDolcyIKIG1zZ3N0ciAiYW1wbGFkYSBubyByZWNvbmVndWRhOiVzIgogCi0jOiByZWYtZmlsdGVyLmM6Mzg2CisjOiByZWYtZmlsdGVyLmM6NDMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShhbGlnbikgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJwYXLDoG1ldHJlICUlKGFsaWduKSBubyByZWNvbmVndXQ6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6Mzk0CisjOiByZWYtZmlsdGVyLmM6NDM5CiAjLCBjLWZvcm1hdAogbXNnaWQgInBvc2l0aXZlIHdpZHRoIGV4cGVjdGVkIHdpdGggdGhlICUlKGFsaWduKSBhdG9tIgogbXNnc3RyICJhbXBsYWRhIHBvc2l0aXZhIGVzcGVyYWRhIGFtYiBsJ8OgdG9tICUlKGFsaWduKSIKIAotIzogcmVmLWZpbHRlci5jOjQxMgorIzogcmVmLWZpbHRlci5jOjQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUoaWYpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAicGFyw6BtZXRyZSAlJShpZikgbm8gcmVjb25lZ3V0OiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjUwOAorIzogcmVmLWZpbHRlci5jOjU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgZmllbGQgbmFtZTogJS4qcyIKIG1zZ3N0ciAibm9tIGRlIGNhbXAgbWFsIGZvcm1hdDogJS4qcyIKIAotIzogcmVmLWZpbHRlci5jOjUzNQorIzogcmVmLWZpbHRlci5jOjU4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIGZpZWxkIG5hbWU6ICUuKnMiCiBtc2dzdHIgIm5vbSBkZSBjYW1wIGRlc2NvbmVndXQ6ICUuKnMiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MzkKKyM6IHJlZi1maWx0ZXIuYzo1OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdCBhIGdpdCByZXBvc2l0b3J5LCBidXQgdGhlIGZpZWxkICclLipzJyByZXF1aXJlcyBhY2Nlc3MgdG8gb2JqZWN0IGRhdGEiCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjY2MworIzogcmVmLWZpbHRlci5jOjcxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGlmKSBhdG9tIHVzZWQgd2l0aG91dCBhICUlKHRoZW4pIGF0b20iCiBtc2dzdHIgImZvcm1hdDogcydoYSB1c2F0IGwnw6B0b20gJSUoaWYpIHNlbnNlIHVuIMOgdG9tICUlKHRoZW4pIgogCi0jOiByZWYtZmlsdGVyLmM6NzI2CisjOiByZWYtZmlsdGVyLmM6Nzc3CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIHdpdGhvdXQgYW4gJSUoaWYpIGF0b20iCiBtc2dzdHIgImZvcm1hdDogcydoYSB1c2F0IGwnw6B0b20gJSUodGhlbikgc2Vuc2UgdW4gw6B0b20gJSUoaWYpIgogCi0jOiByZWYtZmlsdGVyLmM6NzI4CisjOiByZWYtZmlsdGVyLmM6Nzc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgogbXNnc3RyICJmb3JtYXQ6IHMnaGEgdXNhdCBsJ8OgdG9tICUlKHRoZW4pIG3DqXMgZCd1biBjb3AiCiAKLSM6IHJlZi1maWx0ZXIuYzo3MzAKKyM6IHJlZi1maWx0ZXIuYzo3ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgYWZ0ZXIgJSUoZWxzZSkiCiBtc2dzdHIgImZvcm1hdDogcydoYSB1c2F0IGwnw6B0b20gJSUodGhlbikgZGVzcHLDqXMgZGUgJSUoZWxzZSkiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NTgKKyM6IHJlZi1maWx0ZXIuYzo4MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgd2l0aG91dCBhbiAlJShpZikgYXRvbSIKIG1zZ3N0ciAiZm9ybWF0OiBzJ2hhIHVzYXQgbCfDoHRvbSAlJShlbHNlKSBzZW5zZSB1biDDoHRvbSAlJShpZikiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NjAKKyM6IHJlZi1maWx0ZXIuYzo4MTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgd2l0aG91dCBhICUlKHRoZW4pIGF0b20iCiBtc2dzdHIgImZvcm1hdDogcydoYSB1c2F0IGwnw6B0b20gJSUoZWxzZSkgc2Vuc2UgdW4gw6B0b20gJSUodGhlbikiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NjIKKyM6IHJlZi1maWx0ZXIuYzo4MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgbW9yZSB0aGFuIG9uY2UiCiBtc2dzdHIgImZvcm1hdDogcydoYSB1c2F0IGwnw6B0b20gJSUoZWxzZSkgbcOpcyBkJ3VuIGNvcCIKIAotIzogcmVmLWZpbHRlci5jOjc3NworIzogcmVmLWZpbHRlci5jOjgyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVuZCkgYXRvbSB1c2VkIHdpdGhvdXQgY29ycmVzcG9uZGluZyBhdG9tIgogbXNnc3RyICJmb3JtYXQ6IHMnaGEgdXNhdCBsJ8OgdG9tICUlKGVuZCkgc2Vuc2UgbCfDoHRvbSBjb3JyZXNwb25lbnQiCiAKLSM6IHJlZi1maWx0ZXIuYzo4MzQKKyM6IHJlZi1maWx0ZXIuYzo4ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIGZvcm1hdCBzdHJpbmcgJXMiCiBtc2dzdHIgImNhZGVuYSBkZSBmb3JtYXQgbWFsIGZvcm1hdCAlcyIKIAotIzogcmVmLWZpbHRlci5jOjE0MjQKKyM6IHJlZi1maWx0ZXIuYzoxNDg4CiAjLCBjLWZvcm1hdAotbXNnaWQgIihubyBicmFuY2gsIHJlYmFzaW5nICVzKSIKLW1zZ3N0ciAiKGNhcCBicmFuY2EsIHMnZXN0w6AgZmVudCDCq3JlYmFzZcK7ICVzKSIKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nICVzIgorbXNnc3RyICJzZW5zZSBicmFuY2EsIHMnZXN0w6AgZmVudCDCq3JlYmFzZcK7ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTQyNworIzogcmVmLWZpbHRlci5jOjE0OTEKICMsIGMtZm9ybWF0Ci1tc2dpZCAiKG5vIGJyYW5jaCwgcmViYXNpbmcgZGV0YWNoZWQgSEVBRCAlcykiCi1tc2dzdHIgIihjYXAgYnJhbmNhLCBzJ2VzdMOgIGZlbnQgwqtyZWJhc2XCuyBkJ3VuIMKrSEVBRMK7ICVzIG5vIGFkanVudGF0KSIKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nIGRldGFjaGVkIEhFQUQgJXMiCittc2dzdHIgInNlbnNlIGJyYW5jYSwgcydlc3TDoCBmZW50IMKrcmViYXNlwrsgZCd1biDCq0hFQUTCuyAlcyBubyBhZGp1bnRhdCIKIAotIzogcmVmLWZpbHRlci5jOjE0MzAKKyM6IHJlZi1maWx0ZXIuYzoxNDk0CiAjLCBjLWZvcm1hdAotbXNnaWQgIihubyBicmFuY2gsIGJpc2VjdCBzdGFydGVkIG9uICVzKSIKLW1zZ3N0ciAiKGNhcCBicmFuY2EsIGJpc2VjY2nDsyBjb21lbsOnYWRhIGVuICVzKSIKK21zZ2lkICJubyBicmFuY2gsIGJpc2VjdCBzdGFydGVkIG9uICVzIgorbXNnc3RyICIoc2Vuc2UgYnJhbmNhLCBiaXNlY2Npw7MgY29tZW7Dp2FkYSBlbiAlcykiCiAKLSMuIFRSQU5TTEFUT1JTOiBtYWtlIHN1cmUgdGhpcyBtYXRjaGVzICJIRUFECi0jLiBkZXRhY2hlZCBhdCAiIGluIHd0LXN0YXR1cy5jCi0jLgotIzogcmVmLWZpbHRlci5jOjE0MzgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiKEhFQUQgZGV0YWNoZWQgYXQgJXMpIgotbXNnc3RyICIoSEVBRCBzZXBhcmF0IGEgJXMpIgorIzogcmVmLWZpbHRlci5jOjE1MDQKK21zZ2lkICJubyBicmFuY2giCittc2dzdHIgInNlbnNlIGJyYW5jYSIKIAotIy4gVFJBTlNMQVRPUlM6IG1ha2Ugc3VyZSB0aGlzIG1hdGNoZXMgIkhFQUQKLSMuIGRldGFjaGVkIGZyb20gIiBpbiB3dC1zdGF0dXMuYwotIy4KLSM6IHJlZi1maWx0ZXIuYzoxNDQ1Ci0jLCBjLWZvcm1hdAotbXNnaWQgIihIRUFEIGRldGFjaGVkIGZyb20gJXMpIgotbXNnc3RyICIoSEVBRCBzZXBhcmF0IGRlICVzKSIKLQotIzogcmVmLWZpbHRlci5jOjE0NDkKLW1zZ2lkICIobm8gYnJhbmNoKSIKLW1zZ3N0ciAiKGNhcCBicmFuY2EpIgotCi0jOiByZWYtZmlsdGVyLmM6MTQ4MyByZWYtZmlsdGVyLmM6MTYzOAorIzogcmVmLWZpbHRlci5jOjE1NDAgcmVmLWZpbHRlci5jOjE3NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBvYmplY3QgJXMgZm9yICVzIgogbXNnc3RyICJtYW5jYSBsJ29iamVjdGUgJXMgcGVyIGEgJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDkxCisjOiByZWYtZmlsdGVyLmM6MTU1MAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXJzZV9vYmplY3RfYnVmZmVyIGZhaWxlZCBvbiAlcyBmb3IgJXMiCiBtc2dzdHIgInBhcnNlX29iamVjdF9idWZmZXIgaGEgZmFsbGF0IGVuICVzIHBlciBhICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTg1NworIzogcmVmLWZpbHRlci5jOjIwMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG9iamVjdCBhdCAnJXMnIgogbXNnc3RyICJvYmplY3RlIG1hbCBmb3JtYXQgYSDCqyVzwrsiCiAKLSM6IHJlZi1maWx0ZXIuYzoxOTQ2CisjOiByZWYtZmlsdGVyLmM6MjA5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyByZWYgd2l0aCBicm9rZW4gbmFtZSAlcyIKIG1zZ3N0ciAicydlc3TDoCBpZ25vcmFudCBsYSByZWZlcsOobmNpYSBhbWIgbm9tIG1hbG3DqHMgJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMjMyCisjOiByZWYtZmlsdGVyLmM6MjM4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVuZCkgYXRvbSBtaXNzaW5nIgogbXNnc3RyICJmb3JtYXQ6IG1hbmNhIGwnw6B0b20gJSUoZW5kKSIKIAotIzogcmVmLWZpbHRlci5jOjIzMzgKKyM6IHJlZi1maWx0ZXIuYzoyNDg5CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbWVyZ2VkIgorbXNnc3RyICJsJ29wY2nDsyDCqyVzwrsgw6lzIGluY29tcGF0aWJsZSBhbWIgLS1tZXJnZWQiCisKKyM6IHJlZi1maWx0ZXIuYzoyNDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8tbWVyZ2VkIgorbXNnc3RyICJsJ29wY2nDsyDCqyVzwrsgw6lzIGluY29tcGF0aWJsZSBhbWIgLS1uby1tZXJnZWQiCisKKyM6IHJlZi1maWx0ZXIuYzoyNTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAlcyIKIG1zZ3N0ciAibm9tIGQnb2JqZWN0ZSAlcyBtYWwgZm9ybWF0IgogCi0jOiByZW1vdGUuYzo2MDcKKyM6IHJlZi1maWx0ZXIuYzoyNTA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIG11c3QgcG9pbnQgdG8gYSBjb21taXQiCittc2dzdHIgImwnb3BjacOzIMKrJXPCuyBoYSBkJ2FwdW50YXIgYSB1bmEgY29taXNzacOzIgorCisjOiByZW1vdGUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlnIHJlbW90ZSBzaG9ydGhhbmQgY2Fubm90IGJlZ2luIHdpdGggJy8nOiAlcyIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUuYzo0MTMKK21zZ2lkICJtb3JlIHRoYW4gb25lIHJlY2VpdmVwYWNrIGdpdmVuLCB1c2luZyB0aGUgZmlyc3QiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6NDIxCittc2dpZCAibW9yZSB0aGFuIG9uZSB1cGxvYWRwYWNrIGdpdmVuLCB1c2luZyB0aGUgZmlyc3QiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6NjExCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBmZXRjaCBib3RoICVzIGFuZCAlcyB0byAlcyIKIG1zZ3N0ciAiTm8gZXMgcG9kZW4gb2J0ZW5pciBhbWJkw7NzICVzIGkgJXMgYSAlcyIKIAotIzogcmVtb3RlLmM6NjExCisjOiByZW1vdGUuYzo2MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdXN1YWxseSB0cmFja3MgJXMsIG5vdCAlcyIKIG1zZ3N0ciAiJXMgZ2VuZXJhbG1lbnQgc2VndWVpeCAlcywgbm8gJXMiCiAKLSM6IHJlbW90ZS5jOjYxNQorIzogcmVtb3RlLmM6NjE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHRyYWNrcyBib3RoICVzIGFuZCAlcyIKIG1zZ3N0ciAiJXMgc2VndWVpeCBhbWJkw7NzICVzIGkgJXMiCiAKLSM6IHJlbW90ZS5jOjYyMwotbXNnaWQgIkludGVybmFsIGVycm9yIgotbXNnc3RyICJFcnJvciBpbnRlcm4iCisjOiByZW1vdGUuYzo2ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAia2V5ICclcycgb2YgcGF0dGVybiBoYWQgbm8gJyonIgorbXNnc3RyICIiCiAKLSM6IHJlbW90ZS5jOjE1NjkgcmVtb3RlLmM6MTY3MAorIzogcmVtb3RlLmM6Njk3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlICclcycgb2YgcGF0dGVybiBoYXMgbm8gJyonIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjEwMDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInNyYyByZWZzcGVjICVzIGRvZXMgbm90IG1hdGNoIGFueSIKK21zZ3N0ciAiJXM6IG5vIGNvaW5jaWRlaXggYW1iIGwnw61uZGV4IgorCisjOiByZW1vdGUuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgInNyYyByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogIm1hdGNoZXMgJyVzJyUiIGlzIHRoZSA8ZHN0PiBwYXJ0IG9mICJnaXQgcHVzaAorIy4gPHJlbW90ZT4gPHNyYz46PGRzdD4iIHB1c2gsIGFuZCAiYmVpbmcgcHVzaGVkICgnJXMnKSIgaXMKKyMuIHRoZSA8c3JjPi4KKyMuCisjOiByZW1vdGUuYzoxMDIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZGVzdGluYXRpb24geW91IHByb3ZpZGVkIGlzIG5vdCBhIGZ1bGwgcmVmbmFtZSAoaS5lLixcbiIKKyJzdGFydGluZyB3aXRoIFwicmVmcy9cIikuIFdlIHRyaWVkIHRvIGd1ZXNzIHdoYXQgeW91IG1lYW50IGJ5OlxuIgorIlxuIgorIi0gTG9va2luZyBmb3IgYSByZWYgdGhhdCBtYXRjaGVzICclcycgb24gdGhlIHJlbW90ZSBzaWRlLlxuIgorIi0gQ2hlY2tpbmcgaWYgdGhlIDxzcmM+IGJlaW5nIHB1c2hlZCAoJyVzJylcbiIKKyIgIGlzIGEgcmVmIGluIFwicmVmcy97aGVhZHMsdGFnc30vXCIuIElmIHNvIHdlIGFkZCBhIGNvcnJlc3BvbmRpbmdcbiIKKyIgIHJlZnMve2hlYWRzLHRhZ3N9LyBwcmVmaXggb24gdGhlIHJlbW90ZSBzaWRlLlxuIgorIlxuIgorIk5laXRoZXIgd29ya2VkLCBzbyB3ZSBnYXZlIHVwLiBZb3UgbXVzdCBmdWxseSBxdWFsaWZ5IHRoZSByZWYuIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjEwNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgY29tbWl0IG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gY3JlYXRlIGEgbmV3IGJyYW5jaCBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvaGVhZHMvJXMnPyIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUuYzoxMDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIHRhZyBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIGNyZWF0ZSBhIG5ldyB0YWcgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUuYzoxMDUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIHRyZWUgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byB0YWcgYSBuZXcgdHJlZSBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgYmxvYiBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHRhZyBhIG5ldyBibG9iIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTA5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYnJhbmNoIgorbXNnc3RyICLCqyVzwrsgbm8gZXMgcG90IHJlc29sZHJlIGEgdW5hIGJyYW5jYSIKKworIzogcmVtb3RlLmM6MTEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlICclcyc6IHJlbW90ZSByZWYgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgc3VwcmltaXIgwqslc8K7OiBsYSByZWZlcsOobmNpYSByZW1vdGEgbm8gZXhpc3RlaXgiCisKKyM6IHJlbW90ZS5jOjExMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHN0IHJlZnNwZWMgJXMgbWF0Y2hlcyBtb3JlIHRoYW4gb25lIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjExMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHN0IHJlZiAlcyByZWNlaXZlcyBmcm9tIG1vcmUgdGhhbiBvbmUgc3JjIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjE2MjcgcmVtb3RlLmM6MTcyOAogbXNnaWQgIkhFQUQgZG9lcyBub3QgcG9pbnQgdG8gYSBicmFuY2giCiBtc2dzdHIgIkhFQUQgbm8gYXNzZW55YWxhIGNhcCBicmFuY2EiCiAKLSM6IHJlbW90ZS5jOjE1NzgKKyM6IHJlbW90ZS5jOjE2MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBicmFuY2g6ICclcyciCi1tc2dzdHIgIm5vIGhpIGhhIHRhbCBicmFuY2E6IMKrJXPCuyIKK21zZ3N0ciAibm8gZXhpc3RlaXggbGEgYnJhbmNhOiDCqyVzwrsiCiAKLSM6IHJlbW90ZS5jOjE1ODEKKyM6IHJlbW90ZS5jOjE2MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gdXBzdHJlYW0gY29uZmlndXJlZCBmb3IgYnJhbmNoICclcyciCiBtc2dzdHIgImNhcCBmb250IGNvbmZpZ3VyYWRhIHBlciBhIGxhIGJyYW5jYSDCqyVzwrsiCiAKLSM6IHJlbW90ZS5jOjE1ODcKKyM6IHJlbW90ZS5jOjE2NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAidXBzdHJlYW0gYnJhbmNoICclcycgbm90IHN0b3JlZCBhcyBhIHJlbW90ZS10cmFja2luZyBicmFuY2giCiBtc2dzdHIgImxhIGJyYW5jYSBmb250IMKrJXPCuyBubyBzJ2VtbWFnYXR6ZW1hIGNvbSBhIGJyYW5jYSBhbWIgc2VndWltZW50IHJlbW90IgogCi0jOiByZW1vdGUuYzoxNjAyCisjOiByZW1vdGUuYzoxNjYwCiAjLCBjLWZvcm1hdAogbXNnaWQgInB1c2ggZGVzdGluYXRpb24gJyVzJyBvbiByZW1vdGUgJyVzJyBoYXMgbm8gbG9jYWwgdHJhY2tpbmcgYnJhbmNoIgogbXNnc3RyICIiCiAiZWwgZGVzdMOtIGRlIHB1amFkYSDCqyVzwrsgZW4gZWwgcmVtb3Qgwqslc8K7IG5vIHTDqSBjYXAgYnJhbmNhIGFtYiBzZWd1aW1lbnQgcmVtb3QiCiAKLSM6IHJlbW90ZS5jOjE2MTQKKyM6IHJlbW90ZS5jOjE2NzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiYnJhbmNoICclcycgaGFzIG5vIHJlbW90ZSBmb3IgcHVzaGluZyIKIG1zZ3N0ciAibGEgYnJhbmNhIMKrJXPCuyBubyB0w6kgY2FwIHJlbW90IGFsIHF1YWwgcHVqYXIiCiAKLSM6IHJlbW90ZS5jOjE2MjQKKyM6IHJlbW90ZS5jOjE2ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAicHVzaCByZWZzcGVjcyBmb3IgJyVzJyBkbyBub3QgaW5jbHVkZSAnJXMnIgogbXNnc3RyICJsZXMgZXNwZWNpZmljYWNpb25zIGRlIHJlZmVyw6huY2lhIGRlIMKrJXPCuyBubyBpbmNsb3VlbiDCqyVzwrsiCiAKLSM6IHJlbW90ZS5jOjE2MzcKKyM6IHJlbW90ZS5jOjE2OTUKIG1zZ2lkICJwdXNoIGhhcyBubyBkZXN0aW5hdGlvbiAocHVzaC5kZWZhdWx0IGlzICdub3RoaW5nJykiCi1tc2dzdHIgInB1c2ggbm8gdMOpIGRlc3TDrSAocHVzaC5kZWZhdWx0IMOpcyAnbm90aGluZycpIgorbXNnc3RyICJwdXNoIG5vIHTDqSBkZXN0w60gKHB1c2guZGVmYXVsdCDDqXMgwqtub3RoaW5nKSIKIAotIzogcmVtb3RlLmM6MTY1OQorIzogcmVtb3RlLmM6MTcxNwogbXNnaWQgImNhbm5vdCByZXNvbHZlICdzaW1wbGUnIHB1c2ggdG8gYSBzaW5nbGUgZGVzdGluYXRpb24iCiBtc2dzdHIgIm5vIGVzIHBvdCByZXNvbGRyZSB1bmEgcHVqYWRhICdzaW1wbGUnIGEgdW4gc29sIGRlc3TDrSIKIAotIzogcmVtb3RlLmM6MTkzNQorIzogcmVtb3RlLmM6MTg0MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBmaW5kIHJlbW90ZSByZWYgJXMiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgdHJvYmFyIGxhIHJlZmVyw6huY2lhIHJlbW90YSAlcyIKKworIzogcmVtb3RlLmM6MTg1NgorIywgYy1mb3JtYXQKK21zZ2lkICIqIElnbm9yaW5nIGZ1bm55IHJlZiAnJXMnIGxvY2FsbHkiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MjAxOQogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBpcyBiYXNlZCBvbiAnJXMnLCBidXQgdGhlIHVwc3RyZWFtIGlzIGdvbmUuXG4iCiBtc2dzdHIgIkxhIHZvc3RyYSBicmFuY2EgZXN0w6AgYmFzYWRhIGVuIMKrJXPCuywgcGVyw7IgbGEgZm9udCBubyBoaSDDqXMuXG4iCiAKLSM6IHJlbW90ZS5jOjE5MzkKKyM6IHJlbW90ZS5jOjIwMjMKIG1zZ2lkICIgICh1c2UgXCJnaXQgYnJhbmNoIC0tdW5zZXQtdXBzdHJlYW1cIiB0byBmaXh1cClcbiIKIG1zZ3N0ciAiICAodXNldSBcImdpdCBicmFuY2ggLS11bnNldC11cHN0cmVhbVwiIHBlciBhIGFycmVnbGFyKVxuIgogCi0jOiByZW1vdGUuYzoxOTQyCisjOiByZW1vdGUuYzoyMDI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIHVwIHRvIGRhdGUgd2l0aCAnJXMnLlxuIgogbXNnc3RyICJMYSB2b3N0cmEgYnJhbmNhIGVzdMOgIGFsIGRpYSBhbWIgwqslc8K7LlxuIgogCi0jOiByZW1vdGUuYzoxOTQ2CisjOiByZW1vdGUuYzoyMDMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGFuZCAnJXMnIHJlZmVyIHRvIGRpZmZlcmVudCBjb21taXRzLlxuIgogbXNnc3RyICJMYSB2b3N0cmEgYnJhbmNhIGkgwqslc8K7IGVzIHJlZmVyZWl4ZW4gYSBkaWZlcmVudHMgY29taXNzaW9ucy5cbiIKIAotIzogcmVtb3RlLmM6MTk0OQorIzogcmVtb3RlLmM6MjAzMwogIywgYy1mb3JtYXQKIG1zZ2lkICIgICh1c2UgXCIlc1wiIGZvciBkZXRhaWxzKVxuIgogbXNnc3RyICIiCiAKLSM6IHJlbW90ZS5jOjE5NTMKKyM6IHJlbW90ZS5jOjIwMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgYWhlYWQgb2YgJyVzJyBieSAlZCBjb21taXQuXG4iCiBtc2dpZF9wbHVyYWwgIllvdXIgYnJhbmNoIGlzIGFoZWFkIG9mICclcycgYnkgJWQgY29tbWl0cy5cbiIKLW1zZ3N0clswXSAiTGEgdm9zdHJhIGJyYW5jYSBlc3TDoCBkYXZhbnQgZGUgwqslc8K7IHBlciAlZCBjb21pc3Npw7MuXG4iCi1tc2dzdHJbMV0gIkxhIHZvc3RyYSBicmFuY2EgZXN0w6AgZGF2YW50IGRlIMKrJXPCuyBwZXIgJWQgY29taXNzaW9ucy5cbiIKK21zZ3N0clswXSAiTGEgdm9zdHJhIGJyYW5jYSBlc3TDoCAlMiRkIGNvbWlzc2nDsyBwZXIgZGF2YW50IGRlIMKrJTEkc8K7LlxuIgorbXNnc3RyWzFdICJMYSB2b3N0cmEgYnJhbmNhIGVzdMOgICUyJGQgY29taXNzaW9ucyBwZXIgZGF2YW50IGRlIMKrJTEkc8K7LlxuIgogCi0jOiByZW1vdGUuYzoxOTU5CisjOiByZW1vdGUuYzoyMDQzCiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1c2hcIiB0byBwdWJsaXNoIHlvdXIgbG9jYWwgY29tbWl0cylcbiIKIG1zZ3N0ciAiICAodXNldSBcImdpdCBwdXNoXCIgcGVyIGEgcHVibGljYXIgbGVzIHZvc3RyZXMgY29taXNzaW9ucyBsb2NhbHMpXG4iCiAKLSM6IHJlbW90ZS5jOjE5NjIKKyM6IHJlbW90ZS5jOjIwNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgYmVoaW5kICclcycgYnkgJWQgY29tbWl0LCBhbmQgY2FuIGJlIGZhc3QtZm9yd2FyZGVkLlxuIgogbXNnaWRfcGx1cmFsICIiCiAiWW91ciBicmFuY2ggaXMgYmVoaW5kICclcycgYnkgJWQgY29tbWl0cywgYW5kIGNhbiBiZSBmYXN0LWZvcndhcmRlZC5cbiIKIG1zZ3N0clswXSAiIgotIkxhIHZvc3RyYSBicmFuY2EgZXN0w6AgZGFycmVyZSBkZSDCqyVzwrsgcGVyICVkIGNvbWlzc2nDsywgaSBwb3QgYXZhbsOnYXItc2UgIgorIkxhIHZvc3RyYSBicmFuY2EgZXN0w6AgJTIkZCBjb21pc3Npw7MgcGVyIGRhcnJlcmUgZGUgwqslMSRzwrssIGkgcG90IGF2YW7Dp2FyLXNlICIKICJyw6BwaWRhbWVudC5cbiIKIG1zZ3N0clsxXSAiIgotIkxhIHZvc3RyYSBicmFuY2EgZXN0w6AgZGFycmVyZSBkZSDCqyVzwrsgcGVyICVkIGNvbWlzc2lvbnMsIGkgcG90IGF2YW7Dp2FyLXNlICIKLSJyw6BwaWRhbWVudC5cbiIKKyJMYSB2b3N0cmEgYnJhbmNhIGVzdMOgICUyJGQgY29taXNzaW9ucyBwZXIgZGFycmVyZSBkZSDCqyUxJHPCuywgaSBwb3QgYXZhbsOnYXItIgorInNlIHLDoHBpZGFtZW50LlxuIgogCi0jOiByZW1vdGUuYzoxOTcwCisjOiByZW1vdGUuYzoyMDU0CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1bGxcIiB0byB1cGRhdGUgeW91ciBsb2NhbCBicmFuY2gpXG4iCi1tc2dzdHIgIiAodXNldSBcImdpdCBwdWxsXCIgcGVyIGEgYWN0dWFsaXR6YXIgbGEgdm9zdHJhIGJyYW5jYSBsb2NhbClcbiIKK21zZ3N0ciAiICAodXNldSDCq2dpdCBwdWxswrsgcGVyIGEgYWN0dWFsaXR6YXIgbGEgdm9zdHJhIGJyYW5jYSBsb2NhbClcbiIKIAotIzogcmVtb3RlLmM6MTk3MworIzogcmVtb3RlLmM6MjA1NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBicmFuY2ggYW5kICclcycgaGF2ZSBkaXZlcmdlZCxcbiIKQEAgLTQzOTEsNDMgKzYwMDEsNDIgQEAKICJMYSB2b3N0cmEgYnJhbmNhIGkgwqslc8K7IGhhbiBkaXZlcmdpdCxcbiIKICJpIHRlbmVuICVkIGkgJWQgY29taXNzaW9ucyBkaXN0aW50ZXMgY2FkYSB1bmEsIHJlc3BlY3RpdmFtZW50LlxuIgogCi0jOiByZW1vdGUuYzoxOTgzCisjOiByZW1vdGUuYzoyMDY3CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1bGxcIiB0byBtZXJnZSB0aGUgcmVtb3RlIGJyYW5jaCBpbnRvIHlvdXJzKVxuIgotbXNnc3RyICIgICh1c2V1IFwiZ2l0IHB1bGxcIiBwZXIgYSBmdXNpb25hciBsYSBicmFuY2EgcmVtb3RhIGEgbGEgdm9zdHJhKVxuIgorbXNnc3RyICIgICh1c2V1IMKrZ2l0IHB1bGzCuyBwZXIgYSBmdXNpb25hciBsYSBicmFuY2EgcmVtb3RhIGFtYiBsYSB2b3N0cmEpXG4iCisKKyM6IHJlbW90ZS5jOjIyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHBhcnNlIGV4cGVjdGVkIG9iamVjdCBuYW1lICclcyciCittc2dzdHIgIm5vIGVzIHBvdCBhbmFsaXR6YXIgZWwgbm9tIGRlIGwnb2JqZWN0ZSBlc3BlcmF0IMKrJXPCuyIKIAogIzogcmVwbGFjZS1vYmplY3QuYzoyMQotIywgZnV6enksIGMtZm9ybWF0CisjLCBjLWZvcm1hdAogbXNnaWQgImJhZCByZXBsYWNlIHJlZiBuYW1lOiAlcyIKLW1zZ3N0ciAic3VwcmltZWl4IGxlcyByZWZlcsOobmNpZXMgcmVlbXBsYcOnYWRlcyIKK21zZ3N0ciAibm9tIGRlIGxhIHJlZmVyw6huY2lhIHJlZW1wbGHDp2FkYSBpbmNvcnJlY3RlOiAlcyIKIAogIzogcmVwbGFjZS1vYmplY3QuYzozMAotIywgZnV6enksIGMtZm9ybWF0CisjLCBjLWZvcm1hdAogbXNnaWQgImR1cGxpY2F0ZSByZXBsYWNlIHJlZjogJXMiCi1tc2dzdHIgInN1cHJpbWVpeCBsZXMgcmVmZXLDqG5jaWVzIHJlZW1wbGHDp2FkZXMiCittc2dzdHIgImR1cGxpY2EgbGVzIHJlZmVyw6huY2llcyByZWVtcGxhw6dhZGVzOiAlcyIKIAogIzogcmVwbGFjZS1vYmplY3QuYzo3MwotIywgZnV6enksIGMtZm9ybWF0CisjLCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2UgZGVwdGggdG9vIGhpZ2ggZm9yIG9iamVjdCAlcyIKLW1zZ3N0ciAicmVlbXBsYcOnYSBsJ2V0aXF1ZXRhIHNpIGV4aXN0ZWl4IgorbXNnc3RyICJsYSBwcm9mdW5kaXRhdCBkZSByZWVtcGxhw6dhbWVudCDDqXMgbWFzc2EgYWx0YSBwZXIgbCdvYmplY3RlICVzIgogCiAjOiByZXJlcmUuYzoyMTcgcmVyZXJlLmM6MjI2IHJlcmVyZS5jOjIyOQogbXNnaWQgImNvcnJ1cHQgTUVSR0VfUlIiCi1tc2dzdHIgIiIKK21zZ3N0ciAiTUVSR0VfUlIgY29ycnVwdGUiCiAKICM6IHJlcmVyZS5jOjI2NCByZXJlcmUuYzoyNjkKLSMsIGZ1enp5CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHJlcmVyZSByZWNvcmQiCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgbCdvYmplY3RlIGRlIG5vdGEiCi0KLSM6IHJlcmVyZS5jOjQ4NSByZXJlcmUuYzo2OTIgc2VxdWVuY2VyLmM6MzEzNiBzZXF1ZW5jZXIuYzozMTYyCi0jLCBmdXp6eSwgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBhIMKrJXPCuyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBlbCByZWdpc3RyZSDCq3JlcmVyZcK7IgogCiAjOiByZXJlcmUuYzo0OTUKLSMsIGZ1enp5LCBjLWZvcm1hdAorIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGVyZSB3ZXJlIGVycm9ycyB3aGlsZSB3cml0aW5nICclcycgKCVzKSIKLW1zZ3N0ciAiZXJyb3IgZW4gbGxlZ2lyICVzIgorbXNnc3RyICJzJ2hhbiBwcm9kdcOvdCBlcnJvcnMgZW4gZXNjcml1cmUgwqslc8K7ICglcykiCiAKICM6IHJlcmVyZS5jOjQ5OAogIywgZnV6enksIGMtZm9ybWF0CkBAIC00NDM1LDE5ICs2MDQ0LDE5IEBACiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZmVyIHN0YXQgYSDCqyVzwrsiCiAKICM6IHJlcmVyZS5jOjUwMyByZXJlcmUuYzoxMDM5Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyMsICBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb25mbGljdCBodW5rcyBpbiAnJXMnIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsYSBjb21pc3Npw7Mgwqslc8K7IgorbXNnc3RyICJubyBzJ2hhbiBwb2d1dCBhbmFsaXR6YXIgZWxzIHBlZGHDp29zIGVuIGNvbmZsaWN0ZSBhIMKrJXPCuyIKIAogIzogcmVyZXJlLmM6Njg0Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHV0aW1lKCkgb24gJyVzJyIKLW1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBvYnJpciDCqyVzwrsiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZmVyIMKrZmFpbGVkIHV0aW1lKCnCuyBhIMKrJXPCuyIKIAogIzogcmVyZXJlLmM6Njk0Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyMsIGMtZm9ybWF0CiBtc2dpZCAid3JpdGluZyAnJXMnIGZhaWxlZCIKLW1zZ3N0ciAibGEgY3JlYWNpw7MgZGUgwqslc8K7IGhhIGZhbGxhdCIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBlc2NyaXVyZSDCqyVzwrsiCiAKICM6IHJlcmVyZS5jOjcxNAogIywgYy1mb3JtYXQKQEAgLTQ0NTcsMTIgKzYwNjYsMTIgQEAKICM6IHJlcmVyZS5jOjc1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWNvcmRlZCByZXNvbHV0aW9uIGZvciAnJXMnLiIKLW1zZ3N0ciAiIgorbXNnc3RyICJFcyByZWNvcmRhIGxhIHJlc29sdWNpw7MgcGVyIGEgwqslc8K7LiIKIAogIzogcmVyZXJlLmM6Nzg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlc29sdmVkICclcycgdXNpbmcgcHJldmlvdXMgcmVzb2x1dGlvbi4iCi1tc2dzdHIgIiIKK21zZ3N0ciAiUydoYSByZXNvbHQgwqslc8K7IHVzYW50IHVuYSByZXNvbHVjacOzIGFudGVyaW9yLiIKIAogIzogcmVyZXJlLmM6ODAzCiAjLCBmdXp6eSwgYy1mb3JtYXQKQEAgLTQ0NzQsOCArNjA4Myw4IEBACiBtc2dpZCAiUmVjb3JkZWQgcHJlaW1hZ2UgZm9yICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGVsIGZpdHhlciBkZSByZWdpc3RyZSDCqyVzwrsiCiAKLSM6IHJlcmVyZS5jOjg4MSBzdWJtb2R1bGUuYzoxNzYzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDEzCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQyMworIzogcmVyZXJlLmM6ODgxIHN1Ym1vZHVsZS5jOjIwNjcgYnVpbHRpbi9sb2cuYzoxODcxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQzNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGVsIGRpcmVjdG9yaSDCqyVzwrsiCkBAIC00NDkxLDkgKzYxMDAsOSBAQAogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGFmZWdpciBlbCByZXN1bHRhdCBkZSBmdXNpw7MgcGVyIGEgwqslc8K7IgogCiAjOiByZXJlcmUuYzoxMDc3Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHVubGluayAnJXMnIgotbXNnc3RyICJubyBlcyBwb3QgZmVyIHJlYWRsaW5rIGVuIMKrJXPCuyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq3VubGlua8K7IGRlIMKrJXPCuyIKIAogIzogcmVyZXJlLmM6MTA4NwogIywgZnV6enksIGMtZm9ybWF0CkBAIC00NTA2LDY0ICs2MTE1LDY3IEBACiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGVsIGZpdHhlciBkZSByZWdpc3RyZSDCqyVzwrsiCiAKICM6IHJlcmVyZS5jOjExOTkKLSMsIGZ1enp5CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gcnItY2FjaGUgZGlyZWN0b3J5IgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFjdHVhbGl0emFyIGwnYXJicmUgY2F1IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyIGVsIGRpcmVjdG9yaSByci1jYWNoZSIKIAotIzogcmV2aXNpb24uYzoyMzI0CisjOiByZXZpc2lvbi5jOjI0OTcKIG1zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoIGFwcGVhcnMgdG8gYmUgYnJva2VuIgogbXNnc3RyICJsYSB2b3N0cmEgYnJhbmNhIGFjdHVhbCBzZW1ibGEgbWFsbWVzYSIKIAotIzogcmV2aXNpb24uYzoyMzI3CisjOiByZXZpc2lvbi5jOjI1MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAieW91ciBjdXJyZW50IGJyYW5jaCAnJXMnIGRvZXMgbm90IGhhdmUgYW55IGNvbW1pdHMgeWV0IgogbXNnc3RyICJsYSBicmFuY2EgYWN0dWFsIMKrJXPCuyBlbmNhcmEgbm8gdMOpIGNhcCBjb21pc3Npw7MiCiAKLSM6IHJldmlzaW9uLmM6MjUyMworIzogcmV2aXNpb24uYzoyNzA4CiBtc2dpZCAiLS1maXJzdC1wYXJlbnQgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1iaXNlY3QiCiBtc2dzdHIgIi0tZmlyc3QtcGFyZW50IMOpcyBpbmNvbXBhdGlibGUgYW1iIC0tYmlzZWN0IgogCi0jOiBydW4tY29tbWFuZC5jOjc0MAorIzogcmV2aXNpb24uYzoyNzEyCittc2dpZCAiLUwgZG9lcyBub3QgeWV0IHN1cHBvcnQgZGlmZiBmb3JtYXRzIGJlc2lkZXMgLXAgYW5kIC1zIgorbXNnc3RyICItTCBubyDDqXMgZW5jYXJhIGNvbXBhdGlibGUgYW1iIGZvcm1hdHMgcXVlIG5vIHNpZ3VpbiDCqy1wwrsgbyDCqy1zwrsiCisKKyM6IHJ1bi1jb21tYW5kLmM6NzYyCiBtc2dpZCAib3BlbiAvZGV2L251bGwgZmFpbGVkIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIG9icmlyIC9kZXYvbnVsbCIKIAotIzogcnVuLWNvbW1hbmQuYzoxMjI5Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IHJ1bi1jb21tYW5kLmM6MTI2OAorIywgICAgICAgICAgICAgICAgICAgIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNyZWF0ZSBhc3luYyB0aHJlYWQ6ICVzIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGZpbDogJXMiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgZmlsIMKrYXN5bmPCuzogJXMiCiAKLSM6IHJ1bi1jb21tYW5kLmM6MTI5MworIzogcnVuLWNvbW1hbmQuYzoxMzMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgJyVzJyBob29rIHdhcyBpZ25vcmVkIGJlY2F1c2UgaXQncyBub3Qgc2V0IGFzIGV4ZWN1dGFibGUuXG4iCiAiWW91IGNhbiBkaXNhYmxlIHRoaXMgd2FybmluZyB3aXRoIGBnaXQgY29uZmlnIGFkdmljZS5pZ25vcmVkSG9vayBmYWxzZWAuIgogbXNnc3RyICIiCiAKLSM6IHNlbmQtcGFjay5jOjE0MgorIzogc2VuZC1wYWNrLmM6MTQ0CiBtc2dpZCAidW5leHBlY3RlZCBmbHVzaCBwYWNrZXQgd2hpbGUgcmVhZGluZyByZW1vdGUgdW5wYWNrIHN0YXR1cyIKIG1zZ3N0ciAiIgogInBhcXVldCBkZSBuZXRlamEgbm8gZXNwZXJhdCBxdWFuIGVzdGF2YSBsbGVnaW50IGwnZXN0YXQgZGVsIGRlc2VtcGFxdWV0YW1lbnQgIgogInJlbW90IgogCi0jOiBzZW5kLXBhY2suYzoxNDQKKyM6IHNlbmQtcGFjay5jOjE0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgcmVtb3RlIHVucGFjayBzdGF0dXM6ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsJ2VzdGF0IGRlbCBkZXNlbXBhcXVldGFtZW50IHJlbW90OiAlcyIKIAotIzogc2VuZC1wYWNrLmM6MTQ2CisjOiBzZW5kLXBhY2suYzoxNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3RlIHVucGFjayBmYWlsZWQ6ICVzIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGVsIGRlc2VtcGFxdWV0YW1lbnQgcmVtb3Q6ICVzIgogCi0jOiBzZW5kLXBhY2suYzozMDgKKyM6IHNlbmQtcGFjay5jOjMwOQogbXNnaWQgImZhaWxlZCB0byBzaWduIHRoZSBwdXNoIGNlcnRpZmljYXRlIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHNpZ25hciBlbCBjZXJ0aWZpY2F0IGRlIHB1amFkYSIKIAotIzogc2VuZC1wYWNrLmM6NDIxCisjOiBzZW5kLXBhY2suYzo0MjMKIG1zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIHB1c2giCiBtc2dzdHIgImVsIGRlc3TDrSByZWNlcHRvciBubyBhZG1ldCBwdWphciAtLXNpZ25lZCIKIAotIzogc2VuZC1wYWNrLmM6NDIzCisjOiBzZW5kLXBhY2suYzo0MjUKIG1zZ2lkICIiCiAibm90IHNlbmRpbmcgYSBwdXNoIGNlcnRpZmljYXRlIHNpbmNlIHRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS0iCiAic2lnbmVkIHB1c2giCkBAIC00NTcxLDQyICs2MTgzLDQ3IEBACiAibm8gcydlc3TDoCBlbnZpYW50IHVuYSBjZXJ0aWZpY2FjacOzIGRlIHB1amFkYSBwZXJxdcOoIGVsIGRlc3TDrSByZWNlcHRvciBubyAiCiAiYWRtZXQgcHVqYXIgLS1zaWduZWQiCiAKLSM6IHNlbmQtcGFjay5jOjQzNQorIzogc2VuZC1wYWNrLmM6NDM3CiBtc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCAtLWF0b21pYyBwdXNoIgogbXNnc3RyICJlbCBkZXN0w60gcmVjZXB0b3Igbm8gYWRtZXQgcHVqYXIgLS1hdG9taWMiCiAKLSM6IHNlbmQtcGFjay5jOjQ0MAorIzogc2VuZC1wYWNrLmM6NDQyCiBtc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCBwdXNoIG9wdGlvbnMiCiBtc2dzdHIgImVsIGRlc3TDrSByZWNlcHRvciBubyBhZG1ldCBvcGNpb25zIGRlIHB1amFkYSIKIAotIzogc2VxdWVuY2VyLmM6MTgzCisjOiBzZXF1ZW5jZXIuYzoxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb21taXQgbWVzc2FnZSBjbGVhbnVwIG1vZGUgJyVzJyIKIG1zZ3N0ciAibW9kZSBkZSBuZXRlamEgwqslc8K7IG5vIHbDoGxpZCBlbiBsYSBjb21pc3Npw7MgZGVsIG1pc3NhdGdlIgogCi0jOiBzZXF1ZW5jZXIuYzoyODcKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6Mjk0CisjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgJyVzJyIKLW1zZ3N0ciAiTm8gcydoYSBwb2d1dCBzdXByaW1pciAlcyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBzdXByaW1pciDCqyVzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjMxMworIzogc2VxdWVuY2VyLmM6MzEzIGJ1aWx0aW4vcmViYXNlLmM6NzgxIGJ1aWx0aW4vcmViYXNlLmM6MTcwNiBidWlsdGluL3JtLmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgJyVzJyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBzdXByaW1pciDCqyVzwrsiCisKKyM6IHNlcXVlbmNlci5jOjMyMwogbXNnaWQgInJldmVydCIKIG1zZ3N0ciAicmV2ZXJ0aXIiCiAKLSM6IHNlcXVlbmNlci5jOjMxNQorIzogc2VxdWVuY2VyLmM6MzI1CiBtc2dpZCAiY2hlcnJ5LXBpY2siCiBtc2dzdHIgImNoZXJyeS1waWNrIgogCi0jOiBzZXF1ZW5jZXIuYzozMTcKKyM6IHNlcXVlbmNlci5jOjMyNwogbXNnaWQgInJlYmFzZSAtaSIKIG1zZ3N0ciAicmViYXNlIC1pIgogCi0jOiBzZXF1ZW5jZXIuYzozMTkKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6MzI5CisjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gYWN0aW9uOiAlZCIKLW1zZ3N0ciAiQWNjacOzIGRlc2NvbmVndWRhOiAlZCIKK21zZ3N0ciAiYWNjacOzIGRlc2NvbmVndWRhOiAlZCIKIAotIzogc2VxdWVuY2VyLmM6Mzc2CisjOiBzZXF1ZW5jZXIuYzozODcKIG1zZ2lkICIiCiAiYWZ0ZXIgcmVzb2x2aW5nIHRoZSBjb25mbGljdHMsIG1hcmsgdGhlIGNvcnJlY3RlZCBwYXRoc1xuIgogIndpdGggJ2dpdCBhZGQgPHBhdGhzPicgb3IgJ2dpdCBybSA8cGF0aHM+JyIKQEAgLTQ2MTQsNyArNjIzMSw3IEBACiAiZGVzcHLDqXMgZGUgcmVzb2xkcmUgZWxzIGNvbmZsaWN0ZXMsIG1hcnF1ZXUgZWxzIGNhbWluc1xuIgogImNvcnJlZ2l0cyBhbWIgJ2dpdCBhZGQgPGNhbWlucz4nIG8gJ2dpdCBybSA8Y2FtaW5zPiciCiAKLSM6IHNlcXVlbmNlci5jOjM3OQorIzogc2VxdWVuY2VyLmM6MzkwCiBtc2dpZCAiIgogImFmdGVyIHJlc29sdmluZyB0aGUgY29uZmxpY3RzLCBtYXJrIHRoZSBjb3JyZWN0ZWQgcGF0aHNcbiIKICJ3aXRoICdnaXQgYWRkIDxwYXRocz4nIG9yICdnaXQgcm0gPHBhdGhzPidcbiIKQEAgLTQ2MjQsMTEwICs2MjQxLDExNCBAQAogImNvcnJlZ2l0cyBhbWIgJ2dpdCBhZGQgPGNhbWlucz4nIG8gJ2dpdCBybSA8Y2FtaW5zPidcbiIKICJpIGNvbWV0ZXUgZWwgcmVzdWx0YXQgYW1iICdnaXQgY29tbWl0JyIKIAotIzogc2VxdWVuY2VyLmM6MzkyIHNlcXVlbmNlci5jOjI2MzIKKyM6IHNlcXVlbmNlci5jOjQwMyBzZXF1ZW5jZXIuYzoyOTkzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb2NrICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYmxvcXVlamFyIMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6Mzk5CisjOiBzZXF1ZW5jZXIuYzo0MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIGVvbCB0byAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIGVsIHRlcm1pbmFkb3IgZGUgbMOtbmlhIGEgwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzo0MDQgc2VxdWVuY2VyLmM6MjUxNSBzZXF1ZW5jZXIuYzoyNjM4IHNlcXVlbmNlci5jOjI2NTIKLSM6IHNlcXVlbmNlci5jOjI4ODUKKyM6IHNlcXVlbmNlci5jOjQxNSBzZXF1ZW5jZXIuYzoyNzk4IHNlcXVlbmNlci5jOjI5OTkgc2VxdWVuY2VyLmM6MzAxMworIzogc2VxdWVuY2VyLmM6MzI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZmluYWxpemUgJyVzJyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBmaW5hbGl0emFyIMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6NDI3IHNlcXVlbmNlci5jOjkyMSBzZXF1ZW5jZXIuYzoxNTk0IHNlcXVlbmNlci5jOjI1MzUKLSM6IHNlcXVlbmNlci5jOjI4Njcgc2VxdWVuY2VyLmM6Mjk3NCBidWlsdGluL2FtLmM6MjYwIGJ1aWx0aW4vY29tbWl0LmM6NzQ2Ci0jOiBidWlsdGluL21lcmdlLmM6MTA4NCBidWlsdGluL3JlYmFzZS5jOjE1MgorIzogc2VxdWVuY2VyLmM6NDM4IHNlcXVlbmNlci5jOjE3MDcgc2VxdWVuY2VyLmM6MjgxOCBzZXF1ZW5jZXIuYzozMjU5CisjOiBzZXF1ZW5jZXIuYzozMzY4IGJ1aWx0aW4vYW0uYzoyNDQgYnVpbHRpbi9jb21taXQuYzo3ODMgYnVpbHRpbi9tZXJnZS5jOjExMTcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6NDUzCisjOiBzZXF1ZW5jZXIuYzo0NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAieW91ciBsb2NhbCBjaGFuZ2VzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzLiIKIG1zZ3N0ciAiZWxzIHZvc3RyZXMgY2FudmlzIGxvY2FscyBzZSBzb2JyZWVzY3JpdXJpZW4gcGVyICVzLiIKIAotIzogc2VxdWVuY2VyLmM6NDU3CisjOiBzZXF1ZW5jZXIuYzo0NjgKIG1zZ2lkICJjb21taXQgeW91ciBjaGFuZ2VzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZC4iCiBtc2dzdHIgImNvbWV0ZXUgZWxzIHZvc3RyZXMgY2FudmlzIG8gZmV1IHVuIMKrc3Rhc2jCuyBwZXIgYSBwcm9jZWRpci4iCiAKLSM6IHNlcXVlbmNlci5jOjQ4NgorIzogc2VxdWVuY2VyLmM6NTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBmYXN0LWZvcndhcmQiCiBtc2dzdHIgIiVzOiBhdmFuw6cgcsOgcGlkIgogCisjOiBzZXF1ZW5jZXIuYzo1MzkgYnVpbHRpbi90YWcuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBjbGVhbnVwIG1vZGUgJXMiCittc2dzdHIgIk1vZGUgZGUgbmV0ZWphIG5vIHbDoGxpZCAlcyIKKwogIy4gVFJBTlNMQVRPUlM6ICVzIHdpbGwgYmUgInJldmVydCIsICJjaGVycnktcGljayIgb3IKICMuICJyZWJhc2UgLWkiLgogIy4KLSM6IHNlcXVlbmNlci5jOjU3NQorIzogc2VxdWVuY2VyLmM6NjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBVbmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCiBtc2dzdHIgIiVzOiBObyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIHVuIGZpdHhlciBkJ8OtbmRleCBub3UiCiAKLSM6IHNlcXVlbmNlci5jOjU5MQorIzogc2VxdWVuY2VyLmM6NjUwCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBjYWNoZSB0cmVlIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFjdHVhbGl0emFyIGwnYXJicmUgY2F1IgogCi0jOiBzZXF1ZW5jZXIuYzo2MDQKKyM6IHNlcXVlbmNlci5jOjY2NAogbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlIEhFQUQgY29tbWl0IgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHJlc29sZHJlIGxhIGNvbWlzc2nDsyBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzo2ODQKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6NzQ0CisjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGtleSBwcmVzZW50IGluICclLipzJyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgwqslLipzwrsiCittc2dzdHIgIm5vIGhpIGhhIHVuYSBjbGF1IGEgwqslLipzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjY5NQorIzogc2VxdWVuY2VyLmM6NzU1CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZGVxdW90ZSB2YWx1ZSBvZiAnJXMnIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGFmZWdpciBlbCByZXN1bHRhdCBkZSBmdXNpw7MgcGVyIGEgwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzo3MzIgd3JhcHBlci5jOjIyNyB3cmFwcGVyLmM6Mzk3IGJ1aWx0aW4vYW0uYzo3MTkKLSM6IGJ1aWx0aW4vYW0uYzo4MTEgYnVpbHRpbi9tZXJnZS5jOjEwODEKKyM6IHNlcXVlbmNlci5jOjc5MiB3cmFwcGVyLmM6MTkwIHdyYXBwZXIuYzozNjAgYnVpbHRpbi9hbS5jOjcwNQorIzogYnVpbHRpbi9hbS5jOjc5NyBidWlsdGluL21lcmdlLmM6MTExNCBidWlsdGluL3JlYmFzZS5jOjEwNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3IgcmVhZGluZyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciDCqyVzwrsgcGVyIGEgbGVjdHVyYSIKIAotIzogc2VxdWVuY2VyLmM6NzQyCisjOiBzZXF1ZW5jZXIuYzo4MDIKIG1zZ2lkICInR0lUX0FVVEhPUl9OQU1FJyBhbHJlYWR5IGdpdmVuIgotbXNnc3RyICIiCittc2dzdHIgIkphIHMnaGEgZG9uYXQgwqtHSVRfQVVUSE9SX05BTUXCuyIKIAotIzogc2VxdWVuY2VyLmM6NzQ3CisjOiBzZXF1ZW5jZXIuYzo4MDcKIG1zZ2lkICInR0lUX0FVVEhPUl9FTUFJTCcgYWxyZWFkeSBnaXZlbiIKLW1zZ3N0ciAiIgorbXNnc3RyICJKYSBzJ2hhIGRvbmF0IMKrR0lUX0FVVEhPUl9FTUFJTMK7IgogCi0jOiBzZXF1ZW5jZXIuYzo3NTIKKyM6IHNlcXVlbmNlci5jOjgxMgogbXNnaWQgIidHSVRfQVVUSE9SX0RBVEUnIGFscmVhZHkgZ2l2ZW4iCi1tc2dzdHIgIiIKK21zZ3N0ciAiSmEgcydoYSBkb25hdCDCq0dJVF9BVVRIT1JfREFURcK7IgogCi0jOiBzZXF1ZW5jZXIuYzo3NTYKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6ODE2CisjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gdmFyaWFibGUgJyVzJyIKLW1zZ3N0ciAiRm9ybWF0IGQnYXJ4aXUgZGVzY29uZWd1dCDCqyVzwrsiCittc2dzdHIgInZhcmlhYmxlICDCqyVzwrsgZGVzY29uZWd1ZGEiCiAKLSM6IHNlcXVlbmNlci5jOjc2MQorIzogc2VxdWVuY2VyLmM6ODIxCiBtc2dpZCAibWlzc2luZyAnR0lUX0FVVEhPUl9OQU1FJyIKLW1zZ3N0ciAiIgorbXNnc3RyICJmYWx0YSDCq0dJVF9BVVRIT1JfTkFNRcK7IgogCi0jOiBzZXF1ZW5jZXIuYzo3NjMKKyM6IHNlcXVlbmNlci5jOjgyMwogbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfRU1BSUwnIgotbXNnc3RyICIiCi0KLSM6IHNlcXVlbmNlci5jOjc2NQotbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfREFURSciCi1tc2dzdHIgIiIKK21zZ3N0ciAiZmFsdGEgwqtHSVRfQVVUSE9SX0VNQUlMwrsiCiAKICM6IHNlcXVlbmNlci5jOjgyNQotIywgZnV6enksIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBkYXRlIGZvcm1hdCAnJXMnIGluICclcyciCi1tc2dzdHIgImZvcm1hdCBkZSBkYXRhIG5vIHbDoGxpZDogJXMiCittc2dpZCAibWlzc2luZyAnR0lUX0FVVEhPUl9EQVRFJyIKK21zZ3N0ciAiZmFsdGEgwqtHSVRfQVVUSE9SX0RBVEXCuyIKIAotIzogc2VxdWVuY2VyLmM6ODQyCisjOiBzZXF1ZW5jZXIuYzo5MDIgc2VxdWVuY2VyLmM6MTQyNworbXNnaWQgIm1hbGZvcm1lZCBpZGVudCBsaW5lIgorbXNnc3RyICJsw61uaWEgZCdpZGVudGl0YXQgbWFsIGZvcm1hZGEiCisKKyM6IHNlcXVlbmNlci5jOjkyNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAieW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWVcbiIKQEAgLTQ3NTcsMTYgKzYzNzgsMTEgQEAKICJcbiIKICIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogCi0jOiBzZXF1ZW5jZXIuYzo5MzUKLSMsIGZ1enp5Ci1tc2dpZCAid3JpdGluZyByb290IGNvbW1pdCIKLW1zZ3N0ciAibm8gaGkgaGEgcmVzIGEgY29tZXRyZVxuIgotCi0jOiBzZXF1ZW5jZXIuYzoxMTQyCisjOiBzZXF1ZW5jZXIuYzoxMjE4CiBtc2dpZCAiJ3ByZXBhcmUtY29tbWl0LW1zZycgaG9vayBmYWlsZWQiCiBtc2dzdHIgImVsIGxsaWdhbSDCq3ByZXBhcmUtY29tbWl0LW1zZ8K7IGhhIGZhbGxhdCIKIAotIzogc2VxdWVuY2VyLmM6MTE0OQorIzogc2VxdWVuY2VyLmM6MTIyNAogbXNnaWQgIiIKICJZb3VyIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgd2VyZSBjb25maWd1cmVkIGF1dG9tYXRpY2FsbHkgYmFzZWRcbiIKICJvbiB5b3VyIHVzZXJuYW1lIGFuZCBob3N0bmFtZS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhleSBhcmUgYWNjdXJhdGUuXG4iCkBAIC00NzgxLDE5ICs2Mzk3LDE5IEBACiAiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgogbXNnc3RyICIiCiAiUydoYW4gY29uZmlndXJhdCBlbCB2b3N0cmUgbm9tIGkgYWRyZcOnYSBlbGVjdHLDsm5pY2FcbiIKLSJhdXRvbcOgdGljYW1lbnQgYmFzYXRzIGVuIGVsIHZvc3RyZSBub20gZCd1c3VhcmkgaSBub20gZGUgbcOgcXVpbmEuIFxuIgorImF1dG9tw6B0aWNhbWVudCBiYXNhbnQtc2UgZW4gZWwgdm9zdHJlIG5vbSBkJ3VzdWFyaSBpIG5vbSBkZSBtw6BxdWluYS4gXG4iCiAiQ29tcHJvdmV1IHF1ZSBzaWd1aW4gY29ycmVjdGVzLiBQb2RldSBzdXByaW1pciBhcXVlc3RcbiIKICJtaXNzYXRnZSBlc3RhYmxpbnQtbG9zIGV4cGzDrWNpdGFtZW50LiBFeGVjdXRldSBsJ29yZHJlIHNlZ8O8ZW50IGlcbiIKICJzZWd1aXUgbGVzIGluc3RydWNjaW9ucyBlbiBlbCB2b3N0cmUgZWRpdG9yIHBlciBlZGl0YXIgZWwgdm9zdHJlXG4iCiAiZml0eGVyIGRlIGNvbmZpZ3VyYWNpw7M6XG4iCiAiXG4iCiAiICAgIGdpdCBjb25maWcgLS1nbG9iYWwgLS1lZGl0XG4iCi0iRGVzcHLDqXMgZGUgZmVyIGFpeMOyLCBwb2RldSBhcnJlZ2xhciBsYSBpZGVudGl0YXQgdXNhZGEgcGVyIGEgYXF1ZXN0YVxuIgorIkRlc3Byw6lzIGRlIGZlciBhaXjDsiwgcG9kZXUgZXNtZW5hciBsYSBpZGVudGl0YXQgdXNhZGEgcGVyIGEgYXF1ZXN0YVxuIgogImNvbWlzc2nDsyBhbWI6XG4iCiAiXG4iCiAiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgogCi0jOiBzZXF1ZW5jZXIuYzoxMTYyCisjOiBzZXF1ZW5jZXIuYzoxMjM3CiBtc2dpZCAiIgogIllvdXIgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyB3ZXJlIGNvbmZpZ3VyZWQgYXV0b21hdGljYWxseSBiYXNlZFxuIgogIm9uIHlvdXIgdXNlcm5hbWUgYW5kIGhvc3RuYW1lLiBQbGVhc2UgY2hlY2sgdGhhdCB0aGV5IGFyZSBhY2N1cmF0ZS5cbiIKQEAgLTQ4MTksMzAyICs2NDM1LDM1MSBAQAogIlxuIgogIiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKIAotIzogc2VxdWVuY2VyLmM6MTIwMgorIzogc2VxdWVuY2VyLmM6MTI3OQogbXNnaWQgImNvdWxkbid0IGxvb2sgdXAgbmV3bHkgY3JlYXRlZCBjb21taXQiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgdHJvYmFyIGxhIGNvbWlzc2nDsyBub3ZhbWVudCBjcmVhZGEiCiAKLSM6IHNlcXVlbmNlci5jOjEyMDQKKyM6IHNlcXVlbmNlci5jOjEyODEKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgbmV3bHkgY3JlYXRlZCBjb21taXQiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGxhIGNvbWlzc2nDsyBub3ZhbWVudCBjcmVhZGEiCiAKLSM6IHNlcXVlbmNlci5jOjEyNTAKKyM6IHNlcXVlbmNlci5jOjEzMjcKIG1zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBIRUFEIGFmdGVyIGNyZWF0aW5nIGNvbW1pdCIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCByZXNvbGRyZSBIRUFEIGRlc3Byw6lzIGRlIGNyZWFyIGxhIGNvbWlzc2nDsyIKIAotIzogc2VxdWVuY2VyLmM6MTI1MgorIzogc2VxdWVuY2VyLmM6MTMyOQogbXNnaWQgImRldGFjaGVkIEhFQUQiCiBtc2dzdHIgIkhFQUQgc2VwYXJhdCIKIAotIzogc2VxdWVuY2VyLmM6MTI1NgorIzogc2VxdWVuY2VyLmM6MTMzMwogbXNnaWQgIiAocm9vdC1jb21taXQpIgotbXNnc3RyICIgKGNvbWlzc2nDsyBkJ2FycmVsKSIKK21zZ3N0ciAiIChjb21pc3Npw7MgYXJyZWwpIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjc3CisjOiBzZXF1ZW5jZXIuYzoxMzU0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIEhFQUQiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjEyNzkKKyM6IHNlcXVlbmNlci5jOjEzNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiSEVBRCAlcyBpcyBub3QgYSBjb21taXQhIgogbXNnc3RyICJIRUFEICVzIG5vIMOpcyB1bmEgY29taXNzacOzISIKIAotIzogc2VxdWVuY2VyLmM6MTI4MyBidWlsdGluL2NvbW1pdC5jOjE1NDMKKyM6IHNlcXVlbmNlci5jOjEzNjAgc2VxdWVuY2VyLmM6MTQ1OCBidWlsdGluL2NvbW1pdC5jOjE1NjkKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgSEVBRCBjb21taXQiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGxhIGNvbWlzc2nDsyBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoxMzM0IHNlcXVlbmNlci5jOjE5MzQKKyM6IHNlcXVlbmNlci5jOjE0MTEgc2VxdWVuY2VyLmM6MjA1NQogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21taXQgYXV0aG9yIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsJ2F1dG9yIGRlIGxhIGNvbWlzc2nDsyIKIAotIzogc2VxdWVuY2VyLmM6MTM0NCBidWlsdGluL2FtLmM6MTU4NSBidWlsdGluL21lcmdlLmM6Njc3CisjOiBzZXF1ZW5jZXIuYzoxNDMxCittc2dpZCAiY29ycnVwdGVkIGF1dGhvciB3aXRob3V0IGRhdGUgaW5mb3JtYXRpb24iCittc2dzdHIgImF1dG9yIG1hbG3DqHMgc2Vuc2UgaW5mb3JtYWNpw7MgZGUgZGF0YSIKKworIzogc2VxdWVuY2VyLmM6MTQ0NyBidWlsdGluL2FtLmM6MTU2MSBidWlsdGluL21lcmdlLmM6Njg0CiBtc2dpZCAiZ2l0IHdyaXRlLXRyZWUgZmFpbGVkIHRvIHdyaXRlIGEgdHJlZSIKIG1zZ3N0ciAiZ2l0IHdyaXRlLXRyZWUgaGEgZmFsbGF0IGVuIGVzY3JpdXJlIHVuIGFyYnJlIgogCi0jOiBzZXF1ZW5jZXIuYzoxMzYxIHNlcXVlbmNlci5jOjE0MTYKKyM6IHNlcXVlbmNlci5jOjE0ODAgc2VxdWVuY2VyLmM6MTU1MAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBjb21taXQgbWVzc2FnZSBmcm9tICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGVsIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyBkZXMgZGUgwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzoxMzgzIGJ1aWx0aW4vYW0uYzoxNjA2IGJ1aWx0aW4vY29tbWl0LmM6MTY0NiBidWlsdGluL21lcmdlLmM6ODU4Ci0jOiBidWlsdGluL21lcmdlLmM6ODgzCisjOiBzZXF1ZW5jZXIuYzoxNTE2IGJ1aWx0aW4vYW0uYzoxNTgzIGJ1aWx0aW4vY29tbWl0LmM6MTY2OCBidWlsdGluL21lcmdlLmM6ODgzCisjOiBidWlsdGluL21lcmdlLmM6OTA4CiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGNvbW1pdCBvYmplY3QiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXNjcml1cmUgbCdvYmplY3RlIGRlIGNvbWlzc2nDsyIKIAotIzogc2VxdWVuY2VyLmM6MTQ0MworIzogc2VxdWVuY2VyLmM6MTU3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsYSBjb21pc3Npw7MgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjE0NDgKKyM6IHNlcXVlbmNlci5jOjE1ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHBhcmVudCBjb21taXQgJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGxhIGNvbWlzc2nDsyBwYXJlICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxNTQ2IHNlcXVlbmNlci5jOjE2NTQKKyM6IHNlcXVlbmNlci5jOjE2NTYgc2VxdWVuY2VyLmM6MTc2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIGNvbW1hbmQ6ICVkIgogbXNnc3RyICJvcmRyZSBkZXNjb25lZ3VkYTogJWQiCiAKLSM6IHNlcXVlbmNlci5jOjE2MDEgc2VxdWVuY2VyLmM6MTYyNgorIzogc2VxdWVuY2VyLmM6MTcxNCBzZXF1ZW5jZXIuYzoxNzM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAlZCBjb21taXRzLiIKIG1zZ3N0ciAiQWl4w7Igw6lzIHVuYSBjb21iaW5hY2nDsyBkZSAlZCBjb21pc3Npb25zLiIKIAotIzogc2VxdWVuY2VyLmM6MTYxMSBzZXF1ZW5jZXIuYzo0NzQ0CisjOiBzZXF1ZW5jZXIuYzoxNzI0CiBtc2dpZCAibmVlZCBhIEhFQUQgdG8gZml4dXAiCiBtc2dzdHIgImNhbCB1biBIRUFEIHBlciByZXBhcmFyLWhvIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjEzIHNlcXVlbmNlci5jOjI5MTIKKyM6IHNlcXVlbmNlci5jOjE3MjYgc2VxdWVuY2VyLmM6MzMwNAogbXNnaWQgImNvdWxkIG5vdCByZWFkIEhFQUQiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjE2MTUKKyM6IHNlcXVlbmNlci5jOjE3MjgKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBIRUFEJ3MgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGVsIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyBkZSBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjIxCisjOiBzZXF1ZW5jZXIuYzoxNzM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCB3cml0ZSAnJXMnIgogbXNnc3RyICJubyBlcyBwb3QgZXNjcml1cmUgwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzoxNjI4IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NDEKKyM6IHNlcXVlbmNlci5jOjE3NDEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5NgogbXNnaWQgIlRoaXMgaXMgdGhlIDFzdCBjb21taXQgbWVzc2FnZToiCiBtc2dzdHIgIkFxdWVzdCDDqXMgZWwgMXIgbWlzc2F0Z2UgZGUgY29taXNzacOzOiIKIAotIzogc2VxdWVuY2VyLmM6MTYzNgorIzogc2VxdWVuY2VyLmM6MTc0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBjb21taXQgbWVzc2FnZSBvZiAlcyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBsbGVnaXIgZWwgbWlzc2F0Z2UgZGUgY29taXNzacOzOiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTY0MworIzogc2VxdWVuY2VyLmM6MTc1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGlzIGlzIHRoZSBjb21taXQgbWVzc2FnZSAjJWQ6IgogbXNnc3RyICJBcXVlc3Qgw6lzIGVsIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyAjJWQ6IgogCi0jOiBzZXF1ZW5jZXIuYzoxNjQ5CisjOiBzZXF1ZW5jZXIuYzoxNzYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBjb21taXQgbWVzc2FnZSAjJWQgd2lsbCBiZSBza2lwcGVkOiIKIG1zZ3N0ciAiRWwgbWlzc2F0Z2UgZGUgY29taXNzacOzIG7Dum0uICMlZCBzJ29tZXRyw6A6IgogCi0jOiBzZXF1ZW5jZXIuYzoxNzMyCisjOiBzZXF1ZW5jZXIuYzoxODUwCiBtc2dpZCAieW91ciBpbmRleCBmaWxlIGlzIHVubWVyZ2VkLiIKIG1zZ3N0ciAiZWwgdm9zdHJlIGZpdHhlciBkJ8OtbmRleCBlc3TDoCBzZW5zZSBmdXNpb25hci4iCiAKLSM6IHNlcXVlbmNlci5jOjE3MzkKLSMsIGZ1enp5CisjOiBzZXF1ZW5jZXIuYzoxODU3CiBtc2dpZCAiY2Fubm90IGZpeHVwIHJvb3QgY29tbWl0IgotbXNnc3RyICJubyBlcyBwb3QgdHJvYmFyIGxhIGNvbWlzc2nDsyAlcyAoJXMpIgorbXNnc3RyICJubyBlcyBwb3QgYXJyZWdsYXIgbGEgY29taXNzacOzIGFycmVsIgogCi0jOiBzZXF1ZW5jZXIuYzoxNzU4CisjOiBzZXF1ZW5jZXIuYzoxODc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbW1pdCAlcyBpcyBhIG1lcmdlIGJ1dCBubyAtbSBvcHRpb24gd2FzIGdpdmVuLiIKIG1zZ3N0ciAibGEgY29taXNzacOzICVzIMOpcyB1bmEgZnVzacOzIHBlcsOyIG5vIHMnaGEgZG9uYXQgY2FwIG9wY2nDsyAtbS4iCiAKLSM6IHNlcXVlbmNlci5jOjE3NjYKKyM6IHNlcXVlbmNlci5jOjE4ODQgc2VxdWVuY2VyLmM6MTg5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJXMgZG9lcyBub3QgaGF2ZSBwYXJlbnQgJWQiCiBtc2dzdHIgImxhIGNvbWlzc2nDsyAlcyBubyB0w6kgcGFyZSAlZCIKIAotIzogc2VxdWVuY2VyLmM6MTc3MAotIywgYy1mb3JtYXQKLW1zZ2lkICJtYWlubGluZSB3YXMgc3BlY2lmaWVkIGJ1dCBjb21taXQgJXMgaXMgbm90IGEgbWVyZ2UuIgotbXNnc3RyICIiCi0icydoYSBlc3BlY2lmaWNhdCBsYSBsw61uaWEgcHJpbmNpcGFsIHBlcsOyIGxhIGNvbWlzc2nDsyAlcyBubyDDqXMgdW5hIGZ1c2nDsy4iCi0KLSM6IHNlcXVlbmNlci5jOjE3NzYKKyM6IHNlcXVlbmNlci5jOjE4OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGdldCBjb21taXQgbWVzc2FnZSBmb3IgJXMiCiBtc2dzdHIgIm5vIGVzIHBvdCBvYnRlbmlyIGVsIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyBkZSAlcyIKIAogIy4gVFJBTlNMQVRPUlM6IFRoZSBmaXJzdCAlcyB3aWxsIGJlIGEgInRvZG8iIGNvbW1hbmQgbGlrZQogIy4gInJldmVydCIgb3IgInBpY2siLCB0aGUgc2Vjb25kICVzIGEgU0hBMS4KLSM6IHNlcXVlbmNlci5jOjE3OTUKKyM6IHNlcXVlbmNlci5jOjE5MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGNhbm5vdCBwYXJzZSBwYXJlbnQgY29tbWl0ICVzIgogbXNnc3RyICIlczogbm8gZXMgcG90IGFuYWxpdHphciBsYSBjb21pc3Npw7MgcGFyZSAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTg2MAorIzogc2VxdWVuY2VyLmM6MTk4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVuYW1lICclcycgdG8gJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBjYW52aWFyIGVsIG5vbSDCqyVzwrsgYSDCqyVzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjE5MTUKKyM6IHNlcXVlbmNlci5jOjIwMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJldmVydCAlcy4uLiAlcyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCByZXZlcnRpciAlcy4uLiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTkxNgorIzogc2VxdWVuY2VyLmM6MjAzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgYXBwbHkgJXMuLi4gJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYXBsaWNhciAlcy4uLiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTk3NAorIzogc2VxdWVuY2VyLmM6MjEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAiZ2l0ICVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGxsZWdpciBsJ8OtbmRleCIKIAotIzogc2VxdWVuY2VyLmM6MTk4MQorIzogc2VxdWVuY2VyLmM6MjExMgogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWZyZXNoIHRoZSBpbmRleCIKIG1zZ3N0ciAiZ2l0ICVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGFjdHVhbGl0emFyIGwnw61uZGV4IgogCi0jOiBzZXF1ZW5jZXIuYzoyMDYyCisjOiBzZXF1ZW5jZXIuYzoyMTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRvZXMgbm90IGFjY2VwdCBhcmd1bWVudHM6ICclcyciCiBtc2dzdHIgIiVzIG5vIGFjY2VwdGEgcGFyw6BtZXRyZXM6IMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6MjA3MQorIzogc2VxdWVuY2VyLmM6MjE5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIGFyZ3VtZW50cyBmb3IgJXMiCiBtc2dzdHIgImZhbHRlbiBlbHMgYXJndW1lbnRzIHBlciAlcyIKIAotIzogc2VxdWVuY2VyLmM6MjEzMAorIzogc2VxdWVuY2VyLmM6MjIzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyUuKnMnIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciDCqyUuKnPCuyIKKworIzogc2VxdWVuY2VyLmM6MjI4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGxpbmUgJWQ6ICUuKnMiCiBtc2dzdHIgImzDrW5pYSBubyB2w6BsaWRhICVkOiAlLipzIgogCi0jOiBzZXF1ZW5jZXIuYzoyMTM4CisjOiBzZXF1ZW5jZXIuYzoyMzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAnJXMnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCi1tc2dzdHIgIk5vIGVzIHBvdCDCqyVzwrsgc2Vuc2UgdW5hIGNvbWlzc2nDsyBwcsOodmlhIgorbXNnc3RyICJubyBlcyBwb3Qgwqslc8K7IHNlbnNlIHVuYSBjb21pc3Npw7MgcHLDqHZpYSIKIAotIzogc2VxdWVuY2VyLmM6MjIwOQorIzogc2VxdWVuY2VyLmM6MjM0OCBidWlsdGluL3JlYmFzZS5jOjE3MiBidWlsdGluL3JlYmFzZS5jOjE5NworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjMgYnVpbHRpbi9yZWJhc2UuYzoyNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgJyVzJy4iCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIMKrJXPCuy4iCisKKyM6IHNlcXVlbmNlci5jOjIzODQKK21zZ2lkICJjYW5jZWxsaW5nIGEgY2hlcnJ5IHBpY2tpbmcgaW4gcHJvZ3Jlc3MiCittc2dzdHIgInMnZXN0w6AgY2FuY2VswrdsYW50IHVuIMKrY2hlcnJ5IHBpY2vCuyBlbiBjdXJzIgorCisjOiBzZXF1ZW5jZXIuYzoyMzkxCittc2dpZCAiY2FuY2VsbGluZyBhIHJldmVydCBpbiBwcm9ncmVzcyIKK21zZ3N0ciAicydlc3TDoCBjYW5jZWzCt2xhbnQgbGEgcmV2ZXJzacOzIGVuIGN1cnMiCisKKyM6IHNlcXVlbmNlci5jOjI0MzUKIG1zZ2lkICJwbGVhc2UgZml4IHRoaXMgdXNpbmcgJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nLiIKIG1zZ3N0ciAiY29ycmVnaXUtaG8gdXNhbnQgwqtnaXQgcmViYXNlIC0tZWRpdC10b2RvwrsuIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjExCisjOiBzZXF1ZW5jZXIuYzoyNDM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVudXNhYmxlIGluc3RydWN0aW9uIHNoZWV0OiAnJXMnIgogbXNnc3RyICJmdWxsIGQnaW5zdHJ1Y2Npb25zIGludXNhYmxlOiDCqyVzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjIyMTYKKyM6IHNlcXVlbmNlci5jOjI0NDIKIG1zZ2lkICJubyBjb21taXRzIHBhcnNlZC4iCiBtc2dzdHIgIm5vIHMnaGEgYW5hbGl0emF0IGNhcCBjb21pc3Npw7MuIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjI3CisjOiBzZXF1ZW5jZXIuYzoyNDUzCiBtc2dpZCAiY2Fubm90IGNoZXJyeS1waWNrIGR1cmluZyBhIHJldmVydC4iCiBtc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtjaGVycnkgcGlja8K7IGR1cmFudCB1bmEgcmV2ZXJzacOzLiIKIAotIzogc2VxdWVuY2VyLmM6MjIyOQorIzogc2VxdWVuY2VyLmM6MjQ1NQogbXNnaWQgImNhbm5vdCByZXZlcnQgZHVyaW5nIGEgY2hlcnJ5LXBpY2suIgogbXNnc3RyICJubyBlcyBwb3QgcmV2ZXJ0aXIgZHVyYW50IHVuIMKrY2hlcnJ5IHBpY2vCuy4iCiAKLSM6IHNlcXVlbmNlci5jOjIyOTkKKyM6IHNlcXVlbmNlci5jOjI1MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICJ2YWxvciBubyB2w6BsaWQgcGVyIGEgJXM6ICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoyMzgwCisjOiBzZXF1ZW5jZXIuYzoyNjMwCiBtc2dpZCAidW51c2FibGUgc3F1YXNoLW9udG8iCi1tc2dzdHIgIiIKK21zZ3N0ciAiwqtzcXVhc2gtb250b8K7IG5vIHVzYWJsZSIKIAotIzogc2VxdWVuY2VyLmM6MjM5NgorIzogc2VxdWVuY2VyLmM6MjY0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgb3B0aW9ucyBzaGVldDogJyVzJyIKIG1zZ3N0ciAiZnVsbCBkJ29wY2lvbnMgbWFsIGZvcm1hdDogwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzoyNDc5IHNlcXVlbmNlci5jOjQwMDUKKyM6IHNlcXVlbmNlci5jOjI3MzYgc2VxdWVuY2VyLmM6NDQ2MwogbXNnaWQgImVtcHR5IGNvbW1pdCBzZXQgcGFzc2VkIgogbXNnc3RyICJjb25qdW50IGRlIGNvbWlzc2lvbnMgYnVpdCBwYXNzYXQiCiAKLSM6IHNlcXVlbmNlci5jOjI0ODcKLW1zZ2lkICJhIGNoZXJyeS1waWNrIG9yIHJldmVydCBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgotbXNnc3RyICJ1biDCq2NoZXJyeSBwaWNrwrsgbyB1bmEgcmV2ZXJzacOzIGphIGVzdMOgIGVuIGN1cnMiCisjOiBzZXF1ZW5jZXIuYzoyNzUyCittc2dpZCAicmV2ZXJ0IGlzIGFscmVhZHkgaW4gcHJvZ3Jlc3MiCittc2dzdHIgInVuYSByZXZlcnNpw7MgamEgZXN0w6AgZW4gY3VycyIKIAotIzogc2VxdWVuY2VyLmM6MjQ4OAotbXNnaWQgInRyeSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8IC0tcXVpdCB8IC0tYWJvcnQpXCIiCi1tc2dzdHIgImludGVudGV1IFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgLS1xdWl0IHwgLS1hYm9ydClcIiIKKyM6IHNlcXVlbmNlci5jOjI3NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5IFwiZ2l0IHJldmVydCAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKK21zZ3N0ciAiaW50ZW50ZXUgwqtnaXQgcmV2ZXJ0ICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KcK7IgogCi0jOiBzZXF1ZW5jZXIuYzoyNDkxCisjOiBzZXF1ZW5jZXIuYzoyNzU3Cittc2dpZCAiY2hlcnJ5LXBpY2sgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIKK21zZ3N0ciAidW4gwqtjaGVycnkgcGlja8K7IGphIGVzdMOgIGVuIGN1cnMiCisKKyM6IHNlcXVlbmNlci5jOjI3NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5IFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIgorbXNnc3RyICJpbnRlbnRldSDCq2dpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdCnCuyIKKworIzogc2VxdWVuY2VyLmM6Mjc3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHNlcXVlbmNlciBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBjcmVhciBlbCBkaXJlY3RvcmkgZGUgc2Vxw7xlbmNpYWRvciDCqyVzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjI1MDUKKyM6IHNlcXVlbmNlci5jOjI3ODgKIG1zZ2lkICJjb3VsZCBub3QgbG9jayBIRUFEIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGJsb3F1ZWphciBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTYwIHNlcXVlbmNlci5jOjM3NjEKKyM6IHNlcXVlbmNlci5jOjI4NDggc2VxdWVuY2VyLmM6NDIwOQogbXNnaWQgIm5vIGNoZXJyeS1waWNrIG9yIHJldmVydCBpbiBwcm9ncmVzcyIKIG1zZ3N0ciAibmkgaGkgaGEgY2FwIMKrY2hlcnJ5IHBpY2vCuyBuaSBjYXAgcmV2ZXJzacOzIGVuIGN1cnMiCiAKLSM6IHNlcXVlbmNlci5jOjI1NjIKKyM6IHNlcXVlbmNlci5jOjI4NTAgc2VxdWVuY2VyLmM6Mjg2MQogbXNnaWQgImNhbm5vdCByZXNvbHZlIEhFQUQiCiBtc2dzdHIgIm5vIGVzIHBvdCByZXNvbGRyZSBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTY0IHNlcXVlbmNlci5jOjI1OTkKKyM6IHNlcXVlbmNlci5jOjI4NTIgc2VxdWVuY2VyLmM6Mjg5NgogbXNnaWQgImNhbm5vdCBhYm9ydCBmcm9tIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIgogbXNnc3RyICJubyBlcyBwb3QgYXZvcnRhciBkZXMgZCd1bmEgYnJhbmNhIHF1ZSBlbmNhcmEgaGEgZGUgbsOgaXhlciIKIAotIzogc2VxdWVuY2VyLmM6MjU4NSBidWlsdGluL2dyZXAuYzo3MjEKKyM6IHNlcXVlbmNlci5jOjI4ODIgYnVpbHRpbi9ncmVwLmM6NzM2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuICclcyciCiBtc2dzdHIgIm5vIGVzIHBvdCBvYnJpciDCqyVzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjI1ODcKKyM6IHNlcXVlbmNlci5jOjI4ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJyVzJzogJXMiCiBtc2dzdHIgIm5vIGVzIHBvdCBsbGVnaXIgwqslc8K7OiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MjU4OAorIzogc2VxdWVuY2VyLmM6Mjg4NQogbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUiCiBtc2dzdHIgImZpbmFsIGRlIGZpdHhlciBpbmVzcGVyYXQiCiAKLSM6IHNlcXVlbmNlci5jOjI1OTQKKyM6IHNlcXVlbmNlci5jOjI4OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RvcmVkIHByZS1jaGVycnktcGljayBIRUFEIGZpbGUgJyVzJyBpcyBjb3JydXB0IgogbXNnc3RyICJlbCBmaXR4ZXIgSEVBRCBlbW1hZ2F0emVtYXQgYWJhbnMgZGUgZmVyIMKrY2hlcnJ5IHBpY2vCuyDCqyVzwrsgw6lzIG1hbG3DqHMiCiAKLSM6IHNlcXVlbmNlci5jOjI2MDUKKyM6IHNlcXVlbmNlci5jOjI5MDIKIG1zZ2lkICJZb3Ugc2VlbSB0byBoYXZlIG1vdmVkIEhFQUQuIE5vdCByZXdpbmRpbmcsIGNoZWNrIHlvdXIgSEVBRCEiCiBtc2dzdHIgIlNlbWJsYSBxdWUgaGV1IG1vZ3V0IEhFQUQgc2Vuc2UgcmVib2JpbmFyLCBjb21wcm92ZXUtaG8gSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6MjcwOSBzZXF1ZW5jZXIuYzozNjc5CisjOiBzZXF1ZW5jZXIuYzoyOTQzCittc2dpZCAibm8gcmV2ZXJ0IGluIHByb2dyZXNzIgorbXNnc3RyICJubyBoaSBoYSBjYXAgcmV2ZXJzacOzIGVuIGN1cnMiCisKKyM6IHNlcXVlbmNlci5jOjI5NTEKK21zZ2lkICJubyBjaGVycnktcGljayBpbiBwcm9ncmVzcyIKK21zZ3N0ciAibmkgaGkgaGEgY2FwIMKrY2hlcnJ5IHBpY2vCuyBlbiBjdXJzIgorCisjOiBzZXF1ZW5jZXIuYzoyOTYxCittc2dpZCAiZmFpbGVkIHRvIHNraXAgdGhlIGNvbW1pdCIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBvbWV0cmUgbGEgY29taXNzacOzIgorCisjOiBzZXF1ZW5jZXIuYzoyOTY4Cittc2dpZCAidGhlcmUgaXMgbm90aGluZyB0byBza2lwIgorbXNnc3RyICJubyBoaSBoYSByZXMgYSBvbWV0cmUiCisKKyM6IHNlcXVlbmNlci5jOjI5NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImhhdmUgeW91IGNvbW1pdHRlZCBhbHJlYWR5P1xuIgorInRyeSBcImdpdCAlcyAtLWNvbnRpbnVlXCIiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzA5NSBzZXF1ZW5jZXIuYzo0MTIxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB1cGRhdGUgJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYWN0dWFsaXR6YXIgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjI3NDcgc2VxdWVuY2VyLmM6MzY1OQorIzogc2VxdWVuY2VyLmM6MzEzNCBzZXF1ZW5jZXIuYzo0MTAxCiBtc2dpZCAiY2Fubm90IHJlYWQgSEVBRCIKLW1zZ3N0ciAiTm8gZXMgcG90IGxsZWdpciBIRUFEIgorbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjI3NjIKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6MzE1MQorIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY29weSAnJXMnIHRvICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgY29waWFyIMKrJXPCuyBhIMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6Mjc3MAotIywgZnV6enksIGMtZm9ybWF0CisjOiBzZXF1ZW5jZXIuYzozMTU5CisjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgY2FuIGFtZW5kIHRoZSBjb21taXQgbm93LCB3aXRoXG4iCiAiXG4iCkBAIC01MTI2LDMzICs2NzkxLDI4IEBACiBtc2dzdHIgIiIKICJQb2RldSBlc21lbmFyIGxhIGNvbWlzc2nDsyBhcmEsIGFtYlxuIgogIlxuIgotIlx0Z2l0IGNvbW1pdCAtLWFtZW5kICRncGdfc2lnbl9vcHRfcXVvdGVkXG4iCisiICBnaXQgY29tbWl0IC0tYW1lbmQgJXNcbiIKICJcbiIKICJVbmEgdmVnYWRhIHF1ZSBlc3RpZ3VldSBzYXRpc2ZldCBhbWIgZWxzIHZvc3RyZXMgY2FudmlzLCBleGVjdXRldVxuIgogIlxuIgotIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgorIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI3ODAKKyM6IHNlcXVlbmNlci5jOjMxNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICVzLi4uICUuKnMiCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgYXBsaWNhciAlcy4uLiAlLipzIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzg3CisjOiBzZXF1ZW5jZXIuYzozMTc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBtZXJnZSAlLipzIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGZ1c2lvbmFyICUuKnMiCiAKLSM6IHNlcXVlbmNlci5jOjI3OTggc2VxdWVuY2VyLmM6MjgwMiBidWlsdGluL2RpZmZ0b29sLmM6NjQwCisjOiBzZXF1ZW5jZXIuYzozMTkwIHNlcXVlbmNlci5jOjMxOTQgYnVpbHRpbi9kaWZmdG9vbC5jOjY0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgY29waWFyIMKrJXPCuyBhIMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6MjgyNCBzZXF1ZW5jZXIuYzozMjQyIGJ1aWx0aW4vcmViYXNlLmM6NTgwIGJ1aWx0aW4vcmViYXNlLmM6OTk5Ci0jOiBidWlsdGluL3JlYmFzZS5jOjEzNTAgYnVpbHRpbi9yZWJhc2UuYzoxNDA0Ci1tc2dpZCAiY291bGQgbm90IHJlYWQgaW5kZXgiCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGwnw61uZGV4IgotCi0jOiBzZXF1ZW5jZXIuYzoyODI5CisjOiBzZXF1ZW5jZXIuYzozMjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleGVjdXRpb24gZmFpbGVkOiAlc1xuIgpAQCAtNTE2NywxMSArNjgyNywxMSBAQAogIiBnaXQgcmViYXNlIC0tY29udGludWVcbiIKICJcbiIKIAotIzogc2VxdWVuY2VyLmM6MjgzNQorIzogc2VxdWVuY2VyLmM6MzIyNwogbXNnaWQgImFuZCBtYWRlIGNoYW5nZXMgdG8gdGhlIGluZGV4IGFuZC9vciB0aGUgd29ya2luZyB0cmVlXG4iCiBtc2dzdHIgImkgaGEgZmV0IGNhbnZpcyBhIGwnw61uZGV4IGkvbyBsJ2FyYnJlIGRlIHRyZWJhbGxcbiIKIAotIzogc2VxdWVuY2VyLmM6Mjg0MQorIzogc2VxdWVuY2VyLmM6MzIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhlY3V0aW9uIHN1Y2NlZWRlZDogJXNcbiIKQEAgLTUxODcsNzkgKzY4NDcsNzIgQEAKICJcbiIKICIgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI5MDIKKyM6IHNlcXVlbmNlci5jOjMyOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWxsZWdhbCBsYWJlbCBuYW1lOiAnJS4qcyciCiBtc2dzdHIgIm5vbSBkJ2V0aXF1ZXRhIG5vIHBlcm3DqHM6IMKrJS4qc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzoyOTU0Ci0jLCBmdXp6eQorIzogc2VxdWVuY2VyLmM6MzM0OAogbXNnaWQgIndyaXRpbmcgZmFrZSByb290IGNvbW1pdCIKLW1zZ3N0ciAibm8gaGkgaGEgcmVzIGEgY29tZXRyZVxuIgorbXNnc3RyICJzJ2VzdMOgIGVzY3JpdmludCB1bmEgY29taXNzacOzIGFycmVsIGZhbHNhIgogCi0jOiBzZXF1ZW5jZXIuYzoyOTU5CisjOiBzZXF1ZW5jZXIuYzozMzUzCiBtc2dpZCAid3JpdGluZyBzcXVhc2gtb250byIKLW1zZ3N0ciAiIgorbXNnc3RyICJzJ2VzdMOgIGVzY3JpdmludCDCq3NxdWFzaC1vbnRvwrsiCiAKLSM6IHNlcXVlbmNlci5jOjI5OTcgYnVpbHRpbi9yZWJhc2UuYzo1ODUgYnVpbHRpbi9yZWJhc2UuYzo1OTAKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6MzM5MSBidWlsdGluL3JlYmFzZS5jOjg3NiBidWlsdGluL3JlYmFzZS5jOjg4MgorIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzIgotbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNlcmNhciBsJ2FyYnJlIGRlICVzLiIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBjZXJjYXIgbCdhcmJyZSBkZSAlcyIKIAotIzogc2VxdWVuY2VyLmM6MzAxNSBidWlsdGluL3JlYmFzZS5jOjYwMwotbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBpbmRleCIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBsJ8OtbmRleCIKLQotIzogc2VxdWVuY2VyLmM6MzA0MgorIzogc2VxdWVuY2VyLmM6MzQzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHJlc29sZHJlIMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6MzA2OAotIywgZnV6enkKKyM6IHNlcXVlbmNlci5jOjM0NjcKIG1zZ2lkICJjYW5ub3QgbWVyZ2Ugd2l0aG91dCBhIGN1cnJlbnQgcmV2aXNpb24iCi1tc2dzdHIgIk5vIGVzIHBvdCDCqyVzwrsgc2Vuc2UgdW5hIGNvbWlzc2nDsyBwcsOodmlhIgorbXNnc3RyICJubyBlcyBwb3QgZnVzaW9uYXIgc2Vuc2UgdW5hIHJldmlzacOzIGFjdHVhbCIKIAotIzogc2VxdWVuY2VyLmM6MzA5MAorIzogc2VxdWVuY2VyLmM6MzQ4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJyUuKnMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciDCqyUuKnPCuyIKIAotIzogc2VxdWVuY2VyLmM6MzA5OQorIzogc2VxdWVuY2VyLmM6MzQ5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIG1lcmdlOiAnJS4qcyciCiBtc2dzdHIgIm5vIGhpIGhhIHJlcyBwZXIgZnVzaW9uYXIgwqslLipzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjMxMTEKKyM6IHNlcXVlbmNlci5jOjM1MTAKIG1zZ2lkICJvY3RvcHVzIG1lcmdlIGNhbm5vdCBiZSBleGVjdXRlZCBvbiB0b3Agb2YgYSBbbmV3IHJvb3RdIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjMxMjYKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6MzUyNgorIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0IGNvbW1pdCBtZXNzYWdlIG9mICclcyciCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGVsIG1pc3NhdGdlIGRlIGNvbWlzc2nDszogJXMiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGVsIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyBkZSDCqyVzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjMyNzQKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6MzY4OAorIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZXZlbiBhdHRlbXB0IHRvIG1lcmdlICclLipzJyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciBvIGxsZWdpciDCqyVzwrsiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgZnVzaW9uYXIgwqslLipzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjMyOTAKLSMsIGZ1enp5CisjOiBzZXF1ZW5jZXIuYzozNzA0CiBtc2dpZCAibWVyZ2U6IFVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKLW1zZ3N0ciAiJXM6IE5vIHMnaGEgcG9ndXQgZXNjcml1cmUgdW4gZml0eGVyIGQnw61uZGV4IG5vdSIKK21zZ3N0ciAiZnVzacOzOiBubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIHVuIGZpdHhlciBkJ8OtbmRleCBub3UiCiAKLSM6IHNlcXVlbmNlci5jOjMzNTggYnVpbHRpbi9yZWJhc2UuYzoyNjgKKyM6IHNlcXVlbmNlci5jOjM3NzMgYnVpbHRpbi9yZWJhc2UuYzo3MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guXG4iCiBtc2dzdHIgIlMnaGEgYXBsaWNhdCBlbCDCq3N0YXNowrsgYXV0b23DoHRpY2FtZW50LlxuIgogCi0jOiBzZXF1ZW5jZXIuYzozMzcwCisjOiBzZXF1ZW5jZXIuYzozNzg1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdG9yZSAlcyIKIG1zZ3N0ciAibm8gZXMgcG90IGVtbWFnYXR6ZW1hciAlcyIKIAotIzogc2VxdWVuY2VyLmM6MzM3MyBidWlsdGluL3JlYmFzZS5jOjI4NAorIzogc2VxdWVuY2VyLmM6Mzc4OCBidWlsdGluL3JlYmFzZS5jOjc0OSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJBcHBseWluZyBhdXRvc3Rhc2ggcmVzdWx0ZWQgaW4gY29uZmxpY3RzLlxuIgpAQCAtNTI3MCwzMSArNjkyMywzMSBAQAogIkVscyB2b3N0cmVzIGNhbnZpcyBlc3RhbiBzZWd1cnMgZW4gZWwgwqtzdGFzaMK7LlxuIgogIlBvZGV1IGV4ZWN1dGFyIFwiZ2l0IHN0YXNoIHBvcFwiIG8gXCJnaXQgc3Rhc2ggZHJvcFwiIGVuIHF1YWxzZXZvbCBtb21lbnQuXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM0MjcKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6Mzg0OQorIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY2hlY2tvdXQgJXMiCiBtc2dzdHIgIm5vIGVzIHBvdCBhZ2FmYXIgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjM0NDEKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6Mzg2MworIywgYy1mb3JtYXQKIG1zZ2lkICIlczogbm90IGEgdmFsaWQgT0lEIgotbXNnc3RyICLCqyVzwrsgbm8gw6lzIHVuIHRlcm1lIHbDoGxpZCIKK21zZ3N0ciAiJXM6IG5vIMOpcyB1biBPSUQgdsOgbGlkIgogCi0jOiBzZXF1ZW5jZXIuYzozNDQ2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MjQKKyM6IHNlcXVlbmNlci5jOjM4NjggZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc3OQogbXNnaWQgImNvdWxkIG5vdCBkZXRhY2ggSEVBRCIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBzZXBhcmFyIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjM0NjEKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6Mzg4MworIywgYy1mb3JtYXQKIG1zZ2lkICJTdG9wcGVkIGF0IEhFQURcbiIKLW1zZ3N0ciAiQXR1cmF0IGEgJXMuLi4gICUuKnNcbiIKK21zZ3N0ciAiQXR1cmF0IGEgSEVBRFxuIgogCi0jOiBzZXF1ZW5jZXIuYzozNDYzCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IHNlcXVlbmNlci5jOjM4ODUKKyMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAlc1xuIgotbXNnc3RyICJBdHVyYXQgYSAlcy4uLiAgJS4qc1xuIgorbXNnc3RyICJBdHVyYXQgYSAlc1xuIgogCi0jOiBzZXF1ZW5jZXIuYzozNDcxCisjOiBzZXF1ZW5jZXIuYzozODkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDb3VsZCBub3QgZXhlY3V0ZSB0aGUgdG9kbyBjb21tYW5kXG4iCkBAIC01MzA3LDQ4ICs2OTYwLDQ4IEBACiAiICAgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjM1NDMKKyM6IHNlcXVlbmNlci5jOjM5NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAlcy4uLiAgJS4qc1xuIgogbXNnc3RyICJBdHVyYXQgYSAlcy4uLiAgJS4qc1xuIgogCi0jOiBzZXF1ZW5jZXIuYzozNjIyCisjOiBzZXF1ZW5jZXIuYzo0MDUwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gY29tbWFuZCAlZCIKIG1zZ3N0ciAib3JkcmUgJWQgZGVzY29uZWd1ZGEiCiAKLSM6IHNlcXVlbmNlci5jOjM2NjcKKyM6IHNlcXVlbmNlci5jOjQxMDkKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBvcmlnLWhlYWQiCi1tc2dzdHIgIk5vIHMnaGEgcG9ndXQgbGxlZ2lyIG9yaWctaGVhZCIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBsbGVnaXIgb3JpZy1oZWFkIgogCi0jOiBzZXF1ZW5jZXIuYzozNjcyIHNlcXVlbmNlci5jOjQ3NDEKKyM6IHNlcXVlbmNlci5jOjQxMTQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCAnb250byciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyICdvbnRvJyIKIAotIzogc2VxdWVuY2VyLmM6MzY4NgorIzogc2VxdWVuY2VyLmM6NDEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgdXBkYXRlIEhFQUQgdG8gJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYWN0dWFsaXR6YXIgSEVBRCBhICVzIgogCi0jOiBzZXF1ZW5jZXIuYzozNzcyCisjOiBzZXF1ZW5jZXIuYzo0MjIxCiBtc2dpZCAiY2Fubm90IHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIk5vIGVzIHBvdCBmZXIgwqtyZWJhc2XCuzogdGVuaXUgY2FudmlzIMKrdW5zdGFnZWTCuy4iCiAKLSM6IHNlcXVlbmNlci5jOjM3ODEKKyM6IHNlcXVlbmNlci5jOjQyMzAKIG1zZ2lkICJjYW5ub3QgYW1lbmQgbm9uLWV4aXN0aW5nIGNvbW1pdCIKIG1zZ3N0ciAibm8gZXMgcG90IGVzbWVuYXIgdW5hIGNvbWlzc2nDsyBubyBleGlzdGVudCIKIAotIzogc2VxdWVuY2VyLmM6Mzc4MworIzogc2VxdWVuY2VyLmM6NDIzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGZpbGU6ICclcyciCiBtc2dzdHIgImZpdHhlciBubyB2w6BsaWQ6IMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6Mzc4NQorIzogc2VxdWVuY2VyLmM6NDIzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbnRlbnRzOiAnJXMnIgogbXNnc3RyICJjb250aW5ndXQgbm8gdsOgbGlkOiDCqyVzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjM3ODgKKyM6IHNlcXVlbmNlci5jOjQyMzcKIG1zZ2lkICIiCiAiXG4iCiAiWW91IGhhdmUgdW5jb21taXR0ZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS4gUGxlYXNlLCBjb21taXQgdGhlbVxuIgpAQCAtNTM1Niw4NSArNzAwOSw0NCBAQAogbXNnc3RyICIiCiAiXG4iCiAiVGVuaXUgY2FudmlzIG5vIGNvbWVzb3MgZW4gZWwgdm9zdHJlIGFyYnJlIGRlIHRyZWJhbGwuIFxuIgotIlByaW1lciBjb21ldGV1LWxvcyBpIGRlc3Byw6lzIGV4ZWN1dGV1ICdnaXQgcmViYXNlIC0tY29udGludWUnIGRlIG5vdS4iCisiQ29tZXRldS1sb3MgcHJpbWVyIGkgZGVzcHLDqXMgZXhlY3V0ZXUgwqtnaXQgcmViYXNlIC0tY29udGludWXCuyBkZSBub3UuIgogCi0jOiBzZXF1ZW5jZXIuYzozODI0IHNlcXVlbmNlci5jOjM4NjIKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6NDI3MyBzZXF1ZW5jZXIuYzo0MzEyCisjLCAgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZmlsZTogJyVzJyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBjcmVhciBlbCBmaXR4ZXIgwqslc8K7IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIGVsIGZpdHhlcjogwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzozODc3CisjOiBzZXF1ZW5jZXIuYzo0MzI3CiBtc2dpZCAiY291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGVsaW1pbmFyIENIRVJSWV9QSUNLX0hFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjM4ODQKKyM6IHNlcXVlbmNlci5jOjQzMzQKIG1zZ2lkICJjb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKLW1zZ3N0ciAiTm8gcydoYW4gcG9ndXQgY29tZXRyZSBlbHMgY2FudmlzIMKrc3RhZ2VkwrsuIgorbXNnc3RyICJubyBzJ2hhbiBwb2d1dCBjb21ldHJlIGVscyBjYW52aXMgwqtzdGFnZWTCuy4iCiAKLSM6IHNlcXVlbmNlci5jOjM5ODIKKyM6IHNlcXVlbmNlci5jOjQ0NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGNhbid0IGNoZXJyeS1waWNrIGEgJXMiCiBtc2dzdHIgIiVzOiBubyBlcyBwb3QgZmVyIMKrY2hlcnJ5IHBpY2vCuyBhICVzIgogCi0jOiBzZXF1ZW5jZXIuYzozOTg2CisjOiBzZXF1ZW5jZXIuYzo0NDQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBiYWQgcmV2aXNpb24iCiBtc2dzdHIgIiVzOiByZXZpc2nDsyBpbmNvcnJlY3RhIgogCi0jOiBzZXF1ZW5jZXIuYzo0MDIxCisjOiBzZXF1ZW5jZXIuYzo0NDc5CiBtc2dpZCAiY2FuJ3QgcmV2ZXJ0IGFzIGluaXRpYWwgY29tbWl0IgogbXNnc3RyICJubyBlcyBwb3QgcmV2ZXJ0aXIgY29tIGEgY29taXNzacOzIGluaWNpYWwiCiAKLSM6IHNlcXVlbmNlci5jOjQ0NjYKKyM6IHNlcXVlbmNlci5jOjQ5NTIKIG1zZ2lkICJtYWtlX3NjcmlwdDogdW5oYW5kbGVkIG9wdGlvbnMiCiBtc2dzdHIgIm1ha2Vfc2NyaXB0OiBvcGNpb25zIG5vIGdlc3Rpb25hZGVzIgogCi0jOiBzZXF1ZW5jZXIuYzo0NDY5CisjOiBzZXF1ZW5jZXIuYzo0OTU1CiBtc2dpZCAibWFrZV9zY3JpcHQ6IGVycm9yIHByZXBhcmluZyByZXZpc2lvbnMiCiBtc2dzdHIgIm1ha2Vfc2NyaXB0OiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHByZXBhcmFyIGxlcyByZXZpc2lvbnMiCiAKLSM6IHNlcXVlbmNlci5jOjQ1MDkgc2VxdWVuY2VyLmM6NDU2NSBzZXF1ZW5jZXIuYzo0ODQwCi0jLCBjLWZvcm1hdAotbXNnaWQgInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIKLW1zZ3N0ciAibGxpc3RhIHBlciBhIGZlciBpbmVzdGFibGU6IMKrJXPCuyIKLQotIzogc2VxdWVuY2VyLmM6NDYyMAotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0idW5yZWNvZ25pemVkIHNldHRpbmcgJXMgZm9yIG9wdGlvbiByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4gSWdub3JpbmcuIgotbXNnc3RyICIiCi0iTm8gcydoYSByZWNvbmVndXQgZWwgcGFyw6BtZXRyZSAlcyBwZXIgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2suIFMnZXN0w6AgIgotImlnbm9yYW50LiIKLQotIzogc2VxdWVuY2VyLmM6NDY5MAotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCi0iRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCi1tc2dzdHIgIiIKLSJBZHZlcnTDqG5jaWE6IHBvdCBzZXIgcXVlIGFsZ3VuZXMgY29taXNzaW9ucyBzJ2hhZ2luIGRlc2NhcnRhdCAiCi0iYWNjaWRlbnRhbG1lbnQuXG4iCi0iTGVzIGNvbWlzc2lvbnMgZGVzY2FydGFkZXMgKG3DqXMgbm92YSBhIG3DqXMgdmVsbGEpOlxuIgotCi0jOiBzZXF1ZW5jZXIuYzo0Njk3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJUbyBhdm9pZCB0aGlzIG1lc3NhZ2UsIHVzZSBcImRyb3BcIiB0byBleHBsaWNpdGx5IHJlbW92ZSBhIGNvbW1pdC5cbiIKLSJcbiIKLSJVc2UgJ2dpdCBjb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2snIHRvIGNoYW5nZSB0aGUgbGV2ZWwgb2YgIgotIndhcm5pbmdzLlxuIgotIlRoZSBwb3NzaWJsZSBiZWhhdmlvdXJzIGFyZTogaWdub3JlLCB3YXJuLCBlcnJvci5cbiIKLSJcbiIKLW1zZ3N0ciAiIgotIlBlciBhIGV2aXRhciBhcXVlc3QgbWlzc2F0Z2UsIHVzZXUgXCJkcm9wXCIgcGVyIGEgZWxpbWluYXIgZXhwbMOtY2l0YW1lbnQgdW5hICIKLSJjb21pc3Npw7MuXG4iCi0iXG4iCi0iVXNldSAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgcGVyIGEgY2FudmlhciBlbCBuaXZlbGwgIgotImQnYWR2ZXJ0w6huY2llcy5cbiIKLSJFbHMgY29tcG9ydGFtZW50cyBwb3NzaWJsZXMgc8OzbjogaWdub3JlLCB3YXJuLCBlcnJvci5cbiIKLQotIzogc2VxdWVuY2VyLmM6NDcxMAotIywgYy1mb3JtYXQKKyM6IHNlcXVlbmNlci5jOjUxMTMKIG1zZ2lkICIiCiAiWW91IGNhbiBmaXggdGhpcyB3aXRoICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyBhbmQgdGhlbiBydW4gJ2dpdCByZWJhc2UgLS0iCiAiY29udGludWUnLlxuIgpAQCAtNTQ0Myw2OSArNzA1NSw1MSBAQAogIlBvZGV1IGFycmVnbGFyIGFpeMOyIGFtYiAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycgaSBkZXNwcsOpcyAnZ2l0IHJlYmFzZSAtLSIKICJjb250aW51ZScuXG4iCiAKLSM6IHNlcXVlbmNlci5jOjQ4NDggc2VxdWVuY2VyLmM6NDg4NgotIywgZnV6enkKKyM6IHNlcXVlbmNlci5jOjUyMjYgc2VxdWVuY2VyLmM6NTI0MwogbXNnaWQgIm5vdGhpbmcgdG8gZG8iCi1tc2dzdHIgIm5vIGhpIGhhIHJlcyBhIGNvbWV0cmVcbiIKK21zZ3N0ciAicmVzIGEgZmVyIgogCi0jOiBzZXF1ZW5jZXIuYzo0ODUyCi0jLCBmdXp6eSwgYy1mb3JtYXQKLW1zZ2lkICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZCkiCi1tc2dpZF9wbHVyYWwgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kcykiCi1tc2dzdHJbMF0gIlJlYmFzYSAkc2hvcnRyZXZpc2lvbnMgc29icmUgJHNob3J0b250byAoJHRvZG9jb3VudCBvcmRyZSkiCi1tc2dzdHJbMV0gIlJlYmFzYSAkc2hvcnRyZXZpc2lvbnMgc29icmUgJHNob3J0b250byAoJHRvZG9jb3VudCBvcmRyZXMpIgotCi0jOiBzZXF1ZW5jZXIuYzo0ODY0Ci0jLCBmdXp6eSwgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcycuIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNvcGlhciDCqyVzwrsgYSDCqyVzwrsiCi0KLSM6IHNlcXVlbmNlci5jOjQ4Njggc2VxdWVuY2VyLmM6NDg5NwotIywgZnV6enkKLW1zZ2lkICJjb3VsZCBub3QgdHJhbnNmb3JtIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgbGEgbGxpc3RhIHBlciBhIGZlciIKLQotIzogc2VxdWVuY2VyLmM6NDkwMAotIywgZnV6enkKKyM6IHNlcXVlbmNlci5jOjUyNTcKIG1zZ2lkICJjb3VsZCBub3Qgc2tpcCB1bm5lY2Vzc2FyeSBwaWNrIGNvbW1hbmRzIgotbXNnc3RyICJvbWV0IGVscyDCq3BpY2tzwrsgbm8gbmVjZXNzYXJpcyIKK21zZ3N0ciAibm8gcydoYW4gcG9ndXQgb21ldHJlIGxlcyBvcmRyZXMgwqtwaWNrc8K7IG5vIG5lY2Vzc8OgcmllcyIKIAotIzogc2VxdWVuY2VyLmM6NDk4MworIzogc2VxdWVuY2VyLmM6NTM1MQogbXNnaWQgInRoZSBzY3JpcHQgd2FzIGFscmVhZHkgcmVhcnJhbmdlZC4iCiBtc2dzdHIgImwnc2NyaXB0IGphIGVzdGF2YSBlbmRyZcOnYXQuIgogCi0jOiBzZXR1cC5jOjEyMworIzogc2V0dXAuYzoxMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkiCiBtc2dzdHIgIsKrJXPCuyDDqXMgZm9yYSBkZWwgZGlww7JzaXQiCiAKLSM6IHNldHVwLmM6MTcyCisjOiBzZXR1cC5jOjE3NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJXM6IG5vIHN1Y2ggcGF0aCBpbiB0aGUgd29ya2luZyB0cmVlLlxuIgogIlVzZSAnZ2l0IDxjb21tYW5kPiAtLSA8cGF0aD4uLi4nIHRvIHNwZWNpZnkgcGF0aHMgdGhhdCBkbyBub3QgZXhpc3QgbG9jYWxseS4iCiBtc2dzdHIgIiIKICIlczogbm8gaGkgaGEgdGFsIGNhbcOtIGVuIGwnYXJicmUgZGUgdHJlYmFsbC5cbiIKLSJVc2V1ICdnaXQgPG9yZHJlPiAtLSA8Y2Ftw60+Li4uJyBwZXIgYSBlc3BlY2lmaWNhciBjYW1pbnMgcXVlIG5vIGV4aXN0ZWl4aW4gIgorIlVzZXUgwqtnaXQgPG9yZHJlPiAtLSA8Y2Ftw60+Li4uwrsgcGVyIGEgZXNwZWNpZmljYXIgY2FtaW5zIHF1ZSBubyBleGlzdGVpeGluICIKICJsb2NhbG1lbnQuIgogCi0jOiBzZXR1cC5jOjE4NQorIzogc2V0dXAuYzoxODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImFtYmlndW91cyBhcmd1bWVudCAnJXMnOiB1bmtub3duIHJldmlzaW9uIG9yIHBhdGggbm90IGluIHRoZSB3b3JraW5nIHRyZWUuXG4iCiAiVXNlICctLScgdG8gc2VwYXJhdGUgcGF0aHMgZnJvbSByZXZpc2lvbnMsIGxpa2UgdGhpczpcbiIKICInZ2l0IDxjb21tYW5kPiBbPHJldmlzaW9uPi4uLl0gLS0gWzxmaWxlPi4uLl0nIgogbXNnc3RyICIiCi0icGFyw6BtZXRyZSBhbWJpZ3Ugwqslc8K7OiByZXZpc2nDsyBubyBjb25lZ3VkYSBvIGNhbcOtIG5vIGVuIGwnYXJicmUgZGUgdHJlYmFsbC5cbiIKLSJVc2V1ICctLScgcGVyIGEgc2VwYXJhciBlbHMgY2FtaW5zIGRlIGxlcyByZXZpc2lvbnMsIGNvbSBhaXjDsjpcbiIKKyJwYXLDoG1ldHJlIGFtYmlndSDCqyVzwrs6IHJldmlzacOzIG5vIGNvbmVndWRhIG8gZWwgY2Ftw60gbm8gw6lzIGVuIGwnYXJicmUgZGUgIgorInRyZWJhbGwuXG4iCisiVXNldSDCqy0twrsgcGVyIGEgc2VwYXJhciBlbHMgY2FtaW5zIGRlIGxlcyByZXZpc2lvbnM6XG4iCiAiJ2dpdCA8b3JkcmU+IFs8cmV2aXNpw7M+Li4uXSAtLSBbPGZpdHhlcj4uLi5dJyIKIAotIzogc2V0dXAuYzoyMzQKKyM6IHNldHVwLmM6MjM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9wdGlvbiAnJXMnIG11c3QgY29tZSBiZWZvcmUgbm9uLW9wdGlvbiBhcmd1bWVudHMiCiBtc2dzdHIgImwnb3BjacOzIMKrJXPCuyBoYSBkZSB2ZW5pciBhYmFucyBkZWxzIGFyZ3VtZW50cyBvcGNpb25hbHMiCiAKLSM6IHNldHVwLmM6MjUzCisjOiBzZXR1cC5jOjI1NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IGJvdGggcmV2aXNpb24gYW5kIGZpbGVuYW1lXG4iCkBAIC01NTEzLDEwNiArNzEwNywxMDcgQEAKICInZ2l0IDxjb21tYW5kPiBbPHJldmlzaW9uPi4uLl0gLS0gWzxmaWxlPi4uLl0nIgogbXNnc3RyICIiCiAicGFyw6BtZXRyZSBhbWJpZ3Ugwqslc8K7OiBhbWJkw7NzIHVuYSByZXZpc2nDsyBpIHVuIG5vbSBkZSBmaXR4ZXJcbiIKLSJVc2V1ICctLScgcGVyIGEgc2VwYXJhciBlbHMgY2FtaW5zIGRlIGxlcyByZXZpc2lvbnMsIGNvbSBhaXjDsjpcbiIKKyJVc2V1ICctLScgcGVyIGEgc2VwYXJhciBlbHMgY2FtaW5zIGRlIGxlcyByZXZpc2lvbnM6XG4iCiAiJ2dpdCA8b3JkcmU+IFs8cmV2aXNpw7M+Li4uXSAtLSBbPGZpdHhlcj4uLi5dJyIKIAotIzogc2V0dXAuYzozODkKKyM6IHNldHVwLmM6MzkxCiBtc2dpZCAidW5hYmxlIHRvIHNldCB1cCB3b3JrIHRyZWUgdXNpbmcgaW52YWxpZCBjb25maWciCiBtc2dzdHIgIiIKLSJubyBzJ2hhIHBvZ3V0IGNvbmZpZ3VyYXIgdW4gYXJicmUgZGUgdHJlYmFsbCB1dGlsaXR6YW50IHVuYSBjb25maWd1cmFjacOzIG5vIHbDoGxpZGEiCisibm8gcydoYSBwb2d1dCBjb25maWd1cmFyIHVuIGFyYnJlIGRlIHRyZWJhbGwgdXRpbGl0emFudCB1bmEgY29uZmlndXJhY2nDsyBubyAiCisidsOgbGlkYSIKIAotIzogc2V0dXAuYzozOTMKKyM6IHNldHVwLmM6Mzk1CiBtc2dpZCAidGhpcyBvcGVyYXRpb24gbXVzdCBiZSBydW4gaW4gYSB3b3JrIHRyZWUiCiBtc2dzdHIgImFxdWVzdGEgb3BlcmFjacOzIHMnaGEgZCdleGVjdXRhciBlbiB1biBhcmJyZSBkZSB0cmViYWxsIgogCi0jOiBzZXR1cC5jOjUyNworIzogc2V0dXAuYzo1NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXhwZWN0ZWQgZ2l0IHJlcG8gdmVyc2lvbiA8PSAlZCwgZm91bmQgJWQiCiBtc2dzdHIgIlMnZXNwZXJhdmEgdW5hIHZlcnNpw7MgZGUgZGlww7JzaXQgZGUgZ2l0IDw9ICVkLCBzJ2hhIHRyb2JhdCAlZCIKIAotIzogc2V0dXAuYzo1MzUKKyM6IHNldHVwLmM6NTQ5CiBtc2dpZCAidW5rbm93biByZXBvc2l0b3J5IGV4dGVuc2lvbnMgZm91bmQ6IgogbXNnc3RyICJzJ2hhbiB0cm9iYXQgZXh0ZW5zaW9ucyBkZSBkaXDDsnNpdCBkZXNjb25lZ3VkZXM6IgogCi0jOiBzZXR1cC5jOjU1NAorIzogc2V0dXAuYzo1NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3Igb3BlbmluZyAnJXMnIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIG9icmlyIMKrJXPCuyIKIAotIzogc2V0dXAuYzo1NTYKKyM6IHNldHVwLmM6NTcwCiAjLCBjLWZvcm1hdAogbXNnaWQgInRvbyBsYXJnZSB0byBiZSBhIC5naXQgZmlsZTogJyVzJyIKIG1zZ3N0ciAibWFzc2EgbGFyZyBwZXIgYSBzZXIgdW4gZml0eGVyIC5naXQ6IMKrJXPCuyIKIAotIzogc2V0dXAuYzo1NTgKKyM6IHNldHVwLmM6NTcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHJlYWRpbmcgJXMiCiBtc2dzdHIgImVycm9yIGVuIGxsZWdpciAlcyIKIAotIzogc2V0dXAuYzo1NjAKKyM6IHNldHVwLmM6NTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZ2l0ZmlsZSBmb3JtYXQ6ICVzIgogbXNnc3RyICJmb3JtYXQgZ2l0ZmlsZSBubyB2w6BsaWQ6ICVzIgogCi0jOiBzZXR1cC5jOjU2MgorIzogc2V0dXAuYzo1NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gcGF0aCBpbiBnaXRmaWxlOiAlcyIKIG1zZ3N0ciAic2Vuc2UgY2Ftw60gYWwgZ2l0ZmlsZTogJXMiCiAKLSM6IHNldHVwLmM6NTY0CisjOiBzZXR1cC5jOjU3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeTogJXMiCiBtc2dzdHIgIm5vIMOpcyB1biBkaXDDsnNpdCBkZSBnaXQ6ICVzIgogCi0jOiBzZXR1cC5jOjY2MworIzogc2V0dXAuYzo2NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyQlcycgdG9vIGJpZyIKIG1zZ3N0ciAiwqskJXPCuyBtYXNzYSBncmFuIgogCi0jOiBzZXR1cC5jOjY3NworIzogc2V0dXAuYzo2OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnk6ICclcyciCiBtc2dzdHIgIm5vIMOpcyB1biBkaXDDsnNpdCBkZSBnaXQ6IMKrJXPCuyIKIAotIzogc2V0dXAuYzo3MDYgc2V0dXAuYzo3MDggc2V0dXAuYzo3MzkKKyM6IHNldHVwLmM6NzIwIHNldHVwLmM6NzIyIHNldHVwLmM6NzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGRpciB0byAnJXMnIgogbXNnc3RyICJubyBlcyBwb3QgY2FudmlhciBkZSBkaXJlY3RvcmkgYSDCqyVzwrsiCiAKLSM6IHNldHVwLmM6NzExIHNldHVwLmM6NzY3IHNldHVwLmM6Nzc3IHNldHVwLmM6ODE2IHNldHVwLmM6ODI0IHNldHVwLmM6ODM5CisjOiBzZXR1cC5jOjcyNSBzZXR1cC5jOjc4MSBzZXR1cC5jOjc5MSBzZXR1cC5jOjgzMCBzZXR1cC5jOjgzOAogbXNnaWQgImNhbm5vdCBjb21lIGJhY2sgdG8gY3dkIgogbXNnc3RyICJubyBlcyBwb3QgdG9ybmFyIGFsIGRpcmVjdG9yaSBkZSB0cmViYWxsIGFjdHVhbCIKIAotIzogc2V0dXAuYzo4MzcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBvZiB0aGUgcGFyZW50IGRpcmVjdG9yaWVzKTogJXMiCi1tc2dzdHIgIm5vIMOpcyB1biBkaXDDsnNpdCBkZSBnaXQgKG5pIGNhcCBkZWxzIGRpcmVjdG9yaXMgcGFyZXMpOiAlcyIKLQotIzogc2V0dXAuYzo4NDgKKyM6IHNldHVwLmM6ODUyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBzdGF0ICclKnMlcyVzJyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBmZXIgc3RhdCBhIMKrJSpzJXMlc8K7IgogCi0jOiBzZXR1cC5jOjEwNzgKKyM6IHNldHVwLmM6MTA5MAogbXNnaWQgIlVuYWJsZSB0byByZWFkIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgbGxlZ2lyIGVsIGRpcmVjdG9yaSBkZSB0cmViYWxsIGFjdHVhbCIKIAotIzogc2V0dXAuYzoxMDkwIHNldHVwLmM6MTA5NgorIzogc2V0dXAuYzoxMDk5IHNldHVwLmM6MTEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY2hhbmdlIHRvICclcyciCiBtc2dzdHIgIm5vIGVzIHBvdCBjYW52aWFyIGEgwqslc8K7IgogCi0jOiBzZXR1cC5jOjExMDkKKyM6IHNldHVwLmM6MTExMAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeSAob3IgYW55IG9mIHRoZSBwYXJlbnQgZGlyZWN0b3JpZXMpOiAlcyIKK21zZ3N0ciAibm8gw6lzIHVuIGRpcMOyc2l0IGRlIGdpdCAobmkgY2FwIGRlbHMgZGlyZWN0b3JpcyBwYXJlcyk6ICVzIgorCisjOiBzZXR1cC5jOjExMTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgcGFyZW50IHVwIHRvIG1vdW50IHBvaW50ICVzKVxuIgogIlN0b3BwaW5nIGF0IGZpbGVzeXN0ZW0gYm91bmRhcnkgKEdJVF9ESVNDT1ZFUllfQUNST1NTX0ZJTEVTWVNURU0gbm90IHNldCkuIgogbXNnc3RyICIiCi0ibm8gdW4gZGlww7JzaXQgZGUgZ2l0IChuaSBjYXAgcGFyZSBmaW5zIGFsIHB1bnQgZGUgbXVudGF0Z2UgJXMpXG4iCisibm8gw6lzIHVuIGRpcMOyc2l0IGRlIGdpdCAobmkgY2FwIHBhcmUgZmlucyBhbCBwdW50IGRlIG11bnRhdGdlICVzKVxuIgogIlMnYXR1cmEgYSBsYSBmcm9udGVyYSBkZSBzaXN0ZW1hIGRlIGZpdHhlcnMgKEdJVF9ESVNDT1ZFUllfQUNST1NTX0ZJTEVTWVNURU0gIgogIm5vIGVzdMOgIGVzdGFibGVydCkuIgogCi0jOiBzZXR1cC5jOjExOTIKKyM6IHNldHVwLmM6MTIyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicHJvYmxlbSB3aXRoIGNvcmUuc2hhcmVkUmVwb3NpdG9yeSBmaWxlbW9kZSB2YWx1ZSAoMCUuM28pLlxuIgpAQCAtNTYyMywyOTUgKzcyMTgsMjk0IEBACiAiRWwgcHJvcGlldGFyaSBkZWxzIGZpdHhlcnMgc2VtcHJlIGhhIGRlIHRlbmlyIHBlcm1pc29zIGRlIGxlY3R1cmEgaSAiCiAiZXNjcmlwdHVyYS4iCiAKLSM6IHNldHVwLmM6MTIzNQorIzogc2V0dXAuYzoxMjcxCiBtc2dpZCAib3BlbiAvZGV2L251bGwgb3IgZHVwIGZhaWxlZCIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBvYnJpciAvZGV2L251bGwgbyBkdXAiCiAKLSM6IHNldHVwLmM6MTI1MAorIzogc2V0dXAuYzoxMjg2CiBtc2dpZCAiZm9yayBmYWlsZWQiCiBtc2dzdHIgImVsIMKrZm9ya8K7IGhhIGZhbGxhdCIKIAotIzogc2V0dXAuYzoxMjU1CisjOiBzZXR1cC5jOjEyOTEKIG1zZ2lkICJzZXRzaWQgZmFpbGVkIgogbXNnc3RyICJsJ8Krc3Rhc2jCuyBoYSBmYWxsYXQiCiAKLSM6IHNoYTEtZmlsZS5jOjM4MQorIzogc2hhMS1maWxlLmM6NDUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCBkaXJlY3RvcnkgJXMgZG9lcyBub3QgZXhpc3Q7IGNoZWNrIC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiCi1tc2dzdHIgIiIKLQotIzogc2hhMS1maWxlLmM6NDMyCi0jLCBmdXp6eSwgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gbm9ybWFsaXplIGFsdGVybmF0ZSBvYmplY3QgcGF0aDogJXMiCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGwnb2JqZWN0ZTogJXMiCittc2dzdHIgIm5vIGV4aXN0ZWl4IGVsIGRpcmVjdG9yaSBkJ29iamVjdGUgJXM7IGNvbXByb3ZldSAuZ2l0L29iamVjdHMvaW5mby9hbHRlcm5hdGVzIgogCiAjOiBzaGExLWZpbGUuYzo1MDMKICMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG5vcm1hbGl6ZSBhbHRlcm5hdGUgb2JqZWN0IHBhdGg6ICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG5vcm1hbGl0emFyIGVsIGNhbcOtIGEgbCdvYmplY3RlIGFsdGVybmF0aXU6ICVzIgorCisjOiBzaGExLWZpbGUuYzo1NzUKKyMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGlnbm9yaW5nIGFsdGVybmF0ZSBvYmplY3Qgc3RvcmVzLCBuZXN0aW5nIHRvbyBkZWVwIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjUxMAotIywgZnV6enksIGMtZm9ybWF0CisjOiBzaGExLWZpbGUuYzo1ODIKKyMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG5vcm1hbGl6ZSBvYmplY3QgZGlyZWN0b3J5OiAlcyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbCdvYmplY3RlOiAlcyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBub3JtYWxpdHphciBlbCBkaXJlY3RvcmkgZGUgbCdvYmplY3RlOiAlcyIKIAotIzogc2hhMS1maWxlLmM6NTY1CisjOiBzaGExLWZpbGUuYzo2MjUKICMsIGZ1enp5CiBtc2dpZCAidW5hYmxlIHRvIGZkb3BlbiBhbHRlcm5hdGVzIGxvY2tmaWxlIgogbXNnc3RyICJubyBzJ2hhbiBwb2d1dCBlc2NyaXVyZSBlbHMgcGFyw6BtZXRyZXMgYWwgZml0eGVyIGRlIGNvbmZpZ3VyYWNpw7MiCiAKLSM6IHNoYTEtZmlsZS5jOjU4MwotIywgZnV6enkKKyM6IHNoYTEtZmlsZS5jOjY0MwogbXNnaWQgInVuYWJsZSB0byByZWFkIGFsdGVybmF0ZXMgZmlsZSIKLW1zZ3N0ciAibm8gZXMgcG90IGxsZWdpciBlbCBmaXR4ZXIgZCfDrW5kZXgiCittc2dzdHIgIm5vIGVzIHBvdCBsbGVnaXIgZWwgZml0eGVyIMKrYWx0ZXJuYXRlc8K7IgogCi0jOiBzaGExLWZpbGUuYzo1OTAKLSMsIGZ1enp5CisjOiBzaGExLWZpbGUuYzo2NTAKIG1zZ2lkICJ1bmFibGUgdG8gbW92ZSBuZXcgYWx0ZXJuYXRlcyBmaWxlIGludG8gcGxhY2UiCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgdW4gZml0eGVyIGQnw61uZGV4IG5vdSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBtb3VyZSBlbCBub3UgZml0eGVyIMKrYWx0ZXJuYXRlc8K7IGFsIGxsb2MiCiAKLSM6IHNoYTEtZmlsZS5jOjYyNQorIzogc2hhMS1maWxlLmM6Njg1CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAiZWwgY2Ftw60gwqslc8K7IG5vIGV4aXN0ZWl4IgogCi0jOiBzaGExLWZpbGUuYzo2NTEKKyM6IHNoYTEtZmlsZS5jOjcxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGFzIGEgbGlua2VkIGNoZWNrb3V0IGlzIG5vdCBzdXBwb3J0ZWQgeWV0LiIKIG1zZ3N0ciAiIgogIkVuY2FyYSBubyBzZSBzdXBvcnRhIGVsIGRpcMOyc2l0IGRlIHJlZmVyw6huY2lhIMKrJXPCuyBjb20gYSBhZ2FmYW1lbnQgZW5sbGHDp2F0LiIKIAotIzogc2hhMS1maWxlLmM6NjU3CisjOiBzaGExLWZpbGUuYzo3MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBpcyBub3QgYSBsb2NhbCByZXBvc2l0b3J5LiIKIG1zZ3N0ciAiZWwgZGlww7JzaXQgZGUgcmVmZXLDqG5jaWEgwqslc8K7IG5vIMOpcyB1biBkaXDDsnNpdCBsb2NhbC4iCiAKLSM6IHNoYTEtZmlsZS5jOjY2MworIzogc2hhMS1maWxlLmM6NzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgc2hhbGxvdyIKIG1zZ3N0ciAiZWwgZGlww7JzaXQgZGUgcmVmZXLDqG5jaWEgwqslc8K7IMOpcyBzdXBlcmZpY2lhbCIKIAotIzogc2hhMS1maWxlLmM6NjcxCisjOiBzaGExLWZpbGUuYzo3MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBpcyBncmFmdGVkIgogbXNnc3RyICJlbCBkaXDDsnNpdCBkZSByZWZlcsOobmNpYSDCqyVzwrsgw6lzIGVtcGVsdGF0IgogCi0jOiBzaGExLWZpbGUuYzo3ODEKKyM6IHNoYTEtZmlsZS5jOjc5MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGxpbmUgd2hpbGUgcGFyc2luZyBhbHRlcm5hdGUgcmVmczogJXMiCittc2dzdHIgImzDrW5pYSBubyB2w6BsaWRhIHF1YW4gcydhbmFsaXR6YXZlbiBsZXMgcmVmZXLDqG5jaWVzIGRlIGwnwqthbHRlcm5hdGXCuzogJXMiCisKKyM6IHNoYTEtZmlsZS5jOjk0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhdHRlbXB0aW5nIHRvIG1tYXAgJTxQUkl1TUFYPiBvdmVyIGxpbWl0ICU8UFJJdU1BWD4iCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6ODA2Ci0jLCBmdXp6eQorIzogc2hhMS1maWxlLmM6OTY0CiBtc2dpZCAibW1hcCBmYWlsZWQiCi1tc2dzdHIgIiVzIGhhIGZhbGxhdCIKK21zZ3N0ciAibW1hcCBoYSBmYWxsYXQiCiAKLSM6IHNoYTEtZmlsZS5jOjk3MwotIywgZnV6enksIGMtZm9ybWF0CisjOiBzaGExLWZpbGUuYzoxMTI4CisjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCBmaWxlICVzIGlzIGVtcHR5IgotbXNnc3RyICJ0aXB1cyBkJ29iamVjdGUiCittc2dzdHIgImVsIHRpcHVzIGQnb2JqZWN0ZSAlcyDDqXMgYnVpdCIKIAotIzogc2hhMS1maWxlLmM6MTA5MyBzaGExLWZpbGUuYzoyMjE1CisjOiBzaGExLWZpbGUuYzoxMjUyIHNoYTEtZmlsZS5jOjIzOTIKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgbG9vc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGwnb2JqZWN0ZSDCqyVzwrsiCiAKLSM6IHNoYTEtZmlsZS5jOjEwOTUgc2hhMS1maWxlLmM6MjIxOQorIzogc2hhMS1maWxlLmM6MTI1NCBzaGExLWZpbGUuYzoyMzk2CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJnYXJiYWdlIGF0IGVuZCBvZiBsb29zZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbCdvYmplY3RlOiAlcyIKIAotIzogc2hhMS1maWxlLmM6MTEzNwotIywgZnV6enkKKyM6IHNoYTEtZmlsZS5jOjEyOTYKIG1zZ2lkICJpbnZhbGlkIG9iamVjdCB0eXBlIgotbXNnc3RyICJlbCB0aXB1cyBkJ29iamVjdGUgw6lzIGluY29ycmVjdGUuIgorbXNnc3RyICJ0aXB1cyBkJ29iamVjdGUgw6lzIGluY29ycmVjdGUiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMTkKKyM6IHNoYTEtZmlsZS5jOjEzODAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIKLW1zZ3N0ciAiIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGRlc2VtcGFxdWV0YXIgbGEgY2Fww6dhbGVyYSAlcyBhbWIgLS1hbGxvdy11bmtub3duLXR5cGUiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMjIKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc2hhMS1maWxlLmM6MTM4MworIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5wYWNrICVzIGhlYWRlciIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBhY3R1YWxpdHphciAlcyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBkZXNlbXBhcXVldGFyIGxhIGNhcMOnYWxlcmEgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMjgKKyM6IHNoYTEtZmlsZS5jOjEzODkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciB3aXRoIC0tYWxsb3ctdW5rbm93bi10eXBlIgotbXNnc3RyICIiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGxhIGNhcMOnYWxlcmEgJXMgYW1iIC0tYWxsb3ctdW5rbm93bi10eXBlIgogCi0jOiBzaGExLWZpbGUuYzoxMjMxCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IHNoYTEtZmlsZS5jOjEzOTIKKyMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBhY3R1YWxpdHphciAlcyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbGEgY2Fww6dhbGVyYSAlcyIKIAotIzogc2hhMS1maWxlLmM6MTQyMgotIywgZnV6enksIGMtZm9ybWF0CisjOiBzaGExLWZpbGUuYzoxNTg0CisjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWFkIG9iamVjdCAlcyIKLW1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgbCdvYmplY3RlIMKrJXPCuy4iCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gbGxlZ2lyIGwnb2JqZWN0ZSAlcyIKIAotIzogc2hhMS1maWxlLmM6MTQyNgorIzogc2hhMS1maWxlLmM6MTU4OAogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZW1lbnQgJXMgbm90IGZvdW5kIGZvciAlcyIKIG1zZ3N0ciAibm8gcydoYW4gdHJvYmF0IGxlcyBwbGFudGlsbGVzICVzIgogCi0jOiBzaGExLWZpbGUuYzoxNDMwCisjOiBzaGExLWZpbGUuYzoxNTkyCiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJsb29zZSBvYmplY3QgJXMgKHN0b3JlZCBpbiAlcykgaXMgY29ycnVwdCIKIG1zZ3N0ciAibCdvYmplY3RlIGxvY2FsICVzIMOpcyBtYWxtw6hzIgogCi0jOiBzaGExLWZpbGUuYzoxNDM0CisjOiBzaGExLWZpbGUuYzoxNTk2CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJwYWNrZWQgb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCiBtc2dzdHIgImwnb2JqZWN0ZSBsb2NhbCAlcyDDqXMgbWFsbcOocyIKIAotIzogc2hhMS1maWxlLmM6MTUzNgotIywgZnV6enksIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIHdyaXRlIHNoYTEgZmlsZW5hbWUgJXMiCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgZWwgZml0eGVyIGQnZXRpcXVldGEiCisjOiBzaGExLWZpbGUuYzoxNjk5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIGFsIGZpdHhlciAlcyIKIAotIzogc2hhMS1maWxlLmM6MTU0MworIzogc2hhMS1maWxlLmM6MTcwNgogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHNldCBwZXJtaXNzaW9uIHRvICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgcmVzb2xkcmUgbGEgcmV2aXNpw7M6ICVzIgogCi0jOiBzaGExLWZpbGUuYzoxNTUwCi0jLCBmdXp6eQorIzogc2hhMS1maWxlLmM6MTcxMwogbXNnaWQgImZpbGUgd3JpdGUgZXJyb3IiCi1tc2dzdHIgImVzY3JpcHR1cmEgZmFsbGFkYSBhbCByZXYtbGlzdCIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBlc2NyaXVyZSBhbCBmaXR4ZXIiCiAKLSM6IHNoYTEtZmlsZS5jOjE1NjkKKyM6IHNoYTEtZmlsZS5jOjE3MzIKICMsIGZ1enp5Ci1tc2dpZCAiZXJyb3Igd2hlbiBjbG9zaW5nIHNoYTEgZmlsZSIKK21zZ2lkICJlcnJvciB3aGVuIGNsb3NpbmcgbG9vc2Ugb2JqZWN0IGZpbGUiCiBtc2dzdHIgImVycm9yIGVuIHRhbmNhciBlbCBmaXR4ZXIgZGUgcGFxdWV0IgogCi0jOiBzaGExLWZpbGUuYzoxNjM1CisjOiBzaGExLWZpbGUuYzoxNzk3CiAjLCBjLWZvcm1hdAogbXNnaWQgImluc3VmZmljaWVudCBwZXJtaXNzaW9uIGZvciBhZGRpbmcgYW4gb2JqZWN0IHRvIHJlcG9zaXRvcnkgZGF0YWJhc2UgJXMiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTYzNwotIywgZnV6enkKKyM6IHNoYTEtZmlsZS5jOjE3OTkKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBmaWxlIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIHVuIMOtbmRleCB0ZW1wb3JhbCIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBjcmVhciB1biBmaXR4ZXIgdGVtcG9yYWwiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NjEKKyM6IHNoYTEtZmlsZS5jOjE4MjMKICMsIGZ1enp5Ci1tc2dpZCAidW5hYmxlIHRvIHdyaXRlIHNoYTEgZmlsZSIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBlbCBmaXR4ZXIgZCdldGlxdWV0YSIKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbG9vc2Ugb2JqZWN0IGZpbGUiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgbCdvYmplY3RlIGRlIG5vdGEiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NjcKKyM6IHNoYTEtZmlsZS5jOjE4MjkKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBkZWZsYXRlIG5ldyBvYmplY3QgJXMgKCVkKSIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBkZXNpbmZsYXIgbCdvYmplY3RlIGFubmV4YXQgKCVkKSIKIAotIzogc2hhMS1maWxlLmM6MTY3MQorIzogc2hhMS1maWxlLmM6MTgzMwogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiZGVmbGF0ZUVuZCBvbiBvYmplY3QgJXMgZmFpbGVkICglZCkiCiBtc2dzdHIgImhhIGZhbGxhdCBmc3RhdCBhICVzIgogCi0jOiBzaGExLWZpbGUuYzoxNjc1CisjOiBzaGExLWZpbGUuYzoxODM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbmZ1c2VkIGJ5IHVuc3RhYmxlIG9iamVjdCBzb3VyY2UgZGF0YSBmb3IgJXMiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTY4NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjkxOAorIzogc2hhMS1maWxlLmM6MTg0NyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjkyNQogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHV0aW1lKCkgb24gJXMiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gb2JyaXIgwqslc8K7IgogCi0jOiBzaGExLWZpbGUuYzoxNzYwCisjOiBzaGExLWZpbGUuYzoxOTIyCiAjLCBmdXp6eSwgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3QgcmVhZCBzaGExX2ZpbGUgZm9yICVzIgotbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyICRmaWxlIHBlciBhIHJlcHJvZHVjY2nDsyIKK21zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgZm9yICVzIgorbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIGwnb2JqZWN0ZSAlcyIKIAotIzogc2hhMS1maWxlLmM6MTgwNQorIzogc2hhMS1maWxlLmM6MTk2MgogIywgZnV6enkKIG1zZ2lkICJjb3JydXB0IGNvbW1pdCIKIG1zZ3N0ciAiYXV0b3IgY29ycmVnaXQgZGUgbGEgY29taXNzacOzIgogCi0jOiBzaGExLWZpbGUuYzoxODEzCisjOiBzaGExLWZpbGUuYzoxOTcwCiAjLCBmdXp6eQogbXNnaWQgImNvcnJ1cHQgdGFnIgogbXNnc3RyICJpbmZvcm1hIGRlIGxlcyBldGlxdWV0ZXMiCiAKLSM6IHNoYTEtZmlsZS5jOjE5MTIKKyM6IHNoYTEtZmlsZS5jOjIwNjkKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInJlYWQgZXJyb3Igd2hpbGUgaW5kZXhpbmcgJXMiCiBtc2dzdHIgImVycm9yIGVuIGxsZWdpciAlcyIKIAotIzogc2hhMS1maWxlLmM6MTkxNQorIzogc2hhMS1maWxlLmM6MjA3MgogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAic2hvcnQgcmVhZCB3aGlsZSBpbmRleGluZyAlcyIKIG1zZ3N0ciAibm8gZXMgcG90IGxsZWdpciBsJ8OtbmRleCIKIAotIzogc2hhMS1maWxlLmM6MTk4OCBzaGExLWZpbGUuYzoxOTk3CisjOiBzaGExLWZpbGUuYzoyMTQ1IHNoYTEtZmlsZS5jOjIxNTQKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgIiVzOiBmYWlsZWQgdG8gaW5zZXJ0IGludG8gZGF0YWJhc2UiCiBtc2dzdHIgImdwZyBoYSBmYWxsYXQgZW4gc2lnbmFyIGxlcyBkYWRlcyIKIAotIzogc2hhMS1maWxlLmM6MjAwMworIzogc2hhMS1maWxlLmM6MjE2MAogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHVuc3VwcG9ydGVkIGZpbGUgdHlwZSIKIG1zZ3N0ciAidmVyc2nDsyBkJ8OtbmRleCBubyBjb21wYXRpYmxlICVzIgogCi0jOiBzaGExLWZpbGUuYzoyMDI3CisjOiBzaGExLWZpbGUuYzoyMTg0CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCBvYmplY3QiCiBtc2dzdHIgIsKrJXPCuyBubyDDqXMgdW5hIHRlcm1lIHbDoGxpZCIKIAotIzogc2hhMS1maWxlLmM6MjAyOQorIzogc2hhMS1maWxlLmM6MjE4NgogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgJyVzJyBvYmplY3QiCi1tc2dzdHIgIsKrJXPCuyBubyDDqXMgdW5hIHRlcm1lIHbDoGxpZCIKK21zZ3N0ciAiJXMgbm8gw6lzIHVuIG9iamVjdGUgZGUgwqslc8K7IHbDoGxpZCIKIAotIzogc2hhMS1maWxlLmM6MjA1NiBidWlsdGluL2luZGV4LXBhY2suYzoxNTQKKyM6IHNoYTEtZmlsZS5jOjIyMTMgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyICVzIgogCi0jOiBzaGExLWZpbGUuYzoyMjI2IHNoYTEtZmlsZS5jOjIyNzgKKyM6IHNoYTEtZmlsZS5jOjI0MDMgc2hhMS1maWxlLmM6MjQ1NQogIywgYy1mb3JtYXQKLW1zZ2lkICJzaGExIG1pc21hdGNoIGZvciAlcyAoZXhwZWN0ZWQgJXMpIgotbXNnc3RyICIiCittc2dpZCAiaGFzaCBtaXNtYXRjaCBmb3IgJXMgKGV4cGVjdGVkICVzKSIKK21zZ3N0ciAibm8gY29pbmNpZGVpeCBsYSBzdW1hIHBlciBhICVzIChzJ2VzcGVyYXZhICVzKSIKIAotIzogc2hhMS1maWxlLmM6MjI1MAotIywgZnV6enksIGMtZm9ybWF0CisjOiBzaGExLWZpbGUuYzoyNDI3CisjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtbWFwICVzIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZlciDCq21tYXDCuyAlcyIKIAotIzogc2hhMS1maWxlLmM6MjI1NQotIywgZnV6enksIGMtZm9ybWF0CisjOiBzaGExLWZpbGUuYzoyNDMyCisjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgaGVhZGVyIG9mICVzIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFjdHVhbGl0emFyICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGRlc2VtcGFxdWV0YXIgbGEgY2Fww6dhbGVyYSBkZSAlcyIKIAotIzogc2hhMS1maWxlLmM6MjI2MQotIywgZnV6enksIGMtZm9ybWF0CisjOiBzaGExLWZpbGUuYzoyNDM4CisjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBoZWFkZXIgb2YgJXMiCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsYSBjYXDDp2FsZXJhIGRlICVzIgogCi0jOiBzaGExLWZpbGUuYzoyMjcyCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IHNoYTEtZmlsZS5jOjI0NDkKKyMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayBjb250ZW50cyBvZiAlcyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgZWwgY29udGFjdGU6ICVzIgorbXNnc3RyICJubyBzJ2hhbiBwb2d1dCBkZXNlbXBhcXVldGFyIGVscyBjb250aW5ndXRzIGRlICVzIgogCi0jOiBzaGExLW5hbWUuYzo0NzYKKyM6IHNoYTEtbmFtZS5jOjQ4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJzaG9ydCBTSEExICVzIGlzIGFtYmlndW91cyIKIG1zZ3N0ciAibCdTSEExICVzIGN1cnQgw6lzIGFtYmlndSIKIAotIzogc2hhMS1uYW1lLmM6NDg3CisjOiBzaGExLW5hbWUuYzo0OTgKIG1zZ2lkICJUaGUgY2FuZGlkYXRlcyBhcmU6IgogbXNnc3RyICJFbHMgY2FuZGlkYXRzIHPDs246IgogCi0jOiBzaGExLW5hbWUuYzo3NzAKKyM6IHNoYTEtbmFtZS5jOjc5NwogbXNnaWQgIiIKICJHaXQgbm9ybWFsbHkgbmV2ZXIgY3JlYXRlcyBhIHJlZiB0aGF0IGVuZHMgd2l0aCA0MCBoZXggY2hhcmFjdGVyc1xuIgogImJlY2F1c2UgaXQgd2lsbCBiZSBpZ25vcmVkIHdoZW4geW91IGp1c3Qgc3BlY2lmeSA0MC1oZXguIFRoZXNlIHJlZnNcbiIKICJtYXkgYmUgY3JlYXRlZCBieSBtaXN0YWtlLiBGb3IgZXhhbXBsZSxcbiIKICJcbiIKLSIgIGdpdCBjaGVja291dCAtYiAkYnIgJChnaXQgcmV2LXBhcnNlIC4uLilcbiIKKyIgIGdpdCBzd2l0Y2ggLWMgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCiAiXG4iCiAid2hlcmUgXCIkYnJcIiBpcyBzb21laG93IGVtcHR5IGFuZCBhIDQwLWhleCByZWYgaXMgY3JlYXRlZC4gUGxlYXNlXG4iCiAiZXhhbWluZSB0aGVzZSByZWZzIGFuZCBtYXliZSBkZWxldGUgdGhlbS4gVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5XG4iCkBAIC01OTIyLDc4ICs3NTE2LDE1MCBAQAogImhleGFkZWNpbWFscy4gQXF1ZXN0ZXMgcmVmZXLDqG5jaWVzIGVzIHBvZGVuIGNyZWFyIHBlciBlcnJvci4gUGVyXG4iCiAiZXhlbXBsZSxcbiIKICJcbiIKLSIgIGdpdCBjaGVja291dCAtYiAkYnIgJChnaXQgcmV2LXBhcnNlIC4uLilcbiIKKyIgIGdpdCBzd2l0Y2ggLWMgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCiAiXG4iCi0ib24gwqskYnLCuyDDqXMgZCdhbGd1bmEgbWFuZXJhIGJ1aWRhIGkgdW5hIHJlZmVyw6huY2lhIGRlIDQwIGNhcsOgY3RlcnNcbiIKKyJvbiDCqyRicsK7IMOpcyBidWlkYSBwZXIgYWxndW4gbW90aXUgaSBlcyBjcmVhIHVuYSByZWZlcsOobmNpYSBkZSA0MCBjYXLDoGN0ZXJzXG4iCiAiaGV4YWRlY2ltYWxzLiBFeGFtaW5ldSBhcXVlc3RlcyByZWZlcsOobmNpZXMgaSBwb3RzZXJcbiIKICJzdXByaW1pdS1sZXMuIERlc2FjdGl2ZXUgYXF1ZXN0IG1pc3NhdGdlIGV4ZWN1dGFudFxuIgogIsKrZ2l0IGNvbmZpZyBhZHZpY2Uub2JqZWN0TmFtZVdhcm5pbmcgZmFsc2XCuyIKIAotIzogc3VibW9kdWxlLmM6MTE2IHN1Ym1vZHVsZS5jOjE0NQorIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGdpYmlieXRlCisjOiBzdHJidWYuYzo4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgR2lCIgorbXNnc3RyICIldS4lMi4ydSBHaUIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBnaWJpYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjgyNAorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBHaUIvcyIKK21zZ3N0ciAiJXUuJTIuMnUgR2lCL3MiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBtZWJpYnl0ZQorIzogc3RyYnVmLmM6ODMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IE1pQiIKK21zZ3N0ciAiJXUuJTIuMnUgTWlCIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggbWViaWJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgTWlCL3MiCittc2dzdHIgIiV1LiUyLjJ1IE1pQi9zIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDgga2liaWJ5dGUKKyM6IHN0cmJ1Zi5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBLaUIiCittc2dzdHIgIiV1LiUyLjJ1IEtpQiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGtpYmlieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEtpQi9zIgorbXNnc3RyICIldS4lMi4ydSBLaUIvcyIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGJ5dGUKKyM6IHN0cmJ1Zi5jOjg0OQorIywgYy1mb3JtYXQKK21zZ2lkICIldSBieXRlIgorbXNnaWRfcGx1cmFsICIldSBieXRlcyIKK21zZ3N0clswXSAiJXUgYnl0ZSIKK21zZ3N0clsxXSAiJXUgYnl0ZXMiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiV1IGJ5dGUvcyIKK21zZ2lkX3BsdXJhbCAiJXUgYnl0ZXMvcyIKK21zZ3N0clswXSAiJXUgYnl0ZS9zIgorbXNnc3RyWzFdICIldSBieXRlcy9zIgorCisjOiBzdHJidWYuYzoxMTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBlZGl0ICclcyciCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgZWRpdGFyIMKrJXPCuyIKKworIzogc3VibW9kdWxlLmM6MTE0IHN1Ym1vZHVsZS5jOjE0MwogbXNnaWQgIkNhbm5vdCBjaGFuZ2UgdW5tZXJnZWQgLmdpdG1vZHVsZXMsIHJlc29sdmUgbWVyZ2UgY29uZmxpY3RzIGZpcnN0IgogbXNnc3RyICIiCiAiTm8gZXMgcG90IGNhbnZpYXIgdW4gLmdpdG1vZHVsZXMgbm8gZnVzaW9uYXQsIHByaW1lciByZXNvbGV1IGVscyBjb25mbGljdGVzICIKICJkZSBmdXNpw7MiCiAKLSM6IHN1Ym1vZHVsZS5jOjEyMCBzdWJtb2R1bGUuYzoxNDkKKyM6IHN1Ym1vZHVsZS5jOjExOCBzdWJtb2R1bGUuYzoxNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZpbmQgc2VjdGlvbiBpbiAuZ2l0bW9kdWxlcyB3aGVyZSBwYXRoPSVzIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IHRyb2JhciBsYSBzZWNjacOzIGVuIC5naXRtb2R1bGVzIG9uIHBhdGg9JXMiCiAKLSM6IHN1Ym1vZHVsZS5jOjE1NgorIzogc3VibW9kdWxlLmM6MTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgLmdpdG1vZHVsZXMgZW50cnkgZm9yICVzIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGVsaW1pbmFyIGwnZW50cmFkYSBkZSAuZ2l0bW9kdWxlcyBwZXIgYSAlcyIKIAotIzogc3VibW9kdWxlLmM6MTY3CisjOiBzdWJtb2R1bGUuYzoxNjUKIG1zZ2lkICJzdGFnaW5nIHVwZGF0ZWQgLmdpdG1vZHVsZXMgZmFpbGVkIgogbXNnc3RyICJsJ2FsbGlzdGFtZW50IGRlbCAuZ2l0bW9kdWxlcyBhY3R1YWxpdHphdCBoYSBmYWxsYXQiCiAKLSM6IHN1Ym1vZHVsZS5jOjMyOQorIzogc3VibW9kdWxlLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgImluIHVucG9wdWxhdGVkIHN1Ym1vZHVsZSAnJXMnIgotbXNnc3RyICJhbCBzdWJtw7JkdWwgbm8gcG9wdWxhdCDCqyVzwrsiCittc2dzdHIgImFsIHN1Ym3DsmR1bCBzZW5zZSBwb3B1bGFyIMKrJXPCuyIKIAotIzogc3VibW9kdWxlLmM6MzYwCisjOiBzdWJtb2R1bGUuYzozNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUGF0aHNwZWMgJyVzJyBpcyBpbiBzdWJtb2R1bGUgJyUuKnMnIgogbXNnc3RyICJMJ2VzcGVjaWZpY2FjacOzIMKrJXPCuyDDqXMgZW4gZWwgc3VibcOyZHVsIMKrJS4qc8K7IgogCi0jOiBzdWJtb2R1bGUuYzo4NTcKKyM6IHN1Ym1vZHVsZS5jOjkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgZW50cnkgJyVzJyAoJXMpIGlzIGEgJXMsIG5vdCBhIGNvbW1pdCIKIG1zZ3N0ciAibCdlbnRyYWRhIGRlbCBzdWJtw7JkdWwgwqslc8K7ICglcykgw6lzIGEgJXMsIG5vIMOpcyB1bmEgY29taXNzacOzIgogCi0jOiBzdWJtb2R1bGUuYzoxMDk3IGJ1aWx0aW4vYnJhbmNoLmM6NjU2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTg1CisjOiBzdWJtb2R1bGUuYzoxMTQ3IGJ1aWx0aW4vYnJhbmNoLmM6NjgwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDE2CiBtc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgSEVBRCBhcyBhIHZhbGlkIHJlZi4iCiBtc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gcmVzb2xkcmUgSEVBRCBjb20gYSByZWZlcsOobmNpYSB2w6BsaWRhLiIKIAotIzogc3VibW9kdWxlLmM6MTQwNAorIzogc3VibW9kdWxlLmM6MTQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgYWNjZXNzIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFjY2VkaXIgYWwgc3VibcOyZHVsIMKrJXPCuyIKKworIzogc3VibW9kdWxlLmM6MTY1MQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIG5vdCByZWNvZ25pemVkIGFzIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIsKrJXPCuyBubyByZWNvbmVndXQgY29tIHVuIGRpcMOyc2l0IGdpdCIKIAotIzogc3VibW9kdWxlLmM6MTU0MgorIzogc3VibW9kdWxlLmM6MTc4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc3RhcnQgJ2dpdCBzdGF0dXMnIGluIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGluaWNpYXIgwqtnaXQgc3RhdHVzwrsgYWwgc3VibcOyZHVsIMKrJXPCuyIKIAotIzogc3VibW9kdWxlLmM6MTU1NQorIzogc3VibW9kdWxlLmM6MTgwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcnVuICdnaXQgc3RhdHVzJyBpbiBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBleGVjdXRhciAnZ2l0IHN0YXR1cycgYWwgc3VibcOyZHVsIMKrJXPCuyIKIAotIzogc3VibW9kdWxlLmM6MTY0OAorIzogc3VibW9kdWxlLmM6MTgxNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHVuc2V0IGNvcmUud29ya3RyZWUgc2V0dGluZyBpbiBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBleGVjdXRhciAnZ2l0IHN0YXR1cycgYWwgc3VibcOyZHVsIMKrJXPCuyIKKworIzogc3VibW9kdWxlLmM6MTkwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgJyVzJyBoYXMgZGlydHkgaW5kZXgiCiBtc2dzdHIgImVsIHN1Ym3DsmR1bCDCqyVzwrsgdMOpIGwnw61uZGV4IGJydXQiCiAKLSM6IHN1Ym1vZHVsZS5jOjE3MDAKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogc3VibW9kdWxlLmM6MTk1OQorIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyBjb3VsZCBub3QgYmUgdXBkYXRlZC4iCi1tc2dzdHIgIlN1Ym3DsmR1bHMgY2FudmlhdHMgcGVyw7Igbm8gYWN0dWFsaXR6YXRzOiIKK21zZ3N0ciAiTm8gcydoYSBwb2d1dCBhY3R1YWxpdHphciBlbCBzdWJtw7JkdWwgwqslc8K7IgogCi0jOiBzdWJtb2R1bGUuYzoxNzQ3CisjOiBzdWJtb2R1bGUuYzoyMDI3CisjLCBjLWZvcm1hdAorbXNnaWQgInN1Ym1vZHVsZSBnaXQgZGlyICclcycgaXMgaW5zaWRlIGdpdCBkaXIgJyUuKnMnIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS5jOjIwNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInJlbG9jYXRlX2dpdGRpciBmb3Igc3VibW9kdWxlICclcycgd2l0aCBtb3JlIHRoYW4gb25lIHdvcmt0cmVlIG5vdCBzdXBwb3J0ZWQiCkBAIC02MDAxLDEyICs3NjY3LDE3IEBACiAibm8gZXN0w6AgYWRtw6hzIHJlbG9jYXRlX2dpdGRpciBwZXIgYWwgc3VibcOyZHVsIMKrJXPCuyBhbWIgbcOpcyBkJ3VuIGFyYnJlIGRlICIKICJ0cmViYWxsIgogCi0jOiBzdWJtb2R1bGUuYzoxNzU5IHN1Ym1vZHVsZS5jOjE4MTUKKyM6IHN1Ym1vZHVsZS5jOjIwNjAgc3VibW9kdWxlLmM6MjExOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9va3VwIG5hbWUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHRyb2JhdCBlbCBub20gcGVsIHN1Ym3DsmR1bCDCqyVzwrsiCiAKLSM6IHN1Ym1vZHVsZS5jOjE3NjYKKyM6IHN1Ym1vZHVsZS5jOjIwNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmdXNpbmcgdG8gbW92ZSAnJXMnIGludG8gYW4gZXhpc3RpbmcgZ2l0IGRpciIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoyMDcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJNaWdyYXRpbmcgZ2l0IGRpcmVjdG9yeSBvZiAnJXMlcycgZnJvbVxuIgpAQCAtNjAxNyw0MCArNzY4OCw0MCBAQAogIsKrJXPCuyBhXG4iCiAiwqslc8K7XG4iCiAKLSM6IHN1Ym1vZHVsZS5jOjE4NTAKKyM6IHN1Ym1vZHVsZS5jOjIxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBjZXJjYXIgcmVjdXJzaXZhbWVudCBhbCBjYW3DrSBkZSBzdWJtw7JkdWwgwqslc8K7IgogCi0jOiBzdWJtb2R1bGUuYzoxODk0CisjOiBzdWJtb2R1bGUuYzoyMTk4CiBtc2dpZCAiY291bGQgbm90IHN0YXJ0IGxzLWZpbGVzIGluIC4uIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGluaWNpYXIgbHMtZmlsZXMgYSAuLiIKIAotIzogc3VibW9kdWxlLmM6MTkzMworIzogc3VibW9kdWxlLmM6MjIzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJscy10cmVlIHJldHVybmVkIHVuZXhwZWN0ZWQgcmV0dXJuIGNvZGUgJWQiCiBtc2dzdHIgImxzLXRyZWUgaGEgcmV0b3JuYXQgdW4gY29kaSBkZSByZXRvcm4gJWQgbm8gZXNwZXJhdCIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjIzMgotIywgZnV6enksIGMtZm9ybWF0CisjOiBzdWJtb2R1bGUtY29uZmlnLmM6MjM2CisjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIHN1c3BpY2lvdXMgc3VibW9kdWxlIG5hbWU6ICVzIgotbXNnc3RyICJzJ2VzdMOgIGlnbm9yYW50IGxhIHJlZmVyw6huY2lhIGFtYiBub20gbWFsbcOocyAlcyIKK21zZ3N0ciAicydlc3TDoCBpZ25vcmFudCBlbCBub20gZGUgc3VibcOyZHVsIHNvc3BpdMOycyAlcyIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjI5NgorIzogc3VibW9kdWxlLWNvbmZpZy5jOjMwMwogbXNnaWQgIm5lZ2F0aXZlIHZhbHVlcyBub3QgYWxsb3dlZCBmb3Igc3VibW9kdWxlLmZldGNoam9icyIKIG1zZ3N0ciAibm8gZXMgcGVybWV0ZW4gZWxzIHZhbG9ycyBuZWdhdGl1cyBhIHN1Ym1vZHVsZS5mZXRjaGpvYnMiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzozOTAKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo0MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgJyVzJyB3aGljaCBtYXkgYmUgaW50ZXJwcmV0ZWQgYXMgYSBjb21tYW5kLWxpbmUgb3B0aW9uOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6NDc5CisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yICVzIgogbXNnc3RyICJ2YWxvciBubyB2w6BsaWQgcGVyIGEgJXMiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzo3NTQKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo3NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHVwZGF0ZSAuZ2l0bW9kdWxlcyBlbnRyeSAlcyIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBhY3R1YWxpdHphciBsJ2VudHJhZGEgZGUgLmdpdG1vZHVsZXMgJXMiCkBAIC02MDg1LDcgKzc3NTYsNyBAQAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGZyb20gc3RkaW4iCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGRlcyBkZSBzdGRpbiIKIAotIzogdHJhaWxlci5jOjEwMTEgYnVpbHRpbi9hbS5jOjQ3CisjOiB0cmFpbGVyLmM6MTAxMSB3cmFwcGVyLmM6NjY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZlciBzdGF0IGEgJXMiCkBAIC02MTE0LDQwICs3Nzg1LDQ4IEBACiBtc2dpZCAiV291bGQgc2V0IHVwc3RyZWFtIG9mICclcycgdG8gJyVzJyBvZiAnJXMnXG4iCiBtc2dzdHIgIkNhbnZpYXJpYSBsYSBmb250IGRlIMKrJXPCuyBhIMKrJXPCuyBkZSDCqyVzwrtcbiIKIAotIzogdHJhbnNwb3J0LmM6MTQyCisjOiB0cmFuc3BvcnQuYzoxNDUKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGJ1bmRsZSAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBlbCBmaXR4ZXIgwqslc8K7IgogCi0jOiB0cmFuc3BvcnQuYzoyMDgKKyM6IHRyYW5zcG9ydC5jOjIxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmFuc3BvcnQ6IGludmFsaWQgZGVwdGggb3B0aW9uICclcyciCiBtc2dzdHIgInRyYW5zcG9ydDogb3BjacOzIGRlIHByb2Z1bmRpdGF0IG5vIHbDoGxpZGEgwqslc8K7IgogCi0jOiB0cmFuc3BvcnQuYzo2MTYKKyM6IHRyYW5zcG9ydC5jOjI2NgorbXNnaWQgInNlZSBwcm90b2NvbC52ZXJzaW9uIGluICdnaXQgaGVscCBjb25maWcnIGZvciBtb3JlIGRldGFpbHMiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LmM6MjY3Cittc2dpZCAic2VydmVyIG9wdGlvbnMgcmVxdWlyZSBwcm90b2NvbCB2ZXJzaW9uIDIgb3IgbGF0ZXIiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LmM6NjMyCiAjLCBmdXp6eQogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSB0cmFuc3BvcnQuY29sb3IuKiBjb25maWciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGwnc2NyaXB0IGQnYXV0b3IiCiAKLSM6IHRyYW5zcG9ydC5jOjY4OQorIzogdHJhbnNwb3J0LmM6NzA1CiBtc2dpZCAic3VwcG9ydCBmb3IgcHJvdG9jb2wgdjIgbm90IGltcGxlbWVudGVkIHlldCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQuYzo4MTYKKyM6IHRyYW5zcG9ydC5jOjgzMQogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biB2YWx1ZSBmb3IgY29uZmlnICclcyc6ICVzIgogbXNnc3RyICJ2YWxvciBkZXNjb25lZ3V0IMKrJXPCuyBwZXIgYSBsYSBjbGF1IMKrJXPCuyIKIAotIzogdHJhbnNwb3J0LmM6ODgyCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IHRyYW5zcG9ydC5jOjg5NworIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmFuc3BvcnQgJyVzJyBub3QgYWxsb3dlZCIKLW1zZ3N0ciAibm8gcydoYSB0cm9iYXQgbGEgYnJhbmNhIMKrJXPCuy4iCittc2dzdHIgIm5vIGVzIHBlcm1ldCBlbCB0cmFuc3BvcnQgwqslc8K7IgogCi0jOiB0cmFuc3BvcnQuYzo5MzYKKyM6IHRyYW5zcG9ydC5jOjk0OQogbXNnaWQgImdpdC1vdmVyLXJzeW5jIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LmM6MTAzMQorIzogdHJhbnNwb3J0LmM6MTA0NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyBzdWJtb2R1bGUgcGF0aHMgY29udGFpbiBjaGFuZ2VzIHRoYXQgY2FuXG4iCkBAIC02MTU2LDcgKzc4MzUsNyBAQAogIkVscyBjYW1pbnMgZGUgc3VibcOyZHVsIHNlZ8O8ZW50cyBjb250ZW5lbiBjYW52aXMgcXVlIG5vXG4iCiAiZXMgcG9kZW4gdHJvYmFyIGVuIGNhcCByZW1vdDpcbiIKIAotIzogdHJhbnNwb3J0LmM6MTAzNQorIzogdHJhbnNwb3J0LmM6MTA0OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC02MTgyLDE5MSArNzg2MSwxODkgQEAKICJcbiIKICJwZXIgYSBwdWphci1sb3MgYSB1biByZW1vdC5cbiIKIAotIzogdHJhbnNwb3J0LmM6MTA0MworIzogdHJhbnNwb3J0LmM6MTA1NgogbXNnaWQgIkFib3J0aW5nLiIKIG1zZ3N0ciAiUydlc3TDoCBhdm9ydGFudC4iCiAKLSM6IHRyYW5zcG9ydC5jOjExODIKKyM6IHRyYW5zcG9ydC5jOjEyMDEKICMsIGZ1enp5CiBtc2dpZCAiZmFpbGVkIHRvIHB1c2ggYWxsIG5lZWRlZCBzdWJtb2R1bGVzIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNlcmNhciByZWN1cnNpdmFtZW50IGFsIHN1Ym3DsmR1bCDCqyVzwrsiCiAKLSM6IHRyYW5zcG9ydC5jOjEzMTUgdHJhbnNwb3J0LWhlbHBlci5jOjY0MwotIywgZnV6enkKKyM6IHRyYW5zcG9ydC5jOjEzNDUgdHJhbnNwb3J0LWhlbHBlci5jOjY1NgogbXNnaWQgIm9wZXJhdGlvbiBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sIgotbXNnc3RyICJvcGNpw7Mgbm8gYWRtZXNhIGFtYiAtLXJlY3Vyc2Utc3VibW9kdWxlcy4iCittc2dzdHIgIm9wY2nDsyBubyBhZG1lc2EgcGVsIHByb3RvY29sIgogCi0jOiB0cmFuc3BvcnQuYzoxNDE5Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgbGluZSB3aGlsZSBwYXJzaW5nIGFsdGVybmF0ZSByZWZzOiAlcyIKLW1zZ3N0ciAiIgotCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTEgdHJhbnNwb3J0LWhlbHBlci5jOjgwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjEgdHJhbnNwb3J0LWhlbHBlci5jOjkwCiAjLCBmdXp6eQogbXNnaWQgImZ1bGwgd3JpdGUgdG8gcmVtb3RlIGhlbHBlciBmYWlsZWQiCiBtc2dzdHIgImltcHJpbWVpeCBsJ2VzdGF0IGRlcyBkZSBsJ2FqdWRhbnQgcmVtb3QiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzIKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0NAorIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZmluZCByZW1vdGUgaGVscGVyIGZvciAnJXMnIgotbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGFmZWdpciBlbCByZXN1bHRhdCBkZSBmdXNpw7MgcGVyIGEgwqslc8K7IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHRyb2JhciBsJ2FqdWRhbnQgcmVtb3QgcGVyIGEgwqslc8K7IgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQ4IHRyYW5zcG9ydC1oZWxwZXIuYzo1NTcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNjAgdHJhbnNwb3J0LWhlbHBlci5jOjU3MAogbXNnaWQgImNhbid0IGR1cCBoZWxwZXIgb3V0cHV0IGZkIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxOTkKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInVua25vd24gbWFuZGF0b3J5IGNhcGFiaWxpdHkgJXM7IHRoaXMgcmVtb3RlIGhlbHBlciBwcm9iYWJseSBuZWVkcyBuZXdlciAiCiAidmVyc2lvbiBvZiBHaXQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjIwNQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxNwogbXNnaWQgInRoaXMgcmVtb3RlIGhlbHBlciBzaG91bGQgaW1wbGVtZW50IHJlZnNwZWMgY2FwYWJpbGl0eSIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MjcyIHRyYW5zcG9ydC1oZWxwZXIuYzo0MTIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyODQgdHJhbnNwb3J0LWhlbHBlci5jOjQyNAogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiJXMgdW5leHBlY3RlZGx5IHNhaWQ6ICclcyciCiBtc2dzdHIgImJsb2IgZXNwZXJhdCBwZXIgYSAlcyDCqyVzwrsiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0MDEKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgYWxzbyBsb2NrZWQgJXMiCiBtc2dzdHIgIiVzIHRhbWLDqSBoYSBibG9xdWVqYXQgJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0NzkKLSMsIGZ1enp5CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NDkyCiBtc2dpZCAiY291bGRuJ3QgcnVuIGZhc3QtaW1wb3J0IgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGV4ZWN1dGFyIMKrc3Rhc2jCuy4iCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXhlY3V0YXIgwqtmYXN0LWltcG9ydMK7IgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTAyCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTE1CiAjLCBmdXp6eQogbXNnaWQgImVycm9yIHdoaWxlIHJ1bm5pbmcgZmFzdC1pbXBvcnQiCiBtc2dzdHIgImVycm9yIGVuIHRhbmNhciBlbCBmaXR4ZXIgZGUgcGFxdWV0IgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTMxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMDkxCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1NDQgdHJhbnNwb3J0LWhlbHBlci5jOjExMzMKKyMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgcmVmICVzIgotbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGxsZWdpciBsYSByZWZlcsOobmNpYSAlcyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBsbGVnaXIgbGEgcmVmZXLDqG5jaWEgJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1NzYKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1ODkKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gcmVzcG9uc2UgdG8gY29ubmVjdDogJXMiCiBtc2dzdHIgIm9wY2nDsyBkZXNjb25lZ3VkYTogJXNcbiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjU5OAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjYxMQogbXNnaWQgInNldHRpbmcgcmVtb3RlIHNlcnZpY2UgcGF0aCBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MDAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MTMKICMsIGZ1enp5CiBtc2dpZCAiaW52YWxpZCByZW1vdGUgc2VydmljZSBwYXRoIgogbXNnc3RyICJyZWZlcsOobmNpYSBubyB2w6BsaWRhOiAlcyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjY0NgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjY1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCBjb25uZWN0IHRvIHN1YnNlcnZpY2UgJXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAibm8gZXMgcG90IGNvbm5lY3RhciBhbCBzdWJzZXJ2ZWkgJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo3MTMKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo3MzUKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIG9rL2Vycm9yLCBoZWxwZXIgc2FpZCAnJXMnIgogbXNnc3RyICJibG9iIGVzcGVyYXQgcGVyIGEgJXMgwqslc8K7IgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NzY2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6Nzg4CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgcmVwb3J0ZWQgdW5leHBlY3RlZCBzdGF0dXMgb2YgJXMiCiBtc2dzdHIgImxzLXRyZWUgaGEgcmV0b3JuYXQgdW4gY29kaSBkZSByZXRvcm4gJWQgbm8gZXNwZXJhdCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjgyNworIzogdHJhbnNwb3J0LWhlbHBlci5jOjg0OQogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgZHJ5LXJ1biIKIG1zZ3N0ciAiRWwgc2Vydmlkb3Igbm8gYWRtZXQgLS1kZWVwZW4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4MzAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTIKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIgogbXNnc3RyICJFbCBzZXJ2aWRvciBubyBhZG1ldCAtLXNoYWxsb3ctc2luY2UiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4MzMKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTUKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkPWlmLWFza2VkIgogbXNnc3RyICJlbCBkZXN0w60gcmVjZXB0b3Igbm8gYWRtZXQgcHVqYXIgLS1zaWduZWQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NDAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tYXRvbWljIgorbXNnc3RyICJFbCBzZXJ2aWRvciBubyBhZG1ldCAtLXNoYWxsb3ctc2luY2UiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NjYKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0ICdwdXNoLW9wdGlvbiciCiBtc2dzdHIgImVsIGRlc3TDrSByZWNlcHRvciBubyBhZG1ldCBvcGNpb25zIGRlIHB1amFkYSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjkzMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjk2NAogbXNnaWQgInJlbW90ZS1oZWxwZXIgZG9lc24ndCBzdXBwb3J0IHB1c2g7IHJlZnNwZWMgbmVlZGVkIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5MzcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5NjkKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0ICdmb3JjZSciCiBtc2dzdHIgIkVsIHNlcnZpZG9yIG5vIGFkbWV0IC0tZGVlcGVuIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTg0CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTAxNgogIywgZnV6enkKIG1zZ2lkICJjb3VsZG4ndCBydW4gZmFzdC1leHBvcnQiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXhlY3V0YXIgwqtzdGFzaMK7LiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjk4OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMjEKICMsIGZ1enp5CiBtc2dpZCAiZXJyb3Igd2hpbGUgcnVubmluZyBmYXN0LWV4cG9ydCIKIG1zZ3N0ciAiZXJyb3IgZW4gdGFuY2FyIGVsIGZpdHhlciBkZSBwYXF1ZXQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDE0CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTA0NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gcmVmcyBpbiBjb21tb24gYW5kIG5vbmUgc3BlY2lmaWVkOyBkb2luZyBub3RoaW5nLlxuIgogIlBlcmhhcHMgeW91IHNob3VsZCBzcGVjaWZ5IGEgYnJhbmNoIHN1Y2ggYXMgJ21hc3RlcicuXG4iCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwNzcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMTE5CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgcmVzcG9uc2UgaW4gcmVmIGxpc3Q6ICVzIgogbXNnc3RyICJmdWxsIGQnb3BjaW9ucyBtYWwgZm9ybWF0OiDCqyVzwrsiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjMxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI3MQogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAicmVhZCglcykgZmFpbGVkIgogbXNnc3RyICIlcyBoYSBmYWxsYXQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjU4CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI5OAogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAid3JpdGUoJXMpIGZhaWxlZCIKIG1zZ3N0ciAiJXMgaGEgZmFsbGF0IgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMwNworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNDcKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgIiVzIHRocmVhZCBmYWlsZWQiCiBtc2dzdHIgIiVzIGhhIGZhbGxhdCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMTEKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzUxCiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICIlcyB0aHJlYWQgZmFpbGVkIHRvIGpvaW46ICVzIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIG9icmlyIMKrJXPCuyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMzAgdHJhbnNwb3J0LWhlbHBlci5jOjEzMzQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzcwIHRyYW5zcG9ydC1oZWxwZXIuYzoxMzc0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IHN0YXJ0IHRocmVhZCBmb3IgY29weWluZyBkYXRhOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM3MQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0MTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcHJvY2VzcyBmYWlsZWQgdG8gd2FpdCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM3NQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0MTUKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgIiVzIHByb2Nlc3MgZmFpbGVkIgogbXNnc3RyICIlcyBoYSBmYWxsYXQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzkzIHRyYW5zcG9ydC1oZWxwZXIuYzoxNDAyCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQzMyB0cmFuc3BvcnQtaGVscGVyLmM6MTQ0MgogbXNnaWQgImNhbid0IHN0YXJ0IHRocmVhZCBmb3IgY29weWluZyBkYXRhIgogbXNnc3RyICIiCiAKQEAgLTYzODIsMTEgKzgwNTksMTYgQEAKIG1zZ2lkICJlbXB0eSBmaWxlbmFtZSBpbiB0cmVlIGVudHJ5IgogbXNnc3RyICJub20gZGUgZml0eGVyIGJ1aXQgZW4gdW5hIGVudHJhZGEgZCdhcmJyZSIKIAotIzogdHJlZS13YWxrLmM6MTE1CisjOiB0cmVlLXdhbGsuYzo0OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBpbiB0cmVlIGVudHJ5IGNvbnRhaW5zIGJhY2tzbGFzaDogJyVzJyIKK21zZ3N0ciAiIgorCisjOiB0cmVlLXdhbGsuYzoxMjQKIG1zZ2lkICJ0b28tc2hvcnQgdHJlZSBmaWxlIgogbXNnc3RyICJmaXR4ZXIgZCdhcmJyZSBtYXNzYSBjdXJ0IgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTIKKyM6IHVucGFjay10cmVlcy5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCkBAIC02Mzk2LDcgKzgwNzgsNyBAQAogImFnYWZhcjpcbiIKICIlJXNDb21ldGV1IGVscyB2b3N0cmVzIGNhbnZpcyBvIGZldSDCq3N0YXNowrsgYWJhbnMgZGUgY2FudmlhciBkZSBicmFuY2EuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTQKKyM6IHVucGFjay10cmVlcy5jOjExMgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCkBAIC02NDA2LDcgKzgwODgsNyBAQAogImFnYWZhcjpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjExNworIzogdW5wYWNrLXRyZWVzLmM6MTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTY0MTYsNyArODA5OCw3IEBACiAiZnVzaW9uYXI6XG4iCiAiJSVzQ29tZXRldSBlbHMgdm9zdHJlcyBjYW52aXMgbyBmZXUgwqtzdGFzaMK7IGFiYW5zIGRlIGZ1c2lvbmFyLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTE5CisjOiB1bnBhY2stdHJlZXMuYzoxMTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtNjQyNiw3ICs4MTA4LDcgQEAKICJmdXNpb25hcjpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjEyMgorIzogdW5wYWNrLXRyZWVzLmM6MTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKQEAgLTY0MzUsNyArODExNyw3IEBACiAiRWxzIHZvc3RyZXMgY2FudmlzIGxvY2FscyBhbHMgZml0eGVycyBzZWfDvGVudHMgc2Ugc29icmVlc2NyaXVyaWVuIHBlciAlczpcbiIKICIlJXNDb21ldGV1IGVscyB2b3N0cmVzIGNhbnZpcyBvIGZldSDCq3N0YXNowrsgYWJhbnMgZGUgJXMuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMjQKKyM6IHVucGFjay10cmVlcy5jOjEyMgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCkBAIC02NDQ0LDcgKzgxMjYsNyBAQAogIkVscyB2b3N0cmVzIGNhbnZpcyBsb2NhbHMgYWxzIGZpdHhlcnMgc2Vnw7xlbnRzIHNlIHNvYnJlZXNjcml1cmllbiBwZXIgJXM6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMjkKKyM6IHVucGFjay10cmVlcy5jOjEyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVXBkYXRpbmcgdGhlIGZvbGxvd2luZyBkaXJlY3RvcmllcyB3b3VsZCBsb3NlIHVudHJhY2tlZCBmaWxlcyBpbiB0aGVtOlxuIgpAQCAtNjQ1Myw3ICs4MTM1LDcgQEAKICJFbiBhY3R1YWxpdHphciBlbHMgZGlyZWN0b3JpcyBzZWfDvGVudHMgcGVyZHJpYSBmaXR4ZXJzIG5vIHNlZ3VpdHMgZW4gZWw6XG4iCiAiJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjEzMworIzogdW5wYWNrLXRyZWVzLmM6MTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKQEAgLTY0NjMsNyArODE0NSw3IEBACiAiYWdhZmFyOlxuIgogIiUlc01vdmV1LWxvcyBvIGVsaW1pbmV1LWxvcyBhYmFucyBkZSBjYW52aWFyIGRlIGJyYW5jYS4iCiAKLSM6IHVucGFjay10cmVlcy5jOjEzNQorIzogdW5wYWNrLXRyZWVzLmM6MTMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKQEAgLTY0NzMsNyArODE1NSw3IEBACiAiYWdhZmFyOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTM4CisjOiB1bnBhY2stdHJlZXMuYzoxMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgpAQCAtNjQ4Myw3ICs4MTY1LDcgQEAKICJmdXNpb25hcjpcbiIKICIlJXNNb3ZldS1sb3MgbyBlbGltaW5ldS1sb3MgYWJhbnMgZGUgZnVzaW9uYXIuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNDAKKyM6IHVucGFjay10cmVlcy5jOjEzOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgbWVyZ2U6XG4iCkBAIC02NDkzLDcgKzgxNzUsNyBAQAogImZ1c2lvbmFyOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTQzCisjOiB1bnBhY2stdHJlZXMuYzoxNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5ICVzOlxuIgpAQCAtNjUwMiw3ICs4MTg0LDcgQEAKICJFbHMgc2Vnw7xlbnRzIGZpdHhlcnMgbm8gc2VndWl0cyBlbiBsJ2FyYnJlIGRlIHRyZWJhbGwgcydlbGltaW5hcmllbiBwZXIgJXM6XG4iCiAiJSVzTW92ZXUtbG9zIG8gZWxpbWluZXUtbG9zIGFiYW5zIGRlICVzLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTQ1CisjOiB1bnBhY2stdHJlZXMuYzoxNDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5ICVzOlxuIgpAQCAtNjUxMSwyOSArODE5MywyOSBAQAogIkVscyBzZWfDvGVudHMgZml0eGVycyBubyBzZWd1aXRzIGVuIGwnYXJicmUgZGUgdHJlYmFsbCBzJ2VsaW1pbmFyaWVuIHBlciAlczpcbiIKICIlJXMiCiAKKyM6IHVucGFjay10cmVlcy5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICIKKyJjaGVja291dDpcbiIKKyIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91IHN3aXRjaCBicmFuY2hlcy4iCittc2dzdHIgIiIKKyJFbHMgc2Vnw7xlbnRzIGZpdHhlcnMgbm8gc2VndWl0cyBlbiBsJ2FyYnJlIGRlIHRyZWJhbGwgc2Ugc29icmVlc2NyaXVyaWVuIHBlciAiCisiYWdhZmFyOlxuIgorIiUlc01vdmV1LWxvcyBvIGVsaW1pbmV1LWxvcyBhYmFucyBkZSBjYW52aWFyIGRlIGJyYW5jYS4iCisKICM6IHVucGFjay10cmVlcy5jOjE1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICIKICJjaGVja291dDpcbiIKLSIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91IHN3aXRjaCBicmFuY2hlcy4iCi1tc2dzdHIgIiIKLSJFbHMgc2Vnw7xlbnRzIGZpdHhlcnMgbm8gc2VndWl0cyBlbiBsJ2FyYnJlIGRlIHRyZWJhbGwgc2Ugc29icmVlc2NyaXVyaWVuIHBlciAiCi0iYWdhZmFyOlxuIgotIiUlc01vdmV1LWxvcyBvIGVsaW1pbmV1LWxvcyBhYmFucyBkZSBjYW52aWFyIGRlIGJyYW5jYS4iCi0KLSM6IHVucGFjay10cmVlcy5jOjE1MwotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICIKLSJjaGVja291dDpcbiIKICIlJXMiCiBtc2dzdHIgIiIKICJFbHMgc2Vnw7xlbnRzIGZpdHhlcnMgbm8gc2VndWl0cyBlbiBsJ2FyYnJlIGRlIHRyZWJhbGwgc2Ugc29icmVlc2NyaXVyaWVuIHBlciAiCiAiYWdhZmFyOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTU2CisjOiB1bnBhY2stdHJlZXMuYzoxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTY1NDMsNyArODIyNSw3IEBACiAiZnVzaW9uYXI6XG4iCiAiJSVzTW92ZXUtbG9zIG8gZWxpbWluZXUtbG9zIGFiYW5zIGRlIGZ1c2lvbmFyLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTU4CisjOiB1bnBhY2stdHJlZXMuYzoxNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTY1NTMsNyArODIzNSw3IEBACiAiZnVzaW9uYXI6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNjEKKyM6IHVucGFjay10cmVlcy5jOjE1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjU2Myw3ICs4MjQ1LDcgQEAKICIlczpcbiIKICIlJXNNb3ZldS1sb3MgbyBlbGltaW5ldS1sb3MgYWJhbnMgZGUgJXMuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNjMKKyM6IHVucGFjay10cmVlcy5jOjE2MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjU3MywxMiArODI1NSwxMiBAQAogIiVzOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTcxCisjOiB1bnBhY2stdHJlZXMuYzoxNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiRW50cnkgJyVzJyBvdmVybGFwcyB3aXRoICclcycuICBDYW5ub3QgYmluZC4iCiBtc2dzdHIgIkwnZW50cmFkYSDCqyVzwrsgZW5jYXZhbGNhIGFtYiDCqyVzwrsuICBObyBlcyBwb3QgdmluY3VsYXIuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNzQKKyM6IHVucGFjay10cmVlcy5jOjE3MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IHVwZGF0ZSBzcGFyc2UgY2hlY2tvdXQ6IHRoZSBmb2xsb3dpbmcgZW50cmllcyBhcmUgbm90IHVwIHRvIGRhdGU6XG4iCkBAIC02NTg4LDcgKzgyNzAsNyBAQAogImRpYTpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTc2CisjOiB1bnBhY2stdHJlZXMuYzoxNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IHNwYXJzZSBjaGVja291dCAiCkBAIC02NTk5LDcgKzgyODEsNyBAQAogImFjdHVhbGl0emFyIGwnYWdhZmFtZW50IHBhcmNpYWw6XG4iCiAiJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE3OAorIzogdW5wYWNrLXRyZWVzLmM6MTc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IHNwYXJzZSBjaGVja291dCAiCkBAIC02NjEwLDcgKzgyOTIsNyBAQAogImwnYWdhZmFtZW50IHBhcmNpYWw6XG4iCiAiJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE4MAorIzogdW5wYWNrLXRyZWVzLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgdXBkYXRlIHN1Ym1vZHVsZTpcbiIKQEAgLTY2MTksMjIgKzgzMDEsMjcgQEAKICJObyBlcyBwb3QgYWN0dWFsaXR6YXIgZWwgc3VibcOyZHVsOlxuIgogIiVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoyNTQKKyM6IHVucGFjay10cmVlcy5jOjI1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJBYm9ydGluZ1xuIgogbXNnc3RyICJTJ2VzdMOgIGF2b3J0YW50XG4iCiAKLSM6IHVucGFjay10cmVlcy5jOjMzNgotbXNnaWQgIkNoZWNraW5nIG91dCBmaWxlcyIKLW1zZ3N0ciAiUydlc3RhbiBhZ2FmYW50IGZpdHhlcnMiCisjOiB1bnBhY2stdHJlZXMuYzozMTcKK21zZ2lkICJVcGRhdGluZyBmaWxlcyIKK21zZ3N0ciAiUydlc3RhbiBhY3R1YWxpdHphbnQgZWxzIGZpdHhlcnMiCiAKLSM6IHVucGFjay10cmVlcy5jOjM2OAorIzogdW5wYWNrLXRyZWVzLmM6MzQ5CiBtc2dpZCAiIgogInRoZSBmb2xsb3dpbmcgcGF0aHMgaGF2ZSBjb2xsaWRlZCAoZS5nLiBjYXNlLXNlbnNpdGl2ZSBwYXRoc1xuIgogIm9uIGEgY2FzZS1pbnNlbnNpdGl2ZSBmaWxlc3lzdGVtKSBhbmQgb25seSBvbmUgZnJvbSB0aGUgc2FtZVxuIgogImNvbGxpZGluZyBncm91cCBpcyBpbiB0aGUgd29ya2luZyB0cmVlOlxuIgogbXNnc3RyICIiCiAKKyM6IHVucGFjay10cmVlcy5jOjE0NDEKKyMsIGZ1enp5Cittc2dpZCAiVXBkYXRpbmcgaW5kZXggZmxhZ3MiCittc2dzdHIgIlMnZXN0YW4gYWN0dWFsaXR6YW50IGVscyBmaXR4ZXJzIgorCiAjOiB1cmxtYXRjaC5jOjE2MwogbXNnaWQgImludmFsaWQgVVJMIHNjaGVtZSBuYW1lIG9yIG1pc3NpbmcgJzovLycgc3VmZml4IgogbXNnc3RyICJsJ2VzcXVlbWEgZCdVUkwgbm8gw6lzIHbDoGxpZCBvIGxpIG1hbmNhIGVsIHN1Zml4ICc6Ly8nIgpAQCAtNjY2NCwxOTkgKzgzNTEsMjA0IEBACiBtc2dpZCAiaW52YWxpZCAnLi4nIHBhdGggc2VnbWVudCIKIG1zZ3N0ciAic2VnbWVudCBkZSBjYW3DrSAnLi4nIG5vIHbDoGxpZCIKIAotIzogd29ya3RyZWUuYzoyNDkgYnVpbHRpbi9hbS5jOjIxMDAKKyM6IHdvcmt0cmVlLmM6MjU4IGJ1aWx0aW4vYW0uYzoyMDg0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWFkICclcyciCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gbGxlZ2lyIMKrJXPCuyIKIAotIzogd29ya3RyZWUuYzoyOTUKKyM6IHdvcmt0cmVlLmM6MzA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgYXQgbWFpbiB3b3JraW5nIHRyZWUgaXMgbm90IHRoZSByZXBvc2l0b3J5IGRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiB3b3JrdHJlZS5jOjMwNgorIzogd29ya3RyZWUuYzozMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBmaWxlIGRvZXMgbm90IGNvbnRhaW4gYWJzb2x1dGUgcGF0aCB0byB0aGUgd29ya2luZyB0cmVlIGxvY2F0aW9uIgogbXNnc3RyICIiCiAKLSM6IHdvcmt0cmVlLmM6MzE4CisjOiB3b3JrdHJlZS5jOjMyNwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICLCqyVzwrsgbm8gZXhpc3RlaXgiCiAKLSM6IHdvcmt0cmVlLmM6MzI0CisjOiB3b3JrdHJlZS5jOjMzMwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIC5naXQgZmlsZSwgZXJyb3IgY29kZSAlZCIKIG1zZ3N0ciAiwqslc8K7IG5vIMOpcyB1biBmaXR4ZXIgLmdpdCwgY29kaSBkJ2Vycm9yICVkIgogCi0jOiB3b3JrdHJlZS5jOjMzMgorIzogd29ya3RyZWUuYzozNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBkb2VzIG5vdCBwb2ludCBiYWNrIHRvICclcyciCiBtc2dzdHIgIsKrJXPCuyBubyBhc3NlbnlhbGEgZGUgdG9ybmFkYSBhIMKrJXPCuyIKIAotIzogd3JhcHBlci5jOjIyMyB3cmFwcGVyLmM6MzkzCisjOiB3cmFwcGVyLmM6MTg2IHdyYXBwZXIuYzozNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3IgcmVhZGluZyBhbmQgd3JpdGluZyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciDCqyVzwrsgcGVyIGEgbGVjdHVyYSBpIGVzY3JpcHR1cmEiCiAKLSM6IHdyYXBwZXIuYzo0MjQgd3JhcHBlci5jOjYyNAorIzogd3JhcHBlci5jOjM4NyB3cmFwcGVyLmM6NTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBhY2NlZGlyIGEgwqslc8K7IgogCi0jOiB3cmFwcGVyLmM6NjMyCisjOiB3cmFwcGVyLmM6NTk2CiBtc2dpZCAidW5hYmxlIHRvIGdldCBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9idGVuaXIgZWwgZGlyZWN0b3JpIGRlIHRyZWJhbGwgYWN0dWFsIgogCi0jOiB3dC1zdGF0dXMuYzoxNTQKKyM6IHd0LXN0YXR1cy5jOjE1OAogbXNnaWQgIlVubWVyZ2VkIHBhdGhzOiIKIG1zZ3N0ciAiQ2FtaW5zIHNlbnNlIGZ1c2lvbmFyOiIKIAotIzogd3Qtc3RhdHVzLmM6MTgxIHd0LXN0YXR1cy5jOjIwOAotIywgYy1mb3JtYXQKLW1zZ2lkICIgICh1c2UgXCJnaXQgcmVzZXQgJXMgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCisjOiB3dC1zdGF0dXMuYzoxODcgd3Qtc3RhdHVzLmM6MjE5CisjLCBmdXp6eQorbXNnaWQgIiAgKHVzZSBcImdpdCByZXN0b3JlIC0tc3RhZ2VkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgogbXNnc3RyICIgICh1c2V1IFwiZ2l0IHJlc2V0ICVzIDxmaXR4ZXI+Li4uXCIgcGVyIGEgZmVyIMKrdW5zdGFnZcK7KSIKIAotIzogd3Qtc3RhdHVzLmM6MTgzIHd0LXN0YXR1cy5jOjIxMAorIzogd3Qtc3RhdHVzLmM6MTkwIHd0LXN0YXR1cy5jOjIyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zb3VyY2U9JXMgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiAgKHVzZXUgXCJnaXQgcmVzZXQgJXMgPGZpdHhlcj4uLi5cIiBwZXIgYSBmZXIgwqt1bnN0YWdlwrspIgorCisjOiB3dC1zdGF0dXMuYzoxOTMgd3Qtc3RhdHVzLmM6MjI1CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJtIC0tY2FjaGVkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgogbXNnc3RyICIgICh1c2V1IFwiZ2l0IHJtIC0tY2FjaGVkIDxmaXR4ZXI+Li4uXCIgcGVyIGEgZmVyIMKrdW5zdGFnZcK7KSIKIAotIzogd3Qtc3RhdHVzLmM6MTg3CisjOiB3dC1zdGF0dXMuYzoxOTcKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkIDxmaWxlPi4uLlwiIHRvIG1hcmsgcmVzb2x1dGlvbikiCiBtc2dzdHIgIiAgKHVzZXUgXCJnaXQgYWRkIDxmaXR4ZXI+Li4uXCIgcGVyIGEgc2VueWFsYXIgcmVzb2x1Y2nDsykiCiAKLSM6IHd0LXN0YXR1cy5jOjE4OSB3dC1zdGF0dXMuYzoxOTMKKyM6IHd0LXN0YXR1cy5jOjE5OSB3dC1zdGF0dXMuYzoyMDMKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIGFzIGFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbikiCiBtc2dzdHIgIiIKICIgICh1c2V1IFwiZ2l0IGFkZC9ybSA8Zml0eGVyPi4uLlwiIHNlZ29ucyBzaWd1aSBhcHJvcGlhdCBwZXIgYSBzZW55YWxhciAiCiAicmVzb2x1Y2nDsykiCiAKLSM6IHd0LXN0YXR1cy5jOjE5MQorIzogd3Qtc3RhdHVzLmM6MjAxCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJtIDxmaWxlPi4uLlwiIHRvIG1hcmsgcmVzb2x1dGlvbikiCiBtc2dzdHIgIiAgKHVzZXUgXCJnaXQgcm0gPGZpdHhlcj4uLi5cIiBwZXIgYSBzZW55YWxhciByZXNvbHVjacOzKSIKIAotIzogd3Qtc3RhdHVzLmM6MjAyIHd0LXN0YXR1cy5jOjEwNDIKKyM6IHd0LXN0YXR1cy5jOjIxMSB3dC1zdGF0dXMuYzoxMDc0CiBtc2dpZCAiQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6IgogbXNnc3RyICJDYW52aXMgYSBjb21ldHJlOiIKIAotIzogd3Qtc3RhdHVzLmM6MjIwIHd0LXN0YXR1cy5jOjEwNTEKKyM6IHd0LXN0YXR1cy5jOjIzNCB3dC1zdGF0dXMuYzoxMDgzCiBtc2dpZCAiQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6IgogbXNnc3RyICJDYW52aXMgbm8gwqtzdGFnZWTCuyBwZXIgYSBjb21ldHJlOiIKIAotIzogd3Qtc3RhdHVzLmM6MjI0CisjOiB3dC1zdGF0dXMuYzoyMzgKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiICAodXNldSBcImdpdCBhZGQgPGZpdHhlcj4uLi5cIiBwZXIgYSBhY3R1YWxpdHphciBxdcOoIGVzIGNvbWV0csOgKSIKIAotIzogd3Qtc3RhdHVzLmM6MjI2CisjOiB3dC1zdGF0dXMuYzoyNDAKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiICAodXNldSBcImdpdCBhZGQvcm0gPGZpdHhlcj4uLi5cIiBwZXIgYSBhY3R1YWxpdHphciBxdcOoIGVzIGNvbWV0csOgKSIKIAotIzogd3Qtc3RhdHVzLmM6MjI3CisjOiB3dC1zdGF0dXMuYzoyNDEKKyMsIGZ1enp5CiBtc2dpZCAiIgotIiAgKHVzZSBcImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi5cIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpIgorIiAgKHVzZSBcImdpdCByZXN0b3JlIDxmaWxlPi4uLlwiIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkiCiBtc2dzdHIgIiIKICIgICh1c2V1IFwiZ2l0IGNoZWNrb3V0IC0tIDxmaXR4ZXI+Li4uXCIgcGVyIGEgZGVzY2FydGFyIGVscyBjYW52aXMgZW4gZWwgIgogImRpcmVjdG9yaSBkZSB0cmViYWxsKSIKIAotIzogd3Qtc3RhdHVzLmM6MjI5CisjOiB3dC1zdGF0dXMuYzoyNDMKIG1zZ2lkICIgIChjb21taXQgb3IgZGlzY2FyZCB0aGUgdW50cmFja2VkIG9yIG1vZGlmaWVkIGNvbnRlbnQgaW4gc3VibW9kdWxlcykiCiBtc2dzdHIgIiIKICIgIChjb21ldGV1IG8gZGVzY2FydGV1IGVsIGNvbnRpbmd1dCBtb2RpZmljYXQgbyBubyBzZWd1aXQgZW4gZWxzIHN1Ym3DsmR1bHMpIgogCi0jOiB3dC1zdGF0dXMuYzoyNDEKKyM6IHd0LXN0YXR1cy5jOjI1NAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICh1c2UgXCJnaXQgJXMgPGZpbGU+Li4uXCIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKLW1zZ3N0ciAiIgotIiAgKHVzZXUgXCJnaXQgJXMgPGZpdHhlcj4uLi5cIiBwZXIgYSBpbmNsb3VyZS1obyBlbiBlbCBxdWFsIGVzIGNvbWV0csOgKSIKK21zZ3N0ciAiICAodXNldSBcImdpdCAlcyA8Zml0eGVyPi4uLlwiIHBlciBhIGluY2xvdXJlLWhvIGVuIGVsIHF1ZSBlcyBjb21ldHLDoCkiCiAKLSM6IHd0LXN0YXR1cy5jOjI1NgorIzogd3Qtc3RhdHVzLmM6MjY4CiBtc2dpZCAiYm90aCBkZWxldGVkOiIKIG1zZ3N0ciAic3VwcmltaXQgcGVyIGFtYmTDs3M6IgogCi0jOiB3dC1zdGF0dXMuYzoyNTgKKyM6IHd0LXN0YXR1cy5jOjI3MAogbXNnaWQgImFkZGVkIGJ5IHVzOiIKIG1zZ3N0ciAiYWZlZ2l0IHBlciBub3NhbHRyZXM6IgogCi0jOiB3dC1zdGF0dXMuYzoyNjAKKyM6IHd0LXN0YXR1cy5jOjI3MgogbXNnaWQgImRlbGV0ZWQgYnkgdGhlbToiCiBtc2dzdHIgInN1cHJpbWl0IHBlciBlbGxzOiIKIAotIzogd3Qtc3RhdHVzLmM6MjYyCisjOiB3dC1zdGF0dXMuYzoyNzQKIG1zZ2lkICJhZGRlZCBieSB0aGVtOiIKIG1zZ3N0ciAiYWZlZ2l0IHBlciBlbGxzOiIKIAotIzogd3Qtc3RhdHVzLmM6MjY0CisjOiB3dC1zdGF0dXMuYzoyNzYKIG1zZ2lkICJkZWxldGVkIGJ5IHVzOiIKIG1zZ3N0ciAic3VwcmltaXQgcGVyIG5vc2FsdHJlczoiCiAKLSM6IHd0LXN0YXR1cy5jOjI2NgorIzogd3Qtc3RhdHVzLmM6Mjc4CiBtc2dpZCAiYm90aCBhZGRlZDoiCiBtc2dzdHIgImFmZWdpdCBwZXIgYW1iZMOzczoiCiAKLSM6IHd0LXN0YXR1cy5jOjI2OAorIzogd3Qtc3RhdHVzLmM6MjgwCiBtc2dpZCAiYm90aCBtb2RpZmllZDoiCiBtc2dzdHIgIm1vZGlmaWNhdCBwZXIgYW1iZMOzczoiCiAKLSM6IHd0LXN0YXR1cy5jOjI3OAorIzogd3Qtc3RhdHVzLmM6MjkwCiBtc2dpZCAibmV3IGZpbGU6IgogbXNnc3RyICJmaXR4ZXIgbm91OiIKIAotIzogd3Qtc3RhdHVzLmM6MjgwCisjOiB3dC1zdGF0dXMuYzoyOTIKIG1zZ2lkICJjb3BpZWQ6IgogbXNnc3RyICJjb3BpYXQ6IgogCi0jOiB3dC1zdGF0dXMuYzoyODIKKyM6IHd0LXN0YXR1cy5jOjI5NAogbXNnaWQgImRlbGV0ZWQ6IgogbXNnc3RyICJzdXByaW1pdDoiCiAKLSM6IHd0LXN0YXR1cy5jOjI4NAorIzogd3Qtc3RhdHVzLmM6Mjk2CiBtc2dpZCAibW9kaWZpZWQ6IgogbXNnc3RyICJtb2RpZmljYXQ6IgogCi0jOiB3dC1zdGF0dXMuYzoyODYKKyM6IHd0LXN0YXR1cy5jOjI5OAogbXNnaWQgInJlbmFtZWQ6IgogbXNnc3RyICJjYW52aWF0IGRlIG5vbToiCiAKLSM6IHd0LXN0YXR1cy5jOjI4OAorIzogd3Qtc3RhdHVzLmM6MzAwCiBtc2dpZCAidHlwZWNoYW5nZToiCiBtc2dzdHIgImNhbnZpYXQgZGUgdGlwdXM6IgogCi0jOiB3dC1zdGF0dXMuYzoyOTAKKyM6IHd0LXN0YXR1cy5jOjMwMgogbXNnaWQgInVua25vd246IgogbXNnc3RyICJkZXNjb25lZ3V0OiIKIAotIzogd3Qtc3RhdHVzLmM6MjkyCisjOiB3dC1zdGF0dXMuYzozMDQKIG1zZ2lkICJ1bm1lcmdlZDoiCiBtc2dzdHIgInNlbnNlIGZ1c2lvbmFyOiIKIAotIzogd3Qtc3RhdHVzLmM6MzcyCisjOiB3dC1zdGF0dXMuYzozODQKIG1zZ2lkICJuZXcgY29tbWl0cywgIgogbXNnc3RyICJjb21pc3Npb25zIG5vdmVzLCAiCiAKLSM6IHd0LXN0YXR1cy5jOjM3NAorIzogd3Qtc3RhdHVzLmM6Mzg2CiBtc2dpZCAibW9kaWZpZWQgY29udGVudCwgIgogbXNnc3RyICJjb250aW5ndXQgbW9kaWZpY2F0LCAiCiAKLSM6IHd0LXN0YXR1cy5jOjM3NgorIzogd3Qtc3RhdHVzLmM6Mzg4CiBtc2dpZCAidW50cmFja2VkIGNvbnRlbnQsICIKIG1zZ3N0ciAiY29udGluZ3V0IG5vIHNlZ3VpdCwgIgogCi0jOiB3dC1zdGF0dXMuYzo4ODAKKyM6IHd0LXN0YXR1cy5jOjkwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIHN0YXNoIGN1cnJlbnRseSBoYXMgJWQgZW50cnkiCiBtc2dpZF9wbHVyYWwgIllvdXIgc3Rhc2ggY3VycmVudGx5IGhhcyAlZCBlbnRyaWVzIgogbXNnc3RyWzBdICJMJ8Krc3Rhc2jCuyB0w6kgYWN0dWFsbWVudCAlZCBlbnRyYWRhIgogbXNnc3RyWzFdICJMJ8Krc3Rhc2jCuyB0w6kgYWN0dWFsbWVudCAlZCBlbnRyYWRlcyIKIAotIzogd3Qtc3RhdHVzLmM6OTEyCisjOiB3dC1zdGF0dXMuYzo5MzgKIG1zZ2lkICJTdWJtb2R1bGVzIGNoYW5nZWQgYnV0IG5vdCB1cGRhdGVkOiIKIG1zZ3N0ciAiU3VibcOyZHVscyBjYW52aWF0cyBwZXLDsiBubyBhY3R1YWxpdHphdHM6IgogCi0jOiB3dC1zdGF0dXMuYzo5MTQKKyM6IHd0LXN0YXR1cy5jOjk0MAogbXNnaWQgIlN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCiBtc2dzdHIgIkNhbnZpcyBkZSBzdWJtw7JkdWwgYSBjb21ldHJlOiIKIAotIzogd3Qtc3RhdHVzLmM6OTk2CisjOiB3dC1zdGF0dXMuYzoxMDIyCiBtc2dpZCAiIgogIkRvIG5vdCBtb2RpZnkgb3IgcmVtb3ZlIHRoZSBsaW5lIGFib3ZlLlxuIgogIkV2ZXJ5dGhpbmcgYmVsb3cgaXQgd2lsbCBiZSBpZ25vcmVkLiIKQEAgLTY4NjQsMTA5ICs4NTU2LDExNyBAQAogIk5vIG1vZGlmaXF1ZXUgbyBzdXByaW1pdSBsYSBsw61uaWEgZGUgZGFsdC5cbiIKICJUb3QgZWwgcXVlIGhpIGhhIGEgc290YSBzJ2lnbm9yYXLDoC4iCiAKLSM6IHd0LXN0YXR1cy5jOjEwOTcKKyM6IHd0LXN0YXR1cy5jOjExMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGNvbXB1dGUgdGhlIGJyYW5jaCBhaGVhZC9iZWhpbmQgdmFsdWVzLlxuIgorIllvdSBjYW4gdXNlICctLW5vLWFoZWFkLWJlaGluZCcgdG8gYXZvaWQgdGhpcy5cbiIKK21zZ3N0ciAiIgorCisjOiB3dC1zdGF0dXMuYzoxMTQ0CiBtc2dpZCAiWW91IGhhdmUgdW5tZXJnZWQgcGF0aHMuIgogbXNnc3RyICJUZW5pdSBjYW1pbnMgc2Vuc2UgZnVzaW9uYXIuIgogCi0jOiB3dC1zdGF0dXMuYzoxMTAwCisjOiB3dC1zdGF0dXMuYzoxMTQ3CiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IGNvbW1pdFwiKSIKIG1zZ3N0ciAiICAoYXJyZWdsZXUgZWxzIGNvbmZsaWN0ZXMgaSBleGVjdXRldSBcImdpdCBjb21taXRcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjExMDIKKyM6IHd0LXN0YXR1cy5jOjExNDkKIG1zZ2lkICIgICh1c2UgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIHRvIGFib3J0IHRoZSBtZXJnZSkiCiBtc2dzdHIgIiAgKHVzZXUgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIHBlciBhIGF2b3J0YXIgbGEgZnVzacOzKSIKIAotIzogd3Qtc3RhdHVzLmM6MTEwNgorIzogd3Qtc3RhdHVzLmM6MTE1MwogbXNnaWQgIkFsbCBjb25mbGljdHMgZml4ZWQgYnV0IHlvdSBhcmUgc3RpbGwgbWVyZ2luZy4iCiBtc2dzdHIgIlRvdHMgZWxzIGNvbmZsaWN0ZXMgZXN0YW4gYXJyZWdsYXRzIHBlcsOyIGVuY2FyYSBlc3RldSBmdXNpb25hbnQuIgogCi0jOiB3dC1zdGF0dXMuYzoxMTA5CisjOiB3dC1zdGF0dXMuYzoxMTU2CiBtc2dpZCAiICAodXNlIFwiZ2l0IGNvbW1pdFwiIHRvIGNvbmNsdWRlIG1lcmdlKSIKIG1zZ3N0ciAiICAodXNldSBcImdpdCBjb21taXRcIiBwZXIgYSBjb25jbG91cmUgbGEgZnVzacOzKSIKIAotIzogd3Qtc3RhdHVzLmM6MTExOAorIzogd3Qtc3RhdHVzLmM6MTE2NQogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbiBhbSBzZXNzaW9uLiIKIG1zZ3N0ciAiRXN0ZXUgZW5taWcgZCd1bmEgc2Vzc2nDsyBhbS4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMjEKKyM6IHd0LXN0YXR1cy5jOjExNjgKIG1zZ2lkICJUaGUgY3VycmVudCBwYXRjaCBpcyBlbXB0eS4iCiBtc2dzdHIgIkVsIHBlZGHDpyBhY3R1YWwgZXN0w6AgYnVpdC4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMjUKKyM6IHd0LXN0YXR1cy5jOjExNzIKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCB0aGVuIHJ1biBcImdpdCBhbSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgIChhcnJlZ2xldSBlbHMgY29uZmxpY3RlcyBpIGRlc3Byw6lzIGV4ZWN1dGV1IFwiZ2l0IGFtIC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjExMjcKKyM6IHd0LXN0YXR1cy5jOjExNzQKIG1zZ2lkICIgICh1c2UgXCJnaXQgYW0gLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKIG1zZ3N0ciAiICAodXNldSBcImdpdCBhbSAtLXNraXBcIiBwZXIgYSBvbWV0cmUgYXF1ZXN0IHBlZGHDpykiCiAKLSM6IHd0LXN0YXR1cy5jOjExMjkKKyM6IHd0LXN0YXR1cy5jOjExNzYKIG1zZ2lkICIgICh1c2UgXCJnaXQgYW0gLS1hYm9ydFwiIHRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCkiCiBtc2dzdHIgIiAgKHVzZXUgXCJnaXQgYW0gLS1hYm9ydFwiIHBlciBhIHJlc3RhdXJhciBsYSBicmFuY2Egb3JpZ2luYWwpIgogCi0jOiB3dC1zdGF0dXMuYzoxMjYwCisjOiB3dC1zdGF0dXMuYzoxMzA5CiBtc2dpZCAiZ2l0LXJlYmFzZS10b2RvIGlzIG1pc3NpbmcuIgogbXNnc3RyICJNYW5jYSBnaXQtcmViYXNlLXRvZG8uIgogCi0jOiB3dC1zdGF0dXMuYzoxMjYyCisjOiB3dC1zdGF0dXMuYzoxMzExCiBtc2dpZCAiTm8gY29tbWFuZHMgZG9uZS4iCiBtc2dzdHIgIk5vIHMnaGEgZmV0IGNhcCBvcmRyZS4iCiAKLSM6IHd0LXN0YXR1cy5jOjEyNjUKKyM6IHd0LXN0YXR1cy5jOjEzMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiTGFzdCBjb21tYW5kIGRvbmUgKCVkIGNvbW1hbmQgZG9uZSk6IgogbXNnaWRfcGx1cmFsICJMYXN0IGNvbW1hbmRzIGRvbmUgKCVkIGNvbW1hbmRzIGRvbmUpOiIKIG1zZ3N0clswXSAiw5psdGltYSBvcmRyZSBmZXRhICglZCBvcmRyZSBmZXRhKToiCiBtc2dzdHJbMV0gIsOabHRpbWVzIG9yZHJlcyBmZXRlcyAoJWQgb3JkcmVzIGZldGVzKToiCiAKLSM6IHd0LXN0YXR1cy5jOjEyNzYKKyM6IHd0LXN0YXR1cy5jOjEzMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAoc2VlIG1vcmUgaW4gZmlsZSAlcykiCiBtc2dzdHIgIiAgKHZlZ2V1IG3DqXMgZW4gZWwgZml0eGVyICVzKSIKIAotIzogd3Qtc3RhdHVzLmM6MTI4MQorIzogd3Qtc3RhdHVzLmM6MTMzMAogbXNnaWQgIk5vIGNvbW1hbmRzIHJlbWFpbmluZy4iCiBtc2dzdHIgIk5vIG1hbmNhIGNhcCBvcmRyZS4iCiAKLSM6IHd0LXN0YXR1cy5jOjEyODQKKyM6IHd0LXN0YXR1cy5jOjEzMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiTmV4dCBjb21tYW5kIHRvIGRvICglZCByZW1haW5pbmcgY29tbWFuZCk6IgogbXNnaWRfcGx1cmFsICJOZXh0IGNvbW1hbmRzIHRvIGRvICglZCByZW1haW5pbmcgY29tbWFuZHMpOiIKIG1zZ3N0clswXSAiT3JkcmUgc2Vnw7xlbnQgYSBmZXIgKG1hbmNhICVkIG9yZHJlKToiCiBtc2dzdHJbMV0gIk9yZHJlcyBzZWfDvGVudHMgYSBmZXIgKG1hbnF1ZW4gJWQgb3JkcmVzKToiCiAKLSM6IHd0LXN0YXR1cy5jOjEyOTIKKyM6IHd0LXN0YXR1cy5jOjEzNDEKIG1zZ2lkICIgICh1c2UgXCJnaXQgcmViYXNlIC0tZWRpdC10b2RvXCIgdG8gdmlldyBhbmQgZWRpdCkiCiBtc2dzdHIgIiAgKHVzZXUgXCJnaXQgcmViYXNlIC0tZWRpdC10b2RvXCIgcGVyIGEgdmV1cmUgaSBlZGl0YXIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzA0CisjOiB3dC1zdGF0dXMuYzoxMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgogbXNnc3RyICJBY3R1YWxtZW50IGVzdGV1IGZlbnQgwqtyZWJhc2XCuyBkZSBsYSBicmFuY2Egwqslc8K7IGVuIMKrJXPCuy4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzMDkKKyM6IHd0LXN0YXR1cy5jOjEzNTgKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSByZWJhc2luZy4iCiBtc2dzdHIgIkFjdHVhbG1lbnQgZXN0ZXUgZmVudCDCq3JlYmFzZcK7LiIKIAotIzogd3Qtc3RhdHVzLmM6MTMyMgorIzogd3Qtc3RhdHVzLmM6MTM3MQogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHRoZW4gcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIiCi0iICAoYXJyZWdsZXUgZWxzIGNvbmZsaWN0ZXMgaSBkZXNwcsOpcyBleGVjdXRldSBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKKyIgIChhcnJlZ2xldSBlbHMgY29uZmxpY3RlcyBpIGRlc3Byw6lzIGV4ZWN1dGV1IMKrZ2l0IHJlYmFzZSAtLWNvbnRpbnVlwrspIgogCi0jOiB3dC1zdGF0dXMuYzoxMzI0CisjOiB3dC1zdGF0dXMuYzoxMzczCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgotbXNnc3RyICIgICh1c2V1IFwiZ2l0IHJlYmFzZSAtLXNraXBcIiBwZXIgYSBvbWV0cmUgYXF1ZXN0IHBlZGHDpykiCittc2dzdHIgIiAgKHVzZXUgwqtnaXQgcmViYXNlIC0tc2tpcMK7IHBlciBhIG9tZXRyZSBhcXVlc3QgcGVkYcOnKSIKIAotIzogd3Qtc3RhdHVzLmM6MTMyNgorIzogd3Qtc3RhdHVzLmM6MTM3NQogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1hYm9ydFwiIHRvIGNoZWNrIG91dCB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKLW1zZ3N0ciAiICAodXNldSBcImdpdCByZWJhc2UgLS1hYm9ydFwiIHBlciBhIGFnYWZhciBsYSBicmFuY2Egb3JpZ2luYWwpIgorbXNnc3RyICIgICh1c2V1IMKrZ2l0IHJlYmFzZSAtLWFib3J0wrsgcGVyIGEgYWdhZmFyIGxhIGJyYW5jYSBvcmlnaW5hbCkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMzMKKyM6IHd0LXN0YXR1cy5jOjEzODIKIG1zZ2lkICIgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiIKLSIgICh0b3RzIGVscyBjb25mbGljdGVzIGVzdGFuIGFycmVnbGF0czogZXhlY3V0ZXUgXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCisiICAodG90cyBlbHMgY29uZmxpY3RlcyBlc3RhbiBhcnJlZ2xhdHM6IGV4ZWN1dGV1IMKrZ2l0IHJlYmFzZSAtLWNvbnRpbnVlwrspIgogCi0jOiB3dC1zdGF0dXMuYzoxMzM3CisjOiB3dC1zdGF0dXMuYzoxMzg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXJlIGN1cnJlbnRseSBzcGxpdHRpbmcgYSBjb21taXQgd2hpbGUgcmViYXNpbmcgYnJhbmNoICclcycgb24gJyVzJy4iCkBAIC02OTc0LDEzMiArODY3NCwxNDkgQEAKICJBY3R1YWxtZW50IGVzdGV1IGRpdmlkaW50IHVuYSBjb21pc3Npw7MgbWVudHJlIGVzIGZhIMKrcmViYXNlwrsgZGUgbGEgYnJhbmNhICIKICLCqyVzwrsgZW4gwqslc8K7LiIKIAotIzogd3Qtc3RhdHVzLmM6MTM0MgorIzogd3Qtc3RhdHVzLmM6MTM5MQogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHNwbGl0dGluZyBhIGNvbW1pdCBkdXJpbmcgYSByZWJhc2UuIgogbXNnc3RyICJBY3R1YWxtZW50IGVzdGV1IGRpdmlkaW50IHVuYSBjb21pc3Npw7MgZHVyYW50IHVuIMKrcmViYXNlwrsuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzQ1CisjOiB3dC1zdGF0dXMuYzoxMzk0CiBtc2dpZCAiICAoT25jZSB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IGlzIGNsZWFuLCBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiIKICIgIChVbmEgdmVnYWRhIHF1ZSBlbCB2b3N0cmUgZGlyZWN0b3JpIGRlIHRyZWJhbGwgc2lndWkgbmV0LCBleGVjdXRldSBcImdpdCAiCiAicmViYXNlIC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNDkKKyM6IHd0LXN0YXR1cy5jOjEzOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgZWRpdGluZyBhIGNvbW1pdCB3aGlsZSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKIG1zZ3N0ciAiIgogIkFjdHVhbG1lbnQgZXN0ZXUgZWRpdGFudCB1bmEgY29taXNzacOzIG1lbnRyZSBlcyBmYSDCq3JlYmFzZcK7IGRlIGxhIGJyYW5jYSAiCiAiwqslc8K7IGVuIMKrJXPCuy4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTQKKyM6IHd0LXN0YXR1cy5jOjE0MDMKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBlZGl0aW5nIGEgY29tbWl0IGR1cmluZyBhIHJlYmFzZS4iCiBtc2dzdHIgIkFjdHVhbG1lbnQgZXN0ZXUgZWRpdGFudCB1bmEgY29taXNzacOzIGR1cmFudCB1biDCq3JlYmFzZcK7LiIKIAotIzogd3Qtc3RhdHVzLmM6MTM1NworIzogd3Qtc3RhdHVzLmM6MTQwNgogbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXQgLS1hbWVuZFwiIHRvIGFtZW5kIHRoZSBjdXJyZW50IGNvbW1pdCkiCiBtc2dzdHIgIiAgKHVzZXUgXCJnaXQgY29tbWl0IC0tYW1lbmRcIiBwZXIgYSBlc21lbmFyIGxhIGNvbWlzc2nDsyBhY3R1YWwpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzU5CisjOiB3dC1zdGF0dXMuYzoxNDA4CiBtc2dpZCAiIgogIiAgKHVzZSBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiIG9uY2UgeW91IGFyZSBzYXRpc2ZpZWQgd2l0aCB5b3VyIGNoYW5nZXMpIgogbXNnc3RyICIiCiAiICAodXNldSBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiIHVuYSB2ZWdhZGEgcXVlIGVzdGlndWV1IHNhdGlzZmV0IGFtYiBlbHMgIgogInZvc3RyZXMgY2FudmlzKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM2OAorIzogd3Qtc3RhdHVzLmM6MTQxOQorbXNnaWQgIkNoZXJyeS1waWNrIGN1cnJlbnRseSBpbiBwcm9ncmVzcy4iCittc2dzdHIgIkhpIGhhIMKrY2hlcnJ5IHBpY2vCuyBhY3R1YWxtZW50IGVuIGN1cnMuIgorCisjOiB3dC1zdGF0dXMuYzoxNDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGNoZXJyeS1waWNraW5nIGNvbW1pdCAlcy4iCiBtc2dzdHIgIkFjdHVhbG1lbnQgZXN0ZXUgZmVudCDCq2NoZXJyeSBwaWNrwrsgYSBsYSBjb21pc3Npw7MgJXMuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzczCisjOiB3dC1zdGF0dXMuYzoxNDI5CiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCittc2dzdHIgIiAgKGFycmVnbGV1IGVscyBjb25mbGljdGVzIGkgZXhlY3V0ZXUgwqtnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZcK7KSIKKworIzogd3Qtc3RhdHVzLmM6MTQzMgorIywgZnV6enkKK21zZ2lkICIgIChydW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIHRvIGNvbnRpbnVlKSIKIG1zZ3N0ciAiICAoYXJyZWdsZXUgZWxzIGNvbmZsaWN0ZXMgaSBleGVjdXRldSBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzc2CisjOiB3dC1zdGF0dXMuYzoxNDM1CiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCi1tc2dzdHIgIiIKLSIgICh0b3RzIGVscyBjb25mbGljdGVzIGVzdGFuIGFycmVnbGF0czogZXhlY3V0ZXUgXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZSIKLSJcIikiCittc2dzdHIgIiAgKHRvdHMgZWxzIGNvbmZsaWN0ZXMgZXN0YW4gYXJyZWdsYXRzOiBleGVjdXRldSDCq2dpdCBjaGVycnktcGljayAtLWNvbnRpbnVlwrspIgogCi0jOiB3dC1zdGF0dXMuYzoxMzc4CisjOiB3dC1zdGF0dXMuYzoxNDM3Cittc2dpZCAiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCittc2dzdHIgIiAgKHVzZXUgwqtnaXQgY2hlcnJ5LXBpY2sgLS1za2lwwrsgcGVyIGEgb21ldHJlIGFxdWVzdCBwZWRhw6cpIgorCisjOiB3dC1zdGF0dXMuYzoxNDM5CiBtc2dpZCAiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnRcIiB0byBjYW5jZWwgdGhlIGNoZXJyeS1waWNrIG9wZXJhdGlvbikiCiBtc2dzdHIgIiIKICIgICh1c2V1IFwiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnRcIiBwZXIgYSBjYW5jZWzCt2xhciBsJ29wZXJhY2nDsyBkZSDCq2NoZXJyeSAiCiAicGlja8K7KSIKIAotIzogd3Qtc3RhdHVzLmM6MTM4NgorIzogd3Qtc3RhdHVzLmM6MTQ0OQorbXNnaWQgIlJldmVydCBjdXJyZW50bHkgaW4gcHJvZ3Jlc3MuIgorbXNnc3RyICJVbmEgcmV2ZXJzacOzIGVzdMOgIGFjdHVhbG1lbnQgZW4gY3Vycy4iCisKKyM6IHd0LXN0YXR1cy5jOjE0NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmV2ZXJ0aW5nIGNvbW1pdCAlcy4iCiBtc2dzdHIgIkFjdHVhbG1lbnQgZXN0ZXUgcmV2ZXJ0aW50IGxhIGNvbWlzc2nDsyAlcy4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzOTEKKyM6IHd0LXN0YXR1cy5jOjE0NTgKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKGFycmVnbGV1IGVscyBjb25mbGljdGVzIGkgZXhlY3V0ZXUgXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzOTQKKyM6IHd0LXN0YXR1cy5jOjE0NjEKKyMsIGZ1enp5Cittc2dpZCAiICAocnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIgdG8gY29udGludWUpIgorbXNnc3RyICIgIChhcnJlZ2xldSBlbHMgY29uZmxpY3RlcyBpIGV4ZWN1dGV1IFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgorCisjOiB3dC1zdGF0dXMuYzoxNDY0CiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIiCiAiICAodG90cyBlbHMgY29uZmxpY3RlcyBlc3RhbiBhcnJlZ2xhdHM6IGV4ZWN1dGV1IFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzk2CisjOiB3dC1zdGF0dXMuYzoxNDY2CisjLCBmdXp6eQorbXNnaWQgIiAgKHVzZSBcImdpdCByZXZlcnQgLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKK21zZ3N0ciAiICAodXNldSBcImdpdCByZWJhc2UgLS1za2lwXCIgcGVyIGEgb21ldHJlIGFxdWVzdCBwZWRhw6cpIgorCisjOiB3dC1zdGF0dXMuYzoxNDY4CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJldmVydCAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSByZXZlcnQgb3BlcmF0aW9uKSIKIG1zZ3N0ciAiIgogIiAgKHVzZXUgXCJnaXQgcmV2ZXJ0IC0tYWJvcnRcIiBwZXIgYSBjYW5jZWzCt2xhciBsJ29wZXJhY2nDsyBkZSByZXZlcnNpw7MpIgogCi0jOiB3dC1zdGF0dXMuYzoxNDA2CisjOiB3dC1zdGF0dXMuYzoxNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGJpc2VjdGluZywgc3RhcnRlZCBmcm9tIGJyYW5jaCAnJXMnLiIKIG1zZ3N0ciAiQWN0dWFsbWVudCBlc3RldSBiaXNlY2FudCwgaGV1IGNvbWVuw6dhdCBkZXMgZGUgbGEgYnJhbmNhIMKrJXPCuy4iCiAKLSM6IHd0LXN0YXR1cy5jOjE0MTAKKyM6IHd0LXN0YXR1cy5jOjE0ODIKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcuIgogbXNnc3RyICJBY3R1YWxtZW50IGVzdGV1IGJpc2VjYW50LiIKIAotIzogd3Qtc3RhdHVzLmM6MTQxMworIzogd3Qtc3RhdHVzLmM6MTQ4NQogbXNnaWQgIiAgKHVzZSBcImdpdCBiaXNlY3QgcmVzZXRcIiB0byBnZXQgYmFjayB0byB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiICAodXNldSBcImdpdCBiaXNlY3QgcmVzZXRcIiBwZXIgYSB0b3JuYXIgYSBsYSBicmFuY2Egb3JpZ2luYWwpIgogCi0jOiB3dC1zdGF0dXMuYzoxNjExCisjOiB3dC1zdGF0dXMuYzoxNjk0CiBtc2dpZCAiT24gYnJhbmNoICIKIG1zZ3N0ciAiRW4gbGEgYnJhbmNhICIKIAotIzogd3Qtc3RhdHVzLmM6MTYxOAorIzogd3Qtc3RhdHVzLmM6MTcwMQogbXNnaWQgImludGVyYWN0aXZlIHJlYmFzZSBpbiBwcm9ncmVzczsgb250byAiCiBtc2dzdHIgIsKrcmViYXNlwrsgaW50ZXJhY3RpdSBlbiBjdXJzOyBzb2JyZSAiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MjAKKyM6IHd0LXN0YXR1cy5jOjE3MDMKIG1zZ2lkICJyZWJhc2UgaW4gcHJvZ3Jlc3M7IG9udG8gIgogbXNnc3RyICLCq3JlYmFzZcK7IGVuIGN1cnM7IHNvYnJlICIKIAotIzogd3Qtc3RhdHVzLmM6MTYyNQotbXNnaWQgIkhFQUQgZGV0YWNoZWQgYXQgIgotbXNnc3RyICJIRUFEIHNlcGFyYXQgYSAiCi0KLSM6IHd0LXN0YXR1cy5jOjE2MjcKLW1zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgotbXNnc3RyICJIRUFEIHNlcGFyYXQgZGUgIgotCi0jOiB3dC1zdGF0dXMuYzoxNjMwCisjOiB3dC1zdGF0dXMuYzoxNzEzCiBtc2dpZCAiTm90IGN1cnJlbnRseSBvbiBhbnkgYnJhbmNoLiIKIG1zZ3N0ciAiQWN0dWFsbWVudCBubyBzJ8OpcyBlbiBjYXAgYnJhbmNhLiIKIAotIzogd3Qtc3RhdHVzLmM6MTY0NworIzogd3Qtc3RhdHVzLmM6MTczMAogbXNnaWQgIkluaXRpYWwgY29tbWl0IgogbXNnc3RyICJDb21pc3Npw7MgaW5pY2lhbCIKIAotIzogd3Qtc3RhdHVzLmM6MTY0OAorIzogd3Qtc3RhdHVzLmM6MTczMQogbXNnaWQgIk5vIGNvbW1pdHMgeWV0IgotbXNnc3RyICJObyBzJ2hhIGZldCBjYXAgY29taXNzacOzIGVuY2FyYS4iCittc2dzdHIgIk5vIHMnaGEgZmV0IGNhcCBjb21pc3Npw7MgZW5jYXJhIgogCi0jOiB3dC1zdGF0dXMuYzoxNjYyCisjOiB3dC1zdGF0dXMuYzoxNzQ1CiBtc2dpZCAiVW50cmFja2VkIGZpbGVzIgogbXNnc3RyICJGaXR4ZXJzIG5vIHNlZ3VpdHMiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjQKKyM6IHd0LXN0YXR1cy5jOjE3NDcKIG1zZ2lkICJJZ25vcmVkIGZpbGVzIgogbXNnc3RyICJGaXR4ZXJzIGlnbm9yYXRzIgogCi0jOiB3dC1zdGF0dXMuYzoxNjY4CisjOiB3dC1zdGF0dXMuYzoxNzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBlbnVtZXJhdGUgdW50cmFja2VkIGZpbGVzLiAnc3RhdHVzIC11bm8nXG4iCkBAIC03MTExLDMxICs4ODI4LDMxIEBACiAib2JsaWRhci12b3MgZCdhZmVnaXIgZml0eGVycyBub3VzIHZvc2FsdHJlcyBtYXRlaXhvcyAodmVnZXVcbiIKICInZ2l0IGhlbHAgc3RhdHVzJykuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjc0CisjOiB3dC1zdGF0dXMuYzoxNzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVudHJhY2tlZCBmaWxlcyBub3QgbGlzdGVkJXMiCiBtc2dzdHIgIkVscyBmaXR4ZXJzIG5vIHNlZ3VpdHMgbm8gZXN0YW4gbGxpc3RhdHMlcyIKIAotIzogd3Qtc3RhdHVzLmM6MTY3NgorIzogd3Qtc3RhdHVzLmM6MTc1OQogbXNnaWQgIiAodXNlIC11IG9wdGlvbiB0byBzaG93IHVudHJhY2tlZCBmaWxlcykiCiBtc2dzdHIgIiAodXNldSBsJ29wY2nDsyAtdSBwZXIgYSBtb3N0cmFyIGVscyBmaXR4ZXJzIG5vIHNlZ3VpdHMpIgogCi0jOiB3dC1zdGF0dXMuYzoxNjgyCisjOiB3dC1zdGF0dXMuYzoxNzY1CiBtc2dpZCAiTm8gY2hhbmdlcyIKIG1zZ3N0ciAiU2Vuc2UgY2FudmlzIgogCi0jOiB3dC1zdGF0dXMuYzoxNjg3CisjOiB3dC1zdGF0dXMuYzoxNzcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGNoYW5nZXMgYWRkZWQgdG8gY29tbWl0ICh1c2UgXCJnaXQgYWRkXCIgYW5kL29yIFwiZ2l0IGNvbW1pdCAtYVwiKVxuIgogbXNnc3RyICIiCiAibm8gaGkgaGEgY2FudmlzIGFmZWdpdHMgYSBjb21ldHJlICh1c2V1IFwiZ2l0IGFkZFwiIG8gXCJnaXQgY29tbWl0IC1hXCIpXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTAKKyM6IHd0LXN0YXR1cy5jOjE3NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXRcbiIKIG1zZ3N0ciAibm8gaGkgaGEgY2FudmlzIGFmZWdpdHMgYSBjb21ldHJlXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTMKKyM6IHd0LXN0YXR1cy5jOjE3NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdGhpbmcgYWRkZWQgdG8gY29tbWl0IGJ1dCB1bnRyYWNrZWQgZmlsZXMgcHJlc2VudCAodXNlIFwiZ2l0IGFkZFwiIHRvICIKQEAgLTcxNDQsMTkyICs4ODYxLDE5NyBAQAogIm5vIGhpIGhhIHJlcyBhZmVnaXQgYSBjb21ldHJlIHBlcsOyIGhpIGhhIGZpdHhlcnMgbm8gc2VndWl0cyAodXNldSBcImdpdCBhZGQiCiAiXCIgcGVyIGEgc2VndWlyLWxvcylcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTY5NgorIzogd3Qtc3RhdHVzLmM6MTc3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIGFkZGVkIHRvIGNvbW1pdCBidXQgdW50cmFja2VkIGZpbGVzIHByZXNlbnRcbiIKIG1zZ3N0ciAibm8gaGkgaGEgcmVzIGFmZWdpdCBhIGNvbWV0cmUgcGVyw7IgaGkgaGEgZml0eGVycyBubyBzZWd1aXRzXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTkKKyM6IHd0LXN0YXR1cy5jOjE3ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXQgKGNyZWF0ZS9jb3B5IGZpbGVzIGFuZCB1c2UgXCJnaXQgYWRkXCIgdG8gdHJhY2spXG4iCiBtc2dzdHIgIiIKICJubyBoaSBoYSByZXMgYSBjb21ldHJlIChjcmVldS9jb3BpZXUgZml0eGVycyBpIHVzZXUgXCJnaXQgYWRkXCIgcGVyIGEgc2VndWlyLSIKICJsb3MpXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE3MDIgd3Qtc3RhdHVzLmM6MTcwNworIzogd3Qtc3RhdHVzLmM6MTc4NSB3dC1zdGF0dXMuYzoxNzkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0XG4iCiBtc2dzdHIgIm5vIGhpIGhhIHJlcyBhIGNvbWV0cmVcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTcwNQorIzogd3Qtc3RhdHVzLmM6MTc4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIGNvbW1pdCAodXNlIC11IHRvIHNob3cgdW50cmFja2VkIGZpbGVzKVxuIgogbXNnc3RyICIiCiAibm8gaGkgaGEgcmVzIGEgY29tZXRyZSAodXNldSAtdSBwZXIgYSBtb3N0cmFyIGVscyBmaXR4ZXJzIG5vIHNlZ3VpdHMpXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE3MDkKKyM6IHd0LXN0YXR1cy5jOjE3OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXQsIHdvcmtpbmcgdHJlZSBjbGVhblxuIgogbXNnc3RyICJubyBoaSBoYSByZXMgYSBjb21ldHJlLCBsJ2FyYnJlIGRlIHRyZWJhbGwgZXN0w6AgbmV0XG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE4MjIKKyM6IHd0LXN0YXR1cy5jOjE5MDUKIG1zZ2lkICJObyBjb21taXRzIHlldCBvbiAiCiBtc2dzdHIgIk5vIHMnaGEgZmV0IGNhcCBjb21pc3Npw7MgZW5jYXJhIGEgIgogCi0jOiB3dC1zdGF0dXMuYzoxODI2CisjOiB3dC1zdGF0dXMuYzoxOTA5CiBtc2dpZCAiSEVBRCAobm8gYnJhbmNoKSIKIG1zZ3N0ciAiSEVBRCAoc2Vuc2UgYnJhbmNhKSIKIAotIzogd3Qtc3RhdHVzLmM6MTg1NworIzogd3Qtc3RhdHVzLmM6MTk0MAogbXNnaWQgImRpZmZlcmVudCIKIG1zZ3N0ciAiZGlmZXJlbnQiCiAKLSM6IHd0LXN0YXR1cy5jOjE4NTkgd3Qtc3RhdHVzLmM6MTg2NworIzogd3Qtc3RhdHVzLmM6MTk0MiB3dC1zdGF0dXMuYzoxOTUwCiBtc2dpZCAiYmVoaW5kICIKIG1zZ3N0ciAiZGFycmVyZSAiCiAKLSM6IHd0LXN0YXR1cy5jOjE4NjIgd3Qtc3RhdHVzLmM6MTg2NQorIzogd3Qtc3RhdHVzLmM6MTk0NSB3dC1zdGF0dXMuYzoxOTQ4CiBtc2dpZCAiYWhlYWQgIgogbXNnc3RyICJkYXZhbnQgcGVyICIKIAogIy4gVFJBTlNMQVRPUlM6IHRoZSBhY3Rpb24gaXMgZS5nLiAicHVsbCB3aXRoIHJlYmFzZSIKLSM6IHd0LXN0YXR1cy5jOjIzNzQKKyM6IHd0LXN0YXR1cy5jOjI0NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90ICVzOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAibm8gZXMgcG90ICVzOiBUZW5pdSBjYW52aXMgwqt1bnN0YWdlZMK7LiIKIAotIzogd3Qtc3RhdHVzLmM6MjM4MAorIzogd3Qtc3RhdHVzLmM6MjQ3NgogbXNnaWQgImFkZGl0aW9uYWxseSwgeW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiYWRkaWNpb25hbG1lbnQsIGVsIHZvc3RyZSDDrW5kZXggY29udMOpIGNhbnZpcyBzZW5zZSBjb21ldHJlLiIKIAotIzogd3Qtc3RhdHVzLmM6MjM4MgorIzogd3Qtc3RhdHVzLmM6MjQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgJXM6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIm5vIGVzIHBvdCAlczogRWwgdm9zdHJlIMOtbmRleCBjb250w6kgY2FudmlzIHNlbnNlIGNvbWV0cmUuIgogCi0jOiBidWlsdGluL2FkZC5jOjI0CisjOiBjb21wYXQvcHJlY29tcG9zZV91dGY4LmM6NTggYnVpbHRpbi9jbG9uZS5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rICclcyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZGVzZW5sbGHDp2FyIMKrJXPCuyIKKworIzogYnVpbHRpbi9hZGQuYzoyNgogbXNnaWQgImdpdCBhZGQgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICJnaXQgYWRkIFs8b3BjaW9ucz5dIFstLV0gPGVzcGVjaWZpY2FjacOzLWRlLWNhbcOtPi4uLiIKIAotIzogYnVpbHRpbi9hZGQuYzo4MworIzogYnVpbHRpbi9hZGQuYzo4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIGRpZmYgc3RhdHVzICVjIgogbXNnc3RyICJlc3RhdCBkZSBkaWZmIGluZXNwZXJhdCAlYyIKIAotIzogYnVpbHRpbi9hZGQuYzo4OCBidWlsdGluL2NvbW1pdC5jOjI4NAorIzogYnVpbHRpbi9hZGQuYzo5MiBidWlsdGluL2NvbW1pdC5jOjI4OAogbXNnaWQgInVwZGF0aW5nIGZpbGVzIGZhaWxlZCIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBhY3R1YWxpdHphciBlbHMgZml0eGVycyIKIAotIzogYnVpbHRpbi9hZGQuYzo5OAorIzogYnVpbHRpbi9hZGQuYzoxMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3ZlICclcydcbiIKIG1zZ3N0ciAiZWxpbWluYSDCqyVzwrtcbiIKIAotIzogYnVpbHRpbi9hZGQuYzoxNzMKKyM6IGJ1aWx0aW4vYWRkLmM6MTc3CiBtc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZWZyZXNoaW5nIHRoZSBpbmRleDoiCiBtc2dzdHIgIkNhbnZpcyDCq3Vuc3RhZ2VkwrsgZGVzcHLDqXMgZCdhY3R1YWxpdHphciBsJ8OtbmRleDoiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjMzIGJ1aWx0aW4vcmV2LXBhcnNlLmM6ODk1CisjOiBidWlsdGluL2FkZC5jOjI1MiBidWlsdGluL3Jldi1wYXJzZS5jOjg5OQogbXNnaWQgIkNvdWxkIG5vdCByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBsbGVnaXIgbCfDrW5kZXgiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQ0CisjOiBidWlsdGluL2FkZC5jOjI2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nLiIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBvYnJpciDCqyVzwrsgcGVyIGEgZXNjcmlwdHVyYS4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQ4CisjOiBidWlsdGluL2FkZC5jOjI2NwogbXNnaWQgIkNvdWxkIG5vdCB3cml0ZSBwYXRjaCIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBlc2NyaXVyZSBlbCBwZWRhw6ciCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjUxCisjOiBidWlsdGluL2FkZC5jOjI3MAogbXNnaWQgImVkaXRpbmcgcGF0Y2ggZmFpbGVkIgogbXNnc3RyICJsJ2VkaWNpw7MgZGVsIHBlZGHDpyBoYSBmYWxsYXQiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjU0CisjOiBidWlsdGluL2FkZC5jOjI3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc3RhdCAnJXMnIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGZlciBzdGF0IGEgwqslc8K7IgogCi0jOiBidWlsdGluL2FkZC5jOjI1NgorIzogYnVpbHRpbi9hZGQuYzoyNzUKIG1zZ2lkICJFbXB0eSBwYXRjaC4gQWJvcnRlZC4iCiBtc2dzdHIgIkVsIHBlZGHDpyDDqXMgYnVpdC4gUydoYSBhdm9ydGF0LiIKIAotIzogYnVpbHRpbi9hZGQuYzoyNjEKKyM6IGJ1aWx0aW4vYWRkLmM6MjgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBhcHBseSAnJXMnIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGFwbGljYXIgwqslc8K7IgogCi0jOiBidWlsdGluL2FkZC5jOjI2OQorIzogYnVpbHRpbi9hZGQuYzoyODgKIG1zZ2lkICJUaGUgZm9sbG93aW5nIHBhdGhzIGFyZSBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCiBtc2dzdHIgIiIKICJFbHMgY2FtaW5zIHNlZ8O8ZW50cyBzJ2lnbm9yZW4gcGVyIHVuIGRlbHMgdm9zdHJlcyBmaXR4ZXJzIC5naXRpZ25vcmU6XG4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjg5IGJ1aWx0aW4vY2xlYW4uYzo5MDcgYnVpbHRpbi9mZXRjaC5jOjEzNyBidWlsdGluL212LmM6MTIzCi0jOiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU2IGJ1aWx0aW4vcHVsbC5jOjIxMyBidWlsdGluL3B1c2guYzo1NTcKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM0NSBidWlsdGluL3JtLmM6MjQwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY1CisjOiBidWlsdGluL2FkZC5jOjMwOCBidWlsdGluL2NsZWFuLmM6OTEwIGJ1aWx0aW4vZmV0Y2guYzoxNjMgYnVpbHRpbi9tdi5jOjEyNAorIzogYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1NiBidWlsdGluL3B1bGwuYzoyMjMgYnVpbHRpbi9wdXNoLmM6NTQ4CisjOiBidWlsdGluL3JlbW90ZS5jOjEzNDQgYnVpbHRpbi9ybS5jOjI0MSBidWlsdGluL3NlbmQtcGFjay5jOjE2NQogbXNnaWQgImRyeSBydW4iCiBtc2dzdHIgIm1hcnhhIGVuIHNlYyIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTIKKyM6IGJ1aWx0aW4vYWRkLmM6MzExCiBtc2dpZCAiaW50ZXJhY3RpdmUgcGlja2luZyIKIG1zZ3N0ciAicmVjdWxsIGludGVyYWN0aXUiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjkzIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU4IGJ1aWx0aW4vcmVzZXQuYzozMDUKKyM6IGJ1aWx0aW4vYWRkLmM6MzEyIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDgyIGJ1aWx0aW4vcmVzZXQuYzozMDcKIG1zZ2lkICJzZWxlY3QgaHVua3MgaW50ZXJhY3RpdmVseSIKIG1zZ3N0ciAic2VsZWNjaW9uYSBlbHMgdHJvc3NvcyBpbnRlcmFjdGl2YW1lbnQiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk0CisjOiBidWlsdGluL2FkZC5jOjMxMwogbXNnaWQgImVkaXQgY3VycmVudCBkaWZmIGFuZCBhcHBseSIKIG1zZ3N0ciAiZWRpdGEgbGEgZGlmZXLDqG5jaWEgYWN0dWFsIGkgYXBsaWNhLWxhIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NQorIzogYnVpbHRpbi9hZGQuYzozMTQKIG1zZ2lkICJhbGxvdyBhZGRpbmcgb3RoZXJ3aXNlIGlnbm9yZWQgZmlsZXMiCiBtc2dzdHIgInBlcm1ldCBhZmVnaXIgZml0eGVycyBxdWUgZCdhbHRyYSBtYW5lcmEgcydpZ25vcmVuIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NgorIzogYnVpbHRpbi9hZGQuYzozMTUKIG1zZ2lkICJ1cGRhdGUgdHJhY2tlZCBmaWxlcyIKIG1zZ3N0ciAiYWN0dWFsaXR6YSBlbHMgZml0eGVycyBzZWd1aXRzIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NworIzogYnVpbHRpbi9hZGQuYzozMTYKIG1zZ2lkICJyZW5vcm1hbGl6ZSBFT0wgb2YgdHJhY2tlZCBmaWxlcyAoaW1wbGllcyAtdSkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTgKKyM6IGJ1aWx0aW4vYWRkLmM6MzE3CiBtc2dpZCAicmVjb3JkIG9ubHkgdGhlIGZhY3QgdGhhdCB0aGUgcGF0aCB3aWxsIGJlIGFkZGVkIGxhdGVyIgogbXNnc3RyICJyZWdpc3RyYSBub23DqXMgZWwgZmV0IHF1ZSBlbCBjYW3DrSBzJ2FmZWdpcsOgIG3DqXMgdGFyZCIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTkKKyM6IGJ1aWx0aW4vYWRkLmM6MzE4CiBtc2dpZCAiYWRkIGNoYW5nZXMgZnJvbSBhbGwgdHJhY2tlZCBhbmQgdW50cmFja2VkIGZpbGVzIgogbXNnc3RyICJhZmVnZWl4IGVscyBjYW52aXMgZGUgdG90cyBlbHMgZml0eGVycyBzZWd1aXRzIGkgbm8gc2VndWl0cyIKIAotIzogYnVpbHRpbi9hZGQuYzozMDIKKyM6IGJ1aWx0aW4vYWRkLmM6MzIxCiBtc2dpZCAiaWdub3JlIHBhdGhzIHJlbW92ZWQgaW4gdGhlIHdvcmtpbmcgdHJlZSAoc2FtZSBhcyAtLW5vLWFsbCkiCiBtc2dzdHIgIiIKICJpZ25vcmEgZWxzIGNhbWlucyBlbGltaW5hdHMgZW4gbCdhcmJyZSBkZSB0cmViYWxsIChlbCBtYXRlaXggcXVlIC0tbm8tYWxsKSIKIAotIzogYnVpbHRpbi9hZGQuYzozMDQKKyM6IGJ1aWx0aW4vYWRkLmM6MzIzCiBtc2dpZCAiZG9uJ3QgYWRkLCBvbmx5IHJlZnJlc2ggdGhlIGluZGV4IgogbXNnc3RyICJubyBhZmVnZWl4aXMsIG5vbcOpcyBhY3R1YWxpdHphIGwnw61uZGV4IgogCi0jOiBidWlsdGluL2FkZC5jOjMwNQorIzogYnVpbHRpbi9hZGQuYzozMjQKIG1zZ2lkICJqdXN0IHNraXAgZmlsZXMgd2hpY2ggY2Fubm90IGJlIGFkZGVkIGJlY2F1c2Ugb2YgZXJyb3JzIgogbXNnc3RyICJub23DqXMgb21ldCBlbHMgZml0eGVycyBxdWUgbm8gZXMgcG9kZW4gYWZlZ2lyIGEgY2F1c2EgZCdlcnJvcnMiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzA2CisjOiBidWlsdGluL2FkZC5jOjMyNQogbXNnaWQgImNoZWNrIGlmIC0gZXZlbiBtaXNzaW5nIC0gZmlsZXMgYXJlIGlnbm9yZWQgaW4gZHJ5IHJ1biIKIG1zZ3N0ciAiIgogImNvbXByb3ZldSBzaSBlbHMgZml0eGVycyAtIGZpbnMgaSB0b3QgZWxzIGFic2VudHMgLSBzJ2lnbm9yZW4gZW4gbWFyeGEgZW4gc2VjIgogCi0jOiBidWlsdGluL2FkZC5jOjMwOCBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5MAorIzogYnVpbHRpbi9hZGQuYzozMjcgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA0CiBtc2dpZCAib3ZlcnJpZGUgdGhlIGV4ZWN1dGFibGUgYml0IG9mIHRoZSBsaXN0ZWQgZmlsZXMiCiBtc2dzdHIgInBhc3NhIHBlciBhbHQgZWwgYml0IGV4ZWN1dGFibGUgZGVscyBmaXR4ZXJzIGxsaXN0YXRzIgogCi0jOiBidWlsdGluL2FkZC5jOjMxMAorIzogYnVpbHRpbi9hZGQuYzozMjkKIG1zZ2lkICJ3YXJuIHdoZW4gYWRkaW5nIGFuIGVtYmVkZGVkIHJlcG9zaXRvcnkiCiBtc2dzdHIgImF2aXNhJ20gcXVhbiBzJ2FmZWdlaXhpIHVuIGRpcMOyc2l0IGluY3J1c3RhdCIKIAotIzogYnVpbHRpbi9hZGQuYzozMjUKKyM6IGJ1aWx0aW4vYWRkLmM6MzQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UndmUgYWRkZWQgYW5vdGhlciBnaXQgcmVwb3NpdG9yeSBpbnNpZGUgeW91ciBjdXJyZW50IHJlcG9zaXRvcnkuXG4iCkBAIC03MzQ3LDcgKzkwNjksNyBAQAogIlNlZSBcImdpdCBoZWxwIHN1Ym1vZHVsZVwiIGZvciBtb3JlIGluZm9ybWF0aW9uLiIKIG1zZ3N0ciAiIgogIkhldSBhZmVnaXQgdW4gYWx0cmUgZGlww7JzaXQgZ2l0IGRpbnMgZGVsIGRpcMOyc2l0IGFjdHVhbC5cbiIKLSJFbHMgY2xvbnMgZGUgZGlww7JzaXRzIGV4dGVybnMgbm8gY29udGluZHJhbiBlbHMgY29udGluZ3V0cyBkZVxuIgorIkVscyBjbG9ucyBkZSBkaXDDsnNpdHMgZXh0ZXJucyBubyBjb250aW5kcmFuIGVscyBjb250aW5ndXRzXG4iCiAiZGVsIGRpcMOyc2l0IGluY3J1c3RhdCBpIG5vIHNhYnJhbiBjb20gb2J0ZW5pci1oby5cbiIKICJTaSB2b2zDrWV1IGFmZWdpciB1biBzdWJtw7JkdWwsIHVzZXU6XG4iCiAiXG4iCkBAIC03MzYwLDE1MSArOTA4MiwxNjggQEAKICJcbiIKICJWZWdldSBcImdpdCBoZWxwIHN1Ym1vZHVsZVwiIHBlciBhIG3DqXMgaW5mb3JtYWNpw7MuIgogCi0jOiBidWlsdGluL2FkZC5jOjM1MworIzogYnVpbHRpbi9hZGQuYzozNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkaW5nIGVtYmVkZGVkIGdpdCByZXBvc2l0b3J5OiAlcyIKIG1zZ3N0ciAicydlc3TDoCBhZmVnaW50IHVuIGRpcMOyc2l0IGluY3J1c3RhdDogJXMiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzcxCisjOiBidWlsdGluL2FkZC5jOjM5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCB0aGVtLlxuIgogbXNnc3RyICJVc2V1IC1mIHNpIHJlYWxtZW50IGVscyB2b2xldSBhZmVnaXIuXG4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mzc5CisjOiBidWlsdGluL2FkZC5jOjQwMAogbXNnaWQgImFkZGluZyBmaWxlcyBmYWlsZWQiCiBtc2dzdHIgImwnYWZlZ2ltZW50IGRlIGZpdHhlcnMgaGEgZmFsbGF0IgogCi0jOiBidWlsdGluL2FkZC5jOjQxNworIzogYnVpbHRpbi9hZGQuYzo0MjggYnVpbHRpbi9jb21taXQuYzozNDgKKyMsIGZ1enp5Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIgorbXNnc3RyICItLWZpcnN0LXBhcmVudCDDqXMgaW5jb21wYXRpYmxlIGFtYiAtLWJpc2VjdCIKKworIzogYnVpbHRpbi9hZGQuYzo0MzQKKyMsIGZ1enp5Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1lZGl0IgorbXNnc3RyICItLWZpcnN0LXBhcmVudCDDqXMgaW5jb21wYXRpYmxlIGFtYiAtLWJpc2VjdCIKKworIzogYnVpbHRpbi9hZGQuYzo0NDYKIG1zZ2lkICItQSBhbmQgLXUgYXJlIG11dHVhbGx5IGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLUEgaSAtdSBzw7NuIG3DunR1YW1lbnQgaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9hZGQuYzo0MjQKKyM6IGJ1aWx0aW4vYWRkLmM6NDQ5CiBtc2dpZCAiT3B0aW9uIC0taWdub3JlLW1pc3NpbmcgY2FuIG9ubHkgYmUgdXNlZCB0b2dldGhlciB3aXRoIC0tZHJ5LXJ1biIKIG1zZ3N0ciAiTCdvcGNpw7MgLS1pZ25vcmUtbWlzc2luZyBub23DqXMgZXMgcG90IHVzYXIganVudGFtZW50IGFtYiAtLWRyeS1ydW4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDI4CisjOiBidWlsdGluL2FkZC5jOjQ1MwogIywgYy1mb3JtYXQKIG1zZ2lkICItLWNobW9kIHBhcmFtICclcycgbXVzdCBiZSBlaXRoZXIgLXggb3IgK3giCiBtc2dzdHIgImVsIHBhcsOgbWV0cmUgLS1jaG1vZCDCqyVzwrsgaGEgZGUgc2VyIG8gLXggbyAreCIKIAotIzogYnVpbHRpbi9hZGQuYzo0NDMKKyM6IGJ1aWx0aW4vYWRkLmM6NDcxIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjQ4IGJ1aWx0aW4vY29tbWl0LmM6MzU0CisjOiBidWlsdGluL3Jlc2V0LmM6MzI3CisjLCBmdXp6eQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1wYXRjaCDDqXMgaW5jb21wYXRpYmxlIGFtYiAtLXtoYXJkLG1peGVkLHNvZnR9IgorCisjOiBidWlsdGluL2FkZC5jOjQ3OCBidWlsdGluL2NoZWNrb3V0LmM6MTY2MCBidWlsdGluL2NvbW1pdC5jOjM2MAorIzogYnVpbHRpbi9yZXNldC5jOjMzMworbXNnaWQgIi0tcGF0aHNwZWMtZmlsZS1udWwgcmVxdWlyZXMgLS1wYXRoc3BlYy1mcm9tLWZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzo0ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90aGluZyBzcGVjaWZpZWQsIG5vdGhpbmcgYWRkZWQuXG4iCiBtc2dzdHIgIk5vIHMnaGEgZXNwZWNpZmljYXQgcmVzLCBubyBzJ2hhIGFmZWdpdCByZXMuXG4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDQ0CisjOiBidWlsdGluL2FkZC5jOjQ4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJNYXliZSB5b3Ugd2FudGVkIHRvIHNheSAnZ2l0IGFkZCAuJz9cbiIKIG1zZ3N0ciAiUG90c2VyIHZvbMOtZXUgZGlyIMKrZ2l0IGFkZCAuwrs/XG4iCiAKLSM6IGJ1aWx0aW4vYW0uYzozNjMKKyM6IGJ1aWx0aW4vYW0uYzozNDcKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgYXV0aG9yIHNjcmlwdCIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbCdzY3JpcHQgZCdhdXRvciIKIAotIzogYnVpbHRpbi9hbS5jOjQ0NworIzogYnVpbHRpbi9hbS5jOjQzMQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIHdhcyBkZWxldGVkIGJ5IHRoZSBhcHBseXBhdGNoLW1zZyBob29rIgogbXNnc3RyICJzJ2hhIHN1cHJpbWl0IMKrJXPCuyBwZWwgbGxpZ2FtIGFwcGx5cGF0Y2gtbXNnIgogCi0jOiBidWlsdGluL2FtLmM6NDg4CisjOiBidWlsdGluL2FtLmM6NDczCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1hbGZvcm1lZCBpbnB1dCBsaW5lOiAnJXMnLiIKIG1zZ3N0ciAiTMOtbmlhIGQnZW50cmFkYSBtYWwgZm9ybWFkYTogwqslc8K7LiIKIAotIzogYnVpbHRpbi9hbS5jOjUyNQorIzogYnVpbHRpbi9hbS5jOjUxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY29weSBub3RlcyBmcm9tICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBjb3BpYXIgbGVzIG5vdGVzIGRlIMKrJXPCuyBhIMKrJXPCuyIKIAotIzogYnVpbHRpbi9hbS5jOjU1MQorIzogYnVpbHRpbi9hbS5jOjUzNwogbXNnaWQgImZzZWVrIGZhaWxlZCIKIG1zZ3N0ciAiZnNlZWsgaGEgZmFsbGF0IgogCi0jOiBidWlsdGluL2FtLmM6NzM5CisjOiBidWlsdGluL2FtLmM6NzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBwYXRjaCAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBlbCBwZWRhw6cgwqslc8K7IgogCi0jOiBidWlsdGluL2FtLmM6ODA0CisjOiBidWlsdGluL2FtLmM6NzkwCiBtc2dpZCAiT25seSBvbmUgU3RHSVQgcGF0Y2ggc2VyaWVzIGNhbiBiZSBhcHBsaWVkIGF0IG9uY2UiCiBtc2dzdHIgIk5vbcOpcyB1bmEgc8OocmllIGRlIHBlZGHDp29zIFN0R0lUIGVzIHBvdCBhcGxpY2FyIGEgbGEgdmVnYWRhIgogCi0jOiBidWlsdGluL2FtLmM6ODUyCisjOiBidWlsdGluL2FtLmM6ODM4CiBtc2dpZCAiaW52YWxpZCB0aW1lc3RhbXAiCiBtc2dzdHIgIm1hcmNhIGRlIHRlbXBzIG5vIHbDoGxpZGEiCiAKLSM6IGJ1aWx0aW4vYW0uYzo4NTcgYnVpbHRpbi9hbS5jOjg2OQorIzogYnVpbHRpbi9hbS5jOjg0MyBidWlsdGluL2FtLmM6ODU1CiBtc2dpZCAiaW52YWxpZCBEYXRlIGxpbmUiCiBtc2dzdHIgImzDrW5pYSBEYXRlIG5vIHbDoGxpZGEiCiAKLSM6IGJ1aWx0aW4vYW0uYzo4NjQKKyM6IGJ1aWx0aW4vYW0uYzo4NTAKIG1zZ2lkICJpbnZhbGlkIHRpbWV6b25lIG9mZnNldCIKIG1zZ3N0ciAiZGVzcGxhw6dhbWVudCBkZSB6b25hIGRlIHRlbXBzIG5vIHbDoGxpZCIKIAotIzogYnVpbHRpbi9hbS5jOjk1NworIzogYnVpbHRpbi9hbS5jOjk0MwogbXNnaWQgIlBhdGNoIGZvcm1hdCBkZXRlY3Rpb24gZmFpbGVkLiIKIG1zZ3N0ciAiTGEgZGV0ZWNjacOzIGRlIGZvcm1hdCBkZSBwZWRhw6cgaGEgZmFsbGF0LiIKIAotIzogYnVpbHRpbi9hbS5jOjk2MiBidWlsdGluL2Nsb25lLmM6NDA4CisjOiBidWlsdGluL2FtLmM6OTQ4IGJ1aWx0aW4vY2xvbmUuYzo0MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBjcmVhciBlbCBkaXJlY3Rvcmkgwqslc8K7IgogCi0jOiBidWlsdGluL2FtLmM6OTY3CisjOiBidWlsdGluL2FtLmM6OTUzCiBtc2dpZCAiRmFpbGVkIHRvIHNwbGl0IHBhdGNoZXMuIgogbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGRpdmlkaXIgZWxzIHBlZGHDp29zLiIKIAotIzogYnVpbHRpbi9hbS5jOjEwOTcgYnVpbHRpbi9jb21taXQuYzozNjkKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgaW5kZXggZmlsZSIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBlbCBmaXR4ZXIgZCfDrW5kZXgiCi0KLSM6IGJ1aWx0aW4vYW0uYzoxMTExCisjOiBidWlsdGluL2FtLmM6MTA4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJXaGVuIHlvdSBoYXZlIHJlc29sdmVkIHRoaXMgcHJvYmxlbSwgcnVuIFwiJXMgLS1jb250aW51ZVwiLiIKIG1zZ3N0ciAiUXVhbiBow6BnaXUgcmVzb2x0IGFxdWVzdCBwcm9ibGVtYSwgZXhlY3V0ZXUgXCIlcyAtLWNvbnRpbnVlXCIuIgogCi0jOiBidWlsdGluL2FtLmM6MTExMgorIzogYnVpbHRpbi9hbS5jOjEwODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiSWYgeW91IHByZWZlciB0byBza2lwIHRoaXMgcGF0Y2gsIHJ1biBcIiVzIC0tc2tpcFwiIGluc3RlYWQuIgogbXNnc3RyICIiCiAiU2kgcHJlZmVyaXUgb21ldHJlIGFxdWVzdCBwZWRhw6csIGV4ZWN1dGV1IFwiJXMgLS1za2lwXCIgZW4gbGxvYyBkJ2FpeMOyLiIKIAotIzogYnVpbHRpbi9hbS5jOjExMTMKKyM6IGJ1aWx0aW4vYW0uYzoxMDg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgc3RvcCBwYXRjaGluZywgcnVuIFwiJXMgLS1hYm9ydFwiLiIKIG1zZ3N0ciAiIgogIlBlciBhIHJlc3RhdXJhciBsYSBicmFuY2Egb3JpZ2luYWwgaSBkZWl4YXIgZCdhcGVkYcOnYXIsIGV4ZWN1dGV1IFwiJXMgLS1hYm9ydCIKICJcIi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMTk2CisjOiBidWlsdGluL2FtLmM6MTE2OQogbXNnaWQgIlBhdGNoIHNlbnQgd2l0aCBmb3JtYXQ9Zmxvd2VkOyBzcGFjZSBhdCB0aGUgZW5kIG9mIGxpbmVzIG1pZ2h0IGJlIGxvc3QuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMjI0CisjOiBidWlsdGluL2FtLmM6MTE5NwogbXNnaWQgIlBhdGNoIGlzIGVtcHR5LiIKIG1zZ3N0ciAiRWwgcGVkYcOnIGVzdMOgIGJ1aXQuIgogCi0jOiBidWlsdGluL2FtLmM6MTI5MAorIzogYnVpbHRpbi9hbS5jOjEyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgYXV0aG9yIGxpbmUgaW4gY29tbWl0ICVzIgorbXNnc3RyICJNYW5jYSBlbCBub20gZGUgYnJhbmNhOyBwcm92ZXUgLWIiCisKKyM6IGJ1aWx0aW4vYW0uYzoxMjY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgaWRlbnQgbGluZTogJS4qcyIKIG1zZ3N0ciAibMOtbmlhIGQnaWRlbnRpdGF0IG5vIHbDoGxpZGE6ICUuKnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMzEyCi0jLCBjLWZvcm1hdAotbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21taXQgJXMiCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGxhIGNvbWlzc2nDsyAlcyIKLQotIzogYnVpbHRpbi9hbS5jOjE1MDgKKyM6IGJ1aWx0aW4vYW0uYzoxNDg0CiBtc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyBuZWNlc3NhcnkgYmxvYnMgdG8gZmFsbCBiYWNrIG9uIDMtd2F5IG1lcmdlLiIKIG1zZ3N0ciAiIgogIkFsIGRpcMOyc2l0IGxpIG1hbnF1ZW4gZWxzIGJsb2JzIG5lY2Vzc2FyaXMgcGVyIGEgcmV0cm9jZWRpciBhIHVuYSBmdXNpw7MgZGUgMyAiCiAidmllcy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTEwCisjOiBidWlsdGluL2FtLmM6MTQ4NgogbXNnaWQgIlVzaW5nIGluZGV4IGluZm8gdG8gcmVjb25zdHJ1Y3QgYSBiYXNlIHRyZWUuLi4iCiBtc2dzdHIgIlMnZXN0w6AgdXNhbnQgbGEgaW5mb3JtYWNpw7MgZCfDrW5kZXggcGVyIGEgcmVjb25zdHJ1aXIgdW4gYXJicmUgYmFzZS4uLiIKIAotIzogYnVpbHRpbi9hbS5jOjE1MjkKKyM6IGJ1aWx0aW4vYW0uYzoxNTA1CiBtc2dpZCAiIgogIkRpZCB5b3UgaGFuZCBlZGl0IHlvdXIgcGF0Y2g/XG4iCiAiSXQgZG9lcyBub3QgYXBwbHkgdG8gYmxvYnMgcmVjb3JkZWQgaW4gaXRzIGluZGV4LiIKQEAgLTc1MTIsMjkgKzkyNTEsMjQgQEAKICJIZXUgZWRpdGF0IGVsIHZvc3RyZSBwZWRhw6cgYSBtw6A/XG4iCiAiTm8gcydhcGxpY2EgYWxzIGJsb2JzIHJlY29yZGF0cyBlbiBlbCBzZXUgw61uZGV4LiIKIAotIzogYnVpbHRpbi9hbS5jOjE1MzUKKyM6IGJ1aWx0aW4vYW0uYzoxNTExCiBtc2dpZCAiRmFsbGluZyBiYWNrIHRvIHBhdGNoaW5nIGJhc2UgYW5kIDMtd2F5IG1lcmdlLi4uIgogbXNnc3RyICJTJ2VzdMOgIHJldHJvY2VkaW50IGEgYXBlZGHDp2FyIGxhIGJhc2UgaSB1bmEgZnVzacOzIGRlIDMgdmllcy4uLiIKIAotIzogYnVpbHRpbi9hbS5jOjE1NjEKKyM6IGJ1aWx0aW4vYW0uYzoxNTM3CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIGluIHRoZSBjaGFuZ2VzLiIKIG1zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBmdXNpb25hciBlbHMgY2FudmlzLiIKIAotIzogYnVpbHRpbi9hbS5jOjE1OTMKKyM6IGJ1aWx0aW4vYW0uYzoxNTY5CiBtc2dpZCAiYXBwbHlpbmcgdG8gYW4gZW1wdHkgaGlzdG9yeSIKIG1zZ3N0ciAicydlc3TDoCBhcGxpY2FudCBhIHVuYSBoaXN0w7JyaWEgYnVpZGEiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNjM5IGJ1aWx0aW4vYW0uYzoxNjQzCisjOiBidWlsdGluL2FtLmM6MTYxNiBidWlsdGluL2FtLmM6MTYyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVzdW1lOiAlcyBkb2VzIG5vdCBleGlzdC4iCiBtc2dzdHIgIm5vIGVzIHBvdCByZXByZW5kcmU6ICVzIG5vIGV4aXN0ZWl4LiIKIAotIzogYnVpbHRpbi9hbS5jOjE2NTkKLW1zZ2lkICJjYW5ub3QgYmUgaW50ZXJhY3RpdmUgd2l0aG91dCBzdGRpbiBjb25uZWN0ZWQgdG8gYSB0ZXJtaW5hbC4iCi1tc2dzdHIgIiIKLSJubyBlcyBwb3Qgc2VyIGludGVyYWN0aXUgc2Vuc2UgcXVlIHN0ZGluIGVzdGlndWkgY29ubmVjdGFkYSBhIHVuIHRlcm1pbmFsLiIKLQotIzogYnVpbHRpbi9hbS5jOjE2NjQKKyM6IGJ1aWx0aW4vYW0uYzoxNjM4CiBtc2dpZCAiQ29tbWl0IEJvZHkgaXM6IgogbXNnc3RyICJFbCBjb3MgZGUgbGEgY29taXNzacOzIMOpczoiCiAKQEAgLTc1NDIsMzYgKzkyNzYsNDEgQEAKICMuIGluIHlvdXIgdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaAogIy4gaW5wdXQgYXQgdGhpcyBwb2ludC4KICMuCi0jOiBidWlsdGluL2FtLmM6MTY3NAorIzogYnVpbHRpbi9hbS5jOjE2NDgKKyMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbHk/IFt5XWVzL1tuXW8vW2VdZGl0L1t2XWlldyBwYXRjaC9bYV1jY2VwdCBhbGw6ICIKIG1zZ3N0ciAiIgogIlZvbGV1IGFwbGljYXItbG8/IFt5XWVzL1tuXW8vW2VdZGl0YS9bdl1pc3VhbGl0emEgZWwgcGVkYcOnL1thXWNjZXB0YSdscyAiCiAidG90czogIgogCi0jOiBidWlsdGluL2FtLmM6MTcyNAorIzogYnVpbHRpbi9hbS5jOjE2OTUgYnVpbHRpbi9jb21taXQuYzozOTQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgaW5kZXggZmlsZSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBlbCBmaXR4ZXIgZCfDrW5kZXgiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNjk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRpcnR5IGluZGV4OiBjYW5ub3QgYXBwbHkgcGF0Y2hlcyAoZGlydHk6ICVzKSIKIG1zZ3N0ciAiw41uZGV4IGJydXQ6IG5vIGVzIHBvZGVuIGFwbGljYXIgcGVkYcOnb3MgKGJydXRzOiAlcykiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzY0IGJ1aWx0aW4vYW0uYzoxODMyCisjOiBidWlsdGluL2FtLmM6MTczOSBidWlsdGluL2FtLmM6MTgwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBseWluZzogJS4qcyIKIG1zZ3N0ciAiUydlc3TDoCBhcGxpY2FudDogJS4qcyIKIAotIzogYnVpbHRpbi9hbS5jOjE3ODEKKyM6IGJ1aWx0aW4vYW0uYzoxNzU2CiBtc2dpZCAiTm8gY2hhbmdlcyAtLSBQYXRjaCBhbHJlYWR5IGFwcGxpZWQuIgogbXNnc3RyICJTZW5zZSBjYW52aXMgLS0gRWwgcGVkYcOnIGphIHMnaGEgYXBsaWNhdC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzg3CisjOiBidWlsdGluL2FtLmM6MTc2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJQYXRjaCBmYWlsZWQgYXQgJXMgJS4qcyIKIG1zZ3N0ciAiRWwgcGVkYcOnIGhhIGZhbGxhdCBhICVzICUuKnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzkxCisjOiBidWlsdGluL2FtLmM6MTc2NgogbXNnaWQgIlVzZSAnZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoJyB0byBzZWUgdGhlIGZhaWxlZCBwYXRjaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MTgzNQorIzogYnVpbHRpbi9hbS5jOjE4MTAKIG1zZ2lkICIiCiAiTm8gY2hhbmdlcyAtIGRpZCB5b3UgZm9yZ2V0IHRvIHVzZSAnZ2l0IGFkZCc/XG4iCiAiSWYgdGhlcmUgaXMgbm90aGluZyBsZWZ0IHRvIHN0YWdlLCBjaGFuY2VzIGFyZSB0aGF0IHNvbWV0aGluZyBlbHNlXG4iCkBAIC03NTgxLDcgKzkzMjAsNyBAQAogIlNpIG5vIGhpIGhhIHJlcyBwZXIgZmVyIMKrc3RhZ2XCuywgcHJvYmFibGVtZW50IGFsZ3VuYSBhbHRyYSBjb3NhIGphIGhhXG4iCiAiaW50cm9kdcOvdCBlbHMgbWF0ZWl4b3MgY2FudmlzOyBwb3RzZXIgdm9sZXUgb21ldHJlIGFxdWVzdCBwZWRhw6cuIgogCi0jOiBidWlsdGluL2FtLmM6MTg0MgorIzogYnVpbHRpbi9hbS5jOjE4MTcKIG1zZ2lkICIiCiAiWW91IHN0aWxsIGhhdmUgdW5tZXJnZWQgcGF0aHMgaW4geW91ciBpbmRleC5cbiIKICJZb3Ugc2hvdWxkICdnaXQgYWRkJyBlYWNoIGZpbGUgd2l0aCByZXNvbHZlZCBjb25mbGljdHMgdG8gbWFyayB0aGVtIGFzICIKQEAgLTc1OTQsMTcgKzkzMzMsMTcgQEAKICJQb2RldSBleGVjdXRhciBgZ2l0IHJtYCBlbiB1biBmaXR4ZXIgcGVyIGFjY2VwdGFyIFwic3VwcmltaXQgcGVyIGVsbHNcIiBwZWwgIgogImZpdHhlci4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxOTQ5IGJ1aWx0aW4vYW0uYzoxOTUzIGJ1aWx0aW4vYW0uYzoxOTY1IGJ1aWx0aW4vcmVzZXQuYzozMjgKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMzYKKyM6IGJ1aWx0aW4vYW0uYzoxOTI0IGJ1aWx0aW4vYW0uYzoxOTI4IGJ1aWx0aW4vYW0uYzoxOTQwIGJ1aWx0aW4vcmVzZXQuYzozNDYKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnLiIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbCdvYmplY3RlIMKrJXPCuy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMDAxCisjOiBidWlsdGluL2FtLmM6MTk3NgogbXNnaWQgImZhaWxlZCB0byBjbGVhbiBpbmRleCIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBuZXRlamFyIGwnw61uZGV4IgogCi0jOiBidWlsdGluL2FtLmM6MjAzNgorIzogYnVpbHRpbi9hbS5jOjIwMjAKIG1zZ2lkICIiCiAiWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFEIHNpbmNlIHRoZSBsYXN0ICdhbScgZmFpbHVyZS5cbiIKICJOb3QgcmV3aW5kaW5nIHRvIE9SSUdfSEVBRCIKQEAgLTc2MTIsMTQ0ICs5MzUxLDE0NCBAQAogIlNlbWJsYSBxdWUgaGV1IG1vZ3V0IEhFQUQgZGVzcHLDqXMgZGUgbCfDumx0aW1hIGZhbGxhZGEgZGUgJ2FtJy5cbiIKICJObyBzJ2VzdMOgIHJlYm9iaW5hbnQgYSBPUklHX0hFQUQiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTI5CisjOiBidWlsdGluL2FtLmM6MjExNwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciAtLXBhdGNoLWZvcm1hdDogJXMiCiBtc2dzdHIgIlZhbG9yIG5vIHbDoGxpZCBwZXIgYSAtLXBhdGNoLWZvcm1hdDogJXMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTY1CisjOiBidWlsdGluL2FtLmM6MjE1MwogbXNnaWQgImdpdCBhbSBbPG9wdGlvbnM+XSBbKDxtYm94PiB8IDxNYWlsZGlyPikuLi5dIgogbXNnc3RyICJnaXQgYW0gWzxvcGNpb25zPl0gWyg8YsO6c3RpYT4gfCA8ZGlyZWN0b3JpLWRlLWNvcnJldT4pLi4uXSIKIAotIzogYnVpbHRpbi9hbS5jOjIxNjYKKyM6IGJ1aWx0aW4vYW0uYzoyMTU0CiBtc2dpZCAiZ2l0IGFtIFs8b3B0aW9ucz5dICgtLWNvbnRpbnVlIHwgLS1za2lwIHwgLS1hYm9ydCkiCiBtc2dzdHIgImdpdCBhbSBbPG9wY2lvbnM+XSAoLS1jb250aW51ZSB8IC0tc2tpcCB8IC0tYWJvcnQpIgogCi0jOiBidWlsdGluL2FtLmM6MjE3MgorIzogYnVpbHRpbi9hbS5jOjIxNjAKIG1zZ2lkICJydW4gaW50ZXJhY3RpdmVseSIKIG1zZ3N0ciAiZXhlY3V0YSBpbnRlcmFjdGl2YW1lbnQiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc0CisjOiBidWlsdGluL2FtLmM6MjE2MgogbXNnaWQgImhpc3RvcmljYWwgb3B0aW9uIC0tIG5vLW9wIgogbXNnc3RyICJvcGNpw7MgaGlzdMOycmljYSAtLSBuby1vcCIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzYKKyM6IGJ1aWx0aW4vYW0uYzoyMTY0CiBtc2dpZCAiYWxsb3cgZmFsbCBiYWNrIG9uIDN3YXkgbWVyZ2luZyBpZiBuZWVkZWQiCiBtc2dzdHIgInBlcm1ldCByZXRyb2NlZGlyIGEgdW5hIGZ1c2nDsyBkZSAzIHZpZXMgc2kgw6lzIG5lY2Vzc2FyaSIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzcgYnVpbHRpbi9pbml0LWRiLmM6NDg2IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTgKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA2CisjOiBidWlsdGluL2FtLmM6MjE2NSBidWlsdGluL2luaXQtZGIuYzo0OTQgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1OAorIzogYnVpbHRpbi9yZXBhY2suYzozMDQgYnVpbHRpbi9zdGFzaC5jOjgxMQogbXNnaWQgImJlIHF1aWV0IgogbXNnc3RyICJzaWxlbmNpw7NzIgogCi0jOiBidWlsdGluL2FtLmM6MjE3OQorIzogYnVpbHRpbi9hbS5jOjIxNjcKIG1zZ2lkICJhZGQgYSBTaWduZWQtb2ZmLWJ5IGxpbmUgdG8gdGhlIGNvbW1pdCBtZXNzYWdlIgogbXNnc3RyICJhZmVnZWl4IHVuYSBsw61uaWEgwqtTaWduZWQtb2ZmLWJ5wrsgYWwgbWlzc2F0Z2UgZGUgY29taXNzacOzIgogCi0jOiBidWlsdGluL2FtLmM6MjE4MgorIzogYnVpbHRpbi9hbS5jOjIxNzAKIG1zZ2lkICJyZWNvZGUgaW50byB1dGY4IChkZWZhdWx0KSIKIG1zZ3N0ciAicmVjb2RpZmljYSBlbiB1dGY4IChwZXIgZGVmZWN0ZSkiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTg0CisjOiBidWlsdGluL2FtLmM6MjE3MgogbXNnaWQgInBhc3MgLWsgZmxhZyB0byBnaXQtbWFpbGluZm8iCiBtc2dzdHIgInBhc3NhIGwnaW5kaWNhZG9yIC1rIGEgZ2l0LW1haWxpbmZvIgogCi0jOiBidWlsdGluL2FtLmM6MjE4NgorIzogYnVpbHRpbi9hbS5jOjIxNzQKIG1zZ2lkICJwYXNzIC1iIGZsYWcgdG8gZ2l0LW1haWxpbmZvIgogbXNnc3RyICJwYXNzYSBsJ2luZGljYWRvciAtYiBhIGdpdC1tYWlsaW5mbyIKIAotIzogYnVpbHRpbi9hbS5jOjIxODgKKyM6IGJ1aWx0aW4vYW0uYzoyMTc2CiBtc2dpZCAicGFzcyAtbSBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKIG1zZ3N0ciAicGFzc2EgbCdpbmRpY2Fkb3IgLW0gYSBnaXQtbWFpbGluZm8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTkwCisjOiBidWlsdGluL2FtLmM6MjE3OAogbXNnaWQgInBhc3MgLS1rZWVwLWNyIGZsYWcgdG8gZ2l0LW1haWxzcGxpdCBmb3IgbWJveCBmb3JtYXQiCiBtc2dzdHIgInBhc3NhIGwnaW5kaWNhZG9yIC0ta2VlcC1jciBhIGdpdC1tYWlsc3BsaXQgcGVyIGFsIGZvcm1hdCBtYm94IgogCi0jOiBidWlsdGluL2FtLmM6MjE5MworIzogYnVpbHRpbi9hbS5jOjIxODEKIG1zZ2lkICJkbyBub3QgcGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGluZGVwZW5kZW50IG9mIGFtLmtlZXBjciIKIG1zZ3N0ciAiIgogIm5vIHBhc3NpcyBsJ2luZGljYWRvciAtLWtlZXAtY3IgYSBnaXQtbWFpbHNwbGl0IGluZGVwZW5kZW50IGQnYW0ua2VlcGNyIgogCi0jOiBidWlsdGluL2FtLmM6MjE5NgorIzogYnVpbHRpbi9hbS5jOjIxODQKIG1zZ2lkICJzdHJpcCBldmVyeXRoaW5nIGJlZm9yZSBhIHNjaXNzb3JzIGxpbmUiCiBtc2dzdHIgImVsaW1pbmEgdG90IGFiYW5zIGQndW5hIGzDrW5pYSBkZSB0aXNvcmVzIgogCisjOiBidWlsdGluL2FtLmM6MjE4NiBidWlsdGluL2FtLmM6MjE4OSBidWlsdGluL2FtLmM6MjE5MiBidWlsdGluL2FtLmM6MjE5NQogIzogYnVpbHRpbi9hbS5jOjIxOTggYnVpbHRpbi9hbS5jOjIyMDEgYnVpbHRpbi9hbS5jOjIyMDQgYnVpbHRpbi9hbS5jOjIyMDcKLSM6IGJ1aWx0aW4vYW0uYzoyMjEwIGJ1aWx0aW4vYW0uYzoyMjEzIGJ1aWx0aW4vYW0uYzoyMjE2IGJ1aWx0aW4vYW0uYzoyMjE5Ci0jOiBidWlsdGluL2FtLmM6MjIyNQorIzogYnVpbHRpbi9hbS5jOjIyMTMKIG1zZ2lkICJwYXNzIGl0IHRocm91Z2ggZ2l0LWFwcGx5IgogbXNnc3RyICJwYXNzYS1obyBhIHRyYXbDqXMgZGUgZ2l0LWFwcGx5IgogCi0jOiBidWlsdGluL2FtLmM6MjIxNSBidWlsdGluL2NvbW1pdC5jOjEzNDAgYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcxCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzQgYnVpbHRpbi9ncmVwLmM6ODY4IGJ1aWx0aW4vbWVyZ2UuYzoyMzkKLSM6IGJ1aWx0aW4vcHVsbC5jOjE1MSBidWlsdGluL3B1bGwuYzoyMDkgYnVpbHRpbi9yZWJhc2UuYzo4MzYKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE3IGJ1aWx0aW4vcmVwYWNrLmM6MzIxIGJ1aWx0aW4vcmVwYWNrLmM6MzIzCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUxIGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzEgYnVpbHRpbi90YWcuYzozODYKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNDQgcGFyc2Utb3B0aW9ucy5oOjE0NiBwYXJzZS1vcHRpb25zLmg6MjY4CisjOiBidWlsdGluL2FtLmM6MjIwMyBidWlsdGluL2NvbW1pdC5jOjEzODYgYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjczCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzYgYnVpbHRpbi9ncmVwLmM6ODgzIGJ1aWx0aW4vbWVyZ2UuYzoyNDkKKyM6IGJ1aWx0aW4vcHVsbC5jOjE2MCBidWlsdGluL3B1bGwuYzoyMTkgYnVpbHRpbi9yZWJhc2UuYzoxNDY5CisjOiBidWlsdGluL3JlcGFjay5jOjMxNSBidWlsdGluL3JlcGFjay5jOjMxOSBidWlsdGluL3JlcGFjay5jOjMyMQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MCBidWlsdGluL3Nob3ctcmVmLmM6MTcyIGJ1aWx0aW4vdGFnLmM6NDAzCisjOiBwYXJzZS1vcHRpb25zLmg6MTU0IHBhcnNlLW9wdGlvbnMuaDoxNzUgcGFyc2Utb3B0aW9ucy5oOjMxNgogbXNnaWQgIm4iCiBtc2dzdHIgIm4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjIxIGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0MyBidWlsdGluL3RhZy5jOjQyMiBidWlsdGluL3ZlcmlmeS10YWcuYzozOQorIzogYnVpbHRpbi9hbS5jOjIyMDkgYnVpbHRpbi9icmFuY2guYzo2NjEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU1IGJ1aWx0aW4vdGFnLmM6NDM3IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM4CiBtc2dpZCAiZm9ybWF0IgogbXNnc3RyICJmb3JtYXQiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjIyCisjOiBidWlsdGluL2FtLmM6MjIxMAogbXNnaWQgImZvcm1hdCB0aGUgcGF0Y2goZXMpIGFyZSBpbiIKIG1zZ3N0ciAiZWwgZm9ybWF0IGVuIGVsIHF1YWwgZXN0YW4gZWxzIHBlZGHDp29zIgogCi0jOiBidWlsdGluL2FtLmM6MjIyOAorIzogYnVpbHRpbi9hbS5jOjIyMTYKIG1zZ2lkICJvdmVycmlkZSBlcnJvciBtZXNzYWdlIHdoZW4gcGF0Y2ggZmFpbHVyZSBvY2N1cnMiCiBtc2dzdHIgInBhc3NhIHBlciBhbHQgZWwgbWlzc2F0Z2UgZCdlcnJvciBzaSBmYWxsYSBsJ2FwbGljYWNpw7MgZGVsIHBlZGHDpyIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzAKKyM6IGJ1aWx0aW4vYW0uYzoyMjE4CiBtc2dpZCAiY29udGludWUgYXBwbHlpbmcgcGF0Y2hlcyBhZnRlciByZXNvbHZpbmcgYSBjb25mbGljdCIKIG1zZ3N0ciAic2VndWVpeCBhcGxpY2FudCBwZWRhw6dvcyBkZXNwcsOpcyBkZSByZXNvbGRyZSB1biBjb25mbGljdGUiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjMzCisjOiBidWlsdGluL2FtLmM6MjIyMQogbXNnaWQgInN5bm9ueW1zIGZvciAtLWNvbnRpbnVlIgogbXNnc3RyICJzaW7Dsm5pbXMgZGUgLS1jb250aW51ZSIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzYKKyM6IGJ1aWx0aW4vYW0uYzoyMjI0CiBtc2dpZCAic2tpcCB0aGUgY3VycmVudCBwYXRjaCIKIG1zZ3N0ciAib21ldCBlbCBwZWRhw6cgYWN0dWFsIgogCi0jOiBidWlsdGluL2FtLmM6MjIzOQorIzogYnVpbHRpbi9hbS5jOjIyMjcKIG1zZ2lkICJyZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIGFib3J0IHRoZSBwYXRjaGluZyBvcGVyYXRpb24uIgogbXNnc3RyICJyZXN0YXVyYSBsYSBicmFuY2Egb3JpZ2luYWwgaSBhdm9ydGEgbCdvcGVyYWNpw7MgZCdhcGVkYcOnYW1lbnQuIgogCi0jOiBidWlsdGluL2FtLmM6MjI0MgorIzogYnVpbHRpbi9hbS5jOjIyMzAKIG1zZ2lkICJhYm9ydCB0aGUgcGF0Y2hpbmcgb3BlcmF0aW9uIGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjQ1CisjOiBidWlsdGluL2FtLmM6MjIzMwogbXNnaWQgInNob3cgdGhlIHBhdGNoIGJlaW5nIGFwcGxpZWQuIgogbXNnc3RyICJtb3N0cmEgZWwgcGVkYcOnIHF1ZSBzJ2VzdMOgIGFwbGljYW50LiIKIAotIzogYnVpbHRpbi9hbS5jOjIyNDkKKyM6IGJ1aWx0aW4vYW0uYzoyMjM3CiBtc2dpZCAibGllIGFib3V0IGNvbW1pdHRlciBkYXRlIgogbXNnc3RyICJtZW50ZWl4IHNvYnJlIGxhIGRhdGEgZGVsIGNvbWl0ZW50IgogCi0jOiBidWlsdGluL2FtLmM6MjI1MQorIzogYnVpbHRpbi9hbS5jOjIyMzkKIG1zZ2lkICJ1c2UgY3VycmVudCB0aW1lc3RhbXAgZm9yIGF1dGhvciBkYXRlIgogbXNnc3RyICJ1c2EgZWwgbWFyYyBkZSB0ZW1wcyBhY3R1YWwgcGVyIGxhIGRhdGEgZCdhdXRvciIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTMgYnVpbHRpbi9jb21taXQuYzoxNDgzIGJ1aWx0aW4vbWVyZ2UuYzoyNzMKLSM6IGJ1aWx0aW4vcHVsbC5jOjE4NCBidWlsdGluL3JlYmFzZS5jOjg4MCBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODMKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEzIGJ1aWx0aW4vdGFnLmM6NDAyCisjOiBidWlsdGluL2FtLmM6MjI0MSBidWlsdGluL2NvbW1pdC10cmVlLmM6MTIwIGJ1aWx0aW4vY29tbWl0LmM6MTUwNworIzogYnVpbHRpbi9tZXJnZS5jOjI4NiBidWlsdGluL3B1bGwuYzoxOTQgYnVpbHRpbi9yZWJhc2UuYzo1MDkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxMyBidWlsdGluL3JldmVydC5jOjExNyBidWlsdGluL3RhZy5jOjQxOAogbXNnaWQgImtleS1pZCIKIG1zZ3N0ciAiSUQgZGUgY2xhdSIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9yZWJhc2UuYzo4ODEgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg0CisjOiBidWlsdGluL2FtLmM6MjI0MiBidWlsdGluL3JlYmFzZS5jOjUxMCBidWlsdGluL3JlYmFzZS5jOjE1MTQKIG1zZ2lkICJHUEctc2lnbiBjb21taXRzIgogbXNnc3RyICJzaWduYSBsZXMgY29taXNzaW9ucyBhbWIgR1BHIgogCi0jOiBidWlsdGluL2FtLmM6MjI1NworIzogYnVpbHRpbi9hbS5jOjIyNDUKIG1zZ2lkICIoaW50ZXJuYWwgdXNlIGZvciBnaXQtcmViYXNlKSIKIG1zZ3N0ciAiKMO6cyBpbnRlcm4gcGVyIGEgZ2l0LXJlYmFzZSkiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjc1CisjOiBidWlsdGluL2FtLmM6MjI2MwogbXNnaWQgIiIKICJUaGUgLWIvLS1iaW5hcnkgb3B0aW9uIGhhcyBiZWVuIGEgbm8tb3AgZm9yIGxvbmcgdGltZSwgYW5kXG4iCiAiaXQgd2lsbCBiZSByZW1vdmVkLiBQbGVhc2UgZG8gbm90IHVzZSBpdCBhbnltb3JlLiIKQEAgLTc3NTcsMTggKzk0OTYsMTggQEAKICJGYSBtb2x0IHF1ZSBsJ29wY2nDsyAtYi8tLWJpbmFyeSBubyBoYSBmZXQgcmVzLCBpXG4iCiAicydlbGltaW5hcsOgLiBObyBsJ3VzZXUgbcOpcy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjgyCisjOiBidWlsdGluL2FtLmM6MjI3MAogbXNnaWQgImZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgbCfDrW5kZXgiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjk3CisjOiBidWlsdGluL2FtLmM6MjI4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJwcmV2aW91cyByZWJhc2UgZGlyZWN0b3J5ICVzIHN0aWxsIGV4aXN0cyBidXQgbWJveCBnaXZlbi4iCiBtc2dzdHIgIiIKICJ1biBkaXJlY3RvcmkgZGUgwqtyZWJhc2XCuyBhbnRlcmlvciAlcyBlbmNhcmEgZXhpc3RlaXggcGVyw7IgcydoYSBkb25hdCB1bmEgIgogImLDunN0aWEuIgogCi0jOiBidWlsdGluL2FtLmM6MjMyMQorIzogYnVpbHRpbi9hbS5jOjIzMDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN0cmF5ICVzIGRpcmVjdG9yeSBmb3VuZC5cbiIKQEAgLTc3NzcsMTAgKzk1MTYsMTQgQEAKICJTJ2hhIHRyb2JhdCB1biBkaXJlY3RvcmkgJXMgZXh0cmF2aWF0LlxuIgogIlVzZXUgXCJnaXQgYW0gLS1hYm9ydFwiIHBlciBhIGVsaW1pbmFyLWxvLiIKIAotIzogYnVpbHRpbi9hbS5jOjIzMjcKKyM6IGJ1aWx0aW4vYW0uYzoyMzE1CiBtc2dpZCAiUmVzb2x2ZSBvcGVyYXRpb24gbm90IGluIHByb2dyZXNzLCB3ZSBhcmUgbm90IHJlc3VtaW5nLiIKIG1zZ3N0ciAiVW5hIG9wZXJhY2nDsyBkZSByZXNvbHVjacOzIG5vIGVzdMOgIGVuIGN1cnM7IG5vIHJlcHJlbmVtLiIKIAorIzogYnVpbHRpbi9hbS5jOjIzMjUKK21zZ2lkICJpbnRlcmFjdGl2ZSBtb2RlIHJlcXVpcmVzIHBhdGNoZXMgb24gdGhlIGNvbW1hbmQgbGluZSIKK21zZ3N0ciAiIgorCiAjOiBidWlsdGluL2FwcGx5LmM6OAogbXNnaWQgImdpdCBhcHBseSBbPG9wdGlvbnM+XSBbPHBhdGNoPi4uLl0iCiBtc2dzdHIgImdpdCBhcHBseSBbPG9wY2lvbnM+XSBbPHBlZGHDpz4uLi5dIgpAQCAtNzc5OCw4NiArOTU0MSwzMDggQEAKIG1zZ2lkICJnaXQgYXJjaGl2ZTogUmVtb3RlIHdpdGggbm8gVVJMIgogbXNnc3RyICJnaXQgYXJjaGl2ZTogUmVtb3Qgc2Vuc2UgVVJMIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo1OAorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjEKIG1zZ2lkICJnaXQgYXJjaGl2ZTogZXhwZWN0ZWQgQUNLL05BSywgZ290IGEgZmx1c2ggcGFja2V0IgogbXNnc3RyICJnaXQgYXJjaGl2ZTogcydlc3BlcmF2YSBBQ0svTkFLLCBzJ2hhIHJlYnV0IHVuIHBhcXVldCBkZSBuZXRlamEiCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjYxCisjOiBidWlsdGluL2FyY2hpdmUuYzo2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXJjaGl2ZTogTkFDSyAlcyIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmU6ICVzIE5BQ0siCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY0CisjOiBidWlsdGluL2FyY2hpdmUuYzo2NQogbXNnaWQgImdpdCBhcmNoaXZlOiBwcm90b2NvbCBlcnJvciIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmU6IGVycm9yIGRlIHByb3RvY29sIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2OAorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjkKIG1zZ2lkICJnaXQgYXJjaGl2ZTogZXhwZWN0ZWQgYSBmbHVzaCIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmU6IHMnZXNwZXJhdmEgdW5hIG5ldGVqYSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjIKIG1zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCBbLS1uby1jaGVja291dF0iCiBtc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLW5leHQtYWxsIFstLW5vLWNoZWNrb3V0XSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEzCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjMKIG1zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS13cml0ZS10ZXJtcyA8YmFkX3Rlcm0+IDxnb29kX3Rlcm0+IgogbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS13cml0ZS10ZXJtcyA8bWFsX3Rlcm1lPiA8Ym9uX3Rlcm1lPiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE0CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjQKIG1zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2xlYW4tc3RhdGUiCiBtc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jbGVhbi1zdGF0ZSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ2CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjUKK21zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtcmVzZXQgWzxjb21taXQ+XSIKK21zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXJlc2V0IFs8Y29taXNzacOzPl0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNgorIywgZnV6enkKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPHN0YXRlPiA8cmV2aXNpb24+IDxnb29kX3Rlcm0+ICIKKyI8YmFkX3Rlcm0+IgorbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS13cml0ZS10ZXJtcyA8bWFsX3Rlcm1lPiA8Ym9uX3Rlcm1lPiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2hlY2stYW5kLXNldC10ZXJtcyA8Y29tbWFuZD4gPGdvb2RfdGVybT4gIgorIjxiYWRfdGVybT4iCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDxtYWxfdGVybWU+IDxib25fdGVybWU+IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjgKKyMsIGZ1enp5Cittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LW5leHQtY2hlY2sgPGdvb2RfdGVybT4gPGJhZF90ZXJtPiBbPHRlcm0+XSIKK21zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0td3JpdGUtdGVybXMgPG1hbF90ZXJtZT4gPGJvbl90ZXJtZT4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOQorIywgZnV6enkKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorbXNnc3RyICIiCisicGFyw6BtZXRyZSBubyB2w6BsaWQgJGFyZyBwZXIgYSAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCisiTGVzIG9wY2lvbnMgYWRtZXNlcyBzw7NuOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGkgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMwCittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1zdGFydCBbLS10ZXJtLXtvbGQsZ29vZH09PHRlcm0+IC0tdGVybS17bmV3LGJhZH0iCisiPTx0ZXJtPl1bLS1uby1jaGVja291dF0gWzxiYWQ+IFs8Z29vZD4uLi5dXSBbLS1dIFs8cGF0aHM+Li4uXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0ZXJtIgogbXNnc3RyICLCqyVzwrsgbm8gw6lzIHVuIHRlcm1lIHbDoGxpZCIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUwCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3QgdXNlIHRoZSBidWlsdGluIGNvbW1hbmQgJyVzJyBhcyBhIHRlcm0iCiBtc2dzdHIgIm5vIGVzIHBvdCB1c2FyIGwnb3JkcmUgaW50ZXJuYSDCqyVzwrsgY29tIGEgdGVybWUiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCBjaGFuZ2UgdGhlIG1lYW5pbmcgb2YgdGhlIHRlcm0gJyVzJyIKIG1zZ3N0ciAibm8gZXMgcG90IGNhbnZpYXIgZWwgc2lnbmlmaWNhdCBkZWwgdGVybWUgwqslc8K7IgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzEKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMTEKIG1zZ2lkICJwbGVhc2UgdXNlIHR3byBkaWZmZXJlbnQgdGVybXMiCiBtc2dzdHIgInVzZXUgZG9zIHRlcm1lcyBkaXN0aW50ZXMiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3OAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjExOAogbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBmaWxlIEJJU0VDVF9URVJNUyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciBlbCBCSVNFQ1RfVEVSTVMiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLlxuIgorbXNnc3RyICJObyBlc3RlbSBiaXNlY2FudC4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBjb21taXQiCittc2dzdHIgIsKrJXPCuyBubyDDqXMgdW5hIGNvbWlzc2nDsyB2w6BsaWRhIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTcyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiY291bGQgbm90IGNoZWNrIG91dCBvcmlnaW5hbCBIRUFEICclcycuIFRyeSAnZ2l0IGJpc2VjdCByZXNldCA8Y29tbWl0PicuIgorbXNnc3RyICIiCisiTm8gcydoYSBwb2d1dCBhZ2FmYXIgbGEgSEVBRCBvcmlnaW5hbCAnJGJyYW5jaCcuXG4iCisiUHJvdmV1ICdnaXQgYmlzZWN0IHJlc2V0IDxjb21pc3Npw7M+Jy4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkJhZCBiaXNlY3Rfd3JpdGUgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJQYXLDoG1ldHJlIGJpc2VjdF93cml0ZSBpbmNvcnJlY3RlOiAkc3RhdGUiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGdldCB0aGUgb2lkIG9mIHRoZSByZXYgJyVzJyIKK21zZ3N0ciAibm8gZXMgcG90IGNhbnZpYXIgZWwgc2lnbmlmaWNhdCBkZWwgdGVybWUgwqslc8K7IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjMzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIHRoZSBmaWxlICclcyciCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgZWwgZml0eGVyIMKrJXPCuyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI1OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBjb21tYW5kOiB5b3UncmUgY3VycmVudGx5IGluIGEgJXMvJXMgYmlzZWN0IgorbXNnc3RyICIiCisiT3JkcmUgbm8gdsOgbGlkYTogYWN0dWFsbWVudCBlc3RldSBlbiB1bmEgYmlzZWNjacOzICRURVJNX0JBRC8kVEVSTV9HT09ELiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI4NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICVzIGFuZCAlcyByZXZpc2lvbi5cbiIKKyJZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJXNcIiBhbmQgXCJnaXQgYmlzZWN0ICVzXCIgZm9yIHRoYXQuIgorbXNnc3RyICIiCisiQ2FsIGRvbmFyLW1lIGFsbWVueXMgdW5hIHJldmlzacOzICRiYWRfc3luIGkgdW5hICRnb29kX3N5bi5cbiIKKyIoUG9kZXUgdXNhciBcImdpdCBiaXNlY3QgJGJhZF9zeW5cIiBpIFwiZ2l0IGJpc2VjdCAkZ29vZF9zeW5cIiBwZXIgYWl4w7IuKSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI5MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgorIllvdSB0aGVuIG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJXMgYW5kICVzIHJldmlzaW9uLlxuIgorIllvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAlc1wiIGFuZCBcImdpdCBiaXNlY3QgJXNcIiBmb3IgdGhhdC4iCittc2dzdHIgIiIKKyJDYWwgY29tZW7Dp2FyIGFtYiBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKKyJEZXNwcsOpcyBjYWwgZG9uYXItbWUgYWxtZW55cyB1bmEgcmV2aXNpw7MgJGdvb2Rfc3luIGkgdW5hICRiYWRfc3luLlxuIgorIihQb2RldSB1c2FyIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGkgXCJnaXQgYmlzZWN0ICRnb29kX3N5blwiIHBlciBhaXjDsi4pIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgImJpc2VjdGluZyBvbmx5IHdpdGggYSAlcyBjb21taXQiCittc2dzdHIgImJpc2VjYW50IGFtYiBub23DqXMgdW5hIGNvbWlzc2nDsyAlcyIKKworIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtZXSBhbmQgW25dIGluIHlvdXIKKyMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKKyMuIGF0IHRoaXMgcG9pbnQuCisjLgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMzMAorbXNnaWQgIkFyZSB5b3Ugc3VyZSBbWS9uXT8gIgorbXNnc3RyICJOJ2VzdGV1IHNlZ3VyIFtZL25dPyAiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozNzcKK21zZ2lkICJubyB0ZXJtcyBkZWZpbmVkIgorbXNnc3RyICJjYXAgdGVybWUgZGVmaW5pdCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBjdXJyZW50IHRlcm1zIGFyZSAlcyBmb3IgdGhlIG9sZCBzdGF0ZVxuIgorImFuZCAlcyBmb3IgdGhlIG5ldyBzdGF0ZS5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIGFyZ3VtZW50ICVzIGZvciAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCisiU3VwcG9ydGVkIG9wdGlvbnMgYXJlOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGFuZCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgorbXNnc3RyICIiCisicGFyw6BtZXRyZSBubyB2w6BsaWQgJXMgcGVyIGEgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgorIkxlcyBvcGNpb25zIGFkbWVzZXMgc8OzbjogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCBpIC0tdGVybS1iYWR8LS10ZXJtLW5ldy4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo0NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIG9wdGlvbjogJyVzJyIKK21zZ3N0ciAib3BjacOzIG5vIHJlY29uZWd1ZGE6IMKrJXPCuyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IGFwcGVhciB0byBiZSBhIHZhbGlkIHJldmlzaW9uIgorbXNnc3RyICLCqyVzwrsgbm8gc2VtYmxhIHNlciB1bmEgcmV2aXNpw7MgdsOgbGlkYSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUxMgorbXNnaWQgImJhZCBIRUFEIC0gSSBuZWVkIGEgSEVBRCIKK21zZ3N0ciAiSEVBRCBpbmNvcnJlY3RlIC0gQ2FsIHVuIEhFQUQiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hlY2tpbmcgb3V0ICclcycgZmFpbGVkLiBUcnkgJ2dpdCBiaXNlY3Qgc3RhcnQgPHZhbGlkLWJyYW5jaD4nLiIKK21zZ3N0ciAiIgorImwnYWdhZmFtZW50IGRlIMKrJXPCuyBoYSBmYWxsYXQuIFByb3ZldSDCq2dpdCAgYmlzZWN0IHN0YXJ0IDxicmFuY2EtIgorInbDoGxpZGE+wrsuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTQ4Cittc2dpZCAid29uJ3QgYmlzZWN0IG9uIGNnLXNlZWsnZWQgdHJlZSIKK21zZ3N0ciAibm8gZXMgYmlzZWNhcsOgIGVuIHVuIGFyYnJlIGVuIGVsIHF1YWwgcydoYSBmZXQgY2ctc2VlayIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU1MQorIywgZnV6enkKK21zZ2lkICJiYWQgSEVBRCAtIHN0cmFuZ2Ugc3ltYm9saWMgcmVmIgorbXNnc3RyICJIRUFEIGluY29ycmVjdGUgLSByZWZlcsOobmNpYSBzaW1iw7JsaWNhIGVzdHJhbnlhIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZjogJyVzJyIKK21zZ3N0ciAiZml0eGVyIG5vIHbDoGxpZDogwqslc8K7IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjMxCiBtc2dpZCAicGVyZm9ybSAnZ2l0IGJpc2VjdCBuZXh0JyIKIG1zZ3N0ciAicmVhbGl0emEgJ2dpdCBiaXNlY3QgbmV4dCciCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjIKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzMKIG1zZ2lkICJ3cml0ZSB0aGUgdGVybXMgdG8gLmdpdC9CSVNFQ1RfVEVSTVMiCiBtc2dzdHIgImVzY3JpdSBlbHMgdGVybWVzIGEgLmdpdC9CSVNFQ1RfVEVSTVMiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjQKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzUKIG1zZ2lkICJjbGVhbnVwIHRoZSBiaXNlY3Rpb24gc3RhdGUiCiBtc2dzdHIgIm5ldGVqYSBsJ2VzdGF0IGRlIGxhIGJpc2VjY2nDsyIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyNgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzNwogbXNnaWQgImNoZWNrIGZvciBleHBlY3RlZCByZXZzIgogbXNnc3RyICJjb21wcm92YSBsZXMgcmV2aXNpb25zIGVzcGVyYWRlcyIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyOAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzOQorIywgZnV6enkKK21zZ2lkICJyZXNldCB0aGUgYmlzZWN0aW9uIHN0YXRlIgorbXNnc3RyICJuZXRlamEgbCdlc3RhdCBkZSBsYSBiaXNlY2Npw7MiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDEKKyMsIGZ1enp5Cittc2dpZCAid3JpdGUgb3V0IHRoZSBiaXNlY3Rpb24gc3RhdGUgaW4gQklTRUNUX0xPRyIKK21zZ3N0ciAibmV0ZWphIGwnZXN0YXQgZGUgbGEgYmlzZWNjacOzIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQzCisjLCBmdXp6eQorbXNnaWQgImNoZWNrIGFuZCBzZXQgdGVybXMgaW4gYSBiaXNlY3Rpb24gc3RhdGUiCittc2dzdHIgIm5ldGVqYSBsJ2VzdGF0IGRlIGxhIGJpc2VjY2nDsyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0NQorbXNnaWQgImNoZWNrIHdoZXRoZXIgYmFkIG9yIGdvb2QgdGVybXMgZXhpc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0NworIywgZnV6enkKK21zZ2lkICJwcmludCBvdXQgdGhlIGJpc2VjdCB0ZXJtcyIKK21zZ3N0ciAiaW1wcmltZWl4IG5vbcOpcyBsZXMgZXRpcXVldGVzIGRlIGwnb2JqZWN0ZSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0OQorbXNnaWQgInN0YXJ0IHRoZSBiaXNlY3Qgc2Vzc2lvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUxCiBtc2dpZCAidXBkYXRlIEJJU0VDVF9IRUFEIGluc3RlYWQgb2YgY2hlY2tpbmcgb3V0IHRoZSBjdXJyZW50IGNvbW1pdCIKIG1zZ3N0ciAiYWN0dWFsaXR6YSBCSVNFQ1RfSEVBRCBlbiBsbG9jIGQnYWdhZmFyIGxhIGNvbWlzc2nDsyBhY3R1YWwiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNDMKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NTMKK21zZ2lkICJubyBsb2cgZm9yIEJJU0VDVF9XUklURSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjcwCiBtc2dpZCAiLS13cml0ZS10ZXJtcyByZXF1aXJlcyB0d28gYXJndW1lbnRzIgogbXNnc3RyICItLXdyaXRlLXRlcm1zIHJlcXVlcmVpeCBkb3MgcGFyw6BtZXRyZXMiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNDcKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NzQKIG1zZ2lkICItLWJpc2VjdC1jbGVhbi1zdGF0ZSByZXF1aXJlcyBubyBhcmd1bWVudHMiCiBtc2dzdHIgIi0tYmlzZWN0LWNsZWFuLXN0YXRlIG5vIGFjY2VwdGEgcGFyw6BtZXRyZXMiCiAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2ODEKKyMsIGZ1enp5Cittc2dpZCAiLS1iaXNlY3QtcmVzZXQgcmVxdWlyZXMgZWl0aGVyIG5vIGFyZ3VtZW50IG9yIGEgY29tbWl0IgorbXNnc3RyICItLWJpc2VjdC1jbGVhbi1zdGF0ZSBubyBhY2NlcHRhIHBhcsOgbWV0cmVzIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njg1CisjLCBmdXp6eQorbXNnaWQgIi0tYmlzZWN0LXdyaXRlIHJlcXVpcmVzIGVpdGhlciA0IG9yIDUgYXJndW1lbnRzIgorbXNnc3RyICItLWJpc2VjdC1jbGVhbi1zdGF0ZSBubyBhY2NlcHRhIHBhcsOgbWV0cmVzIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjkxCisjLCBmdXp6eQorbXNnaWQgIi0tY2hlY2stYW5kLXNldC10ZXJtcyByZXF1aXJlcyAzIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1iaXNlY3QtY2xlYW4tc3RhdGUgbm8gYWNjZXB0YSBwYXLDoG1ldHJlcyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY5NworIywgZnV6enkKK21zZ2lkICItLWJpc2VjdC1uZXh0LWNoZWNrIHJlcXVpcmVzIDIgb3IgMyBhcmd1bWVudHMiCittc2dzdHIgIi0tYmlzZWN0LWNsZWFuLXN0YXRlIG5vIGFjY2VwdGEgcGFyw6BtZXRyZXMiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3MDMKKyMsIGZ1enp5Cittc2dpZCAiLS1iaXNlY3QtdGVybXMgcmVxdWlyZXMgMCBvciAxIGFyZ3VtZW50IgorbXNnc3RyICItLXdyaXRlLXRlcm1zIHJlcXVlcmVpeCBkb3MgcGFyw6BtZXRyZXMiCisKICM6IGJ1aWx0aW4vYmxhbWUuYzozMQogbXNnaWQgImdpdCBibGFtZSBbPG9wdGlvbnM+XSBbPHJldi1vcHRzPl0gWzxyZXY+XSBbLS1dIDxmaWxlPiIKIG1zZ3N0ciAiZ2l0IGJsYW1lIFs8b3BjaW9ucz5dIFs8b3BjaW9ucy1kZS1yZXZpc2nDsz5dIFs8cmV2aXNpw7M+XSBbLS1dIGZpdHhlciIKQEAgLTc4ODYsMTQwICs5ODUxLDE1NSBAQAogbXNnaWQgIjxyZXYtb3B0cz4gYXJlIGRvY3VtZW50ZWQgaW4gZ2l0LXJldi1saXN0KDEpIgogbXNnc3RyICJlcyBkb2N1bWVudGVuIGxlcyA8b3BjaW9ucy1kZS1yZXZpc2nDsz4gZW4gZ2l0LXJldi1saXN0KDEpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NDA2CisjOiBidWlsdGluL2JsYW1lLmM6NDA5CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RpbmcgYSBjb2xvcjogJXMiCiBtc2dzdHIgInJlc3BlY3RhIGVscyBjb2xvcnMgZGVsIGZvcm1hdCIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjQxMworIzogYnVpbHRpbi9ibGFtZS5jOjQxNgogbXNnaWQgIm11c3QgZW5kIHdpdGggYSBjb2xvciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzAwCisjOiBidWlsdGluL2JsYW1lLmM6NzI5CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbG9yICclcycgaW4gY29sb3IuYmxhbWUucmVwZWF0ZWRMaW5lcyIKIG1zZ3N0ciAiaWdub3JhIGVsIGNvbG9yIG5vIHbDoGxpZCDCqyUuKnPCuyBlbiBsb2cuZ3JhcGhDb2xvcnMiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3MTgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3NDcKICMsIGZ1enp5CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgYmxhbWUuY29sb3JpbmciCiBtc2dzdHIgInZhbG9yIG5vIHbDoGxpZCBwZXIgYSAtLW1pc3NpbmciCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmaW5kIHJldmlzaW9uICVzIHRvIGlnbm9yZSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCByZXNvbGRyZSBsYSByZXZpc2nDszogJXMiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDQKIG1zZ2lkICJTaG93IGJsYW1lIGVudHJpZXMgYXMgd2UgZmluZCB0aGVtLCBpbmNyZW1lbnRhbGx5IgogbXNnc3RyICJNb3N0cmEgbGVzIGVudHJhZGVzIMKrYmxhbWXCuyBtZW50cmUgbGVzIHRyb2JlbSwgaW5jcmVtZW50YWxtZW50IgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk0CisjOiBidWlsdGluL2JsYW1lLmM6ODQ1CiBtc2dpZCAiU2hvdyBibGFuayBTSEEtMSBmb3IgYm91bmRhcnkgY29tbWl0cyAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiIgogIk1vc3RyYSB1biBTSEEtMSBlbiBibGFuYyBwZXIgbGVzIGNvbWlzc2lvbnMgZGUgZnJvbnRlcmEgKFBlciBkZWZlY3RlOiAiCiAiZGVzYWN0aXZhdCkiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTUKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDYKIG1zZ2lkICJEbyBub3QgdHJlYXQgcm9vdCBjb21taXRzIGFzIGJvdW5kYXJpZXMgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIiIKICJObyB0cmFjdGlzIGxlcyBjb21pc3Npb25zIGQnYXJyZWwgY29tIGEgbMOtbWl0cyAoUGVyIGRlZmVjdGU6IGRlc2FjdGl2YXQpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk2CisjOiBidWlsdGluL2JsYW1lLmM6ODQ3CiBtc2dpZCAiU2hvdyB3b3JrIGNvc3Qgc3RhdGlzdGljcyIKIG1zZ3N0ciAiTW9zdHJhIGxlcyBlc3RhZMOtc3RpcXVlcyBkZSBwcmV1IGRlIHRyZWJhbGwiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTcKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDgKIG1zZ2lkICJGb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCiBtc2dzdHIgIkZvcsOnYSBsJ2luZm9ybWUgZGUgcHJvZ3LDqXMiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDkKIG1zZ2lkICJTaG93IG91dHB1dCBzY29yZSBmb3IgYmxhbWUgZW50cmllcyIKIG1zZ3N0ciAiTW9zdHJhIGxhIHB1bnR1YWNpw7MgZGUgc29ydGlkYSBkZSBsZXMgZW50cmFkZXMgwqtibGFtZcK7IgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk5CisjOiBidWlsdGluL2JsYW1lLmM6ODUwCiBtc2dpZCAiU2hvdyBvcmlnaW5hbCBmaWxlbmFtZSAoRGVmYXVsdDogYXV0bykiCiBtc2dzdHIgIk1vc3RyYSBlbCBub20gZGUgZml0eGVyIG9yaWdpbmFsIChQZXIgZGVmZWN0ZTogYXV0b23DoHRpYykiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTEKIG1zZ2lkICJTaG93IG9yaWdpbmFsIGxpbmVudW1iZXIgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIk1vc3RyYSBlbCBuw7ptZXJvIGRlIGzDrW5pYSBvcmlnaW5hbCAoUGVyIGRlZmVjdGU6IGRlc2FjdGl2YXQpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAxCisjOiBidWlsdGluL2JsYW1lLmM6ODUyCiBtc2dpZCAiU2hvdyBpbiBhIGZvcm1hdCBkZXNpZ25lZCBmb3IgbWFjaGluZSBjb25zdW1wdGlvbiIKIG1zZ3N0ciAiUHJlc2VudGEgZW4gdW4gZm9ybWF0IGRpc3NlbnlhdCBwZXIgY29uc3VtcGNpw7MgcGVyIG3DoHF1aW5hIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAyCisjOiBidWlsdGluL2JsYW1lLmM6ODUzCiBtc2dpZCAiU2hvdyBwb3JjZWxhaW4gZm9ybWF0IHdpdGggcGVyLWxpbmUgY29tbWl0IGluZm9ybWF0aW9uIgogbXNnc3RyICJNb3N0cmEgZWwgZm9ybWF0IGRlIHBvcmNlbGxhbmEgYW1iIGluZm9ybWFjacOzIGRlIGNvbWlzc2nDsyBwZXIgbMOtbmlhIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAzCisjOiBidWlsdGluL2JsYW1lLmM6ODU0CiBtc2dpZCAiVXNlIHRoZSBzYW1lIG91dHB1dCBtb2RlIGFzIGdpdC1hbm5vdGF0ZSAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiIgogIlVzYSBlbCBtYXRlaXggbW9kZSBkZSBzb3J0aWRhIHF1ZSBnaXQtYW5ub3RhdGUgKFBlciBkZWZlY3RlOiBkZXNhY3RpdmF0KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwNAorIzogYnVpbHRpbi9ibGFtZS5jOjg1NQogbXNnaWQgIlNob3cgcmF3IHRpbWVzdGFtcCAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiTW9zdHJhIGxhIG1hcmNhIGRlIHRlbXBzIGNydWEgKFBlciBkZWZlY3RlOiBkZXNhY3RpdmF0KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwNQorIzogYnVpbHRpbi9ibGFtZS5jOjg1NgogbXNnaWQgIlNob3cgbG9uZyBjb21taXQgU0hBMSAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiTW9zdHJhIGwnU0hBMSBkZSBjb21pc3Npw7MgbGxhcmcgKFBlciBkZWZlY3RlOiBkZXNhY3RpdmF0KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwNgorIzogYnVpbHRpbi9ibGFtZS5jOjg1NwogbXNnaWQgIlN1cHByZXNzIGF1dGhvciBuYW1lIGFuZCB0aW1lc3RhbXAgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIk9tZXQgZWwgbm9tIGQnYXV0b3IgaSBsYSBtYXJjYSBkZSB0ZW1wcyAoUGVyIGRlZmVjdGU6IGRlc2FjdGl2YXQpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA3CisjOiBidWlsdGluL2JsYW1lLmM6ODU4CiBtc2dpZCAiU2hvdyBhdXRob3IgZW1haWwgaW5zdGVhZCBvZiBuYW1lIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICIiCiAiTW9zdHJhIGwnYWRyZcOnYSBlbGVjdHLDsm5pY2EgZGUgbCdhdXRvciBlbiBsbG9jIGRlbCBub20gKFBlciBkZWZlY3RlOiAiCiAiZGVzYWN0aXZhdCkiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTkKIG1zZ2lkICJJZ25vcmUgd2hpdGVzcGFjZSBkaWZmZXJlbmNlcyIKIG1zZ3N0ciAiSWdub3JhIGxlcyBkaWZlcsOobmNpZXMgZCdlc3BhaSBlbiBibGFuYyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwOQorIzogYnVpbHRpbi9ibGFtZS5jOjg2MCBidWlsdGluL2xvZy5jOjE3MDIKK21zZ2lkICJyZXYiCittc2dzdHIgInJldiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MAorIywgZnV6enkKK21zZ2lkICJJZ25vcmUgPHJldj4gd2hlbiBibGFtaW5nIgorbXNnc3RyICJpZ25vcmEgbCfDrW5kZXggZW4gY29tcHJvdmFyIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYxCisjLCBmdXp6eQorbXNnaWQgIklnbm9yZSByZXZpc2lvbnMgZnJvbSA8ZmlsZT4iCittc2dzdHIgImxsZWdpdSBlbCBtaXNzYXRnZSBkZXMgZCd1biBmaXR4ZXIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjIKIG1zZ2lkICJjb2xvciByZWR1bmRhbnQgbWV0YWRhdGEgZnJvbSBwcmV2aW91cyBsaW5lIGRpZmZlcmVudGx5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MTAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjMKIG1zZ2lkICJjb2xvciBsaW5lcyBieSBhZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgxNwotbXNnaWQgIlVzZSBhbiBleHBlcmltZW50YWwgaGV1cmlzdGljIHRvIGltcHJvdmUgZGlmZnMiCi1tc2dzdHIgIlVzYSB1biBoZXVyw61zdGljIGV4cGVyaW1lbnRhbCBwZXIgYSBtaWxsb3JhciBsZXMgZGlmZXLDqG5jaWVzIgotCi0jOiBidWlsdGluL2JsYW1lLmM6ODE5CisjOiBidWlsdGluL2JsYW1lLmM6ODY0CiBtc2dpZCAiU3BlbmQgZXh0cmEgY3ljbGVzIHRvIGZpbmQgYmV0dGVyIG1hdGNoIgogbXNnc3RyICJHYXN0YSBjaWNsZXMgZXh0cmVzIHBlciBhIHRyb2JhciB1bmEgY29pbmNpZMOobmNpYSBtaWxsb3IiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjUKIG1zZ2lkICJVc2UgcmV2aXNpb25zIGZyb20gPGZpbGU+IGluc3RlYWQgb2YgY2FsbGluZyBnaXQtcmV2LWxpc3QiCiBtc2dzdHIgIlVzYSBsZXMgcmV2aXNpb25zIGRlIDxmaXR4ZXI+IGVuIGxsb2MgZCdpbnZvY2FyIGdpdC1yZXYtbGlzdCIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMQorIzogYnVpbHRpbi9ibGFtZS5jOjg2NgogbXNnaWQgIlVzZSA8ZmlsZT4ncyBjb250ZW50cyBhcyB0aGUgZmluYWwgaW1hZ2UiCiBtc2dzdHIgIlVzYSBlbHMgY29udGluZ3V0cyBkZSA8Zml0eGVyPiBjb20gYSBsYSBpbWF0Z2UgZmluYWwiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIgYnVpbHRpbi9ibGFtZS5jOjgyMworIzogYnVpbHRpbi9ibGFtZS5jOjg2NyBidWlsdGluL2JsYW1lLmM6ODY4CiBtc2dpZCAic2NvcmUiCiBtc2dzdHIgInB1bnR1YWNpw7MiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjcKIG1zZ2lkICJGaW5kIGxpbmUgY29waWVzIHdpdGhpbiBhbmQgYWNyb3NzIGZpbGVzIgogbXNnc3RyICJUcm9iYSBjw7JwaWVzIGRlIGzDrW5pYSBkaW5zIGkgYSB0cmF2w6lzIGRlbHMgZml0eGVycyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMworIzogYnVpbHRpbi9ibGFtZS5jOjg2OAogbXNnaWQgIkZpbmQgbGluZSBtb3ZlbWVudHMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCiBtc2dzdHIgIlRyb2JhIG1vdmltZW50cyBkZSBsw61uaWEgZGlucyBpIGEgdHJhdsOpcyBkZWxzIGZpdHhlcnMiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjQKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjkKIG1zZ2lkICJuLG0iCiBtc2dzdHIgIm4sbSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyNAorIzogYnVpbHRpbi9ibGFtZS5jOjg2OQogbXNnaWQgIlByb2Nlc3Mgb25seSBsaW5lIHJhbmdlIG4sbSwgY291bnRpbmcgZnJvbSAxIgogbXNnc3RyICJQcm9jZXNzYSBub23DqXMgZWwgcmFuZyBkZSBsw61uaWVzIG4sbSwgY29tcHRhbnQgZGVzIGQnMSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjg3MworIzogYnVpbHRpbi9ibGFtZS5jOjkyMQogbXNnaWQgIi0tcHJvZ3Jlc3MgY2FuJ3QgYmUgdXNlZCB3aXRoIC0taW5jcmVtZW50YWwgb3IgcG9yY2VsYWluIGZvcm1hdHMiCiBtc2dzdHIgIiIKICJubyBlcyBwb3QgdXNhciAtLXByb2dyZXNzIGFtYiBlbHMgZm9ybWF0cyAtLWluY3JlbWVudGFsIG8gZGUgcG9yY2VsbGFuYSIKQEAgLTgwMzIsMTggKzEwMDEyLDE4IEBACiAjLiB5b3VyIGxhbmd1YWdlIG1heSBuZWVkIG1vcmUgb3IgZmV3ZXIgZGlzcGxheQogIy4gY29sdW1ucy4KICMuCi0jOiBidWlsdGluL2JsYW1lLmM6OTI0CisjOiBidWlsdGluL2JsYW1lLmM6OTcyCiBtc2dpZCAiNCB5ZWFycywgMTEgbW9udGhzIGFnbyIKIG1zZ3N0ciAiZmEgNCBhbnlzIGkgMTEgbWVzb3MiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzoxMDExCisjOiBidWlsdGluL2JsYW1lLmM6MTA3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmaWxlICVzIGhhcyBvbmx5ICVsdSBsaW5lIgogbXNnaWRfcGx1cmFsICJmaWxlICVzIGhhcyBvbmx5ICVsdSBsaW5lcyIKIG1zZ3N0clswXSAiZWwgZml0eGVyICVzIHTDqSBub23DqXMgJWx1IGzDrW5pYSIKIG1zZ3N0clsxXSAiZWwgZml0eGVyICVzIHTDqSBub23DqXMgJWx1IGzDrW5pZXMiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzoxMDU3CisjOiBidWlsdGluL2JsYW1lLmM6MTEyNQogbXNnaWQgIkJsYW1pbmcgbGluZXMiCiBtc2dzdHIgIlMnZXN0w6AgZmVudCB1biDCq2JsYW1lwrsiCiAKQEAgLTgwNzUsNyArMTAwNTUsNyBAQAogbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1yIHwgLWFdIFstLWZvcm1hdF0iCiBtc2dzdHIgImdpdCBicmFuY2ggWzxvcGNpb25zPl0gWy1yIHwgLWFdIFstLWZvcm1hdF0iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTUxCisjOiBidWlsdGluL2JyYW5jaC5jOjE1NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZGVsZXRpbmcgYnJhbmNoICclcycgdGhhdCBoYXMgYmVlbiBtZXJnZWQgdG9cbiIKQEAgLTgwODUsNyArMTAwNjUsNyBAQAogIiAgICAgICAgIGZ1c2lvbmF0IGEgwqslc8K7LCBwZXLDsiBlbmNhcmEgbm9cbiIKICIgICAgICAgICBzJ2hhIGZ1c2lvbmF0IGEgSEVBRC4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTU1CisjOiBidWlsdGluL2JyYW5jaC5jOjE1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibm90IGRlbGV0aW5nIGJyYW5jaCAnJXMnIHRoYXQgaXMgbm90IHlldCBtZXJnZWQgdG9cbiIKQEAgLTgwOTUsMTIgKzEwMDc1LDEyIEBACiAiICAgICAgICAgcydoYSBmdXNpb25hdCBhIMKrJXPCuywgZW5jYXJhIHF1ZSBlc3TDoFxuIgogIiAgICAgICAgIGZ1c2lvbmFkYSBhIEhFQUQuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE2OQorIzogYnVpbHRpbi9icmFuY2guYzoxNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGRuJ3QgbG9vayB1cCBjb21taXQgb2JqZWN0IGZvciAnJXMnIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IHRyb2JhciBsJ29iamVjdGUgZGUgY29taXNzacOzIGRlIMKrJXPCuyIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxNzMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgYnJhbmNoICclcycgaXMgbm90IGZ1bGx5IG1lcmdlZC5cbiIKQEAgLTgxMDksMTE2ICsxMDA4OSwxMjYgQEAKICJMYSBicmFuY2Egwqslc8K7IG5vIGVzdMOgIHRvdGFsbWVudCBmdXNpb25hZGEuXG4iCiAiU2kgZXN0ZXUgc2VndXIgcXVlIGxhIHZvbGV1IHN1cHJpbWlyLCBleGVjdXRldSAnZ2l0IGJyYW5jaCAtRCAlcycuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE4NgorIzogYnVpbHRpbi9icmFuY2guYzoxODkKIG1zZ2lkICJVcGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICJMJ2FjdHVhbGl0emFjacOzIGRlbCBmaXR4ZXIgZGUgY29uZmlndXJhY2nDsyBoYSBmYWxsYXQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjE3CisjOiBidWlsdGluL2JyYW5jaC5jOjIyMAogbXNnaWQgImNhbm5vdCB1c2UgLWEgd2l0aCAtZCIKIG1zZ3N0ciAibm8gZXMgcG90IHVzYXIgLWEgYW1iIC1kIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjIyMworIzogYnVpbHRpbi9icmFuY2guYzoyMjYKIG1zZ2lkICJDb3VsZG4ndCBsb29rIHVwIGNvbW1pdCBvYmplY3QgZm9yIEhFQUQiCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgdHJvYmFyIGwnb2JqZWN0ZSBkZSBjb21pc3Npw7MgZGUgSEVBRCIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBkZWxldGUgYnJhbmNoICclcycgY2hlY2tlZCBvdXQgYXQgJyVzJyIKIG1zZ3N0ciAiTm8gZXMgcG90IHN1cHJpbWlyIGxhIGJyYW5jYSDCqyVzwrsgYWdhZmFkYSBhIMKrJXPCuyIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZS10cmFja2luZyBicmFuY2ggJyVzJyBub3QgZm91bmQuIgogbXNnc3RyICJubyBzJ2hhIHRyb2JhdCBsYSBicmFuY2EgYW1iIHNlZ3VpbWVudCByZW1vdCDCqyVzwrsuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI1MworIzogYnVpbHRpbi9icmFuY2guYzoyNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiYnJhbmNoICclcycgbm90IGZvdW5kLiIKIG1zZ3N0ciAibm8gcydoYSB0cm9iYXQgbGEgYnJhbmNhIMKrJXPCuy4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjY4CisjOiBidWlsdGluL2JyYW5jaC5jOjI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJFcnJvciBkZWxldGluZyByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICclcyciCiBtc2dzdHIgIkVycm9yIGVuIHN1cHJpbWlyIGxhIGJyYW5jYSBhbWIgc2VndWltZW50IHJlbW90IMKrJXPCuyIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkVycm9yIGRlbGV0aW5nIGJyYW5jaCAnJXMnIgogbXNnc3RyICJFcnJvciBlbiBzdXByaW1pciBsYSBicmFuY2Egwqslc8K7IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI3NgorIzogYnVpbHRpbi9icmFuY2guYzoyNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICVzICh3YXMgJXMpLlxuIgogbXNnc3RyICJTJ2hhIHN1cHJpbWl0IGxhIGJyYW5jYSBhbWIgc2VndWltZW50IHJlbW90ICVzIChlcmEgJXMpLlxuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI3NworIzogYnVpbHRpbi9icmFuY2guYzoyODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCBicmFuY2ggJXMgKHdhcyAlcykuXG4iCiBtc2dzdHIgIlMnaGEgc3VwcmltaXQgbGEgYnJhbmNhICVzIChlcmEgJXMpLlxuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQyMSBidWlsdGluL3RhZy5jOjU5CisjOiBidWlsdGluL2JyYW5jaC5jOjQyOSBidWlsdGluL3RhZy5jOjYxCiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGZvcm1hdCBzdHJpbmciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGxhIGNhZGVuYSBkZSBmb3JtYXQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDU4CisjOiBidWlsdGluL2JyYW5jaC5jOjQ2MAorIywgZnV6enkKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHJlc29sZHJlIGxhIGNvbWlzc2nDsyBIRUFEIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ2NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiSEVBRCAoJXMpIHBvaW50cyBvdXRzaWRlIG9mIHJlZnMvaGVhZHMvIgorbXNnc3RyICJIRUFEIG5vIHRyb2JhdCBzb3RhIHJlZnMvaGVhZHMhIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJXMgaXMgYmVpbmcgcmViYXNlZCBhdCAlcyIKIG1zZ3N0ciAiUydlc3TDoCBmZW50IMKrcmViYXNlwrsgZW4gbGEgYnJhbmNhICVzIGEgJXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDYyCisjOiBidWlsdGluL2JyYW5jaC5jOjQ4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJXMgaXMgYmVpbmcgYmlzZWN0ZWQgYXQgJXMiCiBtc2dzdHIgIkxhIGJyYW5jYSAlcyBzJ2VzdMOgIGJpc2VjYW50IGEgJXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDc5CisjOiBidWlsdGluL2JyYW5jaC5jOjUwMgogbXNnaWQgImNhbm5vdCBjb3B5IHRoZSBjdXJyZW50IGJyYW5jaCB3aGlsZSBub3Qgb24gYW55LiIKIG1zZ3N0ciAibm8gZXMgcG90IGNvcGlhciBicmFuY2EgYWN0dWFsIG1lbnRyZSBubyBzJ8OpcyBhIGNhcC4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDgxCisjOiBidWlsdGluL2JyYW5jaC5jOjUwNAogbXNnaWQgImNhbm5vdCByZW5hbWUgdGhlIGN1cnJlbnQgYnJhbmNoIHdoaWxlIG5vdCBvbiBhbnkuIgogbXNnc3RyICJubyBlcyBwb3QgY2FudmlhciBlbCBub20gZGUgbGEgYnJhbmNhIGFjdHVhbCBtZW50cmUgbm8gcyfDqXMgYSBjYXAuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ5MgorIzogYnVpbHRpbi9icmFuY2guYzo1MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBicmFuY2ggbmFtZTogJyVzJyIKIG1zZ3N0ciAiTm9tIGRlIGJyYW5jYSBubyB2w6BsaWQ6IMKrJXPCuyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MTkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQyCiBtc2dpZCAiQnJhbmNoIHJlbmFtZSBmYWlsZWQiCiBtc2dzdHIgIkVsIGNhbnZpIGRlIG5vbSBkZSBicmFuY2EgaGEgZmFsbGF0IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyMQorIzogYnVpbHRpbi9icmFuY2guYzo1NDQKIG1zZ2lkICJCcmFuY2ggY29weSBmYWlsZWQiCiBtc2dzdHIgIkxhIGPDsnBpYSBkZSBsYSBicmFuY2EgaGEgZmFsbGF0IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyNQorIzogYnVpbHRpbi9icmFuY2guYzo1NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3JlYXRlZCBhIGNvcHkgb2YgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyIKIG1zZ3N0ciAiUydoYSBjcmVhdCB1bmEgY8OycGlhIGQndW5hIGJyYW5jYSBtYWwgYW5vbWVuYWRhIMKrJXPCuyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MjgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbmFtZWQgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyBhd2F5IgogbXNnc3RyICJTJ2hhIGNhbnZpYXQgZWwgbm9tIGRlIGxhIGJyYW5jYSBtYWwgYW5vbWVuYWRhIMKrJXPCuyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MzQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCByZW5hbWVkIHRvICVzLCBidXQgSEVBRCBpcyBub3QgdXBkYXRlZCEiCiBtc2dzdHIgIlMnaGEgY2FudmlhdCBlbCBub20gZGUgbGEgYnJhbmNhIGEgJXMsIHBlcsOyIEhFQUQgbm8gZXN0w6AgYWN0dWFsaXR6YXQhIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU0MworIzogYnVpbHRpbi9icmFuY2guYzo1NjYKIG1zZ2lkICJCcmFuY2ggaXMgcmVuYW1lZCwgYnV0IHVwZGF0ZSBvZiBjb25maWctZmlsZSBmYWlsZWQiCiBtc2dzdHIgIiIKICJMYSBicmFuY2EgZXN0w6AgY2FudmlhZGEgZGUgbm9tLCBwZXLDsiBsJ2FjdHVhbGl0emFjacOzIGRlbCBmaXR4ZXIgZGUgIgogImNvbmZpZ3VyYWNpw7MgaGEgZmFsbGF0IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU0NQorIzogYnVpbHRpbi9icmFuY2guYzo1NjgKIG1zZ2lkICJCcmFuY2ggaXMgY29waWVkLCBidXQgdXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKIG1zZ3N0ciAiIgogIkxhIGJyYW5jYSBlc3TDoCBjb3BpYWRhLCBwZXLDsiBsJ2FjdHVhbGl0emFjacOzIGRlbCBmaXR4ZXIgZGUgY29uZmlndXJhY2nDsyBoYSAiCiAiZmFsbGF0IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU2MQorIzogYnVpbHRpbi9icmFuY2guYzo1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlBsZWFzZSBlZGl0IHRoZSBkZXNjcmlwdGlvbiBmb3IgdGhlIGJyYW5jaFxuIgpAQCAtODIyNywyMjQgKzEwMjE3LDIyMyBAQAogbXNnc3RyICIiCiAiRWRpdGV1IGxhIGRlc2NyaXBjacOzIGRlIGxhIGJyYW5jYVxuIgogIiAgJXNcbiIKLSJTJ2VsaW1pbmFyYW4gbGVzIGzDrW5pZXMgcXVlIGNvbWVuY2luIGFtYiAnJWMnLlxuIgorIlMnZWxpbWluYXJhbiBsZXMgbMOtbmllcyBxdWUgY29tZW5jaW4gYW1iIMKrJWPCuy5cbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE4CiBtc2dpZCAiR2VuZXJpYyBvcHRpb25zIgogbXNnc3RyICJPcGNpb25zIGdlbsOocmlxdWVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5NgorIzogYnVpbHRpbi9icmFuY2guYzo2MjAKIG1zZ2lkICJzaG93IGhhc2ggYW5kIHN1YmplY3QsIGdpdmUgdHdpY2UgZm9yIHVwc3RyZWFtIGJyYW5jaCIKIG1zZ3N0ciAibW9zdHJhIGVsIGhhc2ggaSBsJ2Fzc3VtcHRlLCBkb25ldSBkdWVzIHZlZ2FkZXMgcGVyIGxhIGJyYW5jYSBmb250IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5NworIzogYnVpbHRpbi9icmFuY2guYzo2MjEKIG1zZ2lkICJzdXBwcmVzcyBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzIgogbXNnc3RyICJvbWV0IGVscyBtaXNzYXRnZXMgaW5mb3JtYXRpdXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTk4CisjOiBidWlsdGluL2JyYW5jaC5jOjYyMgogbXNnaWQgInNldCB1cCB0cmFja2luZyBtb2RlIChzZWUgZ2l0LXB1bGwoMSkpIgogbXNnc3RyICJjb25maWd1cmEgZWwgbW9kZSBkZSBzZWd1aW1lbnQgKHZlZ2V1IGdpdC1wdWxsKDEpKSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI0CiBtc2dpZCAiZG8gbm90IHVzZSIKIG1zZ3N0ciAibm8gdXNhciIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDIgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgwCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNiBidWlsdGluL3JlYmFzZS5jOjUwNQogbXNnaWQgInVwc3RyZWFtIgogbXNnc3RyICJmb250IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMgorIzogYnVpbHRpbi9icmFuY2guYzo2MjYKIG1zZ2lkICJjaGFuZ2UgdGhlIHVwc3RyZWFtIGluZm8iCiBtc2dzdHIgImNhbnZpYSBsYSBpbmZvcm1hY2nDsyBkZSBmb250IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMwotbXNnaWQgIlVuc2V0IHRoZSB1cHN0cmVhbSBpbmZvIgorIzogYnVpbHRpbi9icmFuY2guYzo2MjcKKyMsIGZ1enp5Cittc2dpZCAidW5zZXQgdGhlIHVwc3RyZWFtIGluZm8iCiBtc2dzdHIgIkRlc2Fzc2lnbmEgbGEgaW5mb3JtYWNpw7MgZGUgZm9udCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI4CiBtc2dpZCAidXNlIGNvbG9yZWQgb3V0cHV0IgogbXNnc3RyICJ1c2Egc29ydGlkYSBjb2xvcmFkYSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI5CiBtc2dpZCAiYWN0IG9uIHJlbW90ZS10cmFja2luZyBicmFuY2hlcyIKIG1zZ3N0ciAiYWN0dWEgZW4gYnJhbnF1ZXMgYW1iIHNlZ3VpbWVudCByZW1vdCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDcgYnVpbHRpbi9icmFuY2guYzo2MDkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMxIGJ1aWx0aW4vYnJhbmNoLmM6NjMzCiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAiaW1wcmltZWl4IG5vbcOpcyBsZXMgYnJhbnF1ZXMgcXVlIGNvbnRpbmd1aW4gbGEgY29taXNzacOzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwOCBidWlsdGluL2JyYW5jaC5jOjYxMAorIzogYnVpbHRpbi9icmFuY2guYzo2MzIgYnVpbHRpbi9icmFuY2guYzo2MzQKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICJpbXByaW1laXggbm9tw6lzIGxlcyBicmFucXVlcyBxdWUgbm8gY29udGluZ3VpbiBsYSBjb21pc3Npw7MiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjEzCisjOiBidWlsdGluL2JyYW5jaC5jOjYzNwogbXNnaWQgIlNwZWNpZmljIGdpdC1icmFuY2ggYWN0aW9uczoiCiBtc2dzdHIgIkFjY2lvbnMgZGUgZ2l0LWJyYW5jaCBlc3BlY8OtZmlxdWVzOiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM4CiBtc2dpZCAibGlzdCBib3RoIHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCiBtc2dzdHIgImxsaXN0YSBsZXMgYnJhbnF1ZXMgYW1iIHNlZ3VpbWVudCByZW1vdCBpIGxlcyBsb2NhbHMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE2CisjOiBidWlsdGluL2JyYW5jaC5jOjY0MAogbXNnaWQgImRlbGV0ZSBmdWxseSBtZXJnZWQgYnJhbmNoIgogbXNnc3RyICJzdXByaW1laXggbGEgYnJhbmNhIHNpIGVzdMOgIGNvbXBsZXRhbWVudCBmdXNpb25hZGEiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE3CisjOiBidWlsdGluL2JyYW5jaC5jOjY0MQogbXNnaWQgImRlbGV0ZSBicmFuY2ggKGV2ZW4gaWYgbm90IG1lcmdlZCkiCiBtc2dzdHIgInN1cHJpbWVpeCBsYSBicmFuY2EgKGVuY2FyYSBxdWUgbm8gZXN0aWd1aSBmdXNpb25hZGEpIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxOAorIzogYnVpbHRpbi9icmFuY2guYzo2NDIKIG1zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCBhbmQgaXRzIHJlZmxvZyIKIG1zZ3N0ciAibW91L2NhbnZpYSBkZSBub20gdW5hIGJyYW5jYSBpIGVsIHNldSByZWdpc3RyZSBkZSByZWZlcsOobmNpYSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQzCiBtc2dpZCAibW92ZS9yZW5hbWUgYSBicmFuY2gsIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAibW91L2NhbnZpYSBkZSBub20gdW5hIGJyYW5jYSwgZW5jYXJhIHF1ZSBlbCBkZXN0w60gZXhpc3RlaXhpIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMAorIzogYnVpbHRpbi9icmFuY2guYzo2NDQKIG1zZ2lkICJjb3B5IGEgYnJhbmNoIGFuZCBpdHMgcmVmbG9nIgogbXNnc3RyICJjb3BpYSB1bmEgYnJhbmNhIGkgZWwgc2V1IHJlZ2lzdHJlIGRlIHJlZmVyw6huY2lhIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMQorIzogYnVpbHRpbi9icmFuY2guYzo2NDUKIG1zZ2lkICJjb3B5IGEgYnJhbmNoLCBldmVuIGlmIHRhcmdldCBleGlzdHMiCiBtc2dzdHIgImNvcGlhIHVuYSBicmFuY2EsIGVuY2FyYSBxdWUgZWwgZGVzdMOtIGV4aXN0ZWl4aSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ2CiBtc2dpZCAibGlzdCBicmFuY2ggbmFtZXMiCiBtc2dzdHIgImxsaXN0YSBlbHMgbm9tcyBkZSBicmFuY2EiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIzCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NworIywgZnV6enkKK21zZ2lkICJzaG93IGN1cnJlbnQgYnJhbmNoIG5hbWUiCittc2dzdHIgIk5vIGhpIGhhIGNhcCBicmFuY2EgYWN0dWFsLiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDgKIG1zZ2lkICJjcmVhdGUgdGhlIGJyYW5jaCdzIHJlZmxvZyIKIG1zZ3N0ciAiY3JlYSBlbCByZWdpc3RyZSBkZSByZWZlcsOobmNpYSBkZSBsYSBicmFuY2EiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI1CisjOiBidWlsdGluL2JyYW5jaC5jOjY1MAogbXNnaWQgImVkaXQgdGhlIGRlc2NyaXB0aW9uIGZvciB0aGUgYnJhbmNoIgogbXNnc3RyICJlZGl0YSBsYSBkZXNjcmlwY2nDsyBkZSBsYSBicmFuY2EiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI2CisjOiBidWlsdGluL2JyYW5jaC5jOjY1MQogbXNnaWQgImZvcmNlIGNyZWF0aW9uLCBtb3ZlL3JlbmFtZSwgZGVsZXRpb24iCiBtc2dzdHIgImZvcsOnYSBjcmVhY2nDsywgbW92aW1lbnQvY2FudmkgZGUgbm9tLCBzdXByZXNzacOzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyNworIzogYnVpbHRpbi9icmFuY2guYzo2NTIKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAiaW1wcmltZWl4IG5vbcOpcyBsZXMgYnJhbnF1ZXMgcXVlIHMnaGFuIGZ1c2lvbmF0IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyOAorIzogYnVpbHRpbi9icmFuY2guYzo2NTMKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCiBtc2dzdHIgImltcHJpbWVpeCBub23DqXMgbGVzIGJyYW5xdWVzIHF1ZSBubyBzJ2hhbiBmdXNpb25hdCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjU0CiBtc2dpZCAibGlzdCBicmFuY2hlcyBpbiBjb2x1bW5zIgogbXNnc3RyICJsbGlzdGEgbGVzIGJyYW5xdWVzIGVuIGNvbHVtbmVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzMCBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzAKLSM6IGJ1aWx0aW4vdGFnLmM6NDE1Ci1tc2dpZCAia2V5IgotbXNnc3RyICJjbGF1IgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzMSBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQxIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzEKLSM6IGJ1aWx0aW4vdGFnLmM6NDE2Ci1tc2dpZCAiZmllbGQgbmFtZSB0byBzb3J0IG9uIgotbXNnc3RyICJub20gZGVsIGNhbXAgZW4gZWwgcXVhbCBvcmRlbmFyIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzMyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQzIGJ1aWx0aW4vbm90ZXMuYzo0MTUKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0MTggYnVpbHRpbi9ub3Rlcy5jOjU3OCBidWlsdGluL25vdGVzLmM6NTgxCi0jOiBidWlsdGluL3RhZy5jOjQxOAorIzogYnVpbHRpbi9icmFuY2guYzo2NTcgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MiBidWlsdGluL25vdGVzLmM6NDE1CisjOiBidWlsdGluL25vdGVzLmM6NDE4IGJ1aWx0aW4vbm90ZXMuYzo1ODEgYnVpbHRpbi9ub3Rlcy5jOjU4NAorIzogYnVpbHRpbi90YWcuYzo0MzMKIG1zZ2lkICJvYmplY3QiCiBtc2dzdHIgIm9iamVjdGUiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM0CisjOiBidWlsdGluL2JyYW5jaC5jOjY1OAogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgb2YgdGhlIG9iamVjdCIKIG1zZ3N0ciAiaW1wcmltZWl4IG5vbcOpcyBsZXMgYnJhbnF1ZXMgZGUgbCdvYmplY3RlIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzNiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ5IGJ1aWx0aW4vdGFnLmM6NDI1CisjOiBidWlsdGluL2JyYW5jaC5jOjY2MCBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ4IGJ1aWx0aW4vdGFnLmM6NDQwCiBtc2dpZCAic29ydGluZyBhbmQgZmlsdGVyaW5nIGFyZSBjYXNlIGluc2Vuc2l0aXZlIgogbXNnc3RyICJsJ29yZGVuYWNpw7MgaSBlbCBmaWx0cmF0Z2UgZGlzdGluZ2VpeGVuIGVudHJlIG1hasO6c2N1bGVzIGkgbWluw7pzY3VsZXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzggYnVpbHRpbi90YWcuYzo0MjMKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM5CisjOiBidWlsdGluL2JyYW5jaC5jOjY2MSBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4IGJ1aWx0aW4vdGFnLmM6NDM4CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzozOAogbXNnaWQgImZvcm1hdCB0byB1c2UgZm9yIHRoZSBvdXRwdXQiCiBtc2dzdHIgImZvcm1hdCBhIHVzYXIgZW4gbGEgc29ydGlkYSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2NjAgYnVpbHRpbi9jbG9uZS5jOjczOQorIzogYnVpbHRpbi9icmFuY2guYzo2ODQgYnVpbHRpbi9jbG9uZS5jOjc4NAogbXNnaWQgIkhFQUQgbm90IGZvdW5kIGJlbG93IHJlZnMvaGVhZHMhIgogbXNnc3RyICJIRUFEIG5vIHRyb2JhdCBzb3RhIHJlZnMvaGVhZHMhIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjY4MworIzogYnVpbHRpbi9icmFuY2guYzo3MDgKIG1zZ2lkICItLWNvbHVtbiBhbmQgLS12ZXJib3NlIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0tY29sdW1uIGkgLS12ZXJib3NlIHPDs24gaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2OTggYnVpbHRpbi9icmFuY2guYzo3NDkgYnVpbHRpbi9icmFuY2guYzo3NTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzIzIGJ1aWx0aW4vYnJhbmNoLmM6Nzc3IGJ1aWx0aW4vYnJhbmNoLmM6Nzg2CiBtc2dpZCAiYnJhbmNoIG5hbWUgcmVxdWlyZWQiCiBtc2dzdHIgImNhbCBlbCBub20gZGUgYnJhbmNhIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjcyNQorIzogYnVpbHRpbi9icmFuY2guYzo3NTMKIG1zZ2lkICJDYW5ub3QgZ2l2ZSBkZXNjcmlwdGlvbiB0byBkZXRhY2hlZCBIRUFEIgogbXNnc3RyICJObyBlcyBwb3QgZG9uYXIgZGVzY3JpcGNpw7MgYSB1biBIRUFEIHNlcGFyYXQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzMwCisjOiBidWlsdGluL2JyYW5jaC5jOjc1OAogbXNnaWQgImNhbm5vdCBlZGl0IGRlc2NyaXB0aW9uIG9mIG1vcmUgdGhhbiBvbmUgYnJhbmNoIgogbXNnc3RyICJubyBlcyBwb3QgZWRpdGFyIGxhIGRlc2NyaXBjacOzIGRlIG3DqXMgZCd1bmEgYnJhbmNhIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjczNworIzogYnVpbHRpbi9icmFuY2guYzo3NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gY29tbWl0IG9uIGJyYW5jaCAnJXMnIHlldC4iCiBtc2dzdHIgIkVuY2FyYSBubyBoaSBoYSBjYXAgY29taXNzacOzIGVuIGxhIGJyYW5jYSDCqyVzwrsuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc0MAorIzogYnVpbHRpbi9icmFuY2guYzo3NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gYnJhbmNoIG5hbWVkICclcycuIgogbXNnc3RyICJObyBoaSBoYSBjYXAgYnJhbmNhIGFtYiBub20gwqslc8K7LiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NTUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzgzCiBtc2dpZCAidG9vIG1hbnkgYnJhbmNoZXMgZm9yIGEgY29weSBvcGVyYXRpb24iCiBtc2dzdHIgImhpIGhhIG1hc3NhIGJyYW5xdWVzIHBlciBhIHVuYSBvcGVyYWNpw7MgZGUgY8OycGlhIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc2NAorIzogYnVpbHRpbi9icmFuY2guYzo3OTIKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgZm9yIGEgcmVuYW1lIG9wZXJhdGlvbiIKIG1zZ3N0ciAiaGkgaGEgbWFzc2EgYXJndW1lbnRzIHBlciBhIHVuYSBvcGVyYWNpw7MgcmVtb3RhIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc2OQorIzogYnVpbHRpbi9icmFuY2guYzo3OTcKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgdG8gc2V0IG5ldyB1cHN0cmVhbSIKIG1zZ3N0ciAiaGkgaGEgbWFzc2EgYXJndW1lbnRzIHBlciBhIGVzdGFibGlyIHVuYSBub3ZhIGZvbnQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzczCisjOiBidWlsdGluL2JyYW5jaC5jOjgwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY291bGQgbm90IHNldCB1cHN0cmVhbSBvZiBIRUFEIHRvICVzIHdoZW4gaXQgZG9lcyBub3QgcG9pbnQgdG8gYW55IGJyYW5jaC4iCiBtc2dzdHIgIiIKICJubyBzJ2hhIHBvZ3V0IGVzdGFibGlyIGxhIGZvbnQgZGUgSEVBRCBjb20gYSAlcyBxdWFuIG5vIGFzc2VueWFsYSBjYXAgYnJhbmNhLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NzYgYnVpbHRpbi9icmFuY2guYzo3OTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODA0IGJ1aWx0aW4vYnJhbmNoLmM6ODI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggYnJhbmNoICclcyciCi1tc2dzdHIgIm5vIGhpIGhhIHRhbCBicmFuY2Egwqslc8K7IgorbXNnc3RyICJubyBleGlzdGVpeCBsYSBicmFuY2Egwqslc8K7IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc4MAorIzogYnVpbHRpbi9icmFuY2guYzo4MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYnJhbmNoICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgImxhIGJyYW5jYSDCqyVzwrsgbm8gZXhpc3RlaXgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzkyCisjOiBidWlsdGluL2JyYW5jaC5jOjgyMQogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyB0byB1bnNldCB1cHN0cmVhbSIKIG1zZ3N0ciAiaGkgaGEgbWFzc2EgYXJndW1lbnRzIHBlciBhIGRlc2Fzc2lnbmFyIGxhIGZvbnQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzk2CisjOiBidWlsdGluL2JyYW5jaC5jOjgyNQogbXNnaWQgImNvdWxkIG5vdCB1bnNldCB1cHN0cmVhbSBvZiBIRUFEIHdoZW4gaXQgZG9lcyBub3QgcG9pbnQgdG8gYW55IGJyYW5jaC4iCiBtc2dzdHIgIiIKICJubyBzJ2hhIHBvZ3V0IGRlc2Fzc2lnbmFyIGxhIGZvbnQgZGUgSEVBRCBwZXJxdcOoIG5vIGFzc2VueWFsYSBjYXAgYnJhbmNhLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MDIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIGhhcyBubyB1cHN0cmVhbSBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiTGEgYnJhbmNhIMKrJXPCuyBubyB0w6kgaW5mb3JtYWNpw7MgZGUgZm9udCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MTIKLW1zZ2lkICItYSBhbmQgLXIgb3B0aW9ucyB0byAnZ2l0IGJyYW5jaCcgZG8gbm90IG1ha2Ugc2Vuc2Ugd2l0aCBhIGJyYW5jaCBuYW1lIgorIzogYnVpbHRpbi9icmFuY2guYzo4NDEKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoZSAtYSwgYW5kIC1yLCBvcHRpb25zIHRvICdnaXQgYnJhbmNoJyBkbyBub3QgdGFrZSBhIGJyYW5jaCBuYW1lLlxuIgorIkRpZCB5b3UgbWVhbiB0byB1c2U6IC1hfC1yIC0tbGlzdCA8cGF0dGVybj4/IgogbXNnc3RyICIiCiAibGVzIG9wY2lvbnMgLWEgaSAtciBhICdnaXQgYnJhbmNoJyBubyB0ZW5lbiBzZW50aXQgYW1iIHVuIG5vbSBkZSBicmFuY2EiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6ODE1CisjOiBidWlsdGluL2JyYW5jaC5jOjg0NQogbXNnaWQgIiIKICJ0aGUgJy0tc2V0LXVwc3RyZWFtJyBvcHRpb24gaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZC4gUGxlYXNlIHVzZSAnLS10cmFjaycgb3IgIgogIictLXNldC11cHN0cmVhbS10bycgaW5zdGVhZC4iCkBAIC04NDUyLDIwICsxMDQ0MSw2OCBAQAogIkwnb3BjacOzIC0tc2V0LXVwc3RyZWFtIGphIG5vIGVzdMOgIHN1cG9ydGFkYS4gVXNldSBlbiBjb21wdGVzIC0tdHJhY2sgbyAtLXNldC0iCiAidXBzdHJlYW0tdG8uIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjQ1CisjOiBidWlsdGluL2J1bmRsZS5jOjE1IGJ1aWx0aW4vYnVuZGxlLmM6MjMKKyMsIGZ1enp5Cittc2dpZCAiZ2l0IGJ1bmRsZSBjcmVhdGUgWzxvcHRpb25zPl0gPGZpbGU+IDxnaXQtcmV2LWxpc3QgYXJncz4iCittc2dzdHIgImdpdCByZW1vdGUgYWRkIFs8b3BjaW9ucz5dIDxub20+IDx1cmw+IgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE2IGJ1aWx0aW4vYnVuZGxlLmM6MjgKKyMsIGZ1enp5Cittc2dpZCAiZ2l0IGJ1bmRsZSB2ZXJpZnkgWzxvcHRpb25zPl0gPGZpbGU+IgorbXNnc3RyICJnaXQgcm0gWzxvcGNpb25zPl0gWy0tXSA8Zml0eGVyPi4uLiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxNyBidWlsdGluL2J1bmRsZS5jOjMzCittc2dpZCAiZ2l0IGJ1bmRsZSBsaXN0LWhlYWRzIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE4IGJ1aWx0aW4vYnVuZGxlLmM6MzgKK21zZ2lkICJnaXQgYnVuZGxlIHVuYnVuZGxlIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjY2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIyOAorbXNnaWQgImRvIG5vdCBzaG93IHByb2dyZXNzIG1ldGVyIgorbXNnc3RyICJubyBtb3N0cmlzIGwnaW5kaWNhZG9yIGRlIHByb2dyw6lzIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjY4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIzMAorbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIiCittc2dzdHIgIm1vc3RyYSBsJ2luZGljYWRvciBkZSBwcm9ncsOpcyIKKworIzogYnVpbHRpbi9idW5kbGUuYzo3MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMzIKK21zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKK21zZ3N0ciAibW9zdHJhIGwnaW5kaWNhZG9yIGRlIHByb2dyw6lzIGR1cmFudCBsYSBmYXNlIGQnZXNjcmlwdHVyYSBkJ29iamVjdGVzIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjczIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIzNQorbXNnaWQgInNpbWlsYXIgdG8gLS1hbGwtcHJvZ3Jlc3Mgd2hlbiBwcm9ncmVzcyBtZXRlciBpcyBzaG93biIKK21zZ3N0ciAic2ltaWxhciBhIC0tYWxsLXByb2dyZXNzIHF1YW4gbCdpbmRpY2Fkb3IgZGUgcHJvZ3LDqXMgZXMgbW9zdHJhIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjkzCittc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKK21zZ3N0ciAiQ2FsIHVuIGRpcMOyc2l0IHBlciBhIGZlciB1biBmYXJjZWxsLiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxMDQKKyMsIGZ1enp5Cittc2dpZCAiZG8gbm90IHNob3cgYnVuZGxlIGRldGFpbHMiCittc2dzdHIgIm5vIG1vc3RyaXMgbGVzIGV0aXF1ZXRlcyBwZWxhZGVzIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjExOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBva2F5XG4iCiBtc2dzdHIgIiVzIGVzdMOgIGLDqVxuIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjU4Ci1tc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKLW1zZ3N0ciAiQ2FsIHVuIGRpcMOyc2l0IHBlciBhIGZlciB1biBmYXJjZWxsLiIKLQotIzogYnVpbHRpbi9idW5kbGUuYzo2MgorIzogYnVpbHRpbi9idW5kbGUuYzoxNjAKIG1zZ2lkICJOZWVkIGEgcmVwb3NpdG9yeSB0byB1bmJ1bmRsZS4iCiBtc2dzdHIgIkNhbCB1biBkaXDDsnNpdCBwZXIgYSBkZXNmZXIgdW4gZmFyY2VsbC4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1ODcKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTY4IGJ1aWx0aW4vcmVtb3RlLmM6MTYwOQorbXNnaWQgImJlIHZlcmJvc2U7IG11c3QgYmUgcGxhY2VkIGJlZm9yZSBhIHN1YmNvbW1hbmQiCittc2dzdHIgInNpZ3VlcyBkZXRhbGxhdDsgcydoYSBkZSBjb2zCt2xvY2FyIGFiYW5zIGQndW4gc3Vib3JkcmUiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTkwIGJ1aWx0aW4vcmVtb3RlLmM6MTY0MAorIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHN1YmNvbW1hbmQ6ICVzIgorbXNnc3RyICJTdWJvcmRyZSBkZXNjb25lZ3VkYTogJXMiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1OTUKIG1zZ2lkICIiCiAiZ2l0IGNhdC1maWxlICgtdCBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1lIHwgLSIKICJwIHwgPHR5cGU+IHwgLS10ZXh0Y29udiB8IC0tZmlsdGVycykgWy0tcGF0aD08cGF0aD5dIDxvYmplY3Q+IgpAQCAtODQ3Myw3ICsxMDUxMCw3IEBACiAiZ2l0IGNhdC1maWxlICgtdCBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1lIHwgLSIKICJwIHwgPHRpcHVzPiB8IC0tdGV4dGNvbnYgfCAtLWZpbHRlcnMgWy0tcGF0aD08Y2Ftw60+XSkgPG9iamVjdGU+IgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NTg4CisjOiBidWlsdGluL2NhdC1maWxlLmM6NTk2CiBtc2dpZCAiIgogImdpdCBjYXQtZmlsZSAoLS1iYXRjaCB8IC0tYmF0Y2gtY2hlY2spIFstLWZvbGxvdy1zeW1saW5rc10gWy0tdGV4dGNvbnYgfCAtLSIKICJmaWx0ZXJzXSIKQEAgLTg0ODEsMTM2ICsxMDUxOCwxMzYgQEAKICJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCiAiZmlsdGVyc10iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MDkKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MTcKICMsIGZ1enp5CiBtc2dpZCAib25seSBvbmUgYmF0Y2ggb3B0aW9uIG1heSBiZSBzcGVjaWZpZWQiCiBtc2dzdHIgIkNhcCBub20gZGUgYnJhbmNhIGVzcGVjaWZpY2F0IgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjI3CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM1CiBtc2dpZCAiPHR5cGU+IGNhbiBiZSBvbmUgb2Y6IGJsb2IsIHRyZWUsIGNvbW1pdCwgdGFnIgogbXNnc3RyICI8dGlwdXM+IHBvdCBzZXIgdW4gZGU6IGJsb2IsIHRyZWUsIGNvbW1pdCwgdGFnIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjI4CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM2CiBtc2dpZCAic2hvdyBvYmplY3QgdHlwZSIKIG1zZ3N0ciAibW9zdHJhIGVsIHRpcHVzIGRlIGwnb2JqZWN0ZSIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYyOQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNwogbXNnaWQgInNob3cgb2JqZWN0IHNpemUiCiBtc2dzdHIgIm1vc3RyYSBsYSBtaWRhIGRlIGwnb2JqZWN0ZSIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzMQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzOQogbXNnaWQgImV4aXQgd2l0aCB6ZXJvIHdoZW4gdGhlcmUncyBubyBlcnJvciIKIG1zZ3N0ciAic3VydCBhbWIgemVybyBxdWFuIG5vIGhpIGhhIGVycm9yIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjMyCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQwCiBtc2dpZCAicHJldHR5LXByaW50IG9iamVjdCdzIGNvbnRlbnQiCiBtc2dzdHIgImltcHJpbWVpeCBiZWxsYW1lbnQgZWwgY29udGluZ3V0IGRlIGwnb2JqZWN0ZSIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MgogbXNnaWQgImZvciBibG9iIG9iamVjdHMsIHJ1biB0ZXh0Y29udiBvbiBvYmplY3QncyBjb250ZW50IgogbXNnc3RyICJlbiBlbHMgb2JqZWN0ZXMgZGUgYmxvYiwgZXhlY3V0YSB0ZXh0Y29udiBlbiBlbCBjb250aW5ndXQgZGUgbCdvYmplY3RlIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM2CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ0CiBtc2dpZCAiZm9yIGJsb2Igb2JqZWN0cywgcnVuIGZpbHRlcnMgb24gb2JqZWN0J3MgY29udGVudCIKIG1zZ3N0ciAiIgogImVuIGVscyBvYmplY3RlcyBkZSBibG9iLCBleGVjdXRhIGVscyBmaWx0cmVzIGVuIGVsIGNvbnRpbmd1dCBkZSBsJ29iamVjdGUiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzcgZ2l0LXN1Ym1vZHVsZS5zaDo4NTcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDUgZ2l0LXN1Ym1vZHVsZS5zaDo5OTIKIG1zZ2lkICJibG9iIgogbXNnc3RyICJibG9iIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM4CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ2CiBtc2dpZCAidXNlIGEgc3BlY2lmaWMgcGF0aCBmb3IgLS10ZXh0Y29udi8tLWZpbHRlcnMiCiBtc2dzdHIgInVzYSB1biBjYW3DrSBlc3BlY8OtZmljIHBlciBhIC0tdGV4dGNvbnYvLS1maWx0ZXJzIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjQwCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ4CiBtc2dpZCAiYWxsb3cgLXMgYW5kIC10IHRvIHdvcmsgd2l0aCBicm9rZW4vY29ycnVwdCBvYmplY3RzIgogbXNnc3RyICJwZXJtZXQgcXVlIC1zIGkgLXQgZnVuY2lvbmluIGFtYiBvYmplY3RlcyB0cmVuY2F0cy9tYWxtZXNvcyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0OQogbXNnaWQgImJ1ZmZlciAtLWJhdGNoIG91dHB1dCIKIG1zZ3N0ciAicG9zYSBsYSBzb3J0aWRhIGRlIC0tYmF0Y2ggZW4gbWVtw7JyaWEgaW50ZXJtw6hkaWEiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDMKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTEKIG1zZ2lkICJzaG93IGluZm8gYW5kIGNvbnRlbnQgb2Ygb2JqZWN0cyBmZWQgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgIiIKICJtb3N0cmEgbGEgaW5mb3JtYWNpw7MgaSBjb250aW5ndXQgZGVscyBvYmplY3RlcyByZWJ1dHMgZGUgbCdlbnRyYWRhIGVzdMOgbmRhcmQiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTUKIG1zZ2lkICJzaG93IGluZm8gYWJvdXQgb2JqZWN0cyBmZWQgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgIm1vc3RyYSBpbmZvcm1hY2nDsyBzb2JyZSBlbHMgb2JqZWN0ZXMgcmVidXRzIGRlIGwnZW50cmFkYSBlc3TDoG5kYXJkIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjUxCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjU5CiBtc2dpZCAiZm9sbG93IGluLXRyZWUgc3ltbGlua3MgKHVzZWQgd2l0aCAtLWJhdGNoIG9yIC0tYmF0Y2gtY2hlY2spIgogbXNnc3RyICIiCiAic2VndWVpeCBlbHMgZW5sbGHDp29zIHNpbWLDsmxpY3MgZW4gbCdhcmJyZSAocyd1c2EgYW1iIC0tYmF0Y2ggbyAtLWJhdGNoLWNoZWNrKSIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1MworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY2MQogbXNnaWQgInNob3cgYWxsIG9iamVjdHMgd2l0aCAtLWJhdGNoIG9yIC0tYmF0Y2gtY2hlY2siCiBtc2dzdHIgIm1vc3RyYSB0b3RzIGVscyBvYmplY3RlcyBhbWIgLS1iYXRjaCBvIC0tYmF0Y2gtY2hlY2siCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTUKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NjMKIG1zZ2lkICJkbyBub3Qgb3JkZXIgLS1iYXRjaC1hbGwtb2JqZWN0cyBvdXRwdXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTIKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjEzCiBtc2dpZCAiZ2l0IGNoZWNrLWF0dHIgWy1hIHwgLS1hbGwgfCA8YXR0cj4uLi5dIFstLV0gPHBhdGhuYW1lPi4uLiIKIG1zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgWy1hIHwgLS1hbGwgfCA8YXRyaWJ1dD4uLi5dIFstLV0gPG5vbS1kZS1jYW3DrT4uLi4iCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjEzCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxNAogbXNnaWQgImdpdCBjaGVjay1hdHRyIC0tc3RkaW4gWy16XSBbLWEgfCAtLWFsbCB8IDxhdHRyPi4uLl0iCiBtc2dzdHIgImdpdCBjaGVjay1hdHRyIC0tc3RkaW4gWy16XSBbLWEgfCAtLWFsbCB8IDxhdHJpYnV0Pi4uLl0iCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIwCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMQogbXNnaWQgInJlcG9ydCBhbGwgYXR0cmlidXRlcyBzZXQgb24gZmlsZSIKIG1zZ3N0ciAiaW5mb3JtYSBkZSB0b3RzIGVscyBhdHJpYnV0cyBlc3RhYmxlcnRzIGVuIGVsIGZpdHhlciIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjEKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIyCiBtc2dpZCAidXNlIC5naXRhdHRyaWJ1dGVzIG9ubHkgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgInVzYSAuZ2l0YXR0cmlidXRlcyBub23DqXMgZGVzIGRlIGwnw61uZGV4IgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI0IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDEKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIzIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjUgYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMgogbXNnaWQgInJlYWQgZmlsZSBuYW1lcyBmcm9tIHN0ZGluIgogbXNnc3RyICJsbGVnZWl4IGVscyBub21zIGRlIGZpdHhlciBkZSBzdGRpbiIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjQgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNgorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjUgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNwogbXNnaWQgInRlcm1pbmF0ZSBpbnB1dCBhbmQgb3V0cHV0IHJlY29yZHMgYnkgYSBOVUwgY2hhcmFjdGVyIgogbXNnc3RyICJhY2FiYSBlbHMgcmVnaXN0cmVzIGQnZW50cmFkYSBpIGRlIHNvcnRpZGEgYW1iIHVuIGNhcsOgY3RlciBOVUwiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjAgYnVpbHRpbi9jaGVja291dC5jOjEyMzQgYnVpbHRpbi9nYy5jOjUxNwotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NQorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyMSBidWlsdGluL2NoZWNrb3V0LmM6MTQzNSBidWlsdGluL2djLmM6NTM3CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTA2CiBtc2dpZCAic3VwcHJlc3MgcHJvZ3Jlc3MgcmVwb3J0aW5nIgogbXNnc3RyICJvbWV0IGVscyBpbmZvcm1lcyBkZSBwcm9ncsOpcyIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOQogbXNnaWQgInNob3cgbm9uLW1hdGNoaW5nIGlucHV0IHBhdGhzIgogbXNnc3RyICJtb3N0cmEgZWxzIGNhbWlucyBkJ2VudHJhZGEgcXVlIG5vIGNvaW5jaWRlaXhpbiIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzozMAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzozMQogbXNnaWQgImlnbm9yZSBpbmRleCB3aGVuIGNoZWNraW5nIgogbXNnc3RyICJpZ25vcmEgbCfDrW5kZXggZW4gY29tcHJvdmFyIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE1OQorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjAKIG1zZ2lkICJjYW5ub3Qgc3BlY2lmeSBwYXRobmFtZXMgd2l0aCAtLXN0ZGluIgogbXNnc3RyICJubyBlcyBwb2RlbiBlc3BlY2lmaWNhciBub21zIGRlIGNhbcOtIGFtYiAtLXN0ZGluIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2MgorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjMKIG1zZ2lkICIteiBvbmx5IG1ha2VzIHNlbnNlIHdpdGggLS1zdGRpbiIKIG1zZ3N0ciAiLXogbm9tw6lzIHTDqSBzZW50aXQgYW1iIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY0CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2NQogbXNnaWQgIm5vIHBhdGggc3BlY2lmaWVkIgogbXNnc3RyICJjYXAgY2Ftw60gZXNwZWNpZmljYXQiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY4CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2OQogbXNnaWQgIi0tcXVpZXQgaXMgb25seSB2YWxpZCB3aXRoIGEgc2luZ2xlIHBhdGhuYW1lIgogbXNnc3RyICItLXF1aWV0IG5vbcOpcyDDqXMgdsOgbGlkIGFtYiB1biBzb2wgbm9tIGRlIGNhbcOtIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3MAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzEKIG1zZ2lkICJjYW5ub3QgaGF2ZSBib3RoIC0tcXVpZXQgYW5kIC0tdmVyYm9zZSIKIG1zZ3N0ciAibm8gZXMgcG9kZW4gZXNwZWNpZmljYXIgLS1xdWlldCBpIC0tdmVyYm9zZSBhbGhvcmEiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTczCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3NAogbXNnaWQgIi0tbm9uLW1hdGNoaW5nIGlzIG9ubHkgdmFsaWQgd2l0aCAtLXZlcmJvc2UiCiBtc2dzdHIgIi0tbm9uLW1hdGNoaW5nIMOpcyB2w6BsaWQgbm9tw6lzIGFtYiAtLXZlcmJvc2UiCiAKQEAgLTg2MzEsNTUgKzEwNjY4LDU1IEBACiBtc2dpZCAibm8gY29udGFjdHMgc3BlY2lmaWVkIgogbXNnc3RyICJubyBoaSBoYSBjb250YWN0ZXMgZXNwZWNpZmljYXRzIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTI4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTMxCiBtc2dpZCAiZ2l0IGNoZWNrb3V0LWluZGV4IFs8b3B0aW9ucz5dIFstLV0gWzxmaWxlPi4uLl0iCiBtc2dzdHIgImdpdCBjaGVja291dC1pbmRleCBbPG9wY2lvbnM+XSBbLS1dIFs8Zml0eGVyPi4uLl0iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNDUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNDgKIG1zZ2lkICJzdGFnZSBzaG91bGQgYmUgYmV0d2VlbiAxIGFuZCAzIG9yIGFsbCIKIG1zZ3N0ciAiwqtzdGFnZcK7IGhhIGRlIHNlciBlbnRyZSAxIGkgMyBvIGFsbCIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2MQorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NAogbXNnaWQgImNoZWNrIG91dCBhbGwgZmlsZXMgaW4gdGhlIGluZGV4IgogbXNnc3RyICJhZ2FmYSB0b3RzIGVscyBmaXR4ZXJzIGVuIGwnw61uZGV4IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTYyCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY1CiBtc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGV4aXN0aW5nIGZpbGVzIgogbXNnc3RyICJmb3LDp2EgbGEgc29icmVlc2NyaXB0dXJhIGRlIGZpdHhlcnMgZXhpc3RlbnRzIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY0CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY3CiBtc2dpZCAibm8gd2FybmluZyBmb3IgZXhpc3RpbmcgZmlsZXMgYW5kIGZpbGVzIG5vdCBpbiBpbmRleCIKIG1zZ3N0ciAiIgogImNhcCBhZHZlcnTDqG5jaWEgcGVyIGEgZml0eGVycyBleGlzdGVudHMgaSBmaXR4ZXJzIHF1ZSBubyBzaWd1aW4gYSBsJ8OtbmRleCIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2OQogbXNnaWQgImRvbid0IGNoZWNrb3V0IG5ldyBmaWxlcyIKIG1zZ3N0ciAibm8gYWdhZmlzIGZpdHhlcnMgbm91cyIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2OAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3MQogbXNnaWQgInVwZGF0ZSBzdGF0IGluZm9ybWF0aW9uIGluIHRoZSBpbmRleCBmaWxlIgogbXNnc3RyICJhY3R1YWxpdHphIGxhIGluZm9ybWFjacOzIGQnZXN0YWTDrXN0aXF1ZXMgZW4gZWwgZml0eGVyIGQnw61uZGV4IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcyCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc1CiBtc2dpZCAicmVhZCBsaXN0IG9mIHBhdGhzIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJsbGVnZWl4IGxhIGxsaXN0YSBkZSBjYW1pbnMgZGVzIGRlIGwnZW50cmFkYSBlc3TDoG5kYXJkIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc0CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc3CiBtc2dpZCAid3JpdGUgdGhlIGNvbnRlbnQgdG8gdGVtcG9yYXJ5IGZpbGVzIgogbXNnc3RyICJlc2NyaXUgZWwgY29udGluZ3V0IGEgZml0eGVycyB0ZW1wb3JhbHMiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzUgYnVpbHRpbi9jb2x1bW4uYzozMQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzEKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODUzCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjY4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc4IGJ1aWx0aW4vY29sdW1uLmM6MzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzg1IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzg4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg4MgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY3OQogbXNnaWQgInN0cmluZyIKIG1zZ3N0ciAiY2FkZW5hIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc2CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc5CiBtc2dpZCAid2hlbiBjcmVhdGluZyBmaWxlcywgcHJlcGVuZCA8c3RyaW5nPiIKIG1zZ3N0ciAiZW4gY3JlYXIgZml0eGVycywgYW50ZXBvc2EgPGNhZGVuYT4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxODEKIG1zZ2lkICJjb3B5IG91dCB0aGUgZmlsZXMgZnJvbSBuYW1lZCBzdGFnZSIKIG1zZ3N0ciAiY29waWEgZWxzIGZpdHhlcnMgZGVzIGRlIMKrc3RhZ2XCuyBhbWIgbm9tIgogCkBAIC04NjkxLDEwNiArMTA3MjgsMTU5IEBACiBtc2dpZCAiZ2l0IGNoZWNrb3V0IFs8b3B0aW9ucz5dIFs8YnJhbmNoPl0gLS0gPGZpbGU+Li4uIgogbXNnc3RyICJnaXQgY2hlY2tvdXQgWzxvcGNpb25zPl0gWzxicmFuY2E+XSAtLSA8Zml0eGVyPi4uLiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjE0NCBidWlsdGluL2NoZWNrb3V0LmM6MTc3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzcKKyMsIGZ1enp5Cittc2dpZCAiZ2l0IHN3aXRjaCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIgorbXNnc3RyICJnaXQgY2hlY2tvdXQgWzxvcGNpb25zPl0gPGJyYW5jYT4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MgorIywgZnV6enkKK21zZ2lkICJnaXQgcmVzdG9yZSBbPG9wdGlvbnM+XSBbLS1zb3VyY2U9PGJyYW5jaD5dIDxmaWxlPi4uLiIKK21zZ3N0ciAiZ2l0IGNoZWNrb3V0IFs8b3BjaW9ucz5dIFs8YnJhbmNhPl0gLS0gPGZpdHhlcj4uLi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzUgYnVpbHRpbi9jaGVja291dC5jOjIxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSBvdXIgdmVyc2lvbiIKIG1zZ3N0ciAiZWwgY2Ftw60gwqslc8K7IG5vIHTDqSBsYSBub3N0cmEgdmVyc2nDsyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjE0NiBidWlsdGluL2NoZWNrb3V0LmM6MTc5CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgdGhlaXIgdmVyc2lvbiIKIG1zZ3N0ciAiZWwgY2Ftw60gwqslc8K7IG5vIHTDqSBsYSBzZXZhIHZlcnNpw7MiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgYWxsIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKIG1zZ3N0ciAiZWwgY2Ftw60gwqslc8K7IG5vIHTDqSB0b3RlcyBsZXMgdmVyc2lvbnMgbmVjZXNzw6ByaWVzIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjA2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjQzCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKIG1zZ3N0ciAiZWwgY2Ftw60gwqslc8K7IG5vIHTDqSBsZXMgdmVyc2lvbnMgbmVjZXNzw6ByaWVzIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjI0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJzogY2Fubm90IG1lcmdlIgogbXNnc3RyICJjYW3DrSDCqyVzwrs6IG5vIGVzIHBvdCBmdXNpb25hciIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjI0MAorIzogYnVpbHRpbi9jaGVja291dC5jOjI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gYWRkIG1lcmdlIHJlc3VsdCBmb3IgJyVzJyIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBhZmVnaXIgZWwgcmVzdWx0YXQgZGUgZnVzacOzIHBlciBhIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjI2MiBidWlsdGluL2NoZWNrb3V0LmM6MjY1IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNjgKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlJlY3JlYXRlZCAlZCBtZXJnZSBjb25mbGljdCIKK21zZ2lkX3BsdXJhbCAiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0cyIKK21zZ3N0clswXSAiZXRpcXVldGEgZGUgZnVzacOzIGluY29ycmVjdGEgZW4gbGEgY29taXNzacOzIMKrJXPCuyIKK21zZ3N0clsxXSAiZXRpcXVldGEgZGUgZnVzacOzIGluY29ycmVjdGEgZW4gbGEgY29taXNzacOzIMKrJXPCuyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRlZCAlZCBwYXRoIGZyb20gJXMiCittc2dpZF9wbHVyYWwgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSAlcyIKK21zZ3N0clswXSAiYWN0dWFsaXR6YXQgJWQgY2Ftw61cbiIKK21zZ3N0clsxXSAiYWN0dWFsaXR6YXRzICVkIGNhbWluc1xuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mzg5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0ZWQgJWQgcGF0aCBmcm9tIHRoZSBpbmRleCIKK21zZ2lkX3BsdXJhbCAiVXBkYXRlZCAlZCBwYXRocyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0clswXSAiUydoYSBhY3R1YWxpdHphdCB1biBjYW3DrSBkZXMgZGUgbCfDrW5kZXgiCittc2dzdHJbMV0gIlMnaGEgYWN0dWFsaXR6YXQgJWQgY2FtaW5zIGRlcyBkZSBsJ8OtbmRleCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQxMiBidWlsdGluL2NoZWNrb3V0LmM6NDE1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHVwZGF0aW5nIHBhdGhzIgogbXNnc3RyICLCqyVzwrsgbm8gZXMgcG90IHVzYXIgYW1iIGFjdHVhbGl0emFjacOzIGRlIGNhbWlucyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjI3NCBidWlsdGluL2NoZWNrb3V0LmM6Mjc3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDI1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgogbXNnc3RyICLCqyVzwrsgbm8gZXMgcG90IHVzYXIgYW1iICVzIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjgwCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCB1cGRhdGUgcGF0aHMgYW5kIHN3aXRjaCB0byBicmFuY2ggJyVzJyBhdCB0aGUgc2FtZSB0aW1lLiIKIG1zZ3N0ciAiIgogIk5vIGVzIHBvZGVuIGFjdHVhbGl0emFyIGVscyBjYW1pbnMgaSBjYW52aWFyIGEgbGEgYnJhbmNhIMKrJXPCuyBhIGxhIHZlZ2FkYS4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNDkgYnVpbHRpbi9jaGVja291dC5jOjM1NgorIzogYnVpbHRpbi9jaGVja291dC5jOjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICJuZWl0aGVyICclcycgb3IgJyVzJyBpcyBzcGVjaWZpZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBtdXN0IGJlIHVzZWQgd2hlbiAnJXMnIGlzIG5vdCBzcGVjaWZpZWQiCittc2dzdHIgIsKrJXPCuyBubyBlcyBwb3QgdXNhciBhbWIgwqslc8K7IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDQ1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgb3IgJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgorbXNnc3RyICIlczogJXMgbm8gZXMgcG90IHVzYXIgYW1iICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTA5IGJ1aWx0aW4vY2hlY2tvdXQuYzo1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGlzIHVubWVyZ2VkIgogbXNnc3RyICJlbCBjYW3DrSDCqyVzwrsgZXN0w6Agc2Vuc2UgZnVzaW9uYXIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2MDgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2ODIgYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo4MgogbXNnaWQgInlvdSBuZWVkIHRvIHJlc29sdmUgeW91ciBjdXJyZW50IGluZGV4IGZpcnN0IgogbXNnc3RyICJoZXUgZGUgcHJpbWVyIHJlc29sZHJlIGVsIHZvc3RyZSDDrW5kZXggYWN0dWFsIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NzQ1CisjOiBidWlsdGluL2NoZWNrb3V0LmM6NzMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjYW5ub3QgY29udGludWUgd2l0aCBzdGFnZWQgY2hhbmdlcyBpbiB0aGUgZm9sbG93aW5nIGZpbGVzOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2FuIG5vdCBkbyByZWZsb2cgZm9yICclcyc6ICVzXG4iCiBtc2dzdHIgIk5vIGVzIHBvdCBmZXIgcmVmbG9nIHBlciBhIMKrJXPCuzogJXNcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc4NgorIzogYnVpbHRpbi9jaGVja291dC5jOjg3NwogbXNnaWQgIkhFQUQgaXMgbm93IGF0IgogbXNnc3RyICJIRUFEIGFyYSDDqXMgYSIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc5MCBidWlsdGluL2Nsb25lLmM6NjkyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODgxIGJ1aWx0aW4vY2xvbmUuYzo3MTYKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIEhFQUQiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYWN0dWFsaXR6YXIgSEVBRCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc5NAorIzogYnVpbHRpbi9jaGVja291dC5jOjg4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZXNldCBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICJSZXN0YWJsZWl4IGxhIGJyYW5jYSDCqyVzwrtcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc5NworIzogYnVpbHRpbi9jaGVja291dC5jOjg4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJBbHJlYWR5IG9uICclcydcbiIKIG1zZ3N0ciAiSmEgZW4gwqslc8K7XG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3dpdGNoZWQgdG8gYW5kIHJlc2V0IGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIlMnaGEgY2FudmlhdCBpIHJlc3RhYmxlcnQgYSBsYSBicmFuY2Egwqslc8K7XG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDMgYnVpbHRpbi9jaGVja291dC5jOjExNjYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTQgYnVpbHRpbi9jaGVja291dC5jOjEyOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3dpdGNoZWQgdG8gYSBuZXcgYnJhbmNoICclcydcbiIKIG1zZ3N0ciAiUydoYSBjYW52aWF0IGEgbGEgYnJhbmNhIG5vdmEgwqslc8K7XG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3dpdGNoZWQgdG8gYnJhbmNoICclcydcbiIKIG1zZ3N0ciAiUydoYSBjYW52aWF0IGEgbGEgYnJhbmNhIMKrJXPCu1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODU2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAuLi4gYW5kICVkIG1vcmUuXG4iCiBtc2dzdHIgIiAuLi4gaSAlZCBtw6lzLlxuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODYyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJXYXJuaW5nOiB5b3UgYXJlIGxlYXZpbmcgJWQgY29tbWl0IGJlaGluZCwgbm90IGNvbm5lY3RlZCB0b1xuIgpAQCAtODgwNCwxNiArMTA4OTQsMTYgQEAKICIlc1xuIgogbXNnc3RyWzBdICIiCiAiQWR2ZXJ0w6huY2lhOiBlc3RldSBkZWl4YW50IGVucmVyZSAlZCBjb21pc3Npw7MsIG5vXG4iCi0iY29ubmVjdGFkYSBhIGNhcCBkZSBsZXMgdm9zdHJlcyBicmFucXVlczpcbiIKKyJ2aW5jdWxhZGEgYSBjYXAgZGUgbGVzIHZvc3RyZXMgYnJhbnF1ZXM6XG4iCiAiXG4iCiAiJXNcbiIKIG1zZ3N0clsxXSAiIgogIkFkdmVydMOobmNpYTogZXN0ZXUgZGVpeGFudCBlbnJlcmUgJWQgY29taXNzaW9ucywgbm9cbiIKLSJjb25uZWN0YWRlcyBhIGNhcCBkZSBsZXMgdm9zdHJlcyBicmFucXVlczpcbiIKKyJ2aW5jdWxhZGVzIGEgY2FwIGRlIGxlcyB2b3N0cmVzIGJyYW5xdWVzOlxuIgogIlxuIgogIiVzXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3YW50IHRvIGtlZXAgaXQgYnkgY3JlYXRpbmcgYSBuZXcgYnJhbmNoLCB0aGlzIG1heSBiZSBhIGdvb2QgdGltZVxuIgpAQCAtODg0MCwxNjMgKzEwOTMwLDI0MCBAQAogIiBnaXQgYnJhbmNoIDxub20tZGUtYnJhbmNhLW5vdmE+ICVzXG4iCiAiXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5MTMKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDA3CiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IgaW4gcmV2aXNpb24gd2FsayIKIG1zZ3N0ciAiZXJyb3IgaW50ZXJuIGVuIGVsIHBhc3NlaWcgcGVyIHJldmlzaW9ucyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjkxNworIzogYnVpbHRpbi9jaGVja291dC5jOjEwMTEKIG1zZ2lkICJQcmV2aW91cyBIRUFEIHBvc2l0aW9uIHdhcyIKIG1zZ3N0ciAiTGEgcG9zaWNpw7MgZGUgSEVBRCBhbnRlcmlvciBlcmEiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NDUgYnVpbHRpbi9jaGVja291dC5jOjExNjEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDUxIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjg2CiBtc2dpZCAiWW91IGFyZSBvbiBhIGJyYW5jaCB5ZXQgdG8gYmUgYm9ybiIKIG1zZ3N0ciAiU291IGVuIHVuYSBicmFuY2EgcXVlIGVuY2FyYSBoYSBkZSBuw6lpeGVyIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTA2NgorIzogYnVpbHRpbi9jaGVja291dC5jOjExNzgKKyMsIGZ1enp5Cittc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkIgorbXNnc3RyICJzJ2VzcGVyYXZhIG5vbcOpcyB1bmEgcmVmZXLDqG5jaWEsIHMnaGFuIGRvbmF0ICVkLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjExOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkLCAlZCBnaXZlbi4iCiBtc2dzdHIgInMnZXNwZXJhdmEgbm9tw6lzIHVuYSByZWZlcsOobmNpYSwgcydoYW4gZG9uYXQgJWQuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTEwNyBidWlsdGluL3dvcmt0cmVlLmM6Mjg5IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyInJXMnIGNvdWxkIGJlIGJvdGggYSBsb2NhbCBmaWxlIGFuZCBhIHRyYWNraW5nIGJyYW5jaC5cbiIKKyJQbGVhc2UgdXNlIC0tIChhbmQgb3B0aW9uYWxseSAtLW5vLWd1ZXNzKSB0byBkaXNhbWJpZ3VhdGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDUgYnVpbHRpbi93b3JrdHJlZS5jOjI5MCBidWlsdGluL3dvcmt0cmVlLmM6NDU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKIG1zZ3N0ciAicmVmZXLDqG5jaWEgbm8gdsOgbGlkYTogJXMiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTM2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1OCBidWlsdGluL2NoZWNrb3V0LmM6MTYyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgaXMgbm90IGEgdHJlZTogJXMiCiBtc2dzdHIgImxhIHJlZmVyw6huY2lhIG5vIMOpcyB1biBhcmJyZTogJXMiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTc1CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCB0YWcgJyVzJyIKK21zZ3N0ciAibm8gZXMgcG90IGxsZWdpciBsJ29iamVjdGUgJXMgwqslc8K7IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMwNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCByZW1vdGUgYnJhbmNoICclcyciCittc2dzdHIgIiIKKyJMYSBicmFuY2Egwqslc8K7IGVzdMOgIGNvbmZpZ3VyYWRhIHBlciBhIHNlZ3VpciBsYSBicmFuY2EgcmVtb3RhIMKrJXPCuyBkZSDCqyVzwrsuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMwOCBidWlsdGluL2NoZWNrb3V0LmM6MTMxNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCAnJXMnIgorbXNnc3RyICJzJ2VzcGVyYXZhIHNoYWxsb3cvdW5zaGFsbG93LCBzJ2hhIHJlYnV0ICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMxMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCBjb21taXQgJyVzJyIKK21zZ3N0ciAiTGEgdm9zdHJhIGJyYW5jYSBlc3TDoCBhbCBkaWEgYW1iIMKrJXPCuy5cbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMjcKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgbWVyZ2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IG1lcmdlIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMzMQorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCBpbiB0aGUgbWlkZGxlIG9mIGFuIGFtIHNlc3Npb25cbiIKKyJDb25zaWRlciBcImdpdCBhbSAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMzUKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgcmViYXNpbmdcbiIKKyJDb25zaWRlciBcImdpdCByZWJhc2UgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM5Cittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIGNoZXJyeS1waWNraW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgY2hlcnJ5LXBpY2sgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzQzCittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIHJldmVydGluZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IHJldmVydCAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNDcKKyMsIGZ1enp5Cittc2dpZCAieW91IGFyZSBzd2l0Y2hpbmcgYnJhbmNoIHdoaWxlIGJpc2VjdGluZyIKK21zZ3N0ciAiQWN0dWFsbWVudCBlc3RldSBiaXNlY2FudC4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzU0CiBtc2dpZCAicGF0aHMgY2Fubm90IGJlIHVzZWQgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMiCiBtc2dzdHIgImVscyBjYW1pbnMgbm8gZXMgcG9kZW4gdXNhciBhbWIgY2FudmkgZGUgYnJhbmNhIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE3OCBidWlsdGluL2NoZWNrb3V0LmM6MTE4MgorIzogYnVpbHRpbi9jaGVja291dC5jOjEzNTcgYnVpbHRpbi9jaGVja291dC5jOjEzNjEgYnVpbHRpbi9jaGVja291dC5jOjEzNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKIG1zZ3N0ciAiwqslc8K7IG5vIGVzIHBvdCB1c2FyIGFtYiBjYW52aSBkZSBicmFuY2EiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTg2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTg5IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTk0Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE5NworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjkgYnVpbHRpbi9jaGVja291dC5jOjEzNzIgYnVpbHRpbi9jaGVja291dC5jOjEzNzUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzgwIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAnJXMnIgogbXNnc3RyICLCqyVzwrsgbm8gZXMgcG90IHVzYXIgYW1iIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMDIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCB0YWtlIDxzdGFydC1wb2ludD4iCittc2dzdHIgIsKrJXPCuyBubyBlcyBwb3QgdXNhciBhbWIgYWN0dWFsaXR6YWNpw7MgZGUgY2FtaW5zIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgc3dpdGNoIGJyYW5jaCB0byBhIG5vbi1jb21taXQgJyVzJyIKIG1zZ3N0ciAiTm8gZXMgcG90IGNhbnZpYXIgbGEgYnJhbmNhIGEgbGEgbm8gY29taXNzacOzIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMzUgYnVpbHRpbi9jaGVja291dC5jOjEyMzcgYnVpbHRpbi9jbG9uZS5jOjExOQotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjkgYnVpbHRpbi9yZW1vdGUuYzoxNzEgYnVpbHRpbi93b3JrdHJlZS5jOjQ4OAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MAotbXNnaWQgImJyYW5jaCIKLW1zZ3N0ciAiYnJhbmNhIgorIzogYnVpbHRpbi9jaGVja291dC5jOjEzOTcKKyMsIGZ1enp5Cittc2dpZCAibWlzc2luZyBicmFuY2ggb3IgY29tbWl0IGFyZ3VtZW50IgorbXNnc3RyICJNYW5jYSBlbCBub20gZGUgYnJhbmNhOyBwcm92ZXUgLWIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM2Ci1tc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCi1tc2dzdHIgImNyZWEgaSBhZ2FmYSB1bmEgYnJhbmNhIG5vdmEiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM4Ci1tc2dpZCAiY3JlYXRlL3Jlc2V0IGFuZCBjaGVja291dCBhIGJyYW5jaCIKLW1zZ3N0ciAiY3JlYS9yZXN0YWJsZWl4IGkgYWdhZmEgdW5hIGJyYW5jYSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMzkKLW1zZ2lkICJjcmVhdGUgcmVmbG9nIGZvciBuZXcgYnJhbmNoIgotbXNnc3RyICJjcmVhIHVuIHJlZ2lzdHJlIGRlIHJlZmVyw6huY2lhIHBlciBhIGxhIGJyYW5jYSBub3ZhIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MCBidWlsdGluL3dvcmt0cmVlLmM6NDkyCi1tc2dpZCAiZGV0YWNoIEhFQUQgYXQgbmFtZWQgY29tbWl0IgotbXNnc3RyICJzZXBhcmEgSEVBRCBhIGxhIGNvbWlzc2nDsyBhbm9tZW5hZGEiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQxCi1tc2dpZCAic2V0IHVwc3RyZWFtIGluZm8gZm9yIG5ldyBicmFuY2giCi1tc2dzdHIgImVzdGFibGVpeCBsYSBpbmZvcm1hY2nDsyBkZSBmb250IGRlIGxhIGJyYW5jYSBub3ZhIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MwotbXNnaWQgIm5ldy1icmFuY2giCi1tc2dzdHIgImJyYW5jYS1ub3ZhIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MwotbXNnaWQgIm5ldyB1bnBhcmVudGVkIGJyYW5jaCIKLW1zZ3N0ciAiYnJhbmNhIMOycmZlbmEgbm92YSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDUKLW1zZ2lkICJjaGVja291dCBvdXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCi1tc2dzdHIgImFnYWZhIGxhIHZlcnNpw7Mgbm9zdHJhIGRlbHMgZml0eGVycyBzZW5zZSBmdXNpb25hciIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDgKLW1zZ2lkICJjaGVja291dCB0aGVpciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKLW1zZ3N0ciAiYWdhZmEgbGEgdmVyc2nDsyBzZXZhIGRlbHMgZml0eGVycyBzZW5zZSBmdXNpb25hciIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTAKLW1zZ2lkICJmb3JjZSBjaGVja291dCAodGhyb3cgYXdheSBsb2NhbCBtb2RpZmljYXRpb25zKSIKLW1zZ3N0ciAiYWdhZmEgYSBsYSBmb3LDp2EgKGRlc2NhcnRhIHF1YWxzZXZvbCBtb2RpZmljYWNpw7MgbG9jYWwpIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1MgotbXNnaWQgInBlcmZvcm0gYSAzLXdheSBtZXJnZSB3aXRoIHRoZSBuZXcgYnJhbmNoIgotbXNnc3RyICJyZWFsaXR6YSB1bmEgZnVzacOzIGRlIDMgdmllcyBhbWIgbGEgYnJhbmNhIG5vdmEiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU0IGJ1aWx0aW4vbWVyZ2UuYzoyNzUKLW1zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCi1tc2dzdHIgImFjdHVhbGl0emEgZWxzIGZpdHhlcnMgaWdub3JhdHMgKHBlciBkZWZlY3RlKSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTYgYnVpbHRpbi9sb2cuYzoxNTczIHBhcnNlLW9wdGlvbnMuaDoyNzQKLW1zZ2lkICJzdHlsZSIKLW1zZ3N0ciAiZXN0aWwiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU3Ci1tc2dpZCAiY29uZmxpY3Qgc3R5bGUgKG1lcmdlIG9yIGRpZmYzKSIKLW1zZ3N0ciAiZXN0aWwgZGUgY29uZmxpY3RlIChmdXNpw7MgbyBkaWZmMykiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjYwCi1tc2dpZCAiZG8gbm90IGxpbWl0IHBhdGhzcGVjcyB0byBzcGFyc2UgZW50cmllcyBvbmx5IgotbXNnc3RyICJubyBsaW1pdGlzIGxlcyBlc3BlY2lmaWNhY2lvbnMgZGUgY2Ftw60gbm9tw6lzIGEgZW50cmFkZXMgZGlzcGVyc2VzIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI2MgotbXNnaWQgInNlY29uZCBndWVzcyAnZ2l0IGNoZWNrb3V0IDxuby1zdWNoLWJyYW5jaD4nIgotbXNnc3RyICJkdWJ0YSAnZ2l0IGNoZWNrb3V0IDxjYXAtYnJhbmNhLWFpeMOtPiciCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjY0Ci1tc2dpZCAiZG8gbm90IGNoZWNrIGlmIGFub3RoZXIgd29ya3RyZWUgaXMgaG9sZGluZyB0aGUgZ2l2ZW4gcmVmIgotbXNnc3RyICJubyBjb21wcm92aXMgc2kgYWx0cmUgYXJicmUgZGUgdHJlYmFsbCB0w6kgbGEgcmVmZXLDqG5jaWEgZG9uYWRhIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI2OCBidWlsdGluL2Nsb25lLmM6ODYgYnVpbHRpbi9mZXRjaC5jOjE0MQotIzogYnVpbHRpbi9tZXJnZS5jOjI3MiBidWlsdGluL3B1bGwuYzoxMjkgYnVpbHRpbi9wdXNoLmM6NTcyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQzOSBidWlsdGluL2Nsb25lLmM6OTEgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo1MgorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMTMgYnVpbHRpbi9mZXRjaC5jOjE2NyBidWlsdGluL21lcmdlLmM6Mjg1CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyNyBidWlsdGluL3B1bGwuYzoxMzggYnVpbHRpbi9wdXNoLmM6NTYzCiAjOiBidWlsdGluL3NlbmQtcGFjay5jOjE3NAogbXNnaWQgImZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKIG1zZ3N0ciAiZm9yw6dhIGwnaW5mb3JtZSBkZSBwcm9ncsOpcyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEyOTgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDQwCittc2dpZCAicGVyZm9ybSBhIDMtd2F5IG1lcmdlIHdpdGggdGhlIG5ldyBicmFuY2giCittc2dzdHIgInJlYWxpdHphIHVuYSBmdXNpw7MgZGUgMyB2aWVzIGFtYiBsYSBicmFuY2Egbm92YSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NDEgYnVpbHRpbi9sb2cuYzoxNjkwIHBhcnNlLW9wdGlvbnMuaDozMjIKK21zZ2lkICJzdHlsZSIKK21zZ3N0ciAiZXN0aWwiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDQyCittc2dpZCAiY29uZmxpY3Qgc3R5bGUgKG1lcmdlIG9yIGRpZmYzKSIKK21zZ3N0ciAiZXN0aWwgZGUgY29uZmxpY3RlIChmdXNpw7MgbyBkaWZmMykiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDU0IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDMKK21zZ2lkICJkZXRhY2ggSEVBRCBhdCBuYW1lZCBjb21taXQiCittc2dzdHIgInNlcGFyYSBIRUFEIGEgbGEgY29taXNzacOzIGFub21lbmFkYSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NTUKK21zZ2lkICJzZXQgdXBzdHJlYW0gaW5mbyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAiZXN0YWJsZWl4IGxhIGluZm9ybWFjacOzIGRlIGZvbnQgZGUgbGEgYnJhbmNhIG5vdmEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDU3Cittc2dpZCAiZm9yY2UgY2hlY2tvdXQgKHRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucykiCittc2dzdHIgImFnYWZhIGEgbGEgZm9yw6dhIChkZXNjYXJ0YSBxdWFsc2V2b2wgbW9kaWZpY2FjacOzIGxvY2FsKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NTkKK21zZ2lkICJuZXctYnJhbmNoIgorbXNnc3RyICJicmFuY2Etbm92YSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NTkKK21zZ2lkICJuZXcgdW5wYXJlbnRlZCBicmFuY2giCittc2dzdHIgImJyYW5jYSDDsnJmZW5hIG5vdmEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDYxIGJ1aWx0aW4vbWVyZ2UuYzoyODgKK21zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCittc2dzdHIgImFjdHVhbGl0emEgZWxzIGZpdHhlcnMgaWdub3JhdHMgKHBlciBkZWZlY3RlKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NjQKK21zZ2lkICJkbyBub3QgY2hlY2sgaWYgYW5vdGhlciB3b3JrdHJlZSBpcyBob2xkaW5nIHRoZSBnaXZlbiByZWYiCittc2dzdHIgIm5vIGNvbXByb3ZpcyBzaSBhbHRyZSBhcmJyZSBkZSB0cmViYWxsIHTDqSBsYSByZWZlcsOobmNpYSBkb25hZGEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDc3Cittc2dpZCAiY2hlY2tvdXQgb3VyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgorbXNnc3RyICJhZ2FmYSBsYSB2ZXJzacOzIG5vc3RyYSBkZWxzIGZpdHhlcnMgc2Vuc2UgZnVzaW9uYXIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDgwCittc2dpZCAiY2hlY2tvdXQgdGhlaXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCittc2dzdHIgImFnYWZhIGxhIHZlcnNpw7Mgc2V2YSBkZWxzIGZpdHhlcnMgc2Vuc2UgZnVzaW9uYXIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg0Cittc2dpZCAiZG8gbm90IGxpbWl0IHBhdGhzcGVjcyB0byBzcGFyc2UgZW50cmllcyBvbmx5IgorbXNnc3RyICJubyBsaW1pdGlzIGxlcyBlc3BlY2lmaWNhY2lvbnMgZGUgY2Ftw60gbm9tw6lzIGEgZW50cmFkZXMgZGlzcGVyc2VzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTUzNwogbXNnaWQgIi1iLCAtQiBhbmQgLS1vcnBoYW4gYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLWIsIC1CIGkgLS1vcnBoYW4gc8OzbiBtw7p0dWFtZW50IGV4Y2xvZW50cyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEzMTUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTQwCisjLCBmdXp6eQorbXNnaWQgIi1wIGFuZCAtLW92ZXJsYXkgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLW4gaSAtayBzw7NuIG3DunR1YW1lbnQgZXhjbG9lbnRzLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1NzcKIG1zZ2lkICItLXRyYWNrIG5lZWRzIGEgYnJhbmNoIG5hbWUiCiBtc2dzdHIgIi0tdHJhY2sgbmVjZXNzaXRhIHVuIG5vbSBkZSBicmFuY2EiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzIwCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTU4MgogIywgZnV6enkKIG1zZ2lkICJtaXNzaW5nIGJyYW5jaCBuYW1lOyB0cnkgLWIiCiBtc2dzdHIgIk1hbmNhIGVsIG5vbSBkZSBicmFuY2E7IHByb3ZldSAtYiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEzNTcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSAlcyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCByZXNvbGRyZSDCqyVzwrsiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjMxCiBtc2dpZCAiaW52YWxpZCBwYXRoIHNwZWNpZmljYXRpb24iCiBtc2dzdHIgImVzcGVjaWZpY2FjacOzIGRlIGNhbcOtIG5vIHbDoGxpZGEiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTYzOAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIGNvbW1pdCBhbmQgYSBicmFuY2ggJyVzJyBjYW5ub3QgYmUgY3JlYXRlZCBmcm9tIGl0IgogbXNnc3RyICIiCiAiwqslc8K7IG5vIMOpcyB1bmEgY29taXNzacOzIGkgbGEgYnJhbmNhIMKrJXPCuyBubyBlcyBwb3QgY3JlYXIgYSBwYXJ0aXIgZCdhcXVlc3RhICIKICJjb21pc3Npw7MiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY4CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgY2hlY2tvdXQ6IC0tZGV0YWNoIGRvZXMgbm90IHRha2UgYSBwYXRoIGFyZ3VtZW50ICclcyciCiBtc2dzdHIgImdpdCBjaGVja291dDogLS1kZXRhY2ggbm8gYWNjZXB0YSB1biBwYXLDoG1ldHJlIGRlIGNhbcOtIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjUxCisjLCBmdXp6eQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tZGV0YWNoIgorbXNnc3RyICItLWZpcnN0LXBhcmVudCDDqXMgaW5jb21wYXRpYmxlIGFtYiAtLWJpc2VjdCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NTQgYnVpbHRpbi9yZXNldC5jOjMyNAorIywgZnV6enkKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLXBhdGNoIgorbXNnc3RyICItLWZpcnN0LXBhcmVudCDDqXMgaW5jb21wYXRpYmxlIGFtYiAtLWJpc2VjdCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NjUKIG1zZ2lkICIiCiAiZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgYW5kIC0tbWVyZ2UgYXJlIGluY29tcGF0aWJsZSB3aGVuXG4iCiAiY2hlY2tpbmcgb3V0IG9mIHRoZSBpbmRleC4iCkBAIC05MDA0LDcgKzExMTcxLDEyIEBACiAiZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgaSAtLW1lcmdlIHPDs24gaW5jb21wYXRpYmxlcyBlblxuIgogImFnYWZhciBkZSBsJ8OtbmRleC4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzkyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY3MAorIywgZnV6enkKK21zZ2lkICJ5b3UgbXVzdCBzcGVjaWZ5IHBhdGgocykgdG8gcmVzdG9yZSIKK21zZ3N0ciAiSGV1IGQnZXNwZWNpZmljYXIgdW4gZGlyZWN0b3JpLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcycgbWF0Y2hlZCBtb3JlIHRoYW4gb25lIHJlbW90ZSB0cmFja2luZyBicmFuY2guXG4iCkBAIC05MDIxLDM4ICsxMTE5MywxMTUgQEAKICJjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbiBpbiB5b3VyIGNvbmZpZy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjI3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcxNCBidWlsdGluL2NoZWNrb3V0LmM6MTcxNiBidWlsdGluL2NoZWNrb3V0LmM6MTc2NQorIzogYnVpbHRpbi9jaGVja291dC5jOjE3NjcgYnVpbHRpbi9jbG9uZS5jOjEyMSBidWlsdGluL3JlbW90ZS5jOjE2OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNzEgYnVpbHRpbi93b3JrdHJlZS5jOjQ5OSBidWlsdGluL3dvcmt0cmVlLmM6NTAxCittc2dpZCAiYnJhbmNoIgorbXNnc3RyICJicmFuY2EiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzE1Cittc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCittc2dzdHIgImNyZWEgaSBhZ2FmYSB1bmEgYnJhbmNhIG5vdmEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzE3Cittc2dpZCAiY3JlYXRlL3Jlc2V0IGFuZCBjaGVja291dCBhIGJyYW5jaCIKK21zZ3N0ciAiY3JlYS9yZXN0YWJsZWl4IGkgYWdhZmEgdW5hIGJyYW5jYSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MTgKK21zZ2lkICJjcmVhdGUgcmVmbG9nIGZvciBuZXcgYnJhbmNoIgorbXNnc3RyICJjcmVhIHVuIHJlZ2lzdHJlIGRlIHJlZmVyw6huY2lhIHBlciBhIGxhIGJyYW5jYSBub3ZhIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyMAorIywgZnV6enkKK21zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBjaGVja291dCA8bm8tc3VjaC1icmFuY2g+JyAoZGVmYXVsdCkiCittc2dzdHIgImR1YnRhICdnaXQgY2hlY2tvdXQgPGNhcC1icmFuY2EtYWl4w60+JyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjEKKyMsIGZ1enp5Cittc2dpZCAidXNlIG92ZXJsYXkgbW9kZSAoZGVmYXVsdCkiCittc2dzdHIgInBvZGEgbGVzIHJlZmVyw6huY2llcyBzb2x0ZXMgKHBlciBkZWZlY3RlKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NjYKKyMsIGZ1enp5Cittc2dpZCAiY3JlYXRlIGFuZCBzd2l0Y2ggdG8gYSBuZXcgYnJhbmNoIgorbXNnc3RyICJjcmVhIGkgYWdhZmEgdW5hIGJyYW5jYSBub3ZhIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc2OAorIywgZnV6enkKK21zZ2lkICJjcmVhdGUvcmVzZXQgYW5kIHN3aXRjaCB0byBhIGJyYW5jaCIKK21zZ3N0ciAiY3JlYS9yZXN0YWJsZWl4IGkgYWdhZmEgdW5hIGJyYW5jYSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzAKKyMsIGZ1enp5Cittc2dpZCAic2Vjb25kIGd1ZXNzICdnaXQgc3dpdGNoIDxuby1zdWNoLWJyYW5jaD4nIgorbXNnc3RyICJkdWJ0YSAnZ2l0IGNoZWNrb3V0IDxjYXAtYnJhbmNhLWFpeMOtPiciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzcyCisjLCBmdXp6eQorbXNnaWQgInRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucyIKK21zZ3N0ciAiYWdhZmEgYSBsYSBmb3LDp2EgKGRlc2NhcnRhIHF1YWxzZXZvbCBtb2RpZmljYWNpw7MgbG9jYWwpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgwNAorIywgZnV6enkKK21zZ2lkICJ3aGljaCB0cmVlLWlzaCB0byBjaGVja291dCBmcm9tIgorbXNnc3RyICJsbGVnZWl4IGwnb2JqZWN0ZSBkZXMgZGUgc3RkaW4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODA2CisjLCBmdXp6eQorbXNnaWQgInJlc3RvcmUgdGhlIGluZGV4IgorbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGxsZWdpciBsJ8OtbmRleCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MDgKKyMsIGZ1enp5Cittc2dpZCAicmVzdG9yZSB0aGUgd29ya2luZyB0cmVlIChkZWZhdWx0KSIKK21zZ3N0ciAiTW9zdHJhIGwnZXN0YXQgZGUgbCdhcmJyZSBkZSB0cmViYWxsIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxMAorIywgZnV6enkKK21zZ2lkICJpZ25vcmUgdW5tZXJnZWQgZW50cmllcyIKK21zZ3N0ciAicydlc3TDoCBpZ25vcmFudCAlcyBubyBmdXNpb25hdFxuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxMQorbXNnaWQgInVzZSBvdmVybGF5IG1vZGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjI4CiBtc2dpZCAiIgogImdpdCBjbGVhbiBbLWRdIFstZl0gWy1pXSBbLW5dIFstcV0gWy1lIDxwYXR0ZXJuPl0gWy14IHwgLVhdIFstLV0gPHBhdGhzPi4uLiIKIG1zZ3N0ciAiIgogImdpdCBjbGVhbiBbLWRdIFstZl0gWy1pXSBbLW5dIFstcV0gWy1lIDxwYXRyw7M+XSBbLXggfCAtWF0gWy0tXSA8Y2FtaW5zPi4uLiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjMxCisjOiBidWlsdGluL2NsZWFuLmM6MzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3ZpbmcgJXNcbiIKIG1zZ3N0ciAiUydlc3TDoCBlbGltaW5hbnQgJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjMyCisjOiBidWlsdGluL2NsZWFuLmM6MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiV291bGQgcmVtb3ZlICVzXG4iCiBtc2dzdHIgIkVsaW1pbmFyaWEgJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjMzCisjOiBidWlsdGluL2NsZWFuLmM6MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBpbmcgcmVwb3NpdG9yeSAlc1xuIgogbXNnc3RyICJTJ2VzdMOgIG9tZXRlbnQgZWwgZGlww7JzaXQgJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjM0CisjOiBidWlsdGluL2NsZWFuLmM6MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiV291bGQgc2tpcCByZXBvc2l0b3J5ICVzXG4iCiBtc2dzdHIgIk9tZXRyaWEgZWwgZGlww7JzaXQgJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjM1CisjOiBidWlsdGluL2NsZWFuLmM6MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAlcyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBlbGltaW5hciAlcyIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjI5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3OQorIzogYnVpbHRpbi9jbGVhbi5jOjM3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgbHN0YXQgJXNcbiIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBmZXIgc3RhdCBhICVzIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzAxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQcm9tcHQgaGVscDpcbiIKQEAgLTkwNjUsNyArMTEzMTQsNyBAQAogImZvbyAgICAgICAgLSBzZWxlY2Npb25hIHVuIMOtdGVtIGJhc2F0IGVuIHVuIHByZWZpeCDDum5pY1xuIgogIiAgICAgICAgICAgLSAoYnVpdCkgbm8gc2VsZWNjaW9uaXMgcmVzXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMDIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1ODgKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMDUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlByb21wdCBoZWxwOlxuIgpAQCAtOTA4NiwzOCArMTEzMzUsMzMgQEAKICIqICAgICAgICAgIC0gdHJpYSB0b3RzIGVscyDDrXRlbXNcbiIKICIgICAgICAgICAgIC0gKGJ1aXQpIGZpbmFsaXR6YSBsYSBzZWxlY2Npw7NcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjUxOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU1NAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NTkKKyM6IGJ1aWx0aW4vY2xlYW4uYzo1MjEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NzAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTc1CiAjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKIG1zZ2lkICJIdWggKCVzKT9cbiIKIG1zZ3N0ciAiUGVyZMOzICglcyk/XG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo2NjAKKyM6IGJ1aWx0aW4vY2xlYW4uYzo2NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW5wdXQgaWdub3JlIHBhdHRlcm5zPj4gIgogbXNnc3RyICJJbnRyb2R1w691IGVscyBwYXRyb25zIGEgaWdub3Jhcj4+ICIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjY5NworIzogYnVpbHRpbi9jbGVhbi5jOjcwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJXQVJOSU5HOiBDYW5ub3QgZmluZCBpdGVtcyBtYXRjaGVkIGJ5OiAlcyIKIG1zZ3N0ciAiQURWRVJUw4hOQ0lBOiBObyBlcyBwb2RlbiB0cm9iYXIgw610ZW1zIHF1ZSBjb2luY2lkZWl4aW4gYW1iOiAlcyIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjcxOAorIzogYnVpbHRpbi9jbGVhbi5jOjcyMQogbXNnaWQgIlNlbGVjdCBpdGVtcyB0byBkZWxldGUiCiBtc2dzdHIgIlNlbGVjY2lvbmEgZWxzIMOtdGVtcyBhIHN1cHJpbWlyIgogCiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGtlZXAgW3kvTl0gYXMgaXMKLSM6IGJ1aWx0aW4vY2xlYW4uYzo3NTkKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3ZlICVzIFt5L05dPyAiCiBtc2dzdHIgIlZvbGV1IGVsaW1pbmFyICVzIFt5L05dPyAiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo3ODQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzE3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkJ5ZS5cbiIKLW1zZ3N0ciAiQWRldS5cbiIKLQotIzogYnVpbHRpbi9jbGVhbi5jOjc5MgorIzogYnVpbHRpbi9jbGVhbi5jOjc5NQogbXNnaWQgIiIKICJjbGVhbiAgICAgICAgICAgICAgIC0gc3RhcnQgY2xlYW5pbmdcbiIKICJmaWx0ZXIgYnkgcGF0dGVybiAgIC0gZXhjbHVkZSBpdGVtcyBmcm9tIGRlbGV0aW9uXG4iCkBAIC05MTM1LDY0ICsxMTM3OSw1NiBAQAogImhlbHAgICAgICAgICAgICAgICAgLSBhcXVlc3RhIHBhbnRhbGxhXG4iCiAiPyAgICAgICAgICAgICAgICAgICAtIGFqdWRhIGRlIHNlbGVjY2nDsyBkZSBsJ2F2w61zIgogCi0jOiBidWlsdGluL2NsZWFuLmM6ODE5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MwotbXNnaWQgIioqKiBDb21tYW5kcyAqKioiCi1tc2dzdHIgIioqKiBPcmRyZXMgKioqIgotCi0jOiBidWlsdGluL2NsZWFuLmM6ODIwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MAotbXNnaWQgIldoYXQgbm93IgotbXNnc3RyICJJIGFyYSBxdcOoIgotCi0jOiBidWlsdGluL2NsZWFuLmM6ODI4CisjOiBidWlsdGluL2NsZWFuLmM6ODMxCiBtc2dpZCAiV291bGQgcmVtb3ZlIHRoZSBmb2xsb3dpbmcgaXRlbToiCiBtc2dpZF9wbHVyYWwgIldvdWxkIHJlbW92ZSB0aGUgZm9sbG93aW5nIGl0ZW1zOiIKIG1zZ3N0clswXSAiRWxpbWluYXJpYSBsJ8OtdGVtIHNlZ8O8ZW50OiIKIG1zZ3N0clsxXSAiRWxpbWluYXJpYSBlbHMgw610ZW1zIHNlZ8O8ZW50czoiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo4NDQKKyM6IGJ1aWx0aW4vY2xlYW4uYzo4NDcKIG1zZ2lkICJObyBtb3JlIGZpbGVzIHRvIGNsZWFuLCBleGl0aW5nLiIKIG1zZ3N0ciAiTm8gaGkgaGEgbcOpcyBmaXR4ZXJzIGEgbmV0ZWphcjsgcydlc3TDoCBzb3J0aW50LiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwNgorIzogYnVpbHRpbi9jbGVhbi5jOjkwOQogbXNnaWQgImRvIG5vdCBwcmludCBuYW1lcyBvZiBmaWxlcyByZW1vdmVkIgogbXNnc3RyICJubyBpbXByaW1laXhpcyBlbHMgbm9tcyBkZWxzIGZpdHhlcnMgZWxpbWluYXRzIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA4CisjOiBidWlsdGluL2NsZWFuLmM6OTExCiBtc2dpZCAiZm9yY2UiCiBtc2dzdHIgImZvcsOnYSIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwOQorIzogYnVpbHRpbi9jbGVhbi5jOjkxMgogbXNnaWQgImludGVyYWN0aXZlIGNsZWFuaW5nIgogbXNnc3RyICJuZXRlamEgaW50ZXJhY3RpdmEiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTEKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTQKIG1zZ2lkICJyZW1vdmUgd2hvbGUgZGlyZWN0b3JpZXMiCiBtc2dzdHIgImVsaW1pbmEgZGlyZWN0b3JpcyBzZW5jZXJzIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTEyIGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDUgYnVpbHRpbi9kZXNjcmliZS5jOjU0NwotIzogYnVpbHRpbi9ncmVwLmM6ODg2IGJ1aWx0aW4vbG9nLmM6MTY2IGJ1aWx0aW4vbG9nLmM6MTY4Ci0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTU2IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTUgYnVpbHRpbi9uYW1lLXJldi5jOjQxNwotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OAorIzogYnVpbHRpbi9jbGVhbi5jOjkxNSBidWlsdGluL2Rlc2NyaWJlLmM6NTQ4IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwMSBidWlsdGluL2xvZy5jOjE3NyBidWlsdGluL2xvZy5jOjE3OQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NyBidWlsdGluL25hbWUtcmV2LmM6NDY0IGJ1aWx0aW4vbmFtZS1yZXYuYzo0NjYKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzkKIG1zZ2lkICJwYXR0ZXJuIgogbXNnc3RyICJwYXRyw7MiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTMKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTYKIG1zZ2lkICJhZGQgPHBhdHRlcm4+IHRvIGlnbm9yZSBydWxlcyIKIG1zZ3N0ciAiYWZlZ2l1IDxwYXRyw7M+IHBlciBhIGlnbm9yYXIgbGVzIHJlZ2xlcyIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxNAorIzogYnVpbHRpbi9jbGVhbi5jOjkxNwogbXNnaWQgInJlbW92ZSBpZ25vcmVkIGZpbGVzLCB0b28iCiBtc2dzdHIgImVsaW1pbmEgZWxzIGZpdHhlcnMgaWdub3JhdHMsIHRhbWLDqSIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxNgorIzogYnVpbHRpbi9jbGVhbi5jOjkxOQogbXNnaWQgInJlbW92ZSBvbmx5IGlnbm9yZWQgZmlsZXMiCiBtc2dzdHIgImVsaW1pbmEgbm9tw6lzIGVscyBmaXR4ZXJzIGlnbm9yYXRzIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTM0CisjOiBidWlsdGluL2NsZWFuLmM6OTM3CiBtc2dpZCAiLXggYW5kIC1YIGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIgogbXNnc3RyICIteCBpIC1YIG5vIGVzIHBvZGVuIHVzYXIganVudHMiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MzgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5NDEKIG1zZ2lkICIiCiAiY2xlYW4ucmVxdWlyZUZvcmNlIHNldCB0byB0cnVlIGFuZCBuZWl0aGVyIC1pLCAtbiwgbm9yIC1mIGdpdmVuOyByZWZ1c2luZyB0byAiCiAiY2xlYW4iCkBAIC05MjAwLDcgKzExNDM2LDcgQEAKICJjbGVhbi5yZXF1aXJlRm9yY2UgZXN0w6AgZXN0YWJsZXJ0YSBlbiBjZXJ0IGkgbmkgLWksIC1uIG5pIC1mIHMnaGFuIGluZGljYXQ7ICIKICJyZWZ1c2FudCBuZXRlamFyIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTQxCisjOiBidWlsdGluL2NsZWFuLmM6OTQ0CiBtc2dpZCAiIgogImNsZWFuLnJlcXVpcmVGb3JjZSBkZWZhdWx0cyB0byB0cnVlIGFuZCBuZWl0aGVyIC1pLCAtbiwgbm9yIC1mIGdpdmVuOyAiCiAicmVmdXNpbmcgdG8gY2xlYW4iCkBAIC05MjA4LDE0NyArMTE0NDQsMTY2IEBACiAiY2xlYW4ucmVxdWlyZUZvcmNlIMOpcyBwZXIgZGVmZWN0ZSBjZXJ0IGkgbmkgLWksIC1uIG5pIC1mIHMnaGFuIGluZGljYXQ7ICIKICJyZWZ1c2FudCBuZXRlamFyIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDMKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NQogbXNnaWQgImdpdCBjbG9uZSBbPG9wdGlvbnM+XSBbLS1dIDxyZXBvPiBbPGRpcj5dIgogbXNnc3RyICJnaXQgY2xvbmUgWzxvcGNpb25zPl0gWy0tXSA8ZGlww7JzaXQ+IFs8ZGlyZWN0b3JpPl0iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4OAorIzogYnVpbHRpbi9jbG9uZS5jOjkzCiBtc2dpZCAiZG9uJ3QgY3JlYXRlIGEgY2hlY2tvdXQiCiBtc2dzdHIgIm5vIGZhY2lzIGNhcCBhZ2FmYW1lbnQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4OSBidWlsdGluL2Nsb25lLmM6OTEgYnVpbHRpbi9pbml0LWRiLmM6NDgxCisjOiBidWlsdGluL2Nsb25lLmM6OTQgYnVpbHRpbi9jbG9uZS5jOjk2IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4OQogbXNnaWQgImNyZWF0ZSBhIGJhcmUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiY3JlYSB1biBkaXDDsnNpdCBudSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkzCisjOiBidWlsdGluL2Nsb25lLmM6OTgKIG1zZ2lkICJjcmVhdGUgYSBtaXJyb3IgcmVwb3NpdG9yeSAoaW1wbGllcyBiYXJlKSIKIG1zZ3N0ciAiY3JlYSB1biBkaXDDsnNpdCBtaXJhbGwgKGltcGxpY2EgYmFyZSkiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NQorIzogYnVpbHRpbi9jbG9uZS5jOjEwMAogbXNnaWQgInRvIGNsb25lIGZyb20gYSBsb2NhbCByZXBvc2l0b3J5IgogbXNnc3RyICJwZXIgYSBjbG9uYXIgZGVzIGQndW4gZGlww7JzaXQgbG9jYWwiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NworIzogYnVpbHRpbi9jbG9uZS5jOjEwMgogbXNnaWQgImRvbid0IHVzZSBsb2NhbCBoYXJkbGlua3MsIGFsd2F5cyBjb3B5IgogbXNnc3RyICJubyB1c2lzIGVubGxhw6dvcyBkdXJzIGxvY2Fscywgc2VtcHJlIGNvcGlhIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDQKIG1zZ2lkICJzZXR1cCBhcyBzaGFyZWQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiY29uZmlndXJhIGNvbSBhIGRpcMOyc2l0IGNvbXBhcnRpdCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwMSBidWlsdGluL2Nsb25lLmM6MTA1CisjOiBidWlsdGluL2Nsb25lLmM6MTA3CiBtc2dpZCAicGF0aHNwZWMiCiBtc2dzdHIgImVzcGVjaWZpY2FjacOzIGRlIGNhbcOtIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxIGJ1aWx0aW4vY2xvbmUuYzoxMDUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDcKIG1zZ2lkICJpbml0aWFsaXplIHN1Ym1vZHVsZXMgaW4gdGhlIGNsb25lIgogbXNnc3RyICJpbmljaWFsaXR6YSBlbHMgc3VibcOyZHVscyBlbiBlbCBjbG9uIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA4CisjOiBidWlsdGluL2Nsb25lLmM6MTEwCiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgY2xvbmVkIGluIHBhcmFsbGVsIgogbXNnc3RyICJub21icmUgZGUgc3VibcOyZHVscyBjbG9uYXRzIGVuIHBhcmFswrdsZWwiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDkgYnVpbHRpbi9pbml0LWRiLmM6NDc4CisjOiBidWlsdGluL2Nsb25lLmM6MTExIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NgogbXNnaWQgInRlbXBsYXRlLWRpcmVjdG9yeSIKIG1zZ3N0ciAiZGlyZWN0b3JpLWRlLXBsYW50aWxsYSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMCBidWlsdGluL2luaXQtZGIuYzo0NzkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTIgYnVpbHRpbi9pbml0LWRiLmM6NDg3CiBtc2dpZCAiZGlyZWN0b3J5IGZyb20gd2hpY2ggdGVtcGxhdGVzIHdpbGwgYmUgdXNlZCIKIG1zZ3N0ciAiZGlyZWN0b3JpIGRlcyBkZWwgcXVhbCBzJ3VzYXJhbiBsZXMgcGxhbnRpbGxlcyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMiBidWlsdGluL2Nsb25lLmM6MTE0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc1Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1NgorIzogYnVpbHRpbi9jbG9uZS5jOjExNCBidWlsdGluL2Nsb25lLmM6MTE2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzkyCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg4NQogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5IgogbXNnc3RyICJkaXDDsnNpdCBkZSByZWZlcsOobmNpYSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NwotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzOTQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODg3CiBtc2dpZCAidXNlIC0tcmVmZXJlbmNlIG9ubHkgd2hpbGUgY2xvbmluZyIKIG1zZ3N0ciAidXNhIC0tcmVmZXJlbmNlIG5vbcOpcyBlbiBjbG9uYXIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTcgYnVpbHRpbi9jb2x1bW4uYzoyNyBidWlsdGluL21lcmdlLWZpbGUuYzo0NgotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk5IGJ1aWx0aW4vcmVwYWNrLmM6MzI5CisjOiBidWlsdGluL2Nsb25lLmM6MTE5IGJ1aWx0aW4vY29sdW1uLmM6MjcgYnVpbHRpbi9tZXJnZS1maWxlLmM6NDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5NCBidWlsdGluL3JlcGFjay5jOjMyNwogbXNnaWQgIm5hbWUiCiBtc2dzdHIgIm5vbSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExOAorIzogYnVpbHRpbi9jbG9uZS5jOjEyMAogbXNnaWQgInVzZSA8bmFtZT4gaW5zdGVhZCBvZiAnb3JpZ2luJyB0byB0cmFjayB1cHN0cmVhbSIKIG1zZ3N0ciAidXNhIDxub20+IGVuIGxsb2MgZGUgJ29yaWdpbicgcGVyIGEgc2VndWlyIGxhIGZvbnQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjIKIG1zZ2lkICJjaGVja291dCA8YnJhbmNoPiBpbnN0ZWFkIG9mIHRoZSByZW1vdGUncyBIRUFEIgogbXNnc3RyICJhZ2FmYSA8YnJhbmNhPiBlbiBsbG9jIGRlIGxhIEhFQUQgZGVsIHJlbW90IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTIyCisjOiBidWlsdGluL2Nsb25lLmM6MTI0CiBtc2dpZCAicGF0aCB0byBnaXQtdXBsb2FkLXBhY2sgb24gdGhlIHJlbW90ZSIKIG1zZ3N0ciAiY2Ftw60gYSBnaXQtdXBsb2FkLXBhY2sgZW4gZWwgcmVtb3QiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjMgYnVpbHRpbi9mZXRjaC5jOjE0MiBidWlsdGluL2dyZXAuYzo4MjUKLSM6IGJ1aWx0aW4vcHVsbC5jOjIxNworIzogYnVpbHRpbi9jbG9uZS5jOjEyNSBidWlsdGluL2ZldGNoLmM6MTY4IGJ1aWx0aW4vZ3JlcC5jOjg0MAorIzogYnVpbHRpbi9wdWxsLmM6MjI3CiBtc2dpZCAiZGVwdGgiCiBtc2dzdHIgInByb2Z1bmRpdGF0IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI0CisjOiBidWlsdGluL2Nsb25lLmM6MTI2CiBtc2dpZCAiY3JlYXRlIGEgc2hhbGxvdyBjbG9uZSBvZiB0aGF0IGRlcHRoIgogbXNnc3RyICJjcmVhIHVuIGNsb24gc3VwZXJmaWNpYWwgZGUgdGFsIHByb2Z1bmRpdGF0IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI1IGJ1aWx0aW4vZmV0Y2guYzoxNDQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkwCisjOiBidWlsdGluL2Nsb25lLmM6MTI3IGJ1aWx0aW4vZmV0Y2guYzoxNzAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjgzCiBtc2dpZCAidGltZSIKIG1zZ3N0ciAiaG9yYSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyNgorIzogYnVpbHRpbi9jbG9uZS5jOjEyOAogbXNnaWQgImNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgc2luY2UgYSBzcGVjaWZpYyB0aW1lIgogbXNnc3RyICJjcmVhIHVuIGNsb24gc3VwZXJmaWNpYWwgZGVzIGQndW5hIGhvcmEgZXNwZWPDrWZpY2EiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjcgYnVpbHRpbi9mZXRjaC5jOjE0NiBidWlsdGluL2ZldGNoLmM6MTY5Ci0jOiBidWlsdGluL3JlYmFzZS5jOjgxMworIzogYnVpbHRpbi9jbG9uZS5jOjEyOSBidWlsdGluL2ZldGNoLmM6MTcyIGJ1aWx0aW4vZmV0Y2guYzoxOTUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0NQogbXNnaWQgInJldmlzaW9uIgogbXNnc3RyICJyZXZpc2nDsyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyOCBidWlsdGluL2ZldGNoLmM6MTQ3CisjOiBidWlsdGluL2Nsb25lLmM6MTMwIGJ1aWx0aW4vZmV0Y2guYzoxNzMKIG1zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IGNsb25lLCBleGNsdWRpbmcgcmV2IgogbXNnc3RyICJhcHJvZnVuZGVpeCBsYSBoaXN0w7JyaWEgZCd1biBjbG9uIHN1cGVyZmljaWFsLCBleGNsb2VudCB1bmEgcmV2aXNpw7MiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzIKIG1zZ2lkICJjbG9uZSBvbmx5IG9uZSBicmFuY2gsIEhFQUQgb3IgLS1icmFuY2giCiBtc2dzdHIgImNsb25hIG5vbcOpcyB1bmEgYnJhbmNhLCBIRUFEIG8gLS1icmFuY2giCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzIKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzQKIG1zZ2lkICJkb24ndCBjbG9uZSBhbnkgdGFncywgYW5kIG1ha2UgbGF0ZXIgZmV0Y2hlcyBub3QgdG8gZm9sbG93IHRoZW0iCiBtc2dzdHIgIiIKICJubyBjbG9uZXUgY2FwIGV0aXF1ZXRhLCBpIGZldSBxdWUgZWxzIMKrZmV0Y2jCuyBzZWfDvGVudHMgbm8gZWxzIHNlZ3VlaXhlbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNAorIzogYnVpbHRpbi9jbG9uZS5jOjEzNgogbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIGJlIHNoYWxsb3ciCiBtc2dzdHIgInF1YWxzZXZvbCBzdWJtw7JkdWwgY2xvbmF0IHNlcsOgIHN1cGVyZmljaWFsIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM1IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NworIzogYnVpbHRpbi9jbG9uZS5jOjEzNyBidWlsdGluL2luaXQtZGIuYzo0OTUKIG1zZ2lkICJnaXRkaXIiCiBtc2dzdHIgImRpcmVjdG9yaSBkZSBnaXQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzYgYnVpbHRpbi9pbml0LWRiLmM6NDg4CisjOiBidWlsdGluL2Nsb25lLmM6MTM4IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5NgogbXNnaWQgInNlcGFyYXRlIGdpdCBkaXIgZnJvbSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgInNlcGFyYSBlbCBkaXJlY3RvcmkgZGUgZ2l0IGRlIGwnYXJicmUgZGUgdHJlYmFsbCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNworIzogYnVpbHRpbi9jbG9uZS5jOjEzOQogbXNnaWQgImtleT12YWx1ZSIKIG1zZ3N0ciAiY2xhdT12YWxvciIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzOAorIzogYnVpbHRpbi9jbG9uZS5jOjE0MAogbXNnaWQgInNldCBjb25maWcgaW5zaWRlIHRoZSBuZXcgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiZXN0YWJsZWl4IGxhIGNvbmZpZ3VyYWNpw7MgZGlucyBkZWwgZGlww7JzaXQgbm91IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM5IGJ1aWx0aW4vZmV0Y2guYzoxNjUgYnVpbHRpbi9wdWxsLmM6MjMwCi0jOiBidWlsdGluL3B1c2guYzo1ODMKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDIgYnVpbHRpbi9mZXRjaC5jOjE5MCBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL3B1c2guYzo1NzMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzIKK21zZ2lkICJzZXJ2ZXItc3BlY2lmaWMiCittc2dzdHIgImVzcGVjw61maWMgYWwgc2Vydmlkb3IiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDIgYnVpbHRpbi9mZXRjaC5jOjE5MCBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL3B1c2guYzo1NzMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzMKK21zZ2lkICJvcHRpb24gdG8gdHJhbnNtaXQiCittc2dzdHIgIm9wY2nDsyBhIHRyYW5zbWV0cmUiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDMgYnVpbHRpbi9mZXRjaC5jOjE5MSBidWlsdGluL3B1bGwuYzoyNDAKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3NAogbXNnaWQgInVzZSBJUHY0IGFkZHJlc3NlcyBvbmx5IgogbXNnc3RyICJ1c2Egbm9tw6lzIGFkcmVjZXMgSVB2NCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjE0MSBidWlsdGluL2ZldGNoLmM6MTY3IGJ1aWx0aW4vcHVsbC5jOjIzMwotIzogYnVpbHRpbi9wdXNoLmM6NTg1CisjOiBidWlsdGluL2Nsb25lLmM6MTQ1IGJ1aWx0aW4vZmV0Y2guYzoxOTMgYnVpbHRpbi9wdWxsLmM6MjQzCisjOiBidWlsdGluL3B1c2guYzo1NzYKIG1zZ2lkICJ1c2UgSVB2NiBhZGRyZXNzZXMgb25seSIKIG1zZ3N0ciAidXNhIG5vbcOpcyBhZHJlY2VzIElQdjYiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoyNzkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDkKKyMsIGZ1enp5Cittc2dpZCAiYW55IGNsb25lZCBzdWJtb2R1bGVzIHdpbGwgdXNlIHRoZWlyIHJlbW90ZS10cmFja2luZyBicmFuY2giCittc2dzdHIgInF1YWxzZXZvbCBzdWJtw7JkdWwgY2xvbmF0IHNlcsOgIHN1cGVyZmljaWFsIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTUxCittc2dpZCAiaW5pdGlhbGl6ZSBzcGFyc2UtY2hlY2tvdXQgZmlsZSB0byBpbmNsdWRlIG9ubHkgZmlsZXMgYXQgcm9vdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Nsb25lLmM6Mjg3CiBtc2dpZCAiIgogIk5vIGRpcmVjdG9yeSBuYW1lIGNvdWxkIGJlIGd1ZXNzZWQuXG4iCiAiUGxlYXNlIHNwZWNpZnkgYSBkaXJlY3Rvcnkgb24gdGhlIGNvbW1hbmQgbGluZSIKQEAgLTkzNTYsMTQ4ICsxMTYxMSwxNDkgQEAKICJObyBzJ2hhIHBvZ3V0IGVuZGV2aW5hciBjYXAgbm9tIGRlIGRpcmVjdG9yaS5cbiIKICJFc3BlY2lmaXF1ZXUgdW4gZGlyZWN0b3JpIGVuIGxhIGzDrW5pYSBkJ29yZHJlcyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjMzMgorIzogYnVpbHRpbi9jbG9uZS5jOjM0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbmZvOiBDb3VsZCBub3QgYWRkIGFsdGVybmF0ZSBmb3IgJyVzJzogJXNcbiIKIG1zZ3N0ciAiaW5mbzogTm8gcydoYSBwb2d1dCBhZmVnaXIgdW4gYWx0ZXJuYXRpdSBwZXIgYSDCqyVzwrs6ICVzXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0MDQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyIKLW1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBvYnJpciDCqyVzwrsiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo0MTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZXhpc3RzIGFuZCBpcyBub3QgYSBkaXJlY3RvcnkiCiBtc2dzdHIgIiVzIGV4aXN0ZWl4IGkgbm8gw6lzIGRpcmVjdG9yaSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQyNgotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gc3RhdCAlc1xuIgotbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGZlciBzdGF0IGEgJyVzJ1xuIgorIzogYnVpbHRpbi9jbG9uZS5jOjQzMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXJ0IGl0ZXJhdG9yIG92ZXIgJyVzJyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBhIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ0MwotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gdW5saW5rICclcyciCi1tc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZGVzZW5sbGHDp2FyIMKrJXPCuyIKLQotIzogYnVpbHRpbi9jbG9uZS5jOjQ0OAorIzogYnVpbHRpbi9jbG9uZS5jOjQ2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGxpbmsgJyVzJyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBjcmVhciBsJ2VubGxhw6cgwqslc8K7IgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDUyCisjOiBidWlsdGluL2Nsb25lLmM6NDY0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjb3B5IGZpbGUgdG8gJyVzJyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBjb3BpYXIgZWwgZml0eGVyIGEgwqslc8K7IgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDc4CisjOiBidWlsdGluL2Nsb25lLmM6NDY5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaXRlcmF0ZSBvdmVyICclcyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZWxpbWluYXIgwqslc8K7IgorCisjOiBidWlsdGluL2Nsb25lLmM6NDk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImRvbmUuXG4iCiBtc2dzdHIgImZldC5cbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ5MgorIzogYnVpbHRpbi9jbG9uZS5jOjUwOAorIywgZnV6enkKIG1zZ2lkICIiCiAiQ2xvbmUgc3VjY2VlZGVkLCBidXQgY2hlY2tvdXQgZmFpbGVkLlxuIgogIllvdSBjYW4gaW5zcGVjdCB3aGF0IHdhcyBjaGVja2VkIG91dCB3aXRoICdnaXQgc3RhdHVzJ1xuIgotImFuZCByZXRyeSB0aGUgY2hlY2tvdXQgd2l0aCAnZ2l0IGNoZWNrb3V0IC1mIEhFQUQnXG4iCisiYW5kIHJldHJ5IHdpdGggJ2dpdCByZXN0b3JlIC0tc291cmNlPUhFQUQgOi8nXG4iCiBtc2dzdHIgIiIKICJFbCBjbG9uYXRnZSBoYSB0aW5ndXQgw6h4aXQsIHBlcsOyIGwnYWdhZmFtZW50IGhhXG4iCiAiZmFsbGF0LiBQb2RldSBpbnNwZWNjaW9uYXIgcXXDqCBzJ2hhIGFnYWZhdCBhbWJcbiIKICInZ2l0IHN0YXR1cycgaSB0b3JuYXIgYSBpbnRlbnRhciBsJ2FnYWZhbWVudCBhbWJcbiIKICInZ2l0IGNoZWNrb3V0IC1mIEhFQUQnXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo1NjkKKyM6IGJ1aWx0aW4vY2xvbmUuYzo1ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZpbmQgcmVtb3RlIGJyYW5jaCAlcyB0byBjbG9uZS4iCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgdHJvYmFyIGxhIGJyYW5jYSByZW1vdGEgJXMgcGVyIGEgY2xvbmFyLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjY4MAorIzogYnVpbHRpbi9jbG9uZS5jOjcwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFjdHVhbGl0emFyICVzIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NzMwCisjOiBidWlsdGluL2Nsb25lLmM6NzUyCisjLCBmdXp6eQorbXNnaWQgImZhaWxlZCB0byBpbml0aWFsaXplIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBmaW5hbGl0emFyIMKrJXPCuyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjc3NQogbXNnaWQgInJlbW90ZSBIRUFEIHJlZmVycyB0byBub25leGlzdGVudCByZWYsIHVuYWJsZSB0byBjaGVja291dC5cbiIKIG1zZ3N0ciAiIgogImxhIEhFQUQgcmVtb3QgZXMgcmVmZXJlaXggYSB1bmEgcmVmZXLDqG5jaWEgcXVlIG5vIGV4aXN0ZWl4OyBubyBzJ2hhIHBvZ3V0ICIKICJhZ2FmYXIuXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo3NjEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4MDYKIG1zZ2lkICJ1bmFibGUgdG8gY2hlY2tvdXQgd29ya2luZyB0cmVlIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFnYWZhciBsJ2FyYnJlIGRlIHRyZWJhbGwiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4MDYKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4NTYKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcGFyYW1ldGVycyB0byBjb25maWcgZmlsZSIKIG1zZ3N0ciAibm8gcydoYW4gcG9ndXQgZXNjcml1cmUgZWxzIHBhcsOgbWV0cmVzIGFsIGZpdHhlciBkZSBjb25maWd1cmFjacOzIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODY5CisjOiBidWlsdGluL2Nsb25lLmM6OTE5CiBtc2dpZCAiY2Fubm90IHJlcGFjayB0byBjbGVhbiB1cCIKIG1zZ3N0ciAibm8gZXMgcG90IHJlZW1wYXF1ZXRhciBwZXIgYSBuZXRlamFyIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODcxCisjOiBidWlsdGluL2Nsb25lLmM6OTIxCiBtc2dpZCAiY2Fubm90IHVubGluayB0ZW1wb3JhcnkgYWx0ZXJuYXRlcyBmaWxlIgogbXNnc3RyICJubyBlcyBwb3QgZGVzZW5sbGHDp2FyIGVsIGZpdHhlciBkJ2FsdGVybmF0aXZlcyB0ZW1wb3JhbCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkxMSBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NDEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NTkgYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTQ4CiBtc2dpZCAiVG9vIG1hbnkgYXJndW1lbnRzLiIKIG1zZ3N0ciAiSGkgaGEgbWFzc2EgcGFyw6BtZXRyZXMuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTE1CisjOiBidWlsdGluL2Nsb25lLmM6OTYzCiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIHJlcG9zaXRvcnkgdG8gY2xvbmUuIgogbXNnc3RyICJIZXUgZCdlc3BlY2lmaWNhciB1biBkaXDDsnNpdCBwZXIgYSBjbG9uYXIuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTI4CisjOiBidWlsdGluL2Nsb25lLmM6OTc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIi0tYmFyZSBhbmQgLS1vcmlnaW4gJXMgb3B0aW9ucyBhcmUgaW5jb21wYXRpYmxlLiIKIG1zZ3N0ciAibGVzIG9wY2lvbnMgLS1iYXJlIGkgLS1vcmlnaW4gJXMgc8OzbiBpbmNvbXBhdGlibGVzLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkzMQorIzogYnVpbHRpbi9jbG9uZS5jOjk3OQogbXNnaWQgIi0tYmFyZSBhbmQgLS1zZXBhcmF0ZS1naXQtZGlyIGFyZSBpbmNvbXBhdGlibGUuIgogbXNnc3RyICItLWJhcmUgaSAtLXNlcGFyYXRlLWdpdC1kaXIgc8OzbiBpbmNvbXBhdGlibGVzLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk0NAorIzogYnVpbHRpbi9jbG9uZS5jOjk5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBvc2l0b3J5ICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgImVsIGRpcMOyc2l0IMKrJXPCuyBubyBleGlzdGVpeCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk1MCBidWlsdGluL2ZldGNoLmM6MTYwNgorIzogYnVpbHRpbi9jbG9uZS5jOjk5OCBidWlsdGluL2ZldGNoLmM6MTc4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJkZXB0aCAlcyBpcyBub3QgYSBwb3NpdGl2ZSBudW1iZXIiCi1tc2dzdHIgImxhIHByb2Z1bmRpdGF0ICVzIG5vIMOpcyBub21icmUgcG9zaXRpdSIKK21zZ3N0ciAibGEgcHJvZnVuZGl0YXQgJXMgbm8gw6lzIHVuIG5vbWJyZSBwb3NpdGl1IgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTYwCisjOiBidWlsdGluL2Nsb25lLmM6MTAwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJkZXN0aW5hdGlvbiBwYXRoICclcycgYWxyZWFkeSBleGlzdHMgYW5kIGlzIG5vdCBhbiBlbXB0eSBkaXJlY3RvcnkuIgogbXNnc3RyICJlbCBjYW3DrSBkZXN0w60gwqslc8K7IGphIGV4aXN0ZWl4IGkgbm8gw6lzIHVuIGRpcmVjdG9yaSBidWl0LiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk3MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwMTgKICMsIGMtZm9ybWF0CiBtc2dpZCAid29ya2luZyB0cmVlICclcycgYWxyZWFkeSBleGlzdHMuIgogbXNnc3RyICJsJ2FyYnJlIGRlIHRyZWJhbGwgwqslc8K7IGphIGV4aXN0ZWl4LiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk4NSBidWlsdGluL2Nsb25lLmM6MTAwNiBidWlsdGluL2RpZmZ0b29sLmM6MjcxCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Mjk1IGJ1aWx0aW4vd29ya3RyZWUuYzozMjUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDMzIGJ1aWx0aW4vY2xvbmUuYzoxMDU0IGJ1aWx0aW4vZGlmZnRvb2wuYzoyNzEKKyM6IGJ1aWx0aW4vbG9nLmM6MTg2NiBidWlsdGluL3dvcmt0cmVlLmM6MzAyIGJ1aWx0aW4vd29ya3RyZWUuYzozMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBsZWFkaW5nIGRpcmVjdG9yaWVzIG9mICclcyciCiBtc2dzdHIgIm5vIHMnaGFuIHBvZ3V0IGNyZWFyIGVscyBkaXJlY3RvcmlzIGluaWNpYWxzIGRlIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk5MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSB3b3JrIHRyZWUgZGlyICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgZWwgZGlyZWN0b3JpIGQnYXJicmUgZGUgdHJlYmFsbCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEwCisjOiBidWlsdGluL2Nsb25lLmM6MTA1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJDbG9uaW5nIGludG8gYmFyZSByZXBvc2l0b3J5ICclcycuLi5cbiIKIG1zZ3N0ciAiUydlc3TDoCBjbG9uYW50IGFsIGRpcMOyc2l0IG51IMKrJXPCuy4uLlxuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxMgorIzogYnVpbHRpbi9jbG9uZS5jOjEwNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2xvbmluZyBpbnRvICclcycuLi5cbiIKIG1zZ3N0ciAiUydlc3TDoCBjbG9uYW50IGEgwqslc8K7Li4uXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDM2CisjOiBidWlsdGluL2Nsb25lLmM6MTA4NAogbXNnaWQgIiIKICJjbG9uZSAtLXJlY3Vyc2l2ZSBpcyBub3QgY29tcGF0aWJsZSB3aXRoIGJvdGggLS1yZWZlcmVuY2UgYW5kIC0tcmVmZXJlbmNlLWlmLSIKICJhYmxlIgpAQCAtOTUwNSwzOCArMTE3NjEsMzggQEAKICJjbG9uZSAtLXJlY3Vyc2l2ZSBubyDDqXMgY29tcGF0aWJsZSBhbWIgYW1iZMOzcyAtLXJlZmVyZW5jZSBpIC0tcmVmZXJlbmNlLWlmLSIKICJhYmxlIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA5NworIzogYnVpbHRpbi9jbG9uZS5jOjExNDgKIG1zZ2lkICItLWRlcHRoIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKIG1zZ3N0ciAiLS1kZXB0aCBzJ2lnbm9yYSBlbiBlbHMgY2xvbnMgbG9jYWxzOyB1c2V1IGZpbGU6Ly8gZW4gbGxvYyBkJ2FpeMOyLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwOTkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTUwCiBtc2dpZCAiLS1zaGFsbG93LXNpbmNlIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKIG1zZ3N0ciAiIgogIi0tc2hhbGxvdy1zaW5jZSBzJ2lnbm9yYSBlbiBlbHMgY2xvbnMgbG9jYWxzOyB1c2V1IGZpbGU6Ly8gZW4gbGxvYyBkJ2FpeMOyLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMDEKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTUyCiBtc2dpZCAiLS1zaGFsbG93LWV4Y2x1ZGUgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAiLS1zaGFsbG93LWV4Y2x1ZGUgcydpZ25vcmEgZW4gZWxzIGNsb25zIGxvY2FsczsgdXNldSBmaWxlOi8vIGVuIGxsb2MgZCdhaXjDsi4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAzCisjOiBidWlsdGluL2Nsb25lLmM6MTE1NAogbXNnaWQgIi0tZmlsdGVyIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKIG1zZ3N0ciAiLS1maWx0ZXIgcydpZ25vcmEgZW4gZWxzIGNsb25zIGxvY2FsczsgdXNldSBmaWxlOi8vIGVuIGxsb2MgZCdhaXjDsi4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTA2CisjOiBidWlsdGluL2Nsb25lLmM6MTE1NwogbXNnaWQgInNvdXJjZSByZXBvc2l0b3J5IGlzIHNoYWxsb3csIGlnbm9yaW5nIC0tbG9jYWwiCiBtc2dzdHIgImVsIGRpcMOyc2l0IGZvbnQgw6lzIHN1cGVyZmljaWFsLCBzJ2VzdMOgIGlnbm9yYW50IC0tbG9jYWwiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTExCisjOiBidWlsdGluL2Nsb25lLmM6MTE2MgogbXNnaWQgIi0tbG9jYWwgaXMgaWdub3JlZCIKIG1zZ3N0ciAiLS1sb2NhbCBzJ2lnbm9yYSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExODEgYnVpbHRpbi9jbG9uZS5jOjExODkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjM3IGJ1aWx0aW4vY2xvbmUuYzoxMjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW90ZSBicmFuY2ggJXMgbm90IGZvdW5kIGluIHVwc3RyZWFtICVzIgogbXNnc3RyICJMYSBicmFuY2EgcmVtb3RhICVzIG5vIGVzIHRyb2JhIGVuIGxhIGZvbnQgJXMiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTkyCisjOiBidWlsdGluL2Nsb25lLmM6MTI0OAogbXNnaWQgIllvdSBhcHBlYXIgdG8gaGF2ZSBjbG9uZWQgYW4gZW1wdHkgcmVwb3NpdG9yeS4iCiBtc2dzdHIgIlNlbWJsYSBxdWUgaGV1IGNsb25hdCB1biBkaXDDsnNpdCBidWl0LiIKIApAQCAtOTU3MiwxNSArMTE4MjgsODYgQEAKIG1zZ2lkICItLWNvbW1hbmQgbXVzdCBiZSB0aGUgZmlyc3QgYXJndW1lbnQiCiBtc2dzdHIgIi0tY29tbWFuZCBoYSBkZSBzZXIgZWwgcHJpbWVyIHBhcsOgbWV0cmUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDAKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxOAorbXNnaWQgIiIKKyJnaXQgY29tbWl0LXRyZWUgWygtcCA8cGFyZW50PikuLi5dIFstU1s8a2V5aWQ+XV0gWygtbSA8bWVzc2FnZT4pLi4uXSBbKC1GICIKKyI8ZmlsZT4pLi4uXSA8dHJlZT4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjMxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGFyZW50ICVzIGlnbm9yZWQiCittc2dzdHIgInN1cHJpbWVpeCBsZXMgcmVmZXLDqG5jaWVzIHJlZW1wbGHDp2FkZXMiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzo1NiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTM2IGJ1aWx0aW4vbG9nLmM6NTI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIKK21zZ3N0ciAibm8gw6lzIHVuIG5vbSBkJ29iamVjdGUgdsOgbGlkOiAlcyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byBvcGVuICclcyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gb2JyaXIgwqslc8K7IgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6OTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQgJyVzJyIKK21zZ3N0ciAiZ2l0IHdyaXRlLXRyZWUgaGEgZmFsbGF0IGVuIGVzY3JpdXJlIHVuIGFyYnJlIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6OTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIGNsb3NlICclcyciCittc2dzdHIgImdpdCB3cml0ZS10cmVlIGhhIGZhbGxhdCBlbiBlc2NyaXVyZSB1biBhcmJyZSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExMQorIywgZnV6enkKK21zZ2lkICJwYXJlbnQiCittc2dzdHIgInBhcmUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTIKKyMsIGZ1enp5Cittc2dpZCAiaWQgb2YgYSBwYXJlbnQgY29tbWl0IG9iamVjdCIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBlc2NyaXVyZSBsJ29iamVjdGUgZGUgY29taXNzacOzIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE0IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NiBidWlsdGluL21lcmdlLmM6MjcwCisjOiBidWlsdGluL25vdGVzLmM6NDA5IGJ1aWx0aW4vbm90ZXMuYzo1NzUgYnVpbHRpbi9zdGFzaC5jOjE0NjkKKyM6IGJ1aWx0aW4vdGFnLmM6NDEyCittc2dpZCAibWVzc2FnZSIKK21zZ3N0ciAibWlzc2F0Z2UiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTUgYnVpbHRpbi9jb21taXQuYzoxNDk2Cittc2dpZCAiY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIm1pc3NhdGdlIGRlIGNvbWlzc2nDsyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExOAorIywgZnV6enkKK21zZ2lkICJyZWFkIGNvbW1pdCBsb2cgbWVzc2FnZSBmcm9tIGZpbGUiCittc2dzdHIgImxsZWdpdSBlbCBtaXNzYXRnZSBkZXMgZCd1biBmaXR4ZXIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMjEgYnVpbHRpbi9jb21taXQuYzoxNTA4IGJ1aWx0aW4vbWVyZ2UuYzoyODcKKyM6IGJ1aWx0aW4vcHVsbC5jOjE5NSBidWlsdGluL3JldmVydC5jOjExOAorbXNnaWQgIkdQRyBzaWduIGNvbW1pdCIKK21zZ3N0ciAic2lnbmEgbGEgY29taXNzacOzIGFtYiBHUEciCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMzMKKyMsIGZ1enp5Cittc2dpZCAibXVzdCBnaXZlIGV4YWN0bHkgb25lIHRyZWUiCittc2dzdHIgIkNhbCBleGFjdGFtZW50IHVuIHJhbmcuIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTQwCisjLCBmdXp6eQorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQiCittc2dzdHIgImdpdCB3cml0ZS10cmVlIGhhIGZhbGxhdCBlbiBlc2NyaXVyZSB1biBhcmJyZSIKKworIzogYnVpbHRpbi9jb21taXQuYzo0MQogbXNnaWQgImdpdCBjb21taXQgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICJnaXQgY29tbWl0IFs8b3BjaW9ucz5dIFstLV0gPGVzcGVjaWZpY2FjacOzLWRlLWNhbcOtPi4uLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NQorIzogYnVpbHRpbi9jb21taXQuYzo0NgogbXNnaWQgImdpdCBzdGF0dXMgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICJnaXQgc3RhdHVzIFs8b3BjaW9ucz5dIFstLV0gPGVzcGVjaWZpY2FjacOzLWRlLWNhbcOtPi4uLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo1MAorIzogYnVpbHRpbi9jb21taXQuYzo1MQogbXNnaWQgIiIKICJZb3UgYXNrZWQgdG8gYW1lbmQgdGhlIG1vc3QgcmVjZW50IGNvbW1pdCwgYnV0IGRvaW5nIHNvIHdvdWxkIG1ha2VcbiIKICJpdCBlbXB0eS4gWW91IGNhbiByZXBlYXQgeW91ciBjb21tYW5kIHdpdGggLS1hbGxvdy1lbXB0eSwgb3IgeW91IGNhblxuIgpAQCAtOTU5MCw3ICsxMTkxNyw3IEBACiAiZGVpeGFyaWEgYnVpZGEuIFBvZGV1IHJlcGV0aXIgbGEgdm9zdHJhIG9yZHJlIGFtYiAtLWFsbG93LWVtcHR5LCBvXG4iCiAicG9kZXUgZWxpbWluYXIgbGEgY29taXNzacOzIHBlciBjb21wbGV0IGFtYiBcImdpdCByZXNldCBIRUFEXlwiLlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU1CisjOiBidWlsdGluL2NvbW1pdC5jOjU2CiBtc2dpZCAiIgogIlRoZSBwcmV2aW91cyBjaGVycnktcGljayBpcyBub3cgZW1wdHksIHBvc3NpYmx5IGR1ZSB0byBjb25mbGljdCByZXNvbHV0aW9uLlxuIgogIklmIHlvdSB3aXNoIHRvIGNvbW1pdCBpdCBhbnl3YXksIHVzZTpcbiIKQEAgLTk2MDUsODEgKzExOTMyLDg4IEBACiAiICAgIGdpdCBjb21taXQgLS1hbGxvdy1lbXB0eVxuIgogIlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjYyCi1tc2dpZCAiT3RoZXJ3aXNlLCBwbGVhc2UgdXNlICdnaXQgcmVzZXQnXG4iCisjOiBidWlsdGluL2NvbW1pdC5jOjYzCisjLCBmdXp6eQorbXNnaWQgIk90aGVyd2lzZSwgcGxlYXNlIHVzZSAnZ2l0IGNoZXJyeS1waWNrIC0tc2tpcCdcbiIKIG1zZ3N0ciAiRCdhbHRyYSBtYW5lcmEsIHVzZXUgwqtnaXQgcmVzZXTCu1xuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY1CisjOiBidWlsdGluL2NvbW1pdC5jOjY2CiBtc2dpZCAiIgorImFuZCB0aGVuIHVzZTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcbiIKKyJcbiIKKyJ0byByZXN1bWUgY2hlcnJ5LXBpY2tpbmcgdGhlIHJlbWFpbmluZyBjb21taXRzLlxuIgogIklmIHlvdSB3aXNoIHRvIHNraXAgdGhpcyBjb21taXQsIHVzZTpcbiIKICJcbiIKLSIgICAgZ2l0IHJlc2V0XG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLXNraXBcbiIKICJcbiIKLSJUaGVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB3aWxsIHJlc3VtZSBjaGVycnktcGlja2luZ1xuIgotInRoZSByZW1haW5pbmcgY29tbWl0cy5cbiIKIG1zZ3N0ciAiIgotIlNpIHZvbGV1IG9tZXRyZSBhcXVlc3RhIGNvbWlzc2nDsywgdXNldTpcbiIKLSJcbiIKLSIgICAgZ2l0IHJlc2V0XG4iCi0iXG4iCi0iTGxhdm9ycyBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgcmVwcmVuZHLDoFxuIgotImNvbSBhIMKrY2hlcnJ5IHBpY2vCuyBsZXMgY29taXNzaW9ucyByZXN0YW50cy5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzozMTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzE1CiBtc2dpZCAiZmFpbGVkIHRvIHVucGFjayBIRUFEIHRyZWUgb2JqZWN0IgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGRlc2VtcGFxdWV0YXIgbCdvYmplY3RlIGQnYXJicmUgSEVBRCIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNTIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzUxCisjLCBmdXp6eQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiLWEgbm8gdMOpIHNlbnRpdCBhbWIgY2FtaW5zLiIKKworIzogYnVpbHRpbi9jb21taXQuYzozNjQKK21zZ2lkICJObyBwYXRocyB3aXRoIC0taW5jbHVkZS8tLW9ubHkgZG9lcyBub3QgbWFrZSBzZW5zZS4iCittc2dzdHIgIi0taW5jbHVkZS8tLW9ubHkgbm8gdMOpIHNlbnRpdCBzZW5zZSBjYW3DrS4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzc2CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgdW4gw61uZGV4IHRlbXBvcmFsIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM1OAorIzogYnVpbHRpbi9jb21taXQuYzozODIKIG1zZ2lkICJpbnRlcmFjdGl2ZSBhZGQgZmFpbGVkIgogbXNnc3RyICJsJ2FmZWdpbWVudCBpbnRlcmFjdGl1IGhhIGZhbGxhdCIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNzEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzk2CiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYWN0dWFsaXR6YXIgbCfDrW5kZXggdGVtcG9yYWwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzczCisjOiBidWlsdGluL2NvbW1pdC5jOjM5OAogbXNnaWQgIkZhaWxlZCB0byB1cGRhdGUgbWFpbiBjYWNoZSB0cmVlIgogbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGFjdHVhbGl0emFyIGwnYXJicmUgcHJpbmNpcGFsIGRlIG1lbcOycmlhIGNhdSIKIAotIzogYnVpbHRpbi9jb21taXQuYzozOTggYnVpbHRpbi9jb21taXQuYzo0MjEgYnVpbHRpbi9jb21taXQuYzo0NjcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDIzIGJ1aWx0aW4vY29tbWl0LmM6NDQ2IGJ1aWx0aW4vY29tbWl0LmM6NDkyCiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ld19pbmRleCBmaWxlIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIGVsIGZpdHhlciBuZXdfaW5kZXgiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDUwCisjOiBidWlsdGluL2NvbW1pdC5jOjQ3NQogbXNnaWQgImNhbm5vdCBkbyBhIHBhcnRpYWwgY29tbWl0IGR1cmluZyBhIG1lcmdlLiIKIG1zZ3N0ciAibm8gZXMgcG90IGZlciB1bmEgY29taXNzacOzIHBhcmNpYWwgZHVyYW50IHVuYSBmdXNpw7MuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ1MgorIzogYnVpbHRpbi9jb21taXQuYzo0NzcKIG1zZ2lkICJjYW5ub3QgZG8gYSBwYXJ0aWFsIGNvbW1pdCBkdXJpbmcgYSBjaGVycnktcGljay4iCiBtc2dzdHIgIm5vIGVzIHBvdCBmZXIgdW5hIGNvbWlzc2nDsyBwYXJjaWFsIGR1cmFudCB1biDCq2NoZXJyeSBwaWNrwrsuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ2MAorIzogYnVpbHRpbi9jb21taXQuYzo0ODUKIG1zZ2lkICJjYW5ub3QgcmVhZCB0aGUgaW5kZXgiCiBtc2dzdHIgIm5vIGVzIHBvdCBsbGVnaXIgbCfDrW5kZXgiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDc5CisjOiBidWlsdGluL2NvbW1pdC5jOjUwNAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0ZW1wb3JhcnkgaW5kZXggZmlsZSIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSB1biBmaXR4ZXIgZCfDrW5kZXggdGVtcG9yYWwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTc3CisjOiBidWlsdGluL2NvbW1pdC5jOjYwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJyVzJyBsYWNrcyBhdXRob3IgaGVhZGVyIgogbXNnc3RyICJhIGxhIGNvbWlzc2nDsyDCqyVzwrsgbGkgbWFuY2EgbGEgY2Fww6dhbGVyYSBkJ2F1dG9yIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3OQorIzogYnVpbHRpbi9jb21taXQuYzo2MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgaGFzIG1hbGZvcm1lZCBhdXRob3IgbGluZSIKIG1zZ3N0ciAibGEgY29taXNzacOzIMKrJXPCuyB0w6kgdW5hIGzDrW5pYSBkJ2F1dG9yIG1hbCBmb3JtYWRhIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU5OAorIzogYnVpbHRpbi9jb21taXQuYzo2MjMKIG1zZ2lkICJtYWxmb3JtZWQgLS1hdXRob3IgcGFyYW1ldGVyIgogbXNnc3RyICJwYXLDoG1ldHJlIC0tYXV0aG9yIG1hbCBmb3JtYXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjUwCisjOiBidWlsdGluL2NvbW1pdC5jOjY3NgogbXNnaWQgIiIKICJ1bmFibGUgdG8gc2VsZWN0IGEgY29tbWVudCBjaGFyYWN0ZXIgdGhhdCBpcyBub3QgdXNlZFxuIgogImluIHRoZSBjdXJyZW50IGNvbW1pdCBtZXNzYWdlIgpAQCAtOTY4NywzOCArMTIwMjEsMzggQEAKICJubyBlcyBwb3Qgc2VsZWNjaW9uYXIgdW4gY2Fyw6BjdGVyIGRlIGNvbWVudGFyaSBxdWVcbiIKICJubyBzaWd1aSB1c2F0IGVuIGVsIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyBhY3R1YWwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Njg3IGJ1aWx0aW4vY29tbWl0LmM6NzIwIGJ1aWx0aW4vY29tbWl0LmM6MTA0OQorIzogYnVpbHRpbi9jb21taXQuYzo3MTQgYnVpbHRpbi9jb21taXQuYzo3NDcgYnVpbHRpbi9jb21taXQuYzoxMDkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb29rdXAgY29tbWl0ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHRyb2JhciBsYSBjb21pc3Npw7MgJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Njk5IGJ1aWx0aW4vc2hvcnRsb2cuYzozMTcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzI2IGJ1aWx0aW4vc2hvcnRsb2cuYzozMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiKHJlYWRpbmcgbG9nIG1lc3NhZ2UgZnJvbSBzdGFuZGFyZCBpbnB1dClcbiIKIG1zZ3N0ciAiKHMnZXN0w6AgbGxlZ2ludCBlbCBtaXNzYXRnZSBkZSByZWdpc3RyZSBkZXMgZGUgbCdlbnRyYWRhIGVzdMOgbmRhcmQpXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzAxCisjOiBidWlsdGluL2NvbW1pdC5jOjcyOAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGxvZyBmcm9tIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBlbCByZWdpc3RyZSBkZXMgZGUgbCdlbnRyYWRhIGVzdMOgbmRhcmQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzA1CisjOiBidWlsdGluL2NvbW1pdC5jOjczMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBsb2cgZmlsZSAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBlbCBmaXR4ZXIgZGUgcmVnaXN0cmUgwqslc8K7IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjczNCBidWlsdGluL2NvbW1pdC5jOjc0MgorIzogYnVpbHRpbi9jb21taXQuYzo3NjMgYnVpbHRpbi9jb21taXQuYzo3NzkKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBTUVVBU0hfTVNHIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBTUVVBU0hfTVNHIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjczOQorIzogYnVpbHRpbi9jb21taXQuYzo3NzAKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBNRVJHRV9NU0ciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIE1FUkdFX01TRyIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3OTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODMwCiBtc2dpZCAiY291bGQgbm90IHdyaXRlIGNvbW1pdCB0ZW1wbGF0ZSIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBsYSBwbGFudGlsbGEgZGUgY29taXNzacOzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjgxMQorIzogYnVpbHRpbi9jb21taXQuYzo4NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtOTczMyw3ICsxMjA2Nyw3IEBACiAiXHQlc1xuIgogImkgaW50ZW50ZXUtaG8gZGUgbm91LlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjgxNgorIzogYnVpbHRpbi9jb21taXQuYzo4NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtOTc0OCwxNyArMTIwODIsMTcgQEAKICJcdCVzXG4iCiAiaSBpbnRlbnRldS1obyBkZSBub3UuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODI5CisjOiBidWlsdGluL2NvbW1pdC5jOjg2NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgeW91ciBjaGFuZ2VzLiBMaW5lcyBzdGFydGluZ1xuIgogIndpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQsIGFuZCBhbiBlbXB0eSBtZXNzYWdlIGFib3J0cyB0aGUgY29tbWl0LlxuIgogbXNnc3RyICIiCiAiSW50cm9kdcOvdSBlbCBtaXNzYXRnZSBkZSBjb21pc3Npw7MgZGVscyB2b3N0cmVzIGNhbnZpcy5cbiIKLSJTJ2lnbm9yYXJhbiBsZXMgbMOtbmllcyBjb21lbsOnYW50IGFtYiAnJWMnLCBpIHVuIG1pc3NhdGdlIGRlXG4iCisiUydpZ25vcmFyYW4gbGVzIGzDrW5pZXMgcXVlIGNvbWVuY2luIGFtYiDCqyVjwrssIGkgdW4gbWlzc2F0Z2UgZGVcbiIKICJjb21pc3Npw7MgYnVpdCBhdm9ydGEgbGEgY29taXNzacOzLlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjgzNworIzogYnVpbHRpbi9jb21taXQuYzo4NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlBsZWFzZSBlbnRlciB0aGUgY29tbWl0IG1lc3NhZ2UgZm9yIHlvdXIgY2hhbmdlcy4gTGluZXMgc3RhcnRpbmdcbiIKQEAgLTk3NjYsMTU0ICsxMjEwMCwxNDYgQEAKICJBbiBlbXB0eSBtZXNzYWdlIGFib3J0cyB0aGUgY29tbWl0LlxuIgogbXNnc3RyICIiCiAiSW50cm9kdcOvdSBlbCBtaXNzYXRnZSBkZSBjb21pc3Npw7MgZGVscyB2b3N0cmVzIGNhbnZpcy5cbiIKLSJFcyBtYW50aW5kcmFuIGxlcyBsw61uaWVzIHF1ZSBjb21lbmNpbiBhbWIgJyVjJzsgcG9kZXUgZWxpbWluYXItbGVzICIKKyJFcyBtYW50aW5kcmFuIGxlcyBsw61uaWVzIHF1ZSBjb21lbmNpbiBhbWIgwqslY8K7OyBwb2RldSBlbGltaW5hci1sZXMgIgogInZvc2FsdHJlc1xuIgogIm1hdGVpeG9zIHNpIHZvbGV1LiBVbiBtaXNzYXRnZSBidWl0IGF2b3J0YSBsYSBjb21pc3Npw7MuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODU0CisjOiBidWlsdGluL2NvbW1pdC5jOjg5MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0F1dGhvcjogICAgJS4qcyA8JS4qcz4iCiBtc2dzdHIgIiVzQXV0b3I6ICAgICUuKnMgPCUuKnM+IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjg2MgorIzogYnVpbHRpbi9jb21taXQuYzo5MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXNEYXRlOiAgICAgICVzIgogbXNnc3RyICIlc0RhdGE6ICAgICAgJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODY5CisjOiBidWlsdGluL2NvbW1pdC5jOjkwNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0NvbW1pdHRlcjogJS4qcyA8JS4qcz4iCiBtc2dzdHIgIiVzQ29taXRlbnQ6ICUuKnMgPCUuKnM+IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjg4NworIzogYnVpbHRpbi9jb21taXQuYzo5MjUKIG1zZ2lkICJDYW5ub3QgcmVhZCBpbmRleCIKIG1zZ3N0ciAiTm8gZXMgcG90IGxsZWdpciBsJ8OtbmRleCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo5NTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTkyCiBtc2dpZCAiRXJyb3IgYnVpbGRpbmcgdHJlZXMiCiBtc2dzdHIgIkVycm9yIGVuIGNvbnN0cnVpciBhcmJyZXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6OTY3IGJ1aWx0aW4vdGFnLmM6MjU4CisjOiBidWlsdGluL2NvbW1pdC5jOjEwMDYgYnVpbHRpbi90YWcuYzoyNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiUGxlYXNlIHN1cHBseSB0aGUgbWVzc2FnZSB1c2luZyBlaXRoZXIgLW0gb3IgLUYgb3B0aW9uLlxuIgogbXNnc3RyICJFc3BlY2lmaXF1ZXUgZWwgbWlzc2F0Z2UgdXNhbnQgbCdvcGNpw7MgLW0gbyBsJ29wY2nDsyAtRi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDExCisjOiBidWlsdGluL2NvbW1pdC5jOjEwNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiLS1hdXRob3IgJyVzJyBpcyBub3QgJ05hbWUgPGVtYWlsPicgYW5kIG1hdGNoZXMgbm8gZXhpc3RpbmcgYXV0aG9yIgogbXNnc3RyICIiCiAiLS1hdXRob3Igwqslc8K7IG5vIMOpcyDCq05vbSA8YWRyZcOnYS1lbGVjdHLDsm5pY2E+wrsgaSBubyBjb2luY2lkZWl4IGFtYlxuIgogImNhcCBhdXRvciBleGlzdGVudCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDI1CisjOiBidWlsdGluL2NvbW1pdC5jOjEwNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBpZ25vcmVkIG1vZGUgJyVzJyIKIG1zZ3N0ciAibW9kZSBpZ25vcmF0IG5vIHbDoGxpZCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAzOSBidWlsdGluL2NvbW1pdC5jOjEyNzYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA4MiBidWlsdGluL2NvbW1pdC5jOjEzMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB1bnRyYWNrZWQgZmlsZXMgbW9kZSAnJXMnIgogbXNnc3RyICJNb2RlIGRlIGZpdHhlcnMgbm8gc2VndWl0cyBubyB2w6BsaWQgwqslc8K7IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwNzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyMgogbXNnaWQgIi0tbG9uZyBhbmQgLXogYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1sb25nIGkgLXogc8OzbiBpbmNvbXBhdGlibGVzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE2NgogbXNnaWQgIlVzaW5nIGJvdGggLS1yZXNldC1hdXRob3IgYW5kIC0tYXV0aG9yIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIlVzYXIgYW1iZMOzcyAtLXJlc2V0LWF1dGhvciBpIC0tYXV0aG9yIG5vIHTDqSBzZW50aXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTExOQorIzogYnVpbHRpbi9jb21taXQuYzoxMTc1CiBtc2dpZCAiWW91IGhhdmUgbm90aGluZyB0byBhbWVuZC4iCiBtc2dzdHIgIk5vIHRlbml1IHJlcyBhIGVzbWVuYXIuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE3OAogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIC0tIGNhbm5vdCBhbWVuZC4iCiBtc2dzdHIgIkVzdGV1IGVubWlnIGQndW5hIGZ1c2nDsyAtLSBubyBlcyBwb3QgZXNtZW5hci4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNAorIzogYnVpbHRpbi9jb21taXQuYzoxMTgwCiBtc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgY2hlcnJ5LXBpY2sgLS0gY2Fubm90IGFtZW5kLiIKIG1zZ3N0ciAiRXN0ZXUgZW5taWcgZCd1biDCq2NoZXJyeSBwaWNrwrsgLS0gbm8gZXMgcG90IGVzbWVuYXIuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMjcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MwogbXNnaWQgIk9wdGlvbnMgLS1zcXVhc2ggYW5kIC0tZml4dXAgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCiBtc2dzdHIgIkxlcyBvcGNpb25zIC0tc3F1YXNoIGkgLS1maXh1cCBubyBlcyBwb2RlbiB1c2FyIGp1bnRlcyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTM3CisjOiBidWlsdGluL2NvbW1pdC5jOjExOTMKIG1zZ2lkICJPbmx5IG9uZSBvZiAtYy8tQy8tRi8tLWZpeHVwIGNhbiBiZSB1c2VkLiIKIG1zZ3N0ciAiTm9tw6lzIHVuIGRlIC1jLy1DLy1GLy0tZml4dXAgZXMgcG90IHVzYXIuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE5NQogbXNnaWQgIk9wdGlvbiAtbSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCAtYy8tQy8tRi4iCiBtc2dzdHIgIkwnb3BjacOzIC1tIG5vIGVzIHBvdCBjb21iaW5hciBhbWIgLWMvLUMvLUYvLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTQ3CisjOiBidWlsdGluL2NvbW1pdC5jOjEyMDMKIG1zZ2lkICItLXJlc2V0LWF1dGhvciBjYW4gYmUgdXNlZCBvbmx5IHdpdGggLUMsIC1jIG9yIC0tYW1lbmQuIgogbXNnc3RyICItLXJlc2V0LWF1dGhvciBub23DqXMgZXMgcG90IHVzYXIgYW1iIC1DLCAtYyBvIC0tYW1lbmQuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIyMAogbXNnaWQgIk9ubHkgb25lIG9mIC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIGNhbiBiZSB1c2VkLiIKIG1zZ3N0ciAiTm9tw6lzIHVuIGRlIC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIGVzIHBvdCB1c2FyLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTY2Ci1tc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgotbXNnc3RyICItLWluY2x1ZGUvLS1vbmx5IG5vIHTDqSBzZW50aXQgc2Vuc2UgY2Ftw60uIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjExODAgYnVpbHRpbi90YWcuYzo1NDYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiSW52YWxpZCBjbGVhbnVwIG1vZGUgJXMiCi1tc2dzdHIgIk1vZGUgZGUgbmV0ZWphIG5vIHbDoGxpZCAlcyIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxMTg1Ci1tc2dpZCAiUGF0aHMgd2l0aCAtYSBkb2VzIG5vdCBtYWtlIHNlbnNlLiIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIyNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicGF0aHMgJyVzIC4uLicgd2l0aCAtYSBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItYSBubyB0w6kgc2VudGl0IGFtYiBjYW1pbnMuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTEgYnVpbHRpbi9jb21taXQuYzoxNDk1CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNTcgYnVpbHRpbi9jb21taXQuYzoxNTE5CiBtc2dpZCAic2hvdyBzdGF0dXMgY29uY2lzZWx5IgogbXNnc3RyICJtb3N0cmEgbCdlc3RhdCBjb25jaXNhbWVudCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzEzIGJ1aWx0aW4vY29tbWl0LmM6MTQ5NworIzogYnVpbHRpbi9jb21taXQuYzoxMzU5IGJ1aWx0aW4vY29tbWl0LmM6MTUyMQogbXNnaWQgInNob3cgYnJhbmNoIGluZm9ybWF0aW9uIgogbXNnc3RyICJtb3N0cmEgbGEgaW5mb3JtYWNpw7MgZGUgYnJhbmNhIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MQogbXNnaWQgInNob3cgc3Rhc2ggaW5mb3JtYXRpb24iCiBtc2dzdHIgIm1vc3RyYSBsYSBpbmZvcm1hY2nDsyBkZSDCq3N0YXNowrsiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxNyBidWlsdGluL2NvbW1pdC5jOjE0OTkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MyBidWlsdGluL2NvbW1pdC5jOjE1MjMKIG1zZ2lkICJjb21wdXRlIGZ1bGwgYWhlYWQvYmVoaW5kIHZhbHVlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2NQogbXNnaWQgInZlcnNpb24iCiBtc2dzdHIgInZlcnNpw7MiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxOSBidWlsdGluL2NvbW1pdC5jOjE1MDEgYnVpbHRpbi9wdXNoLmM6NTU4Ci0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjM5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjUgYnVpbHRpbi9jb21taXQuYzoxNTI1IGJ1aWx0aW4vcHVzaC5jOjU0OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY1MAogbXNnaWQgIm1hY2hpbmUtcmVhZGFibGUgb3V0cHV0IgogbXNnc3RyICJzb3J0aWRhIGxsZWdpYmxlIHBlciBtw6BxdWluYSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzIyIGJ1aWx0aW4vY29tbWl0LmM6MTUwMworIzogYnVpbHRpbi9jb21taXQuYzoxMzY4IGJ1aWx0aW4vY29tbWl0LmM6MTUyNwogbXNnaWQgInNob3cgc3RhdHVzIGluIGxvbmcgZm9ybWF0IChkZWZhdWx0KSIKIG1zZ3N0ciAibW9zdHJhIGwnZXN0YXQgZW4gZm9ybWF0IGxsYXJnIChwZXIgZGVmZWN0ZSkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNSBidWlsdGluL2NvbW1pdC5jOjE1MDYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3MSBidWlsdGluL2NvbW1pdC5jOjE1MzAKIG1zZ2lkICJ0ZXJtaW5hdGUgZW50cmllcyB3aXRoIE5VTCIKIG1zZ3N0ciAiYWNhYmEgbGVzIGVudHJhZGVzIGFtYiBOVUwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNyBidWlsdGluL2NvbW1pdC5jOjEzMzEgYnVpbHRpbi9jb21taXQuYzoxNTA5Ci0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAwNyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMCBidWlsdGluL3JlYmFzZS5jOjg5MgotIzogYnVpbHRpbi90YWcuYzo0MDAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3MyBidWlsdGluL2NvbW1pdC5jOjEzNzcgYnVpbHRpbi9jb21taXQuYzoxNTMzCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1MyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTkgYnVpbHRpbi9yZWJhc2UuYzoxNTI1IHBhcnNlLW9wdGlvbnMuaDozMzYKIG1zZ2lkICJtb2RlIgogbXNnc3RyICJtb2RlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjggYnVpbHRpbi9jb21taXQuYzoxNTA5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzQgYnVpbHRpbi9jb21taXQuYzoxNTMzCiBtc2dpZCAic2hvdyB1bnRyYWNrZWQgZmlsZXMsIG9wdGlvbmFsIG1vZGVzOiBhbGwsIG5vcm1hbCwgbm8uIChEZWZhdWx0OiBhbGwpIgogbXNnc3RyICIiCiAibW9zdHJhIGVscyBmaXR4ZXJzIG5vIHNlZ3VpdHMsIG1vZGVzIG9wY2lvbmFsczogYWxsLCBub3JtYWwsIG5vLiAoUGVyICIKICJkZWZlY3RlOiBhbGwpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3OAogbXNnaWQgIiIKICJzaG93IGlnbm9yZWQgZmlsZXMsIG9wdGlvbmFsIG1vZGVzOiB0cmFkaXRpb25hbCwgbWF0Y2hpbmcsIG5vLiAoRGVmYXVsdDogIgogInRyYWRpdGlvbmFsKSIKQEAgLTk5MjEsMTEgKzEyMjQ3LDExIEBACiAibW9zdHJhIGVscyBmaXR4ZXJzIGlnbm9yYXRzLCBtb2RlcyBvcGNpb25hbHM6IHRyYWRpdGlvbmFsLCBtYXRjaGluZywgbm8uICIKICIoUGVyIGRlZmVjdGU6IHRyYWRpdGlvbmFsLCBtYXRjaGluZywgbm8uKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM0IHBhcnNlLW9wdGlvbnMuaDoxNjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4MCBwYXJzZS1vcHRpb25zLmg6MTkyCiBtc2dpZCAid2hlbiIKIG1zZ3N0ciAicXVhbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM1CisjOiBidWlsdGluL2NvbW1pdC5jOjEzODEKIG1zZ2lkICIiCiAiaWdub3JlIGNoYW5nZXMgdG8gc3VibW9kdWxlcywgb3B0aW9uYWwgd2hlbjogYWxsLCBkaXJ0eSwgdW50cmFja2VkLiAiCiAiKERlZmF1bHQ6IGFsbCkiCkBAIC05OTMzLDI1MyArMTIyNTksMjQ0IEBACiAiaWdub3JhIGVscyBjYW52aXMgYWxzIHN1Ym3DsmR1bHMsIG9wY2lvbmFsIHF1YW46IGFsbCwgZGlydHksIHVudHJhY2tlZC4gKFBlciAiCiAiZGVmZWN0ZTogYWxsKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM3CisjOiBidWlsdGluL2NvbW1pdC5jOjEzODMKIG1zZ2lkICJsaXN0IHVudHJhY2tlZCBmaWxlcyBpbiBjb2x1bW5zIgogbXNnc3RyICJtb3N0cmEgZWxzIGZpdHhlcnMgbm8gc2VndWl0cyBlbiBjb2x1bW5lcyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM4Ci0jLCBmdXp6eQorIzogYnVpbHRpbi9jb21taXQuYzoxMzg0CiBtc2dpZCAiZG8gbm90IGRldGVjdCByZW5hbWVzIgotbXNnc3RyICJubyBjb25zdWx0aXMgZWxzIHJlbW90cyIKK21zZ3N0ciAibm8gZGV0ZWN0aXMgY2FudmlzIGRlIG5vbXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTM0MAorIzogYnVpbHRpbi9jb21taXQuYzoxMzg2CiBtc2dpZCAiZGV0ZWN0IHJlbmFtZXMsIG9wdGlvbmFsbHkgc2V0IHNpbWlsYXJpdHkgaW5kZXgiCi1tc2dzdHIgIiIKK21zZ3N0ciAiZGV0ZWN0YSBjYW52aXMgZGUgbm9tcywgaSBvcGNpb25hbG1lbnQgZXN0YWJsZWl4IHVuIMOtbmRleCBkZSBzZW1ibGFuw6dhIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzNjAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQwNgogbXNnaWQgIlVuc3VwcG9ydGVkIGNvbWJpbmF0aW9uIG9mIGlnbm9yZWQgYW5kIHVudHJhY2tlZC1maWxlcyBhcmd1bWVudHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDY1CisjOiBidWlsdGluL2NvbW1pdC5jOjE0ODkKIG1zZ2lkICJzdXBwcmVzcyBzdW1tYXJ5IGFmdGVyIHN1Y2Nlc3NmdWwgY29tbWl0IgogbXNnc3RyICJvbWV0IGVsIHJlc3VtIGRlc3Byw6lzIGQndW5hIGNvbWlzc2nDsyByZWVpeGlkYSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDY2CisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTAKIG1zZ2lkICJzaG93IGRpZmYgaW4gY29tbWl0IG1lc3NhZ2UgdGVtcGxhdGUiCiBtc2dzdHIgIm1vc3RyYSBsYSBkaWZlcsOobmNpYSBlbiBsYSBwbGFudGlsbGEgZGUgbWlzc2F0Z2UgZGUgY29taXNzacOzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MgogbXNnaWQgIkNvbW1pdCBtZXNzYWdlIG9wdGlvbnMiCiBtc2dzdHIgIk9wY2lvbnMgZGUgbWlzc2F0Z2UgZGUgY29taXNzacOzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjkgYnVpbHRpbi9tZXJnZS5jOjI2MyBidWlsdGluL3RhZy5jOjM5NworIzogYnVpbHRpbi9jb21taXQuYzoxNDkzIGJ1aWx0aW4vbWVyZ2UuYzoyNzQgYnVpbHRpbi90YWcuYzo0MTQKIG1zZ2lkICJyZWFkIG1lc3NhZ2UgZnJvbSBmaWxlIgogbXNnc3RyICJsbGVnaXUgZWwgbWlzc2F0Z2UgZGVzIGQndW4gZml0eGVyIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NAogbXNnaWQgImF1dGhvciIKIG1zZ3N0ciAiYXV0b3IiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MAorIzogYnVpbHRpbi9jb21taXQuYzoxNDk0CiBtc2dpZCAib3ZlcnJpZGUgYXV0aG9yIGZvciBjb21taXQiCiBtc2dzdHIgImF1dG9yIGNvcnJlZ2l0IGRlIGxhIGNvbWlzc2nDsyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcxIGJ1aWx0aW4vZ2MuYzo1MTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NSBidWlsdGluL2djLmM6NTM4CiBtc2dpZCAiZGF0ZSIKIG1zZ3N0ciAiZGF0YSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcxCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTUKIG1zZ2lkICJvdmVycmlkZSBkYXRlIGZvciBjb21taXQiCiBtc2dzdHIgImRhdGEgY29ycmVnaWRhIGRlIGxhIGNvbWlzc2nDsyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcyIGJ1aWx0aW4vbWVyZ2UuYzoyNTkgYnVpbHRpbi9ub3Rlcy5jOjQwOQotIzogYnVpbHRpbi9ub3Rlcy5jOjU3MiBidWlsdGluL3RhZy5jOjM5NQotbXNnaWQgIm1lc3NhZ2UiCi1tc2dzdHIgIm1pc3NhdGdlIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzIKLW1zZ2lkICJjb21taXQgbWVzc2FnZSIKLW1zZ3N0ciAibWlzc2F0Z2UgZGUgY29taXNzacOzIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzMgYnVpbHRpbi9jb21taXQuYzoxNDc0IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NQotIzogYnVpbHRpbi9jb21taXQuYzoxNDc2IHJlZi1maWx0ZXIuaDo5MiBwYXJzZS1vcHRpb25zLmg6MjgwCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTcgYnVpbHRpbi9jb21taXQuYzoxNDk4IGJ1aWx0aW4vY29tbWl0LmM6MTQ5OQorIzogYnVpbHRpbi9jb21taXQuYzoxNTAwIHBhcnNlLW9wdGlvbnMuaDozMjggcmVmLWZpbHRlci5oOjkyCiBtc2dpZCAiY29tbWl0IgogbXNnc3RyICJjb21pc3Npw7MiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MworIzogYnVpbHRpbi9jb21taXQuYzoxNDk3CiBtc2dpZCAicmV1c2UgYW5kIGVkaXQgbWVzc2FnZSBmcm9tIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgInJldXNhIGkgZWRpdGEgZWwgbWlzc2F0Z2UgZGUgbGEgY29taXNzacOzIGVzcGVjaWZpY2FkYSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc0CisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTgKIG1zZ2lkICJyZXVzZSBtZXNzYWdlIGZyb20gc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAicmV1c2EgZWwgbWlzc2F0Z2UgZGUgbGEgY29taXNzacOzIGVzcGVjaWZpY2FkYSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc1CisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTkKIG1zZ2lkICJ1c2UgYXV0b3NxdWFzaCBmb3JtYXR0ZWQgbWVzc2FnZSB0byBmaXh1cCBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICIiCiAidXNhIGVsIG1pc3NhdGdlIGZvcm1hdGF0IGRlIMKrc3F1YXNowrsgYXV0b23DoHRpYyBwZXIgYSBjb3JyZWdpciBsYSBjb21pc3Npw7MgIgogImVzcGVjaWZpY2FkYSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc2CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDAKIG1zZ2lkICJ1c2UgYXV0b3NxdWFzaCBmb3JtYXR0ZWQgbWVzc2FnZSB0byBzcXVhc2ggc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAiIgogInVzYSBlbCBtaXNzYXRnZSBmb3JtYXRhdCBkZSDCq3NxdWFzaMK7IGF1dG9tw6B0aWMgcGVyIGEgwqtzcXVhc2jCuyBhIGxhIGNvbWlzc2nDsyAiCiAiZXNwZWNpZmljYWRhIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMQogbXNnaWQgInRoZSBjb21taXQgaXMgYXV0aG9yZWQgYnkgbWUgbm93ICh1c2VkIHdpdGggLUMvLWMvLS1hbWVuZCkiCiBtc2dzdHIgImwnYXV0b3IgZGUgbGEgY29taXNzacOzIGphIHPDs2Mgam8gKHMndXNhIGFtYiAtQy8tYy8tLWFtZW5kKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc4IGJ1aWx0aW4vbG9nLmM6MTUyMCBidWlsdGluL21lcmdlLmM6Mjc2Ci0jOiBidWlsdGluL3B1bGwuYzoxNTUgYnVpbHRpbi9yZXZlcnQuYzoxMDYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMiBidWlsdGluL2xvZy5jOjE2MzQgYnVpbHRpbi9tZXJnZS5jOjI4OQorIzogYnVpbHRpbi9wdWxsLmM6MTY0IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCiBtc2dpZCAiYWRkIFNpZ25lZC1vZmYtYnk6IgogbXNnc3RyICJhZmVnZWl4IFNpZ25lZC1vZmYtYnk6IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMwogbXNnaWQgInVzZSBzcGVjaWZpZWQgdGVtcGxhdGUgZmlsZSIKIG1zZ3N0ciAidXNhIGVsIGZpdHhlciBkZSBwbGFudGlsbGEgZXNwZWNpZmljYXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MAorIzogYnVpbHRpbi9jb21taXQuYzoxNTA0CiBtc2dpZCAiZm9yY2UgZWRpdCBvZiBjb21taXQiCiBtc2dzdHIgImZvcsOnYSBsJ2VkaWNpw7MgZGUgbGEgY29taXNzacOzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODEKLW1zZ2lkICJkZWZhdWx0IgotbXNnc3RyICJwZXIgZGVmZWN0ZSIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDgxIGJ1aWx0aW4vdGFnLmM6NDAxCi1tc2dpZCAiaG93IHRvIHN0cmlwIHNwYWNlcyBhbmQgI2NvbW1lbnRzIGZyb20gbWVzc2FnZSIKLW1zZ3N0ciAiY29tIHN1cHJpbWlyIGVscyBlc3BhaXMgaSAjY29tZW50YXJpcyBkZWwgbWlzc2F0Z2UiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MgorIzogYnVpbHRpbi9jb21taXQuYzoxNTA2CiBtc2dpZCAiaW5jbHVkZSBzdGF0dXMgaW4gY29tbWl0IG1lc3NhZ2UgdGVtcGxhdGUiCiBtc2dzdHIgImluY2xvdSBsJ2VzdGF0IGVuIGxhIHBsYW50aWxsYSBkZSBtaXNzYXRnZSBkZSBjb21pc3Npw7MiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4NCBidWlsdGluL21lcmdlLmM6Mjc0IGJ1aWx0aW4vcHVsbC5jOjE4NQotIzogYnVpbHRpbi9yZXZlcnQuYzoxMTQKLW1zZ2lkICJHUEcgc2lnbiBjb21taXQiCi1tc2dzdHIgInNpZ25hIGxhIGNvbWlzc2nDsyBhbWIgR1BHIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxMQogbXNnaWQgIkNvbW1pdCBjb250ZW50cyBvcHRpb25zIgogbXNnc3RyICJPcGNpb25zIGRlbHMgY29udGluZ3V0cyBkZSBsZXMgY29taXNzaW9ucyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTIKIG1zZ2lkICJjb21taXQgYWxsIGNoYW5nZWQgZmlsZXMiCiBtc2dzdHIgImNvbWV0IHRvdHMgZWxzIGZpdHhlcnMgY2FudmlhdHMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4OQorIzogYnVpbHRpbi9jb21taXQuYzoxNTEzCiBtc2dpZCAiYWRkIHNwZWNpZmllZCBmaWxlcyB0byBpbmRleCBmb3IgY29tbWl0IgogbXNnc3RyICJhZmVnZWl4IGVscyBmaXR4ZXJzIGVzcGVjaWZpY2F0cyBhIGwnw61uZGV4IHBlciBhIGNvbWV0cmUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MAorIzogYnVpbHRpbi9jb21taXQuYzoxNTE0CiBtc2dpZCAiaW50ZXJhY3RpdmVseSBhZGQgZmlsZXMiCiBtc2dzdHIgImFmZWdlaXggZWxzIGZpdHhlcnMgaW50ZXJhY3RpdmFtZW50IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNQogbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGNoYW5nZXMiCiBtc2dzdHIgImFmZWdlaXggZWxzIGNhbnZpcyBpbnRlcmFjdGl2YW1lbnQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MgorIzogYnVpbHRpbi9jb21taXQuYzoxNTE2CiBtc2dpZCAiY29tbWl0IG9ubHkgc3BlY2lmaWVkIGZpbGVzIgogbXNnc3RyICJjb21ldCBub23DqXMgZWxzIGZpdHhlcnMgZXNwZWNpZmljYXRzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNwogbXNnaWQgImJ5cGFzcyBwcmUtY29tbWl0IGFuZCBjb21taXQtbXNnIGhvb2tzIgogbXNnc3RyICJldml0YSBlbHMgbGxpZ2FtcyBkZSBwcmVjb21pc3Npw7MgaSBtaXNzYXRnZSBkZSBjb21pc3Npw7MiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NAorIzogYnVpbHRpbi9jb21taXQuYzoxNTE4CiBtc2dpZCAic2hvdyB3aGF0IHdvdWxkIGJlIGNvbW1pdHRlZCIKIG1zZ3N0ciAibW9zdHJhIHF1w6ggZXMgY29tZXRyaWEiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNworIzogYnVpbHRpbi9jb21taXQuYzoxNTMxCiBtc2dpZCAiYW1lbmQgcHJldmlvdXMgY29tbWl0IgogbXNnc3RyICJlc21lbmEgbGEgY29taXNzacOzIGFudGVyaW9yIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MDgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUzMgogbXNnaWQgImJ5cGFzcyBwb3N0LXJld3JpdGUgaG9vayIKIG1zZ3N0ciAiZXZpdGEgZWwgbGxpZ2FtIGRlIHBvc3QgZXNjcmlwdHVyYSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTEzCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MzkKIG1zZ2lkICJvayB0byByZWNvcmQgYW4gZW1wdHkgY2hhbmdlIgogbXNnc3RyICJlc3TDoCBiw6kgcmVnaXN0cmFyIHVuIGNhbnZpIGJ1aXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNQorIzogYnVpbHRpbi9jb21taXQuYzoxNTQxCiBtc2dpZCAib2sgdG8gcmVjb3JkIGEgY2hhbmdlIHdpdGggYW4gZW1wdHkgbWVzc2FnZSIKIG1zZ3N0ciAiZXN0w6AgYsOpIHJlZ2lzdHJhciB1biBjYW52aSBhbWIgbWlzc2F0Z2UgYnVpdCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE2MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29ycnVwdCBNRVJHRV9IRUFEIGZpbGUgKCVzKSIKIG1zZ3N0ciAiRml0eGVyIE1FUkdFX0hFQUQgbWFsbcOocyAoJXMpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1OTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTYyMQogbXNnaWQgImNvdWxkIG5vdCByZWFkIE1FUkdFX01PREUiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIE1FUkdFX01PREUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTYxNAorIzogYnVpbHRpbi9jb21taXQuYzoxNjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGNvbW1pdCBtZXNzYWdlOiAlcyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBsbGVnaXIgZWwgbWlzc2F0Z2UgZGUgY29taXNzacOzOiAlcyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjI1CisjOiBidWlsdGluL2NvbW1pdC5jOjE2NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmcgY29tbWl0IGR1ZSB0byBlbXB0eSBjb21taXQgbWVzc2FnZS5cbiIKIG1zZ3N0ciAiUydlc3TDoCBhdm9ydGFudCBsYSBjb21pc3Npw7MgYSBjYXVzYSBkJ3VuIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyBidWl0LlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE2MzAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJBYm9ydGluZyBjb21taXQ7IHlvdSBkaWQgbm90IGVkaXQgdGhlIG1lc3NhZ2UuXG4iCiBtc2dzdHIgIlMnZXN0w6AgYXZvcnRhbnQgbGEgY29taXNzacOzOyBubyBoZXUgZWRpdGF0IGVsIG1pc3NhdGdlLlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE2NjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY4NgogIywgZnV6enkKIG1zZ2lkICIiCiAicmVwb3NpdG9yeSBoYXMgYmVlbiB1cGRhdGVkLCBidXQgdW5hYmxlIHRvIHdyaXRlXG4iCiAibmV3X2luZGV4IGZpbGUuIENoZWNrIHRoYXQgZGlzayBpcyBub3QgZnVsbCBhbmQgcXVvdGEgaXNcbiIKLSJub3QgZXhjZWVkZWQsIGFuZCB0aGVuIFwiZ2l0IHJlc2V0IEhFQURcIiB0byByZWNvdmVyLiIKKyJub3QgZXhjZWVkZWQsIGFuZCB0aGVuIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgOi9cIiB0byByZWNvdmVyLiIKIG1zZ3N0ciAiIgotIlMnaGEgYWN0dWFsaXR6YXQgZWwgZGlww7JzaXQsIHBlcsOyIG5vIGVzIHBvdCBlc2NyaXVyZSBlbFxuIgorInMnaGEgYWN0dWFsaXR6YXQgZWwgZGlww7JzaXQsIHBlcsOyIG5vIGVzIHBvdCBlc2NyaXVyZSBlbFxuIgogImZpdHhlciBuZXdfaW5kZXguIENvbXByb3ZldSBxdWUgZWwgZGlzYyBubyBlc3RpZ3VpIHBsZSBpXG4iCi0icXVlIGxhIHF1b3RhIG5vIGVzdGlndWkgZXhjZWRpZGEsIGkgZGVzcHLDqXNcbiIKLSLCq2dpdCByZXNldCBIRUFEwrsgcGVyIGEgcmVjdXBlcmFyLiIKKyJxdWUgbm8gcydoYWdpIGV4Y2VkaXQgbGEgcXVvdGEsIGkgZGVzcHLDqXMgZmV1IFxuIgorIsKrZ2l0IHJlc2V0IEhFQUTCuyBwZXIgYSByZWN1cGVyYXItaG8uIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEwCi1tc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjExIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjMKLW1zZ2lkICJnaXQgY29tbWl0LWdyYXBoIHJlYWQgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE4Ci1tc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMyBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjI4CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjExIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTcKIG1zZ2lkICIiCi0iZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1hcHBlbmRdIFstLXJlYWNoYWJsZXwtLSIKLSJzdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIgorImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPG9iamRpcj5dIFstLXNoYWxsb3ddIFstLVtuby1dcHJvZ3Jlc3NdIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NDggYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3OAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzIgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxOTAgYnVpbHRpbi9mZXRjaC5jOjE1MwotIzogYnVpbHRpbi9sb2cuYzoxNTQwCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjIKK21zZ2lkICIiCisiZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1hcHBlbmR8LS1zcGxpdF0gWy0tIgorInJlYWNoYWJsZXwtLXN0ZGluLXBhY2tzfC0tc3RkaW4tY29tbWl0c10gWy0tW25vLV1wcm9ncmVzc10gPHNwbGl0IG9wdGlvbnM+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NDggYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMDMKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTg3IGJ1aWx0aW4vZmV0Y2guYzoxNzkgYnVpbHRpbi9sb2cuYzoxNjU3CiBtc2dpZCAiZGlyIgogbXNnc3RyICJkaXJlY3RvcmkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NDkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3OQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzMgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxOTEKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NDkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMDQKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTg4CiBtc2dpZCAiVGhlIG9iamVjdCBkaXJlY3RvcnkgdG8gc3RvcmUgdGhlIGdyYXBoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM1CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjUxCittc2dpZCAiaWYgdGhlIGNvbW1pdC1ncmFwaCBpcyBzcGxpdCwgb25seSB2ZXJpZnkgdGhlIHRpcCBmaWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzMgdC9oZWxwZXIvdGVzdC1yZWFkLWdyYXBoLmM6MjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBvcGVuIGNvbW1pdC1ncmFwaCAnJXMnIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsYSBjb21pc3Npw7Mgwqslc8K7IgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEwNgogbXNnaWQgInN0YXJ0IHdhbGsgYXQgYWxsIHJlZnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzcKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTA4CiBtc2dpZCAic2NhbiBwYWNrLWluZGV4ZXMgbGlzdGVkIGJ5IHN0ZGluIGZvciBjb21taXRzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM5CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjExMAogbXNnaWQgInN0YXJ0IHdhbGsgYXQgY29tbWl0cyBsaXN0ZWQgYnkgc3RkaW4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDEKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTEyCiBtc2dpZCAiaW5jbHVkZSBhbGwgY29tbWl0cyBhbHJlYWR5IGluIHRoZSBjb21taXQtZ3JhcGggZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE1MAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMTUKKyMsIGZ1enp5Cittc2dpZCAiYWxsb3cgd3JpdGluZyBhbiBpbmNyZW1lbnRhbCBjb21taXQtZ3JhcGggZmlsZSIKK21zZ3N0ciAiRXNjcml1IGkgdmVyaWZpY2EgZWxzIGZpdHhlcnMgY29tbWl0LWdyYXBoIGRlIEdpdCIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMTcgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjEKK21zZ2lkICJtYXhpbXVtIG51bWJlciBvZiBjb21taXRzIGluIGEgbm9uLWJhc2Ugc3BsaXQgY29tbWl0LWdyYXBoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTE5Cittc2dpZCAibWF4aW11bSByYXRpbyBiZXR3ZWVuIHR3byBsZXZlbHMgb2YgYSBzcGxpdCBjb21taXQtZ3JhcGgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzcKIG1zZ2lkICJ1c2UgYXQgbW9zdCBvbmUgb2YgLS1yZWFjaGFibGUsIC0tc3RkaW4tY29tbWl0cywgb3IgLS1zdGRpbi1wYWNrcyIKIG1zZ3N0ciAiIgogCkBAIC0xMDE4NywxNSArMTI1MDQsMTQgQEAKIG1zZ2lkICJnaXQgY29uZmlnIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgY29uZmlnIFs8b3BjaW9ucz5dIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEwMwotIywgZnV6enksIGMtZm9ybWF0CisjOiBidWlsdGluL2NvbmZpZy5jOjEwMyBidWlsdGluL2Vudi0taGVscGVyLmM6MjMKKyMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIC0tdHlwZSBhcmd1bWVudCwgJXMiCi1tc2dzdHIgInBhcsOgbWV0cmUgbm8gcmVjb25lZ3V0OiAlcyIKK21zZ3N0ciAicGFyw6BtZXRyZSAtLXR5cGUgbm8gcmVjb25lZ3V0LCAlcyIKIAogIzogYnVpbHRpbi9jb25maWcuYzoxMTUKLSMsIGZ1enp5CiBtc2dpZCAib25seSBvbmUgdHlwZSBhdCBhIHRpbWUiCi1tc2dzdHIgImVtZXQgbm9tw6lzIGNvaW5jaWTDqG5jaWVzIGV4YWN0ZXMiCittc2dzdHIgIm5vbcOpcyB1biB0aXB1cyBjYWRhIGNvcCIKIAogIzogYnVpbHRpbi9jb25maWcuYzoxMjQKIG1zZ2lkICJDb25maWcgZmlsZSBsb2NhdGlvbiIKQEAgLTEwMjE0LDkgKzEyNTMwLDggQEAKIG1zZ3N0ciAidXNhIGVsIGZpdHhlciBkZSBjb25maWd1cmFjacOzIGRlbCBkaXDDsnNpdCIKIAogIzogYnVpbHRpbi9jb25maWcuYzoxMjgKLSMsIGZ1enp5CiBtc2dpZCAidXNlIHBlci13b3JrdHJlZSBjb25maWcgZmlsZSIKLW1zZ3N0ciAidXNhIGVsIGZpdHhlciBkZSBjb25maWd1cmFjacOzIGRlbCBkaXDDsnNpdCIKK21zZ3N0ciAidXNhIHVuIGZpdHhlciBkZSBjb25maWd1cmFjacOzIHBlciBkaXDDsnNpdCIKIAogIzogYnVpbHRpbi9jb25maWcuYzoxMjkKIG1zZ2lkICJ1c2UgZ2l2ZW4gY29uZmlnIGZpbGUiCkBAIC0xMDI5NSwxMCArMTI2MTAsOSBAQAogbXNnaWQgIlR5cGUiCiBtc2dzdHIgIlRpcHVzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NwotIywgZnV6enkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ3IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzozOAogbXNnaWQgInZhbHVlIGlzIGdpdmVuIHRoaXMgdHlwZSIKLW1zZ3N0ciAiZWwgdmFsb3Igw6lzIHVuYSBkYXRhIGRlIHZlbmNpbWVudCIKK21zZ3N0ciAiZWwgdmFsb3IgdMOpIGRvbmF0IGFxdWVzdCB0aXB1cyIKIAogIzogYnVpbHRpbi9jb25maWcuYzoxNDgKIG1zZ2lkICJ2YWx1ZSBpcyBcInRydWVcIiBvciBcImZhbHNlXCIiCkBAIC0xMDM0Miw3ICsxMjY1Niw3IEBACiAibW9zdHJhIGwnb3JpZ2VuIGRlIGxhIGNvbmZpZ3VyYWNpw7MgKGZpdHhlciwgZW50cmFkYSBlc3TDoG5kYXJkLCBibG9iLCBsw61uaWEgIgogImQnb3JkcmVzKSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU4IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MAogbXNnaWQgInZhbHVlIgogbXNnc3RyICJ2YWxvciIKIApAQCAtMTAzNTAsNTEgKzEyNjY0LDUwIEBACiBtc2dpZCAid2l0aCAtLWdldCwgdXNlIGRlZmF1bHQgdmFsdWUgd2hlbiBtaXNzaW5nIGVudHJ5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTcxCisjOiBidWlsdGluL2NvbmZpZy5jOjE3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgJWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNzMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIndyb25nIG51bWJlciBvZiBhcmd1bWVudHMsIHNob3VsZCBiZSBmcm9tICVkIHRvICVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MzA3CisjOiBidWlsdGluL2NvbmZpZy5jOjMwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGtleSBwYXR0ZXJuOiAlcyIKIG1zZ3N0ciAicGF0csOzIGRlIGxhIGNsYXUgbm8gdsOgbGlkOiAlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzozNDMKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogYnVpbHRpbi9jb25maWcuYzozNDQKKyMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGZvcm1hdCBkZWZhdWx0IGNvbmZpZyB2YWx1ZTogJXMiCi1tc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gY3JlYXIgZWwgZml0eGVyICVzIgorbXNnc3RyICIiCisicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBmb3JtYXRhciBlbCB2YWxvciBwZXIgZGVmZWN0ZSBkZSBsYSBjb25maWd1cmFjacOzOiAlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0MDAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBwYXJzZSBjb2xvciAnJXMnIgogbXNnc3RyICJubyBlcyBwb3QgYW5hbGl0emFyIGVsIGNvbG9yIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0NDIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDQzCiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGRlZmF1bHQgY29sb3IgdmFsdWUiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGVsIHZhbG9yIGRlIGNvbG9yIHBlciBkZWZlY3RlIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjQ5NSBidWlsdGluL2NvbmZpZy5jOjc0MQotIywgZnV6enkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDk2IGJ1aWx0aW4vY29uZmlnLmM6NzQyCiBtc2dpZCAibm90IGluIGEgZ2l0IGRpcmVjdG9yeSIKLW1zZ3N0ciAibm8gw6lzIGVuIHVuIGRpcMOyc2l0IGRlIGdpdCIKK21zZ3N0ciAibm8gw6lzIGVuIHVuIGRpcmVjdG9yaSBnaXQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDk4Ci0jLCBmdXp6eQorIzogYnVpbHRpbi9jb25maWcuYzo0OTkKIG1zZ2lkICJ3cml0aW5nIHRvIHN0ZGluIGlzIG5vdCBzdXBwb3J0ZWQiCi1tc2dzdHIgIk5vIHMnYWRtZXQgdW5hIHByb2Z1bmRpdGF0IG5lZ2F0aXZhIGVuIC0tZGVlcGVuIgorbXNnc3RyICJubyBzJ2FkbWV0IGVzY3JpdXJlIGEgc3RkaW4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NTAxCisjOiBidWlsdGluL2NvbmZpZy5jOjUwMgogIywgZnV6enkKIG1zZ2lkICJ3cml0aW5nIGNvbmZpZyBibG9icyBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJhdsOtczogZWwgc29icmVub20gZGUgc2VuZG1haWwgYW1iIGNvbWV0ZXMgbm8gZXN0w6Agc3Vwb3J0YXQ6ICVzXG4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NTg2CisjOiBidWlsdGluL2NvbmZpZy5jOjU4NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiIyBUaGlzIGlzIEdpdCdzIHBlci11c2VyIGNvbmZpZ3VyYXRpb24gZmlsZS5cbiIKQEAgLTEwNDA5LDc5ICsxMjcyMiw3NSBAQAogIiNcdG5hbWUgPSAlc1xuIgogIiNcdGVtYWlsID0gJXNcbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MTAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjExCiBtc2dpZCAib25seSBvbmUgY29uZmlnIGZpbGUgYXQgYSB0aW1lIgotbXNnc3RyICIiCittc2dzdHIgIm5vbcOpcyB1biBmaXR4ZXIgZGUgY29uZmlndXJhY2nDsyBjYWRhIGNvcCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MTUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjE2CiBtc2dpZCAiLS1sb2NhbCBjYW4gb25seSBiZSB1c2VkIGluc2lkZSBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICItLWxvY2FsIG5vbcOpcyBlcyBwb3QgdXNhciBkaW5zIGQndW4gZGlww7JzaXQgZ2l0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYxOAotIywgZnV6enkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjE5CiBtc2dpZCAiLS1ibG9iIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCi1tc2dzdHIgIi0tbG9jYWwgbm9tw6lzIGVzIHBvdCB1c2FyIGRpbnMgZCd1biBkaXDDsnNpdCBnaXQiCittc2dzdHIgIi0tYmxvYiBub23DqXMgZXMgcG90IHVzYXIgZGlucyBkJ3VuIGRpcMOyc2l0IGdpdCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MzcKLSMsIGZ1enp5CisjOiBidWlsdGluL2NvbmZpZy5jOjYzOAogbXNnaWQgIiRIT01FIG5vdCBzZXQiCi1tc2dzdHIgIm5vIHVzYXIiCittc2dzdHIgIiRIT01FIG5vIGVzdMOgIGVzdGFibGVydGEiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjU3CisjOiBidWlsdGluL2NvbmZpZy5jOjY1OAogbXNnaWQgIiIKICItLXdvcmt0cmVlIGNhbm5vdCBiZSB1c2VkIHdpdGggbXVsdGlwbGUgd29ya2luZyB0cmVlcyB1bmxlc3MgdGhlIGNvbmZpZ1xuIgogImV4dGVuc2lvbiB3b3JrdHJlZUNvbmZpZyBpcyBlbmFibGVkLiBQbGVhc2UgcmVhZCBcIkNPTkZJR1VSQVRJT04gRklMRVwiXG4iCiAic2VjdGlvbiBpbiBcImdpdCBoZWxwIHdvcmt0cmVlXCIgZm9yIGRldGFpbHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2ODcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6Njg4CiBtc2dpZCAiLS1nZXQtY29sb3IgYW5kIHZhcmlhYmxlIHR5cGUgYXJlIGluY29oZXJlbnQiCi1tc2dzdHIgIiIKK21zZ3N0ciAiLS1nZXQtY29sb3IgaSBlbCB0aXB1cyBkZSB2YXJpYWJsZSBzw7NuIGluY29oZXJlbnRzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjY5MgorIzogYnVpbHRpbi9jb25maWcuYzo2OTMKIG1zZ2lkICJvbmx5IG9uZSBhY3Rpb24gYXQgYSB0aW1lIgotbXNnc3RyICIiCittc2dzdHIgIm5vbcOpcyB1bmEgYWNjacOzIGNhZGEgY29wIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjcwNQorIzogYnVpbHRpbi9jb25maWcuYzo3MDYKIG1zZ2lkICItLW5hbWUtb25seSBpcyBvbmx5IGFwcGxpY2FibGUgdG8gLS1saXN0IG9yIC0tZ2V0LXJlZ2V4cCIKLW1zZ3N0ciAiIgorbXNnc3RyICItLW5hbWUtb25seSBub23DqXMgw6lzIGFwbGljYWJsZSBhIC0tbGlzdCBvIC0tZ2V0LXJlZ2V4cCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MTEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzEyCiBtc2dpZCAiIgogIi0tc2hvdy1vcmlnaW4gaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCwgYW5kIC0tIgogImxpc3QiCiBtc2dzdHIgIiIKKyItLXNob3ctb3JpZ2luIG5vbcOpcyDDqXMgYXBsaWNhYmxlIGEgLS1nZXQsIC0tZ2V0LWFsbCwgLS1nZXQtcmVnZXhwLCBpIC0tbGlzdCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MTcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzE4CiBtc2dpZCAiLS1kZWZhdWx0IGlzIG9ubHkgYXBwbGljYWJsZSB0byAtLWdldCIKLW1zZ3N0ciAiIgorbXNnc3RyICItLWRlZmF1bHQgbm9tw6lzIMOpcyBhcGxpY2FibGUgYSAtLWdldCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MzAKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogYnVpbHRpbi9jb25maWcuYzo3MzEKKyMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgY29uZmlnIGZpbGUgJyVzJyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBsbGVnaXIgZWwgZml0eGVyIGRlIHNpZ25hdHVyYSDCqyVzwrsiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGVsIGZpdHhlciBkZSBjb25maWd1cmFjacOzIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MzMKLSMsIGZ1enp5CisjOiBidWlsdGluL2NvbmZpZy5jOjczNAogbXNnaWQgImVycm9yIHByb2Nlc3NpbmcgY29uZmlnIGZpbGUocykiCi1tc2dzdHIgInVzYSBlbCBmaXR4ZXIgZGUgY29uZmlndXJhY2nDsyBkZWwgZGlww7JzaXQiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgcHJvY2Vzc2FudCBlbHMgZml0eGVycyBkZSBjb25maWd1cmFjacOzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc0MwotIywgZnV6enkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzQ0CiBtc2dpZCAiZWRpdGluZyBzdGRpbiBpcyBub3Qgc3VwcG9ydGVkIgotbXNnc3RyICJObyBzJ2FkbWV0IHVuYSBwcm9mdW5kaXRhdCBuZWdhdGl2YSBlbiAtLWRlZXBlbiIKK21zZ3N0ciAibm8gaGkgaGEgY29tcGF0aWJpbGl0YXQgcGVyIGEgbCdlZGljacOzIGEgc3RkaW4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzQ1Ci0jLCBmdXp6eQorIzogYnVpbHRpbi9jb25maWcuYzo3NDYKIG1zZ2lkICJlZGl0aW5nIGJsb2JzIGlzIG5vdCBzdXBwb3J0ZWQiCi1tc2dzdHIgIk5vIHMnYWRtZXQgdW5hIHByb2Z1bmRpdGF0IG5lZ2F0aXZhIGVuIC0tZGVlcGVuIgorbXNnc3RyICJubyBoaSBoYSBjb21wYXRpYmlsaXRhdCBwZXIgbCdlZGljacOzIGRlIGJsb2JzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc1OQorIzogYnVpbHRpbi9jb25maWcuYzo3NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNyZWF0ZSBjb25maWd1cmF0aW9uIGZpbGUgJXMiCiBtc2dzdHIgIm5vIGVzIHBvdCBjcmVhciBlbCBmaXR4ZXIgZGUgY29uZmlndXJhY2nDsyAlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3NzIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzczCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjYW5ub3Qgb3ZlcndyaXRlIG11bHRpcGxlIHZhbHVlcyB3aXRoIGEgc2luZ2xlIHZhbHVlXG4iCkBAIC0xMDQ5MCwxMCArMTI3OTksMTAgQEAKICJubyBlcyBwb2RlbiBzb2JyZWVzY3JpdXJlIG3Dumx0aXBsZXMgdmFsb3JzIGFtYiB1biBzb2wgdmFsb3JcbiIKICIgICAgICAgVXNldSB1bmEgZXhwcmVzc2nDsyByZWd1bGFyLCAtLWFkZCBvIC0tcmVwbGFjZS1hbGwgcGVyIGEgY2FudmlhciAlcy4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6ODQ2IGJ1aWx0aW4vY29uZmlnLmM6ODU3Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6ODQ3IGJ1aWx0aW4vY29uZmlnLmM6ODU4CisjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggc2VjdGlvbjogJXMiCi1tc2dzdHIgIm5vIGhpIGhhIHRhbCByZWZlcsOobmNpYSAlcyIKK21zZ3N0ciAibm8gZXhpc3RlaXggbGEgc2VjY2nDszogJXMiCiAKICM6IGJ1aWx0aW4vY291bnQtb2JqZWN0cy5jOjkwCiBtc2dpZCAiZ2l0IGNvdW50LW9iamVjdHMgWy12XSBbLUggfCAtLWh1bWFuLXJlYWRhYmxlXSIKQEAgLTEwNTIzLDM3ICsxMjgzMiwzNyBAQAogbXNnaWQgImFubm90YXRlZCIKIG1zZ3N0ciAiYW5vdGF0IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MjcyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc1CiAjLCBjLWZvcm1hdAogbXNnaWQgImFubm90YXRlZCB0YWcgJXMgbm90IGF2YWlsYWJsZSIKIG1zZ3N0ciAibCdldGlxdWV0YSBhbm90YWRhICVzIG5vIMOpcyBkaXNwb25pYmxlIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc2CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImFubm90YXRlZCB0YWcgJXMgaGFzIG5vIGVtYmVkZGVkIG5hbWUiCiBtc2dzdHIgImwnZXRpcXVldGEgYW5vdGFkYSAlcyBubyB0w6kgbm9tIGluY3J1c3RhdCIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3OAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjI4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0YWcgJyVzJyBpcyByZWFsbHkgJyVzJyBoZXJlIgogbXNnc3RyICJsJ2V0aXF1ZXRhIMKrJXPCuyByZWFsbWVudCDDqXMgwqslc8K7IGFxdcOtIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MzIyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHRhZyBleGFjdGx5IG1hdGNoZXMgJyVzJyIKIG1zZ3N0ciAiY2FwIGV0aXF1ZXRhIGNvaW5jaWRlaXggZXhhY3RhbWVudCBhbWIgwqslc8K7IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIGV4YWN0IG1hdGNoIG9uIHJlZnMgb3IgdGFncywgc2VhcmNoaW5nIHRvIGRlc2NyaWJlXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjM3OAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjM4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmaW5pc2hlZCBzZWFyY2ggYXQgJXNcbiIKIG1zZ3N0ciAicydoYSBmaW5hbGl0emF0IGxhIGNlcmNhIGEgJXNcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQwNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQwNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gYW5ub3RhdGVkIHRhZ3MgY2FuIGRlc2NyaWJlICclcycuXG4iCkBAIC0xMDU2Miw3ICsxMjg3MSw3IEBACiAiQ2FwIGV0aXF1ZXRhIGFub3RhZGEgcG90IGRlc2NyaXVyZSDCqyVzwrsuXG4iCiAiTm8gb2JzdGFudCwgaGkgaGF2aWEgZXRpcXVldGVzIG5vIGFub3RhZGVzOiBwcm92ZXUgLS10YWdzLiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQwOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gdGFncyBjYW4gZGVzY3JpYmUgJyVzJy5cbiIKQEAgLTEwNTcxLDEyICsxMjg4MCwxMiBAQAogIkNhcCBldGlxdWV0YSBwb3QgZGVzY3JpdXJlIMKrJXPCuy5cbiIKICJQcm92ZXUgLS1hbHdheXMsIG8gY3JlZXUgYWxndW5lcyBldGlxdWV0ZXMuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDM4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInRyYXZlcnNlZCAlbHUgY29tbWl0c1xuIgogbXNnc3RyICIlbHUgY29taXNzaW9ucyB0cmF2ZXNzYWRlc1xuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDQxCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJtb3JlIHRoYW4gJWkgdGFncyBmb3VuZDsgbGlzdGVkICVpIG1vc3QgcmVjZW50XG4iCkBAIC0xMDU4NSwxMTggKzEyODk0LDExOCBAQAogInMnaGFuIHRyb2JhdCBtw6lzIGRlICVpIGV0aXF1ZXRlczogcydoYW4gbGxpc3RhdCBsZXMgJWkgbcOpcyByZWNlbnRzXG4iCiAicydoYSByZW51bmNpYXQgbGEgY2VyY2EgYSAlc1xuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTA5CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImRlc2NyaWJlICVzXG4iCiBtc2dzdHIgImRlc2NyaXUgJXNcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUxMiBidWlsdGluL2xvZy5jOjUxMworIzogYnVpbHRpbi9kZXNjcmliZS5jOjUxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIKIG1zZ3N0ciAiJXMgbm8gw6lzIHVuIG5vbSBkJ29iamVjdGUgdsOgbGlkIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTIwCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5laXRoZXIgYSBjb21taXQgbm9yIGJsb2IiCiBtc2dzdHIgIiVzIG5vIMOpcyB1bmEgY29taXNzacOzIG8gdW4gYmxvYiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzNwogbXNnaWQgImZpbmQgdGhlIHRhZyB0aGF0IGNvbWVzIGFmdGVyIHRoZSBjb21taXQiCiBtc2dzdHIgInRyb2JhIGwnZXRpcXVldGEgcXVlIHZpbmd1aSBkZXNwcsOpcyBkZSBsYSBjb21pc3Npw7MiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzUKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzgKIG1zZ2lkICJkZWJ1ZyBzZWFyY2ggc3RyYXRlZ3kgb24gc3RkZXJyIgogbXNnc3RyICJlc3RyYXTDqGdpYSBkZSBjZXJjYSBkZSBkZXB1cmFjacOzIGVuIHN0ZGVyciIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzNgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOQogbXNnaWQgInVzZSBhbnkgcmVmIgogbXNnc3RyICJ1c2EgcXVhbHNldm9sIHJlZmVyw6huY2lhIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQwCiBtc2dpZCAidXNlIGFueSB0YWcsIGV2ZW4gdW5hbm5vdGF0ZWQiCiBtc2dzdHIgInVzYSBxdWFsc2V2b2wgZXRpcXVldGEsIGZpbnMgaSB0b3QgYXF1ZWxsZXMgc2Vuc2UgYW5vdGFyIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQxCiBtc2dpZCAiYWx3YXlzIHVzZSBsb25nIGZvcm1hdCIKIG1zZ3N0ciAic2VtcHJlIHVzYSBlbCBmb3JtYXQgbGxhcmciCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzkKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDIKIG1zZ2lkICJvbmx5IGZvbGxvdyBmaXJzdCBwYXJlbnQiCiBtc2dzdHIgIm5vbcOpcyBzZWd1ZWl4IGxhIHByaW1lcmEgbWFyZSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU0MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU0NQogbXNnaWQgIm9ubHkgb3V0cHV0IGV4YWN0IG1hdGNoZXMiCiBtc2dzdHIgImVtZXQgbm9tw6lzIGNvaW5jaWTDqG5jaWVzIGV4YWN0ZXMiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDcKIG1zZ2lkICJjb25zaWRlciA8bj4gbW9zdCByZWNlbnQgdGFncyAoZGVmYXVsdDogMTApIgogbXNnc3RyICJjb25zaWRlcmEgbGVzIDxuPiBldGlxdWV0ZXMgbcOpcyByZWNlbnRzIChwZXIgZGVmZWN0ZTogMTApIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ2CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ5CiBtc2dpZCAib25seSBjb25zaWRlciB0YWdzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKIG1zZ3N0ciAibm9tw6lzIGNvbnNpZGVyYSBsZXMgZXRpcXVldGVzIHF1ZSBjb2luY2lkZWl4ZW4gYW1iIDxwYXRyw7M+IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUxCiBtc2dpZCAiZG8gbm90IGNvbnNpZGVyIHRhZ3MgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICJubyBjb25zaWRlcmlzIGxlcyBldGlxdWV0ZXMgcXVlIG5vIGNvaW5jaWRlaXhlbiBhbWIgPHBhdHLDsz4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTAgYnVpbHRpbi9uYW1lLXJldi5jOjQyNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MyBidWlsdGluL25hbWUtcmV2LmM6NDczCiBtc2dpZCAic2hvdyBhYmJyZXZpYXRlZCBjb21taXQgb2JqZWN0IGFzIGZhbGxiYWNrIgogbXNnc3RyICJtb3N0cmEgbCdvYmplY3RlIGRlIGNvbWlzc2nDsyBhYnJldmlhdCBjb20gYSBzaXN0ZW1hIGFsdGVybmF0aXUiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTEgYnVpbHRpbi9kZXNjcmliZS5jOjU1NAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NCBidWlsdGluL2Rlc2NyaWJlLmM6NTU3CiBtc2dpZCAibWFyayIKIG1zZ3N0ciAibWFyY2EiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTUKIG1zZ2lkICJhcHBlbmQgPG1hcms+IG9uIGRpcnR5IHdvcmtpbmcgdHJlZSAoZGVmYXVsdDogXCItZGlydHlcIikiCiBtc2dzdHIgImFubmV4YSA8bWFyY2E+IGVuIGwnYXJicmUgZGUgdHJlYmFsbCBicnV0IChwZXIgZGVmZWN0ZTogXCItZGlydHlcIikiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTUKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTgKIG1zZ2lkICJhcHBlbmQgPG1hcms+IG9uIGJyb2tlbiB3b3JraW5nIHRyZWUgKGRlZmF1bHQ6IFwiLWJyb2tlblwiKSIKIG1zZ3N0ciAiYW5uZXhhIDxtYXJjYT4gZW4gbCdhcmJyZSBkZSB0cmViYWxsIGJydXQgKHBlciBkZWZlY3RlOiBcIi1icm9rZW5cIikiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NzMKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NzYKIG1zZ2lkICItLWxvbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hYmJyZXY9MCIKIG1zZ3N0ciAiLS1sb25nIMOpcyBpbmNvbXBhdGlibGUgYW1iIC0tYWJicmV2PTAiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MDIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MDUKIG1zZ2lkICJObyBuYW1lcyBmb3VuZCwgY2Fubm90IGRlc2NyaWJlIGFueXRoaW5nLiIKIG1zZ3N0ciAiTm8gcydoYSB0cm9iYXQgY2FwIG5vbSwgbm8gZXMgcG90IGRlc2NyaXVyZSByZXMuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NjUyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjU2CiBtc2dpZCAiLS1kaXJ0eSBpcyBpbmNvbXBhdGlibGUgd2l0aCBjb21taXQtaXNoZXMiCiBtc2dzdHIgIi0tZGlydHkgw6lzIGluY29tcGF0aWJsZSBhbWIgbGVzIGNvbWlzc2lvbnMiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NTQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NTgKIG1zZ2lkICItLWJyb2tlbiBpcyBpbmNvbXBhdGlibGUgd2l0aCBjb21taXQtaXNoZXMiCiBtc2dzdHIgIi0tYnJva2VuIMOpcyBpbmNvbXBhdGlibGUgYW1iIGxlcyBjb21pc3Npb25zIgogCi0jOiBidWlsdGluL2RpZmYuYzo4MworIzogYnVpbHRpbi9kaWZmLmM6ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogbm90IGEgcmVndWxhciBmaWxlIG9yIHN5bWxpbmsiCiBtc2dzdHIgIsKrJXPCuzogbm8gw6lzIG5pIGZpdHhlciByZWd1bGFyIG5pIGVubGxhw6cgc2ltYsOybGljIgogCi0jOiBidWlsdGluL2RpZmYuYzoyMzQKKyM6IGJ1aWx0aW4vZGlmZi5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9wdGlvbjogJXMiCiBtc2dzdHIgIm9wY2nDsyBubyB2w6BsaWRhOiAlcyIKIAotIzogYnVpbHRpbi9kaWZmLmM6MzYzCisjOiBidWlsdGluL2RpZmYuYzozNTAKIG1zZ2lkICJOb3QgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiTm8gw6lzIHVuIGRpcMOyc2l0IGRlIGdpdCIKIAotIzogYnVpbHRpbi9kaWZmLmM6NDA3CisjOiBidWlsdGluL2RpZmYuYzozOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvYmplY3QgJyVzJyBnaXZlbi4iCiBtc2dzdHIgInMnaGEgZG9uYXQgdW4gb2JqZWN0ZSBubyB2w6BsaWQgwqslc8K7LiIKIAotIzogYnVpbHRpbi9kaWZmLmM6NDE2CisjOiBidWlsdGluL2RpZmYuYzo0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9yZSB0aGFuIHR3byBibG9icyBnaXZlbjogJyVzJyIKIG1zZ3N0ciAicydoYSBkb25hdCBtw6lzIGRlIGRvcyBibG9iczogwqslc8K7IgogCi0jOiBidWlsdGluL2RpZmYuYzo0MjEKKyM6IGJ1aWx0aW4vZGlmZi5jOjQwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmhhbmRsZWQgb2JqZWN0ICclcycgZ2l2ZW4uIgogbXNnc3RyICJzJ2hhIGRvbmF0IGwnb2JqZWN0ZSBubyBnZXN0aW9uYXQgwqslc8K7LiIKQEAgLTEwNzMzLDU1ICsxMzA0Miw1NCBAQAogImVscyBmb3JtYXRzIGRlIGRpZmYgY29tYmluYXRzICgnLWMnIGFuZCAnLS1jYycpIG5vIHPDs24gYWRtZXNvcyBcbiIKICJlbiBlbCBtb2RlIGRpZmYgcGVyIGRpcmVjdG9yaXMgKCctZCcgYW5kICctLWRpci1kaWZmJykuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjMzCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJvdGggZmlsZXMgbW9kaWZpZWQ6ICclcycgYW5kICclcycuIgogbXNnc3RyICJzJ2hhbiBtb2RpZmljYXQgYW1iZMOzcyBmaXR4ZXJzOiDCqyVzwrsgaSDCqyVzwrsuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjM1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjM2CiBtc2dpZCAid29ya2luZyB0cmVlIGZpbGUgaGFzIGJlZW4gbGVmdC4iCiBtc2dzdHIgInMnaGEgZGVpeGF0IHVuIGZpdHhlciBkZSBsJ2FyYnJlIGRlIHRyZWJhbGwuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInRlbXBvcmFyeSBmaWxlcyBleGlzdCBpbiAnJXMnLiIKLW1zZ3N0ciAiZXhpc3RlaXggdW4gZml0eGVyIHRlbXBvcmFsIGEgJXMnLiIKK21zZ3N0ciAiZXhpc3RlaXggdW4gZml0eGVyIHRlbXBvcmFsIGEgwqslc8K7LiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0NworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0OAogbXNnaWQgInlvdSBtYXkgd2FudCB0byBjbGVhbnVwIG9yIHJlY292ZXIgdGhlc2UuIgogbXNnc3RyICJwb2RldSBuZXRlamFyIG8gcmVjdXBlcmFyLWxvcy4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTYKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTcKIG1zZ2lkICJ1c2UgYGRpZmYuZ3VpdG9vbGAgaW5zdGVhZCBvZiBgZGlmZi50b29sYCIKIG1zZ3N0ciAidXRpbGl0emEgYGRpZmYuZ3VpdG9vbGAgZW4gY29tcHRlcyBkZSBgZGlmZi50b29sYCIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OQogbXNnaWQgInBlcmZvcm0gYSBmdWxsLWRpcmVjdG9yeSBkaWZmIgogbXNnc3RyICJmZXMgdW4gZGlmZiBkZSB0b3QgZWwgZGlyZWN0b3JpIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzAwCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzAxCiBtc2dpZCAiZG8gbm90IHByb21wdCBiZWZvcmUgbGF1bmNoaW5nIGEgZGlmZiB0b29sIgogbXNnc3RyICJubyBwcmVndW50aXMgYWJhbnMgZCdleGVjdXRhciBsJ2VpbmEgZGlmZiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNgogbXNnaWQgInVzZSBzeW1saW5rcyBpbiBkaXItZGlmZiBtb2RlIgogbXNnc3RyICJ1dGlsaXR6YSBlbmxsYcOnb3Mgc2ltYsOybGljcyBlbiBtb2RlIGRpci1kaWZmIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzA2Ci0jLCBmdXp6eQotbXNnaWQgInRvb2wiCi1tc2dzdHIgIjx0b29sPiIKLQogIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNworbXNnaWQgInRvb2wiCittc2dzdHIgImVpbmEiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDgKIG1zZ2lkICJ1c2UgdGhlIHNwZWNpZmllZCBkaWZmIHRvb2wiCiBtc2dzdHIgInV0aWxpdHphIGwnZWluYSBkZSBkaWZmIGVzcGVjaWZpY2FkYSIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxMAogbXNnaWQgInByaW50IGEgbGlzdCBvZiBkaWZmIHRvb2xzIHRoYXQgbWF5IGJlIHVzZWQgd2l0aCBgLS10b29sYCIKIG1zZ3N0ciAiIgogImltcHJpbWVpeCB1bmEgbGxpc3RhIGRlIHRvdGVzIGxlcyBlaW5lcyBkaWZmIHF1ZSBwb2RldSB1c2FyIGFtYiBgLS10b29sYCIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxMgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxMwogbXNnaWQgIiIKICJtYWtlICdnaXQtZGlmZnRvb2wnIGV4aXQgd2hlbiBhbiBpbnZva2VkIGRpZmYgdG9vbCByZXR1cm5zIGEgbm9uIC0gemVybyBleGl0ICIKICJjb2RlIgpAQCAtMTA3ODksMTYwICsxMzA5NywyNDIgQEAKICJmZXMgcXVlICdnaXQtZGlmZnRvb2wnIHN1cnRpIHF1YW4gbCdlaW5hIGRlIGRpZmYgaW52b2NhZGEgdG9ybmEgdW4gY29kaSBkZSAiCiAic29ydGlkYSBkaWZlcmVudCBkZSB6ZXJvIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzE1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE2CiBtc2dpZCAic3BlY2lmeSBhIGN1c3RvbSBjb21tYW5kIGZvciB2aWV3aW5nIGRpZmZzIgotbXNnc3RyICJlc3BlY2lmaXF1ZXUgdW5hIG9yZHJlIHBlcnNvbmFsaXR6YWRhIHBlciB2ZXVyZSBkaWZmcyIKK21zZ3N0ciAiZXNwZWNpZmlxdWV1IHVuIG9yZHJlIHBlcnNvbmFsaXR6YXQgcGVyIHZldXJlIGRpZmZzIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE3Cittc2dpZCAicGFzc2VkIHRvIGBkaWZmYCIKK21zZ3N0ciAicGFzc2EtaG8gYSDCq2RpZmbCuyIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjczMgorbXNnaWQgImRpZmZ0b29sIHJlcXVpcmVzIHdvcmt0cmVlIG9yIC0tbm8taW5kZXgiCittc2dzdHIgImRpZmZ0b29sIHJlcXVlcmVpeCB3b3JrdHJlZSBvIC0tbm8taW5kZXgiCiAKICM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzkKK21zZ2lkICItLWRpci1kaWZmIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8taW5kZXgiCittc2dzdHIgIi0tZGlyLWRpZmYgw6lzIGluY29tcGF0aWJsZSBhbWIgLS1uby1pbmRleCIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc0MgorbXNnaWQgIi0tZ3VpLCAtLXRvb2wgYW5kIC0tZXh0Y21kIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIi0tZ3VpLCAtLXRvb2wgYW5kIC0tZXh0Y21kIHPDs24gbcO6dHVhbWVudCBleGNsb2VudHMiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NTAKIG1zZ2lkICJubyA8dG9vbD4gZ2l2ZW4gZm9yIC0tdG9vbD08dG9vbD4iCiBtc2dzdHIgIm5vIHMnaGEgcHJvcG9yY2lvbmF0IDx0b29sPiBwZXIgLS10b29sPTx0b29sPiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc0NgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc1NwogbXNnaWQgIm5vIDxjbWQ+IGdpdmVuIGZvciAtLWV4dGNtZD08Y21kPiIKIG1zZ3N0ciAibm8gcydoYSBwcm9wb3JjaW9uYXQgPGNtZD4gcGVyIC0tZXh0Y21kPTxjbWQ+IgogCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NgorbXNnaWQgImdpdCBlbnYtLWhlbHBlciAtLXR5cGU9W2Jvb2x8dWxvbmddIDxvcHRpb25zPiA8ZW52LXZhcj4iCittc2dzdHIgImdpdCBlbnYtLWhlbHBlciAtLXR5cGU9W2Jvb2x8dWxvbmddIDxvcGNpb25zPiA8ZW52LXZhcj4iCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzozNyBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKK21zZ2lkICJ0eXBlIgorbXNnc3RyICJ0aXB1cyIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjQxCittc2dpZCAiZGVmYXVsdCBmb3IgZ2l0X2Vudl8qKC4uLikgdG8gZmFsbCBiYWNrIG9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MworbXNnaWQgImJlIHF1aWV0IG9ubHkgdXNlIGdpdF9lbnZfKigpIHZhbHVlIGFzIGV4aXQgY29kZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAtLWRlZmF1bHQnIGV4cGVjdHMgYSBib29sZWFuIHZhbHVlIHdpdGggYC0tdHlwZT1ib29sYCwgbm90IGAlc2AiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvcHRpb24gYC0tZGVmYXVsdCcgZXhwZWN0cyBhbiB1bnNpZ25lZCBsb25nIHZhbHVlIHdpdGggYC0tdHlwZT11bG9uZ2AsIG5vdCBgIgorIiVzYCIKK21zZ3N0ciAiIgorCiAjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MjkKIG1zZ2lkICJnaXQgZmFzdC1leHBvcnQgW3Jldi1saXN0LW9wdHNdIgogbXNnc3RyICJnaXQgZmFzdC1leHBvcnQgW29wY2lvbnMtZGUtbGxpc3RhLWRlLXJldmlzaW9uc10iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6ODUyCittc2dpZCAiRXJyb3I6IENhbm5vdCBleHBvcnQgbmVzdGVkIHRhZ3MgdW5sZXNzIC0tbWFyay10YWdzIGlzIHNwZWNpZmllZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTIKIG1zZ2lkICJzaG93IHByb2dyZXNzIGFmdGVyIDxuPiBvYmplY3RzIgogbXNnc3RyICJtb3N0cmEgZWwgcHJvZ3LDqXMgZGVzcHLDqXMgZGUgPG4+IG9iamVjdGVzIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAwOAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTQKIG1zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2Ygc2lnbmVkIHRhZ3MiCiBtc2dzdHIgInNlbGVjY2lvbmEgbGEgZ2VzdGnDsyBkZSBsZXMgZXRpcXVldGVzIHNpZ25hZGVzIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMQorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTcKIG1zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2YgdGFncyB0aGF0IHRhZyBmaWx0ZXJlZCBvYmplY3RzIgogbXNnc3RyICJzZWxlY2Npb25hIGxhIGdlc3Rpw7MgZGUgbGVzIGV0aXF1ZXRlcyBxdWUgZXRpcXVldGluIG9iamVjdGVzIGZpbHRyYXRzIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjAKKyMsIGZ1enp5Cittc2dpZCAic2VsZWN0IGhhbmRsaW5nIG9mIGNvbW1pdCBtZXNzYWdlcyBpbiBhbiBhbHRlcm5hdGUgZW5jb2RpbmciCittc2dzdHIgInNlbGVjY2lvbmEgbGEgZ2VzdGnDsyBkZSBsZXMgZXRpcXVldGVzIHF1ZSBldGlxdWV0aW4gb2JqZWN0ZXMgZmlsdHJhdHMiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTYzCiBtc2dpZCAiRHVtcCBtYXJrcyB0byB0aGlzIGZpbGUiCiBtc2dzdHIgIkJvbGNhIGxlcyBtYXJxdWVzIGEgYXF1ZXN0IGZpdHhlciIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTYKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY1CiBtc2dpZCAiSW1wb3J0IG1hcmtzIGZyb20gdGhpcyBmaWxlIgogbXNnc3RyICJJbXBvcnRhIGxlcyBtYXJxdWVzIGQnYXF1ZXN0IGZpdHhlciIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY5CisjLCBmdXp6eQorbXNnaWQgIkltcG9ydCBtYXJrcyBmcm9tIHRoaXMgZmlsZSBpZiBpdCBleGlzdHMiCittc2dzdHIgIkltcG9ydGEgbGVzIG1hcnF1ZXMgZCdhcXVlc3QgZml0eGVyIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3MQogbXNnaWQgIkZha2UgYSB0YWdnZXIgd2hlbiB0YWdzIGxhY2sgb25lIgogbXNnc3RyICJGaW5nZWl4IHVuIGV0aXF1ZXRhZG9yIHF1YW4gZWxzIGVuIG1hbmNhIHVuIGEgbGVzIGV0aXF1ZXRlcyIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjAKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTczCiBtc2dpZCAiT3V0cHV0IGZ1bGwgdHJlZSBmb3IgZWFjaCBjb21taXQiCiBtc2dzdHIgIkltcHJpbWVpeCBsJ2FyYnJlIGNvbXBsZXQgZGUgY2FkYSBjb21pc3Npw7MiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDIyCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NQogbXNnaWQgIlVzZSB0aGUgZG9uZSBmZWF0dXJlIHRvIHRlcm1pbmF0ZSB0aGUgc3RyZWFtIgogbXNnc3RyICJVc2EgbGEgY2FyYWN0ZXLDrXN0aWNhIGRvbmUgcGVyIGEgYWNhYmFyIGVsIGNvcnJlbnQiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDIzCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NgogbXNnaWQgIlNraXAgb3V0cHV0IG9mIGJsb2IgZGF0YSIKIG1zZ3N0ciAiT21ldCBsJ2VtaXNzacOzIGRlIGRhZGVzIGRlIGJsb2IiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDI0IGJ1aWx0aW4vbG9nLmM6MTU4OAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzcgYnVpbHRpbi9sb2cuYzoxNzA1CiBtc2dpZCAicmVmc3BlYyIKIG1zZ3N0ciAiZXNwZWNpZmljYWNpw7MgZGUgcmVmZXLDqG5jaWEiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDI1CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3OAogbXNnaWQgIkFwcGx5IHJlZnNwZWMgdG8gZXhwb3J0ZWQgcmVmcyIKIG1zZ3N0ciAiQXBsaWNhIGwnZXNwZWNpZmljYWNpw7MgZGUgcmVmZXLDqG5jaWEgYSBsZXMgcmVmZXLDqG5jaWVzIGV4cG9ydGFkZXMiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDI2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3OQogbXNnaWQgImFub255bWl6ZSBvdXRwdXQiCiBtc2dzdHIgImFub25pbWl0emEgbGEgc29ydGlkYSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjI4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE4MQorbXNnaWQgIlJlZmVyZW5jZSBwYXJlbnRzIHdoaWNoIGFyZSBub3QgaW4gZmFzdC1leHBvcnQgc3RyZWFtIGJ5IG9iamVjdCBpZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE4MworbXNnaWQgIlNob3cgb3JpZ2luYWwgb2JqZWN0IGlkcyBvZiBibG9icy9jb21taXRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTg1Cittc2dpZCAiTGFiZWwgdGFncyB3aXRoIG1hcmsgaWRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMjIwCittc2dpZCAiQ2Fubm90IHBhc3MgYm90aCAtLWltcG9ydC1tYXJrcyBhbmQgLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNAogbXNnaWQgImdpdCBmZXRjaCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKIG1zZ3N0ciAiZ2l0IGZldGNoIFs8b3BjaW9ucz5dIFs8ZGlww7JzaXQ+IFs8ZXNwZWNpZmljYWNpw7MtZGUtcmVmZXLDqG5jaWE+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoyOQorIzogYnVpbHRpbi9mZXRjaC5jOjM1CiBtc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIDxncm91cD4iCiBtc2dzdHIgImdpdCBmZXRjaCBbPG9wY2lvbnM+XSA8Z3J1cD4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzozMAorIzogYnVpbHRpbi9mZXRjaC5jOjM2CiBtc2dpZCAiZ2l0IGZldGNoIC0tbXVsdGlwbGUgWzxvcHRpb25zPl0gWyg8cmVwb3NpdG9yeT4gfCA8Z3JvdXA+KS4uLl0iCiBtc2dzdHIgImdpdCBmZXRjaCAtLW11bHRpcGxlIFs8b3BjaW9ucz5dIFsoPGRpcMOyc2l0PiB8IDxncnVwPikuLi5dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MzEKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNwogbXNnaWQgImdpdCBmZXRjaCAtLWFsbCBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IGZldGNoIC0tYWxsIFs8b3BjaW9ucz5dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTE1IGJ1aWx0aW4vcHVsbC5jOjE5NAorIzogYnVpbHRpbi9mZXRjaC5jOjExNgorbXNnaWQgImZldGNoLnBhcmFsbGVsIGNhbm5vdCBiZSBuZWdhdGl2ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTM5IGJ1aWx0aW4vcHVsbC5jOjIwNAogbXNnaWQgImZldGNoIGZyb20gYWxsIHJlbW90ZXMiCiBtc2dzdHIgIm9idMOpbiBkZSB0b3RzIGVscyByZW1vdHMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTcgYnVpbHRpbi9wdWxsLmM6MTk3CisjOiBidWlsdGluL2ZldGNoLmM6MTQxIGJ1aWx0aW4vcHVsbC5jOjI0OAorIywgZnV6enkKK21zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL2ZldGNoIgorbXNnc3RyICJlc3RhYmxlaXggbGEgZm9udCBwZXIgYSBnaXQgcHVsbC9zdGF0dXMiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMgYnVpbHRpbi9wdWxsLmM6MjA3CiBtc2dpZCAiYXBwZW5kIHRvIC5naXQvRkVUQ0hfSEVBRCBpbnN0ZWFkIG9mIG92ZXJ3cml0aW5nIgogbXNnc3RyICJhbm5leGEgYSAuZ2l0L0ZFVENIX0hFQUQgZW4gbGxvYyBkZSBzb2JyZWVzY3JpdXJlIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTE5IGJ1aWx0aW4vcHVsbC5jOjIwMAorIzogYnVpbHRpbi9mZXRjaC5jOjE0NSBidWlsdGluL3B1bGwuYzoyMTAKIG1zZ2lkICJwYXRoIHRvIHVwbG9hZCBwYWNrIG9uIHJlbW90ZSBlbmQiCiBtc2dzdHIgImNhbcOtIGFsIHF1YWwgcHVqYXIgZWwgcGFxdWV0IGFsIGNvc3RhdCByZW1vdCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyMAotIywgZnV6enkKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDYKIG1zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgbG9jYWwgcmVmZXJlbmNlIgotbXNnc3RyICJmb3LDp2EgbGEgc29icmVlc2NyaXB0dXJhIGRlIGxhIGJyYW5jYSBsb2NhbCIKK21zZ3N0ciAiZm9yw6dhIGxhIHNvYnJlZXNjcmlwdHVyYSBkZSBsYSByZWZlcsOobmNpYSBsb2NhbCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyMgorIzogYnVpbHRpbi9mZXRjaC5jOjE0OAogbXNnaWQgImZldGNoIGZyb20gbXVsdGlwbGUgcmVtb3RlcyIKIG1zZ3N0ciAib2J0w6luIGRlIG3Dumx0aXBsZXMgcmVtb3RzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI0IGJ1aWx0aW4vcHVsbC5jOjIwNAorIzogYnVpbHRpbi9mZXRjaC5jOjE1MCBidWlsdGluL3B1bGwuYzoyMTQKIG1zZ2lkICJmZXRjaCBhbGwgdGFncyBhbmQgYXNzb2NpYXRlZCBvYmplY3RzIgogbXNnc3RyICJvYnTDqW4gdG90ZXMgbGVzIGV0aXF1ZXRlcyBpIHRvdHMgZWxzIG9iamVjdGVzIGFzc29jaWF0cyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyNgorIzogYnVpbHRpbi9mZXRjaC5jOjE1MgogbXNnaWQgImRvIG5vdCBmZXRjaCBhbGwgdGFncyAoLS1uby10YWdzKSIKIG1zZ3N0ciAibm8gb2J0aW5ndWlzIGxlcyBldGlxdWV0ZXMgKC0tbm8tdGFncykiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMjgKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQKIG1zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBmZXRjaGVkIGluIHBhcmFsbGVsIgogbXNnc3RyICJub21icmUgZGUgc3VibcOyZHVscyBvYnRpbmd1dHMgZW4gcGFyYWzCt2xlbCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzMCBidWlsdGluL3B1bGwuYzoyMDcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTYgYnVpbHRpbi9wdWxsLmM6MjE3CiBtc2dpZCAicHJ1bmUgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIG5vIGxvbmdlciBvbiByZW1vdGUiCiBtc2dzdHIgInBvZGEgbGVzIGJyYW5xdWVzIGFtYiBzZWd1aW1lbnQgcmVtb3QgcXVlIGphIG5vIGVzdGlndWluIGVuIGVsIHJlbW90IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMyCisjOiBidWlsdGluL2ZldGNoLmM6MTU4CiBtc2dpZCAicHJ1bmUgbG9jYWwgdGFncyBubyBsb25nZXIgb24gcmVtb3RlIGFuZCBjbG9iYmVyIGNoYW5nZWQgdGFncyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMzIGJ1aWx0aW4vZmV0Y2guYzoxNTYgYnVpbHRpbi9wdWxsLmM6MTMyCisjOiBidWlsdGluL2ZldGNoLmM6MTU5IGJ1aWx0aW4vZmV0Y2guYzoxODIgYnVpbHRpbi9wdWxsLmM6MTQxCiBtc2dpZCAib24tZGVtYW5kIgogbXNnc3RyICJzb3RhIGRlbWFuZGEiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjAKIG1zZ2lkICJjb250cm9sIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIgogbXNnc3RyICJjb250cm9sYSBsJ29idGVuY2nDsyByZWN1cnNpdmEgZGUgc3VibcOyZHVscyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzOCBidWlsdGluL3B1bGwuYzoyMTUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9wdWxsLmM6MjI1CiBtc2dpZCAia2VlcCBkb3dubG9hZGVkIHBhY2siCiBtc2dzdHIgInJldMOpbiBlbCBwYXF1ZXQgYmFpeGF0IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQwCisjOiBidWlsdGluL2ZldGNoLmM6MTY2CiBtc2dpZCAiYWxsb3cgdXBkYXRpbmcgb2YgSEVBRCByZWYiCiBtc2dzdHIgInBlcm1ldCBsJ2FjdHVhbGl0emFjacOzIGRlIGxhIHJlZmVyw6huY2lhIEhFQUQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMgYnVpbHRpbi9mZXRjaC5jOjE0OSBidWlsdGluL3B1bGwuYzoyMTgKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjkgYnVpbHRpbi9mZXRjaC5jOjE3NSBidWlsdGluL3B1bGwuYzoyMjgKIG1zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IGNsb25lIgogbXNnc3RyICJhcHJvZnVuZGVpeCBsYSBoaXN0w7JyaWEgZCd1biBjbG9uIHN1cGVyZmljaWFsIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQ1CisjOiBidWlsdGluL2ZldGNoLmM6MTcxCiBtc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyByZXBvc2l0b3J5IGJhc2VkIG9uIHRpbWUiCiBtc2dzdHIgImFwcm9mdW5kZWl4IGxhIGhpc3TDsnJpYSBkJ3VuIGNsb24gc3VwZXJmaWNpYWwgYmFzYXQgZW4gdGVtcHMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTEgYnVpbHRpbi9wdWxsLmM6MjIxCisjOiBidWlsdGluL2ZldGNoLmM6MTc3IGJ1aWx0aW4vcHVsbC5jOjIzMQogbXNnaWQgImNvbnZlcnQgdG8gYSBjb21wbGV0ZSByZXBvc2l0b3J5IgogbXNnc3RyICJjb252ZXJ0ZWl4IGVuIHVuIGRpcMOyc2l0IGNvbXBsZXQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODAKIG1zZ2lkICJwcmVwZW5kIHRoaXMgdG8gc3VibW9kdWxlIHBhdGggb3V0cHV0IgogbXNnc3RyICJhbnRlcG9zYSBhaXjDsiBhIGxhIHNvcnRpZGEgZGUgY2Ftw60gZGVsIHN1Ym3DsmR1bCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1NworIzogYnVpbHRpbi9mZXRjaC5jOjE4MwogbXNnaWQgIiIKICJkZWZhdWx0IGZvciByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyAobG93ZXIgcHJpb3JpdHkgdGhhbiBjb25maWcgIgogImZpbGVzKSIKQEAgLTEwOTUwLDEwOCArMTMzNDAsMTI4IEBACiAicGVyIGRlZmVjdGUgcGVyIGEgbCdvYnRlbmNpw7MgcmVjdXJzaXZhIGRlIHN1Ym3DsmR1bHMgKHByaW9yaXRhdCBtw6lzIGJhaXhhIHF1ZSAiCiAiZWxzIGZpdHhlcnMgZGUgY29uZmlndXJhY2nDsykiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjEgYnVpbHRpbi9wdWxsLmM6MjI0CisjOiBidWlsdGluL2ZldGNoLmM6MTg3IGJ1aWx0aW4vcHVsbC5jOjIzNAogbXNnaWQgImFjY2VwdCByZWZzIHRoYXQgdXBkYXRlIC5naXQvc2hhbGxvdyIKIG1zZ3N0ciAiYWNjZXB0YSBsZXMgcmVmZXLDqG5jaWVzIHF1ZSBhY3R1YWxpdHppbiAuZ2l0L3NoYWxsb3ciCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjIgYnVpbHRpbi9wdWxsLmM6MjI2CisjOiBidWlsdGluL2ZldGNoLmM6MTg4IGJ1aWx0aW4vcHVsbC5jOjIzNgogbXNnaWQgInJlZm1hcCIKIG1zZ3N0ciAibWFwYSBkZSByZWZlcsOobmNpZXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjMgYnVpbHRpbi9wdWxsLmM6MjI3CisjOiBidWlsdGluL2ZldGNoLmM6MTg5IGJ1aWx0aW4vcHVsbC5jOjIzNwogbXNnaWQgInNwZWNpZnkgZmV0Y2ggcmVmbWFwIgotbXNnc3RyICJtb3N0cmEgZWwgbWFwYSBkZSByZWZlcsOobmNpZXMgZCdvYnRlbmNpw7MiCittc2dzdHIgImVzcGVjw61maWNhIGwnb2J0ZW5jacOzIGRlbCBtYXBhIGRlIHJlZmVyw6huY2llcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2NCBidWlsdGluL2xzLXJlbW90ZS5jOjc3IGJ1aWx0aW4vcHVzaC5jOjU4MgotIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzIKLW1zZ2lkICJzZXJ2ZXItc3BlY2lmaWMiCi1tc2dzdHIgImVzcGVjw61maWMgYWwgc2Vydmlkb3IiCi0KLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9scy1yZW1vdGUuYzo3NyBidWlsdGluL3B1c2guYzo1ODIKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTczCi1tc2dpZCAib3B0aW9uIHRvIHRyYW5zbWl0IgotbXNnc3RyICJvcGNpw7MgYSB0cmFuc21ldHJlIgotCi0jOiBidWlsdGluL2ZldGNoLmM6MTcwCisjOiBidWlsdGluL2ZldGNoLmM6MTk2CiBtc2dpZCAicmVwb3J0IHRoYXQgd2UgaGF2ZSBvbmx5IG9iamVjdHMgcmVhY2hhYmxlIGZyb20gdGhpcyBvYmplY3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjQ3MAorIzogYnVpbHRpbi9mZXRjaC5jOjE5OQorIywgZnV6enkKK21zZ2lkICJydW4gJ2djIC0tYXV0bycgYWZ0ZXIgZmV0Y2hpbmciCittc2dzdHIgInBvZGEgZWxzIHJlbW90cyBkZXNwcsOpcyBkJ29idGVuaXItbG9zIgorCisjOiBidWlsdGluL2ZldGNoLmM6MjAxIGJ1aWx0aW4vcHVsbC5jOjI0NgorbXNnaWQgImNoZWNrIGZvciBmb3JjZWQtdXBkYXRlcyBvbiBhbGwgdXBkYXRlZCBicmFuY2hlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MjAzCisjLCBmdXp6eQorbXNnaWQgIndyaXRlIHRoZSBjb21taXQtZ3JhcGggYWZ0ZXIgZmV0Y2hpbmciCittc2dzdHIgInBvZGEgZWxzIHJlbW90cyBkZXNwcsOpcyBkJ29idGVuaXItbG9zIgorCisjOiBidWlsdGluL2ZldGNoLmM6NTEzCiBtc2dpZCAiQ291bGRuJ3QgZmluZCByZW1vdGUgcmVmIEhFQUQiCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgdHJvYmFyIGxhIHJlZmVyw6huY2lhIEhFQUQgcmVtb3RhIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NjA5CisjOiBidWlsdGluL2ZldGNoLmM6NjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbmZpZ3VyYXRpb24gZmV0Y2gub3V0cHV0IGNvbnRhaW5zIGludmFsaWQgdmFsdWUgJXMiCiBtc2dzdHIgImxhIGNvbmZpZ3VyYWNpw7MgZmV0Y2gub3V0cHV0IGNvbnTDqSB1biB2YWxvciBubyB2w6BsaWQgJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MDIKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIG5vdCBmb3VuZCIKIG1zZ3N0ciAib2JqZWN0ZSAlcyBubyB0cm9iYXQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MDYKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTUKIG1zZ2lkICJbdXAgdG8gZGF0ZV0iCiBtc2dzdHIgIlthbCBkaWFdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzE5IGJ1aWx0aW4vZmV0Y2guYzo3MzUgYnVpbHRpbi9mZXRjaC5jOjgwNworIzogYnVpbHRpbi9mZXRjaC5jOjc2OCBidWlsdGluL2ZldGNoLmM6Nzg0IGJ1aWx0aW4vZmV0Y2guYzo4NTYKIG1zZ2lkICJbcmVqZWN0ZWRdIgogbXNnc3RyICJbcmVidXRqYXRdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzIwCisjOiBidWlsdGluL2ZldGNoLmM6NzY5CiBtc2dpZCAiY2FuJ3QgZmV0Y2ggaW4gY3VycmVudCBicmFuY2giCiBtc2dzdHIgIm5vIGVzIHBvdCBvYnRlbmlyIGVuIGxhIGJyYW5jYSBhY3R1YWwiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NzkKIG1zZ2lkICJbdGFnIHVwZGF0ZV0iCiBtc2dzdHIgIlthY3R1YWxpdHphY2nDsyBkJ2V0aXF1ZXRhXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjczMSBidWlsdGluL2ZldGNoLmM6NzcxIGJ1aWx0aW4vZmV0Y2guYzo3ODcKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4MDIKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3ODAgYnVpbHRpbi9mZXRjaC5jOjgxNyBidWlsdGluL2ZldGNoLmM6ODM5CisjOiBidWlsdGluL2ZldGNoLmM6ODUxCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBsb2NhbCByZWYiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYWN0dWFsaXR6YXIgbGEgcmVmZXLDqG5jaWEgbG9jYWwiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MzUKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3ODQKIG1zZ2lkICJ3b3VsZCBjbG9iYmVyIGV4aXN0aW5nIHRhZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzU3CisjOiBidWlsdGluL2ZldGNoLmM6ODA2CiBtc2dpZCAiW25ldyB0YWddIgogbXNnc3RyICJbZXRpcXVldGEgbm92YV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3NjAKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MDkKIG1zZ2lkICJbbmV3IGJyYW5jaF0iCiBtc2dzdHIgIlticmFuY2Egbm92YV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3NjMKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MTIKIG1zZ2lkICJbbmV3IHJlZl0iCiBtc2dzdHIgIltyZWZlcsOobmNpYSBub3ZhXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjgwMgorIzogYnVpbHRpbi9mZXRjaC5jOjg1MQogbXNnaWQgImZvcmNlZCB1cGRhdGUiCiBtc2dzdHIgImFjdHVhbGl0emFjacOzIGZvcsOnYWRhIgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODA3CisjOiBidWlsdGluL2ZldGNoLmM6ODU2CiBtc2dpZCAibm9uLWZhc3QtZm9yd2FyZCIKIG1zZ3N0ciAic2Vuc2UgYXZhbsOnIHLDoHBpZCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjg1MworIzogYnVpbHRpbi9mZXRjaC5jOjg3NworbXNnaWQgIiIKKyJGZXRjaCBub3JtYWxseSBpbmRpY2F0ZXMgd2hpY2ggYnJhbmNoZXMgaGFkIGEgZm9yY2VkIHVwZGF0ZSxcbiIKKyJidXQgdGhhdCBjaGVjayBoYXMgYmVlbiBkaXNhYmxlZC4gVG8gcmUtZW5hYmxlLCB1c2UgJy0tc2hvdy1mb3JjZWQtdXBkYXRlcydcbiIKKyJmbGFnIG9yIHJ1biAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyB0cnVlJy4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjg4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gY2hlY2sgZm9yY2VkIHVwZGF0ZXMuIFlvdSBjYW4gdXNlXG4iCisiJy0tbm8tc2hvdy1mb3JjZWQtdXBkYXRlcycgb3IgcnVuICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzICIKKyJmYWxzZSdcbiIKKyIgdG8gYXZvaWQgdGhpcyBjaGVjay5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6OTExCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRpZCBub3Qgc2VuZCBhbGwgbmVjZXNzYXJ5IG9iamVjdHNcbiIKIG1zZ3N0ciAiJXMgbm8gaGEgZW52aWF0IHRvdHMgZWxzIG9iamVjdGVzIG5lY2Vzc2FyaXNcbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjg3NAorIzogYnVpbHRpbi9mZXRjaC5jOjkzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWplY3QgJXMgYmVjYXVzZSBzaGFsbG93IHJvb3RzIGFyZSBub3QgYWxsb3dlZCB0byBiZSB1cGRhdGVkIgogbXNnc3RyICIiCiAicmVidXRqYSAlcyBwZXJxdcOoIG5vIGVzIHBlcm1ldCBxdWUgbGVzIGFycmVscyBzdXBlcmZpY2lhbHMgcydhY3R1YWxpdHppbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjk2MyBidWlsdGluL2ZldGNoLmM6MTA4NQorIzogYnVpbHRpbi9mZXRjaC5jOjEwMTcgYnVpbHRpbi9mZXRjaC5jOjExNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRnJvbSAlLipzXG4iCiBtc2dzdHIgIkRlICUuKnNcbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjk3NAorIzogYnVpbHRpbi9mZXRjaC5jOjEwMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInNvbWUgbG9jYWwgcmVmcyBjb3VsZCBub3QgYmUgdXBkYXRlZDsgdHJ5IHJ1bm5pbmdcbiIKQEAgLTExMDYxLDU1ICsxMzQ3MSw4MCBAQAogIiBpbnRlbnRldSBleGVjdXRhciAnZ2l0IHJlbW90ZSBwcnVuZSAlcycgcGVyIGEgZWxpbWluYXJcbiIKICIgcXVhbHNldm9sIGJyYW5jYSBhbnRpZ2EgbyBjb25mbGljdGl2YSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwNTUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICglcyB3aWxsIGJlY29tZSBkYW5nbGluZykiCiBtc2dzdHIgIiAgICglcyBlcyB0b3JuYXLDoCBwZW5qYW50KSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwNTYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICglcyBoYXMgYmVjb21lIGRhbmdsaW5nKSIKIG1zZ3N0ciAiICAgKCVzIHMnaGEgdG9ybmF0IHBlbmphbnQpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA4OAorIzogYnVpbHRpbi9mZXRjaC5jOjExNTgKIG1zZ2lkICJbZGVsZXRlZF0iCiBtc2dzdHIgIltzdXByaW1pdF0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMDg5IGJ1aWx0aW4vcmVtb3RlLmM6MTAzNgorIzogYnVpbHRpbi9mZXRjaC5jOjExNTkgYnVpbHRpbi9yZW1vdGUuYzoxMDM1CiBtc2dpZCAiKG5vbmUpIgogbXNnc3RyICIoY2FwKSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExMTIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIGZldGNoIGludG8gY3VycmVudCBicmFuY2ggJXMgb2Ygbm9uLWJhcmUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiUydlc3TDoCByZWZ1c2FudCBvYnRlbmlyIGVuIGxhIGJyYW5jYSBhY3R1YWwgJXMgZCd1biBkaXDDsnNpdCBubyBudSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExMzEKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMjAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9wdGlvbiBcIiVzXCIgdmFsdWUgXCIlc1wiIGlzIG5vdCB2YWxpZCBmb3IgJXMiCi1tc2dzdHIgIkwnb3BjacOzIFwiJXNcIiBhbWIgdmFsb3IgXCIlc1wiIG5vIMOpcyB2w6BsaWRhIHBlciBhICVzIgorbXNnc3RyICJMJ29wY2nDsyDCqyVzwrsgYW1iIHZhbG9yIMKrJXPCuyBubyDDqXMgdsOgbGlkYSBwZXIgYSAlcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExMzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMjA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIk9wdGlvbiBcIiVzXCIgaXMgaWdub3JlZCBmb3IgJXNcbiIKLW1zZ3N0ciAiUydpZ25vcmEgbCdvcGNpw7MgXCIlc1wiIHBlciBhICVzXG4iCittc2dzdHIgIlMnaWdub3JhIGwnb3BjacOzIMKrJXPCuyBwZXIgYSAlc1xuIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQxMgorbXNnaWQgIm11bHRpcGxlIGJyYW5jaGVzIGRldGVjdGVkLCBpbmNvbXBhdGlibGUgd2l0aCAtLXNldC11cHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQyNworIywgZnV6enkKK21zZ2lkICJub3Qgc2V0dGluZyB1cHN0cmVhbSBmb3IgYSByZW1vdGUgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKK21zZ3N0ciAibGEgYnJhbmNhIGZvbnQgwqslc8K7IG5vIHMnZW1tYWdhdHplbWEgY29tIGEgYnJhbmNhIGFtYiBzZWd1aW1lbnQgcmVtb3QiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDI5CisjLCBmdXp6eQorbXNnaWQgIm5vdCBzZXR0aW5nIHVwc3RyZWFtIGZvciBhIHJlbW90ZSB0YWciCittc2dzdHIgImVzdGFibGVpeCBsYSBmb250IHBlciBhIGdpdCBwdWxsL3N0YXR1cyIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MzEKKyMsIGZ1enp5Cittc2dpZCAidW5rbm93biBicmFuY2ggdHlwZSIKK21zZ3N0ciAidGlwdXMgZCdvYmplY3RlIGRlc2NvbmVndXQgJWQiCiAKICM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMzCittc2dpZCAiIgorIm5vIHNvdXJjZSBicmFuY2ggZm91bmQuXG4iCisieW91IG5lZWQgdG8gc3BlY2lmeSBleGFjdGx5IG9uZSBicmFuY2ggd2l0aCB0aGUgLS1zZXQtdXBzdHJlYW0gb3B0aW9uLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTU1OSBidWlsdGluL2ZldGNoLmM6MTYyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJGZXRjaGluZyAlc1xuIgogbXNnc3RyICJTJ2VzdMOgIG9idGVuaW50ICVzXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDM1IGJ1aWx0aW4vcmVtb3RlLmM6MTAwCisjOiBidWlsdGluL2ZldGNoLmM6MTU2OSBidWlsdGluL2ZldGNoLmM6MTYyNCBidWlsdGluL3JlbW90ZS5jOjEwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmV0Y2ggJXMiCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgb2J0ZW5pciAlcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0ODEgYnVpbHRpbi9mZXRjaC5jOjE2NDkKLW1zZ2lkICIiCi0iLS1maWx0ZXIgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIHRoZSByZW1vdGUgY29uZmlndXJlZCBpbiBjb3JlLnBhcnRpYWxDbG9uZSIKLW1zZ3N0ciAiIgorIzogYnVpbHRpbi9mZXRjaC5jOjE1ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmZXRjaCAnJXMnIChleGl0IGNvZGU6ICVkKVxuIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzdGFibGlyIMKrJXPCuyBhIMKrJXPCuyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1MDQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjg0CiBtc2dpZCAiIgogIk5vIHJlbW90ZSByZXBvc2l0b3J5IHNwZWNpZmllZC4gIFBsZWFzZSwgc3BlY2lmeSBlaXRoZXIgYSBVUkwgb3IgYVxuIgogInJlbW90ZSBuYW1lIGZyb20gd2hpY2ggbmV3IHJldmlzaW9ucyBzaG91bGQgYmUgZmV0Y2hlZC4iCkBAIC0xMTExNyw2NiArMTM1NTIsNzIgQEAKICJDYXAgZGlww7JzaXQgcmVtb3QgZXNwZWNpZmljYXQuIEVzcGVjaWZpcXVldSB1biBVUkwgb1xuIgogInVuIG5vbSByZW1vdCBkZWwgcXVhbCBlcyBkZXVlbiBvYnRlbmlyIGxlcyByZXZpc2lvbnMgbm92ZXMuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU0MQorIzogYnVpbHRpbi9mZXRjaC5jOjE3MjEKIG1zZ2lkICJZb3UgbmVlZCB0byBzcGVjaWZ5IGEgdGFnIG5hbWUuIgogbXNnc3RyICJOZWNlc3NpdGV1IGVzcGVjaWZpY2FyIHVuIG5vbSBkJ2V0aXF1ZXRhLiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzcxCiBtc2dpZCAiTmVnYXRpdmUgZGVwdGggaW4gLS1kZWVwZW4gaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAiTm8gcydhZG1ldCB1bmEgcHJvZnVuZGl0YXQgbmVnYXRpdmEgZW4gLS1kZWVwZW4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTkyCisjOiBidWlsdGluL2ZldGNoLmM6MTc3MwogbXNnaWQgIi0tZGVlcGVuIGFuZCAtLWRlcHRoIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi0tZGVlcGVuIGkgLS1kZXB0aCBzw7NuIG3DunR1YW1lbnQgZXhjbG9lbnRzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU5NworIzogYnVpbHRpbi9mZXRjaC5jOjE3NzgKIG1zZ2lkICItLWRlcHRoIGFuZCAtLXVuc2hhbGxvdyBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAiLS1kZXB0aCBpIC0tdW5zaGFsbG93IG5vIGVzIHBvZGVuIHVzYXIganVudHMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTk5CisjOiBidWlsdGluL2ZldGNoLmM6MTc4MAogbXNnaWQgIi0tdW5zaGFsbG93IG9uIGEgY29tcGxldGUgcmVwb3NpdG9yeSBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLXVuc2hhbGxvdyBlbiB1biBkaXDDsnNpdCBjb21wbGV0IG5vIHTDqSBzZW50aXQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjE1CisjOiBidWlsdGluL2ZldGNoLmM6MTc5NgogbXNnaWQgImZldGNoIC0tYWxsIGRvZXMgbm90IHRha2UgYSByZXBvc2l0b3J5IGFyZ3VtZW50IgogbXNnc3RyICJmZXRjaCAtLWFsbCBubyBhY2NlcHRhIHVuIHBhcsOgbWV0cmUgZGUgZGlww7JzaXQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjE3CisjOiBidWlsdGluL2ZldGNoLmM6MTc5OAogbXNnaWQgImZldGNoIC0tYWxsIGRvZXMgbm90IG1ha2Ugc2Vuc2Ugd2l0aCByZWZzcGVjcyIKIG1zZ3N0ciAiZmV0Y2ggLS1hbGwgbm8gdMOpIHNlbnRpdCBhbWIgZXNwZWNpZmljYWNpb25zIGRlIHJlZmVyw6huY2lhIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYyNgorIzogYnVpbHRpbi9mZXRjaC5jOjE4MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZW1vdGUgb3IgcmVtb3RlIGdyb3VwOiAlcyIKLW1zZ3N0ciAiTm8gaGkgaGEgdGFsIHJlbW90IG5pIHRhbCBncnVwIHJlbW90OiAlcyIKK21zZ3N0ciAiTm8gZXhpc3RlaXggdW4gcmVtb3QgbmkgdW4gZ3J1cCByZW1vdDogJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjMzCisjOiBidWlsdGluL2ZldGNoLmM6MTgxNAogbXNnaWQgIkZldGNoaW5nIGEgZ3JvdXAgYW5kIHNwZWNpZnlpbmcgcmVmc3BlY3MgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiT2J0ZW5pciB1biBncnVwIGkgZXNwZWNpZmljYXIgcmVmZXLDqG5jaWVzIG5vIHTDqSBzZW50aXQiCiAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODMyCittc2dpZCAiIgorIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gZXh0ZW5zaW9ucy4iCisicGFydGlhbGNsb25lIgorbXNnc3RyICIiCisKICM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjE4CiBtc2dpZCAiIgogImdpdCBmbXQtbWVyZ2UtbXNnIFstbSA8bWVzc2FnZT5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlIDxmaWxlPl0iCiBtc2dzdHIgIiIKICJnaXQgZm10LW1lcmdlLW1zZyBbLW0gPG1pc3NhdGdlPl0gWy0tbG9nWz08bj5dIHwgLS1uby1sb2ddIFstLWZpbGUgPGZpdHhlcj5dIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzIKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NAogbXNnaWQgInBvcHVsYXRlIGxvZyB3aXRoIGF0IG1vc3QgPG4+IGVudHJpZXMgZnJvbSBzaG9ydGxvZyIKIG1zZ3N0ciAiZW1wbGVuYSBlbCByZWdpc3RyZSBhbWIgPG4+IGVudHJhZGVzIGRlbCByZWdpc3RyZSBjdXJ0IGNvbSBhIG3DoHhpbSIKIAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc1CisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzcKIG1zZ2lkICJhbGlhcyBmb3IgLS1sb2cgKGRlcHJlY2F0ZWQpIgogbXNnc3RyICLDoGxpZXMgcGVyIC0tbG9nIChlbiBkZXPDunMpIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzgKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY4MAogbXNnaWQgInRleHQiCiBtc2dzdHIgInRleHQiCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjgxCiBtc2dpZCAidXNlIDx0ZXh0PiBhcyBzdGFydCBvZiBtZXNzYWdlIgogbXNnc3RyICJ1c2EgPHRleHQ+IGNvbSBhIGluaWNpIGRlIG1pc3NhdGdlIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2ODAKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY4MgogbXNnaWQgImZpbGUgdG8gcmVhZCBmcm9tIgogbXNnc3RyICJmaXR4ZXIgZGVsIHF1YWwgbGxlZ2lyIgogCkBAIC0xMTIxOCw5MSArMTM2NTksMjczIEBACiBtc2dpZCAic2hvdyBvbmx5IDxuPiBtYXRjaGVkIHJlZnMiCiBtc2dzdHIgIm1vc3RyYSBub23DqXMgPG4+IHJlZmVyw6huY2llcyBjb2luY2lkZW50cyIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOSBidWlsdGluL3RhZy5jOjQyNAorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOSBidWlsdGluL3RhZy5jOjQzOQogbXNnaWQgInJlc3BlY3QgZm9ybWF0IGNvbG9ycyIKIG1zZ3N0ciAicmVzcGVjdGEgZWxzIGNvbG9ycyBkZWwgZm9ybWF0IgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQzCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQyCiBtc2dpZCAicHJpbnQgb25seSByZWZzIHdoaWNoIHBvaW50cyBhdCB0aGUgZ2l2ZW4gb2JqZWN0IgogbXNnc3RyICJpbXByaW1laXggbm9tw6lzIGxlcyByZWZlcsOobmNpZXMgcXVlIGFzc2VueWFsaW4gbCdvYmplY3RlIGRvbmF0IgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ1CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ0CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAiaW1wcmltZWl4IG5vbcOpcyBsZXMgcmVmZXLDqG5jaWVzIHF1ZSBzJ2hhbiBmdXNpb25hdCIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NgorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NQogbXNnaWQgInByaW50IG9ubHkgcmVmcyB0aGF0IGFyZSBub3QgbWVyZ2VkIgogbXNnc3RyICJpbXByaW1laXggbm9tw6lzIGxlcyByZWZlcsOobmNpZXMgcXVlIG5vIHMnaGFuIGZ1c2lvbmF0IgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ3CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ2CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHdoaWNoIGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAiaW1wcmltZWl4IG5vbcOpcyBsZXMgcmVmZXLDqG5jaWVzIHF1ZSBjb250aW5ndWluIGxhIGNvbWlzc2nDsyIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OAorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NwogbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgImltcHJpbWVpeCBub23DqXMgbGVzIHJlZmVyw6huY2llcyBxdWUgbm8gY29udGluZ3VpbiBsYSBjb21pc3Npw7MiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjU5OAorIzogYnVpbHRpbi9mc2NrLmM6NjggYnVpbHRpbi9mc2NrLmM6MTQ3IGJ1aWx0aW4vZnNjay5jOjE0OAorbXNnaWQgInVua25vd24iCittc2dzdHIgImRlc2NvbmVndXQiCisKKyMuIFRSQU5TTEFUT1JTOiBlLmcuIGVycm9yIGluIHRyZWUgMDFiZmRhOiA8bW9yZSBleHBsYW5hdGlvbj4KKyM6IGJ1aWx0aW4vZnNjay5jOjEwMCBidWlsdGluL2ZzY2suYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gJXMgJXM6ICVzIgorbXNnc3RyICJlcnJvciBlbiAlcyAlczogJXMiCisKKyMuIFRSQU5TTEFUT1JTOiBlLmcuIHdhcm5pbmcgaW4gdHJlZSAwMWJmZGE6IDxtb3JlIGV4cGxhbmF0aW9uPgorIzogYnVpbHRpbi9mc2NrLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIndhcm5pbmcgaW4gJXMgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE0MyBidWlsdGluL2ZzY2suYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiYnJva2VuIGxpbmsgZnJvbSAlN3MgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6MTU1Cittc2dpZCAid3Jvbmcgb2JqZWN0IHR5cGUgaW4gbGluayIKK21zZ3N0ciAidGlwdXMgZCdvYmplY3RlIGluY29ycmVjdGUgZW4gbCdlbmxsYcOnIgorCisjOiBidWlsdGluL2ZzY2suYzoxNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImJyb2tlbiBsaW5rIGZyb20gJTdzICVzXG4iCisiICAgICAgICAgICAgICB0byAlN3MgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6MjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMgJXMiCittc2dzdHIgIm1hbmNhICVzICVzIgorCisjOiBidWlsdGluL2ZzY2suYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWFjaGFibGUgJXMgJXMiCittc2dzdHIgImluYWJhc3RhYmxlICVzICVzIgorCisjOiBidWlsdGluL2ZzY2suYzozMjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRhbmdsaW5nICVzICVzIgorbXNnc3RyICJTJ2VzdGFuIGFjdHVhbGl0emFudCAlcy4uJXNcbiIKKworIzogYnVpbHRpbi9mc2NrLmM6MzM5CisjLCBmdXp6eQorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgbG9zdC1mb3VuZCIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBjcmVhciBlbCBmaXR4ZXIgwqslc8K7IgorCisjOiBidWlsdGluL2ZzY2suYzozNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCAnJXMnIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZpbmFsaXR6YXIgwqslc8K7IgorCisjOiBidWlsdGluL2ZzY2suYzozNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMiCittc2dzdHIgIlMnZXN0w6AgY29tcHJvdmFudCAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIGNvbm5lY3Rpdml0eSAoJWQgb2JqZWN0cykiCittc2dzdHIgIlMnZXN0w6AgY29tcHJvdmFudCBsYSBjb25uZWN0aXZpdGF0ICglZCBvYmplY3RlcykiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyAlcyAlcyIKK21zZ3N0ciAiUydlc3TDoCBjb21wcm92YW50ICVzICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo0MjkKK21zZ2lkICJicm9rZW4gbGlua3MiCittc2dzdHIgImVubGxhw6dvcyB0cmVuY2F0cyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgInJvb3QgJXMiCittc2dzdHIgImFycmVsICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFnZ2VkICVzICVzICglcykgaW4gJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgY29ycnVwdCBvciBtaXNzaW5nIgorbXNnc3RyICIlczogb2JqZWN0ZSBjb3JydXB0ZSBvIG5vIHRyb2JhdCIKKworIzogYnVpbHRpbi9mc2NrLmM6NTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHJlZmxvZyBlbnRyeSAlcyIKK21zZ3N0ciAiICVzOiBlbnRyYWRhIGRlIHJlZmVyw6huY2lhIG5vIHbDoGxpZGEgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjUxNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgcmVmbG9nICVzLT4lcyIKK21zZ3N0ciAiUydlc3TDoCBjb21wcm92YW50IGVsIGNhbnZpIGRlIG5vbSBkZSDCqyVzwrsgYSDCqyVzwrtcbiIKKworIzogYnVpbHRpbi9mc2NrLmM6NTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHNoYTEgcG9pbnRlciAlcyIKK21zZ3N0ciAiJXM6IHB1bnRlciBzaGExIG5vIHbDoGxpZDogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjU1NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogbm90IGEgY29tbWl0IgorbXNnc3RyICIlczogbm8gw6lzIHVuYSBjb21pc3Npw7MiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYwOQorbXNnaWQgIm5vdGljZTogTm8gZGVmYXVsdCByZWZlcmVuY2VzIgorbXNnc3RyICJhdsOtczogbm8gaGkgaGEgcmVmZXLDqG5jaWVzIHBlciBkZWZlY3RlIgorCisjOiBidWlsdGluL2ZzY2suYzo2MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3Npbmc6ICVzIgorbXNnc3RyICIlczogb2JqZWN0ZSBjb3JydXB0ZSBvIG5vIHRyb2JhdDogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvdWxkIG5vdCBiZSBwYXJzZWQ6ICVzIgorbXNnc3RyICIlczogbm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbCdvYmplY3RlOiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjU3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaGExIGZpbGU6ICVzIgorbXNnc3RyICJmaXR4ZXIgc2hhMSBtYWxtw6hzOiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjcyCittc2dpZCAiQ2hlY2tpbmcgb2JqZWN0IGRpcmVjdG9yeSIKK21zZ3N0ciAiUydlc3TDoCBjb21wcm92YW50IGVsIGRpcmVjdG9yaSBkJ29iamVjdGUiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY3NQogbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcmllcyIKIG1zZ3N0ciAiUydlc3RhbiBjb21wcm92YW50IGVscyBkaXJlY3RvcmlzIGQnb2JqZWN0ZSIKIAotIzogYnVpbHRpbi9mc2NrLmM6NjkzCisjOiBidWlsdGluL2ZzY2suYzo2OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgbGluayIKK21zZ3N0ciAiUydlc3TDoCBjb21wcm92YW50IGwnZW5sbGHDpyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6Njk1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkICVzIgorbXNnc3RyICIlcyBubyB2w6BsaWQiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcwMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgcG9pbnRzIHRvIHNvbWV0aGluZyBzdHJhbmdlICglcykiCittc2dzdHIgIiVzIC0gbm8gw6lzIHVuYSBjb3NhIHF1ZSBwdWd1ZW0gZnVzaW9uYXIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcwOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGV0YWNoZWQgSEVBRCBwb2ludHMgYXQgbm90aGluZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aWNlOiAlcyBwb2ludHMgdG8gYW4gdW5ib3JuIGJyYW5jaCAoJXMpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcyNAorbXNnaWQgIkNoZWNraW5nIGNhY2hlIHRyZWUiCittc2dzdHIgIlMnZXN0w6AgY29tcHJvdmFudCBsJ2FyYnJlIGRlIGxhIG1lbcOycmlhIGNhdSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzI5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCBzaGExIHBvaW50ZXIgaW4gY2FjaGUtdHJlZSIKK21zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBhY3R1YWxpdHphciBsJ2FyYnJlIHByaW5jaXBhbCBkZSBtZW3DsnJpYSBjYXUiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjczOAorbXNnaWQgIm5vbi10cmVlIGluIGNhY2hlLXRyZWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NzY5CiBtc2dpZCAiZ2l0IGZzY2sgWzxvcHRpb25zPl0gWzxvYmplY3Q+Li4uXSIKIG1zZ3N0ciAiZ2l0IGZzY2sgWzxvcGNpb25zPl0gWzxvYmplY3RlPi4uLl0iCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjY5OQorIzogYnVpbHRpbi9mc2NrLmM6Nzc1CiBtc2dpZCAic2hvdyB1bnJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICJtb3N0cmEgZWxzIG9iamVjdGVzIGluYWJhc3RhYmxlcyIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzAwCisjOiBidWlsdGluL2ZzY2suYzo3NzYKIG1zZ2lkICJzaG93IGRhbmdsaW5nIG9iamVjdHMiCiBtc2dzdHIgIm1vc3RyYSBlbHMgb2JqZWN0ZXMgcGVuamFudHMiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMQorIzogYnVpbHRpbi9mc2NrLmM6Nzc3CiBtc2dpZCAicmVwb3J0IHRhZ3MiCiBtc2dzdHIgImluZm9ybWEgZGUgbGVzIGV0aXF1ZXRlcyIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzAyCisjOiBidWlsdGluL2ZzY2suYzo3NzgKIG1zZ2lkICJyZXBvcnQgcm9vdCBub2RlcyIKIG1zZ3N0ciAiaW5mb3JtYSBkZWxzIG5vZGVzIGQnYXJyZWwiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMworIzogYnVpbHRpbi9mc2NrLmM6Nzc5CiBtc2dpZCAibWFrZSBpbmRleCBvYmplY3RzIGhlYWQgbm9kZXMiCiBtc2dzdHIgImZlcyBlbHMgb2JqZWN0ZXMgZCfDrW5kZXggbm9kZXMgZGUgY2FwIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDQKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MAogbXNnaWQgIm1ha2UgcmVmbG9ncyBoZWFkIG5vZGVzIChkZWZhdWx0KSIKIG1zZ3N0ciAiZmVzIHF1ZSBlbHMgcmVnaXN0cmVzIGRlIHJlZmVyw6huY2llcyBzaWd1aW4gbm9kZXMgZGUgY2FwIChwZXIgZGVmZWN0ZSkiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwNQorIzogYnVpbHRpbi9mc2NrLmM6NzgxCiBtc2dpZCAiYWxzbyBjb25zaWRlciBwYWNrcyBhbmQgYWx0ZXJuYXRlIG9iamVjdHMiCiBtc2dzdHIgInRhbWLDqSBjb25zaWRlcmEgZWxzIHBhcXVldHMgaSBlbHMgb2JqZWN0ZXMgYWx0ZXJuYXRpdXMiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwNgorIzogYnVpbHRpbi9mc2NrLmM6NzgyCiBtc2dpZCAiY2hlY2sgb25seSBjb25uZWN0aXZpdHkiCiBtc2dzdHIgImNvbXByb3ZhIG5vbcOpcyBsYSBjb25uZWN0aXZpdGF0IgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDcKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MwogbXNnaWQgImVuYWJsZSBtb3JlIHN0cmljdCBjaGVja2luZyIKIG1zZ3N0ciAiaGFiaWxpdGEgbGEgY29tcHJvdmFjacOzIG3DqXMgZXN0cmljdGEiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwOQorIzogYnVpbHRpbi9mc2NrLmM6Nzg1CiBtc2dpZCAid3JpdGUgZGFuZ2xpbmcgb2JqZWN0cyBpbiAuZ2l0L2xvc3QtZm91bmQiCiBtc2dzdHIgImVzY3JpdSBvYmplY3RlcyBwZW5qYW50cyBhIC5naXQvbG9zdC1mb3VuZCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzEwIGJ1aWx0aW4vcHJ1bmUuYzoxMTAKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NiBidWlsdGluL3BydW5lLmM6MTMyCiBtc2dpZCAic2hvdyBwcm9ncmVzcyIKIG1zZ3N0ciAibW9zdHJhIGVsIHByb2dyw6lzIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MTEKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NwogbXNnaWQgInNob3cgdmVyYm9zZSBuYW1lcyBmb3IgcmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgIm1vc3RyYSBlbHMgbm9tcyBkZXRhbGxhdHMgZGVscyBvYmplY3RlcyBhYmFzdGFibGVzIgogCi0jOiBidWlsdGluL2ZzY2suYzo3NzYKKyM6IGJ1aWx0aW4vZnNjay5jOjg0NiBidWlsdGluL2luZGV4LXBhY2suYzoyMjUKIG1zZ2lkICJDaGVja2luZyBvYmplY3RzIgogbXNnc3RyICJTJ2VzdGFuIGNvbXByb3ZhbnQgZWxzIG9iamVjdGVzIgogCi0jOiBidWlsdGluL2djLmM6MzQKKyM6IGJ1aWx0aW4vZnNjay5jOjg3NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBtaXNzaW5nIgorbXNnc3RyICJtb3N0cmEgbGEgbWlkYSBkZSBsJ29iamVjdGUiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjg4NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYXJhbWV0ZXI6IGV4cGVjdGVkIHNoYTEsIGdvdCAnJXMnIgorbXNnc3RyICJzJ2VzcGVyYXZhIHNoYWxsb3cvdW5zaGFsbG93LCBzJ2hhIHJlYnV0ICVzIgorCisjOiBidWlsdGluL2djLmM6MzUKIG1zZ2lkICJnaXQgZ2MgWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCBnYyBbPG9wY2lvbnM+XSIKIApAQCAtMTEzMTEsMTcgKzEzOTM0LDIyIEBACiBtc2dpZCAiRmFpbGVkIHRvIGZzdGF0ICVzOiAlcyIKIG1zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBmZXIgZnN0YXQgJXM6ICVzIgogCi0jOiBidWlsdGluL2djLmM6NDYxIGJ1aWx0aW4vaW5pdC1kYi5jOjU1CisjOiBidWlsdGluL2djLmM6MTI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgJyVzJyB2YWx1ZSAnJXMnIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIG1vdXJlIMKrJXPCuyBhIMKrJXPCuyIKKworIzogYnVpbHRpbi9nYy5jOjQ3NSBidWlsdGluL2luaXQtZGIuYzo1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RhdCAnJXMnIgogbXNnc3RyICJubyBlcyBwb3QgZmVyIHN0YXQgZW4gwqslc8K7IgogCi0jOiBidWlsdGluL2djLmM6NDcwIGJ1aWx0aW4vbm90ZXMuYzoyNDAgYnVpbHRpbi90YWcuYzo1MTAKKyM6IGJ1aWx0aW4vZ2MuYzo0ODQgYnVpbHRpbi9ub3Rlcy5jOjI0MCBidWlsdGluL3RhZy5jOjUyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCAnJXMnIgogbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIMKrJXPCuyIKIAotIzogYnVpbHRpbi9nYy5jOjQ3NworIzogYnVpbHRpbi9nYy5jOjQ5MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGxhc3QgZ2MgcnVuIHJlcG9ydGVkIHRoZSBmb2xsb3dpbmcuIFBsZWFzZSBjb3JyZWN0IHRoZSByb290IGNhdXNlXG4iCkBAIC0xMTMzNiw3NyArMTM5NjQsNzggQEAKICJcbiIKICIlcyIKIAotIzogYnVpbHRpbi9nYy5jOjUxOQorIzogYnVpbHRpbi9nYy5jOjUzOQogbXNnaWQgInBydW5lIHVucmVmZXJlbmNlZCBvYmplY3RzIgogbXNnc3RyICJwb2RhIG9iamVjdGVzIHNlbnNlIHJlZmVyw6huY2lhIgogCi0jOiBidWlsdGluL2djLmM6NTIxCisjOiBidWlsdGluL2djLmM6NTQxCiBtc2dpZCAiYmUgbW9yZSB0aG9yb3VnaCAoaW5jcmVhc2VkIHJ1bnRpbWUpIgogbXNnc3RyICJzaWd1ZXMgbcOpcyBleGhhdXN0aXUgKGVsIHRlbXBzIGQnZXhlY3VjacOzIGF1Z21lbnRhKSIKIAotIzogYnVpbHRpbi9nYy5jOjUyMgorIzogYnVpbHRpbi9nYy5jOjU0MgogbXNnaWQgImVuYWJsZSBhdXRvLWdjIG1vZGUiCiBtc2dzdHIgImhhYmlsaXRhIGVsIG1vZGUgZGUgcmVjb2xsaWRhIGQnZXNjb21icmFyaWVzIGF1dG9tw6B0aWNhIgogCi0jOiBidWlsdGluL2djLmM6NTI1CisjOiBidWlsdGluL2djLmM6NTQ1CiBtc2dpZCAiZm9yY2UgcnVubmluZyBnYyBldmVuIGlmIHRoZXJlIG1heSBiZSBhbm90aGVyIGdjIHJ1bm5pbmciCiBtc2dzdHIgImZvcsOnYSBsJ2V4ZWN1Y2nDsyBkZSBnYyBlbmNhcmEgcXVlIGhpIHB1Z3VpIGhhdmVyIHVuIGFsdHJlIGdjIGV4ZWN1dGFudCIKIAotIzogYnVpbHRpbi9nYy5jOjUyOAorIzogYnVpbHRpbi9nYy5jOjU0OAogbXNnaWQgInJlcGFjayBhbGwgb3RoZXIgcGFja3MgZXhjZXB0IHRoZSBsYXJnZXN0IHBhY2siCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9nYy5jOjU0NQorIzogYnVpbHRpbi9nYy5jOjU2NQogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHBhcnNlIGdjLmxvZ2V4cGlyeSB2YWx1ZSAlcyIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgZWwgdmFsb3IgZ2MubG9nZXhwaXJ5ICVzIgogCi0jOiBidWlsdGluL2djLmM6NTU2CisjOiBidWlsdGluL2djLmM6NTc2CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcGFyc2UgcHJ1bmUgZXhwaXJ5IHZhbHVlICVzIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBlbCB2YWxvciBnYy5sb2dleHBpcnkgJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NzYKKyM6IGJ1aWx0aW4vZ2MuYzo1OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0byBwYWNraW5nIHRoZSByZXBvc2l0b3J5IGluIGJhY2tncm91bmQgZm9yIG9wdGltdW0gcGVyZm9ybWFuY2UuXG4iCiBtc2dzdHIgIiIKLSJTJ2VzdMOgIGVtcGFxdWV0YW50IGVsIGRpcMOyc2l0IGF1dG9tw6B0aWNhbWVudCBlbiBlbCBmb25zIHBlciByZW5kaW1lbnQgIgotIsOycHRpbS5cbiIKKyJTJ2VzdMOgIGVtcGFxdWV0YW50IGVsIGRpcMOyc2l0IGF1dG9tw6B0aWNhbWVudCBlbiBlbCByZXJlZm9ucyBwZXIgYSB1biAiCisicmVuZGltZW50IMOycHRpbS5cbiIKIAotIzogYnVpbHRpbi9nYy5jOjU3OAorIzogYnVpbHRpbi9nYy5jOjU5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvIHBhY2tpbmcgdGhlIHJlcG9zaXRvcnkgZm9yIG9wdGltdW0gcGVyZm9ybWFuY2UuXG4iCi1tc2dzdHIgIlMnZXN0w6AgZW1wYXF1ZXRhbnQgYXV0b23DoHRpY2FtZW50IGVsIGRpcMOyc2l0IHBlciByZW5kaW1lbnQgw7JwdGltLlxuIgorbXNnc3RyICIiCisiUydlc3TDoCBlbXBhcXVldGFudCBhdXRvbcOgdGljYW1lbnQgZWwgZGlww7JzaXQgcGVyIGEgdW4gcmVuZGltZW50IMOycHRpbS5cbiIKIAotIzogYnVpbHRpbi9nYy5jOjU3OQorIzogYnVpbHRpbi9nYy5jOjU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZWUgXCJnaXQgaGVscCBnY1wiIGZvciBtYW51YWwgaG91c2VrZWVwaW5nLlxuIgotbXNnc3RyICJWZWdldSBcImdpdCBoZWxwIGdjXCIgcGVyIG5ldGVqYSBtYW51YWwuXG4iCittc2dzdHIgIlZlZ2V1IMKrZ2l0IGhlbHAgZ2PCuyBwZXIgYSBuZXRlamEgbWFudWFsLlxuIgogCi0jOiBidWlsdGluL2djLmM6NjE5CisjOiBidWlsdGluL2djLmM6NjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJnYyBpcyBhbHJlYWR5IHJ1bm5pbmcgb24gbWFjaGluZSAnJXMnIHBpZCAlPFBSSXVNQVg+ICh1c2UgLS1mb3JjZSBpZiBub3QpIgogbXNnc3RyICIiCiAiZ2MgamEgcydlc3TDoCBleGVjdXRhbnQgZW4gbGEgbcOgcXVpbmEgwqslc8K7IHBpZCAlPFBSSXVNQVg+ICh1c2V1IC0tZm9yY2Ugc2kgbm8pIgogCi0jOiBidWlsdGluL2djLmM6NjcwCisjOiBidWlsdGluL2djLmM6Njk0CiBtc2dpZCAiIgogIlRoZXJlIGFyZSB0b28gbWFueSB1bnJlYWNoYWJsZSBsb29zZSBvYmplY3RzOyBydW4gJ2dpdCBwcnVuZScgdG8gcmVtb3ZlIHRoZW0uIgogbXNnc3RyICIiCiAiSGkgaGEgbWFzc2Egb2JqZWN0ZXMgc29sdHMgaW5hYmFzdGFibGVzOyBleGVjdXRldSAnZ2l0IHBydW5lJyBwZXIgYSBlbGltaW5hci0iCiAibG9zLiIKIAotIzogYnVpbHRpbi9ncmVwLmM6MjgKKyM6IGJ1aWx0aW4vZ3JlcC5jOjI5CiBtc2dpZCAiZ2l0IGdyZXAgWzxvcHRpb25zPl0gWy1lXSA8cGF0dGVybj4gWzxyZXY+Li4uXSBbWy0tXSA8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgZ3JlcCBbPG9wY2lvbnM+XSBbLWVdIDxwYXRyw7M+IFs8cmV2aXNpw7M+Li4uXSBbWy0tXSA8Y2Ftw60+Li4uXSIKIAotIzogYnVpbHRpbi9ncmVwLmM6MjI0CisjOiBidWlsdGluL2dyZXAuYzoyMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ3JlcDogZmFpbGVkIHRvIGNyZWF0ZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJncmVwOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNyZWFyIGZpbDogJXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjI3OAorIzogYnVpbHRpbi9ncmVwLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbnVtYmVyIG9mIHRocmVhZHMgc3BlY2lmaWVkICglZCkgZm9yICVzIgogbXNnc3RyICJzJ2hhIGVzcGVjaWZpY2F0IHVuIG5vbWJyZSBkZSBmaWxzIG5vIHbDoGxpZCAoJWQpIHBlciBhICVzIgpAQCAtMTE0MTUsMjc1ICsxNDA0NCwyNjggQEAKICMuIHZhcmlhYmxlIGZvciB0d2Vha2luZyB0aHJlYWRzLCBjdXJyZW50bHkKICMuIGdyZXAudGhyZWFkcwogIy4KLSM6IGJ1aWx0aW4vZ3JlcC5jOjI4NiBidWlsdGluL2luZGV4LXBhY2suYzoxNTA2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2OTcKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcxOQorIzogYnVpbHRpbi9ncmVwLmM6Mjg3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MzQgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTcyNworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHRocmVhZHMgc3VwcG9ydCwgaWdub3JpbmcgJXMiCiBtc2dzdHIgIm5vIGhpIGhhIHN1cG9ydCBkZSBmaWxzLCBzJ2VzdMOgIGlnbm9yYW50ICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo0NTggYnVpbHRpbi9ncmVwLmM6NTc5IGJ1aWx0aW4vZ3JlcC5jOjYyMAorIzogYnVpbHRpbi9ncmVwLmM6NDY3IGJ1aWx0aW4vZ3JlcC5jOjU5MiBidWlsdGluL2dyZXAuYzo2MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgdHJlZSAoJXMpIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBsJ2FyYnJlICglcykiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjYzNQorIzogYnVpbHRpbi9ncmVwLmM6NjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBncmVwIGZyb20gb2JqZWN0IG9mIHR5cGUgJXMiCiBtc2dzdHIgIm5vIGVzIHBvdCBmZXIgZ3JlcCBkZXMgZCd1biBvYmplY3RlIGRlIHRpcHVzICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo3MDEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjcxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJzd2l0Y2ggYCVjJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgogbXNnc3RyICJsJ29wY2nDsyDCqyVjwrsgZXNwZXJhIHVuIHZhbG9yIG51bcOocmljIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxNQogbXNnaWQgInNlYXJjaCBpbiBpbmRleCBpbnN0ZWFkIG9mIGluIHRoZSB3b3JrIHRyZWUiCiBtc2dzdHIgImNlcmNhIGVuIGwnw61uZGV4IGVuIGxsb2MgZGUgbCdhcmJyZSBkZSB0cmViYWxsIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxNwogbXNnaWQgImZpbmQgaW4gY29udGVudHMgbm90IG1hbmFnZWQgYnkgZ2l0IgogbXNnc3RyICJjZXJjYSBlbiBjb250aW5ndXRzIG5vIGdlc3Rpb25hdHMgcGVyIGdpdCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODA0CisjOiBidWlsdGluL2dyZXAuYzo4MTkKIG1zZ2lkICJzZWFyY2ggaW4gYm90aCB0cmFja2VkIGFuZCB1bnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgImNlcmNhIHRhbnQgZW4gZml0eGVycyBzZWd1aXRzIGNvbSBlbiBubyBzZWd1aXRzIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyMQogbXNnaWQgImlnbm9yZSBmaWxlcyBzcGVjaWZpZWQgdmlhICcuZ2l0aWdub3JlJyIKIG1zZ3N0ciAiaWdub3JhIGVscyBmaXR4ZXJzIGVzcGVjaWZpY2F0cyBtaXRqYW7Dp2FudCAnLmdpdGlnbm9yZSciCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwOAorIzogYnVpbHRpbi9ncmVwLmM6ODIzCiBtc2dpZCAicmVjdXJzaXZlbHkgc2VhcmNoIGluIGVhY2ggc3VibW9kdWxlIgogbXNnc3RyICJjZXJjYSByZWN1cnNpdmFtZW50IGEgY2FkYSBzdWJtw7JkdWwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxMQorIzogYnVpbHRpbi9ncmVwLmM6ODI2CiBtc2dpZCAic2hvdyBub24tbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgIm1vc3RyYSBsZXMgbMOtbmllcyBubyBjb2luY2lkZW50cyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODEzCisjOiBidWlsdGluL2dyZXAuYzo4MjgKIG1zZ2lkICJjYXNlIGluc2Vuc2l0aXZlIG1hdGNoaW5nIgogbXNnc3RyICJjb2luY2lkw6huY2lhIGluc2Vuc2libGUgYSBtYWrDunNjdWxhIGkgbWluw7pzY3VsYSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODE1CisjOiBidWlsdGluL2dyZXAuYzo4MzAKIG1zZ2lkICJtYXRjaCBwYXR0ZXJucyBvbmx5IGF0IHdvcmQgYm91bmRhcmllcyIKIG1zZ3N0ciAiY29pbmNpZGVpeCBhbWIgZWxzIHBhdHJvbnMgbm9tw6lzIGFscyBsw61taXRzIGRlIHBhcmF1bGEiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxNworIzogYnVpbHRpbi9ncmVwLmM6ODMyCiBtc2dpZCAicHJvY2VzcyBiaW5hcnkgZmlsZXMgYXMgdGV4dCIKIG1zZ3N0ciAicHJvY2Vzc2EgZWxzIGZpdHhlcnMgYmluYXJpcyBjb20gYSB0ZXh0IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgzNAogbXNnaWQgImRvbid0IG1hdGNoIHBhdHRlcm5zIGluIGJpbmFyeSBmaWxlcyIKIG1zZ3N0ciAibm8gY29pbmNpZGVpeGlzIGFtYiBlbHMgcGF0cm9ucyBlbiBlbHMgZml0eGVycyBiaW5hcmlzIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MjIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgzNwogbXNnaWQgInByb2Nlc3MgYmluYXJ5IGZpbGVzIHdpdGggdGV4dGNvbnYgZmlsdGVycyIKIG1zZ3N0ciAicHJvY2Vzc2EgZWxzIGZpdHhlcnMgYmluYXJpcyBhbWIgZmlsdHJlcyBkZSB0ZXh0Y29udiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODI0Ci0jLCBmdXp6eQorIzogYnVpbHRpbi9ncmVwLmM6ODM5CiBtc2dpZCAic2VhcmNoIGluIHN1YmRpcmVjdG9yaWVzIChkZWZhdWx0KSIKLW1zZ3N0ciAicG9kYSBsZXMgcmVmZXLDqG5jaWVzIHNvbHRlcyAocGVyIGRlZmVjdGUpIgorbXNnc3RyICJjZXJjYSBhbHMgc3ViZGlyZWN0b3JpZXMgKHBlciBkZWZlY3RlKSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODI2CisjOiBidWlsdGluL2dyZXAuYzo4NDEKIG1zZ2lkICJkZXNjZW5kIGF0IG1vc3QgPGRlcHRoPiBsZXZlbHMiCiBtc2dzdHIgImRlc2NlbmRlaXggY29tIGEgbcOgeGltIDxwcm9mdW5kaXRhdD4gbml2ZWxscyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODMwCisjOiBidWlsdGluL2dyZXAuYzo4NDUKIG1zZ2lkICJ1c2UgZXh0ZW5kZWQgUE9TSVggcmVndWxhciBleHByZXNzaW9ucyIKIG1zZ3N0ciAidXNhIGxlcyBleHByZXNzaW9ucyByZWd1bGFycyBQT1NJWCBhbXBsaWFkZXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzMworIzogYnVpbHRpbi9ncmVwLmM6ODQ4CiBtc2dpZCAidXNlIGJhc2ljIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbnMgKGRlZmF1bHQpIgogbXNnc3RyICJ1c2EgbGVzIGV4cHJlc3Npb25zIHJlZ3VsYXJzIFBPU0lYIGLDoHNpcXVlcyAocGVyIGRlZmVjdGUpIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MzYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1MQogbXNnaWQgImludGVycHJldCBwYXR0ZXJucyBhcyBmaXhlZCBzdHJpbmdzIgogbXNnc3RyICJpbnRlcnByZXRhIGVscyBwYXRyb25zIGNvbSBhIGNhZGVuZXMgZml4ZXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzOQorIzogYnVpbHRpbi9ncmVwLmM6ODU0CiBtc2dpZCAidXNlIFBlcmwtY29tcGF0aWJsZSByZWd1bGFyIGV4cHJlc3Npb25zIgogbXNnc3RyICJ1c2EgbGVzIGV4cHJlc3Npb25zIHJlZ3VsYXJzIGNvbXBhdGlibGVzIGFtYiBQZXJsIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1NwogbXNnaWQgInNob3cgbGluZSBudW1iZXJzIgogbXNnc3RyICJtb3N0cmEgZWxzIG7Dum1lcm9zIGRlIGzDrW5pYSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQzCi0jLCBmdXp6eQorIzogYnVpbHRpbi9ncmVwLmM6ODU4CiBtc2dpZCAic2hvdyBjb2x1bW4gbnVtYmVyIG9mIGZpcnN0IG1hdGNoIgotbXNnc3RyICJtb3N0cmEgbm9tw6lzIGVscyBub21zIGRlbHMgZml0eGVycyBzZW5zZSBjb2luY2lkw6huY2lhIgorbXNnc3RyICJtb3N0cmEgZWwgbm9tYnJlIGRlIGNvbHVtbmEgZGUgbGEgcHJpbWVyYSBjb2luY2lkw6huY2lhIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1OQogbXNnaWQgImRvbid0IHNob3cgZmlsZW5hbWVzIgogbXNnc3RyICJubyBtb3N0cmlzIGVscyBub21zIGRlIGZpdHhlciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQ1CisjOiBidWlsdGluL2dyZXAuYzo4NjAKIG1zZ2lkICJzaG93IGZpbGVuYW1lcyIKIG1zZ3N0ciAibW9zdHJhIGVscyBub21zIGRlIGZpdHhlciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQ3CisjOiBidWlsdGluL2dyZXAuYzo4NjIKIG1zZ2lkICJzaG93IGZpbGVuYW1lcyByZWxhdGl2ZSB0byB0b3AgZGlyZWN0b3J5IgogbXNnc3RyICJtb3N0cmEgZWxzIG5vbXMgZGUgZml0eGVyIHJlbGF0aXVzIGFsIGRpcmVjdG9yaSBzdXBlcmlvciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQ5CisjOiBidWlsdGluL2dyZXAuYzo4NjQKIG1zZ2lkICJzaG93IG9ubHkgZmlsZW5hbWVzIGluc3RlYWQgb2YgbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgIm1vc3RyYSBub23DqXMgZWxzIG5vbXMgZGUgZml0eGVyIGVuIGxsb2MgZGUgbGVzIGzDrW5pZXMgY29pbmNpZGVudHMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1MQorIzogYnVpbHRpbi9ncmVwLmM6ODY2CiBtc2dpZCAic3lub255bSBmb3IgLS1maWxlcy13aXRoLW1hdGNoZXMiCiBtc2dzdHIgInNpbsOybmltIGRlIC0tZmlsZXMtd2l0aC1tYXRjaGVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NTQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2OQogbXNnaWQgInNob3cgb25seSB0aGUgbmFtZXMgb2YgZmlsZXMgd2l0aG91dCBtYXRjaCIKIG1zZ3N0ciAibW9zdHJhIG5vbcOpcyBlbHMgbm9tcyBkZWxzIGZpdHhlcnMgc2Vuc2UgY29pbmNpZMOobmNpYSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODU2CisjOiBidWlsdGluL2dyZXAuYzo4NzEKIG1zZ2lkICJwcmludCBOVUwgYWZ0ZXIgZmlsZW5hbWVzIgogbXNnc3RyICJpbXByaW1laXggTlVMIGRlc3Byw6lzIGRlbHMgbm9tcyBkZSBmaXR4ZXIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1OQotIywgZnV6enkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3NAogbXNnaWQgInNob3cgb25seSBtYXRjaGluZyBwYXJ0cyBvZiBhIGxpbmUiCi1tc2dzdHIgIm1vc3RyYSBsZXMgbMOtbmllcyBubyBjb2luY2lkZW50cyIKK21zZ3N0ciAibW9zdHJhIG5vbcOpcyBsZXMgcGFydHMgZGUgY29pbmNpZGVudHMgZGUgbGEgbMOtbmlhIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3NgogbXNnaWQgInNob3cgdGhlIG51bWJlciBvZiBtYXRjaGVzIGluc3RlYWQgb2YgbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgIm1vc3RyYSBlbCBub21icmUgZGUgY29pbmNpZMOobmNpZXMgZW4gbGxvYyBkZSBsZXMgbMOtbmllcyBjb2luY2lkZW50cyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODYyCisjOiBidWlsdGluL2dyZXAuYzo4NzcKIG1zZ2lkICJoaWdobGlnaHQgbWF0Y2hlcyIKIG1zZ3N0ciAicmVzc2FsdGEgbGVzIGNvaW5jaWTDqG5jaWVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3OQogbXNnaWQgInByaW50IGVtcHR5IGxpbmUgYmV0d2VlbiBtYXRjaGVzIGZyb20gZGlmZmVyZW50IGZpbGVzIgogbXNnc3RyICJpbXByaW1laXggdW5hIGzDrW5pYSBidWlkYSBlbnRyZSBjb2luY2lkw6huY2llcyBkZSBmaXR4ZXJzIGRpc3RpbnRzIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4MQogbXNnaWQgInNob3cgZmlsZW5hbWUgb25seSBvbmNlIGFib3ZlIG1hdGNoZXMgZnJvbSBzYW1lIGZpbGUiCiBtc2dzdHIgIiIKICJtb3N0cmEgZWwgbm9tIGRlIGZpdHhlciBub23DqXMgdW5hIHZlZ2FkYSBhIGRhbHQgZGUgbGVzIGNvaW5jaWTDqG5jaWVzIGRlbCAiCiAibWF0ZWl4IGZpdHhlciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODY5CisjOiBidWlsdGluL2dyZXAuYzo4ODQKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGJlZm9yZSBhbmQgYWZ0ZXIgbWF0Y2hlcyIKIG1zZ3N0ciAibW9zdHJhIDxuPiBsw61uaWVzIGRlIGNvbnRleHQgYWJhbnMgaSBkZXNwcsOpcyBkJ3VuYSBjb2luY2lkw6huY2lhIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4NwogbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYmVmb3JlIG1hdGNoZXMiCiBtc2dzdHIgIm1vc3RyYSA8bj4gbMOtbmllcyBkZSBjb250ZXh0IGFiYW5zIGQndW5hIGNvaW5jaWTDqG5jaWEiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NAorIzogYnVpbHRpbi9ncmVwLmM6ODg5CiBtc2dpZCAic2hvdyA8bj4gY29udGV4dCBsaW5lcyBhZnRlciBtYXRjaGVzIgogbXNnc3RyICJtb3N0cmEgPG4+IGzDrW5pZXMgZGUgY29udGV4dCBkZXNwcsOpcyBkJ3VuYSBjb2luY2lkw6huY2lhIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5MQogbXNnaWQgInVzZSA8bj4gd29ya2VyIHRocmVhZHMiCiBtc2dzdHIgInVzYSA8bj4gZmlscyBkZSB0cmViYWxsIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5MgogbXNnaWQgInNob3J0Y3V0IGZvciAtQyBOVU0iCiBtc2dzdHIgImRyZWNlcmEgcGVyIC1DIE5VTSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODgwCisjOiBidWlsdGluL2dyZXAuYzo4OTUKIG1zZ2lkICJzaG93IGEgbGluZSB3aXRoIHRoZSBmdW5jdGlvbiBuYW1lIGJlZm9yZSBtYXRjaGVzIgogbXNnc3RyICJtb3N0cmEgdW5hIGzDrW5pYSBhbWIgZWwgbm9tIGRlIGZ1bmNpw7MgYWJhbnMgZGUgbGVzIGNvaW5jaWTDqG5jaWVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5NwogbXNnaWQgInNob3cgdGhlIHN1cnJvdW5kaW5nIGZ1bmN0aW9uIgogbXNnc3RyICJtb3N0cmEgbGEgZnVuY2nDsyBjaXJjdW1kYW50IgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwMAogbXNnaWQgInJlYWQgcGF0dGVybnMgZnJvbSBmaWxlIgogbXNnc3RyICJsbGVnZWl4IGVscyBwYXRyb25zIGRlcyBkJ3VuIGZpdHhlciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODg3CisjOiBidWlsdGluL2dyZXAuYzo5MDIKIG1zZ2lkICJtYXRjaCA8cGF0dGVybj4iCiBtc2dzdHIgImNvaW5jaWRlaXggYW1iIDxwYXRyw7M+IgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwNAogbXNnaWQgImNvbWJpbmUgcGF0dGVybnMgc3BlY2lmaWVkIHdpdGggLWUiCiBtc2dzdHIgImNvbWJpbmEgZWxzIHBhdHJvbnMgZXNwZWNpZmljYXRzIGFtYiAtZSIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTAxCisjOiBidWlsdGluL2dyZXAuYzo5MTYKIG1zZ2lkICJpbmRpY2F0ZSBoaXQgd2l0aCBleGl0IHN0YXR1cyB3aXRob3V0IG91dHB1dCIKIG1zZ3N0ciAiaW5kaWNhIGNvaW5jaWTDqG5jaWEgYW1iIGVzdGF0IGRlIHNvcnRpZGEgc2Vuc2Ugc29ydGlkYSB0ZXh0dWFsIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxOAogbXNnaWQgInNob3cgb25seSBtYXRjaGVzIGZyb20gZmlsZXMgdGhhdCBtYXRjaCBhbGwgcGF0dGVybnMiCiBtc2dzdHIgIiIKICJtb3N0cmEgbm9tw6lzIGxlcyBjb2luY2lkw6huY2llcyBkZWxzIGZpdHhlcnMgcXVlIGNvaW5jaWRlaXhpbiBhbWIgdG90cyBlbHMgIgogInBhdHJvbnMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwNQorIzogYnVpbHRpbi9ncmVwLmM6OTIwCiBtc2dpZCAic2hvdyBwYXJzZSB0cmVlIGZvciBncmVwIGV4cHJlc3Npb24iCiBtc2dzdHIgIm1vc3RyYSBsJ2FyYnJlIGQnYW7DoGxpc2kgZGUgbCdleHByZXNzacOzIGdyZXAiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwOQorIzogYnVpbHRpbi9ncmVwLmM6OTI0CiBtc2dpZCAicGFnZXIiCiBtc2dzdHIgInBhZ2luYWRvciIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTA5CisjOiBidWlsdGluL2dyZXAuYzo5MjQKIG1zZ2lkICJzaG93IG1hdGNoaW5nIGZpbGVzIGluIHRoZSBwYWdlciIKIG1zZ3N0ciAibW9zdHJhIGVscyBmaXR4ZXJzIGNvaW5jaWRlbnRzIGVuIGVsIHBhZ2luYWRvciIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTEzCisjOiBidWlsdGluL2dyZXAuYzo5MjgKIG1zZ2lkICJhbGxvdyBjYWxsaW5nIG9mIGdyZXAoMSkgKGlnbm9yZWQgYnkgdGhpcyBidWlsZCkiCiBtc2dzdHIgInBlcm1ldCBsYSBpbnZvY2FjacOzIGRlIGdyZXAoMSkgKGlnbm9yYXQgcGVyIGFxdWVzdGEgY29tcGlsYWNpw7MpIgogCi0jOiBidWlsdGluL2dyZXAuYzo5NzcKLSMsIGZ1enp5CisjOiBidWlsdGluL2dyZXAuYzo5OTIKIG1zZ2lkICJubyBwYXR0ZXJuIGdpdmVuIgotbXNnc3RyICJjYXAgcGF0csOzIGRvbmF0LiIKK21zZ3N0ciAibm8gcydoYSBkb25hdCBjYXAgcGF0csOzIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDEzCisjOiBidWlsdGluL2dyZXAuYzoxMDI4CiBtc2dpZCAiLS1uby1pbmRleCBvciAtLXVudHJhY2tlZCBjYW5ub3QgYmUgdXNlZCB3aXRoIHJldnMiCiBtc2dzdHIgIi0tbm8taW5kZXggbyAtLXVudHJhY2tlZCBubyBlcyBwb3QgdXNhciBhbWIgcmV2aXNpb25zIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDIwCisjOiBidWlsdGluL2dyZXAuYzoxMDM2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIHJldmlzaW9uOiAlcyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCByZXNvbGRyZSBsYSByZXZpc2nDszogJXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTEKLSMsIGZ1enp5CisjOiBidWlsdGluL2dyZXAuYzoxMDY3CiBtc2dpZCAiaW52YWxpZCBvcHRpb24gY29tYmluYXRpb24sIGlnbm9yaW5nIC0tdGhyZWFkcyIKLW1zZ3N0ciAibm8gaGkgaGEgc3Vwb3J0IGRlIGZpbHMsIHMnZXN0w6AgaWdub3JhbnQgLS10aHJlYWRzIgorbXNnc3RyICJjb21iaW5hY2nDsyBkJ29wY2lvbnMgbm8gdsOgbGlkYSwgcydlc3TDoCBpZ25vcmFudCAtLXRocmVhZHMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk1CisjOiBidWlsdGluL2dyZXAuYzoxMDcwIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMAogbXNnaWQgIm5vIHRocmVhZHMgc3VwcG9ydCwgaWdub3JpbmcgLS10aHJlYWRzIgogbXNnc3RyICJubyBoaSBoYSBzdXBvcnQgZGUgZmlscywgcydlc3TDoCBpZ25vcmFudCAtLXRocmVhZHMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUwMyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MTYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNzMgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzMSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBudW1iZXIgb2YgdGhyZWFkcyBzcGVjaWZpZWQgKCVkKSIKIG1zZ3N0ciAicydoYSBlc3BlY2lmaWNhdCB1biBub21icmUgZGUgZmlscyBubyB2w6BsaWQgKCVkKSIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTA4MAorIzogYnVpbHRpbi9ncmVwLmM6MTA5NgogbXNnaWQgIi0tb3Blbi1maWxlcy1pbi1wYWdlciBvbmx5IHdvcmtzIG9uIHRoZSB3b3JrdHJlZSIKIG1zZ3N0ciAiLS1vcGVuLWZpbGVzLWluLXBhZ2VyIG5vbcOpcyBmdW5jaW9uYSBlbiBsJ2FyYnJlIGRlIHRyZWJhbGwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMDMKLSMsIGZ1enp5CisjOiBidWlsdGluL2dyZXAuYzoxMTE5CiBtc2dpZCAib3B0aW9uIG5vdCBzdXBwb3J0ZWQgd2l0aCAtLXJlY3Vyc2Utc3VibW9kdWxlcyIKLW1zZ3N0ciAib3BjacOzIG5vIGFkbWVzYSBhbWIgLS1yZWN1cnNlLXN1Ym1vZHVsZXMuIgorbXNnc3RyICJvcGNpw7Mgbm8gYWRtZXNhIGFtYiAtLXJlY3Vyc2Utc3VibW9kdWxlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTEwOQotIywgZnV6enkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExMjUKIG1zZ2lkICItLWNhY2hlZCBvciAtLXVudHJhY2tlZCBjYW5ub3QgYmUgdXNlZCB3aXRoIC0tbm8taW5kZXgiCiBtc2dzdHIgIi0tY2FjaGVkIG8gLS11bnRyYWNrZWQgbm8gZXMgcG90IHVzYXIgYW1iIC0tbm8taW5kZXguIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMTE1CisjOiBidWlsdGluL2dyZXAuYzoxMTMxCiAjLCBmdXp6eQogbXNnaWQgIi0tW25vLV1leGNsdWRlLXN0YW5kYXJkIGNhbm5vdCBiZSB1c2VkIGZvciB0cmFja2VkIGNvbnRlbnRzIgogbXNnc3RyICItLVtuby1dZXhjbHVkZS1zdGFuZGFyZCBubyBlcyBwb3QgdXNhciBwZXIgYWxzIGNvbnRpbmd1dHMgc2VndWl0cy4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMjMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExMzkKICMsIGZ1enp5CiBtc2dpZCAiYm90aCAtLWNhY2hlZCBhbmQgdHJlZXMgYXJlIGdpdmVuIgogbXNnc3RyICJzJ2hhbiBkb25hdCBhbWJkw7NzIC0tY2FjaGVzIGkgYXJicmVzLiIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg0CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODUKIG1zZ2lkICIiCiAiZ2l0IGhhc2gtb2JqZWN0IFstdCA8dHlwZT5dIFstd10gWy0tcGF0aD08ZmlsZT4gfCAtLW5vLWZpbHRlcnNdIFstLXN0ZGluXSAiCiAiWy0tXSA8ZmlsZT4uLi4iCkBAIC0xMTY5MSwzOCArMTQzMTMsMzQgQEAKICJnaXQgaGFzaC1vYmplY3QgWy10IDx0aXB1cz5dIFstd10gWy0tcGF0aD08Zml0eGVyPiB8IC0tbm8tZmlsdGVyc10gWy0tc3RkaW5dICIKICJbLS1dIDxmaXR4ZXI+Li4uIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODUKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NgogbXNnaWQgImdpdCBoYXNoLW9iamVjdCAgLS1zdGRpbi1wYXRocyIKIG1zZ3N0ciAiZ2l0IGhhc2gtb2JqZWN0ICAtLXN0ZGluLXBhdGhzIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTcKLW1zZ2lkICJ0eXBlIgotbXNnc3RyICJ0aXB1cyIKLQotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk3CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKIG1zZ2lkICJvYmplY3QgdHlwZSIKIG1zZ3N0ciAidGlwdXMgZCdvYmplY3RlIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OQogbXNnaWQgIndyaXRlIHRoZSBvYmplY3QgaW50byB0aGUgb2JqZWN0IGRhdGFiYXNlIgogbXNnc3RyICJlc2NyaXUgbCdvYmplY3RlIGEgbGEgYmFzZSBkZSBkYWRlcyBkJ29iamVjdGVzIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAwCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAxCiBtc2dpZCAicmVhZCB0aGUgb2JqZWN0IGZyb20gc3RkaW4iCiBtc2dzdHIgImxsZWdlaXggbCdvYmplY3RlIGRlcyBkZSBzdGRpbiIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMgorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMwogbXNnaWQgInN0b3JlIGZpbGUgYXMgaXMgd2l0aG91dCBmaWx0ZXJzIgogbXNnc3RyICJlbW1hZ2F0emVtYSBlbCBmaXR4ZXIgdGFsIGNvbSDDqXMgc2Vuc2UgZmlsdHJlcyIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNAogbXNnaWQgIiIKICJqdXN0IGhhc2ggYW55IHJhbmRvbSBnYXJiYWdlIHRvIGNyZWF0ZSBjb3JydXB0IG9iamVjdHMgZm9yIGRlYnVnZ2luZyBHaXQiCiBtc2dzdHIgIiIKICJub23DqXMgc3VtYSBxdWFsc2V2b2wgYnJvc3NhIGFsZWF0w7JyaWEgcGVyIGEgY3JlYXIgb2JqZWN0ZXMgbWFsbWVzb3MgcGVyIGEgIgogImRlcHVyYXIgYWwgR2l0IgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA1CiBtc2dpZCAicHJvY2VzcyBmaWxlIGFzIGl0IHdlcmUgZnJvbSB0aGlzIHBhdGgiCiBtc2dzdHIgInByb2Nlc3NhIGVsIGZpdHhlciBjb20gc2kgZm9zIGQnYXF1ZXN0IGNhbcOtIgogCkBAIC0xMTc2NCwzMCArMTQzODIsMzAgQEAKIG1zZ2lkICJnaXQgaGVscCBbLS1hbGxdIFstLWd1aWRlc10gWy0tbWFuIHwgLS13ZWIgfCAtLWluZm9dIFs8Y29tbWFuZD5dIgogbXNnc3RyICJnaXQgaGVscCBbLS1hbGxdIFstLWd1aWRlc10gWy0tbWFuIHwgLS13ZWIgfCAtLWluZm9dIFs8b3JkcmU+XSIKIAotIzogYnVpbHRpbi9oZWxwLmM6NzMKKyM6IGJ1aWx0aW4vaGVscC5jOjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBoZWxwIGZvcm1hdCAnJXMnIgogbXNnc3RyICJmb3JtYXQgZCdhanVkYSBubyByZWNvbmVndXQgwqslc8K7IgogCi0jOiBidWlsdGluL2hlbHAuYzoxMDAKKyM6IGJ1aWx0aW4vaGVscC5jOjEwNAogbXNnaWQgIkZhaWxlZCB0byBzdGFydCBlbWFjc2NsaWVudC4iCiBtc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3InaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gaW5pY2lhciBlbWFjc2NsaWVudC4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjExMworIzogYnVpbHRpbi9oZWxwLmM6MTE3CiBtc2dpZCAiRmFpbGVkIHRvIHBhcnNlIGVtYWNzY2xpZW50IHZlcnNpb24uIgogbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGFuYWxpdHphciBsYSB2ZXJzacOzIGQnZW1hY3NjbGllbnQuIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMjEKKyM6IGJ1aWx0aW4vaGVscC5jOjEyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJlbWFjc2NsaWVudCB2ZXJzaW9uICclZCcgdG9vIG9sZCAoPCAyMikuIgogbXNnc3RyICJsYSB2ZXJzacOzIGQnZW1hY3NjbGllbnQgwqslZMK7IMOpcyBtYXNzYSB2ZWxsYSAoPCAyMikuIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMzkgYnVpbHRpbi9oZWxwLmM6MTYxIGJ1aWx0aW4vaGVscC5jOjE3MSBidWlsdGluL2hlbHAuYzoxNzkKKyM6IGJ1aWx0aW4vaGVscC5jOjE0MyBidWlsdGluL2hlbHAuYzoxNjUgYnVpbHRpbi9oZWxwLmM6MTc1IGJ1aWx0aW4vaGVscC5jOjE4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZXhlYyAnJXMnIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGV4ZWN1dGFyIMKrJXPCuyIKIAotIzogYnVpbHRpbi9oZWxwLmM6MjE3CisjOiBidWlsdGluL2hlbHAuYzoyMjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcyc6IHBhdGggZm9yIHVuc3VwcG9ydGVkIG1hbiB2aWV3ZXIuXG4iCkBAIC0xMTc5Niw3ICsxNDQxNCw3IEBACiAiwqslc8K7OiBjYW3DrSBhIHVuIHZpc3VhbGl0emFkb3IgZGUgbWFudWFscyBubyBjb21wYXRpYmxlLlxuIgogIkNvbnNpZGVyZXUgdXNhciAnbWFuLjxlaW5hPi5jbWQnIGVuIGxsb2MgZCdhaXjDsi4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjIyOQorIzogYnVpbHRpbi9oZWxwLmM6MjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnOiBjbWQgZm9yIHN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgpAQCAtMTE4MDUsMzMwICsxNDQyMywzMjAgQEAKICLCqyVzwrs6IG9yZHJlIHBlciBhIHVuIHZpc3VhbGl0emFkb3IgZGUgbWFudWFscyBjb21wYXRpYmxlLlxuIgogIkNvbnNpZGVyZXUgdXNhciAnbWFuLjxlaW5hPi5wYXRoJyBlbiBsbG9jIGQnYWl4w7IuIgogCi0jOiBidWlsdGluL2hlbHAuYzozNDYKKyM6IGJ1aWx0aW4vaGVscC5jOjM1MAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiB1bmtub3duIG1hbiB2aWV3ZXIuIgogbXNnc3RyICLCqyVzwrs6IHZpc3VhbGl0emFkb3IgZGUgbWFudWFscyBkZXNjb25lZ3V0LiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MzYzCisjOiBidWlsdGluL2hlbHAuYzozNjcKIG1zZ2lkICJubyBtYW4gdmlld2VyIGhhbmRsZWQgdGhlIHJlcXVlc3QiCiBtc2dzdHIgImNhcCB2aXN1YWxpdHphZG9yIGRlIG1hbnVhbHMgaGEgZ2VzdGlvbmF0IGxhIHNvbMK3bGljaXR1ZCIKIAotIzogYnVpbHRpbi9oZWxwLmM6MzcxCisjOiBidWlsdGluL2hlbHAuYzozNzUKIG1zZ2lkICJubyBpbmZvIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgogbXNnc3RyICJjYXAgdmlzdWFsaXR6YWRvciBkJ2luZm9ybWFjacOzIGhhIGdlc3Rpb25hdCBsYSBzb2zCt2xpY2l0dWQiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQzMCBidWlsdGluL2hlbHAuYzo0NDEgZ2l0LmM6MzIyCisjOiBidWlsdGluL2hlbHAuYzo0MzQgYnVpbHRpbi9oZWxwLmM6NDQ1IGdpdC5jOjMzNgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFsaWFzZWQgdG8gJyVzJyIKIG1zZ3N0ciAiwqslc8K7IMOpcyB1biDDoGxpZXMgZGUgwqslc8K7IgogCi0jOiBidWlsdGluL2hlbHAuYzo0NDQKKyM6IGJ1aWx0aW4vaGVscC5jOjQ0OCBnaXQuYzozNjUKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImJhZCBhbGlhcy4lcyBzdHJpbmc6ICVzIgogbXNnc3RyICJDYWRlbmEgYnJhbmNoLiVzLm1lcmdlb3B0aW9ucyBpbmNvcnJlY3RhOiAlcyIKIAotIzogYnVpbHRpbi9oZWxwLmM6NDczIGJ1aWx0aW4vaGVscC5jOjUwMworIzogYnVpbHRpbi9oZWxwLmM6NDc3IGJ1aWx0aW4vaGVscC5jOjUwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1c2FnZTogJXMlcyIKIG1zZ3N0ciAiw7pzOiAlcyVzIgogCi0jOiBidWlsdGluL2hlbHAuYzo0ODcKKyM6IGJ1aWx0aW4vaGVscC5jOjQ5MQogbXNnaWQgIidnaXQgaGVscCBjb25maWcnIGZvciBtb3JlIGluZm9ybWF0aW9uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCB0eXBlIG1pc21hdGNoIGF0ICVzIgogbXNnc3RyICJoaSBoYSB1bmEgZGlzY29yZGFuw6dhIGRlIHRpcHVzIGQnb2JqZWN0ZSBhICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJkaWQgbm90IHJlY2VpdmUgZXhwZWN0ZWQgb2JqZWN0ICVzIgogbXNnc3RyICJubyBzJ2hhIHJlYnV0IGwnb2JqZWN0ZSBlc3BlcmF0ICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgJXM6IGV4cGVjdGVkIHR5cGUgJXMsIGZvdW5kICVzIgogbXNnc3RyICJvYmplY3RlICVzOiBzJ2VzcGVyYXZhIGVsIHRpcHVzICVzLCBzJ2hhIHRyb2JhdCAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjQ5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZpbGwgJWQgYnl0ZSIKIG1zZ2lkX3BsdXJhbCAiY2Fubm90IGZpbGwgJWQgYnl0ZXMiCiBtc2dzdHJbMF0gIm5vIGVzIHBvdCBvbXBsaXIgJWQgb2N0ZXQiCiBtc2dzdHJbMV0gIm5vIGVzIHBvdCBvbXBsaXIgJWQgb2N0ZXRzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OAogbXNnaWQgImVhcmx5IEVPRiIKIG1zZ3N0ciAiRU9GIHByZW1hdHVyIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNjAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OQogbXNnaWQgInJlYWQgZXJyb3Igb24gaW5wdXQiCiBtc2dzdHIgImVycm9yIGRlIGxlY3R1cmEgZCdlbnRyYWRhIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNzIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI4MQogbXNnaWQgInVzZWQgbW9yZSBieXRlcyB0aGFuIHdlcmUgYXZhaWxhYmxlIgogbXNnc3RyICJzJ2hhbiB1c2F0IG3DqXMgb2N0ZXRzIHF1ZSBoaSBoYXZpYSBkaXNwb25pYmxlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6Mjc5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTk4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyODggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo2MDQKIG1zZ2lkICJwYWNrIHRvbyBsYXJnZSBmb3IgY3VycmVudCBkZWZpbml0aW9uIG9mIG9mZl90IgogbXNnc3RyICJwYXF1ZXQgbWFzc2EgZ3JhbiBwZXIgYSBsYSBkZWZpbmljacOzIGFjdHVhbCBkJ29mZl90IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyODIgYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjk0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyOTEgYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjk1CiBtc2dpZCAicGFjayBleGNlZWRzIG1heGltdW0gYWxsb3dlZCBzaXplIgogbXNnc3RyICJlbCBwYXF1ZXQgc3VwZXJhIGxhIG1pZGEgbcOgeGltYSBwZXJtZXNhIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyOTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAnJXMnIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIMKrJXPCuyIKLQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzAzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG9wZW4gcGFja2ZpbGUgJyVzJyIKIG1zZ3N0ciAibm8gZXMgcG90IG9icmlyIGVsIGZpdHhlciBkZSBwYXF1ZXQgwqslc8K7IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozMTcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMyNgogbXNnaWQgInBhY2sgc2lnbmF0dXJlIG1pc21hdGNoIgogbXNnc3RyICJoaSBoYSB1bmEgZGlzY29yZGFuw6dhIGRlIHNpZ25hdHVyYSBkZSBwYXF1ZXQiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMxOQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2sgdmVyc2lvbiAlPFBSSXUzMj4gdW5zdXBwb3J0ZWQiCiBtc2dzdHIgImxhIHZlcnNpw7MgZGUgcGFxdWV0ICU8UFJJdTMyPiBubyDDqXMgY29tcGF0aWJsZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzM3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzozNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjayBoYXMgYmFkIG9iamVjdCBhdCBvZmZzZXQgJTxQUkl1TUFYPjogJXMiCiBtc2dzdHIgImVsIHBhcXVldCB0w6kgdW4gb2JqZWN0ZSBpbmNvcnJlY3RlIGEgbGEgcG9zaWNpw7MgJTxQUkl1TUFYPjogJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjQ1NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgImluZmxhdGUgcmV0dXJuZWQgJWQiCiBtc2dzdHIgImxhIGluZmxhY2nDsyBoYSByZXRvcm5hdCAlZCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTA2CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MTUKIG1zZ2lkICJvZmZzZXQgdmFsdWUgb3ZlcmZsb3cgZm9yIGRlbHRhIGJhc2Ugb2JqZWN0IgogbXNnc3RyICIiCiAiZGVzYm9yZGFtZW50IGRlIHZhbG9yIGRlIGRlc3BsYcOnYW1lbnQgcGVyIGEgbCdvYmplY3RlIGJhc2UgZGUgZGlmZXLDqG5jaWVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1MTQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUyMwogbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IGlzIG91dCBvZiBib3VuZCIKIG1zZ3N0ciAiZWwgZGVzcGxhw6dhbWVudCBkZSBiYXNlIGRlIGRpZmVyw6huY2llcyBlc3TDoCBmb3JhIGRlIGzDrW1pdHMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUyMgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gb2JqZWN0IHR5cGUgJWQiCiBtc2dzdHIgInRpcHVzIGQnb2JqZWN0ZSBkZXNjb25lZ3V0ICVkIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1NTMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU2MgogbXNnaWQgImNhbm5vdCBwcmVhZCBwYWNrIGZpbGUiCi1tc2dzdHIgIm5vIGVzIHBvdCBmZXIgcHJlYWQgZW4gZWwgZml0eGVyIGRlIHBhcXVldCIKK21zZ3N0ciAibm8gZXMgcG90IGZlciBwcmVhZCBlbiBlbCBmaXR4ZXIgZW1wYXF1ZXRhdCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTU1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICU8UFJJdU1BWD4gYnl0ZSBtaXNzaW5nIgogbXNnaWRfcGx1cmFsICJwcmVtYXR1cmUgZW5kIG9mIHBhY2sgZmlsZSwgJTxQUkl1TUFYPiBieXRlcyBtaXNzaW5nIgotbXNnc3RyWzBdICJlbCBmaW5hbCBkZWwgZml0eGVyIGRlIHBhcXVldCDDqXMgcHJlbWF0dXIsIG1hbmNhICU8UFJJdU1BWD4gb2N0ZXQiCittc2dzdHJbMF0gImVsIGZpbmFsIGRlbCBmaXR4ZXIgZW1wYXF1ZXRhdCDDqXMgcHJlbWF0dXIsIG1hbmNhICU8UFJJdU1BWD4gb2N0ZXQiCiBtc2dzdHJbMV0gIiIKLSJlbCBmaW5hbCBkZWwgZml0eGVyIGRlIHBhcXVldCDDqXMgcHJlbWF0dXIsIG1hbnF1ZW4gJTxQUkl1TUFYPiBvY3RldHMiCisiZWwgZmluYWwgZGVsIGZpdHhlciBlbXBhcXVldGF0IMOpcyBwcmVtYXR1ciwgbWFucXVlbiAlPFBSSXVNQVg+IG9jdGV0cyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTgxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1OTAKIG1zZ2lkICJzZXJpb3VzIGluZmxhdGUgaW5jb25zaXN0ZW5jeSIKIG1zZ3N0ciAiaGkgaGEgdW5hIGluY29uc2lzdMOobmNpYSBzZXJpb3NhIGQnaW5mbGFjacOzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3MjYgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzMyIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc1NQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6Nzk0IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwMworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzM1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc0MSBidWlsdGluL2luZGV4LXBhY2suYzo3NjQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwMyBidWlsdGluL2luZGV4LXBhY2suYzo4MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiU0hBMSBDT0xMSVNJT04gRk9VTkQgV0lUSCAlcyAhIgogbXNnc3RyICJTJ0hBIFRST0JBVCBVTkEgQ09MwrdMSVNJw5MgU0hBMSBBTUIgJXMgISIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzI5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTUxCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwNQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzM4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxNyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlcyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBsbGVnaXIgJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc5MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIGV4aXN0aW5nIG9iamVjdCBpbmZvICVzIgogbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIGxhIGluZm9ybWFjacOzIGQnb2JqZWN0ZSBleGlzdGVudCAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgZXhpc3Rpbmcgb2JqZWN0ICVzIgogbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIGwnb2JqZWN0ZSBleGlzdGVudCAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODE0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBibG9iIG9iamVjdCAlcyIKIG1zZ3N0ciAib2JqZWN0ZSBkZSBibG9iIG5vIHbDoGxpZCAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODE3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzNgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODI2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0NQogIywgZnV6enkKIG1zZ2lkICJmc2NrIGVycm9yIGluIHBhY2tlZCBvYmplY3QiCiBtc2dzdHIgImlnbm9yYSBlbHMgb2JqZWN0ZXMgZW1wYXF1ZXRhdHMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzMwotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkICVzIgotbXNnc3RyICIlcyBubyB2w6BsaWQiCi0KLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzOAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhbGwgY2hpbGQgb2JqZWN0cyBvZiAlcyBhcmUgcmVhY2hhYmxlIgogbXNnc3RyICJObyB0b3RzIGVscyBvYmplY3RlcyBmaWxscyBkZSAlcyBzw7NuIGFiYXN0YWJsZXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjkxMCBidWlsdGluL2luZGV4LXBhY2suYzo5NDEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjkxOSBidWlsdGluL2luZGV4LXBhY2suYzo5NTAKIG1zZ2lkICJmYWlsZWQgdG8gYXBwbHkgZGVsdGEiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gYXBsaWNhciBsYSBkaWZlcsOobmNpYSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEwOQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTExOAogbXNnaWQgIlJlY2VpdmluZyBvYmplY3RzIgogbXNnc3RyICJTJ2VzdGFuIHJlYmVudCBvYmplY3RlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEwOQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTExOAogbXNnaWQgIkluZGV4aW5nIG9iamVjdHMiCiBtc2dzdHIgIlMnZXN0YW4gaW5kZXhhbnQgb2JqZWN0ZXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNTIKIG1zZ2lkICJwYWNrIGlzIGNvcnJ1cHRlZCAoU0hBMSBtaXNtYXRjaCkiCiBtc2dzdHIgImVsIHBhcXVldCDDqXMgbWFsbcOocyAoZGlzY29yZGFuw6dhIFNIQTEpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTQ4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTU3CiBtc2dpZCAiY2Fubm90IGZzdGF0IHBhY2tmaWxlIgogbXNnc3RyICJubyBlcyBwb3QgZmVyIGZzdGF0IGVuIGVsIGZpdHhlciBkZSBwYXF1ZXQiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNTEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNjAKIG1zZ2lkICJwYWNrIGhhcyBqdW5rIGF0IHRoZSBlbmQiCiBtc2dzdHIgImVsIHBhcXVldCB0w6kgYnJvc3NhIGFsIHNldSBmaW5hbCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE2MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE3MgogbXNnaWQgImNvbmZ1c2lvbiBiZXlvbmQgaW5zYW5pdHkgaW4gcGFyc2VfcGFja19vYmplY3RzKCkiCiBtc2dzdHIgImNvbmZ1c2nDsyBtw6lzIGVubGzDoCBkZSBsYSBib2dlcmlhIGVuIHBhcnNlX3BhY2tfb2JqZWN0cygpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTg2CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTk1CiBtc2dpZCAiUmVzb2x2aW5nIGRlbHRhcyIKIG1zZ3N0ciAiUydlc3RhbiByZXNvbGVudCBsZXMgZGlmZXLDqG5jaWVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTk2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjQ5MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTIwNSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI0ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGZpbDogJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyMzcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNDYKIG1zZ2lkICJjb25mdXNpb24gYmV5b25kIGluc2FuaXR5IgogbXNnc3RyICJjb25mdXNpw7MgbcOpcyBlbmxsw6AgZGUgbGEgYm9nZXJpYSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI0MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21wbGV0ZWQgd2l0aCAlZCBsb2NhbCBvYmplY3QiCiBtc2dpZF9wbHVyYWwgImNvbXBsZXRlZCB3aXRoICVkIGxvY2FsIG9iamVjdHMiCiBtc2dzdHJbMF0gInMnaGEgY29tcGxldGF0IGFtYiAlZCBvYmplY3RlIGxvY2FsIgogbXNnc3RyWzFdICJzJ2hhIGNvbXBsZXRhdCBhbWIgJWQgb2JqZWN0ZXMgbG9jYWxzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjU1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuZXhwZWN0ZWQgdGFpbCBjaGVja3N1bSBmb3IgJXMgKGRpc2sgY29ycnVwdGlvbj8pIgogbXNnc3RyICJTdW1hIGRlIHZlcmlmaWNhY2nDsyBmaW5hbCBubyBlc3BlcmFkYSBwZXIgYSAlcyAoY29ycnVwY2nDsyBkZSBkaXNjPykiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNjgKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjayBoYXMgJWQgdW5yZXNvbHZlZCBkZWx0YSIKIG1zZ2lkX3BsdXJhbCAicGFjayBoYXMgJWQgdW5yZXNvbHZlZCBkZWx0YXMiCiBtc2dzdHJbMF0gIkVsIHBhcXVldCB0w6kgJWQgZGlmZXLDqG5jaWEgbm8gcmVzb2x0YSIKIG1zZ3N0clsxXSAiRWwgcGFxdWV0IHTDqSAlZCBkaWZlcsOobmNpZXMgbm8gcmVzb2x0ZXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyODMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgYXBwZW5kZWQgb2JqZWN0ICglZCkiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZGVzaW5mbGFyIGwnb2JqZWN0ZSBhbm5leGF0ICglZCkiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzNjAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzODgKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9jYWwgb2JqZWN0ICVzIGlzIGNvcnJ1cHQiCiBtc2dzdHIgImwnb2JqZWN0ZSBsb2NhbCAlcyDDqXMgbWFsbcOocyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM3NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrZmlsZSBuYW1lICclcycgZG9lcyBub3QgZW5kIHdpdGggJy5wYWNrJyIKIG1zZ3N0ciAiZWwgbm9tIGRlbCBmaXR4ZXIgZGUgcGFxdWV0IMKrJXPCuyBubyBhY2FiYSBhbWIgJy5wYWNrJyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM5OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXMgZmlsZSAnJXMnIgogbXNnc3RyICJubyBlcyBwb3QgZXNjcml1cmUgwqslc8K7IGFsIGZpdHhlciDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MDcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzUKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjbG9zZSB3cml0dGVuICVzIGZpbGUgJyVzJyIKIG1zZ3N0ciAibm8gZXMgcG90IHRhbmNhciBlbCBmaXR4ZXIgZXNjcml0IGEgbWFudGVuaXIgwqslc8K7IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDMxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDU5CiBtc2dpZCAiZXJyb3Igd2hpbGUgY2xvc2luZyBwYWNrIGZpbGUiCi1tc2dzdHIgImVycm9yIGVuIHRhbmNhciBlbCBmaXR4ZXIgZGUgcGFxdWV0IgorbXNnc3RyICJlcnJvciBlbiB0YW5jYXIgZWwgZml0eGVyIGVtcGFxdWV0YXQiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0NDUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0NzMKIG1zZ2lkICJjYW5ub3Qgc3RvcmUgcGFjayBmaWxlIgotbXNnc3RyICJubyBlcyBwb3QgZW1tYWdhdHplbWFyIGVsIGZpdHhlciBkZSBwYXF1ZXQiCittc2dzdHIgIm5vIGVzIHBvdCBlbW1hZ2F0emVtYXIgZWwgZml0eGVyIGVtcGFxdWV0YXQiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0NTMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0ODEKIG1zZ2lkICJjYW5ub3Qgc3RvcmUgaW5kZXggZmlsZSIKIG1zZ3N0ciAibm8gZXMgcG90IGVtbWFnYXR6ZW1hciBlbCBmaXR4ZXIgZCfDrW5kZXgiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0OTcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzI3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTI1IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFjay5pbmRleHZlcnNpb249JTxQUkl1MzI+IgogbXNnc3RyICJwYWNrLmluZGV4dmVyc2lvbj0lPFBSSXUzMj4gaW5jb3JyZWN0ZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU2NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgb3BlbiBleGlzdGluZyBwYWNrIGZpbGUgJyVzJyIKLW1zZ3N0ciAiTm8gZXMgcG90IG9icmlyIGVsIGZpdHhlciBkZSBwYXF1ZXQgZXhpc3RlbnQgwqslc8K7IgorbXNnc3RyICJObyBlcyBwb3Qgb2JyaXIgZWwgZml0eGVyIGVtcGFxdWV0YXQgZXhpc3RlbnQgwqslc8K7IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTY3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBvcGVuIGV4aXN0aW5nIHBhY2sgaWR4IGZpbGUgZm9yICclcyciCiBtc2dzdHIgIk5vIGVzIHBvdCBvYnJpciBlbCBmaXR4ZXIgZCfDrW5kZXggZGUgcGFxdWV0cyBleGlzdGVudCBkZSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2MTUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm9uIGRlbHRhOiAlZCBvYmplY3QiCiBtc2dpZF9wbHVyYWwgIm5vbiBkZWx0YTogJWQgb2JqZWN0cyIKIG1zZ3N0clswXSAic2Vuc2UgZGlmZXLDqG5jaWVzOiAlZCBvYmplY3RlIgogbXNnc3RyWzFdICJzZW5zZSBkaWZlcsOobmNpZXM6ICVkIG9iamVjdGVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjIyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNoYWluIGxlbmd0aCA9ICVkOiAlbHUgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJjaGFpbiBsZW5ndGggPSAlZDogJWx1IG9iamVjdHMiCiBtc2dzdHJbMF0gImxvbmdpdHVkIGRlIGNhZGVuYSA9ICVkOiAlbHUgb2JqZWN0ZSIKIG1zZ3N0clsxXSAibG9uZ2l0dWQgZGUgY2FkZW5hID0gJWQ6ICVsdSBvYmplY3RlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY1OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY4OQogbXNnaWQgIkNhbm5vdCBjb21lIGJhY2sgdG8gY3dkIgogbXNnc3RyICJObyBlcyBwb3QgdG9ybmFyIGFsIGRpcmVjdG9yaSBkZSB0cmViYWxsIGFjdHVhbCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTcwOCBidWlsdGluL2luZGV4LXBhY2suYzoxNzExCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzI3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MzEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MzggYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0MQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc1NyBidWlsdGluL2luZGV4LXBhY2suYzoxNzYxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCAlcyIKIG1zZ3N0ciAiJXMgaW5jb3JyZWN0ZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc3NwogbXNnaWQgIi0tZml4LXRoaW4gY2Fubm90IGJlIHVzZWQgd2l0aG91dCAtLXN0ZGluIgogbXNnc3RyICItLWZpeC10aGluIG5vIGVzIHBvdCB1c2FyIHNlbnNlIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NzkKIG1zZ2lkICItLXN0ZGluIHJlcXVpcmVzIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0tc3RkaW4gcmVxdWVyZWl4IHVuIGRpcMOyc2l0IGdpdCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc1NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4NQogbXNnaWQgIi0tdmVyaWZ5IHdpdGggbm8gcGFja2ZpbGUgbmFtZSBnaXZlbiIKIG1zZ3N0ciAicydoYSBkb25hdCAtLXZlcmlmeSBzZW5zZSBub20gZGUgZml0eGVyIGRlIHBhcXVldCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTgwMyBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTgwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxODMzIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1ODEKICMsIGZ1enp5CiBtc2dpZCAiZnNjayBlcnJvciBpbiBwYWNrIG9iamVjdHMiCiBtc2dzdHIgImVycm9yIGVuIG9iamVjdGU6ICVzIgpAQCAtMTIxNzMsNDIgKzE0NzgxLDQyIEBACiBtc2dpZCAibm90IGNvcHlpbmcgdGVtcGxhdGVzIGZyb20gJyVzJzogJXMiCiBtc2dzdHIgIm5vIHMnZXN0YW4gY29waWFudCBwbGFudGlsbGVzIGRlIMKrJXPCuzogJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMyOQorIzogYnVpbHRpbi9pbml0LWRiLmM6MzM0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBoYW5kbGUgZmlsZSB0eXBlICVkIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGdlc3Rpb25hciBlbCB0aXB1cyBkZSBmaXR4ZXIgJWQiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMzMgorIzogYnVpbHRpbi9pbml0LWRiLmM6MzM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtb3ZlICVzIHRvICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG1vdXJlICVzIGEgJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjM0OSBidWlsdGluL2luaXQtZGIuYzozNTIKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjM1NCBidWlsdGluL2luaXQtZGIuYzozNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIiVzIGphIGV4aXN0ZWl4IgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MDUKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWluaXRpYWxpemVkIGV4aXN0aW5nIHNoYXJlZCBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgIlMnaGEgcmVpbmljaWFsaXR6YXQgZWwgZGlww7JzaXQgY29tcGFydGl0IGV4aXN0ZW50IGRlbCBHaXQgZW4gJXMlc1xuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MDYKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWluaXRpYWxpemVkIGV4aXN0aW5nIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAiUydoYSByZWluaWNpYWxpdHphdCBlbCBkaXDDsnNpdCBleGlzdGVudCBkZWwgR2l0IGVuICVzJXNcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDEwCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW5pdGlhbGl6ZWQgZW1wdHkgc2hhcmVkIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAiUydoYSBpbmljaWFsaXR6YXQgdW4gZGlww7JzaXQgY29tcGFydGl0IGJ1aXQgZGVsIEdpdCBlbiAlcyVzXG4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMQorIzogYnVpbHRpbi9pbml0LWRiLmM6NDE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkluaXRpYWxpemVkIGVtcHR5IEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAiUydoYSBpbmljaWFsaXR6YXQgdW4gZGlww7JzaXQgYnVpdCBkZWwgR2l0IGVuICVzJXNcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDYwCisjOiBidWlsdGluL2luaXQtZGIuYzo0NjgKIG1zZ2lkICIiCiAiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU9PHRlbXBsYXRlLWRpcmVjdG9yeT5dIFstLSIKICJzaGFyZWRbPTxwZXJtaXNzaW9ucz5dXSBbPGRpcmVjdG9yeT5dIgpAQCAtMTIyMTYsMjUgKzE0ODI0LDI1IEBACiAiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU9PGRpcmVjdG9yaS1kZS1wbGFudGlsbGE+XSBbLS0iCiAic2hhcmVkWz08cGVybWlzb3M+XV0gWzxkaXJlY3Rvcmk+XSIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDgzCisjOiBidWlsdGluL2luaXQtZGIuYzo0OTEKIG1zZ2lkICJwZXJtaXNzaW9ucyIKIG1zZ3N0ciAicGVybWlzb3MiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NAorIzogYnVpbHRpbi9pbml0LWRiLmM6NDkyCiBtc2dpZCAic3BlY2lmeSB0aGF0IHRoZSBnaXQgcmVwb3NpdG9yeSBpcyB0byBiZSBzaGFyZWQgYW1vbmdzdCBzZXZlcmFsIHVzZXJzIgogbXNnc3RyICJlc3BlY2lmaWNhIHF1ZSBlbCBkaXDDsnNpdCBkZSBnaXQgZXMgY29tcGFydGlyw6AgZW50cmUgZGl2ZXJzb3MgdXN1YXJpcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTE4IGJ1aWx0aW4vaW5pdC1kYi5jOjUyMworIzogYnVpbHRpbi9pbml0LWRiLmM6NTI5IGJ1aWx0aW4vaW5pdC1kYi5jOjUzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgbWtkaXIgJXMiCiBtc2dzdHIgIm5vIGVzIHBvdCBta2RpciAlcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTI3CisjOiBidWlsdGluL2luaXQtZGIuYzo1MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoZGlyIHRvICVzIgogbXNnc3RyICJubyBlcyBwb3QgY2FudmlhciBkZSBkaXJlY3RvcmkgYSAlcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTQ4CisjOiBidWlsdGluL2luaXQtZGIuYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiVzIChvciAtLXdvcmstdHJlZT08ZGlyZWN0b3J5Pikgbm90IGFsbG93ZWQgd2l0aG91dCBzcGVjaWZ5aW5nICVzIChvciAtLWdpdC0iCkBAIC0xMjI0MywxMiArMTQ4NTEsMTIgQEAKICJubyBlcyBwZXJtZXQgJXMgKG8gLS13b3JrLXRyZWU9PGRpcmVjdG9yaT4pIHNlbnNlIGVzcGVjaWZpY2FyICVzIChvIC0tZ2l0LSIKICJkaXI9PGRpcmVjdG9yaT4pIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo1NzYKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgYWNjZXNzIHdvcmsgdHJlZSAnJXMnIgogbXNnc3RyICJObyBlcyBwb3QgYWNjZWRpciBhIGwnYXJicmUgZGUgdHJlYmFsbCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTUKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTYKIG1zZ2lkICIiCiAiZ2l0IGludGVycHJldC10cmFpbGVycyBbLS1pbi1wbGFjZV0gWy0tdHJpbS1lbXB0eV0gWygtLXRyYWlsZXIgIgogIjx0b2tlbj5bKD18Oik8dmFsdWU+XSkuLi5dIFs8ZmlsZT4uLi5dIgpAQCAtMTIyNTYsMTgwICsxNDg2NCwxOTMgQEAKICJnaXQgaW50ZXJwcmV0LXRyYWlsZXJzIFstLWluLXBsYWNlXSBbLS10cmltLWVtcHR5XSBbKC0tdHJhaWxlciAiCiAiPHRlc3RpbW9uaT5bKD18Oik8dmFsb3I+XSkuLi5dIFs8Zml0eGVyPi4uLl0iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTQKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTUKIG1zZ2lkICJlZGl0IGZpbGVzIGluIHBsYWNlIgogbXNnc3RyICJlZGl0YSBlbHMgZml0eGVycyBpbiBzaXR1IgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk1CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk2CiBtc2dpZCAidHJpbSBlbXB0eSB0cmFpbGVycyIKIG1zZ3N0ciAiZXNjdXLDp2EgZWxzIHJlbW9sY3MgYnVpdHMiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTgKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTkKIG1zZ2lkICJ3aGVyZSB0byBwbGFjZSB0aGUgbmV3IHRyYWlsZXIiCiBtc2dzdHIgIm9uIHViaWNhIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDEKIG1zZ2lkICJhY3Rpb24gaWYgdHJhaWxlciBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAiYWNjacOzIHNpIGVsIMKrdHJhaWxlcsK7IGphIGV4aXN0ZWl4IgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMgorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDMKIG1zZ2lkICJhY3Rpb24gaWYgdHJhaWxlciBpcyBtaXNzaW5nIgogbXNnc3RyICJhY2Npw7Mgc2kgZWwgwqt0cmFpbGVywrsgZmFsdGEiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA0CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNQogbXNnaWQgIm91dHB1dCBvbmx5IHRoZSB0cmFpbGVycyIKIG1zZ3N0ciAibW9zdHJhIG5vbcOpcyBlbHMgwqt0cmFpbGVywrsiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA1CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNgogbXNnaWQgImRvIG5vdCBhcHBseSBjb25maWcgcnVsZXMiCiBtc2dzdHIgIm5vIGFwbGlxdWlzIGxlcyByZWdsZXMgZGUgY29uZmlndXJhY2nDsyIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDYKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA3CiBtc2dpZCAiam9pbiB3aGl0ZXNwYWNlLWNvbnRpbnVlZCB2YWx1ZXMiCiBtc2dzdHIgInVuZWl4IGVscyB2YWxvcnMgY29udGludXMgYW1iIGVzcGFpcyBlbiBibGFuYyIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDcKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA4CiBtc2dpZCAic2V0IHBhcnNpbmcgb3B0aW9ucyIKIG1zZ3N0ciAiZXN0YWJsZWl4IGxlcyBvcGNpb25zIGQnYW7DoGxpc2kiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA5CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMAogbXNnaWQgImRvIG5vdCB0cmVhdCAtLS0gc3BlY2lhbGx5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMQogbXNnaWQgInRyYWlsZXIiCiBtc2dzdHIgInJlbW9sYyIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTEKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEyCiBtc2dpZCAidHJhaWxlcihzKSB0byBhZGQiCiBtc2dzdHIgInJlbW9sY3MgYSBhZmVnaXIiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTIwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEyMwogbXNnaWQgIi0tdHJhaWxlciB3aXRoIC0tb25seS1pbnB1dCBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLXRyYWlsZXIgYW1iIC0tb25seS1pbnB1dCBubyB0w6kgc2VudGl0IgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEzMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMzMKIG1zZ2lkICJubyBpbnB1dCBmaWxlIGdpdmVuIGZvciBpbi1wbGFjZSBlZGl0aW5nIgogbXNnc3RyICJubyBzJ2hhIGRvbmF0IGNhcCBmaXR4ZXIgZCdlbnRyYWRhIHBlciBhIGVkaWNpw7MgaW4gc2l0dSIKIAotIzogYnVpbHRpbi9sb2cuYzo1NAorIzogYnVpbHRpbi9sb2cuYzo1NgogbXNnaWQgImdpdCBsb2cgWzxvcHRpb25zPl0gWzxyZXZpc2lvbi1yYW5nZT5dIFtbLS1dIDxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBsb2cgWzxvcGNpb25zPl0gWzxyYW5nLWRlLXJldmlzaW9ucz5dIFtbLS1dIDxjYW3DrT4uLi5dIgogCi0jOiBidWlsdGluL2xvZy5jOjU1CisjOiBidWlsdGluL2xvZy5jOjU3CiBtc2dpZCAiZ2l0IHNob3cgWzxvcHRpb25zPl0gPG9iamVjdD4uLi4iCiBtc2dzdHIgImdpdCBzaG93IFs8b3BjaW9ucz5dIDxvYmplY3RlPi4uLiIKIAotIzogYnVpbHRpbi9sb2cuYzo5OQorIzogYnVpbHRpbi9sb2cuYzoxMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCAtLWRlY29yYXRlIG9wdGlvbjogJXMiCiBtc2dzdHIgIm9wY2nDsyAtLWRlY29yYXRlIG5vIHbDoGxpZGE6ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjE2MgotbXNnaWQgInN1cHByZXNzIGRpZmYgb3V0cHV0IgotbXNnc3RyICJvbWV0IGxhIHNvcnRpZGEgZGUgZGlmZXLDqG5jaWVzIgotCi0jOiBidWlsdGluL2xvZy5jOjE2MworIzogYnVpbHRpbi9sb2cuYzoxNzQKIG1zZ2lkICJzaG93IHNvdXJjZSIKIG1zZ3N0ciAibW9zdHJhIGxhIGZvbnQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY0CisjOiBidWlsdGluL2xvZy5jOjE3NQogbXNnaWQgIlVzZSBtYWlsIG1hcCBmaWxlIgogbXNnc3RyICJVc2EgZWwgZml0eGVyIGRlIG1hcGEgZGUgY29ycmV1IgogCi0jOiBidWlsdGluL2xvZy5jOjE2NgorIzogYnVpbHRpbi9sb2cuYzoxNzcKIG1zZ2lkICJvbmx5IGRlY29yYXRlIHJlZnMgdGhhdCBtYXRjaCA8cGF0dGVybj4iCiBtc2dzdHIgIm5vbcOpcyBkZWNvcmEgbGVzIHJlZmVyw6huY2llcyBxdWUgY29pbmNpZGVpeGluIGFtYiA8cGF0csOzPiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjgKKyM6IGJ1aWx0aW4vbG9nLmM6MTc5CiBtc2dpZCAiZG8gbm90IGRlY29yYXRlIHJlZnMgdGhhdCBtYXRjaCA8cGF0dGVybj4iCiBtc2dzdHIgIm5vIGRlY29yaXMgbGVzIHJlZmVyw6huY2llcyBxdWUgY29pbmNpZGVpeGVuIGFtYiA8cGF0csOzPiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjkKKyM6IGJ1aWx0aW4vbG9nLmM6MTgwCiBtc2dpZCAiZGVjb3JhdGUgb3B0aW9ucyIKIG1zZ3N0ciAib3BjaW9ucyBkZSBkZWNvcmFjacOzIgogCi0jOiBidWlsdGluL2xvZy5jOjE3MgorIzogYnVpbHRpbi9sb2cuYzoxODMKIG1zZ2lkICJQcm9jZXNzIGxpbmUgcmFuZ2UgbixtIGluIGZpbGUsIGNvdW50aW5nIGZyb20gMSIKIG1zZ3N0ciAiUHJvY2Vzc2EgZWwgcmFuZyBkZSBsw61uaWVzIG4sbSBlbiBlbCBmaXR4ZXIsIGNvbXB0YW50IGRlcyBkJzEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MjcwCisjOiBidWlsdGluL2xvZy5jOjI4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGaW5hbCBvdXRwdXQ6ICVkICVzXG4iCiBtc2dzdHIgIlNvcnRpZGEgZmluYWw6ICVkICVzXG4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTIyCisjOiBidWlsdGluL2xvZy5jOjUzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgc2hvdyAlczogYmFkIGZpbGUiCiBtc2dzdHIgImdpdCBzaG93ICVzOiBmaXR4ZXIgaW5jb3JyZWN0ZSIKIAotIzogYnVpbHRpbi9sb2cuYzo1MzcgYnVpbHRpbi9sb2cuYzo2MzEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgorIzogYnVpbHRpbi9sb2cuYzo1NTAgYnVpbHRpbi9sb2cuYzo2NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIG9iamVjdCAlcyIKIG1zZ3N0ciAiTm8gZXMgcG90IGxsZWdpciBsJ29iamVjdGUgJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NjU1Ci0jLCBjLWZvcm1hdAotbXNnaWQgIlVua25vd24gdHlwZTogJWQiCisjOiBidWlsdGluL2xvZy5jOjY3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB0eXBlOiAlZCIKIG1zZ3N0ciAiVGlwdXMgZGVzY29uZWd1dDogJWQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6Nzc2CisjOiBidWlsdGluL2xvZy5jOjgxNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCBjb3ZlciBmcm9tIGRlc2NyaXB0aW9uIG1vZGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzo4MjEKIG1zZ2lkICJmb3JtYXQuaGVhZGVycyB3aXRob3V0IHZhbHVlIgogbXNnc3RyICJmb3JtYXQuaGVhZGVycyBzZW5zZSB2YWxvciIKIAotIzogYnVpbHRpbi9sb2cuYzo4NzcKKyM6IGJ1aWx0aW4vbG9nLmM6OTM2CiBtc2dpZCAibmFtZSBvZiBvdXRwdXQgZGlyZWN0b3J5IGlzIHRvbyBsb25nIgogbXNnc3RyICJlbCBub20gZGVsIGRpcmVjdG9yaSBkZSBzb3J0aWRhIMOpcyBtYXNzYSBsbGFyZyIKIAotIzogYnVpbHRpbi9sb2cuYzo4OTMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ2Fubm90IG9wZW4gcGF0Y2ggZmlsZSAlcyIKKyM6IGJ1aWx0aW4vbG9nLmM6OTUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBwYXRjaCBmaWxlICVzIgogbXNnc3RyICJObyBlcyBwb3Qgb2JyaXIgZWwgZml0eGVyIGRlIHBlZGHDpyAlcyIKIAotIzogYnVpbHRpbi9sb2cuYzo5MTAKLW1zZ2lkICJOZWVkIGV4YWN0bHkgb25lIHJhbmdlLiIKKyM6IGJ1aWx0aW4vbG9nLmM6OTY5CisjLCBmdXp6eQorbXNnaWQgIm5lZWQgZXhhY3RseSBvbmUgcmFuZ2UiCiBtc2dzdHIgIkNhbCBleGFjdGFtZW50IHVuIHJhbmcuIgogCi0jOiBidWlsdGluL2xvZy5jOjkyMAotbXNnaWQgIk5vdCBhIHJhbmdlLiIKKyM6IGJ1aWx0aW4vbG9nLmM6OTc5CisjLCBmdXp6eQorbXNnaWQgIm5vdCBhIHJhbmdlIgogbXNnc3RyICJObyDDqXMgdW4gcmFuZy4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTA0MwotbXNnaWQgIkNvdmVyIGxldHRlciBuZWVkcyBlbWFpbCBmb3JtYXQiCisjOiBidWlsdGluL2xvZy5jOjExNDMKKyMsIGZ1enp5Cittc2dpZCAiY292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKIG1zZ3N0ciAiTGEgY2FydGEgZGUgcHJlc2VudGFjacOzIG5lY2Vzc2l0YSBlbCBmb3JtYXQgZGUgY29ycmV1IGVsZWN0csOybmljIgogCi0jOiBidWlsdGluL2xvZy5jOjExMTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTE0OQorIywgZnV6enkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGNvdmVyLWxldHRlciBmaWxlIgorbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNyZWFyIGVscyBmaXR4ZXJzIGRlIHNvcnRpZGEiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnNhbmUgaW4tcmVwbHktdG86ICVzIgogbXNnc3RyICJpbi1yZXBseS10byBib2lnOiAlcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxMTQ2CisjOiBidWlsdGluL2xvZy5jOjEyNTUKIG1zZ2lkICJnaXQgZm9ybWF0LXBhdGNoIFs8b3B0aW9ucz5dIFs8c2luY2U+IHwgPHJldmlzaW9uLXJhbmdlPl0iCiBtc2dzdHIgImdpdCBmb3JtYXQtcGF0Y2ggWzxvcGNpb25zPl0gWzxkZXMtZGU+IHwgPHJhbmctZGUtcmV2aXNpb25zPl0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTIwNAotbXNnaWQgIlR3byBvdXRwdXQgZGlyZWN0b3JpZXM/IgorIzogYnVpbHRpbi9sb2cuYzoxMzEzCisjLCBmdXp6eQorbXNnaWQgInR3byBvdXRwdXQgZGlyZWN0b3JpZXM/IgogbXNnc3RyICJIaSBoYSBkb3MgZGlyZWN0b3JpcyBkZSBzb3J0aWRhPyIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzExIGJ1aWx0aW4vbG9nLmM6MjA1NCBidWlsdGluL2xvZy5jOjIwNTYgYnVpbHRpbi9sb2cuYzoyMDY4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIlVua25vd24gY29tbWl0ICVzIgorIzogYnVpbHRpbi9sb2cuYzoxNDI0IGJ1aWx0aW4vbG9nLmM6MjE5NyBidWlsdGluL2xvZy5jOjIxOTkgYnVpbHRpbi9sb2cuYzoyMjExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbW1pdCAlcyIKIG1zZ3N0ciAiQ29taXNzacOzIGRlc2NvbmVndWRhICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMjEgYnVpbHRpbi9ub3Rlcy5jOjg5NCBidWlsdGluL3RhZy5jOjUyNgorIzogYnVpbHRpbi9sb2cuYzoxNDM0IGJ1aWx0aW4vcmVwbGFjZS5jOjU4IGJ1aWx0aW4vcmVwbGFjZS5jOjIwNworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjEwCiAjLCBjLWZvcm1hdAotbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgotbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHJlc29sZHJlIMKrJXPCuyBjb20gYSByZWZlcsOobmNpYSB2w6BsaWRhLiIKK21zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHJlc29sZHJlIMKrJXPCuyBjb20gYSByZWZlcsOobmNpYSB2w6BsaWRhIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMjYKLW1zZ2lkICJDb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlLiIKKyM6IGJ1aWx0aW4vbG9nLmM6MTQzOQorIywgZnV6enkKK21zZ2lkICJjb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IHRyb2JhciBsYSBiYXNlIGV4YWN0YSBkZSBmdXNpw7MuIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ0MworIywgZnV6enkKIG1zZ2lkICIiCi0iRmFpbGVkIHRvIGdldCB1cHN0cmVhbSwgaWYgeW91IHdhbnQgdG8gcmVjb3JkIGJhc2UgY29tbWl0IGF1dG9tYXRpY2FsbHksXG4iCisiZmFpbGVkIHRvIGdldCB1cHN0cmVhbSwgaWYgeW91IHdhbnQgdG8gcmVjb3JkIGJhc2UgY29tbWl0IGF1dG9tYXRpY2FsbHksXG4iCiAicGxlYXNlIHVzZSBnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvIHRvIHRyYWNrIGEgcmVtb3RlIGJyYW5jaC5cbiIKLSJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseS4iCisiT3IgeW91IGNvdWxkIHNwZWNpZnkgYmFzZSBjb21taXQgYnkgLS1iYXNlPTxiYXNlLWNvbW1pdC1pZD4gbWFudWFsbHkiCiBtc2dzdHIgIiIKICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIG9idGVuaXIgbGEgZm9udC4gU2kgdm9sZXUgcmVnaXN0cmFyIGxhIGNvbWlzc2nDsyAiCiAiYmFzZVxuIgpAQCAtMTI0MzcsMjgxICsxNTA1OCwyODIgQEAKICJzZWd1aXIgdW5hIGJyYW5jYSByZW1vdGEuIE8gcG9kZXUgZXNwZWNpZmljYXIgbGEgY29taXNzacOzIGJhc2UgbWFudWFsbWVudFxuIgogImFtYiAtLWJhc2U9PGlkLWRlLWNvbWlzc2nDsy1iYXNlPi4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTM1MAotbXNnaWQgIkZhaWxlZCB0byBmaW5kIGV4YWN0IG1lcmdlIGJhc2UiCisjOiBidWlsdGluL2xvZy5jOjE0NjMKKyMsIGZ1enp5Cittc2dpZCAiZmFpbGVkIHRvIGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKIG1zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiB0cm9iYXIgbGEgYmFzZSBleGFjdGEgZGUgZnVzacOzLiIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzYxCisjOiBidWlsdGluL2xvZy5jOjE0NzQKIG1zZ2lkICJiYXNlIGNvbW1pdCBzaG91bGQgYmUgdGhlIGFuY2VzdG9yIG9mIHJldmlzaW9uIGxpc3QiCiBtc2dzdHIgImxhIGNvbWlzc2nDsyBiYXNlIGhhIGRlIHNlciBsJ2F2YW50cGFzc2F0IGRlIGxhIGxsaXN0YSBkZSByZXZpc2lvbnMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTM2NQorIzogYnVpbHRpbi9sb2cuYzoxNDc4CiBtc2dpZCAiYmFzZSBjb21taXQgc2hvdWxkbid0IGJlIGluIHJldmlzaW9uIGxpc3QiCiBtc2dzdHIgImxhIGNvbWlzc2nDsyBiYXNlIG5vIGhhIGRlIHNlciBlbiBsYSBsbGlzdGEgZGUgcmV2aXNpb25zIgogCi0jOiBidWlsdGluL2xvZy5jOjE0MTgKKyM6IGJ1aWx0aW4vbG9nLmM6MTUzMQogbXNnaWQgImNhbm5vdCBnZXQgcGF0Y2ggaWQiCiBtc2dzdHIgIm5vIGVzIHBvdCBvYnRlbmlyIGwnaWQgZGVsIHBlZGHDpyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDcwCisjOiBidWlsdGluL2xvZy5jOjE1ODMKICMsIGZ1enp5CiBtc2dpZCAiZmFpbGVkIHRvIGluZmVyIHJhbmdlLWRpZmYgcmFuZ2VzIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGV4ZWN1dGFyIMKrJXPCuyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTE1CisjOiBidWlsdGluL2xvZy5jOjE2MjkKIG1zZ2lkICJ1c2UgW1BBVENIIG4vbV0gZXZlbiB3aXRoIGEgc2luZ2xlIHBhdGNoIgogbXNnc3RyICJ1c2EgW1BBVENIIG4vbV0gZmlucyBpIHRvdCBhbWIgdW4gc29sIHBlZGHDpyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTE4CisjOiBidWlsdGluL2xvZy5jOjE2MzIKIG1zZ2lkICJ1c2UgW1BBVENIXSBldmVuIHdpdGggbXVsdGlwbGUgcGF0Y2hlcyIKIG1zZ3N0ciAidXNhIFtQQVRDSF0gZmlucyBpIHRvdCBhbWIgbcO6bHRpcGxlcyBwZWRhw6dvcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTIyCisjOiBidWlsdGluL2xvZy5jOjE2MzYKIG1zZ2lkICJwcmludCBwYXRjaGVzIHRvIHN0YW5kYXJkIG91dCIKIG1zZ3N0ciAiaW1wcmltZWl4IGVscyBwZWRhw6dvcyBhIGxhIHNvcnRpZGEgZXN0w6BuZGFyZCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI0CisjOiBidWlsdGluL2xvZy5jOjE2MzgKIG1zZ2lkICJnZW5lcmF0ZSBhIGNvdmVyIGxldHRlciIKIG1zZ3N0ciAiZ2VuZXJhIHVuYSBjYXJ0YSBkZSBwcmVzZW50YWNpw7MiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyNgorIzogYnVpbHRpbi9sb2cuYzoxNjQwCiBtc2dpZCAidXNlIHNpbXBsZSBudW1iZXIgc2VxdWVuY2UgZm9yIG91dHB1dCBmaWxlIG5hbWVzIgogbXNnc3RyICJ1c2EgdW5hIHNlccO8w6huY2lhIGRlIG7Dum1lcm9zIHBlciBhbHMgbm9tcyBkZWxzIGZpdHhlcnMgZGUgc29ydGlkYSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI3CisjOiBidWlsdGluL2xvZy5jOjE2NDEKIG1zZ2lkICJzZngiCiBtc2dzdHIgInN1Zml4IgogCi0jOiBidWlsdGluL2xvZy5jOjE1MjgKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0MgogbXNnaWQgInVzZSA8c2Z4PiBpbnN0ZWFkIG9mICcucGF0Y2gnIgogbXNnc3RyICJ1c2EgPHN1Zml4PiBlbiBsbG9jIGRlICcucGF0Y2gnIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0NAogbXNnaWQgInN0YXJ0IG51bWJlcmluZyBwYXRjaGVzIGF0IDxuPiBpbnN0ZWFkIG9mIDEiCiBtc2dzdHIgImNvbWVuw6dhIG51bWVyYW50IGVscyBwZWRhw6dvcyBhIDxuPiBlbiBsbG9jIGQnMSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTMyCisjOiBidWlsdGluL2xvZy5jOjE2NDYKIG1zZ2lkICJtYXJrIHRoZSBzZXJpZXMgYXMgTnRoIHJlLXJvbGwiCiBtc2dzdHIgIm1hcmNhIGxhIHPDqHJpZSBjb20gYSBsJ2Vuw6hzaW1hIGxsYW7Dp2FkYSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTM0CisjOiBidWlsdGluL2xvZy5jOjE2NDgKIG1zZ2lkICJVc2UgW1JGQyBQQVRDSF0gaW5zdGVhZCBvZiBbUEFUQ0hdIgogbXNnc3RyICJVc2EgW1JGQyBQQVRDSF0gZW4gbGxvYyBkZSBbUEFUQ0hdIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1MQorbXNnaWQgImNvdmVyLWZyb20tZGVzY3JpcHRpb24tbW9kZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTIKK21zZ2lkICJnZW5lcmF0ZSBwYXJ0cyBvZiBhIGNvdmVyIGxldHRlciBiYXNlZCBvbiBhIGJyYW5jaCdzIGRlc2NyaXB0aW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1NAogbXNnaWQgIlVzZSBbPHByZWZpeD5dIGluc3RlYWQgb2YgW1BBVENIXSIKIG1zZ3N0ciAiVXNhIFs8cHJlZml4Pl0gZW4gbGxvYyBkZSBbUEFUQ0hdIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1NwogbXNnaWQgInN0b3JlIHJlc3VsdGluZyBmaWxlcyBpbiA8ZGlyPiIKIG1zZ3N0ciAiZW1tYWdhdHplbWEgZWxzIGZpdHhlcnMgcmVzdWx0YW50cyBhIDxkaXJlY3Rvcmk+IgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDMKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2MAogbXNnaWQgImRvbid0IHN0cmlwL2FkZCBbUEFUQ0hdIgogbXNnc3RyICJubyBkZXNwdWxsaXMvYWZlZ2VpeGlzIFtQQVRDSF0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU0NgorIzogYnVpbHRpbi9sb2cuYzoxNjYzCiBtc2dpZCAiZG9uJ3Qgb3V0cHV0IGJpbmFyeSBkaWZmcyIKIG1zZ3N0ciAibm8gZW1ldGlzIGRpZmVyw6huY2llcyBiaW7DoHJpZXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU0OAorIzogYnVpbHRpbi9sb2cuYzoxNjY1CiBtc2dpZCAib3V0cHV0IGFsbC16ZXJvIGhhc2ggaW4gRnJvbSBoZWFkZXIiCiBtc2dzdHIgImVtZXQgdW4gaGFzaCBkZSB0b3RzIHplcm9zIGVuIGxhIGNhcMOnYWxlcmEgRnJvbSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTUwCisjOiBidWlsdGluL2xvZy5jOjE2NjcKIG1zZ2lkICJkb24ndCBpbmNsdWRlIGEgcGF0Y2ggbWF0Y2hpbmcgYSBjb21taXQgdXBzdHJlYW0iCiBtc2dzdHIgIm5vIGluY2xvZ3VpcyBwZWRhw6dvcyBxdWUgY29pbmNpZGVpeGluIGFtYiBjb21pc3Npb25zIGEgbGEgZm9udCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTUyCisjOiBidWlsdGluL2xvZy5jOjE2NjkKIG1zZ2lkICJzaG93IHBhdGNoIGZvcm1hdCBpbnN0ZWFkIG9mIGRlZmF1bHQgKHBhdGNoICsgc3RhdCkiCiBtc2dzdHIgIiIKICJtb3N0cmEgZWwgZm9ybWF0IGRlIHBlZGHDpyBlbiBsbG9jIGRlbCBwZXIgZGVmZWN0ZSAocGVkYcOnICsgZXN0YWTDrXN0aXF1ZXMpIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTQKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MQogbXNnaWQgIk1lc3NhZ2luZyIKIG1zZ3N0ciAiTWlzc2F0Z2VyaWEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NQorIzogYnVpbHRpbi9sb2cuYzoxNjcyCiBtc2dpZCAiaGVhZGVyIgogbXNnc3RyICJjYXDDp2FsZXJhIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTYKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MwogbXNnaWQgImFkZCBlbWFpbCBoZWFkZXIiCiBtc2dzdHIgImFmZWdlaXggdW5hIGNhcMOnYWxlcmEgZGUgY29ycmV1IGVsZWN0csOybmljIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTcgYnVpbHRpbi9sb2cuYzoxNTU5CisjOiBidWlsdGluL2xvZy5jOjE2NzQgYnVpbHRpbi9sb2cuYzoxNjc2CiBtc2dpZCAiZW1haWwiCiBtc2dzdHIgImNvcnJldSBlbGVjdHLDsm5pYyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU3CisjOiBidWlsdGluL2xvZy5jOjE2NzQKIG1zZ2lkICJhZGQgVG86IGhlYWRlciIKIG1zZ3N0ciAiYWZlZ2VpeCBsYSBjYXDDp2FsZXJhIFRvOiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU5CisjOiBidWlsdGluL2xvZy5jOjE2NzYKIG1zZ2lkICJhZGQgQ2M6IGhlYWRlciIKIG1zZ3N0ciAiYWZlZ2VpeCBsYSBjYXDDp2FsZXJhIENjOiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTYxCisjOiBidWlsdGluL2xvZy5jOjE2NzgKIG1zZ2lkICJpZGVudCIKIG1zZ3N0ciAiaWRlbnRpdGF0IgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjIKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3OQogbXNnaWQgInNldCBGcm9tIGFkZHJlc3MgdG8gPGlkZW50PiAob3IgY29tbWl0dGVyIGlkZW50IGlmIGFic2VudCkiCiBtc2dzdHIgIiIKICJlc3RhYmxlaXggbCdhZHJlw6dhIEZyb20gYSA8aWRlbnRpdGF0PiAobyBsYSBpZGVudGl0YXQgZGVsIGNvbWl0ZW50IHNpIG1hbmNhKSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTY0CisjOiBidWlsdGluL2xvZy5jOjE2ODEKIG1zZ2lkICJtZXNzYWdlLWlkIgogbXNnc3RyICJJRCBkZSBtaXNzYXRnZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTY1CisjOiBidWlsdGluL2xvZy5jOjE2ODIKIG1zZ2lkICJtYWtlIGZpcnN0IG1haWwgYSByZXBseSB0byA8bWVzc2FnZS1pZD4iCiBtc2dzdHIgImZlcyBxdWUgZWwgcHJpbWVyIG1pc3NhdGdlIHNpZ3VpIHVuYSByZXNwb3N0YSBhIDxJRCBkZSBtaXNzYXRnZT4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NiBidWlsdGluL2xvZy5jOjE1NjkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4MyBidWlsdGluL2xvZy5jOjE2ODYKIG1zZ2lkICJib3VuZGFyeSIKIG1zZ3N0ciAibMOtbWl0IgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4NAogbXNnaWQgImF0dGFjaCB0aGUgcGF0Y2giCiBtc2dzdHIgImFkanVudGEgZWwgcGVkYcOnIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4NwogbXNnaWQgImlubGluZSB0aGUgcGF0Y2giCiBtc2dzdHIgInBvc2EgZWwgcGVkYcOnIGVuIGVsIGNvcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc0CisjOiBidWlsdGluL2xvZy5jOjE2OTEKIG1zZ2lkICJlbmFibGUgbWVzc2FnZSB0aHJlYWRpbmcsIHN0eWxlczogc2hhbGxvdywgZGVlcCIKIG1zZ3N0ciAiaGFiaWxpdGEgbCdlbmZpbGFkYSBkZSBtaXNzYXRnZXMsIGVzdGlsczogc2hhbGxvdywgZGVlcCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc2CisjOiBidWlsdGluL2xvZy5jOjE2OTMKIG1zZ2lkICJzaWduYXR1cmUiCiBtc2dzdHIgInNpZ25hdHVyYSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc3CisjOiBidWlsdGluL2xvZy5jOjE2OTQKIG1zZ2lkICJhZGQgYSBzaWduYXR1cmUiCiBtc2dzdHIgImFmZWdlaXggdW5hIHNpZ25hdHVyYSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc4CisjOiBidWlsdGluL2xvZy5jOjE2OTUKIG1zZ2lkICJiYXNlLWNvbW1pdCIKIG1zZ3N0ciAiY29taXNzacOzIGJhc2UiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3OQorIzogYnVpbHRpbi9sb2cuYzoxNjk2CiBtc2dpZCAiYWRkIHByZXJlcXVpc2l0ZSB0cmVlIGluZm8gdG8gdGhlIHBhdGNoIHNlcmllcyIKIG1zZ3N0ciAiYWZlZ2VpeCBsYSBpbmZvcm1hY2nDsyBkJ2FyYnJlIHJlcXVlcmlkYSBhIGxhIHPDqHJpZSBkZSBwZWRhw6dvcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTgxCisjOiBidWlsdGluL2xvZy5jOjE2OTgKIG1zZ2lkICJhZGQgYSBzaWduYXR1cmUgZnJvbSBhIGZpbGUiCiBtc2dzdHIgImFmZWdlaXggdW5hIHNpZ25hdHVyYSBkZXMgZCd1biBmaXR4ZXIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4MgorIzogYnVpbHRpbi9sb2cuYzoxNjk5CiBtc2dpZCAiZG9uJ3QgcHJpbnQgdGhlIHBhdGNoIGZpbGVuYW1lcyIKIG1zZ3N0ciAibm8gaW1wcmltZWl4aXMgZWxzIG5vbXMgZGUgZml0eGVyIGRlbCBwZWRhw6ciCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4NAorIzogYnVpbHRpbi9sb2cuYzoxNzAxCiBtc2dpZCAic2hvdyBwcm9ncmVzcyB3aGlsZSBnZW5lcmF0aW5nIHBhdGNoZXMiCiBtc2dzdHIgIm1vc3RyYSBlbCBwcm9ncsOpcyBkdXJhbnQgbGEgZ2VuZXJhY2nDsyBkZSBwZWRhw6dvcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTg1Ci1tc2dpZCAicmV2IgotbXNnc3RyICJyZXYiCi0KLSM6IGJ1aWx0aW4vbG9nLmM6MTU4NgorIzogYnVpbHRpbi9sb2cuYzoxNzAzCiBtc2dpZCAic2hvdyBjaGFuZ2VzIGFnYWluc3QgPHJldj4gaW4gY292ZXIgbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODkKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwNgogbXNnaWQgInNob3cgY2hhbmdlcyBhZ2FpbnN0IDxyZWZzcGVjPiBpbiBjb3ZlciBsZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU5MQorIzogYnVpbHRpbi9sb2cuYzoxNzA4CiBtc2dpZCAicGVyY2VudGFnZSBieSB3aGljaCBjcmVhdGlvbiBpcyB3ZWlnaHRlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE2NjYKKyM6IGJ1aWx0aW4vbG9nLmM6MTc5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGlkZW50IGxpbmU6ICVzIgogbXNnc3RyICJsw61uaWEgZCdpZGVudGl0YXQgbm8gdsOgbGlkYTogJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY4MQorIzogYnVpbHRpbi9sb2cuYzoxODA3CiAjLCBmdXp6eQogbXNnaWQgIi1uIGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICItbiBpIC1rIHPDs24gbcO6dHVhbWVudCBleGNsb2VudHMuIgogCi0jOiBidWlsdGluL2xvZy5jOjE2ODMKKyM6IGJ1aWx0aW4vbG9nLmM6MTgwOQogIywgZnV6enkKIG1zZ2lkICItLXN1YmplY3QtcHJlZml4Ly0tcmZjIGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICItLXN1YmplY3QtcHJlZml4Ly0tcmZjIGkgLWsgc8OzbiBtw7p0dWFtZW50IGV4Y2xvZW50cy4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5MQorIzogYnVpbHRpbi9sb2cuYzoxODE3CiBtc2dpZCAiLS1uYW1lLW9ubHkgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS1uYW1lLW9ubHkgbm8gdMOpIHNlbnRpdCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjkzCisjOiBidWlsdGluL2xvZy5jOjE4MTkKIG1zZ2lkICItLW5hbWUtc3RhdHVzIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tbmFtZS1zdGF0dXMgbm8gdMOpIHNlbnRpdCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjk1CisjOiBidWlsdGluL2xvZy5jOjE4MjEKIG1zZ2lkICItLWNoZWNrIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tY2hlY2sgbm8gdMOpIHNlbnRpdCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNzI3CisjOiBidWlsdGluL2xvZy5jOjE4NTQKIG1zZ2lkICJzdGFuZGFyZCBvdXRwdXQsIG9yIGRpcmVjdG9yeSwgd2hpY2ggb25lPyIKIG1zZ3N0ciAic29ydGlkYSBlc3TDoG5kYXJkIG8gZGlyZWN0b3JpLCBxdWluIGRlbHMgZG9zPyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNzI5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciCi1tc2dzdHIgIk5vIHMnaGEgcG9ndXQgY3JlYXIgZWwgZGlyZWN0b3JpIMKrJXPCuyIKLQotIzogYnVpbHRpbi9sb2cuYzoxODE2CisjOiBidWlsdGluL2xvZy5jOjE5NTgKIG1zZ2lkICItLWludGVyZGlmZiByZXF1aXJlcyAtLWNvdmVyLWxldHRlciBvciBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODIwCisjOiBidWlsdGluL2xvZy5jOjE5NjIKIG1zZ2lkICJJbnRlcmRpZmY6IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgyMQorIzogYnVpbHRpbi9sb2cuYzoxOTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludGVyZGlmZiBhZ2FpbnN0IHYlZDoiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODI3CisjOiBidWlsdGluL2xvZy5jOjE5NjkKIG1zZ2lkICItLWNyZWF0aW9uLWZhY3RvciByZXF1aXJlcyAtLXJhbmdlLWRpZmYiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODMxCisjOiBidWlsdGluL2xvZy5jOjE5NzMKIG1zZ2lkICItLXJhbmdlLWRpZmYgcmVxdWlyZXMgLS1jb3Zlci1sZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgzOQorIzogYnVpbHRpbi9sb2cuYzoxOTgxCiBtc2dpZCAiUmFuZ2UtZGlmZjoiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODQwCisjOiBidWlsdGluL2xvZy5jOjE5ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmFuZ2UtZGlmZiBhZ2FpbnN0IHYlZDoiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODUxCisjOiBidWlsdGluL2xvZy5jOjE5OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgc2lnbmF0dXJlIGZpbGUgJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBsbGVnaXIgZWwgZml0eGVyIGRlIHNpZ25hdHVyYSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg4NworIzogYnVpbHRpbi9sb2cuYzoyMDI5CiBtc2dpZCAiR2VuZXJhdGluZyBwYXRjaGVzIgogbXNnc3RyICJTJ2VzdGFuIGdlbmVyYW50IGVscyBwZWRhw6dvcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxOTMxCi1tc2dpZCAiRmFpbGVkIHRvIGNyZWF0ZSBvdXRwdXQgZmlsZXMiCisjOiBidWlsdGluL2xvZy5jOjIwNzMKKyMsIGZ1enp5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBvdXRwdXQgZmlsZXMiCiBtc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gY3JlYXIgZWxzIGZpdHhlcnMgZGUgc29ydGlkYSIKIAotIzogYnVpbHRpbi9sb2cuYzoxOTg5CisjOiBidWlsdGluL2xvZy5jOjIxMzIKIG1zZ2lkICJnaXQgY2hlcnJ5IFstdl0gWzx1cHN0cmVhbT4gWzxoZWFkPiBbPGxpbWl0Pl1dXSIKIG1zZ3N0ciAiZ2l0IGNoZXJyeSBbLXZdIFs8Zm9udD4gWzxjYXA+IFs8bMOtbWl0Pl1dXSIKIAotIzogYnVpbHRpbi9sb2cuYzoyMDQzCisjOiBidWlsdGluL2xvZy5jOjIxODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNvdWxkIG5vdCBmaW5kIGEgdHJhY2tlZCByZW1vdGUgYnJhbmNoLCBwbGVhc2Ugc3BlY2lmeSA8dXBzdHJlYW0+IG1hbnVhbGx5LlxuIgpAQCAtMTI3MTksMTA5ICsxNTM0MSwxMDkgQEAKICJObyBzJ2hhIHBvZ3V0IHRyb2JhciB1bmEgYnJhbmNhIHJlbW90YSBzZWd1aWRhLiBFc3BlY2lmaXF1ZXUgPGZvbnQ+ICIKICJtYW51YWxtZW50LlxuIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NDY5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NDcwCiBtc2dpZCAiZ2l0IGxzLWZpbGVzIFs8b3B0aW9ucz5dIFs8ZmlsZT4uLi5dIgogbXNnc3RyICJnaXQgbHMtZmlsZXMgWzxvcGNpb25zPl0gWzxmaXR4ZXI+Li4uXSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUyNQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUyNgogbXNnaWQgImlkZW50aWZ5IHRoZSBmaWxlIHN0YXR1cyB3aXRoIHRhZ3MiCiBtc2dzdHIgImlkZW50aWZpY2EgbCdlc3RhdCBkZSBmaXR4ZXIgYW1iIGV0aXF1ZXRlcyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUyNworIzogYnVpbHRpbi9scy1maWxlcy5jOjUyOAogbXNnaWQgInVzZSBsb3dlcmNhc2UgbGV0dGVycyBmb3IgJ2Fzc3VtZSB1bmNoYW5nZWQnIGZpbGVzIgogbXNnc3RyICJ1c2EgbGxldHJlcyBtaW7DunNjdWxlcyBwZXIgYWxzIGZpdHhlcnMgJ2Fzc3VtZSB1bmNoYW5nZWQnIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTI5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTMwCiBtc2dpZCAidXNlIGxvd2VyY2FzZSBsZXR0ZXJzIGZvciAnZnNtb25pdG9yIGNsZWFuJyBmaWxlcyIKIG1zZ3N0ciAidXNhIGxsZXRyZXMgbWluw7pzY3VsZXMgcGVyIGFscyBmaXR4ZXJzICdmc21vbml0b3IgY2xlYW4nIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTMxCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTMyCiBtc2dpZCAic2hvdyBjYWNoZWQgZmlsZXMgaW4gdGhlIG91dHB1dCAoZGVmYXVsdCkiCiBtc2dzdHIgIiIKICJtb3N0cmEgZW4gbGEgc29ydGlkYSBlbHMgZml0eGVycyBkZXNhdHMgZW4gbGEgbWVtw7JyaWEgY2F1IChwZXIgZGVmZWN0ZSkiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzMKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzQKIG1zZ2lkICJzaG93IGRlbGV0ZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAibW9zdHJhIGVuIGxhIHNvcnRpZGEgZWxzIGZpdHhlcnMgc3VwcmltaXRzIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTM1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTM2CiBtc2dpZCAic2hvdyBtb2RpZmllZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJtb3N0cmEgZW4gbGEgc29ydGlkYSBlbHMgZml0eGVycyBtb2RpZmljYXRzIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTM3CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTM4CiBtc2dpZCAic2hvdyBvdGhlciBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJtb3N0cmEgZW4gbGEgc29ydGlkYSBlbHMgYWx0cmVzIGZpdHhlcnMiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDAKIG1zZ2lkICJzaG93IGlnbm9yZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAibW9zdHJhIGVuIGxhIHNvcnRpZGEgZWxzIGZpdHhlcnMgaWdub3JhdHMiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDIKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDMKIG1zZ2lkICJzaG93IHN0YWdlZCBjb250ZW50cycgb2JqZWN0IG5hbWUgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAibW9zdHJhIGVuIGxhIHNvcnRpZGEgZWwgbm9tIGQnb2JqZWN0ZSBkZWxzIGNvbnRpbmd1dHMgwqtzdGFnZcK7IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ0CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ1CiBtc2dpZCAic2hvdyBmaWxlcyBvbiB0aGUgZmlsZXN5c3RlbSB0aGF0IG5lZWQgdG8gYmUgcmVtb3ZlZCIKIG1zZ3N0ciAibW9zdHJhIGVscyBmaXR4ZXJzIGVuIGVsIHNpc3RlbWEgZGUgZml0eGVycyBxdWUgcydoYW4gZCdlbGltaW5hciIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0NgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0NwogbXNnaWQgInNob3cgJ290aGVyJyBkaXJlY3RvcmllcycgbmFtZXMgb25seSIKIG1zZ3N0ciAibW9zdHJhIG5vbcOpcyBlbHMgbm9tcyBkZWxzIGRpcmVjdG9yaXMgJ290aGVyJyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OQogbXNnaWQgInNob3cgbGluZSBlbmRpbmdzIG9mIGZpbGVzIgogbXNnc3RyICJtb3N0cmEgZWxzIHRlcm1pbmFkb3JzIGRlIGzDrW5pYSBkZWxzIGZpdHhlcnMiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTAKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTEKIG1zZ2lkICJkb24ndCBzaG93IGVtcHR5IGRpcmVjdG9yaWVzIgogbXNnc3RyICJubyBtb3N0cmlzIGVscyBkaXJlY3RvcmlzIGJ1aXRzIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTUzCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU0CiBtc2dpZCAic2hvdyB1bm1lcmdlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJtb3N0cmEgZW4gbGEgc29ydGlkYSBlbHMgZml0eGVycyBzZW5zZSBmdXNpb25hciIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NgogbXNnaWQgInNob3cgcmVzb2x2ZS11bmRvIGluZm9ybWF0aW9uIgogbXNnc3RyICJtb3N0cmEgbGEgaW5mb3JtYWNpw7MgZGUgcmVzb2x1Y2nDsyBkZSBkZXNmZXQiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTcKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTgKIG1zZ2lkICJza2lwIGZpbGVzIG1hdGNoaW5nIHBhdHRlcm4iCiBtc2dzdHIgIm9tZXQgZWxzIGZpdHhlcnMgY29pbmNpZGVudHMgYW1iIGVsIHBhdHLDsyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU2MAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU2MQogbXNnaWQgImV4Y2x1ZGUgcGF0dGVybnMgYXJlIHJlYWQgZnJvbSA8ZmlsZT4iCiBtc2dzdHIgImVscyBwYXRyb25zIGQnZXhjbHVzacOzIGVzIGxsZWdlaXhlbiBkZSA8Zml0eGVyPiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU2MworIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NAogbXNnaWQgInJlYWQgYWRkaXRpb25hbCBwZXItZGlyZWN0b3J5IGV4Y2x1ZGUgcGF0dGVybnMgaW4gPGZpbGU+IgogbXNnc3RyICJsbGVnZWl4IGVscyBwYXRyb25zIGFkZGljaW9uYWxzIGQnZXhjbHVzacOzIHBlciBkaXJlY3RvcmkgZW4gPGZpdHhlcj4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjYKIG1zZ2lkICJhZGQgdGhlIHN0YW5kYXJkIGdpdCBleGNsdXNpb25zIgogbXNnc3RyICJhZmVnZWl4IGxlcyBleGNsdXNpb25zIGVzdMOgbmRhcmRzIGRlIGdpdCIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU2OQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MAogbXNnaWQgIm1ha2UgdGhlIG91dHB1dCByZWxhdGl2ZSB0byB0aGUgcHJvamVjdCB0b3AgZGlyZWN0b3J5IgogbXNnc3RyICJmZXMgcXVlIGxhIHNvcnRpZGEgc2lndWkgcmVsYXRpdmEgYWwgZGlyZWN0b3JpIHN1cGVyaW9yIGRlbCBwcm9qZWN0ZSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MwogbXNnaWQgInJlY3Vyc2UgdGhyb3VnaCBzdWJtb2R1bGVzIgogbXNnc3RyICJpbmNsb3UgcmVjdXJzaXZhbWVudCBhbHMgc3VibcOyZHVscyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NQogbXNnaWQgImlmIGFueSA8ZmlsZT4gaXMgbm90IGluIHRoZSBpbmRleCwgdHJlYXQgdGhpcyBhcyBhbiBlcnJvciIKIG1zZ3N0ciAic2kgcXVhbHNldm9sIDxmaXR4ZXI+IG5vIMOpcyBlbiBsJ8OtbmRleCwgdHJhY3RhLWhvIGNvbSBhIGVycm9yIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTc1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc2CiBtc2dpZCAidHJlZS1pc2giCiBtc2dzdHIgImFyYnJlIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTc2CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc3CiBtc2dpZCAicHJldGVuZCB0aGF0IHBhdGhzIHJlbW92ZWQgc2luY2UgPHRyZWUtaXNoPiBhcmUgc3RpbGwgcHJlc2VudCIKIG1zZ3N0ciAiIgogInByZXTDqW4gcXVlIGVscyBjYW1pbnMgZWxpbWluYXRzIGRlc3Byw6lzIGRlIDxhcmJyZT4gZW5jYXJhIHNpZ3VpbiBwcmVzZW50cyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3OAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3OQogbXNnaWQgInNob3cgZGVidWdnaW5nIGRhdGEiCiBtc2dzdHIgIm1vc3RyYSBsZXMgZGFkZXMgZGUgZGVwdXJhY2nDsyIKIApAQCAtMTI4NDAsNyArMTU0NjIsNyBAQAogbXNnaWQgImRvIG5vdCBwcmludCByZW1vdGUgVVJMIgogbXNnc3RyICJubyBpbXByaW1laXhpcyBsJ1VSTCByZW1vdCIKIAotIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2MCBidWlsdGluL2xzLXJlbW90ZS5jOjYyIGJ1aWx0aW4vcmViYXNlLmM6ODg1CisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjYwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjIgYnVpbHRpbi9yZWJhc2UuYzoxNTE4CiBtc2dpZCAiZXhlYyIKIG1zZ3N0ciAiZXhlY3V0YWJsZSIKIApAQCAtMTI4NjQsMTEgKzE1NDg2LDExIEBACiBtc2dpZCAidGFrZSB1cmwuPGJhc2U+Lmluc3RlYWRPZiBpbnRvIGFjY291bnQiCiBtc2dzdHIgInRpbmd1ZXMgZW4gY29tcHRlIHVybC48YmFzZT4uaW5zdGVhZE9mIgogCi0jOiBidWlsdGluL2xzLXJlbW90ZS5jOjczCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjcyCiBtc2dpZCAiZXhpdCB3aXRoIGV4aXQgY29kZSAyIGlmIG5vIG1hdGNoaW5nIHJlZnMgYXJlIGZvdW5kIgogbXNnc3RyICJzdXJ0IGFtYiBjb2RpIGRlIHNvcnRpZGEgMiBzaSBubyBlcyB0cm9iYSBjYXAgcmVmZXLDqG5jaWEgY29pbmNpZGVudCIKIAotIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NQogbXNnaWQgInNob3cgdW5kZXJseWluZyByZWYgaW4gYWRkaXRpb24gdG8gdGhlIG9iamVjdCBwb2ludGVkIGJ5IGl0IgogbXNnc3RyICJtb3N0cmEgbGEgcmVmZXLDqG5jaWEgc3ViamFjZW50IGEgbcOpcyBkZSBsJ29iamVjdGUgcXVlIHNlbnlhbGkiCiAKQEAgLTEyOTE0LDI2MiArMTU1MzYsMjkxIEBACiBtc2dpZCAiZW1wdHkgbWJveDogJyVzJyIKIG1zZ3N0ciAibWJveCBidWl0OiDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1MgorIzogYnVpbHRpbi9tZXJnZS5jOjU1CiBtc2dpZCAiZ2l0IG1lcmdlIFs8b3B0aW9ucz5dIFs8Y29tbWl0Pi4uLl0iCiBtc2dzdHIgImdpdCBtZXJnZSBbPG9wY2lvbnM+XSBbPGNvbWlzc2nDsz4uLi5dIgogCi0jOiBidWlsdGluL21lcmdlLmM6NTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1NgogbXNnaWQgImdpdCBtZXJnZSAtLWFib3J0IgogbXNnc3RyICJnaXQgbWVyZ2UgLS1hYm9ydCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjU0CisjOiBidWlsdGluL21lcmdlLmM6NTcKIG1zZ2lkICJnaXQgbWVyZ2UgLS1jb250aW51ZSIKIG1zZ3N0ciAiZ2l0IG1lcmdlIC0tY29udGludWUiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTgKIG1zZ2lkICJzd2l0Y2ggYG0nIHJlcXVpcmVzIGEgdmFsdWUiCiBtc2dzdHIgImwnb3BjacOzIMKrbcK7IHJlcXVlcmVpeCB1biB2YWxvciIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE3NworIzogYnVpbHRpbi9tZXJnZS5jOjE0MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgcmVxdWlyZXMgYSB2YWx1ZSIKK21zZ3N0ciAibCdvcGNpw7Mgwqslc8K7IHJlcXVlcmVpeCB1biB2YWxvciIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCBtZXJnZSBzdHJhdGVneSAnJXMnLlxuIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IHRyb2JhciBsJ2VzdHJhdMOoZ2lhIGRlIGZ1c2nDsyDCqyVzwrsuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNzgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXZhaWxhYmxlIHN0cmF0ZWdpZXMgYXJlOiIKIG1zZ3N0ciAiTGVzIGVzdHJhdMOoZ2llcyBkaXNwb25pYmxlcyBzw7NuOiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE4MworIzogYnVpbHRpbi9tZXJnZS5jOjE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJBdmFpbGFibGUgY3VzdG9tIHN0cmF0ZWdpZXMgYXJlOiIKIG1zZ3N0ciAiTGVzIGVzdHJhdMOoZ2llcyBwZXJzb25hbGl0emFkZXMgZGlzcG9uaWJsZXMgc8OzbjoiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzQgYnVpbHRpbi9wdWxsLmM6MTQzCisjOiBidWlsdGluL21lcmdlLmM6MjQ0IGJ1aWx0aW4vcHVsbC5jOjE1MgogbXNnaWQgImRvIG5vdCBzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCiBtc2dzdHIgIm5vIG1vc3RyaXMgbGVzIGVzdGFkw61zdGlxdWVzIGRlIGRpZmVyw6huY2lhIGFsIGZpbmFsIGRlIGxhIGZ1c2nDsyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjIzNyBidWlsdGluL3B1bGwuYzoxNDYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDcgYnVpbHRpbi9wdWxsLmM6MTU1CiBtc2dpZCAic2hvdyBhIGRpZmZzdGF0IGF0IHRoZSBlbmQgb2YgdGhlIG1lcmdlIgogbXNnc3RyICJtb3N0cmEgbGVzIGVzdGFkw61zdGlxdWVzIGRlIGRpZmVyw6huY2lhIGFsIGZpbmFsIGRlIGxhIGZ1c2nDsyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjIzOCBidWlsdGluL3B1bGwuYzoxNDkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDggYnVpbHRpbi9wdWxsLmM6MTU4CiBtc2dpZCAiKHN5bm9ueW0gdG8gLS1zdGF0KSIKIG1zZ3N0ciAiKHNpbsOybmltIGRlIC0tc3RhdCkiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDAgYnVpbHRpbi9wdWxsLmM6MTUyCisjOiBidWlsdGluL21lcmdlLmM6MjUwIGJ1aWx0aW4vcHVsbC5jOjE2MQogbXNnaWQgImFkZCAoYXQgbW9zdCA8bj4pIGVudHJpZXMgZnJvbSBzaG9ydGxvZyB0byBtZXJnZSBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAiIgogImFmZWdlaXggKGNvbSBhIG3DoHhpbSA8bj4pIGVudHJhZGVzIGRlbCByZWdpc3RyZSBjdXJ0IGFsIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyAiCiAiZGUgZnVzacOzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQzIGJ1aWx0aW4vcHVsbC5jOjE1OAorIzogYnVpbHRpbi9tZXJnZS5jOjI1MyBidWlsdGluL3B1bGwuYzoxNjcKIG1zZ2lkICJjcmVhdGUgYSBzaW5nbGUgY29tbWl0IGluc3RlYWQgb2YgZG9pbmcgYSBtZXJnZSIKIG1zZ3N0ciAiY3JlYSB1bmEgw7puaWNhIGNvbWlzc2nDsyBlbiBsbG9jIGRlIGZ1c2lvbmFyIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQ1IGJ1aWx0aW4vcHVsbC5jOjE2MQorIzogYnVpbHRpbi9tZXJnZS5jOjI1NSBidWlsdGluL3B1bGwuYzoxNzAKIG1zZ2lkICJwZXJmb3JtIGEgY29tbWl0IGlmIHRoZSBtZXJnZSBzdWNjZWVkcyAoZGVmYXVsdCkiCiBtc2dzdHIgInJlYWxpdHphIHVuYSBjb21pc3Npw7Mgc2kgbGEgZnVzacOzIHTDqSDDqHhpdCAocGVyIGRlZmVjdGUpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQ3IGJ1aWx0aW4vcHVsbC5jOjE2NAorIzogYnVpbHRpbi9tZXJnZS5jOjI1NyBidWlsdGluL3B1bGwuYzoxNzMKIG1zZ2lkICJlZGl0IG1lc3NhZ2UgYmVmb3JlIGNvbW1pdHRpbmciCiBtc2dzdHIgImVkaXRhIGVsIG1pc3NhdGdlIGFiYW5zIGRlIGNvbWV0cmUiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTkKIG1zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQgKGRlZmF1bHQpIgogbXNnc3RyICJwZXJtZXQgbCdhdmFuw6cgcsOgcGlkIChwZXIgZGVmZWN0ZSkiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTAgYnVpbHRpbi9wdWxsLmM6MTcwCisjOiBidWlsdGluL21lcmdlLmM6MjYxIGJ1aWx0aW4vcHVsbC5jOjE4MAogbXNnaWQgImFib3J0IGlmIGZhc3QtZm9yd2FyZCBpcyBub3QgcG9zc2libGUiCiBtc2dzdHIgImF2b3J0YSBzaSBsJ2F2YW7DpyByw6BwaWQgbm8gw6lzIHBvc3NpYmxlIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU0IGJ1aWx0aW4vcHVsbC5jOjE3MworIzogYnVpbHRpbi9tZXJnZS5jOjI2NSBidWlsdGluL3B1bGwuYzoxODMKIG1zZ2lkICJ2ZXJpZnkgdGhhdCB0aGUgbmFtZWQgY29tbWl0IGhhcyBhIHZhbGlkIEdQRyBzaWduYXR1cmUiCiBtc2dzdHIgInZlcmlmaWNhIHF1ZSBsYSBjb21pc3Npw7MgYW5vbWVuYWRhIHRpbmd1aSB1bmEgc2lnbmF0dXJhIEdQRyB2w6BsaWRhIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU1IGJ1aWx0aW4vbm90ZXMuYzo3ODQgYnVpbHRpbi9wdWxsLmM6MTc3Ci0jOiBidWlsdGluL3JlYmFzZS5jOjg5OCBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODYgYnVpbHRpbi9yZXZlcnQuYzoxMTAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjYgYnVpbHRpbi9ub3Rlcy5jOjc4NyBidWlsdGluL3B1bGwuYzoxODcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTEyIGJ1aWx0aW4vcmViYXNlLmM6MTUzMSBidWlsdGluL3JldmVydC5jOjExNAogbXNnaWQgInN0cmF0ZWd5IgogbXNnc3RyICJlc3RyYXTDqGdpYSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NiBidWlsdGluL3B1bGwuYzoxNzgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjcgYnVpbHRpbi9wdWxsLmM6MTg4CiBtc2dpZCAibWVyZ2Ugc3RyYXRlZ3kgdG8gdXNlIgogbXNnc3RyICJlc3RyYXTDqGdpYSBkZSBmdXNpw7MgYSB1c2FyIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU3IGJ1aWx0aW4vcHVsbC5jOjE4MQorIzogYnVpbHRpbi9tZXJnZS5jOjI2OCBidWlsdGluL3B1bGwuYzoxOTEKIG1zZ2lkICJvcHRpb249dmFsdWUiCiBtc2dzdHIgIm9wY2nDsz12YWxvciIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1OCBidWlsdGluL3B1bGwuYzoxODIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjkgYnVpbHRpbi9wdWxsLmM6MTkyCiBtc2dpZCAib3B0aW9uIGZvciBzZWxlY3RlZCBtZXJnZSBzdHJhdGVneSIKIG1zZ3N0ciAib3BjacOzIHBlciBhIGwnZXN0cmF0w6hnaWEgZGUgZnVzacOzIHNlbGVjY2lvbmFkYSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI2MAorIzogYnVpbHRpbi9tZXJnZS5jOjI3MQogbXNnaWQgIm1lcmdlIGNvbW1pdCBtZXNzYWdlIChmb3IgYSBub24tZmFzdC1mb3J3YXJkIG1lcmdlKSIKIG1zZ3N0ciAibWlzc2F0Z2UgZGUgY29taXNzacOzIGRlIGZ1c2nDsyAocGVyIGEgdW5hIGZ1c2nDsyBubyBkJ2F2YW7DpyByw6BwaWQpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjY3CisjOiBidWlsdGluL21lcmdlLmM6Mjc4CiBtc2dpZCAiYWJvcnQgdGhlIGN1cnJlbnQgaW4tcHJvZ3Jlc3MgbWVyZ2UiCiBtc2dzdHIgImF2b3J0YSBsYSBmdXNpw7MgZW4gY3VycyBhY3R1YWwiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODAKKyMsIGZ1enp5Cittc2dpZCAiLS1hYm9ydCBidXQgbGVhdmUgaW5kZXggYW5kIHdvcmtpbmcgdHJlZSBhbG9uZSIKK21zZ3N0ciAicmVzdGFibGVpeCBIRUFELCBsJ8OtbmRleCBpIGwnYXJicmUgZGUgdHJlYmFsbCIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI4MgogbXNnaWQgImNvbnRpbnVlIHRoZSBjdXJyZW50IGluLXByb2dyZXNzIG1lcmdlIgogbXNnc3RyICJjb250aW51YSBsYSBmdXNpw7MgZW4gY3VycyBhY3R1YWwiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzEgYnVpbHRpbi9wdWxsLmM6MTg5CisjOiBidWlsdGluL21lcmdlLmM6Mjg0IGJ1aWx0aW4vcHVsbC5jOjE5OQogbXNnaWQgImFsbG93IG1lcmdpbmcgdW5yZWxhdGVkIGhpc3RvcmllcyIKIG1zZ3N0ciAicGVybWV0IGZ1c2lvbmFyIGhpc3TDsnJpZXMgbm8gcmVsYWNpb25hZGVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6Mjc3Ci1tc2dpZCAidmVyaWZ5IGNvbW1pdC1tc2cgaG9vayIKLW1zZ3N0ciAidmVyaWZpY2EgZWwgbGxpZ2FtIGRlIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyOTAKKyMsIGZ1enp5Cittc2dpZCAiYnlwYXNzIHByZS1tZXJnZS1jb21taXQgYW5kIGNvbW1pdC1tc2cgaG9va3MiCittc2dzdHIgImV2aXRhIGVscyBsbGlnYW1zIGRlIHByZWNvbWlzc2nDsyBpIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMwMgorIzogYnVpbHRpbi9tZXJnZS5jOjMwNwogbXNnaWQgImNvdWxkIG5vdCBydW4gc3Rhc2guIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGV4ZWN1dGFyIMKrc3Rhc2jCuy4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozMDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMTIKIG1zZ2lkICJzdGFzaCBmYWlsZWQiCiBtc2dzdHIgImwnwqtzdGFzaMK7IGhhIGZhbGxhdCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMxMgorIzogYnVpbHRpbi9tZXJnZS5jOjMxNwogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSB2YWxpZCBvYmplY3Q6ICVzIgogbXNnc3RyICJubyDDqXMgdW4gb2JqZWN0ZSB2w6BsaWQ6ICVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzM0IGJ1aWx0aW4vbWVyZ2UuYzozNTEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMzkgYnVpbHRpbi9tZXJnZS5jOjM1NgogbXNnaWQgInJlYWQtdHJlZSBmYWlsZWQiCiBtc2dzdHIgInJlYWQtdHJlZSBoYSBmYWxsYXQiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozODEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozODYKIG1zZ2lkICIgKG5vdGhpbmcgdG8gc3F1YXNoKSIKIG1zZ3N0ciAiIChyZXMgYSBmZXIgwqtzcXVhc2jCuykiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozOTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3F1YXNoIGNvbW1pdCAtLSBub3QgdXBkYXRpbmcgSEVBRFxuIgogbXNnc3RyICJDb21pc3Npw7MgwqtzcXVhc2jCuyAtLSBubyBzJ2VzdMOgIGFjdHVhbGl0emFudCBIRUFEXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo0NDIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo0NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gbWVyZ2UgbWVzc2FnZSAtLSBub3QgdXBkYXRpbmcgSEVBRFxuIgogbXNnc3RyICJDYXAgbWlzc2F0Z2UgZGUgZnVzacOzIC0tIG5vIHMnZXN0w6AgYWN0dWFsaXR6YW50IEhFQURcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjQ5MworIzogYnVpbHRpbi9tZXJnZS5jOjQ5OAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgY29tbWl0IgogbXNnc3RyICLCqyVzwrsgbm8gYXNzZW55YWxhIHVuYSBjb21pc3Npw7MiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1ODAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkIGJyYW5jaC4lcy5tZXJnZW9wdGlvbnMgc3RyaW5nOiAlcyIKIG1zZ3N0ciAiQ2FkZW5hIGJyYW5jaC4lcy5tZXJnZW9wdGlvbnMgaW5jb3JyZWN0YTogJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3MDEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3MDUKIG1zZ2lkICJOb3QgaGFuZGxpbmcgYW55dGhpbmcgb3RoZXIgdGhhbiB0d28gaGVhZHMgbWVyZ2UuIgogbXNnc3RyICJObyBzJ2VzdMOgIGdlc3Rpb25hbnQgcmVzIGEgcGFydCBkZSBsYSBmdXNpw7MgZGUgZG9zIGNhcHMuIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzE1CisjOiBidWlsdGluL21lcmdlLmM6NzE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gb3B0aW9uIGZvciBtZXJnZS1yZWN1cnNpdmU6IC1YJXMiCiBtc2dzdHIgIk9wY2nDsyBkZXNjb25lZ3VkYSBkZSBtZXJnZS1yZWN1cnNpdmU6IC1YJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3MzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlICVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzgyCisjOiBidWlsdGluL21lcmdlLmM6Nzg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZWFkIGZyb20gJyVzJyIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBsbGVnaXIgZGUgwqslc8K7IgogCi0jOiBidWlsdGluL21lcmdlLmM6NzkxCisjOiBidWlsdGluL21lcmdlLmM6Nzk1CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBjb21taXR0aW5nIG1lcmdlOyB1c2UgJ2dpdCBjb21taXQnIHRvIGNvbXBsZXRlIHRoZSBtZXJnZS5cbiIKIG1zZ3N0ciAiIgogIk5vIHMnZXN0w6AgY29tZXRlbnQgbGEgZnVzacOzOyB1c2V1ICdnaXQgY29tbWl0JyBwZXIgYSBjb21wbGV0YXIgbGEgZnVzacOzLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6Nzk3Ci0jLCBjLWZvcm1hdAorIzogYnVpbHRpbi9tZXJnZS5jOjgwMQorIywgZnV6enkKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIGEgY29tbWl0IG1lc3NhZ2UgdG8gZXhwbGFpbiB3aHkgdGhpcyBtZXJnZSBpcyBuZWNlc3NhcnksXG4iCiAiZXNwZWNpYWxseSBpZiBpdCBtZXJnZXMgYW4gdXBkYXRlZCB1cHN0cmVhbSBpbnRvIGEgdG9waWMgYnJhbmNoLlxuIgogIlxuIgotIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQsIGFuZCBhbiBlbXB0eSBtZXNzYWdlIGFib3J0c1xuIgotInRoZSBjb21taXQuXG4iCiBtc2dzdHIgIiIKICJJbnRyb2R1w691IHVuIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyBwZXIgYSBleHBsaWNhciBwZXIgcXXDqFxuIgogImFxdWVzdGEgZnVzacOzIMOpcyBuZWNlc3PDoHJpYSwgZXNwZWNpYWxtZW50IHNpIGZ1c2lvbmEgdW5hIGZvbnRcbiIKICJhY3R1YWxpdHphZGEgYSB1bmEgYnJhbmNhIHRlbcOgdGljYS5cbiIKICJcbiIKLSJTJ2lnbm9yYXJhbiBsZXMgbMOtbmllcyBxdWUgY29tZW5jaW4gYW1iICclYycsIGkgdW4gbWlzc2F0Z2UgYnVpdFxuIgorIlMnaWdub3JhcmFuIGxlcyBsw61uaWVzIHF1ZSBjb21lbmNpbiBhbWIgwqslY8K7LCBpIHVuIG1pc3NhdGdlIGJ1aXRcbiIKICJhdm9ydGEgbGEgY29taXNzacOzLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6ODMzCisjOiBidWlsdGluL21lcmdlLmM6ODA2CisjLCBmdXp6eQorbXNnaWQgIkFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCittc2dzdHIgImVkaXRhIGVsIG1pc3NhdGdlIGFiYW5zIGRlIGNvbWV0cmUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4MDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBpZ25vcmVkLCBhbmQgYW4gZW1wdHkgbWVzc2FnZSBhYm9ydHNcbiIKKyJ0aGUgY29tbWl0LlxuIgorbXNnc3RyICIiCisiSW50cm9kdcOvdSBlbCBtaXNzYXRnZSBkZSBjb21pc3Npw7MgZGVscyB2b3N0cmVzIGNhbnZpcy5cbiIKKyJTJ2lnbm9yYXJhbiBsZXMgbMOtbmllcyBxdWUgY29tZW5jaW4gYW1iIMKrJWPCuywgaSB1biBtaXNzYXRnZSBkZVxuIgorImNvbWlzc2nDsyBidWl0IGF2b3J0YSBsYSBjb21pc3Npw7MuXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4NjIKIG1zZ2lkICJFbXB0eSBjb21taXQgbWVzc2FnZS4iCiBtc2dzdHIgIkVsIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyDDqXMgYnVpdC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4NTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiV29uZGVyZnVsLlxuIgogbXNnc3RyICJNZXJhdmVsbMOzcy5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjkwNQorIzogYnVpbHRpbi9tZXJnZS5jOjkzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvbWF0aWMgbWVyZ2UgZmFpbGVkOyBmaXggY29uZmxpY3RzIGFuZCB0aGVuIGNvbW1pdCB0aGUgcmVzdWx0LlxuIgogbXNnc3RyICIiCiAiTGEgZnVzacOzIGF1dG9tw6B0aWNhIGhhIGZhbGxhdDsgYXJyZWdsZXUgZWxzIGNvbmZsaWN0ZXMgaSBkZXNwcsOpcyBjb21ldGV1IGVsICIKICJyZXN1bHRhdC5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjk0NAorIzogYnVpbHRpbi9tZXJnZS5jOjk3NwogbXNnaWQgIk5vIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAiTm8gaGkgaGEgY2FwIGJyYW5jYSBhY3R1YWwuIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ2CisjOiBidWlsdGluL21lcmdlLmM6OTc5CiBtc2dpZCAiTm8gcmVtb3RlIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJObyBoaSBoYSBjYXAgcmVtb3QgcGVyIGEgbGEgYnJhbmNhIGFjdHVhbC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5NDgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODEKIG1zZ2lkICJObyBkZWZhdWx0IHVwc3RyZWFtIGRlZmluZWQgZm9yIHRoZSBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgIk5vIGhpIGhhIGNhcCBmb250IHBlciBkZWZlY3RlIGRlZmluaWRhIHBlciBhIGxhIGJyYW5jYSBhY3R1YWwuIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTUzCisjOiBidWlsdGluL21lcmdlLmM6OTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHJlbW90ZS10cmFja2luZyBicmFuY2ggZm9yICVzIGZyb20gJXMiCiBtc2dzdHIgIk5vIGhpIGhhIGNhcCBicmFuY2EgYW1iIHNlZ3VpbWVudCByZW1vdCBwZXIgYSAlcyBkZSAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEwMTAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCB2YWx1ZSAnJXMnIGluIGVudmlyb25tZW50ICclcyciCiBtc2dzdHIgIlZhbG9yIGluY29ycmVjdGUgwqslc8K7IGVuIGwnZW50b3JuIMKrJXPCuyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjExMTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIGluICVzOiAlcyIKIG1zZ3N0ciAibm8gw6lzIHF1ZWxjb20gcXVlIHB1Z3VlbSBmdXNpb25hciBlbiAlczogJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTQ3CisjOiBidWlsdGluL21lcmdlLmM6MTE4MAogbXNnaWQgIm5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgogbXNnc3RyICJubyDDqXMgcXVlbGNvbSBxdWUgcHVndWVtIGZ1c2lvbmFyIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI1MAorIzogYnVpbHRpbi9tZXJnZS5jOjEyODMKIG1zZ2lkICItLWFib3J0IGV4cGVjdHMgbm8gYXJndW1lbnRzIgogbXNnc3RyICItLWFib3J0IG5vIGFjY2VwdGEgcGFyw6BtZXRyZXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjU0CisjOiBidWlsdGluL21lcmdlLmM6MTI4NwogbXNnaWQgIlRoZXJlIGlzIG5vIG1lcmdlIHRvIGFib3J0IChNRVJHRV9IRUFEIG1pc3NpbmcpLiIKIG1zZ3N0ciAiTm8gaGkgaGEgZnVzacOzIGEgYXZvcnRhciAobWFuY2EgTUVSR0VfSEVBRCkuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI2NgorIzogYnVpbHRpbi9tZXJnZS5jOjEyOTYKKyMsIGZ1enp5Cittc2dpZCAiLS1xdWl0IGV4cGVjdHMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLWFib3J0IG5vIGFjY2VwdGEgcGFyw6BtZXRyZXMiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzA5CiBtc2dpZCAiLS1jb250aW51ZSBleHBlY3RzIG5vIGFyZ3VtZW50cyIKIG1zZ3N0ciAiLS1jb250aW51ZSBubyBhY2NlcHRhIHBhcsOgbWV0cmVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI3MAorIzogYnVpbHRpbi9tZXJnZS5jOjEzMTMKIG1zZ2lkICJUaGVyZSBpcyBubyBtZXJnZSBpbiBwcm9ncmVzcyAoTUVSR0VfSEVBRCBtaXNzaW5nKS4iCiBtc2dzdHIgIk5vIGhpIGhhIGNhcCBmdXNpw7MgZW4gY3VycyAobWFuY2EgTUVSR0VfSEVBRCkuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI4NgorIzogYnVpbHRpbi9tZXJnZS5jOjEzMjkKIG1zZ2lkICIiCiAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG1lcmdlIChNRVJHRV9IRUFEIGV4aXN0cykuXG4iCiAiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSB5b3UgbWVyZ2UuIgpAQCAtMTMxNzcsNyArMTU4MjgsNyBAQAogIk5vIGhldSBjb25jbMOycyBsYSB2b3N0cmEgZnVzacOzIChNRVJHRV9IRUFEIGV4aXN0ZWl4KS5cbiIKICJDb21ldGV1IGVscyB2b3N0cmVzIGNhbnZpcyBhYmFucyBkZSBmdXNpb25hci4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjkzCisjOiBidWlsdGluL21lcmdlLmM6MTMzNgogbXNnaWQgIiIKICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgY2hlcnJ5LXBpY2sgKENIRVJSWV9QSUNLX0hFQUQgZXhpc3RzKS5cbiIKICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIHlvdSBtZXJnZS4iCkBAIC0xMzE4NSw5NCArMTU4MzYsOTkgQEAKICJObyBoZXUgY29uY2zDsnMgZWwgdm9zdHJlIMKrY2hlcnJ5IHBpY2vCuyAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdGVpeCkuXG4iCiAiQ29tZXRldSBlbHMgdm9zdHJlcyBjYW52aXMgYWJhbnMgZGUgZnVzaW9uYXIuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI5NgorIzogYnVpbHRpbi9tZXJnZS5jOjEzMzkKIG1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgY2hlcnJ5LXBpY2sgKENIRVJSWV9QSUNLX0hFQUQgZXhpc3RzKS4iCiBtc2dzdHIgIk5vIGhldSBjb25jbMOycyBlbCB2b3N0cmUgwqtjaGVycnkgcGlja8K7IChDSEVSUllfUElDS19IRUFEIGV4aXN0ZWl4KS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzA1CisjOiBidWlsdGluL21lcmdlLmM6MTM1MwogbXNnaWQgIllvdSBjYW5ub3QgY29tYmluZSAtLXNxdWFzaCB3aXRoIC0tbm8tZmYuIgogbXNnc3RyICJObyBwb2RldSBjb21iaW5hciAtLXNxdWFzaCBhbWIgLS1uby1mZi4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzEzCisjOiBidWlsdGluL21lcmdlLmM6MTM1NQorIywgZnV6enkKK21zZ2lkICJZb3UgY2Fubm90IGNvbWJpbmUgLS1zcXVhc2ggd2l0aCAtLWNvbW1pdC4iCittc2dzdHIgIk5vIHBvZGV1IGNvbWJpbmFyIC0tc3F1YXNoIGFtYiAtLW5vLWZmLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzNzEKIG1zZ2lkICJObyBjb21taXQgc3BlY2lmaWVkIGFuZCBtZXJnZS5kZWZhdWx0VG9VcHN0cmVhbSBub3Qgc2V0LiIKIG1zZ3N0ciAiIgogIk5vIGhpIGhhIHVuYSBjb21pc3Npw7MgZXNwZWNpZmljYWRhIGkgbWVyZ2UuZGVmYXVsdFRvVXBzdHJlYW0gbm8gZXN0w6AgIgogImVzdGFibGVydC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzMwCisjOiBidWlsdGluL21lcmdlLmM6MTM4OAogbXNnaWQgIlNxdWFzaCBjb21taXQgaW50byBlbXB0eSBoZWFkIG5vdCBzdXBwb3J0ZWQgeWV0IgogbXNnc3RyICJVbmEgY29taXNzacOzIMKrc3F1YXNowrsgYSB1biBIRUFEIGJ1aXQgZW5jYXJhIG5vIGVzIHBlcm1ldCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzkwCiBtc2dpZCAiTm9uLWZhc3QtZm9yd2FyZCBjb21taXQgZG9lcyBub3QgbWFrZSBzZW5zZSBpbnRvIGFuIGVtcHR5IGhlYWQiCiBtc2dzdHIgIlVuYSBjb21pc3Npw7Mgbm8gZCdhdmFuw6cgcsOgcGlkIG5vIHTDqSBzZW50aXQgYSB1biBIRUFEIGJ1aXQiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzM3CisjOiBidWlsdGluL21lcmdlLmM6MTM5NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyAtIG5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgogbXNnc3RyICIlcyAtIG5vIMOpcyB1bmEgY29zYSBxdWUgcHVndWVtIGZ1c2lvbmFyIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMzOQorIzogYnVpbHRpbi9tZXJnZS5jOjEzOTcKIG1zZ2lkICJDYW4gbWVyZ2Ugb25seSBleGFjdGx5IG9uZSBjb21taXQgaW50byBlbXB0eSBoZWFkIgogbXNnc3RyICJFcyBwb3QgZnVzaW9uYXIgbm9tw6lzIHVuYSBjb21pc3Npw7MgYSB1biBIRUFEIGJ1aXQiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDIxCisjOiBidWlsdGluL21lcmdlLmM6MTQ3NgogbXNnaWQgInJlZnVzaW5nIHRvIG1lcmdlIHVucmVsYXRlZCBoaXN0b3JpZXMiCiBtc2dzdHIgInMnZXN0w6AgcmVmdXNhbnQgZnVzaW9uYXIgaGlzdMOycmllcyBubyByZWxhY2lvbmFkZXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDMwCisjOiBidWlsdGluL21lcmdlLmM6MTQ4NQogbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZS4iCiBtc2dzdHIgIkphIGVzdMOgIGFsIGRpYS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDQwCisjOiBidWlsdGluL21lcmdlLmM6MTQ5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJVcGRhdGluZyAlcy4uJXNcbiIKIG1zZ3N0ciAiUydlc3RhbiBhY3R1YWxpdHphbnQgJXMuLiVzXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDgyCisjOiBidWlsdGluL21lcmdlLmM6MTUzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJUcnlpbmcgcmVhbGx5IHRyaXZpYWwgaW4taW5kZXggbWVyZ2UuLi5cbiIKIG1zZ3N0ciAiUydlc3TDoCBpbnRlbnRhbnQgdW5hIGZ1c2nDsyBtb2x0IHRyaXZpYWwgZW4gbCfDrW5kZXguLi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0ODkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vcGUuXG4iCiBtc2dzdHIgIk5vLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTUxNAorIzogYnVpbHRpbi9tZXJnZS5jOjE1NjkKIG1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIFllZWFoISIKIG1zZ3N0ciAiSmEgZXN0w6AgYWwgZGlhLiBFc3R1cGVuZCEiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTIwCisjOiBidWlsdGluL21lcmdlLmM6MTU3NQogbXNnaWQgIk5vdCBwb3NzaWJsZSB0byBmYXN0LWZvcndhcmQsIGFib3J0aW5nLiIKIG1zZ3N0ciAiTm8gw6lzIHBvc3NpYmxlIGF2YW7Dp2FyIHLDoHBpZGFtZW50LCBzJ2VzdMOgIGF2b3J0YW50LiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1NDMgYnVpbHRpbi9tZXJnZS5jOjE2MjIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTk4IGJ1aWx0aW4vbWVyZ2UuYzoxNjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJld2luZGluZyB0aGUgdHJlZSB0byBwcmlzdGluZS4uLlxuIgogbXNnc3RyICJTJ2VzdMOgIHJlYm9iaW5hbnQgbCdhcmJyZSBhIGxhIHByaXN0aW5hLi4uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQ3CisjOiBidWlsdGluL21lcmdlLmM6MTYwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJUcnlpbmcgbWVyZ2Ugc3RyYXRlZ3kgJXMuLi5cbiIKIG1zZ3N0ciAiUydlc3TDoCBpbnRlbnRhbnQgbCdlc3RyYXTDqGdpYSBkZSBmdXNpw7MgJXMuLi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIG1lcmdlIHN0cmF0ZWd5IGhhbmRsZWQgdGhlIG1lcmdlLlxuIgogbXNnc3RyICJDYXAgZXN0cmF0w6hnaWEgZGUgZnVzacOzIGhhIGdlc3Rpb25hdCBsYSBmdXNpw7MuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjE1CisjOiBidWlsdGluL21lcmdlLmM6MTY1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJNZXJnZSB3aXRoIHN0cmF0ZWd5ICVzIGZhaWxlZC5cbiIKIG1zZ3N0ciAiTCdlc3RyYXTDqGdpYSBkZSBmdXNpw7MgJXMgaGEgZmFsbGF0LlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYyNAorIzogYnVpbHRpbi9tZXJnZS5jOjE2NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXNpbmcgdGhlICVzIHRvIHByZXBhcmUgcmVzb2x2aW5nIGJ5IGhhbmQuXG4iCiBtc2dzdHIgIlMnZXN0w6AgdXNhbnQgZWwgJXMgcGVyIGEgcHJlcGFyYXIgbGEgcmVzb2x1Y2nDsyBhIG3DoC5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MzYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG9tYXRpYyBtZXJnZSB3ZW50IHdlbGw7IHN0b3BwZWQgYmVmb3JlIGNvbW1pdHRpbmcgYXMgcmVxdWVzdGVkXG4iCiBtc2dzdHIgIiIKQEAgLTEzMzYwLDMzICsxNjAxNiwzMyBAQAogbXNnaWQgInNldCBsYWJlbHMgZm9yIGZpbGUxL29yaWctZmlsZS9maWxlMiIKIG1zZ3N0ciAiZXN0YWJsZWl4IGxlcyBldGlxdWV0ZXMgcGVyIGEgZml0eGVyMS9maXR4ZXItb3JpZ2luYWwvZml0eGVyMiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo0NQorIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG9wdGlvbiAlcyIKIG1zZ3N0ciAib3BjacOzIGRlc2NvbmVndWRhICVzIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjUxCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbCdvYmplY3RlIMKrJXPCuyIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1NQorIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCBiYXNlLiBJZ25vcmluZyAlcy4iCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIGJhc2VzLiBJZ25vcmluZyAlcy4iCiBtc2dzdHJbMF0gIm5vIGVzIHBvdCBnZXN0aW9uYXIgbcOpcyBkJyVkIGJhc2UuIFMnZXN0w6AgaWdub3JhbnQgJXMuIgogbXNnc3RyWzFdICJubyBlcyBwb2RlbiBnZXN0aW9uYXIgbcOpcyBkZSAlZCBiYXNlcy4gUydlc3TDoCBpZ25vcmFudCAlcy4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjMKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjUKIG1zZ2lkICJub3QgaGFuZGxpbmcgYW55dGhpbmcgb3RoZXIgdGhhbiB0d28gaGVhZHMgbWVyZ2UuIgogbXNnc3RyICJubyBzJ2VzdMOgIGdlc3Rpb25hbnQgcmVzIGEgcGFydCBkZSBsYSBmdXNpw7MgZGUgZG9zIGNhcHMuIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjY5IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzEKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzQgYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSByZWYgJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCByZXNvbGRyZSBsYSByZWZlcsOobmNpYSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzcKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWVyZ2luZyAlcyB3aXRoICVzXG4iCiBtc2dzdHIgIlMnZXN0w6AgZnVzaW9uYW50ICVzIGFtYiAlc1xuIgpAQCAtMTMzOTksNyArMTYwNTUsNyBAQAogbXNnaWQgImlucHV0IGlzIE5VTCB0ZXJtaW5hdGVkIgogbXNnc3RyICJsJ2VudHJhZGEgw6lzIGFjYWJhZGEgYW1iIE5VTCIKIAotIzogYnVpbHRpbi9ta3RyZWUuYzoxNTUgYnVpbHRpbi93cml0ZS10cmVlLmM6MjUKKyM6IGJ1aWx0aW4vbWt0cmVlLmM6MTU1IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI2CiBtc2dpZCAiYWxsb3cgbWlzc2luZyBvYmplY3RzIgogbXNnc3RyICJwZXJtZXQgZWxzIG9iamVjdGVzIGFic2VudHMiCiAKQEAgLTEzNDA3LDE1OCArMTYwNjMsMTcwIEBACiBtc2dpZCAiYWxsb3cgY3JlYXRpb24gb2YgbW9yZSB0aGFuIG9uZSB0cmVlIgogbXNnc3RyICJwZXJtZXQgbGEgY3JlYWNpw7MgZGUgbcOpcyBkJ3VuIGFyYnJlIgogCi0jOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo4Ci1tc2dpZCAiZ2l0IG11bHRpLXBhY2staW5kZXggWy0tb2JqZWN0LWRpcj08ZGlyPl0gKHdyaXRlfHZlcmlmeSkiCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo5Cittc2dpZCAiIgorImdpdCBtdWx0aS1wYWNrLWluZGV4IFs8b3B0aW9ucz5dICh3cml0ZXx2ZXJpZnl8ZXhwaXJlfHJlcGFjayAtLWJhdGNoLSIKKyJzaXplPTxzaXplPikiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjEKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjI2CiBtc2dpZCAib2JqZWN0IGRpcmVjdG9yeSBjb250YWluaW5nIHNldCBvZiBwYWNrZmlsZSBhbmQgcGFjay1pbmRleCBwYWlycyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzozOQorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjkKK21zZ2lkICIiCisiZHVyaW5nIHJlcGFjaywgY29sbGVjdCBwYWNrLWZpbGVzIG9mIHNtYWxsZXIgc2l6ZSBpbnRvIGEgYmF0Y2ggdGhhdCBpcyAiCisibGFyZ2VyIHRoYW4gdGhpcyBzaXplIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjUwIGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NjcKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMiCiBtc2dzdHIgImhpIGhhIG1hc3NhIHBhcsOgbWV0cmVzIgogCi0jOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo0OAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bnJlY29nbml6ZWQgdmVyYjogJXMiCi1tc2dzdHIgInBhcsOgbWV0cmUgbm8gcmVjb25lZ3V0OiAlcyIKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjYwCittc2dpZCAiLS1iYXRjaC1zaXplIG9wdGlvbiBpcyBvbmx5IGZvciAncmVwYWNrJyBzdWJjb21tYW5kIgorbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBzdWJjb21tYW5kOiAlcyIKK21zZ3N0ciAic3Vib3JkcmUgZGVzY29uZWd1ZGE6ICVzIgorCisjOiBidWlsdGluL212LmM6MTgKIG1zZ2lkICJnaXQgbXYgWzxvcHRpb25zPl0gPHNvdXJjZT4uLi4gPGRlc3RpbmF0aW9uPiIKLW1zZ3N0ciAiZ2l0IG12IFs8b3BjaW9ucz5dIDxmb250Pi4uLiA8ZGVzdMOtPiIKK21zZ3N0ciAiZ2l0IG12IFs8b3BjaW9ucz5dIDxvcmlnZW4+Li4uIDxkZXN0w60+IgogCi0jOiBidWlsdGluL212LmM6ODIKKyM6IGJ1aWx0aW4vbXYuYzo4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJEaXJlY3RvcnkgJXMgaXMgaW4gaW5kZXggYW5kIG5vIHN1Ym1vZHVsZT8iCiBtc2dzdHIgIkVsIGRpcmVjdG9yaSAlcyDDqXMgZW4gbCfDrW5kZXggaSBubyBoaSBoYSBjYXAgc3VibcOyZHVsPyIKIAotIzogYnVpbHRpbi9tdi5jOjg0CisjOiBidWlsdGluL212LmM6ODUKIG1zZ2lkICJQbGVhc2Ugc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKIG1zZ3N0ciAiIgogIkZldSDCq3N0YWdlwrsgZGVscyB2b3N0cmVzIGNhbnZpcyBhIC5naXRtb2R1bGVzIG8gZmV1IMKrc3Rhc2jCuyBkZWxzIG1hdGVpeG9zICIKICJwZXIgYSBwcm9jZWRpciIKIAotIzogYnVpbHRpbi9tdi5jOjEwMgorIzogYnVpbHRpbi9tdi5jOjEwMwogIywgYy1mb3JtYXQKIG1zZ2lkICIlLipzIGlzIGluIGluZGV4IgogbXNnc3RyICIlLipzIMOpcyBlbiBsJ8OtbmRleCIKIAotIzogYnVpbHRpbi9tdi5jOjEyNAorIzogYnVpbHRpbi9tdi5jOjEyNQogbXNnaWQgImZvcmNlIG1vdmUvcmVuYW1lIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAiZm9yw6dhIGVsIG1vdmltZW50IC8gY2FudmkgZGUgbm9tIGVuY2FyYSBxdWUgZWwgZGVzdMOtIGV4aXN0ZWl4aSIKIAotIzogYnVpbHRpbi9tdi5jOjEyNgorIzogYnVpbHRpbi9tdi5jOjEyNwogbXNnaWQgInNraXAgbW92ZS9yZW5hbWUgZXJyb3JzIgogbXNnc3RyICJvbWV0IGVscyBlcnJvcnMgZGUgbW92aW1lbnQgLyBjYW52aSBkZSBub20iCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNjgKKyM6IGJ1aWx0aW4vbXYuYzoxNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzdGluYXRpb24gJyVzJyBpcyBub3QgYSBkaXJlY3RvcnkiCiBtc2dzdHIgImVsIGRlc3TDrSDCqyVzwrsgbm8gw6lzIHVuIGRpcmVjdG9yaSIKIAotIzogYnVpbHRpbi9tdi5jOjE3OQorIzogYnVpbHRpbi9tdi5jOjE4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDaGVja2luZyByZW5hbWUgb2YgJyVzJyB0byAnJXMnXG4iCiBtc2dzdHIgIlMnZXN0w6AgY29tcHJvdmFudCBlbCBjYW52aSBkZSBub20gZGUgwqslc8K7IGEgwqslc8K7XG4iCiAKLSM6IGJ1aWx0aW4vbXYuYzoxODMKKyM6IGJ1aWx0aW4vbXYuYzoxODQKIG1zZ2lkICJiYWQgc291cmNlIgotbXNnc3RyICJmb250IGluY29ycmVjdGEiCittc2dzdHIgIm9yaWdlbiBpbmNvcnJlY3RlIgogCi0jOiBidWlsdGluL212LmM6MTg2CisjOiBidWlsdGluL212LmM6MTg3CiBtc2dpZCAiY2FuIG5vdCBtb3ZlIGRpcmVjdG9yeSBpbnRvIGl0c2VsZiIKIG1zZ3N0ciAibm8gZXMgcG90IG1vdXJlIHVuIGRpcmVjdG9yaSBhIGRpbnMgZCdlbGwgbWF0ZWl4IgogCi0jOiBidWlsdGluL212LmM6MTg5CisjOiBidWlsdGluL212LmM6MTkwCiBtc2dpZCAiY2Fubm90IG1vdmUgZGlyZWN0b3J5IG92ZXIgZmlsZSIKIG1zZ3N0ciAibm8gZXMgcG90IG1vdXJlIHVuIGRpcmVjdG9yaSBzb2JyZSB1biBmaXR4ZXIiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxOTgKKyM6IGJ1aWx0aW4vbXYuYzoxOTkKIG1zZ2lkICJzb3VyY2UgZGlyZWN0b3J5IGlzIGVtcHR5IgotbXNnc3RyICJlbCBkaXJlY3RvcmkgZm9udCBlc3TDoCBidWl0IgorbXNnc3RyICJlbCBkaXJlY3RvcmkgZCdvcmlnZW4gZXN0w6AgYnVpdCIKIAotIzogYnVpbHRpbi9tdi5jOjIyMworIzogYnVpbHRpbi9tdi5jOjIyNAogbXNnaWQgIm5vdCB1bmRlciB2ZXJzaW9uIGNvbnRyb2wiCiBtc2dzdHIgIm5vIGVzdMOgIHNvdGEgY29udHJvbCBkZSB2ZXJzaW9ucyIKIAotIzogYnVpbHRpbi9tdi5jOjIyNgorIzogYnVpbHRpbi9tdi5jOjIyNwogbXNnaWQgImRlc3RpbmF0aW9uIGV4aXN0cyIKIG1zZ3N0ciAiZWwgZGVzdMOtIGV4aXN0ZWl4IgogCi0jOiBidWlsdGluL212LmM6MjM0CisjOiBidWlsdGluL212LmM6MjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm92ZXJ3cml0aW5nICclcyciCiBtc2dzdHIgInMnZXN0w6Agc29icmVlc2NyaXZpbnQgwqslc8K7IgogCi0jOiBidWlsdGluL212LmM6MjM3CisjOiBidWlsdGluL212LmM6MjM4CiBtc2dpZCAiQ2Fubm90IG92ZXJ3cml0ZSIKIG1zZ3N0ciAiTm8gZXMgcG90IHNvYnJlZXNjcml1cmUiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNDAKKyM6IGJ1aWx0aW4vbXYuYzoyNDEKIG1zZ2lkICJtdWx0aXBsZSBzb3VyY2VzIGZvciB0aGUgc2FtZSB0YXJnZXQiCi1tc2dzdHIgIm3Dumx0aXBsZXMgZm9udHMgcGVyIGFsIG1hdGVpeCBkZXN0w60iCittc2dzdHIgIm3Dumx0aXBsZXMgb3LDrWdlbnMgcGVyIGFsIG1hdGVpeCBkZXN0w60iCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNDIKKyM6IGJ1aWx0aW4vbXYuYzoyNDMKIG1zZ2lkICJkZXN0aW5hdGlvbiBkaXJlY3RvcnkgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgImVsIGRpcmVjdG9yaSBkZXN0w60gbm8gZXhpc3RlaXgiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNDkKKyM6IGJ1aWx0aW4vbXYuYzoyNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMsIHNvdXJjZT0lcywgZGVzdGluYXRpb249JXMiCiBtc2dzdHIgIiVzLCBvcmlnZW49JXMsIGRlc3TDrT0lcyIKIAotIzogYnVpbHRpbi9tdi5jOjI3MAorIzogYnVpbHRpbi9tdi5jOjI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW5hbWluZyAlcyB0byAlc1xuIgogbXNnc3RyICJTJ2VzdMOgIGNhbnZpYW50IGVsIG5vbSBkZSAlcyBhICVzXG4iCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNzYgYnVpbHRpbi9yZW1vdGUuYzo3MTcgYnVpbHRpbi9yZXBhY2suYzo1MTEKKyM6IGJ1aWx0aW4vbXYuYzoyNzcgYnVpbHRpbi9yZW1vdGUuYzo3MTYgYnVpbHRpbi9yZXBhY2suYzo1MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVuYW1pbmcgJyVzJyBmYWlsZWQiCiBtc2dzdHIgImVsIGNhbnZpIGRlbCBub20gZGUgwqslc8K7IGhhIGZhbGxhdCIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NQorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQwMwogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSA8Y29tbWl0Pi4uLiIKIG1zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs8b3BjaW9ucz5dIDxjb21pc3Npw7M+Li4uIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6MzU2CisjOiBidWlsdGluL25hbWUtcmV2LmM6NDA0CiBtc2dpZCAiZ2l0IG5hbWUtcmV2IFs8b3B0aW9ucz5dIC0tYWxsIgogbXNnc3RyICJnaXQgbmFtZS1yZXYgWzxvcGNpb25zPl0gLS1hbGwiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzozNTcKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MDUKIG1zZ2lkICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gLS1zdGRpbiIKIG1zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs8b3BjaW9ucz5dIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTMKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0NjIKIG1zZ2lkICJwcmludCBvbmx5IG5hbWVzIChubyBTSEEtMSkiCiBtc2dzdHIgImltcHJpbWVpeCBub23DqXMgZWxzIG5vbXMgKHNlbnNlIFNIQS0xKSIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxNAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2MwogbXNnaWQgIm9ubHkgdXNlIHRhZ3MgdG8gbmFtZSB0aGUgY29tbWl0cyIKIG1zZ3N0ciAibm9tw6lzIHVzYSBsZXMgZXRpcXVldGVzIHBlciBhIGFub21lbmFyIGxlcyBjb21pc3Npb25zIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE2CisjOiBidWlsdGluL25hbWUtcmV2LmM6NDY1CiBtc2dpZCAib25seSB1c2UgcmVmcyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgIm5vbcOpcyB1c2EgbGVzIHJlZmVyw6huY2llcyBxdWUgY29pbmNpZGVpeGluIGFtYiA8cGF0csOzPiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxOAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NwogbXNnaWQgImlnbm9yZSByZWZzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKIG1zZ3N0ciAiaWdub3JhIGxlcyByZWZlcsOobmNpZXMgcXVlIGNvaW5jaWRlaXhpbiBhbWIgPHBhdHLDsz4iCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjAKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0NjkKIG1zZ2lkICJsaXN0IGFsbCBjb21taXRzIHJlYWNoYWJsZSBmcm9tIGFsbCByZWZzIgogbXNnc3RyICJsbGlzdGEgdG90ZXMgbGVzIGNvbWlzc2lvbnMgYWJhc3RhYmxlcyBkZSB0b3RlcyBsZXMgcmVmZXLDqG5jaWVzIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIxCisjOiBidWlsdGluL25hbWUtcmV2LmM6NDcwCiBtc2dpZCAicmVhZCBmcm9tIHN0ZGluIgogbXNnc3RyICJsbGVnZWl4IGRlIHN0ZGluIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIyCisjOiBidWlsdGluL25hbWUtcmV2LmM6NDcxCiBtc2dpZCAiYWxsb3cgdG8gcHJpbnQgYHVuZGVmaW5lZGAgbmFtZXMgKGRlZmF1bHQpIgogbXNnc3RyICJwZXJtZXQgaW1wcmltaXIgZWxzIG5vbXMgYHVuZGVmaW5lZGAgKHBlciBkZWZlY3RlKSIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQyOAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ3NwogbXNnaWQgImRlcmVmZXJlbmNlIHRhZ3MgaW4gdGhlIGlucHV0IChpbnRlcm5hbCB1c2UpIgogbXNnc3RyICJkZXNyZWZlcmVuY2lhIGxlcyBldGlxdWV0ZXMgZW4gbCdlbnRyYWRhICjDunMgaW50ZXJuKSIKIApAQCAtMTM3MDcsMTQgKzE2Mzc1LDE0IEBACiBtc2dpZCAidGhlIG5vdGUgY29udGVudHMgaGF2ZSBiZWVuIGxlZnQgaW4gJXMiCiBtc2dzdHIgInMnaGFuIGRlaXhhdCBlbHMgY29udGluZ3V0cyBkZSBsYSBub3RhIGVuICVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6MjQyIGJ1aWx0aW4vdGFnLmM6NTEzCisjOiBidWlsdGluL25vdGVzLmM6MjQyIGJ1aWx0aW4vdGFnLmM6NTMyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuIG9yIHJlYWQgJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciBvIGxsZWdpciDCqyVzwrsiCiAKICM6IGJ1aWx0aW4vbm90ZXMuYzoyNjMgYnVpbHRpbi9ub3Rlcy5jOjMxMyBidWlsdGluL25vdGVzLmM6MzE1Ci0jOiBidWlsdGluL25vdGVzLmM6MzgzIGJ1aWx0aW4vbm90ZXMuYzo0MzggYnVpbHRpbi9ub3Rlcy5jOjUyNAotIzogYnVpbHRpbi9ub3Rlcy5jOjUyOSBidWlsdGluL25vdGVzLmM6NjA3IGJ1aWx0aW4vbm90ZXMuYzo2NjkKKyM6IGJ1aWx0aW4vbm90ZXMuYzozODMgYnVpbHRpbi9ub3Rlcy5jOjQzOCBidWlsdGluL25vdGVzLmM6NTI2CisjOiBidWlsdGluL25vdGVzLmM6NTMxIGJ1aWx0aW4vbm90ZXMuYzo2MTAgYnVpbHRpbi9ub3Rlcy5jOjY3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiByZXNvbGRyZSDCqyVzwrsgY29tIGEgcmVmZXLDqG5jaWEgdsOgbGlkYS4iCkBAIC0xMzc0NywzOCArMTY0MTUsMzggQEAKIG1zZ2lkICJyZWZ1c2luZyB0byAlcyBub3RlcyBpbiAlcyAob3V0c2lkZSBvZiByZWZzL25vdGVzLykiCiBtc2dzdHIgInMnZXN0w6AgcmVmdXNhbnQgJXMgbGVzIG5vdGVzIGVuICVzIChmb3JhIGRlIHJlZnMvbm90ZXMvKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjM3NiBidWlsdGluL25vdGVzLmM6NDMxIGJ1aWx0aW4vbm90ZXMuYzo1MDcKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MTkgYnVpbHRpbi9ub3Rlcy5jOjU5NSBidWlsdGluL25vdGVzLmM6NjYyCi0jOiBidWlsdGluL25vdGVzLmM6ODEyIGJ1aWx0aW4vbm90ZXMuYzo5NTkgYnVpbHRpbi9ub3Rlcy5jOjk4MAorIzogYnVpbHRpbi9ub3Rlcy5jOjM3NiBidWlsdGluL25vdGVzLmM6NDMxIGJ1aWx0aW4vbm90ZXMuYzo1MDkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MjEgYnVpbHRpbi9ub3Rlcy5jOjU5OCBidWlsdGluL25vdGVzLmM6NjY1CisjOiBidWlsdGluL25vdGVzLmM6ODE1IGJ1aWx0aW4vbm90ZXMuYzo5NjMgYnVpbHRpbi9ub3Rlcy5jOjk4NQogbXNnaWQgInRvbyBtYW55IHBhcmFtZXRlcnMiCiBtc2dzdHIgIm1hc3NhIHBhcsOgbWV0cmVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6Mzg5IGJ1aWx0aW4vbm90ZXMuYzo2NzUKKyM6IGJ1aWx0aW4vbm90ZXMuYzozODkgYnVpbHRpbi9ub3Rlcy5jOjY3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBub3RlIGZvdW5kIGZvciBvYmplY3QgJXMuIgogbXNnc3RyICJubyBzJ2hhIHRyb2JhdCBjYXAgbm90YSBwZXIgYSBsJ29iamVjdGUgJXMuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDEwIGJ1aWx0aW4vbm90ZXMuYzo1NzMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTAgYnVpbHRpbi9ub3Rlcy5jOjU3NgogbXNnaWQgIm5vdGUgY29udGVudHMgYXMgYSBzdHJpbmciCiBtc2dzdHIgImFub3RhIGVscyBjb250aW5ndXRzIGNvbSBhIGNhZGVuYSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxMyBidWlsdGluL25vdGVzLmM6NTc2CisjOiBidWlsdGluL25vdGVzLmM6NDEzIGJ1aWx0aW4vbm90ZXMuYzo1NzkKIG1zZ2lkICJub3RlIGNvbnRlbnRzIGluIGEgZmlsZSIKIG1zZ3N0ciAiYW5vdGEgZWxzIGNvbnRpbmd1dHMgZW4gdW4gZml0eGVyIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDE2IGJ1aWx0aW4vbm90ZXMuYzo1NzkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTYgYnVpbHRpbi9ub3Rlcy5jOjU4MgogbXNnaWQgInJldXNlIGFuZCBlZGl0IHNwZWNpZmllZCBub3RlIG9iamVjdCIKIG1zZ3N0ciAicmV1c2EgaSBlZGl0YSBsJ29iamVjdGUgZGUgbm90YSBlc3BlY2lmaWNhdCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxOSBidWlsdGluL25vdGVzLmM6NTgyCisjOiBidWlsdGluL25vdGVzLmM6NDE5IGJ1aWx0aW4vbm90ZXMuYzo1ODUKIG1zZ2lkICJyZXVzZSBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCiBtc2dzdHIgInJldXNhIGwnb2JqZWN0ZSBkZSBub3RhIGVzcGVjaWZpY2F0IgogCi0jOiBidWlsdGluL25vdGVzLmM6NDIyIGJ1aWx0aW4vbm90ZXMuYzo1ODUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MjIgYnVpbHRpbi9ub3Rlcy5jOjU4OAogbXNnaWQgImFsbG93IHN0b3JpbmcgZW1wdHkgbm90ZSIKIG1zZ3N0ciAicGVybWV0IGwnZW1tYWdhdHplbWF0Z2UgZCd1bmEgbm90YSBidWlkYSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQyMyBidWlsdGluL25vdGVzLmM6NDk0CisjOiBidWlsdGluL25vdGVzLmM6NDIzIGJ1aWx0aW4vbm90ZXMuYzo0OTYKIG1zZ2lkICJyZXBsYWNlIGV4aXN0aW5nIG5vdGVzIgogbXNnc3RyICJyZWVtcGxhw6dhIGxlcyBub3RlcyBleGlzdGVudHMiCiAKQEAgLTEzNzg5LDMyICsxNjQ1NywzMiBAQAogImV4aXN0aW5nIG5vdGVzIgogbXNnc3RyICIiCiAiTm8gZXMgcG9kZW4gYWZlZ2lyIGxlcyBub3Rlcy4gUydoYW4gdHJvYmF0IG5vdGVzIGV4aXN0ZW50cyBkZSBsJ29iamVjdGUgJXMuICIKLSJVc2V1ICctZicgcGVyIGEgc29icmVlc2NyaXVyZSBsZXMgbm90ZXMgZXhpc3RlbnRzLiIKKyJVc2V1ICctZicgcGVyIGEgc29icmVlc2NyaXVyZSBsZXMgbm90ZXMgZXhpc3RlbnRzIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDYzIGJ1aWx0aW4vbm90ZXMuYzo1NDIKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NjMgYnVpbHRpbi9ub3Rlcy5jOjU0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJPdmVyd3JpdGluZyBleGlzdGluZyBub3RlcyBmb3Igb2JqZWN0ICVzXG4iCiBtc2dzdHIgIlMnZXN0YW4gc29icmVlc2NyaXZpbnQgbGVzIG5vdGVzIGV4aXN0ZW50cyBkZSBsJ29iamVjdGUgJXNcbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ3NCBidWlsdGluL25vdGVzLmM6NjM0IGJ1aWx0aW4vbm90ZXMuYzo4OTkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NzUgYnVpbHRpbi9ub3Rlcy5jOjYzNyBidWlsdGluL25vdGVzLmM6OTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nIG5vdGUgZm9yIG9iamVjdCAlc1xuIgogbXNnc3RyICJTJ2VzdMOgIGVsaW1pbmFudCBsYSBub3RhIGRlIGwnb2JqZWN0ZSAlc1xuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDk1CisjOiBidWlsdGluL25vdGVzLmM6NDk3CiBtc2dpZCAicmVhZCBvYmplY3RzIGZyb20gc3RkaW4iCiBtc2dzdHIgImxsZWdlaXggZWxzIG9iamVjdGVzIGRlcyBkZSBzdGRpbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ5NworIzogYnVpbHRpbi9ub3Rlcy5jOjQ5OQogbXNnaWQgImxvYWQgcmV3cml0aW5nIGNvbmZpZyBmb3IgPGNvbW1hbmQ+IChpbXBsaWVzIC0tc3RkaW4pIgogbXNnc3RyICIiCiAiY2FycmVnYSBsYSBjb25maWd1cmFjacOzIGRlIHJlZXNjcmlwdHVyYSBwZXIgYSA8b3JkcmU+IChpbXBsaWNhIC0tc3RkaW4pIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTE1CisjOiBidWlsdGluL25vdGVzLmM6NTE3CiBtc2dpZCAidG9vIGZldyBwYXJhbWV0ZXJzIgogbXNnc3RyICJoaSBoYSBtYXNzYSBwb2NzIHBhcsOgbWV0cmVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTM2CisjOiBidWlsdGluL25vdGVzLmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgY29weSBub3Rlcy4gRm91bmQgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlcy4gVXNlICctZicgdG8gb3ZlcndyaXRlICIKQEAgLTEzODIzLDEyICsxNjQ5MSwxMiBAQAogIk5vIGVzIHBvZGVuIGNvcGlhciBsZXMgbm90ZXMuIFMnaGFuIHRyb2JhdCBub3RlcyBleGlzdGVudHMgZGUgbCdvYmplY3RlICVzLiAiCiAiVXNldSAnLWYnIHBlciBhIHNvYnJlZXNjcml1cmUgbGVzIG5vdGVzIGV4aXN0ZW50cy4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1NDgKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBub3RlcyBvbiBzb3VyY2Ugb2JqZWN0ICVzLiBDYW5ub3QgY29weS4iCiBtc2dzdHIgIm1hbnF1ZW4gbm90ZXMgYSBsJ29iamVjdGUgZm9udCAlcy4gTm8gZXMgcG90IGNvcGlhci4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2MDAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSAtbS8tRi8tYy8tQyBvcHRpb25zIGhhdmUgYmVlbiBkZXByZWNhdGVkIGZvciB0aGUgJ2VkaXQnIHN1YmNvbW1hbmQuXG4iCkBAIC0xMzgzNyw1MyArMTY1MDUsNTMgQEAKICJFcyBkZXNhY29uc2VsbGVuIGxlcyBvcGNpb25zIC1tLy1GLy1jLy1DIGVuIGZhdm9yIGRlIGxhIHN1Ym9yZHJlICdlZGl0Jy5cbiIKICJVc2V1IMKrZ2l0IG5vdGVzIGFkZCAtZiAtbS8tRi8tYy8tQ8K7IGVuIGxsb2MgZCdhaXjDsi5cbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjY5NQorIzogYnVpbHRpbi9ub3Rlcy5jOjY5OAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgcmVmIE5PVEVTX01FUkdFX1BBUlRJQUwiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gc3VwcmltaXIgbGEgcmVmZXLDqG5jaWEgTk9URVNfTUVSR0VfUEFSVElBTCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjY5NworIzogYnVpbHRpbi9ub3Rlcy5jOjcwMAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgcmVmIE5PVEVTX01FUkdFX1JFRiIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBzdXByaW1pciBsYSByZWZlcsOobmNpYSBOT1RFU19NRVJHRV9SRUYiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2OTkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDIKIG1zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICdnaXQgbm90ZXMgbWVyZ2UnIHdvcmt0cmVlIgogbXNnc3RyICIiCiAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBlbGltaW5hciBsJ2FyYnJlIGRlIHRyZWJhbGwgZGUgJ2dpdCBub3RlcyBtZXJnZSciCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MTkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjIKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgbGEgcmVmZXLDqG5jaWEgTk9URVNfTUVSR0VfUEFSVElBTCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjcyMQorIzogYnVpbHRpbi9ub3Rlcy5jOjcyNAogbXNnaWQgImNvdWxkIG5vdCBmaW5kIGNvbW1pdCBmcm9tIE5PVEVTX01FUkdFX1BBUlRJQUwuIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHRyb2JhciBjYXAgY29taXNzacOzIGRlIE5PVEVTX01FUkdFX1BBUlRJQUwuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzIzCisjOiBidWlsdGluL25vdGVzLmM6NzI2CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbW1pdCBmcm9tIE5PVEVTX01FUkdFX1BBUlRJQUwuIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsYSBjb21pc3Npw7MgZGUgTk9URVNfTUVSR0VfUEFSVElBTC4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MzYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MzkKIG1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSBOT1RFU19NRVJHRV9SRUYiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gcmVzb2xkcmUgTk9URVNfTUVSR0VfUkVGIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzM5CisjOiBidWlsdGluL25vdGVzLmM6NzQyCiBtc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplIG5vdGVzIG1lcmdlIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGZpbmFsaXR6YXIgbGEgZnVzacOzIGRlIG5vdGVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzY1CisjOiBidWlsdGluL25vdGVzLmM6NzY4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gbm90ZXMgbWVyZ2Ugc3RyYXRlZ3kgJXMiCiBtc2dzdHIgImVzdHJhdMOoZ2lhIGRlIGZ1c2nDsyBkZSBub3RlcyBkZXNjb25lZ3VkYSAlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4MQorIzogYnVpbHRpbi9ub3Rlcy5jOjc4NAogbXNnaWQgIkdlbmVyYWwgb3B0aW9ucyIKIG1zZ3N0ciAiT3BjaW9ucyBnZW5lcmFscyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4MworIzogYnVpbHRpbi9ub3Rlcy5jOjc4NgogbXNnaWQgIk1lcmdlIG9wdGlvbnMiCiBtc2dzdHIgIk9wY2lvbnMgZGUgZnVzacOzIgogCi0jOiBidWlsdGluL25vdGVzLmM6Nzg1CisjOiBidWlsdGluL25vdGVzLmM6Nzg4CiBtc2dpZCAiIgogInJlc29sdmUgbm90ZXMgY29uZmxpY3RzIHVzaW5nIHRoZSBnaXZlbiBzdHJhdGVneSAobWFudWFsL291cnMvdGhlaXJzL3VuaW9uLyIKICJjYXRfc29ydF91bmlxKSIKQEAgLTEzODkxLDQ4ICsxNjU1OSw0OCBAQAogInJlc29sIGVscyBjb25mbGljdGVzIGRlIG5vdGEgdXNhbnQgbCdlc3RyYXTDqGdpYSBkb25hZGEgKG1hbnVhbC9vdXJzL3RoZWlycy8iCiAidW5pb24vY2F0X3NvcnRfdW5pcSkiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTAKIG1zZ2lkICJDb21taXR0aW5nIHVubWVyZ2VkIG5vdGVzIgogbXNnc3RyICJTJ2VzdGFuIGNvbWV0ZW50IGxlcyBub3RlcyBzZW5zZSBmdXNpb25hciIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4OQorIzogYnVpbHRpbi9ub3Rlcy5jOjc5MgogbXNnaWQgImZpbmFsaXplIG5vdGVzIG1lcmdlIGJ5IGNvbW1pdHRpbmcgdW5tZXJnZWQgbm90ZXMiCiBtc2dzdHIgImZpbmFsaXR6YSBsYSBmdXNpw7MgZGUgbm90ZXMgY29tZXRlbnQgbGVzIG5vdGVzIHNlbnNlIGZ1c2lvbmFyIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzkxCisjOiBidWlsdGluL25vdGVzLmM6Nzk0CiBtc2dpZCAiQWJvcnRpbmcgbm90ZXMgbWVyZ2UgcmVzb2x1dGlvbiIKIG1zZ3N0ciAiUydlc3TDoCBhdm9ydGFudCBsYSByZXNvbHVjacOzIGRlIGZ1c2nDsyBkZSBub3RlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc5MworIzogYnVpbHRpbi9ub3Rlcy5jOjc5NgogbXNnaWQgImFib3J0IG5vdGVzIG1lcmdlIgogbXNnc3RyICJhdm9ydGEgbGEgZnVzacOzIGRlIG5vdGVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODA0CisjOiBidWlsdGluL25vdGVzLmM6ODA3CiBtc2dpZCAiY2Fubm90IG1peCAtLWNvbW1pdCwgLS1hYm9ydCBvciAtcy8tLXN0cmF0ZWd5IgogbXNnc3RyICJubyBlcyBwb3QgY29tYmluYXIgLS1jb21taXQsIC0tYWJvcnQgaSAtcy8tLXN0cmF0ZWd5IgogCi0jOiBidWlsdGluL25vdGVzLmM6ODA5CisjOiBidWlsdGluL25vdGVzLmM6ODEyCiBtc2dpZCAibXVzdCBzcGVjaWZ5IGEgbm90ZXMgcmVmIHRvIG1lcmdlIgogbXNnc3RyICJjYWwgZXNwZWNpZmljYXIgdW5hIHJlZmVyw6huY2lhIGRlIG5vdGVzIGEgZnVzaW9uYXIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4MzMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biAtcy8tLXN0cmF0ZWd5OiAlcyIKIG1zZ3N0ciAiLXMvLS1zdHJhdGVneSBkZXNjb25lZ3VkYTogJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSBub3RlcyBtZXJnZSBpbnRvICVzIGlzIGFscmVhZHkgaW4tcHJvZ3Jlc3MgYXQgJXMiCiBtc2dzdHIgInVuYSBmdXNpw7MgZGUgbm90ZXMgYSAlcyBqYSBlc3TDoCBlbiBjdXJzIGEgJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0b3JlIGxpbmsgdG8gY3VycmVudCBub3RlcyByZWYgKCVzKSIKIG1zZ3N0ciAiIgogInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZW1tYWdhdHplbWFyIGwnZW5sbGHDpyBhIGxhIHJlZmVyw6huY2lhIGRlIG5vdGVzICIKICJhY3R1YWwgKCVzKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg3NQorIzogYnVpbHRpbi9ub3Rlcy5jOjg3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQXV0b21hdGljIG5vdGVzIG1lcmdlIGZhaWxlZC4gRml4IGNvbmZsaWN0cyBpbiAlcyBhbmQgY29tbWl0IHRoZSByZXN1bHQgd2l0aCAiCkBAIC0xMzk0MywzODQgKzE2NjExLDM4MiBAQAogImNvbWV0ZXUgZWwgcmVzdWx0YXQgYW1iICdnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXQnLCBvIGF2b3J0ZXUgbGEgZnVzacOzIGFtYiAiCiAiJ2dpdCBub3RlcyBtZXJnZSAtLWFib3J0Jy5cbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg5NworIzogYnVpbHRpbi9ub3Rlcy5jOjg5NyBidWlsdGluL3RhZy5jOjU0NQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiByZXNvbGRyZSDCqyVzwrsgY29tIGEgcmVmZXLDqG5jaWEgdsOgbGlkYS4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiT2JqZWN0ICVzIGhhcyBubyBub3RlXG4iCiBtc2dzdHIgIkwnb2JqZWN0ZSAlcyBubyB0w6kgY2FwIG5vdGFcbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjkwOQorIzogYnVpbHRpbi9ub3Rlcy5jOjkxMgogbXNnaWQgImF0dGVtcHQgdG8gcmVtb3ZlIG5vbi1leGlzdGVudCBub3RlIGlzIG5vdCBhbiBlcnJvciIKIG1zZ3N0ciAibCdpbnRlbnQgZCdlbGltaW5hciB1bmEgbm90YSBubyBleGlzdGVudCBubyDDqXMgdW4gZXJyb3IiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5MTIKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MTUKIG1zZ2lkICJyZWFkIG9iamVjdCBuYW1lcyBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAibGxlZ2VpeCBlbHMgbm9tcyBkJ29iamVjdGUgZGVzIGRlIGwnZW50cmFkYSBlc3TDoG5kYXJkIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTUwIGJ1aWx0aW4vcHJ1bmUuYzoxMDggYnVpbHRpbi93b3JrdHJlZS5jOjE2NAorIzogYnVpbHRpbi9ub3Rlcy5jOjk1NCBidWlsdGluL3BydW5lLmM6MTMwIGJ1aWx0aW4vd29ya3RyZWUuYzoxNjQKIG1zZ2lkICJkbyBub3QgcmVtb3ZlLCBzaG93IG9ubHkiCiBtc2dzdHIgIm5vIGVsaW1pbmlzLCBub23DqXMgbW9zdHJhIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTUxCisjOiBidWlsdGluL25vdGVzLmM6OTU1CiBtc2dpZCAicmVwb3J0IHBydW5lZCBub3RlcyIKIG1zZ3N0ciAiaW5mb3JtYSBkZSBub3RlcyBwb2RhZGVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTkzCisjOiBidWlsdGluL25vdGVzLmM6OTk4CiBtc2dpZCAibm90ZXMtcmVmIgogbXNnc3RyICJyZWZlcsOobmNpYSBkZSBub3RlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk5NAorIzogYnVpbHRpbi9ub3Rlcy5jOjk5OQogbXNnaWQgInVzZSBub3RlcyBmcm9tIDxub3Rlcy1yZWY+IgogbXNnc3RyICJ1c2EgbGVzIG5vdGVzIGRlIDxyZWZlcsOobmNpYS1kZS1ub3Rlcz4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzoxMDI5CisjOiBidWlsdGluL25vdGVzLmM6MTAzNCBidWlsdGluL3N0YXNoLmM6MTYwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHN1YmNvbW1hbmQ6ICVzIgogbXNnc3RyICJzdWJvcmRyZSBkZXNjb25lZ3VkYTogJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTIKIG1zZ2lkICIiCiAiZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCBbPG9wdGlvbnM+Li4uXSBbPCA8cmVmLWxpc3Q+IHwgPCA8b2JqZWN0LWxpc3Q+XSIKIG1zZ3N0ciAiIgogImdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgWzxvcGNpb25zPi4uLl0gWzwgPGxsaXN0YS1kZS1yZWZlcsOobmNpZXM+IHwgPCAiCiAiPGxsaXN0YS1kZS1vYmplY3Rlcz5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUzCiBtc2dpZCAiIgogImdpdCBwYWNrLW9iamVjdHMgWzxvcHRpb25zPi4uLl0gPGJhc2UtbmFtZT4gWzwgPHJlZi1saXN0PiB8IDwgPG9iamVjdC1saXN0Pl0iCiBtc2dzdHIgIiIKICJnaXQgcGFjay1vYmplY3RzIFs8b3BjaW9ucz4uLi5dIDxub20tYmFzZT4gWzwgPGxsaXN0YS1kZS1yZWZlcsOobmNpZXM+IHwgPCAiCiAiPGxsaXN0YS1kZS1vYmplY3Rlcz5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQyMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MjgKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImJhZCBwYWNrZWQgb2JqZWN0IENSQyBmb3IgJXMiCiBtc2dzdHIgImlnbm9yYSBlbHMgb2JqZWN0ZXMgZW1wYXF1ZXRhdHMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDMzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQzOQogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBwYWNrZWQgb2JqZWN0IGZvciAlcyIKIG1zZ3N0ciAiaWdub3JhIGVscyBvYmplY3RlcyBlbXBhcXVldGF0cyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1NjQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTcwCiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJyZWN1cnNpdmUgZGVsdGEgZGV0ZWN0ZWQgZm9yIG9iamVjdCAlcyIKIG1zZ3N0ciAibm8gcydoYSByZWJ1dCBsJ29iamVjdGUgZXNwZXJhdCAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3NzUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NzgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9yZGVyZWQgJXUgb2JqZWN0cywgZXhwZWN0ZWQgJTxQUkl1MzI+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzg4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc5NAogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAicGFja2ZpbGUgaXMgaW52YWxpZDogJXMiCiBtc2dzdHIgIiVzIG5vIHbDoGxpZCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3OTIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzk4CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBwYWNrZmlsZSBmb3IgcmV1c2U6ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyIG8gbGxlZ2lyICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc5NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4MDIKICMsIGZ1enp5CiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgaW4gcmV1c2VkIHBhY2tmaWxlIgogbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIGVsIGZpdHhlciBkJ8OtbmRleCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4MDcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODEzCiAjLCBmdXp6eQogbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gcmV1c2VkIHBhY2tmaWxlIgogbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIGVsIGZpdHhlciBkJ8OtbmRleCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4MzUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODQxCiBtc2dpZCAiZGlzYWJsaW5nIGJpdG1hcCB3cml0aW5nLCBwYWNrcyBhcmUgc3BsaXQgZHVlIHRvIHBhY2sucGFja1NpemVMaW1pdCIKIG1zZ3N0ciAiIgogInMnZXN0w6AgaW5oYWJpbGl0YW50IGwnZXNjcmlwdHVyYSBkZSBtYXBlcyBkZSBiaXRzLCBlcyBkaXZpZGVpeGVuIGVscyBwYXF1ZXRzICIKICJhIGNhdXNhIGRlIHBhY2sucGFja1NpemVMaW1pdCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4NDgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODU0CiBtc2dpZCAiV3JpdGluZyBvYmplY3RzIgogbXNnc3RyICJTJ2VzdGFuIGVzY3JpdmludCBlbHMgb2JqZWN0ZXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTEwIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6ODgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTE3IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0YXQgJXMiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZmVyIHN0YXQgYSAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5NjMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIndyb3RlICU8UFJJdTMyPiBvYmplY3RzIHdoaWxlIGV4cGVjdGluZyAlPFBSSXUzMj4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMTU3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjExNjQKIG1zZ2lkICJkaXNhYmxpbmcgYml0bWFwIHdyaXRpbmcsIGFzIHNvbWUgb2JqZWN0cyBhcmUgbm90IGJlaW5nIHBhY2tlZCIKIG1zZ3N0ciAiIgogInMnZXN0w6AgaW5oYWJpbGl0YW50IGwnZXNjcmlwdHVyYSBkZSBtYXBlcyBkZSBiaXRzLCBwZXJxdcOoIGFsZ3VucyBvYmplY3RlcyBubyAiCiAicydlbXBhcXVldGVuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE1ODUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU5MgogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgb3ZlcmZsb3cgaW4gcGFjayBmb3IgJXMiCiBtc2dzdHIgImVsIGRlc3BsYcOnYW1lbnQgZGUgYmFzZSBkZSBkaWZlcsOobmNpZXMgZXN0w6AgZm9yYSBkZSBsw61taXRzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE1OTQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTYwMQogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgb3V0IG9mIGJvdW5kIGZvciAlcyIKIG1zZ3N0ciAiZWwgZGVzcGxhw6dhbWVudCBkZSBiYXNlIGRlIGRpZmVyw6huY2llcyBlc3TDoCBmb3JhIGRlIGzDrW1pdHMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTg2MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxODcwCiBtc2dpZCAiQ291bnRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiUydlc3RhbiBjb21wdGFudCBlbHMgb2JqZWN0ZXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTk5OAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDAwCiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHNpemUgb2YgJXMiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbW91cmUgJXMgYSAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDEzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwMTUKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBvYmplY3QgaGVhZGVyIG9mICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsJ29iamVjdGU6ICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwODMgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDk5Ci0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMDkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA4NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMDEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjExMQogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGNhbm5vdCBiZSByZWFkIgogbXNnc3RyICJvYmplY3RlICVzIG5vIHRyb2JhdCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDg2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjExMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDg4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjExNQogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgJXMgaW5jb25zaXN0ZW50IG9iamVjdCBsZW5ndGggKCU8UFJJdU1BWD4gdnMgJTxQUkl1TUFYPikiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTIzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMjUKIG1zZ2lkICJzdWJvcHRpbWFsIHBhY2sgLSBvdXQgb2YgbWVtb3J5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjQ1MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNDQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbHRhIGNvbXByZXNzaW9uIHVzaW5nIHVwIHRvICVkIHRocmVhZHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNTgzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI1NzIKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYWNrIG9iamVjdHMgcmVhY2hhYmxlIGZyb20gdGFnICVzIgogbXNnc3RyICJpbmNsb3UgZWxzIG9iamVjdGVzIGFiYXN0YWJsZXMgZGUgcXVhbHNldm9sIHJlZmVyw6huY2lhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2NzAKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjY1OQogbXNnaWQgIkNvbXByZXNzaW5nIG9iamVjdHMiCiBtc2dzdHIgIlMnZXN0YW4gY29tcHJpbWludCBlbHMgb2JqZWN0ZXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjY3NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjY1CiBtc2dpZCAiaW5jb25zaXN0ZW5jeSB3aXRoIGRlbHRhIGNvdW50IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjc1MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleHBlY3RlZCBlZGdlIG9iamVjdCBJRCwgZ290IGdhcmJhZ2U6XG4iCiAiICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjc1OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleHBlY3RlZCBvYmplY3QgSUQsIGdvdCBnYXJiYWdlOlxuIgogIiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg0NgogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yIC0tbWlzc2luZyIKIG1zZ3N0ciAidmFsb3Igbm8gdsOgbGlkIHBlciBhIC0tbWlzc2luZyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTE0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzAyMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTA1IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzAxMwogIywgZnV6enkKIG1zZ2lkICJjYW5ub3Qgb3BlbiBwYWNrIGluZGV4IgogbXNnc3RyICJubyBlcyBwb3QgZmVyIHByZWFkIGVuIGVsIGZpdHhlciBkZSBwYXF1ZXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjk0NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTM2CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvb3NlIG9iamVjdCBhdCAlcyBjb3VsZCBub3QgYmUgZXhhbWluZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDMwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwMjEKICMsIGZ1enp5CiBtc2dpZCAidW5hYmxlIHRvIGZvcmNlIGxvb3NlIG9iamVjdCIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBsJ29iamVjdGUgZGUgbm90YSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTIwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMTMKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHJldiAnJXMnIgogbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIMKrJXPCuyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTIzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJldmlzaW9uICclcyciCiBtc2dzdHIgInJldmlzacOzIGluY29ycmVjdGUgwqslc8K7IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNDgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE0MQogbXNnaWQgInVuYWJsZSB0byBhZGQgcmVjZW50IG9iamVjdHMiCiBtc2dzdHIgIm5vIHMnaGFuIHBvZ3V0IGFmZWdpciBlbHMgb2JqZWN0ZXMgcmVjZW50cyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjAxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5zdXBwb3J0ZWQgaW5kZXggdmVyc2lvbiAlcyIKIG1zZ3N0ciAidmVyc2nDsyBkJ8OtbmRleCBubyBjb21wYXRpYmxlICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMDUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgaW5kZXggdmVyc2lvbiAnJXMnIgogbXNnc3RyICJ2ZXJzacOzIGQnw61uZGV4IGluY29ycmVjdGEgwqslc8K7IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMzUKLW1zZ2lkICJkbyBub3Qgc2hvdyBwcm9ncmVzcyBtZXRlciIKLW1zZ3N0ciAibm8gbW9zdHJpcyBsJ2luZGljYWRvciBkZSBwcm9ncsOpcyIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjM3Ci1tc2dpZCAic2hvdyBwcm9ncmVzcyBtZXRlciIKLW1zZ3N0ciAibW9zdHJhIGwnaW5kaWNhZG9yIGRlIHByb2dyw6lzIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMzkKLW1zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKLW1zZ3N0ciAibW9zdHJhIGwnaW5kaWNhZG9yIGRlIHByb2dyw6lzIGR1cmFudCBsYSBmYXNlIGQnZXNjcmlwdHVyYSBkJ29iamVjdGVzIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDIKLW1zZ2lkICJzaW1pbGFyIHRvIC0tYWxsLXByb2dyZXNzIHdoZW4gcHJvZ3Jlc3MgbWV0ZXIgaXMgc2hvd24iCi1tc2dzdHIgInNpbWlsYXIgYSAtLWFsbC1wcm9ncmVzcyBxdWFuIGwnaW5kaWNhZG9yIGRlIHByb2dyw6lzIGVzIG1vc3RyYSIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMzYKIG1zZ2lkICI8dmVyc2lvbj5bLDxvZmZzZXQ+XSIKIG1zZ3N0ciAiPHZlcnNpw7M+Wyw8ZGVzcGxhw6dhbWVudD5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIzNwogbXNnaWQgIndyaXRlIHRoZSBwYWNrIGluZGV4IGZpbGUgaW4gdGhlIHNwZWNpZmllZCBpZHggZm9ybWF0IHZlcnNpb24iCiBtc2dzdHIgIiIKICJlc2NyaXUgZWwgZml0eGVyIGQnw61uZGV4IGRlIHBhcXVldCBlbiBsYSB2ZXJzacOzIGRlIGZvcm1hdCBkJ8OtbmRleCAiCiAiZXNwZWNpZmljYWRhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0MAogbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIG91dHB1dCBwYWNrIGZpbGUiCi1tc2dzdHIgIm1pZGEgbcOgeGltYSBkZSBjYWRhIGZpdHhlciBkZSBwYXF1ZXQgZGUgc29ydGlkYSIKK21zZ3N0ciAibWlkYSBtw6B4aW1hIGRlIGNhZGEgZml0eGVyIGVtcGFxdWV0YXQgZGUgc29ydGlkYSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQ5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDIKIG1zZ2lkICJpZ25vcmUgYm9ycm93ZWQgb2JqZWN0cyBmcm9tIGFsdGVybmF0ZSBvYmplY3Qgc3RvcmUiCiBtc2dzdHIgImlnbm9yYSBlbHMgb2JqZWN0ZXMgcHJlc3RhdHMgZCd1biBlbW1hZ2F0emVtYXRnZSBkJ29iamVjdGVzIGFsdGVybmF0aXUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQ0CiBtc2dpZCAiaWdub3JlIHBhY2tlZCBvYmplY3RzIgogbXNnc3RyICJpZ25vcmEgZWxzIG9iamVjdGVzIGVtcGFxdWV0YXRzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0NgogbXNnaWQgImxpbWl0IHBhY2sgd2luZG93IGJ5IG9iamVjdHMiCiBtc2dzdHIgImxpbWl0YSBsYSBmaW5lc3RyYSBkJ2VtcGFxdWV0YW1lbnQgcGVyIG9iamVjdGVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0OAogbXNnaWQgImxpbWl0IHBhY2sgd2luZG93IGJ5IG1lbW9yeSBpbiBhZGRpdGlvbiB0byBvYmplY3QgbGltaXQiCiBtc2dzdHIgIiIKICJsaW1pdGEgbGEgZmluZXN0cmEgZCdlbXBhcXVldGFtZW50IHBlciBtZW3DsnJpYSBhIG3DqXMgZGVsIGzDrW1pdCBkJ29iamVjdGVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1MAogbXNnaWQgIm1heGltdW0gbGVuZ3RoIG9mIGRlbHRhIGNoYWluIGFsbG93ZWQgaW4gdGhlIHJlc3VsdGluZyBwYWNrIgogbXNnc3RyICIiCiAibG9uZ2l0dWQgbcOgeGltYSBkZSBsYSBjYWRlbmEgZGUgZGlmZXLDqG5jaWVzIHBlcm1lc2EgZW4gZWwgcGFxdWV0IHJlc3VsdGFudCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjU5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTIKIG1zZ2lkICJyZXVzZSBleGlzdGluZyBkZWx0YXMiCiBtc2dzdHIgInJldXNhIGxlcyBkaWZlcsOobmNpZXMgZXhpc3RlbnRzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1NAogbXNnaWQgInJldXNlIGV4aXN0aW5nIG9iamVjdHMiCiBtc2dzdHIgInJldXNhIGVscyBvYmplY3RlcyBleGlzdGVudHMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjU2CiBtc2dpZCAidXNlIE9GU19ERUxUQSBvYmplY3RzIgogbXNnc3RyICJ1c2Egb2JqZWN0ZXMgT0ZTX0RFTFRBIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1OAogbXNnaWQgInVzZSB0aHJlYWRzIHdoZW4gc2VhcmNoaW5nIGZvciBiZXN0IGRlbHRhIG1hdGNoZXMiCiBtc2dzdHIgInVzYSBmaWxzIGVuIGNlcmNhciBsZXMgbWlsbG9yZXMgY29pbmNpZMOobmNpZXMgZGUgZGlmZXLDqG5jaWVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MAogbXNnaWQgImRvIG5vdCBjcmVhdGUgYW4gZW1wdHkgcGFjayBvdXRwdXQiCiBtc2dzdHIgIm5vIGNyZcOvcyB1bmEgZW1pc3Npw7MgZGUgcGFxdWV0IGJ1aWRhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MgogbXNnaWQgInJlYWQgcmV2aXNpb24gYXJndW1lbnRzIGZyb20gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgImxsZWdlaXggZWxzIHBhcsOgbWV0cmVzIGRlIHJldmlzacOzIGRlcyBkZSBsJ2VudHJhZGEgZXN0w6BuZGFyZCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjcxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjQKIG1zZ2lkICJsaW1pdCB0aGUgb2JqZWN0cyB0byB0aG9zZSB0aGF0IGFyZSBub3QgeWV0IHBhY2tlZCIKIG1zZ3N0ciAibGltaXRhIGVscyBvYmplY3RlcyBhbHMgcXVhbHMgZW5jYXJhIG5vIHMnaGFnaW4gZW1wYXF1ZXRhdCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjc0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjcKIG1zZ2lkICJpbmNsdWRlIG9iamVjdHMgcmVhY2hhYmxlIGZyb20gYW55IHJlZmVyZW5jZSIKIG1zZ3N0ciAiaW5jbG91IGVscyBvYmplY3RlcyBhYmFzdGFibGVzIGRlIHF1YWxzZXZvbCByZWZlcsOobmNpYSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjc3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzAKIG1zZ2lkICJpbmNsdWRlIG9iamVjdHMgcmVmZXJyZWQgYnkgcmVmbG9nIGVudHJpZXMiCiBtc2dzdHIgIiIKICJpbmNsb3UgZWxzIG9iamVjdGVzIGFscyBxdWFscyBmYWNpbiByZWZlcsOobmNpYSBsZXMgZW50cmFkZXMgZGVsIHJlZ2lzdHJlIGRlICIKICJyZWZlcsOobmNpZXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4MAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjczCiBtc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlZmVycmVkIHRvIGJ5IHRoZSBpbmRleCIKIG1zZ3N0ciAiaW5jbG91IGVscyBvYmplY3RlcyBhbHMgcXVhbHMgZmFjaSByZWZlcsOobmNpYSBsJ8OtbmRleCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjgzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzYKIG1zZ2lkICJvdXRwdXQgcGFjayB0byBzdGRvdXQiCiBtc2dzdHIgImVtZXQgZWwgcGFxdWV0IGEgc3Rkb3V0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3OAogbXNnaWQgImluY2x1ZGUgdGFnIG9iamVjdHMgdGhhdCByZWZlciB0byBvYmplY3RzIHRvIGJlIHBhY2tlZCIKIG1zZ3N0ciAiIgogImluY2xvdSBlbHMgb2JqZWN0ZXMgZCdldGlxdWV0YSBxdWUgZmFjaW4gcmVmZXLDqG5jaWEgYWxzIG9iamVjdGVzIGEgZW1wYXF1ZXRhciIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODAKIG1zZ2lkICJrZWVwIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgInJldMOpbiBlbHMgb2JqZWN0ZXMgaW5hYmFzdGFibGVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4MgogbXNnaWQgInBhY2sgbG9vc2UgdW5yZWFjaGFibGUgb2JqZWN0cyIKIG1zZ3N0ciAiZW1wYXF1ZXRhIGVscyBvYmplY3RlcyBpbmFiYXN0YWJsZXMgc29sdHMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg0CiBtc2dpZCAidW5wYWNrIHVucmVhY2hhYmxlIG9iamVjdHMgbmV3ZXIgdGhhbiA8dGltZT4iCiBtc2dzdHIgImRlc2VtcGFxdWV0YSBlbHMgb2JqZWN0ZXMgaW5hYmFzdGFibGVzIG3DqXMgbm91cyBxdWUgPGhvcmE+IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4NworbXNnaWQgInVzZSB0aGUgc3BhcnNlIHJlYWNoYWJpbGl0eSBhbGdvcml0aG0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg5CiBtc2dpZCAiY3JlYXRlIHRoaW4gcGFja3MiCiBtc2dzdHIgImNyZWEgcGFxdWV0cyBwcmltcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTEKIG1zZ2lkICJjcmVhdGUgcGFja3Mgc3VpdGFibGUgZm9yIHNoYWxsb3cgZmV0Y2hlcyIKIG1zZ3N0ciAiY3JlYSBwYXF1ZXRzIGFkZXF1YXRzIHBlciBhIGxlcyBvYnRlbmNpb25zIHN1cGVyZmljaWFscyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTMKIG1zZ2lkICJpZ25vcmUgcGFja3MgdGhhdCBoYXZlIGNvbXBhbmlvbiAua2VlcCBmaWxlIgogbXNnc3RyICJpZ25vcmEgZWxzIHBhcXVldHMgcXVlIHRpbmd1aW4gdW4gZml0eGVyIC5rZWVwIGNvcnJlc3BvbmVudCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTUKICMsIGZ1enp5CiBtc2dpZCAiaWdub3JlIHRoaXMgcGFjayIKIG1zZ3N0ciAidXNhIGVsIHBhcXVldCBwcmltIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5NwogbXNnaWQgInBhY2sgY29tcHJlc3Npb24gbGV2ZWwiCiBtc2dzdHIgIm5pdmVsbCBkZSBjb21wcmVzc2nDsyBkZSBwYXF1ZXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwNAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk5CiBtc2dpZCAiZG8gbm90IGhpZGUgY29tbWl0cyBieSBncmFmdHMiCiBtc2dzdHIgIm5vIGFtYWd1aXMgbGVzIGNvbWlzc2lvbnMgcGVyIGVtcGVsdCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzA2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDEKIG1zZ2lkICJ1c2UgYSBiaXRtYXAgaW5kZXggaWYgYXZhaWxhYmxlIHRvIHNwZWVkIHVwIGNvdW50aW5nIG9iamVjdHMiCiBtc2dzdHIgIiIKICJ1c2EgdW4gw61uZGV4IGRlIG1hcGEgZGUgYml0cywgc2kgZXN0w6AgZGlzcG9uaWJsZSwgcGVyIGEgYWNjZWxlcmFyIGVsICIKICJyZWNvbXB0ZSBkJ29iamVjdGVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwMwogbXNnaWQgIndyaXRlIGEgYml0bWFwIGluZGV4IHRvZ2V0aGVyIHdpdGggdGhlIHBhY2sgaW5kZXgiCiBtc2dzdHIgImVzY3JpdSB1biDDrW5kZXggZGUgbWFwYSBkZSBiaXRzIGp1bnRhbWVudCBhbWIgbCfDrW5kZXggZGUgcGFxdWV0IgogCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDcKKyMsIGZ1enp5Cittc2dpZCAid3JpdGUgYSBiaXRtYXAgaW5kZXggaWYgcG9zc2libGUiCittc2dzdHIgImVzY3JpdSDDrW5kZXggZGUgbWFwYSBkZSBiaXRzIgorCiAjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTEKIG1zZ2lkICJoYW5kbGluZyBmb3IgbWlzc2luZyBvYmplY3RzIgogbXNnc3RyICJnZXN0acOzIGRlbHMgb2JqZWN0ZXMgYWJzZW50cyIKQEAgLTE0MzM0LDU4ICsxNzAwMCw1OSBAQAogbXNnaWQgInJlc3BlY3QgaXNsYW5kcyBkdXJpbmcgZGVsdGEgY29tcHJlc3Npb24iCiBtc2dzdHIgIm1pZGEgZGUgbGEgZmluZXN0cmEgcXVlIHMndXNhIHBlciBhIGNvbXByZXNzacOzIGRlIGRpZmVyw6huY2llcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsdGEgY2hhaW4gZGVwdGggJWQgaXMgdG9vIGRlZXAsIGZvcmNpbmcgJWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQ1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjay5kZWx0YUNhY2hlTGltaXQgaXMgdG9vIGhpZ2gsIGZvcmNpbmcgJWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDQKIG1zZ2lkICItLW1heC1wYWNrLXNpemUgY2Fubm90IGJlIHVzZWQgdG8gYnVpbGQgYSBwYWNrIGZvciB0cmFuc2ZlciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwNgogbXNnaWQgIm1pbmltdW0gcGFjayBzaXplIGxpbWl0IGlzIDEgTWlCIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwNgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDExCiAjLCBmdXp6eQogbXNnaWQgIi0tdGhpbiBjYW5ub3QgYmUgdXNlZCB0byBidWlsZCBhbiBpbmRleGFibGUgcGFjayIKIG1zZ3N0ciAiLS1maXgtdGhpbiBubyBlcyBwb3QgdXNhciBzZW5zZSAtLXN0ZGluIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNAogIywgZnV6enkKIG1zZ2lkICItLWtlZXAtdW5yZWFjaGFibGUgYW5kIC0tdW5wYWNrLXVucmVhY2hhYmxlIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0ta2VlcC11bnJlYWNoYWJsZSBpIC1BIHPDs24gaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDE1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjAKICMsIGZ1enp5CiBtc2dpZCAiY2Fubm90IHVzZSAtLWZpbHRlciB3aXRob3V0IC0tc3Rkb3V0IgogbXNnc3RyICJubyBlcyBwb3QgdXNhciAtYSBhbWIgLWQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ3NAotIywgZnV6enkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ4MQogbXNnaWQgIkVudW1lcmF0aW5nIG9iamVjdHMiCi1tc2dzdHIgIlMnZXN0YW4gZXNjcml2aW50IGVscyBvYmplY3RlcyIKK21zZ3N0ciAiUydlc3RhbiBlbnVtZXJhbnQgZWxzIG9iamVjdGVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzUxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJUb3RhbCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHJldXNlZCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPikiCiBtc2dzdHIgIiIKKyJUb3RhbCAlPFBSSXUzMj4gKGRpZmVyw6huY2llcyAlPFBSSXUzMj4pLCByZXVzYXQgJTxQUkl1MzI+IChkaWZlcsOobmNpZXMgIgorIiU8UFJJdTMyPikiCiAKLSM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6NworIzogYnVpbHRpbi9wYWNrLXJlZnMuYzo4CiBtc2dpZCAiZ2l0IHBhY2stcmVmcyBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IHBhY2stcmVmcyBbPG9wY2lvbnM+XSIKIAotIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNQorIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNgogbXNnaWQgInBhY2sgZXZlcnl0aGluZyIKIG1zZ3N0ciAiZW1wYXF1ZXRhLWhvIHRvdCIKIAotIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNgorIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNwogbXNnaWQgInBydW5lIGxvb3NlIHJlZnMgKGRlZmF1bHQpIgogbXNnc3RyICJwb2RhIGxlcyByZWZlcsOobmNpZXMgc29sdGVzIChwZXIgZGVmZWN0ZSkiCiAKQEAgLTE0NDAxLDcwICsxNzA2OCw3MCBAQAogbXNnaWQgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGltZT5dIFstLV0gWzxoZWFkPi4uLl0iCiBtc2dzdHIgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8aG9yYT5dIFstLV0gWzxoZWFkPi4uLl0iCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMDkKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMzEKIG1zZ2lkICJyZXBvcnQgcHJ1bmVkIG9iamVjdHMiCiBtc2dzdHIgImluZm9ybWEgZCdvYmplY3RlcyBwb2RhdHMiCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMTIKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMzQKIG1zZ2lkICJleHBpcmUgb2JqZWN0cyBvbGRlciB0aGFuIDx0aW1lPiIKIG1zZ3N0ciAiZmVzIGNhZHVjYXIgZWxzIG9iamVjdGVzIG3DqXMgdmVsbHMgcXVlIDxob3JhPiIKIAotIzogYnVpbHRpbi9wcnVuZS5jOjExNAorIzogYnVpbHRpbi9wcnVuZS5jOjEzNgogbXNnaWQgImxpbWl0IHRyYXZlcnNhbCB0byBvYmplY3RzIG91dHNpZGUgcHJvbWlzb3IgcGFja2ZpbGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMjkKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxNTAKIG1zZ2lkICJjYW5ub3QgcHJ1bmUgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCiBtc2dzdHIgIm5vIGVzIHBvdCBwb2RhciBlbiB1biBkaXDDsnNpdCBkJ29iamVjdGVzIHByZWNpb3NvcyIKIAotIzogYnVpbHRpbi9wdWxsLmM6NjAgYnVpbHRpbi9wdWxsLmM6NjIKKyM6IGJ1aWx0aW4vcHVsbC5jOjY2IGJ1aWx0aW4vcHVsbC5jOjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yICVzOiAlcyIKIG1zZ3N0ciAiVmFsb3Igbm8gdsOgbGlkIHBlciBhICVzOiAlcyIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODIKKyM6IGJ1aWx0aW4vcHVsbC5jOjg4CiBtc2dpZCAiZ2l0IHB1bGwgWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCiBtc2dzdHIgImdpdCBwdWxsIFs8b3BjaW9ucz5dIFs8ZGlww7JzaXQ+IFs8ZXNwZWNpZmljYWNpw7MtZGUtcmVmZXLDqG5jaWE+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjEzMworIzogYnVpbHRpbi9wdWxsLmM6MTQyCiBtc2dpZCAiY29udHJvbCBmb3IgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMiCiBtc2dzdHIgImNvbnRyb2xhIGwnb2J0ZW5jacOzIHJlY3Vyc2l2YSBkZSBzdWJtw7JkdWxzIgogCi0jOiBidWlsdGluL3B1bGwuYzoxMzcKKyM6IGJ1aWx0aW4vcHVsbC5jOjE0NgogbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBtZXJnaW5nIgogbXNnc3RyICJPcGNpb25zIHJlbGFjaW9uYWRlcyBhbWIgZnVzaW9uYXIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE0MAorIzogYnVpbHRpbi9wdWxsLmM6MTQ5CiBtc2dpZCAiaW5jb3Jwb3JhdGUgY2hhbmdlcyBieSByZWJhc2luZyByYXRoZXIgdGhhbiBtZXJnaW5nIgogbXNnc3RyICJpbmNvcnBvcmEgZWxzIGNhbnZpcyBmZW50IMKrcmViYXNlwrsgZW4gbGxvYyBkZSBmdXNpb25hciIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTY3IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE0NyBidWlsdGluL3JldmVydC5jOjEyMgorIzogYnVpbHRpbi9wdWxsLmM6MTc3IGJ1aWx0aW4vcmViYXNlLmM6NDY3IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI2CiBtc2dpZCAiYWxsb3cgZmFzdC1mb3J3YXJkIgogbXNnc3RyICJwZXJtZXQgbCdhdmFuw6cgcsOgcGlkIgogCi0jOiBidWlsdGluL3B1bGwuYzoxNzYKKyM6IGJ1aWx0aW4vcHVsbC5jOjE4NgogbXNnaWQgImF1dG9tYXRpY2FsbHkgc3Rhc2gvc3Rhc2ggcG9wIGJlZm9yZSBhbmQgYWZ0ZXIgcmViYXNlIgogbXNnc3RyICIiCiAiZmVzIMKrc3Rhc2jCuyBpIMKrc3Rhc2ggcG9wwrsgYXV0b23DoHRpY2FtZW50IGFiYW5zIGkgZGVzcHLDqXMgZGUgZmVyIMKrcmViYXNlwrsiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE5MgorIzogYnVpbHRpbi9wdWxsLmM6MjAyCiBtc2dpZCAiT3B0aW9ucyByZWxhdGVkIHRvIGZldGNoaW5nIgogbXNnc3RyICJPcGNpb25zIHJlbGFjaW9uYWRlcyBhbWIgb2J0ZW5pciIKIAotIzogYnVpbHRpbi9wdWxsLmM6MjAyCisjOiBidWlsdGluL3B1bGwuYzoyMTIKIG1zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgbG9jYWwgYnJhbmNoIgogbXNnc3RyICJmb3LDp2EgbGEgc29icmVlc2NyaXB0dXJhIGRlIGxhIGJyYW5jYSBsb2NhbCIKIAotIzogYnVpbHRpbi9wdWxsLmM6MjEwCisjOiBidWlsdGluL3B1bGwuYzoyMjAKIG1zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBwdWxsZWQgaW4gcGFyYWxsZWwiCiBtc2dzdHIgIm5vbWJyZSBkZSBzdWJtw7JkdWxzIGJhaXhhdHMgZW4gcGFyYWzCt2xlbCIKIAotIzogYnVpbHRpbi9wdWxsLmM6MzA1CisjOiBidWlsdGluL3B1bGwuYzozMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgcHVsbC5mZjogJXMiCiBtc2dzdHIgIlZhbG9yIG5vIHbDoGxpZCBwZXIgYSBwdWxsLmZmOiAlcyIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDIxCisjOiBidWlsdGluL3B1bGwuYzo0MzcKIG1zZ2lkICIiCiAiVGhlcmUgaXMgbm8gY2FuZGlkYXRlIGZvciByZWJhc2luZyBhZ2FpbnN0IGFtb25nIHRoZSByZWZzIHRoYXQgeW91IGp1c3QgIgogImZldGNoZWQuIgpAQCAtMTQ0NzIsMTMgKzE3MTM5LDEzIEBACiAiTm8gaGkgaGEgY2FwIGNhbmRpZGF0IHNvYnJlIGVsIHF1YWwgZmVyIMKrcmViYXNlwrsgZW50cmUgbGVzIHJlZmVyw6huY2llcyBxdWUgIgogImFjYWJldSBkJ29idGVuaXIuIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MjMKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzOQogbXNnaWQgIiIKICJUaGVyZSBhcmUgbm8gY2FuZGlkYXRlcyBmb3IgbWVyZ2luZyBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0IGZldGNoZWQuIgogbXNnc3RyICIiCiAiTm8gaGkgaGEgY2FuZGlkYXRzIHBlciBhIGZ1c2lvbmFyIGVudHJlIGxlcyByZWZlcsOobmNpZXMgcXVlIGFjYWJldSBkJ29idGVuaXIuIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MjQKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0MAogbXNnaWQgIiIKICJHZW5lcmFsbHkgdGhpcyBtZWFucyB0aGF0IHlvdSBwcm92aWRlZCBhIHdpbGRjYXJkIHJlZnNwZWMgd2hpY2ggaGFkIG5vXG4iCiAibWF0Y2hlcyBvbiB0aGUgcmVtb3RlIGVuZC4iCkBAIC0xNDQ4Niw3ICsxNzE1Myw3IEBACiAiR2VuZXJhbG1lbnQgYWl4w7Igdm9sIGRpciBxdWUgaGV1IHByb3Zlw690IHVuYSBlc3BlY2lmaWNhY2nDsyBkZVxuIgogInJlZmVyw6huY2lhIGRlIGNvbW9kw60gcXVlIG5vIHRlbmlhIGNhcCBjb2luY2lkw6huY2lhIGVuIGVsIGNvc3RhdCByZW1vdC4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyNworIzogYnVpbHRpbi9wdWxsLmM6NDQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXNrZWQgdG8gcHVsbCBmcm9tIHRoZSByZW1vdGUgJyVzJywgYnV0IGRpZCBub3Qgc3BlY2lmeVxuIgpAQCAtMTQ0OTcsNDQgKzE3MTY0LDQ0IEBACiAiUGVycXXDqCBhcXVlc3Qgbm8gw6lzIGVsIHJlbW90IGNvbmZpZ3VyYXQgcGVyIGRlZmVjdGUgcGVyIGEgbGEgdm9zdHJhXG4iCiAiYnJhbmNhIGFjdHVhbCwgaGV1IGQnZXNwZWNpZmljYXIgdW5hIGJyYW5jYSBlbiBsYSBsw61uaWEgZCdvcmRyZXMuIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzIgYnVpbHRpbi9yZWJhc2UuYzo3NjAgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3MworIzogYnVpbHRpbi9wdWxsLmM6NDQ4IGJ1aWx0aW4vcmViYXNlLmM6MTM3NSBnaXQtcGFyc2UtcmVtb3RlLnNoOjczCiBtc2dpZCAiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLiIKIG1zZ3N0ciAiQWN0dWFsbWVudCBubyBzb3UgZW4gY2FwIGJyYW5jYS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzNCBidWlsdGluL3B1bGwuYzo0NDkgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3OQorIzogYnVpbHRpbi9wdWxsLmM6NDUwIGJ1aWx0aW4vcHVsbC5jOjQ2NSBnaXQtcGFyc2UtcmVtb3RlLnNoOjc5CiBtc2dpZCAiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIHJlYmFzZSBhZ2FpbnN0LiIKLW1zZ3N0ciAiRXNwZWNpZmlxdWV1IHNvYnJlIHF1w6ggYnJhbmNhIHZvbGV1IGZlciDCq3JlYmFzZcK7LiIKK21zZ3N0ciAiRXNwZWNpZmlxdWV1IHNvYnJlIHF1aW5hIGJyYW5jYSB2b2xldSBmZXIgwqtyZWJhc2XCuy4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzNiBidWlsdGluL3B1bGwuYzo0NTEgZ2l0LXBhcnNlLXJlbW90ZS5zaDo4MgorIzogYnVpbHRpbi9wdWxsLmM6NDUyIGJ1aWx0aW4vcHVsbC5jOjQ2NyBnaXQtcGFyc2UtcmVtb3RlLnNoOjgyCiBtc2dpZCAiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIG1lcmdlIHdpdGguIgogbXNnc3RyICJFc3BlY2lmaXF1ZXUgYW1iIHF1aW5hIGJyYW5jYSB2b2xldSBmdXNpb25hci4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzNyBidWlsdGluL3B1bGwuYzo0NTIKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ1MyBidWlsdGluL3B1bGwuYzo0NjgKIG1zZ2lkICJTZWUgZ2l0LXB1bGwoMSkgZm9yIGRldGFpbHMuIgogbXNnc3RyICJWZWdldSBnaXQtcHVsbCgxKSBwZXIgZGV0YWxscy4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NDUgYnVpbHRpbi9wdWxsLmM6NDU0Ci0jOiBidWlsdGluL3JlYmFzZS5jOjc2NiBnaXQtcGFyc2UtcmVtb3RlLnNoOjY0CisjOiBidWlsdGluL3B1bGwuYzo0NTUgYnVpbHRpbi9wdWxsLmM6NDYxIGJ1aWx0aW4vcHVsbC5jOjQ3MAorIzogYnVpbHRpbi9yZWJhc2UuYzoxMzgxIGdpdC1wYXJzZS1yZW1vdGUuc2g6NjQKIG1zZ2lkICI8cmVtb3RlPiIKIG1zZ3N0ciAiPHJlbW90PiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM5IGJ1aWx0aW4vcHVsbC5jOjQ1NCBidWlsdGluL3B1bGwuYzo0NTkKLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU0OCBnaXQtcGFyc2UtcmVtb3RlLnNoOjY1CisjOiBidWlsdGluL3B1bGwuYzo0NTUgYnVpbHRpbi9wdWxsLmM6NDcwIGJ1aWx0aW4vcHVsbC5jOjQ3NQorIzogZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NQogbXNnaWQgIjxicmFuY2g+IgogbXNnc3RyICI8YnJhbmNhPiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDQ3IGJ1aWx0aW4vcmViYXNlLmM6NzU4IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzUKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ2MyBidWlsdGluL3JlYmFzZS5jOjEzNzMgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3NQogbXNnaWQgIlRoZXJlIGlzIG5vIHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJObyBoaSBoYSBjYXAgaW5mb3JtYWNpw7MgZGUgc2VndWltZW50IHBlciBhIGxhIGJyYW5jYSBhY3R1YWwuIgogCi0jOiBidWlsdGluL3B1bGwuYzo0NTYgZ2l0LXBhcnNlLXJlbW90ZS5zaDo5NQorIzogYnVpbHRpbi9wdWxsLmM6NDcyIGdpdC1wYXJzZS1yZW1vdGUuc2g6OTUKIG1zZ2lkICIiCiAiSWYgeW91IHdpc2ggdG8gc2V0IHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGlzIGJyYW5jaCB5b3UgY2FuIGRvIHNvIHdpdGg6IgogbXNnc3RyICIiCiAiU2kgdm9sZXUgZXN0YWJsaXIgaW5mb3JtYWNpw7MgZGUgc2VndWltZW50IHBlciBhIGFxdWVzdGEgYnJhbmNhLCBwb2RldSBmZXItaG8gIgogImFtYjoiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ2MQorIzogYnVpbHRpbi9wdWxsLmM6NDc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGNvbmZpZ3VyYXRpb24gc3BlY2lmaWVzIHRvIG1lcmdlIHdpdGggdGhlIHJlZiAnJXMnXG4iCkBAIC0xNDU0MywzMyArMTcyMTAsMzMgQEAKICJMYSB2b3N0cmEgY29uZmlndXJhY2nDsyBlc3BlY2lmaWNhIGZ1c2lvbmFyIGFtYiBsYSByZWZlcsOobmNpYSDCqyVzwrtcbiIKICJkZWwgcmVtb3QsIHBlcsOyIG5vIHMnaGEgb2J0aW5ndXQgdGFsIHJlZmVyw6huY2lhLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NTY1Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGJ1aWx0aW4vcHVsbC5jOjU4NworIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGNvbW1pdCAlcyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbGEgY29taXNzacOzICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFjY2VkaXIgYSBsYSBjb21pc3Npw7MgJXMiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg0MworIzogYnVpbHRpbi9wdWxsLmM6ODY3CiBtc2dpZCAiaWdub3JpbmcgLS12ZXJpZnktc2lnbmF0dXJlcyBmb3IgcmViYXNlIgogbXNnc3RyICJzJ2VzdMOgIGlnbm9yYW50IC0tdmVyaWZ5LXNpZ25hdHVyZXMgZW4gZmVyIMKrcmViYXNlwrsiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg5MQorIzogYnVpbHRpbi9wdWxsLmM6OTIyCiBtc2dpZCAiLS1bbm8tXWF1dG9zdGFzaCBvcHRpb24gaXMgb25seSB2YWxpZCB3aXRoIC0tcmViYXNlLiIKIG1zZ3N0ciAibCdvcGNpw7MgLS1bbm8tXS1hdXRvc3Rhc2ggw6lzIHbDoGxpZCBub23DqXMgYW1iIC0tcmViYXNlLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODk5CisjOiBidWlsdGluL3B1bGwuYzo5MzAKIG1zZ2lkICJVcGRhdGluZyBhbiB1bmJvcm4gYnJhbmNoIHdpdGggY2hhbmdlcyBhZGRlZCB0byB0aGUgaW5kZXguIgogbXNnc3RyICIiCiAiUydlc3TDoCBhY3R1YWxpdHphbnQgdW5hIGJyYW5jYSBubyBuYXNjdWRhIGFtYiBjYW52aXMgYWZlZ2l0cyBhIGwnw61uZGV4LiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTAyCisjOiBidWlsdGluL3B1bGwuYzo5MzQKIG1zZ2lkICJwdWxsIHdpdGggcmViYXNlIgogbXNnc3RyICJiYWl4YXIgZmVudCDCq3JlYmFzZcK7IgogCi0jOiBidWlsdGluL3B1bGwuYzo5MDMKKyM6IGJ1aWx0aW4vcHVsbC5jOjkzNQogbXNnaWQgInBsZWFzZSBjb21taXQgb3Igc3Rhc2ggdGhlbS4iCiBtc2dzdHIgImNvbWV0ZXUtbG9zIG8gZW1tYWdhdHplbWV1LWxvcy4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjkyOAorIzogYnVpbHRpbi9wdWxsLmM6OTYwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJmZXRjaCB1cGRhdGVkIHRoZSBjdXJyZW50IGJyYW5jaCBoZWFkLlxuIgpAQCAtMTQ1ODAsNyArMTcyNDcsNyBAQAogInMnZXN0w6AgYXZhbsOnYW50IHLDoHBpZGFtZW50IGVsIHZvc3RyZSBhcmJyZSBkZSB0cmViYWxsIGRlcyBkZVxuIgogImxhIGNvbWlzc2nDsyAlcy4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjkzNAorIzogYnVpbHRpbi9wdWxsLmM6OTY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgZmFzdC1mb3J3YXJkIHlvdXIgd29ya2luZyB0cmVlLlxuIgpAQCAtMTQ1OTgsMTUgKzE3MjY1LDE1IEBACiAiJCBnaXQgcmVzZXQgLS1oYXJkXG4iCiAicGVyIGEgcmVjdXBlcmFyLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTQ5CisjOiBidWlsdGluL3B1bGwuYzo5ODEKIG1zZ2lkICJDYW5ub3QgbWVyZ2UgbXVsdGlwbGUgYnJhbmNoZXMgaW50byBlbXB0eSBoZWFkLiIKIG1zZ3N0ciAiTm8gZXMgcG9kZW4gZnVzaW9uYXIgbcO6bHRpcGxlcyBicmFucXVlcyBhIHVuIEhFQUQgYnVpdC4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjk1MworIzogYnVpbHRpbi9wdWxsLmM6OTg1CiBtc2dpZCAiQ2Fubm90IHJlYmFzZSBvbnRvIG11bHRpcGxlIGJyYW5jaGVzLiIKIG1zZ3N0ciAiTm8gZXMgcG90IGZlciDCq3JlYmFzZcK7IHNvYnJlIG3Dumx0aXBsZXMgYnJhbnF1ZXMuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5NjAKKyM6IGJ1aWx0aW4vcHVsbC5jOjk5MgogbXNnaWQgImNhbm5vdCByZWJhc2Ugd2l0aCBsb2NhbGx5IHJlY29yZGVkIHN1Ym1vZHVsZSBtb2RpZmljYXRpb25zIgogbXNnc3RyICIiCiAibm8gZXMgcG90IGZlciDCq3JlYmFzZcK7IGFtYiBtb2RpZmljYWNpb25zIGFscyBzdWJtw7JkdWxzIGVucmVnaXN0cmFkZXMgIgpAQCAtMTQ2MTYsMTUgKzE3MjgzLDE1IEBACiBtc2dpZCAiZ2l0IHB1c2ggWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCiBtc2dzdHIgImdpdCBwdXNoIFs8b3BjaW9ucz5dIFs8ZGlww7JzaXQ+IFs8ZXNwZWNpZmljYWNpw7MtZGUtcmVmZXLDqG5jaWE+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjExMQorIzogYnVpbHRpbi9wdXNoLmM6MTEyCiBtc2dpZCAidGFnIHNob3J0aGFuZCB3aXRob3V0IDx0YWc+IgogbXNnc3RyICJhYnJldmlhdHVyYSBkJ2V0aXF1ZXRhIHNlbnNlIDx0YWc+IgogCi0jOiBidWlsdGluL3B1c2guYzoxMjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjEyMgogbXNnaWQgIi0tZGVsZXRlIG9ubHkgYWNjZXB0cyBwbGFpbiB0YXJnZXQgcmVmIG5hbWVzIgogbXNnc3RyICItLWRlbGV0ZSBub23DqXMgYWNjZXB0YSBub21zIGRlIHJlZmVyw6huY2lhIGRlIGRlc3TDrSBzZW56aWxscyIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTY1CisjOiBidWlsdGluL3B1c2guYzoxNjgKIG1zZ2lkICIiCiAiXG4iCiAiVG8gY2hvb3NlIGVpdGhlciBvcHRpb24gcGVybWFuZW50bHksIHNlZSBwdXNoLmRlZmF1bHQgaW4gJ2dpdCBoZWxwIGNvbmZpZycuIgpAQCAtMTQ2MzMsNyArMTczMDAsNyBAQAogIlBlciBhIHRyaWFyIHF1YWxzZXZvbCBvcGNpw7MgcGVybWFuZW50bWVudCwgdmVnZXUgcHVzaC5kZWZhdWx0IGEgJ2dpdCBoZWxwICIKICJjb25maWcnLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTY4CisjOiBidWlsdGluL3B1c2guYzoxNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSB1cHN0cmVhbSBicmFuY2ggb2YgeW91ciBjdXJyZW50IGJyYW5jaCBkb2VzIG5vdCBtYXRjaFxuIgpAQCAtMTQ2NDQsNyArMTczMTEsNyBAQAogIlxuIgogIlRvIHB1c2ggdG8gdGhlIGJyYW5jaCBvZiB0aGUgc2FtZSBuYW1lIG9uIHRoZSByZW1vdGUsIHVzZVxuIgogIlxuIgotIiAgICBnaXQgcHVzaCAlcyAlc1xuIgorIiAgICBnaXQgcHVzaCAlcyBIRUFEXG4iCiAiJXMiCiBtc2dzdHIgIiIKICJMYSBicmFuY2EgZm9udCBkZSBsYSB2b3N0cmEgYnJhbmNhIGFjdHVhbCBubyBjb2luY2lkZWl4XG4iCkBAIC0xNDY1NSwxMCArMTczMjIsMTAgQEAKICJcbiIKICJQZXIgYSBwdWphciBhIGxhIGJyYW5jYSBkZWwgbWF0ZWl4IG5vbSBlbiBlbCByZW1vdCwgdXNldVxuIgogIlxuIgotIiAgICBnaXQgcHVzaCAlcyAlc1xuIgorIiAgICBnaXQgcHVzaCAlcyBIRUFEXG4iCiAiJXMiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE4MworIzogYnVpbHRpbi9wdXNoLmM6MTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXJlIG5vdCBjdXJyZW50bHkgb24gYSBicmFuY2guXG4iCkBAIC0xNDY3Myw3ICsxNzM0MCw3IEBACiAiXG4iCiAiICAgIGdpdCBwdXNoICVzIEhFQUQ6PG5vbS1kZS1icmFuY2EtcmVtb3RhPlxuIgogCi0jOiBidWlsdGluL3B1c2guYzoxOTcKKyM6IGJ1aWx0aW4vcHVzaC5jOjIwMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGN1cnJlbnQgYnJhbmNoICVzIGhhcyBubyB1cHN0cmVhbSBicmFuY2guXG4iCkBAIC0xNDY4NiwxMyArMTczNTMsMTMgQEAKICJcbiIKICIgICAgZ2l0IHB1c2ggLS1zZXQtdXBzdHJlYW0gJXMgJXNcbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjA1CisjOiBidWlsdGluL3B1c2guYzoyMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIGN1cnJlbnQgYnJhbmNoICVzIGhhcyBtdWx0aXBsZSB1cHN0cmVhbSBicmFuY2hlcywgcmVmdXNpbmcgdG8gcHVzaC4iCiBtc2dzdHIgIiIKICJMYSBicmFuY2EgYWN0dWFsICVzIHTDqSBtw7psdGlwbGVzIGJyYW5xdWVzIGZvbnRzLCBzJ2VzdMOgIHJlZnVzYW50IHB1amFyLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjA4CisjOiBidWlsdGluL3B1c2guYzoyMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBhcmUgcHVzaGluZyB0byByZW1vdGUgJyVzJywgd2hpY2ggaXMgbm90IHRoZSB1cHN0cmVhbSBvZlxuIgpAQCAtMTQ3MDMsMTQgKzE3MzcwLDE0IEBACiAiYnJhbmNhIGFjdHVhbCDCqyVzwrssIHNlbnNlIGRpci1tZSBxdcOoIHB1amFyIHBlciBhIGFjdHVhbGl0emFyXG4iCiAicXVpbmEgYnJhbmNhIHJlbW90YS4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI2NworIzogYnVpbHRpbi9wdXNoLmM6MjcwCiBtc2dpZCAiIgogIllvdSBkaWRuJ3Qgc3BlY2lmeSBhbnkgcmVmc3BlY3MgdG8gcHVzaCwgYW5kIHB1c2guZGVmYXVsdCBpcyBcIm5vdGhpbmdcIi4iCiBtc2dzdHIgIiIKICJObyBoZXUgZXNwZWNpZmljYXQgY2FwIGVzcGVjaWZpY2FjacOzIGRlIHJlZmVyw6huY2lhIGEgcHVqYXIsIGkgcHVzaC5kZWZhdWx0ICIKICLDqXMgXCJub3RoaW5nXCIuIgogCi0jOiBidWlsdGluL3B1c2guYzoyNzQKKyM6IGJ1aWx0aW4vcHVzaC5jOjI3NwogbXNnaWQgIiIKICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgdGlwIG9mIHlvdXIgY3VycmVudCBicmFuY2ggaXMgYmVoaW5kXG4iCiAiaXRzIHJlbW90ZSBjb3VudGVycGFydC4gSW50ZWdyYXRlIHRoZSByZW1vdGUgY2hhbmdlcyAoZS5nLlxuIgpAQCAtMTQ3MjIsNyArMTczODksNyBAQAogImVscyBjYW52aXMgcmVtb3RzIChwZXIgZXhlbXBsZSwgJ2dpdCBwdWxsIC4uLicpIGFiYW5zIGRlIHB1amFyIGRlIG5vdS5cbiIKICJWZWdldSBsYSAnTm90YSBzb2JyZSBhdmFuw6dvcyByw6BwaWRzJyBhICdnaXQgcHVzaCAtLWhlbHAnIHBlciBkZXRhbGxzLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjgwCisjOiBidWlsdGluL3B1c2guYzoyODMKIG1zZ2lkICIiCiAiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgYSBwdXNoZWQgYnJhbmNoIHRpcCBpcyBiZWhpbmQgaXRzIHJlbW90ZVxuIgogImNvdW50ZXJwYXJ0LiBDaGVjayBvdXQgdGhpcyBicmFuY2ggYW5kIGludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXNcbiIKQEAgLTE0NzM1LDcgKzE3NDAyLDcgQEAKICJhYmFucyBkZSBwdWphciBkZSBub3UuXG4iCiAiVmVnZXUgbGEgJ05vdGEgc29icmUgYXZhbsOnb3MgcsOgcGlkcycgYSAnZ2l0IHB1c2ggLS1oZWxwJyBwZXIgZGV0YWxscy4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI4NgorIzogYnVpbHRpbi9wdXNoLmM6Mjg5CiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSByZW1vdGUgY29udGFpbnMgd29yayB0aGF0IHlvdSBkb1xuIgogIm5vdCBoYXZlIGxvY2FsbHkuIFRoaXMgaXMgdXN1YWxseSBjYXVzZWQgYnkgYW5vdGhlciByZXBvc2l0b3J5IHB1c2hpbmdcbiIKQEAgLTE0NzUwLDEyICsxNzQxNywxMiBAQAogInB1amFyIGRlIG5vdS5cbiIKICJWZWdldSBsYSAnTm90YSBzb2JyZSBhdmFuw6dvcyByw6BwaWRzJyBhICdnaXQgcHVzaCAtLWhlbHAnIHBlciBkZXRhbGxzLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjkzCisjOiBidWlsdGluL3B1c2guYzoyOTYKIG1zZ2lkICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgdGFnIGFscmVhZHkgZXhpc3RzIGluIHRoZSByZW1vdGUuIgogbXNnc3RyICIiCiAiUydoYW4gcmVidXRqYXQgbGVzIGFjdHVhbGl0emFjaW9ucyBwZXJxdcOoIGwnZXRpcXVldGEgamEgZXhpc3RlaXggZW4gZWwgcmVtb3QuIgogCi0jOiBidWlsdGluL3B1c2guYzoyOTYKKyM6IGJ1aWx0aW4vcHVzaC5jOjI5OQogbXNnaWQgIiIKICJZb3UgY2Fubm90IHVwZGF0ZSBhIHJlbW90ZSByZWYgdGhhdCBwb2ludHMgYXQgYSBub24tY29tbWl0IG9iamVjdCxcbiIKICJvciB1cGRhdGUgYSByZW1vdGUgcmVmIHRvIG1ha2UgaXQgcG9pbnQgYXQgYSBub24tY29tbWl0IG9iamVjdCxcbiIKQEAgLTE0NzY2LDIyICsxNzQzMyw5OSBAQAogImZlciBxdWUgYXNzZW55YWxpIHVuIG9iamVjdGUgbm8gZGUgY29taXNzacOzLCBzZW5zZSB1c2FyIGwnb3BjacOzXG4iCiAiJy0tZm9yY2UnLlxuIgogCi0jOiBidWlsdGluL3B1c2guYzozNTcKKyM6IGJ1aWx0aW4vcHVzaC5jOjM2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJQdXNoaW5nIHRvICVzXG4iCiBtc2dzdHIgIlMnZXN0w6AgcHVqYW50IGEgJXNcbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MzYxCisjOiBidWlsdGluL3B1c2guYzozNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHB1c2ggc29tZSByZWZzIHRvICclcyciCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gcHVqYXIgYWxndW5lcyByZWZlcsOobmNpZXMgYSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM5NQorIzogYnVpbHRpbi9wdXNoLmM6NTQyCittc2dpZCAicmVwb3NpdG9yeSIKK21zZ3N0ciAiZGlww7JzaXQiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0MyBidWlsdGluL3NlbmQtcGFjay5jOjE2NAorbXNnaWQgInB1c2ggYWxsIHJlZnMiCittc2dzdHIgInB1amEgdG90ZXMgbGVzIHJlZmVyw6huY2llcyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ0IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY2Cittc2dpZCAibWlycm9yIGFsbCByZWZzIgorbXNnc3RyICJyZWZsZWN0ZWl4IHRvdGVzIGxlcyByZWZlcsOobmNpZXMiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0NgorbXNnaWQgImRlbGV0ZSByZWZzIgorbXNnc3RyICJzdXByaW1laXggbGVzIHJlZmVyw6huY2llcyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ3Cittc2dpZCAicHVzaCB0YWdzIChjYW4ndCBiZSB1c2VkIHdpdGggLS1hbGwgb3IgLS1taXJyb3IpIgorbXNnc3RyICJwdWphIGxlcyBldGlxdWV0ZXMgKG5vIGVzIHBvdCB1c2FyIGFtYiAtLWFsbCBvIC0tbWlycm9yKSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY3Cittc2dpZCAiZm9yY2UgdXBkYXRlcyIKK21zZ3N0ciAiZm9yw6dhIGxlcyBhY3R1YWxpdHphY2lvbnMiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1MiBidWlsdGluL3NlbmQtcGFjay5jOjE4MQorbXNnaWQgIjxyZWZuYW1lPjo8ZXhwZWN0PiIKK21zZ3N0ciAiPG5vbS1kZS1yZWZlcsOobmNpYT46PGVzcGVyYXQ+IgorCisjOiBidWlsdGluL3B1c2guYzo1NTMgYnVpbHRpbi9zZW5kLXBhY2suYzoxODIKK21zZ2lkICJyZXF1aXJlIG9sZCB2YWx1ZSBvZiByZWYgdG8gYmUgYXQgdGhpcyB2YWx1ZSIKK21zZ3N0ciAicmVxdWVyZWl4IHF1ZSBlbCB2YWxvciBhbnRpYyBkZSBsYSByZWZlcsOobmNpYSBzaWd1aSBkJ2FxdWVzdCB2YWxvciIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU2Cittc2dpZCAiY29udHJvbCByZWN1cnNpdmUgcHVzaGluZyBvZiBzdWJtb2R1bGVzIgorbXNnc3RyICJjb250cm9sYSBsYSBwdWphZGEgcmVjdXJzaXZhIGRlbHMgc3VibcOyZHVscyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU4IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc1Cittc2dpZCAidXNlIHRoaW4gcGFjayIKK21zZ3N0ciAidXNhIGVsIHBhcXVldCBwcmltIgorCisjOiBidWlsdGluL3B1c2guYzo1NTkgYnVpbHRpbi9wdXNoLmM6NTYwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYxCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE2MgorbXNnaWQgInJlY2VpdmUgcGFjayBwcm9ncmFtIgorbXNnc3RyICJwcm9ncmFtYSBxdWUgcmVwIGVscyBwYXF1ZXRzIgorCisjOiBidWlsdGluL3B1c2guYzo1NjEKK21zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL3N0YXR1cyIKK21zZ3N0ciAiZXN0YWJsZWl4IGxhIGZvbnQgcGVyIGEgZ2l0IHB1bGwvc3RhdHVzIgorCisjOiBidWlsdGluL3B1c2guYzo1NjQKK21zZ2lkICJwcnVuZSBsb2NhbGx5IHJlbW92ZWQgcmVmcyIKK21zZ3N0ciAicG9kYSBsZXMgcmVmZXLDqG5jaWVzIGVsaW1pbmFkZXMgbG9jYWxtZW50IgorCisjOiBidWlsdGluL3B1c2guYzo1NjYKK21zZ2lkICJieXBhc3MgcHJlLXB1c2ggaG9vayIKK21zZ3N0ciAiZXZpdGEgZWwgbGxpZ2FtIGRlIHByZXB1amFkYSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTY3Cittc2dpZCAicHVzaCBtaXNzaW5nIGJ1dCByZWxldmFudCB0YWdzIgorbXNnc3RyICJwdWphIGxlcyBldGlxdWV0ZXMgYWJzZW50cyBwZXLDsiByZWxsZXZhbnRzIgorCisjOiBidWlsdGluL3B1c2guYzo1NzAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjkKK21zZ2lkICJHUEcgc2lnbiB0aGUgcHVzaCIKK21zZ3N0ciAic2lnbmEgbGEgcHVqYWRhIGFtYiBHUEciCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3MiBidWlsdGluL3NlbmQtcGFjay5jOjE3NgorbXNnaWQgInJlcXVlc3QgYXRvbWljIHRyYW5zYWN0aW9uIG9uIHJlbW90ZSBzaWRlIgorbXNnc3RyICJkZW1hbmEgdW5hIHRyYW5zYWNjacOzIGF0w7JtaWNhIGFsIGNvc3RhdCByZW1vdCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTkwCittc2dpZCAiLS1kZWxldGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tbWlycm9yIGFuZCAtLXRhZ3MiCittc2dzdHIgIi0tZGVsZXRlIMOpcyBpbmNvbXBhdGlibGUgYW1iIC0tYWxsLCAtLW1pcnJvciBpIC0tdGFncyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTkyCittc2dpZCAiLS1kZWxldGUgZG9lc24ndCBtYWtlIHNlbnNlIHdpdGhvdXQgYW55IHJlZnMiCittc2dzdHIgIi0tZGVsZXRlIG5vIHTDqSBzZW50aXQgc2Vuc2UgcmVmZXLDqG5jaWVzIgorCisjOiBidWlsdGluL3B1c2guYzo2MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJlcG9zaXRvcnkgJyVzJyIKIG1zZ3N0ciAiZGlww7JzaXQgaW5jb3JyZWN0ZSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM5NgorIzogYnVpbHRpbi9wdXNoLmM6NjEzCiBtc2dpZCAiIgogIk5vIGNvbmZpZ3VyZWQgcHVzaCBkZXN0aW5hdGlvbi5cbiIKICJFaXRoZXIgc3BlY2lmeSB0aGUgVVJMIGZyb20gdGhlIGNvbW1hbmQtbGluZSBvciBjb25maWd1cmUgYSByZW1vdGUgIgpAQCAtMTQ4MDMsMTA1ICsxNzU0NywyNyBAQAogIlxuIgogIiAgICBnaXQgcHVzaCA8bm9tPlxuIgogCi0jOiBidWlsdGluL3B1c2guYzo1NTEKLW1zZ2lkICJyZXBvc2l0b3J5IgotbXNnc3RyICJkaXDDsnNpdCIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY0Ci1tc2dpZCAicHVzaCBhbGwgcmVmcyIKLW1zZ3N0ciAicHVqYSB0b3RlcyBsZXMgcmVmZXLDqG5jaWVzIgotCi0jOiBidWlsdGluL3B1c2guYzo1NTMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjYKLW1zZ2lkICJtaXJyb3IgYWxsIHJlZnMiCi1tc2dzdHIgInJlZmxlY3RlaXggdG90ZXMgbGVzIHJlZmVyw6huY2llcyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTU1Ci1tc2dpZCAiZGVsZXRlIHJlZnMiCi1tc2dzdHIgInN1cHJpbWVpeCBsZXMgcmVmZXLDqG5jaWVzIgotCi0jOiBidWlsdGluL3B1c2guYzo1NTYKLW1zZ2lkICJwdXNoIHRhZ3MgKGNhbid0IGJlIHVzZWQgd2l0aCAtLWFsbCBvciAtLW1pcnJvcikiCi1tc2dzdHIgInB1amEgbGVzIGV0aXF1ZXRlcyAobm8gZXMgcG90IHVzYXIgYW1iIC0tYWxsIG8gLS1taXJyb3IpIgotCi0jOiBidWlsdGluL3B1c2guYzo1NTkgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjcKLW1zZ2lkICJmb3JjZSB1cGRhdGVzIgotbXNnc3RyICJmb3LDp2EgbGVzIGFjdHVhbGl0emFjaW9ucyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTYxIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgxCi0jLCBmdXp6eQotbXNnaWQgIjxyZWZuYW1lPjo8ZXhwZWN0PiIKLW1zZ3N0ciAibm9tLWRlLXJlZmVyw6huY2lhPjo8ZXNwZXJhdCIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTYyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgyCi1tc2dpZCAicmVxdWlyZSBvbGQgdmFsdWUgb2YgcmVmIHRvIGJlIGF0IHRoaXMgdmFsdWUiCi1tc2dzdHIgInJlcXVlcmVpeCBxdWUgZWwgdmFsb3IgYW50aWMgZGUgbGEgcmVmZXLDqG5jaWEgc2lndWkgZCdhcXVlc3QgdmFsb3IiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2NQotbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIHB1c2hpbmcgb2Ygc3VibW9kdWxlcyIKLW1zZ3N0ciAiY29udHJvbGEgbGEgcHVqYWRhIHJlY3Vyc2l2YSBkZWxzIHN1Ym3DsmR1bHMiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2NyBidWlsdGluL3NlbmQtcGFjay5jOjE3NQotbXNnaWQgInVzZSB0aGluIHBhY2siCi1tc2dzdHIgInVzYSBlbCBwYXF1ZXQgcHJpbSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTY4IGJ1aWx0aW4vcHVzaC5jOjU2OSBidWlsdGluL3NlbmQtcGFjay5jOjE2MQotIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNjIKLW1zZ2lkICJyZWNlaXZlIHBhY2sgcHJvZ3JhbSIKLW1zZ3N0ciAicHJvZ3JhbWEgcXVlIHJlcCBlbHMgcGFxdWV0cyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTcwCi1tc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9zdGF0dXMiCi1tc2dzdHIgImVzdGFibGVpeCBsYSBmb250IHBlciBhIGdpdCBwdWxsL3N0YXR1cyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTczCi1tc2dpZCAicHJ1bmUgbG9jYWxseSByZW1vdmVkIHJlZnMiCi1tc2dzdHIgInBvZGEgbGVzIHJlZmVyw6huY2llcyBlbGltaW5hZGVzIGxvY2FsbWVudCIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTc1Ci1tc2dpZCAiYnlwYXNzIHByZS1wdXNoIGhvb2siCi1tc2dzdHIgImV2aXRhIGVsIGxsaWdhbSBkZSBwcmVwdWphZGEiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3NgotbXNnaWQgInB1c2ggbWlzc2luZyBidXQgcmVsZXZhbnQgdGFncyIKLW1zZ3N0ciAicHVqYSBsZXMgZXRpcXVldGVzIGFic2VudHMgcGVyw7IgcmVsbGV2YW50cyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTc5IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY5Ci1tc2dpZCAiR1BHIHNpZ24gdGhlIHB1c2giCi1tc2dzdHIgInNpZ25hIGxhIHB1amFkYSBhbWIgR1BHIgotCi0jOiBidWlsdGluL3B1c2guYzo1ODEgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzYKLW1zZ2lkICJyZXF1ZXN0IGF0b21pYyB0cmFuc2FjdGlvbiBvbiByZW1vdGUgc2lkZSIKLW1zZ3N0ciAiZGVtYW5hIHVuYSB0cmFuc2FjY2nDsyBhdMOybWljYSBhbCBjb3N0YXQgcmVtb3QiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU5OQotbXNnaWQgIi0tZGVsZXRlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWxsLCAtLW1pcnJvciBhbmQgLS10YWdzIgotbXNnc3RyICItLWRlbGV0ZSDDqXMgaW5jb21wYXRpYmxlIGFtYiAtLWFsbCwgLS1taXJyb3IgaSAtLXRhZ3MiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjYwMQotbXNnaWQgIi0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSB3aXRob3V0IGFueSByZWZzIgotbXNnc3RyICItLWRlbGV0ZSBubyB0w6kgc2VudGl0IHNlbnNlIHJlZmVyw6huY2llcyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NjA0CisjOiBidWlsdGluL3B1c2guYzo2MjgKIG1zZ2lkICItLWFsbCBhbmQgLS10YWdzIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0tYWxsIGkgLS10YWdzIHPDs24gaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjA2CisjOiBidWlsdGluL3B1c2guYzo2MzAKIG1zZ2lkICItLWFsbCBjYW4ndCBiZSBjb21iaW5lZCB3aXRoIHJlZnNwZWNzIgogbXNnc3RyICItLWFsbCBubyBlcyBwb3QgY29tYmluYXIgYW1iIGVzcGVjaWZpY2FjaW9ucyBkZSByZWZlcsOobmNpYSIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjEwCisjOiBidWlsdGluL3B1c2guYzo2MzQKIG1zZ2lkICItLW1pcnJvciBhbmQgLS10YWdzIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0tbWlycm9yIGkgLS10YWdzIHPDs24gaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjEyCisjOiBidWlsdGluL3B1c2guYzo2MzYKIG1zZ2lkICItLW1pcnJvciBjYW4ndCBiZSBjb21iaW5lZCB3aXRoIHJlZnNwZWNzIgogbXNnc3RyICItLW1pcnJvciBubyBlcyBwb3QgY29tYmluYXIgYW1iIGVzcGVjaWZpY2FjaW9ucyBkZSByZWZlcsOobmNpYSIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjE1CisjOiBidWlsdGluL3B1c2guYzo2MzkKIG1zZ2lkICItLWFsbCBhbmQgLS1taXJyb3IgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1hbGwgaSAtLW1pcnJvciBzw7NuIGluY29tcGF0aWJsZXMiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYzNAorIzogYnVpbHRpbi9wdXNoLmM6NjQzCiBtc2dpZCAicHVzaCBvcHRpb25zIG11c3Qgbm90IGhhdmUgbmV3IGxpbmUgY2hhcmFjdGVycyIKIG1zZ3N0ciAibGVzIG9wY2lvbnMgZGUgcHVqYWRhIG5vIGhhbiBkZSB0ZW5pciBjYXLDoGN0ZXJzIGRlIGzDrW5pYSBub3ZhIgogCkBAIC0xNDkxOSwyOCArMTc1ODUsMzggQEAKIG1zZ2lkICJnaXQgcmFuZ2UtZGlmZiBbPG9wdGlvbnM+XSA8YmFzZT4gPG9sZC10aXA+IDxuZXctdGlwPiIKIG1zZ3N0ciAiZ2l0IG12IFs8b3BjaW9ucz5dIDxmb250Pi4uLiA8ZGVzdMOtPiIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjEKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjIyCiBtc2dpZCAiUGVyY2VudGFnZSBieSB3aGljaCBjcmVhdGlvbiBpcyB3ZWlnaHRlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyMworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjQKIG1zZ2lkICJ1c2Ugc2ltcGxlIGRpZmYgY29sb3JzIgogbXNnc3RyICJ1dGlsaXR6YSBjb2xvcnMgc2ltcGxlcyBkZSBkaWZmIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo2MSBidWlsdGluL3JhbmdlLWRpZmYuYzo2NQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjYKKyMsIGZ1enp5Cittc2dpZCAibm90ZXMiCittc2dzdHIgIm5vdGVzIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyNgorIywgZnV6enkKK21zZ2lkICJwYXNzZWQgdG8gJ2dpdCBsb2cnIgorbXNnc3RyICJwYXNzYS1obyBhIMKrZ2l0IGFtwrsiCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjUwIGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIC4uIGluIHJhbmdlOiAnJXMnIgogbXNnc3RyICJjYXAgLi4gZW4gcmFuZzogwqslc8K7IgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo3NQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjQKIG1zZ2lkICJzaW5nbGUgYXJnIGZvcm1hdCBtdXN0IGJlIHN5bW1ldHJpYyByYW5nZSIKIG1zZ3N0ciAiZWwgZm9ybWF0IGRlIGwnYXJndW1lbnQgw7puaWMgaGEgZGUgc2VyIGRlIHJhbmcgc2ltw6h0cmljIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo5MAorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NzkKIG1zZ2lkICJuZWVkIHR3byBjb21taXQgcmFuZ2VzIgogbXNnc3RyICJjYWxlbiBkb3MgcmFuZ3MgZGUgY29taXNzacOzIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjQwCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjQxCiBtc2dpZCAiIgogImdpdCByZWFkLXRyZWUgWygtbSBbLS10cml2aWFsXSBbLS1hZ2dyZXNzaXZlXSB8IC0tcmVzZXQgfCAtLXByZWZpeD08cHJlZml4PikgIgogIlstdSBbLS1leGNsdWRlLXBlci1kaXJlY3Rvcnk9PGdpdGlnbm9yZT5dIHwgLWldXSBbLS1uby1zcGFyc2UtY2hlY2tvdXRdIFstLSIKQEAgLTE0OTUwLDExOSArMTc2MjYsMzE5IEBACiAiWy11IFstLWV4Y2x1ZGUtcGVyLWRpcmVjdG9yeT08Z2l0aWdub3JlPl0gfCAtaV1dIFstLW5vLXNwYXJzZS1jaGVja291dF0gWy0tIgogImluZGV4LW91dHB1dD08Zml0eGVyPl0gKC0tZW1wdHkgfCA8YXJicmUxPiBbPGFyYnJlMj4gWzxhcmJyZTM+XV0pIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjQKIG1zZ2lkICJ3cml0ZSByZXN1bHRpbmcgaW5kZXggdG8gPGZpbGU+IgogbXNnc3RyICJlc2NyaXUgbCfDrW5kZXggcmVzdWx0YW50IGFsIDxmaXR4ZXI+IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNgorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjcKIG1zZ2lkICJvbmx5IGVtcHR5IHRoZSBpbmRleCIKIG1zZ3N0ciAibm9tw6lzIGJ1aWRhIGwnw61uZGV4IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyOAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjkKIG1zZ2lkICJNZXJnaW5nIgogbXNnc3RyICJTJ2VzdMOgIGZ1c2lvbmFudCIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzAKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMxCiBtc2dpZCAicGVyZm9ybSBhIG1lcmdlIGluIGFkZGl0aW9uIHRvIGEgcmVhZCIKIG1zZ3N0ciAicmVhbGl0emEgdW5hIGZ1c2nDsyBhIG3DqXMgZCd1bmEgbGVjdHVyYSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzIKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMzCiBtc2dpZCAiMy13YXkgbWVyZ2UgaWYgbm8gZmlsZSBsZXZlbCBtZXJnaW5nIHJlcXVpcmVkIgogbXNnc3RyICJmdXNpw7MgZGUgMyB2aWVzIHNpIG5vIGNhbCBmdXNpw7MgYSBuaXZlbGwgZGUgZml0eGVycyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzQKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM1CiBtc2dpZCAiMy13YXkgbWVyZ2UgaW4gcHJlc2VuY2Ugb2YgYWRkcyBhbmQgcmVtb3ZlcyIKIG1zZ3N0ciAiZnVzacOzIGRlIDMgdmllcyBlbiBwcmVzw6huY2lhIGQnYWZlZ2ltZW50cyBpIGVsaW1pbmFjaW9ucyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzYKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM3CiBtc2dpZCAic2FtZSBhcyAtbSwgYnV0IGRpc2NhcmQgdW5tZXJnZWQgZW50cmllcyIKIG1zZ3N0ciAiZWwgbWF0ZWl4IHF1ZSAtbSwgcGVyw7IgZGVzY2FydGEgbGVzIGVudHJhZGVzIG5vIGZ1c2lvbmFkZXMiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM3CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzOAogbXNnaWQgIjxzdWJkaXJlY3Rvcnk+LyIKIG1zZ3N0ciAiPHN1YmRpcmVjdG9yaT4vIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzOAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzkKIG1zZ2lkICJyZWFkIHRoZSB0cmVlIGludG8gdGhlIGluZGV4IHVuZGVyIDxzdWJkaXJlY3Rvcnk+LyIKIG1zZ3N0ciAibGxlZ2l1IGwnYXJicmUgYSBsJ8OtbmRleCBzb3RhIDxzdWJkaXJlY3Rvcmk+LyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDEKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQyCiBtc2dpZCAidXBkYXRlIHdvcmtpbmcgdHJlZSB3aXRoIG1lcmdlIHJlc3VsdCIKIG1zZ3N0ciAiYWN0dWFsaXR6YSBsJ2FyYnJlIGRlIHRyZWJhbGwgYW1iIGVsIHJlc3VsdGF0IGRlIGZ1c2nDsyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDMKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ0CiBtc2dpZCAiZ2l0aWdub3JlIgogbXNnc3RyICJnaXRpZ25vcmUiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ0CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NQogbXNnaWQgImFsbG93IGV4cGxpY2l0bHkgaWdub3JlZCBmaWxlcyB0byBiZSBvdmVyd3JpdHRlbiIKIG1zZ3N0ciAicGVybWV0IHF1ZSBlbHMgZml0eGVycyBleHBsw61jaXRhbWVudCBpZ25vcmF0cyBzZSBzb2JyZWVzY3JpZ3VpbiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDcKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ4CiBtc2dpZCAiZG9uJ3QgY2hlY2sgdGhlIHdvcmtpbmcgdHJlZSBhZnRlciBtZXJnaW5nIgogbXNnc3RyICJubyBjb21wcm92aXMgbCdhcmJyZSBkZSB0cmViYWxsIGRlc3Byw6lzIGRlIGZ1c2lvbmFyIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0OAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDkKIG1zZ2lkICJkb24ndCB1cGRhdGUgdGhlIGluZGV4IG9yIHRoZSB3b3JrIHRyZWUiCiBtc2dzdHIgIm5vIGFjdHVhbGl0emlzIGwnw61uZGV4IG5pIGwnYXJicmUgZGUgdHJlYmFsbCIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTAKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUxCiBtc2dpZCAic2tpcCBhcHBseWluZyBzcGFyc2UgY2hlY2tvdXQgZmlsdGVyIgogbXNnc3RyICJvbWV0IGwnYXBsaWNhY2nDsyBkZWwgZmlsdHJlIGQnYWdhZmFtZW50IHBhcmNpYWwiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUyCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MwogbXNnaWQgImRlYnVnIHVucGFjay10cmVlcyIKIG1zZ3N0ciAiZGVwdXJhIHVucGFjay10cmVlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyOQorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTcKKyMsIGZ1enp5Cittc2dpZCAic3VwcHJlc3MgZmVlZGJhY2sgbWVzc2FnZXMiCittc2dzdHIgIm9tZXQgZWxzIG1pc3NhdGdlcyBpbmZvcm1hdGl1cyIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxODgKKyMsIGZ1enp5Cittc2dpZCAiWW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiCittc2dzdHIgImhldSBkZSBwcmltZXIgcmVzb2xkcmUgZWwgdm9zdHJlIMOtbmRleCBhY3R1YWwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzIKICMsIGZ1enp5CiBtc2dpZCAiIgotImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dIFs8dXBzdHJlYW0+XSAiCi0iWzxicmFuY2g+XSIKKyJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+IHwgLS1rZWVwLWJhc2VdICIKKyJbPHVwc3RyZWFtPiBbPGJyYW5jaD5dXSIKIG1zZ3N0ciAiIgogImdpdCBhcmNoaXZlIC0tcmVtb3RlIDxkaXDDsnNpdD4gWy0tZXhlYyA8b3JkcmU+XSBbPG9wY2lvbnM+XSA8YXJicmU+ICIKICJbPGNhbcOtPi4uLl0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MzEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzQKIG1zZ2lkICIiCiAiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPl0gLS1yb290IFs8YnJhbmNoPl0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzozMworIzogYnVpbHRpbi9yZWJhc2UuYzozNgogbXNnaWQgImdpdCByZWJhc2UgLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXAgfCAtLWVkaXQtdG9kbyIKIG1zZ3N0ciAiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIHwgLS1hYm9ydCB8IC0tc2tpcCB8IC0tZWRpdC10b2RvIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExOQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNzcgYnVpbHRpbi9yZWJhc2UuYzoyMDEgYnVpbHRpbi9yZWJhc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW51c2FibGUgdG9kbyBsaXN0OiAnJXMnIgorbXNnc3RyICJsbGlzdGEgcGVyIGEgZmVyIGluZXN0YWJsZTogwqslc8K7IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE4NiBidWlsdGluL3JlYmFzZS5jOjIxMiBidWlsdGluL3JlYmFzZS5jOjIzNgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJy4iCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgYSDCqyVzwrsuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjI3MQorbXNnaWQgIm5vIEhFQUQ/IgorbXNnc3RyICJubyBoaSBoYSBjYXAgSEVBRD8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6Mjk4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5ICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGVsIGZpdHhlciB0ZW1wb3JhbCAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozMDQKK21zZ2lkICJjb3VsZCBub3QgbWFyayBhcyBpbnRlcmFjdGl2ZSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBtYXJjYXIgY29tIGEgaW50ZXJhY3RpdSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozNjIKK21zZ2lkICJjb3VsZCBub3QgZ2VuZXJhdGUgdG9kbyBsaXN0IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGdlbmVyYXIgbGEgbGxpc3RhIHBlciBhIGZlciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0MDIKK21zZ2lkICJhIGJhc2UgY29tbWl0IG11c3QgYmUgcHJvdmlkZWQgd2l0aCAtLXVwc3RyZWFtIG9yIC0tb250byIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ1NworbXNnaWQgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPG9wY2lvbnM+XSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NjkKK21zZ2lkICJrZWVwIGVtcHR5IGNvbW1pdHMiCittc2dzdHIgIm1hbnTDqW4gbGVzIGNvbWlzc2lvbnMgYnVpZGVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ3MSBidWlsdGluL3JldmVydC5jOjEyOAorbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKK21zZ3N0ciAicGVybWV0IGxlcyBjb21pc3Npb25zIGFtYiBtaXNzYXRnZXMgYnVpdHMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDcyCittc2dpZCAicmViYXNlIG1lcmdlIGNvbW1pdHMiCittc2dzdHIgImZlcyDCq3JlYmFzZcK7IGRlIGxlcyBjb21pc3Npb25zIGRlIGZ1c2nDsyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NzQKK21zZ2lkICJrZWVwIG9yaWdpbmFsIGJyYW5jaCBwb2ludHMgb2YgY291c2lucyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ3NgorbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NzcKK21zZ2lkICJzaWduIGNvbW1pdHMiCittc2dzdHIgInNpZ25hIGxlcyBjb21pc3Npb25zIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ3OSBidWlsdGluL3JlYmFzZS5jOjE0NTUKK21zZ2lkICJkaXNwbGF5IGEgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDgxCittc2dpZCAiY29udGludWUgcmViYXNlIgorbXNnc3RyICJjb250aW51YSBlbCDCq3JlYmFzZcK7IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4MworbXNnaWQgInNraXAgY29tbWl0IgorbXNnc3RyICJvbWV0IGxhIGNvbWlzc2nDsyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODQKK21zZ2lkICJlZGl0IHRoZSB0b2RvIGxpc3QiCittc2dzdHIgImVkaXRhIGxhIGxsaXN0YSBhIGZlciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODYKK21zZ2lkICJzaG93IHRoZSBjdXJyZW50IHBhdGNoIgorbXNnc3RyICJtb3N0cmEgZWwgcGVkYcOnIGFjdHVhbCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODkKK21zZ2lkICJzaG9ydGVuIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAiZXNjdXLDp2EgZWxzIGlkcyBkZSBsZXMgY29taXNzaW9ucyBlbiBsYSBsbGlzdGEgcGVyIGEgZmVyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5MQorbXNnaWQgImV4cGFuZCBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCittc2dzdHIgImV4cGFuZGVpeCBlbHMgaWRzIGRlIGxlcyBjb21pc3Npb25zIGVuIGxhIGxsaXN0YSBwZXIgYSBmZXIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDkzCittc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAiY29tcHJvdmEgbGEgbGxpc3RhIGEgZmVyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5NQorbXNnaWQgInJlYXJyYW5nZSBmaXh1cC9zcXVhc2ggbGluZXMiCittc2dzdHIgInJlb3JnYW5pdHphIGxlcyBsw61uaWVzIMKrZml4dXAvcGlja8K7IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5NworbXNnaWQgImluc2VydCBleGVjIGNvbW1hbmRzIGluIHRvZG8gbGlzdCIKK21zZ3N0ciAiZXhwYW5kZWl4IGxlcyBvcmRyZXMgZXhlYyBlbiBsYSBsbGlzdGEgcGVyIGEgZmVyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5OAorbXNnaWQgIm9udG8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDEKKyMsIGZ1enp5Cittc2dpZCAicmVzdHJpY3QtcmV2aXNpb24iCittc2dzdHIgInJldmlzacOzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwMQorIywgZnV6enkKK21zZ2lkICJyZXN0cmljdCByZXZpc2lvbiIKK21zZ3N0ciAicmV2aXNpw7MiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAzCittc2dpZCAic3F1YXNoLW9udG8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDQKK21zZ2lkICJzcXVhc2ggb250byIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwNgorIywgZnV6enkKK21zZ2lkICJ0aGUgdXBzdHJlYW0gY29tbWl0IgorbXNnc3RyICJEZXNhc3NpZ25hIGxhIGluZm9ybWFjacOzIGRlIGZvbnQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTA4CisjLCBmdXp6eQorbXNnaWQgImhlYWQtbmFtZSIKK21zZ3N0ciAiY2FudmkgZGUgbm9tIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwOAorIywgZnV6enkKK21zZ2lkICJoZWFkIG5hbWUiCittc2dzdHIgImRhdmFudCBwZXIgIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxMworIywgZnV6enkKK21zZ2lkICJyZWJhc2Ugc3RyYXRlZ3kiCittc2dzdHIgImVzdHJhdMOoZ2lhIGRlIGZ1c2nDsyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTQKKyMsIGZ1enp5Cittc2dpZCAic3RyYXRlZ3ktb3B0cyIKK21zZ3N0ciAiZXN0cmF0w6hnaWEiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTE1CisjLCBmdXp6eQorbXNnaWQgInN0cmF0ZWd5IG9wdGlvbnMiCittc2dzdHIgIm9wY2lvbnMgZGUgZGVjb3JhY2nDsyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTYKK21zZ2lkICJzd2l0Y2gtdG8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTcKK21zZ2lkICJ0aGUgYnJhbmNoIG9yIGNvbW1pdCB0byBjaGVja291dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxOAorIywgZnV6enkKK21zZ2lkICJvbnRvLW5hbWUiCittc2dzdHIgIm5vbSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTgKKyMsIGZ1enp5Cittc2dpZCAib250byBuYW1lIgorbXNnc3RyICJub20gZGVsIHJlbW90IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxOQorIywgZnV6enkKK21zZ2lkICJjbWQiCittc2dzdHIgIm9yZHJlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxOQorbXNnaWQgInRoZSBjb21tYW5kIHRvIHJ1biIKK21zZ3N0ciAibCdvcmRyZSBhIGV4ZWN1dGFyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyMiBidWlsdGluL3JlYmFzZS5jOjE1NDAKK21zZ2lkICJhdXRvbWF0aWNhbGx5IHJlLXNjaGVkdWxlIGFueSBgZXhlY2AgdGhhdCBmYWlscyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjU0MAorbXNnaWQgIi0tW25vLV1yZWJhc2UtY291c2lucyBoYXMgbm8gZWZmZWN0IHdpdGhvdXQgLS1yZWJhc2UtbWVyZ2VzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHJlcXVpcmVzIGFuIGludGVyYWN0aXZlIHJlYmFzZSIKIG1zZ3N0ciAiJXMgcmVxdWVyZWl4IHVuIMKrcmViYXNlwrsgaW50ZXJhY3RpdSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNzEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NjA4CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0ICdvbnRvJzogJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc3RhYmxpciDCqyVzwrsgYSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTg2CisjOiBidWlsdGluL3JlYmFzZS5jOjYyMwogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvcmlnLWhlYWQ6ICclcyciCiBtc2dzdHIgImZpdHhlciBubyB2w6BsaWQ6IMKrJXPCuyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyMTQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NjQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIGludmFsaWQgYWxsb3dfcmVyZXJlX2F1dG91cGRhdGU6ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyNTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NzI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZWFkICclcyciCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgbGxlZ2lyIMKrJXPCuyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyNzcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NzQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBzdG9yZSAlcyIKIG1zZ3N0ciAiTm8gZXMgcG90IGVtbWFnYXR6ZW1hciAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzozMzcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6ODQ5Cittc2dpZCAiY291bGQgbm90IGRldGVybWluZSBIRUFEIHJldmlzaW9uIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGRldGVybWluYXIgbGEgcmV2aXNpw7MgZGUgSEVBRCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo5NzIgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgxCiBtc2dpZCAiIgogIlJlc29sdmUgYWxsIGNvbmZsaWN0cyBtYW51YWxseSwgbWFyayB0aGVtIGFzIHJlc29sdmVkIHdpdGhcbiIKICJcImdpdCBhZGQvcm0gPGNvbmZsaWN0ZWRfZmlsZXM+XCIsIHRoZW4gcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIuXG4iCkBAIC0xNTA3MSwxOCArMTc5NDcsMjYgQEAKICJhYm9ydFwiLiIKIG1zZ3N0ciAiIgogIlJlc29sZXUgdG90cyBlbHMgY29uZmxpY3RlcyBtYW51YWxtZW50LCBtYXJxdWV1LWxvcyBjb20gYSByZXNvbHRzIGFtYlxuIgotIsKrZ2l0IGFkZC9ybSA8Zml0eGVycyBhbWIgY29uZmxpY3RlPsK7LCBsbGF2b3JzIGV4ZWN1dGV1IMKrZ2l0IHJlYmFzZSAtLSIKKyLCq2dpdCBhZGQvcm0gPGZpdHhlcnNfYW1iX2NvbmZsaWN0ZT7CuywgbGxhdm9ycyBleGVjdXRldSDCq2dpdCByZWJhc2UgLS0iCiAiY29udGludWXCuy5cbiIKICJQb2RldSBlbiBjb21wdGVzIG9tZXRyZSBhcXVlc3RhIGNvbWlzc2nDszogZXhlY3V0ZXUgwqtnaXQgcmViYXNlIC0tc2tpcMK7LlxuIgogIlBlciBhIGF2b3J0YXIgaSB0b3JuYXIgYSBsJ2VzdGF0IGFudGVyaW9yIGFiYW5zIGRlIGwnb3JkcmUgwqtnaXQgcmViYXNlwrssICIKICJleGVjdXRldSDCq2dpdCByZWJhc2UgLS1hYm9ydMK7LiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo1NjEKLW1zZ2lkICJjb3VsZCBub3QgZGV0ZXJtaW5lIEhFQUQgcmV2aXNpb24iCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgZGV0ZXJtaW5hciBsYSByZXZpc2nDsyBkZSBIRUFEIgorIzogYnVpbHRpbi9yZWJhc2UuYzoxMDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJnaXQgZW5jb3VudGVyZWQgYW4gZXJyb3Igd2hpbGUgcHJlcGFyaW5nIHRoZSBwYXRjaGVzIHRvIHJlcGxheVxuIgorInRoZXNlIHJldmlzaW9uczpcbiIKKyJcbiIKKyIgICAgJXNcbiIKKyJcbiIKKyJBcyBhIHJlc3VsdCwgZ2l0IGNhbm5vdCByZWJhc2UgdGhlbS4iCittc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo3NTIKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogYnVpbHRpbi9yZWJhc2UuYzoxMzY3CisjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIlc1xuIgogIlBsZWFzZSBzcGVjaWZ5IHdoaWNoIGJyYW5jaCB5b3Ugd2FudCB0byByZWJhc2UgYWdhaW5zdC5cbiIKQEAgLTE1MDkwLDEwICsxNzk3NCwxNiBAQAogIlxuIgogIiAgICBnaXQgcmViYXNlICc8YnJhbmNoPidcbiIKICJcbiIKLW1zZ3N0ciAiRXNwZWNpZmlxdWV1IHNvYnJlIHF1w6ggYnJhbmNhIHZvbGV1IGZlciDCq3JlYmFzZcK7LiIKK21zZ3N0ciAiIgorIiVzXG4iCisiRXNwZWNpZmlxdWV1IHNvYnJlIHF1w6ggYnJhbmNhIHZvbGV1IGZlciDCq3JlYmFzZcK7LlxuIgorIlZlZ2V1IGdpdC1yZWJhc2UoMSkgcGVyIGRldGFsbHMuXG4iCisiXG4iCisiICAgIGdpdCByZWJhc2UgJzxicmFuY2E+J1xuIgorIlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjc2OAotIywgZnV6enksIGMtZm9ybWF0CisjOiBidWlsdGluL3JlYmFzZS5jOjEzODMKKyMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3aXNoIHRvIHNldCB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhpcyBicmFuY2ggeW91IGNhbiBkbyBzbyB3aXRoOlxuIgogIlxuIgpAQCAtMTUxMDEsMTYwICsxNzk5MSwyMDAgQEAKICJcbiIKIG1zZ3N0ciAiIgogIlNpIHZvbGV1IGVzdGFibGlyIGluZm9ybWFjacOzIGRlIHNlZ3VpbWVudCBwZXIgYSBhcXVlc3RhIGJyYW5jYSwgcG9kZXUgZmVyLWhvICIKLSJhbWI6IgorImFtYjpcbiIKKyJcbiIKKyIgICAgZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10bz0lcy88YnJhbmNoPiAlc1xuIgorIlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjgxNAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDEzCisjLCBmdXp6eQorbXNnaWQgImV4ZWMgY29tbWFuZHMgY2Fubm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImV4cGFuZGVpeCBsZXMgb3JkcmVzIGV4ZWMgZW4gbGEgbGxpc3RhIHBlciBhIGZlciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE3Cittc2dpZCAiZW1wdHkgZXhlYyBjb21tYW5kIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0NgogbXNnaWQgInJlYmFzZSBvbnRvIGdpdmVuIGJyYW5jaCBpbnN0ZWFkIG9mIHVwc3RyZWFtIgogbXNnc3RyICJmZXMgdW4gwqtyZWJhc2XCuyBlbiBsYSBicmFuY2EgZG9uYWRhIGVuIGNvbXB0ZXMgZGUgbGEgZm9udCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MTYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0OAorIywgZnV6enkKK21zZ2lkICJ1c2UgdGhlIG1lcmdlLWJhc2Ugb2YgdXBzdHJlYW0gYW5kIGJyYW5jaCBhcyB0aGUgY3VycmVudCBiYXNlIgorbXNnc3RyICJsYSBicmFuY2EgZm9udCBkZW1hbmFkYSDCqyVzwrsgbm8gZXhpc3RlaXgiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ1MAogbXNnaWQgImFsbG93IHByZS1yZWJhc2UgaG9vayB0byBydW4iCiBtc2dzdHIgInBlcm1ldCBhbCBsbGlnYW0gcHJlLXJlYmFzZSBleGVjdXRhci1zZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MTgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ1MgogbXNnaWQgImJlIHF1aWV0LiBpbXBsaWVzIC0tbm8tc3RhdCIKIG1zZ3N0ciAic2lsZW5jacOzcy4gSW1wbGljYSAtLW5vLXN0YXQiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODIxCi1tc2dpZCAiZGlzcGxheSBhIGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjgyNAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDU4CiAjLCBmdXp6eQogbXNnaWQgImRvIG5vdCBzaG93IGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKIG1zZ3N0ciAibm8gbW9zdHJpcyBsZXMgZXN0YWTDrXN0aXF1ZXMgZGUgZGlmZXLDqG5jaWEgYWwgZmluYWwgZGUgbGEgZnVzacOzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjgyNworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDYxCiAjLCBmdXp6eQogbXNnaWQgImFkZCBhIFNpZ25lZC1vZmYtYnk6IGxpbmUgdG8gZWFjaCBjb21taXQiCiBtc2dzdHIgImFmZWdlaXggdW5hIGzDrW5pYSDCq1NpZ25lZC1vZmYtYnnCuyBhbCBtaXNzYXRnZSBkZSBjb21pc3Npw7MiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODI5IGJ1aWx0aW4vcmViYXNlLmM6ODMzIGJ1aWx0aW4vcmViYXNlLmM6ODM1Ci1tc2dpZCAicGFzc2VkIHRvICdnaXQgYW0nIgotbXNnc3RyICJwYXNzYS1obyBhIMKrZ2l0IGFtwrsiCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NjQKKyMsIGZ1enp5Cittc2dpZCAibWFrZSBjb21taXR0ZXIgZGF0ZSBtYXRjaCBhdXRob3IgZGF0ZSIKK21zZ3N0ciAiQWdydXBhIHBlciDCq2NvbWl0dGVywrsgZW4gY29tcHRlcyBkZSBwZXIgYXV0b3IiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODM3IGJ1aWx0aW4vcmViYXNlLmM6ODM5CisjOiBidWlsdGluL3JlYmFzZS5jOjE0NjYKK21zZ2lkICJpZ25vcmUgYXV0aG9yIGRhdGUgYW5kIHVzZSBjdXJyZW50IGRhdGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDY4CisjLCBmdXp6eQorbXNnaWQgInN5bm9ueW0gb2YgLS1yZXNldC1hdXRob3ItZGF0ZSIKK21zZ3N0ciAic2luw7JuaW0gZGUgLS1maWxlcy13aXRoLW1hdGNoZXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ3MCBidWlsdGluL3JlYmFzZS5jOjE0NzQKIG1zZ2lkICJwYXNzZWQgdG8gJ2dpdCBhcHBseSciCiBtc2dzdHIgInBhc3NhLWhvIGEgwqtnaXQtYXBwbHnCuyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NDEgYnVpbHRpbi9yZWJhc2UuYzo4NDQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ3MgorIywgZnV6enkKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyBpbiB3aGl0ZXNwYWNlIgorbXNnc3RyICJpZ25vcmEgZWxzIGNhbnZpcyBkJ2VzcGFpIGVuIGJsYW5jIGFsIGZpbmFsIGRlIGxhIGzDrW5pYSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDc2IGJ1aWx0aW4vcmViYXNlLmM6MTQ3OQogbXNnaWQgImNoZXJyeS1waWNrIGFsbCBjb21taXRzLCBldmVuIGlmIHVuY2hhbmdlZCIKIG1zZ3N0ciAiwqtjaGVycnkgcGlja8K7IHRvdGVzIGxlcyBjb21pc3Npb25zLCBpbmNsw7pzIGxlcyBubyBjYW52aWFkZXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODQ2CisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODEKIG1zZ2lkICJjb250aW51ZSIKIG1zZ3N0ciAiY29udGludWEiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODQ5CisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODQKIG1zZ2lkICJza2lwIGN1cnJlbnQgcGF0Y2ggYW5kIGNvbnRpbnVlIgogbXNnc3RyICJvbWV0IGVsIHBlZGHDpyBhY3R1YWwgaSBjb250aW51YSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4NgogbXNnaWQgImFib3J0IGFuZCBjaGVjayBvdXQgdGhlIG9yaWdpbmFsIGJyYW5jaCIKIG1zZ3N0ciAiaW50ZXJyb21wIGkgYWdhZmEgbGEgYnJhbmNhIG9yaWdpbmFsIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg1NAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDg5CiBtc2dpZCAiYWJvcnQgYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcyIKIG1zZ3N0ciAiaW50ZXJyb21wIHBlcsOyIG1hbnTDqSBIRUFEIG9uIMOpcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NTUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MAogbXNnaWQgImVkaXQgdGhlIHRvZG8gbGlzdCBkdXJpbmcgYW4gaW50ZXJhY3RpdmUgcmViYXNlIgogbXNnc3RyICJlZGl0YSBsYSBsbGlzdGEgZGUgY29zZXMgYSBmZXIgZHVyYW50IHVuIMKrcmViYXNlwrsgaW50ZXJhY3RpdSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NTgKLSMsIGZ1enp5CisjOiBidWlsdGluL3JlYmFzZS5jOjE0OTMKIG1zZ2lkICJzaG93IHRoZSBwYXRjaCBmaWxlIGJlaW5nIGFwcGxpZWQgb3IgbWVyZ2VkIgotbXNnc3RyICJtb3N0cmEgZWwgcGVkYcOnIHF1ZSBzJ2VzdMOgIGFwbGljYW50LiIKK21zZ3N0ciAibW9zdHJhIGVsIHBlZGHDpyBxdWUgcydlc3TDoCBhcGxpY2FudCBvIGZ1c2lvbmFudCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NjEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5NgogIywgZnV6enkKIG1zZ2lkICJ1c2UgbWVyZ2luZyBzdHJhdGVnaWVzIHRvIHJlYmFzZSIKIG1zZ3N0ciAiZXN0cmF0w6hnaWEgZGUgZnVzacOzIGEgdXNhciIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NjUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUwMAogbXNnaWQgImxldCB0aGUgdXNlciBlZGl0IHRoZSBsaXN0IG9mIGNvbW1pdHMgdG8gcmViYXNlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODY5Ci1tc2dpZCAidHJ5IHRvIHJlY3JlYXRlIG1lcmdlcyBpbnN0ZWFkIG9mIGlnbm9yaW5nIHRoZW0iCi1tc2dzdHIgIiIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUwNAorIywgZnV6enkKK21zZ2lkICIoREVQUkVDQVRFRCkgdHJ5IHRvIHJlY3JlYXRlIG1lcmdlcyBpbnN0ZWFkIG9mIGlnbm9yaW5nIHRoZW0iCittc2dzdHIgImludGVudGEgcmVjcmVhciBsZXMgIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3MwotbXNnaWQgImFsbG93IHJlcmVyZSB0byB1cGRhdGUgaW5kZXggIHdpdGggcmVzb2x2ZWQgY29uZmxpY3QiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUwOQogIywgZnV6enkKIG1zZ2lkICJwcmVzZXJ2ZSBlbXB0eSBjb21taXRzIGR1cmluZyByZWJhc2UiCiBtc2dzdHIgInByZXNlcnZhIGxlcyBjb21pc3Npb25zIGluaWNpYWxtZW50IGJ1aWRlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxMQogbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEgdW5kZXIgLWkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4ODQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxNwogIywgZnV6enkKIG1zZ2lkICJhdXRvbWF0aWNhbGx5IHN0YXNoL3N0YXNoIHBvcCBiZWZvcmUgYW5kIGFmdGVyIgogbXNnc3RyICIiCiAiZmVzIMKrc3Rhc2jCuyBpIMKrc3Rhc2ggcG9wwrsgYXV0b23DoHRpY2FtZW50IGFiYW5zIGkgZGVzcHLDqXMgZGUgZmVyIMKrcmViYXNlwrsiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODg2CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MTkKIG1zZ2lkICJhZGQgZXhlYyBsaW5lcyBhZnRlciBlYWNoIGNvbW1pdCBvZiB0aGUgZWRpdGFibGUgbGlzdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg5MAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTIzCiAjLCBmdXp6eQogbXNnaWQgImFsbG93IHJlYmFzaW5nIGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKIG1zZ3N0ciAicGVybWV0IGxlcyBjb21pc3Npb25zIGFtYiBtaXNzYXRnZXMgYnVpdHMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODkzCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjYKIG1zZ2lkICJ0cnkgdG8gcmViYXNlIG1lcmdlcyBpbnN0ZWFkIG9mIHNraXBwaW5nIHRoZW0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4OTYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyOQogIywgZnV6enkKIG1zZ2lkICJ1c2UgJ21lcmdlLWJhc2UgLS1mb3JrLXBvaW50JyB0byByZWZpbmUgdXBzdHJlYW0iCiBtc2dzdHIgImdpdCBtZXJnZS1iYXNlIC0tZm9yay1wb2ludCA8cmVmZXLDqG5jaWE+IFs8Y29taXNzacOzPl0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODk4Ci0jLCBmdXp6eQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTMxCiBtc2dpZCAidXNlIHRoZSBnaXZlbiBtZXJnZSBzdHJhdGVneSIKLW1zZ3N0ciAib3BjacOzIGQnZXN0cmF0w6hnaWEgZGUgZnVzacOzIgorbXNnc3RyICJ1dGlsaXR6YSBsJ2VzdHJhdMOoZ2lhIGRlIGZ1c2nDsyBkb25hZGEiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTAwIGJ1aWx0aW4vcmV2ZXJ0LmM6MTExCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzMgYnVpbHRpbi9yZXZlcnQuYzoxMTUKIG1zZ2lkICJvcHRpb24iCiBtc2dzdHIgIm9wY2nDsyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MDEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUzNAogbXNnaWQgInBhc3MgdGhlIGFyZ3VtZW50IHRocm91Z2ggdG8gdGhlIG1lcmdlIHN0cmF0ZWd5IgotbXNnc3RyICJwYXNzYSBsJ2FyZ3VtZW50IGEgbCdlc3RyYXTDqGdpYSBkZSBmdXNzacOzIgorbXNnc3RyICJwYXNzYSBsJ2FyZ3VtZW50IGEgbCdlc3RyYXTDqGdpYSBkZSBmdXNpw7MiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTA0CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzcKIG1zZ2lkICJyZWJhc2UgYWxsIHJlYWNoYWJsZSBjb21taXRzIHVwIHRvIHRoZSByb290KHMpIgotbXNnc3RyICJmZXMgwqtyZWJhc2XCuyBkZSB0b3RlcyBsZXMgY29taXNzaW9ucyBhY2Nlc3NpYmxlcyBmaW5zIGwnYXJyZWwiCittc2dzdHIgImZlcyDCq3JlYmFzZcK7IGRlIHRvdGVzIGxlcyBjb21pc3Npb25zIGFjY2Vzc2libGVzIGZpbnMgYSBsJ2FycmVsIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkyMAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgZXhlYyAlcyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBleGVjdXRhciAlcyIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU1NAorbXNnaWQgIiIKKyJ0aGUgcmViYXNlLnVzZUJ1aWx0aW4gc3VwcG9ydCBoYXMgYmVlbiByZW1vdmVkIVxuIgorIlNlZSBpdHMgZW50cnkgaW4gJ2dpdCBoZWxwIGNvbmZpZycgZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTM4IGdpdC1sZWdhY3ktcmViYXNlLnNoOjIxMworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTYwCiBtc2dpZCAiSXQgbG9va3MgbGlrZSAnZ2l0IGFtJyBpcyBpbiBwcm9ncmVzcy4gQ2Fubm90IHJlYmFzZS4iCiBtc2dzdHIgIlNlbWJsYSBxdWUgwqtnaXQgYW3CuyBlc3TDoCBlbiBjdXJzLiBObyBlcyBwb3QgZmVyIMKrcmViYXNlwrsuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjk3OSBnaXQtbGVnYWN5LXJlYmFzZS5zaDozODcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTYwMQorIywgZnV6enkKK21zZ2lkICIiCisiZ2l0IHJlYmFzZSAtLXByZXNlcnZlLW1lcmdlcyBpcyBkZXByZWNhdGVkLiBVc2UgLS1yZWJhc2UtbWVyZ2VzIGluc3RlYWQuIgorbXNnc3RyICJlcnJvcjogbm8gZXMgcG90IGNvbWJpbmFyIMKrLS1wcmVzZXJ2ZS1tZXJnZXPCuyBhbWIgwqstLXJlYmFzZS1tZXJnZXPCuyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjA2CisjLCBmdXp6eQorbXNnaWQgImNhbm5vdCBjb21iaW5lICctLWtlZXAtYmFzZScgd2l0aCAnLS1vbnRvJyIKK21zZ3N0ciAiZXJyb3I6IG5vIGVzIHBvdCBjb21iaW5hciDCqy0tcmViYXNlLW1lcmdlc8K7IGFtYiDCqy0tc3RyYXRlZ3nCuyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjA4CisjLCBmdXp6eQorbXNnaWQgImNhbm5vdCBjb21iaW5lICctLWtlZXAtYmFzZScgd2l0aCAnLS1yb290JyIKK21zZ3N0ciAiZXJyb3I6IG5vIGVzIHBvdCBjb21iaW5hciDCqy0tcmViYXNlLW1lcmdlc8K7IGFtYiDCqy0tc3RyYXRlZ3nCuyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjEyCiBtc2dpZCAiTm8gcmViYXNlIGluIHByb2dyZXNzPyIKIG1zZ3N0ciAiTm8gaGkgaGEgdW4gwqtyZWJhc2XCuyBlbiBjdXJzPyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5ODIgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6Mzk4CisjOiBidWlsdGluL3JlYmFzZS5jOjE2MTYKIG1zZ2lkICJUaGUgLS1lZGl0LXRvZG8gYWN0aW9uIGNhbiBvbmx5IGJlIHVzZWQgZHVyaW5nIGludGVyYWN0aXZlIHJlYmFzZS4iCiBtc2dzdHIgIkwnYWNjacOzIC0tZWRpdC10b2RvIG5vbcOpcyBlcyBwb3QgdXNhciBkdXJhbnQgdW4gwqtyZWJhc2XCuyBpbnRlcmFjdGl1LiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5OTUgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDA1CisjOiBidWlsdGluL3JlYmFzZS5jOjE2MzkKIG1zZ2lkICJDYW5ub3QgcmVhZCBIRUFEIgogbXNnc3RyICJObyBlcyBwb3QgbGxlZ2lyIEhFQUQiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTAwOCBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1MQogbXNnaWQgIiIKICJZb3UgbXVzdCBlZGl0IGFsbCBtZXJnZSBjb25mbGljdHMgYW5kIHRoZW5cbiIKICJtYXJrIHRoZW0gYXMgcmVzb2x2ZWQgdXNpbmcgZ2l0IGFkZCIKQEAgLTE1MjYyLDIxICsxODE5MiwxNiBAQAogIkhldSBkJ2VkaXRhciB0b3RzIGVscyBjb25mbGljdGVzIGRlIGZ1c2nDsyBpIGRlc3Byw6lzXG4iCiAibWFyY2FyLWxvcyBjb20gYSByZXNvbHRzIGZlbnQgc2VydmlyIGdpdCBhZGQiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTAyNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjcwCiBtc2dpZCAiY291bGQgbm90IGRpc2NhcmQgd29ya3RyZWUgY2hhbmdlcyIKIG1zZ3N0ciAibm8gcydoYW4gcG9ndXQgZGVzY2FydGFyIGVscyBjYW52aXMgZGUgbCdhcmJyZSBkZSB0cmViYWxsIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwNDQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbW92ZSBiYWNrIHRvICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHRvcm5hciBhICVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwNTUgYnVpbHRpbi9ybS5jOjM2OAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgcmVtb3ZlICclcyciCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgc3VwcmltaXIgwqslc8K7IgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwODEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTczNAogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiIgogIkl0IHNlZW1zIHRoYXQgdGhlcmUgaXMgYWxyZWFkeSBhICVzIGRpcmVjdG9yeSwgYW5kXG4iCkBAIC0xNTI5NywzNTQgKzE4MjIyLDE2NiBAQAogImkgZXhlY3V0ZXUtbWUgZGUgbm91LiBNJ2F0dXJvIHBlciBzaSBlbmNhcmEgaGkgdGVuaXUgYWxndW5hIGNvc2FcbiIKICJkZSB2YWxvci4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTEwMgotIywgZnV6enkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTc1NwogbXNnaWQgInN3aXRjaCBgQycgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKLW1zZ3N0ciAibCdvcGNpw7MgwqslY8K7IGVzcGVyYSB1biB2YWxvciBudW3DqHJpYyIKK21zZ3N0ciAiwqtzd2l0Y2jCuyDCq2PCuyBlc3BlcmEgdW4gdmFsb3IgbnVtw6hyaWMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTEzOQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gbW9kZTogJXMiCiBtc2dzdHIgIk1vZGUgZGVzY29uZWd1dDogJXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTE2MQorIzogYnVpbHRpbi9yZWJhc2UuYzoxODIwCiBtc2dpZCAiLS1zdHJhdGVneSByZXF1aXJlcyAtLW1lcmdlIG9yIC0taW50ZXJhY3RpdmUiCiBtc2dzdHIgIi0tc3RyYXRlZ3kgcmVxdWVyZWl4IC0tbWVyZ2UgbyAtLWludGVyYWN0aXZlIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyMDQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotImVycm9yOiBjYW5ub3QgY29tYmluZSBpbnRlcmFjdGl2ZSBvcHRpb25zICgtLWludGVyYWN0aXZlLCAtLWV4ZWMsIC0tcmViYXNlLSIKLSJtZXJnZXMsIC0tcHJlc2VydmUtbWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250bykgd2l0aCBhbSBvcHRpb25zICIKLSIoJXMpIgorIzogYnVpbHRpbi9yZWJhc2UuYzoxODYwCisjLCBmdXp6eQorbXNnaWQgIi0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyByZXF1aXJlcyAtLWV4ZWMgb3IgLS1pbnRlcmFjdGl2ZSIKK21zZ3N0ciAiLS1zdHJhdGVneSByZXF1ZXJlaXggLS1tZXJnZSBvIC0taW50ZXJhY3RpdmUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg3MgorbXNnaWQgImNhbm5vdCBjb21iaW5lIGFtIG9wdGlvbnMgd2l0aCBlaXRoZXIgaW50ZXJhY3RpdmUgb3IgbWVyZ2Ugb3B0aW9ucyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyMDkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotImVycm9yOiBjYW5ub3QgY29tYmluZSBtZXJnZSBvcHRpb25zICgtLW1lcmdlLCAtLXN0cmF0ZWd5LCAtLXN0cmF0ZWd5LW9wdGlvbikgIgotIndpdGggYW0gb3B0aW9ucyAoJXMpIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTIyOSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1MjgKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmUtbWVyZ2VzJyB3aXRoICctLXJlYmFzZS1tZXJnZXMnIgorIzogYnVpbHRpbi9yZWJhc2UuYzoxODkxCisjLCBmdXp6eQorbXNnaWQgImNhbm5vdCBjb21iaW5lICctLXByZXNlcnZlLW1lcmdlcycgd2l0aCAnLS1yZWJhc2UtbWVyZ2VzJyIKIG1zZ3N0ciAiZXJyb3I6IG5vIGVzIHBvdCBjb21iaW5hciDCqy0tcHJlc2VydmUtbWVyZ2VzwrsgYW1iIMKrLS1yZWJhc2UtbWVyZ2VzwrsiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTIzNCBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1MzQKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneS1vcHRpb24nIgotbXNnc3RyICJlcnJvcjogbm8gZXMgcG90IGNvbWJpbmFyIMKrLS1yZWJhc2UtbWVyZ2VzwrsgYW1iIMKrLS1zdHJhdGVneS1vcHRpb27CuyIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg5NQorIywgZnV6enkKK21zZ2lkICIiCisiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXByZXNlcnZlLW1lcmdlcycgd2l0aCAnLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjJyIKK21zZ3N0ciAiZXJyb3I6IG5vIGVzIHBvdCBjb21iaW5hciDCqy0tcHJlc2VydmUtbWVyZ2VzwrsgYW1iIMKrLS1yZWJhc2UtbWVyZ2VzwrsiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTIzNyBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1MzYKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneSciCi1tc2dzdHIgImVycm9yOiBubyBlcyBwb3QgY29tYmluYXIgwqstLXJlYmFzZS1tZXJnZXPCuyBhbWIgwqstLXN0cmF0ZWd5wrsiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI2MQorIzogYnVpbHRpbi9yZWJhc2UuYzoxOTE5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgdXBzdHJlYW0gJyVzJyIKIG1zZ3N0ciAiZm9udCBubyB2w6BsaWRhOiDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI2NworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTI1CiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBuZXcgcm9vdCBjb21taXQiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgdW5hIGNvbWlzc2nDsyBhcnJlbCBub3ZhIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyODUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJzogbmVlZCBleGFjdGx5IG9uZSBtZXJnZSBiYXNlIHdpdGggYnJhbmNoIgorbXNnc3RyICJDYWwgZXhhY3RhbWVudCB1biByYW5nLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTU0CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiBuZWVkIGV4YWN0bHkgb25lIG1lcmdlIGJhc2UiCiBtc2dzdHIgIkNhbCBleGFjdGFtZW50IHVuIHJhbmcuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyOTIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk2MgogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiRG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBjb21taXQgJyVzJyIKIG1zZ3N0ciAiTm8gYXNzZW55YWxhIHVuYSBjb21pc3Npw7MgdsOgbGlkYTogJG9udG9fbmFtZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzE3CisjOiBidWlsdGluL3JlYmFzZS5jOjE5ODcKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgImZhdGFsOiBubyBzdWNoIGJyYW5jaC9jb21taXQgJyVzJyIKIG1zZ3N0ciAiZmF0YWw6IG5vIGhpIGhhIHRhbCBicmFuY2E6ICRicmFuY2hfbmFtZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzI1IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzozNwotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MzAKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk5NSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTYxCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVmOiAlcyIKIG1zZ3N0ciAiTm8gaGkgaGEgdGFsIHJlZmVyw6huY2lhOiAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzM3CisjOiBidWlsdGluL3JlYmFzZS5jOjIwMDYKICMsIGZ1enp5CiBtc2dpZCAiQ291bGQgbm90IHJlc29sdmUgSEVBRCB0byBhIHJldmlzaW9uIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHJlc29sZHJlIGxhIGNvbWlzc2nDsyBIRUFEIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzNzcgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjU3CisjOiBidWlsdGluL3JlYmFzZS5jOjIwNDQKIG1zZ2lkICJDYW5ub3QgYXV0b3N0YXNoIgogbXNnc3RyICJObyBlcyBwb3QgZW1tYWdhdHplbWFyIGF1dG9tw6B0aWNhbWVudCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzgwCisjOiBidWlsdGluL3JlYmFzZS5jOjIwNDcKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgIlVuZXhwZWN0ZWQgc3Rhc2ggcmVzcG9uc2U6ICclcyciCiBtc2dzdHIgImZpbmFsIGRlIGZpdHhlciBpbmVzcGVyYXQiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTM4NgorIzogYnVpbHRpbi9yZWJhc2UuYzoyMDUzCiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBmb3IgJyVzJyIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBjcmVhciBlbCBkaXJlY3Rvcmkgwqslc8K7IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzODkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA1NgogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiQ3JlYXRlZCBhdXRvc3Rhc2g6ICVzXG4iCiBtc2dzdHIgIlMnaGEgY3JlYXQgdW4gbWFnYXR6ZW0gYXV0b23DoHRpYzogJHN0YXNoX2FiYnJldiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzkyCisjOiBidWlsdGluL3JlYmFzZS5jOjIwNTkKICMsIGZ1enp5CiBtc2dpZCAiY291bGQgbm90IHJlc2V0IC0taGFyZCIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBsbGVnaXIgb3JpZy1oZWFkIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzOTMgYnVpbHRpbi9yZXNldC5jOjExMwotIywgYy1mb3JtYXQKLW1zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKLW1zZ3N0ciAiSEVBRCBhcmEgw6lzIGEgJXMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQwOSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2NjYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA2OAogbXNnaWQgIlBsZWFzZSBjb21taXQgb3Igc3Rhc2ggdGhlbS4iCiBtc2dzdHIgIkNvbWV0ZXUtbG9zIG8gZW1tYWdhdHplbWV1LWxvcy4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQzNgotIywgZnV6enksIGMtZm9ybWF0CisjOiBidWlsdGluL3JlYmFzZS5jOjIwOTUKKyMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlICclcyciCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0NwotIywgZnV6enksIGMtZm9ybWF0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMDgKKyMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN3aXRjaCB0byAlcyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBhIMKrJXPCuyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBjb21tdXRhciBhICVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0NTggZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6Njg5Ci0jLCBzaC1mb3JtYXQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjExOQogbXNnaWQgIkhFQUQgaXMgdXAgdG8gZGF0ZS4iCiBtc2dzdHIgIkhFQUQgZXN0w6AgYWwgZGlhLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDYwCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyMQorIywgYy1mb3JtYXQKIG1zZ2lkICJDdXJyZW50IGJyYW5jaCAlcyBpcyB1cCB0byBkYXRlLlxuIgotbXNnc3RyICJMYSBicmFuY2EgYWN0dWFsICRicmFuY2hfbmFtZSBlc3TDoCBhbCBkaWEuIgorbXNnc3RyICJMYSBicmFuY2EgYWN0dWFsICVzIGVzdMOgIGFsIGRpYS5cbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDY4IGdpdC1sZWdhY3ktcmViYXNlLnNoOjY5OQotIywgZnV6enksIHNoLWZvcm1hdAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTI5CiBtc2dpZCAiSEVBRCBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLiIKLW1zZ3N0ciAiTGEgYnJhbmNhIGFjdHVhbCAkYnJhbmNoX25hbWUgZXN0w6AgYWwgZGlhOyDCq3JlYmFzZcK7IGZvcsOnYXQuIgorbXNnc3RyICJMYSBicmFuY2EgYWN0dWFsIGVzdMOgIGFsIGRpYSwgwqtyZWJhc2XCuyBmb3LDp2F0LiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDcwCi0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEzMQorIywgYy1mb3JtYXQKIG1zZ2lkICJDdXJyZW50IGJyYW5jaCAlcyBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLlxuIgotbXNnc3RyICJMYSBicmFuY2EgYWN0dWFsICRicmFuY2hfbmFtZSBlc3TDoCBhbCBkaWE7IMKrcmViYXNlwrsgZm9yw6dhdC4iCittc2dzdHIgIkxhIGJyYW5jYSBhY3R1YWwgJXMgZXN0w6AgYWwgZGlhOyDCq3JlYmFzZcK7IGZvcsOnYXQuXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ3OCBnaXQtbGVnYWN5LXJlYmFzZS5zaDoyMDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEzOQogbXNnaWQgIlRoZSBwcmUtcmViYXNlIGhvb2sgcmVmdXNlZCB0byByZWJhc2UuIgogbXNnc3RyICJFbCBsbGlnYW0gcHJlLcKrcmViYXNlwrsgaGEgcmVmdXNhdCBhIGZlciDCq3JlYmFzZcK7LiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDg0Ci0jLCBmdXp6eSwgYy1mb3JtYXQKLW1zZ2lkICJDaGFuZ2VzIGZyb20gJXMgdG8gJXM6XG4iCi1tc2dzdHIgIkNhbnZpcyBkZSAkbWIgYSAkb250bzoiCisjOiBidWlsdGluL3JlYmFzZS5jOjIxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hhbmdlcyB0byAlczpcbiIKK21zZ3N0ciAiQ2FudmlzIGEgICVzOlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MDcKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoYW5nZXMgZnJvbSAlcyB0byAlczpcbiIKK21zZ3N0ciAiQ2FudmlzIGRlICVzIGEgJXM6XG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE3NAorIywgYy1mb3JtYXQKIG1zZ2lkICJGaXJzdCwgcmV3aW5kaW5nIGhlYWQgdG8gcmVwbGF5IHlvdXIgd29yayBvbiB0b3Agb2YgaXQuLi5cbiIKIG1zZ3N0ciAiIgotIlByaW1lciwgcydlc3TDoCByZWJvYmluYW50IEhFQUQgcGVyIGEgcmVwcm9kdWlyIGVsIHZvc3RyZSB0cmViYWxsIGFsIGRhbXVudC4uLiIKKyJQcmltZXIsIHMnZXN0w6AgcmVib2JpbmFudCBIRUFEIHBlciBhIHJlcHJvZHVpciBlbCB2b3N0cmUgdHJlYmFsbCBhbCAiCisiZGFtdW50Li4uXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxMwotIywgZnV6enkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE4MwogbXNnaWQgIkNvdWxkIG5vdCBkZXRhY2ggSEVBRCIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBzZXBhcmFyIEhFQUQiCittc2dzdHIgIk5vIHMnaGEgcG9ndXQgc2VwYXJhciBIRUFEIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MjIKLSMsIGZ1enp5LCBjLWZvcm1hdAotbXNnaWQgIkZhc3QtZm9yd2FyZGVkICVzIHRvICVzLiBcbiIKLW1zZ3N0ciAiQXZhbsOnIHLDoHBpZCBhICRzaGExIgorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhc3QtZm9yd2FyZGVkICVzIHRvICVzLlxuIgorbXNnc3RyICJBdmFuw6cgcsOgcGlkICVzIGEgJXMuXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjI0Ci0jLCBmdXp6eQotbXNnaWQgIm5vIEhFQUQ/IgotbXNnc3RyICJObyBoaSBoYSBjYXAgSEVBRD8iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjUxCi0jLCBmdXp6eSwgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAlcyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBjcmVhciBlbCBmaXR4ZXIgdGVtcG9yYWwiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjU3Ci0jLCBmdXp6eQotbXNnaWQgImNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgotbXNnc3RyICJObyBzJ2hhIHBvZ3V0IG1hcmNhciBjb20gYSBpbnRlcmFjdGl1IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxMDEKLSMsIGZ1enp5LCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBvcGVuICVzIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyIMKrJXPCuyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTE0Ci0jLCBmdXp6eQotbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSB0b2RvIGxpc3QiCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgbGEgbGxpc3RhIHBlciBhIGZlciIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTI5Ci0jLCBmdXp6eQotbXNnaWQgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFs8b3B0aW9ucz5dIgotbXNnc3RyICJnaXQgcmViYXNlLS1oZWxwZXIgWzxvcGNpb25zPl0iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE0OAotbXNnaWQgImtlZXAgZW1wdHkgY29tbWl0cyIKLW1zZ3N0ciAibWFudMOpbiBsZXMgY29taXNzaW9ucyBidWlkZXMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1MCBidWlsdGluL3JldmVydC5jOjEyNAotbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKLW1zZ3N0ciAicGVybWV0IGxlcyBjb21pc3Npb25zIGFtYiBtaXNzYXRnZXMgYnVpdHMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1MQotIywgZnV6enkKLW1zZ2lkICJyZWJhc2UgbWVyZ2UgY29tbWl0cyIKLW1zZ3N0ciAiZXRpcXVldGEgZGUgZnVzacOzIGluY29ycmVjdGEgZW4gbGEgY29taXNzacOzIMKrJXPCuyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTUzCi1tc2dpZCAia2VlcCBvcmlnaW5hbCBicmFuY2ggcG9pbnRzIG9mIGNvdXNpbnMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTU1Ci1tc2dpZCAibW92ZSBjb21taXRzIHRoYXQgYmVnaW4gd2l0aCBzcXVhc2ghL2ZpeHVwISIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTYKLSMsIGZ1enp5Ci1tc2dpZCAic2lnbiBjb21taXRzIgotbXNnc3RyICJzaWduYSBsZXMgY29taXNzaW9ucyBhbWIgR1BHIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTgKLW1zZ2lkICJjb250aW51ZSByZWJhc2UiCi1tc2dzdHIgImNvbnRpbnVhIGVsIMKrcmViYXNlwrsiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2MAotIywgZnV6enkKLW1zZ2lkICJza2lwIGNvbW1pdCIKLW1zZ3N0ciAiY29taXNzacOzIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjEKLSMsIGZ1enp5Ci1tc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICJjb21wcm92YSBsYSBsbGlzdGEgYSBmZXIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2MwotIywgZnV6enkKLW1zZ2lkICJzaG93IHRoZSBjdXJyZW50IHBhdGNoIgotbXNnc3RyICJvbWV0IGVsIHBlZGHDpyBhY3R1YWwiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2NgotbXNnaWQgInNob3J0ZW4gY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICJlc2N1csOnYSBlbHMgaWRzIGRlIGxlcyBjb21pc3Npb25zIGVuIGxhIGxsaXN0YSBwZXIgYSBmZXIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2OAotbXNnaWQgImV4cGFuZCBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgImV4cGFuZGVpeCBlbHMgaWRzIGRlIGVscyBjb21pc3Npb25zIGVuIGxhIGxsaXN0YSBwZXIgYSBmZXIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3MAotbXNnaWQgImNoZWNrIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgImNvbXByb3ZhIGxhIGxsaXN0YSBhIGZlciIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTcyCi1tc2dpZCAicmVhcnJhbmdlIGZpeHVwL3NxdWFzaCBsaW5lcyIKLW1zZ3N0ciAicmVvcmdhbml0emEgbGVzIGzDrW5pZXMgwqtmaXh1cC9waWNrwrsiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NAotbXNnaWQgImluc2VydCBleGVjIGNvbW1hbmRzIGluIHRvZG8gbGlzdCIKLW1zZ3N0ciAiZXhwYW5kZWl4IGxlcyBvcmRyZXMgZXhlYyBlbiBsYSBsbGlzdGEgcGVyIGEgZmVyIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzUKLW1zZ2lkICJvbnRvIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NwotIywgZnV6enkKLW1zZ2lkICJyZXN0cmljdC1yZXZpc2lvbiIKLW1zZ3N0ciAicmV2aXNpw7MiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NwotIywgZnV6enkKLW1zZ2lkICJyZXN0cmljdCByZXZpc2lvbiIKLW1zZ3N0ciAicmV2aXNpw7MiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3OAotbXNnaWQgInNxdWFzaC1vbnRvIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3OQotbXNnaWQgInNxdWFzaCBvbnRvIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MQotIywgZnV6enkKLW1zZ2lkICJ0aGUgdXBzdHJlYW0gY29tbWl0IgotbXNnc3RyICJEZXNhc3NpZ25hIGxhIGluZm9ybWFjacOzIGRlIGZvbnQiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MgotIywgZnV6enkKLW1zZ2lkICJoZWFkLW5hbWUiCi1tc2dzdHIgImNhbnZpIGRlIG5vbSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgyCi0jLCBmdXp6eQotbXNnaWQgImhlYWQgbmFtZSIKLW1zZ3N0ciAiZGF2YW50IHBlciAiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4NwotIywgZnV6enkKLW1zZ2lkICJyZWJhc2Ugc3RyYXRlZ3kiCi1tc2dzdHIgImVzdHJhdMOoZ2lhIGRlIGZ1c2nDsyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg4Ci0jLCBmdXp6eQotbXNnaWQgInN0cmF0ZWd5LW9wdHMiCi1tc2dzdHIgImVzdHJhdMOoZ2lhIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODkKLSMsIGZ1enp5Ci1tc2dpZCAic3RyYXRlZ3kgb3B0aW9ucyIKLW1zZ3N0ciAib3BjaW9ucyBkZSBkZWNvcmFjacOzIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTAKLW1zZ2lkICJzd2l0Y2gtdG8iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkxCi1tc2dpZCAidGhlIGJyYW5jaCBvciBjb21taXQgdG8gY2hlY2tvdXQiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkyCi0jLCBmdXp6eQotbXNnaWQgIm9udG8tbmFtZSIKLW1zZ3N0ciAibm9tIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTIKLSMsIGZ1enp5Ci1tc2dpZCAib250byBuYW1lIgotbXNnc3RyICJub20gZGVsIHJlbW90IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTMKLSMsIGZ1enp5Ci1tc2dpZCAiY21kIgotbXNnc3RyICJvcmRyZSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkzCi0jLCBmdXp6eQotbXNnaWQgInRoZSBjb21tYW5kIHRvIHJ1biIKLW1zZ3N0ciAiTm8gcydoYSBmZXQgY2FwIG9yZHJlLiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MjIwCi1tc2dpZCAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIGhhcyBubyBlZmZlY3Qgd2l0aG91dCAtLXJlYmFzZS1tZXJnZXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MjI2Ci1tc2dpZCAiYSBiYXNlIGNvbW1pdCBtdXN0IGJlIHByb3ZpZGVkIHdpdGggLS11cHN0cmVhbSBvciAtLW9udG8iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzozMworIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzozMgogbXNnaWQgImdpdCByZWNlaXZlLXBhY2sgPGdpdC1kaXI+IgogbXNnc3RyICJnaXQgcmVjZWl2ZS1wYWNrIDxnaXQtZGlyPiIKIApAQCAtMTU3MDEsMTkgKzE4NDM4LDcwIEBACiAiXG4iCiAiUGVyIGEgc2lsZW5jaWFyIGFxdWVzdCBtaXNzYXRnZSwgcG9kZXUgZXN0YWJsaXItbGEgYSAncmVmdXNlJy4iCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTkyOQorIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTM2CiBtc2dpZCAicXVpZXQiCiBtc2dzdHIgInNpbGVuY2nDs3MiCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk0MworIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTUwCiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIGRpcmVjdG9yeS4iCiBtc2dzdHIgIkhldSBkJ2VzcGVjaWZpY2FyIHVuIGRpcmVjdG9yaS4iCiAKLSM6IGJ1aWx0aW4vcmVmbG9nLmM6NTYzIGJ1aWx0aW4vcmVmbG9nLmM6NTY4CisjOiBidWlsdGluL3JlZmxvZy5jOjE3Cittc2dpZCAiIgorImdpdCByZWZsb2cgZXhwaXJlIFstLWV4cGlyZT08dGltZT5dIFstLWV4cGlyZS11bnJlYWNoYWJsZT08dGltZT5dIFstLSIKKyJyZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLXN0YWxlLWZpeF0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSBbLS1hbGxdICIKKyI8cmVmcz4uLi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzoyMgorbXNnaWQgIiIKKyJnaXQgcmVmbG9nIGRlbGV0ZSBbLS1yZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gIgorIjxyZWZzPi4uLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjI1Cittc2dpZCAiZ2l0IHJlZmxvZyBleGlzdHMgPHJlZj4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo1NjcgYnVpbHRpbi9yZWZsb2cuYzo1NzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0aW1lc3RhbXAiCiBtc2dzdHIgIsKrJXPCuyBubyDDqXMgdW5hIG1hcmNhIGRlIHRlbXBzIHbDoGxpZGEiCiAKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NjA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJNYXJraW5nIHJlYWNoYWJsZSBvYmplY3RzLi4uIgorbXNnc3RyICJyZXTDqW4gZWxzIG9iamVjdGVzIGluYWJhc3RhYmxlcyIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo2NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcG9pbnRzIG5vd2hlcmUhIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6Njk1CisjLCBmdXp6eQorbXNnaWQgIm5vIHJlZmxvZyBzcGVjaWZpZWQgdG8gZGVsZXRlIgorbXNnc3RyICJjYXAgcmVtb3QgZXNwZWNpZmljYXQiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzA0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJub3QgYSByZWZsb2c6ICVzIgorbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIMKrJXPCuyIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3MDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm5vIHJlZmxvZyBmb3IgJyVzJyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBsbGVnaXIgZWwgZml0eGVyIGRlIHJlZ2lzdHJlIHBlciDCqyVzwrsiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmIGZvcm1hdDogJXMiCittc2dzdHIgImZvcm1hdCBkZSByZWZlcsOobmNpYSBubyB2w6BsaWQ6ICVzIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc2NAorbXNnaWQgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCittc2dzdHIgIiIKKwogIzogYnVpbHRpbi9yZW1vdGUuYzoxNgogbXNnaWQgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIgpAQCAtMTU4NzcsMTAgKzE4NjY1LDEwIEBACiBtc2dpZCAiKGRlbGV0ZSkiCiBtc2dzdHIgIihzdXByaW1pcikiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NjI5IGJ1aWx0aW4vcmVtb3RlLmM6NzY1IGJ1aWx0aW4vcmVtb3RlLmM6ODY0Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjI5IGJ1aWx0aW4vcmVtb3RlLmM6NzY0IGJ1aWx0aW4vcmVtb3RlLmM6ODYzCisjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVtb3RlOiAnJXMnIgotbXNnc3RyICJObyBoaSBoYSB0YWwgcmVtb3Qgwqslc8K7IgorbXNnc3RyICJObyBleGlzdGVpeCBlbCByZW1vdCDCqyVzwrsiCiAKICM6IGJ1aWx0aW4vcmVtb3RlLmM6NjQ2CiAjLCBjLWZvcm1hdApAQCAtMTU4OTksMTcgKzE4Njg3LDE3IEBACiAiXHQlc1xuIgogIlx0QWN0dWFsaXR6ZXUgbGEgY29uZmlndXJhY2nDsyBtYW51YWxtZW50IHNpIMOpcyBuZWNlc3NhcmkuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjcwMgorIzogYnVpbHRpbi9yZW1vdGUuYzo3MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsZXRpbmcgJyVzJyBmYWlsZWQiCiBtc2dzdHIgImxhIHN1cHJlc3Npw7MgZGUgwqslc8K7IGhhIGZhbGxhdCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo3MzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzM1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNyZWF0aW5nICclcycgZmFpbGVkIgogbXNnc3RyICJsYSBjcmVhY2nDsyBkZSDCqyVzwrsgaGEgZmFsbGF0IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjgwMgorIzogYnVpbHRpbi9yZW1vdGUuYzo4MDEKIG1zZ2lkICIiCiAiTm90ZTogQSBicmFuY2ggb3V0c2lkZSB0aGUgcmVmcy9yZW1vdGVzLyBoaWVyYXJjaHkgd2FzIG5vdCByZW1vdmVkO1xuIgogInRvIGRlbGV0ZSBpdCwgdXNlOiIKQEAgLTE1OTI0LDExOCArMTg3MTIsMTE4IEBACiAiZWxpbWluYXQ7XG4iCiAicGVyIGEgc3VwcmltaXItbGVzLCB1c2V1OiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo4MTYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6ODE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgY29uZmlnIHNlY3Rpb24gJyVzJyIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBlbGltaW5hciBsYSBzZWNjacOzIGRlIGNvbmZpZ3VyYWNpw7Mgwqslc8K7IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkxNworIzogYnVpbHRpbi9yZW1vdGUuYzo5MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIG5ldyAobmV4dCBmZXRjaCB3aWxsIHN0b3JlIGluIHJlbW90ZXMvJXMpIgogbXNnc3RyICIgbm91IChsYSBwcsOyeGltYSBvYnRlbmNpw7MgZW1tYWdhdHplbWFyw6AgYSByZW1vdGVzLyVzKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTE5CiBtc2dpZCAiIHRyYWNrZWQiCiBtc2dzdHIgIiBzZWd1aXQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTIyCisjOiBidWlsdGluL3JlbW90ZS5jOjkyMQogbXNnaWQgIiBzdGFsZSAodXNlICdnaXQgcmVtb3RlIHBydW5lJyB0byByZW1vdmUpIgogbXNnc3RyICIgZXN0YW5jYXQgKHVzZXUgJ2dpdCByZW1vdGUgcHJ1bmUnIHBlciBhIGVsaW1pbmFyKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTIzCiBtc2dpZCAiID8/PyIKIG1zZ3N0ciAiID8/PyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NjUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgYnJhbmNoLiVzLm1lcmdlOyBjYW5ub3QgcmViYXNlIG9udG8gPiAxIGJyYW5jaCIKIG1zZ3N0ciAiYnJhbmNoLiVzLm1lcmdlIG5vIHbDoGxpZDsgbm8gZXMgcG90IGZlciDCq3JlYmFzZcK7IHNvYnJlID4gMSBicmFuY2EiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTc0CisjOiBidWlsdGluL3JlbW90ZS5jOjk3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgb250byByZW1vdGUgJXMiCiBtc2dzdHIgImVzIGZhIMKrcmViYXNlwrsgaW50ZXJhY3RpdmFtZW50IHNvYnJlIGVsIHJlbW90ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk3NgorIzogYnVpbHRpbi9yZW1vdGUuYzo5NzUKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInJlYmFzZXMgaW50ZXJhY3RpdmVseSAod2l0aCBtZXJnZXMpIG9udG8gcmVtb3RlICVzIgogbXNnc3RyICJlcyBmYSDCq3JlYmFzZcK7IGludGVyYWN0aXZhbWVudCBzb2JyZSBlbCByZW1vdCAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYmFzZXMgb250byByZW1vdGUgJXMiCiBtc2dzdHIgImVzIGZhIMKrcmViYXNlwrsgc29icmUgZWwgcmVtb3QgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTgzCisjOiBidWlsdGluL3JlbW90ZS5jOjk4MgogIywgYy1mb3JtYXQKIG1zZ2lkICIgbWVyZ2VzIHdpdGggcmVtb3RlICVzIgogbXNnc3RyICJlcyBmdXNpb25hIGFtYiBlbCByZW1vdCAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5ODYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1lcmdlcyB3aXRoIHJlbW90ZSAlcyIKIG1zZ3N0ciAiZXMgZnVzaW9uYSBhbWIgZWwgcmVtb3QgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg5CisjOiBidWlsdGluL3JlbW90ZS5jOjk4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlLSpzICAgIGFuZCB3aXRoIHJlbW90ZSAlc1xuIgogbXNnc3RyICIlLSpzICAgIGkgYW1iIGVsIHJlbW90ICVzXG4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzMgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDMxCiBtc2dpZCAiY3JlYXRlIgogbXNnc3RyICJjcmVhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMzUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzNAogbXNnaWQgImRlbGV0ZSIKIG1zZ3N0ciAic3VwcmltZWl4IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzOAogbXNnaWQgInVwIHRvIGRhdGUiCiBtc2dzdHIgImFsIGRpYSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQyCisjOiBidWlsdGluL3JlbW90ZS5jOjEwNDEKIG1zZ2lkICJmYXN0LWZvcndhcmRhYmxlIgogbXNnc3RyICJhdmFuw6cgcsOgcGlkIHBvc3NpYmxlIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNDUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA0NAogbXNnaWQgImxvY2FsIG91dCBvZiBkYXRlIgogbXNnc3RyICJsb2NhbCBubyBhY3R1YWxpdHphdCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDUyCisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICUtKnMgZm9yY2VzIHRvICUtKnMgKCVzKSIKIG1zZ3N0ciAiICAgICUtKnMgZm9yw6dhIGEgJS0qcyAoJXMpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNTUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1NAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBwdXNoZXMgdG8gJS0qcyAoJXMpIgogbXNnc3RyICIgICAgJS0qcyBwdWphIGEgJS0qcyAoJXMpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBmb3JjZXMgdG8gJXMiCiBtc2dzdHIgIiAgICAlLSpzIGZvcsOnYSBhICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNjIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA2MQogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBwdXNoZXMgdG8gJXMiCiBtc2dzdHIgIiAgICAlLSpzIHB1amEgYSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTMwCisjOiBidWlsdGluL3JlbW90ZS5jOjExMjkKIG1zZ2lkICJkbyBub3QgcXVlcnkgcmVtb3RlcyIKIG1zZ3N0ciAibm8gY29uc3VsdGlzIGVscyByZW1vdHMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1NworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiogcmVtb3RlICVzIgogbXNnc3RyICIqIHJlbW90ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNTgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1NwogIywgYy1mb3JtYXQKIG1zZ2lkICIgIEZldGNoIFVSTDogJXMiCiBtc2dzdHIgIiAgVVJMIGQnb2J0ZW5jacOzOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU5IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NSBidWlsdGluL3JlbW90ZS5jOjEzMTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1OCBidWlsdGluL3JlbW90ZS5jOjExNzQgYnVpbHRpbi9yZW1vdGUuYzoxMzEzCiBtc2dpZCAiKG5vIFVSTCkiCiBtc2dzdHIgIihzZW5zZSBVUkwpIgogCkBAIC0xNjA0MywxOTQgKzE4ODMxLDE4NSBAQAogIy4gd2l0aCB0aGUgb25lIGluICIgRmV0Y2ggVVJMOiAlcyIKICMuIHRyYW5zbGF0aW9uLgogIy4KLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3MyBidWlsdGluL3JlbW90ZS5jOjExNzUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3MiBidWlsdGluL3JlbW90ZS5jOjExNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBQdXNoICBVUkw6ICVzIgogbXNnc3RyICIgIFVSTCBkZSBwdWphZGE6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzcgYnVpbHRpbi9yZW1vdGUuYzoxMTc5IGJ1aWx0aW4vcmVtb3RlLmM6MTE4MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTc2IGJ1aWx0aW4vcmVtb3RlLmM6MTE3OCBidWlsdGluL3JlbW90ZS5jOjExODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBIRUFEIGJyYW5jaDogJXMiCiBtc2dzdHIgIiAgQnJhbmNhIGRlIEhFQUQ6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NgogbXNnaWQgIihub3QgcXVlcmllZCkiCiBtc2dzdHIgIihubyBjb25zdWx0YXQpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3OAogbXNnaWQgIih1bmtub3duKSIKIG1zZ3N0ciAiKGRlc2NvbmVndXQpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExODMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE4MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiICBIRUFEIGJyYW5jaCAocmVtb3RlIEhFQUQgaXMgYW1iaWd1b3VzLCBtYXkgYmUgb25lIG9mIHRoZSBmb2xsb3dpbmcpOlxuIgogbXNnc3RyICIiCiAiICBCcmFuY2EgZGUgSEVBRCAobGEgSEVBRCByZW1vdCDDqXMgYW1iaWd1YSwgcG90IHNlciB1biBkZWxzIHNlZ8O8ZW50cyk6XG4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE5NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgUmVtb3RlIGJyYW5jaDolcyIKIG1zZ2lkX3BsdXJhbCAiICBSZW1vdGUgYnJhbmNoZXM6JXMiCiBtc2dzdHJbMF0gIiAgQnJhbmNhIHJlbW90YTolcyIKIG1zZ3N0clsxXSAiICBCcmFucXVlcyByZW1vdGVzOiVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExOTggYnVpbHRpbi9yZW1vdGUuYzoxMjI0CisjOiBidWlsdGluL3JlbW90ZS5jOjExOTcgYnVpbHRpbi9yZW1vdGUuYzoxMjIzCiBtc2dpZCAiIChzdGF0dXMgbm90IHF1ZXJpZWQpIgogbXNnc3RyICIgKGVzdGF0IG5vIGNvbnN1bHRhdCkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIwNworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjA2CiBtc2dpZCAiICBMb2NhbCBicmFuY2ggY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dpZF9wbHVyYWwgIiAgTG9jYWwgYnJhbmNoZXMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dzdHJbMF0gIiAgQnJhbmNhIGxvY2FsIGNvbmZpZ3VyYWRhIHBlciBhIMKrZ2l0IHB1bGzCuzoiCiBtc2dzdHJbMV0gIiAgQnJhbnF1ZXMgbG9jYWxzIGNvbmZpZ3VyYWRlcyBwZXIgYSDCq2dpdCBwdWxswrs6IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyMTUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIxNAogbXNnaWQgIiAgTG9jYWwgcmVmcyB3aWxsIGJlIG1pcnJvcmVkIGJ5ICdnaXQgcHVzaCciCiBtc2dzdHIgIiAgwqtnaXQgcHVzaMK7IHJlZmxlY3RpcsOgIGxlcyByZWZlcsOobmNpZXMgbG9jYWxzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyMjEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIyMAogIywgYy1mb3JtYXQKIG1zZ2lkICIgIExvY2FsIHJlZiBjb25maWd1cmVkIGZvciAnZ2l0IHB1c2gnJXM6IgogbXNnaWRfcGx1cmFsICIgIExvY2FsIHJlZnMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdXNoJyVzOiIKIG1zZ3N0clswXSAiICBSZWZlcsOobmNpYSBsb2NhbCBjb25maWd1cmFkYSBwZXIgYSDCq2dpdCBwdXNowrslczoiCiBtc2dzdHJbMV0gIiAgUmVmZXLDqG5jaWVzIGxvY2FscyBjb25maWd1cmFkZXMgcGVyIGEgwqtnaXQgcHVzaMK7JXM6IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNDIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0MQogbXNnaWQgInNldCByZWZzL3JlbW90ZXMvPG5hbWU+L0hFQUQgYWNjb3JkaW5nIHRvIHJlbW90ZSIKIG1zZ3N0ciAiZXN0YWJsZWl4IHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCBzZWdvbnMgZWwgcmVtb3QiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjQzCiBtc2dpZCAiZGVsZXRlIHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCIKIG1zZ3N0ciAic3VwcmltZWl4IHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjU5CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTgKIG1zZ2lkICJDYW5ub3QgZGV0ZXJtaW5lIHJlbW90ZSBIRUFEIgogbXNnc3RyICJObyBlcyBwb3QgZGV0ZXJtaW5hciBsYSBIRUFEIHJlbW90YSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjYxCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNjAKIG1zZ2lkICJNdWx0aXBsZSByZW1vdGUgSEVBRCBicmFuY2hlcy4gUGxlYXNlIGNob29zZSBvbmUgZXhwbGljaXRseSB3aXRoOiIKIG1zZ3N0ciAiTcO6bHRpcGxlcyBicmFucXVlcyBkZSBIRUFEIHJlbW90ZXMuIFRyaWV1LW5lIHVuYSBleHBsw61jaXRhbWVudCBhbWI6IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNzEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZGVsZXRlICVzIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IHN1cHJpbWlyICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCByZWY6ICVzIgogbXNnc3RyICJObyDDqXMgdW5hIHJlZmVyw6huY2lhIHbDoGxpZGE6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyODEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc2V0dXAgJXMiCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgY29uZmlndXJhciAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjk5CisjOiBidWlsdGluL3JlbW90ZS5jOjEyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiICVzIHdpbGwgYmVjb21lIGRhbmdsaW5nISIKIG1zZ3N0ciAiICVzIGVzIHRvcm5hcsOgIHBlbmphbnQhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMDAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5OQogIywgYy1mb3JtYXQKIG1zZ2lkICIgJXMgaGFzIGJlY29tZSBkYW5nbGluZyEiCiBtc2dzdHIgIiAlcyBzJ2hhIHRvcm5hdCBwZW5qYW50ISIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzEwCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHJ1bmluZyAlcyIKIG1zZ3N0ciAiUydlc3TDoCBwb2RhbnQgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxMQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVSTDogJXMiCiBtc2dzdHIgIlVSTDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMyNworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAqIFt3b3VsZCBwcnVuZV0gJXMiCiBtc2dzdHIgIiAqIFtwb2RhcmlhXSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzMwCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiICogW3BydW5lZF0gJXMiCiBtc2dzdHIgIiAqIFtwb2RhdF0gJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM3NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzc0CiBtc2dpZCAicHJ1bmUgcmVtb3RlcyBhZnRlciBmZXRjaGluZyIKIG1zZ3N0ciAicG9kYSBlbHMgcmVtb3RzIGRlc3Byw6lzIGQnb2J0ZW5pci1sb3MiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQzOCBidWlsdGluL3JlbW90ZS5jOjE0OTIgYnVpbHRpbi9yZW1vdGUuYzoxNTYwCisjOiBidWlsdGluL3JlbW90ZS5jOjE0MzcgYnVpbHRpbi9yZW1vdGUuYzoxNDkxIGJ1aWx0aW4vcmVtb3RlLmM6MTU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIHJlbW90ZSAnJXMnIgogbXNnc3RyICJObyBoaSBoYSB0YWwgcmVtb3Qgwqslc8K7IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0NTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ1MwogbXNnaWQgImFkZCBicmFuY2giCiBtc2dzdHIgImFmZWdlaXggYnJhbmNhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0NjEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ2MAogbXNnaWQgIm5vIHJlbW90ZSBzcGVjaWZpZWQiCiBtc2dzdHIgImNhcCByZW1vdCBlc3BlY2lmaWNhdCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDc4CisjOiBidWlsdGluL3JlbW90ZS5jOjE0NzcKIG1zZ2lkICJxdWVyeSBwdXNoIFVSTHMgcmF0aGVyIHRoYW4gZmV0Y2ggVVJMcyIKIG1zZ3N0ciAiY29uc3VsdGEgZWxzIFVSTCBkZSBwdWphZGEgZW4gbGxvYyBkZWxzIFVSTCBkJ29idGVuY2nDsyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDgwCisjOiBidWlsdGluL3JlbW90ZS5jOjE0NzkKIG1zZ2lkICJyZXR1cm4gYWxsIFVSTHMiCiBtc2dzdHIgInJldG9ybmEgdG90cyBlbHMgVVJMIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1MDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBVUkxzIGNvbmZpZ3VyZWQgZm9yIHJlbW90ZSAnJXMnIgogbXNnc3RyICJjYXAgVVJMIGNvbmZpZ3VyYXQgcGVyIGFsIHJlbW90IMKrJXPCuyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM0CisjOiBidWlsdGluL3JlbW90ZS5jOjE1MzMKIG1zZ2lkICJtYW5pcHVsYXRlIHB1c2ggVVJMcyIKIG1zZ3N0ciAibWFuaXB1bGEgZWxzIFVSTCBkZSBwdWphZGEiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzNgorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM1CiBtc2dpZCAiYWRkIFVSTCIKIG1zZ3N0ciAiYWZlZ2VpeCBVUkwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzOAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM3CiBtc2dpZCAiZGVsZXRlIFVSTHMiCiBtc2dzdHIgInN1cHJpbWVpeCBlbHMgVVJMIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1NDUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU0NAogbXNnaWQgIi0tYWRkIC0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS1hZGQgLS1kZWxldGUgbm8gdMOpIHNlbnRpdCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTg0CisjOiBidWlsdGluL3JlbW90ZS5jOjE1ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBvbGQgVVJMIHBhdHRlcm46ICVzIgogbXNnc3RyICJQYXRyw7MgZCdVUkwgYW50aWMgbm8gdsOgbGlkOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTkyCisjOiBidWlsdGluL3JlbW90ZS5jOjE1OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCBVUkwgZm91bmQ6ICVzIgogbXNnc3RyICJObyBzJ2hhIHRyb2JhdCB0YWwgVVJMOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTk0CisjOiBidWlsdGluL3JlbW90ZS5jOjE1OTMKIG1zZ2lkICJXaWxsIG5vdCBkZWxldGUgYWxsIG5vbi1wdXNoIFVSTHMiCiBtc2dzdHIgIk5vIHNlIHN1cHJpbWlyYW4gdG90cyBlbHMgVVJMIG5vIGRlIHB1amFkYSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEwCi1tc2dpZCAiYmUgdmVyYm9zZTsgbXVzdCBiZSBwbGFjZWQgYmVmb3JlIGEgc3ViY29tbWFuZCIKLW1zZ3N0ciAic2lndWVzIGRldGFsbGF0OyBzJ2hhIGRlIGNvbMK3bG9jYXIgYWJhbnMgZCd1bmEgc3Vib3JkcmUiCi0KLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY0MQotIywgYy1mb3JtYXQKLW1zZ2lkICJVbmtub3duIHN1YmNvbW1hbmQ6ICVzIgotbXNnc3RyICJTdWJvcmRyZSBkZXNjb25lZ3VkYTogJXMiCi0KLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MjIKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjMKIG1zZ2lkICJnaXQgcmVwYWNrIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgcmVwYWNrIFs8b3BjaW9ucz5dIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI3CisjOiBidWlsdGluL3JlcGFjay5jOjI4CiBtc2dpZCAiIgogIkluY3JlbWVudGFsIHJlcGFja3MgYXJlIGluY29tcGF0aWJsZSB3aXRoIGJpdG1hcCBpbmRleGVzLiAgVXNlXG4iCiAiLS1uby13cml0ZS1iaXRtYXAtaW5kZXggb3IgZGlzYWJsZSB0aGUgcGFjay53cml0ZWJpdG1hcHMgY29uZmlndXJhdGlvbi4iCkBAIC0xNjI0MCw5OSArMTkwMTksMTI4IEBACiAiLS1uby13cml0ZS1iaXRtYXAtaW5kZXggbyBpbmhhYmlsaXRldSBlbCBwYXLDoG1ldHJlIGRlIGNvbmZpZ3VyYWNpw7MgcGFjay4iCiAid3JpdGViaXRtYXBzLiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyOTQKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MTkxCittc2dpZCAiY291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjIzMCBidWlsdGluL3JlcGFjay5jOjQxNgorbXNnaWQgInJlcGFjazogRXhwZWN0aW5nIGZ1bGwgaGV4IG9iamVjdCBJRCBsaW5lcyBvbmx5IGZyb20gcGFjay1vYmplY3RzLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI1NAorbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjkyCiBtc2dpZCAicGFjayBldmVyeXRoaW5nIGluIGEgc2luZ2xlIHBhY2siCiBtc2dzdHIgImVtcGFxdWV0YS1obyB0b3QgZW4gdW4gw7puaWMgcGFxdWV0IgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5NgorIzogYnVpbHRpbi9yZXBhY2suYzoyOTQKIG1zZ2lkICJzYW1lIGFzIC1hLCBhbmQgdHVybiB1bnJlYWNoYWJsZSBvYmplY3RzIGxvb3NlIgogbXNnc3RyICJlbCBtYXRlaXggcXVlIC1hLCBpIHNvbHRhIGVscyBvYmplY3RlcyBpbmFiYXN0YWJsZXMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk5CisjOiBidWlsdGluL3JlcGFjay5jOjI5NwogbXNnaWQgInJlbW92ZSByZWR1bmRhbnQgcGFja3MsIGFuZCBydW4gZ2l0LXBydW5lLXBhY2tlZCIKIG1zZ3N0ciAiZWxpbWluYSBlbHMgcGFxdWV0cyByZWR1bmRhbnRzLCBpIGV4ZWN1dGV1IGdpdC1wcnVuZS1wYWNrZWQiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCisjOiBidWlsdGluL3JlcGFjay5jOjI5OQogbXNnaWQgInBhc3MgLS1uby1yZXVzZS1kZWx0YSB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICJwYXNzYSAtLW5vLXJldXNlLWRlbHRhIGEgZ2l0LXBhY2stb2JqZWN0cyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDMKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCiBtc2dpZCAicGFzcyAtLW5vLXJldXNlLW9iamVjdCB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICJwYXNzYSAtLW5vLXJldXNlLW9iamVjdCBhIGdpdC1wYWNrLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA1CisjOiBidWlsdGluL3JlcGFjay5jOjMwMwogbXNnaWQgImRvIG5vdCBydW4gZ2l0LXVwZGF0ZS1zZXJ2ZXItaW5mbyIKIG1zZ3N0ciAibm8gZXhlY3V0aXMgZ2l0LXVwZGF0ZS1zZXJ2ZXItaW5mbyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA2CiBtc2dpZCAicGFzcyAtLWxvY2FsIHRvIGdpdC1wYWNrLW9iamVjdHMiCiBtc2dzdHIgInBhc3NhIC0tbG9jYWwgYSBnaXQtcGFjay1vYmplY3RzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxMAorIzogYnVpbHRpbi9yZXBhY2suYzozMDgKIG1zZ2lkICJ3cml0ZSBiaXRtYXAgaW5kZXgiCiBtc2dzdHIgImVzY3JpdSDDrW5kZXggZGUgbWFwYSBkZSBiaXRzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxMgorIzogYnVpbHRpbi9yZXBhY2suYzozMTAKICMsIGZ1enp5CiBtc2dpZCAicGFzcyAtLWRlbHRhLWlzbGFuZHMgdG8gZ2l0LXBhY2stb2JqZWN0cyIKIG1zZ3N0ciAicGFzc2EgLS1sb2NhbCBhIGdpdC1wYWNrLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEzCisjOiBidWlsdGluL3JlcGFjay5jOjMxMQogbXNnaWQgImFwcHJveGlkYXRlIgogbXNnc3RyICJkYXRhIGFwcm94aW1hZGEiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE0CisjOiBidWlsdGluL3JlcGFjay5jOjMxMgogbXNnaWQgIndpdGggLUEsIGRvIG5vdCBsb29zZW4gb2JqZWN0cyBvbGRlciB0aGFuIHRoaXMiCiBtc2dzdHIgImFtYiAtQSwgbm8gc29sdGlzIGVscyBvYmplY3RlcyBtw6lzIHZlbGxzIHF1ZSBhcXVlc3QiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE2CisjOiBidWlsdGluL3JlcGFjay5jOjMxNAogbXNnaWQgIndpdGggLWEsIHJlcGFjayB1bnJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICJhbWIgLWEsIHJlZW1wYXF1ZXRhIGVscyBvYmplY3RlcyBpbmFiYXN0YWJsZXMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE4CisjOiBidWlsdGluL3JlcGFjay5jOjMxNgogbXNnaWQgInNpemUgb2YgdGhlIHdpbmRvdyB1c2VkIGZvciBkZWx0YSBjb21wcmVzc2lvbiIKIG1zZ3N0ciAibWlkYSBkZSBsYSBmaW5lc3RyYSBxdWUgcyd1c2EgcGVyIGEgY29tcHJlc3Npw7MgZGUgZGlmZXLDqG5jaWVzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxOSBidWlsdGluL3JlcGFjay5jOjMyNQorIzogYnVpbHRpbi9yZXBhY2suYzozMTcgYnVpbHRpbi9yZXBhY2suYzozMjMKIG1zZ2lkICJieXRlcyIKIG1zZ3N0ciAib2N0ZXRzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyMAorIzogYnVpbHRpbi9yZXBhY2suYzozMTgKIG1zZ2lkICJzYW1lIGFzIHRoZSBhYm92ZSwgYnV0IGxpbWl0IG1lbW9yeSBzaXplIGluc3RlYWQgb2YgZW50cmllcyBjb3VudCIKIG1zZ3N0ciAiIgogImVsIG1hdGVpeCBxdWUgbCdhbnRlcmlvciwgcGVyw7IgbGltaXRhIGxhIG1pZGEgZGUgbWVtw7JyaWEgZW4gbGxvYyBkZWwgbm9tYnJlICIKICJkJ2VudHJhZGVzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyMgorIzogYnVpbHRpbi9yZXBhY2suYzozMjAKIG1zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gZGVsdGEgZGVwdGgiCiBtc2dzdHIgImxpbWl0YSBsYSBwcm9mdW5kaXRhdCBtw6B4aW1hIGRlIGxlcyBkaWZlcsOobmNpZXMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI0CisjOiBidWlsdGluL3JlcGFjay5jOjMyMgogbXNnaWQgImxpbWl0cyB0aGUgbWF4aW11bSBudW1iZXIgb2YgdGhyZWFkcyIKIG1zZ3N0ciAibGltaXRhIGVsIG5vbWJyZSBtw6B4aW0gZGUgZmlscyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMjYKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI0CiBtc2dpZCAibWF4aW11bSBzaXplIG9mIGVhY2ggcGFja2ZpbGUiCiBtc2dzdHIgIm1pZGEgbcOgeGltYSBkZSBjYWRhIGZpdHhlciBkZSBwYXF1ZXQiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI4CisjOiBidWlsdGluL3JlcGFjay5jOjMyNgogbXNnaWQgInJlcGFjayBvYmplY3RzIGluIHBhY2tzIG1hcmtlZCB3aXRoIC5rZWVwIgogbXNnc3RyICJyZWVtcGFxdWV0YSBlbHMgb2JqZWN0ZXMgZW4gcGFxdWV0cyBtYXJjYXRzIGFtYiAua2VlcCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMzAKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI4CiAjLCBmdXp6eQogbXNnaWQgImRvIG5vdCByZXBhY2sgdGhpcyBwYWNrIgogbXNnc3RyICJjcmVhIHBhcXVldHMgcHJpbXMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQwCisjOiBidWlsdGluL3JlcGFjay5jOjMzOAogbXNnaWQgImNhbm5vdCBkZWxldGUgcGFja3MgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCiBtc2dzdHIgIm5vIGVzIHBvZGVuIHN1cHJpbWlyIHBhcXVldHMgZW4gdW4gZGlww7JzaXQgZCdvYmplY3RlcyBwcmVjaW9zb3MiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQ0CisjOiBidWlsdGluL3JlcGFjay5jOjM0MgogbXNnaWQgIi0ta2VlcC11bnJlYWNoYWJsZSBhbmQgLUEgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1rZWVwLXVucmVhY2hhYmxlIGkgLUEgc8OzbiBpbmNvbXBhdGlibGVzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjUyNworIzogYnVpbHRpbi9yZXBhY2suYzo0MjUKKyMsIGZ1enp5Cittc2dpZCAiTm90aGluZyBuZXcgdG8gcGFjay4iCittc2dzdHIgInVzYSBlbCBwYXF1ZXQgcHJpbSIKKworIzogYnVpbHRpbi9yZXBhY2suYzo0ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldBUk5JTkc6IFNvbWUgcGFja3MgaW4gdXNlIGhhdmUgYmVlbiByZW5hbWVkIGJ5XG4iCisiV0FSTklORzogcHJlZml4aW5nIG9sZC0gdG8gdGhlaXIgbmFtZSwgaW4gb3JkZXIgdG9cbiIKKyJXQVJOSU5HOiByZXBsYWNlIHRoZW0gd2l0aCB0aGUgbmV3IHZlcnNpb24gb2YgdGhlXG4iCisiV0FSTklORzogZmlsZS4gIEJ1dCB0aGUgb3BlcmF0aW9uIGZhaWxlZCwgYW5kIHRoZVxuIgorIldBUk5JTkc6IGF0dGVtcHQgdG8gcmVuYW1lIHRoZW0gYmFjayB0byB0aGVpclxuIgorIldBUk5JTkc6IG9yaWdpbmFsIG5hbWVzIGFsc28gZmFpbGVkLlxuIgorIldBUk5JTkc6IFBsZWFzZSByZW5hbWUgdGhlbSBpbiAlcyBtYW51YWxseTpcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjUzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICclcyciCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZWxpbWluYXIgwqslc8K7IgpAQCAtMTYzNjEsMzkgKzE5MTY5LDM0IEBACiBtc2dpZCAiZ2l0IHJlcGxhY2UgWy0tZm9ybWF0PTxmb3JtYXQ+XSBbLWwgWzxwYXR0ZXJuPl1dIgogbXNnc3RyICJnaXQgcmVwbGFjZSBbLS1mb3JtYXQ9PGZvcm1hdD5dIFstbCBbPHBhdHLDsz5dXSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTggYnVpbHRpbi9yZXBsYWNlLmM6MjAzIGJ1aWx0aW4vcmVwbGFjZS5jOjIwNgotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmIgotbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHJlc29sZHJlIMKrJXPCuyBjb20gYSByZWZlcsOobmNpYSB2w6BsaWRhIgotCi0jOiBidWlsdGluL3JlcGxhY2UuYzo4NgorIzogYnVpbHRpbi9yZXBsYWNlLmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImludmFsaWQgcmVwbGFjZSBmb3JtYXQgJyVzJ1xuIgogInZhbGlkIGZvcm1hdHMgYXJlICdzaG9ydCcsICdtZWRpdW0nIGFuZCAnbG9uZyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTIxCisjOiBidWlsdGluL3JlcGxhY2UuYzoxMjUKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2UgcmVmICclcycgbm90IGZvdW5kIgogbXNnc3RyICJubyBzJ2hhIHRyb2JhdCBsYSBicmFuY2Egwqslc8K7LiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTM3CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNDEKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgcmVwbGFjZSByZWYgJyVzJyIKIG1zZ3N0ciAic3VwcmltZWl4IGxlcyByZWZlcsOobmNpZXMgcmVlbXBsYcOnYWRlcyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTQ5CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNTMKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVmIG5hbWUiCiBtc2dzdHIgIsKrJXPCuyBubyDDqXMgdW4gbm9tIGRlIHJlbW90IHbDoGxpZCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTU0CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNTgKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2UgcmVmICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgImVsIGRlc3TDrSDCqyVzwrsgamEgZXhpc3RlaXgiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE3NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJPYmplY3RzIG11c3QgYmUgb2YgdGhlIHNhbWUgdHlwZS5cbiIKQEAgLTE2NDAxLDgyICsxOTIwNCw4NyBAQAogIndoaWxlICclcycgcG9pbnRzIHRvIGEgcmVwbGFjZW1lbnQgb2JqZWN0IG9mIHR5cGUgJyVzJy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjI1CisjOiBidWlsdGluL3JlcGxhY2UuYzoyMjkKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciB3cml0aW5nIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IG9icmlyIMKrJXPCuyBwZXIgYSBlc2NyaXB0dXJhIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyMzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI0MgogbXNnaWQgImNhdC1maWxlIHJlcG9ydGVkIGZhaWx1cmUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjU0CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNTgKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciByZWFkaW5nIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyIG8gbGxlZ2lyICVzIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyNjgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3MgogIywgZnV6enkKIG1zZ2lkICJ1bmFibGUgdG8gc3Bhd24gbWt0cmVlIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBsJ2FyYnJlICglcykiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3MgorIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjc2CiAjLCBmdXp6eQogbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gbWt0cmVlIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBsJ2FyYnJlICglcykiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg1CiAjLCBmdXp6eQogbXNnaWQgIm1rdHJlZSByZXBvcnRlZCBmYWlsdXJlIgogbXNnc3RyICJsYSByZXZlcnNpw7MgaGEgZmFsbGF0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyODUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4OQogIywgZnV6enkKIG1zZ2lkICJta3RyZWUgZGlkIG5vdCByZXR1cm4gYW4gb2JqZWN0IG5hbWUiCiBtc2dzdHIgImVsIHJlbW90IG5vIGhhIGVudmlhdCB0b3RzIGVscyBvYmplY3RlcyBuZWNlc3NhcmlzIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyOTQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI5OAogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZzdGF0ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFjdHVhbGl0emFyICVzIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyOTkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMwMwogIywgZnV6enkKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgb2JqZWN0IHRvIGRhdGFiYXNlIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIGwnb2JqZWN0ZSBkZSBub3RhIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozMTggYnVpbHRpbi9yZXBsYWNlLmM6MzcxIGJ1aWx0aW4vcmVwbGFjZS5jOjQxNQotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDQ1CisjOiBidWlsdGluL3JlcGxhY2UuYzozMjIgYnVpbHRpbi9yZXBsYWNlLmM6Mzc4IGJ1aWx0aW4vcmVwbGFjZS5jOjQyMworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDUzCiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJyVzJyIKIG1zZ3N0ciAiTm8gw6lzIHVuIG5vbSBkJ29iamVjdGUgdsOgbGlkOiDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyMgorIzogYnVpbHRpbi9yZXBsYWNlLmM6MzI2CiAjLCBmdXp6eSwgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ2V0IG9iamVjdCB0eXBlIGZvciAlcyIKIG1zZ3N0ciAibm8gZXMgcG90IGZlciBncmVwIGRlcyBkJ3VuIG9iamVjdGUgZGUgdGlwdXMgJXMiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMzOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MzQyCiAjLCBmdXp6eQogbXNnaWQgImVkaXRpbmcgb2JqZWN0IGZpbGUgZmFpbGVkIgogbXNnc3RyICJsYSBsZWN0dXJhIGRlIGxlcyByZWZlcsOobmNpZXMgZGUgYmlzZWNjacOzIGhhIGZhbGxhdCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzQ3CisjOiBidWlsdGluL3JlcGxhY2UuYzozNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IG9iamVjdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MDcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjM4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlICVzIGFzIGEgY29tbWl0IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsYSBjb21pc3Npw7MgSEVBRCIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBtZXJnZXRhZyBpbiBjb21taXQgJyVzJyIKIG1zZ3N0ciAiZXRpcXVldGEgZGUgZnVzacOzIGluY29ycmVjdGEgZW4gbGEgY29taXNzacOzIMKrJXPCuyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDA5CisjOiBidWlsdGluL3JlcGxhY2UuYzo0MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG1lcmdldGFnIGluIGNvbW1pdCAnJXMnIgogbXNnc3RyICJldGlxdWV0YSBkZSBmdXNpw7MgbWFsIGZvcm1hZGEgZW4gbGEgY29taXNzacOzIMKrJXPCuyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDIxCisjOiBidWlsdGluL3JlcGxhY2UuYzo0MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm9yaWdpbmFsIGNvbW1pdCAnJXMnIGNvbnRhaW5zIG1lcmdldGFnICclcycgdGhhdCBpcyBkaXNjYXJkZWQ7IHVzZSAtLWVkaXQgIgpAQCAtMTY0ODUsMTExICsxOTI5MywxMDcgQEAKICJsYSBjb21pc3Npw7Mgb3JpZ2luYWwgwqslc8K7IGNvbnTDqSBsJ2V0aXF1ZXRhIGRlIGZ1c2nDsyDCqyVzwrsgcXVlIGVzIGRlc2NhcnRhOyAiCiAidXNldSAtLWVkaXQgZW4gbGxvYyBkZSAtLWdyYWZ0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NjAKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDY4CisjLCBjLWZvcm1hdAogbXNnaWQgInRoZSBvcmlnaW5hbCBjb21taXQgJyVzJyBoYXMgYSBncGcgc2lnbmF0dXJlIgotbXNnc3RyICJsYSBjb21pc3Npw7Mgb3JpZ2luYWwgwqslc8K7IHTDqSB1bmEgc2lnbmF0dXJhIGdwZy4iCittc2dzdHIgImxhIGNvbWlzc2nDsyBvcmlnaW5hbCDCqyVzwrsgdMOpIHVuYSBzaWduYXR1cmEgZ3BnIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NjEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ2OQogbXNnaWQgInRoZSBzaWduYXR1cmUgd2lsbCBiZSByZW1vdmVkIGluIHRoZSByZXBsYWNlbWVudCBjb21taXQhIgogbXNnc3RyICJzJ2VsaW1pbmFyw6AgbGEgc2lnbmF0dXJhIGVuIGxhIGNvbWlzc2nDsyBkZSByZWVtcGxhw6dhbWVudCEiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSByZXBsYWNlbWVudCBjb21taXQgZm9yOiAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIGxhIGNvbWlzc2nDsyBkZSByZWVtcGxhw6dhbWVudCBwZXIgYTogwqslc8K7IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NzkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJncmFmdCBmb3IgJyVzJyB1bm5lY2Vzc2FyeSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0ODIKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgY29tbWl0IGlzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lOiAnJXMnIgotbXNnc3RyICIiCittc2dzdHIgImxhIGNvbWlzc2nDsyBub3ZhIMOpcyBsYSBtYXRlaXhhIHF1ZSBsJ2FudGlnYTogwqslc8K7IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1MTQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUyNgogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiIgogImNvdWxkIG5vdCBjb252ZXJ0IHRoZSBmb2xsb3dpbmcgZ3JhZnQocyk6XG4iCiAiJXMiCiBtc2dzdHIgIkVsaW1pbmFyaWEgbCfDrXRlbSBzZWfDvGVudDoiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzNQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ3CiBtc2dpZCAibGlzdCByZXBsYWNlIHJlZnMiCiBtc2dzdHIgImxsaXN0YSBsZXMgcmVmZXLDqG5jaWVzIHJlZW1wbGHDp2FkZXMiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzNgorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ4CiBtc2dpZCAiZGVsZXRlIHJlcGxhY2UgcmVmcyIKIG1zZ3N0ciAic3VwcmltZWl4IGxlcyByZWZlcsOobmNpZXMgcmVlbXBsYcOnYWRlcyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM3CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NDkKIG1zZ2lkICJlZGl0IGV4aXN0aW5nIG9iamVjdCIKIG1zZ3N0ciAiZWRpdGEgdW4gb2JqZWN0ZSBleGlzdGVudCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM4CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTAKIG1zZ2lkICJjaGFuZ2UgYSBjb21taXQncyBwYXJlbnRzIgogbXNnc3RyICJjYW52aWEgbGVzIG1hcmVzIGQndW5hIGNvbWlzc2nDsyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM5CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTEKICMsIGZ1enp5CiBtc2dpZCAiY29udmVydCBleGlzdGluZyBncmFmdCBmaWxlIgogbXNnc3RyICJmb3LDp2EgbGEgc29icmVlc2NyaXB0dXJhIGRlIGZpdHhlcnMgZXhpc3RlbnRzIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDAKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MgogbXNnaWQgInJlcGxhY2UgdGhlIHJlZiBpZiBpdCBleGlzdHMiCiBtc2dzdHIgInJlZW1wbGHDp2EgbGEgcmVmZXLDqG5jaWEgc2kgZXhpc3RlaXgiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0MgorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU0CiBtc2dpZCAiZG8gbm90IHByZXR0eS1wcmludCBjb250ZW50cyBmb3IgLS1lZGl0IgogbXNnc3RyICJubyBpbXByaW1laXhpcyBiZWxsYW1lbnQgZWxzIGNvbnRpbmd1dHMgcGVyIGEgLS1lZGl0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDMKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NQogbXNnaWQgInVzZSB0aGlzIGZvcm1hdCIKIG1zZ3N0ciAidXNhIGFxdWVzdCBmb3JtYXQiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NgorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY4CiAjLCBmdXp6eQogbXNnaWQgIi0tZm9ybWF0IGNhbm5vdCBiZSB1c2VkIHdoZW4gbm90IGxpc3RpbmciCiBtc2dzdHIgIi0tZml4LXRoaW4gbm8gZXMgcG90IHVzYXIgc2Vuc2UgLS1zdGRpbiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY0CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NzYKICMsIGZ1enp5CiBtc2dpZCAiLWYgb25seSBtYWtlcyBzZW5zZSB3aGVuIHdyaXRpbmcgYSByZXBsYWNlbWVudCIKIG1zZ3N0ciAiLXogbm9tw6lzIHTDqSBzZW50aXQgYW1iIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU2OAotIywgZnV6enkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4MAogbXNnaWQgIi0tcmF3IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLWVkaXQiCi1tc2dzdHIgIi16IG5vbcOpcyB0w6kgc2VudGl0IGFtYiAtLXN0ZGluIgorbXNnc3RyICItLXJhdyBub23DqXMgdMOpIHNlbnRpdCBhbWIgLS1lZGl0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NzQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4NgogbXNnaWQgIi1kIG5lZWRzIGF0IGxlYXN0IG9uZSBhcmd1bWVudCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1ODAKLW1zZ2lkICJiYWQgbnVtYmVyIG9mIGFyZ3VtZW50cyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1ODYKLSMsIGZ1enp5Ci1tc2dpZCAiLWUgbmVlZHMgZXhhY3RseSBvbmUgYXJndW1lbnQiCi1tc2dzdHIgIkNhbCBleGFjdGFtZW50IHVuIHJhbmcuIgotCiAjOiBidWlsdGluL3JlcGxhY2UuYzo1OTIKLW1zZ2lkICItZyBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQiCi1tc2dzdHIgIiIKK21zZ2lkICJiYWQgbnVtYmVyIG9mIGFyZ3VtZW50cyIKK21zZ3N0ciAibm9tYnJlIGluY29ycmVjdGUgZCdhcmd1bWVudHMiCiAKICM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5OAotIywgZnV6enkKLW1zZ2lkICItLWNvbnZlcnQtZ3JhZnQtZmlsZSB0YWtlcyBubyBhcmd1bWVudCIKLW1zZ3N0ciAiLS1jb250aW51ZSBubyBhY2NlcHRhIHBhcsOgbWV0cmVzIgorbXNnaWQgIi1lIG5lZWRzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICItZSBuZWNlc3NpdGEgZXhhY3RhbWVudCB1biBhcmd1bWVudCIKIAogIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA0Ci0jLCBmdXp6eQorbXNnaWQgIi1nIG5lZWRzIGF0IGxlYXN0IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLWcgbmVjZXNzaXRhIGFsbWVueXMgdW4gYXJndW1lbnQiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYxMAorbXNnaWQgIi0tY29udmVydC1ncmFmdC1maWxlIHRha2VzIG5vIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnZlcnQtZ3JhZnQtZmlsZSBhcmd1bWVudHMiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYxNgogbXNnaWQgIm9ubHkgb25lIHBhdHRlcm4gY2FuIGJlIGdpdmVuIHdpdGggLWwiCi1tc2dzdHIgImNvbWJpbmEgZWxzIHBhdHJvbnMgZXNwZWNpZmljYXRzIGFtYiAtZSIKK21zZ3N0ciAibm9tw6lzIGVzIHBvdCBlc3BlY2lmaWNhciB1biBwYXRyw7MgYW1iIC1sIgogCiAjOiBidWlsdGluL3JlcmVyZS5jOjEzCiBtc2dpZCAiZ2l0IHJlcmVyZSBbY2xlYXIgfCBmb3JnZXQgPHBhdGg+Li4uIHwgc3RhdHVzIHwgcmVtYWluaW5nIHwgZGlmZiB8IGdjXSIKQEAgLTE2NjAzLDEyNiArMTk0MDcsMTM5IEBACiBtc2dpZCAiJ2dpdCByZXJlcmUgZm9yZ2V0JyB3aXRob3V0IHBhdGhzIGlzIGRlcHJlY2F0ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXJlcmUuYzoxMTEKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogYnVpbHRpbi9yZXJlcmUuYzoxMTMKKyMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdlbmVyYXRlIGRpZmYgZm9yICclcyciCi1tc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXhlY3V0YXIgwqslc8K7IgorbXNnc3RyICJzJ2hhIHBvZ3V0IGdlbmVyYXIgZWwgZGlmZiBwZXIgYSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMQorIzogYnVpbHRpbi9yZXNldC5jOjMyCiBtc2dpZCAiIgogImdpdCByZXNldCBbLS1taXhlZCB8IC0tc29mdCB8IC0taGFyZCB8IC0tbWVyZ2UgfCAtLWtlZXBdIFstcV0gWzxjb21taXQ+XSIKIG1zZ3N0ciAiIgogImdpdCByZXNldCBbLS1taXhlZCB8IC0tc29mdCB8IC0taGFyZCB8IC0tbWVyZ2UgfCAtLWtlZXBdIFstcV0gWzxjb21pc3Npw7M+XSIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMyCi1tc2dpZCAiZ2l0IHJlc2V0IFstcV0gWzx0cmVlLWlzaD5dIFstLV0gPHBhdGhzPi4uLiIKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMworIywgZnV6enkKK21zZ2lkICJnaXQgcmVzZXQgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICJnaXQgcmVzZXQgWy1xXSBbPGFyYnJlPl0gWy0tXSA8Y2FtaW5zPi4uLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMzCi1tc2dpZCAiZ2l0IHJlc2V0IC0tcGF0Y2ggWzx0cmVlLWlzaD5dIFstLV0gWzxwYXRocz4uLi5dIgorIzogYnVpbHRpbi9yZXNldC5jOjM0Cittc2dpZCAiIgorImdpdCByZXNldCBbLXFdIFstLXBhdGhzcGVjLWZyb20tZmlsZSBbLS1wYXRoc3BlYy1maWxlLW51bF1dIFs8dHJlZS1pc2g+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzUKKyMsIGZ1enp5Cittc2dpZCAiZ2l0IHJlc2V0IC0tcGF0Y2ggWzx0cmVlLWlzaD5dIFstLV0gWzxwYXRoc3BlYz4uLi5dIgogbXNnc3RyICJnaXQgcmVzZXQgLS1wYXRjaCBbPGFyYnJlPl0gWy0tXSBbPGNhbWlucz4uLi5dIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgIm1peGVkIgogbXNnc3RyICJtaXh0IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgInNvZnQiCiBtc2dzdHIgInN1YXUiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAiaGFyZCIKIG1zZ3N0ciAiZHVyIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgIm1lcmdlIgogbXNnc3RyICJmdXNpw7MiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAia2VlcCIKIG1zZ3N0ciAicmV0ZW5pbWVudCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjgwCisjOiBidWlsdGluL3Jlc2V0LmM6ODIKIG1zZ2lkICJZb3UgZG8gbm90IGhhdmUgYSB2YWxpZCBIRUFELiIKIG1zZ3N0ciAiTm8gdGVuaXUgdW4gSEVBRCB2w6BsaWQuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6ODIKKyM6IGJ1aWx0aW4vcmVzZXQuYzo4NAogbXNnaWQgIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgSEVBRC4iCiBtc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gdHJvYmFyIGwnYXJicmUgZGUgSEVBRC4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo4OAorIzogYnVpbHRpbi9yZXNldC5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgJXMuIgogbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNlcmNhciBsJ2FyYnJlIGRlICVzLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjE5MgorIzogYnVpbHRpbi9yZXNldC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKK21zZ3N0ciAiSEVBRCBhcmEgw6lzIGEgJXMiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGRvIGEgJXMgcmVzZXQgaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlLiIKIG1zZ3N0ciAiTm8gZXMgcG90IGZlciB1biByZXN0YWJsaW1lbnQgZGUgJXMgZW5taWcgZCd1bmEgZnVzacOzLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI5MgorIzogYnVpbHRpbi9yZXNldC5jOjI5NCBidWlsdGluL3N0YXNoLmM6NTE5IGJ1aWx0aW4vc3Rhc2guYzo1OTQKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2MTgKIG1zZ2lkICJiZSBxdWlldCwgb25seSByZXBvcnQgZXJyb3JzIgogbXNnc3RyICJzaWd1ZXMgc2lsZW5jacOzcywgbm9tw6lzIGluZm9ybWEgZCdlcnJvcnMiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTYKIG1zZ2lkICJyZXNldCBIRUFEIGFuZCBpbmRleCIKIG1zZ3N0ciAicmVzdGFibGVpeCBIRUFEIGkgbCfDrW5kZXgiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTUKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTcKIG1zZ2lkICJyZXNldCBvbmx5IEhFQUQiCiBtc2dzdHIgInJlc3RhYmxlaXggbm9tw6lzIEhFQUQiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTcgYnVpbHRpbi9yZXNldC5jOjI5OQorIzogYnVpbHRpbi9yZXNldC5jOjI5OSBidWlsdGluL3Jlc2V0LmM6MzAxCiBtc2dpZCAicmVzZXQgSEVBRCwgaW5kZXggYW5kIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAicmVzdGFibGVpeCBIRUFELCBsJ8OtbmRleCBpIGwnYXJicmUgZGUgdHJlYmFsbCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMwMQorIzogYnVpbHRpbi9yZXNldC5jOjMwMwogbXNnaWQgInJlc2V0IEhFQUQgYnV0IGtlZXAgbG9jYWwgY2hhbmdlcyIKIG1zZ3N0ciAicmVzdGFibGVpeCBIRUFEIHBlcsOyIHJldMOpbiBlbHMgY2FudmlzIGxvY2FscyIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMwNworIzogYnVpbHRpbi9yZXNldC5jOjMwOQogbXNnaWQgInJlY29yZCBvbmx5IHRoZSBmYWN0IHRoYXQgcmVtb3ZlZCBwYXRocyB3aWxsIGJlIGFkZGVkIGxhdGVyIgogbXNnc3RyICJyZWdpc3RyYSBub23DqXMgZWwgZmV0IHF1ZSBlbHMgY2FtaW5zIGVsaW1pbmF0cyBzJ2FmZWdpcmFuIGRlc3Byw6lzIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzI1CisjOiBidWlsdGluL3Jlc2V0LmM6MzQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZXZpc2lvbi4iCiBtc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gcmVzb2xkcmUgwqslc8K7IGNvbSBhIHJldmlzacOzIHbDoGxpZGEuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzMzCisjOiBidWlsdGluL3Jlc2V0LmM6MzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCB0cmVlLiIKIG1zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiByZXNvbGRyZSDCqyVzwrsgY29tIGEgYXJicmUgdsOgbGlkLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM0MgorIzogYnVpbHRpbi9yZXNldC5jOjM2MAogbXNnaWQgIi0tcGF0Y2ggaXMgaW5jb21wYXRpYmxlIHdpdGggLS17aGFyZCxtaXhlZCxzb2Z0fSIKIG1zZ3N0ciAiLS1wYXRjaCDDqXMgaW5jb21wYXRpYmxlIGFtYiAtLXtoYXJkLG1peGVkLHNvZnR9IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzUxCisjOiBidWlsdGluL3Jlc2V0LmM6MzcwCiBtc2dpZCAiLS1taXhlZCB3aXRoIHBhdGhzIGlzIGRlcHJlY2F0ZWQ7IHVzZSAnZ2l0IHJlc2V0IC0tIDxwYXRocz4nIGluc3RlYWQuIgogbXNnc3RyICIiCiAiLS1taXhlZCBhbWIgY2FtaW5zIGVzdMOgIGVuIGRlc8O6czsgdXNldSAnZ2l0IHJlc2V0IC0tIDxjYW1pbnM+JyBlbiBsbG9jICIKICJkJ2FpeMOyLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM1MworIzogYnVpbHRpbi9yZXNldC5jOjM3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZG8gJXMgcmVzZXQgd2l0aCBwYXRocy4iCiBtc2dzdHIgIk5vIGVzIHBvdCByZXN0YWJsaXIgZGUgJXMgYW1iIGNhbWlucy4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNjMKKyM6IGJ1aWx0aW4vcmVzZXQuYzozODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcmVzZXQgaXMgbm90IGFsbG93ZWQgaW4gYSBiYXJlIHJlcG9zaXRvcnkiCiBtc2dzdHIgImVsIHJlc3RhYmxpbWVudCBkZSAlcyBubyBlcyBwZXJtZXQgZW4gdW4gZGlww7JzaXQgbnUiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNjcKKyM6IGJ1aWx0aW4vcmVzZXQuYzozOTEKIG1zZ2lkICItTiBjYW4gb25seSBiZSB1c2VkIHdpdGggLS1taXhlZCIKIG1zZ3N0ciAiLU4gbm9tw6lzIGVzIHBvdCB1c2FyIGFtYiAtLW1peGVkIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mzg3CisjOiBidWlsdGluL3Jlc2V0LmM6NDEyCiBtc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZXNldDoiCiBtc2dzdHIgIkNhbnZpcyDCq3Vuc3RhZ2VkwrsgZGVzcHLDqXMgZGVsIHJlc3RhYmxpbWVudDoiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOTAKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTY3MzEsNTMgKzE5NTQ4LDQ4IEBACiAidG8gbWFrZSB0aGlzIHRoZSBkZWZhdWx0LlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo0MDAKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlc2V0IGluZGV4IGZpbGUgdG8gcmV2aXNpb24gJyVzJy4iCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgcmVzdGFibGlyIGVsIGZpdHhlciBkJ8OtbmRleCBhIGxhIHJldmlzacOzIMKrJXPCuy4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo0MDQKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MjkKIG1zZ2lkICJDb3VsZCBub3Qgd3JpdGUgbmV3IGluZGV4IGZpbGUuIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIGVsIGZpdHhlciBkJ8OtbmRleCBub3UuIgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NDAzCisjOiBidWlsdGluL3Jldi1saXN0LmM6NDExCiBtc2dpZCAiY2Fubm90IGNvbWJpbmUgLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgYW5kIC0tbWlzc2luZyIKLW1zZ3N0ciAiIgorbXNnc3RyICJubyBlcyBwb3QgY29tYmluYXIgLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgaSAtLW1pc3NpbmciCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0NjEKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0NzIKIG1zZ2lkICJvYmplY3QgZmlsdGVyaW5nIHJlcXVpcmVzIC0tb2JqZWN0cyIKIG1zZ3N0ciAiZWwgZmlsdHJhdGdlIGQnb2JqZWN0ZXMgcmVxdWVyZWl4IC0tb2JqZWN0cyIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQ2NAotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIHNwYXJzZSB2YWx1ZSAnJXMnIgotbXNnc3RyICJ2YWxvciBwYXJjaWFsIG5vIHbDoGxpZDogwqslc8K7IgotCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NTA1CisjOiBidWlsdGluL3Jldi1saXN0LmM6NTIyCiBtc2dpZCAicmV2LWxpc3QgZG9lcyBub3Qgc3VwcG9ydCBkaXNwbGF5IG9mIG5vdGVzIgogbXNnc3RyICJlbCByZXYtbGlzdCBubyBwZXJtZXQgbW9zdHJhciBub3RlcyIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjUwOAorIzogYnVpbHRpbi9yZXYtbGlzdC5jOjUyNQogbXNnaWQgImNhbm5vdCBjb21iaW5lIC0tdXNlLWJpdG1hcC1pbmRleCB3aXRoIG9iamVjdCBmaWx0ZXJpbmciCiBtc2dzdHIgIm5vIGVzIHBvdCBjb21iaW5hciAtLXVzZS1iaXRtYXAtaW5kZXggYW1iIGVsIGZpbHRyYXRnZSBkJ29iamVjdGVzIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQwNworIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MDgKIG1zZ2lkICJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHRpb25zPl0gLS0gWzxhcmdzPi4uLl0iCiBtc2dzdHIgImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPG9wY2lvbnM+XSAtLSBbPHBhcsOgbWV0cmVzPi4uLl0iCiAKLSM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDEyCisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxMwogbXNnaWQgImtlZXAgdGhlIGAtLWAgcGFzc2VkIGFzIGFuIGFyZyIKIG1zZ3N0ciAicmV0w6luIGVsIMKrLS3CuyBwYXNzYXQgY29tIGEgcGFyw6BtZXRyZSIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTQKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE1CiBtc2dpZCAic3RvcCBwYXJzaW5nIGFmdGVyIHRoZSBmaXJzdCBub24tb3B0aW9uIGFyZ3VtZW50IgogbXNnc3RyICJkZWl4YSBkJ2FuYWxpdHphciBkZXNwcsOpcyBkZWwgcHJpbWVyIHBhcsOgbWV0cmUgbm8gZCdvcGNpw7MiCiAKLSM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE3CisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxOAogbXNnaWQgIm91dHB1dCBpbiBzdHVjayBsb25nIGZvcm0iCiBtc2dzdHIgImVtZXQgZW4gZm9ybWEgbGxhcmdhIGVuZ2FueGFkYSIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo1NTAKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NTUxCiBtc2dpZCAiIgogImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPG9wdGlvbnM+XSAtLSBbPGFyZ3M+Li4uXVxuIgogIiAgIG9yOiBnaXQgcmV2LXBhcnNlIC0tc3EtcXVvdGUgWzxhcmc+Li4uXVxuIgpAQCAtMTY4MDgsNzIgKzE5NjIwLDgxIEBACiBtc2dpZCAiZ2l0IGNoZXJyeS1waWNrIDxzdWJjb21tYW5kPiIKIG1zZ3N0ciAiZ2l0IGNoZXJyeS1waWNrIDxzdWJvcmRyZT4iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6OTEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBhIG51bWJlciBncmVhdGVyIHRoYW4gemVybyIKK21zZ3N0ciAibCdvcGNpw7Mgwqslc8K7IGVzcGVyYSB1biBub21icmUgbWFqb3IgcXVlIHplcm8iCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6ICVzIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiCiBtc2dzdHIgIiVzOiAlcyBubyBlcyBwb3QgdXNhciBhbWIgJXMiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAwCisjOiBidWlsdGluL3JldmVydC5jOjEwMgogbXNnaWQgImVuZCByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCiBtc2dzdHIgImFjYWJhIGxhIHNlccO8w6huY2lhIGRlIHJldmVyc2nDsyBvIGVsIMKrY2hlcnJ5IHBpY2vCuyIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCiBtc2dpZCAicmVzdW1lIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAicmVwcsOobiBsYSBzZXHDvMOobmNpYSBkZSByZXZlcnNpw7MgbyBlbCDCq2NoZXJyeSBwaWNrwrsiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAyCisjOiBidWlsdGluL3JldmVydC5jOjEwNAogbXNnaWQgImNhbmNlbCByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCiBtc2dzdHIgImNhbmNlbMK3bGEgbGEgc2Vxw7zDqG5jaWEgZGUgcmV2ZXJzacOzIG8gZWwgwqtjaGVycnkgcGlja8K7IgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwMworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDUKK21zZ2lkICJza2lwIGN1cnJlbnQgY29tbWl0IGFuZCBjb250aW51ZSIKK21zZ3N0ciAib21ldCBsYSBjb21pc3Npw7MgYWN0dWFsIGkgY29udGludWEiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA3CiBtc2dpZCAiZG9uJ3QgYXV0b21hdGljYWxseSBjb21taXQiCiBtc2dzdHIgIm5vIGNvbWV0aXMgYXV0b23DoHRpY2FtZW50IgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwNAorIzogYnVpbHRpbi9yZXZlcnQuYzoxMDgKIG1zZ2lkICJlZGl0IHRoZSBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAiZWRpdGEgZWwgbWlzc2F0Z2UgZGUgY29taXNzacOzIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwNworIzogYnVpbHRpbi9yZXZlcnQuYzoxMTEKIG1zZ2lkICJwYXJlbnQtbnVtYmVyIgogbXNnc3RyICJuw7ptZXJvIGRlbCBwYXJlIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwOAorIzogYnVpbHRpbi9yZXZlcnQuYzoxMTIKIG1zZ2lkICJzZWxlY3QgbWFpbmxpbmUgcGFyZW50IgogbXNnc3RyICJzZWxlY2Npb25hIGxhIGzDrW5pYSBwcmluY2lwYWwgZGVsIHBhcmUiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCisjOiBidWlsdGluL3JldmVydC5jOjExNAogbXNnaWQgIm1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICJlc3RyYXTDqGdpYSBkZSBmdXNpw7MiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEyCisjOiBidWlsdGluL3JldmVydC5jOjExNgogbXNnaWQgIm9wdGlvbiBmb3IgbWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgIm9wY2nDsyBkJ2VzdHJhdMOoZ2lhIGRlIGZ1c2nDsyIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMjEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI1CiBtc2dpZCAiYXBwZW5kIGNvbW1pdCBuYW1lIgogbXNnc3RyICJub20gZGUgbGEgY29taXNzacOzIGEgYW5uZXhhciIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMjMKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI3CiBtc2dpZCAicHJlc2VydmUgaW5pdGlhbGx5IGVtcHR5IGNvbW1pdHMiCiBtc2dzdHIgInByZXNlcnZhIGxlcyBjb21pc3Npb25zIGluaWNpYWxtZW50IGJ1aWRlcyIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMjUKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI5CiBtc2dpZCAia2VlcCByZWR1bmRhbnQsIGVtcHR5IGNvbW1pdHMiCiBtc2dzdHIgInJldMOpbiBsZXMgY29taXNzaW9ucyByZWR1bmRhbnRzIGkgYnVpZGVzIgogCi0jOiBidWlsdGluL3JldmVydC5jOjIxOQorIzogYnVpbHRpbi9yZXZlcnQuYzoyMzIKIG1zZ2lkICJyZXZlcnQgZmFpbGVkIgogbXNnc3RyICJsYSByZXZlcnNpw7MgaGEgZmFsbGF0IgogCi0jOiBidWlsdGluL3JldmVydC5jOjIzMgorIzogYnVpbHRpbi9yZXZlcnQuYzoyNDUKIG1zZ2lkICJjaGVycnktcGljayBmYWlsZWQiCiBtc2dzdHIgImVsIMKrY2hlcnJ5IHBpY2vCuyBoYSBmYWxsYXQiCiAKLSM6IGJ1aWx0aW4vcm0uYzoxOAorIzogYnVpbHRpbi9ybS5jOjE5CiBtc2dpZCAiZ2l0IHJtIFs8b3B0aW9ucz5dIFstLV0gPGZpbGU+Li4uIgogbXNnc3RyICJnaXQgcm0gWzxvcGNpb25zPl0gWy0tXSA8Zml0eGVyPi4uLiIKIAotIzogYnVpbHRpbi9ybS5jOjIwNgorIzogYnVpbHRpbi9ybS5jOjIwNwogbXNnaWQgIiIKICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIHN0YWdlZCBjb250ZW50IGRpZmZlcmVudCBmcm9tIGJvdGggdGhlXG4iCiAiZmlsZSBhbmQgdGhlIEhFQUQ6IgpAQCAtMTY4ODcsNyArMTk3MDgsNyBAQAogImVscyBmaXR4ZXJzIHNlZ8O8ZW50cyB0ZW5lbiBjb250aW5ndXQgwqtzdGFnZcK7IGRpZmVyZW50IGQnYW1iZMOzc1xuIgogImVsIGZpdHhlciBpIGxhIEhFQUQ6IgogCi0jOiBidWlsdGluL3JtLmM6MjExCisjOiBidWlsdGluL3JtLmM6MjEyCiBtc2dpZCAiIgogIlxuIgogIih1c2UgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCkBAIC0xNjg5NSwxMyArMTk3MTYsMTMgQEAKICJcbiIKICIodXNldSAtZiBwZXIgYSBmb3LDp2FyIGwnZWxpbWluYWNpw7MpIgogCi0jOiBidWlsdGluL3JtLmM6MjE1CisjOiBidWlsdGluL3JtLmM6MjE2CiBtc2dpZCAidGhlIGZvbGxvd2luZyBmaWxlIGhhcyBjaGFuZ2VzIHN0YWdlZCBpbiB0aGUgaW5kZXg6IgogbXNnaWRfcGx1cmFsICJ0aGUgZm9sbG93aW5nIGZpbGVzIGhhdmUgY2hhbmdlcyBzdGFnZWQgaW4gdGhlIGluZGV4OiIKIG1zZ3N0clswXSAiZWwgZml0eGVyIHNlZ8O8ZW50IHTDqSBjYW52aXMgwqtzdGFnZWTCuyBlbiBsJ8OtbmRleDoiCiBtc2dzdHJbMV0gImVscyBmaXR4ZXJzIHNlZ8O8ZW50cyB0ZW5lbiBjYW52aXMgwqtzdGFnZWTCuyBlbiBsJ8OtbmRleDoiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMTkgYnVpbHRpbi9ybS5jOjIyOAorIzogYnVpbHRpbi9ybS5jOjIyMCBidWlsdGluL3JtLmM6MjI5CiBtc2dpZCAiIgogIlxuIgogIih1c2UgLS1jYWNoZWQgdG8ga2VlcCB0aGUgZmlsZSwgb3IgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCkBAIC0xNjkwOSw0NSArMTk3MzAsNDUgQEAKICJcbiIKICIodXNldSAtLWNhY2hlZCBwZXIgYSBtYW50ZW5pciBlbCBmaXR4ZXIsIG8gLWYgcGVyIGEgZm9yw6dhciBsJ2VsaW1pbmFjacOzKSIKIAotIzogYnVpbHRpbi9ybS5jOjIyNQorIzogYnVpbHRpbi9ybS5jOjIyNgogbXNnaWQgInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgbG9jYWwgbW9kaWZpY2F0aW9uczoiCiBtc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBsb2NhbCBtb2RpZmljYXRpb25zOiIKIG1zZ3N0clswXSAiZWwgZml0eGVyIHNlZ8O8ZW50IHTDqSBtb2RpZmljYWNpb25zIGxvY2FsczoiCiBtc2dzdHJbMV0gImVscyBmaXR4ZXJzIHNlZ8O8ZW50cyB0ZW5lbiBtb2RpZmljYWNpb25zIGxvY2FsczoiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDEKKyM6IGJ1aWx0aW4vcm0uYzoyNDIKIG1zZ2lkICJkbyBub3QgbGlzdCByZW1vdmVkIGZpbGVzIgogbXNnc3RyICJubyBsbGlzdGlzIGVscyBmaXR4ZXJzIGVsaW1pbmF0cyIKIAotIzogYnVpbHRpbi9ybS5jOjI0MgorIzogYnVpbHRpbi9ybS5jOjI0MwogbXNnaWQgIm9ubHkgcmVtb3ZlIGZyb20gdGhlIGluZGV4IgogbXNnc3RyICJub23DqXMgZWxpbWluYSBkZSBsJ8OtbmRleCIKIAotIzogYnVpbHRpbi9ybS5jOjI0MworIzogYnVpbHRpbi9ybS5jOjI0NAogbXNnaWQgIm92ZXJyaWRlIHRoZSB1cC10by1kYXRlIGNoZWNrIgogbXNnc3RyICJwYXNzYSBwZXIgYWx0IGxhIGNvbXByb3ZhY2nDsyBkJ2FjdHVhbGl0YXQiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDQKKyM6IGJ1aWx0aW4vcm0uYzoyNDUKIG1zZ2lkICJhbGxvdyByZWN1cnNpdmUgcmVtb3ZhbCIKIG1zZ3N0ciAicGVybWV0IGwnZWxpbWluYWNpw7MgcmVjdXJzaXZhIgogCi0jOiBidWlsdGluL3JtLmM6MjQ2CisjOiBidWlsdGluL3JtLmM6MjQ3CiBtc2dpZCAiZXhpdCB3aXRoIGEgemVybyBzdGF0dXMgZXZlbiBpZiBub3RoaW5nIG1hdGNoZWQiCiBtc2dzdHIgInN1cnQgYW1iIGVzdGF0IHplcm8gZW5jYXJhIHF1ZSByZXMgaGFnaSBjb2luY2lkaXQiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyODgKKyM6IGJ1aWx0aW4vcm0uYzoyODkKICMsIGZ1enp5CiBtc2dpZCAicGxlYXNlIHN0YWdlIHlvdXIgY2hhbmdlcyB0byAuZ2l0bW9kdWxlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQiCiBtc2dzdHIgIiIKICJGZXUgwqtzdGFnZcK7IGRlbHMgdm9zdHJlcyBjYW52aXMgYSAuZ2l0bW9kdWxlcyBvIGZldSDCq3N0YXNowrsgZGVscyBtYXRlaXhvcyAiCiAicGVyIGEgcHJvY2VkaXIiCiAKLSM6IGJ1aWx0aW4vcm0uYzozMDYKKyM6IGJ1aWx0aW4vcm0uYzozMDcKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IHJlbW92aW5nICclcycgcmVjdXJzaXZlbHkgd2l0aG91dCAtciIKLW1zZ3N0ciAibm8gcydlc3TDoCBlbGltaW5hbnQgwqslc8K7IHJlY3Vyc2l2YW1lbnQgc2Vuc2UgLXIiCittc2dzdHIgIm5vIHMnaGEgc3VwcmltaXQgwqslc8K7IHJlY3Vyc2l2YW1lbnQgc2Vuc2UgLXIiCiAKLSM6IGJ1aWx0aW4vcm0uYzozNDUKKyM6IGJ1aWx0aW4vcm0uYzozNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IHJtOiB1bmFibGUgdG8gcmVtb3ZlICVzIgogbXNnc3RyICJnaXQgcm06IG5vIHMnaGEgcG9ndXQgZWxpbWluYXIgJXMiCkBAIC0xNjk4MCwyOSArMTk4MDEsMTMgQEAKIG1zZ2lkICJwcmludCBzdGF0dXMgZnJvbSByZW1vdGUgaGVscGVyIgogbXNnc3RyICJpbXByaW1laXggbCdlc3RhdCBkZXMgZGUgbCdhanVkYW50IHJlbW90IgogCi0jOiBidWlsdGluL3NlcnZlLmM6NwotIywgZnV6enkKLW1zZ2lkICJnaXQgc2VydmUgWzxvcHRpb25zPl0iCi1tc2dzdHIgImdpdCByZXBhY2sgWzxvcGNpb25zPl0iCi0KLSM6IGJ1aWx0aW4vc2VydmUuYzoxNyBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjMKLW1zZ2lkICJxdWl0IGFmdGVyIGEgc2luZ2xlIHJlcXVlc3QvcmVzcG9uc2UgZXhjaGFuZ2UiCi1tc2dzdHIgInN1cnQgZGVzcHLDqXMgZCd1biBzb2wgaW50ZXJjYW52aSBkZSBzb2zCt2xpY2l0dWQvcmVzcG9zdGEiCi0KLSM6IGJ1aWx0aW4vc2VydmUuYzoxOQotIywgZnV6enkKLW1zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGFkdmVydGlzaW5nIGNhcGFiaWxpdGllcyIKLW1zZ3N0ciAic3VydCBpbW1lZGlhdGFtZW50IGRlc3Byw6lzIGRlIGwnYW51bmNpIGluaWNpYWwgZGUgcmVmZXLDqG5jaWEiCi0KICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxNAotIywgZnV6enkKIG1zZ2lkICJnaXQgc2hvcnRsb2cgWzxvcHRpb25zPl0gWzxyZXZpc2lvbi1yYW5nZT5dIFtbLS1dIDxwYXRoPi4uLl0iCi1tc2dzdHIgImdpdCBzaG9ydGxvZyBbPG9wY2lvbnM+XSBbPHJhbmctZGUtcmV2aXNpb25zPl0gW1stLV0gWzxjYW3DrT4uLi5dXSIKK21zZ3N0ciAiZ2l0IHNob3J0bG9nIFs8b3BjaW9ucz5dIFs8cmFuZy1kZS1yZXZpc2lvbnM+XSBbWy0tXSA8Y2Ftw60+Li4uXSIKIAogIzogYnVpbHRpbi9zaG9ydGxvZy5jOjE1Ci0jLCBmdXp6eQogbXNnaWQgImdpdCBsb2cgLS1wcmV0dHk9c2hvcnQgfCBnaXQgc2hvcnRsb2cgWzxvcHRpb25zPl0iCi1tc2dzdHIgImdpdCB3b3JrdHJlZSBsaXN0IFs8b3BjaW9ucz5dIgorbXNnc3RyICJnaXQgbG9nIC0tcHJldHR5PXNob3J0IHwgZ2l0IHNob3J0bG9nIFs8b3BjaW9ucz5dIgogCiAjOiBidWlsdGluL3Nob3J0bG9nLmM6MjY0CiBtc2dpZCAiR3JvdXAgYnkgY29tbWl0dGVyIHJhdGhlciB0aGFuIGF1dGhvciIKQEAgLTE3MDIzLDE2ICsxOTgyOCwxNSBAQAogCiAjOiBidWlsdGluL3Nob3J0bG9nLmM6MjcxCiBtc2dpZCAiPHc+Wyw8aTE+Wyw8aTI+XV0iCi1tc2dzdHIgIiIKK21zZ3N0ciAiPHc+Wyw8aTE+Wyw8aTI+XV0iCiAKICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoyNzIKIG1zZ2lkICJMaW5ld3JhcCBvdXRwdXQiCiBtc2dzdHIgIkFqdXN0YSBsZXMgbMOtbmllcyBkZSBsYSBzb3J0aWRhIgogCi0jOiBidWlsdGluL3Nob3J0bG9nLmM6Mjk5Ci0jLCBmdXp6eQorIzogYnVpbHRpbi9zaG9ydGxvZy5jOjMwMQogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyBnaXZlbiBvdXRzaWRlIHJlcG9zaXRvcnkiCi1tc2dzdHIgImhpIGhhIG1hc3NhIGFyZ3VtZW50cyBwZXIgYSBkZXNhc3NpZ25hciBsYSBmb250IgorbXNnc3RyICJoaSBoYSBtYXNzYSBhcmd1bWVudHMgZG9uYXRzIGZvcmEgZGVsIGRpcMOyc2l0IgogCiAjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6MTMKIG1zZ2lkICIiCkBAIC0xNzA1NywxMTkgKzE5ODYxLDExOSBAQAogbXNnc3RyWzBdICJzJ2VzdMOgIGlnbm9yYW50ICVzOyBubyBlcyBwb3QgZ2VzdGlvbmFyIG3DqXMgZGUgJWQgcmVmZXLDqG5jaWEiCiBtc2dzdHJbMV0gInMnZXN0w6AgaWdub3JhbnQgJXM7IG5vIGVzIHBvZGVuIGdlc3Rpb25hciBtw6lzIGRlICVkIHJlZmVyw6huY2llcyIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjU0OQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjU0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBtYXRjaGluZyByZWZzIHdpdGggJXMiCiBtc2dzdHIgIm5vIGhpIGhhIHJlZmVyw6huY2llcyBjb2luY2lkZW50cyBhbWIgJXMiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDUKIG1zZ2lkICJzaG93IHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCiBtc2dzdHIgIm1vc3RyYSBsZXMgYnJhbnF1ZXMgYW1iIHNlZ3VpbWVudCByZW1vdCBpIGxlcyBsb2NhbHMiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDgKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDcKIG1zZ2lkICJzaG93IHJlbW90ZS10cmFja2luZyBicmFuY2hlcyIKIG1zZ3N0ciAibW9zdHJhIGxlcyBicmFucXVlcyBhbWIgc2VndWltZW50IHJlbW90IgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUwCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ5CiBtc2dpZCAiY29sb3IgJyohKy0nIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGJyYW5jaCIKIG1zZ3N0ciAiY29sb3JhICcqISstJyBjb3JyZXNwb25lbnQgYSBsYSBicmFuY2EiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTEKIG1zZ2lkICJzaG93IDxuPiBtb3JlIGNvbW1pdHMgYWZ0ZXIgdGhlIGNvbW1vbiBhbmNlc3RvciIKIG1zZ3N0ciAibW9zdHJhIDxuPiBjb21pc3Npb25zIGRlc3Byw6lzIGRlIGwnYXZhbnRwYXNzYXQgY29tw7oiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTMKIG1zZ2lkICJzeW5vbnltIHRvIG1vcmU9LTEiCiBtc2dzdHIgInNpbsOybmltIGRlIG1vcmU9LTEiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKIG1zZ2lkICJzdXBwcmVzcyBuYW1pbmcgc3RyaW5ncyIKIG1zZ3N0ciAib21ldCBhbm9tZW5hciBjYWRlbmVzIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU3CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU2CiBtc2dpZCAiaW5jbHVkZSB0aGUgY3VycmVudCBicmFuY2giCiBtc2dzdHIgImluY2xvdSBsYSBicmFuY2EgYWN0dWFsIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU5CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU4CiBtc2dpZCAibmFtZSBjb21taXRzIHdpdGggdGhlaXIgb2JqZWN0IG5hbWVzIgogbXNnc3RyICJhbm9tZW5hIGxlcyBjb21pc3Npb25zIGFtYiBlbHMgc2V1cyBub21zIGQnb2JqZWN0ZSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MAogbXNnaWQgInNob3cgcG9zc2libGUgbWVyZ2UgYmFzZXMiCiBtc2dzdHIgIm1vc3RyYSBsZXMgYmFzZXMgZGUgZnVzacOzIHBvc3NpYmxlcyIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MgogbXNnaWQgInNob3cgcmVmcyB1bnJlYWNoYWJsZSBmcm9tIGFueSBvdGhlciByZWYiCiBtc2dzdHIgIm1vc3RyYSBsZXMgcmVmZXLDqG5jaWVzIGluYWJhc3RhYmxlcyBkZSBxdWFsc2V2b2wgYWx0cmEgcmVmZXLDqG5jaWEiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjQKIG1zZ2lkICJzaG93IGNvbW1pdHMgaW4gdG9wb2xvZ2ljYWwgb3JkZXIiCiBtc2dzdHIgIm1vc3RyYSBsZXMgY29taXNzaW9ucyBlbiBvcmRyZSB0b3BvbMOyZ2ljIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY4CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY3CiBtc2dpZCAic2hvdyBvbmx5IGNvbW1pdHMgbm90IG9uIHRoZSBmaXJzdCBicmFuY2giCiBtc2dzdHIgIm1vc3RyYSBub23DqXMgbGVzIGNvbWlzc2lvbnMgcXVlIG5vIHNpZ3VpbiBlbiBsYSBwcmltZXJhIGJyYW5jYSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2OQogbXNnaWQgInNob3cgbWVyZ2VzIHJlYWNoYWJsZSBmcm9tIG9ubHkgb25lIHRpcCIKIG1zZ3N0ciAibW9zdHJhIGxlcyBmdXNpb25zIGFiYXN0YWJsZXMgZGUgbm9tw6lzIHVuYSBwdW50YSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MQogbXNnaWQgInRvcG9sb2dpY2FsbHkgc29ydCwgbWFpbnRhaW5pbmcgZGF0ZSBvcmRlciB3aGVyZSBwb3NzaWJsZSIKIG1zZ3N0ciAib3JkZW5hIHRvcG9sw7JnaWNhbWVudCwgbWFudGVuaW50IGwnb3JkcmUgZGUgZGF0ZXMgb24gc2lndWkgcG9zc2libGUiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzQKIG1zZ2lkICI8bj5bLDxiYXNlPl0iCiBtc2dzdHIgIjxuPlssPGJhc2U+XSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NQogbXNnaWQgInNob3cgPG4+IG1vc3QgcmVjZW50IHJlZi1sb2cgZW50cmllcyBzdGFydGluZyBhdCBiYXNlIgogbXNnc3RyICJtb3N0cmEgbGVzIDxuPiBlbnRyYWRlcyBtw6lzIHJlY2VudHMgY29tZW7Dp2FudCBhIGxhIGJhc2UiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MTIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MTEKIG1zZ2lkICIiCiAiLS1yZWZsb2cgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tcmVtb3RlcywgLS1pbmRlcGVuZGVudCBvciAtLW1lcmdlLWJhc2UiCiBtc2dzdHIgIiIKICItLXJlZmxvZyDDqXMgaW5jb21wYXRpYmxlIGFtYiAtLWFsbCwgLS1yZW1vdGVzLCAtLWluZGVwZW5kZW50IG8gLS1tZXJnZS1iYXNlIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM2CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM1CiBtc2dpZCAibm8gYnJhbmNoZXMgZ2l2ZW4sIGFuZCBIRUFEIGlzIG5vdCB2YWxpZCIKIG1zZ3N0ciAibm8gcydoYSBkb25hdCBjYXAgYnJhbmNhLCBpIEhFQUQgbm8gw6lzIHbDoGxpZCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczOQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczOAogbXNnaWQgIi0tcmVmbG9nIG9wdGlvbiBuZWVkcyBvbmUgYnJhbmNoIG5hbWUiCiBtc2dzdHIgImwnb3BjacOzIC0tcmVmbG9nIG5lY2Vzc2l0YSB1biBub20gZGUgYnJhbmNhIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQyCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9ubHkgJWQgZW50cnkgY2FuIGJlIHNob3duIGF0IG9uZSB0aW1lLiIKIG1zZ2lkX3BsdXJhbCAib25seSAlZCBlbnRyaWVzIGNhbiBiZSBzaG93biBhdCBvbmUgdGltZS4iCiBtc2dzdHJbMF0gImVzIHBvdCBtb3N0cmFyIG5vbcOpcyAlZCBlbnRyYWRhIGEgbGEgdmVnYWRhLiIKIG1zZ3N0clsxXSAiZXMgcG9kZW4gbW9zdHJhciBub23DqXMgJWQgZW50cmFkZXMgYSBsYSB2ZWdhZGEuIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQ2CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggcmVmICVzIgogbXNnc3RyICJubyBoaSBoYSB0YWwgcmVmZXLDqG5jaWEgJXMiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzAKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmV2LiIKIG1zZ2lkX3BsdXJhbCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmV2cy4iCiBtc2dzdHJbMF0gIm5vIGVzIHBvdCBnZXN0aW9uYXIgbcOpcyBkJyVkIHJldmlzacOzLiIKIG1zZ3N0clsxXSAibm8gZXMgcG9kZW4gZ2VzdGlvbmFyIG3DqXMgZGUgJWQgcmV2aXNpb25zLiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzNAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzNQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHJlZi4iCiBtc2dzdHIgIsKrJXPCuyBubyDDqXMgdW5hIHJlZmVyw6huY2lhIHbDoGxpZGEuIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM3CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBmaW5kIGNvbW1pdCAlcyAoJXMpIgogbXNnc3RyICJubyBlcyBwb3QgdHJvYmFyIGxhIGNvbWlzc2nDsyAlcyAoJXMpIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTEKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxMgogbXNnaWQgIiIKICJnaXQgc2hvdy1yZWYgWy1xIHwgLS1xdWlldF0gWy0tdmVyaWZ5XSBbLS1oZWFkXSBbLWQgfCAtLWRlcmVmZXJlbmNlXSBbLXMgfCAtLSIKICJoYXNoWz08bj5dXSBbLS1hYmJyZXZbPTxuPl1dIFstLXRhZ3NdIFstLWhlYWRzXSBbLS1dIFs8cGF0dGVybj4uLi5dIgpAQCAtMTcxNzcsNDQgKzE5OTgxLDMyMSBAQAogImdpdCBzaG93LXJlZiBbLXEgfCAtLXF1aWV0XSBbLS12ZXJpZnldIFstLWhlYWRdIFstZCB8IC0tZGVyZWZlcmVuY2VdIFstcyB8IC0tIgogImhhc2hbPTxuPl1dIFstLWFiYnJldls9PG4+XV0gWy0tdGFnc10gWy0taGVhZHNdIFstLV0gWzxwYXRyw7M+Li4uXSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjEyCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTMKIG1zZ2lkICJnaXQgc2hvdy1yZWYgLS1leGNsdWRlLWV4aXN0aW5nWz08cGF0dGVybj5dIgogbXNnc3RyICJnaXQgc2hvdy1yZWYgLS1leGNsdWRlLWV4aXN0aW5nWz08cGF0csOzPl0iCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjEKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjIKIG1zZ2lkICJvbmx5IHNob3cgdGFncyAoY2FuIGJlIGNvbWJpbmVkIHdpdGggaGVhZHMpIgogbXNnc3RyICJtb3N0cmEgbm9tw6lzIGxlcyBldGlxdWV0ZXMgKGVzIHBvdCBjb21iaW5hciBhbWIgaGVhZHMpIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTYyCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYzCiBtc2dpZCAib25seSBzaG93IGhlYWRzIChjYW4gYmUgY29tYmluZWQgd2l0aCB0YWdzKSIKIG1zZ3N0ciAibW9zdHJhIG5vbcOpcyBlbHMgY2FwcyAoZXMgcG90IGNvbWJpbmFyIGFtYiB0YWdzKSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2MworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2NAogbXNnaWQgInN0cmljdGVyIHJlZmVyZW5jZSBjaGVja2luZywgcmVxdWlyZXMgZXhhY3QgcmVmIHBhdGgiCiBtc2dzdHIgIiIKICJjb21wcm92YWNpw7MgZGUgcmVmZXLDqG5jaWEgbcOpcyBlc3RyaWN0YSwgcmVxdWVyZWl4IGVsIGNhbcOtIGRlIHJlZmVyw6huY2lhICIKICJleGFjdGUiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjYgYnVpbHRpbi9zaG93LXJlZi5jOjE2OAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2NyBidWlsdGluL3Nob3ctcmVmLmM6MTY5CiBtc2dpZCAic2hvdyB0aGUgSEVBRCByZWZlcmVuY2UsIGV2ZW4gaWYgaXQgd291bGQgYmUgZmlsdGVyZWQgb3V0IgogbXNnc3RyICJtb3N0cmEgbGEgcmVmZXLDqG5jaWEgSEVBRCwgZW5jYXJhIHF1ZSBlcyBmaWx0csOpcyIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MQogbXNnaWQgImRlcmVmZXJlbmNlIHRhZ3MgaW50byBvYmplY3QgSURzIgogbXNnc3RyICJkZXNyZWZlcmVuY2lhIGxlcyBldGlxdWV0ZXMgYSBJRCBkJ29iamVjdGUiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzIKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzMKIG1zZ2lkICJvbmx5IHNob3cgU0hBMSBoYXNoIHVzaW5nIDxuPiBkaWdpdHMiCiBtc2dzdHIgIm1vc3RyYSBlbCBoYXNoIFNIQTEgdXNhbnQgbm9tw6lzIDxuPiB4aWZyZXMiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzYKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzcKIG1zZ2lkICJkbyBub3QgcHJpbnQgcmVzdWx0cyB0byBzdGRvdXQgKHVzZWZ1bCB3aXRoIC0tdmVyaWZ5KSIKIG1zZ3N0ciAibm8gaW1wcmltZWl4aXMgZWxzIHJlc3VsdGF0cyBhIHN0ZG91dCAow7p0aWwgYW1iIC0tdmVyaWZ5KSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OQogbXNnaWQgInNob3cgcmVmcyBmcm9tIHN0ZGluIHRoYXQgYXJlbid0IGluIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgIm1vc3RyYSBsZXMgcmVmZXLDqG5jaWVzIGRlIHN0ZGluIHF1ZSBubyBzaWd1aW4gZW4gZWwgZGlww7JzaXQgbG9jYWwiCiAKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjAKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IChpbml0fGxpc3R8c2V0fGRpc2FibGUpIDxvcHRpb25zPiIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCAoaW5pdHxsaXN0fHNldHxkaXNhYmxlKSA8b3BjaW9ucz4iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NjEKK21zZ2lkICJ0aGlzIHdvcmt0cmVlIGlzIG5vdCBzcGFyc2UgKHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBub3QgZXhpc3QpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjIwCittc2dpZCAiZmFpbGVkIHRvIHNldCBleHRlbnNpb25zLndvcmt0cmVlQ29uZmlnIHNldHRpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyMzcKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IGluaXQgWy0tY29uZV0iCittc2dzdHIgImdpdCBzcGFyc2UtY2hlY2tvdXQgaW5pdCBbLS1jb25lXSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyNTYKK21zZ2lkICJpbml0aWFsaXplIHRoZSBzcGFyc2UtY2hlY2tvdXQgaW4gY29uZSBtb2RlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjYyCisjLCBmdXp6eQorbXNnaWQgImluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJvbWV0IGwnYXBsaWNhY2nDsyBkZWwgZmlsdHJlIGQnYWdhZmFtZW50IHBhcmNpYWwiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6Mjk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gb2JyaXIgwqslc8K7IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjM2MQorbXNnaWQgImdpdCBzcGFyc2UtY2hlY2tvdXQgc2V0ICgtLXN0ZGluIHwgPHBhdHRlcm5zPikiCittc2dzdHIgImdpdCBzcGFyc2UtY2hlY2tvdXQgc2V0ICgtLXN0ZGluIHwgPHBhdHJvbnM+KSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzozNzgKK21zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gc3RhbmRhcmQgaW4iCittc2dzdHIgImxsZWdlaXggZWxzIHBhdHJvbnMgZGUgbCdlbnRyYWRhIGVzdMOgbmRhcmQiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6Mzg0CisjLCBtc2dpZCAic2V0IHNwYXJzZS1jaGVja291dCBwYXR0ZXJucyIKK21zZ2lkICJzZXQgc3BhcnNlLWNoZWNrb3V0IHBhdHRlcm5zIgorbXNnc3RyICJlc3RhYmxlaXggZWxzIHBhdHJvbnMgwqtzcGFyc2UtY2hlY2tvdXTCuyIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo0NDcKK21zZ2lkICJkaXNhYmxlIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAiaW5oYWJpbGl0YSDCq3NwYXJzZS1jaGVja291dMK7IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjQ1OQorbXNnaWQgImVycm9yIHdoaWxlIHJlZnJlc2hpbmcgd29ya2luZyBkaXJlY3RvcnkiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gYWN0dWFsaXR6YXIgZWwgZGlyZWN0b3JpIGRlIHRyZWJhbGwiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMiBidWlsdGluL3N0YXNoLmM6MzcKK21zZ2lkICJnaXQgc3Rhc2ggbGlzdCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGxpc3QgWzxvcGNpb25zPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMyBidWlsdGluL3N0YXNoLmM6NDIKK21zZ2lkICJnaXQgc3Rhc2ggc2hvdyBbPG9wdGlvbnM+XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBzaG93IFs8b3BjaW9ucz5dIFs8c3Rhc2g+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI0IGJ1aWx0aW4vc3Rhc2guYzo0NworbXNnaWQgImdpdCBzdGFzaCBkcm9wIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI1Cittc2dpZCAiZ2l0IHN0YXNoICggcG9wIHwgYXBwbHkgKSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjYgYnVpbHRpbi9zdGFzaC5jOjYyCittc2dpZCAiZ2l0IHN0YXNoIGJyYW5jaCA8YnJhbmNobmFtZT4gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggYnJhbmNoIDxub20tZGUtYnJhbmNhPiBbPHN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNyBidWlsdGluL3N0YXNoLmM6NjcKK21zZ2lkICJnaXQgc3Rhc2ggY2xlYXIiCittc2dzdHIgImdpdCBzdGFzaCBjbGVhciIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI4IGJ1aWx0aW4vc3Rhc2guYzo3NworbXNnaWQgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XVxuIgorIiAgICAgICAgICBbLS1dIFs8cGF0aHNwZWM+Li4uXV0iCittc2dzdHIgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1pc3NhdGdlPl1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MzEgYnVpbHRpbi9zdGFzaC5jOjg0Cittc2dpZCAiIgorImdpdCBzdGFzaCBzYXZlIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbPG1lc3NhZ2U+XSIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBzYXZlIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbPG1pc3NhdGdlPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1MgorbXNnaWQgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NworbXNnaWQgImdpdCBzdGFzaCBhcHBseSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGFwcGx5IFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NzIKK21zZ2lkICJnaXQgc3Rhc2ggc3RvcmUgWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dIFstcXwtLXF1aWV0XSA8Y29tbWl0PiIKK21zZ3N0ciAiZ2l0IHN0YXNoIHN0b3JlIFstbXwtLW1lc3NhZ2UgPG1pc3NhdGdlPl0gWy1xfC0tcXVpZXRdIDxjb21taXQ+IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgc3Rhc2gtbGlrZSBjb21taXQiCittc2dzdHIgIsKrJXPCuyBubyDDqXMgdW5hIGNvbWlzc2nDsyBkZSB0aXB1cyDCq3N0YXNowrsiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDolcyIKK21zZ3N0ciAiUydoYW4gZXNwZWNpZmljYXQgbWFzc2EgcmV2aXNpb25zOiVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTYxIGdpdC1sZWdhY3ktc3Rhc2guc2g6NTQ5Cittc2dpZCAiTm8gc3Rhc2ggZW50cmllcyBmb3VuZC4iCittc2dzdHIgIk5vIHMnaGEgdHJvYmF0IGNhcCDCq3N0YXNowrsuIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIHJlZmVyZW5jZSIKK21zZ3N0ciAiwqslc8K7IG5vIMOpcyB1bmEgcmVmZXLDqG5jaWEgdsOgbGlkYSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjIyNCBnaXQtbGVnYWN5LXN0YXNoLnNoOjc1Cittc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIHdpdGggcGFyYW1ldGVycyBpcyB1bmltcGxlbWVudGVkIgorbXNnc3RyICJnaXQgc3Rhc2ggY2xlYXIgYW1iIHBhcsOgbWV0cmVzIG5vIGVzdMOgIGltcGxlbWVudGF0IgorCisjOiBidWlsdGluL3N0YXNoLmM6NDAzCittc2dpZCAiY2Fubm90IGFwcGx5IGEgc3Rhc2ggaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIgorbXNnc3RyICJubyBlcyBwb3QgYXBsaWNhciB1biDCq3N0YXNowrsgZW5taWcgZCd1bmEgZnVzacOzIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSBkaWZmICVzXiEuIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGdlbmVyYXIgZGlmZiAlc14hLiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQyMQorbXNnaWQgImNvbmZsaWN0cyBpbiBpbmRleC5Ucnkgd2l0aG91dCAtLWluZGV4LiIKK21zZ3N0ciAiaGkgaGEgY29uZmxpY3RlcyBlbiBsJ8OtbmRleC4gUHJvdmV1LWhvIHNlbnNlIC0taW5kZXguIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDI3Cittc2dpZCAiY291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBkZXNhciBsJ2FyYnJlIGQnw61uZGV4IgorCisjOiBidWlsdGluL3N0YXNoLmM6NDM2Cittc2dpZCAiY291bGQgbm90IHJlc3RvcmUgdW50cmFja2VkIGZpbGVzIGZyb20gc3Rhc2giCittc2dzdHIgIm5vIHMnaGFuIHBvZ3V0IHJlc3RhdXJhciBlbHMgZml0eGVycyBubyBzZWd1aXRzIGRlcyBkZWwgwqtzdGFzaMK7IgorCisjOiBidWlsdGluL3N0YXNoLmM6NDUwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1lcmdpbmcgJXMgd2l0aCAlcyIKK21zZ3N0ciAiUydlc3TDoCBmdXNpb25hbnQgJXMgYW1iICVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDYwIGdpdC1sZWdhY3ktc3Rhc2guc2g6NjgxCittc2dpZCAiSW5kZXggd2FzIG5vdCB1bnN0YXNoZWQuIgorbXNnc3RyICJMJ8OtbmRleCBubyBlc3RhdmEgwqt1bnN0YXNoZWTCuyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjUyMSBidWlsdGluL3N0YXNoLmM6NjIwCittc2dpZCAiYXR0ZW1wdCB0byByZWNyZWF0ZSB0aGUgaW5kZXgiCittc2dzdHIgImludGVudGEgdG9ybmFyIGEgY3JlYXIgbCfDrW5kZXgiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRHJvcHBlZCAlcyAoJXMpIgorbXNnc3RyICJEZXNjYXJ0YXQgJXMgKCVzKSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU1NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCittc2dzdHIgIiVzOiBubyBzJ2hhIHBvZ3V0IGRlc2NhcnRhciBsJ2VudHJhZGEgwqtzdGFzaMK7IgorCisjOiBidWlsdGluL3N0YXNoLmM6NTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgc3Rhc2ggcmVmZXJlbmNlIgorbXNnc3RyICLCqyVzwrsgbm8gw6lzIHVuYSByZWZlcsOobmNpYSDCq3N0YXNowrsiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2MzIgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2OTUKK21zZ2lkICJUaGUgc3Rhc2ggZW50cnkgaXMga2VwdCBpbiBjYXNlIHlvdSBuZWVkIGl0IGFnYWluLiIKK21zZ3N0ciAiRXMgY29uc2VydmEgbCdlbnRyYWRhIMKrc3Rhc2jCuyBlbiBjYXMgcXVlIGxhIG5lY2Vzc2l0ZXUgYWx0cmEgdmVnYWRhLiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjY1NSBnaXQtbGVnYWN5LXN0YXNoLnNoOjcxMworbXNnaWQgIk5vIGJyYW5jaCBuYW1lIHNwZWNpZmllZCIKK21zZ3N0ciAiQ2FwIG5vbSBkZSBicmFuY2EgZXNwZWNpZmljYXQiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo3OTUgYnVpbHRpbi9zdGFzaC5jOjgzMgorIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgdXBkYXRlICVzIHdpdGggJXMiCittc2dzdHIgIk5vIGVzIHBvdCBhY3R1YWxpdHphciAlcyBhbWIgJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo4MTMgYnVpbHRpbi9zdGFzaC5jOjE0NzAgYnVpbHRpbi9zdGFzaC5jOjE1MDYKK21zZ2lkICJzdGFzaCBtZXNzYWdlIgorbXNnc3RyICJtaXNzYXRnZSDCq3N0YXNowrsiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo4MjMKK21zZ2lkICJcImdpdCBzdGFzaCBzdG9yZVwiIHJlcXVpcmVzIG9uZSA8Y29tbWl0PiBhcmd1bWVudCIKK21zZ3N0ciAiwqtnaXQgc3Rhc2ggc3RvcmXCuyByZXF1ZXJlaXggdW4gcGFyw6BtZXRyZSA8Y29taXNzacOzPiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEwNDUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMTgKK21zZ2lkICJObyBjaGFuZ2VzIHNlbGVjdGVkIgorbXNnc3RyICJObyBoaSBoYSBjYW52aXMgc2VsZWNjaW9uYXRzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE0NSBnaXQtbGVnYWN5LXN0YXNoLnNoOjE1MAorbXNnaWQgIllvdSBkbyBub3QgaGF2ZSB0aGUgaW5pdGlhbCBjb21taXQgeWV0IgorbXNnc3RyICJFbmNhcmEgbm8gdGVuaXUgbGEgY29taXNzacOzIGluaWNpYWwiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTcyIGdpdC1sZWdhY3ktc3Rhc2guc2g6MTY1Cittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgaW5kZXggc3RhdGUiCittc2dzdHIgIk5vIGVzIHBvdCBkZXNhciBsJ2VzdGF0IGQnw61uZGV4IGFjdHVhbCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExODEgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxODAKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgdW50cmFja2VkIGZpbGVzIgorbXNnc3RyICJObyBlcyBwb2RlbiBkZXNhciBlbHMgZml0eGVycyBubyBzZWd1aXRzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE5MiBidWlsdGluL3N0YXNoLmM6MTIwMSBnaXQtbGVnYWN5LXN0YXNoLnNoOjIwMQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMTQKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCB3b3JrdHJlZSBzdGF0ZSIKK21zZ3N0ciAiTm8gZXMgcG90IGRlc2FyIGwnZXN0YXQgZCdhcmJyZSBkZSB0cmViYWxsIGFjdHVhbCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyMjkgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMzQKK21zZ2lkICJDYW5ub3QgcmVjb3JkIHdvcmtpbmcgdHJlZSBzdGF0ZSIKK21zZ3N0ciAiTm8gZXMgcG90IHJlZ2lzdHJhciBsJ2VzdGF0IGRlIGwnYXJicmUgZGUgdHJlYmFsbCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyNzggZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMzgKK21zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgorbXNnc3RyICJObyBlcyBwb2RlbiB1c2FyIC0tcGF0Y2ggaSAtLWluY2x1ZGUtdW50cmFja2VkIG8gLS1hbGwgYSBsYSB2ZWdhZGEiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMjk0Cittc2dpZCAiRGlkIHlvdSBmb3JnZXQgdG8gJ2dpdCBhZGQnPyIKK21zZ3N0ciAiSGV1IG9ibGlkYXQgZGUgZmVyIMKrZ2l0IGFkZMK7PyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMDkgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNDYKK21zZ2lkICJObyBsb2NhbCBjaGFuZ2VzIHRvIHNhdmUiCittc2dzdHIgIk5vIGhpIGhhIGNhbnZpcyBsb2NhbHMgYSBkZXNhciIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMTYgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTEKK21zZ2lkICJDYW5ub3QgaW5pdGlhbGl6ZSBzdGFzaCIKK21zZ3N0ciAiTm8gZXMgcG90IGluaWNpYWxpdHphciBlbCBtYWdhdHplbSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMzEgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTUKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBzdGF0dXMiCittc2dzdHIgIk5vIGVzIHBvdCBkZXNhciBsJ2VzdGF0IGFjdHVhbCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2F2ZWQgd29ya2luZyBkaXJlY3RvcnkgYW5kIGluZGV4IHN0YXRlICVzIgorbXNnc3RyICJTJ2hhbiBkZXNhdCBlbCBkaXJlY3RvcmkgZGUgdHJlYmFsbCBpIGwnZXN0YXQgZCfDrW5kZXggJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDI2IGdpdC1sZWdhY3ktc3Rhc2guc2g6Mzg1Cittc2dpZCAiQ2Fubm90IHJlbW92ZSB3b3JrdHJlZSBjaGFuZ2VzIgorbXNnc3RyICJObyBlcyBwb2RlbiBlbGltaW5hciBlbHMgY2FudmlzIGRlIGwnYXJicmUgZGUgdHJlYmFsbCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NjEgYnVpbHRpbi9zdGFzaC5jOjE0OTcKK21zZ2lkICJrZWVwIGluZGV4IgorbXNnc3RyICJtYW50w6luIGwnw61uZGV4IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ2MyBidWlsdGluL3N0YXNoLmM6MTQ5OQorbXNnaWQgInN0YXNoIGluIHBhdGNoIG1vZGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NjQgYnVpbHRpbi9zdGFzaC5jOjE1MDAKK21zZ2lkICJxdWlldCBtb2RlIgorbXNnc3RyICJtb2RlIHNpbGVuY2nDs3MiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDY2IGJ1aWx0aW4vc3Rhc2guYzoxNTAyCittc2dpZCAiaW5jbHVkZSB1bnRyYWNrZWQgZmlsZXMgaW4gc3Rhc2giCittc2dzdHIgImluY2xvdSBlbHMgZml0eGVycyBubyBzZWd1aXRzIGEgwqtzdGFzaMK7IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ2OCBidWlsdGluL3N0YXNoLmM6MTUwNAorbXNnaWQgImluY2x1ZGUgaWdub3JlIGZpbGVzIgorbXNnc3RyICJpbmNsb3UgZWxzIGZpdHhlcnMgaWdub3JhdHMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNTY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBleGVjICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGV4ZWN1dGFyICVzIgorCiAjOiBidWlsdGluL3N0cmlwc3BhY2UuYzoxOAogbXNnaWQgImdpdCBzdHJpcHNwYWNlIFstcyB8IC0tc3RyaXAtY29tbWVudHNdIgogbXNnc3RyICJnaXQgc3RyaXBzcGFjZSBbLXMgfCAtLXN0cmlwLWNvbW1lbnRzXSIKQEAgLTE3MjIzLDU2ICsyMDMwNCw1NiBAQAogbXNnaWQgImdpdCBzdHJpcHNwYWNlIFstYyB8IC0tY29tbWVudC1saW5lc10iCiBtc2dzdHIgImdpdCBzdHJpcHNwYWNlIFstYyB8IC0tY29tbWVudC1saW5lc10iCiAKLSM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM2CisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzozNwogbXNnaWQgInNraXAgYW5kIHJlbW92ZSBhbGwgbGluZXMgc3RhcnRpbmcgd2l0aCBjb21tZW50IGNoYXJhY3RlciIKIG1zZ3N0ciAiIgogIm9tZXQgaSBlbGltaW5hIHRvdGVzIGxlcyBsw61uaWVzIHF1ZSBjb21lbmNpbiBhbWIgZWwgY2Fyw6BjdGVyIGRlIGNvbWVudGFyaSIKIAotIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MzkKKyM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjQwCiBtc2dpZCAicHJlcGVuZCBjb21tZW50IGNoYXJhY3RlciBhbmQgc3BhY2UgdG8gZWFjaCBsaW5lIgogbXNnc3RyICJhbnRlcG9zYSBlbCBjYXLDoGN0ZXIgZGUgY29tZW50YXJpIGkgdW4gZXNwYWkgYSBjYWRhIGzDrW5pYSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTM5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXhwZWN0aW5nIGEgZnVsbCByZWYgbmFtZSwgZ290ICVzIgogbXNnc3RyICJTJ2VzcGVyYSB1biBub20gZGUgcmVmZXLDqG5jaWEgcGxlLCBzJ2hhIHJlYnV0ICVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NAogbXNnaWQgInN1Ym1vZHVsZS0taGVscGVyIHByaW50LWRlZmF1bHQtcmVtb3RlIHRha2VzIG5vIGFyZ3VtZW50cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0cmlwIG9uZSBjb21wb25lbnQgb2ZmIHVybCAnJXMnIgogbXNnc3RyICJubyBlcyBwb3QgZGVzcHVsbGFyIHVuIGNvbXBvbmVudCBkZSBsJ3VybCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MTAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzODAKIG1zZ2lkICJhbHRlcm5hdGl2ZSBhbmNob3IgZm9yIHJlbGF0aXZlIHBhdGhzIgogbXNnc3RyICLDoG5jb3JhIGFsdGVybmF0aXZhIHBlciBhbHMgY2FtaW5zIHJlbGF0aXVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDEyCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDE1CiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGxpc3QgWy0tcHJlZml4PTxwYXRoPl0gWzxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBsaXN0IFstLXByZWZpeD08Y2Ftw60+XSBbPGNhbcOtPi4uLl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NjkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYyNgotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY0OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ3MiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjMwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHVybCBmb3VuZCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyBpbiAuZ2l0bW9kdWxlcyIKIG1zZ3N0ciAiTm8gcydoYSB0cm9iYXQgY2FwIHVybCBwZXIgYWwgY2Ftw60gZGUgc3VibcOyZHVsIMKrJXPCuyBhIC5naXRtb2R1bGVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTIxCi0jLCBmdXp6eSwgYy1mb3JtYXQKLW1zZ2lkICJFbnRlcmluZyAnJXMnXG4iCi1tc2dzdHIgInMnZXN0w6Agc29icmVlc2NyaXZpbnQgwqslc8K7IgotCiAjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTI0CiAjLCBjLWZvcm1hdAorbXNnaWQgIkVudGVyaW5nICclcydcbiIKK21zZ3N0ciAiUydlc3TDoCBlbnRyYW50IGEgwqslc8K7XG4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjcKKyMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyBmb3IgJXNcbiIKICIuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NDUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyB3aGlsZSByZWN1cnNpbmcgaW4gdGhlIG5lc3RlZCAiCkBAIC0xNzI4MCwyMiArMjAzNjEsMjAgQEAKICIuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjEKLSMsIGZ1enp5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY1CiBtc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IG9mIGVudGVyaW5nIGVhY2ggc3VibW9kdWxlIGNvbW1hbmQiCi1tc2dzdHIgIk9tZXQgbGEgc29ydGlkYSBkJ2luaWNpYWxpdHphciB1biBzdWJtw7JkdWwiCittc2dzdHIgIk9tZXQgbGEgc29ydGlkYSBlbiBlbnRyYXIgbCdvcmRyZSBkZSBjYWRhIHN1Ym3DsmR1bCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA0OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA1MwogbXNnaWQgIlJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKLW1zZ3N0ciAiSW5jbG91IHJlY3Vyc2l2YW1lbnQgZWxzIHN1Ym3DsmR1bHMgaW1icmluY2F0cyIKK21zZ3N0ciAiSW5jbG91IHJlY3Vyc2l2YW1lbnQgZWxzIHN1Ym3DsmR1bHMgaW1icmljYXRzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY4Ci0jLCBmdXp6eQotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIDxjb21tYW5kPiIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHN5bmMgWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWzxjYW3DrT5dIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU3MgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFstLV0gPGNvbW1hbmQ+IgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbLS1dIDxvcmRyZT4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1OTUKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU5OQorIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY291bGQgbm90IGxvb2sgdXAgY29uZmlndXJhdGlvbiAnJXMnLiBBc3N1bWluZyB0aGlzIHJlcG9zaXRvcnkgaXMgaXRzIG93biAiCiAiYXV0aG9yaXRhdGl2ZSB1cHN0cmVhbS4iCkBAIC0xNzMwMywxMDUgKzIwMzgyLDEwNSBAQAogIm5vIHMnaGEgcG9ndXQgdHJvYmFyIGxhIGNvbmZpZ3VyYWNpw7Mgwqslc8K7LiBTJ2Fzc3VtZWl4IHF1ZSBhcXVlc3QgZGlww7JzaXQgw6lzICIKICJlbCBzZXUgZGlww7JzaXQgZm9udCBhdXRvcml0emF0LiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVnaXN0ZXIgdXJsIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHJlZ2lzdHJhciBsJ3VybCBwZXIgYWwgY2Ftw60gZGUgc3VibcOyZHVsIMKrJXPCuyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY2NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyAoJXMpIHJlZ2lzdGVyZWQgZm9yIHBhdGggJyVzJ1xuIgogbXNnc3RyICJTJ2hhIHJlZ2lzdHJhdCBlbCBzdWJtw7JkdWwgwqslc8K7ICglcykgcGVyIGFsIGNhbcOtIMKrJXPCu1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njc3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGNvbW1hbmQgdXBkYXRlIG1vZGUgc3VnZ2VzdGVkIGZvciBzdWJtb2R1bGUgJyVzJ1xuIgogbXNnc3RyICIiCiAiYWR2ZXJ0w6huY2lhOiBzZSBzdWdnZXJlaXggZWwgbW9kZSBkJ2FjdHVhbGl0emFjacOzIHBlciBvcmRyZSBwZXIgYWwgc3VibcOyZHVsICIKICLCqyVzwrtcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY4NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVnaXN0ZXIgdXBkYXRlIG1vZGUgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgIiIKICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHJlZ2lzdHJhciBlbCBtb2RlIGQnYWN0dWFsaXR6YWNpw7MgcGVyIGFsIGNhbcOtIGRlICIKICJzdWJtw7JkdWwgwqslc8K7IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzA2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzEwCiBtc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IGZvciBpbml0aWFsaXppbmcgYSBzdWJtb2R1bGUiCiBtc2dzdHIgIk9tZXQgbGEgc29ydGlkYSBkJ2luaWNpYWxpdHphciB1biBzdWJtw7JkdWwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MTEKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPHBhdGg+XSIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxjYW3DrT5dIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcxNQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8b3B0aW9ucz5dIFs8cGF0aD5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPG9wY2lvbnM+XSBbPGNhbcOtPl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3ODMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjc4NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Ym1vZHVsZSBtYXBwaW5nIGZvdW5kIGluIC5naXRtb2R1bGVzIGZvciBwYXRoICclcyciCiBtc2dzdHIgIk5vIHMnaGEgdHJvYmF0IGNhcCBtYXBhdGdlIGRlIHN1Ym3DsmR1bCBhIC5naXRtb2R1bGVzIHBlciBhbCBjYW3DrSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4MjIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgSEVBRCByZWYgaW5zaWRlIHRoZSBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAibm8gcydoYSBwb2d1dCByZXNvbGRyZSBsYSByZWZlcsOobmNpYSBhIEhFQUQgZGlucyBkZWwgc3VibcOyZHVsIMKrJXPCuyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg0OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAxOAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg1NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNlcmNhciByZWN1cnNpdmFtZW50IGFsIHN1Ym3DsmR1bCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODkKIG1zZ2lkICJTdXBwcmVzcyBzdWJtb2R1bGUgc3RhdHVzIG91dHB1dCIKIG1zZ3N0ciAiU3VwcmltZWl4IGxhIHNvcnRpZGEgZGUgbCdlc3RhdCBkZWwgc3VibcOyZHVsIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODc0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODc5CiBtc2dpZCAiIgogIlVzZSBjb21taXQgc3RvcmVkIGluIHRoZSBpbmRleCBpbnN0ZWFkIG9mIHRoZSBvbmUgc3RvcmVkIGluIHRoZSBzdWJtb2R1bGUgIgogIkhFQUQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg3NQotbXNnaWQgInJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKLW1zZ3N0ciAiaW5jbG91IHJlY3Vyc2l2YW1lbnQgZWxzIHN1Ym3DsmR1bHMgaW1icmluY2F0cyIKLQogIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg4MAorbXNnaWQgInJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKK21zZ3N0ciAiaW5jbG91IHJlY3Vyc2l2YW1lbnQgZWxzIHN1Ym3DsmR1bHMgaW1icmljYXRzIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODg1CiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZSBzdGF0dXMgWy0tcXVpZXRdIFstLWNhY2hlZF0gWy0tcmVjdXJzaXZlXSBbPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZSBzdGF0dXMgWy0tcXVpZXRdIFstLWNhY2hlZF0gWy0tcmVjdXJzaXZlXSBbPGNhbcOtPi4uLl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5MDQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5MDkKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbmFtZSA8cGF0aD4iCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBuYW1lIDxjYW3DrT4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5NjgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIGZvciAnJXMnXG4iCiBtc2dzdHIgIlMnZXN0w6Agc2luY3Jvbml0emFudCBsJ3VybCBkZWwgc3VibcOyZHVsIHBlciBhIMKrJXPCu1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTc0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWdpc3RlciB1cmwgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gcmVnaXN0cmFyIGwndXJsIHBlciBhbCBjYW3DrSBkZWwgc3VibcOyZHVsIMKrJXPCuyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk4OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZ2V0IHRoZSBkZWZhdWx0IHJlbW90ZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgIiIKICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIG9idGVuaXIgZWwgcmVtb3QgcGVyIGRlZmVjdGUgcGVsIHN1Ym3DsmR1bCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5OTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byB1cGRhdGUgcmVtb3RlIGZvciBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBhY3R1YWxpdHphciBlbCByZW1vdCBwZWwgc3VibcOyZHVsIMKrJXPCuyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNDYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDUxCiBtc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IG9mIHN5bmNocm9uaXppbmcgc3VibW9kdWxlIHVybCIKIG1zZ3N0ciAiT21ldCBsYSBzb3J0aWRhIGRlIGxhIHNpbmNyb25pdHphY2nDsyBkZSBsJ3VybCBkZWwgc3VibcOyZHVsIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA1MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNTgKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgc3luYyBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbPHBhdGg+XSIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHN5bmMgWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWzxjYW3DrT5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEwNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJyBjb250YWlucyBhIC5naXQgZGlyZWN0b3J5ICh1c2UgJ3JtIC1yZicgaWYgeW91ICIKQEAgLTE3NDEwLDcgKzIwNDg5LDcgQEAKICJMJ2FyYnJlIGRlIHRyZWJhbGwgZGUgc3VibcOyZHVsIMKrJXPCuyBjb250w6kgdW4gZGlyZWN0b3JpIC5naXRcbiIKICIodXNldSAncm0gLXJmJyBzaSByZWFsbWVudCB2b2xldSBlbGltaW5hci1sbywgaW5jbG9lbnQgdG90YSBsYSBzZXZhIGhpc3TDsnJpYSkiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTE5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiU3VibW9kdWxlIHdvcmsgdHJlZSAnJXMnIGNvbnRhaW5zIGxvY2FsIG1vZGlmaWNhdGlvbnM7IHVzZSAnLWYnIHRvIGRpc2NhcmQgIgpAQCAtMTc0MTksODIgKzIwNDk4LDk0IEBACiAiTCdhcmJyZSBkZSB0cmViYWxsIGRlbCBzdWJtw7JkdWwgwqslc8K7IGNvbnTDqSBtb2RpZmljYWNpb25zIGxvY2FsczsgdXNldSAnLWYnICIKICJwZXIgYSBkZXNjYXJ0YXItbGVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2xlYXJlZCBkaXJlY3RvcnkgJyVzJ1xuIgogbXNnc3RyICJTJ2hhIG5ldGVqYXQgZWwgZGlyZWN0b3JpIMKrJXPCu1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBzdWJtb2R1bGUgd29yayB0cmVlICclcydcbiIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBlbGltaW5hciBsJ2FyYnJlIGRlIHRyZWJhbGwgZGUgc3VibcOyZHVsIMKrJXPCu1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEzOAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBlbXB0eSBzdWJtb2R1bGUgZGlyZWN0b3J5ICVzIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGVsIGRpcmVjdG9yaSBkZSBzdWJtw7JkdWwgYnVpdCAlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNTQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTYxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSAnJXMnICglcykgdW5yZWdpc3RlcmVkIGZvciBwYXRoICclcydcbiIKIG1zZ3N0ciAiUydoYSBkZXNyZWdpc3RyYXQgZWwgc3VibcOyZHVsIMKrJXPCuyAoJXMpIHBlciBhbCBjYW3DrSDCqyVzwrtcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTkwCiBtc2dpZCAiUmVtb3ZlIHN1Ym1vZHVsZSB3b3JraW5nIHRyZWVzIGV2ZW4gaWYgdGhleSBjb250YWluIGxvY2FsIGNoYW5nZXMiCiBtc2dzdHIgIiIKICJTdXByaW1laXggZWxzIGFyYnJlcyBkZSB0cmViYWxsIGRlbHMgc3VibcOyZHVscyBmaW5zIGkgdG90IHNpIGNvbnRlbmVuIGNhbnZpcyAiCiAibG9jYWxzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExOTEKIG1zZ2lkICJVbnJlZ2lzdGVyIGFsbCBzdWJtb2R1bGVzIgogbXNnc3RyICJEZXNyZWdpc3RyYSByZWN1cnNpdmFtZW50IHRvdHMgZWxzIHN1Ym3DsmR1bHMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTg5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE5NgogbXNnaWQgIiIKICJnaXQgc3VibW9kdWxlIGRlaW5pdCBbLS1xdWlldF0gWy1mIHwgLS1mb3JjZV0gWy0tYWxsIHwgWy0tXSBbPHBhdGg+Li4uXV0iCiBtc2dzdHIgIiIKICJnaXQgc3VibW9kdWxlIGRlaW5pdCBbLS1xdWlldF0gWy1mIHwgLS1mb3JjZV0gWy0tYWxsIHwgWy0tXSBbPGNhbcOtPi4uLl1dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIwMworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMTAKIG1zZ2lkICJVc2UgJy0tYWxsJyBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZGVpbml0aWFsaXplIGFsbCBzdWJtb2R1bGVzIgogbXNnc3RyICJVc2V1ICctLWFsbCcgc2kgcmVhbG1lbnQgdm9sZXUgZGVzaW5pY2lhbGl0emFyIHRvdHMgZWxzIHN1Ym3DsmR1bHMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjk3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzAwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTI3NQorbXNnaWQgIiIKKyJBbiBhbHRlcm5hdGUgY29tcHV0ZWQgZnJvbSBhIHN1cGVycHJvamVjdCdzIGFsdGVybmF0ZSBpcyBpbnZhbGlkLlxuIgorIlRvIGFsbG93IEdpdCB0byBjbG9uZSB3aXRob3V0IGFuIGFsdGVybmF0ZSBpbiBzdWNoIGEgY2FzZSwgc2V0XG4iCisic3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgdG8gJ2luZm8nIG9yLCBlcXVpdmFsZW50bHksIGNsb25lIHdpdGhcbiIKKyInLS1yZWZlcmVuY2UtaWYtYWJsZScgaW5zdGVhZCBvZiAnLS1yZWZlcmVuY2UnLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMxNCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMxNwogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgJyVzJyBjYW5ub3QgYWRkIGFsdGVybmF0ZTogJXMiCiBtc2dzdHIgImVsIHN1Ym3DsmR1bCDCqyVzwrsgbm8gcG90IGFmZWdpciB1biBhbHRlcm5hdGl1OiAlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzMzYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlZhbHVlICclcycgZm9yIHN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IGlzIG5vdCByZWNvZ25pemVkIgogbXNnc3RyICJObyBlcyByZWNvbmVpeCBlbCB2YWxvciDCqyVzwrsgcGVyIGEgc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzQzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJWYWx1ZSAnJXMnIGZvciBzdWJtb2R1bGUuYWx0ZXJuYXRlTG9jYXRpb24gaXMgbm90IHJlY29nbml6ZWQiCiBtc2dzdHIgIk5vIGVzIHJlY29uZWl4IGVsIHZhbG9yIMKrJXPCuyBwZXIgYSBzdWJtb2R1bGUuYWx0ZXJuYXRlTG9jYXRpb24iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4MwogbXNnaWQgIndoZXJlIHRoZSBuZXcgc3VibW9kdWxlIHdpbGwgYmUgY2xvbmVkIHRvIgogbXNnc3RyICJhIG9uIGVzIGNsb25hcsOgIGVsIHN1Ym3DsmR1bCBub3UiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4NgogbXNnaWQgIm5hbWUgb2YgdGhlIG5ldyBzdWJtb2R1bGUiCiBtc2dzdHIgIm5vbSBkZWwgc3VibcOyZHVsIG5vdSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzg5CiBtc2dpZCAidXJsIHdoZXJlIHRvIGNsb25lIHRoZSBzdWJtb2R1bGUgZnJvbSIKIG1zZ3N0ciAidXJsIGRlbCBxdWFsIGNsb25hciBlbCBzdWJtw7JkdWwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzgwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NwogbXNnaWQgImRlcHRoIGZvciBzaGFsbG93IGNsb25lcyIKIG1zZ3N0ciAicHJvZnVuZGl0YXQgZGVscyBjbG9ucyBzdXBlcmZpY2lhbHMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzgzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg5NwogbXNnaWQgImZvcmNlIGNsb25pbmcgcHJvZ3Jlc3MiCiBtc2dzdHIgImZvcsOnYSBlbCBwcm9ncsOpcyBkZWwgY2xvbmF0Z2UiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzg4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg5OQorbXNnaWQgImRpc2FsbG93IGNsb25pbmcgaW50byBub24tZW1wdHkgZGlyZWN0b3J5IgorbXNnc3RyICJubyBwZXJtZXRpcyBjbG9uYXIgZW4gdW4gZGlyZWN0b3JpIG5vIGJ1aXQiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA3CiBtc2dpZCAiIgogImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbLS1xdWlldF0gWy0tcmVmZXJlbmNlICIKICI8cmVwb3NpdG9yeT5dIFstLW5hbWUgPG5hbWU+XSBbLS1kZXB0aCA8ZGVwdGg+XSAtLXVybCA8dXJsPiAtLXBhdGggPHBhdGg+IgpAQCAtMTc1MDIsOTYgKzIwNTkzLDEwMyBAQAogImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg9PGNhbcOtPl0gWy0tcXVpZXRdIFstLXJlZmVyZW5jZSAiCiAiPGRpcMOyc2l0Pl0gWy0tbmFtZSA8bm9tPl0gWy0tZGVwdGggPHByb2Z1bmRpdGF0Pl0gLS11cmwgPHVybD4gLS1wYXRoIDxjYW3DrT4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBjcmVhdGUvdXNlICclcycgaW4gYW5vdGhlciBzdWJtb2R1bGUncyBnaXQgZGlyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDQyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNsb25lIG9mICclcycgaW50byBzdWJtb2R1bGUgcGF0aCAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiZWwgY2xvbmF0Z2UgZGUgwqslc8K7IGFsIGNhbcOtIGRlIHN1Ym3DsmR1bCDCqyVzwrsgaGEgZmFsbGF0IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQzMworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlyZWN0b3J5IG5vdCBlbXB0eTogJyVzJyIKK21zZ3N0ciAiZGlyZWN0b3JpIG5vIGJ1aXQ6IMKrJXPCuyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCBzdWJtb2R1bGUgZGlyZWN0b3J5IGZvciAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9idGVuaXIgZWwgZGlyZWN0b3JpIGRlIHN1Ym3DsmR1bCBwZXIgYSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDY5Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDk0CisjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKLW1zZ3N0ciAiIgotIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gcmVnaXN0cmFyIGVsIG1vZGUgZCdhY3R1YWxpdHphY2nDsyBwZXIgYWwgY2Ftw60gZGUgIgotInN1Ym3DsmR1bCDCqyVzwrsiCittc2dzdHIgIk1vZGUgZCdhY3R1YWxpdHphY2nDsyDCqyVzwrsgbm8gdsOgbGlkIHBlciBhbCBjYW3DrSBkZSBzdWJtw7JkdWwgwqslc8K7IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ3MwotIywgZnV6enksIGMtZm9ybWF0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ5OAorIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHVwZGF0ZSBtb2RlICclcycgY29uZmlndXJlZCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAiIgotIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gcmVnaXN0cmFyIGVsIG1vZGUgZCdhY3R1YWxpdHphY2nDsyBwZXIgYWwgY2Ftw60gZGUgIgotInN1Ym3DsmR1bCDCqyVzwrsiCisiTW9kZSBkJ2FjdHVhbGl0emFjacOzIMKrJXPCuyBjb25maWd1cmF0IG5vIHbDoGxpZCBwZXIgYWwgY2Ftw60gZGUgc3VibcOyZHVsIMKrJXPCuyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1NjYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICclcycgbm90IGluaXRpYWxpemVkIgogbXNnc3RyICJFbCBjYW3DrSBkZSBzdWJtw7JkdWwgwqslc8K7IG5vIGVzdMOgIGluaWNpYWxpdHphdCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1NzAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTk4CiBtc2dpZCAiTWF5YmUgeW91IHdhbnQgdG8gdXNlICd1cGRhdGUgLS1pbml0Jz8iCiBtc2dzdHIgIlBvdHNlciB2b2xldSB1c2FyICd1cGRhdGUgLS1pbml0Jz8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjAwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyB1bm1lcmdlZCBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIlMnZXN0w6Agb21ldGVudCBlbCBzdWJtw7JkdWwgbm8gZnVzaW9uYXQgJXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjI5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTY1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiUydlc3TDoCBvbWV0ZW50IGVsIHN1Ym3DsmR1bCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzczCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTgwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJy4gUmV0cnkgc2NoZWR1bGVkIgogbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNsb25hciDCqyVzwrsuIFMnaGEgcHJvZ3JhbWF0IHVuIHJlaW50ZW50IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTc4NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGNsb25lICclcycgYSBzZWNvbmQgdGltZSwgYWJvcnRpbmciCiBtc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgcGVyIHNlZ29uIGNvcCBlbiBjbG9uYXIgwqslc8K7LCBzJ2VzdMOgIGF2b3J0YW50IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA4OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NzYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxMjAKIG1zZ2lkICJwYXRoIGludG8gdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiY2Ftw60gYSBsJ2FyYnJlIGRlIHRyZWJhbGwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODUwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg3OQogbXNnaWQgInBhdGggaW50byB0aGUgd29ya2luZyB0cmVlLCBhY3Jvc3MgbmVzdGVkIHN1Ym1vZHVsZSBib3VuZGFyaWVzIgogbXNnc3RyICJjYW3DrSBhIGwnYXJicmUgZGUgdHJlYmFsbCwgYSB0cmF2w6lzIGRlIGZyb250ZXJlcyBkZSBzdWJtw7JkdWxzIG5pYXRzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4ODMKIG1zZ2lkICJyZWJhc2UsIG1lcmdlLCBjaGVja291dCBvciBub25lIgogbXNnc3RyICJyZWJhc2UsIG1lcmdlLCBjaGVja291dCBvIG5vbmUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODYwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg4OQogbXNnaWQgIkNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgdHJ1bmNhdGVkIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHJldmlzaW9ucyIKIG1zZ3N0ciAiQ3JlYSB1biBjbG9uIHN1cGVyZmljaWFsIHRydW5jYXQgYWwgbm9tYnJlIGRlIHJldmlzaW9ucyBlc3BlY2lmaWNhdCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODkyCiBtc2dpZCAicGFyYWxsZWwgam9icyIKIG1zZ3N0ciAidGFzcXVlcyBwYXJhbMK3bGVsZXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg5NAogbXNnaWQgIndoZXRoZXIgdGhlIGluaXRpYWwgY2xvbmUgc2hvdWxkIGZvbGxvdyB0aGUgc2hhbGxvdyByZWNvbW1lbmRhdGlvbiIKIG1zZ3N0ciAic2kgZWwgY2xvbmF0Z2UgaW5pY2lhbCBoYSBkZSBzZWd1aXIgbGEgcmVjb21hbmFjacOzIGRlIHN1cGVyZmljaWFsaXRhdCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODk1CiBtc2dpZCAiZG9uJ3QgcHJpbnQgY2xvbmluZyBwcm9ncmVzcyIKIG1zZ3N0ciAibm8gaW1wcmltZWl4aXMgZWwgcHJvZ3LDqXMgZGVsIGNsb25hdGdlIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg3MwotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciB1cGRhdGVfY2xvbmUgWy0tcHJlZml4PTxwYXRoPl0gWzxwYXRoPi4uLl0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciB1cGRhdGVfY2xvbmUgWy0tcHJlZml4PTxjYW3DrT5dIFs8Y2Ftw60+Li4uXSIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTA0Cittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PGNhbcOtPl0gWzxjYW3DrT4uLi5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg4NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTcKIG1zZ2lkICJiYWQgdmFsdWUgZm9yIHVwZGF0ZSBwYXJhbWV0ZXIiCiBtc2dzdHIgInZhbG9yIGluY29ycmVjdGUgcGVyIGFsIHBhcsOgbWV0cmUgdXBkYXRlIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkzNAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN1Ym1vZHVsZSAoJXMpIGJyYW5jaCBjb25maWd1cmVkIHRvIGluaGVyaXQgYnJhbmNoIGZyb20gc3VwZXJwcm9qZWN0LCBidXQgIgpAQCAtMTc2MDAsNDkgKzIwNjk4LDU4IEBACiAiTGEgYnJhbmNhIGRlIHN1Ym3DsmR1bCAoJXMpIGVzdMOgIGNvbmZpZ3VyYWRhIHBlciBhIGhlcmV0YXIgbGEgYnJhbmNhIGRlbCAiCiAic3VwZXJwcm9qZWN0ZSwgcGVyw7IgZWwgc3VwZXJwcm9qZWN0ZSBubyDDqXMgZW4gY2FwIGJyYW5jYSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwNTcKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwODgKKyMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCBhIHJlcG9zaXRvcnkgaGFuZGxlIGZvciBzdWJtb2R1bGUgJyVzJyIKLW1zZ3N0ciAibm8gcydoYSB0cm9iYXQgZWwgbm9tIHBlbCBzdWJtw7JkdWwgwqslc8K7IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9idGVuaXIgZWwgZ2VzdG9yIGRlbCBkaXDDsnNpdCBwZWwgc3VibcOyZHVsIMKrJXPCuyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwOTAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTIxCiBtc2dpZCAicmVjdXJzZSBpbnRvIHN1Ym1vZHVsZXMiCiBtc2dzdHIgImluY2xvdSByZWN1cnNpdmFtZW50IGFscyBzdWJtw7JkdWxzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA5NgotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBlbWJlZC1naXQtZGlyIFs8cGF0aD4uLi5dIgotbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZW1iZWQtZ2l0LWRpciBbPGNhbcOtPi4uLl0iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjEyNworbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzxvcHRpb25zPl0gWzxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzxvcGNpb25zPl0gWzxjYW3DrT4uLi5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxODMKIG1zZ2lkICJjaGVjayBpZiBpdCBpcyBzYWZlIHRvIHdyaXRlIHRvIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIgotbXNnc3RyICIiCittc2dzdHIgImNvbXByb3ZhIHNpIMOpcyBzZWd1ciBlc2NyaXVyZSBhbCBmaXR4ZXIgLmdpdG1vZHVsZXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTU3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE4NgogIywgZnV6enkKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIG5hbWUgW3ZhbHVlXSIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIG5hbWUgPGNhbcOtPiIKK21zZ2lkICJ1bnNldCB0aGUgY29uZmlnIGluIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIgorbXNnc3RyICJsJ2FsbGlzdGFtZW50IGRlbCAuZ2l0bW9kdWxlcyBhY3R1YWxpdHphdCBoYSBmYWxsYXQiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTU4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE5MQogIywgZnV6enkKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIDxuYW1lPiBbPHZhbHVlPl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgbmFtZSBbdmFsb3JdIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE5MgorIywgZnV6enkKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tdW5zZXQgPG5hbWU+IgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIG5hbWUgW3ZhbG9yXSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxOTMKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tY2hlY2std3JpdGVhYmxlIgotbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPGNhbcOtPl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS1jaGVjay13cml0ZWFibGUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTc1IGdpdC1zdWJtb2R1bGUuc2g6MTY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIxMiBnaXQtc3VibW9kdWxlLnNoOjE3MwogIywgZnV6enksIHNoLWZvcm1hdAogbXNnaWQgInBsZWFzZSBtYWtlIHN1cmUgdGhhdCB0aGUgLmdpdG1vZHVsZXMgZmlsZSBpcyBpbiB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICIiCiAiRmV1IMKrc3RhZ2XCuyBkZWxzIHZvc3RyZXMgY2FudmlzIGEgLmdpdG1vZHVsZXMgbyBmZXUgwqtzdGFzaMK7IGRlbHMgbWF0ZWl4b3MgIgogInBlciBhIHByb2NlZGlyIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyNQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyNjIgZ2l0LmM6NDMzIGdpdC5jOjY4NAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBkb2Vzbid0IHN1cHBvcnQgLS1zdXBlci1wcmVmaXgiCiBtc2dzdHIgIiVzIG5vIGFkbWV0IC0tc3VwZXItcHJlZml4IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIzMQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyNjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBzdWJtb2R1bGUtLWhlbHBlciBzdWJjb21tYW5kIgotbXNnc3RyICLCqyVzwrsgbm8gw6lzIHVuYSBzdWJvcmRyZSB2w6BsaWRhIGRlIHN1Ym1vZHVsZS0taGVscGVyIgorbXNnc3RyICLCqyVzwrsgbm8gw6lzIHVuIHN1Ym9yZHJlIHbDoGxpZCBkZSBzdWJtb2R1bGUtLWhlbHBlciIKIAogIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo4CiBtc2dpZCAiZ2l0IHN5bWJvbGljLXJlZiBbPG9wdGlvbnM+XSA8bmFtZT4gWzxyZWY+XSIKQEAgLTE3NjczLDE4ICsyMDc4MCwxOSBAQAogbXNnc3RyICJyYcOzIGRlIGwnYWN0dWFsaXR6YWNpw7MiCiAKICM6IGJ1aWx0aW4vdGFnLmM6MjUKKyMsIGZ1enp5CiBtc2dpZCAiIgotImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8a2V5LWlkPl0gWy1mXSBbLW0gPG1zZz4gfCAtRiA8ZmlsZT5dIDx0YWduYW1lPiAiCi0iWzxoZWFkPl0iCisiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA8bXNnPiB8IC1GIDxmaWxlPl1cbiIKKyJcdFx0PHRhZ25hbWU+IFs8aGVhZD5dIgogbXNnc3RyICIiCiAiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxpZC1kZS1jbGF1Pl0gWy1mXSBbLW0gPG1pc3NhdGdlPiB8IC1GIDxmaXR4ZXI+XSA8bm9tLSIKICJkJ2V0aXF1ZXRhPiBbPGNhcD5dIgogCi0jOiBidWlsdGluL3RhZy5jOjI2CisjOiBidWlsdGluL3RhZy5jOjI3CiBtc2dpZCAiZ2l0IHRhZyAtZCA8dGFnbmFtZT4uLi4iCiBtc2dzdHIgImdpdCB0YWcgLWQgPG5vbS1kJ2V0aXF1ZXRhPi4uLiIKIAotIzogYnVpbHRpbi90YWcuYzoyNworIzogYnVpbHRpbi90YWcuYzoyOAogbXNnaWQgIiIKICJnaXQgdGFnIC1sIFstbls8bnVtPl1dIFstLWNvbnRhaW5zIDxjb21taXQ+XSBbLS1uby1jb250YWlucyA8Y29tbWl0Pl0gWy0tIgogInBvaW50cy1hdCA8b2JqZWN0Pl1cbiIKQEAgLTE3Njk0LDIxICsyMDgwMiwyMSBAQAogIlstLXBvaW50cy1hdCA8b2JqZWN0ZT5dXG4iCiAiXHRcdFstLWZvcm1hdD08Zm9ybWF0Pl0gWy0tW25vLV1tZXJnZWQgWzxjb21pc3Npw7M+XV0gWzxwYXRyw7M+Li4uXSIKIAotIzogYnVpbHRpbi90YWcuYzoyOQorIzogYnVpbHRpbi90YWcuYzozMAogbXNnaWQgImdpdCB0YWcgLXYgWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnbmFtZT4uLi4iCiBtc2dzdHIgImdpdCB0YWcgLXYgWy0tZm9ybWF0PTxmb3JtYXQ+XSA8bm9tLWQnZXRpcXVldGE+Li4uIgogCi0jOiBidWlsdGluL3RhZy5jOjg3CisjOiBidWlsdGluL3RhZy5jOjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIG5vdCBmb3VuZC4iCiBtc2dzdHIgIm5vIHMnaGEgdHJvYmF0IGwnZXRpcXVldGEgwqslc8K7LiIKIAotIzogYnVpbHRpbi90YWcuYzoxMDMKKyM6IGJ1aWx0aW4vdGFnLmM6MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgdGFnICclcycgKHdhcyAlcylcbiIKIG1zZ3N0ciAiUydoYSBzdXByaW1pdCBsJ2V0aXF1ZXRhIMKrJXPCuyAoZXJhICVzKVxuIgogCi0jOiBidWlsdGluL3RhZy5jOjEzMworIzogYnVpbHRpbi90YWcuYzoxMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTc3MTksOSArMjA4MjcsOSBAQAogIlxuIgogIkVzY3Jpdml1IGVsIG1pc3NhdGdlIGRlIGwnZXRpcXVldGE6XG4iCiAiICAlc1xuIgotIkxlcyBsw61uaWVzIHF1ZSBjb21lbmNpbiBhbWIgJyVjJyBzJ2lnbm9yYXJhbi5cbiIKKyJMZXMgbMOtbmllcyBxdWUgY29tZW5jaW4gYW1iIMKrJWPCuyBzJ2lnbm9yYXJhbi5cbiIKIAotIzogYnVpbHRpbi90YWcuYzoxMzcKKyM6IGJ1aWx0aW4vdGFnLmM6MTM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTE3NzMzLDM1OSArMjA4NDEsMzcyIEBACiAiXG4iCiAiRXNjcml2aXUgZWwgbWlzc2F0Z2UgZGUgbCdldGlxdWV0YTpcbiIKICIgICVzXG4iCi0iTGVzIGzDrW5pZXMgcXVlIGNvbWVuY2luIGFtYiAnJWMnIGVzIHJldGluZHJhbjsgcG9kZXUgZWxpbWluYXItbGVzIHBlciB2w7NzICIKKyJMZXMgbMOtbmllcyBxdWUgY29tZW5jaW4gYW1iIMKrJWPCuyBlcyByZXRpbmRyYW47IHBvZGV1IGVsaW1pbmFyLWxlcyBwZXIgdsOzcyAiCiAibWF0ZWl4IHNpIHZvbGV1LlxuIgogCi0jOiBidWlsdGluL3RhZy5jOjE5MQorIzogYnVpbHRpbi90YWcuYzoxOTgKIG1zZ2lkICJ1bmFibGUgdG8gc2lnbiB0aGUgdGFnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHNpZ25hciBsJ2V0aXF1ZXRhIgogCi0jOiBidWlsdGluL3RhZy5jOjE5MworIzogYnVpbHRpbi90YWcuYzoyMDAKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdGFnIGZpbGUiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgZWwgZml0eGVyIGQnZXRpcXVldGEiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjE4CisjOiBidWlsdGluL3RhZy5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGhhdmUgY3JlYXRlZCBhIG5lc3RlZCB0YWcuIFRoZSBvYmplY3QgcmVmZXJyZWQgdG8gYnkgeW91ciBuZXcgdGFnIGlzXG4iCisiYWxyZWFkeSBhIHRhZy4gSWYgeW91IG1lYW50IHRvIHRhZyB0aGUgb2JqZWN0IHRoYXQgaXQgcG9pbnRzIHRvLCB1c2U6XG4iCisiXG4iCisiXHRnaXQgdGFnIC1mICVzICVzXnt9IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjMyCiBtc2dpZCAiYmFkIG9iamVjdCB0eXBlLiIKIG1zZ3N0ciAiZWwgdGlwdXMgZCdvYmplY3RlIMOpcyBpbmNvcnJlY3RlLiIKIAotIzogYnVpbHRpbi90YWcuYzoyNjcKKyM6IGJ1aWx0aW4vdGFnLmM6Mjg0CiBtc2dpZCAibm8gdGFnIG1lc3NhZ2U/IgogbXNnc3RyICJubyBoaSBoYSBjYXAgbWlzc2F0Z2UgZCdldGlxdWV0YT8iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mjc0CisjOiBidWlsdGluL3RhZy5jOjI5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgdGFnIG1lc3NhZ2UgaGFzIGJlZW4gbGVmdCBpbiAlc1xuIgogbXNnc3RyICJTJ2hhIGRlaXhhdCBlbCBtaXNzYXRnZSBkZSBsJ2V0aXF1ZXRhIGVuICVzXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzg1CisjOiBidWlsdGluL3RhZy5jOjQwMgogbXNnaWQgImxpc3QgdGFnIG5hbWVzIgogbXNnc3RyICJsbGlzdGEgZWxzIG5vbXMgZCdldGlxdWV0YSIKIAotIzogYnVpbHRpbi90YWcuYzozODcKKyM6IGJ1aWx0aW4vdGFnLmM6NDA0CiBtc2dpZCAicHJpbnQgPG4+IGxpbmVzIG9mIGVhY2ggdGFnIG1lc3NhZ2UiCiBtc2dzdHIgImltcHJpbWVpeCA8bj4gbMOtbmllcyBkZSBjYWRhIG1pc3NhdGdlIGQnZXRpcXVldGEiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzg5CisjOiBidWlsdGluL3RhZy5jOjQwNgogbXNnaWQgImRlbGV0ZSB0YWdzIgogbXNnc3RyICJzdXByaW1laXggbGVzIGV0aXF1ZXRlcyIKIAotIzogYnVpbHRpbi90YWcuYzozOTAKKyM6IGJ1aWx0aW4vdGFnLmM6NDA3CiBtc2dpZCAidmVyaWZ5IHRhZ3MiCiBtc2dzdHIgInZlcmlmaWNhIGxlcyBldGlxdWV0ZXMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MzkyCisjOiBidWlsdGluL3RhZy5jOjQwOQogbXNnaWQgIlRhZyBjcmVhdGlvbiBvcHRpb25zIgogbXNnc3RyICJPcGNpb25zIGRlIGNyZWFjacOzIGQnZXRpcXVldGVzIgogCi0jOiBidWlsdGluL3RhZy5jOjM5NAorIzogYnVpbHRpbi90YWcuYzo0MTEKIG1zZ2lkICJhbm5vdGF0ZWQgdGFnLCBuZWVkcyBhIG1lc3NhZ2UiCiBtc2dzdHIgImV0aXF1ZXRhIGFub3RhZGEsIG5lY2Vzc2l0YSB1biBtaXNzYXRnZSIKIAotIzogYnVpbHRpbi90YWcuYzozOTYKKyM6IGJ1aWx0aW4vdGFnLmM6NDEzCiBtc2dpZCAidGFnIG1lc3NhZ2UiCiBtc2dzdHIgIm1pc3NhdGdlIGQnZXRpcXVldGEiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzk4CisjOiBidWlsdGluL3RhZy5jOjQxNQogbXNnaWQgImZvcmNlIGVkaXQgb2YgdGFnIG1lc3NhZ2UiCiBtc2dzdHIgImZvcsOnYSBsJ2VkaWNpw7MgZGVsIG1pc3NhdGdlIGRlIGwnZXRpcXVldGEiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzk5CisjOiBidWlsdGluL3RhZy5jOjQxNgogbXNnaWQgImFubm90YXRlZCBhbmQgR1BHLXNpZ25lZCB0YWciCiBtc2dzdHIgImV0aXF1ZXRhIGFub3RhZGEgaSBzaWduYWRhIHBlciBHUEciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDAzCisjOiBidWlsdGluL3RhZy5jOjQxOQogbXNnaWQgInVzZSBhbm90aGVyIGtleSB0byBzaWduIHRoZSB0YWciCiBtc2dzdHIgInVzYSB1bmEgYWx0cmEgY2xhdSBwZXIgYSBzaWduYXIgbCdldGlxdWV0YSIKIAotIzogYnVpbHRpbi90YWcuYzo0MDQKKyM6IGJ1aWx0aW4vdGFnLmM6NDIwCiBtc2dpZCAicmVwbGFjZSB0aGUgdGFnIGlmIGV4aXN0cyIKIG1zZ3N0ciAicmVlbXBsYcOnYSBsJ2V0aXF1ZXRhIHNpIGV4aXN0ZWl4IgogCi0jOiBidWlsdGluL3RhZy5jOjQwNSBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjkKKyM6IGJ1aWx0aW4vdGFnLmM6NDIxIGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2OQogbXNnaWQgImNyZWF0ZSBhIHJlZmxvZyIKIG1zZ3N0ciAiY3JlYSB1biByZWdpc3RyZSBkZSByZWZlcsOobmNpZXMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA3CisjOiBidWlsdGluL3RhZy5jOjQyMwogbXNnaWQgIlRhZyBsaXN0aW5nIG9wdGlvbnMiCiBtc2dzdHIgIk9wY2lvbnMgZGUgbGxpc3RhdCBkJ2V0aXF1ZXRlcyIKIAotIzogYnVpbHRpbi90YWcuYzo0MDgKKyM6IGJ1aWx0aW4vdGFnLmM6NDI0CiBtc2dpZCAic2hvdyB0YWcgbGlzdCBpbiBjb2x1bW5zIgogbXNnc3RyICJtb3N0cmEgbGEgbGxpc3RhIGQnZXRpcXVldGVzIGVuIGNvbHVtbmVzIgogCi0jOiBidWlsdGluL3RhZy5jOjQwOSBidWlsdGluL3RhZy5jOjQxMQorIzogYnVpbHRpbi90YWcuYzo0MjUgYnVpbHRpbi90YWcuYzo0MjcKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgImltcHJpbWVpeCBub23DqXMgbGVzIGV0aXF1ZXRlcyBxdWUgY29udGluZ3VpbiBsYSBjb21pc3Npw7MiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDEwIGJ1aWx0aW4vdGFnLmM6NDEyCisjOiBidWlsdGluL3RhZy5jOjQyNiBidWlsdGluL3RhZy5jOjQyOAogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAiaW1wcmltZWl4IG5vbcOpcyBsZXMgZXRpcXVldGVzIHF1ZSBubyBjb250aW5ndWluIGxhIGNvbWlzc2nDsyIKIAotIzogYnVpbHRpbi90YWcuYzo0MTMKKyM6IGJ1aWx0aW4vdGFnLmM6NDI5CiBtc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAiaW1wcmltZWl4IG5vbcOpcyBsZXMgZXRpcXVldGVzIHF1ZSBzJ2hhbiBmdXNpb25hdCIKIAotIzogYnVpbHRpbi90YWcuYzo0MTQKKyM6IGJ1aWx0aW4vdGFnLmM6NDMwCiBtc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCiBtc2dzdHIgImltcHJpbWVpeCBub23DqXMgbGVzIGV0aXF1ZXRlcyBxdWUgbm8gcydoYW4gZnVzaW9uYXQiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDE5CisjOiBidWlsdGluL3RhZy5jOjQzNAogbXNnaWQgInByaW50IG9ubHkgdGFncyBvZiB0aGUgb2JqZWN0IgogbXNnc3RyICJpbXByaW1laXggbm9tw6lzIGxlcyBldGlxdWV0ZXMgZGUgbCdvYmplY3RlIgogCi0jOiBidWlsdGluL3RhZy5jOjQ2MworIzogYnVpbHRpbi90YWcuYzo0ODIKIG1zZ2lkICItLWNvbHVtbiBhbmQgLW4gYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1jb2x1bW4gaSAtbiBzw7NuIGluY29tcGF0aWJsZXMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDg1CisjOiBidWlsdGluL3RhZy5jOjUwNAogbXNnaWQgIi1uIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICJlcyBwZXJtZXQgbCdvcGNpw7MgLW4gbm9tw6lzIGFtYiBtb2RlIGxsaXN0YSIKIAotIzogYnVpbHRpbi90YWcuYzo0ODcKKyM6IGJ1aWx0aW4vdGFnLmM6NTA2CiBtc2dpZCAiLS1jb250YWlucyBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAiZXMgcGVybWV0IGwnb3BjacOzIC0tY29udGFpbnMgbm9tw6lzIGFtYiBtb2RlIGxsaXN0YSIKIAotIzogYnVpbHRpbi90YWcuYzo0ODkKKyM6IGJ1aWx0aW4vdGFnLmM6NTA4CiBtc2dpZCAiLS1uby1jb250YWlucyBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAiZXMgcGVybWV0IGwnb3BjacOzIC0tbm8tY29udGFpbnMgbm9tw6lzIGFtYiBtb2RlIGxsaXN0YSIKIAotIzogYnVpbHRpbi90YWcuYzo0OTEKKyM6IGJ1aWx0aW4vdGFnLmM6NTEwCiBtc2dpZCAiLS1wb2ludHMtYXQgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgImVzIHBlcm1ldCAtLXBvaW50cy1hdCBvcHRpb24gbm9tw6lzIGFtYiBtb2RlIGxsaXN0YSIKIAotIzogYnVpbHRpbi90YWcuYzo0OTMKKyM6IGJ1aWx0aW4vdGFnLmM6NTEyCiBtc2dpZCAiLS1tZXJnZWQgYW5kIC0tbm8tbWVyZ2VkIG9wdGlvbnMgYXJlIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgImVzIHBlcm1ldGVuIGxlcyBvcGNpb25zIC0tbWVyZ2VkIGkgLS1uby1tZXJnZWQgbm9tw6lzIGFtYiBtb2RlIGxsaXN0YSIKIAotIzogYnVpbHRpbi90YWcuYzo1MDQKKyM6IGJ1aWx0aW4vdGFnLmM6NTIzCiBtc2dpZCAib25seSBvbmUgLUYgb3IgLW0gb3B0aW9uIGlzIGFsbG93ZWQuIgogbXNnc3RyICJub23DqXMgZXMgcGVybWV0IHVuYSBvcGNpw7MgLUYgbyAtbS4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTIzCisjOiBidWlsdGluL3RhZy5jOjU0MgogbXNnaWQgInRvbyBtYW55IHBhcmFtcyIKIG1zZ3N0ciAibWFzc2EgcGFyw6BtZXRyZXMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTI5CisjOiBidWlsdGluL3RhZy5jOjU0OAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRhZyBuYW1lLiIKIG1zZ3N0ciAiwqslc8K7IG5vIMOpcyB1biBub20gZCdldGlxdWV0YSB2w6BsaWQuIgogCi0jOiBidWlsdGluL3RhZy5jOjUzNAorIzogYnVpbHRpbi90YWcuYzo1NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFnICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgImwnZXRpcXVldGEgwqslc8K7IGphIGV4aXN0ZWl4IgogCi0jOiBidWlsdGluL3RhZy5jOjU2NQorIzogYnVpbHRpbi90YWcuYzo1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRlZCB0YWcgJyVzJyAod2FzICVzKVxuIgogbXNnc3RyICJFdGlxdWV0YSDCqyVzwrsgYWN0dWFsaXR6YWRhIChlcmEgJXMpXG4iCiAKLSM6IGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1MDAKKyM6IGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1MDEKIG1zZ2lkICJVbnBhY2tpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiUydlc3RhbiBkZXNlbXBhcXVldGFudCBlbHMgb2JqZWN0ZXMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6ODIKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgJXMiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gY3JlYXIgZWwgZGlyZWN0b3JpICVzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGZpbGUgJXMiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gY3JlYXIgZWwgZml0eGVyICVzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSBmaWxlICVzIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHN1cHJpbWlyIGVsIGZpdHhlciAlcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTMgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE1IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgZGlyZWN0b3J5ICVzIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHN1cHJpbWlyIGVsIGRpcmVjdG9yaSAlcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMzgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRlc3RpbmcgbXRpbWUgaW4gJyVzJyAiCiBtc2dzdHIgIlMnZXN0w6AgcHJvdmFudCBtdGltZSBlbiDCqyVzwrsgIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE1MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNTQKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBhZGRpbmcgYSBuZXcgZmlsZSIKIG1zZ3N0ciAiIgogImxhIGluZm9ybWFjacOzIGQnc3RhdCBkZSBkaXJlY3Rvcmkgbm8gY2FudmlhIGRlc3Byw6lzIGQnYWZlZ2lyIHVuIGZpdHhlciBub3UiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTY1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE2NwogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGFkZGluZyBhIG5ldyBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKICJsYSBpbmZvcm1hY2nDsyBkJ3N0YXQgZGUgZGlyZWN0b3JpIG5vIGNhbnZpYSBkZXNwcsOpcyBkJ2FmZWdpciB1biBkaXJlY3Rvcmkgbm91IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE3OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxODAKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGNoYW5nZXMgYWZ0ZXIgdXBkYXRpbmcgYSBmaWxlIgogbXNnc3RyICIiCiAibGEgaW5mb3JtYWNpw7MgZCdzdGF0IGRlIGRpcmVjdG9yaSBjYW52aWEgZGVzcHLDqXMgZCdhY3R1YWxpdHphciB1biBmaXR4ZXIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTg5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE5MQogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gY2hhbmdlcyBhZnRlciBhZGRpbmcgYSBmaWxlIGluc2lkZSBzdWJkaXJlY3RvcnkiCiBtc2dzdHIgIiIKICJsYSBpbmZvcm1hY2nDsyBkJ3N0YXQgZGUgZGlyZWN0b3JpIGNhbnZpYSBkZXNwcsOpcyBkJ2FmZWdpciB1biBmaXR4ZXIgZGlucyAiCiAiZCd1biBzdWJkaXJlY3RvcmkiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjAwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIwMgogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGRlbGV0aW5nIGEgZmlsZSIKIG1zZ3N0ciAiIgogImxhIGluZm9ybWFjacOzIGQnc3RhdCBkZSBkaXJlY3Rvcmkgbm8gY2FudmlhIGRlc3Byw6lzIGRlIHN1cHJpbWlyIHVuIGZpdHhlciIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjE1CiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgZGVsZXRpbmcgYSBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKICJsYSBpbmZvcm1hY2nDsyBkJ3N0YXQgZGUgZGlyZWN0b3JpIG5vIGNhbnZpYSBkZXNwcsOpcyBkZSBzdXByaW1pciB1biBkaXJlY3RvcmkiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMgogbXNnaWQgIiBPSyIKIG1zZ3N0ciAiIEQnYWNvcmQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6NTg4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjU5MQogbXNnaWQgImdpdCB1cGRhdGUtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKIG1zZ3N0ciAiZ2l0IHVwZGF0ZS1pbmRleCBbPG9wY2lvbnM+XSBbLS1dIFs8Zml0eGVyPi4uLl0iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTYxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3NAogbXNnaWQgImNvbnRpbnVlIHJlZnJlc2ggZXZlbiB3aGVuIGluZGV4IG5lZWRzIHVwZGF0ZSIKIG1zZ3N0ciAiIgogImNvbnRpbnVhIGwnYWN0dWFsaXR6YWNpw7MgZW5jYXJhIHF1ZSBsJ8OtbmRleCBuZWNlc3NpdGkgdW5hIGFjdHVhbGl0emFjacOzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2NAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzcKIG1zZ2lkICJyZWZyZXNoOiBpZ25vcmUgc3VibW9kdWxlcyIKIG1zZ3N0ciAiYWN0dWFsaXR6YTogaWdub3JhIGVscyBzdWJtw7JkdWxzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODAKIG1zZ2lkICJkbyBub3QgaWdub3JlIG5ldyBmaWxlcyIKIG1zZ3N0ciAibm8gaWdub3JpcyBlbHMgZml0eGVycyBub3VzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODIKIG1zZ2lkICJsZXQgZmlsZXMgcmVwbGFjZSBkaXJlY3RvcmllcyBhbmQgdmljZS12ZXJzYSIKIG1zZ3N0ciAiZGVpeGEgcXVlIGVscyBmaXR4ZXJzIHJlZW1wbGFjaW4gZWxzIGRpcmVjdG9yaXMgaSB2aWNldmVyc2EiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTcxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NAogbXNnaWQgIm5vdGljZSBmaWxlcyBtaXNzaW5nIGZyb20gd29ya3RyZWUiCiBtc2dzdHIgInRpbmd1ZXMgZW4gY29tcHRlIGVscyBmaXR4ZXJzIGFic2VudHMgZGUgbCdhcmJyZSBkZSB0cmViYWxsIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODYKIG1zZ2lkICJyZWZyZXNoIGV2ZW4gaWYgaW5kZXggY29udGFpbnMgdW5tZXJnZWQgZW50cmllcyIKIG1zZ3N0ciAiYWN0dWFsaXR6YSBlbmNhcmEgcXVlIGwnw61uZGV4IGNvbnRpbmd1aSBlbnRyYWRlcyBubyBmdXNpb25hZGVzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3NgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODkKIG1zZ2lkICJyZWZyZXNoIHN0YXQgaW5mb3JtYXRpb24iCiBtc2dzdHIgImFjdHVhbGl0emEgbGEgaW5mb3JtYWNpw7MgZCdlc3RhZMOtc3RpcXVlcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTkzCiBtc2dpZCAibGlrZSAtLXJlZnJlc2gsIGJ1dCBpZ25vcmUgYXNzdW1lLXVuY2hhbmdlZCBzZXR0aW5nIgogbXNnc3RyICJjb20gLS1yZWZyZXNoLCBwZXLDsiBpZ25vcmEgZWwgcGFyw6BtZXRyZSBhc3N1bWUtdW5jaGFuZ2VkIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTcKIG1zZ2lkICI8bW9kZT4sPG9iamVjdD4sPHBhdGg+IgogbXNnc3RyICI8bW9kZT4sPG9iamVjdGU+LDxjYW3DrT4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5OAogbXNnaWQgImFkZCB0aGUgc3BlY2lmaWVkIGVudHJ5IHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiYWZlZ2VpeCBsJ2VudHJhZGEgZXNwZWNpZmljYWRhIGEgbCfDrW5kZXgiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDgKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIFwibm90IGNoYW5naW5nXCIiCiBtc2dzdHIgIm1hcmNhIGVscyBmaXR4ZXJzIGNvbSBhIFwibm8gY2FudmlhbnRcIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMQogbXNnaWQgImNsZWFyIGFzc3VtZWQtdW5jaGFuZ2VkIGJpdCIKIG1zZ3N0ciAibmV0ZWphIGVsIGJpdCBhc3N1bWVkLXVuY2hhbmdlZCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTQKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIFwiaW5kZXgtb25seVwiIgogbXNnc3RyICJtYXJjYSBlbHMgZml0eGVycyBjb20gYSBcIm5vbcOpcyDDrW5kZXhcIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAzCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTcKIG1zZ2lkICJjbGVhciBza2lwLXdvcmt0cmVlIGJpdCIKIG1zZ3N0ciAibmV0ZWphIGVsIGJpdCBza2lwLXdvcmt0cmVlIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyMAorbXNnaWQgImRvIG5vdCB0b3VjaCBpbmRleC1vbmx5IGVudHJpZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDIyCiBtc2dpZCAiYWRkIHRvIGluZGV4IG9ubHk7IGRvIG5vdCBhZGQgY29udGVudCB0byBvYmplY3QgZGF0YWJhc2UiCiBtc2dzdHIgIiIKICJub23DqXMgYWZlZ2VpeCBhIGwnw61uZGV4OyBubyBhZmVnZWl4aXMgZWwgY29udGluZ3V0IGEgbGEgYmFzZSBkZSBkYWRlcyAiCiAiZCdvYmplY3RlcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjQKIG1zZ2lkICJyZW1vdmUgbmFtZWQgcGF0aHMgZXZlbiBpZiBwcmVzZW50IGluIHdvcmt0cmVlIgogbXNnc3RyICIiCiAiZWxpbWluYSBlbHMgY2FtaW5zIGFub21lbmF0cyBlbmNhcmEgcXVlIGVzdGlndWluIHByZXNlbnRzIGVuIGwnYXJicmUgZGUgIgogInRyZWJhbGwiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI2CiBtc2dpZCAid2l0aCAtLXN0ZGluOiBpbnB1dCBsaW5lcyBhcmUgdGVybWluYXRlZCBieSBudWxsIGJ5dGVzIgogbXNnc3RyICJhbWIgLS1zdGRpbjogbGVzIGzDrW5pZXMgZCdlbnRyYWRhIGFjYWJlbiBhbWIgb2N0ZXRzIG51bHMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI4CiBtc2dpZCAicmVhZCBsaXN0IG9mIHBhdGhzIHRvIGJlIHVwZGF0ZWQgZnJvbSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAibGxlZ2VpeCBsYSBsbGlzdGEgZGUgY2FtaW5zIGEgYWN0dWFsaXR6YXIgZGVzIGRlIGwnZW50cmFkYSBlc3TDoG5kYXJkIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzMgogbXNnaWQgImFkZCBlbnRyaWVzIGZyb20gc3RhbmRhcmQgaW5wdXQgdG8gdGhlIGluZGV4IgogbXNnc3RyICJhZmVnZWl4IGxlcyBlbnRyYWRlcyBkZSBsJ2VudHJhZGEgZXN0w6BuZGFyZCBhIGwnw61uZGV4IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzNgogbXNnaWQgInJlcG9wdWxhdGUgc3RhZ2VzICMyIGFuZCAjMyBmb3IgdGhlIGxpc3RlZCBwYXRocyIKIG1zZ3N0ciAicmVlbXBsZW5hIGxlcyDCq3N0YWdlwrsgIzIgaSAjMyBwZXIgYWxzIGNhbWlucyBsbGlzdGF0cyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDAKIG1zZ2lkICJvbmx5IHVwZGF0ZSBlbnRyaWVzIHRoYXQgZGlmZmVyIGZyb20gSEVBRCIKIG1zZ3N0ciAibm9tw6lzIGFjdHVhbGl0emEgbGVzIGVudHJhZGVzIHF1ZSBkaWZlcmVpeGluIGRlIEhFQUQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyOAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ0CiBtc2dpZCAiaWdub3JlIGZpbGVzIG1pc3NpbmcgZnJvbSB3b3JrdHJlZSIKIG1zZ3N0ciAiaWdub3JhIGVscyBmaXR4ZXJzIGFic2VudHMgZGUgbCdhcmJyZSBkZSB0cmViYWxsIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NwogbXNnaWQgInJlcG9ydCBhY3Rpb25zIHRvIHN0YW5kYXJkIG91dHB1dCIKIG1zZ3N0ciAiaW5mb3JtYSBkZSBsZXMgYWNjaW9ucyBlbiBsYSBzb3J0aWRhIGVzdMOgbmRhcmQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzMworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ5CiBtc2dpZCAiKGZvciBwb3JjZWxhaW5zKSBmb3JnZXQgc2F2ZWQgdW5yZXNvbHZlZCBjb25mbGljdHMiCiBtc2dzdHIgIihwZXIgYSBwb3JjZWxsYW5lcykgb2JsaWRhJ3QgZGVscyBjb25mbGljdGVzIG5vIHJlc29sdHMgbmkgZGVzYXRzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1MwogbXNnaWQgIndyaXRlIGluZGV4IGluIHRoaXMgZm9ybWF0IgogbXNnc3RyICJlc2NyaXUgbCfDrW5kZXggZW4gYXF1ZXN0IGZvcm1hdCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDM5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTUKIG1zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBzcGxpdCBpbmRleCIKIG1zZ3N0ciAiaGFiaWxpdGEgbyBpbmhhYmlsaXRhIGwnw61uZGV4IGRpdmlkaXQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDU3CiBtc2dpZCAiZW5hYmxlL2Rpc2FibGUgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICJoYWJpbGl0YS9pbmhhYmlsaXRhIGxhIG1lbcOycmlhIGNhdSBubyBzZWd1aWRhIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1OQogbXNnaWQgInRlc3QgaWYgdGhlIGZpbGVzeXN0ZW0gc3VwcG9ydHMgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICJwcm92YSBzaSBlbCBzaXN0ZW1hIGRlIGZpdHhlcnMgYWRtZXQgbGEgbWVtw7JyaWEgY2F1IG5vIHNlZ3VpZGEiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDYxCiBtc2dpZCAiZW5hYmxlIHVudHJhY2tlZCBjYWNoZSB3aXRob3V0IHRlc3RpbmcgdGhlIGZpbGVzeXN0ZW0iCiBtc2dzdHIgImhhYmlsaXRhIGxhIG1lbcOycmlhIGNhdSBubyBzZWd1aWRhIHNlbnNlIHByb3ZhciBlbCBzaXN0ZW1hIGRlIGZpdHhlcnMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDYzCiBtc2dpZCAid3JpdGUgb3V0IHRoZSBpbmRleCBldmVuIGlmIGlzIG5vdCBmbGFnZ2VkIGFzIGNoYW5nZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjUKIG1zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBmaWxlIHN5c3RlbSBtb25pdG9yIgogbXNnc3RyICJoYWJpbGl0YSBvIGluaGFiaWxpdGEgZWwgbW9uaXRvciBkZWwgc2lzdGVtYSBkZSBmaXR4ZXJzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2NwogbXNnaWQgIm1hcmsgZmlsZXMgYXMgZnNtb25pdG9yIHZhbGlkIgogbXNnc3RyICJtYXJjYSBlbHMgZml0eGVycyBjb20gYSB2w6BsaWRzIHBlbCBmc21vbml0b3IiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1NAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDcwCiBtc2dpZCAiY2xlYXIgZnNtb25pdG9yIHZhbGlkIGJpdCIKIG1zZ3N0ciAibmV0ZWphIGVsIGJpdCBkZSB2YWxpZGVzYSBkZWwgZnNtb25pdG9yIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNTMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MwogbXNnaWQgIiIKICJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgogImVuYWJsZSBzcGxpdCBpbmRleCIKQEAgLTE4MDkzLDcgKzIxMjE0LDcgQEAKICJjb3JlLnNwbGl0SW5kZXggZXN0w6AgZXN0YWJsZXJ0IGEgZmFsczsgZWxpbWluZXUtbG8gbyBjYW52aWFyLWxvLCBzaSByZWFsbWVudCAiCiAidm9sZXUgaGFiaWxpdGFyIGwnw61uZGV4IGRpdmlkaXQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE2MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTgyCiBtc2dpZCAiIgogImNvcmUuc3BsaXRJbmRleCBpcyBzZXQgdG8gdHJ1ZTsgcmVtb3ZlIG9yIGNoYW5nZSBpdCwgaWYgeW91IHJlYWxseSB3YW50IHRvICIKICJkaXNhYmxlIHNwbGl0IGluZGV4IgpAQCAtMTgxMDEsNyArMjEyMjIsNyBAQAogImNvcmUuc3BsaXRJbmRleCBlc3TDoCBlc3RhYmxlcnQgYSBjZXJ0OyBlbGltaW5ldS1sbyBvIGNhbnZpZXUtbG8sIHNpIHJlYWxtZW50ICIKICJ2b2xldSBpbmhhYmlsaXRhciBsJ8OtbmRleCBkaXZpZGl0IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNzMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE5NAogbXNnaWQgIiIKICJjb3JlLnVudHJhY2tlZENhY2hlIGlzIHNldCB0byB0cnVlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgIgogInRvIGRpc2FibGUgdGhlIHVudHJhY2tlZCBjYWNoZSIKQEAgLTE4MTA5LDExICsyMTIzMCwxMSBAQAogImNvcmUudW50cmFja2VkQ2FjaGUgZXN0w6AgZXN0YWJsZXJ0IGEgY2VydDsgZWxpbWluZXUtbG8gbyBjYW52aWV1LWxvLCBzaSAiCiAicmVhbG1lbnQgdm9sZXUgaW5oYWJpbGl0YXIgZWwgY2F1IG5vIHNlZ3VpdCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTc3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExOTgKIG1zZ2lkICJVbnRyYWNrZWQgY2FjaGUgZGlzYWJsZWQiCiBtc2dzdHIgIkxhIG1lbcOycmlhIGNhdSBubyBzZWd1aWRhIGVzdMOgIGluaGFiaWxpdGFkYSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTg1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDYKIG1zZ2lkICIiCiAiY29yZS51bnRyYWNrZWRDYWNoZSBpcyBzZXQgdG8gZmFsc2U7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCiAidG8gZW5hYmxlIHRoZSB1bnRyYWNrZWQgY2FjaGUiCkBAIC0xODEyMSwyOSArMjEyNDIsMjkgQEAKICJjb3JlLnVudHJhY2tlZENhY2hlIGVzdMOgIGVzdGFibGVydCBhIGZhbHM7IGVsaW1pbmV1LWxvIG8gY2Fudmlhci1sbywgc2kgIgogInJlYWxtZW50IHZvbGV1IGhhYmlsaXRhciBlbCBjYXUgbm8gc2VndWl0IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExODkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJVbnRyYWNrZWQgY2FjaGUgZW5hYmxlZCBmb3IgJyVzJyIKIG1zZ3N0ciAiTGEgbWVtw7JyaWEgY2F1IG5vIHNlZ3VpZGEgZXN0w6AgaGFiaWxpdGFkYSBwZXIgYSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE5NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjE4CiBtc2dpZCAiY29yZS5mc21vbml0b3IgaXMgdW5zZXQ7IHNldCBpdCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZW5hYmxlIGZzbW9uaXRvciIKIG1zZ3N0ciAiIgogImNvcmUuZnNtb25pdG9yIGVzdMOgIGVzdGFibGVydCBhIGZhbHM7IGVzdGFibGl1LWxvIGEgY2VydCBzaSByZWFsbWVudCB2b2xldSAiCiAiaGFiaWxpdGFyIGZzbW9uaXRvciIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjAxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMjIKIG1zZ2lkICJmc21vbml0b3IgZW5hYmxlZCIKIG1zZ3N0ciAiZnNtb25pdG9yIGhhYmlsaXRhdCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMjUKIG1zZ2lkICIiCiAiY29yZS5mc21vbml0b3IgaXMgc2V0OyByZW1vdmUgaXQgaWYgeW91IHJlYWxseSB3YW50IHRvIGRpc2FibGUgZnNtb25pdG9yIgogbXNnc3RyICIiCiAiY29yZS5mc21vbml0b3IgZXN0w6AgZXN0YWJsZXJ0IGEgY2VydDsgZWxpbWluZXUtbG8gc2kgcmVhbG1lbnQgdm9sZXUgIgogImluaGFiaWxpdGFyIGZzbW9uaXRvciIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMjkKIG1zZ2lkICJmc21vbml0b3IgZGlzYWJsZWQiCiBtc2dzdHIgImZzbW9uaXRvciBpbmhhYmlsaXRhdCIKIApAQCAtMTgxNjYsNyArMjEyODcsNyBAQAogCiAjOiBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjYKIG1zZ2lkICJ1cGRhdGUgPHJlZm5hbWU+IG5vdCB0aGUgb25lIGl0IHBvaW50cyB0byIKLW1zZ3N0ciAiYWN0dWFsaXR6YSA8bm9tIGRlIHJlZmVyw6huY2lhPiwgbm8gbGEgcXVlIGFzc2VueWFsaSIKK21zZ3N0ciAiYWN0dWFsaXR6YSA8bm9tIGRlIHJlZmVyw6huY2lhPiwgbm8gbGEgcXVlIGFwdW50aSIKIAogIzogYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY3CiBtc2dpZCAic3RkaW4gaGFzIE5VTC10ZXJtaW5hdGVkIGFyZ3VtZW50cyIKQEAgLTE4MTg4LDYgKzIxMzA5LDEwIEBACiBtc2dpZCAiZ2l0IHVwbG9hZC1wYWNrIFs8b3B0aW9ucz5dIDxkaXI+IgogbXNnc3RyICJnaXQgdXBsb2FkLXBhY2sgWzxvcGNpb25zPl0gPGRpcmVjdG9yaT4iCiAKKyM6IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyMyB0L2hlbHBlci90ZXN0LXNlcnZlLXYyLmM6MTcKK21zZ2lkICJxdWl0IGFmdGVyIGEgc2luZ2xlIHJlcXVlc3QvcmVzcG9uc2UgZXhjaGFuZ2UiCittc2dzdHIgInN1cnQgZGVzcHLDqXMgZCd1biBzb2wgaW50ZXJjYW52aSBkZSBzb2zCt2xpY2l0dWQvcmVzcG9zdGEiCisKICM6IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyNQogbXNnaWQgImV4aXQgaW1tZWRpYXRlbHkgYWZ0ZXIgaW5pdGlhbCByZWYgYWR2ZXJ0aXNlbWVudCIKIG1zZ3N0ciAic3VydCBpbW1lZGlhdGFtZW50IGRlc3Byw6lzIGRlIGwnYW51bmNpIGluaWNpYWwgZGUgcmVmZXLDqG5jaWEiCkBAIC0xODIwMSwxNSArMjEzMjYsMTUgQEAKIG1zZ2lkICJpbnRlcnJ1cHQgdHJhbnNmZXIgYWZ0ZXIgPG4+IHNlY29uZHMgb2YgaW5hY3Rpdml0eSIKIG1zZ3N0ciAiaW50ZXJyb21wIGxhIHRyYW5zZmVyw6huY2lhIGRlc3Byw6lzIGRlIDxuPiBzZWdvbnMgZCdpbmFjdGl2aXRhdCIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6MjAKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjE5CiBtc2dpZCAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA8Y29tbWl0Pi4uLiIKIG1zZ3N0ciAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA8Y29taXNzacOzPi4uLiIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NzYKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjY4CiBtc2dpZCAicHJpbnQgY29tbWl0IGNvbnRlbnRzIgogbXNnc3RyICJpbXByaW1laXggZWxzIGNvbnRpbmd1dHMgZGUgbGEgY29taXNzacOzIgogCi0jOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo3NyBidWlsdGluL3ZlcmlmeS10YWcuYzozOAorIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NjkgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzcKIG1zZ2lkICJwcmludCByYXcgZ3BnIHN0YXR1cyBvdXRwdXQiCiBtc2dzdHIgImltcHJpbWVpeCBsYSBzb3J0aWRhIGNydWEgZGUgbCdlc3RhdCBncGciCiAKQEAgLTE4MjI1LDExICsyMTM1MCwxMSBAQAogbXNnaWQgInNob3cgc3RhdGlzdGljcyBvbmx5IgogbXNnc3RyICJtb3N0cmEgbm9tw6lzIGVzdGFkw61zdGlxdWVzIgogCi0jOiBidWlsdGluL3ZlcmlmeS10YWcuYzoxOQorIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MTgKIG1zZ2lkICJnaXQgdmVyaWZ5LXRhZyBbLXYgfCAtLXZlcmJvc2VdIFstLWZvcm1hdD08Zm9ybWF0Pl0gPHRhZz4uLi4iCiBtc2dzdHIgImdpdCB2ZXJpZnktdGFnIFstdiB8IC0tdmVyYm9zZV0gWy0tZm9ybWF0PTxmb3JtYXQ+XSA8ZXRpcXVldGE+Li4uIgogCi0jOiBidWlsdGluL3ZlcmlmeS10YWcuYzozNworIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzYKIG1zZ2lkICJwcmludCB0YWcgY29udGVudHMiCiBtc2dzdHIgImltcHJpbWVpeCBlbHMgY29udGluZ3V0cyBkZSBsJ2V0aXF1ZXRhIgogCkBAIC0xODI2MSwxMCArMjEzODYsMTAgQEAKIG1zZ2lkICJnaXQgd29ya3RyZWUgdW5sb2NrIDxwYXRoPiIKIG1zZ3N0ciAiZ2l0IHdvcmt0cmVlIHVubG9jayA8Y2Ftw60+IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjAgYnVpbHRpbi93b3JrdHJlZS5jOjg3MQotIywgZnV6enksIGMtZm9ybWF0CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjAgYnVpbHRpbi93b3JrdHJlZS5jOjg5OAorIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlICclcyciCi1tc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXhlY3V0YXIgwqslc8K7IgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHN1cHJpbWlyIMKrJXPCuyIKIAogIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5CiAjLCBjLWZvcm1hdApAQCAtMTgzMTYsOSArMjE0NDEsOSBAQAogbXNnc3RyICLCqyVzwrsgamEgZXhpc3RlaXgiCiAKICM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTEKLSMsIGZ1enp5LCBjLWZvcm1hdAorIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmUtYWRkIHdvcmt0cmVlICclcyciCi1tc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIGwnYXJicmUgKCVzKSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCB0b3JuYXIgYSBhZmVnaXIgYSBsJ2FyYnJlIGRlIHRyZWJhbGwgwqslc8K7IgogCiAjOiBidWlsdGluL3dvcmt0cmVlLmM6MjU2CiAjLCBjLWZvcm1hdApAQCAtMTgzMzQsMjAyICsyMTQ1OSwyMTUgQEAKICJ1c2UgJ2FkZCAtZicgdG8gb3ZlcnJpZGUsIG9yICdwcnVuZScgb3IgJ3JlbW92ZScgdG8gY2xlYXIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjMwOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjMwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBvZiAnJXMnIgogbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGRpcmVjdG9yaSBkZSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MjggYnVpbHRpbi93b3JrdHJlZS5jOjQzNAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzOSBidWlsdGluL3dvcmt0cmVlLmM6NDQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAobmV3IGJyYW5jaCAnJXMnKSIKIG1zZ3N0ciAiUydlc3TDoCBwcmVwYXJhbnQgbCdhcmJyZSBkZSB0cmViYWxsIChicmFuY2Egbm92YSDCqyVzwrspIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDMwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAocmVzZXR0aW5nIGJyYW5jaCAnJXMnOyB3YXMgYXQgJXMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MzkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChjaGVja2luZyBvdXQgJyVzJykiCiBtc2dzdHIgIlMnZXN0w6AgcHJlcGFyYW50IGwnYXJicmUgZGUgdHJlYmFsbCAocydlc3TDoCBhZ2FmYW50IMKrJXPCuykiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDUKLSMsICBjLWZvcm1hdAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ1NgorIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKGRldGFjaGVkIEhFQUQgJXMpIgogbXNnc3RyICJTJ2VzdMOgIHByZXBhcmFudCBsJ2FyYnJlIGRlIHRyZWJhbGwgKEhFQUQgJXMgc2VwYXJhdCkiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0ODYKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTcKIG1zZ2lkICJjaGVja291dCA8YnJhbmNoPiBldmVuIGlmIGFscmVhZHkgY2hlY2tlZCBvdXQgaW4gb3RoZXIgd29ya3RyZWUiCiBtc2dzdHIgImFnYWZhIDxicmFuY2E+IGVuY2FyYSBxdWUgc2lndWkgYWdhZmFkYSBlbiBhbHRyZSBhcmJyZSBkZSB0cmViYWxsIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDg5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTAwCiBtc2dpZCAiY3JlYXRlIGEgbmV3IGJyYW5jaCIKIG1zZ3N0ciAiY3JlYSB1bmEgYnJhbmNhIG5vdmEiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDIKIG1zZ2lkICJjcmVhdGUgb3IgcmVzZXQgYSBicmFuY2giCiBtc2dzdHIgImNyZWEgbyByZXN0YWJsZWl4IHVuYSBicmFuY2EiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDQKIG1zZ2lkICJwb3B1bGF0ZSB0aGUgbmV3IHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiZW1wbGVuYSBsJ2FyYnJlIGRlIHRyZWJhbGwgbm91IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDk0CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTA1CiBtc2dpZCAia2VlcCB0aGUgbmV3IHdvcmtpbmcgdHJlZSBsb2NrZWQiCiBtc2dzdHIgIm1hbnTDqW4gbCdhcmJyZSBkZSB0cmViYWxsIG5vdSBibG9xdWVqYXQiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTcKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDgKIG1zZ2lkICJzZXQgdXAgdHJhY2tpbmcgbW9kZSAoc2VlIGdpdC1icmFuY2goMSkpIgogbXNnc3RyICJjb25maWd1cmEgZWwgbW9kZSBkZSBzZWd1aW1lbnQgKHZlZ2V1IGdpdC1icmFuY2goMSkpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NTAwCi0jLCBmdXp6eQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjUxMQogbXNnaWQgInRyeSB0byBtYXRjaCB0aGUgbmV3IGJyYW5jaCBuYW1lIHdpdGggYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgotbXNnc3RyICJsYSBicmFuY2EgZm9udCDCqyVzwrsgbm8gcydlbW1hZ2F0emVtYSBjb20gYSBicmFuY2EgYW1iIHNlZ3VpbWVudCByZW1vdCIKK21zZ3N0ciAiIgorInByb3ZhIGRlIGZlciBjb2luY2lkaXIgZWwgbm9tIGRlIGxhIGJyYW5jYSBub3ZhIGFtYiB1bmEgYnJhbmNhIGFtYiBzZWd1aW1lbnQgIgorInJlbW90IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NTA4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTE5CiBtc2dpZCAiLWIsIC1CLCBhbmQgLS1kZXRhY2ggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLWIsIC1CIGkgLS1kZXRhY2ggc8OzbiBtw7p0dWFtZW50IGV4Y2xvZW50cyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjU2OQotIywgZnV6enkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1ODAKIG1zZ2lkICItLVtuby1ddHJhY2sgY2FuIG9ubHkgYmUgdXNlZCBpZiBhIG5ldyBicmFuY2ggaXMgY3JlYXRlZCIKLW1zZ3N0ciAiLS1sb2NhbCBub23DqXMgZXMgcG90IHVzYXIgZGlucyBkJ3VuIGRpcMOyc2l0IGdpdCIKK21zZ3N0ciAiLS1bbm8tXXRyYWNrIG5vbcOpcyBlcyBwb3QgdXNhciBzaSBlcyBjcmVhIHVuYSBicmFuY2Egbm92YSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY2OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4MAogbXNnaWQgInJlYXNvbiBmb3IgbG9ja2luZyIKIG1zZ3N0ciAicmHDsyBwZXIgYmxvcXVlamFyIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjgxIGJ1aWx0aW4vd29ya3RyZWUuYzo3MTQgYnVpbHRpbi93b3JrdHJlZS5jOjc3MgotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg5OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5MiBidWlsdGluL3dvcmt0cmVlLmM6NzI1IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIsKrJXPCuyBubyDDqXMgdW4gYXJicmUgZGUgdHJlYmFsbCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4MyBidWlsdGluL3dvcmt0cmVlLmM6NzE2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njk0IGJ1aWx0aW4vd29ya3RyZWUuYzo3MjcKIG1zZ2lkICJUaGUgbWFpbiB3b3JraW5nIHRyZWUgY2Fubm90IGJlIGxvY2tlZCBvciB1bmxvY2tlZCIKIG1zZ3N0ciAiTm8gZXMgcG90IGJsb3F1ZWphciBuaSBkZXNibG9xdWVqYXIgbCdhcmJyZSBkZSB0cmViYWxsIHByaW5jaXBhbCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5OQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFscmVhZHkgbG9ja2VkLCByZWFzb246ICVzIgogbXNnc3RyICLCqyVzwrsgamEgZXN0w6AgYmxvcXVlamF0LCByYcOzOiDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2OTAKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbHJlYWR5IGxvY2tlZCIKIG1zZ3N0ciAiwqslc8K7IGphIGVzdMOgIGJsb3F1ZWphdCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjcxOAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjcyOQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBsb2NrZWQiCiBtc2dzdHIgIsKrJXPCuyBubyBlc3TDoCBibG9xdWVqYXQiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NDMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NzAKIG1zZ2lkICJ3b3JraW5nIHRyZWVzIGNvbnRhaW5pbmcgc3VibW9kdWxlcyBjYW5ub3QgYmUgbW92ZWQgb3IgcmVtb3ZlZCIKLW1zZ3N0ciAiIgorbXNnc3RyICJlbHMgYXJicmVzIGRlIHRyZWJhbGwgcXVlIGNvbnRlbmVuIHN1Ym3DsmR1bHMgbm8gZXMgcG9kZW4gbW91cmUgbyBzdXByaW1pciIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc1MQotIywgZnV6enkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NzgKIG1zZ2lkICJmb3JjZSBtb3ZlIGV2ZW4gaWYgd29ya3RyZWUgaXMgZGlydHkgb3IgbG9ja2VkIgotbXNnc3RyICJmb3LDp2EgZWwgbW92aW1lbnQgLyBjYW52aSBkZSBub20gZW5jYXJhIHF1ZSBlbCBkZXN0w60gZXhpc3RlaXhpIgorbXNnc3RyICJmb3LDp2EgZWwgbW92aW1lbnQgZW5jYXJhIHF1ZSBsJ2FyYnJlIGRlIHRyZWJhbGwgZXN0aWd1aSBicnV0IG8gYmxvcXVlamF0IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzc0IGJ1aWx0aW4vd29ya3RyZWUuYzo5MDEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDEgYnVpbHRpbi93b3JrdHJlZS5jOjkyOAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGEgbWFpbiB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIsKrJXPCuyDDqXMgdW4gYXJicmUgZGUgdHJlYmFsbCBwcmluY2lwYWwiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NzkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGZpZ3VyZSBvdXQgZGVzdGluYXRpb24gbmFtZSBmcm9tICclcyciCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZGVkdWlyIGVsIG5vbSBkZSBkZXN0w60gZGVzIGRlIMKrJXPCuyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc4NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJ0YXJnZXQgJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAiZWwgZGVzdMOtIMKrJXPCuyBqYSBleGlzdGVpeCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5MworIzogYnVpbHRpbi93b3JrdHJlZS5jOjgyMAogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiIgogImNhbm5vdCBtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZSwgbG9jayByZWFzb246ICVzXG4iCiAidXNlICdtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCiBtc2dzdHIgIk5vIGVzIHBvZGVuIGVsaW1pbmFyIGVscyBjYW52aXMgZGUgbCdhcmJyZSBkZSB0cmViYWxsIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzk1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODIyCiAjLCBmdXp6eQogbXNnaWQgIiIKICJjYW5ub3QgbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWU7XG4iCiAidXNlICdtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCiBtc2dzdHIgIk5vIGVzIHBvZGVuIGVsaW1pbmFyIGVscyBjYW52aXMgZGUgbCdhcmJyZSBkZSB0cmViYWxsIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzk4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODI1CiAjLCBjLWZvcm1hdAogbXNnaWQgInZhbGlkYXRpb24gZmFpbGVkLCBjYW5ub3QgbW92ZSB3b3JraW5nIHRyZWU6ICVzIgogbXNnc3RyICJsYSB2YWxpZGFjacOzIGhhIGZhbGxhdCwgbm8gZXMgcG90IG1vdXJlIGwnYXJicmUgZGUgdHJlYmFsbDogJXMiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG1vdmUgJyVzJyB0byAnJXMnIgogbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIG1vdXJlIMKrJXPCuyBhIMKrJXPCuyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg1MQotIywgZnV6enksIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIHJ1biAnZ2l0IHN0YXR1cycgb24gJyVzJyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBlc2NyaXVyZSBhIMKrJXPCuyIKLQotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg1NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg3OAogIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGlzIGRpcnR5LCB1c2UgLS1mb3JjZSB0byBkZWxldGUgaXQiCittc2dpZCAiZmFpbGVkIHRvIHJ1biAnZ2l0IHN0YXR1cycgb24gJyVzJyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBleGVjdXRhciDCq2dpdCBzdGF0dXPCuyBhIMKrJXPCuyIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjg4MgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIG1vZGlmaWVkIG9yIHVudHJhY2tlZCBmaWxlcywgdXNlIC0tZm9yY2UgdG8gZGVsZXRlIGl0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NjAKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg4NworIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcnVuICdnaXQgc3RhdHVzJyBvbiAnJXMnLCBjb2RlICVkIgotbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGV4ZWN1dGFyICdnaXQgc3RhdHVzJyBhbCBzdWJtw7JkdWwgwqslc8K7IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGV4ZWN1dGFyIMKrZ2l0IHN0YXR1c8K7IGEgwqslc8K7LCBjb2RpICVkIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODgzCi0jLCBmdXp6eQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkxMAogbXNnaWQgImZvcmNlIHJlbW92YWwgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCi1tc2dzdHIgImZvcsOnYSBlbCBtb3ZpbWVudCAvIGNhbnZpIGRlIG5vbSBlbmNhcmEgcXVlIGVsIGRlc3TDrSBleGlzdGVpeGkiCittc2dzdHIgImZvcsOnYSBsYSBzdXByZXNzacOzIGVuY2FyYSBxdWUgbCdhcmJyZSBkZSB0cmViYWxsIGVzdGlndWkgYnJ1dCBvIGJsb3F1ZWphdCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwNgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkzMwogIywgZnV6enksIGMtZm9ybWF0CiBtc2dpZCAiIgogImNhbm5vdCByZW1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlLCBsb2NrIHJlYXNvbjogJXNcbiIKICJ1c2UgJ3JlbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgogbXNnc3RyICJObyBlcyBwb2RlbiBlbGltaW5hciBlbHMgY2FudmlzIGRlIGwnYXJicmUgZGUgdHJlYmFsbCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwOAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkzNQogIywgZnV6enkKIG1zZ2lkICIiCiAiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWU7XG4iCiAidXNlICdyZW1vdmUgLWYgLWYnIHRvIG92ZXJyaWRlIG9yIHVubG9jayBmaXJzdCIKIG1zZ3N0ciAiTm8gZXMgcG9kZW4gZWxpbWluYXIgZWxzIGNhbnZpcyBkZSBsJ2FyYnJlIGRlIHRyZWJhbGwiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAidmFsaWRhdGlvbiBmYWlsZWQsIGNhbm5vdCByZW1vdmUgd29ya2luZyB0cmVlOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzoxNAorIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MTUKIG1zZ2lkICJnaXQgd3JpdGUtdHJlZSBbLS1taXNzaW5nLW9rXSBbLS1wcmVmaXg9PHByZWZpeD4vXSIKIG1zZ3N0ciAiZ2l0IHdyaXRlLXRyZWUgWy0tbWlzc2luZy1va10gWy0tcHJlZml4PTxwcmVmaXg+L10iCiAKLSM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI3CisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyOAogbXNnaWQgIjxwcmVmaXg+LyIKIG1zZ3N0ciAiPHByZWZpeD4vIgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyOAorIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjkKIG1zZ2lkICJ3cml0ZSB0cmVlIG9iamVjdCBmb3IgYSBzdWJkaXJlY3RvcnkgPHByZWZpeD4iCiBtc2dzdHIgImVzY3JpdSBsJ29iamVjdGUgZCdhcmJyZSBwZXIgYSB1biBzdWJkaXJlY3RvcmkgPHByZWZpeD4iCiAKLSM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjMwCisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzozMQogbXNnaWQgIm9ubHkgdXNlZnVsIGZvciBkZWJ1Z2dpbmciCiBtc2dzdHIgIm5vbcOpcyDDunRpbCBwZXIgYSBsYSBkZXB1cmFjacOzIgogCi0jOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyMjIKKyM6IGZhc3QtaW1wb3J0LmM6MzEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFeHBlY3RlZCAnbWFyaycgY29tbWFuZCwgZ290ICVzIgorbXNnc3RyICJTJ2VzcGVyYXZhIGwnb3JkcmUgwqttYXJrwrssIHMnaGEgcmVidXQgJXMiCisKKyM6IGZhc3QtaW1wb3J0LmM6MzEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJFeHBlY3RlZCAndG8nIGNvbW1hbmQsIGdvdCAlcyIKK21zZ3N0ciAiUydlc3BlcmF2YSBsJ29yZHJlIMKrdG/CuywgcydoYSByZWJ1dCDCqyVzwrsiCisKKyM6IGZhc3QtaW1wb3J0LmM6MzI1NAorIywgYy1mb3JtYXQKK21zZ2lkICJmZWF0dXJlICclcycgZm9yYmlkZGVuIGluIGlucHV0IHdpdGhvdXQgLS1hbGxvdy11bnNhZmUtZmVhdHVyZXMiCittc2dzdHIgIiIKKworIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgcGVybWlzc2lvbnMgb24geW91ciBzb2NrZXQgZGlyZWN0b3J5IGFyZSB0b28gbG9vc2U7IG90aGVyXG4iCkBAIC0xODU0MywxOSArMjE2ODEsMjYgQEAKICJcbiIKICJcdGNobW9kIDA3MDAgJXMiCiAKLSM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjI3MQorIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjcyCiBtc2dpZCAicHJpbnQgZGVidWdnaW5nIG1lc3NhZ2VzIHRvIHN0ZGVyciIKIG1zZ3N0ciAiaW1wcmltZWl4IGVscyBtaXNzYXRnZXMgZGUgZGVwdXJhY2nDsyBhIHN0ZGVyciIKIAogIzogdC9oZWxwZXIvdGVzdC1yZWFjaC5jOjE1MgotIywgZnV6enksIGMtZm9ybWF0CisjLCBjLWZvcm1hdAogbXNnaWQgImNvbW1pdCAlcyBpcyBub3QgbWFya2VkIHJlYWNoYWJsZSIKLW1zZ3N0ciAibGEgY29taXNzacOzICVzIG5vIHTDqSBwYXJlICVkIgorbXNnc3RyICJsYSBjb21pc3Npw7MgJXMgbm8gZXN0w6AgbWFyY2FkYSBjb20gYWJhc3RhYmxlIgogCiAjOiB0L2hlbHBlci90ZXN0LXJlYWNoLmM6MTYyCi0jLCBmdXp6eQogbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgbWFya2VkIHJlYWNoYWJsZSIKLW1zZ3N0ciAibWFzc2VzIGNvbWlzc2lvbnMgcGVyIGVzY3JpdXJlIHVuIGdyYWYiCittc2dzdHIgIm1hc3NlcyBjb21pc3Npb24gbWFyY2FkZXMgY29tIGFiYXN0YWJsZSIKKworIzogdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjcKK21zZ2lkICJ0ZXN0LXRvb2wgc2VydmUtdjIgWzxvcHRpb25zPl0iCittc2dzdHIgInRlc3QtdG9vbCBzZXJ2ZS12MiBbPG9wY2lvbnM+XSIKKworIzogdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjE5Cittc2dpZCAiZXhpdCBpbW1lZGlhdGVseSBhZnRlciBhZHZlcnRpc2luZyBjYXBhYmlsaXRpZXMiCittc2dzdHIgInN1cnQgaW1tZWRpYXRhbWVudCBkZXNwcsOpcyBkJ2FudW5jaWFyIGxlcyBmdW5jaW9uYWxpdGF0cyIKIAogIzogZ2l0LmM6MjcKIG1zZ2lkICIiCkBAIC0xODU3MSwxMDEgKzIxNzE2LDE1MSBAQAogbXNnaWQgIiIKICInZ2l0IGhlbHAgLWEnIGFuZCAnZ2l0IGhlbHAgLWcnIGxpc3QgYXZhaWxhYmxlIHN1YmNvbW1hbmRzIGFuZCBzb21lXG4iCiAiY29uY2VwdCBndWlkZXMuIFNlZSAnZ2l0IGhlbHAgPGNvbW1hbmQ+JyBvciAnZ2l0IGhlbHAgPGNvbmNlcHQ+J1xuIgotInRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIG9yIGNvbmNlcHQuIgorInRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIG9yIGNvbmNlcHQuXG4iCisiU2VlICdnaXQgaGVscCBnaXQnIGZvciBhbiBvdmVydmlldyBvZiB0aGUgc3lzdGVtLiIKIG1zZ3N0ciAiIgotIidnaXQgaGVscCAtYScgaSAnZ2l0IGhlbHAgLWcnIGxsaXN0ZW4gc3Vib3JkcmVzIGRpc3BvbmlibGVzIGlcbiIKLSJhbGd1bmVzIGd1aWVzIGRlIGNvbmNlcHRlLiBWZWdldSAnZ2l0IGhlbHAgPG9yZHJlPicgb1xuIgotIidnaXQgaGVscCA8Y29uY2VwdGU+JyBwZXIgYSBsbGVnaXIgc29icmUgdW5hIHN1Ym9yZHJlIG8gY29uY2VwdGUgZXNwZWPDrWZpYy4iCisiwqtnaXQgaGVscCAtYcK7IGkgwqtnaXQgaGVscCAtZ8K7IGxsaXN0ZW4gc3Vib3JkcmVzIGRpc3BvbmlibGVzIGlcbiIKKyJhbGd1bmVzIGd1aWVzIGRlIGNvbmNlcHRlLiBWZWdldSDCq2dpdCBoZWxwIDxvcmRyZT7CuyBvXG4iCisiwqtnaXQgaGVscCA8Y29uY2VwdGU+wrsgcGVyIGEgbGxlZ2lyIHNvYnJlIHVuIHN1Ym9yZHJlIG8gY29uY2VwdGUgZXNwZWPDrWZpYy5cbiIKKyJWZWdldSDCq2dpdCBoZWxwIGdpdMK7IHBlciBhIHVuYSB2aXNpw7MgZ2VuZXJhbCBkZWwgc2lzdGVtYS4iCiAKLSM6IGdpdC5jOjE3MworIzogZ2l0LmM6MTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLS1naXQtZGlyXG4iCiBtc2dzdHIgIm5vIHMnaGEgZXNwZWNpZmljYXQgdW4gZGlyZWN0b3JpIHBlciAtLWdpdC1kaXJcbiIKIAotIzogZ2l0LmM6MTg3CisjOiBnaXQuYzoyMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gbmFtZXNwYWNlIGdpdmVuIGZvciAtLW5hbWVzcGFjZVxuIgogbXNnc3RyICJubyBzJ2hhIGVzcGVjaWZpY2F0IHVuIG5vbSBkJ2VzcGFpIHBlciAtLW5hbWVzcGFjZVxuIgogCi0jOiBnaXQuYzoyMDEKKyM6IGdpdC5jOjIxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBkaXJlY3RvcnkgZ2l2ZW4gZm9yIC0td29yay10cmVlXG4iCiBtc2dzdHIgIm5vIHMnaGEgZXNwZWNpZmljYXQgdW4gZGlyZWN0b3JpIHBlciAtLXdvcmstdHJlZVxuIgogCi0jOiBnaXQuYzoyMTUKLSMsIGZ1enp5LCBjLWZvcm1hdAorIzogZ2l0LmM6MjI4CisjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHByZWZpeCBnaXZlbiBmb3IgLS1zdXBlci1wcmVmaXhcbiIKLW1zZ3N0ciAiJXMgbm8gYWRtZXQgLS1zdXBlci1wcmVmaXgiCittc2dzdHIgIm5vIHMnaGEgZXNwZWNpZmljYXQgY2FwIHByZWZpeCBwZXIgYSAtLXN1cGVyLXByZWZpeFxuIgogCi0jOiBnaXQuYzoyMzcKKyM6IGdpdC5jOjI1MAogIywgYy1mb3JtYXQKIG1zZ2lkICItYyBleHBlY3RzIGEgY29uZmlndXJhdGlvbiBzdHJpbmdcbiIKIG1zZ3N0ciAiLWMgZXNwZXJhIHVuYSBjYWRlbmEgZGUgY29uZmlndXJhY2nDs1xuIgogCi0jOiBnaXQuYzoyNzUKKyM6IGdpdC5jOjI4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBkaXJlY3RvcnkgZ2l2ZW4gZm9yIC1DXG4iCiBtc2dzdHIgIm5vIHMnaGEgZXNwZWNpZmljYXQgdW4gZGlyZWN0b3JpIHBlciAtQ1xuIgogCi0jOiBnaXQuYzozMDAKKyM6IGdpdC5jOjMxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG9wdGlvbjogJXNcbiIKIG1zZ3N0ciAib3BjacOzIGRlc2NvbmVndWRhOiAlc1xuIgogCi0jOiBnaXQuYzo3MTkKKyM6IGdpdC5jOjM2MAorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSBleHBhbmRpbmcgYWxpYXMgJyVzJzogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzozNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsaWFzICclcycgY2hhbmdlcyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4iCisiWW91IGNhbiB1c2UgJyFnaXQnIGluIHRoZSBhbGlhcyB0byBkbyB0aGlzIgorbXNnc3RyICIiCisKKyM6IGdpdC5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBhbGlhcyBmb3IgJXMiCittc2dzdHIgIiIKKworIzogZ2l0LmM6Mzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlY3Vyc2l2ZSBhbGlhczogJXMiCittc2dzdHIgIsOgbGllcyByZWN1cnNpdTogJXMiCisKKyM6IGdpdC5jOjQ1OQorbXNnaWQgIndyaXRlIGZhaWx1cmUgb24gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICJmYWxsYWRhIGQnZXNjcmlwdHVyYSBlbiBsYSBzb3J0aWRhIGVzdMOgbmRhcmQiCisKKyM6IGdpdC5jOjQ2MQorbXNnaWQgInVua25vd24gd3JpdGUgZmFpbHVyZSBvbiBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgImZhbGxhZGEgZCdlc2NyaXB0dXJhIGRlc2NvbmVndWRhIGVuIGxhIHNvcnRpZGEgZXN0w6BuZGFyZCIKKworIzogZ2l0LmM6NDYzCittc2dpZCAiY2xvc2UgZmFpbGVkIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiaGEgZmFsbGF0IGVsIHRhbmNhbWVudCBlbiBsYSBzb3J0aWRhIGVzdMOgbmRhcmQiCisKKyM6IGdpdC5jOjc5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhbGlhcyBsb29wIGRldGVjdGVkOiBleHBhbnNpb24gb2YgJyVzJyBkb2VzIG5vdCB0ZXJtaW5hdGU6JXMiCiBtc2dzdHIgIiIKIAotIzogZ2l0LmM6ODAyCisjOiBnaXQuYzo4NDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBoYW5kbGUgJXMgYXMgYSBidWlsdGluIgorbXNnc3RyICJubyBlcyBwb3QgdXNhciAgJXMgY29tIGEgZml0eGVyIGQnZXhjbHVzacOzIgorCisjOiBnaXQuYzo4NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVzYWdlOiAlc1xuIgorIlxuIgorbXNnc3RyICIiCisiw7pzOiAlc1xuIgorIlxuIgorCisjOiBnaXQuYzo4NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwYW5zaW9uIG9mIGFsaWFzICclcycgZmFpbGVkOyAnJXMnIGlzIG5vdCBhIGdpdCBjb21tYW5kXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LmM6ODE0Ci0jLCBmdXp6eSwgYy1mb3JtYXQKKyM6IGdpdC5jOjg4OAorIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcnVuIGNvbW1hbmQgJyVzJzogJXNcbiIKLW1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBvYnJpciDCqyVzwrs6ICVzIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGV4ZWN1dGFyIGwnb3JkcmUgwqslc8K7OiAlc1xuIgogCi0jOiBodHRwLmM6Mzc0CisjOiBodHRwLmM6Mzc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5lZ2F0aXZlIHZhbHVlIGZvciBodHRwLnBvc3RidWZmZXI7IGRlZmF1bHRpbmcgdG8gJWQiCiBtc2dzdHIgInZhbG9yIG5lZ2F0aXUgcGVyIGh0dHAucG9zdGJ1ZmZlcjsgdXRpbGl0emFudCBlbCB2YWxvciAlZCIKIAotIzogaHR0cC5jOjM5NQorIzogaHR0cC5jOjM5OQogbXNnaWQgIkRlbGVnYXRpb24gY29udHJvbCBpcyBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuMjIuMCIKIG1zZ3N0ciAiTm8gcydhZG1ldCBlbCBjb250cm9sIGRlIGRlbGVnYWNpw7MgYW1iIGVsIGNVUkwgPCA3LjIyLjAiCiAKLSM6IGh0dHAuYzo0MDQKKyM6IGh0dHAuYzo0MDgKIG1zZ2lkICJQdWJsaWMga2V5IHBpbm5pbmcgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjQ0LjAiCiBtc2dzdHIgIk5vIHMnYWRtZXQgbCdlbmdhbnggZGUgY2xhdSBww7pibGljYSBhbWIgY1VSTCA8IDcuNDQuMCIKIAotIzogaHR0cC5jOjgzNworIzogaHR0cC5jOjg3NgogIywgZnV6enkKLW1zZ2lkICJDVVJMU1NMT1BUX05PX1JFVk9LRSBub3Qgc3Vwb3J0ZWQgd2l0aCBjVVJMIDwgNy40NC4wIgorbXNnaWQgIkNVUkxTU0xPUFRfTk9fUkVWT0tFIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy40NC4wIgogbXNnc3RyICJObyBzJ2FkbWV0IGwnZW5nYW54IGRlIGNsYXUgcMO6YmxpY2EgYW1iIGNVUkwgPCA3LjQ0LjAiCiAKLSM6IGh0dHAuYzo5MTAKKyM6IGh0dHAuYzo5NDkKICMsIGZ1enp5CiBtc2dpZCAiUHJvdG9jb2wgcmVzdHJpY3Rpb25zIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy4xOS40IgogbXNnc3RyICJObyBzJ2FkbWV0IGwnZW5nYW54IGRlIGNsYXUgcMO6YmxpY2EgYW1iIGNVUkwgPCA3LjQ0LjAiCiAKLSM6IGh0dHAuYzoxMDQ2CisjOiBodHRwLmM6MTA4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJVbnN1cHBvcnRlZCBTU0wgYmFja2VuZCAnJXMnLiBTdXBwb3J0ZWQgU1NMIGJhY2tlbmRzOiIKIG1zZ3N0ciAiIgogCi0jOiBodHRwLmM6MTA1MworIzogaHR0cC5jOjEwOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldCBTU0wgYmFja2VuZCB0byAnJXMnOiBjVVJMIHdhcyBidWlsdCB3aXRob3V0IFNTTCBiYWNrZW5kcyIKIG1zZ3N0ciAiIgogCi0jOiBodHRwLmM6MTA1NworIzogaHR0cC5jOjEwOTcKICMsIGZ1enp5LCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzZXQgU1NMIGJhY2tlbmQgdG8gJyVzJzogYWxyZWFkeSBzZXQiCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgdG9ybmFyIGEgJGhlYWRfbmFtZSIKIAotIzogaHR0cC5jOjE5MjEKKyM6IGh0dHAuYzoxOTY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ1bmFibGUgdG8gdXBkYXRlIHVybCBiYXNlIGZyb20gcmVkaXJlY3Rpb246XG4iCkBAIC0xODY3Niw0MCArMjE4NzEsMTg1IEBACiAiICBwZXRpY2nDszogJXNcbiIKICIgICByZWRpcmVjY2nDszogJXMiCiAKLSM6IHJlbW90ZS1jdXJsLmM6NDAxCisjOiByZW1vdGUtY3VybC5jOjE2NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBxdW90aW5nIGluIHB1c2gtb3B0aW9uIHZhbHVlOiAnJXMnIgorbXNnc3RyICJ2YWxvciBwYXJjaWFsIG5vIHbDoGxpZDogwqslc8K7IgorCisjOiByZW1vdGUtY3VybC5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXNpbmZvL3JlZnMgbm90IHZhbGlkOiBpcyB0aGlzIGEgZ2l0IHJlcG9zaXRvcnk/IgorbXNnc3RyICLCqyVzwrsgbm8gcmVjb25lZ3V0IGNvbSB1biBkaXDDsnNpdCBnaXQiCisKKyM6IHJlbW90ZS1jdXJsLmM6MzY0CisjLCBmdXp6eQorbXNnaWQgImludmFsaWQgc2VydmVyIHJlc3BvbnNlOyBleHBlY3RlZCBzZXJ2aWNlLCBnb3QgZmx1c2ggcGFja2V0IgorbXNnc3RyICJnaXQgYXJjaGl2ZTogcydlc3BlcmF2YSBBQ0svTkFLLCBzJ2hhIHJlYnV0IHVuIHBhcXVldCBkZSBuZXRlamEiCisKKyM6IHJlbW90ZS1jdXJsLmM6Mzk1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZ290ICclcyciCittc2dzdHIgInJlZmVyw6huY2lhIG5vIHbDoGxpZGE6ICVzIgorCisjOiByZW1vdGUtY3VybC5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZXBvc2l0b3J5ICclcycgbm90IGZvdW5kIgorbXNnc3RyICJubyBzJ2hhIHRyb2JhdCBlbCBkaXDDsnNpdCDCqyVzwrsiCisKKyM6IHJlbW90ZS1jdXJsLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW9uIGZhaWxlZCBmb3IgJyVzJyIKK21zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBhdXRlbnRpY2FyIHBlciDCqyVzwrsiCisKKyM6IHJlbW90ZS1jdXJsLmM6NDYzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgJyVzJzogJXMiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgYWNjZWRpciBhIMKrJXPCuzogJXMiCisKKyM6IHJlbW90ZS1jdXJsLmM6NDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZGlyZWN0aW5nIHRvICVzIgogbXNnc3RyICJzJ2VzdMOgIHJlZGlyaWdpbnQgYSAlcyIKIAotIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6NjAKKyM6IHJlbW90ZS1jdXJsLmM6NTkzCittc2dpZCAic2hvdWxkbid0IGhhdmUgRU9GIHdoZW4gbm90IGdlbnRsZSBvbiBFT0YiCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzo2NzMKK21zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIHJwYyBwb3N0IGRhdGEgLSB0cnkgaW5jcmVhc2luZyBodHRwLnBvc3RCdWZmZXIiCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzo3MzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlJQQyBmYWlsZWQ7ICVzIgorbXNnc3RyICJTVEFSVFRMUyBoYSBmYWxsYXQhICVzIgorCisjOiByZW1vdGUtY3VybC5jOjc3MworIywgZnV6enkKK21zZ2lkICJjYW5ub3QgaGFuZGxlIHB1c2hlcyB0aGlzIGJpZyIKK21zZ3N0ciAibm8gZXMgcG90IHVzYXIgICVzIGNvbSBhIGZpdHhlciBkJ2V4Y2x1c2nDsyIKKworIzogcmVtb3RlLWN1cmwuYzo4ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRlZmxhdGUgcmVxdWVzdDsgemxpYiBkZWZsYXRlIGVycm9yICVkIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6ODkyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkZWZsYXRlIHJlcXVlc3Q7IHpsaWIgZW5kIGVycm9yICVkIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTAyMworIywgZnV6enkKK21zZ2lkICJkdW1iIGh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjYXBhYmlsaXRpZXMiCittc2dzdHIgIkVsIHNlcnZpZG9yIG5vIHBlcm1ldCBjbGllbnRzIHN1cGVyZmljaWFscyIKKworIzogcmVtb3RlLWN1cmwuYzoxMDM3CisjLCBmdXp6eQorbXNnaWQgImZldGNoIGZhaWxlZC4iCittc2dzdHIgImwnwqtzdGFzaMK7IGhhIGZhbGxhdCIKKworIzogcmVtb3RlLWN1cmwuYzoxMDg1Cittc2dpZCAiY2Fubm90IGZldGNoIGJ5IHNoYTEgb3ZlciBzbWFydCBodHRwIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTEyOSByZW1vdGUtY3VybC5jOjExMzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInByb3RvY29sIGVycm9yOiBleHBlY3RlZCBzaGEvcmVmLCBnb3QgJyVzJyIKK21zZ3N0ciAiIgorInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZGUgcHJvdG9jb2w6IHMnZXNwZXJhdmEgc2hhbGxvdyBzaGEtMSwgcydoYSByZWJ1dCDCqyVzwrsiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTE0NyByZW1vdGUtY3VybC5jOjEyNjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgJXMiCittc2dzdHIgImxhIHZhcmlhbnQgwqtzaW1wbGXCuyBkJ3NzaCBubyDDqXMgY29tcGF0aWJsZSBhbWIgLTQiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTE4MworIywgZnV6enkKK21zZ2lkICJnaXQtaHR0cC1wdXNoIGZhaWxlZCIKK21zZ3N0ciAibCfCq3N0YXNowrsgaGEgZmFsbGF0IgorCisjOiByZW1vdGUtY3VybC5jOjEzNjcKK21zZ2lkICJyZW1vdGUtY3VybDogdXNhZ2U6IGdpdCByZW1vdGUtY3VybCA8cmVtb3RlPiBbPHVybD5dIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTM5OQorbXNnaWQgInJlbW90ZS1jdXJsOiBlcnJvciByZWFkaW5nIGNvbW1hbmQgc3RyZWFtIGZyb20gZ2l0IgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQwNgorbXNnaWQgInJlbW90ZS1jdXJsOiBmZXRjaCBhdHRlbXB0ZWQgd2l0aG91dCBhIGxvY2FsIHJlcG8iCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzoxNDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW90ZS1jdXJsOiB1bmtub3duIGNvbW1hbmQgJyVzJyBmcm9tIGdpdCIKK21zZ3N0ciAiIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo4NQogbXNnaWQgImFyZ3MiCiBtc2dzdHIgImFyZ3MiCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjYxCi0jLCBmdXp6eQorIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6ODYKIG1zZ2lkICJvYmplY3QgZmlsdGVyaW5nIgotbXNnc3RyICJ0aXB1cyBkJ29iamVjdGUiCittc2dzdHIgImZpbHRyYXRnZSBkJ29iamVjdGUiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNTQKKyM6IHBhcnNlLW9wdGlvbnMuaDoxODMKIG1zZ2lkICJleHBpcnktZGF0ZSIKIG1zZ3N0ciAiZGF0YS1kZS1jYWR1Y2l0YXQiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNjkKKyM6IHBhcnNlLW9wdGlvbnMuaDoxOTcKIG1zZ2lkICJuby1vcCAoYmFja3dhcmQgY29tcGF0aWJpbGl0eSkiCiBtc2dzdHIgIm9wZXJhY2nDsyBudWzCt2xhIChwZXIgYSBjb21wYXRpYmlsaXRhdCBhbWIgdmVyc2lvbnMgYW50ZXJpb3JzKSIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjI2MQorIzogcGFyc2Utb3B0aW9ucy5oOjMwOQogbXNnaWQgImJlIG1vcmUgdmVyYm9zZSIKIG1zZ3N0ciAic2lndWVzIG3DqXMgZGV0YWxsYXQiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoyNjMKKyM6IHBhcnNlLW9wdGlvbnMuaDozMTEKIG1zZ2lkICJiZSBtb3JlIHF1aWV0IgotbXNnc3RyICJzaWd1ZXMgbcOpcyBjYWxsYXQiCittc2dzdHIgInNpZ3VlcyBtw6lzIGRpc2NyZXQiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoyNjkKKyM6IHBhcnNlLW9wdGlvbnMuaDozMTcKIG1zZ2lkICJ1c2UgPG4+IGRpZ2l0cyB0byBkaXNwbGF5IFNIQS0xcyIKIG1zZ3N0ciAidXNhIDxuPiB4aWZyZXMgcGVyIHByZXNlbnRhciBlbHMgU0hBLTEiCiAKKyM6IHBhcnNlLW9wdGlvbnMuaDozMzYKK21zZ2lkICJob3cgdG8gc3RyaXAgc3BhY2VzIGFuZCAjY29tbWVudHMgZnJvbSBtZXNzYWdlIgorbXNnc3RyICJjb20gc3VwcmltaXIgZWxzIGVzcGFpcyBpICNjb21lbnRhcmlzIGRlbCBtaXNzYXRnZSIKKworIzogcGFyc2Utb3B0aW9ucy5oOjMzNworIywgZnV6enkKK21zZ2lkICJyZWFkIHBhdGhzcGVjIGZyb20gZmlsZSIKK21zZ3N0ciAibGxlZ2VpeCBlbHMgcGF0cm9ucyBkZXMgZCd1biBmaXR4ZXIiCisKKyM6IHBhcnNlLW9wdGlvbnMuaDozMzgKKyMsIGZ1enp5Cittc2dpZCAiIgorIndpdGggLS1wYXRoc3BlYy1mcm9tLWZpbGUsIHBhdGhzcGVjIGVsZW1lbnRzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgorbXNnc3RyICJlbHMgY2FtaW5zIHNlIHNlcGFyZW4gYW1iIGVsIGNhcsOgY3RlciBOVUwiCisKKyM6IHJlZi1maWx0ZXIuaDoxMDEKK21zZ2lkICJrZXkiCittc2dzdHIgImNsYXUiCisKKyM6IHJlZi1maWx0ZXIuaDoxMDEKK21zZ2lkICJmaWVsZCBuYW1lIHRvIHNvcnQgb24iCittc2dzdHIgIm5vbSBkZWwgY2FtcCBlbiBlbCBxdWFsIG9yZGVuYXIiCisKKyM6IHJlcmVyZS5oOjQ0Cittc2dpZCAidXBkYXRlIHRoZSBpbmRleCB3aXRoIHJldXNlZCBjb25mbGljdCByZXNvbHV0aW9uIGlmIHBvc3NpYmxlIgorbXNnc3RyICIiCisiYWN0dWFsaXR6YSBsJ8OtbmRleCBhbWIgbGEgcmVzb2x1Y2nDsyBkZSBjb25mbGljdGUgcmV1c2FkYSBzaSDDqXMgcG9zc2libGUiCisKKyM6IHd0LXN0YXR1cy5oOjY3Cittc2dpZCAiSEVBRCBkZXRhY2hlZCBhdCAiCittc2dzdHIgIkhFQUQgc2VwYXJhdCBhICIKKworIzogd3Qtc3RhdHVzLmg6NjgKK21zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgorbXNnc3RyICJIRUFEIHNlcGFyYXQgZGUgIgorCiAjOiBjb21tYW5kLWxpc3QuaDo1MAogbXNnaWQgIkFkZCBmaWxlIGNvbnRlbnRzIHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiQWZlZ2VpeCBlbHMgY29udGluZ3V0cyBkZWxzIGZpdHhlcnMgYSBsJ8OtbmRleCIKQEAgLTE4NzQwLDcgKzIyMDgwLDkgQEAKIAogIzogY29tbWFuZC1saXN0Lmg6NTcKIG1zZ2lkICJTaG93IHdoYXQgcmV2aXNpb24gYW5kIGF1dGhvciBsYXN0IG1vZGlmaWVkIGVhY2ggbGluZSBvZiBhIGZpbGUiCi1tc2dzdHIgIk1vc3RyYSBxdWluYSByZXZpc2nDsyBpIGF1dG9yIGhhIG1vZGlmaWNhdCBwZXIgw7psdGltIGNvcCBjYWRhIGzDrW5pYSBkJ3VuIGZpdHhlciIKK21zZ3N0ciAiIgorIk1vc3RyYSBxdWluYSByZXZpc2nDsyBpIGF1dG9yIGhhIG1vZGlmaWNhdCBwZXIgw7psdGltIGNvcCBjYWRhIGzDrW5pYSBkJ3VuICIKKyJmaXR4ZXIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjU4CiBtc2dpZCAiTGlzdCwgY3JlYXRlLCBvciBkZWxldGUgYnJhbmNoZXMiCkBAIC0xODc1MiwxNiArMjIwOTQsMTYgQEAKIAogIzogY29tbWFuZC1saXN0Lmg6NjAKIG1zZ2lkICJQcm92aWRlIGNvbnRlbnQgb3IgdHlwZSBhbmQgc2l6ZSBpbmZvcm1hdGlvbiBmb3IgcmVwb3NpdG9yeSBvYmplY3RzIgotbXNnc3RyICJQcm92ZWVpeCBjb250aW5ndXQgbyBpbmZvcm1hY2nDsyBkZWwgdGlwdXMgaSBtaWRhIHBlciBhbHMgb2JqZWN0ZXMgZGVsIGRpcMOyc2l0IgorbXNnc3RyICIiCisiUHJvdmVlaXggY29udGluZ3V0IG8gaW5mb3JtYWNpw7MgZGVsIHRpcHVzIGkgbWlkYSBwZXIgYWxzIG9iamVjdGVzIGRlbCBkaXDDsnNpdCIKIAogIzogY29tbWFuZC1saXN0Lmg6NjEKLSMsIGZ1enp5CiBtc2dpZCAiRGlzcGxheSBnaXRhdHRyaWJ1dGVzIGluZm9ybWF0aW9uIgotbXNnc3RyICJ1c2EgLmdpdGF0dHJpYnV0ZXMgbm9tw6lzIGRlcyBkZSBsJ8OtbmRleCIKK21zZ3N0ciAiTW9zdHJhIGxhIGluZm9ybWFjacOzIGRlIC5naXRhdHRyaWJ1dGVzIgogCiAjOiBjb21tYW5kLWxpc3QuaDo2MgogbXNnaWQgIkRlYnVnIGdpdGlnbm9yZSAvIGV4Y2x1ZGUgZmlsZXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAiRGVwdXJhIGdpdGlnbm9yZSAvIGZpdHhlcnMgZCdleGNsdXNpw7MiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjYzCiAjLCBmdXp6eQpAQCAtMTg3NzMsMzkgKzIyMTE1LDM2IEBACiBtc2dzdHIgIkNhbnZpYSBkZSBicmFuY2EgbyByZXN0YXVyYSBlbHMgZml0eGVycyBkZSBsJ2FyYnJlIGRlIHRyZWJhbGwiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjY1Ci0jLCBmdXp6eQogbXNnaWQgIkNvcHkgZmlsZXMgZnJvbSB0aGUgaW5kZXggdG8gdGhlIHdvcmtpbmcgdHJlZSIKLW1zZ3N0ciAiY2Ftw60gYSBsJ2FyYnJlIGRlIHRyZWJhbGwiCittc2dzdHIgIkNvcGlhIGZpdHhlcnMgZGVzIGRlIGwnw61uZGV4IGEgbCdhcmJyZSBkZSB0cmViYWxsIgogCiAjOiBjb21tYW5kLWxpc3QuaDo2NgogbXNnaWQgIkVuc3VyZXMgdGhhdCBhIHJlZmVyZW5jZSBuYW1lIGlzIHdlbGwgZm9ybWVkIgotbXNnc3RyICIiCittc2dzdHIgIkFzc2VndXJhIHF1ZSB1biBub20gZGUgcmVmZXLDqG5jaWEgZXN0w6AgYmVuIGZvcm1hdCIKIAogIzogY29tbWFuZC1saXN0Lmg6NjcKIG1zZ2lkICJGaW5kIGNvbW1pdHMgeWV0IHRvIGJlIGFwcGxpZWQgdG8gdXBzdHJlYW0iCi1tc2dzdHIgIiIKK21zZ3N0ciAiVHJvYmEgbGVzIGNvbWlzc2lvbnMgcXVlIGVuY2FyYSBzJ2hhbiBkJ2FwbGljYXIgYSBsYSBmb250IgogCiAjOiBjb21tYW5kLWxpc3QuaDo2OAogbXNnaWQgIkFwcGx5IHRoZSBjaGFuZ2VzIGludHJvZHVjZWQgYnkgc29tZSBleGlzdGluZyBjb21taXRzIgotbXNnc3RyICIiCittc2dzdHIgIkFwbGljYSBlbHMgY2FudmlzIGludHJvZHXDr3RzIHBlciBhbGd1bmVzIGNvbWlzc2lvbnMgZXhpc3RlbnRzIgogCiAjOiBjb21tYW5kLWxpc3QuaDo2OQogbXNnaWQgIkdyYXBoaWNhbCBhbHRlcm5hdGl2ZSB0byBnaXQtY29tbWl0IgotbXNnc3RyICIiCittc2dzdHIgIkFsdGVybmF0aXZhIGdyw6BmaWNhIGEgZ2l0LWNvbW1pdCIKIAogIzogY29tbWFuZC1saXN0Lmg6NzAKLSMsIGZ1enp5CiBtc2dpZCAiUmVtb3ZlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHRoZSB3b3JraW5nIHRyZWUiCi1tc2dzdHIgIkVsaW1pbmEgZml0eGVycyBkZSBsJ2FyYnJlIGRlIHRyZWJhbGwgaSBkZSBsJ8OtbmRleCIKK21zZ3N0ciAiU3VwcmltZWl4IGVscyBmaXR4ZXJzIG5vIHNlZ3VpdHMgZGUgbCdhcmJyZSBkZSB0cmViYWxsIgogCiAjOiBjb21tYW5kLWxpc3QuaDo3MQogbXNnaWQgIkNsb25lIGEgcmVwb3NpdG9yeSBpbnRvIGEgbmV3IGRpcmVjdG9yeSIKIG1zZ3N0ciAiQ2xvbmEgdW4gZGlww7JzaXQgYSB1biBkaXJlY3Rvcmkgbm91IgogCiAjOiBjb21tYW5kLWxpc3QuaDo3MgotIywgZnV6enkKIG1zZ2lkICJEaXNwbGF5IGRhdGEgaW4gY29sdW1ucyIKLW1zZ3N0ciAibGxpc3RhIGxlcyBicmFucXVlcyBlbiBjb2x1bW5lcyIKK21zZ3N0ciAiTW9zdHJhIGxlcyBkYWRlcyBlbiBjb2x1bW5lcyIKIAogIzogY29tbWFuZC1saXN0Lmg6NzMKIG1zZ2lkICJSZWNvcmQgY2hhbmdlcyB0byB0aGUgcmVwb3NpdG9yeSIKQEAgLTE4ODEzLDE2ICsyMjE1MiwxNSBAQAogCiAjOiBjb21tYW5kLWxpc3QuaDo3NAogbXNnaWQgIldyaXRlIGFuZCB2ZXJpZnkgR2l0IGNvbW1pdC1ncmFwaCBmaWxlcyIKLW1zZ3N0ciAiIgorbXNnc3RyICJFc2NyaXUgaSB2ZXJpZmljYSBlbHMgZml0eGVycyBjb21taXQtZ3JhcGggZGUgR2l0IgogCiAjOiBjb21tYW5kLWxpc3QuaDo3NQotIywgZnV6enkKIG1zZ2lkICJDcmVhdGUgYSBuZXcgY29tbWl0IG9iamVjdCIKLW1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBlc2NyaXVyZSBsJ29iamVjdGUgZGUgY29taXNzacOzIgorbXNnc3RyICJDcmVhIHVuIG9iamVjdGUgZGUgY29taXNzacOzIG5vdSIKIAogIzogY29tbWFuZC1saXN0Lmg6NzYKIG1zZ2lkICJHZXQgYW5kIHNldCByZXBvc2l0b3J5IG9yIGdsb2JhbCBvcHRpb25zIgotbXNnc3RyICIiCittc2dzdHIgIk9idMOpIG8gZXN0YWJsZWl4IG9wY2lvbnMgZGUgZGlww7JzaXQgbyBnbG9iYWxzIgogCiAjOiBjb21tYW5kLWxpc3QuaDo3NwogbXNnaWQgIkNvdW50IHVucGFja2VkIG51bWJlciBvZiBvYmplY3RzIGFuZCB0aGVpciBkaXNrIGNvbnN1bXB0aW9uIgpAQCAtMTg4MzgsNyArMjIxNzYsNyBAQAogCiAjOiBjb21tYW5kLWxpc3QuaDo4MAogbXNnaWQgIkhlbHBlciB0byBzdG9yZSBjcmVkZW50aWFscyBvbiBkaXNrIgotbXNnc3RyICIiCittc2dzdHIgIkFqdWRhbnQgcGVyIGEgZW1tYWdhdHplbWFyIGNyZWRlbmNpYWxzIGEgZGlzYyIKIAogIzogY29tbWFuZC1saXN0Lmg6ODEKIG1zZ2lkICJFeHBvcnQgYSBzaW5nbGUgY29tbWl0IHRvIGEgQ1ZTIGNoZWNrb3V0IgpAQCAtMTg4NTAsMzAgKzIyMTg4LDI5IEBACiAKICM6IGNvbW1hbmQtbGlzdC5oOjgzCiBtc2dpZCAiQSBDVlMgc2VydmVyIGVtdWxhdG9yIGZvciBHaXQiCi1tc2dzdHIgIiIKK21zZ3N0ciAiVW4gZW11bGFkb3IgZGUgc2Vydmlkb3IgQ1ZTIHBlciBhbCBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjg0CiBtc2dpZCAiQSByZWFsbHkgc2ltcGxlIHNlcnZlciBmb3IgR2l0IHJlcG9zaXRvcmllcyIKLW1zZ3N0ciAiIgorbXNnc3RyICJVbiBzZXJ2aWRvciByZWFsbWVudCBzZW56aWxsIHBlciBhIGRpcMOyc2l0cyBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjg1CiBtc2dpZCAiR2l2ZSBhbiBvYmplY3QgYSBodW1hbiByZWFkYWJsZSBuYW1lIGJhc2VkIG9uIGFuIGF2YWlsYWJsZSByZWYiCiBtc2dzdHIgIiIKKyJEw7NuYSB1biBub20gbGxlZ2libGUgcGVyIGh1bWFucyBiYXNhbnQtc2UgZW4gbGVzIHJlZmVyw6huY2llcyBkaXNwb25pYmxlcyIKIAogIzogY29tbWFuZC1saXN0Lmg6ODYKIG1zZ2lkICJTaG93IGNoYW5nZXMgYmV0d2VlbiBjb21taXRzLCBjb21taXQgYW5kIHdvcmtpbmcgdHJlZSwgZXRjIgogbXNnc3RyICIiCi0iTW9zdHJhIGVscyBjYW52aXMgZW50cmUgY29taXNzaW9ucywgbGEgY29taXNzacOzIGkgbCdhcmJyZSBkZSB0cmViYWxsLCBldGMuIgorIk1vc3RyYSBlbHMgY2FudmlzIGVudHJlIGNvbWlzc2lvbnMsIGxhIGNvbWlzc2nDsyBpIGwnYXJicmUgZGUgdHJlYmFsbCwgZXRjIgogCiAjOiBjb21tYW5kLWxpc3QuaDo4NwotIywgZnV6enkKIG1zZ2lkICJDb21wYXJlcyBmaWxlcyBpbiB0aGUgd29ya2luZyB0cmVlIGFuZCB0aGUgaW5kZXgiCi1tc2dzdHIgIkVsaW1pbmEgZml0eGVycyBkZSBsJ2FyYnJlIGRlIHRyZWJhbGwgaSBkZSBsJ8OtbmRleCIKK21zZ3N0ciAiQ29tcGFyYSBmaXR4ZXJzIGVuIGwnYXJicmUgZGUgdHJlYmFsbCBpIGwnw61uZGV4IgogCiAjOiBjb21tYW5kLWxpc3QuaDo4OAotIywgZnV6enkKIG1zZ2lkICJDb21wYXJlIGEgdHJlZSB0byB0aGUgd29ya2luZyB0cmVlIG9yIGluZGV4IgotbXNnc3RyICJjYW3DrSBhIGwnYXJicmUgZGUgdHJlYmFsbCIKK21zZ3N0ciAiQ29tcGFyYSB1biBhcmJyZSBhbWIgbCdhcmJyZSBkZSB0cmViYWxsIG8gbCfDrW5kZXgiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjg5CiBtc2dpZCAiQ29tcGFyZXMgdGhlIGNvbnRlbnQgYW5kIG1vZGUgb2YgYmxvYnMgZm91bmQgdmlhIHR3byB0cmVlIG9iamVjdHMiCkBAIC0xODg4MSw1MiArMjIyMTgsNDcgQEAKIAogIzogY29tbWFuZC1saXN0Lmg6OTAKIG1zZ2lkICJTaG93IGNoYW5nZXMgdXNpbmcgY29tbW9uIGRpZmYgdG9vbHMiCi1tc2dzdHIgIiIKK21zZ3N0ciAiTW9zdHJhIGVscyBjYW52aXMgdXNhbnQgZWluZXMgZGlmZiBjb211bmVzIgogCiAjOiBjb21tYW5kLWxpc3QuaDo5MQogbXNnaWQgIkdpdCBkYXRhIGV4cG9ydGVyIgotbXNnc3RyICIiCittc2dzdHIgIkV4cGxvcmFkb3IgZGUgZGFkZXMgZGVsIEdpdCIKIAogIzogY29tbWFuZC1saXN0Lmg6OTIKIG1zZ2lkICJCYWNrZW5kIGZvciBmYXN0IEdpdCBkYXRhIGltcG9ydGVycyIKLW1zZ3N0ciAiIgorbXNnc3RyICJSZXJlZm9ucyBwZXIgYSBpbXBvcnRhZG9ycyByw6BwaWRzIGRlIGRhZGVzIGRlIEdpdCIKIAogIzogY29tbWFuZC1saXN0Lmg6OTMKIG1zZ2lkICJEb3dubG9hZCBvYmplY3RzIGFuZCByZWZzIGZyb20gYW5vdGhlciByZXBvc2l0b3J5IgogbXNnc3RyICJCYWl4YSBvYmplY3RlcyBpIHJlZmVyw6huY2llcyBkJ3VuIGFsdHJlIGRpcMOyc2l0IgogCiAjOiBjb21tYW5kLWxpc3QuaDo5NAotIywgZnV6enkKIG1zZ2lkICJSZWNlaXZlIG1pc3Npbmcgb2JqZWN0cyBmcm9tIGFub3RoZXIgcmVwb3NpdG9yeSIKLW1zZ3N0ciAiQmFpeGEgb2JqZWN0ZXMgaSByZWZlcsOobmNpZXMgZCd1biBhbHRyZSBkaXDDsnNpdCIKK21zZ3N0ciAiUmVwIGVscyBvYmplY3RlcyBxdWUgbWFucXVlbiBkZXMgZCd1biBhbHRyZSBkaXDDsnNpdCIKIAogIzogY29tbWFuZC1saXN0Lmg6OTUKLSMsIGZ1enp5CiBtc2dpZCAiUmV3cml0ZSBicmFuY2hlcyIKLW1zZ3N0ciAiICBCcmFuY2EgcmVtb3RhOiVzIgorbXNnc3RyICJUb3JuYSBhIGVzY3JpdXJlIGxlcyBicmFucXVlcyIKIAogIzogY29tbWFuZC1saXN0Lmg6OTYKLSMsIGZ1enp5CiBtc2dpZCAiUHJvZHVjZSBhIG1lcmdlIGNvbW1pdCBtZXNzYWdlIgotbXNnc3RyICJlZGl0YSBlbCBtaXNzYXRnZSBkZSBjb21pc3Npw7MiCittc2dzdHIgIlByb2R1ZWl4IHVuIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyBkZSBmdXNpw7MiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjk3Ci0jLCBmdXp6eQogbXNnaWQgIk91dHB1dCBpbmZvcm1hdGlvbiBvbiBlYWNoIHJlZiIKLW1zZ3N0ciAiYWN0dWFsaXR6YSBsYSBpbmZvcm1hY2nDsyBkJ2VzdGFkw61zdGlxdWVzIGVuIGVsIGZpdHhlciBkJ8OtbmRleCIKK21zZ3N0ciAiTW9zdHJhIGxhIGluZm9ybWFjacOzIGVuIGNhZGEgcmVmZXLDqG5jaWEiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjk4CiBtc2dpZCAiUHJlcGFyZSBwYXRjaGVzIGZvciBlLW1haWwgc3VibWlzc2lvbiIKLW1zZ3N0ciAiIgorbXNnc3RyICJQcmVwYXJhIHBlZGHDp29zIHBlciBlbnZpYXItbG9zIHBlciBjb3JyZXUgZWxlY3Ryw7JuaWMiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjk5Ci0jLCBmdXp6eQogbXNnaWQgIlZlcmlmaWVzIHRoZSBjb25uZWN0aXZpdHkgYW5kIHZhbGlkaXR5IG9mIHRoZSBvYmplY3RzIGluIHRoZSBkYXRhYmFzZSIKLW1zZ3N0ciAiZXNjcml1IGwnb2JqZWN0ZSBhIGxhIGJhc2UgZGUgZGFkZXMgZCdvYmplY3RlcyIKK21zZ3N0ciAiVmVyaWZpY2EgbGEgY29ubmVjdGl2aXRhdCBpIHZhbGlkZXNhIGRlbHMgb2JqZWN0ZXMgYSBsYSBiYXNlIGRlIGRhZGVzIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMDAKIG1zZ2lkICJDbGVhbnVwIHVubmVjZXNzYXJ5IGZpbGVzIGFuZCBvcHRpbWl6ZSB0aGUgbG9jYWwgcmVwb3NpdG9yeSIKLW1zZ3N0ciAiIgorbXNnc3RyICJOZXRlamEgZWxzIGZpdHhlcnMgaW5uZWNlc3NhcmlzIGkgb3B0aW1pdHphIGVsIGRpcMOyc2l0IGxvY2FsIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMDEKIG1zZ2lkICJFeHRyYWN0IGNvbW1pdCBJRCBmcm9tIGFuIGFyY2hpdmUgY3JlYXRlZCB1c2luZyBnaXQtYXJjaGl2ZSIKQEAgLTE4OTM4LDI0ICsyMjI3MCwyMyBAQAogCiAjOiBjb21tYW5kLWxpc3QuaDoxMDMKIG1zZ2lkICJBIHBvcnRhYmxlIGdyYXBoaWNhbCBpbnRlcmZhY2UgdG8gR2l0IgotbXNnc3RyICIiCittc2dzdHIgIlVuYSBpbnRlcmbDrWNpZSBncsOgZmljIHBvcnRhYmxlIHBlciBhbCBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEwNAogbXNnaWQgIkNvbXB1dGUgb2JqZWN0IElEIGFuZCBvcHRpb25hbGx5IGNyZWF0ZXMgYSBibG9iIGZyb20gYSBmaWxlIgotbXNnc3RyICIiCittc2dzdHIgIkNhbGN1bGEgbCdJRCBkZSBsJ29iamVjdGUgaSBvcGNpb25hbG1lbnQgY3JlYSB1biBibG9iIGRlcyBkZWwgZml0eGVyIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMDUKIG1zZ2lkICJEaXNwbGF5IGhlbHAgaW5mb3JtYXRpb24gYWJvdXQgR2l0IgotbXNnc3RyICIiCittc2dzdHIgIk1vc3RyYSBpbmZvcm1hY2nDsyBkJ2FqdWRhIGRlbCBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEwNgogbXNnaWQgIlNlcnZlciBzaWRlIGltcGxlbWVudGF0aW9uIG9mIEdpdCBvdmVyIEhUVFAiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTA3Ci0jLCBmdXp6eQogbXNnaWQgIkRvd25sb2FkIGZyb20gYSByZW1vdGUgR2l0IHJlcG9zaXRvcnkgdmlhIEhUVFAiCi1tc2dzdHIgIkJhaXhhIG9iamVjdGVzIGkgcmVmZXLDqG5jaWVzIGQndW4gYWx0cmUgZGlww7JzaXQiCittc2dzdHIgIkJhaXhhIGRlcyBkJ3VuIGRpcMOyc2l0IEdpdCByZW1vdCB2aWEgSFRUUCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTA4CiAjLCBmdXp6eQpAQCAtMTg5NzksMzIgKzIyMzEwLDI4IEBACiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTEzCi1tc2dpZCAiYWRkIG9yIHBhcnNlIHN0cnVjdHVyZWQgaW5mb3JtYXRpb24gaW4gY29tbWl0IG1lc3NhZ2VzIgorbXNnaWQgIkFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMTQKLSMsIGZ1enp5CiBtc2dpZCAiVGhlIEdpdCByZXBvc2l0b3J5IGJyb3dzZXIiCi1tc2dzdHIgIm5vIMOpcyB1biBkaXDDsnNpdCBkZSBnaXQ6ICVzIgorbXNnc3RyICJFbCBuYXZlZ2Fkb3IgZGUgZGlww7JzaXRzIEdpdCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTE1CiBtc2dpZCAiU2hvdyBjb21taXQgbG9ncyIKIG1zZ3N0ciAiTW9zdHJhIGVscyByZWdpc3RyZXMgZGUgY29taXNzacOzIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMTYKLSMsIGZ1enp5CiBtc2dpZCAiU2hvdyBpbmZvcm1hdGlvbiBhYm91dCBmaWxlcyBpbiB0aGUgaW5kZXggYW5kIHRoZSB3b3JraW5nIHRyZWUiCi1tc2dzdHIgImkgaGEgZmV0IGNhbnZpcyBhIGwnw61uZGV4IG8gbCdhcmJyZSBkZSB0cmViYWxsIgorbXNnc3RyICJNb3N0cmEgaW5mb3JtYWNpw7Mgc29icmUgZWxzIGZpdHhlcnMgYSBsJ8OtbmRleCBpIGEgbCdhcmJyZSBkZSB0cmViYWxsIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMTcKLSMsIGZ1enp5CiBtc2dpZCAiTGlzdCByZWZlcmVuY2VzIGluIGEgcmVtb3RlIHJlcG9zaXRvcnkiCi1tc2dzdHIgImRpcMOyc2l0IGRlIHJlZmVyw6huY2lhIgorbXNnc3RyICJNb3N0cmEgbGVzIHJlZmVyw6huY2llcyBkJ3VuIGRpcMOyc2l0IHJlbW90IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMTgKLSMsIGZ1enp5CiBtc2dpZCAiTGlzdCB0aGUgY29udGVudHMgb2YgYSB0cmVlIG9iamVjdCIKLW1zZ3N0ciAiaW1wcmltZWl4IG5vbcOpcyBsZXMgZXRpcXVldGVzIGRlIGwnb2JqZWN0ZSIKK21zZ3N0ciAiTW9zdHJhIGVscyBjb250aW5ndXRzIGQndW4gb2JqZWN0ZSBkZSBsJ2FyYnJlIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMTkKIG1zZ2lkICJFeHRyYWN0cyBwYXRjaCBhbmQgYXV0aG9yc2hpcCBmcm9tIGEgc2luZ2xlIGUtbWFpbCBtZXNzYWdlIgpAQCAtMTkwNDAsNiArMjIzNjcsNyBAQAogIzogY29tbWFuZC1saXN0Lmg6MTI2CiBtc2dpZCAiUnVuIG1lcmdlIGNvbmZsaWN0IHJlc29sdXRpb24gdG9vbHMgdG8gcmVzb2x2ZSBtZXJnZSBjb25mbGljdHMiCiBtc2dzdHIgIiIKKyJFeGVjdXRhIGVpbmVzIGRlIHJlc29sdWNpw7MgZGUgY29uZmxpY3RlcyBwZXIgYSByZXNvbGRyZSBjb25mbGljdGVzIGRlIGZ1c3Npw7MiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEyNwogbXNnaWQgIlNob3cgdGhyZWUtd2F5IG1lcmdlIHdpdGhvdXQgdG91Y2hpbmcgaW5kZXgiCkBAIC0xOTA1MCw5ICsyMjM3OCw4IEBACiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTI5Ci0jLCBmdXp6eQogbXNnaWQgIkNyZWF0ZXMgYSB0YWcgb2JqZWN0IgotbXNnc3RyICJlZGl0YSB1biBvYmplY3RlIGV4aXN0ZW50IgorbXNnc3RyICJDcmVhIHVuIG9iamVjdGUgZXRpcXVldGEiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEzMAogbXNnaWQgIkJ1aWxkIGEgdHJlZS1vYmplY3QgZnJvbSBscy10cmVlIGZvcm1hdHRlZCB0ZXh0IgpAQCAtMTkwNjcsMjMgKzIyMzk0LDIwIEBACiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTMzCi0jLCBmdXp6eQogbXNnaWQgIkFkZCBvciBpbnNwZWN0IG9iamVjdCBub3RlcyIKLW1zZ3N0ciAibm8gcydoYSByZWJ1dCBsJ29iamVjdGUgZXNwZXJhdCAlcyIKK21zZ3N0ciAiQWZlZ2VpeCBvIGluc3BlY2Npb25hIG5vdGVzIGRlIGwnb2JqZWN0ZSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTM0CiBtc2dpZCAiSW1wb3J0IGZyb20gYW5kIHN1Ym1pdCB0byBQZXJmb3JjZSByZXBvc2l0b3JpZXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAiSW1wb3J0YSBkZXMgZGUgaSBlbnZpYSBhIGRpcMOyc2l0cyBQZXJmb3JjZSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTM1Ci0jLCBmdXp6eQogbXNnaWQgIkNyZWF0ZSBhIHBhY2tlZCBhcmNoaXZlIG9mIG9iamVjdHMiCi1tc2dzdHIgImlnbm9yYSBlbHMgb2JqZWN0ZXMgZW1wYXF1ZXRhdHMiCittc2dzdHIgIkNyZWEgdW4gYXJ4aXUgZW1wYXF1ZXRhdCBkJ29iamVjdGVzIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMzYKLSMsIGZ1enp5CiBtc2dpZCAiRmluZCByZWR1bmRhbnQgcGFjayBmaWxlcyIKLW1zZ3N0ciAibm8gZXMgcG90IGZlciBwcmVhZCBlbiBlbCBmaXR4ZXIgZGUgcGFxdWV0IgorbXNnc3RyICJUcm9iYSBmaXR4ZXJzIGVtcGFxdWV0YXRzIHJlZHVuZGFudHMiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEzNwogbXNnaWQgIlBhY2sgaGVhZHMgYW5kIHRhZ3MgZm9yIGVmZmljaWVudCByZXBvc2l0b3J5IGFjY2VzcyIKQEAgLTE5MTcxLDI0MCArMjI0OTUsMjM4IEBACiBtc2dzdHIgIlJlc3RhYmxlaXggbGEgSEVBRCBhY3R1YWwgYSBsJ2VzdGF0IGVzcGVjaWZpY2F0IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNTYKLSMsIGZ1enp5Ci1tc2dpZCAiUmV2ZXJ0IHNvbWUgZXhpc3RpbmcgY29tbWl0cyIKLW1zZ3N0ciAibm8gZXMgcG90IGVzbWVuYXIgdW5hIGNvbWlzc2nDsyBubyBleGlzdGVudCIKK21zZ2lkICJSZXN0b3JlIHdvcmtpbmcgdHJlZSBmaWxlcyIKK21zZ3N0ciAiUmVzdGF1cmEgZWxzIGZpdHhlcnMgZGUgbCdhcmJyZSBkZSB0cmViYWxsIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNTcKLSMsIGZ1enp5Ci1tc2dpZCAiTGlzdHMgY29tbWl0IG9iamVjdHMgaW4gcmV2ZXJzZSBjaHJvbm9sb2dpY2FsIG9yZGVyIgotbXNnc3RyICJtb3N0cmEgbGVzIGNvbWlzc2lvbnMgZW4gb3JkcmUgdG9wb2zDsmdpYyIKK21zZ2lkICJSZXZlcnQgc29tZSBleGlzdGluZyBjb21taXRzIgorbXNnc3RyICJSZXZlcnRlaXggY29taXNzaW9ucyBleGlzdGVudHMiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE1OAotIywgZnV6enkKLW1zZ2lkICJQaWNrIG91dCBhbmQgbWFzc2FnZSBwYXJhbWV0ZXJzIgotbXNnc3RyICJtYXNzYSBwYXLDoG1ldHJlcyIKK21zZ2lkICJMaXN0cyBjb21taXQgb2JqZWN0cyBpbiByZXZlcnNlIGNocm9ub2xvZ2ljYWwgb3JkZXIiCittc2dzdHIgIk1vc3RyYSBsZXMgY29taXNzaW9ucyBlbiBvcmRyZSB0b3BvbMOyZ2ljIGludmVycyIKIAogIzogY29tbWFuZC1saXN0Lmg6MTU5Cittc2dpZCAiUGljayBvdXQgYW5kIG1hc3NhZ2UgcGFyYW1ldGVycyIKK21zZ3N0ciAiRXNjb2xsZWl4IGkgcGVyc29uYWxpdHphIGVscyBwYXLDoG1ldHJlcyIKKworIzogY29tbWFuZC1saXN0Lmg6MTYwCiBtc2dpZCAiUmVtb3ZlIGZpbGVzIGZyb20gdGhlIHdvcmtpbmcgdHJlZSBhbmQgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgIkVsaW1pbmEgZml0eGVycyBkZSBsJ2FyYnJlIGRlIHRyZWJhbGwgaSBkZSBsJ8OtbmRleCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTYwCi1tc2dpZCAiU2VuZCBhIGNvbGxlY3Rpb24gb2YgcGF0Y2hlcyBhcyBlbWFpbHMiCi1tc2dzdHIgIiIKLQogIzogY29tbWFuZC1saXN0Lmg6MTYxCi0jLCBmdXp6eQotbXNnaWQgIlB1c2ggb2JqZWN0cyBvdmVyIEdpdCBwcm90b2NvbCB0byBhbm90aGVyIHJlcG9zaXRvcnkiCi1tc2dzdHIgIkJhaXhhIG9iamVjdGVzIGkgcmVmZXLDqG5jaWVzIGQndW4gYWx0cmUgZGlww7JzaXQiCittc2dpZCAiU2VuZCBhIGNvbGxlY3Rpb24gb2YgcGF0Y2hlcyBhcyBlbWFpbHMiCittc2dzdHIgIkVudmlhIHVuYSBjb2zCt2xlY2Npw7MgZGUgcGVkYcOnb3MgY29tIGEgY29ycmV1cyBlbGVjdHLDsm5pY3MiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE2MgorbXNnaWQgIlB1c2ggb2JqZWN0cyBvdmVyIEdpdCBwcm90b2NvbCB0byBhbm90aGVyIHJlcG9zaXRvcnkiCittc2dzdHIgIlB1amEgb2JqZWN0ZXMgc29icmUgZWwgcHJvdG9jb2wgR2l0IGEgdW4gYWx0cmUgZGlww7JzaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MwogbXNnaWQgIlJlc3RyaWN0ZWQgbG9naW4gc2hlbGwgZm9yIEdpdC1vbmx5IFNTSCBhY2Nlc3MiCiBtc2dzdHIgIiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTYzCisjOiBjb21tYW5kLWxpc3QuaDoxNjQKIG1zZ2lkICJTdW1tYXJpemUgJ2dpdCBsb2cnIG91dHB1dCIKIG1zZ3N0ciAiIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjQKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NQogbXNnaWQgIlNob3cgdmFyaW91cyB0eXBlcyBvZiBvYmplY3RzIgogbXNnc3RyICJNb3N0cmEgZGl2ZXJzb3MgdGlwdXMgZCdvYmplY3RlcyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTY1Ci0jLCBmdXp6eQotbXNnaWQgIlNob3cgYnJhbmNoZXMgYW5kIHRoZWlyIGNvbW1pdHMiCi1tc2dzdHIgImltcHJpbWVpeCBub23DqXMgbGVzIGJyYW5xdWVzIHF1ZSBjb250aW5ndWluIGxhIGNvbWlzc2nDsyIKLQogIzogY29tbWFuZC1saXN0Lmg6MTY2Ci1tc2dpZCAiU2hvdyBwYWNrZWQgYXJjaGl2ZSBpbmRleCIKLW1zZ3N0ciAiIgorbXNnaWQgIlNob3cgYnJhbmNoZXMgYW5kIHRoZWlyIGNvbW1pdHMiCittc2dzdHIgIk1vc3RyYSBsZXMgYnJhbnF1ZXMgaSBsZXMgc2V2ZXMgY29taXNzaW9ucyIKIAogIzogY29tbWFuZC1saXN0Lmg6MTY3Ci0jLCBmdXp6eQotbXNnaWQgIkxpc3QgcmVmZXJlbmNlcyBpbiBhIGxvY2FsIHJlcG9zaXRvcnkiCi1tc2dzdHIgImVsIGRpcMOyc2l0IGRlIHJlZmVyw6huY2lhIMKrJXPCuyBubyDDqXMgdW4gZGlww7JzaXQgbG9jYWwuIgorbXNnaWQgIlNob3cgcGFja2VkIGFyY2hpdmUgaW5kZXgiCittc2dzdHIgIk1vc3RyYSBsJ8OtbmRleCBkJ2FyeGl1cyBlbXBhcXVldGF0IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNjgKK21zZ2lkICJMaXN0IHJlZmVyZW5jZXMgaW4gYSBsb2NhbCByZXBvc2l0b3J5IgorbXNnc3RyICJMbGlzdGEgbGVzIHJlZmVyw6huY2llcyBlbiB1biBkaXDDsnNpdCBsb2NhbCIKKworIzogY29tbWFuZC1saXN0Lmg6MTY5CiBtc2dpZCAiR2l0J3MgaTE4biBzZXR1cCBjb2RlIGZvciBzaGVsbCBzY3JpcHRzIgogbXNnc3RyICIiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2OQorIzogY29tbWFuZC1saXN0Lmg6MTcwCiBtc2dpZCAiQ29tbW9uIEdpdCBzaGVsbCBzY3JpcHQgc2V0dXAgY29kZSIKK21zZ3N0ciAiQ29kaSBkZSBzY3JpcHRzIGRlIGNvbmZpZ3VyYWNpw7MgY29tdW5zIHBlbCBHaXQgc2hlbGwiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MQorbXNnaWQgIkluaXRpYWxpemUgYW5kIG1vZGlmeSB0aGUgc3BhcnNlLWNoZWNrb3V0IgogbXNnc3RyICIiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3MAorIzogY29tbWFuZC1saXN0Lmg6MTcyCiAjLCBmdXp6eQogbXNnaWQgIlN0YXNoIHRoZSBjaGFuZ2VzIGluIGEgZGlydHkgd29ya2luZyBkaXJlY3RvcnkgYXdheSIKIG1zZ3N0ciAiJXM6IGphIGV4aXN0ZWl4IGVuIGVsIGRpcmVjdG9yaSBkZSB0cmViYWxsIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzEKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MwogIywgZnV6enkKIG1zZ2lkICJBZGQgZmlsZSBjb250ZW50cyB0byB0aGUgc3RhZ2luZyBhcmVhIgogbXNnc3RyICJBZmVnZWl4IGVscyBjb250aW5ndXRzIGRlbHMgZml0eGVycyBhIGwnw61uZGV4IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzIKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NAogbXNnaWQgIlNob3cgdGhlIHdvcmtpbmcgdHJlZSBzdGF0dXMiCiBtc2dzdHIgIk1vc3RyYSBsJ2VzdGF0IGRlIGwnYXJicmUgZGUgdHJlYmFsbCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTczCisjOiBjb21tYW5kLWxpc3QuaDoxNzUKIG1zZ2lkICJSZW1vdmUgdW5uZWNlc3Nhcnkgd2hpdGVzcGFjZSIKIG1zZ3N0ciAiU3VwcmltZWl4IGwnZXNwYWkgZW4gYmxhbmMgaW5uZWNlc3NhcmkiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3NAotIywgZnV6enkKLW1zZ2lkICJJbml0aWFsaXplLCB1cGRhdGUgb3IgaW5zcGVjdCBzdWJtb2R1bGVzIgotbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGFjdHVhbGl0emFyIGVsIHJlbW90IHBlbCBzdWJtw7JkdWwgwqslc8K7IgotCi0jOiBjb21tYW5kLWxpc3QuaDoxNzUKLW1zZ2lkICJCaWRpcmVjdGlvbmFsIG9wZXJhdGlvbiBiZXR3ZWVuIGEgU3VidmVyc2lvbiByZXBvc2l0b3J5IGFuZCBHaXQiCi1tc2dzdHIgIiIKLQogIzogY29tbWFuZC1saXN0Lmg6MTc2Ci0jLCBmdXp6eQotbXNnaWQgIlJlYWQsIG1vZGlmeSBhbmQgZGVsZXRlIHN5bWJvbGljIHJlZnMiCi1tc2dzdHIgInN1cHJpbWVpeCBsYSByZWZlcsOobmNpYSBzaW1iw7JsaWNhIgorbXNnaWQgIkluaXRpYWxpemUsIHVwZGF0ZSBvciBpbnNwZWN0IHN1Ym1vZHVsZXMiCittc2dzdHIgIkluaWNpYWxpdHphLCBhY3R1YWxpdHphIG8gaW5zcGVjY2lvbmEgc3VibcOyZHVscyIKIAogIzogY29tbWFuZC1saXN0Lmg6MTc3Cittc2dpZCAiQmlkaXJlY3Rpb25hbCBvcGVyYXRpb24gYmV0d2VlbiBhIFN1YnZlcnNpb24gcmVwb3NpdG9yeSBhbmQgR2l0IgorbXNnc3RyICJPcGVyYWNpw7MgYmlkaXJlY2Npb25hbCBlbnRyZSB1biBkaXDDsnNpdCBhIFN1YnZlcnNpb24gaSBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3OAorbXNnaWQgIlN3aXRjaCBicmFuY2hlcyIKK21zZ3N0ciAiQ29tbXV0YSBicmFucXVlcyIKKworIzogY29tbWFuZC1saXN0Lmg6MTc5Cittc2dpZCAiUmVhZCwgbW9kaWZ5IGFuZCBkZWxldGUgc3ltYm9saWMgcmVmcyIKK21zZ3N0ciAiTGxlZ2VpeCwgbW9kaWZpY2EgaSBzdXByaW1laXggcmVmZXLDqG5jaWVzIHNpbWLDsmxpcXVlcyIKKworIzogY29tbWFuZC1saXN0Lmg6MTgwCiBtc2dpZCAiQ3JlYXRlLCBsaXN0LCBkZWxldGUgb3IgdmVyaWZ5IGEgdGFnIG9iamVjdCBzaWduZWQgd2l0aCBHUEciCiBtc2dzdHIgIiIKICJDcmVhLCBsbGlzdGEsIHN1cHJpbWVpeCBvIHZlcmlmaWNhIHVuIG9iamVjdGUgZCdldGlxdWV0YSBzaWduYXQgYW1iIEdQRyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc4Ci1tc2dpZCAiQ3JlYXRlcyBhIHRlbXBvcmFyeSBmaWxlIHdpdGggYSBibG9iJ3MgY29udGVudHMiCi1tc2dzdHIgIiIKLQotIzogY29tbWFuZC1saXN0Lmg6MTc5Ci1tc2dpZCAiVW5wYWNrIG9iamVjdHMgZnJvbSBhIHBhY2tlZCBhcmNoaXZlIgotbXNnc3RyICIiCi0KLSM6IGNvbW1hbmQtbGlzdC5oOjE4MAotIywgZnV6enkKLW1zZ2lkICJSZWdpc3RlciBmaWxlIGNvbnRlbnRzIGluIHRoZSB3b3JraW5nIHRyZWUgdG8gdGhlIGluZGV4IgotbXNnc3RyICJFbGltaW5hIGZpdHhlcnMgZGUgbCdhcmJyZSBkZSB0cmViYWxsIGkgZGUgbCfDrW5kZXgiCi0KICM6IGNvbW1hbmQtbGlzdC5oOjE4MQotbXNnaWQgIlVwZGF0ZSB0aGUgb2JqZWN0IG5hbWUgc3RvcmVkIGluIGEgcmVmIHNhZmVseSIKLW1zZ3N0ciAiIgorbXNnaWQgIkNyZWF0ZXMgYSB0ZW1wb3JhcnkgZmlsZSB3aXRoIGEgYmxvYidzIGNvbnRlbnRzIgorbXNnc3RyICJDcmVhIHVuIGZpdHhlciB0ZW1wb3JhbCBhbWIgZWxzIGNvbnRpbmd1dHMgZGVscyBibG9icyIKIAogIzogY29tbWFuZC1saXN0Lmg6MTgyCittc2dpZCAiVW5wYWNrIG9iamVjdHMgZnJvbSBhIHBhY2tlZCBhcmNoaXZlIgorbXNnc3RyICJEZXNlbXBhcXVldGEgb2JqZWN0ZXMgZCd1biBhcnhpdSBlbXBhcXVldGF0IgorCisjOiBjb21tYW5kLWxpc3QuaDoxODMKK21zZ2lkICJSZWdpc3RlciBmaWxlIGNvbnRlbnRzIGluIHRoZSB3b3JraW5nIHRyZWUgdG8gdGhlIGluZGV4IgorbXNnc3RyICJSZWdpc3RyYSBlbHMgY29udGluZ3V0cyBkZWwgZml0eGVyIGVuIGwnYXJicmUgZGUgdHJlYmFsbCBhIGwnw61uZGV4IgorCisjOiBjb21tYW5kLWxpc3QuaDoxODQKK21zZ2lkICJVcGRhdGUgdGhlIG9iamVjdCBuYW1lIHN0b3JlZCBpbiBhIHJlZiBzYWZlbHkiCittc2dzdHIgIiIKKyJBY3R1YWxpdHphIGVsIG5vbSBkZSBsJ29iamVjdGUgZW1tYWdhdHplbWEgZW4gdW5hIHJlZmVyw6huY2lhIGRlIGZvcm1hIHNlZ3VyYSIKKworIzogY29tbWFuZC1saXN0Lmg6MTg1CiBtc2dpZCAiVXBkYXRlIGF1eGlsaWFyeSBpbmZvIGZpbGUgdG8gaGVscCBkdW1iIHNlcnZlcnMiCiBtc2dzdHIgIiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTgzCi1tc2dpZCAiU2VuZCBhcmNoaXZlIGJhY2sgdG8gZ2l0LWFyY2hpdmUiCi1tc2dzdHIgIiIKLQotIzogY29tbWFuZC1saXN0Lmg6MTg0Ci1tc2dpZCAiU2VuZCBvYmplY3RzIHBhY2tlZCBiYWNrIHRvIGdpdC1mZXRjaC1wYWNrIgotbXNnc3RyICIiCi0KLSM6IGNvbW1hbmQtbGlzdC5oOjE4NQotbXNnaWQgIlNob3cgYSBHaXQgbG9naWNhbCB2YXJpYWJsZSIKLW1zZ3N0ciAiIgotCiAjOiBjb21tYW5kLWxpc3QuaDoxODYKLSMsIGZ1enp5Ci1tc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgY29tbWl0cyIKLW1zZ3N0ciAic2lnbmEgbGEgY29taXNzacOzIGFtYiBHUEciCittc2dpZCAiU2VuZCBhcmNoaXZlIGJhY2sgdG8gZ2l0LWFyY2hpdmUiCittc2dzdHIgIkVudmlhIGwnYXJ4aXUgZGUgdG9ybmFkYSBhbCBnaXQtYXJjaGl2ZSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTg3Ci0jLCBmdXp6eQotbXNnaWQgIlZhbGlkYXRlIHBhY2tlZCBHaXQgYXJjaGl2ZSBmaWxlcyIKLW1zZ3N0ciAibm8gcydoYSBwb2d1dCBjcmVhciBlbCBmaXR4ZXIgZCdhcnhpdSDCqyVzwrsiCittc2dpZCAiU2VuZCBvYmplY3RzIHBhY2tlZCBiYWNrIHRvIGdpdC1mZXRjaC1wYWNrIgorbXNnc3RyICJFbnZpYSBlbHMgb2JqZWN0ZXMgZW1wYXF1ZXRhdHMgZGUgdG9ybmFkYSBhbCBnaXQtZmV0Y2gtcGFjayIKIAogIzogY29tbWFuZC1saXN0Lmg6MTg4Ci1tc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgdGFncyIKLW1zZ3N0ciAiIgorbXNnaWQgIlNob3cgYSBHaXQgbG9naWNhbCB2YXJpYWJsZSIKK21zZ3N0ciAiTW9zdHJhIHVuYSB2YXJpYWJsZSBsw7JnaWNhIGRlbCBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE4OQotbXNnaWQgIkdpdCB3ZWIgaW50ZXJmYWNlICh3ZWIgZnJvbnRlbmQgdG8gR2l0IHJlcG9zaXRvcmllcykiCi1tc2dzdHIgIiIKK21zZ2lkICJDaGVjayB0aGUgR1BHIHNpZ25hdHVyZSBvZiBjb21taXRzIgorbXNnc3RyICJWZXJpZmljYSBsYSBzaWduYXR1cmEgR1BHIGRlIGxlcyBjb21pc3Npb25zIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxOTAKLW1zZ2lkICJTaG93IGxvZ3Mgd2l0aCBkaWZmZXJlbmNlIGVhY2ggY29tbWl0IGludHJvZHVjZXMiCi1tc2dzdHIgIiIKK21zZ2lkICJWYWxpZGF0ZSBwYWNrZWQgR2l0IGFyY2hpdmUgZmlsZXMiCittc2dzdHIgIlZhbGlkYSBlbHMgZml0eGVycyBkJ2FyeGl1cyBHaXQgZW1wYXF1ZXRhdHMiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE5MQorbXNnaWQgIkNoZWNrIHRoZSBHUEcgc2lnbmF0dXJlIG9mIHRhZ3MiCittc2dzdHIgIlZlcmlmaWNhIGxhIHNpZ25hdHVyYSBHUEcgZGUgbGVzIGV0aXF1ZXRlcyIKKworIzogY29tbWFuZC1saXN0Lmg6MTkyCittc2dpZCAiR2l0IHdlYiBpbnRlcmZhY2UgKHdlYiBmcm9udGVuZCB0byBHaXQgcmVwb3NpdG9yaWVzKSIKK21zZ3N0ciAiSW50ZXJmw61jaWUgd2ViIGRlbCBHaXQgKGludGVyZsOtY2llIHdlYiBwZWxzIGRpcMOyc2l0cyBHaXQpIgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTMKK21zZ2lkICJTaG93IGxvZ3Mgd2l0aCBkaWZmZXJlbmNlIGVhY2ggY29tbWl0IGludHJvZHVjZXMiCittc2dzdHIgIk1vc3RyYSByZWdpc3RyZXMgYW1iIGxhIGRpZmVyw6huY2lhIGludHJvZHXDr2RhIHBlciBjYWRhIGNvbWlzc2nDsyIKKworIzogY29tbWFuZC1saXN0Lmg6MTk0CiBtc2dpZCAiTWFuYWdlIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMiCiBtc2dzdHIgIkdlc3Rpb25hIG3Dumx0aXBsZXMgYXJicmVzIGRlIHRyZWJhbGwiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MgotIywgZnV6enkKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NQogbXNnaWQgIkNyZWF0ZSBhIHRyZWUgb2JqZWN0IGZyb20gdGhlIGN1cnJlbnQgaW5kZXgiCi1tc2dzdHIgImxsZWdlaXggbCdvYmplY3RlIGRlcyBkZSBzdGRpbiIKK21zZ3N0ciAiQ3JlYSB1biBvYmplY3RlIGFyYnJlIGRlcyBkZSBsJ8OtbmRleCBhY3R1YWwiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MworIzogY29tbWFuZC1saXN0Lmg6MTk2CiBtc2dpZCAiRGVmaW5pbmcgYXR0cmlidXRlcyBwZXIgcGF0aCIKIG1zZ3N0ciAiTGEgZGVmaW5pY2nDsyBkJ2F0cmlidXRzIHBlciBjYW3DrSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk0Ci1tc2dpZCAiR2l0IGNvbW1hbmQtbGluZSBpbnRlcmZhY2UgYW5kIGNvbnZlbnRpb25zIgotbXNnc3RyICIiCi0KLSM6IGNvbW1hbmQtbGlzdC5oOjE5NQotbXNnaWQgIkEgR2l0IGNvcmUgdHV0b3JpYWwgZm9yIGRldmVsb3BlcnMiCi1tc2dzdHIgIiIKLQotIzogY29tbWFuZC1saXN0Lmg6MTk2Ci1tc2dpZCAiR2l0IGZvciBDVlMgdXNlcnMiCi1tc2dzdHIgIiIKLQogIzogY29tbWFuZC1saXN0Lmg6MTk3Cittc2dpZCAiR2l0IGNvbW1hbmQtbGluZSBpbnRlcmZhY2UgYW5kIGNvbnZlbnRpb25zIgorbXNnc3RyICJJbnRlcmbDrWNpZSBpIGNvbnZlbmNpb25zIGRlIGxhIGzDrW5pYSBkJ29yZHJlcyBkZWwgR2l0IgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTgKK21zZ2lkICJBIEdpdCBjb3JlIHR1dG9yaWFsIGZvciBkZXZlbG9wZXJzIgorbXNnc3RyICJVbiB0dXRvcmlhbCBiw6BzaWMgZGVsIEdpdCBwZXIgYSBkZXNlbnZvbHVwYWRvcnMiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5OQorbXNnaWQgIkdpdCBmb3IgQ1ZTIHVzZXJzIgorbXNnc3RyICJHaXQgcGVyIGEgdXN1YXJpcyBkZWwgQ1ZTIgorCisjOiBjb21tYW5kLWxpc3QuaDoyMDAKICMsIGZ1enp5CiBtc2dpZCAiVHdlYWtpbmcgZGlmZiBvdXRwdXQiCiBtc2dzdHIgIm9tZXQgbGEgc29ydGlkYSBkZSBkaWZlcsOobmNpZXMiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5OAorIzogY29tbWFuZC1saXN0Lmg6MjAxCiBtc2dpZCAiQSB1c2VmdWwgbWluaW11bSBzZXQgb2YgY29tbWFuZHMgZm9yIEV2ZXJ5ZGF5IEdpdCIKLW1zZ3N0ciAiIgorbXNnc3RyICJVbiBjb25qdW50IG3DrW5pbSDDunRpbCBkJ29yZHJlcyBkacOgcmllcyBkZWwgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTkKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMgogbXNnaWQgIkEgR2l0IEdsb3NzYXJ5IgogbXNnc3RyICJVbiBnbG9zc2FyaSBkZSBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwMAorIzogY29tbWFuZC1saXN0Lmg6MjAzCiBtc2dpZCAiSG9va3MgdXNlZCBieSBHaXQiCiBtc2dzdHIgIkxsaWdhbXMgdXRpbGl0emF0cyBwZWwgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDEKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNAogbXNnaWQgIlNwZWNpZmllcyBpbnRlbnRpb25hbGx5IHVudHJhY2tlZCBmaWxlcyB0byBpZ25vcmUiCiBtc2dzdHIgIkVzcGVjaWZpY2EgZWxzIGZpdHhlcnMgaW50ZW5jaW9uYWxtZW50IG5vIHNlZ3VpdHMgYSBpZ25vcmFyIgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDIKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNQogbXNnaWQgIkRlZmluaW5nIHN1Ym1vZHVsZSBwcm9wZXJ0aWVzIgogbXNnc3RyICJMYSBkZWZpbmljacOzIGRlIGxlcyBwcm9waWV0YXRzIGRlIHN1Ym3DsmR1bHMiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwMworIzogY29tbWFuZC1saXN0Lmg6MjA2CiBtc2dpZCAiR2l0IG5hbWVzcGFjZXMiCiBtc2dzdHIgIkVzcGFpcyBkZSBub21zIGRlbCBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwNAorIzogY29tbWFuZC1saXN0Lmg6MjA3CiBtc2dpZCAiR2l0IFJlcG9zaXRvcnkgTGF5b3V0IgotbXNnc3RyICIiCittc2dzdHIgIkRpc3Bvc2ljacOzIGRlbCBkaXDDsnNpdCBkZWwgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDUKKyM6IGNvbW1hbmQtbGlzdC5oOjIwOAogbXNnaWQgIlNwZWNpZnlpbmcgcmV2aXNpb25zIGFuZCByYW5nZXMgZm9yIEdpdCIKIG1zZ3N0ciAiTCdlc3BlY2lmaWNhY2nDsyBkZSByZXZpc2lvbnMgaSByYW5ncyBwZXIgYWwgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDYKLSMsIGZ1enp5CisjOiBjb21tYW5kLWxpc3QuaDoyMDkKK21zZ2lkICJNb3VudGluZyBvbmUgcmVwb3NpdG9yeSBpbnNpZGUgYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoyMTAKIG1zZ2lkICJBIHR1dG9yaWFsIGludHJvZHVjdGlvbiB0byBHaXQ6IHBhcnQgdHdvIgotbXNnc3RyICJVbmEgaW50cm9kdWNjacOzIHR1dG9yaWFsIGFsIEdpdCAocGVyIGEgbGEgdmVyc2nDsyAxLjUuMSBvIG3DqXMgbm92YSkiCittc2dzdHIgIlVuIHR1dG9yaWFsIGQnaW50cm9kdWNjacOzIGFsIEdpdDogc2Vnb25hIHBhcnQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwNwotIywgZnV6enkKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMQogbXNnaWQgIkEgdHV0b3JpYWwgaW50cm9kdWN0aW9uIHRvIEdpdCIKLW1zZ3N0ciAiVW5hIGludHJvZHVjY2nDsyB0dXRvcmlhbCBhbCBHaXQgKHBlciBhIGxhIHZlcnNpw7MgMS41LjEgbyBtw6lzIG5vdmEpIgorbXNnc3RyICJVbiB0dXRvcmlhbCBkJ2ludHJvZHVjY2nDsyBhbCBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwOAorIzogY29tbWFuZC1saXN0Lmg6MjEyCiBtc2dpZCAiQW4gb3ZlcnZpZXcgb2YgcmVjb21tZW5kZWQgd29ya2Zsb3dzIHdpdGggR2l0IgogbXNnc3RyICJVbmEgdmlzacOzIGRlIGNvbmp1bnQgZGUgZmx1eG9zIGRlIHRyZWJhbGwgcmVjb21hbmF0cyBhbWIgR2l0IgogCi0jOiByZXJlcmUuaDo0NAotbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKLW1zZ3N0ciAiIgotImFjdHVhbGl0emEgbCfDrW5kZXggYW1iIGxhIHJlc29sdWNpw7MgZGUgY29uZmxpY3RlIHJldXNhZGEgc2kgw6lzIHBvc3NpYmxlIgotCiAjOiBnaXQtYmlzZWN0LnNoOjU0CiBtc2dpZCAiWW91IG5lZWQgdG8gc3RhcnQgYnkgXCJnaXQgYmlzZWN0IHN0YXJ0XCIiCiBtc2dzdHIgIkNhbCBjb21lbsOnYXIgcGVyIFwiZ2l0IGJpc2VjdCBzdGFydFwiIgpAQCAtMTk0MTYsMTM0ICsyMjczOCw0OSBAQAogbXNnaWQgIkRvIHlvdSB3YW50IG1lIHRvIGRvIGl0IGZvciB5b3UgW1kvbl0/ICIKIG1zZ3N0ciAiVm9sZXUgcXVlIGhvIGZhY2kgcGVyIHZvc3TDqCBbWS9uXT8gIgogCi0jOiBnaXQtYmlzZWN0LnNoOjEyMQotIywgc2gtZm9ybWF0Ci1tc2dpZCAidW5yZWNvZ25pc2VkIG9wdGlvbjogJyRhcmcnIgotbXNnc3RyICJvcGNpw7Mgbm8gcmVjb25lZ3VkYTogJyRhcmcnIgotCi0jOiBnaXQtYmlzZWN0LnNoOjEyNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJyRhcmcnIGRvZXMgbm90IGFwcGVhciB0byBiZSBhIHZhbGlkIHJldmlzaW9uIgotbXNnc3RyICInJGFyZycgbm8gc2VtYmxhIHVuYSByZXZpc2nDsyB2w6BsaWRhIgotCi0jOiBnaXQtYmlzZWN0LnNoOjE1NAotbXNnaWQgIkJhZCBIRUFEIC0gSSBuZWVkIGEgSEVBRCIKLW1zZ3N0ciAiSEVBRCBpbmNvcnJlY3RlIC0gQ2FsIHVuIEhFQUQiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTY3Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iQ2hlY2tpbmcgb3V0ICckc3RhcnRfaGVhZCcgZmFpbGVkLiBUcnkgJ2dpdCBiaXNlY3QgcmVzZXQgPHZhbGlkLWJyYW5jaD4nLiIKLW1zZ3N0ciAiIgotIkwnYWdhZmFtZW50IGRlICckc3RhcnRfaGVhZCcgaGEgZmFsbGF0LiBQcm92ZXUgJ2dpdCBiaXNlY3QgcmVzZXQgPGJyYW5jYS0iCi0idsOgbGlkYT4nLiIKLQotIzogZ2l0LWJpc2VjdC5zaDoxNzcKLW1zZ2lkICJ3b24ndCBiaXNlY3Qgb24gY2ctc2VlaydlZCB0cmVlIgotbXNnc3RyICJubyBlcyBiaXNlY2Fyw6AgZW4gdW4gYXJicmUgZW4gZWwgcXVhbCBzJ2hhIGZldCBjZy1zZWVrIgotCi0jOiBnaXQtYmlzZWN0LnNoOjE4MQotbXNnaWQgIkJhZCBIRUFEIC0gc3RyYW5nZSBzeW1ib2xpYyByZWYiCi1tc2dzdHIgIkhFQUQgaW5jb3JyZWN0ZSAtIHJlZmVyw6huY2lhIHNpbWLDsmxpY2EgZXN0cmFueWEiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MjMzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiAkc3RhdGUiCi1tc2dzdHIgIlBhcsOgbWV0cmUgYmlzZWN0X3dyaXRlIGluY29ycmVjdGU6ICRzdGF0ZSIKLQotIzogZ2l0LWJpc2VjdC5zaDoyNDYKKyM6IGdpdC1iaXNlY3Quc2g6MTAxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJCYWQgcmV2IGlucHV0OiAkYXJnIgogbXNnc3RyICJJbnRyb2R1Y2Npw7MgZGUgcmV2aXNpw7MgZXJyw7JuaWE6ICRhcmciCiAKLSM6IGdpdC1iaXNlY3Quc2g6MjY1CisjOiBnaXQtYmlzZWN0LnNoOjEyMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQmFkIHJldiBpbnB1dDogJGJpc2VjdGVkX2hlYWQiCiBtc2dzdHIgIkVudHJhZGEgZGUgcmV2aXNpw7MgZXJyw7JuaWE6ICRiaXNlY3RlZF9oZWFkIgogCi0jOiBnaXQtYmlzZWN0LnNoOjI3NAorIzogZ2l0LWJpc2VjdC5zaDoxMzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRyZXYiCiBtc2dzdHIgIkludHJvZHVjY2nDsyBkZSByZXZpc2nDsyBlcnLDsm5pYTogJHJldiIKIAotIzogZ2l0LWJpc2VjdC5zaDoyODMKKyM6IGdpdC1iaXNlY3Quc2g6MTM5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInZ2l0IGJpc2VjdCAkVEVSTV9CQUQnIGNhbiB0YWtlIG9ubHkgb25lIGFyZ3VtZW50LiIKIG1zZ3N0ciAiJ2dpdCBiaXNlY3QgJFRFUk1fQkFEJyBwb3QgYWNjZXB0YXIgbm9tw6lzIHVuIHBhcsOgbWV0cmUuIgogCi0jOiBnaXQtYmlzZWN0LnNoOjMwNgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiV2FybmluZzogYmlzZWN0aW5nIG9ubHkgd2l0aCBhICRURVJNX0JBRCBjb21taXQuIgotbXNnc3RyICJBZHZlcnTDqG5jaWE6IGJpc2VjYW50IGFtYiBub23DqXMgY29taXNzacOzICRURVJNX0JBRC4iCi0KLSMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbWV0gYW5kIFtuXSBpbiB5b3VyCi0jLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0Ci0jLiBhdCB0aGlzIHBvaW50LgotIzogZ2l0LWJpc2VjdC5zaDozMTIKLW1zZ2lkICJBcmUgeW91IHN1cmUgW1kvbl0/ICIKLW1zZ3N0ciAiTidlc3RldSBzZWd1ciBbWS9uXT8gIgotCi0jOiBnaXQtYmlzZWN0LnNoOjMyNAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICRiYWRfc3luIGFuZCBvbmUgJGdvb2Rfc3luIHJldmlzaW9uLlxuIgotIihZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJGJhZF9zeW5cIiBhbmQgXCJnaXQgYmlzZWN0ICRnb29kX3N5blwiIGZvciB0aGF0LikiCi1tc2dzdHIgIiIKLSJDYWwgZG9uYXItbWUgYWxtZW55cyB1bmEgcmV2aXNpw7MgJGJhZF9zeW4gaSB1bmEgJGdvb2Rfc3luLlxuIgotIihQb2RldSB1c2FyIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGkgXCJnaXQgYmlzZWN0ICRnb29kX3N5blwiIHBlciBhaXjDsi4pIgotCi0jOiBnaXQtYmlzZWN0LnNoOjMyNwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgotIllvdSB0aGVuIG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJGdvb2Rfc3luIGFuZCBvbmUgJGJhZF9zeW4gcmV2aXNpb24uXG4iCi0iKFlvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGFuZCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgZm9yIHRoYXQuKSIKLW1zZ3N0ciAiIgotIkNhbCBjb21lbsOnYXIgYW1iIFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgotIkRlc3Byw6lzIGNhbCBkb25hci1tZSBhbG1lbnlzIHVuYSByZXZpc2nDsyAkZ29vZF9zeW4gaSB1bmEgJGJhZF9zeW4uXG4iCi0iKFBvZGV1IHVzYXIgXCJnaXQgYmlzZWN0ICRiYWRfc3luXCIgaSBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgcGVyIGFpeMOyLikiCi0KLSM6IGdpdC1iaXNlY3Quc2g6Mzk4IGdpdC1iaXNlY3Quc2g6NTEyCi1tc2dpZCAiV2UgYXJlIG5vdCBiaXNlY3RpbmcuIgotbXNnc3RyICJObyBlc3RlbSBiaXNlY2FudC4iCi0KLSM6IGdpdC1iaXNlY3Quc2g6NDA1Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICInJGludmFsaWQnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIKLW1zZ3N0ciAiJyRpbnZhbGlkJyBubyDDqXMgdW5hIGNvbWlzc2nDsyB2w6BsaWRhIgotCi0jOiBnaXQtYmlzZWN0LnNoOjQxNAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIkNvdWxkIG5vdCBjaGVjayBvdXQgb3JpZ2luYWwgSEVBRCAnJGJyYW5jaCcuXG4iCi0iVHJ5ICdnaXQgYmlzZWN0IHJlc2V0IDxjb21taXQ+Jy4iCi1tc2dzdHIgIiIKLSJObyBzJ2hhIHBvZ3V0IGFnYWZhciBsYSBIRUFEIG9yaWdpbmFsICckYnJhbmNoJy5cbiIKLSJQcm92ZXUgJ2dpdCBiaXNlY3QgcmVzZXQgPGNvbWlzc2nDsz4nLiIKLQotIzogZ2l0LWJpc2VjdC5zaDo0MjIKKyM6IGdpdC1iaXNlY3Quc2g6MjA5CiBtc2dpZCAiTm8gbG9nZmlsZSBnaXZlbiIKIG1zZ3N0ciAiQ2FwIGZpdHhlciBkZSByZWdpc3RyZSBkb25hdCIKIAotIzogZ2l0LWJpc2VjdC5zaDo0MjMKKyM6IGdpdC1iaXNlY3Quc2g6MjEwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCAkZmlsZSBmb3IgcmVwbGF5aW5nIgogbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyICRmaWxlIHBlciBhIHJlcHJvZHVjY2nDsyIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NDQKKyM6IGdpdC1iaXNlY3Quc2g6MjMyCiBtc2dpZCAiPz8gd2hhdCBhcmUgeW91IHRhbGtpbmcgYWJvdXQ/IgogbXNnc3RyICI/PyBkZSBxdcOoIHBhcmxldT8iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDUzCisjOiBnaXQtYmlzZWN0LnNoOjI0MQogbXNnaWQgImJpc2VjdCBydW4gZmFpbGVkOiBubyBjb21tYW5kIHByb3ZpZGVkLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ1OAorIzogZ2l0LWJpc2VjdC5zaDoyNDYKICMsIHNoLWZvcm1hdAogbXNnaWQgInJ1bm5pbmcgJGNvbW1hbmQiCiBtc2dzdHIgInMnZXN0w6AgZXhlY3V0YW50ICRjb21tYW5kIgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ2NQorIzogZ2l0LWJpc2VjdC5zaDoyNTMKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJiaXNlY3QgcnVuIGZhaWxlZDpcbiIKQEAgLTE5NTUyLDExICsyMjc4OSwxMSBAQAogImVsIHBhcyBkZSBiaXNlY2Npw7MgaGEgZmFsbGF0OlxuIgogImVsIGNvZGkgZGUgc29ydGlkYSAkcmVzIGRlICckY29tbWFuZCcgw6lzIDwgMCBvID49IDEyOCIKIAotIzogZ2l0LWJpc2VjdC5zaDo0OTEKKyM6IGdpdC1iaXNlY3Quc2g6Mjc5CiBtc2dpZCAiYmlzZWN0IHJ1biBjYW5ub3QgY29udGludWUgYW55IG1vcmUiCiBtc2dzdHIgImVsIHBhcyBkZSBiaXNlY2Npw7Mgbm8gcG90IGNvbnRpbnVhciBtw6lzIgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ5NworIzogZ2l0LWJpc2VjdC5zaDoyODUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJiaXNlY3QgcnVuIGZhaWxlZDpcbiIKQEAgLTE5NTY1LDI4ICsyMjgwMiwxMyBAQAogImVsIHBhcyBkZSBiaXNlY2Npw7MgaGEgZmFsbGF0OlxuIgogIidiaXNlY3Rfc3RhdGUgJHN0YXRlJyBoYSBzb3J0aXQgYW1iIGVsIGNvZGkgZCdlcnJvciAkcmVzIgogCi0jOiBnaXQtYmlzZWN0LnNoOjUwNAorIzogZ2l0LWJpc2VjdC5zaDoyOTIKIG1zZ2lkICJiaXNlY3QgcnVuIHN1Y2Nlc3MiCiBtc2dzdHIgInBhcyBkZSBiaXNlY2Npw7MgcmVlaXhpdCIKIAotIzogZ2l0LWJpc2VjdC5zaDo1MzMKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkludmFsaWQgY29tbWFuZDogeW91J3JlIGN1cnJlbnRseSBpbiBhICRURVJNX0JBRC8kVEVSTV9HT09EIGJpc2VjdC4iCi1tc2dzdHIgIiIKLSJPcmRyZSBubyB2w6BsaWRhOiBhY3R1YWxtZW50IGVzdGV1IGVuIHVuYSBiaXNlY2Npw7MgJFRFUk1fQkFELyRURVJNX0dPT0QuIgotCi0jOiBnaXQtYmlzZWN0LnNoOjU2NwotbXNnaWQgIm5vIHRlcm1zIGRlZmluZWQiCi1tc2dzdHIgImNhcCB0ZXJtZSBkZWZpbml0IgotCi0jOiBnaXQtYmlzZWN0LnNoOjU4NAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotImludmFsaWQgYXJndW1lbnQgJGFyZyBmb3IgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgotIlN1cHBvcnRlZCBvcHRpb25zIGFyZTogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCBhbmQgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKLW1zZ3N0ciAiIgotInBhcsOgbWV0cmUgbm8gdsOgbGlkICRhcmcgcGVyIGEgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgotIkxlcyBvcGNpb25zIGFkbWVzZXMgc8OzbjogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCBpIC0tdGVybS1iYWR8LS10ZXJtLW5ldy4iCisjOiBnaXQtYmlzZWN0LnNoOjMwMAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLiIKK21zZ3N0ciAiTm8gZXN0ZW0gYmlzZWNhbnQuIgogCiAjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo0NgogbXNnaWQgIiIKQEAgLTE5NjI5LDI1OSArMjI4NTEsMTE1IEBACiBtc2dzdHIgIiIKICJMYSBmdXNpw7Mgc2ltcGxlIG5vIGhhIGZ1bmNpb25hdCwgcydlc3TDoCBpbnRlbnRhbnQgdW5hIGZ1c2nDsyBhdXRvbcOgdGljYS4iCiAKLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQyNgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IG1vdmUgYmFjayB0byAkaGVhZF9uYW1lIgotbXNnc3RyICJObyBzJ2hhIHBvZ3V0IHRvcm5hciBhICRoZWFkX25hbWUiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQ1MgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIkl0IHNlZW1zIHRoYXQgdGhlcmUgaXMgYWxyZWFkeSBhICRzdGF0ZV9kaXJfYmFzZSBkaXJlY3RvcnksIGFuZFxuIgotIkkgd29uZGVyIGlmIHlvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIHJlYmFzZS4gIElmIHRoYXQgaXMgdGhlXG4iCi0iY2FzZSwgcGxlYXNlIHRyeVxuIgotIlx0JGNtZF9saXZlX3JlYmFzZVxuIgotIklmIHRoYXQgaXMgbm90IHRoZSBjYXNlLCBwbGVhc2VcbiIKLSJcdCRjbWRfY2xlYXJfc3RhbGVfcmViYXNlXG4iCi0iYW5kIHJ1biBtZSBhZ2Fpbi4gIEkgYW0gc3RvcHBpbmcgaW4gY2FzZSB5b3Ugc3RpbGwgaGF2ZSBzb21ldGhpbmdcbiIKLSJ2YWx1YWJsZSB0aGVyZS4iCi1tc2dzdHIgIiIKLSJTZW1ibGEgcXVlIGphIGhpIGhhIHVuIGRpcmVjdG9yaSAkc3RhdGVfZGlyX2Jhc2UsIGlcbiIKLSJlbSBwcmVndW50byBzaSBlc3RldSBlbm1pZyBkJ3VuIGFsdHJlIMKrcmViYXNlwrsuIFNpIGFxdWVzdCDDqXMgZWxcbiIKLSJjYXMsIHByb3ZldVxuIgotIlx0JGNtZF9saXZlX3JlYmFzZVxuIgotIlNpIG5vIMOpcyBlbCBjYXMsIFxuIgotIlx0JGNtZF9jbGVhcl9zdGFsZV9yZWJhc2VcbiIKLSJpIGV4ZWN1dGV1LW1lIGRlIG5vdS4gTSdhdHVybyBwZXIgc2kgZW5jYXJhIGhpIHRlbml1IGFsZ3VuYSBjb3NhXG4iCi0iZGUgdmFsb3IuIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1MTcKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tc2lnbm9mZicgd2l0aCAnLS1wcmVzZXJ2ZS1tZXJnZXMnIgotbXNnc3RyICIiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU2MgotIywgZnV6enksIHNoLWZvcm1hdAotbXNnaWQgImludmFsaWQgdXBzdHJlYW0gJyR1cHN0cmVhbV9uYW1lJyIKLW1zZ3N0ciAiZm9udCBubyB2w6BsaWRhICR1cHN0cmVhbV9uYW1lIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1ODYKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiRvbnRvX25hbWU6IHRoZXJlIGFyZSBtb3JlIHRoYW4gb25lIG1lcmdlIGJhc2VzIgotbXNnc3RyICIkb250b19uYW1lOiBqYSBoaSBoYSBtw6lzIGQndW5hIGJhc2UgZGUgZnVzacOzIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1ODkgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTkzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICIkb250b19uYW1lOiB0aGVyZSBpcyBubyBtZXJnZSBiYXNlIgotbXNnc3RyICIkb250b19uYW1lOiBubyBoaSBoYSBjYXAgYmFzZSBkZSBmdXNpw7MiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU5OAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBjb21taXQ6ICRvbnRvX25hbWUiCi1tc2dzdHIgIk5vIGFzc2VueWFsYSB1bmEgY29taXNzacOzIHbDoGxpZGE6ICRvbnRvX25hbWUiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjYyNAotIywgZnV6enksIHNoLWZvcm1hdAotbXNnaWQgImZhdGFsOiBubyBzdWNoIGJyYW5jaC9jb21taXQgJyRicmFuY2hfbmFtZSciCi1tc2dzdHIgImZhdGFsOiBubyBoaSBoYSB0YWwgYnJhbmNhOiAkYnJhbmNoX25hbWUiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjY2MgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ3JlYXRlZCBhdXRvc3Rhc2g6ICRzdGFzaF9hYmJyZXYiCi1tc2dzdHIgIlMnaGEgY3JlYXQgdW4gbWFnYXR6ZW0gYXV0b23DoHRpYzogJHN0YXNoX2FiYnJldiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjkxCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDdXJyZW50IGJyYW5jaCAkYnJhbmNoX25hbWUgaXMgdXAgdG8gZGF0ZS4iCi1tc2dzdHIgIkxhIGJyYW5jYSBhY3R1YWwgJGJyYW5jaF9uYW1lIGVzdMOgIGFsIGRpYS4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjcwMQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgotbXNnc3RyICJMYSBicmFuY2EgYWN0dWFsICRicmFuY2hfbmFtZSBlc3TDoCBhbCBkaWE7IMKrcmViYXNlwrsgZm9yw6dhdC4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjcxMwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ2hhbmdlcyBmcm9tICRtYiB0byAkb250bzoiCi1tc2dzdHIgIkNhbnZpcyBkZSAkbWIgYSAkb250bzoiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjcyMgotbXNnaWQgIkZpcnN0LCByZXdpbmRpbmcgaGVhZCB0byByZXBsYXkgeW91ciB3b3JrIG9uIHRvcCBvZiBpdC4uLiIKLW1zZ3N0ciAiIgotIlByaW1lciwgcydlc3TDoCByZWJvYmluYW50IEhFQUQgcGVyIGEgcmVwcm9kdWlyIGVsIHZvc3RyZSB0cmViYWxsIGFsIGRhbXVudC4uLiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzMyCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJGYXN0LWZvcndhcmRlZCAkYnJhbmNoX25hbWUgdG8gJG9udG9fbmFtZS4iCi1tc2dzdHIgIlMnaGEgYXZhbsOnYXQgJGJyYW5jaF9uYW1lIHLDoHBpZGFtZW50IGEgJG9udG9fbmFtZS4iCi0KLSM6IGdpdC1zdGFzaC5zaDo2MQotbXNnaWQgImdpdCBzdGFzaCBjbGVhciB3aXRoIHBhcmFtZXRlcnMgaXMgdW5pbXBsZW1lbnRlZCIKLW1zZ3N0ciAiZ2l0IHN0YXNoIGNsZWFyIGFtYiBwYXLDoG1ldHJlcyBubyBlc3TDoCBpbXBsZW1lbnRhdCIKLQotIzogZ2l0LXN0YXNoLnNoOjEwOAotbXNnaWQgIllvdSBkbyBub3QgaGF2ZSB0aGUgaW5pdGlhbCBjb21taXQgeWV0IgotbXNnc3RyICJFbmNhcmEgbm8gdGVuaXUgbGEgY29taXNzacOzIGluaWNpYWwiCi0KLSM6IGdpdC1zdGFzaC5zaDoxMjMKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBpbmRleCBzdGF0ZSIKLW1zZ3N0ciAiTm8gZXMgcG90IGRlc2FyIGwnZXN0YXQgZCfDrW5kZXggYWN0dWFsIgotCi0jOiBnaXQtc3Rhc2guc2g6MTM4Ci1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIHVudHJhY2tlZCBmaWxlcyIKLW1zZ3N0ciAiTm8gZXMgcG9kZW4gZGVzYXIgZWxzIGZpdHhlcnMgbm8gc2VndWl0cyIKLQotIzogZ2l0LXN0YXNoLnNoOjE1OCBnaXQtc3Rhc2guc2g6MTcxCi1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgd29ya3RyZWUgc3RhdGUiCi1tc2dzdHIgIk5vIGVzIHBvdCBkZXNhciBsJ2VzdGF0IGQnYXJicmUgZGUgdHJlYmFsbCBhY3R1YWwiCi0KLSM6IGdpdC1zdGFzaC5zaDoxNzUKLW1zZ2lkICJObyBjaGFuZ2VzIHNlbGVjdGVkIgotbXNnc3RyICJObyBoaSBoYSBjYW52aXMgc2VsZWNjaW9uYXRzIgotCi0jOiBnaXQtc3Rhc2guc2g6MTc4CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIyMQogbXNnaWQgIkNhbm5vdCByZW1vdmUgdGVtcG9yYXJ5IGluZGV4IChjYW4ndCBoYXBwZW4pIgogbXNnc3RyICJObyBlcyBwb3QgZWxpbWluYXIgbCfDrW5kZXggdGVtcG9yYWwgKGFpeMOyIG5vIHBvdCBwYXNzYXIpIgogCi0jOiBnaXQtc3Rhc2guc2g6MTkxCi1tc2dpZCAiQ2Fubm90IHJlY29yZCB3b3JraW5nIHRyZWUgc3RhdGUiCi1tc2dzdHIgIk5vIGVzIHBvdCByZWdpc3RyYXIgbCdlc3RhdCBkZSBsJ2FyYnJlIGRlIHRyZWJhbGwiCi0KLSM6IGdpdC1zdGFzaC5zaDoyMjkKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjcyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgdXBkYXRlICRyZWZfc3Rhc2ggd2l0aCAkd19jb21taXQiCiBtc2dzdHIgIk5vIGVzIHBvdCBhY3R1YWxpdHphciAkcmVmX3N0YXNoIGFtYiAkd19jb21taXQiCiAKLSM6IGdpdC1zdGFzaC5zaDoyODEKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MzI0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJlcnJvcjogdW5rbm93biBvcHRpb24gZm9yICdzdGFzaCBwdXNoJzogJG9wdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc3Rhc2guc2g6Mjk1Ci1tc2dpZCAiQ2FuJ3QgdXNlIC0tcGF0Y2ggYW5kIC0taW5jbHVkZS11bnRyYWNrZWQgb3IgLS1hbGwgYXQgdGhlIHNhbWUgdGltZSIKLW1zZ3N0ciAiTm8gZXMgcG9kZW4gdXNhciAtLXBhdGNoIGkgLS1pbmNsdWRlLXVudHJhY2tlZCBvIC0tYWxsIGEgbGEgdmVnYWRhLiIKLQotIzogZ2l0LXN0YXNoLnNoOjMwMwotbXNnaWQgIk5vIGxvY2FsIGNoYW5nZXMgdG8gc2F2ZSIKLW1zZ3N0ciAiTm8gaGkgaGEgY2FudmlzIGxvY2FscyBhIGRlc2FyIgotCi0jOiBnaXQtc3Rhc2guc2g6MzA4Ci1tc2dpZCAiQ2Fubm90IGluaXRpYWxpemUgc3Rhc2giCi1tc2dzdHIgIk5vIGVzIHBvdCBpbmljaWFsaXR6YXIgZWwgbWFnYXR6ZW0iCi0KLSM6IGdpdC1zdGFzaC5zaDozMTIKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBzdGF0dXMiCi1tc2dzdHIgIk5vIGVzIHBvdCBkZXNhciBsJ2VzdGF0IGFjdHVhbCIKLQotIzogZ2l0LXN0YXNoLnNoOjMxMworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlNhdmVkIHdvcmtpbmcgZGlyZWN0b3J5IGFuZCBpbmRleCBzdGF0ZSAkc3Rhc2hfbXNnIgogbXNnc3RyICJTJ2hhbiBkZXNhdCBlbCBkaXJlY3RvcmkgZGUgdHJlYmFsbCBpIGwnZXN0YXQgZCfDrW5kZXggJHN0YXNoX21zZyIKIAotIzogZ2l0LXN0YXNoLnNoOjM0MgotbXNnaWQgIkNhbm5vdCByZW1vdmUgd29ya3RyZWUgY2hhbmdlcyIKLW1zZ3N0ciAiTm8gZXMgcG9kZW4gZWxpbWluYXIgZWxzIGNhbnZpcyBkZSBsJ2FyYnJlIGRlIHRyZWJhbGwiCi0KLSM6IGdpdC1zdGFzaC5zaDo0OTAKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NTM2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG9wdGlvbjogJG9wdCIKIG1zZ3N0ciAib3BjacOzIGRlc2NvbmVndWRhOiAkb3B0IgogCi0jOiBnaXQtc3Rhc2guc2g6NTAzCi1tc2dpZCAiTm8gc3Rhc2ggZW50cmllcyBmb3VuZC4iCi1tc2dzdHIgIk5vIHMnaGEgdHJvYmF0IGNhcCDCq3N0YXNowrsuIgotCi0jOiBnaXQtc3Rhc2guc2g6NTEwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU1NgogIywgc2gtZm9ybWF0CiBtc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDogJFJFViIKIG1zZ3N0ciAiUydoYW4gZXNwZWNpZmljYXQgbWFzc2EgcmV2aXNpb25zOiAkUkVWIgogCi0jOiBnaXQtc3Rhc2guc2g6NTI1CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU3MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJHJlZmVyZW5jZSBpcyBub3QgYSB2YWxpZCByZWZlcmVuY2UiCiBtc2dzdHIgIiRyZWZlcmVuY2Ugbm8gw6lzIHVuYSByZWZlcsOobmNpYSB2w6BsaWRhIgogCi0jOiBnaXQtc3Rhc2guc2g6NTUzCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU5OQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRhcmdzJyBpcyBub3QgYSBzdGFzaC1saWtlIGNvbW1pdCIKIG1zZ3N0ciAiJyRhcmdzJyBubyDDqXMgdW5hIGNvbWlzc2nDsyBkZSB0aXB1cyBtYWdhdHplbSIKIAotIzogZ2l0LXN0YXNoLnNoOjU2NAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MTAKICMsIHNoLWZvcm1hdAogbXNnaWQgIickYXJncycgaXMgbm90IGEgc3Rhc2ggcmVmZXJlbmNlIgogbXNnc3RyICInJGFyZ3MnIG5vIMOpcyB1bmEgcmVmZXLDqG5jaWEgZGUgbWFnYXR6ZW0iCiAKLSM6IGdpdC1zdGFzaC5zaDo1NzIKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjE4CiBtc2dpZCAidW5hYmxlIHRvIHJlZnJlc2ggaW5kZXgiCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgYWN0dWFsaXR6YXIgbCfDrW5kZXgiCiAKLSM6IGdpdC1zdGFzaC5zaDo1NzYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjIyCiBtc2dpZCAiQ2Fubm90IGFwcGx5IGEgc3Rhc2ggaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIgogbXNnc3RyICJObyBlcyBwb3QgYXBsaWNhciB1biBtYWdhdHplbSBlbm1pZyBkJ3VuYSBmdXNpw7MiCiAKLSM6IGdpdC1zdGFzaC5zaDo1ODQKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjMwCiBtc2dpZCAiQ29uZmxpY3RzIGluIGluZGV4LiBUcnkgd2l0aG91dCAtLWluZGV4LiIKIG1zZ3N0ciAiSGkgaGEgY29uZmxpY3RlcyBlbiBsJ8OtbmRleC4gUHJvdmV1LWhvIHNlbnNlIC0taW5kZXguIgogCi0jOiBnaXQtc3Rhc2guc2g6NTg2CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYzMgogbXNnaWQgIkNvdWxkIG5vdCBzYXZlIGluZGV4IHRyZWUiCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgZGVzYXIgbCdhcmJyZSBkJ8OtbmRleCIKIAotIzogZ2l0LXN0YXNoLnNoOjU5NQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2NDEKIG1zZ2lkICJDb3VsZCBub3QgcmVzdG9yZSB1bnRyYWNrZWQgZmlsZXMgZnJvbSBzdGFzaCBlbnRyeSIKIG1zZ3N0ciAiTm8gcydoYW4gcG9ndXQgcmVzdGF1cmFyIGVscyBmaXR4ZXJzIG5vIHNlZ3VpdHMgZGVzIGRlbCDCq3N0YXNowrsiCiAKLSM6IGdpdC1zdGFzaC5zaDo2MjAKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjY2CiBtc2dpZCAiQ2Fubm90IHVuc3RhZ2UgbW9kaWZpZWQgZmlsZXMiCiBtc2dzdHIgIk5vIGVzIHBvdCBmZXIgwqt1bnN0YWdlwrsgZGVscyBmaXR4ZXJzIG1vZGlmaWNhdHMiCiAKLSM6IGdpdC1zdGFzaC5zaDo2MzUKLW1zZ2lkICJJbmRleCB3YXMgbm90IHVuc3Rhc2hlZC4iCi1tc2dzdHIgIkwnw61uZGV4IG5vIGVzdGF2YSBzZW5zZSBlbW1hZ2F0emVtYXIuIgotCi0jOiBnaXQtc3Rhc2guc2g6NjQ5Ci1tc2dpZCAiVGhlIHN0YXNoIGVudHJ5IGlzIGtlcHQgaW4gY2FzZSB5b3UgbmVlZCBpdCBhZ2Fpbi4iCi1tc2dzdHIgIkVzIGNvbnNlcnZhIGwnZW50cmFkYSDCq3N0YXNowrsgZW4gY2FzIHF1ZSBsYSBuZWNlc3NpdGV1IGFsdHJhIHZlZ2FkYS4iCi0KLSM6IGdpdC1zdGFzaC5zaDo2NTgKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzA0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJEcm9wcGVkICR7UkVWfSAoJHMpIgogbXNnc3RyICIke1JFVn0gKCRzKSBkZXNjYXJ0YWRhIgogCi0jOiBnaXQtc3Rhc2guc2g6NjU5CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjcwNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJHtSRVZ9OiBDb3VsZCBub3QgZHJvcCBzdGFzaCBlbnRyeSIKIG1zZ3N0ciAiJHtSRVZ9OiBObyBzJ2hhIHBvZ3V0IGRlc2NhcnRhciBsJ2VudHJhZGEgZGUgbWFnYXR6ZW0iCiAKLSM6IGdpdC1zdGFzaC5zaDo2NjcKLW1zZ2lkICJObyBicmFuY2ggbmFtZSBzcGVjaWZpZWQiCi1tc2dzdHIgIkNhcCBub20gZGUgYnJhbmNhIGVzcGVjaWZpY2F0IgotCi0jOiBnaXQtc3Rhc2guc2g6NzQ2CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjc5MgogbXNnaWQgIihUbyByZXN0b3JlIHRoZW0gdHlwZSBcImdpdCBzdGFzaCBhcHBseVwiKSIKIG1zZ3N0ciAiKFBlciByZXN0YXVyYXItbGVzIHRlY2xlZ2V1IFwiZ2l0IHN0YXNoIGFwcGx5XCIpIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjE5OAorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMDIKIG1zZ2lkICJSZWxhdGl2ZSBwYXRoIGNhbiBvbmx5IGJlIHVzZWQgZnJvbSB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiIgogIkVsIGNhbcOtIHJlbGF0aXUgbm9tw6lzIGVzIHBvdCB1c2FyIGRlcyBkZWwgbml2ZWxsIHN1cGVyaW9yIGRlIGwnYXJicmUgZGUgIgogInRyZWJhbGwiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjA4CisjOiBnaXQtc3VibW9kdWxlLnNoOjIxMgogIywgc2gtZm9ybWF0CiBtc2dpZCAicmVwbyBVUkw6ICckcmVwbycgbXVzdCBiZSBhYnNvbHV0ZSBvciBiZWdpbiB3aXRoIC4vfC4uLyIKIG1zZ3N0ciAiVVJMIGRlIGRpcMOyc2l0OiAnJHJlcG8nIGhhIGRlIHNlciBhYnNvbHV0IG8gY29tZW7Dp2FyIGFtYiAuL3wuLi8iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjI3CisjOiBnaXQtc3VibW9kdWxlLnNoOjIzMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXgiCiBtc2dzdHIgIickc21fcGF0aCcgamEgZXhpc3RlaXggZW4gbCfDrW5kZXgiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjMwCisjOiBnaXQtc3VibW9kdWxlLnNoOjIzNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXggYW5kIGlzIG5vdCBhIHN1Ym1vZHVsZSIKIG1zZ3N0ciAiJyRzbV9wYXRoJyBqYSBleGlzdGVpeCBlbiBsJ8OtbmRleCBpIG5vIMOpcyBzdWJtw7JkdWwiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjM2CisjOiBnaXQtc3VibW9kdWxlLnNoOjI0MQorIywgZnV6enksIHNoLWZvcm1hdAorbXNnaWQgIickc21fcGF0aCcgZG9lcyBub3QgaGF2ZSBhIGNvbW1pdCBjaGVja2VkIG91dCIKK21zZ3N0ciAiZWwgY2Ftw60gwqslc8K7IG5vIHTDqSBsYSBzZXZhIHZlcnNpw7MiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjQ3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyBwYXRoIGlzIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczpcbiIKQEAgLTE5ODkyLDIzICsyMjk3MCwyMyBAQAogIiRzbV9wYXRoXG4iCiAiVXNldSAtZiBzaSByZWFsbWVudCB2b2xldSBhZmVnaXItbG8uIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI1OQorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIkFkZGluZyBleGlzdGluZyByZXBvIGF0ICckc21fcGF0aCcgdG8gdGhlIGluZGV4IgogbXNnc3RyICJTJ2VzdMOgIGFmZWdpbnQgZWwgZGlww7JzaXQgZXhpc3RlbnQgYSAnJHNtX3BhdGgnIGEgbCfDrW5kZXgiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjYxCisjOiBnaXQtc3VibW9kdWxlLnNoOjI3MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBhbmQgaXMgbm90IGEgdmFsaWQgZ2l0IHJlcG8iCiBtc2dzdHIgIickc21fcGF0aCcgamEgZXhpc3RlaXggaSBubyDDqXMgdW4gZGlww7JzaXQgZGUgZ2l0IHbDoGxpZCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNjkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjgwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJBIGdpdCBkaXJlY3RvcnkgZm9yICckc21fbmFtZScgaXMgZm91bmQgbG9jYWxseSB3aXRoIHJlbW90ZShzKToiCiBtc2dzdHIgIiIKICJFcyB0cm9iYSB1biBkaXJlY3RvcmkgZGUgZ2l0IHBlciBhICckc21fbmFtZScgbG9jYWxtZW50IGFtYiBlbHMgcmVtb3RzOiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzEKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjgyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiSWYgeW91IHdhbnQgdG8gcmV1c2UgdGhpcyBsb2NhbCBnaXQgZGlyZWN0b3J5IGluc3RlYWQgb2YgY2xvbmluZyBhZ2FpbiBmcm9tXG4iCkBAIC0xOTkyNSwzOSArMjMwMDMsMzkgQEAKICJvIG5vIGVzdGV1IHNlZ3VyIGRlIHF1w6ggdm9sIGRpciBhaXjDsiwgdHJpZXUgdW4gYWx0cmUgbm9tIGFtYiBsJ29wY2nDsyAnLS0iCiAibmFtZScuIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI3NworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyODgKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYWN0aXZhdGluZyBsb2NhbCBnaXQgZGlyZWN0b3J5IGZvciBzdWJtb2R1bGUgJyRzbV9uYW1lJy4iCiBtc2dzdHIgIiIKICJTJ2VzdMOgIHJlYWN0aXZhbnQgZWwgZGlyZWN0b3JpIGRlIGdpdCBsb2NhbCBwZXIgYWwgc3VibcOyZHVsICckc21fbmFtZScuIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI4OQorIzogZ2l0LXN1Ym1vZHVsZS5zaDozMDAKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBjaGVja291dCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBhZ2FmYXIgZWwgc3VibcOyZHVsICckc21fcGF0aCciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6Mjk0CisjOiBnaXQtc3VibW9kdWxlLnNoOjMwNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGFkZCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBhZmVnaXIgZWwgc3VibcOyZHVsICckc21fcGF0aCciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MzAzCisjOiBnaXQtc3VibW9kdWxlLnNoOjMxNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHJlZ2lzdHJhciBlbCBzdWJtw7JkdWwgJyRzbV9wYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NjMKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NTgwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gZmluZCBjdXJyZW50IHJldmlzaW9uIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICIiCiAiTm8gcydoYSBwb2d1dCB0cm9iYXIgbGEgcmV2aXNpw7MgYWN0dWFsIGVuIGVsIGNhbcOtIGRlIHN1Ym3DsmR1bCAnJGRpc3BsYXlwYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NzMKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NTkwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJyRzbV9wYXRoJyIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBvYnRlbmlyIGVuIGVsIGNhbcOtIGRlIHN1Ym3DsmR1bCAnJHNtX3BhdGgnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU3OAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo1OTUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJVbmFibGUgdG8gZmluZCBjdXJyZW50ICR7cmVtb3RlX25hbWV9LyR7YnJhbmNofSByZXZpc2lvbiBpbiBzdWJtb2R1bGUgcGF0aCAiCkBAIC0xOTk2Niw5MCArMjMwNDQsOTQgQEAKICJObyBzJ2hhIHBvZ3V0IHRyb2JhciBsYSByZXZpc2nDsyBhY3R1YWwgZGUgJHtyZW1vdGVfbmFtZX0vJHticmFuY2h9IGVuIGVsICIKICJjYW3DrSBkZSBzdWJtw7JkdWwgJyRzbV9wYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1OTYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjEzCiAjLCBzaC1mb3JtYXQKLW1zZ2lkICJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCi1tc2dzdHIgIk5vIHMnaGEgcG9ndXQgb2J0ZW5pciBlbiBlbCBjYW3DrSBkZSBzdWJtw7JkdWwgJyRkaXNwbGF5cGF0aCciCittc2dpZCAiIgorIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzsgdHJ5aW5nIHRvIGRpcmVjdGx5IGZldGNoICIKKyIkc2hhMToiCittc2dzdHIgIiIKKyJObyBzJ2hhIHBvZ3V0IG9idGVuaXIgZW4gZWwgY2Ftw60gZGUgc3VibcOyZHVsIMKrJGRpc3BsYXlwYXRowrs7IHMnZXN0w6AgIgorImludGVudGFudCBvYnRlbmlyIGRpcmVjdGFtZW50ICRzaGExOiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDIKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjE5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiRmV0Y2hlZCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJywgYnV0IGl0IGRpZCBub3QgY29udGFpbiAkc2hhMS4gIgogIkRpcmVjdCBmZXRjaGluZyBvZiB0aGF0IGNvbW1pdCBmYWlsZWQuIgogbXNnc3RyICIiCi0iUydoYSBvYnRpbmd1dCBlbiBlbCBjYW3DrSBkZSBzdWJtw7JkdWwgJyRkaXNwbGF5cGF0aCcsIHBlcsOyIG5vIGNvbnRlbmlhICRzaGExLiAiCisiUydoYSBvYnRpbmd1dCBlbiBlbCBjYW3DrSBkZSBzdWJtw7JkdWwgwqskZGlzcGxheXBhdGjCuywgcGVyw7Igbm8gY29udGVuaWEgJHNoYTEuICIKICJMJ29idGVuY2nDsyBkaXJlY3RhIGQnYXF1ZWxsYSBjb21pc3Npw7MgaGEgZmFsbGF0LiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDkKLSMsIHNoLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBjaGVja291dCAnJHNoYTEnIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgotbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGFnYWZhciAnJHNoYTEnIGVuIGVsIGNhbcOtIGRlIHN1Ym3DsmR1bCAnJGRpc3BsYXlwYXRoJyIKLQotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MTAKLSMsIHNoLWZvcm1hdAotbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiBjaGVja2VkIG91dCAnJHNoYTEnIgotbXNnc3RyICJDYW3DrSBkZSBzdWJtw7JkdWwgJyRkaXNwbGF5cGF0aCc6IHMnaGEgYWdhZmF0ICckc2hhMSciCi0KLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjE0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJVbmFibGUgdG8gcmViYXNlICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCi1tc2dzdHIgIiIKLSJObyBzJ2hhIHBvZ3V0IGZlciDCq3JlYmFzZcK7ICckc2hhMScgZW4gZWwgY2Ftw60gZGUgc3VibcOyZHVsICckZGlzcGxheXBhdGgnIgotCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYxNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IHJlYmFzZWQgaW50byAnJHNoYTEnIgotbXNnc3RyICJDYW3DrSBkZSBzdWJtw7JkdWwgJyRkaXNwbGF5cGF0aCc6IHMnaGEgZmV0IMKrcmViYXNlwrsgZW4gJyRzaGExJyIKLQotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjAKLSMsIHNoLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBtZXJnZSAnJHNoYTEnIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgotbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGZ1c2lvbmFyICckc2hhMScgZW4gZWwgY2Ftw60gZGUgc3VibcOyZHVsICckZGlzcGxheXBhdGgnIgotCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYyMQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IG1lcmdlZCBpbiAnJHNoYTEnIgotbXNnc3RyICJDYW3DrSBkZSBzdWJtw7JkdWwgJyRkaXNwbGF5cGF0aCc6IHMnaGEgZnVzaW9uYXQgZW4gJyRzaGExJyIKLQogIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjYKICMsIHNoLWZvcm1hdAotbXNnaWQgIkV4ZWN1dGlvbiBvZiAnJGNvbW1hbmQgJHNoYTEnIGZhaWxlZCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKLW1zZ3N0ciAiIgotIkwnZXhlY3VjacOzIGRlICckY29tbWFuZCAkc2hhMScgaGEgZmFsbGF0IGVuIGVsIGNhbcOtIGRlIHN1Ym3DsmR1bCAiCi0iJyRkaXNwbGF5cGF0aCciCittc2dpZCAiVW5hYmxlIHRvIGNoZWNrb3V0ICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCittc2dzdHIgIk5vIHMnaGEgcG9ndXQgYWdhZmFyIMKrJHNoYTHCuyBlbiBlbCBjYW3DrSBkZSBzdWJtw7JkdWwgwqskZGlzcGxheXBhdGjCuyIKIAogIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjcKICMsIHNoLWZvcm1hdAotbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiAnJGNvbW1hbmQgJHNoYTEnIgotbXNnc3RyICJDYW3DrSBkZSBzdWJtw7JkdWwgJyRkaXNwbGF5cGF0aCc6ICckY29tbWFuZCAkc2hhMSciCittc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IGNoZWNrZWQgb3V0ICckc2hhMSciCittc2dzdHIgIkNhbcOtIGRlIHN1Ym3DsmR1bCDCqyRkaXNwbGF5cGF0aMK7OiBzJ2hhIGFnYWZhdCDCqyRzaGExwrsiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjU4CisjOiBnaXQtc3VibW9kdWxlLnNoOjYzMQorIywgc2gtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIHJlYmFzZSAnJHNoYTEnIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgorbXNnc3RyICIiCisiTm8gcydoYSBwb2d1dCBmZXIgwqtyZWJhc2XCuyDCqyRzaGExwrsnIGVuIGVsIGNhbcOtIGRlIHN1Ym3DsmR1bCDCqyRkaXNwbGF5cGF0aMK7IgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjYzMgorIywgc2gtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IHJlYmFzZWQgaW50byAnJHNoYTEnIgorbXNnc3RyICJDYW3DrSBkZSBzdWJtw7JkdWwgwqskZGlzcGxheXBhdGjCuzogcydoYSBmZXQgwqtyZWJhc2XCuyBlbiDCqyRzaGExwrsiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjM3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gbWVyZ2UgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKK21zZ3N0ciAiTm8gcydoYSBwb2d1dCBmdXNpb25hciDCqyRzaGExwrsgZW4gZWwgY2Ftw60gZGUgc3VibcOyZHVsIMKrJGRpc3BsYXlwYXRowrsiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjM4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogbWVyZ2VkIGluICckc2hhMSciCittc2dzdHIgIkNhbcOtIGRlIHN1Ym3DsmR1bCDCqyRkaXNwbGF5cGF0aMK7OiBzJ2hhIGZ1c2lvbmF0IGVuIMKrJHNoYTHCuyIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkV4ZWN1dGlvbiBvZiAnJGNvbW1hbmQgJHNoYTEnIGZhaWxlZCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKK21zZ3N0ciAiIgorIkwnZXhlY3VjacOzIGRlIMKrJGNvbW1hbmQgJHNoYTHCuyBoYSBmYWxsYXQgZW4gZWwgY2Ftw60gZGUgc3VibcOyZHVsICIKKyLCqyRkaXNwbGF5cGF0aMK7IgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjY0NAorIywgc2gtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6ICckY29tbWFuZCAkc2hhMSciCittc2dzdHIgIkNhbcOtIGRlIHN1Ym3DsmR1bCDCqyRkaXNwbGF5cGF0aMK7OiDCqyRjb21tYW5kICRzaGExwrsiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Njc1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICIiCiAiUydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiByZWNvcnJlIHJlY3Vyc2l2YW1lbnQgZGlucyBkZWwgY2Ftw60gZGUgc3VibcOyZHVsICIKLSInJGRpc3BsYXlwYXRoJyIKKyLCqyRkaXNwbGF5cGF0aMK7IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjc1NAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo4ODYKIG1zZ2lkICJUaGUgLS1jYWNoZWQgb3B0aW9uIGNhbm5vdCBiZSB1c2VkIHdpdGggdGhlIC0tZmlsZXMgb3B0aW9uIgogbXNnc3RyICJMJ29wY2nDsyAtLWNhY2hlZCBubyBlcyBwb3QgdXNhciBhbWIgbCdvcGNpw7MgLS1maWxlcyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MDYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTM4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG1vZGUgJG1vZF9kc3QiCiBtc2dzdHIgIm1vZGUgaW5lc3BlcmF0ICRtb2RfZHN0IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjgyNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NTgKICMsIHNoLWZvcm1hdAogbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX3NyYyIKIG1zZ3N0ciAiICBBdsOtczogJGRpc3BsYXlfbmFtZSBubyBjb250w6kgbGEgY29taXNzacOzICRzaGExX3NyYyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MjkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTYxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdCAkc2hhMV9kc3QiCiBtc2dzdHIgIiAgQXbDrXM6ICRkaXNwbGF5X25hbWUgbm8gY29udMOpIGxhIGNvbWlzc2nDsyAkc2hhMV9kc3QiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODMyCisjOiBnaXQtc3VibW9kdWxlLnNoOjk2NAogIywgc2gtZm9ybWF0CiBtc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXRzICRzaGExX3NyYyBhbmQgJHNoYTFfZHN0IgogbXNnc3RyICIgIEF2w61zOiAkZGlzcGxheV9uYW1lIG5vIGNvbnTDqSBsZXMgY29taXNzaW9ucyAkc2hhMV9zcmMgaSAkc2hhMV9kc3QiCkBAIC0yMDA1OSwxMiArMjMxNDEsMjEgQEAKIG1zZ2lkICJTZWUgZ2l0LSR7Y21kfSgxKSBmb3IgZGV0YWlscy4iCiBtc2dzdHIgIlZlZ2V1IGdpdC0ke2NtZH0oMSkgcGVyIGRldGFsbHMuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTM2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTA5Cittc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guIgorbXNnc3RyICJTJ2hhIGFwbGljYXQgbCfCq2F1dG9zdGFzaMK7LiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjExMgorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN0b3JlICRzdGFzaF9zaGExIgorbXNnc3RyICJObyBlcyBwb3QgZW1tYWdhdHplbWFyICRzdGFzaF9zaGExIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJSZWJhc2luZyAoJG5ld19jb3VudC8kdG90YWwpIgogbXNnc3RyICJTJ2VzdMOgIGZlbnQgwqtyZWJhc2XCuyAoJG5ld19jb3VudC8kdG90YWwpIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTUyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjA3CiAjLCBmdXp6eQogbXNnaWQgIiIKICJcbiIKQEAgLTIwMDg3LDExICsyMzE3OCwxMSBAQAogbXNnc3RyICIiCiAiXG4iCiAiT3JkcmVzOlxuIgotIiBwLCBwaWNrID0gdXNhIGxhIGNvbWlzc2nDs1xuIgotIiByLCByZXdvcmQgPSB1c2EgbGEgY29taXNzacOzLCBwZXLDsiBlZGl0YSBlbCBtaXNzYXRnZSBkZSBjb21pc3Npw7NcbiIKLSIgZSwgZWRpdCA9IHVzYSBsYSBjb21pc3Npw7MsIHBlcsOyIGF0dXJhJ3QgcGVyIGEgZXNtZW5hclxuIgotIiBzLCBzcXVhc2ggPSB1c2EgbGEgY29taXNzacOzLCBwZXLDsiBmdXNpb25hJ2wgYSBsYSBjb21pc3Npw7MgcHLDqHZpYVxuIgotIiBmLCBmaXh1cCA9IGNvbSBcInNxdWFzaFwiLCBwZXLDsiBkZXNjYXJ0YSBlbCBtaXNzYXRnZSBkZSByZWdpc3RyZSBkJ2FxdWVzdGEgIgorIiBwLCBwaWNrIDxjb21pc3Npw7M+ID0gdXNhIGxhIGNvbWlzc2nDs1xuIgorIiByLCByZXdvcmQgPGNvbWlzc2nDsz4gPSB1c2EgbGEgY29taXNzacOzLCBwZXLDsiBlZGl0YSBlbCBtaXNzYXRnZSBkZSBjb21pc3Npw7NcbiIKKyIgZSwgZWRpdCA8Y29taXNzacOzPiA9IHVzYSBsYSBjb21pc3Npw7MsIHBlcsOyIGF0dXJhJ3QgcGVyIGEgZXNtZW5hclxuIgorIiBzLCBzcXVhc2ggPGNvbWlzc2nDsz4gPSB1c2EgbGEgY29taXNzacOzLCBwZXLDsiBmdXNpb25hJ2wgYSBsYSBjb21pc3Npw7MgcHLDqHZpYVxuIgorIiBmLCBmaXh1cCA8Y29taXNzacOzPiA9IGNvbSBcInNxdWFzaFwiLCBwZXLDsiBkZXNjYXJ0YSBlbCBtaXNzYXRnZSBkZSByZWdpc3RyZSBkJ2FxdWVzdGEgIgogImNvbWlzc2nDs1xuIgogIiB4LCBleGVjID0gZXhlY3V0YSBsJ29yZHJlIChsYSByZXN0YSBkZSBsYSBsw61uaWEpIHVzYW50IGwnaW50w6hycHJldCAiCiAiZCdvcmRyZXNcbiIKQEAgLTIwMDk5LDcgKzIzMTkwLDcgQEAKICJcbiIKICJFcyBwb3QgY2FudmlhciBsJ29yZHJlIGQnYXF1ZXN0ZXMgbMOtbmllczsgcydleGVjdXRlbiBkZSBkYWx0IGEgYmFpeC5cbiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIxNQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI3MAogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBjYW4gYW1lbmQgdGhlIGNvbW1pdCBub3csIHdpdGhcbiIKQEAgLTIwMTE4LDgzICsyMzIwOSw4MyBAQAogIlxuIgogIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mjk1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIkc2hhMTogbm90IGEgY29tbWl0IHRoYXQgY2FuIGJlIHBpY2tlZCIKIG1zZ3N0ciAiJHNoYTE6IG5vIMOpcyB1bmEgY29taXNzacOzIHF1ZSBlcyBwdWd1aSBlc2NvbGxpciIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI3OQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjMzNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBjb21taXQgbmFtZTogJHNoYTEiCiBtc2dzdHIgIk5vbSBkZSBjb21pc3Npw7Mgbm8gdsOgbGlkOiAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjMwOQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2NAogbXNnaWQgIkNhbm5vdCB3cml0ZSBjdXJyZW50IGNvbW1pdCdzIHJlcGxhY2VtZW50IHNoYTEiCiBtc2dzdHIgIk5vIGVzIHBvdCBlc2NyaXVyZSBlbCBzaGExIHJlZW1wbGHDp2FudCBkZSBsYSBjb21pc3Npw7MgYWN0dWFsIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzYwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDE1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmQgdG8gJHNoYTEiCiBtc2dzdHIgIkF2YW7DpyByw6BwaWQgYSAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2MgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGZhc3QtZm9yd2FyZCB0byAkc2hhMSIKIG1zZ3N0ciAiTm8gZXMgcG90IGF2YW7Dp2FyIHLDoHBpZGFtZW50IGEgJHNoYTEiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNzEKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MjYKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBtb3ZlIEhFQUQgdG8gJGZpcnN0X3BhcmVudCIKIG1zZ3N0ciAiTm8gZXMgcG90IG1vdXJlIEhFQUQgYSAkZmlyc3RfcGFyZW50IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mzc2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDMxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBzcXVhc2ggYSBtZXJnZTogJHNoYTEiCiBtc2dzdHIgIlMnZXN0w6AgcmVmdXNhbnQgZmVyIMKrc3F1YXNowrsgYSB1bmEgZnVzacOzOiAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM5NAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ0OQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRXJyb3IgcmVkb2luZyBtZXJnZSAkc2hhMSIKIG1zZ3N0ciAiRXJyb3IgZW4gcmVmZXIgbGEgZnVzacOzICRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDAzCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDU4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcGljayAkc2hhMSIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBlc2NvbGxpciAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxMgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ2NwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyB0aGUgY29tbWl0IG1lc3NhZ2UgIyR7bn06IgogbXNnc3RyICJBcXVlc3Qgw6lzIGVsIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyBuw7ptLiAke259OiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ3MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhlIGNvbW1pdCBtZXNzYWdlICMke259IHdpbGwgYmUgc2tpcHBlZDoiCiBtc2dzdHIgIkVsIG1pc3NhdGdlIGRlIGNvbWlzc2nDsyBuw7ptLiAke259IHMnb21ldHLDoDoiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MjgKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0ODMKICMsIHNoLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAkY291bnQgY29tbWl0LiIKIG1zZ2lkX3BsdXJhbCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mICRjb3VudCBjb21taXRzLiIKIG1zZ3N0clswXSAiQWl4w7Igw6lzIHVuYSBjb21iaW5hY2nDsyBkZSAkY291bnQgY29taXNzacOzLiIKIG1zZ3N0clsxXSAiQWl4w7Igw6lzIHVuYSBjb21iaW5hY2nDsyBkZSAkY291bnQgY29taXNzaW9ucy4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MzcKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0OTIKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCB3cml0ZSAkZml4dXBfbXNnIgogbXNnc3RyICJObyBlcyBwb3QgZXNjcml1cmUgJGZpeHVwX21zZyIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ0MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5NQogbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAyIGNvbW1pdHMuIgogbXNnc3RyICJBaXjDsiDDqXMgdW5hIGNvbWJpbmFjacOzIGRlIDIgY29taXNzaW9ucy4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0ODEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUyNAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUyNworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUzNiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTc5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTgyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgYXBwbHkgJHNoYTEuLi4gJHJlc3QiCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgYXBsaWNhciAkc2hhMS4uLiAkcmVzdCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU1NgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYxMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIkNvdWxkIG5vdCBhbWVuZCBjb21taXQgYWZ0ZXIgc3VjY2Vzc2Z1bGx5IHBpY2tpbmcgJHNoYTEuLi4gJHJlc3RcbiIKQEAgLTIwMjEwLDMxICsyMzMwMSwzMSBAQAogIm5lY2Vzc2l0ZXUgcmVzb2xkcmUgZWwgcHJvYmxlbWEgYWJhbnMgcXVlIHB1Z3VldSBjYW52aWFyIGVsIG1pc3NhdGdlIGRlXG4iCiAiY29taXNzacOzLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU3MQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYyNgogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAkc2hhMV9hYmJyZXYuLi4gJHJlc3QiCiBtc2dzdHIgIlMnaGEgYXR1cmF0IGEgJHNoYTFfYWJicmV2Li4uICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTg2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJyRzcXVhc2hfc3R5bGUnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgIk5vIGVzIHBvdCAnJHNxdWFzaF9zdHlsZScgc2Vuc2UgdW5hIGNvbWlzc2nDsyBwcsOodmlhIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjI4CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjgzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJFeGVjdXRpbmc6ICRyZXN0IgogbXNnc3RyICJTJ2VzdMOgIGV4ZWN1dGFudDogJHJlc3QiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MzYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkV4ZWN1dGlvbiBmYWlsZWQ6ICRyZXN0IgogbXNnc3RyICJMJ2V4ZWN1Y2nDsyBoYSBmYWxsYXQ6ICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjM4CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjkzCiBtc2dpZCAiYW5kIG1hZGUgY2hhbmdlcyB0byB0aGUgaW5kZXggYW5kL29yIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgImkgaGEgZmV0IGNhbnZpcyBhIGwnw61uZGV4IG8gbCdhcmJyZSBkZSB0cmViYWxsIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Njk1CiBtc2dpZCAiIgogIllvdSBjYW4gZml4IHRoZSBwcm9ibGVtLCBhbmQgdGhlbiBydW5cbiIKICJcbiIKQEAgLTIwMjQ1LDcgKzIzMzM2LDcgQEAKICJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKIAogIy4gVFJBTlNMQVRPUlM6IGFmdGVyIHRoZXNlIGxpbmVzIGlzIGEgY29tbWFuZCB0byBiZSBpc3N1ZWQgYnkgdGhlIHVzZXIKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NTMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MDgKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJFeGVjdXRpb24gc3VjY2VlZGVkOiAkcmVzdFxuIgpAQCAtMjAyNjAsMjUgKzIzMzUxLDI1IEBACiAiXG4iCiAiXHRnaXQgcmViYXNlIC0tY29udGludWUiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NjQKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MTkKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVua25vd24gY29tbWFuZDogJGNvbW1hbmQgJHNoYTEgJHJlc3QiCiBtc2dzdHIgIk9yZHJlIGRlc2NvbmVndWRhOiAkY29tbWFuZCAkc2hhMSAkcmVzdCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY2NQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcyMAogbXNnaWQgIlBsZWFzZSBmaXggdGhpcyB1c2luZyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycuIgogbXNnc3RyICJDb3JyZWdpdS1obyB1c2FudCDCq2dpdCByZWJhc2UgLS1lZGl0LXRvZG/Cuy4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MDAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NTUKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Y2Nlc3NmdWxseSByZWJhc2VkIGFuZCB1cGRhdGVkICRoZWFkX25hbWUuIgogbXNnc3RyICJTJ2hhIGZldCDCq3JlYmFzZcK7IGkgYWN0dWFsaXR6YXQgJGhlYWRfbmFtZSBhbWIgw6h4aXQuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzU3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODEyCiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGVsaW1pbmFyIENIRVJSWV9QSUNLX0hFQUQiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NjIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MTcKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgaGF2ZSBzdGFnZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTIwMzA5LDEzICsyMzQwMCwxMyBAQAogIlxuIgogIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NzkKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MzQKIG1zZ2lkICJFcnJvciB0cnlpbmcgdG8gZmluZCB0aGUgYXV0aG9yIGlkZW50aXR5IHRvIGFtZW5kIGNvbW1pdCIKIG1zZ3N0ciAiIgogIkhpIGhhIGhhZ3V0IHVuIGVycm9yIGVuIGludGVudGFyIHRyb2JhciBsYSBpZGVudGl0YXQgZCdhdXRvciBwZXIgYSBlc21lbmFyICIKICJsYSBjb21pc3Npw7MiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3ODQKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MzkKIG1zZ2lkICIiCiAiWW91IGhhdmUgdW5jb21taXR0ZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS4gUGxlYXNlIGNvbW1pdCB0aGVtXG4iCiAiZmlyc3QgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tY29udGludWUnIGFnYWluLiIKQEAgLTIwMzIzLDQwICsyMzQxNCw0MCBAQAogIlRlbml1IGNhbnZpcyBubyBjb21lc29zIGVuIGVsIHZvc3RyZSBhcmJyZSBkZSB0cmViYWxsLiBcbiIKICJQcmltZXIgY29tZXRldS1sb3MgaSBkZXNwcsOpcyBleGVjdXRldSDCq2dpdCByZWJhc2UgLS1jb250aW51ZcK7IGRlIG5vdS4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3ODkgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc5MworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg0NCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ4CiBtc2dpZCAiQ291bGQgbm90IGNvbW1pdCBzdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIk5vIHMnaGFuIHBvZ3V0IGNvbWV0cmUgZWxzIGNhbnZpcyDCq3N0YWdlZMK7LiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgyNCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTEwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODc5IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NjUKIG1zZ2lkICJDb3VsZCBub3QgZXhlY3V0ZSBlZGl0b3IiCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgZXhlY3V0YXIgbCdlZGl0b3IiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NDUKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDAKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBjaGVja291dCAkc3dpdGNoX3RvIgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGFnYWZhciAkc3dpdGNoX3RvIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODUyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTA3CiBtc2dpZCAiTm8gSEVBRD8iCiBtc2dzdHIgIk5vIGhpIGhhIGNhcCBIRUFEPyIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1MworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwOAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJHN0YXRlX2RpciIKIG1zZ3N0ciAiTm8gcydoYSBwb2d1dCBjcmVhciBlbCAkc3RhdGVfZGlyIHRlbXBvcmFsIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODU2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTExCiBtc2dpZCAiQ291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCiBtc2dzdHIgIk5vIHMnaGEgcG9ndXQgbWFyY2FyIGNvbSBhIGludGVyYWN0aXUiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4ODgKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDMKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgb250byAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmQpIgogbXNnaWRfcGx1cmFsICJSZWJhc2UgJHNob3J0cmV2aXNpb25zIG9udG8gJHNob3J0b250byAoJHRvZG9jb3VudCBjb21tYW5kcykiCi1tc2dzdHJbMF0gIlJlYmFzYSAkc2hvcnRyZXZpc2lvbnMgc29icmUgJHNob3J0b250byAoJHRvZG9jb3VudCBvcmRyZSkiCi1tc2dzdHJbMV0gIlJlYmFzYSAkc2hvcnRyZXZpc2lvbnMgc29icmUgJHNob3J0b250byAoJHRvZG9jb3VudCBvcmRyZXMpIgorbXNnc3RyWzBdICJGZXMgwqtyZWJhc2XCuyAkc2hvcnRyZXZpc2lvbnMgc29icmUgJHNob3J0b250byAoJHRvZG9jb3VudCBvcmRyZSkiCittc2dzdHJbMV0gIkZlcyDCq3JlYmFzZcK7ICRzaG9ydHJldmlzaW9ucyBzb2JyZSAkc2hvcnRvbnRvICgkdG9kb2NvdW50IG9yZHJlcykiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDIgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0NworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk5NyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTAwMgogbXNnaWQgIkNvdWxkIG5vdCBpbml0IHJld3JpdHRlbiBjb21taXRzIgogbXNnc3RyICJObyBzJ2hhbiBwb2d1dCBpbmljaWFyIGxlcyBjb21pc3Npb25zIHJlZXNjcml0ZXMiCiAKQEAgLTIwMzY1LDEzOCArMjM0NTYsNzYgQEAKIG1zZ2lkICJ1c2FnZTogJGRhc2hsZXNzICRVU0FHRSIKIG1zZ3N0ciAiw7pzOiAkZGFzaGxlc3MgJFVTQUdFIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MTkwCisjOiBnaXQtc2gtc2V0dXAuc2g6MTkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgY2hkaXIgdG8gJGNkdXAsIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICIiCiAiTm8gZXMgcG90IGNhbnZpYXIgZGUgZGlyZWN0b3JpIGEgJGNkdXAsIGVsIG5pdmVsbCBzdXBlcmlvciBkZSBsJ2FyYnJlIGRlICIKICJ0cmViYWxsIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MTk5IGdpdC1zaC1zZXR1cC5zaDoyMDYKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMDAgZ2l0LXNoLXNldHVwLnNoOjIwNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiZmF0YWw6ICRwcm9ncmFtX25hbWUgY2Fubm90IGJlIHVzZWQgd2l0aG91dCBhIHdvcmtpbmcgdHJlZS4iCiBtc2dzdHIgImZhdGFsOiBubyBlcyBwb3QgdXNhciAkcHJvZ3JhbV9uYW1lIHNlbnNlIHVuIGFyYnJlIGRlIHRyZWJhbGwuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjIwCisjOiBnaXQtc2gtc2V0dXAuc2g6MjIxCiBtc2dpZCAiQ2Fubm90IHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIk5vIGVzIHBvdCBmZXIgwqtyZWJhc2XCuzogdGVuaXUgY2FudmlzIMKrdW5zdGFnZWTCuy4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjMKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjQKIG1zZ2lkICJDYW5ub3QgcmV3cml0ZSBicmFuY2hlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIk5vIGVzIHBvZGVuIHJlZXNjcml1cmUgYnJhbnF1ZXM6IFRlbml1IGNhbnZpcyDCq3Vuc3RhZ2VkwrsuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjI2CisjOiBnaXQtc2gtc2V0dXAuc2g6MjI3CiBtc2dpZCAiQ2Fubm90IHB1bGwgd2l0aCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICJObyBlcyBwb3QgYmFpeGFyIGZlbnQgwqtyZWJhc2XCuzogVGVuaXUgY2FudmlzIMKrdW5zdGFnZWTCuy4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjkKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCAkYWN0aW9uOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiTm8gZXMgcG90ICRhY3Rpb246IFRlbml1IGNhbnZpcyDCq3Vuc3RhZ2VkwrsuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQyCisjOiBnaXQtc2gtc2V0dXAuc2g6MjQzCiBtc2dpZCAiQ2Fubm90IHJlYmFzZTogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiTm8gZXMgcG90IGZlciDCq3JlYmFzZcK7OiBFbCB2b3N0cmUgw61uZGV4IGNvbnTDqSBjYW52aXMgc2Vuc2UgY29tZXRyZS4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyNDUKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNDYKIG1zZ2lkICJDYW5ub3QgcHVsbCB3aXRoIHJlYmFzZTogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogIk5vIGVzIHBvdCBiYWl4YXIgZmVudCDCq3JlYmFzZcK7OiBFbCB2b3N0cmUgw61uZGV4IGNvbnTDqSBjYW52aXMgc2Vuc2UgY29tZXRyZS4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyNDgKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNDkKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCAkYWN0aW9uOiBZb3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICJObyBlcyBwb3QgJGFjdGlvbjogRWwgdm9zdHJlIMOtbmRleCBjb250w6kgY2FudmlzIHNlbnNlIGNvbWV0cmUuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjUyCisjOiBnaXQtc2gtc2V0dXAuc2g6MjUzCiBtc2dpZCAiQWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICJBZGRpY2lvbmFsbWVudCwgZWwgdm9zdHJlIMOtbmRleCBjb250w6kgY2FudmlzIHNlbnNlIGNvbWV0cmUuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MzcyCisjOiBnaXQtc2gtc2V0dXAuc2g6MzczCiBtc2dpZCAiWW91IG5lZWQgdG8gcnVuIHRoaXMgY29tbWFuZCBmcm9tIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlLiIKIG1zZ3N0ciAiIgogIkhldSBkJ2V4ZWN1dGFyIGFxdWVzdGEgb3JkcmUgZGVzIGRlbCBuaXZlbGwgc3VwZXJpb3IgZGUgbCdhcmJyZSBkZSB0cmViYWxsLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjM3NworIzogZ2l0LXNoLXNldHVwLnNoOjM3OAogbXNnaWQgIlVuYWJsZSB0byBkZXRlcm1pbmUgYWJzb2x1dGUgcGF0aCBvZiBnaXQgZGlyZWN0b3J5IgogbXNnc3RyICJObyBzJ2hhIHBvZ3V0IGRldGVybWluYXIgZWwgY2Ftw60gYWJzb2x1dCBkZWwgZGlyZWN0b3JpIGRlIGdpdCIKIAogIy4gVFJBTlNMQVRPUlM6IHlvdSBjYW4gYWRqdXN0IHRoaXMgdG8gYWxpZ24gImdpdCBhZGQgLWkiIHN0YXR1cyBtZW51Ci0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTIKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiJTEycyAlMTJzICVzIgogbXNnc3RyICIlMTJzICUxMnMgJXMiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTk3Ci1tc2dpZCAic3RhZ2VkIgotbXNnc3RyICJzdGFnZWQiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTk3Ci1tc2dpZCAidW5zdGFnZWQiCi1tc2dzdHIgInVuc3RhZ2VkIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI1MyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI3OAotbXNnaWQgImJpbmFyeSIKLW1zZ3N0ciAiYmluYXJpIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxNgotbXNnaWQgIm5vdGhpbmciCi1tc2dzdHIgInJlcyIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyOTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMTMKLW1zZ2lkICJ1bmNoYW5nZWQiCi1tc2dzdHIgInNlbnNlIGNhbnZpcyIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MDkKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiYWRkZWQgJWQgcGF0aFxuIgotbXNnaWRfcGx1cmFsICJhZGRlZCAlZCBwYXRoc1xuIgotbXNnc3RyWzBdICJhZmVnaXQgJWQgY2Ftw61cbiIKLW1zZ3N0clsxXSAiYWZlZ2l0cyAlZCBjYW1pbnNcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAidXBkYXRlZCAlZCBwYXRoXG4iCi1tc2dpZF9wbHVyYWwgInVwZGF0ZWQgJWQgcGF0aHNcbiIKLW1zZ3N0clswXSAiYWN0dWFsaXR6YXQgJWQgY2Ftw61cbiIKLW1zZ3N0clsxXSAiYWN0dWFsaXR6YXRzICVkIGNhbWluc1xuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYxNQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJyZXZlcnRlZCAlZCBwYXRoXG4iCi1tc2dpZF9wbHVyYWwgInJldmVydGVkICVkIHBhdGhzXG4iCi1tc2dzdHJbMF0gInJldmVydGl0ICVkIGNhbcOtXG4iCi1tc2dzdHJbMV0gInJldmVydGl0cyAlZCBjYW1pbnNcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjM0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgInRvdWNoZWQgJWQgcGF0aFxuIgogbXNnaWRfcGx1cmFsICJ0b3VjaGVkICVkIHBhdGhzXG4iCiBtc2dzdHJbMF0gIm1vZGlmaWNhdCAlZCBjYW3DrVxuIgogbXNnc3RyWzFdICJtb2RpZmljYXQgJWQgY2FtaW5zXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjI3Ci1tc2dpZCAiVXBkYXRlIgotbXNnc3RyICJBY3R1YWxpdHphIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzOQotbXNnaWQgIlJldmVydCIKLW1zZ3N0ciAiUmV2ZXJ0ZWl4IgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY2MgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJub3RlOiAlcyBpcyB1bnRyYWNrZWQgbm93LlxuIgotbXNnc3RyICJub3RhOiAlcyBlc3TDoCBhcmEgc2Vuc2Ugc2VndWltZW50LlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3MwotbXNnaWQgIkFkZCB1bnRyYWNrZWQiCi1tc2dzdHIgIkFmZWdlaXggc2Vuc2Ugc2VndWltZW50IgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3OQotbXNnaWQgIk5vIHVudHJhY2tlZCBmaWxlcy5cbiIKLW1zZ3N0ciAiU2Vuc2UgZml0eGVycyBubyBzZWd1aXRzLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwMzMKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA1MwogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3Igc3RhZ2luZy4iCkBAIC0yMDUwNCw3ICsyMzUzMyw3IEBACiAiU2kgZWwgcGVkYcOnIHMnYXBsaWNhIGNvcnJlY3RhbWVudCwgZWwgdHJvcyBlZGl0YXQgZXMgbWFyY2Fyw6AgaW1tZWRpYXRhbWVudFxuIgogInBlciDCq3N0YWdpbmfCuy4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTAzNgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDU2CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBzdGFzaGluZy4iCkBAIC0yMDUxMiw3ICsyMzU0MSw3IEBACiAiU2kgZWwgcGVkYcOnIHMnYXBsaWNhIGNvcnJlY3RhbWVudCwgZWwgdHJvcyBlZGl0YXQgZXMgbWFyY2Fyw6AgaW1tZWRpYXRhbWVudFxuIgogInBlciDCq3N0YXNoaW5nwrsuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwMzkKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA1OQogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3IgdW5zdGFnaW5nLiIKQEAgLTIwNTIwLDcgKzIzNTQ5LDggQEAKICJTaSBlbCBwZWRhw6cgcydhcGxpY2EgY29ycmVjdGFtZW50LCBlbCB0cm9zIGVkaXRhdCBlcyBtYXJjYXLDoCBpbW1lZGlhdGFtZW50XG4iCiAicGVyIMKrdW5zdGFnaW5nwrsuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNDIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDUxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDcxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNzcKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIGFwcGx5aW5nLiIKQEAgLTIwNTI4LDcgKzIzNTU4LDggQEAKICJTaSBlbCBwZWRhw6cgcydhcGxpY2EgY29ycmVjdGFtZW50LCBlbCB0cm9zIGVkaXRhdCBlcyBtYXJjYXLDoCBpbW1lZGlhdGFtZW50XG4iCiAicGVyIGFwbGljYXItc2UuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNDUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDQ4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNjUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDY4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNzQKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIGRpc2NhcmRpbmcuIgpAQCAtMjA1MzYsMTcgKzIzNTY3LDEyIEBACiAiU2kgZWwgcGVkYcOnIHMnYXBsaWNhIGNvcnJlY3RhbWVudCwgZWwgdHJvcyBlZGl0YXQgZXMgbWFyY2Fyw6AgaW1tZWRpYXRhbWVudFxuIgogInBlciBkZXNjYXJ0YXItc2UuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwODUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExMQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3Igd3JpdGluZzogJXMiCiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXNjcml1cmUgYWwgZml0eGVyIGQnZWRpY2nDsyBkZWwgdHJvczogJXMiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA4NgotbXNnaWQgIk1hbnVhbCBodW5rIGVkaXQgbW9kZSAtLSBzZWUgYm90dG9tIGZvciBhIHF1aWNrIGd1aWRlLlxuIgotbXNnc3RyICIiCi0iTW9kZSBkJ2VkaWNpw7MgZGUgdHJvc3NvcyBtYW51YWwgLSB2ZWdldSBtw6lzIGF2YWxsIHBlciB1bmEgZ3VpYSByw6BwaWRhLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwOTIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiLS0tXG4iCkBAIC0yMDU1OSwzNyArMjM1ODUsMTIgQEAKICJQZXIgc3VwcmltaXIgwqslc8K7IGzDrW5pZXMsIHN1cHJpbWl1LWxlcy5cbiIKICJMZXMgbMOtbmllcyBxdWUgY29tZW5jaW4gcGVyICVzIHNlcmFuIHN1cHJpbWlkZXMuXG4iCiAKLSMuIFRSQU5TTEFUT1JTOiAnaXQnIHJlZmVycyB0byB0aGUgcGF0Y2ggbWVudGlvbmVkIGluIHRoZSBwcmV2aW91cyBtZXNzYWdlcy4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTEwMAotbXNnaWQgIiIKLSJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSBnaXZlbiBhbiBvcHBvcnR1bml0eSB0b1xuIgotImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlIHJlbW92ZWQsIHRoZW4gdGhlIGVkaXQgaXNcbiIKLSJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIKLW1zZ3N0ciAiIgotIlNpIG5vIHMnYXBsaWNhIGNvcnJlY3RhbWVudCwgdGluZHJldSB1bmEgb3BvcnR1bml0YXQgcGVyIGVkaXRhci1sb1xuIgotImRlIG5vdS4gU2kgdG90ZXMgbGVzIGzDrW5pZXMgZGVsIHRyb3Mgc2Ugc3VwcmltZWl4ZW4sIGxsYXZvcnMgbCdlZGljacOzICIKLSJzJ2F2b3J0YVxuIgotImkgZWwgdHJvcyBlcyBkZWl4YSBzZW5zZSBjYXAgY2FudmkuXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTQwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuIGh1bmsgZWRpdCBmaWxlIGZvciByZWFkaW5nOiAlcyIKIG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgYWwgZml0eGVyIGQnZWRpY2nDsyBkZWwgdHJvczogJXMiCiAKLSMuIFRSQU5TTEFUT1JTOiBkbyBub3QgdHJhbnNsYXRlIFt5L25dCi0jLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IHRoYXQgaW5wdXQKLSMuIGF0IHRoaXMgcG9pbnQuCi0jLiBDb25zaWRlciB0cmFuc2xhdGluZyAoc2F5aW5nICJubyIgZGlzY2FyZHMhKSBhcwotIy4gKHNheWluZyAibiIgZm9yICJubyIgZGlzY2FyZHMhKSBpZiB0aGUgdHJhbnNsYXRpb24KLSMuIG9mIHRoZSB3b3JkICJubyIgZG9lcyBub3Qgc3RhcnQgd2l0aCBuLgotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjEzCi1tc2dpZCAiIgotIllvdXIgZWRpdGVkIGh1bmsgZG9lcyBub3QgYXBwbHkuIEVkaXQgYWdhaW4gKHNheWluZyBcIm5vXCIgZGlzY2FyZHMhKSBbeS9uXT8gIgotbXNnc3RyICIiCi0iRWwgdHJvcyBlZGl0YXQgbm8gcydhcGxpY2EuIEVkaXRldS1sbyBkZSBub3UgKHNpIHJlc3BvbmV1IFwibm9cIiBlcyAiCi0iZGVzY2FydGFyw6ApIFt5L25dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIyMgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjQ4CiBtc2dpZCAiIgogInkgLSBzdGFnZSB0aGlzIGh1bmtcbiIKICJuIC0gZG8gbm90IHN0YWdlIHRoaXMgaHVua1xuIgpAQCAtMjA2MDMsNyArMjM2MDQsNyBAQAogImEgLSBmZXMgwqtzdGFnZcK7IGQnYXF1ZXN0IHRyb3MgaSB0b3RhIGxhIHJlc3RhIGRlIHRyb3Nzb3MgZGVsIGZpdHhlclxuIgogImQgLSBubyBmYWNpcyDCq3N0YWdlwrsgZCdhcXVlc3QgdHJvcyBvIGRlIGNhcCBhbHRyZSByZXN0YW50IGRlbCBmaXR4ZXIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIyOAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjU0CiBtc2dpZCAiIgogInkgLSBzdGFzaCB0aGlzIGh1bmtcbiIKICJuIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVua1xuIgpAQCAtMjA2MTcsNyArMjM2MTgsNyBAQAogImEgLSBmZXMgwqtzdGFzaMK7IGQnYXF1ZXN0IHRyb3MgaSB0b3RhIGxhIHJlc3RhIGRlIHRyb3Nzb3MgZGVsIGZpdHhlclxuIgogImQgLSBubyBmYWNpcyDCq3N0YXNowrsgZCdhcXVlc3QgdHJvcyBvIGRlIGNhcCBhbHRyZSByZXN0YW50IGRlbCBmaXR4ZXIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIzNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjYwCiBtc2dpZCAiIgogInkgLSB1bnN0YWdlIHRoaXMgaHVua1xuIgogIm4gLSBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmtcbiIKQEAgLTIwNjMxLDcgKzIzNjMyLDcgQEAKICJhIC0gZmVzIMKrdW5zdGFnZcK7IGQnYXF1ZXN0IHRyb3MgaSB0b3RhIGxhIHJlc3RhIGRlIHRyb3Nzb3MgZGVsIGZpdHhlclxuIgogImQgLSBubyBmYWNpcyDCq3Vuc3RhZ2XCuyBkJ2FxdWVzdCB0cm9zIG8gZGUgY2FwIGFsdHJlIHJlc3RhbnQgZGVsIGZpdHhlciIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjQwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNjYKIG1zZ2lkICIiCiAieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgogIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4XG4iCkBAIC0yMDY0NSw3ICsyMzY0Niw3IEBACiAiYSAtIGFwbGljYSBhcXVlc3QgdHJvcyBpIHRvdHMgZWxzIHRyb3Nzb3MgcG9zdGVyaW9ycyBlbiBlbCBmaXR4ZXJcbiIKICJkIC0gbm8gYXBsaXF1aXMgYXF1ZXN0IHRyb3MgbmkgY2FwIGRlbHMgdHJvc3NvcyBwb3N0ZXJpb3JzIGVuIGVsIGZpdHhlciIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjQ2CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNzIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjkwCiBtc2dpZCAiIgogInkgLSBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlXG4iCiAibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlXG4iCkBAIC0yMDY1OSw3ICsyMzY2MCw3IEBACiAiYSAtIGRlc2NhcnRhIGFxdWVzdCB0cm9zIGkgdG90cyBlbHMgdHJvc3NvcyBwb3N0ZXJpb3JzIGVuIGVsIGZpdHhlclxuIgogImQgLSBubyBkZXNjYXJ0aXMgYXF1ZXN0IHRyb3MgbmkgY2FwIGRlbHMgdHJvc3NvcyBwb3N0ZXJpb3JzIGVuIGVsIGZpdHhlciIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjUyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNzgKIG1zZ2lkICIiCiAieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCiAibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgpAQCAtMjA2NzMsNyArMjM2NzQsNyBAQAogImEgLSBkZXNjYXJ0YSBhcXVlc3QgdHJvcyBpIHRvdHMgZWxzIHRyb3Nzb3MgcG9zdGVyaW9ycyBlbiBlbCBmaXR4ZXJcbiIKICJkIC0gbm8gZGVzY2FydGlzIGFxdWVzdCB0cm9zIG5pIGNhcCBkZWxzIHRyb3Nzb3MgcG9zdGVyaW9ycyBlbiBlbCBmaXR4ZXIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI1OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjg0CiBtc2dpZCAiIgogInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCiAibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCkBAIC0yMDY4Nyw3ICsyMzY4OCwyMSBAQAogImEgLSBhcGxpY2EgYXF1ZXN0IHRyb3MgaSB0b3RzIGVscyB0cm9zc29zIHBvc3RlcmlvcnMgZW4gZWwgZml0eGVyXG4iCiAiZCAtIG5vIGFwbGlxdWlzIGFxdWVzdCB0cm9zIG5pIGNhcCBkZWxzIHRyb3Nzb3MgcG9zdGVyaW9ycyBlbiBlbCBmaXR4ZXIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI3MworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjk2Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgorbXNnc3RyICIiCisieSAtIGFwbGljYSBhcXVlc3QgdHJvcyBhIGwnYXJicmUgZGUgdHJlYmFsbFxuIgorIm4gLSBubyBhcGxpcXVpcyBhcXVlc3QgdHJvcyBhIGwnYXJicmUgZGUgdHJlYmFsbFxuIgorInEgLSBzdXJ0OyBubyBhcGxpcXVpcyBhcXVlc3QgdHJvcyBuaSBjYXAgZGVscyBwZW5kZW50c1xuIgorImEgLSBhcGxpY2EgYXF1ZXN0IHRyb3MgaSB0b3RzIGVscyB0cm9zc29zIHBvc3RlcmlvcnMgZW4gZWwgZml0eGVyXG4iCisiZCAtIG5vIGFwbGlxdWlzIGFxdWVzdCB0cm9zIG5pIGNhcCBkZWxzIHRyb3Nzb3MgcG9zdGVyaW9ycyBlbiBlbCBmaXR4ZXIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMxMQogbXNnaWQgIiIKICJnIC0gc2VsZWN0IGEgaHVuayB0byBnbyB0b1xuIgogIi8gLSBzZWFyY2ggZm9yIGEgaHVuayBtYXRjaGluZyB0aGUgZ2l2ZW4gcmVnZXhcbiIKQEAgLTIwNzA5LDIxNiArMjM3MjQsMjAzIEBACiAiZSAtIGVkaXRhIG1hbnVhbG1lbnQgZWwgdHJvcyBhY3R1YWxcbiIKICI/IC0gbW9zdHJhIGwnYWp1ZGFcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzA0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDIKIG1zZ2lkICJUaGUgc2VsZWN0ZWQgaHVua3MgZG8gbm90IGFwcGx5IHRvIHRoZSBpbmRleCFcbiIKIG1zZ3N0ciAiRWxzIHRyb3Nzb3Mgc2VsZWNjaW9uYXRzIG5vIGFwbGlxdWVuIGEgbCfDrW5kZXhcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzA1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDMKIG1zZ2lkICJBcHBseSB0aGVtIHRvIHRoZSB3b3JrdHJlZSBhbnl3YXk/ICIKIG1zZ3N0ciAiVm9sZXUgYXBsaWNhci1sb3MgaWd1YWxtZW50IGEgbCdhcmJyZSBkZSB0cmViYWxsPyAiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwOAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQ2CiBtc2dpZCAiTm90aGluZyB3YXMgYXBwbGllZC5cbiIKIG1zZ3N0ciAiTm8gcydoYSBhcGxpY2F0IHJlcy5cbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzE5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNTcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgdW5tZXJnZWQ6ICVzXG4iCiBtc2dzdHIgInMnZXN0w6AgaWdub3JhbnQgJXMgbm8gZnVzaW9uYXRcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzI4Ci1tc2dpZCAiT25seSBiaW5hcnkgZmlsZXMgY2hhbmdlZC5cbiIKLW1zZ3N0ciAiTm9tw6lzIHMnaGFuIGNhbnZpYXQgZWxzIGZpdHhlcnMgYmluYXJpcy5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzMwCi1tc2dpZCAiTm8gY2hhbmdlcy5cbiIKLW1zZ3N0ciAiU2Vuc2UgY2FudmlzLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMzgKLW1zZ2lkICJQYXRjaCB1cGRhdGUiCi1tc2dzdHIgIkFjdHVhbGl0emFjacOzIGRlbCBwZWRhw6ciCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlN0YWdlIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgogbXNnc3RyICJDYW52aWEgZWwgbW9kZSBkZSDCq3N0YWdlwrsgW3ksbixxLGEsZCVzLD9dPyAiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI5CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlN0YWdlIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgogbXNnc3RyICJTdXByaW1laXggwqtzdGFnZcK7IFt5LG4scSxhLGQlcyw/XT8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzMAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCiBtc2dzdHIgIkZlciB1biDCq3N0YWdlwrsgZCdhcXVlc3QgdHJvcyBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzk1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU3Rhc2ggbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCiBtc2dzdHIgIkNhbnZpYSBlbCBtb2RlIGRlIMKrc3Rhc2jCuyBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzk2CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU3Rhc2ggZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCiBtc2dzdHIgIlN1cHJpbWVpeCDCq3N0YXNowrsgW3ksbixxLGEsZCVzLD9dPyAiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5NworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlN0YXNoIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKIG1zZ3N0ciAiRmVyIHVuIMKrc3Rhc2jCuyBkJ2FxdWVzdCB0cm9zIFt5LG4scSxhLGQlcyw/XT8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJVbnN0YWdlIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgogbXNnc3RyICJDYW52aWEgZWwgbW9kZSBkZSDCq3Vuc3RhZ2XCuyBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzkKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiVW5zdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKIG1zZ3N0ciAiU3VwcmltZWl4IMKrVW5zdGFnZcK7IFt5LG4scSxhLGQlcyw/XT8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJVbnN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKIG1zZ3N0ciAiRmVyIHVuIMKrdW5zdGFnZcK7IGQnYXF1ZXN0IHRyb3MgW3ksbixxLGEsZCVzLD9dPyAiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwNQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgogbXNnc3RyICJBcGxpY2EgZWwgY2FudmkgZGUgbW9kZSBhIGwnw61uZGV4IFt5LG4scSxhLGQlcyw/XT8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDYKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJBcHBseSBkZWxldGlvbiB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKIG1zZ3N0ciAiQXBsaWNhIGwnZXNib3JyYXQgYSBsJ8OtbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDA3CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDUKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgogbXNnc3RyICJBcGxpY2EgYXF1ZXN0IHRyb3MgYSBsJ8OtbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDEwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDYzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKIG1zZ3N0ciAiRGVzY2FydGEgZWwgY2FudmkgZGUgbW9kZSBkZXMgZGUgbCdhcmJyZSBkZSB0cmViYWxsIFt5LG4scSxhLGQlcyw/XT8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTEKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRGlzY2FyZCBkZWxldGlvbiBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgogbXNnc3RyICJEZXNjYXJ0YSBsJ2VzYm9ycmF0IGRlcyBkZSBsJ2FyYnJlIGRlIHRyZWJhbGwgW3ksbixxLGEsZCVzLD9dPyAiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxMgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDUwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2NQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgogbXNnc3RyICJEZXNjYXJ0YSBhcXVlc3QgdHJvcyBkZXMgZGUgbCdhcmJyZSBkZSB0cmViYWxsICBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKIG1zZ3N0ciAiIgogIkRlc2NhcnRhIGVsIGNhbnZpIGRlIG1vZGUgZGVzIGRlIGwnw61uZGV4IGkgbCdhcmJyZSBkZSB0cmViYWxsIFt5LG4scSxhLGQiCiAiJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE2CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRGlzY2FyZCBkZWxldGlvbiBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKIG1zZ3N0ciAiIgogIkRlc2NhcnRhIGxhIHN1cHJlc3Npw7MgZGVzIGRlIGwnw61uZGV4IGkgbCdhcmJyZSBkZSB0cmViYWxsIFt5LG4scSxhLGQlcyw/XT8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTcKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1NQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKIG1zZ3N0ciAiIgogIkRlc2NhcnRhIGFxdWVzdCB0cm9zIGRlcyBkZSBsJ8OtbmRleCBpIGwnYXJicmUgZGUgdHJlYmFsbCBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDIwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgogbXNnc3RyICIiCiAiQXBsaWNhIGVsIGNhbnZpIGRlIG1vZGUgYSBsJ8OtbmRleCBpIGwnYXJicmUgZGUgdHJlYmFsbCBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDIxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTkKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgogbXNnc3RyICJBcGxpY2EgbGEgc3VwcmVzc2nDsyBhIGwnw61uZGV4IGkgbCdhcmJyZSBkZSB0cmViYWxsIFt5LG4scSxhLGQlcyw/XT8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgogbXNnc3RyICJBcGxpY2EgYXF1ZXN0IHRyb3MgYSBsJ8OtbmRleCBpIGwnYXJicmUgZGUgdHJlYmFsbCBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTIyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkFwbGljYSBlbCBjYW52aSBkZSBtb2RlIGEgbCdhcmJyZSBkZSB0cmViYWxsIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkFwbGljYSBsYSBzdXByZXNzacOzIGEgbCdhcmJyZSBkZSB0cmViYWxsIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJBcGxpY2EgYXF1ZXN0IHRyb3MgYSBsJ2FyYnJlIGRlIHRyZWJhbGwgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3MAogbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIGdvdG9cbiIKIG1zZ3N0ciAiTm8gaGkgaGEgYWx0cmVzIHRyb3Nzb3Mgb24gYW5hci1oaVxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MjkKLW1zZ2lkICJnbyB0byB3aGljaCBodW5rICg8cmV0PiB0byBzZWUgbW9yZSk/ICIKLW1zZ3N0ciAidsOpcyBhIHF1aW4gdHJvcyAoPHJldD4gcGVyIHZldXJlJ24gbcOpcyk/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTMxCi1tc2dpZCAiZ28gdG8gd2hpY2ggaHVuaz8gIgotbXNnc3RyICJ2w6lzIGEgcXVpbiB0cm9zPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU0MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTg4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkludmFsaWQgbnVtYmVyOiAnJXMnXG4iCi1tc2dzdHIgIk7Dum1lcm8gbm8gdsOgbGlkOiAnJXMnXG4iCittc2dzdHIgIk7Dum1lcm8gbm8gdsOgbGlkOiDCqyVzwrtcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQ1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1OTMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU29ycnksIG9ubHkgJWQgaHVuayBhdmFpbGFibGUuXG4iCiBtc2dpZF9wbHVyYWwgIlNvcnJ5LCBvbmx5ICVkIGh1bmtzIGF2YWlsYWJsZS5cbiIKIG1zZ3N0clswXSAiTm9tw6lzICVkIHRyb3MgZGlzcG9uaWJsZS5cbiIKIG1zZ3N0clsxXSAiTm9tw6lzICVkIHRyb3Nzb3MgZGlzcG9uaWJsZXMuXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjE5CiBtc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gc2VhcmNoXG4iCiBtc2dzdHIgIk5vIGhpIGhhIGNhcCBhbHRyZSB0cm9zIGEgY2VyY2FyXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3NQotbXNnaWQgInNlYXJjaCBmb3IgcmVnZXg/ICIKLW1zZ3N0ciAiQ2VyY2EgcGVyIGV4cHJlc3Npw7MgcmVndWxhcj8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1ODgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYzNgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJNYWxmb3JtZWQgc2VhcmNoIHJlZ2V4cCAlczogJXNcbiIKIG1zZ3N0ciAiRXhwcmVzc2nDsyByZWd1bGFyIGRlIGNlcmNhIG1hbCBmb3JtYWRhICVzOiAlc1xuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1OTgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY0NgogbXNnaWQgIk5vIGh1bmsgbWF0Y2hlcyB0aGUgZ2l2ZW4gcGF0dGVyblxuIgogbXNnc3RyICJObyBoaSBoYSB0cm9zc29zIHF1ZSBjb2luY2lkZWl4aW4gYW1iIGVsIHBhdHLDsyBkb25hdFxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MTAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjMyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjgwCiBtc2dpZCAiTm8gcHJldmlvdXMgaHVua1xuIgogbXNnc3RyICJTZW5zZSB0cm9zIHByZXZpXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MzgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY2NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2ODYKIG1zZ2lkICJObyBuZXh0IGh1bmtcbiIKIG1zZ3N0ciAiTm8gaGkgaGEgdHJvcyBzZWfDvGVudFxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NDQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY5MgogbXNnaWQgIlNvcnJ5LCBjYW5ub3Qgc3BsaXQgdGhpcyBodW5rXG4iCiBtc2dzdHIgIk5vIGVzIHBvdCBkaXZpZGlyIGFxdWVzdCB0cm9zXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY1MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjk4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNwbGl0IGludG8gJWQgaHVuay5cbiIKIG1zZ2lkX3BsdXJhbCAiU3BsaXQgaW50byAlZCBodW5rcy5cbiIKIG1zZ3N0clswXSAiRGl2aWRlaXggZW4gJWQgdHJvcy5cbiIKIG1zZ3N0clsxXSAiRGl2aWRlaXggZW4gJWQgdHJvc3Nvcy5cbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjYwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MDgKIG1zZ2lkICJTb3JyeSwgY2Fubm90IGVkaXQgdGhpcyBodW5rXG4iCiBtc2dzdHIgIk5vIGVzIHBvdCBlZGl0YXIgYXF1ZXN0IHRyb3NcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzA2Ci1tc2dpZCAiUmV2aWV3IGRpZmYiCi1tc2dzdHIgIlJldmlzZXUgbGVzIGRpZmVyw6huY2llcyIKLQogIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBkbyBub3QgdHJhbnNsYXRlIHRoZSBjb21tYW5kIG5hbWVzCiAjLiAnc3RhdHVzJywgJ3VwZGF0ZScsICdyZXZlcnQnLCBldGMuCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MjUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc3MwogbXNnaWQgIiIKICJzdGF0dXMgICAgICAgIC0gc2hvdyBwYXRocyB3aXRoIGNoYW5nZXNcbiIKICJ1cGRhdGUgICAgICAgIC0gYWRkIHdvcmtpbmcgdHJlZSBzdGF0ZSB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzXG4iCkBAIC0yMDkzNywxOCArMjM5MzksMTkgQEAKICJhZGQgdW50cmFja2VkIC0gYWZlZ2VpeCBlbCBjb250aW5ndXQgZGVscyBmaXR4ZXJzIG5vIHNlZ3VpdHMgYWwgY29uanVudCBkZSAiCiAiY2FudmlzIMKrc3RhZ2VkwrtcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzQyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc0NwotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzUwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1NwotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzYxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2NworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzkwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5NQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzk4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgwNQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODA4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgxNQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODE5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyNQogbXNnaWQgIm1pc3NpbmcgLS0iCiBtc2dzdHIgIm1hbmNhIC0tIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjMKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyMQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIC0tcGF0Y2ggbW9kZTogJXMiCiBtc2dzdHIgImRlc2NvbmVndXQgLS1wYXRjaCBtb2RlOiAlcyIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzY5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc3NQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODI3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgzMwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGFyZ3VtZW50ICVzLCBleHBlY3RpbmcgLS0iCiBtc2dzdHIgImFyZ3VtZW50ICVzIG5vIHbDoGxpZCwgcydlc3BlcmF2YSAtLSIKQEAgLTIwOTYxLDY2ICsyMzk2NCw2NiBAQAogbXNnaWQgImxvY2FsIHRpbWUgb2Zmc2V0IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAyNCBob3Vyc1xuIgogbXNnc3RyICJlbCBkZXNwbGHDp2FtZW50IGRlIGxhIHpvbmEgbG9jYWwgw6lzIG3DqXMgZ3JhbiBvIGlndWFsIGEgMjQgaG9yZXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoyMTkgZ2l0LXNlbmQtZW1haWwucGVybDoyMjUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjIzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MjI5CiBtc2dpZCAidGhlIGVkaXRvciBleGl0ZWQgdW5jbGVhbmx5LCBhYm9ydGluZyBldmVyeXRoaW5nIgogbXNnc3RyICJsJ2VkaXRvciBubyBoYSBzb3J0aXQgY29ycmVjdGFtZW50LCBhdm9ydGFudC1obyB0b3QiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzAyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMxMAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBjb250YWlucyBhbiBpbnRlcm1lZGlhdGUgdmVyc2lvbiBvZiB0aGUgZW1haWwgeW91IHdlcmUgY29tcG9zaW5nLlxuIgogbXNnc3RyICLCqyVzwrsgY29udMOpIHVuYSB2ZXJzacOzIGludGVybcOoZGlhIGRlbCBjb3JyZXUgcXVlIGVzdMOgdmV1IHJlZGFjdGFudC5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMDcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzE1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiclcy5maW5hbCcgY29udGFpbnMgdGhlIGNvbXBvc2VkIGVtYWlsLlxuIgogbXNnc3RyICInJXMuZmluYWwnIGNvbnTDqSBlbCBjb3JyZXUgcmVkYWN0YXQuXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzI2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQwOAogbXNnaWQgIi0tZHVtcC1hbGlhc2VzIGluY29tcGF0aWJsZSB3aXRoIG90aGVyIG9wdGlvbnNcbiIKIG1zZ3N0ciAiLS1kdW1wLWFsaWFzZXMgw6lzIGluY29tcGF0aWJsZSBhbWIgYWx0cmVzIG9wY2lvbnNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozOTUgZ2l0LXNlbmQtZW1haWwucGVybDo2NTAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDgxIGdpdC1zZW5kLWVtYWlsLnBlcmw6NjgzCiBtc2dpZCAiQ2Fubm90IHJ1biBnaXQgZm9ybWF0LXBhdGNoIGZyb20gb3V0c2lkZSBhIHJlcG9zaXRvcnlcbiIKIG1zZ3N0ciAiTm8gZXMgcG90IGV4ZWN1dGFyIGdpdCBmb3JtYXQtcGF0Y2ggZGVzIGRlIGZvcmEgZGVsIGRpcMOyc2l0XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Mzk4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ4NAogbXNnaWQgIiIKICJgYmF0Y2gtc2l6ZWAgYW5kIGByZWxvZ2luYCBtdXN0IGJlIHNwZWNpZmllZCB0b2dldGhlciAodmlhIGNvbW1hbmQtbGluZSBvciAiCiAiY29uZmlndXJhdGlvbiBvcHRpb24pXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo0NjgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDk3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlVua25vd24gLS1zdXBwcmVzcy1jYyBmaWVsZDogJyVzJ1xuIgogbXNnc3RyICJDYW1wIC0tc3VwcHJlc3MtY2MgZGVzY29uZWd1dDogwqslc8K7XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDk3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJVbmtub3duIC0tY29uZmlybSBzZXR0aW5nOiAnJXMnXG4iCiBtc2dzdHIgIi0tY29uZmlybSBzZXR0aW5nIGRlc2NvbmVndXQ6IMKrJXPCu1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NTYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogc2VuZG1haWwgYWxpYXMgd2l0aCBxdW90ZXMgaXMgbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAiYXbDrXM6IGVsIHNvYnJlbm9tIGRlIHNlbmRtYWlsIGFtYiBjb21ldGVzIG5vIGVzdMOgIHN1cG9ydGF0OiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyNworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogYDppbmNsdWRlOmAgbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAiYXbDrXM6IGA6aW5jbHVkZTpgIG5vIGVzdMOgIHN1cG9ydGF0OiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyOQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NjAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogYC9maWxlYCBvciBgfHBpcGVgIHJlZGlyZWN0aW9uIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCiBtc2dzdHIgImF2w61zOiBsZXMgcmVkaXJlY2Npb25zIGAvZmlsZWAgb3IgYHxwaXBlIG5vIHPDs24gYWRtZXNlczogJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MzQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTY1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IHNlbmRtYWlsIGxpbmUgaXMgbm90IHJlY29nbml6ZWQ6ICVzXG4iCiBtc2dzdHIgImF2w61zOiBubyBlcyBwb3QgcmVjb27DqGl4ZXIgbGEgbMOtbmlhIHNlbmRtYWlsOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjYxNgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NDkKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogIkZpbGUgJyVzJyBleGlzdHMgYnV0IGl0IGNvdWxkIGFsc28gYmUgdGhlIHJhbmdlIG9mIGNvbW1pdHNcbiIKQEAgLTIxMDM1LDEyICsyNDAzOCwxMiBAQAogIiAgICAqIERpZW50IFwiLi8lc1wiIHNpIHZvbMOtZXUgZXNwZWNpZmljYXIgYXF1ZXN0IGZpdHhlcjsgb1xuIgogIiAgICAqIFByb3BvcmNpb25hbnQgbCdvcGNpw7MgLS1mb3JtYXQtcGF0Y2ggc2kgdm9sw61ldSBlc3BlY2lmaWNhciB1biByYW5nLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjYzNworIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NzAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW5kaXIgJXM6ICVzIgogbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIG9icmlyIGVsIGRpcmVjdG9yaSAlczogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjYxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY5NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiZmF0YWw6ICVzOiAlc1xuIgpAQCAtMjEwNDksNyArMjQwNTIsNyBAQAogImZhdGFsOiAlczogJXNcbiIKICJhdsOtczogbm8gcydoYW4gZW52aWF0IHBlZGHDp29zXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjcyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcwNQogbXNnaWQgIiIKICJcbiIKICJObyBwYXRjaCBmaWxlcyBzcGVjaWZpZWQhXG4iCkBAIC0yMTA1OSwxNyArMjQwNjIsMTcgQEAKICJObyBzJ2hhbiBlc3BlY2lmaWNhdCBmaXR4ZXJzIGRlIHBlZGHDp1xuIgogIlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY4NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiTm8gc3ViamVjdCBsaW5lIGluICVzPyIKIG1zZ3N0ciAiU2Vuc2UgYXNzdW1wdGUgYSAlcz8iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Njk1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcyOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiBmb3Igd3JpdGluZyAlczogJXMiCiBtc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gb2JyaXIgcGVyIGVzY3JpcHR1cmEgJXM6ICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcwNgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MzkKIG1zZ2lkICIiCiAiTGluZXMgYmVnaW5uaW5nIGluIFwiR0lUOlwiIHdpbGwgYmUgcmVtb3ZlZC5cbiIKICJDb25zaWRlciBpbmNsdWRpbmcgYW4gb3ZlcmFsbCBkaWZmc3RhdCBvciB0YWJsZSBvZiBjb250ZW50c1xuIgpAQCAtMjEwODMsMjcgKzI0MDg2LDI3IEBACiAiXG4iCiAiTmV0ZWdldSBlbCBjb250aW5ndXQgZGVsIGNvcyBzaSBubyB2b2xldSBlbnZpYXIgdW4gcmVzdW0uXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzMwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc2MwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiAlczogJXMiCiBtc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gb2JyaXIgJXM6ICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc0NworIzogZ2l0LXNlbmQtZW1haWwucGVybDo3ODAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW4gJXMuZmluYWw6ICVzIgogbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIG9icmlyICVzLmZpbmFsOiAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo3OTAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODIzCiBtc2dpZCAiU3VtbWFyeSBlbWFpbCBpcyBlbXB0eSwgc2tpcHBpbmcgaXRcbiIKIG1zZ3N0ciAiRWwgY29ycmV1IGVsZWN0csOybmljIGRlIHJlc3VtIGVzdMOgIGJ1aXQsIHMnb21ldFxuIgogCiAjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGtlZXAgW3kvTl0gYXMgaXMuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjgyNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo4NTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHVzZSA8JXM+IFt5L05dPyAiCiBtc2dzdHIgIkVzdGV1IHNlZ3VyIHF1ZSB2b2xldSB1c2FyIDwlcz4gW3kvTl0/ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4ODAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTEzCiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgZmlsZXMgYXJlIDhiaXQsIGJ1dCBkbyBub3QgZGVjbGFyZSBhIENvbnRlbnQtVHJhbnNmZXItIgogIkVuY29kaW5nLlxuIgpAQCAtMjExMTEsMTEgKzI0MTE0LDExIEBACiAiRWxzIGZpdHhlcnMgc2Vnw7xlbnRzIHPDs24gOGJpdCwgcGVyw7Igbm8gZGVjbGFyZW4gdW4gQ29udGVudC1UcmFuc2Zlci0iCiAiRW5jb2RpbmcuXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODg1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkxOAogbXNnaWQgIldoaWNoIDhiaXQgZW5jb2Rpbmcgc2hvdWxkIEkgZGVjbGFyZSBbVVRGLThdPyAiCiBtc2dzdHIgIlF1aW5hIGNvZGlmaWNhY2nDsyBkZSA4IGJpdHMgaGF1cmlhIGRlIGRlY2xhcmFyIFtVVEYtOF0/ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4OTMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTI2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICJSZWZ1c2luZyB0byBzZW5kIGJlY2F1c2UgdGhlIHBhdGNoXG4iCkBAIC0yMTEyOCwyMyArMjQxMzEsMjMgQEAKICJwZXJxdcOoIGxhIHBsYW50aWxsYSB0w6kgbCdhc3N1bXB0ZSAnKioqIFNVQkpFQ1QgSEVSRSAqKionLiBQYXNzZXUgLS1mb3JjZSBzaSAiCiAicmVhbG1lbnQgdm9sZXUgZW52aWFyLWxvLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkxMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NDUKIG1zZ2lkICJUbyB3aG9tIHNob3VsZCB0aGUgZW1haWxzIGJlIHNlbnQgKGlmIGFueW9uZSk/IgogbXNnc3RyICIiCiAiQSBxdWkgcydoYXVyaWVuIGQnZW52aWFyIGVscyBjb3JyZXVzIGVsZWN0csOybmljcyAoc2kgcydoYW4gZCdlbnZpYXIgYSBhbGfDuik/IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkzMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NjMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZmF0YWw6IGFsaWFzICclcycgZXhwYW5kcyB0byBpdHNlbGZcbiIKIG1zZ3N0ciAiZmF0YWw6IGwnw6BsaWVzIMKrJXPCuyBzJ2V4cGFuZGVpeCBhIHNpIG1hdGVpeFxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjk0MgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NzUKIG1zZ2lkICJNZXNzYWdlLUlEIHRvIGJlIHVzZWQgYXMgSW4tUmVwbHktVG8gZm9yIHRoZSBmaXJzdCBlbWFpbCAoaWYgYW55KT8gIgogbXNnc3RyICIiCiAiUydoYSBkJ3VzYXIgZWwgTWVzc2FnZS1JRCBjb20gYSBJbi1SZXBseS1UbyBwZWwgcHJpbWVyIGNvcnJldSAoc2kgbidoaSBoYSAiCiAiY2FwKT8gIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMDAgZ2l0LXNlbmQtZW1haWwucGVybDoxMDA4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMzMgZ2l0LXNlbmQtZW1haWwucGVybDoxMDQxCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImVycm9yOiB1bmFibGUgdG8gZXh0cmFjdCBhIHZhbGlkIGFkZHJlc3MgZnJvbTogJXNcbiIKIG1zZ3N0ciAiZXJyb3I6IG5vIHMnaGEgcG9ndXQgZXh0cmV1cmUgdW5hIGFkcmXDp2EgdsOgbGlkYSBkZTogJXNcbiIKQEAgLTIxMTUyLDE2ICsyNDE1NSwxNiBAQAogIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtxXSBbZF0gW2VdIGluIHlvdXIKICMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKICMuIGF0IHRoaXMgcG9pbnQuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMTIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTA0NQogbXNnaWQgIldoYXQgdG8gZG8gd2l0aCB0aGlzIGFkZHJlc3M/IChbcV11aXR8W2Rdcm9wfFtlXWRpdCk6ICIKIG1zZ3N0ciAiUXXDqCBjYWwgZmVyIGFtYiBhcXVlc3RhIGFkcmXDp2E/IChbcV1zdXJ0fFtkXWVzY2FydGF8W2VdZGl0YSk6ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMzI5CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEzNjIKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiQ0EgcGF0aCBcIiVzXCIgZG9lcyBub3QgZXhpc3QiCi1tc2dzdHIgImVsIGNhbcOtIENBIFwiJXNcIiBubyBleGlzdGVpeCIKK21zZ3N0ciAiZWwgY2Ftw60gQ0Egwqslc8K7IG5vIGV4aXN0ZWl4IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0MTIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ0NQogbXNnaWQgIiIKICIgICAgVGhlIENjIGxpc3QgYWJvdmUgaGFzIGJlZW4gZXhwYW5kZWQgYnkgYWRkaXRpb25hbFxuIgogIiAgICBhZGRyZXNzZXMgZm91bmQgaW4gdGhlIHBhdGNoIGNvbW1pdCBtZXNzYWdlLiBCeSBkZWZhdWx0XG4iCkBAIC0yMTE4OCwyMjkgKzI0MTkxLDEzMSBAQAogIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFt5XSBbbl0gW2VdIFtxXSBbYV0gaW4geW91cgogIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAogIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQyNwotIywgZnV6enkKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ2MAogbXNnaWQgIlNlbmQgdGhpcyBlbWFpbD8gKFt5XWVzfFtuXW98W2VdZGl0fFtxXXVpdHxbYV1sbCk6ICIKLW1zZ3N0ciAiVm9sZXUgZW52aWFyIGFxdWVzdCBjb3JyZXUgZWxlY3Ryw7JuaWM/IChbeV1zw618W25db3xbcV1zdXJ0fFthXXRvdCk6ICIKK21zZ3N0ciAiIgorIlZvbGV1IGVudmlhciBhcXVlc3QgY29ycmV1IGVsZWN0csOybmljPyAoW3ldc8OtfFtuXW98W2VdZGl0YXxbcV1zdXJ0fFthXXRvdCk6ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDMwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjMKIG1zZ2lkICJTZW5kIHRoaXMgZW1haWwgcmVwbHkgcmVxdWlyZWQiCiBtc2dzdHIgIlJlcXVlcmVpeCByZXNwb3N0YSBlbiBlbnZpYXIgZWwgY29ycmV1IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NTgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ5MQogbXNnaWQgIlRoZSByZXF1aXJlZCBTTVRQIHNlcnZlciBpcyBub3QgcHJvcGVybHkgZGVmaW5lZC4iCiBtc2dzdHIgIkVsIHNlcnZpZG9yIFNNVFAgcmVxdWVyaXQgbm8gZXN0w6AgY29ycmVjdGFtZW50IGRlZmluaXQuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MDUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUzOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBTVEFSVFRMUyEgJXMiCiBtc2dzdHIgIkVsIHNlcnZpZG9yIG5vIGFkbWV0IFNUQVJUVExTISAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTEwIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUxNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTVEFSVFRMUyBmYWlsZWQhICVzIgogbXNnc3RyICJTVEFSVFRMUyBoYSBmYWxsYXQhICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MjMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU1NgogbXNnaWQgIlVuYWJsZSB0byBpbml0aWFsaXplIFNNVFAgcHJvcGVybHkuIENoZWNrIGNvbmZpZyBhbmQgdXNlIC0tc210cC1kZWJ1Zy4iCiBtc2dzdHIgIiIKICJObyBzJ2hhIHBvZ3V0IGluaWNpYWxpdHphciBTTVRQIGNvcnJlY3RhbWVudC4gQ29tcHJvdmV1LWhvIGxhIGNvbmZpZ3VyYWNpw7MgaSAiCiAidXNldSAtLXNtdHAtZGVidWcuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gc2VuZCAlc1xuIgogbXNnc3RyICJTJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGVudmlhciAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJEcnktU2VudCAlc1xuIgogbXNnc3RyICJTaW11bGFjacOzIGQnZW52aWFtZW50ICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNlbnQgJXNcbiIKIG1zZ3N0ciAiRW52aWF0ICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CiBtc2dpZCAiRHJ5LU9LLiBMb2cgc2F5czpcbiIKIG1zZ3N0ciAiU2ltdWxhY2nDsyBkZSBjb3JyZWN0ZS4gRWwgcmVnaXN0cmUgZGl1OlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3OQogbXNnaWQgIk9LLiBMb2cgc2F5czpcbiIKIG1zZ3N0ciAiQ29ycmVjdGUuIEVsIHJlZ2lzdHJlIGRpdTogXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU1OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTkxCiBtc2dpZCAiUmVzdWx0OiAiCiBtc2dzdHIgIlJlc3VsdGF0OiAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU2MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTk0CiBtc2dpZCAiUmVzdWx0OiBPS1xuIgogbXNnc3RyICJSZXN1bHRhdDogY29ycmVjdGVcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MTIKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgb3BlbiBmaWxlICVzIgogbXNnc3RyICJubyBlcyBwb3Qgb2JyaXIgZWwgZml0eGVyICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MjYgZ2l0LXNlbmQtZW1haWwucGVybDoxNjQ2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NTkgZ2l0LXNlbmQtZW1haWwucGVybDoxNjc5CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihtYm94KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIihtYm94KSBTJ2VzdMOgIGFmZWdpbnQgY2M6ICVzIGRlcyBkZSBsYSBsw61uaWEgwqslc8K7XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTYzMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjY1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihtYm94KSBBZGRpbmcgdG86ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIihtYm94KSBTJ2VzdMOgIGFmZWdpbnQgYTogJXMgZGVzIGRlIGxhIGzDrW5pYSDCqyVzwrtcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjg1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE3MTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKG5vbi1tYm94KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIihubyBtYm94KSBTJ2VzdMOgIGFmZWdpbnQgY2M6ICVzIGRlcyBkZSBsYSBsw61uaWEgwqslc8K7XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTcyMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzUzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihib2R5KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIihjb3MpIFMnZXN0w6AgYWZlZ2ludCBjYzogJXMgZGVzIGRlIGxhIGzDrW5pYSDCqyVzwrtcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODMxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NjQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKCVzKSBDb3VsZCBub3QgZXhlY3V0ZSAnJXMnIgogbXNnc3RyICIoJXMpIG5vIHMnaGEgcG9ndXQgZXhlY3V0YXIgwqslc8K7IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4MzgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg3MQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoJXMpIEFkZGluZyAlczogJXMgZnJvbTogJyVzJ1xuIgogbXNnc3RyICIoJXMpIFMnZXN0w6AgYWZlZ2ludCAlczogJXMgZGVzIGRlOiDCqyVzwrtcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODQyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NzUKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKCVzKSBmYWlsZWQgdG8gY2xvc2UgcGlwZSB0byAnJXMnIgogbXNnc3RyICIoJXMpIHMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gdGFuY2FyIGVsIGNvbmR1Y3RlIMKrJXPCuyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODcyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MDUKIG1zZ2lkICJjYW5ub3Qgc2VuZCBtZXNzYWdlIGFzIDdiaXQiCiBtc2dzdHIgIm5vIGVzIHBvdCBlbnZpYXIgZWwgbWlzc2F0Z2UgZW4gNyBiaXRzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4ODAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkxMwogbXNnaWQgImludmFsaWQgdHJhbnNmZXIgZW5jb2RpbmciCiBtc2dzdHIgImNvZGlmaWNhY2nDsyBkZSB0cmFuc2ZlcsOobmNpYSBubyB2w6BsaWRhIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MjEgZ2l0LXNlbmQtZW1haWwucGVybDoxOTczIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk4MworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTU0IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjAwNiBnaXQtc2VuZC1lbWFpbC5wZXJsOjIwMTYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzXG4iCiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgb2JyaXIgJXM6ICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkyNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTU3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiVzOiBwYXRjaCBjb250YWlucyBhIGxpbmUgbG9uZ2VyIHRoYW4gOTk4IGNoYXJhY3RlcnMiCiBtc2dzdHIgIiVzOiBlbCBwZWRhw6cgY29udMOpIHVuYSBsw61uaWEgbcOpcyBncmFuIGRlIDk5OCBjYXLDoGN0ZXJzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NDEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk3NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyAlcyB3aXRoIGJhY2t1cCBzdWZmaXggJyVzJy5cbiIKIG1zZ3N0ciAiUydlc3TDoCBvbWV0ZW50ICVzIGFtYiBlbCBzdWZpeCBkZSBjw7JwaWEgZGUgc2VndXJldGF0IMKrJXPCuy5cbiIKIAogIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBrZWVwICJbeXxOXSIgYXMgaXMuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NDUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk3OAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJEbyB5b3UgcmVhbGx5IHdhbnQgdG8gc2VuZCAlcz8gW3l8Tl06ICIKIG1zZ3N0ciAiRXN0ZXUgc2VndXIgcXVlIHZvbGV1IGVudmlhciAlcz8gW3l8Tl06ICIKLQotIywgZnV6enkKLSN+IG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyAobG9va2luZyBmb3IgJyVzJykiCi0jfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXN0YWJsaXIgwqslc8K7IGEgwqslc8K7IgotCi0jLCBmdXp6eQotI34gbXNnaWQgImJhZCBxdW90aW5nIG9uICVzIHZhbHVlIGluICclcyciCi0jfiBtc2dzdHIgIlZhbG9yIGVycm9uaSBkZSAlczogwqslc8K7IgotCi0jLCBmdXp6eQotI34gbXNnaWQgIkNvdWxkIG5vdCB1bnNldCBjb3JlLndvcmt0cmVlIHNldHRpbmcgaW4gc3VibW9kdWxlICclcyciCi0jfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXhlY3V0YXIgJ2dpdCBzdGF0dXMnIGFsIHN1Ym3DsmR1bCDCqyVzwrsiCi0KLSN+IG1zZ2lkICJDYW4ndCBzdGF0ICVzIgotI34gbXNnc3RyICJObyBlcyBwb3QgZmVyIHN0YXQgZW4gJXMiCi0KLSN+IG1zZ2lkICJhYm9ydCByZWJhc2UiCi0jfiBtc2dzdHIgImF2b3J0YSBlbCDCq3JlYmFzZcK7IgotCi0jfiBtc2dpZCAibWFrZSByZWJhc2Ugc2NyaXB0IgotI34gbXNnc3RyICJmZXMgdW4gc2NyaXB0IGRlIMKrcmViYXNlwrsiCi0KLSN+IG1zZ2lkICJObyBzdWNoIHJlbW90ZTogJXMiCi0jfiBtc2dzdHIgIk5vIGhpIGhhIHRhbCByZW1vdDogJXMiCi0KLSMsIGZ1enp5Ci0jfiBtc2dpZCAiY2Fubm90IG1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlIgotI34gbXNnc3RyICJObyBlcyBwb3QgcmVnaXN0cmFyIGwnZXN0YXQgZGUgbCdhcmJyZSBkZSB0cmViYWxsIgotCi0jLCBmdXp6eQotI34gbXNnaWQgImNhbm5vdCByZW1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlIgotI34gbXNnc3RyICJObyBlcyBwb3QgcmVnaXN0cmFyIGwnZXN0YXQgZGUgbCdhcmJyZSBkZSB0cmViYWxsIgotCi0jfiBtc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guIgotI34gbXNnc3RyICJTJ2hhIGFwbGljYXQgZWwgbWFnYXR6ZW0gYXV0b23DoHRpYy4iCi0KLSN+IG1zZ2lkICJDYW5ub3Qgc3RvcmUgJHN0YXNoX3NoYTEiCi0jfiBtc2dzdHIgIk5vIGVzIHBvdCBlbW1hZ2F0emVtYXIgJHN0YXNoX3NoYTEiCi0KLSMsIGZ1enp5Ci0jfiBtc2dpZCAiIgotI34gIlxuIgotI34gIlx0SG93ZXZlciwgaWYgeW91IHJlbW92ZSBldmVyeXRoaW5nLCB0aGUgcmViYXNlIHdpbGwgYmUgYWJvcnRlZC5cbiIKLSN+ICJcbiIKLSN+ICJcdCIKLSN+IG1zZ3N0ciAiIgotI34gIlxuIgotI34gIk5vIG9ic3RhbnQsIHNpIGVsaW1pbmV1IHRvdCwgcydhdm9ydGFyw6AgZWwgwqtyZWJhc2XCuy5cbiIKLSN+ICJcbiIKLQotI34gbXNnaWQgIkRpcnR5IGluZGV4OiBjYW5ub3QgbWVyZ2UgKGRpcnR5OiAlcykiCi0jfiBtc2dzdHIgIsONbmRleCBicnV0OiBubyBlcyBwb3QgZnVzaW9uYXIgKGJydXRzOiAlcykiCi0KLSN+IG1zZ2lkICIiCi0jfiAidW5leHBlY3RlZCAxc3QgbGluZSBvZiBzcXVhc2ggbWVzc2FnZTpcbiIKLSN+ICJcbiIKLSN+ICJcdCUuKnMiCi0jfiBtc2dzdHIgIiIKLSN+ICJQcmltZXJhIGzDrW5pYSBkZWwgbWlzc2F0Z2UgZGUgwqtzcXVhc2jCuyBubyBlc3BlcmFkYTpcbiIKLSN+ICJcbiIKLSN+ICJcdCUuKnMiCi0KLSN+IG1zZ2lkICIiCi0jfiAiaW52YWxpZCAxc3QgbGluZSBvZiBzcXVhc2ggbWVzc2FnZTpcbiIKLSN+ICJcbiIKLSN+ICJcdCUuKnMiCi0jfiBtc2dzdHIgIiIKLSN+ICJQcmltZXJhIGzDrW5pYSBkZWwgbWlzc2F0Z2UgZGUgwqtzcXVhc2jCuyBubyB2w6BsaWRhOlxuIgotI34gIlxuIgotI34gIlx0JS4qcyIKLQotI34gbXNnaWQgIkJVRzogcmV0dXJuZWQgcGF0aCBzdHJpbmcgZG9lc24ndCBtYXRjaCBjd2Q/IgotI34gbXNnc3RyICJFUlJBREE6IGxhIGNhZGVuYSBkZWwgY2Ftw60gcmV0b3JuYWRhIG5vIGNvaW5jaWRlaXggYW1iIGN3ZD8iCi0KLSN+IG1zZ2lkICIoKy8tKXgiCi0jfiBtc2dzdHIgIigrLy0peCIKLQotI34gbXNnaWQgIjxjb21tYW5kPiIKLSN+IG1zZ3N0ciAiPGNvbW1hbmQ+IgotCi0jfiBtc2dpZCAiRXZlcnlkYXkgR2l0IFdpdGggMjAgQ29tbWFuZHMgT3IgU28iCi0jfiBtc2dzdHIgIkdpdCBxdW90aWRpw6AgYW1iIG3DqXMgbyBtZW55cyAyMCBvcmRyZXMiCi0KLSN+IG1zZ2lkICJFcnJvciBpbiBvYmplY3QiCi0jfiBtc2dzdHIgIkVycm9yIGVuIG9iamVjdGUiCi0KLSN+IG1zZ2lkICJwdXNofGZldGNoIgotI34gbXNnc3RyICJwdXNofGZldGNoIgotCi0jfiBtc2dpZCAid1ssaTFbLGkyXV0iCi0jfiBtc2dzdHIgIndbLGkxWyxpMl1dIgotCi0jfiBtc2dpZCAiRW50ZXJpbmcgJyRkaXNwbGF5cGF0aCciCi0jfiBtc2dzdHIgIlMnZXN0w6AgZW50cmFudCAnJGRpc3BsYXlwYXRoJyIKLQotI34gbXNnaWQgIlN0b3BwaW5nIGF0ICckZGlzcGxheXBhdGgnOyBzY3JpcHQgcmV0dXJuZWQgbm9uLXplcm8gc3RhdHVzLiIKLSN+IG1zZ3N0ciAiIgotI34gIlMnZXN0w6AgYXR1cmFudCBhICckZGlzcGxheXBhdGgnOyBsJ3NjcmlwdCBoYSByZXRvcm5hdCB1biBlc3RhdCBubyB6ZXJvLiIKZGlmZiAtLWdpdCBhL3BvL2RlLnBvIGIvcG8vZGUucG8KaW5kZXggZDUxMTM0My4uY2ZlNTBjMSAxMDA2NDQKLS0tIGEvcG8vZGUucG8KKysrIGIvcG8vZGUucG8KQEAgLTEsNTkgKzEsNzY1IEBACiAjIEdlcm1hbiB0cmFuc2xhdGlvbnMgZm9yIEdpdC4KLSMgQ29weXJpZ2h0IChDKSAyMDEwLTIwMTYgUmFsZiBUaGllbG93IDxyYWxmLnRoaWVsb3dAZ21haWwuY29tPgorIyBDb3B5cmlnaHQgKEMpIDIwMTkgTWF0dGhpYXMgUsO8c3RlciA8bWF0dGhpYXMucnVlc3RlckBnbWFpbC5jb20+CiAjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBHaXQgcGFja2FnZS4KLSMgUmFsZiBUaGllbG93IDxyYWxmLnRoaWVsb3dAZ21haWwuY29tPiwgMjAxMC0yMDE2LgorIyBNYXR0aGlhcyBSw7xzdGVyIDxtYXR0aGlhcy5ydWVzdGVyQGdtYWlsLmNvbT4sIDIwMTktMjAyMC4KKyMgUmFsZiBUaGllbG93IDxyYWxmLnRoaWVsb3dAZ21haWwuY29tPiwgMjAxMC0yMDE5LgogIwogbXNnaWQgIiIKIG1zZ3N0ciAiIgogIlByb2plY3QtSWQtVmVyc2lvbjogR2l0XG4iCiAiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IEdpdCBNYWlsaW5nIExpc3QgPGdpdEB2Z2VyLmtlcm5lbC5vcmc+XG4iCi0iUE9ULUNyZWF0aW9uLURhdGU6IDIwMTgtMTItMDIgMTA6NTUrMDgwMFxuIgotIlBPLVJldmlzaW9uLURhdGU6IDIwMTYtMTEtMjggMTg6MTArMDEwMFxuIgotIkxhc3QtVHJhbnNsYXRvcjogUmFsZiBUaGllbG93IDxyYWxmLnRoaWVsb3dAZ21haWwuY29tPlxuIgotIkxhbmd1YWdlLVRlYW06IEdlcm1hbiA8PlxuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDIwLTAzLTExIDE1OjI2KzA4MDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDIwLTAzLTE0IDIyOjM0KzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IE1hdHRoaWFzIFLDvHN0ZXIgPG1hdHRoaWFzLnJ1ZXN0ZXJAZ21haWwuY29tPlxuIgorIkxhbmd1YWdlLVRlYW06IE1hdHRoaWFzIFLDvHN0ZXIgPG1hdHRoaWFzLnJ1ZXN0ZXJAZ21haWwuY29tPlxuIgogIkxhbmd1YWdlOiBkZVxuIgogIk1JTUUtVmVyc2lvbjogMS4wXG4iCiAiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCiAiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgogIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPShuIT0xKTtcbiIKIAotIzogYWR2aWNlLmM6OTkKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjM2OAorIywgYy1mb3JtYXQKK21zZ2lkICJIdWggKCVzKT8iCittc2dzdHIgIldpZSBiaXR0ZSAoJXMpPyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NTIxIGFkZC1pbnRlcmFjdGl2ZS5jOjgyMiBzZXF1ZW5jZXIuYzozMTI0CisjOiBzZXF1ZW5jZXIuYzozNTYyIGJ1aWx0aW4vcmViYXNlLmM6ODc1IGJ1aWx0aW4vcmViYXNlLmM6MTY4NworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDg2IGJ1aWx0aW4vcmViYXNlLmM6MjEzMAorbXNnaWQgImNvdWxkIG5vdCByZWFkIGluZGV4IgorbXNnc3RyICJJbmRleCBrb25udGUgbmljaHQgZ2VsZXNlbiB3ZXJkZW4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjU3NiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI2OQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyOTQKK21zZ2lkICJiaW5hcnkiCittc2dzdHIgIkJpbsOkciIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjM0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjc4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMzMgorbXNnaWQgIm5vdGhpbmciCittc2dzdHIgIk5pY2h0cyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjM1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzE0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMyOQorbXNnaWQgInVuY2hhbmdlZCIKK21zZ3N0ciAidW52ZXLDpG5kZXJ0IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2NzIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NDMKK21zZ2lkICJVcGRhdGUiCittc2dzdHIgIkFrdHVhbGlzaWVyZW4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY4OSBhZGQtaW50ZXJhY3RpdmUuYzo4NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YWdlICclcyciCittc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IHp1bSBDb21taXQgdm9ybWVya2VuLiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njk1IGFkZC1pbnRlcmFjdGl2ZS5jOjg4NCBzZXF1ZW5jZXIuYzozMzE3CisjOiBidWlsdGluL3JlYmFzZS5jOjg5OQorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBpbmRleCIKK21zZ3N0ciAiS29ubnRlIEluZGV4IG5pY2h0IHNjaHJlaWJlbi4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAidXBkYXRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInVwZGF0ZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAiJWQgUGZhZCBha3R1YWxpc2llcnRcbiIKK21zZ3N0clsxXSAiJWQgUGZhZGUgYWt0dWFsaXNpZXJ0XG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjcxNiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3OAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAibm90ZTogJXMgaXMgdW50cmFja2VkIG5vdy5cbiIKK21zZ3N0ciAiSGlud2VpczogJXMgaXN0IG51biB1bnZlcnNpb25pZXJ0LlxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3MjEgYXBwbHkuYzo0MTEwIGJ1aWx0aW4vY2hlY2tvdXQuYzoyODEKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFrZV9jYWNoZV9lbnRyeSBmYWlsZWQgZm9yIHBhdGggJyVzJyIKK21zZ3N0ciAibWFrZV9jYWNoZV9lbnRyeSBmw7xyIFBmYWQgJyVzJyBmZWhsZ2VzY2hsYWdlbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NzUxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjU1Cittc2dpZCAiUmV2ZXJ0IgorbXNnc3RyICJSZXZlcnQiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjc2NworbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBIRUFEXnt0cmVlfSIKK21zZ3N0ciAiS29ubnRlIEhFQURee3RyZWV9IG5pY2h0IHBhcnNlbi4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjgwNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzMQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAicmV2ZXJ0ZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJyZXZlcnRlZCAlZCBwYXRoc1xuIgorbXNnc3RyWzBdICIlZCBQZmFkIHdpZWRlcmhlcmdlc3RlbGx0XG4iCittc2dzdHJbMV0gIiVkIFBmYWRlIHdpZWRlcmhlcmdlc3RlbGx0XG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjg1NiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY5NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyB1bnRyYWNrZWQgZmlsZXMuXG4iCittc2dzdHIgIktlaW5lIHVudmVyc2lvbmllcnRlbiBEYXRlaWVuLlxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4NjAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2ODkKK21zZ2lkICJBZGQgdW50cmFja2VkIgorbXNnc3RyICJ1bnZlcnNpb25pZXJ0ZSBEYXRlaWVuIGhpbnp1ZsO8Z2VuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4ODcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MjUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgImFkZGVkICVkIHBhdGhcbiIKK21zZ2lkX3BsdXJhbCAiYWRkZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAiJWQgUGZhZCBoaW56dWdlZsO8Z3RcbiIKK21zZ3N0clsxXSAiJWQgUGZhZGUgaGluenVnZWbDvGd0XG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkxNworIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyB1bm1lcmdlZDogJXMiCittc2dzdHIgIklnbm9yaWVyZSBuaWNodCB6dXNhbW1lbmdlZsO8aHJ0ZSBEYXRlaTogJXMiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkyOSBhZGQtcGF0Y2guYzoxNjc1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2NgorIywgYy1mb3JtYXQKK21zZ2lkICJPbmx5IGJpbmFyeSBmaWxlcyBjaGFuZ2VkLlxuIgorbXNnc3RyICJOdXIgQmluw6RyZGF0ZWllbiBnZcOkbmRlcnQuXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkzMSBhZGQtcGF0Y2guYzoxNjczIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2OAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBjaGFuZ2VzLlxuIgorbXNnc3RyICJLZWluZSDDhG5kZXJ1bmdlbi5cbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTM1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM3NgorbXNnaWQgIlBhdGNoIHVwZGF0ZSIKK21zZ3N0ciAiUGF0Y2ggQWt0dWFsaXNpZXJ1bmciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjk3NCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NTQKK21zZ2lkICJSZXZpZXcgZGlmZiIKK21zZ3N0ciAiRGlmZiDDvGJlcnByw7xmZW4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDIKK21zZ2lkICJzaG93IHBhdGhzIHdpdGggY2hhbmdlcyIKK21zZ3N0ciAiWmVpZ2UgUGZhZGUgbWl0IMOEbmRlcnVuZ2VuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA0Cittc2dpZCAiYWRkIHdvcmtpbmcgdHJlZSBzdGF0ZSB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIgorbXNnc3RyICJadXN0YW5kIGRlcyBBcmJlaXRzdmVyemVpY2huaXNzZXMgenVtIENvbW1pdCB2b3JtZXJrZW4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDYKK21zZ2lkICJyZXZlcnQgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIGJhY2sgdG8gdGhlIEhFQUQgdmVyc2lvbiIKK21zZ3N0ciAiWnVtIENvbW1pdCB2b3JnZW1lcmt0ZSDDhG5kZXJ1bmdlbiBhdWYgSEVBRC1WZXJzaW9uIHp1csO8Y2tzZXR6ZW4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDgKK21zZ2lkICJwaWNrIGh1bmtzIGFuZCB1cGRhdGUgc2VsZWN0aXZlbHkiCittc2dzdHIgIkJsw7Zja2UgdW5kIMOEbmRlcnVuZyBnZXppZWx0IGF1c3fDpGhsZW4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMTAKK21zZ2lkICJ2aWV3IGRpZmYgYmV0d2VlbiBIRUFEIGFuZCBpbmRleCIKK21zZ3N0ciAiRGlmZmVyZW56IHp3aXNjaGVuIEhFQUQgdW5kIEluZGV4IGFuc2VoZW4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMTIKK21zZ2lkICJhZGQgY29udGVudHMgb2YgdW50cmFja2VkIGZpbGVzIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXMiCittc2dzdHIgIkluaGFsdGUgdm9uIHVudmVyc2lvbmllcnRlbiBEYXRlaWVuIHp1bSBDb21taXQgdm9ybWVya2VuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDIwIGFkZC1pbnRlcmFjdGl2ZS5jOjEwNjkKK21zZ2lkICJQcm9tcHQgaGVscDoiCittc2dzdHIgIkhpbGZlIGbDvHIgRWluZ2FiZW46IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDIyCittc2dpZCAic2VsZWN0IGEgc2luZ2xlIGl0ZW0iCittc2dzdHIgIkVpbiBlaW56ZWxuZXMgRWxlbWVudCBhdXN3w6RobGVuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDI0Cittc2dpZCAic2VsZWN0IGEgcmFuZ2Ugb2YgaXRlbXMiCittc2dzdHIgIkVpbmUgUmVpaGUgdm9uIEVsZW1lbnRlbiBhdXN3w6RobGVuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDI2Cittc2dpZCAic2VsZWN0IG11bHRpcGxlIHJhbmdlcyIKK21zZ3N0ciAiTWVocmVyZSBSZWloZW4gYXVzd8OkaGxlbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyOCBhZGQtaW50ZXJhY3RpdmUuYzoxMDczCittc2dpZCAic2VsZWN0IGl0ZW0gYmFzZWQgb24gdW5pcXVlIHByZWZpeCIKK21zZ3N0ciAiRWxlbWVudCBiYXNpZXJlbmQgYXVmIGVpbmRldXRpZ2VuIFByw6RmaXggYXVzd8OkaGxlbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAzMAorbXNnaWQgInVuc2VsZWN0IHNwZWNpZmllZCBpdGVtcyIKK21zZ3N0ciAiQW5nZWdlYmVuZSBFbGVtZW50ZSBhYnfDpGhsZW4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMzIKK21zZ2lkICJjaG9vc2UgYWxsIGl0ZW1zIgorbXNnc3RyICJBbGxlIEVsZW1lbnRlIGF1c3fDpGhsZW4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMzQKK21zZ2lkICIoZW1wdHkpIGZpbmlzaCBzZWxlY3RpbmciCittc2dzdHIgIihsZWVyKSBBdXN3w6RobGVuIGJlZW5kZW4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwNzEKK21zZ2lkICJzZWxlY3QgYSBudW1iZXJlZCBpdGVtIgorbXNnc3RyICJFaW4gbnVtbWVyaWVydGVzIEVsZW1lbnQgYXVzd8OkaGxlbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3NQorbXNnaWQgIihlbXB0eSkgc2VsZWN0IG5vdGhpbmciCittc2dzdHIgIihsZWVyKSBuaWNodHMgYXVzd8OkaGxlbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA4MyBidWlsdGluL2NsZWFuLmM6ODIyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTg1MQorbXNnaWQgIioqKiBDb21tYW5kcyAqKioiCittc2dzdHIgIioqKiBCZWZlaGxlICoqKiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA4NCBidWlsdGluL2NsZWFuLmM6ODIzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTg0OAorbXNnaWQgIldoYXQgbm93IgorbXNnc3RyICJXYXMgbnVuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTM2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEzCittc2dpZCAic3RhZ2VkIgorbXNnc3RyICJ6dXIgU3RhZ2luZy1BcmVhIGhpbnp1Z2Vmw7xndCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTEzNiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMworbXNnaWQgInVuc3RhZ2VkIgorbXNnc3RyICJhdXMgU3RhZ2luZy1BcmVhIGVudGZlcm50IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTM2IGFwcGx5LmM6NDk2NyBhcHBseS5jOjQ5NzAgYnVpbHRpbi9hbS5jOjIyNTEKKyM6IGJ1aWx0aW4vYW0uYzoyMjU0IGJ1aWx0aW4vY2xvbmUuYzoxMjMgYnVpbHRpbi9mZXRjaC5jOjE0NAorIzogYnVpbHRpbi9tZXJnZS5jOjI3NCBidWlsdGluL3B1bGwuYzoxODkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzOTQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzOTcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTAyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTA1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE0OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMworbXNnaWQgInBhdGgiCittc2dzdHIgIlBmYWQiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExNDMKK21zZ2lkICJjb3VsZCBub3QgcmVmcmVzaCBpbmRleCIKK21zZ3N0ciAiSW5kZXgga29ubnRlIG5pY2h0IGFrdHVhbGlzaWVydCB3ZXJkZW4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExNTcgYnVpbHRpbi9jbGVhbi5jOjc4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnllLlxuIgorbXNnc3RyICJUc2Now7xzcy5cbiIKKworIzogYWRkLXBhdGNoLmM6MzMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiTW9kdXPDpG5kZXJ1bmcgZGVyIFN0YWdpbmctQXJlYSBoaW56dWbDvGdlbiBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI5CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiTMO2c2NodW5nIGRlciBTdGFnaW5nLUFyZWEgaGluenVmw7xnZW4gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjM1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzMAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJEaWVzZW4gUGF0Y2gtQmxvY2sgZGVyIFN0YWdpbmctQXJlYSBoaW56dWbDvGdlbiBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzcKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisic3RhZ2luZy4iCittc2dzdHIgIiIKKyJXZW5uIGRlciBQYXRjaCBzYXViZXIgYW5nZXdlbmRldCB3ZXJkZW4ga2Fubiwgd2lyZCBkZXIgYmVhcmJlaXRldGUgIgorIlBhdGNoLUJsb2NrIGRpcmVrdCBmw7xyIGRpZSBTdGFnaW5nLUFyZWEgbWFya2llcnQuIgorCisjOiBhZGQtcGF0Y2guYzo0MAorbXNnaWQgIiIKKyJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHN0YWdlIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIGRpZXNlbiBQYXRjaC1CbG9jayB6dW0gQ29tbWl0IHZvcm1lcmtlblxuIgorIm4gLSBkaWVzZW4gUGF0Y2gtQmxvY2sgbmljaHQgenVtIENvbW1pdCB2b3JtZXJrZW5cbiIKKyJxIC0gQmVlbmRlbjsgZGllc2VuIG9kZXIgYWxsZSB2ZXJibGVpYmVuZGVuIFBhdGNoLUJsw7Zja2UgbmljaHQgenVtIENvbW1pdCAiCisidm9ybWVya2VuXG4iCisiYSAtIGRpZXNlbiB1bmQgYWxsZSB3ZWl0ZXJlbiBQYXRjaC1CbMO2Y2tlIGRpZXNlciBEYXRlaSB6dW0gQ29tbWl0IHZvcm1lcmtlblxuIgorImQgLSBkaWVzZW4gb2RlciBhbGxlIHdlaXRlcmVuIFBhdGNoLUJsw7Zja2UgaW4gZGllc2VyIERhdGVpIG5pY2h0IHp1bSBDb21taXQgIgorInZvcm1lcmtlblxuIgorCisjOiBhZGQtcGF0Y2guYzo1NCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzMKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YXNoIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJNb2R1c8OkbmRlcnVuZyBzdGFzaGVuIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo1NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YXNoIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJMw7ZzY2h1bmcgc3Rhc2hlbiBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NTYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkRpZXNlbiBQYXRjaC1CbG9jayBzdGFzaGVuIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo1OAorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJzdGFzaGluZy4iCittc2dzdHIgIiIKKyJXZW5uIGRlciBQYXRjaCBzYXViZXIgYW5nZXdlbmRldCB3ZXJkZW4ga2Fubiwgd2lyZCBkZXIgYmVhcmJlaXRldGUgIgorIlBhdGNoLUJsb2NrIGRpcmVrdCB6dW0gU3Rhc2hlbiBtYXJraWVydC4iCisKKyM6IGFkZC1wYXRjaC5jOjYxCittc2dpZCAiIgorInkgLSBzdGFzaCB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVua1xuIgorInEgLSBxdWl0OyBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gc3Rhc2ggdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gZGllc2VuIFBhdGNoLUJsb2NrIHN0YXNoZW5cbiIKKyJuIC0gZGllc2VuIFBhdGNoLUJsb2NrIG5pY2h0IHN0YXNoZW5cbiIKKyJxIC0gQmVlbmRlbjsgZGllc2VuIG9kZXIgYWxsZSB2ZXJibGVpYmVuZGVuIFBhdGNoLUJsw7Zja2UgbmljaHQgc3Rhc2hlblxuIgorImEgLSBkaWVzZW4gdW5kIGFsbGUgd2VpdGVyZW4gUGF0Y2gtQmzDtmNrZSBkaWVzZXIgRGF0ZWkgc3Rhc2hlblxuIgorImQgLSBkaWVzZW4gb2RlciBhbGxlIHdlaXRlcmVuIFBhdGNoLUJsw7Zja2UgZGllc2VyIERhdGVpIG5pY2h0IHN0YXNoZW5cbiIKKworIzogYWRkLXBhdGNoLmM6NzcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJNb2R1c8OkbmRlcnVuZyBhdXMgZGVyIFN0YWdpbmctQXJlYSBlbnRmZXJuZW4gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjc4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzOQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5zdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiTMO2c2NodW5nIGF1cyBkZXIgU3RhZ2luZy1BcmVhIGVudGZlcm5lbiBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NzkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiRGllc2VuIFBhdGNoLUJsb2NrIGF1cyBkZXIgU3RhZ2luZy1BcmVhIGVudGZlcm5lbiBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6ODEKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisidW5zdGFnaW5nLiIKK21zZ3N0ciAiIgorIldlbm4gZGVyIFBhdGNoIHNhdWJlciBhbmdld2VuZGV0IHdlcmRlbiBrYW5uLCB3aXJkIGRlciBiZWFyYmVpdGV0ZSAiCisiUGF0Y2gtQmxvY2sgZGlyZWt0IHp1bSBFbnRmZXJuZW4gYXVzIGRlciBTdGFnaW5nLUFyZWEgbWFya2llcnQuIgorCisjOiBhZGQtcGF0Y2guYzo4NAorbXNnaWQgIiIKKyJ5IC0gdW5zdGFnZSB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHVuc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBkaWVzZW4gUGF0Y2gtQmxvY2sgYXVzIFN0YWdpbmctQXJlYSBlbnRmZXJuZW5cbiIKKyJuIC0gZGllc2VuIFBhdGNoLUJsb2NrIG5pY2h0IGF1cyBTdGFnaW5nLUFyZWEgZW50ZmVybmVuXG4iCisicSAtIEJlZW5kZW47IGRpZXNlbiBvZGVyIGFsbGUgdmVyYmxlaWJlbmRlbiBQYXRjaC1CbMO2Y2tlIG5pY2h0IGF1cyBTdGFnaW5nLSIKKyJBcmVhIGVudGZlcm5lblxuIgorImEgLSBkaWVzZW4gdW5kIGFsbGUgd2VpdGVyZW4gUGF0Y2gtQmzDtmNrZSBkaWVzZXIgRGF0ZWkgYXVzIFN0YWdpbmctQXJlYSAiCisiZW50ZmVybmVuXG4iCisiZCAtIGRpZXNlbiBvZGVyIGFsbGUgd2VpdGVyZW4gUGF0Y2gtQmzDtmNrZSBkaWVzZXIgRGF0ZWkgbmljaHQgYXVzIFN0YWdpbmctIgorIkFyZWEgZW50ZmVybmVuXG4iCisKKyM6IGFkZC1wYXRjaC5jOjk5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0MworIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIk1vZHVzw6RuZGVydW5nIGF1ZiBJbmRleCBhbndlbmRlbiBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0NAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkzDtnNjaHVuZyBhdWYgSW5kZXggYW53ZW5kZW4gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEwMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiRGllc2VuIFBhdGNoLUJsb2NrIGF1ZiBJbmRleCBhbndlbmRlbiBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAzIGFkZC1wYXRjaC5jOjE2OCBhZGQtcGF0Y2guYzoyMTEKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisiYXBwbHlpbmcuIgorbXNnc3RyICJXZW5uIGRlciBQYXRjaCBzYXViZXIgYW5nZXdlbmRldCB3ZXJkZW4ga2Fubiwgd2lyZCBkZXIgYmVhcmJlaXRldGUgIgorIlBhdGNoLUJsb2NrIGRpcmVrdCB6dW0gQW53ZW5kZW4gbWFya2llcnQuIgorCisjOiBhZGQtcGF0Y2guYzoxMDYKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4XG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBkaWVzZW4gUGF0Y2gtQmxvY2sgYXVmIGRlbiBJbmRleCBhbndlbmRlblxuIgorIm4gLSBkaWVzZW4gUGF0Y2gtQmxvY2sgbmljaHQgYXVmIGRlbiBJbmRleCBhbndlbmRlblxuIgorInEgLSBCZWVuZGVuOyBkaWVzZW4gb2RlciBhbGxlIHZlcmJsZWliZW5kZW4gUGF0Y2gtQmzDtmNrZSBuaWNodCBhdWYgZGVuIEluZGV4ICIKKyJhbndlbmRlblxuIgorImEgLSBkaWVzZW4gdW5kIGFsbGUgd2VpdGVyZW4gUGF0Y2gtQmzDtmNrZSBkaWVzZXIgRGF0ZWkgYXVmIGRlbiBJbmRleCAiCisiYW53ZW5kZW5cbiIKKyJkIC0gZGllc2VuIG9kZXIgYWxsZSB3ZWl0ZXJlbiBQYXRjaC1CbMO2Y2tlIGRpZXNlciBEYXRlaSBuaWNodCBhdWYgZGVuIEluZGV4ICIKKyJhbndlbmRlblxuIgorCisjOiBhZGQtcGF0Y2guYzoxMjEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjMKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiTW9kdXPDpG5kZXJ1bmcgaW0gQXJiZWl0c3ZlcnplaWNobmlzIHZlcndlcmZlbiBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTIyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0OQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkzDtnNjaHVuZyBpbSBBcmJlaXRzdmVyemVpY2huaXMgdmVyd2VyZmVuIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDUwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkRpZXNlbiBQYXRjaC1CbG9jayBpbSBBcmJlaXRzdmVyemVpY2huaXMgdmVyd2VyZmVuIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjUgYWRkLXBhdGNoLmM6MTQ3IGFkZC1wYXRjaC5jOjE5MAorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJkaXNjYXJkaW5nLiIKK21zZ3N0ciAiIgorIldlbm4gZGVyIFBhdGNoIHNhdWJlciBhbmdld2VuZGV0IHdlcmRlbiBrYW5uLCB3aXJkIGRlciBiZWFyYmVpdGV0ZSAiCisiUGF0Y2gtQmxvY2sgZGlyZWt0IHp1bSBWZXJ3ZXJmZW4gbWFya2llcnQuIgorCisjOiBhZGQtcGF0Y2guYzoxMjggYWRkLXBhdGNoLmM6MTkzCittc2dpZCAiIgorInkgLSBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGRpc2NhcmQgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBkaWVzZW4gUGF0Y2gtQmxvY2sgaW0gQXJiZWl0c3ZlcnplaWNobmlzIHZlcndlcmZlblxuIgorIm4gLSBkaWVzZW4gUGF0Y2gtQmxvY2sgaW0gQXJiZWl0c3ZlcnplaWNobmlzIG5pY2h0IHZlcndlcmZlblxuIgorInEgLSBCZWVuZGVuOyBkaWVzZW4gb2RlciBhbGxlIHZlcmJsZWliZW5kZW4gUGF0Y2gtQmzDtmNrZSBuaWNodCBpbSAiCisiQXJiZWl0c3ZlcnplaWNobmlzIHZlcndlcmZlblxuIgorImEgLSBkaWVzZW4gdW5kIGFsbGUgd2VpdGVyZW4gUGF0Y2gtQmzDtmNrZSBkaWVzZXIgRGF0ZWkgaW0gQXJiZWl0c3ZlcnplaWNobmlzICIKKyJ2ZXJ3ZXJmZW5cbiIKKyJkIC0gZGllc2VuIG9kZXIgYWxsZSB3ZWl0ZXJlbiBQYXRjaC1CbMO2Y2tlIGRpZXNlciBEYXRlaSBuaWNodCBpbSAiCisiQXJiZWl0c3ZlcnplaWNobmlzIHZlcndlcmZlblxuIgorCisjOiBhZGQtcGF0Y2guYzoxNDMgYWRkLXBhdGNoLmM6MTg2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1MworIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorIk1vZHVzw6RuZGVydW5nIHZvbSBJbmRleCB1bmQgQXJiZWl0c3ZlcnplaWNobmlzIHZlcndlcmZlbiBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ0IGFkZC1wYXRjaC5jOjE4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkzDtnNjaHVuZyB2b20gSW5kZXggdW5kIEFyYmVpdHN2ZXJ6ZWljaG5pcyB2ZXJ3ZXJmZW4gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE0NSBhZGQtcGF0Y2guYzoxODggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDU1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorIkRpZXNlbiBQYXRjaC1CbG9jayB2b20gSW5kZXggdW5kIEFyYmVpdHN2ZXJ6ZWljaG5pcyB2ZXJ3ZXJmZW4gW3ksbixxLGEsZCIKKyIlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNTAKK21zZ2lkICIiCisieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gZGllc2VuIFBhdGNoLUJsb2NrIGltIEluZGV4IHVuZCBBcmJlaXRzdmVyemVpY2huaXMgdmVyd2VyZmVuXG4iCisibiAtIGRpZXNlbiBQYXRjaC1CbG9jayBuaWNodCBpbSBJbmRleCB1bmQgQXJiZWl0c3ZlcnplaWNobmlzIHZlcndlcmZlblxuIgorInEgLSBCZWVuZGVuOyBkaWVzZW4gb2RlciBhbGxlIHZlcmJsZWliZW5kZW4gUGF0Y2gtQmzDtmNrZSBuaWNodCB2ZXJ3ZXJmZW5cbiIKKyJhIC0gZGllc2VuIHVuZCBhbGxlIHdlaXRlcmVuIFBhdGNoLUJsw7Zja2UgaW4gZGVyIERhdGVpIHZlcndlcmZlblxuIgorImQgLSBkaWVzZW4gb2RlciBhbGxlIHdlaXRlcmVuIFBhdGNoLUJsw7Zja2UgaW4gZGVyIERhdGVpIG5pY2h0IHZlcndlcmZlblxuIgorCisjOiBhZGQtcGF0Y2guYzoxNjQgYWRkLXBhdGNoLmM6MjA3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1OAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisiTW9kdXPDpG5kZXJ1bmcgYXVmIEluZGV4IHVuZCBBcmJlaXRzdmVyemVpY2huaXMgYW53ZW5kZW4gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE2NSBhZGQtcGF0Y2guYzoyMDggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDU5CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBkZWxldGlvbiB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkzDtnNjaHVuZyBhdWYgSW5kZXggdW5kIEFyYmVpdHN2ZXJ6ZWljaG5pcyBhbndlbmRlbiBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTY2IGFkZC1wYXRjaC5jOjIwOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKyJEaWVzZW4gUGF0Y2gtQmxvY2sgYXVmIEluZGV4IHVuZCBBcmJlaXRzdmVyemVpY2huaXMgYW53ZW5kZW4gW3ksbixxLGEsZCIKKyIlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNzEKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIGRpZXNlbiBQYXRjaC1CbG9jayBpbSBJbmRleCB1bmQgYXVmIGRhcyBBcmJlaXRzdmVyemVpY2huaXMgYW53ZW5kZW5cbiIKKyJuIC0gZGllc2VuIFBhdGNoLUJsb2NrIG5pY2h0IGltIEluZGV4IHVuZCBhdWYgZGFzIEFyYmVpdHN2ZXJ6ZWljaG5pcyAiCisiYW53ZW5kZW5cbiIKKyJxIC0gQmVlbmRlbjsgZGllc2VuIG9kZXIgYWxsZSB2ZXJibGVpYmVuZGVuIFBhdGNoLUJsw7Zja2UgbmljaHQgYW53ZW5kZW5cbiIKKyJhIC0gZGllc2VuIHVuZCBhbGxlIHdlaXRlcmVuIFBhdGNoLUJsw7Zja2UgaW4gZGVyIERhdGVpIGFud2VuZGVuXG4iCisiZCAtIGRpZXNlbiBvZGVyIGFsbGUgd2VpdGVyZW4gUGF0Y2gtQmzDtmNrZSBpbiBkZXIgRGF0ZWkgbmljaHQgYW53ZW5kZW5cbiIKKworIzogYWRkLXBhdGNoLmM6MjE0Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gZGllc2VuIFBhdGNoLUJsb2NrIGF1ZiBkYXMgQXJiZWl0c3ZlcnplaWNobmlzIGFud2VuZGVuXG4iCisibiAtIGRpZXNlbiBQYXRjaC1CbG9jayBuaWNodCBhdWYgZGFzIEFyYmVpdHN2ZXJ6ZWljaG5pcyBhbndlbmRlblxuIgorInEgLSBCZWVuZGVuOyBkaWVzZW4gdW5kIGFsbGUgdmVyYmxlaWJlbmRlbiBQYXRjaC1CbMO2Y2tlIG5pY2h0IGFud2VuZGVuXG4iCisiYSAtIGRpZXNlbiB1bmQgYWxsZSB3ZWl0ZXJlbiBQYXRjaC1CbMO2Y2tlIGluIGRlciBEYXRlaSBhbndlbmRlblxuIgorImQgLSBkaWVzZW4gdW5kIGFsbGUgd2VpdGVyZW4gUGF0Y2gtQmzDtmNrZSBpbiBkZXIgRGF0ZWkgbmljaHQgYW53ZW5kZW5cbiIKKworIzogYWRkLXBhdGNoLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciAnJS4qcyciCittc2dzdHIgIktvbm50ZSBCbG9jay1IZWFkZXIgJyUuKnMnIG5pY2h0IHBhcnNlbi4iCisKKyM6IGFkZC1wYXRjaC5jOjMzNyBhZGQtcGF0Y2guYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbG9yZWQgaHVuayBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICJLb25udGUgZmFyYmlnZW4gQmxvY2stSGVhZGVyICclLipzJyBuaWNodCBwYXJzZW4uIgorCisjOiBhZGQtcGF0Y2guYzozOTUKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgZGlmZiIKK21zZ3N0ciAiS29ubnRlIERpZmZlcmVueiBuaWNodCBwYXJzZW4uIgorCisjOiBhZGQtcGF0Y2guYzo0MTQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29sb3JlZCBkaWZmIgorbXNnc3RyICJLb25udGUgZmFyYmlnZSBEaWZmZXJlbnogbmljaHQgcGFyc2VuLiIKKworIzogYWRkLXBhdGNoLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBydW4gJyVzJyIKK21zZ3N0ciAiJyVzJyBrb25udGUgbmljaHQgYXVzZ2Vmw7xocnQgd2VyZGVuIgorCisjOiBhZGQtcGF0Y2guYzo1ODcKK21zZ2lkICJtaXNtYXRjaGVkIG91dHB1dCBmcm9tIGludGVyYWN0aXZlLmRpZmZGaWx0ZXIiCittc2dzdHIgIm5pY2h0IMO8YmVyZWluc3RpbW1lbmRlIEF1c2dhYmUgdm9uIGludGVyYWN0aXZlLmRpZmZGaWx0ZXIiCisKKyM6IGFkZC1wYXRjaC5jOjU4OAorbXNnaWQgIiIKKyJZb3VyIGZpbHRlciBtdXN0IG1haW50YWluIGEgb25lLXRvLW9uZSBjb3JyZXNwb25kZW5jZVxuIgorImJldHdlZW4gaXRzIGlucHV0IGFuZCBvdXRwdXQgbGluZXMuIgorbXNnc3RyICIiCisiRGVyIEZpbHRlciBtdXNzIGVpbmUgRWlucy16dS1FaW5zLUJlemllaHVuZ1xuIgorInp3aXNjaGVuIGRlbiBFaW4tIHVuZCBBdXNnYWJlLVplaWxlbiBlaW5oYWx0ZW4uIgorCisjOiBhZGQtcGF0Y2guYzo3NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4cGVjdGVkIGNvbnRleHQgbGluZSAjJWQgaW5cbiIKKyIlLipzIgorbXNnc3RyICIiCisiRXJ3YXJ0ZXRlIEtvbnRleHR6ZWlsZSAjJWQgaW5cbiIKKyIlLipzIgorCisjOiBhZGQtcGF0Y2guYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImh1bmtzIGRvIG5vdCBvdmVybGFwOlxuIgorIiUuKnNcbiIKKyJcdGRvZXMgbm90IGVuZCB3aXRoOlxuIgorIiUuKnMiCittc2dzdHIgIiIKKyJQYXRjaC1CbMO2Y2tlIMO8YmVybGFwcGVuIHNpY2ggbmljaHQ6XG4iCisiJS4qc1xuIgorIlx0ZW5kZXQgbmljaHQgbWl0OlxuIgorIiUuKnMiCisKKyM6IGFkZC1wYXRjaC5jOjEwNTIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTEyCittc2dpZCAiTWFudWFsIGh1bmsgZWRpdCBtb2RlIC0tIHNlZSBib3R0b20gZm9yIGEgcXVpY2sgZ3VpZGUuXG4iCittc2dzdHIgIiIKKyJNYW51ZWxsZXIgRWRpdGllcm1vZHVzIGbDvHIgUGF0Y2gtQmzDtmNrZSAtLSBzaWVoZSBuYWNoIHVudGVuIGbDvHIgZWluZVxuIgorIkt1cnphbmxlaXR1bmcuXG4iCisKKyM6IGFkZC1wYXRjaC5jOjEwNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tLVxuIgorIlRvIHJlbW92ZSAnJWMnIGxpbmVzLCBtYWtlIHRoZW0gJyAnIGxpbmVzIChjb250ZXh0KS5cbiIKKyJUbyByZW1vdmUgJyVjJyBsaW5lcywgZGVsZXRlIHRoZW0uXG4iCisiTGluZXMgc3RhcnRpbmcgd2l0aCAlYyB3aWxsIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiIKKyItLS1cbiIKKyJVbSAnJWMnIFplaWxlbiB6dSBlbnRmZXJuZW4sIG1hY2hlbiBTaWUgYXVzIGRpZXNlbiAnICcgWmVpbGVuIChLb250ZXh0KS5cbiIKKyJVbSAnJWMnIFplaWxlbiB6dSBlbnRmZXJuZW4sIGzDtnNjaGVuIFNpZSBkaWVzZS5cbiIKKyJaZWlsZW4sIGRpZSBtaXQgJWMgYmVnaW5uZW4sIHdlcmRlbiBlbnRmZXJudC5cbiIKKworIy4gVFJBTlNMQVRPUlM6ICdpdCcgcmVmZXJzIHRvIHRoZSBwYXRjaCBtZW50aW9uZWQgaW4gdGhlIHByZXZpb3VzIG1lc3NhZ2VzLgorIzogYWRkLXBhdGNoLmM6MTA3MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMjYKK21zZ2lkICIiCisiSWYgaXQgZG9lcyBub3QgYXBwbHkgY2xlYW5seSwgeW91IHdpbGwgYmUgZ2l2ZW4gYW4gb3Bwb3J0dW5pdHkgdG9cbiIKKyJlZGl0IGFnYWluLiAgSWYgYWxsIGxpbmVzIG9mIHRoZSBodW5rIGFyZSByZW1vdmVkLCB0aGVuIHRoZSBlZGl0IGlzXG4iCisiYWJvcnRlZCBhbmQgdGhlIGh1bmsgaXMgbGVmdCB1bmNoYW5nZWQuXG4iCittc2dzdHIgIiIKKyJXZW5uIGRhcyBuaWNodCBzYXViZXIgYW5nZXdlbmRldCB3ZXJkZW4ga2FubiwgaGFiZW4gU2llIGRpZSBNw7ZnbGljaGtlaXRcbiIKKyJlaW5lciBlcm5ldXRlbiBCZWFyYmVpdHVuZy4gV2VubiBhbGxlIFplaWxlbiBkZXMgUGF0Y2gtQmxvY2tzIGVudGZlcm50ICIKKyJ3ZXJkZW4sXG4iCisid2lyZCBkaWUgQmVhcmJlaXR1bmcgYWJnZWJyb2NoZW4gdW5kIGRlciBQYXRjaC1CbG9jayBibGVpYnQgdW52ZXLDpG5kZXJ0LlxuIgorCisjOiBhZGQtcGF0Y2guYzoxMTAzCittc2dpZCAiY291bGQgbm90IHBhcnNlIGh1bmsgaGVhZGVyIgorbXNnc3RyICJLb25udGUgQmxvY2stSGVhZGVyIG5pY2h0IHBhcnNlbi4iCisKKyM6IGFkZC1wYXRjaC5jOjExNDgKK21zZ2lkICInZ2l0IGFwcGx5IC0tY2FjaGVkJyBmYWlsZWQiCittc2dzdHIgIidnaXQgYXBwbHkgLS1jYWNoZWQnIHNjaGx1ZyBmZWhsLiIKKworIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KKyMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dCBhdCB0aGlzIHBvaW50LgorIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKKyMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCisjLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KKyMuCisjLiBUUkFOU0xBVE9SUzogZG8gbm90IHRyYW5zbGF0ZSBbeS9uXQorIy4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCB0aGF0IGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKKyMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCisjLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KKyM6IGFkZC1wYXRjaC5jOjEyMTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjM5Cittc2dpZCAiIgorIllvdXIgZWRpdGVkIGh1bmsgZG9lcyBub3QgYXBwbHkuIEVkaXQgYWdhaW4gKHNheWluZyBcIm5vXCIgZGlzY2FyZHMhKSBbeS9uXT8gIgorbXNnc3RyICIiCisiSWhyIGJlYXJiZWl0ZXRlciBQYXRjaC1CbG9jayBrYW5uIG5pY2h0IGFuZ2V3ZW5kZXQgd2VyZGVuLlxuIgorIkVybmV1dCBiZWFyYmVpdGVuPyAoXCJuXCIgdmVyd2lyZnQgQmVhcmJlaXR1bmchKSBbeS9uXT8iCisKKyM6IGFkZC1wYXRjaC5jOjEyNjEKK21zZ2lkICJUaGUgc2VsZWN0ZWQgaHVua3MgZG8gbm90IGFwcGx5IHRvIHRoZSBpbmRleCEiCittc2dzdHIgIiIKKyJEaWUgYXVzZ2V3w6RobHRlbiBQYXRjaC1CbMO2Y2tlIGvDtm5uZW4gbmljaHQgYXVmIGRlbiBJbmRleCBhbmdld2VuZGV0IHdlcmRlbiEiCisKKyM6IGFkZC1wYXRjaC5jOjEyNjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQzCittc2dpZCAiQXBwbHkgdGhlbSB0byB0aGUgd29ya3RyZWUgYW55d2F5PyAiCittc2dzdHIgIlRyb3R6ZGVtIGF1ZiBBcmJlaXRzdmVyemVpY2huaXMgYW53ZW5kZW4/ICIKKworIzogYWRkLXBhdGNoLmM6MTI2OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDYKK21zZ2lkICJOb3RoaW5nIHdhcyBhcHBsaWVkLlxuIgorbXNnc3RyICJOaWNodHMgYW5nZXdlbmRldC5cbiIKKworIzogYWRkLXBhdGNoLmM6MTMyNgorbXNnaWQgIiIKKyJqIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIG5leHQgdW5kZWNpZGVkIGh1bmtcbiIKKyJKIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIG5leHQgaHVua1xuIgorImsgLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgcHJldmlvdXMgdW5kZWNpZGVkIGh1bmtcbiIKKyJLIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIHByZXZpb3VzIGh1bmtcbiIKKyJnIC0gc2VsZWN0IGEgaHVuayB0byBnbyB0b1xuIgorIi8gLSBzZWFyY2ggZm9yIGEgaHVuayBtYXRjaGluZyB0aGUgZ2l2ZW4gcmVnZXhcbiIKKyJzIC0gc3BsaXQgdGhlIGN1cnJlbnQgaHVuayBpbnRvIHNtYWxsZXIgaHVua3NcbiIKKyJlIC0gbWFudWFsbHkgZWRpdCB0aGUgY3VycmVudCBodW5rXG4iCisiPyAtIHByaW50IGhlbHBcbiIKK21zZ3N0ciAiIgorImogLSBkaWVzZW4gUGF0Y2gtQmxvY2sgdW5iZXN0aW1tdCBsYXNzZW4sIG7DpGNoc3RlbiB1bmJlc3RpbW10ZW4gUGF0Y2gtQmxvY2sgIgorImFuemVpZ2VuXG4iCisiSiAtIGRpZXNlbiBQYXRjaC1CbG9jayB1bmJlc3RpbW10IGxhc3NlbiwgbsOkY2hzdGVuIFBhdGNoLUJsb2NrIGFuemVpZ2VuXG4iCisiayAtIGRpZXNlbiBQYXRjaC1CbG9jayB1bmJlc3RpbW10IGxhc3Nlbiwgdm9yaGVyaWdlbiB1bmJlc3RpbW10ZW4gUGF0Y2gtIgorIkJsb2NrIGFuemVpZ2VuXG4iCisiSyAtIGRpZXNlbiBQYXRjaC1CbG9jayB1bmJlc3RpbW10IGxhc3Nlbiwgdm9yaGVyaWdlbiBQYXRjaC1CbG9jayBhbnplaWdlblxuIgorImcgLSBQYXRjaC1CbG9jayB6dW0gSGluc3ByaW5nZW4gYXVzd8OkaGxlblxuIgorIi8gLSBuYWNoIFBhdGNoLUJsb2NrIHN1Y2hlbiwgZGVyIGdlZ2ViZW5lbSByZWd1bMOkcmVtIEF1c2RydWNrIGVudHNwcmljaHRcbiIKKyJzIC0gYWt0dWVsbGVuIFBhdGNoLUJsb2NrIGluIGtsZWluZXJlIFBhdGNoLUJsw7Zja2UgYXVmdGVpbGVuXG4iCisiZSAtIGFrdHVlbGxlbiBQYXRjaC1CbG9jayBtYW51ZWxsIGVkaXRpZXJlblxuIgorIj8gLSBIaWxmZSBhbnplaWdlblxuIgorCisjOiBhZGQtcGF0Y2guYzoxNDQ3IGFkZC1wYXRjaC5jOjE0NTcKK21zZ2lkICJObyBwcmV2aW91cyBodW5rIgorbXNnc3RyICJLZWluIHZvcmhlcmlnZXIgUGF0Y2gtQmxvY2siCisKKyM6IGFkZC1wYXRjaC5jOjE0NTIgYWRkLXBhdGNoLmM6MTQ2MgorbXNnaWQgIk5vIG5leHQgaHVuayIKK21zZ3N0ciAiS2VpbiBmb2xnZW5kZXIgUGF0Y2gtQmxvY2siCisKKyM6IGFkZC1wYXRjaC5jOjE0NjgKK21zZ2lkICJObyBvdGhlciBodW5rcyB0byBnb3RvIgorbXNnc3RyICJLZWluZSBhbmRlcmVuIFBhdGNoLUJsw7Zja2UgdmVyYmxlaWJlbmQiCisKKyM6IGFkZC1wYXRjaC5jOjE0NzkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTc3Cittc2dpZCAiZ28gdG8gd2hpY2ggaHVuayAoPHJldD4gdG8gc2VlIG1vcmUpPyAiCittc2dzdHIgInp1IHdlbGNoZW0gUGF0Y2gtQmxvY2sgc3ByaW5nZW4gKDxFbnRlcj4gZsO8ciBtZWhyIEluZm9ybWF0aW9uZW4pPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE0ODAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTc5Cittc2dpZCAiZ28gdG8gd2hpY2ggaHVuaz8gIgorbXNnc3RyICJ6dSB3ZWxjaGVtIFBhdGNoLUJsb2NrIHNwcmluZ2VuPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE0OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBudW1iZXI6ICclcyciCittc2dzdHIgIlVuZ8O8bHRpZ2UgTnVtbWVyOiAnJXMnIgorCisjOiBhZGQtcGF0Y2guYzoxNDk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlNvcnJ5LCBvbmx5ICVkIGh1bmsgYXZhaWxhYmxlLiIKK21zZ2lkX3BsdXJhbCAiU29ycnksIG9ubHkgJWQgaHVua3MgYXZhaWxhYmxlLiIKK21zZ3N0clswXSAiRW50c2NodWxkaWd1bmcsIG51ciAlZCBQYXRjaC1CbG9jayB2ZXJmw7xnYmFyLiIKK21zZ3N0clsxXSAiRW50c2NodWxkaWd1bmcsIG51ciAlZCBQYXRjaC1CbMO2Y2tlIHZlcmbDvGdiYXIuIgorCisjOiBhZGQtcGF0Y2guYzoxNTA1Cittc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gc2VhcmNoIgorbXNnc3RyICJLZWluZSBhbmRlcmVuIFBhdGNoLUJsw7Zja2UgenVtIER1cmNoc3VjaGVuIgorCisjOiBhZGQtcGF0Y2guYzoxNTExIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYyMworbXNnaWQgInNlYXJjaCBmb3IgcmVnZXg/ICIKK21zZ3N0ciAiU3VjaGUgbmFjaCByZWd1bMOkcmVtIEF1c2RydWNrPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWFsZm9ybWVkIHNlYXJjaCByZWdleHAgJXM6ICVzIgorbXNnc3RyICJGZWhsZXJoYWZ0ZXIgcmVndWzDpHJlciBBdXNkcnVjayBmw7xyIFN1Y2hlICVzOiAlcyIKKworIzogYWRkLXBhdGNoLmM6MTU0MworbXNnaWQgIk5vIGh1bmsgbWF0Y2hlcyB0aGUgZ2l2ZW4gcGF0dGVybiIKK21zZ3N0ciAiS2VpbiBQYXRjaC1CbG9jayBlbnRzcHJpY2h0IGRlbSBhbmdlZ2ViZW5lbiBNdXN0ZXIiCisKKyM6IGFkZC1wYXRjaC5jOjE1NTAKK21zZ2lkICJTb3JyeSwgY2Fubm90IHNwbGl0IHRoaXMgaHVuayIKK21zZ3N0ciAiRW50c2NodWxkaWd1bmcsIGthbm4gZGllc2VuIFBhdGNoLUJsb2NrIG5pY2h0IGF1ZnRlaWxlbiIKKworIzogYWRkLXBhdGNoLmM6MTU1NAorIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdCBpbnRvICVkIGh1bmtzLiIKK21zZ3N0ciAiSW4gJWQgUGF0Y2gtQmxvY2sgYXVmZ2V0ZWlsdC4iCisKKyM6IGFkZC1wYXRjaC5jOjE1NTgKK21zZ2lkICJTb3JyeSwgY2Fubm90IGVkaXQgdGhpcyBodW5rIgorbXNnc3RyICJFbnRzY2h1bGRpZ3VuZywga2FubiBkaWVzZW4gUGF0Y2gtQmxvY2sgbmljaHQgYmVhcmJlaXRlbiIKKworIzogYWRkLXBhdGNoLmM6MTYwOQorbXNnaWQgIidnaXQgYXBwbHknIGZhaWxlZCIKK21zZ3N0ciAiJ2dpdCBhcHBseScgc2NobHVnIGZlaGwiCisKKyM6IGFkdmljZS5jOjExNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlc2hpbnQ6ICUuKnMlc1xuIgogbXNnc3RyICIlc0hpbndlaXM6ICUuKnMlc1xuIgogCi0jOiBhZHZpY2UuYzoxNTIKKyM6IGFkdmljZS5jOjE2OAogbXNnaWQgIkNoZXJyeS1waWNraW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiIgogIkNoZXJyeS1QaWNrZW4gaXN0IG5pY2h0IG3DtmdsaWNoLCB3ZWlsIFNpZSBuaWNodCB6dXNhbW1lbmdlZsO8aHJ0ZSBEYXRlaWVuICIKICJoYWJlbi4iCiAKLSM6IGFkdmljZS5jOjE1NAorIzogYWR2aWNlLmM6MTcwCiBtc2dpZCAiQ29tbWl0dGluZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgIiIKICJDb21taXR0ZW4gaXN0IG5pY2h0IG3DtmdsaWNoLCB3ZWlsIFNpZSBuaWNodCB6dXNhbW1lbmdlZsO8aHJ0ZSBEYXRlaWVuIGhhYmVuLiIKIAotIzogYWR2aWNlLmM6MTU2CisjOiBhZHZpY2UuYzoxNzIKIG1zZ2lkICJNZXJnaW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiIgogIk1lcmdlbiBpc3QgbmljaHQgbcO2Z2xpY2gsIHdlaWwgU2llIG5pY2h0IHp1c2FtbWVuZ2Vmw7xocnRlIERhdGVpZW4gaGFiZW4uIgogCi0jOiBhZHZpY2UuYzoxNTgKKyM6IGFkdmljZS5jOjE3NAogbXNnaWQgIlB1bGxpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICIiCiAiUHVsbGVuIGlzdCBuaWNodCBtw7ZnbGljaCwgd2VpbCBTaWUgbmljaHQgenVzYW1tZW5nZWbDvGhydGUgRGF0ZWllbiBoYWJlbi4iCiAKLSM6IGFkdmljZS5jOjE2MAorIzogYWR2aWNlLmM6MTc2CiBtc2dpZCAiUmV2ZXJ0aW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiIgogIlJldmVydGVuIGlzdCBuaWNodCBtw7ZnbGljaCwgd2VpbCBTaWUgbmljaHQgenVzYW1tZW5nZWbDvGhydGUgRGF0ZWllbiBoYWJlbi4iCiAKLSM6IGFkdmljZS5jOjE2MgorIzogYWR2aWNlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkl0IGlzIG5vdCBwb3NzaWJsZSB0byAlcyBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiJXMgaXN0IG5pY2h0IG3DtmdsaWNoLCB3ZWlsIFNpZSBuaWNodCB6dXNhbW1lbmdlZsO8aHJ0ZSBEYXRlaWVuIGhhYmVuLiIKIAotIzogYWR2aWNlLmM6MTcwCisjOiBhZHZpY2UuYzoxODYKIG1zZ2lkICIiCiAiRml4IHRoZW0gdXAgaW4gdGhlIHdvcmsgdHJlZSwgYW5kIHRoZW4gdXNlICdnaXQgYWRkL3JtIDxmaWxlPidcbiIKICJhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24gYW5kIG1ha2UgYSBjb21taXQuIgpAQCAtNjIsMTQ2ICs3NjgsMTU2IEBACiAiZGFubiAnZ2l0IGFkZC9ybSA8RGF0ZWk+JywgdW0gZGllIEF1ZmzDtnN1bmcgZW50c3ByZWNoZW5kIHp1IG1hcmtpZXJlblxuIgogInVuZCB6dSBjb21taXR0ZW4uIgogCi0jOiBhZHZpY2UuYzoxNzgKKyM6IGFkdmljZS5jOjE5NAogbXNnaWQgIkV4aXRpbmcgYmVjYXVzZSBvZiBhbiB1bnJlc29sdmVkIGNvbmZsaWN0LiIKIG1zZ3N0ciAiQmVlbmRlIHdlZ2VuIHVuYXVmZ2Vsw7ZzdGVtIEtvbmZsaWt0LiIKIAotIzogYWR2aWNlLmM6MTgzIGJ1aWx0aW4vbWVyZ2UuYzoxMjg5CisjOiBhZHZpY2UuYzoxOTkgYnVpbHRpbi9tZXJnZS5jOjEzMzUKIG1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS4iCiBtc2dzdHIgIlNpZSBoYWJlbiBJaHJlbiBNZXJnZSBuaWNodCBhYmdlc2NobG9zc2VuIChNRVJHRV9IRUFEIGV4aXN0aWVydCkuIgogCi0jOiBhZHZpY2UuYzoxODUKKyM6IGFkdmljZS5jOjIwMQogbXNnaWQgIlBsZWFzZSwgY29tbWl0IHlvdXIgY2hhbmdlcyBiZWZvcmUgbWVyZ2luZy4iCiBtc2dzdHIgIkJpdHRlIGNvbW1pdHRlbiBTaWUgSWhyZSDDhG5kZXJ1bmdlbiwgYmV2b3IgU2llIG1lcmdlbi4iCiAKLSM6IGFkdmljZS5jOjE4NgorIzogYWR2aWNlLmM6MjAyCiBtc2dpZCAiRXhpdGluZyBiZWNhdXNlIG9mIHVuZmluaXNoZWQgbWVyZ2UuIgogbXNnc3RyICJCZWVuZGUgd2VnZW4gbmljaHQgYWJnZXNjaGxvc3NlbmVtIE1lcmdlLiIKIAotIzogYWR2aWNlLmM6MTkyCisjOiBhZHZpY2UuYzoyMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgotIk5vdGU6IGNoZWNraW5nIG91dCAnJXMnLlxuIgorIk5vdGU6IHN3aXRjaGluZyB0byAnJXMnLlxuIgogIlxuIgogIllvdSBhcmUgaW4gJ2RldGFjaGVkIEhFQUQnIHN0YXRlLiBZb3UgY2FuIGxvb2sgYXJvdW5kLCBtYWtlIGV4cGVyaW1lbnRhbFxuIgogImNoYW5nZXMgYW5kIGNvbW1pdCB0aGVtLCBhbmQgeW91IGNhbiBkaXNjYXJkIGFueSBjb21taXRzIHlvdSBtYWtlIGluIHRoaXNcbiIKLSJzdGF0ZSB3aXRob3V0IGltcGFjdGluZyBhbnkgYnJhbmNoZXMgYnkgcGVyZm9ybWluZyBhbm90aGVyIGNoZWNrb3V0LlxuIgorInN0YXRlIHdpdGhvdXQgaW1wYWN0aW5nIGFueSBicmFuY2hlcyBieSBzd2l0Y2hpbmcgYmFjayB0byBhIGJyYW5jaC5cbiIKICJcbiIKICJJZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBuZXcgYnJhbmNoIHRvIHJldGFpbiBjb21taXRzIHlvdSBjcmVhdGUsIHlvdSBtYXlcbiIKLSJkbyBzbyAobm93IG9yIGxhdGVyKSBieSB1c2luZyAtYiB3aXRoIHRoZSBjaGVja291dCBjb21tYW5kIGFnYWluLiBFeGFtcGxlOlxuIgorImRvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1jIHdpdGggdGhlIHN3aXRjaCBjb21tYW5kLiBFeGFtcGxlOlxuIgogIlxuIgotIiAgZ2l0IGNoZWNrb3V0IC1iIDxuZXctYnJhbmNoLW5hbWU+XG4iCisiICBnaXQgc3dpdGNoIC1jIDxuZXctYnJhbmNoLW5hbWU+XG4iCisiXG4iCisiT3IgdW5kbyB0aGlzIG9wZXJhdGlvbiB3aXRoOlxuIgorIlxuIgorIiAgZ2l0IHN3aXRjaCAtXG4iCisiXG4iCisiVHVybiBvZmYgdGhpcyBhZHZpY2UgYnkgc2V0dGluZyBjb25maWcgdmFyaWFibGUgYWR2aWNlLmRldGFjaGVkSGVhZCB0byAiCisiZmFsc2VcbiIKICJcbiIKIG1zZ3N0ciAiIgotIkhpbndlaXM6IENoZWNrZSAnJXMnIGF1cy5cbiIKKyJIaW53ZWlzOiBXZWNoc2xlIHp1ICclcycuXG4iCiAiXG4iCiAiU2llIGJlZmluZGVuIHNpY2ggaW0gWnVzdGFuZCBlaW5lcyAnbG9zZ2Vsw7ZzdGVuIEhFQUQnLiBTaWUga8O2bm5lbiBzaWNoXG4iCiAidW1zY2hhdWVuLCBleHBlcmltZW50ZWxsZSDDhG5kZXJ1bmdlbiB2b3JuZWhtZW4gdW5kIGRpZXNlIGNvbW1pdHRlbiwgdW5kXG4iCiAiU2llIGvDtm5uZW4gYWxsZSBtw7ZnbGljaGVuIENvbW1pdHMsIGRpZSBTaWUgaW4gZGllc2VtIFp1c3RhbmQgbWFjaGVuLFxuIgotIm9obmUgQXVzd2lya3VuZ2VuIGF1ZiBpcmdlbmRlaW5lbiBCcmFuY2ggdmVyd2VyZmVuLCBpbmRlbSBTaWUgZWluZW5cbiIKLSJ3ZWl0ZXJlbiBDaGVja291dCBkdXJjaGbDvGhyZW4uXG4iCisib2huZSBBdXN3aXJrdW5nZW4gYXVmIGlyZ2VuZGVpbmVuIEJyYW5jaCB2ZXJ3ZXJmZW4sIGluZGVtIFNpZSB6dSBlaW5lbVxuIgorImFuZGVyZW4gQnJhbmNoIHdlY2hzZWxuLlxuIgogIlxuIgogIldlbm4gU2llIGVpbmVuIG5ldWVuIEJyYW5jaCBlcnN0ZWxsZW4gbcO2Y2h0ZW4sIHVtIElocmUgZXJzdGVsbHRlbiBDb21taXRzXG4iCi0ienUgYmVoYWx0ZW4sIGvDtm5uZW4gU2llIGRhcyAoamV0enQgb2RlciBzcMOkdGVyKSBkdXJjaCBlaW5lbiB3ZWl0ZXJlbiAiCi0iQ2hlY2tvdXRcbiIKLSJtaXQgZGVyIE9wdGlvbiAtYiB0dW4uIEJlaXNwaWVsOlxuIgorInp1IGJlaGFsdGVuLCBrw7ZubmVuIFNpZSBkYXMgKGpldHp0IG9kZXIgc3DDpHRlcikgZHVyY2ggTnV0enVuZyB2b25cbiIKKyInc3dpdGNoJyBtaXQgZGVyIE9wdGlvbiAtYyB0dW4uIEJlaXNwaWVsOlxuIgogIlxuIgotIiAgZ2l0IGNoZWNrb3V0IC1iIDxuZXVlci1CcmFuY2huYW1lPlxuIgorIiAgZ2l0IHN3aXRjaCAtYyA8bmV1ZXItQnJhbmNobmFtZT5cbiIKKyJcbiIKKyJPZGVyIHVtIGRpZXNlIE9wZXJhdGlvbiByw7xja2fDpG5naWcgenUgbWFjaGVuOlxuIgorIiAgZ2l0IHN3aXRjaCAtXG4iCisiXG4iCisiU2llIGvDtm5uZW4gZGllc2VuIEhpbndlaXMgYXVzc2NoYWx0ZW4sIGluZGVtIFNpZSBkaWUgS29uZmlndXJhdGlvbnN2YXJpYWJsZVxuIgorIidhZHZpY2UuZGV0YWNoZWRIZWFkJyBhdWYgJ2ZhbHNlJyBzZXR6ZW4uXG4iCiAiXG4iCiAKLSM6IGFwcGx5LmM6NTkKKyM6IGFsaWFzLmM6NTAKK21zZ2lkICJjbWRsaW5lIGVuZHMgd2l0aCBcXCIKK21zZ3N0ciAiQmVmZWhsc3plaWxlIGVuZGV0IG1pdCBcXCIKKworIzogYWxpYXMuYzo1MQorbXNnaWQgInVuY2xvc2VkIHF1b3RlIgorbXNnc3RyICJOaWNodCBnZXNjaGxvc3NlbmUgQW5mw7xocnVuZ3N6ZWljaGVuLiIKKworIzogYXBwbHkuYzo2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgd2hpdGVzcGFjZSBvcHRpb24gJyVzJyIKLW1zZ3N0ciAibmljaHQgZXJrYW5udGUgV2hpdGVzcGFjZS1PcHRpb246ICclcyciCittc2dzdHIgIk5pY2h0IGVya2FubnRlIFdoaXRlc3BhY2UtT3B0aW9uOiAnJXMnIgogCi0jOiBhcHBseS5jOjc1CisjOiBhcHBseS5jOjg1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCB3aGl0ZXNwYWNlIGlnbm9yZSBvcHRpb24gJyVzJyIKIG1zZ3N0ciAibmljaHQgZXJrYW5udGUgT3B0aW9uIHp1bSBJZ25vcmllcmVuIHZvbiBXaGl0ZXNwYWNlOiAnJXMnIgogCi0jOiBhcHBseS5jOjEyNQorIzogYXBwbHkuYzoxMzUKIG1zZ2lkICItLXJlamVjdCBhbmQgLS0zd2F5IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyLiIKIG1zZ3N0ciAiLS1yZWplY3QgdW5kIC0tM3dheSBrw7ZubmVuIG5pY2h0IGdlbWVpbnNhbSB2ZXJ3ZW5kZXQgd2VyZGVuLiIKIAotIzogYXBwbHkuYzoxMjcKKyM6IGFwcGx5LmM6MTM3CiBtc2dpZCAiLS1jYWNoZWQgYW5kIC0tM3dheSBjYW5ub3QgYmUgdXNlZCB0b2dldGhlci4iCiBtc2dzdHIgIi0tY2FjaGVkIHVuZCAtLTN3YXkga8O2bm5lbiBuaWNodCBnZW1laW5zYW0gdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGFwcGx5LmM6MTMwCisjOiBhcHBseS5jOjE0MAogbXNnaWQgIi0tM3dheSBvdXRzaWRlIGEgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogIkRpZSBPcHRpb24gLS0zd2F5IGthbm4gbmljaHQgYXXDn2VyaGFsYiBlaW5lcyBSZXBvc2l0b3JpZXMgdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGFwcGx5LmM6MTQxCisjOiBhcHBseS5jOjE1MQogbXNnaWQgIi0taW5kZXggb3V0c2lkZSBhIHJlcG9zaXRvcnkiCiBtc2dzdHIgIiIKICJEaWUgT3B0aW9uIC0taW5kZXgga2FubiBuaWNodCBhdcOfZXJoYWxiIGVpbmVzIFJlcG9zaXRvcmllcyB2ZXJ3ZW5kZXQgd2VyZGVuLiIKIAotIzogYXBwbHkuYzoxNDQKKyM6IGFwcGx5LmM6MTU0CiBtc2dpZCAiLS1jYWNoZWQgb3V0c2lkZSBhIHJlcG9zaXRvcnkiCiBtc2dzdHIgIiIKICJEaWUgT3B0aW9uIC0tY2FjaGVkIGthbm4gbmljaHQgYXXDn2VyaGFsYiBlaW5lcyBSZXBvc2l0b3JpZXMgdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGFwcGx5LmM6ODI2CisjOiBhcHBseS5jOjgwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgcHJlcGFyZSB0aW1lc3RhbXAgcmVnZXhwICVzIgogbXNnc3RyICJLYW5uIHJlZ3Vsw6RyZW4gQXVzZHJ1Y2sgZsO8ciBaZWl0c3RlbXBlbCAlcyBuaWNodCB2ZXJhcmJlaXRlbiIKIAotIzogYXBwbHkuYzo4MzUKKyM6IGFwcGx5LmM6ODEwCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZ2V4ZWMgcmV0dXJuZWQgJWQgZm9yIGlucHV0OiAlcyIKIG1zZ3N0ciAiQXVzZsO8aHJ1bmcgZGVzIHJlZ3Vsw6RyZW4gQXVzZHJ1Y2tzIGdhYiAlZCB6dXLDvGNrLiBFaW5nYWJlOiAlcyIKIAotIzogYXBwbHkuYzo5MDkKKyM6IGFwcGx5LmM6ODg0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBmaW5kIGZpbGVuYW1lIGluIHBhdGNoIGF0IGxpbmUgJWQiCiBtc2dzdHIgIktvbm50ZSBrZWluZW4gRGF0ZWluYW1lbiBpbiBaZWlsZSAlZCBkZXMgUGF0Y2hlcyBmaW5kZW4uIgogCi0jOiBhcHBseS5jOjk0NworIzogYXBwbHkuYzo5MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwsIGdvdCAlcyBvbiBsaW5lICVkIgogbXNnc3RyICIiCiAiZ2l0IGFwcGx5OiB1bmfDvGx0aWdlcyAnZ2l0LWRpZmYnIC0gZXJ3YXJ0ZXRlIC9kZXYvbnVsbCwgZXJoaWVsdCAlcyBpbiBaZWlsZSAiCiAiJWQiCiAKLSM6IGFwcGx5LmM6OTUzCisjOiBhcHBseS5jOjkyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGluY29uc2lzdGVudCBuZXcgZmlsZW5hbWUgb24gbGluZSAlZCIKIG1zZ3N0ciAiIgogImdpdCBhcHBseTogdW5nw7xsdGlnZXMgJ2dpdC1kaWZmJyAtIElua29uc2lzdGVudGVyIG5ldWVyIERhdGVpbmFtZSBpbiBaZWlsZSAlZCIKIAotIzogYXBwbHkuYzo5NTQKKyM6IGFwcGx5LmM6OTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gaW5jb25zaXN0ZW50IG9sZCBmaWxlbmFtZSBvbiBsaW5lICVkIgogbXNnc3RyICIiCiAiZ2l0IGFwcGx5OiB1bmfDvGx0aWdlcyAnZ2l0LWRpZmYnIC0gSW5rb25zaXN0ZW50ZXIgYWx0ZXIgRGF0ZWluYW1lIGluIFplaWxlICVkIgogCi0jOiBhcHBseS5jOjk1OQorIzogYXBwbHkuYzo5MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwgb24gbGluZSAlZCIKIG1zZ3N0ciAiZ2l0IGFwcGx5OiB1bmfDvGx0aWdlcyAnZ2l0LWRpZmYnIC0gZXJ3YXJ0ZXRlIC9kZXYvbnVsbCBpbiBaZWlsZSAlZCIKIAotIzogYXBwbHkuYzo5ODgKKyM6IGFwcGx5LmM6OTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbW9kZSBvbiBsaW5lICVkOiAlcyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgTW9kdXMgaW4gWmVpbGUgJWQ6ICVzIgogCi0jOiBhcHBseS5jOjEzMDcKKyM6IGFwcGx5LmM6MTI4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbmNvbnNpc3RlbnQgaGVhZGVyIGxpbmVzICVkIGFuZCAlZCIKIG1zZ3N0ciAiSW5rb25zaXN0ZW50ZSBLb3BmemVpbGVuICVkIHVuZCAlZC4iCiAKLSM6IGFwcGx5LmM6MTQ3OQotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWNvdW50OiB1bmV4cGVjdGVkIGxpbmU6ICUuKnMiCi1tc2dzdHIgInJlY291bnQ6IHVuZXJ3YXJ0ZXRlIFplaWxlOiAlLipzIgotCi0jOiBhcHBseS5jOjE1NDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGF0Y2ggZnJhZ21lbnQgd2l0aG91dCBoZWFkZXIgYXQgbGluZSAlZDogJS4qcyIKLW1zZ3N0ciAiUGF0Y2gtRnJhZ21lbnQgb2huZSBLb3BmYmVyZWljaCBiZWkgWmVpbGUgJWQ6ICUuKnMiCi0KLSM6IGFwcGx5LmM6MTU2OAorIzogYXBwbHkuYzoxMzcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gd2hlbiByZW1vdmluZyAlZCBsZWFkaW5nIHBhdGhuYW1lICIKQEAgLTIxNiw3MiArOTMyLDgyIEBACiAiRGVtIEtvcGZiZXJlaWNoIHZvbiBcImdpdCBkaWZmXCIgZmVobGVuIEluZm9ybWF0aW9uZW4genVtIERhdGVpbmFtZW4sIHdlbm4gIgogIiVkIHZvcmFuZ2VzdGVsbHRlIFRlaWxlIGRlcyBQZmFkZXMgZW50ZmVybnQgd2VyZGVuIChaZWlsZSAlZCkiCiAKLSM6IGFwcGx5LmM6MTU4MQorIzogYXBwbHkuYzoxMzg1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBkaWZmIGhlYWRlciBsYWNrcyBmaWxlbmFtZSBpbmZvcm1hdGlvbiAobGluZSAlZCkiCiBtc2dzdHIgIiIKICJEZW0gS29wZmJlcmVpY2ggdm9uIFwiZ2l0IGRpZmZcIiBmZWhsZW4gSW5mb3JtYXRpb25lbiB6dW0gRGF0ZWluYW1lbiAoWmVpbGUgIgogIiVkKSIKIAotIzogYXBwbHkuYzoxNzY5CisjOiBhcHBseS5jOjE0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVjb3VudDogdW5leHBlY3RlZCBsaW5lOiAlLipzIgorbXNnc3RyICJyZWNvdW50OiB1bmVyd2FydGV0ZSBaZWlsZTogJS4qcyIKKworIzogYXBwbHkuYzoxNTUwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGNoIGZyYWdtZW50IHdpdGhvdXQgaGVhZGVyIGF0IGxpbmUgJWQ6ICUuKnMiCittc2dzdHIgIlBhdGNoLUZyYWdtZW50IG9obmUgS29wZmJlcmVpY2ggYmVpIFplaWxlICVkOiAlLipzIgorCisjOiBhcHBseS5jOjE3NTMKIG1zZ2lkICJuZXcgZmlsZSBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKIG1zZ3N0ciAibmV1ZSBEYXRlaSBow6RuZ3Qgdm9uIGFsdGVuIEluaGFsdGVuIGFiIgogCi0jOiBhcHBseS5jOjE3NzEKKyM6IGFwcGx5LmM6MTc1NQogbXNnaWQgImRlbGV0ZWQgZmlsZSBzdGlsbCBoYXMgY29udGVudHMiCiBtc2dzdHIgImVudGZlcm50ZSBEYXRlaSBoYXQgbm9jaCBJbmhhbHRlIgogCi0jOiBhcHBseS5jOjE4MDUKKyM6IGFwcGx5LmM6MTc4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IHBhdGNoIGF0IGxpbmUgJWQiCiBtc2dzdHIgImZlaGxlcmhhZnRlciBQYXRjaCBiZWkgWmVpbGUgJWQiCiAKLSM6IGFwcGx5LmM6MTg0MgorIzogYXBwbHkuYzoxODI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBmaWxlICVzIGRlcGVuZHMgb24gb2xkIGNvbnRlbnRzIgogbXNnc3RyICJuZXVlIERhdGVpICVzIGjDpG5ndCB2b24gYWx0ZW4gSW5oYWx0ZW4gYWIiCiAKLSM6IGFwcGx5LmM6MTg0NAorIzogYXBwbHkuYzoxODI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbGV0ZWQgZmlsZSAlcyBzdGlsbCBoYXMgY29udGVudHMiCiBtc2dzdHIgImVudGZlcm50ZSBEYXRlaSAlcyBoYXQgbm9jaCBJbmhhbHRlIgogCi0jOiBhcHBseS5jOjE4NDcKKyM6IGFwcGx5LmM6MTgzMQogIywgYy1mb3JtYXQKIG1zZ2lkICIqKiB3YXJuaW5nOiBmaWxlICVzIGJlY29tZXMgZW1wdHkgYnV0IGlzIG5vdCBkZWxldGVkIgogbXNnc3RyICIqKiBXYXJudW5nOiBEYXRlaSAlcyB3aXJkIGxlZXIsIGFiZXIgbmljaHQgZW50ZmVybnQuIgogCi0jOiBhcHBseS5jOjE5OTQKKyM6IGFwcGx5LmM6MTk3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IGJpbmFyeSBwYXRjaCBhdCBsaW5lICVkOiAlLipzIgogbXNnc3RyICJmZWhsZXJoYWZ0ZXIgQmluw6RyLVBhdGNoIGJlaSBaZWlsZSAlZDogJS4qcyIKIAotIzogYXBwbHkuYzoyMDMxCisjOiBhcHBseS5jOjIwMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIGJpbmFyeSBwYXRjaCBhdCBsaW5lICVkIgogbXNnc3RyICJuaWNodCBlcmthbm50ZXIgQmluw6RyLVBhdGNoIGJlaSBaZWlsZSAlZCIKIAotIzogYXBwbHkuYzoyMTkzCisjOiBhcHBseS5jOjIxNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0Y2ggd2l0aCBvbmx5IGdhcmJhZ2UgYXQgbGluZSAlZCIKIG1zZ3N0ciAiUGF0Y2ggbWl0IG51dHpsb3NlbiBJbmZvcm1hdGlvbmVuIGJlaSBaZWlsZSAlZCIKIAotIzogYXBwbHkuYzoyMjc5CisjOiBhcHBseS5jOjIyNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgc3ltbGluayAlcyIKIG1zZ3N0ciAia29ubnRlIHN5bWJvbGlzY2hlIFZlcmtuw7xwZnVuZyAlcyBuaWNodCBsZXNlbiIKIAotIzogYXBwbHkuYzoyMjgzCisjOiBhcHBseS5jOjIyNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gb3IgcmVhZCAlcyIKIG1zZ3N0ciAia29ubnRlICVzIG5pY2h0IMO2ZmZuZW4gb2RlciBsZXNlbiIKIAotIzogYXBwbHkuYzoyOTQyCisjOiBhcHBseS5jOjI5MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzdGFydCBvZiBsaW5lOiAnJWMnIgogbXNnc3RyICJVbmfDvGx0aWdlciBaZWlsZW5hbmZhbmc6ICclYyciCiAKLSM6IGFwcGx5LmM6MzA2MworIzogYXBwbHkuYzozMDU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkh1bmsgIyVkIHN1Y2NlZWRlZCBhdCAlZCAob2Zmc2V0ICVkIGxpbmUpLiIKIG1zZ2lkX3BsdXJhbCAiSHVuayAjJWQgc3VjY2VlZGVkIGF0ICVkIChvZmZzZXQgJWQgbGluZXMpLiIKQEAgLTI4OSwxMiArMTAxNSwxMiBAQAogbXNnc3RyWzFdICIiCiAiUGF0Y2gtQmVyZWljaCAjJWQgZXJmb2xncmVpY2ggYW5nZXdlbmRldCBiZWkgJWQgKCVkIFplaWxlbiB2ZXJzZXR6dCkiCiAKLSM6IGFwcGx5LmM6MzA3NQorIzogYXBwbHkuYzozMDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbnRleHQgcmVkdWNlZCB0byAoJWxkLyVsZCkgdG8gYXBwbHkgZnJhZ21lbnQgYXQgJWQiCiBtc2dzdHIgIktvbnRleHQgcmVkdXppZXJ0IHp1ICglbGQvJWxkKSwgdW0gUGF0Y2gtQmVyZWljaCBiZWkgJWQgYW56dXdlbmRlbiIKIAotIzogYXBwbHkuYzozMDgxCisjOiBhcHBseS5jOjMwNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIndoaWxlIHNlYXJjaGluZyBmb3I6XG4iCkBAIC0zMDMsMjUgKzEwMjksMjUgQEAKICJiZWkgZGVyIFN1Y2hlIG5hY2g6XG4iCiAiJS4qcyIKIAotIzogYXBwbHkuYzozMTAzCisjOiBhcHBseS5jOjMwOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBiaW5hcnkgcGF0Y2ggZGF0YSBmb3IgJyVzJyIKIG1zZ3N0ciAia2VpbmUgRGF0ZW4gaW4gQmluw6RyLVBhdGNoIGbDvHIgJyVzJyIKIAotIzogYXBwbHkuYzozMTExCisjOiBhcHBseS5jOjMxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJldmVyc2UtYXBwbHkgYSBiaW5hcnkgcGF0Y2ggd2l0aG91dCB0aGUgcmV2ZXJzZSBodW5rIHRvICclcyciCiBtc2dzdHIgIiIKICJrYW5uIGJpbsOkcmVuIFBhdGNoIG5pY2h0IGluIHVtZ2VrZWhydGVyIFJlaWhlbmZvbGdlIGFud2VuZGVuIG9obmUgZWluZW5cbiIKICJ1bWdla2VocnRlbiBQYXRjaC1CbG9jayBhdWYgJyVzJyIKIAotIzogYXBwbHkuYzozMTU4CisjOiBhcHBseS5jOjMxNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGFwcGx5IGJpbmFyeSBwYXRjaCB0byAnJXMnIHdpdGhvdXQgZnVsbCBpbmRleCBsaW5lIgogbXNnc3RyICIiCiAia2FubiBiaW7DpHJlbiBQYXRjaCBhdWYgJyVzJyBuaWNodCBvaG5lIGVpbmUgdm9sbHN0w6RuZGlnZSBJbmRleC1aZWlsZSBhbndlbmRlbiIKIAotIzogYXBwbHkuYzozMTY4CisjOiBhcHBseS5jOjMxNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInRoZSBwYXRjaCBhcHBsaWVzIHRvICclcycgKCVzKSwgd2hpY2ggZG9lcyBub3QgbWF0Y2ggdGhlIGN1cnJlbnQgY29udGVudHMuIgpAQCAtMzI5LDQ0MSArMTA1NSw0MjcgQEAKICJkZXIgUGF0Y2ggd2lyZCBhbmdld2VuZGV0IGF1ZiAnJXMnICglcyksIHdhcyBuaWNodCBkZW4gYWt0dWVsbGVuIEluaGFsdGVuXG4iCiAiZW50c3ByaWNodCIKIAotIzogYXBwbHkuYzozMTc2CisjOiBhcHBseS5jOjMxNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlIHBhdGNoIGFwcGxpZXMgdG8gYW4gZW1wdHkgJyVzJyBidXQgaXQgaXMgbm90IGVtcHR5IgogbXNnc3RyICJkZXIgUGF0Y2ggd2lyZCBhdWYgZWluIGxlZXJlcyAnJXMnIGFuZ2V3ZW5kZXQsIHdhcyBhYmVyIG5pY2h0IGxlZXIgaXN0IgogCi0jOiBhcHBseS5jOjMxOTQKKyM6IGFwcGx5LmM6MzE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgbmVjZXNzYXJ5IHBvc3RpbWFnZSAlcyBmb3IgJyVzJyBjYW5ub3QgYmUgcmVhZCIKIG1zZ3N0ciAiZGFzIGVyZm9yZGVybGljaGUgUG9zdGltYWdlICVzIGbDvHIgJyVzJyBrYW5uIG5pY2h0IGdlbGVzZW4gd2VyZGVuIgogCi0jOiBhcHBseS5jOjMyMDcKKyM6IGFwcGx5LmM6MzIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJiaW5hcnkgcGF0Y2ggZG9lcyBub3QgYXBwbHkgdG8gJyVzJyIKIG1zZ3N0ciAiS29ubnRlIEJpbsOkci1QYXRjaCBuaWNodCBhdWYgJyVzJyBhbndlbmRlbiIKIAotIzogYXBwbHkuYzozMjEzCisjOiBhcHBseS5jOjMyMDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmluYXJ5IHBhdGNoIHRvICclcycgY3JlYXRlcyBpbmNvcnJlY3QgcmVzdWx0IChleHBlY3RpbmcgJXMsIGdvdCAlcykiCiBtc2dzdHIgIiIKICJCaW7DpHItUGF0Y2ggZsO8ciAnJXMnIGVyemV1Z3QgZmFsc2NoZXMgRXJnZWJuaXMgKGVyd2FydGV0ZSAlcywgYmVrYW0gJXMpIgogCi0jOiBhcHBseS5jOjMyMzQKKyM6IGFwcGx5LmM6MzIzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRjaCBmYWlsZWQ6ICVzOiVsZCIKIG1zZ3N0ciAiQW53ZW5kdW5nIGRlcyBQYXRjaGVzIGZlaGxnZXNjaGxhZ2VuOiAlczolbGQiCiAKLSM6IGFwcGx5LmM6MzM1NgorIzogYXBwbHkuYzozMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGVja291dCAlcyIKIG1zZ3N0ciAia2FubiAlcyBuaWNodCBhdXNjaGVja2VuIgogCi0jOiBhcHBseS5jOjM0MDggYXBwbHkuYzozNDE5IGFwcGx5LmM6MzQ2NSBtaWR4LmM6NTggc2V0dXAuYzoyNzgKKyM6IGFwcGx5LmM6MzQwNSBhcHBseS5jOjM0MTYgYXBwbHkuYzozNDYyIG1pZHguYzo2MSBzZXR1cC5jOjI5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCAlcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gTGVzZW4gdm9uICVzIgogCi0jOiBhcHBseS5jOjM0MTYKKyM6IGFwcGx5LmM6MzQxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkaW5nIGZyb20gJyVzJyBiZXlvbmQgYSBzeW1ib2xpYyBsaW5rIgogbXNnc3RyICInJXMnIGlzdCBoaW50ZXIgZWluZXIgc3ltYm9saXNjaGVuIFZlcmtuw7xwZnVuZyIKIAotIzogYXBwbHkuYzozNDQ1IGFwcGx5LmM6MzY4OAorIzogYXBwbHkuYzozNDQyIGFwcGx5LmM6MzY4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICVzIGhhcyBiZWVuIHJlbmFtZWQvZGVsZXRlZCIKIG1zZ3N0ciAiUGZhZCAlcyB3dXJkZSB1bWJlbmFubnQvZ2Vsw7ZzY2h0IgogCi0jOiBhcHBseS5jOjM1MzEgYXBwbHkuYzozNzAzCisjOiBhcHBseS5jOjM1MjggYXBwbHkuYzozNzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBkb2VzIG5vdCBleGlzdCBpbiBpbmRleCIKIG1zZ3N0ciAiJXMgaXN0IG5pY2h0IGltIEluZGV4IgogCi0jOiBhcHBseS5jOjM1NDAgYXBwbHkuYzozNzExCisjOiBhcHBseS5jOjM1MzcgYXBwbHkuYzozNzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBkb2VzIG5vdCBtYXRjaCBpbmRleCIKIG1zZ3N0ciAiJXMgZW50c3ByaWNodCBuaWNodCBkZXIgVmVyc2lvbiBpbSBJbmRleCIKIAotIzogYXBwbHkuYzozNTc1CisjOiBhcHBseS5jOjM1NzIKIG1zZ2lkICJyZXBvc2l0b3J5IGxhY2tzIHRoZSBuZWNlc3NhcnkgYmxvYiB0byBmYWxsIGJhY2sgb24gMy13YXkgbWVyZ2UuIgogbXNnc3RyICIiCiAiRGVtIFJlcG9zaXRvcnkgZmVobHQgZGVyIG5vdHdlbmRpZ2UgQmxvYiwgdW0gYXVmIGVpbmVuIDMtV2VnZS1NZXJnZVxuIgogInp1csO8Y2t6dWZhbGxlbi4iCiAKLSM6IGFwcGx5LmM6MzU3OAorIzogYXBwbHkuYzozNTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhbGxpbmcgYmFjayB0byB0aHJlZS13YXkgbWVyZ2UuLi5cbiIKIG1zZ3N0ciAiRmFsbGUgenVyw7xjayBhdWYgMy1XZWdlLU1lcmdlIC4uLlxuIgogCi0jOiBhcHBseS5jOjM1OTQgYXBwbHkuYzozNTk4CisjOiBhcHBseS5jOjM1OTEgYXBwbHkuYzozNTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIHRoZSBjdXJyZW50IGNvbnRlbnRzIG9mICclcyciCiBtc2dzdHIgImthbm4gYWt0dWVsbGUgSW5oYWx0ZSB2b24gJyVzJyBuaWNodCBsZXNlbiIKIAotIzogYXBwbHkuYzozNjEwCisjOiBhcHBseS5jOjM2MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGZhbGwgYmFjayBvbiB0aHJlZS13YXkgbWVyZ2UuLi5cbiIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gWnVyw7xja2ZhbGxlbiBhdWYgMy1XZWdlLU1lcmdlLi4uXG4iCiAKLSM6IGFwcGx5LmM6MzYyNAorIzogYXBwbHkuYzozNjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyB3aXRoIGNvbmZsaWN0cy5cbiIKIG1zZ3N0ciAiUGF0Y2ggYXVmICclcycgbWl0IEtvbmZsaWt0ZW4gYW5nZXdlbmRldC5cbiIKIAotIzogYXBwbHkuYzozNjI5CisjOiBhcHBseS5jOjM2MjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBwYXRjaCB0byAnJXMnIGNsZWFubHkuXG4iCiBtc2dzdHIgIlBhdGNoIGF1ZiAnJXMnIHNhdWJlciBhbmdld2VuZGV0LlxuIgogCi0jOiBhcHBseS5jOjM2NTUKKyM6IGFwcGx5LmM6MzY1MgogbXNnaWQgInJlbW92YWwgcGF0Y2ggbGVhdmVzIGZpbGUgY29udGVudHMiCiBtc2dzdHIgIkzDtnNjaC1QYXRjaCBoaW50ZXJsw6Rzc3QgRGF0ZWlpbmhhbHRlIgogCi0jOiBhcHBseS5jOjM3MjgKKyM6IGFwcGx5LmM6MzcyNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogd3JvbmcgdHlwZSIKIG1zZ3N0ciAiJXM6IGZhbHNjaGVyIFR5cCIKIAotIzogYXBwbHkuYzozNzMwCisjOiBhcHBseS5jOjM3MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaGFzIHR5cGUgJW8sIGV4cGVjdGVkICVvIgogbXNnc3RyICIlcyBpc3Qgdm9tIFR5cCAlbywgZXJ3YXJ0ZXRlICVvIgogCi0jOiBhcHBseS5jOjM4ODEgYXBwbHkuYzozODgzCisjOiBhcHBseS5jOjM4NzggYXBwbHkuYzozODgwIHJlYWQtY2FjaGUuYzo4MzAgcmVhZC1jYWNoZS5jOjg1NgorIzogcmVhZC1jYWNoZS5jOjEzMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBwYXRoICclcyciCiBtc2dzdHIgIlVuZ8O8bHRpZ2VyIFBmYWQgJyVzJyIKIAotIzogYXBwbHkuYzozOTM5CisjOiBhcHBseS5jOjM5MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGFscmVhZHkgZXhpc3RzIGluIGluZGV4IgogbXNnc3RyICIlcyBpc3QgYmVyZWl0cyBiZXJlaXRnZXN0ZWxsdCIKIAotIzogYXBwbHkuYzozOTQyCisjOiBhcHBseS5jOjM5MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGFscmVhZHkgZXhpc3RzIGluIHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICIlcyBleGlzdGllcnQgYmVyZWl0cyBpbSBBcmJlaXRzdmVyemVpY2huaXMiCiAKLSM6IGFwcGx5LmM6Mzk2MgorIzogYXBwbHkuYzozOTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSIKIG1zZ3N0ciAibmV1ZXIgTW9kdXMgKCVvKSB2b24gJXMgZW50c3ByaWNodCBuaWNodCBkZW0gYWx0ZW4gTW9kdXMgKCVvKSIKIAotIzogYXBwbHkuYzozOTY3CisjOiBhcHBseS5jOjM5NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IG1vZGUgKCVvKSBvZiAlcyBkb2VzIG5vdCBtYXRjaCBvbGQgbW9kZSAoJW8pIG9mICVzIgogbXNnc3RyICJuZXVlciBNb2R1cyAoJW8pIHZvbiAlcyBlbnRzcHJpY2h0IG5pY2h0IGRlbSBhbHRlbiBNb2R1cyAoJW8pIHZvbiAlcyIKIAotIzogYXBwbHkuYzozOTg3CisjOiBhcHBseS5jOjM5ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWZmZWN0ZWQgZmlsZSAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCiBtc2dzdHIgImJldHJvZmZlbmUgRGF0ZWkgJyVzJyBpc3QgaGludGVyIGVpbmVyIHN5bWJvbGlzY2hlbiBWZXJrbsO8cGZ1bmciCiAKLSM6IGFwcGx5LmM6Mzk5MQorIzogYXBwbHkuYzozOTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBwYXRjaCBkb2VzIG5vdCBhcHBseSIKIG1zZ3N0ciAiJXM6IFBhdGNoIGtvbm50ZSBuaWNodCBhbmdld2VuZGV0IHdlcmRlbiIKIAotIzogYXBwbHkuYzo0MDA2CisjOiBhcHBseS5jOjQwMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2hlY2tpbmcgcGF0Y2ggJXMuLi4iCiBtc2dzdHIgIlByw7xmZSBQYXRjaCAlcyAuLi4iCiAKLSM6IGFwcGx5LmM6NDA5OAorIzogYXBwbHkuYzo0MDk1CiAjLCBjLWZvcm1hdAogbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzIGZvciBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIlNIQS0xIEluZm9ybWF0aW9uIGZlaGx0IG9kZXIgaXN0IHVuYnJhdWNoYmFyIGbDvHIgU3VibW9kdWwgJXMiCiAKLSM6IGFwcGx5LmM6NDEwNQorIzogYXBwbHkuYzo0MTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1vZGUgY2hhbmdlIGZvciAlcywgd2hpY2ggaXMgbm90IGluIGN1cnJlbnQgSEVBRCIKIG1zZ3N0ciAiTW9kdXPDpG5kZXJ1bmcgZsO8ciAlcywgd2FzIHNpY2ggbmljaHQgaW0gYWt0dWVsbGVuIEhFQUQgYmVmaW5kZXQiCiAKLSM6IGFwcGx5LmM6NDEwOAorIzogYXBwbHkuYzo0MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzICglcykuIgogbXNnc3RyICJTSEEtMSBJbmZvcm1hdGlvbiBmZWhsdCBvZGVyIGlzdCB1bmJyYXVjaGJhciAoJXMpLiIKIAotIzogYXBwbHkuYzo0MTEzIGJ1aWx0aW4vY2hlY2tvdXQuYzoyNDQgYnVpbHRpbi9yZXNldC5jOjE0MgotIywgYy1mb3JtYXQKLW1zZ2lkICJtYWtlX2NhY2hlX2VudHJ5IGZhaWxlZCBmb3IgcGF0aCAnJXMnIgotbXNnc3RyICJtYWtlX2NhY2hlX2VudHJ5IGbDvHIgUGZhZCAnJXMnIGZlaGxnZXNjaGxhZ2VuIgotCi0jOiBhcHBseS5jOjQxMTcKKyM6IGFwcGx5LmM6NDExNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgYWRkICVzIHRvIHRlbXBvcmFyeSBpbmRleCIKIG1zZ3N0ciAia29ubnRlICVzIG5pY2h0IHp1bSB0ZW1wb3LDpHJlbiBJbmRleCBoaW56dWbDvGdlbiIKIAotIzogYXBwbHkuYzo0MTI3CisjOiBhcHBseS5jOjQxMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIHRlbXBvcmFyeSBpbmRleCB0byAlcyIKIG1zZ3N0ciAia29ubnRlIHRlbXBvcsOkcmVuIEluZGV4IG5pY2h0IG5hY2ggJXMgc2NocmVpYmVuIgogCi0jOiBhcHBseS5jOjQyNjUKKyM6IGFwcGx5LmM6NDI2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICVzIGZyb20gaW5kZXgiCiBtc2dzdHIgImtvbm50ZSAlcyBuaWNodCBhdXMgZGVtIEluZGV4IGVudGZlcm5lbiIKIAotIzogYXBwbHkuYzo0Mjk5CisjOiBhcHBseS5jOjQyOTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBwYXRjaCBmb3Igc3VibW9kdWxlICVzIgogbXNnc3RyICJmZWhsZXJoYWZ0ZXIgUGF0Y2ggZsO8ciBTdWJtb2R1bCAlcyIKIAotIzogYXBwbHkuYzo0MzA1CisjOiBhcHBseS5jOjQzMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3bHkgY3JlYXRlZCBmaWxlICclcyciCiBtc2dzdHIgImtvbm50ZSBuZXUgZXJzdGVsbHRlIERhdGVpICclcycgbmljaHQgbGVzZW4iCiAKLSM6IGFwcGx5LmM6NDMxMworIzogYXBwbHkuYzo0MzEwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYmFja2luZyBzdG9yZSBmb3IgbmV3bHkgY3JlYXRlZCBmaWxlICVzIgogbXNnc3RyICJrYW5uIGludGVybmVuIFNwZWljaGVyIGbDvHIgZWJlbiBlcnN0ZWxsdGUgRGF0ZWkgJXMgbmljaHQgZXJ6ZXVnZW4iCiAKLSM6IGFwcGx5LmM6NDMxOSBhcHBseS5jOjQ0NjQKKyM6IGFwcGx5LmM6NDMxNiBhcHBseS5jOjQ0NjEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGFkZCBjYWNoZSBlbnRyeSBmb3IgJXMiCiBtc2dzdHIgImthbm4gZsO8ciAlcyBrZWluZW4gRWludHJhZyBpbiBkZW4gWndpc2NoZW5zcGVpY2hlciBoaW56dWbDvGdlbiIKIAotIzogYXBwbHkuYzo0MzYyCisjOiBhcHBseS5jOjQzNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvICclcyciCiBtc2dzdHIgIkZlaGxlciBiZWltIFNjaHJlaWJlbiBuYWNoICclcyciCiAKLSM6IGFwcGx5LmM6NDM2NgorIzogYXBwbHkuYzo0MzYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNsb3NpbmcgZmlsZSAnJXMnIgogbXNnc3RyICJzY2hsaWXDn2UgRGF0ZWkgJyVzJyIKIAotIzogYXBwbHkuYzo0NDM2CisjOiBhcHBseS5jOjQ0MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyBtb2RlICVvIgogbXNnc3RyICJrb25udGUgRGF0ZWkgJyVzJyBtaXQgTW9kdXMgJW8gbmljaHQgc2NocmVpYmVuIgogCi0jOiBhcHBseS5jOjQ1MzQKKyM6IGFwcGx5LmM6NDUzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBsaWVkIHBhdGNoICVzIGNsZWFubHkuIgogbXNnc3RyICJQYXRjaCAlcyBzYXViZXIgYW5nZXdlbmRldCIKIAotIzogYXBwbHkuYzo0NTQyCisjOiBhcHBseS5jOjQ1MzkKIG1zZ2lkICJpbnRlcm5hbCBlcnJvciIKIG1zZ3N0ciAiaW50ZXJuZXIgRmVobGVyIgogCi0jOiBhcHBseS5jOjQ1NDUKKyM6IGFwcGx5LmM6NDU0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBseWluZyBwYXRjaCAlJXMgd2l0aCAlZCByZWplY3QuLi4iCiBtc2dpZF9wbHVyYWwgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdHMuLi4iCiBtc2dzdHJbMF0gIldlbmRlIFBhdGNoICUlcyBtaXQgJWQgWnVyw7xja3dlaXN1bmcgYW4uLi4iCiBtc2dzdHJbMV0gIldlbmRlIFBhdGNoICUlcyBtaXQgJWQgWnVyw7xja3dlaXN1bmdlbiBhbi4uLiIKIAotIzogYXBwbHkuYzo0NTU2CisjOiBhcHBseS5jOjQ1NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJ1bmNhdGluZyAucmVqIGZpbGVuYW1lIHRvICUuKnMucmVqIgogbXNnc3RyICJWZXJrw7xyemUgTmFtZSB2b24gLnJlaiBEYXRlaSB6dSAlLipzLnJlaiIKIAotIzogYXBwbHkuYzo0NTY0IGJ1aWx0aW4vZmV0Y2guYzo4NDMgYnVpbHRpbi9mZXRjaC5jOjExMjIKKyM6IGFwcGx5LmM6NDU2MSBidWlsdGluL2ZldGNoLmM6OTAxIGJ1aWx0aW4vZmV0Y2guYzoxMjAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuICVzIgogbXNnc3RyICJrYW5uICclcycgbmljaHQgw7ZmZm5lbiIKIAotIzogYXBwbHkuYzo0NTc4CisjOiBhcHBseS5jOjQ1NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiSHVuayAjJWQgYXBwbGllZCBjbGVhbmx5LiIKIG1zZ3N0ciAiUGF0Y2gtQmVyZWljaCAjJWQgc2F1YmVyIGFuZ2V3ZW5kZXQuIgogCi0jOiBhcHBseS5jOjQ1ODIKKyM6IGFwcGx5LmM6NDU3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWplY3RlZCBodW5rICMlZC4iCiBtc2dzdHIgIlBhdGNoLUJsb2NrICMlZCB6dXLDvGNrZ2V3aWVzZW4uIgogCi0jOiBhcHBseS5jOjQ2OTIKKyM6IGFwcGx5LmM6NDY5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGVkIHBhdGNoICclcycuIgogbXNnc3RyICJQYXRjaCAnJXMnIGF1c2dlbGFzc2VuLiIKIAotIzogYXBwbHkuYzo0NzAwCisjOiBhcHBseS5jOjQ3MDYKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaW5wdXQiCiBtc2dzdHIgIm5pY2h0IGVya2FubnRlIEVpbmdhYmUiCiAKLSM6IGFwcGx5LmM6NDcxOQorIzogYXBwbHkuYzo0NzI2CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgaW5kZXggZmlsZSIKIG1zZ3N0ciAiS29ubnRlIEluZGV4LURhdGVpIG5pY2h0IGxlc2VuIgogCi0jOiBhcHBseS5jOjQ4NzQKKyM6IGFwcGx5LmM6NDg4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCBvcGVuIHBhdGNoICclcyc6ICVzIgogbXNnc3RyICJrYW5uIFBhdGNoICclcycgbmljaHQgw7ZmZm5lbjogJXMiCiAKLSM6IGFwcGx5LmM6NDkwMQorIzogYXBwbHkuYzo0OTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgInNxdWVsY2hlZCAlZCB3aGl0ZXNwYWNlIGVycm9yIgogbXNnaWRfcGx1cmFsICJzcXVlbGNoZWQgJWQgd2hpdGVzcGFjZSBlcnJvcnMiCiBtc2dzdHJbMF0gInVudGVyZHLDvGNrdGUgJWQgV2hpdGVzcGFjZS1GZWhsZXIiCiBtc2dzdHJbMV0gInVudGVyZHLDvGNrdGUgJWQgV2hpdGVzcGFjZS1GZWhsZXIiCiAKLSM6IGFwcGx5LmM6NDkwNyBhcHBseS5jOjQ5MjIKKyM6IGFwcGx5LmM6NDkxNiBhcHBseS5jOjQ5MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJWQgbGluZSBhZGRzIHdoaXRlc3BhY2UgZXJyb3JzLiIKIG1zZ2lkX3BsdXJhbCAiJWQgbGluZXMgYWRkIHdoaXRlc3BhY2UgZXJyb3JzLiIKIG1zZ3N0clswXSAiJWQgWmVpbGUgZsO8Z3QgV2hpdGVzcGFjZS1GZWhsZXIgaGluenUuIgogbXNnc3RyWzFdICIlZCBaZWlsZW4gZsO8Z2VuIFdoaXRlc3BhY2UtRmVobGVyIGhpbnp1LiIKIAotIzogYXBwbHkuYzo0OTE1CisjOiBhcHBseS5jOjQ5MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJWQgbGluZSBhcHBsaWVkIGFmdGVyIGZpeGluZyB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dpZF9wbHVyYWwgIiVkIGxpbmVzIGFwcGxpZWQgYWZ0ZXIgZml4aW5nIHdoaXRlc3BhY2UgZXJyb3JzLiIKIG1zZ3N0clswXSAiJWQgWmVpbGUgbmFjaCBCZWhlYnVuZyB2b24gV2hpdGVzcGFjZS1GZWhsZXJuIGFuZ2V3ZW5kZXQuIgogbXNnc3RyWzFdICIlZCBaZWlsZW4gbmFjaCBCZWhlYnVuZyB2b24gV2hpdGVzcGFjZS1GZWhsZXJuIGFuZ2V3ZW5kZXQuIgogCi0jOiBhcHBseS5jOjQ5MzEgYnVpbHRpbi9hZGQuYzo1MzggYnVpbHRpbi9tdi5jOjMwMCBidWlsdGluL3JtLmM6Mzg5CisjOiBhcHBseS5jOjQ5NDAgYnVpbHRpbi9hZGQuYzo2MTIgYnVpbHRpbi9tdi5jOjMwMSBidWlsdGluL3JtLmM6NDA2CiBtc2dpZCAiVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgogbXNnc3RyICJLb25udGUgbmV1ZSBJbmRleC1EYXRlaSBuaWNodCBzY2hyZWliZW4uIgogCi0jOiBhcHBseS5jOjQ5NTggYXBwbHkuYzo0OTYxIGJ1aWx0aW4vYW0uYzoyMjA5IGJ1aWx0aW4vYW0uYzoyMjEyCi0jOiBidWlsdGluL2Nsb25lLmM6MTIxIGJ1aWx0aW4vZmV0Y2guYzoxMTggYnVpbHRpbi9tZXJnZS5jOjI2MgotIzogYnVpbHRpbi9wdWxsLmM6MTk5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MDYKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzYyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY1Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0NiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0OQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwODggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJwYXRoIgotbXNnc3RyICJQZmFkIgotCi0jOiBhcHBseS5jOjQ5NTkKKyM6IGFwcGx5LmM6NDk2OAogbXNnaWQgImRvbid0IGFwcGx5IGNoYW5nZXMgbWF0Y2hpbmcgdGhlIGdpdmVuIHBhdGgiCiBtc2dzdHIgImtlaW5lIMOEbmRlcnVuZ2VuIGltIGFuZ2VnZWJlbmVuIFBmYWQgYW53ZW5kZW4iCiAKLSM6IGFwcGx5LmM6NDk2MgorIzogYXBwbHkuYzo0OTcxCiBtc2dpZCAiYXBwbHkgY2hhbmdlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCIKIG1zZ3N0ciAiw4RuZGVydW5nZW4gbnVyIGltIGFuZ2VnZWJlbmVuIFBmYWQgYW53ZW5kZW4iCiAKLSM6IGFwcGx5LmM6NDk2NCBidWlsdGluL2FtLmM6MjIxOAorIzogYXBwbHkuYzo0OTczIGJ1aWx0aW4vYW0uYzoyMjYwCiBtc2dpZCAibnVtIgogbXNnc3RyICJBbnphaGwiCiAKLSM6IGFwcGx5LmM6NDk2NQorIzogYXBwbHkuYzo0OTc0CiBtc2dpZCAicmVtb3ZlIDxudW0+IGxlYWRpbmcgc2xhc2hlcyBmcm9tIHRyYWRpdGlvbmFsIGRpZmYgcGF0aHMiCiBtc2dzdHIgIiIKICI8QW56YWhsPiB2b3Jhbmdlc3RlbGx0ZSBTY2hyw6Rnc3RyaWNoZSB2b24gaGVya8O2bW1saWNoZW4gRGlmZmVyZW56cGZhZGVuICIKICJlbnRmZXJuZW4iCiAKLSM6IGFwcGx5LmM6NDk2OAorIzogYXBwbHkuYzo0OTc3CiBtc2dpZCAiaWdub3JlIGFkZGl0aW9ucyBtYWRlIGJ5IHRoZSBwYXRjaCIKIG1zZ3N0ciAiaGluenVnZWbDvGd0ZSBaZWlsZW4gZGVzIFBhdGNoZXMgaWdub3JpZXJlbiIKIAotIzogYXBwbHkuYzo0OTcwCisjOiBhcHBseS5jOjQ5NzkKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGRpZmZzdGF0IGZvciB0aGUgaW5wdXQiCiBtc2dzdHIgIiIKICJhbnN0YXR0IGRlciBBbndlbmR1bmcgZGVzIFBhdGNoZXMsIGRlbiBcImRpZmZzdGF0XCIgZsO8ciBkaWUgRWluZ2FiZSAiCiAiYXVzZ2VnZWJlbiIKIAotIzogYXBwbHkuYzo0OTc0CisjOiBhcHBseS5jOjQ5ODMKIG1zZ2lkICJzaG93IG51bWJlciBvZiBhZGRlZCBhbmQgZGVsZXRlZCBsaW5lcyBpbiBkZWNpbWFsIG5vdGF0aW9uIgogbXNnc3RyICIiCiAiZGllIEFuemFobCB2b24gaGluenVnZWbDvGd0ZW4vZW50ZmVybnRlbiBaZWlsZW4gaW4gRGV6aW1hbG5vdGF0aW9uIGFuemVpZ2VuIgogCi0jOiBhcHBseS5jOjQ5NzYKKyM6IGFwcGx5LmM6NDk4NQogbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBvdXRwdXQgYSBzdW1tYXJ5IGZvciB0aGUgaW5wdXQiCiBtc2dzdHIgIiIKICJhbnN0YXR0IGRlciBBbndlbmR1bmcgZGVzIFBhdGNoZXMsIGVpbmUgWnVzYW1tZW5mYXNzdW5nIGbDvHIgZGllIEVpbmdhYmUgIgogImF1c2dlYmVuIgogCi0jOiBhcHBseS5jOjQ5NzgKKyM6IGFwcGx5LmM6NDk4NwogbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBzZWUgaWYgdGhlIHBhdGNoIGlzIGFwcGxpY2FibGUiCiBtc2dzdHIgIiIKICJhbnN0YXR0IGRlciBBbndlbmR1bmcgZGVzIFBhdGNoZXMsIHplaWdlIG9iIFBhdGNoIGFuZ2V3ZW5kZXQgd2VyZGVuIGthbm4iCiAKLSM6IGFwcGx5LmM6NDk4MAorIzogYXBwbHkuYzo0OTg5CiBtc2dpZCAibWFrZSBzdXJlIHRoZSBwYXRjaCBpcyBhcHBsaWNhYmxlIHRvIHRoZSBjdXJyZW50IGluZGV4IgogbXNnc3RyICIiCiAic2ljaGVyc3RlbGxlbiwgZGFzcyBkZXIgUGF0Y2ggbWl0IGRlbSBha3R1ZWxsZW4gSW5kZXggYW5nZXdlbmRldCB3ZXJkZW4ga2FubiIKIAotIzogYXBwbHkuYzo0OTgyCisjOiBhcHBseS5jOjQ5OTEKIG1zZ2lkICJtYXJrIG5ldyBmaWxlcyB3aXRoIGBnaXQgYWRkIC0taW50ZW50LXRvLWFkZGAiCiBtc2dzdHIgIm5ldWUgRGF0ZWllbiBtaXQgYGdpdCBhZGQgLS1pbnRlbnQtdG8tYWRkYCBtYXJraWVyZW4iCiAKLSM6IGFwcGx5LmM6NDk4NAorIzogYXBwbHkuYzo0OTkzCiBtc2dpZCAiYXBwbHkgYSBwYXRjaCB3aXRob3V0IHRvdWNoaW5nIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIlBhdGNoIGFud2VuZGVuLCBvaG5lIMOEbmRlcnVuZ2VuIGltIEFyYmVpdHN2ZXJ6ZWljaG5pcyB2b3J6dW5laG1lbiIKIAotIzogYXBwbHkuYzo0OTg2CisjOiBhcHBseS5jOjQ5OTUKIG1zZ2lkICJhY2NlcHQgYSBwYXRjaCB0aGF0IHRvdWNoZXMgb3V0c2lkZSB0aGUgd29ya2luZyBhcmVhIgogbXNnc3RyICIiCiAiUGF0Y2ggYW53ZW5kZW4sIGRlciDDhG5kZXJ1bmdlbiBhdcOfZXJoYWxiIGRlcyBBcmJlaXRzdmVyemVpY2huaXNzZXMgdm9ybmltbXQiCiAKLSM6IGFwcGx5LmM6NDk4OQorIzogYXBwbHkuYzo0OTk4CiBtc2dpZCAiYWxzbyBhcHBseSB0aGUgcGF0Y2ggKHVzZSB3aXRoIC0tc3RhdC8tLXN1bW1hcnkvLS1jaGVjaykiCiBtc2dzdHIgIlBhdGNoIGFud2VuZGVuIChCZW51dHp1bmcgbWl0IC0tc3RhdC8tLXN1bW1hcnkvLS1jaGVjaykiCiAKLSM6IGFwcGx5LmM6NDk5MQorIzogYXBwbHkuYzo1MDAwCiBtc2dpZCAiYXR0ZW1wdCB0aHJlZS13YXkgbWVyZ2UgaWYgYSBwYXRjaCBkb2VzIG5vdCBhcHBseSIKIG1zZ3N0ciAidmVyc3VjaGUgMy1XZWdlLU1lcmdlLCB3ZW5uIGRlciBQYXRjaCBuaWNodCBhbmdld2VuZGV0IHdlcmRlbiBrb25udGUiCiAKLSM6IGFwcGx5LmM6NDk5MworIzogYXBwbHkuYzo1MDAyCiBtc2dpZCAiYnVpbGQgYSB0ZW1wb3JhcnkgaW5kZXggYmFzZWQgb24gZW1iZWRkZWQgaW5kZXggaW5mb3JtYXRpb24iCiBtc2dzdHIgIiIKICJlaW5lbiB0ZW1wb3LDpHJlbiBJbmRleCwgYmFzaWVyZW5kIGF1ZiBkZW4gaW50ZWdyaWVydGVuIEluZGV4LUluZm9ybWF0aW9uZW4sICIKICJlcnN0ZWxsZW4iCiAKLSM6IGFwcGx5LmM6NDk5NiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjMKKyM6IGFwcGx5LmM6NTAwNSBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTczIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjQKIG1zZ2lkICJwYXRocyBhcmUgc2VwYXJhdGVkIHdpdGggTlVMIGNoYXJhY3RlciIKIG1zZ3N0ciAiUGZhZGUgc2luZCBnZXRyZW5udCBkdXJjaCBOVUwgWmVpY2hlbiIKIAotIzogYXBwbHkuYzo0OTk4CisjOiBhcHBseS5jOjUwMDcKIG1zZ2lkICJlbnN1cmUgYXQgbGVhc3QgPG4+IGxpbmVzIG9mIGNvbnRleHQgbWF0Y2giCiBtc2dzdHIgIiIKICJzaWNoZXIgc3RlbGxlbiwgZGFzcyBtaW5kZXN0ZW5zIDxuPiBaZWlsZW4gZGVzIEtvbnRleHRlcyDDvGJlcmVpbnN0aW1tZW4iCiAKLSM6IGFwcGx5LmM6NDk5OSBidWlsdGluL2FtLmM6MjE5NyBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk3Ci0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk5IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAxCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTIgYnVpbHRpbi9yZWJhc2UuYzo4NTcKKyM6IGFwcGx5LmM6NTAwOCBidWlsdGluL2FtLmM6MjIzOSBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk4CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMCBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU3IGJ1aWx0aW4vcmViYXNlLmM6MTUwOAogbXNnaWQgImFjdGlvbiIKIG1zZ3N0ciAiQWt0aW9uIgogCi0jOiBhcHBseS5jOjUwMDAKKyM6IGFwcGx5LmM6NTAwOQogbXNnaWQgImRldGVjdCBuZXcgb3IgbW9kaWZpZWQgbGluZXMgdGhhdCBoYXZlIHdoaXRlc3BhY2UgZXJyb3JzIgogbXNnc3RyICJuZXVlIG9kZXIgZ2XDpG5kZXJ0ZSBaZWlsZW4sIGRpZSBXaGl0ZXNwYWNlLUZlaGxlciBoYWJlbiwgZXJtaXR0ZWxuIgogCi0jOiBhcHBseS5jOjUwMDMgYXBwbHkuYzo1MDA2CisjOiBhcHBseS5jOjUwMTIgYXBwbHkuYzo1MDE1CiBtc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSB3aGVuIGZpbmRpbmcgY29udGV4dCIKIG1zZ3N0ciAiw4RuZGVydW5nZW4gaW0gV2hpdGVzcGFjZSBiZWkgZGVyIFN1Y2hlIGRlcyBLb250ZXh0ZXMgaWdub3JpZXJlbiIKIAotIzogYXBwbHkuYzo1MDA5CisjOiBhcHBseS5jOjUwMTgKIG1zZ2lkICJhcHBseSB0aGUgcGF0Y2ggaW4gcmV2ZXJzZSIKIG1zZ3N0ciAiZGVuIFBhdGNoIGluIHVtZ2VrZWhydGVyIFJlaWhlbmZvbGdlIGFud2VuZGVuIgogCi0jOiBhcHBseS5jOjUwMTEKKyM6IGFwcGx5LmM6NTAyMAogbXNnaWQgImRvbid0IGV4cGVjdCBhdCBsZWFzdCBvbmUgbGluZSBvZiBjb250ZXh0IgogbXNnc3RyICJrZWluZW4gS29udGV4dCBlcndhcnRlbiIKIAotIzogYXBwbHkuYzo1MDEzCisjOiBhcHBseS5jOjUwMjIKIG1zZ2lkICJsZWF2ZSB0aGUgcmVqZWN0ZWQgaHVua3MgaW4gY29ycmVzcG9uZGluZyAqLnJlaiBmaWxlcyIKIG1zZ3N0ciAiIgogInp1csO8Y2tnZXdpZXNlbmUgUGF0Y2gtQmzDtmNrZSBpbiBlbnRzcHJlY2hlbmRlbiAqLnJlaiBEYXRlaWVuIGhpbnRlcmxhc3NlbiIKIAotIzogYXBwbHkuYzo1MDE1CisjOiBhcHBseS5jOjUwMjQKIG1zZ2lkICJhbGxvdyBvdmVybGFwcGluZyBodW5rcyIKIG1zZ3N0ciAic2ljaCDDvGJlcmxhcHBlbmRlIFBhdGNoLUJsw7Zja2UgZXJsYXViZW4iCiAKLSM6IGFwcGx5LmM6NTAxNiBidWlsdGluL2FkZC5jOjI5MCBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjIxCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMDkgYnVpbHRpbi9jb3VudC1vYmplY3RzLmM6OTggYnVpbHRpbi9mc2NrLmM6Njk4Ci0jOiBidWlsdGluL2xvZy5jOjIwMjMgYnVpbHRpbi9tdi5jOjEyMiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNwotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTU3CisjOiBhcHBseS5jOjUwMjUgYnVpbHRpbi9hZGQuYzozMjMgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyMgorIzogYnVpbHRpbi9jb21taXQuYzoxMzYwIGJ1aWx0aW4vY291bnQtb2JqZWN0cy5jOjk4IGJ1aWx0aW4vZnNjay5jOjc3NAorIzogYnVpbHRpbi9sb2cuYzoyMTY2IGJ1aWx0aW4vbXYuYzoxMjMgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjgKIG1zZ2lkICJiZSB2ZXJib3NlIgogbXNnc3RyICJlcndlaXRlcnRlIEF1c2dhYmVuIgogCi0jOiBhcHBseS5jOjUwMTgKKyM6IGFwcGx5LmM6NTAyNwogbXNnaWQgInRvbGVyYXRlIGluY29ycmVjdGx5IGRldGVjdGVkIG1pc3NpbmcgbmV3LWxpbmUgYXQgdGhlIGVuZCBvZiBmaWxlIgogbXNnc3RyICJmZWhsZXJoYWZ0IGVya2FubnRlbiBmZWhsZW5kZW4gWmVpbGVudW1icnVjaCBhbSBEYXRlaWVuZGUgdG9sZXJpZXJlbiIKIAotIzogYXBwbHkuYzo1MDIxCisjOiBhcHBseS5jOjUwMzAKIG1zZ2lkICJkbyBub3QgdHJ1c3QgdGhlIGxpbmUgY291bnRzIGluIHRoZSBodW5rIGhlYWRlcnMiCiBtc2dzdHIgImRlbiBaZWlsZW5udW1tZXJuIGltIEtvcGYgZGVzIFBhdGNoLUJsb2NrcyBuaWNodCB2ZXJ0cmF1ZW4iCiAKLSM6IGFwcGx5LmM6NTAyMyBidWlsdGluL2FtLmM6MjIwNgorIzogYXBwbHkuYzo1MDMyIGJ1aWx0aW4vYW0uYzoyMjQ4CiBtc2dpZCAicm9vdCIKIG1zZ3N0ciAiV3VyemVsdmVyemVpY2huaXMiCiAKLSM6IGFwcGx5LmM6NTAyNAorIzogYXBwbHkuYzo1MDMzCiBtc2dpZCAicHJlcGVuZCA8cm9vdD4gdG8gYWxsIGZpbGVuYW1lcyIKIG1zZ3N0ciAiPFd1cnplbHZlcnplaWNobmlzPiB2b3IgYWxsZSBEYXRlaW5hbWVuIHN0ZWxsZW4iCiAKQEAgLTc4NiwxNDggKzE0OTgsMTY4IEBACiBtc2dpZCAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPHJlcG8+IFstLWV4ZWMgPGNtZD5dIC0tbGlzdCIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPFJlcG9zaXRvcnk+IFstLWV4ZWMgPFByb2dyYW1tPl0gLS1saXN0IgogCi0jOiBhcmNoaXZlLmM6MzcwIGJ1aWx0aW4vYWRkLmM6MTc2IGJ1aWx0aW4vYWRkLmM6NTE0IGJ1aWx0aW4vcm0uYzoyOTgKKyM6IGFyY2hpdmUuYzozNzIgYnVpbHRpbi9hZGQuYzoxODEgYnVpbHRpbi9hZGQuYzo1ODggYnVpbHRpbi9ybS5jOjMxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGRpZCBub3QgbWF0Y2ggYW55IGZpbGVzIgogbXNnc3RyICJQZmFkc3BlemlmaWthdGlvbiAnJXMnIHN0aW1tdCBtaXQga2VpbmVuIERhdGVpZW4gw7xiZXJlaW4iCiAKLSM6IGFyY2hpdmUuYzo0NTMKKyM6IGFyY2hpdmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCByZWY6ICUuKnMiCittc2dzdHIgIktlaW5lIHNvbGNoZSBSZWZlcmVuejogJS4qcyIKKworIzogYXJjaGl2ZS5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJXMiCittc2dzdHIgIktlaW4gZ8O8bHRpZ2VyIE9iamVrdG5hbWU6ICVzIgorCisjOiBhcmNoaXZlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHRyZWUgb2JqZWN0OiAlcyIKK21zZ3N0ciAiS2VpbiBUcmVlLU9iamVrdDogJXMiCisKKyM6IGFyY2hpdmUuYzo0MjYKK21zZ2lkICJjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IGlzIHVudHJhY2tlZCIKK21zZ3N0ciAiQWt0dWVsbGVzIEFyYmVpdHN2ZXJ6ZWljaG5pcyBpc3QgdW52ZXJzaW9uaWVydC4iCisKKyM6IGFyY2hpdmUuYzo0NTcKIG1zZ2lkICJmbXQiCiBtc2dzdHIgIkZvcm1hdCIKIAotIzogYXJjaGl2ZS5jOjQ1MworIzogYXJjaGl2ZS5jOjQ1NwogbXNnaWQgImFyY2hpdmUgZm9ybWF0IgogbXNnc3RyICJBcmNoaXZmb3JtYXQiCiAKLSM6IGFyY2hpdmUuYzo0NTQgYnVpbHRpbi9sb2cuYzoxNTM2CisjOiBhcmNoaXZlLmM6NDU4IGJ1aWx0aW4vbG9nLmM6MTY1MwogbXNnaWQgInByZWZpeCIKIG1zZ3N0ciAiUHLDpGZpeCIKIAotIzogYXJjaGl2ZS5jOjQ1NQorIzogYXJjaGl2ZS5jOjQ1OQogbXNnaWQgInByZXBlbmQgcHJlZml4IHRvIGVhY2ggcGF0aG5hbWUgaW4gdGhlIGFyY2hpdmUiCiBtc2dzdHIgImVpbmVuIFByw6RmaXggdm9yIGplZGVuIFBmYWRuYW1lbiBpbiBkZW0gQXJjaGl2IHN0ZWxsZW4iCiAKLSM6IGFyY2hpdmUuYzo0NTYgYnVpbHRpbi9ibGFtZS5jOjgyMCBidWlsdGluL2JsYW1lLmM6ODIxIGJ1aWx0aW4vY29uZmlnLmM6MTI5Ci0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNSBidWlsdGluL2dyZXAuYzo4ODQKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDQgYnVpbHRpbi9scy1maWxlcy5jOjU1OSBidWlsdGluL2xzLWZpbGVzLmM6NTYyCi0jOiBidWlsdGluL25vdGVzLmM6NDEyIGJ1aWx0aW4vbm90ZXMuYzo1NzUgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjIKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNjIKKyM6IGFyY2hpdmUuYzo0NjAgYnVpbHRpbi9ibGFtZS5jOjg2MSBidWlsdGluL2JsYW1lLmM6ODY1IGJ1aWx0aW4vYmxhbWUuYzo4NjYKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTcgYnVpbHRpbi9jb25maWcuYzoxMzAgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY0IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY4IGJ1aWx0aW4vZ3JlcC5jOjg4NworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNSBidWlsdGluL2xzLWZpbGVzLmM6NTYwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTIgYnVpbHRpbi9ub3Rlcy5jOjU3OCBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogcGFyc2Utb3B0aW9ucy5oOjE5MAogbXNnaWQgImZpbGUiCiBtc2dzdHIgIkRhdGVpIgogCi0jOiBhcmNoaXZlLmM6NDU3IGJ1aWx0aW4vYXJjaGl2ZS5jOjg5CisjOiBhcmNoaXZlLmM6NDYxIGJ1aWx0aW4vYXJjaGl2ZS5jOjkwCiBtc2dpZCAid3JpdGUgdGhlIGFyY2hpdmUgdG8gdGhpcyBmaWxlIgogbXNnc3RyICJkYXMgQXJjaGl2IGluIGRpZXNlIERhdGVpIHNjaHJlaWJlbiIKIAotIzogYXJjaGl2ZS5jOjQ1OQorIzogYXJjaGl2ZS5jOjQ2MwogbXNnaWQgInJlYWQgLmdpdGF0dHJpYnV0ZXMgaW4gd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIi5naXRhdHRyaWJ1dGVzIGF1cyBkZW0gQXJiZWl0c3ZlcnplaWNobmlzIGxlc2VuIgogCi0jOiBhcmNoaXZlLmM6NDYwCisjOiBhcmNoaXZlLmM6NDY0CiBtc2dpZCAicmVwb3J0IGFyY2hpdmVkIGZpbGVzIG9uIHN0ZGVyciIKIG1zZ3N0ciAiYXJjaGl2aWVydGUgRGF0ZWllbiBpbiBkZXIgU3RhbmRhcmQtRmVobGVyYXVzZ2FiZSBhdXNnZWJlbiIKIAotIzogYXJjaGl2ZS5jOjQ2MQorIzogYXJjaGl2ZS5jOjQ2NQogbXNnaWQgInN0b3JlIG9ubHkiCiBtc2dzdHIgIm51ciBzcGVpY2hlcm4iCiAKLSM6IGFyY2hpdmUuYzo0NjIKKyM6IGFyY2hpdmUuYzo0NjYKIG1zZ2lkICJjb21wcmVzcyBmYXN0ZXIiCiBtc2dzdHIgInNjaG5lbGxlciBrb21wcmltaWVyZW4iCiAKLSM6IGFyY2hpdmUuYzo0NzAKKyM6IGFyY2hpdmUuYzo0NzQKIG1zZ2lkICJjb21wcmVzcyBiZXR0ZXIiCiBtc2dzdHIgImJlc3NlciBrb21wcmltaWVyZW4iCiAKLSM6IGFyY2hpdmUuYzo0NzMKKyM6IGFyY2hpdmUuYzo0NzcKIG1zZ2lkICJsaXN0IHN1cHBvcnRlZCBhcmNoaXZlIGZvcm1hdHMiCiBtc2dzdHIgInVudGVyc3TDvHR6dGUgQXJjaGl2Zm9ybWF0ZSBhdWZsaXN0ZW4iCiAKLSM6IGFyY2hpdmUuYzo0NzUgYnVpbHRpbi9hcmNoaXZlLmM6OTAgYnVpbHRpbi9jbG9uZS5jOjExMSBidWlsdGluL2Nsb25lLmM6MTE0Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1NQorIzogYXJjaGl2ZS5jOjQ3OSBidWlsdGluL2FyY2hpdmUuYzo5MSBidWlsdGluL2Nsb25lLmM6MTEzIGJ1aWx0aW4vY2xvbmUuYzoxMTYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTExCiBtc2dpZCAicmVwbyIKIG1zZ3N0ciAiUmVwb3NpdG9yeSIKIAotIzogYXJjaGl2ZS5jOjQ3NiBidWlsdGluL2FyY2hpdmUuYzo5MQorIzogYXJjaGl2ZS5jOjQ4MCBidWlsdGluL2FyY2hpdmUuYzo5MgogbXNnaWQgInJldHJpZXZlIHRoZSBhcmNoaXZlIGZyb20gcmVtb3RlIHJlcG9zaXRvcnkgPHJlcG8+IgogbXNnc3RyICJBcmNoaXYgdm9tIFJlbW90ZS1SZXBvc2l0b3J5IDxSZXBvc2l0b3J5PiBhYnJ1ZmVuIgogCi0jOiBhcmNoaXZlLmM6NDc3IGJ1aWx0aW4vYXJjaGl2ZS5jOjkyIGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTQKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0OTYKKyM6IGFyY2hpdmUuYzo0ODEgYnVpbHRpbi9hcmNoaXZlLmM6OTMgYnVpbHRpbi9kaWZmdG9vbC5jOjcxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQ5OAogbXNnaWQgImNvbW1hbmQiCiBtc2dzdHIgIlByb2dyYW1tIgogCi0jOiBhcmNoaXZlLmM6NDc4IGJ1aWx0aW4vYXJjaGl2ZS5jOjkzCisjOiBhcmNoaXZlLmM6NDgyIGJ1aWx0aW4vYXJjaGl2ZS5jOjk0CiBtc2dpZCAicGF0aCB0byB0aGUgcmVtb3RlIGdpdC11cGxvYWQtYXJjaGl2ZSBjb21tYW5kIgogbXNnc3RyICJQZmFkIHp1bSBleHRlcm5lbiBcImdpdC11cGxvYWQtYXJjaGl2ZVwiLVByb2dyYW1tIgogCi0jOiBhcmNoaXZlLmM6NDg1CisjOiBhcmNoaXZlLmM6NDg5CiBtc2dpZCAiVW5leHBlY3RlZCBvcHRpb24gLS1yZW1vdGUiCiBtc2dzdHIgIlVuZXJ3YXJ0ZXRlIE9wdGlvbiAtLXJlbW90ZSIKIAotIzogYXJjaGl2ZS5jOjQ4NworIzogYXJjaGl2ZS5jOjQ5MQogbXNnaWQgIk9wdGlvbiAtLWV4ZWMgY2FuIG9ubHkgYmUgdXNlZCB0b2dldGhlciB3aXRoIC0tcmVtb3RlIgogbXNnc3RyICJEaWUgT3B0aW9uIC0tZXhlYyBrYW5uIG51ciB6dXNhbW1lbiBtaXQgLS1yZW1vdGUgdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGFyY2hpdmUuYzo0ODkKKyM6IGFyY2hpdmUuYzo0OTMKIG1zZ2lkICJVbmV4cGVjdGVkIG9wdGlvbiAtLW91dHB1dCIKIG1zZ3N0ciAiVW5lcndhcnRldGUgT3B0aW9uIC0tb3V0cHV0IgogCi0jOiBhcmNoaXZlLmM6NTExCisjOiBhcmNoaXZlLmM6NTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gYXJjaGl2ZSBmb3JtYXQgJyVzJyIKIG1zZ3N0ciAiVW5iZWthbm50ZXMgQXJjaGl2Zm9ybWF0ICclcyciCiAKLSM6IGFyY2hpdmUuYzo1MTgKKyM6IGFyY2hpdmUuYzo1MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXJndW1lbnQgbm90IHN1cHBvcnRlZCBmb3IgZm9ybWF0ICclcyc6IC0lZCIKIG1zZ3N0ciAiQXJndW1lbnQgZsO8ciBGb3JtYXQgJyVzJyBuaWNodCB1bnRlcnN0w7x0enQ6IC0lZCIKIAotIzogYXJjaGl2ZS10YXIuYzoxMjUgYXJjaGl2ZS16aXAuYzozNDUKKyM6IGFyY2hpdmUtdGFyLmM6MTI1IGFyY2hpdmUtemlwLmM6MzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdHJlYW0gYmxvYiAlcyIKIG1zZ3N0ciAiS2FubiBCbG9iICVzIG5pY2h0IHN0cmVhbWVuLiIKIAotIzogYXJjaGl2ZS10YXIuYzoyNjAgYXJjaGl2ZS16aXAuYzozNjMKKyM6IGFyY2hpdmUtdGFyLmM6MjY2IGFyY2hpdmUtemlwLmM6MzY5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuc3VwcG9ydGVkIGZpbGUgbW9kZTogMCVvIChTSEExOiAlcykiCiBtc2dzdHIgIk5pY2h0IHVudGVyc3TDvHR6dGVyIERhdGVpbW9kdXM6IDAlbyAoU0hBMTogJXMpIgogCi0jOiBhcmNoaXZlLXRhci5jOjI4NyBhcmNoaXZlLXppcC5jOjM1MworIzogYXJjaGl2ZS10YXIuYzoyOTMgYXJjaGl2ZS16aXAuYzozNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJXMiCiBtc2dzdHIgIkthbm4gJXMgbmljaHQgbGVzZW4uIgogCi0jOiBhcmNoaXZlLXRhci5jOjQ1OAorIzogYXJjaGl2ZS10YXIuYzo0NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHN0YXJ0ICclcycgZmlsdGVyIgogbXNnc3RyICJLb25udGUgJyVzJyBGaWx0ZXIgbmljaHQgc3RhcnRlbi4iCiAKLSM6IGFyY2hpdmUtdGFyLmM6NDYxCisjOiBhcmNoaXZlLXRhci5jOjQ2OAogbXNnaWQgInVuYWJsZSB0byByZWRpcmVjdCBkZXNjcmlwdG9yIgogbXNnc3RyICJLb25udGUgRGVzY3JpcHRvciBuaWNodCB1bWxlaXRlbi4iCiAKLSM6IGFyY2hpdmUtdGFyLmM6NDY4CisjOiBhcmNoaXZlLXRhci5jOjQ3NQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGZpbHRlciByZXBvcnRlZCBlcnJvciIKIG1zZ3N0ciAiJyVzJyBGaWx0ZXIgbWVsZGV0ZSBGZWhsZXIuIgogCi0jOiBhcmNoaXZlLXppcC5jOjMxNAorIzogYXJjaGl2ZS16aXAuYzozMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCBpcyBub3QgdmFsaWQgVVRGLTg6ICVzIgogbXNnc3RyICJQZmFkIGlzdCBrZWluIGfDvGx0aWdlcyBVVEYtODogJXMiCiAKLSM6IGFyY2hpdmUtemlwLmM6MzE4CisjOiBhcmNoaXZlLXppcC5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoIHRvbyBsb25nICglZCBjaGFycywgU0hBMTogJXMpOiAlcyIKIG1zZ3N0ciAiUGZhZCB6dSBsYW5nICglZCBaZWljaGVuLCBTSEExOiAlcyk6ICVzIgogCi0jOiBhcmNoaXZlLXppcC5jOjQ3NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNworIzogYXJjaGl2ZS16aXAuYzo0ODAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMzEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVmbGF0ZSBlcnJvciAoJWQpIgogbXNnc3RyICJGZWhsZXIgYmVpbSBLb21wcmltaWVyZW4gKCVkKSIKIAotIzogYXJjaGl2ZS16aXAuYzo2MDkKKyM6IGFyY2hpdmUtemlwLmM6NjE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRpbWVzdGFtcCB0b28gbGFyZ2UgZm9yIHRoaXMgc3lzdGVtOiAlPFBSSXVNQVg+IgogbXNnc3RyICJUaW1lc3RhbXAgenUgZ3Jvw58gZsO8ciBkaWVzZXMgU3lzdGVtOiAlPFBSSXVNQVg+IgpAQCAtOTM3LDYgKzE2NjksMTEgQEAKIG1zZ2lkICIlLipzIGlzIG5vdCBhIHZhbGlkIGF0dHJpYnV0ZSBuYW1lIgogbXNnc3RyICIlLipzIGlzdCBrZWluIGfDvGx0aWdlciBBdHRyaWJ1dG5hbWUiCiAKKyM6IGF0dHIuYzozNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgbm90IGFsbG93ZWQ6ICVzOiVkIgorbXNnc3RyICIlcyBuaWNodCBlcmxhdWJ0OiAlczolZCIKKwogIzogYXR0ci5jOjQwOQogbXNnaWQgIiIKICJOZWdhdGl2ZSBwYXR0ZXJucyBhcmUgaWdub3JlZCBpbiBnaXQgYXR0cmlidXRlc1xuIgpAQCAtOTUwLDE3ICsxNjg3LDE3IEBACiBtc2dpZCAiQmFkbHkgcXVvdGVkIGNvbnRlbnQgaW4gZmlsZSAnJXMnOiAlcyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgSW5oYWx0IGJ6Z2wuIEFuZsO8aHJ1bmdzemVpY2hlbiBpbiBEYXRlaSAnJXMnOiAlcyIKIAotIzogYmlzZWN0LmM6Njc2CisjOiBiaXNlY3QuYzo2NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiV2UgY2Fubm90IGJpc2VjdCBtb3JlIVxuIgogbXNnc3RyICJLZWluZSBiaW7DpHJlIFN1Y2hlIG1laHIgbcO2Z2xpY2ghXG4iCiAKLSM6IGJpc2VjdC5jOjczMAorIzogYmlzZWN0LmM6NzQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIGNvbW1pdCBuYW1lICVzIgogbXNnc3RyICIlcyBpc3Qga2VpbiBnw7xsdGlnZXIgQ29tbWl0LU5hbWUiCiAKLSM6IGJpc2VjdC5jOjc1NAorIzogYmlzZWN0LmM6NzcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgbWVyZ2UgYmFzZSAlcyBpcyBiYWQuXG4iCkBAIC05NjksNyArMTcwNiw3IEBACiAiRGllIE1lcmdlLUJhc2lzICVzIGlzdCBmZWhsZXJoYWZ0LlxuIgogIkRhcyBiZWRldXRldCwgZGVyIEZlaGxlciB3dXJkZSB6d2lzY2hlbiAlcyB1bmQgWyVzXSBiZWhvYmVuLlxuIgogCi0jOiBiaXNlY3QuYzo3NTkKKyM6IGJpc2VjdC5jOjc3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIG1lcmdlIGJhc2UgJXMgaXMgbmV3LlxuIgpAQCAtOTc4LDcgKzE3MTUsNyBAQAogIkRpZSBNZXJnZS1CYXNpcyAlcyBpc3QgbmV1LlxuIgogIkRhcyBiZWRldXRldCwgZGllIEVpZ2Vuc2NoYWZ0IGhhdCBzaWNoIHp3aXNjaGVuICVzIHVuZCBbJXNdIGdlw6RuZGVydC5cbiIKIAotIzogYmlzZWN0LmM6NzY0CisjOiBiaXNlY3QuYzo3ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBtZXJnZSBiYXNlICVzIGlzICVzLlxuIgpAQCAtOTg3LDcgKzE3MjQsNyBAQAogIkRpZSBNZXJnZS1CYXNpcyAlcyBpc3QgJXMuXG4iCiAiRGFzIGJlZGV1dGV0LCBkZXIgZXJzdGUgJyVzJyBDb21taXQgYmVmaW5kZXQgc2ljaCB6d2lzY2hlbiAlcyB1bmQgWyVzXS5cbiIKIAotIzogYmlzZWN0LmM6NzcyCisjOiBiaXNlY3QuYzo3ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlNvbWUgJXMgcmV2cyBhcmUgbm90IGFuY2VzdG9ycyBvZiB0aGUgJXMgcmV2LlxuIgpAQCAtOTk4LDcgKzE3MzUsNyBAQAogImdpdCBiaXNlY3Qga2FubiBpbiBkaWVzZW0gRmFsbCBuaWNodCByaWNodGlnIGFyYmVpdGVuLlxuIgogIlZpZWxsZWljaHQgdmVyd2VjaHNlbHRlbiBTaWUgJXMgdW5kICVzIENvbW1pdHM/XG4iCiAKLSM6IGJpc2VjdC5jOjc4NQorIzogYmlzZWN0LmM6ODAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ0aGUgbWVyZ2UgYmFzZSBiZXR3ZWVuICVzIGFuZCBbJXNdIG11c3QgYmUgc2tpcHBlZC5cbiIKQEAgLTEwMTAsMzYgKzE3NDcsMzYgQEAKICJlcnN0ZSAlcyBDb21taXQgendpc2NoZW4gJXMgdW5kICVzIGJlZmluZGV0LlxuIgogIkVzIHdpcmQgZGVubm9jaCBmb3J0Z2VzZXR6dC4iCiAKLSM6IGJpc2VjdC5jOjgxOAorIzogYmlzZWN0LmM6ODQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJpc2VjdGluZzogYSBtZXJnZSBiYXNlIG11c3QgYmUgdGVzdGVkXG4iCiBtc2dzdHIgImJpbsOkcmUgU3VjaGU6IGVpbmUgTWVyZ2UtQmFzaXMgbXVzcyBnZXByw7xmdCB3ZXJkZW5cbiIKIAotIzogYmlzZWN0LmM6ODU4CisjOiBiaXNlY3QuYzo4OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSAlcyByZXZpc2lvbiBpcyBuZWVkZWQiCiBtc2dzdHIgImVpbiAlcyBDb21taXQgd2lyZCBiZW7DtnRpZ3QiCiAKLSM6IGJpc2VjdC5jOjg3NyBidWlsdGluL25vdGVzLmM6MTc3IGJ1aWx0aW4vdGFnLmM6MjM3CisjOiBiaXNlY3QuYzo5MjAgYnVpbHRpbi9ub3Rlcy5jOjE3NyBidWlsdGluL3RhZy5jOjI1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGZpbGUgJyVzJyIKIG1zZ3N0ciAia29ubnRlIERhdGVpICclcycgbmljaHQgZXJzdGVsbGVuIgogCi0jOiBiaXNlY3QuYzo5MjggYnVpbHRpbi9tZXJnZS5jOjEzOAorIzogYmlzZWN0LmM6OTY2IGJ1aWx0aW4vbWVyZ2UuYzoxNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgZmlsZSAnJXMnIgogbXNnc3RyICJLb25udGUgRGF0ZWkgJyVzJyBuaWNodCBsZXNlbiIKIAotIzogYmlzZWN0LmM6OTU4CisjOiBiaXNlY3QuYzo5OTcKIG1zZ2lkICJyZWFkaW5nIGJpc2VjdCByZWZzIGZhaWxlZCIKIG1zZ3N0ciAiTGVzZW4gdm9uIFJlZmVyZW56ZW4gZsO8ciBiaW7DpHJlIFN1Y2hlIGZlaGxnZXNjaGxhZ2VuIgogCi0jOiBiaXNlY3QuYzo5NzcKKyM6IGJpc2VjdC5jOjEwMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgd2FzIGJvdGggJXMgYW5kICVzXG4iCiBtc2dzdHIgIiVzIHdhciBzb3dvaGwgJXMgYWxzIGF1Y2ggJXNcbiIKIAotIzogYmlzZWN0LmM6OTg1CisjOiBiaXNlY3QuYzoxMDI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyB0ZXN0YWJsZSBjb21taXQgZm91bmQuXG4iCkBAIC0xMDQ4LDcgKzE3ODUsNyBAQAogIktlaW4gdGVzdGJhcmVyIENvbW1pdCBnZWZ1bmRlbi5cbiIKICJWaWVsbGVpY2h0IHN0YXJ0ZXRlbiBTaWUgbWl0IGZhbHNjaGVuIFBmYWQtUGFyYW1ldGVybj9cbiIKIAotIzogYmlzZWN0LmM6MTAwNAorIzogYmlzZWN0LmM6MTA1NwogIywgYy1mb3JtYXQKIG1zZ2lkICIocm91Z2hseSAlZCBzdGVwKSIKIG1zZ2lkX3BsdXJhbCAiKHJvdWdobHkgJWQgc3RlcHMpIgpAQCAtMTA1OCw1NSArMTc5NSw1NSBAQAogIy4gVFJBTlNMQVRPUlM6IHRoZSBsYXN0ICVzIHdpbGwgYmUgcmVwbGFjZWQgd2l0aCAiKHJvdWdobHkgJWQKICMuIHN0ZXBzKSIgdHJhbnNsYXRpb24uCiAjLgotIzogYmlzZWN0LmM6MTAxMAorIzogYmlzZWN0LmM6MTA2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJCaXNlY3Rpbmc6ICVkIHJldmlzaW9uIGxlZnQgdG8gdGVzdCBhZnRlciB0aGlzICVzXG4iCiBtc2dpZF9wbHVyYWwgIkJpc2VjdGluZzogJWQgcmV2aXNpb25zIGxlZnQgdG8gdGVzdCBhZnRlciB0aGlzICVzXG4iCiBtc2dzdHJbMF0gImJpbsOkcmUgU3VjaGU6IGRhbmFjaCBub2NoICVkIENvbW1pdCB6dW0gVGVzdGVuIMO8YnJpZyAlc1xuIgogbXNnc3RyWzFdICJiaW7DpHJlIFN1Y2hlOiBkYW5hY2ggbm9jaCAlZCBDb21taXRzIHp1bSBUZXN0ZW4gw7xicmlnICVzXG4iCiAKLSM6IGJsYW1lLmM6MTc4NworIzogYmxhbWUuYzoyNzAwCiBtc2dpZCAiLS1jb250ZW50cyBhbmQgLS1yZXZlcnNlIGRvIG5vdCBibGVuZCB3ZWxsLiIKIG1zZ3N0ciAiLS1jb250ZW50cyB1bmQgLS1yZXZlcnNlIGZ1bmt0aW9uaWVyZW4gZ2VtZWluc2FtIG5pY2h0LiIKIAotIzogYmxhbWUuYzoxODAxCisjOiBibGFtZS5jOjI3MTQKIG1zZ2lkICJjYW5ub3QgdXNlIC0tY29udGVudHMgd2l0aCBmaW5hbCBjb21taXQgb2JqZWN0IG5hbWUiCiBtc2dzdHIgIiIKICJrYW5uIC0tY29udGVudHMgbmljaHQgbWl0IGVuZGfDvGx0aWdlbSBOYW1lbiBkZXMgQ29tbWl0LU9iamVrdGVzIGJlbnV0emVuIgogCi0jOiBibGFtZS5jOjE4MjIKKyM6IGJsYW1lLmM6MjczNQogbXNnaWQgIi0tcmV2ZXJzZSBhbmQgLS1maXJzdC1wYXJlbnQgdG9nZXRoZXIgcmVxdWlyZSBzcGVjaWZpZWQgbGF0ZXN0IGNvbW1pdCIKIG1zZ3N0ciAiIgogIi0tcmV2ZXJzZSB1bmQgLS1maXJzdC1wYXJlbnQgenVzYW1tZW4gZXJmb3JkZXJuIGRpZSBBbmdhYmUgZWluZXMgIgogImVuZGfDvGx0aWdlblxuIgogIkNvbW1pdHMiCiAKLSM6IGJsYW1lLmM6MTgzMSBidW5kbGUuYzoxNjIgcmVmLWZpbHRlci5jOjIwNDYgc2VxdWVuY2VyLmM6MTk2MwotIzogc2VxdWVuY2VyLmM6NDAwMiBidWlsdGluL2NvbW1pdC5jOjEwMDEgYnVpbHRpbi9sb2cuYzozNzcgYnVpbHRpbi9sb2cuYzo5MzIKLSM6IGJ1aWx0aW4vbG9nLmM6MTQwNyBidWlsdGluL2xvZy5jOjE3ODMgYnVpbHRpbi9sb2cuYzoyMDcyIGJ1aWx0aW4vbWVyZ2UuYzo0MDYKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzNyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNTIKKyM6IGJsYW1lLmM6Mjc0NCBidW5kbGUuYzoxNjcgcmVmLWZpbHRlci5jOjIyMDMgcmVtb3RlLmM6MTk0MiBzZXF1ZW5jZXIuYzoyMDA2CisjOiBzZXF1ZW5jZXIuYzo0MzU4IHN1Ym1vZHVsZS5jOjg0NyBidWlsdGluL2NvbW1pdC5jOjEwNDUgYnVpbHRpbi9sb2cuYzozODgKKyM6IGJ1aWx0aW4vbG9nLmM6OTkxIGJ1aWx0aW4vbG9nLmM6MTUyMCBidWlsdGluL2xvZy5jOjE5MjUgYnVpbHRpbi9sb2cuYzoyMjE1CisjOiBidWlsdGluL21lcmdlLmM6NDEyIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTAKICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxOTIKIG1zZ2lkICJyZXZpc2lvbiB3YWxrIHNldHVwIGZhaWxlZCIKIG1zZ3N0ciAiRWlucmljaHR1bmcgZGVzIFJldmlzaW9uc2dhbmdzIGZlaGxnZXNjaGxhZ2VuIgogCi0jOiBibGFtZS5jOjE4NDkKKyM6IGJsYW1lLmM6Mjc2MgogbXNnaWQgIiIKICItLXJldmVyc2UgLS1maXJzdC1wYXJlbnQgdG9nZXRoZXIgcmVxdWlyZSByYW5nZSBhbG9uZyBmaXJzdC1wYXJlbnQgY2hhaW4iCiBtc2dzdHIgIiIKICItLXJldmVyc2UgdW5kIC0tZmlyc3QtcGFyZW50IHp1c2FtbWVuIGVyZm9yZGVybiBlaW5lbiBCZXJlaWNoIGVudGxhbmcgZGVyXG4iCiAiXCJmaXJzdC1wYXJlbnRcIi1LZXR0ZSIKIAotIzogYmxhbWUuYzoxODYwCisjOiBibGFtZS5jOjI3NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBwYXRoICVzIGluICVzIgogbXNnc3RyICJQZmFkICVzIG5pY2h0IGluICVzIgogCi0jOiBibGFtZS5jOjE4NzEKKyM6IGJsYW1lLmM6Mjc4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBibG9iICVzIGZvciBwYXRoICVzIgogbXNnc3RyICJrYW5uIEJsb2IgJXMgZsO8ciBQZmFkICclcycgbmljaHQgbGVzZW4iCiAKLSM6IGJyYW5jaC5jOjUyCisjOiBicmFuY2guYzo1MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC0xMTIwLDg5ICsxODU3LDg5IEBACiAiXCJnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvPSVzJXMlc1wiXG4iCiAiZXJuZXV0IHNldHplbi4iCiAKLSM6IGJyYW5jaC5jOjY2CisjOiBicmFuY2guYzo2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3Qgc2V0dGluZyBicmFuY2ggJXMgYXMgaXRzIG93biB1cHN0cmVhbS4iCiBtc2dzdHIgIkJyYW5jaCAlcyBrYW5uIG5pY2h0IHNlaW4gZWlnZW5lciBVcHN0cmVhbS1CcmFuY2ggc2Vpbi4iCiAKLSM6IGJyYW5jaC5jOjkyCisjOiBicmFuY2guYzo5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIGJyYW5jaCAnJXMnIGZyb20gJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgIkJyYW5jaCAnJXMnIGZvbGd0IG51biBSZW1vdGUtQnJhbmNoICclcycgdm9uICclcycgZHVyY2ggUmViYXNlLiIKIAotIzogYnJhbmNoLmM6OTMKKyM6IGJyYW5jaC5jOjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgYnJhbmNoICclcycgZnJvbSAnJXMnLiIKIG1zZ3N0ciAiQnJhbmNoICclcycgZm9sZ3QgbnVuIFJlbW90ZS1CcmFuY2ggJyVzJyB2b24gJyVzJy4iCiAKLSM6IGJyYW5jaC5jOjk3CisjOiBicmFuY2guYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycgYnkgcmViYXNpbmcuIgogbXNnc3RyICJCcmFuY2ggJyVzJyBmb2xndCBudW4gbG9rYWxlbSBCcmFuY2ggJyVzJyBkdXJjaCBSZWJhc2UuIgogCi0jOiBicmFuY2guYzo5OAorIzogYnJhbmNoLmM6OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIGJyYW5jaCAnJXMnLiIKIG1zZ3N0ciAiQnJhbmNoICclcycgZm9sZ3QgbnVuIGxva2FsZW0gQnJhbmNoICclcycuIgogCi0jOiBicmFuY2guYzoxMDMKKyM6IGJyYW5jaC5jOjEwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIHJlZiAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAiQnJhbmNoICclcycgZm9sZ3QgbnVuIFJlbW90ZS1SZWZlcmVueiAnJXMnIGR1cmNoIFJlYmFzZS4iCiAKLSM6IGJyYW5jaC5jOjEwNAorIzogYnJhbmNoLmM6MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgcmVmICclcycuIgogbXNnc3RyICJCcmFuY2ggJyVzJyBmb2xndCBudW4gUmVtb3RlLVJlZmVyZW56ICclcycuIgogCi0jOiBicmFuY2guYzoxMDgKKyM6IGJyYW5jaC5jOjEwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycgYnkgcmViYXNpbmcuIgogbXNnc3RyICJCcmFuY2ggJyVzJyBmb2xndCBudW4gbG9rYWxlciBSZWZlcmVueiAnJXMnIGR1cmNoIFJlYmFzZS4iCiAKLSM6IGJyYW5jaC5jOjEwOQorIzogYnJhbmNoLmM6MTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCByZWYgJyVzJy4iCiBtc2dzdHIgIkJyYW5jaCAnJXMnIGZvbGd0IG51biBsb2thbGVyIFJlZmVyZW56ICclcycuIgogCi0jOiBicmFuY2guYzoxMTgKKyM6IGJyYW5jaC5jOjExOQogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSB1cHN0cmVhbSBicmFuY2ggY29uZmlndXJhdGlvbiIKIG1zZ3N0ciAiS29ubnRlIEtvbmZpZ3VyYXRpb24genUgVXBzdHJlYW0tQnJhbmNoIG5pY2h0IHNjaHJlaWJlbi4iCiAKLSM6IGJyYW5jaC5jOjE1NQorIzogYnJhbmNoLmM6MTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCB0cmFja2luZzogYW1iaWd1b3VzIGluZm9ybWF0aW9uIGZvciByZWYgJXMiCiBtc2dzdHIgIiIKICJLb25maWd1cmF0aW9uIHp1bSBGb2xnZW4gdm9uIEJyYW5jaCBuaWNodCBlaW5nZXJpY2h0ZXQuIFJlZmVyZW56ICVzIGlzdCAiCiAibWVocmRldXRpZy4iCiAKLSM6IGJyYW5jaC5jOjE4OAorIzogYnJhbmNoLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgYnJhbmNoIG5hbWUuIgogbXNnc3RyICInJXMnIGlzdCBrZWluIGfDvGx0aWdlciBCcmFuY2huYW1lLiIKIAotIzogYnJhbmNoLmM6MjA3CisjOiBicmFuY2guYzoyMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQSBicmFuY2ggbmFtZWQgJyVzJyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgIkJyYW5jaCAnJXMnIGV4aXN0aWVydCBiZXJlaXRzLiIKIAotIzogYnJhbmNoLmM6MjEyCisjOiBicmFuY2guYzoyMTMKIG1zZ2lkICJDYW5ub3QgZm9yY2UgdXBkYXRlIHRoZSBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgIkthbm4gQWt0dWFsaXNpZXJ1bmcgZGVzIGFrdHVlbGxlbiBCcmFuY2hlcyBuaWNodCBlcnp3aW5nZW4uIgogCi0jOiBicmFuY2guYzoyMzIKKyM6IGJyYW5jaC5jOjIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgc2V0dXAgdHJhY2tpbmcgaW5mb3JtYXRpb247IHN0YXJ0aW5nIHBvaW50ICclcycgaXMgbm90IGEgYnJhbmNoLiIKIG1zZ3N0ciAiIgogIkthbm4gVHJhY2tpbmctSW5mb3JtYXRpb25lbiBuaWNodCBlaW5yaWNodGVuOyBTdGFydHB1bmt0ICclcycgaXN0IGtlaW4gIgogIkJyYW5jaC4iCiAKLSM6IGJyYW5jaC5jOjIzNAorIzogYnJhbmNoLmM6MjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSByZXF1ZXN0ZWQgdXBzdHJlYW0gYnJhbmNoICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgImRlciBhbmdlZm9yZGVydGUgVXBzdHJlYW0tQnJhbmNoICclcycgZXhpc3RpZXJ0IG5pY2h0IgogCi0jOiBicmFuY2guYzoyMzYKKyM6IGJyYW5jaC5jOjIzNwogbXNnaWQgIiIKICJcbiIKICJJZiB5b3UgYXJlIHBsYW5uaW5nIG9uIGJhc2luZyB5b3VyIHdvcmsgb24gYW4gdXBzdHJlYW1cbiIKQEAgLTEyMjMsMjcgKzE5NjAsMjcgQEAKICJcImdpdCBwdXNoIC11XCIgdmVyd2VuZGVuLCB1bSBkZW4gVXBzdHJlYW0tQnJhbmNoIGJlaW0gXCJwdXNoXCJcbiIKICJ6dSBrb25maWd1cmllcmVuLiIKIAotIzogYnJhbmNoLmM6Mjc5CisjOiBicmFuY2guYzoyODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgb2JqZWN0IG5hbWU6ICclcycuIgogbXNnc3RyICJVbmfDvGx0aWdlciBPYmpla3QtTmFtZTogJyVzJyIKIAotIzogYnJhbmNoLmM6Mjk5CisjOiBicmFuY2guYzozMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQW1iaWd1b3VzIG9iamVjdCBuYW1lOiAnJXMnLiIKIG1zZ3N0ciAibWVocmRldXRpZ2VyIE9iamVrdC1OYW1lOiAnJXMnIgogCi0jOiBicmFuY2guYzozMDQKKyM6IGJyYW5jaC5jOjMwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCBicmFuY2ggcG9pbnQ6ICclcycuIgogbXNnc3RyICJVbmfDvGx0aWdlciBCcmFuY2hwdW5rdDogJyVzJyIKIAotIzogYnJhbmNoLmM6MzU4CisjOiBicmFuY2guYzozNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbHJlYWR5IGNoZWNrZWQgb3V0IGF0ICclcyciCiBtc2dzdHIgIiclcycgaXN0IGJlcmVpdHMgaW4gJyVzJyBhdXNnZWNoZWNrdCIKIAotIzogYnJhbmNoLmM6MzgxCisjOiBicmFuY2guYzozODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSEVBRCBvZiB3b3JraW5nIHRyZWUgJXMgaXMgbm90IHVwZGF0ZWQiCiBtc2dzdHIgIkhFQUQgZGVzIEFyYmVpdHN2ZXJ6ZWljaG5pc3NlcyAlcyBpc3QgbmljaHQgYWt0dWFsaXNpZXJ0LiIKQEAgLTEyNTgsODYgKzE5OTUsODkgQEAKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaGVhZGVyOiAlcyVzICglZCkiCiBtc2dzdHIgIm5pY2h0IGVya2FubnRlciBLb3BmYmVyZWljaDogJXMlcyAoJWQpIgogCi0jOiBidW5kbGUuYzo5MCByZXJlcmUuYzo0ODAgcmVyZXJlLmM6NjkwIHNlcXVlbmNlci5jOjIxODIgc2VxdWVuY2VyLmM6MjcyMgotIzogYnVpbHRpbi9jb21taXQuYzo3NzQKKyM6IGJ1bmRsZS5jOjkwIHJlcmVyZS5jOjQ4MCByZXJlcmUuYzo2OTAgc2VxdWVuY2VyLmM6MjI1OCBzZXF1ZW5jZXIuYzozMDE2CisjOiBidWlsdGluL2NvbW1pdC5jOjgxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIgogbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCDDtmZmbmVuIgogCi0jOiBidW5kbGUuYzoxNDEKKyM6IGJ1bmRsZS5jOjE0MwogbXNnaWQgIlJlcG9zaXRvcnkgbGFja3MgdGhlc2UgcHJlcmVxdWlzaXRlIGNvbW1pdHM6IgogbXNnc3RyICJEZW0gUmVwb3NpdG9yeSBmZWhsZW4gZm9sZ2VuZGUgdm9yYXVzZ2VzZXR6dGUgQ29tbWl0czoiCiAKLSM6IGJ1bmRsZS5jOjE5MgorIzogYnVuZGxlLmM6MTQ2Cittc2dpZCAibmVlZCBhIHJlcG9zaXRvcnkgdG8gdmVyaWZ5IGEgYnVuZGxlIgorbXNnc3RyICJVbSBlaW4gUGFrZXQgenUgw7xiZXJwcsO8ZmVuIHdpcmQgZWluIFJlcG9zaXRvcnkgYmVuw7Z0aWd0LiIKKworIzogYnVuZGxlLmM6MTk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBidW5kbGUgY29udGFpbnMgdGhpcyByZWY6IgogbXNnaWRfcGx1cmFsICJUaGUgYnVuZGxlIGNvbnRhaW5zIHRoZXNlICVkIHJlZnM6IgogbXNnc3RyWzBdICJEYXMgUGFrZXQgZW50aMOkbHQgZGllc2UgUmVmZXJlbno6IgogbXNnc3RyWzFdICJEYXMgUGFrZXQgZW50aMOkbHQgZGllc2UgJWQgUmVmZXJlbnplbjoiCiAKLSM6IGJ1bmRsZS5jOjE5OQorIzogYnVuZGxlLmM6MjA0CiBtc2dpZCAiVGhlIGJ1bmRsZSByZWNvcmRzIGEgY29tcGxldGUgaGlzdG9yeS4iCiBtc2dzdHIgIkRhcyBQYWtldCBzcGVpY2hlcnQgZWluZSBrb21wbGV0dGUgSGlzdG9yaWUuIgogCi0jOiBidW5kbGUuYzoyMDEKKyM6IGJ1bmRsZS5jOjIwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoaXMgcmVmOiIKIG1zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSByZXF1aXJlcyB0aGVzZSAlZCByZWZzOiIKIG1zZ3N0clswXSAiRGFzIFBha2V0IGJlbsO2dGlndCBkaWVzZSBSZWZlcmVuejoiCiBtc2dzdHJbMV0gIkRhcyBQYWtldCBiZW7DtnRpZ3QgZGllc2UgJWQgUmVmZXJlbnplbjoiCiAKLSM6IGJ1bmRsZS5jOjI2NworIzogYnVuZGxlLmM6MjczCiBtc2dpZCAidW5hYmxlIHRvIGR1cCBidW5kbGUgZGVzY3JpcHRvciIKIG1zZ3N0ciAiS29ubnRlIGR1cCBmw7xyIERlc2NyaXB0b3IgZGVzIFBha2V0cyBuaWNodCBhdXNmw7xocmVuLiIKIAotIzogYnVuZGxlLmM6Mjc0CisjOiBidW5kbGUuYzoyODAKIG1zZ2lkICJDb3VsZCBub3Qgc3Bhd24gcGFjay1vYmplY3RzIgogbXNnc3RyICJLb25udGUgUGFrZXRvYmpla3RlIG5pY2h0IGVyc3RlbGxlbiIKIAotIzogYnVuZGxlLmM6Mjg1CisjOiBidW5kbGUuYzoyOTEKIG1zZ2lkICJwYWNrLW9iamVjdHMgZGllZCIKIG1zZ3N0ciAiRXJzdGVsbHVuZyBkZXIgUGFrZXRvYmpla3RlIGFiZ2Vicm9jaGVuIgogCi0jOiBidW5kbGUuYzozMjcKKyM6IGJ1bmRsZS5jOjMzMwogbXNnaWQgInJldi1saXN0IGRpZWQiCiBtc2dzdHIgIlwicmV2LWxpc3RcIiBhYmdlYnJvY2hlbiIKIAotIzogYnVuZGxlLmM6Mzc2CisjOiBidW5kbGUuYzozODIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmICclcycgaXMgZXhjbHVkZWQgYnkgdGhlIHJldi1saXN0IG9wdGlvbnMiCiBtc2dzdHIgIlJlZmVyZW56ICclcycgd2lyZCBkdXJjaCBcInJldi1saXN0XCIgT3B0aW9uZW4gYXVzZ2VzY2hsb3NzZW4iCiAKLSM6IGJ1bmRsZS5jOjQ1NiBidWlsdGluL2xvZy5jOjE5MiBidWlsdGluL2xvZy5jOjE2ODggYnVpbHRpbi9zaG9ydGxvZy5jOjMwNAorIzogYnVuZGxlLmM6NDYxIGJ1aWx0aW4vbG9nLmM6MjAzIGJ1aWx0aW4vbG9nLmM6MTgxNCBidWlsdGluL3Nob3J0bG9nLmM6MzA2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBhcmd1bWVudDogJXMiCiBtc2dzdHIgIm5pY2h0IGVya2FubnRlcyBBcmd1bWVudDogJXMiCiAKLSM6IGJ1bmRsZS5jOjQ2NAorIzogYnVuZGxlLmM6NDY5CiBtc2dpZCAiUmVmdXNpbmcgdG8gY3JlYXRlIGVtcHR5IGJ1bmRsZS4iCiBtc2dzdHIgIkVyc3RlbGx1bmcgZWluZXMgbGVlcmVuIFBha2V0cyB6dXLDvGNrZ2V3aWVzZW4uIgogCi0jOiBidW5kbGUuYzo0NzQKKyM6IGJ1bmRsZS5jOjQ3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY3JlYXRlICclcyciCiBtc2dzdHIgImthbm4gJyVzJyBuaWNodCBlcnN0ZWxsZW4iCiAKLSM6IGJ1bmRsZS5jOjQ5OAorIzogYnVuZGxlLmM6NTA0CiBtc2dpZCAiaW5kZXgtcGFjayBkaWVkIgogbXNnc3RyICJFcnN0ZWxsdW5nIGRlciBQYWtldGluZGV4ZGF0ZWkgYWJnZWJyb2NoZW4iCiAKLSM6IGNvbG9yLmM6Mjk2CisjOiBjb2xvci5jOjMyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbG9yIHZhbHVlOiAlLipzIgogbXNnc3RyICJVbmfDvGx0aWdlciBGYXJid2VydDogJS4qcyIKIAotIzogY29tbWl0LmM6NTAgc2VxdWVuY2VyLmM6MjUyOCBidWlsdGluL2FtLmM6MzcwIGJ1aWx0aW4vYW0uYzo0MTQKLSM6IGJ1aWx0aW4vYW0uYzoxMzkwIGJ1aWx0aW4vYW0uYzoyMDI1IGJ1aWx0aW4vcmVwbGFjZS5jOjM3NgotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDQ4CisjOiBjb21taXQuYzo1MSBzZXF1ZW5jZXIuYzoyNzE5IGJ1aWx0aW4vYW0uYzozNTkgYnVpbHRpbi9hbS5jOjQwMworIzogYnVpbHRpbi9hbS5jOjEzNzEgYnVpbHRpbi9hbS5jOjIwMTQgYnVpbHRpbi9yZXBsYWNlLmM6NDU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAlcyIKIG1zZ3N0ciAia29ubnRlICVzIG5pY2h0IHBhcnNlbiIKIAotIzogY29tbWl0LmM6NTIKKyM6IGNvbW1pdC5jOjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzICVzIGlzIG5vdCBhIGNvbW1pdCEiCiBtc2dzdHIgIiVzICVzIGlzdCBrZWluIENvbW1pdCEiCkBAIC0xMzYzLDI4ICsyMTAzLDI4IEBACiAiU2llIGvDtm5uZW4gZGllc2UgTWVsZHVuZyB1bnRlcmRyw7xja2VuLCBpbmRlbSBTaWVcbiIKICJcImdpdCBjb25maWcgYWR2aWNlLmdyYWZ0RmlsZURlcHJlY2F0ZWQgZmFsc2VcIiBhdXNmw7xocmVuLiIKIAotIzogY29tbWl0LmM6MTExNQorIzogY29tbWl0LmM6MTE1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaGFzIGFuIHVudHJ1c3RlZCBHUEcgc2lnbmF0dXJlLCBhbGxlZ2VkbHkgYnkgJXMuIgogbXNnc3RyICIiCiAiQ29tbWl0ICVzIGhhdCBlaW5lIG5pY2h0IHZlcnRyYXVlbnN3w7xyZGlnZSBHUEctU2lnbmF0dXIsIGFuZ2VibGljaCB2b24gJXMuIgogCi0jOiBjb21taXQuYzoxMTE4CisjOiBjb21taXQuYzoxMTU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBoYXMgYSBiYWQgR1BHIHNpZ25hdHVyZSBhbGxlZ2VkbHkgYnkgJXMuIgogbXNnc3RyICJDb21taXQgJXMgaGF0IGVpbmUgdW5nw7xsdGlnZSBHUEctU2lnbmF0dXIsIGFuZ2VibGljaCB2b24gJXMuIgogCi0jOiBjb21taXQuYzoxMTIxCisjOiBjb21taXQuYzoxMTYwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIGEgR1BHIHNpZ25hdHVyZS4iCiBtc2dzdHIgIkNvbW1pdCAlcyBoYXQga2VpbmUgR1BHLVNpZ25hdHVyLiIKIAotIzogY29tbWl0LmM6MTEyNAorIzogY29tbWl0LmM6MTE2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaGFzIGEgZ29vZCBHUEcgc2lnbmF0dXJlIGJ5ICVzXG4iCiBtc2dzdHIgIkNvbW1pdCAlcyBoYXQgZWluZSBnw7xsdGlnZSBHUEctU2lnbmF0dXIgdm9uICVzXG4iCiAKLSM6IGNvbW1pdC5jOjEzNzgKKyM6IGNvbW1pdC5jOjE0MTcKIG1zZ2lkICIiCiAiV2FybmluZzogY29tbWl0IG1lc3NhZ2UgZGlkIG5vdCBjb25mb3JtIHRvIFVURi04LlxuIgogIllvdSBtYXkgd2FudCB0byBhbWVuZCBpdCBhZnRlciBmaXhpbmcgdGhlIG1lc3NhZ2UsIG9yIHNldCB0aGUgY29uZmlnXG4iCkBAIC0xMzk2LDk3ICsyMTM2LDI3MyBAQAogIkVuY29kaW5nLFxuIgogIndlbGNoZXMgdm9uIGlocmVtIFByb2pla3QgdmVyd2VuZGV0IHdpcmQuXG4iCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjEwOAotIywgYy1mb3JtYXQKLW1zZ2lkICJncmFwaCBmaWxlICVzIGlzIHRvbyBzbWFsbCIKLW1zZ3N0ciAiR3JhcGgtRGF0ZWkgJXMgaXN0IHp1IGtsZWluLiIKLQotIzogY29tbWl0LWdyYXBoLmM6MTE1Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCi1tc2dzdHIgIkdyYXBoLVNpZ25hdHVyICVYIHN0aW1tdCBuaWNodCBtaXQgU2lnbmF0dXIgJVggw7xiZXJlaW4uIgotCiAjOiBjb21taXQtZ3JhcGguYzoxMjIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ3JhcGggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgotbXNnc3RyICJHcmFwaC1WZXJzaW9uICVYIHN0aW1tdCBuaWNodCBtaXQgVmVyc2lvbiAlWCDDvGJlcmVpbi4iCi0KLSM6IGNvbW1pdC1ncmFwaC5jOjEyOQotIywgYy1mb3JtYXQKLW1zZ2lkICJoYXNoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKLW1zZ3N0ciAiSGFzaC1WZXJzaW9uICVYIHN0aW1tdCBuaWNodCBtaXQgVmVyc2lvbiAlWCDDvGJlcmVpbi4iCi0KLSM6IGNvbW1pdC1ncmFwaC5jOjE1MwotIywgYy1mb3JtYXQKLW1zZ2lkICJpbXByb3BlciBjaHVuayBvZmZzZXQgJTA4eCUwOHgiCi1tc2dzdHIgIlVuenVsw6Rzc2lnZXIgQ2h1bmstT2Zmc2V0ICUwOHglMDh4IgorbXNnaWQgImNvbW1pdC1ncmFwaCBmaWxlIGlzIHRvbyBzbWFsbCIKK21zZ3N0ciAiQ29tbWl0LUdyYXBoLURhdGVpIGlzdCB6dSBrbGVpbi4iCiAKICM6IGNvbW1pdC1ncmFwaC5jOjE4OQogIywgYy1mb3JtYXQKLW1zZ2lkICJjaHVuayBpZCAlMDh4IGFwcGVhcnMgbXVsdGlwbGUgdGltZXMiCi1tc2dzdHIgIkNodW5rLUlkICUwOHgga29tbXQgbWVocmZhY2ggdm9yLiIKK21zZ2lkICJjb21taXQtZ3JhcGggc2lnbmF0dXJlICVYIGRvZXMgbm90IG1hdGNoIHNpZ25hdHVyZSAlWCIKK21zZ3N0ciAiQ29tbWl0LUdyYXBoLVNpZ25hdHVyICVYIHN0aW1tdCBuaWNodCBtaXQgU2lnbmF0dXIgJVggw7xiZXJlaW4uIgogCi0jOiBjb21taXQtZ3JhcGguYzozMDgKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgorbXNnc3RyICJDb21taXQtR3JhcGgtVmVyc2lvbiAlWCBzdGltbXQgbmljaHQgbWl0IFZlcnNpb24gJVggw7xiZXJlaW4uIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGhhc2ggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgorbXNnc3RyICJIYXNoLVZlcnNpb24gZGVzIENvbW1pdC1HcmFwaCAlWCBzdGltbXQgbmljaHQgbWl0IFZlcnNpb24gJVggw7xiZXJlaW4uIgorCisjOiBjb21taXQtZ3JhcGguYzoyMjYKK21zZ2lkICJjb21taXQtZ3JhcGggY2h1bmsgbG9va3VwIHRhYmxlIGVudHJ5IG1pc3Npbmc7IGZpbGUgbWF5IGJlIGluY29tcGxldGUiCittc2dzdHIgIiIKKyJmZWhsZW5kZXIgVGFiZWxsZW5laW50cmFnIGbDvHIgQ29tbWl0LUdyYXBoIENodW5rLUxvb2t1cDsgRGF0ZWkgIgorIm3DtmdsaWNoZXJ3ZWlzZSB1bnZvbGxzdMOkbmRpZyIKKworIzogY29tbWl0LWdyYXBoLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBpbXByb3BlciBjaHVuayBvZmZzZXQgJTA4eCUwOHgiCittc2dzdHIgIlVuenVsw6Rzc2lnZXIgQ29tbWl0LUdyYXBoIENodW5rLU9mZnNldCAlMDh4JTA4eCIKKworIzogY29tbWl0LWdyYXBoLmM6MjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBjaHVuayBpZCAlMDh4IGFwcGVhcnMgbXVsdGlwbGUgdGltZXMiCittc2dzdHIgIkNvbW1pdC1HcmFwaCBDaHVuay1JZCAlMDh4IGtvbW10IG1laHJmYWNoIHZvci4iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjM0MworbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgbm8gYmFzZSBncmFwaHMgY2h1bmsiCittc2dzdHIgIkNvbW1pdC1HcmFwaCBoYXQga2VpbmVuIEJhc2lzLUdyYXBoLUNodW5rIgorCisjOiBjb21taXQtZ3JhcGguYzozNTMKK21zZ2lkICJjb21taXQtZ3JhcGggY2hhaW4gZG9lcyBub3QgbWF0Y2giCittc2dzdHIgIkNvbW1pdC1HcmFwaCBWZXJrZXR0dW5nIHN0aW1tdCBuaWNodCDDvGJlcmVpbi4iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdC1ncmFwaCBjaGFpbjogbGluZSAnJXMnIG5vdCBhIGhhc2giCittc2dzdHIgIlVuZ8O8bHRpZ2UgQ29tbWl0LUdyYXBoIFZlcmtldHR1bmc6IFplaWxlICclcycgaXN0IGtlaW4gSGFzaCIKKworIzogY29tbWl0LWdyYXBoLmM6NDI1Cittc2dpZCAidW5hYmxlIHRvIGZpbmQgYWxsIGNvbW1pdC1ncmFwaCBmaWxlcyIKK21zZ3N0ciAiS29ubnRlIG5pY2h0IGFsbGUgQ29tbWl0LUdyYXBoLURhdGVpZW4gZmluZGVuLiIKKworIzogY29tbWl0LWdyYXBoLmM6NTU4IGNvbW1pdC1ncmFwaC5jOjYxOAorbXNnaWQgImludmFsaWQgY29tbWl0IHBvc2l0aW9uLiBjb21taXQtZ3JhcGggaXMgbGlrZWx5IGNvcnJ1cHQiCittc2dzdHIgIlVuZ8O8bHRpZ2UgQ29tbWl0LVBvc2l0aW9uLiBDb21taXQtR3JhcGggaXN0IHdhaHJzY2hlaW5saWNoIGJlc2Now6RkaWd0LiIKKworIzogY29tbWl0LWdyYXBoLmM6NTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBmaW5kIGNvbW1pdCAlcyIKIG1zZ3N0ciAiS29ubnRlIENvbW1pdCAlcyBuaWNodCBmaW5kZW4uIgogCi0jOiBjb21taXQtZ3JhcGguYzo2MTcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjUyCisjOiBjb21taXQtZ3JhcGguYzo4NTIgYnVpbHRpbi9hbS5jOjEyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbW1pdCAlcyIKK21zZ3N0ciAiS29ubnRlIENvbW1pdCAnJXMnIG5pY2h0IHBhcnNlbi4iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwMTEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBnZXQgdHlwZSBvZiBvYmplY3QgJXMiCiBtc2dzdHIgIktvbm50ZSBBcnQgdm9uIE9iamVrdCAnJXMnIG5pY2h0IGJlc3RpbW1lbi4iCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjY1MQotbXNnaWQgIkFubm90YXRpbmcgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCi1tc2dzdHIgIkFubm90aWVyZSBDb21taXRzIGluIENvbW1pdC1HcmFwaGVuIgorIzogY29tbWl0LWdyYXBoLmM6MTA0MworbXNnaWQgIkxvYWRpbmcga25vd24gY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIkxhZGUgYmVrYW5udGUgQ29tbWl0cyBpbiBDb21taXQtR3JhcGgiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjY5MQorIzogY29tbWl0LWdyYXBoLmM6MTA2MAorbXNnaWQgIkV4cGFuZGluZyByZWFjaGFibGUgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIkVyd2VpdGVyZSBlcnJlaWNoYmFyZSBDb21taXRzIGluIENvbW1pdC1HcmFwaCIKKworIzogY29tbWl0LWdyYXBoLmM6MTA3OQorbXNnaWQgIkNsZWFyaW5nIGNvbW1pdCBtYXJrcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIkzDtnNjaGUgQ29tbWl0LU1hcmtpZXJ1bmdlbiBpbiBDb21taXQtR3JhcGgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwOTgKIG1zZ2lkICJDb21wdXRpbmcgY29tbWl0IGdyYXBoIGdlbmVyYXRpb24gbnVtYmVycyIKLW1zZ3N0ciAiQ29tbWl0LUdyYXBoIEdlbmVyaWVydW5nc251bW1lcm4gYmVyZWNobmVuIgorbXNnc3RyICJDb21taXQtR3JhcGggR2VuZXJhdGlvbnNudW1tZXJuIGJlcmVjaG5lbiIKIAotIzogY29tbWl0LWdyYXBoLmM6ODAzIGNvbW1pdC1ncmFwaC5jOjgyNiBjb21taXQtZ3JhcGguYzo4NTIKLW1zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCIKLW1zZ3N0ciAiQmVzdGltbWUgQ29tbWl0cyBmw7xyIENvbW1pdC1HcmFwaGVuIgorIzogY29tbWl0LWdyYXBoLmM6MTE3MworIywgYy1mb3JtYXQKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrIgorbXNnaWRfcGx1cmFsICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrcyIKK21zZ3N0clswXSAiU3VjaGUgQ29tbWl0cyBmw7xyIENvbW1pdC1HcmFwaCBpbiAlZCBQYWtldCIKK21zZ3N0clsxXSAiU3VjaGUgQ29tbWl0cyBmw7xyIENvbW1pdC1HcmFwaCBpbiAlZCBQYWtldGVuIgogCi0jOiBjb21taXQtZ3JhcGguYzo4MTIKKyM6IGNvbW1pdC1ncmFwaC5jOjExODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgYWRkaW5nIHBhY2sgJXMiCiBtc2dzdHIgIkZlaGxlciBiZWltIEhpbnp1ZsO8Z2VuIHZvbiBQYWtldCAlcy4iCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgxNAorIzogY29tbWl0LWdyYXBoLmM6MTE5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBvcGVuaW5nIGluZGV4IGZvciAlcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gw5ZmZm5lbiBkZXMgSW5kZXggZsO8ciAlcy4iCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjg2OAorIzogY29tbWl0LWdyYXBoLmM6MTIxNAogIywgYy1mb3JtYXQKLW1zZ2lkICJ0aGUgY29tbWl0IGdyYXBoIGZvcm1hdCBjYW5ub3Qgd3JpdGUgJWQgY29tbWl0cyIKLW1zZ3N0ciAiRGFzIENvbW1pdC1HcmFwaCBGb3JtYXQga2FubiBuaWNodCAlZCBDb21taXRzIHNjaHJlaWJlbi4iCittc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggZnJvbSAlZCByZWYiCittc2dpZF9wbHVyYWwgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGZyb20gJWQgcmVmcyIKK21zZ3N0clswXSAiU3VjaGUgQ29tbWl0cyBmw7xyIENvbW1pdC1HcmFwaCBpbiAlZCBSZWZlcmVueiIKK21zZ3N0clsxXSAiU3VjaGUgQ29tbWl0cyBmw7xyIENvbW1pdC1HcmFwaCBpbiAlZCBSZWZlcmVuemVuIgogCi0jOiBjb21taXQtZ3JhcGguYzo4OTUKLW1zZ2lkICJ0b28gbWFueSBjb21taXRzIHRvIHdyaXRlIGdyYXBoIgotbXNnc3RyICJadSB2aWVsZSBDb21taXRzIHp1bSBTY2hyZWliZW4gZGVzIEdyYXBoZW4uIgorIzogY29tbWl0LWdyYXBoLmM6MTIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdCBvYmplY3QgaWQ6ICVzIgorbXNnc3RyICJ1bmfDvGx0aWdlIENvbW1pdC1PYmpla3QtSUQ6ICVzIgogCi0jOiBjb21taXQtZ3JhcGguYzo5MDIgbWlkeC5jOjc2OQorIzogY29tbWl0LWdyYXBoLmM6MTI0OQorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGFtb25nIHBhY2tlZCBvYmplY3RzIgorbXNnc3RyICJTdWNoZSBDb21taXRzIGbDvHIgQ29tbWl0LUdyYXBoIGluIGdlcGFja3RlbiBPYmpla3RlbiIKKworIzogY29tbWl0LWdyYXBoLmM6MTI2NAorbXNnaWQgIkNvdW50aW5nIGRpc3RpbmN0IGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJaw6RobGUgQ29tbWl0cyBpbiBDb21taXQtR3JhcGgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyOTQKK21zZ2lkICJGaW5kaW5nIGV4dHJhIGVkZ2VzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiU3VjaGUgenVzw6R0emxpY2hlIFLDpG5kZXIgaW4gQ29tbWl0LUdyYXBoIgorCisjOiBjb21taXQtZ3JhcGguYzoxMzQwCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGNvcnJlY3QgbnVtYmVyIG9mIGJhc2UgZ3JhcGggaWRzIgorbXNnc3RyICJGZWhsZXIgYmVpbSBTY2hyZWliZW4gZGVyIGtvcnJla3RlbiBBbnphaGwgdm9uIEJhc2lzLUdyYXBoLUlEcy4iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEzNzMgbWlkeC5jOjgxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgb2YgJXMiCiBtc2dzdHIgIktvbm50ZSBmw7xocmVuZGUgVmVyemVpY2huaXNzZSB2b24gJyVzJyBuaWNodCBlcnN0ZWxsZW4uIgogCi0jOiBjb21taXQtZ3JhcGguYzoxMDAyCisjOiBjb21taXQtZ3JhcGguYzoxMzg1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMwNiBidWlsdGluL3JlcGFjay5jOjI0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlICclcyciCittc2dzdHIgImtvbm50ZSAnJXMnIG5pY2h0IGVyc3RlbGxlbiIKKworIzogY29tbWl0LWdyYXBoLmM6MTQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJXcml0aW5nIG91dCBjb21taXQgZ3JhcGggaW4gJWQgcGFzcyIKK21zZ2lkX3BsdXJhbCAiV3JpdGluZyBvdXQgY29tbWl0IGdyYXBoIGluICVkIHBhc3NlcyIKK21zZ3N0clswXSAiU2NocmVpYmUgQ29tbWl0LUdyYXBoIGluICVkIER1cmNoZ2FuZyIKK21zZ3N0clsxXSAiU2NocmVpYmUgQ29tbWl0LUdyYXBoIGluICVkIER1cmNoZ8OkbmdlbiIKKworIzogY29tbWl0LWdyYXBoLmM6MTQ4NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGNvbW1pdC1ncmFwaCBjaGFpbiBmaWxlIgorbXNnc3RyICJLb25udGUgQ29tbWl0LUdyYXBoIENoYWluLURhdGVpIG5pY2h0IMO2ZmZuZW4uIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDk4Cittc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSBiYXNlIGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICJLb25udGUgQmFzaXMtQ29tbWl0LUdyYXBoLURhdGVpIG5pY2h0IHVtYmVuZW5uZW4uIgorCisjOiBjb21taXQtZ3JhcGguYzoxNTE4Cittc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSB0ZW1wb3JhcnkgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgIktvbm50ZSB0ZW1wb3LDpHJlIENvbW1pdC1HcmFwaC1EYXRlaSBuaWNodCB1bWJlbmVubmVuLiIKKworIzogY29tbWl0LWdyYXBoLmM6MTYzMQorbXNnaWQgIlNjYW5uaW5nIG1lcmdlZCBjb21taXRzIgorbXNnc3RyICJEdXJjaHN1Y2hlIHp1c2FtbWVuZ2Vmw7xocnRlIENvbW1pdHMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkdXBsaWNhdGUgY29tbWl0IGlkICVzIgorbXNnc3RyICJVbmVyd2FydGV0ZSBkb3BwZWx0ZSBDb21taXQtSUQgJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2NjUKK21zZ2lkICJNZXJnaW5nIGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAiWnVzYW1tZW5mw7xocmVuIHZvbiBDb21taXQtR3JhcGgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE4NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlIGNvbW1pdCBncmFwaCBmb3JtYXQgY2Fubm90IHdyaXRlICVkIGNvbW1pdHMiCittc2dzdHIgIkRhcyBDb21taXQtR3JhcGggRm9ybWF0IGthbm4gbmljaHQgJWQgQ29tbWl0cyBzY2hyZWliZW4uIgorCisjOiBjb21taXQtZ3JhcGguYzoxODU1Cittc2dpZCAidG9vIG1hbnkgY29tbWl0cyB0byB3cml0ZSBncmFwaCIKK21zZ3N0ciAiWnUgdmllbGUgQ29tbWl0cyB6dW0gU2NocmVpYmVuIGRlcyBHcmFwaGVuLiIKKworIzogY29tbWl0LWdyYXBoLmM6MTk0NAogbXNnaWQgInRoZSBjb21taXQtZ3JhcGggZmlsZSBoYXMgaW5jb3JyZWN0IGNoZWNrc3VtIGFuZCBpcyBsaWtlbHkgY29ycnVwdCIKIG1zZ3N0ciAiIgogIkRpZSBDb21taXQtR3JhcGgtRGF0ZWkgaGF0IGVpbmUgZmFsc2NoZSBQcsO8ZnN1bW1lIHVuZCBpc3Qgd2FocnNjaGVpbmxpY2ggIgogImJlc2Now6RkaWd0LiIKIAotIzogY29tbWl0LWdyYXBoLmM6MTA0NgorIzogY29tbWl0LWdyYXBoLmM6MTk1NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzIGluY29ycmVjdCBPSUQgb3JkZXI6ICVzIHRoZW4gJXMiCittc2dzdHIgIkNvbW1pdC1HcmFwaCBoYXQgZmVobGVyaGFmdGUgT0lELVJlaWhlbmZvbGdlOiAlcyBkYW5uICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoxOTY0IGNvbW1pdC1ncmFwaC5jOjE5NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGhhcyBpbmNvcnJlY3QgZmFub3V0IHZhbHVlOiBmYW5vdXRbJWRdID0gJXUgIT0gJXUiCittc2dzdHIgIkNvbW1pdC1HcmFwaCBoYXQgZmVobGVyaGFmdGVuIEZhbm91dC1XZXJ0OiBmYW5vdXRbJWRdID0gJXUgIT0gJXUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIGNvbW1pdCAlcyBmcm9tIGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAiS29ubnRlIENvbW1pdCAlcyB2b24gQ29tbWl0LUdyYXBoIG5pY2h0IHBhcnNlbi4iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5ODkKIG1zZ2lkICJWZXJpZnlpbmcgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCiBtc2dzdHIgIkNvbW1pdCBpbiBDb21taXQtR3JhcGggw7xiZXJwcsO8ZmVuIgogCi0jOiBjb21wYXQvb2JzdGFjay5jOjQwNSBjb21wYXQvb2JzdGFjay5jOjQwNworIzogY29tbWl0LWdyYXBoLmM6MjAwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgY29tbWl0ICVzIGZyb20gb2JqZWN0IGRhdGFiYXNlIGZvciBjb21taXQtZ3JhcGgiCittc2dzdHIgIiIKKyJGZWhsZXIgYmVpbSBQYXJzZW4gZGVzIENvbW1pdHMgJXMgdm9uIE9iamVrdC1EYXRlbmJhbmsgZsO8ciBDb21taXQtR3JhcGgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicm9vdCB0cmVlIE9JRCBmb3IgY29tbWl0ICVzIGluIGNvbW1pdC1ncmFwaCBpcyAlcyAhPSAlcyIKK21zZ3N0ciAiIgorIk9JRCBkZXMgV3VyemVsdmVyemVpY2huaXNzZXMgZsO8ciBDb21taXQgJXMgaW4gQ29tbWl0LUdyYXBoIGlzdCAlcyAhPSAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MjAyMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggcGFyZW50IGxpc3QgZm9yIGNvbW1pdCAlcyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiQ29tbWl0LUdyYXBoIFZvcmfDpG5nZXItTGlzdGUgZsO8ciBDb21taXQgJXMgaXN0IHp1IGxhbmciCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBmb3IgJXMgaXMgJXMgIT0gJXMiCittc2dzdHIgIkNvbW1pdC1HcmFwaC1Wb3Jnw6RuZ2VyIGbDvHIgJXMgaXN0ICVzICE9ICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgbGlzdCBmb3IgY29tbWl0ICVzIHRlcm1pbmF0ZXMgZWFybHkiCittc2dzdHIgIkNvbW1pdC1HcmFwaCBWb3Jnw6RuZ2VyLUxpc3RlIGbDvHIgQ29tbWl0ICVzIGVuZGV0IHp1IGZyw7xoIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb21taXQtZ3JhcGggaGFzIGdlbmVyYXRpb24gbnVtYmVyIHplcm8gZm9yIGNvbW1pdCAlcywgYnV0IG5vbi16ZXJvIGVsc2V3aGVyZSIKK21zZ3N0ciAiIgorIkNvbW1pdC1HcmFwaCBoYXQgR2VuZXJhdGlvbnNudW1tZXIgbnVsbCBmw7xyIENvbW1pdCAlcywgYWJlciBzb25zdCB1bmdsZWljaCAiCisibnVsbCIKKworIzogY29tbWl0LWdyYXBoLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29tbWl0LWdyYXBoIGhhcyBub24temVybyBnZW5lcmF0aW9uIG51bWJlciBmb3IgY29tbWl0ICVzLCBidXQgemVybyBlbHNld2hlcmUiCittc2dzdHIgIiIKKyJDb21taXQtR3JhcGggaGF0IEdlbmVyYXRpb25zbnVtbWVyIHVuZ2xlaWNoIG51bGwgZsO8ciBDb21taXQgJXMsIGFiZXIgc29uc3QgIgorIm51bGwiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGdlbmVyYXRpb24gZm9yIGNvbW1pdCAlcyBpcyAldSAhPSAldSIKK21zZ3N0ciAiQ29tbWl0LUdyYXBoIEVyc3RlbGx1bmcgZsO8ciBDb21taXQgJXMgaXN0ICV1ICE9ICV1IgorCisjOiBjb21taXQtZ3JhcGguYzoyMDcyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdCBkYXRlIGZvciBjb21taXQgJXMgaW4gY29tbWl0LWdyYXBoIGlzICU8UFJJdU1BWD4gIT0gJTxQUkl1TUFYPiIKK21zZ3N0ciAiIgorIkNvbW1pdC1EYXR1bSBmw7xyIENvbW1pdCAlcyBpbiBDb21taXQtR3JhcGggaXN0ICU8UFJJdU1BWD4gIT0gJTxQUkl1TUFYPiIKKworIzogY29tcGF0L29ic3RhY2suYzo0MDYgY29tcGF0L29ic3RhY2suYzo0MDgKIG1zZ2lkICJtZW1vcnkgZXhoYXVzdGVkIgogbXNnc3RyICJTcGVpY2hlciB2ZXJicmF1Y2h0IgogCi0jOiBjb25maWcuYzoxMjMKKyM6IGNvbmZpZy5jOjEyNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhjZWVkZWQgbWF4aW11bSBpbmNsdWRlIGRlcHRoICglZCkgd2hpbGUgaW5jbHVkaW5nXG4iCkBAIC0xNTAyLDMxMiArMjQxOCwzMDYgQEAKICLDvGJlcnNjaHJpdHRlbi5cbiIKICJEYXMga8O2bm50ZSBkdXJjaCB6aXJrdWxhcmUgSW5jbHVkZXMgZW50c3RhbmRlbiBzZWluLiIKIAotIzogY29uZmlnLmM6MTM5CisjOiBjb25maWcuYzoxNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGV4cGFuZCBpbmNsdWRlIHBhdGggJyVzJyIKIG1zZ3N0ciAiS29ubnRlIEluY2x1ZGUtUGZhZCAnJXMnIG5pY2h0IGVyd2VpdGVybi4iCiAKLSM6IGNvbmZpZy5jOjE1MAorIzogY29uZmlnLmM6MTUxCiBtc2dpZCAicmVsYXRpdmUgY29uZmlnIGluY2x1ZGVzIG11c3QgY29tZSBmcm9tIGZpbGVzIgogbXNnc3RyICJSZWxhdGl2ZSBJbmNsdWRlcyB2b24gS29uZmlndXJhdGlvbmVuIG3DvHNzZW4gYXVzIERhdGVpZW4ga29tbWVuLiIKIAotIzogY29uZmlnLmM6MTkwCisjOiBjb25maWcuYzoxOTcKIG1zZ2lkICJyZWxhdGl2ZSBjb25maWcgaW5jbHVkZSBjb25kaXRpb25hbHMgbXVzdCBjb21lIGZyb20gZmlsZXMiCiBtc2dzdHIgIiIKICJCZWRpbmd1bmdlbiBmw7xyIGRhcyBFaW5iaW5kZW4gdm9uIEtvbmZpZ3VyYXRpb25lbiBhdXMgcmVsYXRpdmVuIFBmYWRlbiAiCiAibcO8c3NlblxuIgogImF1cyBEYXRlaWVuIGtvbW1lbi4iCiAKLSM6IGNvbmZpZy5jOjM0OAorIzogY29uZmlnLmM6Mzc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImtleSBkb2VzIG5vdCBjb250YWluIGEgc2VjdGlvbjogJXMiCiBtc2dzdHIgIlNjaGzDvHNzZWwgZW50aMOkbHQga2VpbmUgU2VrdGlvbjogJXMiCiAKLSM6IGNvbmZpZy5jOjM1NAorIzogY29uZmlnLmM6MzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgImtleSBkb2VzIG5vdCBjb250YWluIHZhcmlhYmxlIG5hbWU6ICVzIgogbXNnc3RyICJTY2hsw7xzc2VsIGVudGjDpGx0IGtlaW5lbiBWYXJpYWJsZW5uYW1lbjogJXMiCiAKLSM6IGNvbmZpZy5jOjM3OCBzZXF1ZW5jZXIuYzoyMjk2CisjOiBjb25maWcuYzo0MDYgc2VxdWVuY2VyLmM6MjQ0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGtleTogJXMiCiBtc2dzdHIgIlVuZ8O8bHRpZ2VyIFNjaGzDvHNzZWw6ICVzIgogCi0jOiBjb25maWcuYzozODQKKyM6IGNvbmZpZy5jOjQxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGtleSAobmV3bGluZSk6ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlciBTY2hsw7xzc2VsIChuZXVlIFplaWxlKTogJXMiCiAKLSM6IGNvbmZpZy5jOjQyMCBjb25maWcuYzo0MzIKKyM6IGNvbmZpZy5jOjQ0OCBjb25maWcuYzo0NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYm9ndXMgY29uZmlnIHBhcmFtZXRlcjogJXMiCiBtc2dzdHIgIkZlaGxlcmhhZnRlciBLb25maWd1cmF0aW9uc3BhcmFtZXRlcjogJXMiCiAKLSM6IGNvbmZpZy5jOjQ2NworIzogY29uZmlnLmM6NDk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImJvZ3VzIGZvcm1hdCBpbiAlcyIKIG1zZ3N0ciAiRmVobGVyaGFmdGVzIEZvcm1hdCBpbiAlcyIKIAotIzogY29uZmlnLmM6NzkzCisjOiBjb25maWcuYzo4MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGJsb2IgJXMiCiBtc2dzdHIgIlVuZ8O8bHRpZ2UgS29uZmlndXJhdGlvbnN6ZWlsZSAlZCBpbiBCbG9iICVzIgogCi0jOiBjb25maWcuYzo3OTcKKyM6IGNvbmZpZy5jOjgyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gZmlsZSAlcyIKIG1zZ3N0ciAiVW5nw7xsdGlnZSBLb25maWd1cmF0aW9uc3plaWxlICVkIGluIERhdGVpICVzIgogCi0jOiBjb25maWcuYzo4MDEKKyM6IGNvbmZpZy5jOjgyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgIlVuZ8O8bHRpZ2UgS29uZmlndXJhdGlvbnN6ZWlsZSAlZCBpbiBTdGFuZGFyZC1FaW5nYWJlIgogCi0jOiBjb25maWcuYzo4MDUKKyM6IGNvbmZpZy5jOjgzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gc3VibW9kdWxlLWJsb2IgJXMiCiBtc2dzdHIgIlVuZ8O8bHRpZ2UgS29uZmlndXJhdGlvbnN6ZWlsZSAlZCBpbiBTdWJtb2R1bC1CbG9iICVzIgogCi0jOiBjb25maWcuYzo4MDkKKyM6IGNvbmZpZy5jOjgzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gY29tbWFuZCBsaW5lICVzIgogbXNnc3RyICJVbmfDvGx0aWdlIEtvbmZpZ3VyYXRpb25zemVpbGUgJWQgaW4gS29tbWFuZG96ZWlsZSAlcyIKIAotIzogY29uZmlnLmM6ODEzCisjOiBjb25maWcuYzo4NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluICVzIgogbXNnc3RyICJVbmfDvGx0aWdlIEtvbmZpZ3VyYXRpb25zemVpbGUgJWQgaW4gJXMiCiAKLSM6IGNvbmZpZy5jOjk1MgorIzogY29uZmlnLmM6OTc4CiBtc2dpZCAib3V0IG9mIHJhbmdlIgogbXNnc3RyICJBdcOfZXJoYWxiIGRlcyBCZXJlaWNocyIKIAotIzogY29uZmlnLmM6OTUyCisjOiBjb25maWcuYzo5NzgKIG1zZ2lkICJpbnZhbGlkIHVuaXQiCiBtc2dzdHIgIlVuZ8O8bHRpZ2UgRWluaGVpdCIKIAotIzogY29uZmlnLmM6OTU4CisjOiBjb25maWcuYzo5NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcyc6ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlciBudW1lcmlzY2hlciBXZXJ0ICclcycgZsO8ciBLb25maWd1cmF0aW9uICclcyc6ICVzIgogCi0jOiBjb25maWcuYzo5NjMKKyM6IGNvbmZpZy5jOjk5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBibG9iICVzOiAlcyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgbnVtZXJpc2NoZXIgV2VydCAnJXMnIGbDvHIgS29uZmlndXJhdGlvbiAnJXMnIGluIEJsb2IgJXM6ICVzIgogCi0jOiBjb25maWcuYzo5NjYKKyM6IGNvbmZpZy5jOjEwMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gZmlsZSAlczogJXMiCiBtc2dzdHIgIiIKICJVbmfDvGx0aWdlciBudW1lcmlzY2hlciBXZXJ0ICclcycgZsO8ciBLb25maWd1cmF0aW9uICclcycgaW4gRGF0ZWkgJXM6ICVzIgogCi0jOiBjb25maWcuYzo5NjkKKyM6IGNvbmZpZy5jOjEwMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gc3RhbmRhcmQgaW5wdXQ6ICVzIgogbXNnc3RyICIiCiAiVW5nw7xsdGlnZXIgbnVtZXJpc2NoZXIgV2VydCAnJXMnIGbDvHIgS29uZmlndXJhdGlvbiAnJXMnIGluIFN0YW5kYXJkLUVpbmdhYmU6ICIKICIlcyIKIAotIzogY29uZmlnLmM6OTcyCisjOiBjb25maWcuYzoxMDA3CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN1Ym1vZHVsZS1ibG9iICVzOiAlcyIKIG1zZ3N0ciAiIgogIlVuZ8O8bHRpZ2VyIG51bWVyaXNjaGVyIFdlcnQgJyVzJyBmw7xyIEtvbmZpZ3VyYXRpb24gJyVzJyBpbiBTdWJtb2R1bC1CbG9iICVzOiAiCiAiJXMiCiAKLSM6IGNvbmZpZy5jOjk3NQorIzogY29uZmlnLmM6MTAxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBjb21tYW5kIGxpbmUgJXM6ICVzIgogbXNnc3RyICIiCiAiVW5nw7xsdGlnZXIgbnVtZXJpc2NoZXIgV2VydCAnJXMnIGbDvHIgS29uZmlndXJhdGlvbiAnJXMnIGluIEJlZmVobHN6ZWlsZSAlczogIgogIiVzIgogCi0jOiBjb25maWcuYzo5NzgKKyM6IGNvbmZpZy5jOjEwMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gJXM6ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlciBudW1lcmlzY2hlciBXZXJ0ICclcycgZsO8ciBLb25maWd1cmF0aW9uICclcycgaW4gJXM6ICVzIgogCi0jOiBjb25maWcuYzoxMDczCisjOiBjb25maWcuYzoxMTA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBleHBhbmQgdXNlciBkaXIgaW46ICclcyciCiBtc2dzdHIgIkZlaGxlciBiZWltIEVyd2VpdGVybiBkZXMgTnV0emVydmVyemVpY2huaXNzZXMgaW46ICclcyciCiAKLSM6IGNvbmZpZy5jOjEwODIKKyM6IGNvbmZpZy5jOjExMTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBmb3IgJyVzJyBpcyBub3QgYSB2YWxpZCB0aW1lc3RhbXAiCiBtc2dzdHIgIiclcycgaXN0IGtlaW4gZ8O8bHRpZ2VyIFplaXRzdGVtcGVsIGbDvHIgJyVzJyIKIAotIzogY29uZmlnLmM6MTE3MworIzogY29uZmlnLmM6MTIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJhYmJyZXYgbGVuZ3RoIG91dCBvZiByYW5nZTogJWQiCiBtc2dzdHIgIkzDpG5nZSBmw7xyIEFia8O8cnp1bmcgdm9uIENvbW1pdC1JRHMgYXXDn2VyaGFsYiBkZXMgQmVyZWljaHM6ICVkIgogCi0jOiBjb25maWcuYzoxMTg3IGNvbmZpZy5jOjExOTgKKyM6IGNvbmZpZy5jOjEyMjIgY29uZmlnLmM6MTIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgemxpYiBjb21wcmVzc2lvbiBsZXZlbCAlZCIKIG1zZ3N0ciAidW5nw7xsdGlnZXIgemxpYiBLb21wcmltaWVydW5nc2dyYWQgJWQiCiAKLSM6IGNvbmZpZy5jOjEyOTAKKyM6IGNvbmZpZy5jOjEzMjUKIG1zZ2lkICJjb3JlLmNvbW1lbnRDaGFyIHNob3VsZCBvbmx5IGJlIG9uZSBjaGFyYWN0ZXIiCiBtc2dzdHIgImNvcmUuY29tbWVudENoYXIgc29sbHRlIG51ciBlaW4gWmVpY2hlbiBzZWluIgogCi0jOiBjb25maWcuYzoxMzIzCisjOiBjb25maWcuYzoxMzU4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbW9kZSBmb3Igb2JqZWN0IGNyZWF0aW9uOiAlcyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgTW9kdXMgZsO8ciBPYmpla3RlcnN0ZWxsdW5nOiAlcyIKIAotIzogY29uZmlnLmM6MTM5NQorIzogY29uZmlnLmM6MTQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgdmFsdWUgZm9yICVzIgogbXNnc3RyICJVbmfDvGx0aWdlciBXZXJ0IGbDvHIgJXMuIgogCi0jOiBjb25maWcuYzoxNDIxCisjOiBjb25maWcuYzoxNDU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlciBXZXJ0IGbDvHIgJXM6ICVzIgogCi0jOiBjb25maWcuYzoxNDIyCisjOiBjb25maWcuYzoxNDU3CiBtc2dpZCAibXVzdCBiZSBvbmUgb2Ygbm90aGluZywgbWF0Y2hpbmcsIHNpbXBsZSwgdXBzdHJlYW0gb3IgY3VycmVudCIKIG1zZ3N0ciAiIgogIk11c3MgZWluZXIgdm9uIGRpZXNlbiBzZWluOiBub3RoaW5nLCBtYXRjaGluZywgc2ltcGxlLCB1cHN0cmVhbSwgY3VycmVudCIKIAotIzogY29uZmlnLmM6MTQ4MSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTEKKyM6IGNvbmZpZy5jOjE1MTggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBwYWNrIGNvbXByZXNzaW9uIGxldmVsICVkIgogbXNnc3RyICJ1bmfDvGx0aWdlciBLb21wcmltaWVydW5nc2dyYWQgKCVkKSBmw7xyIFBha2V0aWVydW5nIgogCi0jOiBjb25maWcuYzoxNjAyCisjOiBjb25maWcuYzoxNjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBsb2FkIGNvbmZpZyBibG9iIG9iamVjdCAnJXMnIgogbXNnc3RyICJLb25udGUgQmxvYi1PYmpla3QgJyVzJyBmw7xyIEtvbmZpZ3VyYXRpb24gbmljaHQgbGFkZW4uIgogCi0jOiBjb25maWcuYzoxNjA1CisjOiBjb25maWcuYzoxNjQyCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSAnJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgYmxvYiIKIG1zZ3N0ciAiUmVmZXJlbnogJyVzJyB6ZWlndCBhdWYga2VpbmVuIEJsb2IuIgogCi0jOiBjb25maWcuYzoxNjIyCisjOiBjb25maWcuYzoxNjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIGNvbmZpZyBibG9iICclcyciCiBtc2dzdHIgIktvbm50ZSBCbG9iICclcycgZsO8ciBLb25maWd1cmF0aW9uIG5pY2h0IGF1ZmzDtnNlbi4iCiAKLSM6IGNvbmZpZy5jOjE2NTIKKyM6IGNvbmZpZy5jOjE2ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHBhcnNlICVzIgogbXNnc3RyICJGZWhsZXIgYmVpbSBQYXJzZW4gdm9uICVzLiIKIAotIzogY29uZmlnLmM6MTcwNQorIzogY29uZmlnLmM6MTc0MwogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21tYW5kLWxpbmUgY29uZmlnIgogbXNnc3RyICIiCiAiS29ubnRlIGRpZSDDvGJlciBkaWUgQmVmZWhsc3plaWxlIGFuZ2VnZWJlbmUgS29uZmlndXJhdGlvbiBuaWNodCBwYXJzZW4uIgogCi0jOiBjb25maWcuYzoyMDM3CisjOiBjb25maWcuYzoyMDk3CiBtc2dpZCAidW5rbm93biBlcnJvciBvY2N1cnJlZCB3aGlsZSByZWFkaW5nIHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIgogbXNnc3RyICIiCiAiRXMgdHJhdCBlaW4gdW5iZWthbm50ZXIgRmVobGVyIGJlaW0gTGVzZW4gZGVyIEtvbmZpZ3VyYXRpb25zZGF0ZWllbiBhdWYuIgogCi0jOiBjb25maWcuYzoyMjA3CisjOiBjb25maWcuYzoyMjY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgJXM6ICclcyciCiBtc2dzdHIgIlVuZ8O8bHRpZ2VyICVzOiAnJXMnIgogCi0jOiBjb25maWcuYzoyMjUwCi0jLCBjLWZvcm1hdAotbXNnaWQgInVua25vd24gY29yZS51bnRyYWNrZWRDYWNoZSB2YWx1ZSAnJXMnOyB1c2luZyAna2VlcCcgZGVmYXVsdCB2YWx1ZSIKLW1zZ3N0ciAiIgotIlVuYmVrYW5udGVyIFdlcnQgJyVzJyBpbiBjb3JlLnVudHJhY2tlZENhY2hlOyBiZW51dHplIFN0YW5kYXJkd2VydCAna2VlcCciCi0KLSM6IGNvbmZpZy5jOjIyNzYKKyM6IGNvbmZpZy5jOjIzMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAic3BsaXRJbmRleC5tYXhQZXJjZW50Q2hhbmdlIHZhbHVlICclZCcgc2hvdWxkIGJlIGJldHdlZW4gMCBhbmQgMTAwIgogbXNnc3RyICIiCiAiRGVyIFdlcnQgJyVkJyB2b24gc3BsaXRJbmRleC5tYXhQZXJjZW50Q2hhbmdlIHNvbGx0ZSB6d2lzY2hlbiAwIHVuZCAxMDAgIgogImxpZWdlbi4iCiAKLSM6IGNvbmZpZy5jOjIzMjIKKyM6IGNvbmZpZy5jOjIzNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICclcycgZnJvbSBjb21tYW5kLWxpbmUgY29uZmlnIgogbXNnc3RyICIiCiAiS29ubnRlIFdlcnQgJyVzJyBhdXMgZGVyIMO8YmVyIGRpZSBCZWZlaGxzemVpbGUgYW5nZWdlYmVuZW4gS29uZmlndXJhdGlvblxuIgogIm5pY2h0IHBhcnNlbi4iCiAKLSM6IGNvbmZpZy5jOjIzMjQKKyM6IGNvbmZpZy5jOjIzNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyB2YXJpYWJsZSAnJXMnIGluIGZpbGUgJyVzJyBhdCBsaW5lICVkIgogbXNnc3RyICJ1bmfDvGx0aWdlIEtvbmZpZ3VyYXRpb25zdmFyaWFibGUgJyVzJyBpbiBEYXRlaSAnJXMnIGJlaSBaZWlsZSAlZCIKIAotIzogY29uZmlnLmM6MjQwNQorIzogY29uZmlnLmM6MjQ0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHNlY3Rpb24gbmFtZSAnJXMnIgogbXNnc3RyICJVbmfDvGx0aWdlciBTZWt0aW9uc25hbWUgJyVzJyIKIAotIzogY29uZmlnLmM6MjQzNworIzogY29uZmlnLmM6MjQ3MwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBoYXMgbXVsdGlwbGUgdmFsdWVzIgogbXNnc3RyICIlcyBoYXQgbWVocmVyZSBXZXJ0ZSIKIAotIzogY29uZmlnLmM6MjQ2NgorIzogY29uZmlnLmM6MjUwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgbmV3IGNvbmZpZ3VyYXRpb24gZmlsZSAlcyIKIG1zZ3N0ciAiS29ubnRlIG5ldWUgS29uZmlndXJhdGlvbnNkYXRlaSAnJXMnIG5pY2h0IHNjaHJlaWJlbi4iCiAKLSM6IGNvbmZpZy5jOjI3MTcgY29uZmlnLmM6MzA0MQorIzogY29uZmlnLmM6Mjc1NCBjb25maWcuYzozMDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb2NrIGNvbmZpZyBmaWxlICVzIgogbXNnc3RyICJLb25udGUgS29uZmlndXJhdGlvbnNkYXRlaSAnJXMnIG5pY2h0IHNwZXJyZW4uIgogCi0jOiBjb25maWcuYzoyNzI4CisjOiBjb25maWcuYzoyNzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9wZW5pbmcgJXMiCiBtc2dzdHIgIsOWZmZuZSAlcyIKIAotIzogY29uZmlnLmM6Mjc2MyBidWlsdGluL2NvbmZpZy5jOjMyNworIzogY29uZmlnLmM6MjgwMCBidWlsdGluL2NvbmZpZy5jOjM0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHBhdHRlcm46ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlcyBNdXN0ZXI6ICVzIgogCi0jOiBjb25maWcuYzoyNzg4CisjOiBjb25maWcuYzoyODI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29uZmlnIGZpbGUgJXMiCiBtc2dzdHIgIlVuZ8O8bHRpZ2UgS29uZmlndXJhdGlvbnNkYXRlaSAlcyIKIAotIzogY29uZmlnLmM6MjgwMSBjb25maWcuYzozMDU0CisjOiBjb25maWcuYzoyODM4IGNvbmZpZy5jOjMwOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZnN0YXQgb24gJXMgZmFpbGVkIgogbXNnc3RyICJmc3RhdCBhdWYgJXMgZmVobGdlc2NobGFnZW4iCiAKLSM6IGNvbmZpZy5jOjI4MTIKKyM6IGNvbmZpZy5jOjI4NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG1tYXAgJyVzJyIKIG1zZ3N0ciAibW1hcCBmw7xyICclcycgZmVobGdlc2NobGFnZW4iCiAKLSM6IGNvbmZpZy5jOjI4MjEgY29uZmlnLmM6MzA1OQorIzogY29uZmlnLmM6Mjg1OCBjb25maWcuYzozMDk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNobW9kIG9uICVzIGZhaWxlZCIKIG1zZ3N0ciAiY2htb2QgYXVmICVzIGZlaGxnZXNjaGxhZ2VuIgogCi0jOiBjb25maWcuYzoyOTA2IGNvbmZpZy5jOjMxNTYKKyM6IGNvbmZpZy5jOjI5NDMgY29uZmlnLmM6MzE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29uZmlnIGZpbGUgJXMiCiBtc2dzdHIgIktvbm50ZSBLb25maWd1cmF0aW9uc2RhdGVpICVzIG5pY2h0IHNjaHJlaWJlbi4iCiAKLSM6IGNvbmZpZy5jOjI5NDAKKyM6IGNvbmZpZy5jOjI5NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHNldCAnJXMnIHRvICclcyciCiBtc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IHp1ICclcycgc2V0emVuLiIKIAotIzogY29uZmlnLmM6Mjk0MiBidWlsdGluL3JlbW90ZS5jOjc4MgorIzogY29uZmlnLmM6Mjk3OSBidWlsdGluL3JlbW90ZS5jOjY1NSBidWlsdGluL3JlbW90ZS5jOjg0OSBidWlsdGluL3JlbW90ZS5jOjg1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgdW5zZXQgJyVzJyIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgYXVmaGViZW4uIgogCi0jOiBjb25maWcuYzozMDMyCisjOiBjb25maWcuYzozMDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc2VjdGlvbiBuYW1lOiAlcyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgU2VrdGlvbnNuYW1lOiAlcyIKIAotIzogY29uZmlnLmM6MzE5OQorIzogY29uZmlnLmM6MzIzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIHZhbHVlIGZvciAnJXMnIgogbXNnc3RyICJGZWhsZW5kZXIgV2VydCBmw7xyICclcyciCkBAIC0xODYzLDUwICsyNzczLDQ1IEBACiAiUmVwb3NpdG9yeSBhdWYgZGVyIEdlZ2Vuc2VpdGUga2FubiBrZWluZSB1bnZvbGxzdMOkbmRpZ2UgSGlzdG9yaWUgKHNoYWxsb3cpICIKICJlbnRoYWx0ZW4iCiAKLSM6IGNvbm5lY3QuYzozMTAgZmV0Y2gtcGFjay5jOjE4MiBidWlsdGluL2FyY2hpdmUuYzo2MwotIywgYy1mb3JtYXQKLW1zZ2lkICJyZW1vdGUgZXJyb3I6ICVzIgotbXNnc3RyICJGZWhsZXIgYW0gYW5kZXJlbiBFbmRlOiAlcyIKLQotIzogY29ubmVjdC5jOjMxNgorIzogY29ubmVjdC5jOjMxMwogbXNnaWQgImludmFsaWQgcGFja2V0IgogbXNnc3RyICJVbmfDvGx0aWdlcyBQYWtldC4iCiAKLSM6IGNvbm5lY3QuYzozMzYKKyM6IGNvbm5lY3QuYzozMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IHVuZXhwZWN0ZWQgJyVzJyIKIG1zZ3N0ciAiUHJvdG9rb2xsZmVobGVyOiB1bmVyd2FydGV0ZXMgJyVzJyIKIAotIzogY29ubmVjdC5jOjQ0NAorIzogY29ubmVjdC5jOjQ0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGxzLXJlZnMgcmVzcG9uc2U6ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlIGxzLXJlZnMgQW50d29ydDogJXMiCiAKLSM6IGNvbm5lY3QuYzo0NDgKKyM6IGNvbm5lY3QuYzo0NDUKIG1zZ2lkICJleHBlY3RlZCBmbHVzaCBhZnRlciByZWYgbGlzdGluZyIKIG1zZ3N0ciAiRXJ3YXJ0ZXRlIEZsdXNoIG5hY2ggQXVmbGlzdHVuZyBkZXIgUmVmZXJlbnplbi4iCiAKLSM6IGNvbm5lY3QuYzo1NDcKKyM6IGNvbm5lY3QuYzo1NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgJyVzJyBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJQcm90b2tvbGwgJyVzJyB3aXJkIG5pY2h0IHVudGVyc3TDvHR6dC4iCiAKLSM6IGNvbm5lY3QuYzo1OTgKKyM6IGNvbm5lY3QuYzo1OTUKIG1zZ2lkICJ1bmFibGUgdG8gc2V0IFNPX0tFRVBBTElWRSBvbiBzb2NrZXQiCiBtc2dzdHIgIkthbm4gU09fS0VFUEFMSVZFIGJlaSBTb2NrZXQgbmljaHQgc2V0emVuLiIKIAotIzogY29ubmVjdC5jOjYzOCBjb25uZWN0LmM6NzAxCisjOiBjb25uZWN0LmM6NjM1IGNvbm5lY3QuYzo2OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTG9va2luZyB1cCAlcyAuLi4gIgogbXNnc3RyICJTdWNoZSBuYWNoICVzIC4uLiIKIAotIzogY29ubmVjdC5jOjY0MgorIzogY29ubmVjdC5jOjYzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbG9vayB1cCAlcyAocG9ydCAlcykgKCVzKSIKIG1zZ3N0ciAiRmVobGVyIGJlaSBTdWNoZSBuYWNoICVzIChQb3J0ICVzKSAoJXMpLiIKIAogIy4gVFJBTlNMQVRPUlM6IHRoaXMgaXMgdGhlIGVuZCBvZiAiTG9va2luZyB1cCAlcyAuLi4gIgotIzogY29ubmVjdC5jOjY0NiBjb25uZWN0LmM6NzE3CisjOiBjb25uZWN0LmM6NjQzIGNvbm5lY3QuYzo3MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImRvbmUuXG4iCkBAIC0xOTE1LDcgKzI4MjAsNyBAQAogIkZlcnRpZy5cbiIKICJWZXJiaW5kZSBuYWNoICVzIChQb3J0ICVzKSAuLi4gIgogCi0jOiBjb25uZWN0LmM6NjY4IGNvbm5lY3QuYzo3NDUKKyM6IGNvbm5lY3QuYzo2NjUgY29ubmVjdC5jOjc0MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5hYmxlIHRvIGNvbm5lY3QgdG8gJXM6XG4iCkBAIC0xOTI1LDc0ICsyODMwLDc0IEBACiAiJXMiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkNvbm5lY3RpbmcgdG8gJXMgKHBvcnQgJXMpIC4uLiAiCi0jOiBjb25uZWN0LmM6Njc0IGNvbm5lY3QuYzo3NTEKKyM6IGNvbm5lY3QuYzo2NzEgY29ubmVjdC5jOjc0OAogbXNnaWQgImRvbmUuIgogbXNnc3RyICJGZXJ0aWcuIgogCi0jOiBjb25uZWN0LmM6NzA1CisjOiBjb25uZWN0LmM6NzAyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzICglcykiCiBtc2dzdHIgIkZlaGxlciBiZWkgZGVyIFN1Y2hlIG5hY2ggJXMgKCVzKSIKIAotIzogY29ubmVjdC5jOjcxMQorIzogY29ubmVjdC5jOjcwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHBvcnQgJXMiCiBtc2dzdHIgIlVuYmVrYW5udGVyIFBvcnQgJXMiCiAKLSM6IGNvbm5lY3QuYzo4NDggY29ubmVjdC5jOjExNzQKKyM6IGNvbm5lY3QuYzo4NDUgY29ubmVjdC5jOjExNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBob3N0bmFtZSAnJXMnIGJsb2NrZWQiCiBtc2dzdHIgIk1lcmt3w7xyZGlnZW4gSG9zdG5hbWVuICclcycgYmxvY2tpZXJ0LiIKIAotIzogY29ubmVjdC5jOjg1MAorIzogY29ubmVjdC5jOjg0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJzdHJhbmdlIHBvcnQgJyVzJyBibG9ja2VkIgogbXNnc3RyICJNZXJrd8O8cmRpZ2VuIFBvcnQgJyVzJyBibG9ja2llcnQuIgogCi0jOiBjb25uZWN0LmM6ODYwCisjOiBjb25uZWN0LmM6ODU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGFydCBwcm94eSAlcyIKIG1zZ3N0ciAiS2FubiBQcm94eSAlcyBuaWNodCBzdGFydGVuLiIKIAotIzogY29ubmVjdC5jOjkyNworIzogY29ubmVjdC5jOjkyOAogbXNnaWQgIm5vIHBhdGggc3BlY2lmaWVkOyBzZWUgJ2dpdCBoZWxwIHB1bGwnIGZvciB2YWxpZCB1cmwgc3ludGF4IgogbXNnc3RyICIiCiAiS2VpbiBQZmFkIGFuZ2VnZWJlbjsgc2llaGUgJ2dpdCBoZWxwIHB1bGwnIGbDvHIgZWluZSBnw7xsdGlnZSBVUkwtU3ludGF4LiIKIAotIzogY29ubmVjdC5jOjExMjIKKyM6IGNvbm5lY3QuYzoxMTIzCiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNCIKIG1zZ3N0ciAiU1NILVZhcmlhbnRlICdzaW1wbGUnIHVudGVyc3TDvHR6dCBrZWluIC00LiIKIAotIzogY29ubmVjdC5jOjExMzQKKyM6IGNvbm5lY3QuYzoxMTM1CiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNiIKIG1zZ3N0ciAiU1NILVZhcmlhbnRlICdzaW1wbGUnIHVudGVyc3TDvHR6dCBrZWluIC02LiIKIAotIzogY29ubmVjdC5jOjExNTEKKyM6IGNvbm5lY3QuYzoxMTUyCiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCBzZXR0aW5nIHBvcnQiCiBtc2dzdHIgIlNTSC1WYXJpYW50ZSAnc2ltcGxlJyB1bnRlcnN0w7x0enQgbmljaHQgZGFzIFNldHplbiBlaW5lcyBQb3J0cy4iCiAKLSM6IGNvbm5lY3QuYzoxMjYyCisjOiBjb25uZWN0LmM6MTI2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdHJhbmdlIHBhdGhuYW1lICclcycgYmxvY2tlZCIKIG1zZ3N0ciAiTWVya3fDvHJkaWdlbiBQZmFkbmFtZW4gJyVzJyBibG9ja2llcnQuIgogCi0jOiBjb25uZWN0LmM6MTMwNworIzogY29ubmVjdC5jOjEzMTEKIG1zZ2lkICJ1bmFibGUgdG8gZm9yayIKIG1zZ3N0ciAiS2FubiBQcm96ZXNzIG5pY2h0IHN0YXJ0ZW4uIgogCi0jOiBjb25uZWN0ZWQuYzo2OCBidWlsdGluL2ZzY2suYzoyMDIgYnVpbHRpbi9wcnVuZS5jOjE0NworIzogY29ubmVjdGVkLmM6OTggYnVpbHRpbi9mc2NrLmM6MjA4IGJ1aWx0aW4vcHJ1bmUuYzo0MwogbXNnaWQgIkNoZWNraW5nIGNvbm5lY3Rpdml0eSIKIG1zZ3N0ciAiUHLDvGZlIEtvbm5la3Rpdml0w6R0IgogCi0jOiBjb25uZWN0ZWQuYzo4MAorIzogY29ubmVjdGVkLmM6MTEwCiBtc2dpZCAiQ291bGQgbm90IHJ1biAnZ2l0IHJldi1saXN0JyIKIG1zZ3N0ciAiS29ubnRlICdnaXQgcmV2LWxpc3QnIG5pY2h0IGF1c2bDvGhyZW4iCiAKLSM6IGNvbm5lY3RlZC5jOjEwMAorIzogY29ubmVjdGVkLmM6MTMwCiBtc2dpZCAiZmFpbGVkIHdyaXRlIHRvIHJldi1saXN0IgogbXNnc3RyICJGZWhsZXIgYmVpbSBTY2hyZWliZW4gbmFjaCByZXYtbGlzdCIKIAotIzogY29ubmVjdGVkLmM6MTA3CisjOiBjb25uZWN0ZWQuYzoxMzcKIG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcmV2LWxpc3QncyBzdGRpbiIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gU2NobGllw59lbiB2b24gcmV2LWxpc3QncyBTdGFuZGFyZC1FaW5nYWJlIgogCkBAIC0yMDMxLDI2ICsyOTM2LDI2IEBACiAiRGllIERhdGVpIHdpcmQgaWhyZSB1cnNwcsO8bmdsaWNoZW4gWmVpbGVuZW5kZW4gaW0gQXJiZWl0c3ZlcnplaWNobmlzICIKICJiZWhhbHRlbi4iCiAKLSM6IGNvbnZlcnQuYzoyODAKKyM6IGNvbnZlcnQuYzoyODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQk9NIGlzIHByb2hpYml0ZWQgaW4gJyVzJyBpZiBlbmNvZGVkIGFzICVzIgogbXNnc3RyICJCT00gaXN0IGluICclcycgdW56dWzDpHNzaWcsIHdlbm4gYWxzICVzIGNvZGllcnQuIgogCi0jOiBjb252ZXJ0LmM6Mjg3CisjOiBjb252ZXJ0LmM6MjkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKLSJUaGUgZmlsZSAnJXMnIGNvbnRhaW5zIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lcyBhcyB3b3JraW5nLSIKLSJ0cmVlLWVuY29kaW5nLiIKKyJUaGUgZmlsZSAnJXMnIGNvbnRhaW5zIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lLipzIGFzICIKKyJ3b3JraW5nLXRyZWUtZW5jb2RpbmcuIgogbXNnc3RyICIiCi0iRGllIERhdGVpICclcycgZW50aMOkbHQgZWluIEJ5dGUtT3JkZXItTWFyayAoQk9NKS4gQml0dGUgYmVudXR6ZW4gU2llIFVURi0lc1xuIgotImFscyBDb2RpZXJ1bmcgaW0gQXJiZWl0c3ZlcnplaWNobmlzLiIKKyJEaWUgRGF0ZWkgJyVzJyBlbnRow6RsdCBlaW4gQnl0ZS1PcmRlci1NYXJrIChCT00pLiBCaXR0ZSBiZW51dHplbiBTaWVcbiIKKyJVVEYtJS4qcyBhbHMgQ29kaWVydW5nIGltIEFyYmVpdHN2ZXJ6ZWljaG5pcy4iCiAKLSM6IGNvbnZlcnQuYzozMDUKKyM6IGNvbnZlcnQuYzozMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQk9NIGlzIHJlcXVpcmVkIGluICclcycgaWYgZW5jb2RlZCBhcyAlcyIKIG1zZ3N0ciAiQk9NIGlzdCBlcmZvcmRlcmxpY2ggaW4gJyVzJywgd2VubiBhbHMgJXMgY29kaWVydC4iCiAKLSM6IGNvbnZlcnQuYzozMDcKKyM6IGNvbnZlcnQuYzozMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmaWxlICclcycgaXMgbWlzc2luZyBhIGJ5dGUgb3JkZXIgbWFyayAoQk9NKS4gUGxlYXNlIHVzZSBVVEYtJXNCRSBvciBVVEYtIgpAQCAtMjA2MCw1MCArMjk2NSw1MCBAQAogIm9kZXIgVVRGLSVzTEUgKGFiaMOkbmdpZyB2b24gZGVyIEJ5dGUtUmVpaGVuZm9sZ2UpIGFscyBDb2RpZXJ1bmcgaW1cbiIKICJBcmJlaXRzdmVyemVpY2huaXMuIgogCi0jOiBjb252ZXJ0LmM6NDI1IGNvbnZlcnQuYzo0OTYKKyM6IGNvbnZlcnQuYzo0MTkgY29udmVydC5jOjQ5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZW5jb2RlICclcycgZnJvbSAlcyB0byAlcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gQ29kaWVyZW4gdm9uICclcycgdm9uICVzIG5hY2ggJXMuIgogCi0jOiBjb252ZXJ0LmM6NDY4CisjOiBjb252ZXJ0LmM6NDYyCiAjLCBjLWZvcm1hdAogbXNnaWQgImVuY29kaW5nICclcycgZnJvbSAlcyB0byAlcyBhbmQgYmFjayBpcyBub3QgdGhlIHNhbWUiCiBtc2dzdHIgIkRpZSBDb2RpZXJ1bmcgJyVzJyB2b24gJXMgbmFjaCAlcyB1bmQgenVyw7xjayBpc3QgbmljaHQgZGFzc2VsYmUuIgogCi0jOiBjb252ZXJ0LmM6Njc0CisjOiBjb252ZXJ0LmM6NjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBmb3JrIHRvIHJ1biBleHRlcm5hbCBmaWx0ZXIgJyVzJyIKIG1zZ3N0ciAiS2FubiBleHRlcm5lbiBGaWx0ZXIgJyVzJyBuaWNodCBzdGFydGVuLiIKIAotIzogY29udmVydC5jOjY5NAorIzogY29udmVydC5jOjY4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmVlZCB0aGUgaW5wdXQgdG8gZXh0ZXJuYWwgZmlsdGVyICclcyciCiBtc2dzdHIgIkthbm4gRWluZ2FiZW4gbmljaHQgYW4gZXh0ZXJuZW4gRmlsdGVyICclcycgw7xiZXJnZWJlbi4iCiAKLSM6IGNvbnZlcnQuYzo3MDEKKyM6IGNvbnZlcnQuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkICVkIgogbXNnc3RyICJFeHRlcm5lciBGaWx0ZXIgJyVzJyBmZWhsZ2VzY2hsYWdlbiAlZCIKIAotIzogY29udmVydC5jOjczNiBjb252ZXJ0LmM6NzM5CisjOiBjb252ZXJ0LmM6NzMwIGNvbnZlcnQuYzo3MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZCBmcm9tIGV4dGVybmFsIGZpbHRlciAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiTGVzZW4gdm9uIGV4dGVybmVtIEZpbHRlciAnJXMnIGZlaGxnZXNjaGxhZ2VuLiIKIAotIzogY29udmVydC5jOjc0MiBjb252ZXJ0LmM6Nzk2CisjOiBjb252ZXJ0LmM6NzM2IGNvbnZlcnQuYzo3OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkIgogbXNnc3RyICJFeHRlcm5lciBGaWx0ZXIgJyVzJyBmZWhsZ2VzY2hsYWdlbi4iCiAKLSM6IGNvbnZlcnQuYzo4NDQKKyM6IGNvbnZlcnQuYzo4MzkKIG1zZ2lkICJ1bmV4cGVjdGVkIGZpbHRlciB0eXBlIgogbXNnc3RyICJVbmVyd2FydGV0ZSBGaWx0ZXJhcnQuIgogCi0jOiBjb252ZXJ0LmM6ODU1CisjOiBjb252ZXJ0LmM6ODUwCiBtc2dpZCAicGF0aCBuYW1lIHRvbyBsb25nIGZvciBleHRlcm5hbCBmaWx0ZXIiCiBtc2dzdHIgIlBmYWRuYW1lIHp1IGxhbmcgZsO8ciBleHRlcm5lbiBGaWx0ZXIuIgogCi0jOiBjb252ZXJ0LmM6OTI5CisjOiBjb252ZXJ0LmM6OTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBpcyBub3QgYXZhaWxhYmxlIGFueW1vcmUgYWx0aG91Z2ggbm90IGFsbCBwYXRocyBoYXZlICIKQEAgLTIxMTEsNjcgKzMwMTYsNjcgQEAKIG1zZ3N0ciAiIgogIkV4dGVybmVyIEZpbHRlciAnJXMnIG5pY2h0IG1laHIgdmVyZsO8Z2Jhci4gTmljaHQgYWxsZSBQZmFkZSB3dXJkZW4gZ2VmaWx0ZXJ0LiIKIAotIzogY29udmVydC5jOjEyMjgKKyM6IGNvbnZlcnQuYzoxMjIzCiBtc2dpZCAidHJ1ZS9mYWxzZSBhcmUgbm8gdmFsaWQgd29ya2luZy10cmVlLWVuY29kaW5ncyIKIG1zZ3N0ciAidHJ1ZS9mYWxzZSBzaW5kIGtlaW5lIGfDvGx0aWdlbiBDb2RpZXJ1bmdlbiBpbSBBcmJlaXRzdmVyemVpY2huaXMuIgogCi0jOiBjb252ZXJ0LmM6MTM5OCBjb252ZXJ0LmM6MTQzMgorIzogY29udmVydC5jOjE0MTEgY29udmVydC5jOjE0NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGNsZWFuIGZpbHRlciAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiJXM6IGNsZWFuLUZpbHRlciAnJXMnIGZlaGxnZXNjaGxhZ2VuLiIKIAotIzogY29udmVydC5jOjE0NzYKKyM6IGNvbnZlcnQuYzoxNDg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBzbXVkZ2UgZmlsdGVyICVzIGZhaWxlZCIKIG1zZ3N0ciAiJXM6IHNtdWRnZS1GaWx0ZXIgJyVzJyBmZWhsZ2VzY2hsYWdlbi4iCiAKLSM6IGRhdGUuYzoxMTYKKyM6IGRhdGUuYzoxMzgKIG1zZ2lkICJpbiB0aGUgZnV0dXJlIgogbXNnc3RyICJpbiBkZXIgWnVrdW5mdCIKIAotIzogZGF0ZS5jOjEyMgorIzogZGF0ZS5jOjE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHNlY29uZCBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gc2Vjb25kcyBhZ28iCiBtc2dzdHJbMF0gInZvciAlPFBSSXVNQVg+IFNla3VuZGUiCiBtc2dzdHJbMV0gInZvciAlPFBSSXVNQVg+IFNla3VuZGVuIgogCi0jOiBkYXRlLmM6MTI5CisjOiBkYXRlLmM6MTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gbWludXRlIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtaW51dGVzIGFnbyIKIG1zZ3N0clswXSAidm9yICU8UFJJdU1BWD4gTWludXRlIgogbXNnc3RyWzFdICJ2b3IgJTxQUkl1TUFYPiBNaW51dGVuIgogCi0jOiBkYXRlLmM6MTM2CisjOiBkYXRlLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gaG91ciBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gaG91cnMgYWdvIgogbXNnc3RyWzBdICJ2b3IgJTxQUkl1TUFYPiBTdHVuZGUiCiBtc2dzdHJbMV0gInZvciAlPFBSSXVNQVg+IFN0dW5kZW4iCiAKLSM6IGRhdGUuYzoxNDMKKyM6IGRhdGUuYzoxNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiBkYXkgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IGRheXMgYWdvIgogbXNnc3RyWzBdICJ2b3IgJTxQUkl1TUFYPiBUYWciCiBtc2dzdHJbMV0gInZvciAlPFBSSXVNQVg+IFRhZ2VuIgogCi0jOiBkYXRlLmM6MTQ5CisjOiBkYXRlLmM6MTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gd2VlayBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gd2Vla3MgYWdvIgogbXNnc3RyWzBdICJ2b3IgJTxQUkl1TUFYPiBXb2NoZSIKIG1zZ3N0clsxXSAidm9yICU8UFJJdU1BWD4gV29jaGVuIgogCi0jOiBkYXRlLmM6MTU2CisjOiBkYXRlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gbW9udGggYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IG1vbnRocyBhZ28iCiBtc2dzdHJbMF0gInZvciAlPFBSSXVNQVg+IE1vbmF0IgogbXNnc3RyWzFdICJ2b3IgJTxQUkl1TUFYPiBNb25hdGVuIgogCi0jOiBkYXRlLmM6MTY3CisjOiBkYXRlLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4geWVhciIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiB5ZWFycyIKQEAgLTIxNzksNDIgKzMwODQsNDMgQEAKIG1zZ3N0clsxXSAidm9yICU8UFJJdU1BWD4gSmFocmVuIgogCiAjLiBUUkFOU0xBVE9SUzogIiVzIiBpcyAiPG4+IHllYXJzIgotIzogZGF0ZS5jOjE3MAorIzogZGF0ZS5jOjE5MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcywgJTxQUkl1TUFYPiBtb250aCBhZ28iCiBtc2dpZF9wbHVyYWwgIiVzLCAlPFBSSXVNQVg+IG1vbnRocyBhZ28iCiBtc2dzdHJbMF0gIiVzLCB1bmQgJTxQUkl1TUFYPiBNb25hdCIKIG1zZ3N0clsxXSAiJXMsIHVuZCAlPFBSSXVNQVg+IE1vbmF0ZW4iCiAKLSM6IGRhdGUuYzoxNzUgZGF0ZS5jOjE4MAorIzogZGF0ZS5jOjE5NyBkYXRlLmM6MjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4geWVhciBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4geWVhcnMgYWdvIgogbXNnc3RyWzBdICJ2b3IgJTxQUkl1TUFYPiBKYWhyIgogbXNnc3RyWzFdICJ2b3IgJTxQUkl1TUFYPiBKYWhyZW4iCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzoyNjgKKyM6IGRlbHRhLWlzbGFuZHMuYzoyNzIKIG1zZ2lkICJQcm9wYWdhdGluZyBpc2xhbmQgbWFya3MiCiBtc2dzdHIgIkVyemV1Z2UgRGVsdGEtSXNsYW5kIE1hcmtpZXJ1bmdlbiIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjI4NgorIzogZGVsdGEtaXNsYW5kcy5jOjI5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgdHJlZSBvYmplY3QgJXMiCiBtc2dzdHIgIlVuZ8O8bHRpZ2VzIFRyZWUtT2JqZWt0ICVzLiIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjMzMAorIzogZGVsdGEtaXNsYW5kcy5jOjMzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBpc2xhbmQgcmVnZXggZm9yICclcyc6ICVzIgotbXNnc3RyICJGZWhsZXIgYmVpbSBMYWRlbiBkZXMgcmVndWzDpHJlbiBBdXNkcnVja3MgZGVzIERlbHRhLUlzbGFuZCBmw7xyICclcyc6ICVzIgorbXNnc3RyICIiCisiRmVobGVyIGJlaW0gTGFkZW4gZGVzIHJlZ3Vsw6RyZW4gQXVzZHJ1Y2tzIGRlcyBEZWx0YS1Jc2xhbmQgZsO8ciAnJXMnOiAlcyIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjM4NgorIzogZGVsdGEtaXNsYW5kcy5jOjM5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpc2xhbmQgcmVnZXggZnJvbSBjb25maWcgaGFzIHRvbyBtYW55IGNhcHR1cmUgZ3JvdXBzIChtYXg9JWQpIgogbXNnc3RyICIiCiAiUmVndWzDpHJlciBBdXNkcnVjayBkZXMgRGVsdGEtSXNsYW5kIGF1cyBLb25maWd1cmF0aW9uIGhhdCB6dVxuIgogInZpZWxlIENhcHR1cmUtR3J1cHBlbiAobWF4aW1hbCAlZCkuIgogCi0jOiBkZWx0YS1pc2xhbmRzLmM6NDYyCisjOiBkZWx0YS1pc2xhbmRzLmM6NDY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIk1hcmtlZCAlZCBpc2xhbmRzLCBkb25lLlxuIgogbXNnc3RyICIlZCBEZWx0YS1Jc2xhbmRzIG1hcmtpZXJ0LCBmZXJ0aWcuXG4iCkBAIC0yMjI0LDI3ICszMTMwLDM0IEBACiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3JkZXJmaWxlICclcyciCiBtc2dzdHIgIkZlaGxlciBiZWltIExlc2VuIGRlciBSZWloZW5mb2xnZWRhdGVpICclcycuIgogCi0jOiBkaWZmY29yZS1yZW5hbWUuYzo1NDQKKyM6IGRpZmZjb3JlLXJlbmFtZS5jOjU0MwogbXNnaWQgIlBlcmZvcm1pbmcgaW5leGFjdCByZW5hbWUgZGV0ZWN0aW9uIgogbXNnc3RyICJGw7xocmUgRXJrZW5udW5nIGbDvHIgdW5nZW5hdWUgVW1iZW5lbm51bmcgYXVzIgogCi0jOiBkaWZmLmM6MTA4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIm9wdGlvbiAnJXMnIHJlcXVpcmVzIGEgdmFsdWUiCi1tc2dzdHIgIk9wdGlvbiAnJXMnIGVyZm9yZGVydCBlaW5lbiBXZXJ0LiIKKyM6IGRpZmYtbm8taW5kZXguYzoyMzgKK21zZ2lkICJnaXQgZGlmZiAtLW5vLWluZGV4IFs8b3B0aW9ucz5dIDxwYXRoPiA8cGF0aD4iCittc2dzdHIgImdpdCBkaWZmIC0tbm8taW5kZXggWzxPcHRpb25lbj5dIDxQZmFkPiA8UGZhZD4iCiAKLSM6IGRpZmYuYzoxNTgKKyM6IGRpZmYtbm8taW5kZXguYzoyNjMKK21zZ2lkICIiCisiTm90IGEgZ2l0IHJlcG9zaXRvcnkuIFVzZSAtLW5vLWluZGV4IHRvIGNvbXBhcmUgdHdvIHBhdGhzIG91dHNpZGUgYSB3b3JraW5nICIKKyJ0cmVlIgorbXNnc3RyICIiCisiS2VpbiBHaXQtUmVwb3NpdG9yeS4gTnV0emVuIFNpZSAtLW5vLWluZGV4LCB1bSB6d2VpIFBmYWRlIGF1w59lcmhhbGIgZGVzICIKKyJBcmJlaXRzdmVyemVpY2huaXNzZXMgenUgdmVyZ2xlaWNoZW4uIgorCisjOiBkaWZmLmM6MTU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgRmFpbGVkIHRvIHBhcnNlIGRpcnN0YXQgY3V0LW9mZiBwZXJjZW50YWdlICclcydcbiIKIG1zZ3N0ciAiIgogIiAgRmVobGVyIGJlaW0gUGFyc2VuIGRlcyBhYmdlc2Nobml0dGVuZW4gXCJkaXJzdGF0XCIgUHJvemVudHNhdHplcyAnJXMnXG4iCiAKLSM6IGRpZmYuYzoxNjMKKyM6IGRpZmYuYzoxNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBVbmtub3duIGRpcnN0YXQgcGFyYW1ldGVyICclcydcbiIKIG1zZ3N0ciAiICBVbmJla2FubnRlciBcImRpcnN0YXRcIiBQYXJhbWV0ZXIgJyVzJ1xuIgogCi0jOiBkaWZmLmM6MjkxCisjOiBkaWZmLmM6Mjk2CiBtc2dpZCAiIgogImNvbG9yIG1vdmVkIHNldHRpbmcgbXVzdCBiZSBvbmUgb2YgJ25vJywgJ2RlZmF1bHQnLCAnYmxvY2tzJywgJ3plYnJhJywgIgogIidkaW1tZWQtemVicmEnLCAncGxhaW4nIgpAQCAtMjI1MiwyNSArMzE2NSwyOSBAQAogIlwiY29sb3IgbW92ZWRcIi1FaW5zdGVsbHVuZyBtdXNzIGVpbmVzIHZvbiBkaWVzZW4gc2VpbjogJ25vJywgJ2RlZmF1bHQnLCAiCiAiJ2Jsb2NrcycsICd6ZWJyYScsICdkaW1tZWRfemVicmEnLCAncGxhaW4nIgogCi0jOiBkaWZmLmM6MzE2CisjOiBkaWZmLmM6MzI0CiAjLCBjLWZvcm1hdAotbXNnaWQgImlnbm9yaW5nIHVua25vd24gY29sb3ItbW92ZWQtd3MgbW9kZSAnJXMnIgotbXNnc3RyICJJZ25vcmllcmUgdW5iZWthbm50ZW4gJ2NvbG9yLW1vdmVkLXdzJy1Nb2R1cyAnJXMnLiIKLQotIzogZGlmZi5jOjMyMwogbXNnaWQgIiIKLSJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHdoaXRlICIKLSJzcGFjZSBtb2RlcyIKKyJ1bmtub3duIGNvbG9yLW1vdmVkLXdzIG1vZGUgJyVzJywgcG9zc2libGUgdmFsdWVzIGFyZSAnaWdub3JlLXNwYWNlLWNoYW5nZScsICIKKyInaWdub3JlLXNwYWNlLWF0LWVvbCcsICdpZ25vcmUtYWxsLXNwYWNlJywgJ2FsbG93LWluZGVudGF0aW9uLWNoYW5nZSciCittc2dzdHIgIiIKKyJVbmJla2FubnRlciBjb2xvci1tb3ZlZC13cyBNb2R1cyAnJXMnLCBtw7ZnbGljaGUgV2VydGUgc2luZCAnaWdub3JlLXNwYWNlLSIKKyJjaGFuZ2UnLCAnaWdub3JlLXNwYWNlLWF0LWVvbCcsICdpZ25vcmUtYWxsLXNwYWNlJywgJ2FsbG93LWlkZW50YXRpb24tY2hhbmdlJyIKKworIzogZGlmZi5jOjMzMgorbXNnaWQgIiIKKyJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyICIKKyJ3aGl0ZXNwYWNlIG1vZGVzIgogbXNnc3RyICIiCiAiY29sb3ItbW92ZWQtd3M6IGFsbG93LWluZGVudGF0aW9uLWNoYW5nZSBrYW5uIG5pY2h0IG1pdCBhbmRlcmVuXG4iCiAiV2hpdGVzcGFjZS1Nb2RpIGtvbWJpbmllcnQgd2VyZGVuLiIKIAotIzogZGlmZi5jOjM5NAorIzogZGlmZi5jOjQwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmtub3duIHZhbHVlIGZvciAnZGlmZi5zdWJtb2R1bGUnIGNvbmZpZyB2YXJpYWJsZTogJyVzJyIKIG1zZ3N0ciAiVW5iZWthbm50ZXIgV2VydCBpbiBLb25maWd1cmF0aW9uc3ZhcmlhYmxlICdkaWZmLmRpcnN0YXQnOiAnJXMnIgogCi0jOiBkaWZmLmM6NDU0CisjOiBkaWZmLmM6NDY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJGb3VuZCBlcnJvcnMgaW4gJ2RpZmYuZGlyc3RhdCcgY29uZmlnIHZhcmlhYmxlOlxuIgpAQCAtMjI3OSwyNSArMzE5NiwzNiBAQAogIkZlaGxlciBpbiAnZGlmZi5kaXJzdGF0JyBLb25maWd1cmF0aW9uc3ZhcmlhYmxlIGdlZnVuZGVuOlxuIgogIiVzIgogCi0jOiBkaWZmLmM6NDE0MAorIzogZGlmZi5jOjQyMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZGlmZiBkaWVkLCBzdG9wcGluZyBhdCAlcyIKIG1zZ3N0ciAiZXh0ZXJuZXMgRGlmZi1Qcm9ncmFtbSB1bmVyd2FydGV0IGJlZW5kZXQsIGFuZ2VoYWx0ZW4gYmVpICVzIgogCi0jOiBkaWZmLmM6NDQ4MgorIzogZGlmZi5jOjQ1NDcKIG1zZ2lkICItLW5hbWUtb25seSwgLS1uYW1lLXN0YXR1cywgLS1jaGVjayBhbmQgLXMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiIgogIi0tbmFtZS1vbmx5LCAtLW5hbWUtc3RhdHVzLCAtLWNoZWNrIHVuZCAtcyBzY2hsaWXDn2VuIHNpY2ggZ2VnZW5zZWl0aWcgYXVzIgogCi0jOiBkaWZmLmM6NDQ4NQorIzogZGlmZi5jOjQ1NTAKIG1zZ2lkICItRywgLVMgYW5kIC0tZmluZC1vYmplY3QgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLUcsIC1TIHVuZCAtLWZpbmQtb2JqZWN0IHNjaGxpZcOfZW4gc2ljaCBnZWdlbnNlaXRpZyBhdXMiCiAKLSM6IGRpZmYuYzo0NTYzCisjOiBkaWZmLmM6NDYyOAogbXNnaWQgIi0tZm9sbG93IHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhdGhzcGVjIgogbXNnc3RyICItLWZvbGxvdyBlcmZvcmRlcnQgZ2VuYXUgZWluZSBQZmFkc3BlemlmaWthdGlvbiIKIAotIzogZGlmZi5jOjQ3MjkKKyM6IGRpZmYuYzo0Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgLS1zdGF0IHZhbHVlOiAlcyIKK21zZ3N0ciAiVW5nw7xsdGlnZXIgLS1zdGF0IFdlcnQ6ICVzIgorCisjOiBkaWZmLmM6NDY4MSBkaWZmLmM6NDY4NiBkaWZmLmM6NDY5MSBkaWZmLmM6NDY5NiBkaWZmLmM6NTIwOQorIzogcGFyc2Utb3B0aW9ucy5jOjE5NyBwYXJzZS1vcHRpb25zLmM6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCittc2dzdHIgIiVzIGVyd2FydGV0IGVpbmVuIG51bWVyaXNjaGVuIFdlcnQuIgorCisjOiBkaWZmLmM6NDcxMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiRmFpbGVkIHRvIHBhcnNlIC0tZGlyc3RhdC8tWCBvcHRpb24gcGFyYW1ldGVyOlxuIgpAQCAtMjMwNiwyMiArMzIzNCw1MjMgQEAKICJGZWhsZXIgYmVpbSBQYXJzZW4gZGVzIC0tZGlyc3RhdC8tWCBPcHRpb25zcGFyYW1ldGVyczpcbiIKICIlcyIKIAotIzogZGlmZi5jOjQ3NDMKKyM6IGRpZmYuYzo0Nzk4CiAjLCBjLWZvcm1hdAotbXNnaWQgIkZhaWxlZCB0byBwYXJzZSAtLXN1Ym1vZHVsZSBvcHRpb24gcGFyYW1ldGVyOiAnJXMnIgorbXNnaWQgInVua25vd24gY2hhbmdlIGNsYXNzICclYycgaW4gLS1kaWZmLWZpbHRlcj0lcyIKK21zZ3N0ciAiVW5iZWthbm50ZSDDhG5kZXJ1bmdza2xhc3NlICclYycgaW4gLS1kaWZmLWZpbHRlcj0lcyIKKworIzogZGlmZi5jOjQ4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB2YWx1ZSBhZnRlciB3cy1lcnJvci1oaWdobGlnaHQ9JS4qcyIKK21zZ3N0ciAiVW5iZWthbm50ZXIgV2VydCBuYWNoIHdzLWVycm9yLWhpZ2hsaWdodD0lLipzIgorCisjOiBkaWZmLmM6NDgzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSAnJXMnIgorbXNnc3RyICJrb25udGUgJyVzJyBuaWNodCBhdWZsw7ZzZW4iCisKKyM6IGRpZmYuYzo0ODg2IGRpZmYuYzo0ODkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgPG4+LzxtPiBmb3JtIgorbXNnc3RyICIlcyBlcndhcnRldCBkaWUgRm9ybSA8bj4vPG0+IgorCisjOiBkaWZmLmM6NDkwNAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIGEgY2hhcmFjdGVyLCBnb3QgJyVzJyIKK21zZ3N0ciAiJXMgZXJ3YXJ0ZXQgZWluIFplaWNoZW4sICclcycgYmVrb21tZW4iCisKKyM6IGRpZmYuYzo0OTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLWNvbG9yLW1vdmVkIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiVW5nw7xsdGlnZXMgLS1jb2xvci1tb3ZlZCBBcmd1bWVudDogJXMiCisKKyM6IGRpZmYuYzo0OTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgbW9kZSAnJXMnIGluIC0tY29sb3ItbW92ZWQtd3MiCittc2dzdHIgIlVuZ8O8bHRpZ2VyIE1vZHVzICclcycgaW4gLS1jb2xvci1tb3ZlZC13cyIKKworIzogZGlmZi5jOjQ5ODQKK21zZ2lkICIiCisib3B0aW9uIGRpZmYtYWxnb3JpdGhtIGFjY2VwdHMgXCJteWVyc1wiLCBcIm1pbmltYWxcIiwgXCJwYXRpZW5jZVwiIGFuZCAiCisiXCJoaXN0b2dyYW1cIiIKK21zZ3N0ciAiIgorIk9wdGlvbiBkaWZmLWFsZ29yaXRobSBha3plcHRpZXJ0OiBcIm15ZXJzXCIsIFwibWluaW1hbFwiLCBcInBhdGllbmNlXCIgYW5kICIKKyJcImhpc3RvZ3JhbVwiIgorCisjOiBkaWZmLmM6NTAyMCBkaWZmLmM6NTA0MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGFyZ3VtZW50IHRvICVzIgorbXNnc3RyICJVbmfDvGx0aWdlcyBBcmd1bWVudCBmw7xyICVzIgorCisjOiBkaWZmLmM6NTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgLS1zdWJtb2R1bGUgb3B0aW9uIHBhcmFtZXRlcjogJyVzJyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gUGFyc2VuIGRlcyAtLXN1Ym1vZHVsZSBPcHRpb25zcGFyYW1ldGVyczogJyVzJyIKIAotIzogZGlmZi5jOjU4MjMKKyM6IGRpZmYuYzo1MjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLXdvcmQtZGlmZiBhcmd1bWVudDogJXMiCittc2dzdHIgIlVuZ8O8bHRpZ2VzIC0td29yZC1kaWZmIEFyZ3VtZW50OiAlcyIKKworIzogZGlmZi5jOjUyNTcKK21zZ2lkICJEaWZmIG91dHB1dCBmb3JtYXQgb3B0aW9ucyIKK21zZ3N0ciAiRGlmZi1PcHRpb25lbiB6dSBBdXNnYWJlZm9ybWF0ZW4iCisKKyM6IGRpZmYuYzo1MjU5IGRpZmYuYzo1MjY1Cittc2dpZCAiZ2VuZXJhdGUgcGF0Y2giCittc2dzdHIgIkVyemV1Z2UgUGF0Y2giCisKKyM6IGRpZmYuYzo1MjYyIGJ1aWx0aW4vbG9nLmM6MTczCittc2dpZCAic3VwcHJlc3MgZGlmZiBvdXRwdXQiCittc2dzdHIgIkF1c2dhYmUgZGVyIFVudGVyc2NoaWVkZSB1bnRlcmRyw7xja2VuIgorCisjOiBkaWZmLmM6NTI2NyBkaWZmLmM6NTM4MSBkaWZmLmM6NTM4OAorbXNnaWQgIjxuPiIKK21zZ3N0ciAiPG4+IgorCisjOiBkaWZmLmM6NTI2OCBkaWZmLmM6NTI3MQorbXNnaWQgImdlbmVyYXRlIGRpZmZzIHdpdGggPG4+IGxpbmVzIGNvbnRleHQiCittc2dzdHIgIkVyc3RlbGxlIFVudGVyc2NoaWVkZSBtaXQgPG4+IFplaWxlbiBkZXMgS29udGV4dGVzIgorCisjOiBkaWZmLmM6NTI3MworbXNnaWQgImdlbmVyYXRlIHRoZSBkaWZmIGluIHJhdyBmb3JtYXQiCittc2dzdHIgIkVyc3RlbGxlIFVudGVyc2NoaWVkZSBpbSBSb2hmb3JtYXQiCisKKyM6IGRpZmYuYzo1Mjc2Cittc2dpZCAic3lub255bSBmb3IgJy1wIC0tcmF3JyIKK21zZ3N0ciAiU3lub255bSBmw7xyICctcCAtLXJhdyciCisKKyM6IGRpZmYuYzo1MjgwCittc2dpZCAic3lub255bSBmb3IgJy1wIC0tc3RhdCciCittc2dzdHIgIlN5bm9ueW0gZsO8ciAnLXAgLS1zdGF0JyIKKworIzogZGlmZi5jOjUyODQKK21zZ2lkICJtYWNoaW5lIGZyaWVuZGx5IC0tc3RhdCIKK21zZ3N0ciAibWFzY2hpbmVubGVzYmFyZSBBdXNnYWJlIHZvbiAtLXN0YXQiCisKKyM6IGRpZmYuYzo1Mjg3Cittc2dpZCAib3V0cHV0IG9ubHkgdGhlIGxhc3QgbGluZSBvZiAtLXN0YXQiCittc2dzdHIgIm51ciBkaWUgbGV0enRlIFplaWxlIHZvbiAtLXN0YXQgYXVzZ2ViZW4iCisKKyM6IGRpZmYuYzo1Mjg5IGRpZmYuYzo1Mjk3Cittc2dpZCAiPHBhcmFtMSxwYXJhbTI+Li4uIgorbXNnc3RyICI8UGFyYW1ldGVyMSxQYXJhbWV0ZXIyPi4uLiIKKworIzogZGlmZi5jOjUyOTAKK21zZ2lkICIiCisib3V0cHV0IHRoZSBkaXN0cmlidXRpb24gb2YgcmVsYXRpdmUgYW1vdW50IG9mIGNoYW5nZXMgZm9yIGVhY2ggc3ViLWRpcmVjdG9yeSIKK21zZ3N0ciAiIgorIkdlYmUgZGllIFZlcnRlaWx1bmcgZGVzIHJlbGF0aXZlbiBVbWZhbmdzIGRlciDDhG5kZXJ1bmdlbiBmw7xyIGplZGVzICIKKyJVbnRlcnZlcnplaWNobmlzIGF1cyIKKworIzogZGlmZi5jOjUyOTQKK21zZ2lkICJzeW5vbnltIGZvciAtLWRpcnN0YXQ9Y3VtdWxhdGl2ZSIKK21zZ3N0ciAiU3lub255bSBmw7xyIC0tZGlyc3RhdD1jdW11bGF0aXZlIgorCisjOiBkaWZmLmM6NTI5OAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1maWxlcyxwYXJhbTEscGFyYW0yLi4uIgorbXNnc3RyICJTeW5vbnltIGbDvHIgLS1kaXJzdGF0PWZpbGVzLFBhcmFtZXRlcjEsUGFyYW1ldGVyMi4uLiIKKworIzogZGlmZi5jOjUzMDIKK21zZ2lkICJ3YXJuIGlmIGNoYW5nZXMgaW50cm9kdWNlIGNvbmZsaWN0IG1hcmtlcnMgb3Igd2hpdGVzcGFjZSBlcnJvcnMiCittc2dzdHIgIiIKKyJXYXJuZW4sIHdlbm4gw4RuZGVydW5nZW4gS29uZmxpa3RtYXJrZXIgb2RlciBXaGl0ZXNwYWNlLUZlaGxlciBlaW5icmluZ2VuIgorCisjOiBkaWZmLmM6NTMwNQorbXNnaWQgImNvbmRlbnNlZCBzdW1tYXJ5IHN1Y2ggYXMgY3JlYXRpb25zLCByZW5hbWVzIGFuZCBtb2RlIGNoYW5nZXMiCittc2dzdHIgIiIKKyJHZWvDvHJ6dGUgWnVzYW1tZW5mYXNzdW5nLCB3aWUgei5CLiBFcnN0ZWxsdW5nZW4sIFVtYmVuZW5udW5nZW4gdW5kICIKKyLDhG5kZXJ1bmdlbiBkZXIgRGF0ZWktUmVjaHRlIgorCisjOiBkaWZmLmM6NTMwOAorbXNnaWQgInNob3cgb25seSBuYW1lcyBvZiBjaGFuZ2VkIGZpbGVzIgorbXNnc3RyICJudXIgRGF0ZWluYW1lbiBkZXIgZ2XDpG5kZXJ0ZW4gRGF0ZWllbiBhbnplaWdlbiIKKworIzogZGlmZi5jOjUzMTEKK21zZ2lkICJzaG93IG9ubHkgbmFtZXMgYW5kIHN0YXR1cyBvZiBjaGFuZ2VkIGZpbGVzIgorbXNnc3RyICJudXIgRGF0ZWluYW1lbiB1bmQgU3RhdHVzIGRlciBnZcOkbmRlcnRlbiBEYXRlaWVuIGFuemVpZ2VuIgorCisjOiBkaWZmLmM6NTMxMworbXNnaWQgIjx3aWR0aD5bLDxuYW1lLXdpZHRoPlssPGNvdW50Pl1dIgorbXNnc3RyICI8QnJlaXRlPlssPE5hbWVucy1CcmVpdGU+Wyw8QW56YWhsPl1dIgorCisjOiBkaWZmLmM6NTMxNAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IgorbXNnc3RyICJHZW5lcmllcmUgWnVzYW1tZW5mYXNzdW5nIGRlciBVbnRlcnNjaGllZGUiCisKKyM6IGRpZmYuYzo1MzE2IGRpZmYuYzo1MzE5IGRpZmYuYzo1MzIyCittc2dpZCAiPHdpZHRoPiIKK21zZ3N0ciAiPEJyZWl0ZT4iCisKKyM6IGRpZmYuYzo1MzE3Cittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBhIGdpdmVuIHdpZHRoIgorbXNnc3RyICJFcnpldWdlIFp1c2FtbWVuZmFzc3VuZyBkZXIgVW50ZXJzY2hpZWRlIG1pdCBnZWdlYmVuZXIgQnJlaXRlIgorCisjOiBkaWZmLmM6NTMyMAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBuYW1lIHdpZHRoIgorbXNnc3RyICJFcnpldWdlIFp1c2FtbWVuZmFzc3VuZyBkZXIgVW50ZXJzY2hpZWRlIG1pdCBnZWdlYmVuZXIgTmFtZW5zLUJyZWl0ZSIKKworIzogZGlmZi5jOjUzMjMKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGEgZ2l2ZW4gZ3JhcGggd2lkdGgiCittc2dzdHIgIkVyemV1Z2UgWnVzYW1tZW5mYXNzdW5nIGRlciBVbnRlcnNjaGllZGUgbWl0IGdlZ2ViZW5lciBHcmFwaC1CcmVpdGUiCisKKyM6IGRpZmYuYzo1MzI1Cittc2dpZCAiPGNvdW50PiIKK21zZ3N0ciAiPEFuemFobD4iCisKKyM6IGRpZmYuYzo1MzI2Cittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBsaW1pdGVkIGxpbmVzIgorbXNnc3RyICJFcnpldWdlIFp1c2FtbWVuZmFzc3VuZyBkZXIgVW50ZXJzY2hpZWRlIG1pdCBiZWdyZW56dGVuIFplaWxlbiIKKworIzogZGlmZi5jOjUzMjkKK21zZ2lkICJnZW5lcmF0ZSBjb21wYWN0IHN1bW1hcnkgaW4gZGlmZnN0YXQiCittc2dzdHIgIkVyemV1Z2Uga29tcGFrdGUgWnVzYW1tZW5zdGVsbHVuZyBpbiBadXNhbW1lbmZhc3N1bmcgZGVyIFVudGVyc2NoaWVkZSIKKworIzogZGlmZi5jOjUzMzIKK21zZ2lkICJvdXRwdXQgYSBiaW5hcnkgZGlmZiB0aGF0IGNhbiBiZSBhcHBsaWVkIgorbXNnc3RyICJHZWJlIGVpbmUgYmluw6RyZSBEaWZmZXJlbnogYXVzLCBkYXNzIGFuZ2V3ZW5kZXQgd2VyZGVuIGthbm4iCisKKyM6IGRpZmYuYzo1MzM1Cittc2dpZCAic2hvdyBmdWxsIHByZS0gYW5kIHBvc3QtaW1hZ2Ugb2JqZWN0IG5hbWVzIG9uIHRoZSBcImluZGV4XCIgbGluZXMiCittc2dzdHIgIlplaWdlIHZvbGxzdMOkbmRpZ2UgT2JqZWt0LU5hbWVuIGluIGRlbiBcImluZGV4XCItWmVpbGVuIgorCisjOiBkaWZmLmM6NTMzNworbXNnaWQgInNob3cgY29sb3JlZCBkaWZmIgorbXNnc3RyICJaZWlnZSBmYXJiaWdlIFVudGVyc2NoaWVkZSIKKworIzogZGlmZi5jOjUzMzgKK21zZ2lkICI8a2luZD4iCittc2dzdHIgIjxBcnQ+IgorCisjOiBkaWZmLmM6NTMzOQorbXNnaWQgIiIKKyJoaWdobGlnaHQgd2hpdGVzcGFjZSBlcnJvcnMgaW4gdGhlICdjb250ZXh0JywgJ29sZCcgb3IgJ25ldycgbGluZXMgaW4gdGhlICIKKyJkaWZmIgorbXNnc3RyICIiCisiSGViZSBXaGl0ZXNwYWNlLUZlaGxlciBpbiBkZW4gWmVpbGVuICdjb250ZXh0JywgJ29sZCcgb2RlciAnbmV3JyBiZWkgZGVuICIKKyJVbnRlcnNjaGllZGVuIGhlcnZvciIKKworIzogZGlmZi5jOjUzNDIKK21zZ2lkICIiCisiZG8gbm90IG11bmdlIHBhdGhuYW1lcyBhbmQgdXNlIE5VTHMgYXMgb3V0cHV0IGZpZWxkIHRlcm1pbmF0b3JzIGluIC0tcmF3IG9yICIKKyItLW51bXN0YXQiCittc2dzdHIgIiIKKyJWZXJzY2hsZWllcmUgbmljaHQgZGllIFBmYWRuYW1lbiB1bmQgbnV0emUgTlVMLVplaWNoZW4gYWxzIFNjaGx1c3N6ZWljaGVuIGluICIKKyJBdXNnYWJlZmVsZGVybiBiZWkgLS1yYXcgb2RlciAtLW51bXN0YXQiCisKKyM6IGRpZmYuYzo1MzQ1IGRpZmYuYzo1MzQ4IGRpZmYuYzo1MzUxIGRpZmYuYzo1NDU3Cittc2dpZCAiPHByZWZpeD4iCittc2dzdHIgIjxQcsOkZml4PiIKKworIzogZGlmZi5jOjUzNDYKK21zZ2lkICJzaG93IHRoZSBnaXZlbiBzb3VyY2UgcHJlZml4IGluc3RlYWQgb2YgXCJhL1wiIgorbXNnc3RyICJaZWlnZSBkZW4gZ2VnZWJlbmVuIFF1ZWxsLVByw6RmaXggc3RhdHQgXCJhL1wiIgorCisjOiBkaWZmLmM6NTM0OQorbXNnaWQgInNob3cgdGhlIGdpdmVuIGRlc3RpbmF0aW9uIHByZWZpeCBpbnN0ZWFkIG9mIFwiYi9cIiIKK21zZ3N0ciAiWmVpZ2UgZGVuIGdlZ2ViZW5lbiBaaWVsLVByw6RmaXggc3RhdHQgXCJiL1wiIgorCisjOiBkaWZmLmM6NTM1MgorbXNnaWQgInByZXBlbmQgYW4gYWRkaXRpb25hbCBwcmVmaXggdG8gZXZlcnkgbGluZSBvZiBvdXRwdXQiCittc2dzdHIgIlN0ZWxsZSBlaW5lbiB6dXPDpHR6bGljaGVuIFByw6RmaXggYmVpIGplZGVyIEF1c2dhYmV6ZWlsZSB2b3JhbiIKKworIzogZGlmZi5jOjUzNTUKK21zZ2lkICJkbyBub3Qgc2hvdyBhbnkgc291cmNlIG9yIGRlc3RpbmF0aW9uIHByZWZpeCIKK21zZ3N0ciAiWmVpZ2Uga2VpbmUgUXVlbGwtIG9kZXIgWmllbC1QcsOkZml4ZSBhbiIKKworIzogZGlmZi5jOjUzNTgKK21zZ2lkICJzaG93IGNvbnRleHQgYmV0d2VlbiBkaWZmIGh1bmtzIHVwIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGxpbmVzIgorbXNnc3RyICIiCisiWmVpZ2UgS29udGV4dCB6d2lzY2hlbiBVbnRlcnNjaGllZC1CbMO2Y2tlbiBiaXMgenVyIGFuZ2VnZWJlbmVuIEFuemFobCB2b24gIgorIlplaWxlbi4iCisKKyM6IGRpZmYuYzo1MzYyIGRpZmYuYzo1MzY3IGRpZmYuYzo1MzcyCittc2dpZCAiPGNoYXI+IgorbXNnc3RyICI8WmVpY2hlbj4iCisKKyM6IGRpZmYuYzo1MzYzCittc2dpZCAic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGEgbmV3IGxpbmUgaW5zdGVhZCBvZiAnKyciCittc2dzdHIgIkRhcyBaZWljaGVuIGZlc3RsZWdlbiwgZGFzIGVpbmUgbmV1ZSBaZWlsZSBrZW5uemVpY2huZXQgKHN0YXR0ICcrJykiCisKKyM6IGRpZmYuYzo1MzY4Cittc2dpZCAic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGFuIG9sZCBsaW5lIGluc3RlYWQgb2YgJy0nIgorbXNnc3RyICJEYXMgWmVpY2hlbiBmZXN0bGVnZW4sIGRhcyBlaW5lIGFsdGUgWmVpbGUga2VubnplaWNobmV0IChzdGF0dCAnLScpIgorCisjOiBkaWZmLmM6NTM3MworbXNnaWQgInNwZWNpZnkgdGhlIGNoYXJhY3RlciB0byBpbmRpY2F0ZSBhIGNvbnRleHQgaW5zdGVhZCBvZiAnICciCittc2dzdHIgIkRhcyBaZWljaGVuIGZlc3RsZWdlbiwgZGFzIGRlbiBLb250ZXh0IGtlbm56ZWljaG5ldCAoc3RhdHQgJyAnKSIKKworIzogZGlmZi5jOjUzNzYKK21zZ2lkICJEaWZmIHJlbmFtZSBvcHRpb25zIgorbXNnc3RyICJEaWZmLU9wdGlvbmVuIHp1ciBVbWJlbmVubnVuZyIKKworIzogZGlmZi5jOjUzNzcKK21zZ2lkICI8bj5bLzxtPl0iCittc2dzdHIgIjxuPlsvPG0+XSIKKworIzogZGlmZi5jOjUzNzgKK21zZ2lkICJicmVhayBjb21wbGV0ZSByZXdyaXRlIGNoYW5nZXMgaW50byBwYWlycyBvZiBkZWxldGUgYW5kIGNyZWF0ZSIKK21zZ3N0ciAiIgorIlRlaWxlIGtvbXBsZXR0ZSBSZXdyaXRlLcOEbmRlcnVuZ2VuIGluIMOEbmRlcnVuZ2VuIG1pdCBcImzDtnNjaGVuXCIgdW5kICIKKyJcImVyc3RlbGxlblwiIgorCisjOiBkaWZmLmM6NTM4MgorbXNnaWQgImRldGVjdCByZW5hbWVzIgorbXNnc3RyICJVbWJlbmVubnVuZ2VuIGVya2VubmVuIgorCisjOiBkaWZmLmM6NTM4NgorbXNnaWQgIm9taXQgdGhlIHByZWltYWdlIGZvciBkZWxldGVzIgorbXNnc3RyICJQcmVpbWFnZSBmw7xyIEzDtnNjaHVuZ2VuIHdlZ2xhc3Nlbi4iCisKKyM6IGRpZmYuYzo1Mzg5Cittc2dpZCAiZGV0ZWN0IGNvcGllcyIKK21zZ3N0ciAiS29waWVuIGVya2VubmVuIgorCisjOiBkaWZmLmM6NTM5MworbXNnaWQgInVzZSB1bm1vZGlmaWVkIGZpbGVzIGFzIHNvdXJjZSB0byBmaW5kIGNvcGllcyIKK21zZ3N0ciAiTnV0emUgdW5nZcOkbmRlcnRlIERhdGVpZW4gYWxzIFF1ZWxsZSB6dW0gRmluZGVuIHZvbiBLb3BpZW4iCisKKyM6IGRpZmYuYzo1Mzk1Cittc2dpZCAiZGlzYWJsZSByZW5hbWUgZGV0ZWN0aW9uIgorbXNnc3RyICJFcmtlbm51bmcgdm9uIFVtYmVuZW5udW5nZW4gZGVha3RpdmllcmVuIgorCisjOiBkaWZmLmM6NTM5OAorbXNnaWQgInVzZSBlbXB0eSBibG9icyBhcyByZW5hbWUgc291cmNlIgorbXNnc3RyICJOdXR6ZSBsZWVyZSBCbG9icyBhbHMgUXVlbGxlIHZvbiBVbWJlbm51bmdlbiIKKworIzogZGlmZi5jOjU0MDAKK21zZ2lkICJjb250aW51ZSBsaXN0aW5nIHRoZSBoaXN0b3J5IG9mIGEgZmlsZSBiZXlvbmQgcmVuYW1lcyIKK21zZ3N0ciAiRm9ydGbDvGhyZW4gZGVyIEF1Zmxpc3R1bmcgZGVyIEhpc3RvcmllIGVpbmVyIERhdGVpIG5hY2ggVW1iZW5udW5nIgorCisjOiBkaWZmLmM6NTQwMworbXNnaWQgIiIKKyJwcmV2ZW50IHJlbmFtZS9jb3B5IGRldGVjdGlvbiBpZiB0aGUgbnVtYmVyIG9mIHJlbmFtZS9jb3B5IHRhcmdldHMgZXhjZWVkcyAiCisiZ2l2ZW4gbGltaXQiCittc2dzdHIgIiIKKyJWZXJoaW5kZXJlIGRpZSBFcmtlbm51bmcgdm9uIFVtYmVubnVuZ2VuIHVuZCBLb3BpZW4sIHdlbm4gZGllIEFuemFobCBkZXIgIgorIlppZWxlIGbDvHIgVW1iZW5udW5nZW4gdW5kIEtvcGllbiBkYXMgZ2VnZWJlbmUgTGltaXQgw7xiZXJzY2hyZWl0ZXQiCisKKyM6IGRpZmYuYzo1NDA1Cittc2dpZCAiRGlmZiBhbGdvcml0aG0gb3B0aW9ucyIKK21zZ3N0ciAiRGlmZiBBbGdvcml0aG11cy1PcHRpb25lbiIKKworIzogZGlmZi5jOjU0MDcKK21zZ2lkICJwcm9kdWNlIHRoZSBzbWFsbGVzdCBwb3NzaWJsZSBkaWZmIgorbXNnc3RyICJFcnpldWdlIGRpZSBrbGVpbnN0bcO2Z2xpY2hlbiDDhG5kZXJ1bmdlbiIKKworIzogZGlmZi5jOjU0MTAKK21zZ2lkICJpZ25vcmUgd2hpdGVzcGFjZSB3aGVuIGNvbXBhcmluZyBsaW5lcyIKK21zZ3N0ciAiV2hpdGVzcGFjZS3DhG5kZXJ1bmdlbiBiZWltIFZlcmdsZWljaCB2b24gWmVpbGVuIGlnbm9yaWVyZW4iCisKKyM6IGRpZmYuYzo1NDEzCittc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gYW1vdW50IG9mIHdoaXRlc3BhY2UiCittc2dzdHIgIsOEbmRlcnVuZ2VuIGJlaSBkZXIgQW56YWhsIHZvbiBXaGl0ZXNwYWNlIGlnbm9yaWVyZW4iCisKKyM6IGRpZmYuYzo1NDE2Cittc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSBhdCBFT0wiCittc2dzdHIgIldoaXRlc3BhY2Utw4RuZGVydW5nZW4gYW0gWmVpbGVuZW5kZSBpZ25vcmllcmVuIgorCisjOiBkaWZmLmM6NTQxOQorbXNnaWQgImlnbm9yZSBjYXJyaWVyLXJldHVybiBhdCB0aGUgZW5kIG9mIGxpbmUiCittc2dzdHIgIklnbm9yaWVyZSBkZW4gWmVpbGVudW1icnVjaCBhbSBFbmRlIGRlciBaZWlsZSIKKworIzogZGlmZi5jOjU0MjIKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyB3aG9zZSBsaW5lcyBhcmUgYWxsIGJsYW5rIgorbXNnc3RyICJJZ25vcmllcmUgw4RuZGVydW5nZW4gaW4gbGVlcmVuIFplaWxlbiIKKworIzogZGlmZi5jOjU0MjUKK21zZ2lkICJoZXVyaXN0aWMgdG8gc2hpZnQgZGlmZiBodW5rIGJvdW5kYXJpZXMgZm9yIGVhc3kgcmVhZGluZyIKK21zZ3N0ciAiIgorIkhldXJpc3RpaywgdW0gR3JlbnplbiBkZXIgw4RuZGVydW5nc2Jsw7Zja2UgZsO8ciBiZXNzZXJlIExlc2JhcmtlaXQgenUgIgorInZlcnNjaGllYmVuIgorCisjOiBkaWZmLmM6NTQyOAorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwicGF0aWVuY2UgZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAiRXJ6ZXVnZSDDhG5kZXJ1bmdlbiBkdXJjaCBOdXR6dW5nIGRlcyBBbGdvcml0aG11cyBcIlBhdGllbmNlIERpZmZcIiIKKworIzogZGlmZi5jOjU0MzIKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcImhpc3RvZ3JhbSBkaWZmXCIgYWxnb3JpdGhtIgorbXNnc3RyICJFcnpldWdlIMOEbmRlcnVuZ2VuIGR1cmNoIE51dHp1bmcgZGVzIEFsZ29yaXRobXVzIFwiSGlzdG9ncmFtIERpZmZcIiIKKworIzogZGlmZi5jOjU0MzQKK21zZ2lkICI8YWxnb3JpdGhtPiIKK21zZ3N0ciAiPEFsZ29yaXRobXVzPiIKKworIzogZGlmZi5jOjU0MzUKK21zZ2lkICJjaG9vc2UgYSBkaWZmIGFsZ29yaXRobSIKK21zZ3N0ciAiRWluIEFsZ29yaXRobXVzIGbDvHIgw4RuZGVydW5nZW4gd8OkaGxlbiIKKworIzogZGlmZi5jOjU0MzcKK21zZ2lkICI8dGV4dD4iCittc2dzdHIgIjxUZXh0PiIKKworIzogZGlmZi5jOjU0MzgKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcImFuY2hvcmVkIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgIkVyemV1Z2Ugw4RuZGVydW5nZW4gZHVyY2ggTnV0enVuZyBkZXMgQWxnb3JpdGhtdXMgXCJBbmNob3JlZCBEaWZmXCIiCisKKyM6IGRpZmYuYzo1NDQwIGRpZmYuYzo1NDQ5IGRpZmYuYzo1NDUyCittc2dpZCAiPG1vZGU+IgorbXNnc3RyICI8TW9kdXM+IgorCisjOiBkaWZmLmM6NTQ0MQorbXNnaWQgInNob3cgd29yZCBkaWZmLCB1c2luZyA8bW9kZT4gdG8gZGVsaW1pdCBjaGFuZ2VkIHdvcmRzIgorbXNnc3RyICJaZWlnZSBXb3J0LcOEbmRlcnVuZ2VuLCBudXR6ZSA8TW9kdXM+LCB1bSBXw7ZydGVyIGFienVncmVuemVuIgorCisjOiBkaWZmLmM6NTQ0MyBkaWZmLmM6NTQ0NiBkaWZmLmM6NTQ5MQorbXNnaWQgIjxyZWdleD4iCittc2dzdHIgIjxSZWdleD4iCisKKyM6IGRpZmYuYzo1NDQ0Cittc2dpZCAidXNlIDxyZWdleD4gdG8gZGVjaWRlIHdoYXQgYSB3b3JkIGlzIgorbXNnc3RyICJOdXR6ZSA8UmVnZXg+LCB1bSB6dSBlbnRzY2hlaWRlbiwgd2FzIGVpbiBXb3J0IGlzdCIKKworIzogZGlmZi5jOjU0NDcKK21zZ2lkICJlcXVpdmFsZW50IHRvIC0td29yZC1kaWZmPWNvbG9yIC0td29yZC1kaWZmLXJlZ2V4PTxyZWdleD4iCittc2dzdHIgIkVudHNwcmVjaGVuZCB3aWUgLS13b3JkLWRpZmY9Y29sb3IgLS13b3JkLWRpZmYtcmVnZXg9PFJlZ2V4PiIKKworIzogZGlmZi5jOjU0NTAKK21zZ2lkICJtb3ZlZCBsaW5lcyBvZiBjb2RlIGFyZSBjb2xvcmVkIGRpZmZlcmVudGx5IgorbXNnc3RyICJWZXJzY2hvYmVuZSBDb2RlemVpbGVuIHNpbmQgYW5kZXJzZmFyYmlnIgorCisjOiBkaWZmLmM6NTQ1MworbXNnaWQgImhvdyB3aGl0ZSBzcGFjZXMgYXJlIGlnbm9yZWQgaW4gLS1jb2xvci1tb3ZlZCIKK21zZ3N0ciAiV2llIFdoaXRlc3BhY2VzIGluIC0tY29sb3ItbW92ZWQgaWdub3JpZXJ0IHdlcmRlbiIKKworIzogZGlmZi5jOjU0NTYKK21zZ2lkICJPdGhlciBkaWZmIG9wdGlvbnMiCittc2dzdHIgIkFuZGVyZSBEaWZmLU9wdGlvbmVuIgorCisjOiBkaWZmLmM6NTQ1OAorbXNnaWQgIndoZW4gcnVuIGZyb20gc3ViZGlyLCBleGNsdWRlIGNoYW5nZXMgb3V0c2lkZSBhbmQgc2hvdyByZWxhdGl2ZSBwYXRocyIKK21zZ3N0ciAiIgorIldlbm4gdm9tIFVudGVydmVyemVpY2huaXMgYXVmZ2VydWZlbiwgc2NobGllw59lIMOEbmRlcnVuZ2VuIGF1w59lcmhhbGIgYXVzIHVuZCAiCisiemVpZ2UgcmVsYXRpdmUgUGZhZGUgYW4iCisKKyM6IGRpZmYuYzo1NDYyCittc2dpZCAidHJlYXQgYWxsIGZpbGVzIGFzIHRleHQiCittc2dzdHIgImFsbGUgRGF0ZWllbiBhbHMgVGV4dCBiZWhhbmRlbG4iCisKKyM6IGRpZmYuYzo1NDY0Cittc2dpZCAic3dhcCB0d28gaW5wdXRzLCByZXZlcnNlIHRoZSBkaWZmIgorbXNnc3RyICJWZXJ0YXVzY2hlIGRpZSBiZWlkZW4gRWluZ2FiZW4gdW5kIGRyZWhlIGRpZSDDhG5kZXJ1bmdlbiB1bSIKKworIzogZGlmZi5jOjU0NjYKK21zZ2lkICJleGl0IHdpdGggMSBpZiB0aGVyZSB3ZXJlIGRpZmZlcmVuY2VzLCAwIG90aGVyd2lzZSIKK21zZ3N0ciAiIgorIkJlZW5kZSBtaXQgRXhpdC1TdGF0dXMgMSwgd2VubiDDhG5kZXJ1bmdlbiB2b3JoYW5kZW4gc2luZCwgYW5kZXJuZmFsbHMgbWl0IDAiCisKKyM6IGRpZmYuYzo1NDY4Cittc2dpZCAiZGlzYWJsZSBhbGwgb3V0cHV0IG9mIHRoZSBwcm9ncmFtIgorbXNnc3RyICJLZWluZSBBdXNnYWJlbiB2b20gUHJvZ3JhbW0iCisKKyM6IGRpZmYuYzo1NDcwCittc2dpZCAiYWxsb3cgYW4gZXh0ZXJuYWwgZGlmZiBoZWxwZXIgdG8gYmUgZXhlY3V0ZWQiCittc2dzdHIgIkVybGF1YmUgZGllIEF1c2bDvGhydW5nIGVpbmVzIGV4dGVybmVzIFByb2dyYW1tcyBmw7xyIMOEbmRlcnVuZ2VuIgorCisjOiBkaWZmLmM6NTQ3MgorbXNnaWQgInJ1biBleHRlcm5hbCB0ZXh0IGNvbnZlcnNpb24gZmlsdGVycyB3aGVuIGNvbXBhcmluZyBiaW5hcnkgZmlsZXMiCittc2dzdHIgIiIKKyJGw7xocmUgZXh0ZXJuZSBUZXh0LUtvbnZlcnRpZXJ1bmdzZmlsdGVyIGF1cywgd2VubiBiaW7DpHJlIERhdGVpZW4gdmVyZ2xlaWNodCAiCisid2VyZGVuIgorCisjOiBkaWZmLmM6NTQ3NAorbXNnaWQgIjx3aGVuPiIKK21zZ3N0ciAiPHdhbm4+IgorCisjOiBkaWZmLmM6NTQ3NQorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIHRvIHN1Ym1vZHVsZXMgaW4gdGhlIGRpZmYgZ2VuZXJhdGlvbiIKK21zZ3N0ciAiIgorIsOEbmRlcnVuZ2VuIGluIFN1Ym1vZHVsZW4gd8OkaHJlbmQgZGVyIEVyc3RlbGx1bmcgZGVyIFVudGVyc2NoaWVkZSBpZ25vcmllcmVuIgorCisjOiBkaWZmLmM6NTQ3OAorbXNnaWQgIjxmb3JtYXQ+IgorbXNnc3RyICI8Rm9ybWF0PiIKKworIzogZGlmZi5jOjU0NzkKK21zZ2lkICJzcGVjaWZ5IGhvdyBkaWZmZXJlbmNlcyBpbiBzdWJtb2R1bGVzIGFyZSBzaG93biIKK21zZ3N0ciAiQW5nZWJlbiwgd2llIFVudGVyc2NoaWVkZSBpbiBTdWJtb2R1bGVuIGdlemVpZ3Qgd2VyZGVuIgorCisjOiBkaWZmLmM6NTQ4MworbXNnaWQgImhpZGUgJ2dpdCBhZGQgLU4nIGVudHJpZXMgZnJvbSB0aGUgaW5kZXgiCittc2dzdHIgInZlcnN0ZWNrZSAnZ2l0IGFkZCAtTicgRWludHLDpGdlIHZvbSBJbmRleCIKKworIzogZGlmZi5jOjU0ODYKK21zZ2lkICJ0cmVhdCAnZ2l0IGFkZCAtTicgZW50cmllcyBhcyByZWFsIGluIHRoZSBpbmRleCIKK21zZ3N0ciAiQmVoYW5kbGUgJ2dpdCBhZGQgLU4nIEVpbnRyw6RnZSBpbSBJbmRleCBhbHMgZWNodCIKKworIzogZGlmZi5jOjU0ODgKK21zZ2lkICI8c3RyaW5nPiIKK21zZ3N0ciAiPFplaWNoZW5rZXR0ZT4iCisKKyM6IGRpZmYuYzo1NDg5Cittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisic3RyaW5nIgorbXNnc3RyICIiCisiU3VjaGUgbmFjaCBVbnRlcnNjaGllZGVuLCB3ZWxjaGUgZGllIEFuemFobCBkZXMgVm9ya29tbWVucyBkZXIgYW5nZWdlYmVuZW4gIgorIlplaWNoZW5rZXR0ZSB2ZXLDpG5kZXJuIgorCisjOiBkaWZmLmM6NTQ5MgorbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorInJlZ2V4IgorbXNnc3RyICIiCisiU3VjaGUgbmFjaCBVbnRlcnNjaGllZGVuLCB3ZWxjaGUgZGllIEFuemFobCBkZXMgVm9ya29tbWVucyBkZXMgYW5nZWdlYmVuZW4gIgorInJlZ3Vsw6RyZW4gQXVzZHJ1Y2tzIHZlcsOkbmRlcm4iCisKKyM6IGRpZmYuYzo1NDk1Cittc2dpZCAic2hvdyBhbGwgY2hhbmdlcyBpbiB0aGUgY2hhbmdlc2V0IHdpdGggLVMgb3IgLUciCittc2dzdHIgInplaWdlIGFsbGUgw4RuZGVydW5nZW4gaW0gQ2hhbmdlc2V0IG1pdCAtUyBvZGVyIC1HIgorCisjOiBkaWZmLmM6NTQ5OAorbXNnaWQgInRyZWF0IDxzdHJpbmc+IGluIC1TIGFzIGV4dGVuZGVkIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiIgorImJlaGFuZGxlIDxaZWljaGVua2V0dGU+IGJlaSAtUyBhbHMgZXJ3ZWl0ZXJ0ZW4gUE9TSVggcmVndWzDpHJlbiBBdXNkcnVjayIKKworIzogZGlmZi5jOjU1MDEKK21zZ2lkICJjb250cm9sIHRoZSBvcmRlciBpbiB3aGljaCBmaWxlcyBhcHBlYXIgaW4gdGhlIG91dHB1dCIKK21zZ3N0ciAiIgorImtvbnRyb2xsaWVyZSBkaWUgUmVpaGVuZm9sZ2UsIGluIGRlciBkaWUgRGF0ZWllbiBpbiBkZXIgQXVzZ2FiZSBlcnNjaGVpbmVuIgorCisjOiBkaWZmLmM6NTUwMgorbXNnaWQgIjxvYmplY3QtaWQ+IgorbXNnc3RyICI8T2JqZWt0LUlEPiIKKworIzogZGlmZi5jOjU1MDMKK21zZ2lkICIiCisibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkICIKKyJvYmplY3QiCittc2dzdHIgIiIKKyJTdWNoZSBuYWNoIFVudGVyc2NoaWVkZW4sIHdlbGNoZSBkaWUgQW56YWhsIGRlcyBWb3Jrb21tZW5zIGRlcyBhbmdlZ2ViZW5lbiAiCisiT2JqZWt0ZXMgdmVyw6RuZGVybiIKKworIzogZGlmZi5jOjU1MDUKK21zZ2lkICJbKEF8Q3xEfE18UnxUfFV8WHxCKS4uLlsqXV0iCittc2dzdHIgIlsoQXxDfER8TXxSfFR8VXxYfEIpLi4uWypdXSIKKworIzogZGlmZi5jOjU1MDYKK21zZ2lkICJzZWxlY3QgZmlsZXMgYnkgZGlmZiB0eXBlIgorbXNnc3RyICJXw6RobGUgRGF0ZWllbiBhbmhhbmQgZGVyIEFydCBkZXIgw4RuZGVydW5nIgorCisjOiBkaWZmLmM6NTUwOAorbXNnaWQgIjxmaWxlPiIKK21zZ3N0ciAiPERhdGVpPiIKKworIzogZGlmZi5jOjU1MDkKK21zZ2lkICJPdXRwdXQgdG8gYSBzcGVjaWZpYyBmaWxlIgorbXNnc3RyICJBdXNnYWJlIHp1IGVpbmVyIGJlc3RpbW10ZW4gRGF0ZWkiCisKKyM6IGRpZmYuYzo2MTY0CiBtc2dpZCAiaW5leGFjdCByZW5hbWUgZGV0ZWN0aW9uIHdhcyBza2lwcGVkIGR1ZSB0byB0b28gbWFueSBmaWxlcy4iCiBtc2dzdHIgIiIKICJVbmdlbmF1ZSBFcmtlbm51bmcgZsO8ciBVbWJlbmVubnVuZ2VuIHd1cmRlIGF1ZmdydW5kIHp1IHZpZWxlciBEYXRlaWVuXG4iCiAiw7xiZXJzcHJ1bmdlbi4iCiAKLSM6IGRpZmYuYzo1ODI2CisjOiBkaWZmLmM6NjE2NwogbXNnaWQgIm9ubHkgZm91bmQgY29waWVzIGZyb20gbW9kaWZpZWQgcGF0aHMgZHVlIHRvIHRvbyBtYW55IGZpbGVzLiIKIG1zZ3N0ciAibnVyIEtvcGllbiB2b24gZ2XDpG5kZXJ0ZW4gUGZhZGVuLCBhdWZncnVuZCB6dSB2aWVsZXIgRGF0ZWllbiwgZ2VmdW5kZW4iCiAKLSM6IGRpZmYuYzo1ODI5CisjOiBkaWZmLmM6NjE3MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAieW91IG1heSB3YW50IHRvIHNldCB5b3VyICVzIHZhcmlhYmxlIHRvIGF0IGxlYXN0ICVkIGFuZCByZXRyeSB0aGUgY29tbWFuZC4iCkBAIC0yMzI5LDQzICszNzU4LDY0IEBACiAiU2llIGvDtm5udGVuIGRpZSBWYXJpYWJsZSAlcyBhdWYgbWluZGVzdGVucyAlZCBzZXR6ZW4gdW5kIGRlbiBCZWZlaGxcbiIKICJlcm5ldXQgdmVyc3VjaGVuLiIKIAotIzogZGlyLmM6NTc2CisjOiBkaXIuYzo1NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlKHMpIGtub3duIHRvIGdpdCIKIG1zZ3N0ciAiIgogIlBmYWRzcGV6aWZpa2F0aW9uICclcycgc3RpbW10IG1pdCBrZWluZW4gZ2l0LWJla2FubnRlbiBEYXRlaWVuIMO8YmVyZWluLiIKIAotIzogZGlyLmM6OTY1CisjOiBkaXIuYzo2OTUgZGlyLmM6NzI0IGRpci5jOjczNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgcGF0dGVybjogJyVzJyIKK21zZ3N0ciAiVW5iZWthbm50ZXMgTXVzdGVyOiAnJXMnIgorCisjOiBkaXIuYzo3NTQgZGlyLmM6NzY4CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBuZWdhdGl2ZSBwYXR0ZXJuOiAnJXMnIgorbXNnc3RyICJVbmJla2FubnRlcyB2ZXJuZWluZW5kZXMgTXVzdGVyOiAnJXMnIgorCisjOiBkaXIuYzo3ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAieW91ciBzcGFyc2UtY2hlY2tvdXQgZmlsZSBtYXkgaGF2ZSBpc3N1ZXM6IHBhdHRlcm4gJyVzJyBpcyByZXBlYXRlZCIKK21zZ3N0ciAiIgorIklocmUgRGF0ZWkgZsO8ciBkZW4gcGFydGllbGxlbiBDaGVja291dCBoYXQgZXZlbnR1ZWxsIFByb2JsZW1lOlxuIgorIk11c3RlciAnJXMnIHdpZWRlcmhvbHQgc2ljaC4iCisKKyM6IGRpci5jOjc5NgorbXNnaWQgImRpc2FibGluZyBjb25lIHBhdHRlcm4gbWF0Y2hpbmciCittc2dzdHIgIkRlYWt0aXZpZXJlIENvbmUtTXVzdGVyLcOcYmVyZWluc3RpbW11bmciCisKKyM6IGRpci5jOjExNzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHVzZSAlcyBhcyBhbiBleGNsdWRlIGZpbGUiCiBtc2dzdHIgIkthbm4gJXMgbmljaHQgYWxzIGV4Y2x1ZGUtRmlsdGVyIGJlbnV0emVuLiIKIAotIzogZGlyLmM6MTg4MAorIzogZGlyLmM6MjE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAiS29ubnRlIFZlcnplaWNobmlzICclcycgbmljaHQgw7ZmZm5lbi4iCiAKLSM6IGRpci5jOjIxMjIKKyM6IGRpci5jOjI0NzkKIG1zZ2lkICJmYWlsZWQgdG8gZ2V0IGtlcm5lbCBuYW1lIGFuZCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gU2FtbWVsbiB2b24gTmFtZW4gdW5kIEluZm9ybWF0aW9uZW4genVtIEtlcm5lbCIKIAotIzogZGlyLmM6MjI0NgorIzogZGlyLmM6MjYwMwogbXNnaWQgInVudHJhY2tlZCBjYWNoZSBpcyBkaXNhYmxlZCBvbiB0aGlzIHN5c3RlbSBvciBsb2NhdGlvbiIKIG1zZ3N0ciAiIgogIkNhY2hlIGbDvHIgdW52ZXJzaW9uaWVydGUgRGF0ZWllbiBpc3QgYXVmIGRpZXNlbSBTeXN0ZW0gb2RlclxuIgogImbDvHIgZGllc2VzIFZlcnplaWNobmlzIGRlYWt0aXZpZXJ0LiIKIAotIzogZGlyLmM6MzA0NworIzogZGlyLmM6MzQwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbmRleCBmaWxlIGNvcnJ1cHQgaW4gcmVwbyAlcyIKIG1zZ3N0ciAiSW5kZXgtRGF0ZWkgaW4gUmVwb3NpdG9yeSAlcyBiZXNjaMOkZGlndC4iCiAKLSM6IGRpci5jOjMwOTIgZGlyLmM6MzA5NworIzogZGlyLmM6MzQ1MiBkaXIuYzozNDU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3JpZXMgZm9yICVzIgogbXNnc3RyICJLb25udGUgVmVyemVpY2huaXNzZSBmw7xyICclcycgbmljaHQgZXJzdGVsbGVuLiIKIAotIzogZGlyLmM6MzEyNgorIzogZGlyLmM6MzQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbWlncmF0ZSBnaXQgZGlyZWN0b3J5IGZyb20gJyVzJyB0byAnJXMnIgogbXNnc3RyICJLb25udGUgR2l0LVZlcnplaWNobmlzIG5pY2h0IHZvbiAnJXMnIG5hY2ggJyVzJyBtaWdyaWVyZW4uIgpAQCAtMjM3OSwyOTcgKzM4MjksMjg5IEBACiBtc2dpZCAiRmlsdGVyaW5nIGNvbnRlbnQiCiBtc2dzdHIgIkZpbHRlcmUgSW5oYWx0IgogCi0jOiBlbnRyeS5jOjQ2NQorIzogZW50cnkuYzo0NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN0YXQgZmlsZSAnJXMnIgogbXNnc3RyICJLb25udGUgRGF0ZWkgJyVzJyBuaWNodCBsZXNlbi4iCiAKLSM6IGVudmlyb25tZW50LmM6MTUwCisjOiBlbnZpcm9ubWVudC5jOjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgZ2l0IG5hbWVzcGFjZSBwYXRoIFwiJXNcIiIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgR2l0LU5hbWVzcGFjZS1QZmFkIFwiJXNcIiIKIAotIzogZW52aXJvbm1lbnQuYzozMzIKKyM6IGVudmlyb25tZW50LmM6MzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzZXQgR0lUX0RJUiB0byAnJXMnIgogbXNnc3RyICJLb25udGUgR0lUX0RJUiBuaWNodCB6dSAnJXMnIHNldHplbi4iCiAKLSM6IGV4ZWMtY21kLmM6MzYxCisjOiBleGVjLWNtZC5jOjM2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0b28gbWFueSBhcmdzIHRvIHJ1biAlcyIKIG1zZ3N0ciAiWnUgdmllbGUgQXJndW1lbnRlIGFuZ2VnZWJlbiwgdW0gJXMgYXVzenVmw7xocmVuLiIKIAotIzogZmV0Y2gtb2JqZWN0LmM6MTcKLW1zZ2lkICJSZW1vdGUgd2l0aCBubyBVUkwiCi1tc2dzdHIgIlJlbW90ZS1SZXBvc2l0b3J5IG9obmUgVVJMIgotCi0jOiBmZXRjaC1wYWNrLmM6MTUxCisjOiBmZXRjaC1wYWNrLmM6MTUwCiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIHNoYWxsb3cgbGlzdCIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6IGVyd2FydGV0ZSBzaGFsbG93LUxpc3RlIgogCi0jOiBmZXRjaC1wYWNrLmM6MTYzCisjOiBmZXRjaC1wYWNrLmM6MTUzCittc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIGEgZmx1c2ggcGFja2V0IGFmdGVyIHNoYWxsb3cgbGlzdCIKK21zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6IGVyd2FydGV0ZSBlaW4gRmx1c2gtUGFrZXQgbmFjaCBkZXIgc2hhbGxvdy1MaXN0ZSIKKworIzogZmV0Y2gtcGFjay5jOjE2NAogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgYSBmbHVzaCBwYWNrZXQiCiBtc2dzdHIgImdpdCBmZXRjaC1wYWNrOiBBQ0svTkFLIGVyd2FydGV0LCBGbHVzaC1QYWtldCBiZWtvbW1lbiIKIAotIzogZmV0Y2gtcGFjay5jOjE4MworIzogZmV0Y2gtcGFjay5jOjE4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290ICclcyciCiBtc2dzdHIgImdpdCBmZXRjaC1wYWNrOiBBQ0svTkFLIGVyd2FydGV0LCAnJXMnIGJla29tbWVuIgogCi0jOiBmZXRjaC1wYWNrLmM6MjUzCisjOiBmZXRjaC1wYWNrLmM6MTk1Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHJlbW90ZSIKK21zZ3N0ciAia29ubnRlIG5pY2h0IHp1bSBSZW1vdGUgc2NocmVpYmVuIgorCisjOiBmZXRjaC1wYWNrLmM6MjU3CiBtc2dpZCAiLS1zdGF0ZWxlc3MtcnBjIHJlcXVpcmVzIG11bHRpX2Fja19kZXRhaWxlZCIKIG1zZ3N0ciAiLS1zdGF0ZWxlc3MtcnBjIGJlbsO2dGlndCBtdWx0aV9hY2tfZGV0YWlsZWQiCiAKLSM6IGZldGNoLXBhY2suYzozNDcgZmV0Y2gtcGFjay5jOjEyNzcKKyM6IGZldGNoLXBhY2suYzozNTYgZmV0Y2gtcGFjay5jOjEzNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzaGFsbG93IGxpbmU6ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlIHNoYWxsb3ctWmVpbGU6ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzUzIGZldGNoLXBhY2suYzoxMjgzCisjOiBmZXRjaC1wYWNrLmM6MzYyIGZldGNoLXBhY2suYzoxMzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgdW5zaGFsbG93IGxpbmU6ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlIHVuc2hhbGxvdy1aZWlsZTogJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNTUgZmV0Y2gtcGFjay5jOjEyODUKKyM6IGZldGNoLXBhY2suYzozNjQgZmV0Y2gtcGFjay5jOjEzNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IG5vdCBmb3VuZDogJXMiCiBtc2dzdHIgIk9iamVrdCBuaWNodCBnZWZ1bmRlbjogJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNTggZmV0Y2gtcGFjay5jOjEyODgKKyM6IGZldGNoLXBhY2suYzozNjcgZmV0Y2gtcGFjay5jOjEzNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgaW4gb2JqZWN0OiAlcyIKIG1zZ3N0ciAiRmVobGVyIGluIE9iamVrdDogJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNjAgZmV0Y2gtcGFjay5jOjEyOTAKKyM6IGZldGNoLXBhY2suYzozNjkgZmV0Y2gtcGFjay5jOjEzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc2hhbGxvdyBmb3VuZDogJXMiCiBtc2dzdHIgIktlaW4gc2hhbGxvdy1PYmpla3QgZ2VmdW5kZW46ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzYzIGZldGNoLXBhY2suYzoxMjkzCisjOiBmZXRjaC1wYWNrLmM6MzcyIGZldGNoLXBhY2suYzoxMzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIHNoYWxsb3cvdW5zaGFsbG93LCBnb3QgJXMiCiBtc2dzdHIgInNoYWxsb3cvdW5zaGFsbG93IGVyd2FydGV0LCAlcyBiZWtvbW1lbiIKIAotIzogZmV0Y2gtcGFjay5jOjQwNAorIzogZmV0Y2gtcGFjay5jOjQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJnb3QgJXMgJWQgJXMiCiBtc2dzdHIgIiVzICVkICVzIGJla29tbWVuIgogCi0jOiBmZXRjaC1wYWNrLmM6NDIxCisjOiBmZXRjaC1wYWNrLmM6NDMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29tbWl0ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlciBDb21taXQgJXMiCiAKLSM6IGZldGNoLXBhY2suYzo0NTIKKyM6IGZldGNoLXBhY2suYzo0NjIKIG1zZ2lkICJnaXZpbmcgdXAiCiBtc2dzdHIgIkdlYmUgYXVmIgogCi0jOiBmZXRjaC1wYWNrLmM6NDY0IHByb2dyZXNzLmM6MjI5CisjOiBmZXRjaC1wYWNrLmM6NDc1IHByb2dyZXNzLmM6MzIzCiBtc2dpZCAiZG9uZSIKIG1zZ3N0ciAiRmVydGlnIgogCi0jOiBmZXRjaC1wYWNrLmM6NDc2CisjOiBmZXRjaC1wYWNrLmM6NDg3CiAjLCBjLWZvcm1hdAogbXNnaWQgImdvdCAlcyAoJWQpICVzIgogbXNnc3RyICIlcyAoJWQpICVzIGJla29tbWVuIgogCi0jOiBmZXRjaC1wYWNrLmM6NTIyCisjOiBmZXRjaC1wYWNrLmM6NTMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1hcmtpbmcgJXMgYXMgY29tcGxldGUiCiBtc2dzdHIgIk1hcmtpZXJlICVzIGFscyB2b2xsc3TDpG5kaWciCiAKLSM6IGZldGNoLXBhY2suYzo3NjQKKyM6IGZldGNoLXBhY2suYzo3NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWxyZWFkeSBoYXZlICVzICglcykiCiBtc2dzdHIgImhhYmUgJXMgKCVzKSBiZXJlaXRzIgogCi0jOiBmZXRjaC1wYWNrLmM6ODAzCisjOiBmZXRjaC1wYWNrLmM6ODE4CiBtc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiBtc2dzdHIgImZldGNoLXBhY2s6IEZlaGxlciBiZWltIFN0YXJ0ZW4gZGVzIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiAKLSM6IGZldGNoLXBhY2suYzo4MTEKKyM6IGZldGNoLXBhY2suYzo4MjYKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIHBhY2sgaGVhZGVyIgogbXNnc3RyICJQcm90b2tvbGxmZWhsZXI6IHVuZ8O8bHRpZ2VyIFBhY2stSGVhZGVyIgogCi0jOiBmZXRjaC1wYWNrLmM6ODc5CisjOiBmZXRjaC1wYWNrLmM6OTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZldGNoLXBhY2s6IHVuYWJsZSB0byBmb3JrIG9mZiAlcyIKIG1zZ3N0ciAiZmV0Y2gtcGFjazoga29ubnRlICVzIG5pY2h0IHN0YXJ0ZW4iCiAKLSM6IGZldGNoLXBhY2suYzo4OTUKKyM6IGZldGNoLXBhY2suYzo5MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZmFpbGVkIgogbXNnc3RyICIlcyBmZWhsZ2VzY2hsYWdlbiIKIAotIzogZmV0Y2gtcGFjay5jOjg5NworIzogZmV0Y2gtcGFjay5jOjkxOAogbXNnaWQgImVycm9yIGluIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiBtc2dzdHIgIkZlaGxlciBpbiBzaWRlYmFuZCBkZW11bHRpcGxleGVyIgogCi0jOiBmZXRjaC1wYWNrLmM6OTI2Ci1tc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjbGllbnRzIgotbXNnc3RyICJTZXJ2ZXIgdW50ZXJzdMO8dHp0IGtlaW5lIHNoYWxsb3ctQ2xpZW50cyIKLQotIzogZmV0Y2gtcGFjay5jOjkzMAotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2tfZGV0YWlsZWQiCi1tc2dzdHIgIlNlcnZlciB1bnRlcnN0w7x0enQgbXVsdGlfYWNrX2RldGFpbGVkIgotCi0jOiBmZXRjaC1wYWNrLmM6OTMzCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIG5vLWRvbmUiCi1tc2dzdHIgIlNlcnZlciB1bnRlcnN0w7x0enQgbm8tZG9uZSIKLQotIzogZmV0Y2gtcGFjay5jOjkzOQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2siCi1tc2dzdHIgIlNlcnZlciB1bnRlcnN0w7x0enQgbXVsdGlfYWNrIgotCi0jOiBmZXRjaC1wYWNrLmM6OTQzCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIHNpZGUtYmFuZC02NGsiCi1tc2dzdHIgIlNlcnZlciB1bnRlcnN0w7x0enQgc2lkZS1iYW5kLTY0ayIKLQotIzogZmV0Y2gtcGFjay5jOjk0NwotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQiCi1tc2dzdHIgIlNlcnZlciB1bnRlcnN0w7x0enQgc2lkZS1iYW5kIgotCi0jOiBmZXRjaC1wYWNrLmM6OTUxCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIGFsbG93LXRpcC1zaGExLWluLXdhbnQiCi1tc2dzdHIgIlNlcnZlciB1bnRlcnN0w7x0enQgYWxsb3ctdGlwLXNoYTEtaW4td2FudCIKLQotIzogZmV0Y2gtcGFjay5jOjk1NQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBhbGxvdy1yZWFjaGFibGUtc2hhMS1pbi13YW50IgotbXNnc3RyICJTZXJ2ZXIgdW50ZXJzdMO8dHp0IGFsbG93LXJlYWNoYWJsZS1zaGExLWluLXdhbnQiCi0KICM6IGZldGNoLXBhY2suYzo5NjUKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgb2ZzLWRlbHRhIgotbXNnc3RyICJTZXJ2ZXIgdW50ZXJzdMO8dHp0IG9mcy1kZWx0YSIKLQotIzogZmV0Y2gtcGFjay5jOjk3MSBmZXRjaC1wYWNrLmM6MTE1OAotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBmaWx0ZXIiCi1tc2dzdHIgIlNlcnZlciB1bnRlcnN0w7x0enQgRmlsdGVyIgotCi0jOiBmZXRjaC1wYWNrLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNlcnZlciB2ZXJzaW9uIGlzICUuKnMiCiBtc2dzdHIgIlNlcnZlci1WZXJzaW9uIGlzdCAlLipzIgogCi0jOiBmZXRjaC1wYWNrLmM6OTg1CisjOiBmZXRjaC1wYWNrLmM6OTcwIGZldGNoLXBhY2suYzo5NzYgZmV0Y2gtcGFjay5jOjk3OSBmZXRjaC1wYWNrLmM6OTg1CisjOiBmZXRjaC1wYWNrLmM6OTg5IGZldGNoLXBhY2suYzo5OTMgZmV0Y2gtcGFjay5jOjk5NyBmZXRjaC1wYWNrLmM6MTAwMQorIzogZmV0Y2gtcGFjay5jOjEwMDUgZmV0Y2gtcGFjay5jOjEwMDkgZmV0Y2gtcGFjay5jOjEwMTMgZmV0Y2gtcGFjay5jOjEwMTcKKyM6IGZldGNoLXBhY2suYzoxMDIzIGZldGNoLXBhY2suYzoxMDI5IGZldGNoLXBhY2suYzoxMDM0IGZldGNoLXBhY2suYzoxMDM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyAlcyIKK21zZ3N0ciAiU2VydmVyIHVudGVyc3TDvHR6dCAlcyIKKworIzogZmV0Y2gtcGFjay5jOjk3MgorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2xpZW50cyIKK21zZ3N0ciAiU2VydmVyIHVudGVyc3TDvHR6dCBrZWluZSBzaGFsbG93LUNsaWVudHMiCisKKyM6IGZldGNoLXBhY2suYzoxMDMyCiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1zaGFsbG93LXNpbmNlIgogbXNnc3RyICJTZXJ2ZXIgdW50ZXJzdMO8dHp0IGtlaW4gLS1zaGFsbG93LXNpbmNlIgogCi0jOiBmZXRjaC1wYWNrLmM6OTg5CisjOiBmZXRjaC1wYWNrLmM6MTAzNwogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tc2hhbGxvdy1leGNsdWRlIgogbXNnc3RyICJTZXJ2ZXIgdW50ZXJzdMO8dHp0IGtlaW4gLS1zaGFsbG93LWV4Y2x1ZGUiCiAKLSM6IGZldGNoLXBhY2suYzo5OTEKKyM6IGZldGNoLXBhY2suYzoxMDQxCiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1kZWVwZW4iCiBtc2dzdHIgIlNlcnZlciB1bnRlcnN0w7x0enQga2VpbiAtLWRlZXBlbiIKIAotIzogZmV0Y2gtcGFjay5jOjEwMDgKKyM6IGZldGNoLXBhY2suYzoxMDU4CiBtc2dpZCAibm8gY29tbW9uIGNvbW1pdHMiCiBtc2dzdHIgImtlaW5lIGdlbWVpbnNhbWVuIENvbW1pdHMiCiAKLSM6IGZldGNoLXBhY2suYzoxMDIwIGZldGNoLXBhY2suYzoxNDE4CisjOiBmZXRjaC1wYWNrLmM6MTA3MCBmZXRjaC1wYWNrLmM6MTUzNgogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBmZXRjaCBmYWlsZWQuIgogbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogQWJob2xlbiBmZWhsZ2VzY2hsYWdlbi4iCiAKLSM6IGZldGNoLXBhY2suYzoxMTUzCisjOiBmZXRjaC1wYWNrLmM6MTIwOQogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgcmVxdWVzdHMiCiBtc2dzdHIgIlNlcnZlciB1bnRlcnN0w7x0enQga2VpbmUgc2hhbGxvdy1BbmZyYWdlbi4iCiAKLSM6IGZldGNoLXBhY2suYzoxMTk5CisjOiBmZXRjaC1wYWNrLmM6MTIxNgorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBmaWx0ZXIiCittc2dzdHIgIlNlcnZlciB1bnRlcnN0w7x0enQgRmlsdGVyIgorCisjOiBmZXRjaC1wYWNrLmM6MTIzOQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSByZXF1ZXN0IHRvIHJlbW90ZSIKK21zZ3N0ciAia29ubnRlIEFuZnJhZ2UgbmljaHQgenVtIFJlbW90ZSBzY2hyZWliZW4iCisKKyM6IGZldGNoLXBhY2suYzoxMjU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHJlYWRpbmcgc2VjdGlvbiBoZWFkZXIgJyVzJyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gTGVzZW4gdm9uIFNla3Rpb25za29wZiAnJXMnLiIKIAotIzogZmV0Y2gtcGFjay5jOjEyMDUKKyM6IGZldGNoLXBhY2suYzoxMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkICclcycsIHJlY2VpdmVkICclcyciCiBtc2dzdHIgIiclcycgZXJ3YXJ0ZXQsICclcycgZW1wZmFuZ2VuIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI0NAorIzogZmV0Y2gtcGFjay5jOjEzMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBhY2tub3dsZWRnbWVudCBsaW5lOiAnJXMnIgogbXNnc3RyICJVbmVyd2FydGV0ZSBBY2tub3dsZWRnbWVudC1aZWlsZTogJyVzJyIKIAotIzogZmV0Y2gtcGFjay5jOjEyNDkKKyM6IGZldGNoLXBhY2suYzoxMzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHByb2Nlc3NpbmcgYWNrczogJWQiCiBtc2dzdHIgIkZlaGxlciBiZWltIFZlcmFyYmVpdGVuIHZvbiBBQ0tTOiAlZCIKIAotIzogZmV0Y2gtcGFjay5jOjEyNTkKKyM6IGZldGNoLXBhY2suYzoxMzE4CiBtc2dpZCAiZXhwZWN0ZWQgcGFja2ZpbGUgdG8gYmUgc2VudCBhZnRlciAncmVhZHknIgogbXNnc3RyICJFcndhcnRldGUgVmVyc2FuZCBlaW5lciBQYWNrZGF0ZWkgbmFjaCAncmVhZHknLiIKIAotIzogZmV0Y2gtcGFjay5jOjEyNjEKKyM6IGZldGNoLXBhY2suYzoxMzIwCiBtc2dpZCAiZXhwZWN0ZWQgbm8gb3RoZXIgc2VjdGlvbnMgdG8gYmUgc2VudCBhZnRlciBubyAncmVhZHknIgogbXNnc3RyICJFcndhcnRldGUga2VpbmVuIFZlcnNhbmQgZWluZXIgYW5kZXJlbiBTZWt0aW9uIG9obmUgJ3JlYWR5Jy4iCiAKLSM6IGZldGNoLXBhY2suYzoxMjk4CisjOiBmZXRjaC1wYWNrLmM6MTM2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIHNoYWxsb3cgaW5mbzogJWQiCiBtc2dzdHIgIkZlaGxlciBiZWltIFZlcmFyYmVpdGVuIHZvbiBTaGFsbG93LUluZm9ybWF0aW9uZW46ICVkIgogCi0jOiBmZXRjaC1wYWNrLmM6MTMxNAorIzogZmV0Y2gtcGFjay5jOjE0MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgd2FudGVkLXJlZiwgZ290ICclcyciCiBtc2dzdHIgIndhbnRlZC1yZWYgZXJ3YXJ0ZXQsICclcycgYmVrb21tZW4iCiAKLSM6IGZldGNoLXBhY2suYzoxMzI0CisjOiBmZXRjaC1wYWNrLmM6MTQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIHdhbnRlZC1yZWY6ICclcyciCiBtc2dzdHIgIlVuZXJ3YXJ0ZXRlcyB3YW50ZWQtcmVmOiAnJXMnIgogCi0jOiBmZXRjaC1wYWNrLmM6MTMyOAorIzogZmV0Y2gtcGFjay5jOjE0MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyB3YW50ZWQgcmVmczogJWQiCiBtc2dzdHIgIkZlaGxlciBiZWltIFZlcmFyYmVpdGVuIHZvbiB3YW50ZWQtcmVmczogJWQiCiAKLSM6IGZldGNoLXBhY2suYzoxNjQyCisjOiBmZXRjaC1wYWNrLmM6MTc2MgogbXNnaWQgIm5vIG1hdGNoaW5nIHJlbW90ZSBoZWFkIgogbXNnc3RyICJrZWluIMO8YmVyZWluc3RpbW1lbmRlciBSZW1vdGUtQnJhbmNoIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY2MCBidWlsdGluL2Nsb25lLmM6NjY0CisjOiBmZXRjaC1wYWNrLmM6MTc4NSBidWlsdGluL2Nsb25lLmM6Njg5CiBtc2dpZCAicmVtb3RlIGRpZCBub3Qgc2VuZCBhbGwgbmVjZXNzYXJ5IG9iamVjdHMiCiBtc2dzdHIgIlJlbW90ZS1SZXBvc2l0b3J5IGhhdCBuaWNodCBhbGxlIGVyZm9yZGVybGljaGVuIE9iamVrdGUgZ2VzZW5kZXQuIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY4NgorIzogZmV0Y2gtcGFjay5jOjE4MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCByZW1vdGUgcmVmICVzIgogbXNnc3RyICJrZWluZSBzb2xjaGUgUmVtb3RlLVJlZmVyZW56ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY4OQorIzogZmV0Y2gtcGFjay5jOjE4MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IGFsbG93IHJlcXVlc3QgZm9yIHVuYWR2ZXJ0aXNlZCBvYmplY3QgJXMiCiBtc2dzdHIgIkRlciBTZXJ2ZXIgbGVobnQgQW5mcmFnZSBuYWNoIG5pY2h0IGFuZ2Vib3RlbmVtIE9iamVrdCAlcyBhYi4iCiAKLSM6IGdwZy1pbnRlcmZhY2UuYzozMTgKKyM6IGdwZy1pbnRlcmZhY2UuYzo0MDgKIG1zZ2lkICJncGcgZmFpbGVkIHRvIHNpZ24gdGhlIGRhdGEiCiBtc2dzdHIgImdwZyBiZWltIFNpZ25pZXJlbiBkZXIgRGF0ZW4gZmVobGdlc2NobGFnZW4iCiAKLSM6IGdwZy1pbnRlcmZhY2UuYzozNDQKKyM6IGdwZy1pbnRlcmZhY2UuYzo0MzQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSBmaWxlIgogbXNnc3RyICJrb25udGUgdGVtcG9yw6RyZSBEYXRlaSBuaWNodCBlcnN0ZWxsZW4iCiAKLSM6IGdwZy1pbnRlcmZhY2UuYzozNDcKKyM6IGdwZy1pbnRlcmZhY2UuYzo0MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHdyaXRpbmcgZGV0YWNoZWQgc2lnbmF0dXJlIHRvICclcyciCiBtc2dzdHIgIkZlaGxlciBiZWltIFNjaHJlaWJlbiBkZXIgbG9zZ2Vsw7ZzdGVuIFNpZ25hdHVyIG5hY2ggJyVzJyIKIAotIzogZ3JhcGguYzo5NworIzogZ3JhcGguYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmUgaW52YWxpZCBjb2xvciAnJS4qcycgaW4gbG9nLmdyYXBoQ29sb3JzIgogbXNnc3RyICJJZ25vcmllcmUgdW5nw7xsdGlnZSBGYXJiZSAnJS4qcycgaW4gbG9nLmdyYXBoQ29sb3JzIgogCi0jOiBncmVwLmM6MjExMworIzogZ3JlcC5jOjY2OAorbXNnaWQgIiIKKyJnaXZlbiBwYXR0ZXJuIGNvbnRhaW5zIE5VTEwgYnl0ZSAodmlhIC1mIDxmaWxlPikuIFRoaXMgaXMgb25seSBzdXBwb3J0ZWQgIgorIndpdGggLVAgdW5kZXIgUENSRSB2MiIKK21zZ3N0ciAiIgorIkFuZ2VnZWJlbmVzIE11c3RlciBlbnRow6RsdCBOVUxMIEJ5dGUgKMO8YmVyIC1mIDxEYXRlaT4pLiBEYXMgd2lyZCBudXIgbWl0IC0iCisiUHVudGVyIFBDUkUgdjIgdW50ZXJzdMO8dHp0LiIKKworIzogZ3JlcC5jOjIxMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogdW5hYmxlIHRvIHJlYWQgJXMiCiBtc2dzdHIgIiclcyc6IGtvbm50ZSAlcyBuaWNodCBsZXNlbiIKIAotIzogZ3JlcC5jOjIxMzAgc2V0dXAuYzoxNjQgYnVpbHRpbi9jbG9uZS5jOjQxMCBidWlsdGluL2RpZmYuYzo4MQotIzogYnVpbHRpbi9ybS5jOjEzNAorIzogZ3JlcC5jOjIxNDUgc2V0dXAuYzoxNjYgYnVpbHRpbi9jbG9uZS5jOjQxMSBidWlsdGluL2RpZmYuYzo4MgorIzogYnVpbHRpbi9ybS5jOjEzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJXMnIgogbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBsZXNlbiIKIAotIzogZ3JlcC5jOjIxNDEKKyM6IGdyZXAuYzoyMTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IHNob3J0IHJlYWQiCiBtc2dzdHIgIiclcyc6IHJlYWQoKSB6dSBrdXJ6IgpAQCAtMjcxOSw0OCArNDE2MSw1MCBAQAogbXNnc3RyICJTeXN0ZW1iZWZlaGxlIC8gQWJmcmFnZW4iCiAKICM6IGhlbHAuYzozNwotbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIFN5bmNoaW5nIFJlcG9zaXRvcmllcyIKK21zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBTeW5jaW5nIFJlcG9zaXRvcmllcyIKIG1zZ3N0ciAiU3lzdGVtYmVmZWhsZSAvIFJlcG9zaXRvcmllcyBzeW5jaHJvbmlzaWVyZW4iCiAKICM6IGhlbHAuYzozOAogbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIEludGVybmFsIEhlbHBlcnMiCiBtc2dzdHIgIlN5c3RlbWJlZmVobGUgLyBJbnRlcm5lIEhpbGZzYmVmZWhsZSIKIAotIzogaGVscC5jOjI5NgorIzogaGVscC5jOjI5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJhdmFpbGFibGUgZ2l0IGNvbW1hbmRzIGluICclcyciCiBtc2dzdHIgIlZvcmhhbmRlbmUgR2l0LUJlZmVobGUgaW4gJyVzJyIKIAotIzogaGVscC5jOjMwMworIzogaGVscC5jOjMwNQogbXNnaWQgImdpdCBjb21tYW5kcyBhdmFpbGFibGUgZnJvbSBlbHNld2hlcmUgb24geW91ciAkUEFUSCIKIG1zZ3N0ciAiVm9yaGFuZGVuZSBHaXQtQmVmZWhsZSBhbmRlcnN3byBpbiBJaHJlbSAkUEFUSCIKIAotIzogaGVscC5jOjMxMgorIzogaGVscC5jOjMxNAogbXNnaWQgIlRoZXNlIGFyZSBjb21tb24gR2l0IGNvbW1hbmRzIHVzZWQgaW4gdmFyaW91cyBzaXR1YXRpb25zOiIKIG1zZ3N0ciAiQWxsZ2VtZWluZSBHaXQtQmVmZWhsZSwgdmVyd2VuZGV0IGluIHZlcnNjaGllZGVuZW4gU2l0dWF0aW9uZW46IgogCi0jOiBoZWxwLmM6MzYxIGdpdC5jOjkwCisjOiBoZWxwLmM6MzYzIGdpdC5jOjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuc3VwcG9ydGVkIGNvbW1hbmQgbGlzdGluZyB0eXBlICclcyciCiBtc2dzdHIgIk5pY2h0IHVudGVyc3TDvHR6dGUgQXJ0IHp1ciBCZWZlaGxzYXVmbGlzdHVuZyAnJXMnLiIKIAotIzogaGVscC5jOjQwOAorIzogaGVscC5jOjQwMwogbXNnaWQgIlRoZSBjb21tb24gR2l0IGd1aWRlcyBhcmU6IgogbXNnc3RyICJEaWUgYWxsZ2VtZWluZW4gR2l0LUFubGVpdHVuZ2VuIHNpbmQ6IgogCi0jOiBoZWxwLmM6NTE3CisjOiBoZWxwLmM6NTEyCiBtc2dpZCAiU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIHRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIgotbXNnc3RyICJTaWVoZSAnZ2l0IGhlbHAgPEJlZmVobD4nLCB1bSBtZWhyIMO8YmVyIGVpbmVuIHNwZXppZmlzY2hlbiBVbnRlcmJlZmVobCB6dSBsZXNlbi4iCittc2dzdHIgIiIKKyJTaWVoZSAnZ2l0IGhlbHAgPEJlZmVobD4nLCB1bSBtZWhyIMO8YmVyIGVpbmVuIHNwZXppZmlzY2hlbiBVbnRlcmJlZmVobCB6dSAiCisibGVzZW4uIgogCi0jOiBoZWxwLmM6NTIyCisjOiBoZWxwLmM6NTE3CiBtc2dpZCAiRXh0ZXJuYWwgY29tbWFuZHMiCiBtc2dzdHIgIkV4dGVybmUgQmVmZWhsZSIKIAotIzogaGVscC5jOjUzMAorIzogaGVscC5jOjUzMgogbXNnaWQgIkNvbW1hbmQgYWxpYXNlcyIKIG1zZ3N0ciAiQWxpYXMtQmVmZWhsZSIKIAotIzogaGVscC5jOjU5NAorIzogaGVscC5jOjU5NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBhcHBlYXJzIHRvIGJlIGEgZ2l0IGNvbW1hbmQsIGJ1dCB3ZSB3ZXJlIG5vdFxuIgpAQCAtMjc2OSwzMiArNDIxMywzMiBAQAogIiclcycgc2NoZWludCBlaW4gZ2l0LUJlZmVobCB6dSBzZWluLCBrb25udGUgYWJlclxuIgogIm5pY2h0IGF1c2dlZsO8aHJ0IHdlcmRlbi4gVmllbGxlaWNodCBpc3QgZ2l0LSVzIGZlaGxlcmhhZnQ/IgogCi0jOiBoZWxwLmM6NjUzCisjOiBoZWxwLmM6NjU1CiBtc2dpZCAiVWggb2guIFlvdXIgc3lzdGVtIHJlcG9ydHMgbm8gR2l0IGNvbW1hbmRzIGF0IGFsbC4iCiBtc2dzdHIgIlVoIG9oLiBLZWluZSBHaXQtQmVmZWhsZSBhdWYgSWhyZW0gU3lzdGVtIHZvcmhhbmRlbi4iCiAKLSM6IGhlbHAuYzo2NzUKKyM6IGhlbHAuYzo2NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiV0FSTklORzogWW91IGNhbGxlZCBhIEdpdCBjb21tYW5kIG5hbWVkICclcycsIHdoaWNoIGRvZXMgbm90IGV4aXN0LiIKIG1zZ3N0ciAiIgogIldBUk5VTkc6IFNpZSBoYWJlbiBHaXQtQmVmZWhsICclcycgYXVzZ2Vmw7xocnQsIHdlbGNoZXIgbmljaHQgZXhpc3RpZXJ0LiIKIAotIzogaGVscC5jOjY4MAorIzogaGVscC5jOjY4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb250aW51aW5nIHVuZGVyIHRoZSBhc3N1bXB0aW9uIHRoYXQgeW91IG1lYW50ICclcycuIgogbXNnc3RyICJTZXR6ZSBmb3J0IHVudGVyIGRlciBBbm5haG1lLCBkYXNzIFNpZSAnJXMnIG1laW50ZW4uIgogCi0jOiBoZWxwLmM6Njg1CisjOiBoZWxwLmM6Njg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbnRpbnVpbmcgaW4gJTAuMWYgc2Vjb25kcywgYXNzdW1pbmcgdGhhdCB5b3UgbWVhbnQgJyVzJy4iCiBtc2dzdHIgIlNldHplIGluICUwLjFmIFNla3VuZGVuIGZvcnQgdW50ZXIgZGVyIEFubmFobWUsIGRhc3MgU2llICclcycgbWVpbnRlbi4iCiAKLSM6IGhlbHAuYzo2OTMKKyM6IGhlbHAuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0OiAnJXMnIGlzIG5vdCBhIGdpdCBjb21tYW5kLiBTZWUgJ2dpdCAtLWhlbHAnLiIKIG1zZ3N0ciAiZ2l0OiAnJXMnIGlzdCBrZWluIEdpdC1CZWZlaGwuIFNpZWhlICdnaXQgLS1oZWxwJy4iCiAKLSM6IGhlbHAuYzo2OTcKKyM6IGhlbHAuYzo2OTkKIG1zZ2lkICIiCiAiXG4iCiAiVGhlIG1vc3Qgc2ltaWxhciBjb21tYW5kIGlzIgpAQCAtMjgwOCwxNiArNDI1MiwxNiBAQAogIlxuIgogIkRpZSDDpGhubGljaHN0ZW4gQmVmZWhsZSBzaW5kIgogCi0jOiBoZWxwLmM6NzEyCisjOiBoZWxwLmM6NzE0CiBtc2dpZCAiZ2l0IHZlcnNpb24gWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCB2ZXJzaW9uIFs8T3B0aW9uZW4+XSIKIAotIzogaGVscC5jOjc4MAorIzogaGVscC5jOjc4MwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogJXMgLSAlcyIKIG1zZ3N0ciAiJXM6ICVzIC0gJXMiCiAKLSM6IGhlbHAuYzo3ODQKKyM6IGhlbHAuYzo3ODcKIG1zZ2lkICIiCiAiXG4iCiAiRGlkIHlvdSBtZWFuIHRoaXM/IgpAQCAtMjgzMSw3ICs0Mjc1LDcgQEAKICJcbiIKICJIYWJlbiBTaWUgZWluZXMgdm9uIGRpZXNlbiBnZW1laW50PyIKIAotIzogaWRlbnQuYzozNDUKKyM6IGlkZW50LmM6MzQ5CiBtc2dpZCAiIgogIlxuIgogIioqKiBQbGVhc2UgdGVsbCBtZSB3aG8geW91IGFyZS5cbiIKQEAgLTI4NTcsNTAgKzQzMDEsOTAgQEAKICJMYXNzZW4gU2llIGRpZSBPcHRpb24gXCItLWdsb2JhbFwiIHdlZywgdW0gZGllIElkZW50aXTDpHQgbnVyXG4iCiAiZsO8ciBkaWVzZXMgUmVwb3NpdG9yeSB6dSBzZXR6ZW4uXG4iCiAKLSM6IGlkZW50LmM6MzY5CisjOiBpZGVudC5jOjM3OQogbXNnaWQgIm5vIGVtYWlsIHdhcyBnaXZlbiBhbmQgYXV0by1kZXRlY3Rpb24gaXMgZGlzYWJsZWQiCiBtc2dzdHIgImtlaW5lIEUtTWFpbCBhbmdlZ2ViZW4gdW5kIGF1dG9tYXRpc2NoZSBFcmtlbm51bmcgaXN0IGRlYWt0aXZpZXJ0IgogCi0jOiBpZGVudC5jOjM3NAorIzogaWRlbnQuYzozODQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGF1dG8tZGV0ZWN0IGVtYWlsIGFkZHJlc3MgKGdvdCAnJXMnKSIKIG1zZ3N0ciAiS29ubnRlIGRpZSBFLU1haWwtQWRyZXNzZSBuaWNodCBhdXRvbWF0aXNjaCBlcmtlbm5lbiAoJyVzJyBlcmhhbHRlbikiCiAKLSM6IGlkZW50LmM6Mzg0CisjOiBpZGVudC5jOjQwMQogbXNnaWQgIm5vIG5hbWUgd2FzIGdpdmVuIGFuZCBhdXRvLWRldGVjdGlvbiBpcyBkaXNhYmxlZCIKIG1zZ3N0ciAia2VpbiBOYW1lIGFuZ2VnZWJlbiB1bmQgYXV0b21hdGlzY2hlIEVya2VubnVuZyBpc3QgZGVha3RpdmllcnQiCiAKLSM6IGlkZW50LmM6MzkwCisjOiBpZGVudC5jOjQwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYXV0by1kZXRlY3QgbmFtZSAoZ290ICclcycpIgogbXNnc3RyICJrb25udGUgTmFtZW4gbmljaHQgYXV0b21hdGlzY2ggZXJrZW5uZW4gKCclcycgZXJoYWx0ZW4pIgogCi0jOiBpZGVudC5jOjM5OAorIzogaWRlbnQuYzo0MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZW1wdHkgaWRlbnQgbmFtZSAoZm9yIDwlcz4pIG5vdCBhbGxvd2VkIgogbXNnc3RyICJMZWVyZXIgTmFtZSBpbiBJZGVudGlmaWthdGlvbiAoZsO8ciA8JXM+KSBuaWNodCBlcmxhdWJ0LiIKIAotIzogaWRlbnQuYzo0MDQKKyM6IGlkZW50LmM6NDIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5hbWUgY29uc2lzdHMgb25seSBvZiBkaXNhbGxvd2VkIGNoYXJhY3RlcnM6ICVzIgogbXNnc3RyICJOYW1lIGJlc3RlaHQgbnVyIGF1cyBuaWNodCBlcmxhdWJ0ZW4gWmVpY2hlbjogJXMiCiAKLSM6IGlkZW50LmM6NDE5IGJ1aWx0aW4vY29tbWl0LmM6NjA2CisjOiBpZGVudC5jOjQzNiBidWlsdGluL2NvbW1pdC5jOjYzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGRhdGUgZm9ybWF0OiAlcyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXMgRGF0dW1zZm9ybWF0OiAlcyIKIAotIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MzUKLW1zZ2lkICJtdWx0aXBsZSBmaWx0ZXItc3BlY3MgY2Fubm90IGJlIGNvbWJpbmVkIgotbXNnc3RyICJNZWhyZXJlIGZpbHRlci1zcGVjcyBrw7ZubmVuIG5pY2h0IGtvbWJpbmllcnQgd2VyZGVuLiIKKyM6IGxpc3Qtb2JqZWN0cy5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICJlbnRyeSAnJXMnIGluIHRyZWUgJXMgaGFzIHRyZWUgbW9kZSwgYnV0IGlzIG5vdCBhIHRyZWUiCittc2dzdHIgIiIKKyJFaW50cmFnICclcycgaW0gVHJlZS1PYmpla3QgJXMgaGF0IFRyZWUtTW9kdXMsIGFiZXIgaXN0IGtlaW4gVHJlZS1PYmpla3QiCisKKyM6IGxpc3Qtb2JqZWN0cy5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJlbnRyeSAnJXMnIGluIHRyZWUgJXMgaGFzIGJsb2IgbW9kZSwgYnV0IGlzIG5vdCBhIGJsb2IiCittc2dzdHIgIkVpbnRyYWcgJyVzJyBpbSBUcmVlLU9iamVrdCAlcyBoYXQgQmxvYi1Nb2R1cywgYWJlciBpc3Qga2VpbiBCbG9iIgorCisjOiBsaXN0LW9iamVjdHMuYzozNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGxvYWQgcm9vdCB0cmVlIGZvciBjb21taXQgJXMiCittc2dzdHIgIktvbm50ZSBSb290LVRyZWUtT2JqZWt0IGbDvHIgQ29tbWl0ICVzIG5pY2h0IGxhZGVuLiIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIHNwYXJzZSBibG9iIGluICclcyciCittc2dzdHIgImtvbm50ZSBuaWNodCBhdWYgcGFydGllbGxlbiBCbG9iICclcycgenVncmVpZmVuIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLmM6NDk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBzcGFyc2UgZmlsdGVyIGRhdGEgaW4gJXMiCittc2dzdHIgIktvbm50ZSBwYXJ0aWVsbGUgRmlsdGVyLURhdGVuIGluICVzIG5pY2h0IHBhcnNlbi4iCiAKICM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjU4Ci1tc2dpZCAib25seSAndHJlZTowJyBpcyBzdXBwb3J0ZWQiCi1tc2dzdHIgIkVzIHdpcmQgbnVyICd0cmVlOjAnIHVudGVyc3TDvHR6dC4iCittc2dpZCAiZXhwZWN0ZWQgJ3RyZWU6PGRlcHRoPiciCittc2dzdHIgIid0cmVlOjxUaWVmZT4nIGVyd2FydGV0IgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxMzcKLW1zZ2lkICJjYW5ub3QgY2hhbmdlIHBhcnRpYWwgY2xvbmUgcHJvbWlzb3IgcmVtb3RlIgotbXNnc3RyICJLYW5uIFJlbW90ZS1SZXBvc2l0b3J5IGbDvHIgcGFydGllbGxlcyBLbG9uZW4gbmljaHQgw6RuZGVybi4iCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo3MworbXNnaWQgInNwYXJzZTpwYXRoIGZpbHRlcnMgc3VwcG9ydCBoYXMgYmVlbiBkcm9wcGVkIgorbXNnc3RyICJLZWluZSBVbnRlcnN0w7x0enVuZyBmw7xyIHNwYXJzZTpwYXRoIEZpbHRlciBtZWhyIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGZpbHRlci1zcGVjICclcyciCittc2dzdHIgIlVuZ8O8bHRpZ2UgZmlsdGVyLXNwZWMgJyVzJyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm11c3QgZXNjYXBlIGNoYXIgaW4gc3ViLWZpbHRlci1zcGVjOiAnJWMnIgorbXNnc3RyICJaZWljaGVuIGluIHN1Yi1maWx0ZXItc3BlYyBtdXNzIG1hc2tpZXJ0IHdlcmRlbjogJyVjJyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTQ0Cittc2dpZCAiZXhwZWN0ZWQgc29tZXRoaW5nIGFmdGVyIGNvbWJpbmU6IgorbXNnc3RyICJlcndhcnRldGUgZXR3YXMgbmFjaCAnY29tYmluZTonIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoyMjYKK21zZ2lkICJtdWx0aXBsZSBmaWx0ZXItc3BlY3MgY2Fubm90IGJlIGNvbWJpbmVkIgorbXNnc3RyICJNZWhyZXJlIGZpbHRlci1zcGVjcyBrw7ZubmVuIG5pY2h0IGtvbWJpbmllcnQgd2VyZGVuLiIKIAogIzogbG9ja2ZpbGUuYzoxNTEKICMsIGMtZm9ybWF0CkBAIC0yOTMxLDExNyArNDQxNSwxMTQgQEAKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCB0aGUgY2FjaGUiCiBtc2dzdHIgIkxlc2VuIGRlcyBad2lzY2hlbnNwZWljaGVycyBmZWhsZ2VzY2hsYWdlbiIKIAotIzogbWVyZ2UuYzoxMDcgcmVyZXJlLmM6NzIwIGJ1aWx0aW4vYW0uYzoxODk5IGJ1aWx0aW4vYW0uYzoxOTMzCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Mzg3IGJ1aWx0aW4vY2hlY2tvdXQuYzo3MDggYnVpbHRpbi9jbG9uZS5jOjc2NAorIzogbWVyZ2UuYzoxMDcgcmVyZXJlLmM6NzIwIGJ1aWx0aW4vYW0uYzoxODc5IGJ1aWx0aW4vYW0uYzoxOTEzCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTQxIGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDAgYnVpbHRpbi9jbG9uZS5jOjgxMAorIzogYnVpbHRpbi9zdGFzaC5jOjI2NQogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAiS29ubnRlIG5ldWUgSW5kZXgtRGF0ZWkgbmljaHQgc2NocmVpYmVuLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNTYKIG1zZ2lkICIoYmFkIGNvbW1pdClcbiIKIG1zZ3N0ciAiKHVuZ8O8bHRpZ2VyIENvbW1pdClcbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQ1CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkX2NhY2hlaW5mbyBmYWlsZWQgZm9yIHBhdGggJyVzJzsgbWVyZ2UgYWJvcnRpbmcuIgogbXNnc3RyICJhZGRfY2FjaGVpbmZvIGbDvHIgUGZhZCAnJXMnIGZlaGxnZXNjaGxhZ2VuOyBNZXJnZSB3aXJkIGFiZ2Vicm9jaGVuLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkX2NhY2hlaW5mbyBmYWlsZWQgdG8gcmVmcmVzaCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCiBtc2dzdHIgIiIKICJhZGRfY2FjaGVpbmZvIHp1ciBBa3R1YWxpc2llcnVuZyBmw7xyIFBmYWQgJyVzJyBmZWhsZ2VzY2hsYWdlbjtcbiIKICJNZXJnZSB3aXJkIGFiZ2Vicm9jaGVuLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6NDM1Ci1tc2dpZCAiZXJyb3IgYnVpbGRpbmcgdHJlZXMiCi1tc2dzdHIgIkZlaGxlciBiZWltIEVyc3RlbGxlbiBkZXIgXCJUcmVlXCItT2JqZWt0ZSIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTA2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo4NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwYXRoICclcyclcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gRXJzdGVsbGVuIGRlcyBQZmFkZXMgJyVzJyVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5MTcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyAlcyB0byBtYWtlIHJvb20gZm9yIHN1YmRpcmVjdG9yeVxuIgogbXNnc3RyICJFbnRmZXJuZSAlcywgdW0gUGxhdHogZsO8ciBVbnRlcnZlcnplaWNobmlzIHp1IHNjaGFmZmVuXG4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkzMSBtZXJnZS1yZWN1cnNpdmUuYzo5NTAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg5OSBtZXJnZS1yZWN1cnNpdmUuYzo5MTgKIG1zZ2lkICI6IHBlcmhhcHMgYSBEL0YgY29uZmxpY3Q/IgogbXNnc3RyICI6IHZpZWxsZWljaHQgZWluIFZlcnplaWNobmlzL0RhdGVpLUtvbmZsaWt0PyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTQwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAnJXMnIgogbXNnc3RyICJ2ZXJ3ZWlnZXJlLCBkYSB1bnZlcnNpb25pZXJ0ZSBEYXRlaWVuIGluICclcycgdmVybG9yZW4gZ2VoZW4gd8O8cmRlbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTgyIGJ1aWx0aW4vY2F0LWZpbGUuYzozOQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTQ5IGJ1aWx0aW4vY2F0LWZpbGUuYzo0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgJXMgJyVzJyIKIG1zZ3N0ciAia2FubiBPYmpla3QgJXMgJyVzJyBuaWNodCBsZXNlbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTg0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmxvYiBleHBlY3RlZCBmb3IgJXMgJyVzJyIKIG1zZ3N0ciAiQmxvYiBlcndhcnRldCBmw7xyICVzICclcyciCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEwMDgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnOiAlcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gw5ZmZm5lbiB2b24gJyVzJzogJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEwMTkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3ltbGluayAnJXMnOiAlcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gRXJzdGVsbGVuIGVpbmVyIHN5bWJvbGlzY2hlbiBWZXJrbsO8cGZ1bmcgZsO8ciAnJXMnOiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTAyNAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImRvIG5vdCBrbm93IHdoYXQgdG8gZG8gd2l0aCAlMDZvICVzICclcyciCiBtc2dzdHIgIndlacOfIG5pY2h0IHdhcyBtaXQgJTA2byAlcyAnJXMnIHp1IG1hY2hlbiBpc3QiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjExOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobm90IGNoZWNrZWQgb3V0KSIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gTWVyZ2Ugdm9uIFN1Ym1vZHVsICVzIChuaWNodCBhdXNnZWNoZWNrdCkuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjE5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKGNvbW1pdHMgbm90IHByZXNlbnQpIgogbXNnc3RyICJGZWhsZXIgYmVpbSBNZXJnZSB2b24gU3VibW9kdWwgJXMgKENvbW1pdHMgbmljaHQgdm9yaGFuZGVuKS4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMjYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAoY29tbWl0cyBkb24ndCBmb2xsb3cgbWVyZ2UtYmFzZSkiCiBtc2dzdHIgIkZlaGxlciBiZWltIE1lcmdlIHZvbiBTdWJtb2R1bCAlcyAoQ29tbWl0cyBmb2xnZW4ga2VpbmVyIE1lcmdlLUJhc2lzKSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIzNCBtZXJnZS1yZWN1cnNpdmUuYzoxMjQ2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjEzIG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFzdC1mb3J3YXJkaW5nIHN1Ym1vZHVsZSAlcyB0byB0aGUgZm9sbG93aW5nIGNvbW1pdDoiCiBtc2dzdHIgIlNwdWxlIFN1Ym1vZHVsICVzIHp1IGRlbSBmb2xnZW5kZW4gQ29tbWl0IHZvcjoiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMzcgbWVyZ2UtcmVjdXJzaXZlLmM6MTI0OQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxNiBtZXJnZS1yZWN1cnNpdmUuYzoxMjI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIlNwdWxlIFN1Ym1vZHVsICVzIHZvciIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3MQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChtZXJnZSBmb2xsb3dpbmcgY29tbWl0cyBub3QgZm91bmQpIgogbXNnc3RyICIiCiAiRmVobGVyIGJlaW0gTWVyZ2Ugdm9uIFN1Ym1vZHVsZSAlcyAoZGVtIE1lcmdlIG5hY2hmb2xnZW5kZSBDb21taXRzIG5pY2h0ICIKICJnZWZ1bmRlbikiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobm90IGZhc3QtZm9yd2FyZCkiCiBtc2dzdHIgIkZlaGxlciBiZWltIE1lcmdlIHZvbiBTdWJtb2R1bCAlcyAoa2VpbiBWb3JzcHVsZW4pIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjc2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU2CiBtc2dpZCAiRm91bmQgYSBwb3NzaWJsZSBtZXJnZSByZXNvbHV0aW9uIGZvciB0aGUgc3VibW9kdWxlOlxuIgogbXNnc3RyICJNw7ZnbGljaGUgQXVmbMO2c3VuZyBkZXMgTWVyZ2VzIGbDvHIgU3VibW9kdWwgZ2VmdW5kZW46XG4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHRoaXMgaXMgY29ycmVjdCBzaW1wbHkgYWRkIGl0IHRvIHRoZSBpbmRleCBmb3IgZXhhbXBsZVxuIgpAQCAtMzA1OCwzMyArNDUzOSwzMyBAQAogIlxuIgogImhpbnp1LCB1bSBkaWVzZW4gVm9yc2NobGFnIHp1IGFremVwdGllcmVuLlxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjg4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG11bHRpcGxlIG1lcmdlcyBmb3VuZCkiCiBtc2dzdHIgIkZlaGxlciBiZWltIE1lcmdlIHZvbiBTdWJtb2R1bCAlcyAobWVocmVyZSBNZXJnZXMgZ2VmdW5kZW4pIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzU4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzQxCiBtc2dpZCAiRmFpbGVkIHRvIGV4ZWN1dGUgaW50ZXJuYWwgbWVyZ2UiCiBtc2dzdHIgIkZlaGxlciBiZWkgQXVzZsO8aHJ1bmcgZGVzIGludGVybmVuIE1lcmdlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM2MworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gYWRkICVzIHRvIGRhdGFiYXNlIgogbXNnc3RyICJLb25udGUgJXMgbmljaHQgenVyIERhdGVuYmFuayBoaW56dWbDvGdlbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM5NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvLW1lcmdpbmcgJXMiCiBtc2dzdHIgImF1dG9tYXRpc2NoZXIgTWVyZ2Ugdm9uICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDE2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkVycm9yOiBSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzOyB3cml0aW5nIHRvICVzIGluc3RlYWQuIgogbXNnc3RyICIiCiAiRmVobGVyOiBWZXJ3ZWlnZXJlIHVudmVyc2lvbmllcnRlIERhdGVpIGJlaSAlcyB6dSB2ZXJsaWVyZW47XG4iCiAic2NocmVpYmUgc3RhdHRkZXNzZW4gbmFjaCAlcy4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0ODMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0ICIKQEAgLTMwOTMsNyArNDU3NCw3IEBACiAiS09ORkxJS1QgKCVzL2zDtnNjaGVuKTogJXMgZ2Vsw7ZzY2h0IGluICVzIHVuZCAlcyBpbiAlcy4gU3RhbmQgJXMgdm9uICVzIHd1cmRlICIKICJpbSBBcmJlaXRzYmVyZWljaCBnZWxhc3Nlbi4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0ODgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyB0byAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyAiCkBAIC0zMTAyLDcgKzQ1ODMsNyBAQAogIktPTkZMSUtUICglcy9sw7ZzY2hlbik6ICVzIGdlbMO2c2NodCBpbiAlcyB1bmQgJXMgbmFjaCAlcyBpbiAlcy4gU3RhbmQgJXMgdm9uICIKICIlcyB3dXJkZSBpbSBBcmJlaXRzYmVyZWljaCBnZWxhc3Nlbi4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0OTUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0ICIKQEAgLTMxMTEsNyArNDU5Miw3IEBACiAiS09ORkxJS1QgKCVzL2zDtnNjaGVuKTogJXMgZ2Vsw7ZzY2h0IGluICVzIHVuZCAlcyBpbiAlcy4gU3RhbmQgJXMgdm9uICVzIHd1cmRlICIKICJpbSBBcmJlaXRzYmVyZWljaCBiZWkgJXMgZ2VsYXNzZW4uIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTAwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgdG8gJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgIgpAQCAtMzEyMCwzMyArNDYwMSw0NiBAQAogIktPTkZMSUtUICglcy9sw7ZzY2hlbik6ICVzIGdlbMO2c2NodCBpbiAlcyB1bmQgJXMgbmFjaCAlcyBpbiAlcy4gU3RhbmQgJXMgdm9uICIKICIlcyB3dXJkZSBpbSBBcmJlaXRzYmVyZWljaCBiZWkgJXMgZ2VsYXNzZW4uIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTM0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTI2CiBtc2dpZCAicmVuYW1lIgogbXNnc3RyICJ1bWJlbmVubmVuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTM0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTI2CiBtc2dpZCAicmVuYW1lZCIKIG1zZ3N0ciAidW1iZW5hbm50IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTg4IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MzcgbWVyZ2UtcmVjdXJzaXZlLmM6MjM2OQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzEyNAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTU3NyBtZXJnZS1yZWN1cnNpdmUuYzoyNDcyIG1lcmdlLXJlY3Vyc2l2ZS5jOjMxMTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSBkaXJ0eSBmaWxlIGF0ICVzIgogbXNnc3RyICJWZXJ3ZWlnZXJlIGdlw6RuZGVydGUgRGF0ZWkgYmVpICVzIHp1IHZlcmxpZXJlbi4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MDIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlcywgZXZlbiB0aG91Z2ggaXQncyBpbiB0aGUgd2F5LiIKK21zZ3N0ciAiIgorIlZlcndlaWdlcmUgdW52ZXJzaW9uaWVydGUgRGF0ZWkgYmVpICVzIHp1IHZlcmxpZXJlbiwgYXVjaCB3ZW5uIGRpZXNlIGltIFdlZyAiCisiaXN0LiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJDT05GTElDVCAocmVuYW1lL2FkZCk6IFJlbmFtZSAlcy0+JXMgaW4gJXMuICBBZGRlZCAlcyBpbiAlcyIKK21zZ3N0ciAiIgorIktPTkZMSUtUICh1bWJlbmVubmVuL2hpbnp1ZsO8Z2VuKTogQmVuZW5uZSB1bSAlcy0+JXMgaW4gJXMuICVzIGhpbnp1Z2Vmw7xndCBpbiAiCisiJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgYSBkaXJlY3RvcnkgaW4gJXMgYWRkaW5nIGFzICVzIGluc3RlYWQiCiBtc2dzdHIgIiVzIGlzdCBlaW4gVmVyemVpY2huaXMgaW4gJXMsIGbDvGdlIGVzIHN0YXR0ZGVzc2VuIGFscyAlcyBoaW56dSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTYwNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTY4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzOyBhZGRpbmcgYXMgJXMgaW5zdGVhZCIKIG1zZ3N0ciAiIgogIlZlcndlaWdlcmUgdW52ZXJzaW9uaWVydGUgRGF0ZWkgYmVpICVzIHp1IHZlcmxpZXJlbjsgZsO8Z2Ugc3RhdHRkZXNzZW4gJXMgIgogImhpbnp1IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjMzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAocmVuYW1lL3JlbmFtZSk6IFJlbmFtZSBcIiVzXCItPlwiJXNcIiBpbiBicmFuY2ggXCIlc1wiIHJlbmFtZSBcIiVzIgpAQCAtMzE1NSwzMCArNDY0OSwxOCBAQAogIktPTkZMSUtUICh1bWJlbmVubmVuL3VtYmVuZW5uZW4pOiBCZW5lbm5lIHVtIFwiJXNcIi0+XCIlc1wiIGluIEJyYW5jaCBcIiVzXCIgIgogInVuZCBcIiVzXCItPlwiJXNcIiBpbiBCcmFuY2ggXCIlc1wiJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MzgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MTMKIG1zZ2lkICIgKGxlZnQgdW5yZXNvbHZlZCkiCiBtc2dzdHIgIiAoYmxlaWJ0IHVuYXVmZ2Vsw7ZzdCkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2OTkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiBSZW5hbWUgJXMtPiVzIGluICVzLiBSZW5hbWUgJXMtPiVzIGluICVzIgogbXNnc3RyICIiCiAiS09ORkxJS1QgKHVtYmVuZW5uZW4vdW1iZW5lbm5lbik6IEJlbmVubmUgdW0gJXMtPiVzIGluICVzLiBCZW5lbm5lIHVtICVzLT4lcyAiCiAiaW4gJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MzQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiUmVuYW1pbmcgJXMgdG8gJXMgYW5kICVzIHRvICVzIGluc3RlYWQiCi1tc2dzdHIgIkJlbmVubmUgc3RhdHRkZXNzZW4gJXMgbmFjaCAlcyB1bmQgJXMgbmFjaCAlcyB1bSIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTc0NgotIywgYy1mb3JtYXQKLW1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzLCBldmVuIHRob3VnaCBpdCdzIGluIHRoZSB3YXkuIgotbXNnc3RyICIiCi0iVmVyd2VpZ2VyZSB1bnZlcnNpb25pZXJ0ZSBEYXRlaSBiZWkgJXMgenUgdmVybGllcmVuLCBhdWNoIHdlbm4gZGllc2UgaW0gV2VnICIKLSJpc3QuIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxOTUyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoZGlyZWN0b3J5IHJlbmFtZSBzcGxpdCk6IFVuY2xlYXIgd2hlcmUgdG8gcGxhY2UgJXMgYmVjYXVzZSAiCkBAIC0zMTkxLDcgKzQ2NzMsNyBAQAogIndvYmVpXG4iCiAia2VpbmVzIGRpZXNlciBaaWVsZSBkaWUgTWVocmhlaXQgZGVyIERhdGVpZW4gZXJoaWVsdC4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5ODQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogRXhpc3RpbmcgZmlsZS9kaXIgYXQgJXMgaW4gdGhlIHdheSBvZiAiCkBAIC0zMjAyLDcgKzQ2ODQsNyBAQAogIldlZyB2b24gaW1wbGl6aXRlciBWZXJ6ZWljaG5pc3VtYmVuZW5udW5nLCBkaWUgdmVyc3VjaHQsIGVpbmVuIG9kZXIgbWVocmVyZVxuIgogIlBmYWRlIGRhaGluIHp1IHNldHplbjogJXMuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxOTk0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoaW1wbGljaXQgZGlyIHJlbmFtZSk6IENhbm5vdCBtYXAgbW9yZSB0aGFuIG9uZSBwYXRoIHRvICVzOyAiCkBAIC0zMjEzLDcgKzQ2OTUsNyBAQAogIiVzIG1hcHBlbjsgaW1wbGl6aXRlIFZlcnplaWNobmlzdW1iZW5lbm51bmdlbiB2ZXJzdWNodGVuIGRpZXNlIFBmYWRlIGRhaGluXG4iCiAienUgc2V0emVuOiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjA4NgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjE5MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiBSZW5hbWUgZGlyZWN0b3J5ICVzLT4lcyBpbiAlcy4gUmVuYW1lIGRpcmVjdG9yeSAlcy0iCkBAIC0zMjIyLDcgKzQ3MDQsNyBAQAogIktPTkZMSUtUICh1bWJlbmVubmVuL3VtYmVuZW5uZW4pOiBCZW5lbm5lIFZlcnplaWNobmlzIHVtICVzLT4lcyBpbiAlcy5cbiIKICJCZW5lbm5lIFZlcnplaWNobmlzIHVtICVzLT4lcyBpbiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjMzMQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjQzNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiV0FSTklORzogQXZvaWRpbmcgYXBwbHlpbmcgJXMgLT4gJXMgcmVuYW1lIHRvICVzLCBiZWNhdXNlICVzIGl0c2VsZiB3YXMgIgpAQCAtMzIzMSw4OSArNDcxMywxNDMgQEAKICJXQVJOVU5HOiBWZXJtZWlkZSBVbWJlbmVubnVuZyAlcyAtPiAlcyB2b24gJXMsIHdlaWwgJXMgc2VsYnN0IHVtYmVuYW5udCAiCiAid3VyZGUuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyNzM3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkNPTkZMSUNUIChyZW5hbWUvYWRkKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gJXMgYWRkZWQgaW4gJXMiCi1tc2dzdHIgIiIKLSJLT05GTElLVCAodW1iZW5lbm5lbi9oaW56dWbDvGdlbik6IEJlbmVubmUgdW0gJXMtPiVzIGluICVzLiAlcyBoaW56dWdlZsO8Z3QgaW4gIgotIiVzIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyNzYzCi0jLCBjLWZvcm1hdAotbXNnaWQgIkFkZGluZyBtZXJnZWQgJXMiCi1tc2dzdHIgIkbDvGdlIHp1c2FtbWVuZ2Vmw7xocnRlIERhdGVpICVzIGhpbnp1IgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyNzcwIG1lcmdlLXJlY3Vyc2l2ZS5jOjMxMjcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQWRkaW5nIGFzICVzIGluc3RlYWQiCi1tc2dzdHIgIkbDvGdlIHN0YXR0ZGVzc2VuIGFscyAlcyBoaW56dSIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjkzNAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjk2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgJXMiCiBtc2dzdHIgImthbm4gT2JqZWt0ICVzIG5pY2h0IGxlc2VuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyOTM3CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyOTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBpcyBub3QgYSBibG9iIgogbXNnc3RyICJPYmpla3QgJXMgaXN0IGtlaW4gQmxvYiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAwNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAyOAogbXNnaWQgIm1vZGlmeSIKIG1zZ3N0ciAiw6RuZGVybiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAwNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAyOAogbXNnaWQgIm1vZGlmaWVkIgogbXNnc3RyICJnZcOkbmRlcnQiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMTcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDAKIG1zZ2lkICJjb250ZW50IgogbXNnc3RyICJJbmhhbHQiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDQKIG1zZ2lkICJhZGQvYWRkIgogbXNnc3RyICJoaW56dWbDvGdlbi9oaW56dWbDvGdlbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA3MQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGVkICVzIChtZXJnZWQgc2FtZSBhcyBleGlzdGluZykiCiBtc2dzdHIgIiVzIGF1c2dlbGFzc2VuIChFcmdlYm5pcyBkZXMgTWVyZ2VzIGV4aXN0aWVydCBiZXJlaXRzKSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA5MyBnaXQtc3VibW9kdWxlLnNoOjg1OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA4OSBnaXQtc3VibW9kdWxlLnNoOjEwMDMKIG1zZ2lkICJzdWJtb2R1bGUiCiBtc2dzdHIgIlN1Ym1vZHVsIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDk0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUICglcyk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgogbXNnc3RyICJLT05GTElLVCAoJXMpOiBNZXJnZS1Lb25mbGlrdCBpbiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIxNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzEyMAorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgYXMgJXMgaW5zdGVhZCIKK21zZ3N0ciAiRsO8Z2Ugc3RhdHRkZXNzZW4gYWxzICVzIGhpbnp1IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYXRoIHVwZGF0ZWQ6ICVzIGFkZGVkIGluICVzIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkIGluICVzOyAiCisibW92aW5nIGl0IHRvICVzLiIKK21zZ3N0ciAiIgorIlBmYWQgYWt0dWFsaXNpZXJ0OiAlcyBoaW56dWdlZsO8Z3QgaW4gJXMgaW5uZXJoYWxiIGVpbmVzIFZlcnplaWNobmlzc2VzLCBkYXMgIgorInVtYmVuYW5udCB3dXJkZSBpbiAlczsgVmVyc2NoaWViZSBlcyBuYWNoICVzLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGZpbGUgbG9jYXRpb24pOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCAiCisiaW4gJXMsIHN1Z2dlc3RpbmcgaXQgc2hvdWxkIHBlcmhhcHMgYmUgbW92ZWQgdG8gJXMuIgorbXNnc3RyICIiCisiS09ORkxJS1QgKFNwZWljaGVyb3J0KTogJXMgaGluenVnZWbDvGd0IGluICVzIGlubmVyaGFsYiBlaW5lcyBWZXJ6ZWljaG5pc3NlcywgIgorImRhcyB1bWJlbmFubnQgd3VyZGUgaW4gJXMsIGVzIHNvbGx0ZSB2aWVsbGVpY2h0IG5hY2ggJXMgdmVyc2Nob2JlbiB3ZXJkZW4uIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYXRoIHVwZGF0ZWQ6ICVzIHJlbmFtZWQgdG8gJXMgaW4gJXMsIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkIGluICIKKyIlczsgbW92aW5nIGl0IHRvICVzLiIKK21zZ3N0ciAiIgorIlBmYWQgYWt0dWFsaXNpZXJ0OiAlcyB1bWJlbmFubnQgbmFjaCAlcyBpbiAlcywgaW5uZXJoYWxiIGVpbmVzICIKKyJWZXJ6ZWljaG5pc3NlcywgZGFzIHVtYmVuYW5udCB3dXJkZSBpbiAlczsgVmVyc2NoaWViZSBlcyBuYWNoICVzLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGZpbGUgbG9jYXRpb24pOiAlcyByZW5hbWVkIHRvICVzIGluICVzLCBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCAiCisid2FzIHJlbmFtZWQgaW4gJXMsIHN1Z2dlc3RpbmcgaXQgc2hvdWxkIHBlcmhhcHMgYmUgbW92ZWQgdG8gJXMuIgorbXNnc3RyICIiCisiS09ORkxJS1QgKFNwZWljaGVyb3J0KTogJXMgdW1iZW5hbm50IG5hY2ggJXMgaW4gJXMsIGlubmVyaGFsYiBlaW5lcyAiCisiVmVyemVpY2huaXNzZXMsIGRhcyB1bWJlbmFubnQgd3VyZGUgaW4gJXMsIGVzIHNvbGx0ZSB2aWVsbGVpY2h0IG5hY2ggJXMgIgorInZlcnNjaG9iZW4gd2VyZGVuLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyAlcyIKIG1zZ3N0ciAiRW50ZmVybmUgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNDIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNTAKIG1zZ2lkICJmaWxlL2RpcmVjdG9yeSIKIG1zZ3N0ciAiRGF0ZWkvVmVyemVpY2huaXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNDgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNTUKIG1zZ2lkICJkaXJlY3RvcnkvZmlsZSIKIG1zZ3N0ciAiVmVyemVpY2huaXMvRGF0ZWkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNTUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ09ORkxJQ1QgKCVzKTogVGhlcmUgaXMgYSBkaXJlY3Rvcnkgd2l0aCBuYW1lICVzIGluICVzLiBBZGRpbmcgJXMgYXMgJXMiCiBtc2dzdHIgIiIKICJLT05GTElLVCAoJXMpOiBFcyBleGlzdGllcnQgYmVyZWl0cyBlaW4gVmVyemVpY2huaXMgJXMgaW4gJXMuIEbDvGdlICVzIGFscyAlcyAiCiAiaGluenUuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjY0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFkZGluZyAlcyIKIG1zZ3N0ciAiRsO8Z2UgJXMgaGluenUiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMDAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKGFkZC9hZGQpOiBNZXJnZSBjb25mbGljdCBpbiAlcyIKK21zZ3N0ciAiS09ORkxJS1QgKGhpbnp1ZsO8Z2VuL2hpbnp1ZsO8Z2VuKTogTWVyZ2UtS29uZmxpa3QgaW4gJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MjQKK21zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUhIgorbXNnc3RyICJCZXJlaXRzIGFrdHVlbGwhIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNDMzCisjLCBjLWZvcm1hdAorbXNnaWQgIm1lcmdpbmcgb2YgdHJlZXMgJXMgYW5kICVzIGZhaWxlZCIKK21zZ3N0ciAiWnVzYW1tZW5mw7xocmVuIGRlciBcIlRyZWVcIi1PYmpla3RlICVzIHVuZCAlcyBmZWhsZ2VzY2hsYWdlbiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzNworbXNnaWQgIk1lcmdpbmc6IgorbXNnc3RyICJNZXJnZToiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yOiIKK21zZ2lkX3BsdXJhbCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yczoiCittc2dzdHJbMF0gIiV1IGdlbWVpbnNhbWVuIFZvcmfDpG5nZXItQ29tbWl0IGdlZnVuZGVuIgorbXNnc3RyWzFdICIldSBnZW1laW5zYW1lIFZvcmfDpG5nZXItQ29tbWl0cyBnZWZ1bmRlbiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzYwMAorbXNnaWQgIm1lcmdlIHJldHVybmVkIG5vIGNvbW1pdCIKK21zZ3N0ciAiTWVyZ2UgaGF0IGtlaW5lbiBDb21taXQgenVyw7xja2dlZ2ViZW4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM2NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtMzMyMywxNjcgKzQ4NTksMTg4IEBACiAiw7xiZXJzY2hyaWViZW4gd2VyZGVuOlxuIgogIiAgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMTEKLW1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUhIgotbXNnc3RyICJCZXJlaXRzIGFrdHVlbGwhIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMzIwCi0jLCBjLWZvcm1hdAotbXNnaWQgIm1lcmdpbmcgb2YgdHJlZXMgJXMgYW5kICVzIGZhaWxlZCIKLW1zZ3N0ciAiWnVzYW1tZW5mw7xocmVuIGRlciBcIlRyZWVcIi1PYmpla3RlICVzIHVuZCAlcyBmZWhsZ2VzY2hsYWdlbiIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQxOQotbXNnaWQgIk1lcmdpbmc6IgotbXNnc3RyICJNZXJnZToiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MzIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yOiIKLW1zZ2lkX3BsdXJhbCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yczoiCi1tc2dzdHJbMF0gIiV1IGdlbWVpbnNhbWVuIFZvcmfDpG5nZXItQ29tbWl0IGdlZnVuZGVuIgotbXNnc3RyWzFdICIldSBnZW1laW5zYW1lIFZvcmfDpG5nZXItQ29tbWl0cyBnZWZ1bmRlbiIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQ3MQotbXNnaWQgIm1lcmdlIHJldHVybmVkIG5vIGNvbW1pdCIKLW1zZ3N0ciAiTWVyZ2UgaGF0IGtlaW5lbiBDb21taXQgenVyw7xja2dlZ2ViZW4iCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1MzcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnIgogbXNnc3RyICJLb25udGUgT2JqZWt0ICclcycgbmljaHQgcGFyc2VuLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzU1MyBidWlsdGluL21lcmdlLmM6NjkxIGJ1aWx0aW4vbWVyZ2UuYzo4NDkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3NzQgYnVpbHRpbi9tZXJnZS5jOjY5NyBidWlsdGluL21lcmdlLmM6ODc3CiBtc2dpZCAiVW5hYmxlIHRvIHdyaXRlIGluZGV4LiIKIG1zZ3N0ciAiS29ubnRlIEluZGV4IG5pY2h0IHNjaHJlaWJlbi4iCiAKLSM6IG1pZHguYzo2NQorIzogbWlkeC5jOjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggZmlsZSAlcyBpcyB0b28gc21hbGwiCiBtc2dzdHIgIm11bHRpLXBhY2staW5kZXgtRGF0ZWkgJXMgaXN0IHp1IGtsZWluLiIKIAotIzogbWlkeC5jOjgxCisjOiBtaWR4LmM6ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBzaWduYXR1cmUgMHglMDh4IGRvZXMgbm90IG1hdGNoIHNpZ25hdHVyZSAweCUwOHgiCi1tc2dzdHIgIm11bHRpLXBhY2staW5kZXgtU2lnbmF0dXIgMHglMDh4IHN0aW1tdCBuaWNodCBtaXQgU2lnbmF0dXIgMHglMDh4IMO8YmVyZWluLiIKK21zZ3N0ciAiIgorIm11bHRpLXBhY2staW5kZXgtU2lnbmF0dXIgMHglMDh4IHN0aW1tdCBuaWNodCBtaXQgU2lnbmF0dXIgMHglMDh4IMO8YmVyZWluLiIKIAotIzogbWlkeC5jOjg2CisjOiBtaWR4LmM6ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCB2ZXJzaW9uICVkIG5vdCByZWNvZ25pemVkIgogbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4LVZlcnNpb24gJWQgbmljaHQgZXJrYW5udC4iCiAKLSM6IG1pZHguYzo5MQorIzogbWlkeC5jOjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImhhc2ggdmVyc2lvbiAldSBkb2VzIG5vdCBtYXRjaCIKIG1zZ3N0ciAiSGFzaC1WZXJzaW9uICV1IHN0aW1tdCBuaWNodCDDvGJlcmVpbi4iCiAKLSM6IG1pZHguYzoxMDUKKyM6IG1pZHguYzoxMDgKIG1zZ2lkICJpbnZhbGlkIGNodW5rIG9mZnNldCAodG9vIGxhcmdlKSIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgQ2h1bmstT2Zmc2V0ICh6dSBncm/DnykiCiAKLSM6IG1pZHguYzoxMjkKKyM6IG1pZHguYzoxMzIKIG1zZ2lkICJ0ZXJtaW5hdGluZyBtdWx0aS1wYWNrLWluZGV4IGNodW5rIGlkIGFwcGVhcnMgZWFybGllciB0aGFuIGV4cGVjdGVkIgogbXNnc3RyICJBYnNjaGxpZcOfZW5kZSBtdWx0aS1wYWNrLWluZGV4IENodW5rLUlkIGVyc2NoZWludCBlaGVyIGFscyBlcndhcnRldC4iCiAKLSM6IG1pZHguYzoxNDIKKyM6IG1pZHguYzoxNDUKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgcGFjay1uYW1lIGNodW5rIgogbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4IGZlaGx0IGVyZm9yZGVybGljaGVyIHBhY2stbmFtZSBDaHVuay4iCiAKLSM6IG1pZHguYzoxNDQKKyM6IG1pZHguYzoxNDcKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgT0lEIGZhbm91dCBjaHVuayIKIG1zZ3N0ciAibXVsdGktcGFjay1pbmRleCBmZWhsdCBlcmZvcmRlcmxpY2hlciBPSUQgZmFub3V0IENodW5rLiIKIAotIzogbWlkeC5jOjE0NgorIzogbWlkeC5jOjE0OQogbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBPSUQgbG9va3VwIGNodW5rIgogbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4IGZlaGx0IGVyZm9yZGVybGljaGVyIE9JRCBsb29rdXAgQ2h1bmsuIgogCi0jOiBtaWR4LmM6MTQ4CisjOiBtaWR4LmM6MTUxCiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIG9iamVjdCBvZmZzZXRzIGNodW5rIgogbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4IGZlaGx0IGVyZm9yZGVybGljaGVyIG9iamVjdCBvZmZzZXQgQ2h1bmsuIgogCi0jOiBtaWR4LmM6MTYyCisjOiBtaWR4LmM6MTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggcGFjayBuYW1lcyBvdXQgb2Ygb3JkZXI6ICclcycgYmVmb3JlICclcyciCiBtc2dzdHIgIkZhbHNjaGUgUmVpaGVuZm9sZ2UgYmVpIG11bHRpLXBhY2staW5kZXggUGFjay1OYW1lbjogJyVzJyB2b3IgJyVzJyIKIAotIzogbWlkeC5jOjIwNQorIzogbWlkeC5jOjIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFjay1pbnQtaWQ6ICV1ICgldSB0b3RhbCBwYWNrcykiCiBtc2dzdHIgIlVuZ8O8bHRpZ2UgcGFjay1pbnQtaWQ6ICV1ICgldSBQYWtldGUgaW5zZ2VzYW10KSIKIAotIzogbWlkeC5jOjI0NgorIzogbWlkeC5jOjI2MAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggc3RvcmVzIGEgNjQtYml0IG9mZnNldCwgYnV0IG9mZl90IGlzIHRvbyBzbWFsbCIKLW1zZ3N0ciAibXVsdGktcGFjay1pbmRleCBzcGVpY2hlcnQgZWluZW4gNjQtQml0IE9mZnNldCwgYWJlciBvZmZfdCBpc3QgenUga2xlaW4uIgorbXNnc3RyICIiCisibXVsdGktcGFjay1pbmRleCBzcGVpY2hlcnQgZWluZW4gNjQtQml0IE9mZnNldCwgYWJlciBvZmZfdCBpc3QgenUga2xlaW4uIgogCi0jOiBtaWR4LmM6MjcxCisjOiBtaWR4LmM6Mjg4CiBtc2dpZCAiZXJyb3IgcHJlcGFyaW5nIHBhY2tmaWxlIGZyb20gbXVsdGktcGFjay1pbmRleCIKIG1zZ3N0ciAiRmVobGVyIGJlaSBWb3JiZXJlaXR1bmcgZGVyIFBhY2tkYXRlaSBhdXMgbXVsdGktcGFjay1pbmRleC4iCiAKLSM6IG1pZHguYzo0MDcKKyM6IG1pZHguYzo0NzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGFkZCBwYWNrZmlsZSAnJXMnIgogbXNnc3RyICJGZWhsZXIgYmVpbSBIaW56dWbDvGdlbiB2b24gUGFja2RhdGVpICclcycuIgogCi0jOiBtaWR4LmM6NDEzCisjOiBtaWR4LmM6NDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2staW5kZXggJyVzJyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gw5ZmZm5lbiB2b24gcGFjay1pbmRleCAnJXMnIgogCi0jOiBtaWR4LmM6NTA3CisjOiBtaWR4LmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBsb2NhdGUgb2JqZWN0ICVkIGluIHBhY2tmaWxlIgogbXNnc3RyICJGZWhsZXIgYmVpbSBMb2thbGlzaWVyZW4gdm9uIE9iamVrdCAlZCBpbiBQYWNrZGF0ZWkuIgogCi0jOiBtaWR4LmM6OTQzCisjOiBtaWR4LmM6ODQyCittc2dpZCAiQWRkaW5nIHBhY2tmaWxlcyB0byBtdWx0aS1wYWNrLWluZGV4IgorbXNnc3RyICJQYWNrZGF0ZWllbiB6dW0gbXVsdGktcGFjay1pbmRleCBoaW56dWbDvGdlbiIKKworIzogbWlkeC5jOjg3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaWQgbm90IHNlZSBwYWNrLWZpbGUgJXMgdG8gZHJvcCIKK21zZ3N0ciAiUGFjay1EYXRlaSAlcyB6dW0gV2VnbGFzc2VuIG5pY2h0IGdlZnVuZGVuIgorCisjOiBtaWR4LmM6OTczCittc2dpZCAiV3JpdGluZyBjaHVua3MgdG8gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAiQ2h1bmtzIHp1bSBtdWx0aS1wYWNrLWluZGV4IHNjaHJlaWJlbiIKKworIzogbWlkeC5jOjEwNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNsZWFyIG11bHRpLXBhY2staW5kZXggYXQgJXMiCiBtc2dzdHIgIkZlaGxlciBiZWltIEzDtnNjaGVuIGRlcyBtdWx0aS1wYWNrLWluZGV4IGJlaSAlcyIKIAotIzogbWlkeC5jOjk4MQorIzogbWlkeC5jOjExMDgKK21zZ2lkICJMb29raW5nIGZvciByZWZlcmVuY2VkIHBhY2tmaWxlcyIKK21zZ3N0ciAiU3VjaGUgbmFjaCByZWZlcmVuemllcnRlbiBQYWNrLURhdGVpZW4iCisKKyM6IG1pZHguYzoxMTIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJvaWQgZmFub3V0IG91dCBvZiBvcmRlcjogZmFub3V0WyVkXSA9ICU8UFJJeDMyPiA+ICU8UFJJeDMyPiA9IGZhbm91dFslZF0iCi1tc2dzdHIgIlVuZ8O8bHRpZ2Ugb2lkIGZhbm91dCBSZWloZW5mb2xnZTogZmFub3V0WyVkXSA9ICU8UFJJeDMyPiA+ICU8UFJJeDMyPiA9IGZhbm91dFslZF0iCittc2dzdHIgIiIKKyJVbmfDvGx0aWdlIG9pZCBmYW5vdXQgUmVpaGVuZm9sZ2U6IGZhbm91dFslZF0gPSAlPFBSSXgzMj4gPiAlPFBSSXgzMj4gPSAiCisiZmFub3V0WyVkXSIKIAotIzogbWlkeC5jOjk5MgorIzogbWlkeC5jOjExMjgKK21zZ2lkICJWZXJpZnlpbmcgT0lEIG9yZGVyIGluIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIlZlcmlmaXppZXJlIE9JRC1SZWloZW5mb2xnZSBpbSBtdWx0aS1wYWNrLWluZGV4IgorCisjOiBtaWR4LmM6MTEzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJvaWQgbG9va3VwIG91dCBvZiBvcmRlcjogb2lkWyVkXSA9ICVzID49ICVzID0gb2lkWyVkXSIKIG1zZ3N0ciAiVW5nw7xsdGlnZSBvaWQgbG9va3VwIFJlaWhlbmZvbGdlOiBvaWRbJWRdID0gJXMgPj0gJXMgPSBvaWRbJWRdIgogCi0jOiBtaWR4LmM6OTk2CisjOiBtaWR4LmM6MTE1NworbXNnaWQgIlNvcnRpbmcgb2JqZWN0cyBieSBwYWNrZmlsZSIKK21zZ3N0ciAiU29ydGllcmUgT2JqZWt0ZSBuYWNoIFBhY2stRGF0ZWkiCisKKyM6IG1pZHguYzoxMTY0CiBtc2dpZCAiVmVyaWZ5aW5nIG9iamVjdCBvZmZzZXRzIgogbXNnc3RyICLDnGJlcnByw7xmZSBPYmpla3QtT2Zmc2V0cyIKIAotIzogbWlkeC5jOjEwMDQKKyM6IG1pZHguYzoxMTgwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBsb2FkIHBhY2sgZW50cnkgZm9yIG9pZFslZF0gPSAlcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gTGFkZW4gZGVzIFBhY2stRWludHJhZ3MgZsO8ciBvaWRbJWRdID0gJXMiCiAKLSM6IG1pZHguYzoxMDEwCisjOiBtaWR4LmM6MTE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBwYWNrLWluZGV4IGZvciBwYWNrZmlsZSAlcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gTGFkZW4gZGVzIFBhY2stSW5kZXggZsO8ciBQYWNrZGF0ZWkgJXMiCiAKLSM6IG1pZHguYzoxMDE5CisjOiBtaWR4LmM6MTE5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbmNvcnJlY3Qgb2JqZWN0IG9mZnNldCBmb3Igb2lkWyVkXSA9ICVzOiAlPFBSSXg2ND4gIT0gJTxQUkl4NjQ+IgogbXNnc3RyICJGYWxzY2hlciBPYmpla3QtT2Zmc2V0IGbDvHIgb2lkWyVkXSA9ICVzOiAlPFBSSXg2ND4gIT0gJTxQUkl4NjQ+IgogCi0jOiBuYW1lLWhhc2guYzo1MzIKKyM6IG1pZHguYzoxMjIwCittc2dpZCAiQ291bnRpbmcgcmVmZXJlbmNlZCBvYmplY3RzIgorbXNnc3RyICJSZWZlcmVuemllcnRlIE9iamVrdGUgesOkaGxlbiIKKworIzogbWlkeC5jOjEyMzAKK21zZ2lkICJGaW5kaW5nIGFuZCBkZWxldGluZyB1bnJlZmVyZW5jZWQgcGFja2ZpbGVzIgorbXNnc3RyICJTdWNoZW4gdW5kIEzDtnNjaGVuIHZvbiB1bnJlZmVyZW56aWVydGVuIFBhY2stRGF0ZWllbiIKKworIzogbWlkeC5jOjEzODgKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgcGFjay1vYmplY3RzIgorbXNnc3RyICJLb25udGUgJ3BhY2stb2JqZWN0cycgbmljaHQgYXVzZsO8aHJlbiIKKworIzogbWlkeC5jOjE0MDcKK21zZ2lkICJjb3VsZCBub3QgZmluaXNoIHBhY2stb2JqZWN0cyIKK21zZ3N0ciAiS29ubnRlICdwYWNrLW9iamVjdHMnIG5pY2h0IGJlZW5kZW4iCisKKyM6IG5hbWUtaGFzaC5jOjUzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxhenlfZGlyIHRocmVhZDogJXMiCiBtc2dzdHIgIkthbm4gbGF6eV9kaXIgVGhyZWFkIG5pY2h0IGVyemV1Z2VuOiAlcyIKIAotIzogbmFtZS1oYXNoLmM6NTU0CisjOiBuYW1lLWhhc2guYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsYXp5X25hbWUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiS2FubiBsYXp5X25hbWUgVGhyZWFkIG5pY2h0IGVyemV1Z2VuOiAlcyIKIAotIzogbmFtZS1oYXNoLmM6NTYwCisjOiBuYW1lLWhhc2guYzo1NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGpvaW4gbGF6eV9uYW1lIHRocmVhZDogJXMiCiBtc2dzdHIgIkthbm4gbGF6eV9uYW1lIFRocmVhZCBuaWNodCBiZWl0cmV0ZW46ICVzIgogCi0jOiBub3Rlcy1tZXJnZS5jOjI3NQorIzogbm90ZXMtbWVyZ2UuYzoyNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBwcmV2aW91cyBub3RlcyBtZXJnZSAoJXMgZXhpc3RzKS5cbiIKQEAgLTM0OTgsMjIgKzUwNTUsMjIgQEAKICJNZXJnZVxuIgogInZvbiBOb3RpemVuIGJlZ2lubmVuLiIKIAotIzogbm90ZXMtbWVyZ2UuYzoyODIKKyM6IG5vdGVzLW1lcmdlLmM6Mjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBub3RlcyBtZXJnZSAoJXMgZXhpc3RzKS4iCiBtc2dzdHIgIlNpZSBoYWJlbiBJaHJlbiBNZXJnZSB2b24gTm90aXplbiBuaWNodCBhYmdlc2NobG9zc2VuICglcyBleGlzdGllcnQpLiIKIAotIzogbm90ZXMtdXRpbHMuYzo0NQorIzogbm90ZXMtdXRpbHMuYzo0NgogbXNnaWQgIkNhbm5vdCBjb21taXQgdW5pbml0aWFsaXplZC91bnJlZmVyZW5jZWQgbm90ZXMgdHJlZSIKIG1zZ3N0ciAiIgogIkthbm4gdW5pbml0aWFsaXNpZXJ0ZXMvdW5yZWZlcmVuemllcnRlcyBOb3Rpei1WZXJ6ZWljaG5pcyBuaWNodCBjb21taXR0ZW4uIgogCi0jOiBub3Rlcy11dGlscy5jOjEwNAorIzogbm90ZXMtdXRpbHMuYzoxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkIG5vdGVzLnJld3JpdGVNb2RlIHZhbHVlOiAnJXMnIgogbXNnc3RyICJVbmfDvGx0aWdlciBub3Rlcy5yZXdyaXRlTW9kZSBXZXJ0OiAnJXMnIgogCi0jOiBub3Rlcy11dGlscy5jOjExNAorIzogbm90ZXMtdXRpbHMuYzoxMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gcmV3cml0ZSBub3RlcyBpbiAlcyAob3V0c2lkZSBvZiByZWZzL25vdGVzLykiCiBtc2dzdHIgIiIKQEAgLTM1MjMsMTIgKzUwODAsMTIgQEAKICMuIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSwgdGhlIHNlY29uZCAlcyBpcwogIy4gaXRzIHZhbHVlLgogIy4KLSM6IG5vdGVzLXV0aWxzLmM6MTQ0CisjOiBub3Rlcy11dGlscy5jOjE0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgJXMgdmFsdWU6ICclcyciCiBtc2dzdHIgIlVuZ8O8bHRpZ2VyICVzIFdlcnQ6ICclcyciCiAKLSM6IG9iamVjdC5jOjU0CisjOiBvYmplY3QuYzo1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9iamVjdCB0eXBlIFwiJXNcIiIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgT2JqZWt0dHlwIFwiJXNcIiIKQEAgLTM1NDgsMzAgKzUxMDUsOTIgQEAKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2Ugb2JqZWN0OiAlcyIKIG1zZ3N0ciAiS29ubnRlIE9iamVrdCAnJXMnIG5pY2h0IHBhcnNlbi4iCiAKLSM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzcKKyM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzgKICMsIGMtZm9ybWF0Ci1tc2dpZCAic2hhMSBtaXNtYXRjaCAlcyIKLW1zZ3N0ciAiU0hBLTEgcGFzc3QgbmljaHQgenUgJXMiCittc2dpZCAiaGFzaCBtaXNtYXRjaCAlcyIKK21zZ3N0ciAiSGFzaCBzdGltbXQgbmljaHQgbWl0ICVzIMO8YmVyZWluLiIKIAotIzogcGFja2ZpbGUuYzo2MDcKKyM6IHBhY2tmaWxlLmM6NjI5CiBtc2dpZCAib2Zmc2V0IGJlZm9yZSBlbmQgb2YgcGFja2ZpbGUgKGJyb2tlbiAuaWR4PykiCiBtc2dzdHIgIk9mZnNldCB2b3IgRW5kZSBkZXIgUGFja2RhdGVpIChmZWhsZXJoYWZ0ZSBJbmRleGRhdGVpPykiCiAKLSM6IHBhY2tmaWxlLmM6MTg2NAorIzogcGFja2ZpbGUuYzoxODk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9mZnNldCBiZWZvcmUgc3RhcnQgb2YgcGFjayBpbmRleCBmb3IgJXMgKGNvcnJ1cHQgaW5kZXg/KSIKIG1zZ3N0ciAiT2Zmc2V0IHZvciBCZWdpbm4gZGVzIFBhY2stSW5kZXggZsO8ciAlcyAoYmVzY2jDpGRpZ3RlciBJbmRleD8pIgogCi0jOiBwYWNrZmlsZS5jOjE4NjgKKyM6IHBhY2tmaWxlLmM6MTkwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJvZmZzZXQgYmV5b25kIGVuZCBvZiBwYWNrIGluZGV4IGZvciAlcyAodHJ1bmNhdGVkIGluZGV4PykiCiBtc2dzdHIgIk9mZnNldCBoaW50ZXIgRW5kZSBkZXMgUGFjay1JbmRleCBmw7xyICVzIChhYmdlc2Nobml0dGVuZXIgSW5kZXg/KSIKIAotIzogcGFyc2Utb3B0aW9ucy5jOjY3MgorIzogcGFjay1iaXRtYXAuYzo4MDAgcGFjay1iaXRtYXAuYzo4MDYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBnZXQgc2l6ZSBvZiAlcyIKK21zZ3N0ciAiS29ubnRlIEdyw7bDn2Ugdm9uICVzIG5pY2h0IGJlc3RpbW1lbi4iCisKKyM6IHBhcnNlLW9wdGlvbnMuYzozOAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZXF1aXJlcyBhIHZhbHVlIgorbXNnc3RyICIlcyBlcmZvcmRlcnQgZWluZW4gV2VydC4iCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAlcyIKK21zZ3N0ciAiJXMgaXN0IGlua29tcGF0aWJlbCBtaXQgJXMuIgorCisjOiBwYXJzZS1vcHRpb25zLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgOiBpbmNvbXBhdGlibGUgd2l0aCBzb21ldGhpbmcgZWxzZSIKK21zZ3N0ciAiJXM6IGlua29tcGF0aWJlbCBtaXQgZXR3YXMgYW5kZXJlbSIKKworIzogcGFyc2Utb3B0aW9ucy5jOjkyIHBhcnNlLW9wdGlvbnMuYzo5NiBwYXJzZS1vcHRpb25zLmM6MzE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRha2VzIG5vIHZhbHVlIgorbXNnc3RyICIlcyBlcndhcnRldCBrZWluZW4gV2VydCIKKworIzogcGFyc2Utb3B0aW9ucy5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzbid0IGF2YWlsYWJsZSIKK21zZ3N0ciAiJXMgaXN0IG5pY2h0IHZlcmbDvGdiYXIuIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MjE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBub24tbmVnYXRpdmUgaW50ZWdlciB2YWx1ZSB3aXRoIGFuIG9wdGlvbmFsIGsvbS9nIHN1ZmZpeCIKK21zZ3N0ciAiIgorIiVzIGVyd2FydGV0IGVpbmVuIG5pY2h0LW5lZ2F0aXZlbiBJbnRlZ2VyLVdlcnQgbWl0IGVpbmVtIG9wdGlvbmFsZW4gay9tL2cgIgorIlN1ZmZpeCIKKworIzogcGFyc2Utb3B0aW9ucy5jOjM4NgorIywgYy1mb3JtYXQKK21zZ2lkICJhbWJpZ3VvdXMgb3B0aW9uOiAlcyAoY291bGQgYmUgLS0lcyVzIG9yIC0tJXMlcykiCittc2dzdHIgIk1laHJkZXV0aWdlIE9wdGlvbjogJXMgKGthbm4gLS0lcyVzIG9kZXIgLS0lcyVzIHNlaW4pIgorCisjOiBwYXJzZS1vcHRpb25zLmM6NDIwIHBhcnNlLW9wdGlvbnMuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIHlvdSBtZWFuIGAtLSVzYCAod2l0aCB0d28gZGFzaGVzKT8iCittc2dzdHIgIk1laW50ZW4gU2llIGAtLSVzYCAobWl0IHp3ZWkgU3RyaWNoZW4pPyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJVbmJla2FubnRlIE9wdGlvbjogYCVzJyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHN3aXRjaCBgJWMnIgorbXNnc3RyICJVbmJla2FubnRlciBTY2hhbHRlciBgJWMnIgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gbm9uLWFzY2lpIG9wdGlvbiBpbiBzdHJpbmc6IGAlcyciCittc2dzdHIgIlVuYmVrYW5udGUgbmljaHQtQXNjaWkgT3B0aW9uIGluIFN0cmluZzogYCVzJyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg4NQogbXNnaWQgIi4uLiIKIG1zZ3N0ciAiLi4uIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NjkxCisjOiBwYXJzZS1vcHRpb25zLmM6OTA0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVzYWdlOiAlcyIKIG1zZ3N0ciAiVmVyd2VuZHVuZzogJXMiCkBAIC0zNTc5LDU5ICs1MTk4LDc0IEBACiAjLiBUUkFOU0xBVE9SUzogdGhlIGNvbG9uIGhlcmUgc2hvdWxkIGFsaWduIHdpdGggdGhlCiAjLiBvbmUgaW4gInVzYWdlOiAlcyIgdHJhbnNsYXRpb24uCiAjLgotIzogcGFyc2Utb3B0aW9ucy5jOjY5NworIzogcGFyc2Utb3B0aW9ucy5jOjkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICBvcjogJXMiCiBtc2dzdHIgIiAgICAgIG9kZXI6ICVzIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzAwCisjOiBwYXJzZS1vcHRpb25zLmM6OTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlcyIKIG1zZ3N0ciAiICAgICVzIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzM5CisjOiBwYXJzZS1vcHRpb25zLmM6OTUyCiBtc2dpZCAiLU5VTSIKIG1zZ3N0ciAiLU5VTSIKIAotIzogcGFyc2Utb3B0aW9ucy1jYi5jOjM3CisjOiBwYXJzZS1vcHRpb25zLmM6OTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImFsaWFzIG9mIC0tJXMiCittc2dzdHIgIkFsaWFzIGbDvHIgLS0lcyIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjIwIHBhcnNlLW9wdGlvbnMtY2IuYzoyNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICJPcHRpb24gYCVzJyBlcndhcnRldCBlaW5lbiBudW1lcmlzY2hlbiBXZXJ0LiIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBleHBpcmF0aW9uIGRhdGUgJyVzJyIKIG1zZ3N0ciAiRmVobGVyaGFmdGVzIEFibGF1ZmRhdHVtICclcyciCiAKLSM6IHBhcnNlLW9wdGlvbnMtY2IuYzoxMDkKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIFwiYWx3YXlzXCIsIFwiYXV0b1wiLCBvciBcIm5ldmVyXCIiCittc2dzdHIgIk9wdGlvbiBgJXMnIGVyd2FydGV0IFwiYWx3YXlzXCIsIFwiYXV0b1wiIG9kZXIgXCJuZXZlclwiLiIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjEzMCBwYXJzZS1vcHRpb25zLWNiLmM6MTQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAnJXMnIgogbXNnc3RyICJmZWhsZXJoYWZ0ZXIgT2JqZWt0LU5hbWUgJyVzJyIKIAotIzogcGF0aC5jOjg5NAorIzogcGF0aC5jOjkxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgbWFrZSAlcyB3cml0YWJsZSBieSBncm91cCIKIG1zZ3N0ciAiS29ubnRlIEdydXBwZW5zY2hyZWlicmVjaHQgZsO8ciAlcyBuaWNodCBzZXR6ZW4uIgogCi0jOiBwYXRoc3BlYy5jOjEyOQorIzogcGF0aHNwZWMuYzoxMzAKIG1zZ2lkICJFc2NhcGUgY2hhcmFjdGVyICdcXCcgbm90IGFsbG93ZWQgYXMgbGFzdCBjaGFyYWN0ZXIgaW4gYXR0ciB2YWx1ZSIKIG1zZ3N0ciAiRXNjYXBlLVplaWNoZW4gJ1xcJyBhbHMgbGV0enRlcyBaZWljaGVuIGluIEF0dHJpYnV0d2VydCBuaWNodCBlcmxhdWJ0IgogCi0jOiBwYXRoc3BlYy5jOjE0NworIzogcGF0aHNwZWMuYzoxNDgKIG1zZ2lkICJPbmx5IG9uZSAnYXR0cjonIHNwZWNpZmljYXRpb24gaXMgYWxsb3dlZC4iCiBtc2dzdHIgIkVzIGlzdCBudXIgZWluZSBBbmdhYmUgdm9uICdhdHRyOicgZXJsYXVidC4iCiAKLSM6IHBhdGhzcGVjLmM6MTUwCisjOiBwYXRoc3BlYy5jOjE1MQogbXNnaWQgImF0dHIgc3BlYyBtdXN0IG5vdCBiZSBlbXB0eSIKIG1zZ3N0ciAiQW5nYWJlIHZvbiAnYXR0cjonIGRhcmYgbmljaHQgbGVlciBzZWluIgogCi0jOiBwYXRoc3BlYy5jOjE5MworIzogcGF0aHNwZWMuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBhdHRyaWJ1dGUgbmFtZSAlcyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgQXR0cmlidXRuYW1lICVzIgogCi0jOiBwYXRoc3BlYy5jOjI1OAorIzogcGF0aHNwZWMuYzoyNTkKIG1zZ2lkICJnbG9iYWwgJ2dsb2InIGFuZCAnbm9nbG9iJyBwYXRoc3BlYyBzZXR0aW5ncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICIiCiAiR2xvYmFsZSBFaW5zdGVsbHVuZ2VuIHp1ciBQZmFkc3BlemlmaWthdGlvbiAnZ2xvYicgdW5kICdub2dsb2InIHNpbmQgIgogImlua29tcGF0aWJlbC4iCiAKLSM6IHBhdGhzcGVjLmM6MjY1CisjOiBwYXRoc3BlYy5jOjI2NgogbXNnaWQgIiIKICJnbG9iYWwgJ2xpdGVyYWwnIHBhdGhzcGVjIHNldHRpbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggYWxsIG90aGVyIGdsb2JhbCAiCiAicGF0aHNwZWMgc2V0dGluZ3MiCkBAIC0zNjM5LDEzMCArNTI3MywyMDQgQEAKICJHbG9iYWxlIEVpbnN0ZWxsdW5nIHp1ciBQZmFkc3BlemlmaWthdGlvbiAnbGl0ZXJhbCcgaXN0IGlua29tcGF0aWJlbFxuIgogIm1pdCBhbGxlbiBhbmRlcmVuIE9wdGlvbmVuLiIKIAotIzogcGF0aHNwZWMuYzozMDUKKyM6IHBhdGhzcGVjLmM6MzA2CiBtc2dpZCAiaW52YWxpZCBwYXJhbWV0ZXIgZm9yIHBhdGhzcGVjIG1hZ2ljICdwcmVmaXgnIgogbXNnc3RyICJ1bmfDvGx0aWdlciBQYXJhbWV0ZXIgZsO8ciBQZmFkc3BlemlmaWthdGlvbnNhbmdhYmUgJ3ByZWZpeCciCiAKLSM6IHBhdGhzcGVjLmM6MzI2CisjOiBwYXRoc3BlYy5jOjMyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHBhdGhzcGVjIG1hZ2ljICclLipzJyBpbiAnJXMnIgogbXNnc3RyICJ1bmfDvGx0aWdlIFBmYWRzcGV6aWZpa2F0aW9uc2FuZ2FiZSAnJS4qcycgaW4gJyVzJyIKIAotIzogcGF0aHNwZWMuYzozMzEKKyM6IHBhdGhzcGVjLmM6MzMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1pc3NpbmcgJyknIGF0IHRoZSBlbmQgb2YgcGF0aHNwZWMgbWFnaWMgaW4gJyVzJyIKIG1zZ3N0ciAiRmVobGVuZGVzICcpJyBhbSBFbmRlIGRlciBQZmFkc3BlemlmaWthdGlvbnNhbmdhYmUgaW4gJyVzJyIKIAotIzogcGF0aHNwZWMuYzozNjkKKyM6IHBhdGhzcGVjLmM6MzcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuaW1wbGVtZW50ZWQgcGF0aHNwZWMgbWFnaWMgJyVjJyBpbiAnJXMnIgogbXNnc3RyICJuaWNodCB1bnRlcnN0w7x0enRlIFBmYWRzcGV6aWZpa2F0aW9uc2FuZ2FiZSAnJWMnIGluICclcyciCiAKLSM6IHBhdGhzcGVjLmM6NDI4CisjOiBwYXRoc3BlYy5jOjQyOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogJ2xpdGVyYWwnIGFuZCAnZ2xvYicgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiJXM6ICdsaXRlcmFsJyB1bmQgJ2dsb2InIHNpbmQgaW5rb21wYXRpYmVsIgogCi0jOiBwYXRoc3BlYy5jOjQ0MQorIzogcGF0aHNwZWMuYzo0NDIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJXM6ICclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IgotbXNnc3RyICIlczogJyVzJyBsaWVndCBhdcOfZXJoYWxiIGRlcyBSZXBvc2l0b3JpZXMiCittc2dpZCAiJXM6ICclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IGF0ICclcyciCittc2dzdHIgIiVzOiAnJXMnIGxpZWd0IGF1w59lcmhhbGIgZGVzIFJlcG9zaXRvcmllcyB2b24gJyVzJyIKIAotIzogcGF0aHNwZWMuYzo1MTUKKyM6IHBhdGhzcGVjLmM6NTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgKG1uZW1vbmljOiAnJWMnKSIKIG1zZ3N0ciAiJyVzJyAoS8O8cnplbDogJyVjJykiCiAKLSM6IHBhdGhzcGVjLmM6NTI1CisjOiBwYXRoc3BlYy5jOjUyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogcGF0aHNwZWMgbWFnaWMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvbW1hbmQ6ICVzIgogbXNnc3RyICIiCiAiJXM6IFBmYWRzcGV6aWZpa2F0aW9uc2FuZ2FiZSB3aXJkIHZvbiBkaWVzZW0gQmVmZWhsIG5pY2h0IHVudGVyc3TDvHR6dDogJXMiCiAKLSM6IHBhdGhzcGVjLmM6NTkyCisjOiBwYXRoc3BlYy5jOjU5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCiBtc2dzdHIgIlBmYWRzcGV6aWZpa2F0aW9uICclcycgaXN0IGhpbnRlciBlaW5lciBzeW1ib2xpc2NoZW4gVmVya27DvHBmdW5nIgogCi0jOiBwa3QtbGluZS5jOjEwNAorIzogcGF0aHNwZWMuYzo2MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBpcyBiYWRseSBxdW90ZWQ6ICVzIgorbXNnc3RyICJaZWlsZSBlbnRow6RsdCBmYWxzY2hlIEFuZsO8aHJ1bmdzemVpY2hlbjogJXMiCisKKyM6IHBrdC1saW5lLmM6OTIKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmx1c2ggcGFja2V0IgorbXNnc3RyICJLb25udGUgRmx1c2gtUGFrZXQgbmljaHQgc2NocmVpYmVuLiIKKworIzogcGt0LWxpbmUuYzo5OQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBkZWxpbSBwYWNrZXQiCittc2dzdHIgIktvbm50ZSBEZWxpbS1QYWtldCBuaWNodCBzY2hyZWliZW4uIgorCisjOiBwa3QtbGluZS5jOjEwNgogbXNnaWQgImZsdXNoIHBhY2tldCB3cml0ZSBmYWlsZWQiCiBtc2dzdHIgIkZsdXNoIGJlaW0gU2NocmVpYmVuIGRlcyBQYWtldHMgZmVobGdlc2NobGFnZW4uIgogCi0jOiBwa3QtbGluZS5jOjE0MiBwa3QtbGluZS5jOjIyOAorIzogcGt0LWxpbmUuYzoxNDYgcGt0LWxpbmUuYzoyMzIKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogaW1wb3NzaWJseSBsb25nIGxpbmUiCiBtc2dzdHIgIlByb3Rva29sbGZlaGxlcjogdW5tw7ZnbGljaCBsYW5nZSBaZWlsZSIKIAotIzogcGt0LWxpbmUuYzoxNTggcGt0LWxpbmUuYzoxNjAKKyM6IHBrdC1saW5lLmM6MTYyIHBrdC1saW5lLmM6MTY0CiBtc2dpZCAicGFja2V0IHdyaXRlIHdpdGggZm9ybWF0IGZhaWxlZCIKIG1zZ3N0ciAiU2NocmVpYmVuIGRlcyBQYWtldHMgbWl0IEZvcm1hdCBmZWhsZ2VzY2hsYWdlbi4iCiAKLSM6IHBrdC1saW5lLmM6MTkyCisjOiBwa3QtbGluZS5jOjE5NgogbXNnaWQgInBhY2tldCB3cml0ZSBmYWlsZWQgLSBkYXRhIGV4Y2VlZHMgbWF4IHBhY2tldCBzaXplIgogbXNnc3RyICIiCiAiU2NocmVpYmVuIGRlcyBQYWtldHMgZmVobGdlc2NobGFnZW4gLSBEYXRlbiDDvGJlcnNjaHJlaXRlbiBtYXhpbWFsZSBQYWtldGdyw7bDn2UiCiAKLSM6IHBrdC1saW5lLmM6MTk5IHBrdC1saW5lLmM6MjA2CisjOiBwa3QtbGluZS5jOjIwMyBwa3QtbGluZS5jOjIxMAogbXNnaWQgInBhY2tldCB3cml0ZSBmYWlsZWQiCiBtc2dzdHIgIlNjaHJlaWJlbiBkZXMgUGFrZXRzIGZlaGxnZXNjaGxhZ2VuLiIKIAotIzogcGt0LWxpbmUuYzoyOTEKKyM6IHBrdC1saW5lLmM6Mjk1CiBtc2dpZCAicmVhZCBlcnJvciIKIG1zZ3N0ciAiTGVzZWZlaGxlciIKIAotIzogcGt0LWxpbmUuYzoyOTkKKyM6IHBrdC1saW5lLmM6MzAzCiBtc2dpZCAidGhlIHJlbW90ZSBlbmQgaHVuZyB1cCB1bmV4cGVjdGVkbHkiCiBtc2dzdHIgIkRpZSBHZWdlbnNlaXRlIGhhdCB1bmVyd2FydGV0IGFiZ2Vicm9jaGVuLiIKIAotIzogcGt0LWxpbmUuYzozMjcKKyM6IHBrdC1saW5lLmM6MzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sIGVycm9yOiBiYWQgbGluZSBsZW5ndGggY2hhcmFjdGVyOiAlLjRzIgogbXNnc3RyICJQcm90b2tvbGxmZWhsZXI6IHVuZ8O8bHRpZ2VzIFplaWNoZW4gZsO8ciBaZWlsZW5sw6RuZ2U6ICUuNHMiCiAKLSM6IHBrdC1saW5lLmM6MzM3IHBrdC1saW5lLmM6MzQyCisjOiBwa3QtbGluZS5jOjM0MSBwa3QtbGluZS5jOjM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIGxpbmUgbGVuZ3RoICVkIgogbXNnc3RyICJQcm90b2tvbGxmZWhsZXI6IHVuZ8O8bHRpZ2UgWmVpbGVubMOkbmdlICVkIgogCi0jOiBwcmVsb2FkLWluZGV4LmM6MTE4CisjOiBwa3QtbGluZS5jOjM2MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdGUgZXJyb3I6ICVzIgorbXNnc3RyICJGZWhsZXIgYW0gYW5kZXJlbiBFbmRlOiAlcyIKKworIzogcHJlbG9hZC1pbmRleC5jOjExOQogbXNnaWQgIlJlZnJlc2hpbmcgaW5kZXgiCiBtc2dzdHIgIkFrdHVhbGlzaWVyZSBJbmRleCIKIAotIzogcHJlbG9hZC1pbmRleC5jOjEzNworIzogcHJlbG9hZC1pbmRleC5jOjEzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRocmVhZGVkIGxzdGF0OiAlcyIKIG1zZ3N0ciAiS2FubiBUaHJlYWQgZsO8ciBsc3RhdCBuaWNodCBlcnpldWdlbjogJXMiCiAKLSM6IHByZXR0eS5jOjk2MgorIzogcHJldHR5LmM6OTgxCiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIC0tcHJldHR5IGZvcm1hdCIKIG1zZ3N0ciAiS29ubnRlIC0tcHJldHR5IEZvcm1hdCBuaWNodCBwYXJzZW4uIgogCi0jOiByYW5nZS1kaWZmLmM6NTYKKyM6IHByb21pc29yLXJlbW90ZS5jOjIzCittc2dpZCAiUmVtb3RlIHdpdGggbm8gVVJMIgorbXNnc3RyICJSZW1vdGUtUmVwb3NpdG9yeSBvaG5lIFVSTCIKKworIzogcHJvbWlzb3ItcmVtb3RlLmM6NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvbWlzb3IgcmVtb3RlIG5hbWUgY2Fubm90IGJlZ2luIHdpdGggJy8nOiAlcyIKK21zZ3N0ciAiUHJvbWlzb3ItUmVtb3RlLU5hbWUga2FubiBuaWNodCBtaXQgJy8nIGJlZ2lubmVuOiAlcyIKKworIzogcmFuZ2UtZGlmZi5jOjc1CiBtc2dpZCAiY291bGQgbm90IHN0YXJ0IGBsb2dgIgogbXNnc3RyICJLb25udGUgYGxvZ2AgbmljaHQgc3RhcnRlbi4iCiAKLSM6IHJhbmdlLWRpZmYuYzo1OQorIzogcmFuZ2UtZGlmZi5jOjc3CiBtc2dpZCAiY291bGQgbm90IHJlYWQgYGxvZ2Agb3V0cHV0IgogbXNnc3RyICJLb25udGUgQXVzZ2FiZSB2b24gYGxvZ2AgbmljaHQgbGVzZW4uIgogCi0jOiByYW5nZS1kaWZmLmM6NzQgc2VxdWVuY2VyLmM6NDc2NAorIzogcmFuZ2UtZGlmZi5jOjk2IHNlcXVlbmNlci5jOjUwMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbW1pdCAnJXMnIgogbXNnc3RyICJLb25udGUgQ29tbWl0ICclcycgbmljaHQgcGFyc2VuLiIKIAotIzogcmFuZ2UtZGlmZi5jOjIyNAorIzogcmFuZ2UtZGlmZi5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgZ2l0IGhlYWRlciAnJS4qcyciCittc2dzdHIgIktvbm50ZSBHaXQtSGVhZGVyICclLipzJyBuaWNodCBwYXJzZW4uIgorCisjOiByYW5nZS1kaWZmLmM6Mjg1CiBtc2dpZCAiZmFpbGVkIHRvIGdlbmVyYXRlIGRpZmYiCiBtc2dzdHIgIkZlaGxlciBiZWltIEdlbmVyaWVyZW4gZGVzIERpZmZzLiIKIAotIzogcmFuZ2UtZGlmZi5jOjQ1NSByYW5nZS1kaWZmLmM6NDU3CisjOiByYW5nZS1kaWZmLmM6NTE4IHJhbmdlLWRpZmYuYzo1MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGxvZyBmb3IgJyVzJyIKIG1zZ3N0ciAiS29ubnRlIExvZyBmw7xyICclcycgbmljaHQgcGFyc2VuLiIKIAotIzogcmVhZC1jYWNoZS5jOjE0OTAKKyM6IHJlYWQtY2FjaGUuYzo2ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAid2lsbCBub3QgYWRkIGZpbGUgYWxpYXMgJyVzJyAoJyVzJyBhbHJlYWR5IGV4aXN0cyBpbiBpbmRleCkiCittc2dzdHIgIiIKKyJEYXRlaWFsaWFzICclcycgd2lyZCBuaWNodCBoaW56dWdlZsO8Z3QgKCclcycgZXhpc3RpZXJ0IGJlcmVpdHMgaW0gSW5kZXgpLiIKKworIzogcmVhZC1jYWNoZS5jOjY5NgorbXNnaWQgImNhbm5vdCBjcmVhdGUgYW4gZW1wdHkgYmxvYiBpbiB0aGUgb2JqZWN0IGRhdGFiYXNlIgorbXNnc3RyICJLYW5uIGtlaW5lbiBsZWVyZW4gQmxvYiBpbiBkaWUgT2JqZWt0ZGF0ZW5iYW5rIHNjaHJlaWJlbi4iCisKKyM6IHJlYWQtY2FjaGUuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbiBvbmx5IGFkZCByZWd1bGFyIGZpbGVzLCBzeW1ib2xpYyBsaW5rcyBvciBnaXQtZGlyZWN0b3JpZXMiCittc2dzdHIgIiIKKyIlczogS2FubiBudXIgcmVndWzDpHJlIERhdGVpZW4sIHN5bWJvbGlzY2hlIExpbmtzIG9kZXIgR2l0LVZlcnplaWNobmlzc2UgIgorImhpbnp1ZsO8Z2VuLiIKKworIzogcmVhZC1jYWNoZS5jOjcyMworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IGhhdmUgYSBjb21taXQgY2hlY2tlZCBvdXQiCittc2dzdHIgIiclcycgaGF0IGtlaW5lbiBDb21taXQgYXVzZ2VjaGVja3QiCisKKyM6IHJlYWQtY2FjaGUuYzo3NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluZGV4IGZpbGUgJyVzJyIKK21zZ3N0ciAiS29ubnRlIERhdGVpICclcycgbmljaHQgaW5kaXppZXJlbi4iCisKKyM6IHJlYWQtY2FjaGUuYzo3OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFkZCAnJXMnIHRvIGluZGV4IgorbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBkZW0gSW5kZXggaGluenVmw7xnZW4uIgorCisjOiByZWFkLWNhY2hlLmM6ODA1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICclcyciCittc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGxlc2VuLiIKKworIzogcmVhZC1jYWNoZS5jOjEzMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBhcHBlYXJzIGFzIGJvdGggYSBmaWxlIGFuZCBhcyBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiJyVzJyBzY2hlaW50IGVpbmUgRGF0ZWkgdW5kIGVpbiBWZXJ6ZWljaG5pcyB6dSBzZWluLiIKKworIzogcmVhZC1jYWNoZS5jOjE1MzYKIG1zZ2lkICJSZWZyZXNoIGluZGV4IgogbXNnc3RyICJBa3R1YWxpc2llcmUgSW5kZXgiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNjA0CisjOiByZWFkLWNhY2hlLmM6MTY1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiaW5kZXgudmVyc2lvbiBzZXQsIGJ1dCB0aGUgdmFsdWUgaXMgaW52YWxpZC5cbiIKQEAgLTM3NzEsNyArNTQ3OSw3IEBACiAiaW5kZXgudmVyc2lvbiBnZXNldHp0LCBhYmVyIFdlcnQgdW5nw7xsdGlnLlxuIgogIlZlcndlbmRlIFZlcnNpb24gJWkiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNjE0CisjOiByZWFkLWNhY2hlLmM6MTY2MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiR0lUX0lOREVYX1ZFUlNJT04gc2V0LCBidXQgdGhlIHZhbHVlIGlzIGludmFsaWQuXG4iCkBAIC0zNzgwLDYwICs1NDg4LDE2MiBAQAogIkdJVF9JTkRFWF9WRVJTSU9OIGdlc2V0enQsIGFiZXIgV2VydCB1bmfDvGx0aWcuXG4iCiAiVmVyd2VuZGUgVmVyc2lvbiAlaSIKIAotIzogcmVhZC1jYWNoZS5jOjE3OTIKKyM6IHJlYWQtY2FjaGUuYzoxNzE3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaWduYXR1cmUgMHglMDh4IgorbXNnc3RyICJVbmfDvGx0aWdlIFNpZ25hdHVyIDB4JTA4eCIKKworIzogcmVhZC1jYWNoZS5jOjE3MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJWQiCittc2dzdHIgIlVuZ8O8bHRpZ2UgSW5kZXgtVmVyc2lvbiAlZCIKKworIzogcmVhZC1jYWNoZS5jOjE3MjkKK21zZ2lkICJiYWQgaW5kZXggZmlsZSBzaGExIHNpZ25hdHVyZSIKK21zZ3N0ciAiVW5nw7xsdGlnZSBTSEExLVNpZ25hdHVyIGRlciBJbmRleC1EYXRlaS4iCisKKyM6IHJlYWQtY2FjaGUuYzoxNzU5CisjLCBjLWZvcm1hdAorbXNnaWQgImluZGV4IHVzZXMgJS40cyBleHRlbnNpb24sIHdoaWNoIHdlIGRvIG5vdCB1bmRlcnN0YW5kIgorbXNnc3RyICJJbmRleCB2ZXJ3ZW5kZXQgRXJ3ZWl0ZXJ1bmcgJS40cywgd2VsY2hlIHdpciBuaWNodCB1bnRlcnN0w7x0emVuLiIKKworIzogcmVhZC1jYWNoZS5jOjE3NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJS40cyBleHRlbnNpb24iCittc2dzdHIgIklnbm9yaWVyZSBFcndlaXRlcnVuZyAlLjRzIgorCisjOiByZWFkLWNhY2hlLmM6MTc5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGluZGV4IGVudHJ5IGZvcm1hdCAweCUwOHgiCittc2dzdHIgIlVuYmVrYW5udGVzIEZvcm1hdCBmw7xyIEluZGV4LUVpbnRyYWcgMHglMDh4IgorCisjOiByZWFkLWNhY2hlLmM6MTgxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgbmFtZSBmaWVsZCBpbiB0aGUgaW5kZXgsIG5lYXIgcGF0aCAnJXMnIgogbXNnc3RyICJVbmfDvGx0aWdlcyBOYW1lbnNmZWxkIGltIEluZGV4LCBpbiBkZXIgTsOkaGUgdm9uIFBmYWQgJyVzJy4iCiAKLSM6IHJlYWQtY2FjaGUuYzoxOTYwIHJlcmVyZS5jOjU2NSByZXJlcmUuYzo1OTkgcmVyZXJlLmM6MTExMSBidWlsdGluL2FkZC5jOjQ1OAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjI4OSBidWlsdGluL2NoZWNrb3V0LmM6NTg1Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTUzIGJ1aWx0aW4vY2xlYW4uYzo5NTQgYnVpbHRpbi9jb21taXQuYzozNDMKLSM6IGJ1aWx0aW4vZGlmZi10cmVlLmM6MTE1IGJ1aWx0aW4vZ3JlcC5jOjQ4OSBidWlsdGluL212LmM6MTQ0Ci0jOiBidWlsdGluL3Jlc2V0LmM6MjQ0IGJ1aWx0aW4vcm0uYzoyNzAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjMyOQorIzogcmVhZC1jYWNoZS5jOjE4NzEKK21zZ2lkICJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBpbiBpbmRleCIKK21zZ3N0ciAiVW5nZW9yZG5ldGUgU3RhZ2UtRWludHLDpGdlIGltIEluZGV4LiIKKworIzogcmVhZC1jYWNoZS5jOjE4NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgc3RhZ2UgZW50cmllcyBmb3IgbWVyZ2VkIGZpbGUgJyVzJyIKK21zZ3N0ciAiTWVocmVyZSBTdGFnZS1FaW50csOkZ2UgZsO8ciB6dXNhbW1lbmdlZsO8aHJ0ZSBEYXRlaSAnJXMnLiIKKworIzogcmVhZC1jYWNoZS5jOjE4NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5vcmRlcmVkIHN0YWdlIGVudHJpZXMgZm9yICclcyciCittc2dzdHIgIlVuZ2VvcmRuZXRlIFN0YWdlLUVpbnRyw6RnZSBmw7xyICclcycuIgorCisjOiByZWFkLWNhY2hlLmM6MTk4MyByZWFkLWNhY2hlLmM6MjI3MSByZXJlcmUuYzo1NjUgcmVyZXJlLmM6NTk5IHJlcmVyZS5jOjExMTEKKyM6IHN1Ym1vZHVsZS5jOjE2MTkgYnVpbHRpbi9hZGQuYzo1MzIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NzAgYnVpbHRpbi9jaGVja291dC5jOjY1NiBidWlsdGluL2NsZWFuLmM6OTY3CisjOiBidWlsdGluL2NvbW1pdC5jOjM2NyBidWlsdGluL2RpZmYtdHJlZS5jOjEyMCBidWlsdGluL2dyZXAuYzo0ODUKKyM6IGJ1aWx0aW4vbXYuYzoxNDUgYnVpbHRpbi9yZXNldC5jOjI0NiBidWlsdGluL3JtLmM6MjkwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MzMyCiBtc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IgogbXNnc3RyICJJbmRleC1EYXRlaSBiZXNjaMOkZGlndCIKIAotIzogcmVhZC1jYWNoZS5jOjIxMDEKKyM6IHJlYWQtY2FjaGUuYzoyMTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCiBtc2dzdHIgIkthbm4gVGhyZWFkIGbDvHIgbG9hZF9jYWNoZV9lbnRyaWVzIG5pY2h0IGVyemV1Z2VuOiAlcyIKIAotIzogcmVhZC1jYWNoZS5jOjIxMTQKKyM6IHJlYWQtY2FjaGUuYzoyMTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBqb2luIGxvYWRfY2FjaGVfZW50cmllcyB0aHJlYWQ6ICVzIgogbXNnc3RyICJLYW5uIFRocmVhZCBmw7xyIGxvYWRfY2FjaGVfZW50cmllcyBuaWNodCBlcnpldWdlbjogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzoyMjAxCisjOiByZWFkLWNhY2hlLmM6MjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW5kZXggZmlsZSBvcGVuIGZhaWxlZCIKK21zZ3N0ciAiJXM6IMOWZmZuZW4gZGVyIEluZGV4LURhdGVpIGZlaGxnZXNjaGxhZ2VuLiIKKworIzogcmVhZC1jYWNoZS5jOjIxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbm5vdCBzdGF0IHRoZSBvcGVuIGluZGV4IgorbXNnc3RyICIlczogS2FubiBnZcO2ZmZuZXRlbiBJbmRleCBuaWNodCBsZXNlbi4iCisKKyM6IHJlYWQtY2FjaGUuYzoyMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbmRleCBmaWxlIHNtYWxsZXIgdGhhbiBleHBlY3RlZCIKK21zZ3N0ciAiJXM6IEluZGV4LURhdGVpIGlzdCBrbGVpbmVyIGFscyBlcndhcnRldC4iCisKKyM6IHJlYWQtY2FjaGUuYzoyMTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gbWFwIGluZGV4IGZpbGUiCittc2dzdHIgIiVzOiBLb25udGUgSW5kZXgtRGF0ZWkgbmljaHQgZWlubGVzZW4uIgorCisjOiByZWFkLWNhY2hlLmM6MjIyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxvYWRfaW5kZXhfZXh0ZW5zaW9ucyB0aHJlYWQ6ICVzIgogbXNnc3RyICJLYW5uIFRocmVhZCBmw7xyIGxvYWRfaW5kZXhfZXh0ZW5zaW9ucyBuaWNodCBlcnpldWdlbjogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzoyMjI4CisjOiByZWFkLWNhY2hlLmM6MjI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gam9pbiBsb2FkX2luZGV4X2V4dGVuc2lvbnMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiS2FubiBUaHJlYWQgZsO8ciBsb2FkX2luZGV4X2V4dGVuc2lvbnMgbmljaHQgYmVpdHJldGVuOiAlcyIKIAotIzogcmVhZC1jYWNoZS5jOjI5ODIgc2VxdWVuY2VyLmM6NDcyNyB3cmFwcGVyLmM6NjU4IGJ1aWx0aW4vbWVyZ2UuYzoxMDg2CisjOiByZWFkLWNhY2hlLmM6MjI4MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZnJlc2hlbiBzaGFyZWQgaW5kZXggJyVzJyIKK21zZ3N0ciAiS29ubnRlIGdldGVpbHRlbiBJbmRleCAnJXMnIG5pY2h0IGFrdHVhbGlzaWVyZW4uIgorCisjOiByZWFkLWNhY2hlLmM6MjMzMAorIywgYy1mb3JtYXQKK21zZ2lkICJicm9rZW4gaW5kZXgsIGV4cGVjdCAlcyBpbiAlcywgZ290ICVzIgorbXNnc3RyICJGZWhsZXJoYWZ0ZXIgSW5kZXguIEVyd2FydGV0ZSAlcyBpbiAlcywgZXJoaWVsdCAlcy4iCisKKyM6IHJlYWQtY2FjaGUuYzozMDI2IHN0cmJ1Zi5jOjExNjAgd3JhcHBlci5jOjYyMiBidWlsdGluL21lcmdlLmM6MTEyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY2xvc2UgJyVzJyIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgc2NobGllw59lbi4iCiAKLSM6IHJlYWQtY2FjaGUuYzozMDU1IHNlcXVlbmNlci5jOjIyMDMgc2VxdWVuY2VyLmM6MzU5MgorIzogcmVhZC1jYWNoZS5jOjMxMjkgc2VxdWVuY2VyLmM6MjM0MyBzZXF1ZW5jZXIuYzozOTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0ICclcyciCiBtc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGxlc2VuLiIKIAotIzogcmVhZC1jYWNoZS5jOjMwNjgKKyM6IHJlYWQtY2FjaGUuYzozMTQyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuIGdpdCBkaXI6ICVzIgogbXNnc3RyICJrb25udGUgR2l0LVZlcnplaWNobmlzIG5pY2h0IMO2ZmZuZW46ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6MzA4MAorIzogcmVhZC1jYWNoZS5jOjMxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVubGluazogJXMiCiBtc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGVudGZlcm5lbi4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjEwCisjOiByZWFkLWNhY2hlLmM6MzE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZml4IHBlcm1pc3Npb24gYml0cyBvbiAnJXMnIgorbXNnc3RyICJLb25udGUgWnVncmlmZnNiZXJlY2h0aWd1bmcgYXVmICclcycgbmljaHQgc2V0emVuLiIKKworIzogcmVhZC1jYWNoZS5jOjMzMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbm5vdCBkcm9wIHRvIHN0YWdlICMwIgorbXNnc3RyICIlczogS2FubiBuaWNodCBhdWYgU3R1ZmUgIzAgd2VjaHNlbG4uIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMQorbXNnaWQgIiIKKyJZb3UgY2FuIGZpeCB0aGlzIHdpdGggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLSIKKyJjb250aW51ZScuXG4iCisiT3IgeW91IGNhbiBhYm9ydCB0aGUgcmViYXNlIHdpdGggJ2dpdCByZWJhc2UgLS1hYm9ydCcuXG4iCittc2dzdHIgIiIKKyJTaWUga8O2bm5lbiBkYXMgbWl0ICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyBiZWhlYmVuLiBGw7xocmVuIFNpZSBkYW5hY2hcbiIKKyInZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJyBhdXMuXG4iCisiT2RlciBTaWUga8O2bm5lbiBkZW4gUmViYXNlIG1pdCAnZ2l0IHJlYmFzZSAtLWFib3J0JyBhYmJyZWNoZW4uXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bnJlY29nbml6ZWQgc2V0dGluZyAlcyBmb3Igb3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmluZy4iCittc2dzdHIgIiIKKyJOaWNodCBlcmthbm50ZSBFaW5zdGVsbHVuZyAlcyBmw7xyIE9wdGlvbiByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4gIgorIklnbm9yaWVyZS4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQyCiBtc2dpZCAiIgogIlxuIgogIkNvbW1hbmRzOlxuIgpAQCAtMzg2MCwyMiArNTY3MCwzMiBAQAogInIsIHJld29yZCA8Q29tbWl0PiA9IENvbW1pdCB2ZXJ3ZW5kZW4sIGFiZXIgQ29tbWl0LUJlc2NocmVpYnVuZyBiZWFyYmVpdGVuXG4iCiAiZSwgZWRpdCA8Q29tbWl0PiA9IENvbW1pdCB2ZXJ3ZW5kZW4sIGFiZXIgenVtIE5hY2hiZXNzZXJuIGFuaGFsdGVuXG4iCiAicywgc3F1YXNoIDxDb21taXQ+ID0gQ29tbWl0IHZlcndlbmRlbiwgYWJlciBtaXQgdm9yaGVyaWdlbSBDb21taXQgdmVyZWluZW5cbiIKLSJmLCBmaXh1cCA8Q29tbWl0PiA9IHdpZSBcInNxdWFzaFwiLCBhYmVyIGRpZXNlIENvbW1pdC1CZXNjaHJlaWJ1bmcgdmVyd2VyZmVuXG4iCisiZiwgZml4dXAgPENvbW1pdD4gPSB3aWUgXCJzcXVhc2hcIiwgYWJlciBkaWVzZSBDb21taXQtQmVzY2hyZWlidW5nICIKKyJ2ZXJ3ZXJmZW5cbiIKICJ4LCBleGVjIDxDb21taXQ+ID0gQmVmZWhsIChSZXN0IGRlciBaZWlsZSkgbWl0dGVscyBTaGVsbCBhdXNmw7xocmVuXG4iCi0iYiwgYnJlYWsgPSBoaWVyIGFuaGFsdGVuIChSZWJhc2Ugc3DDpHRlciBtaXQgJ2dpdCByZWJhc2UgLS1jb250aW51ZScgZm9ydHNldHplbilcbiIKKyJiLCBicmVhayA9IGhpZXIgYW5oYWx0ZW4gKFJlYmFzZSBzcMOkdGVyIG1pdCAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJyAiCisiZm9ydHNldHplbilcbiIKICJkLCBkcm9wIDxDb21taXQ+ID0gQ29tbWl0IGVudGZlcm5lblxuIgogImwsIGxhYmVsIDxMYWJlbD4gPSBha3R1ZWxsZW4gSEVBRCBtaXQgTGFiZWwgdmVyc2VoZW5cbiIKICJ0LCByZXNldCA8TGFiZWw+ID0gSEVBRCB6dSBlaW5lbSBMYWJlbCB1bXNldHplblxuIgogIm0sIG1lcmdlIFstQyA8Q29tbWl0PiB8IC1jIDxDb21taXQ+XSA8TGFiZWw+IFsjIDxlaW5lWmVpbGU+XVxuIgogIi4gICAgICAgTWVyZ2UtQ29tbWl0IG1pdCBkZXIgb3JpZ2luYWxlbiBNZXJnZS1Db21taXQtQmVzY2hyZWlidW5nIGVyc3RlbGxlblxuIgotIi4gICAgICAgKG9kZXIgZGllIGVpbmUgWmVpbGUsIHdlbm4ga2VpbmUgb3JpZ2luYWxlIE1lcmdlLUNvbW1pdC1CZXNjaHJlaWJ1bmdcbiIKKyIuICAgICAgIChvZGVyIGRpZSBlaW5lIFplaWxlLCB3ZW5uIGtlaW5lIG9yaWdpbmFsZSBNZXJnZS1Db21taXQtIgorIkJlc2NocmVpYnVuZ1xuIgogIi4gICAgICAgc3BlemlmaXppZXJ0IGlzdCkuIEJlbnV0emVuIFNpZSAtYyA8Q29tbWl0PiB6dW0gQmVhcmJlaXRlbiBkZXJcbiIKICIuICAgICAgIENvbW1pdC1CZXNjaHJlaWJ1bmcuXG4iCiAiXG4iCiAiRGllc2UgWmVpbGVuIGvDtm5uZW4gdW1zb3J0aWVydCB3ZXJkZW47IFNpZSB3ZXJkZW4gdm9uIG9iZW4gbmFjaCB1bnRlblxuIgogImF1c2dlZsO8aHJ0LlxuIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzozMSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTczCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZCkiCittc2dpZF9wbHVyYWwgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kcykiCittc2dzdHJbMF0gIlJlYmFzZSB2b24gJXMgYXVmICVzICglZCBLb21tYW5kbykiCittc2dzdHJbMV0gIlJlYmFzZSB2b24gJXMgYXVmICVzICglZCBLb21tYW5kb3MpIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3MiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjI4CiBtc2dpZCAiIgogIlxuIgogIkRvIG5vdCByZW1vdmUgYW55IGxpbmUuIFVzZSAnZHJvcCcgZXhwbGljaXRseSB0byByZW1vdmUgYSBjb21taXQuXG4iCkBAIC0zODg0LDcgKzU3MDQsNyBAQAogIktlaW5lIFplaWxlIGVudGZlcm5lbi4gQmVudXR6ZW4gU2llICdkcm9wJywgdW0gZXhwbGl6aXQgZWluZW4gQ29tbWl0IHp1XG4iCiAiZW50ZmVybmVuLlxuIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzozNCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTc3CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3NSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjMyCiBtc2dpZCAiIgogIlxuIgogIklmIHlvdSByZW1vdmUgYSBsaW5lIGhlcmUgVEhBVCBDT01NSVQgV0lMTCBCRSBMT1NULlxuIgpAQCAtMzg5Miw3ICs1NzEyLDcgQEAKICJcbiIKICJXZW5uIFNpZSBoaWVyIGVpbmUgWmVpbGUgZW50ZmVybmVuLCB3aXJkIERJRVNFUiBDT01NSVQgVkVSTE9SRU4gR0VIRU4uXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQwIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MTYKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjgxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NzEKIG1zZ2lkICIiCiAiXG4iCiAiWW91IGFyZSBlZGl0aW5nIHRoZSB0b2RvIGZpbGUgb2YgYW4gb25nb2luZyBpbnRlcmFjdGl2ZSByZWJhc2UuXG4iCkBAIC0zOTA2LDcgKzU3MjYsNyBAQAogIiAgICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKICJcbiIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6NDUgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg5MworIzogcmViYXNlLWludGVyYWN0aXZlLmM6ODYgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0OAogbXNnaWQgIiIKICJcbiIKICJIb3dldmVyLCBpZiB5b3UgcmVtb3ZlIGV2ZXJ5dGhpbmcsIHRoZSByZWJhc2Ugd2lsbCBiZSBhYm9ydGVkLlxuIgpAQCAtMzkxNiwxMjcgKzU3MzYsMTYyIEBACiAiV2VubiBTaWUgamVkb2NoIGFsbGVzIGzDtnNjaGVuLCB3aXJkIGRlciBSZWJhc2UgYWJnZWJyb2NoZW4uXG4iCiAiXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjUxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDAKLW1zZ2lkICJOb3RlIHRoYXQgZW1wdHkgY29tbWl0cyBhcmUgY29tbWVudGVkIG91dCIKLW1zZ3N0ciAiTGVlcmUgQ29tbWl0cyBzaW5kIGF1c2tvbW1lbnRpZXJ0LiIKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjExMCByZXJlcmUuYzo0ODUgcmVyZXJlLmM6NjkyIHNlcXVlbmNlci5jOjM0NDQKKyM6IHNlcXVlbmNlci5jOjM0NzAgc2VxdWVuY2VyLmM6NTEyNSBidWlsdGluL2ZzY2suYzozNDYgYnVpbHRpbi9yZWJhc2UuYzoyNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHdyaXRlICclcyciCittc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IHNjaHJlaWJlbi4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjYyIHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjc1IHNlcXVlbmNlci5jOjIxODYKLSM6IHNlcXVlbmNlci5jOjQ1MDUgc2VxdWVuY2VyLmM6NDU2MSBzZXF1ZW5jZXIuYzo0ODM2CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMTYgYnVpbHRpbi9yZWJhc2UuYzoxODQgYnVpbHRpbi9yZWJhc2UuYzoyMTAKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnLiIKK21zZ3N0ciAiS29ubnRlICclcycgbmljaHQgc2NocmVpYmVuLiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXYXJuaW5nOiBzb21lIGNvbW1pdHMgbWF5IGhhdmUgYmVlbiBkcm9wcGVkIGFjY2lkZW50YWxseS5cbiIKKyJEcm9wcGVkIGNvbW1pdHMgKG5ld2VyIHRvIG9sZGVyKTpcbiIKK21zZ3N0ciAiIgorIldhcm51bmc6IEVpbmlnZSBDb21taXRzIGvDtm5udGVuIGF1cyBWZXJzZWhlbiBlbnRmZXJudCB3b3JkZW4gc2Vpbi5cbiIKKyJFbnRmZXJudGUgQ29tbWl0cyAobmV1IHp1IGFsdCk6XG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVG8gYXZvaWQgdGhpcyBtZXNzYWdlLCB1c2UgXCJkcm9wXCIgdG8gZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuXG4iCisiXG4iCisiVXNlICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyB0byBjaGFuZ2UgdGhlIGxldmVsIG9mICIKKyJ3YXJuaW5ncy5cbiIKKyJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCisiXG4iCittc2dzdHIgIiIKKyJVbSBkaWVzZSBNZWxkdW5nIHp1IHZlcm1laWRlbiwgYmVudXR6ZW4gU2llIFwiZHJvcFwiLCB1bSBleGxpeml0IENvbW1pdHMgenVcbiIKKyJlbnRmZXJuZW4uXG4iCisiXG4iCisiQmVudXR6ZW4gU2llICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJywgdW0gZGllIFN0dWZlIGRlclxuIgorIldhcm51bmdlbiB6dSDDpG5kZXJuLlxuIgorIkRpZSBtw7ZnbGljaGVuIFZlcmhhbHRlbnN3ZWlzZW4gc2luZDogaWdub3JlLCB3YXJuLCBlcnJvci5cbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MjMzIHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjIzOCBzZXF1ZW5jZXIuYzoyMjYyCisjOiBidWlsdGluL3JlYmFzZS5jOjE3MCBidWlsdGluL3JlYmFzZS5jOjE5NSBidWlsdGluL3JlYmFzZS5jOjIyMQorIzogYnVpbHRpbi9yZWJhc2UuYzoyNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgJyVzJy4iCiBtc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGxlc2VuLiIKIAotIzogcmVmcy5jOjE5MgorIzogcmVmcy5jOjI2MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBkb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIG9iamVjdCEiCiBtc2dzdHIgIiVzIHplaWd0IGF1ZiBrZWluIGfDvGx0aWdlcyBPYmpla3QhIgogCi0jOiByZWZzLmM6NTgzCisjOiByZWZzLmM6NjY3CiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIGRhbmdsaW5nIHN5bXJlZiAlcyIKIG1zZ3N0ciAiSWdub3JpZXJlIHVucmVmZXJlbnppZXJ0ZSBzeW1ib2xpc2NoZSBSZWZlcmVueiAlcyIKIAotIzogcmVmcy5jOjU4NSByZWYtZmlsdGVyLmM6MTk1MQorIzogcmVmcy5jOjY2OSByZWYtZmlsdGVyLmM6MjA5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyBicm9rZW4gcmVmICVzIgogbXNnc3RyICJJZ25vcmllcmUgZmVobGVyaGFmdGUgUmVmZXJlbnogJXMiCiAKLSM6IHJlZnMuYzo3MTEKKyM6IHJlZnMuYzo4MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZzogJXMiCiBtc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IHp1bSBTY2hyZWliZW4gw7ZmZm5lbjogJXMiCiAKLSM6IHJlZnMuYzo3MjEgcmVmcy5jOjc3MgorIzogcmVmcy5jOjgxNCByZWZzLmM6ODY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAnJXMnIgogbXNnc3RyICJLb25udGUgUmVmZXJlbnogJyVzJyBuaWNodCBsZXNlbi4iCiAKLSM6IHJlZnMuYzo3MjcKKyM6IHJlZnMuYzo4MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIlJlZmVyZW56ICclcycgZXhpc3RpZXJ0IGJlcmVpdHMuIgogCi0jOiByZWZzLmM6NzMyCisjOiByZWZzLmM6ODI1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgb2JqZWN0IElEIHdoZW4gd3JpdGluZyAnJXMnIgogbXNnc3RyICJVbmVyd2FydGV0ZSBPYmpla3QtSUQgYmVpbSBTY2hyZWliZW4gdm9uICclcycuIgogCi0jOiByZWZzLmM6NzQwIHNlcXVlbmNlci5jOjM5NCBzZXF1ZW5jZXIuYzoyNTEwIHNlcXVlbmNlci5jOjI2MzYKLSM6IHNlcXVlbmNlci5jOjI2NTAgc2VxdWVuY2VyLmM6Mjg3NyBzZXF1ZW5jZXIuYzo0NzI1IHNlcXVlbmNlci5jOjQ3ODgKLSM6IHdyYXBwZXIuYzo2NTYKKyM6IHJlZnMuYzo4MzMgc2VxdWVuY2VyLmM6NDA3IHNlcXVlbmNlci5jOjI3MDEgc2VxdWVuY2VyLmM6MjkwNQorIzogc2VxdWVuY2VyLmM6MjkxOSBzZXF1ZW5jZXIuYzozMTc3IHNlcXVlbmNlci5jOjUwMzYgc3RyYnVmLmM6MTE1NworIzogd3JhcHBlci5jOjYyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgdG8gJyVzJyIKIG1zZ3N0ciAiS29ubnRlIG5pY2h0IG5hY2ggJyVzJyBzY2hyZWliZW4uIgogCi0jOiByZWZzLmM6NzY3IHNlcXVlbmNlci5jOjQ3MjMgc2VxdWVuY2VyLmM6NDc4MiB3cmFwcGVyLmM6MjI1IHdyYXBwZXIuYzozOTUKLSM6IGJ1aWx0aW4vYW0uYzo3MjgKKyM6IHJlZnMuYzo4NjAgc3RyYnVmLmM6MTE1NSB3cmFwcGVyLmM6MTg4IHdyYXBwZXIuYzozNTggYnVpbHRpbi9hbS5jOjcxOQorIzogYnVpbHRpbi9yZWJhc2UuYzoxMDI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmciCiBtc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IHp1bSBTY2hyZWliZW4gw7ZmZm5lbi4iCiAKLSM6IHJlZnMuYzo3NzQKKyM6IHJlZnMuYzo4NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBvYmplY3QgSUQgd2hlbiBkZWxldGluZyAnJXMnIgogbXNnc3RyICJVbmVyd2FydGV0ZSBPYmpla3QtSUQgYmVpbSBMw7ZzY2hlbiB2b24gJyVzJy4iCiAKLSM6IHJlZnMuYzo5MDUKKyM6IHJlZnMuYzo5OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9nIGZvciByZWYgJXMgaGFzIGdhcCBhZnRlciAlcyIKIG1zZ3N0ciAiTG9nIGbDvHIgUmVmZXJlbnogJXMgaGF0IGVpbmUgTMO8Y2tlIG5hY2ggJXMuIgogCi0jOiByZWZzLmM6OTExCisjOiByZWZzLmM6MTAwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2cgZm9yIHJlZiAlcyB1bmV4cGVjdGVkbHkgZW5kZWQgb24gJXMiCiBtc2dzdHIgIkxvZyBmw7xyIFJlZmVyZW56ICVzIHVuZXJ3YXJ0ZXQgYmVpICVzIGJlZW5kZXQuIgogCi0jOiByZWZzLmM6OTY5CisjOiByZWZzLmM6MTA2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2cgZm9yICVzIGlzIGVtcHR5IgogbXNnc3RyICJMb2cgZsO8ciAlcyBpc3QgbGVlci4iCiAKLSM6IHJlZnMuYzoxMDYxCisjOiByZWZzLmM6MTE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZ1c2luZyB0byB1cGRhdGUgcmVmIHdpdGggYmFkIG5hbWUgJyVzJyIKIG1zZ3N0ciAiVmVyd2VpZ2VyZSBBa3R1YWxpc2llcnVuZyBlaW5lciBSZWZlcmVueiBtaXQgZmVobGVyaGFmdGVtIE5hbWVuICclcycuIgogCi0jOiByZWZzLmM6MTEzNworIzogcmVmcy5jOjEyMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidXBkYXRlX3JlZiBmYWlsZWQgZm9yIHJlZiAnJXMnOiAlcyIKIG1zZ3N0ciAidXBkYXRlX3JlZiBmw7xyIFJlZmVyZW56ICclcycgZmVobGdlc2NobGFnZW46ICVzIgogCi0jOiByZWZzLmM6MTkxMQorIzogcmVmcy5jOjIwMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGlwbGUgdXBkYXRlcyBmb3IgcmVmICclcycgbm90IGFsbG93ZWQiCiBtc2dzdHIgIk1laHJlcmUgQWt0dWFsaXNpZXJ1bmdlbiBmw7xyIFJlZmVyZW56ICclcycgbmljaHQgZXJsYXVidC4iCiAKLSM6IHJlZnMuYzoxOTQzCisjOiByZWZzLmM6MjA1NQogbXNnaWQgInJlZiB1cGRhdGVzIGZvcmJpZGRlbiBpbnNpZGUgcXVhcmFudGluZSBlbnZpcm9ubWVudCIKIG1zZ3N0ciAiIgogIkFrdHVhbGlzaWVydW5nZW4gdm9uIFJlZmVyZW56ZW4gaXN0IGlubmVyaGFsYiBkZXIgUXVhcmFudMOkbmUtVW1nZWJ1bmcgIgogInZlcmJvdGVuLiIKIAotIzogcmVmcy5jOjIwMzkgcmVmcy5jOjIwNjkKKyM6IHJlZnMuYzoyMTUxIHJlZnMuYzoyMTgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZXhpc3RzOyBjYW5ub3QgY3JlYXRlICclcyciCiBtc2dzdHIgIiclcycgZXhpc3RpZXJ0OyBrYW5uICclcycgbmljaHQgZXJzdGVsbGVuIgogCi0jOiByZWZzLmM6MjA0NSByZWZzLmM6MjA4MAorIzogcmVmcy5jOjIxNTcgcmVmcy5jOjIxOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHByb2Nlc3MgJyVzJyBhbmQgJyVzJyBhdCB0aGUgc2FtZSB0aW1lIgogbXNnc3RyICJLYW5uICclcycgdW5kICclcycgbmljaHQgenVyIHNlbGJlbiBaZWl0IHZlcmFyYmVpdGVuLiIKIAotIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTIyOAorIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVtb3ZlIHJlZmVyZW5jZSAlcyIKIG1zZ3N0ciAiS29ubnRlIFJlZmVyZW56ICVzIG5pY2h0IGzDtnNjaGVuIgogCi0jOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjQyIHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTMyCi0jOiByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU0MgorIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI0NyByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU0MQorIzogcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGRlbGV0ZSByZWZlcmVuY2UgJXM6ICVzIgogbXNnc3RyICJLb25udGUgUmVmZXJlbnogJXMgbmljaHQgZW50ZmVybmVuOiAlcyIKIAotIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI0NSByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU0NQorIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI1MCByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZGVsZXRlIHJlZmVyZW5jZXM6ICVzIgogbXNnc3RyICJLb25udGUgUmVmZXJlbnplbiBuaWNodCBlbnRmZXJuZW46ICVzIgpAQCAtNDA0NiwzNTEgKzU5MDEsNDkyIEBACiBtc2dpZCAiaW52YWxpZCByZWZzcGVjICclcyciCiBtc2dzdHIgIlVuZ8O8bHRpZ2UgUmVmc3BlYyAnJXMnIgogCi0jOiByZWYtZmlsdGVyLmM6Mzkgd3Qtc3RhdHVzLmM6MTg1NQorIzogcmVmLWZpbHRlci5jOjQyIHd0LXN0YXR1cy5jOjE5MzgKIG1zZ2lkICJnb25lIgogbXNnc3RyICJlbnRmZXJudCIKIAotIzogcmVmLWZpbHRlci5jOjQwCisjOiByZWYtZmlsdGVyLmM6NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWhlYWQgJWQiCiBtc2dzdHIgIiVkIHZvcmF1cyIKIAotIzogcmVmLWZpbHRlci5jOjQxCisjOiByZWYtZmlsdGVyLmM6NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmVoaW5kICVkIgogbXNnc3RyICIlZCBoaW50ZXJoZXIiCiAKLSM6IHJlZi1maWx0ZXIuYzo0MgorIzogcmVmLWZpbHRlci5jOjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImFoZWFkICVkLCBiZWhpbmQgJWQiCiBtc2dzdHIgIiVkIHZvcmF1cywgJWQgaGludGVyaGVyIgogCi0jOiByZWYtZmlsdGVyLmM6MTM4CisjOiByZWYtZmlsdGVyLmM6MTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIGZvcm1hdDogJSUoY29sb3I6PGNvbG9yPikiCiBtc2dzdHIgIkVyd2FydGV0ZXMgRm9ybWF0OiAlJShjb2xvcjo8RmFyYmU+KSIKIAotIzogcmVmLWZpbHRlci5jOjE0MAorIzogcmVmLWZpbHRlci5jOjE2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgY29sb3I6ICUlKGNvbG9yOiVzKSIKIG1zZ3N0ciAibmljaHQgZXJrYW5udGUgRmFyYmU6ICUlKGNvbG9yOiVzKSIKIAotIzogcmVmLWZpbHRlci5jOjE2MgorIzogcmVmLWZpbHRlci5jOjE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6bHN0cmlwPSVzIgogbXNnc3RyICJQb3NpdGl2ZXIgV2VydCBlcndhcnRldCByZWZuYW1lOmxzdHJpcD0lcyIKIAotIzogcmVmLWZpbHRlci5jOjE2NgorIzogcmVmLWZpbHRlci5jOjE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6cnN0cmlwPSVzIgogbXNnc3RyICJQb3NpdGl2ZXIgV2VydCBlcndhcnRldCByZWZuYW1lOnJzdHJpcD0lcyIKIAotIzogcmVmLWZpbHRlci5jOjE2OAorIzogcmVmLWZpbHRlci5jOjE5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUoJXMpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAibmljaHQgZXJrYW5udGVzICUlKCVzKSBBcmd1bWVudDogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMjMKKyM6IHJlZi1maWx0ZXIuYzoyNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJSUob2JqZWN0dHlwZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCiBtc2dzdHIgIiUlKG9iamVjdHR5cGUpIGFremVwdGllcnQga2VpbmUgQXJndW1lbnRlIgogCi0jOiByZWYtZmlsdGVyLmM6MjM1CisjOiByZWYtZmlsdGVyLmM6MjcyCiAjLCBjLWZvcm1hdAotbXNnaWQgIiUlKG9iamVjdHNpemUpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgotbXNnc3RyICIlJShvYmplY3RzaXplKSBha3plcHRpZXJ0IGtlaW5lIEFyZ3VtZW50ZSIKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUob2JqZWN0c2l6ZSkgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJuaWNodCBlcmthbm50ZXMgJSUob2JqZWN0c2l6ZSkgQXJndW1lbnQ6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MjQ3CisjOiByZWYtZmlsdGVyLmM6MjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiUlKGRlbHRhYmFzZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCittc2dzdHIgIiUlKGRlbHRhYmFzZSkgYWt6ZXB0aWVydCBrZWluZSBBcmd1bWVudGUiCisKKyM6IHJlZi1maWx0ZXIuYzoyOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJSUoYm9keSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCiBtc2dzdHIgIiUlKGJvZHkpIGFremVwdGllcnQga2VpbmUgQXJndW1lbnRlIgogCi0jOiByZWYtZmlsdGVyLmM6MjU2CisjOiByZWYtZmlsdGVyLmM6MzAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiUlKHN1YmplY3QpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgogbXNnc3RyICIlJShzdWJqZWN0KSBha3plcHRpZXJ0IGtlaW5lIEFyZ3VtZW50ZSIKIAotIzogcmVmLWZpbHRlci5jOjI3OAorIzogcmVmLWZpbHRlci5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duICUlKHRyYWlsZXJzKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgInVuYmVrYW5udGVzICUlKHRyYWlsZXJzKSBBcmd1bWVudDogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozMDcKKyM6IHJlZi1maWx0ZXIuYzozNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAicG9zaXRpdmUgdmFsdWUgZXhwZWN0ZWQgY29udGVudHM6bGluZXM9JXMiCiBtc2dzdHIgIlBvc2l0aXZlciBXZXJ0IGVyd2FydGV0IGNvbnRlbnRzOmxpbmVzPSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzA5CisjOiByZWYtZmlsdGVyLmM6MzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShjb250ZW50cykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJuaWNodCBlcmthbm50ZXMgJSUoY29udGVudHMpIEFyZ3VtZW50OiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjMyNAorIzogcmVmLWZpbHRlci5jOjM2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJwb3NpdGl2ZSB2YWx1ZSBleHBlY3RlZCBvYmplY3RuYW1lOnNob3J0PSVzIgogbXNnc3RyICJQb3NpdGl2ZXIgV2VydCBlcndhcnRldCBvYmplY3RuYW1lOnNob3J0PSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzI4CisjOiByZWYtZmlsdGVyLmM6MzczCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShvYmplY3RuYW1lKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgIm5pY2h0IGVya2FubnRlcyAlJShvYmplY3RuYW1lKSBBcmd1bWVudDogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozNTgKKyM6IHJlZi1maWx0ZXIuYzo0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgZm9ybWF0OiAlJShhbGlnbjo8d2lkdGg+LDxwb3NpdGlvbj4pIgogbXNnc3RyICJFcndhcnRldGVzIEZvcm1hdDogJSUoYWxpZ246PEJyZWl0ZT4sPFBvc2l0aW9uPikiCiAKLSM6IHJlZi1maWx0ZXIuYzozNzAKKyM6IHJlZi1maWx0ZXIuYzo0MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIHBvc2l0aW9uOiVzIgogbXNnc3RyICJuaWNodCBlcmthbm50ZSBQb3NpdGlvbjolcyIKIAotIzogcmVmLWZpbHRlci5jOjM3NworIzogcmVmLWZpbHRlci5jOjQyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgd2lkdGg6JXMiCiBtc2dzdHIgIm5pY2h0IGVya2FubnRlIEJyZWl0ZTolcyIKIAotIzogcmVmLWZpbHRlci5jOjM4NgorIzogcmVmLWZpbHRlci5jOjQzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUoYWxpZ24pIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAibmljaHQgZXJrYW5udGVzICUlKGFsaWduKSBBcmd1bWVudDogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozOTQKKyM6IHJlZi1maWx0ZXIuYzo0MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAicG9zaXRpdmUgd2lkdGggZXhwZWN0ZWQgd2l0aCB0aGUgJSUoYWxpZ24pIGF0b20iCiBtc2dzdHIgIlBvc2l0aXZlIEJyZWl0ZW5hbmdhYmUgZsO8ciAlJShhbGlnbikgZXJ3YXJ0ZXQiCiAKLSM6IHJlZi1maWx0ZXIuYzo0MTIKKyM6IHJlZi1maWx0ZXIuYzo0NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKGlmKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgIm5pY2h0IGVya2FubnRlcyAlJShpZikgQXJndW1lbnQ6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6NTA4CisjOiByZWYtZmlsdGVyLmM6NTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBmaWVsZCBuYW1lOiAlLipzIgogbXNnc3RyICJGZWhsZXJoYWZ0ZXIgRmVsZG5hbWU6ICUuKnMiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MzUKKyM6IHJlZi1maWx0ZXIuYzo1ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBmaWVsZCBuYW1lOiAlLipzIgogbXNnc3RyICJVbmJla2FubnRlciBGZWxkbmFtZTogJS4qcyIKIAotIzogcmVmLWZpbHRlci5jOjUzOQorIzogcmVmLWZpbHRlci5jOjU5MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibm90IGEgZ2l0IHJlcG9zaXRvcnksIGJ1dCB0aGUgZmllbGQgJyUuKnMnIHJlcXVpcmVzIGFjY2VzcyB0byBvYmplY3QgZGF0YSIKLW1zZ3N0ciAiS2VpbiBHaXQtUmVwb3NpdG9yeSwgYWJlciBkYXMgRmVsZCAnJS4qcycgZXJmb3JkZXJ0IFp1Z3JpZmYgYXVmIE9iamVrdGRhdGVuLiIKK21zZ3N0ciAiIgorIktlaW4gR2l0LVJlcG9zaXRvcnksIGFiZXIgZGFzIEZlbGQgJyUuKnMnIGVyZm9yZGVydCBadWdyaWZmIGF1ZiBPYmpla3RkYXRlbi4iCiAKLSM6IHJlZi1maWx0ZXIuYzo2NjMKKyM6IHJlZi1maWx0ZXIuYzo3MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShpZikgYXRvbSB1c2VkIHdpdGhvdXQgYSAlJSh0aGVuKSBhdG9tIgogbXNnc3RyICJmb3JtYXQ6ICUlKGlmKSBBdG9tIG9obmUgZWluICUlKHRoZW4pIEF0b20gdmVyd2VuZGV0IgogCi0jOiByZWYtZmlsdGVyLmM6NzI2CisjOiByZWYtZmlsdGVyLmM6Nzc3CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIHdpdGhvdXQgYW4gJSUoaWYpIGF0b20iCiBtc2dzdHIgImZvcm1hdDogJSUodGhlbikgQXRvbSBvaG5lIGVpbiAlJShpZikgQXRvbSB2ZXJ3ZW5kZXQiCiAKLSM6IHJlZi1maWx0ZXIuYzo3MjgKKyM6IHJlZi1maWx0ZXIuYzo3NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgbW9yZSB0aGFuIG9uY2UiCiBtc2dzdHIgImZvcm1hdDogJSUodGhlbikgQXRvbSBtZWhyIGFscyBlaW5tYWwgdmVyd2VuZGV0IgogCi0jOiByZWYtZmlsdGVyLmM6NzMwCisjOiByZWYtZmlsdGVyLmM6NzgxCiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIGFmdGVyICUlKGVsc2UpIgogbXNnc3RyICJmb3JtYXQ6ICUlKHRoZW4pIEF0b20gbmFjaCAlJShlbHNlKSB2ZXJ3ZW5kZXQiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NTgKKyM6IHJlZi1maWx0ZXIuYzo4MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgd2l0aG91dCBhbiAlJShpZikgYXRvbSIKIG1zZ3N0ciAiZm9ybWF0OiAlJShlbHNlKSBBdG9tIG9obmUgZWluICUlKGlmKSBBdG9tIHZlcndlbmRldCIKIAotIzogcmVmLWZpbHRlci5jOjc2MAorIzogcmVmLWZpbHRlci5jOjgxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCB3aXRob3V0IGEgJSUodGhlbikgYXRvbSIKIG1zZ3N0ciAiRm9ybWF0OiAlJShlbHNlKSBBdG9tIG9obmUgZWluICUlKHRoZW4pIEF0b20gdmVyd2VuZGV0IgogCi0jOiByZWYtZmlsdGVyLmM6NzYyCisjOiByZWYtZmlsdGVyLmM6ODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgogbXNnc3RyICJGb3JtYXQ6ICUlKGVuZCkgQXRvbSBtZWhyIGFscyBlaW5tYWwgdmVyd2VuZGV0IgogCi0jOiByZWYtZmlsdGVyLmM6Nzc3CisjOiByZWYtZmlsdGVyLmM6ODI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZW5kKSBhdG9tIHVzZWQgd2l0aG91dCBjb3JyZXNwb25kaW5nIGF0b20iCiBtc2dzdHIgIkZvcm1hdDogJSUoZW5kKSBBdG9tIG9obmUgenVnZWjDtnJpZ2VzIEF0b20gdmVyd2VuZGV0IgogCi0jOiByZWYtZmlsdGVyLmM6ODM0CisjOiByZWYtZmlsdGVyLmM6ODg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBmb3JtYXQgc3RyaW5nICVzIgogbXNnc3RyICJGZWhsZXJoYWZ0ZXIgRm9ybWF0aWVydW5nc3N0cmluZyAlcyIKIAotIzogcmVmLWZpbHRlci5jOjE0MjQKKyM6IHJlZi1maWx0ZXIuYzoxNDg4CiAjLCBjLWZvcm1hdAotbXNnaWQgIihubyBicmFuY2gsIHJlYmFzaW5nICVzKSIKLW1zZ3N0ciAiKGtlaW4gQnJhbmNoLCBSZWJhc2Ugdm9uIEJyYW5jaCAlcyBpbSBHYW5nZSkiCittc2dpZCAibm8gYnJhbmNoLCByZWJhc2luZyAlcyIKK21zZ3N0ciAia2VpbiBCcmFuY2gsIFJlYmFzZSB2b24gJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDI3CisjOiByZWYtZmlsdGVyLmM6MTQ5MQogIywgYy1mb3JtYXQKLW1zZ2lkICIobm8gYnJhbmNoLCByZWJhc2luZyBkZXRhY2hlZCBIRUFEICVzKSIKLW1zZ3N0ciAiKGtlaW4gQnJhbmNoLCBSZWJhc2Ugdm9uIGxvc2dlbMO2c3RlbSBIRUFEICVzKSIKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nIGRldGFjaGVkIEhFQUQgJXMiCittc2dzdHIgImtlaW4gQnJhbmNoLCBSZWJhc2Ugdm9uIGxvc2dlbMO2c3RlbSBIRUFEICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTQzMAorIzogcmVmLWZpbHRlci5jOjE0OTQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiKG5vIGJyYW5jaCwgYmlzZWN0IHN0YXJ0ZWQgb24gJXMpIgotbXNnc3RyICIoa2VpbiBCcmFuY2gsIGJpbsOkcmUgU3VjaGUgYmVnb25uZW4gYmVpICVzKSIKK21zZ2lkICJubyBicmFuY2gsIGJpc2VjdCBzdGFydGVkIG9uICVzIgorbXNnc3RyICJrZWluIEJyYW5jaCwgYmluw6RyZSBTdWNoZSBiZWdvbm5lbiBiZWkgJXMiCiAKLSMuIFRSQU5TTEFUT1JTOiBtYWtlIHN1cmUgdGhpcyBtYXRjaGVzICJIRUFECi0jLiBkZXRhY2hlZCBhdCAiIGluIHd0LXN0YXR1cy5jCi0jLgotIzogcmVmLWZpbHRlci5jOjE0MzgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiKEhFQUQgZGV0YWNoZWQgYXQgJXMpIgotbXNnc3RyICIoSEVBRCBsb3NnZWzDtnN0IGJlaSAlcykiCisjOiByZWYtZmlsdGVyLmM6MTUwNAorbXNnaWQgIm5vIGJyYW5jaCIKK21zZ3N0ciAia2VpbiBCcmFuY2giCiAKLSMuIFRSQU5TTEFUT1JTOiBtYWtlIHN1cmUgdGhpcyBtYXRjaGVzICJIRUFECi0jLiBkZXRhY2hlZCBmcm9tICIgaW4gd3Qtc3RhdHVzLmMKLSMuCi0jOiByZWYtZmlsdGVyLmM6MTQ0NQotIywgYy1mb3JtYXQKLW1zZ2lkICIoSEVBRCBkZXRhY2hlZCBmcm9tICVzKSIKLW1zZ3N0ciAiKEhFQUQgbG9zZ2Vsw7ZzdCB2b24gJXMpIgotCi0jOiByZWYtZmlsdGVyLmM6MTQ0OQotbXNnaWQgIihubyBicmFuY2gpIgotbXNnc3RyICIoa2VpbiBCcmFuY2gpIgotCi0jOiByZWYtZmlsdGVyLmM6MTQ4MyByZWYtZmlsdGVyLmM6MTYzOAorIzogcmVmLWZpbHRlci5jOjE1NDAgcmVmLWZpbHRlci5jOjE3NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBvYmplY3QgJXMgZm9yICVzIgogbXNnc3RyICJPYmpla3QgJXMgZmVobHQgZsO8ciAlcyIKIAotIzogcmVmLWZpbHRlci5jOjE0OTEKKyM6IHJlZi1maWx0ZXIuYzoxNTUwCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhcnNlX29iamVjdF9idWZmZXIgZmFpbGVkIG9uICVzIGZvciAlcyIKIG1zZ3N0ciAicGFyc2Vfb2JqZWN0X2J1ZmZlciBiZWkgJXMgZsO8ciAlcyBmZWhsZ2VzY2hsYWdlbiIKIAotIzogcmVmLWZpbHRlci5jOjE4NTcKKyM6IHJlZi1maWx0ZXIuYzoyMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgYXQgJyVzJyIKIG1zZ3N0ciAiZmVobGVyaGFmdGVzIE9iamVrdCBiZWkgJyVzJyIKIAotIzogcmVmLWZpbHRlci5jOjE5NDYKKyM6IHJlZi1maWx0ZXIuYzoyMDkzCiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIHJlZiB3aXRoIGJyb2tlbiBuYW1lICVzIgogbXNnc3RyICJJZ25vcmllcmUgUmVmZXJlbnogbWl0IGZlaGxlcmhhZnRlbSBOYW1lbiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjIyMzIKKyM6IHJlZi1maWx0ZXIuYzoyMzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZW5kKSBhdG9tIG1pc3NpbmciCiBtc2dzdHIgIkZvcm1hdDogJSUoZW5kKSBBdG9tIGZlaGx0IgogCi0jOiByZWYtZmlsdGVyLmM6MjMzOAorIzogcmVmLWZpbHRlci5jOjI0ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1tZXJnZWQiCittc2dzdHIgIkRpZSBPcHRpb24gYCVzJyBpc3QgaW5rb21wYXRpYmVsIG1pdCAtLW1lcmdlZC4iCisKKyM6IHJlZi1maWx0ZXIuYzoyNDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8tbWVyZ2VkIgorbXNnc3RyICJEaWUgT3B0aW9uIGAlcycgaXN0IGlua29tcGF0aWJlbCBtaXQgLS1uby1tZXJnZWQuIgorCisjOiByZWYtZmlsdGVyLmM6MjUwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IG5hbWUgJXMiCiBtc2dzdHIgIk1pc3NnZWJpbGRldGVyIE9iamVrdG5hbWUgJXMiCiAKLSM6IHJlbW90ZS5jOjYwNworIzogcmVmLWZpbHRlci5jOjI1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgbXVzdCBwb2ludCB0byBhIGNvbW1pdCIKK21zZ3N0ciAiRGllIE9wdGlvbiBgJXMnIG11c3MgYXVmIGVpbmVuIENvbW1pdCB6ZWlnZW4uIgorCisjOiByZW1vdGUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlnIHJlbW90ZSBzaG9ydGhhbmQgY2Fubm90IGJlZ2luIHdpdGggJy8nOiAlcyIKK21zZ3N0ciAiIgorIkvDvHJ6ZWwgZsO8ciBSZW1vdGUtUmVwb3NpdG9yeSBpbiBkZXIgS29uZmlndXJhdGlvbiBrYW5uIG5pY2h0IG1pdCAnLycgIgorImJlZ2lubmVuOiAlcyIKKworIzogcmVtb3RlLmM6NDE0Cittc2dpZCAibW9yZSB0aGFuIG9uZSByZWNlaXZlcGFjayBnaXZlbiwgdXNpbmcgdGhlIGZpcnN0IgorbXNnc3RyICJNZWhyIGFscyBlaW4gcmVjZWl2ZXBhY2stQmVmZWhsIGFuZ2VnZWJlbiwgYmVudXR6ZSBkZW4gZXJzdGVuLiIKKworIzogcmVtb3RlLmM6NDIyCittc2dpZCAibW9yZSB0aGFuIG9uZSB1cGxvYWRwYWNrIGdpdmVuLCB1c2luZyB0aGUgZmlyc3QiCittc2dzdHIgIk1laHIgYWxzIGVpbiB1cGxvYWRwYWNrLUJlZmVobCBhbmdlZ2ViZW4sIGJlbnV0emUgZGVuIGVyc3Rlbi4iCisKKyM6IHJlbW90ZS5jOjYxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZmV0Y2ggYm90aCAlcyBhbmQgJXMgdG8gJXMiCiBtc2dzdHIgIkthbm4gJ2ZldGNoJyBuaWNodCBmw7xyIHNvd29obCAlcyBhbHMgYXVjaCAlcyBuYWNoICVzIGF1c2bDvGhyZW4uIgogCi0jOiByZW1vdGUuYzo2MTEKKyM6IHJlbW90ZS5jOjYxNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB1c3VhbGx5IHRyYWNrcyAlcywgbm90ICVzIgogbXNnc3RyICIlcyBmb2xndCDDvGJsaWNoZXJ3ZWlzZSAlcywgbmljaHQgJXMiCiAKLSM6IHJlbW90ZS5jOjYxNQorIzogcmVtb3RlLmM6NjIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHRyYWNrcyBib3RoICVzIGFuZCAlcyIKIG1zZ3N0ciAiJXMgZm9sZ3Qgc293b2hsICVzIGFscyBhdWNoICVzIgogCi0jOiByZW1vdGUuYzo2MjMKLW1zZ2lkICJJbnRlcm5hbCBlcnJvciIKLW1zZ3N0ciAiSW50ZXJuZXIgRmVobGVyIgorIzogcmVtb3RlLmM6Njg4CisjLCBjLWZvcm1hdAorbXNnaWQgImtleSAnJXMnIG9mIHBhdHRlcm4gaGFkIG5vICcqJyIKK21zZ3N0ciAiU2NobMO8c3NlbCAnJXMnIGRlcyBNdXN0ZXJzIGhhdHRlIGtlaW4gJyonLiIKIAotIzogcmVtb3RlLmM6MTU2OSByZW1vdGUuYzoxNjcwCisjOiByZW1vdGUuYzo2OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgJyVzJyBvZiBwYXR0ZXJuIGhhcyBubyAnKiciCittc2dzdHIgIldlcnQgJyVzJyBkZXMgTXVzdGVycyBoYXQga2VpbiAnKicuIgorCisjOiByZW1vdGUuYzoxMDA0CisjLCBjLWZvcm1hdAorbXNnaWQgInNyYyByZWZzcGVjICVzIGRvZXMgbm90IG1hdGNoIGFueSIKK21zZ3N0ciAiU3JjLVJlZnNwZWMgJXMgZW50c3ByaWNodCBrZWluZXIgUmVmZXJlbnouIgorCisjOiByZW1vdGUuYzoxMDA5CisjLCBjLWZvcm1hdAorbXNnaWQgInNyYyByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAiU3JjLVJlZnNwZWMgJXMgZW50c3ByaWNodCBtZWhyIGFscyBlaW5lciBSZWZlcmVuei4iCisKKyMuIFRSQU5TTEFUT1JTOiAibWF0Y2hlcyAnJXMnJSIgaXMgdGhlIDxkc3Q+IHBhcnQgb2YgImdpdCBwdXNoCisjLiA8cmVtb3RlPiA8c3JjPjo8ZHN0PiIgcHVzaCwgYW5kICJiZWluZyBwdXNoZWQgKCclcycpIiBpcworIy4gdGhlIDxzcmM+LgorIy4KKyM6IHJlbW90ZS5jOjEwMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBkZXN0aW5hdGlvbiB5b3UgcHJvdmlkZWQgaXMgbm90IGEgZnVsbCByZWZuYW1lIChpLmUuLFxuIgorInN0YXJ0aW5nIHdpdGggXCJyZWZzL1wiKS4gV2UgdHJpZWQgdG8gZ3Vlc3Mgd2hhdCB5b3UgbWVhbnQgYnk6XG4iCisiXG4iCisiLSBMb29raW5nIGZvciBhIHJlZiB0aGF0IG1hdGNoZXMgJyVzJyBvbiB0aGUgcmVtb3RlIHNpZGUuXG4iCisiLSBDaGVja2luZyBpZiB0aGUgPHNyYz4gYmVpbmcgcHVzaGVkICgnJXMnKVxuIgorIiAgaXMgYSByZWYgaW4gXCJyZWZzL3toZWFkcyx0YWdzfS9cIi4gSWYgc28gd2UgYWRkIGEgY29ycmVzcG9uZGluZ1xuIgorIiAgcmVmcy97aGVhZHMsdGFnc30vIHByZWZpeCBvbiB0aGUgcmVtb3RlIHNpZGUuXG4iCisiXG4iCisiTmVpdGhlciB3b3JrZWQsIHNvIHdlIGdhdmUgdXAuIFlvdSBtdXN0IGZ1bGx5IHF1YWxpZnkgdGhlIHJlZi4iCittc2dzdHIgIiIKKyJEYXMgYW5nZWdlYmVuZSBaaWVsIGlzdCBrZWluIHZvbGxzdMOkbmRpZ2VyIFJlZmVyZW56bmFtZSAoc3RhcnRldCBtaXQgXCJyZWZzLyIKKyJcIikuXG4iCisiV2lyIHZlcnN1Y2h0ZW4genUgZXJyYXRlbiwgd2FzIFNpZSBtZWludGVuLCBtaXQ6XG4iCisiXG4iCisiLSBTdWNoZSBlaW5lciBSZWZlcmVueiwgZGllIG1pdCAnJXMnIMO8YmVyZWluc3RpbW10LCBhdWYgZGVyIFJlbW90ZS1TZWl0ZVxuIgorIi0gUHLDvGZ1bmcsIG9iIGRpZSB2ZXJzZW5kZXRlIDxRdWVsbGU+ICgnJXMnKSBlaW5lIFJlZmVyZW56IGluIFwicmVmcy97aGVhZHMsIgorInRhZ3N9XCJcbiIKKyIgIGlzdCwgaW4gZGVzc2VuIEZhbGxlIHdpciBlaW5lbiBlbnRzcHJlY2hlbmRlbiByZWZzL3toZWFkcyx0YWdzfSBQcsOkZml4ICIKKyJhdWZcbiIKKyIgIGRlciBSZW1vdGUtU2VpdGUgaGluenVmw7xnZW4gd8O8cmRlbi5cbiIKKyJcbiIKKyJLZWluZXMgaGF0IGZ1bmt0aW9uaWVydCwgc29kYXNzIHdpciBhdWZnZWdlYmVuIGhhYmVuLiBTaWUgbcO8c3NlbiBkaWVcbiIKKyJSZWZlcmVueiBtaXQgdm9sbHF1YWxpZml6aWVydGVuIE5hbWVuIGFuZ2ViZW4uIgorCisjOiByZW1vdGUuYzoxMDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIGNvbW1pdCBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIGNyZWF0ZSBhIG5ldyBicmFuY2ggYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL2hlYWRzLyVzJz8iCittc2dzdHIgIiIKKyJEZXIgPFF1ZWxsZT4gVGVpbCBkZXIgUmVmc3BlYyBpc3QgZWluIENvbW1pdC1PYmpla3QuXG4iCisiTWVpbnRlbiBTaWUsIGVpbmVuIG5ldWVuIEJyYW5jaCBtaXR0ZWxzIFB1c2ggbmFjaFxuIgorIiclczpyZWZzL2hlYWRzLyVzJyB6dSBlcnN0ZWxsZW4/IgorCisjOiByZW1vdGUuYzoxMDQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIHRhZyBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIGNyZWF0ZSBhIG5ldyB0YWcgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorIkRlciA8UXVlbGxlPiBUZWlsIGRlciBSZWZzcGVjIGlzdCBlaW4gVGFnLU9iamVrdC5cbiIKKyJNZWludGVuIFNpZSwgZWluZW4gbmV1ZW4gVGFnIG1pdHRlbHMgUHVzaCBuYWNoXG4iCisiJyVzOnJlZnMvdGFncy8lcycgenUgZXJzdGVsbGVuPyIKKworIzogcmVtb3RlLmM6MTA1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSB0cmVlIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gdGFnIGEgbmV3IHRyZWUgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorIkRlciA8UXVlbGxlPiBUZWlsIGRlciBSZWZzcGVjIGlzdCBlaW4gVHJlZS1PYmpla3QuXG4iCisiTWVpbnRlbiBTaWUsIGVpbmVuIFRhZyBmw7xyIGVpbiBuZXVlcyBUcmVlLU9iamVrdFxuIgorIm1pdHRlbHMgUHVzaCBuYWNoICclczpyZWZzL3RhZ3MvJyVzJyB6dSBlcnN0ZWxsZW4/IgorCisjOiByZW1vdGUuYzoxMDU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIGJsb2Igb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byB0YWcgYSBuZXcgYmxvYiBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisiRGVyIDxRdWVsbGU+IFRlaWwgZGVyIFJlZnNwZWMgaXN0IGVpbiBCbG9iLU9iamVrdC5cbiIKKyJNZWludGVuIFNpZSwgZWluZW4gVGFnIGbDvHIgZWluIG5ldWVzIEJsb2ItT2JqZWt0XG4iCisibWl0dGVscyBQdXNoIG5hY2ggJyVzOnJlZnMvdGFncy8lcycgenUgZXJzdGVsbGVuPyIKKworIzogcmVtb3RlLmM6MTA5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYnJhbmNoIgorbXNnc3RyICIlcyBrYW5uIG5pY2h0IHp1IEJyYW5jaCBhdWZnZWzDtnN0IHdlcmRlbi4iCisKKyM6IHJlbW90ZS5jOjExMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSAnJXMnOiByZW1vdGUgcmVmIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBsw7ZzY2hlbjogUmVtb3RlLVJlZmVyZW56IGV4aXN0aWVydCBuaWNodC4iCisKKyM6IHJlbW90ZS5jOjExMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHN0IHJlZnNwZWMgJXMgbWF0Y2hlcyBtb3JlIHRoYW4gb25lIgorbXNnc3RyICJEc3QtUmVmc3BlYyAlcyBlbnRzcHJpY2h0IG1laHIgYWxzIGVpbmVyIFJlZmVyZW56LiIKKworIzogcmVtb3RlLmM6MTEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkc3QgcmVmICVzIHJlY2VpdmVzIGZyb20gbW9yZSB0aGFuIG9uZSBzcmMiCittc2dzdHIgIkRzdC1SZWZlcmVueiAlcyBlbXBmw6RuZ3Qgdm9uIG1laHIgYWxzIGVpbmVyIFF1ZWxsZSIKKworIzogcmVtb3RlLmM6MTYyOCByZW1vdGUuYzoxNzI5CiBtc2dpZCAiSEVBRCBkb2VzIG5vdCBwb2ludCB0byBhIGJyYW5jaCIKIG1zZ3N0ciAiSEVBRCB6ZWlndCBhdWYga2VpbmVuIEJyYW5jaCIKIAotIzogcmVtb3RlLmM6MTU3OAorIzogcmVtb3RlLmM6MTYzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIGJyYW5jaDogJyVzJyIKIG1zZ3N0ciAiS2VpbiBzb2xjaGVyIEJyYW5jaDogJyVzJyIKIAotIzogcmVtb3RlLmM6MTU4MQorIzogcmVtb3RlLmM6MTY0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyB1cHN0cmVhbSBjb25maWd1cmVkIGZvciBicmFuY2ggJyVzJyIKIG1zZ3N0ciAiS2VpbiBVcHN0cmVhbS1CcmFuY2ggZsO8ciBCcmFuY2ggJyVzJyBrb25maWd1cmllcnQuIgogCi0jOiByZW1vdGUuYzoxNTg3CisjOiByZW1vdGUuYzoxNjQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVwc3RyZWFtIGJyYW5jaCAnJXMnIG5vdCBzdG9yZWQgYXMgYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgogbXNnc3RyICJVcHN0cmVhbS1CcmFuY2ggJyVzJyBuaWNodCBhbHMgUmVtb3RlLVRyYWNraW5nLUJyYW5jaCBnZXNwZWljaGVydCIKIAotIzogcmVtb3RlLmM6MTYwMgorIzogcmVtb3RlLmM6MTY2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwdXNoIGRlc3RpbmF0aW9uICclcycgb24gcmVtb3RlICclcycgaGFzIG5vIGxvY2FsIHRyYWNraW5nIGJyYW5jaCIKIG1zZ3N0ciAiIgogIlppZWwgZsO8ciBcInB1c2hcIiAnJXMnIGF1ZiBSZW1vdGUtUmVwb3NpdG9yeSAnJXMnIGhhdCBrZWluZW4gbG9rYWwgZ2Vmb2xndGVuICIKICJCcmFuY2giCiAKLSM6IHJlbW90ZS5jOjE2MTQKKyM6IHJlbW90ZS5jOjE2NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYnJhbmNoICclcycgaGFzIG5vIHJlbW90ZSBmb3IgcHVzaGluZyIKIG1zZ3N0ciAiQnJhbmNoICclcycgaGF0IGtlaW5lbiBVcHN0cmVhbS1CcmFuY2ggZ2VzZXR6dCIKIAotIzogcmVtb3RlLmM6MTYyNAorIzogcmVtb3RlLmM6MTY4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJwdXNoIHJlZnNwZWNzIGZvciAnJXMnIGRvIG5vdCBpbmNsdWRlICclcyciCiBtc2dzdHIgIlB1c2gtUmVmc3BlY3MgZsO8ciAnJXMnIGJlaW5oYWx0ZW4gbmljaHQgJyVzJyIKIAotIzogcmVtb3RlLmM6MTYzNworIzogcmVtb3RlLmM6MTY5NgogbXNnaWQgInB1c2ggaGFzIG5vIGRlc3RpbmF0aW9uIChwdXNoLmRlZmF1bHQgaXMgJ25vdGhpbmcnKSIKIG1zZ3N0ciAia2VpbiBaaWVsIGbDvHIgXCJwdXNoXCIgKHB1c2guZGVmYXVsdCBpc3QgJ25vdGhpbmcnKSIKIAotIzogcmVtb3RlLmM6MTY1OQorIzogcmVtb3RlLmM6MTcxOAogbXNnaWQgImNhbm5vdCByZXNvbHZlICdzaW1wbGUnIHB1c2ggdG8gYSBzaW5nbGUgZGVzdGluYXRpb24iCiBtc2dzdHIgImthbm4gZWluemVsbmVzIFppZWwgZsO8ciBcInB1c2hcIiBpbSBNb2R1cyAnc2ltcGxlJyBuaWNodCBhdWZsw7ZzZW4iCiAKLSM6IHJlbW90ZS5jOjE5MzUKKyM6IHJlbW90ZS5jOjE4NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgZmluZCByZW1vdGUgcmVmICVzIgorbXNnc3RyICJLb25udGUgUmVtb3RlLVJlZmVyZW56ICVzIG5pY2h0IGZpbmRlbi4iCisKKyM6IHJlbW90ZS5jOjE4NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiKiBJZ25vcmluZyBmdW5ueSByZWYgJyVzJyBsb2NhbGx5IgorbXNnc3RyICIqIElnbm9yaWVyZSBzb25kZXJiYXJlIFJlZmVyZW56ICclcycgbG9rYWwiCisKKyM6IHJlbW90ZS5jOjIwMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgYmFzZWQgb24gJyVzJywgYnV0IHRoZSB1cHN0cmVhbSBpcyBnb25lLlxuIgogbXNnc3RyICIiCiAiSWhyIEJyYW5jaCBiYXNpZXJ0IGF1ZiAnJXMnLCBhYmVyIGRlciBVcHN0cmVhbS1CcmFuY2ggd3VyZGUgZW50ZmVybnQuXG4iCiAKLSM6IHJlbW90ZS5jOjE5MzkKKyM6IHJlbW90ZS5jOjIwMjQKIG1zZ2lkICIgICh1c2UgXCJnaXQgYnJhbmNoIC0tdW5zZXQtdXBzdHJlYW1cIiB0byBmaXh1cClcbiIKIG1zZ3N0ciAiICAoYmVudXR6ZW4gU2llIFwiZ2l0IGJyYW5jaCAtLXVuc2V0LXVwc3RyZWFtXCIgenVtIEJlaGViZW4pXG4iCiAKLSM6IHJlbW90ZS5jOjE5NDIKKyM6IHJlbW90ZS5jOjIwMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgdXAgdG8gZGF0ZSB3aXRoICclcycuXG4iCiBtc2dzdHIgIklociBCcmFuY2ggaXN0IGF1ZiBkZW1zZWxiZW4gU3RhbmQgd2llICclcycuXG4iCiAKLSM6IHJlbW90ZS5jOjE5NDYKKyM6IHJlbW90ZS5jOjIwMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggYW5kICclcycgcmVmZXIgdG8gZGlmZmVyZW50IGNvbW1pdHMuXG4iCiBtc2dzdHIgIklociBCcmFuY2ggdW5kICclcycgemVpZ2VuIGF1ZiB1bnRlcnNjaGllZGxpY2hlIENvbW1pdHMuXG4iCiAKLSM6IHJlbW90ZS5jOjE5NDkKKyM6IHJlbW90ZS5jOjIwMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAodXNlIFwiJXNcIiBmb3IgZGV0YWlscylcbiIKIG1zZ3N0ciAiICAoYmVudXR6ZW4gU2llIFwiJXNcIiBmw7xyIERldGFpbHMpXG4iCiAKLSM6IHJlbW90ZS5jOjE5NTMKKyM6IHJlbW90ZS5jOjIwMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgYWhlYWQgb2YgJyVzJyBieSAlZCBjb21taXQuXG4iCiBtc2dpZF9wbHVyYWwgIllvdXIgYnJhbmNoIGlzIGFoZWFkIG9mICclcycgYnkgJWQgY29tbWl0cy5cbiIKIG1zZ3N0clswXSAiSWhyIEJyYW5jaCBpc3QgJTIkZCBDb21taXQgdm9yICclMSRzJy5cbiIKIG1zZ3N0clsxXSAiSWhyIEJyYW5jaCBpc3QgJTIkZCBDb21taXRzIHZvciAnJTEkcycuXG4iCiAKLSM6IHJlbW90ZS5jOjE5NTkKKyM6IHJlbW90ZS5jOjIwNDQKIG1zZ2lkICIgICh1c2UgXCJnaXQgcHVzaFwiIHRvIHB1Ymxpc2ggeW91ciBsb2NhbCBjb21taXRzKVxuIgogbXNnc3RyICIgIChiZW51dHplbiBTaWUgXCJnaXQgcHVzaFwiLCB1bSBsb2thbGUgQ29tbWl0cyB6dSBwdWJsaXppZXJlbilcbiIKIAotIzogcmVtb3RlLmM6MTk2MgorIzogcmVtb3RlLmM6MjA0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBpcyBiZWhpbmQgJyVzJyBieSAlZCBjb21taXQsIGFuZCBjYW4gYmUgZmFzdC1mb3J3YXJkZWQuXG4iCiBtc2dpZF9wbHVyYWwgIiIKQEAgLTQ0MDAsMTIgKzYzOTYsMTIgQEAKIG1zZ3N0clsxXSAiIgogIklociBCcmFuY2ggaXN0ICUyJGQgQ29tbWl0cyBoaW50ZXIgJyUxJHMnLCB1bmQga2FubiB2b3JnZXNwdWx0IHdlcmRlbi5cbiIKIAotIzogcmVtb3RlLmM6MTk3MAorIzogcmVtb3RlLmM6MjA1NQogbXNnaWQgIiAgKHVzZSBcImdpdCBwdWxsXCIgdG8gdXBkYXRlIHlvdXIgbG9jYWwgYnJhbmNoKVxuIgogbXNnc3RyICIiCiAiICAoYmVudXR6ZW4gU2llIFwiZ2l0IHB1bGxcIiwgdW0gSWhyZW4gbG9rYWxlbiBCcmFuY2ggenUgYWt0dWFsaXNpZXJlbilcbiIKIAotIzogcmVtb3RlLmM6MTk3MworIzogcmVtb3RlLmM6MjA1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBicmFuY2ggYW5kICclcycgaGF2ZSBkaXZlcmdlZCxcbiIKQEAgLTQ0MjAsMTIgKzY0MTYsMTcgQEAKICJJaHIgQnJhbmNoIHVuZCAnJXMnIHNpbmQgZGl2ZXJnaWVydCxcbiIKICJ1bmQgaGFiZW4gamV3ZWlscyAlZCB1bmQgJWQgdW50ZXJzY2hpZWRsaWNoZSBDb21taXRzLlxuIgogCi0jOiByZW1vdGUuYzoxOTgzCisjOiByZW1vdGUuYzoyMDY4CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1bGxcIiB0byBtZXJnZSB0aGUgcmVtb3RlIGJyYW5jaCBpbnRvIHlvdXJzKVxuIgogbXNnc3RyICIiCiAiICAoYmVudXR6ZW4gU2llIFwiZ2l0IHB1bGxcIiwgdW0gSWhyZW4gQnJhbmNoIG1pdCBkZW0gUmVtb3RlLUJyYW5jaCAiCiAienVzYW1tZW56dWbDvGhyZW4pXG4iCiAKKyM6IHJlbW90ZS5jOjIyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHBhcnNlIGV4cGVjdGVkIG9iamVjdCBuYW1lICclcyciCittc2dzdHIgIkthbm4gZXJ3YXJ0ZXRlbiBPYmpla3RuYW1lbiAnJXMnIG5pY2h0IHBhcnNlbi4iCisKICM6IHJlcGxhY2Utb2JqZWN0LmM6MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJlcGxhY2UgcmVmIG5hbWU6ICVzIgpAQCAtNDQzNiw3ICs2NDM3LDcgQEAKIG1zZ2lkICJkdXBsaWNhdGUgcmVwbGFjZSByZWY6ICVzIgogbXNnc3RyICJkb3BwZWx0ZSBlcnNldHplbmRlIFJlZmVyZW56OiAlcyIKIAotIzogcmVwbGFjZS1vYmplY3QuYzo3MworIzogcmVwbGFjZS1vYmplY3QuYzo4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBsYWNlIGRlcHRoIHRvbyBoaWdoIGZvciBvYmplY3QgJXMiCiBtc2dzdHIgIkVyc2V0enVuZ3N0aWVmZSB6dSBob2NoIGbDvHIgT2JqZWt0ICVzIgpAQCAtNDQ0OSwxMSArNjQ1MCw2IEBACiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHJlcmVyZSByZWNvcmQiCiBtc2dzdHIgIktvbm50ZSBSZXJlcmUtRWludHJhZyBuaWNodCBzY2hyZWliZW4uIgogCi0jOiByZXJlcmUuYzo0ODUgcmVyZXJlLmM6NjkyIHNlcXVlbmNlci5jOjMxMzYgc2VxdWVuY2VyLmM6MzE2MgotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJyIKLW1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgc2NocmVpYmVuLiIKLQogIzogcmVyZXJlLmM6NDk1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZXJlIHdlcmUgZXJyb3JzIHdoaWxlIHdyaXRpbmcgJyVzJyAoJXMpIgpAQCAtNDUwNCw4ICs2NTAwLDggQEAKIG1zZ2lkICJSZWNvcmRlZCBwcmVpbWFnZSBmb3IgJyVzJyIKIG1zZ3N0ciAiUHJlaW1hZ2UgZsO8ciAnJXMnIGF1ZmdlemVpY2huZXQuIgogCi0jOiByZXJlcmUuYzo4ODEgc3VibW9kdWxlLmM6MTc2MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxMwotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MjMKKyM6IHJlcmVyZS5jOjg4MSBzdWJtb2R1bGUuYzoyMDc4IGJ1aWx0aW4vbG9nLmM6MTg3MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NTQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAiS29ubnRlIFZlcnplaWNobmlzICclcycgbmljaHQgZXJzdGVsbGVuLiIKQEAgLTQ1MzksMjkgKzY1MzUsMzMgQEAKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiByci1jYWNoZSBkaXJlY3RvcnkiCiBtc2dzdHIgIktvbm50ZSByci1jYWNoZSBWZXJ6ZWljaG5pcyBuaWNodCDDtmZmbmVuLiIKIAotIzogcmV2aXNpb24uYzoyMzI0CisjOiByZXZpc2lvbi5jOjI0OTcKIG1zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoIGFwcGVhcnMgdG8gYmUgYnJva2VuIgogbXNnc3RyICJJaHIgYWt0dWVsbGVyIEJyYW5jaCBzY2hlaW50IGZlaGxlcmhhZnQgenUgc2Vpbi4iCiAKLSM6IHJldmlzaW9uLmM6MjMyNworIzogcmV2aXNpb24uYzoyNTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgInlvdXIgY3VycmVudCBicmFuY2ggJyVzJyBkb2VzIG5vdCBoYXZlIGFueSBjb21taXRzIHlldCIKIG1zZ3N0ciAiSWhyIGFrdHVlbGxlciBCcmFuY2ggJyVzJyBoYXQgbm9jaCBrZWluZSBDb21taXRzLiIKIAotIzogcmV2aXNpb24uYzoyNTIzCisjOiByZXZpc2lvbi5jOjI3MDgKIG1zZ2lkICItLWZpcnN0LXBhcmVudCBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWJpc2VjdCIKIG1zZ3N0ciAiRGllIE9wdGlvbmVuIC0tZmlyc3QtcGFyZW50IHVuZCAtLWJpc2VjdCBzaW5kIGlua29tcGF0aWJlbC4iCiAKLSM6IHJ1bi1jb21tYW5kLmM6NzQwCisjOiByZXZpc2lvbi5jOjI3MTIKK21zZ2lkICItTCBkb2VzIG5vdCB5ZXQgc3VwcG9ydCBkaWZmIGZvcm1hdHMgYmVzaWRlcyAtcCBhbmQgLXMiCittc2dzdHIgIi1MIHVudGVyc3TDvHR6dCBub2NoIGtlaW5lIGFuZGVyZW4gRGlmZi1Gb3JtYXRlIGF1w59lciAtcCB1bmQgLXMiCisKKyM6IHJ1bi1jb21tYW5kLmM6NzYzCiBtc2dpZCAib3BlbiAvZGV2L251bGwgZmFpbGVkIgogbXNnc3RyICLDlmZmbmVuIHZvbiAvZGV2L251bGwgZmVobGdlc2NobGFnZW4iCiAKLSM6IHJ1bi1jb21tYW5kLmM6MTIyOQorIzogcnVuLWNvbW1hbmQuYzoxMjY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjcmVhdGUgYXN5bmMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiS29ubnRlIFRocmVhZCBmw7xyIGFzeW5jIG5pY2h0IGVyemV1Z2VuOiAlcyIKIAotIzogcnVuLWNvbW1hbmQuYzoxMjkzCisjOiBydW4tY29tbWFuZC5jOjEzMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSAnJXMnIGhvb2sgd2FzIGlnbm9yZWQgYmVjYXVzZSBpdCdzIG5vdCBzZXQgYXMgZXhlY3V0YWJsZS5cbiIKQEAgLTQ1NzEsMzAgKzY1NzEsMzAgQEAKICJTaWUga8O2bm5lbiBkaWVzZSBXYXJudW5nIG1pdCBgZ2l0IGNvbmZpZyBhZHZpY2UuaWdub3JlZEhvb2sgZmFsc2VgICIKICJkZWFrdGl2aWVyZW4uIgogCi0jOiBzZW5kLXBhY2suYzoxNDIKKyM6IHNlbmQtcGFjay5jOjE0NAogbXNnaWQgInVuZXhwZWN0ZWQgZmx1c2ggcGFja2V0IHdoaWxlIHJlYWRpbmcgcmVtb3RlIHVucGFjayBzdGF0dXMiCiBtc2dzdHIgIlVuZXJ3YXJ0ZXRlcyBGbHVzaC1QYWtldCBiZWltIExlc2VuIGRlcyBSZW1vdGUtVW5wYWNrLVN0YXR1cy4iCiAKLSM6IHNlbmQtcGFjay5jOjE0NAorIzogc2VuZC1wYWNrLmM6MTQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSByZW1vdGUgdW5wYWNrIHN0YXR1czogJXMiCiBtc2dzdHIgIktvbm50ZSBTdGF0dXMgZGVzIEVudHBhY2tlbnMgZGVyIEdlZ2Vuc2VpdGUgbmljaHQgcGFyc2VuOiAlcyIKIAotIzogc2VuZC1wYWNrLmM6MTQ2CisjOiBzZW5kLXBhY2suYzoxNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3RlIHVucGFjayBmYWlsZWQ6ICVzIgogbXNnc3RyICJFbnRwYWNrZW4gYXVmIGRlciBHZWdlbnNlaXRlIGZlaGxnZXNjaGxhZ2VuOiAlcyIKIAotIzogc2VuZC1wYWNrLmM6MzA4CisjOiBzZW5kLXBhY2suYzozMDkKIG1zZ2lkICJmYWlsZWQgdG8gc2lnbiB0aGUgcHVzaCBjZXJ0aWZpY2F0ZSIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gU2lnbmllcmVuIGRlcyBcInB1c2hcIi1aZXJ0aWZpa2F0ZXMiCiAKLSM6IHNlbmQtcGFjay5jOjQyMQorIzogc2VuZC1wYWNrLmM6NDIzCiBtc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCAtLXNpZ25lZCBwdXNoIgogbXNnc3RyICIiCiAiZGllIEdlZ2Vuc2VpdGUgdW50ZXJzdMO8dHp0IGtlaW5lbiBzaWduaWVydGVuIFZlcnNhbmQgKFwiLS1zaWduZWQgcHVzaFwiKSIKIAotIzogc2VuZC1wYWNrLmM6NDIzCisjOiBzZW5kLXBhY2suYzo0MjUKIG1zZ2lkICIiCiAibm90IHNlbmRpbmcgYSBwdXNoIGNlcnRpZmljYXRlIHNpbmNlIHRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS0iCiAic2lnbmVkIHB1c2giCkBAIC00NjAyLDQyICs2NjAyLDQ3IEBACiAia2VpbiBWZXJzYW5kIGRlcyBcInB1c2hcIi1aZXJ0aWZpa2F0ZXMsIGRhIGRpZSBHZWdlbnNlaXRlIGtlaW5lbiBzaWduaWVydGVuXG4iCiAiVmVyc2FuZCAoXCItLXNpZ25lZCBwdXNoXCIpIHVudGVyc3TDvHR6dCIKIAotIzogc2VuZC1wYWNrLmM6NDM1CisjOiBzZW5kLXBhY2suYzo0MzcKIG1zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tYXRvbWljIHB1c2giCiBtc2dzdHIgImRpZSBHZWdlbnNlaXRlIHVudGVyc3TDvHR6dCBrZWluZW4gYXRvbWFyZW4gVmVyc2FuZCAoXCItLWF0b21pYyBwdXNoXCIpIgogCi0jOiBzZW5kLXBhY2suYzo0NDAKKyM6IHNlbmQtcGFjay5jOjQ0MgogbXNnaWQgInRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgcHVzaCBvcHRpb25zIgogbXNnc3RyICJkaWUgR2VnZW5zZWl0ZSB1bnRlcnN0w7x0enQga2VpbmUgUHVzaC1PcHRpb25lbiIKIAotIzogc2VxdWVuY2VyLmM6MTgzCisjOiBzZXF1ZW5jZXIuYzoxOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb21taXQgbWVzc2FnZSBjbGVhbnVwIG1vZGUgJyVzJyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgXCJjbGVhbnVwXCItTW9kdXMgJyVzJyBmw7xyIENvbW1pdC1CZXNjaHJlaWJ1bmdlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjI4NworIzogc2VxdWVuY2VyLmM6Mjk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgJyVzJyIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgbMO2c2NoZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzozMTMKKyM6IHNlcXVlbmNlci5jOjMxNSBidWlsdGluL3JlYmFzZS5jOjc4NSBidWlsdGluL3JlYmFzZS5jOjE3NTAgYnVpbHRpbi9ybS5jOjM4NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVtb3ZlICclcyciCittc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGzDtnNjaGVuIgorCisjOiBzZXF1ZW5jZXIuYzozMjUKIG1zZ2lkICJyZXZlcnQiCiBtc2dzdHIgIlJldmVydCIKIAotIzogc2VxdWVuY2VyLmM6MzE1CisjOiBzZXF1ZW5jZXIuYzozMjcKIG1zZ2lkICJjaGVycnktcGljayIKIG1zZ3N0ciAiQ2hlcnJ5LVBpY2siCiAKLSM6IHNlcXVlbmNlci5jOjMxNwotbXNnaWQgInJlYmFzZSAtaSIKLW1zZ3N0ciAiaW50ZXJha3RpdmVzIFJlYmFzZSIKKyM6IHNlcXVlbmNlci5jOjMyOQorbXNnaWQgInJlYmFzZSIKK21zZ3N0ciAiUmViYXNlIgogCi0jOiBzZXF1ZW5jZXIuYzozMTkKKyM6IHNlcXVlbmNlci5jOjMzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIGFjdGlvbjogJWQiCiBtc2dzdHIgIlVuYmVrYW5udGUgQWt0aW9uOiAlZCIKIAotIzogc2VxdWVuY2VyLmM6Mzc2CisjOiBzZXF1ZW5jZXIuYzozODkKIG1zZ2lkICIiCiAiYWZ0ZXIgcmVzb2x2aW5nIHRoZSBjb25mbGljdHMsIG1hcmsgdGhlIGNvcnJlY3RlZCBwYXRoc1xuIgogIndpdGggJ2dpdCBhZGQgPHBhdGhzPicgb3IgJ2dpdCBybSA8cGF0aHM+JyIKQEAgLTQ2NDUsNyArNjY1MCw3IEBACiAibmFjaCBBdWZsw7ZzdW5nIGRlciBLb25mbGlrdGUgbWFya2llcmVuIFNpZSBkaWUga29ycmlnaWVydGVuIFBmYWRlXG4iCiAibWl0ICdnaXQgYWRkIDxQZmFkZT4nIG9kZXIgJ2dpdCBybSA8UGZhZGU+JyIKIAotIzogc2VxdWVuY2VyLmM6Mzc5CisjOiBzZXF1ZW5jZXIuYzozOTIKIG1zZ2lkICIiCiAiYWZ0ZXIgcmVzb2x2aW5nIHRoZSBjb25mbGljdHMsIG1hcmsgdGhlIGNvcnJlY3RlZCBwYXRoc1xuIgogIndpdGggJ2dpdCBhZGQgPHBhdGhzPicgb3IgJ2dpdCBybSA8cGF0aHM+J1xuIgpAQCAtNDY1NSwxMTEgKzY2NjAsMTExIEBACiAibWl0ICdnaXQgYWRkIDxQZmFkZT4nIG9kZXIgJ2dpdCBybSA8UGZhZGU+JyB1bmQgdHJhZ2VuIFNpZSBkYXMgRXJnZWJuaXMgbWl0XG4iCiAiJ2dpdCBjb21taXQnIGVpbiIKIAotIzogc2VxdWVuY2VyLmM6MzkyIHNlcXVlbmNlci5jOjI2MzIKKyM6IHNlcXVlbmNlci5jOjQwNSBzZXF1ZW5jZXIuYzoyOTAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb2NrICclcyciCiBtc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IHNwZXJyZW4iCiAKLSM6IHNlcXVlbmNlci5jOjM5OQorIzogc2VxdWVuY2VyLmM6NDEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBlb2wgdG8gJyVzJyIKIG1zZ3N0ciAiS29ubnRlIEVPTCBuaWNodCBuYWNoICclcycgc2NocmVpYmVuLiIKIAotIzogc2VxdWVuY2VyLmM6NDA0IHNlcXVlbmNlci5jOjI1MTUgc2VxdWVuY2VyLmM6MjYzOCBzZXF1ZW5jZXIuYzoyNjUyCi0jOiBzZXF1ZW5jZXIuYzoyODg1CisjOiBzZXF1ZW5jZXIuYzo0MTcgc2VxdWVuY2VyLmM6MjcwNiBzZXF1ZW5jZXIuYzoyOTA3IHNlcXVlbmNlci5jOjI5MjEKKyM6IHNlcXVlbmNlci5jOjMxODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplICclcyciCiBtc2dzdHIgIkZlaGxlciBiZWltIEZlcnRpZ3N0ZWxsZW4gdm9uICclcycuIgogCi0jOiBzZXF1ZW5jZXIuYzo0Mjcgc2VxdWVuY2VyLmM6OTIxIHNlcXVlbmNlci5jOjE1OTQgc2VxdWVuY2VyLmM6MjUzNQotIzogc2VxdWVuY2VyLmM6Mjg2NyBzZXF1ZW5jZXIuYzoyOTc0IGJ1aWx0aW4vYW0uYzoyNjAgYnVpbHRpbi9jb21taXQuYzo3NDYKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDg0IGJ1aWx0aW4vcmViYXNlLmM6MTUyCisjOiBzZXF1ZW5jZXIuYzo0NDAgc2VxdWVuY2VyLmM6MTYxMyBzZXF1ZW5jZXIuYzoyNzI2IHNlcXVlbmNlci5jOjMxNjcKKyM6IHNlcXVlbmNlci5jOjMyNzYgYnVpbHRpbi9hbS5jOjI0OSBidWlsdGluL2NvbW1pdC5jOjc4NyBidWlsdGluL21lcmdlLmM6MTEyMAorIzogYnVpbHRpbi9yZWJhc2UuYzo1OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgJyVzJyIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgbGVzZW4iCiAKLSM6IHNlcXVlbmNlci5jOjQ1MworIzogc2VxdWVuY2VyLmM6NDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgInlvdXIgbG9jYWwgY2hhbmdlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlcy4iCiBtc2dzdHIgIklocmUgbG9rYWxlbiDDhG5kZXJ1bmdlbiB3w7xyZGVuIGR1cmNoIGRlbiAlcyDDvGJlcnNjaHJpZWJlbiB3ZXJkZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzo0NTcKKyM6IHNlcXVlbmNlci5jOjQ3MAogbXNnaWQgImNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSB0byBwcm9jZWVkLiIKIG1zZ3N0ciAiIgogIkNvbW1pdHRlbiBTaWUgSWhyZSDDhG5kZXJ1bmdlbiBvZGVyIGJlbnV0emVuIFNpZSBcInN0YXNoXCIsIHVtIGZvcnR6dWZhaHJlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjQ4NgorIzogc2VxdWVuY2VyLmM6NTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBmYXN0LWZvcndhcmQiCiBtc2dzdHIgIiVzOiBWb3JzcHVsZW4iCiAKKyM6IHNlcXVlbmNlci5jOjU0MSBidWlsdGluL3RhZy5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGNsZWFudXAgbW9kZSAlcyIKK21zZ3N0ciAiVW5nw7xsdGlnZXIgXCJjbGVhbnVwXCIgTW9kdXMgJXMiCisKICMuIFRSQU5TTEFUT1JTOiAlcyB3aWxsIGJlICJyZXZlcnQiLCAiY2hlcnJ5LXBpY2siIG9yCi0jLiAicmViYXNlIC1pIi4KKyMuICJyZWJhc2UiLgogIy4KLSM6IHNlcXVlbmNlci5jOjU3NQorIzogc2VxdWVuY2VyLmM6NjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBVbmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCiBtc2dzdHIgIiVzOiBLb25udGUgbmV1ZSBJbmRleC1EYXRlaSBuaWNodCBzY2hyZWliZW4iCiAKLSM6IHNlcXVlbmNlci5jOjU5MQorIzogc2VxdWVuY2VyLmM6NjUyCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBjYWNoZSB0cmVlIgogbXNnc3RyICJLb25udGUgQ2FjaGUtVmVyemVpY2huaXMgbmljaHQgYWt0dWFsaXNpZXJlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjYwNAorIzogc2VxdWVuY2VyLmM6NjY2CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgSEVBRCBjb21taXQiCiBtc2dzdHIgIktvbm50ZSBIRUFELUNvbW1pdCBuaWNodCBhdWZsw7ZzZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzo2ODQKKyM6IHNlcXVlbmNlci5jOjc0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBrZXkgcHJlc2VudCBpbiAnJS4qcyciCiBtc2dzdHIgIktlaW4gU2NobMO8c3NlbCBpbiAnJS4qcycgdm9yaGFuZGVuLiIKIAotIzogc2VxdWVuY2VyLmM6Njk1CisjOiBzZXF1ZW5jZXIuYzo3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlcXVvdGUgdmFsdWUgb2YgJyVzJyIKIG1zZ3N0ciAiS29ubnRlIEFuZsO8aHJ1bmdzemVpY2hlbiB2b24gJyVzJyBuaWNodCBlbnRmZXJuZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzo3MzIgd3JhcHBlci5jOjIyNyB3cmFwcGVyLmM6Mzk3IGJ1aWx0aW4vYW0uYzo3MTkKLSM6IGJ1aWx0aW4vYW0uYzo4MTEgYnVpbHRpbi9tZXJnZS5jOjEwODEKKyM6IHNlcXVlbmNlci5jOjc5NCB3cmFwcGVyLmM6MTkwIHdyYXBwZXIuYzozNjAgYnVpbHRpbi9hbS5jOjcxMAorIzogYnVpbHRpbi9hbS5jOjgwMiBidWlsdGluL21lcmdlLmM6MTExNyBidWlsdGluL3JlYmFzZS5jOjEwNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3IgcmVhZGluZyIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgenVtIExlc2VuIMO2ZmZuZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzo3NDIKKyM6IHNlcXVlbmNlci5jOjgwNAogbXNnaWQgIidHSVRfQVVUSE9SX05BTUUnIGFscmVhZHkgZ2l2ZW4iCiBtc2dzdHIgIidHSVRfQVVUSE9SX05BTUUnIGJlcmVpdHMgYW5nZWdlYmVuLiIKIAotIzogc2VxdWVuY2VyLmM6NzQ3CisjOiBzZXF1ZW5jZXIuYzo4MDkKIG1zZ2lkICInR0lUX0FVVEhPUl9FTUFJTCcgYWxyZWFkeSBnaXZlbiIKIG1zZ3N0ciAiJ0dJVF9BVVRIT1JfRU1BSUwnIGJlcmVpdHMgYW5nZWdlYmVuLiIKIAotIzogc2VxdWVuY2VyLmM6NzUyCisjOiBzZXF1ZW5jZXIuYzo4MTQKIG1zZ2lkICInR0lUX0FVVEhPUl9EQVRFJyBhbHJlYWR5IGdpdmVuIgogbXNnc3RyICInR0lUX0FVVEhPUl9EQVRFJyBiZXJlaXRzIGFuZ2VnZWJlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjc1NgorIzogc2VxdWVuY2VyLmM6ODE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gdmFyaWFibGUgJyVzJyIKIG1zZ3N0ciAiVW5iZWthbm50ZSBWYXJpYWJsZSAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzo3NjEKKyM6IHNlcXVlbmNlci5jOjgyMwogbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfTkFNRSciCiBtc2dzdHIgIidHSVRfQVVUSE9SX05BTUUnIGZlaGx0LiIKIAotIzogc2VxdWVuY2VyLmM6NzYzCisjOiBzZXF1ZW5jZXIuYzo4MjUKIG1zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX0VNQUlMJyIKIG1zZ3N0ciAiJ0dJVF9BVVRIT1JfRU1BSUwnIGZlaGx0LiIKIAotIzogc2VxdWVuY2VyLmM6NzY1CisjOiBzZXF1ZW5jZXIuYzo4MjcKIG1zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX0RBVEUnIgogbXNnc3RyICInR0lUX0FVVEhPUl9EQVRFJyBmZWhsdC4iCiAKLSM6IHNlcXVlbmNlci5jOjgyNQotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIGRhdGUgZm9ybWF0ICclcycgaW4gJyVzJyIKLW1zZ3N0ciAiVW5nw7xsdGlnZXMgRGF0dW1zZm9ybWF0ICclcycgaW4gJyVzJyIKLQotIzogc2VxdWVuY2VyLmM6ODQyCisjOiBzZXF1ZW5jZXIuYzo4NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInlvdSBoYXZlIHN0YWdlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlXG4iCkBAIC00NzkwLDE1ICs2Nzk1LDExIEBACiAiXG4iCiAiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKIAotIzogc2VxdWVuY2VyLmM6OTM1Ci1tc2dpZCAid3JpdGluZyByb290IGNvbW1pdCIKLW1zZ3N0ciAiUm9vdC1Db21taXQgc2NocmVpYmVuIgotCi0jOiBzZXF1ZW5jZXIuYzoxMTQyCisjOiBzZXF1ZW5jZXIuYzoxMTQ4CiBtc2dpZCAiJ3ByZXBhcmUtY29tbWl0LW1zZycgaG9vayBmYWlsZWQiCiBtc2dzdHIgIidwcmVwYXJlLWNvbW1pdC1tc2cnIEhvb2sgZmVobGdlc2NobGFnZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzoxMTQ5CisjOiBzZXF1ZW5jZXIuYzoxMTU0CiBtc2dpZCAiIgogIllvdXIgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyB3ZXJlIGNvbmZpZ3VyZWQgYXV0b21hdGljYWxseSBiYXNlZFxuIgogIm9uIHlvdXIgdXNlcm5hbWUgYW5kIGhvc3RuYW1lLiBQbGVhc2UgY2hlY2sgdGhhdCB0aGV5IGFyZSBhY2N1cmF0ZS5cbiIKQEAgLTQ4MjYsNyArNjgyNyw3IEBACiAiXG4iCiAiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgogCi0jOiBzZXF1ZW5jZXIuYzoxMTYyCisjOiBzZXF1ZW5jZXIuYzoxMTY3CiBtc2dpZCAiIgogIllvdXIgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyB3ZXJlIGNvbmZpZ3VyZWQgYXV0b21hdGljYWxseSBiYXNlZFxuIgogIm9uIHlvdXIgdXNlcm5hbWUgYW5kIGhvc3RuYW1lLiBQbGVhc2UgY2hlY2sgdGhhdCB0aGV5IGFyZSBhY2N1cmF0ZS5cbiIKQEAgLTQ4NTIsMzAxICs2ODUzLDM0OSBAQAogIlxuIgogIiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKIAotIzogc2VxdWVuY2VyLmM6MTIwMgorIzogc2VxdWVuY2VyLmM6MTIwOQogbXNnaWQgImNvdWxkbid0IGxvb2sgdXAgbmV3bHkgY3JlYXRlZCBjb21taXQiCiBtc2dzdHIgIktvbm50ZSBuZXUgZXJzdGVsbHRlbiBDb21taXQgbmljaHQgbmFjaHNjaGxhZ2VuLiIKIAotIzogc2VxdWVuY2VyLmM6MTIwNAorIzogc2VxdWVuY2VyLmM6MTIxMQogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBuZXdseSBjcmVhdGVkIGNvbW1pdCIKIG1zZ3N0ciAiS29ubnRlIG5ldSBlcnN0ZWxsdGVuIENvbW1pdCBuaWNodCBhbmFseXNpZXJlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjEyNTAKKyM6IHNlcXVlbmNlci5jOjEyNTcKIG1zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBIRUFEIGFmdGVyIGNyZWF0aW5nIGNvbW1pdCIKIG1zZ3N0ciAiS29ubnRlIEhFQUQgbmljaHQgYXVmbMO2c2VuLCBuYWNoZGVtIGRlciBDb21taXQgZXJzdGVsbHQgd3VyZGUuIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjUyCisjOiBzZXF1ZW5jZXIuYzoxMjU5CiBtc2dpZCAiZGV0YWNoZWQgSEVBRCIKIG1zZ3N0ciAibG9zZ2Vsw7ZzdGVyIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjEyNTYKKyM6IHNlcXVlbmNlci5jOjEyNjMKIG1zZ2lkICIgKHJvb3QtY29tbWl0KSIKLW1zZ3N0ciAiIChCYXNpcy1Db21taXQpIgorbXNnc3RyICIgKFJvb3QtQ29tbWl0KSIKIAotIzogc2VxdWVuY2VyLmM6MTI3NworIzogc2VxdWVuY2VyLmM6MTI4NAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBIRUFEIgogbXNnc3RyICJLb25udGUgSEVBRCBuaWNodCBwYXJzZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjc5CisjOiBzZXF1ZW5jZXIuYzoxMjg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkhFQUQgJXMgaXMgbm90IGEgY29tbWl0ISIKIG1zZ3N0ciAiSEVBRCAlcyBpc3Qga2VpbiBDb21taXQhIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjgzIGJ1aWx0aW4vY29tbWl0LmM6MTU0MworIzogc2VxdWVuY2VyLmM6MTI5MCBzZXF1ZW5jZXIuYzoxMzY0IGJ1aWx0aW4vY29tbWl0LmM6MTU3NAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBIRUFEIGNvbW1pdCIKIG1zZ3N0ciAiS29ubnRlIENvbW1pdCB2b24gSEVBRCBuaWNodCBhbmFseXNpZXJlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjEzMzQgc2VxdWVuY2VyLmM6MTkzNAorIzogc2VxdWVuY2VyLmM6MTM0MiBzZXF1ZW5jZXIuYzoxOTY4CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbW1pdCBhdXRob3IiCiBtc2dzdHIgIktvbm50ZSBDb21taXQtQXV0b3IgbmljaHQgcGFyc2VuLiIKIAotIzogc2VxdWVuY2VyLmM6MTM0NCBidWlsdGluL2FtLmM6MTU4NSBidWlsdGluL21lcmdlLmM6Njc3CisjOiBzZXF1ZW5jZXIuYzoxMzUzIGJ1aWx0aW4vYW0uYzoxNTY2IGJ1aWx0aW4vbWVyZ2UuYzo2ODcKIG1zZ2lkICJnaXQgd3JpdGUtdHJlZSBmYWlsZWQgdG8gd3JpdGUgYSB0cmVlIgogbXNnc3RyICJcImdpdCB3cml0ZS10cmVlXCIgc2NobHVnIGJlaW0gU2NocmVpYmVuIGVpbmVzIFwiVHJlZVwiLU9iamVrdGVzIGZlaGwiCiAKLSM6IHNlcXVlbmNlci5jOjEzNjEgc2VxdWVuY2VyLmM6MTQxNgorIzogc2VxdWVuY2VyLmM6MTM4NiBzZXF1ZW5jZXIuYzoxNDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIGNvbW1pdCBtZXNzYWdlIGZyb20gJyVzJyIKIG1zZ3N0ciAiS29ubnRlIENvbW1pdC1CZXNjaHJlaWJ1bmcgdm9uICclcycgbmljaHQgbGVzZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzoxMzgzIGJ1aWx0aW4vYW0uYzoxNjA2IGJ1aWx0aW4vY29tbWl0LmM6MTY0NiBidWlsdGluL21lcmdlLmM6ODU4Ci0jOiBidWlsdGluL21lcmdlLmM6ODgzCisjOiBzZXF1ZW5jZXIuYzoxNDEzIGJ1aWx0aW4vYW0uYzoxNTg4IGJ1aWx0aW4vY29tbWl0LmM6MTY3MyBidWlsdGluL21lcmdlLmM6ODg2CisjOiBidWlsdGluL21lcmdlLmM6OTExCiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGNvbW1pdCBvYmplY3QiCiBtc2dzdHIgIkZlaGxlciBiZWltIFNjaHJlaWJlbiBkZXMgQ29tbWl0LU9iamVrdGVzLiIKIAotIzogc2VxdWVuY2VyLmM6MTQ0MworIzogc2VxdWVuY2VyLmM6MTQ3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0ICVzIgogbXNnc3RyICJLb25udGUgQ29tbWl0ICVzIG5pY2h0IHBhcnNlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjE0NDgKKyM6IHNlcXVlbmNlci5jOjE0NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHBhcmVudCBjb21taXQgJXMiCiBtc2dzdHIgIktvbm50ZSBFbHRlcm4tQ29tbWl0ICVzIG5pY2h0IHBhcnNlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjE1NDYgc2VxdWVuY2VyLmM6MTY1NAorIzogc2VxdWVuY2VyLmM6MTU2MiBzZXF1ZW5jZXIuYzoxNjczCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gY29tbWFuZDogJWQiCiBtc2dzdHIgIlVuYmVrYW5udGVyIEJlZmVobDogJWQiCiAKLSM6IHNlcXVlbmNlci5jOjE2MDEgc2VxdWVuY2VyLmM6MTYyNgorIzogc2VxdWVuY2VyLmM6MTYyMCBzZXF1ZW5jZXIuYzoxNjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAlZCBjb21taXRzLiIKIG1zZ3N0ciAiRGFzIGlzdCBlaW5lIEtvbWJpbmF0aW9uIGF1cyAlZCBDb21taXRzLiIKIAotIzogc2VxdWVuY2VyLmM6MTYxMSBzZXF1ZW5jZXIuYzo0NzQ0CisjOiBzZXF1ZW5jZXIuYzoxNjMwCiBtc2dpZCAibmVlZCBhIEhFQUQgdG8gZml4dXAiCiBtc2dzdHIgImJlbsO2dGlnZSBIRUFEIGbDvHIgZml4dXAiCiAKLSM6IHNlcXVlbmNlci5jOjE2MTMgc2VxdWVuY2VyLmM6MjkxMgorIzogc2VxdWVuY2VyLmM6MTYzMiBzZXF1ZW5jZXIuYzozMjEyCiBtc2dpZCAiY291bGQgbm90IHJlYWQgSEVBRCIKIG1zZ3N0ciAiS29ubnRlIEhFQUQgbmljaHQgbGVzZW4iCiAKLSM6IHNlcXVlbmNlci5jOjE2MTUKKyM6IHNlcXVlbmNlci5jOjE2MzQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBIRUFEJ3MgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgIktvbm50ZSBDb21taXQtQmVzY2hyZWlidW5nIHZvbiBIRUFEIG5pY2h0IGxlc2VuIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjIxCisjOiBzZXF1ZW5jZXIuYzoxNjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCB3cml0ZSAnJXMnIgogbXNnc3RyICJrYW5uICclcycgbmljaHQgc2NocmVpYmVuIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjI4IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NDEKKyM6IHNlcXVlbmNlci5jOjE2NDcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5NgogbXNnaWQgIlRoaXMgaXMgdGhlIDFzdCBjb21taXQgbWVzc2FnZToiCiBtc2dzdHIgIkRhcyBpc3QgZGllIGVyc3RlIENvbW1pdC1CZXNjaHJlaWJ1bmc6IgogCi0jOiBzZXF1ZW5jZXIuYzoxNjM2CisjOiBzZXF1ZW5jZXIuYzoxNjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGNvbW1pdCBtZXNzYWdlIG9mICVzIgogbXNnc3RyICJLb25udGUgQ29tbWl0LUJlc2NocmVpYnVuZyB2b24gJXMgbmljaHQgbGVzZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjQzCisjOiBzZXF1ZW5jZXIuYzoxNjYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgdGhlIGNvbW1pdCBtZXNzYWdlICMlZDoiCiBtc2dzdHIgIkRhcyBpc3QgQ29tbWl0LUJlc2NocmVpYnVuZyAjJWQ6IgogCi0jOiBzZXF1ZW5jZXIuYzoxNjQ5CisjOiBzZXF1ZW5jZXIuYzoxNjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBjb21taXQgbWVzc2FnZSAjJWQgd2lsbCBiZSBza2lwcGVkOiIKIG1zZ3N0ciAiRGllIENvbW1pdC1CZXNjaHJlaWJ1bmcgIyVkIHdpcmQgYXVzZ2VsYXNzZW46IgogCi0jOiBzZXF1ZW5jZXIuYzoxNzMyCisjOiBzZXF1ZW5jZXIuYzoxNzU2CiBtc2dpZCAieW91ciBpbmRleCBmaWxlIGlzIHVubWVyZ2VkLiIKIG1zZ3N0ciAiSWhyZSBJbmRleC1EYXRlaSBpc3QgbmljaHQgenVzYW1tZW5nZWbDvGhydC4iCiAKLSM6IHNlcXVlbmNlci5jOjE3MzkKKyM6IHNlcXVlbmNlci5jOjE3NjMKIG1zZ2lkICJjYW5ub3QgZml4dXAgcm9vdCBjb21taXQiCiBtc2dzdHIgImthbm4gZml4dXAgbmljaHQgYXVmIFJvb3QtQ29tbWl0IGFud2VuZGVuIgogCi0jOiBzZXF1ZW5jZXIuYzoxNzU4CisjOiBzZXF1ZW5jZXIuYzoxNzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbW1pdCAlcyBpcyBhIG1lcmdlIGJ1dCBubyAtbSBvcHRpb24gd2FzIGdpdmVuLiIKIG1zZ3N0ciAiQ29tbWl0ICVzIGlzdCBlaW4gTWVyZ2UsIGFiZXIgZGllIE9wdGlvbiAtbSB3dXJkZSBuaWNodCBhbmdlZ2ViZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzoxNzY2CisjOiBzZXF1ZW5jZXIuYzoxNzkwIHNlcXVlbmNlci5jOjE3OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICVzIGRvZXMgbm90IGhhdmUgcGFyZW50ICVkIgogbXNnc3RyICJDb21taXQgJXMgaGF0IGtlaW5lbiBFbHRlcm4tQ29tbWl0ICVkIgogCi0jOiBzZXF1ZW5jZXIuYzoxNzcwCi0jLCBjLWZvcm1hdAotbXNnaWQgIm1haW5saW5lIHdhcyBzcGVjaWZpZWQgYnV0IGNvbW1pdCAlcyBpcyBub3QgYSBtZXJnZS4iCi1tc2dzdHIgIkhhdXB0bGluaWUgd3VyZGUgc3BlemlmaXppZXJ0LCBhYmVyIENvbW1pdCAlcyBpc3Qga2VpbiBNZXJnZS4iCi0KLSM6IHNlcXVlbmNlci5jOjE3NzYKKyM6IHNlcXVlbmNlci5jOjE4MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGdldCBjb21taXQgbWVzc2FnZSBmb3IgJXMiCiBtc2dzdHIgIkthbm4ga2VpbmUgQ29tbWl0LUJlc2NocmVpYnVuZyBmw7xyICVzIGJla29tbWVuLiIKIAogIy4gVFJBTlNMQVRPUlM6IFRoZSBmaXJzdCAlcyB3aWxsIGJlIGEgInRvZG8iIGNvbW1hbmQgbGlrZQogIy4gInJldmVydCIgb3IgInBpY2siLCB0aGUgc2Vjb25kICVzIGEgU0hBMS4KLSM6IHNlcXVlbmNlci5jOjE3OTUKKyM6IHNlcXVlbmNlci5jOjE4MjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGNhbm5vdCBwYXJzZSBwYXJlbnQgY29tbWl0ICVzIgogbXNnc3RyICIlczoga2FubiBFbHRlcm4tQ29tbWl0ICVzIG5pY2h0IHBhcnNlbiIKIAotIzogc2VxdWVuY2VyLmM6MTg2MAorIzogc2VxdWVuY2VyLmM6MTg4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVuYW1lICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgenUgJyVzJyB1bWJlbmVubmVuLiIKIAotIzogc2VxdWVuY2VyLmM6MTkxNQorIzogc2VxdWVuY2VyLmM6MTk0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmV2ZXJ0ICVzLi4uICVzIgogbXNnc3RyICJLb25udGUgXCJyZXZlcnRcIiBuaWNodCBhdWYgJXMuLi4gKCVzKSBhdXNmw7xocmVuIgogCi0jOiBzZXF1ZW5jZXIuYzoxOTE2CisjOiBzZXF1ZW5jZXIuYzoxOTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBhcHBseSAlcy4uLiAlcyIKIG1zZ3N0ciAiS29ubnRlICVzLi4uICglcykgbmljaHQgYW53ZW5kZW4iCiAKLSM6IHNlcXVlbmNlci5jOjE5NzQKKyM6IHNlcXVlbmNlci5jOjE5NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHJvcHBpbmcgJXMgJXMgLS0gcGF0Y2ggY29udGVudHMgYWxyZWFkeSB1cHN0cmVhbVxuIgorbXNnc3RyICJXZWdsYXNzZW4gdm9uICVzICVzIC0tIFBhdGNoLUluaGFsdGUgc2luZCBiZXJlaXRzIGltIFVwc3RyZWFtLUJyYW5jaFxuIgorCisjOiBzZXF1ZW5jZXIuYzoyMDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCAlczogZmFpbGVkIHRvIHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICJnaXQgJXM6IEZlaGxlciBiZWltIExlc2VuIGRlcyBJbmRleCIKIAotIzogc2VxdWVuY2VyLmM6MTk4MQorIzogc2VxdWVuY2VyLmM6MjAyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWZyZXNoIHRoZSBpbmRleCIKIG1zZ3N0ciAiZ2l0ICVzOiBGZWhsZXIgYmVpbSBBa3R1YWxpc2llcmVuIGRlcyBJbmRleCIKIAotIzogc2VxdWVuY2VyLmM6MjA2MgorIzogc2VxdWVuY2VyLmM6MjEwMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBkb2VzIG5vdCBhY2NlcHQgYXJndW1lbnRzOiAnJXMnIgogbXNnc3RyICIlcyBha3plcHRpZXJ0IGtlaW5lIEFyZ3VtZW50ZTogJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MjA3MQorIzogc2VxdWVuY2VyLmM6MjExMQogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIGFyZ3VtZW50cyBmb3IgJXMiCiBtc2dzdHIgIkZlaGxlbmRlIEFyZ3VtZW50ZSBmw7xyICVzLiIKIAotIzogc2VxdWVuY2VyLmM6MjEzMAorIzogc2VxdWVuY2VyLmM6MjE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyIKK21zZ3N0ciAiS29ubnRlICclcycgbmljaHQgcGFyc2VuLiIKKworIzogc2VxdWVuY2VyLmM6MjIwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGxpbmUgJWQ6ICUuKnMiCiBtc2dzdHIgIlVuZ8O8bHRpZ2UgWmVpbGUgJWQ6ICUuKnMiCiAKLSM6IHNlcXVlbmNlci5jOjIxMzgKKyM6IHNlcXVlbmNlci5jOjIyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90ICclcycgd2l0aG91dCBhIHByZXZpb3VzIGNvbW1pdCIKIG1zZ3N0ciAiS2FubiAnJXMnIG5pY2h0IG9obmUgdm9yaGVyaWdlbiBDb21taXQgYXVzZsO8aHJlbiIKIAotIzogc2VxdWVuY2VyLmM6MjIwOQorIzogc2VxdWVuY2VyLmM6MjI5OAorbXNnaWQgImNhbmNlbGxpbmcgYSBjaGVycnkgcGlja2luZyBpbiBwcm9ncmVzcyIKK21zZ3N0ciAiQWJicmVjaGVuIGVpbmVzIGxhdWZlbmRlbiBcImNoZXJyeS1waWNrXCIiCisKKyM6IHNlcXVlbmNlci5jOjIzMDUKK21zZ2lkICJjYW5jZWxsaW5nIGEgcmV2ZXJ0IGluIHByb2dyZXNzIgorbXNnc3RyICJBYmJyZWNoZW4gZWluZXMgbGF1ZmVuZGVuIFwicmV2ZXJ0XCIiCisKKyM6IHNlcXVlbmNlci5jOjIzNDkKIG1zZ2lkICJwbGVhc2UgZml4IHRoaXMgdXNpbmcgJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nLiIKIG1zZ3N0ciAiIgogIkJpdHRlIGJlaGViZW4gU2llIGRpZXNlcywgaW5kZW0gU2llICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyBhdXNmw7xocmVuLiIKIAotIzogc2VxdWVuY2VyLmM6MjIxMQorIzogc2VxdWVuY2VyLmM6MjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnVzYWJsZSBpbnN0cnVjdGlvbiBzaGVldDogJyVzJyIKIG1zZ3N0ciAiVW5iZW51dHpiYXJlcyBJbnN0cnVrdGlvbnNibGF0dDogJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MjIxNgorIzogc2VxdWVuY2VyLmM6MjM1NgogbXNnaWQgIm5vIGNvbW1pdHMgcGFyc2VkLiIKIG1zZ3N0ciAiS2VpbmUgQ29tbWl0cyBnZXBhcnN0LiIKIAotIzogc2VxdWVuY2VyLmM6MjIyNworIzogc2VxdWVuY2VyLmM6MjM2NwogbXNnaWQgImNhbm5vdCBjaGVycnktcGljayBkdXJpbmcgYSByZXZlcnQuIgogbXNnc3RyICJLYW5uIENoZXJyeS1QaWNrIG5pY2h0IHfDpGhyZW5kIGVpbmVzIFJldmVydHMgYXVzZsO8aHJlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjIyMjkKKyM6IHNlcXVlbmNlci5jOjIzNjkKIG1zZ2lkICJjYW5ub3QgcmV2ZXJ0IGR1cmluZyBhIGNoZXJyeS1waWNrLiIKIG1zZ3N0ciAiS2FubiBSZXZlcnQgbmljaHQgd8OkaHJlbmQgZWluZXMgQ2hlcnJ5LVBpY2tzIGF1c2bDvGhyZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjk5CisjOiBzZXF1ZW5jZXIuYzoyNDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yICVzOiAlcyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgV2VydCBmw7xyICVzOiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MjM4MAorIzogc2VxdWVuY2VyLmM6MjU0MAogbXNnaWQgInVudXNhYmxlIHNxdWFzaC1vbnRvIgogbXNnc3RyICJVbmJlbnV0emJhcmVzIHNxdWFzaC1vbnRvLiIKIAotIzogc2VxdWVuY2VyLmM6MjM5NgorIzogc2VxdWVuY2VyLmM6MjU1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgb3B0aW9ucyBzaGVldDogJyVzJyIKIG1zZ3N0ciAiRmVobGVyaGFmdGVzIE9wdGlvbnNibGF0dDogJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MjQ3OSBzZXF1ZW5jZXIuYzo0MDA1CisjOiBzZXF1ZW5jZXIuYzoyNjQ0IHNlcXVlbmNlci5jOjQzNjEKIG1zZ2lkICJlbXB0eSBjb21taXQgc2V0IHBhc3NlZCIKIG1zZ3N0ciAibGVlcmUgTWVuZ2Ugdm9uIENvbW1pdHMgw7xiZXJnZWJlbiIKIAotIzogc2VxdWVuY2VyLmM6MjQ4NwotbXNnaWQgImEgY2hlcnJ5LXBpY2sgb3IgcmV2ZXJ0IGlzIGFscmVhZHkgaW4gcHJvZ3Jlc3MiCi1tc2dzdHIgIlwiY2hlcnJ5LXBpY2tcIiBvZGVyIFwicmV2ZXJ0XCIgaXN0IGJlcmVpdHMgaW0gR2FuZyIKKyM6IHNlcXVlbmNlci5jOjI2NjAKK21zZ2lkICJyZXZlcnQgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIKK21zZ3N0ciAiXCJyZXZlcnRcIiBpc3QgYmVyZWl0cyBpbSBHYW5nZSIKIAotIzogc2VxdWVuY2VyLmM6MjQ4OAotbXNnaWQgInRyeSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8IC0tcXVpdCB8IC0tYWJvcnQpXCIiCi1tc2dzdHIgInZlcnN1Y2hlbiBTaWUgXCJnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAtLXF1aXQgfCAtLWFib3J0KVwiIgorIzogc2VxdWVuY2VyLmM6MjY2MgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnkgXCJnaXQgcmV2ZXJ0ICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIgorbXNnc3RyICJWZXJzdWNoZW4gU2llIFwiZ2l0IHJldmVydCAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKIAotIzogc2VxdWVuY2VyLmM6MjQ5MQorIzogc2VxdWVuY2VyLmM6MjY2NQorbXNnaWQgImNoZXJyeS1waWNrIGlzIGFscmVhZHkgaW4gcHJvZ3Jlc3MiCittc2dzdHIgIlwiY2hlcnJ5LXBpY2tcIiB3aXJkIGJlcmVpdHMgZHVyY2hnZWbDvGhydCIKKworIzogc2VxdWVuY2VyLmM6MjY2NworIywgYy1mb3JtYXQKK21zZ2lkICJ0cnkgXCJnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAlcy0tYWJvcnQgfCAtLXF1aXQpXCIiCittc2dzdHIgIlZlcnN1Y2hlbiBTaWUgXCJnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAlcy0tYWJvcnQgfCAtLXF1aXQpXCIiCisKKyM6IHNlcXVlbmNlci5jOjI2ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBzZXF1ZW5jZXIgZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgIktvbm50ZSBcInNlcXVlbmNlclwiLVZlcnplaWNobmlzICclcycgbmljaHQgZXJzdGVsbGVuLiIKIAotIzogc2VxdWVuY2VyLmM6MjUwNQorIzogc2VxdWVuY2VyLmM6MjY5NgogbXNnaWQgImNvdWxkIG5vdCBsb2NrIEhFQUQiCiBtc2dzdHIgIktvbm50ZSBIRUFEIG5pY2h0IHNwZXJyZW4iCiAKLSM6IHNlcXVlbmNlci5jOjI1NjAgc2VxdWVuY2VyLmM6Mzc2MQorIzogc2VxdWVuY2VyLmM6Mjc1NiBzZXF1ZW5jZXIuYzo0MDk5CiBtc2dpZCAibm8gY2hlcnJ5LXBpY2sgb3IgcmV2ZXJ0IGluIHByb2dyZXNzIgotbXNnc3RyICJrZWluIFwiY2hlcnJ5LXBpY2tcIiBvZGVyIFwicmV2ZXJ0XCIgaW0gR2FuZyIKK21zZ3N0ciAia2VpbiBcImNoZXJyeS1waWNrXCIgb2RlciBcInJldmVydFwiIGltIEdhbmdlIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTYyCisjOiBzZXF1ZW5jZXIuYzoyNzU4IHNlcXVlbmNlci5jOjI3NjkKIG1zZ2lkICJjYW5ub3QgcmVzb2x2ZSBIRUFEIgogbXNnc3RyICJrYW5uIEhFQUQgbmljaHQgYXVmbMO2c2VuIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTY0IHNlcXVlbmNlci5jOjI1OTkKKyM6IHNlcXVlbmNlci5jOjI3NjAgc2VxdWVuY2VyLmM6MjgwNAogbXNnaWQgImNhbm5vdCBhYm9ydCBmcm9tIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIgogbXNnc3RyICJrYW5uIG5pY2h0IGFiYnJlY2hlbjogYmluIGF1ZiBlaW5lbSBCcmFuY2gsIGRlciBub2NoIG5pY2h0IGdlYm9yZW4gaXN0IgogCi0jOiBzZXF1ZW5jZXIuYzoyNTg1IGJ1aWx0aW4vZ3JlcC5jOjcyMQorIzogc2VxdWVuY2VyLmM6Mjc5MCBidWlsdGluL2dyZXAuYzo3MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG9wZW4gJyVzJyIKIG1zZ3N0ciAia2FubiAnJXMnIG5pY2h0IMO2ZmZuZW4iCiAKLSM6IHNlcXVlbmNlci5jOjI1ODcKKyM6IHNlcXVlbmNlci5jOjI3OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJyVzJzogJXMiCiBtc2dzdHIgIkthbm4gJyVzJyBuaWNodCBsZXNlbjogJXMiCiAKLSM6IHNlcXVlbmNlci5jOjI1ODgKKyM6IHNlcXVlbmNlci5jOjI3OTMKIG1zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIgogbXNnc3RyICJVbmVyd2FydGV0ZXMgRGF0ZWllbmRlIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTk0CisjOiBzZXF1ZW5jZXIuYzoyNzk5CiAjLCBjLWZvcm1hdAogbXNnaWQgInN0b3JlZCBwcmUtY2hlcnJ5LXBpY2sgSEVBRCBmaWxlICclcycgaXMgY29ycnVwdCIKIG1zZ3N0ciAiZ2VzcGVpY2hlcnRlIFwicHJlLWNoZXJyeS1waWNrXCIgSEVBRCBEYXRlaSAnJXMnIGlzdCBiZXNjaMOkZGlndCIKIAotIzogc2VxdWVuY2VyLmM6MjYwNQorIzogc2VxdWVuY2VyLmM6MjgxMAogbXNnaWQgIllvdSBzZWVtIHRvIGhhdmUgbW92ZWQgSEVBRC4gTm90IHJld2luZGluZywgY2hlY2sgeW91ciBIRUFEISIKIG1zZ3N0ciAiIgogIlNpZSBzY2hlaW5lbiBIRUFEIHZlcsOkbmRlcnQgenUgaGFiZW4uIEtlaW5lIFLDvGNrc3B1bHVuZywgcHLDvGZlbiBTaWUgSEVBRC4iCiAKLSM6IHNlcXVlbmNlci5jOjI3MDkgc2VxdWVuY2VyLmM6MzY3OQorIzogc2VxdWVuY2VyLmM6Mjg1MQorbXNnaWQgIm5vIHJldmVydCBpbiBwcm9ncmVzcyIKK21zZ3N0ciAiS2VpbiBSZXZlcnQgaW0gR2FuZ2UiCisKKyM6IHNlcXVlbmNlci5jOjI4NTkKK21zZ2lkICJubyBjaGVycnktcGljayBpbiBwcm9ncmVzcyIKK21zZ3N0ciAia2VpbiBcImNoZXJyeS1waWNrXCIgaW0gR2FuZ2UiCisKKyM6IHNlcXVlbmNlci5jOjI4NjkKK21zZ2lkICJmYWlsZWQgdG8gc2tpcCB0aGUgY29tbWl0IgorbXNnc3RyICLDnGJlcnNwcmluZ2VuIGRlcyBDb21taXRzIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBzZXF1ZW5jZXIuYzoyODc2Cittc2dpZCAidGhlcmUgaXMgbm90aGluZyB0byBza2lwIgorbXNnc3RyICJOaWNodHMgenVtIMOcYmVyc3ByaW5nZW4gdm9yaGFuZGVuIgorCisjOiBzZXF1ZW5jZXIuYzoyODc5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJoYXZlIHlvdSBjb21taXR0ZWQgYWxyZWFkeT9cbiIKKyJ0cnkgXCJnaXQgJXMgLS1jb250aW51ZVwiIgorbXNnc3RyICIiCisiSGFiZW4gU2llIGJlcmVpdHMgY29tbWl0dGV0P1xuIgorIlZlcnN1Y2hlbiBTaWUgXCJnaXQgJXMgLS1jb250aW51ZVwiIgorCisjOiBzZXF1ZW5jZXIuYzozMDAzIHNlcXVlbmNlci5jOjQwMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHVwZGF0ZSAlcyIKIG1zZ3N0ciAiS29ubnRlICVzIG5pY2h0IGFrdHVhbGlzaWVyZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzQ3IHNlcXVlbmNlci5jOjM2NTkKKyM6IHNlcXVlbmNlci5jOjMwNDIgc2VxdWVuY2VyLmM6Mzk5MQogbXNnaWQgImNhbm5vdCByZWFkIEhFQUQiCiBtc2dzdHIgIkthbm4gSEVBRCBuaWNodCBsZXNlbiIKIAotIzogc2VxdWVuY2VyLmM6Mjc2MgorIzogc2VxdWVuY2VyLmM6MzA1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY29weSAnJXMnIHRvICclcyciCiBtc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IG5hY2ggJyVzJyBrb3BpZXJlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjI3NzAKKyM6IHNlcXVlbmNlci5jOjMwNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBjYW4gYW1lbmQgdGhlIGNvbW1pdCBub3csIHdpdGhcbiIKQEAgLTUxNjUsMjcgKzcyMTQsMjIgQEAKICJcbiIKICIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzgwCisjOiBzZXF1ZW5jZXIuYzozMDc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBhcHBseSAlcy4uLiAlLipzIgogbXNnc3RyICJLb25udGUgJXMuLi4gKCUuKnMpIG5pY2h0IGFud2VuZGVuIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzg3CisjOiBzZXF1ZW5jZXIuYzozMDg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBtZXJnZSAlLipzIgogbXNnc3RyICJLb25udGUgXCIlLipzXCIgbmljaHQgenVzYW1tZW5mw7xocmVuLiIKIAotIzogc2VxdWVuY2VyLmM6Mjc5OCBzZXF1ZW5jZXIuYzoyODAyIGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDAKKyM6IHNlcXVlbmNlci5jOjMwOTggc2VxdWVuY2VyLmM6MzEwMiBidWlsdGluL2RpZmZ0b29sLmM6NjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjb3B5ICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgbmFjaCAnJXMnIGtvcGllcmVuLiIKIAotIzogc2VxdWVuY2VyLmM6MjgyNCBzZXF1ZW5jZXIuYzozMjQyIGJ1aWx0aW4vcmViYXNlLmM6NTgwIGJ1aWx0aW4vcmViYXNlLmM6MTAxOQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzcyIGJ1aWx0aW4vcmViYXNlLmM6MTQyNgotbXNnaWQgImNvdWxkIG5vdCByZWFkIGluZGV4IgotbXNnc3RyICJLb25udGUgZGVuIEluZGV4IG5pY2h0IGxlc2VuLiIKLQotIzogc2VxdWVuY2VyLmM6MjgyOQorIzogc2VxdWVuY2VyLmM6MzEyOQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhlY3V0aW9uIGZhaWxlZDogJXNcbiIKQEAgLTUyMDEsMTEgKzcyNDUsMTEgQEAKICJcbiIKICJhdXNmw7xocmVuLlxuIgogCi0jOiBzZXF1ZW5jZXIuYzoyODM1CisjOiBzZXF1ZW5jZXIuYzozMTM1CiBtc2dpZCAiYW5kIG1hZGUgY2hhbmdlcyB0byB0aGUgaW5kZXggYW5kL29yIHRoZSB3b3JraW5nIHRyZWVcbiIKIG1zZ3N0ciAiRGVyIEluZGV4IHVuZC9vZGVyIGRhcyBBcmJlaXRzdmVyemVpY2huaXMgd3VyZGUgZ2XDpG5kZXJ0LlxuIgogCi0jOiBzZXF1ZW5jZXIuYzoyODQxCisjOiBzZXF1ZW5jZXIuYzozMTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleGVjdXRpb24gc3VjY2VlZGVkOiAlc1xuIgpAQCAtNTIyMyw3NyArNzI2Nyw3MyBAQAogIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAiXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI5MDIKKyM6IHNlcXVlbmNlci5jOjMyMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWxsZWdhbCBsYWJlbCBuYW1lOiAnJS4qcyciCiBtc2dzdHIgIlVuZXJsYXVidGVyIEJlc2NocmlmdHVuZ3NuYW1lOiAnJS4qcyciCiAKLSM6IHNlcXVlbmNlci5jOjI5NTQKKyM6IHNlcXVlbmNlci5jOjMyNTYKIG1zZ2lkICJ3cml0aW5nIGZha2Ugcm9vdCBjb21taXQiCiBtc2dzdHIgInVuZWNodGVuIFJvb3QtQ29tbWl0IHNjaHJlaWJlbiIKIAotIzogc2VxdWVuY2VyLmM6Mjk1OQorIzogc2VxdWVuY2VyLmM6MzI2MQogbXNnaWQgIndyaXRpbmcgc3F1YXNoLW9udG8iCiBtc2dzdHIgInNxdWFzaC1vbnRvIHNjaHJlaWJlbiIKIAotIzogc2VxdWVuY2VyLmM6Mjk5NyBidWlsdGluL3JlYmFzZS5jOjU4NSBidWlsdGluL3JlYmFzZS5jOjU5MQorIzogc2VxdWVuY2VyLmM6MzI5OSBidWlsdGluL3JlYmFzZS5jOjg4MCBidWlsdGluL3JlYmFzZS5jOjg4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzIgogbXNnc3RyICJGZWhsZXIgYmVpbSBGaW5kZW4gZGVzIFwiVHJlZVwiLU9iamVrdGVzIHZvbiAlcy4iCiAKLSM6IHNlcXVlbmNlci5jOjMwMTUgYnVpbHRpbi9yZWJhc2UuYzo2MDQKLW1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgaW5kZXgiCi1tc2dzdHIgIktvbm50ZSBJbmRleCBuaWNodCBzY2hyZWliZW4uIgotCi0jOiBzZXF1ZW5jZXIuYzozMDQyCisjOiBzZXF1ZW5jZXIuYzozMzQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlICclcyciCiBtc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGF1ZmzDtnNlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjMwNjgKKyM6IHNlcXVlbmNlci5jOjMzNzUKIG1zZ2lkICJjYW5ub3QgbWVyZ2Ugd2l0aG91dCBhIGN1cnJlbnQgcmV2aXNpb24iCiBtc2dzdHIgIkthbm4gbmljaHQgb2huZSBlaW5lbiBha3R1ZWxsZW4gQ29tbWl0IG1lcmdlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjMwOTAKKyM6IHNlcXVlbmNlci5jOjMzOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICclLipzJyIKIG1zZ3N0ciAiS29ubnRlICclLipzJyBuaWNodCBwYXJzZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzozMDk5CisjOiBzZXF1ZW5jZXIuYzozNDA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gbWVyZ2U6ICclLipzJyIKIG1zZ3N0ciAiTmljaHRzIHp1bSBadXNhbW1lbmbDvGhyZW46ICclLipzJyIKIAotIzogc2VxdWVuY2VyLmM6MzExMQorIzogc2VxdWVuY2VyLmM6MzQxOAogbXNnaWQgIm9jdG9wdXMgbWVyZ2UgY2Fubm90IGJlIGV4ZWN1dGVkIG9uIHRvcCBvZiBhIFtuZXcgcm9vdF0iCiBtc2dzdHIgIiIKICJPY3R1cHVzLU1lcmdlIGthbm4gbmljaHQgYXVmIEJhc2lzIHZvbiBbbmV1ZW0gUm9vdC1Db21taXRdIGF1c2dlZsO8aHJ0IHdlcmRlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjMxMjYKKyM6IHNlcXVlbmNlci5jOjM0MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCBjb21taXQgbWVzc2FnZSBvZiAnJXMnIgogbXNnc3RyICJLb25udGUga2VpbmUgQ29tbWl0LUJlc2NocmVpYnVuZyB2b24gJyVzJyBiZWtvbW1lbi4iCiAKLSM6IHNlcXVlbmNlci5jOjMyNzQKKyM6IHNlcXVlbmNlci5jOjM1OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGV2ZW4gYXR0ZW1wdCB0byBtZXJnZSAnJS4qcyciCiBtc2dzdHIgIktvbm50ZSBuaWNodCBlaW5tYWwgdmVyc3VjaGVuICclLipzJyB6dSBtZXJnZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzozMjkwCisjOiBzZXF1ZW5jZXIuYzozNjEwCiBtc2dpZCAibWVyZ2U6IFVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAibWVyZ2U6IEtvbm50ZSBuZXVlIEluZGV4LURhdGVpIG5pY2h0IHNjaHJlaWJlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjMzNTggYnVpbHRpbi9yZWJhc2UuYzoyNjgKKyM6IHNlcXVlbmNlci5jOjM2NzkgYnVpbHRpbi9yZWJhc2UuYzo3MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guXG4iCiBtc2dzdHIgIkF1dG9tYXRpc2NoZW4gU3Rhc2ggYW5nZXdlbmRldC5cbiIKIAotIzogc2VxdWVuY2VyLmM6MzM3MAorIzogc2VxdWVuY2VyLmM6MzY5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RvcmUgJXMiCiBtc2dzdHIgImthbm4gJXMgbmljaHQgc3BlaWNoZXJuIgogCi0jOiBzZXF1ZW5jZXIuYzozMzczIGJ1aWx0aW4vcmViYXNlLmM6Mjg0CisjOiBzZXF1ZW5jZXIuYzozNjk0IGJ1aWx0aW4vcmViYXNlLmM6NzUzIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkFwcGx5aW5nIGF1dG9zdGFzaCByZXN1bHRlZCBpbiBjb25mbGljdHMuXG4iCkBAIC01MzA0LDMxICs3MzQ0LDI2IEBACiAiSWhyZSDDhG5kZXJ1bmdlbiBzaW5kIGltIFN0YXNoIHNpY2hlci5cbiIKICJTaWUga8O2bm5lbiBqZWRlcnplaXQgXCJnaXQgc3Rhc2ggcG9wXCIgb2RlciBcImdpdCBzdGFzaCBkcm9wXCIgYXVzZsO8aHJlbi5cbiIKIAotIzogc2VxdWVuY2VyLmM6MzQyNwotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY2hlY2tvdXQgJXMiCi1tc2dzdHIgIktvbm50ZSAlcyBuaWNodCBhdXNjaGVja2VuLiIKLQotIzogc2VxdWVuY2VyLmM6MzQ0MQorIzogc2VxdWVuY2VyLmM6Mzc1NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogbm90IGEgdmFsaWQgT0lEIgogbXNnc3RyICIlczoga2VpbmUgZ8O8bHRpZ2UgT0lEIgogCi0jOiBzZXF1ZW5jZXIuYzozNDQ2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MjQKKyM6IHNlcXVlbmNlci5jOjM3NjAgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc3OQogbXNnaWQgImNvdWxkIG5vdCBkZXRhY2ggSEVBRCIKIG1zZ3N0ciAiS29ubnRlIEhFQUQgbmljaHQgbG9zbMO2c2VuIgogCi0jOiBzZXF1ZW5jZXIuYzozNDYxCisjOiBzZXF1ZW5jZXIuYzozNzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN0b3BwZWQgYXQgSEVBRFxuIgogbXNnc3RyICJBbmdlaGFsdGVuIGJlaSBIRUFEXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM0NjMKKyM6IHNlcXVlbmNlci5jOjM3NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAlc1xuIgogbXNnc3RyICJBbmdlaGFsdGVuIGJlaSAlc1xuIgogCi0jOiBzZXF1ZW5jZXIuYzozNDcxCisjOiBzZXF1ZW5jZXIuYzozNzg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDb3VsZCBub3QgZXhlY3V0ZSB0aGUgdG9kbyBjb21tYW5kXG4iCkBAIC01MzUwLDUwICs3Mzg1LDUwIEBACiAiICAgIGdpdCByZWJhc2UgLS1lZGl0LXRvZG9cbiIKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM1NDMKKyM6IHNlcXVlbmNlci5jOjM4NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAlcy4uLiAgJS4qc1xuIgogbXNnc3RyICJBbmdlaGFsdGVuIGJlaSAlcy4uLiAlLipzXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM2MjIKKyM6IHNlcXVlbmNlci5jOjM5NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBjb21tYW5kICVkIgogbXNnc3RyICJVbmJla2FubnRlciBCZWZlaGwgJWQiCiAKLSM6IHNlcXVlbmNlci5jOjM2NjcKKyM6IHNlcXVlbmNlci5jOjM5OTkKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBvcmlnLWhlYWQiCiBtc2dzdHIgIktvbm50ZSBvcmlnLWhlYWQgbmljaHQgbGVzZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzozNjcyIHNlcXVlbmNlci5jOjQ3NDEKKyM6IHNlcXVlbmNlci5jOjQwMDQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCAnb250byciCiBtc2dzdHIgIktvbm50ZSAnb250bycgbmljaHQgbGVzZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzozNjg2CisjOiBzZXF1ZW5jZXIuYzo0MDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB1cGRhdGUgSEVBRCB0byAlcyIKIG1zZ3N0ciAiS29ubnRlIEhFQUQgbmljaHQgYXVmICVzIGFrdHVhbGlzaWVyZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzozNzcyCisjOiBzZXF1ZW5jZXIuYzo0MTExCiBtc2dpZCAiY2Fubm90IHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICJSZWJhc2UgbmljaHQgbcO2Z2xpY2g6IFNpZSBoYWJlbiDDhG5kZXJ1bmdlbiwgZGllIG5pY2h0IHp1bSBDb21taXRcbiIKICJ2b3JnZW1lcmt0IHNpbmQuIgogCi0jOiBzZXF1ZW5jZXIuYzozNzgxCisjOiBzZXF1ZW5jZXIuYzo0MTIwCiBtc2dpZCAiY2Fubm90IGFtZW5kIG5vbi1leGlzdGluZyBjb21taXQiCiBtc2dzdHIgIkthbm4gbmljaHQgZXhpc3RpZXJlbmRlbiBDb21taXQgbmljaHQgbmFjaGJlc3Nlcm4uIgogCi0jOiBzZXF1ZW5jZXIuYzozNzgzCisjOiBzZXF1ZW5jZXIuYzo0MTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZmlsZTogJyVzJyIKIG1zZ3N0ciAiVW5nw7xsdGlnZSBEYXRlaTogJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6Mzc4NQorIzogc2VxdWVuY2VyLmM6NDEyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbnRlbnRzOiAnJXMnIgogbXNnc3RyICJVbmfDvGx0aWdlIEluaGFsdGU6ICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjM3ODgKKyM6IHNlcXVlbmNlci5jOjQxMjcKIG1zZ2lkICIiCiAiXG4iCiAiWW91IGhhdmUgdW5jb21taXR0ZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS4gUGxlYXNlLCBjb21taXQgdGhlbVxuIgpAQCAtNTQwNCwxMjUgKzc0MzksNTkgQEAKICJjb21taXR0ZW4gU2llIGRpZXNlIHp1ZXJzdCB1bmQgZsO8aHJlbiBTaWUgZGFubiAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJ1xuIgogImVybmV1dCBhdXMuIgogCi0jOiBzZXF1ZW5jZXIuYzozODI0IHNlcXVlbmNlci5jOjM4NjIKKyM6IHNlcXVlbmNlci5jOjQxNjMgc2VxdWVuY2VyLmM6NDIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZmlsZTogJyVzJyIKIG1zZ3N0ciAiS29ubnRlIERhdGVpIG5pY2h0IHNjaHJlaWJlbjogJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6Mzg3NworIzogc2VxdWVuY2VyLmM6NDIxNwogbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgQ0hFUlJZX1BJQ0tfSEVBRCIKIG1zZ3N0ciAiS29ubnRlIENIRVJSWV9QSUNLX0hFQUQgbmljaHQgbMO2c2NoZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzozODg0CisjOiBzZXF1ZW5jZXIuYzo0MjI0CiBtc2dpZCAiY291bGQgbm90IGNvbW1pdCBzdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIktvbm50ZSDDhG5kZXJ1bmdlbiBhdXMgZGVyIFN0YWdpbmctQXJlYSBuaWNodCBjb21taXR0ZW4uIgogCi0jOiBzZXF1ZW5jZXIuYzozOTgyCisjOiBzZXF1ZW5jZXIuYzo0MzM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjYW4ndCBjaGVycnktcGljayBhICVzIgogbXNnc3RyICIlczogJXMga2FubiBuaWNodCBpbiBcImNoZXJyeS1waWNrXCIgYmVudXR6dCB3ZXJkZW4iCiAKLSM6IHNlcXVlbmNlci5jOjM5ODYKKyM6IHNlcXVlbmNlci5jOjQzNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGJhZCByZXZpc2lvbiIKIG1zZ3N0ciAiJXM6IHVuZ8O8bHRpZ2VyIENvbW1pdCIKIAotIzogc2VxdWVuY2VyLmM6NDAyMQorIzogc2VxdWVuY2VyLmM6NDM3NwogbXNnaWQgImNhbid0IHJldmVydCBhcyBpbml0aWFsIGNvbW1pdCIKIG1zZ3N0ciAiS2FubiBuaWNodCBhbHMgYWxsZXJlcnN0ZW4gQ29tbWl0IGVpbmVuIFJldmVydCBhdXNmw7xocmVuLiIKIAotIzogc2VxdWVuY2VyLmM6NDQ2NgorIzogc2VxdWVuY2VyLmM6NDg0NgogbXNnaWQgIm1ha2Vfc2NyaXB0OiB1bmhhbmRsZWQgb3B0aW9ucyIKIG1zZ3N0ciAibWFrZV9zY3JpcHQ6IHVuYmVoYW5kZWx0ZSBPcHRpb25lbiIKIAotIzogc2VxdWVuY2VyLmM6NDQ2OQorIzogc2VxdWVuY2VyLmM6NDg0OQogbXNnaWQgIm1ha2Vfc2NyaXB0OiBlcnJvciBwcmVwYXJpbmcgcmV2aXNpb25zIgogbXNnc3RyICJtYWtlX3NjcmlwdDogRmVobGVyIGJlaW0gVm9yYmVyZWl0ZW4gZGVyIENvbW1pdHMiCiAKLSM6IHNlcXVlbmNlci5jOjQ1MDkgc2VxdWVuY2VyLmM6NDU2NSBzZXF1ZW5jZXIuYzo0ODQwCi0jLCBjLWZvcm1hdAotbXNnaWQgInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIKLW1zZ3N0ciAiVW5iZW51dHpiYXJlIFRPRE8tTGlzdGU6ICclcyciCi0KLSM6IHNlcXVlbmNlci5jOjQ2MjAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotInVucmVjb2duaXplZCBzZXR0aW5nICVzIGZvciBvcHRpb24gcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2suIElnbm9yaW5nLiIKLW1zZ3N0ciAiIgotIk5pY2h0IGVya2FubnRlIEVpbnN0ZWxsdW5nICVzIGbDvHIgT3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiAiCi0iSWdub3JpZXJlLiIKLQotIzogc2VxdWVuY2VyLmM6NDY5MAotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCi0iRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCi1tc2dzdHIgIiIKLSJXYXJudW5nOiBFaW5pZ2UgQ29tbWl0cyBrw7ZubnRlbiBhdXMgVmVyc2VoZW4gZW50ZmVybnQgd29yZGVuIHNlaW4uXG4iCi0iRW50ZmVybnRlIENvbW1pdHMgKG5ldSB6dSBhbHQpOlxuIgotCi0jOiBzZXF1ZW5jZXIuYzo0Njk3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJUbyBhdm9pZCB0aGlzIG1lc3NhZ2UsIHVzZSBcImRyb3BcIiB0byBleHBsaWNpdGx5IHJlbW92ZSBhIGNvbW1pdC5cbiIKLSJcbiIKLSJVc2UgJ2dpdCBjb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2snIHRvIGNoYW5nZSB0aGUgbGV2ZWwgb2YgIgotIndhcm5pbmdzLlxuIgotIlRoZSBwb3NzaWJsZSBiZWhhdmlvdXJzIGFyZTogaWdub3JlLCB3YXJuLCBlcnJvci5cbiIKLSJcbiIKLW1zZ3N0ciAiIgotIlVtIGRpZXNlIE1lbGR1bmcgenUgdmVybWVpZGVuLCBiZW51dHplbiBTaWUgXCJkcm9wXCIsIHVtIGV4bGl6aXQgQ29tbWl0cyB6dVxuIgotImVudGZlcm5lbi5cbiIKLSJcbiIKLSJCZW51dHplbiBTaWUgJ2dpdCBjb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2snLCB1bSBkaWUgU3R1ZmUgZGVyXG4iCi0iV2FybnVuZ2VuIHp1IMOkbmRlcm4uXG4iCi0iRGllIG3DtmdsaWNoZW4gVmVyaGFsdGVuc3dlaXNlbiBzaW5kOiBpZ25vcmUsIHdhcm4sIGVycm9yLlxuIgotCi0jOiBzZXF1ZW5jZXIuYzo0NzEwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJZb3UgY2FuIGZpeCB0aGlzIHdpdGggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLSIKLSJjb250aW51ZScuXG4iCi0iT3IgeW91IGNhbiBhYm9ydCB0aGUgcmViYXNlIHdpdGggJ2dpdCByZWJhc2UgLS1hYm9ydCcuXG4iCi1tc2dzdHIgIiIKLSJTaWUga8O2bm5lbiBkYXMgbWl0ICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyBiZWhlYmVuLiBGw7xocmVuIFNpZSBkYW5hY2hcbiIKLSInZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJyBhdXMuXG4iCi0iT2RlciBTaWUga8O2bm5lbiBkZW4gUmViYXNlIG1pdCAnZ2l0IHJlYmFzZSAtLWFib3J0JyBhYmJyZWNoZW4uXG4iCi0KLSM6IHNlcXVlbmNlci5jOjQ4NDggc2VxdWVuY2VyLmM6NDg4NgorIzogc2VxdWVuY2VyLmM6NTA4MyBzZXF1ZW5jZXIuYzo1MTAwCiBtc2dpZCAibm90aGluZyB0byBkbyIKIG1zZ3N0ciAiTmljaHRzIHp1IHR1bi4iCiAKLSM6IHNlcXVlbmNlci5jOjQ4NTIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmQpIgotbXNnaWRfcGx1cmFsICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZHMpIgotbXNnc3RyWzBdICJSZWJhc2Ugdm9uICVzIGF1ZiAlcyAoJWQgS29tbWFuZG8pIgotbXNnc3RyWzFdICJSZWJhc2Ugdm9uICVzIGF1ZiAlcyAoJWQgS29tbWFuZG9zKSIKLQotIzogc2VxdWVuY2VyLmM6NDg2NAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcycuIgotbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBuYWNoICclcycga29waWVyZW4uIgotCi0jOiBzZXF1ZW5jZXIuYzo0ODY4IHNlcXVlbmNlci5jOjQ4OTcKLW1zZ2lkICJjb3VsZCBub3QgdHJhbnNmb3JtIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgIktvbm50ZSBkaWUgVE9ETy1MaXN0ZSBuaWNodCB1bXdhbmRlbG4uIgotCi0jOiBzZXF1ZW5jZXIuYzo0OTAwCisjOiBzZXF1ZW5jZXIuYzo1MTE5CiBtc2dpZCAiY291bGQgbm90IHNraXAgdW5uZWNlc3NhcnkgcGljayBjb21tYW5kcyIKIG1zZ3N0ciAiS29ubnRlIHVubsO2dGlnZSBcInBpY2tcIi1CZWZlaGxlIG5pY2h0IGF1c2xhc3Nlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjQ5ODMKKyM6IHNlcXVlbmNlci5jOjUyMTMKIG1zZ2lkICJ0aGUgc2NyaXB0IHdhcyBhbHJlYWR5IHJlYXJyYW5nZWQuIgogbXNnc3RyICJEYXMgU2NyaXB0IHd1cmRlIGJlcmVpdHMgdW1nZW9yZG5ldC4iCiAKLSM6IHNldHVwLmM6MTIzCisjOiBzZXR1cC5jOjEyNAogIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSIKLW1zZ3N0ciAiJyVzJyBsaWVndCBhdcOfZXJoYWxiIGRlcyBSZXBvc2l0b3JpZXMuIgorbXNnaWQgIiclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IGF0ICclcyciCittc2dzdHIgIiclcycgbGllZ3QgYXXDn2VyaGFsYiBkZXMgUmVwb3NpdG9yaWVzIHZvbiAnJXMnIgogCi0jOiBzZXR1cC5jOjE3MgorIzogc2V0dXAuYzoxNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiVzOiBubyBzdWNoIHBhdGggaW4gdGhlIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTU1MzIsNyArNzUwMSw3IEBACiAiQmVudXR6ZW4gU2llICdnaXQgPEJlZmVobD4gLS0gPFBmYWQ+Li4uJyB6dXIgQW5nYWJlIHZvbiBQZmFkZW4sIGRpZSBsb2thbFxuIgogIm5pY2h0IGV4aXN0aWVyZW4uIgogCi0jOiBzZXR1cC5jOjE4NQorIzogc2V0dXAuYzoxODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImFtYmlndW91cyBhcmd1bWVudCAnJXMnOiB1bmtub3duIHJldmlzaW9uIG9yIHBhdGggbm90IGluIHRoZSB3b3JraW5nIHRyZWUuXG4iCkBAIC01NTQ0LDEzICs3NTEzLDEzIEBACiAiQmVudXR6ZW4gU2llICctLScsIHVtIFBmYWRlIHVuZCBDb21taXRzIHp1IHRyZW5uZW4sIMOkaG5saWNoIHdpZTpcbiIKICInZ2l0IDxCZWZlaGw+IFs8Q29tbWl0Pi4uLl0gLS0gWzxEYXRlaT4uLi5dJyIKIAotIzogc2V0dXAuYzoyMzQKKyM6IHNldHVwLmM6MjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9wdGlvbiAnJXMnIG11c3QgY29tZSBiZWZvcmUgbm9uLW9wdGlvbiBhcmd1bWVudHMiCiBtc2dzdHIgIiIKICJEaWUgT3B0aW9uICclcycgbXVzcyB2b3IgZGVuIEFyZ3VtZW50ZW4ga29tbWVuLCBkaWUga2VpbmUgT3B0aW9uZW4gc2luZC4iCiAKLSM6IHNldHVwLmM6MjUzCisjOiBzZXR1cC5jOjI3MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IGJvdGggcmV2aXNpb24gYW5kIGZpbGVuYW1lXG4iCkBAIC01NTYxLDkzICs3NTMwLDkzIEBACiAiQmVudXR6ZW4gU2llICctLScsIHVtIFBmYWRlIHVuZCBDb21taXRzIHp1IHRyZW5uZW4sIMOkaG5saWNoIHdpZTpcbiIKICInZ2l0IDxCZWZlaGw+IFs8Q29tbWl0Pi4uLl0gLS0gWzxEYXRlaT4uLi5dJyIKIAotIzogc2V0dXAuYzozODkKKyM6IHNldHVwLmM6NDA5CiBtc2dpZCAidW5hYmxlIHRvIHNldCB1cCB3b3JrIHRyZWUgdXNpbmcgaW52YWxpZCBjb25maWciCiBtc2dzdHIgIiIKICJLb25udGUgQXJiZWl0c3ZlcnplaWNobmlzIG1pdCB1bmfDvGx0aWdlciBLb25maWd1cmF0aW9uIG5pY2h0IGVpbnJpY2h0ZW4uIgogCi0jOiBzZXR1cC5jOjM5MworIzogc2V0dXAuYzo0MTMKIG1zZ2lkICJ0aGlzIG9wZXJhdGlvbiBtdXN0IGJlIHJ1biBpbiBhIHdvcmsgdHJlZSIKIG1zZ3N0ciAiRGllc2UgT3BlcmF0aW9uIG11c3MgaW4gZWluZW0gQXJiZWl0c3ZlcnplaWNobmlzIGF1c2dlZsO8aHJ0IHdlcmRlbi4iCiAKLSM6IHNldHVwLmM6NTI3CisjOiBzZXR1cC5jOjU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJFeHBlY3RlZCBnaXQgcmVwbyB2ZXJzaW9uIDw9ICVkLCBmb3VuZCAlZCIKIG1zZ3N0ciAiRXJ3YXJ0ZXRlIEdpdC1SZXBvc2l0b3J5LVZlcnNpb24gPD0gJWQsICVkIGdlZnVuZGVuIgogCi0jOiBzZXR1cC5jOjUzNQorIzogc2V0dXAuYzo1NjcKIG1zZ2lkICJ1bmtub3duIHJlcG9zaXRvcnkgZXh0ZW5zaW9ucyBmb3VuZDoiCiBtc2dzdHIgIlVuYmVrYW5udGUgUmVwb3NpdG9yeS1FcndlaXRlcnVuZ2VuIGdlZnVuZGVuOiIKIAotIzogc2V0dXAuYzo1NTQKKyM6IHNldHVwLmM6NTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIG9wZW5pbmcgJyVzJyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gw5ZmZm5lbiB2b24gJyVzJy4iCiAKLSM6IHNldHVwLmM6NTU2CisjOiBzZXR1cC5jOjU4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ0b28gbGFyZ2UgdG8gYmUgYSAuZ2l0IGZpbGU6ICclcyciCiBtc2dzdHIgIlp1IGdyb8OfLCB1bSBlaW5lIC5naXQtRGF0ZWkgenUgc2VpbjogJyVzJyIKIAotIzogc2V0dXAuYzo1NTgKKyM6IHNldHVwLmM6NTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHJlYWRpbmcgJXMiCiBtc2dzdHIgIkZlaGxlciBiZWltIExlc2VuIHZvbiAnJXMnLiIKIAotIzogc2V0dXAuYzo1NjAKKyM6IHNldHVwLmM6NTkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZ2l0ZmlsZSBmb3JtYXQ6ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlcyBnaXRmaWxlLUZvcm1hdDogJXMiCiAKLSM6IHNldHVwLmM6NTYyCisjOiBzZXR1cC5jOjU5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBwYXRoIGluIGdpdGZpbGU6ICVzIgogbXNnc3RyICJLZWluIFBmYWQgaW4gZ2l0ZmlsZTogJXMiCiAKLSM6IHNldHVwLmM6NTY0CisjOiBzZXR1cC5jOjU5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeTogJXMiCiBtc2dzdHIgIktlaW4gR2l0LVJlcG9zaXRvcnk6ICVzIgogCi0jOiBzZXR1cC5jOjY2MworIzogc2V0dXAuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyQlcycgdG9vIGJpZyIKIG1zZ3N0ciAiJyQlcycgenUgZ3Jvw58iCiAKLSM6IHNldHVwLmM6Njc3CisjOiBzZXR1cC5jOjcwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeTogJyVzJyIKIG1zZ3N0ciAiS2VpbiBHaXQtUmVwb3NpdG9yeTogJyVzJyIKIAotIzogc2V0dXAuYzo3MDYgc2V0dXAuYzo3MDggc2V0dXAuYzo3MzkKKyM6IHNldHVwLmM6NzM4IHNldHVwLmM6NzQwIHNldHVwLmM6NzcxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGRpciB0byAnJXMnIgogbXNnc3RyICJLYW5uIG5pY2h0IGluIFZlcnplaWNobmlzICclcycgd2VjaHNlbG4uIgogCi0jOiBzZXR1cC5jOjcxMSBzZXR1cC5jOjc2NyBzZXR1cC5jOjc3NyBzZXR1cC5jOjgxNiBzZXR1cC5jOjgyNCBzZXR1cC5jOjgzOQorIzogc2V0dXAuYzo3NDMgc2V0dXAuYzo3OTkgc2V0dXAuYzo4MDkgc2V0dXAuYzo4NDggc2V0dXAuYzo4NTYKIG1zZ2lkICJjYW5ub3QgY29tZSBiYWNrIHRvIGN3ZCIKIG1zZ3N0ciAiS2FubiBuaWNodCB6dW0gYWt0dWVsbGVuIEFyYmVpdHN2ZXJ6ZWljaG5pcyB6dXLDvGNrd2VjaHNlbG4uIgogCi0jOiBzZXR1cC5jOjgzNwotIywgYy1mb3JtYXQKLW1zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeSAob3IgYW55IG9mIHRoZSBwYXJlbnQgZGlyZWN0b3JpZXMpOiAlcyIKLW1zZ3N0ciAiS2VpbiBHaXQtUmVwb3NpdG9yeSAob2RlciBpcmdlbmRlaW5lcyBkZXIgRWx0ZXJudmVyemVpY2huaXNzZSk6ICVzIgotCi0jOiBzZXR1cC5jOjg0OAorIzogc2V0dXAuYzo4NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0YXQgJyUqcyVzJXMnIgogbXNnc3RyICJLb25udGUgJyUqcyVzJXMnIG5pY2h0IGxlc2VuLiIKIAotIzogc2V0dXAuYzoxMDc4CisjOiBzZXR1cC5jOjExMDgKIG1zZ2lkICJVbmFibGUgdG8gcmVhZCBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICJLb25udGUgYWt0dWVsbGVzIEFyYmVpdHN2ZXJ6ZWljaG5pcyBuaWNodCBsZXNlbi4iCiAKLSM6IHNldHVwLmM6MTA5MCBzZXR1cC5jOjEwOTYKKyM6IHNldHVwLmM6MTExNyBzZXR1cC5jOjExMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoYW5nZSB0byAnJXMnIgogbXNnc3RyICJLYW5uIG5pY2h0IG5hY2ggJyVzJyB3ZWNoc2Vsbi4iCiAKLSM6IHNldHVwLmM6MTEwOQorIzogc2V0dXAuYzoxMTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgb2YgdGhlIHBhcmVudCBkaXJlY3Rvcmllcyk6ICVzIgorbXNnc3RyICJLZWluIEdpdC1SZXBvc2l0b3J5IChvZGVyIGlyZ2VuZGVpbmVzIGRlciBFbHRlcm52ZXJ6ZWljaG5pc3NlKTogJXMiCisKKyM6IHNldHVwLmM6MTEzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBwYXJlbnQgdXAgdG8gbW91bnQgcG9pbnQgJXMpXG4iCkBAIC01NjU3LDcgKzc2MjYsNyBAQAogIiVzKVxuIgogIlN0b3BwZSBiZWkgRGF0ZWlzeXN0ZW1ncmVuemUgKEdJVF9ESVNDT1ZFUllfQUNST1NTX0ZJTEVTWVNURU0gbmljaHQgZ2VzZXR6dCkuIgogCi0jOiBzZXR1cC5jOjExOTIKKyM6IHNldHVwLmM6MTI0NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicHJvYmxlbSB3aXRoIGNvcmUuc2hhcmVkUmVwb3NpdG9yeSBmaWxlbW9kZSB2YWx1ZSAoMCUuM28pLlxuIgpAQCAtNTY2NiwyOTEgKzc2MzUsMjk2IEBACiAiUHJvYmxlbSBtaXQgV2VydCBmw7xyIERhdGVpbW9kdXMgKDAlLjNvKSB2b24gY29yZS5zaGFyZWRSZXBvc2l0b3J5LlxuIgogIkRlciBCZXNpdHplciBkZXIgRGF0ZWllbiBtdXNzIGltbWVyIExlc2UtIHVuZCBTY2hyZWlicmVjaHRlIGhhYmVuLiIKIAotIzogc2V0dXAuYzoxMjM1CisjOiBzZXR1cC5jOjEyODkKIG1zZ2lkICJvcGVuIC9kZXYvbnVsbCBvciBkdXAgZmFpbGVkIgogbXNnc3RyICLDlmZmbmVuIHZvbiAvZGV2L251bGwgb2RlciBkdXAgZmVobGdlc2NobGFnZW4uIgogCi0jOiBzZXR1cC5jOjEyNTAKKyM6IHNldHVwLmM6MTMwNAogbXNnaWQgImZvcmsgZmFpbGVkIgogbXNnc3RyICJmb3JrIGZlaGxnZXNjaGxhZ2VuIgogCi0jOiBzZXR1cC5jOjEyNTUKKyM6IHNldHVwLmM6MTMwOQogbXNnaWQgInNldHNpZCBmYWlsZWQiCiBtc2dzdHIgInNldHNpZCBmZWhsZ2VzY2hsYWdlbiIKIAotIzogc2hhMS1maWxlLmM6MzgxCisjOiBzaGExLWZpbGUuYzo0NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IGRpcmVjdG9yeSAlcyBkb2VzIG5vdCBleGlzdDsgY2hlY2sgLmdpdC9vYmplY3RzL2luZm8vYWx0ZXJuYXRlcyIKIG1zZ3N0ciAiIgogIk9iamVrdHZlcnplaWNobmlzICVzIGV4aXN0aWVydCBuaWNodDsgcHLDvGZlIC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiCiAKLSM6IHNoYTEtZmlsZS5jOjQzMgorIzogc2hhMS1maWxlLmM6NTAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgYWx0ZXJuYXRlIG9iamVjdCBwYXRoOiAlcyIKIG1zZ3N0ciAiS29ubnRlIGFsdGVybmF0aXZlbiBPYmpla3RwZmFkICclcycgbmljaHQgbm9ybWFsaXNpZXJlbi4iCiAKLSM6IHNoYTEtZmlsZS5jOjUwMworIzogc2hhMS1maWxlLmM6NTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBpZ25vcmluZyBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlcywgbmVzdGluZyB0b28gZGVlcCIKIG1zZ3N0ciAiJXM6IGlnbm9yaWVyZSBhbHRlcm5hdGl2ZSBPYmpla3RzcGVpY2hlciAtIFZlcnNjaGFjaHRlbHVuZyB6dSB0aWVmIgogCi0jOiBzaGExLWZpbGUuYzo1MTAKKyM6IHNoYTEtZmlsZS5jOjU4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbm9ybWFsaXplIG9iamVjdCBkaXJlY3Rvcnk6ICVzIgogbXNnc3RyICJLb25udGUgT2JqZWt0dmVyemVpY2huaXMgJyVzJyBuaWNodCBub3JtYWxpc2llcmVuLiIKIAotIzogc2hhMS1maWxlLmM6NTY1CisjOiBzaGExLWZpbGUuYzo2MjUKIG1zZ2lkICJ1bmFibGUgdG8gZmRvcGVuIGFsdGVybmF0ZXMgbG9ja2ZpbGUiCiBtc2dzdHIgIktvbm50ZSBmZG9wZW4gbmljaHQgYXVmIExvY2stRGF0ZWkgZsO8ciBcImFsdGVybmF0ZXNcIiBhdWZydWZlbi4iCiAKLSM6IHNoYTEtZmlsZS5jOjU4MworIzogc2hhMS1maWxlLmM6NjQzCiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgYWx0ZXJuYXRlcyBmaWxlIgogbXNnc3RyICJLb25udGUgXCJhbHRlcm5hdGVzXCItRGF0ZWkgbmljaHQgbGVzZW4uIgogCi0jOiBzaGExLWZpbGUuYzo1OTAKKyM6IHNoYTEtZmlsZS5jOjY1MAogbXNnaWQgInVuYWJsZSB0byBtb3ZlIG5ldyBhbHRlcm5hdGVzIGZpbGUgaW50byBwbGFjZSIKIG1zZ3N0ciAiS29ubnRlIG5ldWUgXCJhbHRlcm5hdGVzXCItRGF0ZWkgbmljaHQgw7xiZXJuZWhtZW4uIgogCi0jOiBzaGExLWZpbGUuYzo2MjUKKyM6IHNoYTEtZmlsZS5jOjY4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgIlBmYWQgJyVzJyBleGlzdGllcnQgbmljaHQiCiAKLSM6IHNoYTEtZmlsZS5jOjY1MQorIzogc2hhMS1maWxlLmM6NzExCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgYXMgYSBsaW5rZWQgY2hlY2tvdXQgaXMgbm90IHN1cHBvcnRlZCB5ZXQuIgogbXNnc3RyICIiCiAiUmVmZXJlbnppZXJ0ZXMgUmVwb3NpdG9yeSAnJXMnIHdpcmQgbm9jaCBuaWNodCBhbHMgdmVya27DvHBmdGVzXG4iCiAiQXJiZWl0c3ZlcnplaWNobmlzIHVudGVyc3TDvHR6dC4iCiAKLSM6IHNoYTEtZmlsZS5jOjY1NworIzogc2hhMS1maWxlLmM6NzE3CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgbm90IGEgbG9jYWwgcmVwb3NpdG9yeS4iCiBtc2dzdHIgIlJlZmVyZW56aWVydGVzIFJlcG9zaXRvcnkgJyVzJyBpc3Qga2VpbiBsb2thbGVzIFJlcG9zaXRvcnkuIgogCi0jOiBzaGExLWZpbGUuYzo2NjMKKyM6IHNoYTEtZmlsZS5jOjcyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIHNoYWxsb3ciCiBtc2dzdHIgIiIKICJSZWZlcmVuemllcnRlcyBSZXBvc2l0b3J5ICclcycgaGF0IGVpbmUgdW52b2xsc3TDpG5kaWdlIEhpc3RvcmllIChzaGFsbG93KS4iCiAKLSM6IHNoYTEtZmlsZS5jOjY3MQorIzogc2hhMS1maWxlLmM6NzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgZ3JhZnRlZCIKIG1zZ3N0ciAiIgogIlJlZmVyZW56aWVydGVzIFJlcG9zaXRvcnkgJyVzJyBpc3QgbWl0IGvDvG5zdGxpY2hlbiBWb3Jnw6RuZ2VybiAoXCJncmFmdHNcIikgIgogImVpbmdlaMOkbmd0LiIKIAotIzogc2hhMS1maWxlLmM6NzgxCisjOiBzaGExLWZpbGUuYzo3OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lIHdoaWxlIHBhcnNpbmcgYWx0ZXJuYXRlIHJlZnM6ICVzIgorbXNnc3RyICJVbmfDvGx0aWdlIFplaWxlIGJlaW0gUGFyc2VuIGFsdGVybmF0aXZlciBSZWZlcmVuemVuOiAlcyIKKworIzogc2hhMS1maWxlLmM6OTQzCiAjLCBjLWZvcm1hdAogbXNnaWQgImF0dGVtcHRpbmcgdG8gbW1hcCAlPFBSSXVNQVg+IG92ZXIgbGltaXQgJTxQUkl1TUFYPiIKIG1zZ3N0ciAiVmVyc3VjaGUgbW1hcCAlPFBSSXVNQVg+IMO8YmVyIExpbWl0ICU8UFJJdU1BWD4uIgogCi0jOiBzaGExLWZpbGUuYzo4MDYKKyM6IHNoYTEtZmlsZS5jOjk2NAogbXNnaWQgIm1tYXAgZmFpbGVkIgogbXNnc3RyICJtbWFwIGZlaGxnZXNjaGxhZ2VuIgogCi0jOiBzaGExLWZpbGUuYzo5NzMKKyM6IHNoYTEtZmlsZS5jOjExMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IGZpbGUgJXMgaXMgZW1wdHkiCiBtc2dzdHIgIk9iamVrdGRhdGVpICVzIGlzdCBsZWVyLiIKIAotIzogc2hhMS1maWxlLmM6MTA5MyBzaGExLWZpbGUuYzoyMjE1CisjOiBzaGExLWZpbGUuYzoxMjYzIHNoYTEtZmlsZS5jOjI0NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBsb29zZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAiRmVobGVyaGFmdGVzIGxvc2VzIE9iamVrdCAnJXMnLiIKIAotIzogc2hhMS1maWxlLmM6MTA5NSBzaGExLWZpbGUuYzoyMjE5CisjOiBzaGExLWZpbGUuYzoxMjY1IHNoYTEtZmlsZS5jOjI0NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2FyYmFnZSBhdCBlbmQgb2YgbG9vc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgIk51dHpsb3NlIERhdGVuIGFtIEVuZGUgdm9uIGxvc2VtIE9iamVrdCAnJXMnLiIKIAotIzogc2hhMS1maWxlLmM6MTEzNworIzogc2hhMS1maWxlLmM6MTMwNwogbXNnaWQgImludmFsaWQgb2JqZWN0IHR5cGUiCiBtc2dzdHIgInVuZ8O8bHRpZ2VyIE9iamVrdC1UeXAiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMTkKKyM6IHNoYTEtZmlsZS5jOjEzOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIKIG1zZ3N0ciAiS29ubnRlICVzIEtvcGZiZXJlaWNoIG5pY2h0IG1pdCAtLWFsbG93LXVua25vd24tdHlwZSBlbnRwYWNrZW4uIgogCi0jOiBzaGExLWZpbGUuYzoxMjIyCisjOiBzaGExLWZpbGUuYzoxMzk0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgJXMgaGVhZGVyIgogbXNnc3RyICJLb25udGUgJXMgS29wZmJlcmVpY2ggbmljaHQgZW50cGFja2VuLiIKIAotIzogc2hhMS1maWxlLmM6MTIyOAorIzogc2hhMS1maWxlLmM6MTQwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJXMgaGVhZGVyIHdpdGggLS1hbGxvdy11bmtub3duLXR5cGUiCiBtc2dzdHIgIktvbm50ZSAlcyBLb3BmYmVyZWljaCBtaXQgLS1hbGxvdy11bmtub3duLXR5cGUgbmljaHQgcGFyc2VuLiIKIAotIzogc2hhMS1maWxlLmM6MTIzMQorIzogc2hhMS1maWxlLmM6MTQwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJXMgaGVhZGVyIgogbXNnc3RyICJLb25udGUgJXMgS29wZmJlcmVpY2ggbmljaHQgcGFyc2VuLiIKIAotIzogc2hhMS1maWxlLmM6MTQyMgorIzogc2hhMS1maWxlLmM6MTYyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBvYmplY3QgJXMiCiBtc2dzdHIgIktvbm50ZSBPYmpla3QgJXMgbmljaHQgbGVzZW4uIgogCi0jOiBzaGExLWZpbGUuYzoxNDI2CisjOiBzaGExLWZpbGUuYzoxNjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2VtZW50ICVzIG5vdCBmb3VuZCBmb3IgJXMiCiBtc2dzdHIgIkVyc2V0enVuZyAlcyBmw7xyICVzIG5pY2h0IGdlZnVuZGVuLiIKIAotIzogc2hhMS1maWxlLmM6MTQzMAorIzogc2hhMS1maWxlLmM6MTYzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJsb29zZSBvYmplY3QgJXMgKHN0b3JlZCBpbiAlcykgaXMgY29ycnVwdCIKIG1zZ3N0ciAiTG9zZXMgT2JqZWt0ICVzIChnZXNwZWljaGVydCBpbiAlcykgaXN0IGJlc2Now6RkaWd0LiIKIAotIzogc2hhMS1maWxlLmM6MTQzNAorIzogc2hhMS1maWxlLmM6MTY0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrZWQgb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCiBtc2dzdHIgIkdlcGFja3RlcyBPYmpla3QgJXMgKGdlc3BlaWNoZXJ0IGluICVzKSBpc3QgYmVzY2jDpGRpZ3QuIgogCi0jOiBzaGExLWZpbGUuYzoxNTM2CisjOiBzaGExLWZpbGUuYzoxNzQ2CiAjLCBjLWZvcm1hdAotbXNnaWQgInVuYWJsZSB0byB3cml0ZSBzaGExIGZpbGVuYW1lICVzIgotbXNnc3RyICJLb25udGUgU0hBMS1EYXRlaW5hbWUgJXMgbmljaHQgc2NocmVpYmVuLiIKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAlcyIKK21zZ3N0ciAiS29ubnRlIERhdGVpICVzIG5pY2h0IHNjaHJlaWJlbi4iCiAKLSM6IHNoYTEtZmlsZS5jOjE1NDMKKyM6IHNoYTEtZmlsZS5jOjE3NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHNldCBwZXJtaXNzaW9uIHRvICclcyciCiBtc2dzdHIgIktvbm50ZSBadWdyaWZmc2JlcmVjaHRpZ3VuZyBhdWYgJyVzJyBuaWNodCBzZXR6ZW4uIgogCi0jOiBzaGExLWZpbGUuYzoxNTUwCisjOiBzaGExLWZpbGUuYzoxNzYwCiBtc2dpZCAiZmlsZSB3cml0ZSBlcnJvciIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gU2NocmVpYmVuIGVpbmVyIERhdGVpLiIKIAotIzogc2hhMS1maWxlLmM6MTU2OQotbXNnaWQgImVycm9yIHdoZW4gY2xvc2luZyBzaGExIGZpbGUiCi1tc2dzdHIgIkZlaGxlciBiZWltIFNjaGxpZcOfZW4gZGVyIFNIQTEtRGF0ZWkuIgorIzogc2hhMS1maWxlLmM6MTc4MAorbXNnaWQgImVycm9yIHdoZW4gY2xvc2luZyBsb29zZSBvYmplY3QgZmlsZSIKK21zZ3N0ciAiRmVobGVyIGJlaW0gU2NobGllw59lbiBkZXIgRGF0ZWkgZsO8ciBsb3NlIE9iamVrdGUuIgogCi0jOiBzaGExLWZpbGUuYzoxNjM1CisjOiBzaGExLWZpbGUuYzoxODQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImluc3VmZmljaWVudCBwZXJtaXNzaW9uIGZvciBhZGRpbmcgYW4gb2JqZWN0IHRvIHJlcG9zaXRvcnkgZGF0YWJhc2UgJXMiCiBtc2dzdHIgIiIKICJVbnp1cmVpY2hlbmRlIEJlcmVjaHRpZ3VuZyB6dW0gSGluenVmw7xnZW4gZWluZXMgT2JqZWt0ZXMgenVyIFJlcG9zaXRvcnktIgogIkRhdGVuYmFuayAlcyIKIAotIzogc2hhMS1maWxlLmM6MTYzNworIzogc2hhMS1maWxlLmM6MTg0NwogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGZpbGUiCiBtc2dzdHIgIktvbm50ZSB0ZW1wb3LDpHJlIERhdGVpIG5pY2h0IGVyc3RlbGxlbi4iCiAKLSM6IHNoYTEtZmlsZS5jOjE2NjEKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgc2hhMSBmaWxlIgotbXNnc3RyICJLb25udGUgU0hBMS1EYXRlaSBuaWNodCBzY2hyZWliZW4uIgorIzogc2hhMS1maWxlLmM6MTg3MQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBsb29zZSBvYmplY3QgZmlsZSIKK21zZ3N0ciAiRmVobGVyIGJlaW0gU2NocmVpYmVuIGRlciBEYXRlaSBmw7xyIGxvc2UgT2JqZWt0ZS4iCiAKLSM6IHNoYTEtZmlsZS5jOjE2NjcKKyM6IHNoYTEtZmlsZS5jOjE4NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgbmV3IG9iamVjdCAlcyAoJWQpIgogbXNnc3RyICJLb25udGUgbmV1ZXMgT2JqZWt0ICVzICglZCkgbmljaHQga29tcHJpbWllcmVuLiIKIAotIzogc2hhMS1maWxlLmM6MTY3MQorIzogc2hhMS1maWxlLmM6MTg4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWZsYXRlRW5kIG9uIG9iamVjdCAlcyBmYWlsZWQgKCVkKSIKIG1zZ3N0ciAiZGVmbGF0ZUVuZCBhdWYgT2JqZWt0ICVzIGZlaGxnZXNjaGxhZ2VuICglZCkiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NzUKKyM6IHNoYTEtZmlsZS5jOjE4ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29uZnVzZWQgYnkgdW5zdGFibGUgb2JqZWN0IHNvdXJjZSBkYXRhIGZvciAlcyIKIG1zZ3N0ciAiRmVobGVyIHdlZ2VuIGluc3RhYmlsZW4gT2JqZWt0cXVlbGxkYXRlbiBmw7xyICVzIgogCi0jOiBzaGExLWZpbGUuYzoxNjg1IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTE4CisjOiBzaGExLWZpbGUuYzoxODk1IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdXRpbWUoKSBvbiAlcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gQXVmcnVmIHZvbiB1dGltZSgpIGF1ZiAnJXMnLiIKIAotIzogc2hhMS1maWxlLmM6MTc2MAorIzogc2hhMS1maWxlLmM6MTk3MgogIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3QgcmVhZCBzaGExX2ZpbGUgZm9yICVzIgotbXNnc3RyICJLYW5uIFNIQTEtRGF0ZWkgZsO8ciAlcyBuaWNodCBsZXNlbi4iCittc2dpZCAiY2Fubm90IHJlYWQgb2JqZWN0IGZvciAlcyIKK21zZ3N0ciAiS2FubiBPYmpla3QgZsO8ciAlcyBuaWNodCBsZXNlbi4iCiAKLSM6IHNoYTEtZmlsZS5jOjE4MDUKKyM6IHNoYTEtZmlsZS5jOjIwMTEKIG1zZ2lkICJjb3JydXB0IGNvbW1pdCIKIG1zZ3N0ciAiZmVobGVyaGFmdGVyIENvbW1pdCIKIAotIzogc2hhMS1maWxlLmM6MTgxMworIzogc2hhMS1maWxlLmM6MjAxOQogbXNnaWQgImNvcnJ1cHQgdGFnIgogbXNnc3RyICJmZWhsZXJoYWZ0ZXMgVGFnIgogCi0jOiBzaGExLWZpbGUuYzoxOTEyCisjOiBzaGExLWZpbGUuYzoyMTE5CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYWQgZXJyb3Igd2hpbGUgaW5kZXhpbmcgJXMiCiBtc2dzdHIgIkxlc2VmZWhsZXIgYmVpbSBJbmRpemllcmVuIHZvbiAnJXMnLiIKIAotIzogc2hhMS1maWxlLmM6MTkxNQorIzogc2hhMS1maWxlLmM6MjEyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJzaG9ydCByZWFkIHdoaWxlIGluZGV4aW5nICVzIgogbXNnc3RyICJyZWFkKCkgenUga3VyeiBiZWltIEluZGl6aWVyZW4gdm9uICclcycuIgogCi0jOiBzaGExLWZpbGUuYzoxOTg4IHNoYTEtZmlsZS5jOjE5OTcKKyM6IHNoYTEtZmlsZS5jOjIxOTUgc2hhMS1maWxlLmM6MjIwNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZmFpbGVkIHRvIGluc2VydCBpbnRvIGRhdGFiYXNlIgogbXNnc3RyICIlczogRmVobGVyIGJlaW0gRWluZsO8Z2VuIGluIGRpZSBEYXRlbmJhbmsiCiAKLSM6IHNoYTEtZmlsZS5jOjIwMDMKKyM6IHNoYTEtZmlsZS5jOjIyMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHVuc3VwcG9ydGVkIGZpbGUgdHlwZSIKIG1zZ3N0ciAiJXM6IG5pY2h0IHVudGVyc3TDvHR6dGUgRGF0ZWlhcnQiCiAKLSM6IHNoYTEtZmlsZS5jOjIwMjcKKyM6IHNoYTEtZmlsZS5jOjIyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgb2JqZWN0IgogbXNnc3RyICIlcyBpc3Qga2VpbiBnw7xsdGlnZXMgT2JqZWt0IgogCi0jOiBzaGExLWZpbGUuYzoyMDI5CisjOiBzaGExLWZpbGUuYzoyMjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkICclcycgb2JqZWN0IgogbXNnc3RyICIlcyBpc3Qga2VpbiBnw7xsdGlnZXMgJyVzJyBPYmpla3QiCiAKLSM6IHNoYTEtZmlsZS5jOjIwNTYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU0CisjOiBzaGExLWZpbGUuYzoyMjY0IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyIKIG1zZ3N0ciAia2FubiAlcyBuaWNodCDDtmZmbmVuIgogCi0jOiBzaGExLWZpbGUuYzoyMjI2IHNoYTEtZmlsZS5jOjIyNzgKKyM6IHNoYTEtZmlsZS5jOjI0NTQgc2hhMS1maWxlLmM6MjUwNwogIywgYy1mb3JtYXQKLW1zZ2lkICJzaGExIG1pc21hdGNoIGZvciAlcyAoZXhwZWN0ZWQgJXMpIgotbXNnc3RyICJTSEEtMSBmw7xyICVzIHBhc3NlbiBuaWNodCB6dXNhbW1lbiAoJXMgZXJ3YXJ0ZXQpIgorbXNnaWQgImhhc2ggbWlzbWF0Y2ggZm9yICVzIChleHBlY3RlZCAlcykiCittc2dzdHIgIkhhc2ggZsO8ciAlcyBzdGltbXQgbmljaHQgw7xiZXJlaW4gKCVzIGVyd2FydGV0KS4iCiAKLSM6IHNoYTEtZmlsZS5jOjIyNTAKKyM6IHNoYTEtZmlsZS5jOjI0NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG1tYXAgJXMiCiBtc2dzdHIgIktvbm50ZSBtbWFwIG5pY2h0IGF1ZiAlcyBhdXNmw7xocmVuLiIKIAotIzogc2hhMS1maWxlLmM6MjI1NQorIzogc2hhMS1maWxlLmM6MjQ4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5wYWNrIGhlYWRlciBvZiAlcyIKIG1zZ3N0ciAiS29ubnRlIEtvcGZiZXJlaWNoIHZvbiAlcyBuaWNodCBlbnRwYWNrZW4uIgogCi0jOiBzaGExLWZpbGUuYzoyMjYxCisjOiBzaGExLWZpbGUuYzoyNDg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBoZWFkZXIgb2YgJXMiCiBtc2dzdHIgIktvbm50ZSBLb3BmYmVyZWljaCB2b24gJXMgbmljaHQgcGFyc2VuLiIKIAotIzogc2hhMS1maWxlLmM6MjI3MgorIzogc2hhMS1maWxlLmM6MjUwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5wYWNrIGNvbnRlbnRzIG9mICVzIgogbXNnc3RyICJLb25udGUgSW5oYWx0IHZvbiAlcyBuaWNodCBlbnRwYWNrZW4uIgogCi0jOiBzaGExLW5hbWUuYzo0NzYKKyM6IHNoYTEtbmFtZS5jOjQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJzaG9ydCBTSEExICVzIGlzIGFtYmlndW91cyIKIG1zZ3N0ciAiS3VyemVyIFNIQS0xICVzIGlzdCBtZWhyZGV1dGlnLiIKIAotIzogc2hhMS1uYW1lLmM6NDg3CisjOiBzaGExLW5hbWUuYzo0OTcKIG1zZ2lkICJUaGUgY2FuZGlkYXRlcyBhcmU6IgogbXNnc3RyICJEaWUgS2FuZGlkYXRlbiBzaW5kOiIKIAotIzogc2hhMS1uYW1lLmM6NzcwCisjOiBzaGExLW5hbWUuYzo3OTYKIG1zZ2lkICIiCiAiR2l0IG5vcm1hbGx5IG5ldmVyIGNyZWF0ZXMgYSByZWYgdGhhdCBlbmRzIHdpdGggNDAgaGV4IGNoYXJhY3RlcnNcbiIKICJiZWNhdXNlIGl0IHdpbGwgYmUgaWdub3JlZCB3aGVuIHlvdSBqdXN0IHNwZWNpZnkgNDAtaGV4LiBUaGVzZSByZWZzXG4iCiAibWF5IGJlIGNyZWF0ZWQgYnkgbWlzdGFrZS4gRm9yIGV4YW1wbGUsXG4iCiAiXG4iCi0iICBnaXQgY2hlY2tvdXQgLWIgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCisiICBnaXQgc3dpdGNoIC1jICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgogIlxuIgogIndoZXJlIFwiJGJyXCIgaXMgc29tZWhvdyBlbXB0eSBhbmQgYSA0MC1oZXggcmVmIGlzIGNyZWF0ZWQuIFBsZWFzZVxuIgogImV4YW1pbmUgdGhlc2UgcmVmcyBhbmQgbWF5YmUgZGVsZXRlIHRoZW0uIFR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieVxuIgpAQCAtNTk2MSw3ICs3OTM1LDcgQEAKICJTaWUgZGllc2UgYW5nZWJlbi4gRGllc2UgUmVmZXJlbnplbiBrw7ZubnRlbiBhdXMgVmVyc2VoZW5cbiIKICJlcnpldWd0IHdvcmRlbiBzZWluLiBadW0gQmVpc3BpZWwsXG4iCiAiXG4iCi0iICBnaXQgY2hlY2tvdXQgLWIgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCisiICBnaXQgc3dpdGNoIC1jICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgogIlxuIgogIndvYmVpIFwiJGJyXCIgbGVlciBpc3QgdW5kIGVpbmUgNDAtSGV4LVJlZmVyZW56IGVyemV1Z3RcbiIKICJ3dXJkZS4gQml0dGUgcHLDvGZlbiBTaWUgZGllc2UgUmVmZXJlbnplbiB1bmQgbMO2c2NoZW5cbiIKQEAgLTU5NjksNzEgKzc5NDMsMjgzIEBACiAiaW5kZW0gU2llIFwiZ2l0IGNvbmZpZyBhZHZpY2Uub2JqZWN0TmFtZVdhcm5pbmcgZmFsc2VcIlxuIgogImF1c2bDvGhyZW4uIgogCi0jOiBzdWJtb2R1bGUuYzoxMTYgc3VibW9kdWxlLmM6MTQ1CisjOiBzaGExLW5hbWUuYzo5MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciAnJS4qcycgb25seSBnb2VzIGJhY2sgdG8gJXMiCittc2dzdHIgIkxvZyBmw7xyICclLipzJyBnZWh0IG51ciBiaXMgJXMgenVyw7xjayIKKworIzogc2hhMS1uYW1lLmM6OTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImxvZyBmb3IgJyUuKnMnIG9ubHkgaGFzICVkIGVudHJpZXMiCittc2dzdHIgIkxvZyBmw7xyICclLipzJyBoYXQgbnVyICVkIEVpbnRyw6RnZSIKKworIzogc2hhMS1uYW1lLmM6MTY4OQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gJyUuKnMnIgorbXNnc3RyICJQZmFkICclcycgYmVmaW5kZXQgc2ljaCBpbSBEYXRlaXN5c3RlbSwgYWJlciBuaWNodCBpbiAnJS4qcyciCisKKyM6IHNoYTEtbmFtZS5jOjE2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBleGlzdHMsIGJ1dCBub3QgJyVzJ1xuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnJS4qczolcycgYWthICclLipzOi4vJXMnPyIKK21zZ3N0ciAiIgorIlBmYWQgJyVzJyBleGlzdGllcnQsIGFiZXIgbmljaHQgJyVzJ1xuIgorIkhpbndlaXM6IE1laW50ZW4gU2llICclLipzOiVzJyBhdWNoIGJla2FubnQgYWxzICclLipzOi4vJXMnPyIKKworIzogc2hhMS1uYW1lLmM6MTcwNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZG9lcyBub3QgZXhpc3QgaW4gJyUuKnMnIgorbXNnc3RyICJQZmFkICclcycgZXhpc3RpZXJ0IG5pY2h0IGluICclLipzJyIKKworIzogc2hhMS1uYW1lLmM6MTczMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGlzIGluIHRoZSBpbmRleCwgYnV0IG5vdCBhdCBzdGFnZSAlZFxuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnOiVkOiVzJz8iCittc2dzdHIgIiIKKyJQZmFkICclcycgaXN0IGltIEluZGV4LCBhYmVyIG5pY2h0IGluIFN0dWZlICVkXG4iCisiSGlud2VpczogTWVpbnRlbiBTaWUgJzolZDolcyc/IgorCisjOiBzaGExLW5hbWUuYzoxNzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXRoICclcycgaXMgaW4gdGhlIGluZGV4LCBidXQgbm90ICclcydcbiIKKyJoaW50OiBEaWQgeW91IG1lYW4gJzolZDolcycgYWthICc6JWQ6Li8lcyc/IgorbXNnc3RyICIiCisiUGZhZCAnJXMnIGlzdCBpbSBJbmRleCwgYWJlciBuaWNodCAnJXMnXG4iCisiSGlud2VpczogTWVpbnRlbiBTaWUgJzolZDolcycgYXVjaCBiZWthbm50IGFscyAnOiVkOi4vJXMnPyIKKworIzogc2hhMS1uYW1lLmM6MTc1NgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gdGhlIGluZGV4IgorbXNnc3RyICJQZmFkICclcycgZXhpc3RpZXJ0IGltIERhdGVpc3lzdGVtLCBhYmVyIG5pY2h0IGltIEluZGV4IgorCisjOiBzaGExLW5hbWUuYzoxNzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCAobmVpdGhlciBvbiBkaXNrIG5vciBpbiB0aGUgaW5kZXgpIgorbXNnc3RyICJQZmFkICclcycgZXhpc3RpZXJ0IG5pY2h0ICh3ZWRlciBpbSBEYXRlaXN5c3RlbSBub2NoIGltIEluZGV4KSIKKworIzogc2hhMS1uYW1lLmM6MTc3MQorbXNnaWQgInJlbGF0aXZlIHBhdGggc3ludGF4IGNhbid0IGJlIHVzZWQgb3V0c2lkZSB3b3JraW5nIHRyZWUiCittc2dzdHIgIiIKKyJEaWUgU3ludGF4IGbDvHIgcmVsYXRpdmUgUGZhZGUga2FubiBuaWNodCBhdcOfZXJoYWxiIGRlcyBBcmJlaXRzdmVyemVpY2huaXNzZXMgIgorImJlbnV0enQgd2VyZGVuLiIKKworIzogc2hhMS1uYW1lLmM6MTkwOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG9iamVjdCBuYW1lICclLipzJy4iCittc2dzdHIgInVuZ8O8bHRpZ2VyIE9iamVrdG5hbWUgJyUuKnMnLiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGdpYmlieXRlCisjOiBzdHJidWYuYzo4MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgR2lCIgorbXNnc3RyICIldS4lMi4ydSBHaUIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBnaWJpYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBHaUIvcyIKK21zZ3N0ciAiJXUuJTIuMnUgR2lCL3MiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBtZWJpYnl0ZQorIzogc3RyYnVmLmM6ODQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IE1pQiIKK21zZ3N0ciAiJXUuJTIuMnUgTWlCIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggbWViaWJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgTWlCL3MiCittc2dzdHIgIiV1LiUyLjJ1IE1pQi9zIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDgga2liaWJ5dGUKKyM6IHN0cmJ1Zi5jOjg1NgorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBLaUIiCittc2dzdHIgIiV1LiUyLjJ1IEtpQiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGtpYmlieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEtpQi9zIgorbXNnc3RyICIldS4lMi4ydSBLaUIvcyIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGJ5dGUKKyM6IHN0cmJ1Zi5jOjg2NAorIywgYy1mb3JtYXQKK21zZ2lkICIldSBieXRlIgorbXNnaWRfcGx1cmFsICIldSBieXRlcyIKK21zZ3N0clswXSAiJXUgQnl0ZSIKK21zZ3N0clsxXSAiJXUgQnl0ZXMiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1IGJ5dGUvcyIKK21zZ2lkX3BsdXJhbCAiJXUgYnl0ZXMvcyIKK21zZ3N0clswXSAiJXUgQnl0ZS9zIgorbXNnc3RyWzFdICIldSBCeXRlcy9zIgorCisjOiBzdHJidWYuYzoxMTY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBlZGl0ICclcyciCittc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGVkaXRpZXJlbi4iCisKKyM6IHN1Ym1vZHVsZS5jOjExNCBzdWJtb2R1bGUuYzoxNDMKIG1zZ2lkICJDYW5ub3QgY2hhbmdlIHVubWVyZ2VkIC5naXRtb2R1bGVzLCByZXNvbHZlIG1lcmdlIGNvbmZsaWN0cyBmaXJzdCIKIG1zZ3N0ciAiIgogIkthbm4gbmljaHQgenVzYW1tZW5nZWbDvGhydGUgLmdpdG1vZHVsZXMtRGF0ZWkgbmljaHQgw6RuZGVybiwgbMO2c2VuXG4iCiAiU2llIHp1ZXJzdCBkaWUgS29uZmxpa3RlIGF1ZiIKIAotIzogc3VibW9kdWxlLmM6MTIwIHN1Ym1vZHVsZS5jOjE0OQorIzogc3VibW9kdWxlLmM6MTE4IHN1Ym1vZHVsZS5jOjE0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCBzZWN0aW9uIGluIC5naXRtb2R1bGVzIHdoZXJlIHBhdGg9JXMiCiBtc2dzdHIgIktvbm50ZSBrZWluZSBTZWt0aW9uIGluIC5naXRtb2R1bGVzIG1pdCBQZmFkIFwiJXNcIiBmaW5kZW4iCiAKLSM6IHN1Ym1vZHVsZS5jOjE1NgorIzogc3VibW9kdWxlLmM6MTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgLmdpdG1vZHVsZXMgZW50cnkgZm9yICVzIgogbXNnc3RyICJLb25udGUgRWludHJhZyAnJXMnIG5pY2h0IGF1cyAuZ2l0bW9kdWxlcyBlbnRmZXJuZW4iCiAKLSM6IHN1Ym1vZHVsZS5jOjE2NworIzogc3VibW9kdWxlLmM6MTY1CiBtc2dpZCAic3RhZ2luZyB1cGRhdGVkIC5naXRtb2R1bGVzIGZhaWxlZCIKIG1zZ3N0ciAiS29ubnRlIGFrdHVhbGlzaWVydGUgLmdpdG1vZHVsZXMtRGF0ZWkgbmljaHQgenVtIENvbW1pdCB2b3JtZXJrZW4iCiAKLSM6IHN1Ym1vZHVsZS5jOjMyOQorIzogc3VibW9kdWxlLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgImluIHVucG9wdWxhdGVkIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJJbiBuaWNodCBhdXNnZWNoZWNrdGVtIFN1Ym1vZHVsICclcycuIgogCi0jOiBzdWJtb2R1bGUuYzozNjAKKyM6IHN1Ym1vZHVsZS5jOjM1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJQYXRoc3BlYyAnJXMnIGlzIGluIHN1Ym1vZHVsZSAnJS4qcyciCiBtc2dzdHIgIlBmYWRzcGV6aWZpa2F0aW9uICclcycgYmVmaW5kZXQgc2ljaCBpbiBTdWJtb2R1bCAnJS4qcyciCiAKLSM6IHN1Ym1vZHVsZS5jOjg1NworIzogc3VibW9kdWxlLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLWlnbm9yZS1zdWJtb2R1bGVzIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAidW5nw7xsdGlnZXMgLS1pZ25vcmUtc3VibW9kdWxlcyBBcmd1bWVudDogJXMiCisKKyM6IHN1Ym1vZHVsZS5jOjgxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU3VibW9kdWxlIGluIGNvbW1pdCAlcyBhdCBwYXRoOiAnJXMnIGNvbGxpZGVzIHdpdGggYSBzdWJtb2R1bGUgbmFtZWQgdGhlICIKKyJzYW1lLiBTa2lwcGluZyBpdC4iCittc2dzdHIgIiIKKyJTdWJtb2R1bCBpbiBDb21taXQgJXMgYmVpbSBQZmFkOiAnJXMnIGhhdCBkZW4gZ2xlaWNoZW4gTmFtZW4gd2llIGVpbiAiCisiU3VibW9kdWwuIFdpcmQgw7xiZXJzcHJ1bmdlbi4iCisKKyM6IHN1Ym1vZHVsZS5jOjkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgZW50cnkgJyVzJyAoJXMpIGlzIGEgJXMsIG5vdCBhIGNvbW1pdCIKIG1zZ3N0ciAiU3VibW9kdWwtRWludHJhZyAnJXMnICglcykgaXN0IGVpbiAlcywga2VpbiBDb21taXQuIgogCi0jOiBzdWJtb2R1bGUuYzoxMDk3IGJ1aWx0aW4vYnJhbmNoLmM6NjU2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTg1CisjOiBzdWJtb2R1bGUuYzo5OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvdWxkIG5vdCBydW4gJ2dpdCByZXYtbGlzdCA8Y29tbWl0cz4gLS1ub3QgLS1yZW1vdGVzIC1uIDEnIGNvbW1hbmQgaW4gIgorInN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiIgorIktvbm50ZSAnZ2l0IHJldi1saXN0IDxDb21taXRzPiAtLW5vdCAtLXJlbW90ZXMgLW4gMScgbmljaHQgaW4gU3VibW9kdWwgJyVzJyAiCisiYXVzZsO8aHJlbi4iCisKKyM6IHN1Ym1vZHVsZS5jOjExMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvY2VzcyBmb3Igc3VibW9kdWxlICclcycgZmFpbGVkIgorbXNnc3RyICJQcm96ZXNzIGbDvHIgU3VibW9kdWwgJyVzJyBmZWhsZ2VzY2hsYWdlbiIKKworIzogc3VibW9kdWxlLmM6MTE0NyBidWlsdGluL2JyYW5jaC5jOjY4MCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA0NQogbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlIEhFQUQgYXMgYSB2YWxpZCByZWYuIgogbXNnc3RyICJLb25udGUgSEVBRCBuaWNodCBhbHMgZ8O8bHRpZ2UgUmVmZXJlbnogYXVmbMO2c2VuLiIKIAotIzogc3VibW9kdWxlLmM6MTQwNAorIzogc3VibW9kdWxlLmM6MTE1OAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXNoaW5nIHN1Ym1vZHVsZSAnJXMnXG4iCittc2dzdHIgIlB1c2hlIFN1Ym1vZHVsICclcydcbiIKKworIzogc3VibW9kdWxlLmM6MTE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gcHVzaCBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICJLYW5uIFB1c2ggZsO8ciBTdWJtb2R1bCAnJXMnIG5pY2h0IGF1c2bDvGhyZW5cbiIKKworIzogc3VibW9kdWxlLmM6MTQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJGZXRjaGluZyBzdWJtb2R1bGUgJXMlc1xuIgorbXNnc3RyICJBbmZvcmRlcm4gZGVzIFN1Ym1vZHVscyAlcyVzXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjE0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGFjY2VzcyBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICJLb25udGUgbmljaHQgYXVmIFN1Ym1vZHVsICclcycgenVncmVpZmVuXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjE2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkVycm9ycyBkdXJpbmcgc3VibW9kdWxlIGZldGNoOlxuIgorIiVzIgorbXNnc3RyICIiCisiRmVobGVyIHfDpGhyZW5kIGRlcyBBbmZvcmRlcm5zIGRlciBTdWJtb2R1bGU6XG4iCisiJXMiCisKKyM6IHN1Ym1vZHVsZS5jOjE2NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBub3QgcmVjb2duaXplZCBhcyBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICInJXMnIG5pY2h0IGFscyBHaXQtUmVwb3NpdG9yeSBlcmthbm50IgogCi0jOiBzdWJtb2R1bGUuYzoxNTQyCisjOiBzdWJtb2R1bGUuYzoxNjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBydW4gJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgaW4gc3VibW9kdWxlICVzIgorbXNnc3RyICJLb25udGUgJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgbmljaHQgaW4gU3VibW9kdWwgJXMgYXVzZsO8aHJlbiIKKworIzogc3VibW9kdWxlLmM6MTcyMAorIywgYy1mb3JtYXQKK21zZ2lkICInZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbj0yJyBmYWlsZWQgaW4gc3VibW9kdWxlICVzIgorbXNnc3RyICInZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbj0yJyBpc3QgaW4gU3VibW9kdWwgJXMgZmVobGdlc2NobGFnZW4iCisKKyM6IHN1Ym1vZHVsZS5jOjE4MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN0YXJ0ICdnaXQgc3RhdHVzJyBpbiBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiS29ubnRlICdnaXQgc3RhdHVzJyBpbiBTdWJtb2R1bCAnJXMnIG5pY2h0IHN0YXJ0ZW4uIgogCi0jOiBzdWJtb2R1bGUuYzoxNTU1CisjOiBzdWJtb2R1bGUuYzoxODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBydW4gJ2dpdCBzdGF0dXMnIGluIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJLb25udGUgJ2dpdCBzdGF0dXMnIGluIFN1Ym1vZHVsICclcycgbmljaHQgYXVzZsO8aHJlbi4iCiAKLSM6IHN1Ym1vZHVsZS5jOjE2NDgKKyM6IHN1Ym1vZHVsZS5jOjE4MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHVuc2V0IGNvcmUud29ya3RyZWUgc2V0dGluZyBpbiBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiS29ubnRlIGNvcmUud29ya3RyZWUgRWluc3RlbGx1bmcgaW4gU3VibW9kdWwgJyVzJyBuaWNodCBhdWZoZWJlbi4iCisKKyM6IHN1Ym1vZHVsZS5jOjE4NTUgc3VibW9kdWxlLmM6MjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICJGZWhsZXIgYmVpIFJla3Vyc2lvbiBpbiBTdWJtb2R1bC1QZmFkICclcyciCisKKyM6IHN1Ym1vZHVsZS5jOjE4NzYKK21zZ2lkICJjb3VsZCBub3QgcmVzZXQgc3VibW9kdWxlIGluZGV4IgorbXNnc3RyICJrb25udGUgSW5kZXggZGVzIFN1Ym1vZHVscyBuaWNodCB6dXLDvGNrc2V0emVuIgorCisjOiBzdWJtb2R1bGUuYzoxOTE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInN1Ym1vZHVsZSAnJXMnIGhhcyBkaXJ0eSBpbmRleCIKIG1zZ3N0ciAiU3VibW9kdWwgJyVzJyBoYXQgZWluZW4gZ2XDpG5kZXJ0ZW4gSW5kZXguIgogCi0jOiBzdWJtb2R1bGUuYzoxNzAwCisjOiBzdWJtb2R1bGUuYzoxOTcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSAnJXMnIGNvdWxkIG5vdCBiZSB1cGRhdGVkLiIKIG1zZ3N0ciAiU3VibW9kdWxlICclcycga29ubnRlIG5pY2h0IGFrdHVhbGlzaWVydCB3ZXJkZW4uIgogCi0jOiBzdWJtb2R1bGUuYzoxNzQ3CisjOiBzdWJtb2R1bGUuYzoyMDM4CisjLCBjLWZvcm1hdAorbXNnaWQgInN1Ym1vZHVsZSBnaXQgZGlyICclcycgaXMgaW5zaWRlIGdpdCBkaXIgJyUuKnMnIgorbXNnc3RyICIiCisiR2l0LVZlcnplaWNobmlzIGRlcyBTdWJtb2R1bHMgJyVzJyBpc3QgaW0gR2l0LVZlcnplaWNobmlzICclLipzJyBlbnRoYWx0ZW4uIgorCisjOiBzdWJtb2R1bGUuYzoyMDU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJyZWxvY2F0ZV9naXRkaXIgZm9yIHN1Ym1vZHVsZSAnJXMnIHdpdGggbW9yZSB0aGFuIG9uZSB3b3JrdHJlZSBub3Qgc3VwcG9ydGVkIgpAQCAtNjA0MSwxMiArODIyNywxNyBAQAogInJlbG9jYXRlX2dpdGRpciBmw7xyIFN1Ym1vZHVsICclcycgbWl0IG1laHIgYWxzIGVpbmVtIEFyYmVpdHN2ZXJ6ZWljaG5pc1xuIgogIndpcmQgbmljaHQgdW50ZXJzdMO8dHp0IgogCi0jOiBzdWJtb2R1bGUuYzoxNzU5IHN1Ym1vZHVsZS5jOjE4MTUKKyM6IHN1Ym1vZHVsZS5jOjIwNzEgc3VibW9kdWxlLmM6MjEzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9va3VwIG5hbWUgZm9yIHN1Ym1vZHVsZSAnJXMnIgotbXNnc3RyICJrb25udGUgTmFtZSBmw7xyIFN1Ym1vZHVsICclcycgbmljaHQgbmFjaHNjaGxhZ2VuIgorbXNnc3RyICJLb25udGUgTmFtZSBmw7xyIFN1Ym1vZHVsICclcycgbmljaHQgbmFjaHNjaGxhZ2VuLiIKIAotIzogc3VibW9kdWxlLmM6MTc2NgorIzogc3VibW9kdWxlLmM6MjA3NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBtb3ZlICclcycgaW50byBhbiBleGlzdGluZyBnaXQgZGlyIgorbXNnc3RyICJWZXJzY2hpZWJlbiB2b24gJyVzJyBpbiBlaW4gZXhpc3RpZXJlbmRlcyBHaXQtVmVyemVpY2huaXMgdmVyd2VpZ2VydC4iCisKKyM6IHN1Ym1vZHVsZS5jOjIwODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk1pZ3JhdGluZyBnaXQgZGlyZWN0b3J5IG9mICclcyVzJyBmcm9tXG4iCkBAIC02MDU3LDQwICs4MjQ4LDM3IEBACiAiJyVzJyBuYWNoXG4iCiAiJyVzJ1xuIgogCi0jOiBzdWJtb2R1bGUuYzoxODUwCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCByZWN1cnNlIGludG8gc3VibW9kdWxlICclcyciCi1tc2dzdHIgIkZlaGxlciBiZWkgUmVrdXJzaW9uIGluIFN1Ym1vZHVsLVBmYWQgJyVzJyIKLQotIzogc3VibW9kdWxlLmM6MTg5NAorIzogc3VibW9kdWxlLmM6MjIwOQogbXNnaWQgImNvdWxkIG5vdCBzdGFydCBscy1maWxlcyBpbiAuLiIKIG1zZ3N0ciAiS29ubnRlICdscy1maWxlcycgbmljaHQgaW4gLi4gc3RhcnRlbiIKIAotIzogc3VibW9kdWxlLmM6MTkzMworIzogc3VibW9kdWxlLmM6MjI0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJscy10cmVlIHJldHVybmVkIHVuZXhwZWN0ZWQgcmV0dXJuIGNvZGUgJWQiCiBtc2dzdHIgImxzLXRyZWUgbWl0IHVuZXJ3YXJ0ZXRlbSBSw7xja2dhYmV3ZXJ0ICVkIGJlZW5kZXQiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzIKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3Jpbmcgc3VzcGljaW91cyBzdWJtb2R1bGUgbmFtZTogJXMiCiBtc2dzdHIgIklnbm9yaWVyZSB2ZXJkw6RjaHRpZ2VuIFN1Ym1vZHVsbmFtZW46ICVzIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6Mjk2CisjOiBzdWJtb2R1bGUtY29uZmlnLmM6MzAzCiBtc2dpZCAibmVnYXRpdmUgdmFsdWVzIG5vdCBhbGxvd2VkIGZvciBzdWJtb2R1bGUuZmV0Y2hqb2JzIgogbXNnc3RyICJOZWdhdGl2ZSBXZXJ0ZSBmw7xyIHN1Ym1vZHVsZS5mZXRjaGpvYnMgbmljaHQgZXJsYXVidC4iCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzozOTAKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo0MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgJyVzJyB3aGljaCBtYXkgYmUgaW50ZXJwcmV0ZWQgYXMgYSBjb21tYW5kLWxpbmUgb3B0aW9uOiAlcyIKLW1zZ3N0ciAiSWdub3JpZXJlICclcycsIHdhcyBhbHMgZWluZSBCZWZlaGxzemVpbGVub3B0aW9uICclcycgaW50ZXJwcmV0aWVydCB3ZXJkZW4gd8O8cmRlLiIKK21zZ3N0ciAiIgorIklnbm9yaWVyZSAnJXMnLCB3YXMgYWxzIGVpbmUgQmVmZWhsc3plaWxlbm9wdGlvbiAnJXMnIGludGVycHJldGllcnQgd2VyZGVuICIKKyJ3w7xyZGUuIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6NDc5CisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yICVzIgogbXNnc3RyICJVbmfDvGx0aWdlciBXZXJ0IGbDvHIgJXMiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzo3NTQKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo3NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHVwZGF0ZSAuZ2l0bW9kdWxlcyBlbnRyeSAlcyIKIG1zZ3N0ciAiS29ubnRlIEVpbnRyYWcgJyVzJyBpbiAuZ2l0bW9kdWxlcyBuaWNodCBha3R1YWxpc2llcmVuIgpAQCAtNjEwNiw3ICs4Mjk0LDcgQEAKIG1zZ2lkICJ1bmtub3duIHZhbHVlICclcycgZm9yIGtleSAnJXMnIgogbXNnc3RyICJ1bmJla2FubnRlciBXZXJ0ICclcycgZsO8ciBTY2hsw7xzc2VsICVzIgogCi0jOiB0cmFpbGVyLmM6NTM5IHRyYWlsZXIuYzo1NDQgYnVpbHRpbi9yZW1vdGUuYzoyOTUKKyM6IHRyYWlsZXIuYzo1MzkgdHJhaWxlci5jOjU0NCBidWlsdGluL3JlbW90ZS5jOjI5OCBidWlsdGluL3JlbW90ZS5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJtb3JlIHRoYW4gb25lICVzIgogbXNnc3RyICJtZWhyIGFscyBlaW4gJXMiCkBAIC02MTI1LDcgKzgzMTMsNyBAQAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGZyb20gc3RkaW4iCiBtc2dzdHIgImtvbm50ZSBuaWNodCB2b24gZGVyIFN0YW5kYXJkLUVpbmdhYmUgbGVzZW4iCiAKLSM6IHRyYWlsZXIuYzoxMDExIGJ1aWx0aW4vYW0uYzo0NworIzogdHJhaWxlci5jOjEwMTEgd3JhcHBlci5jOjY2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc3RhdCAlcyIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgbGVzZW4iCkBAIC02MTU0LDM5ICs4MzQyLDQ3IEBACiBtc2dpZCAiV291bGQgc2V0IHVwc3RyZWFtIG9mICclcycgdG8gJyVzJyBvZiAnJXMnXG4iCiBtc2dzdHIgIlfDvHJkZSBVcHN0cmVhbS1CcmFuY2ggdm9uICclcycgenUgJyVzJyB2b24gJyVzJyBzZXR6ZW5cbiIKIAotIzogdHJhbnNwb3J0LmM6MTQyCisjOiB0cmFuc3BvcnQuYzoxNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgYnVuZGxlICclcyciCiBtc2dzdHIgIktvbm50ZSBQYWtldCAnJXMnIG5pY2h0IGxlc2VuLiIKIAotIzogdHJhbnNwb3J0LmM6MjA4CisjOiB0cmFuc3BvcnQuYzoyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJhbnNwb3J0OiBpbnZhbGlkIGRlcHRoIG9wdGlvbiAnJXMnIgogbXNnc3RyICJ0cmFuc3BvcnQ6IHVuZ8O8bHRpZ2UgLS1kZXB0aCBPcHRpb24gJyVzJyIKIAotIzogdHJhbnNwb3J0LmM6NjE2CisjOiB0cmFuc3BvcnQuYzoyNjYKK21zZ2lkICJzZWUgcHJvdG9jb2wudmVyc2lvbiBpbiAnZ2l0IGhlbHAgY29uZmlnJyBmb3IgbW9yZSBkZXRhaWxzIgorbXNnc3RyICJTaWVoZSBwcm90b2NvbC52ZXJzaW9uIGluICdnaXQgaGVscCBjb25maWcnIGbDvHIgd2VpdGVyZSBJbmZvcm1hdGlvbmVuIgorCisjOiB0cmFuc3BvcnQuYzoyNjcKK21zZ2lkICJzZXJ2ZXIgb3B0aW9ucyByZXF1aXJlIHByb3RvY29sIHZlcnNpb24gMiBvciBsYXRlciIKK21zZ3N0ciAiU2VydmVyLU9wdGlvbmVuIGJlbsO2dGlnZW4gUHJvdG9rb2xsLVZlcnNpb24gMiBvZGVyIGjDtmhlciIKKworIzogdHJhbnNwb3J0LmM6NjMyCiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHRyYW5zcG9ydC5jb2xvci4qIGNvbmZpZyIKIG1zZ3N0ciAiS29ubnRlIHRyYW5zcG9ydC5jb2xvci4qIEtvbmZpZ3VyYXRpb24gbmljaHQgcGFyc2VuLiIKIAotIzogdHJhbnNwb3J0LmM6Njg5CisjOiB0cmFuc3BvcnQuYzo3MDUKIG1zZ2lkICJzdXBwb3J0IGZvciBwcm90b2NvbCB2MiBub3QgaW1wbGVtZW50ZWQgeWV0IgogbXNnc3RyICJVbnRlcnN0w7x0enVuZyBmw7xyIFByb3Rva29sbCB2MiBub2NoIG5pY2h0IGltcGxlbWVudGllcnQuIgogCi0jOiB0cmFuc3BvcnQuYzo4MTYKKyM6IHRyYW5zcG9ydC5jOjgzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHZhbHVlIGZvciBjb25maWcgJyVzJzogJXMiCiBtc2dzdHIgIlVuYmVrYW5udGVyIFdlcnQgZsO8ciBLb25maWd1cmF0aW9uICclcyc6ICVzIgogCi0jOiB0cmFuc3BvcnQuYzo4ODIKKyM6IHRyYW5zcG9ydC5jOjg5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmFuc3BvcnQgJyVzJyBub3QgYWxsb3dlZCIKIG1zZ3N0ciAiw5xiZXJ0cmFndW5nc2FydCAnJXMnIG5pY2h0IGVybGF1YnQuIgogCi0jOiB0cmFuc3BvcnQuYzo5MzYKKyM6IHRyYW5zcG9ydC5jOjk0OQogbXNnaWQgImdpdC1vdmVyLXJzeW5jIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQiCiBtc2dzdHIgImdpdC1vdmVyLXJzeW5jIHdpcmQgbmljaHQgbMOkbmdlciB1bnRlcnN0w7x0enQuIgogCi0jOiB0cmFuc3BvcnQuYzoxMDMxCisjOiB0cmFuc3BvcnQuYzoxMDQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHN1Ym1vZHVsZSBwYXRocyBjb250YWluIGNoYW5nZXMgdGhhdCBjYW5cbiIKQEAgLTYxOTUsNyArODM5MSw3IEBACiAiRGllIGZvbGdlbmRlbiBTdWJtb2R1bC1QZmFkZSBlbnRoYWx0ZW4gw4RuZGVydW5nZW4sIGRpZSBpbiBrZWluZW1cbiIKICJSZW1vdGUtUmVwb3NpdG9yeSBnZWZ1bmRlbiB3dXJkZW46XG4iCiAKLSM6IHRyYW5zcG9ydC5jOjEwMzUKKyM6IHRyYW5zcG9ydC5jOjEwNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtNjIyMiwzOSArODQxOCwzNCBAQAogInp1bSBWZXJzZW5kZW4genUgZWluZW0gUmVtb3RlLVJlcG9zaXRvcnkuXG4iCiAiXG4iCiAKLSM6IHRyYW5zcG9ydC5jOjEwNDMKKyM6IHRyYW5zcG9ydC5jOjEwNTYKIG1zZ2lkICJBYm9ydGluZy4iCiBtc2dzdHIgIkFiYnJ1Y2guIgogCi0jOiB0cmFuc3BvcnQuYzoxMTgyCisjOiB0cmFuc3BvcnQuYzoxMjAxCiBtc2dpZCAiZmFpbGVkIHRvIHB1c2ggYWxsIG5lZWRlZCBzdWJtb2R1bGVzIgogbXNnc3RyICJGZWhsZXIgYmVpbSBWZXJzYW5kIGFsbGVyIGVyZm9yZGVybGljaGVuIFN1Ym1vZHVsZS4iCiAKLSM6IHRyYW5zcG9ydC5jOjEzMTUgdHJhbnNwb3J0LWhlbHBlci5jOjY0MworIzogdHJhbnNwb3J0LmM6MTM0NSB0cmFuc3BvcnQtaGVscGVyLmM6NjU3CiBtc2dpZCAib3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCiBtc2dzdHIgIkRpZSBPcGVyYXRpb24gd2lyZCB2b24gZGVtIFByb3Rva29sbCBuaWNodCB1bnRlcnN0w7x0enQuIgogCi0jOiB0cmFuc3BvcnQuYzoxNDE5Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgbGluZSB3aGlsZSBwYXJzaW5nIGFsdGVybmF0ZSByZWZzOiAlcyIKLW1zZ3N0ciAiVW5nw7xsdGlnZSBaZWlsZSBiZWltIFBhcnNlbiBhbHRlcm5hdGl2ZXIgUmVmZXJlbnplbjogJXMiCi0KLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MSB0cmFuc3BvcnQtaGVscGVyLmM6ODAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MSB0cmFuc3BvcnQtaGVscGVyLmM6OTAKIG1zZ2lkICJmdWxsIHdyaXRlIHRvIHJlbW90ZSBoZWxwZXIgZmFpbGVkIgogbXNnc3RyICJWb2xsc3TDpG5kaWdlcyBTY2hyZWliZW4genUgUmVtb3RlLUhlbHBlciBmZWhsZ2VzY2hsYWdlbi4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZpbmQgcmVtb3RlIGhlbHBlciBmb3IgJyVzJyIKIG1zZ3N0ciAiS29ubnRlIFJlbW90ZS1IZWxwZXIgZsO8ciAnJXMnIG5pY2h0IGZpbmRlbi4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDggdHJhbnNwb3J0LWhlbHBlci5jOjU1NworIzogdHJhbnNwb3J0LWhlbHBlci5jOjE2MCB0cmFuc3BvcnQtaGVscGVyLmM6NTcxCiBtc2dpZCAiY2FuJ3QgZHVwIGhlbHBlciBvdXRwdXQgZmQiCiBtc2dzdHIgIiIKICJLb25udGUgZHVwKCkgYXVmIERhdGVpZGVza3JpcHRvciBmw7xyIEF1c2dhYmVuIGRlcyBSZW1vdGUtSGVscGVycyBuaWNodCAiCiAiYXVzZsO8aHJlbi4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxOTkKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInVua25vd24gbWFuZGF0b3J5IGNhcGFiaWxpdHkgJXM7IHRoaXMgcmVtb3RlIGhlbHBlciBwcm9iYWJseSBuZWVkcyBuZXdlciAiCkBAIC02MjYzLDEwMCArODQ1NCwxMDUgQEAKICJVbmJla2FubnRlIGVyZm9yZGVybGljaGUgRsOkaGlna2VpdCAlczsgZGllc2VyIFJlbW90ZS1IZWxwZXIgYmVuw7Z0aWd0XG4iCiAid2FocnNjaGVpbmxpY2ggZWluZSBuZXVlcmUgVmVyc2lvbiB2b24gR2l0LiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjIwNQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxNwogbXNnaWQgInRoaXMgcmVtb3RlIGhlbHBlciBzaG91bGQgaW1wbGVtZW50IHJlZnNwZWMgY2FwYWJpbGl0eSIKIG1zZ3N0ciAiRGllc2VyIFJlbW90ZS1IZWxwZXIgc29sbHRlIGRpZSBcInJlZnNwZWNcIi1Gw6RoaWdrZWl0IGltcGxlbWVudGllcmVuLiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjI3MiB0cmFuc3BvcnQtaGVscGVyLmM6NDEyCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6Mjg0IHRyYW5zcG9ydC1oZWxwZXIuYzo0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdW5leHBlY3RlZGx5IHNhaWQ6ICclcyciCiBtc2dzdHIgInVuZXJ3YXJ0ZXRlIEF1c2dhYmUgdm9uICVzOiAnJXMnIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NDAxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGFsc28gbG9ja2VkICVzIgogbXNnc3RyICIlcyBzcGVycnRlIGF1Y2ggJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0NzkKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0OTMKIG1zZ2lkICJjb3VsZG4ndCBydW4gZmFzdC1pbXBvcnQiCiBtc2dzdHIgIktvbm50ZSBcImZhc3QtaW1wb3J0XCIgbmljaHQgYXVzZsO8aHJlbi4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MDIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MTYKIG1zZ2lkICJlcnJvciB3aGlsZSBydW5uaW5nIGZhc3QtaW1wb3J0IgogbXNnc3RyICJGZWhsZXIgYmVpbSBBdXNmw7xocmVuIHZvbiAnZmFzdC1pbXBvcnQnLiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjUzMSB0cmFuc3BvcnQtaGVscGVyLmM6MTA5MQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjU0NSB0cmFuc3BvcnQtaGVscGVyLmM6MTEzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCByZWYgJXMiCiBtc2dzdHIgIktvbm50ZSBSZWZlcmVueiAlcyBuaWNodCBsZXNlbi4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1NzYKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biByZXNwb25zZSB0byBjb25uZWN0OiAlcyIKIG1zZ3N0ciAiVW5iZWthbm50ZSBBbnR3b3J0IGF1ZiAnY29ubmVjdCc6ICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTk4CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjEyCiBtc2dpZCAic2V0dGluZyByZW1vdGUgc2VydmljZSBwYXRoIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCiBtc2dzdHIgIiIKICJTZXR6ZW4gZGVzIFJlbW90ZS1TZXJ2aWNlIFBmYWRzIHdpcmQgdm9uIGRlbSBQcm90b2tvbGwgbmljaHQgdW50ZXJzdMO8dHp0LiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjYwMAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjYxNAogbXNnaWQgImludmFsaWQgcmVtb3RlIHNlcnZpY2UgcGF0aCIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgUmVtb3RlLVNlcnZpY2UgUGZhZC4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2NDYKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3QgY29ubmVjdCB0byBzdWJzZXJ2aWNlICVzIgogbXNnc3RyICJLYW5uIGtlaW5lIFZlcmJpbmR1bmcgenUgU3Vic2VydmljZSAlcyBoZXJzdGVsbGVuLiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjcxMworIzogdHJhbnNwb3J0LWhlbHBlci5jOjczNgogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBvay9lcnJvciwgaGVscGVyIHNhaWQgJyVzJyIKIG1zZ3N0ciAiRXJ3YXJ0ZXRlIG9rL2Vycm9yLCBSZW1vdGUtSGVscGVyIGdhYiAnJXMnIGF1cy4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo3NjYKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo3ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyIHJlcG9ydGVkIHVuZXhwZWN0ZWQgc3RhdHVzIG9mICVzIgogbXNnc3RyICJSZW1vdGUtSGVscGVyIG1lbGRldGUgdW5lcndhcnRldGVuIFN0YXR1cyB2b24gJXMuIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODI3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODUwCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IGRyeS1ydW4iCiBtc2dzdHIgIlJlbW90ZS1IZWxwZXIgJXMgdW50ZXJzdMO8dHp0IGtlaW4gVHJvY2tlbmxhdWYuIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODMwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIgogbXNnc3RyICJSZW1vdGUtSGVscGVyICVzIHVudGVyc3TDvHR6dCBrZWluIC0tc2lnbmVkLiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjgzMworIzogdHJhbnNwb3J0LWhlbHBlci5jOjg1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAtLXNpZ25lZD1pZi1hc2tlZCIKIG1zZ3N0ciAiUmVtb3RlLUhlbHBlciAlcyB1bnRlcnN0w7x0enQga2VpbiAtLXNpZ25lZD1pZi1hc2tlZC4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NDAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgLS1hdG9taWMiCittc2dzdHIgIlJlbW90ZS1IZWxwZXIgJXMgdW50ZXJzdMO8dHp0IGtlaW4gLS1hdG9taWMuIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODY3CiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0ICdwdXNoLW9wdGlvbiciCiBtc2dzdHIgIlJlbW90ZS1IZWxwZXIgJXMgdW50ZXJzdMO8dHp0IG5pY2h0ICdwdXNoLW9wdGlvbicuIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTMyCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6OTY1CiBtc2dpZCAicmVtb3RlLWhlbHBlciBkb2Vzbid0IHN1cHBvcnQgcHVzaDsgcmVmc3BlYyBuZWVkZWQiCiBtc2dzdHIgIlJlbW90ZS1IZWxwZXIgdW50ZXJzdMO8dHp0IGtlaW4gUHVzaDsgUmVmc3BlYyBiZW7DtnRpZ3QiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5MzcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgJ2ZvcmNlJyIKIG1zZ3N0ciAiUmVtb3RlLUhlbHBlciAlcyB1bnRlcnN0w7x0enQga2VpbiAnZm9yY2UnLiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjk4NAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMTcKIG1zZ2lkICJjb3VsZG4ndCBydW4gZmFzdC1leHBvcnQiCiBtc2dzdHIgIktvbm50ZSBcImZhc3QtZXhwb3J0XCIgbmljaHQgYXVzZsO8aHJlbi4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5ODkKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDIyCiBtc2dpZCAiZXJyb3Igd2hpbGUgcnVubmluZyBmYXN0LWV4cG9ydCIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gQXVzZsO8aHJlbiB2b24gXCJmYXN0LWV4cG9ydFwiLiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMTQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyByZWZzIGluIGNvbW1vbiBhbmQgbm9uZSBzcGVjaWZpZWQ7IGRvaW5nIG5vdGhpbmcuXG4iCkBAIC02MzY1LDY3ICs4NTYxLDY3IEBACiAiS2VpbmUgZ2VtZWluc2FtZW4gUmVmZXJlbnplbiB1bmQgbmljaHRzIHNwZXppZml6aWVydDsga2VpbmUgQXVzZsO8aHJ1bmcuXG4iCiAiVmllbGxlaWNodCBzb2xsdGVuIFNpZSBlaW5lbiBCcmFuY2ggd2llICdtYXN0ZXInIGFuZ2ViZW4uXG4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDc3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTEyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgcmVzcG9uc2UgaW4gcmVmIGxpc3Q6ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlIEFudHdvcnQgaW4gUmVmZXJlbnpsaXN0ZTogJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjMxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkKCVzKSBmYWlsZWQiCiBtc2dzdHIgIkxlc2VuIHZvbiAlcyBmZWhsZ2VzY2hsYWdlbi4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjU4CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cml0ZSglcykgZmFpbGVkIgogbXNnc3RyICJTY2hyZWliZW4gdm9uICVzIGZlaGxnZXNjaGxhZ2VuLiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMDcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHRocmVhZCBmYWlsZWQiCiBtc2dzdHIgIlRocmVhZCAlcyBmZWhsZ2VzY2hsYWdlbi4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzExCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM1MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB0aHJlYWQgZmFpbGVkIHRvIGpvaW46ICVzIgogbXNnc3RyICJGZWhsZXIgYmVpbSBCZWl0cmV0ZW4genUgVGhyZWFkICVzOiAlcyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMzAgdHJhbnNwb3J0LWhlbHBlci5jOjEzMzQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzcxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IHN0YXJ0IHRocmVhZCBmb3IgY29weWluZyBkYXRhOiAlcyIKIG1zZ3N0ciAiS2FubiBUaHJlYWQgenVtIEtvcGllcmVuIHZvbiBEYXRlbiBuaWNodCBzdGFydGVuOiAlcyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNzEKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHByb2Nlc3MgZmFpbGVkIHRvIHdhaXQiCiBtc2dzdHIgIkZlaGxlciBiZWltIFdhcnRlbiB2b24gUHJvemVzcyAlcy4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzc1CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQxNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBwcm9jZXNzIGZhaWxlZCIKIG1zZ3N0ciAiUHJvemVzcyAlcyBmZWhsZ2VzY2hsYWdlbiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzOTMgdHJhbnNwb3J0LWhlbHBlci5jOjE0MDIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDM0IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDQzCiBtc2dpZCAiY2FuJ3Qgc3RhcnQgdGhyZWFkIGZvciBjb3B5aW5nIGRhdGEiCiBtc2dzdHIgIkthbm4gVGhyZWFkIHp1bSBLb3BpZXJlbiB2b24gRGF0ZW4gbmljaHQgc3RhcnRlbi4iCiAKLSM6IHRyZWUtd2Fsay5jOjMzCisjOiB0cmVlLXdhbGsuYzozMgogbXNnaWQgInRvby1zaG9ydCB0cmVlIG9iamVjdCIKIG1zZ3N0ciAienUga3VyemVzIFRyZWUtT2JqZWt0IgogCi0jOiB0cmVlLXdhbGsuYzozOQorIzogdHJlZS13YWxrLmM6MzgKIG1zZ2lkICJtYWxmb3JtZWQgbW9kZSBpbiB0cmVlIGVudHJ5IgogbXNnc3RyICJmZWhsZXJoYWZ0ZXIgTW9kdXMgaW4gVHJlZS1FaW50cmFnIgogCi0jOiB0cmVlLXdhbGsuYzo0MworIzogdHJlZS13YWxrLmM6NDIKIG1zZ2lkICJlbXB0eSBmaWxlbmFtZSBpbiB0cmVlIGVudHJ5IgogbXNnc3RyICJsZWVyZXIgRGF0ZWluYW1lIGluIFRyZWUtRWludHJhZyIKIAotIzogdHJlZS13YWxrLmM6MTE1CisjOiB0cmVlLXdhbGsuYzoxMTcKIG1zZ2lkICJ0b28tc2hvcnQgdHJlZSBmaWxlIgogbXNnc3RyICJ6dSBrdXJ6ZSBUcmVlLURhdGVpIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTIKKyM6IHVucGFjay10cmVlcy5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCkBAIC02NDM2LDcgKzg2MzIsNyBAQAogIiUlc0JpdHRlIGNvbW1pdHRlbiBvZGVyIHN0YXNoZW4gU2llIElocmUgw4RuZGVydW5nZW4sIGJldm9yIFNpZSBCcmFuY2hlc1xuIgogIndlY2hzZWxuLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTE0CisjOiB1bnBhY2stdHJlZXMuYzoxMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IGNoZWNrb3V0OlxuIgpAQCAtNjQ0Niw3ICs4NjQyLDcgQEAKICLDvGJlcnNjaHJpZWJlbiB3ZXJkZW46XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTcKKyM6IHVucGFjay10cmVlcy5jOjExNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCkBAIC02NDU2LDcgKzg2NTIsNyBAQAogIsO8YmVyc2NocmllYmVuIHdlcmRlbjpcbiIKICIlJXNCaXR0ZSBjb21taXR0ZW4gb2RlciBzdGFzaGVuIFNpZSBJaHJlIMOEbmRlcnVuZ2VuLCBiZXZvciBTaWUgbWVyZ2VuLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTE5CisjOiB1bnBhY2stdHJlZXMuYzoxMTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtNjQ2Niw3ICs4NjYyLDcgQEAKICLDvGJlcnNjaHJpZWJlbiB3ZXJkZW46XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMjIKKyM6IHVucGFjay10cmVlcy5jOjEyMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCkBAIC02NDc2LDcgKzg2NzIsNyBAQAogIsO8YmVyc2NocmllYmVuIHdlcmRlbjpcbiIKICIlJXNCaXR0ZSBjb21taXR0ZW4gb2RlciBzdGFzaGVuIFNpZSBJaHJlIMOEbmRlcnVuZ2VuLCBiZXZvciBTaWUgJXMgYXVzZsO8aHJlbi4iCiAKLSM6IHVucGFjay10cmVlcy5jOjEyNAorIzogdW5wYWNrLXRyZWVzLmM6MTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKQEAgLTY0ODUsNyArODY4MSw3IEBACiAiSWhyZSBsb2thbGVuIMOEbmRlcnVuZ2VuIHfDvHJkZW4gZHVyY2ggJXMgw7xiZXJzY2hyaWViZW4gd2VyZGVuLlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTI5CisjOiB1bnBhY2stdHJlZXMuYzoxMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlVwZGF0aW5nIHRoZSBmb2xsb3dpbmcgZGlyZWN0b3JpZXMgd291bGQgbG9zZSB1bnRyYWNrZWQgZmlsZXMgaW4gdGhlbTpcbiIKQEAgLTY0OTUsNyArODY5MSw3IEBACiAiRGF0ZWllbiBpbiBkaWVzZW4gVmVyemVpY2huaXNzZW4gdmVybG9yZW4gZ2VoZW46XG4iCiAiJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjEzMworIzogdW5wYWNrLXRyZWVzLmM6MTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKQEAgLTY1MDUsNyArODcwMSw3IEBACiAiZGVuIENoZWNrb3V0IGVudGZlcm50IHdlcmRlbjpcbiIKICIlJXNCaXR0ZSB2ZXJzY2hpZWJlbiBvZGVyIGVudGZlcm5lbiBTaWUgZGllc2UsIGJldm9yIFNpZSBCcmFuY2hlcyB3ZWNoc2Vsbi4iCiAKLSM6IHVucGFjay10cmVlcy5jOjEzNQorIzogdW5wYWNrLXRyZWVzLmM6MTMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKQEAgLTY1MTYsNyArODcxMiw3IEBACiAiQ2hlY2tvdXQgZW50ZmVybnQgd2VyZGVuOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTM4CisjOiB1bnBhY2stdHJlZXMuYzoxMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgpAQCAtNjUyNiw3ICs4NzIyLDcgQEAKICJkZW4gTWVyZ2UgZW50ZmVybnQgd2VyZGVuOlxuIgogIiUlc0JpdHRlIHZlcnNjaGllYmVuIG9kZXIgZW50ZmVybmVuIFNpZSBkaWVzZSwgYmV2b3Igc2llIG1lcmdlbi4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE0MAorIzogdW5wYWNrLXRyZWVzLmM6MTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBtZXJnZTpcbiIKQEAgLTY1MzcsNyArODczMyw3IEBACiAiTWVyZ2UgZW50ZmVybnQgd2VyZGVuOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTQzCisjOiB1bnBhY2stdHJlZXMuYzoxNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5ICVzOlxuIgpAQCAtNjU0Nyw3ICs4NzQzLDcgQEAKICJkZW4gJXMgZW50ZmVybnQgd2VyZGVuOlxuIgogIiUlc0JpdHRlIHZlcnNjaGllYmVuIG9kZXIgZW50ZmVybmVuIFNpZSBkaWVzZSwgYmV2b3Igc2llICVzIGF1c2bDvGhyZW4uIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNDUKKyM6IHVucGFjay10cmVlcy5jOjE0MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgJXM6XG4iCkBAIC02NTU3LDcgKzg3NTMsNyBAQAogImRlbiAlcyBlbnRmZXJudCB3ZXJkZW46XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNTEKKyM6IHVucGFjay10cmVlcy5jOjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICIKQEAgLTY1NjgsNyArODc2NCw3IEBACiAiZGVuIENoZWNrb3V0IMO8YmVyc2NocmllYmVuIHdlcmRlbjpcbiIKICIlJXNCaXR0ZSB2ZXJzY2hpZWJlbiBvZGVyIGVudGZlcm5lbiBTaWUgZGllc2UsIGJldm9yIFNpZSBCcmFuY2hlcyB3ZWNoc2Vsbi4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE1MworIzogdW5wYWNrLXRyZWVzLmM6MTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgIgpAQCAtNjU4MCw3ICs4Nzc2LDcgQEAKICJDaGVja291dCDDvGJlcnNjaHJpZWJlbiB3ZXJkZW46XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNTYKKyM6IHVucGFjay10cmVlcy5jOjE1NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtNjU5MCw3ICs4Nzg2LDcgQEAKICJkZW4gTWVyZ2Ugw7xiZXJzY2hyaWViZW4gd2VyZGVuOlxuIgogIiUlc0JpdHRlIHZlcnNjaGllYmVuIG9kZXIgZW50ZmVybmVuIFNpZSBkaWVzZSwgYmV2b3IgU2llIG1lcmdlbi4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE1OAorIzogdW5wYWNrLXRyZWVzLmM6MTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCkBAIC02NjAwLDcgKzg3OTYsNyBAQAogImRlbiBNZXJnZSDDvGJlcnNjaHJpZWJlbiB3ZXJkZW46XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNjEKKyM6IHVucGFjay10cmVlcy5jOjE1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjYxMCw3ICs4ODA2LDcgQEAKICJkZW4gJXMgw7xiZXJzY2hyaWViZW4gd2VyZGVuOlxuIgogIiUlc0JpdHRlIHZlcnNjaGllYmVuIG9kZXIgZW50ZmVybmVuIFNpZSBkaWVzZSwgYmV2b3Igc2llICVzIGF1c2bDvGhyZW4uIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNjMKKyM6IHVucGFjay10cmVlcy5jOjE2MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjYyMSwxMiArODgxNywxMiBAQAogIiVzIMO8YmVyc2NocmllYmVuIHdlcmRlbjpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE3MQorIzogdW5wYWNrLXRyZWVzLmM6MTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkVudHJ5ICclcycgb3ZlcmxhcHMgd2l0aCAnJXMnLiAgQ2Fubm90IGJpbmQuIgogbXNnc3RyICJFaW50cmFnICclcycgw7xiZXJzY2huZWlkZXQgc2ljaCBtaXQgJyVzJy4gS2FubiBuaWNodCB2ZXJiaW5kZW4uIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNzQKKyM6IHVucGFjay10cmVlcy5jOjE3MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IHVwZGF0ZSBzcGFyc2UgY2hlY2tvdXQ6IHRoZSBmb2xsb3dpbmcgZW50cmllcyBhcmUgbm90IHVwIHRvIGRhdGU6XG4iCkBAIC02NjM2LDcgKzg4MzIsNyBAQAogInNpbmQgbmljaHQgYWt0dWVsbDpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTc2CisjOiB1bnBhY2stdHJlZXMuYzoxNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IHNwYXJzZSBjaGVja291dCAiCkBAIC02NjQ3LDcgKzg4NDMsNyBAQAogIsO8YmVyIGVpbmVuIHBhcnRpZWxsZW4gQ2hlY2tvdXQgw7xiZXJzY2hyaWViZW4gd2VyZGVuOlxuIgogIiVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNzgKKyM6IHVucGFjay10cmVlcy5jOjE3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBzcGFyc2UgY2hlY2tvdXQgIgpAQCAtNjY1OCw3ICs4ODU0LDcgQEAKICLDvGJlciBlaW5lbiBwYXJ0aWVsbGVuIENoZWNrb3V0IGVudGZlcm50IHdlcmRlbjpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTgwCisjOiB1bnBhY2stdHJlZXMuYzoxNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNhbm5vdCB1cGRhdGUgc3VibW9kdWxlOlxuIgpAQCAtNjY2NywxNiArODg2MywxNiBAQAogIkthbm4gU3VibW9kdWwgbmljaHQgYWt0dWFsaXNpZXJlbjpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MjU0CisjOiB1bnBhY2stdHJlZXMuYzoyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmdcbiIKIG1zZ3N0ciAiQWJicnVjaFxuIgogCi0jOiB1bnBhY2stdHJlZXMuYzozMzYKLW1zZ2lkICJDaGVja2luZyBvdXQgZmlsZXMiCi1tc2dzdHIgIkNoZWNrZSBEYXRlaWVuIGF1cyIKKyM6IHVucGFjay10cmVlcy5jOjMxNworbXNnaWQgIlVwZGF0aW5nIGZpbGVzIgorbXNnc3RyICJBa3R1YWxpc2llcmUgRGF0ZWllbiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MzY4CisjOiB1bnBhY2stdHJlZXMuYzozNDkKIG1zZ2lkICIiCiAidGhlIGZvbGxvd2luZyBwYXRocyBoYXZlIGNvbGxpZGVkIChlLmcuIGNhc2Utc2Vuc2l0aXZlIHBhdGhzXG4iCiAib24gYSBjYXNlLWluc2Vuc2l0aXZlIGZpbGVzeXN0ZW0pIGFuZCBvbmx5IG9uZSBmcm9tIHRoZSBzYW1lXG4iCkBAIC02Njg2LDYgKzg4ODIsMTAgQEAKICJhdWYgZWluZW0gY2FzZS1pbnNlbnNpdGl2ZW4gRGF0ZWlzeXN0ZW0pIHVuZCBudXIgZWluZXIgdm9uIGRlclxuIgogInNlbGJlbiBLb2xsaXNzaW9uc2dydXBwZSBpc3QgaW0gQXJiZWl0c3ZlcnplaWNobmlzOlxuIgogCisjOiB1bnBhY2stdHJlZXMuYzoxNDQ1Cittc2dpZCAiVXBkYXRpbmcgaW5kZXggZmxhZ3MiCittc2dzdHIgIkFrdHVhbGlzaWVyZSBJbmRleC1NYXJraWVydW5nZW4iCisKICM6IHVybG1hdGNoLmM6MTYzCiBtc2dpZCAiaW52YWxpZCBVUkwgc2NoZW1lIG5hbWUgb3IgbWlzc2luZyAnOi8vJyBzdWZmaXgiCiBtc2dzdHIgIlVuZ8O8bHRpZ2VzIFVSTC1TY2hlbWEgb2RlciBTdWZmaXggJzovLycgZmVobHQiCkBAIC02NzE1LDIxMSArODkxNSwyMjEgQEAKIG1zZ2lkICJpbnZhbGlkICcuLicgcGF0aCBzZWdtZW50IgogbXNnc3RyICJ1bmfDvGx0aWdlcyAnLi4nIFBmYWRzZWdtZW50IgogCi0jOiB3b3JrdHJlZS5jOjI0OSBidWlsdGluL2FtLmM6MjEwMAorIzogd2Fsa2VyLmM6MTcwCittc2dpZCAiRmV0Y2hpbmcgb2JqZWN0cyIKK21zZ3N0ciAiQW5mb3JkZXJuIGRlciBPYmpla3RlIgorCisjOiB3b3JrdHJlZS5jOjI1OSBidWlsdGluL2FtLmM6MjA5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCAnJXMnIgogbXNnc3RyICJGZWhsZXIgYmVpbSBMZXNlbiB2b24gJyVzJyIKIAotIzogd29ya3RyZWUuYzoyOTUKKyM6IHdvcmt0cmVlLmM6MzA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgYXQgbWFpbiB3b3JraW5nIHRyZWUgaXMgbm90IHRoZSByZXBvc2l0b3J5IGRpcmVjdG9yeSIKIG1zZ3N0ciAiJyVzJyBpbSBIYXVwdGFyYmVpdHN2ZXJ6ZWljaG5pcyBpc3QgbmljaHQgZGFzIFJlcG9zaXRvcnktVmVyemVpY2huaXMuIgogCi0jOiB3b3JrdHJlZS5jOjMwNgorIzogd29ya3RyZWUuYzozMTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBmaWxlIGRvZXMgbm90IGNvbnRhaW4gYWJzb2x1dGUgcGF0aCB0byB0aGUgd29ya2luZyB0cmVlIGxvY2F0aW9uIgogbXNnc3RyICInJXMnIERhdGVpIGVudGjDpGx0IG5pY2h0IGRlbiBhYnNvbHV0ZW4gUGZhZCB6dW0gQXJiZWl0c3ZlcnplaWNobmlzLiIKIAotIzogd29ya3RyZWUuYzozMTgKKyM6IHdvcmt0cmVlLmM6MzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgIiclcycgZXhpc3RpZXJ0IG5pY2h0LiIKIAotIzogd29ya3RyZWUuYzozMjQKKyM6IHdvcmt0cmVlLmM6MzM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgLmdpdCBmaWxlLCBlcnJvciBjb2RlICVkIgogbXNnc3RyICInJXMnIGlzdCBrZWluZSAuZ2l0LURhdGVpLCBGZWhsZXJjb2RlICVkIgogCi0jOiB3b3JrdHJlZS5jOjMzMgorIzogd29ya3RyZWUuYzozNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBkb2VzIG5vdCBwb2ludCBiYWNrIHRvICclcyciCiBtc2dzdHIgIiclcycgemVpZ3QgbmljaHQgenVyw7xjayBhdWYgJyVzJyIKIAotIzogd3JhcHBlci5jOjIyMyB3cmFwcGVyLmM6MzkzCisjOiB3cmFwcGVyLmM6MTg2IHdyYXBwZXIuYzozNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3IgcmVhZGluZyBhbmQgd3JpdGluZyIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgenVtIExlc2VuIHVuZCBTY2hyZWliZW4gw7ZmZm5lbi4iCiAKLSM6IHdyYXBwZXIuYzo0MjQgd3JhcHBlci5jOjYyNAorIzogd3JhcHBlci5jOjM4NyB3cmFwcGVyLmM6NTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgJyVzJyIKIG1zZ3N0ciAia29ubnRlIG5pY2h0IGF1ZiAnJXMnIHp1Z3JlaWZlbiIKIAotIzogd3JhcHBlci5jOjYzMgorIzogd3JhcHBlci5jOjU5NgogbXNnaWQgInVuYWJsZSB0byBnZXQgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAiS29ubnRlIGFrdHVlbGxlcyBBcmJlaXRzdmVyemVpY2huaXMgbmljaHQgYmVrb21tZW4uIgogCi0jOiB3dC1zdGF0dXMuYzoxNTQKKyM6IHd0LXN0YXR1cy5jOjE1OAogbXNnaWQgIlVubWVyZ2VkIHBhdGhzOiIKIG1zZ3N0ciAiTmljaHQgenVzYW1tZW5nZWbDvGhydGUgUGZhZGU6IgogCi0jOiB3dC1zdGF0dXMuYzoxODEgd3Qtc3RhdHVzLmM6MjA4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiAgKHVzZSBcImdpdCByZXNldCAlcyA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKKyM6IHd0LXN0YXR1cy5jOjE4NyB3dC1zdGF0dXMuYzoyMTkKK21zZ2lkICIgICh1c2UgXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKIG1zZ3N0ciAiIgotIiAgKGJlbnV0emVuIFNpZSBcImdpdCByZXNldCAlcyA8RGF0ZWk+Li4uXCIgenVtIEVudGZlcm5lbiBhdXMgZGVyIFN0YWdpbmctIgotIkFyZWEpIgorIiAgKGJlbnV0emVuIFNpZSBcImdpdCByZXN0b3JlIC0tc3RhZ2VkIDxEYXRlaT4uLi5cIiB6dW0gRW50ZmVybmVuIGF1cyBkZXIgIgorIlN0YWdpbmctQXJlYSkiCiAKLSM6IHd0LXN0YXR1cy5jOjE4MyB3dC1zdGF0dXMuYzoyMTAKKyM6IHd0LXN0YXR1cy5jOjE5MCB3dC1zdGF0dXMuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zb3VyY2U9JXMgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiIKKyIgIChiZW51dHplbiBTaWUgXCJnaXQgcmVzdG9yZSAtLXNvdXJjZT0lcyAtLXN0YWdlZCA8RGF0ZWk+Li4uXCIgenVtICIKKyJFbnRmZXJuZW4gYXVzIGRlciBTdGFnaW5nLUFyZWEpIgorCisjOiB3dC1zdGF0dXMuYzoxOTMgd3Qtc3RhdHVzLmM6MjI1CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJtIC0tY2FjaGVkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgogbXNnc3RyICIiCiAiICAoYmVudXR6ZW4gU2llIFwiZ2l0IHJtIC0tY2FjaGVkIDxEYXRlaT4uLi5cIiB6dW0gRW50ZmVybmVuIGF1cyBkZXIgU3RhZ2luZy0iCiAiQXJlYSkiCiAKLSM6IHd0LXN0YXR1cy5jOjE4NworIzogd3Qtc3RhdHVzLmM6MTk3CiBtc2dpZCAiICAodXNlIFwiZ2l0IGFkZCA8ZmlsZT4uLi5cIiB0byBtYXJrIHJlc29sdXRpb24pIgogbXNnc3RyICIiCiAiICAoYmVudXR6ZW4gU2llIFwiZ2l0IGFkZC9ybSA8RGF0ZWk+Li4uXCIsIHVtIGRpZSBBdWZsw7ZzdW5nIHp1IG1hcmtpZXJlbikiCiAKLSM6IHd0LXN0YXR1cy5jOjE4OSB3dC1zdGF0dXMuYzoxOTMKKyM6IHd0LXN0YXR1cy5jOjE5OSB3dC1zdGF0dXMuYzoyMDMKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIGFzIGFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbikiCiBtc2dzdHIgIiIKICIgIChiZW51dHplbiBTaWUgXCJnaXQgYWRkL3JtIDxEYXRlaT4uLi5cIiwgdW0gZGllIEF1ZmzDtnN1bmcgZW50c3ByZWNoZW5kIHp1ICIKICJtYXJraWVyZW4pIgogCi0jOiB3dC1zdGF0dXMuYzoxOTEKKyM6IHd0LXN0YXR1cy5jOjIwMQogbXNnaWQgIiAgKHVzZSBcImdpdCBybSA8ZmlsZT4uLi5cIiB0byBtYXJrIHJlc29sdXRpb24pIgogbXNnc3RyICIiCiAiICAoYmVudXR6ZW4gU2llIFwiZ2l0IGFkZC9ybSA8RGF0ZWk+Li4uXCIsIHVtIGRpZSBBdWZsw7ZzdW5nIHp1IG1hcmtpZXJlbikiCiAKLSM6IHd0LXN0YXR1cy5jOjIwMiB3dC1zdGF0dXMuYzoxMDQyCisjOiB3dC1zdGF0dXMuYzoyMTEgd3Qtc3RhdHVzLmM6MTA3NAogbXNnaWQgIkNoYW5nZXMgdG8gYmUgY29tbWl0dGVkOiIKIG1zZ3N0ciAiWnVtIENvbW1pdCB2b3JnZW1lcmt0ZSDDhG5kZXJ1bmdlbjoiCiAKLSM6IHd0LXN0YXR1cy5jOjIyMCB3dC1zdGF0dXMuYzoxMDUxCisjOiB3dC1zdGF0dXMuYzoyMzQgd3Qtc3RhdHVzLmM6MTA4MwogbXNnaWQgIkNoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OiIKIG1zZ3N0ciAiw4RuZGVydW5nZW4sIGRpZSBuaWNodCB6dW0gQ29tbWl0IHZvcmdlbWVya3Qgc2luZDoiCiAKLSM6IHd0LXN0YXR1cy5jOjIyNAorIzogd3Qtc3RhdHVzLmM6MjM4CiBtc2dpZCAiICAodXNlIFwiZ2l0IGFkZCA8ZmlsZT4uLi5cIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCiBtc2dzdHIgIiIKICIgIChiZW51dHplbiBTaWUgXCJnaXQgYWRkIDxEYXRlaT4uLi5cIiwgdW0gZGllIMOEbmRlcnVuZ2VuIHp1bSBDb21taXQgIgogInZvcnp1bWVya2VuKSIKIAotIzogd3Qtc3RhdHVzLmM6MjI2CisjOiB3dC1zdGF0dXMuYzoyNDAKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiIgogIiAgKGJlbnV0emVuIFNpZSBcImdpdCBhZGQvcm0gPERhdGVpPi4uLlwiLCB1bSBkaWUgw4RuZGVydW5nZW4genVtIENvbW1pdCAiCiAidm9yenVtZXJrZW4pIgogCi0jOiB3dC1zdGF0dXMuYzoyMjcKKyM6IHd0LXN0YXR1cy5jOjI0MQogbXNnaWQgIiIKLSIgICh1c2UgXCJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uXCIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KSIKKyIgICh1c2UgXCJnaXQgcmVzdG9yZSA8ZmlsZT4uLi5cIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpIgogbXNnc3RyICIiCi0iICAoYmVudXR6ZW4gU2llIFwiZ2l0IGNoZWNrb3V0IC0tIDxEYXRlaT4uLi5cIiwgdW0gZGllIMOEbmRlcnVuZ2VuIGltICIKKyIgIChiZW51dHplbiBTaWUgXCJnaXQgcmVzdG9yZSA8RGF0ZWk+Li4uXCIsIHVtIGRpZSDDhG5kZXJ1bmdlbiBpbSAiCiAiQXJiZWl0c3ZlcnplaWNobmlzIHp1IHZlcndlcmZlbikiCiAKLSM6IHd0LXN0YXR1cy5jOjIyOQorIzogd3Qtc3RhdHVzLmM6MjQzCiBtc2dpZCAiICAoY29tbWl0IG9yIGRpc2NhcmQgdGhlIHVudHJhY2tlZCBvciBtb2RpZmllZCBjb250ZW50IGluIHN1Ym1vZHVsZXMpIgogbXNnc3RyICIiCiAiICAoY29tbWl0dGVuIG9kZXIgdmVyd2VyZmVuIFNpZSBkZW4gdW52ZXJzaW9uaWVydGVuIG9kZXIgZ2XDpG5kZXJ0ZW4gSW5oYWx0ICIKICJpbiBkZW4gU3VibW9kdWxlbikiCiAKLSM6IHd0LXN0YXR1cy5jOjI0MQorIzogd3Qtc3RhdHVzLmM6MjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgKHVzZSBcImdpdCAlcyA8ZmlsZT4uLi5cIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIgogbXNnc3RyICIiCiAiICAoYmVudXR6ZW4gU2llIFwiZ2l0ICVzIDxEYXRlaT4uLi5cIiwgdW0gZGllIMOEbmRlcnVuZ2VuIHp1bSBDb21taXQgIgogInZvcnp1bWVya2VuKSIKIAotIzogd3Qtc3RhdHVzLmM6MjU2CisjOiB3dC1zdGF0dXMuYzoyNjgKIG1zZ2lkICJib3RoIGRlbGV0ZWQ6IgogbXNnc3RyICJiZWlkZSBnZWzDtnNjaHQ6IgogCi0jOiB3dC1zdGF0dXMuYzoyNTgKKyM6IHd0LXN0YXR1cy5jOjI3MAogbXNnaWQgImFkZGVkIGJ5IHVzOiIKIG1zZ3N0ciAidm9uIHVucyBoaW56dWdlZsO8Z3Q6IgogCi0jOiB3dC1zdGF0dXMuYzoyNjAKKyM6IHd0LXN0YXR1cy5jOjI3MgogbXNnaWQgImRlbGV0ZWQgYnkgdGhlbToiCiBtc2dzdHIgInZvbiBkZW5lbiBnZWzDtnNjaHQ6IgogCi0jOiB3dC1zdGF0dXMuYzoyNjIKKyM6IHd0LXN0YXR1cy5jOjI3NAogbXNnaWQgImFkZGVkIGJ5IHRoZW06IgogbXNnc3RyICJ2b24gZGVuZW4gaGluenVnZWbDvGd0OiIKIAotIzogd3Qtc3RhdHVzLmM6MjY0CisjOiB3dC1zdGF0dXMuYzoyNzYKIG1zZ2lkICJkZWxldGVkIGJ5IHVzOiIKIG1zZ3N0ciAidm9uIHVucyBnZWzDtnNjaHQ6IgogCi0jOiB3dC1zdGF0dXMuYzoyNjYKKyM6IHd0LXN0YXR1cy5jOjI3OAogbXNnaWQgImJvdGggYWRkZWQ6IgogbXNnc3RyICJ2b24gYmVpZGVuIGhpbnp1Z2Vmw7xndDoiCiAKLSM6IHd0LXN0YXR1cy5jOjI2OAorIzogd3Qtc3RhdHVzLmM6MjgwCiBtc2dpZCAiYm90aCBtb2RpZmllZDoiCiBtc2dzdHIgInZvbiBiZWlkZW4gZ2XDpG5kZXJ0OiIKIAotIzogd3Qtc3RhdHVzLmM6Mjc4CisjOiB3dC1zdGF0dXMuYzoyOTAKIG1zZ2lkICJuZXcgZmlsZToiCiBtc2dzdHIgIm5ldWUgRGF0ZWk6IgogCi0jOiB3dC1zdGF0dXMuYzoyODAKKyM6IHd0LXN0YXR1cy5jOjI5MgogbXNnaWQgImNvcGllZDoiCiBtc2dzdHIgImtvcGllcnQ6IgogCi0jOiB3dC1zdGF0dXMuYzoyODIKKyM6IHd0LXN0YXR1cy5jOjI5NAogbXNnaWQgImRlbGV0ZWQ6IgogbXNnc3RyICJnZWzDtnNjaHQ6IgogCi0jOiB3dC1zdGF0dXMuYzoyODQKKyM6IHd0LXN0YXR1cy5jOjI5NgogbXNnaWQgIm1vZGlmaWVkOiIKIG1zZ3N0ciAiZ2XDpG5kZXJ0OiIKIAotIzogd3Qtc3RhdHVzLmM6Mjg2CisjOiB3dC1zdGF0dXMuYzoyOTgKIG1zZ2lkICJyZW5hbWVkOiIKIG1zZ3N0ciAidW1iZW5hbm50OiIKIAotIzogd3Qtc3RhdHVzLmM6Mjg4CisjOiB3dC1zdGF0dXMuYzozMDAKIG1zZ2lkICJ0eXBlY2hhbmdlOiIKIG1zZ3N0ciAiVHlww6RuZGVydW5nOiIKIAotIzogd3Qtc3RhdHVzLmM6MjkwCisjOiB3dC1zdGF0dXMuYzozMDIKIG1zZ2lkICJ1bmtub3duOiIKIG1zZ3N0ciAidW5iZWthbm50OiIKIAotIzogd3Qtc3RhdHVzLmM6MjkyCisjOiB3dC1zdGF0dXMuYzozMDQKIG1zZ2lkICJ1bm1lcmdlZDoiCiBtc2dzdHIgIm5pY2h0IGdlbWVyZ2VkOiIKIAotIzogd3Qtc3RhdHVzLmM6MzcyCisjOiB3dC1zdGF0dXMuYzozODQKIG1zZ2lkICJuZXcgY29tbWl0cywgIgogbXNnc3RyICJuZXVlIENvbW1pdHMsICIKIAotIzogd3Qtc3RhdHVzLmM6Mzc0CisjOiB3dC1zdGF0dXMuYzozODYKIG1zZ2lkICJtb2RpZmllZCBjb250ZW50LCAiCiBtc2dzdHIgImdlw6RuZGVydGVyIEluaGFsdCwgIgogCi0jOiB3dC1zdGF0dXMuYzozNzYKKyM6IHd0LXN0YXR1cy5jOjM4OAogbXNnaWQgInVudHJhY2tlZCBjb250ZW50LCAiCiBtc2dzdHIgInVudmVyc2lvbmllcnRlciBJbmhhbHQsICIKIAotIzogd3Qtc3RhdHVzLmM6ODgwCisjOiB3dC1zdGF0dXMuYzo5MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBzdGFzaCBjdXJyZW50bHkgaGFzICVkIGVudHJ5IgogbXNnaWRfcGx1cmFsICJZb3VyIHN0YXNoIGN1cnJlbnRseSBoYXMgJWQgZW50cmllcyIKIG1zZ3N0clswXSAiSWhyIFN0YXNoIGhhdCBnZXJhZGUgJWQgRWludHJhZyIKIG1zZ3N0clsxXSAiSWhyIFN0YXNoIGhhdCBnZXJhZGUgJWQgRWludHLDpGdlIgogCi0jOiB3dC1zdGF0dXMuYzo5MTIKKyM6IHd0LXN0YXR1cy5jOjkzOAogbXNnaWQgIlN1Ym1vZHVsZXMgY2hhbmdlZCBidXQgbm90IHVwZGF0ZWQ6IgogbXNnc3RyICJTdWJtb2R1bGUgZ2XDpG5kZXJ0LCBhYmVyIG5pY2h0IGFrdHVhbGlzaWVydDoiCiAKLSM6IHd0LXN0YXR1cy5jOjkxNAorIzogd3Qtc3RhdHVzLmM6OTQwCiBtc2dpZCAiU3VibW9kdWxlIGNoYW5nZXMgdG8gYmUgY29tbWl0dGVkOiIKIG1zZ3N0ciAiw4RuZGVydW5nZW4gaW4gU3VibW9kdWwgenVtIENvbW1pdHRlbjoiCiAKLSM6IHd0LXN0YXR1cy5jOjk5NgorIzogd3Qtc3RhdHVzLmM6MTAyMgogbXNnaWQgIiIKICJEbyBub3QgbW9kaWZ5IG9yIHJlbW92ZSB0aGUgbGluZSBhYm92ZS5cbiIKICJFdmVyeXRoaW5nIGJlbG93IGl0IHdpbGwgYmUgaWdub3JlZC4iCkBAIC02OTI3LDExNCArOTEzNywxMjYgQEAKICLDhG5kZXJuIG9kZXIgZW50ZmVybmVuIFNpZSBuaWNodCBkaWUgb2JpZ2UgWmVpbGUuXG4iCiAiQWxsZXMgdW50ZXJoYWxiIHZvbiBpaHIgd2lyZCBpZ25vcmllcnQuIgogCi0jOiB3dC1zdGF0dXMuYzoxMDk3CisjOiB3dC1zdGF0dXMuYzoxMTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBjb21wdXRlIHRoZSBicmFuY2ggYWhlYWQvYmVoaW5kIHZhbHVlcy5cbiIKKyJZb3UgY2FuIHVzZSAnLS1uby1haGVhZC1iZWhpbmQnIHRvIGF2b2lkIHRoaXMuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJFcyB3dXJkZW4gJS4yZiBTZWt1bmRlbiBiZW7DtnRpZ3QsIHVtIGRpZSB2b3JhdXMvaGludGVyaGVyLVdlcnRlIHp1ICIKKyJiZXJlY2huZW4uXG4iCisiU2llIGvDtm5uZW4gJy0tbm8tYWhlYWQtYmVoaW5kJyBiZW51dHplbiwgdW0gZGFzIHp1IHZlcmhpbmRlcm4uXG4iCisKKyM6IHd0LXN0YXR1cy5jOjExNDQKIG1zZ2lkICJZb3UgaGF2ZSB1bm1lcmdlZCBwYXRocy4iCiBtc2dzdHIgIlNpZSBoYWJlbiBuaWNodCB6dXNhbW1lbmdlZsO8aHJ0ZSBQZmFkZS4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMDAKKyM6IHd0LXN0YXR1cy5jOjExNDcKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgY29tbWl0XCIpIgotbXNnc3RyICIgKGJlaGViZW4gU2llIGRpZSBLb25mbGlrdGUgdW5kIGbDvGhyZW4gU2llIFwiZ2l0IGNvbW1pdFwiIGF1cykiCittc2dzdHIgIiAgKGJlaGViZW4gU2llIGRpZSBLb25mbGlrdGUgdW5kIGbDvGhyZW4gU2llIFwiZ2l0IGNvbW1pdFwiIGF1cykiCiAKLSM6IHd0LXN0YXR1cy5jOjExMDIKKyM6IHd0LXN0YXR1cy5jOjExNDkKIG1zZ2lkICIgICh1c2UgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIHRvIGFib3J0IHRoZSBtZXJnZSkiCiBtc2dzdHIgIiAgKGJlbnV0emVuIFNpZSBcImdpdCBtZXJnZSAtLWFib3J0XCIsIHVtIGRlbiBNZXJnZSBhYnp1YnJlY2hlbikiCiAKLSM6IHd0LXN0YXR1cy5jOjExMDYKKyM6IHd0LXN0YXR1cy5jOjExNTMKIG1zZ2lkICJBbGwgY29uZmxpY3RzIGZpeGVkIGJ1dCB5b3UgYXJlIHN0aWxsIG1lcmdpbmcuIgogbXNnc3RyICJBbGxlIEtvbmZsaWt0ZSBzaW5kIGJlaG9iZW4sIGFiZXIgU2llIHNpbmQgaW1tZXIgbm9jaCBiZWltIE1lcmdlLiIKIAotIzogd3Qtc3RhdHVzLmM6MTEwOQorIzogd3Qtc3RhdHVzLmM6MTE1NgogbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXRcIiB0byBjb25jbHVkZSBtZXJnZSkiCiBtc2dzdHIgIiAgKGJlbnV0emVuIFNpZSBcImdpdCBjb21taXRcIiwgdW0gZGVuIE1lcmdlIGFienVzY2hsaWXDn2VuKSIKIAotIzogd3Qtc3RhdHVzLmM6MTExOAorIzogd3Qtc3RhdHVzLmM6MTE2NQogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbiBhbSBzZXNzaW9uLiIKIG1zZ3N0ciAiRWluZSBcImFtXCItU2l0enVuZyBpc3QgaW0gR2FuZ2UuIgogCi0jOiB3dC1zdGF0dXMuYzoxMTIxCisjOiB3dC1zdGF0dXMuYzoxMTY4CiBtc2dpZCAiVGhlIGN1cnJlbnQgcGF0Y2ggaXMgZW1wdHkuIgogbXNnc3RyICJEZXIgYWt0dWVsbGUgUGF0Y2ggaXN0IGxlZXIuIgogCi0jOiB3dC1zdGF0dXMuYzoxMTI1CisjOiB3dC1zdGF0dXMuYzoxMTcyCiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBydW4gXCJnaXQgYW0gLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiIgogIiAgKGJlaGViZW4gU2llIGRpZSBLb25mbGlrdGUgdW5kIGbDvGhyZW4gU2llIGRhbm4gXCJnaXQgYW0gLS1jb250aW51ZVwiIGF1cykiCiAKLSM6IHd0LXN0YXR1cy5jOjExMjcKKyM6IHd0LXN0YXR1cy5jOjExNzQKIG1zZ2lkICIgICh1c2UgXCJnaXQgYW0gLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKIG1zZ3N0ciAiICAoYmVudXR6ZW4gU2llIFwiZ2l0IGFtIC0tc2tpcFwiLCB1bSBkaWVzZW4gUGF0Y2ggYXVzenVsYXNzZW4pIgogCi0jOiB3dC1zdGF0dXMuYzoxMTI5CisjOiB3dC1zdGF0dXMuYzoxMTc2CiBtc2dpZCAiICAodXNlIFwiZ2l0IGFtIC0tYWJvcnRcIiB0byByZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2gpIgogbXNnc3RyICIiCiAiICAoYmVudXR6ZW4gU2llIFwiZ2l0IGFtIC0tYWJvcnRcIiwgdW0gZGVuIHVyc3Byw7xuZ2xpY2hlbiBCcmFuY2ggIgogIndpZWRlcmhlcnp1c3RlbGxlbikiCiAKLSM6IHd0LXN0YXR1cy5jOjEyNjAKKyM6IHd0LXN0YXR1cy5jOjEzMDkKIG1zZ2lkICJnaXQtcmViYXNlLXRvZG8gaXMgbWlzc2luZy4iCiBtc2dzdHIgImdpdC1yZWJhc2UtdG9kbyBmZWhsdC4iCiAKLSM6IHd0LXN0YXR1cy5jOjEyNjIKKyM6IHd0LXN0YXR1cy5jOjEzMTEKIG1zZ2lkICJObyBjb21tYW5kcyBkb25lLiIKIG1zZ3N0ciAiS2VpbmUgQmVmZWhsZSBhdXNnZWbDvGhydC4iCiAKLSM6IHd0LXN0YXR1cy5jOjEyNjUKKyM6IHd0LXN0YXR1cy5jOjEzMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiTGFzdCBjb21tYW5kIGRvbmUgKCVkIGNvbW1hbmQgZG9uZSk6IgogbXNnaWRfcGx1cmFsICJMYXN0IGNvbW1hbmRzIGRvbmUgKCVkIGNvbW1hbmRzIGRvbmUpOiIKIG1zZ3N0clswXSAiWnVsZXR6dCBhdXNnZWbDvGhydGVyIEJlZmVobCAoJWQgQmVmZWhsIGF1c2dlZsO8aHJ0KToiCiBtc2dzdHJbMV0gIlp1bGV0enQgYXVzZ2Vmw7xocnRlIEJlZmVobGUgKCVkIEJlZmVobGUgYXVzZ2Vmw7xocnQpOiIKIAotIzogd3Qtc3RhdHVzLmM6MTI3NgorIzogd3Qtc3RhdHVzLmM6MTMyNQogIywgYy1mb3JtYXQKIG1zZ2lkICIgIChzZWUgbW9yZSBpbiBmaWxlICVzKSIKIG1zZ3N0ciAiICAobWVociBJbmZvcm1hdGlvbmVuIGluIERhdGVpICVzKSIKIAotIzogd3Qtc3RhdHVzLmM6MTI4MQorIzogd3Qtc3RhdHVzLmM6MTMzMAogbXNnaWQgIk5vIGNvbW1hbmRzIHJlbWFpbmluZy4iCiBtc2dzdHIgIktlaW5lIEJlZmVobGUgdmVyYmxlaWJlbmQuIgogCi0jOiB3dC1zdGF0dXMuYzoxMjg0CisjOiB3dC1zdGF0dXMuYzoxMzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5leHQgY29tbWFuZCB0byBkbyAoJWQgcmVtYWluaW5nIGNvbW1hbmQpOiIKIG1zZ2lkX3BsdXJhbCAiTmV4dCBjb21tYW5kcyB0byBkbyAoJWQgcmVtYWluaW5nIGNvbW1hbmRzKToiCiBtc2dzdHJbMF0gIk7DpGNoc3RlciBhdXN6dWbDvGhyZW5kZXIgQmVmZWhsICglZCBCZWZlaGxlIHZlcmJsZWliZW5kKToiCiBtc2dzdHJbMV0gIk7DpGNoc3RlIGF1c3p1ZsO8aHJlbmRlIEJlZmVobGUgKCVkIEJlZmVobGUgdmVyYmxlaWJlbmQpOiIKIAotIzogd3Qtc3RhdHVzLmM6MTI5MgorIzogd3Qtc3RhdHVzLmM6MTM0MQogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1lZGl0LXRvZG9cIiB0byB2aWV3IGFuZCBlZGl0KSIKIG1zZ3N0ciAiICAoYmVudXR6ZW4gU2llIFwiZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb1wiIHp1bSBBbnNlaGVuIHVuZCBCZWFyYmVpdGVuKSIKIAotIzogd3Qtc3RhdHVzLmM6MTMwNAorIzogd3Qtc3RhdHVzLmM6MTM1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKIG1zZ3N0ciAiU2llIHNpbmQgZ2VyYWRlIGJlaW0gUmViYXNlIHZvbiBCcmFuY2ggJyVzJyBhdWYgJyVzJy4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzMDkKKyM6IHd0LXN0YXR1cy5jOjEzNTgKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSByZWJhc2luZy4iCiBtc2dzdHIgIlNpZSBzaW5kIGdlcmFkZSBiZWltIFJlYmFzZS4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzMjIKKyM6IHd0LXN0YXR1cy5jOjEzNzEKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCB0aGVuIHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiIgogIiAgKGJlaGViZW4gU2llIGRpZSBLb25mbGlrdGUgdW5kIGbDvGhyZW4gU2llIGRhbm4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIiAiCiAiYXVzKSIKIAotIzogd3Qtc3RhdHVzLmM6MTMyNAorIzogd3Qtc3RhdHVzLmM6MTM3MwogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKIG1zZ3N0ciAiICAoYmVudXR6ZW4gU2llIFwiZ2l0IHJlYmFzZSAtLXNraXBcIiwgdW0gZGllc2VuIFBhdGNoIGF1c3p1bGFzc2VuKSIKIAotIzogd3Qtc3RhdHVzLmM6MTMyNgorIzogd3Qtc3RhdHVzLmM6MTM3NQogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1hYm9ydFwiIHRvIGNoZWNrIG91dCB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiIgogIiAgKGJlbnV0emVuIFNpZSBcImdpdCByZWJhc2UgLS1hYm9ydFwiLCB1bSBkZW4gdXJzcHLDvG5nbGljaGVuIEJyYW5jaCAiCiAiYXVzenVjaGVja2VuKSIKIAotIzogd3Qtc3RhdHVzLmM6MTMzMworIzogd3Qtc3RhdHVzLmM6MTM4MgogbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiICAoYWxsZSBLb25mbGlrdGUgYmVob2JlbjogZsO8aHJlbiBTaWUgXCJnaXQgcmViYXNlIC0tY29udGludWVcIiBhdXMpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzM3CisjOiB3dC1zdGF0dXMuYzoxMzg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXJlIGN1cnJlbnRseSBzcGxpdHRpbmcgYSBjb21taXQgd2hpbGUgcmViYXNpbmcgYnJhbmNoICclcycgb24gJyVzJy4iCkBAIC03MDQyLDEzOCArOTI2NCwxNTUgQEAKICJTaWUgdGVpbGVuIGdlcmFkZSBlaW5lbiBDb21taXQgYXVmLCB3w6RocmVuZCBlaW4gUmViYXNlIHZvbiBCcmFuY2ggJyVzJyBhdWYgIgogIiclcycgaW0gR2FuZ2UgaXN0LiIKIAotIzogd3Qtc3RhdHVzLmM6MTM0MgorIzogd3Qtc3RhdHVzLmM6MTM5MQogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHNwbGl0dGluZyBhIGNvbW1pdCBkdXJpbmcgYSByZWJhc2UuIgogbXNnc3RyICJTaWUgdGVpbGVuIGdlcmFkZSBlaW5lbiBDb21taXQgd8OkaHJlbmQgZWluZXMgUmViYXNlIGF1Zi4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzNDUKKyM6IHd0LXN0YXR1cy5jOjEzOTQKIG1zZ2lkICIgIChPbmNlIHlvdXIgd29ya2luZyBkaXJlY3RvcnkgaXMgY2xlYW4sIHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiIgogIiAgKFNvYmFsZCBJaHIgQXJiZWl0c3ZlcnplaWNobmlzIHVudmVyw6RuZGVydCBpc3QsIGbDvGhyZW4gU2llIFwiZ2l0IHJlYmFzZSAtLSIKICJjb250aW51ZVwiIGF1cykiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNDkKKyM6IHd0LXN0YXR1cy5jOjEzOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgZWRpdGluZyBhIGNvbW1pdCB3aGlsZSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKIG1zZ3N0ciAiIgogIlNpZSBlZGl0aWVyZW4gZ2VyYWRlIGVpbmVuIENvbW1pdCB3w6RocmVuZCBlaW5lcyBSZWJhc2Ugdm9uIEJyYW5jaCAnJXMnIGF1ZiAiCiAiJyVzJy4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTQKKyM6IHd0LXN0YXR1cy5jOjE0MDMKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBlZGl0aW5nIGEgY29tbWl0IGR1cmluZyBhIHJlYmFzZS4iCiBtc2dzdHIgIlNpZSBlZGl0aWVyZW4gZ2VyYWRlIGVpbmVuIENvbW1pdCB3w6RocmVuZCBlaW5lcyBSZWJhc2UuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzU3CisjOiB3dC1zdGF0dXMuYzoxNDA2CiBtc2dpZCAiICAodXNlIFwiZ2l0IGNvbW1pdCAtLWFtZW5kXCIgdG8gYW1lbmQgdGhlIGN1cnJlbnQgY29tbWl0KSIKIG1zZ3N0ciAiIgogIiAgKGJlbnV0emVuIFNpZSBcImdpdCBjb21taXQgLS1hbWVuZFwiLCB1bSBkZW4gYWt0dWVsbGVuIENvbW1pdCAiCiAibmFjaHp1YmVzc2VybikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTkKKyM6IHd0LXN0YXR1cy5jOjE0MDgKIG1zZ2lkICIiCiAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIgb25jZSB5b3UgYXJlIHNhdGlzZmllZCB3aXRoIHlvdXIgY2hhbmdlcykiCiBtc2dzdHIgIiIKICIgIChiZW51dHplbiBTaWUgXCJnaXQgcmViYXNlIC0tY29udGludWVcIiBzb2JhbGQgSWhyZSDDhG5kZXJ1bmdlbiAiCiAiYWJnZXNjaGxvc3NlbiBzaW5kKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM2OAorIzogd3Qtc3RhdHVzLmM6MTQxOQorbXNnaWQgIkNoZXJyeS1waWNrIGN1cnJlbnRseSBpbiBwcm9ncmVzcy4iCittc2dzdHIgIkNoZXJyeS1waWNrIHp1cnplaXQgaW0gR2FuZ2UuIgorCisjOiB3dC1zdGF0dXMuYzoxNDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGNoZXJyeS1waWNraW5nIGNvbW1pdCAlcy4iCiBtc2dzdHIgIlNpZSBmw7xocmVuIGdlcmFkZSBcImNoZXJyeS1waWNrXCIgdm9uIENvbW1pdCAlcyBhdXMuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzczCisjOiB3dC1zdGF0dXMuYzoxNDI5CiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCiBtc2dzdHIgIiIKICIgIChiZWhlYmVuIFNpZSBkaWUgS29uZmxpa3RlIHVuZCBmw7xocmVuIFNpZSBkYW5uIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWUiCiAiXCIgYXVzKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM3NgorIzogd3Qtc3RhdHVzLmM6MTQzMgorbXNnaWQgIiAgKHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgdG8gY29udGludWUpIgorbXNnc3RyICIgIChGw7xocmVuIFNpZSBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgYXVzLCB1bSB3ZWl0ZXJ6dW1hY2hlbikiCisKKyM6IHd0LXN0YXR1cy5jOjE0MzUKIG1zZ2lkICIgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiIgogIiAgKGFsbGUgS29uZmxpa3RlIGJlaG9iZW46IGbDvGhyZW4gU2llIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiBhdXMpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzc4CisjOiB3dC1zdGF0dXMuYzoxNDM3Cittc2dpZCAiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCittc2dzdHIgIiIKKyIgIChiZW51dHplbiBTaWUgXCJnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXCIsIHVtIGRpZXNlbiBQYXRjaCBhdXN6dWxhc3NlbikiCisKKyM6IHd0LXN0YXR1cy5jOjE0MzkKIG1zZ2lkICIgICh1c2UgXCJnaXQgY2hlcnJ5LXBpY2sgLS1hYm9ydFwiIHRvIGNhbmNlbCB0aGUgY2hlcnJ5LXBpY2sgb3BlcmF0aW9uKSIKIG1zZ3N0ciAiIgogIiAgKGJlbnV0emVuIFNpZSBcImdpdCBjaGVycnktcGljayAtLWFib3J0XCIsIHVtIGRpZSBDaGVycnktUGljay1PcGVyYXRpb24gIgogImFienVicmVjaGVuKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM4NgorIzogd3Qtc3RhdHVzLmM6MTQ0OQorbXNnaWQgIlJldmVydCBjdXJyZW50bHkgaW4gcHJvZ3Jlc3MuIgorbXNnc3RyICJSZXZlcnQgenVyemVpdCBpbSBHYW5nZS4iCisKKyM6IHd0LXN0YXR1cy5jOjE0NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmV2ZXJ0aW5nIGNvbW1pdCAlcy4iCiBtc2dzdHIgIlNpZSBzaW5kIGdlcmFkZSBiZWltIFJldmVydCB2b24gQ29tbWl0ICclcycuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzkxCisjOiB3dC1zdGF0dXMuYzoxNDU4CiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIiCiAiICAoYmVoZWJlbiBTaWUgZGllIEtvbmZsaWt0ZSB1bmQgZsO8aHJlbiBTaWUgZGFubiBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiICIKICJhdXMpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzk0CisjOiB3dC1zdGF0dXMuYzoxNDYxCittc2dpZCAiICAocnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIgdG8gY29udGludWUpIgorbXNnc3RyICIgIChGw7xocmVuIFNpZSBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiLCB1bSB3ZWl0ZXJ6dW1hY2hlbikiCisKKyM6IHd0LXN0YXR1cy5jOjE0NjQKIG1zZ2lkICIgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKGFsbGUgS29uZmxpa3RlIGJlaG9iZW46IGbDvGhyZW4gU2llIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIgYXVzKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM5NgorIzogd3Qtc3RhdHVzLmM6MTQ2NgorbXNnaWQgIiAgKHVzZSBcImdpdCByZXZlcnQgLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKK21zZ3N0ciAiICAoYmVudXR6ZW4gU2llIFwiZ2l0IHJldmVydCAtLXNraXBcIiwgdW0gZGllc2VuIFBhdGNoIGF1c3p1bGFzc2VuKSIKKworIzogd3Qtc3RhdHVzLmM6MTQ2OAogbXNnaWQgIiAgKHVzZSBcImdpdCByZXZlcnQgLS1hYm9ydFwiIHRvIGNhbmNlbCB0aGUgcmV2ZXJ0IG9wZXJhdGlvbikiCiBtc2dzdHIgIiIKICIgIChiZW51dHplbiBTaWUgXCJnaXQgcmV2ZXJ0IC0tYWJvcnRcIiwgdW0gZGllIFJldmVydC1PcGVyYXRpb24gYWJ6dWJyZWNoZW4pIgogCi0jOiB3dC1zdGF0dXMuYzoxNDA2CisjOiB3dC1zdGF0dXMuYzoxNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGJpc2VjdGluZywgc3RhcnRlZCBmcm9tIGJyYW5jaCAnJXMnLiIKIG1zZ3N0ciAiU2llIHNpbmQgZ2VyYWRlIGJlaSBlaW5lciBiaW7DpHJlbiBTdWNoZSwgZ2VzdGFydGV0IHZvbiBCcmFuY2ggJyVzJy4iCiAKLSM6IHd0LXN0YXR1cy5jOjE0MTAKKyM6IHd0LXN0YXR1cy5jOjE0ODIKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcuIgogbXNnc3RyICJTaWUgc2luZCBnZXJhZGUgYmVpIGVpbmVyIGJpbsOkcmVuIFN1Y2hlLiIKIAotIzogd3Qtc3RhdHVzLmM6MTQxMworIzogd3Qtc3RhdHVzLmM6MTQ4NQogbXNnaWQgIiAgKHVzZSBcImdpdCBiaXNlY3QgcmVzZXRcIiB0byBnZXQgYmFjayB0byB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiIgogIiAgKGJlbnV0emVuIFNpZSBcImdpdCBiaXNlY3QgcmVzZXRcIiwgdW0genVtIHVyc3Byw7xuZ2xpY2hlbiBCcmFuY2ggIgogInp1csO8Y2t6dWtlaHJlbikiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MTEKKyM6IHd0LXN0YXR1cy5jOjE2OTQKIG1zZ2lkICJPbiBicmFuY2ggIgogbXNnc3RyICJBdWYgQnJhbmNoICIKIAotIzogd3Qtc3RhdHVzLmM6MTYxOAorIzogd3Qtc3RhdHVzLmM6MTcwMQogbXNnaWQgImludGVyYWN0aXZlIHJlYmFzZSBpbiBwcm9ncmVzczsgb250byAiCiBtc2dzdHIgImludGVyYWt0aXZlcyBSZWJhc2UgaW0gR2FuZ2U7IGF1ZiAiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MjAKKyM6IHd0LXN0YXR1cy5jOjE3MDMKIG1zZ2lkICJyZWJhc2UgaW4gcHJvZ3Jlc3M7IG9udG8gIgogbXNnc3RyICJSZWJhc2UgaW0gR2FuZ2U7IGF1ZiAiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MjUKLW1zZ2lkICJIRUFEIGRldGFjaGVkIGF0ICIKLW1zZ3N0ciAiSEVBRCBsb3NnZWzDtnN0IGJlaSAiCi0KLSM6IHd0LXN0YXR1cy5jOjE2MjcKLW1zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgotbXNnc3RyICJIRUFEIGxvc2dlbMO2c3Qgdm9uICIKLQotIzogd3Qtc3RhdHVzLmM6MTYzMAorIzogd3Qtc3RhdHVzLmM6MTcxMwogbXNnaWQgIk5vdCBjdXJyZW50bHkgb24gYW55IGJyYW5jaC4iCiBtc2dzdHIgIkltIE1vbWVudCBhdWYga2VpbmVtIEJyYW5jaC4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2NDcKKyM6IHd0LXN0YXR1cy5jOjE3MzAKIG1zZ2lkICJJbml0aWFsIGNvbW1pdCIKIG1zZ3N0ciAiSW5pdGlhbGVyIENvbW1pdCIKIAotIzogd3Qtc3RhdHVzLmM6MTY0OAorIzogd3Qtc3RhdHVzLmM6MTczMQogbXNnaWQgIk5vIGNvbW1pdHMgeWV0IgogbXNnc3RyICJOb2NoIGtlaW5lIENvbW1pdHMiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjIKKyM6IHd0LXN0YXR1cy5jOjE3NDUKIG1zZ2lkICJVbnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgIlVudmVyc2lvbmllcnRlIERhdGVpZW4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjQKKyM6IHd0LXN0YXR1cy5jOjE3NDcKIG1zZ2lkICJJZ25vcmVkIGZpbGVzIgogbXNnc3RyICJJZ25vcmllcnRlIERhdGVpZW4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjgKKyM6IHd0LXN0YXR1cy5jOjE3NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGVudW1lcmF0ZSB1bnRyYWNrZWQgZmlsZXMuICdzdGF0dXMgLXVubydcbiIKQEAgLTcxODQsMzIgKzk0MjMsMzIgQEAKICInc3RhdHVzIC11bm8nIGvDtm5udGUgZGFzIGJlc2NobGV1bmlnZW4sIGFiZXIgU2llIG3DvHNzZW4gZGFyYXVmIGFjaHRlbixcbiIKICJuZXVlIERhdGVpZW4gc2VsYnN0c3TDpG5kaWcgaGluenV6dWbDvGdlbiAoc2llaGUgJ2dpdCBoZWxwIHN0YXR1cycpLiIKIAotIzogd3Qtc3RhdHVzLmM6MTY3NAorIzogd3Qtc3RhdHVzLmM6MTc1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJVbnRyYWNrZWQgZmlsZXMgbm90IGxpc3RlZCVzIgogbXNnc3RyICJVbnZlcnNpb25pZXJ0ZSBEYXRlaWVuIG5pY2h0IGF1ZmdlbGlzdGV0JXMiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NzYKKyM6IHd0LXN0YXR1cy5jOjE3NTkKIG1zZ2lkICIgKHVzZSAtdSBvcHRpb24gdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpIgogbXNnc3RyICIgKGJlbnV0emVuIFNpZSBkaWUgT3B0aW9uIC11LCB1bSB1bnZlcnNpb25pZXJ0ZSBEYXRlaWVuIGFuenV6ZWlnZW4pIgogCi0jOiB3dC1zdGF0dXMuYzoxNjgyCisjOiB3dC1zdGF0dXMuYzoxNzY1CiBtc2dpZCAiTm8gY2hhbmdlcyIKIG1zZ3N0ciAiS2VpbmUgw4RuZGVydW5nZW4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2ODcKKyM6IHd0LXN0YXR1cy5jOjE3NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXQgKHVzZSBcImdpdCBhZGRcIiBhbmQvb3IgXCJnaXQgY29tbWl0IC1hXCIpXG4iCiBtc2dzdHIgIiIKICJrZWluZSDDhG5kZXJ1bmdlbiB6dW0gQ29tbWl0IHZvcmdlbWVya3QgKGJlbnV0emVuIFNpZSBcImdpdCBhZGRcIiB1bmQvb2RlciAiCiAiXCJnaXQgY29tbWl0IC1hXCIpXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTAKKyM6IHd0LXN0YXR1cy5jOjE3NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXRcbiIKIG1zZ3N0ciAia2VpbmUgw4RuZGVydW5nZW4genVtIENvbW1pdCB2b3JnZW1lcmt0XG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTMKKyM6IHd0LXN0YXR1cy5jOjE3NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdGhpbmcgYWRkZWQgdG8gY29tbWl0IGJ1dCB1bnRyYWNrZWQgZmlsZXMgcHJlc2VudCAodXNlIFwiZ2l0IGFkZFwiIHRvICIKQEAgLTcyMTgsMjAwICs5NDU3LDIwOSBAQAogIm5pY2h0cyB6dW0gQ29tbWl0IHZvcmdlbWVya3QsIGFiZXIgZXMgZ2lidCB1bnZlcnNpb25pZXJ0ZSBEYXRlaWVuXG4iCiAiKGJlbnV0emVuIFNpZSBcImdpdCBhZGRcIiB6dW0gVmVyc2lvbmllcmVuKVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjk2CisjOiB3dC1zdGF0dXMuYzoxNzc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgYWRkZWQgdG8gY29tbWl0IGJ1dCB1bnRyYWNrZWQgZmlsZXMgcHJlc2VudFxuIgogbXNnc3RyICJuaWNodHMgenVtIENvbW1pdCB2b3JnZW1lcmt0LCBhYmVyIGVzIGdpYnQgdW52ZXJzaW9uaWVydGUgRGF0ZWllblxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjk5CisjOiB3dC1zdGF0dXMuYzoxNzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0IChjcmVhdGUvY29weSBmaWxlcyBhbmQgdXNlIFwiZ2l0IGFkZFwiIHRvIHRyYWNrKVxuIgogbXNnc3RyICIiCiAibmljaHRzIHp1IGNvbW1pdHRlbiAoZXJzdGVsbGVuL2tvcGllcmVuIFNpZSBEYXRlaWVuIHVuZCBiZW51dHplblxuIgogIlNpZSBcImdpdCBhZGRcIiB6dW0gVmVyc2lvbmllcmVuKVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNzAyIHd0LXN0YXR1cy5jOjE3MDcKKyM6IHd0LXN0YXR1cy5jOjE3ODUgd3Qtc3RhdHVzLmM6MTc5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIGNvbW1pdFxuIgogbXNnc3RyICJuaWNodHMgenUgY29tbWl0dGVuXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE3MDUKKyM6IHd0LXN0YXR1cy5jOjE3ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXQgKHVzZSAtdSB0byBzaG93IHVudHJhY2tlZCBmaWxlcylcbiIKIG1zZ3N0ciAiIgogIm5pY2h0cyB6dSBjb21taXR0ZW4gKGJlbnV0emVuIFNpZSBkaWUgT3B0aW9uIC11LCB1bSB1bnZlcnNpb25pZXJ0ZSBEYXRlaWVuICIKICJhbnp1emVpZ2VuKVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNzA5CisjOiB3dC1zdGF0dXMuYzoxNzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0LCB3b3JraW5nIHRyZWUgY2xlYW5cbiIKIG1zZ3N0ciAibmljaHRzIHp1IGNvbW1pdHRlbiwgQXJiZWl0c3ZlcnplaWNobmlzIHVudmVyw6RuZGVydFxuIgogCi0jOiB3dC1zdGF0dXMuYzoxODIyCisjOiB3dC1zdGF0dXMuYzoxOTA1CiBtc2dpZCAiTm8gY29tbWl0cyB5ZXQgb24gIgogbXNnc3RyICJOb2NoIGtlaW5lIENvbW1pdHMgaW4gIgogCi0jOiB3dC1zdGF0dXMuYzoxODI2CisjOiB3dC1zdGF0dXMuYzoxOTA5CiBtc2dpZCAiSEVBRCAobm8gYnJhbmNoKSIKIG1zZ3N0ciAiSEVBRCAoa2VpbiBCcmFuY2gpIgogCi0jOiB3dC1zdGF0dXMuYzoxODU3CisjOiB3dC1zdGF0dXMuYzoxOTQwCiBtc2dpZCAiZGlmZmVyZW50IgogbXNnc3RyICJ1bnRlcnNjaGllZGxpY2giCiAKLSM6IHd0LXN0YXR1cy5jOjE4NTkgd3Qtc3RhdHVzLmM6MTg2NworIzogd3Qtc3RhdHVzLmM6MTk0MiB3dC1zdGF0dXMuYzoxOTUwCiBtc2dpZCAiYmVoaW5kICIKIG1zZ3N0ciAiaGludGVyaGVyICIKIAotIzogd3Qtc3RhdHVzLmM6MTg2MiB3dC1zdGF0dXMuYzoxODY1CisjOiB3dC1zdGF0dXMuYzoxOTQ1IHd0LXN0YXR1cy5jOjE5NDgKIG1zZ2lkICJhaGVhZCAiCiBtc2dzdHIgInZvcmF1cyAiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGUgYWN0aW9uIGlzIGUuZy4gInB1bGwgd2l0aCByZWJhc2UiCi0jOiB3dC1zdGF0dXMuYzoyMzc0CisjOiB3dC1zdGF0dXMuYzoyNDcwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICIlcyBuaWNodCBtw7ZnbGljaDogU2llIGhhYmVuIMOEbmRlcnVuZ2VuLCBkaWUgbmljaHQgenVtIENvbW1pdCB2b3JnZW1lcmt0IHNpbmQuIgogCi0jOiB3dC1zdGF0dXMuYzoyMzgwCisjOiB3dC1zdGF0dXMuYzoyNDc2CiBtc2dpZCAiYWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICJadXPDpHR6bGljaCBlbnRow6RsdCBkaWUgU3RhZ2luZy1BcmVhIG5pY2h0IGNvbW1pdHRldGUgw4RuZGVydW5nZW4uIgogCi0jOiB3dC1zdGF0dXMuYzoyMzgyCisjOiB3dC1zdGF0dXMuYzoyNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAlczogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogIiVzIG5pY2h0IG3DtmdsaWNoOiBEaWUgU3RhZ2luZy1BcmVhIGVudGjDpGx0IG5pY2h0IGNvbW1pdHRldGUgw4RuZGVydW5nZW4uIgogCi0jOiBidWlsdGluL2FkZC5jOjI0CisjOiBjb21wYXQvcHJlY29tcG9zZV91dGY4LmM6NTggYnVpbHRpbi9jbG9uZS5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rICclcyciCittc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGVudGZlcm5lbi4iCisKKyM6IGJ1aWx0aW4vYWRkLmM6MjYKIG1zZ2lkICJnaXQgYWRkIFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKIG1zZ3N0ciAiZ2l0IGFkZCBbPE9wdGlvbmVuPl0gWy0tXSA8UGZhZHNwZXppZmlrYXRpb24+Li4uIgogCi0jOiBidWlsdGluL2FkZC5jOjgzCisjOiBidWlsdGluL2FkZC5jOjg4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgZGlmZiBzdGF0dXMgJWMiCiBtc2dzdHIgInVuZXJ3YXJ0ZXRlciBEaWZmZXJlbnotU3RhdHVzICVjIgogCi0jOiBidWlsdGluL2FkZC5jOjg4IGJ1aWx0aW4vY29tbWl0LmM6Mjg0CisjOiBidWlsdGluL2FkZC5jOjkzIGJ1aWx0aW4vY29tbWl0LmM6Mjg4CiBtc2dpZCAidXBkYXRpbmcgZmlsZXMgZmFpbGVkIgogbXNnc3RyICJBa3R1YWxpc2llcnVuZyBkZXIgRGF0ZWllbiBmZWhsZ2VzY2hsYWdlbiIKIAotIzogYnVpbHRpbi9hZGQuYzo5OAorIzogYnVpbHRpbi9hZGQuYzoxMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3ZlICclcydcbiIKIG1zZ3N0ciAibMO2c2NoZSAnJXMnXG4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MTczCisjOiBidWlsdGluL2FkZC5jOjE3OAogbXNnaWQgIlVuc3RhZ2VkIGNoYW5nZXMgYWZ0ZXIgcmVmcmVzaGluZyB0aGUgaW5kZXg6IgogbXNnc3RyICIiCiAiTmljaHQgenVtIENvbW1pdCB2b3JnZW1lcmt0ZSDDhG5kZXJ1bmdlbiBuYWNoIEFrdHVhbGlzaWVydW5nIGRlciBTdGFnaW5nLUFyZWE6IgogCi0jOiBidWlsdGluL2FkZC5jOjIzMyBidWlsdGluL3Jldi1wYXJzZS5jOjg5NQorIzogYnVpbHRpbi9hZGQuYzoyNjYgYnVpbHRpbi9yZXYtcGFyc2UuYzo4OTkKIG1zZ2lkICJDb3VsZCBub3QgcmVhZCB0aGUgaW5kZXgiCiBtc2dzdHIgIktvbm50ZSBkZW4gSW5kZXggbmljaHQgbGVzZW4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQ0CisjOiBidWlsdGluL2FkZC5jOjI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nLiIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgenVtIFNjaHJlaWJlbiDDtmZmbmVuLiIKIAotIzogYnVpbHRpbi9hZGQuYzoyNDgKKyM6IGJ1aWx0aW4vYWRkLmM6MjgxCiBtc2dpZCAiQ291bGQgbm90IHdyaXRlIHBhdGNoIgogbXNnc3RyICJLb25udGUgUGF0Y2ggbmljaHQgc2NocmVpYmVuIgogCi0jOiBidWlsdGluL2FkZC5jOjI1MQorIzogYnVpbHRpbi9hZGQuYzoyODQKIG1zZ2lkICJlZGl0aW5nIHBhdGNoIGZhaWxlZCIKIG1zZ3N0ciAiQmVhcmJlaXR1bmcgZGVzIFBhdGNoZXMgZmVobGdlc2NobGFnZW4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjU0CisjOiBidWlsdGluL2FkZC5jOjI4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc3RhdCAnJXMnIgogbXNnc3RyICJLb25udGUgVmVyemVpY2huaXMgJyVzJyBuaWNodCBsZXNlbiIKIAotIzogYnVpbHRpbi9hZGQuYzoyNTYKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg5CiBtc2dpZCAiRW1wdHkgcGF0Y2guIEFib3J0ZWQuIgogbXNnc3RyICJMZWVyZXIgUGF0Y2guIEFiZ2Vicm9jaGVuLiIKIAotIzogYnVpbHRpbi9hZGQuYzoyNjEKKyM6IGJ1aWx0aW4vYWRkLmM6Mjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBhcHBseSAnJXMnIgogbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBhbndlbmRlbi4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjY5CisjOiBidWlsdGluL2FkZC5jOjMwMgogbXNnaWQgIlRoZSBmb2xsb3dpbmcgcGF0aHMgYXJlIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczpcbiIKIG1zZ3N0ciAiIgogIkRpZSBmb2xnZW5kZW4gUGZhZGUgd2VyZGVuIGR1cmNoIGVpbmUgSWhyZXIgXCIuZ2l0aWdub3JlXCIgRGF0ZWllbiAiCiAiaWdub3JpZXJ0OlxuIgogCi0jOiBidWlsdGluL2FkZC5jOjI4OSBidWlsdGluL2NsZWFuLmM6OTA3IGJ1aWx0aW4vZmV0Y2guYzoxMzcgYnVpbHRpbi9tdi5jOjEyMwotIzogYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1NiBidWlsdGluL3B1bGwuYzoyMTMgYnVpbHRpbi9wdXNoLmM6NTU3Ci0jOiBidWlsdGluL3JlbW90ZS5jOjEzNDUgYnVpbHRpbi9ybS5jOjI0MCBidWlsdGluL3NlbmQtcGFjay5jOjE2NQorIzogYnVpbHRpbi9hZGQuYzozMjIgYnVpbHRpbi9jbGVhbi5jOjkxMCBidWlsdGluL2ZldGNoLmM6MTYzIGJ1aWx0aW4vbXYuYzoxMjQKKyM6IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTYgYnVpbHRpbi9wdWxsLmM6MjAzIGJ1aWx0aW4vcHVzaC5jOjU0OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNDIxIGJ1aWx0aW4vcm0uYzoyNDIgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjUKIG1zZ2lkICJkcnkgcnVuIgogbXNnc3RyICJQcm9iZWxhdWYiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjkyCisjOiBidWlsdGluL2FkZC5jOjMyNQogbXNnaWQgImludGVyYWN0aXZlIHBpY2tpbmciCiBtc2dzdHIgImludGVyYWt0aXZlcyBBdXN3w6RobGVuIgogCi0jOiBidWlsdGluL2FkZC5jOjI5MyBidWlsdGluL2NoZWNrb3V0LmM6MTI1OCBidWlsdGluL3Jlc2V0LmM6MzA1CisjOiBidWlsdGluL2FkZC5jOjMyNiBidWlsdGluL2NoZWNrb3V0LmM6MTUxMSBidWlsdGluL3Jlc2V0LmM6MzA3CiBtc2dpZCAic2VsZWN0IGh1bmtzIGludGVyYWN0aXZlbHkiCiBtc2dzdHIgIkJsw7Zja2UgaW50ZXJha3RpdiBhdXN3w6RobGVuIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NAorIzogYnVpbHRpbi9hZGQuYzozMjcKIG1zZ2lkICJlZGl0IGN1cnJlbnQgZGlmZiBhbmQgYXBwbHkiCiBtc2dzdHIgImFrdHVlbGxlIFVudGVyc2NoaWVkZSBlZGl0aWVyZW4gdW5kIGFud2VuZGVuIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NQorIzogYnVpbHRpbi9hZGQuYzozMjgKIG1zZ2lkICJhbGxvdyBhZGRpbmcgb3RoZXJ3aXNlIGlnbm9yZWQgZmlsZXMiCiBtc2dzdHIgImRhcyBIaW56dWbDvGdlbiBhbmRlcm5mYWxscyBpZ25vcmllcnRlciBEYXRlaWVuIGVybGF1YmVuIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NgorIzogYnVpbHRpbi9hZGQuYzozMjkKIG1zZ2lkICJ1cGRhdGUgdHJhY2tlZCBmaWxlcyIKIG1zZ3N0ciAidmVyc2lvbmllcnRlIERhdGVpZW4gYWt0dWFsaXNpZXJlbiIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTcKKyM6IGJ1aWx0aW4vYWRkLmM6MzMwCiBtc2dpZCAicmVub3JtYWxpemUgRU9MIG9mIHRyYWNrZWQgZmlsZXMgKGltcGxpZXMgLXUpIgogbXNnc3RyICIiCiAiZXJuZXV0ZXMgTm9ybWFsaXNpZXJlbiBkZXIgWmVpbGVuZW5kZW4gdm9uIHZlcnNpb25pZXJ0ZW4gRGF0ZWllbiAoaW1wbGl6aWVydCAiCiAiLXUpIgogCi0jOiBidWlsdGluL2FkZC5jOjI5OAorIzogYnVpbHRpbi9hZGQuYzozMzEKIG1zZ2lkICJyZWNvcmQgb25seSB0aGUgZmFjdCB0aGF0IHRoZSBwYXRoIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCiBtc2dzdHIgIm51ciBzcGVpY2hlcm4sIGRhc3MgZGVyIFBmYWQgc3DDpHRlciBoaW56dWdlZsO8Z3Qgd2VyZGVuIHNvbGwiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk5CisjOiBidWlsdGluL2FkZC5jOjMzMgogbXNnaWQgImFkZCBjaGFuZ2VzIGZyb20gYWxsIHRyYWNrZWQgYW5kIHVudHJhY2tlZCBmaWxlcyIKIG1zZ3N0ciAiIgogIsOEbmRlcnVuZ2VuIHZvbiBhbGxlbiB2ZXJzaW9uaWVydGVuIHVuZCB1bnZlcnNpb25pZXJ0ZW4gRGF0ZWllbiBoaW56dWbDvGdlbiIKIAotIzogYnVpbHRpbi9hZGQuYzozMDIKKyM6IGJ1aWx0aW4vYWRkLmM6MzM1CiBtc2dpZCAiaWdub3JlIHBhdGhzIHJlbW92ZWQgaW4gdGhlIHdvcmtpbmcgdHJlZSAoc2FtZSBhcyAtLW5vLWFsbCkiCiBtc2dzdHIgImdlbMO2c2NodGUgUGZhZGUgaW0gQXJiZWl0c3ZlcnplaWNobmlzIGlnbm9yaWVyZW4gKGdlbmF1IHdpZSAtLW5vLWFsbCkiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzA0CisjOiBidWlsdGluL2FkZC5jOjMzNwogbXNnaWQgImRvbid0IGFkZCwgb25seSByZWZyZXNoIHRoZSBpbmRleCIKIG1zZ3N0ciAibmljaHRzIGhpbnp1ZsO8Z2VuLCBudXIgZGVuIEluZGV4IGFrdHVhbGlzaWVyZW4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzA1CisjOiBidWlsdGluL2FkZC5jOjMzOAogbXNnaWQgImp1c3Qgc2tpcCBmaWxlcyB3aGljaCBjYW5ub3QgYmUgYWRkZWQgYmVjYXVzZSBvZiBlcnJvcnMiCiBtc2dzdHIgIiIKICJEYXRlaWVuIMO8YmVyc3ByaW5nZW4sIGRpZSBhdWZncnVuZCB2b24gRmVobGVybiBuaWNodCBoaW56dWdlZsO8Z3Qgd2VyZGVuICIKICJrb25udGVuIgogCi0jOiBidWlsdGluL2FkZC5jOjMwNgorIzogYnVpbHRpbi9hZGQuYzozMzkKIG1zZ2lkICJjaGVjayBpZiAtIGV2ZW4gbWlzc2luZyAtIGZpbGVzIGFyZSBpZ25vcmVkIGluIGRyeSBydW4iCiBtc2dzdHIgInByw7xmZW4gb2IgLSBhdWNoIGZlaGxlbmRlIC0gRGF0ZWllbiBpbSBQcm9iZWxhdWYgaWdub3JpZXJ0IHdlcmRlbiIKIAotIzogYnVpbHRpbi9hZGQuYzozMDggYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTAKKyM6IGJ1aWx0aW4vYWRkLmM6MzQxIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwNAogbXNnaWQgIm92ZXJyaWRlIHRoZSBleGVjdXRhYmxlIGJpdCBvZiB0aGUgbGlzdGVkIGZpbGVzIgogbXNnc3RyICJkYXMgXCJhdXNmw7xocmJhclwiLUJpdCBkZXIgYXVmZ2VsaXN0ZXRlbiBEYXRlaWVuIMO8YmVyc2NocmVpYmVuIgogCi0jOiBidWlsdGluL2FkZC5jOjMxMAorIzogYnVpbHRpbi9hZGQuYzozNDMKIG1zZ2lkICJ3YXJuIHdoZW4gYWRkaW5nIGFuIGVtYmVkZGVkIHJlcG9zaXRvcnkiCiBtc2dzdHIgIndhcm5lbiB3ZW5uIGVpbmdlYmV0dGV0ZXMgUmVwb3NpdG9yeSBoaW56dWdlZsO8Z3Qgd2lyZCIKIAotIzogYnVpbHRpbi9hZGQuYzozMjUKKyM6IGJ1aWx0aW4vYWRkLmM6MzQ1Cittc2dpZCAiYmFja2VuZCBmb3IgYGdpdCBzdGFzaCAtcGAiCittc2dzdHIgIkJhY2tlbmQgZsO8ciBgZ2l0IHN0YXNoIC1wYCIKKworIzogYnVpbHRpbi9hZGQuYzozNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSd2ZSBhZGRlZCBhbm90aGVyIGdpdCByZXBvc2l0b3J5IGluc2lkZSB5b3VyIGN1cnJlbnQgcmVwb3NpdG9yeS5cbiIKQEAgLTc0NDUsMTU2ICs5NjkzLDE4NiBAQAogIlxuIgogIlNpZWhlIFwiZ2l0IGhlbHAgc3VibW9kdWxlXCIgZsO8ciB3ZWl0ZXJlIEluZm9ybWF0aW9uZW4uIgogCi0jOiBidWlsdGluL2FkZC5jOjM1MworIzogYnVpbHRpbi9hZGQuYzozOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkaW5nIGVtYmVkZGVkIGdpdCByZXBvc2l0b3J5OiAlcyIKIG1zZ3N0ciAiRsO8Z2UgZWluZ2ViZXR0ZXRlcyBSZXBvc2l0b3J5IGhpbnp1OiAlcyIKIAotIzogYnVpbHRpbi9hZGQuYzozNzEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgdGhlbS5cbiIKLW1zZ3N0ciAiVmVyd2VuZGVuIFNpZSAtZiB3ZW5uIFNpZSBkaWVzZSB3aXJrbGljaCBoaW56dWbDvGdlbiBtw7ZjaHRlbi5cbiIKKyM6IGJ1aWx0aW4vYWRkLmM6NDEwCittc2dpZCAiIgorIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIHRoZW0uXG4iCisiVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5IHJ1bm5pbmdcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZElnbm9yZWRGaWxlIGZhbHNlXCIiCittc2dzdHIgIiIKKyJOdXR6ZW4gU2llIGRpZSBPcHRpb24gLWYsIHdlbm4gc2llIHdpcmtsaWNoIGhpbnp1Z2Vmw7xndCB3ZXJkZW4gc29sbGVuLlxuIgorIlVtIGRpZXNlIE1lbGR1bmcgYWJ6dXNjaGFsdGVuLCBmw7xocmVuIFNpZSBmb2xnZW5kZW4gQmVmZWhsIGF1czpcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZElnbm9yZWRGaWxlIGZhbHNlXCIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mzc5CisjOiBidWlsdGluL2FkZC5jOjQxOQogbXNnaWQgImFkZGluZyBmaWxlcyBmYWlsZWQiCiBtc2dzdHIgIkhpbnp1ZsO8Z2VuIHZvbiBEYXRlaWVuIGZlaGxnZXNjaGxhZ2VuIgogCi0jOiBidWlsdGluL2FkZC5jOjQxNworIzogYnVpbHRpbi9hZGQuYzo0NDcgYnVpbHRpbi9jb21taXQuYzozNDgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWludGVyYWN0aXZlLy0tcGF0Y2giCittc2dzdHIgIiIKKyJEaWUgT3B0aW9uZW4gLS1wYXRoc3BlYy1mcm9tLWZpbGUgdW5kIC0taW50ZXJhY3RpdmUvLS1wYXRjaCBzaW5kICIKKyJpbmtvbXBhdGliZWwuIgorCisjOiBidWlsdGluL2FkZC5jOjQ2NAorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tZWRpdCIKK21zZ3N0ciAiRGllIE9wdGlvbmVuIC0tcGF0aHNwZWMtZnJvbS1maWxlIHVuZCAtLWVkaXQgc2luZCBpbmtvbXBhdGliZWwuIgorCisjOiBidWlsdGluL2FkZC5jOjQ3NgogbXNnaWQgIi1BIGFuZCAtdSBhcmUgbXV0dWFsbHkgaW5jb21wYXRpYmxlIgogbXNnc3RyICJEaWUgT3B0aW9uZW4gLUEgdW5kIC11IHNpbmQgenVlaW5hbmRlciBpbmtvbXBhdGliZWwuIgogCi0jOiBidWlsdGluL2FkZC5jOjQyNAorIzogYnVpbHRpbi9hZGQuYzo0NzkKIG1zZ2lkICJPcHRpb24gLS1pZ25vcmUtbWlzc2luZyBjYW4gb25seSBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggLS1kcnktcnVuIgogbXNnc3RyICIiCiAiRGllIE9wdGlvbiAtLWlnbm9yZS1taXNzaW5nIGthbm4gbnVyIHp1c2FtbWVuIG1pdCAtLWRyeS1ydW4gdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDI4CisjOiBidWlsdGluL2FkZC5jOjQ4MwogIywgYy1mb3JtYXQKIG1zZ2lkICItLWNobW9kIHBhcmFtICclcycgbXVzdCBiZSBlaXRoZXIgLXggb3IgK3giCiBtc2dzdHIgIi0tY2htb2QgUGFyYW1ldGVyICclcycgbXVzcyBlbnR3ZWRlciAteCBvZGVyICt4IHNlaW4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDQzCisjOiBidWlsdGluL2FkZC5jOjUwMSBidWlsdGluL2NoZWNrb3V0LmM6MTY3NSBidWlsdGluL2NvbW1pdC5jOjM1NAorIzogYnVpbHRpbi9yZXNldC5jOjMyNyBidWlsdGluL3JtLmM6MjcyIGJ1aWx0aW4vc3Rhc2guYzoxNTA5Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggcGF0aHNwZWMgYXJndW1lbnRzIgorbXNnc3RyICIiCisiRGllIE9wdGlvbiAtLXBhdGhzcGVjLWZyb20tZmlsZSBpc3QgaW5rb21wYXRpYmVsIG1pdFxuIgorIlBmYWRzcGV6aWZpa2F0aW9uLUFyZ3VtZW50ZW4uIgorCisjOiBidWlsdGluL2FkZC5jOjUwOCBidWlsdGluL2NoZWNrb3V0LmM6MTY4NyBidWlsdGluL2NvbW1pdC5jOjM2MAorIzogYnVpbHRpbi9yZXNldC5jOjMzMyBidWlsdGluL3JtLmM6Mjc4IGJ1aWx0aW4vc3Rhc2guYzoxNTE1Cittc2dpZCAiLS1wYXRoc3BlYy1maWxlLW51bCByZXF1aXJlcyAtLXBhdGhzcGVjLWZyb20tZmlsZSIKK21zZ3N0ciAiRGllIE9wdGlvbiAtLXBhdGhzcGVjLWZpbGUtbnVsIGJlbsO2dGlndCAtLXBhdGhzcGVjLWZyb20tZmlsZSIKKworIzogYnVpbHRpbi9hZGQuYzo1MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90aGluZyBzcGVjaWZpZWQsIG5vdGhpbmcgYWRkZWQuXG4iCiBtc2dzdHIgIk5pY2h0cyBzcGV6aWZpemllcnQsIG5pY2h0cyBoaW56dWdlZsO8Z3QuXG4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDQ0Ci0jLCBjLWZvcm1hdAotbXNnaWQgIk1heWJlIHlvdSB3YW50ZWQgdG8gc2F5ICdnaXQgYWRkIC4nP1xuIgotbXNnc3RyICJNZWludGVuIFNpZSB2aWVsbGVpY2h0ICdnaXQgYWRkIC4nP1xuIgorIzogYnVpbHRpbi9hZGQuYzo1MTQKK21zZ2lkICIiCisiTWF5YmUgeW91IHdhbnRlZCB0byBzYXkgJ2dpdCBhZGQgLic/XG4iCisiVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5IHJ1bm5pbmdcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZEVtcHR5UGF0aHNwZWMgZmFsc2VcIiIKK21zZ3N0ciAiIgorIkV2ZW50dWVsbCBtZWludGVuIFNpZSAnZ2l0IGFkZCAuJz9cbiIKKyJVbSBkaWVzZSBNZWxkdW5nIGFienVzY2hhbHRlbiwgZsO8aHJlbiBTaWUgZm9sZ2VuZGVuIEJlZmVobCBhdXM6XG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRFbXB0eVBhdGhzcGVjIGZhbHNlXCIiCiAKLSM6IGJ1aWx0aW4vYW0uYzozNjMKKyM6IGJ1aWx0aW4vYW0uYzozNTIKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgYXV0aG9yIHNjcmlwdCIKIG1zZ3N0ciAia29ubnRlIEF1dG9yLVNrcmlwdCBuaWNodCBwYXJzZW4iCiAKLSM6IGJ1aWx0aW4vYW0uYzo0NDcKKyM6IGJ1aWx0aW4vYW0uYzo0MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyB3YXMgZGVsZXRlZCBieSB0aGUgYXBwbHlwYXRjaC1tc2cgaG9vayIKIG1zZ3N0ciAiJyVzJyB3dXJkZSBkdXJjaCBkZW4gYXBwbHlwYXRjaC1tc2cgSG9vayBlbnRmZXJudCIKIAotIzogYnVpbHRpbi9hbS5jOjQ4OAorIzogYnVpbHRpbi9hbS5jOjQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJNYWxmb3JtZWQgaW5wdXQgbGluZTogJyVzJy4iCiBtc2dzdHIgIkZlaGxlcmhhZnRlIEVpbmdhYmV6ZWlsZTogJyVzJy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzo1MjUKKyM6IGJ1aWx0aW4vYW0uYzo1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGNvcHkgbm90ZXMgZnJvbSAnJXMnIHRvICclcyciCiBtc2dzdHIgIkZlaGxlciBiZWltIEtvcGllcmVuIGRlciBOb3RpemVuIHZvbiAnJXMnIG5hY2ggJyVzJyIKIAotIzogYnVpbHRpbi9hbS5jOjU1MQorIzogYnVpbHRpbi9hbS5jOjU0MgogbXNnaWQgImZzZWVrIGZhaWxlZCIKIG1zZ3N0ciAiXCJmc2Vla1wiIGZlaGxnZXNjaGxhZ2VuIgogCi0jOiBidWlsdGluL2FtLmM6NzM5CisjOiBidWlsdGluL2FtLmM6NzMwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBwYXRjaCAnJXMnIgogbXNnc3RyICJrb25udGUgUGF0Y2ggJyVzJyBuaWNodCBwYXJzZW4iCiAKLSM6IGJ1aWx0aW4vYW0uYzo4MDQKKyM6IGJ1aWx0aW4vYW0uYzo3OTUKIG1zZ2lkICJPbmx5IG9uZSBTdEdJVCBwYXRjaCBzZXJpZXMgY2FuIGJlIGFwcGxpZWQgYXQgb25jZSIKIG1zZ3N0ciAiRXMga2FubiBudXIgZWluZSBTdEdJVCBQYXRjaC1TZXJpZSBhdWYgZWlubWFsIGFuZ2V3ZW5kZXQgd2VyZGVuLiIKIAotIzogYnVpbHRpbi9hbS5jOjg1MgorIzogYnVpbHRpbi9hbS5jOjg0MwogbXNnaWQgImludmFsaWQgdGltZXN0YW1wIgogbXNnc3RyICJ1bmfDvGx0aWdlciBaZWl0c3RlbXBlbCIKIAotIzogYnVpbHRpbi9hbS5jOjg1NyBidWlsdGluL2FtLmM6ODY5CisjOiBidWlsdGluL2FtLmM6ODQ4IGJ1aWx0aW4vYW0uYzo4NjAKIG1zZ2lkICJpbnZhbGlkIERhdGUgbGluZSIKIG1zZ3N0ciAiVW5nw7xsdGlnZSBcIkRhdGVcIi1aZWlsZSIKIAotIzogYnVpbHRpbi9hbS5jOjg2NAorIzogYnVpbHRpbi9hbS5jOjg1NQogbXNnaWQgImludmFsaWQgdGltZXpvbmUgb2Zmc2V0IgogbXNnc3RyICJVbmfDvGx0aWdlciBPZmZzZXQgaW4gZGVyIFplaXR6b25lIgogCi0jOiBidWlsdGluL2FtLmM6OTU3CisjOiBidWlsdGluL2FtLmM6OTQ4CiBtc2dpZCAiUGF0Y2ggZm9ybWF0IGRldGVjdGlvbiBmYWlsZWQuIgogbXNnc3RyICJQYXRjaC1Gb3JtYXRlcmtlbm51bmcgZmVobGdlc2NobGFnZW4uIgogCi0jOiBidWlsdGluL2FtLmM6OTYyIGJ1aWx0aW4vY2xvbmUuYzo0MDgKKyM6IGJ1aWx0aW4vYW0uYzo5NTMgYnVpbHRpbi9jbG9uZS5jOjQwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgogbXNnc3RyICJGZWhsZXIgYmVpbSBFcnN0ZWxsZW4gdm9uIFZlcnplaWNobmlzICclcyciCiAKLSM6IGJ1aWx0aW4vYW0uYzo5NjcKKyM6IGJ1aWx0aW4vYW0uYzo5NTgKIG1zZ2lkICJGYWlsZWQgdG8gc3BsaXQgcGF0Y2hlcy4iCiBtc2dzdHIgIkZlaGxlciBiZWltIEF1ZnRlaWxlbiBkZXIgUGF0Y2hlcy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMDk3IGJ1aWx0aW4vY29tbWl0LmM6MzY5Ci1tc2dpZCAidW5hYmxlIHRvIHdyaXRlIGluZGV4IGZpbGUiCi1tc2dzdHIgIktvbm50ZSBJbmRleC1EYXRlaSBuaWNodCBzY2hyZWliZW4uIgotCi0jOiBidWlsdGluL2FtLmM6MTExMQorIzogYnVpbHRpbi9hbS5jOjEwODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiV2hlbiB5b3UgaGF2ZSByZXNvbHZlZCB0aGlzIHByb2JsZW0sIHJ1biBcIiVzIC0tY29udGludWVcIi4iCiBtc2dzdHIgIiIKICJXZW5uIFNpZSBkYXMgUHJvYmxlbSBhdWZnZWzDtnN0IGhhYmVuLCBmw7xocmVuIFNpZSBcIiVzIC0tY29udGludWVcIiBhdXMuIgogCi0jOiBidWlsdGluL2FtLmM6MTExMgorIzogYnVpbHRpbi9hbS5jOjEwOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiSWYgeW91IHByZWZlciB0byBza2lwIHRoaXMgcGF0Y2gsIHJ1biBcIiVzIC0tc2tpcFwiIGluc3RlYWQuIgogbXNnc3RyICIiCiAiRmFsbHMgU2llIGRpZXNlbiBQYXRjaCBhdXNsYXNzZW4gbcO2Y2h0ZW4sIGbDvGhyZW4gU2llIHN0YXR0ZGVzc2VuIFwiJXMgLS1za2lwIgogIlwiIGF1cy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMTEzCisjOiBidWlsdGluL2FtLmM6MTA5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJUbyByZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIHN0b3AgcGF0Y2hpbmcsIHJ1biBcIiVzIC0tYWJvcnRcIi4iCiBtc2dzdHIgIiIKICJVbSBkZW4gdXJzcHLDvG5nbGljaGVuIEJyYW5jaCB3aWVkZXJoZXJ6dXN0ZWxsZW4gdW5kIGRpZSBBbndlbmR1bmcgZGVyICIKICJQYXRjaGVzIGFienVicmVjaGVuLCBmw7xocmVuIFNpZSBcIiVzIC0tYWJvcnRcIiBhdXMuIgogCi0jOiBidWlsdGluL2FtLmM6MTE5NgorIzogYnVpbHRpbi9hbS5jOjExNzQKIG1zZ2lkICJQYXRjaCBzZW50IHdpdGggZm9ybWF0PWZsb3dlZDsgc3BhY2UgYXQgdGhlIGVuZCBvZiBsaW5lcyBtaWdodCBiZSBsb3N0LiIKLW1zZ3N0ciAiUGF0Y2ggbWl0IGZvcm1hdD1mbG93ZWQgdmVyc2VuZGV0OyBMZWVyemVpY2hlbiBhbSBFbmRlIHZvbiBaZWlsZW4ga8O2bm50ZSB2ZXJsb3JlbiBnZWhlbi4iCittc2dzdHIgIiIKKyJQYXRjaCBtaXQgZm9ybWF0PWZsb3dlZCB2ZXJzZW5kZXQ7IExlZXJ6ZWljaGVuIGFtIEVuZGUgdm9uIFplaWxlbiBrw7ZubnRlICIKKyJ2ZXJsb3JlbiBnZWhlbi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMjI0CisjOiBidWlsdGluL2FtLmM6MTIwMgogbXNnaWQgIlBhdGNoIGlzIGVtcHR5LiIKIG1zZ3N0ciAiUGF0Y2ggaXN0IGxlZXIuIgogCi0jOiBidWlsdGluL2FtLmM6MTI5MAorIzogYnVpbHRpbi9hbS5jOjEyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyBhdXRob3IgbGluZSBpbiBjb21taXQgJXMiCittc2dzdHIgIkF1dG9yLVplaWxlIGZlaGx0IGluIENvbW1pdCAlcyIKKworIzogYnVpbHRpbi9hbS5jOjEyNzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBpZGVudCBsaW5lOiAlLipzIgogbXNnc3RyICJVbmfDvGx0aWdlIElkZW50aWZpa2F0aW9uc3plaWxlOiAlLipzIgogCi0jOiBidWlsdGluL2FtLmM6MTMxMgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0ICVzIgotbXNnc3RyICJLb25udGUgQ29tbWl0ICclcycgbmljaHQgcGFyc2VuLiIKLQotIzogYnVpbHRpbi9hbS5jOjE1MDgKKyM6IGJ1aWx0aW4vYW0uYzoxNDg5CiBtc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyBuZWNlc3NhcnkgYmxvYnMgdG8gZmFsbCBiYWNrIG9uIDMtd2F5IG1lcmdlLiIKIG1zZ3N0ciAiIgogIkRlbSBSZXBvc2l0b3J5IGZlaGxlbiBub3R3ZW5kaWdlIEJsb2JzIHVtIGF1ZiBlaW5lbiAzLVdlZ2UtTWVyZ2UgIgogInp1csO8Y2t6dWZhbGxlbi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTEwCisjOiBidWlsdGluL2FtLmM6MTQ5MQogbXNnaWQgIlVzaW5nIGluZGV4IGluZm8gdG8gcmVjb25zdHJ1Y3QgYSBiYXNlIHRyZWUuLi4iCiBtc2dzdHIgIiIKICJWZXJ3ZW5kZSBJbmZvcm1hdGlvbmVuIGF1cyBkZXIgU3RhZ2luZy1BcmVhLCB1bSBlaW4gQmFzaXN2ZXJ6ZWljaG5pcyAiCiAibmFjaHp1c3RlbGxlbiAuLi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTI5CisjOiBidWlsdGluL2FtLmM6MTUxMAogbXNnaWQgIiIKICJEaWQgeW91IGhhbmQgZWRpdCB5b3VyIHBhdGNoP1xuIgogIkl0IGRvZXMgbm90IGFwcGx5IHRvIGJsb2JzIHJlY29yZGVkIGluIGl0cyBpbmRleC4iCkBAIC03NjAyLDMwICs5ODgwLDI0IEBACiAiSGFiZW4gU2llIGRlbiBQYXRjaCBwZXIgSGFuZCBlZGl0aWVydD9cbiIKICJFciBrYW5uIG5pY2h0IGF1ZiBkaWUgQmxvYnMgaW4gc2VpbmVyICdpbmRleCcgWmVpbGUgYW5nZXdlbmRldCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL2FtLmM6MTUzNQorIzogYnVpbHRpbi9hbS5jOjE1MTYKIG1zZ2lkICJGYWxsaW5nIGJhY2sgdG8gcGF0Y2hpbmcgYmFzZSBhbmQgMy13YXkgbWVyZ2UuLi4iCiBtc2dzdHIgIkZhbGxlIHp1csO8Y2sgenVtIFBhdGNoZW4gZGVyIEJhc2lzIHVuZCB6dW0gMy1XZWdlLU1lcmdlIC4uLiIKIAotIzogYnVpbHRpbi9hbS5jOjE1NjEKKyM6IGJ1aWx0aW4vYW0uYzoxNTQyCiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIGluIHRoZSBjaGFuZ2VzLiIKIG1zZ3N0ciAiTWVyZ2UgZGVyIMOEbmRlcnVuZ2VuIGZlaGxnZXNjaGxhZ2VuLiIKIAotIzogYnVpbHRpbi9hbS5jOjE1OTMKKyM6IGJ1aWx0aW4vYW0uYzoxNTc0CiBtc2dpZCAiYXBwbHlpbmcgdG8gYW4gZW1wdHkgaGlzdG9yeSIKIG1zZ3N0ciAiYXVmIGxlZXJlIEhpc3RvcmllIGFud2VuZGVuIgogCi0jOiBidWlsdGluL2FtLmM6MTYzOSBidWlsdGluL2FtLmM6MTY0MworIzogYnVpbHRpbi9hbS5jOjE2MjEgYnVpbHRpbi9hbS5jOjE2MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlc3VtZTogJXMgZG9lcyBub3QgZXhpc3QuIgogbXNnc3RyICJLYW5uIG5pY2h0IGZvcnRzZXR6ZW46ICVzIGV4aXN0aWVydCBuaWNodCIKIAotIzogYnVpbHRpbi9hbS5jOjE2NTkKLW1zZ2lkICJjYW5ub3QgYmUgaW50ZXJhY3RpdmUgd2l0aG91dCBzdGRpbiBjb25uZWN0ZWQgdG8gYSB0ZXJtaW5hbC4iCi1tc2dzdHIgIiIKLSJLYW5uIG5pY2h0IGludGVyYWt0aXYgc2Vpbiwgb2huZSBkYXNzIGRpZSBTdGFuZGFyZC1FaW5nYWJlIG1pdCBlaW5lbSAiCi0iVGVybWluYWwgdmVyYnVuZGVuIGlzdC4iCi0KLSM6IGJ1aWx0aW4vYW0uYzoxNjY0CisjOiBidWlsdGluL2FtLmM6MTY0MwogbXNnaWQgIkNvbW1pdCBCb2R5IGlzOiIKIG1zZ3N0ciAiQ29tbWl0LUJlc2NocmVpYnVuZyBpc3Q6IgogCkBAIC03NjMzLDM2ICs5OTA1LDQxIEBACiAjLiBpbiB5b3VyIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2gKICMuIGlucHV0IGF0IHRoaXMgcG9pbnQuCiAjLgotIzogYnVpbHRpbi9hbS5jOjE2NzQKKyM6IGJ1aWx0aW4vYW0uYzoxNjUzCisjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGx5PyBbeV1lcy9bbl1vL1tlXWRpdC9bdl1pZXcgcGF0Y2gvW2FdY2NlcHQgYWxsOiAiCiBtc2dzdHIgIkFud2VuZGVuPyBbeV1lcy9bbl1vL1tlXWRpdC9bdl1pZXcgcGF0Y2gvW2FdY2NlcHQgYWxsOiAiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzI0CisjOiBidWlsdGluL2FtLmM6MTcwMCBidWlsdGluL2NvbW1pdC5jOjM5OAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBpbmRleCBmaWxlIgorbXNnc3RyICJLb25udGUgSW5kZXgtRGF0ZWkgbmljaHQgc2NocmVpYmVuLiIKKworIzogYnVpbHRpbi9hbS5jOjE3MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGlydHkgaW5kZXg6IGNhbm5vdCBhcHBseSBwYXRjaGVzIChkaXJ0eTogJXMpIgogbXNnc3RyICJHZcOkbmRlcnRlciBJbmRleDoga2FubiBQYXRjaGVzIG5pY2h0IGFud2VuZGVuIChnZcOkbmRlcnQ6ICVzKSIKIAotIzogYnVpbHRpbi9hbS5jOjE3NjQgYnVpbHRpbi9hbS5jOjE4MzIKKyM6IGJ1aWx0aW4vYW0uYzoxNzQ0IGJ1aWx0aW4vYW0uYzoxODEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGx5aW5nOiAlLipzIgogbXNnc3RyICJXZW5kZSBhbjogJS4qcyIKIAotIzogYnVpbHRpbi9hbS5jOjE3ODEKKyM6IGJ1aWx0aW4vYW0uYzoxNzYxCiBtc2dpZCAiTm8gY2hhbmdlcyAtLSBQYXRjaCBhbHJlYWR5IGFwcGxpZWQuIgogbXNnc3RyICJLZWluZSDDhG5kZXJ1bmdlbiAtLSBQYXRjaGVzIGJlcmVpdHMgYW5nZXdlbmRldC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzg3CisjOiBidWlsdGluL2FtLmM6MTc2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJQYXRjaCBmYWlsZWQgYXQgJXMgJS4qcyIKIG1zZ3N0ciAiQW53ZW5kdW5nIGRlcyBQYXRjaGVzIGZlaGxnZXNjaGxhZ2VuIGJlaSAlcyAlLipzIgogCi0jOiBidWlsdGluL2FtLmM6MTc5MQotbXNnaWQgIlVzZSAnZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoJyB0byBzZWUgdGhlIGZhaWxlZCBwYXRjaCIKKyM6IGJ1aWx0aW4vYW0uYzoxNzcxCittc2dpZCAiVXNlICdnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2g9ZGlmZicgdG8gc2VlIHRoZSBmYWlsZWQgcGF0Y2giCiBtc2dzdHIgIiIKLSJCZW51dHplbiBTaWUgJ2dpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaCcsIHVtIGRlblxuIgotImZlaGxnZXNjaGxhZ2VuZW4gUGF0Y2ggenUgc2VoZW4uIgorIkJlbnV0emVuIFNpZSAnZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoPWRpZmYnLCB1bSBkZW5cbiIKKyJmZWhsZ2VzY2hsYWdlbmVuIFBhdGNoIHp1IHNlaGVuIgogCi0jOiBidWlsdGluL2FtLmM6MTgzNQorIzogYnVpbHRpbi9hbS5jOjE4MTUKIG1zZ2lkICIiCiAiTm8gY2hhbmdlcyAtIGRpZCB5b3UgZm9yZ2V0IHRvIHVzZSAnZ2l0IGFkZCc/XG4iCiAiSWYgdGhlcmUgaXMgbm90aGluZyBsZWZ0IHRvIHN0YWdlLCBjaGFuY2VzIGFyZSB0aGF0IHNvbWV0aGluZyBlbHNlXG4iCkBAIC03NjczLDcgKzk5NTAsNyBAQAogImRpZXNlIGJlcmVpdHMgYW5kZXJ3ZWl0aWcgZWluZ2Vmw7xndCB3b3JkZW4gc2VpbjsgU2llIGvDtm5udGVuIGRpZXNlbiBQYXRjaFxuIgogImF1c2xhc3Nlbi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxODQyCisjOiBidWlsdGluL2FtLmM6MTgyMgogbXNnaWQgIiIKICJZb3Ugc3RpbGwgaGF2ZSB1bm1lcmdlZCBwYXRocyBpbiB5b3VyIGluZGV4LlxuIgogIllvdSBzaG91bGQgJ2dpdCBhZGQnIGVhY2ggZmlsZSB3aXRoIHJlc29sdmVkIGNvbmZsaWN0cyB0byBtYXJrIHRoZW0gYXMgIgpAQCAtNzY4NiwxNyArOTk2MywxNyBAQAogIlNpZSBrw7ZubmVuICdnaXQgcm0nIGF1ZiBEYXRlaWVuIGF1c2bDvGhyZW4sIHVtIFwidm9uIGRlbmVuIGdlbMO2c2NodFwiIGbDvHJcbiIKICJkaWVzZSB6dSBha3plcHRpZXJlbi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxOTQ5IGJ1aWx0aW4vYW0uYzoxOTUzIGJ1aWx0aW4vYW0uYzoxOTY1IGJ1aWx0aW4vcmVzZXQuYzozMjgKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMzYKKyM6IGJ1aWx0aW4vYW0uYzoxOTI5IGJ1aWx0aW4vYW0uYzoxOTMzIGJ1aWx0aW4vYW0uYzoxOTQ1IGJ1aWx0aW4vcmVzZXQuYzozNDYKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnLiIKIG1zZ3N0ciAiS29ubnRlIE9iamVrdCAnJXMnIG5pY2h0IHBhcnNlbi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMDAxCisjOiBidWlsdGluL2FtLmM6MTk4MQogbXNnaWQgImZhaWxlZCB0byBjbGVhbiBpbmRleCIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gQmVyZWluaWdlbiBkZXMgSW5kZXgiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMDM2CisjOiBidWlsdGluL2FtLmM6MjAyNQogbXNnaWQgIiIKICJZb3Ugc2VlbSB0byBoYXZlIG1vdmVkIEhFQUQgc2luY2UgdGhlIGxhc3QgJ2FtJyBmYWlsdXJlLlxuIgogIk5vdCByZXdpbmRpbmcgdG8gT1JJR19IRUFEIgpAQCAtNzcwNCwxNDQgKzk5ODEsMTU1IEBACiAiU2llIHNjaGVpbmVuIHNlaXQgZGVtIGxldHp0ZW4gZ2VzY2hlaXRlcnRlbiAnYW0nIEhFQUQgZ2XDpG5kZXJ0IHp1IGhhYmVuLlxuIgogIktlaW5lIFp1csO8Y2tzZXR6dW5nIHp1IE9SSUdfSEVBRC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTI5CisjOiBidWlsdGluL2FtLmM6MjEzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciAtLXBhdGNoLWZvcm1hdDogJXMiCiBtc2dzdHIgIlVuZ8O8bHRpZ2VyIFdlcnQgZsO8ciAtLXBhdGNoLWZvcm1hdDogJXMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTY1CisjOiBidWlsdGluL2FtLmM6MjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciAtLXNob3ctY3VycmVudC1wYXRjaDogJXMiCittc2dzdHIgIlVuZ8O8bHRpZ2VyIFdlcnQgZsO8ciAtLXNob3ctY3VycmVudC1wYXRjaDogJXMiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIgorbXNnc3RyICIiCisiLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMgaXN0IGlua29tYmF0aWJlbCBtaXQgLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjA3CiBtc2dpZCAiZ2l0IGFtIFs8b3B0aW9ucz5dIFsoPG1ib3g+IHwgPE1haWxkaXI+KS4uLl0iCiBtc2dzdHIgImdpdCBhbSBbPE9wdGlvbmVuPl0gWyg8bWJveD4gfCA8RS1NYWlsLVZlcnplaWNobmlzPikuLi5dIgogCi0jOiBidWlsdGluL2FtLmM6MjE2NgorIzogYnVpbHRpbi9hbS5jOjIyMDgKIG1zZ2lkICJnaXQgYW0gWzxvcHRpb25zPl0gKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0KSIKIG1zZ3N0ciAiZ2l0IGFtIFs8T3B0aW9uZW4+XSAoLS1jb250aW51ZSB8IC0tc2tpcCB8IC0tYWJvcnQpIgogCi0jOiBidWlsdGluL2FtLmM6MjE3MgorIzogYnVpbHRpbi9hbS5jOjIyMTQKIG1zZ2lkICJydW4gaW50ZXJhY3RpdmVseSIKIG1zZ3N0ciAiaW50ZXJha3RpdiBhdXNmw7xocmVuIgogCi0jOiBidWlsdGluL2FtLmM6MjE3NAorIzogYnVpbHRpbi9hbS5jOjIyMTYKIG1zZ2lkICJoaXN0b3JpY2FsIG9wdGlvbiAtLSBuby1vcCIKIG1zZ3N0ciAiaGlzdG9yaXNjaGUgT3B0aW9uIC0tIGtlaW4gRWZmZWt0IgogCi0jOiBidWlsdGluL2FtLmM6MjE3NgorIzogYnVpbHRpbi9hbS5jOjIyMTgKIG1zZ2lkICJhbGxvdyBmYWxsIGJhY2sgb24gM3dheSBtZXJnaW5nIGlmIG5lZWRlZCIKIG1zZ3N0ciAiZXJsYXViZSwgZmFsbHMgbm90d2VuZGlnLCBkYXMgWnVyw7xja2ZhbGxlbiBhdWYgZWluZW4gMy1XZWdlLU1lcmdlIgogCi0jOiBidWlsdGluL2FtLmM6MjE3NyBidWlsdGluL2luaXQtZGIuYzo0ODYgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1OAotIzogYnVpbHRpbi9yZXBhY2suYzozMDYKKyM6IGJ1aWx0aW4vYW0uYzoyMjE5IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5NCBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU4CisjOiBidWlsdGluL3JlcGFjay5jOjMwNCBidWlsdGluL3N0YXNoLmM6ODEyCiBtc2dpZCAiYmUgcXVpZXQiCiBtc2dzdHIgIndlbmlnZXIgQXVzZ2FiZW4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc5CisjOiBidWlsdGluL2FtLmM6MjIyMQogbXNnaWQgImFkZCBhIFNpZ25lZC1vZmYtYnkgbGluZSB0byB0aGUgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgImRlciBDb21taXQtQmVzY2hyZWlidW5nIGVpbmUgU2lnbmVkLW9mZi1ieSBaZWlsZSBoaW56dWbDvGdlbiIKIAotIzogYnVpbHRpbi9hbS5jOjIxODIKKyM6IGJ1aWx0aW4vYW0uYzoyMjI0CiBtc2dpZCAicmVjb2RlIGludG8gdXRmOCAoZGVmYXVsdCkiCiBtc2dzdHIgIm5hY2ggVVRGLTggdW1rb2RpZXJlbiAoU3RhbmRhcmQpIgogCi0jOiBidWlsdGluL2FtLmM6MjE4NAorIzogYnVpbHRpbi9hbS5jOjIyMjYKIG1zZ2lkICJwYXNzIC1rIGZsYWcgdG8gZ2l0LW1haWxpbmZvIgogbXNnc3RyICItayBhbiBnaXQtbWFpbGluZm8gw7xiZXJnZWJlbiIKIAotIzogYnVpbHRpbi9hbS5jOjIxODYKKyM6IGJ1aWx0aW4vYW0uYzoyMjI4CiBtc2dpZCAicGFzcyAtYiBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKIG1zZ3N0ciAiLWIgYW4gZ2l0LW1haWxpbmZvIMO8YmVyZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTg4CisjOiBidWlsdGluL2FtLmM6MjIzMAogbXNnaWQgInBhc3MgLW0gZmxhZyB0byBnaXQtbWFpbGluZm8iCiBtc2dzdHIgIi1tIGFuIGdpdC1tYWlsaW5mbyDDvGJlcmdlYmVuIgogCi0jOiBidWlsdGluL2FtLmM6MjE5MAorIzogYnVpbHRpbi9hbS5jOjIyMzIKIG1zZ2lkICJwYXNzIC0ta2VlcC1jciBmbGFnIHRvIGdpdC1tYWlsc3BsaXQgZm9yIG1ib3ggZm9ybWF0IgogbXNnc3RyICItLWtlZXAtY3IgYW4gZ2l0LW1haWxzcGxpdCBmw7xyIG1ib3gtRm9ybWF0IMO8YmVyZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTkzCisjOiBidWlsdGluL2FtLmM6MjIzNQogbXNnaWQgImRvIG5vdCBwYXNzIC0ta2VlcC1jciBmbGFnIHRvIGdpdC1tYWlsc3BsaXQgaW5kZXBlbmRlbnQgb2YgYW0ua2VlcGNyIgogbXNnc3RyICJrZWluIC0ta2VlcC1jciBhbiBnaXQtbWFpbHNwbGl0IMO8YmVyZ2ViZW4sIHVuYWJow6RuZ2lnIHZvbiBhbS5rZWVwY3IiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTk2CisjOiBidWlsdGluL2FtLmM6MjIzOAogbXNnaWQgInN0cmlwIGV2ZXJ5dGhpbmcgYmVmb3JlIGEgc2Npc3NvcnMgbGluZSIKIG1zZ3N0ciAiYWxsZXMgdm9yIGVpbmVyIFNjaGVyZW4tWmVpbGUgZW50ZmVybmVuIgogCi0jOiBidWlsdGluL2FtLmM6MjE5OCBidWlsdGluL2FtLmM6MjIwMSBidWlsdGluL2FtLmM6MjIwNCBidWlsdGluL2FtLmM6MjIwNwotIzogYnVpbHRpbi9hbS5jOjIyMTAgYnVpbHRpbi9hbS5jOjIyMTMgYnVpbHRpbi9hbS5jOjIyMTYgYnVpbHRpbi9hbS5jOjIyMTkKLSM6IGJ1aWx0aW4vYW0uYzoyMjI1CisjOiBidWlsdGluL2FtLmM6MjI0MCBidWlsdGluL2FtLmM6MjI0MyBidWlsdGluL2FtLmM6MjI0NiBidWlsdGluL2FtLmM6MjI0OQorIzogYnVpbHRpbi9hbS5jOjIyNTIgYnVpbHRpbi9hbS5jOjIyNTUgYnVpbHRpbi9hbS5jOjIyNTggYnVpbHRpbi9hbS5jOjIyNjEKKyM6IGJ1aWx0aW4vYW0uYzoyMjY3CiBtc2dpZCAicGFzcyBpdCB0aHJvdWdoIGdpdC1hcHBseSIKIG1zZ3N0ciAiYW4gZ2l0LWFwcGx5IMO8YmVyZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjE1IGJ1aWx0aW4vY29tbWl0LmM6MTM0MCBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzEKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NCBidWlsdGluL2dyZXAuYzo4NjggYnVpbHRpbi9tZXJnZS5jOjIzOQotIzogYnVpbHRpbi9wdWxsLmM6MTUxIGJ1aWx0aW4vcHVsbC5jOjIwOSBidWlsdGluL3JlYmFzZS5jOjg1NAotIzogYnVpbHRpbi9yZXBhY2suYzozMTcgYnVpbHRpbi9yZXBhY2suYzozMjEgYnVpbHRpbi9yZXBhY2suYzozMjMKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTEgYnVpbHRpbi9zaG93LXJlZi5jOjE3MSBidWlsdGluL3RhZy5jOjM4NgotIzogcGFyc2Utb3B0aW9ucy5oOjE0NCBwYXJzZS1vcHRpb25zLmg6MTQ2IHBhcnNlLW9wdGlvbnMuaDoyNjgKKyM6IGJ1aWx0aW4vYW0uYzoyMjU3IGJ1aWx0aW4vY29tbWl0LmM6MTM5MSBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzAKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MyBidWlsdGluL2dyZXAuYzo4NzEgYnVpbHRpbi9tZXJnZS5jOjI1MAorIzogYnVpbHRpbi9wdWxsLmM6MTQwIGJ1aWx0aW4vcHVsbC5jOjE5OSBidWlsdGluL3JlYmFzZS5jOjE1MDUKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE1IGJ1aWx0aW4vcmVwYWNrLmM6MzE5IGJ1aWx0aW4vcmVwYWNrLmM6MzIxCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUwIGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzIgYnVpbHRpbi90YWcuYzo0MDMKKyM6IHBhcnNlLW9wdGlvbnMuaDoxNTQgcGFyc2Utb3B0aW9ucy5oOjE3NSBwYXJzZS1vcHRpb25zLmg6MzE2CiBtc2dpZCAibiIKIG1zZ3N0ciAiQW56YWhsIgogCi0jOiBidWlsdGluL2FtLmM6MjIyMSBidWlsdGluL2JyYW5jaC5jOjYzNyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4Ci0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDQgYnVpbHRpbi90YWcuYzo0MjIgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzkKKyM6IGJ1aWx0aW4vYW0uYzoyMjYzIGJ1aWx0aW4vYnJhbmNoLmM6NjYxIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NiBidWlsdGluL3RhZy5jOjQzNyBidWlsdGluL3ZlcmlmeS10YWcuYzozOAogbXNnaWQgImZvcm1hdCIKIG1zZ3N0ciAiRm9ybWF0IgogCi0jOiBidWlsdGluL2FtLmM6MjIyMgorIzogYnVpbHRpbi9hbS5jOjIyNjQKIG1zZ2lkICJmb3JtYXQgdGhlIHBhdGNoKGVzKSBhcmUgaW4iCiBtc2dzdHIgIlBhdGNoLUZvcm1hdCIKIAotIzogYnVpbHRpbi9hbS5jOjIyMjgKKyM6IGJ1aWx0aW4vYW0uYzoyMjcwCiBtc2dpZCAib3ZlcnJpZGUgZXJyb3IgbWVzc2FnZSB3aGVuIHBhdGNoIGZhaWx1cmUgb2NjdXJzIgogbXNnc3RyICJNZWxkdW5nIGJlaSBmZWhsZXJoYWZ0ZXIgUGF0Y2gtQW53ZW5kdW5nIMO8YmVyc2NocmVpYmVuIgogCi0jOiBidWlsdGluL2FtLmM6MjIzMAorIzogYnVpbHRpbi9hbS5jOjIyNzIKIG1zZ2lkICJjb250aW51ZSBhcHBseWluZyBwYXRjaGVzIGFmdGVyIHJlc29sdmluZyBhIGNvbmZsaWN0IgogbXNnc3RyICJBbndlbmR1bmcgZGVyIFBhdGNoZXMgbmFjaCBBdWZsw7ZzdW5nIGVpbmVzIEtvbmZsaWt0ZXMgZm9ydHNldHplbiIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzMKKyM6IGJ1aWx0aW4vYW0uYzoyMjc1CiBtc2dpZCAic3lub255bXMgZm9yIC0tY29udGludWUiCiBtc2dzdHIgIlN5bm9ueW1lIGbDvHIgLS1jb250aW51ZSIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzYKKyM6IGJ1aWx0aW4vYW0uYzoyMjc4CiBtc2dpZCAic2tpcCB0aGUgY3VycmVudCBwYXRjaCIKIG1zZ3N0ciAiZGVuIGFrdHVlbGxlbiBQYXRjaCBhdXNsYXNzZW4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjM5CisjOiBidWlsdGluL2FtLmM6MjI4MQogbXNnaWQgInJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgYWJvcnQgdGhlIHBhdGNoaW5nIG9wZXJhdGlvbi4iCiBtc2dzdHIgIiIKICJ1cnNwcsO8bmdsaWNoZW4gQnJhbmNoIHdpZWRlcmhlcnN0ZWxsZW4gdW5kIEFud2VuZHVuZyBkZXIgUGF0Y2hlcyBhYmJyZWNoZW4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjQyCisjOiBidWlsdGluL2FtLmM6MjI4NAogbXNnaWQgImFib3J0IHRoZSBwYXRjaGluZyBvcGVyYXRpb24gYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcy4iCiBtc2dzdHIgIlBhdGNoLU9wZXJhdGlvbiBhYmJyZWNoZW4sIGFiZXIgSEVBRCBhbiBha3R1ZWxsZXIgU3RlbGxlIGJlbGFzc2VuIgogCi0jOiBidWlsdGluL2FtLmM6MjI0NQotbXNnaWQgInNob3cgdGhlIHBhdGNoIGJlaW5nIGFwcGxpZWQuIgorIzogYnVpbHRpbi9hbS5jOjIyODgKK21zZ2lkICJzaG93IHRoZSBwYXRjaCBiZWluZyBhcHBsaWVkIgogbXNnc3RyICJkZW4gUGF0Y2gsIGRlciBnZXJhZGUgYW5nZXdlbmRldCB3aXJkLCBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9hbS5jOjIyNDkKKyM6IGJ1aWx0aW4vYW0uYzoyMjkzCiBtc2dpZCAibGllIGFib3V0IGNvbW1pdHRlciBkYXRlIgogbXNnc3RyICJBdXRvci1EYXR1bSBhbHMgQ29tbWl0LURhdHVtIHZlcndlbmRlbiIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTEKKyM6IGJ1aWx0aW4vYW0uYzoyMjk1CiBtc2dpZCAidXNlIGN1cnJlbnQgdGltZXN0YW1wIGZvciBhdXRob3IgZGF0ZSIKIG1zZ3N0ciAiYWt0dWVsbGVuIFplaXRzdGVtcGVsIGFscyBBdXRvci1EYXR1bSB2ZXJ3ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjUzIGJ1aWx0aW4vY29tbWl0LmM6MTQ4MyBidWlsdGluL21lcmdlLmM6MjczCi0jOiBidWlsdGluL3B1bGwuYzoxODQgYnVpbHRpbi9yZWJhc2UuYzo4OTggYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgzCi0jOiBidWlsdGluL3JldmVydC5jOjExMyBidWlsdGluL3RhZy5jOjQwMgorIzogYnVpbHRpbi9hbS5jOjIyOTcgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMCBidWlsdGluL2NvbW1pdC5jOjE1MTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODcgYnVpbHRpbi9wdWxsLmM6MTc0IGJ1aWx0aW4vcmViYXNlLmM6NTE3CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NTYgYnVpbHRpbi9yZXZlcnQuYzoxMTcgYnVpbHRpbi90YWcuYzo0MTgKIG1zZ2lkICJrZXktaWQiCiBtc2dzdHIgIkdQRy1TY2hsw7xzc2Vsa2VubnVuZyIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9yZWJhc2UuYzo4OTkgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg0CisjOiBidWlsdGluL2FtLmM6MjI5OCBidWlsdGluL3JlYmFzZS5jOjUxOCBidWlsdGluL3JlYmFzZS5jOjE1NTcKIG1zZ2lkICJHUEctc2lnbiBjb21taXRzIgogbXNnc3RyICJDb21taXRzIG1pdCBHUEcgc2lnbmllcmVuIgogCi0jOiBidWlsdGluL2FtLmM6MjI1NworIzogYnVpbHRpbi9hbS5jOjIzMDEKIG1zZ2lkICIoaW50ZXJuYWwgdXNlIGZvciBnaXQtcmViYXNlKSIKIG1zZ3N0ciAiKGludGVybiBmw7xyIGdpdC1yZWJhc2UgdmVyd2VuZGV0KSIKIAotIzogYnVpbHRpbi9hbS5jOjIyNzUKKyM6IGJ1aWx0aW4vYW0uYzoyMzE5CiBtc2dpZCAiIgogIlRoZSAtYi8tLWJpbmFyeSBvcHRpb24gaGFzIGJlZW4gYSBuby1vcCBmb3IgbG9uZyB0aW1lLCBhbmRcbiIKICJpdCB3aWxsIGJlIHJlbW92ZWQuIFBsZWFzZSBkbyBub3QgdXNlIGl0IGFueW1vcmUuIgpAQCAtNzg0OSwxNiArMTAxMzcsMTYgQEAKICJEaWUgLWIvLS1iaW5hcnkgT3B0aW9uIGhhdCBzZWl0IExhbmdlbSBrZWluZW4gRWZmZWt0IHVuZCB3aXJkXG4iCiAiZW50ZmVybnQuIEJpdHRlIHZlcndlbmRlbiBTaWUgZGllc2UgbmljaHQgbWVoci4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjgyCisjOiBidWlsdGluL2FtLmM6MjMyNgogbXNnaWQgImZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gTGVzZW4gZGVzIEluZGV4IgogCi0jOiBidWlsdGluL2FtLmM6MjI5NworIzogYnVpbHRpbi9hbS5jOjIzNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJldmlvdXMgcmViYXNlIGRpcmVjdG9yeSAlcyBzdGlsbCBleGlzdHMgYnV0IG1ib3ggZ2l2ZW4uIgogbXNnc3RyICJWb3JoZXJpZ2VzIFJlYmFzZS1WZXJ6ZWljaG5pcyAlcyBleGlzdGllcnQgbm9jaCwgYWJlciBtYm94IGdlZ2ViZW4uIgogCi0jOiBidWlsdGluL2FtLmM6MjMyMQorIzogYnVpbHRpbi9hbS5jOjIzNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN0cmF5ICVzIGRpcmVjdG9yeSBmb3VuZC5cbiIKQEAgLTc4NjcsMTAgKzEwMTU1LDE0IEBACiAiU3RyYXkgJXMgVmVyemVpY2huaXMgZ2VmdW5kZW4uXG4iCiAiQmVudXR6ZW4gU2llIFwiZ2l0IGFtIC0tYWJvcnRcIiwgdW0gZXMgenUgZW50ZmVybmVuLiIKIAotIzogYnVpbHRpbi9hbS5jOjIzMjcKKyM6IGJ1aWx0aW4vYW0uYzoyMzcxCiBtc2dpZCAiUmVzb2x2ZSBvcGVyYXRpb24gbm90IGluIHByb2dyZXNzLCB3ZSBhcmUgbm90IHJlc3VtaW5nLiIKIG1zZ3N0ciAiRXMgaXN0IGtlaW5lIEF1ZmzDtnN1bmcgaW0gR2FuZ2UsIGVzIHdpcmQgbmljaHQgZm9ydGdlc2V0enQuIgogCisjOiBidWlsdGluL2FtLmM6MjM4MQorbXNnaWQgImludGVyYWN0aXZlIG1vZGUgcmVxdWlyZXMgcGF0Y2hlcyBvbiB0aGUgY29tbWFuZCBsaW5lIgorbXNnc3RyICJJbnRlcmFrdGl2ZXIgTW9kdXMgYmVuw7Z0aWd0IFBhdGNoZXMgw7xiZXIgZGllIEtvbW1hbmRvemVpbGUiCisKICM6IGJ1aWx0aW4vYXBwbHkuYzo4CiBtc2dpZCAiZ2l0IGFwcGx5IFs8b3B0aW9ucz5dIFs8cGF0Y2g+Li4uXSIKIG1zZ3N0ciAiZ2l0IGFwcGx5IFs8T3B0aW9uZW4+XSBbPFBhdGNoPi4uLl0iCkBAIC03ODg4LDg2ICsxMDE4MCwzMDQgQEAKIG1zZ2lkICJnaXQgYXJjaGl2ZTogUmVtb3RlIHdpdGggbm8gVVJMIgogbXNnc3RyICJnaXQgYXJjaGl2ZTogRXh0ZXJuZXMgQXJjaGl2IG9obmUgVVJMIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo1OAorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjEKIG1zZ2lkICJnaXQgYXJjaGl2ZTogZXhwZWN0ZWQgQUNLL05BSywgZ290IGEgZmx1c2ggcGFja2V0IgogbXNnc3RyICJnaXQgYXJjaGl2ZTogQUNLL05BSyBlcndhcnRldCwgRmx1c2gtUGFrZXQgYmVrb21tZW4iCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjYxCisjOiBidWlsdGluL2FyY2hpdmUuYzo2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXJjaGl2ZTogTkFDSyAlcyIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmU6IE5BQ0sgJXMiCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY0CisjOiBidWlsdGluL2FyY2hpdmUuYzo2NQogbXNnaWQgImdpdCBhcmNoaXZlOiBwcm90b2NvbCBlcnJvciIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmU6IFByb3Rva29sbGZlaGxlciIKIAotIzogYnVpbHRpbi9hcmNoaXZlLmM6NjgKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY5CiBtc2dpZCAiZ2l0IGFyY2hpdmU6IGV4cGVjdGVkIGEgZmx1c2giCiBtc2dzdHIgImdpdCBhcmNoaXZlOiBlcndhcnRldGUgZWluZSBTcMO8bHVuZyAoZmx1c2gpIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTIKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMgogbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLW5leHQtYWxsIFstLW5vLWNoZWNrb3V0XSIKIG1zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0tbmV4dC1hbGwgWy0tbm8tY2hlY2tvdXRdIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTMKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMwogbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDxiYWRfdGVybT4gPGdvb2RfdGVybT4iCiBtc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDxiYWRfdGVybT4gPGdvb2RfdGVybT4iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI0CiBtc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNsZWFuLXN0YXRlIgogbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2xlYW4tc3RhdGUiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo0NgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI1Cittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXJlc2V0IFs8Y29tbWl0Pl0iCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1yZXNldCBbPENvbW1pdD5dIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjYKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPHN0YXRlPiA8cmV2aXNpb24+IDxnb29kX3Rlcm0+ICIKKyI8YmFkX3Rlcm0+IgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPFp1c3RhbmQ+IDxSZXZpc2lvbj4gIgorIjxCZWdyaWZmX2d1dD4gPEJlZ3JpZmZfc2NobGVjaHQ+IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjcKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNoZWNrLWFuZC1zZXQtdGVybXMgPGNvbW1hbmQ+IDxnb29kX3Rlcm0+ICIKKyI8YmFkX3Rlcm0+IgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNoZWNrLWFuZC1zZXQtdGVybXMgPEJlZmVobD4gPEJlZ3JpZmZfZ3V0PiAiCisiPEJlZ3JpZmZfc2NobGVjaHQ+IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjgKK21zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtbmV4dC1jaGVjayA8Z29vZF90ZXJtPiA8YmFkX3Rlcm0+IFs8dGVybT5dIgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LW5leHQtY2hlY2sgPEJlZ3JpZmZfZ3V0PiA8QmVncmlmZl9zY2hsZWNodD4gIgorIls8QmVncmlmZj5dIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjkKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzAKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT08dGVybT4gLS10ZXJtLXtuZXcsYmFkfSIKKyI9PHRlcm0+XVstLW5vLWNoZWNrb3V0XSBbPGJhZD4gWzxnb29kPi4uLl1dIFstLV0gWzxwYXRocz4uLi5dIgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT08QmVncmlmZj4gLS10ZXJtLXtuZXcsIgorImJhZH09PEJlZ3JpZmY+XVstLW5vLWNoZWNrb3V0XSBbPHNjaGxlY2h0PiBbPGd1dD4uLi5dXSBbLS1dIFs8UGZhZGU+Li4uXSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgdGVybSIKIG1zZ3N0ciAiJyVzJyBpc3Qga2VpbiBnw7xsdGlnZXIgQmVncmlmZi4iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IHVzZSB0aGUgYnVpbHRpbiBjb21tYW5kICclcycgYXMgYSB0ZXJtIgogbXNnc3RyICJLYW5uIGRlbiBlaW5nZWJhdXRlbiBCZWZlaGwgJyVzJyBuaWNodCBhbHMgQmVncmlmZiB2ZXJ3ZW5kZW4uIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3QgY2hhbmdlIHRoZSBtZWFuaW5nIG9mIHRoZSB0ZXJtICclcyciCiBtc2dzdHIgIkthbm4gZGllIEJlZGV1dHVuZyB2b24gZGVtIEJlZ3JpZmYgJyVzJyBuaWNodCDDpG5kZXJuLiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjcxCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTExCiBtc2dpZCAicGxlYXNlIHVzZSB0d28gZGlmZmVyZW50IHRlcm1zIgogbXNnc3RyICJCaXR0ZSB2ZXJ3ZW5kZW4gU2llIHp3ZWkgdmVyc2NoaWVkZW5lIEJlZ3JpZmZlLiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjc4CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTE4CiBtc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGZpbGUgQklTRUNUX1RFUk1TIgogbXNnc3RyICJLb25udGUgZGllIERhdGVpIEJJU0VDVF9URVJNUyBuaWNodCDDtmZmbmVuLiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyMAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJXZSBhcmUgbm90IGJpc2VjdGluZy5cbiIKK21zZ3N0ciAiS2VpbmUgYmluw6RyZSBTdWNoZSBpbSBHYW5nZS5cbiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIKK21zZ3N0ciAiJyVzJyBpc3Qga2VpbiBnw7xsdGlnZXIgQ29tbWl0LiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY291bGQgbm90IGNoZWNrIG91dCBvcmlnaW5hbCBIRUFEICclcycuIFRyeSAnZ2l0IGJpc2VjdCByZXNldCA8Y29tbWl0PicuIgorbXNnc3RyICIiCisiS29ubnRlIGRlbiB1cnNwcsO8bmdsaWNoZW4gSEVBRCAnJXMnIG5pY2h0IGF1c2NoZWNrZW4uXG4iCisiVmVyc3VjaGVuIFNpZSAnZ2l0IGJpc2VjdCByZXNldCA8Q29tbWl0PicuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIkJhZCBiaXNlY3Rfd3JpdGUgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJVbmfDvGx0aWdlcyBcImJpc2VjdF93cml0ZVwiIEFyZ3VtZW50OiAlcyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBnZXQgdGhlIG9pZCBvZiB0aGUgcmV2ICclcyciCittc2dzdHIgIktvbm50ZSBkaWUgT0lEIGRlciBSZXZpc2lvbiAnJXMnIG5pY2h0IGVyaGFsdGVuLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIHRoZSBmaWxlICclcyciCittc2dzdHIgIktvbm50ZSBkaWUgRGF0ZWkgJyVzJyBuaWNodCDDtmZmbmVuLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGNvbW1hbmQ6IHlvdSdyZSBjdXJyZW50bHkgaW4gYSAlcy8lcyBiaXNlY3QiCittc2dzdHIgIlVuZ8O8bHRpZ2VyIEJlZmVobDogU2llIHNpbmQgZ2VyYWRlIGJlaSBlaW5lciBiaW7DpHJlbiAlcy8lcyBTdWNoZS4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICVzIGFuZCAlcyByZXZpc2lvbi5cbiIKKyJZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJXNcIiBhbmQgXCJnaXQgYmlzZWN0ICVzXCIgZm9yIHRoYXQuIgorbXNnc3RyICIiCisiU2llIG3DvHNzZW4gbWluZGVzdGVucyBlaW5lbiBcIiVzXCIgdW5kIGVpbmVuIFwiJXNcIiBDb21taXQgYW5nZWJlbi5cbiIKKyJTaWUga8O2bm5lbiBkYWbDvHIgXCJnaXQgYmlzZWN0ICVzXCIgdW5kIFwiZ2l0IGJpc2VjdCAlc1wiIGJlbnV0emVuLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IG5lZWQgdG8gc3RhcnQgYnkgXCJnaXQgYmlzZWN0IHN0YXJ0XCIuXG4iCisiWW91IHRoZW4gbmVlZCB0byBnaXZlIG1lIGF0IGxlYXN0IG9uZSAlcyBhbmQgJXMgcmV2aXNpb24uXG4iCisiWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICVzXCIgYW5kIFwiZ2l0IGJpc2VjdCAlc1wiIGZvciB0aGF0LiIKK21zZ3N0ciAiIgorIlNpZSBtw7xzc2VuIG1pdCBcImdpdCBiaXNlY3Qgc3RhcnRcIiBiZWdpbm5lbi5cbiIKKyJEYW5hY2ggbcO8c3NlbiBTaWUgbWluZGVzdGVucyBlaW5lbiBcIiVzXCIgdW5kIGVpbmVuIFwiJXNcIiBDb21taXQgYW5nZWJlbi5cbiIKKyJTaWUga8O2bm5lbiBkYWbDvHIgXCJnaXQgYmlzZWN0ICVzXCIgdW5kIFwiZ2l0IGJpc2VjdCAlc1wiIGJlbnV0emVuLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJiaXNlY3Rpbmcgb25seSB3aXRoIGEgJXMgY29tbWl0IgorbXNnc3RyICJCaW7DpHJlIFN1Y2hlIG51ciBtaXQgZWluZW0gJXMgQ29tbWl0LiIKKworIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtZXSBhbmQgW25dIGluIHlvdXIKKyMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKKyMuIGF0IHRoaXMgcG9pbnQuCisjLgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMxOAorbXNnaWQgIkFyZSB5b3Ugc3VyZSBbWS9uXT8gIgorbXNnc3RyICJTaW5kIFNpZSBzaWNoZXIgW1kvbl0/ICIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM3OQorbXNnaWQgIm5vIHRlcm1zIGRlZmluZWQiCittc2dzdHIgIktlaW5lIEJlZ3JpZmZlIGRlZmluaWVydC4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgY3VycmVudCB0ZXJtcyBhcmUgJXMgZm9yIHRoZSBvbGQgc3RhdGVcbiIKKyJhbmQgJXMgZm9yIHRoZSBuZXcgc3RhdGUuXG4iCittc2dzdHIgIiIKKyJJaHJlIGFrdHVlbGxlbiBCZWdyaWZmZSBzaW5kICVzIGbDvHIgZGVuIGFsdGVuIFp1c3RhbmRcbiIKKyJ1bmQgJXMgZsO8ciBkZW4gbmV1ZW4gWnVzdGFuZC5cbiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBhcmd1bWVudCAlcyBmb3IgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgorIlN1cHBvcnRlZCBvcHRpb25zIGFyZTogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCBhbmQgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKK21zZ3N0ciAiIgorIlVuZ8O8bHRpZ2VzIEFyZ3VtZW50ICVzIGbDvHIgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgorIlVudGVyc3TDvHR6dGUgT3B0aW9uZW4gc2luZDogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCB1bmQgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgb3B0aW9uOiAnJXMnIgorbXNnc3RyICJOaWNodCBlcmthbm50ZSBQb3NpdGlvbjogJyVzJyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IGFwcGVhciB0byBiZSBhIHZhbGlkIHJldmlzaW9uIgorbXNnc3RyICInJXMnIHNjaGVpbnQga2VpbiBnw7xsdGlnZXIgQ29tbWl0IHp1IHNlaW4uIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTE0Cittc2dpZCAiYmFkIEhFQUQgLSBJIG5lZWQgYSBIRUFEIgorbXNnc3RyICJVbmfDvGx0aWdlciBIRUFEIC0gSEVBRCB3aXJkIGJlbsO2dGlndC4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hlY2tpbmcgb3V0ICclcycgZmFpbGVkLiBUcnkgJ2dpdCBiaXNlY3Qgc3RhcnQgPHZhbGlkLWJyYW5jaD4nLiIKK21zZ3N0ciAiIgorIkF1c2NoZWNrZW4gdm9uICclcycgZmVobGdlc2NobGFnZW4uIFZlcnN1Y2hlbiBTaWUgJ2dpdCBiaXNlY3Qgc3RhcnQgIgorIjxnw7xsdGlnZXItQnJhbmNoPicuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTUwCittc2dpZCAid29uJ3QgYmlzZWN0IG9uIGNnLXNlZWsnZWQgdHJlZSIKK21zZ3N0ciAiIgorImJpbsOkcmUgU3VjaGUgYXVmIGVpbmVtIGR1cmNoICdjZy1zZWVrJyBnZcOkbmRlcnRlbSBWZXJ6ZWljaG5pcyBuaWNodCBtw7ZnbGljaCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU1MworbXNnaWQgImJhZCBIRUFEIC0gc3RyYW5nZSBzeW1ib2xpYyByZWYiCittc2dzdHIgIlVuZ8O8bHRpZ2VyIEhFQUQgLSBtZXJrd8O8cmRpZ2Ugc3ltYm9saXNjaGUgUmVmZXJlbnouIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTc3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmOiAnJXMnIgorbXNnc3RyICJVbmfDvGx0aWdlIFJlZmVyZW56OiAnJXMnIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjMzCiBtc2dpZCAicGVyZm9ybSAnZ2l0IGJpc2VjdCBuZXh0JyIKIG1zZ3N0ciAiJ2dpdCBiaXNlY3QgbmV4dCcgYXVzZsO8aHJlbiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyMgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzNQogbXNnaWQgIndyaXRlIHRoZSB0ZXJtcyB0byAuZ2l0L0JJU0VDVF9URVJNUyIKIG1zZ3N0ciAiZGllIEJlZ3JpZmZlIG5hY2ggLmdpdC9CSVNFQ1RfVEVSTVMgc2NocmVpYmVuIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTI0CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjM3CiBtc2dpZCAiY2xlYW51cCB0aGUgYmlzZWN0aW9uIHN0YXRlIgogbXNnc3RyICJkZW4gWnVzdGFuZCBkZXIgYmluw6RyZW4gU3VjaGUgYXVmcsOkdW1lbiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyNgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzOQogbXNnaWQgImNoZWNrIGZvciBleHBlY3RlZCByZXZzIgogbXNnc3RyICJhdWYgZXJ3YXJ0ZXRlIENvbW1pdHMgcHLDvGZlbiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyOAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0MQorbXNnaWQgInJlc2V0IHRoZSBiaXNlY3Rpb24gc3RhdGUiCittc2dzdHIgImRlbiBadXN0YW5kIGRlciBiaW7DpHJlbiBTdWNoZSB6dXLDvGNrc2V0emVuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQzCittc2dpZCAid3JpdGUgb3V0IHRoZSBiaXNlY3Rpb24gc3RhdGUgaW4gQklTRUNUX0xPRyIKK21zZ3N0ciAiZGVuIFp1c3RhbmQgZGVyIGJpbsOkcmVuIFN1Y2hlIG5hY2ggQklTRUNUX0xPRyBzY2hyZWliZW4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDUKK21zZ2lkICJjaGVjayBhbmQgc2V0IHRlcm1zIGluIGEgYmlzZWN0aW9uIHN0YXRlIgorbXNnc3RyICJCZWdyaWZmZSBpbm5lcmhhbGIgZWluZXIgYmluw6RyZW4gU3VjaGUgcHLDvGZlbiB1bmQgc2V0emVuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ3Cittc2dpZCAiY2hlY2sgd2hldGhlciBiYWQgb3IgZ29vZCB0ZXJtcyBleGlzdCIKK21zZ3N0ciAicHLDvGZlbiwgb2IgQmVncmlmZmUgZsO8ciBndXRlIHVuZCBzY2hsZWNodGUgQ29tbWl0cyBleGlzdGllcmVuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ5Cittc2dpZCAicHJpbnQgb3V0IHRoZSBiaXNlY3QgdGVybXMiCittc2dzdHIgImRpZSBCZWdyaWZmZSBmw7xyIGRpZSBiaW7DpHJlIFN1Y2hlIGF1c2dlYmVuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUxCittc2dpZCAic3RhcnQgdGhlIGJpc2VjdCBzZXNzaW9uIgorbXNnc3RyICJTaXR6dW5nIGbDvHIgYmluw6RyZSBTdWNoZSBzdGFydGVuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUzCiBtc2dpZCAidXBkYXRlIEJJU0VDVF9IRUFEIGluc3RlYWQgb2YgY2hlY2tpbmcgb3V0IHRoZSBjdXJyZW50IGNvbW1pdCIKIG1zZ3N0ciAiQklTRUNUX0hFQUQgYWt0dWFsaXNpZXJlbiwgYW5zdGF0dCBkZW4gYWt0dWVsbGVuIENvbW1pdCBhdXN6dWNoZWNrZW4iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNDMKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NTUKK21zZ2lkICJubyBsb2cgZm9yIEJJU0VDVF9XUklURSIKK21zZ3N0ciAia2VpbiBMb2cgZsO8ciBCSVNFQ1RfV1JJVEUiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NzMKIG1zZ2lkICItLXdyaXRlLXRlcm1zIHJlcXVpcmVzIHR3byBhcmd1bWVudHMiCiBtc2dzdHIgIi0td3JpdGUtdGVybXMgYmVuw7Z0aWd0IHp3ZWkgQXJndW1lbnRlLiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE0NworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY3NwogbXNnaWQgIi0tYmlzZWN0LWNsZWFuLXN0YXRlIHJlcXVpcmVzIG5vIGFyZ3VtZW50cyIKIG1zZ3N0ciAiLS1iaXNlY3QtY2xlYW4tc3RhdGUgZXJ3YXJ0ZXQga2VpbmUgQXJndW1lbnRlLiIKIAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY4NAorbXNnaWQgIi0tYmlzZWN0LXJlc2V0IHJlcXVpcmVzIGVpdGhlciBubyBhcmd1bWVudCBvciBhIGNvbW1pdCIKK21zZ3N0ciAiLS1iaXNlY3QtcmVzZXQgYmVuw7Z0aWd0IGVudHdlZGVyIGtlaW4gQXJndW1lbnQgb2RlciBlaW4gQ29tbWl0LiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY4OAorbXNnaWQgIi0tYmlzZWN0LXdyaXRlIHJlcXVpcmVzIGVpdGhlciA0IG9yIDUgYXJndW1lbnRzIgorbXNnc3RyICItLWJpc2VjdC13cml0ZSBiZW7DtnRpZ3QgZW50d2VkZXIgNCBvZGVyIDUgQXJndW1lbnRlLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY5NAorbXNnaWQgIi0tY2hlY2stYW5kLXNldC10ZXJtcyByZXF1aXJlcyAzIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1jaGVjay1hbmQtc2V0LXRlcm1zIGJlbsO2dGlndCAzIEFyZ3VtZW50ZS4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3MDAKK21zZ2lkICItLWJpc2VjdC1uZXh0LWNoZWNrIHJlcXVpcmVzIDIgb3IgMyBhcmd1bWVudHMiCittc2dzdHIgIi0tYmlzZWN0LW5leHQtY2hlY2sgYmVuw7Z0aWd0IDIgb2RlciAzIEFyZ3VtZW50ZS4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3MDYKK21zZ2lkICItLWJpc2VjdC10ZXJtcyByZXF1aXJlcyAwIG9yIDEgYXJndW1lbnQiCittc2dzdHIgIi0tYmlzZWN0LXRlcm1zIGJlbsO2dGlndCAwIG9kZXIgMSBBcmd1bWVudC4iCisKICM6IGJ1aWx0aW4vYmxhbWUuYzozMQogbXNnaWQgImdpdCBibGFtZSBbPG9wdGlvbnM+XSBbPHJldi1vcHRzPl0gWzxyZXY+XSBbLS1dIDxmaWxlPiIKIG1zZ3N0ciAiZ2l0IGJsYW1lIFs8T3B0aW9uZW4+XSBbPHJldi1vcHRzPl0gWzxDb21taXQ+XSBbLS1dIDxEYXRlaT4iCkBAIC03OTc2LDEzOCArMTA0ODYsMTQ5IEBACiBtc2dpZCAiPHJldi1vcHRzPiBhcmUgZG9jdW1lbnRlZCBpbiBnaXQtcmV2LWxpc3QoMSkiCiBtc2dzdHIgIjxyZXYtb3B0cz4gc2luZCBkb2t1bWVudGllcnQgaW4gZ2l0LXJldi1saXN0KDEpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NDA2CisjOiBidWlsdGluL2JsYW1lLmM6NDA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGluZyBhIGNvbG9yOiAlcyIKIG1zZ3N0ciAiRXJ3YXJ0ZSBlaW5lIEZhcmJlOiAlcyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjQxMworIzogYnVpbHRpbi9ibGFtZS5jOjQxNgogbXNnaWQgIm11c3QgZW5kIHdpdGggYSBjb2xvciIKIG1zZ3N0ciAiTXVzcyBtaXQgZWluZXIgRmFyYmUgZW5kZW4uIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzAwCisjOiBidWlsdGluL2JsYW1lLmM6NzI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29sb3IgJyVzJyBpbiBjb2xvci5ibGFtZS5yZXBlYXRlZExpbmVzIgogbXNnc3RyICJVbmfDvGx0aWdlIEZhcmJlICclcycgaW4gY29sb3IuYmxhbWUucmVwZWF0ZWRMaW5lcy4iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3MTgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3NDcKIG1zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciBibGFtZS5jb2xvcmluZyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgV2VydCBmw7xyIGJsYW1lLmNvbG9yaW5nLiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5MworIzogYnVpbHRpbi9ibGFtZS5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZmluZCByZXZpc2lvbiAlcyB0byBpZ25vcmUiCittc2dzdHIgIktvbm50ZSBDb21taXQgJXMgenVtIElnbm9yaWVyZW4gbmljaHQgZmluZGVuIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ0CiBtc2dpZCAiU2hvdyBibGFtZSBlbnRyaWVzIGFzIHdlIGZpbmQgdGhlbSwgaW5jcmVtZW50YWxseSIKIG1zZ3N0ciAiXCJibGFtZVwiLUVpbnRyw6RnZSBzY2hyaXR0d2Vpc2UgYW56ZWlnZW4sIHfDpGhyZW5kIHdpciBzaWUgZ2VuZXJpZXJlbiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5NAorIzogYnVpbHRpbi9ibGFtZS5jOjg0NQogbXNnaWQgIlNob3cgYmxhbmsgU0hBLTEgZm9yIGJvdW5kYXJ5IGNvbW1pdHMgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgImxlZXJlIFNIQS0xIGbDvHIgR3JlbnotQ29tbWl0cyBhbnplaWdlbiAoU3RhbmRhcmQ6IGF1cykiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTUKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDYKIG1zZ2lkICJEbyBub3QgdHJlYXQgcm9vdCBjb21taXRzIGFzIGJvdW5kYXJpZXMgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIlJvb3QtQ29tbWl0cyBuaWNodCBhbHMgR3JlbnplbiBiZWhhbmRlbG4gKFN0YW5kYXJkOiBhdXMpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk2CisjOiBidWlsdGluL2JsYW1lLmM6ODQ3CiBtc2dpZCAiU2hvdyB3b3JrIGNvc3Qgc3RhdGlzdGljcyIKIG1zZ3N0ciAiU3RhdGlzdGlrZW4genVtIEFyYmVpdHNhdWZ3YW5kIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk3CisjOiBidWlsdGluL2JsYW1lLmM6ODQ4CiBtc2dpZCAiRm9yY2UgcHJvZ3Jlc3MgcmVwb3J0aW5nIgogbXNnc3RyICJGb3J0c2Nocml0dHNhbnplaWdlIGVyendpbmdlbiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5OAorIzogYnVpbHRpbi9ibGFtZS5jOjg0OQogbXNnaWQgIlNob3cgb3V0cHV0IHNjb3JlIGZvciBibGFtZSBlbnRyaWVzIgogbXNnc3RyICJBdXNnYWJlYmV3ZXJ0dW5nIGbDvHIgXCJibGFtZVwiLUVpbnRyw6RnZSBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5OQorIzogYnVpbHRpbi9ibGFtZS5jOjg1MAogbXNnaWQgIlNob3cgb3JpZ2luYWwgZmlsZW5hbWUgKERlZmF1bHQ6IGF1dG8pIgogbXNnc3RyICJ1cnNwcsO8bmdsaWNoZW4gRGF0ZWluYW1lbiBhbnplaWdlbiAoU3RhbmRhcmQ6IGF1dG8pIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAwCisjOiBidWlsdGluL2JsYW1lLmM6ODUxCiBtc2dpZCAiU2hvdyBvcmlnaW5hbCBsaW5lbnVtYmVyIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICJ1cnNwcsO8bmdsaWNoZSBaZWlsZW5udW1tZXIgYW56ZWlnZW4gKFN0YW5kYXJkOiBhdXMpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAxCisjOiBidWlsdGluL2JsYW1lLmM6ODUyCiBtc2dpZCAiU2hvdyBpbiBhIGZvcm1hdCBkZXNpZ25lZCBmb3IgbWFjaGluZSBjb25zdW1wdGlvbiIKIG1zZ3N0ciAiQW56ZWlnZSBpbiBlaW5lbSBGb3JtYXQgZsO8ciBtYXNjaGluZWxsZSBBdXN3ZXJ0dW5nIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAyCisjOiBidWlsdGluL2JsYW1lLmM6ODUzCiBtc2dpZCAiU2hvdyBwb3JjZWxhaW4gZm9ybWF0IHdpdGggcGVyLWxpbmUgY29tbWl0IGluZm9ybWF0aW9uIgogbXNnc3RyICIiCiAiQW56ZWlnZSBpbiBGb3JtYXQgZsO8ciBGcmVtZHByb2dyYW1tZSBtaXQgQ29tbWl0LUluZm9ybWF0aW9uZW4gcHJvIFplaWxlIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAzCisjOiBidWlsdGluL2JsYW1lLmM6ODU0CiBtc2dpZCAiVXNlIHRoZSBzYW1lIG91dHB1dCBtb2RlIGFzIGdpdC1hbm5vdGF0ZSAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiIgogIkRlbiBnbGVpY2hlbiBBdXNnYWJlbW9kdXMgYmVudXR6ZW4gd2llIFwiZ2l0LWFubm90YXRlXCIgKFN0YW5kYXJkOiBhdXMpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA0CisjOiBidWlsdGluL2JsYW1lLmM6ODU1CiBtc2dpZCAiU2hvdyByYXcgdGltZXN0YW1wIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICJVbmJlYXJiZWl0ZXRlbiBaZWl0c3RlbXBlbCBhbnplaWdlbiAoU3RhbmRhcmQ6IGF1cykiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDUKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTYKIG1zZ2lkICJTaG93IGxvbmcgY29tbWl0IFNIQTEgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIkxhbmdlbiBDb21taXQtU0hBMSBhbnplaWdlbiAoU3RhbmRhcmQ6IGF1cykiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDYKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTcKIG1zZ2lkICJTdXBwcmVzcyBhdXRob3IgbmFtZSBhbmQgdGltZXN0YW1wIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICJEZW4gTmFtZW4gZGVzIEF1dG9ycyB1bmQgZGVuIFplaXRzdGVtcGVsIHVudGVyZHLDvGNrZW4gKFN0YW5kYXJkOiBhdXMpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA3CisjOiBidWlsdGluL2JsYW1lLmM6ODU4CiBtc2dpZCAiU2hvdyBhdXRob3IgZW1haWwgaW5zdGVhZCBvZiBuYW1lIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICIiCiAiQW5zdGF0dCBkZXMgTmFtZW5zIGRpZSBFLU1haWwtQWRyZXNzZSBkZXMgQXV0b3JzIGFuemVpZ2VuIChTdGFuZGFyZDogYXVzKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwOAorIzogYnVpbHRpbi9ibGFtZS5jOjg1OQogbXNnaWQgIklnbm9yZSB3aGl0ZXNwYWNlIGRpZmZlcmVuY2VzIgogbXNnc3RyICJVbnRlcnNjaGllZGUgaW0gV2hpdGVzcGFjZSBpZ25vcmllcmVuIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA5CisjOiBidWlsdGluL2JsYW1lLmM6ODYwIGJ1aWx0aW4vbG9nLmM6MTcwMgorbXNnaWQgInJldiIKK21zZ3N0ciAiQ29tbWl0IgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYwCittc2dpZCAiSWdub3JlIDxyZXY+IHdoZW4gYmxhbWluZyIKK21zZ3N0ciAiSWdub3JpZXJlIDxyZXY+IGJlaW0gQXVzZsO8aHJlbiB2b24gJ2JsYW1lJyIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MQorbXNnaWQgIklnbm9yZSByZXZpc2lvbnMgZnJvbSA8ZmlsZT4iCittc2dzdHIgIklnbm9yaWVyZSBDb21taXRzIGF1cyA8RGF0ZWk+IgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYyCiBtc2dpZCAiY29sb3IgcmVkdW5kYW50IG1ldGFkYXRhIGZyb20gcHJldmlvdXMgbGluZSBkaWZmZXJlbnRseSIKIG1zZ3N0ciAicmVkdW5kYW50ZSBNZXRhZGF0ZW4gZGVyIHZvcmhlcmlnZW4gWmVpbGUgdW50ZXJzY2hpZWRsaWNoIGVpbmbDpHJiZW4iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MTAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjMKIG1zZ2lkICJjb2xvciBsaW5lcyBieSBhZ2UiCiBtc2dzdHIgIlplaWxlbiBuYWNoIEFsdGVyIGVpbmbDpHJiZW4iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MTcKLW1zZ2lkICJVc2UgYW4gZXhwZXJpbWVudGFsIGhldXJpc3RpYyB0byBpbXByb3ZlIGRpZmZzIgotbXNnc3RyICIiCi0iZWluZSBleHBlcmltZW50ZWxsZSBIZXVyaXN0aWsgenVyIFZlcmJlc3NlcnVuZyBkZXIgRGFyc3RlbGx1bmdcbiIKLSJ2b24gVW50ZXJzY2hpZWRlbiB2ZXJ3ZW5kZW4iCi0KLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MTkKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjQKIG1zZ2lkICJTcGVuZCBleHRyYSBjeWNsZXMgdG8gZmluZCBiZXR0ZXIgbWF0Y2giCiBtc2dzdHIgIkzDpG5nZXIgYXJiZWl0ZW4sIHVtIGJlc3NlcmUgw5xiZXJlaW5zdGltbXVuZ2VuIHp1IGZpbmRlbiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMAorIzogYnVpbHRpbi9ibGFtZS5jOjg2NQogbXNnaWQgIlVzZSByZXZpc2lvbnMgZnJvbSA8ZmlsZT4gaW5zdGVhZCBvZiBjYWxsaW5nIGdpdC1yZXYtbGlzdCIKIG1zZ3N0ciAiQ29tbWl0cyB2b24gPERhdGVpPiBiZW51dHplbiwgYW5zdGF0dCBcImdpdC1yZXYtbGlzdFwiIGF1Znp1cnVmZW4iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjEKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjYKIG1zZ2lkICJVc2UgPGZpbGU+J3MgY29udGVudHMgYXMgdGhlIGZpbmFsIGltYWdlIgogbXNnc3RyICJJbmhhbHRlIGRlciA8RGF0ZWk+ZW4gYWxzIGVuZGfDvGx0aWdlcyBBYmJpbGQgYmVudXR6ZW4iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIgYnVpbHRpbi9ibGFtZS5jOjgyMworIzogYnVpbHRpbi9ibGFtZS5jOjg2NyBidWlsdGluL2JsYW1lLmM6ODY4CiBtc2dpZCAic2NvcmUiCiBtc2dzdHIgIkJld2VydHVuZyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMgorIzogYnVpbHRpbi9ibGFtZS5jOjg2NwogbXNnaWQgIkZpbmQgbGluZSBjb3BpZXMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCiBtc2dzdHIgImtvcGllcnRlIFplaWxlbiBpbm5lcmhhbGIgb2RlciB6d2lzY2hlbiBEYXRlaWVuIGZpbmRlbiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMworIzogYnVpbHRpbi9ibGFtZS5jOjg2OAogbXNnaWQgIkZpbmQgbGluZSBtb3ZlbWVudHMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCiBtc2dzdHIgInZlcnNjaG9iZW5lIFplaWxlbiBpbm5lcmhhbGIgb2RlciB6d2lzY2hlbiBEYXRlaWVuIGZpbmRlbiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyNAorIzogYnVpbHRpbi9ibGFtZS5jOjg2OQogbXNnaWQgIm4sbSIKIG1zZ3N0ciAibixtIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODI0CisjOiBidWlsdGluL2JsYW1lLmM6ODY5CiBtc2dpZCAiUHJvY2VzcyBvbmx5IGxpbmUgcmFuZ2UgbixtLCBjb3VudGluZyBmcm9tIDEiCiBtc2dzdHIgIm51ciBaZWlsZW4gaW0gQmVyZWljaCBuLG0gdmVyYXJiZWl0ZW4sIGdlesOkaGx0IHZvbiAxIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODczCisjOiBidWlsdGluL2JsYW1lLmM6OTIxCiBtc2dpZCAiLS1wcm9ncmVzcyBjYW4ndCBiZSB1c2VkIHdpdGggLS1pbmNyZW1lbnRhbCBvciBwb3JjZWxhaW4gZm9ybWF0cyIKIG1zZ3N0ciAiIgogIi0tcHJvZ3Jlc3Mga2FubiBuaWNodCBtaXQgLS1pbmNyZW1lbnRhbCBvZGVyIEZvcm1hdGVuIGbDvHIgRnJlbWRwcm9ncmFtbWVcbiIKQEAgLTgxMjEsMTggKzEwNjQyLDE4IEBACiAjLiB5b3VyIGxhbmd1YWdlIG1heSBuZWVkIG1vcmUgb3IgZmV3ZXIgZGlzcGxheQogIy4gY29sdW1ucy4KICMuCi0jOiBidWlsdGluL2JsYW1lLmM6OTI0CisjOiBidWlsdGluL2JsYW1lLmM6OTcyCiBtc2dpZCAiNCB5ZWFycywgMTEgbW9udGhzIGFnbyIKIG1zZ3N0ciAidm9yIDQgSmFocmVuIHVuZCAxMSBNb25hdGVuIgogCi0jOiBidWlsdGluL2JsYW1lLmM6MTAxMQorIzogYnVpbHRpbi9ibGFtZS5jOjEwNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmlsZSAlcyBoYXMgb25seSAlbHUgbGluZSIKIG1zZ2lkX3BsdXJhbCAiZmlsZSAlcyBoYXMgb25seSAlbHUgbGluZXMiCiBtc2dzdHJbMF0gIkRhdGVpICVzIGhhdCBudXIgJWx1IFplaWxlIgogbXNnc3RyWzFdICJEYXRlaSAlcyBoYXQgbnVyICVsdSBaZWlsZW4iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzoxMDU3CisjOiBidWlsdGluL2JsYW1lLmM6MTEyNQogbXNnaWQgIkJsYW1pbmcgbGluZXMiCiBtc2dzdHIgIlZlcmFyYmVpdGUgWmVpbGVuIgogCkBAIC04MTY0LDcgKzEwNjg1LDcgQEAKIG1zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstciB8IC1hXSBbLS1mb3JtYXRdIgogbXNnc3RyICJnaXQgYnJhbmNoIFs8T3B0aW9uZW4+XSBbLXIgfCAtYV0gWy0tZm9ybWF0XSIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxNTEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJkZWxldGluZyBicmFuY2ggJyVzJyB0aGF0IGhhcyBiZWVuIG1lcmdlZCB0b1xuIgpAQCAtODE3Myw3ICsxMDY5NCw3IEBACiAiZW50ZmVybmUgQnJhbmNoICclcycsIGRlciB6dXNhbW1lbmdlZsO8aHJ0IHd1cmRlIG1pdFxuIgogIiAgICAgICAgICclcycsIGFiZXIgbm9jaCBuaWNodCBtaXQgSEVBRCB6dXNhbW1lbmdlZsO8aHJ0IHd1cmRlLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxNTUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJub3QgZGVsZXRpbmcgYnJhbmNoICclcycgdGhhdCBpcyBub3QgeWV0IG1lcmdlZCB0b1xuIgpAQCAtODE4MiwxMiArMTA3MDMsMTIgQEAKICJlbnRmZXJuZSBCcmFuY2ggJyVzJyBuaWNodCwgZGVyIG5vY2ggbmljaHQgenVzYW1tZW5nZWbDvGhydCB3dXJkZSBtaXRcbiIKICIgICAgICAgICAnJXMnLCBvYndvaGwgZXIgbWl0IEhFQUQgenVzYW1tZW5nZWbDvGhydCB3dXJkZS4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTY5CisjOiBidWlsdGluL2JyYW5jaC5jOjE3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZG4ndCBsb29rIHVwIGNvbW1pdCBvYmplY3QgZm9yICclcyciCiBtc2dzdHIgIktvbm50ZSBDb21taXQtT2JqZWt0IGbDvHIgJyVzJyBuaWNodCBuYWNoc2NobGFnZW4uIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE3MworIzogYnVpbHRpbi9icmFuY2guYzoxNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBicmFuY2ggJyVzJyBpcyBub3QgZnVsbHkgbWVyZ2VkLlxuIgpAQCAtODE5NywxMTkgKzEwNzE4LDEyOCBAQAogIldlbm4gU2llIHNpY2hlciBzaW5kIGRpZXNlbiBCcmFuY2ggenUgZW50ZmVybmVuLCBmw7xocmVuIFNpZSAnZ2l0IGJyYW5jaCAtRCAiCiAiJXMnIGF1cy4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTg2CisjOiBidWlsdGluL2JyYW5jaC5jOjE4OQogbXNnaWQgIlVwZGF0ZSBvZiBjb25maWctZmlsZSBmYWlsZWQiCiBtc2dzdHIgIkFrdHVhbGlzaWVydW5nIGRlciBLb25maWd1cmF0aW9uc2RhdGVpIGZlaGxnZXNjaGxhZ2VuLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMTcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjIwCiBtc2dpZCAiY2Fubm90IHVzZSAtYSB3aXRoIC1kIgogbXNnc3RyICJrYW5uIC1hIG5pY2h0IG1pdCAtZCBiZW51dHplbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMjMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjI2CiBtc2dpZCAiQ291bGRuJ3QgbG9vayB1cCBjb21taXQgb2JqZWN0IGZvciBIRUFEIgogbXNnc3RyICJLb25udGUgQ29tbWl0LU9iamVrdCBmw7xyIEhFQUQgbmljaHQgbmFjaHNjaGxhZ2VuLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBkZWxldGUgYnJhbmNoICclcycgY2hlY2tlZCBvdXQgYXQgJyVzJyIKIG1zZ3N0ciAiS2FubiBCcmFuY2ggJyVzJyBuaWNodCBlbnRmZXJuZW4sIGF1c2dlY2hlY2t0IGluICclcycuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI1MgorIzogYnVpbHRpbi9icmFuY2guYzoyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3RlLXRyYWNraW5nIGJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCiBtc2dzdHIgIlJlbW90ZS1UcmFja2luZy1CcmFuY2ggJyVzJyBuaWNodCBnZWZ1bmRlbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNTMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjU2CiAjLCBjLWZvcm1hdAogbXNnaWQgImJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCiBtc2dzdHIgIkJyYW5jaCAnJXMnIG5pY2h0IGdlZnVuZGVuLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNjgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkVycm9yIGRlbGV0aW5nIHJlbW90ZS10cmFja2luZyBicmFuY2ggJyVzJyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gRW50ZmVybmVuIGRlcyBSZW1vdGUtVHJhY2tpbmctQnJhbmNoZXMgJyVzJyIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkVycm9yIGRlbGV0aW5nIGJyYW5jaCAnJXMnIgogbXNnc3RyICJGZWhsZXIgYmVpbSBFbnRmZXJuZW4gZGVzIEJyYW5jaGVzICclcyciCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc2CisjOiBidWlsdGluL2JyYW5jaC5jOjI3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWxldGVkIHJlbW90ZS10cmFja2luZyBicmFuY2ggJXMgKHdhcyAlcykuXG4iCiBtc2dzdHIgIlJlbW90ZS1UcmFja2luZy1CcmFuY2ggJXMgZW50ZmVybnQgKHdhciAlcykuXG4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc3CisjOiBidWlsdGluL2JyYW5jaC5jOjI4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWxldGVkIGJyYW5jaCAlcyAod2FzICVzKS5cbiIKIG1zZ3N0ciAiQnJhbmNoICVzIGVudGZlcm50ICh3YXIgJXMpLlxuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQyMSBidWlsdGluL3RhZy5jOjU5CisjOiBidWlsdGluL2JyYW5jaC5jOjQyOSBidWlsdGluL3RhZy5jOjYxCiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGZvcm1hdCBzdHJpbmciCiBtc2dzdHIgIktvbm50ZSBGb3JtYXRpZXJ1bmdzc3RyaW5nIG5pY2h0IHBhcnNlbi4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDU4CisjOiBidWlsdGluL2JyYW5jaC5jOjQ2MAorbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlIEhFQUQiCittc2dzdHIgIktvbm50ZSBIRUFELUNvbW1pdCBuaWNodCBhdWZsw7ZzZW4uIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ2NgorIywgYy1mb3JtYXQKK21zZ2lkICJIRUFEICglcykgcG9pbnRzIG91dHNpZGUgb2YgcmVmcy9oZWFkcy8iCittc2dzdHIgIkhFQUQgKCVzKSB3dXJkZSBuaWNodCB1bnRlciBcInJlZnMvaGVhZHMvXCIgZ2VmdW5kZW4hIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJXMgaXMgYmVpbmcgcmViYXNlZCBhdCAlcyIKIG1zZ3N0ciAiQnJhbmNoICVzIHdpcmQgYXVmICVzIHVtZ2VzZXR6dCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0NjIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAlcyBpcyBiZWluZyBiaXNlY3RlZCBhdCAlcyIKIG1zZ3N0ciAiQmluw6RyZSBTdWNoZSB2b24gQnJhbmNoICVzIHp1ICVzIGltIEdhbmdlIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ3OQorIzogYnVpbHRpbi9icmFuY2guYzo1MDIKIG1zZ2lkICJjYW5ub3QgY29weSB0aGUgY3VycmVudCBicmFuY2ggd2hpbGUgbm90IG9uIGFueS4iCiBtc2dzdHIgIiIKICJLYW5uIGRlbiBha3R1ZWxsZW4gQnJhbmNoIG5pY2h0IGtvcGllcmVuLCBzb2xhbmdlIFNpZSBzaWNoIGF1ZiBrZWluZW0gIgogImJlZmluZGVuLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0ODEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTA0CiBtc2dpZCAiY2Fubm90IHJlbmFtZSB0aGUgY3VycmVudCBicmFuY2ggd2hpbGUgbm90IG9uIGFueS4iCiBtc2dzdHIgIiIKICJLYW5uIGFrdHVlbGxlbiBCcmFuY2ggbmljaHQgdW1iZW5lbm5lbiwgc29sYW5nZSBTaWUgc2ljaCBhdWYga2VpbmVtIGJlZmluZGVuLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0OTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgYnJhbmNoIG5hbWU6ICclcyciCiBtc2dzdHIgIlVuZ8O8bHRpZ2VyIEJyYW5jaG5hbWU6ICclcyciCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTE5CisjOiBidWlsdGluL2JyYW5jaC5jOjU0MgogbXNnaWQgIkJyYW5jaCByZW5hbWUgZmFpbGVkIgogbXNnc3RyICJVbWJlbmVubnVuZyBkZXMgQnJhbmNoZXMgZmVobGdlc2NobGFnZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTIxCisjOiBidWlsdGluL2JyYW5jaC5jOjU0NAogbXNnaWQgIkJyYW5jaCBjb3B5IGZhaWxlZCIKIG1zZ3N0ciAiS29waWUgZGVzIEJyYW5jaGVzIGZlaGxnZXNjaGxhZ2VuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyNQorIzogYnVpbHRpbi9icmFuY2guYzo1NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3JlYXRlZCBhIGNvcHkgb2YgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyIKIG1zZ3N0ciAiS29waWUgZWluZXMgZmFsc2NoIGJlbmFubnRlbiBCcmFuY2hlcyAnJXMnIGVyc3RlbGx0LiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MjgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbmFtZWQgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyBhd2F5IgogbXNnc3RyICJmYWxzY2ggYmVuYW5udGVuIEJyYW5jaCAnJXMnIHVtYmVuYW5udCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MzQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCByZW5hbWVkIHRvICVzLCBidXQgSEVBRCBpcyBub3QgdXBkYXRlZCEiCiBtc2dzdHIgIkJyYW5jaCB1bWJlbmFubnQgenUgJXMsIGFiZXIgSEVBRCBpc3QgbmljaHQgYWt0dWFsaXNpZXJ0ISIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1NDMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTY2CiBtc2dpZCAiQnJhbmNoIGlzIHJlbmFtZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICIiCiAiQnJhbmNoIGlzdCB1bWJlbmFubnQsIGFiZXIgZGllIEFrdHVhbGlzaWVydW5nIGRlciBLb25maWd1cmF0aW9uc2RhdGVpIGlzdCAiCiAiZmVobGdlc2NobGFnZW4uIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU0NQorIzogYnVpbHRpbi9icmFuY2guYzo1NjgKIG1zZ2lkICJCcmFuY2ggaXMgY29waWVkLCBidXQgdXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKIG1zZ3N0ciAiIgogIkJyYW5jaCB3dXJkZSBrb3BpZXJ0LCBhYmVyIGRpZSBBa3R1YWxpc2llcnVuZyBkZXIgS29uZmlndXJhdGlvbnNkYXRlaSBpc3RcbiIKICJmZWhsZ2VzY2hsYWdlbi4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTYxCisjOiBidWlsdGluL2JyYW5jaC5jOjU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUGxlYXNlIGVkaXQgdGhlIGRlc2NyaXB0aW9uIGZvciB0aGUgYnJhbmNoXG4iCkBAIC04MzIwLDE4NyArMTA4NTAsMTgxIEBACiAiICAlc1xuIgogIlplaWxlbiwgZGllIG1pdCAnJWMnIGJlZ2lubmVuLCB3ZXJkZW4gZW50ZmVybnQuXG4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTk0CisjOiBidWlsdGluL2JyYW5jaC5jOjYxOAogbXNnaWQgIkdlbmVyaWMgb3B0aW9ucyIKIG1zZ3N0ciAiQWxsZ2VtZWluZSBPcHRpb25lbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIwCiBtc2dpZCAic2hvdyBoYXNoIGFuZCBzdWJqZWN0LCBnaXZlIHR3aWNlIGZvciB1cHN0cmVhbSBicmFuY2giCiBtc2dzdHIgIkhhc2ggdW5kIEJldHJlZmYgYW56ZWlnZW47IC12djogenVzw6R0emxpY2ggVXBzdHJlYW0tQnJhbmNoIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5NworIzogYnVpbHRpbi9icmFuY2guYzo2MjEKIG1zZ2lkICJzdXBwcmVzcyBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzIgogbXNnc3RyICJJbmZvcm1hdGlvbnNtZWxkdW5nZW4gdW50ZXJkcsO8Y2tlbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIyCiBtc2dpZCAic2V0IHVwIHRyYWNraW5nIG1vZGUgKHNlZSBnaXQtcHVsbCgxKSkiCiBtc2dzdHIgIk1vZHVzIHp1bSBGb2xnZW4gdm9uIEJyYW5jaGVzIGVpbnN0ZWxsZW4gKHNpZWhlIGdpdC1wdWxsKDEpKSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI0CiBtc2dpZCAiZG8gbm90IHVzZSIKIG1zZ3N0ciAibmljaHQgdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI2IGJ1aWx0aW4vcmViYXNlLmM6NTEzCiBtc2dpZCAidXBzdHJlYW0iCiBtc2dzdHIgIlVwc3RyZWFtIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMgorIzogYnVpbHRpbi9icmFuY2guYzo2MjYKIG1zZ2lkICJjaGFuZ2UgdGhlIHVwc3RyZWFtIGluZm8iCiBtc2dzdHIgIkluZm9ybWF0aW9uZW4genVtIFVwc3RyZWFtLUJyYW5jaCDDpG5kZXJuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMwotbXNnaWQgIlVuc2V0IHRoZSB1cHN0cmVhbSBpbmZvIgorIzogYnVpbHRpbi9icmFuY2guYzo2MjcKK21zZ2lkICJ1bnNldCB0aGUgdXBzdHJlYW0gaW5mbyIKIG1zZ3N0ciAiSW5mb3JtYXRpb25lbiB6dW0gVXBzdHJlYW0tQnJhbmNoIGVudGZlcm5lbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI4CiBtc2dpZCAidXNlIGNvbG9yZWQgb3V0cHV0IgogbXNnc3RyICJmYXJiaWdlIEF1c2dhYmVuIHZlcndlbmRlbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI5CiBtc2dpZCAiYWN0IG9uIHJlbW90ZS10cmFja2luZyBicmFuY2hlcyIKIG1zZ3N0ciAiYXVmIFJlbW90ZS1UcmFja2luZy1CcmFuY2hlcyB3aXJrZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA3IGJ1aWx0aW4vYnJhbmNoLmM6NjA5CisjOiBidWlsdGluL2JyYW5jaC5jOjYzMSBidWlsdGluL2JyYW5jaC5jOjYzMwogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgIm51ciBCcmFuY2hlcyBhdXNnZWJlbiwgZGllIGRpZXNlbiBDb21taXQgZW50aGFsdGVuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwOCBidWlsdGluL2JyYW5jaC5jOjYxMAorIzogYnVpbHRpbi9icmFuY2guYzo2MzIgYnVpbHRpbi9icmFuY2guYzo2MzQKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICJudXIgQnJhbmNoZXMgYXVzZ2ViZW4sIGRpZSBkaWVzZW4gQ29tbWl0IG5pY2h0IGVudGhhbHRlbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM3CiBtc2dpZCAiU3BlY2lmaWMgZ2l0LWJyYW5jaCBhY3Rpb25zOiIKIG1zZ3N0ciAic3BlemlmaXNjaGUgQWt0aW9uZW4gZsO8ciBcImdpdC1icmFuY2hcIjoiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE0CisjOiBidWlsdGluL2JyYW5jaC5jOjYzOAogbXNnaWQgImxpc3QgYm90aCByZW1vdGUtdHJhY2tpbmcgYW5kIGxvY2FsIGJyYW5jaGVzIgogbXNnc3RyICJSZW1vdGUtVHJhY2tpbmcgdW5kIGxva2FsZSBCcmFuY2hlcyBhdWZsaXN0ZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE2CisjOiBidWlsdGluL2JyYW5jaC5jOjY0MAogbXNnaWQgImRlbGV0ZSBmdWxseSBtZXJnZWQgYnJhbmNoIgogbXNnc3RyICJ2b2xsc3TDpG5kaWcgenVzYW1tZW5nZWbDvGhydGVuIEJyYW5jaCBlbnRmZXJuZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE3CisjOiBidWlsdGluL2JyYW5jaC5jOjY0MQogbXNnaWQgImRlbGV0ZSBicmFuY2ggKGV2ZW4gaWYgbm90IG1lcmdlZCkiCiBtc2dzdHIgIkJyYW5jaCBsw7ZzY2hlbiAoYXVjaCB3ZW5uIG5pY2h0IHp1c2FtbWVuZ2Vmw7xocnQpIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxOAorIzogYnVpbHRpbi9icmFuY2guYzo2NDIKIG1zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCBhbmQgaXRzIHJlZmxvZyIKIG1zZ3N0ciAiZWluZW4gQnJhbmNoIHVuZCBkZXNzZW4gUmVmbG9nIHZlcnNjaGllYmVuL3VtYmVuZW5uZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE5CisjOiBidWlsdGluL2JyYW5jaC5jOjY0MwogbXNnaWQgIm1vdmUvcmVuYW1lIGEgYnJhbmNoLCBldmVuIGlmIHRhcmdldCBleGlzdHMiCiBtc2dzdHIgIiIKICJlaW5lbiBCcmFuY2ggdmVyc2NoaWViZW4vdW1iZW5lbm5lbiwgYXVjaCB3ZW5uIGRhcyBaaWVsIGJlcmVpdHMgZXhpc3RpZXJ0IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMAorIzogYnVpbHRpbi9icmFuY2guYzo2NDQKIG1zZ2lkICJjb3B5IGEgYnJhbmNoIGFuZCBpdHMgcmVmbG9nIgogbXNnc3RyICJlaW5lbiBCcmFuY2ggdW5kIGRlc3NlbiBSZWZsb2cga29waWVyZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIxCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NQogbXNnaWQgImNvcHkgYSBicmFuY2gsIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAiZWluZW4gQnJhbmNoIGtvcGllcmVuLCBhdWNoIHdlbm4gZGFzIFppZWwgYmVyZWl0cyBleGlzdGllcnQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIyCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NgogbXNnaWQgImxpc3QgYnJhbmNoIG5hbWVzIgogbXNnc3RyICJCcmFuY2huYW1lbiBhdWZsaXN0ZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIzCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NworbXNnaWQgInNob3cgY3VycmVudCBicmFuY2ggbmFtZSIKK21zZ3N0ciAiWmVpZ2UgYWt0dWVsbGVuIEJyYW5jaC1OYW1lbi4iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ4CiBtc2dpZCAiY3JlYXRlIHRoZSBicmFuY2gncyByZWZsb2ciCiBtc2dzdHIgImRhcyBSZWZsb2cgZGVzIEJyYW5jaGVzIGVyemV1Z2VuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyNQorIzogYnVpbHRpbi9icmFuY2guYzo2NTAKIG1zZ2lkICJlZGl0IHRoZSBkZXNjcmlwdGlvbiBmb3IgdGhlIGJyYW5jaCIKIG1zZ3N0ciAiZGllIEJlc2NocmVpYnVuZyBmw7xyIGRlbiBCcmFuY2ggYmVhcmJlaXRlbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUxCiBtc2dpZCAiZm9yY2UgY3JlYXRpb24sIG1vdmUvcmVuYW1lLCBkZWxldGlvbiIKIG1zZ3N0ciAiRXJzdGVsbHVuZywgVmVyc2NoaWVidW5nL1VtYmVuZW5udW5nIG9kZXIgTMO2c2NodW5nIGVyendpbmdlbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUyCiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGFyZSBtZXJnZWQiCiBtc2dzdHIgIm51ciB6dXNhbW1lbmdlZsO8aHJ0ZSBCcmFuY2hlcyBhdXNnZWJlbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUzCiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGFyZSBub3QgbWVyZ2VkIgogbXNnc3RyICJudXIgbmljaHQgenVzYW1tZW5nZWbDvGhydGUgQnJhbmNoZXMgYXVzZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI5CisjOiBidWlsdGluL2JyYW5jaC5jOjY1NAogbXNnaWQgImxpc3QgYnJhbmNoZXMgaW4gY29sdW1ucyIKIG1zZ3N0ciAiQnJhbmNoZXMgaW4gU3BhbHRlbiBhdWZsaXN0ZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMwIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDAgYnVpbHRpbi9scy1yZW1vdGUuYzo3MAotIzogYnVpbHRpbi90YWcuYzo0MTUKLW1zZ2lkICJrZXkiCi1tc2dzdHIgIlNjaMO8c3NlbCIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MzEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MSBidWlsdGluL2xzLXJlbW90ZS5jOjcxCi0jOiBidWlsdGluL3RhZy5jOjQxNgotbXNnaWQgImZpZWxkIG5hbWUgdG8gc29ydCBvbiIKLW1zZ3N0ciAic29ydGllcmUgbmFjaCBkaWVzZW0gRmVsZCIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MzMgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MyBidWlsdGluL25vdGVzLmM6NDE1Ci0jOiBidWlsdGluL25vdGVzLmM6NDE4IGJ1aWx0aW4vbm90ZXMuYzo1NzggYnVpbHRpbi9ub3Rlcy5jOjU4MQotIzogYnVpbHRpbi90YWcuYzo0MTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjU3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIgYnVpbHRpbi9ub3Rlcy5jOjQxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQxOCBidWlsdGluL25vdGVzLmM6NTgxIGJ1aWx0aW4vbm90ZXMuYzo1ODQKKyM6IGJ1aWx0aW4vdGFnLmM6NDMzCiBtc2dpZCAib2JqZWN0IgogbXNnc3RyICJPYmpla3QiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM0CisjOiBidWlsdGluL2JyYW5jaC5jOjY1OAogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgb2YgdGhlIG9iamVjdCIKIG1zZ3N0ciAibnVyIEJyYW5jaGVzIHZvbiBkaWVzZW0gT2JqZWt0IGF1c2dlYmVuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzNiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ5IGJ1aWx0aW4vdGFnLmM6NDI1CisjOiBidWlsdGluL2JyYW5jaC5jOjY2MCBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ4IGJ1aWx0aW4vdGFnLmM6NDQwCiBtc2dpZCAic29ydGluZyBhbmQgZmlsdGVyaW5nIGFyZSBjYXNlIGluc2Vuc2l0aXZlIgogbXNnc3RyICJTb3J0aWVydW5nIHVuZCBGaWx0ZXJ1bmcgc2luZCB1bmFiaMOkbmdpZyB2b24gR3Jvw58tIHVuZCBLbGVpbnNjaHJlaWJ1bmciCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzggYnVpbHRpbi90YWcuYzo0MjMKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM5CisjOiBidWlsdGluL2JyYW5jaC5jOjY2MSBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4IGJ1aWx0aW4vdGFnLmM6NDM4CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzozOAogbXNnaWQgImZvcm1hdCB0byB1c2UgZm9yIHRoZSBvdXRwdXQiCiBtc2dzdHIgImbDvHIgZGllIEF1c2dhYmUgenUgdmVyd2VuZGVuZGVzIEZvcm1hdCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2NjAgYnVpbHRpbi9jbG9uZS5jOjczOQorIzogYnVpbHRpbi9icmFuY2guYzo2ODQgYnVpbHRpbi9jbG9uZS5jOjc4NQogbXNnaWQgIkhFQUQgbm90IGZvdW5kIGJlbG93IHJlZnMvaGVhZHMhIgogbXNnc3RyICJIRUFEIHd1cmRlIG5pY2h0IHVudGVyIFwicmVmcy9oZWFkc1wiIGdlZnVuZGVuISIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2ODMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzA4CiBtc2dpZCAiLS1jb2x1bW4gYW5kIC0tdmVyYm9zZSBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICJEaWUgT3B0aW9uZW4gLS1jb2x1bW4gdW5kIC0tdmVyYm9zZSBzaW5kIGlua29tcGF0aWJlbC4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Njk4IGJ1aWx0aW4vYnJhbmNoLmM6NzQ5IGJ1aWx0aW4vYnJhbmNoLmM6NzU4CisjOiBidWlsdGluL2JyYW5jaC5jOjcyMyBidWlsdGluL2JyYW5jaC5jOjc3NyBidWlsdGluL2JyYW5jaC5jOjc4NgogbXNnaWQgImJyYW5jaCBuYW1lIHJlcXVpcmVkIgogbXNnc3RyICJCcmFuY2huYW1lIGVyZm9yZGVybGljaCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MjUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzUzCiBtc2dpZCAiQ2Fubm90IGdpdmUgZGVzY3JpcHRpb24gdG8gZGV0YWNoZWQgSEVBRCIKIG1zZ3N0ciAienUgbG9zZ2Vsw7ZzdGVtIEhFQUQga2FubiBrZWluZSBCZXNjaHJlaWJ1bmcgaGludGVybGVndCB3ZXJkZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzMwCisjOiBidWlsdGluL2JyYW5jaC5jOjc1OAogbXNnaWQgImNhbm5vdCBlZGl0IGRlc2NyaXB0aW9uIG9mIG1vcmUgdGhhbiBvbmUgYnJhbmNoIgogbXNnc3RyICJCZXNjaHJlaWJ1bmcgdm9uIG1laHIgYWxzIGVpbmVtIEJyYW5jaCBrYW5uIG5pY2h0IGJlYXJiZWl0ZXQgd2VyZGVuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjczNworIzogYnVpbHRpbi9icmFuY2guYzo3NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gY29tbWl0IG9uIGJyYW5jaCAnJXMnIHlldC4iCiBtc2dzdHIgIk5vY2gga2VpbiBDb21taXQgaW4gQnJhbmNoICclcycuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc0MAorIzogYnVpbHRpbi9icmFuY2guYzo3NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gYnJhbmNoIG5hbWVkICclcycuIgogbXNnc3RyICJCcmFuY2ggJyVzJyBuaWNodCB2b3JoYW5kZW4uIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc1NQorIzogYnVpbHRpbi9icmFuY2guYzo3ODMKIG1zZ2lkICJ0b28gbWFueSBicmFuY2hlcyBmb3IgYSBjb3B5IG9wZXJhdGlvbiIKIG1zZ3N0ciAienUgdmllbGUgQnJhbmNoZXMgZsO8ciBlaW5lIEtvcGllcm9wZXJhdGlvbiBhbmdlZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzY0CisjOiBidWlsdGluL2JyYW5jaC5jOjc5MgogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyBmb3IgYSByZW5hbWUgb3BlcmF0aW9uIgogbXNnc3RyICJ6dSB2aWVsZSBBcmd1bWVudGUgZsO8ciBlaW5lIFVtYmVuZW5uZW4tT3BlcmF0aW9uIGFuZ2VnZWJlbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzk3CiBtc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIHRvIHNldCBuZXcgdXBzdHJlYW0iCiBtc2dzdHIgInp1IHZpZWxlIEFyZ3VtZW50ZSBhbmdlZ2ViZW4sIHVtIFVwc3RyZWFtLUJyYW5jaCB6dSBzZXR6ZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzczCisjOiBidWlsdGluL2JyYW5jaC5jOjgwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY291bGQgbm90IHNldCB1cHN0cmVhbSBvZiBIRUFEIHRvICVzIHdoZW4gaXQgZG9lcyBub3QgcG9pbnQgdG8gYW55IGJyYW5jaC4iCkBAIC04NTA4LDQwICsxMTAzMiw0MyBAQAogIktvbm50ZSBrZWluZW4gbmV1ZW4gVXBzdHJlYW0tQnJhbmNoIHZvbiBIRUFEIHp1ICVzIHNldHplbiwgZGEgZGllc2VyIGF1ZlxuIgogImtlaW5lbiBCcmFuY2ggemVpZ3QuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc3NiBidWlsdGluL2JyYW5jaC5jOjc5OAorIzogYnVpbHRpbi9icmFuY2guYzo4MDQgYnVpbHRpbi9icmFuY2guYzo4MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBicmFuY2ggJyVzJyIKIG1zZ3N0ciAiS2VpbiBzb2xjaGVyIEJyYW5jaCAnJXMnIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc4MAorIzogYnVpbHRpbi9icmFuY2guYzo4MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYnJhbmNoICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgIkJyYW5jaCAnJXMnIGV4aXN0aWVydCBuaWNodCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3OTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODIxCiBtc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIHRvIHVuc2V0IHVwc3RyZWFtIgogbXNnc3RyICIiCiAienUgdmllbGUgQXJndW1lbnRlIGFuZ2VnZWJlbiwgdW0gS29uZmlndXJhdGlvbiB6dSBVcHN0cmVhbS1CcmFuY2ggenUgIgogImVudGZlcm5lbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3OTYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODI1CiBtc2dpZCAiY291bGQgbm90IHVuc2V0IHVwc3RyZWFtIG9mIEhFQUQgd2hlbiBpdCBkb2VzIG5vdCBwb2ludCB0byBhbnkgYnJhbmNoLiIKIG1zZ3N0ciAiIgogIktvbm50ZSBLb25maWd1cmF0aW9uIHp1IFVwc3RyZWFtLUJyYW5jaCB2b24gSEVBRCBuaWNodCBlbnRmZXJuZW4sIGRhIGRpZXNlclxuIgogImF1ZiBrZWluZW4gQnJhbmNoIHplaWd0LiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MDIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIGhhcyBubyB1cHN0cmVhbSBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiQnJhbmNoICclcycgaGF0IGtlaW5lbiBVcHN0cmVhbS1CcmFuY2ggZ2VzZXR6dCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MTIKLW1zZ2lkICItYSBhbmQgLXIgb3B0aW9ucyB0byAnZ2l0IGJyYW5jaCcgZG8gbm90IG1ha2Ugc2Vuc2Ugd2l0aCBhIGJyYW5jaCBuYW1lIgorIzogYnVpbHRpbi9icmFuY2guYzo4NDEKK21zZ2lkICIiCisiVGhlIC1hLCBhbmQgLXIsIG9wdGlvbnMgdG8gJ2dpdCBicmFuY2gnIGRvIG5vdCB0YWtlIGEgYnJhbmNoIG5hbWUuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHVzZTogLWF8LXIgLS1saXN0IDxwYXR0ZXJuPj8iCiBtc2dzdHIgIiIKLSJEaWUgT3B0aW9uZW4gLWEgdW5kIC1yIGJlaSAnZ2l0IGJyYW5jaCcga8O2bm5lbiBuaWNodCBnZW1laW1zYW0gbWl0IGVpbmVtICIKLSJCcmFuY2huYW1lbiB2ZXJ3ZW5kZXQgd2VyZGVuLiIKKyJEaWUgT3B0aW9uZW4gLWEgdW5kIC1yIGJlaSAnZ2l0IGJyYW5jaCcga8O2bm5lbiBuaWNodCBtaXQgZWluZW0gQnJhbmNobmFtZW4gIgorInZlcndlbmRldCB3ZXJkZW4uXG4iCisiV29sbHRlbiBTaWUgLWF8LXIgLS1saXN0IDxNdXN0ZXI+IGJlbnV0emVuPyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MTUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODQ1CiBtc2dpZCAiIgogInRoZSAnLS1zZXQtdXBzdHJlYW0nIG9wdGlvbiBpcyBubyBsb25nZXIgc3VwcG9ydGVkLiBQbGVhc2UgdXNlICctLXRyYWNrJyBvciAiCiAiJy0tc2V0LXVwc3RyZWFtLXRvJyBpbnN0ZWFkLiIKQEAgLTg1NDksMjAgKzExMDc2LDY1IEBACiAiRGllICctLXNldC11cHN0cmVhbScgT3B0aW9uIHdpcmQgbmljaHQgbMOkbmdlciB1bnRlcnN0w7x0enQuXG4iCiAiQml0dGUgYmVudXR6ZW4gU2llIHN0YXR0ZGVzc2VuICctLXRyYWNrJyBvZGVyICctLXNldC11cHN0cmVhbS10bycuIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjQ1CisjOiBidWlsdGluL2J1bmRsZS5jOjE1IGJ1aWx0aW4vYnVuZGxlLmM6MjMKK21zZ2lkICJnaXQgYnVuZGxlIGNyZWF0ZSBbPG9wdGlvbnM+XSA8ZmlsZT4gPGdpdC1yZXYtbGlzdCBhcmdzPiIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSBjcmVhdGUgWzxPcHRpb25lbj5dIDxEYXRlaT4gPGdpdC1yZXYtbGlzdCBBcmd1bWVudGU+IgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE2IGJ1aWx0aW4vYnVuZGxlLmM6MjgKK21zZ2lkICJnaXQgYnVuZGxlIHZlcmlmeSBbPG9wdGlvbnM+XSA8ZmlsZT4iCittc2dzdHIgImdpdCBidW5kbGUgdmVyaWZ5IFs8T3B0aW9uZW4+XSA8RGF0ZWk+IgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE3IGJ1aWx0aW4vYnVuZGxlLmM6MzMKK21zZ2lkICJnaXQgYnVuZGxlIGxpc3QtaGVhZHMgPGZpbGU+IFs8cmVmbmFtZT4uLi5dIgorbXNnc3RyICJnaXQgYnVuZGxlIGxpc3QtaGVhZHMgPERhdGVpPiBbPFJlZmVyZW56bmFtZT4uLi5dIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE4IGJ1aWx0aW4vYnVuZGxlLmM6MzgKK21zZ2lkICJnaXQgYnVuZGxlIHVuYnVuZGxlIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSB1bmJ1bmRsZSA8RGF0ZWk+IFs8UmVmZXJlbnpuYW1lPi4uLl0iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NjYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzc1Cittc2dpZCAiZG8gbm90IHNob3cgcHJvZ3Jlc3MgbWV0ZXIiCittc2dzdHIgImtlaW5lIEZvcnRzY2hyaXR0c2FuemVpZ2UgYW56ZWlnZW4iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NjggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzc3Cittc2dpZCAic2hvdyBwcm9ncmVzcyBtZXRlciIKK21zZ3N0ciAiRm9ydHNjaHJpdHRzYW56ZWlnZSBhbnplaWdlbiIKKworIzogYnVpbHRpbi9idW5kbGUuYzo3MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzkKK21zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKK21zZ3N0ciAiRm9yc2Nocml0dHNhbnplaWdlIHfDpGhyZW5kIGRlcyBTY2hyZWliZW5zIHZvbiBPYmpla3RlbiBhbnplaWdlbiIKKworIzogYnVpbHRpbi9idW5kbGUuYzo3MyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODIKK21zZ2lkICJzaW1pbGFyIHRvIC0tYWxsLXByb2dyZXNzIHdoZW4gcHJvZ3Jlc3MgbWV0ZXIgaXMgc2hvd24iCittc2dzdHIgIsOkaG5saWNoIHp1IC0tYWxsLXByb2dyZXNzIHdlbm4gRm9ydHNjaHJpdHRzYW56ZWlnZSBkYXJzdGVsbHQgd2lyZCIKKworIzogYnVpbHRpbi9idW5kbGUuYzo5MworbXNnaWQgIk5lZWQgYSByZXBvc2l0b3J5IHRvIGNyZWF0ZSBhIGJ1bmRsZS4iCittc2dzdHIgIlVtIGVpbiBQYWtldCB6dSBlcnN0ZWxsZW4gd2lyZCBlaW4gUmVwb3NpdG9yeSBiZW7DtnRpZ3QuIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjEwNAorbXNnaWQgImRvIG5vdCBzaG93IGJ1bmRsZSBkZXRhaWxzIgorbXNnc3RyICJLZWluZSBCdW5kbGUtRGV0YWlscyBhbnplaWdlbiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgb2theVxuIgogbXNnc3RyICIlcyBpc3QgaW4gT3JkbnVuZ1xuIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjU4Ci1tc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKLW1zZ3N0ciAiVW0gZWluIFBha2V0IHp1IGVyc3RlbGxlbiB3aXJkIGVpbiBSZXBvc2l0b3J5IGJlbsO2dGlndC4iCi0KLSM6IGJ1aWx0aW4vYnVuZGxlLmM6NjIKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTYwCiBtc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gdW5idW5kbGUuIgogbXNnc3RyICJadW0gRW50cGFja2VuIHdpcmQgZWluIFJlcG9zaXRvcnkgYmVuw7Z0aWd0LiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU4NworIzogYnVpbHRpbi9idW5kbGUuYzoxNjggYnVpbHRpbi9yZW1vdGUuYzoxNjg2Cittc2dpZCAiYmUgdmVyYm9zZTsgbXVzdCBiZSBwbGFjZWQgYmVmb3JlIGEgc3ViY29tbWFuZCIKK21zZ3N0ciAiZXJ3ZWl0ZXJ0ZSBBdXNnYWJlbjsgbXVzcyB2b3IgZWluZW0gVW50ZXJiZWZlaGwgYW5nZWdlYmVuIHdlcmRlbiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxOTAgYnVpbHRpbi9yZW1vdGUuYzoxNzE3CisjLCBjLWZvcm1hdAorbXNnaWQgIlVua25vd24gc3ViY29tbWFuZDogJXMiCittc2dzdHIgIlVuYmVrYW5udGVyIFVudGVyYmVmZWhsOiAlcyIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU5NQogbXNnaWQgIiIKICJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtIgogInAgfCA8dHlwZT4gfCAtLXRleHRjb252IHwgLS1maWx0ZXJzKSBbLS1wYXRoPTxwYXRoPl0gPG9iamVjdD4iCkBAIC04NTcwLDcgKzExMTQyLDcgQEAKICJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtIgogInAgfCA8QXJ0PiB8IC0tdGV4dGNvbnYgfCAtLWZpbHRlcnMpIFstLXBhdGg9PFBmYWQ+XSA8T2JqZWt0PiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU4OAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU5NgogbXNnaWQgIiIKICJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCiAiZmlsdGVyc10iCkBAIC04NTc4LDEzOCArMTExNTAsMTM4IEBACiAiZ2l0IGNhdC1maWxlICgtLWJhdGNoIHwgLS1iYXRjaC1jaGVjaykgWy0tZm9sbG93LXN5bWxpbmtzXSBbLS10ZXh0Y29udiB8IC0tIgogImZpbHRlcnNdIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjA5CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjE3CiBtc2dpZCAib25seSBvbmUgYmF0Y2ggb3B0aW9uIG1heSBiZSBzcGVjaWZpZWQiCiBtc2dzdHIgIk51ciBlaW5lIEJhdGNoLU9wdGlvbiBlcmxhdWJ0LiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYyNworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNQogbXNnaWQgIjx0eXBlPiBjYW4gYmUgb25lIG9mOiBibG9iLCB0cmVlLCBjb21taXQsIHRhZyIKIG1zZ3N0ciAiPEFydD4ga2FubiBzZWluOiBibG9iLCB0cmVlLCBjb21taXQsIHRhZyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYyOAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNgogbXNnaWQgInNob3cgb2JqZWN0IHR5cGUiCiBtc2dzdHIgIk9iamVrdGFydCBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYyOQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNwogbXNnaWQgInNob3cgb2JqZWN0IHNpemUiCiBtc2dzdHIgIk9iamVrdGdyw7bDn2UgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzEKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzkKIG1zZ2lkICJleGl0IHdpdGggemVybyB3aGVuIHRoZXJlJ3Mgbm8gZXJyb3IiCiBtc2dzdHIgIm1pdCBSw7xja2dhYmV3ZXJ0IDAgYmVlbmRlbiwgd2VubiBrZWluIEZlaGxlciBhdWZnZXRyZXRlbiBpc3QiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzIKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDAKIG1zZ2lkICJwcmV0dHktcHJpbnQgb2JqZWN0J3MgY29udGVudCIKIG1zZ3N0ciAiYW5zcHJlY2hlbmRlIEFuemVpZ2UgZGVzIE9iamVrdGluaGFsdGVzIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM0CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQyCiBtc2dpZCAiZm9yIGJsb2Igb2JqZWN0cywgcnVuIHRleHRjb252IG9uIG9iamVjdCdzIGNvbnRlbnQiCiBtc2dzdHIgImVpbmUgVGV4dGtvbnZlcnRpZXJ1bmcgYXVmIGRlbiBJbmhhbHQgdm9uIEJsb2ItT2JqZWt0ZW4gYXVzZsO8aHJlbiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNgorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NAogbXNnaWQgImZvciBibG9iIG9iamVjdHMsIHJ1biBmaWx0ZXJzIG9uIG9iamVjdCdzIGNvbnRlbnQiCiBtc2dzdHIgImbDvHIgQmxvYi1PYmpla3RlLCBGaWx0ZXIgYXVmIE9iamVrdC1JbmhhbHRlIGF1c2bDvGhyZW4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzcgZ2l0LXN1Ym1vZHVsZS5zaDo4NTcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDUgZ2l0LXN1Ym1vZHVsZS5zaDoxMDAyCiBtc2dpZCAiYmxvYiIKIG1zZ3N0ciAiQmxvYiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzOAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NgogbXNnaWQgInVzZSBhIHNwZWNpZmljIHBhdGggZm9yIC0tdGV4dGNvbnYvLS1maWx0ZXJzIgogbXNnc3RyICJlaW5lbiBiZXN0aW1tdGVuIFBmYWQgZsO8ciAtLXRleHRjb252Ly0tZmlsdGVycyB2ZXJ3ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDAKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDgKIG1zZ2lkICJhbGxvdyAtcyBhbmQgLXQgdG8gd29yayB3aXRoIGJyb2tlbi9jb3JydXB0IG9iamVjdHMiCiBtc2dzdHIgIi1zIHVuZCAtdCBtaXQgYmVzY2jDpGRpZ3RlbiBPYmpla3RlbiBlcmxhdWJlbiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0OQogbXNnaWQgImJ1ZmZlciAtLWJhdGNoIG91dHB1dCIKIG1zZ3N0ciAiQXVzZ2FiZSB2b24gLS1iYXRjaCBwdWZmZXJuIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjQzCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjUxCiBtc2dpZCAic2hvdyBpbmZvIGFuZCBjb250ZW50IG9mIG9iamVjdHMgZmVkIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICIiCiAiQW56ZWlnZSB2b24gSW5mb3JtYXRpb25lbiB1bmQgSW5oYWx0IHZvbiBPYmpla3RlbiwgZ2VsZXNlbiB2b24gZGVyIFN0YW5kYXJkLSIKICJFaW5nYWJlIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjQ3CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjU1CiBtc2dpZCAic2hvdyBpbmZvIGFib3V0IG9iamVjdHMgZmVkIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICIiCiAiQW56ZWlnZSB2b24gSW5mb3JtYXRpb25lbiDDvGJlciBPYmpla3RlLCBnZWxlc2VuIHZvbiBkZXIgU3RhbmRhcmQtRWluZ2FiZSIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1MQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1OQogbXNnaWQgImZvbGxvdyBpbi10cmVlIHN5bWxpbmtzICh1c2VkIHdpdGggLS1iYXRjaCBvciAtLWJhdGNoLWNoZWNrKSIKIG1zZ3N0ciAiIgogInN5bWJvbGlzY2hlbiBWZXJrbsO8cGZ1bmdlbiBpbm5lcmhhbGIgZGVzIFJlcG9zaXRvcmllcyBmb2xnZW4gKHZlcndlbmRldCBtaXQgIgogIi0tYmF0Y2ggb2RlciAtLWJhdGNoLWNoZWNrKSIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1MworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY2MQogbXNnaWQgInNob3cgYWxsIG9iamVjdHMgd2l0aCAtLWJhdGNoIG9yIC0tYmF0Y2gtY2hlY2siCiBtc2dzdHIgImFsbGUgT2JqZWt0ZSBtaXQgLS1iYXRjaCBvZGVyIC0tYmF0Y2gtY2hlY2sgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTUKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NjMKIG1zZ2lkICJkbyBub3Qgb3JkZXIgLS1iYXRjaC1hbGwtb2JqZWN0cyBvdXRwdXQiCiBtc2dzdHIgIkF1c2dhYmUgdm9uIC0tYmF0Y2gtYWxsLW9iamVjdHMgbmljaHQgb3JkbmVuIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxMgorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTMKIG1zZ2lkICJnaXQgY2hlY2stYXR0ciBbLWEgfCAtLWFsbCB8IDxhdHRyPi4uLl0gWy0tXSA8cGF0aG5hbWU+Li4uIgogbXNnc3RyICJnaXQgY2hlY2stYXR0ciBbLWEgfCAtLWFsbCB8IDxBdHRyaWJ1dD4uLi5dIFstLV0gPFBmYWRuYW1lPi4uLiIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTMKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjE0CiBtc2dpZCAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSIKIG1zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPEF0dHJpYnV0Pi4uLl0iCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIwCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMQogbXNnaWQgInJlcG9ydCBhbGwgYXR0cmlidXRlcyBzZXQgb24gZmlsZSIKIG1zZ3N0ciAiYWxsZSBBdHRyaWJ1dGUgZWluZXIgRGF0ZWkgYXVzZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIxCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMgogbXNnaWQgInVzZSAuZ2l0YXR0cmlidXRlcyBvbmx5IGZyb20gdGhlIGluZGV4IgogbXNnc3RyICJudXIgLmdpdGF0dHJpYnV0ZXMgdm9tIEluZGV4IHZlcndlbmRlbiIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNCBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAxCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMyBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI1IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKIG1zZ2lkICJyZWFkIGZpbGUgbmFtZXMgZnJvbSBzdGRpbiIKIG1zZ3N0ciAiRGF0ZWluYW1lbiB2b24gZGVyIFN0YW5kYXJkLUVpbmdhYmUgbGVzZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjI0IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjYKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjI1IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjcKIG1zZ2lkICJ0ZXJtaW5hdGUgaW5wdXQgYW5kIG91dHB1dCByZWNvcmRzIGJ5IGEgTlVMIGNoYXJhY3RlciIKIG1zZ3N0ciAiRWludHLDpGdlIHZvbiBFaW4tIHVuZCBBdXNnYWJlIG1pdCBOVUwtWmVpY2hlbiBhYnNjaGxpZcOfZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjAgYnVpbHRpbi9jaGVja291dC5jOjEyMzQgYnVpbHRpbi9nYy5jOjUxNwotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NQorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyMSBidWlsdGluL2NoZWNrb3V0LmM6MTQ2NCBidWlsdGluL2djLmM6NTM3CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk5CiBtc2dpZCAic3VwcHJlc3MgcHJvZ3Jlc3MgcmVwb3J0aW5nIgogbXNnc3RyICJGb3J0c2Nocml0dHNhbnplaWdlIHVudGVyZHLDvGNrZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjgKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjkKIG1zZ2lkICJzaG93IG5vbi1tYXRjaGluZyBpbnB1dCBwYXRocyIKIG1zZ3N0ciAiRWluZ2FiZS1QZmFkZSBvaG5lIMOcYmVyZWluc3RpbW11bmdlbiBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzozMAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzozMQogbXNnaWQgImlnbm9yZSBpbmRleCB3aGVuIGNoZWNraW5nIgogbXNnc3RyICJJbmRleCBiZWkgZGVyIFByw7xmdW5nIGlnbm9yaWVyZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTU5CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2MwogbXNnaWQgImNhbm5vdCBzcGVjaWZ5IHBhdGhuYW1lcyB3aXRoIC0tc3RkaW4iCiBtc2dzdHIgIkFuZ2FiZSB2b24gUGZhZG5hbWVuIGthbm4gbmljaHQgZ2VtZWluc2FtIG1pdCAtLXN0ZGluIHZlcndlbmRldCB3ZXJkZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTYyCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2NgogbXNnaWQgIi16IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLXN0ZGluIgogbXNnc3RyICJEaWUgT3B0aW9uIC16IGthbm4gbnVyIG1pdCAtLXN0ZGluIHZlcndlbmRldCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2NAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjgKIG1zZ2lkICJubyBwYXRoIHNwZWNpZmllZCIKIG1zZ3N0ciAia2VpbiBQZmFkIGFuZ2VnZWJlbiIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjgKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTcyCiBtc2dpZCAiLS1xdWlldCBpcyBvbmx5IHZhbGlkIHdpdGggYSBzaW5nbGUgcGF0aG5hbWUiCiBtc2dzdHIgIkRpZSBPcHRpb24gLS1xdWlldCBpc3QgbnVyIG1pdCBlaW5lbSBlaW56ZWxuZW4gUGZhZG5hbWVuIGfDvGx0aWcuIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3MAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzQKIG1zZ2lkICJjYW5ub3QgaGF2ZSBib3RoIC0tcXVpZXQgYW5kIC0tdmVyYm9zZSIKIG1zZ3N0ciAiIgogIkRpZSBPcHRpb25lbiAtLXF1aWV0IHVuZCAtLXZlcmJvc2Uga8O2bm5lbiBuaWNodCBnZW1laW5zYW0gdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTczCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3NwogbXNnaWQgIi0tbm9uLW1hdGNoaW5nIGlzIG9ubHkgdmFsaWQgd2l0aCAtLXZlcmJvc2UiCiBtc2dzdHIgIi0tbm9uLW1hdGNoaW5nIGlzdCBudXIgbWl0IC0tdmVyYm9zZSB6dWzDpHNzaWciCiAKQEAgLTg3MzAsNTcgKzExMzAyLDU3IEBACiBtc2dpZCAibm8gY29udGFjdHMgc3BlY2lmaWVkIgogbXNnc3RyICJrZWluZSBLb250YWt0ZSBhbmdlZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxMjgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxMzEKIG1zZ2lkICJnaXQgY2hlY2tvdXQtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKIG1zZ3N0ciAiZ2l0IGNoZWNrb3V0LWluZGV4IFs8T3B0aW9uZW4+XSBbLS1dIFs8RGF0ZWk+Li4uXSIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE0NQorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE0OAogbXNnaWQgInN0YWdlIHNob3VsZCBiZSBiZXR3ZWVuIDEgYW5kIDMgb3IgYWxsIgogbXNnc3RyICItLXN0YWdlIHNvbGx0ZSB6d2lzY2hlbiAxIHVuZCAzIG9kZXIgJ2FsbCcgc2VpbiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2MQorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NAogbXNnaWQgImNoZWNrIG91dCBhbGwgZmlsZXMgaW4gdGhlIGluZGV4IgogbXNnc3RyICJhbGxlIERhdGVpZW4gaW0gSW5kZXggYXVzY2hlY2tlbiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2MgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NQogbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBleGlzdGluZyBmaWxlcyIKIG1zZ3N0ciAiZGFzIMOcYmVyc2NocmVpYmVuIGJlcmVpdHMgZXhpc3RpZXJlbmRlciBEYXRlaWVuIGVyendpbmdlbiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NwogbXNnaWQgIm5vIHdhcm5pbmcgZm9yIGV4aXN0aW5nIGZpbGVzIGFuZCBmaWxlcyBub3QgaW4gaW5kZXgiCiBtc2dzdHIgIiIKICJrZWluZSBXYXJudW5nIGbDvHIgZXhpc3RpZXJlbmRlIERhdGVpZW4sIHVuZCBEYXRlaWVuLCBkaWUgc2ljaCBuaWNodCBpbSBJbmRleCAiCiAiYmVmaW5kZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjkKIG1zZ2lkICJkb24ndCBjaGVja291dCBuZXcgZmlsZXMiCiBtc2dzdHIgImtlaW5lIG5ldWVuIERhdGVpZW4gYXVzY2hlY2tlbiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2OAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3MQogbXNnaWQgInVwZGF0ZSBzdGF0IGluZm9ybWF0aW9uIGluIHRoZSBpbmRleCBmaWxlIgogbXNnc3RyICJEYXRlaWluZm9ybWF0aW9uZW4gaW4gZGVyIEluZGV4LURhdGVpIGFrdHVhbGlzaWVyZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzUKIG1zZ2lkICJyZWFkIGxpc3Qgb2YgcGF0aHMgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgImVpbmUgTGlzdGUgdm9uIFBmYWRlbiB2b24gZGVyIFN0YW5kYXJkLUVpbmdhYmUgbGVzZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzcKIG1zZ2lkICJ3cml0ZSB0aGUgY29udGVudCB0byB0ZW1wb3JhcnkgZmlsZXMiCiBtc2dzdHIgImRlbiBJbmhhbHQgaW4gdGVtcG9yw6RyZSBEYXRlaWVuIHNjaHJlaWJlbiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NSBidWlsdGluL2NvbHVtbi5jOjMxCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2OCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3MQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTMKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NjgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzggYnVpbHRpbi9jb2x1bW4uYzozMQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDExIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTA5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjcyCiBtc2dpZCAic3RyaW5nIgogbXNnc3RyICJaZWljaGVua2V0dGUiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzkKIG1zZ2lkICJ3aGVuIGNyZWF0aW5nIGZpbGVzLCBwcmVwZW5kIDxzdHJpbmc+IgogbXNnc3RyICIiCiAid2VubiBEYXRlaWVuIGVyemV1Z3Qgd2VyZGVuLCBzdGVsbGUgPFplaWNoZW5rZXR0ZT4gZGVtIERhdGVpbmFtZW4gdm9yYW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxODEKIG1zZ2lkICJjb3B5IG91dCB0aGUgZmlsZXMgZnJvbSBuYW1lZCBzdGFnZSIKIG1zZ3N0ciAiRGF0ZWllbiB2b24gZGVtIGJlbmFubnRlbiBTdGFuZCBrb3BpZXJlbiIKIApAQCAtODc5MiwxMDYgKzExMzY0LDE1OSBAQAogbXNnaWQgImdpdCBjaGVja291dCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIC0tIDxmaWxlPi4uLiIKIG1zZ3N0ciAiZ2l0IGNoZWNrb3V0IFs8T3B0aW9uZW4+XSBbPEJyYW5jaD5dIC0tIDxEYXRlaT4uLi4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDQgYnVpbHRpbi9jaGVja291dC5jOjE3NworIzogYnVpbHRpbi9jaGVja291dC5jOjM3Cittc2dpZCAiZ2l0IHN3aXRjaCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIgorbXNnc3RyICJnaXQgc3dpdGNoIFs8T3B0aW9uZW4+XSBbPEJyYW5jaD5dIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDIKK21zZ2lkICJnaXQgcmVzdG9yZSBbPG9wdGlvbnM+XSBbLS1zb3VyY2U9PGJyYW5jaD5dIDxmaWxlPi4uLiIKK21zZ3N0ciAiZ2l0IHJlc3RvcmUgWzxPcHRpb25lbj5dIFstLXNvdXJjZT08QnJhbmNoPl0gPERhdGVpPi4uLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NSBidWlsdGluL2NoZWNrb3V0LmM6MjE0CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG91ciB2ZXJzaW9uIgogbXNnc3RyICJQZmFkICclcycgaGF0IG5pY2h0IHVuc2VyZSBWZXJzaW9uLiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjE0NiBidWlsdGluL2NoZWNrb3V0LmM6MTc5CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgdGhlaXIgdmVyc2lvbiIKIG1zZ3N0ciAiUGZhZCAnJXMnIGhhdCBuaWNodCBkZXJlbiBWZXJzaW9uLiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjE2MgorIzogYnVpbHRpbi9jaGVja291dC5jOjE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSBhbGwgbmVjZXNzYXJ5IHZlcnNpb25zIgogbXNnc3RyICJQZmFkICclcycgaGF0IG5pY2h0IGFsbGUgbm90d2VuZGlnZW4gVmVyc2lvbmVuLiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjIwNgorIzogYnVpbHRpbi9jaGVja291dC5jOjI0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSBuZWNlc3NhcnkgdmVyc2lvbnMiCiBtc2dzdHIgIlBmYWQgJyVzJyBoYXQgbmljaHQgZGllIG5vdHdlbmRpZ2VuIFZlcnNpb25lbi4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMjQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNjEKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnOiBjYW5ub3QgbWVyZ2UiCiBtc2dzdHIgIlBmYWQgJyVzJzoga2FubiBuaWNodCB6dXNhbW1lbmbDvGhyZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNDAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGFkZCBtZXJnZSByZXN1bHQgZm9yICclcyciCiBtc2dzdHIgIktvbm50ZSBNZXJnZS1FcmdlYm5pcyB2b24gJyVzJyBuaWNodCBoaW56dWbDvGdlbi4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNjIgYnVpbHRpbi9jaGVja291dC5jOjI2NSBidWlsdGluL2NoZWNrb3V0LmM6MjY4Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjcxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY3JlYXRlZCAlZCBtZXJnZSBjb25mbGljdCIKK21zZ2lkX3BsdXJhbCAiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0cyIKK21zZ3N0clswXSAiJWQgTWVyZ2UtS29uZmxpa3Qgd2llZGVyIGVyc3RlbGx0IgorbXNnc3RyWzFdICIlZCBNZXJnZS1Lb25mbGlrdGUgd2llZGVyIGVyc3RlbGx0IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0ZWQgJWQgcGF0aCBmcm9tICVzIgorbXNnaWRfcGx1cmFsICJVcGRhdGVkICVkIHBhdGhzIGZyb20gJXMiCittc2dzdHJbMF0gIiVkIFBmYWQgdm9uICVzIGFrdHVhbGlzaWVydCIKK21zZ3N0clsxXSAiJWQgUGZhZGUgdm9uICVzIGFrdHVhbGlzaWVydCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4OQorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSB0aGUgaW5kZXgiCittc2dpZF9wbHVyYWwgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSB0aGUgaW5kZXgiCittc2dzdHJbMF0gIiVkIFBmYWQgdm9tIEluZGV4IGFrdHVhbGlzaWVydCIKK21zZ3N0clsxXSAiJWQgUGZhZGUgdm9tIEluZGV4IGFrdHVhbGlzaWVydCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQxMiBidWlsdGluL2NoZWNrb3V0LmM6NDE1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHVwZGF0aW5nIHBhdGhzIgogbXNnc3RyICInJXMnIGthbm4gbmljaHQgbWl0IGRlciBBa3R1YWxpc2llcnVuZyB2b24gUGZhZGVuIHZlcndlbmRldCB3ZXJkZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzQgYnVpbHRpbi9jaGVja291dC5jOjI3NworIzogYnVpbHRpbi9jaGVja291dC5jOjQyNSBidWlsdGluL2NoZWNrb3V0LmM6NDI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKIG1zZ3N0ciAiJyVzJyBrYW5uIG5pY2h0IG1pdCAnJXMnIHZlcndlbmRldCB3ZXJkZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyODAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHVwZGF0ZSBwYXRocyBhbmQgc3dpdGNoIHRvIGJyYW5jaCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUuIgogbXNnc3RyICIiCiAiS2FubiBuaWNodCBnbGVpY2h6ZWl0aWcgUGZhZGUgYWt0dWFsaXNpZXJlbiB1bmQgenUgQnJhbmNoICclcycgd2VjaHNlbG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNDkgYnVpbHRpbi9jaGVja291dC5jOjM1NgorIzogYnVpbHRpbi9jaGVja291dC5jOjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICJuZWl0aGVyICclcycgb3IgJyVzJyBpcyBzcGVjaWZpZWQiCittc2dzdHIgIldlZGVyICclcycgbm9jaCAnJXMnIGlzdCBhbmdlZ2ViZW4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBtdXN0IGJlIHVzZWQgd2hlbiAnJXMnIGlzIG5vdCBzcGVjaWZpZWQiCittc2dzdHIgIiclcycga2FubiBudXIgZ2VudXR6dCB3ZXJkZW4sIHdlbm4gJyVzJyBuaWNodCB2ZXJ3ZW5kZXQgd2lyZCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQ0NSBidWlsdGluL2NoZWNrb3V0LmM6NDUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgb3IgJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgorbXNnc3RyICInJXMnIG9kZXIgJyVzJyBrYW5uIG5pY2h0IG1pdCAlcyB2ZXJ3ZW5kZXQgd2VyZGVuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTA5IGJ1aWx0aW4vY2hlY2tvdXQuYzo1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGlzIHVubWVyZ2VkIgogbXNnc3RyICJQZmFkICclcycgaXN0IG5pY2h0IHp1c2FtbWVuZ2Vmw7xocnQuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NjA4CisjOiBidWlsdGluL2NoZWNrb3V0LmM6Njg0IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MTA2CiBtc2dpZCAieW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiCiBtc2dzdHIgIlNpZSBtw7xzc2VuIHp1ZXJzdCBkaWUgS29uZmxpa3RlIGluIElocmVtIGFrdHVlbGxlbiBJbmRleCBhdWZsw7ZzZW4uIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NzQ1CisjOiBidWlsdGluL2NoZWNrb3V0LmM6NzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjYW5ub3QgY29udGludWUgd2l0aCBzdGFnZWQgY2hhbmdlcyBpbiB0aGUgZm9sbG93aW5nIGZpbGVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiS2FubiBuaWNodCBtaXQgdm9yZ2VtZXJrdGVuIMOEbmRlcnVuZ2VuIGluIGZvbGdlbmRlbiBEYXRlaWVuIGZvcnRzZXR6ZW46XG4iCisiJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2FuIG5vdCBkbyByZWZsb2cgZm9yICclcyc6ICVzXG4iCiBtc2dzdHIgIkthbm4gXCJyZWZsb2dcIiBmw7xyICclcycgbmljaHQgZHVyY2hmw7xocmVuOiAlc1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Nzg2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODc5CiBtc2dpZCAiSEVBRCBpcyBub3cgYXQiCiBtc2dzdHIgIkhFQUQgaXN0IGpldHp0IGJlaSIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc5MCBidWlsdGluL2Nsb25lLmM6NjkyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODgzIGJ1aWx0aW4vY2xvbmUuYzo3MTcKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIEhFQUQiCiBtc2dzdHIgIktvbm50ZSBIRUFEIG5pY2h0IGFrdHVhbGlzaWVyZW4uIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Nzk0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlc2V0IGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIlNldHplIEJyYW5jaCAnJXMnIG5ldVxuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Nzk3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFscmVhZHkgb24gJyVzJ1xuIgogbXNnc3RyICJCZXJlaXRzIGF1ZiAnJXMnXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3dpdGNoZWQgdG8gYW5kIHJlc2V0IGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIlp1IHVtZ2VzZXR6dGVtIEJyYW5jaCAnJXMnIGdld2VjaHNlbHRcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjgwMyBidWlsdGluL2NoZWNrb3V0LmM6MTE2NgorIzogYnVpbHRpbi9jaGVja291dC5jOjg5NiBidWlsdGluL2NoZWNrb3V0LmM6MTMyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJTd2l0Y2hlZCB0byBhIG5ldyBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICJadSBuZXVlbSBCcmFuY2ggJyVzJyBnZXdlY2hzZWx0XG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3dpdGNoZWQgdG8gYnJhbmNoICclcydcbiIKIG1zZ3N0ciAiWnUgQnJhbmNoICclcycgZ2V3ZWNoc2VsdFxuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODU2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAuLi4gYW5kICVkIG1vcmUuXG4iCiBtc2dzdHIgIiAuLi4gdW5kICVkIHdlaXRlcmUuXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4NjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIldhcm5pbmc6IHlvdSBhcmUgbGVhdmluZyAlZCBjb21taXQgYmVoaW5kLCBub3QgY29ubmVjdGVkIHRvXG4iCkBAIC04OTE0LDcgKzExNTM5LDcgQEAKICJcbiIKICIlc1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODgxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJZiB5b3Ugd2FudCB0byBrZWVwIGl0IGJ5IGNyZWF0aW5nIGEgbmV3IGJyYW5jaCwgdGhpcyBtYXkgYmUgYSBnb29kIHRpbWVcbiIKQEAgLTg5NDEsMTc3ICsxMTU2NiwzMCBAQAogIiBnaXQgYnJhbmNoIDxuZXVlci1CcmFuY2huYW1lPiAlc1xuIgogIlxuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTEzCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTAwOQogbXNnaWQgImludGVybmFsIGVycm9yIGluIHJldmlzaW9uIHdhbGsiCiBtc2dzdHIgImludGVybmVyIEZlaGxlciBpbSBSZXZpc2lvbnNnYW5nIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTE3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTAxMwogbXNnaWQgIlByZXZpb3VzIEhFQUQgcG9zaXRpb24gd2FzIgogbXNnc3RyICJWb3JoZXJpZ2UgUG9zaXRpb24gdm9uIEhFQUQgd2FyIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTQ1IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTYxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTA1MyBidWlsdGluL2NoZWNrb3V0LmM6MTMxNQogbXNnaWQgIllvdSBhcmUgb24gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iCiBtc2dzdHIgIlNpZSBzaW5kIGF1ZiBlaW5lbSBCcmFuY2gsIGRlciBub2NoIG5pY2h0IGdlYm9yZW4gaXN0IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTA2NgotIywgYy1mb3JtYXQKLW1zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQsICVkIGdpdmVuLiIKLW1zZ3N0ciAibnVyIGVpbmUgUmVmZXJlbnogZXJ3YXJ0ZXQsICVkIGdlZ2ViZW4uIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTEwNyBidWlsdGluL3dvcmt0cmVlLmM6Mjg5IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCByZWZlcmVuY2U6ICVzIgotbXNnc3RyICJVbmfDvGx0aWdlIFJlZmVyZW56OiAlcyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExMzYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicmVmZXJlbmNlIGlzIG5vdCBhIHRyZWU6ICVzIgotbXNnc3RyICJSZWZlcmVueiBpc3Qga2VpbiBcIlRyZWVcIi1PYmpla3Q6ICVzIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE3NQotbXNnaWQgInBhdGhzIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgotbXNnc3RyICJQZmFkZSBrw7ZubmVuIG5pY2h0IGJlaW0gV2VjaHNlbG4gdm9uIEJyYW5jaGVzIHZlcndlbmRldCB3ZXJkZW4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTc4IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTgyCi0jLCBjLWZvcm1hdAotbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMiCi1tc2dzdHIgIiclcycga2FubiBuaWNodCBiZWltIFdlY2hzZWxuIHZvbiBCcmFuY2hlcyB2ZXJ3ZW5kZXQgd2VyZGVuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE4NiBidWlsdGluL2NoZWNrb3V0LmM6MTE4OSBidWlsdGluL2NoZWNrb3V0LmM6MTE5NAotIzogYnVpbHRpbi9jaGVja291dC5jOjExOTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICclcyciCi1tc2dzdHIgIiclcycga2FubiBuaWNodCBtaXQgJyVzJyB2ZXJ3ZW5kZXQgd2VyZGVuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIwMgotIywgYy1mb3JtYXQKLW1zZ2lkICJDYW5ub3Qgc3dpdGNoIGJyYW5jaCB0byBhIG5vbi1jb21taXQgJyVzJyIKLW1zZ3N0ciAiS2FubiBCcmFuY2ggbmljaHQgenUgTmljaHQtQ29tbWl0ICclcycgd2VjaHNlbG4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM1IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM3IGJ1aWx0aW4vY2xvbmUuYzoxMTkKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY5IGJ1aWx0aW4vcmVtb3RlLmM6MTcxIGJ1aWx0aW4vd29ya3RyZWUuYzo0ODgKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTAKLW1zZ2lkICJicmFuY2giCi1tc2dzdHIgIkJyYW5jaCIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMzYKLW1zZ2lkICJjcmVhdGUgYW5kIGNoZWNrb3V0IGEgbmV3IGJyYW5jaCIKLW1zZ3N0ciAiZWluZW4gbmV1ZW4gQnJhbmNoIGVyemV1Z2VuIHVuZCBhdXNjaGVja2VuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIzOAotbXNnaWQgImNyZWF0ZS9yZXNldCBhbmQgY2hlY2tvdXQgYSBicmFuY2giCi1tc2dzdHIgImVpbmVuIEJyYW5jaCBlcnN0ZWxsZW4vdW1zZXR6ZW4gdW5kIGF1c2NoZWNrZW4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM5Ci1tc2dpZCAiY3JlYXRlIHJlZmxvZyBmb3IgbmV3IGJyYW5jaCIKLW1zZ3N0ciAiZGFzIFJlZmxvZyBmw7xyIGRlbiBuZXVlbiBCcmFuY2ggZXJ6ZXVnZW4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQwIGJ1aWx0aW4vd29ya3RyZWUuYzo0OTIKLW1zZ2lkICJkZXRhY2ggSEVBRCBhdCBuYW1lZCBjb21taXQiCi1tc2dzdHIgIkhFQUQgYmVpIGJlbmFubnRlbSBDb21taXQgbG9zbMO2c2VuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MQotbXNnaWQgInNldCB1cHN0cmVhbSBpbmZvIGZvciBuZXcgYnJhbmNoIgotbXNnc3RyICJJbmZvcm1hdGlvbmVuIHp1bSBVcHN0cmVhbS1CcmFuY2ggZsO8ciBkZW4gbmV1ZW4gQnJhbmNoIHNldHplbiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDMKLW1zZ2lkICJuZXctYnJhbmNoIgotbXNnc3RyICJuZXVlciBCcmFuY2giCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQzCi1tc2dpZCAibmV3IHVucGFyZW50ZWQgYnJhbmNoIgotbXNnc3RyICJuZXVlciBCcmFuY2ggb2huZSBFbHRlcm4tQ29tbWl0IgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0NQotbXNnaWQgImNoZWNrb3V0IG91ciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKLW1zZ3N0ciAidW5zZXJlIFZhcmlhbnRlIGbDvHIgbmljaHQgenVzYW1tZW5nZWbDvGhydGUgRGF0ZWllbiBhdXNjaGVja2VuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0OAotbXNnaWQgImNoZWNrb3V0IHRoZWlyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgotbXNnc3RyICJpaHJlIFZhcmlhbnRlIGbDvHIgbmljaHQgenVzYW1tZW5nZWbDvGhydGUgRGF0ZWllbiBhdXNjaGVja2VuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1MAotbXNnaWQgImZvcmNlIGNoZWNrb3V0ICh0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMpIgotbXNnc3RyICJBdXNjaGVja2VuIGVyendpbmdlbiAodmVyd2lyZnQgbG9rYWxlIMOEbmRlcnVuZ2VuKSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTIKLW1zZ2lkICJwZXJmb3JtIGEgMy13YXkgbWVyZ2Ugd2l0aCB0aGUgbmV3IGJyYW5jaCIKLW1zZ3N0ciAiZWluZW4gMy1XZWdlLU1lcmdlIG1pdCBkZW0gbmV1ZW4gQnJhbmNoIGF1c2bDvGhyZW4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU0IGJ1aWx0aW4vbWVyZ2UuYzoyNzUKLW1zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCi1tc2dzdHIgImlnbm9yaWVydGUgRGF0ZWllbiBha3R1YWxpc2llcmVuIChTdGFuZGFyZCkiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU2IGJ1aWx0aW4vbG9nLmM6MTU3MyBwYXJzZS1vcHRpb25zLmg6Mjc0Ci1tc2dpZCAic3R5bGUiCi1tc2dzdHIgIlN0aWwiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU3Ci1tc2dpZCAiY29uZmxpY3Qgc3R5bGUgKG1lcmdlIG9yIGRpZmYzKSIKLW1zZ3N0ciAiS29uZmxpa3RzdGlsIChtZXJnZSBvZGVyIGRpZmYzKSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNjAKLW1zZ2lkICJkbyBub3QgbGltaXQgcGF0aHNwZWNzIHRvIHNwYXJzZSBlbnRyaWVzIG9ubHkiCi1tc2dzdHIgImtlaW5lIEVpbnNjaHLDpG5rdW5nIGJlaSBQZmFkc3BlemlmaWthdGlvbmVuIHp1bSBwYXJ0aWVsbGVuIEF1c2NoZWNrZW4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjYyCi1tc2dpZCAic2Vjb25kIGd1ZXNzICdnaXQgY2hlY2tvdXQgPG5vLXN1Y2gtYnJhbmNoPiciCi1tc2dzdHIgInNlY29uZCBndWVzcyAnZ2l0IGNoZWNrb3V0IDxuby1zdWNoLWJyYW5jaD4nIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI2NAotbXNnaWQgImRvIG5vdCBjaGVjayBpZiBhbm90aGVyIHdvcmt0cmVlIGlzIGhvbGRpbmcgdGhlIGdpdmVuIHJlZiIKLW1zZ3N0ciAiIgotIlByw7xmdW5nLCBvYiBkaWUgUmVmZXJlbnogYmVyZWl0cyBpbiBlaW5lbSBhbmRlcmVuIEFyYmVpdHN2ZXJ6ZWljaG5pcyAiCi0iYXVzZ2VjaGVja3Qgd3VyZGUsIGRlYWt0aXZpZXJlbiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNjggYnVpbHRpbi9jbG9uZS5jOjg2IGJ1aWx0aW4vZmV0Y2guYzoxNDEKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzIgYnVpbHRpbi9wdWxsLmM6MTI5IGJ1aWx0aW4vcHVzaC5jOjU3MgotIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzQKLW1zZ2lkICJmb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCi1tc2dzdHIgIkZvcnRzY2hyaXR0c2FuemVpZ2UgZXJ6d2luZ2VuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI5OAotbXNnaWQgIi1iLCAtQiBhbmQgLS1vcnBoYW4gYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKLW1zZ3N0ciAiRGllIE9wdGlvbmVuIC1iLCAtQiB1bmQgLS1vcnBoYW4gc2NobGllw59lbiBzaWNoIGdlZ2Vuc2VpdGlnIGF1cy4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzE1Ci1tc2dpZCAiLS10cmFjayBuZWVkcyBhIGJyYW5jaCBuYW1lIgotbXNnc3RyICJCZWkgZGVyIE9wdGlvbiAtLXRyYWNrIG11c3MgZWluIEJyYW5jaG5hbWUgYW5nZWdlYmVuIHdlcmRlbi4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzIwCi1tc2dpZCAibWlzc2luZyBicmFuY2ggbmFtZTsgdHJ5IC1iIgotbXNnc3RyICJLZWluIEJyYW5jaG5hbWU7IHZlcnN1Y2hlbiBTaWUgLWIuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTM1NwotbXNnaWQgImludmFsaWQgcGF0aCBzcGVjaWZpY2F0aW9uIgotbXNnc3RyICJ1bmfDvGx0aWdlIFBmYWRzcGV6aWZpa2F0aW9uIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2NAotIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGlzIG5vdCBhIGNvbW1pdCBhbmQgYSBicmFuY2ggJyVzJyBjYW5ub3QgYmUgY3JlYXRlZCBmcm9tIGl0IgotbXNnc3RyICIiCi0iJyVzJyBpc3Qga2VpbiBDb21taXQgdW5kIGVzIGthbm4ga2VpbiBCcmFuY2ggJyVzJyBhdXMgZGllc2VtIGVyc3RlbGx0IHdlcmRlbi4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdpdCBjaGVja291dDogLS1kZXRhY2ggZG9lcyBub3QgdGFrZSBhIHBhdGggYXJndW1lbnQgJyVzJyIKLW1zZ3N0ciAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBuaW1tdCBrZWluIFBmYWQtQXJndW1lbnQgJyVzJyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzIKLW1zZ2lkICIiCi0iZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgYW5kIC0tbWVyZ2UgYXJlIGluY29tcGF0aWJsZSB3aGVuXG4iCi0iY2hlY2tpbmcgb3V0IG9mIHRoZSBpbmRleC4iCi1tc2dzdHIgIiIKLSJnaXQgY2hlY2tvdXQ6IC0tb3Vycy8tLXRoZWlycywgLS1mb3JjZSB1bmQgLS1tZXJnZSBzaW5kIGlua29tcGF0aWJlbCB3ZW5uXG4iCi0iU2llIGF1cyBkZW0gSW5kZXggYXVzY2hlY2tlbi4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzkyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCi0iJyVzJyBtYXRjaGVkIG1vcmUgdGhhbiBvbmUgcmVtb3RlIHRyYWNraW5nIGJyYW5jaC5cbiIKLSJXZSBmb3VuZCAlZCByZW1vdGVzIHdpdGggYSByZWZlcmVuY2UgdGhhdCBtYXRjaGVkLiBTbyB3ZSBmZWxsIGJhY2tcbiIKLSJvbiB0cnlpbmcgdG8gcmVzb2x2ZSB0aGUgYXJndW1lbnQgYXMgYSBwYXRoLCBidXQgZmFpbGVkIHRoZXJlIHRvbyFcbiIKLSJcbiIKKyInJXMnIGNvdWxkIGJlIGJvdGggYSBsb2NhbCBmaWxlIGFuZCBhIHRyYWNraW5nIGJyYW5jaC5cbiIKKyJQbGVhc2UgdXNlIC0tIChhbmQgb3B0aW9uYWxseSAtLW5vLWd1ZXNzKSB0byBkaXNhbWJpZ3VhdGUiCittc2dzdHIgIiIKKyInJXMnIGvDtm5udGUgZWluZSBsb2thbGUgRGF0ZWkgdW5kIGVpbiBUcmFja2luZy1CcmFuY2ggc2Vpbi5cbiIKKyJCaXR0ZSBiZW51dHplbiBTaWUgLS0gKHVuZCBvcHRpb25hbCAtLW5vLWd1ZXNzKSwgdW0gZGllc2VcbiIKKyJlaW5kZXV0aWcgdm9uZWluYW5kZXIgenUgdW50ZXJzY2hlaWRlbi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTM1Cittc2dpZCAiIgogIklmIHlvdSBtZWFudCB0byBjaGVjayBvdXQgYSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoIG9uLCBlLmcuICdvcmlnaW4nLFxuIgogInlvdSBjYW4gZG8gc28gYnkgZnVsbHkgcXVhbGlmeWluZyB0aGUgbmFtZSB3aXRoIHRoZSAtLXRyYWNrIG9wdGlvbjpcbiIKICJcbiIKQEAgLTkxMjEsMTAgKzExNTk5LDYgQEAKICJvbmUgcmVtb3RlLCBlLmcuIHRoZSAnb3JpZ2luJyByZW1vdGUsIGNvbnNpZGVyIHNldHRpbmdcbiIKICJjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbiBpbiB5b3VyIGNvbmZpZy4iCiBtc2dzdHIgIiIKLSInJXMnIGVudHNwcmljaHQgbWVociBhbHMgZWluZW0gUmVtb3RlLVRyYWNraW5nLUJyYW5jaC5cbiIKLSJXaXIgZmFuZGVuICVkIFJlbW90ZS1SZXBvc2l0b3JpZXMgbWl0IGVpbmVyIGVudHNwcmVjaGVuZGVuIFJlZmVyZW56LCBhbHNvXG4iCi0iaGFiZW4gd2lyIHZlcnN1Y2h0LCBkYXMgQXJndW1lbnQgYWxzIFBmYWQgYXVmenVsw7ZzZW4sIHdhcyBhdWNoIHNjaGllZiBnaW5nIVxuIgotIlxuIgogIkZhbGxzIFNpZSBlaW5lbiBSZW1vdGUtVHJhY2tpbmctQnJhbmNoLCB6LkIuIHZvbiAnb3JpZ2luJywgYXVzY2hlY2tlbiAiCiAid29sbHRlbixcbiIKICJrw7ZubmVuIFNpZSBkYXMgdHVuLCBpbmRlbSBTaWUgZGVuIHZvbGxzdMOkbmRpZyBxdWFsaWZpemllcnRlbiBOYW1lbiBtaXQgZGVyXG4iCkBAIC05MTM0LDQxICsxMTYwOCwzNDYgQEAKICJcbiIKICJGYWxscyBTaWUgYmVpbSBBdXNjaGVja2VuIG1pdCBtZWhyZGV1dGlnZW4gPE5hbWVuPiBpbW1lciBlaW4gUmVtb3RlLSIKICJSZXBvc2l0b3J5XG4iCi0iYmV2b3J6dWdlbiBtw7ZjaHRlbiwgei5CLiAnb3JpZ2luJywga8O2bm50ZW4gU2llIGRpZSBFaW5zdGVsbHVuZ1xuIgorImJldm9yenVnZW4gbcO2Y2h0ZW4sIHouQi4gJ29yaWdpbicsIGvDtm5uZW4gU2llIGRpZSBFaW5zdGVsbHVuZ1xuIgogImNoZWNrb3V0LmRlZmF1bHRSZW1vdGU9b3JpZ2luIGluIElocmVyIEtvbmZpZ3VyYXRpb24gc2V0emVuLiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjI3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTE0NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG1hdGNoZWQgbXVsdGlwbGUgKCVkKSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoZXMiCittc2dzdHIgIiclcycgZW50c3ByaWNodCBtZWhyZXJlbiAoJWQpIFJlbW90ZS1UcmFja2luZy1CcmFuY2hlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyMTEKK21zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQiCittc2dzdHIgIm51ciBlaW5lIFJlZmVyZW56IGVyd2FydGV0IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQsICVkIGdpdmVuLiIKK21zZ3N0ciAibnVyIGVpbmUgUmVmZXJlbnogZXJ3YXJ0ZXQsICVkIGdlZ2ViZW4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTI3NCBidWlsdGluL3dvcmt0cmVlLmM6MjgzIGJ1aWx0aW4vd29ya3RyZWUuYzo0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWZlcmVuY2U6ICVzIgorbXNnc3RyICJVbmfDvGx0aWdlIFJlZmVyZW56OiAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyODcgYnVpbHRpbi9jaGVja291dC5jOjE2NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIGlzIG5vdCBhIHRyZWU6ICVzIgorbXNnc3RyICJSZWZlcmVueiBpc3Qga2VpbiBcIlRyZWVcIi1PYmpla3Q6ICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMzNAorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290IHRhZyAnJXMnIgorbXNnc3RyICJFaW4gQnJhbmNoIHdpcmQgZXJ3YXJ0ZXQsIFRhZyAnJXMnIGJla29tbWVuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMzNgorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290IHJlbW90ZSBicmFuY2ggJyVzJyIKK21zZ3N0ciAiRWluIEJyYW5jaCB3aXJkIGVyd2FydGV0LCBSZW1vdGUtQnJhbmNoICclcycgYmVrb21tZW4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM3IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgJyVzJyIKK21zZ3N0ciAiRWluIEJyYW5jaCB3aXJkIGVyd2FydGV0LCAnJXMnIGJla29tbWVuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM0MAorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290IGNvbW1pdCAnJXMnIgorbXNnc3RyICJFaW4gQnJhbmNoIHdpcmQgZXJ3YXJ0ZXQsIENvbW1pdCAnJXMnIGJla29tbWVuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM1NgorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSBtZXJnaW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgbWVyZ2UgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisiRGVyIEJyYW5jaCBrYW5uIG5pY2h0IHfDpGhyZW5kIGVpbmVzIE1lcmdlcyBnZXdlY2hzZWx0IHdlcmRlbi5cbiIKKyJaaWVoZW4gU2llIFwiZ2l0IG1lcmdlIC0tcXVpdFwiIG9kZXIgXCJnaXQgd29ya3RyZWUgYWRkXCIgaW4gQmV0cmFjaHQuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2MAorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCBpbiB0aGUgbWlkZGxlIG9mIGFuIGFtIHNlc3Npb25cbiIKKyJDb25zaWRlciBcImdpdCBhbSAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyJEZXIgQnJhbmNoIGthbm4gbmljaHQgd8OkaHJlbmQgZWluZXMgbGF1ZmVuZGVuICdhbSctQmVmZWhscyBnZXdlY2hzZWx0ICIKKyJ3ZXJkZW4uXG4iCisiWmllaGVuIFNpZSBcImdpdCBhbSAtLXF1aXRcIiBvZGVyIFwiZ2l0IHdvcmt0cmVlIGFkZFwiIGluIEJldHJhY2h0LiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjQKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgcmViYXNpbmdcbiIKKyJDb25zaWRlciBcImdpdCByZWJhc2UgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisiRGVyIEJyYW5jaCBrYW5uIG5pY2h0IHfDpGhyZW5kIGVpbmVzIGxhdWZlbmRlbiAncmV2ZXJ0Jy1CZWZlaGxzIGdld2VjaHNlbHQgIgorIndlcmRlbi5cbiIKKyJaaWVoZW4gU2llIFwiZ2l0IHJlYmFzZSAtLXF1aXRcIiBvZGVyIFwiZ2l0IHdvcmt0cmVlIGFkZFwiIGluIEJldHJhY2h0LiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjgKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgY2hlcnJ5LXBpY2tpbmdcbiIKKyJDb25zaWRlciBcImdpdCBjaGVycnktcGljayAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyJEZXIgQnJhbmNoIGthbm4gbmljaHQgd8OkaHJlbmQgZWluZXMgbGF1ZmVuZGVuICdjaGVycnktcGljayctQmVmZWhscyAiCisiZ2V3ZWNoc2VsdCB3ZXJkZW4uXG4iCisiWmllaGVuIFNpZSBcImdpdCBjaGVycnktcGljayAtLXF1aXRcIiBvZGVyIFwiZ2l0IHdvcmt0cmVlIGFkZFwiIGluIEJldHJhY2h0LiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzIKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgcmV2ZXJ0aW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgcmV2ZXJ0IC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorIkRlciBCcmFuY2gga2FubiBuaWNodCB3w6RocmVuZCBlaW5lcyBsYXVmZW5kZW4gJ3JldmVydCctQmVmZWhscyBnZXdlY2hzZWx0ICIKKyJ3ZXJkZW4uXG4iCisiWmllaGVuIFNpZSBcImdpdCByZXZlcnQgLS1xdWl0XCIgb2RlciBcImdpdCB3b3JrdHJlZSBhZGRcIiBpbiBCZXRyYWNodC4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzc2Cittc2dpZCAieW91IGFyZSBzd2l0Y2hpbmcgYnJhbmNoIHdoaWxlIGJpc2VjdGluZyIKK21zZ3N0ciAiU2llIHdlY2hzZWxuIGRlbiBCcmFuY2ggd8OkaHJlbmQgZWluZXIgYmluw6RyZW4gU3VjaGUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzgzCittc2dpZCAicGF0aHMgY2Fubm90IGJlIHVzZWQgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMiCittc2dzdHIgIlBmYWRlIGvDtm5uZW4gbmljaHQgYmVpbSBXZWNoc2VsbiB2b24gQnJhbmNoZXMgdmVyd2VuZGV0IHdlcmRlbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzODYgYnVpbHRpbi9jaGVja291dC5jOjEzOTAgYnVpbHRpbi9jaGVja291dC5jOjEzOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKK21zZ3N0ciAiJyVzJyBrYW5uIG5pY2h0IGJlaW0gV2VjaHNlbG4gdm9uIEJyYW5jaGVzIHZlcndlbmRldCB3ZXJkZW4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzk4IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDAxIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDA0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQwOSBidWlsdGluL2NoZWNrb3V0LmM6MTQxNAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJyVzJyIKK21zZ3N0ciAiJyVzJyBrYW5uIG5pY2h0IG1pdCAnJXMnIHZlcndlbmRldCB3ZXJkZW4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDExCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IHRha2UgPHN0YXJ0LXBvaW50PiIKK21zZ3N0ciAiJyVzJyBrYW5uIG5pY2h0IDxTdGFydHB1bmt0PiBiZWtvbW1lbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN3aXRjaCBicmFuY2ggdG8gYSBub24tY29tbWl0ICclcyciCittc2dzdHIgIkthbm4gQnJhbmNoIG5pY2h0IHp1IE5pY2h0LUNvbW1pdCAnJXMnIHdlY2hzZWxuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQyNgorbXNnaWQgIm1pc3NpbmcgYnJhbmNoIG9yIGNvbW1pdCBhcmd1bWVudCIKK21zZ3N0ciAiQnJhbmNoLSBvZGVyIENvbW1pdC1Bcmd1bWVudCBmZWhsdCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NjggYnVpbHRpbi9jbG9uZS5jOjkxIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzIKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM1IGJ1aWx0aW4vZmV0Y2guYzoxNjcgYnVpbHRpbi9tZXJnZS5jOjI4NgorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjcgYnVpbHRpbi9wdWxsLmM6MTE4IGJ1aWx0aW4vcHVzaC5jOjU2MworIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzQKK21zZ2lkICJmb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCittc2dzdHIgIkZvcnRzY2hyaXR0c2FuemVpZ2UgZXJ6d2luZ2VuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2OQorbXNnaWQgInBlcmZvcm0gYSAzLXdheSBtZXJnZSB3aXRoIHRoZSBuZXcgYnJhbmNoIgorbXNnc3RyICJlaW5lbiAzLVdlZ2UtTWVyZ2UgbWl0IGRlbSBuZXVlbiBCcmFuY2ggYXVzZsO8aHJlbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NzAgYnVpbHRpbi9sb2cuYzoxNjkwIHBhcnNlLW9wdGlvbnMuaDozMjIKK21zZ2lkICJzdHlsZSIKK21zZ3N0ciAiU3RpbCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NzEKK21zZ2lkICJjb25mbGljdCBzdHlsZSAobWVyZ2Ugb3IgZGlmZjMpIgorbXNnc3RyICJLb25mbGlrdHN0aWwgKG1lcmdlIG9kZXIgZGlmZjMpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4MyBidWlsdGluL3dvcmt0cmVlLmM6NDk2Cittc2dpZCAiZGV0YWNoIEhFQUQgYXQgbmFtZWQgY29tbWl0IgorbXNnc3RyICJIRUFEIGJlaSBiZW5hbm50ZW0gQ29tbWl0IGxvc2zDtnNlbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODQKK21zZ2lkICJzZXQgdXBzdHJlYW0gaW5mbyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAiSW5mb3JtYXRpb25lbiB6dW0gVXBzdHJlYW0tQnJhbmNoIGbDvHIgZGVuIG5ldWVuIEJyYW5jaCBzZXR6ZW4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg2Cittc2dpZCAiZm9yY2UgY2hlY2tvdXQgKHRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucykiCittc2dzdHIgIkF1c2NoZWNrZW4gZXJ6d2luZ2VuICh2ZXJ3aXJmdCBsb2thbGUgw4RuZGVydW5nZW4pIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4OAorbXNnaWQgIm5ldy1icmFuY2giCittc2dzdHIgIm5ldWVyIEJyYW5jaCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODgKK21zZ2lkICJuZXcgdW5wYXJlbnRlZCBicmFuY2giCittc2dzdHIgIm5ldWVyIEJyYW5jaCBvaG5lIEVsdGVybi1Db21taXQiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDkwIGJ1aWx0aW4vbWVyZ2UuYzoyODkKK21zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCittc2dzdHIgImlnbm9yaWVydGUgRGF0ZWllbiBha3R1YWxpc2llcmVuIChTdGFuZGFyZCkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDkzCittc2dpZCAiZG8gbm90IGNoZWNrIGlmIGFub3RoZXIgd29ya3RyZWUgaXMgaG9sZGluZyB0aGUgZ2l2ZW4gcmVmIgorbXNnc3RyICIiCisiUHLDvGZ1bmcsIG9iIGRpZSBSZWZlcmVueiBiZXJlaXRzIGluIGVpbmVtIGFuZGVyZW4gQXJiZWl0c3ZlcnplaWNobmlzICIKKyJhdXNnZWNoZWNrdCB3dXJkZSwgZGVha3RpdmllcmVuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTUwNgorbXNnaWQgImNoZWNrb3V0IG91ciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKK21zZ3N0ciAidW5zZXJlIFZhcmlhbnRlIGbDvHIgbmljaHQgenVzYW1tZW5nZWbDvGhydGUgRGF0ZWllbiBhdXNjaGVja2VuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTUwOQorbXNnaWQgImNoZWNrb3V0IHRoZWlyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgorbXNnc3RyICJpaHJlIFZhcmlhbnRlIGbDvHIgbmljaHQgenVzYW1tZW5nZWbDvGhydGUgRGF0ZWllbiBhdXNjaGVja2VuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTUxMworbXNnaWQgImRvIG5vdCBsaW1pdCBwYXRoc3BlY3MgdG8gc3BhcnNlIGVudHJpZXMgb25seSIKK21zZ3N0ciAia2VpbmUgRWluc2NocsOkbmt1bmcgYmVpIFBmYWRzcGV6aWZpa2F0aW9uZW4genVtIHBhcnRpZWxsZW4gQXVzY2hlY2tlbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1NjUKK21zZ2lkICItYiwgLUIgYW5kIC0tb3JwaGFuIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIkRpZSBPcHRpb25lbiAtYiwgLUIgdW5kIC0tb3JwaGFuIHNjaGxpZcOfZW4gc2ljaCBnZWdlbnNlaXRpZyBhdXMuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTU2OAorbXNnaWQgIi1wIGFuZCAtLW92ZXJsYXkgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLXAgdW5kIC0tb3ZlcmxheSBzY2hsaWXDn2VuIHNpY2ggZ2VnZW5zZWl0aWcgYXVzLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2MDUKK21zZ2lkICItLXRyYWNrIG5lZWRzIGEgYnJhbmNoIG5hbWUiCittc2dzdHIgIkJlaSBkZXIgT3B0aW9uIC0tdHJhY2sgbXVzcyBlaW4gQnJhbmNobmFtZSBhbmdlZ2ViZW4gd2VyZGVuLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2MTAKK21zZ2lkICJtaXNzaW5nIGJyYW5jaCBuYW1lOyB0cnkgLWIiCittc2dzdHIgIktlaW4gQnJhbmNobmFtZTsgdmVyc3VjaGVuIFNpZSAtYi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlICVzIgorbXNnc3RyICJLb25udGUgJXMgbmljaHQgYXVmbMO2c2VuLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NTgKK21zZ2lkICJpbnZhbGlkIHBhdGggc3BlY2lmaWNhdGlvbiIKK21zZ3N0ciAidW5nw7xsdGlnZSBQZmFkc3BlemlmaWthdGlvbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBjb21taXQgYW5kIGEgYnJhbmNoICclcycgY2Fubm90IGJlIGNyZWF0ZWQgZnJvbSBpdCIKK21zZ3N0ciAiIgorIiclcycgaXN0IGtlaW4gQ29tbWl0IHVuZCBlcyBrYW5uIGtlaW4gQnJhbmNoICclcycgYXVzIGRpZXNlbSBlcnN0ZWxsdCB3ZXJkZW4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY2OQorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY2hlY2tvdXQ6IC0tZGV0YWNoIGRvZXMgbm90IHRha2UgYSBwYXRoIGFyZ3VtZW50ICclcyciCittc2dzdHIgImdpdCBjaGVja291dDogLS1kZXRhY2ggbmltbXQga2VpbiBQZmFkLUFyZ3VtZW50ICclcyciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjc4Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1kZXRhY2giCittc2dzdHIgIkRpZSBPcHRpb25lbiAtLXBhdGhzcGVjLWZyb20tZmlsZSB1bmQgLS1kZXRhY2ggc2luZCBpbmtvbXBhdGliZWwuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY4MSBidWlsdGluL3Jlc2V0LmM6MzI0IGJ1aWx0aW4vc3Rhc2guYzoxNTA2Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1wYXRjaCIKK21zZ3N0ciAiRGllIE9wdGlvbmVuIC0tcGF0aHNwZWMtZnJvbS1maWxlIHVuZCAtLXBhdGNoIHNpbmQgaW5rb21wYXRpYmVsLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2OTIKK21zZ2lkICIiCisiZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgYW5kIC0tbWVyZ2UgYXJlIGluY29tcGF0aWJsZSB3aGVuXG4iCisiY2hlY2tpbmcgb3V0IG9mIHRoZSBpbmRleC4iCittc2dzdHIgIiIKKyJnaXQgY2hlY2tvdXQ6IC0tb3Vycy8tLXRoZWlycywgLS1mb3JjZSB1bmQgLS1tZXJnZSBzaW5kIGlua29tcGF0aWJlbCB3ZW5uXG4iCisiU2llIGF1cyBkZW0gSW5kZXggYXVzY2hlY2tlbi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjk3Cittc2dpZCAieW91IG11c3Qgc3BlY2lmeSBwYXRoKHMpIHRvIHJlc3RvcmUiCittc2dzdHIgIlNpZSBtw7xzc2VuIFBmYWQoZSkgenVyIFdpZWRlcmhlcnN0ZWxsdW5nIGFuZ2ViZW4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyMyBidWlsdGluL2NoZWNrb3V0LmM6MTcyNSBidWlsdGluL2NoZWNrb3V0LmM6MTc3NAorIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzYgYnVpbHRpbi9jbG9uZS5jOjEyMSBidWlsdGluL3JlbW90ZS5jOjE3MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNzIgYnVpbHRpbi93b3JrdHJlZS5jOjQ5MiBidWlsdGluL3dvcmt0cmVlLmM6NDk0Cittc2dpZCAiYnJhbmNoIgorbXNnc3RyICJCcmFuY2giCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI0Cittc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCittc2dzdHIgImVpbmVuIG5ldWVuIEJyYW5jaCBlcnpldWdlbiB1bmQgYXVzY2hlY2tlbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjYKK21zZ2lkICJjcmVhdGUvcmVzZXQgYW5kIGNoZWNrb3V0IGEgYnJhbmNoIgorbXNnc3RyICJlaW5lbiBCcmFuY2ggZXJzdGVsbGVuL3Vtc2V0emVuIHVuZCBhdXNjaGVja2VuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyNworbXNnaWQgImNyZWF0ZSByZWZsb2cgZm9yIG5ldyBicmFuY2giCittc2dzdHIgImRhcyBSZWZsb2cgZsO8ciBkZW4gbmV1ZW4gQnJhbmNoIGVyemV1Z2VuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyOQorbXNnaWQgInNlY29uZCBndWVzcyAnZ2l0IGNoZWNrb3V0IDxuby1zdWNoLWJyYW5jaD4nIChkZWZhdWx0KSIKK21zZ3N0ciAiWndlaXRlIFZlcm11dHVuZyAnZ2l0IGNoZWNrb3V0IDxrZWluLXNvbGNoZXItQnJhbmNoPicgKFN0YW5kYXJkKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MzAKK21zZ2lkICJ1c2Ugb3ZlcmxheSBtb2RlIChkZWZhdWx0KSIKK21zZ3N0ciAiYmVudXR6ZSBPdmVybGF5LU1vZHVzIChTdGFuZGFyZCkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc1Cittc2dpZCAiY3JlYXRlIGFuZCBzd2l0Y2ggdG8gYSBuZXcgYnJhbmNoIgorbXNnc3RyICJlaW5lbiBuZXVlbiBCcmFuY2ggZXJ6ZXVnZW4gdW5kIGRhaGluIHdlY2hzZWxuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3NworbXNnaWQgImNyZWF0ZS9yZXNldCBhbmQgc3dpdGNoIHRvIGEgYnJhbmNoIgorbXNnc3RyICJlaW5lbiBCcmFuY2ggZXJzdGVsbGVuL3Vtc2V0emVuIHVuZCBkYWhpbiB3ZWNoc2VsbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzkKK21zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBzd2l0Y2ggPG5vLXN1Y2gtYnJhbmNoPiciCittc2dzdHIgIlp3ZWl0ZSBWZXJtdXR1bmcgJ2dpdCBzd2l0Y2ggPGtlaW4tc29sY2hlci1CcmFuY2g+JyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3ODEKK21zZ2lkICJ0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMiCittc2dzdHIgImxva2FsZSDDhG5kZXJ1bmdlbiB2ZXJ3ZXJmZW4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODEzCittc2dpZCAid2hpY2ggdHJlZS1pc2ggdG8gY2hlY2tvdXQgZnJvbSIKK21zZ3N0ciAiVm9uIHdlbGNoZXIgQ29tbWl0LVJlZmVyZW56IGF1c2dlY2hlY2t0IHdlcmRlbiBzb2xsIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxNQorbXNnaWQgInJlc3RvcmUgdGhlIGluZGV4IgorbXNnc3RyICJJbmRleCB3aWVkZXJoZXJzdGVsbGVuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxNworbXNnaWQgInJlc3RvcmUgdGhlIHdvcmtpbmcgdHJlZSAoZGVmYXVsdCkiCittc2dzdHIgImRhcyBBcmJlaXRzdmVyemVpY2huaXMgd2llZGVyaGVyc3RlbGxlbiAoU3RhbmRhcmQpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxOQorbXNnaWQgImlnbm9yZSB1bm1lcmdlZCBlbnRyaWVzIgorbXNnc3RyICJpZ25vcmllcmUgbmljaHQgenVzYW1tZW5nZWbDvGhydGUgRWludHLDpGdlIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgyMAorbXNnaWQgInVzZSBvdmVybGF5IG1vZGUiCittc2dzdHIgImJlbnV0emUgT3ZlcmxheS1Nb2R1cyIKKworIzogYnVpbHRpbi9jbGVhbi5jOjI4CiBtc2dpZCAiIgogImdpdCBjbGVhbiBbLWRdIFstZl0gWy1pXSBbLW5dIFstcV0gWy1lIDxwYXR0ZXJuPl0gWy14IHwgLVhdIFstLV0gPHBhdGhzPi4uLiIKIG1zZ3N0ciAiIgogImdpdCBjbGVhbiBbLWRdIFstZl0gWy1pXSBbLW5dIFstcV0gWy1lIDxNdXN0ZXI+XSBbLXggfCAtWF0gWy0tXSA8UGZhZGU+Li4uIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzEKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyAlc1xuIgogbXNnc3RyICJMw7ZzY2hlICVzXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMgorIzogYnVpbHRpbi9jbGVhbi5jOjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIldvdWxkIHJlbW92ZSAlc1xuIgogbXNnc3RyICJXw7xyZGUgJXMgbMO2c2NoZW5cbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjMzCisjOiBidWlsdGluL2NsZWFuLmM6MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBpbmcgcmVwb3NpdG9yeSAlc1xuIgogbXNnc3RyICLDnGJlcnNwcmluZ2UgUmVwb3NpdG9yeSAlc1xuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzQKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNQogIywgYy1mb3JtYXQKIG1zZ2lkICJXb3VsZCBza2lwIHJlcG9zaXRvcnkgJXNcbiIKIG1zZ3N0ciAiV8O8cmRlIFJlcG9zaXRvcnkgJXMgw7xiZXJzcHJpbmdlblxuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzUKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICVzIgogbXNnc3RyICJGZWhsZXIgYmVpbSBMw7ZzY2hlbiB2b24gJXMiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzoyOTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NzkKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgbHN0YXQgJXNcbiIKK21zZ3N0ciAiS29ubnRlICdsc3RhdCcgbmljaHQgZsO8ciAlcyBhdXNmw7xocmVuXG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMDEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlByb21wdCBoZWxwOlxuIgpAQCAtOTE4MSw3ICsxMTk2MCw3IEBACiAiZm9vICAgICAgICAtIEVsZW1lbnQgYW5oYW5kIGVpbmVzIGVpbmRldXRpZ2VuIFByw6RmaXggYXVzd8OkaGxlblxuIgogIiAgICAgICAgICAgLSAobGVlcikgbmljaHRzIGF1c3fDpGhsZW5cbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjMwMiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU4OAorIzogYnVpbHRpbi9jbGVhbi5jOjMwNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYwNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUHJvbXB0IGhlbHA6XG4iCkBAIC05MjAyLDM4ICsxMTk4MSwzMyBAQAogIiogICAgICAgICAgLSBhbGxlIEVsZW1lbnRlIGF1c3fDpGhsZW5cbiIKICIgICAgICAgICAgIC0gKGxlZXIpIEF1c3dhaGwgYmVlbmRlblxuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6NTE4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTU0Ci0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU1OQorIzogYnVpbHRpbi9jbGVhbi5jOjUyMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NzUKICMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAogbXNnaWQgIkh1aCAoJXMpP1xuIgogbXNnc3RyICJXaWUgYml0dGUgKCVzKT9cbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjY2MAorIzogYnVpbHRpbi9jbGVhbi5jOjY2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnB1dCBpZ25vcmUgcGF0dGVybnM+PiAiCiBtc2dzdHIgIklnbm9yaWVyLU11c3RlciBlaW5nZWJlbj4+ICIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjY5NworIzogYnVpbHRpbi9jbGVhbi5jOjcwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJXQVJOSU5HOiBDYW5ub3QgZmluZCBpdGVtcyBtYXRjaGVkIGJ5OiAlcyIKIG1zZ3N0ciAiV0FSTlVORzogS2FubiBrZWluZSBFaW50csOkZ2UgZmluZGVuIGRpZSBNdXN0ZXIgZW50c3ByZWNoZW46ICVzIgogCi0jOiBidWlsdGluL2NsZWFuLmM6NzE4CisjOiBidWlsdGluL2NsZWFuLmM6NzIxCiBtc2dpZCAiU2VsZWN0IGl0ZW1zIHRvIGRlbGV0ZSIKIG1zZ3N0ciAiV8OkaGxlbiBTaWUgRWludHLDpGdlIHp1bSBMw7ZzY2hlbiIKIAogIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBrZWVwIFt5L05dIGFzIGlzCi0jOiBidWlsdGluL2NsZWFuLmM6NzU5CisjOiBidWlsdGluL2NsZWFuLmM6NzYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92ZSAlcyBbeS9OXT8gIgogbXNnc3RyICInJXMnIGzDtnNjaGVuIFt5L05dPyAiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo3ODQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzE3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkJ5ZS5cbiIKLW1zZ3N0ciAiVHNjaMO8c3MuXG4iCi0KLSM6IGJ1aWx0aW4vY2xlYW4uYzo3OTIKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3OTUKIG1zZ2lkICIiCiAiY2xlYW4gICAgICAgICAgICAgICAtIHN0YXJ0IGNsZWFuaW5nXG4iCiAiZmlsdGVyIGJ5IHBhdHRlcm4gICAtIGV4Y2x1ZGUgaXRlbXMgZnJvbSBkZWxldGlvblxuIgpAQCAtOTI1MSw2NCArMTIwMjUsNTYgQEAKICJoZWxwICAgICAgICAgICAgICAgIC0gZGllc2UgTWVsZHVuZyBhbnplaWdlblxuIgogIj8gICAgICAgICAgICAgICAgICAgLSBIaWxmZSB6dXIgQXVzd2FobCBtaXR0ZWxzIEVpbmdhYmUgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo4MTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzkzCi1tc2dpZCAiKioqIENvbW1hbmRzICoqKiIKLW1zZ3N0ciAiKioqIEJlZmVobGUgKioqIgotCi0jOiBidWlsdGluL2NsZWFuLmM6ODIwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MAotbXNnaWQgIldoYXQgbm93IgotbXNnc3RyICJXYXMgbnVuIgotCi0jOiBidWlsdGluL2NsZWFuLmM6ODI4CisjOiBidWlsdGluL2NsZWFuLmM6ODMxCiBtc2dpZCAiV291bGQgcmVtb3ZlIHRoZSBmb2xsb3dpbmcgaXRlbToiCiBtc2dpZF9wbHVyYWwgIldvdWxkIHJlbW92ZSB0aGUgZm9sbG93aW5nIGl0ZW1zOiIKIG1zZ3N0clswXSAiV8O8cmRlIGRhcyBmb2xnZW5kZSBFbGVtZW50IGVudGZlcm5lbjoiCiBtc2dzdHJbMV0gIlfDvHJkZSBkaWUgZm9sZ2VuZGVuIEVsZW1lbnRlIGVudGZlcm5lbjoiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo4NDQKKyM6IGJ1aWx0aW4vY2xlYW4uYzo4NDcKIG1zZ2lkICJObyBtb3JlIGZpbGVzIHRvIGNsZWFuLCBleGl0aW5nLiIKIG1zZ3N0ciAiS2VpbmUgRGF0ZWllbiBtZWhyIHp1bSBMw7ZzY2hlbiwgYmVlbmRlLiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwNgorIzogYnVpbHRpbi9jbGVhbi5jOjkwOQogbXNnaWQgImRvIG5vdCBwcmludCBuYW1lcyBvZiBmaWxlcyByZW1vdmVkIgogbXNnc3RyICJrZWluZSBOYW1lbiB2b24gZ2Vsw7ZzY2h0ZW4gRGF0ZWllbiBhdXNnZWJlbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwOAorIzogYnVpbHRpbi9jbGVhbi5jOjkxMQogbXNnaWQgImZvcmNlIgogbXNnc3RyICJBa3Rpb24gZXJ6d2luZ2VuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA5CisjOiBidWlsdGluL2NsZWFuLmM6OTEyCiBtc2dpZCAiaW50ZXJhY3RpdmUgY2xlYW5pbmciCiBtc2dzdHIgImludGVyYWt0aXZlcyBDbGVhbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxMQorIzogYnVpbHRpbi9jbGVhbi5jOjkxNAogbXNnaWQgInJlbW92ZSB3aG9sZSBkaXJlY3RvcmllcyIKIG1zZ3N0ciAiZ2FuemUgVmVyemVpY2huaXNzZSBsw7ZzY2hlbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxMiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ1IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDcKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4NiBidWlsdGluL2xvZy5jOjE2NiBidWlsdGluL2xvZy5jOjE2OAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NiBidWlsdGluL25hbWUtcmV2LmM6NDE1IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTcKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTUgYnVpbHRpbi9kZXNjcmliZS5jOjU2MiBidWlsdGluL2Rlc2NyaWJlLmM6NTY0CisjOiBidWlsdGluL2dyZXAuYzo4ODkgYnVpbHRpbi9sb2cuYzoxNzcgYnVpbHRpbi9sb2cuYzoxNzkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTcgYnVpbHRpbi9uYW1lLXJldi5jOjUyNiBidWlsdGluL25hbWUtcmV2LmM6NTI4CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc5CiBtc2dpZCAicGF0dGVybiIKIG1zZ3N0ciAiTXVzdGVyIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTEzCisjOiBidWlsdGluL2NsZWFuLmM6OTE2CiBtc2dpZCAiYWRkIDxwYXR0ZXJuPiB0byBpZ25vcmUgcnVsZXMiCiBtc2dzdHIgIjxNdXN0ZXI+IHp1IGRlbiBSZWdlbG4gZsO8ciBpZ25vcmllcnRlIFBmYWRlIGhpbnp1ZsO8Z2VuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTE0CisjOiBidWlsdGluL2NsZWFuLmM6OTE3CiBtc2dpZCAicmVtb3ZlIGlnbm9yZWQgZmlsZXMsIHRvbyIKIG1zZ3N0ciAiYXVjaCBpZ25vcmllcnRlIERhdGVpZW4gbMO2c2NoZW4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTYKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTkKIG1zZ2lkICJyZW1vdmUgb25seSBpZ25vcmVkIGZpbGVzIgogbXNnc3RyICJudXIgaWdub3JpZXJ0ZSBEYXRlaWVuIGzDtnNjaGVuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTM0CisjOiBidWlsdGluL2NsZWFuLmM6OTM3CiBtc2dpZCAiLXggYW5kIC1YIGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIgogbXNnc3RyICJEaWUgT3B0aW9uZW4gLXggdW5kIC1YIGvDtm5uZW4gbmljaHQgZ2VtZWluc2FtIHZlcndlbmRldCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTM4CisjOiBidWlsdGluL2NsZWFuLmM6OTQxCiBtc2dpZCAiIgogImNsZWFuLnJlcXVpcmVGb3JjZSBzZXQgdG8gdHJ1ZSBhbmQgbmVpdGhlciAtaSwgLW4sIG5vciAtZiBnaXZlbjsgcmVmdXNpbmcgdG8gIgogImNsZWFuIgpAQCAtOTMxNiw3ICsxMjA4Miw3IEBACiAiY2xlYW4ucmVxdWlyZUZvcmNlIGF1ZiBcInRydWVcIiBnZXNldHp0IHVuZCB3ZWRlciAtaSwgLW4gbm9jaCAtZiBnZWdlYmVuOyAiCiAiXCJjbGVhblwiIHZlcndlaWdlcnQiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5NDEKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5NDQKIG1zZ2lkICIiCiAiY2xlYW4ucmVxdWlyZUZvcmNlIGRlZmF1bHRzIHRvIHRydWUgYW5kIG5laXRoZXIgLWksIC1uLCBub3IgLWYgZ2l2ZW47ICIKICJyZWZ1c2luZyB0byBjbGVhbiIKQEAgLTkzMjQsMTUyICsxMjA5MCwxNzMgQEAKICJjbGVhbi5yZXF1aXJlRm9yY2Ugc3RhbmRhcmRtw6TDn2lnIGF1ZiBcInRydWVcIiBnZXNldHp0IHVuZCB3ZWRlciAtaSwgLW4gbm9jaCAtIgogImYgZ2VnZWJlbjsgXCJjbGVhblwiIHZlcndlaWdlcnQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0MworIzogYnVpbHRpbi9jbG9uZS5jOjQ1CiBtc2dpZCAiZ2l0IGNsb25lIFs8b3B0aW9ucz5dIFstLV0gPHJlcG8+IFs8ZGlyPl0iCiBtc2dzdHIgImdpdCBjbG9uZSBbPE9wdGlvbmVuPl0gWy0tXSA8UmVwb3NpdG9yeT4gWzxWZXJ6ZWljaG5pcz5dIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MwogbXNnaWQgImRvbid0IGNyZWF0ZSBhIGNoZWNrb3V0IgogbXNnc3RyICJrZWluIEF1c2NoZWNrZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4OSBidWlsdGluL2Nsb25lLmM6OTEgYnVpbHRpbi9pbml0LWRiLmM6NDgxCisjOiBidWlsdGluL2Nsb25lLmM6OTQgYnVpbHRpbi9jbG9uZS5jOjk2IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4OQogbXNnaWQgImNyZWF0ZSBhIGJhcmUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiZWluIEJhcmUtUmVwb3NpdG9yeSBlcnN0ZWxsZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MworIzogYnVpbHRpbi9jbG9uZS5jOjk4CiBtc2dpZCAiY3JlYXRlIGEgbWlycm9yIHJlcG9zaXRvcnkgKGltcGxpZXMgYmFyZSkiCiBtc2dzdHIgImVpbiBTcGllZ2VsYXJjaGl2IGVyc3RlbGxlbiAoaW1wbGl6aWVydCAtLWJhcmUpIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDAKIG1zZ2lkICJ0byBjbG9uZSBmcm9tIGEgbG9jYWwgcmVwb3NpdG9yeSIKIG1zZ3N0ciAidm9uIGVpbmVtIGxva2FsZW4gUmVwb3NpdG9yeSBrbG9uZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NworIzogYnVpbHRpbi9jbG9uZS5jOjEwMgogbXNnaWQgImRvbid0IHVzZSBsb2NhbCBoYXJkbGlua3MsIGFsd2F5cyBjb3B5IgogbXNnc3RyICJsb2thbCBrZWluZSBoYXJ0ZW4gVmVyd2Vpc2UgdmVyd2VuZGVuLCBpbW1lciBLb3BpZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5OQorIzogYnVpbHRpbi9jbG9uZS5jOjEwNAogbXNnaWQgInNldHVwIGFzIHNoYXJlZCByZXBvc2l0b3J5IgogbXNnc3RyICJhbHMgdmVydGVpbHRlcyBSZXBvc2l0b3J5IGVpbnJpY2h0ZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEgYnVpbHRpbi9jbG9uZS5jOjEwNQorIzogYnVpbHRpbi9jbG9uZS5jOjEwNwogbXNnaWQgInBhdGhzcGVjIgogbXNnc3RyICJQZmFkc3BlemlmaWthdGlvbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwMSBidWlsdGluL2Nsb25lLmM6MTA1CisjOiBidWlsdGluL2Nsb25lLmM6MTA3CiBtc2dpZCAiaW5pdGlhbGl6ZSBzdWJtb2R1bGVzIGluIHRoZSBjbG9uZSIKIG1zZ3N0ciAiU3VibW9kdWxlIGltIEtsb24gaW5pdGlhbGlzaWVyZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAKIG1zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBjbG9uZWQgaW4gcGFyYWxsZWwiCiBtc2dzdHIgIkFuemFobCBkZXIgcGFyYWxsZWwgenUga2xvbmVuZGVuIFN1Ym1vZHVsZSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwOSBidWlsdGluL2luaXQtZGIuYzo0NzgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTEgYnVpbHRpbi9pbml0LWRiLmM6NDg2CiBtc2dpZCAidGVtcGxhdGUtZGlyZWN0b3J5IgogbXNnc3RyICJWb3JsYWdlbnZlcnplaWNobmlzIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTEwIGJ1aWx0aW4vaW5pdC1kYi5jOjQ3OQorIzogYnVpbHRpbi9jbG9uZS5jOjExMiBidWlsdGluL2luaXQtZGIuYzo0ODcKIG1zZ2lkICJkaXJlY3RvcnkgZnJvbSB3aGljaCB0ZW1wbGF0ZXMgd2lsbCBiZSB1c2VkIgogbXNnc3RyICJWZXJ6ZWljaG5pcywgdm9uIHdlbGNoZW0gZGllIFZvcmxhZ2VuIHZlcndlbmRldCB3ZXJkZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTIgYnVpbHRpbi9jbG9uZS5jOjExNCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTYKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTQgYnVpbHRpbi9jbG9uZS5jOjExNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTIKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiUmVwb3NpdG9yeSByZWZlcmVuemllcmVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc3Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1OAorIzogYnVpbHRpbi9jbG9uZS5jOjExOCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTQKIG1zZ2lkICJ1c2UgLS1yZWZlcmVuY2Ugb25seSB3aGlsZSBjbG9uaW5nIgogbXNnc3RyICItLXJlZmVyZW5jZSBudXIgd8OkaHJlbmQgZGVzIEtsb25lbnMgYmVudXR6ZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTcgYnVpbHRpbi9jb2x1bW4uYzoyNyBidWlsdGluL21lcmdlLWZpbGUuYzo0NgotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAxIGJ1aWx0aW4vcmVwYWNrLmM6MzI5CisjOiBidWlsdGluL2Nsb25lLmM6MTE5IGJ1aWx0aW4vY29sdW1uLmM6MjcgYnVpbHRpbi9tZXJnZS1maWxlLmM6NDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0MSBidWlsdGluL3JlcGFjay5jOjMyNwogbXNnaWQgIm5hbWUiCiBtc2dzdHIgIk5hbWUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjAKIG1zZ2lkICJ1c2UgPG5hbWU+IGluc3RlYWQgb2YgJ29yaWdpbicgdG8gdHJhY2sgdXBzdHJlYW0iCiBtc2dzdHIgIjxOYW1lPiBzdGF0dCAnb3JpZ2luJyBmw7xyIFVwc3RyZWFtLVJlcG9zaXRvcnkgdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTIwCisjOiBidWlsdGluL2Nsb25lLmM6MTIyCiBtc2dpZCAiY2hlY2tvdXQgPGJyYW5jaD4gaW5zdGVhZCBvZiB0aGUgcmVtb3RlJ3MgSEVBRCIKIG1zZ3N0ciAiPEJyYW5jaD4gYXVzY2hlY2tlbiwgYW5zdGF0dCBIRUFEIGRlcyBSZW1vdGUtUmVwb3NpdG9yaWVzIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTIyCisjOiBidWlsdGluL2Nsb25lLmM6MTI0CiBtc2dpZCAicGF0aCB0byBnaXQtdXBsb2FkLXBhY2sgb24gdGhlIHJlbW90ZSIKIG1zZ3N0ciAiUGZhZCB6dSBcImdpdC11cGxvYWQtcGFja1wiIGF1ZiBkZXIgR2VnZW5zZWl0ZSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyMyBidWlsdGluL2ZldGNoLmM6MTQyIGJ1aWx0aW4vZ3JlcC5jOjgyNQotIzogYnVpbHRpbi9wdWxsLmM6MjE3CisjOiBidWlsdGluL2Nsb25lLmM6MTI1IGJ1aWx0aW4vZmV0Y2guYzoxNjggYnVpbHRpbi9ncmVwLmM6ODI4CisjOiBidWlsdGluL3B1bGwuYzoyMDcKIG1zZ2lkICJkZXB0aCIKIG1zZ3N0ciAiVGllZmUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjQKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjYKIG1zZ2lkICJjcmVhdGUgYSBzaGFsbG93IGNsb25lIG9mIHRoYXQgZGVwdGgiCiBtc2dzdHIgIiIKICJlaW5lbiBLbG9uIG1pdCB1bnZvbGxzdMOkbmRpZ2VyIEhpc3RvcmllIChzaGFsbG93KSBpbiBkaWVzZXIgVGllZmUgZXJzdGVsbGVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI1IGJ1aWx0aW4vZmV0Y2guYzoxNDQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkyCisjOiBidWlsdGluL2Nsb25lLmM6MTI3IGJ1aWx0aW4vZmV0Y2guYzoxNzAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDMwCiBtc2dpZCAidGltZSIKIG1zZ3N0ciAiWmVpdCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyNgorIzogYnVpbHRpbi9jbG9uZS5jOjEyOAogbXNnaWQgImNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgc2luY2UgYSBzcGVjaWZpYyB0aW1lIgogbXNnc3RyICIiCiAiZWluZW4gS2xvbiBtaXQgdW52b2xsc3TDpG5kaWdlciBIaXN0b3JpZSAoc2hhbGxvdykgc2VpdCBlaW5lciBiZXN0aW1tdGVuICIKICJaZWl0XG4iCiAiZXJzdGVsbGVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI3IGJ1aWx0aW4vZmV0Y2guYzoxNDYgYnVpbHRpbi9mZXRjaC5jOjE2OQotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzEKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjkgYnVpbHRpbi9mZXRjaC5jOjE3MiBidWlsdGluL2ZldGNoLmM6MTk1CisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODAKIG1zZ2lkICJyZXZpc2lvbiIKIG1zZ3N0ciAiQ29tbWl0IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI4IGJ1aWx0aW4vZmV0Y2guYzoxNDcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzAgYnVpbHRpbi9mZXRjaC5jOjE3MwogbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgY2xvbmUsIGV4Y2x1ZGluZyByZXYiCiBtc2dzdHIgIiIKICJkaWUgSGlzdG9yaWUgZWluZXMgS2xvbnMgbWl0IHVudm9sbHN0w6RuZGlnZXIgSGlzdG9yaWUgKHNoYWxsb3cpIG1pdHRlbHNcbiIKICJBdXNzY2hsdXNzIGVpbmVzIENvbW1pdHMgdmVydGllZmVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTMwCisjOiBidWlsdGluL2Nsb25lLmM6MTMyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyOAogbXNnaWQgImNsb25lIG9ubHkgb25lIGJyYW5jaCwgSEVBRCBvciAtLWJyYW5jaCIKIG1zZ3N0ciAibnVyIGVpbmVuIEJyYW5jaCBrbG9uZW4sIEhFQUQgb2RlciAtLWJyYW5jaCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzMgorIzogYnVpbHRpbi9jbG9uZS5jOjEzNAogbXNnaWQgImRvbid0IGNsb25lIGFueSB0YWdzLCBhbmQgbWFrZSBsYXRlciBmZXRjaGVzIG5vdCB0byBmb2xsb3cgdGhlbSIKIG1zZ3N0ciAia2VpbmUgVGFncyBrbG9uZW4sIHVuZCBhdWNoIGJlaSBzcMOkdGVyZW4gQWJydWZlbiBuaWNodCBiZWFjaHRlbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNAorIzogYnVpbHRpbi9jbG9uZS5jOjEzNgogbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIGJlIHNoYWxsb3ciCiBtc2dzdHIgImplZGVzIGdla2xvbnRlIFN1Ym1vZHVsIG1pdCB1bnZvbGxzdMOkbmRpZ2VyIEhpc3RvcmllIChzaGFsbG93KSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNSBidWlsdGluL2luaXQtZGIuYzo0ODcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzcgYnVpbHRpbi9pbml0LWRiLmM6NDk1CiBtc2dpZCAiZ2l0ZGlyIgogbXNnc3RyICIuZ2l0LVZlcnplaWNobmlzIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM2IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4OAorIzogYnVpbHRpbi9jbG9uZS5jOjEzOCBidWlsdGluL2luaXQtZGIuYzo0OTYKIG1zZ2lkICJzZXBhcmF0ZSBnaXQgZGlyIGZyb20gd29ya2luZyB0cmVlIgogbXNnc3RyICJHaXQtVmVyemVpY2huaXMgdm9tIEFyYmVpdHN2ZXJ6ZWljaG5pcyBzZXBhcmllcmVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM3CisjOiBidWlsdGluL2Nsb25lLmM6MTM5CiBtc2dpZCAia2V5PXZhbHVlIgogbXNnc3RyICJTY2hsw7xzc2VsPVdlcnQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDAKIG1zZ2lkICJzZXQgY29uZmlnIGluc2lkZSB0aGUgbmV3IHJlcG9zaXRvcnkiCiBtc2dzdHIgIktvbmZpZ3VyYXRpb24gaW5uZXJoYWxiIGRlcyBuZXVlbiBSZXBvc2l0b3JpZXMgc2V0emVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM5IGJ1aWx0aW4vZmV0Y2guYzoxNjUgYnVpbHRpbi9wdWxsLmM6MjMwCi0jOiBidWlsdGluL3B1c2guYzo1ODMKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDIgYnVpbHRpbi9mZXRjaC5jOjE5MCBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL3B1c2guYzo1NzMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzIKK21zZ2lkICJzZXJ2ZXItc3BlY2lmaWMiCittc2dzdHIgInNlcnZlcnNwZXppZmlzY2giCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDIgYnVpbHRpbi9mZXRjaC5jOjE5MCBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL3B1c2guYzo1NzMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzMKK21zZ2lkICJvcHRpb24gdG8gdHJhbnNtaXQiCittc2dzdHIgIk9wdGlvbiDDvGJlcnRyYWdlbiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0MyBidWlsdGluL2ZldGNoLmM6MTkxIGJ1aWx0aW4vcHVsbC5jOjIyMAorIzogYnVpbHRpbi9wdXNoLmM6NTc0CiBtc2dpZCAidXNlIElQdjQgYWRkcmVzc2VzIG9ubHkiCiBtc2dzdHIgIm51ciBJUHY0LUFkcmVzc2VuIGJlbnV0emVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTQxIGJ1aWx0aW4vZmV0Y2guYzoxNjcgYnVpbHRpbi9wdWxsLmM6MjMzCi0jOiBidWlsdGluL3B1c2guYzo1ODUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDUgYnVpbHRpbi9mZXRjaC5jOjE5MyBidWlsdGluL3B1bGwuYzoyMjMKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3NgogbXNnaWQgInVzZSBJUHY2IGFkZHJlc3NlcyBvbmx5IgogbXNnc3RyICJudXIgSVB2Ni1BZHJlc3NlbiBiZW51dHplbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjI3OQorIzogYnVpbHRpbi9jbG9uZS5jOjE0OQorbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIHVzZSB0aGVpciByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICJqZWRlcyBnZWtsb250ZSBTdWJtb2R1bCBudXR6dCBzZWluZW4gUmVtb3RlLVRyYWNraW5nLUJyYW5jaCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE1MQorbXNnaWQgImluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IGZpbGUgdG8gaW5jbHVkZSBvbmx5IGZpbGVzIGF0IHJvb3QiCittc2dzdHIgIiIKKyJJbml0aWFsaXNpZXJlIERhdGVpIGbDvHIgcGFydGllbGxlbiBDaGVja291dCwgdW0gbnVyIERhdGVpZW4gaW1cbiIKKyJSb290LVZlcnplaWNobmlzIGVpbnp1YmV6aWVoZW4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoyODcKIG1zZ2lkICIiCiAiTm8gZGlyZWN0b3J5IG5hbWUgY291bGQgYmUgZ3Vlc3NlZC5cbiIKICJQbGVhc2Ugc3BlY2lmeSBhIGRpcmVjdG9yeSBvbiB0aGUgY29tbWFuZCBsaW5lIgpAQCAtOTQ3NywxNDcgKzEyMjY0LDE0NiBAQAogIktvbm50ZSBrZWluZW4gVmVyemVpY2huaXNuYW1lbiBlcnJhdGVuLlxuIgogIkJpdHRlIGdlYmVuIFNpZSBlaW4gVmVyemVpY2huaXMgYXVmIGRlciBCZWZlaGxzemVpbGUgYW4uIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MzMyCisjOiBidWlsdGluL2Nsb25lLmM6MzQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImluZm86IENvdWxkIG5vdCBhZGQgYWx0ZXJuYXRlIGZvciAnJXMnOiAlc1xuIgogbXNnc3RyICJpbmZvOiBLb25udGUgQWx0ZXJuYXRpdmUgZsO8ciAnJXMnIG5pY2h0IGhpbnp1ZsO8Z2VuOiAlc1xuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDA0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyciCi1tc2dzdHIgIkZlaGxlciBiZWltIMOWZmZuZW4gdm9uICclcyciCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo0MTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZXhpc3RzIGFuZCBpcyBub3QgYSBkaXJlY3RvcnkiCiBtc2dzdHIgIiVzIGV4aXN0aWVydCB1bmQgaXN0IGtlaW4gVmVyemVpY2huaXMiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0MjYKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0MzAKICMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIHN0YXQgJXNcbiIKLW1zZ3N0ciAiS29ubnRlICVzIG5pY2h0IGxlc2VuXG4iCittc2dpZCAiZmFpbGVkIHRvIHN0YXJ0IGl0ZXJhdG9yIG92ZXIgJyVzJyIKK21zZ3N0ciAiRmVobGVyIGJlaW0gU3RhcnRlbiBkZXIgSXRlcmF0aW9uIMO8YmVyICclcyciCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0NDMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIHVubGluayAnJXMnIgotbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBlbnRmZXJuZW4uIgotCi0jOiBidWlsdGluL2Nsb25lLmM6NDQ4CisjOiBidWlsdGluL2Nsb25lLmM6NDYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgbGluayAnJXMnIgogbXNnc3RyICJLb25udGUgVmVyd2VpcyAnJXMnIG5pY2h0IGVyc3RlbGxlbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ1MgorIzogYnVpbHRpbi9jbG9uZS5jOjQ2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY29weSBmaWxlIHRvICclcyciCiBtc2dzdHIgIktvbm50ZSBEYXRlaSBuaWNodCBuYWNoICclcycga29waWVyZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0NzgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGl0ZXJhdGUgb3ZlciAnJXMnIgorbXNnc3RyICJGZWhsZXIgYmVpbSBJdGVyaWVyZW4gw7xiZXIgJyVzJyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjQ5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJkb25lLlxuIgogbXNnc3RyICJGZXJ0aWcuXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0OTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzo1MDgKIG1zZ2lkICIiCiAiQ2xvbmUgc3VjY2VlZGVkLCBidXQgY2hlY2tvdXQgZmFpbGVkLlxuIgogIllvdSBjYW4gaW5zcGVjdCB3aGF0IHdhcyBjaGVja2VkIG91dCB3aXRoICdnaXQgc3RhdHVzJ1xuIgotImFuZCByZXRyeSB0aGUgY2hlY2tvdXQgd2l0aCAnZ2l0IGNoZWNrb3V0IC1mIEhFQUQnXG4iCisiYW5kIHJldHJ5IHdpdGggJ2dpdCByZXN0b3JlIC0tc291cmNlPUhFQUQgOi8nXG4iCiBtc2dzdHIgIiIKICJLbG9uZW4gZXJmb2xncmVpY2gsIEF1c2NoZWNrZW4gaXN0IGFiZXIgZmVobGdlc2NobGFnZW4uXG4iCiAiU2llIGvDtm5uZW4gbWl0ICdnaXQgc3RhdHVzJyBwcsO8ZmVuLCB3YXMgYXVzZ2VjaGVja3Qgd29yZGVuIGlzdFxuIgotInVuZCBkYXMgQXVzY2hlY2tlbiBtaXQgJ2dpdCBjaGVja291dCAtZiBIRUFEJyBlcm5ldXQgdmVyc3VjaGVuLlxuIgorInVuZCBkYXMgQXVzY2hlY2tlbiBtaXQgJ2dpdCByZXN0b3JlIC0tc291cmNlPUhFQUQgOi8nIGVybmV1dCB2ZXJzdWNoZW4uXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo1NjkKKyM6IGJ1aWx0aW4vY2xvbmUuYzo1ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZpbmQgcmVtb3RlIGJyYW5jaCAlcyB0byBjbG9uZS4iCiBtc2dzdHIgIktvbm50ZSB6dSBrbG9uZW5kZW4gUmVtb3RlLUJyYW5jaCAlcyBuaWNodCBmaW5kZW4uIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NjgwCisjOiBidWlsdGluL2Nsb25lLmM6NzA1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgJXMiCiBtc2dzdHIgImthbm4gJXMgbmljaHQgYWt0dWFsaXNpZXJlbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjczMAorIzogYnVpbHRpbi9jbG9uZS5jOjc1MworbXNnaWQgImZhaWxlZCB0byBpbml0aWFsaXplIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAiRmVobGVyIGJlaW0gSW5pdGlhbGlzaWVyZW4gdm9tIHBhcnRpZWxsZW4gQ2hlY2tvdXQuIgorCisjOiBidWlsdGluL2Nsb25lLmM6Nzc2CiBtc2dpZCAicmVtb3RlIEhFQUQgcmVmZXJzIHRvIG5vbmV4aXN0ZW50IHJlZiwgdW5hYmxlIHRvIGNoZWNrb3V0LlxuIgogbXNnc3RyICIiCiAiRXh0ZXJuZXIgSEVBRCBiZXppZWh0IHNpY2ggYXVmIGVpbmUgbmljaHQgZXhpc3RpZXJlbmRlIFJlZmVyZW56IHVuZCBrYW5uICIKICJuaWNodCBhdXNnZWNoZWNrdCB3ZXJkZW4uXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo3NjEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4MDcKIG1zZ2lkICJ1bmFibGUgdG8gY2hlY2tvdXQgd29ya2luZyB0cmVlIgogbXNnc3RyICJBcmJlaXRzdmVyemVpY2huaXMga29ubnRlIG5pY2h0IGF1c2dlY2hlY2t0IHdlcmRlbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjgwNgorIzogYnVpbHRpbi9jbG9uZS5jOjg2MgogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBwYXJhbWV0ZXJzIHRvIGNvbmZpZyBmaWxlIgogbXNnc3RyICJrb25udGUgUGFyYW1ldGVyIG5pY2h0IGluIEtvbmZpZ3VyYXRpb25zZGF0ZWkgc2NocmVpYmVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODY5CisjOiBidWlsdGluL2Nsb25lLmM6OTI1CiBtc2dpZCAiY2Fubm90IHJlcGFjayB0byBjbGVhbiB1cCIKIG1zZ3N0ciAiS2FubiBcInJlcGFja1wiIHp1bSBBdWZyw6R1bWVuIG5pY2h0IGF1ZnJ1ZmVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODcxCisjOiBidWlsdGluL2Nsb25lLmM6OTI3CiBtc2dpZCAiY2Fubm90IHVubGluayB0ZW1wb3JhcnkgYWx0ZXJuYXRlcyBmaWxlIgogbXNnc3RyICJLYW5uIHRlbXBvcsOkcmUgXCJhbHRlcm5hdGVzXCItRGF0ZWkgbmljaHQgZW50ZmVybmVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTExIGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk0MQorIzogYnVpbHRpbi9jbG9uZS5jOjk2NSBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NTAKIG1zZ2lkICJUb28gbWFueSBhcmd1bWVudHMuIgogbXNnc3RyICJadSB2aWVsZSBBcmd1bWVudGUuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTE1CisjOiBidWlsdGluL2Nsb25lLmM6OTY5CiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIHJlcG9zaXRvcnkgdG8gY2xvbmUuIgogbXNnc3RyICJTaWUgbcO8c3NlbiBlaW4gUmVwb3NpdG9yeSB6dW0gS2xvbmVuIGFuZ2ViZW4uIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTI4CisjOiBidWlsdGluL2Nsb25lLmM6OTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIi0tYmFyZSBhbmQgLS1vcmlnaW4gJXMgb3B0aW9ucyBhcmUgaW5jb21wYXRpYmxlLiIKIG1zZ3N0ciAiRGllIE9wdGlvbmVuIC0tYmFyZSB1bmQgLS1vcmlnaW4gJXMgc2luZCBpbmtvbXBhdGliZWwuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTMxCisjOiBidWlsdGluL2Nsb25lLmM6OTg1CiBtc2dpZCAiLS1iYXJlIGFuZCAtLXNlcGFyYXRlLWdpdC1kaXIgYXJlIGluY29tcGF0aWJsZS4iCiBtc2dzdHIgIkRpZSBPcHRpb25lbiAtLWJhcmUgdW5kIC0tc2VwYXJhdGUtZ2l0LWRpciBzaW5kIGlua29tcGF0aWJlbC4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NDQKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwb3NpdG9yeSAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJSZXBvc2l0b3J5ICclcycgZXhpc3RpZXJ0IG5pY2h0LiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk1MCBidWlsdGluL2ZldGNoLmM6MTYwNgorIzogYnVpbHRpbi9jbG9uZS5jOjEwMDQgYnVpbHRpbi9mZXRjaC5jOjE3OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVwdGggJXMgaXMgbm90IGEgcG9zaXRpdmUgbnVtYmVyIgogbXNnc3RyICJUaWVmZSAlcyBpc3Qga2VpbmUgcG9zaXRpdmUgWmFobCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk2MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzdGluYXRpb24gcGF0aCAnJXMnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYW4gZW1wdHkgZGlyZWN0b3J5LiIKIG1zZ3N0ciAiWmllbHBmYWQgJyVzJyBleGlzdGllcnQgYmVyZWl0cyB1bmQgaXN0IGtlaW4gbGVlcmVzIFZlcnplaWNobmlzLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk3MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAid29ya2luZyB0cmVlICclcycgYWxyZWFkeSBleGlzdHMuIgogbXNnc3RyICJBcmJlaXRzdmVyemVpY2huaXMgJyVzJyBleGlzdGllcnQgYmVyZWl0cy4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5ODUgYnVpbHRpbi9jbG9uZS5jOjEwMDYgYnVpbHRpbi9kaWZmdG9vbC5jOjI3MQotIzogYnVpbHRpbi93b3JrdHJlZS5jOjI5NSBidWlsdGluL3dvcmt0cmVlLmM6MzI1CisjOiBidWlsdGluL2Nsb25lLmM6MTAzOSBidWlsdGluL2Nsb25lLmM6MTA2MCBidWlsdGluL2RpZmZ0b29sLmM6MjcxCisjOiBidWlsdGluL2xvZy5jOjE4NjYgYnVpbHRpbi93b3JrdHJlZS5jOjI5NSBidWlsdGluL3dvcmt0cmVlLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgbGVhZGluZyBkaXJlY3RvcmllcyBvZiAnJXMnIgogbXNnc3RyICJLb25udGUgZsO8aHJlbmRlIFZlcnplaWNobmlzc2Ugdm9uICclcycgbmljaHQgZXJzdGVsbGVuLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk5MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSB3b3JrIHRyZWUgZGlyICclcyciCiBtc2dzdHIgIktvbm50ZSBBcmJlaXRzdmVyemVpY2huaXMgJyVzJyBuaWNodCBlcnN0ZWxsZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEwCisjOiBidWlsdGluL2Nsb25lLmM6MTA2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDbG9uaW5nIGludG8gYmFyZSByZXBvc2l0b3J5ICclcycuLi5cbiIKIG1zZ3N0ciAiS2xvbmUgaW4gQmFyZS1SZXBvc2l0b3J5ICclcycgLi4uXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEyCisjOiBidWlsdGluL2Nsb25lLmM6MTA2NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDbG9uaW5nIGludG8gJyVzJy4uLlxuIgogbXNnc3RyICJLbG9uZSBuYWNoICclcycgLi4uXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDM2CisjOiBidWlsdGluL2Nsb25lLmM6MTA5MAogbXNnaWQgIiIKICJjbG9uZSAtLXJlY3Vyc2l2ZSBpcyBub3QgY29tcGF0aWJsZSB3aXRoIGJvdGggLS1yZWZlcmVuY2UgYW5kIC0tcmVmZXJlbmNlLWlmLSIKICJhYmxlIgpAQCAtOTYyNSw0NSArMTI0MTEsNDUgQEAKICInY2xvbmUgLS1yZWN1cnNpdmUnIGlzdCBuaWNodCBrb21wYXRpYmVsIG1pdCAtLXJlZmVyZW5jZSB1bmQgLS1yZWZlcmVuY2UtaWYtIgogImFibGUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDk3CisjOiBidWlsdGluL2Nsb25lLmM6MTE1NAogbXNnaWQgIi0tZGVwdGggaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAiRGllIE9wdGlvbiAtLWRlcHRoIHdpcmQgaW4gbG9rYWxlbiBLbG9uZW4gaWdub3JpZXJ0OyBiZW51dHplbiBTaWUgIgogInN0YXR0ZGVzc2VuIGZpbGU6Ly8iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDk5CisjOiBidWlsdGluL2Nsb25lLmM6MTE1NgogbXNnaWQgIi0tc2hhbGxvdy1zaW5jZSBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCiBtc2dzdHIgIiIKICItLXNoYWxsb3ctc2luY2Ugd2lyZCBpbiBsb2thbGVuIEtsb25lbiBpZ25vcmllcnQ7IGJlbnV0emVuIFNpZSBzdGF0dGRlc3NlbiAiCiAiZmlsZTovLyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMDEKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTU4CiBtc2dpZCAiLS1zaGFsbG93LWV4Y2x1ZGUgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAiLS1zaGFsbG93LWV4Y2x1ZGUgd2lyZCBpbiBsb2thbGVuIEtsb25lbiBpZ25vcmllcnQ7IGJlbnV0emVuIFNpZSBzdGF0dGRlc3NlbiAiCiAiZmlsZTovLyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMDMKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTYwCiBtc2dpZCAiLS1maWx0ZXIgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAiLS1maWx0ZXIgd2lyZCBpbiBsb2thbGVuIEtsb25lbiBpZ25vcmllcnQ7IGJlbnV0emVuIFNpZSBzdGF0dGRlc3NlbiBmaWxlOi8vIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTEwNgorIzogYnVpbHRpbi9jbG9uZS5jOjExNjMKIG1zZ2lkICJzb3VyY2UgcmVwb3NpdG9yeSBpcyBzaGFsbG93LCBpZ25vcmluZyAtLWxvY2FsIgogbXNnc3RyICIiCiAiUXVlbGxlIGlzdCBlaW4gUmVwb3NpdG9yeSBtaXQgdW52b2xsc3TDpG5kaWdlciBIaXN0b3JpZSAoc2hhbGxvdyksXG4iCiAiaWdub3JpZXJlIC0tbG9jYWwiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTExCisjOiBidWlsdGluL2Nsb25lLmM6MTE2OAogbXNnaWQgIi0tbG9jYWwgaXMgaWdub3JlZCIKIG1zZ3N0ciAiLS1sb2NhbCB3aXJkIGlnbm9yaWVydCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExODEgYnVpbHRpbi9jbG9uZS5jOjExODkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjQzIGJ1aWx0aW4vY2xvbmUuYzoxMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW90ZSBicmFuY2ggJXMgbm90IGZvdW5kIGluIHVwc3RyZWFtICVzIgogbXNnc3RyICJSZW1vdGUtQnJhbmNoICVzIG5pY2h0IGltIFVwc3RyZWFtLVJlcG9zaXRvcnkgJXMgZ2VmdW5kZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTkyCisjOiBidWlsdGluL2Nsb25lLmM6MTI1NAogbXNnaWQgIllvdSBhcHBlYXIgdG8gaGF2ZSBjbG9uZWQgYW4gZW1wdHkgcmVwb3NpdG9yeS4iCiBtc2dzdHIgIlNpZSBzY2hlaW5lbiBlaW4gbGVlcmVzIFJlcG9zaXRvcnkgZ2VrbG9udCB6dSBoYWJlbi4iCiAKQEAgLTk2OTksMTUgKzEyNDg1LDgzIEBACiBtc2dpZCAiLS1jb21tYW5kIG11c3QgYmUgdGhlIGZpcnN0IGFyZ3VtZW50IgogbXNnc3RyICJEaWUgT3B0aW9uIC0tY29tbWFuZCBtdXNzIGFuIGVyc3RlciBTdGVsbGUgc3RlaGVuLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0MAorIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjE4Cittc2dpZCAiIgorImdpdCBjb21taXQtdHJlZSBbKC1wIDxwYXJlbnQ+KS4uLl0gWy1TWzxrZXlpZD5dXSBbKC1tIDxtZXNzYWdlPikuLi5dIFsoLUYgIgorIjxmaWxlPikuLi5dIDx0cmVlPiIKK21zZ3N0ciAiIgorImdpdCBjb21taXQtdHJlZSBbKC1wIDxFbHRlcm4tQ29tbWl0PikuLi5dIFstU1s8S2V5LUlEPl1dIFsoLW0gIgorIjxOYWNocmljaHQ+KS4uLl0gWygtRiA8RGF0ZWk+KS4uLl0gPFRyZWUtT2JqZWt0PiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjMxCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXJlbnQgJXMgaWdub3JlZCIKK21zZ3N0ciAiZG9wcGVsdGVyIFZvcmfDpG5nZXIgJXMgaWdub3JpZXJ0IgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6NTYgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEzNiBidWlsdGluL2xvZy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIKK21zZ3N0ciAiS2VpbiBnw7xsdGlnZXIgT2JqZWt0bmFtZTogJXMiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byBvcGVuICclcyciCittc2dzdHIgImdpdCBjb21taXQtdHJlZTogRmVobGVyIGJlaW0gw5ZmZm5lbiB2b24gJyVzJyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk2CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQgJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiBGZWhsZXIgYmVpbSBMZXNlbiB2b24gJyVzJyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk4CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIGNsb3NlICclcyciCittc2dzdHIgImdpdCBjb21taXQtdHJlZTogRmVobGVyIGJlaW0gU2NobGllw59lbiB2b24gJyVzJyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExMQorbXNnaWQgInBhcmVudCIKK21zZ3N0ciAiRWx0ZXJuLUNvbW1pdCIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExMgorbXNnaWQgImlkIG9mIGEgcGFyZW50IGNvbW1pdCBvYmplY3QiCittc2dzdHIgIklEIGVpbmVzIEVsdGVybi1Db21taXQtT2JqZWt0ZXMuIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE0IGJ1aWx0aW4vY29tbWl0LmM6MTUwMSBidWlsdGluL21lcmdlLmM6MjcxCisjOiBidWlsdGluL25vdGVzLmM6NDA5IGJ1aWx0aW4vbm90ZXMuYzo1NzUgYnVpbHRpbi9zdGFzaC5jOjE0NzcKKyM6IGJ1aWx0aW4vdGFnLmM6NDEyCittc2dpZCAibWVzc2FnZSIKK21zZ3N0ciAiQmVzY2hyZWlidW5nIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE1IGJ1aWx0aW4vY29tbWl0LmM6MTUwMQorbXNnaWQgImNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICJDb21taXQtQmVzY2hyZWlidW5nIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE4Cittc2dpZCAicmVhZCBjb21taXQgbG9nIG1lc3NhZ2UgZnJvbSBmaWxlIgorbXNnc3RyICJDb21taXQtQmVzY2hyZWlidW5nIHZvbiBEYXRlaSBsZXNlbiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMSBidWlsdGluL2NvbW1pdC5jOjE1MTMgYnVpbHRpbi9tZXJnZS5jOjI4OAorIzogYnVpbHRpbi9wdWxsLmM6MTc1IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE4Cittc2dpZCAiR1BHIHNpZ24gY29tbWl0IgorbXNnc3RyICJDb21taXQgbWl0IEdQRyBzaWduaWVyZW4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMzMKK21zZ2lkICJtdXN0IGdpdmUgZXhhY3RseSBvbmUgdHJlZSIKK21zZ3N0ciAiQnJhdWNoZSBnZW5hdSBlaW4gVHJlZS1PYmpla3QuIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTQwCittc2dpZCAiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gcmVhZCIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiBGZWhsZXIgYmVpbSBMZXNlbiIKKworIzogYnVpbHRpbi9jb21taXQuYzo0MQogbXNnaWQgImdpdCBjb21taXQgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICJnaXQgY29tbWl0IFs8T3B0aW9uZW4+XSBbLS1dIDxQZmFkc3BlemlmaWthdGlvbj4uLi4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDYKIG1zZ2lkICJnaXQgc3RhdHVzIFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKIG1zZ3N0ciAiZ2l0IHN0YXR1cyBbPE9wdGlvbmVuPl0gWy0tXSA8UGZhZHNwZXppZmlrYXRpb24+Li4uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjUwCisjOiBidWlsdGluL2NvbW1pdC5jOjUxCiBtc2dpZCAiIgogIllvdSBhc2tlZCB0byBhbWVuZCB0aGUgbW9zdCByZWNlbnQgY29tbWl0LCBidXQgZG9pbmcgc28gd291bGQgbWFrZVxuIgogIml0IGVtcHR5LiBZb3UgY2FuIHJlcGVhdCB5b3VyIGNvbW1hbmQgd2l0aCAtLWFsbG93LWVtcHR5LCBvciB5b3UgY2FuXG4iCkBAIC05NzE3LDcgKzEyNTcxLDcgQEAKICJtYWNoZW4uIFNpZSBrw7ZubmVuIElocmVuIEJlZmVobCBtaXQgLS1hbGxvdy1lbXB0eSB3aWVkZXJob2xlbiwgb2RlciBkaWVzZW5cbiIKICJDb21taXQgbWl0IFwiZ2l0IHJlc2V0IEhFQUReXCIgdm9sbHN0w6RuZGlnIGVudGZlcm5lbi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo1NQorIzogYnVpbHRpbi9jb21taXQuYzo1NgogbXNnaWQgIiIKICJUaGUgcHJldmlvdXMgY2hlcnJ5LXBpY2sgaXMgbm93IGVtcHR5LCBwb3NzaWJseSBkdWUgdG8gY29uZmxpY3QgcmVzb2x1dGlvbi5cbiIKICJJZiB5b3Ugd2lzaCB0byBjb21taXQgaXQgYW55d2F5LCB1c2U6XG4iCkBAIC05NzMyLDgyICsxMjU4Niw5NiBAQAogIiAgICBnaXQgY29tbWl0IC0tYWxsb3ctZW1wdHlcbiIKICJcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2MgotbXNnaWQgIk90aGVyd2lzZSwgcGxlYXNlIHVzZSAnZ2l0IHJlc2V0J1xuIgotbXNnc3RyICJBbmRlcm5mYWxscyBiZW51dHplbiBTaWUgYml0dGUgJ2dpdCByZXNldCdcbiIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjMKK21zZ2lkICJPdGhlcndpc2UsIHBsZWFzZSB1c2UgJ2dpdCBjaGVycnktcGljayAtLXNraXAnXG4iCittc2dzdHIgIkFuZGVybmZhbGxzIGJlbnV0emVuIFNpZSBiaXR0ZSAnZ2l0IGNoZXJyeS1waWNrIC0tc2tpcCdcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2NQorIzogYnVpbHRpbi9jb21taXQuYzo2NgogbXNnaWQgIiIKKyJhbmQgdGhlbiB1c2U6XG4iCisiXG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXG4iCisiXG4iCisidG8gcmVzdW1lIGNoZXJyeS1waWNraW5nIHRoZSByZW1haW5pbmcgY29tbWl0cy5cbiIKICJJZiB5b3Ugd2lzaCB0byBza2lwIHRoaXMgY29tbWl0LCB1c2U6XG4iCiAiXG4iCi0iICAgIGdpdCByZXNldFxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXG4iCiAiXG4iCi0iVGhlbiBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgd2lsbCByZXN1bWUgY2hlcnJ5LXBpY2tpbmdcbiIKLSJ0aGUgcmVtYWluaW5nIGNvbW1pdHMuXG4iCiBtc2dzdHIgIiIKLSJXZW5uIFNpZSBkaWVzZW4gQ29tbWl0IGF1c2xhc3NlbiBtw7ZjaHRlbiwgYmVudXR6ZW4gU2llOlxuIgorIlVuZCBkYW5uIG51dHplbiBTaWU6XG4iCiAiXG4iCi0iICAgIGdpdCByZXNldFxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVxuIgogIlxuIgotIkJlbnV0emVuIFNpZSBhbnNjaGxpZcOfZW5kIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiwgdW0gZGllXG4iCi0iQ2hlcnJ5LVBpY2stT3BlcmF0aW9uIG1pdCBkZW4gdmVyYmxlaWJlbmRlbiBDb21taXRzIGZvcnR6dXNldHplbi5cbiIKKyJ1bSBkYXMgQ2hlcnJ5LVBpY2tpbmcgbWl0IGRlbiDDvGJyaWdlbiBDb21taXRzIGZvcnR6dXNldHplbi5cbiIKKyJXZW5uIGRpZXNlciBDb21taXQgw7xiZXJzcHJ1bmdlbiB3ZXJkZW4gc29sbCwgbnV0emVuIFNpZTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFxuIgorIlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjMxMQorIzogYnVpbHRpbi9jb21taXQuYzozMTUKIG1zZ2lkICJmYWlsZWQgdG8gdW5wYWNrIEhFQUQgdHJlZSBvYmplY3QiCi1tc2dzdHIgIkZlaGxlciBiZWltIEVudHBhY2tlbiBkZXMgXCJUcmVlXCItT2JqZWt0ZXMgdm9uIEhFQUQuIgorbXNnc3RyICJGZWhsZXIgYmVpbSBFbnRwYWNrZW4gZGVzIFRyZWUtT2JqZWt0ZXMgdm9uIEhFQUQuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM1MgorIzogYnVpbHRpbi9jb21taXQuYzozNTEKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgIk9wdGlvbiAtLXBhdGhzcGVjLWZyb20tZmlsZSBtaXQgLWEgaXN0IG5pY2h0IHNpbm52b2xsLiIKKworIzogYnVpbHRpbi9jb21taXQuYzozNjQKK21zZ2lkICJObyBwYXRocyB3aXRoIC0taW5jbHVkZS8tLW9ubHkgZG9lcyBub3QgbWFrZSBzZW5zZS4iCittc2dzdHIgIktlaW5lIFBmYWRlIG1pdCBkZXIgT3B0aW9uIC0taW5jbHVkZS8tLW9ubHkgaXN0IG5pY2h0IHNpbm52b2xsLiIKKworIzogYnVpbHRpbi9jb21taXQuYzozNzYKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBpbmRleCIKIG1zZ3N0ciAiS29ubnRlIHRlbXBvcsOkcmVuIEluZGV4IG5pY2h0IGVyc3RlbGxlbi4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzU4CisjOiBidWlsdGluL2NvbW1pdC5jOjM4NQogbXNnaWQgImludGVyYWN0aXZlIGFkZCBmYWlsZWQiCiBtc2dzdHIgImludGVyYWt0aXZlcyBIaW56dWbDvGdlbiBmZWhsZ2VzY2hsYWdlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNzEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDAwCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgIktvbm50ZSB0ZW1wb3LDpHJlbiBJbmRleCBuaWNodCBha3R1YWxpc2llcmVuLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNzMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDAyCiBtc2dpZCAiRmFpbGVkIHRvIHVwZGF0ZSBtYWluIGNhY2hlIHRyZWUiCiBtc2dzdHIgIktvbm50ZSBIYXVwdC1DYWNoZS1WZXJ6ZWljaG5pcyBuaWNodCBha3R1YWxpc2llcmVuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM5OCBidWlsdGluL2NvbW1pdC5jOjQyMSBidWlsdGluL2NvbW1pdC5jOjQ2NworIzogYnVpbHRpbi9jb21taXQuYzo0MjcgYnVpbHRpbi9jb21taXQuYzo0NTAgYnVpbHRpbi9jb21taXQuYzo0OTYKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3X2luZGV4IGZpbGUiCiBtc2dzdHIgIktvbm50ZSBuZXdfaW5kZXggRGF0ZWkgbmljaHQgc2NocmVpYmVuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ1MAorIzogYnVpbHRpbi9jb21taXQuYzo0NzkKIG1zZ2lkICJjYW5ub3QgZG8gYSBwYXJ0aWFsIGNvbW1pdCBkdXJpbmcgYSBtZXJnZS4iCiBtc2dzdHIgIkthbm4ga2VpbmVuIFRlaWwtQ29tbWl0IGR1cmNoZsO8aHJlbiwgd8OkaHJlbmQgZWluIE1lcmdlIGltIEdhbmdlIGlzdC4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDUyCisjOiBidWlsdGluL2NvbW1pdC5jOjQ4MQogbXNnaWQgImNhbm5vdCBkbyBhIHBhcnRpYWwgY29tbWl0IGR1cmluZyBhIGNoZXJyeS1waWNrLiIKIG1zZ3N0ciAiIgogIkthbm4ga2VpbmVuIFRlaWwtQ29tbWl0IGR1cmNoZsO8aHJlbiwgd8OkaHJlbmQgXCJjaGVycnktcGlja1wiIGltIEdhbmdlIGlzdC4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDYwCisjOiBidWlsdGluL2NvbW1pdC5jOjQ4OQogbXNnaWQgImNhbm5vdCByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAiS2FubiBJbmRleCBuaWNodCBsZXNlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTA4CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRlbXBvcmFyeSBpbmRleCBmaWxlIgogbXNnc3RyICJLb25udGUgdGVtcG9yw6RyZSBJbmRleC1EYXRlaSBuaWNodCBzY2hyZWliZW4uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3NworIzogYnVpbHRpbi9jb21taXQuYzo2MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgbGFja3MgYXV0aG9yIGhlYWRlciIKIG1zZ3N0ciAiQ29tbWl0ICclcycgZmVobHQgQXV0b3ItS29wZmJlcmVpY2giCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTc5CisjOiBidWlsdGluL2NvbW1pdC5jOjYwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJyVzJyBoYXMgbWFsZm9ybWVkIGF1dGhvciBsaW5lIgogbXNnc3RyICJDb21taXQgJyVzJyBoYXQgZmVobGVyaGFmdGUgQXV0b3ItWmVpbGUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTk4CisjOiBidWlsdGluL2NvbW1pdC5jOjYyNwogbXNnaWQgIm1hbGZvcm1lZCAtLWF1dGhvciBwYXJhbWV0ZXIiCiBtc2dzdHIgIkZlaGxlcmhhZnRlciAtLWF1dGhvciBQYXJhbWV0ZXIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjUwCisjOiBidWlsdGluL2NvbW1pdC5jOjY4MAogbXNnaWQgIiIKICJ1bmFibGUgdG8gc2VsZWN0IGEgY29tbWVudCBjaGFyYWN0ZXIgdGhhdCBpcyBub3QgdXNlZFxuIgogImluIHRoZSBjdXJyZW50IGNvbW1pdCBtZXNzYWdlIgpAQCAtOTgxNSwzOCArMTI2ODMsMzggQEAKICJLb25udGUga2VpbiBLb21tZW50YXItWmVpY2hlbiBhdXN3w6RobGVuLCBkYXMgbmljaHQgaW5cbiIKICJkZXIgYWt0dWVsbGVuIENvbW1pdC1CZXNjaHJlaWJ1bmcgdmVyd2VuZGV0IHdpcmQuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY4NyBidWlsdGluL2NvbW1pdC5jOjcyMCBidWlsdGluL2NvbW1pdC5jOjEwNDkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzE4IGJ1aWx0aW4vY29tbWl0LmM6NzUxIGJ1aWx0aW4vY29tbWl0LmM6MTA5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9va3VwIGNvbW1pdCAlcyIKIG1zZ3N0ciAiS29ubnRlIENvbW1pdCAlcyBuaWNodCBuYWNoc2NobGFnZW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Njk5IGJ1aWx0aW4vc2hvcnRsb2cuYzozMTcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzMwIGJ1aWx0aW4vc2hvcnRsb2cuYzozMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiKHJlYWRpbmcgbG9nIG1lc3NhZ2UgZnJvbSBzdGFuZGFyZCBpbnB1dClcbiIKIG1zZ3N0ciAiKGxlc2UgTG9nLU5hY2hyaWNodCB2b24gU3RhbmRhcmQtRWluZ2FiZSlcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3MDEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzMyCiBtc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZyb20gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgIktvbm50ZSBMb2cgbmljaHQgdm9uIFN0YW5kYXJkLUVpbmdhYmUgbGVzZW4uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjcwNQorIzogYnVpbHRpbi9jb21taXQuYzo3MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZpbGUgJyVzJyIKIG1zZ3N0ciAiS29ubnRlIExvZy1EYXRlaSAnJXMnIG5pY2h0IGxlc2VuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjczNCBidWlsdGluL2NvbW1pdC5jOjc0MgorIzogYnVpbHRpbi9jb21taXQuYzo3NjcgYnVpbHRpbi9jb21taXQuYzo3ODMKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBTUVVBU0hfTVNHIgogbXNnc3RyICJLb25udGUgU1FVQVNIX01TRyBuaWNodCBsZXNlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3MzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Nzc0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgTUVSR0VfTVNHIgogbXNnc3RyICJLb25udGUgTUVSR0VfTVNHIG5pY2h0IGxlc2VuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjc5MworIzogYnVpbHRpbi9jb21taXQuYzo4MzQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29tbWl0IHRlbXBsYXRlIgogbXNnc3RyICJLb25udGUgQ29tbWl0LVZvcmxhZ2UgbmljaHQgc2NocmVpYmVuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjgxMQorIzogYnVpbHRpbi9jb21taXQuYzo4NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtOTg2MSw3ICsxMjcyOSw3IEBACiAiXHQlc1xuIgogInVuZCB2ZXJzdWNoZW4gU2llIGVzIGVybmV1dC5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MTYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTk4NzYsNyArMTI3NDQsNyBAQAogIlx0JXNcbiIKICJ1bmQgdmVyc3VjaGVuIFNpZSBlcyBlcm5ldXQuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODI5CisjOiBidWlsdGluL2NvbW1pdC5jOjg3MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgeW91ciBjaGFuZ2VzLiBMaW5lcyBzdGFydGluZ1xuIgpAQCAtOTg4Niw3ICsxMjc1NCw3IEBACiAiZGllIG1pdCAnJWMnIGJlZ2lubmVuLCB3ZXJkZW4gaWdub3JpZXJ0LCB1bmQgZWluZSBsZWVyZSBCZXNjaHJlaWJ1bmdcbiIKICJicmljaHQgZGVuIENvbW1pdCBhYi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQbGVhc2UgZW50ZXIgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB5b3VyIGNoYW5nZXMuIExpbmVzIHN0YXJ0aW5nXG4iCkBAIC05ODk5LDE1OSArMTI3NjcsMTQ5IEBACiAiZW50ZmVybmVuLlxuIgogIkVpbmUgbGVlcmUgQmVzY2hyZWlidW5nIGJyaWNodCBkZW4gQ29tbWl0IGFiLlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjg1NAorIzogYnVpbHRpbi9jb21taXQuYzo4OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXNBdXRob3I6ICAgICUuKnMgPCUuKnM+IgogbXNnc3RyICIlc0F1dG9yOiAgICAgICAgICAgJS4qcyA8JS4qcz4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODYyCisjOiBidWlsdGluL2NvbW1pdC5jOjkwNAogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0RhdGU6ICAgICAgJXMiCiBtc2dzdHIgIiVzRGF0dW06ICAgICAgICAgICAgJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODY5CisjOiBidWlsdGluL2NvbW1pdC5jOjkxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0NvbW1pdHRlcjogJS4qcyA8JS4qcz4iCiBtc2dzdHIgIiVzQ29tbWl0LUVyc3RlbGxlcjogJS4qcyA8JS4qcz4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODg3CisjOiBidWlsdGluL2NvbW1pdC5jOjkyOQogbXNnaWQgIkNhbm5vdCByZWFkIGluZGV4IgogbXNnc3RyICJLYW5uIEluZGV4IG5pY2h0IGxlc2VuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjk1MworIzogYnVpbHRpbi9jb21taXQuYzo5OTcKIG1zZ2lkICJFcnJvciBidWlsZGluZyB0cmVlcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gRXJ6ZXVnZW4gZGVyIFwiVHJlZVwiLU9iamVrdGUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6OTY3IGJ1aWx0aW4vdGFnLmM6MjU4CisjOiBidWlsdGluL2NvbW1pdC5jOjEwMTEgYnVpbHRpbi90YWcuYzoyNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiUGxlYXNlIHN1cHBseSB0aGUgbWVzc2FnZSB1c2luZyBlaXRoZXIgLW0gb3IgLUYgb3B0aW9uLlxuIgogbXNnc3RyICIiCiAiQml0dGUgbGllZmVybiBTaWUgZWluZSBCZXNjaHJlaWJ1bmcgZW50d2VkZXIgbWl0IGRlciBPcHRpb24gLW0gb2RlciAtRi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDExCisjOiBidWlsdGluL2NvbW1pdC5jOjEwNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiLS1hdXRob3IgJyVzJyBpcyBub3QgJ05hbWUgPGVtYWlsPicgYW5kIG1hdGNoZXMgbm8gZXhpc3RpbmcgYXV0aG9yIgogbXNnc3RyICIiCiAiLS1hdXRob3IgJyVzJyBpc3QgbmljaHQgaW0gRm9ybWF0ICdOYW1lIDxFLU1haWw+JyB1bmQgc3RpbW10IG1pdCBrZWluZW0gIgogInZvcmhhbmRlbmVuIEF1dG9yIMO8YmVyZWluIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwMjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIGlnbm9yZWQgbW9kZSAnJXMnIgogbXNnc3RyICJVbmfDvGx0aWdlciBpZ25vcmVkLU1vZHVzICclcycuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwMzkgYnVpbHRpbi9jb21taXQuYzoxMjc2CisjOiBidWlsdGluL2NvbW1pdC5jOjEwODcgYnVpbHRpbi9jb21taXQuYzoxMzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdW50cmFja2VkIGZpbGVzIG1vZGUgJyVzJyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgTW9kdXMgJyVzJyBmw7xyIHVudmVyc2lvbmllcnRlIERhdGVpZW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTA3NworIzogYnVpbHRpbi9jb21taXQuYzoxMTI3CiBtc2dpZCAiLS1sb25nIGFuZCAteiBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICJEaWUgT3B0aW9uZW4gLS1sb25nIHVuZCAteiBzaW5kIGlua29tcGF0aWJlbC4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTExMAorIzogYnVpbHRpbi9jb21taXQuYzoxMTcxCiBtc2dpZCAiVXNpbmcgYm90aCAtLXJlc2V0LWF1dGhvciBhbmQgLS1hdXRob3IgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiIgogIkRpZSBPcHRpb25lbiAtLXJlc2V0LWF1dGhvciB1bmQgLS1hdXRob3Iga8O2bm5lbiBuaWNodCBnZW1laW5zYW0gdmVyd2VuZGV0ICIKICJ3ZXJkZW4uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMTkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MAogbXNnaWQgIllvdSBoYXZlIG5vdGhpbmcgdG8gYW1lbmQuIgogbXNnc3RyICJTaWUgaGFiZW4gbmljaHRzIGbDvHIgXCItLWFtZW5kXCIuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MwogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIC0tIGNhbm5vdCBhbWVuZC4iCiBtc2dzdHIgIkVpbiBNZXJnZSBpc3QgaW0gR2FuZ2UgLS0ga2FubiBcIi0tYW1lbmRcIiBuaWNodCBhdXNmw7xocmVuLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTI0CisjOiBidWlsdGluL2NvbW1pdC5jOjExODUKIG1zZ2lkICJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSBjaGVycnktcGljayAtLSBjYW5ub3QgYW1lbmQuIgogbXNnc3RyICJcImNoZXJyeS1waWNrXCIgaXN0IGltIEdhbmdlIC0tIGthbm4gXCItLWFtZW5kXCIgbmljaHQgYXVzZsO8aHJlbi4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNworIzogYnVpbHRpbi9jb21taXQuYzoxMTg4CiBtc2dpZCAiT3B0aW9ucyAtLXNxdWFzaCBhbmQgLS1maXh1cCBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAiIgogIkRpZSBPcHRpb25lbiAtLXNxdWFzaCB1bmQgLS1maXh1cCBrw7ZubmVuIG5pY2h0IGdlbWVpbnNhbSB2ZXJ3ZW5kZXQgd2VyZGVuLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTM3CisjOiBidWlsdGluL2NvbW1pdC5jOjExOTgKIG1zZ2lkICJPbmx5IG9uZSBvZiAtYy8tQy8tRi8tLWZpeHVwIGNhbiBiZSB1c2VkLiIKIG1zZ3N0ciAiRXMga2FubiBudXIgZWluZSBPcHRpb24gdm9uIC1jLy1DLy1GLy0tZml4dXAgdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEzOQorIzogYnVpbHRpbi9jb21taXQuYzoxMjAwCiBtc2dpZCAiT3B0aW9uIC1tIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIC1jLy1DLy1GLiIKIG1zZ3N0ciAiRGllIE9wdGlvbiAtbSBrYW5uIG5pY2h0IG1pdCAtYy8tQy8tRiBrb21iaW5pZXJ0IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE0NworIzogYnVpbHRpbi9jb21taXQuYzoxMjA4CiBtc2dpZCAiLS1yZXNldC1hdXRob3IgY2FuIGJlIHVzZWQgb25seSB3aXRoIC1DLCAtYyBvciAtLWFtZW5kLiIKIG1zZ3N0ciAiIgogIkRpZSBPcHRpb24gLS1yZXNldC0tYXV0aG9yIGthbm4gbnVyIG1pdCAtQywgLWMgb2RlciAtLWFtZW5kIHZlcndlbmRldCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIyNQogbXNnaWQgIk9ubHkgb25lIG9mIC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIGNhbiBiZSB1c2VkLiIKIG1zZ3N0ciAiIgogIkVzIGthbm4gbnVyIGVpbmUgT3B0aW9uIHZvbiAtLWluY2x1ZGUvLS1vbmx5Ly0tYWxsLy0taW50ZXJhY3RpdmUvLS1wYXRjaCAiCiAidmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE2NgotbXNnaWQgIk5vIHBhdGhzIHdpdGggLS1pbmNsdWRlLy0tb25seSBkb2VzIG5vdCBtYWtlIHNlbnNlLiIKLW1zZ3N0ciAiIgotIkRpZSBPcHRpb25lbiAtLWluY2x1ZGUgdW5kIC0tb25seSBrw7ZubmVuIG51ciBtaXQgZGVyIEFuZ2FiZSB2b24gUGZhZGVuICIKLSJ2ZXJ3ZW5kZXQgd2VyZGVuLiIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxMTgwIGJ1aWx0aW4vdGFnLmM6NTQ2CisjOiBidWlsdGluL2NvbW1pdC5jOjEyMzEKICMsIGMtZm9ybWF0Ci1tc2dpZCAiSW52YWxpZCBjbGVhbnVwIG1vZGUgJXMiCi1tc2dzdHIgIlVuZ8O8bHRpZ2VyIFwiY2xlYW51cFwiIE1vZHVzICVzIgorbXNnaWQgInBhdGhzICclcyAuLi4nIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiUGZhZGUgJyVzIC4uLicgbWl0IC1hIHNpbmQgbmljaHQgc2lubnZvbGwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4NQotbXNnaWQgIlBhdGhzIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZS4iCi1tc2dzdHIgIkRpZSBPcHRpb24gLWEga2FubiBuaWNodCBtaXQgZGVyIEFuZ2FiZSB2b24gUGZhZGVuIHZlcndlbmRldCB3ZXJkZW4uIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTEgYnVpbHRpbi9jb21taXQuYzoxNDk1CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjIgYnVpbHRpbi9jb21taXQuYzoxNTI0CiBtc2dpZCAic2hvdyBzdGF0dXMgY29uY2lzZWx5IgogbXNnc3RyICJTdGF0dXMgaW0gS3VyemZvcm1hdCBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzEzIGJ1aWx0aW4vY29tbWl0LmM6MTQ5NworIzogYnVpbHRpbi9jb21taXQuYzoxMzY0IGJ1aWx0aW4vY29tbWl0LmM6MTUyNgogbXNnaWQgInNob3cgYnJhbmNoIGluZm9ybWF0aW9uIgogbXNnc3RyICJCcmFuY2hpbmZvcm1hdGlvbmVuIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2NgogbXNnaWQgInNob3cgc3Rhc2ggaW5mb3JtYXRpb24iCiBtc2dzdHIgIlN0YXNoaW5mb3JtYXRpb25lbiBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzE3IGJ1aWx0aW4vY29tbWl0LmM6MTQ5OQorIzogYnVpbHRpbi9jb21taXQuYzoxMzY4IGJ1aWx0aW4vY29tbWl0LmM6MTUyOAogbXNnaWQgImNvbXB1dGUgZnVsbCBhaGVhZC9iZWhpbmQgdmFsdWVzIgogbXNnc3RyICJ2b3JhdXMvaGludGVyaGVyLVdlcnRlIGJlcmVjaG5lbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzE5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzAKIG1zZ2lkICJ2ZXJzaW9uIgogbXNnc3RyICJWZXJzaW9uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTkgYnVpbHRpbi9jb21taXQuYzoxNTAxIGJ1aWx0aW4vcHVzaC5jOjU1OAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjYzOQorIzogYnVpbHRpbi9jb21taXQuYzoxMzcwIGJ1aWx0aW4vY29tbWl0LmM6MTUzMCBidWlsdGluL3B1c2guYzo1NDkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NDMKIG1zZ2lkICJtYWNoaW5lLXJlYWRhYmxlIG91dHB1dCIKIG1zZ3N0ciAibWFzY2hpbmVubGVzYmFyZSBBdXNnYWJlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjIgYnVpbHRpbi9jb21taXQuYzoxNTAzCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzMgYnVpbHRpbi9jb21taXQuYzoxNTMyCiBtc2dpZCAic2hvdyBzdGF0dXMgaW4gbG9uZyBmb3JtYXQgKGRlZmF1bHQpIgogbXNnc3RyICJTdGF0dXMgaW0gTGFuZ2Zvcm1hdCBhbnplaWdlbiAoU3RhbmRhcmQpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjUgYnVpbHRpbi9jb21taXQuYzoxNTA2CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzYgYnVpbHRpbi9jb21taXQuYzoxNTM1CiBtc2dpZCAidGVybWluYXRlIGVudHJpZXMgd2l0aCBOVUwiCiBtc2dzdHIgIkVpbnRyw6RnZSBtaXQgTlVMLVplaWNoZW4gYWJzY2hsaWXDn2VuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjcgYnVpbHRpbi9jb21taXQuYzoxMzMxIGJ1aWx0aW4vY29tbWl0LmM6MTUwOQotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMDcgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTAgYnVpbHRpbi9yZWJhc2UuYzo5MTAKLSM6IGJ1aWx0aW4vdGFnLmM6NDAwCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzggYnVpbHRpbi9jb21taXQuYzoxMzgyIGJ1aWx0aW4vY29tbWl0LmM6MTUzOAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTMgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTYKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTU5IGJ1aWx0aW4vcmViYXNlLmM6MTU2OSBwYXJzZS1vcHRpb25zLmg6MzM2CiBtc2dpZCAibW9kZSIKIG1zZ3N0ciAiTW9kdXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyOCBidWlsdGluL2NvbW1pdC5jOjE1MDkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3OSBidWlsdGluL2NvbW1pdC5jOjE1MzgKIG1zZ2lkICJzaG93IHVudHJhY2tlZCBmaWxlcywgb3B0aW9uYWwgbW9kZXM6IGFsbCwgbm9ybWFsLCBuby4gKERlZmF1bHQ6IGFsbCkiCiBtc2dzdHIgIiIKICJ1bnZlcnNpb25pZXJ0ZSBEYXRlaWVuIGFuemVpZ2VuLCBvcHRpb25hbGUgTW9kaTogYWxsLCBub3JtYWwsIG5vLiAoU3RhbmRhcmQ6ICIKICJhbGwpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4MwogbXNnaWQgIiIKICJzaG93IGlnbm9yZWQgZmlsZXMsIG9wdGlvbmFsIG1vZGVzOiB0cmFkaXRpb25hbCwgbWF0Y2hpbmcsIG5vLiAoRGVmYXVsdDogIgogInRyYWRpdGlvbmFsKSIKQEAgLTEwMDU5LDExICsxMjkxNywxMSBAQAogImlnbm9yaWVydGUgRGF0ZWllbiBhbnplaWdlbiwgb3B0aW9uYWxlIE1vZGk6IHRyYWRpdGlvbmFsLCBtYXRjaGluZywgbm8uICIKICIoU3RhbmRhcmQ6IHRyYWRpdGlvbmFsKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM0IHBhcnNlLW9wdGlvbnMuaDoxNjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4NSBwYXJzZS1vcHRpb25zLmg6MTkyCiBtc2dpZCAid2hlbiIKIG1zZ3N0ciAid2FubiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM1CisjOiBidWlsdGluL2NvbW1pdC5jOjEzODYKIG1zZ2lkICIiCiAiaWdub3JlIGNoYW5nZXMgdG8gc3VibW9kdWxlcywgb3B0aW9uYWwgd2hlbjogYWxsLCBkaXJ0eSwgdW50cmFja2VkLiAiCiAiKERlZmF1bHQ6IGFsbCkiCkBAIC0xMDA3MSwyNTcgKzEyOTI5LDI1OCBAQAogIsOEbmRlcnVuZ2VuIGluIFN1Ym1vZHVsZW4gaWdub3JpZXJlbiwgb3B0aW9uYWwgd2VubjogYWxsLCBkaXJ0eSwgdW50cmFja2VkLiAiCiAiKFN0YW5kYXJkOiBhbGwpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4OAogbXNnaWQgImxpc3QgdW50cmFja2VkIGZpbGVzIGluIGNvbHVtbnMiCiBtc2dzdHIgInVudmVyc2lvbmllcnRlIERhdGVpZW4gaW4gU3BhbHRlbiBhdWZsaXN0ZW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMzOAorIzogYnVpbHRpbi9jb21taXQuYzoxMzg5CiBtc2dpZCAiZG8gbm90IGRldGVjdCByZW5hbWVzIgogbXNnc3RyICJrZWluZSBVbWJlbmVubnVuZ2VuIGVybWl0dGVsbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzQwCisjOiBidWlsdGluL2NvbW1pdC5jOjEzOTEKIG1zZ2lkICJkZXRlY3QgcmVuYW1lcywgb3B0aW9uYWxseSBzZXQgc2ltaWxhcml0eSBpbmRleCIKIG1zZ3N0ciAiVW1iZW5lbm51bmdlbiBlcmtlbm5lbiwgb3B0aW9uYWwgSW5kZXggZsO8ciBHbGVpY2hoZWl0IHNldHplbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzYwCisjOiBidWlsdGluL2NvbW1pdC5jOjE0MTEKIG1zZ2lkICJVbnN1cHBvcnRlZCBjb21iaW5hdGlvbiBvZiBpZ25vcmVkIGFuZCB1bnRyYWNrZWQtZmlsZXMgYXJndW1lbnRzIgogbXNnc3RyICIiCiAiTmljaHQgdW50ZXJzdMO8dHp0ZSBLb21iaW5hdGlvbiB2b24gaWdub3JlZCB1bmQgdW50cmFja2VkLWZpbGVzIEFyZ3VtZW50ZW4uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NAogbXNnaWQgInN1cHByZXNzIHN1bW1hcnkgYWZ0ZXIgc3VjY2Vzc2Z1bCBjb21taXQiCiBtc2dzdHIgIlp1c2FtbWVuZmFzc3VuZyBuYWNoIGVyZm9sZ3JlaWNoZW0gQ29tbWl0IHVudGVyZHLDvGNrZW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2NgorIzogYnVpbHRpbi9jb21taXQuYzoxNDk1CiBtc2dpZCAic2hvdyBkaWZmIGluIGNvbW1pdCBtZXNzYWdlIHRlbXBsYXRlIgogbXNnc3RyICJVbnRlcnNjaGllZGUgaW4gQ29tbWl0LUJlc2NocmVpYnVuZ3N2b3JsYWdlIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NwogbXNnaWQgIkNvbW1pdCBtZXNzYWdlIG9wdGlvbnMiCiBtc2dzdHIgIk9wdGlvbmVuIGbDvHIgQ29tbWl0LUJlc2NocmVpYnVuZyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDY5IGJ1aWx0aW4vbWVyZ2UuYzoyNjMgYnVpbHRpbi90YWcuYzozOTcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5OCBidWlsdGluL21lcmdlLmM6Mjc1IGJ1aWx0aW4vdGFnLmM6NDE0CiBtc2dpZCAicmVhZCBtZXNzYWdlIGZyb20gZmlsZSIKIG1zZ3N0ciAiQmVzY2hyZWlidW5nIHZvbiBEYXRlaSBsZXNlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcwCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTkKIG1zZ2lkICJhdXRob3IiCiBtc2dzdHIgIkF1dG9yIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5OQogbXNnaWQgIm92ZXJyaWRlIGF1dGhvciBmb3IgY29tbWl0IgogbXNnc3RyICJBdXRvciBlaW5lcyBDb21taXRzIMO8YmVyc2NocmVpYmVuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzEgYnVpbHRpbi9nYy5jOjUxOAorIzogYnVpbHRpbi9jb21taXQuYzoxNTAwIGJ1aWx0aW4vZ2MuYzo1MzgKIG1zZ2lkICJkYXRlIgogbXNnc3RyICJEYXR1bSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcxCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDAKIG1zZ2lkICJvdmVycmlkZSBkYXRlIGZvciBjb21taXQiCiBtc2dzdHIgIkRhdHVtIGVpbmVzIENvbW1pdHMgw7xiZXJzY2hyZWliZW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MiBidWlsdGluL21lcmdlLmM6MjU5IGJ1aWx0aW4vbm90ZXMuYzo0MDkKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1NzIgYnVpbHRpbi90YWcuYzozOTUKLW1zZ2lkICJtZXNzYWdlIgotbXNnc3RyICJCZXNjaHJlaWJ1bmciCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MgotbXNnaWQgImNvbW1pdCBtZXNzYWdlIgotbXNnc3RyICJDb21taXQtQmVzY2hyZWlidW5nIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzMgYnVpbHRpbi9jb21taXQuYzoxNDc0IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NQotIzogYnVpbHRpbi9jb21taXQuYzoxNDc2IHJlZi1maWx0ZXIuaDo5MiBwYXJzZS1vcHRpb25zLmg6MjgwCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDIgYnVpbHRpbi9jb21taXQuYzoxNTAzIGJ1aWx0aW4vY29tbWl0LmM6MTUwNAorIzogYnVpbHRpbi9jb21taXQuYzoxNTA1IHBhcnNlLW9wdGlvbnMuaDozMjggcmVmLWZpbHRlci5oOjkyCiBtc2dpZCAiY29tbWl0IgogbXNnc3RyICJDb21taXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MworIzogYnVpbHRpbi9jb21taXQuYzoxNTAyCiBtc2dpZCAicmV1c2UgYW5kIGVkaXQgbWVzc2FnZSBmcm9tIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgIkJlc2NocmVpYnVuZyBkZXMgYW5nZWdlYmVuZW4gQ29tbWl0cyB3aWVkZXJ2ZXJ3ZW5kZW4gdW5kIGVkaXRpZXJlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc0CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDMKIG1zZ2lkICJyZXVzZSBtZXNzYWdlIGZyb20gc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAiQmVzY2hyZWlidW5nIGRlcyBhbmdlZ2ViZW5lbiBDb21taXRzIHdpZWRlcnZlcndlbmRlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc1CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDQKIG1zZ2lkICJ1c2UgYXV0b3NxdWFzaCBmb3JtYXR0ZWQgbWVzc2FnZSB0byBmaXh1cCBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICIiCiAiZWluZSBhdXRvbWF0aXNjaCB6dXNhbW1lbmdlc2V0enRlIEJlc2NocmVpYnVuZyB6dW0gTmFjaGJlc3Nlcm4gZGVzICIKICJhbmdlZ2ViZW5lbiBDb21taXRzIHZlcndlbmRlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc2CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDUKIG1zZ2lkICJ1c2UgYXV0b3NxdWFzaCBmb3JtYXR0ZWQgbWVzc2FnZSB0byBzcXVhc2ggc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAiIgogImVpbmUgYXV0b21hdGlzY2ggenVzYW1tZW5nZXNldHp0ZSBCZXNjaHJlaWJ1bmcgYmVpbSBcInNxdWFzaFwiIGRlcyAiCiAiYW5nZWdlYmVuZW4gQ29tbWl0cyB2ZXJ3ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NworIzogYnVpbHRpbi9jb21taXQuYzoxNTA2CiBtc2dpZCAidGhlIGNvbW1pdCBpcyBhdXRob3JlZCBieSBtZSBub3cgKHVzZWQgd2l0aCAtQy8tYy8tLWFtZW5kKSIKIG1zZ3N0ciAiU2llIGFscyBBdXRvciBkZXMgQ29tbWl0cyBzZXR6ZW4gKHZlcndlbmRldCBtaXQgLUMvLWMvLS1hbWVuZCkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3OCBidWlsdGluL2xvZy5jOjE1MjAgYnVpbHRpbi9tZXJnZS5jOjI3NgotIzogYnVpbHRpbi9wdWxsLmM6MTU1IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA2CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDcgYnVpbHRpbi9sb2cuYzoxNjM0IGJ1aWx0aW4vbWVyZ2UuYzoyOTAKKyM6IGJ1aWx0aW4vcHVsbC5jOjE0NCBidWlsdGluL3JldmVydC5jOjExMAogbXNnaWQgImFkZCBTaWduZWQtb2ZmLWJ5OiIKIG1zZ3N0ciAiJ1NpZ25lZC1vZmYtYnk6Jy1aZWlsZSBoaW56dWbDvGdlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc5CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDgKIG1zZ2lkICJ1c2Ugc3BlY2lmaWVkIHRlbXBsYXRlIGZpbGUiCiBtc2dzdHIgImFuZ2VnZWJlbmUgVm9ybGFnZW5kYXRlaSB2ZXJ3ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MAorIzogYnVpbHRpbi9jb21taXQuYzoxNTA5CiBtc2dpZCAiZm9yY2UgZWRpdCBvZiBjb21taXQiCiBtc2dzdHIgIkJlYXJiZWl0dW5nIGRlcyBDb21taXRzIGVyendpbmdlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDgxCi1tc2dpZCAiZGVmYXVsdCIKLW1zZ3N0ciAiU3RhbmRhcmQiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MSBidWlsdGluL3RhZy5jOjQwMQotbXNnaWQgImhvdyB0byBzdHJpcCBzcGFjZXMgYW5kICNjb21tZW50cyBmcm9tIG1lc3NhZ2UiCi1tc2dzdHIgIiIKLSJ3aWUgTGVlcnplaWNoZW4gdW5kICNLb21tZW50YXJlIHZvbiBkZXIgQmVzY2hyZWlidW5nIGdldHJlbm50IHdlcmRlbiBzb2xsZW4iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MgorIzogYnVpbHRpbi9jb21taXQuYzoxNTExCiBtc2dpZCAiaW5jbHVkZSBzdGF0dXMgaW4gY29tbWl0IG1lc3NhZ2UgdGVtcGxhdGUiCiBtc2dzdHIgIlN0YXR1cyBpbiBkaWUgQ29tbWl0LUJlc2NocmVpYnVuZ3N2b3JsYWdlIGVpbmbDvGdlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDg0IGJ1aWx0aW4vbWVyZ2UuYzoyNzQgYnVpbHRpbi9wdWxsLmM6MTg1Ci0jOiBidWlsdGluL3JldmVydC5jOjExNAotbXNnaWQgIkdQRyBzaWduIGNvbW1pdCIKLW1zZ3N0ciAiQ29tbWl0IG1pdCBHUEcgc2lnbmllcmVuIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNgogbXNnaWQgIkNvbW1pdCBjb250ZW50cyBvcHRpb25zIgogbXNnc3RyICJPcHRpb25lbiBmw7xyIENvbW1pdC1JbmhhbHQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4OAorIzogYnVpbHRpbi9jb21taXQuYzoxNTE3CiBtc2dpZCAiY29tbWl0IGFsbCBjaGFuZ2VkIGZpbGVzIgogbXNnc3RyICJhbGxlIGdlw6RuZGVydGVuIERhdGVpZW4gY29tbWl0dGVuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxOAogbXNnaWQgImFkZCBzcGVjaWZpZWQgZmlsZXMgdG8gaW5kZXggZm9yIGNvbW1pdCIKIG1zZ3N0ciAiZGllIGFuZ2VnZWJlbmVuIERhdGVpZW4genVzw6R0emxpY2ggenVtIENvbW1pdCB2b3JtZXJrZW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MAorIzogYnVpbHRpbi9jb21taXQuYzoxNTE5CiBtc2dpZCAiaW50ZXJhY3RpdmVseSBhZGQgZmlsZXMiCiBtc2dzdHIgImludGVyYWt0aXZlcyBIaW56dWbDvGdlbiB2b24gRGF0ZWllbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDkxCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjAKIG1zZ2lkICJpbnRlcmFjdGl2ZWx5IGFkZCBjaGFuZ2VzIgogbXNnc3RyICJpbnRlcmFrdGl2ZXMgSGluenVmw7xnZW4gdm9uIMOEbmRlcnVuZ2VuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMQogbXNnaWQgImNvbW1pdCBvbmx5IHNwZWNpZmllZCBmaWxlcyIKIG1zZ3N0ciAibnVyIGRpZSBhbmdlZ2ViZW5lbiBEYXRlaWVuIGNvbW1pdHRlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDkzCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjIKIG1zZ2lkICJieXBhc3MgcHJlLWNvbW1pdCBhbmQgY29tbWl0LW1zZyBob29rcyIKIG1zZ3N0ciAiSG9va3MgcHJlLWNvbW1pdCB1bmQgY29tbWl0LW1zZyB1bWdlaGVuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMwogbXNnaWQgInNob3cgd2hhdCB3b3VsZCBiZSBjb21taXR0ZWQiCiBtc2dzdHIgImFuemVpZ2VuLCB3YXMgY29tbWl0dGV0IHdlcmRlbiB3w7xyZGUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNworIzogYnVpbHRpbi9jb21taXQuYzoxNTM2CiBtc2dpZCAiYW1lbmQgcHJldmlvdXMgY29tbWl0IgogbXNnc3RyICJ2b3JoZXJpZ2VuIENvbW1pdCDDpG5kZXJuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MDgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUzNwogbXNnaWQgImJ5cGFzcyBwb3N0LXJld3JpdGUgaG9vayIKIG1zZ3N0ciAiXCJwb3N0LXJld3JpdGUgaG9va1wiIHVtZ2VoZW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxMworIzogYnVpbHRpbi9jb21taXQuYzoxNTQ0CiBtc2dpZCAib2sgdG8gcmVjb3JkIGFuIGVtcHR5IGNoYW5nZSIKIG1zZ3N0ciAiQXVmemVpY2hudW5nIGVpbmVyIGxlZXJlbiDDhG5kZXJ1bmcgZXJsYXViZW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNQorIzogYnVpbHRpbi9jb21taXQuYzoxNTQ2CiBtc2dpZCAib2sgdG8gcmVjb3JkIGEgY2hhbmdlIHdpdGggYW4gZW1wdHkgbWVzc2FnZSIKIG1zZ3N0ciAiQXVmemVpY2hudW5nIGVpbmVyIMOEbmRlcnVuZyBtaXQgZWluZXIgbGVlcmVuIEJlc2NocmVpYnVuZyBlcmxhdWJlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE2MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29ycnVwdCBNRVJHRV9IRUFEIGZpbGUgKCVzKSIKIG1zZ3N0ciAiQmVzY2jDpGRpZ3RlIE1FUkdFX0hFQUQtRGF0ZWkgKCVzKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTk1CisjOiBidWlsdGluL2NvbW1pdC5jOjE2MjYKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBNRVJHRV9NT0RFIgogbXNnc3RyICJLb25udGUgTUVSR0VfTU9ERSBuaWNodCBsZXNlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjE0CisjOiBidWlsdGluL2NvbW1pdC5jOjE2NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgY29tbWl0IG1lc3NhZ2U6ICVzIgogbXNnc3RyICJLb25udGUgQ29tbWl0LUJlc2NocmVpYnVuZyBuaWNodCBsZXNlbjogJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTYyNQorIzogYnVpbHRpbi9jb21taXQuYzoxNjUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFib3J0aW5nIGNvbW1pdCBkdWUgdG8gZW1wdHkgY29tbWl0IG1lc3NhZ2UuXG4iCiBtc2dzdHIgIkNvbW1pdCBhdWZncnVuZCBsZWVyZXIgQmVzY2hyZWlidW5nIGFiZ2Vicm9jaGVuLlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE2MzAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJBYm9ydGluZyBjb21taXQ7IHlvdSBkaWQgbm90IGVkaXQgdGhlIG1lc3NhZ2UuXG4iCiBtc2dzdHIgIkNvbW1pdCBhYmdlYnJvY2hlbjsgU2llIGhhYmVuIGRpZSBCZXNjaHJlaWJ1bmcgbmljaHQgZWRpdGllcnQuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTY2NQorIzogYnVpbHRpbi9jb21taXQuYzoxNjkxCiBtc2dpZCAiIgogInJlcG9zaXRvcnkgaGFzIGJlZW4gdXBkYXRlZCwgYnV0IHVuYWJsZSB0byB3cml0ZVxuIgogIm5ld19pbmRleCBmaWxlLiBDaGVjayB0aGF0IGRpc2sgaXMgbm90IGZ1bGwgYW5kIHF1b3RhIGlzXG4iCi0ibm90IGV4Y2VlZGVkLCBhbmQgdGhlbiBcImdpdCByZXNldCBIRUFEXCIgdG8gcmVjb3Zlci4iCisibm90IGV4Y2VlZGVkLCBhbmQgdGhlbiBcImdpdCByZXN0b3JlIC0tc3RhZ2VkIDovXCIgdG8gcmVjb3Zlci4iCiBtc2dzdHIgIiIKICJEYXMgUmVwb3NpdG9yeSB3dXJkZSBha3R1YWxpc2llcnQsIGFiZXIgZGllIFwibmV3X2luZGV4XCItRGF0ZWlcbiIKICJrb25udGUgbmljaHQgZ2VzY2hyaWViZW4gd2VyZGVuLiBQcsO8ZmVuIFNpZSwgZGFzcyBJaHJlIEZlc3RwbGF0dGUgbmljaHRcbiIKICJ2b2xsIHVuZCBJaHIgS29udGluZ2VudCBuaWNodCBhdWZnZWJyYXVjaHQgaXN0IHVuZCBmw7xocmVuIFNpZVxuIgotImFuc2NobGllw59lbmQgXCJnaXQgcmVzZXQgSEVBRFwiIHp1IFdpZWRlcmhlcnN0ZWxsdW5nIGF1cy4iCisiYW5zY2hsaWXDn2VuZCBcImdpdCByZXN0b3JlIEhFQUQgLS1zdGFnZWQgOi9cIiB6dXIgV2llZGVyaGVyc3RlbGx1bmcgYXVzLiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMAotbXNnaWQgImdpdCBjb21taXQtZ3JhcGggWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi1tc2dzdHIgImdpdCBjb21taXQtZ3JhcGggWy0tb2JqZWN0LWRpciA8T2JqZWt0dmVyemVpY2huaXM+XSIKLQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIzCi1tc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCByZWFkIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgotbXNnc3RyICJnaXQgY29tbWl0LWdyYXBoIHJlYWQgWy0tb2JqZWN0LWRpciA8T2JqZWt0dmVyemVpY2huaXM+XSIKLQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE4Ci1tc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi1tc2dzdHIgImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPE9iamVrdHZlcnplaWNobmlzPl0iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyOAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE3CiBtc2dpZCAiIgotImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tYXBwZW5kXSBbLS1yZWFjaGFibGV8LS0iCi0ic3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSIKKyJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1zaGFsbG93XSBbLS1bbm8tXXByb2dyZXNzXSIKIG1zZ3N0ciAiIgotImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8T2JqZWt0dmVyemVpY2huaXM+XSBbLS1hcHBlbmRdIFstLSIKLSJyZWFjaGFibGV8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIgorImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPE9iamVrdHZlcnplaWNobmlzPl0gWy0tc2hhbGxvd10gWy0tIgorIltuby1dcHJvZ3Jlc3NdIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjQ4IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzgKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMyIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTkwIGJ1aWx0aW4vZmV0Y2guYzoxNTMKLSM6IGJ1aWx0aW4vbG9nLmM6MTU0MAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIyCittc2dpZCAiIgorImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tYXBwZW5kfC0tc3BsaXRdIFstLSIKKyJyZWFjaGFibGV8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIFstLVtuby1dcHJvZ3Jlc3NdIDxzcGxpdCBvcHRpb25zPiIKK21zZ3N0ciAiIgorImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8T2JqZWt0dmVyemVpY2huaXM+XSBbLS1hcHBlbmR8c3BsaXRdICIKKyJbLS1yZWFjaGFibGV8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIFstLVtuby1dcHJvZ3Jlc3NdIDxTcGxpdC0iCisiT3B0aW9uZW4+IgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5kIG9iamVjdCBkaXJlY3RvcnkgbWF0Y2hpbmcgJXMiCittc2dzdHIgImtvbm50ZSBPYmpla3QtVmVyemVpY2huaXMgbmljaHQgZmluZGVuLCBkYXNzICclcycgZW50c3ByZWNoZW4gc29sbCIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo2OCBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyNQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMTAgYnVpbHRpbi9mZXRjaC5jOjE3OSBidWlsdGluL2xvZy5jOjE2NTcKIG1zZ2lkICJkaXIiCiBtc2dzdHIgIlZlcnplaWNobmlzIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjQ5IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzkKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMzIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTkxCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjY5IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTI2CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIxMQogbXNnaWQgIlRoZSBvYmplY3QgZGlyZWN0b3J5IHRvIHN0b3JlIHRoZSBncmFwaCIKIG1zZ3N0ciAiRGFzIE9iamVrdHZlcnplaWNobmlzIHp1bSBTcGVpY2hlcm4gZGVzIEdyYXBoZW4uIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3MQorbXNnaWQgImlmIHRoZSBjb21taXQtZ3JhcGggaXMgc3BsaXQsIG9ubHkgdmVyaWZ5IHRoZSB0aXAgZmlsZSIKK21zZ3N0ciAiIgorIldlbm4gZGVyIENvbW1pdC1HcmFwaCBhdWZnZXRlaWx0IGlzdCwgbnVyIGRpZSBEYXRlaSBhbiBkZXIgU3BpdHplIMO8YmVycHLDvGZlbiIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo5NCB0L2hlbHBlci90ZXN0LXJlYWQtZ3JhcGguYzoyMworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgb3BlbiBjb21taXQtZ3JhcGggJyVzJyIKK21zZ3N0ciAiS29ubnRlIENvbW1pdC1HcmFwaCAnJXMnIG5pY2h0IMO2ZmZuZW4uIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyOAogbXNnaWQgInN0YXJ0IHdhbGsgYXQgYWxsIHJlZnMiCiBtc2dzdHIgIkR1cmNobGF1ZiBhdWYgYWxsZW4gUmVmZXJlbnplbiBiZWdpbm5lbiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzcKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMwCiBtc2dpZCAic2NhbiBwYWNrLWluZGV4ZXMgbGlzdGVkIGJ5IHN0ZGluIGZvciBjb21taXRzIgogbXNnc3RyICJkdXJjaCBTdGFuZGFyZC1FaW5nYWJlIGdlbGlzdGV0ZSBQYWNrLUluZGV4ZSBuYWNoIENvbW1pdHMgc2Nhbm5lbiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzkKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMyCiBtc2dpZCAic3RhcnQgd2FsayBhdCBjb21taXRzIGxpc3RlZCBieSBzdGRpbiIKIG1zZ3N0ciAiTGF1ZiBiZWkgQ29tbWl0cyBiZWdpbm5lbiwgZGllIMO8YmVyIGRpZSBTdGFuZGFyZC1FaW5nYWJlIGdlbGlzdGV0IHNpbmQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTQxCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNAogbXNnaWQgImluY2x1ZGUgYWxsIGNvbW1pdHMgYWxyZWFkeSBpbiB0aGUgY29tbWl0LWdyYXBoIGZpbGUiCiBtc2dzdHIgIiIKICJhbGxlIENvbW1pdHMgZWluc2NobGllw59lbiwgZGllIHNpY2ggYmVyZWl0cyBpbiBkZXIgQ29tbWl0LUdyYXBoLURhdGVpICIKICJiZWZpbmRlbiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNTAKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM3Cittc2dpZCAiYWxsb3cgd3JpdGluZyBhbiBpbmNyZW1lbnRhbCBjb21taXQtZ3JhcGggZmlsZSIKK21zZ3N0ciAiRXJsYXViZSBkYXMgU2NocmVpYmVuIGVpbmVyIGlua3JlbWVudGVsbGVuIENvbW1pdC1HcmFwaC1EYXRlaSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDMKK21zZ2lkICJtYXhpbXVtIG51bWJlciBvZiBjb21taXRzIGluIGEgbm9uLWJhc2Ugc3BsaXQgY29tbWl0LWdyYXBoIgorbXNnc3RyICIiCisiTWF4aW1hbGUgQW56YWhsIHZvbiBDb21taXRzIGluIGVpbmVtIGF1ZmdldGVpbHRlbiBDb21taXQtR3JhcGggb2huZSBCYXNpcyIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDEKK21zZ2lkICJtYXhpbXVtIHJhdGlvIGJldHdlZW4gdHdvIGxldmVscyBvZiBhIHNwbGl0IGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAiIgorIk1heGltYWxlcyBWZXJow6RsdG5pcyB6d2lzY2hlbiB6d2VpIEViZW5lbiBlaW5lcyBhdWZnZXRlaWx0ZW4gQ29tbWl0LUdyYXBoIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE1OQogbXNnaWQgInVzZSBhdCBtb3N0IG9uZSBvZiAtLXJlYWNoYWJsZSwgLS1zdGRpbi1jb21taXRzLCBvciAtLXN0ZGluLXBhY2tzIgogbXNnc3RyICIiCiAiQmVudXR6ZW4gU2llIG1pbmRlc3RlbnMgZWlucyB2b24gLS1yZWFjaGFibGUsIC0tc3RkaW4tY29tbWl0cywgb2RlciAtLXN0ZGluLSIKQEAgLTEwMzMxLDIwOCArMTMxOTAsMjE0IEBACiBtc2dpZCAiZ2l0IGNvbmZpZyBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IGNvbmZpZyBbPE9wdGlvbmVuPl0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTAzCisjOiBidWlsdGluL2NvbmZpZy5jOjEwNCBidWlsdGluL2Vudi0taGVscGVyLmM6MjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIC0tdHlwZSBhcmd1bWVudCwgJXMiCiBtc2dzdHIgIm5pY2h0IGVya2FubnRlcyAtLXR5cGUgQXJndW1lbnQsICVzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjExNQorIzogYnVpbHRpbi9jb25maWcuYzoxMTYKIG1zZ2lkICJvbmx5IG9uZSB0eXBlIGF0IGEgdGltZSIKIG1zZ3N0ciAibnVyIGVpbiBUeXAgZXJsYXVidCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI1CiBtc2dpZCAiQ29uZmlnIGZpbGUgbG9jYXRpb24iCiBtc2dzdHIgIk9ydCBkZXIgS29uZmlndXJhdGlvbnNkYXRlaSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI2CiBtc2dpZCAidXNlIGdsb2JhbCBjb25maWcgZmlsZSIKIG1zZ3N0ciAiZ2xvYmFsZSBLb25maWd1cmF0aW9uc2RhdGVpIHZlcndlbmRlbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI3CiBtc2dpZCAidXNlIHN5c3RlbSBjb25maWcgZmlsZSIKIG1zZ3N0ciAic3lzdGVtd2VpdGUgS29uZmlndXJhdGlvbnNkYXRlaSB2ZXJ3ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTI3CisjOiBidWlsdGluL2NvbmZpZy5jOjEyOAogbXNnaWQgInVzZSByZXBvc2l0b3J5IGNvbmZpZyBmaWxlIgogbXNnc3RyICJLb25maWd1cmF0aW9uc2RhdGVpIGRlcyBSZXBvc2l0b3JpZXMgdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyOAorIzogYnVpbHRpbi9jb25maWcuYzoxMjkKIG1zZ2lkICJ1c2UgcGVyLXdvcmt0cmVlIGNvbmZpZyBmaWxlIgogbXNnc3RyICJLb25maWd1cmF0aW9uc2RhdGVpIHBybyBBcmJlaXRzdmVyemVpY2huaXMgdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyOQorIzogYnVpbHRpbi9jb25maWcuYzoxMzAKIG1zZ2lkICJ1c2UgZ2l2ZW4gY29uZmlnIGZpbGUiCiBtc2dzdHIgImRpZSBhbmdlZ2ViZW5lIEtvbmZpZ3VyYXRpb25zZGF0ZWkgdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMAorIzogYnVpbHRpbi9jb25maWcuYzoxMzEKIG1zZ2lkICJibG9iLWlkIgogbXNnc3RyICJCbG9iLUlkIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMAorIzogYnVpbHRpbi9jb25maWcuYzoxMzEKIG1zZ2lkICJyZWFkIGNvbmZpZyBmcm9tIGdpdmVuIGJsb2Igb2JqZWN0IgogbXNnc3RyICJLb25maWd1cmF0aW9uIHZvbiBhbmdlZ2ViZW5lbSBCbG9iLU9iamVrdCBsZXNlbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMyCiBtc2dpZCAiQWN0aW9uIgogbXNnc3RyICJBa3Rpb24iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTMyCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMwogbXNnaWQgImdldCB2YWx1ZTogbmFtZSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICJXZXJ0IHp1csO8Y2tnZWJlbjogTmFtZSBbV2VydC1yZWdleF0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTMzCisjOiBidWlsdGluL2NvbmZpZy5jOjEzNAogbXNnaWQgImdldCBhbGwgdmFsdWVzOiBrZXkgW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAiYWxsZSBXZXJ0ZSB6dXLDvGNrZ2ViZW46IFNjaGzDvHNzZWwgW1dlcnQtcmVnZXhdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNAorIzogYnVpbHRpbi9jb25maWcuYzoxMzUKIG1zZ2lkICJnZXQgdmFsdWVzIGZvciByZWdleHA6IG5hbWUtcmVnZXggW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAiV2VydGUgZsO8ciBkZW4gcmVndWzDpHJlbiBBdXNkcnVjayB6dXLDvGNrZ2ViZW46IE5hbWUtcmVnZXggW1dlcnQtcmVnZXhdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNQorIzogYnVpbHRpbi9jb25maWcuYzoxMzYKIG1zZ2lkICJnZXQgdmFsdWUgc3BlY2lmaWMgZm9yIHRoZSBVUkw6IHNlY3Rpb25bLnZhcl0gVVJMIgogbXNnc3RyICJXZXJ0IHNwZXppZmlzY2ggZsO8ciBlaW5lIFVSTCB6dXLDvGNrZ2ViZW46IHNlY3Rpb25bLnZhcl0gVVJMIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNgorIzogYnVpbHRpbi9jb25maWcuYzoxMzcKIG1zZ2lkICJyZXBsYWNlIGFsbCBtYXRjaGluZyB2YXJpYWJsZXM6IG5hbWUgdmFsdWUgW3ZhbHVlX3JlZ2V4XSIKIG1zZ3N0ciAiYWxsZSBwYXNzZW5kZW4gVmFyaWFibGVuIGVyc2V0emVuOiBOYW1lIFdlcnQgW1dlcnQtcmVnZXhdICIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM4CiBtc2dpZCAiYWRkIGEgbmV3IHZhcmlhYmxlOiBuYW1lIHZhbHVlIgogbXNnc3RyICJuZXVlIFZhcmlhYmxlIGhpbnp1ZsO8Z2VuOiBOYW1lIFdlcnQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM4CisjOiBidWlsdGluL2NvbmZpZy5jOjEzOQogbXNnaWQgInJlbW92ZSBhIHZhcmlhYmxlOiBuYW1lIFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgImVpbmUgVmFyaWFibGUgZW50ZmVybmVuOiBOYW1lIFtXZXJ0LXJlZ2V4XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQwCiBtc2dpZCAicmVtb3ZlIGFsbCBtYXRjaGVzOiBuYW1lIFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgImFsbGUgw5xiZXJlaW5zdGltbXVuZ2VuIGVudGZlcm5lbjogTmFtZSBbV2VydC1yZWdleF0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQwCisjOiBidWlsdGluL2NvbmZpZy5jOjE0MQogbXNnaWQgInJlbmFtZSBzZWN0aW9uOiBvbGQtbmFtZSBuZXctbmFtZSIKIG1zZ3N0ciAiZWluZSBTZWt0aW9uIHVtYmVuZW5uZW46IGFsdGVyLU5hbWUgbmV1ZXItTmFtZSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQyCiBtc2dpZCAicmVtb3ZlIGEgc2VjdGlvbjogbmFtZSIKIG1zZ3N0ciAiZWluZSBTZWt0aW9uIGVudGZlcm5lbjogTmFtZSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQzCiBtc2dpZCAibGlzdCBhbGwiCiBtc2dzdHIgImFsbGVzIGF1Zmxpc3RlbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ0CiBtc2dpZCAib3BlbiBhbiBlZGl0b3IiCiBtc2dzdHIgImVpbmVuIEVkaXRvciDDtmZmbmVuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NAorIzogYnVpbHRpbi9jb25maWcuYzoxNDUKIG1zZ2lkICJmaW5kIHRoZSBjb2xvciBjb25maWd1cmVkOiBzbG90IFtkZWZhdWx0XSIKIG1zZ3N0ciAiZGllIGtvbmZpZ3VyaWVydGUgRmFyYmUgZmluZGVuOiBTbG90IFtTdGFuZGFyZF0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ1CisjOiBidWlsdGluL2NvbmZpZy5jOjE0NgogbXNnaWQgImZpbmQgdGhlIGNvbG9yIHNldHRpbmc6IHNsb3QgW3N0ZG91dC1pcy10dHldIgogbXNnc3RyICJkaWUgRmFyYmVpbnN0ZWxsdW5nIGZpbmRlbjogU2xvdCBbU3RhbmRhcmQtQXVzZ2FiZS1pc3QtVGVybWluYWxdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NgorIzogYnVpbHRpbi9jb25maWcuYzoxNDcKIG1zZ2lkICJUeXBlIgogbXNnc3RyICJUeXAiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ3CisjOiBidWlsdGluL2NvbmZpZy5jOjE0OCBidWlsdGluL2Vudi0taGVscGVyLmM6MzgKIG1zZ2lkICJ2YWx1ZSBpcyBnaXZlbiB0aGlzIHR5cGUiCiBtc2dzdHIgIldlcnQgaXN0IG1pdCBkaWVzZW0gVHlwIGFuZ2VnZWJlbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ5CiBtc2dpZCAidmFsdWUgaXMgXCJ0cnVlXCIgb3IgXCJmYWxzZVwiIgogbXNnc3RyICJXZXJ0IGlzdCBcInRydWVcIiBvZGVyIFwiZmFsc2VcIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUwCiBtc2dpZCAidmFsdWUgaXMgZGVjaW1hbCBudW1iZXIiCiBtc2dzdHIgIldlcnQgaXN0IGVpbmUgRGV6aW1hbHphaGwiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUwCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MQogbXNnaWQgInZhbHVlIGlzIC0tYm9vbCBvciAtLWludCIKIG1zZ3N0ciAiV2VydCBpc3QgLS1ib29sIG9kZXIgLS1pbnQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUxCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MgogbXNnaWQgInZhbHVlIGlzIGEgcGF0aCAoZmlsZSBvciBkaXJlY3RvcnkgbmFtZSkiCiBtc2dzdHIgIldlcnQgaXN0IGVpbiBQZmFkIChEYXRlaSBvZGVyIFZlcnplaWNobmlzbmFtZSkiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUyCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MwogbXNnaWQgInZhbHVlIGlzIGFuIGV4cGlyeSBkYXRlIgogbXNnc3RyICJXZXJ0IGlzdCBlaW4gVmVyZmFsbHNkYXR1bSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU0CiBtc2dpZCAiT3RoZXIiCiBtc2dzdHIgIlNvbnN0aWdlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU1CiBtc2dpZCAidGVybWluYXRlIHZhbHVlcyB3aXRoIE5VTCBieXRlIgogbXNnc3RyICJzY2hsaWXDn3QgV2VydGUgbWl0IE5VTC1CeXRlIGFiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NQorIzogYnVpbHRpbi9jb25maWcuYzoxNTYKIG1zZ2lkICJzaG93IHZhcmlhYmxlIG5hbWVzIG9ubHkiCiBtc2dzdHIgIm51ciBWYXJpYWJsZW5uYW1lbiBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU3CiBtc2dpZCAicmVzcGVjdCBpbmNsdWRlIGRpcmVjdGl2ZXMgb24gbG9va3VwIgogbXNnc3RyICJiZWFjaHRldCBcImluY2x1ZGVcIi1EaXJla3RpdmVuIGJlaW0gTmFjaHNjaGxhZ2VuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NworIzogYnVpbHRpbi9jb25maWcuYzoxNTgKIG1zZ2lkICJzaG93IG9yaWdpbiBvZiBjb25maWcgKGZpbGUsIHN0YW5kYXJkIGlucHV0LCBibG9iLCBjb21tYW5kIGxpbmUpIgogbXNnc3RyICIiCiAiVXJzcHJ1bmcgZGVyIEtvbmZpZ3VyYXRpb24gYW56ZWlnZW4gKERhdGVpLCBTdGFuZGFyZC1FaW5nYWJlLCBCbG9iLCAiCiAiQmVmZWhsc3plaWxlKSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU5Cittc2dpZCAic2hvdyBzY29wZSBvZiBjb25maWcgKHdvcmt0cmVlLCBsb2NhbCwgZ2xvYmFsLCBzeXN0ZW0sIGNvbW1hbmQpIgorbXNnc3RyICIiCisiWmVpZ2UgR2VsdHVuZ3NiZXJlaWNoIGRlciBLb25maWd1cmF0aW9uIChBcmJlaXRzdmVyemVpY2huaXMsIGxva2FsLCBnbG9iYWwsICIKKyJzeXN0ZW13ZWl0LCBCZWZlaGwpIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE2MCBidWlsdGluL2Vudi0taGVscGVyLmM6NDAKIG1zZ2lkICJ2YWx1ZSIKIG1zZ3N0ciAiV2VydCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTYwCiBtc2dpZCAid2l0aCAtLWdldCwgdXNlIGRlZmF1bHQgdmFsdWUgd2hlbiBtaXNzaW5nIGVudHJ5IgogbXNnc3RyICJtaXQgLS1nZXQsIGJlbnV0emUgZGVuIFN0YW5kYXJkd2VydCwgd2VubiBkZXIgRWludHJhZyBmZWhsdCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNzEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIndyb25nIG51bWJlciBvZiBhcmd1bWVudHMsIHNob3VsZCBiZSAlZCIKIG1zZ3N0ciAiRmFsc2NoZSBBbnphaGwgdm9uIEFyZ3VtZW50ZW4gLSBzb2xsdGUgJWQgc2Vpbi4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTczCisjOiBidWlsdGluL2NvbmZpZy5jOjE3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgZnJvbSAlZCB0byAlZCIKIG1zZ3N0ciAiRmFsc2NoZSBBbnphaGwgdm9uIEFyZ3VtZW50ZW4gLSBzb2xsdGUgendpc2NoZW4gJWQgdW5kICVkIHNlaW4uIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjMwNworIzogYnVpbHRpbi9jb25maWcuYzozMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBrZXkgcGF0dGVybjogJXMiCiBtc2dzdHIgIlVuZ8O8bHRpZ2VzIFNjaGzDvHNzZWxtdXN0ZXI6ICVzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjM0MworIzogYnVpbHRpbi9jb25maWcuYzozNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGZvcm1hdCBkZWZhdWx0IGNvbmZpZyB2YWx1ZTogJXMiCiBtc2dzdHIgIkZlaGxlciBiZWltIEZvcm1hdGllcmVuIGRlcyBTdGFuZGFyZGtvbmZpZ3VyYXRpb25zd2VydGVzOiAlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0MDAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDE3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBwYXJzZSBjb2xvciAnJXMnIgogbXNnc3RyICJLYW5uIEZhcmJlICclcycgbmljaHQgcGFyc2VuLiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0NDIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDU5CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGRlZmF1bHQgY29sb3IgdmFsdWUiCiBtc2dzdHIgImtvbm50ZSBTdGFuZGFyZC1GYXJid2VydCBuaWNodCBwYXJzZW4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDk1IGJ1aWx0aW4vY29uZmlnLmM6NzQxCisjOiBidWlsdGluL2NvbmZpZy5jOjUxMiBidWlsdGluL2NvbmZpZy5jOjc2OAogbXNnaWQgIm5vdCBpbiBhIGdpdCBkaXJlY3RvcnkiCiBtc2dzdHIgIk5pY2h0IGluIGVpbmVtIEdpdC1SZXBvc2l0b3J5LiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0OTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTE1CiBtc2dpZCAid3JpdGluZyB0byBzdGRpbiBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJEYXMgU2NocmVpYmVuIGluIGRpZSBTdGFuZGFyZC1FaW5nYWJlIHdpcmQgbmljaHQgdW50ZXJzdMO8dHp0LiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo1MDEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTE4CiBtc2dpZCAid3JpdGluZyBjb25maWcgYmxvYnMgaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAiIgogIkRhcyBTY2hyZWliZW4gdm9uIEJsb2ItT2JqZWt0ZW4gZsO8ciBLb25maWd1cmF0aW9uZW4gd2lyZCBuaWNodCB1bnRlcnN0w7x0enQuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjU4NgorIzogYnVpbHRpbi9jb25maWcuYzo2MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiMgVGhpcyBpcyBHaXQncyBwZXItdXNlciBjb25maWd1cmF0aW9uIGZpbGUuXG4iCkBAIC0xMDU0NywyMyArMTM0MTIsMjMgQEAKICIjXHRuYW1lID0gJXNcbiIKICIjXHRlbWFpbCA9ICVzXG4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjEwCisjOiBidWlsdGluL2NvbmZpZy5jOjYyNwogbXNnaWQgIm9ubHkgb25lIGNvbmZpZyBmaWxlIGF0IGEgdGltZSIKIG1zZ3N0ciAiTnVyIGVpbmUgS29uZmlndXJhdGlvbnNkYXRlaSB6dSBlaW5lciBaZWl0IG3DtmdsaWNoLiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MTUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjMyCiBtc2dpZCAiLS1sb2NhbCBjYW4gb25seSBiZSB1c2VkIGluc2lkZSBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICItLWxvY2FsIGthbm4gbnVyIGlubmVyaGFsYiBlaW5lcyBHaXQtUmVwb3NpdG9yaWVzIHZlcndlbmRldCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYxOAorIzogYnVpbHRpbi9jb25maWcuYzo2MzUKIG1zZ2lkICItLWJsb2IgY2FuIG9ubHkgYmUgdXNlZCBpbnNpZGUgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiLS1ibG9iIGthbm4gbnVyIGlubmVyaGFsYiBlaW5lcyBHaXQtUmVwb3NpdG9yaWVzIHZlcndlbmRldCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYzNworIzogYnVpbHRpbi9jb25maWcuYzo2NTUKIG1zZ2lkICIkSE9NRSBub3Qgc2V0IgogbXNnc3RyICIkSE9NRSBuaWNodCBnZXNldHp0LiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2NTcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6Njc5CiBtc2dpZCAiIgogIi0td29ya3RyZWUgY2Fubm90IGJlIHVzZWQgd2l0aCBtdWx0aXBsZSB3b3JraW5nIHRyZWVzIHVubGVzcyB0aGUgY29uZmlnXG4iCiAiZXh0ZW5zaW9uIHdvcmt0cmVlQ29uZmlnIGlzIGVuYWJsZWQuIFBsZWFzZSByZWFkIFwiQ09ORklHVVJBVElPTiBGSUxFXCJcbiIKQEAgLTEwNTcxLDU0ICsxMzQzNiw1NSBAQAogbXNnc3RyICIiCiAiLS13b3JrdHJlZSBrYW5uIG5pY2h0IG1pdCBtZWhyZXJlbiBBcmJlaXRzdmVyemVpY2huaXNzZW4gdmVyd2VuZGV0IHdlcmRlbixcbiIKICJhdcOfZXIgZGllIEtvbmZpZ3VyYXRpb25zZXJ3ZWl0ZXJ1bmcgd29ya3RyZWVDb25maWcgaXN0IGFrdGl2aWVydC4gQml0dGVcbiIKLSJsZXNlbiBTaWUgZGllIFNla3Rpb24gXCJDT05GSUdVUkFUSU9OX0ZJTEVcIiBpbiBcImdpdCBoZWxwIHdvcmt0cmVlXCIgZsO8ciBEZXRhaWxzIgorImxlc2VuIFNpZSBkaWUgU2VrdGlvbiBcIkNPTkZJR1VSQVRJT05fRklMRVwiIGluIFwiZ2l0IGhlbHAgd29ya3RyZWVcIiBmw7xyICIKKyJEZXRhaWxzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjY4NworIzogYnVpbHRpbi9jb25maWcuYzo3MTQKIG1zZ2lkICItLWdldC1jb2xvciBhbmQgdmFyaWFibGUgdHlwZSBhcmUgaW5jb2hlcmVudCIKIG1zZ3N0ciAiQW5nYWJlIHZvbiAtLWdldC1jb2xvciB1bmQgVmFyaWFibGVudHlwIHNpbmQgdW5nw7xsdGlnLiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2OTIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzE5CiBtc2dpZCAib25seSBvbmUgYWN0aW9uIGF0IGEgdGltZSIKIG1zZ3N0ciAiTnVyIGVpbmUgQWt0aW9uIGVybGF1YnQuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjcwNQorIzogYnVpbHRpbi9jb25maWcuYzo3MzIKIG1zZ2lkICItLW5hbWUtb25seSBpcyBvbmx5IGFwcGxpY2FibGUgdG8gLS1saXN0IG9yIC0tZ2V0LXJlZ2V4cCIKIG1zZ3N0ciAiLS1uYW1lLW9ubHkgaXN0IG51ciBhbndlbmRiYXIgYXVmIC0tbGlzdCBvZGVyIC0tZ2V0LXJlZ2V4cCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MTEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzM4CiBtc2dpZCAiIgogIi0tc2hvdy1vcmlnaW4gaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCwgYW5kIC0tIgogImxpc3QiCiBtc2dzdHIgIiIKICItLXNob3ctb3JpZ2luIGlzdCBudXIgYW53ZW5kYmFyIGF1ZiAtLWdldCwgLS1nZXQtYWxsLCAtLWdldC1yZWdleHAgdW5kIC0tbGlzdCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MTcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzQ0CiBtc2dpZCAiLS1kZWZhdWx0IGlzIG9ubHkgYXBwbGljYWJsZSB0byAtLWdldCIKIG1zZ3N0ciAiLS1kZWZhdWx0IGlzdCBudXIgYW53ZW5kYmFyIGF1ZiAtLWdldCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MzAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIGNvbmZpZyBmaWxlICclcyciCiBtc2dzdHIgIktvbm50ZSBLb25maWd1cmF0aW9uc2RhdGVpICclcycgbmljaHQgbGVzZW4uIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjczMworIzogYnVpbHRpbi9jb25maWcuYzo3NjAKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIGNvbmZpZyBmaWxlKHMpIgogbXNnc3RyICJGZWhsZXIgYmVpbSBWZXJhcmJlaXRlbiBkZXIgS29uZmlndXJhdGlvbnNkYXRlaShlbikuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc0MworIzogYnVpbHRpbi9jb25maWcuYzo3NzAKIG1zZ2lkICJlZGl0aW5nIHN0ZGluIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgIkRhcyBCZWFyYmVpdGVuIGRlciBTdGFuZGFyZC1FaW5nYWJlIHdpcmQgbmljaHQgdW50ZXJzdMO8dHp0LiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3NDUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzcyCiBtc2dpZCAiZWRpdGluZyBibG9icyBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJEYXMgQmVhcmJlaXRlbiB2b24gQmxvYnMgd2lyZCBuaWNodCB1bnRlcnN0w7x0enQuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc1OQorIzogYnVpbHRpbi9jb25maWcuYzo3ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNyZWF0ZSBjb25maWd1cmF0aW9uIGZpbGUgJXMiCiBtc2dzdHIgIktvbm50ZSBLb25maWd1cmF0aW9uc2RhdGVpICclcycgbmljaHQgZXJzdGVsbGVuLiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3NzIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6Nzk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjYW5ub3Qgb3ZlcndyaXRlIG11bHRpcGxlIHZhbHVlcyB3aXRoIGEgc2luZ2xlIHZhbHVlXG4iCkBAIC0xMDYyOCw3ICsxMzQ5NCw3IEBACiAiICAgICAgIEJlbnV0emVuIFNpZSBlaW5lbiByZWd1bMOkcmVuIEF1c2RydWNrLCAtLWFkZCBvZGVyIC0tcmVwbGFjZSwgdW0gJXNcbiIKICIgICAgICAgenUgw6RuZGVybi4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6ODQ2IGJ1aWx0aW4vY29uZmlnLmM6ODU3CisjOiBidWlsdGluL2NvbmZpZy5jOjg3MyBidWlsdGluL2NvbmZpZy5jOjg4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIHNlY3Rpb246ICVzIgogbXNnc3RyICJLZWluZSBzb2xjaGUgU2VrdGlvbjogJXMiCkBAIC0xMDY2MSwzOSArMTM1MjcsMzkgQEAKIG1zZ2lkICJhbm5vdGF0ZWQiCiBtc2dzdHIgImFubm90aWVydCIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJhbm5vdGF0ZWQgdGFnICVzIG5vdCBhdmFpbGFibGUiCiBtc2dzdHIgImFubm90aWVydGVzIFRhZyAlcyBpc3QgbmljaHQgdmVyZsO8Z2JhciIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3NgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJhbm5vdGF0ZWQgdGFnICVzIGhhcyBubyBlbWJlZGRlZCBuYW1lIgogbXNnc3RyICJhbm5vdGllcnRlcyBUYWcgJXMgaGF0IGtlaW5lbiBlaW5nZWJldHRldGVuIE5hbWVuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIGlzIHJlYWxseSAnJXMnIGhlcmUiCiBtc2dzdHIgIlRhZyAnJXMnIGlzdCBlaWdlbnRsaWNoICclcycgaGllciIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyMgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJubyB0YWcgZXhhY3RseSBtYXRjaGVzICclcyciCiBtc2dzdHIgImtlaW4gVGFnIGVudHNwcmljaHQgZXhha3QgJyVzJyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBleGFjdCBtYXRjaCBvbiByZWZzIG9yIHRhZ3MsIHNlYXJjaGluZyB0byBkZXNjcmliZVxuIgogbXNnc3RyICIiCiAiS2VpbmUgZXhha3RlIMOcYmVyZWluc3RpbW11bmcgYmVpIFJlZmVyZW56ZW4gb2RlciBUYWdzLCBTdWNoZSB6dW0gIgogIkJlc2NocmVpYmVuXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozNzgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmluaXNoZWQgc2VhcmNoIGF0ICVzXG4iCiBtc2dzdHIgImJlZW5kZXRlIFN1Y2hlIGJlaSAlc1xuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDA0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyBhbm5vdGF0ZWQgdGFncyBjYW4gZGVzY3JpYmUgJyVzJy5cbiIKQEAgLTEwNzAyLDcgKzEzNTY4LDcgQEAKICJLZWluZSBhbm5vdGllcnRlbiBUYWdzIGvDtm5uZW4gJyVzJyBiZXNjaHJlaWJlbi5cbiIKICJKZWRvY2ggZ2FiIGVzIG5pY2h0LWFubm90aWVydGUgVGFnczogdmVyc3VjaGVuIFNpZSAtLXRhZ3MuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDA4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyB0YWdzIGNhbiBkZXNjcmliZSAnJXMnLlxuIgpAQCAtMTA3MTEsMTIgKzEzNTc3LDEyIEBACiAiS2VpbmUgVGFncyBrw7ZubmVuICclcycgYmVzY2hyZWliZW4uXG4iCiAiVmVyc3VjaGVuIFNpZSAtLWFsd2F5cyBvZGVyIGVyc3RlbGxlbiBTaWUgZWluaWdlIFRhZ3MuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDM4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRyYXZlcnNlZCAlbHUgY29tbWl0c1xuIgogbXNnc3RyICIlbHUgQ29tbWl0cyBkdXJjaGxhdWZlblxuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDQxCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJtb3JlIHRoYW4gJWkgdGFncyBmb3VuZDsgbGlzdGVkICVpIG1vc3QgcmVjZW50XG4iCkBAIC0xMDcyNSwxMjIgKzEzNTkxLDEyMSBAQAogIm1laHIgYWxzICVpIFRhZ3MgZ2VmdW5kZW47IGbDvGhyZSBkaWUgZXJzdGVuICVpIGF1ZlxuIgogIlN1Y2hlIGJlaSAlcyBhdWZnZWdlYmVuXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MDkKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzY3JpYmUgJXNcbiIKIG1zZ3N0ciAiQmVzY2hyZWliZSAlc1xuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTEyIGJ1aWx0aW4vbG9nLmM6NTEzCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIG9iamVjdCBuYW1lICVzIgogbXNnc3RyICIlcyBpc3Qga2VpbiBnw7xsdGlnZXIgT2JqZWt0LU5hbWUiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MjAKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgbmVpdGhlciBhIGNvbW1pdCBub3IgYmxvYiIKIG1zZ3N0ciAiJXMgaXN0IHdlZGVyIGVpbiBDb21taXQsIG5vY2ggZWluIEJsb2IuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUxCiBtc2dpZCAiZmluZCB0aGUgdGFnIHRoYXQgY29tZXMgYWZ0ZXIgdGhlIGNvbW1pdCIKIG1zZ3N0ciAiZGFzIFRhZyBmaW5kZW4sIGRhcyBuYWNoIGRlbSBDb21taXQga29tbXQiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzUKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTIKIG1zZ2lkICJkZWJ1ZyBzZWFyY2ggc3RyYXRlZ3kgb24gc3RkZXJyIgogbXNnc3RyICJkaWUgU3VjaHN0cmF0ZWdpZSBpbiBkZXIgU3RhbmRhcmQtRmVobGVyYXVzZ2FiZSBwcm90b2tvbGxpZXJlbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzNgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MwogbXNnaWQgInVzZSBhbnkgcmVmIgogbXNnc3RyICJhbGxlIFJlZmVyZW56ZW4gdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU0CiBtc2dpZCAidXNlIGFueSB0YWcsIGV2ZW4gdW5hbm5vdGF0ZWQiCiBtc2dzdHIgImplZGVzIFRhZyB2ZXJ3ZW5kZW4sIGF1Y2ggbmljaHQtYW5ub3RpZXJ0ZSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NQogbXNnaWQgImFsd2F5cyB1c2UgbG9uZyBmb3JtYXQiCiBtc2dzdHIgImltbWVyIGxhbmdlcyBGb3JtYXQgdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM5CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU2CiBtc2dpZCAib25seSBmb2xsb3cgZmlyc3QgcGFyZW50IgogbXNnc3RyICJudXIgZXJzdGVtIEVsdGVybnRlaWwgZm9sZ2VuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU5CiBtc2dpZCAib25seSBvdXRwdXQgZXhhY3QgbWF0Y2hlcyIKIG1zZ3N0ciAibnVyIGV4YWt0ZSDDnGJlcmVpbnN0aW1tdW5nZW4gYXVzZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjEKIG1zZ2lkICJjb25zaWRlciA8bj4gbW9zdCByZWNlbnQgdGFncyAoZGVmYXVsdDogMTApIgogbXNnc3RyICJkaWUgasO8bmdzdGVuIDxuPiBUYWdzIGJldHJhY2h0ZW4gKFN0YW5kYXJkOiAxMCkiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDYKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjMKIG1zZ2lkICJvbmx5IGNvbnNpZGVyIHRhZ3MgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICJudXIgVGFncywgZGllIDxNdXN0ZXI+IGVudHNwcmVjaGVuLCBiZXRyYWNodGVuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTY1CiBtc2dpZCAiZG8gbm90IGNvbnNpZGVyIHRhZ3MgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICJrZWluZSBUYWdzIGJldHJhY2h0ZW4sIGRpZSA8TXVzdGVyPiBlbnRzcHJlY2hlbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MCBidWlsdGluL25hbWUtcmV2LmM6NDI0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTY3IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzUKIG1zZ2lkICJzaG93IGFiYnJldmlhdGVkIGNvbW1pdCBvYmplY3QgYXMgZmFsbGJhY2siCiBtc2dzdHIgImdla8O8cnp0ZXMgQ29tbWl0LU9iamVrdCBhbnplaWdlbiwgd2VubiBzb25zdCBuaWNodHMgenV0cmlmZnQiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTEgYnVpbHRpbi9kZXNjcmliZS5jOjU1NAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2OCBidWlsdGluL2Rlc2NyaWJlLmM6NTcxCiBtc2dpZCAibWFyayIKLW1zZ3N0ciAiS2VubnplaWNoZW4iCittc2dzdHIgIk1hcmtpZXJ1bmciCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjkKIG1zZ2lkICJhcHBlbmQgPG1hcms+IG9uIGRpcnR5IHdvcmtpbmcgdHJlZSAoZGVmYXVsdDogXCItZGlydHlcIikiCiBtc2dzdHIgIiIKLSI8S2VubnplaWNoZW4+IGJlaSBnZcOkbmRlcnRlbSBBcmJlaXRzdmVyemVpY2huaXMgYW5ow6RuZ2VuIChTdGFuZGFyZDogXCItZGlydHkiCisiPE1hcmtpZXJ1bmc+IGJlaSBnZcOkbmRlcnRlbSBBcmJlaXRzdmVyemVpY2huaXMgYW5ow6RuZ2VuIChTdGFuZGFyZDogXCItZGlydHkiCiAiXCIpIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU1CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTcyCiBtc2dpZCAiYXBwZW5kIDxtYXJrPiBvbiBicm9rZW4gd29ya2luZyB0cmVlIChkZWZhdWx0OiBcIi1icm9rZW5cIikiCiBtc2dzdHIgIiIKLSI8S2VubnplaWNoZW4+IGJlaSBkZWZla3RlbSBBcmJlaXRzdmVyemVpY2huaXMgYW5ow6RuZ2VuIChTdGFuZGFyZDogXCItYnJva2VuIgotIlwiKSIKKyI8TWFya2llcnVuZz4gYmVpIGRlZmVrdGVtIEFyYmVpdHN2ZXJ6ZWljaG5pcyBhbmjDpG5nZW4gKFN0YW5kYXJkOiBcIi1icm9rZW5cIikiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NzMKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1OTAKIG1zZ2lkICItLWxvbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hYmJyZXY9MCIKIG1zZ3N0ciAiRGllIE9wdGlvbmVuIC0tbG9uZyB1bmQgLS1hYmJyZXY9MCBzaW5kIGlua29tcGF0aWJlbC4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MDIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MTkKIG1zZ2lkICJObyBuYW1lcyBmb3VuZCwgY2Fubm90IGRlc2NyaWJlIGFueXRoaW5nLiIKIG1zZ3N0ciAiS2VpbmUgTmFtZW4gZ2VmdW5kZW4sIGthbm4gbmljaHRzIGJlc2NocmVpYmVuLiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjY1MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjY3MAogbXNnaWQgIi0tZGlydHkgaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgogbXNnc3RyICJEaWUgT3B0aW9uIC0tZGlydHkga2FubiBuaWNodCBtaXQgQ29tbWl0cyB2ZXJ3ZW5kZXQgd2VyZGVuLiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjY1NAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjY3MgogbXNnaWQgIi0tYnJva2VuIGlzIGluY29tcGF0aWJsZSB3aXRoIGNvbW1pdC1pc2hlcyIKIG1zZ3N0ciAiRGllIE9wdGlvbiAtLWJyb2tlbiBrYW5uIG5pY2h0IG1pdCBDb21taXRzIHZlcndlbmRldCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL2RpZmYuYzo4MworIzogYnVpbHRpbi9kaWZmLmM6ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogbm90IGEgcmVndWxhciBmaWxlIG9yIHN5bWxpbmsiCiBtc2dzdHIgIiclcyc6IGtlaW5lIHJlZ3Vsw6RyZSBEYXRlaSBvZGVyIHN5bWJvbGlzY2hlIFZlcmtuw7xwZnVuZyIKIAotIzogYnVpbHRpbi9kaWZmLmM6MjM0CisjOiBidWlsdGluL2RpZmYuYzoyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvcHRpb246ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlIE9wdGlvbjogJXMiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjM2MworIzogYnVpbHRpbi9kaWZmLmM6MzUwCiBtc2dpZCAiTm90IGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIktlaW4gR2l0LVJlcG9zaXRvcnkiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjQwNworIzogYnVpbHRpbi9kaWZmLmM6Mzk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgb2JqZWN0ICclcycgZ2l2ZW4uIgogbXNnc3RyICJPYmpla3QgJyVzJyBpc3QgdW5nw7xsdGlnLiIKIAotIzogYnVpbHRpbi9kaWZmLmM6NDE2CisjOiBidWlsdGluL2RpZmYuYzo0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9yZSB0aGFuIHR3byBibG9icyBnaXZlbjogJyVzJyIKIG1zZ3N0ciAiTWVociBhbHMgendlaSBCbG9icyBhbmdlZ2ViZW46ICclcyciCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjQyMQorIzogYnVpbHRpbi9kaWZmLmM6NDA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuaGFuZGxlZCBvYmplY3QgJyVzJyBnaXZlbi4iCiBtc2dzdHIgInVuYmVoYW5kZWx0ZXMgT2JqZWt0ICclcycgYW5nZWdlYmVuIgpAQCAtMTA4NzcsNTQgKzEzNzQyLDU0IEBACiAiS29tYmluaWVydGUgRGlmZi1Gb3JtYXRlKCctYycgdW5kICctLWNjJykgd2VyZGVuIGltIFZlcnplaWNobmlzLVxuIgogIkRpZmYtTW9kdXMoJy1kJyB1bmQgJy0tZGlyLWRpZmYnKSBuaWNodCB1bnRlcnN0w7x0enQuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjMzCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJvdGggZmlsZXMgbW9kaWZpZWQ6ICclcycgYW5kICclcycuIgogbXNnc3RyICJiZWlkZSBEYXRlaWVuIGdlw6RuZGVydDogJyVzJyB1bmQgJyVzJy4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzUKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzYKIG1zZ2lkICJ3b3JraW5nIHRyZWUgZmlsZSBoYXMgYmVlbiBsZWZ0LiIKIG1zZ3N0ciAiRGF0ZWkgaW0gQXJiZWl0c3ZlcnplaWNobmlzIGJlbGFzc2VuLiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0NgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0ZW1wb3JhcnkgZmlsZXMgZXhpc3QgaW4gJyVzJy4iCiBtc2dzdHIgIkVzIGV4aXN0aWVyZW4gdGVtcG9yw6RyZSBEYXRlaWVuIGluICclcycuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ3CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ4CiBtc2dpZCAieW91IG1heSB3YW50IHRvIGNsZWFudXAgb3IgcmVjb3ZlciB0aGVzZS4iCiBtc2dzdHIgIlNpZSBrw7ZubnRlbiBkaWVzZSBhdWZyw6R1bWVuIG9kZXIgd2llZGVyaGVyc3RlbGxlbi4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTYKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTcKIG1zZ2lkICJ1c2UgYGRpZmYuZ3VpdG9vbGAgaW5zdGVhZCBvZiBgZGlmZi50b29sYCIKIG1zZ3N0ciAiYGRpZmYuZ3VpdG9vbGAgYW5zdGF0dCBgZGlmZi50b29sYCBiZW51dHplbiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OQogbXNnaWQgInBlcmZvcm0gYSBmdWxsLWRpcmVjdG9yeSBkaWZmIgogbXNnc3RyICJEaWZmIMO8YmVyIGdhbnplcyBWZXJ6ZWljaG5pcyBhdXNmw7xocmVuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzAwCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzAxCiBtc2dpZCAiZG8gbm90IHByb21wdCBiZWZvcmUgbGF1bmNoaW5nIGEgZGlmZiB0b29sIgogbXNnc3RyICJrZWluZSBFaW5nYWJlYXVmZm9yZGVydW5nIHZvciBBdXNmw7xocnVuZyBlaW5lcyBEaWZmLVRvb2xzIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzA1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzA2CiBtc2dpZCAidXNlIHN5bWxpbmtzIGluIGRpci1kaWZmIG1vZGUiCiBtc2dzdHIgInN5bWJvbGlzY2hlIFZlcmtuw7xwZnVuZ2VuIGltIGRpci1kaWZmIE1vZHVzIHZlcndlbmRlbiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNwogbXNnaWQgInRvb2wiCiBtc2dzdHIgIlRvb2wiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDcKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDgKIG1zZ2lkICJ1c2UgdGhlIHNwZWNpZmllZCBkaWZmIHRvb2wiCiBtc2dzdHIgImRhcyBhbmdlZ2ViZW5lIERpZmYtVG9vbCBiZW51dHplbiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxMAogbXNnaWQgInByaW50IGEgbGlzdCBvZiBkaWZmIHRvb2xzIHRoYXQgbWF5IGJlIHVzZWQgd2l0aCBgLS10b29sYCIKIG1zZ3N0ciAiIgogImVpbmUgTGlzdGUgbWl0IERpZmYtVG9vbHMgZGFyc3RlbGxlbiwgZGllIG1pdCBgLS10b29sYCBiZW51dHp0IHdlcmRlbiBrw7ZubmVuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzEyCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEzCiBtc2dpZCAiIgogIm1ha2UgJ2dpdC1kaWZmdG9vbCcgZXhpdCB3aGVuIGFuIGludm9rZWQgZGlmZiB0b29sIHJldHVybnMgYSBub24gLSB6ZXJvIGV4aXQgIgogImNvZGUiCkBAIC0xMDkzMywxNjcgKzEzNzk4LDI1OCBAQAogIlLDvGNra2VocndlcnRcbiIKICJ2ZXJzY2hpZWRlbiAwIGF1c2dlZsO8aHJ0IHd1cmRlIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzE1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE2CiBtc2dpZCAic3BlY2lmeSBhIGN1c3RvbSBjb21tYW5kIGZvciB2aWV3aW5nIGRpZmZzIgogbXNnc3RyICJlaWdlbmVuIEJlZmVobCB6dXIgQW56ZWlnZSB2b24gVW50ZXJzY2hpZWRlbiBhbmdlYmVuIgogCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE3Cittc2dpZCAicGFzc2VkIHRvIGBkaWZmYCIKK21zZ3N0ciAiYW4gJ2RpZmYnIMO8YmVyZ2ViZW4iCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzIKK21zZ2lkICJkaWZmdG9vbCByZXF1aXJlcyB3b3JrdHJlZSBvciAtLW5vLWluZGV4IgorbXNnc3RyICJkaWZmdG9vbCBiZW7DtnRpZ3QgQXJiZWl0c3ZlcnplaWNobmlzIG9kZXIgLS1uby1pbmRleCIKKwogIzogYnVpbHRpbi9kaWZmdG9vbC5jOjczOQorbXNnaWQgIi0tZGlyLWRpZmYgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1uby1pbmRleCIKK21zZ3N0ciAiLS1kaXItZGlmZiBrYW5uIG5pY2h0IG1pdCAtLW5vLWluZGV4IHZlcndlbmRldCB3ZXJkZW4iCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDIKK21zZ2lkICItLWd1aSwgLS10b29sIGFuZCAtLWV4dGNtZCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICItLWd1aSwgLS10b29sIHVuZCAtLWV4dGNtZCBzY2hsaWXDn2VuIHNpY2ggZ2VnZW5zZWl0aWcgYXVzIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzUwCiBtc2dpZCAibm8gPHRvb2w+IGdpdmVuIGZvciAtLXRvb2w9PHRvb2w+IgogbXNnc3RyICJrZWluIDxUb29sPiBmw7xyIC0tdG9vbD08VG9vbD4gYW5nZWdlYmVuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzQ2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzU3CiBtc2dpZCAibm8gPGNtZD4gZ2l2ZW4gZm9yIC0tZXh0Y21kPTxjbWQ+IgogbXNnc3RyICJrZWluIDxQcm9ncmFtbT4gZsO8ciAtLWV4dGNtZD08UHJvZ3JhbW0+IGFuZ2VnZWJlbiIKIAorIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjYKK21zZ2lkICJnaXQgZW52LS1oZWxwZXIgLS10eXBlPVtib29sfHVsb25nXSA8b3B0aW9ucz4gPGVudi12YXI+IgorbXNnc3RyICJnaXQgZW52LS1oZWxwZXIgLS10eXBlPVtib29sfHVsb25nXSA8T3B0aW9uZW4+IDxVbWdlYnVuZ3N2YXJpYWJsZT4iCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzozNyBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKK21zZ2lkICJ0eXBlIgorbXNnc3RyICJBcnQiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MQorbXNnaWQgImRlZmF1bHQgZm9yIGdpdF9lbnZfKiguLi4pIHRvIGZhbGwgYmFjayBvbiIKK21zZ3N0ciAiU3RhbmRhcmQgZsO8ciBnaXRfZW52XyooLi4uKSwgdW0gZGFyYXVmIHp1csO8Y2t6dWdyZWlmZW4iCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MworbXNnaWQgImJlIHF1aWV0IG9ubHkgdXNlIGdpdF9lbnZfKigpIHZhbHVlIGFzIGV4aXQgY29kZSIKK21zZ3N0ciAiQXVzZ2FiZW4gdW50ZXJkcsO8Y2tlbjsgbnVyIGdpdF9lbnZfKigpIFdlcnRlIGFscyBFeGl0LUNvZGUgdmVyd2VuZGVuIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAtLWRlZmF1bHQnIGV4cGVjdHMgYSBib29sZWFuIHZhbHVlIHdpdGggYC0tdHlwZT1ib29sYCwgbm90IGAlc2AiCittc2dzdHIgIiIKKyJPcHRpb24gYC0tZGVmYXVsdCcgZXJ3YXJ0ZXQgZWluZW4gYm9vbGVzY2hlbiBXZXJ0IGJlaSBgLS10eXBlPWJvb2wnLCBuaWNodCBgIgorIiVzYCIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvcHRpb24gYC0tZGVmYXVsdCcgZXhwZWN0cyBhbiB1bnNpZ25lZCBsb25nIHZhbHVlIHdpdGggYC0tdHlwZT11bG9uZ2AsIG5vdCBgIgorIiVzYCIKK21zZ3N0ciAiIgorIk9wdGlvbiBgLS1kZWZhdWx0JyBlcndhcnRldCBlaW5lbiB2b3J6ZWljaGVubG9zZW4gTG9uZy1XZXJ0IGJlaSBgLS0iCisidHlwZT11bG9uZ2AsIG5pY2h0IGAlc2AiCisKICM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoyOQogbXNnaWQgImdpdCBmYXN0LWV4cG9ydCBbcmV2LWxpc3Qtb3B0c10iCiBtc2dzdHIgImdpdCBmYXN0LWV4cG9ydCBbcmV2LWxpc3Qtb3B0c10iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6ODUzCittc2dpZCAiRXJyb3I6IENhbm5vdCBleHBvcnQgbmVzdGVkIHRhZ3MgdW5sZXNzIC0tbWFyay10YWdzIGlzIHNwZWNpZmllZC4iCittc2dzdHIgIiIKKyJGZWhsZXI6IFZlcnNjaGFjaHRlbHRlIFRhZ3Mga8O2bm5lbiBuaWNodCBleHBvcnRpZXJ0IHdlcmRlbiwgYXXDn2VyIC0tbWFyay0iCisidGFncyB3dXJkZSBhbmdlZ2ViZW4uIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1MgogbXNnaWQgInNob3cgcHJvZ3Jlc3MgYWZ0ZXIgPG4+IG9iamVjdHMiCiBtc2dzdHIgIkZvcnRzY2hyaXR0IG5hY2ggPG4+IE9iamVrdGVuIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAwOAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTQKIG1zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2Ygc2lnbmVkIHRhZ3MiCiBtc2dzdHIgIkJlaGFuZGx1bmcgdm9uIHNpZ25pZXJ0ZW4gVGFncyB3w6RobGVuIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMQorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTcKIG1zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2YgdGFncyB0aGF0IHRhZyBmaWx0ZXJlZCBvYmplY3RzIgogbXNnc3RyICJCZWhhbmRsdW5nIHZvbiBUYWdzIHfDpGhsZW4sIGRpZSBnZWZpbHRlcnRlIE9iamVrdGUgbWFya2llcmVuIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjAKK21zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2YgY29tbWl0IG1lc3NhZ2VzIGluIGFuIGFsdGVybmF0ZSBlbmNvZGluZyIKK21zZ3N0ciAiIgorIkF1c3fDpGhsZW4gZGVyIEJlaGFuZGx1bmcgdm9uIENvbW1pdC1CZXNjaHJlaWJ1bmdlbiBiZWkgd2VjaHNlbG5kZW0gRW5jb2RpbmciCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTYzCiBtc2dpZCAiRHVtcCBtYXJrcyB0byB0aGlzIGZpbGUiCi1tc2dzdHIgIktlbm56ZWljaGVuIGluIGRpZXNlIERhdGVpIHNjaHJlaWJlbiIKK21zZ3N0ciAiTWFya2llcnVuZ2VuIGluIGRpZXNlIERhdGVpIHNjaHJlaWJlbiIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTYKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY1CiBtc2dpZCAiSW1wb3J0IG1hcmtzIGZyb20gdGhpcyBmaWxlIgotbXNnc3RyICJLZW5uemVpY2hlbiB2b24gZGllc2VyIERhdGVpIGltcG9ydGllcmVuIgorbXNnc3RyICJNYXJraWVydW5nZW4gdm9uIGRpZXNlciBEYXRlaSBpbXBvcnRpZXJlbiIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY5Cittc2dpZCAiSW1wb3J0IG1hcmtzIGZyb20gdGhpcyBmaWxlIGlmIGl0IGV4aXN0cyIKK21zZ3N0ciAiTWFya2llcnVuZ2VuIHZvbiBkaWVzZXIgRGF0ZWkgaW1wb3J0aWVyZW4sIHdlbm4gZGllc2UgZXhpc3RpZXJ0IgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3MQogbXNnaWQgIkZha2UgYSB0YWdnZXIgd2hlbiB0YWdzIGxhY2sgb25lIgogbXNnc3RyICJrw7xuc3RsaWNoIGVpbmVuIFRhZy1FcnN0ZWxsZXIgZXJ6ZXVnZW4sIHdlbm4gZGFzIFRhZyBrZWluZW4gaGF0IgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyMAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzMKIG1zZ2lkICJPdXRwdXQgZnVsbCB0cmVlIGZvciBlYWNoIGNvbW1pdCIKIG1zZ3N0ciAiZsO8ciBqZWRlbiBDb21taXQgZGFzIGdlc2FtdGUgVmVyemVpY2huaXMgYXVzZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDIyCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NQogbXNnaWQgIlVzZSB0aGUgZG9uZSBmZWF0dXJlIHRvIHRlcm1pbmF0ZSB0aGUgc3RyZWFtIgogbXNnc3RyICJkaWUgXCJkb25lXCItRnVua3Rpb24gYmVudXR6ZW4sIHVtIGRlbiBEYXRlbnN0cm9tIGFienVzY2hsaWXDn2VuIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyMworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzYKIG1zZ2lkICJTa2lwIG91dHB1dCBvZiBibG9iIGRhdGEiCiBtc2dzdHIgIkF1c2dhYmUgdm9uIEJsb2ItRGF0ZW4gw7xiZXJzcHJpbmdlbiIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjQgYnVpbHRpbi9sb2cuYzoxNTg4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NyBidWlsdGluL2xvZy5jOjE3MDUKIG1zZ2lkICJyZWZzcGVjIgogbXNnc3RyICJSZWZzcGVjIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyNQorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzgKIG1zZ2lkICJBcHBseSByZWZzcGVjIHRvIGV4cG9ydGVkIHJlZnMiCiBtc2dzdHIgIlJlZnNwZWMgYXVmIGV4cG9ydGllcnRlIFJlZmVyZW56ZW4gYW53ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDI2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3OQogbXNnaWQgImFub255bWl6ZSBvdXRwdXQiCiBtc2dzdHIgIkF1c2dhYmUgYW5vbnltaXNpZXJlbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjI4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE4MQorbXNnaWQgIlJlZmVyZW5jZSBwYXJlbnRzIHdoaWNoIGFyZSBub3QgaW4gZmFzdC1leHBvcnQgc3RyZWFtIGJ5IG9iamVjdCBpZCIKK21zZ3N0ciAiIgorIkVsdGVybiwgZGllIG5pY2h0IGltIEZhc3QtRXhwb3J0LVN0cmVhbSBzaW5kLCBhbmhhbmQgaWhyZXIgT2JqZWt0LUlEICIKKyJyZWZlcmVuemllcmVuIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE4MworbXNnaWQgIlNob3cgb3JpZ2luYWwgb2JqZWN0IGlkcyBvZiBibG9icy9jb21taXRzIgorbXNnc3RyICJvcmlnaW5hbGUgT2JqZWt0LUlEcyB2b24gQmxvYnMvQ29tbWl0cyBhbnplaWdlbiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODUKK21zZ2lkICJMYWJlbCB0YWdzIHdpdGggbWFyayBpZHMiCittc2dzdHIgIlRhZ3MgbWl0IE1hcmtpZXJ1bmdzLUlEcyBiZXNjaHJpZnRlbiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEyMjAKK21zZ2lkICJDYW5ub3QgcGFzcyBib3RoIC0taW1wb3J0LW1hcmtzIGFuZCAtLWltcG9ydC1tYXJrcy1pZi1leGlzdHMiCittc2dzdHIgIiIKKyItLWltcG9ydC1tYXJrcyB1bmQgLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzIGvDtm5uZW4gbmljaHQgenVzYW1tZW4gIgorIndlaXRlcmdlZ2ViZW4gd2VyZGVuIgorCisjOiBidWlsdGluL2ZldGNoLmM6MzQKIG1zZ2lkICJnaXQgZmV0Y2ggWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCiBtc2dzdHIgImdpdCBmZXRjaCBbPE9wdGlvbmVuPl0gWzxSZXBvc2l0b3J5PiBbPFJlZnNwZWM+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoyOQorIzogYnVpbHRpbi9mZXRjaC5jOjM1CiBtc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIDxncm91cD4iCiBtc2dzdHIgImdpdCBmZXRjaCBbPE9wdGlvbmVuPl0gPEdydXBwZT4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzozMAorIzogYnVpbHRpbi9mZXRjaC5jOjM2CiBtc2dpZCAiZ2l0IGZldGNoIC0tbXVsdGlwbGUgWzxvcHRpb25zPl0gWyg8cmVwb3NpdG9yeT4gfCA8Z3JvdXA+KS4uLl0iCiBtc2dzdHIgImdpdCBmZXRjaCAtLW11bHRpcGxlIFs8T3B0aW9uZW4+XSBbKDxSZXBvc2l0b3J5PiB8IDxHcnVwcGU+KS4uLl0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzozMQorIzogYnVpbHRpbi9mZXRjaC5jOjM3CiBtc2dpZCAiZ2l0IGZldGNoIC0tYWxsIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgZmV0Y2ggLS1hbGwgWzxPcHRpb25lbj5dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTE1IGJ1aWx0aW4vcHVsbC5jOjE5NAorIzogYnVpbHRpbi9mZXRjaC5jOjExNgorbXNnaWQgImZldGNoLnBhcmFsbGVsIGNhbm5vdCBiZSBuZWdhdGl2ZSIKK21zZ3N0ciAiZmV0Y2gucGFyYWxsZWwga2FubiBuaWNodCBuZWdhdGl2IHNlaW4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMzkgYnVpbHRpbi9wdWxsLmM6MTg0CiBtc2dpZCAiZmV0Y2ggZnJvbSBhbGwgcmVtb3RlcyIKIG1zZ3N0ciAiZm9yZGVydCB2b24gYWxsZW4gUmVtb3RlLVJlcG9zaXRvcmllcyBhbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExNyBidWlsdGluL3B1bGwuYzoxOTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDEgYnVpbHRpbi9wdWxsLmM6MjI4Cittc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9mZXRjaCIKK21zZ3N0ciAiVXBzdHJlYW0gZsO8ciBcImdpdCBwdWxsL2ZldGNoXCIgc2V0emVuIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzIGJ1aWx0aW4vcHVsbC5jOjE4NwogbXNnaWQgImFwcGVuZCB0byAuZ2l0L0ZFVENIX0hFQUQgaW5zdGVhZCBvZiBvdmVyd3JpdGluZyIKIG1zZ3N0ciAiYW4gLmdpdC9GRVRDSF9IRUFEIGFuaMOkbmdlbiwgYW5zdGF0dCB6dSDDvGJlcnNjaHJlaWJlbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExOSBidWlsdGluL3B1bGwuYzoyMDAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDUgYnVpbHRpbi9wdWxsLmM6MTkwCiBtc2dpZCAicGF0aCB0byB1cGxvYWQgcGFjayBvbiByZW1vdGUgZW5kIgogbXNnc3RyICJQZmFkIGRlcyBQcm9ncmFtbXMgenVtIEhvY2hsYWRlbiB2b24gUGFrZXRlbiBhdWYgZGVyIEdlZ2Vuc2VpdGUiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMjAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDYKIG1zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgbG9jYWwgcmVmZXJlbmNlIgogbXNnc3RyICJkYXMgw5xiZXJzY2hyZWliZW4gZWluZXIgbG9rYWxlbiBSZWZlcmVueiBlcnp3aW5nZW4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMjIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDgKIG1zZ2lkICJmZXRjaCBmcm9tIG11bHRpcGxlIHJlbW90ZXMiCiBtc2dzdHIgInZvbiBtZWhyZXJlbiBSZW1vdGUtUmVwb3NpdG9yaWVzIGFuZm9yZGVybiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyNCBidWlsdGluL3B1bGwuYzoyMDQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTAgYnVpbHRpbi9wdWxsLmM6MTk0CiBtc2dpZCAiZmV0Y2ggYWxsIHRhZ3MgYW5kIGFzc29jaWF0ZWQgb2JqZWN0cyIKIG1zZ3N0ciAiYWxsZSBUYWdzIHVuZCB2ZXJidW5kZW5lIE9iamVrdGUgYW5mb3JkZXJuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI2CisjOiBidWlsdGluL2ZldGNoLmM6MTUyCiBtc2dpZCAiZG8gbm90IGZldGNoIGFsbCB0YWdzICgtLW5vLXRhZ3MpIgogbXNnc3RyICJuaWNodCBhbGxlIFRhZ3MgYW5mb3JkZXJuICgtLW5vLXRhZ3MpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI4CisjOiBidWlsdGluL2ZldGNoLmM6MTU0CiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgZmV0Y2hlZCBpbiBwYXJhbGxlbCIKIG1zZ3N0ciAiQW56YWhsIGRlciBwYXJhbGxlbCBhbnp1Zm9yZGVybmRlbiBTdWJtb2R1bGUiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzAgYnVpbHRpbi9wdWxsLmM6MjA3CisjOiBidWlsdGluL2ZldGNoLmM6MTU2IGJ1aWx0aW4vcHVsbC5jOjE5NwogbXNnaWQgInBydW5lIHJlbW90ZS10cmFja2luZyBicmFuY2hlcyBubyBsb25nZXIgb24gcmVtb3RlIgogbXNnc3RyICIiCiAiUmVtb3RlLVRyYWNraW5nLUJyYW5jaGVzIGVudGZlcm5lbiwgZGllIHNpY2ggbmljaHQgbWVociBpbSBSZW1vdGUtUmVwb3NpdG9yeSAiCiAiYmVmaW5kZW4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTgKIG1zZ2lkICJwcnVuZSBsb2NhbCB0YWdzIG5vIGxvbmdlciBvbiByZW1vdGUgYW5kIGNsb2JiZXIgY2hhbmdlZCB0YWdzIgogbXNnc3RyICIiCiAibG9rYWxlIFRhZ3MgZW50ZmVybmVuLCBkaWUgc2ljaCBuaWNodCBtZWhyIGltIFJlbW90ZS1SZXBvc2l0b3J5IGJlZmluZGVuLCAiCiAidW5kIGdlw6RuZGVydGUgVGFncyBha3R1YWxpc2llcmVuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMzIGJ1aWx0aW4vZmV0Y2guYzoxNTYgYnVpbHRpbi9wdWxsLmM6MTMyCisjOiBidWlsdGluL2ZldGNoLmM6MTU5IGJ1aWx0aW4vZmV0Y2guYzoxODIgYnVpbHRpbi9wdWxsLmM6MTIxCiBtc2dpZCAib24tZGVtYW5kIgogbXNnc3RyICJiZWktQmVkYXJmIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTM0CisjOiBidWlsdGluL2ZldGNoLmM6MTYwCiBtc2dpZCAiY29udHJvbCByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyIKIG1zZ3N0ciAicmVrdXJzaXZlIEFuZm9yZGVydW5nZW4gdm9uIFN1Ym1vZHVsZW4ga29udHJvbGxpZXJlbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzOCBidWlsdGluL3B1bGwuYzoyMTUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9wdWxsLmM6MjA1CiBtc2dpZCAia2VlcCBkb3dubG9hZGVkIHBhY2siCiBtc2dzdHIgImhlcnVudGVyZ2VsYWRlbmVzIFBha2V0IGJlaGFsdGVuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQwCisjOiBidWlsdGluL2ZldGNoLmM6MTY2CiBtc2dpZCAiYWxsb3cgdXBkYXRpbmcgb2YgSEVBRCByZWYiCiBtc2dzdHIgIkFrdHVhbGlzaWVydW5nIGRlciBcIkhFQURcIi1SZWZlcmVueiBlcmxhdWJlbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0MyBidWlsdGluL2ZldGNoLmM6MTQ5IGJ1aWx0aW4vcHVsbC5jOjIxOAorIzogYnVpbHRpbi9mZXRjaC5jOjE2OSBidWlsdGluL2ZldGNoLmM6MTc1IGJ1aWx0aW4vcHVsbC5jOjIwOAogbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgY2xvbmUiCiBtc2dzdHIgIiIKICJkaWUgSGlzdG9yaWUgZWluZXMgS2xvbnMgbWl0IHVudm9sbHN0w6RuZGlnZXIgSGlzdG9yaWUgKHNoYWxsb3cpIHZlcnRpZWZlbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0NQorIzogYnVpbHRpbi9mZXRjaC5jOjE3MQogbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgcmVwb3NpdG9yeSBiYXNlZCBvbiB0aW1lIgogbXNnc3RyICIiCiAiZGllIEhpc3RvcmllIGVpbmVzIEtsb25zIG1pdCB1bnZvbGxzdMOkbmRpZ2VyIEhpc3RvcmllIChzaGFsbG93KSBhdWYgIgogIlplaXRiYXNpc1xuIgogInZlcnRpZWZlbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1MSBidWlsdGluL3B1bGwuYzoyMjEKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzcgYnVpbHRpbi9wdWxsLmM6MjExCiBtc2dpZCAiY29udmVydCB0byBhIGNvbXBsZXRlIHJlcG9zaXRvcnkiCiBtc2dzdHIgInp1IGVpbmVtIHZvbGxzdMOkbmRpZ2VuIFJlcG9zaXRvcnkga29udmVydGllcmVuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU0CisjOiBidWlsdGluL2ZldGNoLmM6MTgwCiBtc2dpZCAicHJlcGVuZCB0aGlzIHRvIHN1Ym1vZHVsZSBwYXRoIG91dHB1dCIKIG1zZ3N0ciAiZGllcyBhbiBkaWUgQXVzZ2FiZSBkZXIgU3VibW9kdWwtUGZhZGUgdm9yYW5zdGVsbGVuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU3CisjOiBidWlsdGluL2ZldGNoLmM6MTgzCiBtc2dpZCAiIgogImRlZmF1bHQgZm9yIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIChsb3dlciBwcmlvcml0eSB0aGFuIGNvbmZpZyAiCiAiZmlsZXMpIgpAQCAtMTExMDEsOTkgKzE0MDU3LDEyNSBAQAogIlN0YW5kYXJkIGbDvHIgZGllIHJla3Vyc2l2ZSBBbmZvcmRlcnVuZyB2b24gU3VibW9kdWxlbiAoZ2VyaW5nZXJlIFByaW9yaXTDpHRcbiIKICJhbHMgS29uZmlndXJhdGlvbnNkYXRlaWVuKSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MSBidWlsdGluL3B1bGwuYzoyMjQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODcgYnVpbHRpbi9wdWxsLmM6MjE0CiBtc2dpZCAiYWNjZXB0IHJlZnMgdGhhdCB1cGRhdGUgLmdpdC9zaGFsbG93IgogbXNnc3RyICJSZWZlcmVuemVuLCBkaWUgLmdpdC9zaGFsbG93IGFrdHVhbGlzaWVyZW4sIGFremVwdGllcmVuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYyIGJ1aWx0aW4vcHVsbC5jOjIyNgorIzogYnVpbHRpbi9mZXRjaC5jOjE4OCBidWlsdGluL3B1bGwuYzoyMTYKIG1zZ2lkICJyZWZtYXAiCiBtc2dzdHIgIlJlZm1hcCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MyBidWlsdGluL3B1bGwuYzoyMjcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODkgYnVpbHRpbi9wdWxsLmM6MjE3CiBtc2dpZCAic3BlY2lmeSBmZXRjaCByZWZtYXAiCiBtc2dzdHIgIlJlZm1hcCBmw7xyICdmZXRjaCcgYW5nZWJlbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2NCBidWlsdGluL2xzLXJlbW90ZS5jOjc3IGJ1aWx0aW4vcHVzaC5jOjU4MgotIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzIKLW1zZ2lkICJzZXJ2ZXItc3BlY2lmaWMiCi1tc2dzdHIgInNlcnZlcnNwZXppZmlzY2giCi0KLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9scy1yZW1vdGUuYzo3NyBidWlsdGluL3B1c2guYzo1ODIKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTczCi1tc2dpZCAib3B0aW9uIHRvIHRyYW5zbWl0IgotbXNnc3RyICJPcHRpb24gw7xiZXJ0cmFnZW4iCi0KLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxOTYKIG1zZ2lkICJyZXBvcnQgdGhhdCB3ZSBoYXZlIG9ubHkgb2JqZWN0cyByZWFjaGFibGUgZnJvbSB0aGlzIG9iamVjdCIKIG1zZ3N0ciAiIgogImF1c2dlYmVuLCBkYXNzIHdpciBudXIgT2JqZWt0ZSBoYWJlbiwgZGllIHZvbiBkaWVzZW0gT2JqZWt0IGF1cyBlcnJlaWNoYmFyICIKICJzaW5kIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NDcwCisjOiBidWlsdGluL2ZldGNoLmM6MTk5Cittc2dpZCAicnVuICdnYyAtLWF1dG8nIGFmdGVyIGZldGNoaW5nIgorbXNnc3RyICJGw7xocmUgJ2djIC0tYXV0bycgbmFjaCBcImZldGNoXCIgYXVzIgorCisjOiBidWlsdGluL2ZldGNoLmM6MjAxIGJ1aWx0aW4vcHVsbC5jOjIyNgorbXNnaWQgImNoZWNrIGZvciBmb3JjZWQtdXBkYXRlcyBvbiBhbGwgdXBkYXRlZCBicmFuY2hlcyIKK21zZ3N0ciAiUHLDvGZlIGF1ZiBlcnp3dW5nZW5lIEFrdHVhbGlzaWVydW5nZW4gaW4gYWxsZW4gYWt0dWFsaXNpZXJ0ZW4gQnJhbmNoZXMiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoyMDMKK21zZ2lkICJ3cml0ZSB0aGUgY29tbWl0LWdyYXBoIGFmdGVyIGZldGNoaW5nIgorbXNnc3RyICJTY2hyZWliZSBkZW4gQ29tbWl0LUdyYXBoIG5hY2ggXCJmZXRjaFwiIgorCisjOiBidWlsdGluL2ZldGNoLmM6NTEzCiBtc2dpZCAiQ291bGRuJ3QgZmluZCByZW1vdGUgcmVmIEhFQUQiCiBtc2dzdHIgIktvbm50ZSBSZW1vdGUtUmVmZXJlbnogdm9uIEhFQUQgbmljaHQgZmluZGVuLiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjYwOQorIzogYnVpbHRpbi9mZXRjaC5jOjY1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb25maWd1cmF0aW9uIGZldGNoLm91dHB1dCBjb250YWlucyBpbnZhbGlkIHZhbHVlICVzIgogbXNnc3RyICJLb25maWd1cmF0aW9uIGZldGNoLm91dHB1dCBlbnRow6RsdCB1bmfDvGx0aWdlbiBXZXJ0ICVzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzAyCisjOiBidWlsdGluL2ZldGNoLmM6NzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBub3QgZm91bmQiCiBtc2dzdHIgIk9iamVrdCAlcyBuaWNodCBnZWZ1bmRlbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjcwNgorIzogYnVpbHRpbi9mZXRjaC5jOjc1NQogbXNnaWQgIlt1cCB0byBkYXRlXSIKIG1zZ3N0ciAiW2FrdHVlbGxdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzE5IGJ1aWx0aW4vZmV0Y2guYzo3MzUgYnVpbHRpbi9mZXRjaC5jOjgwNworIzogYnVpbHRpbi9mZXRjaC5jOjc2OCBidWlsdGluL2ZldGNoLmM6Nzg0IGJ1aWx0aW4vZmV0Y2guYzo4NTYKIG1zZ2lkICJbcmVqZWN0ZWRdIgogbXNnc3RyICJbenVyw7xja2dld2llc2VuXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjcyMAorIzogYnVpbHRpbi9mZXRjaC5jOjc2OQogbXNnaWQgImNhbid0IGZldGNoIGluIGN1cnJlbnQgYnJhbmNoIgogbXNnc3RyICJrYW5uIFwiZmV0Y2hcIiBpbSBha3R1ZWxsZW4gQnJhbmNoIG5pY2h0IGF1c2bDvGhyZW4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NzkKIG1zZ2lkICJbdGFnIHVwZGF0ZV0iCiBtc2dzdHIgIltUYWcgQWt0dWFsaXNpZXJ1bmddIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzMxIGJ1aWx0aW4vZmV0Y2guYzo3NzEgYnVpbHRpbi9mZXRjaC5jOjc4NwotIzogYnVpbHRpbi9mZXRjaC5jOjgwMgorIzogYnVpbHRpbi9mZXRjaC5jOjc4MCBidWlsdGluL2ZldGNoLmM6ODE3IGJ1aWx0aW4vZmV0Y2guYzo4MzkKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NTEKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIGxvY2FsIHJlZiIKIG1zZ3N0ciAia2FubiBsb2thbGUgUmVmZXJlbnogbmljaHQgYWt0dWFsaXNpZXJlbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjczNQorIzogYnVpbHRpbi9mZXRjaC5jOjc4NAogbXNnaWQgIndvdWxkIGNsb2JiZXIgZXhpc3RpbmcgdGFnIgogbXNnc3RyICJ3w7xyZGUgYmVzdGVoZW5kZSBUYWdzIHZlcsOkbmRlcm4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3NTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MDYKIG1zZ2lkICJbbmV3IHRhZ10iCiBtc2dzdHIgIltuZXVlcyBUYWddIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzYwCisjOiBidWlsdGluL2ZldGNoLmM6ODA5CiBtc2dpZCAiW25ldyBicmFuY2hdIgogbXNnc3RyICJbbmV1ZXIgQnJhbmNoXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjc2MworIzogYnVpbHRpbi9mZXRjaC5jOjgxMgogbXNnaWQgIltuZXcgcmVmXSIKIG1zZ3N0ciAiW25ldWUgUmVmZXJlbnpdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODAyCisjOiBidWlsdGluL2ZldGNoLmM6ODUxCiBtc2dpZCAiZm9yY2VkIHVwZGF0ZSIKIG1zZ3N0ciAiQWt0dWFsaXNpZXJ1bmcgZXJ6d3VuZ2VuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODA3CisjOiBidWlsdGluL2ZldGNoLmM6ODU2CiBtc2dpZCAibm9uLWZhc3QtZm9yd2FyZCIKIG1zZ3N0ciAia2VpbiBWb3JzcHVsZW4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4NTMKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NzcKK21zZ2lkICIiCisiRmV0Y2ggbm9ybWFsbHkgaW5kaWNhdGVzIHdoaWNoIGJyYW5jaGVzIGhhZCBhIGZvcmNlZCB1cGRhdGUsXG4iCisiYnV0IHRoYXQgY2hlY2sgaGFzIGJlZW4gZGlzYWJsZWQuIFRvIHJlLWVuYWJsZSwgdXNlICctLXNob3ctZm9yY2VkLXVwZGF0ZXMnXG4iCisiZmxhZyBvciBydW4gJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgdHJ1ZScuIgorbXNnc3RyICIiCisiTm9ybWFsZXJ3ZWlzZSB6ZWlndCAnZmV0Y2gnIHdlbGNoZSBCcmFuY2hlcyBlaW5lIGVyend1bmdlbmUgQWt0dWFsaXNpZXJ1bmdcbiIKKyJoYXR0ZW4sIGFiZXIgZGllc2Ugw5xiZXJwcsO8ZnVuZyB3dXJkZSBkZWFrdGl2aWVydC4gVW0gZGllc2Ugd2llZGVyIHp1XG4iCisiYWt0aXZpZXJlbiwgbnV0emVuIFNpZSBkaWUgT3B0aW9uICctLXNob3ctZm9yY2VkLXVwZGF0ZWQnIG9kZXIgZsO8aHJlblxuIgorIlNpZSAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyB0cnVlJyBhdXMuIgorCisjOiBidWlsdGluL2ZldGNoLmM6ODgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBjaGVjayBmb3JjZWQgdXBkYXRlcy4gWW91IGNhbiB1c2VcbiIKKyInLS1uby1zaG93LWZvcmNlZC11cGRhdGVzJyBvciBydW4gJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgIgorImZhbHNlJ1xuIgorIiB0byBhdm9pZCB0aGlzIGNoZWNrLlxuIgorbXNnc3RyICIiCisiRXMgYnJhdWNodGUgJS4yZiBTZWt1bmRlbiwgdW0gZXJ6d3VuZ2VuZSBBa3R1YWxpc2llcnVuZ2VuIHp1IMO8YmVycHLDvGZlbi5cbiIKKyJTaWUga8O2bm5lbiBkaWUgT3B0aW9uICctLW5vLXNob3ctZm9yY2VkLXVwZGF0ZXMnIGJlbnV0emVuIG9kZXJcbiIKKyInZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyBmYWxzZScgYXVzZsO8aHJlbiwgdW0gZGllc2Ugw5xiZXJwcsO8ZnVuZ1xuIgorInp1IHVtZ2VoZW4uXG4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo5MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZGlkIG5vdCBzZW5kIGFsbCBuZWNlc3Nhcnkgb2JqZWN0c1xuIgogbXNnc3RyICIlcyBoYXQgbmljaHQgYWxsZSBlcmZvcmRlcmxpY2hlbiBPYmpla3RlIGdlc2VuZGV0XG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4NzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzo5NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVqZWN0ICVzIGJlY2F1c2Ugc2hhbGxvdyByb290cyBhcmUgbm90IGFsbG93ZWQgdG8gYmUgdXBkYXRlZCIKIG1zZ3N0ciAiIgpAQCAtMTEyMDEsMTIgKzE0MTgzLDEyIEBACiAidW52b2xsc3TDpG5kaWdlclxuIgogIkhpc3RvcmllIChzaGFsbG93KSBuaWNodCBha3R1YWxpc2llcnQgd2VyZGVuIGTDvHJmZW4uIgogCi0jOiBidWlsdGluL2ZldGNoLmM6OTYzIGJ1aWx0aW4vZmV0Y2guYzoxMDg1CisjOiBidWlsdGluL2ZldGNoLmM6MTAyNiBidWlsdGluL2ZldGNoLmM6MTE2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJGcm9tICUuKnNcbiIKIG1zZ3N0ciAiVm9uICUuKnNcbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjk3NAorIzogYnVpbHRpbi9mZXRjaC5jOjEwMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInNvbWUgbG9jYWwgcmVmcyBjb3VsZCBub3QgYmUgdXBkYXRlZDsgdHJ5IHJ1bm5pbmdcbiIKQEAgLTExMjE1LDU5ICsxNDE5Nyw4MSBAQAogIkVpbmlnZSBsb2thbGUgUmVmZXJlbnplbiBrb25udGVuIG5pY2h0IGFrdHVhbGlzaWVydCB3ZXJkZW47IHZlcnN1Y2hlbiBTaWVcbiIKICInZ2l0IHJlbW90ZSBwcnVuZSAlcycsIHVtIGplZGVuIMOkbHRlcmVuLCB3aWRlcnNwcsO8Y2hsaWNoZW4gQnJhbmNoIHp1IGzDtnNjaGVuLiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwNTUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICglcyB3aWxsIGJlY29tZSBkYW5nbGluZykiCiBtc2dzdHIgIiAgICglcyB3aXJkIHVucmVmZXJlbnppZXJ0KSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwNTYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICglcyBoYXMgYmVjb21lIGRhbmdsaW5nKSIKIG1zZ3N0ciAiICAgKCVzIHd1cmRlIHVucmVmZXJlbnppZXJ0KSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwODgKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTY3CiBtc2dpZCAiW2RlbGV0ZWRdIgogbXNnc3RyICJbZ2Vsw7ZzY2h0XSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwODkgYnVpbHRpbi9yZW1vdGUuYzoxMDM2CisjOiBidWlsdGluL2ZldGNoLmM6MTE2OCBidWlsdGluL3JlbW90ZS5jOjExMTIKIG1zZ2lkICIobm9uZSkiCiBtc2dzdHIgIihuaWNodHMpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTExMgorIzogYnVpbHRpbi9mZXRjaC5jOjExOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gZmV0Y2ggaW50byBjdXJyZW50IGJyYW5jaCAlcyBvZiBub24tYmFyZSByZXBvc2l0b3J5IgogbXNnc3RyICIiCiAiRGVyIFwiZmV0Y2hcIiBpbiBkZW4gYWt0dWVsbGVuIEJyYW5jaCAlcyB2b24gZWluZW0gTmljaHQtQmFyZS1SZXBvc2l0b3J5ICIKICJ3dXJkZSB2ZXJ3ZWlnZXJ0LiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExMzEKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMjEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9wdGlvbiBcIiVzXCIgdmFsdWUgXCIlc1wiIGlzIG5vdCB2YWxpZCBmb3IgJXMiCiBtc2dzdHIgIk9wdGlvbiBcIiVzXCIgV2VydCBcIiVzXCIgaXN0IG5pY2h0IGfDvGx0aWcgZsO8ciAlcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExMzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMjEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9wdGlvbiBcIiVzXCIgaXMgaWdub3JlZCBmb3IgJXNcbiIKIG1zZ3N0ciAiT3B0aW9uIFwiJXNcIiB3aXJkIGlnbm9yaWVydCBmw7xyICVzXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMzCisjOiBidWlsdGluL2ZldGNoLmM6MTQyMQorbXNnaWQgIm11bHRpcGxlIGJyYW5jaGVzIGRldGVjdGVkLCBpbmNvbXBhdGlibGUgd2l0aCAtLXNldC11cHN0cmVhbSIKK21zZ3N0ciAiTWVocmVyZSBCcmFuY2hlcyBlcmthbm50LCBpbmtvbXBhdGliZWwgbWl0IC0tc2V0LXVwc3RyZWFtIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzNgorbXNnaWQgIm5vdCBzZXR0aW5nIHVwc3RyZWFtIGZvciBhIHJlbW90ZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICJTZXR6ZSBrZWluZW4gVXBzdHJlYW0gZsO8ciBlaW5lbiBlbnRmZXJudGVuIFJlbW90ZS1UcmFja2luZy1CcmFuY2guIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzOAorbXNnaWQgIm5vdCBzZXR0aW5nIHVwc3RyZWFtIGZvciBhIHJlbW90ZSB0YWciCittc2dzdHIgIlNldHplIGtlaW5lbiBVcHN0cmVhbSBmw7xyIGVpbmVuIFRhZyBlaW5lcyBSZW1vdGUtUmVwb3NpdG9yaWVzLiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0NDAKK21zZ2lkICJ1bmtub3duIGJyYW5jaCB0eXBlIgorbXNnc3RyICJVbmJla2FubnRlciBCcmFuY2gtVHlwIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ0MgorbXNnaWQgIiIKKyJubyBzb3VyY2UgYnJhbmNoIGZvdW5kLlxuIgorInlvdSBuZWVkIHRvIHNwZWNpZnkgZXhhY3RseSBvbmUgYnJhbmNoIHdpdGggdGhlIC0tc2V0LXVwc3RyZWFtIG9wdGlvbi4iCittc2dzdHIgIiIKKyJLZWluZW4gUXVlbGwtQnJhbmNoIGdlZnVuZGVuLlxuIgorIlNpZSBtw7xzc2VuIGJlaSBkZXIgT3B0aW9uIC0tc2V0LXVwc3RyZWFtIGdlbmF1IGVpbmVuIEJyYW5jaCBhbmdlYmVuLiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE1NjggYnVpbHRpbi9mZXRjaC5jOjE2MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmV0Y2hpbmcgJXNcbiIKIG1zZ3N0ciAiRm9yZGVyZSBhbiB2b24gJXNcbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0MzUgYnVpbHRpbi9yZW1vdGUuYzoxMDAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTc4IGJ1aWx0aW4vZmV0Y2guYzoxNjMzIGJ1aWx0aW4vcmVtb3RlLmM6MTAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBmZXRjaCAlcyIKIG1zZ3N0ciAiS29ubnRlIG5pY2h0IHZvbiAlcyBhbmZvcmRlcm4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDgxIGJ1aWx0aW4vZmV0Y2guYzoxNjQ5Ci1tc2dpZCAiIgotIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gY29yZS5wYXJ0aWFsQ2xvbmUiCi1tc2dzdHIgIiIKLSItLWZpbHRlciBrYW5uIG51ciBtaXQgZGVuIFJlbW90ZS1SZXBvc2l0b3JpZXMgdmVyd2VuZGV0IHdlcmRlbixcbiIKLSJkaWUgaW4gY29yZS5wYXJ0aWFsQ2xvbmUga29uZmlndXJpZXJ0IHNpbmQuIgorIzogYnVpbHRpbi9mZXRjaC5jOjE1OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZldGNoICclcycgKGV4aXQgY29kZTogJWQpXG4iCittc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGFuZm9yZGVybiAoRXhpdC1Db2RlOiAlZClcbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1MDQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjkzCiBtc2dpZCAiIgogIk5vIHJlbW90ZSByZXBvc2l0b3J5IHNwZWNpZmllZC4gIFBsZWFzZSwgc3BlY2lmeSBlaXRoZXIgYSBVUkwgb3IgYVxuIgogInJlbW90ZSBuYW1lIGZyb20gd2hpY2ggbmV3IHJldmlzaW9ucyBzaG91bGQgYmUgZmV0Y2hlZC4iCkBAIC0xMTI3Niw0OCArMTQyODAsNTYgQEAKICJvZGVyIGRlbiBOYW1lbiBkZXMgUmVtb3RlLVJlcG9zaXRvcmllcyBhbiwgdm9uIHdlbGNoZW0gbmV1ZVxuIgogIkNvbW1pdHMgYW5nZWZvcmRlcnQgd2VyZGVuIHNvbGxlbi4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQxCisjOiBidWlsdGluL2ZldGNoLmM6MTczMAogbXNnaWQgIllvdSBuZWVkIHRvIHNwZWNpZnkgYSB0YWcgbmFtZS4iCiBtc2dzdHIgIlNpZSBtw7xzc2VuIGRlbiBOYW1lbiBkZXMgVGFncyBhbmdlYmVuLiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzgwCiBtc2dpZCAiTmVnYXRpdmUgZGVwdGggaW4gLS1kZWVwZW4gaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAiTmVnYXRpdmUgVGllZmUgd2lyZCB2b24gLS1kZWVwZW4gbmljaHQgdW50ZXJzdMO8dHp0LiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzgyCiBtc2dpZCAiLS1kZWVwZW4gYW5kIC0tZGVwdGggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLS1kZWVwZW4gdW5kIC0tZGVwdGggc2NobGllw59lbiBzaWNoIGdlZ2Vuc2VpdGlnIGF1cyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzg3CiBtc2dpZCAiLS1kZXB0aCBhbmQgLS11bnNoYWxsb3cgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCiBtc2dzdHIgIiIKICJEaWUgT3B0aW9uZW4gLS1kZXB0aCB1bmQgLS11bnNoYWxsb3cga8O2bm5lbiBuaWNodCBnZW1laW5zYW0gdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTk5CisjOiBidWlsdGluL2ZldGNoLmM6MTc4OQogbXNnaWQgIi0tdW5zaGFsbG93IG9uIGEgY29tcGxldGUgcmVwb3NpdG9yeSBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICIiCi0iRGllIE9wdGlvbiAtLXVuc2hhbGxvdyBrYW5uIG5pY2h0IGluIGVpbmVtIFJlcG9zaXRvcnkgbWl0IHVudm9sbHN0w6RuZGlnZXIgIgorIkRpZSBPcHRpb24gLS11bnNoYWxsb3cga2FubiBuaWNodCBpbiBlaW5lbSBSZXBvc2l0b3J5IG1pdCB2b2xsc3TDpG5kaWdlciAiCiAiSGlzdG9yaWUgdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjE1CisjOiBidWlsdGluL2ZldGNoLmM6MTgwNQogbXNnaWQgImZldGNoIC0tYWxsIGRvZXMgbm90IHRha2UgYSByZXBvc2l0b3J5IGFyZ3VtZW50IgogbXNnc3RyICJmZXRjaCAtLWFsbCBha3plcHRpZXJ0IGtlaW4gUmVwb3NpdG9yeSBhbHMgQXJndW1lbnQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjE3CisjOiBidWlsdGluL2ZldGNoLmM6MTgwNwogbXNnaWQgImZldGNoIC0tYWxsIGRvZXMgbm90IG1ha2Ugc2Vuc2Ugd2l0aCByZWZzcGVjcyIKIG1zZ3N0ciAiZmV0Y2ggLS1hbGwga2FubiBuaWNodCBtaXQgUmVmc3BlY3MgdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjI2CisjOiBidWlsdGluL2ZldGNoLmM6MTgxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIHJlbW90ZSBvciByZW1vdGUgZ3JvdXA6ICVzIgogbXNnc3RyICJLZWluIFJlbW90ZS1SZXBvc2l0b3J5IChlaW56ZWxuIG9kZXIgR3J1cHBlKTogJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjMzCisjOiBidWlsdGluL2ZldGNoLmM6MTgyMwogbXNnaWQgIkZldGNoaW5nIGEgZ3JvdXAgYW5kIHNwZWNpZnlpbmcgcmVmc3BlY3MgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiIgogIkRhcyBBYmhvbGVuIGVpbmVyIEdydXBwZSB2b24gUmVtb3RlLVJlcG9zaXRvcmllcyBrYW5uIG5pY2h0IG1pdCBkZXIgQW5nYWJlXG4iCiAidm9uIFJlZnNwZWNzIHZlcndlbmRldCB3ZXJkZW4uIgogCisjOiBidWlsdGluL2ZldGNoLmM6MTg0MQorbXNnaWQgIiIKKyItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdpdGggdGhlIHJlbW90ZSBjb25maWd1cmVkIGluIGV4dGVuc2lvbnMuIgorInBhcnRpYWxjbG9uZSIKK21zZ3N0ciAiIgorIi0tZmlsdGVyIGthbm4gbnVyIG1pdCBkZW4gUmVtb3RlLVJlcG9zaXRvcmllcyB2ZXJ3ZW5kZXQgd2VyZGVuLFxuIgorImRpZSBpbiBjb3JlLnBhcnRpYWxDbG9uZSBrb25maWd1cmllcnQgc2luZC4iCisKICM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjE4CiBtc2dpZCAiIgogImdpdCBmbXQtbWVyZ2UtbXNnIFstbSA8bWVzc2FnZT5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlIDxmaWxlPl0iCkBAIC0xMTMyNSwyMyArMTQzMzcsMjMgQEAKICJnaXQgZm10LW1lcmdlLW1zZyBbLW0gPEJlc2NocmVpYnVuZz5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlICIKICI8RGF0ZWk+XSIKIAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcyCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzEKIG1zZ2lkICJwb3B1bGF0ZSBsb2cgd2l0aCBhdCBtb3N0IDxuPiBlbnRyaWVzIGZyb20gc2hvcnRsb2ciCiBtc2dzdHIgIkhpc3RvcmllIG1pdCBow7ZjaHN0ZW5zIDxuPiBFaW50csOkZ2VuIHZvbiBcInNob3J0bG9nXCIgaGluenVmw7xnZW4iCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc0CiBtc2dpZCAiYWxpYXMgZm9yIC0tbG9nIChkZXByZWNhdGVkKSIKIG1zZ3N0ciAiQWxpYXMgZsO8ciAtLWxvZyAodmVyYWx0ZXQpIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzgKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NwogbXNnaWQgInRleHQiCiBtc2dzdHIgIlRleHQiCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc4CiBtc2dpZCAidXNlIDx0ZXh0PiBhcyBzdGFydCBvZiBtZXNzYWdlIgogbXNnc3RyICI8VGV4dD4gYWxzIEJlc2NocmVpYnVuZ3NhbmZhbmcgdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2ODAKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQogbXNnaWQgImZpbGUgdG8gcmVhZCBmcm9tIgogbXNnc3RyICJEYXRlaSB6dW0gRWlubGVzZW4iCiAKQEAgLTExMzgxLDkxICsxNDM5MywyNzQgQEAKIG1zZ2lkICJzaG93IG9ubHkgPG4+IG1hdGNoZWQgcmVmcyIKIG1zZ3N0ciAibnVyIDxuPiBwYXNzZW5kZSBSZWZlcmVuemVuIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM5IGJ1aWx0aW4vdGFnLmM6NDI0CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM5IGJ1aWx0aW4vdGFnLmM6NDM5CiBtc2dpZCAicmVzcGVjdCBmb3JtYXQgY29sb3JzIgogbXNnc3RyICJGb3JtYXRmYXJiZW4gYmVhY2h0ZW4iCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDMKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggcG9pbnRzIGF0IHRoZSBnaXZlbiBvYmplY3QiCiBtc2dzdHIgIm51ciBhdWYgZGllc2VzIE9iamVrdCB6ZWlnZW5kZSBSZWZlcmVuemVuIGF1c2dlYmVuIgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ1CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ0CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAibnVyIHp1c2FtbWVuZ2Vmw7xocnRlIFJlZmVyZW56ZW4gYXVzZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDYKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDUKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgdGhhdCBhcmUgbm90IG1lcmdlZCIKIG1zZ3N0ciAibnVyIG5pY2h0IHp1c2FtbWVuZ2Vmw7xocnRlIFJlZmVyZW56ZW4gYXVzZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDcKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDYKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICJudXIgUmVmZXJlbnplbiBhdXNnZWJlbiwgZGllIGRpZXNlbiBDb21taXQgZW50aGFsdGVuIgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ4CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ3CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHdoaWNoIGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAibnVyIFJlZmVyZW56ZW4gYXVzZ2ViZW4sIGRpZSBkaWVzZW4gQ29tbWl0IG5pY2h0IGVudGhhbHRlbiIKIAotIzogYnVpbHRpbi9mc2NrLmM6NTk4CisjOiBidWlsdGluL2ZzY2suYzo2OCBidWlsdGluL2ZzY2suYzoxNDcgYnVpbHRpbi9mc2NrLmM6MTQ4Cittc2dpZCAidW5rbm93biIKK21zZ3N0ciAidW5iZWthbm50IgorCisjLiBUUkFOU0xBVE9SUzogZS5nLiBlcnJvciBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMDAgYnVpbHRpbi9mc2NrLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluICVzICVzOiAlcyIKK21zZ3N0ciAiRmVobGVyIGluICVzICVzOiAlcyIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gd2FybmluZyBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FybmluZyBpbiAlcyAlczogJXMiCittc2dzdHIgIldhcm51bmcgaW4gJXMgJXM6ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzoxNDMgYnVpbHRpbi9mc2NrLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImJyb2tlbiBsaW5rIGZyb20gJTdzICVzIgorbXNnc3RyICJGZWhsZXJoYWZ0ZSBWZXJrbsO8cGZ1bmcgdm9uICU3cyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MTU1Cittc2dpZCAid3Jvbmcgb2JqZWN0IHR5cGUgaW4gbGluayIKK21zZ3N0ciAiRmFsc2NoZXIgT2JqZWt0dHlwIGluIFZlcmtuw7xwZnVuZy4iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE3MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYnJva2VuIGxpbmsgZnJvbSAlN3MgJXNcbiIKKyIgICAgICAgICAgICAgIHRvICU3cyAlcyIKK21zZ3N0ciAiIgorIkZlaGxlcmhhZnRlIFZlcmtuw7xwZnVuZyB2b24gJTdzICVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICBuYWNoICU3cyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMgJXMiCittc2dzdHIgIiVzICVzIGZlaGx0IgorCisjOiBidWlsdGluL2ZzY2suYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWFjaGFibGUgJXMgJXMiCittc2dzdHIgIiVzICVzIG5pY2h0IGVycmVpY2hiYXIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjMyOQorIywgYy1mb3JtYXQKK21zZ2lkICJkYW5nbGluZyAlcyAlcyIKK21zZ3N0ciAiJXMgJXMgdW5yZWZlcmVuemllcnQiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjMzOQorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgbG9zdC1mb3VuZCIKK21zZ3N0ciAiS29ubnRlIGxvc3QtZm91bmQgbmljaHQgZXJzdGVsbGVuLiIKKworIzogYnVpbHRpbi9mc2NrLmM6MzUwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggJyVzJyIKK21zZ3N0ciAiS29ubnRlICclcycgbmljaHQgYWJzY2hsaWXDn2VuLiIKKworIzogYnVpbHRpbi9mc2NrLmM6MzY3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzIgorbXNnc3RyICJQcsO8ZmUgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQwNQorIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkgKCVkIG9iamVjdHMpIgorbXNnc3RyICJQcsO8ZmUgS29ubmVrdGl2aXTDpHQgKCVkIE9iamVrdGUpIgorCisjOiBidWlsdGluL2ZzY2suYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgJXMiCittc2dzdHIgIlByw7xmZSAlcyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDI5Cittc2dpZCAiYnJva2VuIGxpbmtzIgorbXNnc3RyICJGZWhsZXJoYWZ0ZSBWZXJrbsO8cGZ1bmdlbiIKKworIzogYnVpbHRpbi9mc2NrLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgInJvb3QgJXMiCittc2dzdHIgIld1cnplbCAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInRhZ2dlZCAlcyAlcyAoJXMpIGluICVzIgorbXNnc3RyICIlcyAlcyAoJXMpIGluICVzIGdldGFnZ3QiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvcnJ1cHQgb3IgbWlzc2luZyIKK21zZ3N0ciAiJXM6IE9iamVrdCBmZWhsZXJoYWZ0IG9kZXIgbmljaHQgdm9yaGFuZGVuIgorCisjOiBidWlsdGluL2ZzY2suYzo1MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgcmVmbG9nIGVudHJ5ICVzIgorbXNnc3RyICIlczogVW5nw7xsdGlnZXIgUmVmbG9nLUVpbnRyYWcgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjUxNAorIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyByZWZsb2cgJXMtPiVzIgorbXNnc3RyICJQcsO8ZmUgUmVmbG9nICVzLT4lcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHNoYTEgcG9pbnRlciAlcyIKK21zZ3N0ciAiJXM6IFVuZ8O8bHRpZ2VyIFNIQTEtWmVpZ2VyICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo1NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG5vdCBhIGNvbW1pdCIKK21zZ3N0ciAiJXM6IGtlaW4gQ29tbWl0IgorCisjOiBidWlsdGluL2ZzY2suYzo2MDkKK21zZ2lkICJub3RpY2U6IE5vIGRlZmF1bHQgcmVmZXJlbmNlcyIKK21zZ3N0ciAiTm90aXo6IEtlaW5lIFN0YW5kYXJkcmVmZXJlbnplbiIKKworIzogYnVpbHRpbi9mc2NrLmM6NjI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgY29ycnVwdCBvciBtaXNzaW5nOiAlcyIKK21zZ3N0ciAiJXM6IE9iamVrdCBmZWhsZXJoYWZ0IG9kZXIgbmljaHQgdm9yaGFuZGVuOiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgY291bGQgbm90IGJlIHBhcnNlZDogJXMiCittc2dzdHIgIiVzOiBPYmpla3Qga29ubnRlIG5pY2h0IGdlcGFyc3Qgd2VyZGVuOiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjU3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaGExIGZpbGU6ICVzIgorbXNnc3RyICJVbmfDvGx0aWdlIFNIQTEtRGF0ZWk6ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo2NzIKK21zZ2lkICJDaGVja2luZyBvYmplY3QgZGlyZWN0b3J5IgorbXNnc3RyICJQcsO8ZmUgT2JqZWt0LVZlcnplaWNobmlzIgorCisjOiBidWlsdGluL2ZzY2suYzo2NzUKIG1zZ2lkICJDaGVja2luZyBvYmplY3QgZGlyZWN0b3JpZXMiCiBtc2dzdHIgIlByw7xmZSBPYmpla3QtVmVyemVpY2huaXNzZSIKIAotIzogYnVpbHRpbi9mc2NrLmM6NjkzCisjOiBidWlsdGluL2ZzY2suYzo2OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgbGluayIKK21zZ3N0ciAiUHLDvGZlICVzIFZlcmtuw7xwZnVuZyIKKworIzogYnVpbHRpbi9mc2NrLmM6Njk1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkICVzIgorbXNnc3RyICJVbmfDvGx0aWdlciBPYmpla3QtVHlwICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo3MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcG9pbnRzIHRvIHNvbWV0aGluZyBzdHJhbmdlICglcykiCittc2dzdHIgIiVzIHplaWd0IGF1ZiBldHdhcyBzZWx0c2FtZXMgKCVzKSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZXRhY2hlZCBIRUFEIHBvaW50cyBhdCBub3RoaW5nIgorbXNnc3RyICIlczogbG9zZ2Vsw7ZzdGVyIEhFQUQgemVpZ3QgYXVmIG5pY2h0cyIKKworIzogYnVpbHRpbi9mc2NrLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGljZTogJXMgcG9pbnRzIHRvIGFuIHVuYm9ybiBicmFuY2ggKCVzKSIKK21zZ3N0ciAiTm90aXo6ICVzIHplaWd0IGF1ZiBlaW5lbiB1bmdlYm9yZW5lbiBCcmFuY2ggKCVzKSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzI0Cittc2dpZCAiQ2hlY2tpbmcgY2FjaGUgdHJlZSIKK21zZ3N0ciAiUHLDvGZlIENhY2hlLVZlcnplaWNobmlzIgorCisjOiBidWlsdGluL2ZzY2suYzo3MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyIGluIGNhY2hlLXRyZWUiCittc2dzdHIgIiVzOiBVbmfDvGx0aWdlciBTSEExLVplaWdlciBpbiBDYWNoZS1WZXJ6ZWljaG5pcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NzM4Cittc2dpZCAibm9uLXRyZWUgaW4gY2FjaGUtdHJlZSIKK21zZ3N0ciAibm9uLXRyZWUgaW4gQ2FjaGUtVmVyemVpY2huaXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc2OQogbXNnaWQgImdpdCBmc2NrIFs8b3B0aW9ucz5dIFs8b2JqZWN0Pi4uLl0iCiBtc2dzdHIgImdpdCBmc2NrIFs8T3B0aW9uZW4+XSBbPE9iamVrdD4uLi5dIgogCi0jOiBidWlsdGluL2ZzY2suYzo2OTkKKyM6IGJ1aWx0aW4vZnNjay5jOjc3NQogbXNnaWQgInNob3cgdW5yZWFjaGFibGUgb2JqZWN0cyIKIG1zZ3N0ciAidW5lcnJlaWNoYmFyZSBPYmpla3RlIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDAKKyM6IGJ1aWx0aW4vZnNjay5jOjc3NgogbXNnaWQgInNob3cgZGFuZ2xpbmcgb2JqZWN0cyIKIG1zZ3N0ciAidW5yZWZlcmVuemllcnRlIE9iamVrdGUgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMQorIzogYnVpbHRpbi9mc2NrLmM6Nzc3CiBtc2dpZCAicmVwb3J0IHRhZ3MiCiBtc2dzdHIgIlRhZ3MgbWVsZGVuIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDIKKyM6IGJ1aWx0aW4vZnNjay5jOjc3OAogbXNnaWQgInJlcG9ydCByb290IG5vZGVzIgogbXNnc3RyICJIYXVwdHd1cnplbG4gbWVsZGVuIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDMKKyM6IGJ1aWx0aW4vZnNjay5jOjc3OQogbXNnaWQgIm1ha2UgaW5kZXggb2JqZWN0cyBoZWFkIG5vZGVzIgogbXNnc3RyICJJbmRleC1PYmpla3RlIGluIEVycmVpY2hiYXJrZWl0c3Byw7xmdW5nIGVpbmJlemllaGVuIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDQKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MAogbXNnaWQgIm1ha2UgcmVmbG9ncyBoZWFkIG5vZGVzIChkZWZhdWx0KSIKIG1zZ3N0ciAiUmVmbG9ncyBpbiBFcnJlaWNoYmFya2VpdHNwcsO8ZnVuZyBlaW5iZXppZWhlbiAoU3RhbmRhcmQpIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDUKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MQogbXNnaWQgImFsc28gY29uc2lkZXIgcGFja3MgYW5kIGFsdGVybmF0ZSBvYmplY3RzIgogbXNnc3RyICJlYmVuc28gUGFrZXRlIHVuZCBhbHRlcm5hdGl2ZSBPYmpla3RlIGJldHJhY2h0ZW4iCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwNgorIzogYnVpbHRpbi9mc2NrLmM6NzgyCiBtc2dpZCAiY2hlY2sgb25seSBjb25uZWN0aXZpdHkiCiBtc2dzdHIgIm51ciBLb25uZWt0aXZpdMOkdCBwcsO8ZmVuIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDcKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MwogbXNnaWQgImVuYWJsZSBtb3JlIHN0cmljdCBjaGVja2luZyIKIG1zZ3N0ciAiZ2VuYXVlcmUgUHLDvGZ1bmcgYWt0aXZpZXJlbiIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzA5CisjOiBidWlsdGluL2ZzY2suYzo3ODUKIG1zZ2lkICJ3cml0ZSBkYW5nbGluZyBvYmplY3RzIGluIC5naXQvbG9zdC1mb3VuZCIKIG1zZ3N0ciAidW5yZWZlcmVuemllcnRlIE9iamVrdGUgbmFjaCAuZ2l0L2xvc3QtZm91bmQgc2NocmVpYmVuIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MTAgYnVpbHRpbi9wcnVuZS5jOjExMAorIzogYnVpbHRpbi9mc2NrLmM6Nzg2IGJ1aWx0aW4vcHJ1bmUuYzoxMzIKIG1zZ2lkICJzaG93IHByb2dyZXNzIgogbXNnc3RyICJGb3J0c2Nocml0dHNhbnplaWdlIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MTEKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NwogbXNnaWQgInNob3cgdmVyYm9zZSBuYW1lcyBmb3IgcmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgImF1c2bDvGhybGljaGUgTmFtZW4gZsO8ciBlcnJlaWNoYmFyZSBPYmpla3RlIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2ZzY2suYzo3NzYKKyM6IGJ1aWx0aW4vZnNjay5jOjg0NiBidWlsdGluL2luZGV4LXBhY2suYzoyMjUKIG1zZ2lkICJDaGVja2luZyBvYmplY3RzIgogbXNnc3RyICJQcsO8ZmUgT2JqZWt0ZSIKIAotIzogYnVpbHRpbi9nYy5jOjM0CisjOiBidWlsdGluL2ZzY2suYzo4NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBtaXNzaW5nIgorbXNnc3RyICIlczogT2JqZWt0IG5pY2h0IHZvcmhhbmRlbiIKKworIzogYnVpbHRpbi9mc2NrLmM6ODg1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFyYW1ldGVyOiBleHBlY3RlZCBzaGExLCBnb3QgJyVzJyIKK21zZ3N0ciAiVW5nw7xsdGlnZXIgUGFyYW1ldGVyOiBTSEEtMSBlcndhcnRldCwgJyVzJyBiZWtvbW1lbiIKKworIzogYnVpbHRpbi9nYy5jOjM1CiBtc2dpZCAiZ2l0IGdjIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgZ2MgWzxPcHRpb25lbj5dIgogCkBAIC0xMTQ3NCwxNyArMTQ2NjksMjIgQEAKIG1zZ2lkICJGYWlsZWQgdG8gZnN0YXQgJXM6ICVzIgogbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBsZXNlbjogJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo0NjEgYnVpbHRpbi9pbml0LWRiLmM6NTUKKyM6IGJ1aWx0aW4vZ2MuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlICclcycgdmFsdWUgJyVzJyIKK21zZ3N0ciAiRmVobGVyIGJlaW0gUGFyc2VuIHZvbiAnJXMnIG1pdCBkZW0gV2VydCAnJXMnIgorCisjOiBidWlsdGluL2djLmM6NDc1IGJ1aWx0aW4vaW5pdC1kYi5jOjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGF0ICclcyciCiBtc2dzdHIgIkthbm4gJyVzJyBuaWNodCBsZXNlbiIKIAotIzogYnVpbHRpbi9nYy5jOjQ3MCBidWlsdGluL25vdGVzLmM6MjQwIGJ1aWx0aW4vdGFnLmM6NTEwCisjOiBidWlsdGluL2djLmM6NDg0IGJ1aWx0aW4vbm90ZXMuYzoyNDAgYnVpbHRpbi90YWcuYzo1MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJyVzJyIKIG1zZ3N0ciAia2FubiAnJXMnIG5pY2h0IGxlc2VuIgogCi0jOiBidWlsdGluL2djLmM6NDc3CisjOiBidWlsdGluL2djLmM6NDkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgbGFzdCBnYyBydW4gcmVwb3J0ZWQgdGhlIGZvbGxvd2luZy4gUGxlYXNlIGNvcnJlY3QgdGhlIHJvb3QgY2F1c2VcbiIKQEAgLTExNTAwLDU4ICsxNDcwMCw1OCBAQAogIlxuIgogIiVzIgogCi0jOiBidWlsdGluL2djLmM6NTE5CisjOiBidWlsdGluL2djLmM6NTM5CiBtc2dpZCAicHJ1bmUgdW5yZWZlcmVuY2VkIG9iamVjdHMiCiBtc2dzdHIgInVucmVmZXJlbnppZXJ0ZSBPYmpla3RlIGVudGZlcm5lbiIKIAotIzogYnVpbHRpbi9nYy5jOjUyMQorIzogYnVpbHRpbi9nYy5jOjU0MQogbXNnaWQgImJlIG1vcmUgdGhvcm91Z2ggKGluY3JlYXNlZCBydW50aW1lKSIKIG1zZ3N0ciAibWVociBHcsO8bmRsaWNoa2VpdCAoZXJow7ZodCBMYXVmemVpdCkiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1MjIKKyM6IGJ1aWx0aW4vZ2MuYzo1NDIKIG1zZ2lkICJlbmFibGUgYXV0by1nYyBtb2RlIgogbXNnc3RyICJcImF1dG8tZ2NcIiBNb2R1cyBha3RpdmllcmVuIgogCi0jOiBidWlsdGluL2djLmM6NTI1CisjOiBidWlsdGluL2djLmM6NTQ1CiBtc2dpZCAiZm9yY2UgcnVubmluZyBnYyBldmVuIGlmIHRoZXJlIG1heSBiZSBhbm90aGVyIGdjIHJ1bm5pbmciCiBtc2dzdHIgIiIKICJBdXNmw7xocnVuZyB2b24gXCJnaXQgZ2NcIiBlcnp3aW5nZW4sIHNlbGJzdCB3ZW5uIGVpbiBhbmRlcmVzXG4iCiAiXCJnaXQgZ2NcIiBiZXJlaXRzIGF1c2dlZsO8aHJ0IHdpcmQiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1MjgKKyM6IGJ1aWx0aW4vZ2MuYzo1NDgKIG1zZ2lkICJyZXBhY2sgYWxsIG90aGVyIHBhY2tzIGV4Y2VwdCB0aGUgbGFyZ2VzdCBwYWNrIgogbXNnc3RyICJhbGxlIGFuZGVyZW4gUGFrZXRlLCBhdcOfZXIgZGFzIGdyw7bDn3RlIFBha2V0LCBuZXUgcGFja2VuIgogCi0jOiBidWlsdGluL2djLmM6NTQ1CisjOiBidWlsdGluL2djLmM6NTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwYXJzZSBnYy5sb2dleHBpcnkgdmFsdWUgJXMiCiBtc2dzdHIgIkZlaGxlciBiZWltIFBhcnNlbiBkZXMgV2VydGVzICclcycgdm9uIGdjLmxvZ2V4cGlyeS4iCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NTYKKyM6IGJ1aWx0aW4vZ2MuYzo1NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHBhcnNlIHBydW5lIGV4cGlyeSB2YWx1ZSAlcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gUGFyc2VuIGRlcyBcInBydW5lIGV4cGlyeVwiIFdlcnRlcyAlcyIKIAotIzogYnVpbHRpbi9nYy5jOjU3NgorIzogYnVpbHRpbi9nYy5jOjU5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvIHBhY2tpbmcgdGhlIHJlcG9zaXRvcnkgaW4gYmFja2dyb3VuZCBmb3Igb3B0aW11bSBwZXJmb3JtYW5jZS5cbiIKIG1zZ3N0ciAiIgogIkRpZSBEYXRlbmJhbmsgZGVzIFJlcG9zaXRvcmllcyB3aXJkIGbDvHIgZWluZSBvcHRpbWFsZSBQZXJmb3JtYW5jZSBpbVxuIgogIkhpbnRlcmdydW5kIGtvbXByaW1pZXJ0LlxuIgogCi0jOiBidWlsdGluL2djLmM6NTc4CisjOiBidWlsdGluL2djLmM6NTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG8gcGFja2luZyB0aGUgcmVwb3NpdG9yeSBmb3Igb3B0aW11bSBwZXJmb3JtYW5jZS5cbiIKIG1zZ3N0ciAiIgogIkRpZSBEYXRlbmJhbmsgZGVzIFByb2pla3RhcmNoaXZzIHdpcmQgZsO8ciBlaW5lIG9wdGltYWxlIFBlcmZvcm1hbmNlICIKICJrb21wcmltaWVydC5cbiIKIAotIzogYnVpbHRpbi9nYy5jOjU3OQorIzogYnVpbHRpbi9nYy5jOjU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZWUgXCJnaXQgaGVscCBnY1wiIGZvciBtYW51YWwgaG91c2VrZWVwaW5nLlxuIgogbXNnc3RyICJTaWVoZSBcImdpdCBoZWxwIGdjXCIgZsO8ciBtYW51ZWxsZXMgQXVmcsOkdW1lbi5cbiIKIAotIzogYnVpbHRpbi9nYy5jOjYxOQorIzogYnVpbHRpbi9nYy5jOjYzOQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZ2MgaXMgYWxyZWFkeSBydW5uaW5nIG9uIG1hY2hpbmUgJyVzJyBwaWQgJTxQUkl1TUFYPiAodXNlIC0tZm9yY2UgaWYgbm90KSIKQEAgLTExNTU5LDIzICsxNDc1OSwyMyBAQAogIlwiZ2l0IGdjXCIgd2lyZCBiZXJlaXRzIGF1ZiBNYXNjaGluZSAnJXMnIHBpZCAlPFBSSXVNQVg+IGF1c2dlZsO8aHJ0XG4iCiAiKGJlbnV0emVuIFNpZSAtLWZvcmNlIGZhbGxzIG5pY2h0KSIKIAotIzogYnVpbHRpbi9nYy5jOjY3MAorIzogYnVpbHRpbi9nYy5jOjY5NAogbXNnaWQgIiIKICJUaGVyZSBhcmUgdG9vIG1hbnkgdW5yZWFjaGFibGUgbG9vc2Ugb2JqZWN0czsgcnVuICdnaXQgcHJ1bmUnIHRvIHJlbW92ZSB0aGVtLiIKIG1zZ3N0ciAiIgogIkVzIGdpYnQgenUgdmllbGUgdW5lcnJlaWNoYmFyZSBsb3NlIE9iamVrdGU7IGbDvGhyZW4gU2llICdnaXQgcHJ1bmUnIGF1cywgdW0gIgogImRpZXNlIHp1IGzDtnNjaGVuLiIKIAotIzogYnVpbHRpbi9ncmVwLmM6MjgKKyM6IGJ1aWx0aW4vZ3JlcC5jOjMwCiBtc2dpZCAiZ2l0IGdyZXAgWzxvcHRpb25zPl0gWy1lXSA8cGF0dGVybj4gWzxyZXY+Li4uXSBbWy0tXSA8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgZ3JlcCBbPE9wdGlvbmVuPl0gWy1lXSA8TXVzdGVyPiBbPENvbW1pdD4uLi5dIFtbLS1dIDxQZmFkPi4uLl0iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjIyNAorIzogYnVpbHRpbi9ncmVwLmM6MjI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdyZXA6IGZhaWxlZCB0byBjcmVhdGUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiZ3JlcDogRmVobGVyIGJlaW0gRXJ6ZXVnZW4gZWluZXMgVGhyZWFkOiAlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6Mjc4CisjOiBidWlsdGluL2dyZXAuYzoyNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBudW1iZXIgb2YgdGhyZWFkcyBzcGVjaWZpZWQgKCVkKSBmb3IgJXMiCiBtc2dzdHIgInVuZ8O8bHRpZ2UgQW56YWhsIHZvbiBUaHJlYWRzICglZCkgZsO8ciAlcyBhbmdlZ2ViZW4iCkBAIC0xMTU4NCwyNzAgKzE0Nzg0LDI3MCBAQAogIy4gdmFyaWFibGUgZm9yIHR3ZWFraW5nIHRocmVhZHMsIGN1cnJlbnRseQogIy4gZ3JlcC50aHJlYWRzCiAjLgotIzogYnVpbHRpbi9ncmVwLmM6Mjg2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MDYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY5NwotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzE5CisjOiBidWlsdGluL2dyZXAuYzoyODcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzOCBidWlsdGluL2luZGV4LXBhY2suYzoxNzMxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gdGhyZWFkcyBzdXBwb3J0LCBpZ25vcmluZyAlcyIKIG1zZ3N0ciAia2VpbmUgVW50ZXJzdMO8dHp1bmcgdm9uIFRocmVhZHMsICclcycgd2lyZCBpZ25vcmllcnQiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjQ1OCBidWlsdGluL2dyZXAuYzo1NzkgYnVpbHRpbi9ncmVwLmM6NjIwCisjOiBidWlsdGluL2dyZXAuYzo0NTMgYnVpbHRpbi9ncmVwLmM6NTc4IGJ1aWx0aW4vZ3JlcC5jOjYxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCB0cmVlICglcykiCiBtc2dzdHIgImtvbm50ZSBcIlRyZWVcIi1PYmpla3QgKCVzKSBuaWNodCBsZXNlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6NjM1CisjOiBidWlsdGluL2dyZXAuYzo2MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdyZXAgZnJvbSBvYmplY3Qgb2YgdHlwZSAlcyIKIG1zZ3N0ciAia2FubiBcImdyZXBcIiBuaWNodCBtaXQgT2JqZWt0ZW4gZGVzIFR5cHMgJXMgZHVyY2hmw7xocmVuIgogCi0jOiBidWlsdGluL2dyZXAuYzo3MDEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjcwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJzd2l0Y2ggYCVjJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgogbXNnc3RyICJTY2hhbHRlciAnJWMnIGVyd2FydGV0IGVpbmVuIG51bWVyaXNjaGVuIFdlcnQiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwMAorIzogYnVpbHRpbi9ncmVwLmM6ODAzCiBtc2dpZCAic2VhcmNoIGluIGluZGV4IGluc3RlYWQgb2YgaW4gdGhlIHdvcmsgdHJlZSIKIG1zZ3N0ciAiaW0gSW5kZXggYW5zdGF0dCBpbSBBcmJlaXRzdmVyemVpY2huaXMgc3VjaGVuIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwNQogbXNnaWQgImZpbmQgaW4gY29udGVudHMgbm90IG1hbmFnZWQgYnkgZ2l0IgogbXNnc3RyICJhdWNoIGluIEluaGFsdGVuIGZpbmRlbiwgZGllIG5pY2h0IHZvbiBHaXQgdmVyd2FsdGV0IHdlcmRlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODA0CisjOiBidWlsdGluL2dyZXAuYzo4MDcKIG1zZ2lkICJzZWFyY2ggaW4gYm90aCB0cmFja2VkIGFuZCB1bnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgImluIHZlcnNpb25pZXJ0ZW4gdW5kIHVudmVyc2lvbmllcnRlbiBEYXRlaWVuIHN1Y2hlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODA2CisjOiBidWlsdGluL2dyZXAuYzo4MDkKIG1zZ2lkICJpZ25vcmUgZmlsZXMgc3BlY2lmaWVkIHZpYSAnLmdpdGlnbm9yZSciCiBtc2dzdHIgIkRhdGVpZW4sIGRpZSDDvGJlciAnLmdpdGlnbm9yZScgYW5nZWdlYmVuIHNpbmQsIGlnbm9yaWVyZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwOAorIzogYnVpbHRpbi9ncmVwLmM6ODExCiBtc2dpZCAicmVjdXJzaXZlbHkgc2VhcmNoIGluIGVhY2ggc3VibW9kdWxlIgogbXNnc3RyICJyZWt1cnNpdmUgU3VjaGUgaW4gamVkZW0gU3VibW9kdWwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxMQorIzogYnVpbHRpbi9ncmVwLmM6ODE0CiBtc2dpZCAic2hvdyBub24tbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgIlplaWxlbiBvaG5lIMOcYmVyZWluc3RpbW11bmdlbiBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODEzCisjOiBidWlsdGluL2dyZXAuYzo4MTYKIG1zZ2lkICJjYXNlIGluc2Vuc2l0aXZlIG1hdGNoaW5nIgogbXNnc3RyICLDnGJlcmVpbnN0aW1tdW5nZW4gdW5hYmjDpG5naWcgdm9uIEdyb8OfLSB1bmQgS2xlaW5zY2hyZWlidW5nIGZpbmRlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODE1CisjOiBidWlsdGluL2dyZXAuYzo4MTgKIG1zZ2lkICJtYXRjaCBwYXR0ZXJucyBvbmx5IGF0IHdvcmQgYm91bmRhcmllcyIKIG1zZ3N0ciAibnVyIGdhbnplIFfDtnJ0ZXIgc3VjaGVuIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyMAogbXNnaWQgInByb2Nlc3MgYmluYXJ5IGZpbGVzIGFzIHRleHQiCiBtc2dzdHIgImJpbsOkcmUgRGF0ZWllbiBhbHMgVGV4dCB2ZXJhcmJlaXRlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODE5CisjOiBidWlsdGluL2dyZXAuYzo4MjIKIG1zZ2lkICJkb24ndCBtYXRjaCBwYXR0ZXJucyBpbiBiaW5hcnkgZmlsZXMiCiBtc2dzdHIgImtlaW5lIE11c3RlciBpbiBCaW7DpHJkYXRlaWVuIGZpbmRlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODIyCisjOiBidWlsdGluL2dyZXAuYzo4MjUKIG1zZ2lkICJwcm9jZXNzIGJpbmFyeSBmaWxlcyB3aXRoIHRleHRjb252IGZpbHRlcnMiCiBtc2dzdHIgImJpbsOkcmUgRGF0ZWllbiBtaXQgXCJ0ZXh0Y29udlwiLUZpbHRlcm4gdmVyYXJiZWl0ZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgyNAorIzogYnVpbHRpbi9ncmVwLmM6ODI3CiBtc2dpZCAic2VhcmNoIGluIHN1YmRpcmVjdG9yaWVzIChkZWZhdWx0KSIKIG1zZ3N0ciAiaW4gVW50ZXJ2ZXJ6ZWljaG5pc3NlbiBzdWNoZW4gKFN0YW5kYXJkKSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODI2CisjOiBidWlsdGluL2dyZXAuYzo4MjkKIG1zZ2lkICJkZXNjZW5kIGF0IG1vc3QgPGRlcHRoPiBsZXZlbHMiCiBtc2dzdHIgImjDtmNoc3RlbnMgPFRpZWZlPiBFYmVuZW4gZHVyY2hsYXVmZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzMAorIzogYnVpbHRpbi9ncmVwLmM6ODMzCiBtc2dpZCAidXNlIGV4dGVuZGVkIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCiBtc2dzdHIgImVyd2VpdGVydGUgcmVndWzDpHJlIEF1c2Ryw7xja2UgYXVzIFBPU0lYIHZlcndlbmRlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODMzCisjOiBidWlsdGluL2dyZXAuYzo4MzYKIG1zZ2lkICJ1c2UgYmFzaWMgUE9TSVggcmVndWxhciBleHByZXNzaW9ucyAoZGVmYXVsdCkiCiBtc2dzdHIgImdydW5kbGVnZW5kZSByZWd1bMOkcmUgQXVzZHLDvGNrZSBhdXMgUE9TSVggdmVyd2VuZGVuIChTdGFuZGFyZCkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzNgorIzogYnVpbHRpbi9ncmVwLmM6ODM5CiBtc2dpZCAiaW50ZXJwcmV0IHBhdHRlcm5zIGFzIGZpeGVkIHN0cmluZ3MiCiBtc2dzdHIgIk11c3RlciBhbHMgZmVzdGUgWmVpY2hlbmtldHRlbiBpbnRlcnByZXRpZXJlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODM5CisjOiBidWlsdGluL2dyZXAuYzo4NDIKIG1zZ2lkICJ1c2UgUGVybC1jb21wYXRpYmxlIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCiBtc2dzdHIgIlBlcmwta29tcGF0aWJsZSByZWd1bMOkcmUgQXVzZHLDvGNrZSB2ZXJ3ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0MgorIzogYnVpbHRpbi9ncmVwLmM6ODQ1CiBtc2dpZCAic2hvdyBsaW5lIG51bWJlcnMiCiBtc2dzdHIgIlplaWxlbm51bW1lcm4gYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0MworIzogYnVpbHRpbi9ncmVwLmM6ODQ2CiBtc2dpZCAic2hvdyBjb2x1bW4gbnVtYmVyIG9mIGZpcnN0IG1hdGNoIgogbXNnc3RyICJOdW1tZXIgZGVyIFNwYWx0ZSBkZXMgZXJzdGVuIFRyZWZmZXJzIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NwogbXNnaWQgImRvbid0IHNob3cgZmlsZW5hbWVzIgogbXNnc3RyICJrZWluZSBEYXRlaW5hbWVuIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0OAogbXNnaWQgInNob3cgZmlsZW5hbWVzIgogbXNnc3RyICJEYXRlaW5hbWVuIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1MAogbXNnaWQgInNob3cgZmlsZW5hbWVzIHJlbGF0aXZlIHRvIHRvcCBkaXJlY3RvcnkiCiBtc2dzdHIgIkRhdGVpbmFtZW4gcmVsYXRpdiB6dW0gUHJvamVrdHZlcnplaWNobmlzIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1MgogbXNnaWQgInNob3cgb25seSBmaWxlbmFtZXMgaW5zdGVhZCBvZiBtYXRjaGluZyBsaW5lcyIKIG1zZ3N0ciAibnVyIERhdGVpbmFtZW4gYW56ZWlnZW4gYW5zdGF0dCDDvGJlcmVpbnN0aW1tZW5kZSBaZWlsZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1MQorIzogYnVpbHRpbi9ncmVwLmM6ODU0CiBtc2dpZCAic3lub255bSBmb3IgLS1maWxlcy13aXRoLW1hdGNoZXMiCiBtc2dzdHIgIlN5bm9ueW0gZsO8ciAtLWZpbGVzLXdpdGgtbWF0Y2hlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODU0CisjOiBidWlsdGluL2dyZXAuYzo4NTcKIG1zZ2lkICJzaG93IG9ubHkgdGhlIG5hbWVzIG9mIGZpbGVzIHdpdGhvdXQgbWF0Y2giCiBtc2dzdHIgIm51ciBkaWUgRGF0ZWluYW1lbiBvaG5lIMOcYmVyZWluc3RpbW11bmdlbiBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODU2CisjOiBidWlsdGluL2dyZXAuYzo4NTkKIG1zZ2lkICJwcmludCBOVUwgYWZ0ZXIgZmlsZW5hbWVzIgogbXNnc3RyICJOVUwtWmVpY2hlbiBuYWNoIERhdGVpbmFtZW4gYXVzZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1OQorIzogYnVpbHRpbi9ncmVwLmM6ODYyCiBtc2dpZCAic2hvdyBvbmx5IG1hdGNoaW5nIHBhcnRzIG9mIGEgbGluZSIKIG1zZ3N0ciAibnVyIMO8YmVyZWluc3RpbW1lbmRlIFRlaWxlIGRlciBaZWlsZSBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODYxCisjOiBidWlsdGluL2dyZXAuYzo4NjQKIG1zZ2lkICJzaG93IHRoZSBudW1iZXIgb2YgbWF0Y2hlcyBpbnN0ZWFkIG9mIG1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICJhbnN0YXR0IGRlciBaZWlsZW4sIGRpZSBBbnphaGwgZGVyIMO8YmVyZWluc3RpbW1lbmRlbiBaZWlsZW4gYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2MgorIzogYnVpbHRpbi9ncmVwLmM6ODY1CiBtc2dpZCAiaGlnaGxpZ2h0IG1hdGNoZXMiCiBtc2dzdHIgIsOcYmVyZWluc3RpbW11bmdlbiBoZXJ2b3JoZWJlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODY0CisjOiBidWlsdGluL2dyZXAuYzo4NjcKIG1zZ2lkICJwcmludCBlbXB0eSBsaW5lIGJldHdlZW4gbWF0Y2hlcyBmcm9tIGRpZmZlcmVudCBmaWxlcyIKIG1zZ3N0ciAiIgogImVpbmUgTGVlcnplaWxlIHp3aXNjaGVuIMOcYmVyZWluc3RpbW11bmdlbiBpbiB2ZXJzY2hpZWRlbmVuIERhdGVpZW4gYXVzZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2NgorIzogYnVpbHRpbi9ncmVwLmM6ODY5CiBtc2dpZCAic2hvdyBmaWxlbmFtZSBvbmx5IG9uY2UgYWJvdmUgbWF0Y2hlcyBmcm9tIHNhbWUgZmlsZSIKIG1zZ3N0ciAiIgogImRlbiBEYXRlaW5hbWVuIG51ciBlaW5tYWwgb2JlcmhhbGIgZGVyIMOcYmVyZWluc3RpbW11bmdlbiBhdXMgZGllc2VyIERhdGVpICIKICJhbnplaWdlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODY5CisjOiBidWlsdGluL2dyZXAuYzo4NzIKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGJlZm9yZSBhbmQgYWZ0ZXIgbWF0Y2hlcyIKIG1zZ3N0ciAiPG4+IFplaWxlbiB2b3IgdW5kIG5hY2ggZGVuIMOcYmVyZWluc3RpbW11bmdlbiBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODcyCisjOiBidWlsdGluL2dyZXAuYzo4NzUKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGJlZm9yZSBtYXRjaGVzIgogbXNnc3RyICI8bj4gWmVpbGVuIHZvciBkZW4gw5xiZXJlaW5zdGltbXVuZ2VuIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3NwogbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYWZ0ZXIgbWF0Y2hlcyIKIG1zZ3N0ciAiPG4+IFplaWxlbiBuYWNoIGRlbiDDnGJlcmVpbnN0aW1tdW5nZW4gYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NgorIzogYnVpbHRpbi9ncmVwLmM6ODc5CiBtc2dpZCAidXNlIDxuPiB3b3JrZXIgdGhyZWFkcyIKIG1zZ3N0ciAiPG4+IFRocmVhZHMgYmVudXR6ZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NworIzogYnVpbHRpbi9ncmVwLmM6ODgwCiBtc2dpZCAic2hvcnRjdXQgZm9yIC1DIE5VTSIKIG1zZ3N0ciAiS3VyemZvcm0gZsO8ciAtQyBOVU0iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4MAorIzogYnVpbHRpbi9ncmVwLmM6ODgzCiBtc2dpZCAic2hvdyBhIGxpbmUgd2l0aCB0aGUgZnVuY3Rpb24gbmFtZSBiZWZvcmUgbWF0Y2hlcyIKIG1zZ3N0ciAiZWluZSBaZWlsZSBtaXQgZGVtIEZ1bmt0aW9uc25hbWVuIHZvciDDnGJlcmVpbnN0aW1tdW5nZW4gYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4MgorIzogYnVpbHRpbi9ncmVwLmM6ODg1CiBtc2dpZCAic2hvdyB0aGUgc3Vycm91bmRpbmcgZnVuY3Rpb24iCiBtc2dzdHIgImRpZSB1bWdlYmVuZGUgRnVua3Rpb24gYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4NQorIzogYnVpbHRpbi9ncmVwLmM6ODg4CiBtc2dpZCAicmVhZCBwYXR0ZXJucyBmcm9tIGZpbGUiCiBtc2dzdHIgIk11c3RlciB2b24gZWluZXIgRGF0ZWkgbGVzZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4NworIzogYnVpbHRpbi9ncmVwLmM6ODkwCiBtc2dpZCAibWF0Y2ggPHBhdHRlcm4+IgogbXNnc3RyICI8TXVzdGVyPiBmaW5kZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4OQorIzogYnVpbHRpbi9ncmVwLmM6ODkyCiBtc2dpZCAiY29tYmluZSBwYXR0ZXJucyBzcGVjaWZpZWQgd2l0aCAtZSIKIG1zZ3N0ciAiTXVzdGVyIGtvbWJpbmllcmVuLCBkaWUgbWl0IC1lIGFuZ2VnZWJlbiB3dXJkZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwMQorIzogYnVpbHRpbi9ncmVwLmM6OTA0CiBtc2dpZCAiaW5kaWNhdGUgaGl0IHdpdGggZXhpdCBzdGF0dXMgd2l0aG91dCBvdXRwdXQiCiBtc2dzdHIgIsOcYmVyZWluc3RpbW11bmdlbiBudXIgZHVyY2ggQmVlbmRpZ3VuZ3NzdGF0dXMgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwMworIzogYnVpbHRpbi9ncmVwLmM6OTA2CiBtc2dpZCAic2hvdyBvbmx5IG1hdGNoZXMgZnJvbSBmaWxlcyB0aGF0IG1hdGNoIGFsbCBwYXR0ZXJucyIKIG1zZ3N0ciAiIgogIm51ciDDnGJlcmVpbnN0aW1tdW5nZW4gdm9uIERhdGVpZW4gYW56ZWlnZW4sIGRpZSBhbGxlbiBNdXN0ZXJuIGVudHNwcmVjaGVuIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwOAogbXNnaWQgInNob3cgcGFyc2UgdHJlZSBmb3IgZ3JlcCBleHByZXNzaW9uIgogbXNnc3RyICJnZXBhcnN0ZXMgVmVyemVpY2huaXMgZsO8ciBcImdyZXBcIi1BdXNkcnVjayBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTA5CisjOiBidWlsdGluL2dyZXAuYzo5MTIKIG1zZ2lkICJwYWdlciIKIG1zZ3N0ciAiQW56ZWlnZXByb2dyYW1tIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxMgogbXNnaWQgInNob3cgbWF0Y2hpbmcgZmlsZXMgaW4gdGhlIHBhZ2VyIgogbXNnc3RyICJEYXRlaWVuIG1pdCDDnGJlcmVpbnN0aW1tdW5nZW4gaW0gQW56ZWlnZXByb2dyYW1tIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MTMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxNgogbXNnaWQgImFsbG93IGNhbGxpbmcgb2YgZ3JlcCgxKSAoaWdub3JlZCBieSB0aGlzIGJ1aWxkKSIKIG1zZ3N0ciAiZGVuIEF1ZnJ1ZiB2b24gZ3JlcCgxKSBlcmxhdWJlbiAodm9uIGRpZXNlciBQcm9ncmFtbXZlcnNpb24gaWdub3JpZXJ0KSIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTc3CisjOiBidWlsdGluL2dyZXAuYzo5ODMKIG1zZ2lkICJubyBwYXR0ZXJuIGdpdmVuIgogbXNnc3RyICJLZWluIE11c3RlciBhbmdlZ2ViZW4uIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDEzCisjOiBidWlsdGluL2dyZXAuYzoxMDE5CiBtc2dpZCAiLS1uby1pbmRleCBvciAtLXVudHJhY2tlZCBjYW5ub3QgYmUgdXNlZCB3aXRoIHJldnMiCiBtc2dzdHIgIi0tbm8taW5kZXggb2RlciAtLXVudHJhY2tlZCBrw7ZubmVuIG5pY2h0IG1pdCBDb21taXRzIHZlcndlbmRldCB3ZXJkZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwMjAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgcmV2aXNpb246ICVzIgogbXNnc3RyICJLb25udGUgQ29tbWl0IG5pY2h0IGF1ZmzDtnNlbjogJXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTcKK21zZ2lkICItLXVudHJhY2tlZCBub3Qgc3VwcG9ydGVkIHdpdGggLS1yZWN1cnNlLXN1Ym1vZHVsZXMiCittc2dzdHIgIi0tdW50cmFja2VkIHp1c2FtbWVuIG1pdCAtLXJlY3Vyc2Utc3VibW9kdWxlcyB3aXJkIG5pY2h0IHVudGVyc3TDvHR6dCIKKworIzogYnVpbHRpbi9ncmVwLmM6MTA2MQogbXNnaWQgImludmFsaWQgb3B0aW9uIGNvbWJpbmF0aW9uLCBpZ25vcmluZyAtLXRocmVhZHMiCiBtc2dzdHIgIlVuZ8O8bHRpZ2UgS29tYmluYXRpb24gdm9uIE9wdGlvbmVuLCAtLXRocmVhZHMgd2lyZCBpZ25vcmllcnQuIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDU0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NworIzogYnVpbHRpbi9ncmVwLmM6MTA2NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NDcKIG1zZ2lkICJubyB0aHJlYWRzIHN1cHBvcnQsIGlnbm9yaW5nIC0tdGhyZWFkcyIKIG1zZ3N0ciAiS2VpbmUgVW50ZXJzdMO8dHp1bmcgZsO8ciBUaHJlYWRzLCAtLXRocmVhZHMgd2lyZCBpZ25vcmllcnQuIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDU3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MDMgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzE2CisjOiBidWlsdGluL2dyZXAuYzoxMDY3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MzUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbnVtYmVyIG9mIHRocmVhZHMgc3BlY2lmaWVkICglZCkiCiBtc2dzdHIgInVuZ8O8bHRpZ2UgQW56YWhsIHZvbiBUaHJlYWRzIGFuZ2VnZWJlbiAoJWQpIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDgwCisjOiBidWlsdGluL2dyZXAuYzoxMTAxCiBtc2dpZCAiLS1vcGVuLWZpbGVzLWluLXBhZ2VyIG9ubHkgd29ya3Mgb24gdGhlIHdvcmt0cmVlIgogbXNnc3RyICIiCiAiRGllIE9wdGlvbiAtLW9wZW4tZmlsZXMtaW4tcGFnZXIga2FubiBudXIgaW5uZXJoYWxiIGRlcyAiCiAiQXJiZWl0c3ZlcnplaWNobmlzc2VzIHZlcndlbmRldCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMTAzCi1tc2dpZCAib3B0aW9uIG5vdCBzdXBwb3J0ZWQgd2l0aCAtLXJlY3Vyc2Utc3VibW9kdWxlcyIKLW1zZ3N0ciAiRGllIE9wdGlvbiB3aXJkIG1pdCAtLXJlY3Vyc2Utc3VibW9kdWxlcyBuaWNodCB1bnRlcnN0w7x0enQuIgotCi0jOiBidWlsdGluL2dyZXAuYzoxMTA5CisjOiBidWlsdGluL2dyZXAuYzoxMTI3CiBtc2dpZCAiLS1jYWNoZWQgb3IgLS11bnRyYWNrZWQgY2Fubm90IGJlIHVzZWQgd2l0aCAtLW5vLWluZGV4IgogbXNnc3RyICItLWNhY2hlZCB1bmQgLS11bnRyYWNrZWQga8O2bm5lbiBuaWNodCBtaXQgLS1uby1pbmRleCB2ZXJ3ZW5kZXQgd2VyZGVuLiIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTExNQorIzogYnVpbHRpbi9ncmVwLmM6MTEzMwogbXNnaWQgIi0tW25vLV1leGNsdWRlLXN0YW5kYXJkIGNhbm5vdCBiZSB1c2VkIGZvciB0cmFja2VkIGNvbnRlbnRzIgogbXNnc3RyICIiCiAiLS1bbm8tXWV4Y2x1ZGUtc3RhbmRhcmQga2FubiBuaWNodCBtaXQgdmVyc2lvbmllcnRlbiBJbmhhbHRlbiB2ZXJ3ZW5kZXQgIgogIndlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMjMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExNDEKIG1zZ2lkICJib3RoIC0tY2FjaGVkIGFuZCB0cmVlcyBhcmUgZ2l2ZW4iCiBtc2dzdHIgIi0tY2FjaGVkIHVuZCBcIlRyZWVcIi1PYmpla3RlIGFuZ2VnZWJlbiIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg0CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODUKIG1zZ2lkICIiCiAiZ2l0IGhhc2gtb2JqZWN0IFstdCA8dHlwZT5dIFstd10gWy0tcGF0aD08ZmlsZT4gfCAtLW5vLWZpbHRlcnNdIFstLXN0ZGluXSAiCiAiWy0tXSA8ZmlsZT4uLi4iCkBAIC0xMTg1NSwzOCArMTUwNTUsMzQgQEAKICJnaXQgaGFzaC1vYmplY3QgWy10IDxBcnQ+XSBbLXddIFstLXBhdGg9PERhdGVpPiB8IC0tbm8tZmlsdGVyc10gWy0tc3RkaW5dICIKICJbLS1dIDxEYXRlaT4uLi4iCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NQorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg2CiBtc2dpZCAiZ2l0IGhhc2gtb2JqZWN0ICAtLXN0ZGluLXBhdGhzIgogbXNnc3RyICJnaXQgaGFzaC1vYmplY3QgIC0tc3RkaW4tcGF0aHMiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5NwotbXNnaWQgInR5cGUiCi1tc2dzdHIgIkFydCIKLQotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk3CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKIG1zZ2lkICJvYmplY3QgdHlwZSIKIG1zZ3N0ciAiQXJ0IGRlcyBPYmpla3RlcyIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk4CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTkKIG1zZ2lkICJ3cml0ZSB0aGUgb2JqZWN0IGludG8gdGhlIG9iamVjdCBkYXRhYmFzZSIKIG1zZ3N0ciAiZGFzIE9iamVrdCBpbiBkaWUgT2JqZWt0ZGF0ZW5iYW5rIHNjaHJlaWJlbiIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMQogbXNnaWQgInJlYWQgdGhlIG9iamVjdCBmcm9tIHN0ZGluIgogbXNnc3RyICJkYXMgT2JqZWt0IHZvbiBkZXIgU3RhbmRhcmQtRWluZ2FiZSBsZXNlbiIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMgorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMwogbXNnaWQgInN0b3JlIGZpbGUgYXMgaXMgd2l0aG91dCBmaWx0ZXJzIgogbXNnc3RyICJEYXRlaSB3aWUgc2llIGlzdCBzcGVpY2hlcm4sIG9obmUgRmlsdGVyIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAzCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0CiBtc2dpZCAiIgogImp1c3QgaGFzaCBhbnkgcmFuZG9tIGdhcmJhZ2UgdG8gY3JlYXRlIGNvcnJ1cHQgb2JqZWN0cyBmb3IgZGVidWdnaW5nIEdpdCIKIG1zZ3N0ciAiIgogIkhhc2ggw7xiZXIgenVmw6RsbGlnZSBEYXRlbiwgenVyIEVyemV1Z3VuZyB2b24gYmVzY2jDpGRpZ3RlbiBPYmpla3RlbiB6dXJcbiIKICJGZWhsZXJzdWNoZSBpbiBHaXQsIGVyemV1Z2VuIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA1CiBtc2dpZCAicHJvY2VzcyBmaWxlIGFzIGl0IHdlcmUgZnJvbSB0aGlzIHBhdGgiCiBtc2dzdHIgIkRhdGVpIHZlcmFyYmVpdGVuLCBhbHMgb2Igc2llIHZvbiBkaWVzZW0gUGZhZCB3w6RyZSIKIApAQCAtMTE5MjYsMzAgKzE1MTIyLDMwIEBACiBtc2dpZCAiZ2l0IGhlbHAgWy0tYWxsXSBbLS1ndWlkZXNdIFstLW1hbiB8IC0td2ViIHwgLS1pbmZvXSBbPGNvbW1hbmQ+XSIKIG1zZ3N0ciAiZ2l0IGhlbHAgWy0tYWxsXSBbLS1ndWlkZXNdIFstLW1hbiB8IC0td2ViIHwgLS1pbmZvXSBbPEJlZmVobD5dIgogCi0jOiBidWlsdGluL2hlbHAuYzo3MworIzogYnVpbHRpbi9oZWxwLmM6NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIGhlbHAgZm9ybWF0ICclcyciCiBtc2dzdHIgIm5pY2h0IGVya2FubnRlcyBIaWxmZWZvcm1hdDogJXMiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjEwMAorIzogYnVpbHRpbi9oZWxwLmM6MTA0CiBtc2dpZCAiRmFpbGVkIHRvIHN0YXJ0IGVtYWNzY2xpZW50LiIKIG1zZ3N0ciAiS29ubnRlIGVtYWNzY2xpZW50IG5pY2h0IHN0YXJ0ZW4uIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMTMKKyM6IGJ1aWx0aW4vaGVscC5jOjExNwogbXNnaWQgIkZhaWxlZCB0byBwYXJzZSBlbWFjc2NsaWVudCB2ZXJzaW9uLiIKIG1zZ3N0ciAiS29ubnRlIFZlcnNpb24gZGVzIGVtYWNzY2xpZW50IG5pY2h0IHBhcnNlbi4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjEyMQorIzogYnVpbHRpbi9oZWxwLmM6MTI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImVtYWNzY2xpZW50IHZlcnNpb24gJyVkJyB0b28gb2xkICg8IDIyKS4iCiBtc2dzdHIgIlZlcnNpb24gZGVzIGVtYWNzY2xpZW50ICclZCcgaXN0IHp1IGFsdCAoPCAyMikuIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMzkgYnVpbHRpbi9oZWxwLmM6MTYxIGJ1aWx0aW4vaGVscC5jOjE3MSBidWlsdGluL2hlbHAuYzoxNzkKKyM6IGJ1aWx0aW4vaGVscC5jOjE0MyBidWlsdGluL2hlbHAuYzoxNjUgYnVpbHRpbi9oZWxwLmM6MTc1IGJ1aWx0aW4vaGVscC5jOjE4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZXhlYyAnJXMnIgogbXNnc3RyICJGZWhsZXIgYmVpbSBBdXNmw7xocmVuIHZvbiAnJXMnIgogCi0jOiBidWlsdGluL2hlbHAuYzoyMTcKKyM6IGJ1aWx0aW4vaGVscC5jOjIyMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJzogcGF0aCBmb3IgdW5zdXBwb3J0ZWQgbWFuIHZpZXdlci5cbiIKQEAgLTExOTU4LDcgKzE1MTU0LDcgQEAKICInJXMnOiBQZmFkIGbDvHIgbmljaHQgdW50ZXJzdMO8dHp0ZW4gSGFuZGJ1Y2hiZXRyYWNodGVyLlxuIgogIlNpZSBrw7ZubnRlbiBzdGF0dGRlc3NlbiAnbWFuLjxXZXJremV1Zz4uY21kJyBiZW51dHplbi4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjIyOQorIzogYnVpbHRpbi9oZWxwLmM6MjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnOiBjbWQgZm9yIHN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgpAQCAtMTE5NjcsMzI4ICsxNTE2MywzMTggQEAKICInJXMnOiBQcm9ncmFtbSBmw7xyIHVudGVyc3TDvHR6dGVuIEhhbmRidWNoYmV0cmFjaHRlci5cbiIKICJTaWUga8O2bm50ZW4gc3RhdHRkZXNzZW4gJ21hbi48V2Vya3pldWc+LnBhdGgnIGJlbnV0emVuLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MzQ2CisjOiBidWlsdGluL2hlbHAuYzozNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogdW5rbm93biBtYW4gdmlld2VyLiIKIG1zZ3N0ciAiJyVzJzogdW5iZWthbm50ZXIgSGFuZGJ1Y2gtQmV0cmFjaHRlci4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM2MworIzogYnVpbHRpbi9oZWxwLmM6MzY3CiBtc2dpZCAibm8gbWFuIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgogbXNnc3RyICJrZWluIEhhbmRidWNoLUJldHJhY2h0ZXIga29ubnRlIG1pdCBkaWVzZXIgQW5mcmFnZSB1bWdlaGVuIgogCi0jOiBidWlsdGluL2hlbHAuYzozNzEKKyM6IGJ1aWx0aW4vaGVscC5jOjM3NQogbXNnaWQgIm5vIGluZm8gdmlld2VyIGhhbmRsZWQgdGhlIHJlcXVlc3QiCiBtc2dzdHIgImtlaW4gSW5mb3JtYXRpb25zLUJldHJhY2h0ZXIga29ubnRlIG1pdCBkaWVzZXIgQW5mcmFnZSB1bWdlaGVuIgogCi0jOiBidWlsdGluL2hlbHAuYzo0MzAgYnVpbHRpbi9oZWxwLmM6NDQxIGdpdC5jOjMyMgorIzogYnVpbHRpbi9oZWxwLmM6NDM0IGJ1aWx0aW4vaGVscC5jOjQ0NSBnaXQuYzozMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbGlhc2VkIHRvICclcyciCiBtc2dzdHIgIkbDvHIgJyVzJyB3dXJkZSBkZXIgQWxpYXMgJyVzJyBhbmdlbGVndC4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQ0NAorIzogYnVpbHRpbi9oZWxwLmM6NDQ4IGdpdC5jOjM2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgYWxpYXMuJXMgc3RyaW5nOiAlcyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgYWxpYXMuJXMgU3RyaW5nOiAlcyIKIAotIzogYnVpbHRpbi9oZWxwLmM6NDczIGJ1aWx0aW4vaGVscC5jOjUwMworIzogYnVpbHRpbi9oZWxwLmM6NDc3IGJ1aWx0aW4vaGVscC5jOjUwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1c2FnZTogJXMlcyIKIG1zZ3N0ciAiVmVyd2VuZHVuZzogJXMlcyIKIAotIzogYnVpbHRpbi9oZWxwLmM6NDg3CisjOiBidWlsdGluL2hlbHAuYzo0OTEKIG1zZ2lkICInZ2l0IGhlbHAgY29uZmlnJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiJ2dpdCBoZWxwIGNvbmZpZycgZsO8ciB3ZWl0ZXJlIEluZm9ybWF0aW9uZW4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCB0eXBlIG1pc21hdGNoIGF0ICVzIgogbXNnc3RyICJPYmpla3QtVHlwZW4gcGFzc2VuIGJlaSAlcyBuaWNodCB6dXNhbW1lbiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGlkIG5vdCByZWNlaXZlIGV4cGVjdGVkIG9iamVjdCAlcyIKIG1zZ3N0ciAia29ubnRlIGVyd2FydGV0ZXMgT2JqZWt0ICVzIG5pY2h0IGVtcGZhbmdlbiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzOiBleHBlY3RlZCB0eXBlICVzLCBmb3VuZCAlcyIKIG1zZ3N0ciAiT2JqZWt0ICVzOiBlcndhcnRldGVyIFR5cCAlcywgJXMgZ2VmdW5kZW4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI0OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjU4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBmaWxsICVkIGJ5dGUiCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBmaWxsICVkIGJ5dGVzIgogbXNnc3RyWzBdICJrYW5uICVkIEJ5dGUgbmljaHQgbGVzZW4iCiBtc2dzdHJbMV0gImthbm4gJWQgQnl0ZXMgbmljaHQgbGVzZW4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI1OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjY4CiBtc2dpZCAiZWFybHkgRU9GIgogbXNnc3RyICJ6dSBmcsO8aGVzIERhdGVpZW5kZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjYwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyNjkKIG1zZ2lkICJyZWFkIGVycm9yIG9uIGlucHV0IgogbXNnc3RyICJGZWhsZXIgYmVpbSBMZXNlbiBkZXIgRWluZ2FiZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjcyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyODEKIG1zZ2lkICJ1c2VkIG1vcmUgYnl0ZXMgdGhhbiB3ZXJlIGF2YWlsYWJsZSIKIG1zZ3N0ciAidmVyd2VuZGV0ZSBtZWhyIEJ5dGVzIGFscyB2ZXJmw7xnYmFyIHdhcmVuIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNzkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1OTgKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI4OCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjYwNgogbXNnaWQgInBhY2sgdG9vIGxhcmdlIGZvciBjdXJyZW50IGRlZmluaXRpb24gb2Ygb2ZmX3QiCiBtc2dzdHIgIlBha2V0IGlzdCB6dSBncm/DnyBmw7xyIGRpZSBha3R1ZWxsZSBEZWZpbml0aW9uIHZvbiBvZmZfdCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjgyIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo5NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjkxIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo5NQogbXNnaWQgInBhY2sgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgc2l6ZSIKIG1zZ3N0ciAiUGFrZXQgw7xiZXJzY2hyZWl0ZXQgZGllIG1heGltYWwgZXJsYXVidGUgR3LDtsOfZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6Mjk3Ci0jLCBjLWZvcm1hdAotbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgJyVzJyIKLW1zZ3N0ciAia29ubnRlICclcycgbmljaHQgZXJzdGVsbGVuIgotCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozMDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgb3BlbiBwYWNrZmlsZSAnJXMnIgogbXNnc3RyICJLYW5uIFBha2V0ZGF0ZWkgJyVzJyBuaWNodCDDtmZmbmVuIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozMTcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMyNgogbXNnaWQgInBhY2sgc2lnbmF0dXJlIG1pc21hdGNoIgogbXNnc3RyICJQYWtldHNpZ25hdHVyIHN0aW1tdCBuaWNodCDDvGJlcmVpbiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzE5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjayB2ZXJzaW9uICU8UFJJdTMyPiB1bnN1cHBvcnRlZCIKIG1zZ3N0ciAiUGFrZXR2ZXJzaW9uICU8UFJJdTMyPiBuaWNodCB1bnRlcnN0w7x0enQiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMzNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2sgaGFzIGJhZCBvYmplY3QgYXQgb2Zmc2V0ICU8UFJJdU1BWD46ICVzIgogbXNnc3RyICJQYWtldCBoYXQgZWluIHVuZ8O8bHRpZ2VzIE9iamVrdCBiZWkgVmVyc2F0eiAlPFBSSXVNQVg+OiAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NDU3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5mbGF0ZSByZXR1cm5lZCAlZCIKIG1zZ3N0ciAiRGVrb21wcmltaWVydW5nIGdhYiAlZCB6dXLDvGNrIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1MDYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNQogbXNnaWQgIm9mZnNldCB2YWx1ZSBvdmVyZmxvdyBmb3IgZGVsdGEgYmFzZSBvYmplY3QiCiBtc2dzdHIgIldlcnQgZsO8ciBWZXJzYXR6IGJlaSBEaWZmZXJlbnpvYmpla3Qgw7xiZXJnZWxhdWZlbiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTE0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MjMKIG1zZ2lkICJkZWx0YSBiYXNlIG9mZnNldCBpcyBvdXQgb2YgYm91bmQiCiBtc2dzdHIgIiIKICJXZXJ0IGbDvHIgVmVyc2F0eiBiZWkgRGlmZmVyZW56b2JqZWt0IGxpZWd0IGF1w59lcmhhbGIgZGVzIGfDvGx0aWdlbiBCZXJlaWNocyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTIyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvYmplY3QgdHlwZSAlZCIKIG1zZ3N0ciAiVW5iZWthbm50ZXIgT2JqZWt0LVR5cCAlZCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTUzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NjIKIG1zZ2lkICJjYW5ub3QgcHJlYWQgcGFjayBmaWxlIgogbXNnc3RyICJLYW5uIFBha2V0ZGF0ZWkgJXMgbmljaHQgbGVzZW4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU1NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgInByZW1hdHVyZSBlbmQgb2YgcGFjayBmaWxlLCAlPFBSSXVNQVg+IGJ5dGUgbWlzc2luZyIKIG1zZ2lkX3BsdXJhbCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICU8UFJJdU1BWD4gYnl0ZXMgbWlzc2luZyIKIG1zZ3N0clswXSAiZnLDvGh6ZWl0aWdlcyBFbmRlIGRlciBQYWtldGRhdGVpLCB2ZXJtaXNzZSAlPFBSSXVNQVg+IEJ5dGUiCiBtc2dzdHJbMV0gImZyw7xoemVpdGlnZXMgRW5kZSBkZXIgUGFrZXRkYXRlaSwgdmVybWlzc2UgJTxQUkl1TUFYPiBCeXRlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTgxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1OTAKIG1zZ2lkICJzZXJpb3VzIGluZmxhdGUgaW5jb25zaXN0ZW5jeSIKIG1zZ3N0ciAiZXJuc3RoYWZ0ZSBJbmtvbnNpc3RlbnogbmFjaCBEZWtvbXByaW1pZXJ1bmciCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjcyNiBidWlsdGluL2luZGV4LXBhY2suYzo3MzIgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzU1Ci0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3OTQgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo3MzUgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzQxIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc2NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODA0IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJTSEExIENPTExJU0lPTiBGT1VORCBXSVRIICVzICEiCiBtc2dzdHIgIlNIQTEgS09MTElTSU9OIE1JVCAlcyBHRUZVTkRFTiAhIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3MjkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTEKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjExIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzA1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo3MzggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjE4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkICVzIgogbXNnc3RyICJrYW5uICVzIG5pY2h0IGxlc2VuIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3OTIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBleGlzdGluZyBvYmplY3QgaW5mbyAlcyIKIG1zZ3N0ciAiS2FubiBleGlzdGllcmVuZGUgSW5mb3JtYXRpb25lbiB6dSBPYmpla3QgJXMgbmljaHQgbGVzZW4uIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4MDAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBleGlzdGluZyBvYmplY3QgJXMiCiBtc2dzdHIgIkthbm4gZXhpc3RpZXJlbmRlcyBPYmpla3QgJXMgbmljaHQgbGVzZW4uIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGJsb2Igb2JqZWN0ICVzIgogbXNnc3RyICJ1bmfDvGx0aWdlcyBCbG9iLU9iamVrdCAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODE3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzNgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODI3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0NgogbXNnaWQgImZzY2sgZXJyb3IgaW4gcGFja2VkIG9iamVjdCIKIG1zZ3N0ciAiZnNjayBGZWhsZXIgaW4gZ2VwYWNrdGVtIE9iamVrdCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODMzCi0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgJXMiCi1tc2dzdHIgIlVuZ8O8bHRpZ2VyIE9iamVrdC1UeXAgJXMiCi0KLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzOAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhbGwgY2hpbGQgb2JqZWN0cyBvZiAlcyBhcmUgcmVhY2hhYmxlIgogbXNnc3RyICJOaWNodCBhbGxlIEtpbmQtT2JqZWt0ZSB2b24gJXMgc2luZCBlcnJlaWNoYmFyIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo5MTAgYnVpbHRpbi9pbmRleC1wYWNrLmM6OTQxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo5MjAgYnVpbHRpbi9pbmRleC1wYWNrLmM6OTUxCiBtc2dpZCAiZmFpbGVkIHRvIGFwcGx5IGRlbHRhIgogbXNnc3RyICJLb25udGUgRGF0ZWl1bnRlcnNjaGllZCBuaWNodCBhbndlbmRlbiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEwOQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEyMQogbXNnaWQgIlJlY2VpdmluZyBvYmplY3RzIgogbXNnc3RyICJFbXBmYW5nZSBPYmpla3RlIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTA5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTIxCiBtc2dpZCAiSW5kZXhpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiSW5kaXppZXJlIE9iamVrdGUiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNTUKIG1zZ2lkICJwYWNrIGlzIGNvcnJ1cHRlZCAoU0hBMSBtaXNtYXRjaCkiCiBtc2dzdHIgIlBha2V0IGlzdCBiZXNjaMOkZGlndCAoU0hBMSB1bnRlcnNjaGllZGxpY2gpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTQ4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYwCiBtc2dpZCAiY2Fubm90IGZzdGF0IHBhY2tmaWxlIgogbXNnc3RyICJrYW5uIFBha2V0ZGF0ZWkgbmljaHQgbGVzZW4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNTEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNjMKIG1zZ2lkICJwYWNrIGhhcyBqdW5rIGF0IHRoZSBlbmQiCiBtc2dzdHIgIlBha2V0ZW5kZSBlbnRow6RsdCBuaWNodCB2ZXJ3ZW5kYmFyZW4gSW5oYWx0IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTc1CiBtc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSBpbiBwYXJzZV9wYWNrX29iamVjdHMoKSIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gQXVzZsO8aHJlbiB2b24gXCJwYXJzZV9wYWNrX29iamVjdHMoKVwiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTg2CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTk4CiBtc2dpZCAiUmVzb2x2aW5nIGRlbHRhcyIKIG1zZ3N0ciAiTMO2c2UgVW50ZXJzY2hpZWRlIGF1ZiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE5NiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI0OTIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyMDggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAia2FubiBUaHJlYWQgbmljaHQgZXJ6ZXVnZW46ICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjM3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjQ5CiBtc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gQXVmbMO2c2VuIGRlciBVbnRlcnNjaGllZGUiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tcGxldGVkIHdpdGggJWQgbG9jYWwgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJjb21wbGV0ZWQgd2l0aCAlZCBsb2NhbCBvYmplY3RzIgogbXNnc3RyWzBdICJhYmdlc2NobG9zc2VuIG1pdCAlZCBsb2thbGVtIE9iamVrdCIKIG1zZ3N0clsxXSAiYWJnZXNjaGxvc3NlbiBtaXQgJWQgbG9rYWxlbiBPYmpla3RlbiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI1NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmV4cGVjdGVkIHRhaWwgY2hlY2tzdW0gZm9yICVzIChkaXNrIGNvcnJ1cHRpb24/KSIKIG1zZ3N0ciAiVW5lcndhcnRldGUgUHLDvGZzdW1tZSBmw7xyICVzIChGZXN0cGxhdHRlbmZlaGxlcj8pIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjU5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2sgaGFzICVkIHVucmVzb2x2ZWQgZGVsdGEiCiBtc2dpZF9wbHVyYWwgInBhY2sgaGFzICVkIHVucmVzb2x2ZWQgZGVsdGFzIgotbXNnc3RyWzBdICJQYWtldCBoYXQgJWQgdW5hdWZnZWzDtnN0ZSBVbnRlcnNjaGllZCIKK21zZ3N0clswXSAiUGFrZXQgaGF0ICVkIHVuYXVmZ2Vsw7ZzdGVuIFVudGVyc2NoaWVkIgogbXNnc3RyWzFdICJQYWtldCBoYXQgJWQgdW5hdWZnZWzDtnN0ZSBVbnRlcnNjaGllZGUiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyODMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgYXBwZW5kZWQgb2JqZWN0ICglZCkiCiBtc2dzdHIgIktvbm50ZSBhbmdlaMOkbmd0ZXMgT2JqZWt0ICglZCkgbmljaHQga29tcHJpbWllcmVuIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzYwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImxvY2FsIG9iamVjdCAlcyBpcyBjb3JydXB0IgogbXNnc3RyICJsb2thbGVzIE9iamVrdCAlcyBpc3QgYmVzY2jDpGRpZ3QiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzNzQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFja2ZpbGUgbmFtZSAnJXMnIGRvZXMgbm90IGVuZCB3aXRoICcucGFjayciCiBtc2dzdHIgIk5hbWUgZGVyIFBha2V0ZGF0ZWkgJyVzJyBlbmRldCBuaWNodCBtaXQgJy5wYWNrJyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM5OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXMgZmlsZSAnJXMnIgogbXNnc3RyICJLYW5uICVzIERhdGVpICclcycgbmljaHQgc2NocmVpYmVuLiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQwNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY2xvc2Ugd3JpdHRlbiAlcyBmaWxlICclcyciCiBtc2dzdHIgIkthbm4gZWJlbiBnZXNjaHJpZWJlbmUgJXMgRGF0ZWkgJyVzJyBuaWNodCBzY2hsaWXDn2VuLiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQzMQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ2MwogbXNnaWQgImVycm9yIHdoaWxlIGNsb3NpbmcgcGFjayBmaWxlIgogbXNnc3RyICJGZWhsZXIgYmVpbSBTY2hsaWXDn2VuIGRlciBQYWtldGRhdGVpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDQ1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDc3CiBtc2dpZCAiY2Fubm90IHN0b3JlIHBhY2sgZmlsZSIKIG1zZ3N0ciAiS2FubiBQYWtldGRhdGVpIG5pY2h0IHNwZWljaGVybiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ1MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ4NQogbXNnaWQgImNhbm5vdCBzdG9yZSBpbmRleCBmaWxlIgogbXNnc3RyICJLYW5uIEluZGV4ZGF0ZWkgbmljaHQgc3BlaWNoZXJuIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDk3IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcyNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUyOSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2suaW5kZXh2ZXJzaW9uPSU8UFJJdTMyPiIKIG1zZ3N0ciAiXCJwYWNrLmluZGV4dmVyc2lvbj0lPFBSSXUzMj5cIiBpc3QgdW5nw7xsdGlnIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTY1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBvcGVuIGV4aXN0aW5nIHBhY2sgZmlsZSAnJXMnIgogbXNnc3RyICJLYW5uIGV4aXN0aWVyZW5kZSBQYWtldGRhdGVpICclcycgbmljaHQgw7ZmZm5lbiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU2NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgb3BlbiBleGlzdGluZyBwYWNrIGlkeCBmaWxlIGZvciAnJXMnIgogbXNnc3RyICJLYW5uIGV4aXN0aWVyZW5kZSBJbmRleGRhdGVpIGbDvHIgUGFrZXQgJyVzJyBuaWNodCDDtmZmbmVuIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjE1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vbiBkZWx0YTogJWQgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJub24gZGVsdGE6ICVkIG9iamVjdHMiCiBtc2dzdHJbMF0gImtlaW4gVW50ZXJzY2hpZWQ6ICVkIE9iamVrdCIKIG1zZ3N0clsxXSAia2VpbiBVbnRlcnNjaGllZDogJWQgT2JqZWt0ZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTYyMgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjaGFpbiBsZW5ndGggPSAlZDogJWx1IG9iamVjdCIKIG1zZ2lkX3BsdXJhbCAiY2hhaW4gbGVuZ3RoID0gJWQ6ICVsdSBvYmplY3RzIgogbXNnc3RyWzBdICJMw6RuZ2UgZGVyIE9iamVrdC1MaXN0ZSA9ICVkOiAlbHUgT2JqZWt0IgogbXNnc3RyWzFdICJMw6RuZ2UgZGVyIE9iamVrdC1MaXN0ZSA9ICVkOiAlbHUgT2JqZWt0ZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY1OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY5MwogbXNnaWQgIkNhbm5vdCBjb21lIGJhY2sgdG8gY3dkIgogbXNnc3RyICJLYW5uIG5pY2h0IHp1csO8Y2sgenVtIEFyYmVpdHN2ZXJ6ZWljaG5pcyB3ZWNoc2VsbiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTcwOCBidWlsdGluL2luZGV4LXBhY2suYzoxNzExCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzI3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MzEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDIgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc2MSBidWlsdGluL2luZGV4LXBhY2suYzoxNzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCAlcyIKIG1zZ3N0ciAiJXMgaXN0IHVuZ8O8bHRpZyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4MQogbXNnaWQgIi0tZml4LXRoaW4gY2Fubm90IGJlIHVzZWQgd2l0aG91dCAtLXN0ZGluIgogbXNnc3RyICJEaWUgT3B0aW9uIC0tZml4LXRoaW4ga2FubiBuaWNodCBvaG5lIC0tc3RkaW4gdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3ODMKIG1zZ2lkICItLXN0ZGluIHJlcXVpcmVzIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0tc3RkaW4gZXJmb3JkZXJ0IGVpbiBHaXQtUmVwb3NpdG9yeSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc1NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4OQogbXNnaWQgIi0tdmVyaWZ5IHdpdGggbm8gcGFja2ZpbGUgbmFtZSBnaXZlbiIKIG1zZ3N0ciAiRGllIE9wdGlvbiAtLXZlcmlmeSB3dXJkZSBvaG5lIE5hbWVuIGRlciBQYWtldGRhdGVpIGFuZ2VnZWJlbi4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4MDMgYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjU4MAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTgzNyBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTgyCiBtc2dpZCAiZnNjayBlcnJvciBpbiBwYWNrIG9iamVjdHMiCiBtc2dzdHIgImZzY2sgRmVobGVyIGJlaW0gUGFja2VuIHZvbiBPYmpla3RlbiIKIApAQCAtMTIzMzIsNDIgKzE1NTE4LDQyIEBACiBtc2dpZCAibm90IGNvcHlpbmcgdGVtcGxhdGVzIGZyb20gJyVzJzogJXMiCiBtc2dzdHIgImtvcGllcmUga2VpbmUgVm9ybGFnZW4gdm9uICclcyc6ICVzIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzozMjkKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gaGFuZGxlIGZpbGUgdHlwZSAlZCIKIG1zZ3N0ciAia2FubiBuaWNodCBtaXQgRGF0ZWl0eXAgJWQgdW1nZWhlbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6MzMyCisjOiBidWlsdGluL2luaXQtZGIuYzozMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG1vdmUgJXMgdG8gJXMiCiBtc2dzdHIgIktvbm50ZSAlcyBuaWNodCBuYWNoICVzIHZlcnNjaGllYmVuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzozNDkgYnVpbHRpbi9pbml0LWRiLmM6MzUyCisjOiBidWlsdGluL2luaXQtZGIuYzozNTQgYnVpbHRpbi9pbml0LWRiLmM6MzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICIlcyBleGlzdGllcnQgYmVyZWl0cyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDA1CisjOiBidWlsdGluL2luaXQtZGIuYzo0MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVpbml0aWFsaXplZCBleGlzdGluZyBzaGFyZWQgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgogbXNnc3RyICJCZXN0ZWhlbmRlcyB2ZXJ0ZWlsdGVzIEdpdC1SZXBvc2l0b3J5IGluICVzJXMgbmV1aW5pdGlhbGlzaWVydFxuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MDYKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWluaXRpYWxpemVkIGV4aXN0aW5nIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAiQmVzdGVoZW5kZXMgR2l0LVJlcG9zaXRvcnkgaW4gJXMlcyBuZXVpbml0aWFsaXNpZXJ0XG4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMAorIzogYnVpbHRpbi9pbml0LWRiLmM6NDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkluaXRpYWxpemVkIGVtcHR5IHNoYXJlZCBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgIkxlZXJlcyB2ZXJ0ZWlsdGVzIEdpdC1SZXBvc2l0b3J5IGluICVzJXMgaW5pdGlhbGlzaWVydFxuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MTEKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxOQogIywgYy1mb3JtYXQKIG1zZ2lkICJJbml0aWFsaXplZCBlbXB0eSBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgIkxlZXJlcyBHaXQtUmVwb3NpdG9yeSBpbiAlcyVzIGluaXRpYWxpc2llcnRcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDYwCisjOiBidWlsdGluL2luaXQtZGIuYzo0NjgKIG1zZ2lkICIiCiAiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU9PHRlbXBsYXRlLWRpcmVjdG9yeT5dIFstLSIKICJzaGFyZWRbPTxwZXJtaXNzaW9ucz5dXSBbPGRpcmVjdG9yeT5dIgpAQCAtMTIzNzUsMjUgKzE1NTYxLDI1IEBACiAiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU9PFZvcmxhZ2VudmVyemVpY2huaXM+XSBbLS0iCiAic2hhcmVkWz08QmVyZWNodGlndW5nZW4+XV0gWzxWZXJ6ZWljaG5pcz5dIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0ODMKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MQogbXNnaWQgInBlcm1pc3Npb25zIgogbXNnc3RyICJCZXJlY2h0aWd1bmdlbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDg0CisjOiBidWlsdGluL2luaXQtZGIuYzo0OTIKIG1zZ2lkICJzcGVjaWZ5IHRoYXQgdGhlIGdpdCByZXBvc2l0b3J5IGlzIHRvIGJlIHNoYXJlZCBhbW9uZ3N0IHNldmVyYWwgdXNlcnMiCiBtc2dzdHIgImFuZ2ViZW4sIGRhc3MgZGFzIEdpdC1SZXBvc2l0b3J5IG1pdCBtZWhyZXJlbiBCZW51dHplcm4gZ2V0ZWlsdCB3aXJkIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo1MTggYnVpbHRpbi9pbml0LWRiLmM6NTIzCisjOiBidWlsdGluL2luaXQtZGIuYzo1MjkgYnVpbHRpbi9pbml0LWRiLmM6NTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBta2RpciAlcyIKIG1zZ3N0ciAia2FubiBWZXJ6ZWljaG5pcyAlcyBuaWNodCBlcnN0ZWxsZW4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUyNworIzogYnVpbHRpbi9pbml0LWRiLmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGRpciB0byAlcyIKIG1zZ3N0ciAia2FubiBuaWNodCBpbiBWZXJ6ZWljaG5pcyAlcyB3ZWNoc2VsbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTQ4CisjOiBidWlsdGluL2luaXQtZGIuYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiVzIChvciAtLXdvcmstdHJlZT08ZGlyZWN0b3J5Pikgbm90IGFsbG93ZWQgd2l0aG91dCBzcGVjaWZ5aW5nICVzIChvciAtLWdpdC0iCkBAIC0xMjQwMiwxMiArMTU1ODgsMTIgQEAKICIlcyAob2RlciAtLXdvcmstdHJlZT08VmVyemVpY2huaXM+KSBuaWNodCBlcmxhdWJ0IG9obmUgU3BlemlmaXppZXJ1bmcgdm9uICVzICIKICIob2RlciAtLWdpdC1kaXI9PFZlcnplaWNobmlzPikiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU3NgorIzogYnVpbHRpbi9pbml0LWRiLmM6NTg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBhY2Nlc3Mgd29yayB0cmVlICclcyciCiBtc2dzdHIgIkthbm4gbmljaHQgYXVmIEFyYmVpdHN2ZXJ6ZWljaG5pcyAnJXMnIHp1Z3JlaWZlbi4iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTUKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTYKIG1zZ2lkICIiCiAiZ2l0IGludGVycHJldC10cmFpbGVycyBbLS1pbi1wbGFjZV0gWy0tdHJpbS1lbXB0eV0gWygtLXRyYWlsZXIgIgogIjx0b2tlbj5bKD18Oik8dmFsdWU+XSkuLi5dIFs8ZmlsZT4uLi5dIgpAQCAtMTI0MTUsNDYxICsxNTYwMSw0NzAgQEAKICJnaXQgaW50ZXJwcmV0LXRyYWlsZXJzIFstLWluLXBsYWNlXSBbLS10cmltLWVtcHR5XSBbKC0tdHJhaWxlciAiCiAiPFRva2VuPlsoPXw6KTxXZXJ0Pl0pLi4uXSBbPERhdGVpPi4uLl0iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTQKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTUKIG1zZ2lkICJlZGl0IGZpbGVzIGluIHBsYWNlIgogbXNnc3RyICJ2b3JoYW5kZW5lIERhdGVpZW4gZGlyZWt0IGJlYXJiZWl0ZW4iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTUKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTYKIG1zZ2lkICJ0cmltIGVtcHR5IHRyYWlsZXJzIgogbXNnc3RyICJrw7xyenQgbGVlcmUgQW5ow6RuZ2UiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTgKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTkKIG1zZ2lkICJ3aGVyZSB0byBwbGFjZSB0aGUgbmV3IHRyYWlsZXIiCiBtc2dzdHIgIndvIGRlciBuZXVlIEFuaGFuZyBwbGF0emllcnQgd2lyZCIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDAKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAxCiBtc2dpZCAiYWN0aW9uIGlmIHRyYWlsZXIgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIkFrdGlvbiwgd2VubiBBbmhhbmcgYmVyZWl0cyBleGlzdGllcnQiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAyCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMwogbXNnaWQgImFjdGlvbiBpZiB0cmFpbGVyIGlzIG1pc3NpbmciCiBtc2dzdHIgIkFrdGlvbiwgd2VubiBBbmhhbmcgZmVobHQiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA0CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNQogbXNnaWQgIm91dHB1dCBvbmx5IHRoZSB0cmFpbGVycyIKIG1zZ3N0ciAibnVyIEFuaMOkbmdlIGF1c2dlYmVuIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDYKIG1zZ2lkICJkbyBub3QgYXBwbHkgY29uZmlnIHJ1bGVzIgogbXNnc3RyICJSZWdlbG4gYXVzIEtvbmZpZ3VyYXRpb24gbmljaHQgYW53ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA2CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNwogbXNnaWQgImpvaW4gd2hpdGVzcGFjZS1jb250aW51ZWQgdmFsdWVzIgogbXNnc3RyICJkdXJjaCBMZWVyemVpY2hlbiBmb3J0Z2VzZXR6dGUgV2VydGUgdmVyYmluZGVuIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDgKIG1zZ2lkICJzZXQgcGFyc2luZyBvcHRpb25zIgogbXNnc3RyICJPcHRpb25lbiBmw7xyIGRhcyBQYXJzZW4gc2V0emVuIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwOQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTAKIG1zZ2lkICJkbyBub3QgdHJlYXQgLS0tIHNwZWNpYWxseSIKIG1zZ3N0ciAiLS0tIG5pY2h0IHNwZXppZWxsIGJlaGFuZGVsbiIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTAKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTExCiBtc2dpZCAidHJhaWxlciIKIG1zZ3N0ciAiQW5oYW5nIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTIKIG1zZ2lkICJ0cmFpbGVyKHMpIHRvIGFkZCIKIG1zZ3N0ciAiQW5oYW5nL0FuaMOkbmdlIGhpbnp1ZsO8Z2VuIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEyMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMjMKIG1zZ2lkICItLXRyYWlsZXIgd2l0aCAtLW9ubHktaW5wdXQgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiIgogIkRpZSBPcHRpb25lbiAtLXRyYWlsZXIgdW5kIC0tb25seS1pbnB1dCBrw7ZubmVuIG5pY2h0IGdlbWVpbnNhbSB2ZXJ3ZW5kZXQgIgogIndlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTMwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEzMwogbXNnaWQgIm5vIGlucHV0IGZpbGUgZ2l2ZW4gZm9yIGluLXBsYWNlIGVkaXRpbmciCiBtc2dzdHIgImtlaW5lIERhdGVpIHp1ciBkaXJla3RlbiBCZWFyYmVpdHVuZyBhbmdlZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTQKKyM6IGJ1aWx0aW4vbG9nLmM6NTYKIG1zZ2lkICJnaXQgbG9nIFs8b3B0aW9ucz5dIFs8cmV2aXNpb24tcmFuZ2U+XSBbWy0tXSA8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgbG9nIFs8T3B0aW9uZW4+XSBbPENvbW1pdGJlcmVpY2g+XSBbWy0tXSA8UGZhZD4uLi5dIgogCi0jOiBidWlsdGluL2xvZy5jOjU1CisjOiBidWlsdGluL2xvZy5jOjU3CiBtc2dpZCAiZ2l0IHNob3cgWzxvcHRpb25zPl0gPG9iamVjdD4uLi4iCiBtc2dzdHIgImdpdCBzaG93IFs8T3B0aW9uZW4+XSA8T2JqZWt0Pi4uLiIKIAotIzogYnVpbHRpbi9sb2cuYzo5OQorIzogYnVpbHRpbi9sb2cuYzoxMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCAtLWRlY29yYXRlIG9wdGlvbjogJXMiCiBtc2dzdHIgIlVuZ8O8bHRpZ2UgT3B0aW9uIGbDvHIgLS1kZWNvcmF0ZTogJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTYyCi1tc2dpZCAic3VwcHJlc3MgZGlmZiBvdXRwdXQiCi1tc2dzdHIgIkF1c2dhYmUgZGVyIFVudGVyc2NoaWVkZSB1bnRlcmRyw7xja2VuIgotCi0jOiBidWlsdGluL2xvZy5jOjE2MworIzogYnVpbHRpbi9sb2cuYzoxNzQKIG1zZ2lkICJzaG93IHNvdXJjZSIKIG1zZ3N0ciAiUXVlbGxlIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2xvZy5jOjE2NAorIzogYnVpbHRpbi9sb2cuYzoxNzUKIG1zZ2lkICJVc2UgbWFpbCBtYXAgZmlsZSIKIG1zZ3N0ciAiXCJtYWlsbWFwXCItRGF0ZWkgdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL2xvZy5jOjE2NgorIzogYnVpbHRpbi9sb2cuYzoxNzcKIG1zZ2lkICJvbmx5IGRlY29yYXRlIHJlZnMgdGhhdCBtYXRjaCA8cGF0dGVybj4iCiBtc2dzdHIgIlwiZGVjb3JhdGVcIiBudXIgYmVpIFJlZmVyZW56ZW4gYW53ZW5kZW4sIGRpZSA8TXVzdGVyPiBlbnRzcHJlY2hlbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjgKKyM6IGJ1aWx0aW4vbG9nLmM6MTc5CiBtc2dpZCAiZG8gbm90IGRlY29yYXRlIHJlZnMgdGhhdCBtYXRjaCA8cGF0dGVybj4iCiBtc2dzdHIgIlwiZGVjb3JhdGVcIiBuaWNodCBiZWkgUmVmZXJlbnplbiBhbndlbmRlbiwgZGllIDxNdXN0ZXI+IGVudHNwcmVjaGVuIgogCi0jOiBidWlsdGluL2xvZy5jOjE2OQorIzogYnVpbHRpbi9sb2cuYzoxODAKIG1zZ2lkICJkZWNvcmF0ZSBvcHRpb25zIgogbXNnc3RyICJkZWNvcmF0ZS1PcHRpb25lbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNzIKKyM6IGJ1aWx0aW4vbG9nLmM6MTgzCiBtc2dpZCAiUHJvY2VzcyBsaW5lIHJhbmdlIG4sbSBpbiBmaWxlLCBjb3VudGluZyBmcm9tIDEiCiBtc2dzdHIgIlZlcmFyYmVpdGV0IG51ciBaZWlsZW4gaW0gQmVyZWljaCBuLG0gaW4gZGVyIERhdGVpLCBnZXrDpGhsdCB2b24gMSIKIAotIzogYnVpbHRpbi9sb2cuYzoyNzAKKyM6IGJ1aWx0aW4vbG9nLmM6MjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZpbmFsIG91dHB1dDogJWQgJXNcbiIKIG1zZ3N0ciAibGV0enRlIEF1c2dhYmU6ICVkICVzXG4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTIyCisjOiBidWlsdGluL2xvZy5jOjUzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgc2hvdyAlczogYmFkIGZpbGUiCiBtc2dzdHIgImdpdCBzaG93ICVzOiB1bmfDvGx0aWdlIERhdGVpIgogCi0jOiBidWlsdGluL2xvZy5jOjUzNyBidWlsdGluL2xvZy5jOjYzMQorIzogYnVpbHRpbi9sb2cuYzo1NTAgYnVpbHRpbi9sb2cuYzo2NDUKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgotbXNnc3RyICJLYW5uIE9iamVrdCAlcyBuaWNodCBsZXNlbi4iCittc2dpZCAiY291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgorbXNnc3RyICJLb25udGUgT2JqZWt0ICVzIG5pY2h0IGxlc2VuLiIKIAotIzogYnVpbHRpbi9sb2cuYzo2NTUKKyM6IGJ1aWx0aW4vbG9nLmM6NjcwCiAjLCBjLWZvcm1hdAotbXNnaWQgIlVua25vd24gdHlwZTogJWQiCittc2dpZCAidW5rbm93biB0eXBlOiAlZCIKIG1zZ3N0ciAiVW5iZWthbm50ZXIgVHlwOiAlZCIKIAotIzogYnVpbHRpbi9sb2cuYzo3NzYKKyM6IGJ1aWx0aW4vbG9nLmM6ODE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIGNvdmVyIGZyb20gZGVzY3JpcHRpb24gbW9kZSIKK21zZ3N0ciAiIgorIiVzOiBVbmfDvGx0aWdlciBNb2R1cyBmw7xyIEVyc3RlbGx1bmcgZGVzIERlY2tibGF0dGVzIGF1cyBkZXIgQmVzY2hyZWlidW5nIgorCisjOiBidWlsdGluL2xvZy5jOjgyMQogbXNnaWQgImZvcm1hdC5oZWFkZXJzIHdpdGhvdXQgdmFsdWUiCiBtc2dzdHIgImZvcm1hdC5oZWFkZXJzIG9obmUgV2VydCIKIAotIzogYnVpbHRpbi9sb2cuYzo4NzcKKyM6IGJ1aWx0aW4vbG9nLmM6OTM2CiBtc2dpZCAibmFtZSBvZiBvdXRwdXQgZGlyZWN0b3J5IGlzIHRvbyBsb25nIgogbXNnc3RyICJOYW1lIGRlcyBBdXNnYWJldmVyemVpY2huaXNzZXMgaXN0IHp1IGxhbmcuIgogCi0jOiBidWlsdGluL2xvZy5jOjg5MworIzogYnVpbHRpbi9sb2cuYzo5NTIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ2Fubm90IG9wZW4gcGF0Y2ggZmlsZSAlcyIKK21zZ2lkICJjYW5ub3Qgb3BlbiBwYXRjaCBmaWxlICVzIgogbXNnc3RyICJLYW5uIFBhdGNoLURhdGVpICVzIG5pY2h0IMO2ZmZuZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6OTEwCi1tc2dpZCAiTmVlZCBleGFjdGx5IG9uZSByYW5nZS4iCisjOiBidWlsdGluL2xvZy5jOjk2OQorbXNnaWQgIm5lZWQgZXhhY3RseSBvbmUgcmFuZ2UiCiBtc2dzdHIgIkJyYXVjaGUgZ2VuYXUgZWluZW4gQ29tbWl0LUJlcmVpY2guIgogCi0jOiBidWlsdGluL2xvZy5jOjkyMAotbXNnaWQgIk5vdCBhIHJhbmdlLiIKKyM6IGJ1aWx0aW4vbG9nLmM6OTc5Cittc2dpZCAibm90IGEgcmFuZ2UiCiBtc2dzdHIgIktlaW4gQ29tbWl0LUJlcmVpY2guIgogCi0jOiBidWlsdGluL2xvZy5jOjEwNDMKLW1zZ2lkICJDb3ZlciBsZXR0ZXIgbmVlZHMgZW1haWwgZm9ybWF0IgorIzogYnVpbHRpbi9sb2cuYzoxMTQzCittc2dpZCAiY292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKIG1zZ3N0ciAiQW5zY2hyZWliZW4gYmVuw7Z0aWd0IEUtTWFpbC1Gb3JtYXQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTExOQorIzogYnVpbHRpbi9sb2cuYzoxMTQ5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBjb3Zlci1sZXR0ZXIgZmlsZSIKK21zZ3N0ciAiRmVobGVyIGJlaW0gRXJzdGVsbGVuIGRlciBEYXRlaSBmw7xyIGRhcyBBbnNjaHJlaWJlbi4iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnNhbmUgaW4tcmVwbHktdG86ICVzIgogbXNnc3RyICJ1bmfDvGx0aWdlcyBpbi1yZXBseS10bzogJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTE0NgorIzogYnVpbHRpbi9sb2cuYzoxMjU1CiBtc2dpZCAiZ2l0IGZvcm1hdC1wYXRjaCBbPG9wdGlvbnM+XSBbPHNpbmNlPiB8IDxyZXZpc2lvbi1yYW5nZT5dIgogbXNnc3RyICJnaXQgZm9ybWF0LXBhdGNoIFs8T3B0aW9uZW4+XSBbPHNlaXQ+IHwgPENvbW1pdGJlcmVpY2g+XSIKIAotIzogYnVpbHRpbi9sb2cuYzoxMjA0Ci1tc2dpZCAiVHdvIG91dHB1dCBkaXJlY3Rvcmllcz8iCisjOiBidWlsdGluL2xvZy5jOjEzMTMKK21zZ2lkICJ0d28gb3V0cHV0IGRpcmVjdG9yaWVzPyIKIG1zZ3N0ciAiWndlaSBBdXNnYWJldmVyemVpY2huaXNzZT8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTMxMSBidWlsdGluL2xvZy5jOjIwNTQgYnVpbHRpbi9sb2cuYzoyMDU2IGJ1aWx0aW4vbG9nLmM6MjA2OAorIzogYnVpbHRpbi9sb2cuYzoxNDI0IGJ1aWx0aW4vbG9nLmM6MjE5NyBidWlsdGluL2xvZy5jOjIxOTkgYnVpbHRpbi9sb2cuYzoyMjExCiAjLCBjLWZvcm1hdAotbXNnaWQgIlVua25vd24gY29tbWl0ICVzIgorbXNnaWQgInVua25vd24gY29tbWl0ICVzIgogbXNnc3RyICJVbmJla2FubnRlciBDb21taXQgJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTMyMSBidWlsdGluL25vdGVzLmM6ODk0IGJ1aWx0aW4vdGFnLmM6NTI2CisjOiBidWlsdGluL2xvZy5jOjE0MzQgYnVpbHRpbi9yZXBsYWNlLmM6NTggYnVpbHRpbi9yZXBsYWNlLmM6MjA3CisjOiBidWlsdGluL3JlcGxhY2UuYzoyMTAKICMsIGMtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZi4iCittc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZiIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgYWxzIGfDvGx0aWdlIFJlZmVyZW56IGF1ZmzDtnNlbi4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTMyNgotbXNnaWQgIkNvdWxkIG5vdCBmaW5kIGV4YWN0IG1lcmdlIGJhc2UuIgorIzogYnVpbHRpbi9sb2cuYzoxNDM5Cittc2dpZCAiY291bGQgbm90IGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKIG1zZ3N0ciAiS29ubnRlIGtlaW5lIGV4YWt0ZSBNZXJnZS1CYXNpcyBmaW5kZW4uIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ0MwogbXNnaWQgIiIKLSJGYWlsZWQgdG8gZ2V0IHVwc3RyZWFtLCBpZiB5b3Ugd2FudCB0byByZWNvcmQgYmFzZSBjb21taXQgYXV0b21hdGljYWxseSxcbiIKKyJmYWlsZWQgdG8gZ2V0IHVwc3RyZWFtLCBpZiB5b3Ugd2FudCB0byByZWNvcmQgYmFzZSBjb21taXQgYXV0b21hdGljYWxseSxcbiIKICJwbGVhc2UgdXNlIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG8gdG8gdHJhY2sgYSByZW1vdGUgYnJhbmNoLlxuIgotIk9yIHlvdSBjb3VsZCBzcGVjaWZ5IGJhc2UgY29tbWl0IGJ5IC0tYmFzZT08YmFzZS1jb21taXQtaWQ+IG1hbnVhbGx5LiIKKyJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseSIKIG1zZ3N0ciAiIgogIkZlaGxlciBiZWltIEJlc3RpbW1lbiBkZXMgVXBzdHJlYW0tQnJhbmNoZXMuIFdlbm4gU2llIGRlbiBCYXNpcy1Db21taXRcbiIKICJhdXRvbWF0aXNjaCBzcGVpY2hlcm4gbGFzc2VuIG3DtmNodGVuLCBiZW51dHplbiBTaWUgYml0dGVcbiIKICInZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10bycsIHVtIGVpbmVtIFJlbW90ZS1CcmFuY2ggenUgZm9sZ2VuLlxuIgogIk9kZXIgZ2ViZW4gU2llIGRlbiBCYXNpcy1Db21taXQgbWl0ICctLWJhc2U9PEJhc2lzLUNvbW1pdC1JZD4nIG1hbnVlbGwgYW4uIgogCi0jOiBidWlsdGluL2xvZy5jOjEzNTAKLW1zZ2lkICJGYWlsZWQgdG8gZmluZCBleGFjdCBtZXJnZSBiYXNlIgorIzogYnVpbHRpbi9sb2cuYzoxNDYzCittc2dpZCAiZmFpbGVkIHRvIGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gRmluZGVuIGVpbmVyIGV4YWt0ZW4gTWVyZ2UtQmFzaXMuIgogCi0jOiBidWlsdGluL2xvZy5jOjEzNjEKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ3NAogbXNnaWQgImJhc2UgY29tbWl0IHNob3VsZCBiZSB0aGUgYW5jZXN0b3Igb2YgcmV2aXNpb24gbGlzdCIKIG1zZ3N0ciAiQmFzaXMtQ29tbWl0IHNvbGx0ZSBkZXIgVm9yZ8OkbmdlciBkZXIgUmV2aXNpb25zbGlzdGUgc2Vpbi4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTM2NQorIzogYnVpbHRpbi9sb2cuYzoxNDc4CiBtc2dpZCAiYmFzZSBjb21taXQgc2hvdWxkbid0IGJlIGluIHJldmlzaW9uIGxpc3QiCiBtc2dzdHIgIkJhc2lzLUNvbW1pdCBzb2xsdGUgbmljaHQgaW4gZGVyIFJldmlzaW9uc2xpc3RlIGVudGhhbHRlbiBzZWluLiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDE4CisjOiBidWlsdGluL2xvZy5jOjE1MzEKIG1zZ2lkICJjYW5ub3QgZ2V0IHBhdGNoIGlkIgogbXNnc3RyICJrYW5uIFBhdGNoLUlkIG5pY2h0IGxlc2VuIgogCi0jOiBidWlsdGluL2xvZy5jOjE0NzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTU4MwogbXNnaWQgImZhaWxlZCB0byBpbmZlciByYW5nZS1kaWZmIHJhbmdlcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gQWJsZWl0ZW4gZGVzIHJhbmdlLWRpZmYtQmVyZWljaHMuIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MTUKKyM6IGJ1aWx0aW4vbG9nLmM6MTYyOQogbXNnaWQgInVzZSBbUEFUQ0ggbi9tXSBldmVuIHdpdGggYSBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgIltQQVRDSCBuL21dIGF1Y2ggbWl0IGVpbnplbG5lbSBQYXRjaCB2ZXJ3ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUxOAorIzogYnVpbHRpbi9sb2cuYzoxNjMyCiBtc2dpZCAidXNlIFtQQVRDSF0gZXZlbiB3aXRoIG11bHRpcGxlIHBhdGNoZXMiCiBtc2dzdHIgIltQQVRDSF0gYXVjaCBtaXQgbWVocmVyZW4gUGF0Y2hlcyB2ZXJ3ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyMgorIzogYnVpbHRpbi9sb2cuYzoxNjM2CiBtc2dpZCAicHJpbnQgcGF0Y2hlcyB0byBzdGFuZGFyZCBvdXQiCiBtc2dzdHIgIkF1c2dhYmUgZGVyIFBhdGNoZXMgaW4gU3RhbmRhcmQtQXVzZ2FiZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI0CisjOiBidWlsdGluL2xvZy5jOjE2MzgKIG1zZ2lkICJnZW5lcmF0ZSBhIGNvdmVyIGxldHRlciIKIG1zZ3N0ciAiZWluIERlY2tibGF0dCBlcnpldWdlbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI2CisjOiBidWlsdGluL2xvZy5jOjE2NDAKIG1zZ2lkICJ1c2Ugc2ltcGxlIG51bWJlciBzZXF1ZW5jZSBmb3Igb3V0cHV0IGZpbGUgbmFtZXMiCiBtc2dzdHIgImVpbmZhY2hlIE51bW1lcm5mb2xnZSBmw7xyIGRpZSBOYW1lbiBkZXIgQXVzZ2FiZWRhdGVpZW4gdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MjcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0MQogbXNnaWQgInNmeCIKIG1zZ3N0ciAiRGF0ZWllbmR1bmciCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyOAorIzogYnVpbHRpbi9sb2cuYzoxNjQyCiBtc2dpZCAidXNlIDxzZng+IGluc3RlYWQgb2YgJy5wYXRjaCciCiBtc2dzdHIgIjxEYXRlaWVuZHVuZz4gYW5zdGF0dCAnLnBhdGNoJyB2ZXJ3ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzMAorIzogYnVpbHRpbi9sb2cuYzoxNjQ0CiBtc2dpZCAic3RhcnQgbnVtYmVyaW5nIHBhdGNoZXMgYXQgPG4+IGluc3RlYWQgb2YgMSIKIG1zZ3N0ciAiZGllIE51bW1lcmllcnVuZyBkZXIgUGF0Y2hlcyBiZWkgPG4+IGFuc3RhdHQgYmVpIDEgYmVnaW5uZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzMgorIzogYnVpbHRpbi9sb2cuYzoxNjQ2CiBtc2dpZCAibWFyayB0aGUgc2VyaWVzIGFzIE50aCByZS1yb2xsIgogbXNnc3RyICJkaWUgU2VyaWUgYWxzIG4tdGUgRmFzc3VuZyBrZW5uemVpY2huZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzNAorIzogYnVpbHRpbi9sb2cuYzoxNjQ4CiBtc2dpZCAiVXNlIFtSRkMgUEFUQ0hdIGluc3RlYWQgb2YgW1BBVENIXSIKIG1zZ3N0ciAiW1JGQyBQQVRDSF0gYW5zdGF0dCBbUEFUQ0hdIHZlcndlbmRlbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTM3Ci1tc2dpZCAiVXNlIFs8cHJlZml4Pl0gaW5zdGVhZCBvZiBbUEFUQ0hdIgotbXNnc3RyICJbPFByw6RmaXg+XSBhbnN0YXR0IFtQQVRDSF0gdmVyd2VuZGVuIgorIzogYnVpbHRpbi9sb2cuYzoxNjUxCittc2dpZCAiY292ZXItZnJvbS1kZXNjcmlwdGlvbi1tb2RlIgorbXNnc3RyICJNb2R1cyBmw7xyIEVyc3RlbGx1bmcgZGVzIERlY2tibGF0dGVzIGF1cyBkZXIgQmVzY2hyZWlidW5nIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1MgorbXNnaWQgImdlbmVyYXRlIHBhcnRzIG9mIGEgY292ZXIgbGV0dGVyIGJhc2VkIG9uIGEgYnJhbmNoJ3MgZGVzY3JpcHRpb24iCittc2dzdHIgIiIKKyJFcnpldWdlIFRlaWxlIGRlcyBEZWNrYmxhdHRlcyBiYXNpZXJlbmQgYXVmIGRlciBCZXNjaHJlaWJ1bmcgZGVzIEJyYW5jaGVzIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTQKK21zZ2lkICJVc2UgWzxwcmVmaXg+XSBpbnN0ZWFkIG9mIFtQQVRDSF0iCittc2dzdHIgIk51dHplIFs8UHLDpGZpeD5dIHN0YXR0IFtQQVRDSF0iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1NwogbXNnaWQgInN0b3JlIHJlc3VsdGluZyBmaWxlcyBpbiA8ZGlyPiIKIG1zZ3N0ciAiZXJ6ZXVndGUgRGF0ZWllbiBpbiA8VmVyemVpY2huaXM+IHNwZWljaGVybiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTQzCisjOiBidWlsdGluL2xvZy5jOjE2NjAKIG1zZ2lkICJkb24ndCBzdHJpcC9hZGQgW1BBVENIXSIKIG1zZ3N0ciAiW1BBVENIXSBuaWNodCBlbnRmZXJuZW4vaGluenVmw7xnZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU0NgorIzogYnVpbHRpbi9sb2cuYzoxNjYzCiBtc2dpZCAiZG9uJ3Qgb3V0cHV0IGJpbmFyeSBkaWZmcyIKIG1zZ3N0ciAia2VpbmUgYmluw6RyZW4gVW50ZXJzY2hpZWRlIGF1c2dlYmVuIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDgKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2NQogbXNnaWQgIm91dHB1dCBhbGwtemVybyBoYXNoIGluIEZyb20gaGVhZGVyIgogbXNnc3RyICJIYXNoIG1pdCBOdWxsZW4gaW4gXCJGcm9tXCItSGVhZGVyIGF1c2dlYmVuIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2NwogbXNnaWQgImRvbid0IGluY2x1ZGUgYSBwYXRjaCBtYXRjaGluZyBhIGNvbW1pdCB1cHN0cmVhbSIKIG1zZ3N0ciAiIgogImtlaW5lIFBhdGNoZXMgZWluc2NobGllw59lbiwgZGllIGVpbmVtIENvbW1pdCBpbSBVcHN0cmVhbS1CcmFuY2ggZW50c3ByZWNoZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1MgorIzogYnVpbHRpbi9sb2cuYzoxNjY5CiBtc2dpZCAic2hvdyBwYXRjaCBmb3JtYXQgaW5zdGVhZCBvZiBkZWZhdWx0IChwYXRjaCArIHN0YXQpIgogbXNnc3RyICJQYXRjaGZvcm1hdCBhbnN0YXR0IGRlcyBTdGFuZGFyZHMgYW56ZWlnZW4gKFBhdGNoICsgWnVzYW1tZW5mYXNzdW5nKSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU0CisjOiBidWlsdGluL2xvZy5jOjE2NzEKIG1zZ2lkICJNZXNzYWdpbmciCiBtc2dzdHIgIkUtTWFpbC1FaW5zdGVsbHVuZ2VuIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTUKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MgogbXNnaWQgImhlYWRlciIKIG1zZ3N0ciAiSGVhZGVyIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTYKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MwogbXNnaWQgImFkZCBlbWFpbCBoZWFkZXIiCiBtc2dzdHIgIkUtTWFpbC1IZWFkZXIgaGluenVmw7xnZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NyBidWlsdGluL2xvZy5jOjE1NTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3NCBidWlsdGluL2xvZy5jOjE2NzYKIG1zZ2lkICJlbWFpbCIKIG1zZ3N0ciAiRS1NYWlsIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3NAogbXNnaWQgImFkZCBUbzogaGVhZGVyIgogbXNnc3RyICJcIlRvOlwiLUhlYWRlciBoaW56dWbDvGdlbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU5CisjOiBidWlsdGluL2xvZy5jOjE2NzYKIG1zZ2lkICJhZGQgQ2M6IGhlYWRlciIKIG1zZ3N0ciAiXCJDYzpcIi1IZWFkZXIgaGluenVmw7xnZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2MQorIzogYnVpbHRpbi9sb2cuYzoxNjc4CiBtc2dpZCAiaWRlbnQiCiBtc2dzdHIgIklkZW50IgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjIKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3OQogbXNnaWQgInNldCBGcm9tIGFkZHJlc3MgdG8gPGlkZW50PiAob3IgY29tbWl0dGVyIGlkZW50IGlmIGFic2VudCkiCiBtc2dzdHIgIiIKICJcIkZyb21cIi1BZHJlc3NlIGF1ZiA8SWRlbnQ+IHNldHplbiAob2RlciBJZGVudCBkZXMgQ29tbWl0LUVyc3RlbGxlcnMsIHdlbm4gIgogImZlaGxlbmQpIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjQKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4MQogbXNnaWQgIm1lc3NhZ2UtaWQiCiBtc2dzdHIgIm1lc3NhZ2UtaWQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NQorIzogYnVpbHRpbi9sb2cuYzoxNjgyCiBtc2dpZCAibWFrZSBmaXJzdCBtYWlsIGEgcmVwbHkgdG8gPG1lc3NhZ2UtaWQ+IgogbXNnc3RyICJhdXMgZXJzdGVyIEUtTWFpbCBlaW5lIEFudHdvcnQgenUgPG1lc3NhZ2UtaWQ+IG1hY2hlbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTY2IGJ1aWx0aW4vbG9nLmM6MTU2OQorIzogYnVpbHRpbi9sb2cuYzoxNjgzIGJ1aWx0aW4vbG9nLmM6MTY4NgogbXNnaWQgImJvdW5kYXJ5IgogbXNnc3RyICJHcmVuemUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NworIzogYnVpbHRpbi9sb2cuYzoxNjg0CiBtc2dpZCAiYXR0YWNoIHRoZSBwYXRjaCIKIG1zZ3N0ciAiZGVuIFBhdGNoIGFuaMOkbmdlbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTcwCisjOiBidWlsdGluL2xvZy5jOjE2ODcKIG1zZ2lkICJpbmxpbmUgdGhlIHBhdGNoIgogbXNnc3RyICJkZW4gUGF0Y2ggZGlyZWt0IGluIGRpZSBOYWNocmljaHQgZWluZsO8Z2VuIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzQKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5MQogbXNnaWQgImVuYWJsZSBtZXNzYWdlIHRocmVhZGluZywgc3R5bGVzOiBzaGFsbG93LCBkZWVwIgogbXNnc3RyICJOYWNocmljaHRlbnZlcmtldHR1bmcgYWt0aXZpZXJlbiwgU3RpbGU6IHNoYWxsb3csIGRlZXAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3NgorIzogYnVpbHRpbi9sb2cuYzoxNjkzCiBtc2dpZCAic2lnbmF0dXJlIgogbXNnc3RyICJTaWduYXR1ciIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc3CisjOiBidWlsdGluL2xvZy5jOjE2OTQKIG1zZ2lkICJhZGQgYSBzaWduYXR1cmUiCiBtc2dzdHIgImVpbmUgU2lnbmF0dXIgaGluenVmw7xnZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3OAorIzogYnVpbHRpbi9sb2cuYzoxNjk1CiBtc2dpZCAiYmFzZS1jb21taXQiCiBtc2dzdHIgIkJhc2lzLUNvbW1pdCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc5CisjOiBidWlsdGluL2xvZy5jOjE2OTYKIG1zZ2lkICJhZGQgcHJlcmVxdWlzaXRlIHRyZWUgaW5mbyB0byB0aGUgcGF0Y2ggc2VyaWVzIgogbXNnc3RyICJlcmZvcmRlcmxpY2hlIFJldmlzaW9ucy1JbmZvcm1hdGlvbmVuIGRlciBQYXRjaC1TZXJpZSBoaW56dWbDvGdlbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTgxCisjOiBidWlsdGluL2xvZy5jOjE2OTgKIG1zZ2lkICJhZGQgYSBzaWduYXR1cmUgZnJvbSBhIGZpbGUiCiBtc2dzdHIgImVpbmUgU2lnbmF0dXIgYXVzIGVpbmVyIERhdGVpIGhpbnp1ZsO8Z2VuIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODIKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5OQogbXNnaWQgImRvbid0IHByaW50IHRoZSBwYXRjaCBmaWxlbmFtZXMiCiBtc2dzdHIgImtlaW5lIERhdGVpbmFtZW4gZGVyIFBhdGNoZXMgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4NAorIzogYnVpbHRpbi9sb2cuYzoxNzAxCiBtc2dpZCAic2hvdyBwcm9ncmVzcyB3aGlsZSBnZW5lcmF0aW5nIHBhdGNoZXMiCiBtc2dzdHIgIkZvcnNjaHJpdHRzYW56ZWlnZSB3w6RocmVuZCBkZXIgRXJ6ZXVndW5nIGRlciBQYXRjaGVzIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODUKLW1zZ2lkICJyZXYiCi1tc2dzdHIgIkNvbW1pdCIKLQotIzogYnVpbHRpbi9sb2cuYzoxNTg2CisjOiBidWlsdGluL2xvZy5jOjE3MDMKIG1zZ2lkICJzaG93IGNoYW5nZXMgYWdhaW5zdCA8cmV2PiBpbiBjb3ZlciBsZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgotbXNnc3RyICLDhG5kZXJ1bmdlbiBnZWdlbsO8YmVyIDxDb21taXQ+IGltIERlY2tibGF0dCBvZGVyIGVpbnplbG5lbSBQYXRjaCBhbnplaWdlbiIKK21zZ3N0ciAiIgorIsOEbmRlcnVuZ2VuIGdlZ2Vuw7xiZXIgPENvbW1pdD4gaW0gRGVja2JsYXR0IG9kZXIgZWluemVsbmVtIFBhdGNoIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODkKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwNgogbXNnaWQgInNob3cgY2hhbmdlcyBhZ2FpbnN0IDxyZWZzcGVjPiBpbiBjb3ZlciBsZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgotbXNnc3RyICLDhG5kZXJ1bmdlbiBnZWdlbsO8YmVyIDxSZWZzcGVjPiBpbSBEZWNrYmxhdHQgb2RlciBlaW56ZWxuZW0gUGF0Y2ggYW56ZWlnZW4iCittc2dzdHIgIiIKKyLDhG5kZXJ1bmdlbiBnZWdlbsO8YmVyIDxSZWZzcGVjPiBpbSBEZWNrYmxhdHQgb2RlciBlaW56ZWxuZW0gUGF0Y2ggYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU5MQorIzogYnVpbHRpbi9sb2cuYzoxNzA4CiBtc2dpZCAicGVyY2VudGFnZSBieSB3aGljaCBjcmVhdGlvbiBpcyB3ZWlnaHRlZCIKIG1zZ3N0ciAiUHJvemVudHNhdHogbWl0IHdlbGNoZW0gRXJ6ZXVndW5nIGdld2ljaHRldCB3aXJkIgogCi0jOiBidWlsdGluL2xvZy5jOjE2NjYKKyM6IGJ1aWx0aW4vbG9nLmM6MTc5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGlkZW50IGxpbmU6ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlIElkZW50aWZpa2F0aW9uc3plaWxlOiAlcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjgxCisjOiBidWlsdGluL2xvZy5jOjE4MDcKIG1zZ2lkICItbiBhbmQgLWsgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLW4gdW5kIC1rIHNjaGxpZcOfZW4gc2ljaCBnZWdlbnNlaXRpZyBhdXMuIgogCi0jOiBidWlsdGluL2xvZy5jOjE2ODMKKyM6IGJ1aWx0aW4vbG9nLmM6MTgwOQogbXNnaWQgIi0tc3ViamVjdC1wcmVmaXgvLS1yZmMgYW5kIC1rIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi0tc3ViamVjdC1wcmVmaXgvLS1yZmMgdW5kIC1rIHNjaGxpZcOfZW4gc2ljaCBnZWdlbnNlaXRpZyBhdXMuIgogCi0jOiBidWlsdGluL2xvZy5jOjE2OTEKKyM6IGJ1aWx0aW4vbG9nLmM6MTgxNwogbXNnaWQgIi0tbmFtZS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIkRpZSBPcHRpb24gLS1uYW1lLW9ubHkga2FubiBuaWNodCB2ZXJ3ZW5kZXQgd2VyZGVuLiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjkzCisjOiBidWlsdGluL2xvZy5jOjE4MTkKIG1zZ2lkICItLW5hbWUtc3RhdHVzIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIkRpZSBPcHRpb24gLS1uYW1lLXN0YXR1cyBrYW5uIG5pY2h0IHZlcndlbmRldCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL2xvZy5jOjE2OTUKKyM6IGJ1aWx0aW4vbG9nLmM6MTgyMQogbXNnaWQgIi0tY2hlY2sgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiRGllIE9wdGlvbiAtLWNoZWNrIGthbm4gbmljaHQgdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTcyNworIzogYnVpbHRpbi9sb2cuYzoxODU0CiBtc2dpZCAic3RhbmRhcmQgb3V0cHV0LCBvciBkaXJlY3RvcnksIHdoaWNoIG9uZT8iCiBtc2dzdHIgIlN0YW5kYXJkLUF1c2dhYmUgb2RlciBWZXJ6ZWljaG5pcywgd2VsY2hlcyB2b24gYmVpZGVtPyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNzI5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciCi1tc2dzdHIgIktvbm50ZSBWZXJ6ZWljaG5pcyAnJXMnIG5pY2h0IGVyc3RlbGxlbi4iCi0KLSM6IGJ1aWx0aW4vbG9nLmM6MTgxNgorIzogYnVpbHRpbi9sb2cuYzoxOTU4CiBtc2dpZCAiLS1pbnRlcmRpZmYgcmVxdWlyZXMgLS1jb3Zlci1sZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgogbXNnc3RyICItLWludGVyZGlmZiBlcmZvcmRlcnQgLS1jb3Zlci1sZXR0ZXIgb2RlciBlaW56ZWxuZW4gUGF0Y2guIgogCi0jOiBidWlsdGluL2xvZy5jOjE4MjAKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2MgogbXNnaWQgIkludGVyZGlmZjoiCiBtc2dzdHIgIkludGVyZGlmZjoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgyMQorIzogYnVpbHRpbi9sb2cuYzoxOTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludGVyZGlmZiBhZ2FpbnN0IHYlZDoiCiBtc2dzdHIgIkludGVyZGlmZiBnZWdlbiB2JWQ6IgogCi0jOiBidWlsdGluL2xvZy5jOjE4MjcKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2OQogbXNnaWQgIi0tY3JlYXRpb24tZmFjdG9yIHJlcXVpcmVzIC0tcmFuZ2UtZGlmZiIKIG1zZ3N0ciAiLS1jcmVhdGlvbi1mYWN0b3IgZXJmb3JkZXJ0IC0tcmFuZ2UtZGlmZiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODMxCisjOiBidWlsdGluL2xvZy5jOjE5NzMKIG1zZ2lkICItLXJhbmdlLWRpZmYgcmVxdWlyZXMgLS1jb3Zlci1sZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgogbXNnc3RyICItLXJhbmdlLWRpZmYgZXJmb3JkZXJ0IC0tY292ZXItbGV0dGVyIG9kZXIgZWluemVsbmVuIFBhdGNoLiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODM5CisjOiBidWlsdGluL2xvZy5jOjE5ODEKIG1zZ2lkICJSYW5nZS1kaWZmOiIKIG1zZ3N0ciAiUmFuZ2UtRGlmZjoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg0MAorIzogYnVpbHRpbi9sb2cuYzoxOTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJhbmdlLWRpZmYgYWdhaW5zdCB2JWQ6IgogbXNnc3RyICJSYW5nZS1EaWZmIGdlZ2VuIHYlZDoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg1MQorIzogYnVpbHRpbi9sb2cuYzoxOTkzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHNpZ25hdHVyZSBmaWxlICclcyciCiBtc2dzdHIgIktvbm50ZSBTaWduYXR1ci1EYXRlaSAnJXMnIG5pY2h0IGxlc2VuIgogCi0jOiBidWlsdGluL2xvZy5jOjE4ODcKKyM6IGJ1aWx0aW4vbG9nLmM6MjAyOQogbXNnaWQgIkdlbmVyYXRpbmcgcGF0Y2hlcyIKIG1zZ3N0ciAiRXJ6ZXVnZSBQYXRjaGVzIgogCi0jOiBidWlsdGluL2xvZy5jOjE5MzEKLW1zZ2lkICJGYWlsZWQgdG8gY3JlYXRlIG91dHB1dCBmaWxlcyIKKyM6IGJ1aWx0aW4vbG9nLmM6MjA3MworbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgb3V0cHV0IGZpbGVzIgogbXNnc3RyICJGZWhsZXIgYmVpbSBFcnN0ZWxsZW4gZGVyIEF1c2dhYmVkYXRlaWVuLiIKIAotIzogYnVpbHRpbi9sb2cuYzoxOTg5CisjOiBidWlsdGluL2xvZy5jOjIxMzIKIG1zZ2lkICJnaXQgY2hlcnJ5IFstdl0gWzx1cHN0cmVhbT4gWzxoZWFkPiBbPGxpbWl0Pl1dXSIKIG1zZ3N0ciAiZ2l0IGNoZXJyeSBbLXZdIFs8VXBzdHJlYW0+IFs8QnJhbmNoPiBbPExpbWl0Pl1dXSIKIAotIzogYnVpbHRpbi9sb2cuYzoyMDQzCisjOiBidWlsdGluL2xvZy5jOjIxODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNvdWxkIG5vdCBmaW5kIGEgdHJhY2tlZCByZW1vdGUgYnJhbmNoLCBwbGVhc2Ugc3BlY2lmeSA8dXBzdHJlYW0+IG1hbnVhbGx5LlxuIgpAQCAtMTI4NzcsMTEyICsxNjA3MiwxMTIgQEAKICJLb25udGUgZ2Vmb2xndGVuIFJlbW90ZS1CcmFuY2ggbmljaHQgZmluZGVuLCBiaXR0ZSBnZWJlbiBTaWUgPFVwc3RyZWFtPiAiCiAibWFudWVsbCBhbi5cbiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjQ2OQorIzogYnVpbHRpbi9scy1maWxlcy5jOjQ3MAogbXNnaWQgImdpdCBscy1maWxlcyBbPG9wdGlvbnM+XSBbPGZpbGU+Li4uXSIKIG1zZ3N0ciAiZ2l0IGxzLWZpbGVzIFs8T3B0aW9uZW4+XSBbPERhdGVpPi4uLl0iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjYKIG1zZ2lkICJpZGVudGlmeSB0aGUgZmlsZSBzdGF0dXMgd2l0aCB0YWdzIgogbXNnc3RyICJkZW4gRGF0ZWlzdGF0dXMgbWl0IFRhZ3MgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjcKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjgKIG1zZ2lkICJ1c2UgbG93ZXJjYXNlIGxldHRlcnMgZm9yICdhc3N1bWUgdW5jaGFuZ2VkJyBmaWxlcyIKIG1zZ3N0ciAiIgogIktsZWluYnVjaHN0YWJlbiBmw7xyIERhdGVpZW4gbWl0ICdhc3N1bWUgdW5jaGFuZ2VkJyBNYXJraWVydW5nIHZlcndlbmRlbiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUyOQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMAogbXNnaWQgInVzZSBsb3dlcmNhc2UgbGV0dGVycyBmb3IgJ2ZzbW9uaXRvciBjbGVhbicgZmlsZXMiCiBtc2dzdHIgIktsZWluYnVjaHN0YWJlbiBmw7xyICdmc21vbml0b3IgY2xlYW4nIERhdGVpZW4gdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTMxCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTMyCiBtc2dpZCAic2hvdyBjYWNoZWQgZmlsZXMgaW4gdGhlIG91dHB1dCAoZGVmYXVsdCkiCiBtc2dzdHIgInp3aXNjaGVuZ2VzcGVpY2hlcnRlIERhdGVpZW4gaW4gZGVyIEF1c2dhYmUgYW56ZWlnZW4gKFN0YW5kYXJkKSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNAogbXNnaWQgInNob3cgZGVsZXRlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJlbnRmZXJudGUgRGF0ZWllbiBpbiBkZXIgQXVzZ2FiZSBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNgogbXNnaWQgInNob3cgbW9kaWZpZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAiZ2XDpG5kZXJ0ZSBEYXRlaWVuIGluIGRlciBBdXNnYWJlIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTM3CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTM4CiBtc2dpZCAic2hvdyBvdGhlciBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJzb25zdGlnZSBEYXRlaWVuIGluIGRlciBBdXNnYWJlIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTM5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQwCiBtc2dpZCAic2hvdyBpZ25vcmVkIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgImlnbm9yaWVydGUgRGF0ZWllbiBpbiBkZXIgQXVzZ2FiZSBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MwogbXNnaWQgInNob3cgc3RhZ2VkIGNvbnRlbnRzJyBvYmplY3QgbmFtZSBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICIiCiAiT2JqZWt0bmFtZW4gdm9uIEluaGFsdGVuLCBkaWUgenVtIENvbW1pdCB2b3JnZW1lcmt0IHNpbmQsIGluIGRlciBBdXNnYWJlICIKICJhbnplaWdlbiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0NAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0NQogbXNnaWQgInNob3cgZmlsZXMgb24gdGhlIGZpbGVzeXN0ZW0gdGhhdCBuZWVkIHRvIGJlIHJlbW92ZWQiCiBtc2dzdHIgIkRhdGVpZW4gaW0gRGF0ZWlzeXN0ZW0sIGRpZSBnZWzDtnNjaHQgd2VyZGVuIG3DvHNzZW4sIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ2CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ3CiBtc2dpZCAic2hvdyAnb3RoZXInIGRpcmVjdG9yaWVzJyBuYW1lcyBvbmx5IgogbXNnc3RyICJudXIgTmFtZW4gdm9uICdzb25zdGlnZW4nIFZlcnplaWNobmlzc2VuIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ4CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ5CiBtc2dpZCAic2hvdyBsaW5lIGVuZGluZ3Mgb2YgZmlsZXMiCiBtc2dzdHIgIlplaWxlbmVuZGVuIHZvbiBEYXRlaWVuIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTUwCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTUxCiBtc2dpZCAiZG9uJ3Qgc2hvdyBlbXB0eSBkaXJlY3RvcmllcyIKIG1zZ3N0ciAia2VpbmUgbGVlcmVuIFZlcnplaWNobmlzc2UgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTMKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTQKIG1zZ2lkICJzaG93IHVubWVyZ2VkIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgIm5pY2h0IHp1c2FtbWVuZ2Vmw7xocnRlIERhdGVpZW4gaW4gZGVyIEF1c2dhYmUgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTYKIG1zZ2lkICJzaG93IHJlc29sdmUtdW5kbyBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiJ3Jlc29sdmUtdW5kbycgSW5mb3JtYXRpb25lbiBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1OAogbXNnaWQgInNraXAgZmlsZXMgbWF0Y2hpbmcgcGF0dGVybiIKIG1zZ3N0ciAiRGF0ZWllbiBhdXNsYXNzZW4sIGRpZSBlaW5lbSBNdXN0ZXIgZW50c3ByZWNoZW4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjAKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjEKIG1zZ2lkICJleGNsdWRlIHBhdHRlcm5zIGFyZSByZWFkIGZyb20gPGZpbGU+IgogbXNnc3RyICJNdXN0ZXIsIGdlbGVzZW4gdm9uIDxEYXRlaT4sIGF1c3NjaGxpZcOfZW4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjMKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjQKIG1zZ2lkICJyZWFkIGFkZGl0aW9uYWwgcGVyLWRpcmVjdG9yeSBleGNsdWRlIHBhdHRlcm5zIGluIDxmaWxlPiIKIG1zZ3N0ciAienVzw6R0emxpY2hlIHByby1WZXJ6ZWljaG5pcyBBdXNjaGx1c3NtdXN0ZXIgYXVzIDxEYXRlaT4gYXVzbGVzZW4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjYKIG1zZ2lkICJhZGQgdGhlIHN0YW5kYXJkIGdpdCBleGNsdXNpb25zIgogbXNnc3RyICJkaWUgc3RhbmRhcmRtw6TDn2lnZW4gR2l0LUF1c3NjaGzDvHNzZSBoaW56dWbDvGdlbiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU2OQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MAogbXNnaWQgIm1ha2UgdGhlIG91dHB1dCByZWxhdGl2ZSB0byB0aGUgcHJvamVjdCB0b3AgZGlyZWN0b3J5IgogbXNnc3RyICJBdXNnYWJlIHJlbGF0aXYgenVtIFByb2pla3R2ZXJ6ZWljaG5pcyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MwogbXNnaWQgInJlY3Vyc2UgdGhyb3VnaCBzdWJtb2R1bGVzIgogbXNnc3RyICJSZWt1cnNpb24gaW4gU3VibW9kdWxlbiBkdXJjaGbDvGhyZW4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzQKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzUKIG1zZ2lkICJpZiBhbnkgPGZpbGU+IGlzIG5vdCBpbiB0aGUgaW5kZXgsIHRyZWF0IHRoaXMgYXMgYW4gZXJyb3IiCiBtc2dzdHIgImFscyBGZWhsZXIgYmVoYW5kZWxuLCB3ZW5uIHNpY2ggZWluZSA8RGF0ZWk+IG5pY2h0IGltIEluZGV4IGJlZmluZGV0IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTc1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc2CiBtc2dpZCAidHJlZS1pc2giCiBtc2dzdHIgIkNvbW1pdC1SZWZlcmVueiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NwogbXNnaWQgInByZXRlbmQgdGhhdCBwYXRocyByZW1vdmVkIHNpbmNlIDx0cmVlLWlzaD4gYXJlIHN0aWxsIHByZXNlbnQiCiBtc2dzdHIgIiIKICJ2b3JnZWJlbiwgZGFzcyBQZmFkZSwgZGllIHNlaXQgPENvbW1pdC1SZWZlcmVuej4gZ2Vsw7ZzY2h0IHd1cmRlbiwgaW1tZXIgbm9jaCAiCiAidm9yaGFuZGVuIHNpbmQiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzgKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzkKIG1zZ2lkICJzaG93IGRlYnVnZ2luZyBkYXRhIgogbXNnc3RyICJBdXNnYWJlbiB6dXIgRmVobGVyc3VjaGUgYW56ZWlnZW4iCiAKQEAgLTEzMDAwLDcgKzE2MTk1LDcgQEAKIG1zZ2lkICJkbyBub3QgcHJpbnQgcmVtb3RlIFVSTCIKIG1zZ3N0ciAiVVJMIGRlcyBSZW1vdGUtUmVwb3NpdG9yaWVzIG5pY2h0IGF1c2dlYmVuIgogCi0jOiBidWlsdGluL2xzLXJlbW90ZS5jOjYwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjIgYnVpbHRpbi9yZWJhc2UuYzo5MDMKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjAgYnVpbHRpbi9scy1yZW1vdGUuYzo2MiBidWlsdGluL3JlYmFzZS5jOjE1NjEKIG1zZ2lkICJleGVjIgogbXNnc3RyICJQcm9ncmFtbSIKIApAQCAtMTMwMjQsMTMgKzE2MjE5LDEzIEBACiBtc2dpZCAidGFrZSB1cmwuPGJhc2U+Lmluc3RlYWRPZiBpbnRvIGFjY291bnQiCiBtc2dzdHIgInVybC48QmFzaXM+Lmluc3RlYWRPZiBiZXLDvGNrc2ljaHRpZ2VuIgogCi0jOiBidWlsdGluL2xzLXJlbW90ZS5jOjczCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjcyCiBtc2dpZCAiZXhpdCB3aXRoIGV4aXQgY29kZSAyIGlmIG5vIG1hdGNoaW5nIHJlZnMgYXJlIGZvdW5kIgogbXNnc3RyICIiCi0ibWl0IFLDvGNra2VocndlcnQgMiBiZWVuZGVuLCB3ZW5uIGtlaW5lIMO8YmVyZWluc3RpbW1lbmRlbiBSZWZlcmVuemVuXG4iCisibWl0IEV4aXQtQ29kZSAyIGJlZW5kZW4sIHdlbm4ga2VpbmUgw7xiZXJlaW5zdGltbWVuZGVuIFJlZmVyZW56ZW5cbiIKICJnZWZ1bmRlbiB3dXJkZW4iCiAKLSM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzYKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzUKIG1zZ2lkICJzaG93IHVuZGVybHlpbmcgcmVmIGluIGFkZGl0aW9uIHRvIHRoZSBvYmplY3QgcG9pbnRlZCBieSBpdCIKIG1zZ3N0ciAienVzw6R0emxpY2ggenVtIE9iamVrdCBkaWUgZGFyYXVmIHZlcndlaXNlbmRlbiBSZWZlcmVuemVuIGFuemVpZ2VuIgogCkBAIC0xMzA3NywyNjUgKzE2MjcyLDI4NiBAQAogbXNnaWQgImVtcHR5IG1ib3g6ICclcyciCiBtc2dzdHIgIkxlZXJlIG1ib3g6ICclcyciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1MgorIzogYnVpbHRpbi9tZXJnZS5jOjU1CiBtc2dpZCAiZ2l0IG1lcmdlIFs8b3B0aW9ucz5dIFs8Y29tbWl0Pi4uLl0iCiBtc2dzdHIgImdpdCBtZXJnZSBbPE9wdGlvbmVuPl0gWzxDb21taXQ+Li4uXSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjUzCisjOiBidWlsdGluL21lcmdlLmM6NTYKIG1zZ2lkICJnaXQgbWVyZ2UgLS1hYm9ydCIKIG1zZ3N0ciAiZ2l0IG1lcmdlIC0tYWJvcnQiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1NAorIzogYnVpbHRpbi9tZXJnZS5jOjU3CiBtc2dpZCAiZ2l0IG1lcmdlIC0tY29udGludWUiCiBtc2dzdHIgImdpdCBtZXJnZSAtLWNvbnRpbnVlIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTExCisjOiBidWlsdGluL21lcmdlLmM6MTE5CiBtc2dpZCAic3dpdGNoIGBtJyByZXF1aXJlcyBhIHZhbHVlIgogbXNnc3RyICJTY2hhbHRlciAnbScgZXJmb3JkZXJ0IGVpbmVuIFdlcnQuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTc3CisjOiBidWlsdGluL21lcmdlLmM6MTQyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIHJlcXVpcmVzIGEgdmFsdWUiCittc2dzdHIgIk9wdGlvbiBgJXMnIGVyZm9yZGVydCBlaW5lbiBXZXJ0LiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCBtZXJnZSBzdHJhdGVneSAnJXMnLlxuIgogbXNnc3RyICJLb25udGUgTWVyZ2UtU3RyYXRlZ2llICclcycgbmljaHQgZmluZGVuLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTc4CisjOiBidWlsdGluL21lcmdlLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF2YWlsYWJsZSBzdHJhdGVnaWVzIGFyZToiCiBtc2dzdHIgIlZlcmbDvGdiYXJlIFN0cmF0ZWdpZW4gc2luZDoiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxODMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXZhaWxhYmxlIGN1c3RvbSBzdHJhdGVnaWVzIGFyZToiCiBtc2dzdHIgIlZlcmbDvGdiYXJlIGJlbnV0emVyZGVmaW5pZXJ0ZSBTdHJhdGVnaWVuIHNpbmQ6IgogCi0jOiBidWlsdGluL21lcmdlLmM6MjM0IGJ1aWx0aW4vcHVsbC5jOjE0MworIzogYnVpbHRpbi9tZXJnZS5jOjI0NSBidWlsdGluL3B1bGwuYzoxMzIKIG1zZ2lkICJkbyBub3Qgc2hvdyBhIGRpZmZzdGF0IGF0IHRoZSBlbmQgb2YgdGhlIG1lcmdlIgogbXNnc3RyICJrZWluZSBadXNhbW1lbmZhc3N1bmcgZGVyIFVudGVyc2NoaWVkZSBhbSBTY2hsdXNzIGRlcyBNZXJnZXMgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzcgYnVpbHRpbi9wdWxsLmM6MTQ2CisjOiBidWlsdGluL21lcmdlLmM6MjQ4IGJ1aWx0aW4vcHVsbC5jOjEzNQogbXNnaWQgInNob3cgYSBkaWZmc3RhdCBhdCB0aGUgZW5kIG9mIHRoZSBtZXJnZSIKIG1zZ3N0ciAiZWluZSBadXNhbW1lbmZhc3N1bmcgZGVyIFVudGVyc2NoaWVkZSBhbSBTY2hsdXNzIGRlcyBNZXJnZXMgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzggYnVpbHRpbi9wdWxsLmM6MTQ5CisjOiBidWlsdGluL21lcmdlLmM6MjQ5IGJ1aWx0aW4vcHVsbC5jOjEzOAogbXNnaWQgIihzeW5vbnltIHRvIC0tc3RhdCkiCiBtc2dzdHIgIihTeW5vbnltIGbDvHIgLS1zdGF0KSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0MCBidWlsdGluL3B1bGwuYzoxNTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTEgYnVpbHRpbi9wdWxsLmM6MTQxCiBtc2dpZCAiYWRkIChhdCBtb3N0IDxuPikgZW50cmllcyBmcm9tIHNob3J0bG9nIHRvIG1lcmdlIGNvbW1pdCBtZXNzYWdlIgogbXNnc3RyICIiCiAiKGjDtmNoc3RlbnMgPG4+KSBFaW50csOkZ2Ugdm9uIFwic2hvcnRsb2dcIiB6dXIgQmVzY2hyZWlidW5nIGRlcyBNZXJnZS1Db21taXRzICIKICJoaW56dWbDvGdlbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0MyBidWlsdGluL3B1bGwuYzoxNTgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTQgYnVpbHRpbi9wdWxsLmM6MTQ3CiBtc2dpZCAiY3JlYXRlIGEgc2luZ2xlIGNvbW1pdCBpbnN0ZWFkIG9mIGRvaW5nIGEgbWVyZ2UiCiBtc2dzdHIgImVpbmVuIGVpbnplbG5lbiBDb21taXQgYW5zdGF0dCBlaW5lcyBNZXJnZXMgZXJ6ZXVnZW4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDUgYnVpbHRpbi9wdWxsLmM6MTYxCisjOiBidWlsdGluL21lcmdlLmM6MjU2IGJ1aWx0aW4vcHVsbC5jOjE1MAogbXNnaWQgInBlcmZvcm0gYSBjb21taXQgaWYgdGhlIG1lcmdlIHN1Y2NlZWRzIChkZWZhdWx0KSIKIG1zZ3N0ciAiZWluZW4gQ29tbWl0IGR1cmNoZsO8aHJlbiwgd2VubiBkZXIgTWVyZ2UgZXJmb2xncmVpY2ggd2FyIChTdGFuZGFyZCkiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDcgYnVpbHRpbi9wdWxsLmM6MTY0CisjOiBidWlsdGluL21lcmdlLmM6MjU4IGJ1aWx0aW4vcHVsbC5jOjE1MwogbXNnaWQgImVkaXQgbWVzc2FnZSBiZWZvcmUgY29tbWl0dGluZyIKIG1zZ3N0ciAiQmVhcmJlaXR1bmcgZGVyIEJlc2NocmVpYnVuZyB2b3IgZGVtIENvbW1pdCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0OAorIzogYnVpbHRpbi9tZXJnZS5jOjI2MAogbXNnaWQgImFsbG93IGZhc3QtZm9yd2FyZCAoZGVmYXVsdCkiCiBtc2dzdHIgIlZvcnNwdWxlbiBlcmxhdWJlbiAoU3RhbmRhcmQpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjUwIGJ1aWx0aW4vcHVsbC5jOjE3MAorIzogYnVpbHRpbi9tZXJnZS5jOjI2MiBidWlsdGluL3B1bGwuYzoxNjAKIG1zZ2lkICJhYm9ydCBpZiBmYXN0LWZvcndhcmQgaXMgbm90IHBvc3NpYmxlIgogbXNnc3RyICJhYmJyZWNoZW4sIHdlbm4ga2VpbiBWb3JzcHVsZW4gbcO2Z2xpY2ggaXN0IgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU0IGJ1aWx0aW4vcHVsbC5jOjE3MworIzogYnVpbHRpbi9tZXJnZS5jOjI2NiBidWlsdGluL3B1bGwuYzoxNjMKIG1zZ2lkICJ2ZXJpZnkgdGhhdCB0aGUgbmFtZWQgY29tbWl0IGhhcyBhIHZhbGlkIEdQRyBzaWduYXR1cmUiCiBtc2dzdHIgImRlbiBnZW5hbm50ZW4gQ29tbWl0IGF1ZiBlaW5lIGfDvGx0aWdlIEdQRy1TaWduYXR1ciDDvGJlcnByw7xmZW4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTUgYnVpbHRpbi9ub3Rlcy5jOjc4NCBidWlsdGluL3B1bGwuYzoxNzcKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTE2IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4NiBidWlsdGluL3JldmVydC5jOjExMAorIzogYnVpbHRpbi9tZXJnZS5jOjI2NyBidWlsdGluL25vdGVzLmM6Nzg3IGJ1aWx0aW4vcHVsbC5jOjE2NworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjAgYnVpbHRpbi9yZWJhc2UuYzoxNTc1IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0CiBtc2dpZCAic3RyYXRlZ3kiCiBtc2dzdHIgIlN0cmF0ZWdpZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NiBidWlsdGluL3B1bGwuYzoxNzgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjggYnVpbHRpbi9wdWxsLmM6MTY4CiBtc2dpZCAibWVyZ2Ugc3RyYXRlZ3kgdG8gdXNlIgogbXNnc3RyICJ6dSB2ZXJ3ZW5kZW5kZSBNZXJnZS1TdHJhdGVnaWUiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTcgYnVpbHRpbi9wdWxsLmM6MTgxCisjOiBidWlsdGluL21lcmdlLmM6MjY5IGJ1aWx0aW4vcHVsbC5jOjE3MQogbXNnaWQgIm9wdGlvbj12YWx1ZSIKIG1zZ3N0ciAiT3B0aW9uPVdlcnQiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTggYnVpbHRpbi9wdWxsLmM6MTgyCisjOiBidWlsdGluL21lcmdlLmM6MjcwIGJ1aWx0aW4vcHVsbC5jOjE3MgogbXNnaWQgIm9wdGlvbiBmb3Igc2VsZWN0ZWQgbWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgIk9wdGlvbiBmw7xyIGF1c2dld8OkaGx0ZSBNZXJnZS1TdHJhdGVnaWUiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzIKIG1zZ2lkICJtZXJnZSBjb21taXQgbWVzc2FnZSAoZm9yIGEgbm9uLWZhc3QtZm9yd2FyZCBtZXJnZSkiCiBtc2dzdHIgIiIKICJDb21taXQtQmVzY2hyZWlidW5nIHp1c2FtbWVuZsO8aHJlbiAoZsO8ciBlaW5lbiBNZXJnZSwgZGVyIGtlaW4gVm9yc3B1bGVuIHdhcikiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzkKIG1zZ2lkICJhYm9ydCB0aGUgY3VycmVudCBpbi1wcm9ncmVzcyBtZXJnZSIKIG1zZ3N0ciAiZGVuIHNpY2ggaW0gR2FuZ2UgYmVmaW5kbGljaGVuIE1lcmdlIGFiYnJlY2hlbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI2OQorIzogYnVpbHRpbi9tZXJnZS5jOjI4MQorbXNnaWQgIi0tYWJvcnQgYnV0IGxlYXZlIGluZGV4IGFuZCB3b3JraW5nIHRyZWUgYWxvbmUiCittc2dzdHIgIi0tYWJvcnQsIGFiZXIgSW5kZXggdW5kIEFyYmVpdHN2ZXJ6ZWljaG5pcyB1bnZlcsOkbmRlcnQgbGFzc2VuIgorCisjOiBidWlsdGluL21lcmdlLmM6MjgzCiBtc2dpZCAiY29udGludWUgdGhlIGN1cnJlbnQgaW4tcHJvZ3Jlc3MgbWVyZ2UiCiBtc2dzdHIgImRlbiBzaWNoIGltIEdhbmdlIGJlZmluZGxpY2hlbiBNZXJnZSBmb3J0c2V0emVuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjcxIGJ1aWx0aW4vcHVsbC5jOjE4OQorIzogYnVpbHRpbi9tZXJnZS5jOjI4NSBidWlsdGluL3B1bGwuYzoxNzkKIG1zZ2lkICJhbGxvdyBtZXJnaW5nIHVucmVsYXRlZCBoaXN0b3JpZXMiCiBtc2dzdHIgImVybGF1YmUgZGFzIFp1c2FtbWVuZsO8aHJlbiB2b24gbmljaHQgenVzYW1tZW5ow6RuZ2VuZGVuIEhpc3RvcmllbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI3NwotbXNnaWQgInZlcmlmeSBjb21taXQtbXNnIGhvb2siCi1tc2dzdHIgImNvbW1pdC1tc2cgSG9vayDDvGJlcnByw7xmZW4iCisjOiBidWlsdGluL21lcmdlLmM6MjkxCittc2dpZCAiYnlwYXNzIHByZS1tZXJnZS1jb21taXQgYW5kIGNvbW1pdC1tc2cgaG9va3MiCittc2dzdHIgIkhvb2tzIHByZS1tZXJnZS1jb21taXQgdW5kIGNvbW1pdC1tc2cgdW1nZWhlbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMwMgorIzogYnVpbHRpbi9tZXJnZS5jOjMwOAogbXNnaWQgImNvdWxkIG5vdCBydW4gc3Rhc2guIgogbXNnc3RyICJLb25udGUgXCJzdGFzaFwiIG5pY2h0IGF1c2bDvGhyZW4uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzA3CisjOiBidWlsdGluL21lcmdlLmM6MzEzCiBtc2dpZCAic3Rhc2ggZmFpbGVkIgogbXNnc3RyICJcInN0YXNoXCIgZmVobGdlc2NobGFnZW4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozMTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMTgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0OiAlcyIKIG1zZ3N0ciAia2VpbiBnw7xsdGlnZXMgT2JqZWt0OiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMzNCBidWlsdGluL21lcmdlLmM6MzUxCisjOiBidWlsdGluL21lcmdlLmM6MzQwIGJ1aWx0aW4vbWVyZ2UuYzozNTcKIG1zZ2lkICJyZWFkLXRyZWUgZmFpbGVkIgogbXNnc3RyICJyZWFkLXRyZWUgZmVobGdlc2NobGFnZW4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozODEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozODcKIG1zZ2lkICIgKG5vdGhpbmcgdG8gc3F1YXNoKSIKIG1zZ3N0ciAiIChuaWNodHMgenUgcXVldHNjaGVuKSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjM5MgorIzogYnVpbHRpbi9tZXJnZS5jOjM5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJTcXVhc2ggY29tbWl0IC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCiBtc2dzdHIgIlF1ZXRzY2hlIENvbW1pdCAtLSBIRUFEIHdpcmQgbmljaHQgYWt0dWFsaXNpZXJ0XG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo0NDIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo0NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gbWVyZ2UgbWVzc2FnZSAtLSBub3QgdXBkYXRpbmcgSEVBRFxuIgogbXNnc3RyICJLZWluZSBNZXJnZS1Db21taXQtQmVzY2hyZWlidW5nIC0tIEhFQUQgd2lyZCBuaWNodCBha3R1YWxpc2llcnRcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjQ5MworIzogYnVpbHRpbi9tZXJnZS5jOjQ5OQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgY29tbWl0IgogbXNnc3RyICInJXMnIHplaWd0IGF1ZiBrZWluZW4gQ29tbWl0IgogCi0jOiBidWlsdGluL21lcmdlLmM6NTgwCisjOiBidWlsdGluL21lcmdlLmM6NTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCBicmFuY2guJXMubWVyZ2VvcHRpb25zIHN0cmluZzogJXMiCiBtc2dzdHIgIlVuZ8O8bHRpZ2VyIGJyYW5jaC4lcy5tZXJnZW9wdGlvbnMgU3RyaW5nOiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjcwMQorIzogYnVpbHRpbi9tZXJnZS5jOjcwOAogbXNnaWQgIk5vdCBoYW5kbGluZyBhbnl0aGluZyBvdGhlciB0aGFuIHR3byBoZWFkcyBtZXJnZS4iCiBtc2dzdHIgIkVzIHdpcmQgbnVyIGRlciBNZXJnZSB2b24gendlaSBCcmFuY2hlcyBiZWhhbmRlbHQuIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzE1CisjOiBidWlsdGluL21lcmdlLmM6NzIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gb3B0aW9uIGZvciBtZXJnZS1yZWN1cnNpdmU6IC1YJXMiCiBtc2dzdHIgIlVuYmVrYW5udGUgT3B0aW9uIGbDvHIgbWVyZ2UtcmVjdXJzaXZlOiAtWCVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzMwCisjOiBidWlsdGluL21lcmdlLmM6NzM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSAlcyIKIG1zZ3N0ciAia29ubnRlICVzIG5pY2h0IHNjaHJlaWJlbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjc4MgorIzogYnVpbHRpbi9tZXJnZS5jOjc4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVhZCBmcm9tICclcyciCiBtc2dzdHIgImtvbm50ZSBuaWNodCB2b24gJyVzJyBsZXNlbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjc5MQorIzogYnVpbHRpbi9tZXJnZS5jOjc5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgY29tbWl0dGluZyBtZXJnZTsgdXNlICdnaXQgY29tbWl0JyB0byBjb21wbGV0ZSB0aGUgbWVyZ2UuXG4iCiBtc2dzdHIgIiIKICJNZXJnZSB3dXJkZSBuaWNodCBjb21taXR0ZXQ7IGJlbnV0emVuIFNpZSAnZ2l0IGNvbW1pdCcsIHVtIGRlbiBNZXJnZSAiCiAiYWJ6dXNjaGxpZcOfZW4uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTcKLSMsIGMtZm9ybWF0CisjOiBidWlsdGluL21lcmdlLmM6ODA0CiBtc2dpZCAiIgogIlBsZWFzZSBlbnRlciBhIGNvbW1pdCBtZXNzYWdlIHRvIGV4cGxhaW4gd2h5IHRoaXMgbWVyZ2UgaXMgbmVjZXNzYXJ5LFxuIgogImVzcGVjaWFsbHkgaWYgaXQgbWVyZ2VzIGFuIHVwZGF0ZWQgdXBzdHJlYW0gaW50byBhIHRvcGljIGJyYW5jaC5cbiIKICJcbiIKLSJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBpZ25vcmVkLCBhbmQgYW4gZW1wdHkgbWVzc2FnZSBhYm9ydHNcbiIKLSJ0aGUgY29tbWl0LlxuIgogbXNnc3RyICIiCiAiQml0dGUgZ2ViZW4gU2llIGVpbmUgQ29tbWl0LUJlc2NocmVpYnVuZyBlaW4sIHVtIHp1IGVya2zDpHJlbiwgd2FydW0gZGllc2VyXG4iCiAiTWVyZ2UgZXJmb3JkZXJsaWNoIGlzdCwgaW5zYmVzb25kZXJlIHdlbm4gZXMgZWluZW4gYWt0dWFsaXNpZXJ0ZW5cbiIKICJVcHN0cmVhbS1CcmFuY2ggbWl0IGVpbmVtIFRoZW1hLUJyYW5jaCB6dXNhbW1lbmbDvGhydC5cbiIKICJcbiIKLSJaZWlsZW4gYmVnaW5uZW5kIG1pdCAnJWMnIHdlcmRlbiBpZ25vcmllcnQsIHVuZCBlaW5lIGxlZXJlIEJlc2NocmVpYnVuZ1xuIgotImJyaWNodCBkZW4gQ29tbWl0IGFiLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6ODMzCisjOiBidWlsdGluL21lcmdlLmM6ODA5Cittc2dpZCAiQW4gZW1wdHkgbWVzc2FnZSBhYm9ydHMgdGhlIGNvbW1pdC5cbiIKK21zZ3N0ciAiRWluZSBsZWVyZSBDb21taXQtQmVzY2hyZWlidW5nIGJyaWNodCBkZW4gQ29tbWl0IGFiLlxuIgorCisjOiBidWlsdGluL21lcmdlLmM6ODEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBpZ25vcmVkLCBhbmQgYW4gZW1wdHkgbWVzc2FnZSBhYm9ydHNcbiIKKyJ0aGUgY29tbWl0LlxuIgorbXNnc3RyICIiCisiWmVpbGVuLCBkaWUgbWl0ICclYycgYmVnaW5uZW4sIHdlcmRlbiBpZ25vcmllcnQsXG4iCisidW5kIGVpbmUgbGVlcmUgQmVzY2hyZWlidW5nIGJyaWNodCBkZW4gQ29tbWl0IGFiLlxuIgorCisjOiBidWlsdGluL21lcmdlLmM6ODY1CiBtc2dpZCAiRW1wdHkgY29tbWl0IG1lc3NhZ2UuIgogbXNnc3RyICJMZWVyZSBDb21taXQtQmVzY2hyZWlidW5nIgogCi0jOiBidWlsdGluL21lcmdlLmM6ODUyCisjOiBidWlsdGluL21lcmdlLmM6ODgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIldvbmRlcmZ1bC5cbiIKIG1zZ3N0ciAiV3VuZGVyYmFyLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTA1CisjOiBidWlsdGluL21lcmdlLmM6OTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG9tYXRpYyBtZXJnZSBmYWlsZWQ7IGZpeCBjb25mbGljdHMgYW5kIHRoZW4gY29tbWl0IHRoZSByZXN1bHQuXG4iCiBtc2dzdHIgIiIKICJBdXRvbWF0aXNjaGVyIE1lcmdlIGZlaGxnZXNjaGxhZ2VuOyBiZWhlYmVuIFNpZSBkaWUgS29uZmxpa3RlIHVuZCBjb21taXR0ZW4gIgogIlNpZSBkYW5uIGRhcyBFcmdlYm5pcy5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjk0NAorIzogYnVpbHRpbi9tZXJnZS5jOjk4MAogbXNnaWQgIk5vIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAiU2llIGJlZmluZGVuIHNpY2ggYXVmIGtlaW5lbSBCcmFuY2guIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ2CisjOiBidWlsdGluL21lcmdlLmM6OTgyCiBtc2dpZCAiTm8gcmVtb3RlIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJLZWluIFJlbW90ZS1SZXBvc2l0b3J5IGbDvHIgZGVuIGFrdHVlbGxlbiBCcmFuY2guIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ4CisjOiBidWlsdGluL21lcmdlLmM6OTg0CiBtc2dpZCAiTm8gZGVmYXVsdCB1cHN0cmVhbSBkZWZpbmVkIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICIiCiAiRXMgaXN0IGtlaW4gU3RhbmRhcmQtVXBzdHJlYW0tQnJhbmNoIGbDvHIgZGVuIGFrdHVlbGxlbiBCcmFuY2ggZGVmaW5pZXJ0LiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjk1MworIzogYnVpbHRpbi9tZXJnZS5jOjk4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJObyByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIGZvciAlcyBmcm9tICVzIgogbXNnc3RyICJLZWluIFJlbW90ZS1UcmFja2luZy1CcmFuY2ggZsO8ciAlcyB2b24gJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDEwCisjOiBidWlsdGluL21lcmdlLmM6MTA0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgdmFsdWUgJyVzJyBpbiBlbnZpcm9ubWVudCAnJXMnIgogbXNnc3RyICJGZWhsZXJoYWZ0ZXIgV2VydCAnJXMnIGluIFVtZ2VidW5nc3ZhcmlhYmxlICclcyciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTEzCisjOiBidWlsdGluL21lcmdlLmM6MTE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJub3Qgc29tZXRoaW5nIHdlIGNhbiBtZXJnZSBpbiAlczogJXMiCiBtc2dzdHIgIm5pY2h0cyB3YXMgd2lyIGluICVzIHp1c2FtbWVuZsO8aHJlbiBrw7ZubmVuOiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjExNDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTgzCiBtc2dpZCAibm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UiCiBtc2dzdHIgIm5pY2h0cyB3YXMgd2lyIHp1c2FtbWVuZsO8aHJlbiBrw7ZubmVuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI1MAorIzogYnVpbHRpbi9tZXJnZS5jOjEyODYKIG1zZ2lkICItLWFib3J0IGV4cGVjdHMgbm8gYXJndW1lbnRzIgogbXNnc3RyICItLWFib3J0IGFremVwdGllcnQga2VpbmUgQXJndW1lbnRlIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI1NAorIzogYnVpbHRpbi9tZXJnZS5jOjEyOTAKIG1zZ2lkICJUaGVyZSBpcyBubyBtZXJnZSB0byBhYm9ydCAoTUVSR0VfSEVBRCBtaXNzaW5nKS4iCiBtc2dzdHIgIkVzIGdpYnQga2VpbmVuIE1lcmdlIGFienVicmVjaGVuIChNRVJHRV9IRUFEIGZlaGx0KSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNjYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjk5Cittc2dpZCAiLS1xdWl0IGV4cGVjdHMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLXF1aXQgZXJ3YXJ0ZXQga2VpbmUgQXJndW1lbnRlIgorCisjOiBidWlsdGluL21lcmdlLmM6MTMxMgogbXNnaWQgIi0tY29udGludWUgZXhwZWN0cyBubyBhcmd1bWVudHMiCiBtc2dzdHIgIi0tY29udGludWUgZXJ3YXJ0ZXQga2VpbmUgQXJndW1lbnRlIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI3MAorIzogYnVpbHRpbi9tZXJnZS5jOjEzMTYKIG1zZ2lkICJUaGVyZSBpcyBubyBtZXJnZSBpbiBwcm9ncmVzcyAoTUVSR0VfSEVBRCBtaXNzaW5nKS4iCiBtc2dzdHIgIkVzIGlzdCBrZWluIE1lcmdlIGltIEdhbmdlIChNRVJHRV9IRUFEIGZlaGx0KS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjg2CisjOiBidWlsdGluL21lcmdlLmM6MTMzMgogbXNnaWQgIiIKICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS5cbiIKICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIHlvdSBtZXJnZS4iCkBAIC0xMzM0Myw3ICsxNjU1OSw3IEBACiAiU2llIGhhYmVuIElocmVuIE1lcmdlIG5pY2h0IGFiZ2VzY2hsb3NzZW4gKE1FUkdFX0hFQUQgZXhpc3RpZXJ0KS5cbiIKICJCaXR0ZSBjb21taXR0ZW4gU2llIElocmUgw4RuZGVydW5nZW4sIGJldm9yIFNpZSBkZW4gTWVyZ2UgYXVzZsO8aHJlbi4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjkzCisjOiBidWlsdGluL21lcmdlLmM6MTMzOQogbXNnaWQgIiIKICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgY2hlcnJ5LXBpY2sgKENIRVJSWV9QSUNLX0hFQUQgZXhpc3RzKS5cbiIKICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIHlvdSBtZXJnZS4iCkBAIC0xMzM1MSw5NiArMTY1NjcsMTAwIEBACiAiU2llIGhhYmVuIFwiY2hlcnJ5LXBpY2tcIiBuaWNodCBhYmdlc2NobG9zc2VuIChDSEVSUllfUElDS19IRUFEIGV4aXN0aWVydCkuXG4iCiAiQml0dGUgY29tbWl0dGVuIFNpZSBJaHJlIMOEbmRlcnVuZ2VuLCBiZXZvciBTaWUgZGVuIE1lcmdlIGF1c2bDvGhyZW4uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI5NgorIzogYnVpbHRpbi9tZXJnZS5jOjEzNDIKIG1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgY2hlcnJ5LXBpY2sgKENIRVJSWV9QSUNLX0hFQUQgZXhpc3RzKS4iCiBtc2dzdHIgIiIKICJTaWUgaGFiZW4gXCJjaGVycnktcGlja1wiIG5pY2h0IGFiZ2VzY2hsb3NzZW4gKENIRVJSWV9QSUNLX0hFQUQgZXhpc3RpZXJ0KS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzA1CisjOiBidWlsdGluL21lcmdlLmM6MTM1NgogbXNnaWQgIllvdSBjYW5ub3QgY29tYmluZSAtLXNxdWFzaCB3aXRoIC0tbm8tZmYuIgogbXNnc3RyICJTaWUga8O2bm5lbiAtLXNxdWFzaCBuaWNodCBtaXQgLS1uby1mZiBrb21iaW5pZXJlbi4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzEzCisjOiBidWlsdGluL21lcmdlLmM6MTM1OAorbXNnaWQgIllvdSBjYW5ub3QgY29tYmluZSAtLXNxdWFzaCB3aXRoIC0tY29tbWl0LiIKK21zZ3N0ciAiU2llIGvDtm5uZW4gLS1zcXVhc2ggbmljaHQgbWl0IC0tY29tbWl0IGtvbWJpbmllcmVuLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzNzQKIG1zZ2lkICJObyBjb21taXQgc3BlY2lmaWVkIGFuZCBtZXJnZS5kZWZhdWx0VG9VcHN0cmVhbSBub3Qgc2V0LiIKIG1zZ3N0ciAiS2VpbiBDb21taXQgYW5nZWdlYmVuIHVuZCBtZXJnZS5kZWZhdWx0VG9VcHN0cmVhbSBpc3QgbmljaHQgZ2VzZXR6dC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzMwCisjOiBidWlsdGluL21lcmdlLmM6MTM5MQogbXNnaWQgIlNxdWFzaCBjb21taXQgaW50byBlbXB0eSBoZWFkIG5vdCBzdXBwb3J0ZWQgeWV0IgogbXNnc3RyICIiCiAiQmluIGF1ZiBlaW5lbSBDb21taXQsIGRlciBub2NoIGdlYm9yZW4gd2lyZDsga2FubiBcInNxdWFzaFwiIG5pY2h0IGF1c2bDvGhyZW4uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMzMgorIzogYnVpbHRpbi9tZXJnZS5jOjEzOTMKIG1zZ2lkICJOb24tZmFzdC1mb3J3YXJkIGNvbW1pdCBkb2VzIG5vdCBtYWtlIHNlbnNlIGludG8gYW4gZW1wdHkgaGVhZCIKIG1zZ3N0ciAiIgogIk5pY2h0IHZvcnp1c3B1bGVuZGVyIENvbW1pdCBrYW5uIG5pY2h0IGluIGVpbmVtIGxlZXJlbiBCcmFuY2ggdmVyd2VuZGV0ICIKICJ3ZXJkZW4uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMzNworIzogYnVpbHRpbi9tZXJnZS5jOjEzOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgLSBub3Qgc29tZXRoaW5nIHdlIGNhbiBtZXJnZSIKIG1zZ3N0ciAiJXMgLSBuaWNodHMgd2FzIHdpciB6dXNhbW1lbmbDvGhyZW4ga8O2bm5lbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDAwCiBtc2dpZCAiQ2FuIG1lcmdlIG9ubHkgZXhhY3RseSBvbmUgY29tbWl0IGludG8gZW1wdHkgaGVhZCIKIG1zZ3N0ciAiS2FubiBudXIgZXhha3QgZWluZW4gQ29tbWl0IGluIGVpbmVtIGxlZXJlbiBCcmFuY2ggenVzYW1tZW5mw7xocmVuLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0MjEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDgxCiBtc2dpZCAicmVmdXNpbmcgdG8gbWVyZ2UgdW5yZWxhdGVkIGhpc3RvcmllcyIKIG1zZ3N0ciAiVmVyd2VpZ2VyZSBkZW4gTWVyZ2Ugdm9uIG5pY2h0IHp1c2FtbWVuaMOkbmdlbmRlbiBIaXN0b3JpZW4uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQzMAorIzogYnVpbHRpbi9tZXJnZS5jOjE0OTAKIG1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIgogbXNnc3RyICJCZXJlaXRzIGFrdHVlbGwuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQ0MAorIzogYnVpbHRpbi9tZXJnZS5jOjE1MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRpbmcgJXMuLiVzXG4iCiBtc2dzdHIgIkFrdHVhbGlzaWVyZSAlcy4uJXNcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0ODIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRyeWluZyByZWFsbHkgdHJpdmlhbCBpbi1pbmRleCBtZXJnZS4uLlxuIgogbXNnc3RyICJQcm9iaWVyZSB3aXJrbGljaCB0cml2aWFsZW4gXCJpbi1pbmRleFwiLU1lcmdlIC4uLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQ4OQorIzogYnVpbHRpbi9tZXJnZS5jOjE1NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm9wZS5cbiIKIG1zZ3N0ciAiTmVpbi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1MTQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTc0CiBtc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlLiBZZWVhaCEiCiBtc2dzdHIgIkJlcmVpdHMgYWt0dWVsbC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTIwCisjOiBidWlsdGluL21lcmdlLmM6MTU4MAogbXNnaWQgIk5vdCBwb3NzaWJsZSB0byBmYXN0LWZvcndhcmQsIGFib3J0aW5nLiIKIG1zZ3N0ciAiVm9yc3B1bGVuIG5pY2h0IG3DtmdsaWNoLCBicmVjaGUgYWIuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTU0MyBidWlsdGluL21lcmdlLmM6MTYyMgorIzogYnVpbHRpbi9tZXJnZS5jOjE2MDMgYnVpbHRpbi9tZXJnZS5jOjE2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmV3aW5kaW5nIHRoZSB0cmVlIHRvIHByaXN0aW5lLi4uXG4iCiBtc2dzdHIgIlLDvGNrbGF1ZiBkZXMgVmVyemVpY2huaXNzZXMgYmlzIHp1bSBVcnNwcnVuZyAuLi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1NDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjA3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRyeWluZyBtZXJnZSBzdHJhdGVneSAlcy4uLlxuIgogbXNnc3RyICJQcm9iaWVyZSBNZXJnZS1TdHJhdGVnaWUgJXMgLi4uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjEzCisjOiBidWlsdGluL21lcmdlLmM6MTY1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBtZXJnZSBzdHJhdGVneSBoYW5kbGVkIHRoZSBtZXJnZS5cbiIKIG1zZ3N0ciAiS2VpbmUgTWVyZ2UtU3RyYXRlZ2llIGJlaGFuZGVsdCBkaWVzZW4gTWVyZ2UuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjE1CisjOiBidWlsdGluL21lcmdlLmM6MTY2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJNZXJnZSB3aXRoIHN0cmF0ZWd5ICVzIGZhaWxlZC5cbiIKIG1zZ3N0ciAiTWVyZ2UgbWl0IFN0cmF0ZWdpZSAlcyBmZWhsZ2VzY2hsYWdlbi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MjQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVzaW5nIHRoZSAlcyB0byBwcmVwYXJlIHJlc29sdmluZyBieSBoYW5kLlxuIgogbXNnc3RyICJCZW51dHplbiBTaWUgXCIlc1wiLCB1bSBkaWUgQXVmbMO2c3VuZyBwZXIgSGFuZCB2b3J6dWJlcmVpdGVuLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYzNgorIzogYnVpbHRpbi9tZXJnZS5jOjE2ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0b21hdGljIG1lcmdlIHdlbnQgd2VsbDsgc3RvcHBlZCBiZWZvcmUgY29tbWl0dGluZyBhcyByZXF1ZXN0ZWRcbiIKIG1zZ3N0ciAiIgpAQCAtMTM1MjYsMzMgKzE2NzQ2LDMzIEBACiBtc2dpZCAic2V0IGxhYmVscyBmb3IgZmlsZTEvb3JpZy1maWxlL2ZpbGUyIgogbXNnc3RyICJCZXNjaHJpZnR1bmcgZsO8ciBEYXRlaTEvb3JpZy1EYXRlaS9EYXRlaTIgc2V0emVuIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjQ1CisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gb3B0aW9uICVzIgogbXNnc3RyICJ1bmJla2FubnRlIE9wdGlvbjogJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTEKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnIgogbXNnc3RyICJLb25udGUgT2JqZWt0ICclcycgbmljaHQgcGFyc2VuLiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1NQorIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCBiYXNlLiBJZ25vcmluZyAlcy4iCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIGJhc2VzLiBJZ25vcmluZyAlcy4iCiBtc2dzdHJbMF0gImthbm4gbmljaHQgbWl0IG1laHIgYWxzICVkIE1lcmdlLUJhc2lzIHVtZ2VoZW4uIElnbm9yaWVyZSAlcy4iCiBtc2dzdHJbMV0gImthbm4gbmljaHQgbWl0IG1laHIgYWxzICVkIE1lcmdlLUJhc2VuIHVtZ2VoZW4uIElnbm9yaWVyZSAlcy4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjMKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjUKIG1zZ2lkICJub3QgaGFuZGxpbmcgYW55dGhpbmcgb3RoZXIgdGhhbiB0d28gaGVhZHMgbWVyZ2UuIgogbXNnc3RyICJFcyB3aXJkIG51ciBkZXIgTWVyZ2Ugdm9uIHp3ZWkgQnJhbmNoZXMgYmVoYW5kZWx0LiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo2OSBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjcxCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjc0IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgcmVmICclcyciCiBtc2dzdHIgIktvbm50ZSBSZWZlcmVueiAnJXMnIG5pY2h0IGF1ZmzDtnNlbiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo3NworIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJNZXJnaW5nICVzIHdpdGggJXNcbiIKIG1zZ3N0ciAiRsO8aHJlICVzIG1pdCAlcyB6dXNhbW1lblxuIgpAQCAtMTM1NjUsNyArMTY3ODUsNyBAQAogbXNnaWQgImlucHV0IGlzIE5VTCB0ZXJtaW5hdGVkIgogbXNnc3RyICJFaW5nYWJlIGlzdCBkdXJjaCBOVUwtWmVpY2hlbiBhYmdlc2NobG9zc2VuIgogCi0jOiBidWlsdGluL21rdHJlZS5jOjE1NSBidWlsdGluL3dyaXRlLXRyZWUuYzoyNQorIzogYnVpbHRpbi9ta3RyZWUuYzoxNTUgYnVpbHRpbi93cml0ZS10cmVlLmM6MjYKIG1zZ2lkICJhbGxvdyBtaXNzaW5nIG9iamVjdHMiCiBtc2dzdHIgImZlaGxlbmRlIE9iamVrdGUgZXJsYXViZW4iCiAKQEAgLTEzNTczLDE1OSArMTY3OTMsMTc2IEBACiBtc2dpZCAiYWxsb3cgY3JlYXRpb24gb2YgbW9yZSB0aGFuIG9uZSB0cmVlIgogbXNnc3RyICJkaWUgRXJzdGVsbHVuZyB2b24gbWVociBhbHMgZWluZW0gXCJUcmVlXCItT2JqZWt0IGVybGF1YmVuIgogCi0jOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo4Ci1tc2dpZCAiZ2l0IG11bHRpLXBhY2staW5kZXggWy0tb2JqZWN0LWRpcj08ZGlyPl0gKHdyaXRlfHZlcmlmeSkiCi1tc2dzdHIgImdpdCBtdWx0aS1wYWNrLWluZGV4IFstLW9iamVjdC1kaXI9PFZlcnplaWNobmlzPl0gKHdyaXRlfHZlcmlmeSkiCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo5Cittc2dpZCAiIgorImdpdCBtdWx0aS1wYWNrLWluZGV4IFs8b3B0aW9ucz5dICh3cml0ZXx2ZXJpZnl8ZXhwaXJlfHJlcGFjayAtLWJhdGNoLSIKKyJzaXplPTxzaXplPikiCittc2dzdHIgIiIKKyJnaXQgbXVsdGktcGFjay1pbmRleCBbPE9wdGlvbmVuPl0gKHdyaXRlfHZlcmlmeXxleHBpcmV8cmVwYWNrIC0tYmF0Y2gtIgorInNpemU9PEdyw7bDn2U+KSIKIAotIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjEKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjI2CiBtc2dpZCAib2JqZWN0IGRpcmVjdG9yeSBjb250YWluaW5nIHNldCBvZiBwYWNrZmlsZSBhbmQgcGFjay1pbmRleCBwYWlycyIKLW1zZ3N0ciAiT2JqZWt0LVZlcnplaWNobmlzLCB3ZWxjaGVzIFBhYXJlIHZvbiBQYWNrZGF0ZWllbiB1bmQgcGFjay1pbmRleCBlbnRow6RsdCIKK21zZ3N0ciAiIgorIk9iamVrdC1WZXJ6ZWljaG5pcywgd2VsY2hlcyBQYWFyZSB2b24gUGFja2RhdGVpZW4gdW5kIHBhY2staW5kZXggZW50aMOkbHQiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjM5CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyOQorbXNnaWQgIiIKKyJkdXJpbmcgcmVwYWNrLCBjb2xsZWN0IHBhY2stZmlsZXMgb2Ygc21hbGxlciBzaXplIGludG8gYSBiYXRjaCB0aGF0IGlzICIKKyJsYXJnZXIgdGhhbiB0aGlzIHNpemUiCittc2dzdHIgIiIKKyJXw6RocmVuZCBkZXMgVW1wYWNrZW5zLCBzYW1tbGUgUGFrZXQtRGF0ZWllbiB2b24gZ2VyaW5nZXJlciBHcsO2w59lIGluICIKKyJlaW5lblN0YXBlbCwgd2VsY2hlciBncsO2w59lciBpc3QgYWxzIGRpZXNlIEdyw7bDn2UiCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjUwIGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NjcKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMiCiBtc2dzdHIgIlp1IHZpZWxlIEFyZ3VtZW50ZS4iCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjQ4Ci0jLCBjLWZvcm1hdAotbXNnaWQgInVucmVjb2duaXplZCB2ZXJiOiAlcyIKLW1zZ3N0ciAiTmljaHQgZXJrYW5udGVzIFZlcmI6ICVzIgorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NjAKK21zZ2lkICItLWJhdGNoLXNpemUgb3B0aW9uIGlzIG9ubHkgZm9yICdyZXBhY2snIHN1YmNvbW1hbmQiCittc2dzdHIgIk9wdGlvbiAtLWJhdGNoLXNpemUgaXN0IG51ciBmw7xyIGRlbiBVbnRlcmJlZmVobCAncmVwYWNrJyIKIAotIzogYnVpbHRpbi9tdi5jOjE3CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgc3ViY29tbWFuZDogJXMiCittc2dzdHIgIk5pY2h0IGVya2FubnRlciBVbnRlcmJlZmVobDogJXMiCisKKyM6IGJ1aWx0aW4vbXYuYzoxOAogbXNnaWQgImdpdCBtdiBbPG9wdGlvbnM+XSA8c291cmNlPi4uLiA8ZGVzdGluYXRpb24+IgogbXNnc3RyICJnaXQgbXYgWzxPcHRpb25lbj5dIDxRdWVsbGU+Li4uIDxaaWVsPiIKIAotIzogYnVpbHRpbi9tdi5jOjgyCisjOiBidWlsdGluL212LmM6ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGlyZWN0b3J5ICVzIGlzIGluIGluZGV4IGFuZCBubyBzdWJtb2R1bGU/IgogbXNnc3RyICJWZXJ6ZWljaG5pcyAlcyBpc3QgenVtIENvbW1pdCB2b3JnZW1lcmt0IHVuZCBrZWluIFN1Ym1vZHVsPyIKIAotIzogYnVpbHRpbi9tdi5jOjg0CisjOiBidWlsdGluL212LmM6ODUKIG1zZ2lkICJQbGVhc2Ugc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKIG1zZ3N0ciAiIgogIkJpdHRlIG1lcmtlbiBTaWUgSWhyZSDDhG5kZXJ1bmdlbiBpbiAuZ2l0bW9kdWxlcyB6dW0gQ29tbWl0IHZvciBvZGVyICIKICJiZW51dHplblxuIgogIlNpZSBcInN0YXNoXCIsIHVtIGZvcnR6dWZhaHJlbi4iCiAKLSM6IGJ1aWx0aW4vbXYuYzoxMDIKKyM6IGJ1aWx0aW4vbXYuYzoxMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJS4qcyBpcyBpbiBpbmRleCIKIG1zZ3N0ciAiJS4qcyBpc3QgenVtIENvbW1pdCB2b3JnZW1lcmt0IgogCi0jOiBidWlsdGluL212LmM6MTI0CisjOiBidWlsdGluL212LmM6MTI1CiBtc2dpZCAiZm9yY2UgbW92ZS9yZW5hbWUgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgogbXNnc3RyICJWZXJzY2hpZWJlbi9VbWJlbmVubmVuIGVyendpbmdlbiwgYXVjaCB3ZW5uIGRhcyBaaWVsIGV4aXN0aWVydCIKIAotIzogYnVpbHRpbi9tdi5jOjEyNgorIzogYnVpbHRpbi9tdi5jOjEyNwogbXNnaWQgInNraXAgbW92ZS9yZW5hbWUgZXJyb3JzIgogbXNnc3RyICJGZWhsZXIgYmVpbSBWZXJzY2hpZWJlbiBvZGVyIFVtYmVuZW5uZW4gw7xiZXJzcHJpbmdlbiIKIAotIzogYnVpbHRpbi9tdi5jOjE2OAorIzogYnVpbHRpbi9tdi5jOjE2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJkZXN0aW5hdGlvbiAnJXMnIGlzIG5vdCBhIGRpcmVjdG9yeSIKIG1zZ3N0ciAiWmllbCAnJXMnIGlzdCBrZWluIFZlcnplaWNobmlzIgogCi0jOiBidWlsdGluL212LmM6MTc5CisjOiBidWlsdGluL212LmM6MTgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoZWNraW5nIHJlbmFtZSBvZiAnJXMnIHRvICclcydcbiIKIG1zZ3N0ciAiUHLDvGZlIFVtYmVuZW5udW5nIHZvbiAnJXMnIG5hY2ggJyVzJ1xuIgogCi0jOiBidWlsdGluL212LmM6MTgzCisjOiBidWlsdGluL212LmM6MTg0CiBtc2dpZCAiYmFkIHNvdXJjZSIKIG1zZ3N0ciAidW5nw7xsdGlnZSBRdWVsbGUiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxODYKKyM6IGJ1aWx0aW4vbXYuYzoxODcKIG1zZ2lkICJjYW4gbm90IG1vdmUgZGlyZWN0b3J5IGludG8gaXRzZWxmIgogbXNnc3RyICJrYW5uIFZlcnplaWNobmlzIG5pY2h0IGluIHNpY2ggc2VsYnN0IHZlcnNjaGllYmVuIgogCi0jOiBidWlsdGluL212LmM6MTg5CisjOiBidWlsdGluL212LmM6MTkwCiBtc2dpZCAiY2Fubm90IG1vdmUgZGlyZWN0b3J5IG92ZXIgZmlsZSIKIG1zZ3N0ciAia2FubiBWZXJ6ZWljaG5pcyBuaWNodCDDvGJlciBEYXRlaSB2ZXJzY2hpZWJlbiIKIAotIzogYnVpbHRpbi9tdi5jOjE5OAorIzogYnVpbHRpbi9tdi5jOjE5OQogbXNnaWQgInNvdXJjZSBkaXJlY3RvcnkgaXMgZW1wdHkiCiBtc2dzdHIgIlF1ZWxsdmVyemVpY2huaXMgaXN0IGxlZXIiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyMjMKKyM6IGJ1aWx0aW4vbXYuYzoyMjQKIG1zZ2lkICJub3QgdW5kZXIgdmVyc2lvbiBjb250cm9sIgogbXNnc3RyICJuaWNodCB1bnRlciBWZXJzaW9uc2tvbnRyb2xsZSIKIAotIzogYnVpbHRpbi9tdi5jOjIyNgorIzogYnVpbHRpbi9tdi5jOjIyNwogbXNnaWQgImRlc3RpbmF0aW9uIGV4aXN0cyIKIG1zZ3N0ciAiWmllbCBleGlzdGllcnQgYmVyZWl0cyIKIAotIzogYnVpbHRpbi9tdi5jOjIzNAorIzogYnVpbHRpbi9tdi5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJvdmVyd3JpdGluZyAnJXMnIgogbXNnc3RyICLDvGJlcnNjaHJlaWJlICclcyciCiAKLSM6IGJ1aWx0aW4vbXYuYzoyMzcKKyM6IGJ1aWx0aW4vbXYuYzoyMzgKIG1zZ2lkICJDYW5ub3Qgb3ZlcndyaXRlIgogbXNnc3RyICJLYW5uIG5pY2h0IMO8YmVyc2NocmVpYmVuIgogCi0jOiBidWlsdGluL212LmM6MjQwCisjOiBidWlsdGluL212LmM6MjQxCiBtc2dpZCAibXVsdGlwbGUgc291cmNlcyBmb3IgdGhlIHNhbWUgdGFyZ2V0IgogbXNnc3RyICJtZWhyZXJlIFF1ZWxsZW4gZsO8ciBkYXNzZWxiZSBaaWVsIgogCi0jOiBidWlsdGluL212LmM6MjQyCisjOiBidWlsdGluL212LmM6MjQzCiBtc2dpZCAiZGVzdGluYXRpb24gZGlyZWN0b3J5IGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJaaWVsdmVyemVpY2huaXMgZXhpc3RpZXJ0IG5pY2h0IgogCi0jOiBidWlsdGluL212LmM6MjQ5CisjOiBidWlsdGluL212LmM6MjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzLCBzb3VyY2U9JXMsIGRlc3RpbmF0aW9uPSVzIgogbXNnc3RyICIlcywgUXVlbGxlPSVzLCBaaWVsPSVzIgogCi0jOiBidWlsdGluL212LmM6MjcwCisjOiBidWlsdGluL212LmM6MjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbmFtaW5nICVzIHRvICVzXG4iCiBtc2dzdHIgIkJlbmVubmUgJXMgbmFjaCAlcyB1bVxuIgogCi0jOiBidWlsdGluL212LmM6Mjc2IGJ1aWx0aW4vcmVtb3RlLmM6NzE3IGJ1aWx0aW4vcmVwYWNrLmM6NTExCisjOiBidWlsdGluL212LmM6Mjc3IGJ1aWx0aW4vcmVtb3RlLmM6NzgxIGJ1aWx0aW4vcmVwYWNrLmM6NTE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbmFtaW5nICclcycgZmFpbGVkIgogbXNnc3RyICJVbWJlbmVubnVuZyB2b24gJyVzJyBmZWhsZ2VzY2hsYWdlbiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NQorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NQogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSA8Y29tbWl0Pi4uLiIKIG1zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs8T3B0aW9uZW4+XSA8Q29tbWl0Pi4uLiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NgorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NgogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLWFsbCIKIG1zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs8T3B0aW9uZW4+XSAtLWFsbCIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NwogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLXN0ZGluIgogbXNnc3RyICJnaXQgbmFtZS1yZXYgWzxPcHRpb25lbj5dIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTMKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjQKIG1zZ2lkICJwcmludCBvbmx5IG5hbWVzIChubyBTSEEtMSkiCiBtc2dzdHIgIm51ciBOYW1lbiBhbnplaWdlbiAoa2VpbmUgU0hBLTEpIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE0CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI1CiBtc2dpZCAib25seSB1c2UgdGFncyB0byBuYW1lIHRoZSBjb21taXRzIgogbXNnc3RyICJudXIgVGFncyB2ZXJ3ZW5kZW4sIHVtIGRpZSBDb21taXRzIHp1IGJlbmVubmVuIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE2CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI3CiBtc2dpZCAib25seSB1c2UgcmVmcyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgIm51ciBSZWZlcmVuemVuIHZlcndlbmRlbiwgZGllIDxNdXN0ZXI+IGVudHNwcmVjaGVuIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE4CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI5CiBtc2dpZCAiaWdub3JlIHJlZnMgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICJpZ25vcmllcmUgUmVmZXJlbnplbiBkaWUgPE11c3Rlcj4gZW50c3ByZWNoZW4iCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjAKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzEKIG1zZ2lkICJsaXN0IGFsbCBjb21taXRzIHJlYWNoYWJsZSBmcm9tIGFsbCByZWZzIgogbXNnc3RyICJhbGxlIENvbW1pdHMgYXVmbGlzdGVuLCBkaWUgdm9uIGFsbGVuIFJlZmVyZW56ZW4gZXJyZWljaGJhciBzaW5kIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIxCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMyCiBtc2dpZCAicmVhZCBmcm9tIHN0ZGluIgogbXNnc3RyICJ2b24gZGVyIFN0YW5kYXJkLUVpbmdhYmUgbGVzZW4iCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjIKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzMKIG1zZ2lkICJhbGxvdyB0byBwcmludCBgdW5kZWZpbmVkYCBuYW1lcyAoZGVmYXVsdCkiCiBtc2dzdHIgIkF1c2dhYmUgdm9uIGB1bmRlZmluaWVydGVuYCBOYW1lbiBlcmxhdWJlbiAoU3RhbmRhcmQpIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDI4CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTM5CiBtc2dpZCAiZGVyZWZlcmVuY2UgdGFncyBpbiB0aGUgaW5wdXQgKGludGVybmFsIHVzZSkiCiBtc2dzdHIgIlRhZ3MgaW4gZGVyIEVpbmdhYmUgZGVyZWZlcmVuemllcmVuIChpbnRlcm5lIFZlcndlbmR1bmcpIgogCkBAIC0xMzg3MywxNCArMTcxMTAsMTQgQEAKIG1zZ2lkICJ0aGUgbm90ZSBjb250ZW50cyBoYXZlIGJlZW4gbGVmdCBpbiAlcyIKIG1zZ3N0ciAiRGllIE5vdGl6LUluaGFsdGUgd3VyZGVuIGluICVzIGJlbGFzc2VuLiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjI0MiBidWlsdGluL3RhZy5jOjUxMworIzogYnVpbHRpbi9ub3Rlcy5jOjI0MiBidWlsdGluL3RhZy5jOjUzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBvciByZWFkICclcyciCiBtc2dzdHIgImtvbm50ZSAnJXMnIG5pY2h0IMO2ZmZuZW4gb2RlciBsZXNlbiIKIAogIzogYnVpbHRpbi9ub3Rlcy5jOjI2MyBidWlsdGluL25vdGVzLmM6MzEzIGJ1aWx0aW4vbm90ZXMuYzozMTUKLSM6IGJ1aWx0aW4vbm90ZXMuYzozODMgYnVpbHRpbi9ub3Rlcy5jOjQzOCBidWlsdGluL25vdGVzLmM6NTI0Ci0jOiBidWlsdGluL25vdGVzLmM6NTI5IGJ1aWx0aW4vbm90ZXMuYzo2MDcgYnVpbHRpbi9ub3Rlcy5jOjY2OQorIzogYnVpbHRpbi9ub3Rlcy5jOjM4MyBidWlsdGluL25vdGVzLmM6NDM4IGJ1aWx0aW4vbm90ZXMuYzo1MjYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MzEgYnVpbHRpbi9ub3Rlcy5jOjYxMCBidWlsdGluL25vdGVzLmM6NjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgogbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBhbHMgZ8O8bHRpZ2UgUmVmZXJlbnogYXVmbMO2c2VuLiIKQEAgLTEzOTE1LDM4ICsxNzE1MiwzOCBAQAogIkF1c2bDvGhydW5nIHZvbiAlcyBhdWYgTm90aXplbiBpbiAlcyAoYXXDn2VyaGFsYiB2b24gcmVmcy9ub3Rlcy8pICIKICJ6dXLDvGNrZ2V3aWVzZW4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzozNzYgYnVpbHRpbi9ub3Rlcy5jOjQzMSBidWlsdGluL25vdGVzLmM6NTA3Ci0jOiBidWlsdGluL25vdGVzLmM6NTE5IGJ1aWx0aW4vbm90ZXMuYzo1OTUgYnVpbHRpbi9ub3Rlcy5jOjY2MgotIzogYnVpbHRpbi9ub3Rlcy5jOjgxMiBidWlsdGluL25vdGVzLmM6OTU5IGJ1aWx0aW4vbm90ZXMuYzo5ODAKKyM6IGJ1aWx0aW4vbm90ZXMuYzozNzYgYnVpbHRpbi9ub3Rlcy5jOjQzMSBidWlsdGluL25vdGVzLmM6NTA5CisjOiBidWlsdGluL25vdGVzLmM6NTIxIGJ1aWx0aW4vbm90ZXMuYzo1OTggYnVpbHRpbi9ub3Rlcy5jOjY2NQorIzogYnVpbHRpbi9ub3Rlcy5jOjgxNSBidWlsdGluL25vdGVzLmM6OTYzIGJ1aWx0aW4vbm90ZXMuYzo5ODUKIG1zZ2lkICJ0b28gbWFueSBwYXJhbWV0ZXJzIgogbXNnc3RyICJ6dSB2aWVsZSBQYXJhbWV0ZXIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzozODkgYnVpbHRpbi9ub3Rlcy5jOjY3NQorIzogYnVpbHRpbi9ub3Rlcy5jOjM4OSBidWlsdGluL25vdGVzLmM6Njc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIG5vdGUgZm91bmQgZm9yIG9iamVjdCAlcy4iCiBtc2dzdHIgIktlaW5lIE5vdGl6IGbDvHIgT2JqZWt0ICVzIGdlZnVuZGVuLiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxMCBidWlsdGluL25vdGVzLmM6NTczCisjOiBidWlsdGluL25vdGVzLmM6NDEwIGJ1aWx0aW4vbm90ZXMuYzo1NzYKIG1zZ2lkICJub3RlIGNvbnRlbnRzIGFzIGEgc3RyaW5nIgogbXNnc3RyICJOb3RpemluaGFsdGUgYWxzIFplaWNoZW5rZXR0ZSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxMyBidWlsdGluL25vdGVzLmM6NTc2CisjOiBidWlsdGluL25vdGVzLmM6NDEzIGJ1aWx0aW4vbm90ZXMuYzo1NzkKIG1zZ2lkICJub3RlIGNvbnRlbnRzIGluIGEgZmlsZSIKIG1zZ3N0ciAiTm90aXppbmhhbHRlIGluIGVpbmVyIERhdGVpIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDE2IGJ1aWx0aW4vbm90ZXMuYzo1NzkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTYgYnVpbHRpbi9ub3Rlcy5jOjU4MgogbXNnaWQgInJldXNlIGFuZCBlZGl0IHNwZWNpZmllZCBub3RlIG9iamVjdCIKIG1zZ3N0ciAiV2llZGVydmVyd2VuZHVuZyB1bmQgQmVhcmJlaXR1bmcgZGVzIGFuZ2VnZWJlbmVuIE5vdGl6LU9iamVrdGVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDE5IGJ1aWx0aW4vbm90ZXMuYzo1ODIKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTkgYnVpbHRpbi9ub3Rlcy5jOjU4NQogbXNnaWQgInJldXNlIHNwZWNpZmllZCBub3RlIG9iamVjdCIKIG1zZ3N0ciAiV2llZGVydmVyd2VuZHVuZyBkZXMgYW5nZWdlYmVuZW4gTm90aXotT2JqZWt0ZXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0MjIgYnVpbHRpbi9ub3Rlcy5jOjU4NQorIzogYnVpbHRpbi9ub3Rlcy5jOjQyMiBidWlsdGluL25vdGVzLmM6NTg4CiBtc2dpZCAiYWxsb3cgc3RvcmluZyBlbXB0eSBub3RlIgogbXNnc3RyICJTcGVpY2hlcm4gbGVlcmVyIE5vdGl6IGVybGF1YmVuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDIzIGJ1aWx0aW4vbm90ZXMuYzo0OTQKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MjMgYnVpbHRpbi9ub3Rlcy5jOjQ5NgogbXNnaWQgInJlcGxhY2UgZXhpc3Rpbmcgbm90ZXMiCiBtc2dzdHIgImV4aXN0aWVyZW5kZSBOb3RpemVuIGVyc2V0emVuIgogCkBAIC0xMzk1OSwzMSArMTcxOTYsMzEgQEAKICJLb25udGUgTm90aXplbiBuaWNodCBoaW56dWbDvGdlbi4gRXhpc3RpZXJlbmRlIE5vdGl6ZW4gZsO8ciBPYmpla3QgJXMgIgogImdlZnVuZGVuLiBWZXJ3ZW5kZW4gU2llICctZicsIHVtIGRpZSBleGlzdGllcmVuZGVuIE5vdGl6ZW4genUgw7xiZXJzY2hyZWliZW4uIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDYzIGJ1aWx0aW4vbm90ZXMuYzo1NDIKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NjMgYnVpbHRpbi9ub3Rlcy5jOjU0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJPdmVyd3JpdGluZyBleGlzdGluZyBub3RlcyBmb3Igb2JqZWN0ICVzXG4iCiBtc2dzdHIgIsOcYmVyc2NocmVpYmUgZXhpc3RpZXJlbmRlIE5vdGl6ZW4gZsO8ciBPYmpla3QgJXNcbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ3NCBidWlsdGluL25vdGVzLmM6NjM0IGJ1aWx0aW4vbm90ZXMuYzo4OTkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NzUgYnVpbHRpbi9ub3Rlcy5jOjYzNyBidWlsdGluL25vdGVzLmM6OTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nIG5vdGUgZm9yIG9iamVjdCAlc1xuIgogbXNnc3RyICJFbnRmZXJuZSBOb3RpeiBmw7xyIE9iamVrdCAlc1xuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDk1CisjOiBidWlsdGluL25vdGVzLmM6NDk3CiBtc2dpZCAicmVhZCBvYmplY3RzIGZyb20gc3RkaW4iCiBtc2dzdHIgIk9iamVrdGUgdm9uIGRlciBTdGFuZGFyZC1FaW5nYWJlIGxlc2VuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDk3CisjOiBidWlsdGluL25vdGVzLmM6NDk5CiBtc2dpZCAibG9hZCByZXdyaXRpbmcgY29uZmlnIGZvciA8Y29tbWFuZD4gKGltcGxpZXMgLS1zdGRpbikiCiBtc2dzdHIgIiIKICJLb25maWd1cmF0aW9uIGbDvHIgPEJlZmVobD4genVtIFVtc2NocmVpYmVuIHZvbiBDb21taXRzIGxhZGVuIChpbXBsaXppZXJ0IC0tIgogInN0ZGluKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjUxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjUxNwogbXNnaWQgInRvbyBmZXcgcGFyYW1ldGVycyIKIG1zZ3N0ciAienUgd2VuaWcgUGFyYW1ldGVyIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTM2CisjOiBidWlsdGluL25vdGVzLmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgY29weSBub3Rlcy4gRm91bmQgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlcy4gVXNlICctZicgdG8gb3ZlcndyaXRlICIKQEAgLTEzOTkyLDEyICsxNzIyOSwxMiBAQAogIkthbm4gTm90aXplbiBuaWNodCBrb3BpZXJlbi4gRXhpc3RpZXJlbmRlIE5vdGl6ZW4gZsO8ciBPYmpla3QgJXMgZ2VmdW5kZW4uICIKICJWZXJ3ZW5kZW4gU2llICctZicsIHVtIGRpZSBleGlzdGllcmVuZGVuIE5vdGl6ZW4genUgw7xiZXJzY2hyZWliZW4uIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTQ4CisjOiBidWlsdGluL25vdGVzLmM6NTUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3Npbmcgbm90ZXMgb24gc291cmNlIG9iamVjdCAlcy4gQ2Fubm90IGNvcHkuIgogbXNnc3RyICJLZWluZSBOb3RpemVuIGbDvHIgUXVlbGwtT2JqZWt0ICVzLiBLb3BpZSBuaWNodCBtw7ZnbGljaC4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2MDAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSAtbS8tRi8tYy8tQyBvcHRpb25zIGhhdmUgYmVlbiBkZXByZWNhdGVkIGZvciB0aGUgJ2VkaXQnIHN1YmNvbW1hbmQuXG4iCkBAIC0xNDAwNiw1MiArMTcyNDMsNTIgQEAKICJEaWUgT3B0aW9uZW4gLW0vLUYvLWMvLUMgc2luZCBmw7xyIGRlbiBVbnRlcmJlZmVobCAnZWRpdCcgdmVyYWx0ZXQuXG4iCiAiQml0dGUgYmVudXR6ZW4gU2llIHN0YXR0ZGVzc2VuICdnaXQgbm90ZXMgYWRkIC1mIC1tLy1GLy1jLy1DJy5cbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjY5NQorIzogYnVpbHRpbi9ub3Rlcy5jOjY5OAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgcmVmIE5PVEVTX01FUkdFX1BBUlRJQUwiCiBtc2dzdHIgIkZlaGxlciBiZWltIEzDtnNjaGVuIGRlciBSZWZlcmVueiBOT1RFU19NRVJHRV9QQVJUSUFMIgogCi0jOiBidWlsdGluL25vdGVzLmM6Njk3CisjOiBidWlsdGluL25vdGVzLmM6NzAwCiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSByZWYgTk9URVNfTUVSR0VfUkVGIgogbXNnc3RyICJGZWhsZXIgYmVpbSBMw7ZzY2hlbiBkZXIgUmVmZXJlbnogTk9URVNfTUVSR0VfUkVGIgogCi0jOiBidWlsdGluL25vdGVzLmM6Njk5CisjOiBidWlsdGluL25vdGVzLmM6NzAyCiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAnZ2l0IG5vdGVzIG1lcmdlJyB3b3JrdHJlZSIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gTMO2c2NoZW4gZGVzIEFyYmVpdHN2ZXJ6ZWljaG5pc3NlcyB2b24gJ2dpdCBub3RlcyBtZXJnZScuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzE5CisjOiBidWlsdGluL25vdGVzLmM6NzIyCiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgcmVmIE5PVEVTX01FUkdFX1BBUlRJQUwiCiBtc2dzdHIgIkZlaGxlciBiZWltIExlc2VuIGRlciBSZWZlcmVueiBOT1RFU19NRVJHRV9QQVJUSUFMIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzIxCisjOiBidWlsdGluL25vdGVzLmM6NzI0CiBtc2dpZCAiY291bGQgbm90IGZpbmQgY29tbWl0IGZyb20gTk9URVNfTUVSR0VfUEFSVElBTC4iCiBtc2dzdHIgIktvbm50ZSBDb21taXQgdm9uIE5PVEVTX01FUkdFX1BBUlRJQUwgbmljaHQgZmluZGVuLiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjcyMworIzogYnVpbHRpbi9ub3Rlcy5jOjcyNgogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgZnJvbSBOT1RFU19NRVJHRV9QQVJUSUFMLiIKIG1zZ3N0ciAiS29ubnRlIENvbW1pdCB2b24gTk9URVNfTUVSR0VfUEFSVElBTCBuaWNodCBwYXJzZW4uIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzM2CisjOiBidWlsdGluL25vdGVzLmM6NzM5CiBtc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgTk9URVNfTUVSR0VfUkVGIgogbXNnc3RyICJGZWhsZXIgYmVpbSBBdWZsw7ZzZW4gdm9uIE5PVEVTX01FUkdFX1JFRiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjczOQorIzogYnVpbHRpbi9ub3Rlcy5jOjc0MgogbXNnaWQgImZhaWxlZCB0byBmaW5hbGl6ZSBub3RlcyBtZXJnZSIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gQWJzY2hsaWXDn2VuIGRlciBadXNhbW1lbmbDvGhydW5nIGRlciBOb3RpemVuLiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc2NQorIzogYnVpbHRpbi9ub3Rlcy5jOjc2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG5vdGVzIG1lcmdlIHN0cmF0ZWd5ICVzIgogbXNnc3RyICJ1bmJla2FubnRlIE1lcmdlLVN0cmF0ZWdpZSAnJXMnIGbDvHIgTm90aXplbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4MQorIzogYnVpbHRpbi9ub3Rlcy5jOjc4NAogbXNnaWQgIkdlbmVyYWwgb3B0aW9ucyIKIG1zZ3N0ciAiQWxsZ2VtZWluZSBPcHRpb25lbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4MworIzogYnVpbHRpbi9ub3Rlcy5jOjc4NgogbXNnaWQgIk1lcmdlIG9wdGlvbnMiCiBtc2dzdHIgIk1lcmdlLU9wdGlvbmVuIgogCi0jOiBidWlsdGluL25vdGVzLmM6Nzg1CisjOiBidWlsdGluL25vdGVzLmM6Nzg4CiBtc2dpZCAiIgogInJlc29sdmUgbm90ZXMgY29uZmxpY3RzIHVzaW5nIHRoZSBnaXZlbiBzdHJhdGVneSAobWFudWFsL291cnMvdGhlaXJzL3VuaW9uLyIKICJjYXRfc29ydF91bmlxKSIKQEAgLTE0MDU5LDQ5ICsxNzI5Niw0OSBAQAogImzDtnN0IEtvbmZsaWt0ZSBiZWkgTm90aXplbiBtaXQgZGVyIGFuZ2VnZWJlbmVuIFN0cmF0ZWdpZSBhdWYgKG1hbnVhbC9vdXJzLyIKICJ0aGVpcnMvdW5pb24vY2F0X3NvcnRfdW5pcSkiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTAKIG1zZ2lkICJDb21taXR0aW5nIHVubWVyZ2VkIG5vdGVzIgogbXNnc3RyICJuaWNodCB6dXNhbW1lbmdlZsO8aHJ0ZSBOb3RpemVuIGVpbnRyYWdlbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4OQorIzogYnVpbHRpbi9ub3Rlcy5jOjc5MgogbXNnaWQgImZpbmFsaXplIG5vdGVzIG1lcmdlIGJ5IGNvbW1pdHRpbmcgdW5tZXJnZWQgbm90ZXMiCiBtc2dzdHIgIiIKICJNZXJnZSB2b24gTm90aXplbiBhYnNjaGxpZcOfZW4sIGluIGRlbSBuaWNodCB6dXNhbW1lbmdlZsO8aHJ0ZSBOb3RpemVuICIKICJjb21taXR0ZXQgd2VyZGVuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzkxCisjOiBidWlsdGluL25vdGVzLmM6Nzk0CiBtc2dpZCAiQWJvcnRpbmcgbm90ZXMgbWVyZ2UgcmVzb2x1dGlvbiIKIG1zZ3N0ciAiS29uZmxpa3RhdWZsw7ZzdW5nIGJlaW0gTWVyZ2Ugdm9uIE5vdGl6ZW4gYWJicmVjaGVuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzkzCisjOiBidWlsdGluL25vdGVzLmM6Nzk2CiBtc2dpZCAiYWJvcnQgbm90ZXMgbWVyZ2UiCiBtc2dzdHIgIk1lcmdlIHZvbiBOb3RpemVuIGFiYnJlY2hlbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjgwNAorIzogYnVpbHRpbi9ub3Rlcy5jOjgwNwogbXNnaWQgImNhbm5vdCBtaXggLS1jb21taXQsIC0tYWJvcnQgb3IgLXMvLS1zdHJhdGVneSIKIG1zZ3N0ciAiS2FubiAtLWNvbW1pdCwgLS1hYm9ydCBvZGVyIC1zLy0tc3RyYXRlZ3kgbmljaHQga29tYmluaWVyZW4uIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODA5CisjOiBidWlsdGluL25vdGVzLmM6ODEyCiBtc2dpZCAibXVzdCBzcGVjaWZ5IGEgbm90ZXMgcmVmIHRvIG1lcmdlIgogbXNnc3RyICJTaWUgbcO8c3NlbiBlaW5lIE5vdGl6LVJlZmVyZW56IHp1bSBNZXJnZW4gYW5nZWJlbi4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4MzMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biAtcy8tLXN0cmF0ZWd5OiAlcyIKIG1zZ3N0ciAiVW5iZWthbm50ZXIgV2VydCBmw7xyIC1zLy0tc3RyYXRlZ3k6ICVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODcwCisjOiBidWlsdGluL25vdGVzLmM6ODczCiAjLCBjLWZvcm1hdAogbXNnaWQgImEgbm90ZXMgbWVyZ2UgaW50byAlcyBpcyBhbHJlYWR5IGluLXByb2dyZXNzIGF0ICVzIgogbXNnc3RyICJFaW4gTWVyZ2Ugdm9uIE5vdGl6ZW4gbmFjaCAlcyBpc3QgYmVyZWl0cyBpbSBHYW5nZSBiZWkgJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0b3JlIGxpbmsgdG8gY3VycmVudCBub3RlcyByZWYgKCVzKSIKIG1zZ3N0ciAiIgogIkZlaGxlciBiZWltIFNwZWljaGVybiBkZXIgVmVya27DvHBmdW5nIHp1ciBha3R1ZWxsZW4gTm90ZXMtUmVmZXJlbnogKCVzKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg3NQorIzogYnVpbHRpbi9ub3Rlcy5jOjg3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQXV0b21hdGljIG5vdGVzIG1lcmdlIGZhaWxlZC4gRml4IGNvbmZsaWN0cyBpbiAlcyBhbmQgY29tbWl0IHRoZSByZXN1bHQgd2l0aCAiCkBAIC0xNDExMywxNzcgKzE3MzUwLDE1OSBAQAogImNvbW1pdCcsXG4iCiAib2RlciBicmVjaGVuIFNpZSBkZW4gTWVyZ2UgbWl0ICdnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCcgYWIuXG4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4OTcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4OTcgYnVpbHRpbi90YWcuYzo1NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZi4iCittc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGFscyBnw7xsdGlnZSBSZWZlcmVueiBhdWZsw7ZzZW4uIgorCisjOiBidWlsdGluL25vdGVzLmM6OTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9iamVjdCAlcyBoYXMgbm8gbm90ZVxuIgogbXNnc3RyICJPYmpla3QgJXMgaGF0IGtlaW5lIE5vdGl6XG4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5MDkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MTIKIG1zZ2lkICJhdHRlbXB0IHRvIHJlbW92ZSBub24tZXhpc3RlbnQgbm90ZSBpcyBub3QgYW4gZXJyb3IiCiBtc2dzdHIgImRlciBWZXJzdWNoLCBlaW5lIG5pY2h0IGV4aXN0aWVyZW5kZSBOb3RpeiB6dSBsw7ZzY2hlbiwgaXN0IGtlaW4gRmVobGVyIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTEyCisjOiBidWlsdGluL25vdGVzLmM6OTE1CiBtc2dpZCAicmVhZCBvYmplY3QgbmFtZXMgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgIk9iamVrdG5hbWVuIHZvbiBkZXIgU3RhbmRhcmQtRWluZ2FiZSBsZXNlbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk1MCBidWlsdGluL3BydW5lLmM6MTA4IGJ1aWx0aW4vd29ya3RyZWUuYzoxNjQKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NTQgYnVpbHRpbi9wcnVuZS5jOjEzMCBidWlsdGluL3dvcmt0cmVlLmM6MTY0CiBtc2dpZCAiZG8gbm90IHJlbW92ZSwgc2hvdyBvbmx5IgogbXNnc3RyICJuaWNodCBsw7ZzY2hlbiwgbnVyIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTUxCisjOiBidWlsdGluL25vdGVzLmM6OTU1CiBtc2dpZCAicmVwb3J0IHBydW5lZCBub3RlcyIKIG1zZ3N0ciAiZ2Vsw7ZzY2h0ZSBOb3RpemVuIG1lbGRlbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk5MworIzogYnVpbHRpbi9ub3Rlcy5jOjk5OAogbXNnaWQgIm5vdGVzLXJlZiIKIG1zZ3N0ciAiTm90aXotUmVmZXJlbnoiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5OTQKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5OTkKIG1zZ2lkICJ1c2Ugbm90ZXMgZnJvbSA8bm90ZXMtcmVmPiIKIG1zZ3N0ciAiTm90aXplbiB2b24gPE5vdGl6LVJlZmVyZW56PiB2ZXJ3ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzoxMDI5CisjOiBidWlsdGluL25vdGVzLmM6MTAzNCBidWlsdGluL3N0YXNoLmM6MTY0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHN1YmNvbW1hbmQ6ICVzIgogbXNnc3RyICJVbmJla2FubnRlciBVbnRlcmJlZmVobDogJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTIKIG1zZ2lkICIiCiAiZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCBbPG9wdGlvbnM+Li4uXSBbPCA8cmVmLWxpc3Q+IHwgPCA8b2JqZWN0LWxpc3Q+XSIKIG1zZ3N0ciAiIgogImdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgWzxPcHRpb25lbj4uLi5dIFs8IDxSZWZlcmVuemxpc3RlPiB8IDwgIgogIjxPYmpla3RsaXN0ZT5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUzCiBtc2dpZCAiIgogImdpdCBwYWNrLW9iamVjdHMgWzxvcHRpb25zPi4uLl0gPGJhc2UtbmFtZT4gWzwgPHJlZi1saXN0PiB8IDwgPG9iamVjdC1saXN0Pl0iCiBtc2dzdHIgIiIKICJnaXQgcGFjay1vYmplY3RzIFs8T3B0aW9uZW4+Li4uXSA8QmFzaXMtTmFtZT4gWzwgPFJlZmVyZW56bGlzdGU+IHwgPCAiCiAiPE9iamVrdGxpc3RlPl0iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDIyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFja2VkIG9iamVjdCBDUkMgZm9yICVzIgogbXNnc3RyICJVbmfDvGx0aWdlcyBDUkMgZsO8ciBnZXBhY2t0ZXMgT2JqZWt0ICVzLiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MzMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgcGFja2VkIG9iamVjdCBmb3IgJXMiCiBtc2dzdHIgIkZlaGxlcmhhZnRlcyBnZXBhY2t0ZXMgT2JqZWt0IGbDvHIgJXMuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjU2NAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1NzIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVjdXJzaXZlIGRlbHRhIGRldGVjdGVkIGZvciBvYmplY3QgJXMiCiBtc2dzdHIgIlJla3Vyc2l2ZXIgVW50ZXJzY2hpZWQgZsO8ciBPYmpla3QgJXMgZmVzdGdlc3RlbGx0LiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3NzUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NzgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9yZGVyZWQgJXUgb2JqZWN0cywgZXhwZWN0ZWQgJTxQUkl1MzI+IgogbXNnc3RyICIldSBPYmpla3RlIGdlb3JkbmV0LCAlPFBSSXUzMj4gZXJ3YXJ0ZXQuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc4OAotIywgYy1mb3JtYXQKLW1zZ2lkICJwYWNrZmlsZSBpcyBpbnZhbGlkOiAlcyIKLW1zZ3N0ciAiUGFja2RhdGVpIGlzdCB1bmfDvGx0aWc6ICVzIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc5MgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gb3BlbiBwYWNrZmlsZSBmb3IgcmV1c2U6ICVzIgotbXNnc3RyICJLb25udGUgUGFja2RhdGVpIG5pY2h0IHp1ciBXaWVkZXJ2ZXJ3ZW5kdW5nIMO2ZmZuZW46ICVzIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc5NgotbXNnaWQgInVuYWJsZSB0byBzZWVrIGluIHJldXNlZCBwYWNrZmlsZSIKLW1zZ3N0ciAiS29ubnRlIFwic2Vla1wiIG5pY2h0IGluIHdpZWRlcnZlcndlbmRldGVyIFBhY2tkYXRlaSBhdXNmw7xocmVuLiIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4MDcKLW1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmcm9tIHJldXNlZCBwYWNrZmlsZSIKLW1zZ3N0ciAiS29ubnRlIG5pY2h0IHZvbiB3aWVkZXJ2ZXJ3ZW5kZXRlciBQYWNrZGF0ZWkgbGVzZW4uIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjgzNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5NzIKIG1zZ2lkICJkaXNhYmxpbmcgYml0bWFwIHdyaXRpbmcsIHBhY2tzIGFyZSBzcGxpdCBkdWUgdG8gcGFjay5wYWNrU2l6ZUxpbWl0IgogbXNnc3RyICIiCiAiRGVha3RpdmllcmUgU2NocmVpYmVuIGRlciBCaXRtYXAsIFBha2V0ZSB3dXJkZW4gZHVyY2ggcGFjay5wYWNrU2l6ZUxpbWl0XG4iCiAiYXVmZ2V0cmVubnQuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjg0OAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5ODUKIG1zZ2lkICJXcml0aW5nIG9iamVjdHMiCiBtc2dzdHIgIlNjaHJlaWJlIE9iamVrdGUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTEwIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6ODgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA0NiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBzdGF0ICVzIgogbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBsZXNlbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5NjMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm90ZSAlPFBSSXUzMj4gb2JqZWN0cyB3aGlsZSBleHBlY3RpbmcgJTxQUkl1MzI+IgogbXNnc3RyICJTY2hyaWViICU8UFJJdTMyPiBPYmpla3RlIHfDpGhyZW5kICU8UFJJdTMyPiBlcndhcnRldCB3YXJlbi4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTE1NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMjk3CiBtc2dpZCAiZGlzYWJsaW5nIGJpdG1hcCB3cml0aW5nLCBhcyBzb21lIG9iamVjdHMgYXJlIG5vdCBiZWluZyBwYWNrZWQiCiBtc2dzdHIgIiIKICJEZWFrdGl2aWVyZSBTY2hyZWliZW4gZGVyIEJpdG1hcCwgZGEgZWluaWdlIE9iamVrdGUgbmljaHQgaW4gZWluZSBQYWNrLSIKICJEYXRlaVxuIgogImdlc2NocmllYmVuIHd1cmRlbi4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU4NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNzI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IG92ZXJmbG93IGluIHBhY2sgZm9yICVzIgogbXNnc3RyICJcImRlbHRhIGJhc2Ugb2Zmc2V0XCIgw5xiZXJsYXVmIGluIFBha2V0IGbDvHIgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU5NAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IG91dCBvZiBib3VuZCBmb3IgJXMiCiBtc2dzdHIgIlwiZGVsdGEgYmFzZSBvZmZzZXRcIiBsaWVndCBhdcOfZXJoYWxiIGRlcyBnw7xsdGlnZW4gQmVyZWljaHMgZsO8ciAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxODYzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwMDQKIG1zZ2lkICJDb3VudGluZyBvYmplY3RzIgogbXNnc3RyICJaw6RobGUgT2JqZWt0ZSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxOTk4Ci0jLCBjLWZvcm1hdAotbXNnaWQgInVuYWJsZSB0byBnZXQgc2l6ZSBvZiAlcyIKLW1zZ3N0ciAiS29ubnRlIEdyw7bDn2Ugdm9uICVzIG5pY2h0IGJlc3RpbW1lbi4iCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjAxMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBvYmplY3QgaGVhZGVyIG9mICVzIgogbXNnc3RyICJLb25udGUgS29wZmJlcmVpY2ggdm9uIE9iamVrdCAnJXMnIG5pY2h0IHBhcnNlbi4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA4MyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwOTkKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEwOQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjE5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIzNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBjYW5ub3QgYmUgcmVhZCIKIG1zZ3N0ciAiT2JqZWt0ICVzIGthbm4gbmljaHQgZ2VsZXNlbiB3ZXJkZW4uIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwODYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTEzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyMjIgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBpbmNvbnNpc3RlbnQgb2JqZWN0IGxlbmd0aCAoJTxQUkl1TUFYPiB2cyAlPFBSSXVNQVg+KSIKIG1zZ3N0ciAiSW5rb25zaXN0ZW50ZSBPYmpla3Rsw6RuZ2UgYmVpIE9iamVrdCAlcyAoJTxQUkl1TUFYPiB2cyAlPFBSSXVNQVg+KSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTIzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNTkKIG1zZ2lkICJzdWJvcHRpbWFsIHBhY2sgLSBvdXQgb2YgbWVtb3J5IgogbXNnc3RyICJ1bmfDvG5zdGlnZXMgUGFja2V0IC0gU3BlaWNoZXIgdm9sbCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNDUxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI1NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsdGEgY29tcHJlc3Npb24gdXNpbmcgdXAgdG8gJWQgdGhyZWFkcyIKIG1zZ3N0ciAiRGVsdGEtS29tcHJlc3Npb24gdmVyd2VuZGV0IGJpcyB6dSAlZCBUaHJlYWRzLiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNTgzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhY2sgb2JqZWN0cyByZWFjaGFibGUgZnJvbSB0YWcgJXMiCiBtc2dzdHIgIktvbm50ZSBrZWluZSBPYmpla3RlIHBhY2tlbiwgZGllIHZvbiBUYWcgJXMgZXJyZWljaGJhciBzaW5kLiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjcwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4MDEKIG1zZ2lkICJDb21wcmVzc2luZyBvYmplY3RzIgogbXNnc3RyICJLb21wcmltaWVyZSBPYmpla3RlIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2NzYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjgwNwogbXNnaWQgImluY29uc2lzdGVuY3kgd2l0aCBkZWx0YSBjb3VudCIKIG1zZ3N0ciAiSW5rb25zaXN0ZW56IG1pdCBkZXIgQW56YWhsIHZvbiBEZWx0YXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjc1MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleHBlY3RlZCBlZGdlIG9iamVjdCBJRCwgZ290IGdhcmJhZ2U6XG4iCkBAIC0xNDI5Miw3ICsxNzUxMSw3IEBACiAiRXJ3YXJ0ZXRlIFJhbmRvYmpla3QtSUQsIGVyaGllbHQgbnV0emxvc2UgRGF0ZW46XG4iCiAiICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3NTkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg5NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhwZWN0ZWQgb2JqZWN0IElELCBnb3QgZ2FyYmFnZTpcbiIKQEAgLTE0MzAxLDI2MyArMTc1MjAsMjU3IEBACiAiRXJ3YXJ0ZXRlIE9iamVrdC1JRCwgZXJoaWVsdCBudXR6bG9zZSBEYXRlbjpcbiIKICIgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg1NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTkyCiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgLS1taXNzaW5nIgogbXNnc3RyICJVbmfDvGx0aWdlciBXZXJ0IGbDvHIgLS1taXNzaW5nLiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTE2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzAyNAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDUxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE1OQogbXNnaWQgImNhbm5vdCBvcGVuIHBhY2sgaW5kZXgiCiBtc2dzdHIgIkthbm4gUGFrZXRpbmRleCBuaWNodCDDtmZmbmVuLiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTQ3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwODIKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9vc2Ugb2JqZWN0IGF0ICVzIGNvdWxkIG5vdCBiZSBleGFtaW5lZCIKIG1zZ3N0ciAiTG9zZXMgT2JqZWt0IGJlaSAlcyBrb25udGUgbmljaHQgdW50ZXJzdWNodCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwMzIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE2NwogbXNnaWQgInVuYWJsZSB0byBmb3JjZSBsb29zZSBvYmplY3QiCiBtc2dzdHIgIktvbm50ZSBsb3NlcyBPYmpla3QgbmljaHQgZXJ6d2luZ2VuLiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTIyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgcmV2ICclcyciCiBtc2dzdHIgIiclcycgaXN0IGtlaW4gQ29tbWl0LiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTI1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJldmlzaW9uICclcyciCiBtc2dzdHIgIlVuZ8O8bHRpZ2VyIENvbW1pdCAnJXMnLiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTUwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODgKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIHJlY2VudCBvYmplY3RzIgogbXNnc3RyICJLb25udGUgasO8bmdzdGUgT2JqZWt0ZSBuaWNodCBoaW56dWbDvGdlbi4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIwMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuc3VwcG9ydGVkIGluZGV4IHZlcnNpb24gJXMiCiBtc2dzdHIgIk5pY2h0IHVudGVyc3TDvHR6dGUgSW5kZXgtVmVyc2lvbiAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjA3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJyVzJyIKIG1zZ3N0ciAiVW5nw7xsdGlnZSBJbmRleC1WZXJzaW9uICclcyciCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIzNwotbXNnaWQgImRvIG5vdCBzaG93IHByb2dyZXNzIG1ldGVyIgotbXNnc3RyICJrZWluZSBGb3J0c2Nocml0dHNhbnplaWdlIGFuemVpZ2VuIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMzkKLW1zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIgotbXNnc3RyICJGb3J0c2Nocml0dHNhbnplaWdlIGFuemVpZ2VuIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDEKLW1zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKLW1zZ3N0ciAiRm9yc2Nocml0dHNhbnplaWdlIHfDpGhyZW5kIGRlcyBTY2hyZWliZW5zIHZvbiBPYmpla3RlbiBhbnplaWdlbiIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQ0Ci1tc2dpZCAic2ltaWxhciB0byAtLWFsbC1wcm9ncmVzcyB3aGVuIHByb2dyZXNzIG1ldGVyIGlzIHNob3duIgotbXNnc3RyICLDpGhubGljaCB6dSAtLWFsbC1wcm9ncmVzcyB3ZW5uIEZvcnRzY2hyaXR0c2FuemVpZ2UgZGFyc3RlbGx0IHdpcmQiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzgzCiBtc2dpZCAiPHZlcnNpb24+Wyw8b2Zmc2V0Pl0iCiBtc2dzdHIgIjxWZXJzaW9uPlssPE9mZnNldD5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4NAogbXNnaWQgIndyaXRlIHRoZSBwYWNrIGluZGV4IGZpbGUgaW4gdGhlIHNwZWNpZmllZCBpZHggZm9ybWF0IHZlcnNpb24iCiBtc2dzdHIgIiIKICJkaWUgSW5kZXgtRGF0ZWkgZGVzIFBha2V0ZXMgaW4gZGVyIGFuZ2VnZWJlbmVuIEluZGV4Zm9ybWF0LVZlcnNpb24gc2NocmVpYmVuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4NwogbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIG91dHB1dCBwYWNrIGZpbGUiCiBtc2dzdHIgIm1heGltYWxlIEdyw7bDn2UgZsO8ciBqZWRlIGF1c2dlZ2ViZW5lIFBha2V0ZGF0ZWkiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzg5CiBtc2dpZCAiaWdub3JlIGJvcnJvd2VkIG9iamVjdHMgZnJvbSBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlIgogbXNnc3RyICJnZWxpZWhlbmUgT2JqZWt0ZSB2b24gYWx0ZXJuYXRpdmVtIE9iamVrdHNwZWljaGVyIGlnbm9yaWVyZW4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzkxCiBtc2dpZCAiaWdub3JlIHBhY2tlZCBvYmplY3RzIgogbXNnc3RyICJnZXBhY2t0ZSBPYmpla3RlIGlnbm9yaWVyZW4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzkzCiBtc2dpZCAibGltaXQgcGFjayB3aW5kb3cgYnkgb2JqZWN0cyIKIG1zZ3N0ciAiUGFrZXRmZW5zdGVyIGR1cmNoIE9iamVrdGUgYmVncmVuemVuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NQogbXNnaWQgImxpbWl0IHBhY2sgd2luZG93IGJ5IG1lbW9yeSBpbiBhZGRpdGlvbiB0byBvYmplY3QgbGltaXQiCiBtc2dzdHIgIiIKICJQYWtldGZlbnN0ZXIsIHp1c8OkdHpsaWNoIHp1ciBPYmpla3RiZWdyZW56dW5nLCBkdXJjaCBTcGVpY2hlciBiZWdyZW56ZW4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk3CiBtc2dpZCAibWF4aW11bSBsZW5ndGggb2YgZGVsdGEgY2hhaW4gYWxsb3dlZCBpbiB0aGUgcmVzdWx0aW5nIHBhY2siCiBtc2dzdHIgIiIKICJtYXhpbWFsZSBMw6RuZ2UgZGVyIGVybGF1YnRlbiBEaWZmZXJlbnp2ZXJrZXR0dW5nIGltIHJlc3VsdGllcmVuZGVuIFBha2V0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5OQogbXNnaWQgInJldXNlIGV4aXN0aW5nIGRlbHRhcyIKIG1zZ3N0ciAiZXhpc3RpZXJlbmRlIFVudGVyc2NoaWVkZSB3aWVkZXJ2ZXJ3ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAxCiBtc2dpZCAicmV1c2UgZXhpc3Rpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiZXhpc3RpZXJlbmRlIE9iamVrdGUgd2llZGVydmVyd2VuZGVuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMwogbXNnaWQgInVzZSBPRlNfREVMVEEgb2JqZWN0cyIKIG1zZ3N0ciAiT0ZTX0RFTFRBIE9iamVrdGUgdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwNQogbXNnaWQgInVzZSB0aHJlYWRzIHdoZW4gc2VhcmNoaW5nIGZvciBiZXN0IGRlbHRhIG1hdGNoZXMiCiBtc2dzdHIgIiIKICJUaHJlYWRzIGJlaSBkZXIgU3VjaGUgbmFjaCBkZW4gYmVzdGVuIMOcYmVyZWluc3RpbW11bmdlbiBiZWkgVW50ZXJzY2hpZWRlbiAiCiAidmVyd2VuZGVuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwNwogbXNnaWQgImRvIG5vdCBjcmVhdGUgYW4gZW1wdHkgcGFjayBvdXRwdXQiCiBtc2dzdHIgImtlaW5lIGxlZXJlbiBQYWtldGUgZXJ6ZXVnZW4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA5CiBtc2dpZCAicmVhZCByZXZpc2lvbiBhcmd1bWVudHMgZnJvbSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAiQXJndW1lbnRlIGJlesO8Z2xpY2ggQ29tbWl0cyB2b24gZGVyIFN0YW5kYXJkLUVpbmdhYmUgbGVzZW4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDExCiBtc2dpZCAibGltaXQgdGhlIG9iamVjdHMgdG8gdGhvc2UgdGhhdCBhcmUgbm90IHlldCBwYWNrZWQiCiBtc2dzdHIgImRpZSBPYmpla3RlIHp1IHNvbGNoZW4sIGRpZSBub2NoIG5pY2h0IGdlcGFja3Qgd3VyZGVuLCBiZWdyZW56ZW4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDE0CiBtc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIGFueSByZWZlcmVuY2UiCiBtc2dzdHIgIk9iamVrdGUgZWluc2NobGllw59lbiwgZGllIHZvbiBqZWRlciBSZWZlcmVueiBlcnJlaWNoYmFyIHNpbmQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDE3CiBtc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlZmVycmVkIGJ5IHJlZmxvZyBlbnRyaWVzIgogbXNnc3RyICIiCiAiT2JqZWt0ZSBlaW5zY2hsaWXDn2VuLCBkaWUgdm9uIEVpbnRyw6RnZW4gZGVzIFJlZmxvZ3MgcmVmZXJlbnppZXJ0IHdlcmRlbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjgyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjAKIG1zZ2lkICJpbmNsdWRlIG9iamVjdHMgcmVmZXJyZWQgdG8gYnkgdGhlIGluZGV4IgogbXNnc3RyICJPYmpla3RlIGVpbnNjaGxpZcOfZW4sIGRpZSB2b20gSW5kZXggcmVmZXJlbnppZXJ0IHdlcmRlbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjMKIG1zZ2lkICJvdXRwdXQgcGFjayB0byBzdGRvdXQiCiBtc2dzdHIgIlBha2V0IGluIGRpZSBTdGFuZGFyZC1BdXNnYWJlIHNjaHJlaWJlbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjUKIG1zZ2lkICJpbmNsdWRlIHRhZyBvYmplY3RzIHRoYXQgcmVmZXIgdG8gb2JqZWN0cyB0byBiZSBwYWNrZWQiCiBtc2dzdHIgIlRhZy1PYmpla3RlIGVpbnNjaGxpZcOfZW4sIGRpZSBhdWYgZ2VwYWNrdGUgT2JqZWt0ZSByZWZlcmVuemllcmVuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyNwogbXNnaWQgImtlZXAgdW5yZWFjaGFibGUgb2JqZWN0cyIKIG1zZ3N0ciAibmljaHQgZXJyZWljaGJhcmUgT2JqZWt0ZSBiZWhhbHRlbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjkKIG1zZ2lkICJwYWNrIGxvb3NlIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgIm5pY2h0IGVycmVpY2hiYXJlIGxvc2UgT2JqZWt0ZSBwYWNrZW4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDMxCiBtc2dpZCAidW5wYWNrIHVucmVhY2hhYmxlIG9iamVjdHMgbmV3ZXIgdGhhbiA8dGltZT4iCiBtc2dzdHIgIm5pY2h0IGVycmVpY2hiYXJlIE9iamVrdGUgZW50cGFja2VuLCBkaWUgbmV1ZXIgYWxzIDxaZWl0PiBzaW5kIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQzNAorbXNnaWQgInVzZSB0aGUgc3BhcnNlIHJlYWNoYWJpbGl0eSBhbGdvcml0aG0iCittc2dzdHIgImRlbiBcInNwYXJzZVwiIEFsZ29yaXRobXVzIHp1ciBCZXN0aW1tdW5nIGRlciBFcnJlaWNoYmFya2VpdCBiZW51dHplbiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDM2CiBtc2dpZCAiY3JlYXRlIHRoaW4gcGFja3MiCiBtc2dzdHIgImTDvG5uZXJlIFBha2V0ZSBlcnpldWdlbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzgKIG1zZ2lkICJjcmVhdGUgcGFja3Mgc3VpdGFibGUgZm9yIHNoYWxsb3cgZmV0Y2hlcyIKIG1zZ3N0ciAiIgogIlBha2V0ZSBnZWVpZ25ldCBmw7xyIEFiaG9sdW5nIG1pdCB1bnZvbGxzdMOkbmRpZ2VyIEhpc3RvcmllIChzaGFsbG93KSBlcnpldWdlbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDAKIG1zZ2lkICJpZ25vcmUgcGFja3MgdGhhdCBoYXZlIGNvbXBhbmlvbiAua2VlcCBmaWxlIgogbXNnc3RyICJQYWtldGUgaWdub3JpZXJlbiwgZGllIC5rZWVwIERhdGVpZW4gaGFiZW4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQyCiBtc2dpZCAiaWdub3JlIHRoaXMgcGFjayIKIG1zZ3N0ciAiZGllc2VzIFBha2V0IGlnbm9yaWVyZW4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwNAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQ0CiBtc2dpZCAicGFjayBjb21wcmVzc2lvbiBsZXZlbCIKIG1zZ3N0ciAiS29tcHJpbWllcnVuZ3NncmFkIGbDvHIgUGFrZXRpZXJ1bmciCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwNgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQ2CiBtc2dpZCAiZG8gbm90IGhpZGUgY29tbWl0cyBieSBncmFmdHMiCiBtc2dzdHIgImtlaW5lIGvDvG5zdGxpY2hlbiBWb3Jnw6RuZ2VyLUNvbW1pdHMgKFwiZ3JhZnRzXCIpIHZlcmJlcmdlbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzA4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDgKIG1zZ2lkICJ1c2UgYSBiaXRtYXAgaW5kZXggaWYgYXZhaWxhYmxlIHRvIHNwZWVkIHVwIGNvdW50aW5nIG9iamVjdHMiCiBtc2dzdHIgIiIKICJCaXRtYXAtSW5kZXggKGZhbGxzIHZlcmbDvGdiYXIpIHp1ciBPcHRpbWllcnVuZyBkZXIgT2JqZWt0esOkaGx1bmcgYmVudXR6ZW4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxMAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDUwCiBtc2dpZCAid3JpdGUgYSBiaXRtYXAgaW5kZXggdG9nZXRoZXIgd2l0aCB0aGUgcGFjayBpbmRleCIKIG1zZ3N0ciAiQml0bWFwLUluZGV4IHp1c2FtbWVuIG1pdCBQYWNrLUluZGV4IHNjaHJlaWJlbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzEzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTQKK21zZ2lkICJ3cml0ZSBhIGJpdG1hcCBpbmRleCBpZiBwb3NzaWJsZSIKK21zZ3N0ciAiQml0bWFwLUluZGV4IHNjaHJlaWJlbiwgd2VubiBtw7ZnbGljaCIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU4CiBtc2dpZCAiaGFuZGxpbmcgZm9yIG1pc3Npbmcgb2JqZWN0cyIKIG1zZ3N0ciAiQmVoYW5kbHVuZyBmw7xyIGZlaGxlbmRlIE9iamVrdGUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxNgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDYxCiBtc2dpZCAiZG8gbm90IHBhY2sgb2JqZWN0cyBpbiBwcm9taXNvciBwYWNrZmlsZXMiCiBtc2dzdHIgIiIKICJrZWluZSBPYmpla3RlIGF1cyBQYWNrZGF0ZWllbiB2b24gcGFydGllbGwgZ2VrbG9udGVuIFJlbW90ZS1SZXBvc2l0b3JpZXMgIgogInBhY2tlbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzE4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NjMKIG1zZ2lkICJyZXNwZWN0IGlzbGFuZHMgZHVyaW5nIGRlbHRhIGNvbXByZXNzaW9uIgogbXNnc3RyICJEZWx0YS1Jc2xhbmRzIGJlaSBEZWx0YS1Lb21wcmVzc2lvbiBiZWFjaHRlbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsdGEgY2hhaW4gZGVwdGggJWQgaXMgdG9vIGRlZXAsIGZvcmNpbmcgJWQiCiBtc2dzdHIgIlRpZWZlIGbDvHIgVmVya2V0dHVuZyB2b24gVW50ZXJzY2hpZWRlbiAlZCBpc3QgenUgdGllZiwgZXJ6d2luZ2UgJWQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDk3CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2suZGVsdGFDYWNoZUxpbWl0IGlzIHRvbyBoaWdoLCBmb3JjaW5nICVkIgogbXNnc3RyICJwYWNrLmRlbHRhQ2FjaGVMaW1pdCBpc3QgenUgaG9jaCwgZXJ6d2luZ2UgJWQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTUxCiBtc2dpZCAiLS1tYXgtcGFjay1zaXplIGNhbm5vdCBiZSB1c2VkIHRvIGJ1aWxkIGEgcGFjayBmb3IgdHJhbnNmZXIiCiBtc2dzdHIgIiIKICItLW1heC1wYWNrLXNpemUga2FubiBuaWNodCBmw7xyIGRpZSBFcnN0ZWxsdW5nIGVpbmVzIFBha2V0cyBmw7xyIGVpbmUgIgogIsOcYmVydHJhZ3VuZ1xuIgogImJlbnV0enQgd2VyZGVuLiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NTMKIG1zZ2lkICJtaW5pbXVtIHBhY2sgc2l6ZSBsaW1pdCBpcyAxIE1pQiIKIG1zZ3N0ciAiTWluaW1hbGVzIExpbWl0IGbDvHIgZGllIFBha2V0Z3LDtsOfZSBpc3QgMSBNaUIuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1OAogbXNnaWQgIi0tdGhpbiBjYW5ub3QgYmUgdXNlZCB0byBidWlsZCBhbiBpbmRleGFibGUgcGFjayIKIG1zZ3N0ciAiIgogIi0tdGhpbiBrYW5uIG5pY2h0IGJlbnV0enQgd2VyZGVuLCB1bSBlaW4gaW5kaXppZXJiYXJlcyBQYWtldCB6dSBlcnN0ZWxsZW4uIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU2MQogbXNnaWQgIi0ta2VlcC11bnJlYWNoYWJsZSBhbmQgLS11bnBhY2stdW5yZWFjaGFibGUgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1rZWVwLXVucmVhY2hhYmxlIHVuZCAtLXVucGFjay11bnJlYWNoYWJsZSBzaW5kIGlua29tcGF0aWJlbCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDE3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NjcKIG1zZ2lkICJjYW5ub3QgdXNlIC0tZmlsdGVyIHdpdGhvdXQgLS1zdGRvdXQiCiBtc2dzdHIgIkthbm4gLS1maWx0ZXIgbmljaHQgb2huZSAtLXN0ZG91dCBiZW51dHplbi4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ3NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNjI3CiBtc2dpZCAiRW51bWVyYXRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiT2JqZWt0ZSBhdWZ6w6RobGVuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzY1NwogIywgYy1mb3JtYXQKLW1zZ2lkICJUb3RhbCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHJldXNlZCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPikiCittc2dpZCAiIgorIlRvdGFsICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcmV1c2VkICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcGFjay0iCisicmV1c2VkICU8UFJJdTMyPiIKIG1zZ3N0ciAiIgogIkdlc2FtdCAlPFBSSXUzMj4gKERlbHRhICU8UFJJdTMyPiksIFdpZWRlcnZlcndlbmRldCAlPFBSSXUzMj4gKERlbHRhICIKLSIlPFBSSXUzMj4pIgorIiU8UFJJdTMyPiksIFBhY2sgd2llZGVydmVyd2VuZGV0ICU8UFJJdTMyPiIKIAotIzogYnVpbHRpbi9wYWNrLXJlZnMuYzo3CisjOiBidWlsdGluL3BhY2stcmVmcy5jOjgKIG1zZ2lkICJnaXQgcGFjay1yZWZzIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgcGFjay1yZWZzIFs8T3B0aW9uZW4+XSIKIAotIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNQorIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNgogbXNnaWQgInBhY2sgZXZlcnl0aGluZyIKIG1zZ3N0ciAiYWxsZXMgcGFja2VuIgogCi0jOiBidWlsdGluL3BhY2stcmVmcy5jOjE2CisjOiBidWlsdGluL3BhY2stcmVmcy5jOjE3CiBtc2dpZCAicHJ1bmUgbG9vc2UgcmVmcyAoZGVmYXVsdCkiCiBtc2dzdHIgImxvc2UgUmVmZXJlbnplbiBlbnRmZXJuZW4gKFN0YW5kYXJkKSIKIApAQCAtMTQ1NzMsNzEgKzE3Nzg2LDcxIEBACiBtc2dpZCAiZ2l0IHBydW5lIFstbl0gWy12XSBbLS1wcm9ncmVzc10gWy0tZXhwaXJlIDx0aW1lPl0gWy0tXSBbPGhlYWQ+Li4uXSIKIG1zZ3N0ciAiZ2l0IHBydW5lIFstbl0gWy12XSBbLS1wcm9ncmVzc10gWy0tZXhwaXJlIDxaZWl0Pl0gWy0tXSBbPEJyYW5jaD4uLi5dIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTA5CisjOiBidWlsdGluL3BydW5lLmM6MTMxCiBtc2dpZCAicmVwb3J0IHBydW5lZCBvYmplY3RzIgogbXNnc3RyICJnZWzDtnNjaHRlIE9iamVrdGUgbWVsZGVuIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTEyCisjOiBidWlsdGluL3BydW5lLmM6MTM0CiBtc2dpZCAiZXhwaXJlIG9iamVjdHMgb2xkZXIgdGhhbiA8dGltZT4iCiBtc2dzdHIgIk9iamVrdGUgw6RsdGVyIGFscyA8WmVpdD4gdmVyZmFsbGVuIGxhc3NlbiIKIAotIzogYnVpbHRpbi9wcnVuZS5jOjExNAorIzogYnVpbHRpbi9wcnVuZS5jOjEzNgogbXNnaWQgImxpbWl0IHRyYXZlcnNhbCB0byBvYmplY3RzIG91dHNpZGUgcHJvbWlzb3IgcGFja2ZpbGVzIgogbXNnc3RyICIiCiAiVHJhdmVyc2llcnVuZyBhdWYgT2JqZWt0ZSBhdcOfZXJoYWxiIHZvbiBQYWNrZGF0ZWllbiBhdXMgcGFydGllbGwgZ2VrbG9udGVuICIKICJSZW1vdGUtUmVwb3NpdG9yaWVzIGVpbnNjaHLDpG5rZW4iCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMjkKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxNTAKIG1zZ2lkICJjYW5ub3QgcHJ1bmUgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCiBtc2dzdHIgImthbm4gXCJwcnVuZVwiIGluIHByZWNpb3VzLW9iamVjdHMgUmVwb3NpdG9yeSBuaWNodCBhdXNmw7xocmVuIgogCi0jOiBidWlsdGluL3B1bGwuYzo2MCBidWlsdGluL3B1bGwuYzo2MgorIzogYnVpbHRpbi9wdWxsLmM6NDUgYnVpbHRpbi9wdWxsLmM6NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlciBXZXJ0IGbDvHIgJXM6ICVzIgogCi0jOiBidWlsdGluL3B1bGwuYzo4MgorIzogYnVpbHRpbi9wdWxsLmM6NjcKIG1zZ2lkICJnaXQgcHVsbCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKIG1zZ3N0ciAiZ2l0IHB1bGwgWzxPcHRpb25lbj5dIFs8UmVwb3NpdG9yeT4gWzxSZWZzcGVjPi4uLl1dIgogCi0jOiBidWlsdGluL3B1bGwuYzoxMzMKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyMgogbXNnaWQgImNvbnRyb2wgZm9yIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIgogbXNnc3RyICJyZWt1cnNpdmUgQW5mb3JkZXJ1bmdlbiB2b24gU3VibW9kdWxlbiBrb250cm9sbGllcmVuIgogCi0jOiBidWlsdGluL3B1bGwuYzoxMzcKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyNgogbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBtZXJnaW5nIgogbXNnc3RyICJPcHRpb25lbiBiZXpvZ2VuIGF1ZiBNZXJnZSIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTQwCisjOiBidWlsdGluL3B1bGwuYzoxMjkKIG1zZ2lkICJpbmNvcnBvcmF0ZSBjaGFuZ2VzIGJ5IHJlYmFzaW5nIHJhdGhlciB0aGFuIG1lcmdpbmciCiBtc2dzdHIgIkludGVncmF0aW9uIHZvbiDDhG5kZXJ1bmdlbiBkdXJjaCBSZWJhc2Ugc3RhdHQgTWVyZ2UiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE2NyBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNDcgYnVpbHRpbi9yZXZlcnQuYzoxMjIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE1NyBidWlsdGluL3JlYmFzZS5jOjQ3MSBidWlsdGluL3JldmVydC5jOjEyNgogbXNnaWQgImFsbG93IGZhc3QtZm9yd2FyZCIKIG1zZ3N0ciAiVm9yc3B1bGVuIGVybGF1YmVuIgogCi0jOiBidWlsdGluL3B1bGwuYzoxNzYKKyM6IGJ1aWx0aW4vcHVsbC5jOjE2NgogbXNnaWQgImF1dG9tYXRpY2FsbHkgc3Rhc2gvc3Rhc2ggcG9wIGJlZm9yZSBhbmQgYWZ0ZXIgcmViYXNlIgogbXNnc3RyICJhdXRvbWF0aXNjaGVyIFN0YXNoL1N0YXNoLVBvcCB2b3IgdW5kIG5hY2ggZWluZXMgUmViYXNlIgogCi0jOiBidWlsdGluL3B1bGwuYzoxOTIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE4MgogbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBmZXRjaGluZyIKIG1zZ3N0ciAiT3B0aW9uZW4gYmV6b2dlbiBhdWYgRmV0Y2giCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjIwMgorIzogYnVpbHRpbi9wdWxsLmM6MTkyCiBtc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGxvY2FsIGJyYW5jaCIKIG1zZ3N0ciAiZGFzIMOcYmVyc2NocmVpYmVuIHZvbiBsb2thbGVuIEJyYW5jaGVzIGVyendpbmdlbiIKIAotIzogYnVpbHRpbi9wdWxsLmM6MjEwCisjOiBidWlsdGluL3B1bGwuYzoyMDAKIG1zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBwdWxsZWQgaW4gcGFyYWxsZWwiCiBtc2dzdHIgIkFuemFobCBkZXIgcGFyYWxsZWwgbWl0ICdwdWxsJyB6dSB2ZXJhcmJlaXRlbmRlbiBTdWJtb2R1bGUiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjMwNQorIzogYnVpbHRpbi9wdWxsLmM6MzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yIHB1bGwuZmY6ICVzIgogbXNnc3RyICJVbmfDvGx0aWdlciBXZXJ0IGbDvHIgcHVsbC5mZjogJXMiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyMQorIzogYnVpbHRpbi9wdWxsLmM6NDI2CiBtc2dpZCAiIgogIlRoZXJlIGlzIG5vIGNhbmRpZGF0ZSBmb3IgcmViYXNpbmcgYWdhaW5zdCBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0ICIKICJmZXRjaGVkLiIKQEAgLTE0NjQ1LDE0ICsxNzg1OCwxNCBAQAogIkVzIGdpYnQga2VpbmVuIEthbmRpZGF0ZW4gZsO8ciBSZWJhc2UgaW5uZXJoYWxiIGRlciBSZWZlcmVuemVuLCBkaWUgZWJlbiAiCiAiYW5nZWZvcmRlcnQgd3VyZGVuLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDIzCisjOiBidWlsdGluL3B1bGwuYzo0MjgKIG1zZ2lkICIiCiAiVGhlcmUgYXJlIG5vIGNhbmRpZGF0ZXMgZm9yIG1lcmdpbmcgYW1vbmcgdGhlIHJlZnMgdGhhdCB5b3UganVzdCBmZXRjaGVkLiIKIG1zZ3N0ciAiIgogIkVzIGdpYnQga2VpbmUgS2FuZGlkYXRlbiBmw7xyIE1lcmdlIGlubmVyaGFsYiBkZXIgUmVmZXJlbnplbiwgZGllIGViZW4gIgogImFuZ2Vmb3JkZXJ0IHd1cmRlbi4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyNAorIzogYnVpbHRpbi9wdWxsLmM6NDI5CiBtc2dpZCAiIgogIkdlbmVyYWxseSB0aGlzIG1lYW5zIHRoYXQgeW91IHByb3ZpZGVkIGEgd2lsZGNhcmQgcmVmc3BlYyB3aGljaCBoYWQgbm9cbiIKICJtYXRjaGVzIG9uIHRoZSByZW1vdGUgZW5kLiIKQEAgLTE0NjYwLDcgKzE3ODczLDcgQEAKICJJbSBBbGxnZW1laW5lbiBiZWRldXRldCBkYXMsIGRhc3MgU2llIGVpbmVuIFJlZnNwZWMgbWl0IFdpbGRjYXJkcyBhbmdlZ2ViZW5cbiIKICJoYWJlbiwgZGVyIGF1ZiBkZXIgR2VnZW5zZWl0ZSBtaXQga2VpbmVuIFJlZmVyZW56ZW4gw7xiZXJlaW5zdGltbXQuIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MjcKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzMgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFza2VkIHRvIHB1bGwgZnJvbSB0aGUgcmVtb3RlICclcycsIGJ1dCBkaWQgbm90IHNwZWNpZnlcbiIKQEAgLTE0NjcyLDM5ICsxNzg4NSwzOSBAQAogIlJlcG9zaXRvcnkgZsO8ciBkZW4gYWt0dWVsbGVuIEJyYW5jaCBpc3QsIG3DvHNzZW4gU2llIGVpbmVuIEJyYW5jaCBhdWZcbiIKICJkZXIgQmVmZWhsc3plaWxlIGFuZ2ViZW4uIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzIgYnVpbHRpbi9yZWJhc2UuYzo3NjEgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3MworIzogYnVpbHRpbi9wdWxsLmM6NDM3IGJ1aWx0aW4vcmViYXNlLmM6MTQwOSBnaXQtcGFyc2UtcmVtb3RlLnNoOjczCiBtc2dpZCAiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLiIKIG1zZ3N0ciAiSW0gTW9tZW50IGF1ZiBrZWluZW0gQnJhbmNoLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM0IGJ1aWx0aW4vcHVsbC5jOjQ0OSBnaXQtcGFyc2UtcmVtb3RlLnNoOjc5CisjOiBidWlsdGluL3B1bGwuYzo0MzkgYnVpbHRpbi9wdWxsLmM6NDU0IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzkKIG1zZ2lkICJQbGVhc2Ugc3BlY2lmeSB3aGljaCBicmFuY2ggeW91IHdhbnQgdG8gcmViYXNlIGFnYWluc3QuIgogbXNnc3RyICIiCiAiQml0dGUgZ2ViZW4gU2llIGRlbiBCcmFuY2ggYW4sIGdlZ2VuIHdlbGNoZW4gU2llIFwicmViYXNlXCIgYXVzZsO8aHJlbiAiCiAibcO2Y2h0ZW4uIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzYgYnVpbHRpbi9wdWxsLmM6NDUxIGdpdC1wYXJzZS1yZW1vdGUuc2g6ODIKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0MSBidWlsdGluL3B1bGwuYzo0NTYgZ2l0LXBhcnNlLXJlbW90ZS5zaDo4MgogbXNnaWQgIlBsZWFzZSBzcGVjaWZ5IHdoaWNoIGJyYW5jaCB5b3Ugd2FudCB0byBtZXJnZSB3aXRoLiIKIG1zZ3N0ciAiQml0dGUgZ2ViZW4gU2llIGRlbiBCcmFuY2ggYW4sIHdlbGNoZW4gU2llIHp1c2FtbWVuZsO8aHJlbiBtw7ZjaHRlbi4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzNyBidWlsdGluL3B1bGwuYzo0NTIKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0MiBidWlsdGluL3B1bGwuYzo0NTcKIG1zZ2lkICJTZWUgZ2l0LXB1bGwoMSkgZm9yIGRldGFpbHMuIgogbXNnc3RyICJTaWVoZSBnaXQtcHVsbCgxKSBmw7xyIHdlaXRlcmUgRGV0YWlscy4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NDUgYnVpbHRpbi9wdWxsLmM6NDU0Ci0jOiBidWlsdGluL3JlYmFzZS5jOjc2NyBnaXQtcGFyc2UtcmVtb3RlLnNoOjY0CisjOiBidWlsdGluL3B1bGwuYzo0NDQgYnVpbHRpbi9wdWxsLmM6NDUwIGJ1aWx0aW4vcHVsbC5jOjQ1OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE1IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjQKIG1zZ2lkICI8cmVtb3RlPiIKIG1zZ3N0ciAiPFJlbW90ZS1SZXBvc2l0b3J5PiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM5IGJ1aWx0aW4vcHVsbC5jOjQ1NCBidWlsdGluL3B1bGwuYzo0NTkKLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU1NiBnaXQtcGFyc2UtcmVtb3RlLnNoOjY1CisjOiBidWlsdGluL3B1bGwuYzo0NDQgYnVpbHRpbi9wdWxsLmM6NDU5IGJ1aWx0aW4vcHVsbC5jOjQ2NAorIzogZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NQogbXNnaWQgIjxicmFuY2g+IgogbXNnc3RyICI8QnJhbmNoPiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDQ3IGJ1aWx0aW4vcmViYXNlLmM6NzU5IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzUKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ1MiBidWlsdGluL3JlYmFzZS5jOjE0MDcgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3NQogbXNnaWQgIlRoZXJlIGlzIG5vIHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJFcyBnaWJ0IGtlaW5lIFRyYWNraW5nLUluZm9ybWF0aW9uZW4gZsO8ciBkZW4gYWt0dWVsbGVuIEJyYW5jaC4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ1NiBnaXQtcGFyc2UtcmVtb3RlLnNoOjk1CisjOiBidWlsdGluL3B1bGwuYzo0NjEgZ2l0LXBhcnNlLXJlbW90ZS5zaDo5NQogbXNnaWQgIiIKICJJZiB5b3Ugd2lzaCB0byBzZXQgdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoaXMgYnJhbmNoIHlvdSBjYW4gZG8gc28gd2l0aDoiCiBtc2dzdHIgIiIKQEAgLTE0NzEyLDcgKzE3OTI1LDcgQEAKICJTaWVcbiIKICJkaWVzIHR1biBtaXQ6IgogCi0jOiBidWlsdGluL3B1bGwuYzo0NjEKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ2NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBjb25maWd1cmF0aW9uIHNwZWNpZmllcyB0byBtZXJnZSB3aXRoIHRoZSByZWYgJyVzJ1xuIgpAQCAtMTQ3MjIsMzQgKzE3OTM1LDM0IEBACiAiZGVzIFJlbW90ZS1SZXBvc2l0b3JpZXMgZHVyY2h6dWbDvGhyZW4sIGFiZXIgZGllc2UgUmVmZXJlbnpcbiIKICJ3dXJkZSBuaWNodCBhbmdlZm9yZGVydC4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjU2NQorIzogYnVpbHRpbi9wdWxsLmM6NTc2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgY29tbWl0ICVzIgogbXNnc3RyICJLb25udGUgbmljaHQgYXVmIENvbW1pdCAnJXMnIHp1Z3JlaWZlbi4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg0MworIzogYnVpbHRpbi9wdWxsLmM6ODU3CiBtc2dpZCAiaWdub3JpbmcgLS12ZXJpZnktc2lnbmF0dXJlcyBmb3IgcmViYXNlIgogbXNnc3RyICJJZ25vcmllcmUgLS12ZXJpZnktc2lnbmF0dXJlcyBmw7xyIFJlYmFzZSIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODkxCisjOiBidWlsdGluL3B1bGwuYzo5MTIKIG1zZ2lkICItLVtuby1dYXV0b3N0YXNoIG9wdGlvbiBpcyBvbmx5IHZhbGlkIHdpdGggLS1yZWJhc2UuIgogbXNnc3RyICItLVtuby1dYXV0b3N0YXNoIGlzdCBudXIgbWl0IC0tcmViYXNlIHp1bMOkc3NpZy4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg5OQorIzogYnVpbHRpbi9wdWxsLmM6OTIwCiBtc2dpZCAiVXBkYXRpbmcgYW4gdW5ib3JuIGJyYW5jaCB3aXRoIGNoYW5nZXMgYWRkZWQgdG8gdGhlIGluZGV4LiIKIG1zZ3N0ciAiIgogIkFrdHVhbGlzaWVyZSBlaW5lbiB1bmdlYm9yZW5lbiBCcmFuY2ggbWl0IMOEbmRlcnVuZ2VuLCBkaWUgenVtIENvbW1pdCAiCiAidm9yZ2VtZXJrdCBzaW5kLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTAyCisjOiBidWlsdGluL3B1bGwuYzo5MjQKIG1zZ2lkICJwdWxsIHdpdGggcmViYXNlIgogbXNnc3RyICJQdWxsIG1pdCBSZWJhc2UiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjkwMworIzogYnVpbHRpbi9wdWxsLmM6OTI1CiBtc2dpZCAicGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKIG1zZ3N0ciAiQml0dGUgY29tbWl0dGVuIFNpZSBkaWUgw4RuZGVydW5nZW4gb2RlciBiZW51dHplbiBTaWUgXCJzdGFzaFwiLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTI4CisjOiBidWlsdGluL3B1bGwuYzo5NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImZldGNoIHVwZGF0ZWQgdGhlIGN1cnJlbnQgYnJhbmNoIGhlYWQuXG4iCkBAIC0xNDc1OSw3ICsxNzk3Miw3IEBACiAiXCJmZXRjaFwiIGFrdHVhbGlzaWVydGUgZGllIFNwaXR6ZSBkZXMgYWt0dWVsbGVuIEJyYW5jaGVzLlxuIgogIlNwdWxlIElociBBcmJlaXRzdmVyemVpY2huaXMgdm9uIENvbW1pdCAlcyB2b3IuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MzQKKyM6IGJ1aWx0aW4vcHVsbC5jOjk1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IGZhc3QtZm9yd2FyZCB5b3VyIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTE0Nzc2LDE1ICsxNzk4OSwxNSBAQAogIiQgZ2l0IHJlc2V0IC0taGFyZFxuIgogInp1ciBXaWVkZXJoZXJzdGVsbHVuZyBhdXMuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5NDkKKyM6IGJ1aWx0aW4vcHVsbC5jOjk3MQogbXNnaWQgIkNhbm5vdCBtZXJnZSBtdWx0aXBsZSBicmFuY2hlcyBpbnRvIGVtcHR5IGhlYWQuIgogbXNnc3RyICJLYW5uIG5pY2h0IG1laHJlcmUgQnJhbmNoZXMgaW4gZWluZW4gbGVlcmVuIEJyYW5jaCB6dXNhbW1lbmbDvGhyZW4uIgogCi0jOiBidWlsdGluL3B1bGwuYzo5NTMKKyM6IGJ1aWx0aW4vcHVsbC5jOjk3NQogbXNnaWQgIkNhbm5vdCByZWJhc2Ugb250byBtdWx0aXBsZSBicmFuY2hlcy4iCiBtc2dzdHIgIkthbm4gUmViYXNlIG5pY2h0IGF1ZiBtZWhyZXJlIEJyYW5jaGVzIGF1c2bDvGhyZW4uIgogCi0jOiBidWlsdGluL3B1bGwuYzo5NjAKKyM6IGJ1aWx0aW4vcHVsbC5jOjk4MgogbXNnaWQgImNhbm5vdCByZWJhc2Ugd2l0aCBsb2NhbGx5IHJlY29yZGVkIHN1Ym1vZHVsZSBtb2RpZmljYXRpb25zIgogbXNnc3RyICIiCiAiS2FubiBSZWJhc2UgbmljaHQgbWl0IGxva2FsIGF1ZmdlemVpY2huZXRlbiDDhG5kZXJ1bmdlbiBpbiBTdWJtb2R1bGVuICIKQEAgLTE0Nzk0LDE1ICsxODAwNywxNSBAQAogbXNnaWQgImdpdCBwdXNoIFs8b3B0aW9ucz5dIFs8cmVwb3NpdG9yeT4gWzxyZWZzcGVjPi4uLl1dIgogbXNnc3RyICJnaXQgcHVzaCBbPE9wdGlvbmVuPl0gWzxSZXBvc2l0b3J5PiBbPFJlZnNwZWM+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjExMQorIzogYnVpbHRpbi9wdXNoLmM6MTEyCiBtc2dpZCAidGFnIHNob3J0aGFuZCB3aXRob3V0IDx0YWc+IgogbXNnc3RyICJLdXJ6c2NocmlmdCBmw7xyIFRhZyBvaG5lIDxUYWc+IgogCi0jOiBidWlsdGluL3B1c2guYzoxMjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjEyMgogbXNnaWQgIi0tZGVsZXRlIG9ubHkgYWNjZXB0cyBwbGFpbiB0YXJnZXQgcmVmIG5hbWVzIgogbXNnc3RyICJEaWUgT3B0aW9uIC0tZGVsZXRlIGFremVwdGllcnQgbnVyIHJlaW5lIFJlZmVyZW56bmFtZW4gYWxzIFppZWwuIgogCi0jOiBidWlsdGluL3B1c2guYzoxNjUKKyM6IGJ1aWx0aW4vcHVzaC5jOjE2OAogbXNnaWQgIiIKICJcbiIKICJUbyBjaG9vc2UgZWl0aGVyIG9wdGlvbiBwZXJtYW5lbnRseSwgc2VlIHB1c2guZGVmYXVsdCBpbiAnZ2l0IGhlbHAgY29uZmlnJy4iCkBAIC0xNDgxMSw3ICsxODAyNCw3IEBACiAiVW0gZWluZSBWYXJpYW50ZSBwZXJtYW5lbnQgenUgdmVyd2VuZGVuLCBzaWVoZSBwdXNoLmRlZmF1bHQgaW4gJ2dpdCBoZWxwICIKICJjb25maWcnLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTY4CisjOiBidWlsdGluL3B1c2guYzoxNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSB1cHN0cmVhbSBicmFuY2ggb2YgeW91ciBjdXJyZW50IGJyYW5jaCBkb2VzIG5vdCBtYXRjaFxuIgpAQCAtMTQ4MzcsNyArMTgwNTAsNyBAQAogIiAgICBnaXQgcHVzaCAlcyBIRUFEXG4iCiAiJXMiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE4MworIzogYnVpbHRpbi9wdXNoLmM6MTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXJlIG5vdCBjdXJyZW50bHkgb24gYSBicmFuY2guXG4iCkBAIC0xNDg1Miw3ICsxODA2NSw3IEBACiAiXG4iCiAiICAgIGdpdCBwdXNoICVzIEhFQUQ6PE5hbWUtZGVzLVJlbW90ZS1CcmFuY2hlcz5cbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTk3CisjOiBidWlsdGluL3B1c2guYzoyMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBjdXJyZW50IGJyYW5jaCAlcyBoYXMgbm8gdXBzdHJlYW0gYnJhbmNoLlxuIgpAQCAtMTQ4NjYsMTMgKzE4MDc5LDEzIEBACiAiXG4iCiAiICAgIGdpdCBwdXNoIC0tc2V0LXVwc3RyZWFtICVzICVzXG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjIwNQorIzogYnVpbHRpbi9wdXNoLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBjdXJyZW50IGJyYW5jaCAlcyBoYXMgbXVsdGlwbGUgdXBzdHJlYW0gYnJhbmNoZXMsIHJlZnVzaW5nIHRvIHB1c2guIgogbXNnc3RyICIiCiAiRGVyIGFrdHVlbGxlIEJyYW5jaCAlcyBoYXQgbWVocmVyZSBVcHN0cmVhbS1CcmFuY2hlcywgXCJwdXNoXCIgdmVyd2VpZ2VydC4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjIwOAorIzogYnVpbHRpbi9wdXNoLmM6MjExCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXJlIHB1c2hpbmcgdG8gcmVtb3RlICclcycsIHdoaWNoIGlzIG5vdCB0aGUgdXBzdHJlYW0gb2ZcbiIKQEAgLTE0ODgzLDE0ICsxODA5NiwxNCBAQAogIkJyYW5jaGVzICclcycgaXN0LCBvaG5lIGFuenVnZWJlbiwgd2FzIHZlcnNlbmRldCB3ZXJkZW4gc29sbCwgdW0gd2VsY2hlblxuIgogIlJlbW90ZS1CcmFuY2ggenUgYWt0dWFsaXNpZXJlbi4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI2NworIzogYnVpbHRpbi9wdXNoLmM6MjcwCiBtc2dpZCAiIgogIllvdSBkaWRuJ3Qgc3BlY2lmeSBhbnkgcmVmc3BlY3MgdG8gcHVzaCwgYW5kIHB1c2guZGVmYXVsdCBpcyBcIm5vdGhpbmdcIi4iCiBtc2dzdHIgIiIKICJTaWUgaGFiZW4ga2VpbmUgUmVmc3BlYyBmw7xyIFwicHVzaFwiIGFuZ2VnZWJlbiwgdW5kIHB1c2guZGVmYXVsdCBpc3QgIgogIlwibm90aGluZ1wiLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mjc0CisjOiBidWlsdGluL3B1c2guYzoyNzcKIG1zZ2lkICIiCiAiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHRpcCBvZiB5b3VyIGN1cnJlbnQgYnJhbmNoIGlzIGJlaGluZFxuIgogIml0cyByZW1vdGUgY291bnRlcnBhcnQuIEludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXMgKGUuZy5cbiIKQEAgLTE0OTA0LDcgKzE4MTE3LDcgQEAKICJTaWVoZSBhdWNoIGRpZSBTZWt0aW9uICdOb3RlIGFib3V0IGZhc3QtZm9yd2FyZHMnIGluICdnaXQgcHVzaCAtLWhlbHAnXG4iCiAiZsO8ciB3ZWl0ZXJlIERldGFpbHMuIgogCi0jOiBidWlsdGluL3B1c2guYzoyODAKKyM6IGJ1aWx0aW4vcHVzaC5jOjI4MwogbXNnaWQgIiIKICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSBhIHB1c2hlZCBicmFuY2ggdGlwIGlzIGJlaGluZCBpdHMgcmVtb3RlXG4iCiAiY291bnRlcnBhcnQuIENoZWNrIG91dCB0aGlzIGJyYW5jaCBhbmQgaW50ZWdyYXRlIHRoZSByZW1vdGUgY2hhbmdlc1xuIgpAQCAtMTQ5MTgsNyArMTgxMzEsNyBAQAogIlNpZWhlIGF1Y2ggZGllIFNla3Rpb24gJ05vdGUgYWJvdXQgZmFzdC1mb3J3YXJkcycgaW4gJ2dpdCBwdXNoIC0taGVscCdcbiIKICJmw7xyIHdlaXRlcmUgRGV0YWlscy4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI4NgorIzogYnVpbHRpbi9wdXNoLmM6Mjg5CiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSByZW1vdGUgY29udGFpbnMgd29yayB0aGF0IHlvdSBkb1xuIgogIm5vdCBoYXZlIGxvY2FsbHkuIFRoaXMgaXMgdXN1YWxseSBjYXVzZWQgYnkgYW5vdGhlciByZXBvc2l0b3J5IHB1c2hpbmdcbiIKQEAgLTE0OTM3LDEzICsxODE1MCwxMyBAQAogIlNpZWhlIGF1Y2ggZGllIFNla3Rpb24gJ05vdGUgYWJvdXQgZmFzdC1mb3J3YXJkcycgaW4gJ2dpdCBwdXNoIC0taGVscCdcbiIKICJmw7xyIHdlaXRlcmUgRGV0YWlscy4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI5MworIzogYnVpbHRpbi9wdXNoLmM6Mjk2CiBtc2dpZCAiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHRhZyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgcmVtb3RlLiIKIG1zZ3N0ciAiIgogIkFrdHVhbGlzaWVydW5nZW4gd3VyZGVuIHp1csO8Y2tnZXdpZXNlbiwgd2VpbCBkYXMgVGFnIGJlcmVpdHNcbiIKICJpbSBSZW1vdGUtUmVwb3NpdG9yeSBleGlzdGllcnQuIgogCi0jOiBidWlsdGluL3B1c2guYzoyOTYKKyM6IGJ1aWx0aW4vcHVzaC5jOjI5OQogbXNnaWQgIiIKICJZb3UgY2Fubm90IHVwZGF0ZSBhIHJlbW90ZSByZWYgdGhhdCBwb2ludHMgYXQgYSBub24tY29tbWl0IG9iamVjdCxcbiIKICJvciB1cGRhdGUgYSByZW1vdGUgcmVmIHRvIG1ha2UgaXQgcG9pbnQgYXQgYSBub24tY29tbWl0IG9iamVjdCxcbiIKQEAgLTE0OTUzLDIyICsxODE2Niw5OSBAQAogImRhcyBrZWluIENvbW1pdCBpc3QsIG9kZXIgZXMgYXVmIGVpbiBzb2xjaGVzIE9iamVrdCB6ZWlnZW4gbGFzc2VuLCBvaG5lXG4iCiAiZGllIE9wdGlvbiAnLS1mb3JjZScgenUgdmVyd2VuZGVuLlxuIgogCi0jOiBidWlsdGluL3B1c2guYzozNTcKKyM6IGJ1aWx0aW4vcHVzaC5jOjM2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJQdXNoaW5nIHRvICVzXG4iCi1tc2dzdHIgIlZlcnNlbmRlIG5hY2ggJXNcbiIKK21zZ3N0ciAiUHVzaCBuYWNoICVzXG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM2MQorIzogYnVpbHRpbi9wdXNoLmM6MzY3CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwdXNoIHNvbWUgcmVmcyB0byAnJXMnIgogbXNnc3RyICJGZWhsZXIgYmVpbSBWZXJzZW5kZW4gZWluaWdlciBSZWZlcmVuemVuIG5hY2ggJyVzJyIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mzk1CisjOiBidWlsdGluL3B1c2guYzo1NDIKK21zZ2lkICJyZXBvc2l0b3J5IgorbXNnc3RyICJSZXBvc2l0b3J5IgorCisjOiBidWlsdGluL3B1c2guYzo1NDMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjQKK21zZ2lkICJwdXNoIGFsbCByZWZzIgorbXNnc3RyICJhbGxlIFJlZmVyZW56ZW4gdmVyc2VuZGVuIgorCisjOiBidWlsdGluL3B1c2guYzo1NDQgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjYKK21zZ2lkICJtaXJyb3IgYWxsIHJlZnMiCittc2dzdHIgImFsbGUgUmVmZXJlbnplbiBzcGllZ2VsbiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ2Cittc2dpZCAiZGVsZXRlIHJlZnMiCittc2dzdHIgIlJlZmVyZW56ZW4gbMO2c2NoZW4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0NworbXNnaWQgInB1c2ggdGFncyAoY2FuJ3QgYmUgdXNlZCB3aXRoIC0tYWxsIG9yIC0tbWlycm9yKSIKK21zZ3N0ciAiVGFncyB2ZXJzZW5kZW4gKGthbm4gbmljaHQgbWl0IC0tYWxsIG9kZXIgLS1taXJyb3IgdmVyd2VuZGV0IHdlcmRlbikiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1MCBidWlsdGluL3NlbmQtcGFjay5jOjE2NworbXNnaWQgImZvcmNlIHVwZGF0ZXMiCittc2dzdHIgIkFrdHVhbGlzaWVydW5nIGVyendpbmdlbiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgxCittc2dpZCAiPHJlZm5hbWU+OjxleHBlY3Q+IgorbXNnc3RyICI8UmVmZXJlbnpuYW1lPjo8RXJ3YXJ0dW5nc3dlcnQ+IgorCisjOiBidWlsdGluL3B1c2guYzo1NTMgYnVpbHRpbi9zZW5kLXBhY2suYzoxODIKK21zZ2lkICJyZXF1aXJlIG9sZCB2YWx1ZSBvZiByZWYgdG8gYmUgYXQgdGhpcyB2YWx1ZSIKK21zZ3N0ciAiUmVmZXJlbnogbXVzcyBzaWNoIGF1ZiBkZW0gYW5nZWdlYmVuZW4gV2VydCBiZWZpbmRlbiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU2Cittc2dpZCAiY29udHJvbCByZWN1cnNpdmUgcHVzaGluZyBvZiBzdWJtb2R1bGVzIgorbXNnc3RyICJyZWt1cnNpdmVuIFwicHVzaFwiIHZvbiBTdWJtb2R1bGVuIHN0ZXVlcm4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1OCBidWlsdGluL3NlbmQtcGFjay5jOjE3NQorbXNnaWQgInVzZSB0aGluIHBhY2siCittc2dzdHIgImtsZWluZXJlIFBha2V0ZSB2ZXJ3ZW5kZW4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1OSBidWlsdGluL3B1c2guYzo1NjAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjEKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYyCittc2dpZCAicmVjZWl2ZSBwYWNrIHByb2dyYW0iCittc2dzdHIgIidyZWNlaXZlIHBhY2snIFByb2dyYW1tIgorCisjOiBidWlsdGluL3B1c2guYzo1NjEKK21zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL3N0YXR1cyIKK21zZ3N0ciAiVXBzdHJlYW0gZsO8ciBcImdpdCBwdWxsL3N0YXR1c1wiIHNldHplbiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTY0Cittc2dpZCAicHJ1bmUgbG9jYWxseSByZW1vdmVkIHJlZnMiCittc2dzdHIgImxva2FsIGdlbMO2c2NodGUgUmVmZXJlbnplbiBlbnRmZXJuZW4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2NgorbXNnaWQgImJ5cGFzcyBwcmUtcHVzaCBob29rIgorbXNnc3RyICJcInByZS1wdXNoIGhvb2tcIiB1bWdlaGVuIgorCisjOiBidWlsdGluL3B1c2guYzo1NjcKK21zZ2lkICJwdXNoIG1pc3NpbmcgYnV0IHJlbGV2YW50IHRhZ3MiCittc2dzdHIgImZlaGxlbmRlLCBhYmVyIHJlbGV2YW50ZSBUYWdzIHZlcnNlbmRlbiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY5Cittc2dpZCAiR1BHIHNpZ24gdGhlIHB1c2giCittc2dzdHIgInNpZ25pZXJ0IFwicHVzaFwiIG1pdCBHUEciCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3MiBidWlsdGluL3NlbmQtcGFjay5jOjE3NgorbXNnaWQgInJlcXVlc3QgYXRvbWljIHRyYW5zYWN0aW9uIG9uIHJlbW90ZSBzaWRlIgorbXNnc3RyICJSZWZlcmVuemVuIGF0b21hciB2ZXJzZW5kZW4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU5MAorbXNnaWQgIi0tZGVsZXRlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWxsLCAtLW1pcnJvciBhbmQgLS10YWdzIgorbXNnc3RyICJEaWUgT3B0aW9uIC0tZGVsZXRlIGlzdCBpbmtvbXBhdGliZWwgbWl0IC0tYWxsLCAtLW1pcnJvciB1bmQgLS10YWdzLiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTkyCittc2dpZCAiLS1kZWxldGUgZG9lc24ndCBtYWtlIHNlbnNlIHdpdGhvdXQgYW55IHJlZnMiCittc2dzdHIgIkRpZSBPcHRpb24gLS1kZWxldGUga2FubiBudXIgbWl0IFJlZmVyZW56ZW4gdmVyd2VuZGV0IHdlcmRlbi4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjYxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcmVwb3NpdG9yeSAnJXMnIgogbXNnc3RyICJ1bmfDvGx0aWdlcyBSZXBvc2l0b3J5ICclcyciCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM5NgorIzogYnVpbHRpbi9wdXNoLmM6NjEzCiBtc2dpZCAiIgogIk5vIGNvbmZpZ3VyZWQgcHVzaCBkZXN0aW5hdGlvbi5cbiIKICJFaXRoZXIgc3BlY2lmeSB0aGUgVVJMIGZyb20gdGhlIGNvbW1hbmQtbGluZSBvciBjb25maWd1cmUgYSByZW1vdGUgIgpAQCAtMTQ5OTAsMTA0ICsxODI4MCwyNyBAQAogIlxuIgogIiAgICBnaXQgcHVzaCA8TmFtZT5cbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6NTUxCi1tc2dpZCAicmVwb3NpdG9yeSIKLW1zZ3N0ciAiUmVwb3NpdG9yeSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY0Ci1tc2dpZCAicHVzaCBhbGwgcmVmcyIKLW1zZ3N0ciAiYWxsZSBSZWZlcmVuemVuIHZlcnNlbmRlbiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTUzIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY2Ci1tc2dpZCAibWlycm9yIGFsbCByZWZzIgotbXNnc3RyICJhbGxlIFJlZmVyZW56ZW4gc3BpZWdlbG4iCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1NQotbXNnaWQgImRlbGV0ZSByZWZzIgotbXNnc3RyICJSZWZlcmVuemVuIGzDtnNjaGVuIgotCi0jOiBidWlsdGluL3B1c2guYzo1NTYKLW1zZ2lkICJwdXNoIHRhZ3MgKGNhbid0IGJlIHVzZWQgd2l0aCAtLWFsbCBvciAtLW1pcnJvcikiCi1tc2dzdHIgIlRhZ3MgdmVyc2VuZGVuIChrYW5uIG5pY2h0IG1pdCAtLWFsbCBvZGVyIC0tbWlycm9yIHZlcndlbmRldCB3ZXJkZW4pIgotCi0jOiBidWlsdGluL3B1c2guYzo1NTkgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjcKLW1zZ2lkICJmb3JjZSB1cGRhdGVzIgotbXNnc3RyICJBa3R1YWxpc2llcnVuZyBlcnp3aW5nZW4iCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2MSBidWlsdGluL3NlbmQtcGFjay5jOjE4MQotbXNnaWQgIjxyZWZuYW1lPjo8ZXhwZWN0PiIKLW1zZ3N0ciAiPFJlZmVyZW56bmFtZT46PEVyd2FydHVuZ3N3ZXJ0PiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTYyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgyCi1tc2dpZCAicmVxdWlyZSBvbGQgdmFsdWUgb2YgcmVmIHRvIGJlIGF0IHRoaXMgdmFsdWUiCi1tc2dzdHIgIlJlZmVyZW56IG11c3Mgc2ljaCBhdWYgZGVtIGFuZ2VnZWJlbmVuIFdlcnQgYmVmaW5kZW4iCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2NQotbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIHB1c2hpbmcgb2Ygc3VibW9kdWxlcyIKLW1zZ3N0ciAicmVrdXJzaXZlbiBcInB1c2hcIiB2b24gU3VibW9kdWxlbiBzdGV1ZXJuIgotCi0jOiBidWlsdGluL3B1c2guYzo1NjcgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzUKLW1zZ2lkICJ1c2UgdGhpbiBwYWNrIgotbXNnc3RyICJrbGVpbmVyZSBQYWtldGUgdmVyd2VuZGVuIgotCi0jOiBidWlsdGluL3B1c2guYzo1NjggYnVpbHRpbi9wdXNoLmM6NTY5IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYxCi0jOiBidWlsdGluL3NlbmQtcGFjay5jOjE2MgotbXNnaWQgInJlY2VpdmUgcGFjayBwcm9ncmFtIgotbXNnc3RyICIncmVjZWl2ZSBwYWNrJyBQcm9ncmFtbSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTcwCi1tc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9zdGF0dXMiCi1tc2dzdHIgIlVwc3RyZWFtIGbDvHIgXCJnaXQgcHVsbC9zdGF0dXNcIiBzZXR6ZW4iCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3MwotbXNnaWQgInBydW5lIGxvY2FsbHkgcmVtb3ZlZCByZWZzIgotbXNnc3RyICJsb2thbCBnZWzDtnNjaHRlIFJlZmVyZW56ZW4gZW50ZmVybmVuIgotCi0jOiBidWlsdGluL3B1c2guYzo1NzUKLW1zZ2lkICJieXBhc3MgcHJlLXB1c2ggaG9vayIKLW1zZ3N0ciAiXCJwcmUtcHVzaCBob29rXCIgdW1nZWhlbiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTc2Ci1tc2dpZCAicHVzaCBtaXNzaW5nIGJ1dCByZWxldmFudCB0YWdzIgotbXNnc3RyICJmZWhsZW5kZSwgYWJlciByZWxldmFudGUgVGFncyB2ZXJzZW5kZW4iCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3OSBidWlsdGluL3NlbmQtcGFjay5jOjE2OQotbXNnaWQgIkdQRyBzaWduIHRoZSBwdXNoIgotbXNnc3RyICJzaWduaWVydCBcInB1c2hcIiBtaXQgR1BHIgotCi0jOiBidWlsdGluL3B1c2guYzo1ODEgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzYKLW1zZ2lkICJyZXF1ZXN0IGF0b21pYyB0cmFuc2FjdGlvbiBvbiByZW1vdGUgc2lkZSIKLW1zZ3N0ciAiUmVmZXJlbnplbiBhdG9tYXIgdmVyc2VuZGVuIgotCi0jOiBidWlsdGluL3B1c2guYzo1OTkKLW1zZ2lkICItLWRlbGV0ZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1taXJyb3IgYW5kIC0tdGFncyIKLW1zZ3N0ciAiRGllIE9wdGlvbiAtLWRlbGV0ZSBpc3QgaW5rb21wYXRpYmVsIG1pdCAtLWFsbCwgLS1taXJyb3IgdW5kIC0tdGFncy4iCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjYwMQotbXNnaWQgIi0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSB3aXRob3V0IGFueSByZWZzIgotbXNnc3RyICJEaWUgT3B0aW9uIC0tZGVsZXRlIGthbm4gbnVyIG1pdCBSZWZlcmVuemVuIHZlcndlbmRldCB3ZXJkZW4uIgotCi0jOiBidWlsdGluL3B1c2guYzo2MDQKKyM6IGJ1aWx0aW4vcHVzaC5jOjYyOAogbXNnaWQgIi0tYWxsIGFuZCAtLXRhZ3MgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiRGllIE9wdGlvbmVuIC0tYWxsIHVuZCAtLXRhZ3Mgc2luZCBpbmtvbXBhdGliZWwuIgogCi0jOiBidWlsdGluL3B1c2guYzo2MDYKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzMAogbXNnaWQgIi0tYWxsIGNhbid0IGJlIGNvbWJpbmVkIHdpdGggcmVmc3BlY3MiCiBtc2dzdHIgIkRpZSBPcHRpb24gLS1hbGwga2FubiBuaWNodCBtaXQgUmVmc3BlY3Mga29tYmluaWVydCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL3B1c2guYzo2MTAKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzNAogbXNnaWQgIi0tbWlycm9yIGFuZCAtLXRhZ3MgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiRGllIE9wdGlvbmVuIC0tbWlycm9yIHVuZCAtLXRhZ3Mgc2luZCBpbmtvbXBhdGliZWwuIgogCi0jOiBidWlsdGluL3B1c2guYzo2MTIKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzNgogbXNnaWQgIi0tbWlycm9yIGNhbid0IGJlIGNvbWJpbmVkIHdpdGggcmVmc3BlY3MiCiBtc2dzdHIgIkRpZSBPcHRpb24gLS1taXJyb3Iga2FubiBuaWNodCBtaXQgUmVmc3BlY3Mga29tYmluaWVydCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL3B1c2guYzo2MTUKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzOQogbXNnaWQgIi0tYWxsIGFuZCAtLW1pcnJvciBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICJEaWUgT3B0aW9uZW4gLS1hbGwgdW5kIC0tbWlycm9yIHNpbmQgaW5rb21wYXRpYmVsLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjM0CisjOiBidWlsdGluL3B1c2guYzo2NDMKIG1zZ2lkICJwdXNoIG9wdGlvbnMgbXVzdCBub3QgaGF2ZSBuZXcgbGluZSBjaGFyYWN0ZXJzIgogbXNnc3RyICJQdXNoLU9wdGlvbmVuIGTDvHJmZW4ga2VpbmUgWmVpbGVudm9yc2NodWJ6ZWljaGVuIGhhYmVuIgogCkBAIC0xNTEwNSwyOCArMTgzMTgsMzYgQEAKIG1zZ2lkICJnaXQgcmFuZ2UtZGlmZiBbPG9wdGlvbnM+XSA8YmFzZT4gPG9sZC10aXA+IDxuZXctdGlwPiIKIG1zZ3N0ciAiZ2l0IHJhbmdlLWRpZmYgWzxPcHRpb25lbj5dIDxCYXNpcz4gPGFsdGUtU3BpdHplPiA8bmV1ZS1TcGl0emU+IgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyMQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjIKIG1zZ2lkICJQZXJjZW50YWdlIGJ5IHdoaWNoIGNyZWF0aW9uIGlzIHdlaWdodGVkIgogbXNnc3RyICJQcm96ZW50c2F0eiBtaXQgd2VsY2hlbSBFcnpldWd1bmcgZ2V3aWNodGV0IHdpcmQiCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjIzCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyNAogbXNnaWQgInVzZSBzaW1wbGUgZGlmZiBjb2xvcnMiCiBtc2dzdHIgImVpbmZhY2hlIERpZmYtRmFyYmVuIGJlbnV0emVuIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo2MSBidWlsdGluL3JhbmdlLWRpZmYuYzo2NQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjYKK21zZ2lkICJub3RlcyIKK21zZ3N0ciAiTm90aXplbiIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjYKK21zZ2lkICJwYXNzZWQgdG8gJ2dpdCBsb2cnIgorbXNnc3RyICJhbiAnZ2l0IGxvZycgw7xiZXJnZWJlbiIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NTAgYnVpbHRpbi9yYW5nZS1kaWZmLmM6NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gLi4gaW4gcmFuZ2U6ICclcyciCiBtc2dzdHIgIktlaW4gLi4gaW0gQmVyZWljaDogJyVzJyIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NzUKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjY0CiBtc2dpZCAic2luZ2xlIGFyZyBmb3JtYXQgbXVzdCBiZSBzeW1tZXRyaWMgcmFuZ2UiCiBtc2dzdHIgIkZvcm1hdCBtaXQgZWluZmFjaGVtIEFyZ3VtZW50IG11c3Mgc3ltbWV0cmlzY2hlciBCZXJlaWNoIHNlaW4uIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo5MAorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NzkKIG1zZ2lkICJuZWVkIHR3byBjb21taXQgcmFuZ2VzIgogbXNnc3RyICJCZW7DtnRpZ2UgendlaSBDb21taXQtQmVyZWljaGUuIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjQwCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjQxCiBtc2dpZCAiIgogImdpdCByZWFkLXRyZWUgWygtbSBbLS10cml2aWFsXSBbLS1hZ2dyZXNzaXZlXSB8IC0tcmVzZXQgfCAtLXByZWZpeD08cHJlZml4PikgIgogIlstdSBbLS1leGNsdWRlLXBlci1kaXJlY3Rvcnk9PGdpdGlnbm9yZT5dIHwgLWldXSBbLS1uby1zcGFyc2UtY2hlY2tvdXRdIFstLSIKQEAgLTE1MTM3LDExNiArMTgzNTgsMjk5IEBACiAiaW5kZXgtb3V0cHV0PTxEYXRlaT5dICgtLWVtcHR5IHwgPENvbW1pdC1SZWZlcmVuejE+IFs8Q29tbWl0LVJlZmVyZW56Mj4gIgogIls8Q29tbWl0LVJlZmVyZW56Mz5dXSkiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTIzCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNAogbXNnaWQgIndyaXRlIHJlc3VsdGluZyBpbmRleCB0byA8ZmlsZT4iCiBtc2dzdHIgInJlc3VsdGllcmVuZGVuIEluZGV4IG5hY2ggPERhdGVpPiBzY2hyZWliZW4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI2CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNwogbXNnaWQgIm9ubHkgZW1wdHkgdGhlIGluZGV4IgogbXNnc3RyICJudXIgZGVuIEluZGV4IGxlZXJlbiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjgKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI5CiBtc2dpZCAiTWVyZ2luZyIKIG1zZ3N0ciAiTWVyZ2UiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMwCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMQogbXNnaWQgInBlcmZvcm0gYSBtZXJnZSBpbiBhZGRpdGlvbiB0byBhIHJlYWQiCiBtc2dzdHIgImVpbmVuIE1lcmdlLCB6dXPDpHR6bGljaCB6dW0gTGVzZW4sIGF1c2bDvGhyZW4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMyCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMwogbXNnaWQgIjMtd2F5IG1lcmdlIGlmIG5vIGZpbGUgbGV2ZWwgbWVyZ2luZyByZXF1aXJlZCIKIG1zZ3N0ciAiMy1XZWdlLU1lcmdlLCB3ZW5uIGtlaW4gTWVyZ2UgYXVmIERhdGVpZWJlbmUgZXJmb3JkZXJsaWNoIGlzdCIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzQKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM1CiBtc2dpZCAiMy13YXkgbWVyZ2UgaW4gcHJlc2VuY2Ugb2YgYWRkcyBhbmQgcmVtb3ZlcyIKIG1zZ3N0ciAiMy1XZWdlLU1lcmdlIGJlaSBWb3JoYW5kZW5zZWluIHZvbiBoaW56dWdlZsO8Z3Rlbi9lbnRmZXJudGVuIFplaWxlbiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzYKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM3CiBtc2dpZCAic2FtZSBhcyAtbSwgYnV0IGRpc2NhcmQgdW5tZXJnZWQgZW50cmllcyIKIG1zZ3N0ciAiZ2VuYXUgd2llIC1tLCBhYmVyIG5pY2h0IHp1c2FtbWVuZ2Vmw7xocnRlIEVpbnRyw6RnZSB2ZXJ3ZXJmZW4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM3CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzOAogbXNnaWQgIjxzdWJkaXJlY3Rvcnk+LyIKIG1zZ3N0ciAiPFVudGVydmVyemVpY2huaXM+LyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzgKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM5CiBtc2dpZCAicmVhZCB0aGUgdHJlZSBpbnRvIHRoZSBpbmRleCB1bmRlciA8c3ViZGlyZWN0b3J5Pi8iCiBtc2dzdHIgImRhcyBWZXJ6ZWljaG5pcyBpbiBkZW4gSW5kZXggdW50ZXIgPFVudGVydmVyemVpY2huaXM+LyBsZXNlbiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDEKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQyCiBtc2dpZCAidXBkYXRlIHdvcmtpbmcgdHJlZSB3aXRoIG1lcmdlIHJlc3VsdCIKIG1zZ3N0ciAiQXJiZWl0c3ZlcnplaWNobmlzIG1pdCBkZW0gRXJnZWJuaXMgZGVzIE1lcmdlcyBha3R1YWxpc2llcmVuIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0MworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDQKIG1zZ2lkICJnaXRpZ25vcmUiCiBtc2dzdHIgImdpdGlnbm9yZSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDQKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ1CiBtc2dpZCAiYWxsb3cgZXhwbGljaXRseSBpZ25vcmVkIGZpbGVzIHRvIGJlIG92ZXJ3cml0dGVuIgogbXNnc3RyICJleHBsaXppdCBpZ25vcmllcnRlIERhdGVpZW4genUgw7xiZXJzY2hyZWliZW4gZXJsYXViZW4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ3CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0OAogbXNnaWQgImRvbid0IGNoZWNrIHRoZSB3b3JraW5nIHRyZWUgYWZ0ZXIgbWVyZ2luZyIKIG1zZ3N0ciAiZGFzIEFyYmVpdHN2ZXJ6ZWljaG5pcyBuYWNoIGRlbSBNZXJnZSBuaWNodCBwcsO8ZmVuIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0OAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDkKIG1zZ2lkICJkb24ndCB1cGRhdGUgdGhlIGluZGV4IG9yIHRoZSB3b3JrIHRyZWUiCiBtc2dzdHIgIndlZGVyIGRlbiBJbmRleCwgbm9jaCBkYXMgQXJiZWl0c3ZlcnplaWNobmlzIGFrdHVhbGlzaWVyZW4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUwCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MQogbXNnaWQgInNraXAgYXBwbHlpbmcgc3BhcnNlIGNoZWNrb3V0IGZpbHRlciIKIG1zZ3N0ciAiQW53ZW5kdW5nIGRlcyBGaWx0ZXJzIGbDvHIgcGFydGllbGxlcyBBdXNjaGVja2VuIMO8YmVyc3ByaW5nZW4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUyCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MwogbXNnaWQgImRlYnVnIHVucGFjay10cmVlcyIKIG1zZ3N0ciAidW5wYWNrLXRyZWVzIHByb3Rva29sbGllcmVuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjI5Ci1tc2dpZCAiIgotImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dIFs8dXBzdHJlYW0+XSAiCi0iWzxicmFuY2g+XSIKLW1zZ3N0ciAiZ2l0IHJlYmFzZSBbLWldIFs8T3B0aW9uZW4+XSBbLS1leGVjIDxQcm9ncmFtbT5dIFstLW9udG8gPG5ldWUtQmFzaXM+XSBbPFVwc3RyZWFtPl0gWzxCcmFuY2g+XSIKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTU3Cittc2dpZCAic3VwcHJlc3MgZmVlZGJhY2sgbWVzc2FnZXMiCittc2dzdHIgIlLDvGNrbWVsZHVuZ2VuIHVudGVyZHLDvGNrZW4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MzEKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTg4Cittc2dpZCAiWW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiCittc2dzdHIgIlNpZSBtw7xzc2VuIHp1ZXJzdCBkaWUgS29uZmxpa3RlIGluIElocmVtIGFrdHVlbGxlbiBJbmRleCBhdWZsw7ZzZW4uIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjMyCittc2dpZCAiIgorImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT4gfCAtLWtlZXAtYmFzZV0gIgorIls8dXBzdHJlYW0+IFs8YnJhbmNoPl1dIgorbXNnc3RyICIiCisiZ2l0IHJlYmFzZSBbLWldIFs8T3B0aW9uZW4+XSBbLS1leGVjIDxQcm9ncmFtbT5dIFstLW9udG8gPG5ldWUtQmFzaXM+IHwgLS0iCisia2VlcC1iYXNlXSBbPFVwc3RyZWFtPiBbPEJyYW5jaD5dXSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozNAogbXNnaWQgIiIKICJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+XSAtLXJvb3QgWzxicmFuY2g+XSIKLW1zZ3N0ciAiZ2l0IHJlYmFzZSBbLWldIFs8T3B0aW9uZW4+XSBbLS1leGVjIDxQcm9ncmFtbT5dIFstLW9udG8gPG5ldWUtQmFzaXM+XSAtLXJvb3QgWzxCcmFuY2g+XSIKK21zZ3N0ciAiIgorImdpdCByZWJhc2UgWy1pXSBbPE9wdGlvbmVuPl0gWy0tZXhlYyA8UHJvZ3JhbW0+XSBbLS1vbnRvIDxuZXVlLUJhc2lzPl0gLS0iCisicm9vdCBbPEJyYW5jaD5dIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjMzCisjOiBidWlsdGluL3JlYmFzZS5jOjM2CiBtc2dpZCAiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIHwgLS1hYm9ydCB8IC0tc2tpcCB8IC0tZWRpdC10b2RvIgogbXNnc3RyICJnaXQgcmViYXNlIC0tY29udGludWUgfCAtLWFib3J0IHwgLS1za2lwIHwgLS1lZGl0LXRvZG8iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTE5CisjOiBidWlsdGluL3JlYmFzZS5jOjE3NSBidWlsdGluL3JlYmFzZS5jOjE5OSBidWlsdGluL3JlYmFzZS5jOjIyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnVzYWJsZSB0b2RvIGxpc3Q6ICclcyciCittc2dzdHIgIlVuYmVudXR6YmFyZSBUT0RPLUxpc3RlOiAnJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAlcyIKK21zZ3N0ciAiS29ubnRlIHRlbXBvcsOkcmVzIFZlcnplaWNobmlzICclcycgbmljaHQgZXJzdGVsbGVuLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyOTgKK21zZ2lkICJjb3VsZCBub3QgbWFyayBhcyBpbnRlcmFjdGl2ZSIKK21zZ3N0ciAiTWFya2llcnVuZyBhdWYgaW50ZXJha3RpdmVuIFJlYmFzZSBmZWhsZ2VzY2hsYWdlbi4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzUyCittc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIHRvZG8gbGlzdCIKK21zZ3N0ciAiS29ubnRlIFRPRE8tTGlzdGUgbmljaHQgZXJ6ZXVnZW4uIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM5MQorbXNnaWQgImEgYmFzZSBjb21taXQgbXVzdCBiZSBwcm92aWRlZCB3aXRoIC0tdXBzdHJlYW0gb3IgLS1vbnRvIgorbXNnc3RyICJFaW4gQmFzaXMtQ29tbWl0IG11c3MgbWl0IC0tdXBzdHJlYW0gb2RlciAtLW9udG8gYW5nZWdlYmVuIHdlcmRlbi4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDYxCittc2dpZCAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFs8T3B0aW9uZW4+XSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NzQgYnVpbHRpbi9yZWJhc2UuYzoxNTUwCittc2dpZCAiKERFUFJFQ0FURUQpIGtlZXAgZW1wdHkgY29tbWl0cyIKK21zZ3N0ciAiKFZFUkFMVEVUKSBsZWVyZSBDb21taXRzIGJlaGFsdGVuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ3OCBidWlsdGluL3JldmVydC5jOjEyOAorbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKK21zZ3N0ciAiQ29tbWl0cyBtaXQgbGVlcmVyIEJlc2NocmVpYnVuZyBlcmxhdWJlbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODAKK21zZ2lkICJyZWJhc2UgbWVyZ2UgY29tbWl0cyIKK21zZ3N0ciAiUmViYXNlIGF1ZiBNZXJnZS1Db21taXRzIGF1c2bDvGhyZW4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDgyCittc2dpZCAia2VlcCBvcmlnaW5hbCBicmFuY2ggcG9pbnRzIG9mIGNvdXNpbnMiCittc2dzdHIgIm9yaWdpbmFsZSBCcmFuY2gtUHVua3RlIGRlciBDb3VzaW5zIGJlaGFsdGVuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4NAorbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEiCittc2dzdHIgIkNvbW1pdHMgdmVyc2NoaWViZW4sIGRpZSBtaXQgc3F1YXNoIS9maXh1cCEgYmVnaW5uZW4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg1Cittc2dpZCAic2lnbiBjb21taXRzIgorbXNnc3RyICJDb21taXRzIHNpZ25pZXJlbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODcgYnVpbHRpbi9yZWJhc2UuYzoxNDkwCittc2dpZCAiZGlzcGxheSBhIGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKK21zZ3N0ciAiIgorIlp1c2FtbWVuZmFzc3VuZyBkZXIgVW50ZXJzY2hpZWRlIGdlZ2Vuw7xiZXIgZGVtIFVwc3RyZWFtLUJyYW5jaCBhbnplaWdlbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODkKK21zZ2lkICJjb250aW51ZSByZWJhc2UiCittc2dzdHIgIlJlYmFzZSBmb3J0c2V0emVuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5MQorbXNnaWQgInNraXAgY29tbWl0IgorbXNnc3RyICJDb21taXQgYXVzbGFzc2VuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5MgorbXNnaWQgImVkaXQgdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAiZGllIFRPRE8tTGlzdGUgYmVhcmJlaXRlbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTQKK21zZ2lkICJzaG93IHRoZSBjdXJyZW50IHBhdGNoIgorbXNnc3RyICJkZW4gYWt0dWVsbGVuIFBhdGNoIGFuemVpZ2VuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5NworbXNnaWQgInNob3J0ZW4gY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICJDb21taXQtSURzIGluIGRlciBUT0RPLUxpc3RlIHZlcmvDvHJ6ZW4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk5Cittc2dpZCAiZXhwYW5kIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAiQ29tbWl0LUlEcyBpbiBkZXIgVE9ETy1MaXN0ZSBlcndlaXRlcm4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAxCittc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAiZGllIFRPRE8tTGlzdGUgcHLDvGZlbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDMKK21zZ2lkICJyZWFycmFuZ2UgZml4dXAvc3F1YXNoIGxpbmVzIgorbXNnc3RyICJmaXh1cC9zcXVhc2gtWmVpbGVuIHVtb3JkbmVuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwNQorbXNnaWQgImluc2VydCBleGVjIGNvbW1hbmRzIGluIHRvZG8gbGlzdCIKK21zZ3N0ciAiXCJleGVjXCItQmVmZWhsZSBpbiBUT0RPLUxpc3RlIGVpbmbDvGdlbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDYKK21zZ2lkICJvbnRvIgorbXNnc3RyICJhdWYiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTA5Cittc2dpZCAicmVzdHJpY3QtcmV2aXNpb24iCittc2dzdHIgIkJlZ3Jlbnp1bmdzY29tbWl0IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwOQorbXNnaWQgInJlc3RyaWN0IHJldmlzaW9uIgorbXNnc3RyICJCZWdyZW56dW5nc2NvbW1pdCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTEKK21zZ2lkICJzcXVhc2gtb250byIKK21zZ3N0ciAic3F1YXNoLW9udG8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTEyCittc2dpZCAic3F1YXNoIG9udG8iCittc2dzdHIgInNxdWFzaCBvbnRvIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxNAorbXNnaWQgInRoZSB1cHN0cmVhbSBjb21taXQiCittc2dzdHIgImRlciBVcHN0cmVhbS1Db21taXQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTE2Cittc2dpZCAiaGVhZC1uYW1lIgorbXNnc3RyICJoZWFkLU5hbWUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTE2Cittc2dpZCAiaGVhZCBuYW1lIgorbXNnc3RyICJoZWFkLU5hbWUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTIxCittc2dpZCAicmViYXNlIHN0cmF0ZWd5IgorbXNnc3RyICJSZWJhc2UtU3RyYXRlZ2llIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyMgorbXNnaWQgInN0cmF0ZWd5LW9wdHMiCittc2dzdHIgIlN0cmF0ZWdpZS1PcHRpb25lbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjMKK21zZ2lkICJzdHJhdGVneSBvcHRpb25zIgorbXNnc3RyICJTdHJhdGVnaWUtT3B0aW9uZW4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI0Cittc2dpZCAic3dpdGNoLXRvIgorbXNnc3RyICJ3ZWNoc2VsbiB6dSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjUKK21zZ2lkICJ0aGUgYnJhbmNoIG9yIGNvbW1pdCB0byBjaGVja291dCIKK21zZ3N0ciAiZGVyIEJyYW5jaCBvZGVyIENvbW1pdCB6dW0gQXVzY2hlY2tlbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjYKK21zZ2lkICJvbnRvLW5hbWUiCittc2dzdHIgIm9udG8tTmFtZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjYKK21zZ2lkICJvbnRvIG5hbWUiCittc2dzdHIgIm9udG8tTmFtZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjcKK21zZ2lkICJjbWQiCittc2dzdHIgIkJlZmVobCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjcKK21zZ2lkICJ0aGUgY29tbWFuZCB0byBydW4iCittc2dzdHIgImF1c3p1ZsO8aHJlbmRlciBCZWZlaGwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTMwIGJ1aWx0aW4vcmViYXNlLmM6MTU4NAorbXNnaWQgImF1dG9tYXRpY2FsbHkgcmUtc2NoZWR1bGUgYW55IGBleGVjYCB0aGF0IGZhaWxzIgorbXNnc3RyICJqZWRlbiBmZWhsZ2VzY2hsYWdlbmVuIGBleGVjYC1CZWZlaGwgbmV1IGFuc2V0emVuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjU0NgorbXNnaWQgIi0tW25vLV1yZWJhc2UtY291c2lucyBoYXMgbm8gZWZmZWN0IHdpdGhvdXQgLS1yZWJhc2UtbWVyZ2VzIgorbXNnc3RyICItLVtuby1dcmViYXNlLWNvdXNpbnMgaGF0IG9obmUgLS1yZWJhc2UtbWVyZ2VzIGtlaW5lIEF1c3dpcmt1bmciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHJlcXVpcmVzIGFuIGludGVyYWN0aXZlIHJlYmFzZSIKIG1zZ3N0ciAiJXMgZXJmb3JkZXJ0IGVpbiBpbnRlcmFrdGl2ZXMgUmViYXNlIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE3MQorIzogYnVpbHRpbi9yZWJhc2UuYzo2MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCAnb250byc6ICclcyciCiBtc2dzdHIgIktvbm50ZSAnb250bycgbmljaHQgYmVzdGltbWVuOiAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE4NgorIzogYnVpbHRpbi9yZWJhc2UuYzo2MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvcmlnLWhlYWQ6ICclcyciCiBtc2dzdHIgIlVuZ8O8bHRpZ2VzIG9yaWctaGVhZDogJyVzJyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyMTQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NjUyCiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIGludmFsaWQgYWxsb3dfcmVyZXJlX2F1dG91cGRhdGU6ICclcyciCiBtc2dzdHIgIklnbm9yaWVyZSB1bmfDvGx0aWdlcyBhbGxvd19yZXJlcmVfYXV0b3VwZGF0ZTogJyVzJyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyNTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZWFkICclcyciCiBtc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGxlc2VuLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyNzcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBzdG9yZSAlcyIKIG1zZ3N0ciAiS2FubiAlcyBuaWNodCBzcGVpY2hlcm4uIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjMzNworIzogYnVpbHRpbi9yZWJhc2UuYzo4NTMKK21zZ2lkICJjb3VsZCBub3QgZGV0ZXJtaW5lIEhFQUQgcmV2aXNpb24iCittc2dzdHIgIktvbm50ZSBIRUFELUNvbW1pdCBuaWNodCBiZXN0aW1tZW4uIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjk3NiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODEKIG1zZ2lkICIiCiAiUmVzb2x2ZSBhbGwgY29uZmxpY3RzIG1hbnVhbGx5LCBtYXJrIHRoZW0gYXMgcmVzb2x2ZWQgd2l0aFxuIgogIlwiZ2l0IGFkZC9ybSA8Y29uZmxpY3RlZF9maWxlcz5cIiwgdGhlbiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIi5cbiIKQEAgLTE1MjYyLDExICsxODY2NiwzNiBAQAogIlVtIGFienVicmVjaGVuIHVuZCB6dXLDvGNrIHp1bSBadXN0YW5kIHZvciBcImdpdCByZWJhc2VcIiB6dSBnZWxhbmdlbixcbiIKICJmw7xocmVuIFNpZSBcImdpdCByZWJhc2UgLS1hYm9ydFwiIGF1cy4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6NTYxCi1tc2dpZCAiY291bGQgbm90IGRldGVybWluZSBIRUFEIHJldmlzaW9uIgotbXNnc3RyICJLb25udGUgSEVBRC1Db21taXQgbmljaHQgYmVzdGltbWVuLiIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiZ2l0IGVuY291bnRlcmVkIGFuIGVycm9yIHdoaWxlIHByZXBhcmluZyB0aGUgcGF0Y2hlcyB0byByZXBsYXlcbiIKKyJ0aGVzZSByZXZpc2lvbnM6XG4iCisiXG4iCisiICAgICVzXG4iCisiXG4iCisiQXMgYSByZXN1bHQsIGdpdCBjYW5ub3QgcmViYXNlIHRoZW0uIgorbXNnc3RyICIiCisiXG4iCisiR2l0IHN0ZWxsdGUgZWluZW4gRmVobGVyIGJlaW0gVm9yYmVyZWl0ZW4gZGVyIFBhdGNoZXMgenVyXG4iCisid2llZGVyaG9sdGVuIEFud2VuZHVuZyBkZXIgUmV2aXNpb25lbiBmZXN0OlxuIgorIlxuIgorIiAgICAlc1xuIgorIlxuIgorIkluZm9sZ2UgZGVzc2VuIGthbm4gR2l0IGF1ZiBkaWVzZW4gUmV2aXNpb25lbiBSZWJhc2UgbmljaHRcbiIKKyJhdXNmw7xocmVuLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo3NTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTM4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5yZWNvZ25pemVkIGVtcHR5IHR5cGUgJyVzJzsgdmFsaWQgdmFsdWVzIGFyZSBcImRyb3BcIiwgXCJrZWVwXCIsIGFuZCBcImFzayIKKyJcIi4iCittc2dzdHIgIiIKKyJuaWNodCBlcmthbm50ZXIgbGVlcmVyIFR5cCAnJXMnOyBHw7xsdGlnZSBXZXJ0ZSBzaW5kIFwiZHJvcFwiLCBcImtlZXBcIiwgdW5kICIKKyJcImFza1wiLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIlc1xuIgpAQCAtMTUyNzcsMTMgKzE4NzA2LDE0IEBACiAiXG4iCiBtc2dzdHIgIiIKICIlc1xuIgotIkJpdHRlIGdlYmVuIFNpZSBkZW4gQnJhbmNoIGFuLCBnZWdlbiB3ZWxjaGVuIFNpZSBcInJlYmFzZVwiIGF1c2bDvGhyZW4gbcO2Y2h0ZW4uXG4iCisiQml0dGUgZ2ViZW4gU2llIGRlbiBCcmFuY2ggYW4sIGdlZ2VuIHdlbGNoZW4gU2llIFwicmViYXNlXCIgYXVzZsO8aHJlbiAiCisibcO2Y2h0ZW4uXG4iCiAiU2llaGUgZ2l0LXJlYmFzZSgxKSBmw7xyIERldGFpbHMuXG4iCiAiXG4iCiAiICAgIGdpdCByZWJhc2UgJzxCcmFuY2g+J1xuIgogIlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjc2OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJZiB5b3Ugd2lzaCB0byBzZXQgdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoaXMgYnJhbmNoIHlvdSBjYW4gZG8gc28gd2l0aDpcbiIKQEAgLTE1Mjk3LDE1MCArMTg3MjcsMTgxIEBACiAiICAgIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMvPEJyYW5jaD4gJXNcbiIKICJcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0NworbXNnaWQgImV4ZWMgY29tbWFuZHMgY2Fubm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIlwiZXhlY1wiLUJlZmVobGUga8O2bm5lbiBrZWluZSBuZXVlbiBaZWlsZW4gZW50aGFsdGVuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NTEKK21zZ2lkICJlbXB0eSBleGVjIGNvbW1hbmQiCittc2dzdHIgIkxlZXJlciBcImV4ZWNcIi1CZWZlaGwuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODEKIG1zZ2lkICJyZWJhc2Ugb250byBnaXZlbiBicmFuY2ggaW5zdGVhZCBvZiB1cHN0cmVhbSIKIG1zZ3N0ciAiUmViYXNlIGF1ZiBhbmdlZ2ViZW5lbiBCcmFuY2ggYW5zdGVsbGUgZGVzIFVwc3RyZWFtLUJyYW5jaGVzIGF1c2bDvGhyZW4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODM0CisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODMKK21zZ2lkICJ1c2UgdGhlIG1lcmdlLWJhc2Ugb2YgdXBzdHJlYW0gYW5kIGJyYW5jaCBhcyB0aGUgY3VycmVudCBiYXNlIgorbXNnc3RyICJOdXR6ZSBkaWUgTWVyZ2UtQmFzaXMgdm9uIFVwc3RyZWFtIHVuZCBCcmFuY2ggYWxzIGRpZSBha3R1ZWxsZSBCYXNpcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDg1CiBtc2dpZCAiYWxsb3cgcHJlLXJlYmFzZSBob29rIHRvIHJ1biIKIG1zZ3N0ciAiQXVzZsO8aHJ1bmcgZGVzIHByZS1yZWJhc2UtSG9va3MgZXJsYXViZW4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODM2CisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODcKIG1zZ2lkICJiZSBxdWlldC4gaW1wbGllcyAtLW5vLXN0YXQiCiBtc2dzdHIgIndlbmlnZXIgQXVzZ2FiZW4gKGltcGxpemllcnQgLS1uby1zdGF0KSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzkKLW1zZ2lkICJkaXNwbGF5IGEgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtIgotbXNnc3RyICJadXNhbW1lbmZhc3N1bmcgZGVyIFVudGVyc2NoaWVkZSBnZWdlbsO8YmVyIGRlbSBVcHN0cmVhbS1CcmFuY2ggYW56ZWlnZW4iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODQyCisjOiBidWlsdGluL3JlYmFzZS5jOjE0OTMKIG1zZ2lkICJkbyBub3Qgc2hvdyBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCi1tc2dzdHIgIlp1c2FtbWVuZmFzc3VuZyBkZXIgVW50ZXJzY2hpZWRlIGdlZ2Vuw7xiZXIgZGVtIFVwc3RyZWFtLUJyYW5jaCB2ZXJiZXJnZW4iCittc2dzdHIgIiIKKyJadXNhbW1lbmZhc3N1bmcgZGVyIFVudGVyc2NoaWVkZSBnZWdlbsO8YmVyIGRlbSBVcHN0cmVhbS1CcmFuY2ggdmVyYmVyZ2VuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg0NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDk2CiBtc2dpZCAiYWRkIGEgU2lnbmVkLW9mZi1ieTogbGluZSB0byBlYWNoIGNvbW1pdCIKIG1zZ3N0ciAiZWluZSBcIlNpZ25lZC1vZmYtYnk6XCItWmVpbGUgenUgamVkZW0gQ29tbWl0IGhpbnp1ZsO8Z2VuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg0NyBidWlsdGluL3JlYmFzZS5jOjg1MSBidWlsdGluL3JlYmFzZS5jOjg1MworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDk4IGJ1aWx0aW4vcmViYXNlLmM6MTUwMiBidWlsdGluL3JlYmFzZS5jOjE1MDQKIG1zZ2lkICJwYXNzZWQgdG8gJ2dpdCBhbSciCiBtc2dzdHIgImFuICdnaXQgYW0nIMO8YmVyZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODU1IGJ1aWx0aW4vcmViYXNlLmM6ODU3CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MDYgYnVpbHRpbi9yZWJhc2UuYzoxNTA4CiBtc2dpZCAicGFzc2VkIHRvICdnaXQgYXBwbHknIgogbXNnc3RyICJhbiAnZ2l0IGFwcGx5JyDDvGJlcmdlYmVuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg1OSBidWlsdGluL3JlYmFzZS5jOjg2MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTEwIGJ1aWx0aW4vcmViYXNlLmM6MTUxMwogbXNnaWQgImNoZXJyeS1waWNrIGFsbCBjb21taXRzLCBldmVuIGlmIHVuY2hhbmdlZCIKLW1zZ3N0ciAiQ2hlcnJ5LVBpY2sgYXVmIGFsbGUgQ29tbWl0cyBhdXNmw7xocmVuLCBhdWNoIHdlbm4gZGllc2UgdW52ZXLDpG5kZXJ0IHNpbmQiCittc2dzdHIgIiIKKyJDaGVycnktUGljayBhdWYgYWxsZSBDb21taXRzIGF1c2bDvGhyZW4sIGF1Y2ggd2VubiBkaWVzZSB1bnZlcsOkbmRlcnQgc2luZCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NjQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxNQogbXNnaWQgImNvbnRpbnVlIgogbXNnc3RyICJmb3J0c2V0emVuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg2NworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTE4CiBtc2dpZCAic2tpcCBjdXJyZW50IHBhdGNoIGFuZCBjb250aW51ZSIKIG1zZ3N0ciAiZGVuIGFrdHVlbGxlbiBQYXRjaCBhdXNsYXNzZW4gdW5kIGZvcnRmYWhyZW4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODY5CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjAKIG1zZ2lkICJhYm9ydCBhbmQgY2hlY2sgb3V0IHRoZSBvcmlnaW5hbCBicmFuY2giCiBtc2dzdHIgImFiYnJlY2hlbiB1bmQgZGVuIHVyc3Byw7xuZ2xpY2hlbiBCcmFuY2ggYXVzY2hlY2tlbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyMwogbXNnaWQgImFib3J0IGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMiCiBtc2dzdHIgImFiYnJlY2hlbiwgYWJlciBIRUFEIGFuIGFrdHVlbGxlciBTdGVsbGUgYmVsYXNzZW4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODczCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjQKIG1zZ2lkICJlZGl0IHRoZSB0b2RvIGxpc3QgZHVyaW5nIGFuIGludGVyYWN0aXZlIHJlYmFzZSIKIG1zZ3N0ciAiVE9ETy1MaXN0ZSB3w6RocmVuZCBlaW5lcyBpbnRlcmFrdGl2ZW4gUmViYXNlIGJlYXJiZWl0ZW4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODc2CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjcKIG1zZ2lkICJzaG93IHRoZSBwYXRjaCBmaWxlIGJlaW5nIGFwcGxpZWQgb3IgbWVyZ2VkIgogbXNnc3RyICJkZW4gUGF0Y2gsIGRlciBnZXJhZGUgYW5nZXdlbmRldCBvZGVyIHp1c2FtbWVuZ2Vmw7xocnQgd2lyZCwgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODc5CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzAKK21zZ2lkICJ1c2UgYXBwbHkgc3RyYXRlZ2llcyB0byByZWJhc2UiCittc2dzdHIgIlN0cmF0ZWdpZW4gdm9uICdnaXQgYW0nIGJlaSBSZWJhc2UgdmVyd2VuZGVuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzQKIG1zZ2lkICJ1c2UgbWVyZ2luZyBzdHJhdGVnaWVzIHRvIHJlYmFzZSIKIG1zZ3N0ciAiTWVyZ2UtU3RyYXRlZ2llbiBiZWltIFJlYmFzZSB2ZXJ3ZW5kZW4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODgzCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzgKIG1zZ2lkICJsZXQgdGhlIHVzZXIgZWRpdCB0aGUgbGlzdCBvZiBjb21taXRzIHRvIHJlYmFzZSIKIG1zZ3N0ciAiZGVuIEJlbnV0emVyIGRpZSBMaXN0ZSBkZXIgQ29tbWl0cyBmw7xyIGRlbiBSZWJhc2UgYmVhcmJlaXRlbiBsYXNzZW4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODg3Ci1tc2dpZCAidHJ5IHRvIHJlY3JlYXRlIG1lcmdlcyBpbnN0ZWFkIG9mIGlnbm9yaW5nIHRoZW0iCi1tc2dzdHIgInZlcnN1Y2hlbiwgTWVyZ2VzIHdpZWRlcmhlcnp1c3RlbGxlbiBhbnN0YXR0IHNpZSB6dSBpZ25vcmllcmVuIgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTQyCittc2dpZCAiKERFUFJFQ0FURUQpIHRyeSB0byByZWNyZWF0ZSBtZXJnZXMgaW5zdGVhZCBvZiBpZ25vcmluZyB0aGVtIgorbXNnc3RyICIiCisiKFZFUkFMVEVUKSBWZXJzdWNoZSwgTWVyZ2VzIHdpZWRlcmhlcnp1c3RlbGxlbiBhbnN0YXR0IHNpZSB6dSBpZ25vcmllcmVuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg5MQotbXNnaWQgImFsbG93IHJlcmVyZSB0byB1cGRhdGUgaW5kZXggd2l0aCByZXNvbHZlZCBjb25mbGljdCIKLW1zZ3N0ciAiUmVyZXJlIGVybGF1YmVuLCBkZW4gSW5kZXggbWl0IGRlbSBhdWZnZWzDtnN0ZW0gS29uZmxpa3QgenUgYWt0dWFsaXNpZXJlbiIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU0NworbXNnaWQgImhvdyB0byBoYW5kbGUgY29tbWl0cyB0aGF0IGJlY29tZSBlbXB0eSIKK21zZ3N0ciAid2llIHNvbGxlbiBDb21taXRzIGJlaGFuZGVsdCB3ZXJkZW4sIGRpZSBsZWVyIHdlcmRlbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4OTQKLW1zZ2lkICJwcmVzZXJ2ZSBlbXB0eSBjb21taXRzIGR1cmluZyByZWJhc2UiCi1tc2dzdHIgImxlZXJlIENvbW1pdHMgd8OkaHJlbmQgZGVzIFJlYmFzZSBlcmhhbHRlbiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzo4OTYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU1NAogbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEgdW5kZXIgLWkiCiBtc2dzdHIgImJlaSAtaSBDb21taXRzIHZlcnNjaGllYmVuLCBkaWUgbWl0IHNxdWFzaCEvZml4dXAhIGJlZ2lubmVuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkwMgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTYwCiBtc2dpZCAiYXV0b21hdGljYWxseSBzdGFzaC9zdGFzaCBwb3AgYmVmb3JlIGFuZCBhZnRlciIKIG1zZ3N0ciAiYXV0b21hdGlzY2hlciBTdGFzaC9TdGFzaC1Qb3AgZGF2b3IgdW5kIGRhbmFjaCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MDQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU2MgogbXNnaWQgImFkZCBleGVjIGxpbmVzIGFmdGVyIGVhY2ggY29tbWl0IG9mIHRoZSBlZGl0YWJsZSBsaXN0IgogbXNnc3RyICJleGVjLVplaWxlbiBuYWNoIGplZGVtIENvbW1pdCBkZXIgZWRpdGllcmJhcmVuIExpc3RlIGhpbnp1ZsO8Z2VuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkwOAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTY2CiBtc2dpZCAiYWxsb3cgcmViYXNpbmcgY29tbWl0cyB3aXRoIGVtcHR5IG1lc3NhZ2VzIgogbXNnc3RyICJSZWJhc2Ugdm9uIENvbW1pdHMgbWl0IGxlZXJlciBCZXNjaHJlaWJ1bmcgZXJsYXViZW4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTExCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzAKIG1zZ2lkICJ0cnkgdG8gcmViYXNlIG1lcmdlcyBpbnN0ZWFkIG9mIHNraXBwaW5nIHRoZW0iCi1tc2dzdHIgInZlcnN1Y2hlbiwgUmViYXNlIG1pdCBNZXJnZXMgYXVzenVmw7xocmVuLCBhbnN0YXR0IGRpZXNlIHp1IMO8YmVyc3ByaW5nZW4iCittc2dzdHIgIiIKKyJ2ZXJzdWNoZW4sIFJlYmFzZSBtaXQgTWVyZ2VzIGF1c3p1ZsO8aHJlbiwgYW5zdGF0dCBkaWVzZSB6dSDDvGJlcnNwcmluZ2VuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxNAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTczCiBtc2dpZCAidXNlICdtZXJnZS1iYXNlIC0tZm9yay1wb2ludCcgdG8gcmVmaW5lIHVwc3RyZWFtIgotbXNnc3RyICInZ2l0IG1lcmdlLWJhc2UgLS1mb3JrLXBvaW50JyBiZW51dHplbiwgdW0gVXBzdHJlYW0tQnJhbmNoIHp1IGJlc3RpbW1lbiIKK21zZ3N0ciAiIgorIidnaXQgbWVyZ2UtYmFzZSAtLWZvcmstcG9pbnQnIGJlbnV0emVuLCB1bSBVcHN0cmVhbS1CcmFuY2ggenUgYmVzdGltbWVuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTc1CiBtc2dpZCAidXNlIHRoZSBnaXZlbiBtZXJnZSBzdHJhdGVneSIKIG1zZ3N0ciAiYW5nZWdlYmVuZSBNZXJnZS1TdHJhdGVnaWUgdmVyd2VuZGVuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxOCBidWlsdGluL3JldmVydC5jOjExMQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTc3IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE1CiBtc2dpZCAib3B0aW9uIgogbXNnc3RyICJPcHRpb24iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTE5CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzgKIG1zZ2lkICJwYXNzIHRoZSBhcmd1bWVudCB0aHJvdWdoIHRvIHRoZSBtZXJnZSBzdHJhdGVneSIKIG1zZ3N0ciAiQXJndW1lbnQgenVyIE1lcmdlLVN0cmF0ZWdpZSBkdXJjaHJlaWNoZW4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTIyCisjOiBidWlsdGluL3JlYmFzZS5jOjE1ODEKIG1zZ2lkICJyZWJhc2UgYWxsIHJlYWNoYWJsZSBjb21taXRzIHVwIHRvIHRoZSByb290KHMpIgogbXNnc3RyICJSZWJhc2UgYXVmIGFsbGUgZXJyZWljaGJhcmVuIENvbW1pdHMgYmlzIHp1bSBSb290LUNvbW1pdCBhdXNmw7xocmVuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkzOAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgZXhlYyAlcyIKLW1zZ3N0ciAiS29ubnRlICdleGVjICVzJyBuaWNodCBhdXNmw7xocmVuLiIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU5OAorbXNnaWQgIiIKKyJ0aGUgcmViYXNlLnVzZUJ1aWx0aW4gc3VwcG9ydCBoYXMgYmVlbiByZW1vdmVkIVxuIgorIlNlZSBpdHMgZW50cnkgaW4gJ2dpdCBoZWxwIGNvbmZpZycgZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisiRGllIFVudGVyc3TDvHR6dW5nIGbDvHIgcmViYXNlLnVzZUJ1aWx0aW4gd3VyZGUgZW50ZmVybnQhXG4iCisiU2llaGUgZGVzc2VuIEVpbnRyYWcgaW4gJ2dpdCBoZWxwIGNvbmZpZycgZsO8ciBEZXRhaWxzLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5NTYgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6MjEzCisjOiBidWlsdGluL3JlYmFzZS5jOjE2MDQKIG1zZ2lkICJJdCBsb29rcyBsaWtlICdnaXQgYW0nIGlzIGluIHByb2dyZXNzLiBDYW5ub3QgcmViYXNlLiIKIG1zZ3N0ciAiJ2dpdC1hbScgc2NoZWludCBpbSBHYW5nZSB6dSBzZWluLiBLYW5uIFJlYmFzZSBuaWNodCBkdXJjaGbDvGhyZW4uIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjk5NyBnaXQtbGVnYWN5LXJlYmFzZS5zaDozOTUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY0NQorbXNnaWQgIiIKKyJnaXQgcmViYXNlIC0tcHJlc2VydmUtbWVyZ2VzIGlzIGRlcHJlY2F0ZWQuIFVzZSAtLXJlYmFzZS1tZXJnZXMgaW5zdGVhZC4iCittc2dzdHIgIiIKKyInZ2l0IHJlYmFzZSAtLXByZXNlcnZlLW1lcmdlcycgaXN0IHZlcmFsdGV0LiBCZW51dHplbiBTaWUgc3RhdHRkZXNzZW4gJy0tIgorInJlYmFzZS1tZXJnZXMnLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjUwCittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0ta2VlcC1iYXNlJyB3aXRoICctLW9udG8nIgorbXNnc3RyICInLS1rZWVwLWJhc2UnIGthbm4gbmljaHQgbWl0ICctLW9udG8nIGtvbWJpbmllcnQgd2VyZGVuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NTIKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1rZWVwLWJhc2UnIHdpdGggJy0tcm9vdCciCittc2dzdHIgIictLWtlZXAtYmFzZScga2FubiBuaWNodCBtaXQgJy0tcm9vdCcga29tYmluaWVydCB3ZXJkZW4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1NgogbXNnaWQgIk5vIHJlYmFzZSBpbiBwcm9ncmVzcz8iCiBtc2dzdHIgIktlaW4gUmViYXNlIGltIEdhbmdlPyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDAxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjQwNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjYwCiBtc2dpZCAiVGhlIC0tZWRpdC10b2RvIGFjdGlvbiBjYW4gb25seSBiZSB1c2VkIGR1cmluZyBpbnRlcmFjdGl2ZSByZWJhc2UuIgogbXNnc3RyICIiCiAiRGllIC0tZWRpdC10b2RvIEFrdGlvbiBrYW5uIG51ciB3w6RocmVuZCBlaW5lcyBpbnRlcmFrdGl2ZW4gUmViYXNlIHZlcndlbmRldCAiCiAid2VyZGVuLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDE1IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQxMworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjgzCiBtc2dpZCAiQ2Fubm90IHJlYWQgSEVBRCIKIG1zZ3N0ciAiS2FubiBIRUFEIG5pY2h0IGxlc2VuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwMjggZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDE2CisjOiBidWlsdGluL3JlYmFzZS5jOjE2OTUKIG1zZ2lkICIiCiAiWW91IG11c3QgZWRpdCBhbGwgbWVyZ2UgY29uZmxpY3RzIGFuZCB0aGVuXG4iCiAibWFyayB0aGVtIGFzIHJlc29sdmVkIHVzaW5nIGdpdCBhZGQiCkBAIC0xNTQ0OCwyMSArMTg5MDksMTYgQEAKICJTaWUgbcO8c3NlbiBhbGxlIE1lcmdlLUtvbmZsaWt0ZSBlZGl0aWVyZW4gdW5kIGRpZXNlIGRhbm5cbiIKICJtaXR0ZWxzIFwiZ2l0IGFkZFwiIGFscyBhdWZnZWzDtnN0IG1hcmtpZXJlbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDQ3CisjOiBidWlsdGluL3JlYmFzZS5jOjE3MTQKIG1zZ2lkICJjb3VsZCBub3QgZGlzY2FyZCB3b3JrdHJlZSBjaGFuZ2VzIgogbXNnc3RyICJLb25udGUgw4RuZGVydW5nZW4gaW0gQXJiZWl0c3ZlcnplaWNobmlzIG5pY2h0IHZlcndlcmZlbi4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTA2NgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBtb3ZlIGJhY2sgdG8gJXMiCiBtc2dzdHIgIktvbm50ZSBuaWNodCB6dSAlcyB6dXLDvGNrZ2VoZW4uIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwNzcgYnVpbHRpbi9ybS5jOjM2OAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgcmVtb3ZlICclcyciCi1tc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGzDtnNjaGVuIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjExMDMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTc3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSXQgc2VlbXMgdGhhdCB0aGVyZSBpcyBhbHJlYWR5IGEgJXMgZGlyZWN0b3J5LCBhbmRcbiIKQEAgLTE1NDgzLDM0MCArMTg5MzksMTcwIEBACiAidW5kIGbDvGhyZW4gU2llIGRpZXNlbiBCZWZlaGwgbm9jaG1hbCBhdXMuIEVzIHdpcmQgYW5nZWhhbHRlbiwgZmFsbHMgbm9jaFxuIgogImV0d2FzIFNjaMO8dHplbnN3ZXJ0ZXMgdm9yaGFuZGVuIGlzdC5cbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTI0CisjOiBidWlsdGluL3JlYmFzZS5jOjE4MDYKIG1zZ2lkICJzd2l0Y2ggYEMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCiBtc2dzdHIgIlNjaGFsdGVyIGBDJyBlcndhcnRldCBlaW5lbiBudW1lcmlzY2hlbiBXZXJ0LiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTYxCisjOiBidWlsdGluL3JlYmFzZS5jOjE4NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biBtb2RlOiAlcyIKIG1zZ3N0ciAiVW5iZWthbm50ZXIgTW9kdXM6ICVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExODMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg2OQogbXNnaWQgIi0tc3RyYXRlZ3kgcmVxdWlyZXMgLS1tZXJnZSBvciAtLWludGVyYWN0aXZlIgogbXNnc3RyICItLXN0cmF0ZWd5IGVyZm9yZGVydCAtLW1lcmdlIG9kZXIgLS1pbnRlcmFjdGl2ZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjI2Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJlcnJvcjogY2Fubm90IGNvbWJpbmUgaW50ZXJhY3RpdmUgb3B0aW9ucyAoLS1pbnRlcmFjdGl2ZSwgLS1leGVjLCAtLXJlYmFzZS0iCi0ibWVyZ2VzLCAtLXByZXNlcnZlLW1lcmdlcywgLS1rZWVwLWVtcHR5LCAtLXJvb3QgKyAtLW9udG8pIHdpdGggYW0gb3B0aW9ucyAiCi0iKCVzKSIKLW1zZ3N0ciAiRmVobGVyOiAnaW50ZXJhY3RpdmUnLU9wdGlvbmVuICgtLWludGVyYWN0aXZlLCAtLWV4ZWMsIC0tcmViYXNlLW1lcmdlcywgLS1wcmVzZXJ2ZS1tZXJnZXMsIC0ta2VlcC1lbXB0eSwgLS1yb290ICsgLS1vbnRvICkga8O2bm5lbiBuaWNodCBtaXQgJ2FtJy1PcHRpb25lbiAoJXMpIGtvbWJpbmllcnQgd2VyZGVuLiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjMxCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJlcnJvcjogY2Fubm90IGNvbWJpbmUgbWVyZ2Ugb3B0aW9ucyAoLS1tZXJnZSwgLS1zdHJhdGVneSwgLS1zdHJhdGVneS1vcHRpb24pICIKLSJ3aXRoIGFtIG9wdGlvbnMgKCVzKSIKLW1zZ3N0ciAiRmVobGVyOiAnbWVyZ2UnLU9wdGlvbmVuICgtLW1lcmdlLCAtLXN0cmF0ZWd5LCAtLXN0cmF0ZWd5LW9wdGlvbikga8O2bm5lbiBuaWNodCBtaXQgJ2FtJy1PcHRpb25lbiAoJXMpIGtvbWJpbmllcnQgd2VyZGVuLiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjUxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjUzNgotbXNnaWQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmViYXNlLW1lcmdlcyciCi1tc2dzdHIgIkZlaGxlcjogJy0tcHJlc2VydmUtbWVyZ2VzJyB1bmQgJy0tcmViYXNlLW1lcmdlcycga8O2bm5lbiBuaWNodCBrb21iaW5pZXJ0IHdlcmRlbi4iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI1NiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1NDIKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneS1vcHRpb24nIgorIzogYnVpbHRpbi9yZWJhc2UuYzoxODk5Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgYXBwbHkgb3B0aW9ucyB3aXRoIG1lcmdlIG9wdGlvbnMiCiBtc2dzdHIgIiIKLSJGZWhsZXI6ICctLXJlYmFzZS1tZXJnZXMnIHVuZCAnLS1zdHJhdGVneS1vcHRpb24nIGvDtm5uZW4gbmljaHQga29tYmluaWVydCAiCisiT3B0aW9uZW4gZsO8ciBcImFtXCIga8O2bm5lbiBuaWNodCBtaXQgT3B0aW9uZW4gZsO8ciBcIm1lcmdlXCIga29tYmluaWVydCAiCiAid2VyZGVuLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjU5IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU0NAotbXNnaWQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1yZWJhc2UtbWVyZ2VzJyB3aXRoICctLXN0cmF0ZWd5JyIKLW1zZ3N0ciAiIgotIkZlaGxlcjogJy0tcmViYXNlLW1lcmdlcycgdW5kICctLXN0cmF0ZWd5JyBrw7ZubmVuIG5pY2h0IGtvbWJpbmllcnQgd2VyZGVuLiIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTkxMgorIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHJlYmFzZSBiYWNrZW5kOiAlcyIKK21zZ3N0ciAiVW5iZWthbm50ZXMgUmViYXNlLUJhY2tlbmQ6ICVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyODMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTkzNworbXNnaWQgIi0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyByZXF1aXJlcyAtLWV4ZWMgb3IgLS1pbnRlcmFjdGl2ZSIKK21zZ3N0ciAiLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjIGVyZm9yZGVydCAtLWV4ZWMgb2RlciAtLWludGVyYWN0aXZlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5NTcKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmViYXNlLW1lcmdlcyciCittc2dzdHIgIiIKKyInLS1wcmVzZXJ2ZS1tZXJnZXMnIGthbm4gbmljaHQgbWl0ICctLXJlYmFzZS1tZXJnZXMnIGtvbWJpbmllcnQgd2VyZGVuLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTYxCittc2dpZCAiIgorImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyciCittc2dzdHIgIiIKKyJGZWhsZXI6ICctLXByZXNlcnZlLW1lcmdlcycga2FubiBuaWNodCBtaXQgJy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYycgIgorImtvbWJpbmllcnQgd2VyZGVuLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgdXBzdHJlYW0gJyVzJyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgVXBzdHJlYW0gJyVzJyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjg5CisjOiBidWlsdGluL3JlYmFzZS5jOjE5OTEKIG1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIG5ldyByb290IGNvbW1pdCIKIG1zZ3N0ciAiS29ubnRlIG5ldWVuIFJvb3QtQ29tbWl0IG5pY2h0IGVyc3RlbGxlbi4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTMwNworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IG5lZWQgZXhhY3RseSBvbmUgbWVyZ2UgYmFzZSB3aXRoIGJyYW5jaCIKK21zZ3N0ciAiJyVzJzogYmVuw7Z0aWdlIGdlbmF1IGVpbmUgTWVyZ2UtQmFzaXMgbWl0IGRlbSBCcmFuY2giCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAyMAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiBuZWVkIGV4YWN0bHkgb25lIG1lcmdlIGJhc2UiCiBtc2dzdHIgIiclcyc6IGJlbsO2dGlnZSBnZW5hdSBlaW5lIE1lcmdlLUJhc2lzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzMTQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJEb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIGNvbW1pdCAnJXMnIgogbXNnc3RyICInJXMnIHplaWd0IGF1ZiBrZWluZW4gZ8O8bHRpZ2VuIENvbW1pdC4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTMzOQorIzogYnVpbHRpbi9yZWJhc2UuYzoyMDU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhdGFsOiBubyBzdWNoIGJyYW5jaC9jb21taXQgJyVzJyIKIG1zZ3N0ciAiZmF0YWw6IEJyYW5jaC9Db21taXQgJyVzJyBuaWNodCBnZWZ1bmRlbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzQ3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzozNwotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MzAKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA2MiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVmOiAlcyIKIG1zZ3N0ciAiUmVmZXJlbnogbmljaHQgZ2VmdW5kZW46ICVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzNTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA3MwogbXNnaWQgIkNvdWxkIG5vdCByZXNvbHZlIEhFQUQgdG8gYSByZXZpc2lvbiIKIG1zZ3N0ciAiS29ubnRlIEhFQUQgenUga2VpbmVtIENvbW1pdCBhdWZsw7ZzZW4uIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzOTkgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjY1CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMTEKIG1zZ2lkICJDYW5ub3QgYXV0b3N0YXNoIgogbXNnc3RyICJLYW5uIGF1dG9tYXRpc2NoZW4gU3Rhc2ggbmljaHQgZXJ6ZXVnZW4uIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MDIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjExNAogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmV4cGVjdGVkIHN0YXNoIHJlc3BvbnNlOiAnJXMnIgogbXNnc3RyICJVbmVyd2FydGV0ZSAnc3Rhc2gnLUFudHdvcnQ6ICclcyciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQwOAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5IGZvciAnJXMnIgogbXNnc3RyICJLb25udGUgVmVyemVpY2huaXMgZsO8ciAnJXMnIG5pY2h0IGVyc3RlbGxlbi4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxMQorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNyZWF0ZWQgYXV0b3N0YXNoOiAlc1xuIgogbXNnc3RyICJBdXRvbWF0aXNjaGVuIFN0YXNoIGVyemV1Z3Q6ICVzXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxNAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTI2CiBtc2dpZCAiY291bGQgbm90IHJlc2V0IC0taGFyZCIKIG1zZ3N0ciAiS29ubnRlICdyZXNldCAtLWhhcmQnIG5pY2h0IGF1c2bDvGhyZW4uIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MTUgYnVpbHRpbi9yZXNldC5jOjExMwotIywgYy1mb3JtYXQKLW1zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKLW1zZ3N0ciAiSEVBRCBpc3QgamV0enQgYmVpICVzIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MzEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6Njc0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMzUKIG1zZ2lkICJQbGVhc2UgY29tbWl0IG9yIHN0YXNoIHRoZW0uIgogbXNnc3RyICJCaXR0ZSBjb21taXR0ZW4gU2llIGRpZSDDhG5kZXJ1bmdlbiBvZGVyIGJlbnV0emVuIFNpZSBcInN0YXNoXCIuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0NTgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IHBhcnNlICclcyciCi1tc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IHBhcnNlbi4iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ3MAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzd2l0Y2ggdG8gJXMiCiBtc2dzdHIgIktvbm50ZSBuaWNodCB6dSAlcyB3ZWNoc2Vsbi4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2OTcKLSMsIHNoLWZvcm1hdAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTgwCiBtc2dpZCAiSEVBRCBpcyB1cCB0byBkYXRlLiIKIG1zZ3N0ciAiSEVBRCBpc3QgYWt0dWVsbC4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkN1cnJlbnQgYnJhbmNoICVzIGlzIHVwIHRvIGRhdGUuXG4iCiBtc2dzdHIgIkFrdHVlbGxlciBCcmFuY2ggJXMgaXN0IGF1ZiBkZW0gbmV1ZXN0ZW4gU3RhbmQuXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MDcKLSMsIHNoLWZvcm1hdAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTkwCiBtc2dpZCAiSEVBRCBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLiIKIG1zZ3N0ciAiSEVBRCBpc3QgYWt0dWVsbCwgUmViYXNlIGVyend1bmdlbi4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkN1cnJlbnQgYnJhbmNoICVzIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuXG4iCiBtc2dzdHIgIkFrdHVlbGxlciBCcmFuY2ggJXMgaXN0IGF1ZiBkZW0gbmV1ZXN0ZW4gU3RhbmQsIFJlYmFzZSBlcnp3dW5nZW4uXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTUwMSBnaXQtbGVnYWN5LXJlYmFzZS5zaDoyMDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIwMAogbXNnaWQgIlRoZSBwcmUtcmViYXNlIGhvb2sgcmVmdXNlZCB0byByZWJhc2UuIgogbXNnc3RyICJEZXIgXCJwcmUtcmViYXNlIGhvb2tcIiBoYXQgZGVuIFJlYmFzZSB6dXLDvGNrZ2V3aWVzZW4uIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJDaGFuZ2VzIHRvICVzOlxuIgogbXNnc3RyICLDhG5kZXJ1bmdlbiB6dSAlczpcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTExCisjOiBidWlsdGluL3JlYmFzZS5jOjIyMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2hhbmdlcyBmcm9tICVzIHRvICVzOlxuIgogbXNnc3RyICLDhG5kZXJ1bmdlbiB2b24gJXMgenUgJXM6XG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTUzNgorIzogYnVpbHRpbi9yZWJhc2UuYzoyMjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZpcnN0LCByZXdpbmRpbmcgaGVhZCB0byByZXBsYXkgeW91ciB3b3JrIG9uIHRvcCBvZiBpdC4uLlxuIgotbXNnc3RyICJadW7DpGNoc3Qgd2lyZCBkZXIgQnJhbmNoIHp1csO8Y2tnZXNwdWx0LCB1bSBJaHJlIMOEbmRlcnVuZ2VuIGRhcmF1ZiBuZXUgYW56dXdlbmRlbi4uLlxuIgorbXNnc3RyICIiCisiWnVuw6RjaHN0IHdpcmQgZGVyIEJyYW5jaCB6dXLDvGNrZ2VzcHVsdCwgdW0gSWhyZSDDhG5kZXJ1bmdlbiBkYXJhdWYgbmV1ICIKKyJhbnp1d2VuZGVuLi4uXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTU0MworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjQ0CiBtc2dpZCAiQ291bGQgbm90IGRldGFjaCBIRUFEIgogbXNnc3RyICJLb25udGUgSEVBRCBuaWNodCBsb3Nsw7ZzZW4uIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1NTIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjI1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRlZCAlcyB0byAlcy5cbiIKIG1zZ3N0ciAiU3B1bGUgJXMgdm9yIHp1ICVzLlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoyNAotbXNnaWQgIm5vIEhFQUQ/IgotbXNnc3RyICJLZWluIEhFQUQ/IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzo1MQotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAlcyIKLW1zZ3N0ciAiS29ubnRlIHRlbXBvcsOkcmVzIFZlcnplaWNobmlzICclcycgbmljaHQgZXJzdGVsbGVuLiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6NTcKLW1zZ2lkICJjb3VsZCBub3QgbWFyayBhcyBpbnRlcmFjdGl2ZSIKLW1zZ3N0ciAiTWFya2llcnVuZyBhdWYgaW50ZXJha3RpdmVuIFJlYmFzZSBmZWhsZ2VzY2hsYWdlbi4iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjEwMQotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3Qgb3BlbiAlcyIKLW1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgw7ZmZm5lbi4iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjExNAotbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSB0b2RvIGxpc3QiCi1tc2dzdHIgIktvbm50ZSBUT0RPLUxpc3RlIG5pY2h0IGVyemV1Z2VuLiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTI5Ci1tc2dpZCAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxvcHRpb25zPl0iCi1tc2dzdHIgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFs8T3B0aW9uZW4+XSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTQ4Ci1tc2dpZCAia2VlcCBlbXB0eSBjb21taXRzIgotbXNnc3RyICJsZWVyZSBDb21taXRzIGJlaGFsdGVuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTAgYnVpbHRpbi9yZXZlcnQuYzoxMjQKLW1zZ2lkICJhbGxvdyBjb21taXRzIHdpdGggZW1wdHkgbWVzc2FnZXMiCi1tc2dzdHIgIkNvbW1pdHMgbWl0IGxlZXJlciBCZXNjaHJlaWJ1bmcgZXJsYXViZW4iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1MQotbXNnaWQgInJlYmFzZSBtZXJnZSBjb21taXRzIgotbXNnc3RyICJSZWJhc2UgYXVmIE1lcmdlLUNvbW1pdHMgYXVzZsO8aHJlbiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTUzCi1tc2dpZCAia2VlcCBvcmlnaW5hbCBicmFuY2ggcG9pbnRzIG9mIGNvdXNpbnMiCi1tc2dzdHIgIm9yaWdpbmFsZSBCcmFuY2gtUHVua3RlIGRlciBDb3VzaW5zIGJlaGFsdGVuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTUKLW1zZ2lkICJtb3ZlIGNvbW1pdHMgdGhhdCBiZWdpbiB3aXRoIHNxdWFzaCEvZml4dXAhIgotbXNnc3RyICJDb21taXRzIHZlcnNjaGllYmVuLCBkaWUgbWl0IHNxdWFzaCEvZml4dXAhIGJlZ2lubmVuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTYKLW1zZ2lkICJzaWduIGNvbW1pdHMiCi1tc2dzdHIgIkNvbW1pdHMgc2lnbmllcmVuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTgKLW1zZ2lkICJjb250aW51ZSByZWJhc2UiCi1tc2dzdHIgIlJlYmFzZSBmb3J0c2V0emVuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjAKLW1zZ2lkICJza2lwIGNvbW1pdCIKLW1zZ3N0ciAiQ29tbWl0IGF1c2xhc3NlbiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYxCi1tc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICJkaWUgVE9ETy1MaXN0ZSBiZWFyYmVpdGVuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjMKLW1zZ2lkICJzaG93IHRoZSBjdXJyZW50IHBhdGNoIgotbXNnc3RyICJkZW4gYWt0dWVsbGVuIFBhdGNoIGFuemVpZ2VuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjYKLW1zZ2lkICJzaG9ydGVuIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAiQ29tbWl0LUlEcyBpbiBkZXIgVE9ETy1MaXN0ZSB2ZXJrw7xyemVuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjgKLW1zZ2lkICJleHBhbmQgY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICJDb21taXQtSURzIGluIGRlciBUT0RPLUxpc3RlIGVyd2VpdGVybiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTcwCi1tc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAiZGllIFRPRE8tTGlzdGUgcHLDvGZlbiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTcyCi1tc2dpZCAicmVhcnJhbmdlIGZpeHVwL3NxdWFzaCBsaW5lcyIKLW1zZ3N0ciAiZml4dXAvc3F1YXNoLVplaWxlbiB1bW9yZG5lbiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc0Ci1tc2dpZCAiaW5zZXJ0IGV4ZWMgY29tbWFuZHMgaW4gdG9kbyBsaXN0IgotbXNnc3RyICJcImV4ZWNcIi1CZWZlaGxlIGluIFRPRE8tTGlzdGUgZWluZsO8Z2VuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzUKLW1zZ2lkICJvbnRvIgotbXNnc3RyICJhdWYiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NwotbXNnaWQgInJlc3RyaWN0LXJldmlzaW9uIgotbXNnc3RyICJCZWdyZW56dW5nc2NvbW1pdCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc3Ci1tc2dpZCAicmVzdHJpY3QgcmV2aXNpb24iCi1tc2dzdHIgIkJlZ3Jlbnp1bmdzY29tbWl0IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzgKLW1zZ2lkICJzcXVhc2gtb250byIKLW1zZ3N0ciAic3F1YXNoLW9udG8iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3OQotbXNnaWQgInNxdWFzaCBvbnRvIgotbXNnc3RyICJzcXVhc2ggb250byIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgxCi1tc2dpZCAidGhlIHVwc3RyZWFtIGNvbW1pdCIKLW1zZ3N0ciAiZGVyIFVwc3RyZWFtLUNvbW1pdCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgyCi1tc2dpZCAiaGVhZC1uYW1lIgotbXNnc3RyICJoZWFkLU5hbWUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MgotbXNnaWQgImhlYWQgbmFtZSIKLW1zZ3N0ciAiaGVhZC1OYW1lIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODcKLW1zZ2lkICJyZWJhc2Ugc3RyYXRlZ3kiCi1tc2dzdHIgIlJlYmFzZS1TdHJhdGVnaWUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4OAotbXNnaWQgInN0cmF0ZWd5LW9wdHMiCi1tc2dzdHIgIlN0cmF0ZWdpZS1PcHRpb25lbiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg5Ci1tc2dpZCAic3RyYXRlZ3kgb3B0aW9ucyIKLW1zZ3N0ciAiU3RyYXRlZ2llLU9wdGlvbmVuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTAKLW1zZ2lkICJzd2l0Y2gtdG8iCi1tc2dzdHIgIndlY2hzZWxuIHp1IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTEKLW1zZ2lkICJ0aGUgYnJhbmNoIG9yIGNvbW1pdCB0byBjaGVja291dCIKLW1zZ3N0ciAiZGVyIEJyYW5jaCBvZGVyIENvbW1pdCB6dW0gQXVzY2hlY2tlbiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkyCi1tc2dpZCAib250by1uYW1lIgotbXNnc3RyICJvbnRvLU5hbWUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MgotbXNnaWQgIm9udG8gbmFtZSIKLW1zZ3N0ciAib250by1OYW1lIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTMKLW1zZ2lkICJjbWQiCi1tc2dzdHIgIkJlZmVobCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkzCi1tc2dpZCAidGhlIGNvbW1hbmQgdG8gcnVuIgotbXNnc3RyICJhdXN6dWbDvGhyZW5kZXIgQmVmZWhsIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoyMjAKLW1zZ2lkICItLVtuby1dcmViYXNlLWNvdXNpbnMgaGFzIG5vIGVmZmVjdCB3aXRob3V0IC0tcmViYXNlLW1lcmdlcyIKLW1zZ3N0ciAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIGhhdCBvaG5lIC0tcmViYXNlLW1lcmdlcyBrZWluZSBBdXN3aXJrdW5nIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoyMjYKLW1zZ2lkICJhIGJhc2UgY29tbWl0IG11c3QgYmUgcHJvdmlkZWQgd2l0aCAtLXVwc3RyZWFtIG9yIC0tb250byIKLW1zZ3N0ciAiRWluIEJhc2lzLUNvbW1pdCBtdXNzIG1pdCAtLXVwc3RyZWFtIG9kZXIgLS1vbnRvIGFuZ2VnZWJlbiB3ZXJkZW4uIgotCiAjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjMzCiBtc2dpZCAiZ2l0IHJlY2VpdmUtcGFjayA8Z2l0LWRpcj4iCiBtc2dzdHIgImdpdCByZWNlaXZlLXBhY2sgPEdpdC1WZXJ6ZWljaG5pcz4iCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODMwCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjgyMQogbXNnaWQgIiIKICJCeSBkZWZhdWx0LCB1cGRhdGluZyB0aGUgY3VycmVudCBicmFuY2ggaW4gYSBub24tYmFyZSByZXBvc2l0b3J5XG4iCiAiaXMgZGVuaWVkLCBiZWNhdXNlIGl0IHdpbGwgbWFrZSB0aGUgaW5kZXggYW5kIHdvcmsgdHJlZSBpbmNvbnNpc3RlbnRcbiIKQEAgLTE1ODQ4LDcgKzE5MTM0LDcgQEAKICJzZXR6ZW4gU2llIGRpZSBLb25maWd1cmF0aW9uc3ZhcmlhYmxlICdyZWNlaXZlLmRlbnlDdXJyZW50QnJhbmNoJyBhdWZcbiIKICIncmVmdXNlJy4iCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODUwCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjg0MQogbXNnaWQgIiIKICJCeSBkZWZhdWx0LCBkZWxldGluZyB0aGUgY3VycmVudCBicmFuY2ggaXMgZGVuaWVkLCBiZWNhdXNlIHRoZSBuZXh0XG4iCiAiJ2dpdCBjbG9uZScgd29uJ3QgcmVzdWx0IGluIGFueSBmaWxlIGNoZWNrZWQgb3V0LCBjYXVzaW5nIGNvbmZ1c2lvbi5cbiIKQEAgLTE1ODY5LDI0ICsxOTE1NSw3OSBAQAogIlxuIgogIlVtIGRpZXNlIE1lbGR1bmcgenUgdW50ZXJkcsO8Y2tlbiwgc2V0emVuIFNpZSBkaWUgVmFyaWFibGUgYXVmICdyZWZ1c2UnLiIKIAotIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTI5CisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5MzgKIG1zZ2lkICJxdWlldCIKIG1zZ3N0ciAid2VuaWdlciBBdXNnYWJlbiIKIAotIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTQzCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NTIKIG1zZ2lkICJZb3UgbXVzdCBzcGVjaWZ5IGEgZGlyZWN0b3J5LiIKIG1zZ3N0ciAiU2llIG3DvHNzZW4gZWluIFJlcG9zaXRvcnkgYW5nZWJlbi4iCiAKLSM6IGJ1aWx0aW4vcmVmbG9nLmM6NTYzIGJ1aWx0aW4vcmVmbG9nLmM6NTY4CisjOiBidWlsdGluL3JlZmxvZy5jOjE3Cittc2dpZCAiIgorImdpdCByZWZsb2cgZXhwaXJlIFstLWV4cGlyZT08dGltZT5dIFstLWV4cGlyZS11bnJlYWNoYWJsZT08dGltZT5dIFstLSIKKyJyZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLXN0YWxlLWZpeF0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSBbLS1hbGxdICIKKyI8cmVmcz4uLi4iCittc2dzdHIgIiIKKyJnaXQgcmVmbG9nIGV4cGlyZSBbLS1leHBpcmU9PFplaXQ+XSBbLS1leHBpcmUtdW5yZWFjaGFibGU9PFplaXQ+XSBbLS0iCisicmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1zdGFsZS1maXhdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gWy0tYWxsXSAiCisiPFJlZmVyZW56ZW4+Li4uIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjIyCittc2dpZCAiIgorImdpdCByZWZsb2cgZGVsZXRlIFstLXJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSAiCisiPHJlZnM+Li4uIgorbXNnc3RyICIiCisiZ2l0IHJlZmxvZyBkZWxldGUgWy0tcmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdICIKKyI8UmVmZXJlbnplbj4uLi4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MjUKK21zZ2lkICJnaXQgcmVmbG9nIGV4aXN0cyA8cmVmPiIKK21zZ3N0ciAiZ2l0IHJlZmxvZyBleGlzdHMgPFJlZmVyZW56PiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo1NjggYnVpbHRpbi9yZWZsb2cuYzo1NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0aW1lc3RhbXAiCiBtc2dzdHIgIiclcycgaXN0IGtlaW4gZ8O8bHRpZ2VyIFplaXRzdGVtcGVsIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2CisjOiBidWlsdGluL3JlZmxvZy5jOjYwNgorIywgYy1mb3JtYXQKK21zZ2lkICJNYXJraW5nIHJlYWNoYWJsZSBvYmplY3RzLi4uIgorbXNnc3RyICJNYXJraWVyZSBuaWNodCBlcnJlaWNoYmFyZSBPYmpla3RlLi4uIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwb2ludHMgbm93aGVyZSEiCittc2dzdHIgIiVzIHplaWd0IGF1ZiBuaWNodHMhIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY5NgorbXNnaWQgIm5vIHJlZmxvZyBzcGVjaWZpZWQgdG8gZGVsZXRlIgorbXNnc3RyICJLZWluIFJlZmxvZyB6dW0gTMO2c2NoZW4gYW5nZWdlYmVuLiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgcmVmbG9nOiAlcyIKK21zZ3N0ciAiS2VpbiBSZWZsb2c6ICVzIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjcxMAorIywgYy1mb3JtYXQKK21zZ2lkICJubyByZWZsb2cgZm9yICclcyciCittc2dzdHIgIktlaW4gUmVmbG9nIGbDvHIgJyVzJy4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzU2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmIGZvcm1hdDogJXMiCittc2dzdHIgIlVuZ8O8bHRpZ2VzIEZvcm1hdCBmw7xyIFJlZmVyZW56ZW46ICVzIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc2NQorbXNnaWQgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCittc2dzdHIgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcKIG1zZ2lkICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0iCiBtc2dzdHIgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNworIzogYnVpbHRpbi9yZW1vdGUuYzoxOAogbXNnaWQgIiIKICJnaXQgcmVtb3RlIGFkZCBbLXQgPGJyYW5jaD5dIFstbSA8bWFzdGVyPl0gWy1mXSBbLS10YWdzIHwgLS1uby10YWdzXSBbLS0iCiAibWlycm9yPTxmZXRjaHxwdXNoPl0gPG5hbWU+IDx1cmw+IgpAQCAtMTU4OTQsODIgKzE5MjM1LDgyIEBACiAiZ2l0IHJlbW90ZSBhZGQgWy10IDxCcmFuY2g+XSBbLW0gPG1hc3Rlcj5dIFstZl0gWy0tdGFncyB8IC0tbm8tdGFnc10gWy0tIgogIm1pcnJvcj08ZmV0Y2h8cHVzaD5dIDxOYW1lPiA8VVJMPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOCBidWlsdGluL3JlbW90ZS5jOjM4CisjOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6MzkKIG1zZ2lkICJnaXQgcmVtb3RlIHJlbmFtZSA8b2xkPiA8bmV3PiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSByZW5hbWUgPGFsdD4gPG5ldT4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTkgYnVpbHRpbi9yZW1vdGUuYzo0MworIzogYnVpbHRpbi9yZW1vdGUuYzoyMCBidWlsdGluL3JlbW90ZS5jOjQ0CiBtc2dpZCAiZ2l0IHJlbW90ZSByZW1vdmUgPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHJlbW92ZSA8TmFtZT4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjAgYnVpbHRpbi9yZW1vdGUuYzo0OAorIzogYnVpbHRpbi9yZW1vdGUuYzoyMSBidWlsdGluL3JlbW90ZS5jOjQ5CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtaGVhZCA8bmFtZT4gKC1hIHwgLS1hdXRvIHwgLWQgfCAtLWRlbGV0ZSB8IDxicmFuY2g+KSIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtaGVhZCA8TmFtZT4gKC1hIHwgLS1hdXRvIHwgLWQgfCAtLWRlbGV0ZSB8IDxCcmFuY2g+KSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMQorIzogYnVpbHRpbi9yZW1vdGUuYzoyMgogbXNnaWQgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSBzaG93IFstbl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gc2hvdyBbLW5dIDxOYW1lPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMgorIzogYnVpbHRpbi9yZW1vdGUuYzoyMwogbXNnaWQgImdpdCByZW1vdGUgcHJ1bmUgWy1uIHwgLS1kcnktcnVuXSA8bmFtZT4iCiBtc2dzdHIgImdpdCByZW1vdGUgcHJ1bmUgWy1uIHwgLS1kcnktcnVuXSA8TmFtZT4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjQKIG1zZ2lkICIiCiAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHVwZGF0ZSBbLXAgfCAtLXBydW5lXSBbKDxncm91cD4gfCA8cmVtb3RlPikuLi5dIgogbXNnc3RyICIiCiAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHVwZGF0ZSBbLXAgfCAtLXBydW5lXSBbKDxHcnVwcGU+IHwgPFJlbW90ZT4pLi4uXSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNAorIzogYnVpbHRpbi9yZW1vdGUuYzoyNQogbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIFstLWFkZF0gPG5hbWU+IDxicmFuY2g+Li4uIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyBbLS1hZGRdIDxOYW1lPiA8QnJhbmNoPi4uLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNSBidWlsdGluL3JlbW90ZS5jOjc0CisjOiBidWlsdGluL3JlbW90ZS5jOjI2IGJ1aWx0aW4vcmVtb3RlLmM6NzUKIG1zZ2lkICJnaXQgcmVtb3RlIGdldC11cmwgWy0tcHVzaF0gWy0tYWxsXSA8bmFtZT4iCiBtc2dzdHIgImdpdCByZW1vdGUgZ2V0LXVybCBbLS1wdXNoXSBbLS1hbGxdIDxOYW1lPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNiBidWlsdGluL3JlbW90ZS5jOjc5CisjOiBidWlsdGluL3JlbW90ZS5jOjI3IGJ1aWx0aW4vcmVtb3RlLmM6ODAKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC11cmwgWy0tcHVzaF0gPG5hbWU+IDxuZXd1cmw+IFs8b2xkdXJsPl0iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LXVybCBbLS1wdXNoXSA8TmFtZT4gPG5ldWVVUkw+IFs8YWx0ZVVSTD5dIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI3IGJ1aWx0aW4vcmVtb3RlLmM6ODAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjggYnVpbHRpbi9yZW1vdGUuYzo4MQogbXNnaWQgImdpdCByZW1vdGUgc2V0LXVybCAtLWFkZCA8bmFtZT4gPG5ld3VybD4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LXVybCAtLWFkZCA8TmFtZT4gPG5ldWVVUkw+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI4IGJ1aWx0aW4vcmVtb3RlLmM6ODEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjkgYnVpbHRpbi9yZW1vdGUuYzo4MgogbXNnaWQgImdpdCByZW1vdGUgc2V0LXVybCAtLWRlbGV0ZSA8bmFtZT4gPHVybD4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LXVybCAtLWRlbGV0ZSA8TmFtZT4gPFVSTD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MzMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MzQKIG1zZ2lkICJnaXQgcmVtb3RlIGFkZCBbPG9wdGlvbnM+XSA8bmFtZT4gPHVybD4iCiBtc2dzdHIgImdpdCByZW1vdGUgYWRkIFs8T3B0aW9uZW4+XSA8TmFtZT4gPFVSTD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NTMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NTQKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyA8bmFtZT4gPGJyYW5jaD4uLi4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIDxOYW1lPiA8QnJhbmNoPi4uLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo1NAorIzogYnVpbHRpbi9yZW1vdGUuYzo1NQogbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIC0tYWRkIDxuYW1lPiA8YnJhbmNoPi4uLiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgLS1hZGQgPE5hbWU+IDxCcmFuY2g+Li4uIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjU5CisjOiBidWlsdGluL3JlbW90ZS5jOjYwCiBtc2dpZCAiZ2l0IHJlbW90ZSBzaG93IFs8b3B0aW9ucz5dIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzaG93IFs8T3B0aW9uZW4+XSA8TmFtZT4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjUKIG1zZ2lkICJnaXQgcmVtb3RlIHBydW5lIFs8b3B0aW9ucz5dIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBwcnVuZSBbPE9wdGlvbmVuPl0gPE5hbWU+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjY5CisjOiBidWlsdGluL3JlbW90ZS5jOjcwCiBtc2dpZCAiZ2l0IHJlbW90ZSB1cGRhdGUgWzxvcHRpb25zPl0gWzxncm91cD4gfCA8cmVtb3RlPl0uLi4iCiBtc2dzdHIgImdpdCByZW1vdGUgdXBkYXRlIFs8T3B0aW9uZW4+XSBbPEdydXBwZT4gfCA8ZXh0ZXJuZXNSZXBvc2l0b3J5Pl0uLi4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRpbmcgJXMiCiBtc2dzdHIgIkFrdHVhbGlzaWVyZSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxCiBtc2dpZCAiIgogIi0tbWlycm9yIGlzIGRhbmdlcm91cyBhbmQgZGVwcmVjYXRlZDsgcGxlYXNlXG4iCiAiXHQgdXNlIC0tbWlycm9yPWZldGNoIG9yIC0tbWlycm9yPXB1c2ggaW5zdGVhZCIKQEAgLTE1OTc3LDg4ICsxOTMxOCwxMDQgQEAKICItLW1pcnJvciBpc3QgZ2Vmw6RocmxpY2ggdW5kIHZlcmFsdGV0OyBiaXR0ZVxuIgogIlx0IGJlbnV0emVuIFNpZSBzdGF0dGRlc3NlbiAtLW1pcnJvcj1mZXRjaCBvZGVyIC0tbWlycm9yPXB1c2giCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ3CisjOiBidWlsdGluL3JlbW90ZS5jOjE0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG1pcnJvciBhcmd1bWVudDogJXMiCiBtc2dzdHIgInVuYmVrYW5udGVzIEFyZ3VtZW50IGbDvHIgT3B0aW9uIC0tbWlycm9yOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY0CiBtc2dpZCAiZmV0Y2ggdGhlIHJlbW90ZSBicmFuY2hlcyIKIG1zZ3N0ciAiZGllIFJlbW90ZS1CcmFuY2hlcyBhbmZvcmRlcm4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY1CisjOiBidWlsdGluL3JlbW90ZS5jOjE2NgogbXNnaWQgImltcG9ydCBhbGwgdGFncyBhbmQgYXNzb2NpYXRlZCBvYmplY3RzIHdoZW4gZmV0Y2hpbmciCiBtc2dzdHIgImFsbGUgVGFncyB1bmQgdmVyYnVuZGVuZSBPYmpla3RlIGJlaW0gQW5mb3JkZXJuIGltcG9ydGllcmVuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjkKIG1zZ2lkICJvciBkbyBub3QgZmV0Y2ggYW55IHRhZyBhdCBhbGwgKC0tbm8tdGFncykiCiBtc2dzdHIgIm9kZXIgZm9yZGVyZSBnYXIga2VpbmUgVGFncyBhbiAoLS1uby10YWdzKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcxCiBtc2dpZCAiYnJhbmNoKGVzKSB0byB0cmFjayIKIG1zZ3N0ciAiQnJhbmNoKGVzKSB6dXIgw5xiZXJuYWhtZSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcyCiBtc2dpZCAibWFzdGVyIGJyYW5jaCIKIG1zZ3N0ciAiSGF1cHRicmFuY2giCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTczCisjOiBidWlsdGluL3JlbW90ZS5jOjE3NAogbXNnaWQgInNldCB1cCByZW1vdGUgYXMgYSBtaXJyb3IgdG8gcHVzaCB0byBvciBmZXRjaCBmcm9tIgogbXNnc3RyICIiCiAiQXVmc2V0emVuIGRlcyBSZW1vdGUtUmVwb3NpdG9yaWVzIGFscyBTcGllZ2VsLVJlcG9zaXRvcnkgZsO8ciBcInB1c2hcIiB1bmQgIgogIlwiZmV0Y2hcIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxODUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg2CiBtc2dpZCAic3BlY2lmeWluZyBhIG1hc3RlciBicmFuY2ggbWFrZXMgbm8gc2Vuc2Ugd2l0aCAtLW1pcnJvciIKIG1zZ3N0ciAiIgogIkRpZSBPcHRpb24gLS1taXJyb3Iga2FubiBuaWNodCBtaXQgZGVyIEFuZ2FiZSBlaW5lcyBIYXVwdGJyYW5jaGVzIHZlcndlbmRldCAiCiAid2VyZGVuLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxODcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg4CiBtc2dpZCAic3BlY2lmeWluZyBicmFuY2hlcyB0byB0cmFjayBtYWtlcyBzZW5zZSBvbmx5IHdpdGggZmV0Y2ggbWlycm9ycyIKIG1zZ3N0ciAiIgogIkRpZSBBbmdhYmUgdm9uIHp1IGZvbGdlbmRlbiBCcmFuY2hlcyBrYW5uIG51ciBtaXQgZGVtIEFuZm9yZGVybiB2b24gIgogIlNwaWVnZWxhcmNoaXZlbiB2ZXJ3ZW5kZXQgd2VyZGVuLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOTQgYnVpbHRpbi9yZW1vdGUuYzo2MzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk1IGJ1aWx0aW4vcmVtb3RlLmM6Njk2CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZSAlcyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgImV4dGVybmVzIFJlcG9zaXRvcnkgJXMgZXhpc3RpZXJ0IGJlcmVpdHMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk4IGJ1aWx0aW4vcmVtb3RlLmM6NjQwCisjOiBidWlsdGluL3JlbW90ZS5jOjE5OSBidWlsdGluL3JlbW90ZS5jOjcwMAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHJlbW90ZSBuYW1lIgogbXNnc3RyICInJXMnIGlzdCBrZWluIGfDvGx0aWdlciBOYW1lIGbDvHIgZWluIFJlbW90ZS1SZXBvc2l0b3J5IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIzOAorIzogYnVpbHRpbi9yZW1vdGUuYzoyMzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldHVwIG1hc3RlciAnJXMnIgogbXNnc3RyICJLb25udGUgc3ltYm9saXNjaGUgUmVmZXJlbnogZsO8ciBIYXVwdGJyYW5jaCB2b24gJyVzJyBuaWNodCBlaW5yaWNodGVuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjM0NAorIzogYnVpbHRpbi9yZW1vdGUuYzozNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGdldCBmZXRjaCBtYXAgZm9yIHJlZnNwZWMgJXMiCiBtc2dzdHIgIktvbm50ZSBGZXRjaC1NYXAgZsO8ciBSZWZzcGVjICVzIG5pY2h0IGJla29tbWVuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjQ0MyBidWlsdGluL3JlbW90ZS5jOjQ1MQorIzogYnVpbHRpbi9yZW1vdGUuYzo0NTMgYnVpbHRpbi9yZW1vdGUuYzo0NjEKIG1zZ2lkICIobWF0Y2hpbmcpIgogbXNnc3RyICIow7xiZXJlaW5zdGltbWVuZCkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NDU1CisjOiBidWlsdGluL3JlbW90ZS5jOjQ2NQogbXNnaWQgIihkZWxldGUpIgogbXNnc3RyICIobMO2c2NoZSkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NjI5IGJ1aWx0aW4vcmVtb3RlLmM6NzY1IGJ1aWx0aW4vcmVtb3RlLmM6ODY0CisjOiBidWlsdGluL3JlbW90ZS5jOjY1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc2V0ICclcyciCittc2dzdHIgImtvbm50ZSAnJXMnIG5pY2h0IHNldHplbiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo2NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSAlcyBjb25maWd1cmF0aW9uIHJlbW90ZS5wdXNoRGVmYXVsdCBpbjpcbiIKKyJcdCVzOiVkXG4iCisibm93IG5hbWVzIHRoZSBub24tZXhpc3RlbnQgcmVtb3RlICclcyciCittc2dzdHIgIiIKKyJEaWUgJXMgS29uZmlndXJhdGlvbiByZW1vdGUucHVzaERlZmF1bHQgaW46XG4iCisiXHQlczolZFxuIgorImJlbmVubnQgamV0enQgZGFzIG5pY2h0IGV4aXN0aWVyZW5kZSBSZW1vdGUtUmVwb3NpdG9yeSAnJXMnIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjY4OSBidWlsdGluL3JlbW90ZS5jOjgzMiBidWlsdGluL3JlbW90ZS5jOjk0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIHJlbW90ZTogJyVzJyIKIG1zZ3N0ciAiS2VpbiBzb2xjaGVzIFJlbW90ZS1SZXBvc2l0b3J5OiAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjY0NgorIzogYnVpbHRpbi9yZW1vdGUuYzo3MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbmFtZSBjb25maWcgc2VjdGlvbiAnJXMnIHRvICclcyciCiBtc2dzdHIgIktvbm50ZSBTZWt0aW9uICclcycgaW4gS29uZmlndXJhdGlvbiBuaWNodCBuYWNoICclcycgdW1iZW5lbm5lbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NjYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJOb3QgdXBkYXRpbmcgbm9uLWRlZmF1bHQgZmV0Y2ggcmVmc3BlY1xuIgpAQCAtMTYwNjksMTcgKzE5NDI2LDE3IEBACiAiXHQlc1xuIgogIlx0Qml0dGUgYWt0dWFsaXNpZXJlbiBTaWUsIGZhbGxzIG5vdHdlbmRpZywgZGllIEtvbmZpZ3VyYXRpb24gbWFudWVsbC4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NzAyCisjOiBidWlsdGluL3JlbW90ZS5jOjc2NgogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWxldGluZyAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgbMO2c2NoZW4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NzM2CisjOiBidWlsdGluL3JlbW90ZS5jOjgwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjcmVhdGluZyAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgZXJzdGVsbGVuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjgwMgorIzogYnVpbHRpbi9yZW1vdGUuYzo4NzYKIG1zZ2lkICIiCiAiTm90ZTogQSBicmFuY2ggb3V0c2lkZSB0aGUgcmVmcy9yZW1vdGVzLyBoaWVyYXJjaHkgd2FzIG5vdCByZW1vdmVkO1xuIgogInRvIGRlbGV0ZSBpdCwgdXNlOiIKQEAgLTE2MDk1LDExOCArMTk0NTIsMTE4IEBACiAiZW50ZmVybnQ7XG4iCiAidW0gZGllc2UgenUgZW50ZmVybmVuLCBiZW51dHplbiBTaWU6IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjgxNgorIzogYnVpbHRpbi9yZW1vdGUuYzo4OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBjb25maWcgc2VjdGlvbiAnJXMnIgogbXNnc3RyICJLb25udGUgU2VrdGlvbiAnJXMnIG5pY2h0IGF1cyBLb25maWd1cmF0aW9uIGVudGZlcm5lbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MTcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiBuZXcgKG5leHQgZmV0Y2ggd2lsbCBzdG9yZSBpbiByZW1vdGVzLyVzKSIKIG1zZ3N0ciAiIG5ldSAod2lyZCBiZWkgbsOkY2hzdGVtIFwiZmV0Y2hcIiBpbiByZW1vdGVzLyVzIGdlc3BlaWNoZXJ0KSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTk2CiBtc2dpZCAiIHRyYWNrZWQiCiBtc2dzdHIgIiBnZWZvbGd0IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkyMgorIzogYnVpbHRpbi9yZW1vdGUuYzo5OTgKIG1zZ2lkICIgc3RhbGUgKHVzZSAnZ2l0IHJlbW90ZSBwcnVuZScgdG8gcmVtb3ZlKSIKIG1zZ3N0ciAiIHZlcmFsdGV0IChiZW51dHplbiBTaWUgJ2dpdCByZW1vdGUgcHJ1bmUnIHp1bSBMw7ZzY2hlbikiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTI0CisjOiBidWlsdGluL3JlbW90ZS5jOjEwMDAKIG1zZ2lkICIgPz8/IgogbXNnc3RyICIgPz8/IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk2NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgYnJhbmNoLiVzLm1lcmdlOyBjYW5ub3QgcmViYXNlIG9udG8gPiAxIGJyYW5jaCIKIG1zZ3N0ciAidW5nw7xsdGlnZXMgYnJhbmNoLiVzLm1lcmdlOyBrYW5uIFJlYmFzZSBuaWNodCBhdWYgPiAxIEJyYW5jaCBhdXNmw7xocmVuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk3NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDUwCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYmFzZXMgaW50ZXJhY3RpdmVseSBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAiaW50ZXJha3RpdmVyIFJlYmFzZSBhdWYgUmVtb3RlLUJyYW5jaCAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgKHdpdGggbWVyZ2VzKSBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAiaW50ZXJha3RpdmVyIFJlYmFzZSAobWl0IE1lcmdlcykgYXVmIFJlbW90ZS1CcmFuY2ggJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTc5CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmViYXNlcyBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAiUmViYXNlIGF1ZiBSZW1vdGUtQnJhbmNoICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk4MworIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiBtZXJnZXMgd2l0aCByZW1vdGUgJXMiCiBtc2dzdHIgIiBmw7xocnQgbWl0IFJlbW90ZS1CcmFuY2ggJXMgenVzYW1tZW4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg2CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAibWVyZ2VzIHdpdGggcmVtb3RlICVzIgogbXNnc3RyICJmw7xocnQgbWl0IFJlbW90ZS1CcmFuY2ggJXMgenVzYW1tZW4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg5CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJS0qcyAgICBhbmQgd2l0aCByZW1vdGUgJXNcbiIKIG1zZ3N0ciAiJS0qcyAgICB1bmQgbWl0IFJlbW90ZS1CcmFuY2ggJXNcbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDMyCisjOiBidWlsdGluL3JlbW90ZS5jOjExMDgKIG1zZ2lkICJjcmVhdGUiCiBtc2dzdHIgImVyc3RlbGx0IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMzUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExMQogbXNnaWQgImRlbGV0ZSIKIG1zZ3N0ciAiZ2Vsw7ZzY2h0IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExNQogbXNnaWQgInVwIHRvIGRhdGUiCiBtc2dzdHIgImFrdHVlbGwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA0MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTE4CiBtc2dpZCAiZmFzdC1mb3J3YXJkYWJsZSIKIG1zZ3N0ciAidm9yc3B1bGJhciIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQ1CisjOiBidWlsdGluL3JlbW90ZS5jOjExMjEKIG1zZ2lkICJsb2NhbCBvdXQgb2YgZGF0ZSIKIG1zZ3N0ciAibG9rYWwgbmljaHQgYWt0dWVsbCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDUyCisjOiBidWlsdGluL3JlbW90ZS5jOjExMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICUtKnMgZm9yY2VzIHRvICUtKnMgKCVzKSIKIG1zZ3N0ciAiICAgICUtKnMgZXJ6d2luZ3QgVmVyc2FuZHQgbmFjaCAlLSpzICglcykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIHB1c2hlcyB0byAlLSpzICglcykiCiBtc2dzdHIgIiAgICAlLSpzIHZlcnNlbmRldCBuYWNoICUtKnMgKCVzKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU5CisjOiBidWlsdGluL3JlbW90ZS5jOjExMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICUtKnMgZm9yY2VzIHRvICVzIgogbXNnc3RyICIgICAgJS0qcyBlcnp3aW5ndCBWZXJzYW5kIG5hY2ggJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA2MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIHB1c2hlcyB0byAlcyIKIG1zZ3N0ciAiICAgICUtKnMgdmVyc2VuZGV0IG5hY2ggJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjA2CiBtc2dpZCAiZG8gbm90IHF1ZXJ5IHJlbW90ZXMiCiBtc2dzdHIgImtlaW5lIEFiZnJhZ2Ugdm9uIFJlbW90ZS1SZXBvc2l0b3JpZXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1NworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiogcmVtb3RlICVzIgogbXNnc3RyICIqIFJlbW90ZS1SZXBvc2l0b3J5ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNTgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIgIEZldGNoIFVSTDogJXMiCiBtc2dzdHIgIiAgVVJMIHp1bSBBYmhvbGVuOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU5IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NSBidWlsdGluL3JlbW90ZS5jOjEzMTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIzNSBidWlsdGluL3JlbW90ZS5jOjEyNTEgYnVpbHRpbi9yZW1vdGUuYzoxMzkwCiBtc2dpZCAiKG5vIFVSTCkiCiBtc2dzdHIgIihrZWluZSBVUkwpIgogCkBAIC0xNjIxNCwyNSArMTk1NzEsMjUgQEAKICMuIHdpdGggdGhlIG9uZSBpbiAiIEZldGNoIFVSTDogJXMiCiAjLiB0cmFuc2xhdGlvbi4KICMuCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzMgYnVpbHRpbi9yZW1vdGUuYzoxMTc1CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNDkgYnVpbHRpbi9yZW1vdGUuYzoxMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgUHVzaCAgVVJMOiAlcyIKIG1zZ3N0ciAiICBVUkwgenVtIFZlcnNlbmRlbjogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NyBidWlsdGluL3JlbW90ZS5jOjExNzkgYnVpbHRpbi9yZW1vdGUuYzoxMTgxCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTMgYnVpbHRpbi9yZW1vdGUuYzoxMjU1IGJ1aWx0aW4vcmVtb3RlLmM6MTI1NwogIywgYy1mb3JtYXQKIG1zZ2lkICIgIEhFQUQgYnJhbmNoOiAlcyIKIG1zZ3N0ciAiICBIYXVwdGJyYW5jaDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjUzCiBtc2dpZCAiKG5vdCBxdWVyaWVkKSIKIG1zZ3N0ciAiKG5pY2h0IGFiZ2VmcmFndCkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjU1CiBtc2dpZCAiKHVua25vd24pIgogbXNnc3RyICIodW5iZWthbm50KSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTgzCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiAgSEVBRCBicmFuY2ggKHJlbW90ZSBIRUFEIGlzIGFtYmlndW91cywgbWF5IGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nKTpcbiIKQEAgLTE2MjQwLDE3MiArMTk1OTcsMTYzIEBACiAiICBIYXVwdGJyYW5jaCAoZXh0ZXJuZXIgSEVBRCBpc3QgbWVocmRldXRpZywga8O2bm50ZSBlaW5lciBkZXIgZm9sZ2VuZGVuICIKICJzZWluKTpcbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTk1CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBSZW1vdGUgYnJhbmNoOiVzIgogbXNnaWRfcGx1cmFsICIgIFJlbW90ZSBicmFuY2hlczolcyIKIG1zZ3N0clswXSAiICBSZW1vdGUtQnJhbmNoOiVzIgogbXNnc3RyWzFdICIgIFJlbW90ZS1CcmFuY2hlczolcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTk4IGJ1aWx0aW4vcmVtb3RlLmM6MTIyNAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjc0IGJ1aWx0aW4vcmVtb3RlLmM6MTMwMAogbXNnaWQgIiAoc3RhdHVzIG5vdCBxdWVyaWVkKSIKIG1zZ3N0ciAiIChadXN0YW5kIG5pY2h0IGFiZ2VmcmFndCkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIwNworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjgzCiBtc2dpZCAiICBMb2NhbCBicmFuY2ggY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dpZF9wbHVyYWwgIiAgTG9jYWwgYnJhbmNoZXMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dzdHJbMF0gIiAgTG9rYWxlciBCcmFuY2gga29uZmlndXJpZXJ0IGbDvHIgJ2dpdCBwdWxsJzoiCiBtc2dzdHJbMV0gIiAgTG9rYWxlIEJyYW5jaGVzIGtvbmZpZ3VyaWVydCBmw7xyICdnaXQgcHVsbCc6IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyMTUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5MQogbXNnaWQgIiAgTG9jYWwgcmVmcyB3aWxsIGJlIG1pcnJvcmVkIGJ5ICdnaXQgcHVzaCciCiBtc2dzdHIgIiAgTG9rYWxlIFJlZmVyZW56ZW4gd2VyZGVuIHZvbiAnZ2l0IHB1c2gnIGdlc3BpZWdlbHQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIyMQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgTG9jYWwgcmVmIGNvbmZpZ3VyZWQgZm9yICdnaXQgcHVzaCclczoiCiBtc2dpZF9wbHVyYWwgIiAgTG9jYWwgcmVmcyBjb25maWd1cmVkIGZvciAnZ2l0IHB1c2gnJXM6IgogbXNnc3RyWzBdICIgIExva2FsZSBSZWZlcmVueiBrb25maWd1cmllcnQgZsO8ciAnZ2l0IHB1c2gnJXM6IgogbXNnc3RyWzFdICIgIExva2FsZSBSZWZlcmVuemVuIGtvbmZpZ3VyaWVydCBmw7xyICdnaXQgcHVzaCclczoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzE4CiBtc2dpZCAic2V0IHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCBhY2NvcmRpbmcgdG8gcmVtb3RlIgogbXNnc3RyICJzZXR6dCByZWZzL3JlbW90ZXMvPE5hbWU+L0hFQUQgZ2Vtw6TDnyBkZW0gUmVtb3RlLVJlcG9zaXRvcnkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzIwCiBtc2dpZCAiZGVsZXRlIHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCIKIG1zZ3N0ciAiZW50ZmVybnQgcmVmcy9yZW1vdGVzLzxOYW1lPi9IRUFEIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMzNQogbXNnaWQgIkNhbm5vdCBkZXRlcm1pbmUgcmVtb3RlIEhFQUQiCiBtc2dzdHIgIkthbm4gSEVBRCBkZXMgUmVtb3RlLVJlcG9zaXRvcmllcyBuaWNodCBiZXN0aW1tZW4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI2MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzM3CiBtc2dpZCAiTXVsdGlwbGUgcmVtb3RlIEhFQUQgYnJhbmNoZXMuIFBsZWFzZSBjaG9vc2Ugb25lIGV4cGxpY2l0bHkgd2l0aDoiCiBtc2dzdHIgIiIKICJNZWhyZXJlIEhhdXB0YnJhbmNoZXMgaW0gUmVtb3RlLVJlcG9zaXRvcnkuIEJpdHRlIHfDpGhsZW4gU2llIGV4cGxpeml0IGVpbmVuICIKICJhdXMgbWl0OiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjcxCisjOiBidWlsdGluL3JlbW90ZS5jOjEzNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGRlbGV0ZSAlcyIKIG1zZ3N0ciAiS29ubnRlICVzIG5pY2h0IGVudGZlcm5lbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjc5CisjOiBidWlsdGluL3JlbW90ZS5jOjEzNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgcmVmOiAlcyIKIG1zZ3N0ciAia2VpbmUgZ8O8bHRpZ2UgUmVmZXJlbno6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyODEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc2V0dXAgJXMiCiBtc2dzdHIgIktvbm50ZSAlcyBuaWNodCBlaW5yaWNodGVuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyOTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIgJXMgd2lsbCBiZWNvbWUgZGFuZ2xpbmchIgogbXNnc3RyICIgJXMgd2lyZCB1bnJlZmVyZW56aWVydCEiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMwMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAlcyBoYXMgYmVjb21lIGRhbmdsaW5nISIKIG1zZ3N0ciAiICVzIHd1cmRlIHVucmVmZXJlbnppZXJ0ISIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzEwCisjOiBidWlsdGluL3JlbW90ZS5jOjEzODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHJ1bmluZyAlcyIKIG1zZ3N0ciAiZW50ZmVybmUgdmVyYWx0ZXRlIEJyYW5jaGVzIHZvbiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzExCisjOiBidWlsdGluL3JlbW90ZS5jOjEzODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVVJMOiAlcyIKIG1zZ3N0ciAiVVJMOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzI3CisjOiBidWlsdGluL3JlbW90ZS5jOjE0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiICogW3dvdWxkIHBydW5lXSAlcyIKIG1zZ3N0ciAiICogW3fDvHJkZSB2ZXJhbHRldGVuIEJyYW5jaCBlbnRmZXJuZW5dICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQwNgogIywgYy1mb3JtYXQKIG1zZ2lkICIgKiBbcHJ1bmVkXSAlcyIKIG1zZ3N0ciAiKiBbdmVyYWx0ZXRlbiBCcmFuY2ggZW50ZmVybnRdICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzNzUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ1MQogbXNnaWQgInBydW5lIHJlbW90ZXMgYWZ0ZXIgZmV0Y2hpbmciCiBtc2dzdHIgImVudGZlcm5lIHZlcmFsdGV0ZSBCcmFuY2hlcyBpbSBSZW1vdGUtUmVwb3NpdG9yeSBuYWNoIFwiZmV0Y2hcIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDM4IGJ1aWx0aW4vcmVtb3RlLmM6MTQ5MiBidWlsdGluL3JlbW90ZS5jOjE1NjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUxNCBidWlsdGluL3JlbW90ZS5jOjE1NjggYnVpbHRpbi9yZW1vdGUuYzoxNjM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVtb3RlICclcyciCiBtc2dzdHIgIktlaW4gc29sY2hlcyBSZW1vdGUtUmVwb3NpdG9yeSAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0NTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzMAogbXNnaWQgImFkZCBicmFuY2giCiBtc2dzdHIgIkJyYW5jaCBoaW56dWbDvGdlbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDYxCisjOiBidWlsdGluL3JlbW90ZS5jOjE1MzcKIG1zZ2lkICJubyByZW1vdGUgc3BlY2lmaWVkIgogbXNnc3RyICJrZWluIFJlbW90ZS1SZXBvc2l0b3J5IGFuZ2VnZWJlbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDc4CisjOiBidWlsdGluL3JlbW90ZS5jOjE1NTQKIG1zZ2lkICJxdWVyeSBwdXNoIFVSTHMgcmF0aGVyIHRoYW4gZmV0Y2ggVVJMcyIKIG1zZ3N0ciAibnVyIFVSTHMgZsO8ciBQdXNoIGF1c2dlYmVuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0ODAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU1NgogbXNnaWQgInJldHVybiBhbGwgVVJMcyIKIG1zZ3N0ciAiYWxsZSBVUkxzIGF1c2dlYmVuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1MDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBVUkxzIGNvbmZpZ3VyZWQgZm9yIHJlbW90ZSAnJXMnIgogbXNnc3RyICJLZWluZSBVUkxzIGbDvHIgUmVtb3RlLVJlcG9zaXRvcnkgJyVzJyBrb25maWd1cmllcnQuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1MzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYxMAogbXNnaWQgIm1hbmlwdWxhdGUgcHVzaCBVUkxzIgogbXNnc3RyICJVUkxzIGbDvHIgXCJwdXNoXCIgbWFuaXB1bGllcmVuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1MzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYxMgogbXNnaWQgImFkZCBVUkwiCiBtc2dzdHIgIlVSTCBoaW56dWbDvGdlbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM4CisjOiBidWlsdGluL3JlbW90ZS5jOjE2MTQKIG1zZ2lkICJkZWxldGUgVVJMcyIKIG1zZ3N0ciAiVVJMcyBsw7ZzY2hlbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTQ1CisjOiBidWlsdGluL3JlbW90ZS5jOjE2MjEKIG1zZ2lkICItLWFkZCAtLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIiIKICJEaWUgT3B0aW9uZW4gLS1hZGQgdW5kIC0tZGVsZXRlIGvDtm5uZW4gbmljaHQgZ2VtZWluc2FtIHZlcndlbmRldCB3ZXJkZW4uIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1ODQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIG9sZCBVUkwgcGF0dGVybjogJXMiCiBtc2dzdHIgInVuZ8O8bHRpZ2VzIGFsdGVzIFVSTCBGb3JtYXQ6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1OTIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIFVSTCBmb3VuZDogJXMiCiBtc2dzdHIgIktlaW5lIHNvbGNoZSBVUkwgZ2VmdW5kZW46ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1OTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY3MAogbXNnaWQgIldpbGwgbm90IGRlbGV0ZSBhbGwgbm9uLXB1c2ggVVJMcyIKIG1zZ3N0ciAiV2VyZGUga2VpbmUgVVJMcyBlbnRmZXJuZW4sIGRpZSBuaWNodCBmw7xyIFwicHVzaFwiIGJlc3RpbW10IHNpbmQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYxMAotbXNnaWQgImJlIHZlcmJvc2U7IG11c3QgYmUgcGxhY2VkIGJlZm9yZSBhIHN1YmNvbW1hbmQiCi1tc2dzdHIgImVyd2VpdGVydGUgQXVzZ2FiZW47IG11c3Mgdm9yIGVpbmVtIFVudGVyYmVmZWhsIGFuZ2VnZWJlbiB3ZXJkZW4iCi0KLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY0MQotIywgYy1mb3JtYXQKLW1zZ2lkICJVbmtub3duIHN1YmNvbW1hbmQ6ICVzIgotbXNnc3RyICJVbmJla2FubnRlciBVbnRlcmJlZmVobDogJXMiCi0KLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MjIKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjMKIG1zZ2lkICJnaXQgcmVwYWNrIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgcmVwYWNrIFs8T3B0aW9uZW4+XSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyNworIzogYnVpbHRpbi9yZXBhY2suYzoyOAogbXNnaWQgIiIKICJJbmNyZW1lbnRhbCByZXBhY2tzIGFyZSBpbmNvbXBhdGlibGUgd2l0aCBiaXRtYXAgaW5kZXhlcy4gIFVzZVxuIgogIi0tbm8td3JpdGUtYml0bWFwLWluZGV4IG9yIGRpc2FibGUgdGhlIHBhY2sud3JpdGViaXRtYXBzIGNvbmZpZ3VyYXRpb24uIgpAQCAtMTY0MTQsOTggKzE5NzYyLDEzOCBAQAogIi0tbm8td3JpdGUtYml0bWFwLWluZGV4IG9kZXIgZGVha3RpdmllcmVuIFNpZSBkaWUgcGFjay53cml0ZWJpdG1hcHNcbiIKICJLb25maWd1cmF0aW9uLiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyOTQKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MTkxCittc2dpZCAiY291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIKK21zZ3N0ciAiIgorIktvbm50ZSAncGFjay1vYmplY3RzJyBmw7xyIGRhcyBOZXVwYWNrZW4gdm9uIE9iamVrdGVuIGF1cyBwYXJ0aWVsbCBnZWtsb250ZW5cbiIKKyJSZW1vdGUtUmVwb3NpdG9yaWVzIG5pY2h0IHN0YXJ0ZW4uIgorCisjOiBidWlsdGluL3JlcGFjay5jOjIzMCBidWlsdGluL3JlcGFjay5jOjQxNgorbXNnaWQgInJlcGFjazogRXhwZWN0aW5nIGZ1bGwgaGV4IG9iamVjdCBJRCBsaW5lcyBvbmx5IGZyb20gcGFjay1vYmplY3RzLiIKK21zZ3N0ciAiIgorInJlcGFjazogRXJ3YXJ0ZSBaZWlsZW4gbWl0IHZvbGxzdMOkbmRpZ2VyIEhleC1PYmpla3QtSUQgbnVyIHZvbiBwYWNrLW9iamVjdHMuIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI1NAorbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICIiCisiS29ubnRlICdwYWNrLW9iamVjdHMnIGbDvHIgZGFzIE5ldXBhY2tlbiB2b24gT2JqZWt0ZW4gYXVzIHBhcnRpZWxsIGdla2xvbnRlblxuIgorIlJlbW90ZS1SZXBvc2l0b3JpZXMgbmljaHQgYWJzY2hsaWXDn2VuLiIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyOTIKIG1zZ2lkICJwYWNrIGV2ZXJ5dGhpbmcgaW4gYSBzaW5nbGUgcGFjayIKIG1zZ3N0ciAiYWxsZXMgaW4gZWluZSBlaW56aWdlIFBhY2stRGF0ZWkgcGFja2VuIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5NgorIzogYnVpbHRpbi9yZXBhY2suYzoyOTQKIG1zZ2lkICJzYW1lIGFzIC1hLCBhbmQgdHVybiB1bnJlYWNoYWJsZSBvYmplY3RzIGxvb3NlIgogbXNnc3RyICJnZW5hdSB3aWUgLWEsIHVuZXJyZWljaGJhcmUgT2JqZWt0ZSB3ZXJkZW4gYWJlciBuaWNodCBnZWzDtnNjaHQiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk5CisjOiBidWlsdGluL3JlcGFjay5jOjI5NwogbXNnaWQgInJlbW92ZSByZWR1bmRhbnQgcGFja3MsIGFuZCBydW4gZ2l0LXBydW5lLXBhY2tlZCIKIG1zZ3N0ciAicmVkdW5kYW50ZSBQYWtldGUgZW50ZmVybmVuIHVuZCBcImdpdC1wcnVuZS1wYWNrZWRcIiBhdXNmw7xocmVuIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMwMQorIzogYnVpbHRpbi9yZXBhY2suYzoyOTkKIG1zZ2lkICJwYXNzIC0tbm8tcmV1c2UtZGVsdGEgdG8gZ2l0LXBhY2stb2JqZWN0cyIKIG1zZ3N0ciAiLS1uby1yZXVzZS1kZWx0YSBhbiBnaXQtcGFjay1vYmplY3RzIMO8YmVyZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAzCisjOiBidWlsdGluL3JlcGFjay5jOjMwMQogbXNnaWQgInBhc3MgLS1uby1yZXVzZS1vYmplY3QgdG8gZ2l0LXBhY2stb2JqZWN0cyIKIG1zZ3N0ciAiLS1uby1yZXVzZS1vYmplY3QgYW4gZ2l0LXBhY2stb2JqZWN0cyDDvGJlcmdlYmVuIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMwNQorIzogYnVpbHRpbi9yZXBhY2suYzozMDMKIG1zZ2lkICJkbyBub3QgcnVuIGdpdC11cGRhdGUtc2VydmVyLWluZm8iCiBtc2dzdHIgImdpdC11cGRhdGUtc2VydmVyLWluZm8gbmljaHQgYXVzZsO8aHJlbiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA2CiBtc2dpZCAicGFzcyAtLWxvY2FsIHRvIGdpdC1wYWNrLW9iamVjdHMiCiBtc2dzdHIgIi0tbG9jYWwgYW4gZ2l0LXBhY2stb2JqZWN0cyDDvGJlcmdlYmVuIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxMAorIzogYnVpbHRpbi9yZXBhY2suYzozMDgKIG1zZ2lkICJ3cml0ZSBiaXRtYXAgaW5kZXgiCiBtc2dzdHIgIkJpdG1hcC1JbmRleCBzY2hyZWliZW4iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEyCisjOiBidWlsdGluL3JlcGFjay5jOjMxMAogbXNnaWQgInBhc3MgLS1kZWx0YS1pc2xhbmRzIHRvIGdpdC1wYWNrLW9iamVjdHMiCiBtc2dzdHIgIi0tZGVsdGEtaXNsYW5kcyBhbiBnaXQtcGFjay1vYmplY3RzIMO8YmVyZ2ViZW4iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEzCisjOiBidWlsdGluL3JlcGFjay5jOjMxMQogbXNnaWQgImFwcHJveGlkYXRlIgogbXNnc3RyICJEYXR1bXNhbmdhYmUiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE0CisjOiBidWlsdGluL3JlcGFjay5jOjMxMgogbXNnaWQgIndpdGggLUEsIGRvIG5vdCBsb29zZW4gb2JqZWN0cyBvbGRlciB0aGFuIHRoaXMiCiBtc2dzdHIgIm1pdCAtQSwga2VpbmUgT2JqZWt0ZSDDpGx0ZXIgYWxzIGRpZXNlcyBEYXR1bSBsw7ZzY2hlbiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTYKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE0CiBtc2dpZCAid2l0aCAtYSwgcmVwYWNrIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgIm1pdCAtYSwgbmljaHQgZXJyZWljaGJhcmUgT2JqZWt0ZSBuZXUgcGFja2VuIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxOAorIzogYnVpbHRpbi9yZXBhY2suYzozMTYKIG1zZ2lkICJzaXplIG9mIHRoZSB3aW5kb3cgdXNlZCBmb3IgZGVsdGEgY29tcHJlc3Npb24iCiBtc2dzdHIgIkdyw7bDn2UgZGVzIEZlbnN0ZXJzIGbDvHIgZGllIERlbHRhLUtvbXByZXNzaW9uIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxOSBidWlsdGluL3JlcGFjay5jOjMyNQorIzogYnVpbHRpbi9yZXBhY2suYzozMTcgYnVpbHRpbi9yZXBhY2suYzozMjMKIG1zZ2lkICJieXRlcyIKIG1zZ3N0ciAiQnl0ZXMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIwCisjOiBidWlsdGluL3JlcGFjay5jOjMxOAogbXNnaWQgInNhbWUgYXMgdGhlIGFib3ZlLCBidXQgbGltaXQgbWVtb3J5IHNpemUgaW5zdGVhZCBvZiBlbnRyaWVzIGNvdW50IgogbXNnc3RyICIiCiAiZ2xlaWNoZXMgd2llIG9iZW4sIGFiZXIgZGllIFNwZWljaGVyZ3LDtsOfZSBhbnN0YXR0IGRlclxuIgogIkFuemFobCBkZXIgRWludHLDpGdlIGxpbWl0aWVyZW4iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIyCisjOiBidWlsdGluL3JlcGFjay5jOjMyMAogbXNnaWQgImxpbWl0cyB0aGUgbWF4aW11bSBkZWx0YSBkZXB0aCIKIG1zZ3N0ciAiZGllIG1heGltYWxlIERlbHRhLVRpZWZlIGxpbWl0aWVyZW4iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI0CisjOiBidWlsdGluL3JlcGFjay5jOjMyMgogbXNnaWQgImxpbWl0cyB0aGUgbWF4aW11bSBudW1iZXIgb2YgdGhyZWFkcyIKIG1zZ3N0ciAibWF4aW1hbGUgQW56YWhsIHZvbiBUaHJlYWRzIGxpbWl0aWVyZW4iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI2CisjOiBidWlsdGluL3JlcGFjay5jOjMyNAogbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIHBhY2tmaWxlIgogbXNnc3RyICJtYXhpbWFsZSBHcsO2w59lIGbDvHIgamVkZSBQYWtldGRhdGVpIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyOAorIzogYnVpbHRpbi9yZXBhY2suYzozMjYKIG1zZ2lkICJyZXBhY2sgb2JqZWN0cyBpbiBwYWNrcyBtYXJrZWQgd2l0aCAua2VlcCIKIG1zZ3N0ciAiIgogIk9iamVrdGUgdW1wYWNrZW4sIGRpZSBzaWNoIGluIG1pdCAua2VlcCBtYXJraWVydGVuIFBhY2stRGF0ZWllbiBiZWZpbmRlbiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMzAKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI4CiBtc2dpZCAiZG8gbm90IHJlcGFjayB0aGlzIHBhY2siCiBtc2dzdHIgImRpZXNlcyBQYWtldCBuaWNodCBuZXUgcGFja2VuIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjM0MAorIzogYnVpbHRpbi9yZXBhY2suYzozMzgKIG1zZ2lkICJjYW5ub3QgZGVsZXRlIHBhY2tzIGluIGEgcHJlY2lvdXMtb2JqZWN0cyByZXBvIgogbXNnc3RyICJrYW5uIFBhY2stRGF0ZWllbiBpbiBwcmVjaW91cy1vYmplY3RzIFJlcG9zaXRvcnkgbmljaHQgbMO2c2NoZW4iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQ0CisjOiBidWlsdGluL3JlcGFjay5jOjM0MgogbXNnaWQgIi0ta2VlcC11bnJlYWNoYWJsZSBhbmQgLUEgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1rZWVwLXVucmVhY2hhYmxlIHVuZCAtQSBzaW5kIGlua29tcGF0aWJlbCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzo1MjcKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NDI1Cittc2dpZCAiTm90aGluZyBuZXcgdG8gcGFjay4iCittc2dzdHIgIk5pY2h0cyBOZXVlcyB6dW0gUGFja2VuLiIKKworIzogYnVpbHRpbi9yZXBhY2suYzo0ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldBUk5JTkc6IFNvbWUgcGFja3MgaW4gdXNlIGhhdmUgYmVlbiByZW5hbWVkIGJ5XG4iCisiV0FSTklORzogcHJlZml4aW5nIG9sZC0gdG8gdGhlaXIgbmFtZSwgaW4gb3JkZXIgdG9cbiIKKyJXQVJOSU5HOiByZXBsYWNlIHRoZW0gd2l0aCB0aGUgbmV3IHZlcnNpb24gb2YgdGhlXG4iCisiV0FSTklORzogZmlsZS4gIEJ1dCB0aGUgb3BlcmF0aW9uIGZhaWxlZCwgYW5kIHRoZVxuIgorIldBUk5JTkc6IGF0dGVtcHQgdG8gcmVuYW1lIHRoZW0gYmFjayB0byB0aGVpclxuIgorIldBUk5JTkc6IG9yaWdpbmFsIG5hbWVzIGFsc28gZmFpbGVkLlxuIgorIldBUk5JTkc6IFBsZWFzZSByZW5hbWUgdGhlbSBpbiAlcyBtYW51YWxseTpcbiIKK21zZ3N0ciAiIgorIldBUk5VTkc6IEVpbmlnZSBpbiBWZXJ3ZW5kdW5nIGJlZmluZGxpY2hlIFBha2V0ZSB3dXJkZW5cbiIKKyJXQVJOVU5HOiB1bWJlbmFubnQsIGluZGVtICdvbGQtJyBhbiBkZXJlbiBOYW1lbiB2b3JyYW5nZXN0ZWxsdFxuIgorIldBUk5VTkc6IHd1cmRlLCB1bSBkaWVzZSBtaXQgZGVyIG5ldWVuIERhdGVpdmVyc2lvbiB6dSBlcnNldHplbi5cbiIKKyJXQVJOVU5HOiBEaWVzZSBPcGVyYXRpb24gaXN0IGZlaGxnZXNjaGxhZ2VuLiBEZXIgVmVyc3VjaCwgZGllXG4iCisiV0FSTlVORzogRGF0ZWkgenUgaWhyZW0gdXJzcHLDvG5nbGljaGVuIE5hbWVuIHVtenViZW5lbm5lbiwgc2NobHVnXG4iCisiV0FSTlVORzogZWJlbmZhbGxzIGZlaGwuXG4iCisiV0FSTlVORzogQml0dGUgYmVuZW5uZW4gU2llIGRpZXNlIG1hbnVlbGwgbmFjaCAlcyB1bTpcbiIKKworIzogYnVpbHRpbi9yZXBhY2suYzo1MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAnJXMnIgogbXNnc3RyICJGZWhsZXIgYmVpbSBMw7ZzY2hlbiB2b24gJyVzJyIKQEAgLTE2NTM0LDEyICsxOTkyMiw3IEBACiBtc2dpZCAiZ2l0IHJlcGxhY2UgWy0tZm9ybWF0PTxmb3JtYXQ+XSBbLWwgWzxwYXR0ZXJuPl1dIgogbXNnc3RyICJnaXQgcmVwbGFjZSBbLS1mb3JtYXQ9PEZvcm1hdD5dIFstbCBbPE11c3Rlcj5dXSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTggYnVpbHRpbi9yZXBsYWNlLmM6MjAzIGJ1aWx0aW4vcmVwbGFjZS5jOjIwNgotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmIgotbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBhbHMgZ8O8bHRpZ2UgUmVmZXJlbnogYXVmbMO2c2VuLiIKLQotIzogYnVpbHRpbi9yZXBsYWNlLmM6ODYKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJpbnZhbGlkIHJlcGxhY2UgZm9ybWF0ICclcydcbiIKQEAgLTE2NTQ4LDI3ICsxOTkzMSwyNyBAQAogIlVuZ8O8bHRpZ2VzIEVyc2V0enVuZ3Nmb3JtYXQgJyVzJ1xuIgogIkfDvGx0aWdlIEZvcm1hdGUgc2luZCAnc2hvcnQnLCAnbWVkaXVtJyB1bmQgJ2xvbmcnLiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTIxCisjOiBidWlsdGluL3JlcGxhY2UuYzoxMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZSByZWYgJyVzJyBub3QgZm91bmQiCiBtc2dzdHIgIkVyc2V0emVuZGUgUmVmZXJlbnogJyVzJyBuaWNodCBnZWZ1bmRlbi4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjEzNworIzogYnVpbHRpbi9yZXBsYWNlLmM6MTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgcmVwbGFjZSByZWYgJyVzJyIKIG1zZ3N0ciAiRXJzZXR6ZW5kZSBSZWZlcmVueiAnJXMnIGdlbMO2c2NodC4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE0OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVmIG5hbWUiCiBtc2dzdHIgIiclcycgaXN0IGtlaW4gZ8O8bHRpZ2VyIFJlZmVyZW56bmFtZS4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE1NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2UgcmVmICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIkVyc2V0emVuZGUgUmVmZXJlbnogJyVzJyBleGlzdGllcnQgYmVyZWl0cy4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE3NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJPYmplY3RzIG11c3QgYmUgb2YgdGhlIHNhbWUgdHlwZS5cbiIKQEAgLTE2NTgwLDc2ICsxOTk2Myw4MSBAQAogInfDpGhyZW5kICclcycgYXVmIGVpbiBlcnNldHplbmRlcyBPYmpla3Qgdm9tIFR5cCAnJXMnXG4iCiAiemVpZ3QuIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyMjUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjIyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGluZyIKIG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgenVtIFNjaHJlaWJlbiDDtmZmbmVuLiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjM4CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNDIKIG1zZ2lkICJjYXQtZmlsZSByZXBvcnRlZCBmYWlsdXJlIgogbXNnc3RyICJjYXQtZmlsZSBtZWxkZXRlIEZlaGxlci4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI1NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MjU4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciByZWFkaW5nIgogbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCB6dW0gTGVzZW4gw7ZmZm5lbi4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI2OAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MjcyCiBtc2dpZCAidW5hYmxlIHRvIHNwYXduIG1rdHJlZSIKIG1zZ3N0ciAiS29ubnRlIG1rdHJlZSBuaWNodCBhdXNmw7xocmVuLiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjcyCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNzYKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmcm9tIG1rdHJlZSIKIG1zZ3N0ciAiS29ubnRlIG5pY2h0IHZvbiBta3RyZWUgbGVzZW4uIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyODEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4NQogbXNnaWQgIm1rdHJlZSByZXBvcnRlZCBmYWlsdXJlIgogbXNnc3RyICJta3RyZWUgbWVsZGV0ZSBGZWhsZXIuIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyODUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4OQogbXNnaWQgIm1rdHJlZSBkaWQgbm90IHJldHVybiBhbiBvYmplY3QgbmFtZSIKIG1zZ3N0ciAibWt0cmVlIGxpZWZlcnRlIGtlaW5lbiBPYmpla3RuYW1lbiB6dXLDvGNrLiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjk0CisjOiBidWlsdGluL3JlcGxhY2UuYzoyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZzdGF0ICVzIgogbXNnc3RyICJLYW5uIGZzdGF0IGF1ZiAlcyBuaWNodCBhdXNmw7xocmVuLiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjk5CisjOiBidWlsdGluL3JlcGxhY2UuYzozMDMKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgb2JqZWN0IHRvIGRhdGFiYXNlIgogbXNnc3RyICJLb25udGUgT2JqZWt0IG5pY2h0IGluIERhdGVuYmFuayBzY2hyZWliZW4uIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozMTggYnVpbHRpbi9yZXBsYWNlLmM6MzcxIGJ1aWx0aW4vcmVwbGFjZS5jOjQxNQotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDQ1CisjOiBidWlsdGluL3JlcGxhY2UuYzozMjIgYnVpbHRpbi9yZXBsYWNlLmM6Mzc4IGJ1aWx0aW4vcmVwbGFjZS5jOjQyNAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnIgogbXNnc3RyICJLZWluIGfDvGx0aWdlciBPYmpla3RuYW1lOiAnJXMnIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozMjIKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ2V0IG9iamVjdCB0eXBlIGZvciAlcyIKIG1zZ3N0ciAiS29ubnRlIE9iamVrdGFydCB2b24gJXMgbmljaHQgYmVzdGltbXRlbi4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMzOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MzQyCiBtc2dpZCAiZWRpdGluZyBvYmplY3QgZmlsZSBmYWlsZWQiCiBtc2dzdHIgIkJlYXJiZWl0ZW4gdm9uIE9iamVrdGRhdGVpIGZlaGxnZXNjaGxhZ2VuLiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzQ3CisjOiBidWlsdGluL3JlcGxhY2UuYzozNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IG9iamVjdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKIG1zZ3N0ciAiTmV1ZXMgT2JqZWt0IGlzdCBkYXNzZWxiZSB3aWUgZGFzIGFsdGU6ICclcyciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQwNworIzogYnVpbHRpbi9yZXBsYWNlLmM6Mzg0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAlcyBhcyBhIGNvbW1pdCIKK21zZ3N0ciAiS29ubnRlIG5pY2h0ICVzIGFscyBDb21taXQgcGFyc2VuLiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDE2CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBtZXJnZXRhZyBpbiBjb21taXQgJyVzJyIKIG1zZ3N0ciAidW5nw7xsdGlnZXIgTWVyZ2UtVGFnIGluIENvbW1pdCAnJXMnIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MDkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgbWVyZ2V0YWcgaW4gY29tbWl0ICclcyciCiBtc2dzdHIgImZlaGxlcmhhZnRlciBNZXJnZS1UYWcgaW4gQ29tbWl0ICclcyciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQyMQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJvcmlnaW5hbCBjb21taXQgJyVzJyBjb250YWlucyBtZXJnZXRhZyAnJXMnIHRoYXQgaXMgZGlzY2FyZGVkOyB1c2UgLS1lZGl0ICIKQEAgLTE2NjU4LDMxICsyMDA0NiwzMSBAQAogIkRlciB1cnNwcsO8bmdsaWNoZSBDb21taXQgJyVzJyBlbnRow6RsdCBNZXJnZS1UYWcgJyVzJywgZGVyIHZlcndvcmZlblxuIgogIndpcmQ7IGJlbnV0emVuIFNpZSAtLWVkaXQgYW5zdGF0dCAtLWdyYWZ0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NjAKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgb3JpZ2luYWwgY29tbWl0ICclcycgaGFzIGEgZ3BnIHNpZ25hdHVyZSIKIG1zZ3N0ciAiRGVyIG9yaWdpbmFsZSBDb21taXQgJyVzJyBoYXQgZWluZSBHUEctU2lnbmF0dXIuIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NjEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3MAogbXNnaWQgInRoZSBzaWduYXR1cmUgd2lsbCBiZSByZW1vdmVkIGluIHRoZSByZXBsYWNlbWVudCBjb21taXQhIgogbXNnc3RyICJEaWUgU2lnbmF0dXIgd2lyZCBpbiBkZW0gRXJzZXR6dW5ncy1Db21taXQgZW50ZmVybnQhIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NzEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgcmVwbGFjZW1lbnQgY29tbWl0IGZvcjogJyVzJyIKIG1zZ3N0ciAiS29ubnRlIEVyc2V0enVuZ3MtQ29tbWl0IGbDvHIgJyVzJyBuaWNodCBzY2hyZWliZW4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDg4CiAjLCBjLWZvcm1hdAogbXNnaWQgImdyYWZ0IGZvciAnJXMnIHVubmVjZXNzYXJ5IgogbXNnc3RyICJLw7xuc3RsaWNoZXIgVm9yZ8OkbmdlciAoXCJncmFmdFwiKSBmw7xyICclcycgbmljaHQgbm90d2VuZGlnLiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDgyCisjOiBidWlsdGluL3JlcGxhY2UuYzo0OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IGNvbW1pdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKIG1zZ3N0ciAiTmV1ZXIgQ29tbWl0IGlzdCBkZXJzZWxiZSB3aWUgZGVyIGFsdGU6ICclcyciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUxNQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjb3VsZCBub3QgY29udmVydCB0aGUgZm9sbG93aW5nIGdyYWZ0KHMpOlxuIgpAQCAtMTY2OTEsNzEgKzIwMDc5LDcxIEBACiAiS29ubnRlIGRpZSBmb2xnZW5kZW4ga8O8bnN0bGljaGVuIFZvcmfDpG5nZXIgKFwiZ3JhZnRzXCIpIG5pY2h0IGtvbnZlcnRpZXJlbjpcbiIKICIlcyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM2CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NDgKIG1zZ2lkICJsaXN0IHJlcGxhY2UgcmVmcyIKIG1zZ3N0ciAiZXJzZXR6ZW5kZSBSZWZlcmVuemVuIGF1Zmxpc3RlbiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM3CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NDkKIG1zZ2lkICJkZWxldGUgcmVwbGFjZSByZWZzIgogbXNnc3RyICJlcnNldHplbmRlIFJlZmVyZW56ZW4gbMO2c2NoZW4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUwCiBtc2dpZCAiZWRpdCBleGlzdGluZyBvYmplY3QiCiBtc2dzdHIgImV4aXN0aWVyZW5kZXMgT2JqZWt0IGJlYXJiZWl0ZW4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzOQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUxCiBtc2dpZCAiY2hhbmdlIGEgY29tbWl0J3MgcGFyZW50cyIKIG1zZ3N0ciAiRWx0ZXJuLUNvbW1pdHMgZWluZXMgQ29tbWl0cyDDpG5kZXJuIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDAKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MgogbXNnaWQgImNvbnZlcnQgZXhpc3RpbmcgZ3JhZnQgZmlsZSIKIG1zZ3N0ciAiZXhpc3RpZXJlbmRlIERhdGVpIGRlcyBrw7xuc3RsaWNoZW4gVm9yZ8OkbmdlcnMgKFwiZ3JhZnRcIikga29udmVydGllcmVuIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MwogbXNnaWQgInJlcGxhY2UgdGhlIHJlZiBpZiBpdCBleGlzdHMiCiBtc2dzdHIgImRpZSBSZWZlcmVueiBlcnNldHplbiwgd2VubiBzaWUgZXhpc3RpZXJ0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDMKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NQogbXNnaWQgImRvIG5vdCBwcmV0dHktcHJpbnQgY29udGVudHMgZm9yIC0tZWRpdCIKIG1zZ3N0ciAia2VpbmUgYW5zcHJlY2hlbmRlIEFuemVpZ2UgZGVzIE9iamVrdGluaGFsdGVzIGbDvHIgLS1lZGl0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NgogbXNnaWQgInVzZSB0aGlzIGZvcm1hdCIKIG1zZ3N0ciAiZGFzIGFuZ2VnZWJlbmUgRm9ybWF0IGJlbnV0emVuIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NTcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU2OQogbXNnaWQgIi0tZm9ybWF0IGNhbm5vdCBiZSB1c2VkIHdoZW4gbm90IGxpc3RpbmciCiBtc2dzdHIgIi0tZm9ybWF0IGthbm4gbmljaHQgYmVpbSBBdWZsaXN0ZW4gdmVyd2VuZGV0IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU2NQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTc3CiBtc2dpZCAiLWYgb25seSBtYWtlcyBzZW5zZSB3aGVuIHdyaXRpbmcgYSByZXBsYWNlbWVudCIKIG1zZ3N0ciAiLWYgbWFjaHQgbnVyIGJlaW0gU2NocmVpYmVuIGVpbmVyIEVyc2V0enVuZyBTaW5uLiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY5CisjOiBidWlsdGluL3JlcGxhY2UuYzo1ODEKIG1zZ2lkICItLXJhdyBvbmx5IG1ha2VzIHNlbnNlIHdpdGggLS1lZGl0IgogbXNnc3RyICItLXJhdyBtYWNodCBudXIgbWl0IC0tZWRpdCBTaW5uLiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTc1CisjOiBidWlsdGluL3JlcGxhY2UuYzo1ODcKIG1zZ2lkICItZCBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQiCiBtc2dzdHIgIi1kIGJlbsO2dGlndCBtaW5kZXN0ZW5zIGVpbiBBcmd1bWVudC4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTkzCiBtc2dpZCAiYmFkIG51bWJlciBvZiBhcmd1bWVudHMiCiBtc2dzdHIgIlVuZ8O8bHRpZ2UgQW56YWhsIHZvbiBBcmd1bWVudGVuLiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTg3CisjOiBidWlsdGluL3JlcGxhY2UuYzo1OTkKIG1zZ2lkICItZSBuZWVkcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKIG1zZ3N0ciAiLWUgYmVuw7Z0aWd0IGdlbmF1IGVpbiBBcmd1bWVudC4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5MworIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA1CiBtc2dpZCAiLWcgbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IgogbXNnc3RyICItZyBiZW7DtnRpZ3QgbWluZGVzdGVucyBlaW4gQXJndW1lbnQuIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1OTkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYxMQogbXNnaWQgIi0tY29udmVydC1ncmFmdC1maWxlIHRha2VzIG5vIGFyZ3VtZW50IgogbXNnc3RyICItLWNvbnZlcnQtZ3JhZnQtZmlsZSBlcndhcnRldCBrZWluZSBBcmd1bWVudGUiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYwNQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NjE3CiBtc2dpZCAib25seSBvbmUgcGF0dGVybiBjYW4gYmUgZ2l2ZW4gd2l0aCAtbCIKIG1zZ3N0ciAiTWl0IC1sIGthbm4gbnVyIGVpbiBNdXN0ZXIgYW5nZWdlYmVuIHdlcmRlbi4iCiAKQEAgLTE2NzcxLDEyNiArMjAxNTksMTM5IEBACiBtc2dpZCAiJ2dpdCByZXJlcmUgZm9yZ2V0JyB3aXRob3V0IHBhdGhzIGlzIGRlcHJlY2F0ZWQiCiBtc2dzdHIgIidnaXQgcmVyZXJlIGZvcmdldCcgb2huZSBQZmFkZSBpc3QgdmVyYWx0ZXQuIgogCi0jOiBidWlsdGluL3JlcmVyZS5jOjExMQorIzogYnVpbHRpbi9yZXJlcmUuYzoxMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdlbmVyYXRlIGRpZmYgZm9yICclcyciCiBtc2dzdHIgIktvbm50ZSBrZWluIERpZmYgZsO8ciAnJXMnIGdlbmVyaWVyZW4uIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMgogbXNnaWQgIiIKICJnaXQgcmVzZXQgWy0tbWl4ZWQgfCAtLXNvZnQgfCAtLWhhcmQgfCAtLW1lcmdlIHwgLS1rZWVwXSBbLXFdIFs8Y29tbWl0Pl0iCiBtc2dzdHIgIiIKICJnaXQgcmVzZXQgWy0tbWl4ZWQgfCAtLXNvZnQgfCAtLWhhcmQgfCAtLW1lcmdlIHwgLS1rZWVwXSBbLXFdIFs8Q29tbWl0Pl0iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMgotbXNnaWQgImdpdCByZXNldCBbLXFdIFs8dHJlZS1pc2g+XSBbLS1dIDxwYXRocz4uLi4iCi1tc2dzdHIgImdpdCByZXNldCBbLXFdIFs8Q29tbWl0LVJlZmVyZW56Pl0gWy0tXSA8UGZhZGU+Li4uIgotCiAjOiBidWlsdGluL3Jlc2V0LmM6MzMKLW1zZ2lkICJnaXQgcmVzZXQgLS1wYXRjaCBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzPi4uLl0iCi1tc2dzdHIgImdpdCByZXNldCAtLXBhdGNoIFs8Q29tbWl0LVJlZmVyZW56Pl0gWy0tXSBbPFBmYWRlPi4uLl0iCittc2dpZCAiZ2l0IHJlc2V0IFstcV0gWzx0cmVlLWlzaD5dIFstLV0gPHBhdGhzcGVjPi4uLiIKK21zZ3N0ciAiZ2l0IHJlc2V0IFstcV0gWzxDb21taXQtUmVmZXJlbno+XSBbLS1dIDxQZmFkc3BlemlmaWthdGlvbj4uLi4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjM0Cittc2dpZCAiIgorImdpdCByZXNldCBbLXFdIFstLXBhdGhzcGVjLWZyb20tZmlsZSBbLS1wYXRoc3BlYy1maWxlLW51bF1dIFs8dHJlZS1pc2g+XSIKK21zZ3N0ciAiIgorImdpdCByZXNldCBbLXFdIFstLXBhdGhzcGVjLWZyb20tZmlsZSBbLS1wYXRoc3BlYy1maWxlLW51bF1dIFs8Q29tbWl0LSIKKyJSZWZlcmVuej5dIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzUKK21zZ2lkICJnaXQgcmVzZXQgLS1wYXRjaCBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzcGVjPi4uLl0iCittc2dzdHIgImdpdCByZXNldCAtLXBhdGNoIFs8Q29tbWl0LVJlZmVyZW56Pl0gWy0tXSBbPFBmYWRzcGV6aWZpa2F0aW9uPi4uLl0iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgIm1peGVkIgogbXNnc3RyICJtaXhlZCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJzb2Z0IgogbXNnc3RyICJzb2Z0IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgImhhcmQiCiBtc2dzdHIgImhhcmQiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAibWVyZ2UiCiBtc2dzdHIgInp1c2FtbWVuZsO8aHJlbiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJrZWVwIgogbXNnc3RyICJrZWVwIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6ODAKKyM6IGJ1aWx0aW4vcmVzZXQuYzo4MgogbXNnaWQgIllvdSBkbyBub3QgaGF2ZSBhIHZhbGlkIEhFQUQuIgogbXNnc3RyICJTaWUgaGFiZW4ga2VpbmVuIGfDvGx0aWdlbiBIRUFELiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjgyCisjOiBidWlsdGluL3Jlc2V0LmM6ODQKIG1zZ2lkICJGYWlsZWQgdG8gZmluZCB0cmVlIG9mIEhFQUQuIgogbXNnc3RyICJGZWhsZXIgYmVpbSBGaW5kZW4gZGVzIFwiVHJlZVwiLU9iamVrdGVzIHZvbiBIRUFELiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjg4CisjOiBidWlsdGluL3Jlc2V0LmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGZpbmQgdHJlZSBvZiAlcy4iCiBtc2dzdHIgIkZlaGxlciBiZWltIEZpbmRlbiBkZXMgXCJUcmVlXCItT2JqZWt0ZXMgdm9uICVzLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjE5MgorIzogYnVpbHRpbi9yZXNldC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKK21zZ3N0ciAiSEVBRCBpc3QgamV0enQgYmVpICVzIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBkbyBhICVzIHJlc2V0IGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZS4iCiBtc2dzdHIgIkthbm4ga2VpbmVuICclcyctUmVzZXQgZHVyY2hmw7xocmVuLCB3w6RocmVuZCBlaW4gTWVyZ2UgaW0gR2FuZ2UgaXN0LiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI5MgorIzogYnVpbHRpbi9yZXNldC5jOjI5NCBidWlsdGluL3N0YXNoLmM6NTIwIGJ1aWx0aW4vc3Rhc2guYzo1OTUKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2MTkKIG1zZ2lkICJiZSBxdWlldCwgb25seSByZXBvcnQgZXJyb3JzIgotbXNnc3RyICJ3ZW5pZ2VyIEF1c2dhYmVuLCBtZWxkZXQgbnVyIEZlaGxlciIKK21zZ3N0ciAid2VuaWdlciBBdXNnYWJlbiwgbnVyIEZlaGxlciBtZWxkZW4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTYKIG1zZ2lkICJyZXNldCBIRUFEIGFuZCBpbmRleCIKIG1zZ3N0ciAiSEVBRCB1bmQgSW5kZXggdW1zZXR6ZW4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTUKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTcKIG1zZ2lkICJyZXNldCBvbmx5IEhFQUQiCiBtc2dzdHIgIm51ciBIRUFEIHVtc2V0emVuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mjk3IGJ1aWx0aW4vcmVzZXQuYzoyOTkKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTkgYnVpbHRpbi9yZXNldC5jOjMwMQogbXNnaWQgInJlc2V0IEhFQUQsIGluZGV4IGFuZCB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIkhFQUQsIEluZGV4IHVuZCBBcmJlaXRzdmVyemVpY2huaXMgdW1zZXR6ZW4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMDEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMDMKIG1zZ2lkICJyZXNldCBIRUFEIGJ1dCBrZWVwIGxvY2FsIGNoYW5nZXMiCiBtc2dzdHIgIkhFQUQgdW1zZXR6ZW4sIGFiZXIgbG9rYWxlIMOEbmRlcnVuZ2VuIGJlaGFsdGVuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzA3CisjOiBidWlsdGluL3Jlc2V0LmM6MzA5CiBtc2dpZCAicmVjb3JkIG9ubHkgdGhlIGZhY3QgdGhhdCByZW1vdmVkIHBhdGhzIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCiBtc2dzdHIgIm51ciBzcGVpY2hlcm4sIGRhc3MgZ2Vsw7ZzY2h0ZSBQZmFkZSBzcMOkdGVyIGhpbnp1Z2Vmw7xndCB3ZXJkZW4gc29sbGVuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzI1CisjOiBidWlsdGluL3Jlc2V0LmM6MzQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZXZpc2lvbi4iCiBtc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IGFscyBnw7xsdGlnZW4gQ29tbWl0IGF1ZmzDtnNlbi4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMzMKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHRyZWUuIgogbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBhbHMgZ8O8bHRpZ2VzIFwiVHJlZVwiLU9iamVrdCBhdWZsw7ZzZW4uIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzQyCisjOiBidWlsdGluL3Jlc2V0LmM6MzYwCiBtc2dpZCAiLS1wYXRjaCBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLXtoYXJkLG1peGVkLHNvZnR9IgogbXNnc3RyICItLXBhdGNoIGlzdCBpbmtvbXBhdGliZWwgbWl0IC0te2hhcmQsbWl4ZWQsc29mdH0iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNTEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNzAKIG1zZ2lkICItLW1peGVkIHdpdGggcGF0aHMgaXMgZGVwcmVjYXRlZDsgdXNlICdnaXQgcmVzZXQgLS0gPHBhdGhzPicgaW5zdGVhZC4iCiBtc2dzdHIgIiIKICItLW1peGVkIG1pdCBQZmFkZW4gaXN0IHZlcmFsdGV0OyBiZW51dHplbiBTaWUgc3RhdHRkZXNzZW4gJ2dpdCByZXNldCAtLSAiCiAiPFBmYWRlPicuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzUzCisjOiBidWlsdGluL3Jlc2V0LmM6MzcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBkbyAlcyByZXNldCB3aXRoIHBhdGhzLiIKIG1zZ3N0ciAiRWluICclcyctUmVzZXQgbWl0IFBmYWRlbiBpc3QgbmljaHQgbcO2Z2xpY2guIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzYzCisjOiBidWlsdGluL3Jlc2V0LmM6Mzg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHJlc2V0IGlzIG5vdCBhbGxvd2VkIGluIGEgYmFyZSByZXBvc2l0b3J5IgogbXNnc3RyICInJXMnLVJlc2V0IGlzdCBpbiBlaW5lbSBCYXJlLVJlcG9zaXRvcnkgbmljaHQgZXJsYXVidCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM2NworIzogYnVpbHRpbi9yZXNldC5jOjM5MQogbXNnaWQgIi1OIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCAtLW1peGVkIgogbXNnc3RyICItTiBrYW5uIG51ciBtaXQgLW1peGVkIGJlbnV0enQgd2VyZGVuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mzg3CisjOiBidWlsdGluL3Jlc2V0LmM6NDEyCiBtc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZXNldDoiCiBtc2dzdHIgIk5pY2h0IHp1bSBDb21taXQgdm9yZ2VtZXJrdGUgw4RuZGVydW5nZW4gbmFjaCBadXLDvGNrc2V0enVuZzoiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOTAKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTY5MDQsNTYgKzIwMzA1LDUwIEBACiAiZGFzIHp1IHZlcmhpbmRlcm4uIFNldHplbiBTaWUgZGllIEtvbmZpZ3VyYXRpb25zZWluc3RlbGx1bmcgcmVzZXQucXVpZXRcbiIKICJhdWYgXCJ0cnVlXCIsIHVtIGRhcyB6dW0gU3RhbmRhcmQgenUgbWFjaGVuLlxuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6NDAwCisjOiBidWlsdGluL3Jlc2V0LmM6NDI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZXNldCBpbmRleCBmaWxlIHRvIHJldmlzaW9uICclcycuIgogbXNnc3RyICJLb25udGUgSW5kZXgtRGF0ZWkgbmljaHQgenUgQ29tbWl0ICclcycgc2V0emVuLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjQwNAorIzogYnVpbHRpbi9yZXNldC5jOjQyOQogbXNnaWQgIkNvdWxkIG5vdCB3cml0ZSBuZXcgaW5kZXggZmlsZS4iCiBtc2dzdHIgIktvbm50ZSBuZXVlIEluZGV4LURhdGVpIG5pY2h0IHNjaHJlaWJlbi4iCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0MDMKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0OTkKIG1zZ2lkICJjYW5ub3QgY29tYmluZSAtLWV4Y2x1ZGUtcHJvbWlzb3Itb2JqZWN0cyBhbmQgLS1taXNzaW5nIgogbXNnc3RyICIiCiAiLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgdW5kIC0tbWlzc2luZyBrw7ZubmVuIG5pY2h0IGtvbWJpbmllcnQgd2VyZGVuLiIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQ2MQorIzogYnVpbHRpbi9yZXYtbGlzdC5jOjU2MAogbXNnaWQgIm9iamVjdCBmaWx0ZXJpbmcgcmVxdWlyZXMgLS1vYmplY3RzIgogbXNnc3RyICJEYXMgRmlsdGVybiB2b24gT2JqZWt0ZW4gZXJmb3JkZXJ0IC0tb2JqZWN0cy4iCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0NjQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBzcGFyc2UgdmFsdWUgJyVzJyIKLW1zZ3N0ciAiVW5nw7xsdGlnZXIgXCJzcGFyc2VcIi1XZXJ0ICclcycuIgotCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NTA1CisjOiBidWlsdGluL3Jldi1saXN0LmM6NjEwCiBtc2dpZCAicmV2LWxpc3QgZG9lcyBub3Qgc3VwcG9ydCBkaXNwbGF5IG9mIG5vdGVzIgogbXNnc3RyICJyZXYtbGlzdCB1bnRlcnN0w7x0enQga2VpbmUgQW56ZWlnZSB2b24gTm90aXplbiIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjUwOAotbXNnaWQgImNhbm5vdCBjb21iaW5lIC0tdXNlLWJpdG1hcC1pbmRleCB3aXRoIG9iamVjdCBmaWx0ZXJpbmciCi1tc2dzdHIgIiIKLSItLXVzZS1iaXRtYXAtaW5kZXgga2FubiBuaWNodCBtaXQgZGVtIEZpbHRlcm4gdm9uIE9iamVrdGVuIGtvbWJpbmllcnQgd2VyZGVuLiIKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo2MTUKK21zZ2lkICJtYXJrZWQgY291bnRpbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1vYmplY3RzIgorbXNnc3RyICJtYXJraWVydGVzIFrDpGhsZW4gaXN0IGlua29tcGF0aWJlbCBtaXQgZGVyIE9wdGlvbiAtLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDA3CisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQwOAogbXNnaWQgImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPG9wdGlvbnM+XSAtLSBbPGFyZ3M+Li4uXSIKIG1zZ3N0ciAiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IFs8T3B0aW9uZW4+XSAtLSBbPEFyZ3VtZW50ZT4uLi5dIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxMgorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTMKIG1zZ2lkICJrZWVwIHRoZSBgLS1gIHBhc3NlZCBhcyBhbiBhcmciCiBtc2dzdHIgImAtLWAgYWxzIEFyZ3VtZW50IGxhc3NlbiIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTQKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE1CiBtc2dpZCAic3RvcCBwYXJzaW5nIGFmdGVyIHRoZSBmaXJzdCBub24tb3B0aW9uIGFyZ3VtZW50IgogbXNnc3RyICJkYXMgUGFyc2VuIG5hY2ggZGVtIGVyc3RlbiBBcmd1bWVudCwgd2FzIGtlaW5lIE9wdGlvbiBpc3QsIHN0b3BwZW4iCiAKLSM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE3CisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxOAogbXNnaWQgIm91dHB1dCBpbiBzdHVjayBsb25nIGZvcm0iCiBtc2dzdHIgIiIKICJBdXNnYWJlIGluIExhbmdmb3JtIG1pdCBBcmd1bWVudGVuIGFuIGRlbiBPcHRpb25lbiAoZ2V0cmVubnQgZHVyY2ggJz0nKSIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo1NTAKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NTUxCiBtc2dpZCAiIgogImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPG9wdGlvbnM+XSAtLSBbPGFyZ3M+Li4uXVxuIgogIiAgIG9yOiBnaXQgcmV2LXBhcnNlIC0tc3EtcXVvdGUgWzxhcmc+Li4uXVxuIgpAQCAtMTY5ODQsNzIgKzIwMzc5LDgxIEBACiBtc2dpZCAiZ2l0IGNoZXJyeS1waWNrIDxzdWJjb21tYW5kPiIKIG1zZ3N0ciAiZ2l0IGNoZXJyeS1waWNrIDxVbnRlcmJlZmVobD4iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6OTEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBhIG51bWJlciBncmVhdGVyIHRoYW4gemVybyIKK21zZ3N0ciAiT3B0aW9uIGAlcycgZXJ3YXJ0ZXQgZWluZSBOdW1tZXIgZ3LDtsOfZXIgYWxzIDAuIgorCisjOiBidWlsdGluL3JldmVydC5jOjkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAlcyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgogbXNnc3RyICIlczogJXMga2FubiBuaWNodCBtaXQgJXMgdmVyd2VuZGV0IHdlcmRlbiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDAKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAyCiBtc2dpZCAiZW5kIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAiXCJyZXZlcnRcIiBvZGVyIFwiY2hlcnJ5LXBpY2tcIiBBYmxhdWYgYmVlbmRlbiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCiBtc2dpZCAicmVzdW1lIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAiXCJyZXZlcnRcIiBvZGVyIFwiY2hlcnJ5LXBpY2tcIiBBYmxhdWYgZm9ydHNldHplbiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDIKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA0CiBtc2dpZCAiY2FuY2VsIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAiXCJyZXZlcnRcIiBvZGVyIFwiY2hlcnJ5LXBpY2tcIiBBYmxhdWYgYWJicmVjaGVuIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwMworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDUKK21zZ2lkICJza2lwIGN1cnJlbnQgY29tbWl0IGFuZCBjb250aW51ZSIKK21zZ3N0ciAiZGVuIGFrdHVlbGxlbiBDb21taXQgYXVzbGFzc2VuIHVuZCBmb3J0ZmFocmVuIgorCisjOiBidWlsdGluL3JldmVydC5jOjEwNwogbXNnaWQgImRvbid0IGF1dG9tYXRpY2FsbHkgY29tbWl0IgogbXNnc3RyICJuaWNodCBhdXRvbWF0aXNjaCBjb21taXR0ZW4iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA0CisjOiBidWlsdGluL3JldmVydC5jOjEwOAogbXNnaWQgImVkaXQgdGhlIGNvbW1pdCBtZXNzYWdlIgogbXNnc3RyICJDb21taXQtQmVzY2hyZWlidW5nIGJlYXJiZWl0ZW4iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA3CisjOiBidWlsdGluL3JldmVydC5jOjExMQogbXNnaWQgInBhcmVudC1udW1iZXIiCiBtc2dzdHIgIk51bW1lciBkZXMgRWx0ZXJudGVpbHMiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA4CisjOiBidWlsdGluL3JldmVydC5jOjExMgogbXNnaWQgInNlbGVjdCBtYWlubGluZSBwYXJlbnQiCiBtc2dzdHIgIkVsdGVybnRlaWwgZGVyIEhhdXB0bGluaWUgYXVzd8OkaGxlbiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMTAKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0CiBtc2dpZCAibWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgIk1lcmdlLVN0cmF0ZWdpZSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMTIKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE2CiBtc2dpZCAib3B0aW9uIGZvciBtZXJnZSBzdHJhdGVneSIKIG1zZ3N0ciAiT3B0aW9uIGbDvHIgTWVyZ2UtU3RyYXRlZ2llIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEyMQorIzogYnVpbHRpbi9yZXZlcnQuYzoxMjUKIG1zZ2lkICJhcHBlbmQgY29tbWl0IG5hbWUiCiBtc2dzdHIgIkNvbW1pdC1OYW1lbiBhbmjDpG5nZW4iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTIzCisjOiBidWlsdGluL3JldmVydC5jOjEyNwogbXNnaWQgInByZXNlcnZlIGluaXRpYWxseSBlbXB0eSBjb21taXRzIgogbXNnc3RyICJ1cnNwcsO8bmdsaWNoZSwgbGVlcmUgQ29tbWl0cyBlcmhhbHRlbiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMjUKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI5CiBtc2dpZCAia2VlcCByZWR1bmRhbnQsIGVtcHR5IGNvbW1pdHMiCiBtc2dzdHIgInJlZHVuZGFudGUsIGxlZXJlIENvbW1pdHMgYmVoYWx0ZW4iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjE5CisjOiBidWlsdGluL3JldmVydC5jOjIzMgogbXNnaWQgInJldmVydCBmYWlsZWQiCiBtc2dzdHIgIlwicmV2ZXJ0XCIgZmVobGdlc2NobGFnZW4iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjMyCisjOiBidWlsdGluL3JldmVydC5jOjI0NQogbXNnaWQgImNoZXJyeS1waWNrIGZhaWxlZCIKIG1zZ3N0ciAiXCJjaGVycnktcGlja1wiIGZlaGxnZXNjaGxhZ2VuIgogCi0jOiBidWlsdGluL3JtLmM6MTgKKyM6IGJ1aWx0aW4vcm0uYzoxOQogbXNnaWQgImdpdCBybSBbPG9wdGlvbnM+XSBbLS1dIDxmaWxlPi4uLiIKIG1zZ3N0ciAiZ2l0IHJtIFs8T3B0aW9uZW4+XSBbLS1dIDxEYXRlaT4uLi4iCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMDYKKyM6IGJ1aWx0aW4vcm0uYzoyMDcKIG1zZ2lkICIiCiAidGhlIGZvbGxvd2luZyBmaWxlIGhhcyBzdGFnZWQgY29udGVudCBkaWZmZXJlbnQgZnJvbSBib3RoIHRoZVxuIgogImZpbGUgYW5kIHRoZSBIRUFEOiIKQEAgLTE3MDY0LDcgKzIwNDY4LDcgQEAKICJ1bnRlcnNjaGllZGxpY2hcbiIKICJ6dSBkZXIgRGF0ZWkgdW5kIEhFQUQ6IgogCi0jOiBidWlsdGluL3JtLmM6MjExCisjOiBidWlsdGluL3JtLmM6MjEyCiBtc2dpZCAiIgogIlxuIgogIih1c2UgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCkBAIC0xNzA3MiwxMyArMjA0NzYsMTMgQEAKICJcbiIKICIoYmVudXR6ZW4gU2llIC1mLCB1bSBkaWUgTMO2c2NodW5nIHp1IGVyendpbmdlbikiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMTUKKyM6IGJ1aWx0aW4vcm0uYzoyMTYKIG1zZ2lkICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIGNoYW5nZXMgc3RhZ2VkIGluIHRoZSBpbmRleDoiCiBtc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBjaGFuZ2VzIHN0YWdlZCBpbiB0aGUgaW5kZXg6IgogbXNnc3RyWzBdICJkaWUgZm9sZ2VuZGUgRGF0ZWkgaGF0IHp1bSBDb21taXQgdm9yZ2VtZXJrdGUgw4RuZGVydW5nZW46IgogbXNnc3RyWzFdICJkaWUgZm9sZ2VuZGVuIERhdGVpZW4gaGFiZW4genVtIENvbW1pdCB2b3JnZW1lcmt0ZSDDhG5kZXJ1bmdlbjoiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMTkgYnVpbHRpbi9ybS5jOjIyOAorIzogYnVpbHRpbi9ybS5jOjIyMCBidWlsdGluL3JtLmM6MjI5CiBtc2dpZCAiIgogIlxuIgogIih1c2UgLS1jYWNoZWQgdG8ga2VlcCB0aGUgZmlsZSwgb3IgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCkBAIC0xNzA4Nyw0NCArMjA0OTEsNTAgQEAKICIoYmVudXR6ZW4gU2llIC0tY2FjaGVkLCB1bSBkaWUgRGF0ZWkgenUgYmVoYWx0ZW4sIG9kZXIgLWYsIHVtIGRhcyBFbnRmZXJuZW4gIgogInp1IGVyendpbmdlbikiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMjUKKyM6IGJ1aWx0aW4vcm0uYzoyMjYKIG1zZ2lkICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIGxvY2FsIG1vZGlmaWNhdGlvbnM6IgogbXNnaWRfcGx1cmFsICJ0aGUgZm9sbG93aW5nIGZpbGVzIGhhdmUgbG9jYWwgbW9kaWZpY2F0aW9uczoiCiBtc2dzdHJbMF0gImRpZSBmb2xnZW5kZSBEYXRlaSBoYXQgbG9rYWxlIMOEbmRlcnVuZ2VuOiIKIG1zZ3N0clsxXSAiZGllIGZvbGdlbmRlbiBEYXRlaWVuIGhhYmVuIGxva2FsZSDDhG5kZXJ1bmdlbjoiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDEKKyM6IGJ1aWx0aW4vcm0uYzoyNDMKIG1zZ2lkICJkbyBub3QgbGlzdCByZW1vdmVkIGZpbGVzIgogbXNnc3RyICJrZWluZSBnZWzDtnNjaHRlbiBEYXRlaWVuIGF1Zmxpc3RlbiIKIAotIzogYnVpbHRpbi9ybS5jOjI0MgorIzogYnVpbHRpbi9ybS5jOjI0NAogbXNnaWQgIm9ubHkgcmVtb3ZlIGZyb20gdGhlIGluZGV4IgogbXNnc3RyICJudXIgYXVzIGRlbSBJbmRleCBlbnRmZXJuZW4iCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDMKKyM6IGJ1aWx0aW4vcm0uYzoyNDUKIG1zZ2lkICJvdmVycmlkZSB0aGUgdXAtdG8tZGF0ZSBjaGVjayIKIG1zZ3N0ciAiZGllIFwidXAtdG8tZGF0ZVwiIFByw7xmdW5nIMO8YmVyc2NocmVpYmVuIgogCi0jOiBidWlsdGluL3JtLmM6MjQ0CisjOiBidWlsdGluL3JtLmM6MjQ2CiBtc2dpZCAiYWxsb3cgcmVjdXJzaXZlIHJlbW92YWwiCiBtc2dzdHIgInJla3Vyc2l2ZXMgRW50ZmVybmVuIGVybGF1YmVuIgogCi0jOiBidWlsdGluL3JtLmM6MjQ2CisjOiBidWlsdGluL3JtLmM6MjQ4CiBtc2dpZCAiZXhpdCB3aXRoIGEgemVybyBzdGF0dXMgZXZlbiBpZiBub3RoaW5nIG1hdGNoZWQiCiBtc2dzdHIgIm1pdCBSw7xja2dhYmV3ZXJ0IDAgYmVlbmRlbiwgd2VubiBrZWluZSDDnGJlcmVpbnN0aW1tdW5nIGdlZnVuZGVuIHd1cmRlIgogCi0jOiBidWlsdGluL3JtLmM6Mjg4CisjOiBidWlsdGluL3JtLmM6MjgyCittc2dpZCAiTm8gcGF0aHNwZWMgd2FzIGdpdmVuLiBXaGljaCBmaWxlcyBzaG91bGQgSSByZW1vdmU/IgorbXNnc3RyICIiCisiRXMgd3VyZGUga2VpbmUgUGZhZHNwZXppZmlrYXRpb24gYW5nZWdlYmVuLiBXZWxjaGUgRGF0ZWllbiBzb2xsZW4gZW50ZmVybnQgIgorIndlcmRlbj8iCisKKyM6IGJ1aWx0aW4vcm0uYzozMDUKIG1zZ2lkICJwbGVhc2Ugc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKIG1zZ3N0ciAiIgogIkJpdHRlIG1lcmtlbiBTaWUgSWhyZSDDhG5kZXJ1bmdlbiBpbiAuZ2l0bW9kdWxlcyB6dW0gQ29tbWl0IHZvciBvZGVyXG4iCiAiYmVudXR6ZW4gU2llIFwic3Rhc2hcIiwgdW0gZm9ydHp1ZmFocmVuLiIKIAotIzogYnVpbHRpbi9ybS5jOjMwNgorIzogYnVpbHRpbi9ybS5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgcmVtb3ZpbmcgJyVzJyByZWN1cnNpdmVseSB3aXRob3V0IC1yIgogbXNnc3RyICInJXMnIHdpcmQgbmljaHQgb2huZSAtciByZWt1cnNpdiBlbnRmZXJudCIKIAotIzogYnVpbHRpbi9ybS5jOjM0NQorIzogYnVpbHRpbi9ybS5jOjM2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgcm06IHVuYWJsZSB0byByZW1vdmUgJXMiCiBtc2dzdHIgImdpdCBybToga29ubnRlICVzIG5pY2h0IGzDtnNjaGVuIgpAQCAtMTcxNTgsMTggKzIwNTY4LDYgQEAKIG1zZ2lkICJwcmludCBzdGF0dXMgZnJvbSByZW1vdGUgaGVscGVyIgogbXNnc3RyICJTdGF0dXMgZGVzIFJlbW90ZS1IZWxwZXJzIGF1c2dlYmVuIgogCi0jOiBidWlsdGluL3NlcnZlLmM6NwotbXNnaWQgImdpdCBzZXJ2ZSBbPG9wdGlvbnM+XSIKLW1zZ3N0ciAiZ2l0IHNlcnZlIFs8T3B0aW9uZW4+XSIKLQotIzogYnVpbHRpbi9zZXJ2ZS5jOjE3IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyMwotbXNnaWQgInF1aXQgYWZ0ZXIgYSBzaW5nbGUgcmVxdWVzdC9yZXNwb25zZSBleGNoYW5nZSIKLW1zZ3N0ciAibmFjaCBlaW5lbSBlaW56aWdlbiBSZXF1ZXN0L1Jlc3BvbnNlLUF1c3RhdXNjaCBiZWVuZGVuIgotCi0jOiBidWlsdGluL3NlcnZlLmM6MTkKLW1zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGFkdmVydGlzaW5nIGNhcGFiaWxpdGllcyIKLW1zZ3N0ciAiZGlyZWt0IG5hY2ggQW56ZWlnZSBkZXIgYW5nZWJvdGVuZW4gRsOkaGlna2VpdGVuIGJlZW5kZW4iCi0KICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxNAogbXNnaWQgImdpdCBzaG9ydGxvZyBbPG9wdGlvbnM+XSBbPHJldmlzaW9uLXJhbmdlPl0gW1stLV0gPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IHNob3J0bG9nIFs8T3B0aW9uZW4+XSBbPENvbW1pdGJlcmVpY2g+XSBbWy0tXSA8UGZhZD4uLi5dIgpAQCAtMTcyMDIsNyArMjA2MDAsNyBAQAogbXNnaWQgIkxpbmV3cmFwIG91dHB1dCIKIG1zZ3N0ciAiQXVzZ2FiZSBtaXQgWmVpbGVudW1icsO8Y2hlbiIKIAotIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI5OQorIzogYnVpbHRpbi9zaG9ydGxvZy5jOjMwMQogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyBnaXZlbiBvdXRzaWRlIHJlcG9zaXRvcnkiCiBtc2dzdHIgInp1IHZpZWxlIEFyZ3VtZW50ZSBhdcOfZXJoYWxiIGRlcyBSZXBvc2l0b3JpZXMgYW5nZWdlYmVuIgogCkBAIC0xNzIyOSwxMjEgKzIwNjI3LDEyMSBAQAogbXNnc3RyWzBdICJpZ25vcmllcmUgJXM7IGthbm4gbmljaHQgbWVociBhbHMgJWQgUmVmZXJlbnogYmVoYW5kZWxuIgogbXNnc3RyWzFdICJpZ25vcmllcmUgJXM7IGthbm4gbmljaHQgbWVociBhbHMgJWQgUmVmZXJlbnplbiBiZWhhbmRlbG4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo1NDkKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo1NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gbWF0Y2hpbmcgcmVmcyB3aXRoICVzIgogbXNnc3RyICJrZWluZSDDvGJlcmVpbnN0aW1tZW5kZW4gUmVmZXJlbnplbiBtaXQgJXMiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDUKIG1zZ2lkICJzaG93IHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCiBtc2dzdHIgIlJlbW90ZS1UcmFja2luZyB1bmQgbG9rYWxlIEJyYW5jaGVzIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ4CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ3CiBtc2dpZCAic2hvdyByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMiCiBtc2dzdHIgIlJlbW90ZS1UcmFja2luZy1CcmFuY2hlcyBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0OQogbXNnaWQgImNvbG9yICcqISstJyBjb3JyZXNwb25kaW5nIHRvIHRoZSBicmFuY2giCiBtc2dzdHIgIicqISstJyBlbnRzcHJlY2hlbmQgZGVzIEJyYW5jaGVzIGVpbmbDpHJiZW4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTEKIG1zZ2lkICJzaG93IDxuPiBtb3JlIGNvbW1pdHMgYWZ0ZXIgdGhlIGNvbW1vbiBhbmNlc3RvciIKIG1zZ3N0ciAiPG4+IHdlaXRlcmUgQ29tbWl0cyBuYWNoIGRlbSBnZW1laW5zYW1lbiBWb3Jnw6RuZ2VyLUNvbW1pdCBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MwogbXNnaWQgInN5bm9ueW0gdG8gbW9yZT0tMSIKIG1zZ3N0ciAiU3lub255bSBmw7xyIG1vcmU9LTEiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKIG1zZ2lkICJzdXBwcmVzcyBuYW1pbmcgc3RyaW5ncyIKIG1zZ3N0ciAiTmFtZW4gdW50ZXJkcsO8Y2tlbiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NgogbXNnaWQgImluY2x1ZGUgdGhlIGN1cnJlbnQgYnJhbmNoIgogbXNnc3RyICJkZW4gYWt0dWVsbGVuIEJyYW5jaCBlaW5iZXppZWhlbiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1OQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1OAogbXNnaWQgIm5hbWUgY29tbWl0cyB3aXRoIHRoZWlyIG9iamVjdCBuYW1lcyIKIG1zZ3N0ciAiQ29tbWl0cyBuYWNoIGlocmVuIE9iamVrdG5hbWVuIGJlbmVubmVuIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYxCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYwCiBtc2dpZCAic2hvdyBwb3NzaWJsZSBtZXJnZSBiYXNlcyIKIG1zZ3N0ciAibcO2Z2xpY2hlIE1lcmdlLUJhc2VuIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYzCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYyCiBtc2dpZCAic2hvdyByZWZzIHVucmVhY2hhYmxlIGZyb20gYW55IG90aGVyIHJlZiIKIG1zZ3N0ciAiIgogIlJlZmVyZW56ZW4sIGRpZSB1bmVycmVpY2hiYXIgdm9uIGFsbGVuIGFuZGVyZW4gUmVmZXJlbnplbiBzaW5kLCBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NAogbXNnaWQgInNob3cgY29tbWl0cyBpbiB0b3BvbG9naWNhbCBvcmRlciIKIG1zZ3N0ciAiQ29tbWl0cyBpbiB0b3BvbG9naXNjaGVyIE9yZG51bmcgYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjgKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjcKIG1zZ2lkICJzaG93IG9ubHkgY29tbWl0cyBub3Qgb24gdGhlIGZpcnN0IGJyYW5jaCIKIG1zZ3N0ciAibnVyIENvbW1pdHMgYW56ZWlnZW4sIGRpZSBzaWNoIG5pY2h0IGltIGVyc3RlbiBCcmFuY2ggYmVmaW5kZW4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzAKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjkKIG1zZ2lkICJzaG93IG1lcmdlcyByZWFjaGFibGUgZnJvbSBvbmx5IG9uZSB0aXAiCiBtc2dzdHIgIk1lcmdlcyBhbnplaWdlbiwgZGllIG51ciB2b24gZWluZW0gQnJhbmNoIGF1cyBlcnJlaWNoYmFyIHNpbmQiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzEKIG1zZ2lkICJ0b3BvbG9naWNhbGx5IHNvcnQsIG1haW50YWluaW5nIGRhdGUgb3JkZXIgd2hlcmUgcG9zc2libGUiCiBtc2dzdHIgInRvcG9sb2dpc2NoZSBTb3J0aWVydW5nLCBCZWliZWhhbHR1bmcgRGF0dW1zb3JkbnVuZyB3byBtw7ZnbGljaCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NAogbXNnaWQgIjxuPlssPGJhc2U+XSIKIG1zZ3N0ciAiPG4+Wyw8QmFzaXM+XSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NQogbXNnaWQgInNob3cgPG4+IG1vc3QgcmVjZW50IHJlZi1sb2cgZW50cmllcyBzdGFydGluZyBhdCBiYXNlIgogbXNnc3RyICJkaWUgPG4+IGrDvG5nc3RlbiBFaW50csOkZ2UgaW0gUmVmbG9nLCBiZWdpbm5lbmQgYW4gZGVyIEJhc2lzLCBhbnplaWdlbiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjcxMgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjcxMQogbXNnaWQgIiIKICItLXJlZmxvZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1yZW1vdGVzLCAtLWluZGVwZW5kZW50IG9yIC0tbWVyZ2UtYmFzZSIKIG1zZ3N0ciAiIgogIi0tcmVmbG9nIGlzdCBpbmtvbXBhdGliZWwgbWl0IC0tYWxsLCAtLXJlbW90ZXMsIC0taW5kZXBlbmRlbnQgb2RlciAtLW1lcmdlLSIKICJiYXNlIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM2CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM1CiBtc2dpZCAibm8gYnJhbmNoZXMgZ2l2ZW4sIGFuZCBIRUFEIGlzIG5vdCB2YWxpZCIKIG1zZ3N0ciAia2VpbmUgQnJhbmNoZXMgYW5nZWdlYmVuLCB1bmQgSEVBRCBpc3QgdW5nw7xsdGlnIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM5CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM4CiBtc2dpZCAiLS1yZWZsb2cgb3B0aW9uIG5lZWRzIG9uZSBicmFuY2ggbmFtZSIKIG1zZ3N0ciAiRGllIE9wdGlvbiAtLXJlZmxvZyBiZW7DtnRpZ3QgZWluZW4gQnJhbmNobmFtZW4uIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQyCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9ubHkgJWQgZW50cnkgY2FuIGJlIHNob3duIGF0IG9uZSB0aW1lLiIKIG1zZ2lkX3BsdXJhbCAib25seSAlZCBlbnRyaWVzIGNhbiBiZSBzaG93biBhdCBvbmUgdGltZS4iCiBtc2dzdHJbMF0gIm51ciAlZCBFaW50cmFnIGthbm4genVyIHNlbGJlbiBaZWl0IGFuZ2V6ZWlndCB3ZXJkZW4iCiBtc2dzdHJbMV0gIm51ciAlZCBFaW50csOkZ2Uga8O2bm5lbiB6dXIgc2VsYmVuIFplaXQgYW5nZXplaWd0IHdlcmRlbiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0NgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIHJlZiAlcyIKIG1zZ3N0ciAiUmVmZXJlbnogbmljaHQgZ2VmdW5kZW46ICVzIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODMwCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJldi4iCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJldnMuIgogbXNnc3RyWzBdICJLYW5uIG5pY2h0IG1laHIgYWxzICVkIENvbW1pdCBiZWhhbmRlbG4uIgogbXNnc3RyWzFdICJLYW5uIG5pY2h0IG1laHIgYWxzICVkIENvbW1pdHMgYmVoYW5kZWxuLiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzNAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzNQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHJlZi4iCiBtc2dzdHIgIiclcycgaXN0IGtlaW5lIGfDvGx0aWdlIFJlZmVyZW56LiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzNworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmluZCBjb21taXQgJXMgKCVzKSIKIG1zZ3N0ciAia2FubiBDb21taXQgJXMgKCVzKSBuaWNodCBmaW5kZW4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxMQorIzogYnVpbHRpbi9zaG93LXJlZi5jOjEyCiBtc2dpZCAiIgogImdpdCBzaG93LXJlZiBbLXEgfCAtLXF1aWV0XSBbLS12ZXJpZnldIFstLWhlYWRdIFstZCB8IC0tZGVyZWZlcmVuY2VdIFstcyB8IC0tIgogImhhc2hbPTxuPl1dIFstLWFiYnJldls9PG4+XV0gWy0tdGFnc10gWy0taGVhZHNdIFstLV0gWzxwYXR0ZXJuPi4uLl0iCkBAIC0xNzM1MSw0NiArMjA3NDksMzU3IEBACiAiZ2l0IHNob3ctcmVmIFstcSB8IC0tcXVpZXRdIFstLXZlcmlmeV0gWy0taGVhZF0gWy1kIHwgLS1kZXJlZmVyZW5jZV0gWy1zIHwgLS0iCiAiaGFzaFs9PG4+XV0gWy0tYWJicmV2Wz08bj5dXSBbLS10YWdzXSBbLS1oZWFkc10gWy0tXSBbPE11c3Rlcj4uLi5dICIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjEyCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTMKIG1zZ2lkICJnaXQgc2hvdy1yZWYgLS1leGNsdWRlLWV4aXN0aW5nWz08cGF0dGVybj5dIgogbXNnc3RyICJnaXQgc2hvdy1yZWYgLS1leGNsdWRlLWV4aXN0aW5nWz08TXVzdGVyPl0iCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjEKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjIKIG1zZ2lkICJvbmx5IHNob3cgdGFncyAoY2FuIGJlIGNvbWJpbmVkIHdpdGggaGVhZHMpIgogbXNnc3RyICJudXIgVGFncyBhbnplaWdlbiAoa2FubiBtaXQgXCJoZWFkc1wiIGtvbWJpbmllcnQgd2VyZGVuKSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2MgorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2MwogbXNnaWQgIm9ubHkgc2hvdyBoZWFkcyAoY2FuIGJlIGNvbWJpbmVkIHdpdGggdGFncykiCiBtc2dzdHIgIm51ciBCcmFuY2hlcyBhbnplaWdlbiAoa2FubiBtaXQgXCJ0YWdzXCIga29tYmluaWVydCB3ZXJkZW4pIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTYzCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTY0CiBtc2dpZCAic3RyaWN0ZXIgcmVmZXJlbmNlIGNoZWNraW5nLCByZXF1aXJlcyBleGFjdCByZWYgcGF0aCIKIG1zZ3N0ciAic3RyZW5nZXJlIFJlZmVyZW56cHLDvGZ1bmcsIGVyZm9yZGVydCBleGFrdGVuIFJlZmVyZW56cGZhZCIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2NiBidWlsdGluL3Nob3ctcmVmLmM6MTY4CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTY3IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjkKIG1zZ2lkICJzaG93IHRoZSBIRUFEIHJlZmVyZW5jZSwgZXZlbiBpZiBpdCB3b3VsZCBiZSBmaWx0ZXJlZCBvdXQiCiBtc2dzdHIgIiIKICJkaWUgSEVBRC1SZWZlcmVueiBhbnplaWdlbiwgc2VsYnN0IHdlbm4gZGllc2UgYXVzZ2VmaWx0ZXJ0IHdlcmRlbiB3w7xyZGUiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzAKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzEKIG1zZ2lkICJkZXJlZmVyZW5jZSB0YWdzIGludG8gb2JqZWN0IElEcyIKIG1zZ3N0ciAiVGFncyBpbiBPYmpla3QtSWRlbnRpZmlrYXRpb25lbiBkZXJlZmVyZW56aWVyZW4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzIKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzMKIG1zZ2lkICJvbmx5IHNob3cgU0hBMSBoYXNoIHVzaW5nIDxuPiBkaWdpdHMiCiBtc2dzdHIgIm51ciBTSEExIEhhc2ggbWl0IDxuPiBaaWZmZXJuIGFuemVpZ2VuIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTc2CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc3CiBtc2dpZCAiZG8gbm90IHByaW50IHJlc3VsdHMgdG8gc3Rkb3V0ICh1c2VmdWwgd2l0aCAtLXZlcmlmeSkiCiBtc2dzdHIgIiIKICJrZWluZSBBdXNnYWJlIGRlciBFcmdlYm5pc3NlIGluIGRpZSBTdGFuZGFyZC1BdXNnYWJlIChuw7x0emxpY2ggbWl0IC0tdmVyaWZ5KSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OQogbXNnaWQgInNob3cgcmVmcyBmcm9tIHN0ZGluIHRoYXQgYXJlbid0IGluIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgIiIKICJSZWZlcmVuemVuIHZvbiBkZXIgU3RhbmRhcmQtRWluZ2FiZSBhbnplaWdlbiwgZGllIHNpY2ggbmljaHQgaW0gbG9rYWxlbiAiCiAiUmVwb3NpdG9yeSBiZWZpbmRlbiIKIAorIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyMQorbXNnaWQgImdpdCBzcGFyc2UtY2hlY2tvdXQgKGluaXR8bGlzdHxzZXR8YWRkfGRpc2FibGUpIDxvcHRpb25zPiIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCAoaW5pdHxsaXN0fHNldHxhZGR8ZGlzYWJsZSkgPE9wdGlvbmVuPiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo2NAorbXNnaWQgInRoaXMgd29ya3RyZWUgaXMgbm90IHNwYXJzZSAoc3BhcnNlLWNoZWNrb3V0IGZpbGUgbWF5IG5vdCBleGlzdCkiCittc2dzdHIgIiIKKyJEaWVzZXMgQXJiZWl0c3ZlcnplaWNobmlzIGlzdCBuaWNodCBwYXJ0aWVsbCAoRGF0ZWkgZsO8ciBwYXJ0aWVsbGVyIENoZWNrb3V0ICIKKyJleGlzdGllcnQgZXZlbnR1ZWxsIG5pY2h0KS4iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjI1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgZm9yIHNwYXJzZS1jaGVja291dCBmaWxlIgorbXNnc3RyICJGZWhsZXIgYmVpbSBFcnN0ZWxsZW4gZWluZXMgVmVyemVpY2huaXNzZXMgZsO8ciBEYXRlaSBlaW5lcyBwYXJ0aWVsbGVuICIKKyJDaGVja291dHMiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHNldCBleHRlbnNpb25zLndvcmt0cmVlQ29uZmlnIHNldHRpbmciCittc2dzdHIgIkVpbnN0ZWxsdW5nIGbDvHIgZXh0ZW5zaW9ucy53b3JrdHJlZUNvbmZpZyBrb25udGUgbmljaHQgZ2VzZXR6dCB3ZXJkZW4iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjgzCittc2dpZCAiZ2l0IHNwYXJzZS1jaGVja291dCBpbml0IFstLWNvbmVdIgorbXNnc3RyICJnaXQgc3BhcnNlLWNoZWNrb3V0IGluaXQgWy0tY29uZV0iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MzAyCittc2dpZCAiaW5pdGlhbGl6ZSB0aGUgc3BhcnNlLWNoZWNrb3V0IGluIGNvbmUgbW9kZSIKK21zZ3N0ciAiSW5pdGlhbGlzaWVyZSBkZW4gcGFydGllbGxlbiBDaGVja291dCBpbSBDb25lLU1vZHVzIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjMwOAorbXNnaWQgImluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJQYXJ0aWVsbGVuIENoZWNrb3V0IGluaXRpYWxpc2llcmVuIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIgorbXNnc3RyICJGZWhsZXIgYmVpbSDDlmZmbmVuIHZvbiAnJXMnIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjM5OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgbm9ybWFsaXplIHBhdGggJXMiCittc2dzdHIgImtvbm50ZSBQZmFkICclcycgbmljaHQgbm9ybWFsaXNpZXJlbiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo0MTAKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IChzZXR8YWRkKSAoLS1zdGRpbiB8IDxwYXR0ZXJucz4pIgorbXNnc3RyICJnaXQgc3BhcnNlLWNoZWNrb3V0IChzZXR8YWRkKSAoLS1zdGRpbiB8IDxNdXN0ZXI+KSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVucXVvdGUgQy1zdHlsZSBzdHJpbmcgJyVzJyIKK21zZ3N0ciAia29ubnRlIEFuZsO8aHJ1bmdzemVpY2hlbiB2b24gQy1TdHlsZSBaZWljaGVua2V0dGUgJyVzJyBuaWNodCBlbnRmZXJuZW4iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDg5IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTEzCittc2dpZCAidW5hYmxlIHRvIGxvYWQgZXhpc3Rpbmcgc3BhcnNlLWNoZWNrb3V0IHBhdHRlcm5zIgorbXNnc3RyICJrb25udGUgZGllIGV4aXN0aWVyZW5kZW4gTXVzdGVyIGRlcyBwYXJ0aWVsbGVuIENoZWNrb3V0cyBuaWNodCBsYWRlbiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1NTgKK21zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gc3RhbmRhcmQgaW4iCittc2dzdHIgIk11c3RlciB2b24gZGVyIFN0YW5kYXJkLUVpbmdhYmUgbGVzZW4iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTY0Cittc2dpZCAic2V0IHNwYXJzZS1jaGVja291dCBwYXR0ZXJucyIKK21zZ3N0ciAic2V0emUgTXVzdGVyIGbDvHIgcGFydGllbGxlbiBDaGVja291dCIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1ODEKK21zZ2lkICJkaXNhYmxlIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAiUGFydGllbGxlbiBDaGVja291dCBkZWFrdGl2aWVyZW4iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTkzCittc2dpZCAiZXJyb3Igd2hpbGUgcmVmcmVzaGluZyB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAiRmVobGVyIHfDpGhyZW5kIGRlciBBa3R1YWxpc2llcnVuZyBkZXMgQXJiZWl0c3ZlcnplaWNobmlzc2VzLiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjIyIGJ1aWx0aW4vc3Rhc2guYzozOAorbXNnaWQgImdpdCBzdGFzaCBsaXN0IFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgc3Rhc2ggbGlzdCBbPE9wdGlvbmVuPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMyBidWlsdGluL3N0YXNoLmM6NDMKK21zZ2lkICJnaXQgc3Rhc2ggc2hvdyBbPG9wdGlvbnM+XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBzaG93IFs8T3B0aW9uZW4+XSBbPFN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNCBidWlsdGluL3N0YXNoLmM6NDgKK21zZ2lkICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxTdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjUKK21zZ2lkICJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxTdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjYgYnVpbHRpbi9zdGFzaC5jOjYzCittc2dpZCAiZ2l0IHN0YXNoIGJyYW5jaCA8YnJhbmNobmFtZT4gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggYnJhbmNoIDxCcmFuY2g+IFs8U3Rhc2g+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI3IGJ1aWx0aW4vc3Rhc2guYzo2OAorbXNnaWQgImdpdCBzdGFzaCBjbGVhciIKK21zZ3N0ciAiZ2l0IHN0YXNoIGNsZWFyIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjgKK21zZ2lkICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl1cbiIKKyIgICAgICAgICAgWy0tcGF0aHNwZWMtZnJvbS1maWxlPTxmaWxlPiBbLS1wYXRoc3BlYy1maWxlLW51bF1dXG4iCisiICAgICAgICAgIFstLV0gWzxwYXRoc3BlYz4uLi5dXSIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWy1tfC0tbWVzc2FnZSA8TmFjaHJpY2h0Pl1cbiIKKyIgICAgICAgICAgWy0tcGF0aHNwZWMtZnJvbS1maWxlPTxEYXRlaT4gWy0tcGF0aHNwZWMtZmlsZS1udWxdXVxuIgorIiAgICAgICAgICBbLS1dIFs8UGZhZHNwZXppZmlrYXRpb24+Li4uXV0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzozMiBidWlsdGluL3N0YXNoLmM6ODUKK21zZ2lkICIiCisiZ2l0IHN0YXNoIHNhdmUgWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8bWVzc2FnZT5dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIHNhdmUgWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8TmFjaHJpY2h0Pl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1MworbXNnaWQgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPFN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1OAorbXNnaWQgImdpdCBzdGFzaCBhcHBseSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGFwcGx5IFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxTdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NzMKK21zZ2lkICJnaXQgc3Rhc2ggc3RvcmUgWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dIFstcXwtLXF1aWV0XSA8Y29tbWl0PiIKK21zZ3N0ciAiZ2l0IHN0YXNoIHN0b3JlIFstbXwtLW1lc3NhZ2UgPE5hY2hyaWNodD5dIFstcXwtLXF1aWV0XSA8Q29tbWl0PiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjc4Cittc2dpZCAiIgorImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dXG4iCisiICAgICAgICAgIFstLV0gWzxwYXRoc3BlYz4uLi5dXSIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWy1tfC0tbWVzc2FnZSA8TmFjaHJpY2h0Pl1cbiIKKyIgICAgICAgICAgWy0tXSBbPFBmYWRzcGV6aWZpa2F0aW9uPi4uLl1dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgc3Rhc2gtbGlrZSBjb21taXQiCittc2dzdHIgIiclcycgaXN0IGtlaW4gXCJzdGFzaFwiLWFydGlnZXIgQ29tbWl0IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIlRvbyBtYW55IHJldmlzaW9ucyBzcGVjaWZpZWQ6JXMiCittc2dzdHIgIlp1IHZpZWxlIENvbW1pdHMgYW5nZWdlYmVuOiVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTYyIGdpdC1sZWdhY3ktc3Rhc2guc2g6NTQ5Cittc2dpZCAiTm8gc3Rhc2ggZW50cmllcyBmb3VuZC4iCittc2dzdHIgIktlaW5lIFN0YXNoLUVpbnRyw6RnZSBnZWZ1bmRlbi4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgcmVmZXJlbmNlIgorbXNnc3RyICInJXMnIGlzdCBrZWluIGfDvGx0aWdlciBSZWZlcmVuem5hbWUuIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjI1IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzUKK21zZ2lkICJnaXQgc3Rhc2ggY2xlYXIgd2l0aCBwYXJhbWV0ZXJzIGlzIHVuaW1wbGVtZW50ZWQiCittc2dzdHIgImdpdCBzdGFzaCBjbGVhciBtaXQgUGFyYW1ldGVybiBpc3QgbmljaHQgaW1wbGVtZW50aWVydCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQwNAorbXNnaWQgImNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKK21zZ3N0ciAiS2FubiBTdGFzaCBuaWNodCBhbndlbmRlbiwgc29sYW5nZSBlaW4gTWVyZ2UgaW0gR2FuZ2UgaXN0IgorCisjOiBidWlsdGluL3N0YXNoLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSBkaWZmICVzXiEuIgorbXNnc3RyICJLb25udGUga2VpbmVuIERpZmYgZXJ6ZXVnZW4gJXNeIS4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MjIKK21zZ2lkICJjb25mbGljdHMgaW4gaW5kZXguVHJ5IHdpdGhvdXQgLS1pbmRleC4iCittc2dzdHIgIktvbmZsaWt0ZSBpbSBJbmRleC4gVmVyc3VjaGVuIFNpZSBlcyBvaG5lIC0taW5kZXguIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDI4Cittc2dpZCAiY291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKK21zZ3N0ciAiS29ubnRlIEluZGV4LVZlcnplaWNobmlzIG5pY2h0IHNwZWljaGVybiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQzNworbXNnaWQgImNvdWxkIG5vdCByZXN0b3JlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHN0YXNoIgorbXNnc3RyICJLb25udGUgdW52ZXJzaW9uaWVydGUgRGF0ZWllbiB2b20gU3Rhc2ggbmljaHQgd2llZGVyaGVyc3RlbGxlbi4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWVyZ2luZyAlcyB3aXRoICVzIgorbXNnc3RyICJGw7xocmUgJXMgbWl0ICVzIHp1c2FtbWVuIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDYxIGdpdC1sZWdhY3ktc3Rhc2guc2g6NjgxCittc2dpZCAiSW5kZXggd2FzIG5vdCB1bnN0YXNoZWQuIgorbXNnc3RyICJJbmRleCB3dXJkZSBuaWNodCBhdXMgZGVtIFN0YXNoIHp1csO8Y2tnZWxhZGVuLiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjUyMiBidWlsdGluL3N0YXNoLmM6NjIxCittc2dpZCAiYXR0ZW1wdCB0byByZWNyZWF0ZSB0aGUgaW5kZXgiCittc2dzdHIgIlZlcnN1Y2hlIEluZGV4IHdpZWRlcmhlcnp1c3RlbGxlbi4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRHJvcHBlZCAlcyAoJXMpIgorbXNnc3RyICIlcyAoJXMpIGdlbMO2c2NodCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCittc2dzdHIgIiVzOiBLb25udGUgU3Rhc2gtRWludHJhZyBuaWNodCBsw7ZzY2hlbiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU4MworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHN0YXNoIHJlZmVyZW5jZSIKK21zZ3N0ciAiJyVzJyBpc3Qga2VpbmUgU3Rhc2gtUmVmZXJlbnoiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2MzMgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2OTUKK21zZ2lkICJUaGUgc3Rhc2ggZW50cnkgaXMga2VwdCBpbiBjYXNlIHlvdSBuZWVkIGl0IGFnYWluLiIKK21zZ3N0ciAiIgorIkRlciBTdGFzaC1FaW50cmFnIHdpcmQgZsO8ciBkZW4gRmFsbCBiZWhhbHRlbiwgZGFzcyBTaWUgZGllc2VuIG5vY2htYWwgIgorImJlbsO2dGlnZW4uIgorCisjOiBidWlsdGluL3N0YXNoLmM6NjU2IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzEzCittc2dpZCAiTm8gYnJhbmNoIG5hbWUgc3BlY2lmaWVkIgorbXNnc3RyICJLZWluIEJyYW5jaG5hbWUgc3BlemlmaXppZXJ0IgorCisjOiBidWlsdGluL3N0YXNoLmM6Nzk2IGJ1aWx0aW4vc3Rhc2guYzo4MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHVwZGF0ZSAlcyB3aXRoICVzIgorbXNnc3RyICJLYW5uIG5pY2h0ICVzIG1pdCAlcyBha3R1YWxpc2llcmVuLiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjgxNCBidWlsdGluL3N0YXNoLmM6MTQ3OCBidWlsdGluL3N0YXNoLmM6MTU0MworbXNnaWQgInN0YXNoIG1lc3NhZ2UiCittc2dzdHIgIlN0YXNoLUJlc2NocmVpYnVuZyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjgyNAorbXNnaWQgIlwiZ2l0IHN0YXNoIHN0b3JlXCIgcmVxdWlyZXMgb25lIDxjb21taXQ+IGFyZ3VtZW50IgorbXNnc3RyICJcImdpdCBzdGFzaCBzdG9yZVwiIGVyd2FydGV0IGVpbiBBcmd1bWVudCA8Q29tbWl0PiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEwNDkgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMTgKK21zZ2lkICJObyBjaGFuZ2VzIHNlbGVjdGVkIgorbXNnc3RyICJLZWluZSDDhG5kZXJ1bmdlbiBhdXNnZXfDpGhsdCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExNDkgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxNTAKK21zZ2lkICJZb3UgZG8gbm90IGhhdmUgdGhlIGluaXRpYWwgY29tbWl0IHlldCIKK21zZ3N0ciAiU2llIGhhYmVuIGJpc2hlciBub2NoIGtlaW5lbiBpbml0aWFsZW4gQ29tbWl0IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE3NiBnaXQtbGVnYWN5LXN0YXNoLnNoOjE2NQorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IGluZGV4IHN0YXRlIgorbXNnc3RyICJLYW5uIGRlbiBha3R1ZWxsZW4gWnVzdGFuZCBkZXMgSW5kZXggbmljaHQgc3BlaWNoZXJuIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE4NSBnaXQtbGVnYWN5LXN0YXNoLnNoOjE4MAorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSB1bnRyYWNrZWQgZmlsZXMiCittc2dzdHIgIkthbm4gZGllIHVudmVyc2lvbmllcnRlbiBEYXRlaWVuIG5pY2h0IHNwZWljaGVybiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExOTYgYnVpbHRpbi9zdGFzaC5jOjEyMDUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMDEKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjE0Cittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgd29ya3RyZWUgc3RhdGUiCittc2dzdHIgIkthbm4gZGVuIGFrdHVlbGxlbiBadXN0YW5kIGRlcyBBcmJlaXRzdmVyemVpY2huaXNzZXMgbmljaHQgc3BlaWNoZXJuIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTIzMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjIzNAorbXNnaWQgIkNhbm5vdCByZWNvcmQgd29ya2luZyB0cmVlIHN0YXRlIgorbXNnc3RyICJLYW5uIFp1c3RhbmQgZGVzIEFyYmVpdHN2ZXJ6ZWljaG5pc3NlcyBuaWNodCBhdWZ6ZWljaG5lbiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyODIgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMzgKK21zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgorbXNnc3RyICIiCisiS2FubiBuaWNodCBnbGVpY2h6ZWl0aWcgLS1wYXRjaCB1bmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvZGVyIC0tYWxsIHZlcndlbmRlbiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyOTgKK21zZ2lkICJEaWQgeW91IGZvcmdldCB0byAnZ2l0IGFkZCc/IgorbXNnc3RyICJIYWJlbiBTaWUgdmllbGxlaWNodCAnZ2l0IGFkZCcgdmVyZ2Vzc2VuPyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMTMgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNDYKK21zZ2lkICJObyBsb2NhbCBjaGFuZ2VzIHRvIHNhdmUiCittc2dzdHIgIktlaW5lIGxva2FsZW4gw4RuZGVydW5nZW4genVtIFNwZWljaGVybiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMjAgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTEKK21zZ2lkICJDYW5ub3QgaW5pdGlhbGl6ZSBzdGFzaCIKK21zZ3N0ciAiS2FubiBcInN0YXNoXCIgbmljaHQgaW5pdGlhbGlzaWVyZW4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzM1IGdpdC1sZWdhY3ktc3Rhc2guc2g6MzU1Cittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgc3RhdHVzIgorbXNnc3RyICJLYW5uIGRlbiBha3R1ZWxsZW4gU3RhdHVzIG5pY2h0IHNwZWljaGVybiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2F2ZWQgd29ya2luZyBkaXJlY3RvcnkgYW5kIGluZGV4IHN0YXRlICVzIgorbXNnc3RyICJBcmJlaXRzdmVyemVpY2huaXMgdW5kIEluZGV4LVN0YXR1cyAlcyBnZXNwZWljaGVydC4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDMwIGdpdC1sZWdhY3ktc3Rhc2guc2g6Mzg1Cittc2dpZCAiQ2Fubm90IHJlbW92ZSB3b3JrdHJlZSBjaGFuZ2VzIgorbXNnc3RyICJLYW5uIMOEbmRlcnVuZ2VuIGltIEFyYmVpdHN2ZXJ6ZWljaG5pcyBuaWNodCBsw7ZzY2hlbiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NjkgYnVpbHRpbi9zdGFzaC5jOjE1MzQKK21zZ2lkICJrZWVwIGluZGV4IgorbXNnc3RyICJiZWhhbHRlIEluZGV4IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3MSBidWlsdGluL3N0YXNoLmM6MTUzNgorbXNnaWQgInN0YXNoIGluIHBhdGNoIG1vZGUiCittc2dzdHIgIlN0YXNoIGluIFBhdGNoLU1vZHVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3MiBidWlsdGluL3N0YXNoLmM6MTUzNworbXNnaWQgInF1aWV0IG1vZGUiCittc2dzdHIgIndlbmlnZXIgQXVzZ2FiZW4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDc0IGJ1aWx0aW4vc3Rhc2guYzoxNTM5Cittc2dpZCAiaW5jbHVkZSB1bnRyYWNrZWQgZmlsZXMgaW4gc3Rhc2giCittc2dzdHIgInVudmVyc2lvbmllcnRlIERhdGVpZW4gaW4gU3Rhc2ggZWluYmV6aWVoZW4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDc2IGJ1aWx0aW4vc3Rhc2guYzoxNTQxCittc2dpZCAiaW5jbHVkZSBpZ25vcmUgZmlsZXMiCittc2dzdHIgImlnbm9yaWVydGUgRGF0ZWllbiBlaW5iZXppZWhlbiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE2MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGV4ZWMgJXMiCittc2dzdHIgIktvbm50ZSAnZXhlYyAlcycgbmljaHQgYXVzZsO8aHJlbi4iCisKICM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjE4CiBtc2dpZCAiZ2l0IHN0cmlwc3BhY2UgWy1zIHwgLS1zdHJpcC1jb21tZW50c10iCiBtc2dzdHIgImdpdCBzdHJpcHNwYWNlIFstcyB8IC0tc3RyaXAtY29tbWVudHNdIgpAQCAtMTczOTksNTAgKzIxMTA4LDUwIEBACiBtc2dpZCAiZ2l0IHN0cmlwc3BhY2UgWy1jIHwgLS1jb21tZW50LWxpbmVzXSIKIG1zZ3N0ciAiZ2l0IHN0cmlwc3BhY2UgWy1jIHwgLS1jb21tZW50LWxpbmVzXSIKIAotIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MzYKKyM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM3CiBtc2dpZCAic2tpcCBhbmQgcmVtb3ZlIGFsbCBsaW5lcyBzdGFydGluZyB3aXRoIGNvbW1lbnQgY2hhcmFjdGVyIgogbXNnc3RyICIiCiAiYWxsZSBaZWlsZW4sIGRpZSBtaXQgZGVtIEtvbW1lbnRhcnplaWNoZW4gYmVnaW5uZW4sIMO8YmVyc3ByaW5nZW4gdW5kICIKICJlbnRmZXJuZW4iCiAKLSM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM5CisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzo0MAogbXNnaWQgInByZXBlbmQgY29tbWVudCBjaGFyYWN0ZXIgYW5kIHNwYWNlIHRvIGVhY2ggbGluZSIKIG1zZ3N0ciAiS29tbWVudGFyemVpY2hlbiBtaXQgTGVlcnplaWNoZW4gYW4gamVkZSBaZWlsZSB2b3JhbnN0ZWxsZW4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkzOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkV4cGVjdGluZyBhIGZ1bGwgcmVmIG5hbWUsIGdvdCAlcyIKIG1zZ3N0ciAiVm9sbHN0w6RuZGlnZXIgUmVmZXJlbnpuYW1lIGVyd2FydGV0LCAlcyBlcmhhbHRlbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjQKIG1zZ2lkICJzdWJtb2R1bGUtLWhlbHBlciBwcmludC1kZWZhdWx0LXJlbW90ZSB0YWtlcyBubyBhcmd1bWVudHMiCiBtc2dzdHIgIidzdWJtb2R1bGUtLWhlbHBlciBwcmludC1kZWZhdWx0LXJlbW90ZScgZXJ3YXJ0ZXQga2VpbmUgQXJndW1lbnRlLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdHJpcCBvbmUgY29tcG9uZW50IG9mZiB1cmwgJyVzJyIKIG1zZ3N0ciAiS2FubiBlaW5lIEtvbXBvbmVudGUgdm9uIFVSTCAnJXMnIG5pY2h0IGV4dHJhaGllcmVuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzYzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDEwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk1CiBtc2dpZCAiYWx0ZXJuYXRpdmUgYW5jaG9yIGZvciByZWxhdGl2ZSBwYXRocyIKIG1zZ3N0ciAiQWx0ZXJuYXRpdmVyIEFua2VyIGbDvHIgcmVsYXRpdmUgUGZhZGUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MTIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MTUKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbGlzdCBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGxpc3QgWy0tcHJlZml4PTxQZmFkPl0gWzxQZmFkPi4uLl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NjkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYyNgotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY0OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ3MiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjMwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHVybCBmb3VuZCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyBpbiAuZ2l0bW9kdWxlcyIKIG1zZ3N0ciAiS2VpbmUgVVJMIGbDvHIgU3VibW9kdWwtUGZhZCAnJXMnIGluIC5naXRtb2R1bGVzIGdlZnVuZGVuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTIxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkVudGVyaW5nICclcydcbiIKIG1zZ3N0ciAiQmV0cmV0ZSAnJXMnXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyBmb3IgJXNcbiIKQEAgLTE3NDUxLDcgKzIxMTYwLDcgQEAKICJydW5fY29tbWFuZCBnYWIgbmljaHQtTnVsbCBTdGF0dXMgZsO8ciAnJXMnIHp1csO8Y2suXG4iCiAiLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU0NQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU0OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicnVuX2NvbW1hbmQgcmV0dXJuZWQgbm9uLXplcm8gc3RhdHVzIHdoaWxlIHJlY3Vyc2luZyBpbiB0aGUgbmVzdGVkICIKQEAgLTE3NDYzLDIxICsyMTE3MiwyMSBAQAogIm5pY2h0LU51bGwgU3RhdHVzIHp1csO8Y2suXG4iCiAiLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2NQogbXNnaWQgIlN1cHByZXNzIG91dHB1dCBvZiBlbnRlcmluZyBlYWNoIHN1Ym1vZHVsZSBjb21tYW5kIgogbXNnc3RyICIiCiAiQXVzZ2FiZW4gYmVpbSBCZXRyZXRlbiB1bmQgZGVyIEJlZmVobHNhdXNmw7xocnVuZyBpbiBlaW5lbSBTdWJtb2R1bCAiCiAidW50ZXJkcsO8Y2tlbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA0OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA2MwogbXNnaWQgIlJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKIG1zZ3N0ciAiUmVrdXJzaW9uIGluIHZlcnNjaGFjaHRlbHRlIFN1Ym1vZHVsZSBkdXJjaGbDvGhyZW4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjgKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSA8Y29tbWFuZD4iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIDxCZWZlaGw+IgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU3MgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFstLV0gPGNvbW1hbmQ+IgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbLS1dIDxCZWZlaGw+IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTk1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjb3VsZCBub3QgbG9vayB1cCBjb25maWd1cmF0aW9uICclcycuIEFzc3VtaW5nIHRoaXMgcmVwb3NpdG9yeSBpcyBpdHMgb3duICIKQEAgLTE3NDg2LDEwNCArMjExOTUsMTA0IEBACiAiS29ubnRlIEtvbmZpZ3VyYXRpb24gJyVzJyBuaWNodCBuYWNoc2NobGFnZW4uIE5laG1lIGFuLCBkYXNzIGRpZXNlc1xuIgogIlJlcG9zaXRvcnkgc2VpbiBlaWdlbmVzIHZlcmJpbmRsaWNoZXMgVXBzdHJlYW0tUmVwb3NpdG9yeSBpc3QuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjYzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciB1cmwgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgIiIKICJGZWhsZXIgYmVpbSBFaW50cmFnZW4gZGVyIFVSTCBmw7xyIFN1Ym1vZHVsLVBmYWQgJyVzJyBpbiBkaWUgS29uZmlndXJhdGlvbi4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NjcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlICclcycgKCVzKSByZWdpc3RlcmVkIGZvciBwYXRoICclcydcbiIKIG1zZ3N0ciAiU3VibW9kdWwgJyVzJyAoJXMpIGbDvHIgUGZhZCAnJXMnIGluIGRpZSBLb25maWd1cmF0aW9uIGVpbmdldHJhZ2VuLlxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njc3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGNvbW1hbmQgdXBkYXRlIG1vZGUgc3VnZ2VzdGVkIGZvciBzdWJtb2R1bGUgJyVzJ1xuIgogbXNnc3RyICJXYXJudW5nOiAndXBkYXRlJy1Nb2R1cyBmw7xyIFN1Ym1vZHVsICclcycgdm9yZ2VzY2hsYWdlblxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njg0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciB1cGRhdGUgbW9kZSBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAiIgogIkZlaGxlciBiZWkgw4RuZGVydW5nIGRlcyBBa3R1YWxpc2llcnVuZ3Ntb2R1cyBmw7xyIFN1Ym1vZHVsLVBmYWQgJyVzJyBpbiBkZXJcbiIKICJLb25maWd1cmF0aW9uLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcwNgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcxMAogbXNnaWQgIlN1cHByZXNzIG91dHB1dCBmb3IgaW5pdGlhbGl6aW5nIGEgc3VibW9kdWxlIgogbXNnc3RyICJBdXNnYWJlbiBiZWkgSW5pdGlhbGlzaWVydW5nIGVpbmVzIFN1Ym1vZHVscyB1bnRlcmRyw7xja2VuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzExCi1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxwYXRoPl0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8UGZhZD5dIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcxNQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8b3B0aW9ucz5dIFs8cGF0aD5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPE9wdGlvbmVuPl0gWzxQZmFkPl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3ODMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjc4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Ym1vZHVsZSBtYXBwaW5nIGZvdW5kIGluIC5naXRtb2R1bGVzIGZvciBwYXRoICclcyciCiBtc2dzdHIgIktlaW5lIFN1Ym1vZHVsLVp1b3JkbnVuZyBpbiAuZ2l0bW9kdWxlcyBmw7xyIFBmYWQgJyVzJyBnZWZ1bmRlbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjgyMgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjgzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIHJlZiBpbnNpZGUgdGhlIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJLb25udGUgSEVBRC1SZWZlcmVueiBuaWNodCBpbm5lcmhhbGIgZGVzIFN1Ym1vZHVsLVBmYWRzICclcycgYXVmbMO2c2VuLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg0OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAxOAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg2NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJGZWhsZXIgYmVpIFJla3Vyc2lvbiBpbiBTdWJtb2R1bCAnJXMnLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg3MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg4OCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE5OQogbXNnaWQgIlN1cHByZXNzIHN1Ym1vZHVsZSBzdGF0dXMgb3V0cHV0IgogbXNnc3RyICJBdXNnYWJlIMO8YmVyIFN1Ym1vZHVsLVN0YXR1cyB1bnRlcmRyw7xja2VuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODc0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODg5CiBtc2dpZCAiIgogIlVzZSBjb21taXQgc3RvcmVkIGluIHRoZSBpbmRleCBpbnN0ZWFkIG9mIHRoZSBvbmUgc3RvcmVkIGluIHRoZSBzdWJtb2R1bGUgIgogIkhFQUQiCiBtc2dzdHIgIiIKICJCZW51dHplIGRlbiBDb21taXQsIGRlciBpbSBJbmRleCBnZXNwZWljaGVydCBpc3QsIHN0YXR0IGRlbiBpbSBTdWJtb2R1bCBIRUFEIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODc1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODkwCiBtc2dpZCAicmVjdXJzZSBpbnRvIG5lc3RlZCBzdWJtb2R1bGVzIgogbXNnc3RyICJSZWt1cnNpb24gaW4gdmVyc2NoYWNodGVsdGUgU3VibW9kdWxlIGR1cmNoZsO8aHJlbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg4MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg5NQogbXNnaWQgImdpdCBzdWJtb2R1bGUgc3RhdHVzIFstLXF1aWV0XSBbLS1jYWNoZWRdIFstLXJlY3Vyc2l2ZV0gWzxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUgc3RhdHVzIFstLXF1aWV0XSBbLS1jYWNoZWRdIFstLXJlY3Vyc2l2ZV0gWzxQZmFkPi4uLl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5MDQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5MTkKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbmFtZSA8cGF0aD4iCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBuYW1lIDxQZmFkPiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk2OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJTeW5jaHJvbml6aW5nIHN1Ym1vZHVsZSB1cmwgZm9yICclcydcbiIKIG1zZ3N0ciAiU3luY2hyb25pc2llcmUgU3VibW9kdWwtVVJMIGbDvHIgJyVzJ1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTc0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWdpc3RlciB1cmwgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgIkZlaGxlciBiZWltIFJlZ2lzdHJpZXJlbiBkZXIgVVJMIGbDvHIgU3VibW9kdWwtUGZhZCAnJXMnLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk4OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGdldCB0aGUgZGVmYXVsdCByZW1vdGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJGZWhsZXIgYmVpbSBMZXNlbiBkZXMgU3RhbmRhcmQtUmVtb3RlLVJlcG9zaXRvcmllcyBmw7xyIFN1Ym1vZHVsICclcycuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTk5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gdXBkYXRlIHJlbW90ZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgIkZlaGxlciBiZWltIEFrdHVhbGlzaWVyZW4gZGVzIFJlbW90ZS1SZXBvc2l0b3JpZXMgZsO8ciBTdWJtb2R1bCAnJXMnLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNDYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDYxCiBtc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IG9mIHN5bmNocm9uaXppbmcgc3VibW9kdWxlIHVybCIKIG1zZ3N0ciAiQXVzZ2FiZW4gYmVpIGRlciBTeW5jaHJvbmlzaWVydW5nIGRlciBTdWJtb2R1bC1VUkxzIHVudGVyZHLDvGNrZW4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDUzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA2OAogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBzeW5jIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFs8cGF0aD5dIgogbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgc3luYyBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbPFBmYWQ+XSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMDcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgd29yayB0cmVlICclcycgY29udGFpbnMgYSAuZ2l0IGRpcmVjdG9yeSAodXNlICdybSAtcmYnIGlmIHlvdSAiCkBAIC0xNzU5Myw3ICsyMTMwMiw3IEBACiAiKGJlbnV0emVuIFNpZSAncm0gLXJmJywgd2VubiBTaWUgZGllc2VzIHdpcmtsaWNoIG1pdHNhbXQgc2VpbmVyIEhpc3RvcmllXG4iCiAibMO2c2NoZW4gbcO2Y2h0ZW4pIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTExOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJyBjb250YWlucyBsb2NhbCBtb2RpZmljYXRpb25zOyB1c2UgJy1mJyB0byBkaXNjYXJkICIKQEAgLTE3NjAyLDE4NCArMjEzMTEsMjE1IEBACiAiQXJiZWl0c3ZlcnplaWNobmlzIHZvbiBTdWJtb2R1bCBpbiAnJXMnIGVudGjDpGx0IGxva2FsZSDDhG5kZXJ1bmdlbjtcbiIKICJ2ZXJ3ZW5kZW4gU2llICctZicsIHVtIGRpZXNlIHp1IHZlcndlcmZlbi4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTI3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDbGVhcmVkIGRpcmVjdG9yeSAnJXMnXG4iCiBtc2dzdHIgIlZlcnplaWNobmlzICclcycgYmVyZWluaWd0LlxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBzdWJtb2R1bGUgd29yayB0cmVlICclcydcbiIKIG1zZ3N0ciAiS29ubnRlIEFyYmVpdHN2ZXJ6ZWljaG5pcyBkZXMgU3VibW9kdWxzIGluICclcycgbmljaHQgbMO2c2NoZW4uXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTM4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGVtcHR5IHN1Ym1vZHVsZSBkaXJlY3RvcnkgJXMiCiBtc2dzdHIgIktvbm50ZSBrZWluIGxlZXJlcyBWZXJ6ZWljaG5pcyBmw7xyIFN1Ym1vZHVsIGluICclcycgZXJzdGVsbGVuLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNTQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSAnJXMnICglcykgdW5yZWdpc3RlcmVkIGZvciBwYXRoICclcydcbiIKIG1zZ3N0ciAiU3VibW9kdWwgJyVzJyAoJXMpIGbDvHIgUGZhZCAnJXMnIGF1c2dldHJhZ2VuLlxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDAKIG1zZ2lkICJSZW1vdmUgc3VibW9kdWxlIHdvcmtpbmcgdHJlZXMgZXZlbiBpZiB0aGV5IGNvbnRhaW4gbG9jYWwgY2hhbmdlcyIKIG1zZ3N0ciAiIgogIkFyYmVpdHN2ZXJ6ZWljaG5pc3NlIHZvbiBTdWJtb2R1bGVuIGzDtnNjaGVuLCBhdWNoIHdlbm4gbG9rYWxlIMOEbmRlcnVuZ2VuICIKICJ2b3JsaWVnZW4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTg0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIwMQogbXNnaWQgIlVucmVnaXN0ZXIgYWxsIHN1Ym1vZHVsZXMiCiBtc2dzdHIgImFsbGUgU3VibW9kdWxlIGF1c3RyYWdlbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjA2CiBtc2dpZCAiIgogImdpdCBzdWJtb2R1bGUgZGVpbml0IFstLXF1aWV0XSBbLWYgfCAtLWZvcmNlXSBbLS1hbGwgfCBbLS1dIFs8cGF0aD4uLi5dXSIKIG1zZ3N0ciAiIgogImdpdCBzdWJtb2R1bGUgZGVpbml0IFstLXF1aWV0XSBbLWYgfCAtLWZvcmNlXSBbLS1hbGwgfCBbLS1dIFs8UGZhZD4uLi5dXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjIwCiBtc2dpZCAiVXNlICctLWFsbCcgaWYgeW91IHJlYWxseSB3YW50IHRvIGRlaW5pdGlhbGl6ZSBhbGwgc3VibW9kdWxlcyIKIG1zZ3N0ciAiIgogIlZlcndlbmRlbiBTaWUgJy0tYWxsJywgd2VubiBTaWUgd2lya2xpY2ggYWxsZSBTdWJtb2R1bGUgZGVpbml0aWFsaXNpZXJlblxuIgogIm3DtmNodGVuLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyOTcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzMDAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjg5Cittc2dpZCAiIgorIkFuIGFsdGVybmF0ZSBjb21wdXRlZCBmcm9tIGEgc3VwZXJwcm9qZWN0J3MgYWx0ZXJuYXRlIGlzIGludmFsaWQuXG4iCisiVG8gYWxsb3cgR2l0IHRvIGNsb25lIHdpdGhvdXQgYW4gYWx0ZXJuYXRlIGluIHN1Y2ggYSBjYXNlLCBzZXRcbiIKKyJzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSB0byAnaW5mbycgb3IsIGVxdWl2YWxlbnRseSwgY2xvbmUgd2l0aFxuIgorIictLXJlZmVyZW5jZS1pZi1hYmxlJyBpbnN0ZWFkIG9mICctLXJlZmVyZW5jZScuIgorbXNnc3RyICIiCisiRWluZSBBbHRlcm5hdGl2ZSwgZGllIHZvbiBlaW5lciDDvGJlcmdlb3JkbmV0ZW4gUHJvamVrdC1BbHRlcm5hdGl2ZVxuIgorImJlcmVjaG5ldCB3dXJkZSwgaXN0IHVuZ8O8bHRpZy5cbiIKKyJVbSBHaXQgZGFzIEtsb25lbiBvaG5lIEFsdGVybmF0aXZlIGluIHNvbGNoIGVpbmVtIEZhbGwgenUgZXJsYXViZW4sIHNldHplXG4iCisic3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgYXVmICdpbmZvJyBvZGVyIGtsb25lIG1pdCBkZXIgT3B0aW9uXG4iCisiJy0tcmVmZXJlbmNlLWlmLWFibGUnIHN0YXR0ICctLXJlZmVyZW5jZScuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMyOCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgJyVzJyBjYW5ub3QgYWRkIGFsdGVybmF0ZTogJXMiCiBtc2dzdHIgIlN1Ym1vZHVsICclcycga2FubiBBbHRlcm5hdGl2ZSBuaWNodCBoaW56dWbDvGdlbjogJXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzM2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJWYWx1ZSAnJXMnIGZvciBzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSBpcyBub3QgcmVjb2duaXplZCIKIG1zZ3N0ciAiV2VydCAnJXMnIGbDvHIgc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgd2lyZCBuaWNodCBlcmthbm50IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM0MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiVmFsdWUgJyVzJyBmb3Igc3VibW9kdWxlLmFsdGVybmF0ZUxvY2F0aW9uIGlzIG5vdCByZWNvZ25pemVkIgogbXNnc3RyICJXZXJ0ICclcycgZsO8ciBzdWJtb2R1bGUuYWx0ZXJuYXRlTG9jYXRpb24gd2lyZCBuaWNodCBlcmthbm50LiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk4CiBtc2dpZCAid2hlcmUgdGhlIG5ldyBzdWJtb2R1bGUgd2lsbCBiZSBjbG9uZWQgdG8iCiBtc2dzdHIgIlBmYWQgZsO8ciBuZXVlcyBTdWJtb2R1bCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAxCiBtc2dpZCAibmFtZSBvZiB0aGUgbmV3IHN1Ym1vZHVsZSIKIG1zZ3N0ciAiTmFtZSBkZXMgbmV1ZW4gU3VibW9kdWxzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDQKIG1zZ2lkICJ1cmwgd2hlcmUgdG8gY2xvbmUgdGhlIHN1Ym1vZHVsZSBmcm9tIgogbXNnc3RyICJVUkwgdm9uIGRlciBkYXMgU3VibW9kdWwgZ2VrbG9udCB3aXJkIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTIKIG1zZ2lkICJkZXB0aCBmb3Igc2hhbGxvdyBjbG9uZXMiCiBtc2dzdHIgIlRpZWZlIGRlcyBLbG9ucyBtaXQgdW52b2xsc3TDpG5kaWdlciBIaXN0b3JpZSAoc2hhbGxvdykiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzgzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxNSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyNAogbXNnaWQgImZvcmNlIGNsb25pbmcgcHJvZ3Jlc3MiCiBtc2dzdHIgIkZvcnRzY2hyaXR0c2FuemVpZ2UgYmVpbSBLbG9uZW4gZXJ6d2luZ2VuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjYKK21zZ2lkICJkaXNhbGxvdyBjbG9uaW5nIGludG8gbm9uLWVtcHR5IGRpcmVjdG9yeSIKK21zZ3N0ciAiS2xvbmVuIGluIGVpbiBuaWNodCBsZWVyZXMgVmVyemVpY2huaXMgdmVyYmlldGVuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQyNAogbXNnaWQgIiIKICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY2xvbmUgWy0tcHJlZml4PTxwYXRoPl0gWy0tcXVpZXRdIFstLXJlZmVyZW5jZSAiCi0iPHJlcG9zaXRvcnk+XSBbLS1uYW1lIDxuYW1lPl0gWy0tZGVwdGggPGRlcHRoPl0gLS11cmwgPHVybD4gLS1wYXRoIDxwYXRoPiIKKyI8cmVwb3NpdG9yeT5dIFstLW5hbWUgPG5hbWU+XSBbLS1kZXB0aCA8ZGVwdGg+XSBbLS1zaW5nbGUtYnJhbmNoXSAtLXVybCAiCisiPHVybD4gLS1wYXRoIDxwYXRoPiIKIG1zZ3N0ciAiIgogImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg9PFBmYWQ+XSBbLS1xdWlldF0gWy0tcmVmZXJlbmNlICIKLSI8UmVwb3NpdG9yeT5dIFstLW5hbWUgPE5hbWU+XSBbLS11cmwgPFVSTD5dIFstLW5hbWUgPE5hbWU+XSBbLS1kZXB0aCAiCi0iPFRpZWZlPl0gLS11cmwgPFVSTD4gLS1wYXRoIDxQZmFkPiIKKyI8UmVwb3NpdG9yeT5dIFstLW5hbWUgPE5hbWU+XSBbLS1kZXB0aCA8VGllZmU+XSBbLS1zaW5nbGUtYnJhbmNoXSAtLXVybCAiCisiPFVSTD4gLS1wYXRoIDxQZmFkPiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZnVzaW5nIHRvIGNyZWF0ZS91c2UgJyVzJyBpbiBhbm90aGVyIHN1Ym1vZHVsZSdzIGdpdCBkaXIiCittc2dzdHIgIiIKKyJFcnN0ZWxsdW5nL0JlbnV0enVuZyB2b24gJyVzJyBpbiBlaW5lbSBhbmRlcmVuIFN1Ym1vZHVsLUdpdC1WZXJ6ZWljaG5pc1xuIgorInZlcndlaWdlcnQuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJjbG9uZSBvZiAnJXMnIGludG8gc3VibW9kdWxlIHBhdGggJyVzJyBmYWlsZWQiCi1tc2dzdHIgIktsb25lbiB2b24gJyVzJyBpbiBTdWJtb2R1bC1QZmFkICclcycgZmVobGdlc2NobGFnZW4iCittc2dzdHIgIktsb25lbiB2b24gJyVzJyBpbiBTdWJtb2R1bC1QZmFkICclcycgZmVobGdlc2NobGFnZW4uIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQzMworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlyZWN0b3J5IG5vdCBlbXB0eTogJyVzJyIKK21zZ3N0ciAiVmVyemVpY2huaXMgaXN0IG5pY2h0IGxlZXI6ICclcyciCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBnZXQgc3VibW9kdWxlIGRpcmVjdG9yeSBmb3IgJyVzJyIKIG1zZ3N0ciAiS29ubnRlIFN1Ym1vZHVsLVZlcnplaWNobmlzICclcycgbmljaHQgZmluZGVuLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAiVW5nw7xsdGlnZXIgQWt0dWFsaXNpZXJ1bmdzbW9kdXMgJyVzJyBmw7xyIFN1Ym1vZHVsLVBmYWQgJyVzJy4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDczCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTUxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHVwZGF0ZSBtb2RlICclcycgY29uZmlndXJlZCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKLW1zZ3N0ciAiVW5nw7xsdGlnZXIgQWt0dWFsaXNpZXJ1bmdzbW9kdXMgJyVzJyBmw7xyIFN1Ym1vZHVsLVBmYWQgJyVzJyBrb25maWd1cmllcnQuIgorbXNnc3RyICIiCisiVW5nw7xsdGlnZXIgQWt0dWFsaXNpZXJ1bmdzbW9kdXMgJyVzJyBmw7xyIFN1Ym1vZHVsLVBmYWQgJyVzJyBrb25maWd1cmllcnQuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTU2NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyVzJyBub3QgaW5pdGlhbGl6ZWQiCiBtc2dzdHIgIlN1Ym1vZHVsLVBmYWQgJyVzJyBuaWNodCBpbml0aWFsaXNpZXJ0IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTU3MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MjEKIG1zZ2lkICJNYXliZSB5b3Ugd2FudCB0byB1c2UgJ3VwZGF0ZSAtLWluaXQnPyIKIG1zZ3N0ciAiTWVpbnRlbiBTaWUgdmllbGxlaWNodCAndXBkYXRlIC0taW5pdCc/IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYwMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBpbmcgdW5tZXJnZWQgc3VibW9kdWxlICVzIgogbXNnc3RyICLDnGJlcnNwcmluZ2UgbmljaHQgenVzYW1tZW5nZWbDvGhydGVzIFN1Ym1vZHVsICVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYyOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBpbmcgc3VibW9kdWxlICclcyciCiBtc2dzdHIgIsOcYmVyc3ByaW5nZSBTdWJtb2R1bCAnJXMnIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTc3MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGNsb25lICclcycuIFJldHJ5IHNjaGVkdWxlZCIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gS2xvbmVuIHZvbiAnJXMnLiBXZWl0ZXJlciBWZXJzdWNoIGdlcGxhbnQiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzg0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJyBhIHNlY29uZCB0aW1lLCBhYm9ydGluZyIKIG1zZ3N0ciAiWndlaXRlciBWZXJzdWNoICclcycgenUga2xvbmVuIGZlaGxnZXNjaGxhZ2VuLCBicmVjaGUgYWIuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA4OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNDkKIG1zZ2lkICJwYXRoIGludG8gdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiUGZhZCB6dW0gQXJiZWl0c3ZlcnplaWNobmlzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDYKIG1zZ2lkICJwYXRoIGludG8gdGhlIHdvcmtpbmcgdHJlZSwgYWNyb3NzIG5lc3RlZCBzdWJtb2R1bGUgYm91bmRhcmllcyIKIG1zZ3N0ciAiIgogIlBmYWQgenVtIEFyYmVpdHN2ZXJ6ZWljaG5pcywgw7xiZXIgdmVyc2NoYWNodGVsdGUgU3VibW9kdWwtR3JlbnplbiBoaW53ZWciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxMAogbXNnaWQgInJlYmFzZSwgbWVyZ2UsIGNoZWNrb3V0IG9yIG5vbmUiCiBtc2dzdHIgInJlYmFzZSwgbWVyZ2UsIGNoZWNrb3V0IG9kZXIgbm9uZSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTE2CiBtc2dpZCAiQ3JlYXRlIGEgc2hhbGxvdyBjbG9uZSB0cnVuY2F0ZWQgdG8gdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgcmV2aXNpb25zIgogbXNnc3RyICIiCiAiRXJzdGVsbHVuZyBlaW5lcyBLbG9ucyBtaXQgdW52b2xsc3TDpG5kaWdlciBIaXN0b3JpZSAoc2hhbGxvdyksIGFiZ2VzY2huaXR0ZW4gIgogImJlaVxuIgogImRlciBhbmdlZ2ViZW5lbiBBbnphaGwgdm9uIENvbW1pdHMuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTkKIG1zZ2lkICJwYXJhbGxlbCBqb2JzIgogbXNnc3RyICJQYXJhbGxlbGUgQXVzZsO8aHJ1bmdlbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTIxCiBtc2dpZCAid2hldGhlciB0aGUgaW5pdGlhbCBjbG9uZSBzaG91bGQgZm9sbG93IHRoZSBzaGFsbG93IHJlY29tbWVuZGF0aW9uIgogbXNnc3RyICIiCiAib2IgZGFzIGluaXRpYWxlIEtsb25lbiBkZW4gRW1wZmVobHVuZ2VuIGbDvHIgZWluZSB1bnZvbGxzdMOkbmRpZ2VcbiIKICJIaXN0b3JpZSAoc2hhbGxvdykgZm9sZ2VuIHNvbGwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyMgogbXNnaWQgImRvbid0IHByaW50IGNsb25pbmcgcHJvZ3Jlc3MiCiBtc2dzdHIgImtlaW5lIEZvcnRzY2hyaXR0c2FuemVpZ2UgYmVpbSBLbG9uZW4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODczCi1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZV9jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZV9jbG9uZSBbLS1wcmVmaXg9PFBmYWQ+XSBbPFBmYWQ+Li4uXSIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTMzCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PFBmYWQ+XSBbPFBmYWQ+Li4uXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4ODYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTQ2CiBtc2dpZCAiYmFkIHZhbHVlIGZvciB1cGRhdGUgcGFyYW1ldGVyIgogbXNnc3RyICJGZWhsZXJoYWZ0ZXIgV2VydCBmw7xyIC0tdXBkYXRlIFBhcmFtZXRlciIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MzQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgKCVzKSBicmFuY2ggY29uZmlndXJlZCB0byBpbmhlcml0IGJyYW5jaCBmcm9tIHN1cGVycHJvamVjdCwgYnV0ICIKQEAgLTE3Nzg4LDQyICsyMTUyOCw1MiBAQAogIkJyYW5jaCB2b24gU3VibW9kdWwgKCVzKSBpc3Qga29uZmlndXJpZXJ0LCBkZW4gQnJhbmNoIGRlcyBIYXVwdHByb2pla3Rlc1xuIgogInp1IGVyYmVuLCBhYmVyIGRhcyBIYXVwdHByb2pla3QgYmVmaW5kZXQgc2ljaCBhdWYga2VpbmVtIEJyYW5jaC4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDU3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjExNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0IGEgcmVwb3NpdG9yeSBoYW5kbGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJLb25udGUga2VpbiBSZXBvc2l0b3J5LUhhbmRsZSBmw7xyIFN1Ym1vZHVsICclcycgZXJoYWx0ZW4uIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA5MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTAKIG1zZ2lkICJyZWN1cnNlIGludG8gc3VibW9kdWxlcyIKIG1zZ3N0ciAiUmVrdXJzaW9uIGluIFN1Ym1vZHVsZSBkdXJjaGbDvGhyZW4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDk2Ci1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGVtYmVkLWdpdC1kaXIgWzxwYXRoPi4uLl0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBlbWJlZC1naXQtZGlyIFs8UGZhZD4uLi5dIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTYKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgYWJzb3JiLWdpdC1kaXJzIFs8b3B0aW9ucz5dIFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgYWJzb3JiLWdpdC1kaXJzIFs8T3B0aW9uZW4+XSBbPFBmYWQ+Li4uXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjEyCiBtc2dpZCAiY2hlY2sgaWYgaXQgaXMgc2FmZSB0byB3cml0ZSB0byB0aGUgLmdpdG1vZHVsZXMgZmlsZSIKIG1zZ3N0ciAicHLDvGZlbiwgb2IgZXMgc2ljaGVyIGlzdCwgaW4gZGllIERhdGVpIC5naXRtb2R1bGVzIHp1IHNjaHJlaWJlbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTcKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIG5hbWUgW3ZhbHVlXSIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyBuYW1lIFtXZXJ0XSIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjE1Cittc2dpZCAidW5zZXQgdGhlIGNvbmZpZyBpbiB0aGUgLmdpdG1vZHVsZXMgZmlsZSIKK21zZ3N0ciAiS29uZmlndXJhdGlvbiBpbiBkZXIgLmdpdG1vZHVsZXMtRGF0ZWkgZW50ZmVybmVuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjAKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIDxuYW1lPiBbPHZhbHVlPl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgPG5hbWU+IFs8V2VydD5dIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyMQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS11bnNldCA8bmFtZT4iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS11bnNldCA8TmFtZT4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjIyCiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLWNoZWNrLXdyaXRlYWJsZSIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLWNoZWNrLXdyaXRlYWJsZSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNzUgZ2l0LXN1Ym1vZHVsZS5zaDoxNjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjQxIGdpdC1zdWJtb2R1bGUuc2g6MTc0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJwbGVhc2UgbWFrZSBzdXJlIHRoYXQgdGhlIC5naXRtb2R1bGVzIGZpbGUgaXMgaW4gdGhlIHdvcmtpbmcgdHJlZSIKLW1zZ3N0ciAiQml0dGUgc3RlbGxlbiBTaWUgc2ljaGVyLCBkYXNzIHNpY2ggZGllIERhdGVpIC5naXRtb2R1bGVzIGltIEFyYmVpdHN2ZXJ6ZWljaG5pcyBiZWZpbmRldC4iCittc2dzdHIgIiIKKyJCaXR0ZSBzdGVsbGVuIFNpZSBzaWNoZXIsIGRhc3Mgc2ljaCBkaWUgRGF0ZWkgLmdpdG1vZHVsZXMgaW0gIgorIkFyYmVpdHN2ZXJ6ZWljaG5pcyBiZWZpbmRldC4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjI1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI5MSBnaXQuYzo0MzMgZ2l0LmM6Njg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRvZXNuJ3Qgc3VwcG9ydCAtLXN1cGVyLXByZWZpeCIKIG1zZ3N0ciAiJXMgdW50ZXJzdMO8dHp0IGtlaW4gLS1zdXBlci1wcmVmaXgiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjMxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI5NwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHN1Ym1vZHVsZS0taGVscGVyIHN1YmNvbW1hbmQiCiBtc2dzdHIgIiclcycgaXN0IGtlaW4gZ8O8bHRpZ2VyIFVudGVyYmVmZWhsIHZvbiBzdWJtb2R1bGUtLWhlbHBlciIKQEAgLTE3ODU5LDE3ICsyMTYwOSwxNyBAQAogCiAjOiBidWlsdGluL3RhZy5jOjI1CiBtc2dpZCAiIgotImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8a2V5LWlkPl0gWy1mXSBbLW0gPG1zZz4gfCAtRiA8ZmlsZT5dIDx0YWduYW1lPiAiCi0iWzxoZWFkPl0iCisiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA8bXNnPiB8IC1GIDxmaWxlPl1cbiIKKyJcdFx0PHRhZ25hbWU+IFs8aGVhZD5dIgogbXNnc3RyICIiCi0iZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxTY2hsw7xzc2VsLWlkPl0gWy1mXSBbLW0gPEJlc2NocmVpYnVuZz4gfCAtRiA8RGF0ZWk+XSAiCi0iPFRhZ25hbWU+IFs8Q29tbWl0Pl0iCisiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxTY2hsw7xzc2VsLWlkPl0gWy1mXSBbLW0gPEJlc2NocmVpYnVuZz4gfCAtRiA8RGF0ZWk+XVxuIgorIlx0XHQ8VGFnbmFtZT4gWzxDb21taXQ+XSIKIAotIzogYnVpbHRpbi90YWcuYzoyNgorIzogYnVpbHRpbi90YWcuYzoyNwogbXNnaWQgImdpdCB0YWcgLWQgPHRhZ25hbWU+Li4uIgogbXNnc3RyICJnaXQgdGFnIC1kIDxUYWduYW1lPi4uLiIKIAotIzogYnVpbHRpbi90YWcuYzoyNworIzogYnVpbHRpbi90YWcuYzoyOAogbXNnaWQgIiIKICJnaXQgdGFnIC1sIFstbls8bnVtPl1dIFstLWNvbnRhaW5zIDxjb21taXQ+XSBbLS1uby1jb250YWlucyA8Y29tbWl0Pl0gWy0tIgogInBvaW50cy1hdCA8b2JqZWN0Pl1cbiIKQEAgLTE3ODc5LDIxICsyMTYyOSwyMSBAQAogInBvaW50cy1hdCA8T2JqZWt0Pl1cbiIKICJcdFx0Wy0tZm9ybWF0PTxNdXN0ZXI+XSBbLS1bbm8tXW1lcmdlZCBbPENvbW1pdD5dXSBbPE11c3Rlcj4uLi5dIgogCi0jOiBidWlsdGluL3RhZy5jOjI5CisjOiBidWlsdGluL3RhZy5jOjMwCiBtc2dpZCAiZ2l0IHRhZyAtdiBbLS1mb3JtYXQ9PGZvcm1hdD5dIDx0YWduYW1lPi4uLiIKIG1zZ3N0ciAiZ2l0IHRhZyAtdiBbLS1mb3JtYXQ9PEZvcm1hdD5dIDxUYWduYW1lPi4uLiIKIAotIzogYnVpbHRpbi90YWcuYzo4NworIzogYnVpbHRpbi90YWcuYzo4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0YWcgJyVzJyBub3QgZm91bmQuIgogbXNnc3RyICJUYWcgJyVzJyBuaWNodCBnZWZ1bmRlbi4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTAzCisjOiBidWlsdGluL3RhZy5jOjEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWxldGVkIHRhZyAnJXMnICh3YXMgJXMpXG4iCiBtc2dzdHIgIlRhZyAnJXMnIGdlbMO2c2NodCAod2FyICVzKVxuIgogCi0jOiBidWlsdGluL3RhZy5jOjEzMworIzogYnVpbHRpbi90YWcuYzoxMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTc5MDYsNyArMjE2NTYsNyBAQAogIiAgJXNcbiIKICJlaW4uIFplaWxlbiwgZGllIG1pdCAnJWMnIGJlZ2lubmVuLCB3ZXJkZW4gaWdub3JpZXJ0LlxuIgogCi0jOiBidWlsdGluL3RhZy5jOjEzNworIzogYnVpbHRpbi90YWcuYzoxMzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTc5MjEsMzYzICsyMTY3MSwzODEgQEAKICJlaW4uIFplaWxlbiwgZGllIG1pdCAnJWMnIGJlZ2lubmVuLCB3ZXJkZW4gYmVoYWx0ZW47IFNpZSBkw7xyZmVuIGRpZXNlXG4iCiAic2VsYnN0IGVudGZlcm5lbiB3ZW5uIFNpZSBtw7ZjaHRlbi5cbiIKIAotIzogYnVpbHRpbi90YWcuYzoxOTEKKyM6IGJ1aWx0aW4vdGFnLmM6MTk4CiBtc2dpZCAidW5hYmxlIHRvIHNpZ24gdGhlIHRhZyIKIG1zZ3N0ciAia29ubnRlIFRhZyBuaWNodCBzaWduaWVyZW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTkzCisjOiBidWlsdGluL3RhZy5jOjIwMAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0YWcgZmlsZSIKIG1zZ3N0ciAia29ubnRlIFRhZy1EYXRlaSBuaWNodCBzY2hyZWliZW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjE4CisjOiBidWlsdGluL3RhZy5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGhhdmUgY3JlYXRlZCBhIG5lc3RlZCB0YWcuIFRoZSBvYmplY3QgcmVmZXJyZWQgdG8gYnkgeW91ciBuZXcgdGFnIGlzXG4iCisiYWxyZWFkeSBhIHRhZy4gSWYgeW91IG1lYW50IHRvIHRhZyB0aGUgb2JqZWN0IHRoYXQgaXQgcG9pbnRzIHRvLCB1c2U6XG4iCisiXG4iCisiXHRnaXQgdGFnIC1mICVzICVzXnt9IgorbXNnc3RyICIiCisiU2llIGhhYmVuIGVpbmVuIHZlcnNjaGFjaHRlbHRlbiBUYWcgZXJ6ZXVndC4gRGFzIE9iamVrdCwgYXVmIHdlbGNoZXMgSWhyXG4iCisibmV1ZXMgVGFnIHJlZmVyZW56aWVydCwgaXN0IGJlcmVpdHMgZWluIFRhZy4gV2VubiBTaWUgZGFzIE9iamVrdCB0YWdnZW5cbiIKKyJ3b2xsdGVuLCB3b3JhdWYgZGllc2VzIHplaWd0LCBudXR6ZW4gU2llOlxuIgorIlxuIgorIlx0Z2l0IHRhZyAtZiAlcyAlc157fSIKKworIzogYnVpbHRpbi90YWcuYzoyMzIKIG1zZ2lkICJiYWQgb2JqZWN0IHR5cGUuIgogbXNnc3RyICJ1bmfDvGx0aWdlciBPYmpla3QtVHlwIgogCi0jOiBidWlsdGluL3RhZy5jOjI2NworIzogYnVpbHRpbi90YWcuYzoyODQKIG1zZ2lkICJubyB0YWcgbWVzc2FnZT8iCiBtc2dzdHIgImtlaW5lIFRhZy1CZXNjaHJlaWJ1bmc/IgogCi0jOiBidWlsdGluL3RhZy5jOjI3NAorIzogYnVpbHRpbi90YWcuYzoyOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIHRhZyBtZXNzYWdlIGhhcyBiZWVuIGxlZnQgaW4gJXNcbiIKLW1zZ3N0ciAiRGllIFRhZy1CZXNjaHJlaWJ1bmcgd3VyZGUgZ2VsYXNzZW4gaW4gJXNcbiIKK21zZ3N0ciAiRGllIFRhZy1CZXNjaHJlaWJ1bmcgd3VyZGUgaW4gJXMgZ2VsYXNzZW5cbiIKIAotIzogYnVpbHRpbi90YWcuYzozODUKKyM6IGJ1aWx0aW4vdGFnLmM6NDAyCiBtc2dpZCAibGlzdCB0YWcgbmFtZXMiCiBtc2dzdHIgIlRhZ25hbWVuIGF1Zmxpc3RlbiIKIAotIzogYnVpbHRpbi90YWcuYzozODcKKyM6IGJ1aWx0aW4vdGFnLmM6NDA0CiBtc2dpZCAicHJpbnQgPG4+IGxpbmVzIG9mIGVhY2ggdGFnIG1lc3NhZ2UiCiBtc2dzdHIgIjxuPiBaZWlsZW4gamVkZXIgVGFnLUJlc2NocmVpYnVuZyBhbnplaWdlbiIKIAotIzogYnVpbHRpbi90YWcuYzozODkKKyM6IGJ1aWx0aW4vdGFnLmM6NDA2CiBtc2dpZCAiZGVsZXRlIHRhZ3MiCiBtc2dzdHIgIlRhZ3MgbMO2c2NoZW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MzkwCisjOiBidWlsdGluL3RhZy5jOjQwNwogbXNnaWQgInZlcmlmeSB0YWdzIgogbXNnc3RyICJUYWdzIMO8YmVycHLDvGZlbiIKIAotIzogYnVpbHRpbi90YWcuYzozOTIKKyM6IGJ1aWx0aW4vdGFnLmM6NDA5CiBtc2dpZCAiVGFnIGNyZWF0aW9uIG9wdGlvbnMiCiBtc2dzdHIgIk9wdGlvbmVuIGbDvHIgRXJzdGVsbHVuZyB2b24gVGFncyIKIAotIzogYnVpbHRpbi90YWcuYzozOTQKKyM6IGJ1aWx0aW4vdGFnLmM6NDExCiBtc2dpZCAiYW5ub3RhdGVkIHRhZywgbmVlZHMgYSBtZXNzYWdlIgogbXNnc3RyICJhbm5vdGllcnRlcyBUYWcsIGJlbsO2dGlndCBlaW5lIEJlc2NocmVpYnVuZyIKIAotIzogYnVpbHRpbi90YWcuYzozOTYKKyM6IGJ1aWx0aW4vdGFnLmM6NDEzCiBtc2dpZCAidGFnIG1lc3NhZ2UiCiBtc2dzdHIgIlRhZy1CZXNjaHJlaWJ1bmciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzk4CisjOiBidWlsdGluL3RhZy5jOjQxNQogbXNnaWQgImZvcmNlIGVkaXQgb2YgdGFnIG1lc3NhZ2UiCiBtc2dzdHIgIkJlYXJiZWl0dW5nIGRlciBUYWctQmVzY2hyZWlidW5nIGVyendpbmdlbiIKIAotIzogYnVpbHRpbi90YWcuYzozOTkKKyM6IGJ1aWx0aW4vdGFnLmM6NDE2CiBtc2dpZCAiYW5ub3RhdGVkIGFuZCBHUEctc2lnbmVkIHRhZyIKIG1zZ3N0ciAiYW5ub3RpZXJ0ZXMgdW5kIEdQRy1zaWduaWVydGVzIFRhZyIKIAotIzogYnVpbHRpbi90YWcuYzo0MDMKKyM6IGJ1aWx0aW4vdGFnLmM6NDE5CiBtc2dpZCAidXNlIGFub3RoZXIga2V5IHRvIHNpZ24gdGhlIHRhZyIKIG1zZ3N0ciAiZWluZW4gYW5kZXJlbiBTY2hsw7xzc2VsIHZlcndlbmRlbiwgdW0gZGFzIFRhZyB6dSBzaWduaWVyZW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA0CisjOiBidWlsdGluL3RhZy5jOjQyMAogbXNnaWQgInJlcGxhY2UgdGhlIHRhZyBpZiBleGlzdHMiCiBtc2dzdHIgImRhcyBUYWcgZXJzZXR6ZW4sIHdlbm4gZXMgZXhpc3RpZXJ0IgogCi0jOiBidWlsdGluL3RhZy5jOjQwNSBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjkKKyM6IGJ1aWx0aW4vdGFnLmM6NDIxIGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2OQogbXNnaWQgImNyZWF0ZSBhIHJlZmxvZyIKIG1zZ3N0ciAiUmVmbG9nIGVyc3RlbGxlbiIKIAotIzogYnVpbHRpbi90YWcuYzo0MDcKKyM6IGJ1aWx0aW4vdGFnLmM6NDIzCiBtc2dpZCAiVGFnIGxpc3Rpbmcgb3B0aW9ucyIKIG1zZ3N0ciAiT3B0aW9uZW4gZsO8ciBBdWZsaXN0dW5nIGRlciBUYWdzIgogCi0jOiBidWlsdGluL3RhZy5jOjQwOAorIzogYnVpbHRpbi90YWcuYzo0MjQKIG1zZ2lkICJzaG93IHRhZyBsaXN0IGluIGNvbHVtbnMiCiBtc2dzdHIgIkxpc3RlIGRlciBUYWdzIGluIFNwYWx0ZW4gYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA5IGJ1aWx0aW4vdGFnLmM6NDExCisjOiBidWlsdGluL3RhZy5jOjQyNSBidWlsdGluL3RhZy5jOjQyNwogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAibnVyIFRhZ3MgYXVzZ2ViZW4sIGRpZSBkaWVzZW4gQ29tbWl0IGJlaW5oYWx0ZW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDEwIGJ1aWx0aW4vdGFnLmM6NDEyCisjOiBidWlsdGluL3RhZy5jOjQyNiBidWlsdGluL3RhZy5jOjQyOAogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAibnVyIFRhZ3MgYXVzZ2ViZW4sIGRpZSBkaWVzZW4gQ29tbWl0IG5pY2h0IGVudGhhbHRlbiIKIAotIzogYnVpbHRpbi90YWcuYzo0MTMKKyM6IGJ1aWx0aW4vdGFnLmM6NDI5CiBtc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAibnVyIFRhZ3MgYXVzZ2ViZW4sIGRpZSBnZW1lcmdlZCB3dXJkZW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDE0CisjOiBidWlsdGluL3RhZy5jOjQzMAogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGFyZSBub3QgbWVyZ2VkIgogbXNnc3RyICJudXIgVGFncyBhdXNnZWJlbiwgZGllIG5pY2h0IGdlbWVyZ2VkIHd1cmRlbiIKIAotIzogYnVpbHRpbi90YWcuYzo0MTkKKyM6IGJ1aWx0aW4vdGFnLmM6NDM0CiBtc2dpZCAicHJpbnQgb25seSB0YWdzIG9mIHRoZSBvYmplY3QiCiBtc2dzdHIgIm51ciBUYWdzIHZvbiBkZW0gT2JqZWt0IGF1c2dlYmVuIgogCi0jOiBidWlsdGluL3RhZy5jOjQ2MworIzogYnVpbHRpbi90YWcuYzo0ODIKIG1zZ2lkICItLWNvbHVtbiBhbmQgLW4gYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1jb2x1bW4gdW5kIC1uIHNpbmQgaW5rb21wYXRpYmVsIgogCi0jOiBidWlsdGluL3RhZy5jOjQ4NQorIzogYnVpbHRpbi90YWcuYzo1MDQKIG1zZ2lkICItbiBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAiRGllIE9wdGlvbiAtbiBpc3QgbnVyIGltIExpc3Rlbm1vZHVzIGVybGF1YnQuIgogCi0jOiBidWlsdGluL3RhZy5jOjQ4NworIzogYnVpbHRpbi90YWcuYzo1MDYKIG1zZ2lkICItLWNvbnRhaW5zIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICJEaWUgT3B0aW9uIC0tY29udGFpbnMgaXN0IG51ciBpbSBMaXN0ZW5tb2R1cyBlcmxhdWJ0LiIKIAotIzogYnVpbHRpbi90YWcuYzo0ODkKKyM6IGJ1aWx0aW4vdGFnLmM6NTA4CiBtc2dpZCAiLS1uby1jb250YWlucyBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAiRGllIE9wdGlvbiAtLW5vLWNvbnRhaW5zIGlzdCBudXIgaW0gTGlzdGVubW9kdXMgZXJsYXVidC4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDkxCisjOiBidWlsdGluL3RhZy5jOjUxMAogbXNnaWQgIi0tcG9pbnRzLWF0IG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICJEaWUgT3B0aW9uIC0tcG9pbnRzLWF0IGlzdCBudXIgaW0gTGlzdGVubW9kdXMgZXJsYXVidC4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDkzCisjOiBidWlsdGluL3RhZy5jOjUxMgogbXNnaWQgIi0tbWVyZ2VkIGFuZCAtLW5vLW1lcmdlZCBvcHRpb25zIGFyZSBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICJEaWUgT3B0aW9uZW4gLS1tZXJnZWQgdW5kIC0tbm8tbWVyZ2VkIHNpbmQgbnVyIGltIExpc3Rlbm1vZHVzIGVybGF1YnQuIgogCi0jOiBidWlsdGluL3RhZy5jOjUwNAorIzogYnVpbHRpbi90YWcuYzo1MjMKIG1zZ2lkICJvbmx5IG9uZSAtRiBvciAtbSBvcHRpb24gaXMgYWxsb3dlZC4iCiBtc2dzdHIgIm51ciBlaW5lIC1GIG9kZXIgLW0gT3B0aW9uIGlzdCBlcmxhdWJ0LiIKIAotIzogYnVpbHRpbi90YWcuYzo1MjMKKyM6IGJ1aWx0aW4vdGFnLmM6NTQyCiBtc2dpZCAidG9vIG1hbnkgcGFyYW1zIgogbXNnc3RyICJ6dSB2aWVsZSBQYXJhbWV0ZXIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTI5CisjOiBidWlsdGluL3RhZy5jOjU0OAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRhZyBuYW1lLiIKIG1zZ3N0ciAiJyVzJyBpc3Qga2VpbiBnw7xsdGlnZXIgVGFnbmFtZS4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTM0CisjOiBidWlsdGluL3RhZy5jOjU1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0YWcgJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAiVGFnICclcycgZXhpc3RpZXJ0IGJlcmVpdHMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTY1CisjOiBidWlsdGluL3RhZy5jOjU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJVcGRhdGVkIHRhZyAnJXMnICh3YXMgJXMpXG4iCiBtc2dzdHIgIlRhZyAnJXMnIGFrdHVhbGlzaWVydCAod2FyICVzKVxuIgogCi0jOiBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTAwCisjOiBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTAyCiBtc2dpZCAiVW5wYWNraW5nIG9iamVjdHMiCiBtc2dzdHIgIkVudHBhY2tlIE9iamVrdGUiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6ODIKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgJXMiCiBtc2dzdHIgIkZlaGxlciBiZWltIEVyc3RlbGxlbiB2b24gVmVyemVpY2huaXMgJyVzJyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBmaWxlICVzIgogbXNnc3RyICJLb25udGUgRGF0ZWkgJyVzJyBuaWNodCBlcnN0ZWxsZW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIGZpbGUgJXMiCiBtc2dzdHIgIktvbm50ZSBEYXRlaSAnJXMnIG5pY2h0IGzDtnNjaGVuIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExMyBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxOQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTUgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSBkaXJlY3RvcnkgJXMiCiBtc2dzdHIgIktvbm50ZSBWZXJ6ZWljaG5pcyAnJXMnIG5pY2h0IGzDtnNjaGVuIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEzOAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGVzdGluZyBtdGltZSBpbiAnJXMnICIKIG1zZ3N0ciAiUHLDvGZlIG10aW1lIGluICclcycgIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE1MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNTQKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBhZGRpbmcgYSBuZXcgZmlsZSIKIG1zZ3N0ciAiIgogIlZlcnplaWNobmlzaW5mb3JtYXRpb25lbiBoYWJlbiBzaWNoIG5hY2ggSGluenVmw7xnZW4gZWluZXIgbmV1ZW4gRGF0ZWkgbmljaHQgIgogImdlw6RuZGVydCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNjUKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTY3CiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgYWRkaW5nIGEgbmV3IGRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogIlZlcnplaWNobmlzaW5mb3JtYXRpb25lbiBoYWJlbiBzaWNoIG5hY2ggSGluenVmw7xnZW4gZWluZXMgbmV1ZW4gIgogIlZlcnplaWNobmlzc2VzIG5pY2h0IGdlw6RuZGVydCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNzgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTgwCiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBjaGFuZ2VzIGFmdGVyIHVwZGF0aW5nIGEgZmlsZSIKIG1zZ3N0ciAiIgogIlZlcnplaWNobmlzaW5mb3JtYXRpb25lbiBoYWJlbiBzaWNoIG5hY2ggQWt0dWFsaXNpZXJ1bmcgZWluZXIgRGF0ZWkgZ2XDpG5kZXJ0IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE4OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxOTEKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGNoYW5nZXMgYWZ0ZXIgYWRkaW5nIGEgZmlsZSBpbnNpZGUgc3ViZGlyZWN0b3J5IgogbXNnc3RyICIiCiAiVmVyemVpY2huaXNpbmZvcm1hdGlvbmVuIGhhYmVuIHNpY2ggbmFjaCBIaW56dWbDvGdlbiBlaW5lciBEYXRlaSBpbiBlaW4gIgogIlVudGVydmVyemVpY2huaXMgZ2XDpG5kZXJ0IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIwMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMDIKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGZpbGUiCiBtc2dzdHIgIiIKICJWZXJ6ZWljaG5pc2luZm9ybWF0aW9uZW4gaGFiZW4gc2ljaCBuYWNoIGRlbSBMw7ZzY2hlbiBlaW5lciBEYXRlaSBuaWNodCAiCiAiZ2XDpG5kZXJ0IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxMworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTUKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogIlZlcnplaWNobmlzaW5mb3JtYXRpb25lbiBoYWJlbiBzaWNoIG5hY2ggZGVtIEzDtnNjaGVuIGVpbmVzIFZlcnplaWNobmlzc2VzICIKICJuaWNodCBnZcOkbmRlcnQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMgogbXNnaWQgIiBPSyIKIG1zZ3N0ciAiIE9LIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjU4OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo1OTEKIG1zZ2lkICJnaXQgdXBkYXRlLWluZGV4IFs8b3B0aW9ucz5dIFstLV0gWzxmaWxlPi4uLl0iCiBtc2dzdHIgImdpdCB1cGRhdGUtaW5kZXggWzxPcHRpb25lbj5dIFstLV0gWzxEYXRlaT4uLi5dIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzQKIG1zZ2lkICJjb250aW51ZSByZWZyZXNoIGV2ZW4gd2hlbiBpbmRleCBuZWVkcyB1cGRhdGUiCiBtc2dzdHIgIiIKICJBa3R1YWxpc2llcnVuZyBmb3J0c2V0emVuLCBhdWNoIHdlbm4gZGVyIEluZGV4IGFrdHVhbGlzaWVydCB3ZXJkZW4gbXVzcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NjQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTc3CiBtc2dpZCAicmVmcmVzaDogaWdub3JlIHN1Ym1vZHVsZXMiCiBtc2dzdHIgIkFrdHVhbGlzaWVydW5nOiBpZ25vcmllcnQgU3VibW9kdWxlIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODAKIG1zZ2lkICJkbyBub3QgaWdub3JlIG5ldyBmaWxlcyIKIG1zZ3N0ciAia2VpbmUgbmV1ZW4gRGF0ZWllbiBpZ25vcmllcmVuIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODIKIG1zZ2lkICJsZXQgZmlsZXMgcmVwbGFjZSBkaXJlY3RvcmllcyBhbmQgdmljZS12ZXJzYSIKIG1zZ3N0ciAiRGF0ZWllbiBWZXJ6ZWljaG5pc3NlIGVyc2V0emVuIGxhc3NlbiwgdW5kIHVtZ2VkcmVodCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg0CiBtc2dpZCAibm90aWNlIGZpbGVzIG1pc3NpbmcgZnJvbSB3b3JrdHJlZSIKIG1zZ3N0ciAiZmVobGVuZGUgRGF0ZWllbiBpbSBBcmJlaXRzdmVyemVpY2huaXMgYmVhY2h0ZW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTczCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NgogbXNnaWQgInJlZnJlc2ggZXZlbiBpZiBpbmRleCBjb250YWlucyB1bm1lcmdlZCBlbnRyaWVzIgogbXNnc3RyICIiCiAiYWt0dWFsaXNpZXJlbiwgYXVjaCB3ZW5uIGRlciBJbmRleCBuaWNodCB6dXNhbW1lbmdlZsO8aHJ0ZSBFaW50csOkZ2UgYmVpbmhhbHRldCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg5CiBtc2dpZCAicmVmcmVzaCBzdGF0IGluZm9ybWF0aW9uIgogbXNnc3RyICJEYXRlaWluZm9ybWF0aW9uZW4gYWt0dWFsaXNpZXJlbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTkzCiBtc2dpZCAibGlrZSAtLXJlZnJlc2gsIGJ1dCBpZ25vcmUgYXNzdW1lLXVuY2hhbmdlZCBzZXR0aW5nIgogbXNnc3RyICJ3aWUgLS1yZWZyZXNoLCBpZ25vcmllcnQgYWJlciBcImFzc3VtZS11bmNoYW5nZWRcIiBFaW5zdGVsbHVuZyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk3CiBtc2dpZCAiPG1vZGU+LDxvYmplY3Q+LDxwYXRoPiIKIG1zZ3N0ciAiPE1vZHVzPiw8T2JqZWt0Piw8UGZhZD4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5OAogbXNnaWQgImFkZCB0aGUgc3BlY2lmaWVkIGVudHJ5IHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiZGVuIGFuZ2VnZWJlbmVuIEVpbnRyYWcgenVtIENvbW1pdCB2b3JtZXJrZW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDgKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIFwibm90IGNoYW5naW5nXCIiCiBtc2dzdHIgImRpZXNlIERhdGVpIGltbWVyIGFscyB1bnZlcsOkbmRlcnQgYmV0cmFjaHRlbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMQogbXNnaWQgImNsZWFyIGFzc3VtZWQtdW5jaGFuZ2VkIGJpdCIKIG1zZ3N0ciAiXCJhc3N1bWVkLXVuY2hhbmdlZFwiLUJpdCBsw7ZzY2hlbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTQKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIFwiaW5kZXgtb25seVwiIgogbXNnc3RyICJEYXRlaWVuIGFscyBcImluZGV4LW9ubHlcIiBtYXJraWVyZW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwMworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDE3CiBtc2dpZCAiY2xlYXIgc2tpcC13b3JrdHJlZSBiaXQiCiBtc2dzdHIgIlwic2tpcC13b3JrdHJlZVwiLUJpdCBsw7ZzY2hlbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjAKK21zZ2lkICJkbyBub3QgdG91Y2ggaW5kZXgtb25seSBlbnRyaWVzIgorbXNnc3RyICJcImluZGV4LW9ubHlcIiBFaW50csOkZ2Ugw7xiZXJzcHJpbmdlbiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDIyCiBtc2dpZCAiYWRkIHRvIGluZGV4IG9ubHk7IGRvIG5vdCBhZGQgY29udGVudCB0byBvYmplY3QgZGF0YWJhc2UiCiBtc2dzdHIgIiIKICJkaWUgw4RuZGVydW5nZW4gbnVyIHp1bSBDb21taXQgdm9ybWVya2VuOyBJbmhhbHQgd2lyZCBuaWNodCBkZXIgT2JqZWt0LSIKICJEYXRlbmJhbmsgaGluenVnZWbDvGd0IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNAogbXNnaWQgInJlbW92ZSBuYW1lZCBwYXRocyBldmVuIGlmIHByZXNlbnQgaW4gd29ya3RyZWUiCiBtc2dzdHIgIiIKICJiZW5hbm50ZSBQZmFkZSBsw7ZzY2hlbiwgYXVjaCB3ZW5uIHNpZSBzaWNoIGltIEFyYmVpdHN2ZXJ6ZWljaG5pcyBiZWZpbmRlbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDEwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjYKIG1zZ2lkICJ3aXRoIC0tc3RkaW46IGlucHV0IGxpbmVzIGFyZSB0ZXJtaW5hdGVkIGJ5IG51bGwgYnl0ZXMiCiBtc2dzdHIgIm1pdCAtLXN0ZGluOiBlaW5nZWdlYmVuZSBaZWlsZW4gc2luZCBkdXJjaCBOVUwtQnl0ZXMgYWJnZXNjaGxvc3NlbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDEyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjgKIG1zZ2lkICJyZWFkIGxpc3Qgb2YgcGF0aHMgdG8gYmUgdXBkYXRlZCBmcm9tIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJMaXN0ZSBkZXIgenUgYWt0dWFsaXNpZXJlbmRlbiBQZmFkZSB2b24gZGVyIFN0YW5kYXJkLUVpbmdhYmUgbGVzZW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDMyCiBtc2dpZCAiYWRkIGVudHJpZXMgZnJvbSBzdGFuZGFyZCBpbnB1dCB0byB0aGUgaW5kZXgiCiBtc2dzdHIgIkVpbnRyw6RnZSB2b24gZGVyIFN0YW5kYXJkLUVpbmdhYmUgenVtIENvbW1pdCB2b3JtZXJrZW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDM2CiBtc2dpZCAicmVwb3B1bGF0ZSBzdGFnZXMgIzIgYW5kICMzIGZvciB0aGUgbGlzdGVkIHBhdGhzIgogbXNnc3RyICIiCiAid2llZGVyaG9sdGVzIEVpbnBmbGVnZW4gZGVyIFp1c3TDpG5kZSAjMiB1bmQgIzMgZsO8ciBkaWUgYXVmZ2VsaXN0ZXRlbiBQZmFkZSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDAKIG1zZ2lkICJvbmx5IHVwZGF0ZSBlbnRyaWVzIHRoYXQgZGlmZmVyIGZyb20gSEVBRCIKIG1zZ3N0ciAibnVyIEVpbnRyw6RnZSBha3R1YWxpc2llcmVuLCBkaWUgdW50ZXJzY2hpZWRsaWNoIHp1IEhFQUQgc2luZCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDQKIG1zZ2lkICJpZ25vcmUgZmlsZXMgbWlzc2luZyBmcm9tIHdvcmt0cmVlIgogbXNnc3RyICJmZWhsZW5kZSBEYXRlaWVuIGltIEFyYmVpdHN2ZXJ6ZWljaG5pcyBpZ25vcmllcmVuIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NwogbXNnaWQgInJlcG9ydCBhY3Rpb25zIHRvIHN0YW5kYXJkIG91dHB1dCIKIG1zZ3N0ciAiZGllIEFrdGlvbmVuIGluIGRlciBTdGFuZGFyZC1BdXNnYWJlIGF1c2dlYmVuIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0OQogbXNnaWQgIihmb3IgcG9yY2VsYWlucykgZm9yZ2V0IHNhdmVkIHVucmVzb2x2ZWQgY29uZmxpY3RzIgogbXNnc3RyICIoZsO8ciBGcmVtZHByb2dyYW1tZSkga2VpbmUgZ2VzcGVpY2hlcnRlbiwgbmljaHQgYXVmZ2Vsw7ZzdGUgS29uZmxpa3RlIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1MwogbXNnaWQgIndyaXRlIGluZGV4IGluIHRoaXMgZm9ybWF0IgogbXNnc3RyICJJbmRleC1EYXRlaSBpbiBkaWVzZW0gRm9ybWF0IHNjaHJlaWJlbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDM5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTUKIG1zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBzcGxpdCBpbmRleCIKIG1zZ3N0ciAiU3BsaXR0aW5nIGRlcyBJbmRleCBha3RpdmllcmVuIG9kZXIgZGVha3RpdmllcmVuIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1NwogbXNnaWQgImVuYWJsZS9kaXNhYmxlIHVudHJhY2tlZCBjYWNoZSIKIG1zZ3N0ciAiQ2FjaGUgZsO8ciB1bnZlcnNpb25pZXJ0ZSBEYXRlaWVuIGFrdGl2aWVyZW4gb2RlciBkZWFrdGl2aWVyZW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDU5CiBtc2dpZCAidGVzdCBpZiB0aGUgZmlsZXN5c3RlbSBzdXBwb3J0cyB1bnRyYWNrZWQgY2FjaGUiCiBtc2dzdHIgIiIKICJwcsO8ZmVuLCBvYiBkYXMgRGF0ZWlzeXN0ZW0gZWluZW4gQ2FjaGUgZsO8ciB1bnZlcnNpb25pZXJ0ZSBEYXRlaWVuIHVudGVyc3TDvHR6dCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjEKIG1zZ2lkICJlbmFibGUgdW50cmFja2VkIGNhY2hlIHdpdGhvdXQgdGVzdGluZyB0aGUgZmlsZXN5c3RlbSIKIG1zZ3N0ciAiIgogIkNhY2hlIGbDvHIgdW52ZXJzaW9uaWVydGUgRGF0ZWllbiBvaG5lIFByw7xmdW5nIGRlcyBEYXRlaXN5c3RlbXMgYWt0aXZpZXJlbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjMKIG1zZ2lkICJ3cml0ZSBvdXQgdGhlIGluZGV4IGV2ZW4gaWYgaXMgbm90IGZsYWdnZWQgYXMgY2hhbmdlZCIKIG1zZ3N0ciAiSW5kZXggcmF1c3NjaHJlaWJlbiwgYXVjaCB3ZW5uIGRpZXNlciBuaWNodCBhbHMgZ2XDpG5kZXJ0IG1hcmtpZXJ0IGlzdCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjUKIG1zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBmaWxlIHN5c3RlbSBtb25pdG9yIgogbXNnc3RyICJEYXRlaXN5c3RlbS1Nb25pdG9yIGFrdGl2aWVyZW4gb2RlciBkZWFrdGl2aWVyZW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDY3CiBtc2dpZCAibWFyayBmaWxlcyBhcyBmc21vbml0b3IgdmFsaWQiCiBtc2dzdHIgIkRhdGVpZW4gYWxzIFwiZnNtb25pdG9yIHZhbGlkXCIgbWFya2llcmVuIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA3MAogbXNnaWQgImNsZWFyIGZzbW9uaXRvciB2YWxpZCBiaXQiCiBtc2dzdHIgIlwiZnNtb25pdG9yIHZhbGlkXCItQml0IGzDtnNjaGVuIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNTMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MwogbXNnaWQgIiIKICJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgogImVuYWJsZSBzcGxpdCBpbmRleCIKQEAgLTE4Mjg1LDcgKzIyMDUzLDcgQEAKICJjb3JlLnNwbGl0SW5kZXggaXN0IGF1ZiAnZmFsc2UnIGdlc2V0enQuIEVudGZlcm5lbiBvZGVyIMOkbmRlcm4gU2llIGRpZXMsXG4iCiAid2VubiBzaWUgd2lya2xpY2ggZGFzIFNwbGl0dGluZyBkZXMgSW5kZXggYWt0aXZpZXJlbiBtw7ZjaHRlbi4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE2MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTgyCiBtc2dpZCAiIgogImNvcmUuc3BsaXRJbmRleCBpcyBzZXQgdG8gdHJ1ZTsgcmVtb3ZlIG9yIGNoYW5nZSBpdCwgaWYgeW91IHJlYWxseSB3YW50IHRvICIKICJkaXNhYmxlIHNwbGl0IGluZGV4IgpAQCAtMTgyOTMsNyArMjIwNjEsNyBAQAogImNvcmUuc3BsaXRJbmRleCBpc3QgYXVmICd0cnVlJyBnZXNldHp0LiBFbnRmZXJuZW4gb2RlciDDpG5kZXJuIFNpZSBkaWVzLFxuIgogIndlbm4gU2llIHdpcmtsaWNoIGRhcyBTcGxpdHRpbmcgZGVzIEluZGV4IGRlYWt0aXZpZXJlbiBtw7ZjaHRlbi4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTk0CiBtc2dpZCAiIgogImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCiAidG8gZGlzYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgpAQCAtMTgzMDEsMTEgKzIyMDY5LDExIEBACiAiY29yZS51bnRyYWNrZWRDYWNoZSBpc3QgYXVmICd0cnVlJyBnZXNldHp0LiBFbnRmZXJuZW4gb2RlciDDpG5kZXJuIFNpZSBkaWVzLFxuIgogIndlbm4gU2llIHdpcmtsaWNoIGRlbiBDYWNoZSBmw7xyIHVudmVyc2lvbmllcnRlIERhdGVpZW4gZGVha3RpdmllcmVuIG3DtmNodGVuLiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTc3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExOTgKIG1zZ2lkICJVbnRyYWNrZWQgY2FjaGUgZGlzYWJsZWQiCiBtc2dzdHIgIkNhY2hlIGbDvHIgdW52ZXJzaW9uaWVydGUgRGF0ZWllbiBkZWFrdGl2aWVydCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTg1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDYKIG1zZ2lkICIiCiAiY29yZS51bnRyYWNrZWRDYWNoZSBpcyBzZXQgdG8gZmFsc2U7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCiAidG8gZW5hYmxlIHRoZSB1bnRyYWNrZWQgY2FjaGUiCkBAIC0xODMxNCwyMyArMjIwODIsMjMgQEAKICJkaWVzLFxuIgogIndlbm4gc2llIHdpcmtsaWNoIGRlbiBDYWNoZSBmw7xyIHVudmVyc2lvbmllcnRlIERhdGVpZW4gYWt0aXZpZXJlbiBtw7ZjaHRlbi4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVudHJhY2tlZCBjYWNoZSBlbmFibGVkIGZvciAnJXMnIgogbXNnc3RyICJDYWNoZSBmw7xyIHVudmVyc2lvbmllcnRlIERhdGVpZW4gZsO8ciAnJXMnIGFrdGl2aWVydCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTk3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMTgKIG1zZ2lkICJjb3JlLmZzbW9uaXRvciBpcyB1bnNldDsgc2V0IGl0IGlmIHlvdSByZWFsbHkgd2FudCB0byBlbmFibGUgZnNtb25pdG9yIgogbXNnc3RyICIiCiAiY29yZS5mc21vbml0b3IgbmljaHQgZ2VzZXR6dC4gU2V0emVuIFNpZSBlcywgd2VubiBTaWUgZGVuIERhdGVpc3lzdGVtLSIKICJNb25pdG9yXG4iCiAid2lya2xpY2ggYWt0aXZpZXJlbiBtw7ZjaHRlbi4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwMQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjIyCiBtc2dpZCAiZnNtb25pdG9yIGVuYWJsZWQiCiBtc2dzdHIgIkRhdGVpc3lzdGVtLU1vbml0b3IgYWt0aXZpZXJ0IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyNQogbXNnaWQgIiIKICJjb3JlLmZzbW9uaXRvciBpcyBzZXQ7IHJlbW92ZSBpdCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZGlzYWJsZSBmc21vbml0b3IiCiBtc2dzdHIgIiIKQEAgLTE4MzM4LDcgKzIyMTA2LDcgQEAKICJNb25pdG9yXG4iCiAid2lya2xpY2ggZGVha3RpdmllcmVuIG3DtmNodGVuLiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMjkKIG1zZ2lkICJmc21vbml0b3IgZGlzYWJsZWQiCiBtc2dzdHIgIkRhdGVpc3lzdGVtLU1vbml0b3IgZGVha3RpdmllcnQiCiAKQEAgLTE4MzgzLDYgKzIyMTUxLDEwIEBACiBtc2dpZCAiZ2l0IHVwbG9hZC1wYWNrIFs8b3B0aW9ucz5dIDxkaXI+IgogbXNnc3RyICJnaXQgdXBsb2FkLXBhY2sgWzxPcHRpb25lbj5dIDxWZXJ6ZWljaG5pcz4iCiAKKyM6IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyMyB0L2hlbHBlci90ZXN0LXNlcnZlLXYyLmM6MTcKK21zZ2lkICJxdWl0IGFmdGVyIGEgc2luZ2xlIHJlcXVlc3QvcmVzcG9uc2UgZXhjaGFuZ2UiCittc2dzdHIgIm5hY2ggZWluZW0gZWluemlnZW4gUmVxdWVzdC9SZXNwb25zZS1BdXN0YXVzY2ggYmVlbmRlbiIKKwogIzogYnVpbHRpbi91cGxvYWQtcGFjay5jOjI1CiBtc2dpZCAiZXhpdCBpbW1lZGlhdGVseSBhZnRlciBpbml0aWFsIHJlZiBhZHZlcnRpc2VtZW50IgogbXNnc3RyICJkaXJla3QgbmFjaCBkZXIgaW5pdGlhbGVuIEFuZ2FiZSBkZXIgQ29tbWl0cyBiZWVuZGVuIgpAQCAtMTgzOTcsMTUgKzIyMTY5LDE1IEBACiBtc2dpZCAiaW50ZXJydXB0IHRyYW5zZmVyIGFmdGVyIDxuPiBzZWNvbmRzIG9mIGluYWN0aXZpdHkiCiBtc2dzdHIgIsOcYmVydHJhZ3VuZyBuYWNoIDxuPiBTZWt1bmRlbiBJbmFrdGl2aXTDpHQgdW50ZXJicmVjaGVuIgogCi0jOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzoyMAorIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6MTkKIG1zZ2lkICJnaXQgdmVyaWZ5LWNvbW1pdCBbLXYgfCAtLXZlcmJvc2VdIDxjb21taXQ+Li4uIgogbXNnc3RyICJnaXQgdmVyaWZ5LWNvbW1pdCBbLXYgfCAtLXZlcmJvc2VdIDxDb21taXQ+Li4uIgogCi0jOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo3NgorIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NjgKIG1zZ2lkICJwcmludCBjb21taXQgY29udGVudHMiCiBtc2dzdHIgIkNvbW1pdC1JbmhhbHRlIGF1c2dlYmVuIgogCi0jOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo3NyBidWlsdGluL3ZlcmlmeS10YWcuYzozOAorIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NjkgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzcKIG1zZ2lkICJwcmludCByYXcgZ3BnIHN0YXR1cyBvdXRwdXQiCiBtc2dzdHIgInVuYmVhcmJlaXRldGUgQXVzZ2FiZSBkZXMgU3RhdHVzIHZvbiBncGcgYXVzZ2ViZW4iCiAKQEAgLTE4NDIxLDExICsyMjE5MywxMSBAQAogbXNnaWQgInNob3cgc3RhdGlzdGljcyBvbmx5IgogbXNnc3RyICJudXIgU3RhdGlzdGlrZW4gYW56ZWlnZW4iCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjE5CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzoxOAogbXNnaWQgImdpdCB2ZXJpZnktdGFnIFstdiB8IC0tdmVyYm9zZV0gWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnPi4uLiIKIG1zZ3N0ciAiZ2l0IHZlcmlmeS10YWcgWy12IHwgLS12ZXJib3NlXSBbLS1mb3JtYXQ9PEZvcm1hdD5dIDxUYWc+Li4uIgogCi0jOiBidWlsdGluL3ZlcmlmeS10YWcuYzozNworIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzYKIG1zZ2lkICJwcmludCB0YWcgY29udGVudHMiCiBtc2dzdHIgIlRhZy1JbmhhbHRlIGF1c2dlYmVuIgogCkBAIC0xODQ1Nyw3ICsyMjIyOSw3IEBACiBtc2dpZCAiZ2l0IHdvcmt0cmVlIHVubG9jayA8cGF0aD4iCiBtc2dzdHIgImdpdCB3b3JrdHJlZSB1bmxvY2sgPFBmYWQ+IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjAgYnVpbHRpbi93b3JrdHJlZS5jOjg3MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjYwIGJ1aWx0aW4vd29ya3RyZWUuYzo4OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSAnJXMnIgogbXNnc3RyICJGZWhsZXIgYmVpbSBMw7ZzY2hlbiB2b24gJyVzJyIKQEAgLTE4NTA5LDEyICsyMjI4MSwxMiBAQAogbXNnaWQgIiclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIiclcycgZXhpc3RpZXJ0IGJlcmVpdHMiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlLWFkZCB3b3JrdHJlZSAnJXMnIgogbXNnc3RyICJLb25udGUgQXJiZWl0c3ZlcnplaWNobmlzICclcycgbmljaHQgbmV1IGhpbnp1ZsO8Z2VuLiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1NgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjI0OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBpcyBhIG1pc3NpbmcgYnV0IGxvY2tlZCB3b3JrdHJlZTtcbiIKQEAgLTE4NTI0LDcgKzIyMjk2LDcgQEAKICJCZW51dHplbiBTaWUgJ2FkZCAtZiAtZicgenVtIMOcYmVyc2NocmllYmVuLCBvZGVyICd1bmxvY2snIHVuZCAncHJ1bmUnXG4iCiAib2RlciAncmVtb3ZlJyB6dW0gTMO2c2NoZW4uIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6MjU4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGlzIGEgbWlzc2luZyBidXQgYWxyZWFkeSByZWdpc3RlcmVkIHdvcmt0cmVlO1xuIgpAQCAtMTg1MzQsMTI3ICsyMjMwNiwxMjkgQEAKICJCZW51dHplbiBTaWUgJ2FkZCAtZicgenVtIMOcYmVyc2NocmVpYmVuLCBvZGVyICdwcnVuZScgb2RlciAncmVtb3ZlJyB6dW1cbiIKICJMw7ZzY2hlbi4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzozMDkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzozMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3Rvcnkgb2YgJyVzJyIKIG1zZ3N0ciAiS29ubnRlIFZlcnplaWNobmlzICclcycgbmljaHQgZXJzdGVsbGVuLiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQyOCBidWlsdGluL3dvcmt0cmVlLmM6NDM0CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDMyIGJ1aWx0aW4vd29ya3RyZWUuYzo0MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChuZXcgYnJhbmNoICclcycpIgogbXNnc3RyICJCZXJlaXRlIEFyYmVpdHN2ZXJ6ZWljaG5pcyB2b3IgKG5ldWVyIEJyYW5jaCAnJXMnKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKHJlc2V0dGluZyBicmFuY2ggJyVzJzsgd2FzIGF0ICVzKSIKIG1zZ3N0ciAiQmVyZWl0ZSBBcmJlaXRzdmVyemVpY2huaXMgdm9yIChzZXR6ZSBCcmFuY2ggJyVzJyB1bTsgd2FyIGJlaSAlcykiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MzkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChjaGVja2luZyBvdXQgJyVzJykiCiBtc2dzdHIgIkJlcmVpdGUgQXJiZWl0c3ZlcnplaWNobmlzIHZvciAoY2hlY2tlICclcycgYXVzKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKGRldGFjaGVkIEhFQUQgJXMpIgogbXNnc3RyICJCZXJlaXRlIEFyYmVpdHN2ZXJ6ZWljaG5pcyB2b3IgKGxvc2dlbMO2c3RlciBIRUFEICVzKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ4NgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MAogbXNnaWQgImNoZWNrb3V0IDxicmFuY2g+IGV2ZW4gaWYgYWxyZWFkeSBjaGVja2VkIG91dCBpbiBvdGhlciB3b3JrdHJlZSIKIG1zZ3N0ciAiIgogIjxCcmFuY2g+IGF1c2NoZWNrZW4sIGF1Y2ggd2VubiBkaWVzZXIgYmVyZWl0cyBpbiBlaW5lbSBhbmRlcmVuICIKICJBcmJlaXRzdmVyemVpY2huaXMgYXVzZ2VjaGVja3QgaXN0IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDg5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDkzCiBtc2dpZCAiY3JlYXRlIGEgbmV3IGJyYW5jaCIKIG1zZ3N0ciAibmV1ZW4gQnJhbmNoIGVyc3RlbGxlbiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NQogbXNnaWQgImNyZWF0ZSBvciByZXNldCBhIGJyYW5jaCIKIG1zZ3N0ciAiQnJhbmNoIGVyc3RlbGxlbiBvZGVyIHVtc2V0emVuIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDkzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk3CiBtc2dpZCAicG9wdWxhdGUgdGhlIG5ldyB3b3JraW5nIHRyZWUiCiBtc2dzdHIgImRhcyBuZXVlIEFyYmVpdHN2ZXJ6ZWljaG5pcyBhdXNjaGVja2VuIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDk0CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk4CiBtc2dpZCAia2VlcCB0aGUgbmV3IHdvcmtpbmcgdHJlZSBsb2NrZWQiCiBtc2dzdHIgImRhcyBuZXVlIEFyYmVpdHN2ZXJ6ZWljaG5pcyBnZXNwZXJydCBsYXNzZW4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTcKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDEKIG1zZ2lkICJzZXQgdXAgdHJhY2tpbmcgbW9kZSAoc2VlIGdpdC1icmFuY2goMSkpIgogbXNnc3RyICJNb2R1cyB6dW0gRm9sZ2VuIHZvbiBCcmFuY2hlcyBlaW5zdGVsbGVuIChzaWVoZSBnaXQtYnJhbmNoKDEpKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwMAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwNAogbXNnaWQgInRyeSB0byBtYXRjaCB0aGUgbmV3IGJyYW5jaCBuYW1lIHdpdGggYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgogbXNnc3RyICIiCiAidmVyc3VjaGVuLCBlaW5lIMOcYmVyZWluc3RpbW11bmcgZGVzIEJyYW5jaC1OYW1lbnMgbWl0IGVpbmVtXG4iCiAiUmVtb3RlLVRyYWNraW5nLUJyYW5jaCBoZXJ6dXN0ZWxsZW4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MTIKIG1zZ2lkICItYiwgLUIsIGFuZCAtLWRldGFjaCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICItYiwgLUIgdW5kIC0tZGV0YWNoIHNjaGxpZcOfZW4gc2ljaCBnZWdlbnNlaXRpZyBhdXMiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1NjkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1NzMKIG1zZ2lkICItLVtuby1ddHJhY2sgY2FuIG9ubHkgYmUgdXNlZCBpZiBhIG5ldyBicmFuY2ggaXMgY3JlYXRlZCIKIG1zZ3N0ciAiIgogIi0tW25vXS10cmFjayBrYW5uIG51ciB2ZXJ3ZW5kZXQgd2VyZGVuLCB3ZW5uIGVpbiBuZXVlciBCcmFuY2ggZXJzdGVsbHQgd2lyZC4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NjkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NzMKIG1zZ2lkICJyZWFzb24gZm9yIGxvY2tpbmciCiBtc2dzdHIgIlNwZXJyZ3J1bmQiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODEgYnVpbHRpbi93b3JrdHJlZS5jOjcxNCBidWlsdGluL3dvcmt0cmVlLmM6NzcyCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODk5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njg1IGJ1aWx0aW4vd29ya3RyZWUuYzo3MTggYnVpbHRpbi93b3JrdHJlZS5jOjc5MgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkxOQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiJyVzJyBpc3Qga2VpbiBBcmJlaXRzdmVyemVpY2huaXMiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODMgYnVpbHRpbi93b3JrdHJlZS5jOjcxNgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4NyBidWlsdGluL3dvcmt0cmVlLmM6NzIwCiBtc2dpZCAiVGhlIG1haW4gd29ya2luZyB0cmVlIGNhbm5vdCBiZSBsb2NrZWQgb3IgdW5sb2NrZWQiCiBtc2dzdHIgIkRhcyBIYXVwdGFyYmVpdHN2ZXJ6ZWljaG5pcyBrYW5uIG5pY2h0IGdlc3BlcnJ0IG9kZXIgZW50c3BlcnJ0IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbHJlYWR5IGxvY2tlZCwgcmVhc29uOiAlcyIKIG1zZ3N0ciAiJyVzJyBpc3QgYmVyZWl0cyBnZXNwZXJydCwgR3J1bmQ6ICVzIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjkwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxyZWFkeSBsb2NrZWQiCiBtc2dzdHIgIiclcycgaXN0IGJlcmVpdHMgZ2VzcGVycnQiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3MTgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgbG9ja2VkIgogbXNnc3RyICInJXMnIGlzdCBuaWNodCBnZXNwZXJydCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc0MworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc2MwogbXNnaWQgIndvcmtpbmcgdHJlZXMgY29udGFpbmluZyBzdWJtb2R1bGVzIGNhbm5vdCBiZSBtb3ZlZCBvciByZW1vdmVkIgogbXNnc3RyICIiCiAiQXJiZWl0c3ZlcnplaWNobmlzc2UsIGRpZSBTdWJtb2R1bGUgZW50aGFsdGVuLCBrw7ZubmVuIG5pY2h0IHZlcnNjaG9iZW4gb2RlclxuIgogImVudGZlcm50IHdlcmRlbi4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NzEKIG1zZ2lkICJmb3JjZSBtb3ZlIGV2ZW4gaWYgd29ya3RyZWUgaXMgZGlydHkgb3IgbG9ja2VkIgotbXNnc3RyICJWZXJzY2hpZWJlbiBlcnp3aW5nZW4sIGF1Y2ggd2VubiBkYXMgQXJiZWl0c3ZlcnplaWNobmlzIGdlw6RuZGVydCBvZGVyIGdlc3BlcnJ0IGlzdCIKK21zZ3N0ciAiIgorIlZlcnNjaGllYmVuIGVyendpbmdlbiwgYXVjaCB3ZW5uIGRhcyBBcmJlaXRzdmVyemVpY2huaXMgZ2XDpG5kZXJ0IG9kZXIgIgorImdlc3BlcnJ0IGlzdCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3NCBidWlsdGluL3dvcmt0cmVlLmM6OTAxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Nzk0IGJ1aWx0aW4vd29ya3RyZWUuYzo5MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhIG1haW4gd29ya2luZyB0cmVlIgogbXNnc3RyICInJXMnIGlzdCBlaW4gSGF1cHRhcmJlaXRzdmVyemVpY2huaXMiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NzkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGZpZ3VyZSBvdXQgZGVzdGluYXRpb24gbmFtZSBmcm9tICclcyciCiBtc2dzdHIgIktvbm50ZSBaaWVsbmFtZSBhdXMgJyVzJyBuaWNodCBiZXN0aW1tZW4uIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzg1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODA1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRhcmdldCAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICJaaWVsICclcycgZXhpc3RpZXJ0IGJlcmVpdHMuIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzkzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjYW5ub3QgbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlc1xuIgpAQCAtMTg2NjQsNyArMjI0MzgsNyBAQAogIkJlbnV0emVuIFNpZSAnbW92ZSAtZiAtZicgenVtIMOcYmVyc2NocmVpYmVuIG9kZXIgZW50c3BlcnJlbiBTaWUgenVlcnN0XG4iCiAiZGFzIEFyYmVpdHN2ZXJ6ZWljaG5pcy4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTUKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTUKIG1zZ2lkICIiCiAiY2Fubm90IG1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlO1xuIgogInVzZSAnbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgpAQCAtMTg2NzMsMzYgKzIyNDQ3LDQwIEBACiAiQmVudXR6ZW4gU2llICdtb3ZlIC1mIC1mJyB6dW0gw5xiZXJzY2hyZWliZW4gb2RlciBlbnRzcGVycmVuIFNpZSB6dWVyc3RcbiIKICJkYXMgQXJiZWl0c3ZlcnplaWNobmlzLiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ2YWxpZGF0aW9uIGZhaWxlZCwgY2Fubm90IG1vdmUgd29ya2luZyB0cmVlOiAlcyIKIG1zZ3N0ciAiVmFsaWRpZXJ1bmcgZmVobGdlc2NobGFnZW4sIGthbm4gQXJiZWl0c3plaWNobmlzIG5pY2h0IHZlcnNjaGllYmVuOiAlcyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjgwMworIzogYnVpbHRpbi93b3JrdHJlZS5jOjgyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbW92ZSAnJXMnIHRvICclcyciCiBtc2dzdHIgIkZlaGxlciBiZWltIFZlcnNjaGllYmVuIHZvbiAnJXMnIG5hY2ggJyVzJyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg1MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcnVuICdnaXQgc3RhdHVzJyBvbiAnJXMnIgogbXNnc3RyICJGZWhsZXIgYmVpbSBBdXNmw7xocmVuIHZvbiAnZ2l0IHN0YXR1cycgYXVmICclcyciCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NTUKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NzUKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJyVzJyBpcyBkaXJ0eSwgdXNlIC0tZm9yY2UgdG8gZGVsZXRlIGl0IgotbXNnc3RyICInJXMnIGlzdCB2ZXLDpG5kZXJ0LCBiZW51dHplbiBTaWUgLS1mb3JjZSB6dW0gTMO2c2NoZW4iCittc2dpZCAiJyVzJyBjb250YWlucyBtb2RpZmllZCBvciB1bnRyYWNrZWQgZmlsZXMsIHVzZSAtLWZvcmNlIHRvIGRlbGV0ZSBpdCIKK21zZ3N0ciAiIgorIiclcycgZW50aMOkbHQgZ2XDpG5kZXJ0ZSBvZGVyIG5pY2h0IHZlcnNpb25pZXJ0ZSBEYXRlaWVuLCBiZW51dHplbiBTaWUgLS1mb3JjZSAiCisienVtIEzDtnNjaGVuIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODYwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODgwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBydW4gJ2dpdCBzdGF0dXMnIG9uICclcycsIGNvZGUgJWQiCiBtc2dzdHIgIkZlaGxlciBiZWltIEF1c2bDvGhyZW4gdm9uICdnaXQgc3RhdHVzJyBhdWYgJyVzJy4gQ29kZTogJWQiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4ODMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MDMKIG1zZ2lkICJmb3JjZSByZW1vdmFsIGV2ZW4gaWYgd29ya3RyZWUgaXMgZGlydHkgb3IgbG9ja2VkIgotbXNnc3RyICJMw7ZzY2hlbiBlcnp3aW5nZW4sIGF1Y2ggd2VubiBkYXMgQXJiZWl0c3ZlcnplaWNobmlzIGdlw6RuZGVydCBvZGVyIGdlc3BlcnJ0IGlzdCIKK21zZ3N0ciAiIgorIkzDtnNjaGVuIGVyendpbmdlbiwgYXVjaCB3ZW5uIGRhcyBBcmJlaXRzdmVyemVpY2huaXMgZ2XDpG5kZXJ0IG9kZXIgZ2VzcGVycnQgIgorImlzdCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwNgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlc1xuIgpAQCAtMTg3MTIsNyArMjI0OTAsNyBAQAogIkJlbnV0emVuIFNpZSAncmVtb3ZlIC1mIC1mJyB6dW0gw5xiZXJzY2hyZWliZW4gb2RlciBlbnRzcGVycmVuIFNpZSB6dWVyc3RcbiIKICJkYXMgQXJiZWl0c3ZlcnplaWNobmlzLiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwOAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyOAogbXNnaWQgIiIKICJjYW5ub3QgcmVtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZTtcbiIKICJ1c2UgJ3JlbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgpAQCAtMTg3MjEsMjggKzIyNDk5LDQzIEBACiAiQmVudXR6ZW4gU2llICdyZW1vdmUgLWYgLWYnIHp1bSDDnGJlcnNjaHJlaWJlbiBvZGVyIGVudHNwZXJyZW4gU2llIHp1ZXJzdFxuIgogImRhcyBBcmJlaXRzdmVyemVpY2huaXMuIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6OTExCisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInZhbGlkYXRpb24gZmFpbGVkLCBjYW5ub3QgcmVtb3ZlIHdvcmtpbmcgdHJlZTogJXMiCiBtc2dzdHIgIlZhbGlkaWVydW5nIGZlaGxnZXNjaGxhZ2VuLCBrYW5uIEFyYmVpdHN2ZXJ6ZWljaG5pcyBuaWNodCBsw7ZzY2hlbjogJXMiCiAKLSM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjE0CisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzoxNQogbXNnaWQgImdpdCB3cml0ZS10cmVlIFstLW1pc3Npbmctb2tdIFstLXByZWZpeD08cHJlZml4Pi9dIgogbXNnc3RyICJnaXQgd3JpdGUtdHJlZSBbLS1taXNzaW5nLW9rXSBbLS1wcmVmaXg9PFByw6RmaXg+L10iCiAKLSM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI3CisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyOAogbXNnaWQgIjxwcmVmaXg+LyIKIG1zZ3N0ciAiPFByw6RmaXg+LyIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjgKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI5CiBtc2dpZCAid3JpdGUgdHJlZSBvYmplY3QgZm9yIGEgc3ViZGlyZWN0b3J5IDxwcmVmaXg+IgotbXNnc3RyICJkYXMgXCJUcmVlXCItT2JqZWt0IGbDvHIgZWluIFVudGVydmVyemVpY2huaXMgPFByw6RmaXg+IHNjaHJlaWJlbiIKK21zZ3N0ciAiZGFzIFRyZWUtT2JqZWt0IGbDvHIgZWluIFVudGVydmVyemVpY2huaXMgPFByw6RmaXg+IHNjaHJlaWJlbiIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MzAKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjMxCiBtc2dpZCAib25seSB1c2VmdWwgZm9yIGRlYnVnZ2luZyIKIG1zZ3N0ciAibnVyIG7DvHR6bGljaCBmw7xyIEZlaGxlcnN1Y2hlIgogCi0jOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyMjIKKyM6IGZhc3QtaW1wb3J0LmM6MzEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFeHBlY3RlZCAnbWFyaycgY29tbWFuZCwgZ290ICVzIgorbXNnc3RyICInbWFyaycgQmVmZWhsIGVyd2FydGV0LCAnJXMnIGJla29tbWVuIgorCisjOiBmYXN0LWltcG9ydC5jOjMxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0ZWQgJ3RvJyBjb21tYW5kLCBnb3QgJXMiCittc2dzdHIgIid0bycgQmVmZWhsIGVyd2FydGV0LCAnJXMnIGJla29tbWVuIgorCisjOiBmYXN0LWltcG9ydC5jOjMyNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmVhdHVyZSAnJXMnIGZvcmJpZGRlbiBpbiBpbnB1dCB3aXRob3V0IC0tYWxsb3ctdW5zYWZlLWZlYXR1cmVzIgorbXNnc3RyICJGZWF0dXJlICclcycgdmVyYm90ZW4gaW4gRWluZ2FiZSBvaG5lIE9wdGlvbiAtLWFsbG93LXVuc2FmZS1mZWF0dXJlcyIKKworIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgcGVybWlzc2lvbnMgb24geW91ciBzb2NrZXQgZGlyZWN0b3J5IGFyZSB0b28gbG9vc2U7IG90aGVyXG4iCkBAIC0xODc1OCw3ICsyMjU1MSw3IEBACiAiXG4iCiAiYXVzenVmw7xocmVuLiIKIAotIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjcxCisjOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyNzIKIG1zZ2lkICJwcmludCBkZWJ1Z2dpbmcgbWVzc2FnZXMgdG8gc3RkZXJyIgogbXNnc3RyICJNZWxkdW5nZW4genVyIEZlaGxlcnN1Y2hlIGluIFN0YW5kYXJkLUZlaGxlcmF1c2dhYmUgYXVzZ2ViZW4iCiAKQEAgLTE4NzcxLDYgKzIyNTY0LDE0IEBACiBtc2dpZCAidG9vIG1hbnkgY29tbWl0cyBtYXJrZWQgcmVhY2hhYmxlIgogbXNnc3RyICJadSB2aWVsZSBDb21taXRzIGFscyBlcnJlaWNoYmFyIGdla2VubnplaWNobmV0LiIKIAorIzogdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjcKK21zZ2lkICJ0ZXN0LXRvb2wgc2VydmUtdjIgWzxvcHRpb25zPl0iCittc2dzdHIgInRlc3QtdG9vbCBzZXJ2ZS12MiBbPE9wdGlvbmVuPl0iCisKKyM6IHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzoxOQorbXNnaWQgImV4aXQgaW1tZWRpYXRlbHkgYWZ0ZXIgYWR2ZXJ0aXNpbmcgY2FwYWJpbGl0aWVzIgorbXNnc3RyICJkaXJla3QgbmFjaCBBbnplaWdlIGRlciBhbmdlYm90ZW5lbiBGw6RoaWdrZWl0ZW4gYmVlbmRlbiIKKwogIzogZ2l0LmM6MjcKIG1zZ2lkICIiCiAiZ2l0IFstLXZlcnNpb25dIFstLWhlbHBdIFstQyA8cGF0aD5dIFstYyA8bmFtZT49PHZhbHVlPl1cbiIKQEAgLTE4NzkxLDEwMiArMjI1OTIsMTU1IEBACiBtc2dpZCAiIgogIidnaXQgaGVscCAtYScgYW5kICdnaXQgaGVscCAtZycgbGlzdCBhdmFpbGFibGUgc3ViY29tbWFuZHMgYW5kIHNvbWVcbiIKICJjb25jZXB0IGd1aWRlcy4gU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIG9yICdnaXQgaGVscCA8Y29uY2VwdD4nXG4iCi0idG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC4iCisidG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC5cbiIKKyJTZWUgJ2dpdCBoZWxwIGdpdCcgZm9yIGFuIG92ZXJ2aWV3IG9mIHRoZSBzeXN0ZW0uIgogbXNnc3RyICIiCiAiJ2dpdCBoZWxwIC1hJyB1bmQgJ2dpdCBoZWxwIC1nJyBsaXN0ZXQgdmVyZsO8Z2JhcmUgVW50ZXJiZWZlaGxlIHVuZFxuIgogImVpbmlnZSBBbmxlaXR1bmdlbiB6dSBHaXQtS29uemVwdGVuIGF1Zi4gQmVudXR6ZW4gU2llICdnaXQgaGVscCA8QmVmZWhsPidcbiIKICJvZGVyICdnaXQgaGVscCA8S29uemVwdD4nLCB1bSBtZWhyIMO8YmVyIGVpbmVuIHNwZXppZmlzY2hlbiBCZWZlaGwgb2RlclxuIgotIktvbnplcHQgenUgZXJmYWhyZW4uIgorIktvbnplcHQgenUgZXJmYWhyZW4uXG4iCisiQmVudXR6ZW4gU2llICdnaXQgaGVscCBnaXQnIGbDvHIgZWluZW4gw5xiZXJibGljayBkZXMgU3lzdGVtcy4iCiAKLSM6IGdpdC5jOjE3MworIzogZ2l0LmM6MTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLS1naXQtZGlyXG4iCiBtc2dzdHIgIktlaW4gVmVyemVpY2huaXMgZsO8ciAtLWdpdC1kaXIgYW5nZWdlYmVuLlxuIgogCi0jOiBnaXQuYzoxODcKKyM6IGdpdC5jOjIwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBuYW1lc3BhY2UgZ2l2ZW4gZm9yIC0tbmFtZXNwYWNlXG4iCiBtc2dzdHIgIktlaW4gTmFtZXNwYWNlIGbDvHIgLS1uYW1lc3BhY2UgYW5nZWdlYmVuLlxuIgogCi0jOiBnaXQuYzoyMDEKKyM6IGdpdC5jOjIxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBkaXJlY3RvcnkgZ2l2ZW4gZm9yIC0td29yay10cmVlXG4iCiBtc2dzdHIgIktlaW4gVmVyemVpY2huaXMgZsO8ciAtLXdvcmstdHJlZSBhbmdlZ2ViZW4uXG4iCiAKLSM6IGdpdC5jOjIxNQorIzogZ2l0LmM6MjI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHByZWZpeCBnaXZlbiBmb3IgLS1zdXBlci1wcmVmaXhcbiIKIG1zZ3N0ciAiS2VpbiBQcsOkZml4IGbDvHIgLS1zdXBlci1wcmVmaXggYW5nZWdlYmVuLlxuIgogCi0jOiBnaXQuYzoyMzcKKyM6IGdpdC5jOjI1MAogIywgYy1mb3JtYXQKIG1zZ2lkICItYyBleHBlY3RzIGEgY29uZmlndXJhdGlvbiBzdHJpbmdcbiIKIG1zZ3N0ciAiLWMgZXJ3YXJ0ZXQgZWluZW4gS29uZmlndXJhdGlvbnNzdHJpbmcuXG4iCiAKLSM6IGdpdC5jOjI3NQorIzogZ2l0LmM6Mjg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLUNcbiIKIG1zZ3N0ciAiS2VpbiBWZXJ6ZWljaG5pcyBmw7xyIC1DIGFuZ2VnZWJlbi5cbiIKIAotIzogZ2l0LmM6MzAwCisjOiBnaXQuYzozMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvcHRpb246ICVzXG4iCiBtc2dzdHIgIlVuYmVrYW5udGUgT3B0aW9uOiAlc1xuIgogCi0jOiBnaXQuYzo3MTkKKyM6IGdpdC5jOjM2MAorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSBleHBhbmRpbmcgYWxpYXMgJyVzJzogJyVzJyIKK21zZ3N0ciAiYmVpbSBFcndlaXRlcm4gdm9uIEFsaWFzICclcyc6ICclcyciCisKKyM6IGdpdC5jOjM2OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWxpYXMgJyVzJyBjaGFuZ2VzIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiIKKyJZb3UgY2FuIHVzZSAnIWdpdCcgaW4gdGhlIGFsaWFzIHRvIGRvIHRoaXMiCittc2dzdHIgIiIKKyJBbGlhcyAnJXMnIMOkbmRlcnQgVW1nZWJ1bmdzdmFyaWFibGVuLlxuIgorIlNpZSBrw7ZubmVuICchZ2l0JyBpbSBBbGlhcyBiZW51dHplbiwgdW0gZGllcyB6dSB0dW4uIgorCisjOiBnaXQuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgYWxpYXMgZm9yICVzIgorbXNnc3RyICJsZWVyZXIgQWxpYXMgZsO8ciAlcyIKKworIzogZ2l0LmM6Mzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlY3Vyc2l2ZSBhbGlhczogJXMiCittc2dzdHIgInJla3Vyc2l2ZXIgQWxpYXM6ICVzIgorCisjOiBnaXQuYzo0NTkKK21zZ2lkICJ3cml0ZSBmYWlsdXJlIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiRmVobGVyIGJlaW0gU2NocmVpYmVuIGluIGRpZSBTdGFuZGFyZC1BdXNnYWJlLiIKKworIzogZ2l0LmM6NDYxCittc2dpZCAidW5rbm93biB3cml0ZSBmYWlsdXJlIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiVW5iZWthbm50ZXIgRmVobGVyIGJlaW0gU2NocmVpYmVuIGluIGRpZSBTdGFuZGFyZC1BdXNnYWJlLiIKKworIzogZ2l0LmM6NDYzCittc2dpZCAiY2xvc2UgZmFpbGVkIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiRmVobGVyIGJlaW0gU2NobGllw59lbiBkZXIgU3RhbmRhcmQtQXVzZ2FiZS4iCisKKyM6IGdpdC5jOjc5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhbGlhcyBsb29wIGRldGVjdGVkOiBleHBhbnNpb24gb2YgJyVzJyBkb2VzIG5vdCB0ZXJtaW5hdGU6JXMiCiBtc2dzdHIgIkFsaWFzLVNjaGxlaWZlIGVya2FubnQ6IEVyd2VpdGVydW5nIHZvbiAnJXMnIHNjaGxpZcOfdCBuaWNodCBhYjolcyIKIAotIzogZ2l0LmM6ODAyCisjOiBnaXQuYzo4NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGhhbmRsZSAlcyBhcyBhIGJ1aWx0aW4iCittc2dzdHIgIkthbm4gJXMgbmljaHQgYWxzIGVpbmdlYmF1dGVuIEJlZmVobCBiZWhhbmRlbG4uIgorCisjOiBnaXQuYzo4NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVzYWdlOiAlc1xuIgorIlxuIgorbXNnc3RyICIiCisiVmVyd2VuZHVuZzogJXNcbiIKKyJcbiIKKworIzogZ2l0LmM6ODc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGFuc2lvbiBvZiBhbGlhcyAnJXMnIGZhaWxlZDsgJyVzJyBpcyBub3QgYSBnaXQgY29tbWFuZFxuIgogbXNnc3RyICJFcndlaXRlcnVuZyB2b24gQWxpYXMgJyVzJyBmZWhsZ2VzY2hsYWdlbjsgJyVzJyBpc3Qga2VpbiBHaXQtQmVmZWhsLlxuIgogCi0jOiBnaXQuYzo4MTQKKyM6IGdpdC5jOjg4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcnVuIGNvbW1hbmQgJyVzJzogJXNcbiIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gQXVzZsO8aHJlbiB2b24gQmVmZWhsICclcyc6ICVzXG4iCiAKLSM6IGh0dHAuYzozNzQKKyM6IGh0dHAuYzozNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAibmVnYXRpdmUgdmFsdWUgZm9yIGh0dHAucG9zdGJ1ZmZlcjsgZGVmYXVsdGluZyB0byAlZCIKIG1zZ3N0ciAibmVnYXRpdmVyIFdlcnQgZsO8ciBodHRwLnBvc3RidWZmZXI7IGJlbnV0emUgU3RhbmRhcmR3ZXJ0ICVkIgogCi0jOiBodHRwLmM6Mzk1CisjOiBodHRwLmM6Mzk5CiBtc2dpZCAiRGVsZWdhdGlvbiBjb250cm9sIGlzIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy4yMi4wIgogbXNnc3RyICJLb250cm9sbGUgw7xiZXIgRGVsZWdhdGlvbiB3aXJkIG1pdCBjVVJMIDwgNy4yMi4wIG5pY2h0IHVudGVyc3TDvHR6dCIKIAotIzogaHR0cC5jOjQwNAorIzogaHR0cC5jOjQwOAogbXNnaWQgIlB1YmxpYyBrZXkgcGlubmluZyBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuNDQuMCIKIG1zZ3N0ciAiIgogIkRhcyBBbmhlZnRlbiBkZXMgw7ZmZmVudGxpY2hlbiBTY2hsw7xzc2VscyB3aXJkIG1pdCBjVVJMIDwgNy40NC4wXG4iCiAibmljaHQgdW50ZXJzdMO8dHp0LiIKIAotIzogaHR0cC5jOjgzNworIzogaHR0cC5jOjg3NgogbXNnaWQgIkNVUkxTU0xPUFRfTk9fUkVWT0tFIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy40NC4wIgogbXNnc3RyICJDVVJMU1NMT1BUX05PX1JFVk9LRSB3aXJkIG1pdCBjVVJMIDwgNy40NC4wIG5pY2h0IHVudGVyc3TDvHR6dC4iCiAKLSM6IGh0dHAuYzo5MTAKKyM6IGh0dHAuYzo5NDkKIG1zZ2lkICJQcm90b2NvbCByZXN0cmljdGlvbnMgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjE5LjQiCiBtc2dzdHIgIlByb3Rva29sbGJlc2NocsOkbmt1bmdlbiB3ZXJkZW4gbWl0IGNVUkwgPCA3LjE5LjQgbmljaHQgdW50ZXJzdMO8dHp0LiIKIAotIzogaHR0cC5jOjEwNDYKKyM6IGh0dHAuYzoxMDg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuc3VwcG9ydGVkIFNTTCBiYWNrZW5kICclcycuIFN1cHBvcnRlZCBTU0wgYmFja2VuZHM6IgogbXNnc3RyICJOaWNodCB1bnRlcnN0w7x0enRlcyBTU0wtQmFja2VuZCAnJXMnLiBVbnRlcnN0w7x0enRlIFNTTC1CYWNrZW5kczoiCiAKLSM6IGh0dHAuYzoxMDUzCisjOiBodHRwLmM6MTA5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc2V0IFNTTCBiYWNrZW5kIHRvICclcyc6IGNVUkwgd2FzIGJ1aWx0IHdpdGhvdXQgU1NMIGJhY2tlbmRzIgotbXNnc3RyICJLb25udGUgU1NMLUJhY2tlbmQgbmljaHQgenUgJyVzJyBzZXR6ZW46IGNVUkwgd3VyZGUgb2huZSBTU0wtQmFja2VuZHMgZ2ViYXV0LiIKK21zZ3N0ciAiIgorIktvbm50ZSBTU0wtQmFja2VuZCBuaWNodCB6dSAnJXMnIHNldHplbjogY1VSTCB3dXJkZSBvaG5lIFNTTC1CYWNrZW5kcyBnZWJhdXQuIgogCi0jOiBodHRwLmM6MTA1NworIzogaHR0cC5jOjEwOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldCBTU0wgYmFja2VuZCB0byAnJXMnOiBhbHJlYWR5IHNldCIKIG1zZ3N0ciAiS29ubnRlIFNTTC1CYWNrZW5kIG5pY2h0IHp1ICclcycgc2V0emVuOiBiZXJlaXRzIGdlc2V0enQiCiAKLSM6IGh0dHAuYzoxOTIxCisjOiBodHRwLmM6MTk2NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5hYmxlIHRvIHVwZGF0ZSB1cmwgYmFzZSBmcm9tIHJlZGlyZWN0aW9uOlxuIgpAQCAtMTg4OTcsMzkgKzIyNzUxLDE4MSBAQAogIiAgZ2VmcmFndCBuYWNoOiAlc1xuIgogIiAgICB1bWdlbGVpdGV0OiAlcyIKIAotIzogcmVtb3RlLWN1cmwuYzo0MDEKKyM6IHJlbW90ZS1jdXJsLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcXVvdGluZyBpbiBwdXNoLW9wdGlvbiB2YWx1ZTogJyVzJyIKK21zZ3N0ciAiVW5nw7xsdGlnZXMgUXVvdGluZyBiZWltIFwicHVzaC1vcHRpb25cIi1XZXJ0OiAnJXMnIgorCisjOiByZW1vdGUtY3VybC5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIlc2luZm8vcmVmcyBub3QgdmFsaWQ6IGlzIHRoaXMgYSBnaXQgcmVwb3NpdG9yeT8iCittc2dzdHIgIiVzaW5mby9yZWZzIG5pY2h0IGfDvGx0aWc6IElzdCBkYXMgZWluIEdpdC1SZXBvc2l0b3J5PyIKKworIzogcmVtb3RlLWN1cmwuYzozNjQKK21zZ2lkICJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZXhwZWN0ZWQgc2VydmljZSwgZ290IGZsdXNoIHBhY2tldCIKK21zZ3N0ciAiVW5nw7xsdGlnZSBBbnR3b3J0IGRlcyBTZXJ2ZXJzLiBTZXJ2aWNlIGVyd2FydGV0LCBGbHVzaC1QYWtldCBiZWtvbW1lbiIKKworIzogcmVtb3RlLWN1cmwuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzZXJ2ZXIgcmVzcG9uc2U7IGdvdCAnJXMnIgorbXNnc3RyICJVbmfDvGx0aWdlIFNlcnZlcmFudHdvcnQ7ICclcycgYmVrb21tZW4iCisKKyM6IHJlbW90ZS1jdXJsLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgInJlcG9zaXRvcnkgJyVzJyBub3QgZm91bmQiCittc2dzdHIgIlJlcG9zaXRvcnkgJyVzJyBuaWNodCBnZWZ1bmRlbi4iCisKKyM6IHJlbW90ZS1jdXJsLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW9uIGZhaWxlZCBmb3IgJyVzJyIKK21zZ3N0ciAiQXV0aGVudGlmaXppZXJ1bmcgZmVobGdlc2NobGFnZW4gZsO8ciAnJXMnIgorCisjOiByZW1vdGUtY3VybC5jOjQ2MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzICclcyc6ICVzIgorbXNnc3RyICJrb25udGUgbmljaHQgYXVmICclcycgenVncmVpZmVuOiAlcyIKKworIzogcmVtb3RlLWN1cmwuYzo0NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVkaXJlY3RpbmcgdG8gJXMiCiBtc2dzdHIgIkxlaXRlIG5hY2ggJXMgdW0iCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjYwCisjOiByZW1vdGUtY3VybC5jOjU5MworbXNnaWQgInNob3VsZG4ndCBoYXZlIEVPRiB3aGVuIG5vdCBnZW50bGUgb24gRU9GIgorbXNnc3RyICJzb2xsdGUga2VpbiBFT0YgaGFiZW4sIHdlbm4gbmljaHQgYmVodXRzYW0gbWl0IEVPRiIKKworIzogcmVtb3RlLWN1cmwuYzo2NzMKK21zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIHJwYyBwb3N0IGRhdGEgLSB0cnkgaW5jcmVhc2luZyBodHRwLnBvc3RCdWZmZXIiCittc2dzdHIgIiIKKyJLb25udGUgbmljaHQgUlBDLVBPU1QtRGF0ZW4genVyw7xja3NwdWxlbiAtIFZlcnN1Y2hlbiBTaWUgaHR0cC5wb3N0QnVmZmVyIHp1ICIKKyJlcmjDtmhlbiIKKworIzogcmVtb3RlLWN1cmwuYzo3MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUlBDIGZhaWxlZDsgJXMiCittc2dzdHIgIlJQQyBmZWhsZ2VzY2hsYWdlbjsgJXMiCisKKyM6IHJlbW90ZS1jdXJsLmM6NzczCittc2dpZCAiY2Fubm90IGhhbmRsZSBwdXNoZXMgdGhpcyBiaWciCittc2dzdHIgIkthbm4gc29sY2hlIGdyb8OfZW4gw5xiZXJ0cmFndW5nZW4gbmljaHQgdmVyYXJiZWl0ZW4uIgorCisjOiByZW1vdGUtY3VybC5jOjg4OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGRlZmxhdGUgZXJyb3IgJWQiCittc2dzdHIgIkthbm4gUmVxdWVzdCBuaWNodCBrb21wcmltaWVyZW47IFwiemxpYiBkZWZsYXRlXCItRmVobGVyICVkIgorCisjOiByZW1vdGUtY3VybC5jOjg5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGVuZCBlcnJvciAlZCIKK21zZ3N0ciAiS2FubiBSZXF1ZXN0IG5pY2h0IGtvbXByaW1pZXJlbjsgXCJ6bGliIGVuZFwiLUZlaGxlciAlZCIKKworIzogcmVtb3RlLWN1cmwuYzoxMDIzCittc2dpZCAiZHVtYiBodHRwIHRyYW5zcG9ydCBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2FwYWJpbGl0aWVzIgorbXNnc3RyICJEdW1iIEhUVFAtVHJhbnNwb3J0IHVudGVyc3TDvHR6dCBrZWluZSBzaGFsbG93LUZ1bmt0aW9uZW4iCisKKyM6IHJlbW90ZS1jdXJsLmM6MTAzOAorbXNnaWQgImZldGNoIGZhaWxlZC4iCittc2dzdHIgIlwiZmV0Y2hcIiBmZWhsZ2VzY2hsYWdlbi4iCisKKyM6IHJlbW90ZS1jdXJsLmM6MTA4NgorbXNnaWQgImNhbm5vdCBmZXRjaCBieSBzaGExIG92ZXIgc21hcnQgaHR0cCIKK21zZ3N0ciAiS2FubiBTSEEtMSBuaWNodCDDvGJlciBTbWFydC1IVFRQIGFuZm9yZGVybiIKKworIzogcmVtb3RlLWN1cmwuYzoxMTMwIHJlbW90ZS1jdXJsLmM6MTEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogZXhwZWN0ZWQgc2hhL3JlZiwgZ290ICclcyciCittc2dzdHIgIlByb3Rva29sbGZlaGxlcjogU0hBLTEvUmVmZXJlbnogZXJ3YXJ0ZXQsICclcycgYmVrb21tZW4iCisKKyM6IHJlbW90ZS1jdXJsLmM6MTE0OCByZW1vdGUtY3VybC5jOjEyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaHR0cCB0cmFuc3BvcnQgZG9lcyBub3Qgc3VwcG9ydCAlcyIKK21zZ3N0ciAiSFRUUC1UcmFuc3BvcnQgdW50ZXJzdMO8dHp0IG5pY2h0ICVzIgorCisjOiByZW1vdGUtY3VybC5jOjExODQKK21zZ2lkICJnaXQtaHR0cC1wdXNoIGZhaWxlZCIKK21zZ3N0ciAiXCJnaXQtaHR0cC1wdXNoXCIgZmVobGdlc2NobGFnZW4iCisKKyM6IHJlbW90ZS1jdXJsLmM6MTM2OQorbXNnaWQgInJlbW90ZS1jdXJsOiB1c2FnZTogZ2l0IHJlbW90ZS1jdXJsIDxyZW1vdGU+IFs8dXJsPl0iCittc2dzdHIgInJlbW90ZS1jdXJsOiBWZXJ3ZW5kdW5nOiBnaXQgcmVtb3RlLWN1cmwgPFJlbW90ZS1SZXBvc2l0b3J5PiBbPFVSTD5dIgorCisjOiByZW1vdGUtY3VybC5jOjE0MDEKK21zZ2lkICJyZW1vdGUtY3VybDogZXJyb3IgcmVhZGluZyBjb21tYW5kIHN0cmVhbSBmcm9tIGdpdCIKK21zZ3N0ciAicmVtb3RlLWN1cmw6IEZlaGxlciBiZWltIExlc2VuIGRlcyBLb21tYW5kby1TdHJlYW1zIHZvbiBHaXQiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQwOAorbXNnaWQgInJlbW90ZS1jdXJsOiBmZXRjaCBhdHRlbXB0ZWQgd2l0aG91dCBhIGxvY2FsIHJlcG8iCittc2dzdHIgInJlbW90ZS1jdXJsOiBcImZldGNoXCIgb2huZSBsb2thbGVzIFJlcG9zaXRvcnkgdmVyc3VjaHQiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdGUtY3VybDogdW5rbm93biBjb21tYW5kICclcycgZnJvbSBnaXQiCittc2dzdHIgInJlbW90ZS1jdXJsOiBVbmJla2FubnRlciBCZWZlaGwgJyVzJyB2b24gR2l0IgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo4NQogbXNnaWQgImFyZ3MiCiBtc2dzdHIgIkFyZ3VtZW50ZSIKIAotIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6NjEKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjg2CiBtc2dpZCAib2JqZWN0IGZpbHRlcmluZyIKIG1zZ3N0ciAiRmlsdGVybiBuYWNoIE9iamVrdGVuIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MTU0CisjOiBwYXJzZS1vcHRpb25zLmg6MTgzCiBtc2dpZCAiZXhwaXJ5LWRhdGUiCiBtc2dzdHIgIlZlcmZhbGxzZGF0dW0iCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNjkKKyM6IHBhcnNlLW9wdGlvbnMuaDoxOTcKIG1zZ2lkICJuby1vcCAoYmFja3dhcmQgY29tcGF0aWJpbGl0eSkiCiBtc2dzdHIgIktlaW4gRWZmZWt0IChSw7xja3fDpHJ0c2tvbXBhdGliaWxpdMOkdCkiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoyNjEKKyM6IHBhcnNlLW9wdGlvbnMuaDozMDkKIG1zZ2lkICJiZSBtb3JlIHZlcmJvc2UiCiBtc2dzdHIgImVyd2VpdGVydGUgQXVzZ2FiZW4iCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoyNjMKKyM6IHBhcnNlLW9wdGlvbnMuaDozMTEKIG1zZ2lkICJiZSBtb3JlIHF1aWV0IgogbXNnc3RyICJ3ZW5pZ2VyIEF1c2dhYmVuIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MjY5CisjOiBwYXJzZS1vcHRpb25zLmg6MzE3CiBtc2dpZCAidXNlIDxuPiBkaWdpdHMgdG8gZGlzcGxheSBTSEEtMXMiCiBtc2dzdHIgImJlbnV0emUgPG4+IFppZmZlcm4genVyIEFuemVpZ2Ugdm9uIFNIQS0xcyIKIAorIzogcGFyc2Utb3B0aW9ucy5oOjMzNgorbXNnaWQgImhvdyB0byBzdHJpcCBzcGFjZXMgYW5kICNjb21tZW50cyBmcm9tIG1lc3NhZ2UiCittc2dzdHIgIiIKKyJ3aWUgTGVlcnplaWNoZW4gdW5kICNLb21tZW50YXJlIHZvbiBkZXIgQmVzY2hyZWlidW5nIGdldHJlbm50IHdlcmRlbiBzb2xsZW4iCisKKyM6IHBhcnNlLW9wdGlvbnMuaDozMzcKK21zZ2lkICJyZWFkIHBhdGhzcGVjIGZyb20gZmlsZSIKK21zZ3N0ciAiUGZhZHNwZXppZmlrYXRpb24gYXVzIGVpbmVyIERhdGVpIGxlc2VuIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzM4Cittc2dpZCAiIgorIndpdGggLS1wYXRoc3BlYy1mcm9tLWZpbGUsIHBhdGhzcGVjIGVsZW1lbnRzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgorbXNnc3RyICIiCisiTWl0IGRlciBPcHRpb24gLS1wYXRoc3BlYy1mcm9tLWZpbGUgc2luZCBQZmFkZSBkdXJjaCBOVUwtWmVpY2hlbiBnZXRyZW5udCIKKworIzogcmVmLWZpbHRlci5oOjEwMQorbXNnaWQgImtleSIKK21zZ3N0ciAiU2Now7xzc2VsIgorCisjOiByZWYtZmlsdGVyLmg6MTAxCittc2dpZCAiZmllbGQgbmFtZSB0byBzb3J0IG9uIgorbXNnc3RyICJzb3J0aWVyZSBuYWNoIGRpZXNlbSBGZWxkIgorCisjOiByZXJlcmUuaDo0NAorbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKK21zZ3N0ciAiIgorIkluZGV4LCB3ZW5uIG3DtmdsaWNoLCBtaXQgd2llZGVydmVyd2VuZGV0ZXIgS29uZmxpa3RhdWZsw7ZzdW5nIGFrdHVhbGlzaWVyZW4iCisKKyM6IHd0LXN0YXR1cy5oOjY3Cittc2dpZCAiSEVBRCBkZXRhY2hlZCBhdCAiCittc2dzdHIgIkhFQUQgbG9zZ2Vsw7ZzdCBiZWkgIgorCisjOiB3dC1zdGF0dXMuaDo2OAorbXNnaWQgIkhFQUQgZGV0YWNoZWQgZnJvbSAiCittc2dzdHIgIkhFQUQgbG9zZ2Vsw7ZzdCB2b24gIgorCiAjOiBjb21tYW5kLWxpc3QuaDo1MAogbXNnaWQgIkFkZCBmaWxlIGNvbnRlbnRzIHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiRGF0ZWlpbmhhbHRlIHp1bSBDb21taXQgdm9ybWVya2VuIgpAQCAtMTkyMDEsOSArMjMxOTcsOSBAQAogbXNnc3RyICJJaHIgYWt0dWVsbGVzIFJlcG9zaXRvcnkgc29mb3J0IGluIGdpdHdlYiBiZXRyYWNodGVuIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMTMKLW1zZ2lkICJhZGQgb3IgcGFyc2Ugc3RydWN0dXJlZCBpbmZvcm1hdGlvbiBpbiBjb21taXQgbWVzc2FnZXMiCittc2dpZCAiQWRkIG9yIHBhcnNlIHN0cnVjdHVyZWQgaW5mb3JtYXRpb24gaW4gY29tbWl0IG1lc3NhZ2VzIgogbXNnc3RyICIiCi0ic3RydWt0dXJpZXJ0ZSBJbmZvcm1hdGlvbmVuIGluIENvbW1pdC1CZXNjaHJlaWJ1bmdlbiBoaW56dWbDvGdlbiBvZGVyIHBhcnNlbiIKKyJTdHJ1a3R1cmllcnRlIEluZm9ybWF0aW9uZW4gaW4gQ29tbWl0LUJlc2NocmVpYnVuZ2VuIGhpbnp1ZsO8Z2VuIG9kZXIgcGFyc2VuIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMTQKIG1zZ2lkICJUaGUgR2l0IHJlcG9zaXRvcnkgYnJvd3NlciIKQEAgLTE5MzgzLDIyNyArMjMzNzksMjM4IEBACiBtc2dzdHIgImFrdHVlbGxlbiBIRUFEIHp1IGVpbmVtIHNwZXppZml6aWVydGVuIFp1c3RhbmQgc2V0emVuIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNTYKK21zZ2lkICJSZXN0b3JlIHdvcmtpbmcgdHJlZSBmaWxlcyIKK21zZ3N0ciAiRGF0ZWllbiBpbSBBcmJlaXRzdmVyemVpY2huaXMgd2llZGVyaGVyc3RlbGxlbiIKKworIzogY29tbWFuZC1saXN0Lmg6MTU3CiBtc2dpZCAiUmV2ZXJ0IHNvbWUgZXhpc3RpbmcgY29tbWl0cyIKIG1zZ3N0ciAiZWluaWdlIGJlc3RlaGVuZGUgQ29tbWl0cyByw7xja2fDpG5naWcgbWFjaGVuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNTcKKyM6IGNvbW1hbmQtbGlzdC5oOjE1OAogbXNnaWQgIkxpc3RzIGNvbW1pdCBvYmplY3RzIGluIHJldmVyc2UgY2hyb25vbG9naWNhbCBvcmRlciIKIG1zZ3N0ciAiQ29tbWl0LU9iamVrdGUgaW4gdW1nZWtlaHJ0ZXIgY2hyb25vbG9naXNjaGVyIE9yZG51bmcgYXVmbGlzdGVuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNTgKKyM6IGNvbW1hbmQtbGlzdC5oOjE1OQogbXNnaWQgIlBpY2sgb3V0IGFuZCBtYXNzYWdlIHBhcmFtZXRlcnMiCiBtc2dzdHIgIlBhcmFtZXRlciBoZXJhdXNwaWNrZW4gdW5kIMOkbmRlcm4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE1OQorIzogY29tbWFuZC1saXN0Lmg6MTYwCiBtc2dpZCAiUmVtb3ZlIGZpbGVzIGZyb20gdGhlIHdvcmtpbmcgdHJlZSBhbmQgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgIkRhdGVpZW4gaW0gQXJiZWl0c3ZlcnplaWNobmlzIHVuZCB2b20gSW5kZXggbMO2c2NoZW4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2MAorIzogY29tbWFuZC1saXN0Lmg6MTYxCiBtc2dpZCAiU2VuZCBhIGNvbGxlY3Rpb24gb2YgcGF0Y2hlcyBhcyBlbWFpbHMiCiBtc2dzdHIgImVpbmUgU2FtbWx1bmcgdm9uIFBhdGNoZXMgYWxzIEUtTWFpbHMgdmVyc2VuZGVuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjEKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MgogbXNnaWQgIlB1c2ggb2JqZWN0cyBvdmVyIEdpdCBwcm90b2NvbCB0byBhbm90aGVyIHJlcG9zaXRvcnkiCiBtc2dzdHIgIk9iamVrdGUgw7xiZXIgZGFzIEdpdCBQcm90b2tvbGwgenUgZWluZW0gYW5kZXJlbiBSZXBvc2l0b3J5IMO8YmVydHJhZ2VuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjIKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MwogbXNnaWQgIlJlc3RyaWN0ZWQgbG9naW4gc2hlbGwgZm9yIEdpdC1vbmx5IFNTSCBhY2Nlc3MiCiBtc2dzdHIgIkxvZ2luLVNoZWxsIGJlc2NocsOkbmt0IGbDvHIgTnVyLUdpdCBTU0gtWnVncmlmZiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTYzCisjOiBjb21tYW5kLWxpc3QuaDoxNjQKIG1zZ2lkICJTdW1tYXJpemUgJ2dpdCBsb2cnIG91dHB1dCIKIG1zZ3N0ciAiQXVzZ2FiZSB2b24gJ2dpdCBsb2cnIHp1c2FtbWVuZmFzc2VuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjQKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NQogbXNnaWQgIlNob3cgdmFyaW91cyB0eXBlcyBvZiBvYmplY3RzIgogbXNnc3RyICJ2ZXJzY2hpZWRlbmUgQXJ0ZW4gdm9uIE9iamVrdGVuIGFuemVpZ2VuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjUKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NgogbXNnaWQgIlNob3cgYnJhbmNoZXMgYW5kIHRoZWlyIGNvbW1pdHMiCiBtc2dzdHIgIkJyYW5jaGVzIHVuZCBpaHJlIENvbW1pdHMgYXVzZ2ViZW4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NgorIzogY29tbWFuZC1saXN0Lmg6MTY3CiBtc2dpZCAiU2hvdyBwYWNrZWQgYXJjaGl2ZSBpbmRleCIKIG1zZ3N0ciAiZ2VwYWNrdGVuIEFyY2hpdi1JbmRleCBhbnplaWdlbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTY3CisjOiBjb21tYW5kLWxpc3QuaDoxNjgKIG1zZ2lkICJMaXN0IHJlZmVyZW5jZXMgaW4gYSBsb2NhbCByZXBvc2l0b3J5IgogbXNnc3RyICJSZWZlcmVuemVuIGluIGVpbmVtIGxva2FsZXMgUmVwb3NpdG9yeSBhdWZsaXN0ZW4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2OAorIzogY29tbWFuZC1saXN0Lmg6MTY5CiBtc2dpZCAiR2l0J3MgaTE4biBzZXR1cCBjb2RlIGZvciBzaGVsbCBzY3JpcHRzIgogbXNnc3RyICJHaXQncyBpMThuLUtvbmZpZ3VyYXRpb25zY29kZSBmw7xyIFNoZWxsLVNrcmlwdGUiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2OQorIzogY29tbWFuZC1saXN0Lmg6MTcwCiBtc2dpZCAiQ29tbW9uIEdpdCBzaGVsbCBzY3JpcHQgc2V0dXAgY29kZSIKIG1zZ3N0ciAiYWxsZ2VtZWluZXIgR2l0IFNoZWxsLVNrcmlwdCBLb25maWd1cmF0aW9uc2NvZGUiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3MAorIzogY29tbWFuZC1saXN0Lmg6MTcxCittc2dpZCAiSW5pdGlhbGl6ZSBhbmQgbW9kaWZ5IHRoZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgIkluaXRpYWxpc2llcmUgdW5kIHZlcsOkbmRlcmUgZGVuIHBhcnRpZWxsZW4gQ2hlY2tvdXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MgogbXNnaWQgIlN0YXNoIHRoZSBjaGFuZ2VzIGluIGEgZGlydHkgd29ya2luZyBkaXJlY3RvcnkgYXdheSIKIG1zZ3N0ciAiw4RuZGVydW5nZW4gaW4gZWluZW0gQXJiZWl0c3ZlcnplaWNobmlzIGF1ZmJld2FocmVuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzEKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MwogbXNnaWQgIkFkZCBmaWxlIGNvbnRlbnRzIHRvIHRoZSBzdGFnaW5nIGFyZWEiCiBtc2dzdHIgIkRhdGVpaW5oYWx0ZSBkZXIgU3RhZ2luZy1BcmVhIGhpbnp1ZsO8Z2VuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzIKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NAogbXNnaWQgIlNob3cgdGhlIHdvcmtpbmcgdHJlZSBzdGF0dXMiCiBtc2dzdHIgImRlbiBadXN0YW5kIGRlcyBBcmJlaXRzdmVyemVpY2huaXNzZXMgYW56ZWlnZW4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3MworIzogY29tbWFuZC1saXN0Lmg6MTc1CiBtc2dpZCAiUmVtb3ZlIHVubmVjZXNzYXJ5IHdoaXRlc3BhY2UiCiBtc2dzdHIgIm5pY2h0IGVyZm9yZGVybGljaGVuIFdoaXRlc3BhY2UgZW50ZmVybmVuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzQKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NgogbXNnaWQgIkluaXRpYWxpemUsIHVwZGF0ZSBvciBpbnNwZWN0IHN1Ym1vZHVsZXMiCiBtc2dzdHIgIlN1Ym1vZHVsZSBpbml0aWFsaXNpZXJlbiwgYWt0dWFsaXNpZXJlbiBvZGVyIGluc3BpemllcmVuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzUKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NwogbXNnaWQgIkJpZGlyZWN0aW9uYWwgb3BlcmF0aW9uIGJldHdlZW4gYSBTdWJ2ZXJzaW9uIHJlcG9zaXRvcnkgYW5kIEdpdCIKIG1zZ3N0ciAiIgogIkJpZGlyZWt0aW9uYWxlIE9wZXJhdGlvbmVuIHp3aXNjaGVuIGVpbmVtIFN1YnZlcnNpb24gUmVwb3NpdG9yeSB1bmQgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzYKKyM6IGNvbW1hbmQtbGlzdC5oOjE3OAorbXNnaWQgIlN3aXRjaCBicmFuY2hlcyIKK21zZ3N0ciAiQnJhbmNoZXMgd2VjaHNlbG4iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3OQogbXNnaWQgIlJlYWQsIG1vZGlmeSBhbmQgZGVsZXRlIHN5bWJvbGljIHJlZnMiCiBtc2dzdHIgInN5bWJvbGlzY2hlIFJlZmVyZW56ZW4gbGVzZW4sIMOkbmRlcm4gdW5kIGzDtnNjaGVuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzcKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MAogbXNnaWQgIkNyZWF0ZSwgbGlzdCwgZGVsZXRlIG9yIHZlcmlmeSBhIHRhZyBvYmplY3Qgc2lnbmVkIHdpdGggR1BHIgogbXNnc3RyICIiCiAiZWluIG1pdCBHUEcgc2lnbmllcnRlcyBUYWctT2JqZWt0IGVyemV1Z2VuLCBhdWZsaXN0ZW4sIGzDtnNjaGVuIG9kZXIgIgogInZlcmlmaXppZXJlbi4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3OAorIzogY29tbWFuZC1saXN0Lmg6MTgxCiBtc2dpZCAiQ3JlYXRlcyBhIHRlbXBvcmFyeSBmaWxlIHdpdGggYSBibG9iJ3MgY29udGVudHMiCiBtc2dzdHIgImVpbmUgdGVtcG9yw6RyZSBEYXRlaSBtaXQgZGVuIEluaGFsdGVuIGVpbmVzIEJsb2JzIGVyc3RlbGxlbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc5CisjOiBjb21tYW5kLWxpc3QuaDoxODIKIG1zZ2lkICJVbnBhY2sgb2JqZWN0cyBmcm9tIGEgcGFja2VkIGFyY2hpdmUiCiBtc2dzdHIgIk9iamVrdGUgdm9uIGVpbmVtIGdlcGFja3RlbiBBcmNoaXYgZW50cGFja2VuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODAKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MwogbXNnaWQgIlJlZ2lzdGVyIGZpbGUgY29udGVudHMgaW4gdGhlIHdvcmtpbmcgdHJlZSB0byB0aGUgaW5kZXgiCiBtc2dzdHIgIkRhdGVpaW5oYWx0ZSBhdXMgZGVtIEFyYmVpdHN2ZXJ6ZWljaG5pcyBpbSBJbmRleCByZWdpc3RyaWVyZW4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4MQorIzogY29tbWFuZC1saXN0Lmg6MTg0CiBtc2dpZCAiVXBkYXRlIHRoZSBvYmplY3QgbmFtZSBzdG9yZWQgaW4gYSByZWYgc2FmZWx5IgogbXNnc3RyICIiCiAiZGVuIE9iamVrdG5hbWVuLCBkZXIgaW4gZWluZXIgUmVmZXJlbnogZ2VzcGVpY2hlcnQgaXN0LCBzaWNoZXIgYWt0dWFsaXNpZXJlbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTgyCisjOiBjb21tYW5kLWxpc3QuaDoxODUKIG1zZ2lkICJVcGRhdGUgYXV4aWxpYXJ5IGluZm8gZmlsZSB0byBoZWxwIGR1bWIgc2VydmVycyIKIG1zZ3N0ciAiSGlsZnNpbmZvcm1hdGlvbnNkYXRlaSB6dXIgSGlsZmUgdm9uIGVpbmZhY2hlbiBTZXJ2ZXJuIGFrdHVhbGlzaWVyZW4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4MworIzogY29tbWFuZC1saXN0Lmg6MTg2CiBtc2dpZCAiU2VuZCBhcmNoaXZlIGJhY2sgdG8gZ2l0LWFyY2hpdmUiCiBtc2dzdHIgIkFyY2hpdiB6dXLDvGNrIHp1IGdpdC1hcmNoaXZlIHNlbmRlbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg0CisjOiBjb21tYW5kLWxpc3QuaDoxODcKIG1zZ2lkICJTZW5kIG9iamVjdHMgcGFja2VkIGJhY2sgdG8gZ2l0LWZldGNoLXBhY2siCiBtc2dzdHIgIk9iamVrdGUgZ2VwYWNrdCB6dXLDvGNrIGFuIGdpdC1mZXRjaC1wYWNrIHNlbmRlbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg1CisjOiBjb21tYW5kLWxpc3QuaDoxODgKIG1zZ2lkICJTaG93IGEgR2l0IGxvZ2ljYWwgdmFyaWFibGUiCiBtc2dzdHIgImVpbmUgbG9naXNjaGUgVmFyaWFibGUgdm9uIEdpdCBhbnplaWdlbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg2CisjOiBjb21tYW5kLWxpc3QuaDoxODkKIG1zZ2lkICJDaGVjayB0aGUgR1BHIHNpZ25hdHVyZSBvZiBjb21taXRzIgogbXNnc3RyICJkaWUgR1BHLVNpZ25hdHVyIHZvbiBDb21taXRzIHByw7xmZW4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4NworIzogY29tbWFuZC1saXN0Lmg6MTkwCiBtc2dpZCAiVmFsaWRhdGUgcGFja2VkIEdpdCBhcmNoaXZlIGZpbGVzIgogbXNnc3RyICJnZXBhY2t0ZSBHaXQtQXJjaGl2ZGF0ZWllbiB2YWxpZGllcmVuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODgKKyM6IGNvbW1hbmQtbGlzdC5oOjE5MQogbXNnaWQgIkNoZWNrIHRoZSBHUEcgc2lnbmF0dXJlIG9mIHRhZ3MiCiBtc2dzdHIgImRpZSBHUEctU2lnbmF0dXIgdm9uIFRhZ3MgcHLDvGZlbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg5CisjOiBjb21tYW5kLWxpc3QuaDoxOTIKIG1zZ2lkICJHaXQgd2ViIGludGVyZmFjZSAod2ViIGZyb250ZW5kIHRvIEdpdCByZXBvc2l0b3JpZXMpIgogbXNnc3RyICJHaXQgV2ViIEludGVyZmFjZSAoV2ViLUZyb250ZW5kIGbDvHIgR2l0LVJlcG9zaXRvcmllcykiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MAorIzogY29tbWFuZC1saXN0Lmg6MTkzCiBtc2dpZCAiU2hvdyBsb2dzIHdpdGggZGlmZmVyZW5jZSBlYWNoIGNvbW1pdCBpbnRyb2R1Y2VzIgogbXNnc3RyICJMb2dzIG1pdCBkZW0gVW50ZXJzY2hpZWQsIGRlbiBqZWRlciBDb21taXQgZWluZsO8aHJ0LCBhbnplaWdlbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTkxCisjOiBjb21tYW5kLWxpc3QuaDoxOTQKIG1zZ2lkICJNYW5hZ2UgbXVsdGlwbGUgd29ya2luZyB0cmVlcyIKIG1zZ3N0ciAibWVocmVyZSBBcmJlaXRzdmVyemVpY2huaXNzZSB2ZXJ3YWx0ZW4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MgorIzogY29tbWFuZC1saXN0Lmg6MTk1CiBtc2dpZCAiQ3JlYXRlIGEgdHJlZSBvYmplY3QgZnJvbSB0aGUgY3VycmVudCBpbmRleCIKIG1zZ3N0ciAiVHJlZS1PYmpla3Qgdm9tIGFrdHVlbGxlbiBJbmRleCBlcnN0ZWxsZW4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MworIzogY29tbWFuZC1saXN0Lmg6MTk2CiBtc2dpZCAiRGVmaW5pbmcgYXR0cmlidXRlcyBwZXIgcGF0aCIKIG1zZ3N0ciAiRGVmaW5pdGlvbiB2b24gQXR0cmlidXRlbiBwcm8gUGZhZCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk0CisjOiBjb21tYW5kLWxpc3QuaDoxOTcKIG1zZ2lkICJHaXQgY29tbWFuZC1saW5lIGludGVyZmFjZSBhbmQgY29udmVudGlvbnMiCiBtc2dzdHIgIkdpdCBLb21tYW5kb3plaWxlbnNjaG5pdHRzdGVsbGUgdW5kIEtvbnZlbnRpb25lbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk1CisjOiBjb21tYW5kLWxpc3QuaDoxOTgKIG1zZ2lkICJBIEdpdCBjb3JlIHR1dG9yaWFsIGZvciBkZXZlbG9wZXJzIgogbXNnc3RyICJlaW5lIEdpdCBBbmxlaXR1bmcgZsO8ciBFbnR3aWNrbGVyIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTYKKyM6IGNvbW1hbmQtbGlzdC5oOjE5OQogbXNnaWQgIkdpdCBmb3IgQ1ZTIHVzZXJzIgogbXNnc3RyICJHaXQgZsO8ciBDVlMgQmVudXR6ZXIiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5NworIzogY29tbWFuZC1saXN0Lmg6MjAwCiBtc2dpZCAiVHdlYWtpbmcgZGlmZiBvdXRwdXQiCiBtc2dzdHIgIkRpZmYtQXVzZ2FiZSBvcHRpbWllcmVuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTgKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMQogbXNnaWQgIkEgdXNlZnVsIG1pbmltdW0gc2V0IG9mIGNvbW1hbmRzIGZvciBFdmVyeWRheSBHaXQiCiBtc2dzdHIgIiIKICJlaW4ga2xlaW5lLCBuw7x0emxpY2hlIE1lbmdlIHZvbiBCZWZlaGxlbiBmw7xyIGRpZSB0w6RnbGljaGUgVmVyd2VuZHVuZyB2b24gR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTkKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMgogbXNnaWQgIkEgR2l0IEdsb3NzYXJ5IgogbXNnc3RyICJlaW4gR2l0LUdsb3NzYXIiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwMAorIzogY29tbWFuZC1saXN0Lmg6MjAzCiBtc2dpZCAiSG9va3MgdXNlZCBieSBHaXQiCiBtc2dzdHIgInZvbiBHaXQgdmVyd2VuZGV0ZSBIb29rcyIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAxCisjOiBjb21tYW5kLWxpc3QuaDoyMDQKIG1zZ2lkICJTcGVjaWZpZXMgaW50ZW50aW9uYWxseSB1bnRyYWNrZWQgZmlsZXMgdG8gaWdub3JlIgogbXNnc3RyICJTcGV6aWZpa2F0aW9uIHZvbiBiZXd1c3N0IGlnbm9yaWVydGVuLCB1bnZlcnNpb25pZXJ0ZW4gRGF0ZWllbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAyCisjOiBjb21tYW5kLWxpc3QuaDoyMDUKIG1zZ2lkICJEZWZpbmluZyBzdWJtb2R1bGUgcHJvcGVydGllcyIKIG1zZ3N0ciAiRGVmaW5pdGlvbiB2b24gU3VibW9kdWwtRWlnZW5zY2hhZnRlbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAzCisjOiBjb21tYW5kLWxpc3QuaDoyMDYKIG1zZ2lkICJHaXQgbmFtZXNwYWNlcyIKIG1zZ3N0ciAiR2l0IE5hbWVuc2JlcmVpY2hlIgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDQKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNwogbXNnaWQgIkdpdCBSZXBvc2l0b3J5IExheW91dCIKIG1zZ3N0ciAiR2l0IFJlcG9zaXRvcnkgQXVmYmF1IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDUKKyM6IGNvbW1hbmQtbGlzdC5oOjIwOAogbXNnaWQgIlNwZWNpZnlpbmcgcmV2aXNpb25zIGFuZCByYW5nZXMgZm9yIEdpdCIKIG1zZ3N0ciAiU3BlemlmaWthdGlvbiB2b24gQ29tbWl0cyB1bmQgQmVyZWljaGVuIGbDvHIgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDYKKyM6IGNvbW1hbmQtbGlzdC5oOjIwOQorbXNnaWQgIk1vdW50aW5nIG9uZSByZXBvc2l0b3J5IGluc2lkZSBhbm90aGVyIgorbXNnc3RyICJFaW5iaW5kZW4gZWluZXMgUmVwb3NpdG9yaWVzIGluIGVpbiBhbmRlcmVzIgorCisjOiBjb21tYW5kLWxpc3QuaDoyMTAKIG1zZ2lkICJBIHR1dG9yaWFsIGludHJvZHVjdGlvbiB0byBHaXQ6IHBhcnQgdHdvIgogbXNnc3RyICJlaW5lIGVpbmbDvGhyZW5kZSBBbmxlaXR1bmcgenUgR2l0OiBUZWlsIHp3ZWkiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwNworIzogY29tbWFuZC1saXN0Lmg6MjExCiBtc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0IgogbXNnc3RyICJlaW5lIGVpbmbDvGhyZW5kZSBBbmxlaXR1bmcgenUgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDgKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMgogbXNnaWQgIkFuIG92ZXJ2aWV3IG9mIHJlY29tbWVuZGVkIHdvcmtmbG93cyB3aXRoIEdpdCIKIG1zZ3N0ciAiRWluZSDDnGJlcnNpY2h0IMO8YmVyIGVtcGZvaGxlbmUgQXJiZWl0c2FibMOkdWZlIG1pdCBHaXQiCiAKLSM6IHJlcmVyZS5oOjQ0Ci1tc2dpZCAidXBkYXRlIHRoZSBpbmRleCB3aXRoIHJldXNlZCBjb25mbGljdCByZXNvbHV0aW9uIGlmIHBvc3NpYmxlIgotbXNnc3RyICIiCi0iSW5kZXgsIHdlbm4gbcO2Z2xpY2gsIG1pdCB3aWVkZXJ2ZXJ3ZW5kZXRlciBLb25mbGlrdGF1ZmzDtnN1bmcgYWt0dWFsaXNpZXJlbiIKLQogIzogZ2l0LWJpc2VjdC5zaDo1NAogbXNnaWQgIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiIgogbXNnc3RyICJTaWUgbcO8c3NlbiBtaXQgXCJnaXQgYmlzZWN0IHN0YXJ0XCIgYmVnaW5uZW4uIgpAQCAtMTk2MTUsMTUyICsyMzYyMiw2MiBAQAogbXNnaWQgIkRvIHlvdSB3YW50IG1lIHRvIGRvIGl0IGZvciB5b3UgW1kvbl0/ICIKIG1zZ3N0ciAiV29sbGVuIFNpZSwgZGFzcyBpY2ggZXMgZsO8ciBTaWUgbWFjaGUgW1kvbl0/ICIKIAotIzogZ2l0LWJpc2VjdC5zaDoxMjEKLSMsIHNoLWZvcm1hdAotbXNnaWQgInVucmVjb2duaXNlZCBvcHRpb246ICckYXJnJyIKLW1zZ3N0ciAibmljaHQgZXJrYW5udGUgT3B0aW9uOiAnJGFyZyciCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTI1Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICInJGFyZycgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGEgdmFsaWQgcmV2aXNpb24iCi1tc2dzdHIgIickYXJnJyBzY2hlaW50IGtlaW4gZ8O8bHRpZ2VyIENvbW1pdCB6dSBzZWluIgotCi0jOiBnaXQtYmlzZWN0LnNoOjE1NAotbXNnaWQgIkJhZCBIRUFEIC0gSSBuZWVkIGEgSEVBRCIKLW1zZ3N0ciAiVW5nw7xsdGlnZXIgSEVBRCAtIEhFQUQgd2lyZCBiZW7DtnRpZ3QiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTY3Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iQ2hlY2tpbmcgb3V0ICckc3RhcnRfaGVhZCcgZmFpbGVkLiBUcnkgJ2dpdCBiaXNlY3QgcmVzZXQgPHZhbGlkLWJyYW5jaD4nLiIKLW1zZ3N0ciAiIgotIkF1c2NoZWNrZW4gdm9uICckc3RhcnRfaGVhZCcgZmVobGdlc2NobGFnZW4uIFZlcnN1Y2hlbiBTaWUgJ2dpdCBiaXNlY3QgcmVzZXQgIgotIjxnw7xsdGlnZXItQnJhbmNoPicuIgotCi0jOiBnaXQtYmlzZWN0LnNoOjE3NwotbXNnaWQgIndvbid0IGJpc2VjdCBvbiBjZy1zZWVrJ2VkIHRyZWUiCi1tc2dzdHIgIiIKLSJiaW7DpHJlIFN1Y2hlIGF1ZiBlaW5lbSBkdXJjaCAnY2ctc2VlaycgZ2XDpG5kZXJ0ZW0gVmVyemVpY2huaXMgbmljaHQgbcO2Z2xpY2giCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTgxCi1tc2dpZCAiQmFkIEhFQUQgLSBzdHJhbmdlIHN5bWJvbGljIHJlZiIKLW1zZ3N0ciAiVW5nw7xsdGlnZXIgSEVBRCAtIG1lcmt3w7xyZGlnZSBzeW1ib2xpc2NoZSBSZWZlcmVueiIKLQotIzogZ2l0LWJpc2VjdC5zaDoyMzMKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkJhZCBiaXNlY3Rfd3JpdGUgYXJndW1lbnQ6ICRzdGF0ZSIKLW1zZ3N0ciAiVW5nw7xsdGlnZXMgXCJiaXNlY3Rfd3JpdGVcIiBBcmd1bWVudDogJHN0YXRlIgotCi0jOiBnaXQtYmlzZWN0LnNoOjI0NgorIzogZ2l0LWJpc2VjdC5zaDoxMDEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRhcmciCiBtc2dzdHIgIlVuZ8O8bHRpZ2UgUmVmZXJlbnotRWluZ2FiZTogJGFyZyIKIAotIzogZ2l0LWJpc2VjdC5zaDoyNjUKKyM6IGdpdC1iaXNlY3Quc2g6MTIxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJCYWQgcmV2IGlucHV0OiAkYmlzZWN0ZWRfaGVhZCIKIG1zZ3N0ciAiVW5nw7xsdGlnZSBSZWZlcmVuei1FaW5nYWJlOiAkYmlzZWN0ZWRfaGVhZCIKIAotIzogZ2l0LWJpc2VjdC5zaDoyNzQKKyM6IGdpdC1iaXNlY3Quc2g6MTMwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJCYWQgcmV2IGlucHV0OiAkcmV2IgogbXNnc3RyICJVbmfDvGx0aWdlIFJlZmVyZW56LUVpbmdhYmU6ICRyZXYiCiAKLSM6IGdpdC1iaXNlY3Quc2g6MjgzCisjOiBnaXQtYmlzZWN0LnNoOjEzOQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJ2dpdCBiaXNlY3QgJFRFUk1fQkFEJyBjYW4gdGFrZSBvbmx5IG9uZSBhcmd1bWVudC4iCiBtc2dzdHIgIidnaXQgYmlzZWN0ICRURVJNX0JBRCcga2FubiBudXIgZWluIEFyZ3VtZW50IGVudGdlZ2VubmVobWVuLiIKIAotIzogZ2l0LWJpc2VjdC5zaDozMDYKLSMsIHNoLWZvcm1hdAotbXNnaWQgIldhcm5pbmc6IGJpc2VjdGluZyBvbmx5IHdpdGggYSAkVEVSTV9CQUQgY29tbWl0LiIKLW1zZ3N0ciAiV2FybnVuZzogYmluw6RyZSBTdWNoZSBudXIgbWl0IGVpbmVtICRURVJNX0JBRCBDb21taXQuIgotCi0jLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW1ldIGFuZCBbbl0gaW4geW91cgotIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAotIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1iaXNlY3Quc2g6MzEyCi1tc2dpZCAiQXJlIHlvdSBzdXJlIFtZL25dPyAiCi1tc2dzdHIgIlNpbmQgU2llIHNpY2hlciBbWS9uXT8gIgotCi0jOiBnaXQtYmlzZWN0LnNoOjMyNAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICRiYWRfc3luIGFuZCBvbmUgJGdvb2Rfc3luIHJldmlzaW9uLlxuIgotIihZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJGJhZF9zeW5cIiBhbmQgXCJnaXQgYmlzZWN0ICRnb29kX3N5blwiIGZvciB0aGF0LikiCi1tc2dzdHIgIiIKLSJTaWUgbcO8c3NlbiBtaW5kZXN0ZW5zIGVpbmVuIFwiJGJhZF9zeW5cIiB1bmQgZWluZW4gXCIkZ29vZF9zeW5cIiBDb21taXQgIgotImFuZ2ViZW4uXG4iCi0iKFNpZSBrw7ZubmVuIGRhZsO8ciBcImdpdCBiaXNlY3QgJGJhZF9zeW5cIiB1bmQgXCJnaXQgYmlzZWN0ICRnb29kX3N5blwiICIKLSJiZW51dHplbi4pIgotCi0jOiBnaXQtYmlzZWN0LnNoOjMyNwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgotIllvdSB0aGVuIG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJGdvb2Rfc3luIGFuZCBvbmUgJGJhZF9zeW4gcmV2aXNpb24uXG4iCi0iKFlvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGFuZCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgZm9yIHRoYXQuKSIKLW1zZ3N0ciAiIgotIlNpZSBtw7xzc2VuIG1pdCBcImdpdCBiaXNlY3Qgc3RhcnRcIiBiZWdpbm5lbi5cbiIKLSJEYW5hY2ggbcO8c3NlbiBTaWUgbWluZGVzdGVucyBlaW5lbiBcIiRnb29kX3N5blwiIHVuZCBlaW5lbiBcIiRiYWRfc3luXCIgIgotIkNvbW1pdCBhbmdlYmVuLlxuIgotIihTaWUga8O2bm5lbiBkYWbDvHIgXCJnaXQgYmlzZWN0ICRiYWRfc3luXCIgdW5kIFwiZ2l0IGJpc2VjdCAkZ29vZF9zeW5cIiAiCi0iYmVudXR6ZW4uKSIKLQotIzogZ2l0LWJpc2VjdC5zaDozOTggZ2l0LWJpc2VjdC5zaDo1MTIKLW1zZ2lkICJXZSBhcmUgbm90IGJpc2VjdGluZy4iCi1tc2dzdHIgImtlaW5lIGJpbsOkcmUgU3VjaGUgaW0gR2FuZ2UiCi0KLSM6IGdpdC1iaXNlY3Quc2g6NDA1Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICInJGludmFsaWQnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIKLW1zZ3N0ciAiJyRpbnZhbGlkJyBpc3Qga2VpbiBnw7xsdGlnZXIgQ29tbWl0IgotCi0jOiBnaXQtYmlzZWN0LnNoOjQxNAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIkNvdWxkIG5vdCBjaGVjayBvdXQgb3JpZ2luYWwgSEVBRCAnJGJyYW5jaCcuXG4iCi0iVHJ5ICdnaXQgYmlzZWN0IHJlc2V0IDxjb21taXQ+Jy4iCi1tc2dzdHIgIiIKLSJLb25udGUgZGVuIHVyc3Byw7xuZ2xpY2hlbiBIRUFEICckYnJhbmNoJyBuaWNodCBhdXNjaGVja2VuLlxuIgotIlZlcnN1Y2hlbiBTaWUgJ2dpdCBiaXNlY3QgcmVzZXQgPENvbW1pdD4nLiIKLQotIzogZ2l0LWJpc2VjdC5zaDo0MjIKKyM6IGdpdC1iaXNlY3Quc2g6MjA5CiBtc2dpZCAiTm8gbG9nZmlsZSBnaXZlbiIKIG1zZ3N0ciAiS2VpbmUgTG9nLURhdGVpIGdlZ2ViZW4iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDIzCisjOiBnaXQtYmlzZWN0LnNoOjIxMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJGZpbGUgZm9yIHJlcGxheWluZyIKIG1zZ3N0ciAia2FubiAkZmlsZSBuaWNodCBmw7xyIGRhcyBBYnNwaWVsZW4gbGVzZW4iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDQ0CisjOiBnaXQtYmlzZWN0LnNoOjIzMgogbXNnaWQgIj8/IHdoYXQgYXJlIHlvdSB0YWxraW5nIGFib3V0PyIKIG1zZ3N0ciAiPz8gV2FzIHJlZGVuIFNpZSBkYT8iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDUzCisjOiBnaXQtYmlzZWN0LnNoOjI0MQogbXNnaWQgImJpc2VjdCBydW4gZmFpbGVkOiBubyBjb21tYW5kIHByb3ZpZGVkLiIKIG1zZ3N0ciAiJ2Jpc2VjdCBydW4nIGZlaGxnZXNjaGxhZ2VuOiBrZWluIEJlZmVobCBhbmdlZ2ViZW4uIgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ1OAorIzogZ2l0LWJpc2VjdC5zaDoyNDYKICMsIHNoLWZvcm1hdAogbXNnaWQgInJ1bm5pbmcgJGNvbW1hbmQiCiBtc2dzdHIgImbDvGhyZSAkY29tbWFuZCBhdXMiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDY1CisjOiBnaXQtYmlzZWN0LnNoOjI1MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogImJpc2VjdCBydW4gZmFpbGVkOlxuIgogImV4aXQgY29kZSAkcmVzIGZyb20gJyRjb21tYW5kJyBpcyA8IDAgb3IgPj0gMTI4IgogbXNnc3RyICIiCiAiJ2Jpc2VjdCBydW4nIGZlaGxnZXNjaGxhZ2VuOlxuIgotIlLDvGNra2VocndlcnQgJHJlcyB2b24gJyRjb21tYW5kJyBpc3QgPCAwIG9kZXIgPj0gMTI4IgorIkV4aXQtQ29kZSAkcmVzIHZvbiAnJGNvbW1hbmQnIGlzdCA8IDAgb2RlciA+PSAxMjgiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDkxCisjOiBnaXQtYmlzZWN0LnNoOjI3OQogbXNnaWQgImJpc2VjdCBydW4gY2Fubm90IGNvbnRpbnVlIGFueSBtb3JlIgogbXNnc3RyICInYmlzZWN0IHJ1bicga2FubiBuaWNodCBtZWhyIGZvcnRnZXNldHp0IHdlcmRlbiIKIAotIzogZ2l0LWJpc2VjdC5zaDo0OTcKKyM6IGdpdC1iaXNlY3Quc2g6Mjg1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiYmlzZWN0IHJ1biBmYWlsZWQ6XG4iCkBAIC0xOTc2OSwyOSArMjM2ODYsMTMgQEAKICInYmlzZWN0IHJ1bicgZmVobGdlc2NobGFnZW46XG4iCiAiJ2Jpc2VjdF9zdGF0ZSAkc3RhdGUnIHd1cmRlIG1pdCBGZWhsZXJ3ZXJ0ICRyZXMgYmVlbmRldCIKIAotIzogZ2l0LWJpc2VjdC5zaDo1MDQKKyM6IGdpdC1iaXNlY3Quc2g6MjkyCiBtc2dpZCAiYmlzZWN0IHJ1biBzdWNjZXNzIgogbXNnc3RyICInYmlzZWN0IHJ1bicgZXJmb2xncmVpY2ggYXVzZ2Vmw7xocnQiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NTMzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJJbnZhbGlkIGNvbW1hbmQ6IHlvdSdyZSBjdXJyZW50bHkgaW4gYSAkVEVSTV9CQUQvJFRFUk1fR09PRCBiaXNlY3QuIgotbXNnc3RyICIiCi0iVW5nw7xsdGlnZXIgQmVmZWhsOiBTaWUgc2luZCBnZXJhZGUgYmVpIGVpbmVyIGJpbsOkcmVuICRURVJNX0JBRC8kVEVSTV9HT09EICIKLSJTdWNoZS4iCi0KLSM6IGdpdC1iaXNlY3Quc2g6NTY3Ci1tc2dpZCAibm8gdGVybXMgZGVmaW5lZCIKLW1zZ3N0ciAiS2VpbmUgQmVncmlmZmUgZGVmaW5pZXJ0LiIKLQotIzogZ2l0LWJpc2VjdC5zaDo1ODQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJpbnZhbGlkIGFyZ3VtZW50ICRhcmcgZm9yICdnaXQgYmlzZWN0IHRlcm1zJy5cbiIKLSJTdXBwb3J0ZWQgb3B0aW9ucyBhcmU6IC0tdGVybS1nb29kfC0tdGVybS1vbGQgYW5kIC0tdGVybS1iYWR8LS10ZXJtLW5ldy4iCi1tc2dzdHIgIiIKLSJVbmfDvGx0aWdlcyBBcmd1bWVudCAkYXJnIGbDvHIgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgotIlVudGVyc3TDvHR6dGUgT3B0aW9uZW4gc2luZDogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCB1bmQgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKKyM6IGdpdC1iaXNlY3Quc2g6MzAwCittc2dpZCAiV2UgYXJlIG5vdCBiaXNlY3RpbmcuIgorbXNnc3RyICJrZWluZSBiaW7DpHJlIFN1Y2hlIGltIEdhbmdlIgogCiAjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo0NgogbXNnaWQgIiIKQEAgLTE5ODM0LDI5OSArMjM3MzUsMTMzIEBACiBtc2dpZCAiU2ltcGxlIG1lcmdlIGRpZCBub3Qgd29yaywgdHJ5aW5nIGF1dG9tYXRpYyBtZXJnZS4iCiBtc2dzdHIgIkVpbmZhY2hlciBNZXJnZSBoYXQgbmljaHQgZnVua3Rpb25pZXJ0LCB2ZXJzdWNoZSBhdXRvbWF0aXNjaGVuIE1lcmdlLiIKIAotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDM0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgbW92ZSBiYWNrIHRvICRoZWFkX25hbWUiCi1tc2dzdHIgIktvbm50ZSBuaWNodCB6dSAkaGVhZF9uYW1lIHp1csO8Y2tnZWhlbiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDYwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iSXQgc2VlbXMgdGhhdCB0aGVyZSBpcyBhbHJlYWR5IGEgJHN0YXRlX2Rpcl9iYXNlIGRpcmVjdG9yeSwgYW5kXG4iCi0iSSB3b25kZXIgaWYgeW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgcmViYXNlLiAgSWYgdGhhdCBpcyB0aGVcbiIKLSJjYXNlLCBwbGVhc2UgdHJ5XG4iCi0iXHQkY21kX2xpdmVfcmViYXNlXG4iCi0iSWYgdGhhdCBpcyBub3QgdGhlIGNhc2UsIHBsZWFzZVxuIgotIlx0JGNtZF9jbGVhcl9zdGFsZV9yZWJhc2VcbiIKLSJhbmQgcnVuIG1lIGFnYWluLiAgSSBhbSBzdG9wcGluZyBpbiBjYXNlIHlvdSBzdGlsbCBoYXZlIHNvbWV0aGluZ1xuIgotInZhbHVhYmxlIHRoZXJlLiIKLW1zZ3N0ciAiIgotIkVzIHNpZWh0IHNvIGF1cywgYWxzIG9iIGVzIGRhcyBWZXJ6ZWljaG5pcyAkc3RhdGVfZGlyX2Jhc2UgYmVyZWl0cyBnaWJ0XG4iCi0idW5kIGVzIGvDtm5udGUgZWluIGFuZGVyZXIgUmViYXNlIGltIEdhbmdlIHNlaW4uIFdlbm4gZGFzIGRlciBGYWxsIGlzdCxcbiIKLSJwcm9iaWVyZW4gU2llIGJpdHRlXG4iCi0iXHQkY21kX2xpdmVfcmViYXNlXG4iCi0iV2VubiBkYXMgbmljaHQgZGVyIEZhbGwgaXN0LCBwcm9iaWVyZW4gU2llIGJpdHRlXG4iCi0iXHQkY21kX2NsZWFyX3N0YWxlX3JlYmFzZVxuIgotInVuZCBmw7xocmVuIFNpZSBkaWVzZW4gQmVmZWhsIG5vY2htYWwgYXVzLiBFcyB3aXJkIGFuZ2VoYWx0ZW4sIGZhbGxzIG5vY2hcbiIKLSJldHdhcyBTY2jDvHR6ZW5zd2VydGVzIHZvcmhhbmRlbiBpc3QuIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1MjUKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tc2lnbm9mZicgd2l0aCAnLS1wcmVzZXJ2ZS1tZXJnZXMnIgotbXNnc3RyICIiCi0iRmVobGVyOiAnLS1zaWdub2ZmJyB1bmQgJy0tcHJlc2VydmUtbWVyZ2VzJyBrw7ZubmVuIG5pY2h0IGtvbWJpbmllcnQgd2VyZGVuLiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTcwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICckdXBzdHJlYW1fbmFtZSciCi1tc2dzdHIgIlVuZ8O8bHRpZ2VyIFVwc3RyZWFtLUJyYW5jaCAnJHVwc3RyZWFtX25hbWUnLiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTk0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIkb250b19uYW1lOiB0aGVyZSBhcmUgbW9yZSB0aGFuIG9uZSBtZXJnZSBiYXNlcyIKLW1zZ3N0ciAiJG9udG9fbmFtZTogZXMgZ2lidCBtZWhyIGFscyBlaW5lIE1lcmdlLUJhc2lzIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1OTcgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjAxCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICIkb250b19uYW1lOiB0aGVyZSBpcyBubyBtZXJnZSBiYXNlIgotbXNnc3RyICIkb250b19uYW1lOiBlcyBnaWJ0IGtlaW5lIE1lcmdlLUJhc2lzIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2MDYKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkRvZXMgbm90IHBvaW50IHRvIGEgdmFsaWQgY29tbWl0OiAkb250b19uYW1lIgotbXNnc3RyICIkb250b19uYW1lIHplaWd0IGF1ZiBrZWluZW4gZ8O8bHRpZ2VuIENvbW1pdCIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjMyCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICckYnJhbmNoX25hbWUnIgotbXNnc3RyICJmYXRhbDogQnJhbmNoL0NvbW1pdCAnJGJyYW5jaF9uYW1lJyBuaWNodCBnZWZ1bmRlbiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjcwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJHN0YXNoX2FiYnJldiIKLW1zZ3N0ciAiQXV0b21hdGlzY2hlbiBTdGFzaCBlcnpldWd0OiAkc3Rhc2hfYWJicmV2IgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2OTkKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkN1cnJlbnQgYnJhbmNoICRicmFuY2hfbmFtZSBpcyB1cCB0byBkYXRlLiIKLW1zZ3N0ciAiQWt0dWVsbGVyIEJyYW5jaCAkYnJhbmNoX25hbWUgaXN0IGF1ZiBkZW0gbmV1ZXN0ZW4gU3RhbmQuIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MDkKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkN1cnJlbnQgYnJhbmNoICRicmFuY2hfbmFtZSBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLiIKLW1zZ3N0ciAiIgotIkFrdHVlbGxlciBCcmFuY2ggJGJyYW5jaF9uYW1lIGlzdCBhdWYgZGVtIG5ldWVzdGVuIFN0YW5kLCBSZWJhc2UgZXJ6d3VuZ2VuLiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzIzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDaGFuZ2VzIHRvICRvbnRvOiIKLW1zZ3N0ciAiw4RuZGVydW5nZW4genUgJG9udG86IgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MjUKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkNoYW5nZXMgZnJvbSAkbWIgdG8gJG9udG86IgotbXNnc3RyICLDhG5kZXJ1bmdlbiB2b24gJG1iIHp1ICRvbnRvOiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzM2Ci1tc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uIgotbXNnc3RyICIiCi0iWnVuw6RjaHN0IHdpcmQgZGVyIEJyYW5jaCB6dXLDvGNrZ2VzcHVsdCwgdW0gSWhyZSDDhG5kZXJ1bmdlblxuIgotImRhcmF1ZiBuZXUgYW56dXdlbmRlbiAuLi4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjc0NgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRmFzdC1mb3J3YXJkZWQgJGJyYW5jaF9uYW1lIHRvICRvbnRvX25hbWUuIgotbXNnc3RyICIkYnJhbmNoX25hbWUgenUgJG9udG9fbmFtZSB2b3JnZXNwdWx0LiIKLQotIzogZ2l0LXN0YXNoLnNoOjYxCi1tc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIHdpdGggcGFyYW1ldGVycyBpcyB1bmltcGxlbWVudGVkIgotbXNnc3RyICJnaXQgc3Rhc2ggY2xlYXIgbWl0IFBhcmFtZXRlcm4gaXN0IG5pY2h0IGltcGxlbWVudGllcnQiCi0KLSM6IGdpdC1zdGFzaC5zaDoxMDgKLW1zZ2lkICJZb3UgZG8gbm90IGhhdmUgdGhlIGluaXRpYWwgY29tbWl0IHlldCIKLW1zZ3N0ciAiU2llIGhhYmVuIGJpc2hlciBub2NoIGtlaW5lbiBpbml0aWFsZW4gQ29tbWl0IgotCi0jOiBnaXQtc3Rhc2guc2g6MTIzCi1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgaW5kZXggc3RhdGUiCi1tc2dzdHIgIkthbm4gZGVuIGFrdHVlbGxlbiBadXN0YW5kIGRlcyBJbmRleCBuaWNodCBzcGVpY2hlcm4iCi0KLSM6IGdpdC1zdGFzaC5zaDoxMzgKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgdW50cmFja2VkIGZpbGVzIgotbXNnc3RyICJLYW5uIGRpZSB1bnZlcnNpb25pZXJ0ZW4gRGF0ZWllbiBuaWNodCBzcGVpY2hlcm4iCi0KLSM6IGdpdC1zdGFzaC5zaDoxNTggZ2l0LXN0YXNoLnNoOjE3MQotbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHdvcmt0cmVlIHN0YXRlIgotbXNnc3RyICJLYW5uIGRlbiBha3R1ZWxsZW4gWnVzdGFuZCBkZXMgQXJiZWl0c3ZlcnplaWNobmlzc2VzIG5pY2h0IHNwZWljaGVybiIKLQotIzogZ2l0LXN0YXNoLnNoOjE3NQotbXNnaWQgIk5vIGNoYW5nZXMgc2VsZWN0ZWQiCi1tc2dzdHIgIktlaW5lIMOEbmRlcnVuZ2VuIGF1c2dld8OkaGx0IgotCi0jOiBnaXQtc3Rhc2guc2g6MTc4CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIyMQogbXNnaWQgIkNhbm5vdCByZW1vdmUgdGVtcG9yYXJ5IGluZGV4IChjYW4ndCBoYXBwZW4pIgogbXNnc3RyICJLYW5uIHRlbXBvcsOkcmVuIEluZGV4IG5pY2h0IGzDtnNjaGVuIChrYW5uIG5pY2h0IHBhc3NpZXJlbikiCiAKLSM6IGdpdC1zdGFzaC5zaDoxOTEKLW1zZ2lkICJDYW5ub3QgcmVjb3JkIHdvcmtpbmcgdHJlZSBzdGF0ZSIKLW1zZ3N0ciAiS2FubiBadXN0YW5kIGRlcyBBcmJlaXRzdmVyemVpY2huaXNzZXMgbmljaHQgYXVmemVpY2huZW4iCi0KLSM6IGdpdC1zdGFzaC5zaDoyMjkKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjcyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgdXBkYXRlICRyZWZfc3Rhc2ggd2l0aCAkd19jb21taXQiCiBtc2dzdHIgIkthbm4gJHJlZl9zdGFzaCBuaWNodCBtaXQgJHdfY29tbWl0IGFrdHVhbGlzaWVyZW4uIgogCi0jOiBnaXQtc3Rhc2guc2g6MjgxCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjMyNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiZXJyb3I6IHVua25vd24gb3B0aW9uIGZvciAnc3Rhc2ggcHVzaCc6ICRvcHRpb24iCiBtc2dzdHIgIkZlaGxlcjogdW5iZWthbm50ZSBPcHRpb24gZsO8ciAnc3Rhc2ggcHVzaCc6ICRvcHRpb24iCiAKLSM6IGdpdC1zdGFzaC5zaDoyOTUKLW1zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgotbXNnc3RyICIiCi0iS2FubiBuaWNodCBnbGVpY2h6ZWl0aWcgLS1wYXRjaCB1bmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvZGVyIC0tYWxsIHZlcndlbmRlbiIKLQotIzogZ2l0LXN0YXNoLnNoOjMwMwotbXNnaWQgIk5vIGxvY2FsIGNoYW5nZXMgdG8gc2F2ZSIKLW1zZ3N0ciAiS2VpbmUgbG9rYWxlbiDDhG5kZXJ1bmdlbiB6dW0gU3BlaWNoZXJuIgotCi0jOiBnaXQtc3Rhc2guc2g6MzA4Ci1tc2dpZCAiQ2Fubm90IGluaXRpYWxpemUgc3Rhc2giCi1tc2dzdHIgIkthbm4gXCJzdGFzaFwiIG5pY2h0IGluaXRpYWxpc2llcmVuIgotCi0jOiBnaXQtc3Rhc2guc2g6MzEyCi1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgc3RhdHVzIgotbXNnc3RyICJLYW5uIGRlbiBha3R1ZWxsZW4gU3RhdHVzIG5pY2h0IHNwZWljaGVybiIKLQotIzogZ2l0LXN0YXNoLnNoOjMxMworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlNhdmVkIHdvcmtpbmcgZGlyZWN0b3J5IGFuZCBpbmRleCBzdGF0ZSAkc3Rhc2hfbXNnIgogbXNnc3RyICJTcGVpY2hlcnRlIEFyYmVpdHN2ZXJ6ZWljaG5pcyB1bmQgSW5kZXgtU3RhdHVzICRzdGFzaF9tc2ciCiAKLSM6IGdpdC1zdGFzaC5zaDozNDIKLW1zZ2lkICJDYW5ub3QgcmVtb3ZlIHdvcmt0cmVlIGNoYW5nZXMiCi1tc2dzdHIgIkthbm4gw4RuZGVydW5nZW4gaW0gQXJiZWl0c3ZlcnplaWNobmlzIG5pY2h0IGzDtnNjaGVuIgotCi0jOiBnaXQtc3Rhc2guc2g6NDkwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjUzNgogIywgc2gtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvcHRpb246ICRvcHQiCiBtc2dzdHIgInVuYmVrYW5udGUgT3B0aW9uOiAkb3B0IgogCi0jOiBnaXQtc3Rhc2guc2g6NTAzCi1tc2dpZCAiTm8gc3Rhc2ggZW50cmllcyBmb3VuZC4iCi1tc2dzdHIgIktlaW5lIFN0YXNoLUVpbnRyw6RnZSBnZWZ1bmRlbi4iCi0KLSM6IGdpdC1zdGFzaC5zaDo1MTAKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NTU2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJUb28gbWFueSByZXZpc2lvbnMgc3BlY2lmaWVkOiAkUkVWIgogbXNnc3RyICJadSB2aWVsZSBDb21taXRzIGFuZ2VnZWJlbjogJFJFViIKIAotIzogZ2l0LXN0YXNoLnNoOjUyNQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NzEKICMsIHNoLWZvcm1hdAogbXNnaWQgIiRyZWZlcmVuY2UgaXMgbm90IGEgdmFsaWQgcmVmZXJlbmNlIgogbXNnc3RyICIkcmVmZXJlbmNlIGlzdCBrZWluZSBnw7xsdGlnZSBSZWZlcmVueiIKIAotIzogZ2l0LXN0YXNoLnNoOjU1MworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1OTkKICMsIHNoLWZvcm1hdAogbXNnaWQgIickYXJncycgaXMgbm90IGEgc3Rhc2gtbGlrZSBjb21taXQiCiBtc2dzdHIgIickYXJncycgaXN0IGtlaW4gXCJzdGFzaFwiLWFydGlnZXIgQ29tbWl0IgogCi0jOiBnaXQtc3Rhc2guc2g6NTY0CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYxMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRhcmdzJyBpcyBub3QgYSBzdGFzaCByZWZlcmVuY2UiCiBtc2dzdHIgIickYXJncycgaXN0IGtlaW5lIFwic3Rhc2hcIi1SZWZlcmVueiIKIAotIzogZ2l0LXN0YXNoLnNoOjU3MgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MTgKIG1zZ2lkICJ1bmFibGUgdG8gcmVmcmVzaCBpbmRleCIKIG1zZ3N0ciAiS29ubnRlIGRlbiBJbmRleCBuaWNodCBha3R1YWxpc2llcmVuLiIKIAotIzogZ2l0LXN0YXNoLnNoOjU3NgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MjIKIG1zZ2lkICJDYW5ub3QgYXBwbHkgYSBzdGFzaCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UiCiBtc2dzdHIgIkthbm4gXCJzdGFzaFwiIG5pY2h0IGFud2VuZGVuLCBzb2xhbmdlIGVpbiBNZXJnZSBpbSBHYW5nZSBpc3QiCiAKLSM6IGdpdC1zdGFzaC5zaDo1ODQKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjMwCiBtc2dpZCAiQ29uZmxpY3RzIGluIGluZGV4LiBUcnkgd2l0aG91dCAtLWluZGV4LiIKIG1zZ3N0ciAiS29uZmxpa3RlIGltIEluZGV4LiBWZXJzdWNoZW4gU2llIGVzIG9obmUgLS1pbmRleC4iCiAKLSM6IGdpdC1zdGFzaC5zaDo1ODYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjMyCiBtc2dpZCAiQ291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKIG1zZ3N0ciAiS29ubnRlIEluZGV4LVZlcnplaWNobmlzIG5pY2h0IHNwZWljaGVybiIKIAotIzogZ2l0LXN0YXNoLnNoOjU5NQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2NDEKIG1zZ2lkICJDb3VsZCBub3QgcmVzdG9yZSB1bnRyYWNrZWQgZmlsZXMgZnJvbSBzdGFzaCBlbnRyeSIKIG1zZ3N0ciAiIgogIktvbm50ZSB1bnZlcnNpb25pZXJ0ZSBEYXRlaWVuIHZvbSBTdGFzaC1FaW50cmFnIG5pY2h0IHdpZWRlcmhlcnN0ZWxsZW4uIgogCi0jOiBnaXQtc3Rhc2guc2g6NjIwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjY2NgogbXNnaWQgIkNhbm5vdCB1bnN0YWdlIG1vZGlmaWVkIGZpbGVzIgogbXNnc3RyICJLYW5uIGdlw6RuZGVydGUgRGF0ZWllbiBuaWNodCBhdXMgZGVtIEluZGV4IGVudGZlcm5lbiIKIAotIzogZ2l0LXN0YXNoLnNoOjYzNQotbXNnaWQgIkluZGV4IHdhcyBub3QgdW5zdGFzaGVkLiIKLW1zZ3N0ciAiSW5kZXggd3VyZGUgbmljaHQgYXVzIGRlbSBTdGFzaCB6dXLDvGNrZ2VsYWRlbi4iCi0KLSM6IGdpdC1zdGFzaC5zaDo2NDkKLW1zZ2lkICJUaGUgc3Rhc2ggZW50cnkgaXMga2VwdCBpbiBjYXNlIHlvdSBuZWVkIGl0IGFnYWluLiIKLW1zZ3N0ciAiIgotIkRlciBTdGFzaC1FaW50cmFnIHdpcmQgZsO8ciBkZW4gRmFsbCBiZWhhbHRlbiwgZGFzcyBTaWUgZGllc2VuIG5vY2htYWwgIgotImJlbsO2dGlnZW4uIgotCi0jOiBnaXQtc3Rhc2guc2g6NjU4CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjcwNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiRHJvcHBlZCAke1JFVn0gKCRzKSIKIG1zZ3N0ciAiJHtSRVZ9ICgkcykgZ2Vsw7ZzY2h0IgogCi0jOiBnaXQtc3Rhc2guc2g6NjU5CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjcwNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJHtSRVZ9OiBDb3VsZCBub3QgZHJvcCBzdGFzaCBlbnRyeSIKIG1zZ3N0ciAiJHtSRVZ9OiBLb25udGUgXCJzdGFzaFwiLUVpbnRyYWcgbmljaHQgbMO2c2NoZW4iCiAKLSM6IGdpdC1zdGFzaC5zaDo2NjcKLW1zZ2lkICJObyBicmFuY2ggbmFtZSBzcGVjaWZpZWQiCi1tc2dzdHIgIktlaW4gQnJhbmNobmFtZSBzcGV6aWZpemllcnQiCi0KLSM6IGdpdC1zdGFzaC5zaDo3NDYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzkyCiBtc2dpZCAiKFRvIHJlc3RvcmUgdGhlbSB0eXBlIFwiZ2l0IHN0YXNoIGFwcGx5XCIpIgogbXNnc3RyICIoWnVyIFdpZWRlcmhlcnN0ZWxsdW5nIGdlYmVuIFNpZSBcImdpdCBzdGFzaCBhcHBseVwiIGVpbikiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MTk4CisjOiBnaXQtc3VibW9kdWxlLnNoOjIwMwogbXNnaWQgIlJlbGF0aXZlIHBhdGggY2FuIG9ubHkgYmUgdXNlZCBmcm9tIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICIiCiAiUmVsYXRpdmUgUGZhZGUga8O2bm5lbiBudXIgdm9uIGRlciBvYmVyc3RlbiBFYmVuZSBkZXMgQXJiZWl0c3ZlcnplaWNobmlzc2VzICIKICJiZW51dHp0IHdlcmRlbi4iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjA4CisjOiBnaXQtc3VibW9kdWxlLnNoOjIxMwogIywgc2gtZm9ybWF0CiBtc2dpZCAicmVwbyBVUkw6ICckcmVwbycgbXVzdCBiZSBhYnNvbHV0ZSBvciBiZWdpbiB3aXRoIC4vfC4uLyIKIG1zZ3N0ciAicmVwbyBVUkw6ICckcmVwbycgbXVzcyBhYnNvbHV0IHNlaW4gb2RlciBtaXQgLi98Li4vIGJlZ2lubmVuIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjIyNworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzIKICMsIHNoLWZvcm1hdAogbXNnaWQgIickc21fcGF0aCcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGluZGV4IgogbXNnc3RyICInJHNtX3BhdGgnIGlzdCBiZXJlaXRzIHp1bSBDb21taXQgdm9yZ2VtZXJrdCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzAKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjM1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGluIHRoZSBpbmRleCBhbmQgaXMgbm90IGEgc3VibW9kdWxlIgogbXNnc3RyICInJHNtX3BhdGgnIGlzdCBiZXJlaXRzIHp1bSBDb21taXQgdm9yZ2VtZXJrdCB1bmQgaXN0IGtlaW4gU3VibW9kdWwiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjM2CisjOiBnaXQtc3VibW9kdWxlLnNoOjI0MgogIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIlRoZSBmb2xsb3dpbmcgcGF0aCBpcyBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCi0iJHNtX3BhdGhcbiIKLSJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCBpdC4iCi1tc2dzdHIgIiIKLSJEZXIgZm9sZ2VuZGUgUGZhZCB3aXJkIGR1cmNoIGVpbmUgSWhyZXIgXCIuZ2l0aWdub3JlXCIgRGF0ZWllbiBpZ25vcmllcnQ6XG4iCi0iJHNtX3BhdGhcbiIKLSJCZW51dHplbiBTaWUgLWYgd2VubiBTaWUgZGllc2VuIHdpcmtsaWNoIGhpbnp1ZsO8Z2VuIG3DtmNodGVuLiIKK21zZ2lkICInJHNtX3BhdGgnIGRvZXMgbm90IGhhdmUgYSBjb21taXQgY2hlY2tlZCBvdXQiCittc2dzdHIgIickc21fcGF0aCcgaGF0IGtlaW5lbiBDb21taXQgYXVzZ2VjaGVja3QiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjU5CisjOiBnaXQtc3VibW9kdWxlLnNoOjI3MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiQWRkaW5nIGV4aXN0aW5nIHJlcG8gYXQgJyRzbV9wYXRoJyB0byB0aGUgaW5kZXgiCiBtc2dzdHIgIkbDvGdlIGV4aXN0aWVyZW5kZXMgUmVwb3NpdG9yeSBpbiAnJHNtX3BhdGgnIGRlbSBJbmRleCBoaW56dS4iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjYxCisjOiBnaXQtc3VibW9kdWxlLnNoOjI3NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBhbmQgaXMgbm90IGEgdmFsaWQgZ2l0IHJlcG8iCiBtc2dzdHIgIickc21fcGF0aCcgZXhpc3RpZXJ0IGJlcmVpdHMgdW5kIGlzdCBrZWluIGfDvGx0aWdlcyBHaXQtUmVwb3NpdG9yeSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNjkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjgzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJBIGdpdCBkaXJlY3RvcnkgZm9yICckc21fbmFtZScgaXMgZm91bmQgbG9jYWxseSB3aXRoIHJlbW90ZShzKToiCiBtc2dzdHIgIiIKICJFaW4gR2l0LVZlcnplaWNobmlzIGbDvHIgJyRzbV9uYW1lJyB3dXJkZSBsb2thbCBnZWZ1bmRlbiBtaXQgZGVuIFJlbW90ZS0iCiAiUmVwb3NpdG9yaWVzOiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzEKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjg1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiSWYgeW91IHdhbnQgdG8gcmV1c2UgdGhpcyBsb2NhbCBnaXQgZGlyZWN0b3J5IGluc3RlYWQgb2YgY2xvbmluZyBhZ2FpbiBmcm9tXG4iCkBAIC0yMDE0NCwzNyArMjM4NzksMzcgQEAKICJuaWNodCBkYXMga29ycmVrdGUgUmVwb3NpdG9yeSBpc3Qgb2RlciBTaWUgdW5zaWNoZXIgc2luZCwgd2FzIGRhcyBiZWRldXRldCxcbiIKICJ3w6RobGVuIFNpZSBlaW5lbiBhbmRlcmVuIE5hbWVuIG1pdCBkZXIgT3B0aW9uICctLW5hbWUnLiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzcKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJSZWFjdGl2YXRpbmcgbG9jYWwgZ2l0IGRpcmVjdG9yeSBmb3Igc3VibW9kdWxlICckc21fbmFtZScuIgogbXNnc3RyICJSZWFrdGl2aWVyZSBsb2thbGVzIEdpdC1WZXJ6ZWljaG5pcyBmw7xyIFN1Ym1vZHVsICckc21fbmFtZScuIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI4OQorIzogZ2l0LXN1Ym1vZHVsZS5zaDozMDMKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBjaGVja291dCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAiS2FubiBTdWJtb2R1bCAnJHNtX3BhdGgnIG5pY2h0IGF1c2NoZWNrZW4iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6Mjk0CisjOiBnaXQtc3VibW9kdWxlLnNoOjMwOAogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGFkZCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAiSGluenVmw7xnZW4gdm9uIFN1Ym1vZHVsICckc21fcGF0aCcgZmVobGdlc2NobGFnZW4iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MzAzCisjOiBnaXQtc3VibW9kdWxlLnNoOjMxNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICJGZWhsZXIgYmVpbSBFaW50cmFnZW4gdm9uIFN1Ym1vZHVsICckc21fcGF0aCcgaW4gZGllIEtvbmZpZ3VyYXRpb24uIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU2MworIzogZ2l0LXN1Ym1vZHVsZS5zaDo1OTAKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBmaW5kIGN1cnJlbnQgcmV2aXNpb24gaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIktvbm50ZSBha3R1ZWxsZW4gQ29tbWl0IGluIFN1Ym1vZHVsLVBmYWQgJyRkaXNwbGF5cGF0aCcgbmljaHQgZmluZGVuLiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NzMKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjAwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJyRzbV9wYXRoJyIKIG1zZ3N0ciAiS29ubnRlIFwiZmV0Y2hcIiBpbiBTdWJtb2R1bC1QZmFkICckc21fcGF0aCcgbmljaHQgYXVzZsO8aHJlbiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NzgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjA1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiVW5hYmxlIHRvIGZpbmQgY3VycmVudCAke3JlbW90ZV9uYW1lfS8ke2JyYW5jaH0gcmV2aXNpb24gaW4gc3VibW9kdWxlIHBhdGggIgpAQCAtMjAxODMsMTIgKzIzOTE4LDE2IEBACiAiS29ubnRlIGFrdHVlbGxlbiBDb21taXQgdm9uICR7cmVtb3RlX25hbWV9LyR7YnJhbmNofSBpbiBTdWJtb2R1bC1QZmFkXG4iCiAiJyRzbV9wYXRoJyBuaWNodCBmaW5kZW4uIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU5NgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjMKICMsIHNoLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKLW1zZ3N0ciAiS29ubnRlIFwiZmV0Y2hcIiBpbiBTdWJtb2R1bC1QZmFkICckZGlzcGxheXBhdGgnIG5pY2h0IGF1c2bDvGhyZW4iCittc2dpZCAiIgorIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzsgdHJ5aW5nIHRvIGRpcmVjdGx5IGZldGNoICIKKyIkc2hhMToiCittc2dzdHIgIiIKKyJLb25udGUgXCJmZXRjaFwiIGluIFN1Ym1vZHVsLVBmYWQgJyRkaXNwbGF5cGF0aCcgbmljaHQgYXVzZsO8aHJlbi4gVmVyc3VjaGUgIgorIiRzaGExIGRpcmVrdCBhbnp1Zm9yZGVybjoiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjAyCisjOiBnaXQtc3VibW9kdWxlLnNoOjYyOQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIkZldGNoZWQgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCcsIGJ1dCBpdCBkaWQgbm90IGNvbnRhaW4gJHNoYTEuICIKQEAgLTIwMTk3LDc0ICsyMzkzNiw3NCBAQAogIlwiZmV0Y2hcIiBpbiBTdWJtb2R1bC1QZmFkICckZGlzcGxheXBhdGgnIGF1c2dlZsO8aHJ0LCBhYmVyICRzaGExIG5pY2h0XG4iCiAiZW50aGFsdGVuLiBEaXJla3RlcyBBbmZvcmRlcm4gZGllc2VzIENvbW1pdHMgaXN0IGZlaGxnZXNjaGxhZ2VuLiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjM2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gY2hlY2tvdXQgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiS29ubnRlICckc2hhMScgaW4gU3VibW9kdWwtUGZhZCAnJGRpc3BsYXlwYXRoJyBuaWNodCBhdXNjaGVja2VuLiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MTAKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjM3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogY2hlY2tlZCBvdXQgJyRzaGExJyIKIG1zZ3N0ciAiU3VibW9kdWwtUGZhZDogJyRkaXNwbGF5cGF0aCc6ICckc2hhMScgYXVzZ2VjaGVja3QiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjE0CisjOiBnaXQtc3VibW9kdWxlLnNoOjY0MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIHJlYmFzZSAnJHNoYTEnIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICJSZWJhc2UgYXVmICckc2hhMScgaW4gU3VibW9kdWwtUGZhZCAnJGRpc3BsYXlwYXRoJyBuaWNodCBtw7ZnbGljaCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MTUKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogcmViYXNlZCBpbnRvICckc2hhMSciCiBtc2dzdHIgIlN1Ym1vZHVsLVBmYWQgJyRkaXNwbGF5cGF0aCc6IFJlYmFzZSBhdWYgJyRzaGExJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjAKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQ3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gbWVyZ2UgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiTWVyZ2Ugdm9uICckc2hhMScgaW4gU3VibW9kdWwtUGZhZCAnJGRpc3BsYXlwYXRoJyBmZWhsZ2VzY2hsYWdlbiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjEKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQ4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogbWVyZ2VkIGluICckc2hhMSciCiBtc2dzdHIgIlN1Ym1vZHVsLVBmYWQgJyRkaXNwbGF5cGF0aCc6IHp1c2FtbWVuZ2Vmw7xocnQgaW4gJyRzaGExJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjUzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJFeGVjdXRpb24gb2YgJyRjb21tYW5kICRzaGExJyBmYWlsZWQgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIiIKICJBdXNmw7xocnVuZyB2b24gJyRjb21tYW5kICRzaGExJyBpbiBTdWJtb2R1bC1QZmFkICckZGlzcGxheXBhdGgnICIKICJmZWhsZ2VzY2hsYWdlbiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjcKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjU0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogJyRjb21tYW5kICRzaGExJyIKIG1zZ3N0ciAiU3VibW9kdWwtUGZhZCAnJGRpc3BsYXlwYXRoJzogJyRjb21tYW5kICRzaGExJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NTgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Njg1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICJGZWhsZXIgYmVpIFJla3Vyc2lvbiBpbiBTdWJtb2R1bC1QZmFkICckZGlzcGxheXBhdGgnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjc1NAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo4OTYKIG1zZ2lkICJUaGUgLS1jYWNoZWQgb3B0aW9uIGNhbm5vdCBiZSB1c2VkIHdpdGggdGhlIC0tZmlsZXMgb3B0aW9uIgogbXNnc3RyICIiCiAiRGllIE9wdGlvbmVuIC0tY2FjaGVkIHVuZCAtLWZpbGVzIGvDtm5uZW4gbmljaHQgZ2VtZWluc2FtIHZlcndlbmRldCB3ZXJkZW4uIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjgwNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NDgKICMsIHNoLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgbW9kZSAkbW9kX2RzdCIKIG1zZ3N0ciAidW5lcndhcnRldGVyIE1vZHVzICRtb2RfZHN0IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjgyNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NjgKICMsIHNoLWZvcm1hdAogbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX3NyYyIKIG1zZ3N0ciAiICBXYXJudW5nOiAkZGlzcGxheV9uYW1lIGJlaW5oYWx0ZXQgbmljaHQgQ29tbWl0ICRzaGExX3NyYyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MjkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTcxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdCAkc2hhMV9kc3QiCiBtc2dzdHIgIiAgV2FybnVuZzogJGRpc3BsYXlfbmFtZSBiZWluaGFsdGV0IG5pY2h0IENvbW1pdCAkc2hhMV9kc3QiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODMyCisjOiBnaXQtc3VibW9kdWxlLnNoOjk3NAogIywgc2gtZm9ybWF0CiBtc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXRzICRzaGExX3NyYyBhbmQgJHNoYTFfZHN0IgogbXNnc3RyICIiCkBAIC0yMDI3NSwxMiArMjQwMTQsMjEgQEAKIG1zZ2lkICJTZWUgZ2l0LSR7Y21kfSgxKSBmb3IgZGV0YWlscy4iCiBtc2dzdHIgIlNpZWhlIGdpdC0ke2NtZH0oMSkgZsO8ciB3ZWl0ZXJlIERldGFpbHMuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTM2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTA5Cittc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guIgorbXNnc3RyICJBdXRvbWF0aXNjaGVuIFN0YXNoIGFuZ2V3ZW5kZXQuIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTEyCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3Qgc3RvcmUgJHN0YXNoX3NoYTEiCittc2dzdHIgIkthbm4gJHN0YXNoX3NoYTEgbmljaHQgc3BlaWNoZXJuLiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE5MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiUmViYXNpbmcgKCRuZXdfY291bnQvJHRvdGFsKSIKIG1zZ3N0ciAiRsO8aHJlIFJlYmFzZSBhdXMgKCRuZXdfY291bnQvJHRvdGFsKSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE1MgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIwNwogbXNnaWQgIiIKICJcbiIKICJDb21tYW5kczpcbiIKQEAgLTIwMzIyLDcgKzI0MDcwLDcgQEAKICJEaWVzZSBaZWlsZW4ga8O2bm5lbiB1bXNvcnRpZXJ0IHdlcmRlbjsgU2llIHdlcmRlbiB2b24gb2JlbiBuYWNoIHVudGVuXG4iCiAiYXVzZ2Vmw7xocnQuXG4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMTUKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyNzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgY2FuIGFtZW5kIHRoZSBjb21taXQgbm93LCB3aXRoXG4iCkBAIC0yMDM0MSw4MyArMjQwODksODMgQEAKICJcbiIKICJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI0MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI5NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJHNoYTE6IG5vdCBhIGNvbW1pdCB0aGF0IGNhbiBiZSBwaWNrZWQiCiBtc2dzdHIgIiRzaGExOiBrZWluIENvbW1pdCBkZXIgZ2VwaWNrdCB3ZXJkZW4ga2FubiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI3OQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjMzNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBjb21taXQgbmFtZTogJHNoYTEiCiBtc2dzdHIgIlVuZ8O8bHRpZ2VyIENvbW1pdC1OYW1lOiAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjMwOQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2NAogbXNnaWQgIkNhbm5vdCB3cml0ZSBjdXJyZW50IGNvbW1pdCdzIHJlcGxhY2VtZW50IHNoYTEiCiBtc2dzdHIgIkthbm4gZXJzZXR6ZW5kZW4gU0hBLTEgZGVzIGFrdHVlbGxlbiBDb21taXRzIG5pY2h0IHNjaHJlaWJlbiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFzdC1mb3J3YXJkIHRvICRzaGExIgogbXNnc3RyICJTcHVsZSB2b3IgenUgJHNoYTEiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNjIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MTcKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBmYXN0LWZvcndhcmQgdG8gJHNoYTEiCiBtc2dzdHIgIkthbm4gbmljaHQgenUgJHNoYTEgdm9yc3B1bGVuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzcxCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDI2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgbW92ZSBIRUFEIHRvICRmaXJzdF9wYXJlbnQiCiBtc2dzdHIgIkthbm4gSEVBRCBuaWNodCBhdWYgJGZpcnN0X3BhcmVudCBzZXR6ZW4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNzYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MzEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIHNxdWFzaCBhIG1lcmdlOiAkc2hhMSIKIG1zZ3N0ciAiXCJzcXVhc2hcIiBlaW5lcyBNZXJnZXMgKCRzaGExKSB6dXLDvGNrZ2V3aWVzZW4uIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mzk0CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQ5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJFcnJvciByZWRvaW5nIG1lcmdlICRzaGExIgogbXNnc3RyICJGZWhsZXIgYmVpbSBXaWVkZXJob2xlbiBkZXMgTWVyZ2VzIHZvbiAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQwMworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ1OAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHBpY2sgJHNoYTEiCiBtc2dzdHIgIktvbm50ZSAkc2hhMSBuaWNodCBwaWNrZW4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MTIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NjcKICMsIHNoLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgdGhlIGNvbW1pdCBtZXNzYWdlICMke259OiIKIG1zZ3N0ciAiRGFzIGlzdCBDb21taXQtQmVzY2hyZWlidW5nICMke259OiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ3MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhlIGNvbW1pdCBtZXNzYWdlICMke259IHdpbGwgYmUgc2tpcHBlZDoiCiBtc2dzdHIgIkNvbW1pdC1CZXNjaHJlaWJ1bmcgIyR7bn0gd2lyZCBhdXNnZWxhc3NlbjoiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MjgKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0ODMKICMsIHNoLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAkY291bnQgY29tbWl0LiIKIG1zZ2lkX3BsdXJhbCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mICRjb3VudCBjb21taXRzLiIKIG1zZ3N0clswXSAiRGFzIGlzdCBlaW5lIEtvbWJpbmF0aW9uIGF1cyAkY291bnQgQ29tbWl0LiIKIG1zZ3N0clsxXSAiRGFzIGlzdCBlaW5lIEtvbWJpbmF0aW9uIGF1cyAkY291bnQgQ29tbWl0cy4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MzcKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0OTIKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCB3cml0ZSAkZml4dXBfbXNnIgogbXNnc3RyICJLYW5uICRmaXh1cF9tc2cgbmljaHQgc2NocmVpYmVuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDk1CiBtc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mIDIgY29tbWl0cy4iCiBtc2dzdHIgIkRhcyBpc3QgZWluZSBLb21iaW5hdGlvbiBhdXMgMiBDb21taXRzLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ4MSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTI0Ci0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTI3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTM2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1NzkKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1ODIKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBhcHBseSAkc2hhMS4uLiAkcmVzdCIKIG1zZ3N0ciAiS29ubnRlICRzaGExLi4uICgkcmVzdCkgbmljaHQgYW53ZW5kZW4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1NTYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJDb3VsZCBub3QgYW1lbmQgY29tbWl0IGFmdGVyIHN1Y2Nlc3NmdWxseSBwaWNraW5nICRzaGExLi4uICRyZXN0XG4iCkBAIC0yMDQzNCwzMSArMjQxODIsMzEgQEAKICJzb2xsdGVuIFNpZSBkYXMgUHJvYmxlbSBiZWhlYmVuLCBiZXZvciBTaWUgZGllIENvbW1pdC1CZXNjaHJlaWJ1bmcgw6RuZGVybiAiCiAia8O2bm5lbi4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1NzEKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MjYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN0b3BwZWQgYXQgJHNoYTFfYWJicmV2Li4uICRyZXN0IgogbXNnc3RyICJBbmdlaGFsdGVuIGJlaSAkc2hhMV9hYmJyZXYuLi4gJHJlc3QiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1ODYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NDEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCAnJHNxdWFzaF9zdHlsZScgd2l0aG91dCBhIHByZXZpb3VzIGNvbW1pdCIKIG1zZ3N0ciAiS2FubiBuaWNodCAnJHNxdWFzaF9zdHlsZScgb2huZSB2b3JoZXJpZ2VuIENvbW1pdCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYyOAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY4MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRXhlY3V0aW5nOiAkcmVzdCIKIG1zZ3N0ciAiRsO8aHJlIGF1czogJHJlc3QiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MzYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkV4ZWN1dGlvbiBmYWlsZWQ6ICRyZXN0IgogbXNnc3RyICJBdXNmw7xocnVuZyBmZWhsZ2VzY2hsYWdlbjogJHJlc3QiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MzgKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTMKIG1zZ2lkICJhbmQgbWFkZSBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiRGVyIEluZGV4IHVuZC9vZGVyIGRhcyBBcmJlaXRzdmVyemVpY2huaXMgd3VyZGUgZ2XDpG5kZXJ0LiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY0MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY5NQogbXNnaWQgIiIKICJZb3UgY2FuIGZpeCB0aGUgcHJvYmxlbSwgYW5kIHRoZW4gcnVuXG4iCiAiXG4iCkBAIC0yMDQ3MSw3ICsyNDIxOSw3IEBACiAiYXVzZsO8aHJlbi4iCiAKICMuIFRSQU5TTEFUT1JTOiBhZnRlciB0aGVzZSBsaW5lcyBpcyBhIGNvbW1hbmQgdG8gYmUgaXNzdWVkIGJ5IHRoZSB1c2VyCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjUzCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzA4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiRXhlY3V0aW9uIHN1Y2NlZWRlZDogJHJlc3RcbiIKQEAgLTIwNDg3LDI1ICsyNDIzNSwyNSBAQAogIlxuIgogIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjY0CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzE5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmtub3duIGNvbW1hbmQ6ICRjb21tYW5kICRzaGExICRyZXN0IgogbXNnc3RyICJVbmJla2FubnRlciBCZWZlaGw6ICRjb21tYW5kICRzaGExICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjY1CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzIwCiBtc2dpZCAiUGxlYXNlIGZpeCB0aGlzIHVzaW5nICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJy4iCiBtc2dzdHIgIkJpdHRlIGJlaGViZW4gU2llIGRhcywgaW5kZW0gU2llICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyBhdXNmw7xocmVuLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcwMAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc1NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VjY2Vzc2Z1bGx5IHJlYmFzZWQgYW5kIHVwZGF0ZWQgJGhlYWRfbmFtZS4iCiBtc2dzdHIgIkVyZm9sZ3JlaWNoIFJlYmFzZSBhdXNnZWbDvGhydCB1bmQgJGhlYWRfbmFtZSBha3R1YWxpc2llcnQuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzU3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODEyCiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgogbXNnc3RyICJLb25udGUgQ0hFUlJZX1BJQ0tfSEVBRCBuaWNodCBsw7ZzY2hlbiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc2MgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgxNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBoYXZlIHN0YWdlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLlxuIgpAQCAtMjA1MzcsMTMgKzI0Mjg1LDEzIEBACiAiXG4iCiAiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc3OQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgzNAogbXNnaWQgIkVycm9yIHRyeWluZyB0byBmaW5kIHRoZSBhdXRob3IgaWRlbnRpdHkgdG8gYW1lbmQgY29tbWl0IgogbXNnc3RyICIiCiAiRmVobGVyIGJlaW0gVmVyc3VjaCBkaWUgSWRlbnRpdMOkdCBkZXMgQXV0aG9ycyB6dW0gVmVyYmVzc2VybiBkZXMgQ29tbWl0cyB6dVxuIgogImZpbmRlbiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc4NAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgzOQogbXNnaWQgIiIKICJZb3UgaGF2ZSB1bmNvbW1pdHRlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLiBQbGVhc2UgY29tbWl0IHRoZW1cbiIKICJmaXJzdCBhbmQgdGhlbiBydW4gJ2dpdCByZWJhc2UgLS1jb250aW51ZScgYWdhaW4uIgpAQCAtMjA1NTMsNDAgKzI0MzAxLDQ0IEBACiAiZXJuZXV0XG4iCiAiYXVzLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc4OSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzkzCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NDgKIG1zZ2lkICJDb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiS29ubnRlIMOEbmRlcnVuZ2VuIGF1cyBkZXIgU3RhZ2luZy1BcmVhIG5pY2h0IGNvbW1pdHRlbi4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MjQgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkxMAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg3OSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTY1CiBtc2dpZCAiQ291bGQgbm90IGV4ZWN1dGUgZWRpdG9yIgogbXNnc3RyICJLb25udGUgRWRpdG9yIG5pY2h0IGF1c2bDvGhyZW4uIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ1CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTAwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgY2hlY2tvdXQgJHN3aXRjaF90byIKIG1zZ3N0ciAiS29ubnRlICRzd2l0Y2hfdG8gbmljaHQgYXVzY2hlY2tlbi4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NTIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDcKIG1zZ2lkICJObyBIRUFEPyIKIG1zZ3N0ciAiS2VpbiBIRUFEPyIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1MworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwOAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJHN0YXRlX2RpciIKIG1zZ3N0ciAiS29ubnRlIHRlbXBvcsOkcmVzIFZlcnplaWNobmlzICRzdGF0ZV9kaXIgbmljaHQgZXJzdGVsbGVuLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1NgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkxMQogbXNnaWQgIkNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgogbXNnc3RyICJLb25udGUgbmljaHQgYWxzIGludGVyYWt0aXZlbiBSZWJhc2UgbWFya2llcmVuLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg4OAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiUmViYXNlICRzaG9ydHJldmlzaW9ucyBvbnRvICRzaG9ydG9udG8gKCR0b2RvY291bnQgY29tbWFuZCkiCiBtc2dpZF9wbHVyYWwgIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgb250byAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmRzKSIKIG1zZ3N0clswXSAiUmViYXNlIHZvbiAkc2hvcnRyZXZpc2lvbnMgYXVmICRzaG9ydG9udG8gKCR0b2RvY291bnQgS29tbWFuZG8pIgogbXNnc3RyWzFdICJSZWJhc2Ugdm9uICRzaG9ydHJldmlzaW9ucyBhdWYgJHNob3J0b250byAoJHRvZG9jb3VudCBLb21tYW5kb3MpIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTQyIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDcKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NTUKK21zZ2lkICJOb3RlIHRoYXQgZW1wdHkgY29tbWl0cyBhcmUgY29tbWVudGVkIG91dCIKK21zZ3N0ciAiTGVlcmUgQ29tbWl0cyBzaW5kIGF1c2tvbW1lbnRpZXJ0LiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk5NyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTAwMgogbXNnaWQgIkNvdWxkIG5vdCBpbml0IHJld3JpdHRlbiBjb21taXRzIgogbXNnc3RyICJLb25udGUgbmV1IGdlc2NocmllYmVuZSBDb21taXRzIG5pY2h0IGluaXRpYWxpc2llcmVuLiIKIApAQCAtMjA1OTUsMjExICsyNDM0NywxNDAgQEAKIG1zZ2lkICJ1c2FnZTogJGRhc2hsZXNzICRVU0FHRSIKIG1zZ3N0ciAiVmVyd2VuZHVuZzogJGRhc2hsZXNzICRVU0FHRSIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjE5MAorIzogZ2l0LXNoLXNldHVwLnNoOjE5MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGNoZGlyIHRvICRjZHVwLCB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiIgogIktvbm50ZSBuaWNodCBpbiBWZXJ6ZWljaG5pcyAkY2R1cCB3ZWNoc2VsbiwgZGVyIG9iZXJzdGVuIEViZW5lIGRlc1xuIgogIkFyYmVpdHN2ZXJ6ZWljaG5pc3Nlcy4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoxOTkgZ2l0LXNoLXNldHVwLnNoOjIwNgorIzogZ2l0LXNoLXNldHVwLnNoOjIwMCBnaXQtc2gtc2V0dXAuc2g6MjA3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJmYXRhbDogJHByb2dyYW1fbmFtZSBjYW5ub3QgYmUgdXNlZCB3aXRob3V0IGEgd29ya2luZyB0cmVlLiIKIG1zZ3N0ciAiIgogImZhdGFsOiAkcHJvZ3JhbV9uYW1lIGthbm4gb2huZSBlaW4gQXJiZWl0c3ZlcnplaWNobmlzIG5pY2h0IHZlcndlbmRldCB3ZXJkZW4uIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjIwCisjOiBnaXQtc2gtc2V0dXAuc2g6MjIxCiBtc2dpZCAiQ2Fubm90IHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICJSZWJhc2UgbmljaHQgbcO2Z2xpY2g6IFNpZSBoYWJlbiDDhG5kZXJ1bmdlbiwgZGllIG5pY2h0IHp1bSBDb21taXQgdm9yZ2VtZXJrdCAiCiAic2luZC4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjMKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjQKIG1zZ2lkICJDYW5ub3QgcmV3cml0ZSBicmFuY2hlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICJLYW5uIEJyYW5jaGVzIG5pY2h0IG5ldSBzY2hyZWliZW46IFNpZSBoYWJlbiDDhG5kZXJ1bmdlbiwgZGllIG5pY2h0IHp1bSAiCiAiQ29tbWl0XG4iCiAidm9yZ2VtZXJrdCBzaW5kLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjIyNgorIzogZ2l0LXNoLXNldHVwLnNoOjIyNwogbXNnaWQgIkNhbm5vdCBwdWxsIHdpdGggcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogIkthbm4gXCJwdWxsXCIgbWl0IFwicmViYXNlXCIgbmljaHQgYXVzZsO8aHJlbjogU2llIGhhYmVuIMOEbmRlcnVuZ2VuLCBkaWUgIgogIm5pY2h0IHp1bSBDb21taXQgdm9yZ2VtZXJrdCBzaW5kLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjIyOQorIzogZ2l0LXNoLXNldHVwLnNoOjIzMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90ICRhY3Rpb246IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAiS2FubiAkYWN0aW9uIG5pY2h0IGF1c2bDvGhyZW46IFNpZSBoYWJlbiDDhG5kZXJ1bmdlbiwgZGllIG5pY2h0IHp1bSBDb21taXRcbiIKICJ2b3JnZW1lcmt0IHNpbmQuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQyCisjOiBnaXQtc2gtc2V0dXAuc2g6MjQzCiBtc2dpZCAiQ2Fubm90IHJlYmFzZTogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogIlJlYmFzZSBuaWNodCBtw7ZnbGljaDogRGllIFN0YWdpbmctQXJlYSBiZWluaGFsdGV0IG5pY2h0IGNvbW1pdHRldGUgIgogIsOEbmRlcnVuZ2VuLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjI0NQorIzogZ2l0LXNoLXNldHVwLnNoOjI0NgogbXNnaWQgIkNhbm5vdCBwdWxsIHdpdGggcmViYXNlOiBZb3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAiS2FubiBcInB1bGxcIiBtaXQgXCJyZWJhc2VcIiBuaWNodCBhdXNmw7xocmVuOiBEaWUgU3RhZ2luZy1BcmVhIGJlaW5oYWx0ZXQgIgogIm5pY2h0IGNvbW1pdHRldGUgw4RuZGVydW5nZW4uIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQ4CisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJGFjdGlvbjogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogIkthbm4gJGFjdGlvbiBuaWNodCBhdXNmw7xocmVuOiBEaWUgU3RhZ2luZy1BcmVhIGJlaW5oYWx0ZXQgbmljaHQgY29tbWl0dGV0ZVxuIgogIsOEbmRlcnVuZ2VuLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjI1MgorIzogZ2l0LXNoLXNldHVwLnNoOjI1MwogbXNnaWQgIkFkZGl0aW9uYWxseSwgeW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiWnVzw6R0emxpY2ggYmVpbmhhbHRldCBkaWUgU3RhZ2luZy1BcmVhIG5pY2h0IGNvbW1pdHRldGUgw4RuZGVydW5nZW4uIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MzcyCisjOiBnaXQtc2gtc2V0dXAuc2g6MzczCiBtc2dpZCAiWW91IG5lZWQgdG8gcnVuIHRoaXMgY29tbWFuZCBmcm9tIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlLiIKIG1zZ3N0ciAiIgogIlNpZSBtw7xzc2VuIGRlbiBCZWZlaGwgdm9uIGRlciBvYmVyc3RlbiBFYmVuZSBkZXMgQXJiZWl0c3ZlcnplaWNobmlzc2VzICIKICJhdXNmw7xocmVuLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjM3NworIzogZ2l0LXNoLXNldHVwLnNoOjM3OAogbXNnaWQgIlVuYWJsZSB0byBkZXRlcm1pbmUgYWJzb2x1dGUgcGF0aCBvZiBnaXQgZGlyZWN0b3J5IgogbXNnc3RyICJLb25udGUgYWJzb2x1dGVuIFBmYWQgZGVzIEdpdC1WZXJ6ZWljaG5pc3NlcyBuaWNodCBiZXN0aW1tZW4uIgogCiAjLiBUUkFOU0xBVE9SUzogeW91IGNhbiBhZGp1c3QgdGhpcyB0byBhbGlnbiAiZ2l0IGFkZCAtaSIgc3RhdHVzIG1lbnUKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTk2CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIlMTJzICUxMnMgJXMiCiBtc2dzdHIgIiUyOHMgJTI1cyAlcyIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJzdGFnZWQiCi1tc2dzdHIgInp1ciBTdGFnaW5nLUFyZWEgaGluenVnZWbDvGd0IgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NwotbXNnaWQgInVuc3RhZ2VkIgotbXNnc3RyICJhdXMgU3RhZ2luZy1BcmVhIGVudGZlcm50IgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI1MyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI3OAotbXNnaWQgImJpbmFyeSIKLW1zZ3N0ciAiQmluw6RyIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxNgotbXNnaWQgIm5vdGhpbmciCi1tc2dzdHIgIk5pY2h0cyIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyOTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMTMKLW1zZ2lkICJ1bmNoYW5nZWQiCi1tc2dzdHIgInVudmVyw6RuZGVydCIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MDkKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiYWRkZWQgJWQgcGF0aFxuIgotbXNnaWRfcGx1cmFsICJhZGRlZCAlZCBwYXRoc1xuIgotbXNnc3RyWzBdICIlZCBQZmFkIGhpbnp1Z2Vmw7xndFxuIgotbXNnc3RyWzFdICIlZCBQZmFkZSBoaW56dWdlZsO8Z3RcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAidXBkYXRlZCAlZCBwYXRoXG4iCi1tc2dpZF9wbHVyYWwgInVwZGF0ZWQgJWQgcGF0aHNcbiIKLW1zZ3N0clswXSAiJWQgUGZhZCBha3R1YWxpc2llcnRcbiIKLW1zZ3N0clsxXSAiJWQgUGZhZGUgYWt0dWFsaXNpZXJ0XG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjE1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgInJldmVydGVkICVkIHBhdGhcbiIKLW1zZ2lkX3BsdXJhbCAicmV2ZXJ0ZWQgJWQgcGF0aHNcbiIKLW1zZ3N0clswXSAiJWQgUGZhZCB3aWVkZXJoZXJnZXN0ZWxsdFxuIgotbXNnc3RyWzFdICIlZCBQZmFkZSB3aWVkZXJoZXJnZXN0ZWxsdFxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYxOAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MzQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAidG91Y2hlZCAlZCBwYXRoXG4iCiBtc2dpZF9wbHVyYWwgInRvdWNoZWQgJWQgcGF0aHNcbiIKIG1zZ3N0clswXSAiJWQgUGZhZCBhbmdlZmFzc3RcbiIKIG1zZ3N0clsxXSAiJWQgUGZhZGUgYW5nZWZhc3N0XG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjI3Ci1tc2dpZCAiVXBkYXRlIgotbXNnc3RyICJBa3R1YWxpc2llcmVuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzOQotbXNnaWQgIlJldmVydCIKLW1zZ3N0ciAiUmV2ZXJ0IgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY2MgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJub3RlOiAlcyBpcyB1bnRyYWNrZWQgbm93LlxuIgotbXNnc3RyICJIaW53ZWlzOiAlcyBpc3QgbnVuIHVudmVyc2lvbmllcnQuXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjczCi1tc2dpZCAiQWRkIHVudHJhY2tlZCIKLW1zZ3N0ciAidW52ZXJzaW9uaWVydGUgRGF0ZWllbiBoaW56dWbDvGdlbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NzkKLW1zZ2lkICJObyB1bnRyYWNrZWQgZmlsZXMuXG4iCi1tc2dzdHIgIktlaW5lIHVudmVyc2lvbmllcnRlbiBEYXRlaWVuLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwMzMKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA1MwogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3Igc3RhZ2luZy4iCiBtc2dzdHIgIiIKLSJXZW5uIGRlciBQYXRjaCBzYXViZXIgYW5nZXdlbmRldCB3ZXJkZW4ga2Fubiwgd2lyZCBkZXIgYmVhcmJlaXRldGUgUGF0Y2gtIgotIkJsb2NrXG4iCi0iZGlyZWt0IGFscyB6dW0gSGluenVmw7xnZW4genVyIFN0YWdpbmctQXJlYSBtYXJraWVydC4iCisiV2VubiBkZXIgUGF0Y2ggc2F1YmVyIGFuZ2V3ZW5kZXQgd2VyZGVuIGthbm4sIHdpcmQgZGVyIGJlYXJiZWl0ZXRlXG4iCisiUGF0Y2gtQmxvY2sgZGlyZWt0IHp1bSBIaW56dWbDvGdlbiB6dXIgU3RhZ2luZy1BcmVhIG1hcmtpZXJ0LiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDM2CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTYKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHN0YXNoaW5nLiIKIG1zZ3N0ciAiIgotIldlbm4gZGVyIFBhdGNoIHNhdWJlciBhbmdld2VuZGV0IHdlcmRlbiBrYW5uLCB3aXJkIGRlciBiZWFyYmVpdGV0ZSBQYXRjaC0iCi0iQmxvY2tcbiIKLSJkaXJla3QgYWxzIHp1bSBIaW56dWbDvGdlbiB6dW0gU3Rhc2ggbWFya2llcnQuIgorIldlbm4gZGVyIFBhdGNoIHNhdWJlciBhbmdld2VuZGV0IHdlcmRlbiBrYW5uLCB3aXJkIGRlciBiZWFyYmVpdGV0ZVxuIgorIlBhdGNoLUJsb2NrIGRpcmVrdCB6dW0gSGluenVmw7xnZW4genVtIFN0YXNoIG1hcmtpZXJ0LiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDM5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTkKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHVuc3RhZ2luZy4iCiBtc2dzdHIgIiIKLSJXZW5uIGRlciBQYXRjaCBzYXViZXIgYW5nZXdlbmRldCB3ZXJkZW4ga2Fubiwgd2lyZCBkZXIgYmVhcmJlaXRldGUgUGF0Y2gtIgotIkJsb2NrXG4iCi0iZGlyZWt0IGFscyB6dW0gRW50ZmVybmVuIGF1cyBkZXIgU3RhZ2luZy1BcmVhIG1hcmtpZXJ0LiIKKyJXZW5uIGRlciBQYXRjaCBzYXViZXIgYW5nZXdlbmRldCB3ZXJkZW4ga2Fubiwgd2lyZCBkZXIgYmVhcmJlaXRldGVcbiIKKyJQYXRjaC1CbG9jayBkaXJla3QgenVtIEVudGZlcm5lbiBhdXMgZGVyIFN0YWdpbmctQXJlYSBtYXJraWVydC4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA0MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTEKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNzEKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA3NwogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3IgYXBwbHlpbmcuIgogbXNnc3RyICIiCi0iV2VubiBkZXIgUGF0Y2ggc2F1YmVyIGFuZ2V3ZW5kZXQgd2VyZGVuIGthbm4sIHdpcmQgZGVyIGJlYXJiZWl0ZXRlIFBhdGNoLSIKLSJCbG9ja1xuIgotImRpcmVrdCBhbHMgenVtIEFud2VuZGVuIG1hcmtpZXJ0LiIKKyJXZW5uIGRlciBQYXRjaCBzYXViZXIgYW5nZXdlbmRldCB3ZXJkZW4ga2Fubiwgd2lyZCBkZXIgYmVhcmJlaXRldGVcbiIKKyJQYXRjaC1CbG9jayBkaXJla3QgenVtIEFud2VuZGVuIG1hcmtpZXJ0LiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDQ1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA0OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDY1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA2OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDc0CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBkaXNjYXJkaW5nLiIKIG1zZ3N0ciAiIgotIldlbm4gZGVyIFBhdGNoIHNhdWJlciBhbmdld2VuZGV0IHdlcmRlbiBrYW5uLCB3aXJkIGRlciBiZWFyYmVpdGV0ZSBQYXRjaC0iCi0iQmxvY2tcbiIKLSJkaXJla3QgYWxzIHp1bSBWZXJ3ZXJmZW4gbWFya2llcnQuIgorIldlbm4gZGVyIFBhdGNoIHNhdWJlciBhbmdld2VuZGV0IHdlcmRlbiBrYW5uLCB3aXJkIGRlciBiZWFyYmVpdGV0ZVxuIgorIlBhdGNoLUJsb2NrIGRpcmVrdCB6dW0gVmVyd2VyZmVuIG1hcmtpZXJ0LiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDg1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTEKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gaHVuayBlZGl0IGZpbGUgZm9yIHdyaXRpbmc6ICVzIgogbXNnc3RyICIiCiAiRmVobGVyIGJlaW0gw5ZmZm5lbiB2b24gRWRpdGllci1EYXRlaSBlaW5lcyBQYXRjaC1CbG9ja3MgenVtIFNjaHJlaWJlbjogJXMiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA4NgotbXNnaWQgIk1hbnVhbCBodW5rIGVkaXQgbW9kZSAtLSBzZWUgYm90dG9tIGZvciBhIHF1aWNrIGd1aWRlLlxuIgotbXNnc3RyICIiCi0iTWFudWVsbGVyIEVkaXRpZXJtb2R1cyBmw7xyIFBhdGNoLUJsw7Zja2UgLS0gc2llaGUgbmFjaCB1bnRlbiBmw7xyIGVpbmVcbiIKLSJLdXJ6YW5sZWl0dW5nLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwOTIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiLS0tXG4iCkBAIC0yMDgxMiwzNyArMjQ0OTMsMTIgQEAKICJVbSAnJXMnIFplaWxlbiB6dSBlbnRmZXJuZW4sIGzDtnNjaGVuIFNpZSBkaWVzZS5cbiIKICJaZWlsZW4sIGRpZSBtaXQgJXMgYmVnaW5uZW4sIHdlcmRlbiBlbnRmZXJudC5cbiIKIAotIy4gVFJBTlNMQVRPUlM6ICdpdCcgcmVmZXJzIHRvIHRoZSBwYXRjaCBtZW50aW9uZWQgaW4gdGhlIHByZXZpb3VzIG1lc3NhZ2VzLgotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTAwCi1tc2dpZCAiIgotIklmIGl0IGRvZXMgbm90IGFwcGx5IGNsZWFubHksIHlvdSB3aWxsIGJlIGdpdmVuIGFuIG9wcG9ydHVuaXR5IHRvXG4iCi0iZWRpdCBhZ2Fpbi4gIElmIGFsbCBsaW5lcyBvZiB0aGUgaHVuayBhcmUgcmVtb3ZlZCwgdGhlbiB0aGUgZWRpdCBpc1xuIgotImFib3J0ZWQgYW5kIHRoZSBodW5rIGlzIGxlZnQgdW5jaGFuZ2VkLlxuIgotbXNnc3RyICIiCi0iV2VubiBkYXMgbmljaHQgc2F1YmVyIGFuZ2V3ZW5kZXQgd2VyZGVuIGthbm4sIGhhYmVuIFNpZSBkaWUgTcO2Z2xpY2hrZWl0XG4iCi0iZWluZXIgZXJuZXV0ZW4gQmVhcmJlaXR1bmcuIFdlbm4gYWxsZSBaZWlsZW4gZGVzIFBhdGNoLUJsb2NrcyBlbnRmZXJudCAiCi0id2VyZGVuLFxuIgotIndpcmQgZGllIEJlYXJiZWl0dW5nIGFiZ2Vicm9jaGVuIHVuZCBkZXIgUGF0Y2gtQmxvY2sgYmxlaWJ0IHVudmVyw6RuZGVydC5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTE0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExNDAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gaHVuayBlZGl0IGZpbGUgZm9yIHJlYWRpbmc6ICVzIgogbXNnc3RyICJGZWhsZXIgYmVpbSDDlmZmbmVuIHZvbiBFZGl0aWVyLURhdGVpIGVpbmVzIFBhdGNoLUJsb2NrcyB6dW0gTGVzZW46ICVzIgogCi0jLiBUUkFOU0xBVE9SUzogZG8gbm90IHRyYW5zbGF0ZSBbeS9uXQotIy4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCB0aGF0IGlucHV0Ci0jLiBhdCB0aGlzIHBvaW50LgotIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKLSMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCi0jLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIxMwotbXNnaWQgIiIKLSJZb3VyIGVkaXRlZCBodW5rIGRvZXMgbm90IGFwcGx5LiBFZGl0IGFnYWluIChzYXlpbmcgXCJub1wiIGRpc2NhcmRzISkgW3kvbl0/ICIKLW1zZ3N0ciAiIgotIklociBiZWFyYmVpdGV0ZXIgUGF0Y2gtQmxvY2sga2FubiBuaWNodCBhbmdld2VuZGV0IHdlcmRlbi5cbiIKLSJFcm5ldXQgYmVhcmJlaXRlbj8gKFwiblwiIHZlcndpcmZ0IEJlYXJiZWl0dW5nISkgW3kvbl0/IgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMjIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0OAogbXNnaWQgIiIKICJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCiAibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKQEAgLTIwODU4LDcgKzI0NTE0LDcgQEAKICJkIC0gZGllc2VuIG9kZXIgYWxsZSB3ZWl0ZXJlbiBQYXRjaC1CbMO2Y2tlIGluIGRpZXNlciBEYXRlaSBuaWNodCB6dW0gQ29tbWl0ICIKICJ2b3JtZXJrZW4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIyOAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjU0CiBtc2dpZCAiIgogInkgLSBzdGFzaCB0aGlzIGh1bmtcbiIKICJuIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVua1xuIgpAQCAtMjA4NzIsNyArMjQ1MjgsNyBAQAogImEgLSBkaWVzZW4gdW5kIGFsbGUgd2VpdGVyZW4gUGF0Y2gtQmzDtmNrZSBkaWVzZXIgRGF0ZWkgc3Rhc2hlblxuIgogImQgLSBkaWVzZW4gb2RlciBhbGxlIHdlaXRlcmVuIFBhdGNoLUJsw7Zja2UgZGllc2VyIERhdGVpIG5pY2h0IHN0YXNoZW4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIzNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjYwCiBtc2dpZCAiIgogInkgLSB1bnN0YWdlIHRoaXMgaHVua1xuIgogIm4gLSBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmtcbiIKQEAgLTIwODg2LDcgKzI0NTQyLDcgQEAKICJhIC0gZGllc2VuIHVuZCBhbGxlIHdlaXRlcmVuIFBhdGNoLUJsw7Zja2UgZGllc2VyIERhdGVpIHVuc3Rhc2hlblxuIgogImQgLSBkaWVzZW4gb2RlciBhbGxlIHdlaXRlcmVuIFBhdGNoLUJsw7Zja2UgZGllc2VyIERhdGVpIG5pY2h0IHVuc3Rhc2hlbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjQwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNjYKIG1zZ2lkICIiCiAieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgogIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4XG4iCkBAIC0yMDkwMyw3ICsyNDU1OSw3IEBACiAiZCAtIGRpZXNlbiBvZGVyIGFsbGUgd2VpdGVyZW4gUGF0Y2gtQmzDtmNrZSBkaWVzZXIgRGF0ZWkgbmljaHQgYXVmIGRlbiBJbmRleCAiCiAiYW53ZW5kZW4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0NgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5MAogbXNnaWQgIiIKICJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgogIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgpAQCAtMjA5MjAsNyArMjQ1NzYsNyBAQAogImQgLSBkaWVzZW4gb2RlciBhbGxlIHdlaXRlcmVuIFBhdGNoLUJsw7Zja2UgZGllc2VyIERhdGVpIG5pY2h0IGltICIKICJBcmJlaXRzdmVyemVpY2huaXMgdmVyd2VyZmVuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNTIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI3OAogbXNnaWQgIiIKICJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKICJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCkBAIC0yMDkzNSw3ICsyNDU5MSw3IEBACiAiYSAtIGRpZXNlbiB1bmQgYWxsZSB3ZWl0ZXJlbiBQYXRjaC1CbMO2Y2tlIGluIGRlciBEYXRlaSB2ZXJ3ZXJmZW5cbiIKICJkIC0gZGllc2VuIG9kZXIgYWxsZSB3ZWl0ZXJlbiBQYXRjaC1CbMO2Y2tlIGluIGRlciBEYXRlaSBuaWNodCB2ZXJ3ZXJmZW4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI1OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjg0CiBtc2dpZCAiIgogInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCiAibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCkBAIC0yMDk0OSw3ICsyNDYwNSwyMSBAQAogImEgLSBkaWVzZW4gdW5kIGFsbGUgd2VpdGVyZW4gUGF0Y2gtQmzDtmNrZSBpbiBkZXIgRGF0ZWkgYW53ZW5kZW5cbiIKICJkIC0gZGllc2VuIG9kZXIgYWxsZSB3ZWl0ZXJlbiBQYXRjaC1CbMO2Y2tlIGluIGRlciBEYXRlaSBuaWNodCBhbndlbmRlbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjczCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyOTYKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKyJ5IC0gZGllc2VuIFBhdGNoLUJsb2NrIGF1ZiBkYXMgQXJiZWl0c3ZlcnplaWNobmlzIGFud2VuZGVuXG4iCisibiAtIGRpZXNlbiBQYXRjaC1CbG9jayBuaWNodCBhdWYgZGFzIEFyYmVpdHN2ZXJ6ZWljaG5pcyBhbndlbmRlblxuIgorInEgLSBCZWVuZGVuOyBkaWVzZW4gdW5kIGFsbGUgdmVyYmxlaWJlbmRlbiBQYXRjaC1CbMO2Y2tlIG5pY2h0IGFud2VuZGVuXG4iCisiYSAtIGRpZXNlbiB1bmQgYWxsZSB3ZWl0ZXJlbiBQYXRjaC1CbMO2Y2tlIGluIGRlciBEYXRlaSBhbndlbmRlblxuIgorImQgLSBkaWVzZW4gdW5kIGFsbGUgd2VpdGVyZW4gUGF0Y2gtQmzDtmNrZSBpbiBkZXIgRGF0ZWkgbmljaHQgYW53ZW5kZW4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMxMQogbXNnaWQgIiIKICJnIC0gc2VsZWN0IGEgaHVuayB0byBnbyB0b1xuIgogIi8gLSBzZWFyY2ggZm9yIGEgaHVuayBtYXRjaGluZyB0aGUgZ2l2ZW4gcmVnZXhcbiIKQEAgLTIwOTYyLDcgKzI0NjMyLDcgQEAKICI/IC0gcHJpbnQgaGVscFxuIgogbXNnc3RyICIiCiAiZyAtIFBhdGNoLUJsb2NrIHp1bSBIaW5zcHJpbmdlbiBhdXN3w6RobGVuXG4iCi0iLyAtIG5hY2ggUGF0Y2gtQmxvY2sgc3VjaGVuIGRlciBnZWdlYmVuZW0gcmVndWzDpHJlbSBBdXNkcnVjayBlbnRzcHJpY2h0XG4iCisiLyAtIG5hY2ggUGF0Y2gtQmxvY2sgc3VjaGVuLCBkZXIgZ2VnZWJlbmVtIHJlZ3Vsw6RyZW0gQXVzZHJ1Y2sgZW50c3ByaWNodFxuIgogImogLSBkaWVzZW4gUGF0Y2gtQmxvY2sgdW5iZXN0aW1tdCBsYXNzZW4sIG7DpGNoc3RlbiB1bmJlc3RpbW10ZW4gUGF0Y2gtQmxvY2sgIgogImFuemVpZ2VuXG4iCiAiSiAtIGRpZXNlbiBQYXRjaC1CbG9jayB1bmJlc3RpbW10IGxhc3NlbiwgbsOkY2hzdGVuIFBhdGNoLUJsb2NrIGFuemVpZ2VuXG4iCkBAIC0yMDk3MywyMTggKzI0NjQzLDg3IEBACiAiZSAtIGFrdHVlbGxlbiBQYXRjaC1CbG9jayBtYW51ZWxsIGVkaXRpZXJlblxuIgogIj8gLSBIaWxmZSBhbnplaWdlblxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMDQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM0MgogbXNnaWQgIlRoZSBzZWxlY3RlZCBodW5rcyBkbyBub3QgYXBwbHkgdG8gdGhlIGluZGV4IVxuIgogbXNnc3RyICIiCiAiRGllIGF1c2dld8OkaGx0ZW4gUGF0Y2gtQmzDtmNrZSBrw7ZubmVuIG5pY2h0IGF1ZiBkZW4gSW5kZXggYW5nZXdlbmRldCB3ZXJkZW4hXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwNQotbXNnaWQgIkFwcGx5IHRoZW0gdG8gdGhlIHdvcmt0cmVlIGFueXdheT8gIgotbXNnc3RyICJUcm90emRlbSBhdWYgQXJiZWl0c3ZlcnplaWNobmlzIGFud2VuZGVuPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwOAotbXNnaWQgIk5vdGhpbmcgd2FzIGFwcGxpZWQuXG4iCi1tc2dzdHIgIk5pY2h0cyBhbmdld2VuZGV0LlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMTkKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM1NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyB1bm1lcmdlZDogJXNcbiIKIG1zZ3N0ciAiaWdub3JpZXJlIG5pY2h0IHp1c2FtbWVuZ2Vmw7xocnRlIERhdGVpOiAlc1xuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMjgKLW1zZ2lkICJPbmx5IGJpbmFyeSBmaWxlcyBjaGFuZ2VkLlxuIgotbXNnc3RyICJOdXIgQmluw6RyZGF0ZWllbiBnZcOkbmRlcnQuXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMzMAotbXNnaWQgIk5vIGNoYW5nZXMuXG4iCi1tc2dzdHIgIktlaW5lIMOEbmRlcnVuZ2VuLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMzgKLW1zZ2lkICJQYXRjaCB1cGRhdGUiCi1tc2dzdHIgIlBhdGNoIEFrdHVhbGlzaWVydW5nIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2OAogIywgcGVybC1mb3JtYXQKLW1zZ2lkICJTdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiTW9kdXPDpG5kZXJ1bmcgZGVyIFN0YWdpbmctQXJlYSBoaW56dWbDvGdlbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiTW9kdXPDpG5kZXJ1bmcgYXVmIEFyYmVpdHN2ZXJ6ZWljaG5pcyBhbndlbmRlbiBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjkKICMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkzDtnNjaHVuZyBkZXIgU3RhZ2luZy1BcmVhIGhpbnp1ZsO8Z2VuIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJMw7ZzY2h1bmcgYXVmIEFyYmVpdHN2ZXJ6ZWljaG5pcyBhbndlbmRlbiBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NzAKICMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJEaWVzZW4gUGF0Y2gtQmxvY2sgZGVyIFN0YWdpbmctQXJlYSBoaW56dWbDvGdlbiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzk1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YXNoIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJNb2R1c8OkbmRlcnVuZyBzdGFzaGVuIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTYKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3Rhc2ggZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkzDtnNjaHVuZyBzdGFzaGVuIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTcKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3Rhc2ggdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJEaWVzZW4gUGF0Y2gtQmxvY2sgc3Rhc2hlbiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAwCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlVuc3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIk1vZHVzw6RuZGVydW5nIGF1cyBkZXIgU3RhZ2luZy1BcmVhIGVudGZlcm5lbiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAxCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlVuc3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkzDtnNjaHVuZyBhdXMgZGVyIFN0YWdpbmctQXJlYSBlbnRmZXJuZW4gW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwMgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJVbnN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiRGllc2VuIFBhdGNoLUJsb2NrIGF1cyBkZXIgU3RhZ2luZy1BcmVhIGVudGZlcm5lbiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDA1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJNb2R1c8OkbmRlcnVuZyBhdWYgSW5kZXggYW53ZW5kZW4gW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwNgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJBcHBseSBkZWxldGlvbiB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiTMO2c2NodW5nIGF1ZiBJbmRleCBhbndlbmRlbiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDA3Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiRGllc2VuIFBhdGNoLUJsb2NrIGF1ZiBJbmRleCBhbndlbmRlbiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDEwCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiTW9kdXPDpG5kZXJ1bmcgaW0gQXJiZWl0c3ZlcnplaWNobmlzIHZlcndlcmZlbiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDExCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiTMO2c2NodW5nIGltIEFyYmVpdHN2ZXJ6ZWljaG5pcyB2ZXJ3ZXJmZW4gW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxMgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJEaWVzZW4gUGF0Y2gtQmxvY2sgaW0gQXJiZWl0c3ZlcnplaWNobmlzIHZlcndlcmZlbiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgogbXNnc3RyICIiCi0iTW9kdXPDpG5kZXJ1bmcgdm9tIEluZGV4IHVuZCBBcmJlaXRzdmVyemVpY2huaXMgdmVyd2VyZmVuIFt5LG4scSxhLGQlcyw/XT8gIgorIkRpZXNlbiBQYXRjaC1CbG9jayBhdWYgZGFzIEFyYmVpdHN2ZXJ6ZWljaG5pcyBhbndlbmRlbiBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE2Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkzDtnNjaHVuZyB2b20gSW5kZXggdW5kIEFyYmVpdHN2ZXJ6ZWljaG5pcyB2ZXJ3ZXJmZW4gW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxNwotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiIgotIkRpZXNlbiBQYXRjaC1CbG9jayB2b20gSW5kZXggdW5kIEFyYmVpdHN2ZXJ6ZWljaG5pcyB2ZXJ3ZXJmZW4gW3ksbixxLGEsZCIKLSIlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjAKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICIiCi0iTW9kdXPDpG5kZXJ1bmcgYXVmIEluZGV4IHVuZCBBcmJlaXRzdmVyemVpY2huaXMgYW53ZW5kZW4gW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQyMQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJBcHBseSBkZWxldGlvbiB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkzDtnNjaHVuZyBhdWYgSW5kZXggdW5kIEFyYmVpdHN2ZXJ6ZWljaG5pcyBhbndlbmRlbiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDIyCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLSJEaWVzZW4gUGF0Y2gtQmxvY2sgYXVmIEluZGV4IHVuZCBBcmJlaXRzdmVyemVpY2huaXMgYW53ZW5kZW4gW3ksbixxLGEsZCIKLSIlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MjIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3MAogbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIGdvdG9cbiIKIG1zZ3N0ciAiS2VpbmUgYW5kZXJlbiBQYXRjaC1CbMO2Y2tlIHZlcmJsZWliZW5kXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTUyOQotbXNnaWQgImdvIHRvIHdoaWNoIGh1bmsgKDxyZXQ+IHRvIHNlZSBtb3JlKT8gIgotbXNnc3RyICJ6dSB3ZWxjaGVtIFBhdGNoLUJsb2NrIHNwcmluZ2VuICg8RW50ZXI+IGbDvHIgbWVociBJbmZvcm1hdGlvbmVuKT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MzEKLW1zZ2lkICJnbyB0byB3aGljaCBodW5rPyAiCi1tc2dzdHIgInp1IHdlbGNoZW0gUGF0Y2gtQmxvY2sgc3ByaW5nZW4/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1ODgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBudW1iZXI6ICclcydcbiIKIG1zZ3N0ciAiVW5nw7xsdGlnZSBOdW1tZXI6ICclcydcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQ1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1OTMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU29ycnksIG9ubHkgJWQgaHVuayBhdmFpbGFibGUuXG4iCiBtc2dpZF9wbHVyYWwgIlNvcnJ5LCBvbmx5ICVkIGh1bmtzIGF2YWlsYWJsZS5cbiIKIG1zZ3N0clswXSAiRW50c2NodWxkaWd1bmcsIG51ciAlZCBQYXRjaC1CbG9jayB2ZXJmw7xnYmFyLlxuIgogbXNnc3RyWzFdICJFbnRzY2h1bGRpZ3VuZywgbnVyICVkIFBhdGNoLUJsw7Zja2UgdmVyZsO8Z2Jhci5cbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTcxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MTkKIG1zZ2lkICJObyBvdGhlciBodW5rcyB0byBzZWFyY2hcbiIKIG1zZ3N0ciAiS2VpbmUgYW5kZXJlbiBQYXRjaC1CbMO2Y2tlIHp1bSBEdXJjaHN1Y2hlblxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzUKLW1zZ2lkICJzZWFyY2ggZm9yIHJlZ2V4PyAiCi1tc2dzdHIgIlN1Y2hlIG5hY2ggcmVndWzDpHJlbSBBdXNkcnVjaz8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1ODgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYzNgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJNYWxmb3JtZWQgc2VhcmNoIHJlZ2V4cCAlczogJXNcbiIKIG1zZ3N0ciAiRmVobGVyaGFmdGVyIHJlZ3Vsw6RyZXIgQXVzZHJ1Y2sgZsO8ciBTdWNoZSAlczogJXNcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTk4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NDYKIG1zZ2lkICJObyBodW5rIG1hdGNoZXMgdGhlIGdpdmVuIHBhdHRlcm5cbiIKIG1zZ3N0ciAiS2VpbiBQYXRjaC1CbG9jayBlbnRzcHJpY2h0IGRlbSBhbmdlZ2ViZW5lbiBNdXN0ZXJcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjEwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYzMgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjU4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY4MAogbXNnaWQgIk5vIHByZXZpb3VzIGh1bmtcbiIKIG1zZ3N0ciAiS2VpbiB2b3JoZXJpZ2VyIFBhdGNoLUJsb2NrXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MzgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY2NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2ODYKIG1zZ2lkICJObyBuZXh0IGh1bmtcbiIKIG1zZ3N0ciAiS2VpbiBmb2xnZW5kZXIgUGF0Y2gtQmxvY2tcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjQ0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2OTIKIG1zZ2lkICJTb3JyeSwgY2Fubm90IHNwbGl0IHRoaXMgaHVua1xuIgogbXNnc3RyICJFbnRzY2h1bGRpZ3VuZywga2FubiBkaWVzZW4gUGF0Y2gtQmxvY2sgbmljaHQgYXVmdGVpbGVuLlxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NTAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY5OAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTcGxpdCBpbnRvICVkIGh1bmsuXG4iCiBtc2dpZF9wbHVyYWwgIlNwbGl0IGludG8gJWQgaHVua3MuXG4iCiBtc2dzdHJbMF0gIkluICVkIFBhdGNoLUJsb2NrIGF1ZmdldGVpbHQuXG4iCiBtc2dzdHJbMV0gIkluICVkIFBhdGNoLUJsw7Zja2UgYXVmZ2V0ZWlsdC5cbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjYwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MDgKIG1zZ2lkICJTb3JyeSwgY2Fubm90IGVkaXQgdGhpcyBodW5rXG4iCiBtc2dzdHIgIkVudHNjaHVsZGlndW5nLCBrYW5uIGRpZXNlbiBQYXRjaC1CbG9jayBuaWNodCBiZWFyYmVpdGVuLlxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MDYKLW1zZ2lkICJSZXZpZXcgZGlmZiIKLW1zZ3N0ciAiRGlmZiDDvGJlcnByw7xmZW4iCi0KICMuIFRSQU5TTEFUT1JTOiBwbGVhc2UgZG8gbm90IHRyYW5zbGF0ZSB0aGUgY29tbWFuZCBuYW1lcwogIy4gJ3N0YXR1cycsICd1cGRhdGUnLCAncmV2ZXJ0JywgZXRjLgotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzI1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NzMKIG1zZ2lkICIiCiAic3RhdHVzICAgICAgICAtIHNob3cgcGF0aHMgd2l0aCBjaGFuZ2VzXG4iCiAidXBkYXRlICAgICAgICAtIGFkZCB3b3JraW5nIHRyZWUgc3RhdGUgdG8gdGhlIHN0YWdlZCBzZXQgb2YgY2hhbmdlc1xuIgpAQCAtMjEyMDMsMTggKzI0NzQyLDE5IEBACiAiZGlmZiAgICAgICAgICAtIFVudGVyc2NoaWVkZSB6d2lzY2hlbiBIRUFEIHVuZCBJbmRleCBhbnplaWdlblxuIgogImFkZCB1bnRyYWNrZWQgLSBJbmhhbHRlIHZvbiB1bnZlcnNpb25pZXJ0ZW4gRGF0ZWllbiB6dW0gQ29tbWl0IHZvcm1lcmtlblxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NDIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzQ3Ci0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NTAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzU3Ci0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzY3CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzk1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODA1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MDggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODE1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODI1CiBtc2dpZCAibWlzc2luZyAtLSIKIG1zZ3N0ciAiLS0gZmVobHQiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2MworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODIxCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgInVua25vd24gLS1wYXRjaCBtb2RlOiAlcyIKIG1zZ3N0ciAiVW5iZWthbm50ZXIgLS1wYXRjaCBNb2R1czogJXMiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NzUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyNyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MzMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBhcmd1bWVudCAlcywgZXhwZWN0aW5nIC0tIgogbXNnc3RyICJ1bmfDvGx0aWdlcyBBcmd1bWVudCAlcywgZXJ3YXJ0ZSAtLSIKQEAgLTIxMjI4LDMyICsyNDc2OCwzMiBAQAogbXNnaWQgImxvY2FsIHRpbWUgb2Zmc2V0IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAyNCBob3Vyc1xuIgogbXNnc3RyICJsb2thbGVyIFplaXQtT2Zmc2V0IGdyw7bDn2VyIG9kZXIgZ2xlaWNoIDI0IFN0dW5kZW5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoyMTkgZ2l0LXNlbmQtZW1haWwucGVybDoyMjUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjIzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MjI5CiBtc2dpZCAidGhlIGVkaXRvciBleGl0ZWQgdW5jbGVhbmx5LCBhYm9ydGluZyBldmVyeXRoaW5nIgogbXNnc3RyICJEZXIgRWRpdG9yIHd1cmRlIHVuc2F1YmVyIGJlZW5kZXQsIGJyZWNoZSBhbGxlcyBhYi4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzAyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMxMAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBjb250YWlucyBhbiBpbnRlcm1lZGlhdGUgdmVyc2lvbiBvZiB0aGUgZW1haWwgeW91IHdlcmUgY29tcG9zaW5nLlxuIgogbXNnc3RyICIiCiAiJyVzJyBlbnRow6RsdCBlaW5lIFp3aXNjaGVudmVyc2lvbiBkZXIgRS1NYWlsLCBkaWUgU2llIGdlcmFkZSB2ZXJmYXNzZW4uXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzA3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMxNQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICInJXMuZmluYWwnIGNvbnRhaW5zIHRoZSBjb21wb3NlZCBlbWFpbC5cbiIKIG1zZ3N0ciAiJyVzLmZpbmFsJyBlbnRow6RsdCBkaWUgdmVyZmFzc3RlIEUtTWFpbC5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMjYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDA4CiBtc2dpZCAiLS1kdW1wLWFsaWFzZXMgaW5jb21wYXRpYmxlIHdpdGggb3RoZXIgb3B0aW9uc1xuIgogbXNnc3RyICItLWR1bXAtYWxpYXNlcyBpc3QgbWl0IGFuZGVyZW4gT3B0aW9uZW4gaW5rb21wYXRpYmVsXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Mzk1IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjUwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ4MSBnaXQtc2VuZC1lbWFpbC5wZXJsOjY4MwogbXNnaWQgIkNhbm5vdCBydW4gZ2l0IGZvcm1hdC1wYXRjaCBmcm9tIG91dHNpZGUgYSByZXBvc2l0b3J5XG4iCiBtc2dzdHIgIiIKICJLYW5uICdnaXQgZm9ybWF0LXBhdGNoJyBuaWNodCBhdcOfZXJoYWxiIGVpbmVzIFJlcG9zaXRvcmllcyBhdXNmw7xocmVuLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjM5OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo0ODQKIG1zZ2lkICIiCiAiYGJhdGNoLXNpemVgIGFuZCBgcmVsb2dpbmAgbXVzdCBiZSBzcGVjaWZpZWQgdG9nZXRoZXIgKHZpYSBjb21tYW5kLWxpbmUgb3IgIgogImNvbmZpZ3VyYXRpb24gb3B0aW9uKVxuIgpAQCAtMjEyNjIsMzcgKzI0ODAyLDM4IEBACiAiS29tbWFuZG96ZWlsZVxuIgogIm9kZXIgS29uZmlndXJhdGlvbnNvcHRpb24pXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDY4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ5NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJVbmtub3duIC0tc3VwcHJlc3MtY2MgZmllbGQ6ICclcydcbiIKIG1zZ3N0ciAiVW5iZWthbm50ZXMgLS1zdXBwcmVzcy1jYyBGZWxkOiAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDk3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJVbmtub3duIC0tY29uZmlybSBzZXR0aW5nOiAnJXMnXG4iCiBtc2dzdHIgIlVuYmVrYW5udGUgLS1jb25maXJtIEVpbnN0ZWxsdW5nOiAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTI1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU1NgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ3YXJuaW5nOiBzZW5kbWFpbCBhbGlhcyB3aXRoIHF1b3RlcyBpcyBub3Qgc3VwcG9ydGVkOiAlc1xuIgotbXNnc3RyICJXYXJudW5nOiBzZW5kZW1haWwtQWxpYXMgbWl0IEFuZsO8aHJ1bmdzemVpY2hlbiB3aXJkIG5pY2h0IHVudGVyc3TDvHR6dDogJXNcbiIKK21zZ3N0ciAiIgorIldhcm51bmc6IHNlbmRlbWFpbC1BbGlhcyBtaXQgQW5mw7xocnVuZ3N6ZWljaGVuIHdpcmQgbmljaHQgdW50ZXJzdMO8dHp0OiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyNworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogYDppbmNsdWRlOmAgbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAiV2FybnVuZzogYDppbmNsdWRlOmAgd2lyZCBuaWNodCB1bnRlcnN0w7x0enQ6ICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTI5CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU2MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ3YXJuaW5nOiBgL2ZpbGVgIG9yIGB8cGlwZWAgcmVkaXJlY3Rpb24gbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAiV2FybnVuZzogYC9maWxlYCBvZGVyIGB8cGlwZWAgVW1sZWl0dW5nIHdpcmQgbmljaHQgdW50ZXJzdMO8dHp0OiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUzNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NjUKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogc2VuZG1haWwgbGluZSBpcyBub3QgcmVjb2duaXplZDogJXNcbiIKIG1zZ3N0ciAiV2FybnVuZzogc2VuZG1haWwgWmVpbGUgd2lyZCBuaWNodCBlcmthbm50OiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjYxNgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NDkKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogIkZpbGUgJyVzJyBleGlzdHMgYnV0IGl0IGNvdWxkIGFsc28gYmUgdGhlIHJhbmdlIG9mIGNvbW1pdHNcbiIKQEAgLTIxMzA5LDEyICsyNDg1MCwxMiBAQAogIiAgICAqIGRpZSBPcHRpb24gLS1mb3JtYXQtcGF0Y2ggYW5nZWJlbiwgd2VubiBTaWUgZWluZW4gQ29tbWl0LUJlcmVpY2ggIgogIm1laW5lblxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjYzNworIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NzAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW5kaXIgJXM6ICVzIgogbXNnc3RyICJGZWhsZXIgYmVpbSDDlmZmbmVuIHZvbiAlczogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjYxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY5NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiZmF0YWw6ICVzOiAlc1xuIgpAQCAtMjEzMjMsNyArMjQ4NjQsNyBAQAogImZhdGFsOiAlczogJXNcbiIKICJXYXJudW5nOiBFcyB3dXJkZW4ga2VpbmUgUGF0Y2hlcyB2ZXJzZW5kZXQuXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjcyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcwNQogbXNnaWQgIiIKICJcbiIKICJObyBwYXRjaCBmaWxlcyBzcGVjaWZpZWQhXG4iCkBAIC0yMTMzMywxNyArMjQ4NzQsMTcgQEAKICJrZWluZSBQYXRjaC1EYXRlaWVuIGFuZ2VnZWJlbiFcbiIKICJcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2ODUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzE4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIk5vIHN1YmplY3QgbGluZSBpbiAlcz8iCiBtc2dzdHIgIktlaW5lIEJldHJlZmZ6ZWlsZSBpbiAlcz8iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Njk1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcyOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiBmb3Igd3JpdGluZyAlczogJXMiCiBtc2dzdHIgIkZlaGxlciBiZWltIMOWZmZuZW4gdm9uICclcycgenVtIFNjaHJlaWJlbjogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzA2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjczOQogbXNnaWQgIiIKICJMaW5lcyBiZWdpbm5pbmcgaW4gXCJHSVQ6XCIgd2lsbCBiZSByZW1vdmVkLlxuIgogIkNvbnNpZGVyIGluY2x1ZGluZyBhbiBvdmVyYWxsIGRpZmZzdGF0IG9yIHRhYmxlIG9mIGNvbnRlbnRzXG4iCkBAIC0yMTM1OCwyNyArMjQ4OTksMjcgQEAKICJMZWVyZW4gU2llIGRlbiBJbmhhbHQgZGVzIEJvZHlzLCB3ZW5uIFNpZSBrZWluZSBadXNhbW1lbmZhc3N1bmcgc2VuZGVuICIKICJtw7ZjaHRlbi5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MzAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzYzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBvcGVuICVzOiAlcyIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gw5ZmZm5lbiB2b24gJXM6ICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc0NworIzogZ2l0LXNlbmQtZW1haWwucGVybDo3ODAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW4gJXMuZmluYWw6ICVzIgogbXNnc3RyICJGZWhsZXIgYmVpbSDDlmZmbmVuIHZvbiAlcy5maW5hbDogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzkwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjgyMwogbXNnaWQgIlN1bW1hcnkgZW1haWwgaXMgZW1wdHksIHNraXBwaW5nIGl0XG4iCiBtc2dzdHIgIkUtTWFpbCBtaXQgWnVzYW1tZW5mYXNzdW5nIGlzdCBsZWVyLCB3aXJkIGF1c2dlbGFzc2VuXG4iCiAKICMuIFRSQU5TTEFUT1JTOiBwbGVhc2Uga2VlcCBbeS9OXSBhcyBpcy4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODI1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjg1OAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gdXNlIDwlcz4gW3kvTl0/ICIKIG1zZ3N0ciAiU2luZCBTaWUgc2ljaCBzaWNoZXIsIDwlcz4genUgYmVudXR6ZW4gW3kvTl0/ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4ODAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTEzCiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgZmlsZXMgYXJlIDhiaXQsIGJ1dCBkbyBub3QgZGVjbGFyZSBhIENvbnRlbnQtVHJhbnNmZXItIgogIkVuY29kaW5nLlxuIgpAQCAtMjEzODYsMTEgKzI0OTI3LDExIEBACiAiRGllIGZvbGdlbmRlbiBEYXRlaWVuIHNpbmQgOC1CaXQsIGFiZXIgZGVrbGFyaWVyZW4ga2VpblxuIgogIkNvbnRlbnQtVHJhbnNmZXItRW5jb2RpbmcuXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODg1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkxOAogbXNnaWQgIldoaWNoIDhiaXQgZW5jb2Rpbmcgc2hvdWxkIEkgZGVjbGFyZSBbVVRGLThdPyAiCiBtc2dzdHIgIldlbGNoZXMgOC1CaXQtRW5jb2Rpbmcgc29sbCBkZWtsYXJpZXJ0IHdlcmRlbiBbVVRGLThdPyAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODkzCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkyNgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiUmVmdXNpbmcgdG8gc2VuZCBiZWNhdXNlIHRoZSBwYXRjaFxuIgpAQCAtMjE0MDQsMjIgKzI0OTQ1LDIyIEBACiAiYW4sXG4iCiAid2VubiBTaWUgZGVuIFBhdGNoIHdpcmtsaWNoIHZlcnNlbmRlbiB3b2xsZW4uXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTEyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjk0NQogbXNnaWQgIlRvIHdob20gc2hvdWxkIHRoZSBlbWFpbHMgYmUgc2VudCAoaWYgYW55b25lKT8iCiBtc2dzdHIgIkFuIHdlbiBzb2xsZW4gZGllIEUtTWFpbHMgdmVyc2VuZGV0IHdlcmRlbiAod2VubiDDvGJlcmhhdXB0IGplbWFuZCk/IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkzMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NjMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZmF0YWw6IGFsaWFzICclcycgZXhwYW5kcyB0byBpdHNlbGZcbiIKIG1zZ3N0ciAiZmF0YWw6IEFsaWFzICclcycgZXJ3ZWl0ZXJ0IHNpY2ggenUgc2ljaCBzZWxic3RcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTc1CiBtc2dpZCAiTWVzc2FnZS1JRCB0byBiZSB1c2VkIGFzIEluLVJlcGx5LVRvIGZvciB0aGUgZmlyc3QgZW1haWwgKGlmIGFueSk/ICIKIG1zZ3N0ciAiIgogIk1lc3NhZ2UtSUQgenVyIFZlcndlbmR1bmcgYWxzIEluLVJlcGx5LVRvIGbDvHIgZGllIGVyc3RlIEUtTWFpbCAod2VubiBlaW5lICIKICJleGlzdGllcnQpPyAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAwMCBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMDgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAzMyBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwNDEKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZXJyb3I6IHVuYWJsZSB0byBleHRyYWN0IGEgdmFsaWQgYWRkcmVzcyBmcm9tOiAlc1xuIgogbXNnc3RyICJGZWhsZXI6IGtvbm50ZSBrZWluZSBnw7xsdGlnZSBBZHJlc3NlIGF1cyAlcyBleHRyYWhpZXJlblxuIgpAQCAtMjE0MjcsMTggKzI0OTY4LDE4IEBACiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3FdIFtkXSBbZV0gaW4geW91cgogIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAogIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAxMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDQ1CiBtc2dpZCAiV2hhdCB0byBkbyB3aXRoIHRoaXMgYWRkcmVzcz8gKFtxXXVpdHxbZF1yb3B8W2VdZGl0KTogIgogbXNnc3RyICIiCiAiV2FzIHNvbGwgbWl0IGRpZXNlciBBZHJlc3NlIGdlc2NoZWhlbj8gKEJlZW5kZW4gW3FdfEzDtnNjaGVuIFtkXXxCZWFyYmVpdGVuICIKICJbZV0pOiAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTMyOQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMzYyCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkNBIHBhdGggXCIlc1wiIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJDQSBQZmFkIFwiJXNcIiBleGlzdGllcnQgbmljaHQiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQxMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDQ1CiBtc2dpZCAiIgogIiAgICBUaGUgQ2MgbGlzdCBhYm92ZSBoYXMgYmVlbiBleHBhbmRlZCBieSBhZGRpdGlvbmFsXG4iCiAiICAgIGFkZHJlc3NlcyBmb3VuZCBpbiB0aGUgcGF0Y2ggY29tbWl0IG1lc3NhZ2UuIEJ5IGRlZmF1bHRcbiIKQEAgLTIxNDY3LDUxMyArMjUwMDgsMTMzIEBACiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3ldIFtuXSBbZV0gW3FdIFthXSBpbiB5b3VyCiAjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CiAjLiBhdCB0aGlzIHBvaW50LgotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDI3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjAKIG1zZ2lkICJTZW5kIHRoaXMgZW1haWw/IChbeV1lc3xbbl1vfFtlXWRpdHxbcV11aXR8W2FdbGwpOiAiCiBtc2dzdHIgIiIKICJEaWVzZSBFLU1haWwgdmVyc2VuZGVuPyAoSmEgW3ldfE5laW4gW25dfEJlYXJiZWl0ZW4gW2VdfEJlZW5kZW4gW3FdfEFsbGUgIgogIlthXSk6ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDMwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjMKIG1zZ2lkICJTZW5kIHRoaXMgZW1haWwgcmVwbHkgcmVxdWlyZWQiCiBtc2dzdHIgIlp1bSBWZXJzZW5kZW4gZGllc2VyIEUtTWFpbCBpc3QgZWluZSBBbnR3b3J0IGVyZm9yZGVybGljaC4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ1OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDkxCiBtc2dpZCAiVGhlIHJlcXVpcmVkIFNNVFAgc2VydmVyIGlzIG5vdCBwcm9wZXJseSBkZWZpbmVkLiIKIG1zZ3N0ciAiRGVyIGVyZm9yZGVybGljaGUgU01UUC1TZXJ2ZXIgaXN0IG5pY2h0IGtvcnJla3QgZGVmaW5pZXJ0LiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTA1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MzgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgU1RBUlRUTFMhICVzIgogbXNnc3RyICJTZXJ2ZXIgdW50ZXJzdMO8dHp0IGtlaW4gU1RBUlRUTFMhICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MTAgZ2l0LXNlbmQtZW1haWwucGVybDoxNTE0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDMgZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNUQVJUVExTIGZhaWxlZCEgJXMiCiBtc2dzdHIgIlNUQVJUVExTIGZlaGxnZXNjaGxhZ2VuISAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTIzCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NTYKIG1zZ2lkICJVbmFibGUgdG8gaW5pdGlhbGl6ZSBTTVRQIHByb3Blcmx5LiBDaGVjayBjb25maWcgYW5kIHVzZSAtLXNtdHAtZGVidWcuIgogbXNnc3RyICIiCiAiS29ubnRlIFNNVFAgbmljaHQga29ycmVrdCBpbml0aWFsaXNpZXJlbi4gQml0dGUgcHLDvGZlbiBTaWUgSWhyZSAiCiAiS29uZmlndXJhdGlvblxuIgogInVuZCBiZW51dHplbiBTaWUgLS1zbXRwLWRlYnVnLiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHNlbmQgJXNcbiIKIG1zZ3N0ciAiRmVobGVyIGJlaW0gU2VuZGVuICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkRyeS1TZW50ICVzXG4iCiBtc2dzdHIgIlByb2JldmVyc2FuZCAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTZW50ICVzXG4iCiBtc2dzdHIgIiVzIGdlc2VuZGV0XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CiBtc2dpZCAiRHJ5LU9LLiBMb2cgc2F5czpcbiIKIG1zZ3N0ciAiUHJvYmV2ZXJzYW5kIE9LLiBMb2cgZW50aMOkbHQ6XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CiBtc2dpZCAiT0suIExvZyBzYXlzOlxuIgogbXNnc3RyICJPSy4gTG9nIGVudGjDpGx0OlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NTgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU5MQogbXNnaWQgIlJlc3VsdDogIgogbXNnc3RyICJFcmdlYm5pczogIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NjEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU5NAogbXNnaWQgIlJlc3VsdDogT0tcbiIKIG1zZ3N0ciAiRXJnZWJuaXM6IE9LXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3OQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjEyCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImNhbid0IG9wZW4gZmlsZSAlcyIKIG1zZ3N0ciAiS2FubiBEYXRlaSAlcyBuaWNodCDDtmZmbmVuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MjYgZ2l0LXNlbmQtZW1haWwucGVybDoxNjQ2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NTkgZ2l0LXNlbmQtZW1haWwucGVybDoxNjc5CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihtYm94KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIihtYm94KSBGw7xnZSBjYzogaGluenU6ICVzIHZvbiBaZWlsZSAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTYzMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjY1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihtYm94KSBBZGRpbmcgdG86ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIihtYm94KSBGw7xnZSB0bzogaGluenU6ICVzIHZvbiBaZWlsZSAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY4NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzE4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihub24tbWJveCkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIobm9uLW1ib3gpIEbDvGdlIGNjOiBoaW56dTogJXMgdm9uIFplaWxlICclcydcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzIwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE3NTMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKGJvZHkpIEFkZGluZyBjYzogJXMgZnJvbSBsaW5lICclcydcbiIKIG1zZ3N0ciAiKGJvZHkpIEbDvGdlIGNjOiBoaW56dTogJXMgdm9uIFplaWxlICclcydcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODMxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NjQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKCVzKSBDb3VsZCBub3QgZXhlY3V0ZSAnJXMnIgogbXNnc3RyICIoJXMpIEtvbm50ZSAnJXMnIG5pY2h0IGF1c2bDvGhyZW4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTgzOAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODcxCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiglcykgQWRkaW5nICVzOiAlcyBmcm9tOiAnJXMnXG4iCiBtc2dzdHIgIiglcykgRsO8Z2UgJXM6ICVzIGhpbnp1IHZvbjogJyVzJ1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg3NQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoJXMpIGZhaWxlZCB0byBjbG9zZSBwaXBlIHRvICclcyciCiBtc2dzdHIgIiglcykgRmVobGVyIGJlaW0gU2NobGllw59lbiBkZXIgUGlwZSBuYWNoICclcyciCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg3MgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTA1CiBtc2dpZCAiY2Fubm90IHNlbmQgbWVzc2FnZSBhcyA3Yml0IgogbXNnc3RyICJLYW5uIE5hY2hyaWNodCBuaWNodCBhbHMgN2JpdCB2ZXJzZW5kZW4uIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4ODAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkxMwogbXNnaWQgImludmFsaWQgdHJhbnNmZXIgZW5jb2RpbmciCiBtc2dzdHIgIlVuZ8O8bHRpZ2VzIFRyYW5zZmVyLUVuY29kaW5nIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MjEgZ2l0LXNlbmQtZW1haWwucGVybDoxOTczIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk4MworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTU0IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjAwNiBnaXQtc2VuZC1lbWFpbC5wZXJsOjIwMTYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzXG4iCiBtc2dzdHIgImtvbm50ZSAlcyBuaWNodCDDtmZmbmVuOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MjQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk1NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIlczogcGF0Y2ggY29udGFpbnMgYSBsaW5lIGxvbmdlciB0aGFuIDk5OCBjaGFyYWN0ZXJzIgogbXNnc3RyICIlczogUGF0Y2ggZW50aMOkbHQgZWluZSBaZWlsZSwgZGllIGzDpG5nZXIgYWxzIDk5OCBaZWljaGVuIGlzdCIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTQxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NzQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU2tpcHBpbmcgJXMgd2l0aCBiYWNrdXAgc3VmZml4ICclcycuXG4iCiBtc2dzdHIgIkxhc3NlICVzIG1pdCBCYWNrdXAtU3VmZml4ICclcycgYXVzLlxuIgogCiAjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGtlZXAgIlt5fE5dIiBhcyBpcy4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk0NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTc4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkRvIHlvdSByZWFsbHkgd2FudCB0byBzZW5kICVzPyBbeXxOXTogIgogbXNnc3RyICJXb2xsZW4gU2llICVzIHdpcmtsaWNoIHZlcnNlbmRlbj8gW3l8Tl06ICIKLQotI34gbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJXMnIChsb29raW5nIGZvciAnJXMnKSIKLSN+IG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgcGFyc2VuIChiZWkgU3VjaGUgbmFjaCAnJXMnKS4iCi0KLSN+IG1zZ2lkICJiYWQgcXVvdGluZyBvbiAlcyB2YWx1ZSBpbiAnJXMnIgotI34gbXNnc3RyICJVbmfDvGx0aWdlcyBTZXR6ZW4gdm9uIEFuZsO8aHJ1bmdzemVpY2hlbiBiZWkgJXMgV2VydCBpbiAnJXMnIgotCi0jfiBtc2dpZCAiQ291bGQgbm90IHVuc2V0IGNvcmUud29ya3RyZWUgc2V0dGluZyBpbiBzdWJtb2R1bGUgJyVzJyIKLSN+IG1zZ3N0ciAiS29ubnRlIGNvcmUud29ya3RyZWUgRWluc3RlbGx1bmcgaW4gU3VibW9kdWwgJyVzJyBuaWNodCBhdWZoZWJlbi4iCi0KLSN+IG1zZ2lkICJkZXByZWNhdGVkIHN5bm9ueW0gZm9yIC0tY3JlYXRlLXJlZmxvZyIKLSN+IG1zZ3N0ciAidmVyYWx0ZXRlcyBTeW5vbnltIGbDvHIgLS1jcmVhdGUtcmVmbG9nIgotCi0jfiBtc2dpZCAiQ2FuJ3Qgc3RhdCAlcyIKLSN+IG1zZ3N0ciAiS2FubiAnJXMnIG5pY2h0IGxlc2VuLiIKLQotI34gbXNnaWQgImFib3J0IHJlYmFzZSIKLSN+IG1zZ3N0ciAiUmViYXNlIGFiYnJlY2hlbiIKLQotI34gbXNnaWQgIm1ha2UgcmViYXNlIHNjcmlwdCIKLSN+IG1zZ3N0ciAiUmViYXNlLVNrcmlwdCBlcnN0ZWxsZW4iCi0KLSN+IG1zZ2lkICJObyBzdWNoIHJlbW90ZTogJXMiCi0jfiBtc2dzdHIgIktlaW4gc29sY2hlcyBSZW1vdGUtUmVwb3NpdG9yeTogJXMiCi0KLSN+IG1zZ2lkICJjYW5ub3QgbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUiCi0jfiBtc2dzdHIgIkthbm4gZ2VzcGVycnRlcyBBcmJlaXRzdmVyemVpY2huaXMgbmljaHQgdmVyc2NoaWViZW4uIgotCi0jfiBtc2dpZCAiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUiCi0jfiBtc2dzdHIgIkthbm4gZ2VzcGVycnRlcyBBcmJlaXRzdmVyemVpY2huaXMgbmljaHQgbMO2c2NoZW4uIgotCi0jfiBtc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guIgotI34gbXNnc3RyICJBdXRvbWF0aXNjaGVuIFN0YXNoIGFuZ2V3ZW5kZXQuIgotCi0jfiBtc2dpZCAiQ2Fubm90IHN0b3JlICRzdGFzaF9zaGExIgotI34gbXNnc3RyICJLYW5uICRzdGFzaF9zaGExIG5pY2h0IHNwZWljaGVybi4iCi0KLSN+IG1zZ2lkICIiCi0jfiAiXG4iCi0jfiAiXHRIb3dldmVyLCBpZiB5b3UgcmVtb3ZlIGV2ZXJ5dGhpbmcsIHRoZSByZWJhc2Ugd2lsbCBiZSBhYm9ydGVkLlxuIgotI34gIlxuIgotI34gIlx0IgotI34gbXNnc3RyICIiCi0jfiAiXG4iCi0jfiAiXHRXZW5uIFNpZSBqZWRvY2ggYWxsZXMgbMO2c2NoZW4sIHdpcmQgZGVyIFJlYmFzZSBhYmdlYnJvY2hlbi5cbiIKLSN+ICJcbiIKLSN+ICJcdCIKLQotI34gbXNnaWQgIkRpcnR5IGluZGV4OiBjYW5ub3QgbWVyZ2UgKGRpcnR5OiAlcykiCi0jfiBtc2dzdHIgIkdlw6RuZGVydGVyIEluZGV4OiBrYW5uIG5pY2h0IG1lcmdlbiAoZ2XDpG5kZXJ0OiAlcykiCi0KLSN+IG1zZ2lkICIoKy8tKXgiCi0jfiBtc2dzdHIgIigrLy0peCIKLQotI34gbXNnaWQgIjxjb21tYW5kPiIKLSN+IG1zZ3N0ciAiPFByb2dyYW1tPiIKLQotI34gbXNnaWQgIkV2ZXJ5ZGF5IEdpdCBXaXRoIDIwIENvbW1hbmRzIE9yIFNvIgotI34gbXNnc3RyICJUw6RnbGljaGUgQmVudXR6dW5nIHZvbiBHaXQgbWl0IHVuZ2Vmw6RociAyMCBCZWZlaGxlbiIKLQotI34gbXNnaWQgInB1c2h8ZmV0Y2giCi0jfiBtc2dzdHIgInB1c2h8ZmV0Y2giCi0KLSN+IG1zZ2lkICJ3WyxpMVssaTJdXSIKLSN+IG1zZ3N0ciAid1ssaTFbLGkyXV0iCi0KLSN+IG1zZ2lkICJFbnRlcmluZyAnJGRpc3BsYXlwYXRoJyIKLSN+IG1zZ3N0ciAiQmV0cmV0ZSAnJGRpc3BsYXlwYXRoJyIKLQotI34gbXNnaWQgIlN0b3BwaW5nIGF0ICckZGlzcGxheXBhdGgnOyBzY3JpcHQgcmV0dXJuZWQgbm9uLXplcm8gc3RhdHVzLiIKLSN+IG1zZ3N0ciAiU3RvcHBlIGJlaSAnJGRpc3BsYXlwYXRoJzsgU2tyaXB0IGdhYiBuaWNodC1OdWxsIFN0YXR1cyB6dXLDvGNrLiIKLQotI34gbXNnaWQgIkNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmciCi0jfiBtc2dzdHIgIktvbm50ZSAnJXMnIG5pY2h0IHp1bSBTY2hyZWliZW4gw7ZmZm5lbi4iCi0KLSN+IG1zZ2lkICIiCi0jfiAidW5leHBlY3RlZCAxc3QgbGluZSBvZiBzcXVhc2ggbWVzc2FnZTpcbiIKLSN+ICJcbiIKLSN+ICJcdCUuKnMiCi0jfiBtc2dzdHIgIiIKLSN+ICJ1bmVyd2FydGV0ZSBlcnN0ZSBaZWlsZSBkZXIgU3F1YXNoLUJlc2NocmVpYnVuZzpcbiIKLSN+ICJcbiIKLSN+ICJcdCUuKnMiCi0KLSN+IG1zZ2lkICIiCi0jfiAiaW52YWxpZCAxc3QgbGluZSBvZiBzcXVhc2ggbWVzc2FnZTpcbiIKLSN+ICJcbiIKLSN+ICJcdCUuKnMiCi0jfiBtc2dzdHIgIiIKLSN+ICJ1bmfDvGx0aWdlIGVyc3RlIFplaWxlIGRlciBTcXVhc2gtQmVzY2hyZWlidW5nOlxuIgotI34gIlxuIgotI34gIlx0JS4qcyIKLQotI34gbXNnaWQgIkJVRzogcmV0dXJuZWQgcGF0aCBzdHJpbmcgZG9lc24ndCBtYXRjaCBjd2Q/IgotI34gbXNnc3RyICJGRUhMRVI6IHp1csO8Y2tnZWdlYmVuZSBaZWljaGVua2V0dGUgZsO8ciBQZmFkIGVudHNwcmljaHQgbmljaHQgY3dkPyIKLQotI34gbXNnaWQgIkVycm9yIGluIG9iamVjdCIKLSN+IG1zZ3N0ciAiRmVobGVyIGluIE9iamVrdCIKLQotI34gbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgRU9GIgotI34gbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogQUNLL05BSyBlcndhcnRldCwgRU9GIGJla29tbWVuIgotCi0jfiBtc2dpZCAiaW52YWxpZCBmaWx0ZXItc3BlYyBleHByZXNzaW9uICclcyciCi0jfiBtc2dzdHIgIlVuZ8O8bHRpZ2VyIGZpbHRlci1zcGVjIEF1c2RydWNrICclcycuIgotCi0jfiBtc2dpZCAiVGhlIGNvcHkgb2YgdGhlIHBhdGNoIHRoYXQgZmFpbGVkIGlzIGZvdW5kIGluOiAlcyIKLSN+IG1zZ3N0ciAiRGllIEtvcGllIGRlcyBmZWhsZ2VzY2hsYWdlbmVuIFBhdGNoZXMgYmVmaW5kZXQgc2ljaCBpbjogJXMiCi0KLSN+IG1zZ2lkICJwYXRoc3BlYyBhbmQgLS1hbGwgYXJlIGluY29tcGF0aWJsZSIKLSN+IG1zZ3N0ciAiUGZhZHNwZXppZmlrYXRpb25lbiB1bmQgLS1hbGwgc2luZCBpbmtvbXBhdGliZWwuIgotCi0jfiBtc2dpZCAiU3VibW9kdWxlICckbmFtZScgKCR1cmwpIHVucmVnaXN0ZXJlZCBmb3IgcGF0aCAnJGRpc3BsYXlwYXRoJyIKLSN+IG1zZ3N0ciAiIgotI34gIlN1Ym1vZHVsICckbmFtZScgKCR1cmwpIGbDvHIgUGZhZCAnJGRpc3BsYXlwYXRoJyB3dXJkZSBhdXMgZGVyICIKLSN+ICJLb25maWd1cmF0aW9uIGVudGZlcm50LiIKLQotI34gbXNnaWQgIlRvL0NjL0JjYyBmaWVsZHMgYXJlIG5vdCBpbnRlcnByZXRlZCB5ZXQsIHRoZXkgaGF2ZSBiZWVuIGlnbm9yZWRcbiIKLSN+IG1zZ3N0ciAiIgotI34gIlRvL0NjL0JjYyBGZWxkZXIgd3VyZGVuIG5vY2ggbmljaHQgaW50ZXJwcmV0aWVydCwgc2llIHd1cmRlbiBpZ25vcmllcnRcbiIKLQotI34gbXNnaWQgIiIKLSN+ICJlbXB0eSBzdHJpbmdzIGFzIHBhdGhzcGVjcyB3aWxsIGJlIG1hZGUgaW52YWxpZCBpbiB1cGNvbWluZyByZWxlYXNlcy4gIgotI34gInBsZWFzZSB1c2UgLiBpbnN0ZWFkIGlmIHlvdSBtZWFudCB0byBtYXRjaCBhbGwgcGF0aHMiCi0jfiBtc2dzdHIgIiIKLSN+ICJMZWVyZSBTdHJpbmdzIGFscyBQZmFkc3BlemlmaWthdGlvbmVuIHdlcmRlbiBpbiBrb21tZW5kZW4gUmVsZWFzZXMgIgotI34gInVuZ8O8bHRpZy5cbiIKLSN+ICJCaXR0ZSBiZW51dHplbiBTaWUgc3RhdHRkZXNzZW4gLiB3ZW5uIFNpZSBhbGxlIFBmYWRlIG1laW5lbi4iCi0KLSN+IG1zZ2lkICJjb3VsZCBub3QgdHJ1bmNhdGUgJyVzJyIKLSN+IG1zZ3N0ciAiS29ubnRlICclcycgbmljaHQgYWJzY2huZWlkZW4uIgotCi0jfiBtc2dpZCAiY291bGQgbm90IGZpbmlzaCAnJXMnIgotI34gbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBhYnNjaGxpZcOfZW4uIgotCi0jfiBtc2dpZCAiY291bGQgbm90IGNsb3NlICVzIgotI34gbXNnc3RyICJLb25udGUgJyVzJyBuaWNodCBzY2hsaWXDn2VuLiIKLQotI34gbXNnaWQgIkNvcGllZCBhIG1pc25hbWVkIGJyYW5jaCAnJXMnIGF3YXkiCi0jfiBtc2dzdHIgImZhbHNjaCBiZW5hbm50ZW4gQnJhbmNoICclcycgd2Vna29waWVydCIKLQotI34gbXNnaWQgIml0IGRvZXMgbm90IG1ha2Ugc2Vuc2UgdG8gY3JlYXRlICdIRUFEJyBtYW51YWxseSIKLSN+IG1zZ3N0ciAiJ0hFQUQnIGRhcmYgbmljaHQgbWFudWVsbCBlcnN0ZWxsdCB3ZXJkZW4iCi0KLSN+IG1zZ2lkICJEb24ndCBrbm93IGhvdyB0byBjbG9uZSAlcyIKLSN+IG1zZ3N0ciAiV2Vpw58gbmljaHQgd2llICVzIHp1IGtsb25lbiBpc3QuIgotCi0jfiBtc2dpZCAic2hvdyBpZ25vcmVkIGZpbGVzIgotI34gbXNnc3RyICJpZ25vcmllcnRlIERhdGVpZW4gYW56ZWlnZW4iCi0KLSN+IG1zZ2lkICJEb24ndCBrbm93IGhvdyB0byBmZXRjaCBmcm9tICVzIgotI34gbXNnc3RyICJXZWnDnyBuaWNodCB3aWUgdm9uICVzIGFuZ2Vmb3JkZXJ0IHdpcmQuIgotCi0jfiBtc2dpZCAiJyR0ZXJtJyBpcyBub3QgYSB2YWxpZCB0ZXJtIgotI34gbXNnc3RyICInJHRlcm0nIGlzdCBrZWluIGfDvGx0aWdlciBCZWdyaWZmIgotCi0jfiBtc2dpZCAiIgotI34gImVycm9yOiB1bmtub3duIG9wdGlvbiBmb3IgJ3N0YXNoIHNhdmUnOiAkb3B0aW9uXG4iCi0jfiAiICAgICAgIFRvIHByb3ZpZGUgYSBtZXNzYWdlLCB1c2UgZ2l0IHN0YXNoIHNhdmUgLS0gJyRvcHRpb24nIgotI34gbXNnc3RyICIiCi0jfiAiRmVobGVyOiB1bmJla2FubnRlIE9wdGlvbiBmw7xyICdzdGFzaCBzYXZlJzogJG9wdGlvblxuIgotI34gIiAgICAgICAgVW0gZWluZSBCZXNjaHJlaWJ1bmcgYW56dWdlYmVuLCBiZW51dHplbiBTaWUgXCJnaXQgc3Rhc2ggc2F2ZSAtLSAiCi0jfiAiJyRvcHRpb24nXCIiCi0KLSN+IG1zZ2lkICJGYWlsZWQgdG8gcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSBwYXRoICckc21fcGF0aCciCi0jfiBtc2dzdHIgIkZlaGxlciBiZWkgUmVrdXJzaW9uIGluIFN1Ym1vZHVsLVBmYWQgJyRzbV9wYXRoJyIKLQotI34gbXNnaWQgIiUlKHRyYWlsZXJzKSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKLSN+IG1zZ3N0ciAiJSUodHJhaWxlcnMpIGFremVwdGllcnQga2VpbmUgQXJndW1lbnRlIgotCi0jfiBtc2dpZCAiIgotI34gIldhcm5pbmc6IHRoZSBTSEEtMSBpcyBtaXNzaW5nIG9yIGlzbid0IGEgY29tbWl0IGluIHRoZSBmb2xsb3dpbmcgbGluZTpcbiIKLSN+ICIgLSAkbGluZSIKLSN+IG1zZ3N0ciAiIgotI34gIldhcm51bmc6IERlciBTSEEtMSBpbiBkZXIgZm9sZ2VuZGVuIFplaWxlIGZlaGx0IG9kZXIgaXN0IGtlaW4gQ29tbWl0OlxuIgotI34gIiAtICRsaW5lIgotCi0jfiBtc2dpZCAiIgotI34gIldhcm5pbmc6IHRoZSBjb21tYW5kIGlzbid0IHJlY29nbml6ZWQgaW4gdGhlIGZvbGxvd2luZyBsaW5lOlxuIgotI34gIiAtICRsaW5lIgotI34gbXNnc3RyICIiCi0jfiAiV2FybnVuZzogRGFzIEtvbW1hbmRvIGluIGRlciBmb2xnZW5kZW4gWmVpbGUgd3VyZGUgbmljaHQgZXJrYW5udDpcbiIKLSN+ICIgLSAkbGluZSIKLQotI34gbXNnaWQgIk9yIHlvdSBjYW4gYWJvcnQgdGhlIHJlYmFzZSB3aXRoICdnaXQgcmViYXNlIC0tYWJvcnQnLiIKLSN+IG1zZ3N0ciAiT2RlciBTaWUga8O2bm5lbiBkZW4gUmViYXNlIG1pdCAnZ2l0IHJlYmFzZSAtLWFib3J0JyBhYmJyZWNoZW4uIgotCi0jfiBtc2dpZCAic3VibW9kdWxlIHVwZGF0ZSBzdHJhdGVneSBub3Qgc3VwcG9ydGVkIGZvciBzdWJtb2R1bGUgJyVzJyIKLSN+IG1zZ3N0ciAiIgotI34gIlN0cmF0ZWdpZSB6dXIgQWt0dWFsaXNpZXJ1bmcgdm9uIFN1Ym1vZHVsZW4gZsO8ciBTdWJtb2R1bCAnJXMnIG5pY2h0ICIKLSN+ICJ1bnRlcnN0w7x0enQuIgotCi0jfiBtc2dpZCAiY2hhbmdlIHVwc3RyZWFtIGluZm8iCi0jfiBtc2dzdHIgIkluZm9ybWF0aW9uZW4genVtIFVwc3RyZWFtLUJyYW5jaCDDpG5kZXJuIgotCi0jfiBtc2dpZCAiIgotI34gIlxuIgotI34gIklmIHlvdSB3YW50ZWQgdG8gbWFrZSAnJXMnIHRyYWNrICclcycsIGRvIHRoaXM6XG4iCi0jfiAiXG4iCi0jfiBtc2dzdHIgIiIKLSN+ICJcbiIKLSN+ICJXZW5uIFNpZSB3b2xsdGVuLCBkYXNzICclcycgZGVuIEJyYW5jaCAnJXMnIGFscyBVcHN0cmVhbS1CcmFuY2ggaGF0LCAiCi0jfiAiZsO8aHJlbiBTaWUgYXVzOlxuIgotCi0jfiBtc2dpZCAiYmFzZW5hbWUiCi0jfiBtc2dzdHIgIkJhc2lzbmFtZSIKLQotI34gbXNnaWQgInByZXBlbmQgcGFyZW50IHByb2plY3QncyBiYXNlbmFtZSB0byBvdXRwdXQiCi0jfiBtc2dzdHIgIkJhc2lzbmFtZSBkZXMgRWx0ZXJucHJvamVrdGVzIGFuIEF1c2dhYmVuIHZvcmFuc3RlbGxlbiIKLQotI34gbXNnaWQgIkNvdWxkIG5vdCBvcGVuIGZpbGUgJyVzJyIKLSN+IG1zZ3N0ciAiS29ubnRlIERhdGVpICclcycgbmljaHQgw7ZmZm5lbiIKLQotI34gbXNnaWQgImluICUwLjFmIHNlY29uZHMgYXV0b21hdGljYWxseS4uLiIKLSN+IG1zZ3N0ciAiQXV0b21hdGlzY2hlIEF1c2bDvGhydW5nIGluICUwLjFmIFNla3VuZGVuIC4uLiIKLQotI34gbXNnaWQgImR1cDIoJWQsJWQpIGZhaWxlZCIKLSN+IG1zZ3N0ciAiZHVwMiglZCwlZCkgZmVobGdlc2NobGFnZW4iCi0KLSN+IG1zZ2lkICJJbml0aWFsIGNvbW1pdCBvbiAiCi0jfiBtc2dzdHIgIkluaXRpYWxlciBDb21taXQgYXVmICIKLQotI34gbXNnaWQgIlBhdGNoIGlzIGVtcHR5LiBXYXMgaXQgc3BsaXQgd3Jvbmc/IgotI34gbXNnc3RyICJQYXRjaCBpc3QgbGVlci4gV2FyIGRlc3NlbiBBdWZ0ZWlsdW5nIGZhbHNjaD8iCi0KLSN+IG1zZ2lkICIiCi0jfiAiWW91IHN0aWxsIGhhdmUgdW5tZXJnZWQgcGF0aHMgaW4geW91ciBpbmRleC5cbiIKLSN+ICJEaWQgeW91IGZvcmdldCB0byB1c2UgJ2dpdCBhZGQnPyIKLSN+IG1zZ3N0ciAiIgotI34gIlNpZSBoYWJlbiBpbW1lciBub2NoIG5pY2h0IHp1c2FtbWVuZ2Vmw7xocnRlIFBmYWRlIGltIEluZGV4LlxuIgotI34gIkhhYmVuIFNpZSB2ZXJnZXNzZW4gJ2dpdCBhZGQnIHp1IGJlbnV0emVuPyIKLQotI34gbXNnaWQgIiIKLSN+ICJDYW5ub3QgdXBkYXRlIHBhdGhzIGFuZCBzd2l0Y2ggdG8gYnJhbmNoICclcycgYXQgdGhlIHNhbWUgdGltZS5cbiIKLSN+ICJEaWQgeW91IGludGVuZCB0byBjaGVja291dCAnJXMnIHdoaWNoIGNhbiBub3QgYmUgcmVzb2x2ZWQgYXMgY29tbWl0PyIKLSN+IG1zZ3N0ciAiIgotI34gIkthbm4gbmljaHQgZ2xlaWNoemVpdGlnIFBmYWRlIGFrdHVhbGlzaWVyZW4gdW5kIHp1IEJyYW5jaCAnJXMnIHdlY2hzZWxuLlxuIgotI34gIkhhYmVuIFNpZSBiZWFic2ljaHRpZ3QgJyVzJyBhdXN6dWNoZWNrZW4sIHdlbGNoZXIgbmljaHQgYWxzIENvbW1pdCAiCi0jfiAiYXVmZ2Vsw7ZzdCB3ZXJkZW4ga2Fubj8iCi0KLSN+IG1zZ2lkICJFeHBsaWNpdCBwYXRocyBzcGVjaWZpZWQgd2l0aG91dCAtaSBvciAtbzsgYXNzdW1pbmcgLS1vbmx5IHBhdGhzLi4uIgotI34gbXNnc3RyICJFeHBsaXppdGUgUGZhZGUgb2huZSAtaSBvZGVyIC1vIGFuZ2VnZWJlbjsgbmVobWUgLS1vbmx5IGFuIgotCi0jfiBtc2dpZCAiZGVmYXVsdCBtb2RlIGZvciByZWN1cnNpb24iCi0jfiBtc2dzdHIgIlN0YW5kYXJkLU1vZHVzIGbDvHIgUmVrdXJzaW9uIgotCi0jfiBtc2dpZCAic3VibW9kdWxlLS1oZWxwZXIgc3ViY29tbWFuZCBtdXN0IGJlIGNhbGxlZCB3aXRoIGEgc3ViY29tbWFuZCIKLSN+IG1zZ3N0ciAic3VibW9kdWxlLS1oZWxwZXIgbXVzcyBtaXQgZWluZW0gVW50ZXJiZWZlaGwgYXVmZ2VydWZlbiB3ZXJkZW4iCi0KLSN+IG1zZ2lkICJ0YWc6IHRhZ2dpbmcgIgotI34gbXNnc3RyICJ0YWc6IHRhZ2dlICIKLQotI34gbXNnaWQgImNvbW1pdCBvYmplY3QiCi0jfiBtc2dzdHIgIkNvbW1pdC1PYmpla3QiCi0KLSN+IG1zZ2lkICJ0cmVlIG9iamVjdCIKLSN+IG1zZ3N0ciAiVHJlZS1PYmpla3QiCi0KLSN+IG1zZ2lkICJibG9iIG9iamVjdCIKLSN+IG1zZ3N0ciAiQmxvYi1PYmpla3QiCi0KLSMsIGZ1enp5Ci0jfiBtc2dpZCAiU3VibW9kdWxlICclcycgY2Fubm90IGNoZWNrb3V0IG5ldyBIRUFEIgotI34gbXNnc3RyICJTdWJtb2R1bCAnJXMnIGthbm4gQWx0ZXJuYXRpdmUgbmljaHQgaGluenVmw7xnZW46ICVzIgotCi0jfiBtc2dpZCAiaW5zYW5lbHkgbG9uZyBvYmplY3QgZGlyZWN0b3J5ICUuKnMiCi0jfiBtc2dzdHIgInp1IGxhbmdlcyBPYmpla3QtVmVyemVpY2huaXMgJS4qcyIKLQotI34gbXNnaWQgInRhZyBuYW1lIHRvbyBsb25nOiAlLipzLi4uIgotI34gbXNnc3RyICJUYWduYW1lIHp1IGxhbmc6ICUuKnMuLi4iCi0KLSN+IG1zZ2lkICJ0YWcgaGVhZGVyIHRvbyBiaWcuIgotI34gbXNnc3RyICJUYWctS29wZiB6dSBncm/Dny4iCi0KLSN+IG1zZ2lkICIiCi0jfiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKLSN+ICJtYXJrZWQgZm9yIGRpc2NhcmRpbmciCi0jfiBtc2dzdHIgIiIKLSN+ICJXZW5uIGRlciBQYXRjaCBzYXViZXIgYW5nZXdlbmRldCB3ZXJkZW4ga2Fubiwgd2lyZCBkZXIgYmVhcmJlaXRldGUgUGF0Y2gtIgotI34gIkJsb2NrXG4iCi0jfiAiZGlyZWt0IGFscyB6dW0gVmVyd2VyZmVuIG1hcmtpZXJ0LiIKLQotI34gbXNnaWQgIiIKLSN+ICJUaGVyZSBpcyBub3RoaW5nIHRvIGV4Y2x1ZGUgZnJvbSBieSA6KGV4Y2x1ZGUpIHBhdHRlcm5zLlxuIgotI34gIlBlcmhhcHMgeW91IGZvcmdvdCB0byBhZGQgZWl0aGVyICc6Lycgb3IgJy4nID8iCi0jfiBtc2dzdHIgIiIKLSN+ICI6KGV4Y2x1ZGUpIE11c3RlciwgYWJlciBrZWluZSBhbmRlcmVuIFBmYWRzcGV6aWZpa2F0aW9uZW4gYW5nZWdlYmVuLlxuIgotI34gIlZpZWxsZWljaHQgaGFiZW4gU2llIHZlcmdlc3NlbiBlbnR3ZWRlciAnOi8nIG9kZXIgJy4nIGhpbnp1enVmw7xnZW4/IgotCi0jfiBtc2dpZCAidW5yZWNvZ25pemVkIGZvcm1hdDogJSUoJXMpIgotI34gbXNnc3RyICJuaWNodCBlcmthbm50ZXMgRm9ybWF0OiAlJSglcykiCi0KLSN+IG1zZ2lkICI6c3RyaXA9IHJlcXVpcmVzIGEgcG9zaXRpdmUgaW50ZWdlciBhcmd1bWVudCIKLSN+IG1zZ3N0ciAiOnN0cmlwPSBlcmZvcmRlcnQgZWluZSBwb3NpdGl2ZSBHYW56emFobCBhbHMgQXJndW1lbnQiCi0KLSN+IG1zZ2lkICJyZWYgJyVzJyBkb2VzIG5vdCBoYXZlICVsZCBjb21wb25lbnRzIHRvIDpzdHJpcCIKLSN+IG1zZ3N0ciAiUmVmZXJlbnogJyVzJyBoYXQga2VpbmUgJWxkIEtvbXBvbmVudGVuIGbDvHIgOnN0cmlwIgotCi0jfiBtc2dpZCAidW5rbm93biAlLipzIGZvcm1hdCAlcyIKLSN+IG1zZ3N0ciAiVW5iZWthbm50ZXMgJS4qcyBGb3JtYXQgJXMiCi0KLSN+IG1zZ2lkICJbJXM6IGdvbmVdIgotI34gbXNnc3RyICJbJXM6IGVudGZlcm50XSIKLQotI34gbXNnaWQgIlslc10iCi0jfiBtc2dzdHIgIlslc10iCi0KLSN+IG1zZ2lkICJbJXM6IGJlaGluZCAlZF0iCi0jfiBtc2dzdHIgIlslczogJWQgaGludGVyaGVyXSIKLQotI34gbXNnaWQgIlslczogYWhlYWQgJWRdIgotI34gbXNnc3RyICJbJXM6ICVkIHZvcmF1c10iCi0KLSN+IG1zZ2lkICJbJXM6IGFoZWFkICVkLCBiZWhpbmQgJWRdIgotI34gbXNnc3RyICJbJXM6ICVkIHZvcmF1cywgJWQgaGludGVyaGVyXSIKLQotI34gbXNnaWQgIiAqKioqIGludmFsaWQgcmVmICoqKioiCi0jfiBtc2dzdHIgIiAqKioqIHVuZ8O8bHRpZ2UgUmVmZXJlbnogKioqKiIKLQotI34gbXNnaWQgImdpdCBtZXJnZSBbPG9wdGlvbnM+XSA8bXNnPiBIRUFEIDxjb21taXQ+IgotI34gbXNnc3RyICJnaXQgbWVyZ2UgWzxPcHRpb25lbj5dIDxCZXNjaHJlaWJ1bmc+IEhFQUQgPENvbW1pdD4iCi0KLSN+IG1zZ2lkICJVc2UgYW4gZXhwZXJpbWVudGFsIGJsYW5rLWxpbmUtYmFzZWQgaGV1cmlzdGljIHRvIGltcHJvdmUgZGlmZnMiCi0jfiBtc2dzdHIgIiIKLSN+ICJlaW5lIGV4cGVyaW1lbnRlbGxlLCBhdWYgTGVlcnplaWxlbiBiYXNpZXJlbmRlIEhldXJpc3RpayB6dXIgIgotI34gIlZlcmJlc3NlcnVuZ1xuIgotI34gImRlciBEYXJzdGVsbHVuZyB2b24gVW50ZXJzY2hpZWRlbiB2ZXJ3ZW5kZW4iCi0KLSN+IG1zZ2lkICJDbGV2ZXIuLi4gYW1lbmRpbmcgdGhlIGxhc3Qgb25lIHdpdGggZGlydHkgaW5kZXguIgotI34gbXNnc3RyICJLbHVnIC4uLiBkZW4gbGV0enRlbiBDb21taXQgbWl0IGVpbmVtIGdlw6RuZGVydGVuIEluZGV4IG5hY2hiZXNzZXJuLiIKLQotI34gbXNnaWQgIiIKLSN+ICJ0aGUgZm9sbG93aW5nIHN1Ym1vZHVsZSAob3Igb25lIG9mIGl0cyBuZXN0ZWQgc3VibW9kdWxlcylcbiIKLSN+ICJ1c2VzIGEgLmdpdCBkaXJlY3Rvcnk6IgotI34gbXNnaWRfcGx1cmFsICIiCi0jfiAidGhlIGZvbGxvd2luZyBzdWJtb2R1bGVzIChvciBvbmUgb2YgdGhlaXIgbmVzdGVkIHN1Ym1vZHVsZXMpXG4iCi0jfiAidXNlIGEgLmdpdCBkaXJlY3Rvcnk6IgotI34gbXNnc3RyWzBdICIiCi0jfiAiZGFzIGZvbGdlbmRlIFN1Ym1vZHVsIChvZGVyIGVpbiBnZXNjaGFjaHRlbHRlcyBTdWJtb2R1bCBoaWVydm9uKVxuIgotI34gImJlbnV0enQgZWluIC5naXQtVmVyemVpY2huaXM6IgotI34gbXNnc3RyWzFdICIiCi0jfiAiZGllIGZvbGdlbmRlbiBTdWJtb2R1bGUgKG9kZXIgZWluIGdlc2NoYWNodGVsdGVzIFN1Ym1vZHVsIGhpZXJ2b24pXG4iCi0jfiAiYmVudXR6ZW4gZWluIC5naXQtVmVyemVpY2huaXM6IgotCi0jfiBtc2dpZCAiIgotI34gIlxuIgotI34gIih1c2UgJ3JtIC1yZicgaWYgeW91IHJlYWxseSB3YW50IHRvIHJlbW92ZSBpdCBpbmNsdWRpbmcgYWxsIG9mIGl0cyAiCi0jfiAiaGlzdG9yeSkiCi0jfiBtc2dzdHIgIiIKLSN+ICJcbiIKLSN+ICIoYmVudXR6ZW4gU2llICdybSAtcmYnIHdlbm4gU2llIGRpZXNlcyBTdWJtb2R1bCB3aXJrbGljaCBtaXRzYW10XG4iCi0jfiAic2VpbmVyIEhpc3RvcmllIGzDtnNjaGVuIG3DtmNodGVuKSIKLQotI34gbXNnaWQgIllvdXIgbG9jYWwgY2hhbmdlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBjaGVycnktcGljay4iCi0jfiBtc2dzdHIgIiIKLSN+ICJJaHJlIGxva2FsZW4gw4RuZGVydW5nZW4gd8O8cmRlbiBkdXJjaCBkZW4gQ2hlcnJ5LVBpY2sgw7xiZXJzY2hyaWViZW4gd2VyZGVuLiIKLQotI34gbXNnaWQgIkNhbm5vdCByZXZlcnQgZHVyaW5nIGFub3RoZXIgcmV2ZXJ0LiIKLSN+IG1zZ3N0ciAiS2FubiBSZXZlcnQgbmljaHQgd8OkaHJlbmQgZWluZXMgYW5kZXJlbiBSZXZlcnRzIGF1c2bDvGhyZW4uIgotCi0jfiBtc2dpZCAiQ2Fubm90IGNoZXJyeS1waWNrIGR1cmluZyBhbm90aGVyIGNoZXJyeS1waWNrLiIKLSN+IG1zZ3N0ciAiIgotI34gIkthbm4gQ2hlcnJ5LVBpY2sgbmljaHQgd8OkaHJlbmQgZWluZXMgYW5kZXJlbiBDaGVycnktUGlja3MgYXVzZsO8aHJlbi4iCi0KLSN+IG1zZ2lkICJDb3VsZCBub3QgcGFyc2UgbGluZSAlZC4iCi0jfiBtc2dzdHIgIktvbm50ZSBaZWlsZSAlZCBuaWNodCBwYXJzZW4uIgotCi0jfiBtc2dpZCAiQ291bGQgbm90IG9wZW4gJXMiCi0jfiBtc2dzdHIgIktvbm50ZSAlcyBuaWNodCDDtmZmbmVuIgotCi0jfiBtc2dpZCAiQ291bGQgbm90IGZvcm1hdCAlcy4iCi0jfiBtc2dzdHIgIktvbm50ZSAlcyBuaWNodCBmb3JtYXRpZXJlbi4iCi0KLSN+IG1zZ2lkICIlczogJXMiCi0jfiBtc2dzdHIgIiVzOiAlcyIKLQotI34gbXNnaWQgImNhbm5vdCBvcGVuICVzOiAlcyIKLSN+IG1zZ3N0ciAiS2FubiAlcyBuaWNodCDDtmZmbmVuOiAlcyIKLQotI34gbXNnaWQgIllvdSBuZWVkIHRvIHNldCB5b3VyIGNvbW1pdHRlciBpbmZvIGZpcnN0IgotI34gbXNnc3RyICJTaWUgbcO8c3NlbiB6dWVyc3QgZGllIEluZm9ybWF0aW9uZW4genVtIENvbW1pdC1FcnN0ZWxsZXIgc2V0emVuLiIKZGlmZiAtLWdpdCBhL3BvL2VsLnBvIGIvcG8vZWwucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzAzZjQ2ZAotLS0gL2Rldi9udWxsCisrKyBiL3BvL2VsLnBvCkBAIC0wLDAgKzEsMjE0NjggQEAKKyMgR3JlZWsgdHJhbnNsYXRpb25zIGZvciBHaXQuCisjIENvcHlyaWdodCAoQykgMjAxOSBKaW1teSBBbmdlbGFrb3MgPHZ5cnVzc0BoZWxsdWcuZ3I+CisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBHaXQgcGFja2FnZS4KKyMKKyMgR3JlZWsgdHJhbnNsYXRpb25zIG9mIGNvbW1vbiBHaXQgd29yZHMgdXNlZCBpbiB0aGlzIGZpbGU6CisjCisjICAgRW5nbGlzaCAgICAgICAgICB8ICBHcmVlaworIyAgIC0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyAgIDMtd2F5IG1lcmdlICAgICAgfCAgz4TPgc65z4DOu86uIM+Dz4XOs8+Hz47Ovc61z4XPg863CisjICAgI05OICAgICAgICAgICAgICB8ICDPhc+AJyDOsc+BLiBOTgorIyAgIGFtZW5kICAgICAgICAgICAgfCAgz4TPgc6/z4DOv8+Azr/Ouc+OCisjICAgYXJjaGl2ZSAgICAgICAgICB8ICDOsc+Bz4fOtc65zr/OuM6uzrrOtworIyAgIGJhY2t3YXJkICAgICAgICAgfAorIyAgICAgY29tcGF0aWJpbGl0eSAgfCAgz4PPhc68zrLOsc+Ez4zPhM63z4TOsSDPgM+Bzr/PgiDPhM6xIM+Azq/Pg8+JCisjICAgYmFyZSByZXBvc2l0b3J5ICB8ICDOs8+FzrzOvc+MIM6xz4DOv864zrXPhM6uz4HOuc6/CisjICAgYmlzZWN0ICAgICAgICAgICB8ICDOtM65z4fOv8+Ezr/OvM+OCisjICAgYnJhbmNoICAgICAgICAgICB8ICDOus67zqzOtM6/z4IKKyMgICBidWcgICAgICAgICAgICAgIHwgIM+Dz4bOrM67zrzOsQorIyAgIGJ1bmRsZSAgICAgICAgICAgfCAgzrTOtc+DzrzOr860zrEKKyMgICBieXBhc3MgICAgICAgICAgIHwgIM+AzrHPgc6xzrrOrM68z4DPhM+JCisjICAgKGEpIGNoZWNrb3V0ICAgICB8ICDOtc6+zrHOs8+JzrPOrgorIyAgICh0bykgY2hlY2tvdXQgICAgfCAgzrXOvs6szrPPiQorIyAgIGNoZXJyeS1waWNrICAgICAgfCAgzrXPgM65zrvOtc66z4TOuc66zq4gzrTOuc6xzrvOv86zzq4KKyMgICAoYSkgY29tbWl0ICAgICAgIHwgIM68zrnOsSDPhc+Azr/Oss6/zrvOrgorIyAgICh0bykgY29tbWl0ICAgICAgfCAgz4XPgM6/zrLOrM67zrvPiQorIyAgIGNvbW1pdC1pc2ggICAgICAgfCAgz4XPgM6/zrLOv867zq4gzq4gz4bOsc65zr3Ov868zrXOvc65zrrOrgorIyAgIGNvbmZpZyBmaWxlICAgICAgfCAgzrHPgc+HzrXOr86/IM+Bz4XOuM68zq/Pg861z4nOvQorIyAgIGNvbmZsaWN0ICAgICAgICAgfCAgz4PPjc6zzrrPgc6/z4XPg863CisjICAgZGFuZ2xpbmcgICAgICAgICB8ICDOtc66zrrPgc61zrzOrc+CCisjICAgKHRvKSBkZWJ1ZyAgICAgICB8ICDOsc+Azr/Pg8+GzrHOu868zrHPhM+Ozr3PiQorIyAgIGRlYnVnZ2luZyAgICAgICAgfCAgzrHPgM6/z4PPhs6xzrvOvM6sz4TPic+DzrcKKyMgICBkZWZsYXRlICAgICAgICAgIHwgIM6xz4DOv8+Dz4XOvM+AzrnOrc62z4kKKyMgICBkaXJlY3RvcnkgICAgICAgIHwgIM+GzqzOus61zrvOv8+CCisjICAgZGl2ZXJnZSAgICAgICAgICB8ICDOsc+Azr/Ous67zq/Ovc+JCisjICAgZWRpdG9yICAgICAgICAgICB8ICDOtM65zr/Pgc64z4nPhM6uz4IKKyMgICBlbnRyeSAgICAgICAgICAgIHwgIM+Dz4TOv865z4fOtc6vzr8KKyMgICBmYXN0LWZvcndhcmQgICAgIHwgIM+EzrHPh861zq/OsSDPgM+Bzr/Pjs64zrfPg863CisjICAgZmFzdC1mb3J3YXJkZWQgICB8ICDPhM6xz4fOrc+Jz4Igz4DPgc6/z4nOuM63zrzOrc69zr8KKyMgICAoYSkgZmV0Y2ggICAgICAgIHwgIM6xzr3OrM66z4TOt8+DzrcKKyMgICAodG8pIGZldGNoICAgICAgIHwgIM6xzr3Osc66z4TPjgorIyAgIGZpeCBjb25mbGljdHMgICAgfCAgzrXPgM6vzrvPhc+Dzrcgz4PPhc6zzrrPgc6/z43Pg861z4nOvQorIyAgICh0bykgZm9ybWF0ICAgICAgfCAgzrzOv8+Bz4bOv8+Azr/Ouc+OCisjICAgZ2xvYiAgICAgICAgICAgICB8ICDOsc69z4TOuc66zrHPhM6sz4PPhM6xz4POtyDOvM61z4TOsc+HzrHPgc6xzrrPhM6uz4HPic69CisjICAgaGFzaCAgICAgICAgICAgICB8ICDPg8+FzrzOss6/zrvOv8+DzrXOuc+BzqwKKyMgICBIRUFEICAgICAgICAgICAgIHwgIEhFQUQgKM6/z4XOtM6tz4TOtc+Bzr8pCisjICAgaG9vayAgICAgICAgICAgICB8ICDOrM6zzrrOuc+Dz4TPgc6/CisjICAgaHVuayAgICAgICAgICAgICB8ICDOsc67zrvOsc6zzq4KKyMgICBpbmNvbnNpc3RlbmN5ICAgIHwgIM6xzr3PhM6vz4bOsc+DzrcKKyMgICAodG8pIGluZmxhdGUgICAgIHwgIM6xz4DOv8+Dz4XOvM+AzrnOrc62z4kKKyMgICAoYSkgbGlzdCAgICAgICAgIHwgIM+AzrHPgc6szrjOtc+DzrcKKyMgICAodG8pIGxpc3QgICAgICAgIHwgIM+AzrHPgc6xzrjOrc+Ez4kKKyMgICBtYXBwaW5nICAgICAgICAgIHwgIM6xzr3PhM65z4PPhM6/zq/Ph865z4POtworIyAgIG1pc21hdGNoICAgICAgICAgfCAgzrHPg8+FzrzPhs+Jzr3Or86xCisjICAgbWVyZ2UgICAgICAgICAgICB8ICDPg8+FzrPPh8+Ozr3Otc+Fz4POtworIyAgIHBhY2sgICAgICAgICAgICAgfCAgz4DOsc66zq3PhM6/CisjICAgcGF0Y2hlcyAgICAgICAgICB8ICDOtM65zr/Pgc64z47Pg861zrnPggorIyAgIHBhdGggICAgICAgICAgICAgfCAgzrTOuc6xzrTPgc6/zrzOrgorIyAgIHBhdGhzcGVjICAgICAgICAgfCAgz4DOtc+BzrnOs8+BzrHPhs6uIM60zrnOsc60z4HOv868zq7PggorIyAgIHBhdHRlcm4gICAgICAgICAgfCAgzrzOv8+Ezq/Oss6/CisjICAgKHRvKSBwcnVuZSAgICAgICB8ICDOus67zrHOtM61z43PiQorIyAgIChhKSBwdWxsICAgICAgICAgfCAgzrXOvc+Dz4nOvM6sz4TPic+DzrcKKyMgICAodG8pIHB1bGwgICAgICAgIHwgIM61zr3Pg8+JzrzOsc+Ez47Ovc+JCisjICAgKGEpIHB1c2ggICAgICAgICB8ICDOtM63zrzOv8+Dzq/Otc+Fz4POtworIyAgICh0bykgcHVzaCAgICAgICAgfCAgzrTOt868zr/Pg865zrXPjc+JCisjICAgdHJhaWxlcnMgICAgICAgICB8ICDPhc+Azr/Pg863zrzOtc65z47Pg861zrnPggorIyAgIHJlcG9zaXRvcnkgICAgICAgfCAgzrHPgM6/zrjOtc+Ezq7Pgc65zr8KKyMgICByZW1vdGUgICAgICAgICAgIHwgIM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/ICjOriDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3Ov8+CIM61zr7Phc+AzrfPgc61z4TOt8+Ezq7PgikKKyMgICByZXNldCAgICAgICAgICAgIHwgIM61z4DOsc69zrHPhs6tz4HPiQorIyAgIHJlc29sdmUgICAgICAgICAgfCAgzrXPgM65zrvPjc+JICrOriogz4TOsc+Fz4TOr862z4kKKyMgICByZXN0b3JlICAgICAgICAgIHwgIM6xz4DOv866zrHOuM65z4PPhM+OCisjICAgcmV2aXNpb24gICAgICAgICB8ICDOrc66zrTOv8+DzrcKKyMgICBzaGFsbG93ICAgICAgICAgIHwgIM+BzrfPh8+MCisjICAgc2hlbGwgICAgICAgICAgICB8ICDOus6tzrvPhc+Gzr/PggorIyAgIHNxdWFzaCAgICAgICAgICAgfCAgz4PPhc68z4DPhM+Nz4PPg8+JL8+Dz43OvM+Az4TPhc6+zrcKKyMgICBzdGFzaCAgICAgICAgICAgIHwgIM6xz4DOv864zrfOus61z4XOvM6tzr3OsQorIyAgICh0bykgc3RhZ2UgICAgICAgfCAgz4DPgc6/zrXPhM6/zrnOvM6szrbPiQorIyAgICh0bykgc3Rhc2ggICAgICAgfCAgzrHPgM6/zrjOt866zrXPjc+JCisjICAgc3RyZWFtICAgICAgICAgICB8ICDPgc6/zq4KKyMgICBzdWJtb2R1bGUgICAgICAgIHwgIM+Fz4DOv861zr3PjM+EzrfPhM6xCisjICAgdGFnICAgICAgICAgICAgICB8ICDOtc+EzrnOus6tz4TOsQorIyAgIHRlbXBsYXRlICAgICAgICAgfCAgz4DPgc+Mz4TPhc+Azr8KKyMgICB0aHJlYWQgICAgICAgICAgIHwgIM69zq7OvM6xCisjICAgdGltZXN0YW1wICAgICAgICB8ICDPh8+Bzr/Ovc6/z4POrs68zrHOvc+DzrcKKyMgICAodG8pIHRyYWNrICAgICAgIHwgIM+AzrHPgc6xzrrOv867zr/Phc64z44KKyMgICB0cmVlICAgICAgICAgICAgIHwgIM60zq3Ovc+Ez4HOvworIyAgIHRyZWUtaXNoICAgICAgICAgfCAgzrTOrc69z4TPgc6/IM6uIM+GzrHOuc69zr/OvM61zr3Ouc66z4wKKyMgICB1bnN0YWdlICAgICAgICAgIHwgIM6xz4DOv8+Az4HOv861z4TOv865zrzOrM62z4kKKyMgICB1cHN0cmVhbSAgICAgICAgIHwgIM+Az4HOv8+CIM+EzrfOvSDPgM63zrPOrgorIyAgIHZpZXdlciAgICAgICAgICAgfCAgz4DPgc+MzrPPgc6xzrzOvM6xIM+Az4HOv86yzr/Ou86uz4IKKyMgICB3b3JrdHJlZSAvICAgICAgIHwKKyMgICB3b3JrKGluZykgdHJlZSAgIHwgIM60zq3Ovc+Ez4HOvyDOtc+BzrPOsc+Dzq/Osc+CCisjIEppbW15IEFuZ2VsYWtvcyA8dnlydXNzQGhlbGx1Zy5ncj4sIDIwMTkuCisjCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBnaXRcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogR2l0IE1haWxpbmcgTGlzdCA8Z2l0QHZnZXIua2VybmVsLm9yZz5cbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxOS0wMi0xNSAxMDowOSswODAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxOS0wMi0xNSAwMjoxMCswMDAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBKaW1teSBBbmdlbGFrb3MgPHZ5cnVzc0BoZWxsdWcuZ3I+XG4iCisiTGFuZ3VhZ2UtVGVhbTogR3JlZWssIE1vZGVybiAoMTQ1My0pIDx2eXJ1c3NAaGVsbHVnLmdyPlxuIgorIkxhbmd1YWdlOiBlbFxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpO1xuIgorCisjOiBhZHZpY2UuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXNoaW50OiAlLipzJXNcbiIKK21zZ3N0ciAiJXPOvc+Nzr7OtzogJS4qcyVzXG4iCisKKyM6IGFkdmljZS5jOjE1NAorbXNnaWQgIkNoZXJyeS1waWNraW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKK21zZ3N0ciAiIgorIs6UzrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TPjCDOvc6xIM6zzq/Ovc61zrkgzrXPgM65zrvOtc66z4TOuc66zq4gzrTOuc6xzrvOv86zzq4gzrXPgM61zrnOtM6uIM6tz4fOtc+EzrUgzrzOtyDPg8+FzrPPh8+Jzr3Otc+FzrzOrc69zrEgIgorIs6xz4HPh861zq/OsS4iCisKKyM6IGFkdmljZS5jOjE1NgorbXNnaWQgIkNvbW1pdHRpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgorbXNnc3RyICLOlM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ez4wgzr3OsSDOs86vzr3Otc65IM+Fz4DOv86yzr/Ou86uIM61z4DOtc65zrTOriDOrc+HzrXPhM61IM68zrcgz4PPhc6zz4fPic69zrXPhc68zq3Ovc6xIM6xz4HPh861zq/OsS4iCisKKyM6IGFkdmljZS5jOjE1OAorbXNnaWQgIk1lcmdpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgorbXNnc3RyICIiCisizpTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM+MIM69zrEgzrPOr869zrXOuSDPg8+FzrPPh8+Ozr3Otc+Fz4POtyDOtc+AzrXOuc60zq4gzq3Ph861z4TOtSDOvM63IM+Dz4XOs8+Hz4nOvc61z4XOvM6tzr3OsSDOsc+Bz4fOtc6vzrEuIgorCisjOiBhZHZpY2UuYzoxNjAKK21zZ2lkICJQdWxsaW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKK21zZ3N0ciAiIgorIs6UzrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TPjCDOvc6xIM6zzq/Ovc61zrkgzrXOvc+Dz4nOvM6sz4TPic+DzrcgzrXPgM61zrnOtM6uIM6tz4fOtc+EzrUgzrzOtyDPg8+FzrPPh8+Jzr3Otc+FzrzOrc69zrEgzrHPgc+HzrXOr86xLiIKKworIzogYWR2aWNlLmM6MTYyCittc2dpZCAiUmV2ZXJ0aW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKK21zZ3N0ciAiIgorIs6UzrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TPjCDOvc6xIM6zzq/Ovc61zrkgzrXPgM6xzr3Osc+Gzr/Pgc6sIM61z4DOtc65zrTOriDOrc+HzrXPhM61IM68zrcgz4PPhc6zz4fPic69zrXPhc68zq3Ovc6xIM6xz4HPh861zq/OsS4iCisKKyM6IGFkdmljZS5jOjE2NAorIywgYy1mb3JtYXQKK21zZ2lkICJJdCBpcyBub3QgcG9zc2libGUgdG8gJXMgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCittc2dzdHIgIs6UzrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TPjCDOvc6xIM6zzq/Ovc61zrkgJXMgzrXPgM61zrnOtM6uIM6tz4fOtc+EzrUgzrzOtyDPg8+FzrPPh8+Jzr3Otc+FzrzOrc69zrEgzrHPgc+HzrXOr86xLiIKKworIzogYWR2aWNlLmM6MTcyCittc2dpZCAiIgorIkZpeCB0aGVtIHVwIGluIHRoZSB3b3JrIHRyZWUsIGFuZCB0aGVuIHVzZSAnZ2l0IGFkZC9ybSA8ZmlsZT4nXG4iCisiYXMgYXBwcm9wcmlhdGUgdG8gbWFyayByZXNvbHV0aW9uIGFuZCBtYWtlIGEgY29tbWl0LiIKK21zZ3N0ciAiIgorIs6mz4TOuc6szr7PhM61IM+EzrEgz4PPhM6/IM60zq3Ovc+Ez4HOvyDOtc+BzrPOsc+Dzq/Osc+CLCDOus6xzrkgzrzOtc+Ezqwgz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtSAnZ2l0IGFkZC9ybSAiCisiPM6xz4HPh861zq/Ovz4nXG4iCisizq3PhM+Dzrkgz47Pg8+EzrUgzr3OsSDOtc+AzrnPg863zrzOrM69zrXPhM61IM+EzrfOvSDOtc+Azq/Ou8+Fz4POtyDOus6xzrkgzr3OsSDOus6szr3Otc+EzrUgzrzOr86xIM+Fz4DOv86yzr/Ou86uLiIKKworIzogYWR2aWNlLmM6MTgwCittc2dpZCAiRXhpdGluZyBiZWNhdXNlIG9mIGFuIHVucmVzb2x2ZWQgY29uZmxpY3QuIgorbXNnc3RyICLOiM6+zr/OtM6/z4IgzrvPjM6zz4kgzrHOvc61z4DOr867z4XPhM63z4Igz4PPjc6zzrrPgc6/z4XPg863z4IuIgorCisjOiBhZHZpY2UuYzoxODUgYnVpbHRpbi9tZXJnZS5jOjEyOTAKK21zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS4iCittc2dzdHIgIs6UzrXOvSDOrc+HzrXPhM61IM6/zrvOv866zrvOt8+Bz47Pg861zrkgz4TOtyDPg8+FzrPPh8+Ozr3Otc+Fz4POriDPg86xz4IgKM6lz4DOrM+Bz4fOtc65IM+Ezr8gTUVSR0VfSEVBRCkuIgorCisjOiBhZHZpY2UuYzoxODcKK21zZ2lkICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIG1lcmdpbmcuIgorbXNnc3RyICLOoM6xz4HOsc66zrHOu8+OLCDPhc+Azr/Oss6szrvOtc+EzrUgz4TOuc+CIM6xzrvOu86xzrPOrc+CIM+DzrHPgiDPgM+BzrnOvSDPg8+FzrPPh8+Jzr3Otc+Nz4POtc+EzrUuIgorCisjOiBhZHZpY2UuYzoxODgKK21zZ2lkICJFeGl0aW5nIGJlY2F1c2Ugb2YgdW5maW5pc2hlZCBtZXJnZS4iCittc2dzdHIgIs6Izr7Ov860zr/PgiDOu8+MzrPPiSDOvM63IM6/zrvOv866zrvOt8+Bz4nOvM6tzr3Ot8+CIM+Dz4XOs8+Hz47Ovc61z4XPg863z4IuIgorCisjOiBhZHZpY2UuYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk5vdGU6IGNoZWNraW5nIG91dCAnJXMnLlxuIgorIlxuIgorIllvdSBhcmUgaW4gJ2RldGFjaGVkIEhFQUQnIHN0YXRlLiBZb3UgY2FuIGxvb2sgYXJvdW5kLCBtYWtlIGV4cGVyaW1lbnRhbFxuIgorImNoYW5nZXMgYW5kIGNvbW1pdCB0aGVtLCBhbmQgeW91IGNhbiBkaXNjYXJkIGFueSBjb21taXRzIHlvdSBtYWtlIGluIHRoaXNcbiIKKyJzdGF0ZSB3aXRob3V0IGltcGFjdGluZyBhbnkgYnJhbmNoZXMgYnkgcGVyZm9ybWluZyBhbm90aGVyIGNoZWNrb3V0LlxuIgorIlxuIgorIklmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIG5ldyBicmFuY2ggdG8gcmV0YWluIGNvbW1pdHMgeW91IGNyZWF0ZSwgeW91IG1heVxuIgorImRvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1iIHdpdGggdGhlIGNoZWNrb3V0IGNvbW1hbmQgYWdhaW4uIEV4YW1wbGU6XG4iCisiXG4iCisiICBnaXQgY2hlY2tvdXQgLWIgPG5ldy1icmFuY2gtbmFtZT5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIs6jzrfOvM61zq/Pic+Dzrc6IM61zr7Osc6zz4nOs86uIM+Ezr/PhSAnJXMnLlxuIgorIlxuIgorIs6Sz4HOr8+DzrrOtc+Dz4TOtSDPg861IM66zrHPhM6sz4PPhM6xz4POtyAnzrHPgM6/z4PPhc69zrTOtc60zrXOvM6tzr3Ov8+FIEhFQUQnLiDOnM+Azr/Pgc61zq/PhM61IM69zrEgz4DOtc+BzrnOt86zzrfOuM61zq/PhM61LCDOvc6xICIKKyLOus6szr3Otc+EzrUgz4DOtc65z4HOsc68zrHPhM65zrrOrc+CXG4iCisizrHOu867zrHOs86tz4IgzrrOsc65IM69zrEgz4TOuc+CIM+Fz4DOv86yzqzOu861z4TOtSwgzrrOsc64z47PgiDOus6xzrkgzr3OsSDOsc+Azr/Pgc+Bzq/PiM61z4TOtSDPjCzPhM65IM+Fz4DOv86yzr/Ou86tz4IgzrrOrM69zrXPhM61ICIKKyLPg861IM6xz4XPhM6uzr0gz4TOt869XG4iCisizrrOsc+EzqzPg8+EzrHPg863IM+Hz4nPgc6vz4Igzr3OsSDOtc+AzrfPgc61zqzPg861z4TOtSDOrM67zrvOv8+Fz4IgzrrOu86szrTOv8+Fz4IgzrHPgM67zqwgzrrOrM69zr/Ovc+EzrHPgiDOvM65zrEgzr3Orc6xIM61zr7Osc6zz4nOs86uLlxuIgorIlxuIgorIs6Rzr0gzrjOrc67zrXPhM61IM69zrEgzrTOt868zrnOv8+Fz4HOs86uz4POtc+EzrUgzq3Ovc6xzr0gzr3Orc6/IM66zrvOrM60zr8gzrPOuc6xIM69zrEgzrTOuc6xz4TOt8+Bzq7Pg861z4TOtSDPhM65z4Igz4XPgM6/zrLOv867zq3PgiAiCisiz4DOv8+FIM60zrfOvM65zr/Phc+BzrPOtc6vz4TOtSwgzrzPgM6/z4HOtc6vz4TOtVxuIgorIs69zrEgz4TOvyDOus6szr3Otc+EzrUgKM+Ez47Pgc6xIM6uIM6xz4HOs8+Mz4TOtc+BzrEpIM+Hz4HOt8+DzrnOvM6/z4DOv865z47Ovc+EzrHPgiAtYiDOvM61IM+EzrfOvSDOtc69z4TOv867zq4gzrXOvs6xzrPPic6zzq7PgiAiCisiY2hlY2tvdXQgz4DOrM67zrkuIM6gzrHPgc6szrTOtc65zrPOvM6xOlxuIgorIlxuIgorIiAgZ2l0IGNoZWNrb3V0IC1iIDzPjM69zr/OvM6xLc69zq3Ov8+FLc66zrvOrM60zr/PhT5cbiIKKyJcbiIKKworIzogYWxpYXMuYzo1MAorbXNnaWQgImNtZGxpbmUgZW5kcyB3aXRoIFxcIgorbXNnc3RyICLOs8+BzrHOvM68zq4gzrXOvc+Ezr/Ou8+Ozr0gz4TOtc67zrXOuc+Ozr3Otc65IM68zrUgXFwiCisKKyM6IGFsaWFzLmM6NTEKK21zZ2lkICJ1bmNsb3NlZCBxdW90ZSIKK21zZ3N0ciAizrHOvc6/zrnPh8+EzqwgzrXOuc+DzrHOs8+JzrPOuc66zqwiCisKKyM6IGFwcGx5LmM6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2Ugb3B0aW9uICclcyciCittc2dzdHIgIs6szrPOvc+Jz4PPhM63IM61z4DOuc67zr/Os86uIM66zrXOvc6/z40gz4fPjs+Bzr/PhSAnJXMnIgorCisjOiBhcHBseS5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCB3aGl0ZXNwYWNlIGlnbm9yZSBvcHRpb24gJyVzJyIKK21zZ3N0ciAizqzOs869z4nPg8+EzrcgzrXPgM65zrvOv86zzq4gzrHOs869z4zOt8+DzrfPgiDOus61zr3Ov8+NIM+Hz47Pgc6/z4UgJyVzJyIKKworIzogYXBwbHkuYzoxMjUKK21zZ2lkICItLXJlamVjdCBhbmQgLS0zd2F5IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyLiIKK21zZ3N0ciAiLS1yZWplY3QgzrrOsc65IC0tM3dheSDOtM61IM6zzq/Ovc61z4TOsc65IM69zrEgz4fPgc63z4POuc68zr/PgM6/zrnOt864zr/Pjc69IM68zrHOts6vLiIKKworIzogYXBwbHkuYzoxMjcKK21zZ2lkICItLWNhY2hlZCBhbmQgLS0zd2F5IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyLiIKK21zZ3N0ciAiLS1jYWNoZWQgzrrOsc65IC0tM3dheSDOtM61IM6zzq/Ovc61z4TOsc65IM69zrEgz4fPgc63z4POuc68zr/PgM6/zrnOt864zr/Pjc69IM68zrHOts6vLi4iCisKKyM6IGFwcGx5LmM6MTMwCittc2dpZCAiLS0zd2F5IG91dHNpZGUgYSByZXBvc2l0b3J5IgorbXNnc3RyICItLTN3YXkgzq3Ovs+JIM6xz4DPjCDOsc+Az4zOuM61z4TOrs+BzrnOvyIKKworIzogYXBwbHkuYzoxNDEKK21zZ2lkICItLWluZGV4IG91dHNpZGUgYSByZXBvc2l0b3J5IgorbXNnc3RyICItLWluZGV4IM6tzr7PiSDOsc+Az4wgzrHPgM6/zrjOtc+Ezq7Pgc65zr8iCisKKyM6IGFwcGx5LmM6MTQ0Cittc2dpZCAiLS1jYWNoZWQgb3V0c2lkZSBhIHJlcG9zaXRvcnkiCittc2dzdHIgIi0tY2FjaGVkIM6tzr7PiSDOsc+Az4wgzrHPgM6/zrjOtc+Ezq7Pgc65zr8iCisKKyM6IGFwcGx5LmM6ODI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBwcmVwYXJlIHRpbWVzdGFtcCByZWdleHAgJXMiCittc2dzdHIgIs6UzrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDPgM+Bzr/Otc+Ezr/Ouc68zrHPg86vzrEgzrrOsc69zr/Ovc65zrrOrs+CIM6tzrrPhs+BzrHPg863z4Igz4fPgc6/zr3Ov8+Dzq7OvM6xzr3Pg863z4IgJXMiCisKKyM6IGFwcGx5LmM6ODM0CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZ2V4ZWMgcmV0dXJuZWQgJWQgZm9yIGlucHV0OiAlcyIKK21zZ3N0ciAizqTOvyByZWdleGVjIM61z4DOrc+Dz4TPgc61z4jOtSAlZCDOs865zrEgzrXOuc+DzrHOs8+JzrPOrjogJXMiCisKKyM6IGFwcGx5LmM6OTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaW5kIGZpbGVuYW1lIGluIHBhdGNoIGF0IGxpbmUgJWQiCittc2dzdHIgIs60zrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TPjCDOvc6xIM6yz4HOtc64zrXOryDPhM6/IM+Mzr3Ov868zrEgzrHPgc+HzrXOr86/z4Ugz4PPhM63IM60zrnPjM+BzrjPic+Dzrcgz4PPhM63IM6zz4HOsc68zrzOriAlZCIKKworIzogYXBwbHkuYzo5NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwsIGdvdCAlcyBvbiBsaW5lICVkIgorbXNnc3RyICIiCisiZ2l0IGFwcGx5OiDOu86szrjOv8+CIGdpdC1kaWZmIC0gzrHOvc6xzrzOtc69z4zPhM6xzr0gL2Rldi9udWxsLCDOss+Bzq3OuM63zrrOtSAlcyDPg8+EzrcgzrPPgc6xzrzOvM6uICVkIgorCisjOiBhcHBseS5jOjk1MgorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGluY29uc2lzdGVudCBuZXcgZmlsZW5hbWUgb24gbGluZSAlZCIKK21zZ3N0ciAiZ2l0IGFwcGx5OiDOu86szrjOv8+CIGdpdC1kaWZmIC0gzrHPg8+NzrzPhs+Jzr3OvyDPjM69zr/OvM6xIM69zq3Ov8+FIM6xz4HPh861zq/Ov8+FIM+Dz4TOtyDOs8+BzrHOvM68zq4gJWQiCisKKyM6IGFwcGx5LmM6OTUzCisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gaW5jb25zaXN0ZW50IG9sZCBmaWxlbmFtZSBvbiBsaW5lICVkIgorbXNnc3RyICIiCisiZ2l0IGFwcGx5OiDOu86szrjOv8+CIGdpdC1kaWZmIC0gzrHPg8+NzrzPhs+Jzr3OvyDPjM69zr/OvM6xIM+AzrHOu865zr/PjSDOsc+Bz4fOtc6vzr/PhSDPg8+EzrcgzrPPgc6xzrzOvM6uICVkIgorCisjOiBhcHBseS5jOjk1OAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGV4cGVjdGVkIC9kZXYvbnVsbCBvbiBsaW5lICVkIgorbXNnc3RyICJnaXQgYXBwbHk6IM67zqzOuM6/z4IgZ2l0LWRpZmYgLSDOsc69zrHOvM61zr3PjM+EzrHOvSAvZGV2L251bGwgz4PPhM63IM6zz4HOsc68zrzOriAlZCIKKworIzogYXBwbHkuYzo5ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBtb2RlIG9uIGxpbmUgJWQ6ICVzIgorbXNnc3RyICLOvM63IM6tzrPOus+Fz4HOtyDOus6xz4TOrM+Dz4TOsc+Dzrcgz4PPhM63IM6zz4HOsc68zrzOriAlZDogJXMiCisKKyM6IGFwcGx5LmM6MTMwNgorIywgYy1mb3JtYXQKK21zZ2lkICJpbmNvbnNpc3RlbnQgaGVhZGVyIGxpbmVzICVkIGFuZCAlZCIKK21zZ3N0ciAizrHPg8+NzrzPhs+Jzr3Otc+CIM6zz4HOsc68zrzOrc+CIM61z4DOuc66zrXPhs6xzrvOr860zrHPgiAlZCDOus6xzrkgJWQiCisKKyM6IGFwcGx5LmM6MTQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWNvdW50OiB1bmV4cGVjdGVkIGxpbmU6ICUuKnMiCittc2dzdHIgInJlY291bnQ6IM68zrcgzrHOvc6xzrzOtc69z4zOvM61zr3OtyDOs8+BzrHOvM68zq46ICUuKnMiCisKKyM6IGFwcGx5LmM6MTU0NworIywgYy1mb3JtYXQKK21zZ2lkICJwYXRjaCBmcmFnbWVudCB3aXRob3V0IGhlYWRlciBhdCBsaW5lICVkOiAlLipzIgorbXNnc3RyICLOsc+Az4zPg8+AzrHPg868zrEgzrTOuc+Mz4HOuM+Jz4POt8+CIM+Hz4nPgc6vz4IgzrXPgM65zrrOtc+GzrHOu86vzrTOsSDPg8+EzrcgzrPPgc6xzrzOvM6uICVkOiAlLipzIgorCisjOiBhcHBseS5jOjE1NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImdpdCBkaWZmIGhlYWRlciBsYWNrcyBmaWxlbmFtZSBpbmZvcm1hdGlvbiB3aGVuIHJlbW92aW5nICVkIGxlYWRpbmcgcGF0aG5hbWUgIgorImNvbXBvbmVudCAobGluZSAlZCkiCittc2dpZF9wbHVyYWwgIiIKKyJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gd2hlbiByZW1vdmluZyAlZCBsZWFkaW5nIHBhdGhuYW1lICIKKyJjb21wb25lbnRzIChsaW5lICVkKSIKK21zZ3N0clswXSAiIgorIs6bzrXOr8+AzrXOuSDOtyDPgM67zrfPgc6/z4bOv8+Bzq/OsSDOv869z4zOvM6xz4TOv8+CIM6xz4HPh861zq/Ov8+FIM6xz4DPjCDPhM63zr0gzrXPgM65zrrOtc+GzrHOu86vzrTOsSBnaXQgZGlmZiDOus6xz4TOrCDPhM63zr0gIgorIs6xz4bOsc6vz4HOtc+Dzrcgz4TOv8+FICVkIM6xz4HPh865zrrOv8+NIM+Dz4XPg8+EzrHPhM65zrrOv8+NIM6/zr3PjM68zrHPhM6/z4IgzrTOuc6xzrTPgc6/zrzOrs+CICjOs8+BzrHOvM68zq4gJWQpIgorbXNnc3RyWzFdICIiCisizpvOtc6vz4DOtc65IM63IM+AzrvOt8+Bzr/Phs6/z4HOr86xIM6/zr3PjM68zrHPhM6/z4IgzrHPgc+HzrXOr86/z4UgzrHPgM+MIM+EzrfOvSDOtc+AzrnOus61z4bOsc67zq/OtM6xIGdpdCBkaWZmIM66zrHPhM6sIM+EzrfOvSAiCisizrHPhs6xzq/Pgc61z4POtyDPhM+Jzr0gJWQgzrHPgc+HzrnOus+Ozr0gz4PPhc+Dz4TOsc+EzrnOus+Ozr0gzr/Ovc+MzrzOsc+Ezr/PgiDOtM65zrHOtM+Bzr/OvM6uz4IgKM6zz4HOsc68zrzOriAlZCkiCisKKyM6IGFwcGx5LmM6MTU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gKGxpbmUgJWQpIgorbXNnc3RyICIiCisizpvOtc6vz4DOtc65IM63IM+AzrvOt8+Bzr/Phs6/z4HOr86xIM6/zr3PjM68zrHPhM6/z4IgzrHPgc+HzrXOr86/z4UgzrHPgM+MIM+EzrfOvSDOtc+AzrnOus61z4bOsc67zq/OtM6xIGdpdCBkaWZmICjOs8+BzrHOvM68zq4gJWQpIgorCisjOiBhcHBseS5jOjE3NjgKK21zZ2lkICJuZXcgZmlsZSBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKK21zZ3N0ciAiz4TOvyDOvc6tzr8gzrHPgc+HzrXOr86/IM61zr7Osc+Bz4TOrM+EzrHOuSDOsc+Az4wgz4TOsSDPgM6xzrvOuc6sIM+AzrXPgc65zrXPh8+MzrzOtc69zrEiCisKKyM6IGFwcGx5LmM6MTc3MAorbXNnaWQgImRlbGV0ZWQgZmlsZSBzdGlsbCBoYXMgY29udGVudHMiCittc2dzdHIgIs+Ezr8gzrTOuc61zrPPgc6xzrzOvM6tzr3OvyDOsc+Bz4fOtc6vzr8gzq3Ph861zrkgzrHOus+MzrzOsSDPgM61z4HOuc61z4fPjM68zrXOvc6xIgorCisjOiBhcHBseS5jOjE4MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29ycnVwdCBwYXRjaCBhdCBsaW5lICVkIgorbXNnc3RyICLOus6xz4TOtc+Dz4TPgc6xzrzOvM6tzr3OtyDOtM65z4zPgc64z4nPg863IM+Dz4TOtyDOs8+BzrHOvM68zq4gJWQiCisKKyM6IGFwcGx5LmM6MTg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgZmlsZSAlcyBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKK21zZ3N0ciAiz4TOvyDOvc6tzr8gzrHPgc+HzrXOr86/ICVzIM61zr7Osc+Bz4TOrM+EzrHOuSDOsc+Az4wgz4TOsSDPgM6xzrvOuc6sIM+AzrXPgc65zrXPh8+MzrzOtc69zrEiCisKKyM6IGFwcGx5LmM6MTg0MworIywgYy1mb3JtYXQKK21zZ2lkICJkZWxldGVkIGZpbGUgJXMgc3RpbGwgaGFzIGNvbnRlbnRzIgorbXNnc3RyICLPhM6/IM60zrnOtc6zz4HOsc68zrzOrc69zr8gzrHPgc+HzrXOr86/ICVzIM6tz4fOtc65IM6xzrrPjM68zrEgz4DOtc+BzrnOtc+Hz4zOvM61zr3OsSIKKworIzogYXBwbHkuYzoxODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIioqIHdhcm5pbmc6IGZpbGUgJXMgYmVjb21lcyBlbXB0eSBidXQgaXMgbm90IGRlbGV0ZWQiCittc2dzdHIgIioqIM+Az4HOv8+Dzr/Ph86uOiDPhM6/IM6xz4HPh861zq/OvyAlcyDOs86vzr3Otc+EzrHOuSDOus61zr3PjCDOsc67zrvOrCDOtM61IM60zrnOsc6zz4HOrM+GzrXPhM6xzrkiCisKKyM6IGFwcGx5LmM6MTk5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3JydXB0IGJpbmFyeSBwYXRjaCBhdCBsaW5lICVkOiAlLipzIgorbXNnc3RyICLOus6xz4TOtc+Dz4TPgc6xzrzOvM6tzr3OtyDOtM+FzrHOtM65zrrOriDOtM65z4zPgc64z4nPg863IM+Dz4TOtyDOs8+BzrHOvM68zq4gJWQ6ICUuKnMiCisKKyM6IGFwcGx5LmM6MjAzMAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgYmluYXJ5IHBhdGNoIGF0IGxpbmUgJWQiCittc2dzdHIgIs68zrcgzrHOvc6xzrPOvc+Jz4HOr8+DzrnOvM63IM60z4XOsc60zrnOus6uIM60zrnPjM+BzrjPic+Dzrcgz4PPhM63IM6zz4HOsc68zrzOriAlZCIKKworIzogYXBwbHkuYzoyMTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGNoIHdpdGggb25seSBnYXJiYWdlIGF0IGxpbmUgJWQiCittc2dzdHIgIs60zrnPjM+BzrjPic+DzrcgzrzOtSDOvM+Mzr3OvyDPg866zr/Phc+Azq/OtM65zrEgz4PPhM63IM6zz4HOsc68zrzOriAlZCIKKworIzogYXBwbHkuYzoyMjc4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHN5bWxpbmsgJXMiCittc2dzdHIgIs60zrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDOsc69zqzOs869z4nPg863IM+Ezr/PhSDPg8+FzrzOss6/zrvOuc66zr/PjSDOtM61z4POvM6/z40gJXMiCisKKyM6IGFwcGx5LmM6MjI4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvciByZWFkICVzIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ez4wgz4TOvyDOrM69zr/Ouc6zzrzOsSDOriDOtyDOsc69zqzOs869z4nPg863IM+Ezr/PhSAlcyIKKworIzogYXBwbHkuYzoyOTQxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgc3RhcnQgb2YgbGluZTogJyVjJyIKK21zZ3N0ciAizrzOtyDOsc+Azr/OtM61zrrPhM6uIM6xz4HPh86uIM6zz4HOsc68zrzOrs+COiAnJWMnIgorCisjOiBhcHBseS5jOjMwNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiSHVuayAjJWQgc3VjY2VlZGVkIGF0ICVkIChvZmZzZXQgJWQgbGluZSkuIgorbXNnaWRfcGx1cmFsICJIdW5rICMlZCBzdWNjZWVkZWQgYXQgJWQgKG9mZnNldCAlZCBsaW5lcykuIgorbXNnc3RyWzBdICLOlyDOsc67zrvOsc6zzq4gz4XPgCcgzrHPgS4gJWQgz4DOrc+Ez4XPh861IM+Dz4TOvyAlZCAozrzOtc+EzrHPhM+Mz4DOuc+DzrcgJWQgzrPPgc6xzrzOvM6uKS4iCittc2dzdHJbMV0gIs6XIM6xzrvOu86xzrPOriDPhc+AJyDOsc+BLiAlZCDPgM6tz4TPhc+HzrUgz4PPhM6/ICVkICjOvM61z4TOsc+Ez4zPgM65z4POtyAlZCDOs8+BzrHOvM68zq3PgikuIgorCisjOiBhcHBseS5jOjMwNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29udGV4dCByZWR1Y2VkIHRvICglbGQvJWxkKSB0byBhcHBseSBmcmFnbWVudCBhdCAlZCIKK21zZ3N0ciAiIgorIs6kzr8gz4DOu86xzq/Pg865zr8gzrzOtc65z47OuM63zrrOtSDPg861ICglbGQvJWxkKSDOs865zrEgz4TOt869IM61z4bOsc+BzrzOv86zzq4gz4TOv8+FIM6xz4DOv8+Dz4DOrM+DzrzOsc+Ezr/PgiDPg8+Ezr8gJWQiCisKKyM6IGFwcGx5LmM6MzA4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgc2VhcmNoaW5nIGZvcjpcbiIKKyIlLipzIgorbXNnc3RyICIiCisizrrOsc+Ezqwgz4TOt869IM6xzr3Osc62zq7PhM63z4POtyDOs865zrEgz4TOvzpcbiIKKyIlLipzIgorCisjOiBhcHBseS5jOjMxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyBiaW5hcnkgcGF0Y2ggZGF0YSBmb3IgJyVzJyIKK21zZ3N0ciAizrvOtc6vz4DOv8+Fzr0gz4TOsSDOtM+FzrHOtM65zrrOrCDOtM61zrTOv868zq3Ovc6xIM60zrnPjM+BzrjPic+DzrfPgiDOs865zrEgz4TOvyAnJXMnIgorCisjOiBhcHBseS5jOjMxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJldmVyc2UtYXBwbHkgYSBiaW5hcnkgcGF0Y2ggd2l0aG91dCB0aGUgcmV2ZXJzZSBodW5rIHRvICclcyciCittc2dzdHIgIiIKKyLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgzrXPhs6xz4HOvM6/zrPOriDPgM+Bzr/PgiDPhM6xIM+Azq/Pg8+JIM60z4XOsc60zrnOus6uz4IgzrTOuc+Mz4HOuM+Jz4POt8+CIM+Hz4nPgc6vz4Igz4TOt869IM6xzrvOu86xzrPOriAiCisiz4DPgc6/z4Igz4TOsSDPgM6vz4PPiSDPg8+Ezr8gJyVzJyIKKworIzogYXBwbHkuYzozMTU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBhcHBseSBiaW5hcnkgcGF0Y2ggdG8gJyVzJyB3aXRob3V0IGZ1bGwgaW5kZXggbGluZSIKK21zZ3N0ciAiIgorIs60zrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDOtc+GzrHPgc68zr/Os86uIM60z4XOsc60zrnOus6uz4IgzrTOuc+Mz4HOuM+Jz4POt8+CIM+Dz4TOvyAnJXMnIM+Hz4nPgc6vz4Igz4TOt869IM+AzrvOrs+BzrcgIgorIs6zz4HOsc68zrzOriDOtc+Fz4HOtc+EzrfPgc6vzr/PhSIKKworIzogYXBwbHkuYzozMTY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0aGUgcGF0Y2ggYXBwbGllcyB0byAnJXMnICglcyksIHdoaWNoIGRvZXMgbm90IG1hdGNoIHRoZSBjdXJyZW50IGNvbnRlbnRzLiIKK21zZ3N0ciAiIgorIs63IM60zrnPjM+BzrjPic+DzrcgzrXPhs6xz4HOvM+MzrbOtc+EzrHOuSDPg8+Ezr8gJyVzJyAoJXMpLCDPgM6/z4UgzrTOtc69IM+EzrHOuc+BzrnOrM62zrXOuSDOvM61IM+EzrEgz4DOsc+Bz4zOvc+EzrEgIgorIs+AzrXPgc65zrXPh8+MzrzOtc69zrEuIgorCisjOiBhcHBseS5jOjMxNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlIHBhdGNoIGFwcGxpZXMgdG8gYW4gZW1wdHkgJyVzJyBidXQgaXQgaXMgbm90IGVtcHR5IgorbXNnc3RyICLOtyDOtM65z4zPgc64z4nPg863IM61z4bOsc+BzrzPjM62zrXPhM6xzrkgz4POtSDOrc69zrEgzrrOtc69z4wgJyVzJyDOsc67zrvOrCDOtM61zr0gzrXOr869zrHOuSDOus61zr3PjCIKKworIzogYXBwbHkuYzozMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZSBuZWNlc3NhcnkgcG9zdGltYWdlICVzIGZvciAnJXMnIGNhbm5vdCBiZSByZWFkIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgzrHOvc6szrPOvc+Jz4POtyDPhM63z4IgzrHOvc6xzrPOus6xzq/Osc+CIHBvc3RpbWFnZSAlcyDOs865zrEgz4TOvyAnJXMnIgorCisjOiBhcHBseS5jOjMyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmluYXJ5IHBhdGNoIGRvZXMgbm90IGFwcGx5IHRvICclcyciCittc2dzdHIgIs63IM60z4XOsc60zrnOus6uIM60zrnPjM+BzrjPic+DzrcgzrTOtc69IM61z4bOsc+BzrzPjM62zrXPhM6xzrkgz4PPhM6/ICclcyciCisKKyM6IGFwcGx5LmM6MzIxMgorIywgYy1mb3JtYXQKK21zZ2lkICJiaW5hcnkgcGF0Y2ggdG8gJyVzJyBjcmVhdGVzIGluY29ycmVjdCByZXN1bHQgKGV4cGVjdGluZyAlcywgZ290ICVzKSIKK21zZ3N0ciAiIgorIs63IM60z4XOsc60zrnOus6uIM60zrnPjM+BzrjPic+Dzrcgz4PPhM6/ICclcycgzrTOt868zrnOv8+Fz4HOs861zq8gzrvOrM64zr/PgiDOsc+Azr/PhM6tzrvOtc+DzrzOsSAozrHOvc6xzrzOtc69z4zPhM6xzr0gJXMsICIKKyLOss+Bzq3OuM63zrrOtSAlcykiCisKKyM6IGFwcGx5LmM6MzIzMworIywgYy1mb3JtYXQKK21zZ2lkICJwYXRjaCBmYWlsZWQ6ICVzOiVsZCIKK21zZ3N0ciAizrcgzrTOuc+Mz4HOuM+Jz4POtyDOsc+Azq3PhM+Fz4fOtTogJXM6JWxkIgorCisjOiBhcHBseS5jOjMzNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNoZWNrb3V0ICVzIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgzrXOvs6xzrPPic6zzq4gz4TOv8+FICVzIgorCisjOiBhcHBseS5jOjM0MDggYXBwbHkuYzozNDE5IGFwcGx5LmM6MzQ2NSBtaWR4LmM6NTggc2V0dXAuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgJXMiCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM6xzr3OrM6zzr3Pic+Dzrcgz4TOv8+FICVzIgorCisjOiBhcHBseS5jOjM0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZGluZyBmcm9tICclcycgYmV5b25kIGEgc3ltYm9saWMgbGluayIKK21zZ3N0ciAizrHOvc6szrPOvc+Jz4POtyDOsc+Az4wgz4TOvyAnJXMnIM+Azq/Pg8+JIM6xz4DPjCDPg8+FzrzOss6/zrvOuc66z4wgzrTOtc+DzrzPjCIKKworIzogYXBwbHkuYzozNDQ1IGFwcGx5LmM6MzY4OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICVzIGhhcyBiZWVuIHJlbmFtZWQvZGVsZXRlZCIKK21zZ3N0ciAizrcgzrTOuc6xzrTPgc6/zrzOriAlcyDOrc+HzrXOuSDOvM61z4TOv869zr/OvM6xz4PPhM61zq8vzrTOuc6xzrPPgc6xz4bOtc6vIgorCisjOiBhcHBseS5jOjM1MzEgYXBwbHkuYzozNzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkb2VzIG5vdCBleGlzdCBpbiBpbmRleCIKK21zZ3N0ciAiJXM6IM60zrXOvSDPhc+AzqzPgc+HzrXOuSDPg8+Ezr8gzrXPhc+BzrXPhM6uz4HOuc6/IgorCisjOiBhcHBseS5jOjM1NDAgYXBwbHkuYzozNzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkb2VzIG5vdCBtYXRjaCBpbmRleCIKK21zZ3N0ciAiJXM6IM60zrXOvSDPhM6xzrnPgc65zqzOts61zrkgzrzOtSDPhM6/IM61z4XPgc61z4TOrs+BzrnOvyIKKworIzogYXBwbHkuYzozNTc1Cittc2dpZCAicmVwb3NpdG9yeSBsYWNrcyB0aGUgbmVjZXNzYXJ5IGJsb2IgdG8gZmFsbCBiYWNrIG9uIDMtd2F5IG1lcmdlLiIKK21zZ3N0ciAiIgorIs6xz4DPjCDPhM6/IM6xz4DOv864zrXPhM6uz4HOuc6/IM67zrXOr8+AzrXOuSDPhM6/IM6xzr3Osc6zzrrOsc6vzr8gYmxvYiDOs865zrEgzr3OsSDOsc66zr/Ou86/z4XOuM63zrjOtc6vIM63IM61zr3Osc67zrvOsc66z4TOuc66zq4gIgorIs+EzrfPgiDPhM+BzrnPgM67zq7PgiDPg8+FzrPPh8+Ozr3Otc+Fz4POt8+CLiIKKworIzogYXBwbHkuYzozNTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhbGxpbmcgYmFjayB0byB0aHJlZS13YXkgbWVyZ2UuLi5cbiIKK21zZ3N0ciAizpHOus6/zrvOv8+FzrjOtc6vz4TOsc65IM63IM61zr3Osc67zrvOsc66z4TOuc66zq4gz4TOt8+CIM+Ez4HOuc+AzrvOrs+CIM+Dz4XOs8+Hz47Ovc61z4XPg863z4IuLi5cbiIKKworIzogYXBwbHkuYzozNTk0IGFwcGx5LmM6MzU5OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCB0aGUgY3VycmVudCBjb250ZW50cyBvZiAnJXMnIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgzrHOvc6szrPOvc+Jz4POtyDPhM+Jzr0gz4TPgc61z4fPjM69z4TPic69IM+AzrXPgc65zrXPh86/zrzOrc69z4nOvSDPhM6/z4UgJyVzJyIKKworIzogYXBwbHkuYzozNjEwCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBmYWxsIGJhY2sgb24gdGhyZWUtd2F5IG1lcmdlLi4uXG4iCittc2dzdHIgIs6Rz4DOrc+Ez4XPh861IM63IM61zr3Osc67zrvOsc66z4TOuc66zq4gz4TOt8+CIM+Ez4HOuc+AzrvOrs+CIM+Dz4XOs8+Hz47Ovc61z4XPg863z4IuLi5cbiIKKworIzogYXBwbHkuYzozNjI0CisjLCBjLWZvcm1hdAorbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyB3aXRoIGNvbmZsaWN0cy5cbiIKK21zZ3N0ciAizpcgzrXPhs6xz4HOvM6/zrPOriDPhM63z4IgzrTOuc+Mz4HOuM+Jz4POt8+CIM+Dz4TOvyAnJXMnIM6tzrPOuc69zrUgzrzOtSDPg8+FzrPOus+Bzr/Pjc+DzrXOuc+CLlxuIgorCisjOiBhcHBseS5jOjM2MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXBwbGllZCBwYXRjaCB0byAnJXMnIGNsZWFubHkuXG4iCittc2dzdHIgIs6XIM61z4bOsc+BzrzOv86zzq4gz4TOt8+CIM60zrnPjM+BzrjPic+DzrfPgiDPg8+Ezr8gJyVzJyDOrc6zzrnOvc61IM66zrHOuM6xz4HOrC5cbiIKKworIzogYXBwbHkuYzozNjU1Cittc2dpZCAicmVtb3ZhbCBwYXRjaCBsZWF2ZXMgZmlsZSBjb250ZW50cyIKK21zZ3N0ciAizrcgzrTOuc+Mz4HOuM+Jz4POtyDOsc+GzrHOr8+BzrXPg863z4IgzrHPhs6uzr3Otc65IM+Azq/Pg8+JIM+AzrXPgc65zrXPh8+MzrzOtc69zrEgz4PPhM6/IM6xz4HPh861zq/OvyIKKworIzogYXBwbHkuYzozNzI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3cm9uZyB0eXBlIgorbXNnc3RyICIlczogzrvOrM64zr/PgiDPhM+Nz4DOv8+CIgorCisjOiBhcHBseS5jOjM3MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaGFzIHR5cGUgJW8sIGV4cGVjdGVkICVvIgorbXNnc3RyICIlcyDOrc+HzrXOuSDPhM+Nz4DOvyAlbywgzrHOvc6xzrzOtc69z4zPhM6xzr0gJW8iCisKKyM6IGFwcGx5LmM6Mzg4MSBhcHBseS5jOjM4ODMgcmVhZC1jYWNoZS5jOjgyMCByZWFkLWNhY2hlLmM6ODQ2CisjOiByZWFkLWNhY2hlLmM6MTI5OQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhdGggJyVzJyIKK21zZ3N0ciAizrzOtyDOrc6zzrrPhc+BzrcgzrTOuc6xzrTPgc6/zrzOriAnJXMnIgorCisjOiBhcHBseS5jOjM5MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGFscmVhZHkgZXhpc3RzIGluIGluZGV4IgorbXNnc3RyICIlczogz4XPgM6sz4HPh861zrkgzq7OtM63IM+Dz4TOvyDOtc+Fz4HOtc+Ezq7Pgc65zr8iCisKKyM6IGFwcGx5LmM6Mzk0MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogYWxyZWFkeSBleGlzdHMgaW4gd29ya2luZyBkaXJlY3RvcnkiCittc2dzdHIgIiVzOiDPhc+AzqzPgc+HzrXOuSDOrs60zrcgz4PPhM6/zr0gz4bOrM66zrXOu86/IM61z4HOs86xz4POr86xz4IiCisKKyM6IGFwcGx5LmM6Mzk2MgorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgbW9kZSAoJW8pIG9mICVzIGRvZXMgbm90IG1hdGNoIG9sZCBtb2RlICglbykiCittc2dzdHIgIs63IM69zq3OsSDOus6xz4TOrM+Dz4TOsc+DzrcgKCVvKSDPhM6/z4UgJXMgzrTOtc69IM+EzrHOuc+BzrnOrM62zrXOuSDOvM61IM+EzrfOvSDPgM6xzrvOuc6sICglbykiCisKKyM6IGFwcGx5LmM6Mzk2NworIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgbW9kZSAoJW8pIG9mICVzIGRvZXMgbm90IG1hdGNoIG9sZCBtb2RlICglbykgb2YgJXMiCittc2dzdHIgIs63IM69zq3OsSDOus6xz4TOrM+Dz4TOsc+DzrcgKCVvKSDPhM6/z4UgJXMgzrTOtc69IM+EzrHOuc+BzrnOrM62zrXOuSDOvM61IM+EzrfOvSDPgM6xzrvOuc6sICglbykgz4TOv8+FICVzIgorCisjOiBhcHBseS5jOjM5ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWZmZWN0ZWQgZmlsZSAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCittc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IM+Azr/PhSDOtc+AzrfPgc61zqzOts61z4TOsc65ICclcycgzrXOr869zrHOuSDPgM6vz4PPiSDOsc+Az4wgz4PPhc68zrLOv867zrnOus+MIM60zrXPg868z4wiCisKKyM6IGFwcGx5LmM6Mzk5MQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogcGF0Y2ggZG9lcyBub3QgYXBwbHkiCittc2dzdHIgIiVzOiDOtyDOtM65z4zPgc64z4nPg863IM60zrXOvSDOtc+GzrHPgc68z4zOts61z4TOsc65IgorCisjOiBhcHBseS5jOjQwMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgcGF0Y2ggJXMuLi4iCittc2dzdHIgIs6Tzq/Ovc61z4TOsc65IM6tzrvOtc6zz4fOv8+CIM+EzrfPgiDOtM65z4zPgc64z4nPg863z4IgJXMuLi4iCisKKyM6IGFwcGx5LmM6NDA5OAorIywgYy1mb3JtYXQKK21zZ2lkICJzaGExIGluZm9ybWF0aW9uIGlzIGxhY2tpbmcgb3IgdXNlbGVzcyBmb3Igc3VibW9kdWxlICVzIgorbXNnc3RyICLPgM67zrfPgc6/z4bOv8+Bzq/OsSBzaGExIM61zrvOu865z4DOrs+CIM6uIM6sz4fPgc63z4PPhM63IM6zzrnOsSDPhM63zr0gz4XPgM6/zrXOvc+Mz4TOt8+EzrEgJXMiCisKKyM6IGFwcGx5LmM6NDEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJtb2RlIGNoYW5nZSBmb3IgJXMsIHdoaWNoIGlzIG5vdCBpbiBjdXJyZW50IEhFQUQiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo0MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzICglcykuIgorbXNnc3RyICLPgM67zrfPgc6/z4bOv8+Bzq/OsSBzaGExIM61zrvOu865z4DOrs+CIM6uIM6sz4fPgc63z4PPhM63ICglcykuIgorCisjOiBhcHBseS5jOjQxMTMgYnVpbHRpbi9jaGVja291dC5jOjI0OCBidWlsdGluL3Jlc2V0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm1ha2VfY2FjaGVfZW50cnkgZmFpbGVkIGZvciBwYXRoICclcyciCittc2dzdHIgIs+Ezr8gbWFrZV9jYWNoZV9lbnRyeSDOsc+Azq3PhM+Fz4fOtSDOs865zrEgz4TOtyDOtM65zrHOtM+Bzr/OvM6uICclcyciCisKKyM6IGFwcGx5LmM6NDExNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgYWRkICVzIHRvIHRlbXBvcmFyeSBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHdyaXRlIHRlbXBvcmFyeSBpbmRleCB0byAlcyIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQyNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlcyBmcm9tIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NDI5OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3JydXB0IHBhdGNoIGZvciBzdWJtb2R1bGUgJXMiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo0MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ld2x5IGNyZWF0ZWQgZmlsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NDMxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGJhY2tpbmcgc3RvcmUgZm9yIG5ld2x5IGNyZWF0ZWQgZmlsZSAlcyIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQzMTkgYXBwbHkuYzo0NDY0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhZGQgY2FjaGUgZW50cnkgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NDM2MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQzNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2xvc2luZyBmaWxlICclcyciCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo0NDM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcycgbW9kZSAlbyIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQ1MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXBwbGllZCBwYXRjaCAlcyBjbGVhbmx5LiIKK21zZ3N0ciAizpcgzrXPhs6xz4HOvM6/zrPOriDPhM63z4IgzrTOuc+Mz4HOuM+Jz4POt8+CICclcycgzq3Os865zr3OtSDOus6xzrjOsc+BzqwuIgorCisjOiBhcHBseS5jOjQ1NDIKK21zZ2lkICJpbnRlcm5hbCBlcnJvciIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQ1NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXBwbHlpbmcgcGF0Y2ggJSVzIHdpdGggJWQgcmVqZWN0Li4uIgorbXNnaWRfcGx1cmFsICJBcHBseWluZyBwYXRjaCAlJXMgd2l0aCAlZCByZWplY3RzLi4uIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYXBwbHkuYzo0NTU2CisjLCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRpbmcgLnJlaiBmaWxlbmFtZSB0byAlLipzLnJlaiIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQ1NjQgYnVpbHRpbi9mZXRjaC5jOjgzNyBidWlsdGluL2ZldGNoLmM6MTExOAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiAlcyIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQ1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiSHVuayAjJWQgYXBwbGllZCBjbGVhbmx5LiIKK21zZ3N0ciAizpcgzrHOu867zrHOs86uIM+Fz4AnIM6xz4EuICVkIM61z4bOsc+BzrzPjM+Dz4TOt866zrUgzrrOsc64zrHPgc6sLiIKKworIzogYXBwbHkuYzo0NTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlamVjdGVkIGh1bmsgIyVkLiIKK21zZ3N0ciAizpHPgM6/z4HPgc6vz4bOuM63zrrOtSDOtyDOsc67zrvOsc6zzq4gz4XPgCcgzrHPgS4gJWQuIgorCisjOiBhcHBseS5jOjQ2OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBlZCBwYXRjaCAnJXMnLiIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQ3MDAKK21zZ2lkICJ1bnJlY29nbml6ZWQgaW5wdXQiCittc2dzdHIgIs60zrXOvSDOsc69zrHOs869z4nPgc6vzrbOtc+EzrHOuSDOtyDOtc65z4POsc6zz4nOs86uIgorCisjOiBhcHBseS5jOjQ3MjAKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBpbmRleCBmaWxlIgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NDg3NQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBvcGVuIHBhdGNoICclcyc6ICVzIgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NDkwMgorIywgYy1mb3JtYXQKK21zZ2lkICJzcXVlbGNoZWQgJWQgd2hpdGVzcGFjZSBlcnJvciIKK21zZ2lkX3BsdXJhbCAic3F1ZWxjaGVkICVkIHdoaXRlc3BhY2UgZXJyb3JzIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYXBwbHkuYzo0OTA4IGFwcGx5LmM6NDkyMworIywgYy1mb3JtYXQKK21zZ2lkICIlZCBsaW5lIGFkZHMgd2hpdGVzcGFjZSBlcnJvcnMuIgorbXNnaWRfcGx1cmFsICIlZCBsaW5lcyBhZGQgd2hpdGVzcGFjZSBlcnJvcnMuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYXBwbHkuYzo0OTE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIGxpbmUgYXBwbGllZCBhZnRlciBmaXhpbmcgd2hpdGVzcGFjZSBlcnJvcnMuIgorbXNnaWRfcGx1cmFsICIlZCBsaW5lcyBhcHBsaWVkIGFmdGVyIGZpeGluZyB3aGl0ZXNwYWNlIGVycm9ycy4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBhcHBseS5jOjQ5MzIgYnVpbHRpbi9hZGQuYzo1MzkgYnVpbHRpbi9tdi5jOjMwMSBidWlsdGluL3JtLmM6MzkwCittc2dpZCAiVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NDk1OSBhcHBseS5jOjQ5NjIgYnVpbHRpbi9hbS5jOjIyMDMgYnVpbHRpbi9hbS5jOjIyMDYKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjIgYnVpbHRpbi9mZXRjaC5jOjExOCBidWlsdGluL21lcmdlLmM6MjYzCisjOiBidWlsdGluL3B1bGwuYzoyMDAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODUwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODUzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA5MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NworbXNnaWQgInBhdGgiCittc2dzdHIgIs60zrnOsc60z4HOv868zq4iCisKKyM6IGFwcGx5LmM6NDk2MAorbXNnaWQgImRvbid0IGFwcGx5IGNoYW5nZXMgbWF0Y2hpbmcgdGhlIGdpdmVuIHBhdGgiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo0OTYzCittc2dpZCAiYXBwbHkgY2hhbmdlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQ5NjUgYnVpbHRpbi9hbS5jOjIyMTIKK21zZ2lkICJudW0iCittc2dzdHIgIs6xz4HOuc64LiIKKworIzogYXBwbHkuYzo0OTY2Cittc2dpZCAicmVtb3ZlIDxudW0+IGxlYWRpbmcgc2xhc2hlcyBmcm9tIHRyYWRpdGlvbmFsIGRpZmYgcGF0aHMiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo0OTY5Cittc2dpZCAiaWdub3JlIGFkZGl0aW9ucyBtYWRlIGJ5IHRoZSBwYXRjaCIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQ5NzEKK21zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGRpZmZzdGF0IGZvciB0aGUgaW5wdXQiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo0OTc1Cittc2dpZCAic2hvdyBudW1iZXIgb2YgYWRkZWQgYW5kIGRlbGV0ZWQgbGluZXMgaW4gZGVjaW1hbCBub3RhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQ5NzcKK21zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGEgc3VtbWFyeSBmb3IgdGhlIGlucHV0IgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NDk3OQorbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBzZWUgaWYgdGhlIHBhdGNoIGlzIGFwcGxpY2FibGUiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo0OTgxCittc2dpZCAibWFrZSBzdXJlIHRoZSBwYXRjaCBpcyBhcHBsaWNhYmxlIHRvIHRoZSBjdXJyZW50IGluZGV4IgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NDk4MworbXNnaWQgIm1hcmsgbmV3IGZpbGVzIHdpdGggYGdpdCBhZGQgLS1pbnRlbnQtdG8tYWRkYCIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQ5ODUKK21zZ2lkICJhcHBseSBhIHBhdGNoIHdpdGhvdXQgdG91Y2hpbmcgdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjQ5ODcKK21zZ2lkICJhY2NlcHQgYSBwYXRjaCB0aGF0IHRvdWNoZXMgb3V0c2lkZSB0aGUgd29ya2luZyBhcmVhIgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NDk5MAorbXNnaWQgImFsc28gYXBwbHkgdGhlIHBhdGNoICh1c2Ugd2l0aCAtLXN0YXQvLS1zdW1tYXJ5Ly0tY2hlY2spIgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NDk5MgorbXNnaWQgImF0dGVtcHQgdGhyZWUtd2F5IG1lcmdlIGlmIGEgcGF0Y2ggZG9lcyBub3QgYXBwbHkiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo0OTk0Cittc2dpZCAiYnVpbGQgYSB0ZW1wb3JhcnkgaW5kZXggYmFzZWQgb24gZW1iZWRkZWQgaW5kZXggaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo0OTk3IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzMgYnVpbHRpbi9scy1maWxlcy5jOjUyNAorbXNnaWQgInBhdGhzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NDk5OQorbXNnaWQgImVuc3VyZSBhdCBsZWFzdCA8bj4gbGluZXMgb2YgY29udGV4dCBtYXRjaCIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjUwMDAgYnVpbHRpbi9hbS5jOjIxOTEgYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5OSBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzE0IGJ1aWx0aW4vcmViYXNlLmM6MTA2NQorbXNnaWQgImFjdGlvbiIKK21zZ3N0ciAizrXOvc6tz4HOs861zrnOsSIKKworIzogYXBwbHkuYzo1MDAxCittc2dpZCAiZGV0ZWN0IG5ldyBvciBtb2RpZmllZCBsaW5lcyB0aGF0IGhhdmUgd2hpdGVzcGFjZSBlcnJvcnMiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo1MDA0IGFwcGx5LmM6NTAwNworbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIHdoaXRlc3BhY2Ugd2hlbiBmaW5kaW5nIGNvbnRleHQiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo1MDEwCittc2dpZCAiYXBwbHkgdGhlIHBhdGNoIGluIHJldmVyc2UiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo1MDEyCittc2dpZCAiZG9uJ3QgZXhwZWN0IGF0IGxlYXN0IG9uZSBsaW5lIG9mIGNvbnRleHQiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo1MDE0Cittc2dpZCAibGVhdmUgdGhlIHJlamVjdGVkIGh1bmtzIGluIGNvcnJlc3BvbmRpbmcgKi5yZWogZmlsZXMiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo1MDE2Cittc2dpZCAiYWxsb3cgb3ZlcmxhcHBpbmcgaHVua3MiCittc2dzdHIgIiIKKworIzogYXBwbHkuYzo1MDE3IGJ1aWx0aW4vYWRkLmM6MjkxIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxMiBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5OCBidWlsdGluL2ZzY2suYzo3MjQKKyM6IGJ1aWx0aW4vbG9nLmM6MjAzNyBidWlsdGluL212LmM6MTIzIGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI4CisjOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTkKK21zZ2lkICJiZSB2ZXJib3NlIgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NTAxOQorbXNnaWQgInRvbGVyYXRlIGluY29ycmVjdGx5IGRldGVjdGVkIG1pc3NpbmcgbmV3LWxpbmUgYXQgdGhlIGVuZCBvZiBmaWxlIgorbXNnc3RyICIiCisKKyM6IGFwcGx5LmM6NTAyMgorbXNnaWQgImRvIG5vdCB0cnVzdCB0aGUgbGluZSBjb3VudHMgaW4gdGhlIGh1bmsgaGVhZGVycyIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjUwMjQgYnVpbHRpbi9hbS5jOjIyMDAKK21zZ2lkICJyb290IgorbXNnc3RyICLPgc6vzrbOsSIKKworIzogYXBwbHkuYzo1MDI1Cittc2dpZCAicHJlcGVuZCA8cm9vdD4gdG8gYWxsIGZpbGVuYW1lcyIKK21zZ3N0ciAiz4DPgc6/z4POuM6uzrrOtyDPhM6/z4Ugz4DPgc6/zrjOrc68zrHPhM6/z4IgPM+Bzq/Ots6xPiDPg861IM+MzrvOsSDPhM6xIM6/zr3PjM68zrHPhM6xIM6xz4HPh861zq/Pic69IgorCisjOiBhcmNoaXZlLmM6MTQKK21zZ2lkICJnaXQgYXJjaGl2ZSBbPG9wdGlvbnM+XSA8dHJlZS1pc2g+IFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgYXJjaGl2ZSBbPM61z4DOuc67zr/Os86tz4I+XSA8zrTOrc69z4TPgc6/IM6uIM+GzrHOuc69zr/OvM61zr3Ouc66z4w+IFs8zrTOuc6xzrTPgc6/zrzOrj4uLi5dIgorCisjOiBhcmNoaXZlLmM6MTUKK21zZ2lkICJnaXQgYXJjaGl2ZSAtLWxpc3QiCittc2dzdHIgImdpdCBhcmNoaXZlIC0tbGlzdCIKKworIzogYXJjaGl2ZS5jOjE2Cittc2dpZCAiIgorImdpdCBhcmNoaXZlIC0tcmVtb3RlIDxyZXBvPiBbLS1leGVjIDxjbWQ+XSBbPG9wdGlvbnM+XSA8dHJlZS1pc2g+IFs8cGF0aD4uLi5dIgorbXNnc3RyICIiCisiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPM6xz4DOv864zrXPhM6uz4HOuc6/PiBbLS1leGVjIDzOtc69z4TOv867zq4+XSBbPM61z4DOuc67zr/Os86tz4I+XSA8zrTOrc69z4TPgc6/IM6uICIKKyLPhs6xzrnOvc6/zrzOtc69zrnOus+MPiBbPM60zrnOsc60z4HOv868zq4+Li4uXSIKKworIzogYXJjaGl2ZS5jOjE3Cittc2dpZCAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPHJlcG8+IFstLWV4ZWMgPGNtZD5dIC0tbGlzdCIKK21zZ3N0ciAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPM6xz4DOv864zrXPhM6uz4HOuc6/PiBbLS1leGVjIDzOtc69z4TOv867zq4+XSAtLWxpc3QiCisKKyM6IGFyY2hpdmUuYzozNzIgYnVpbHRpbi9hZGQuYzoxNzcgYnVpbHRpbi9hZGQuYzo1MTUgYnVpbHRpbi9ybS5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoc3BlYyAnJXMnIGRpZCBub3QgbWF0Y2ggYW55IGZpbGVzIgorbXNnc3RyICLOtyDOtM65zrHOtM+Bzr/OvM6uICclcycgzrTOtc69IM+EzrHOuc+BzrnOrM62zrXOuSDOvM61IM66zrHOvc6tzr3OsSDOsc+Bz4fOtc6vzr8iCisKKyM6IGFyY2hpdmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCByZWY6ICUuKnMiCittc2dzdHIgIs60zrXOvSDPhc+AzqzPgc+HzrXOuSByZWY6ICUuKnMiCisKKyM6IGFyY2hpdmUuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0IG5hbWU6ICVzIgorbXNnc3RyICLOvM63IM6tzrPOus+Fz4HOvyDPjM69zr/OvM6xIM6xzr3PhM65zrrOtc65zrzOrc69zr/PhTogJXMiCisKKyM6IGFyY2hpdmUuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdHJlZSBvYmplY3Q6ICVzIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOsc69z4TOuc66zrXOr868zrXOvc6/IM60zq3Ovc+Ez4HOv8+FOiAlcyIKKworIzogYXJjaGl2ZS5jOjQyNAorbXNnaWQgImN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkgaXMgdW50cmFja2VkIgorbXNnc3RyICLOvyDPhM+Bzq3Ph8+Jzr0gz4bOrM66zrXOu86/z4IgzrXPgc6zzrHPg86vzrHPgiDOtM61zr0gz4DOsc+BzrHOus6/zrvOv8+FzrjOtc6vz4TOsc65IgorCisjOiBhcmNoaXZlLmM6NDU1Cittc2dpZCAiZm10IgorbXNnc3RyICLOvM+Bz4YuIgorCisjOiBhcmNoaXZlLmM6NDU1Cittc2dpZCAiYXJjaGl2ZSBmb3JtYXQiCittc2dzdHIgIs68zr/Pgc+Gzq4gzrHPgc+HzrXOuc6/zrjOrs66zrfPgiIKKworIzogYXJjaGl2ZS5jOjQ1NiBidWlsdGluL2xvZy5jOjE1NDkKK21zZ2lkICJwcmVmaXgiCittc2dzdHIgIs+Az4HPjM64zrXOvM6xIgorCisjOiBhcmNoaXZlLmM6NDU3Cittc2dpZCAicHJlcGVuZCBwcmVmaXggdG8gZWFjaCBwYXRobmFtZSBpbiB0aGUgYXJjaGl2ZSIKK21zZ3N0ciAiz4DPgc6/z4POuM6uzrrOtyDPhM6/z4Ugz4DPgc6/zrjOrc68zrHPhM6/z4Igz4POtSDOus6szrjOtSDPjM69zr/OvM6xIM60zrnOsc60z4HOv868zq7PgiDPg8+EzrfOvSDOsc+Bz4fOtc65zr/OuM6uzrrOtyIKKworIzogYXJjaGl2ZS5jOjQ1OCBidWlsdGluL2JsYW1lLmM6ODIwIGJ1aWx0aW4vYmxhbWUuYzo4MjEgYnVpbHRpbi9jb25maWcuYzoxMjkKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDkxIGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDkzIGJ1aWx0aW4vZ3JlcC5jOjg5NQorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNSBidWlsdGluL2xzLWZpbGVzLmM6NTYwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTIgYnVpbHRpbi9ub3Rlcy5jOjU3OCBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogcGFyc2Utb3B0aW9ucy5oOjE2MgorbXNnaWQgImZpbGUiCittc2dzdHIgIs6xz4HPh861zq/OvyIKKworIzogYXJjaGl2ZS5jOjQ1OSBidWlsdGluL2FyY2hpdmUuYzo5MAorbXNnaWQgIndyaXRlIHRoZSBhcmNoaXZlIHRvIHRoaXMgZmlsZSIKK21zZ3N0ciAizrHPgc+HzrXOuc6/zrjOrc+EzrfPg863IM+DzrUgzrHPhc+Ez4wgz4TOvyDOsc+Bz4fOtc6vzr8iCisKKyM6IGFyY2hpdmUuYzo0NjEKK21zZ2lkICJyZWFkIC5naXRhdHRyaWJ1dGVzIGluIHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGFyY2hpdmUuYzo0NjIKK21zZ2lkICJyZXBvcnQgYXJjaGl2ZWQgZmlsZXMgb24gc3RkZXJyIgorbXNnc3RyICIiCisKKyM6IGFyY2hpdmUuYzo0NjMKK21zZ2lkICJzdG9yZSBvbmx5IgorbXNnc3RyICIiCisKKyM6IGFyY2hpdmUuYzo0NjQKK21zZ2lkICJjb21wcmVzcyBmYXN0ZXIiCittc2dzdHIgIs+EzrHPh8+Nz4TOtc+Bzrcgz4PPhc68z4DOr861z4POtyIKKworIzogYXJjaGl2ZS5jOjQ3MgorbXNnaWQgImNvbXByZXNzIGJldHRlciIKK21zZ3N0ciAizrrOsc67z43PhM61z4HOtyDPg8+FzrzPgM6vzrXPg863IgorCisjOiBhcmNoaXZlLmM6NDc1Cittc2dpZCAibGlzdCBzdXBwb3J0ZWQgYXJjaGl2ZSBmb3JtYXRzIgorbXNnc3RyICLPgM6xz4HOrM64zrXPg863IM+Fz4DOv8+Dz4TOt8+BzrnOts+MzrzOtc69z4nOvSDOvM6/z4HPhs+Ozr0gzrHPgc+HzrXOuc6/zrjOrc+EzrfPg863z4IiCisKKyM6IGFyY2hpdmUuYzo0NzcgYnVpbHRpbi9hcmNoaXZlLmM6OTEgYnVpbHRpbi9jbG9uZS5jOjExMiBidWlsdGluL2Nsb25lLmM6MTE1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3OCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1OQorbXNnaWQgInJlcG8iCittc2dzdHIgIs6xz4DOv864LiIKKworIzogYXJjaGl2ZS5jOjQ3OCBidWlsdGluL2FyY2hpdmUuYzo5MgorbXNnaWQgInJldHJpZXZlIHRoZSBhcmNoaXZlIGZyb20gcmVtb3RlIHJlcG9zaXRvcnkgPHJlcG8+IgorbXNnc3RyICIiCisKKyM6IGFyY2hpdmUuYzo0NzkgYnVpbHRpbi9hcmNoaXZlLmM6OTMgYnVpbHRpbi9kaWZmdG9vbC5jOjcxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQ5OAorbXNnaWQgImNvbW1hbmQiCittc2dzdHIgIiIKKworIzogYXJjaGl2ZS5jOjQ4MCBidWlsdGluL2FyY2hpdmUuYzo5NAorbXNnaWQgInBhdGggdG8gdGhlIHJlbW90ZSBnaXQtdXBsb2FkLWFyY2hpdmUgY29tbWFuZCIKK21zZ3N0ciAiIgorCisjOiBhcmNoaXZlLmM6NDg3Cittc2dpZCAiVW5leHBlY3RlZCBvcHRpb24gLS1yZW1vdGUiCittc2dzdHIgIiIKKworIzogYXJjaGl2ZS5jOjQ4OQorbXNnaWQgIk9wdGlvbiAtLWV4ZWMgY2FuIG9ubHkgYmUgdXNlZCB0b2dldGhlciB3aXRoIC0tcmVtb3RlIgorbXNnc3RyICIiCisKKyM6IGFyY2hpdmUuYzo0OTEKK21zZ2lkICJVbmV4cGVjdGVkIG9wdGlvbiAtLW91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBhcmNoaXZlLmM6NTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlVua25vd24gYXJjaGl2ZSBmb3JtYXQgJyVzJyIKK21zZ3N0ciAizobOs869z4nPg8+EzrcgzrzOv8+Bz4bOriDOsc+Bz4fOtc65zr/OuM6tz4TOt8+DzrfPgiAnJXMnIgorCisjOiBhcmNoaXZlLmM6NTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFyZ3VtZW50IG5vdCBzdXBwb3J0ZWQgZm9yIGZvcm1hdCAnJXMnOiAtJWQiCittc2dzdHIgIiIKKworIzogYXJjaGl2ZS10YXIuYzoxMjUgYXJjaGl2ZS16aXAuYzozNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0cmVhbSBibG9iICVzIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgz4HOv86uIM+Ezr/PhSBibG9iICVzIgorCisjOiBhcmNoaXZlLXRhci5jOjI2MCBhcmNoaXZlLXppcC5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnN1cHBvcnRlZCBmaWxlIG1vZGU6IDAlbyAoU0hBMTogJXMpIgorbXNnc3RyICIiCisKKyM6IGFyY2hpdmUtdGFyLmM6Mjg3IGFyY2hpdmUtemlwLmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICVzIgorbXNnc3RyICIiCisKKyM6IGFyY2hpdmUtdGFyLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGFydCAnJXMnIGZpbHRlciIKK21zZ3N0ciAiIgorCisjOiBhcmNoaXZlLXRhci5jOjQ2MQorbXNnaWQgInVuYWJsZSB0byByZWRpcmVjdCBkZXNjcmlwdG9yIgorbXNnc3RyICIiCisKKyM6IGFyY2hpdmUtdGFyLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmlsdGVyIHJlcG9ydGVkIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGFyY2hpdmUtemlwLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggaXMgbm90IHZhbGlkIFVURi04OiAlcyIKK21zZ3N0ciAiIgorCisjOiBhcmNoaXZlLXppcC5jOjMxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoIHRvbyBsb25nICglZCBjaGFycywgU0hBMTogJXMpOiAlcyIKK21zZ3N0ciAiIgorCisjOiBhcmNoaXZlLXppcC5jOjQ3NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJkZWZsYXRlIGVycm9yICglZCkiCittc2dzdHIgIiIKKworIzogYXJjaGl2ZS16aXAuYzo2MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidGltZXN0YW1wIHRvbyBsYXJnZSBmb3IgdGhpcyBzeXN0ZW06ICU8UFJJdU1BWD4iCittc2dzdHIgIiIKKworIzogYXR0ci5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICIlLipzIGlzIG5vdCBhIHZhbGlkIGF0dHJpYnV0ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IGF0dHIuYzozNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgbm90IGFsbG93ZWQ6ICVzOiVkIgorbXNnc3RyICIiCisKKyM6IGF0dHIuYzo0MDgKK21zZ2lkICIiCisiTmVnYXRpdmUgcGF0dGVybnMgYXJlIGlnbm9yZWQgaW4gZ2l0IGF0dHJpYnV0ZXNcbiIKKyJVc2UgJ1xcIScgZm9yIGxpdGVyYWwgbGVhZGluZyBleGNsYW1hdGlvbi4iCittc2dzdHIgIiIKKworIzogYmlzZWN0LmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIkJhZGx5IHF1b3RlZCBjb250ZW50IGluIGZpbGUgJyVzJzogJXMiCittc2dzdHIgIiIKKworIzogYmlzZWN0LmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIldlIGNhbm5vdCBiaXNlY3QgbW9yZSFcbiIKK21zZ3N0ciAiIgorCisjOiBiaXNlY3QuYzo3MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm90IGEgdmFsaWQgY29tbWl0IG5hbWUgJXMiCittc2dzdHIgIs6czrcgzq3Os866z4XPgc6/IM+Mzr3Ov868zrEgz4XPgM6/zrLOv867zq7PgiAlcyIKKworIzogYmlzZWN0LmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgbWVyZ2UgYmFzZSAlcyBpcyBiYWQuXG4iCisiVGhpcyBtZWFucyB0aGUgYnVnIGhhcyBiZWVuIGZpeGVkIGJldHdlZW4gJXMgYW5kIFslc10uXG4iCittc2dzdHIgIiIKKworIzogYmlzZWN0LmM6NzYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgbWVyZ2UgYmFzZSAlcyBpcyBuZXcuXG4iCisiVGhlIHByb3BlcnR5IGhhcyBjaGFuZ2VkIGJldHdlZW4gJXMgYW5kIFslc10uXG4iCittc2dzdHIgIiIKKworIzogYmlzZWN0LmM6NzY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgbWVyZ2UgYmFzZSAlcyBpcyAlcy5cbiIKKyJUaGlzIG1lYW5zIHRoZSBmaXJzdCAnJXMnIGNvbW1pdCBpcyBiZXR3ZWVuICVzIGFuZCBbJXNdLlxuIgorbXNnc3RyICIiCisKKyM6IGJpc2VjdC5jOjc3NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU29tZSAlcyByZXZzIGFyZSBub3QgYW5jZXN0b3JzIG9mIHRoZSAlcyByZXYuXG4iCisiZ2l0IGJpc2VjdCBjYW5ub3Qgd29yayBwcm9wZXJseSBpbiB0aGlzIGNhc2UuXG4iCisiTWF5YmUgeW91IG1pc3Rvb2sgJXMgYW5kICVzIHJldnM/XG4iCittc2dzdHIgIiIKKworIzogYmlzZWN0LmM6Nzg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0aGUgbWVyZ2UgYmFzZSBiZXR3ZWVuICVzIGFuZCBbJXNdIG11c3QgYmUgc2tpcHBlZC5cbiIKKyJTbyB3ZSBjYW5ub3QgYmUgc3VyZSB0aGUgZmlyc3QgJXMgY29tbWl0IGlzIGJldHdlZW4gJXMgYW5kICVzLlxuIgorIldlIGNvbnRpbnVlIGFueXdheS4iCittc2dzdHIgIiIKKworIzogYmlzZWN0LmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgIkJpc2VjdGluZzogYSBtZXJnZSBiYXNlIG11c3QgYmUgdGVzdGVkXG4iCittc2dzdHIgIiIKKworIzogYmlzZWN0LmM6ODY1CisjLCBjLWZvcm1hdAorbXNnaWQgImEgJXMgcmV2aXNpb24gaXMgbmVlZGVkIgorbXNnc3RyICIiCisKKyM6IGJpc2VjdC5jOjg4NCBidWlsdGluL25vdGVzLmM6MTc3IGJ1aWx0aW4vdGFnLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJpc2VjdC5jOjkzNyBidWlsdGluL21lcmdlLmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBiaXNlY3QuYzo5NjcKK21zZ2lkICJyZWFkaW5nIGJpc2VjdCByZWZzIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBiaXNlY3QuYzo5ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgd2FzIGJvdGggJXMgYW5kICVzXG4iCittc2dzdHIgIiIKKworIzogYmlzZWN0LmM6OTk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJObyB0ZXN0YWJsZSBjb21taXQgZm91bmQuXG4iCisiTWF5YmUgeW91IHN0YXJ0ZWQgd2l0aCBiYWQgcGF0aCBwYXJhbWV0ZXJzP1xuIgorbXNnc3RyICIiCisKKyM6IGJpc2VjdC5jOjEwMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiKHJvdWdobHkgJWQgc3RlcCkiCittc2dpZF9wbHVyYWwgIihyb3VnaGx5ICVkIHN0ZXBzKSIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyMuIFRSQU5TTEFUT1JTOiB0aGUgbGFzdCAlcyB3aWxsIGJlIHJlcGxhY2VkIHdpdGggIihyb3VnaGx5ICVkCisjLiBzdGVwcykiIHRyYW5zbGF0aW9uLgorIy4KKyM6IGJpc2VjdC5jOjEwMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmlzZWN0aW5nOiAlZCByZXZpc2lvbiBsZWZ0IHRvIHRlc3QgYWZ0ZXIgdGhpcyAlc1xuIgorbXNnaWRfcGx1cmFsICJCaXNlY3Rpbmc6ICVkIHJldmlzaW9ucyBsZWZ0IHRvIHRlc3QgYWZ0ZXIgdGhpcyAlc1xuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYmxhbWUuYzoxNzkyCittc2dpZCAiLS1jb250ZW50cyBhbmQgLS1yZXZlcnNlIGRvIG5vdCBibGVuZCB3ZWxsLiIKK21zZ3N0ciAiIgorCisjOiBibGFtZS5jOjE4MDYKK21zZ2lkICJjYW5ub3QgdXNlIC0tY29udGVudHMgd2l0aCBmaW5hbCBjb21taXQgb2JqZWN0IG5hbWUiCittc2dzdHIgIiIKKworIzogYmxhbWUuYzoxODI3Cittc2dpZCAiLS1yZXZlcnNlIGFuZCAtLWZpcnN0LXBhcmVudCB0b2dldGhlciByZXF1aXJlIHNwZWNpZmllZCBsYXRlc3QgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IGJsYW1lLmM6MTgzNiBidW5kbGUuYzoxNjQgcmVmLWZpbHRlci5jOjIwNzEgcmVtb3RlLmM6MTk0OCBzZXF1ZW5jZXIuYzoxOTkzCisjOiBzZXF1ZW5jZXIuYzo0MDY0IGJ1aWx0aW4vY29tbWl0LmM6MTAwNCBidWlsdGluL2xvZy5jOjM3OCBidWlsdGluL2xvZy5jOjkzNgorIzogYnVpbHRpbi9sb2cuYzoxNDIwIGJ1aWx0aW4vbG9nLmM6MTc5NiBidWlsdGluL2xvZy5jOjIwODYgYnVpbHRpbi9tZXJnZS5jOjQwNworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTM3IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE1MgorIzogYnVpbHRpbi9zaG9ydGxvZy5jOjE5MgorbXNnaWQgInJldmlzaW9uIHdhbGsgc2V0dXAgZmFpbGVkIgorbXNnc3RyICLOtyDOsc+Bz4fOuc66zr/PgM6/zq/Ot8+Dzrcgz4TOv8+FIM68zr/Ovc6/z4DOsc+EzrnOv8+NIM61zrrOtM+Mz4POtc+Jzr0gzrHPgM6tz4TPhc+HzrUiCisKKyM6IGJsYW1lLmM6MTg1NAorbXNnaWQgIiIKKyItLXJldmVyc2UgLS1maXJzdC1wYXJlbnQgdG9nZXRoZXIgcmVxdWlyZSByYW5nZSBhbG9uZyBmaXJzdC1wYXJlbnQgY2hhaW4iCittc2dzdHIgIiIKKworIzogYmxhbWUuYzoxODY1CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggcGF0aCAlcyBpbiAlcyIKK21zZ3N0ciAizrTOtc69IM+Fz4DOrM+Bz4fOtc65IM+Ezq3PhM6/zrnOsSDOtM65zrHOtM+Bzr/OvM6uICVzIM+Dz4TOvyAlcyIKKworIzogYmxhbWUuYzoxODc2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGJsb2IgJXMgZm9yIHBhdGggJXMiCittc2dzdHIgIs60zrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDOsc69zqzOs869z4nPg863IM+Ezr/PhSBibG9iICVzIM6zzrnOsSDPhM63IM60zrnOsc60z4HOv868zq4gJXMiCisKKyM6IGJyYW5jaC5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJBZnRlciBmaXhpbmcgdGhlIGVycm9yIGNhdXNlIHlvdSBtYXkgdHJ5IHRvIGZpeCB1cFxuIgorInRoZSByZW1vdGUgdHJhY2tpbmcgaW5mb3JtYXRpb24gYnkgaW52b2tpbmdcbiIKKyJcImdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMlcyVzXCIuIgorbXNnc3RyICIiCisiXG4iCisizpHPhs6/z40gz4bPhM65zqzOvs61z4TOtSDPhM63zr0gzrHOuc+Ezq/OsSDPhM6/z4Ugz4PPhs6szrvOvM6xz4TOv8+CIM68z4DOv8+BzrXOr8+EzrUgzr3OsSDOtM6/zrrOuc68zqzPg861z4TOtSDOvc6xIM+Gz4TOuc6szr7Otc+EzrVcbiIKKyLPhM65z4Igz4DOu863z4HOv8+Gzr/Pgc6vzrXPgiDPgM6xz4HOsc66zr/Ou86/z43OuM63z4POt8+CIM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/z4UgzrrOsc67z47Ovc+EzrHPglxuIgorIlwiZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10bz0lcyVzJXNcIi4iCisKKyM6IGJyYW5jaC5jOjY2CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdCBzZXR0aW5nIGJyYW5jaCAlcyBhcyBpdHMgb3duIHVwc3RyZWFtLiIKK21zZ3N0ciAizpTOtSDOs86vzr3Otc+EzrHOuSDOv8+BzrnPg868z4zPgiDPhM6/z4UgJXMgz4nPgiDPhM6/IM+Az4HOv8+CIM+EzrEgz4DOrM69z4kgz4TOv8+FIM61zrHPhc+Ezr/PjSDPhM6/z4UuIgorCisjOiBicmFuY2guYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIGJyYW5jaCAnJXMnIGZyb20gJyVzJyBieSByZWJhc2luZy4iCittc2dzdHIgIiIKKworIzogYnJhbmNoLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIHJlbW90ZSBicmFuY2ggJyVzJyBmcm9tICclcycuIgorbXNnc3RyICIiCisKKyM6IGJyYW5jaC5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCBicmFuY2ggJyVzJyBieSByZWJhc2luZy4iCittc2dzdHIgIiIKKworIzogYnJhbmNoLmM6OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIGJyYW5jaCAnJXMnLiIKK21zZ3N0ciAiIgorCisjOiBicmFuY2guYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIHJlbW90ZSByZWYgJyVzJyBieSByZWJhc2luZy4iCittc2dzdHIgIiIKKworIzogYnJhbmNoLmM6MTA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgcmVmICclcycuIgorbXNnc3RyICIiCisKKyM6IGJyYW5jaC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycgYnkgcmViYXNpbmcuIgorbXNnc3RyICIiCisKKyM6IGJyYW5jaC5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycuIgorbXNnc3RyICIiCisKKyM6IGJyYW5jaC5jOjExOAorbXNnaWQgIlVuYWJsZSB0byB3cml0ZSB1cHN0cmVhbSBicmFuY2ggY29uZmlndXJhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBicmFuY2guYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm90IHRyYWNraW5nOiBhbWJpZ3VvdXMgaW5mb3JtYXRpb24gZm9yIHJlZiAlcyIKK21zZ3N0ciAiIgorCisjOiBicmFuY2guYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBicmFuY2ggbmFtZS4iCittc2dzdHIgIiIKKworIzogYnJhbmNoLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIkEgYnJhbmNoIG5hbWVkICclcycgYWxyZWFkeSBleGlzdHMuIgorbXNnc3RyICIiCisKKyM6IGJyYW5jaC5jOjIxMgorbXNnaWQgIkNhbm5vdCBmb3JjZSB1cGRhdGUgdGhlIGN1cnJlbnQgYnJhbmNoLiIKK21zZ3N0ciAiIgorCisjOiBicmFuY2guYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHNldHVwIHRyYWNraW5nIGluZm9ybWF0aW9uOyBzdGFydGluZyBwb2ludCAnJXMnIGlzIG5vdCBhIGJyYW5jaC4iCittc2dzdHIgIiIKKworIzogYnJhbmNoLmM6MjM0CisjLCBjLWZvcm1hdAorbXNnaWQgInRoZSByZXF1ZXN0ZWQgdXBzdHJlYW0gYnJhbmNoICclcycgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIs6/IM+Az4HOv8+CIM+EzrEgz4DOrM69z4kgzrrOu86szrTOv8+CICclcycgz4DOv8+FIM62zrfPhM6uzrjOt866zrUgzrTOtc69IM+Fz4DOrM+Bz4fOtc65IgorCisjOiBicmFuY2guYzoyMzYKK21zZ2lkICIiCisiXG4iCisiSWYgeW91IGFyZSBwbGFubmluZyBvbiBiYXNpbmcgeW91ciB3b3JrIG9uIGFuIHVwc3RyZWFtXG4iCisiYnJhbmNoIHRoYXQgYWxyZWFkeSBleGlzdHMgYXQgdGhlIHJlbW90ZSwgeW91IG1heSBuZWVkIHRvXG4iCisicnVuIFwiZ2l0IGZldGNoXCIgdG8gcmV0cmlldmUgaXQuXG4iCisiXG4iCisiSWYgeW91IGFyZSBwbGFubmluZyB0byBwdXNoIG91dCBhIG5ldyBsb2NhbCBicmFuY2ggdGhhdFxuIgorIndpbGwgdHJhY2sgaXRzIHJlbW90ZSBjb3VudGVycGFydCwgeW91IG1heSB3YW50IHRvIHVzZVxuIgorIlwiZ2l0IHB1c2ggLXVcIiB0byBzZXQgdGhlIHVwc3RyZWFtIGNvbmZpZyBhcyB5b3UgcHVzaC4iCittc2dzdHIgIiIKKworIzogYnJhbmNoLmM6MjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnLiIKK21zZ3N0ciAizpzOtyDOrc6zzrrPhc+Bzr8gz4zOvc6/zrzOsSDOsc69z4TOuc66zrXOuc68zq3Ovc6/z4U6ICclcycuIgorCisjOiBicmFuY2guYzozMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQW1iaWd1b3VzIG9iamVjdCBuYW1lOiAnJXMnLiIKK21zZ3N0ciAizpHOvM+Gzq/Pg863zrzOvyDPjM69zr/OvM6xIM6xzr3PhM65zrrOtc65zrzOrc69zr/PhTogJyVzJy4iCisKKyM6IGJyYW5jaC5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJOb3QgYSB2YWxpZCBicmFuY2ggcG9pbnQ6ICclcycuIgorbXNnc3RyICLOnM63IM6tzrPOus+Fz4HOvyDPg863zrzOtc6vzr8gzrrOu86szrTOv8+FOiAnJXMnLiIKKworIzogYnJhbmNoLmM6MzU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgYWxyZWFkeSBjaGVja2VkIG91dCBhdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJyYW5jaC5jOjM4MgorIywgYy1mb3JtYXQKK21zZ2lkICJIRUFEIG9mIHdvcmtpbmcgdHJlZSAlcyBpcyBub3QgdXBkYXRlZCIKK21zZ3N0ciAiIgorCisjOiBidW5kbGUuYzozNgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IGxvb2sgbGlrZSBhIHYyIGJ1bmRsZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGJ1bmRsZS5jOjY0CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBoZWFkZXI6ICVzJXMgKCVkKSIKK21zZ3N0ciAiIgorCisjOiBidW5kbGUuYzo5MCByZXJlcmUuYzo0ODAgcmVyZXJlLmM6NjkwIHNlcXVlbmNlci5jOjIyMTUgc2VxdWVuY2VyLmM6Mjc2MworIzogYnVpbHRpbi9jb21taXQuYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyIKK21zZ3N0ciAizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TPjCDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSAnJXMnIgorCisjOiBidW5kbGUuYzoxNDMKK21zZ2lkICJSZXBvc2l0b3J5IGxhY2tzIHRoZXNlIHByZXJlcXVpc2l0ZSBjb21taXRzOiIKK21zZ3N0ciAiIgorCisjOiBidW5kbGUuYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlIGJ1bmRsZSBjb250YWlucyB0aGlzIHJlZjoiCittc2dpZF9wbHVyYWwgIlRoZSBidW5kbGUgY29udGFpbnMgdGhlc2UgJWQgcmVmczoiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBidW5kbGUuYzoyMDEKK21zZ2lkICJUaGUgYnVuZGxlIHJlY29yZHMgYSBjb21wbGV0ZSBoaXN0b3J5LiIKK21zZ3N0ciAiIgorCisjOiBidW5kbGUuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlIGJ1bmRsZSByZXF1aXJlcyB0aGlzIHJlZjoiCittc2dpZF9wbHVyYWwgIlRoZSBidW5kbGUgcmVxdWlyZXMgdGhlc2UgJWQgcmVmczoiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBidW5kbGUuYzoyNjkKK21zZ2lkICJ1bmFibGUgdG8gZHVwIGJ1bmRsZSBkZXNjcmlwdG9yIgorbXNnc3RyICIiCisKKyM6IGJ1bmRsZS5jOjI3NgorbXNnaWQgIkNvdWxkIG5vdCBzcGF3biBwYWNrLW9iamVjdHMiCittc2dzdHIgIiIKKworIzogYnVuZGxlLmM6Mjg3Cittc2dpZCAicGFjay1vYmplY3RzIGRpZWQiCittc2dzdHIgIiIKKworIzogYnVuZGxlLmM6MzI5Cittc2dpZCAicmV2LWxpc3QgZGllZCIKK21zZ3N0ciAiIgorCisjOiBidW5kbGUuYzozNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmICclcycgaXMgZXhjbHVkZWQgYnkgdGhlIHJldi1saXN0IG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogYnVuZGxlLmM6NDU3IGJ1aWx0aW4vbG9nLmM6MTkzIGJ1aWx0aW4vbG9nLmM6MTcwMSBidWlsdGluL3Nob3J0bG9nLmM6MzA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBhcmd1bWVudDogJXMiCittc2dzdHIgIiIKKworIzogYnVuZGxlLmM6NDY1Cittc2dpZCAiUmVmdXNpbmcgdG8gY3JlYXRlIGVtcHR5IGJ1bmRsZS4iCittc2dzdHIgIiIKKworIzogYnVuZGxlLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidW5kbGUuYzo1MDAKK21zZ2lkICJpbmRleC1wYWNrIGRpZWQiCittc2dzdHIgIiIKKworIzogY29sb3IuYzoyOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb2xvciB2YWx1ZTogJS4qcyIKK21zZ3N0ciAiIgorCisjOiBjb21taXQuYzo1MCBzZXF1ZW5jZXIuYzoyNTY3IGJ1aWx0aW4vYW0uYzozNTUgYnVpbHRpbi9hbS5jOjM5OQorIzogYnVpbHRpbi9hbS5jOjEzNzUgYnVpbHRpbi9hbS5jOjIwMTkgYnVpbHRpbi9yZXBsYWNlLmM6Mzc2CisjOiBidWlsdGluL3JlcGxhY2UuYzo0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlICVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIGlzIG5vdCBhIGNvbW1pdCEiCittc2dzdHIgIiIKKworIzogY29tbWl0LmM6MTkzCittc2dpZCAiIgorIlN1cHBvcnQgZm9yIDxHSVRfRElSPi9pbmZvL2dyYWZ0cyBpcyBkZXByZWNhdGVkXG4iCisiYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSBHaXQgdmVyc2lvbi5cbiIKKyJcbiIKKyJQbGVhc2UgdXNlIFwiZ2l0IHJlcGxhY2UgLS1jb252ZXJ0LWdyYWZ0LWZpbGVcIlxuIgorInRvIGNvbnZlcnQgdGhlIGdyYWZ0cyBpbnRvIHJlcGxhY2UgcmVmcy5cbiIKKyJcbiIKKyJUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnkgcnVubmluZ1xuIgorIlwiZ2l0IGNvbmZpZyBhZHZpY2UuZ3JhZnRGaWxlRGVwcmVjYXRlZCBmYWxzZVwiIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC5jOjExMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29tbWl0ICVzIGhhcyBhbiB1bnRydXN0ZWQgR1BHIHNpZ25hdHVyZSwgYWxsZWdlZGx5IGJ5ICVzLiIKK21zZ3N0ciAizpcgz4XPgM6/zrPPgc6xz4bOriAlcyDOrc+HzrXOuSDOvM63IM6xzr7Ouc+Mz4DOuc+Dz4TOtyDPhc+Azr/Os8+BzrHPhs6uIEdQRywgzrTOrs64zrXOvSDOsc+Az4wgJXMuIgorCisjOiBjb21taXQuYzoxMTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbW1pdCAlcyBoYXMgYSBiYWQgR1BHIHNpZ25hdHVyZSBhbGxlZ2VkbHkgYnkgJXMuIgorbXNnc3RyICLOlyDPhc+Azr/Oss6/zrvOriAlcyDOrc+HzrXOuSDOu86szrjOv8+CIM+Fz4DOv86zz4HOsc+Gzq4gR1BHIM60zq7OuM61zr0gzrHPgM+MICVzLiIKKworIzogY29tbWl0LmM6MTEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJDb21taXQgJXMgZG9lcyBub3QgaGF2ZSBhIEdQRyBzaWduYXR1cmUuIgorbXNnc3RyICLOlyDPhc+Azr/Oss6/zrvOriAlcyDOtM61zr0gzq3Ph861zrkgz4XPgM6/zrPPgc6xz4bOriBHUEcuIgorCisjOiBjb21taXQuYzoxMTMxCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbW1pdCAlcyBoYXMgYSBnb29kIEdQRyBzaWduYXR1cmUgYnkgJXNcbiIKK21zZ3N0ciAizpcgz4XPgM6/zrLOv867zq4gJXMgzq3Ph861zrkgz4PPic+Dz4TOriDPhc+Azr/Os8+BzrHPhs6uIEdQRyDOsc+Az4wgJXNcbiIKKworIzogY29tbWl0LmM6MTM4NQorbXNnaWQgIiIKKyJXYXJuaW5nOiBjb21taXQgbWVzc2FnZSBkaWQgbm90IGNvbmZvcm0gdG8gVVRGLTguXG4iCisiWW91IG1heSB3YW50IHRvIGFtZW5kIGl0IGFmdGVyIGZpeGluZyB0aGUgbWVzc2FnZSwgb3Igc2V0IHRoZSBjb25maWdcbiIKKyJ2YXJpYWJsZSBpMThuLmNvbW1pdGVuY29kaW5nIHRvIHRoZSBlbmNvZGluZyB5b3VyIHByb2plY3QgdXNlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ3JhcGggZmlsZSAlcyBpcyB0b28gc21hbGwiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImdyYXBoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoxNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGFzaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTczCittc2dpZCAiY2h1bmsgbG9va3VwIHRhYmxlIGVudHJ5IG1pc3Npbmc7IGdyYXBoIGZpbGUgbWF5IGJlIGluY29tcGxldGUiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImltcHJvcGVyIGNodW5rIG9mZnNldCAlMDh4JTA4eCIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2h1bmsgaWQgJTA4eCBhcHBlYXJzIG11bHRpcGxlIHRpbWVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZmluZCBjb21taXQgJXMiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6NjcxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjY0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IHR5cGUgb2Ygb2JqZWN0ICVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjcwNAorbXNnaWQgIkxvYWRpbmcga25vd24gY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6NzIwCittc2dpZCAiRXhwYW5kaW5nIHJlYWNoYWJsZSBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzo3MzIKK21zZ2lkICJDbGVhcmluZyBjb21taXQgbWFya3MgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjc1MgorbXNnaWQgIkNvbXB1dGluZyBjb21taXQgZ3JhcGggZ2VuZXJhdGlvbiBudW1iZXJzIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjg2OQorIywgYy1mb3JtYXQKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrIgorbXNnaWRfcGx1cmFsICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrcyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjg4MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBhZGRpbmcgcGFjayAlcyIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzo4ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBpbmRleCBmb3IgJXMiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6ODk4CisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGZyb20gJWQgcmVmIgorbXNnaWRfcGx1cmFsICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBmcm9tICVkIHJlZnMiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBjb21taXQtZ3JhcGguYzo5MzAKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBhbW9uZyBwYWNrZWQgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzo5NDMKK21zZ2lkICJDb3VudGluZyBkaXN0aW5jdCBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzo5NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlIGNvbW1pdCBncmFwaCBmb3JtYXQgY2Fubm90IHdyaXRlICVkIGNvbW1pdHMiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6OTY1Cittc2dpZCAiRmluZGluZyBleHRyYSBlZGdlcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6OTg5Cittc2dpZCAidG9vIG1hbnkgY29tbWl0cyB0byB3cml0ZSBncmFwaCIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzo5OTYgbWlkeC5jOjc2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgb2YgJXMiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTAzNgorIywgYy1mb3JtYXQKK21zZ2lkICJXcml0aW5nIG91dCBjb21taXQgZ3JhcGggaW4gJWQgcGFzcyIKK21zZ2lkX3BsdXJhbCAiV3JpdGluZyBvdXQgY29tbWl0IGdyYXBoIGluICVkIHBhc3NlcyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjExMDkKK21zZ2lkICJ0aGUgY29tbWl0LWdyYXBoIGZpbGUgaGFzIGluY29ycmVjdCBjaGVja3N1bSBhbmQgaXMgbGlrZWx5IGNvcnJ1cHQiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTE1MworbXNnaWQgIlZlcmlmeWluZyBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiIgorCisjOiBjb21wYXQvb2JzdGFjay5jOjQwNiBjb21wYXQvb2JzdGFjay5jOjQwOAorbXNnaWQgIm1lbW9yeSBleGhhdXN0ZWQiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJleGNlZWRlZCBtYXhpbXVtIGluY2x1ZGUgZGVwdGggKCVkKSB3aGlsZSBpbmNsdWRpbmdcbiIKKyJcdCVzXG4iCisiZnJvbVxuIgorIlx0JXNcbiIKKyJUaGlzIG1pZ2h0IGJlIGR1ZSB0byBjaXJjdWxhciBpbmNsdWRlcy4iCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBleHBhbmQgaW5jbHVkZSBwYXRoICclcyciCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MTUwCittc2dpZCAicmVsYXRpdmUgY29uZmlnIGluY2x1ZGVzIG11c3QgY29tZSBmcm9tIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGNvbmZpZy5jOjE5MAorbXNnaWQgInJlbGF0aXZlIGNvbmZpZyBpbmNsdWRlIGNvbmRpdGlvbmFscyBtdXN0IGNvbWUgZnJvbSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBjb25maWcuYzozNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAia2V5IGRvZXMgbm90IGNvbnRhaW4gYSBzZWN0aW9uOiAlcyIKK21zZ3N0ciAiIgorCisjOiBjb25maWcuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAia2V5IGRvZXMgbm90IGNvbnRhaW4gdmFyaWFibGUgbmFtZTogJXMiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6Mzc4IHNlcXVlbmNlci5jOjIzMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBrZXk6ICVzIgorbXNnc3RyICIiCisKKyM6IGNvbmZpZy5jOjM4NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGtleSAobmV3bGluZSk6ICVzIgorbXNnc3RyICIiCisKKyM6IGNvbmZpZy5jOjQyMCBjb25maWcuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYm9ndXMgY29uZmlnIHBhcmFtZXRlcjogJXMiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6NDY3CisjLCBjLWZvcm1hdAorbXNnaWQgImJvZ3VzIGZvcm1hdCBpbiAlcyIKK21zZ3N0ciAiIgorCisjOiBjb25maWcuYzo3OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGJsb2IgJXMiCittc2dzdHIgIs67zqzOuM6/z4IgzrPPgc6xzrzOvM6uIM+Bz4XOuM68zq/Pg861z4nOvSAlZCDPg8+Ezr8gYmxvYiAlcyIKKworIzogY29uZmlnLmM6Nzk3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBmaWxlICVzIgorbXNnc3RyICLOu86szrjOv8+CIM6zz4HOsc68zrzOriDPgc+FzrjOvM6vz4POtc+Jzr0gJWQgz4PPhM6/IM6xz4HPh861zq/OvyAlcyIKKworIzogY29uZmlnLmM6ODAxCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAizrvOrM64zr/PgiDOs8+BzrHOvM68zq4gz4HPhc64zrzOr8+DzrXPic69ICVkIM+Dz4TOvyBzdGFuZGFyZCBpbnB1dCIKKworIzogY29uZmlnLmM6ODA1CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBzdWJtb2R1bGUtYmxvYiAlcyIKK21zZ3N0ciAizrvOrM64zr/PgiDOs8+BzrHOvM68zq4gz4HPhc64zrzOr8+DzrXPic69ICVkIM+Dz4TOvyBibG9iIM+Fz4DOv861zr3PjM+EzrfPhM6xz4IgJXMiCisKKyM6IGNvbmZpZy5jOjgwOQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gY29tbWFuZCBsaW5lICVzIgorbXNnc3RyICLOu86szrjOv8+CIM6zz4HOsc68zrzOriDPgc+FzrjOvM6vz4POtc+Jzr0gJWQgz4PPhM63IM6zz4HOsc68zrzOriDOtc69z4TOv867z47OvSAlcyIKKworIzogY29uZmlnLmM6ODEzCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiAlcyIKK21zZ3N0ciAizrvOrM64zr/PgiDOs8+BzrHOvM68zq4gz4HPhc64zrzOr8+DzrXPic69ICVkIM+Dz4TOvyAlcyIKKworIzogY29uZmlnLmM6OTUyCittc2dpZCAib3V0IG9mIHJhbmdlIgorbXNnc3RyICLOtc66z4TPjM+CIM6/z4HOr8+Jzr0iCisKKyM6IGNvbmZpZy5jOjk1MgorbXNnaWQgImludmFsaWQgdW5pdCIKK21zZ3N0ciAizrzOtyDOrc6zzrrPhc+BzrcgzrzOv869zqzOtM6xIM68zq3PhM+BzrfPg863z4IiCisKKyM6IGNvbmZpZy5jOjk1OAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJzogJXMiCittc2dzdHIgIs67zqzOuM6/z4IgzrHPgc65zrjOvM63z4TOuc66zq4gz4TOuc68zq4gz4HPjc64zrzOuc+DzrfPgiAnJXMnIM6zzrnOsSDPhM6/ICclcyc6ICVzIgorCisjOiBjb25maWcuYzo5NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gYmxvYiAlczogJXMiCittc2dzdHIgIs67zqzOuM6/z4IgzrHPgc65zrjOvM63z4TOuc66zq4gz4TOuc68zq4gz4HPjc64zrzOuc+DzrfPgiAnJXMnIM6zzrnOsSDPhM6/ICclcycgz4PPhM6/IGJsb2IgJXM6ICVzIgorCisjOiBjb25maWcuYzo5NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gZmlsZSAlczogJXMiCittc2dzdHIgIs67zqzOuM6/z4IgzrHPgc65zrjOvM63z4TOuc66zq4gz4TOuc68zq4gz4HPjc64zrzOuc+DzrfPgiAnJXMnIM6zzrnOsSDPhM6/ICclcycgz4PPhM6/IM6xz4HPh861zq/OvyAlczogJXMiCisKKyM6IGNvbmZpZy5jOjk2OQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBzdGFuZGFyZCBpbnB1dDogJXMiCittc2dzdHIgIs67zqzOuM6/z4IgzrHPgc65zrjOvM63z4TOuc66zq4gz4TOuc68zq4gz4HPjc64zrzOuc+DzrfPgiAnJXMnIM6zzrnOsSDPhM6/ICclcycgz4PPhG8gc3RhbmRhcmQgaW5wdXQ6ICVzIgorCisjOiBjb25maWcuYzo5NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gc3VibW9kdWxlLWJsb2IgJXM6ICVzIgorbXNnc3RyICIiCisizrvOrM64zr/PgiDOsc+BzrnOuM68zrfPhM65zrrOriDPhM65zrzOriDPgc+NzrjOvM65z4POt8+CICclcycgzrPOuc6xIM+Ezr8gJyVzJyDPg8+Ezr8gYmxvYiDPhc+Azr/Otc69z4zPhM63z4TOsc+CICVzOiAlcyIKKworIzogY29uZmlnLmM6OTc1CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIGNvbW1hbmQgbGluZSAlczogJXMiCittc2dzdHIgIiIKKyLOu86szrjOv8+CIM6xz4HOuc64zrzOt8+EzrnOus6uIM+EzrnOvM6uIM+Bz43OuM68zrnPg863z4IgJyVzJyDOs865zrEgz4TOvyAnJXMnIM+Dz4TOtyDOs8+BzrHOvM68zq4gzrXOvc+Ezr/Ou8+Ozr0gJXM6ICVzIgorCisjOiBjb25maWcuYzo5NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gJXM6ICVzIgorbXNnc3RyICLOu86szrjOv8+CIM6xz4HOuc64zrzOt8+EzrnOus6uIM+EzrnOvM6uIM+Bz43OuM68zrnPg863z4IgJyVzJyDOs865zrEgz4TOvyAnJXMnIM+Dz4TOvyAlczogJXMiCisKKyM6IGNvbmZpZy5jOjEwNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGV4cGFuZCB1c2VyIGRpciBpbjogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBjb25maWcuYzoxMDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZm9yICclcycgaXMgbm90IGEgdmFsaWQgdGltZXN0YW1wIgorbXNnc3RyICInJXMnIM6zzrnOsSDPhM6/ICclcycgzrTOtc69IM61zq/Ovc6xzrkgzq3Os866z4XPgc63IM+Hz4HOv869zr/Pg86uzrzOsc69z4POtyIKKworIzogY29uZmlnLmM6MTE3MworIywgYy1mb3JtYXQKK21zZ2lkICJhYmJyZXYgbGVuZ3RoIG91dCBvZiByYW5nZTogJWQiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MTE4NyBjb25maWcuYzoxMTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCB6bGliIGNvbXByZXNzaW9uIGxldmVsICVkIgorbXNnc3RyICIiCisKKyM6IGNvbmZpZy5jOjEyOTAKK21zZ2lkICJjb3JlLmNvbW1lbnRDaGFyIHNob3VsZCBvbmx5IGJlIG9uZSBjaGFyYWN0ZXIiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MTMyMworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG1vZGUgZm9yIG9iamVjdCBjcmVhdGlvbjogJXMiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MTM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgdmFsdWUgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IGNvbmZpZy5jOjE0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIHZhbHVlIGZvciAlczogJXMiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MTQyMgorbXNnaWQgIm11c3QgYmUgb25lIG9mIG5vdGhpbmcsIG1hdGNoaW5nLCBzaW1wbGUsIHVwc3RyZWFtIG9yIGN1cnJlbnQiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MTQ4MSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHBhY2sgY29tcHJlc3Npb24gbGV2ZWwgJWQiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MTYwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbG9hZCBjb25maWcgYmxvYiBvYmplY3QgJyVzJyIKK21zZ3N0ciAizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TPjCDOvc6xIM+Gzr/Pgc+Ez4nOuM61zq8gz4TOvyDOsc69z4TOuc66zrXOr868zrXOvc6/IGJsb2Igz4HPhc64zrzOr8+DzrXPic69ICclcyciCisKKyM6IGNvbmZpZy5jOjE2MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlICclcycgZG9lcyBub3QgcG9pbnQgdG8gYSBibG9iIgorbXNnc3RyICLOtyDOsc69zrHPhs6/z4HOrCAnJXMnIM60zrUgzrTOtc6vz4fOvc61zrkgz4POtSDOus6sz4DOv865zr8gYmxvYiIKKworIzogY29uZmlnLmM6MTYyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBjb25maWcgYmxvYiAnJXMnIgorbXNnc3RyICLOtM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM6uIM63IM6xzr3Osc62zq7PhM63z4POtyBibG9iIM+Bz4XOuM68zq/Pg861z4nOvSAnJXMnIgorCisjOiBjb25maWcuYzoxNjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSAlcyIKK21zZ3N0ciAiIgorCisjOiBjb25maWcuYzoxNzA1Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbW1hbmQtbGluZSBjb25maWciCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MjAzNworbXNnaWQgInVua25vd24gZXJyb3Igb2NjdXJyZWQgd2hpbGUgcmVhZGluZyB0aGUgY29uZmlndXJhdGlvbiBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBjb25maWcuYzoyMjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXM6ICclcyciCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvcmUudW50cmFja2VkQ2FjaGUgdmFsdWUgJyVzJzsgdXNpbmcgJ2tlZXAnIGRlZmF1bHQgdmFsdWUiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MjI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJzcGxpdEluZGV4Lm1heFBlcmNlbnRDaGFuZ2UgdmFsdWUgJyVkJyBzaG91bGQgYmUgYmV0d2VlbiAwIGFuZCAxMDAiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJyVzJyBmcm9tIGNvbW1hbmQtbGluZSBjb25maWciCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgY29uZmlnIHZhcmlhYmxlICclcycgaW4gZmlsZSAnJXMnIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MjQwNQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHNlY3Rpb24gbmFtZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGNvbmZpZy5jOjI0MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaGFzIG11bHRpcGxlIHZhbHVlcyIKK21zZ3N0ciAiIgorCisjOiBjb25maWcuYzoyNDY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBuZXcgY29uZmlndXJhdGlvbiBmaWxlICVzIgorbXNnc3RyICIiCisKKyM6IGNvbmZpZy5jOjI3MTYgY29uZmlnLmM6MzA0MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgbG9jayBjb25maWcgZmlsZSAlcyIKK21zZ3N0ciAiIgorCisjOiBjb25maWcuYzoyNzI3CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW5pbmcgJXMiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6Mjc2MiBidWlsdGluL2NvbmZpZy5jOjMyOAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhdHRlcm46ICVzIgorbXNnc3RyICIiCisKKyM6IGNvbmZpZy5jOjI3ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb25maWcgZmlsZSAlcyIKK21zZ3N0ciAiIgorCisjOiBjb25maWcuYzoyODAwIGNvbmZpZy5jOjMwNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZnN0YXQgb24gJXMgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGNvbmZpZy5jOjI4MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1tYXAgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBjb25maWcuYzoyODIwIGNvbmZpZy5jOjMwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2htb2Qgb24gJXMgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGNvbmZpZy5jOjI5MDUgY29uZmlnLmM6MzE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29uZmlnIGZpbGUgJXMiCittc2dzdHIgIiIKKworIzogY29uZmlnLmM6MjkzOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc2V0ICclcycgdG8gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBjb25maWcuYzoyOTQxIGJ1aWx0aW4vcmVtb3RlLmM6NzgyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB1bnNldCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGNvbmZpZy5jOjMwMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzZWN0aW9uIG5hbWU6ICVzIgorbXNnc3RyICIiCisKKyM6IGNvbmZpZy5jOjMxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyB2YWx1ZSBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBjb25uZWN0LmM6NjEKK21zZ2lkICJ0aGUgcmVtb3RlIGVuZCBodW5nIHVwIHVwb24gaW5pdGlhbCBjb250YWN0IgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3QuYzo2MworbXNnaWQgIiIKKyJDb3VsZCBub3QgcmVhZCBmcm9tIHJlbW90ZSByZXBvc2l0b3J5LlxuIgorIlxuIgorIlBsZWFzZSBtYWtlIHN1cmUgeW91IGhhdmUgdGhlIGNvcnJlY3QgYWNjZXNzIHJpZ2h0c1xuIgorImFuZCB0aGUgcmVwb3NpdG9yeSBleGlzdHMuIgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3QuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICJzZXJ2ZXIgZG9lc24ndCBzdXBwb3J0ICclcyciCittc2dzdHIgIiIKKworIzogY29ubmVjdC5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJzZXJ2ZXIgZG9lc24ndCBzdXBwb3J0IGZlYXR1cmUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBjb25uZWN0LmM6MTE0Cittc2dpZCAiZXhwZWN0ZWQgZmx1c2ggYWZ0ZXIgY2FwYWJpbGl0aWVzIgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3QuYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgY2FwYWJpbGl0aWVzIGFmdGVyIGZpcnN0IGxpbmUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBjb25uZWN0LmM6MjUyCittc2dpZCAicHJvdG9jb2wgZXJyb3I6IHVuZXhwZWN0ZWQgY2FwYWJpbGl0aWVzXnt9IgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3QuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvdG9jb2wgZXJyb3I6IGV4cGVjdGVkIHNoYWxsb3cgc2hhLTEsIGdvdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3QuYzoyNzUKK21zZ2lkICJyZXBvc2l0b3J5IG9uIHRoZSBvdGhlciBlbmQgY2Fubm90IGJlIHNoYWxsb3ciCittc2dzdHIgIiIKKworIzogY29ubmVjdC5jOjMxMworbXNnaWQgImludmFsaWQgcGFja2V0IgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3QuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvdG9jb2wgZXJyb3I6IHVuZXhwZWN0ZWQgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBjb25uZWN0LmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgbHMtcmVmcyByZXNwb25zZTogJXMiCittc2dzdHIgIiIKKworIzogY29ubmVjdC5jOjQ0NQorbXNnaWQgImV4cGVjdGVkIGZsdXNoIGFmdGVyIHJlZiBsaXN0aW5nIgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3QuYzo1NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvdG9jb2wgJyVzJyBpcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3QuYzo1OTUKK21zZ2lkICJ1bmFibGUgdG8gc2V0IFNPX0tFRVBBTElWRSBvbiBzb2NrZXQiCittc2dzdHIgIiIKKworIzogY29ubmVjdC5jOjYzNSBjb25uZWN0LmM6Njk4CisjLCBjLWZvcm1hdAorbXNnaWQgIkxvb2tpbmcgdXAgJXMgLi4uICIKK21zZ3N0ciAiIgorCisjOiBjb25uZWN0LmM6NjM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzIChwb3J0ICVzKSAoJXMpIgorbXNnc3RyICIiCisKKyMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkxvb2tpbmcgdXAgJXMgLi4uICIKKyM6IGNvbm5lY3QuYzo2NDMgY29ubmVjdC5jOjcxNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZG9uZS5cbiIKKyJDb25uZWN0aW5nIHRvICVzIChwb3J0ICVzKSAuLi4gIgorbXNnc3RyICIiCisizr/Ou86/zrrOu863z4HPjs64zrfOus61LlxuIgorIs6jz43Ovc60zrXPg863IM+Dz4TOvyAlcyAocG9ydCAlcykgLi4uICIKKworIzogY29ubmVjdC5jOjY2NSBjb25uZWN0LmM6NzQyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gY29ubmVjdCB0byAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogdGhpcyBpcyB0aGUgZW5kIG9mICJDb25uZWN0aW5nIHRvICVzIChwb3J0ICVzKSAuLi4gIgorIzogY29ubmVjdC5jOjY3MSBjb25uZWN0LmM6NzQ4Cittc2dpZCAiZG9uZS4iCittc2dzdHIgIs6/zrvOv866zrvOt8+Bz47OuM63zrrOtS4iCisKKyM6IGNvbm5lY3QuYzo3MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGxvb2sgdXAgJXMgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBjb25uZWN0LmM6NzA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gcG9ydCAlcyIKK21zZ3N0ciAiIgorCisjOiBjb25uZWN0LmM6ODQ1IGNvbm5lY3QuYzoxMTcxCisjLCBjLWZvcm1hdAorbXNnaWQgInN0cmFuZ2UgaG9zdG5hbWUgJyVzJyBibG9ja2VkIgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3QuYzo4NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAic3RyYW5nZSBwb3J0ICclcycgYmxvY2tlZCIKK21zZ3N0ciAiIgorCisjOiBjb25uZWN0LmM6ODU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGFydCBwcm94eSAlcyIKK21zZ3N0ciAiIgorCisjOiBjb25uZWN0LmM6OTI0Cittc2dpZCAibm8gcGF0aCBzcGVjaWZpZWQ7IHNlZSAnZ2l0IGhlbHAgcHVsbCcgZm9yIHZhbGlkIHVybCBzeW50YXgiCittc2dzdHIgIiIKKworIzogY29ubmVjdC5jOjExMTkKK21zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IC00IgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3QuYzoxMTMxCittc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNiIKK21zZ3N0ciAiIgorCisjOiBjb25uZWN0LmM6MTE0OAorbXNnaWQgInNzaCB2YXJpYW50ICdzaW1wbGUnIGRvZXMgbm90IHN1cHBvcnQgc2V0dGluZyBwb3J0IgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3QuYzoxMjU5CisjLCBjLWZvcm1hdAorbXNnaWQgInN0cmFuZ2UgcGF0aG5hbWUgJyVzJyBibG9ja2VkIgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3QuYzoxMzA0Cittc2dpZCAidW5hYmxlIHRvIGZvcmsiCittc2dzdHIgIiIKKworIzogY29ubmVjdGVkLmM6NjggYnVpbHRpbi9mc2NrLmM6MjIxIGJ1aWx0aW4vcHJ1bmUuYzoxNDYKK21zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkiCittc2dzdHIgIiIKKworIzogY29ubmVjdGVkLmM6ODAKK21zZ2lkICJDb3VsZCBub3QgcnVuICdnaXQgcmV2LWxpc3QnIgorbXNnc3RyICIiCisKKyM6IGNvbm5lY3RlZC5jOjEwMAorbXNnaWQgImZhaWxlZCB3cml0ZSB0byByZXYtbGlzdCIKK21zZ3N0ciAiIgorCisjOiBjb25uZWN0ZWQuYzoxMDcKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcmV2LWxpc3QncyBzdGRpbiIKK21zZ3N0ciAiIgorCisjOiBjb252ZXJ0LmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgY3JsZl9hY3Rpb24gJWQiCittc2dzdHIgIiIKKworIzogY29udmVydC5jOjIwNgorIywgYy1mb3JtYXQKK21zZ2lkICJDUkxGIHdvdWxkIGJlIHJlcGxhY2VkIGJ5IExGIGluICVzIgorbXNnc3RyICIiCisKKyM6IGNvbnZlcnQuYzoyMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNSTEYgd2lsbCBiZSByZXBsYWNlZCBieSBMRiBpbiAlcy5cbiIKKyJUaGUgZmlsZSB3aWxsIGhhdmUgaXRzIG9yaWdpbmFsIGxpbmUgZW5kaW5ncyBpbiB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGNvbnZlcnQuYzoyMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiTEYgd291bGQgYmUgcmVwbGFjZWQgYnkgQ1JMRiBpbiAlcyIKK21zZ3N0ciAiIgorCisjOiBjb252ZXJ0LmM6MjE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJMRiB3aWxsIGJlIHJlcGxhY2VkIGJ5IENSTEYgaW4gJXMuXG4iCisiVGhlIGZpbGUgd2lsbCBoYXZlIGl0cyBvcmlnaW5hbCBsaW5lIGVuZGluZ3MgaW4geW91ciB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBjb252ZXJ0LmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIkJPTSBpcyBwcm9oaWJpdGVkIGluICclcycgaWYgZW5jb2RlZCBhcyAlcyIKK21zZ3N0ciAiIgorCisjOiBjb252ZXJ0LmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZmlsZSAnJXMnIGNvbnRhaW5zIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lcyBhcyB3b3JraW5nLSIKKyJ0cmVlLWVuY29kaW5nLiIKK21zZ3N0ciAiIgorCisjOiBjb252ZXJ0LmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkJPTSBpcyByZXF1aXJlZCBpbiAnJXMnIGlmIGVuY29kZWQgYXMgJXMiCittc2dzdHIgIiIKKworIzogY29udmVydC5jOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZpbGUgJyVzJyBpcyBtaXNzaW5nIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lc0JFIG9yIFVURi0iCisiJXNMRSAoZGVwZW5kaW5nIG9uIHRoZSBieXRlIG9yZGVyKSBhcyB3b3JraW5nLXRyZWUtZW5jb2RpbmcuIgorbXNnc3RyICIiCisKKyM6IGNvbnZlcnQuYzo0MjQgY29udmVydC5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZW5jb2RlICclcycgZnJvbSAlcyB0byAlcyIKK21zZ3N0ciAiIgorCisjOiBjb252ZXJ0LmM6NDY3CisjLCBjLWZvcm1hdAorbXNnaWQgImVuY29kaW5nICclcycgZnJvbSAlcyB0byAlcyBhbmQgYmFjayBpcyBub3QgdGhlIHNhbWUiCittc2dzdHIgIiIKKworIzogY29udmVydC5jOjY3MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZm9yayB0byBydW4gZXh0ZXJuYWwgZmlsdGVyICclcyciCittc2dzdHIgIiIKKworIzogY29udmVydC5jOjY5MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZmVlZCB0aGUgaW5wdXQgdG8gZXh0ZXJuYWwgZmlsdGVyICclcyciCittc2dzdHIgIiIKKworIzogY29udmVydC5jOjcwMAorIywgYy1mb3JtYXQKK21zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQgJWQiCittc2dzdHIgIiIKKworIzogY29udmVydC5jOjczNSBjb252ZXJ0LmM6NzM4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZnJvbSBleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQiCittc2dzdHIgIiIKKworIzogY29udmVydC5jOjc0MSBjb252ZXJ0LmM6Nzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImV4dGVybmFsIGZpbHRlciAnJXMnIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBjb252ZXJ0LmM6ODQ0Cittc2dpZCAidW5leHBlY3RlZCBmaWx0ZXIgdHlwZSIKK21zZ3N0ciAiIgorCisjOiBjb252ZXJ0LmM6ODU1Cittc2dpZCAicGF0aCBuYW1lIHRvbyBsb25nIGZvciBleHRlcm5hbCBmaWx0ZXIiCittc2dzdHIgIiIKKworIzogY29udmVydC5jOjkyOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZXh0ZXJuYWwgZmlsdGVyICclcycgaXMgbm90IGF2YWlsYWJsZSBhbnltb3JlIGFsdGhvdWdoIG5vdCBhbGwgcGF0aHMgaGF2ZSAiCisiYmVlbiBmaWx0ZXJlZCIKK21zZ3N0ciAiIgorCisjOiBjb252ZXJ0LmM6MTIyOAorbXNnaWQgInRydWUvZmFsc2UgYXJlIG5vIHZhbGlkIHdvcmtpbmctdHJlZS1lbmNvZGluZ3MiCittc2dzdHIgIiIKKworIzogY29udmVydC5jOjEzOTggY29udmVydC5jOjE0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNsZWFuIGZpbHRlciAnJXMnIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBjb252ZXJ0LmM6MTQ3NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogc211ZGdlIGZpbHRlciAlcyBmYWlsZWQiCittc2dzdHIgIiIKKworIzogZGF0ZS5jOjEzNworbXNnaWQgImluIHRoZSBmdXR1cmUiCittc2dzdHIgIiIKKworIzogZGF0ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICIlPFBSSXVNQVg+IHNlY29uZCBhZ28iCittc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gc2Vjb25kcyBhZ28iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkYXRlLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiU8UFJJdU1BWD4gbWludXRlIGFnbyIKK21zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtaW51dGVzIGFnbyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRhdGUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJTxQUkl1TUFYPiBob3VyIGFnbyIKK21zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBob3VycyBhZ28iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkYXRlLmM6MTY0CisjLCBjLWZvcm1hdAorbXNnaWQgIiU8UFJJdU1BWD4gZGF5IGFnbyIKK21zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBkYXlzIGFnbyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRhdGUuYzoxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJTxQUkl1TUFYPiB3ZWVrIGFnbyIKK21zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiB3ZWVrcyBhZ28iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkYXRlLmM6MTc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiU8UFJJdU1BWD4gbW9udGggYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IG1vbnRocyBhZ28iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkYXRlLmM6MTg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiU8UFJJdU1BWD4geWVhciIKK21zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiB5ZWFycyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyMuIFRSQU5TTEFUT1JTOiAiJXMiIGlzICI8bj4geWVhcnMiCisjOiBkYXRlLmM6MTkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzLCAlPFBSSXVNQVg+IG1vbnRoIGFnbyIKK21zZ2lkX3BsdXJhbCAiJXMsICU8UFJJdU1BWD4gbW9udGhzIGFnbyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRhdGUuYzoxOTYgZGF0ZS5jOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIlPFBSSXVNQVg+IHllYXIgYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHllYXJzIGFnbyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRlbHRhLWlzbGFuZHMuYzoyNzIKK21zZ2lkICJQcm9wYWdhdGluZyBpc2xhbmQgbWFya3MiCittc2dzdHIgIiIKKworIzogZGVsdGEtaXNsYW5kcy5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgdHJlZSBvYmplY3QgJXMiCittc2dzdHIgIiIKKworIzogZGVsdGEtaXNsYW5kcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbG9hZCBpc2xhbmQgcmVnZXggZm9yICclcyc6ICVzIgorbXNnc3RyICIiCisKKyM6IGRlbHRhLWlzbGFuZHMuYzozOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaXNsYW5kIHJlZ2V4IGZyb20gY29uZmlnIGhhcyB0b28gbWFueSBjYXB0dXJlIGdyb3VwcyAobWF4PSVkKSIKK21zZ3N0ciAiIgorCisjOiBkZWx0YS1pc2xhbmRzLmM6NDY2CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hcmtlZCAlZCBpc2xhbmRzLCBkb25lLlxuIgorbXNnc3RyICIiCisKKyM6IGRpZmZjb3JlLW9yZGVyLmM6MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3JkZXJmaWxlICclcyciCittc2dzdHIgIiIKKworIzogZGlmZmNvcmUtcmVuYW1lLmM6NTQ0Cittc2dpZCAiUGVyZm9ybWluZyBpbmV4YWN0IHJlbmFtZSBkZXRlY3Rpb24iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gJyVzJyByZXF1aXJlcyBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzoxNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBGYWlsZWQgdG8gcGFyc2UgZGlyc3RhdCBjdXQtb2ZmIHBlcmNlbnRhZ2UgJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBVbmtub3duIGRpcnN0YXQgcGFyYW1ldGVyICclcydcbiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6MjkxCittc2dpZCAiIgorImNvbG9yIG1vdmVkIHNldHRpbmcgbXVzdCBiZSBvbmUgb2YgJ25vJywgJ2RlZmF1bHQnLCAnYmxvY2tzJywgJ3plYnJhJywgIgorIidkaW1tZWQtemVicmEnLCAncGxhaW4nIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzozMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVua25vd24gY29sb3ItbW92ZWQtd3MgbW9kZSAnJXMnLCBwb3NzaWJsZSB2YWx1ZXMgYXJlICdpZ25vcmUtc3BhY2UtY2hhbmdlJywgIgorIidpZ25vcmUtc3BhY2UtYXQtZW9sJywgJ2lnbm9yZS1hbGwtc3BhY2UnLCAnYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlJyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6MzI3Cittc2dpZCAiIgorImNvbG9yLW1vdmVkLXdzOiBhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UgY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgIgorIndoaXRlc3BhY2UgbW9kZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjQwMAorIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHZhbHVlIGZvciAnZGlmZi5zdWJtb2R1bGUnIGNvbmZpZyB2YXJpYWJsZTogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3VuZCBlcnJvcnMgaW4gJ2RpZmYuZGlyc3RhdCcgY29uZmlnIHZhcmlhYmxlOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo0MjExCisjLCBjLWZvcm1hdAorbXNnaWQgImV4dGVybmFsIGRpZmYgZGllZCwgc3RvcHBpbmcgYXQgJXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjQ1NTMKK21zZ2lkICItLW5hbWUtb25seSwgLS1uYW1lLXN0YXR1cywgLS1jaGVjayBhbmQgLXMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDU1NgorbXNnaWQgIi1HLCAtUyBhbmQgLS1maW5kLW9iamVjdCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo0NjM0Cittc2dpZCAiLS1mb2xsb3cgcmVxdWlyZXMgZXhhY3RseSBvbmUgcGF0aHNwZWMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjQ4MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZhaWxlZCB0byBwYXJzZSAtLWRpcnN0YXQvLVggb3B0aW9uIHBhcmFtZXRlcjpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDgxNAorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcGFyc2UgLS1zdWJtb2R1bGUgb3B0aW9uIHBhcmFtZXRlcjogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTkwMAorbXNnaWQgImluZXhhY3QgcmVuYW1lIGRldGVjdGlvbiB3YXMgc2tpcHBlZCBkdWUgdG8gdG9vIG1hbnkgZmlsZXMuIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1OTAzCittc2dpZCAib25seSBmb3VuZCBjb3BpZXMgZnJvbSBtb2RpZmllZCBwYXRocyBkdWUgdG8gdG9vIG1hbnkgZmlsZXMuIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1OTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ5b3UgbWF5IHdhbnQgdG8gc2V0IHlvdXIgJXMgdmFyaWFibGUgdG8gYXQgbGVhc3QgJWQgYW5kIHJldHJ5IHRoZSBjb21tYW5kLiIKK21zZ3N0ciAiIgorIs68z4DOv8+BzrXOr8+EzrUgzr3OsSDOtM6/zrrOuc68zqzPg8+EzrUgzr3OsSDOv8+Bzq/Pg861z4TOtSDPhM63IM68zrXPhM6xzrLOu863z4TOriDPg86xz4IgJXMgz4POtSDPhM6/z4XOu86sz4fOuc+Dz4TOv869ICVkIM66zrHOuSAiCisizr3OsSDOtM6/zrrOuc68zqzPg861z4TOtSDPgM6szrvOuSDPhM63zr0gzrXOvc+Ezr/Ou86uLiIKKworIzogZGlyLmM6NTM4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGhzcGVjICclcycgZGlkIG5vdCBtYXRjaCBhbnkgZmlsZShzKSBrbm93biB0byBnaXQiCittc2dzdHIgIiIKKworIzogZGlyLmM6OTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCB1c2UgJXMgYXMgYW4gZXhjbHVkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRpci5jOjE4NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIs60zrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ez4wgz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4Ugz4bOsc66zq3Ou86/z4UgJyVzJyIKKworIzogZGlyLmM6MjA4NAorbXNnaWQgImZhaWxlZCB0byBnZXQga2VybmVsIG5hbWUgYW5kIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IGRpci5jOjIyMDgKK21zZ2lkICJ1bnRyYWNrZWQgY2FjaGUgaXMgZGlzYWJsZWQgb24gdGhpcyBzeXN0ZW0gb3IgbG9jYXRpb24iCittc2dzdHIgIiIKKworIzogZGlyLmM6MzAwOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbmRleCBmaWxlIGNvcnJ1cHQgaW4gcmVwbyAlcyIKK21zZ3N0ciAiIgorCisjOiBkaXIuYzozMDU0IGRpci5jOjMwNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcmllcyBmb3IgJXMiCittc2dzdHIgIiIKKworIzogZGlyLmM6MzA4OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgbWlncmF0ZSBnaXQgZGlyZWN0b3J5IGZyb20gJyVzJyB0byAnJXMnIgorbXNnc3RyICIiCisKKyM6IGVkaXRvci5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImhpbnQ6IFdhaXRpbmcgZm9yIHlvdXIgZWRpdG9yIHRvIGNsb3NlIHRoZSBmaWxlLi4uJWMiCittc2dzdHIgIiIKKworIzogZW50cnkuYzoxNzgKK21zZ2lkICJGaWx0ZXJpbmcgY29udGVudCIKK21zZ3N0ciAiIgorCisjOiBlbnRyeS5jOjQ2NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgIiIKKworIzogZW52aXJvbm1lbnQuYzoxNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGdpdCBuYW1lc3BhY2UgcGF0aCBcIiVzXCIiCittc2dzdHIgIiIKKworIzogZW52aXJvbm1lbnQuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHNldCBHSVRfRElSIHRvICclcyciCittc2dzdHIgIiIKKworIzogZXhlYy1jbWQuYzozNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgYXJncyB0byBydW4gJXMiCittc2dzdHIgIiIKKworIzogZmV0Y2gtb2JqZWN0LmM6MTcKK21zZ2lkICJSZW1vdGUgd2l0aCBubyBVUkwiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjE1MQorbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBzaGFsbG93IGxpc3QiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjE1NAorbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBhIGZsdXNoIHBhY2tldCBhZnRlciBzaGFsbG93IGxpc3QiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjE2NQorbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgYSBmbHVzaCBwYWNrZXQiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjE4NQorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290ICclcyciCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjI1NgorbXNnaWQgIi0tc3RhdGVsZXNzLXJwYyByZXF1aXJlcyBtdWx0aV9hY2tfZGV0YWlsZWQiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjM1OCBmZXRjaC1wYWNrLmM6MTI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHNoYWxsb3cgbGluZTogJXMiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjM2NCBmZXRjaC1wYWNrLmM6MTI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHVuc2hhbGxvdyBsaW5lOiAlcyIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6MzY2IGZldGNoLXBhY2suYzoxMjczCisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCBub3QgZm91bmQ6ICVzIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzozNjkgZmV0Y2gtcGFjay5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gb2JqZWN0OiAlcyIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6MzcxIGZldGNoLXBhY2suYzoxMjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHNoYWxsb3cgZm91bmQ6ICVzIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzozNzQgZmV0Y2gtcGFjay5jOjEyODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgc2hhbGxvdy91bnNoYWxsb3csIGdvdCAlcyIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgImdvdCAlcyAlZCAlcyIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tbWl0ICVzIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzo0NjMKK21zZ2lkICJnaXZpbmcgdXAiCittc2dzdHIgIs61zrPOus6xz4TOrM67zrXOuc+IzrciCisKKyM6IGZldGNoLXBhY2suYzo0NzUgcHJvZ3Jlc3MuYzoyMjkKK21zZ2lkICJkb25lIgorbXNnc3RyICLOv867zr/Ous67zrfPgc+OzrjOt866zrUiCisKKyM6IGZldGNoLXBhY2suYzo0ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ290ICVzICglZCkgJXMiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJNYXJraW5nICVzIGFzIGNvbXBsZXRlIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzo3NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWxyZWFkeSBoYXZlICVzICglcykiCittc2dzdHIgIs+Fz4DOrM+Bz4fOtc65IM6uzrTOtyAlcyAoJXMpIgorCisjOiBmZXRjaC1wYWNrLmM6Nzc5Cittc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjc4NworbXNnaWQgInByb3RvY29sIGVycm9yOiBiYWQgcGFjayBoZWFkZXIiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjg1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmZXRjaC1wYWNrOiB1bmFibGUgdG8gZm9yayBvZmYgJXMiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjg3MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmYWlsZWQiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjg3MworbXNnaWQgImVycm9yIGluIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjkwMgorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2xpZW50cyIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6OTA2Cittc2dpZCAiU2VydmVyIHN1cHBvcnRzIG11bHRpX2Fja19kZXRhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6OTA5Cittc2dpZCAiU2VydmVyIHN1cHBvcnRzIG5vLWRvbmUiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjkxNQorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2siCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjkxOQorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQtNjRrIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzo5MjMKK21zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgc2lkZS1iYW5kIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzo5MjcKK21zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgYWxsb3ctdGlwLXNoYTEtaW4td2FudCIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6OTMxCittc2dpZCAiU2VydmVyIHN1cHBvcnRzIGFsbG93LXJlYWNoYWJsZS1zaGExLWluLXdhbnQiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjk0MQorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBvZnMtZGVsdGEiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjk0NyBmZXRjaC1wYWNrLmM6MTE0MAorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBmaWx0ZXIiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjk1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTZXJ2ZXIgdmVyc2lvbiBpcyAlLipzIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzo5NjEKK21zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLXNoYWxsb3ctc2luY2UiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjk2NQorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tc2hhbGxvdy1leGNsdWRlIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzo5NjcKK21zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLWRlZXBlbiIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6OTg0Cittc2dpZCAibm8gY29tbW9uIGNvbW1pdHMiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjk5NiBmZXRjaC1wYWNrLmM6MTQxOQorbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBmZXRjaCBmYWlsZWQuIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzoxMTM0Cittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyByZXF1ZXN0cyIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6MTE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHNlY3Rpb24gaGVhZGVyICclcyciCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgJyVzJywgcmVjZWl2ZWQgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6MTIyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGFja25vd2xlZGdtZW50IGxpbmU6ICclcyciCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjEyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBhY2tzOiAlZCIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6MTI0NAorbXNnaWQgImV4cGVjdGVkIHBhY2tmaWxlIHRvIGJlIHNlbnQgYWZ0ZXIgJ3JlYWR5JyIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6MTI0NgorbXNnaWQgImV4cGVjdGVkIG5vIG90aGVyIHNlY3Rpb25zIHRvIGJlIHNlbnQgYWZ0ZXIgbm8gJ3JlYWR5JyIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6MTI4NworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBwcm9jZXNzaW5nIHNoYWxsb3cgaW5mbzogJWQiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjEzMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgd2FudGVkLXJlZiwgZ290ICclcyciCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjEzMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCB3YW50ZWQtcmVmOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzoxMzIyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHByb2Nlc3Npbmcgd2FudGVkIHJlZnM6ICVkIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzoxNjQ2Cittc2dpZCAibm8gbWF0Y2hpbmcgcmVtb3RlIGhlYWQiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjE2NjQgYnVpbHRpbi9jbG9uZS5jOjY3MQorbXNnaWQgInJlbW90ZSBkaWQgbm90IHNlbmQgYWxsIG5lY2Vzc2FyeSBvYmplY3RzIgorbXNnc3RyICLOvyDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3Ov8+CIM61zr7Phc+AzrfPgc61z4TOt8+Ezq7PgiDOtM61zr0gzq3Pg8+EzrXOuc67zrUgz4zOu86xIM+EzrEgzrHOvc6xzrPOus6xzq/OsSDOsc69z4TOuc66zrXOr868zrXOvc6xIgorCisjOiBmZXRjaC1wYWNrLmM6MTY5MAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBzdWNoIHJlbW90ZSByZWYgJXMiCittc2dzdHIgIs60zrXOvSDPhc+AzqzPgc+HzrXOuSDPhM6tz4TOv865zr8gzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zr8gcmVmICVzIgorCisjOiBmZXRjaC1wYWNrLmM6MTY5MworIywgYy1mb3JtYXQKK21zZ2lkICJTZXJ2ZXIgZG9lcyBub3QgYWxsb3cgcmVxdWVzdCBmb3IgdW5hZHZlcnRpc2VkIG9iamVjdCAlcyIKK21zZ3N0ciAiIgorCisjOiBncGctaW50ZXJmYWNlLmM6MzE4Cittc2dpZCAiZ3BnIGZhaWxlZCB0byBzaWduIHRoZSBkYXRhIgorbXNnc3RyICIiCisKKyM6IGdwZy1pbnRlcmZhY2UuYzozNDQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGdwZy1pbnRlcmZhY2UuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHdyaXRpbmcgZGV0YWNoZWQgc2lnbmF0dXJlIHRvICclcyciCittc2dzdHIgIiIKKworIzogZ3JhcGguYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmUgaW52YWxpZCBjb2xvciAnJS4qcycgaW4gbG9nLmdyYXBoQ29sb3JzIgorbXNnc3RyICIiCisKKyM6IGdyZXAuYzoyMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IHVuYWJsZSB0byByZWFkICVzIgorbXNnc3RyICIiCisKKyM6IGdyZXAuYzoyMTMwIHNldHVwLmM6MTY0IGJ1aWx0aW4vY2xvbmUuYzo0MTEgYnVpbHRpbi9kaWZmLmM6ODIKKyM6IGJ1aWx0aW4vcm0uYzoxMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgJyVzJyIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgz4TOvyBzdGF0IM+Ezr/PhSAnJXMnIgorCisjOiBncmVwLmM6MjE0MQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnOiBzaG9ydCByZWFkIgorbXNnc3RyICIiCisKKyM6IGhlbHAuYzoyMworbXNnaWQgInN0YXJ0IGEgd29ya2luZyBhcmVhIChzZWUgYWxzbzogZ2l0IGhlbHAgdHV0b3JpYWwpIgorbXNnc3RyICIiCisKKyM6IGhlbHAuYzoyNAorbXNnaWQgIndvcmsgb24gdGhlIGN1cnJlbnQgY2hhbmdlIChzZWUgYWxzbzogZ2l0IGhlbHAgZXZlcnlkYXkpIgorbXNnc3RyICIiCisKKyM6IGhlbHAuYzoyNQorbXNnaWQgImV4YW1pbmUgdGhlIGhpc3RvcnkgYW5kIHN0YXRlIChzZWUgYWxzbzogZ2l0IGhlbHAgcmV2aXNpb25zKSIKK21zZ3N0ciAiIgorCisjOiBoZWxwLmM6MjYKK21zZ2lkICJncm93LCBtYXJrIGFuZCB0d2VhayB5b3VyIGNvbW1vbiBoaXN0b3J5IgorbXNnc3RyICIiCisKKyM6IGhlbHAuYzoyNworbXNnaWQgImNvbGxhYm9yYXRlIChzZWUgYWxzbzogZ2l0IGhlbHAgd29ya2Zsb3dzKSIKK21zZ3N0ciAiIgorCisjOiBoZWxwLmM6MzEKK21zZ2lkICJNYWluIFBvcmNlbGFpbiBDb21tYW5kcyIKK21zZ3N0ciAizprPjc+BzrnOtc+CIM6Vzr3PhM6/zrvOrc+CIFBvcmNlbGFpbiIKKworIzogaGVscC5jOjMyCittc2dpZCAiQW5jaWxsYXJ5IENvbW1hbmRzIC8gTWFuaXB1bGF0b3JzIgorbXNnc3RyICLOks6/zrfOuM63z4TOuc66zq3PgiDOlc69z4TOv867zq3PgiAvIM6nzrXOuc+BzrnPg868zr/PjSIKKworIzogaGVscC5jOjMzCittc2dpZCAiQW5jaWxsYXJ5IENvbW1hbmRzIC8gSW50ZXJyb2dhdG9ycyIKK21zZ3N0ciAizpLOv863zrjOt8+EzrnOus6tz4IgzpXOvc+Ezr/Ou86tz4IgLyDOlc+Bz4nPhM63zrzOrM+Ez4nOvSIKKworIzogaGVscC5jOjM0Cittc2dpZCAiSW50ZXJhY3Rpbmcgd2l0aCBPdGhlcnMiCittc2dzdHIgIs6UzrnOrM60z4HOsc+DzrcgzrzOtSDOhs67zrvOv8+Fz4IiCisKKyM6IGhlbHAuYzozNQorbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIE1hbmlwdWxhdG9ycyIKK21zZ3N0ciAizpXOvc+Ezr/Ou86tz4IgzqfOsc68zrfOu86/z40gzpXPgM65z4DOrc60zr/PhSAvIM6nzrXOuc+BzrnPg868zr/PjSIKKworIzogaGVscC5jOjM2Cittc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gSW50ZXJyb2dhdG9ycyIKK21zZ3N0ciAizpXOvc+Ezr/Ou86tz4IgzqfOsc68zrfOu86/z40gzpXPgM65z4DOrc60zr/PhSAvIM6Vz4HPic+EzrfOvM6sz4TPic69IgorCisjOiBoZWxwLmM6MzcKK21zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBTeW5jaGluZyBSZXBvc2l0b3JpZXMiCittc2dzdHIgIs6Vzr3PhM6/zrvOrc+CIM6nzrHOvM63zrvOv8+NIM6Vz4DOuc+Azq3OtM6/z4UgLyDOo8+FzrPPh8+Bzr/Ovc65z4POvM6/z40gzpHPgM6/zrjOtc+EzrfPgc6vz4nOvSIKKworIzogaGVscC5jOjM4Cittc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gSW50ZXJuYWwgSGVscGVycyIKK21zZ3N0ciAizpXOvc+Ezr/Ou86tz4IgzqfOsc68zrfOu86/z40gzpXPgM65z4DOrc60zr/PhSAvIM6Vz4PPic+EzrXPgc65zrrOrc+CIM6Szr/Ot864zrfPhM65zrrOrc+CIgorCisjOiBoZWxwLmM6Mjk4CisjLCBjLWZvcm1hdAorbXNnaWQgImF2YWlsYWJsZSBnaXQgY29tbWFuZHMgaW4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBoZWxwLmM6MzA1Cittc2dpZCAiZ2l0IGNvbW1hbmRzIGF2YWlsYWJsZSBmcm9tIGVsc2V3aGVyZSBvbiB5b3VyICRQQVRIIgorbXNnc3RyICLOtc69z4TOv867zq3PgiBnaXQgzrTOuc6xzrjOrc+DzrnOvM61z4IgzrHPgM+MIM6xzrvOu86/z40gz4PPhM6/ICRQQVRIIM+DzrHPgiIKKworIzogaGVscC5jOjMxNAorbXNnaWQgIlRoZXNlIGFyZSBjb21tb24gR2l0IGNvbW1hbmRzIHVzZWQgaW4gdmFyaW91cyBzaXR1YXRpb25zOiIKK21zZ3N0ciAiIgorIs6Rz4XPhM6tz4IgzrXOr869zrHOuSDOus6/zrnOvc6tz4IgzrXOvc+Ezr/Ou86tz4IgR2l0IM+Azr/PhSDPh8+BzrfPg865zrzOv8+Azr/Ouc6/z43Ovc+EzrHOuSDPg861IM60zrnOrM+Gzr/Pgc61z4Igz4DOtc+BzrnPgM+Ez47Pg861zrnPgjoiCisKKyM6IGhlbHAuYzozNjMgZ2l0LmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5zdXBwb3J0ZWQgY29tbWFuZCBsaXN0aW5nIHR5cGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBoZWxwLmM6NDEwCittc2dpZCAiVGhlIGNvbW1vbiBHaXQgZ3VpZGVzIGFyZToiCittc2dzdHIgIiIKKworIzogaGVscC5jOjUxOQorbXNnaWQgIlNlZSAnZ2l0IGhlbHAgPGNvbW1hbmQ+JyB0byByZWFkIGFib3V0IGEgc3BlY2lmaWMgc3ViY29tbWFuZCIKK21zZ3N0ciAiIgorIs6UzrXOr8+EzrUgJ2dpdCBoZWxwIDzOtc69z4TOv867zq4+JyDOs865zrEgzr3OsSDOtM65zrHOss6sz4POtc+EzrUgzrPOuc6xIM66zqzPgM6/zrnOsSDPg8+FzrPOus61zrrPgc65zrzOrc69zrcgz4XPgM6/zrXOvc+Ezr/Ou86uIgorCisjOiBoZWxwLmM6NTI0Cittc2dpZCAiRXh0ZXJuYWwgY29tbWFuZHMiCittc2dzdHIgIs6Vzr7Pic+EzrXPgc65zrrOrc+CIM61zr3PhM6/zrvOrc+CIgorCisjOiBoZWxwLmM6NTM5Cittc2dpZCAiQ29tbWFuZCBhbGlhc2VzIgorbXNnc3RyICIiCisKKyM6IGhlbHAuYzo2MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiclcycgYXBwZWFycyB0byBiZSBhIGdpdCBjb21tYW5kLCBidXQgd2Ugd2VyZSBub3RcbiIKKyJhYmxlIHRvIGV4ZWN1dGUgaXQuIE1heWJlIGdpdC0lcyBpcyBicm9rZW4/IgorbXNnc3RyICIiCisiJyVzJyDPhs6xzq/Ovc61z4TOsc65IM69zrEgzrXOr869zrHOuSDOtc69z4TOv867zq4gZ2l0LCDOsc67zrvOrCDOtM61zr0gzrzPgM6/z4HOrc+DzrHOvM61XG4iCisizr3OsSDPhM63zr0gzrXOus+EzrXOu86tz4POv8+FzrzOtS4gzpzOrs+Az4nPgiDPhM6/IGdpdC0lcyDOtc6vzr3Osc65IM+HzrHOu86xz4POvM6tzr3OvzsiCisKKyM6IGhlbHAuYzo2NjIKK21zZ2lkICJVaCBvaC4gWW91ciBzeXN0ZW0gcmVwb3J0cyBubyBHaXQgY29tbWFuZHMgYXQgYWxsLiIKK21zZ3N0ciAizo/PgM6xLiDOpM6/IM+Dz43Pg8+EzrfOvM6sIM+DzrHPgiDOtM61zr0gzrHOvc6xz4bOrc+BzrXOuSDOus6xzrzOr86xIM6xz4DOv867z43PhM+Jz4IgzrXOvc+Ezr/Ou86uIEdpdC4iCisKKyM6IGhlbHAuYzo2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiV0FSTklORzogWW91IGNhbGxlZCBhIEdpdCBjb21tYW5kIG5hbWVkICclcycsIHdoaWNoIGRvZXMgbm90IGV4aXN0LiIKK21zZ3N0ciAizqDOoc6fzqPOn86nzpc6IM6azrHOu86tz4POsc+EzrUgzrzOr86xIM61zr3PhM6/zrvOriBHaXQgzrzOtSDPjM69zr/OvM6xICclcycsIM63IM6/z4DOv86vzrEgzrTOtc69IM+Fz4DOrM+Bz4fOtc65LiIKKworIzogaGVscC5jOjY4OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb250aW51aW5nIHVuZGVyIHRoZSBhc3N1bXB0aW9uIHRoYXQgeW91IG1lYW50ICclcycuIgorbXNnc3RyICLOo8+Fzr3Otc+Hzq/Ots6/z4XOvM61IM+Fz4DOv864zq3PhM6/zr3PhM6xz4Igz4DPic+CIM61zr3Ovc6/zr/Pjc+DzrHPhM61ICclcycuIgorCisjOiBoZWxwLmM6Njk0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbnRpbnVpbmcgaW4gJTAuMWYgc2Vjb25kcywgYXNzdW1pbmcgdGhhdCB5b3UgbWVhbnQgJyVzJy4iCittc2dzdHIgIs6jz4XOvc61z4fOr862zr/Phc68zrUgz4POtSAlMC4xZiDOtM61z4XPhM61z4HPjM67zrXPgM+EzrEsIM+Fz4DOv864zq3PhM6/zr3PhM6xz4Igz4DPic+CIM61zr3Ovc6/zr/Pjc+DzrHPhM61ICclcycuIgorCisjOiBoZWxwLmM6NzAyCisjLCBjLWZvcm1hdAorbXNnaWQgImdpdDogJyVzJyBpcyBub3QgYSBnaXQgY29tbWFuZC4gU2VlICdnaXQgLS1oZWxwJy4iCittc2dzdHIgImdpdDogJyVzJyDOtM61zr0gzrXOr869zrHOuSDOtc69z4TOv867zq4gZ2l0LiDOlM61zq/PhM61ICdnaXQgLS1oZWxwJy4iCisKKyM6IGhlbHAuYzo3MDYKK21zZ2lkICIiCisiXG4iCisiVGhlIG1vc3Qgc2ltaWxhciBjb21tYW5kIGlzIgorbXNnaWRfcGx1cmFsICIiCisiXG4iCisiVGhlIG1vc3Qgc2ltaWxhciBjb21tYW5kcyBhcmUiCittc2dzdHJbMF0gIiIKKyJcbiIKKyLOlyDPgM65zr8gz4DOsc+Bz4zOvM6/zrnOsSDOtc69z4TOv867zq4gzrXOr869zrHOuSIKK21zZ3N0clsxXSAiIgorIlxuIgorIs6fzrkgz4DOuc6/IM+AzrHPgc+MzrzOv865zrXPgiDOtc69z4TOv867zq3PgiDOtc6vzr3Osc65IgorCisjOiBoZWxwLmM6NzIxCittc2dpZCAiZ2l0IHZlcnNpb24gWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCB2ZXJzaW9uIFs8zrXPgM65zrvOv86zzq3Pgj5dIgorCisjOiBoZWxwLmM6Nzg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiAlcyAtICVzIgorbXNnc3RyICIiCisKKyM6IGhlbHAuYzo3OTMKK21zZ2lkICIiCisiXG4iCisiRGlkIHlvdSBtZWFuIHRoaXM/IgorbXNnaWRfcGx1cmFsICIiCisiXG4iCisiRGlkIHlvdSBtZWFuIG9uZSBvZiB0aGVzZT8iCittc2dzdHJbMF0gIiIKKyJcbiIKKyLOnM6uz4DPic+CIM61zr3Ovc6/zr/Pjc+DzrHPhM61IM6xz4XPhM+MOyIKK21zZ3N0clsxXSAiIgorIlxuIgorIs6czq7PgM+Jz4IgzrXOvc69zr/Ov8+Nz4POsc+EzrUgzq3Ovc6xIM6xz4DPjCDOsc+Fz4TOrDsiCisKKyM6IGlkZW50LmM6MzQ1Cittc2dpZCAiIgorIlxuIgorIioqKiBQbGVhc2UgdGVsbCBtZSB3aG8geW91IGFyZS5cbiIKKyJcbiIKKyJSdW5cbiIKKyJcbiIKKyIgIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5lbWFpbCBcInlvdUBleGFtcGxlLmNvbVwiXG4iCisiICBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIubmFtZSBcIllvdXIgTmFtZVwiXG4iCisiXG4iCisidG8gc2V0IHlvdXIgYWNjb3VudCdzIGRlZmF1bHQgaWRlbnRpdHkuXG4iCisiT21pdCAtLWdsb2JhbCB0byBzZXQgdGhlIGlkZW50aXR5IG9ubHkgaW4gdGhpcyByZXBvc2l0b3J5LlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiKioqIM6gzrHPgc6xzrrOsc67z44gz4DOtc6vz4TOtSDOvM6/z4Ugz4TOvyDPjM69zr/OvM6sIM+DzrHPgi5cbiIKKyJcbiIKKyLOpM+Bzq3Ovs+EzrVcbiIKKyJcbiIKKyIgIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5lbWFpbCBcInlvdUBleGFtcGxlLmNvbVwiXG4iCisiICBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIubmFtZSBcIs6kzr8gzozOvc6/zrzOrCDOo86xz4JcIlxuIgorIlxuIgorIs6zzrnOsSDOvc6xIM6/z4HOr8+DzrXPhM61IM+EzrfOvSDPgM+Bzr/Otc+AzrnOu861zrPOvM6tzr3OtyDPhM6xz4XPhM+Mz4TOt8+EzrEgz4TOv8+FIM67zr/Os86xz4HOuc6xz4POvM6/z40gz4POsc+CLlxuIgorIs6gzrHPgc6xzrvOtc6vz4jOtc+EzrUgz4TOvyAtLWdsb2JhbCDOs865zrEgzr3OsSDOv8+Bzq/Pg861z4TOtSDPhM63zr0gz4TOsc+Fz4TPjM+EzrfPhM6xIM68z4zOvc6/IM+DzrUgzrHPhc+Ez4wgz4TOvyAiCisizrHPgM6/zrjOtc+Ezq7Pgc65zr8uXG4iCisiXG4iCisKKyM6IGlkZW50LmM6MzY5Cittc2dpZCAibm8gZW1haWwgd2FzIGdpdmVuIGFuZCBhdXRvLWRldGVjdGlvbiBpcyBkaXNhYmxlZCIKK21zZ3N0ciAizrTOtSDOtM+MzrjOt866zrUgZW1haWwgzrrOsc65IM63IM6xz4XPhM+MzrzOsc+EzrcgzrHOvc6vz4fOvc61z4XPg863IM61zq/Ovc6xzrkgzrHPgM61zr3Otc+BzrPOv8+Azr/Ouc63zrzOrc69zrciCisKKyM6IGlkZW50LmM6Mzc0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhdXRvLWRldGVjdCBlbWFpbCBhZGRyZXNzIChnb3QgJyVzJykiCittc2dzdHIgIs60zrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ezq4gzrcgzrHPhc+Ez4zOvM6xz4TOtyDOsc69zq/Ph869zrXPhc+DzrcgzrTOuc61z43OuM+Fzr3Pg863z4IgZW1haWwgKM6yz4HOrc64zrfOus61ICclcycpIgorCisjOiBpZGVudC5jOjM4NAorbXNnaWQgIm5vIG5hbWUgd2FzIGdpdmVuIGFuZCBhdXRvLWRldGVjdGlvbiBpcyBkaXNhYmxlZCIKK21zZ3N0ciAizrTOtSDOtM+MzrjOt866zrUgz4zOvc6/zrzOsSDOus6xzrkgzrcgzrHPhc+Ez4zOvM6xz4TOtyDOsc69zq/Ph869zrXPhc+DzrcgzrXOr869zrHOuSDOsc+AzrXOvc61z4HOs86/z4DOv865zrfOvM6tzr3OtyIKKworIzogaWRlbnQuYzozOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGF1dG8tZGV0ZWN0IG5hbWUgKGdvdCAnJXMnKSIKK21zZ3N0ciAizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDOsc+Fz4TPjM68zrHPhM63IM6xzr3Or8+Hzr3Otc+Fz4POtyDOv869z4zOvM6xz4TOv8+CICjOss+Bzq3OuM63zrrOtSAnJXMnKSIKKworIzogaWRlbnQuYzozOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgaWRlbnQgbmFtZSAoZm9yIDwlcz4pIG5vdCBhbGxvd2VkIgorbXNnc3RyICLOtM61zr0gzrXPgM65z4TPgc6tz4DOtc+EzrHOuSDOus61zr3PjCDPjM69zr/OvM6xIGlkZW50ICjOs865zrEgz4TOvyA8JXM+KSIKKworIzogaWRlbnQuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSBjb25zaXN0cyBvbmx5IG9mIGRpc2FsbG93ZWQgY2hhcmFjdGVyczogJXMiCittc2dzdHIgIs+Ezr8gz4zOvc6/zrzOsSDOsc+Azr/PhM61zrvOtc6vz4TOsc65IM68z4zOvc6/IM6xz4DPjCDOvM63IM61z4DOuc+Ez4HOtc+Az4TOv8+Nz4Igz4fOsc+BzrHOus+Ezq7Pgc61z4I6ICVzIgorCisjOiBpZGVudC5jOjQxOSBidWlsdGluL2NvbW1pdC5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGRhdGUgZm9ybWF0OiAlcyIKK21zZ3N0ciAizrzOtyDOrc6zzrrPhc+BzrcgzrzOv8+Bz4bOriDOt868zrXPgc6/zrzOt869zq/Osc+COiAlcyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MzYKK21zZ2lkICJtdWx0aXBsZSBmaWx0ZXItc3BlY3MgY2Fubm90IGJlIGNvbWJpbmVkIgorbXNnc3RyICIiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjU4Cittc2dpZCAiZXhwZWN0ZWQgJ3RyZWU6PGRlcHRoPiciCittc2dzdHIgIiIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTUyCittc2dpZCAiY2Fubm90IGNoYW5nZSBwYXJ0aWFsIGNsb25lIHByb21pc29yIHJlbW90ZSIKK21zZ3N0ciAiIgorCisjOiBsb2NrZmlsZS5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVW5hYmxlIHRvIGNyZWF0ZSAnJXMubG9jayc6ICVzLlxuIgorIlxuIgorIkFub3RoZXIgZ2l0IHByb2Nlc3Mgc2VlbXMgdG8gYmUgcnVubmluZyBpbiB0aGlzIHJlcG9zaXRvcnksIGUuZy5cbiIKKyJhbiBlZGl0b3Igb3BlbmVkIGJ5ICdnaXQgY29tbWl0Jy4gUGxlYXNlIG1ha2Ugc3VyZSBhbGwgcHJvY2Vzc2VzXG4iCisiYXJlIHRlcm1pbmF0ZWQgdGhlbiB0cnkgYWdhaW4uIElmIGl0IHN0aWxsIGZhaWxzLCBhIGdpdCBwcm9jZXNzXG4iCisibWF5IGhhdmUgY3Jhc2hlZCBpbiB0aGlzIHJlcG9zaXRvcnkgZWFybGllcjpcbiIKKyJyZW1vdmUgdGhlIGZpbGUgbWFudWFsbHkgdG8gY29udGludWUuIgorbXNnc3RyICIiCisizpTOtSDOs86vzr3Otc+EzrHOuSDOvc6xIM60zrfOvM65zr/Phc+BzrPOt864zrXOryDPhM6/ICclcy5sb2NrJzogJXMuXG4iCisiXG4iCisizqbOsc6vzr3Otc+EzrHOuSDPgM+Jz4IgzrzOuc6xIM6szrvOu863IM60zrnOtc+BzrPOsc+Dzq/OsSBnaXQgz4TPgc6tz4fOtc65IM68zq3Pg86xIM+DzrUgzrHPhc+Ez4wgz4TOvyDOsc+Azr/OuM61z4TOrs+BzrnOvywgz4Auz4cuXG4iCisizq3Ovc6xz4IgzrTOuc6/z4HOuM+Jz4TOrs+CIM+Azr/PhSDOrM69zr/Ouc6+zrUgzrHPgM+MIM+Ezr8gJ2dpdCBjb21taXQnLiDOoM6xz4HOsc66zrHOu8+OIM+DzrnOs86/z4XPgc61z4XPhM61zq/PhM61IM+Az4nPgiAiCisiz4zOu861z4Igzr/OuSDOtM65zrXPgc6zzrHPg86vzrXPglxuIgorIs6tz4fOv8+Fzr0gz4TOtc+BzrzOsc+EzrnPg8+EzrXOryDOus6xzrkgz4DPgc6/z4PPgM6xzrjOrs+Dz4TOtSDPgM6szrvOuS4gzpHOvSDOsc+Azr/PhM+FzrPPh86szr3Otc65IM6xzrrPjM68zrEsIM68z4DOv8+BzrXOryDOvM65zrEgIgorIs60zrnOtc+BzrPOsc+Dzq/OsSBnaXRcbiIKKyLOvc6xIM6tz4fOtc65IM66zrHPhM6xz4HPgc61z43Pg861zrkgzrzOrc+DzrEgz4POtSDOsc+Fz4TPjCDPhM6/IM6xz4DOv864zrXPhM6uz4HOuc6/IM69z4nPgc6vz4TOtc+BzrE6XG4iCisizrHPhs6xzrnPgc6tz4PPhM61IM+Ezr8gzrHPgc+HzrXOr86/IM+HzrXOuc+Bzr/Ous6vzr3Ot8+EzrEgzrPOuc6xIM69zrEgz4PPhc69zrXPh86vz4POtc+EzrUuIgorCisjOiBsb2NrZmlsZS5jOjE1OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gY3JlYXRlICclcy5sb2NrJzogJXMiCittc2dzdHIgIiIKKworIzogbWVyZ2UuYzo0MQorbXNnaWQgImZhaWxlZCB0byByZWFkIHRoZSBjYWNoZSIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS5jOjEwNyByZXJlcmUuYzo3MjAgYnVpbHRpbi9hbS5jOjE4ODQgYnVpbHRpbi9hbS5jOjE5MTgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTYgYnVpbHRpbi9jaGVja291dC5jOjc0NSBidWlsdGluL2Nsb25lLmM6NzcxCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgzrXOs86zz4HOsc+Gzq4gzr3Orc6/z4UgzrHPgc+HzrXOr86/z4UgzrXPhc+BzrXPhM63z4HOr86/z4UiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMgorbXNnaWQgIihiYWQgY29tbWl0KVxuIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NQorIywgYy1mb3JtYXQKK21zZ2lkICJhZGRfY2FjaGVpbmZvIGZhaWxlZCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzY0CisjLCBjLWZvcm1hdAorbXNnaWQgImFkZF9jYWNoZWluZm8gZmFpbGVkIHRvIHJlZnJlc2ggZm9yIHBhdGggJyVzJzsgbWVyZ2UgYWJvcnRpbmcuIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjQ0NworbXNnaWQgImVycm9yIGJ1aWxkaW5nIHRyZWVzIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBhdGggJyVzJyVzIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkxMworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlcyB0byBtYWtlIHJvb20gZm9yIHN1YmRpcmVjdG9yeVxuIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkyNyBtZXJnZS1yZWN1cnNpdmUuYzo5NDYKK21zZ2lkICI6IHBlcmhhcHMgYSBEL0YgY29uZmxpY3Q/IgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkzNgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICclcyciCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTc4IGJ1aWx0aW4vY2F0LWZpbGUuYzo0MAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgJXMgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmxvYiBleHBlY3RlZCBmb3IgJXMgJyVzJyIKK21zZ3N0ciAizrHOvc6xzrzOtc69z4zPhM6xzr0gYmxvYiDOs865zrEgJXMgJyVzJyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTAwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDE1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW1saW5rICclcyc6ICVzIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEwMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG8gbm90IGtub3cgd2hhdCB0byBkbyB3aXRoICUwNm8gJXMgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjExCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG5vdCBjaGVja2VkIG91dCkiCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChjb21taXRzIG5vdCBwcmVzZW50KSIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKGNvbW1pdHMgZG9uJ3QgZm9sbG93IG1lcmdlLWJhc2UpIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMzMgbWVyZ2UtcmVjdXJzaXZlLmM6MTI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIHRvIHRoZSBmb2xsb3dpbmcgY29tbWl0OiIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjM2IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFzdC1mb3J3YXJkaW5nIHN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG1lcmdlIGZvbGxvd2luZyBjb21taXRzIG5vdCBmb3VuZCkiCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChub3QgZmFzdC1mb3J3YXJkKSIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjc2Cittc2dpZCAiRm91bmQgYSBwb3NzaWJsZSBtZXJnZSByZXNvbHV0aW9uIGZvciB0aGUgc3VibW9kdWxlOlxuIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIklmIHRoaXMgaXMgY29ycmVjdCBzaW1wbHkgYWRkIGl0IHRvIHRoZSBpbmRleCBmb3IgZXhhbXBsZVxuIgorImJ5IHVzaW5nOlxuIgorIlxuIgorIiAgZ2l0IHVwZGF0ZS1pbmRleCAtLWNhY2hlaW5mbyAxNjAwMDAgJXMgXCIlc1wiXG4iCisiXG4iCisid2hpY2ggd2lsbCBhY2NlcHQgdGhpcyBzdWdnZXN0aW9uLlxuIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobXVsdGlwbGUgbWVyZ2VzIGZvdW5kKSIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzYxCittc2dpZCAiRmFpbGVkIHRvIGV4ZWN1dGUgaW50ZXJuYWwgbWVyZ2UiCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM2NgorIywgYy1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gYWRkICVzIHRvIGRhdGFiYXNlIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0by1tZXJnaW5nICVzIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXJyb3I6IFJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXM7IHdyaXRpbmcgdG8gJXMgaW5zdGVhZC4iCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzIGxlZnQgIgorImluIHRyZWUuIgorbXNnc3RyICIiCisizqPOpc6TzprOoc6fzqXOo86XICglcy/OtM65zrHOs8+BzrHPhs6uKTogzojOs865zr3OtSDOtM65zrHOs8+BzrHPhs6uIM+Ezr/PhSAlcyDPg8+Ezr8gJXMgzrrOsc65ICVzIM+Dz4TOvyAlcy4gIgorIs6UzrnOsc+EzrfPgc6uzrjOt866zrUgzrcgzq3Ous60zr/Pg863ICVzIM+Ezr/PhSAlcyDPg8+Ezr8gzrTOrc69z4TPgc6/LiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIHRvICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzICIKKyJsZWZ0IGluIHRyZWUuIgorbXNnc3RyICIiCisizqPOpc6TzprOoc6fzqXOo86XICglcy/OtM65zrHOs8+BzrHPhs6uKTogzojOs865zr3OtSDOtM65zrHOs8+BzrHPhs6uIM+Ezr/PhSAlcyDPg8+Ezr8gJXMgzrrOsc65ICVzIM+Dz4TOvyAlcyDPg8+Ezr8gJXMuICIKKyLOlM65zrHPhM63z4HOrs64zrfOus61IM63IM6tzrrOtM6/z4POtyAlcyDPhM6/z4UgJXMgz4PPhM6/IM60zq3Ovc+Ez4HOvy4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0ICIKKyJpbiB0cmVlIGF0ICVzLiIKK21zZ3N0ciAiIgorIs6jzqXOk86azqHOn86lzqPOlyAoJXMvzrTOuc6xzrPPgc6xz4bOrik6IM6IzrPOuc69zrUgzrTOuc6xzrPPgc6xz4bOriDPhM6/z4UgJXMgz4PPhM6/ICVzIM66zrHOuSAlcyDPg8+Ezr8gJXMuICIKKyLOlM65zrHPhM63z4HOrs64zrfOus61IM63IM6tzrrOtM6/z4POtyAlcyDPhM6/z4UgJXMgz4PPhM6/IM60zq3Ovc+Ez4HOvyDPg8+Ezr8gJXMuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgdG8gJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgIgorImxlZnQgaW4gdHJlZSBhdCAlcy4iCittc2dzdHIgIiIKKyLOo86lzpPOms6hzp/Opc6jzpcgKCVzL860zrnOsc6zz4HOsc+Gzq4pOiDOiM6zzrnOvc61IM60zrnOsc6zz4HOsc+Gzq4gz4TOv8+FICVzIM+Dz4TOvyAlcyDOus6xzrkgJXMgz4PPhM6/ICVzIM+Dz4TOvyAlcy4gIgorIs6UzrnOsc+EzrfPgc6uzrjOt866zrUgzrcgzq3Ous60zr/Pg863ICVzIM+Ezr/PhSAlcyDPg8+Ezr8gzrTOrc69z4TPgc6/IM+Dz4TOvyAlcy4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MzcKK21zZ2lkICJyZW5hbWUiCittc2dzdHIgIs68zrXPhM6/zr3Ov868zrHPg86vzrEiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MzcKK21zZ2lkICJyZW5hbWVkIgorbXNnc3RyICLOvM61z4TOv869zr/OvM6sz4PPhM63zrrOtSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTYzMyBtZXJnZS1yZWN1cnNpdmUuYzoyNDgxIG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSBkaXJ0eSBmaWxlIGF0ICVzIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlcywgZXZlbiB0aG91Z2ggaXQncyBpbiB0aGUgd2F5LiIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzA2CisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUIChyZW5hbWUvYWRkKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gIEFkZGVkICVzIGluICVzIgorbXNnc3RyICIiCisizqPOpc6TzprOoc6fzqXOo86XICjOvM61z4TOv869zr/OvM6xz4POr86xL8+Az4HOv8+DzrjOrs66zrcpOiDOnM61z4TOv869zr/OvM6xz4POr86xICVzLT4lcyDPg8+Ezr8gJXMuICDOiM6zzrnOvc61IM+Az4HOv8+DzrjOrs66zrcgIgorIiVzIM+Dz4TOvyAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTczNAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBhIGRpcmVjdG9yeSBpbiAlcyBhZGRpbmcgYXMgJXMgaW5zdGVhZCIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXM7IGFkZGluZyBhcyAlcyBpbnN0ZWFkIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIFwiJXNcIi0+XCIlc1wiIGluIGJyYW5jaCBcIiVzXCIgcmVuYW1lIFwiJXMiCisiXCItPlwiJXNcIiBpbiBcIiVzXCIlcyIKK21zZ3N0ciAiIgorIs6jzqXOk86azqHOn86lzqPOlyAozrzOtc+Ezr/Ovc6/zrzOsc+Dzq/OsS/OvM61z4TOv869zr/OvM6xz4POr86xKTogzpzOtc+Ezr/Ovc6/zrzOsc+Dzq/OsSBcIiVzXCItPlwiJXNcIiDPg8+Ezr/OvSDOus67zqzOtM6/ICIKKyJcIiVzXCIgzrzOtc+Ezr/Ovc6/zrzOsc+Dzq/OsSBcIiVzXCItPlwiJXNcIiDPg8+Ezr/OvSDOus67zqzOtM6/IFwiJXNcIiVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzY0Cittc2dpZCAiIChsZWZ0IHVucmVzb2x2ZWQpIgorbXNnc3RyICIgKM6tzrzOtc65zr3OtSDOsc+EzrHPjc+EzrnPg8+Ezr8pIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxODY4CisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gUmVuYW1lICVzLT4lcyBpbiAlcyIKK21zZ3N0ciAiIgorIs6jzqXOk86azqHOn86lzqPOlyAozrzOtc+Ezr/Ovc6/zrzOsc+Dzq/OsS/OvM61z4TOv869zr/OvM6xz4POr86xKTogzpzOtc+Ezr/Ovc6/zrzOsc+Dzq/OsSAlcy0+JXMgz4PPhM6/ICVzLiDOnM61z4TOv869zr/OvM6xz4POr86xICIKKyIlcy0+JXMgz4PPhM6/ICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDY0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoZGlyZWN0b3J5IHJlbmFtZSBzcGxpdCk6IFVuY2xlYXIgd2hlcmUgdG8gcGxhY2UgJXMgYmVjYXVzZSAiCisiZGlyZWN0b3J5ICVzIHdhcyByZW5hbWVkIHRvIG11bHRpcGxlIG90aGVyIGRpcmVjdG9yaWVzLCB3aXRoIG5vIGRlc3RpbmF0aW9uICIKKyJnZXR0aW5nIGEgbWFqb3JpdHkgb2YgdGhlIGZpbGVzLiIKK21zZ3N0ciAiIgorIs6jzqXOk86azqHOn86lzqPOlyAozrHPg86sz4bOtc65zrEgzrzOtc+Ezr/Ovc6/zrzOsc+Dzq/Osc+CIM+GzrHOus6tzrvOv8+FKTogzpTOtc69IM61zq/Ovc6xzrkgz4POsc+Gzq3PgiDPgM6/z40gzr3OsSDPhM6/z4DOv864zrXPhM63zrjOtc6vICIKKyLPhM6/ICVzIM61z4DOtc65zrTOriDOvyDPhs6szrrOtc67zr/PgiAlcyDOvM61z4TOv869zr/OvM6sz4PPhM63zrrOtSDPg861IM+Azr/Ou867zrHPgM67zr/Pjc+CIM6szrvOu86/z4XPgiDPhs6xzrrOrc67zr/Phc+CLCDOus6xzrkgIgorIs66zrHOvc6tzr3Osc+CIM+Az4HOv86/z4HOuc+DzrzPjM+CIM60zrXOvSDPgM6uz4HOtSDPhM6xIM+AzrXPgc65z4PPg8+Mz4TOtc+BzrEgzrHPgc+HzrXOr86xLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjA5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGltcGxpY2l0IGRpciByZW5hbWUpOiBFeGlzdGluZyBmaWxlL2RpciBhdCAlcyBpbiB0aGUgd2F5IG9mICIKKyJpbXBsaWNpdCBkaXJlY3RvcnkgcmVuYW1lKHMpIHB1dHRpbmcgdGhlIGZvbGxvd2luZyBwYXRoKHMpIHRoZXJlOiAlcy4iCittc2dzdHIgIiIKKyLOo86lzpPOms6hzp/Opc6jzpcgKM61zr3Ovc6/zr/Pjc68zrXOvc63IM68zrXPhM6/zr3Ov868zrHPg86vzrEgz4bOsc66zq3Ou8+Jzr0pOiDOpc+AzqzPgc+Hzr/OvSDOsc+Bz4fOtc6vzr8vz4bOrM66zrXOu86/z4Igz4PPhM6/ICVzICIKKyLOtc68z4DOv860zq/Ots61zrkgz4TOt869IM61zr3Ovc6/zr/Pjc68zrXOvc63IM68zrXPhM6/zr3Ov868zrHPg86vzrEgz4DOv8+FIM64zrEgzq3Oss6xzrbOtSDPhM65z4IgzrXPgM+MzrzOtc69zrXPgiDOtM65zrHOtM+Bzr/OvM6tz4IgIgorIs61zrrOtc6vOiAlcy4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogQ2Fubm90IG1hcCBtb3JlIHRoYW4gb25lIHBhdGggdG8gJXM7ICIKKyJpbXBsaWNpdCBkaXJlY3RvcnkgcmVuYW1lcyB0cmllZCB0byBwdXQgdGhlc2UgcGF0aHMgdGhlcmU6ICVzIgorbXNnc3RyICIiCisizqPOpc6TzprOoc6fzqXOo86XICjOtc69zr3Ov86/z43OvM61zr3OtyDOvM61z4TOv869zr/OvM6xz4POr86xIM+GzrHOus6tzrvPic69KTogzpTOtSDOvM+Azr/Pgc61zq8gzr3OsSDOs86vzr3Otc65IM6xzr3PhM65z4PPhM6/zq/Ph865z4POtyAiCisiz4TOv8+FICVzIM68zrUgz4DOtc+BzrnPg8+Dz4zPhM61z4HOtc+CIM6xz4DPjCDOvM6vzrEgzrTOuc6xzrTPgc6/zrzOrc+CLCDOv865IM61zr3Ovc6/zr/Pjc68zrXOvc61z4IgzrzOtc+Ezr/Ovc6/zrzOsc+Dzq/Otc+CICIKKyLPhs6xzrrOrc67z4nOvSDPgM+Bzr/Pg8+AzqzOuM63z4POsc69IM69zrEgzrLOrM67zr/Phc69IM6xz4XPhM6tz4Igz4TOuc+CIM60zrnOsc60z4HOv868zq3PgiDOtc66zrXOrzogJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIGRpcmVjdG9yeSAlcy0+JXMgaW4gJXMuIFJlbmFtZSBkaXJlY3RvcnkgJXMtIgorIj4lcyBpbiAlcyIKK21zZ3N0ciAiIgorIs6jzqXOk86azqHOn86lzqPOlyAozrzOtc+Ezr/Ovc6/zrzOsc+Dzq/OsS/OvM61z4TOv869zr/OvM6xz4POr86xKTogzpzOtc+Ezr/Ovc6/zrzOsc+Dzq/OsSDPhs6xzrrOrc67zr/PhSAlcy0+JXMgz4PPhM6/ICVzLiAiCisizpzOtc+Ezr/Ovc6/zrzOsc+Dzq/OsSDPhs6xzrrOrc67zr/PhSAlcy0+JXMgz4PPhM6/ICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyNDQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXQVJOSU5HOiBBdm9pZGluZyBhcHBseWluZyAlcyAtPiAlcyByZW5hbWUgdG8gJXMsIGJlY2F1c2UgJXMgaXRzZWxmIHdhcyAiCisicmVuYW1lZC4iCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAyMgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgJXMiCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgJXMgaXMgbm90IGEgYmxvYiIKK21zZ3N0ciAiz4TOvyDOsc69z4TOuc66zrXOr868zrXOvc6/ICVzIM60zrXOvSDOtc6vzr3Osc65IGJsb2IiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwOTQKK21zZ2lkICJtb2RpZnkiCittc2dzdHIgIs+Ez4HOv8+Azr/PgM6/zrnPjiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA5NAorbXNnaWQgIm1vZGlmaWVkIgorbXNnc3RyICLPhM+Bzr/PgM6/z4DOv865zrfOvM6tzr3OvyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzEwNQorbXNnaWQgImNvbnRlbnQiCittc2dzdHIgIs+AzrXPgc65zrXPh8+MzrzOtc69zr8iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMxMTIKK21zZ2lkICJhZGQvYWRkIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMxNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBlZCAlcyAobWVyZ2VkIHNhbWUgYXMgZXhpc3RpbmcpIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMxODIgZ2l0LXN1Ym1vZHVsZS5zaDo4NjEKK21zZ2lkICJzdWJtb2R1bGUiCittc2dzdHIgIs+Fz4DOv861zr3PjM+EzrfPhM6xIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUICglcyk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgorbXNnc3RyICLOo86lzpPOms6hzp/Opc6jzpcgKCVzKTogzqPPjc6zzrrPgc6/z4XPg863IM+Dz4XOs8+Hz47Ovc61z4XPg863z4Igz4PPhM6/ICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyBhcyAlcyBpbnN0ZWFkIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMiCittc2dzdHIgIs6Rz4bOsc6vz4HOtc+Dzrcgz4TOv8+FICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzQ1Cittc2dpZCAiZmlsZS9kaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM1MQorbXNnaWQgImRpcmVjdG9yeS9maWxlIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKCVzKTogVGhlcmUgaXMgYSBkaXJlY3Rvcnkgd2l0aCBuYW1lICVzIGluICVzLiBBZGRpbmcgJXMgYXMgJXMiCittc2dzdHIgIiIKKyLOo86lzpPOms6hzp/Opc6jzpcgKCVzKTogzqXPgM6sz4HPh861zrkgz4bOrM66zrXOu86/z4IgzrzOtSDPjM69zr/OvM6xICVzIM+Dz4TOvyAlcy4gzpPOr869zrXPhM6xzrkgz4DPgc6/z4POuM6uzrrOtyDPhM6/z4UgJXMgIgorIs+Jz4IgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nICVzIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKGFkZC9hZGQpOiBNZXJnZSBjb25mbGljdCBpbiAlcyIKK21zZ3N0ciAizqPOpc6TzprOoc6fzqXOo86XICjPgM+Bzr/Pg864zq7Ous63L8+Az4HOv8+DzrjOrs66zrcpOiDOo8+NzrPOus+Bzr/Phc+Dzrcgz4PPhc6zz4fPjs69zrXPhc+DzrfPgiDPg8+Ezr8gJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgorIiAgJXMiCittc2dzdHIgIiIKKyLOn865IM+Ezr/PgM65zrrOrc+CIM6xzrvOu86xzrPOrc+CIM+DzrHPgiDPg8+EzrEgzrHOus+MzrvOv8+FzrjOsSDOsc+Bz4fOtc6vzrEgzrjOsSDOtc+AzrXOs86zz4HOsc+Gz4zOvc+Ezr/Phc+DzrHOvSDOsc+Az4wgz4TOtyAiCisiz4PPhc6zz4fPjs69zrXPhc+Dzrc6XG4iCisiICAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQyOAorbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZSEiCittc2dzdHIgIs6JzrTOtyDPgM67zq7Pgc+Jz4IgzrXOvc6uzrzOtc+Bzr8hIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNDM3CisjLCBjLWZvcm1hdAorbXNnaWQgIm1lcmdpbmcgb2YgdHJlZXMgJXMgYW5kICVzIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNTM2Cittc2dpZCAiTWVyZ2luZzoiCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzU0OQorIywgYy1mb3JtYXQKK21zZ2lkICJmb3VuZCAldSBjb21tb24gYW5jZXN0b3I6IgorbXNnaWRfcGx1cmFsICJmb3VuZCAldSBjb21tb24gYW5jZXN0b3JzOiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1ODgKK21zZ2lkICJtZXJnZSByZXR1cm5lZCBubyBjb21taXQiCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzY1NAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcyciCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzY3MCBidWlsdGluL21lcmdlLmM6NjkyIGJ1aWx0aW4vbWVyZ2UuYzo4NTAKK21zZ2lkICJVbmFibGUgdG8gd3JpdGUgaW5kZXguIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzo2NQorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IGZpbGUgJXMgaXMgdG9vIHNtYWxsIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHNpZ25hdHVyZSAweCUwOHggZG9lcyBub3QgbWF0Y2ggc2lnbmF0dXJlIDB4JTA4eCIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGktcGFjay1pbmRleCB2ZXJzaW9uICVkIG5vdCByZWNvZ25pemVkIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICJoYXNoIHZlcnNpb24gJXUgZG9lcyBub3QgbWF0Y2giCittc2dzdHIgIiIKKworIzogbWlkeC5jOjEwNQorbXNnaWQgImludmFsaWQgY2h1bmsgb2Zmc2V0ICh0b28gbGFyZ2UpIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzoxMjkKK21zZ2lkICJ0ZXJtaW5hdGluZyBtdWx0aS1wYWNrLWluZGV4IGNodW5rIGlkIGFwcGVhcnMgZWFybGllciB0aGFuIGV4cGVjdGVkIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzoxNDIKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgcGFjay1uYW1lIGNodW5rIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzoxNDQKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgT0lEIGZhbm91dCBjaHVuayIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTQ2Cittc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIE9JRCBsb29rdXAgY2h1bmsiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjE0OAorbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBvYmplY3Qgb2Zmc2V0cyBjaHVuayIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTYyCisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpLXBhY2staW5kZXggcGFjayBuYW1lcyBvdXQgb2Ygb3JkZXI6ICclcycgYmVmb3JlICclcyciCittc2dzdHIgIiIKKworIzogbWlkeC5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgcGFjay1pbnQtaWQ6ICV1ICgldSB0b3RhbCBwYWNrcykiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjI0NgorbXNnaWQgIm11bHRpLXBhY2staW5kZXggc3RvcmVzIGEgNjQtYml0IG9mZnNldCwgYnV0IG9mZl90IGlzIHRvbyBzbWFsbCIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MjcxCittc2dpZCAiZXJyb3IgcHJlcGFyaW5nIHBhY2tmaWxlIGZyb20gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBhZGQgcGFja2ZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2staW5kZXggJyVzJyIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6NTA3CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsb2NhdGUgb2JqZWN0ICVkIGluIHBhY2tmaWxlIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzo5NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsZWFyIG11bHRpLXBhY2staW5kZXggYXQgJXMiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjk4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2lkIGZhbm91dCBvdXQgb2Ygb3JkZXI6IGZhbm91dFslZF0gPSAlPFBSSXgzMj4gPiAlPFBSSXgzMj4gPSBmYW5vdXRbJWRdIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzo5OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2lkIGxvb2t1cCBvdXQgb2Ygb3JkZXI6IG9pZFslZF0gPSAlcyA+PSAlcyA9IG9pZFslZF0iCittc2dzdHIgIiIKKworIzogbWlkeC5jOjk5NgorbXNnaWQgIlZlcmlmeWluZyBvYmplY3Qgb2Zmc2V0cyIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTAwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbG9hZCBwYWNrIGVudHJ5IGZvciBvaWRbJWRdID0gJXMiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjEwMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxvYWQgcGFjay1pbmRleCBmb3IgcGFja2ZpbGUgJXMiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjEwMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5jb3JyZWN0IG9iamVjdCBvZmZzZXQgZm9yIG9pZFslZF0gPSAlczogJTxQUkl4NjQ+ICE9ICU8UFJJeDY0PiIKK21zZ3N0ciAiIgorCisjOiBuYW1lLWhhc2guYzo1MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsYXp5X2RpciB0aHJlYWQ6ICVzIgorbXNnc3RyICIiCisKKyM6IG5hbWUtaGFzaC5jOjU1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgorbXNnc3RyICIiCisKKyM6IG5hbWUtaGFzaC5jOjU1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gam9pbiBsYXp5X25hbWUgdGhyZWFkOiAlcyIKK21zZ3N0ciAiIgorCisjOiBub3Rlcy1tZXJnZS5jOjI3NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIHByZXZpb3VzIG5vdGVzIG1lcmdlICglcyBleGlzdHMpLlxuIgorIlBsZWFzZSwgdXNlICdnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXQnIG9yICdnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCcgdG8gIgorImNvbW1pdC9hYm9ydCB0aGUgcHJldmlvdXMgbWVyZ2UgYmVmb3JlIHlvdSBzdGFydCBhIG5ldyBub3RlcyBtZXJnZS4iCittc2dzdHIgIiIKKyLOlM61zr0gzq3Ph861z4TOtSDOv867zr/Ous67zrfPgc+Oz4POtc65IM+EzrfOvSDPgM+Bzr/Ot86zzr/Pjc68zrXOvc63IM+Dz4XOs8+Hz47Ovc61z4XPg863IM+DzrfOvM61zrnPjs+DzrXPjs69IM+DzrHPgiAozqXPgM6sz4HPh861zrkgz4TOvyAiCisiJXMpLlxuIgorIs6gzrHPgc6xzrrOsc67z44sIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgJ2dpdCBub3RlcyBtZXJnZSAtLWNvbW1pdCcgzq4gJ2dpdCBub3RlcyBtZXJnZSAtLSIKKyJhYm9ydCcgzrPOuc6xIM69zrEgz4XPgM6/zrLOrM67zrXPhM61L861zrPOus6xz4TOsc67zrXOr8+IzrXPhM61IM+EzrfOvSDPgM+Bzr/Ot86zzr/Pjc68zrXOvc63IM+Dz4XOs8+Hz47Ovc61z4XPg863IM+Az4HOuc69ICIKKyLOvs61zrrOuc69zq7Pg861z4TOtSDOvc6tzrEgz4PPhc6zz4fPjs69zrXPhc+Dzrcgz4POt868zrXOuc+Oz4POtc+Jzr0uIgorCisjOiBub3Rlcy1tZXJnZS5jOjI4NAorIywgYy1mb3JtYXQKK21zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbm90ZXMgbWVyZ2UgKCVzIGV4aXN0cykuIgorbXNnc3RyICLOlM61zr0gzq3Ph861z4TOtSDOv867zr/Ous67zrfPgc+Oz4POtc65IM+Ezrcgz4PPhc6zz4fPjs69zrXPhc+Dzrcgz4POt868zrXOuc+Oz4POtc+Ozr0gz4POsc+CICjOpc+AzqzPgc+HzrXOuSDPhM6/ICVzKS4iCisKKyM6IG5vdGVzLXV0aWxzLmM6NDYKK21zZ2lkICJDYW5ub3QgY29tbWl0IHVuaW5pdGlhbGl6ZWQvdW5yZWZlcmVuY2VkIG5vdGVzIHRyZWUiCittc2dzdHIgIiIKKworIzogbm90ZXMtdXRpbHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmFkIG5vdGVzLnJld3JpdGVNb2RlIHZhbHVlOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IG5vdGVzLXV0aWxzLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlZnVzaW5nIHRvIHJld3JpdGUgbm90ZXMgaW4gJXMgKG91dHNpZGUgb2YgcmVmcy9ub3Rlcy8pIgorbXNnc3RyICIiCisKKyMuIFRSQU5TTEFUT1JTOiBUaGUgZmlyc3QgJXMgaXMgdGhlIG5hbWUgb2YKKyMuIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSwgdGhlIHNlY29uZCAlcyBpcworIy4gaXRzIHZhbHVlLgorIy4KKyM6IG5vdGVzLXV0aWxzLmM6MTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIkJhZCAlcyB2YWx1ZTogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBvYmplY3QuYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG9iamVjdCB0eXBlIFwiJXNcIiIKK21zZ3N0ciAiIgorCisjOiBvYmplY3QuYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0ICVzIGlzIGEgJXMsIG5vdCBhICVzIgorbXNnc3RyICIiCisKKyM6IG9iamVjdC5jOjIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgJXMgaGFzIHVua25vd24gdHlwZSBpZCAlZCIKK21zZ3N0ciAiIgorCisjOiBvYmplY3QuYzoyNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIG9iamVjdDogJXMiCittc2dzdHIgIiIKKworIzogb2JqZWN0LmM6MjY3IG9iamVjdC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJoYXNoIG1pc21hdGNoICVzIgorbXNnc3RyICIiCisKKyM6IHBhY2tmaWxlLmM6NjA3Cittc2dpZCAib2Zmc2V0IGJlZm9yZSBlbmQgb2YgcGFja2ZpbGUgKGJyb2tlbiAuaWR4PykiCittc2dzdHIgIiIKKworIzogcGFja2ZpbGUuYzoxODcwCisjLCBjLWZvcm1hdAorbXNnaWQgIm9mZnNldCBiZWZvcmUgc3RhcnQgb2YgcGFjayBpbmRleCBmb3IgJXMgKGNvcnJ1cHQgaW5kZXg/KSIKK21zZ3N0ciAiIgorCisjOiBwYWNrZmlsZS5jOjE4NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Zmc2V0IGJleW9uZCBlbmQgb2YgcGFjayBpbmRleCBmb3IgJXMgKHRydW5jYXRlZCBpbmRleD8pIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzozNQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZXF1aXJlcyBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo2OQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAlcyIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgOiBpbmNvbXBhdGlibGUgd2l0aCBzb21ldGhpbmcgZWxzZSIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODggcGFyc2Utb3B0aW9ucy5jOjkyIHBhcnNlLW9wdGlvbnMuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdGFrZXMgbm8gdmFsdWUiCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzbid0IGF2YWlsYWJsZSIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy5jOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIGEgbm9uLW5lZ2F0aXZlIGludGVnZXIgdmFsdWUgd2l0aCBhbiBvcHRpb25hbCBrL20vZyBzdWZmaXgiCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJhbWJpZ3VvdXMgb3B0aW9uOiAlcyAoY291bGQgYmUgLS0lcyVzIG9yIC0tJXMlcykiCittc2dzdHIgIs6xzrzPhs6vz4POt868zrcgzrXPgM65zrvOv86zzq46ICVzICjOuM6xIM68z4DOv8+Bzr/Pjc+DzrUgzr3OsSDOtc6vzr3Osc65IC0tJXMlcyDOriAtLSVzJXMpIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MzU2IHBhcnNlLW9wdGlvbnMuYzozNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIHlvdSBtZWFuIGAtLSVzYCAod2l0aCB0d28gZGFzaGVzID8pIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo2NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAizqzOs869z4nPg8+EzrcgzrXPgM65zrvOv86zzq4gYCVzJyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHN3aXRjaCBgJWMnIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo2NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBub24tYXNjaWkgb3B0aW9uIGluIHN0cmluZzogYCVzJyIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6Njc1Cittc2dpZCAiLi4uIgorbXNnc3RyICIuLi4iCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo2OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNhZ2U6ICVzIgorbXNnc3RyICLPh8+Bzq7Pg863OiAlcyIKKworIy4gVFJBTlNMQVRPUlM6IHRoZSBjb2xvbiBoZXJlIHNob3VsZCBhbGlnbiB3aXRoIHRoZQorIy4gb25lIGluICJ1c2FnZTogJXMiIHRyYW5zbGF0aW9uLgorIy4KKyM6IHBhcnNlLW9wdGlvbnMuYzo3MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgb3I6ICVzIgorbXNnc3RyICIgICDOrjogJXMiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICVzIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3NDIKK21zZ2lkICItTlVNIgorbXNnc3RyICItzpHOoc6ZzpgiCisKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzoyMQorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzozOAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgZXhwaXJhdGlvbiBkYXRlICclcyciCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGV4cGVjdHMgXCJhbHdheXNcIiwgXCJhdXRvXCIsIG9yIFwibmV2ZXJcIiIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLWNiLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHBhdGguYzo4OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IG1ha2UgJXMgd3JpdGFibGUgYnkgZ3JvdXAiCittc2dzdHIgIiIKKworIzogcGF0aHNwZWMuYzoxMjgKK21zZ2lkICJFc2NhcGUgY2hhcmFjdGVyICdcXCcgbm90IGFsbG93ZWQgYXMgbGFzdCBjaGFyYWN0ZXIgaW4gYXR0ciB2YWx1ZSIKK21zZ3N0ciAiIgorCisjOiBwYXRoc3BlYy5jOjE0NgorbXNnaWQgIk9ubHkgb25lICdhdHRyOicgc3BlY2lmaWNhdGlvbiBpcyBhbGxvd2VkLiIKK21zZ3N0ciAiIgorCisjOiBwYXRoc3BlYy5jOjE0OQorbXNnaWQgImF0dHIgc3BlYyBtdXN0IG5vdCBiZSBlbXB0eSIKK21zZ3N0ciAiIgorCisjOiBwYXRoc3BlYy5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGF0dHJpYnV0ZSBuYW1lICVzIgorbXNnc3RyICIiCisKKyM6IHBhdGhzcGVjLmM6MjU3Cittc2dpZCAiZ2xvYmFsICdnbG9iJyBhbmQgJ25vZ2xvYicgcGF0aHNwZWMgc2V0dGluZ3MgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiIgorCisjOiBwYXRoc3BlYy5jOjI2NAorbXNnaWQgIiIKKyJnbG9iYWwgJ2xpdGVyYWwnIHBhdGhzcGVjIHNldHRpbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggYWxsIG90aGVyIGdsb2JhbCAiCisicGF0aHNwZWMgc2V0dGluZ3MiCittc2dzdHIgIiIKKworIzogcGF0aHNwZWMuYzozMDQKK21zZ2lkICJpbnZhbGlkIHBhcmFtZXRlciBmb3IgcGF0aHNwZWMgbWFnaWMgJ3ByZWZpeCciCittc2dzdHIgIiIKKworIzogcGF0aHNwZWMuYzozMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBwYXRoc3BlYyBtYWdpYyAnJS4qcycgaW4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBwYXRoc3BlYy5jOjMzMAorIywgYy1mb3JtYXQKK21zZ2lkICJNaXNzaW5nICcpJyBhdCB0aGUgZW5kIG9mIHBhdGhzcGVjIG1hZ2ljIGluICclcyciCittc2dzdHIgIiIKKworIzogcGF0aHNwZWMuYzozNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5pbXBsZW1lbnRlZCBwYXRoc3BlYyBtYWdpYyAnJWMnIGluICclcyciCittc2dzdHIgIiIKKworIzogcGF0aHNwZWMuYzo0MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6ICdsaXRlcmFsJyBhbmQgJ2dsb2InIGFyZSBpbmNvbXBhdGlibGUiCittc2dzdHIgIiIKKworIzogcGF0aHNwZWMuYzo0NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6ICclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IgorbXNnc3RyICIiCisKKyM6IHBhdGhzcGVjLmM6NTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgKG1uZW1vbmljOiAnJWMnKSIKK21zZ3N0ciAiIgorCisjOiBwYXRoc3BlYy5jOjUyNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogcGF0aHNwZWMgbWFnaWMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvbW1hbmQ6ICVzIgorbXNnc3RyICIiCisiJXM6IM+Ezr8gbWFnaWMgz4TOt8+CIM+AzrXPgc65zrPPgc6xz4bOrs+CIM60zrnOsc60z4HOv868zq7PgiDOtM61zr0gz4XPgM6/z4PPhM63z4HOr862zrXPhM6xzrkgzrHPgM+MIM+EzrfOvSDOtc69z4TOv867zq46ICVzIgorCisjOiBwYXRoc3BlYy5jOjU5MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoc3BlYyAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCittc2dzdHIgIs63IM+AzrXPgc65zrPPgc6xz4bOriDOtM65zrHOtM+Bzr/OvM6uz4IgJyVzJyDOtc6vzr3Osc65IM+Azq/Pg8+JIM6xz4DPjCDPg8+FzrzOss6/zrvOuc66z4wgzrTOtc+DzrzPjCIKKworIzogcGt0LWxpbmUuYzoxMDQKK21zZ2lkICJmbHVzaCBwYWNrZXQgd3JpdGUgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IHBrdC1saW5lLmM6MTQ0IHBrdC1saW5lLmM6MjMwCittc2dpZCAicHJvdG9jb2wgZXJyb3I6IGltcG9zc2libHkgbG9uZyBsaW5lIgorbXNnc3RyICIiCisKKyM6IHBrdC1saW5lLmM6MTYwIHBrdC1saW5lLmM6MTYyCittc2dpZCAicGFja2V0IHdyaXRlIHdpdGggZm9ybWF0IGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBwa3QtbGluZS5jOjE5NAorbXNnaWQgInBhY2tldCB3cml0ZSBmYWlsZWQgLSBkYXRhIGV4Y2VlZHMgbWF4IHBhY2tldCBzaXplIgorbXNnc3RyICIiCisKKyM6IHBrdC1saW5lLmM6MjAxIHBrdC1saW5lLmM6MjA4Cittc2dpZCAicGFja2V0IHdyaXRlIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBwa3QtbGluZS5jOjI5MworbXNnaWQgInJlYWQgZXJyb3IiCittc2dzdHIgIiIKKworIzogcGt0LWxpbmUuYzozMDEKK21zZ2lkICJ0aGUgcmVtb3RlIGVuZCBodW5nIHVwIHVuZXhwZWN0ZWRseSIKK21zZ3N0ciAiIgorCisjOiBwa3QtbGluZS5jOjMyOQorIywgYy1mb3JtYXQKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIGxpbmUgbGVuZ3RoIGNoYXJhY3RlcjogJS40cyIKK21zZ3N0ciAiIgorCisjOiBwa3QtbGluZS5jOjMzOSBwa3QtbGluZS5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIGxpbmUgbGVuZ3RoICVkIgorbXNnc3RyICIiCisKKyM6IHBrdC1saW5lLmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW90ZSBlcnJvcjogJXMiCittc2dzdHIgIiIKKworIzogcHJlbG9hZC1pbmRleC5jOjExOQorbXNnaWQgIlJlZnJlc2hpbmcgaW5kZXgiCittc2dzdHIgIiIKKworIzogcHJlbG9hZC1pbmRleC5jOjEzOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRocmVhZGVkIGxzdGF0OiAlcyIKK21zZ3N0ciAiIgorCisjOiBwcmV0dHkuYzo5NjMKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgLS1wcmV0dHkgZm9ybWF0IgorbXNnc3RyICIiCisKKyM6IHJhbmdlLWRpZmYuYzo1NgorbXNnaWQgImNvdWxkIG5vdCBzdGFydCBgbG9nYCIKK21zZ3N0ciAiIgorCisjOiByYW5nZS1kaWZmLmM6NTkKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBgbG9nYCBvdXRwdXQiCittc2dzdHIgIiIKKworIzogcmFuZ2UtZGlmZi5jOjc0IHNlcXVlbmNlci5jOjQ4MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbW1pdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJhbmdlLWRpZmYuYzoyMjQKK21zZ2lkICJmYWlsZWQgdG8gZ2VuZXJhdGUgZGlmZiIKK21zZ3N0ciAiIgorCisjOiByYW5nZS1kaWZmLmM6NDU1IHJhbmdlLWRpZmYuYzo0NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGxvZyBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6NjczCisjLCBjLWZvcm1hdAorbXNnaWQgIndpbGwgbm90IGFkZCBmaWxlIGFsaWFzICclcycgKCclcycgYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgpIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzo2ODkKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGFuIGVtcHR5IGJsb2IgaW4gdGhlIG9iamVjdCBkYXRhYmFzZSIKK21zZ3N0ciAiIgorIs60zrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDOus61zr3Ov8+NIGJsb2Igz4PPhM63IM6yzqzPg863IM60zrXOtM6/zrzOrc69z4nOvSDOsc69z4TOuc66zrXOuc68zq3Ovc+Jzr0iCisKKyM6IHJlYWQtY2FjaGUuYzo3MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbiBvbmx5IGFkZCByZWd1bGFyIGZpbGVzLCBzeW1ib2xpYyBsaW5rcyBvciBnaXQtZGlyZWN0b3JpZXMiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjc2NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5kZXggZmlsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzo3ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFkZCAnJXMnIHRvIGluZGV4IgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzo3OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MTMwNAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGFwcGVhcnMgYXMgYm90aCBhIGZpbGUgYW5kIGFzIGEgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxNDg5Cittc2dpZCAiUmVmcmVzaCBpbmRleCIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MTYwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5kZXgudmVyc2lvbiBzZXQsIGJ1dCB0aGUgdmFsdWUgaXMgaW52YWxpZC5cbiIKKyJVc2luZyB2ZXJzaW9uICVpIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxNjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJHSVRfSU5ERVhfVkVSU0lPTiBzZXQsIGJ1dCB0aGUgdmFsdWUgaXMgaW52YWxpZC5cbiIKKyJVc2luZyB2ZXJzaW9uICVpIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxNjg0CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaWduYXR1cmUgMHglMDh4IgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxNjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBpbmRleCB2ZXJzaW9uICVkIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxNjk2Cittc2dpZCAiYmFkIGluZGV4IGZpbGUgc2hhMSBzaWduYXR1cmUiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE3MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5kZXggdXNlcyAlLjRzIGV4dGVuc2lvbiwgd2hpY2ggd2UgZG8gbm90IHVuZGVyc3RhbmQiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE3MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJS40cyBleHRlbnNpb24iCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE3NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBpbmRleCBlbnRyeSBmb3JtYXQgMHglMDh4IgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzgxCisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBuYW1lIGZpZWxkIGluIHRoZSBpbmRleCwgbmVhciBwYXRoICclcyciCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE4MzYKK21zZ2lkICJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBpbiBpbmRleCIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MTgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGFnZSBlbnRyaWVzIGZvciBtZXJnZWQgZmlsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxODQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVub3JkZXJlZCBzdGFnZSBlbnRyaWVzIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxOTQ5IHJlYWQtY2FjaGUuYzoyMjI3IHJlcmVyZS5jOjU2NSByZXJlcmUuYzo1OTkgcmVyZXJlLmM6MTExMQorIzogYnVpbHRpbi9hZGQuYzo0NTkgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzggYnVpbHRpbi9jaGVja291dC5jOjI5NAorIzogYnVpbHRpbi9jaGVja291dC5jOjYyMiBidWlsdGluL2NoZWNrb3V0LmM6OTkxIGJ1aWx0aW4vY2xlYW4uYzo5NTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzQ0IGJ1aWx0aW4vZGlmZi10cmVlLmM6MTE2IGJ1aWx0aW4vZ3JlcC5jOjQ5OAorIzogYnVpbHRpbi9tdi5jOjE0NSBidWlsdGluL3Jlc2V0LmM6MjQ1IGJ1aWx0aW4vcm0uYzoyNzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzozMzAKK21zZ2lkICJpbmRleCBmaWxlIGNvcnJ1cHQiCittc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IM61z4XPgc61z4TOt8+Bzq/Ov8+FIM61zq/Ovc6xzrkgzrrOsc+EzrXPg8+Ez4HOsc68zrzOrc69zr8iCisKKyM6IHJlYWQtY2FjaGUuYzoyMDkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGpvaW4gbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGluZGV4IGZpbGUgb3BlbiBmYWlsZWQiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbm5vdCBzdGF0IHRoZSBvcGVuIGluZGV4IgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbmRleCBmaWxlIHNtYWxsZXIgdGhhbiBleHBlY3RlZCIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG1hcCBpbmRleCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9pbmRleF9leHRlbnNpb25zIHRocmVhZDogJXMiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIyMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGpvaW4gbG9hZF9pbmRleF9leHRlbnNpb25zIHRocmVhZDogJXMiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZyZXNoZW4gc2hhcmVkIGluZGV4ICclcyciCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIyNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYnJva2VuIGluZGV4LCBleHBlY3QgJXMgaW4gJXMsIGdvdCAlcyIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6Mjk3MSBzZXF1ZW5jZXIuYzo0NzkxIHdyYXBwZXIuYzo2NTggYnVpbHRpbi9tZXJnZS5jOjEwODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNsb3NlICclcyciCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjMwNDQgc2VxdWVuY2VyLmM6MjIzNyBzZXF1ZW5jZXIuYzozNjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0ICclcyciCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjMwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZ2l0IGRpcjogJXMiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjMwNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVubGluazogJXMiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjMwODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpeCBwZXJtaXNzaW9uIGJpdHMgb24gJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MzIzNworIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2Fubm90IGRyb3AgdG8gc3RhZ2UgIzAiCittc2dzdHIgIiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTAKK21zZ2lkICIiCisiXG4iCisiQ29tbWFuZHM6XG4iCisicCwgcGljayA8Y29tbWl0PiA9IHVzZSBjb21taXRcbiIKKyJyLCByZXdvcmQgPGNvbW1pdD4gPSB1c2UgY29tbWl0LCBidXQgZWRpdCB0aGUgY29tbWl0IG1lc3NhZ2VcbiIKKyJlLCBlZGl0IDxjb21taXQ+ID0gdXNlIGNvbW1pdCwgYnV0IHN0b3AgZm9yIGFtZW5kaW5nXG4iCisicywgc3F1YXNoIDxjb21taXQ+ID0gdXNlIGNvbW1pdCwgYnV0IG1lbGQgaW50byBwcmV2aW91cyBjb21taXRcbiIKKyJmLCBmaXh1cCA8Y29tbWl0PiA9IGxpa2UgXCJzcXVhc2hcIiwgYnV0IGRpc2NhcmQgdGhpcyBjb21taXQncyBsb2cgbWVzc2FnZVxuIgorIngsIGV4ZWMgPGNvbW1hbmQ+ID0gcnVuIGNvbW1hbmQgKHRoZSByZXN0IG9mIHRoZSBsaW5lKSB1c2luZyBzaGVsbFxuIgorImIsIGJyZWFrID0gc3RvcCBoZXJlIChjb250aW51ZSByZWJhc2UgbGF0ZXIgd2l0aCAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJylcbiIKKyJkLCBkcm9wIDxjb21taXQ+ID0gcmVtb3ZlIGNvbW1pdFxuIgorImwsIGxhYmVsIDxsYWJlbD4gPSBsYWJlbCBjdXJyZW50IEhFQUQgd2l0aCBhIG5hbWVcbiIKKyJ0LCByZXNldCA8bGFiZWw+ID0gcmVzZXQgSEVBRCB0byBhIGxhYmVsXG4iCisibSwgbWVyZ2UgWy1DIDxjb21taXQ+IHwgLWMgPGNvbW1pdD5dIDxsYWJlbD4gWyMgPG9uZWxpbmU+XVxuIgorIi4gICAgICAgY3JlYXRlIGEgbWVyZ2UgY29tbWl0IHVzaW5nIHRoZSBvcmlnaW5hbCBtZXJnZSBjb21taXQnc1xuIgorIi4gICAgICAgbWVzc2FnZSAob3IgdGhlIG9uZWxpbmUsIGlmIG5vIG9yaWdpbmFsIG1lcmdlIGNvbW1pdCB3YXNcbiIKKyIuICAgICAgIHNwZWNpZmllZCkuIFVzZSAtYyA8Y29tbWl0PiB0byByZXdvcmQgdGhlIGNvbW1pdCBtZXNzYWdlLlxuIgorIlxuIgorIlRoZXNlIGxpbmVzIGNhbiBiZSByZS1vcmRlcmVkOyB0aGV5IGFyZSBleGVjdXRlZCBmcm9tIHRvcCB0byBib3R0b20uXG4iCittc2dzdHIgIiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MzEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE3MworbXNnaWQgIiIKKyJcbiIKKyJEbyBub3QgcmVtb3ZlIGFueSBsaW5lLiBVc2UgJ2Ryb3AnIGV4cGxpY2l0bHkgdG8gcmVtb3ZlIGEgY29tbWl0LlxuIgorbXNnc3RyICIiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjM0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNzcKK21zZ2lkICIiCisiXG4iCisiSWYgeW91IHJlbW92ZSBhIGxpbmUgaGVyZSBUSEFUIENPTU1JVCBXSUxMIEJFIExPU1QuXG4iCittc2dzdHIgIiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NDAgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgxNgorbXNnaWQgIiIKKyJcbiIKKyJZb3UgYXJlIGVkaXRpbmcgdGhlIHRvZG8gZmlsZSBvZiBhbiBvbmdvaW5nIGludGVyYWN0aXZlIHJlYmFzZS5cbiIKKyJUbyBjb250aW51ZSByZWJhc2UgYWZ0ZXIgZWRpdGluZywgcnVuOlxuIgorIiAgICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo0NSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODkzCittc2dpZCAiIgorIlxuIgorIkhvd2V2ZXIsIGlmIHlvdSByZW1vdmUgZXZlcnl0aGluZywgdGhlIHJlYmFzZSB3aWxsIGJlIGFib3J0ZWQuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NTEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwMAorbXNnaWQgIk5vdGUgdGhhdCBlbXB0eSBjb21taXRzIGFyZSBjb21tZW50ZWQgb3V0IgorbXNnc3RyICIiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjYyIHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjc1IHNlcXVlbmNlci5jOjIyMTkKKyM6IHNlcXVlbmNlci5jOjQ1Njkgc2VxdWVuY2VyLmM6NDYyNSBzZXF1ZW5jZXIuYzo0OTAwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkICclcycuIgorbXNnc3RyICIiCisKKyM6IHJlZnMuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBvYmplY3QhIgorbXNnc3RyICIiCisKKyM6IHJlZnMuYzo1ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGFuZ2xpbmcgc3ltcmVmICVzIgorbXNnc3RyICIiCisKKyM6IHJlZnMuYzo1ODUgcmVmLWZpbHRlci5jOjE5NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgYnJva2VuIHJlZiAlcyIKK21zZ3N0ciAiIgorCisjOiByZWZzLmM6NzExCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmc6ICVzIgorbXNnc3RyICLOtM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM+MIM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FICclcycgzrPOuc6xIM61zrPOs8+BzrHPhs6uOiAlcyIKKworIzogcmVmcy5jOjcyMSByZWZzLmM6NzcyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlZnMuYzo3MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmICclcycgYWxyZWFkeSBleGlzdHMiCittc2dzdHIgIiIKKworIzogcmVmcy5jOjczMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIG9iamVjdCBJRCB3aGVuIHdyaXRpbmcgJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZWZzLmM6NzQwIHNlcXVlbmNlci5jOjM5NiBzZXF1ZW5jZXIuYzoyNTQ5IHNlcXVlbmNlci5jOjI2NzUKKyM6IHNlcXVlbmNlci5jOjI2ODkgc2VxdWVuY2VyLmM6MjkyMyBzZXF1ZW5jZXIuYzo0Nzg5IHNlcXVlbmNlci5jOjQ4NTIKKyM6IHdyYXBwZXIuYzo2NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHdyaXRlIHRvICclcyciCittc2dzdHIgIiIKKworIzogcmVmcy5jOjc2NyBzZXF1ZW5jZXIuYzo0Nzg3IHNlcXVlbmNlci5jOjQ4NDYgd3JhcHBlci5jOjIyNSB3cmFwcGVyLmM6Mzk1CisjOiBidWlsdGluL2FtLmM6NzEzIGJ1aWx0aW4vcmViYXNlLmM6NTc1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmciCittc2dzdHIgIs60zrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ez4wgz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgJyVzJyDOs865zrEgzrXOs86zz4HOsc+Gzq4iCisKKyM6IHJlZnMuYzo3NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBvYmplY3QgSUQgd2hlbiBkZWxldGluZyAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlZnMuYzo5MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciByZWYgJXMgaGFzIGdhcCBhZnRlciAlcyIKK21zZ3N0ciAiIgorCisjOiByZWZzLmM6OTExCisjLCBjLWZvcm1hdAorbXNnaWQgImxvZyBmb3IgcmVmICVzIHVuZXhwZWN0ZWRseSBlbmRlZCBvbiAlcyIKK21zZ3N0ciAiIgorCisjOiByZWZzLmM6OTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvZyBmb3IgJXMgaXMgZW1wdHkiCittc2dzdHIgIiIKKworIzogcmVmcy5jOjEwNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmdXNpbmcgdG8gdXBkYXRlIHJlZiB3aXRoIGJhZCBuYW1lICclcyciCittc2dzdHIgIiIKKworIzogcmVmcy5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAidXBkYXRlX3JlZiBmYWlsZWQgZm9yIHJlZiAnJXMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiByZWZzLmM6MTkxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSB1cGRhdGVzIGZvciByZWYgJyVzJyBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorCisjOiByZWZzLmM6MTk0MworbXNnaWQgInJlZiB1cGRhdGVzIGZvcmJpZGRlbiBpbnNpZGUgcXVhcmFudGluZSBlbnZpcm9ubWVudCIKK21zZ3N0ciAiIgorCisjOiByZWZzLmM6MjAzOSByZWZzLmM6MjA2OQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGV4aXN0czsgY2Fubm90IGNyZWF0ZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlZnMuYzoyMDQ1IHJlZnMuYzoyMDgwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBwcm9jZXNzICclcycgYW5kICclcycgYXQgdGhlIHNhbWUgdGltZSIKK21zZ3N0ciAiIgorCisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjI4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgcmVmZXJlbmNlICVzIgorbXNnc3RyICIiCisKKyM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDIgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1MzIKKyM6IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgcmVmZXJlbmNlICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjQ1IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgcmVmZXJlbmNlczogJXMiCittc2dzdHIgIiIKKworIzogcmVmc3BlYy5jOjEzNworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZnNwZWMgJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6Mzkgd3Qtc3RhdHVzLmM6MTg2MQorbXNnaWQgImdvbmUiCittc2dzdHIgIs60zrXOvSDPhc+AzqzPgc+HzrXOuSDPgM65zrEiCisKKyM6IHJlZi1maWx0ZXIuYzo0MAorIywgYy1mb3JtYXQKK21zZ2lkICJhaGVhZCAlZCIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmVoaW5kICVkIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzo0MgorIywgYy1mb3JtYXQKK21zZ2lkICJhaGVhZCAlZCwgYmVoaW5kICVkIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzoxMzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgZm9ybWF0OiAlJShjb2xvcjo8Y29sb3I+KSIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBjb2xvcjogJSUoY29sb3I6JXMpIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzoxNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW50ZWdlciB2YWx1ZSBleHBlY3RlZCByZWZuYW1lOmxzdHJpcD0lcyIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIkludGVnZXIgdmFsdWUgZXhwZWN0ZWQgcmVmbmFtZTpyc3RyaXA9JXMiCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUoJXMpIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MjIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiUlKG9iamVjdHR5cGUpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkICUlKG9iamVjdHNpemUpIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiUlKGRlbHRhYmFzZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjI2NQorIywgYy1mb3JtYXQKK21zZ2lkICIlJShib2R5KSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiUlKHN1YmplY3QpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzoyOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biAlJSh0cmFpbGVycykgYXJndW1lbnQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzozMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAicG9zaXRpdmUgdmFsdWUgZXhwZWN0ZWQgY29udGVudHM6bGluZXM9JXMiCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjMyNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUoY29udGVudHMpIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MzQyCisjLCBjLWZvcm1hdAorbXNnaWQgInBvc2l0aXZlIHZhbHVlIGV4cGVjdGVkIG9iamVjdG5hbWU6c2hvcnQ9JXMiCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjM0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUob2JqZWN0bmFtZSkgYXJndW1lbnQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgZm9ybWF0OiAlJShhbGlnbjo8d2lkdGg+LDxwb3NpdGlvbj4pIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIHBvc2l0aW9uOiVzIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIHdpZHRoOiVzIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkICUlKGFsaWduKSBhcmd1bWVudDogJXMiCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJwb3NpdGl2ZSB3aWR0aCBleHBlY3RlZCB3aXRoIHRoZSAlJShhbGlnbikgYXRvbSIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6NDMwCisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCAlJShpZikgYXJndW1lbnQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzo1MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIGZpZWxkIG5hbWU6ICUuKnMiCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjU1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZpZWxkIG5hbWU6ICUuKnMiCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibm90IGEgZ2l0IHJlcG9zaXRvcnksIGJ1dCB0aGUgZmllbGQgJyUuKnMnIHJlcXVpcmVzIGFjY2VzcyB0byBvYmplY3QgZGF0YSIKK21zZ3N0ciAiIgorIs60zrXOvSDOtc6vzr3Osc65IM6xz4DOv864zrXPhM6uz4HOuc6/IGdpdCwgzrHOu867zqwgz4TOvyDPgM61zrTOr86/ICclLipzJyDPh8+BzrXOuc6szrbOtc+EzrHOuSDPgM+Bz4zPg86yzrHPg863IM+Dz4TOsSAiCisizrTOtc60zr/OvM6tzr3OsSDOsc69z4TOuc66zrXOuc68zq3Ovc+Jzr0iCisKKyM6IHJlZi1maWx0ZXIuYzo2ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJShpZikgYXRvbSB1c2VkIHdpdGhvdXQgYSAlJSh0aGVuKSBhdG9tIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzo3NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgd2l0aG91dCBhbiAlJShpZikgYXRvbSIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6NzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzo3NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgYWZ0ZXIgJSUoZWxzZSkiCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjc3NworIywgYy1mb3JtYXQKK21zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCB3aXRob3V0IGFuICUlKGlmKSBhdG9tIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzo3NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgd2l0aG91dCBhICUlKHRoZW4pIGF0b20iCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjc4MQorIywgYy1mb3JtYXQKK21zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCBtb3JlIHRoYW4gb25jZSIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6Nzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUoZW5kKSBhdG9tIHVzZWQgd2l0aG91dCBjb3JyZXNwb25kaW5nIGF0b20iCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjg1MworIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgZm9ybWF0IHN0cmluZyAlcyIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MTQ0NworIywgYy1mb3JtYXQKK21zZ2lkICIobm8gYnJhbmNoLCByZWJhc2luZyAlcykiCittc2dzdHIgIijOus6xzr3Orc69zrHPgiDOus67zqzOtM6/z4IsIM6zzq/Ovc61z4TOsc65IHJlYmFzZSDPhM6/z4UgJXMpIgorCisjOiByZWYtZmlsdGVyLmM6MTQ1MAorIywgYy1mb3JtYXQKK21zZ2lkICIobm8gYnJhbmNoLCByZWJhc2luZyBkZXRhY2hlZCBIRUFEICVzKSIKK21zZ3N0ciAiKM66zrHOvc6tzr3Osc+CIM66zrvOrM60zr/PgiwgzrPOr869zrXPhM6xzrkgcmViYXNlIM+Ezr/PhSDOsc+Azr/Pg8+Fzr3OtM61zrTOtc68zq3Ovc6/z4UgSEVBRCAlcykiCisKKyM6IHJlZi1maWx0ZXIuYzoxNDUzCisjLCBjLWZvcm1hdAorbXNnaWQgIihubyBicmFuY2gsIGJpc2VjdCBzdGFydGVkIG9uICVzKSIKK21zZ3N0ciAiKM66zrHOvc6tzr3Osc+CIM66zrvOrM60zr/PgiwgzrcgzrTOuc+Hzr/PhM+MzrzOt8+DzrcgzqzPgc+HzrnPg861IM+Dz4TOvyAlcykiCisKKyMuIFRSQU5TTEFUT1JTOiBtYWtlIHN1cmUgdGhpcyBtYXRjaGVzICJIRUFECisjLiBkZXRhY2hlZCBhdCAiIGluIHd0LXN0YXR1cy5jCisjLgorIzogcmVmLWZpbHRlci5jOjE0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiKEhFQUQgZGV0YWNoZWQgYXQgJXMpIgorbXNnc3RyICIiCisKKyMuIFRSQU5TTEFUT1JTOiBtYWtlIHN1cmUgdGhpcyBtYXRjaGVzICJIRUFECisjLiBkZXRhY2hlZCBmcm9tICIgaW4gd3Qtc3RhdHVzLmMKKyMuCisjOiByZWYtZmlsdGVyLmM6MTQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICIoSEVBRCBkZXRhY2hlZCBmcm9tICVzKSIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MTQ3MgorbXNnaWQgIihubyBicmFuY2gpIgorbXNnc3RyICIozrrOsc69zq3Ovc6xz4IgzrrOu86szrTOv8+CKSIKKworIzogcmVmLWZpbHRlci5jOjE1MDYgcmVmLWZpbHRlci5jOjE2NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyBvYmplY3QgJXMgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzoxNTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnNlX29iamVjdF9idWZmZXIgZmFpbGVkIG9uICVzIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MTg4MgorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IGF0ICclcyciCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjE5NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgcmVmIHdpdGggYnJva2VuIG5hbWUgJXMiCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjIyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJShlbmQpIGF0b20gbWlzc2luZyIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW1lcmdlZCIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MjM1NQorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW5vLW1lcmdlZCIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IG5hbWUgJXMiCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjIzNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgbXVzdCBwb2ludCB0byBhIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlnIHJlbW90ZSBzaG9ydGhhbmQgY2Fubm90IGJlZ2luIHdpdGggJy8nOiAlcyIKK21zZ3N0ciAiIgorIs63IM+Dz4XOvc+Ezr/OvM6/zrPPgc6xz4bOr86xIM+Bz43OuM68zrnPg863z4IgzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zr/PhSDOtM61IM6zzq/Ovc61z4TOsc65IM69zrEgzr7Otc66zrnOvc6sIM68zrUgJy8nOiAlcyIKKworIzogcmVtb3RlLmM6NDEwCittc2dpZCAibW9yZSB0aGFuIG9uZSByZWNlaXZlcGFjayBnaXZlbiwgdXNpbmcgdGhlIGZpcnN0IgorbXNnc3RyICLOtM+MzrjOt866zrHOvSDPgM61z4HOuc+Dz4PPjM+EzrXPgc6xIM6xz4DPjCDOrc69zrEgcmVjZWl2ZXBhY2ssIM6zzq/Ovc61z4TOsc65IM+Hz4HOrs+Dzrcgz4TOv8+FIM+Az4HPjs+Ezr/PhSIKKworIzogcmVtb3RlLmM6NDE4Cittc2dpZCAibW9yZSB0aGFuIG9uZSB1cGxvYWRwYWNrIGdpdmVuLCB1c2luZyB0aGUgZmlyc3QiCittc2dzdHIgIs60z4zOuM63zrrOsc69IM+AzrXPgc65z4PPg8+Mz4TOtc+BzrEgzrHPgM+MIM6tzr3OsSB1cGxvYWRwYWNrLCDOs86vzr3Otc+EzrHOuSDPh8+Bzq7Pg863IM+Ezr/PhSDPgM+Bz47PhM6/z4UiCisKKyM6IHJlbW90ZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgZmV0Y2ggYm90aCAlcyBhbmQgJXMgdG8gJXMiCittc2dzdHIgIs6UzrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDOsc69zqzOus+EzrfPg863IM+Ezr/PhSAlcyDOus6xzrkgz4TOv8+FICVzIM+EzrHPhc+Ez4zPh8+Bzr/Ovc6xIM+Dz4TOvyAlcyIKKworIzogcmVtb3RlLmM6NjEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHVzdWFsbHkgdHJhY2tzICVzLCBub3QgJXMiCittc2dzdHIgIs+Ezr8gJXMgz4PPhc69zq7OuM+Jz4Igz4DOsc+BzrHOus6/zrvOv8+FzrjOtc6vIM+Ezr8gJXMsIM+Mz4fOuSDPhM6/ICVzIgorCisjOiByZW1vdGUuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdHJhY2tzIGJvdGggJXMgYW5kICVzIgorbXNnc3RyICLPhM6/ICVzIM+AzrHPgc6xzrrOv867zr/Phc64zrXOryDPhM6xz4XPhM+Mz4fPgc6/zr3OsSDPhM6/ICVzIM66zrHOuSDPhM6/ICVzIgorCisjOiByZW1vdGUuYzo2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAia2V5ICclcycgb2YgcGF0dGVybiBoYWQgbm8gJyonIgorbXNnc3RyICLPhM6/IM66zrvOtc65zrTOryAnJXMnIM+Ezr/PhSDOvM6/z4TOr86yzr/PhSDOtM61zr0gzrXOr8+HzrUgJyonIgorCisjOiByZW1vdGUuYzo2OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgJyVzJyBvZiBwYXR0ZXJuIGhhcyBubyAnKiciCittc2dzdHIgIs63IM+EzrnOvM6uICclcycgz4TOv8+FIM68zr/PhM6vzrLOv8+FIM60zrXOvSDOrc+HzrXOuSAnKiciCisKKyM6IHJlbW90ZS5jOjEwMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgZG9lcyBub3QgbWF0Y2ggYW55IgorbXNnc3RyICLPhM6/IHJlZnNwZWMgz4DOt86zzq7PgiAlcyDOtM61zr0gz4TOsc65z4HOuc6szrbOtc65IM68zrUgzrrOsc69zq3Ovc6xIgorCisjOiByZW1vdGUuYzoxMDA1CisjLCBjLWZvcm1hdAorbXNnaWQgInNyYyByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAiz4TOvyByZWZzcGVjIM+AzrfOs86uz4IgJXMgz4TOsc65z4HOuc6szrbOtc65IM68zrUgz4DOtc+BzrnPg8+Dz4zPhM61z4HOsSDOsc+Az4wgzq3Ovc6xIgorCisjLiBUUkFOU0xBVE9SUzogIm1hdGNoZXMgJyVzJyUiIGlzIHRoZSA8ZHN0PiBwYXJ0IG9mICJnaXQgcHVzaAorIy4gPHJlbW90ZT4gPHNyYz46PGRzdD4iIHB1c2gsIGFuZCAiYmVpbmcgcHVzaGVkICgnJXMnKSIgaXMKKyMuIHRoZSA8c3JjPi4KKyMuCisjOiByZW1vdGUuYzoxMDIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZGVzdGluYXRpb24geW91IHByb3ZpZGVkIGlzIG5vdCBhIGZ1bGwgcmVmbmFtZSAoaS5lLixcbiIKKyJzdGFydGluZyB3aXRoIFwicmVmcy9cIikuIFdlIHRyaWVkIHRvIGd1ZXNzIHdoYXQgeW91IG1lYW50IGJ5OlxuIgorIlxuIgorIi0gTG9va2luZyBmb3IgYSByZWYgdGhhdCBtYXRjaGVzICclcycgb24gdGhlIHJlbW90ZSBzaWRlLlxuIgorIi0gQ2hlY2tpbmcgaWYgdGhlIDxzcmM+IGJlaW5nIHB1c2hlZCAoJyVzJylcbiIKKyIgIGlzIGEgcmVmIGluIFwicmVmcy97aGVhZHMsdGFnc30vXCIuIElmIHNvIHdlIGFkZCBhIGNvcnJlc3BvbmRpbmdcbiIKKyIgIHJlZnMve2hlYWRzLHRhZ3N9LyBwcmVmaXggb24gdGhlIHJlbW90ZSBzaWRlLlxuIgorIlxuIgorIk5laXRoZXIgd29ya2VkLCBzbyB3ZSBnYXZlIHVwLiBZb3UgbXVzdCBmdWxseSBxdWFsaWZ5IHRoZSByZWYuIgorbXNnc3RyICIiCisizp8gz4DPgc6/zr/Pgc65z4POvM+Mz4Igz4DOv8+FIM61zrnPg86xzrPOrM6zzrHPhM61IM60zrXOvSDOtc6vzr3Osc65IM+AzrvOrs+BzrXPgiByZWZuYW1lICjOtM63zrsuXG4iCisiz4DOv8+FIM69zrEgzrHPgc+Hzq/Ots61zrkgzrzOtSBcInJlZnMvXCIpLiDOoM+Bzr/Pg8+AzrHOuM6uz4POsc68zrUgzr3OsSDOvM6xzr3PhM6tz4jOv8+FzrzOtSDPhM65IM61zr3Ovc6/zrXOr8+EzrU6XG4iCisiXG4iCisiLSDOqM6sz4fOvc6/zr3PhM6xz4IgzrPOuc6xIHJlZiDPgM6/z4Ugzr3OsSDPhM6xzrnPgc65zqzOts61zrkgzrzOtSDPhM6/ICclcycgz4PPhM63zr0gzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zrcgz4DOu861z4XPgc6sLlxuIgorIi0gzprOrM69zr/Ovc+EzrHPgiDOrc67zrXOs8+Hzr8gzrXOrM69IM63IDzPgM63zrPOrj4gz4DOv8+FIM60zrfOvM6/z4POuc61z43Otc+EzrHOuSAoJyVzJylcbiIKKyIgIM61zq/Ovc6xzrkgcmVmIM68zq3Pg86xIM+DzrUgXCJyZWZzL3toZWFkcyx0YWdzfS9cIi4gzpHOvSDOtc6vzr3Osc65LCDPgM+Bzr/Pg864zq3PhM6/z4XOvM61IM+Ezr8gIgorIs6xzr3PhM6vz4PPhM6/zrnPh86/XG4iCisiICDPgM+Bz4zOuM61zrzOsSByZWZzL3toZWFkcyx0YWdzfS8gz4PPhM63zr0gzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zrcgz4DOu861z4XPgc6sLlxuIgorIlxuIgorIs6azrHOvc6tzr3OsSDOsc+Az4wgz4TOsSDOtM+Nzr8gzrTOtSDOtM6/z43Ou861z4jOtSwgzr/PgM+Mz4TOtSDOtc6zzrrOsc+EzrHOu861zq/PiM6xzrzOtS4gzqDPgc6tz4DOtc65IM69zrEgzrXOuc+DzqzOs861z4TOtSAiCisizr/Ou86/zrPPgc6sz4bPic+CIM+Ezr8gcmVmLiIKKworIzogcmVtb3RlLmM6MTA0MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSBjb21taXQgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byBjcmVhdGUgYSBuZXcgYnJhbmNoIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy9oZWFkcy8lcyc/IgorbXNnc3RyICIiCisizqTOvyDPg866zq3Ou86/z4IgPM+AzrfOs86uPiDPhM6/z4UgcmVmc3BlYyDOtc6vzr3Osc65IM6xzr3PhM65zrrOtc6vzrzOtc69zr8gz4XPgM6/zrLOv867zq7Pgi5cbiIKKyLOmM6tzrvOsc+EzrUgzr3OsSDOtM63zrzOuc6/z4XPgc6zzq7Pg861z4TOtSDOvc6tzr8gzrrOu86szrTOvyDOtM63zrzOv8+DzrnOtc+Nzr/Ovc+EzrHPgiDPg8+Ezr9cbiIKKyInJXM6cmVmcy90YWdzLyVzJzsiCisKKyM6IHJlbW90ZS5jOjEwNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgdGFnIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gY3JlYXRlIGEgbmV3IHRhZyBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisizqTOvyDPg866zq3Ou86/z4IgPM+AzrfOs86uPiDPhM6/z4UgcmVmc3BlYyDOtc6vzr3Osc65IM6xzr3PhM65zrrOtc6vzrzOtc69zr8gzrXPhM65zrrOrc+EzrHPgi5cbiIKKyLOmM6tzrvOsc+EzrUgzr3OsSDOtM63zrzOuc6/z4XPgc6zzq7Pg861z4TOtSDOvc6tzrEgzrXPhM65zrrOrc+EzrEgzrTOt868zr/Pg865zrXPjc6/zr3PhM6xz4Igz4PPhM6/XG4iCisiJyVzOnJlZnMvdGFncy8lcyc7IgorCisjOiByZW1vdGUuYzoxMDUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIHRyZWUgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byB0YWcgYSBuZXcgdHJlZSBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisizqTOvyDPg866zq3Ou86/z4IgPM+AzrfOs86uPiDPhM6/z4UgcmVmc3BlYyDOtc6vzr3Osc65IM6xzr3PhM65zrrOtc6vzrzOtc69zr8gzrTOrc69z4TPgc6/z4UuXG4iCisizpjOrc67zrHPhM61IM69zrEgzrLOrM67zrXPhM61IM61z4TOuc66zq3PhM6xIM+DzrUgzr3Orc6/IM60zq3Ovc+Ez4HOvyDOtM63zrzOv8+DzrnOtc+Nzr/Ovc+EzrHPgiDPg8+Ezr9cbiIKKyInJXM6cmVmcy90YWdzLyVzJzsiCisKKyM6IHJlbW90ZS5jOjEwNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgYmxvYiBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHRhZyBhIG5ldyBibG9iIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKyLOpM6/IM+DzrrOrc67zr/PgiA8z4DOt86zzq4+IM+Ezr/PhSByZWZzcGVjIM61zq/Ovc6xzrkgzrHOvc+EzrnOus61zq/OvM61zr3OvyBibG9iLlxuIgorIs6Yzq3Ou86xz4TOtSDOvc6xIM6yzqzOu861z4TOtSDOtc+EzrnOus6tz4TOsSDPg861IM69zq3OvyBibG9iIM60zrfOvM6/z4POuc61z43Ov869z4TOsc+CIM+Dz4TOv1xuIgorIiclczpyZWZzL3RhZ3MvJXMnOyIKKworIzogcmVtb3RlLmM6MTA5MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYnJhbmNoIgorbXNnc3RyICLOtM61IM68z4DOv8+BzrXOryDOvc6xIM6zzq/Ovc61zrkgz4TOsc+Nz4TOuc+Dzrcgz4TOv8+FICVzIM68zrUgzrrOu86szrTOvyIKKworIzogcmVtb3RlLmM6MTEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlICclcyc6IHJlbW90ZSByZWYgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIs60zrUgzrzPgM6/z4HOtc6vIM69zrEgzrPOr869zrXOuSDOtM65zrHOs8+BzrHPhs6uIM+Ezr/PhSAnJXMnOiDPhM6/IM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/IHJlZiDOtM61zr0gz4XPgM6sz4HPh861zrkiCisKKyM6IHJlbW90ZS5jOjExMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHN0IHJlZnNwZWMgJXMgbWF0Y2hlcyBtb3JlIHRoYW4gb25lIgorbXNnc3RyICLPhM6/IHJlZnNwZWMgz4DPgc6/zr/Pgc65z4POvM6/z40gJXMgz4TOsc65z4HOuc6szrbOtc65IM68zrUgz4DOtc+BzrnPg8+Dz4zPhM61z4HOsSDOsc+Az4wgzq3Ovc6xIgorCisjOiByZW1vdGUuYzoxMTIxCisjLCBjLWZvcm1hdAorbXNnaWQgImRzdCByZWYgJXMgcmVjZWl2ZXMgZnJvbSBtb3JlIHRoYW4gb25lIHNyYyIKK21zZ3N0ciAiz4TOvyByZWYgz4DPgc6/zr/Pgc65z4POvM6/z40gJXMgzrvOsc68zrLOrM69zrXOuSDOsc+Az4wgz4DOtc+BzrnPg8+Dz4zPhM61z4HOtc+CIM6xz4DPjCDOvM6vzrEgz4DOt86zzq3PgiIKKworIzogcmVtb3RlLmM6MTYyNCByZW1vdGUuYzoxNzI1Cittc2dpZCAiSEVBRCBkb2VzIG5vdCBwb2ludCB0byBhIGJyYW5jaCIKK21zZ3N0ciAizqTOvyBIRUFEIM60zrUgzrTOtc6vz4fOvc61zrkgz4POtSDOus6sz4DOv865zr/OvSDOus67zqzOtM6/IgorCisjOiByZW1vdGUuYzoxNjMzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggYnJhbmNoOiAnJXMnIgorbXNnc3RyICLOtM61zr0gz4XPgM6sz4HPh861zrkgzr8gzrrOu86szrTOv8+COiAnJXMnIgorCisjOiByZW1vdGUuYzoxNjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHVwc3RyZWFtIGNvbmZpZ3VyZWQgZm9yIGJyYW5jaCAnJXMnIgorbXNnc3RyICLOtM61zr0gzq3Ph861zrkgz4HPhc64zrzOuc+Dz4TOtc6vIM+Az4HOv8+CIM+EzrEgz4DOrM69z4kgzrPOuc6xIM+Ezr/OvSDOus67zqzOtM6/ICclcyciCisKKyM6IHJlbW90ZS5jOjE2NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidXBzdHJlYW0gYnJhbmNoICclcycgbm90IHN0b3JlZCBhcyBhIHJlbW90ZS10cmFja2luZyBicmFuY2giCittc2dzdHIgIiIKKyLOvyDPgM+Bzr/PgiDPhM6xIM+AzqzOvc+JIM66zrvOrM60zr/PgiAnJXMnIM60zrXOvSDOsc+Azr/OuM63zrrOtc+NzrXPhM6xzrkgz4nPgiDOus67zqzOtM6/z4Igz4DOsc+BzrHOus6/zrvOv8+NzrjOt8+DzrfPgiAiCisizrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zr/PhSIKKworIzogcmVtb3RlLmM6MTY1NworIywgYy1mb3JtYXQKK21zZ2lkICJwdXNoIGRlc3RpbmF0aW9uICclcycgb24gcmVtb3RlICclcycgaGFzIG5vIGxvY2FsIHRyYWNraW5nIGJyYW5jaCIKK21zZ3N0ciAiIgorIs6/IM+Az4HOv86/z4HOuc+DzrzPjM+CIM60zrfOvM6/z4POr861z4XPg863z4IgJyVzJyDPg8+Ezr/OvSDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3OvyDOtc6+z4XPgM63z4HOtc+EzrfPhM6uICclcycgzrTOtc69IM6tz4fOtc65ICIKKyLPhM6/z4DOuc66z4wgzrrOu86szrTOvyDPgM6xz4HOsc66zr/Ou86/z43OuM63z4POt8+CIgorCisjOiByZW1vdGUuYzoxNjY5CisjLCBjLWZvcm1hdAorbXNnaWQgImJyYW5jaCAnJXMnIGhhcyBubyByZW1vdGUgZm9yIHB1c2hpbmciCittc2dzdHIgIs6/IM66zrvOrM60zr/PgiAnJXMnIM60zrXOvSDOrc+HzrXOuSDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3OvyDOs865zrEgzrTOt868zr/Pg86vzrXPhc+DzrciCisKKyM6IHJlbW90ZS5jOjE2NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAicHVzaCByZWZzcGVjcyBmb3IgJyVzJyBkbyBub3QgaW5jbHVkZSAnJXMnIgorbXNnc3RyICLPhM6xIHJlZnNwZWMgzrTOt868zr/Pg86vzrXPhc+DzrfPgiDOs865zrEgz4TOvyAnJXMnIM60zrXOvSDPgM61z4HOuc67zrHOvM6yzqzOvc6/z4XOvSDPhM6/ICclcyciCisKKyM6IHJlbW90ZS5jOjE2OTIKK21zZ2lkICJwdXNoIGhhcyBubyBkZXN0aW5hdGlvbiAocHVzaC5kZWZhdWx0IGlzICdub3RoaW5nJykiCittc2dzdHIgIiIKKyLOtyDOtM63zrzOv8+Dzq/Otc+Fz4POtyDOtM61zr0gzq3Ph861zrkgz4DPgc6/zr/Pgc65z4POvM+MICjPhM6/IHB1c2guZGVmYXVsdCDOtc6vzr3Osc65IM+Ezr8gz4TOr8+Azr/PhM6xOiAnbm90aGluZycpIgorCisjOiByZW1vdGUuYzoxNzE0Cittc2dpZCAiY2Fubm90IHJlc29sdmUgJ3NpbXBsZScgcHVzaCB0byBhIHNpbmdsZSBkZXN0aW5hdGlvbiIKK21zZ3N0ciAizrTOtSDOvM+Azr/Pgc61zq8gzr3OsSDOs86vzr3Otc65IM+EzrHPjc+EzrnPg863ICdzaW1wbGUnIM60zrfOvM6/z4POr861z4XPg863z4Igz4POtSDOrc69zrHOvSDOvM+Mzr3OvyDPgM+Bzr/Ov8+BzrnPg868z4wiCisKKyM6IHJlbW90ZS5jOjE4NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgZmluZCByZW1vdGUgcmVmICVzIgorbXNnc3RyICLOtM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM6uIM63IM61z43Pgc61z4POtyDPhM6/z4UgzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zr/PhSByZWYgJXMiCisKKyM6IHJlbW90ZS5jOjE4NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiKiBJZ25vcmluZyBmdW5ueSByZWYgJyVzJyBsb2NhbGx5IgorbXNnc3RyICIqIM6Tzq/Ovc61z4TOsc65IM+AzrHPgc6szrLOu861z4jOtyDPhM6/z4Ugz4DOsc+BzqzOvs61zr3Ov8+FIHJlZiAnJXMnIM+Ezr/PgM65zrrOrCIKKworIzogcmVtb3RlLmM6MTk5MAorIywgYy1mb3JtYXQKK21zZ2lkICJZb3VyIGJyYW5jaCBpcyBiYXNlZCBvbiAnJXMnLCBidXQgdGhlIHVwc3RyZWFtIGlzIGdvbmUuXG4iCittc2dzdHIgIiIKKyLOnyDOus67zqzOtM6/z4Igz4POsc+CIM6yzrHPg86vzrbOtc+EzrHOuSDPgM6szr3PiSDPg8+Ezr8gJyVzJywgzrHOu867zqwgz4TOvyDPgM+Bzr/PgiDPhM6xIM+AzqzOvc+JIM60zrXOvSDPhc+AzqzPgc+HzrXOuSDPgM65zrEuXG4iCisKKyM6IHJlbW90ZS5jOjE5OTQKK21zZ2lkICIgICh1c2UgXCJnaXQgYnJhbmNoIC0tdW5zZXQtdXBzdHJlYW1cIiB0byBmaXh1cClcbiIKK21zZ3N0ciAiIgorIiAgKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgYnJhbmNoIC0tdW5zZXQtdXBzdHJlYW1cIiDOs865zrEgzr3OsSDOtc+AzrnOtM65zr/Pgc64z47Pg861z4TOtSlcbiIKKworIzogcmVtb3RlLmM6MTk5NworIywgYy1mb3JtYXQKK21zZ2lkICJZb3VyIGJyYW5jaCBpcyB1cCB0byBkYXRlIHdpdGggJyVzJy5cbiIKK21zZ3N0ciAizp8gzrrOu86szrTOv8+CIM+DzrHPgiDOtc6vzr3Osc65IM61zr3Ors68zrXPgc6/z4IgzrzOtSDPhM6/ICclcycuXG4iCisKKyM6IHJlbW90ZS5jOjIwMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91ciBicmFuY2ggYW5kICclcycgcmVmZXIgdG8gZGlmZmVyZW50IGNvbW1pdHMuXG4iCittc2dzdHIgIs6fIM66zrvOrM60zr/PgiDPg86xz4IgzrrOsc65IM+Ezr8gJyVzJyDOsc69zrHPhs6tz4HOv869z4TOsc65IM+DzrUgzrTOuc6xz4bOv8+BzrXPhM65zrrOrc+CIM+Fz4DOv86yzr/Ou86tz4IuXG4iCisKKyM6IHJlbW90ZS5jOjIwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAodXNlIFwiJXNcIiBmb3IgZGV0YWlscylcbiIKK21zZ3N0ciAiICAoz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtSBcIiVzXCIgzrPOuc6xIM67zrXPgM+Ezr/OvM6tz4HOtc65zrXPgilcbiIKKworIzogcmVtb3RlLmM6MjAwOAorIywgYy1mb3JtYXQKK21zZ2lkICJZb3VyIGJyYW5jaCBpcyBhaGVhZCBvZiAnJXMnIGJ5ICVkIGNvbW1pdC5cbiIKK21zZ2lkX3BsdXJhbCAiWW91ciBicmFuY2ggaXMgYWhlYWQgb2YgJyVzJyBieSAlZCBjb21taXRzLlxuIgorbXNnc3RyWzBdICLOnyDOus67zqzOtM6/z4Igz4POsc+CIM61zq/Ovc6xzrkgzrzPgM+Bzr/Pg8+EzqwgzrHPgM+MIM+Ezr8gJyVzJyDOus6xz4TOrCAlZCDPhc+Azr/Oss6/zrvOri5cbiIKK21zZ3N0clsxXSAizp8gzrrOu86szrTOv8+CIM+DzrHPgiDOtc6vzr3Osc65IM68z4DPgc6/z4PPhM6sIM6xz4DPjCDPhM6/ICclcycgzrrOsc+EzqwgJWQgz4XPgM6/zrLOv867zq3Pgi5cbiIKKworIzogcmVtb3RlLmM6MjAxNAorbXNnaWQgIiAgKHVzZSBcImdpdCBwdXNoXCIgdG8gcHVibGlzaCB5b3VyIGxvY2FsIGNvbW1pdHMpXG4iCittc2dzdHIgIiIKKyIgICjPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IFwiZ2l0IHB1c2hcIiDOs865zrEgzr3OsSDOtM63zrzOv8+DzrnOtc+Nz4POtc+EzrUgz4TOuc+CIM+Ezr/PgM65zrrOrc+CIM+DzrHPgiAiCisiz4XPgM6/zrLOv867zq3PgilcbiIKKworIzogcmVtb3RlLmM6MjAxNworIywgYy1mb3JtYXQKK21zZ2lkICJZb3VyIGJyYW5jaCBpcyBiZWhpbmQgJyVzJyBieSAlZCBjb21taXQsIGFuZCBjYW4gYmUgZmFzdC1mb3J3YXJkZWQuXG4iCittc2dpZF9wbHVyYWwgIiIKKyJZb3VyIGJyYW5jaCBpcyBiZWhpbmQgJyVzJyBieSAlZCBjb21taXRzLCBhbmQgY2FuIGJlIGZhc3QtZm9yd2FyZGVkLlxuIgorbXNnc3RyWzBdICIiCisizp8gzrrOu86szrTOv8+CIM+DzrHPgiDOtc6vzr3Osc65IM+Azq/Pg8+JIM6xz4DPjCDPhM6/ICclcycgzrrOsc+EzqwgJWQgz4XPgM6/zrLOv867zq4sIM66zrHOuSDOvM+Azr/Pgc61zq8gzr3OsSDOus6szr3Otc65ICIKKyLPhM6xz4fOtc6vzrEgz4DPgc6/z47OuM63z4POty5cbiIKK21zZ3N0clsxXSAiIgorIs6fIM66zrvOrM60zr/PgiDPg86xz4IgzrXOr869zrHOuSDPgM6vz4PPiSDOsc+Az4wgz4TOvyAnJXMnIM66zrHPhM6sICVkIM+Fz4DOv86yzr/Ou86tz4IsIM66zrHOuSDOvM+Azr/Pgc61zq8gzr3OsSDOus6szr3Otc65ICIKKyLPhM6xz4fOtc6vzrEgz4DPgc6/z47OuM63z4POty5cbiIKKworIzogcmVtb3RlLmM6MjAyNQorbXNnaWQgIiAgKHVzZSBcImdpdCBwdWxsXCIgdG8gdXBkYXRlIHlvdXIgbG9jYWwgYnJhbmNoKVxuIgorbXNnc3RyICIiCisiICAoz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtSBcImdpdCBwdWxsXCIgzrPOuc6xIM69zrEgzrXOvc63zrzOtc+Bz47Pg861z4TOtSDPhM6/zr0gz4TOv8+AzrnOus+MIM+DzrHPgiDOus67zqzOtM6/KVxuIgorCisjOiByZW1vdGUuYzoyMDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGJyYW5jaCBhbmQgJyVzJyBoYXZlIGRpdmVyZ2VkLFxuIgorImFuZCBoYXZlICVkIGFuZCAlZCBkaWZmZXJlbnQgY29tbWl0IGVhY2gsIHJlc3BlY3RpdmVseS5cbiIKK21zZ2lkX3BsdXJhbCAiIgorIllvdXIgYnJhbmNoIGFuZCAnJXMnIGhhdmUgZGl2ZXJnZWQsXG4iCisiYW5kIGhhdmUgJWQgYW5kICVkIGRpZmZlcmVudCBjb21taXRzIGVhY2gsIHJlc3BlY3RpdmVseS5cbiIKK21zZ3N0clswXSAiIgorIs6fIM66zrvOrM60zr/PgiDPg86xz4IgzrrOsc65IM+Ezr8gJyVzJyDOrc+Hzr/Phc69IM6xz4DOv866zrvOr869zrXOuSxcbiIKKyLOus6xzrkgzq3Ph86/z4XOvSAlZCDOus6xzrkgJWQgzrTOuc6xz4bOv8+BzrXPhM65zrrOriDPhc+Azr/Oss6/zrvOriDOvyDOus6xzrjOrc69zrHPgiwgzrHOvc+Ezq/Pg8+Ezr/Ouc+HzrEuXG4iCittc2dzdHJbMV0gIiIKKyLOnyDOus67zqzOtM6/z4Igz4POsc+CIM66zrHOuSDPhM6/ICclcycgzq3Ph86/z4XOvSDOsc+Azr/Ous67zq/Ovc61zrksXG4iCisizrrOsc65IM6tz4fOv8+Fzr0gJWQgzrrOsc65ICVkIM60zrnOsc+Gzr/Pgc61z4TOuc66zq3PgiDPhc+Azr/Oss6/zrvOrc+CIM6/IM66zrHOuM6tzr3Osc+CLCDOsc69z4TOr8+Dz4TOv865z4fOsS5cbiIKKworIzogcmVtb3RlLmM6MjAzOAorbXNnaWQgIiAgKHVzZSBcImdpdCBwdWxsXCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycylcbiIKK21zZ3N0ciAiIgorIiAgKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgcHVsbFwiIM6zzrnOsSDOvc6xIM+Dz4XOs8+Hz4nOvc61z43Pg861z4TOtSDPhM6/zr0gzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zr8gzrrOu86szrTOvyAiCisizrzOrc+DzrEgz4PPhM6/zr0gzrTOuc66z4wgz4POsc+CKVxuIgorCisjOiByZW1vdGUuYzoyMjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBwYXJzZSBleHBlY3RlZCBvYmplY3QgbmFtZSAnJXMnIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgzrHOvc6szrvPhc+Dzrcgz4TOv8+FIM6xzr3Osc68zrXOvc+MzrzOtc69zr/PhSDOv869z4zOvM6xz4TOv8+CIM6xzr3PhM65zrrOtc65zrzOrc69zr/PhSAnJXMnIgorCisjOiByZXBsYWNlLW9iamVjdC5jOjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCByZXBsYWNlIHJlZiBuYW1lOiAlcyIKK21zZ3N0ciAiIgorCisjOiByZXBsYWNlLW9iamVjdC5jOjMwCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSByZXBsYWNlIHJlZjogJXMiCittc2dzdHIgIiIKKworIzogcmVwbGFjZS1vYmplY3QuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZXBsYWNlIGRlcHRoIHRvbyBoaWdoIGZvciBvYmplY3QgJXMiCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6MjE3IHJlcmVyZS5jOjIyNiByZXJlcmUuYzoyMjkKK21zZ2lkICJjb3JydXB0IE1FUkdFX1JSIgorbXNnc3RyICIiCisKKyM6IHJlcmVyZS5jOjI2NCByZXJlcmUuYzoyNjkKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcmVyZXJlIHJlY29yZCIKK21zZ3N0ciAiIgorCisjOiByZXJlcmUuYzo0ODUgcmVyZXJlLmM6NjkyIHNlcXVlbmNlci5jOjMxODYgc2VxdWVuY2VyLmM6MzIxMgorIzogYnVpbHRpbi9mc2NrLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlcmVyZS5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSB3ZXJlIGVycm9ycyB3aGlsZSB3cml0aW5nICclcycgKCVzKSIKK21zZ3N0ciAiIgorCisjOiByZXJlcmUuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICclcyciCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6NTAzIHJlcmVyZS5jOjEwMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbmZsaWN0IGh1bmtzIGluICclcyciCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB1dGltZSgpIG9uICclcyciCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6Njk0CisjLCBjLWZvcm1hdAorbXNnaWQgIndyaXRpbmcgJyVzJyBmYWlsZWQiCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6NzE0CisjLCBjLWZvcm1hdAorbXNnaWQgIlN0YWdlZCAnJXMnIHVzaW5nIHByZXZpb3VzIHJlc29sdXRpb24uIgorbXNnc3RyICIiCisKKyM6IHJlcmVyZS5jOjc1MworIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCByZXNvbHV0aW9uIGZvciAnJXMnLiIKK21zZ3N0ciAiIgorCisjOiByZXJlcmUuYzo3ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVzb2x2ZWQgJyVzJyB1c2luZyBwcmV2aW91cyByZXNvbHV0aW9uLiIKK21zZ3N0ciAizqTOsc+Fz4TOr8+Dz4TOt866zrUgz4TOvyAnJXMnIM+Hz4HOt8+DzrnOvM6/z4DOv865z47Ovc+EzrHPgiDPhM63zr0gz4DPgc6/zrfOs86/z43OvM61zr3OtyDPhM6xz43PhM65z4POty4iCisKKyM6IHJlcmVyZS5jOjgwMworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgdW5saW5rIHN0cmF5ICclcyciCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6ODA3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIHByZWltYWdlIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlcmVyZS5jOjg4MSBzdWJtb2R1bGUuYzoyMDEyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQyNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlcmVyZS5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHVwZGF0ZSBjb25mbGljdGVkIHN0YXRlIGluICclcyciCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6MTA2OCByZXJlcmUuYzoxMDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHJlbWVtYmVyZWQgcmVzb2x1dGlvbiBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZXJlcmUuYzoxMDc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCB1bmxpbmsgJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZXJlcmUuYzoxMDg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0ZWQgcHJlaW1hZ2UgZm9yICclcyciCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6MTA5NgorIywgYy1mb3JtYXQKK21zZ2lkICJGb3Jnb3QgcmVzb2x1dGlvbiBmb3IgJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IHJlcmVyZS5jOjExOTkKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiByci1jYWNoZSBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogcmV2aXNpb24uYzoyNDg0Cittc2dpZCAieW91ciBjdXJyZW50IGJyYW5jaCBhcHBlYXJzIHRvIGJlIGJyb2tlbiIKK21zZ3N0ciAizr8gz4DOsc+Bz47OvSDOus67zqzOtM6/z4Igz4POsc+CIM+GzrHOr869zrXPhM6xzrkgzr3OsSDOtc6vzr3Osc65IM+HzrHOu86xz4POvM6tzr3Ov8+CIgorCisjOiByZXZpc2lvbi5jOjI0ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAieW91ciBjdXJyZW50IGJyYW5jaCAnJXMnIGRvZXMgbm90IGhhdmUgYW55IGNvbW1pdHMgeWV0IgorbXNnc3RyICLOvyDPhM+Bzq3Ph8+Jzr0gzrrOu86szrTOv8+CIM+DzrHPgiAnJXMnIM60zrXOvSDOrc+HzrXOuSDOsc66z4zOvM6xIM66zrHOvM6vzrEgz4XPgM6/zrLOv867zq4iCisKKyM6IHJldmlzaW9uLmM6MjY4NAorbXNnaWQgIi0tZmlyc3QtcGFyZW50IGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYmlzZWN0IgorbXNnc3RyICIiCisKKyM6IHJ1bi1jb21tYW5kLmM6NzQyCittc2dpZCAib3BlbiAvZGV2L251bGwgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IHJ1bi1jb21tYW5kLmM6MTIzMQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGFzeW5jIHRocmVhZDogJXMiCittc2dzdHIgIiIKKworIzogcnVuLWNvbW1hbmQuYzoxMjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgJyVzJyBob29rIHdhcyBpZ25vcmVkIGJlY2F1c2UgaXQncyBub3Qgc2V0IGFzIGV4ZWN1dGFibGUuXG4iCisiWW91IGNhbiBkaXNhYmxlIHRoaXMgd2FybmluZyB3aXRoIGBnaXQgY29uZmlnIGFkdmljZS5pZ25vcmVkSG9vayBmYWxzZWAuIgorbXNnc3RyICIiCisKKyM6IHNlbmQtcGFjay5jOjE0MQorbXNnaWQgInVuZXhwZWN0ZWQgZmx1c2ggcGFja2V0IHdoaWxlIHJlYWRpbmcgcmVtb3RlIHVucGFjayBzdGF0dXMiCittc2dzdHIgIiIKKworIzogc2VuZC1wYWNrLmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSByZW1vdGUgdW5wYWNrIHN0YXR1czogJXMiCittc2dzdHIgIiIKKworIzogc2VuZC1wYWNrLmM6MTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW90ZSB1bnBhY2sgZmFpbGVkOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzZW5kLXBhY2suYzozMDYKK21zZ2lkICJmYWlsZWQgdG8gc2lnbiB0aGUgcHVzaCBjZXJ0aWZpY2F0ZSIKK21zZ3N0ciAiIgorCisjOiBzZW5kLXBhY2suYzo0MjAKK21zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIHB1c2giCittc2dzdHIgIiIKKworIzogc2VuZC1wYWNrLmM6NDIyCittc2dpZCAiIgorIm5vdCBzZW5kaW5nIGEgcHVzaCBjZXJ0aWZpY2F0ZSBzaW5jZSB0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tIgorInNpZ25lZCBwdXNoIgorbXNnc3RyICIiCisKKyM6IHNlbmQtcGFjay5jOjQzNAorbXNnaWQgInRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS1hdG9taWMgcHVzaCIKK21zZ3N0ciAiIgorCisjOiBzZW5kLXBhY2suYzo0MzkKK21zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IHB1c2ggb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21taXQgbWVzc2FnZSBjbGVhbnVwIG1vZGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGRlbGV0ZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjMxNAorbXNnaWQgInJldmVydCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzozMTYKK21zZ2lkICJjaGVycnktcGljayIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzozMTgKK21zZ2lkICJyZWJhc2UgLWkiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzIwCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uOiAlZCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzozNzgKK21zZ2lkICIiCisiYWZ0ZXIgcmVzb2x2aW5nIHRoZSBjb25mbGljdHMsIG1hcmsgdGhlIGNvcnJlY3RlZCBwYXRoc1xuIgorIndpdGggJ2dpdCBhZGQgPHBhdGhzPicgb3IgJ2dpdCBybSA8cGF0aHM+JyIKK21zZ3N0ciAiIgorIs6xz4bOv8+NIM61z4DOuc67z43Pg861z4TOtSDPhM65z4Igz4PPhc6zzrrPgc6/z43Pg861zrnPgiwgzrXPgM65z4POt868zqzOvc61z4TOtSDPhM65z4IgzrTOuc6/z4HOuM+JzrzOrc69zrXPgiDOtM65zrHOtM+Bzr/OvM6tz4JcbiIKKyLOvM61ICdnaXQgYWRkIDzOtM65zrHOtM+Bzr/OvM6tz4I+JyDOriAnZ2l0IHJtIDzOtM65zrHOtM+Bzr/OvM6tz4I+JyIKKworIzogc2VxdWVuY2VyLmM6MzgxCittc2dpZCAiIgorImFmdGVyIHJlc29sdmluZyB0aGUgY29uZmxpY3RzLCBtYXJrIHRoZSBjb3JyZWN0ZWQgcGF0aHNcbiIKKyJ3aXRoICdnaXQgYWRkIDxwYXRocz4nIG9yICdnaXQgcm0gPHBhdGhzPidcbiIKKyJhbmQgY29tbWl0IHRoZSByZXN1bHQgd2l0aCAnZ2l0IGNvbW1pdCciCittc2dzdHIgIiIKKyLOsc+Gzr/PjSDOtc+AzrnOu8+Nz4POtc+EzrUgz4TOuc+CIM+Dz4XOs866z4HOv8+Nz4POtc65z4IsIM61z4DOuc+DzrfOvM6szr3Otc+EzrUgz4TOuc+CIM60zrnOv8+BzrjPic68zq3Ovc61z4IgzrTOuc6xzrTPgc6/zrzOrc+CXG4iCisizrzOtSAnZ2l0IGFkZCA8zrTOuc6xzrTPgc6/zrzOrc+CPicgzq4gJ2dpdCBybSA8zrTOuc6xzrTPgc6/zrzOrc+CPidcbiIKKyLOus6xzrkgz4XPgM6/zrLOrM67zrXPhM61IM+Ezr8gzrHPgM6/z4TOrc67zrXPg868zrEgzrzOtSAnZ2l0IGNvbW1pdCciCisKKyM6IHNlcXVlbmNlci5jOjM5NCBzZXF1ZW5jZXIuYzoyNjcxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBsb2NrICclcyciCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBlb2wgdG8gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzo0MDYgc2VxdWVuY2VyLmM6MjU1NCBzZXF1ZW5jZXIuYzoyNjc3IHNlcXVlbmNlci5jOjI2OTEKKyM6IHNlcXVlbmNlci5jOjI5MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplICclcyciCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6NDI5IHNlcXVlbmNlci5jOjkzMSBzZXF1ZW5jZXIuYzoxNjE1IHNlcXVlbmNlci5jOjI1NzQKKyM6IHNlcXVlbmNlci5jOjI5MTMgc2VxdWVuY2VyLmM6MzAyMiBidWlsdGluL2FtLmM6MjQ1IGJ1aWx0aW4vY29tbWl0LmM6NzQ4CisjOiBidWlsdGluL21lcmdlLmM6MTA4NSBidWlsdGluL3JlYmFzZS5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ5b3VyIGxvY2FsIGNoYW5nZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXMuIgorbXNnc3RyICLOv865IM+Ezr/PgM65zrrOrc+CIM6xzrvOu86xzrPOrc+CIM+DzrHPgiDOuM6xIM61z4DOtc6zzrPPgc6xz4bPjM69z4TOv8+Fz4POsc69IM6xz4DPjCDPhM6/ICVzLiIKKworIzogc2VxdWVuY2VyLmM6NDU5Cittc2dpZCAiY29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQuIgorbXNnc3RyICLPhc+Azr/Oss6szrvOtc+EzrUgz4TOuc+CIM6xzrvOu86xzrPOrc+CIM+DzrHPgiDOriDOsc+Azr/OuM63zrrOtc+Nz4PPhM61IM+EzrnPgiDOs865zrEgzr3OsSDPgM+Bzr/Ph8+Jz4HOrs+DzrXPhM61LiIKKworIzogc2VxdWVuY2VyLmM6NDkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYXN0LWZvcndhcmQiCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6ICVzIHdpbGwgYmUgInJldmVydCIsICJjaGVycnktcGljayIgb3IKKyMuICJyZWJhc2UgLWkiLgorIy4KKyM6IHNlcXVlbmNlci5jOjU4MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjU5OAorbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgY2FjaGUgdHJlZSIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzo2MTIKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIGNvbW1pdCIKK21zZ3N0ciAizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDPhM6xz43PhM65z4POtyDPhM63z4Igz4XPgM6/zrLOv867zq7PgiBIRUFEIgorCisjOiBzZXF1ZW5jZXIuYzo2OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8ga2V5IHByZXNlbnQgaW4gJyUuKnMnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjcwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVxdW90ZSB2YWx1ZSBvZiAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjc0MCB3cmFwcGVyLmM6MjI3IHdyYXBwZXIuYzozOTcgYnVpbHRpbi9hbS5jOjcwNAorIzogYnVpbHRpbi9hbS5jOjc5NiBidWlsdGluL21lcmdlLmM6MTA4MiBidWlsdGluL3JlYmFzZS5jOjYxNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciByZWFkaW5nIgorbXNnc3RyICLOtM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM+MIM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FICclcycgzrPOuc6xIM6xzr3OrM6zzr3Pic+DzrciCisKKyM6IHNlcXVlbmNlci5jOjc1MAorbXNnaWQgIidHSVRfQVVUSE9SX05BTUUnIGFscmVhZHkgZ2l2ZW4iCittc2dzdHIgIidHSVRfQVVUSE9SX05BTUUnIM60z4zOuM63zrrOtSDOrs60zrciCisKKyM6IHNlcXVlbmNlci5jOjc1NQorbXNnaWQgIidHSVRfQVVUSE9SX0VNQUlMJyBhbHJlYWR5IGdpdmVuIgorbXNnc3RyICInR0lUX0FVVEhPUl9FTUFJTCcgzrTPjM64zrfOus61IM6uzrTOtyIKKworIzogc2VxdWVuY2VyLmM6NzYwCittc2dpZCAiJ0dJVF9BVVRIT1JfREFURScgYWxyZWFkeSBnaXZlbiIKK21zZ3N0ciAiJ0dJVF9BVVRIT1JfREFURScgzrTPjM64zrfOus61IM6uzrTOtyIKKworIzogc2VxdWVuY2VyLmM6NzY0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdmFyaWFibGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzo3NjkKK21zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX05BTUUnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjc3MQorbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfRU1BSUwnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjc3MworbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfREFURSciCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6ODMzCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgZGF0ZSBmb3JtYXQgJyVzJyBpbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjg1MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisieW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWVcbiIKKyJJZiB0aGVzZSBjaGFuZ2VzIGFyZSBtZWFudCB0byBiZSBzcXVhc2hlZCBpbnRvIHRoZSBwcmV2aW91cyBjb21taXQsIHJ1bjpcbiIKKyJcbiIKKyIgIGdpdCBjb21taXQgLS1hbWVuZCAlc1xuIgorIlxuIgorIklmIHRoZXkgYXJlIG1lYW50IHRvIGdvIGludG8gYSBuZXcgY29tbWl0LCBydW46XG4iCisiXG4iCisiICBnaXQgY29tbWl0ICVzXG4iCisiXG4iCisiSW4gYm90aCBjYXNlcywgb25jZSB5b3UncmUgZG9uZSwgY29udGludWUgd2l0aDpcbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorbXNnc3RyICIiCisizq3Ph861z4TOtSDPgM+Bzr/Otc+Ezr/Ouc68zrHPg868zq3Ovc61z4IgzrHOu867zrHOs86tz4Igz4PPhM6/IM60zq3Ovc+Ez4HOvyDOtc+BzrPOsc+Dzq/Osc+CIM+DzrHPglxuIgorIs6Rzr0gzrHPhc+Ezq3PgiDOv865IM6xzrvOu86xzrPOrc+CIM+Az4HOrc+AzrXOuSDOvc6xIM+Dz4XOvM+Az4TPhc+HzrjOv8+Nzr0gzrzOrc+DzrEgz4PPhM63zr0gz4DPgc6/zrfOs86/z43OvM61zr3OtyDPhc+Azr/Oss6/zrvOriwgIgorIs+Ez4HOrc6+z4TOtTpcbiIKKyJcbiIKKyIgIGdpdCBjb21taXQgLS1hbWVuZCAlc1xuIgorIlxuIgorIs6Rzr0gz4DPgc6tz4DOtc65IM69zrEgz4DOrM69zrUgz4POtSDOvc6tzrEgz4XPgM6/zrLOv867zq4sIM+Ez4HOrc6+z4TOtTpcbiIKKyJcbiIKKyIgIGdpdCBjb21taXQgJXNcbiIKKyJcbiIKKyLOms6xzrkgz4PPhM65z4IgzrTPjc6/IM+AzrXPgc65z4DPhM+Oz4POtc65z4IsIM68z4zOu865z4Igz4TOtc67zrXOuc+Oz4POtc+EzrUsIM+Dz4XOvc61z4fOr8+Dz4TOtSDOvM61OlxuIgorIlxuIgorIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCisKKyM6IHNlcXVlbmNlci5jOjk0NQorbXNnaWQgIndyaXRpbmcgcm9vdCBjb21taXQiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MTE1NQorbXNnaWQgIidwcmVwYXJlLWNvbW1pdC1tc2cnIGhvb2sgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjExNjIKK21zZ2lkICIiCisiWW91ciBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIHdlcmUgY29uZmlndXJlZCBhdXRvbWF0aWNhbGx5IGJhc2VkXG4iCisib24geW91ciB1c2VybmFtZSBhbmQgaG9zdG5hbWUuIFBsZWFzZSBjaGVjayB0aGF0IHRoZXkgYXJlIGFjY3VyYXRlLlxuIgorIllvdSBjYW4gc3VwcHJlc3MgdGhpcyBtZXNzYWdlIGJ5IHNldHRpbmcgdGhlbSBleHBsaWNpdGx5LiBSdW4gdGhlXG4iCisiZm9sbG93aW5nIGNvbW1hbmQgYW5kIGZvbGxvdyB0aGUgaW5zdHJ1Y3Rpb25zIGluIHlvdXIgZWRpdG9yIHRvIGVkaXRcbiIKKyJ5b3VyIGNvbmZpZ3VyYXRpb24gZmlsZTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNvbmZpZyAtLWdsb2JhbCAtLWVkaXRcbiIKKyJcbiIKKyJBZnRlciBkb2luZyB0aGlzLCB5b3UgbWF5IGZpeCB0aGUgaWRlbnRpdHkgdXNlZCBmb3IgdGhpcyBjb21taXQgd2l0aDpcbiIKKyJcbiIKKyIgICAgZ2l0IGNvbW1pdCAtLWFtZW5kIC0tcmVzZXQtYXV0aG9yXG4iCittc2dzdHIgIiIKKyLOpM6/IM+Mzr3Ov868zrEgzrrOsc65IM63IM60zrnOtc+NzrjPhc69z4POtyBlbWFpbCDPg86xz4Igz4HPhc64zrzOr8+Dz4TOt866zrHOvSDOsc+Fz4TPjM68zrHPhM6xIM68zrUgzrLOrM+DzrdcbiIKKyLPhM6/IM+Mzr3Ov868zrEgz4fPgc6uz4PPhM63IM66zrHOuSDPhM6/IM+Mzr3Ov868zrEgz4XPgM6/zrvOv86zzrnPg8+Ezq4gz4POsc+CLiDOoM6xz4HOsc66zrHOu8+OIM61zrvOrc6zzr7PhM61IM+Az4nPgiDOtc6vzr3Osc65ICIKKyLOsc66z4HOuc6yzq4uXG4iCisizpzPgM6/z4HOtc6vz4TOtSDOvc6xIM6xz4DOv866z4HPjc+IzrXPhM61IM6xz4XPhM+MIM+Ezr8gzrzOrs69z4XOvM6xIM6/z4HOr862zr/Ovc+EzrHPgiDPhM6xIM+BzrfPhM6sLiDOpM+Bzq3Ovs+EzrUgz4TOt869XG4iCisizrHOus+MzrvOv8+FzrjOtyDOtc69z4TOv867zq4gzrrOsc65IM6xzrrOv867zr/Phc64zq7Pg8+EzrUgz4TOuc+CIM6/zrTOt86zzq/Otc+CIM+Dz4TOv869IM60zrnOv8+BzrjPic+Ezq4gz4POsc+CIM6zzrnOsSDOvc6xICIKKyLOtc+AzrXOvs61z4HOs86xz4PPhM61zq/PhM61XG4iCisiz4TOvyDOsc+Bz4fOtc6vzr8gz4HPhc64zrzOr8+DzrXPjs69IM+DzrHPgiA6XG4iCisiXG4iCisiICAgIGdpdCBjb25maWcgLS1nbG9iYWwgLS1lZGl0XG4iCisiXG4iCisizojPgM61zrnPhM6xLCDOvM+Azr/Pgc61zq/PhM61IM69zrEgzrTOuc6/z4HOuM+Oz4POtc+EzrUgz4TOt869IM+EzrHPhc+Ez4zPhM63z4TOsSDPh8+Bzq7Pg8+Ezrcgz4DOv8+FIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7OuM63zrrOtSDOs865zrEgIgorIs6xz4XPhM6uIM+EzrfOvSDPhc+Azr/Oss6/zrvOriDOvM61OlxuIgorIlxuIgorIiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKKworIzogc2VxdWVuY2VyLmM6MTE3NQorbXNnaWQgIiIKKyJZb3VyIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgd2VyZSBjb25maWd1cmVkIGF1dG9tYXRpY2FsbHkgYmFzZWRcbiIKKyJvbiB5b3VyIHVzZXJuYW1lIGFuZCBob3N0bmFtZS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhleSBhcmUgYWNjdXJhdGUuXG4iCisiWW91IGNhbiBzdXBwcmVzcyB0aGlzIG1lc3NhZ2UgYnkgc2V0dGluZyB0aGVtIGV4cGxpY2l0bHk6XG4iCisiXG4iCisiICAgIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5uYW1lIFwiWW91ciBOYW1lXCJcbiIKKyIgICAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLmVtYWlsIHlvdUBleGFtcGxlLmNvbVxuIgorIlxuIgorIkFmdGVyIGRvaW5nIHRoaXMsIHlvdSBtYXkgZml4IHRoZSBpZGVudGl0eSB1c2VkIGZvciB0aGlzIGNvbW1pdCB3aXRoOlxuIgorIlxuIgorIiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKK21zZ3N0ciAiIgorIs6kzr8gz4zOvc6/zrzOsSDOus6xzrkgzrcgzrTOuc61z43OuM+Fzr3Pg863IGVtYWlsIM+DzrHPgiDPgc+FzrjOvM6vz4PPhM63zrrOsc69IM6xz4XPhM+MzrzOsc+EzrEgzrzOtSDOss6sz4POt1xuIgorIs+Ezr8gz4zOvc6/zrzOsSDPh8+Bzq7Pg8+EzrcgzrrOsc65IM+Ezr8gz4zOvc6/zrzOsSDPhc+Azr/Ou86/zrPOuc+Dz4TOriDPg86xz4IuIM6gzrHPgc6xzrrOsc67z44gzrXOu86tzrPOvs+EzrUgz4DPic+CIM61zq/Ovc6xzrkgIgorIs6xzrrPgc65zrLOri5cbiIKKyLOnM+Azr/Pgc61zq/PhM61IM69zrEgzrHPgM6/zrrPgc+Nz4jOtc+EzrUgzrHPhc+Ez4wgz4TOvyDOvM6uzr3Phc68zrEgzr/Pgc6vzrbOv869z4TOsc+CIM+EzrEgz4HOt8+Ezqw6XG4iCisiXG4iCisiICAgIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5uYW1lIFwizqTOvyDPjM69zr/OvM6sIM+DzrHPglwiXG4iCisiICAgIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5lbWFpbCB5b3VAZXhhbXBsZS5jb21cbiIKKyJcbiIKKyLOiM+AzrXOuc+EzrEsIM68z4DOv8+BzrXOr8+EzrUgzr3OsSDOtM65zr/Pgc64z47Pg861z4TOtSDPhM63zr0gz4TOsc+Fz4TPjM+EzrfPhM6xIM+Hz4HOrs+Dz4TOtyDPgM6/z4Ugz4fPgc63z4POuc68zr/PgM6/zrnOrs64zrfOus61IM6zzrnOsSAiCisizrHPhc+Ezq4gz4TOt869IM+Fz4DOv86yzr/Ou86uIM68zrU6XG4iCisiXG4iCisiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgorCisjOiBzZXF1ZW5jZXIuYzoxMjE3Cittc2dpZCAiY291bGRuJ3QgbG9vayB1cCBuZXdseSBjcmVhdGVkIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoxMjE5Cittc2dpZCAiY291bGQgbm90IHBhcnNlIG5ld2x5IGNyZWF0ZWQgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjEyNjUKK21zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBIRUFEIGFmdGVyIGNyZWF0aW5nIGNvbW1pdCIKK21zZ3N0ciAizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDPhM6xz43PhM65z4POtyDPhM6/z4UgSEVBRCDOvM61z4TOrCDPhM63IM60zrfOvM65zr/Phc+BzrPOr86xIM+EzrfPgiDPhc+Azr/Oss6/zrvOrs+CIgorCisjOiBzZXF1ZW5jZXIuYzoxMjY3Cittc2dpZCAiZGV0YWNoZWQgSEVBRCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoxMjcxCittc2dpZCAiIChyb290LWNvbW1pdCkiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MTI5MgorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBIRUFEIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjEyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiSEVBRCAlcyBpcyBub3QgYSBjb21taXQhIgorbXNnc3RyICLOpM6/IEhFQUQgJXMgzrTOtc69IM61zq/Ovc6xzrkgz4XPgM6/zrLOv867zq4hIgorCisjOiBzZXF1ZW5jZXIuYzoxMjk4IGJ1aWx0aW4vY29tbWl0LmM6MTU0NgorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBIRUFEIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoxMzUwIHNlcXVlbmNlci5jOjE5NjQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0IGF1dGhvciIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoxMzYwIGJ1aWx0aW4vYW0uYzoxNTcwIGJ1aWx0aW4vbWVyZ2UuYzo2NzgKK21zZ2lkICJnaXQgd3JpdGUtdHJlZSBmYWlsZWQgdG8gd3JpdGUgYSB0cmVlIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjEzNzcgc2VxdWVuY2VyLmM6MTQzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBjb21taXQgbWVzc2FnZSBmcm9tICclcyciCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MTM5OSBidWlsdGluL2FtLmM6MTU5MSBidWlsdGluL2NvbW1pdC5jOjE2NDkgYnVpbHRpbi9tZXJnZS5jOjg1OQorIzogYnVpbHRpbi9tZXJnZS5jOjg4NAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBjb21taXQgb2JqZWN0IgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjE0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbW1pdCAlcyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoxNDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBwYXJlbnQgY29tbWl0ICVzIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjE1NjUgc2VxdWVuY2VyLmM6MTY3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbW1hbmQ6ICVkIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjE2MjIgc2VxdWVuY2VyLmM6MTY0NworIywgYy1mb3JtYXQKK21zZ2lkICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJWQgY29tbWl0cy4iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MTYzMiBzZXF1ZW5jZXIuYzo0ODA4Cittc2dpZCAibmVlZCBhIEhFQUQgdG8gZml4dXAiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MTYzNCBzZXF1ZW5jZXIuYzoyOTU4Cittc2dpZCAiY291bGQgbm90IHJlYWQgSEVBRCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoxNjM2Cittc2dpZCAiY291bGQgbm90IHJlYWQgSEVBRCdzIGNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjE2NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHdyaXRlICclcyciCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MTY0OSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQxCittc2dpZCAiVGhpcyBpcyB0aGUgMXN0IGNvbW1pdCBtZXNzYWdlOiIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoxNjU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIGNvbW1pdCBtZXNzYWdlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjE2NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhpcyBpcyB0aGUgY29tbWl0IG1lc3NhZ2UgIyVkOiIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoxNjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZSBjb21taXQgbWVzc2FnZSAjJWQgd2lsbCBiZSBza2lwcGVkOiIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoxNzU4Cittc2dpZCAieW91ciBpbmRleCBmaWxlIGlzIHVubWVyZ2VkLiIKK21zZ3N0ciAiz4TOvyDOsc+Bz4fOtc6vzr8gzrXPhc+BzrXPhM63z4HOr86/z4Ugz4POsc+CIM60zrXOvSDOrc+HzrXOuSDPg8+FzrPPh8+Jzr3Otc+Fz4TOtc6vLiIKKworIzogc2VxdWVuY2VyLmM6MTc2NQorbXNnaWQgImNhbm5vdCBmaXh1cCByb290IGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoxNzg0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdCAlcyBpcyBhIG1lcmdlIGJ1dCBubyAtbSBvcHRpb24gd2FzIGdpdmVuLiIKK21zZ3N0ciAizrcgz4XPgM6/zrLOv867zq4gJXMgzrXOr869zrHOuSDPg8+FzrPPh8+Ozr3Otc+Fz4POtyDOsc67zrvOrCDOtM61zr0gzq3Ph861zrkgzrTOv864zrXOryDOtc+AzrnOu86/zrPOriAtbS4iCisKKyM6IHNlcXVlbmNlci5jOjE3OTIgc2VxdWVuY2VyLmM6MTgwMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgJXMgZG9lcyBub3QgaGF2ZSBwYXJlbnQgJWQiCittc2dzdHIgIs63IM+Fz4DOv86yzr/Ou86uICVzIM60zrXOvSDOrc+HzrXOuSDOs86/zr3Orc6xIM+Ezr8gJWQiCisKKyM6IHNlcXVlbmNlci5jOjE4MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGdldCBjb21taXQgbWVzc2FnZSBmb3IgJXMiCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBmaXJzdCAlcyB3aWxsIGJlIGEgInRvZG8iIGNvbW1hbmQgbGlrZQorIy4gInJldmVydCIgb3IgInBpY2siLCB0aGUgc2Vjb25kICVzIGEgU0hBMS4KKyM6IHNlcXVlbmNlci5jOjE4MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbm5vdCBwYXJzZSBwYXJlbnQgY29tbWl0ICVzIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjE4OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgIs60zrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ezq4gzrcgzrzOtc+Ezr/Ovc6/zrzOsc+Dzq/OsSDPhM6/z4UgJyVzJyDPg861ICclcyciCisKKyM6IHNlcXVlbmNlci5jOjE5NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJldmVydCAlcy4uLiAlcyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoxOTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBhcHBseSAlcy4uLiAlcyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyMDA1CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCAlczogZmFpbGVkIHRvIHJlYWQgdGhlIGluZGV4IgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjIwMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0ICVzOiBmYWlsZWQgdG8gcmVmcmVzaCB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MjA5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkb2VzIG5vdCBhY2NlcHQgYXJndW1lbnRzOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjIxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyBhcmd1bWVudHMgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjIxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lICVkOiAlLipzIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjIxNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90ICclcycgd2l0aG91dCBhIHByZXZpb3VzIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyMjQzCittc2dpZCAicGxlYXNlIGZpeCB0aGlzIHVzaW5nICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJy4iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnVzYWJsZSBpbnN0cnVjdGlvbiBzaGVldDogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyMjUwCittc2dpZCAibm8gY29tbWl0cyBwYXJzZWQuIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjIyNjEKK21zZ2lkICJjYW5ub3QgY2hlcnJ5LXBpY2sgZHVyaW5nIGEgcmV2ZXJ0LiIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyMjYzCittc2dpZCAiY2Fubm90IHJldmVydCBkdXJpbmcgYSBjaGVycnktcGljay4iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciAlczogJXMiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MjQyMAorbXNnaWQgInVudXNhYmxlIHNxdWFzaC1vbnRvIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIG9wdGlvbnMgc2hlZXQ6ICclcyciCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MjUxOCBzZXF1ZW5jZXIuYzo0MDY3Cittc2dpZCAiZW1wdHkgY29tbWl0IHNldCBwYXNzZWQiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MjUyNgorbXNnaWQgImEgY2hlcnJ5LXBpY2sgb3IgcmV2ZXJ0IGlzIGFscmVhZHkgaW4gcHJvZ3Jlc3MiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MjUyNworbXNnaWQgInRyeSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8IC0tcXVpdCB8IC0tYWJvcnQpXCIiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHNlcXVlbmNlciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyNTQ0Cittc2dpZCAiY291bGQgbm90IGxvY2sgSEVBRCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyNTk5IHNlcXVlbmNlci5jOjM4MTkKK21zZ2lkICJubyBjaGVycnktcGljayBvciByZXZlcnQgaW4gcHJvZ3Jlc3MiCittc2dzdHIgIs60zrXOvSDPhc+Gzq/Pg8+EzrHPhM6xzrkgY2hlcnJ5LXBpY2sgzq4gcmV2ZXJ0IgorCisjOiBzZXF1ZW5jZXIuYzoyNjAxCittc2dpZCAiY2Fubm90IHJlc29sdmUgSEVBRCIKK21zZ3N0ciAizrTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM6uIM63IM+EzrHPjc+EzrnPg863IM+Ezr/PhSBIRUFEIgorCisjOiBzZXF1ZW5jZXIuYzoyNjAzIHNlcXVlbmNlci5jOjI2MzgKK21zZ2lkICJjYW5ub3QgYWJvcnQgZnJvbSBhIGJyYW5jaCB5ZXQgdG8gYmUgYm9ybiIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyNjI0IGJ1aWx0aW4vZ3JlcC5jOjczMgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjI2MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgJyVzJzogJXMiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MjYyNworbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MjYzMworIywgYy1mb3JtYXQKK21zZ2lkICJzdG9yZWQgcHJlLWNoZXJyeS1waWNrIEhFQUQgZmlsZSAnJXMnIGlzIGNvcnJ1cHQiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MjY0NAorbXNnaWQgIllvdSBzZWVtIHRvIGhhdmUgbW92ZWQgSEVBRC4gTm90IHJld2luZGluZywgY2hlY2sgeW91ciBIRUFEISIKK21zZ3N0ciAiIgorIs6mzrHOr869zrXPhM6xzrkgz4DPic+CIM68zrXPhM6xzrrOuc69zq7Pg86xz4TOtSDPhM6/IEhFQUQuIM6UzrUgzrPOr869zrXPhM6xzrkgzrPPjc+BzrnPg868zrEgz4DPgc6/z4Igz4TOsSDPgM6vz4PPiSwgzrXOu86tzrPOvs+EzrUgIgorIs+Ezr8gSEVBRCDPg86xz4IhIgorCisjOiBzZXF1ZW5jZXIuYzoyNzUwIHNlcXVlbmNlci5jOjM3MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHVwZGF0ZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyNzg4IHNlcXVlbmNlci5jOjM3MTUKK21zZ2lkICJjYW5ub3QgcmVhZCBIRUFEIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjI4MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNvcHkgJyVzJyB0byAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjI4MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBjYW4gYW1lbmQgdGhlIGNvbW1pdCBub3csIHdpdGhcbiIKKyJcbiIKKyIgIGdpdCBjb21taXQgLS1hbWVuZCAlc1xuIgorIlxuIgorIk9uY2UgeW91IGFyZSBzYXRpc2ZpZWQgd2l0aCB5b3VyIGNoYW5nZXMsIHJ1blxuIgorIlxuIgorIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCittc2dzdHIgIiIKKyLOnM+Azr/Pgc61zq/PhM61IM69zrEgz4TPgc6/z4DOv8+Azr/Ouc6uz4POtc+EzrUgz4TOt869IM+Fz4DOv86yzr/Ou86uIM+Ez47Pgc6xLCDOvM61XG4iCisiXG4iCisiICBnaXQgY29tbWl0IC0tYW1lbmQgJXNcbiIKKyJcbiIKKyLOjM+EzrHOvSDOv865IM6xzrvOu86xzrPOrc+CIM+DzrHPgiDPg86xz4IgzrnOus6xzr3Ov8+Azr/Ouc6/z43OvSwgz4TPgc6tzr7PhM61XG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKworIzogc2VxdWVuY2VyLmM6MjgyMworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgYXBwbHkgJXMuLi4gJS4qcyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyODMwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBtZXJnZSAlLipzIgorbXNnc3RyICLOlM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM6uIM63IM+Dz4XOs8+Hz47Ovc61z4XPg863IM+Ezr/PhSAlLipzIgorCisjOiBzZXF1ZW5jZXIuYzoyODQ0IHNlcXVlbmNlci5jOjI4NDggYnVpbHRpbi9kaWZmdG9vbC5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcyciCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6Mjg3MCBzZXF1ZW5jZXIuYzozMjkzIGJ1aWx0aW4vcmViYXNlLmM6NDI0IGJ1aWx0aW4vcmViYXNlLmM6MTIzMAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTkxIGJ1aWx0aW4vcmViYXNlLmM6MTY0NgorbXNnaWQgImNvdWxkIG5vdCByZWFkIGluZGV4IgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjI4NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4ZWN1dGlvbiBmYWlsZWQ6ICVzXG4iCisiJXNZb3UgY2FuIGZpeCB0aGUgcHJvYmxlbSwgYW5kIHRoZW4gcnVuXG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyODgxCittc2dpZCAiYW5kIG1hZGUgY2hhbmdlcyB0byB0aGUgaW5kZXggYW5kL29yIHRoZSB3b3JraW5nIHRyZWVcbiIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyODg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJleGVjdXRpb24gc3VjY2VlZGVkOiAlc1xuIgorImJ1dCBsZWZ0IGNoYW5nZXMgdG8gdGhlIGluZGV4IGFuZC9vciB0aGUgd29ya2luZyB0cmVlXG4iCisiQ29tbWl0IG9yIHN0YXNoIHlvdXIgY2hhbmdlcywgYW5kIHRoZW4gcnVuXG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyOTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgbGFiZWwgbmFtZTogJyUuKnMnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjMwMDIKK21zZ2lkICJ3cml0aW5nIGZha2Ugcm9vdCBjb21taXQiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzAwNworbXNnaWQgIndyaXRpbmcgc3F1YXNoLW9udG8iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzA0NSBidWlsdGluL3JlYmFzZS5jOjQyOSBidWlsdGluL3JlYmFzZS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjMwNjMgYnVpbHRpbi9yZWJhc2UuYzo0NDgKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzA5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSAnJXMnIgorbXNnc3RyICLOtM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM6uIM63IM+EzrHPjc+EzrnPg863IM+Ezr/PhSAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzozMTE4Cittc2dpZCAiY2Fubm90IG1lcmdlIHdpdGhvdXQgYSBjdXJyZW50IHJldmlzaW9uIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjMxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlICclLipzJyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzozMTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGhpbmcgdG8gbWVyZ2U6ICclLipzJyIKK21zZ3N0ciAizrTOtc69IM+Fz4DOrM+Bz4fOtc65IM+Ezq/PgM6/z4TOsSDPgM+Bzr/PgiDPg8+FzrPPh8+Ozr3Otc+Fz4POtzogJyUuKnMnIgorCisjOiBzZXF1ZW5jZXIuYzozMTYxCittc2dpZCAib2N0b3B1cyBtZXJnZSBjYW5ub3QgYmUgZXhlY3V0ZWQgb24gdG9wIG9mIGEgW25ldyByb290XSIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzozMTc2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZXQgY29tbWl0IG1lc3NhZ2Ugb2YgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzozMzI1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBldmVuIGF0dGVtcHQgdG8gbWVyZ2UgJyUuKnMnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjMzNDEKK21zZ2lkICJtZXJnZTogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjM0MDkgYnVpbHRpbi9yZWJhc2UuYzoyOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guXG4iCittc2dzdHIgIs6IzrPOuc69zrUgzrXPhs6xz4HOvM6/zrPOriDPhM+Jzr0gzrHPhc+Ez4zOvM6xz4TOsSDOsc+Azr/OuM63zrrOtc+FzrzOrc69z4nOvS5cbiIKKworIzogc2VxdWVuY2VyLmM6MzQyMQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RvcmUgJXMiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzQyNCBidWlsdGluL3JlYmFzZS5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQXBwbHlpbmcgYXV0b3N0YXNoIHJlc3VsdGVkIGluIGNvbmZsaWN0cy5cbiIKKyJZb3VyIGNoYW5nZXMgYXJlIHNhZmUgaW4gdGhlIHN0YXNoLlxuIgorIllvdSBjYW4gcnVuIFwiZ2l0IHN0YXNoIHBvcFwiIG9yIFwiZ2l0IHN0YXNoIGRyb3BcIiBhdCBhbnkgdGltZS5cbiIKK21zZ3N0ciAiIgorIs6XIM61z4bOsc+BzrzOv86zzq4gz4TPic69IM6xz4XPhM+MzrzOsc+EzrEgzrHPgM6/zrjOt866zrXPhc68zq3Ovc+Jzr0gzr/OtM6uzrPOt8+DzrUgz4POtSDPg8+FzrPOus+Bzr/Pjc+DzrXOuc+CLlxuIgorIs6fzrkgzrHOu867zrHOs86tz4Igz4POsc+CIM61zq/Ovc6xzrkgzrHPg8+GzrHOu861zq/PgiDOvM6tz4POsSDPg8+EzrEgzrHPgM6/zrjOt866zrXPhc68zq3Ovc6xLlxuIgorIs6cz4DOv8+BzrXOr8+EzrUgzr3OsSDPhM+Bzq3Ovs61z4TOtSBcImdpdCBzdGFzaCBwb3BcIiDOriBcImdpdCBzdGFzaCBkcm9wXCIgzrHOvc6sIM+AzqzPg86xIM+Dz4TOuc6zzrzOri5cbiIKKworIzogc2VxdWVuY2VyLmM6MzQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY2hlY2tvdXQgJXMiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogbm90IGEgdmFsaWQgT0lEIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjM0OTcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcyNAorbXNnaWQgImNvdWxkIG5vdCBkZXRhY2ggSEVBRCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzozNTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlN0b3BwZWQgYXQgSEVBRFxuIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjM1MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3RvcHBlZCBhdCAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjM1MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvdWxkIG5vdCBleGVjdXRlIHRoZSB0b2RvIGNvbW1hbmRcbiIKKyJcbiIKKyIgICAgJS4qc1xuIgorIkl0IGhhcyBiZWVuIHJlc2NoZWR1bGVkOyBUbyBlZGl0IHRoZSBjb21tYW5kIGJlZm9yZSBjb250aW51aW5nLCBwbGVhc2VcbiIKKyJlZGl0IHRoZSB0b2RvIGxpc3QgZmlyc3Q6XG4iCisiXG4iCisiICAgIGdpdCByZWJhc2UgLS1lZGl0LXRvZG9cbiIKKyIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzU5NworIywgYy1mb3JtYXQKK21zZ2lkICJTdG9wcGVkIGF0ICVzLi4uICAlLipzXG4iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzY3NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbW1hbmQgJWQiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzcyMworbXNnaWQgImNvdWxkIG5vdCByZWFkIG9yaWctaGVhZCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzozNzI4IHNlcXVlbmNlci5jOjQ4MDUKK21zZ2lkICJjb3VsZCBub3QgcmVhZCAnb250byciCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6Mzc0MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgdXBkYXRlIEhFQUQgdG8gJXMiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzgzMQorbXNnaWQgImNhbm5vdCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjM4NDAKK21zZ2lkICJjYW5ub3QgYW1lbmQgbm9uLWV4aXN0aW5nIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzozODQyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgZmlsZTogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzozODQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29udGVudHM6ICclcyciCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6Mzg0NworbXNnaWQgIiIKKyJcbiIKKyJZb3UgaGF2ZSB1bmNvbW1pdHRlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLiBQbGVhc2UsIGNvbW1pdCB0aGVtXG4iCisiZmlyc3QgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tY29udGludWUnIGFnYWluLiIKK21zZ3N0ciAiIgorIlxuIgorIs6Iz4fOtc+EzrUgzrzOtyDPg8+FzrPPh8+Jzr3Otc+FzrzOrc69zrXPgiDOsc67zrvOsc6zzq3PgiDPg8+Ezr8gzrTOrc69z4TPgc6/IM61z4HOs86xz4POr86xz4Igz4POsc+CLiDOoM6xz4HOsc66zrHOu8+OLCDPhc+Azr/Oss6szrvOtc+Ezq0gIgorIs+EzrnPglxuIgorIs+Az4HPjs+EzrEgzrrOsc65IM68zrXPhM6sIM+Ez4HOrc6+z4TOtSAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJyDPgM6szrvOuS4iCisKKyM6IHNlcXVlbmNlci5jOjM4ODMgc2VxdWVuY2VyLmM6MzkyMQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZmlsZTogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzozOTM2Cittc2dpZCAiY291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjM5NDMKK21zZ2lkICJjb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzo0MDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW4ndCBjaGVycnktcGljayBhICVzIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjQwNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGJhZCByZXZpc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzo0MDgzCittc2dpZCAiY2FuJ3QgcmV2ZXJ0IGFzIGluaXRpYWwgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjQ1MjkKK21zZ2lkICJtYWtlX3NjcmlwdDogdW5oYW5kbGVkIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6NDUzMgorbXNnaWQgIm1ha2Vfc2NyaXB0OiBlcnJvciBwcmVwYXJpbmcgcmV2aXNpb25zIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjQ1NzMgc2VxdWVuY2VyLmM6NDYyOSBzZXF1ZW5jZXIuYzo0OTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzo0Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bnJlY29nbml6ZWQgc2V0dGluZyAlcyBmb3Igb3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmluZy4iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6NDc1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCisiRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6NDc2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVG8gYXZvaWQgdGhpcyBtZXNzYWdlLCB1c2UgXCJkcm9wXCIgdG8gZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuXG4iCisiXG4iCisiVXNlICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyB0byBjaGFuZ2UgdGhlIGxldmVsIG9mICIKKyJ3YXJuaW5ncy5cbiIKKyJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6NDc3NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGNhbiBmaXggdGhpcyB3aXRoICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyBhbmQgdGhlbiBydW4gJ2dpdCByZWJhc2UgLS0iCisiY29udGludWUnLlxuIgorIk9yIHlvdSBjYW4gYWJvcnQgdGhlIHJlYmFzZSB3aXRoICdnaXQgcmViYXNlIC0tYWJvcnQnLlxuIgorbXNnc3RyICIiCisizpzPgM6/z4HOtc6vz4TOtSDOvc6xIM+Ezr8gzrTOuc6/z4HOuM+Oz4POtc+EzrUgzrHPhc+Ez4wgzrzOtSAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycgzrrOsc65IM68zrXPhM6sIM69zrEgIgorIs+Ez4HOrc6+zrXPhM61ICdnaXQgcmViYXNlIC0tY29udGludWUnLlxuIgorIs6JIM68z4DOv8+BzrXOr8+EzrUgzr3OsSDOtc6zzrrOsc+EzrHOu861zq/PiM61z4TOtSDPhM6/IHJlYmFzZSDOvM61ICdnaXQgcmViYXNlIC0tYWJvcnQnLlxuIgorCisjOiBzZXF1ZW5jZXIuYzo0OTEyIHNlcXVlbmNlci5jOjQ5NTAKK21zZ2lkICJub3RoaW5nIHRvIGRvIgorbXNnc3RyICLOtM61zr0gz4XPgM6sz4HPh861zrkgz4TOr8+Azr/PhM6xIM69zrEgzrPOr869zrXOuSIKKworIzogc2VxdWVuY2VyLmM6NDkxNgorIywgYy1mb3JtYXQKK21zZ2lkICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZCkiCittc2dpZF9wbHVyYWwgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kcykiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBzZXF1ZW5jZXIuYzo0OTI4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjb3B5ICclcycgdG8gJyVzJy4iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6NDkzMiBzZXF1ZW5jZXIuYzo0OTYxCittc2dpZCAiY291bGQgbm90IHRyYW5zZm9ybSB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjQ5NjQKK21zZ2lkICJjb3VsZCBub3Qgc2tpcCB1bm5lY2Vzc2FyeSBwaWNrIGNvbW1hbmRzIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjUwNDcKK21zZ2lkICJ0aGUgc2NyaXB0IHdhcyBhbHJlYWR5IHJlYXJyYW5nZWQuIgorbXNnc3RyICIiCisKKyM6IHNldHVwLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IgorbXNnc3RyICIiCisKKyM6IHNldHVwLmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogbm8gc3VjaCBwYXRoIGluIHRoZSB3b3JraW5nIHRyZWUuXG4iCisiVXNlICdnaXQgPGNvbW1hbmQ+IC0tIDxwYXRoPi4uLicgdG8gc3BlY2lmeSBwYXRocyB0aGF0IGRvIG5vdCBleGlzdCBsb2NhbGx5LiIKK21zZ3N0ciAiIgorCisjOiBzZXR1cC5jOjE4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IHVua25vd24gcmV2aXNpb24gb3IgcGF0aCBub3QgaW4gdGhlIHdvcmtpbmcgdHJlZS5cbiIKKyJVc2UgJy0tJyB0byBzZXBhcmF0ZSBwYXRocyBmcm9tIHJldmlzaW9ucywgbGlrZSB0aGlzOlxuIgorIidnaXQgPGNvbW1hbmQ+IFs8cmV2aXNpb24+Li4uXSAtLSBbPGZpbGU+Li4uXSciCittc2dzdHIgIiIKKworIzogc2V0dXAuYzoyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uICclcycgbXVzdCBjb21lIGJlZm9yZSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBzZXR1cC5jOjI1MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IGJvdGggcmV2aXNpb24gYW5kIGZpbGVuYW1lXG4iCisiVXNlICctLScgdG8gc2VwYXJhdGUgcGF0aHMgZnJvbSByZXZpc2lvbnMsIGxpa2UgdGhpczpcbiIKKyInZ2l0IDxjb21tYW5kPiBbPHJldmlzaW9uPi4uLl0gLS0gWzxmaWxlPi4uLl0nIgorbXNnc3RyICIiCisKKyM6IHNldHVwLmM6Mzg5Cittc2dpZCAidW5hYmxlIHRvIHNldCB1cCB3b3JrIHRyZWUgdXNpbmcgaW52YWxpZCBjb25maWciCittc2dzdHIgIiIKKworIzogc2V0dXAuYzozOTMKK21zZ2lkICJ0aGlzIG9wZXJhdGlvbiBtdXN0IGJlIHJ1biBpbiBhIHdvcmsgdHJlZSIKK21zZ3N0ciAiIgorCisjOiBzZXR1cC5jOjUyNworIywgYy1mb3JtYXQKK21zZ2lkICJFeHBlY3RlZCBnaXQgcmVwbyB2ZXJzaW9uIDw9ICVkLCBmb3VuZCAlZCIKK21zZ3N0ciAiIgorCisjOiBzZXR1cC5jOjUzNQorbXNnaWQgInVua25vd24gcmVwb3NpdG9yeSBleHRlbnNpb25zIGZvdW5kOiIKK21zZ3N0ciAiIgorCisjOiBzZXR1cC5jOjU1NAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nICclcyciCittc2dzdHIgIiIKKworIzogc2V0dXAuYzo1NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGxhcmdlIHRvIGJlIGEgLmdpdCBmaWxlOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNldHVwLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMiCittc2dzdHIgIiIKKworIzogc2V0dXAuYzo1NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBnaXRmaWxlIGZvcm1hdDogJXMiCittc2dzdHIgIiIKKworIzogc2V0dXAuYzo1NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGF0aCBpbiBnaXRmaWxlOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzZXR1cC5jOjU2NAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeTogJXMiCittc2dzdHIgIs60zrXOvSDOtc6vzr3Osc65IM6xz4DOv864zrXPhM6uz4HOuc6/IGdpdDogJXMiCisKKyM6IHNldHVwLmM6NjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIickJXMnIHRvbyBiaWciCittc2dzdHIgIiIKKworIzogc2V0dXAuYzo2NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnk6ICclcyciCittc2dzdHIgIs60zrXOvSDOtc6vzr3Osc65IM6xz4DOv864zrXPhM6uz4HOuc6/IGdpdDogJyVzJyIKKworIzogc2V0dXAuYzo3MDYgc2V0dXAuYzo3MDggc2V0dXAuYzo3MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNoZGlyIHRvICclcyciCittc2dzdHIgIiIKKworIzogc2V0dXAuYzo3MTEgc2V0dXAuYzo3Njcgc2V0dXAuYzo3Nzcgc2V0dXAuYzo4MTYgc2V0dXAuYzo4MjQKK21zZ2lkICJjYW5ub3QgY29tZSBiYWNrIHRvIGN3ZCIKK21zZ3N0ciAiIgorCisjOiBzZXR1cC5jOjgzOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJSpzJXMlcyciCittc2dzdHIgIiIKKworIzogc2V0dXAuYzoxMDY4Cittc2dpZCAiVW5hYmxlIHRvIHJlYWQgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzZXR1cC5jOjEwNzcgc2V0dXAuYzoxMDgzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjaGFuZ2UgdG8gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzZXR1cC5jOjEwODgKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBvZiB0aGUgcGFyZW50IGRpcmVjdG9yaWVzKTogJXMiCittc2dzdHIgIs60zrXOvSDOtc6vzr3Osc65IM6xz4DOv864zrXPhM6uz4HOuc6/IGdpdCAozq4gzrrOsc69zq3Ovc6xz4IgzrHPgM+MIM+Ezr/Phc+CIM+AzrnOvyDPgM6szr3PiSDPhs6xzrrOrc67zr/Phc+CKTogJXMiCisKKyM6IHNldHVwLmM6MTA5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBwYXJlbnQgdXAgdG8gbW91bnQgcG9pbnQgJXMpXG4iCisiU3RvcHBpbmcgYXQgZmlsZXN5c3RlbSBib3VuZGFyeSAoR0lUX0RJU0NPVkVSWV9BQ1JPU1NfRklMRVNZU1RFTSBub3Qgc2V0KS4iCittc2dzdHIgIiIKKyLOtM61zr0gzrXOr869zrHOuSDOsc+Azr/OuM61z4TOrs+BzrnOvyBnaXQgKM6uIM66zrHOvc6tzr3Osc+CIM+AzrnOvyDPgM6szr3PiSDPhs6szrrOtc67zr/PgiDOvM6tz4fPgc65IM+Ezr8gz4POt868zrXOr86/ICIKKyLPgM+Bzr/Pg86sz4HPhM63z4POt8+CICVzKVxuIgorIs6jz4TOsc68zqzPhM63zrzOsSDPg8+EzrEgz4zPgc65zrEgz4TOv8+FIM+Dz4XPg8+Ezq7OvM6xz4TOv8+CIM6xz4HPh861zq/Pic69IChHSVRfRElTQ09WRVJZX0FDUk9TU19GSUxFU1lTVEVNICIKKyLOvM63IM6/z4HOuc+DzrzOrc69zr8pLiIKKworIzogc2V0dXAuYzoxMjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwcm9ibGVtIHdpdGggY29yZS5zaGFyZWRSZXBvc2l0b3J5IGZpbGVtb2RlIHZhbHVlICgwJS4zbykuXG4iCisiVGhlIG93bmVyIG9mIGZpbGVzIG11c3QgYWx3YXlzIGhhdmUgcmVhZCBhbmQgd3JpdGUgcGVybWlzc2lvbnMuIgorbXNnc3RyICIiCisKKyM6IHNldHVwLmM6MTI0NworbXNnaWQgIm9wZW4gL2Rldi9udWxsIG9yIGR1cCBmYWlsZWQiCittc2dzdHIgIiIKKworIzogc2V0dXAuYzoxMjYyCittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgIiIKKworIzogc2V0dXAuYzoxMjY3Cittc2dpZCAic2V0c2lkIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0IGRpcmVjdG9yeSAlcyBkb2VzIG5vdCBleGlzdDsgY2hlY2sgLmdpdC9vYmplY3RzL2luZm8vYWx0ZXJuYXRlcyIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzo0OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG5vcm1hbGl6ZSBhbHRlcm5hdGUgb2JqZWN0IHBhdGg6ICVzIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjU2OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaWdub3JpbmcgYWx0ZXJuYXRlIG9iamVjdCBzdG9yZXMsIG5lc3RpbmcgdG9vIGRlZXAiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6NTc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgb2JqZWN0IGRpcmVjdG9yeTogJXMiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6NjE4Cittc2dpZCAidW5hYmxlIHRvIGZkb3BlbiBhbHRlcm5hdGVzIGxvY2tmaWxlIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjYzNgorbXNnaWQgInVuYWJsZSB0byByZWFkIGFsdGVybmF0ZXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzo2NDMKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBuZXcgYWx0ZXJuYXRlcyBmaWxlIGludG8gcGxhY2UiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzo3MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBhcyBhIGxpbmtlZCBjaGVja291dCBpcyBub3Qgc3VwcG9ydGVkIHlldC4iCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6NzEwCisjLCBjLWZvcm1hdAorbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgbm90IGEgbG9jYWwgcmVwb3NpdG9yeS4iCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6NzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgc2hhbGxvdyIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzo3MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBpcyBncmFmdGVkIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjgzOAorIywgYy1mb3JtYXQKK21zZ2lkICJhdHRlbXB0aW5nIHRvIG1tYXAgJTxQUkl1TUFYPiBvdmVyIGxpbWl0ICU8UFJJdU1BWD4iCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6ODYzCittc2dpZCAibW1hcCBmYWlsZWQiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6MTAyNworIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgZmlsZSAlcyBpcyBlbXB0eSIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzoxMTUxIHNoYTEtZmlsZS5jOjIyODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29ycnVwdCBsb29zZSBvYmplY3QgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzoxMTUzIHNoYTEtZmlsZS5jOjIyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2FyYmFnZSBhdCBlbmQgb2YgbG9vc2Ugb2JqZWN0ICclcyciCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6MTE5NQorbXNnaWQgImludmFsaWQgb2JqZWN0IHR5cGUiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6MTI3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdW5wYWNrICVzIGhlYWRlciB3aXRoIC0tYWxsb3ctdW5rbm93bi10eXBlIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjEyODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVucGFjayAlcyBoZWFkZXIiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6MTI4OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJXMgaGVhZGVyIHdpdGggLS1hbGxvdy11bmtub3duLXR5cGUiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6MTI5MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJXMgaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjE0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb2JqZWN0ICVzIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjE0ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVwbGFjZW1lbnQgJXMgbm90IGZvdW5kIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzoxNDg5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvb3NlIG9iamVjdCAlcyAoc3RvcmVkIGluICVzKSBpcyBjb3JydXB0IgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjE0OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2VkIG9iamVjdCAlcyAoc3RvcmVkIGluICVzKSBpcyBjb3JydXB0IgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjE1OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJXMiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6MTYwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IHBlcm1pc3Npb24gdG8gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzoxNjA5Cittc2dpZCAiZmlsZSB3cml0ZSBlcnJvciIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzoxNjI4Cittc2dpZCAiZXJyb3Igd2hlbiBjbG9zaW5nIGxvb3NlIG9iamVjdCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjE2OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdWZmaWNpZW50IHBlcm1pc3Npb24gZm9yIGFkZGluZyBhbiBvYmplY3QgdG8gcmVwb3NpdG9yeSBkYXRhYmFzZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzoxNjk1Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzoxNzE5Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGxvb3NlIG9iamVjdCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjE3MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgbmV3IG9iamVjdCAlcyAoJWQpIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjE3MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVmbGF0ZUVuZCBvbiBvYmplY3QgJXMgZmFpbGVkICglZCkiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6MTczMworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mdXNlZCBieSB1bnN0YWJsZSBvYmplY3Qgc291cmNlIGRhdGEgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjE3NDMgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHV0aW1lKCkgb24gJXMiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6MTgxOAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjE4NTgKK21zZ2lkICJjb3JydXB0IGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzoxODY2Cittc2dpZCAiY29ycnVwdCB0YWciCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6MTk2NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIHdoaWxlIGluZGV4aW5nICVzIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjE5NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCB3aGlsZSBpbmRleGluZyAlcyIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzoyMDQxIHNoYTEtZmlsZS5jOjIwNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBpbnNlcnQgaW50byBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzoyMDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bnN1cHBvcnRlZCBmaWxlIHR5cGUiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6MjA4MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCBvYmplY3QiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6MjA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCAnJXMnIG9iamVjdCIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzoyMTA5IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyIKK21zZ3N0ciAizrTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM+MIM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FICVzIgorCisjOiBzaGExLWZpbGUuYzoyMjk5IHNoYTEtZmlsZS5jOjIzNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGFzaCBtaXNtYXRjaCBmb3IgJXMgKGV4cGVjdGVkICVzKSIKK21zZ3N0ciAiIgorCisjOiBzaGExLWZpbGUuYzoyMzIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtbWFwICVzIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjIzMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVucGFjayBoZWFkZXIgb2YgJXMiCittc2dzdHIgIiIKKworIzogc2hhMS1maWxlLmM6MjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgaGVhZGVyIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjIzNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVucGFjayBjb250ZW50cyBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiBzaGExLW5hbWUuYzo0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgU0hBMSAlcyBpcyBhbWJpZ3VvdXMiCittc2dzdHIgIiIKKworIzogc2hhMS1uYW1lLmM6NDU5Cittc2dpZCAiVGhlIGNhbmRpZGF0ZXMgYXJlOiIKK21zZ3N0ciAiIgorCisjOiBzaGExLW5hbWUuYzo3NDIKK21zZ2lkICIiCisiR2l0IG5vcm1hbGx5IG5ldmVyIGNyZWF0ZXMgYSByZWYgdGhhdCBlbmRzIHdpdGggNDAgaGV4IGNoYXJhY3RlcnNcbiIKKyJiZWNhdXNlIGl0IHdpbGwgYmUgaWdub3JlZCB3aGVuIHlvdSBqdXN0IHNwZWNpZnkgNDAtaGV4LiBUaGVzZSByZWZzXG4iCisibWF5IGJlIGNyZWF0ZWQgYnkgbWlzdGFrZS4gRm9yIGV4YW1wbGUsXG4iCisiXG4iCisiICBnaXQgY2hlY2tvdXQgLWIgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCisiXG4iCisid2hlcmUgXCIkYnJcIiBpcyBzb21laG93IGVtcHR5IGFuZCBhIDQwLWhleCByZWYgaXMgY3JlYXRlZC4gUGxlYXNlXG4iCisiZXhhbWluZSB0aGVzZSByZWZzIGFuZCBtYXliZSBkZWxldGUgdGhlbS4gVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5XG4iCisicnVubmluZyBcImdpdCBjb25maWcgYWR2aWNlLm9iamVjdE5hbWVXYXJuaW5nIGZhbHNlXCIiCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MTE0IHN1Ym1vZHVsZS5jOjE0MworbXNnaWQgIkNhbm5vdCBjaGFuZ2UgdW5tZXJnZWQgLmdpdG1vZHVsZXMsIHJlc29sdmUgbWVyZ2UgY29uZmxpY3RzIGZpcnN0IgorbXNnc3RyICIiCisizpTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM6uIM63IM6xzrvOu86xzrPOriDOvM63IM+Dz4XOs8+Hz4nOvc61z4XOvM6tzr3Pic69IC5naXRtb2R1bGUsIM61z4DOuc67z43Pg8+EzrUgz4DPgc+Oz4TOsSDPhM65z4IgIgorIs+Dz4XOs866z4HOv8+Nz4POtc65z4Igz4PPhc6zz4fPjs69zrXPhc+DzrfPgiIKKworIzogc3VibW9kdWxlLmM6MTE4IHN1Ym1vZHVsZS5jOjE0NworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgZmluZCBzZWN0aW9uIGluIC5naXRtb2R1bGVzIHdoZXJlIHBhdGg9JXMiCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgLmdpdG1vZHVsZXMgZW50cnkgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS5jOjE2NQorbXNnaWQgInN0YWdpbmcgdXBkYXRlZCAuZ2l0bW9kdWxlcyBmYWlsZWQiCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MzI3CisjLCBjLWZvcm1hdAorbXNnaWQgImluIHVucG9wdWxhdGVkIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJQYXRoc3BlYyAnJXMnIGlzIGluIHN1Ym1vZHVsZSAnJS4qcyciCittc2dzdHIgIs6XIM+AzrXPgc65zrPPgc6xz4bOriDOtM65zrHOtM+Bzr/OvM6uz4IgJyVzJyDOss+Bzq/Pg866zrXPhM6xzrkgzrzOrc+DzrEgz4PPhM63zr0gz4XPgM6/zrXOvc+Mz4TOt8+EzrEgJyUuKnMnIgorCisjOiBzdWJtb2R1bGUuYzo5MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VibW9kdWxlIGVudHJ5ICclcycgKCVzKSBpcyBhICVzLCBub3QgYSBjb21taXQiCittc2dzdHIgIs+Ezr8gz4PPhM6/zrnPh861zq/OvyDPhc+Azr/Otc69z4zPhM63z4TOsc+CICclcycgKCVzKSDOtc6vzr3Osc65ICVzLCDPjM+Hzrkgz4XPgM6/zrLOv867zq4iCisKKyM6IHN1Ym1vZHVsZS5jOjExNDMgYnVpbHRpbi9icmFuY2guYzo2NTYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5ODkKK21zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSBIRUFEIGFzIGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAizpHPgM6tz4TPhc+HzrUgzrcgz4TOsc+Nz4TOuc+Dzrcgz4TOv8+FIEhFQUQgzrzOtSDOus6sz4DOv865zr8gzq3Os866z4XPgc6/IHJlZi4iCisKKyM6IHN1Ym1vZHVsZS5jOjE0NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGFjY2VzcyBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoxNjM5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IHJlY29nbml6ZWQgYXMgYSBnaXQgcmVwb3NpdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoxNzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGFydCAnZ2l0IHN0YXR1cycgaW4gc3VibW9kdWxlICclcyciCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MTc5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcnVuICdnaXQgc3RhdHVzJyBpbiBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoxODA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCB1bnNldCBjb3JlLndvcmt0cmVlIHNldHRpbmcgaW4gc3VibW9kdWxlICclcyciCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MTg5NQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJtb2R1bGUgJyVzJyBoYXMgZGlydHkgaW5kZXgiCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MTk0NworIywgYy1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgJyVzJyBjb3VsZCBub3QgYmUgdXBkYXRlZC4iCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MTk5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVsb2NhdGVfZ2l0ZGlyIGZvciBzdWJtb2R1bGUgJyVzJyB3aXRoIG1vcmUgdGhhbiBvbmUgd29ya3RyZWUgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoyMDA4IHN1Ym1vZHVsZS5jOjIwNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGxvb2t1cCBuYW1lIGZvciBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoyMDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNaWdyYXRpbmcgZ2l0IGRpcmVjdG9yeSBvZiAnJXMlcycgZnJvbVxuIgorIiclcycgdG9cbiIKKyInJXMnXG4iCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MjA5OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS5jOjIxNDMKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgbHMtZmlsZXMgaW4gLi4iCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJscy10cmVlIHJldHVybmVkIHVuZXhwZWN0ZWQgcmV0dXJuIGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLWNvbmZpZy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBzdXNwaWNpb3VzIHN1Ym1vZHVsZSBuYW1lOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUtY29uZmlnLmM6Mjk2Cittc2dpZCAibmVnYXRpdmUgdmFsdWVzIG5vdCBhbGxvd2VkIGZvciBzdWJtb2R1bGUuZmV0Y2hqb2JzIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzozOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJyVzJyB3aGljaCBtYXkgYmUgaW50ZXJwcmV0ZWQgYXMgYSBjb21tYW5kLWxpbmUgb3B0aW9uOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NDc5CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdmFsdWUgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo3NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHVwZGF0ZSAuZ2l0bW9kdWxlcyBlbnRyeSAlcyIKK21zZ3N0ciAiIgorCisjOiB0cmFpbGVyLmM6MjM4CisjLCBjLWZvcm1hdAorbXNnaWQgInJ1bm5pbmcgdHJhaWxlciBjb21tYW5kICclcycgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IHRyYWlsZXIuYzo0ODUgdHJhaWxlci5jOjQ5MCB0cmFpbGVyLmM6NDk1IHRyYWlsZXIuYzo1NDkgdHJhaWxlci5jOjU1MworIzogdHJhaWxlci5jOjU1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHZhbHVlICclcycgZm9yIGtleSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHRyYWlsZXIuYzo1MzkgdHJhaWxlci5jOjU0NCBidWlsdGluL3JlbW90ZS5jOjI5NQorIywgYy1mb3JtYXQKK21zZ2lkICJtb3JlIHRoYW4gb25lICVzIgorbXNnc3RyICIiCisKKyM6IHRyYWlsZXIuYzo3MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdHJhaWxlciB0b2tlbiBpbiB0cmFpbGVyICclLipzJyIKK21zZ3N0ciAiIgorCisjOiB0cmFpbGVyLmM6NzUwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIGlucHV0IGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiB0cmFpbGVyLmM6NzUzCittc2dpZCAiY291bGQgbm90IHJlYWQgZnJvbSBzdGRpbiIKK21zZ3N0ciAiIgorCisjOiB0cmFpbGVyLmM6MTAxMSB3cmFwcGVyLmM6NzAxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0ICVzIgorbXNnc3RyICIiCisKKyM6IHRyYWlsZXIuYzoxMDEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJXMgaXMgbm90IGEgcmVndWxhciBmaWxlIgorbXNnc3RyICIiCisKKyM6IHRyYWlsZXIuYzoxMDE1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJXMgaXMgbm90IHdyaXRhYmxlIGJ5IHVzZXIiCittc2dzdHIgIiIKKworIzogdHJhaWxlci5jOjEwMjcKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0ZW1wb3JhcnkgZmlsZSIKK21zZ3N0ciAizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TPjCDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSDPgM+Bzr/Pg8+Jz4HOuc69zr/PjSDOsc+Bz4fOtc6vzr/PhSIKKworIzogdHJhaWxlci5jOjEwNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlbmFtZSB0ZW1wb3JhcnkgZmlsZSB0byAlcyIKK21zZ3N0ciAizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDOvM61z4TOv869zr/OvM6xz4POr86xIM+Az4HOv8+Dz4nPgc65zr3Ov8+NIM6xz4HPh861zq/Ov8+FIM+DzrUgJXMiCisKKyM6IHRyYW5zcG9ydC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCBzZXQgdXBzdHJlYW0gb2YgJyVzJyB0byAnJXMnIG9mICclcydcbiIKK21zZ3N0ciAizpjOsSDPjM+BzrnOts61IM+Ezr8gz4DPgc6/z4Igz4TOsSDPgM6szr3PiSDPhM6/z4UgJyVzJyDPic+CICclcycgz4TOv8+FICclcydcbiIKKworIzogdHJhbnNwb3J0LmM6MTQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIGJ1bmRsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC5jOjIwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmFuc3BvcnQ6IGludmFsaWQgZGVwdGggb3B0aW9uICclcyciCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LmM6NjE3Cittc2dpZCAiY291bGQgbm90IHBhcnNlIHRyYW5zcG9ydC5jb2xvci4qIGNvbmZpZyIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQuYzo2OTAKK21zZ2lkICJzdXBwb3J0IGZvciBwcm90b2NvbCB2MiBub3QgaW1wbGVtZW50ZWQgeWV0IgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC5jOjgxNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHZhbHVlIGZvciBjb25maWcgJyVzJzogJXMiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LmM6ODgzCisjLCBjLWZvcm1hdAorbXNnaWQgInRyYW5zcG9ydCAnJXMnIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC5jOjkzNworbXNnaWQgImdpdC1vdmVyLXJzeW5jIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBzdWJtb2R1bGUgcGF0aHMgY29udGFpbiBjaGFuZ2VzIHRoYXQgY2FuXG4iCisibm90IGJlIGZvdW5kIG9uIGFueSByZW1vdGU6XG4iCittc2dzdHIgIiIKKyLOn865IM+AzrHPgc6xzrrOrM+Ez4kgzrTOuc6xzrTPgc6/zrzOrc+CIM+Fz4DOv861zr3PjM+EzrfPhM6xz4Igz4DOtc+BzrnOrc+Hzr/Phc69IM6xzrvOu86xzrPOrc+CIM+Azr/PhSDOtM61zr0gzrXOr869zrHOuVxuIgorIs60z4XOvc6xz4TPjCDOvc6xIM6yz4HOtc64zr/Pjc69IM+DzrUgzrrOsc69zq3Ovc6xzr0gzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zr8gzrXOvs+Fz4DOt8+BzrXPhM63z4TOrjpcbiIKKworIzogdHJhbnNwb3J0LmM6MTAzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiUGxlYXNlIHRyeVxuIgorIlxuIgorIlx0Z2l0IHB1c2ggLS1yZWN1cnNlLXN1Ym1vZHVsZXM9b24tZGVtYW5kXG4iCisiXG4iCisib3IgY2QgdG8gdGhlIHBhdGggYW5kIHVzZVxuIgorIlxuIgorIlx0Z2l0IHB1c2hcbiIKKyJcbiIKKyJ0byBwdXNoIHRoZW0gdG8gYSByZW1vdGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyLOoM6xz4HOsc66zrHOu8+OIM60zr/Ous65zrzOrM+Dz4TOtVxuIgorIlxuIgorIlx0Z2l0IHB1c2ggLS1yZWN1cnNlLXN1Ym1vZHVsZXM9b24tZGVtYW5kXG4iCisiXG4iCisizq4gzrrOrM69z4TOtSBjZCDPg8+EzrcgzrTOuc6xzrTPgc6/zrzOriDOus6xzrkgz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtVxuIgorIlxuIgorIlx0Z2l0IHB1c2hcbiIKKyJcbiIKKyLOs865zrEgzr3OsSDPhM6xIM60zrfOvM6/z4POuc61z43Pg861z4TOtSDPg861IM6tzr3Osc69IM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/IM61zr7Phc+AzrfPgc61z4TOt8+Ezq4uXG4iCisiXG4iCisKKyM6IHRyYW5zcG9ydC5jOjEwNDQKK21zZ2lkICJBYm9ydGluZy4iCittc2dzdHIgIs6VzrPOus6xz4TOrM67zrXOuc+IzrcuIgorCisjOiB0cmFuc3BvcnQuYzoxMTg0Cittc2dpZCAiZmFpbGVkIHRvIHB1c2ggYWxsIG5lZWRlZCBzdWJtb2R1bGVzIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC5jOjEzMTcgdHJhbnNwb3J0LWhlbHBlci5jOjY0MworbXNnaWQgIm9wZXJhdGlvbiBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC5jOjE0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lIHdoaWxlIHBhcnNpbmcgYWx0ZXJuYXRlIHJlZnM6ICVzIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MSB0cmFuc3BvcnQtaGVscGVyLmM6ODAKK21zZ2lkICJmdWxsIHdyaXRlIHRvIHJlbW90ZSBoZWxwZXIgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbmQgcmVtb3RlIGhlbHBlciBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQ4IHRyYW5zcG9ydC1oZWxwZXIuYzo1NTcKK21zZ2lkICJjYW4ndCBkdXAgaGVscGVyIG91dHB1dCBmZCIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmtub3duIG1hbmRhdG9yeSBjYXBhYmlsaXR5ICVzOyB0aGlzIHJlbW90ZSBoZWxwZXIgcHJvYmFibHkgbmVlZHMgbmV3ZXIgIgorInZlcnNpb24gb2YgR2l0IgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyMDUKK21zZ2lkICJ0aGlzIHJlbW90ZSBoZWxwZXIgc2hvdWxkIGltcGxlbWVudCByZWZzcGVjIGNhcGFiaWxpdHkiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjI3MiB0cmFuc3BvcnQtaGVscGVyLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHVuZXhwZWN0ZWRseSBzYWlkOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgYWxzbyBsb2NrZWQgJXMiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjQ3OQorbXNnaWQgImNvdWxkbid0IHJ1biBmYXN0LWltcG9ydCIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTAyCittc2dpZCAiZXJyb3Igd2hpbGUgcnVubmluZyBmYXN0LWltcG9ydCIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTMxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMDk3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAlcyIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gcmVzcG9uc2UgdG8gY29ubmVjdDogJXMiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjU5OAorbXNnaWQgInNldHRpbmcgcmVtb3RlIHNlcnZpY2UgcGF0aCBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MDAKK21zZ2lkICJpbnZhbGlkIHJlbW90ZSBzZXJ2aWNlIHBhdGgiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjY0NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBjb25uZWN0IHRvIHN1YnNlcnZpY2UgJXMiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBvay9lcnJvciwgaGVscGVyIHNhaWQgJyVzJyIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciByZXBvcnRlZCB1bmV4cGVjdGVkIHN0YXR1cyBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODMyCisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IGRyeS1ydW4iCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjgzNQorIywgYy1mb3JtYXQKK21zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAtLXNpZ25lZCIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODM4CisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkPWlmLWFza2VkIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgJ3B1c2gtb3B0aW9uJyIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6OTM3Cittc2dpZCAicmVtb3RlLWhlbHBlciBkb2Vzbid0IHN1cHBvcnQgcHVzaDsgcmVmc3BlYyBuZWVkZWQiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjk0MgorIywgYy1mb3JtYXQKK21zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAnZm9yY2UnIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5ODkKK21zZ2lkICJjb3VsZG4ndCBydW4gZmFzdC1leHBvcnQiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjk5NAorbXNnaWQgImVycm9yIHdoaWxlIHJ1bm5pbmcgZmFzdC1leHBvcnQiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk5vIHJlZnMgaW4gY29tbW9uIGFuZCBub25lIHNwZWNpZmllZDsgZG9pbmcgbm90aGluZy5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgc3BlY2lmeSBhIGJyYW5jaCBzdWNoIGFzICdtYXN0ZXInLlxuIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCByZXNwb25zZSBpbiByZWYgbGlzdDogJXMiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCglcykgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIndyaXRlKCVzKSBmYWlsZWQiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdGhyZWFkIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0aHJlYWQgZmFpbGVkIHRvIGpvaW46ICVzIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzM1IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzM5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IHN0YXJ0IHRocmVhZCBmb3IgY29weWluZyBkYXRhOiAlcyIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM3NgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcm9jZXNzIGZhaWxlZCB0byB3YWl0IgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHByb2Nlc3MgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzk4IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDA3Cittc2dpZCAiY2FuJ3Qgc3RhcnQgdGhyZWFkIGZvciBjb3B5aW5nIGRhdGEiCittc2dzdHIgIiIKKworIzogdHJlZS13YWxrLmM6MzMKK21zZ2lkICJ0b28tc2hvcnQgdHJlZSBvYmplY3QiCittc2dzdHIgIiIKKworIzogdHJlZS13YWxrLmM6MzkKK21zZ2lkICJtYWxmb3JtZWQgbW9kZSBpbiB0cmVlIGVudHJ5IgorbXNnc3RyICIiCisKKyM6IHRyZWUtd2Fsay5jOjQzCittc2dpZCAiZW1wdHkgZmlsZW5hbWUgaW4gdHJlZSBlbnRyeSIKK21zZ3N0ciAiIgorCisjOiB0cmVlLXdhbGsuYzoxMTYKK21zZ2lkICJ0b28tc2hvcnQgdHJlZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHVucGFjay10cmVlcy5jOjExMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCisiJSVzUGxlYXNlIGNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSBiZWZvcmUgeW91IHN3aXRjaCBicmFuY2hlcy4iCittc2dzdHIgIiIKKyLOn865IM+Ezr/PgM65zrrOrc+CIM6xzrvOu86xzrPOrc+CIM+DzrHPgiDPg8+EzrEgzrHOus+MzrvOv8+FzrjOsSDOsc+Bz4fOtc6vzrEgzrjOsSDOtc+AzrXOs86zz4HOsc+Gz4zOvc+Ezr/Phc+DzrHOvSDOsc+Az4wgz4TOt869ICIKKyLOtc6+zrHOs8+JzrPOrjpcbiIKKyIlJXPOoM6xz4HOsc66zrHOu8+OIM+Fz4DOv86yzqzOu861z4TOtSDPhM65z4IgzrHOu867zrHOs86tz4Igz4POsc+CIM6uIM6xz4DOv864zrfOus61z43Pg8+EzrUgz4TOuc+CIM+Az4HOuc69IM6xzrvOu86szr7Otc+EzrUgzrrOu86szrTOvy4iCisKKyM6IHVucGFjay10cmVlcy5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCisiJSVzIgorbXNnc3RyICIiCisizp/OuSDPhM6/z4DOuc66zq3PgiDOsc67zrvOsc6zzq3PgiDPg86xz4Igz4PPhM6xIM6xzrrPjM67zr/Phc64zrEgzrHPgc+HzrXOr86xIM64zrEgzrXPgM61zrPOs8+BzrHPhs+Mzr3PhM6/z4XPg86xzr0gzrHPgM+MIM+EzrfOvSAiCisizrXOvs6xzrPPic6zzq46XG4iCisiJSVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgorIiUlc1BsZWFzZSBjb21taXQgeW91ciBjaGFuZ2VzIG9yIHN0YXNoIHRoZW0gYmVmb3JlIHlvdSBtZXJnZS4iCittc2dzdHIgIiIKKyLOn865IM+Ezr/PgM65zrrOrc+CIM6xzrvOu86xzrPOrc+CIM+DzrHPgiDPg8+EzrEgzrHOus+MzrvOv8+FzrjOsSDOsc+Bz4fOtc6vzrEgzrjOsSDOtc+AzrXOs86zz4HOsc+Gz4zOvc+Ezr/Phc+DzrHOvSDOsc+Az4wgz4TOtyAiCisiz4PPhc6zz4fPjs69zrXPhc+Dzrc6XG4iCisiJSVzzqDOsc+BzrHOus6xzrvPjiDPhc+Azr/Oss6szrvOtc+EzrUgz4TOuc+CIM6xzrvOu86xzrPOrc+CIM+DzrHPgiDOriDOsc+Azr/OuM63zrrOtc+Nz4PPhM61IM+EzrnPgiDPgM+BzrnOvSDPg8+FzrPPh8+Jzr3Otc+Nz4POtc+EzrUuIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgorIiUlcyIKK21zZ3N0ciAiIgorIs6fzrkgz4TOv8+AzrnOus6tz4IgzrHOu867zrHOs86tz4Igz4POsc+CIM+Dz4TOsSDOsc66z4zOu86/z4XOuM6xIM6xz4HPh861zq/OsSDOuM6xIM61z4DOtc6zzrPPgc6xz4bPjM69z4TOv8+Fz4POsc69IM6xz4DPjCDPhM63ICIKKyLPg8+FzrPPh8+Ozr3Otc+Fz4POtzpcbiIKKyIlJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCisiJSVzUGxlYXNlIGNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSBiZWZvcmUgeW91ICVzLiIKK21zZ3N0ciAiIgorIs6fzrkgz4TOv8+AzrnOus6tz4IgzrHOu867zrHOs86tz4Igz4POsc+CIM+Dz4TOsSDOsc66z4zOu86/z4XOuM6xIM6xz4HPh861zq/OsSDOuM6xIM61z4DOtc6zzrPPgc6xz4bPjM69z4TOv8+Fz4POsc69IM6xz4DPjCDPhM6/ICVzOlxuIgorIiUlc86gzrHPgc6xzrrOsc67z44gz4XPgM6/zrLOrM67zrXPhM61IM+EzrnPgiDOsc67zrvOsc6zzq3PgiDPg86xz4Igzq4gzrHPgM6/zrjOt866zrXPjc+Dz4TOtSDPhM65z4Igz4DPgc65zr0gzrHPgM+MIM+Ezr8gJXMuIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgorIiUlcyIKK21zZ3N0ciAiIgorIs6fzrkgz4TOv8+AzrnOus6tz4IgzrHOu867zrHOs86tz4Igz4POsc+CIM+Dz4TOsSDOsc66z4zOu86/z4XOuM6xIM6xz4HPh861zq/OsSDOuM6xIM61z4DOtc6zzrPPgc6xz4bPjM69z4TOv8+Fz4POsc69IM6xz4DPjCDPhM6/ICVzOlxuIgorIiUlcyIKKworIzogdW5wYWNrLXRyZWVzLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVcGRhdGluZyB0aGUgZm9sbG93aW5nIGRpcmVjdG9yaWVzIHdvdWxkIGxvc2UgdW50cmFja2VkIGZpbGVzIGluIHRoZW06XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKKyIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91IHN3aXRjaCBicmFuY2hlcy4iCittc2dzdHIgIiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKKyIlJXMiCittc2dzdHIgIiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBtZXJnZTpcbiIKKyIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91IG1lcmdlLiIKK21zZ3N0ciAiIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgorIiUlcyIKK21zZ3N0ciAiIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5ICVzOlxuIgorIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3UgJXMuIgorbXNnc3RyICIiCisKKyM6IHVucGFjay10cmVlcy5jOjE0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgJXM6XG4iCisiJSVzIgorbXNnc3RyICIiCisKKyM6IHVucGFjay10cmVlcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICIKKyJjaGVja291dDpcbiIKKyIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91IHN3aXRjaCBicmFuY2hlcy4iCittc2dzdHIgIiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgIgorImNoZWNrb3V0OlxuIgorIiUlcyIKK21zZ3N0ciAiIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKKyIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91IG1lcmdlLiIKK21zZ3N0ciAiIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKKyIlJXMiCittc2dzdHIgIiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCisiJSVzUGxlYXNlIG1vdmUgb3IgcmVtb3ZlIHRoZW0gYmVmb3JlIHlvdSAlcy4iCittc2dzdHIgIiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTYyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCisiJSVzIgorbXNnc3RyICIiCisKKyM6IHVucGFjay10cmVlcy5jOjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICJFbnRyeSAnJXMnIG92ZXJsYXBzIHdpdGggJyVzJy4gIENhbm5vdCBiaW5kLiIKK21zZ3N0ciAiIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNhbm5vdCB1cGRhdGUgc3BhcnNlIGNoZWNrb3V0OiB0aGUgZm9sbG93aW5nIGVudHJpZXMgYXJlIG5vdCB1cCB0byBkYXRlOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IHVucGFjay10cmVlcy5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgc3BhcnNlIGNoZWNrb3V0ICIKKyJ1cGRhdGU6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IHNwYXJzZSBjaGVja291dCAiCisidXBkYXRlOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IHVucGFjay10cmVlcy5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ2Fubm90IHVwZGF0ZSBzdWJtb2R1bGU6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogdW5wYWNrLXRyZWVzLmM6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkFib3J0aW5nXG4iCittc2dzdHIgIs6VzrPOus6xz4TOrM67zrXOuc+IzrdcbiIKKworIzogdW5wYWNrLXRyZWVzLmM6MzM1Cittc2dpZCAiQ2hlY2tpbmcgb3V0IGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHVucGFjay10cmVlcy5jOjM2NworbXNnaWQgIiIKKyJ0aGUgZm9sbG93aW5nIHBhdGhzIGhhdmUgY29sbGlkZWQgKGUuZy4gY2FzZS1zZW5zaXRpdmUgcGF0aHNcbiIKKyJvbiBhIGNhc2UtaW5zZW5zaXRpdmUgZmlsZXN5c3RlbSkgYW5kIG9ubHkgb25lIGZyb20gdGhlIHNhbWVcbiIKKyJjb2xsaWRpbmcgZ3JvdXAgaXMgaW4gdGhlIHdvcmtpbmcgdHJlZTpcbiIKK21zZ3N0ciAiIgorCisjOiB1cmxtYXRjaC5jOjE2MworbXNnaWQgImludmFsaWQgVVJMIHNjaGVtZSBuYW1lIG9yIG1pc3NpbmcgJzovLycgc3VmZml4IgorbXNnc3RyICIiCisKKyM6IHVybG1hdGNoLmM6MTg3IHVybG1hdGNoLmM6MzQ2IHVybG1hdGNoLmM6NDA1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgJVhYIGVzY2FwZSBzZXF1ZW5jZSIKK21zZ3N0ciAiIgorCisjOiB1cmxtYXRjaC5jOjIxNQorbXNnaWQgIm1pc3NpbmcgaG9zdCBhbmQgc2NoZW1lIGlzIG5vdCAnZmlsZTonIgorbXNnc3RyICIiCisKKyM6IHVybG1hdGNoLmM6MjMyCittc2dpZCAiYSAnZmlsZTonIFVSTCBtYXkgbm90IGhhdmUgYSBwb3J0IG51bWJlciIKK21zZ3N0ciAiIgorCisjOiB1cmxtYXRjaC5jOjI0NworbXNnaWQgImludmFsaWQgY2hhcmFjdGVycyBpbiBob3N0IG5hbWUiCittc2dzdHIgIiIKKworIzogdXJsbWF0Y2guYzoyOTIgdXJsbWF0Y2guYzozMDMKK21zZ2lkICJpbnZhbGlkIHBvcnQgbnVtYmVyIgorbXNnc3RyICIiCisKKyM6IHVybG1hdGNoLmM6MzcxCittc2dpZCAiaW52YWxpZCAnLi4nIHBhdGggc2VnbWVudCIKK21zZ3N0ciAiIgorCisjOiB3b3JrdHJlZS5jOjI0OSBidWlsdGluL2FtLmM6MjA5NAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCAnJXMnIgorbXNnc3RyICIiCisKKyM6IHdvcmt0cmVlLmM6Mjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgYXQgbWFpbiB3b3JraW5nIHRyZWUgaXMgbm90IHRoZSByZXBvc2l0b3J5IGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiB3b3JrdHJlZS5jOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGZpbGUgZG9lcyBub3QgY29udGFpbiBhYnNvbHV0ZSBwYXRoIHRvIHRoZSB3b3JraW5nIHRyZWUgbG9jYXRpb24iCittc2dzdHIgIiIKKworIzogd29ya3RyZWUuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiIgorCisjOiB3b3JrdHJlZS5jOjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIC5naXQgZmlsZSwgZXJyb3IgY29kZSAlZCIKK21zZ3N0ciAiIgorCisjOiB3b3JrdHJlZS5jOjMzMgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IHBvaW50IGJhY2sgdG8gJyVzJyIKK21zZ3N0ciAiIgorCisjOiB3cmFwcGVyLmM6MjIzIHdyYXBwZXIuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3IgcmVhZGluZyBhbmQgd3JpdGluZyIKK21zZ3N0ciAizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TPjCDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSAnJXMnIM6zzrnOsSDOsc69zqzOs869z4nPg863IM66zrHOuSDOtc6zzrPPgc6xz4bOriIKKworIzogd3JhcHBlci5jOjQyNCB3cmFwcGVyLmM6NjI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgJyVzJyIKK21zZ3N0ciAiIgorCisjOiB3cmFwcGVyLmM6NjMyCittc2dpZCAidW5hYmxlIHRvIGdldCBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHd0LXN0YXR1cy5jOjE1NQorbXNnaWQgIlVubWVyZ2VkIHBhdGhzOiIKK21zZ3N0ciAizpzOtyDPg8+FzrPPh8+Jzr3Otc+FzrzOrc69zrXPgiDOtM65zrHOtM+Bzr/OvM6tz4I6IgorCisjOiB3dC1zdGF0dXMuYzoxODIgd3Qtc3RhdHVzLmM6MjA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgKHVzZSBcImdpdCByZXNldCAlcyA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKK21zZ3N0ciAiIgorIiAgKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgcmVzZXQgJXMgPM6xz4HPh861zq/Ovz4uLi5cIiDOs865zrEgzr3OsSDOsc+Azr/PgM+Bzr/Otc+Ezr/Ouc68zqzPg861z4TOtSkiCisKKyM6IHd0LXN0YXR1cy5jOjE4NCB3dC1zdGF0dXMuYzoyMTEKK21zZ2lkICIgICh1c2UgXCJnaXQgcm0gLS1jYWNoZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiIKKyIgICjPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IFwiZ2l0IHJtIC0tY2FjaGVkIDzOsc+Bz4fOtc6vzr8+Li4uXCIgzrPOuc6xIM69zrEgzrHPgM6/z4DPgc6/zrXPhM6/zrnOvM6sz4POtc+EzrUpIgorCisjOiB3dC1zdGF0dXMuYzoxODgKK21zZ2lkICIgICh1c2UgXCJnaXQgYWRkIDxmaWxlPi4uLlwiIHRvIG1hcmsgcmVzb2x1dGlvbikiCittc2dzdHIgIiIKKyIgICjPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IFwiZ2l0IGFkZCA8zrHPgc+HzrXOr86/Pi4uLlwiIM6tz4TPg865IM+Oz4PPhM61IM69zrEgzrXPgM65z4POt868zqzOvc61z4TOtSDPhM63zr0gIgorIs61z4DOr867z4XPg863KSIKKworIzogd3Qtc3RhdHVzLmM6MTkwIHd0LXN0YXR1cy5jOjE5NAorbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQvcm0gPGZpbGU+Li4uXCIgYXMgYXBwcm9wcmlhdGUgdG8gbWFyayByZXNvbHV0aW9uKSIKK21zZ3N0ciAiIgorIiAgKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgYWRkL3JtIDzOsc+Bz4fOtc6vzr8+Li4uXCIgzq3PhM+Dzrkgz47Pg8+EzrUgzr3OsSDOtc+AzrnPg863zrzOrM69zrXPhM61IM+EzrfOvSAiCisizrXPgM6vzrvPhc+DzrcpIgorCisjOiB3dC1zdGF0dXMuYzoxOTIKK21zZ2lkICIgICh1c2UgXCJnaXQgcm0gPGZpbGU+Li4uXCIgdG8gbWFyayByZXNvbHV0aW9uKSIKK21zZ3N0ciAiIgorIiAgKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgcm0gPM6xz4HPh861zq/Ovz4uLi5cIiDOrc+Ez4POuSDPjs+Dz4TOtSDOvc6xIM61z4DOuc+DzrfOvM6szr3Otc+EzrUgz4TOt869ICIKKyLOtc+Azq/Ou8+Fz4POtykiCisKKyM6IHd0LXN0YXR1cy5jOjIwMyB3dC1zdGF0dXMuYzoxMDQ2Cittc2dpZCAiQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6IgorbXNnc3RyICLOkc67zrvOsc6zzq3PgiDPgM+Bzr/PgiDPhc+Azr/Oss6/zrvOrjoiCisKKyM6IHd0LXN0YXR1cy5jOjIyMSB3dC1zdGF0dXMuYzoxMDU1Cittc2dpZCAiQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6IgorbXNnc3RyICLOkc67zrvOsc6zzq3PgiDPgM6/z4UgzrTOtc69IM6tz4fOv8+Fzr0gz4DPgc6/zrXPhM6/zrnOvM6xz4PPhM61zq8gzrPOuc6xIM+Fz4DOv86yzr/Ou86uOiIKKworIzogd3Qtc3RhdHVzLmM6MjI1Cittc2dpZCAiICAodXNlIFwiZ2l0IGFkZCA8ZmlsZT4uLi5cIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCittc2dzdHIgIiIKKyIgICjPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IFwiZ2l0IGFkZCA8zrHPgc+HzrXOr86/Pi4uLlwiIM6zzrnOsSDOvc6xIM61zr3Ot868zrXPgc+Oz4POtc+EzrUgzrHPhc+Ezqwgz4DOv8+FIM64zrEgIgorIs+Fz4DOv86yzrvOt864zr/Pjc69KSIKKworIzogd3Qtc3RhdHVzLmM6MjI3Cittc2dpZCAiICAodXNlIFwiZ2l0IGFkZC9ybSA8ZmlsZT4uLi5cIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCittc2dzdHIgIiIKKyIgICjPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IFwiZ2l0IGFkZC9ybSA8zrHPgc+HzrXOr86/Pi4uLlwiIM6zzrnOsSDOvc6xIM61zr3Ot868zrXPgc+Oz4POtc+EzrUgzrHPhc+Ezqwgz4DOv8+FIM64zrEgIgorIs+Fz4DOv86yzrvOt864zr/Pjc69KSIKKworIzogd3Qtc3RhdHVzLmM6MjI4Cittc2dpZCAiIgorIiAgKHVzZSBcImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi5cIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpIgorbXNnc3RyICIiCisiICAoz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtSBcImdpdCBjaGVja291dCAtLSA8zrHPgc+HzrXOr86/Pi4uLlwiIM6zzrnOsSDOvc6xIM6xz4DOv8+Bz4HOr8+IzrXPhM61IM+EzrnPgiAiCisizrHOu867zrHOs86tz4Igz4PPhM6/IM+GzqzOus61zrvOvyDOtc+BzrPOsc+Dzq/Osc+CKSIKKworIzogd3Qtc3RhdHVzLmM6MjMwCittc2dpZCAiICAoY29tbWl0IG9yIGRpc2NhcmQgdGhlIHVudHJhY2tlZCBvciBtb2RpZmllZCBjb250ZW50IGluIHN1Ym1vZHVsZXMpIgorbXNnc3RyICIiCisiICAozr3OsSDOs86vzr3Otc65IM+Fz4DOv86yzr/Ou86uIM6uIM6xz4DPjM+Bz4HOuc+Izrcgz4TOv8+FIM68zrcgz4DOsc+BzrHOus6/zrvOv8+FzrjOv8+NzrzOtc69zr/PhSDOriDPhM+Bzr/PgM6/z4DOv865zrfOvM6tzr3Ov8+FICIKKyLPgM61z4HOuc61z4fOv868zq3Ovc6/z4Ugz4PPhM65z4Igz4XPgM6/zrXOvc+Mz4TOt8+EzrXPgikiCisKKyM6IHd0LXN0YXR1cy5jOjI0MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICh1c2UgXCJnaXQgJXMgPGZpbGU+Li4uXCIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKK21zZ3N0ciAiIgorIiAgKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgJXMgPM6xz4HPh861zq/Ovz4uLi5cIiDOs865zrEgzr3OsSDPg8+FzrzPgM61z4HOuc67zrfPhs64zrXOryDPg861IM6xz4XPhM6sIM+Azr/PhSDOuM6xICIKKyLPhc+Azr/Oss67zrfOuM6/z43OvSkiCisKKyM6IHd0LXN0YXR1cy5jOjI1NworbXNnaWQgImJvdGggZGVsZXRlZDoiCittc2dzdHIgIs60zrnOsc6zz4HOsc+Gzq4gzrrOsc65IM6xz4DPjCDPhM6/z4XPgiDOtM+Nzr86IgorCisjOiB3dC1zdGF0dXMuYzoyNTkKK21zZ2lkICJhZGRlZCBieSB1czoiCittc2dzdHIgIs+Az4HOv8+DzrjOrs66zrcgzrHPgM+MIM61zrzOrM+COiIKKworIzogd3Qtc3RhdHVzLmM6MjYxCittc2dpZCAiZGVsZXRlZCBieSB0aGVtOiIKK21zZ3N0ciAizrTOuc6xzrPPgc6xz4bOriDOsc+Az4wgzrHPhc+Ezr/Pjc+COiIKKworIzogd3Qtc3RhdHVzLmM6MjYzCittc2dpZCAiYWRkZWQgYnkgdGhlbToiCittc2dzdHIgIs+Az4HOv8+DzrjOrs66zrcgzrHPgM+MIM6xz4XPhM6/z43PgjoiCisKKyM6IHd0LXN0YXR1cy5jOjI2NQorbXNnaWQgImRlbGV0ZWQgYnkgdXM6IgorbXNnc3RyICLOtM65zrHOs8+BzrHPhs6uIM6xz4DPjCDOtc68zqzPgjoiCisKKyM6IHd0LXN0YXR1cy5jOjI2NworbXNnaWQgImJvdGggYWRkZWQ6IgorbXNnc3RyICLPgM+Bzr/Pg864zq7Ous63IM66zrHOuSDOsc+Az4wgz4TOv8+Fz4IgzrTPjc6/OiIKKworIzogd3Qtc3RhdHVzLmM6MjY5Cittc2dpZCAiYm90aCBtb2RpZmllZDoiCittc2dzdHIgIs+Ez4HOv8+Azr/PgM6/zq/Ot8+DzrcgzrrOsc65IM6xz4DPjCDPhM6/z4XPgiDOtM+Nzr86IgorCisjOiB3dC1zdGF0dXMuYzoyNzkKK21zZ2lkICJuZXcgZmlsZToiCittc2dzdHIgIs69zq3OvyDOsc+Bz4fOtc6vzr86IgorCisjOiB3dC1zdGF0dXMuYzoyODEKK21zZ2lkICJjb3BpZWQ6IgorbXNnc3RyICLOsc69z4TOuc6zz4HOsc+Gzq46IgorCisjOiB3dC1zdGF0dXMuYzoyODMKK21zZ2lkICJkZWxldGVkOiIKK21zZ3N0ciAizrTOuc6xzrPPgc6xz4bOrjoiCisKKyM6IHd0LXN0YXR1cy5jOjI4NQorbXNnaWQgIm1vZGlmaWVkOiIKK21zZ3N0ciAiz4TPgc6/z4DOv8+Azr/Or863z4POtzoiCisKKyM6IHd0LXN0YXR1cy5jOjI4NworbXNnaWQgInJlbmFtZWQ6IgorbXNnc3RyICLOvM61z4TOv869zr/OvM6xz4POr86xOiIKKworIzogd3Qtc3RhdHVzLmM6Mjg5Cittc2dpZCAidHlwZWNoYW5nZToiCittc2dzdHIgIs6xzrvOu86xzrPOriDPhM+Nz4DOv8+FOiIKKworIzogd3Qtc3RhdHVzLmM6MjkxCittc2dpZCAidW5rbm93bjoiCittc2dzdHIgIs6szrPOvc+Jz4PPhM6/OiIKKworIzogd3Qtc3RhdHVzLmM6MjkzCittc2dpZCAidW5tZXJnZWQ6IgorbXNnc3RyICLOvM63IM+Dz4XOs8+Hz4nOvc61z4XOvM6tzr3OvzoiCisKKyM6IHd0LXN0YXR1cy5jOjM3MworbXNnaWQgIm5ldyBjb21taXRzLCAiCittc2dzdHIgIs69zq3Otc+CIM+Fz4DOv86yzr/Ou86tz4IsICIKKworIzogd3Qtc3RhdHVzLmM6Mzc1Cittc2dpZCAibW9kaWZpZWQgY29udGVudCwgIgorbXNnc3RyICLPhM+Bzr/PgM6/z4DOv865zrfOvM6tzr3OvyDPgM61z4HOuc61z4fPjM68zrXOvc6/LCAiCisKKyM6IHd0LXN0YXR1cy5jOjM3NworbXNnaWQgInVudHJhY2tlZCBjb250ZW50LCAiCittc2dzdHIgIs68zrcgz4DOsc+BzrHOus6/zrvOv8+FzrjOv8+NzrzOtc69zr8gz4DOtc+BzrnOtc+Hz4zOvM61zr3OvywgIgorCisjOiB3dC1zdGF0dXMuYzo4ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91ciBzdGFzaCBjdXJyZW50bHkgaGFzICVkIGVudHJ5IgorbXNnaWRfcGx1cmFsICJZb3VyIHN0YXNoIGN1cnJlbnRseSBoYXMgJWQgZW50cmllcyIKK21zZ3N0clswXSAizpcgzrHPgM6/zrjOrs66zrXPhc+Dzq4gz4POsc+CIM6tz4fOtc65IM+Ez47Pgc6xICVkIM+Dz4TOv865z4fOtc6vzr8iCittc2dzdHJbMV0gIs6XIM6xz4DOv864zq7Ous61z4XPg86uIM+DzrHPgiDOrc+HzrXOuSDPhM+Oz4HOsSAlZCDPg8+Ezr/Ouc+HzrXOr86xIgorCisjOiB3dC1zdGF0dXMuYzo5MTYKK21zZ2lkICJTdWJtb2R1bGVzIGNoYW5nZWQgYnV0IG5vdCB1cGRhdGVkOiIKK21zZ3N0ciAizqXPgM6/zrXOvc+Mz4TOt8+EzrXPgiDPgM6/z4UgzqzOu867zrHOvs6xzr0gzrHOu867zqwgzrTOtc69IM61zr3Ot868zrXPgc+OzrjOt866zrHOvToiCisKKyM6IHd0LXN0YXR1cy5jOjkxOAorbXNnaWQgIlN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCittc2dzdHIgIs6RzrvOu86xzrPOrc+CIM+DzrUgz4XPgM6/zrXOvc+Mz4TOt8+EzrXPgiDPgM+Bzr/PgiDPhc+Azr/Oss6/zrvOrjoiCisKKyM6IHd0LXN0YXR1cy5jOjEwMDAKK21zZ2lkICIiCisiRG8gbm90IG1vZGlmeSBvciByZW1vdmUgdGhlIGxpbmUgYWJvdmUuXG4iCisiRXZlcnl0aGluZyBiZWxvdyBpdCB3aWxsIGJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisizp3OsSDOvM63zr0gz4TPgc6/z4DOv8+Azr/Ouc6uz4POtc+EzrUgzq4gzrHPhs6xzrnPgc6tz4POtc+EzrUgz4TOt869IM+AzrHPgc6xz4DOrM69z4kgzrPPgc6xzrzOvM6uLlxuIgorIs6fz4TOuc60zq7PgM6/z4TOtSDOus6sz4TPiSDOsc+Az4wgzrHPhc+Ezq7OvSDOuM6xIM6xzrPOvc6/zrfOuM61zq8uIgorCisjOiB3dC1zdGF0dXMuYzoxMTAxCittc2dpZCAiWW91IGhhdmUgdW5tZXJnZWQgcGF0aHMuIgorbXNnc3RyICLOiM+HzrXPhM61IM68zrcgz4PPhc6zz4fPic69zrXPhc68zq3Ovc61z4IgzrTOuc6xzrTPgc6/zrzOrc+CLiIKKworIzogd3Qtc3RhdHVzLmM6MTEwNAorbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjb21taXRcIikiCittc2dzdHIgIiAgKM60zrnOv8+BzrjPjs+Dz4TOtSDPhM65z4Igz4PPhc6zzrrPgc6/z43Pg861zrnPgiDOus6xzrkgz4TPgc6tzr7PhM61IFwiZ2l0IGNvbW1pdFwiKSIKKworIzogd3Qtc3RhdHVzLmM6MTEwNgorbXNnaWQgIiAgKHVzZSBcImdpdCBtZXJnZSAtLWFib3J0XCIgdG8gYWJvcnQgdGhlIG1lcmdlKSIKK21zZ3N0ciAiIgorIiAgKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIM6zzrnOsSDOvc6xIM61zrPOus6xz4TOsc67zrXOr8+IzrXPhM61IM+Ezrcgz4PPhc6zz4fPjs69zrXPhc+DzrcpIgorCisjOiB3dC1zdGF0dXMuYzoxMTEwCittc2dpZCAiQWxsIGNvbmZsaWN0cyBmaXhlZCBidXQgeW91IGFyZSBzdGlsbCBtZXJnaW5nLiIKK21zZ3N0ciAizpXPgM65zrvPjc64zrfOus6xzr0gz4zOu861z4Igzr/OuSDPg8+FzrPOus+Bzr/Pjc+DzrXOuc+CIM6xzrvOu86sIM6xzrrPjM68zrEgzrrOrM69zrXPhM61IM+Dz4XOs8+Hz47Ovc61z4XPg863LiIKKworIzogd3Qtc3RhdHVzLmM6MTExMworbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXRcIiB0byBjb25jbHVkZSBtZXJnZSkiCittc2dzdHIgIiAgKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgY29tbWl0XCIgzrPOuc6xIM69zrEgzr/Ou86/zrrOu863z4HPjs+DzrXPhM61IM+Ezrcgz4PPhc6zz4fPjs69zrXPhc+DzrcpIgorCisjOiB3dC1zdGF0dXMuYzoxMTIyCittc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGFuIGFtIHNlc3Npb24uIgorbXNnc3RyICLOks+Bzq/Pg866zrXPg8+EzrUgz4PPhM63IM68zq3Pg863IM68zrnOsc+CIM60zrnOtc+BzrPOsc+Dzq/Osc+CIGFtLiIKKworIzogd3Qtc3RhdHVzLmM6MTEyNQorbXNnaWQgIlRoZSBjdXJyZW50IHBhdGNoIGlzIGVtcHR5LiIKK21zZ3N0ciAizpcgz4DOsc+Bzr/Pjc+DzrEgzrTOuc+Mz4HOuM+Jz4POtyDOtc6vzr3Osc65IM66zrXOvc6uLiIKKworIzogd3Qtc3RhdHVzLmM6MTEyOQorbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHRoZW4gcnVuIFwiZ2l0IGFtIC0tY29udGludWVcIikiCittc2dzdHIgIiAgKM60zrnOv8+BzrjPjs+Dz4TOtSDPhM65z4Igz4PPhc6zzrrPgc6/z43Pg861zrnPgiDOus6xzrkgz4TPgc6tzr7PhM61IFwiZ2l0IGFtIC0tY29udGludWVcIikiCisKKyM6IHd0LXN0YXR1cy5jOjExMzEKK21zZ2lkICIgICh1c2UgXCJnaXQgYW0gLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKK21zZ3N0ciAiIgorIiAgKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgYW0gLS1za2lwXCIgzrPOuc6xIM69zrEgz4DPgc6/z4PPgM61z4HOrM+DzrXPhM61IM6xz4XPhM6uIM+EzrcgzrTOuc+Mz4HOuM+Jz4POtykiCisKKyM6IHd0LXN0YXR1cy5jOjExMzMKK21zZ2lkICIgICh1c2UgXCJnaXQgYW0gLS1hYm9ydFwiIHRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCkiCittc2dzdHIgIiIKKyIgICjPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IFwiZ2l0IGFtIC0tYWJvcnRcIiDOs865zrEgzr3OsSDOsc+Azr/Ous6xz4TOsc+Dz4TOrs+DzrXPhM61IM+Ezr/OvSDOsc+Bz4fOuc66z4wgzrrOu86szrTOvykiCisKKyM6IHd0LXN0YXR1cy5jOjEyNjQKK21zZ2lkICJnaXQtcmViYXNlLXRvZG8gaXMgbWlzc2luZy4iCittc2dzdHIgIs6bzrXOr8+AzrXOuSDPhM6/IGdpdC1yZWJhc2UtdG9kby4iCisKKyM6IHd0LXN0YXR1cy5jOjEyNjYKK21zZ2lkICJObyBjb21tYW5kcyBkb25lLiIKK21zZ3N0ciAizpTOtc69IM6/zrvOv866zrvOt8+Bz47OuM63zrrOtSDOus6xzrzOr86xIM61zr3PhM6/zrvOri4iCisKKyM6IHd0LXN0YXR1cy5jOjEyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTGFzdCBjb21tYW5kIGRvbmUgKCVkIGNvbW1hbmQgZG9uZSk6IgorbXNnaWRfcGx1cmFsICJMYXN0IGNvbW1hbmRzIGRvbmUgKCVkIGNvbW1hbmRzIGRvbmUpOiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IHd0LXN0YXR1cy5jOjEyODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAoc2VlIG1vcmUgaW4gZmlsZSAlcykiCittc2dzdHIgIiAgKM60zrXOr8+EzrUgz4DOtc+BzrnPg8+Dz4zPhM61z4HOsSDPg8+Ezr8gzrHPgc+HzrXOr86/ICVzKSIKKworIzogd3Qtc3RhdHVzLmM6MTI4NQorbXNnaWQgIk5vIGNvbW1hbmRzIHJlbWFpbmluZy4iCittc2dzdHIgIs6UzrXOvSDOsc+Azr/OvM6tzr3Otc65IM66zrHOvM6vzrEgzrXOvc+Ezr/Ou86uLiIKKworIzogd3Qtc3RhdHVzLmM6MTI4OAorIywgYy1mb3JtYXQKK21zZ2lkICJOZXh0IGNvbW1hbmQgdG8gZG8gKCVkIHJlbWFpbmluZyBjb21tYW5kKToiCittc2dpZF9wbHVyYWwgIk5leHQgY29tbWFuZHMgdG8gZG8gKCVkIHJlbWFpbmluZyBjb21tYW5kcyk6IgorbXNnc3RyWzBdICLOlc+Az4zOvM61zr3OtyDOtc69z4TOv867zq4gz4DPgc6/z4IgzrXOus+Ezq3Ou861z4POtyAoJWQgzrXOvc+Ezr/Ou86uIM6xz4DOv868zq3Ovc61zrkpOiIKK21zZ3N0clsxXSAizpXPgM+MzrzOtc69zrXPgiDOtc69z4TOv867zq3PgiDPgM+Bzr/PgiDOtc66z4TOrc67zrXPg863ICglZCDOtc69z4TOv867zq3PgiDOsc+Azr/OvM6tzr3Ov8+Fzr0pOiIKKworIzogd3Qtc3RhdHVzLmM6MTI5NgorbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1lZGl0LXRvZG9cIiB0byB2aWV3IGFuZCBlZGl0KSIKK21zZ3N0ciAiIgorIiAgKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgcmViYXNlIC0tZWRpdC10b2RvXCIgzrPOuc6xIM+Az4HOv86yzr/Ou86uIM66zrHOuSDOtc+AzrXOvs61z4HOs86xz4POr86xKSIKKworIzogd3Qtc3RhdHVzLmM6MTMwOAorIywgYy1mb3JtYXQKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKK21zZ3N0ciAizpHPhc+Ezq4gz4TOtyDPg8+EzrnOs868zq4gzrrOrM69zrXPhM61IHJlYmFzZSDPhM6/zr0gzrrOu86szrTOvyAnJXMnIM+Dz4TOvyAnJXMnLiIKKworIzogd3Qtc3RhdHVzLmM6MTMxMworbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJlYmFzaW5nLiIKK21zZ3N0ciAizpHPhc+Ezq4gz4TOtyDPg8+EzrnOs868zq4gzrrOrM69zrXPhM61IHJlYmFzZS4iCisKKyM6IHd0LXN0YXR1cy5jOjEzMjYKK21zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCB0aGVuIHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKK21zZ3N0ciAiICAozrTOuc6/z4HOuM+Oz4PPhM61IM+EzrnPgiDPg8+FzrPOus+Bzr/Pjc+DzrXOuc+CIM66zrHOuSDPhM+Bzq3Ovs+EzrUgXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCisKKyM6IHd0LXN0YXR1cy5jOjEzMjgKK21zZ2lkICIgICh1c2UgXCJnaXQgcmViYXNlIC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCittc2dzdHIgIiIKKyIgICjPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IFwiZ2l0IHJlYmFzZSAtLXNraXBcIiDOs865zrEgzr3OsSDPgM+Bzr/Pg8+AzrXPgc6sz4POtc+EzrUgzrHPhc+Ezq4gz4TOtyDOtM65z4zPgc64z4nPg863KSIKKworIzogd3Qtc3RhdHVzLmM6MTMzMAorbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1hYm9ydFwiIHRvIGNoZWNrIG91dCB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKK21zZ3N0ciAiIgorIiAgKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgcmViYXNlIC0tYWJvcnRcIiDOs865zrEgzr3OsSDOtc6+zrHOs86szrPOtc+EzrUgz4TOv869IM6xz4HPh865zrrPjCDOus67zqzOtM6/KSIKKworIzogd3Qtc3RhdHVzLmM6MTMzNworbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKK21zZ3N0ciAiICAozrXPgM65zrvPjc64zrfOus6xzr0gz4zOu861z4Igzr/OuSDPg8+FzrPOus+Bzr/Pjc+DzrXOuc+COiDPhM+Bzq3Ovs+EzrUgXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCisKKyM6IHd0LXN0YXR1cy5jOjEzNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBhcmUgY3VycmVudGx5IHNwbGl0dGluZyBhIGNvbW1pdCB3aGlsZSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKK21zZ3N0ciAiIgorIs6Rz4XPhM6uIM+Ezrcgz4PPhM65zrPOvM6uIM+EzrXOvM6xz4fOr862zrXPhM61IM68zrnOsSDPhc+Azr/Oss6/zrvOriDOus6xz4TOrCDPhM63IM60zrnOrM+BzrrOtc65zrEgcmViYXNlIM+Ezr/PhSDOus67zqzOtM6/z4UgIgorIiclcycgz4PPhM6/ICclcycuIgorCisjOiB3dC1zdGF0dXMuYzoxMzQ2Cittc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgc3BsaXR0aW5nIGEgY29tbWl0IGR1cmluZyBhIHJlYmFzZS4iCittc2dzdHIgIs6Rz4XPhM6uIM+Ezrcgz4PPhM65zrPOvM6uIM+EzrXOvM6xz4fOr862zrXPhM61IM68zrnOsSDPhc+Azr/Oss6/zrvOriDOus6xz4TOrCDPhM63IM60zrnOrM+BzrrOtc65zrEgzrXOvc+Mz4IgcmViYXNlLiIKKworIzogd3Qtc3RhdHVzLmM6MTM0OQorbXNnaWQgIiAgKE9uY2UgeW91ciB3b3JraW5nIGRpcmVjdG9yeSBpcyBjbGVhbiwgcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgorbXNnc3RyICIiCisiICAozozPhM6xzr0gzr8gz4bOrM66zrXOu86/z4IgzrXPgc6zzrHPg86vzrHPgiDPg86xz4IgzrjOsSDOtc6vzr3Osc65IM66zrHOuM6xz4HPjM+CLCDPhM+Bzq3Ovs+EzrUgXCJnaXQgcmViYXNlIC0tIgorImNvbnRpbnVlXCIpIgorCisjOiB3dC1zdGF0dXMuYzoxMzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGVkaXRpbmcgYSBjb21taXQgd2hpbGUgcmViYXNpbmcgYnJhbmNoICclcycgb24gJyVzJy4iCittc2dzdHIgIiIKKyLOkc+Fz4TOriDPhM63IM+Dz4TOuc6zzrzOriDOtM65zr/Pgc64z47Ovc61z4TOtSDOvM65zrEgz4XPgM6/zrLOv867zq4gzrrOsc+Ezqwgz4TOtyDOtM65zqzPgc66zrXOuc6xIHJlYmFzZSDPhM6/z4UgzrrOu86szrTOv8+FICIKKyInJXMnIM+Dz4TOvyAnJXMnLiIKKworIzogd3Qtc3RhdHVzLmM6MTM1OAorbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGVkaXRpbmcgYSBjb21taXQgZHVyaW5nIGEgcmViYXNlLiIKK21zZ3N0ciAizpHPhc+Ezq4gz4TOtyDPg8+EzrnOs868zq4gzrTOuc6/z4HOuM+Ozr3Otc+EzrUgzrzOuc6xIM+Fz4DOv86yzr/Ou86uIM66zrHPhM6sIM+EzrcgzrTOuc6sz4HOus61zrnOsSDOtc69z4zPgiByZWJhc2UuIgorCisjOiB3dC1zdGF0dXMuYzoxMzYxCittc2dpZCAiICAodXNlIFwiZ2l0IGNvbW1pdCAtLWFtZW5kXCIgdG8gYW1lbmQgdGhlIGN1cnJlbnQgY29tbWl0KSIKK21zZ3N0ciAiIgorIiAgKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgY29tbWl0IC0tYW1lbmRcIiDOs865zrEgzr3OsSDPhM+Bzr/PgM6/z4DOv865zq7Pg861z4TOtSDPhM63zr0gz4TPgc6tz4fOv8+Fz4POsSAiCisiz4XPgM6/zrLOv867zq4pIgorCisjOiB3dC1zdGF0dXMuYzoxMzYzCittc2dpZCAiIgorIiAgKHVzZSBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiIG9uY2UgeW91IGFyZSBzYXRpc2ZpZWQgd2l0aCB5b3VyIGNoYW5nZXMpIgorbXNnc3RyICIiCisiICAoz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtSBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiIM+Mz4TOsc69IM6/zrkgzrHOu867zrHOs86tz4Igz4POsc+CIM+DzrHPgiAiCisizrnOus6xzr3Ov8+Azr/Ouc6/z43OvSkiCisKKyM6IHd0LXN0YXR1cy5jOjEzNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgY2hlcnJ5LXBpY2tpbmcgY29tbWl0ICVzLiIKK21zZ3N0ciAizpHPhc+Ezq4gz4TOtyDPg8+EzrnOs868zq4gzrrOrM69zrXPhM61IM61z4DOuc67zrXOus+EzrnOus6uIM60zrnOsc67zr/Os86uIM+EzrfPgiDPhc+Azr/Oss6/zrvOrs+CICVzLiIKKworIzogd3Qtc3RhdHVzLmM6MTM3NworbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgorbXNnc3RyICIiCisiICAozrTOuc6/z4HOuM+Oz4PPhM61IM+EzrnPgiDPg8+FzrPOus+Bzr/Pjc+DzrXOuc+CIM66zrHOuSDPhM+Bzq3Ovs+EzrUgXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiKSIKKworIzogd3Qtc3RhdHVzLmM6MTM4MAorbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgorbXNnc3RyICIiCisiICAozrXPgM65zrvPjc64zrfOus6xzr0gz4zOu861z4Igzr/OuSDPg8+FzrPOus+Bzr/Pjc+DzrXOuc+COiDPhM+Bzq3Ovs+EzrUgXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiKSIKKworIzogd3Qtc3RhdHVzLmM6MTM4MgorbXNnaWQgIiAgKHVzZSBcImdpdCBjaGVycnktcGljayAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSBjaGVycnktcGljayBvcGVyYXRpb24pIgorbXNnc3RyICIiCisiICAoz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtSBcImdpdCBjaGVycnktcGljayAtLWFib3J0XCIgzrPOuc6xIM69zrEgzrHOus+Fz4HPjs+DzrXPhM61IM+EzrfOvSDOtc69zq3Pgc6zzrXOuc6xICIKKyLOtc+AzrnOu861zrrPhM65zrrOrs+CIM60zrnOsc67zr/Os86uz4IpIgorCisjOiB3dC1zdGF0dXMuYzoxMzkwCisjLCBjLWZvcm1hdAorbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJldmVydGluZyBjb21taXQgJXMuIgorbXNnc3RyICLOkc+Fz4TOriDPhM63IM+Dz4TOuc6zzrzOriDOsc69zrHOuc+BzrXOr8+EzrUgz4TOt869IM+Fz4DOv86yzr/Ou86uICVzLiIKKworIzogd3Qtc3RhdHVzLmM6MTM5NQorbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiKSIKK21zZ3N0ciAiICAozrXPgM65zrvPjc+Dz4TOtSDPhM65z4Igz4PPhc6zzrrPgc6/z43Pg861zrnPgiDOus6xzrkgz4TPgc6tzr7PhM61IFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgorCisjOiB3dC1zdGF0dXMuYzoxMzk4Cittc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgorbXNnc3RyICIgICjOtc+AzrnOu8+NzrjOt866zrHOvSDPjM67zrXPgiDOv865IM+Dz4XOs866z4HOv8+Nz4POtc65z4I6IM+Ez4HOrc6+z4TOtSBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiKSIKKworIzogd3Qtc3RhdHVzLmM6MTQwMAorbXNnaWQgIiAgKHVzZSBcImdpdCByZXZlcnQgLS1hYm9ydFwiIHRvIGNhbmNlbCB0aGUgcmV2ZXJ0IG9wZXJhdGlvbikiCittc2dzdHIgIiIKKyIgICjPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IFwiZ2l0IHJldmVydCAtLWFib3J0XCIgzrPOuc6xIM69zrEgzrXOs866zrHPhM6xzrvOtc6vz4jOtc+EzrUgz4TOtyDOtM65zrXPgc6zzrHPg86vzrEgIgorInJldmVydCkiCisKKyM6IHd0LXN0YXR1cy5jOjE0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgYmlzZWN0aW5nLCBzdGFydGVkIGZyb20gYnJhbmNoICclcycuIgorbXNnc3RyICLOkc+Fz4TOriDPhM63IM+Dz4TOuc6zzrzOriDOtM65z4fOv8+Ezr/OvM61zq/PhM61LCDOrc6zzrnOvc61IM6xz4HPh86uIM6xz4DPjCDPhM6/zr0gzrrOu86szrTOvyAnJXMnLiIKKworIzogd3Qtc3RhdHVzLmM6MTQxNAorbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGJpc2VjdGluZy4iCittc2dzdHIgIs6Rz4XPhM6uIM+Ezrcgz4PPhM65zrPOvM6uIM60zrnPh86/z4TOv868zrXOr8+EzrUuIgorCisjOiB3dC1zdGF0dXMuYzoxNDE3Cittc2dpZCAiICAodXNlIFwiZ2l0IGJpc2VjdCByZXNldFwiIHRvIGdldCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBicmFuY2gpIgorbXNnc3RyICIiCisiICAoz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtSBcImdpdCBiaXNlY3QgcmVzZXRcIiDOs865zrEgzr3OsSDOtc+AzrnPg8+Ez4HOrc+IzrXPhM61IM+Dz4TOv869IM6xz4HPh865zrrPjCDOus67zqzOtM6/KSIKKworIzogd3Qtc3RhdHVzLmM6MTYxNworbXNnaWQgIk9uIGJyYW5jaCAiCittc2dzdHIgIs6jz4TOv869IM66zrvOrM60zr8gIgorCisjOiB3dC1zdGF0dXMuYzoxNjI0Cittc2dpZCAiaW50ZXJhY3RpdmUgcmViYXNlIGluIHByb2dyZXNzOyBvbnRvICIKK21zZ3N0ciAizrXOus+EzrXOu861zq/PhM6xzrkgzrTOuc6xzrTPgc6xz4PPhM65zrrPjCByZWJhc2UsIM+AzqzOvc+JIM+Dz4TOvyAiCisKKyM6IHd0LXN0YXR1cy5jOjE2MjYKK21zZ2lkICJyZWJhc2UgaW4gcHJvZ3Jlc3M7IG9udG8gIgorbXNnc3RyICLOtc66z4TOtc67zrXOr8+EzrHOuSByZWJhc2UsIM+AzqzOvc+JIM+Dz4TOvyAiCisKKyM6IHd0LXN0YXR1cy5jOjE2MzEKK21zZ2lkICJIRUFEIGRldGFjaGVkIGF0ICIKK21zZ3N0ciAizpHPgM6/z4PPhc69zrTOtc60zrXOvM6tzr3OvyBIRUFEIM+Dz4TOvyAiCisKKyM6IHd0LXN0YXR1cy5jOjE2MzMKK21zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgorbXNnc3RyICLOkc+Azr/Pg8+Fzr3OtM61zrTOtc68zq3Ovc6/IEhFQUQgzrHPgM+MIM+Ezr8gIgorCisjOiB3dC1zdGF0dXMuYzoxNjM2Cittc2dpZCAiTm90IGN1cnJlbnRseSBvbiBhbnkgYnJhbmNoLiIKK21zZ3N0ciAizpTOtc69IM61zq/Pg8+EzrUgzrHPhc+Ezq4gz4TOtyDPg8+EzrnOs868zq4gz4POtSDOus6xzr3Orc69zrHOvSDOus67zqzOtM6/LiIKKworIzogd3Qtc3RhdHVzLmM6MTY1MworbXNnaWQgIkluaXRpYWwgY29tbWl0IgorbXNnc3RyICLOkc+Bz4fOuc66zq4gz4XPgM6/zrLOv867zq4iCisKKyM6IHd0LXN0YXR1cy5jOjE2NTQKK21zZ2lkICJObyBjb21taXRzIHlldCIKK21zZ3N0ciAizpTOtc69IM+Fz4DOrM+Bz4fOv8+Fzr0gzrHOus+MzrzOsSDPhc+Azr/Oss6/zrvOrc+CIgorCisjOiB3dC1zdGF0dXMuYzoxNjY4Cittc2dpZCAiVW50cmFja2VkIGZpbGVzIgorbXNnc3RyICLOnM63IM+AzrHPgc6xzrrOv867zr/Phc64zr/Pjc68zrXOvc6xIM6xz4HPh861zq/OsSIKKworIzogd3Qtc3RhdHVzLmM6MTY3MAorbXNnaWQgIklnbm9yZWQgZmlsZXMiCittc2dzdHIgIs6Rz4HPh861zq/OsSDPgM6/z4Ugz4DOsc+BzrHOss67zq3PgM6/zr3PhM6xzrkiCisKKyM6IHd0LXN0YXR1cy5jOjE2NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGVudW1lcmF0ZSB1bnRyYWNrZWQgZmlsZXMuICdzdGF0dXMgLXVubydcbiIKKyJtYXkgc3BlZWQgaXQgdXAsIGJ1dCB5b3UgaGF2ZSB0byBiZSBjYXJlZnVsIG5vdCB0byBmb3JnZXQgdG8gYWRkXG4iCisibmV3IGZpbGVzIHlvdXJzZWxmIChzZWUgJ2dpdCBoZWxwIHN0YXR1cycpLiIKK21zZ3N0ciAiIgorIs6XIM6xz4DOsc+Bzq/OuM68zrfPg863IM+Ez4nOvSDOvM63IM+AzrHPgc6xzrrOv867zr/Phc64zr/Pjc68zrXOvc+Jzr0gzrHPgc+HzrXOr8+Jzr0gz4DOrs+BzrUgJS4yZiDOtM61z4XPhM61z4HPjM67zrXPgM+EzrEuIM6kzr8gIgorIidzdGF0dXMgLXVubydcbiIKKyLOvM+Azr/Pgc61zq8gzr3OsSDPhM63zr0gzrXPgM65z4TOsc+Hz43Ovc61zrksIM6xzrvOu86sIM+Az4HOrc+AzrXOuSDOvc6xIM+Az4HOv8+Dzq3Ovs61z4TOtSDOvc6xIM68zrfOvSDOvs61z4fOrM+DzrXPhM61IM69zrEgIgorIs+Az4HOv8+DzrjOrc+DzrXPhM61XG4iCisizrXPg861zq/PgiDPhM6xIM69zq3OsSDOsc+Bz4fOtc6vzrEgKM60zrXOr8+EzrUgz4TOvyAnZ2l0IGhlbHAgc3RhdHVzJykuIgorCisjOiB3dC1zdGF0dXMuYzoxNjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIlVudHJhY2tlZCBmaWxlcyBub3QgbGlzdGVkJXMiCittc2dzdHIgIs6czrcgz4DOsc+BzrHOus6/zrvOv8+FzrjOv8+NzrzOtc69zrEgzrHPgc+HzrXOr86xIM+Azr/PhSDOtM61zr0gzq3Os865zr3OtSDPgM6xz4HOrM64zrXPg86uIM+Ezr/Phc+CJXMiCisKKyM6IHd0LXN0YXR1cy5jOjE2ODIKK21zZ2lkICIgKHVzZSAtdSBvcHRpb24gdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpIgorbXNnc3RyICIiCisiICjPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IM+EzrfOvSDOtc+AzrnOu86/zrPOriAtdSDOs865zrEgzr3OsSDOs86vzr3Otc65IM+Az4HOv86yzr/Ou86uIM+Ez4nOvSDOvM63ICIKKyLPgM6xz4HOsc66zr/Ou86/z4XOuM6/z43OvM61zr3Pic69IM6xz4HPh861zq/Pic69KSIKKworIzogd3Qtc3RhdHVzLmM6MTY4OAorbXNnaWQgIk5vIGNoYW5nZXMiCittc2dzdHIgIs6UzrXOvSDPhc+AzqzPgc+Hzr/Phc69IM6xzrvOu86xzrPOrc+CIgorCisjOiB3dC1zdGF0dXMuYzoxNjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGNoYW5nZXMgYWRkZWQgdG8gY29tbWl0ICh1c2UgXCJnaXQgYWRkXCIgYW5kL29yIFwiZ2l0IGNvbW1pdCAtYVwiKVxuIgorbXNnc3RyICIiCisizrTOtc69IM+Az4HOv8+Dz4TOrc64zrfOus6xzr0gzrHOu867zrHOs86tz4Igz4PPhM63zr0gz4XPgM6/zrLOv867zq4gKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgYWRkXCIgzrrOsc65L86uIFwiZ2l0ICIKKyJjb21taXQgLWFcIilcbiIKKworIzogd3Qtc3RhdHVzLmM6MTY5NgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdFxuIgorbXNnc3RyICLOtM61zr0gz4DPgc6/z4PPhM6tzrjOt866zrHOvSDOsc67zrvOsc6zzq3PgiDPg8+EzrfOvSDPhc+Azr/Oss6/zrvOrlxuIgorCisjOiB3dC1zdGF0dXMuYzoxNjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJub3RoaW5nIGFkZGVkIHRvIGNvbW1pdCBidXQgdW50cmFja2VkIGZpbGVzIHByZXNlbnQgKHVzZSBcImdpdCBhZGRcIiB0byAiCisidHJhY2spXG4iCittc2dzdHIgIiIKKyLOtM61zr0gz4DPgc6/z4PPhM6tzrjOt866zrUgz4TOr8+Azr/PhM6xIM+Dz4TOt869IM+Fz4DOv86yzr/Ou86uIM6xzrvOu86sIM+Fz4DOrM+Bz4fOv8+Fzr0gzrzOtyDPgM6xz4HOsc66zr/Ou86/z4XOuM6/z43OvM61zr3OsSDOsc+Bz4fOtc6vzrEgIgorIijPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IFwiZ2l0IGFkZFwiIM6zzrnOsSDOvc6xIM+AzrHPgc6xzrrOv867zr/Phc64zq7Pg861z4TOtSlcbiIKKworIzogd3Qtc3RhdHVzLmM6MTcwMgorIywgYy1mb3JtYXQKK21zZ2lkICJub3RoaW5nIGFkZGVkIHRvIGNvbW1pdCBidXQgdW50cmFja2VkIGZpbGVzIHByZXNlbnRcbiIKK21zZ3N0ciAiIgorIs60zrXOvSDPgM+Bzr/Pg8+Ezq3OuM63zrrOtSDPhM6vz4DOv8+EzrEgz4PPhM63zr0gz4XPgM6/zrLOv867zq4gzrHOu867zqwgz4XPgM6sz4HPh86/z4XOvSDOvM63IM+AzrHPgc6xzrrOv867zr/Phc64zr/Pjc68zrXOvc6xIM6xz4HPh861zq/OsVxuIgorCisjOiB3dC1zdGF0dXMuYzoxNzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0IChjcmVhdGUvY29weSBmaWxlcyBhbmQgdXNlIFwiZ2l0IGFkZFwiIHRvIHRyYWNrKVxuIgorbXNnc3RyICIiCisizrTOtc69IM+Fz4DOrM+Bz4fOtc65IM+Ezq/PgM6/z4TOsSDPgM+Bzr/PgiDPhc+Azr/Oss6/zrvOriAozrTOt868zrnOv8+Fz4HOs86uz4PPhM61L86xzr3PhM65zrPPgc6sz4jPhM61IM6xz4HPh861zq/OsSDOus6xzrkgIgorIs+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgXCJnaXQgYWRkXCIgzrPOuc6xIM69zrEgz4DOsc+BzrHOus6/zrvOv8+FzrjOrs+DzrXPhM61KVxuIgorCisjOiB3dC1zdGF0dXMuYzoxNzA4IHd0LXN0YXR1cy5jOjE3MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aGluZyB0byBjb21taXRcbiIKK21zZ3N0ciAizrTOtc69IM+Fz4DOrM+Bz4fOtc65IM+Ezq/PgM6/z4TOsSDPgM+Bzr/PgiDPhc+Azr/Oss6/zrvOrlxuIgorCisjOiB3dC1zdGF0dXMuYzoxNzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0ICh1c2UgLXUgdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpXG4iCittc2dzdHIgIiIKKyLOtM61zr0gz4XPgM6sz4HPh861zrkgz4TOr8+Azr/PhM6xIM+Az4HOv8+CIM+Fz4DOv86yzr/Ou86uICjPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IC11IM6zzrnOsSDPgM+Bzr/Oss6/zrvOriDPhM+Jzr0gIgorIs68zrfPgM6xz4HOsc66zr/Ou86/z4XOuM6/z43OvM61zr3Pic69IM6xz4HPh861zq/Pic69KVxuIgorCisjOiB3dC1zdGF0dXMuYzoxNzE1CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0LCB3b3JraW5nIHRyZWUgY2xlYW5cbiIKK21zZ3N0ciAizrTOtc69IM+Fz4DOrM+Bz4fOtc65IM+Ezq/PgM6/z4TOsSDPgM+Bzr/PgiDPhc+Azr/Oss6/zrvOriwgz4TOvyDOtM6tzr3PhM+Bzr8gzrXPgc6zzrHPg86vzrHPgiDOtc6vzr3Osc65IM66zrHOuM6xz4HPjFxuIgorCisjOiB3dC1zdGF0dXMuYzoxODI4Cittc2dpZCAiTm8gY29tbWl0cyB5ZXQgb24gIgorbXNnc3RyICLOlM61zr0gz4XPgM6sz4HPh86/z4XOvSDOsc66z4zOvM6xIM+Fz4DOv86yzr/Ou86tz4Igz4PPhM6/ICIKKworIzogd3Qtc3RhdHVzLmM6MTgzMgorbXNnaWQgIkhFQUQgKG5vIGJyYW5jaCkiCittc2dzdHIgIkhFQUQgKM+Hz4nPgc6vz4IgzrrOu86szrTOvykiCisKKyM6IHd0LXN0YXR1cy5jOjE4NjMKK21zZ2lkICJkaWZmZXJlbnQiCittc2dzdHIgIs60zrnOsc+Gzr/Pgc61z4TOuc66z4wiCisKKyM6IHd0LXN0YXR1cy5jOjE4NjUgd3Qtc3RhdHVzLmM6MTg3MworbXNnaWQgImJlaGluZCAiCittc2dzdHIgIs+Azq/Pg8+JICIKKworIzogd3Qtc3RhdHVzLmM6MTg2OCB3dC1zdGF0dXMuYzoxODcxCittc2dpZCAiYWhlYWQgIgorbXNnc3RyICLOvM+Az4HOv8+Dz4TOrCAiCisKKyMuIFRSQU5TTEFUT1JTOiB0aGUgYWN0aW9uIGlzIGUuZy4gInB1bGwgd2l0aCByZWJhc2UiCisjOiB3dC1zdGF0dXMuYzoyMzg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCAlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCittc2dzdHIgIs60zrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TPjCDOvc6xIM6zzq/Ovc61zrkgJXM6IM6Iz4fOtc+EzrUgzrzOtyDPgM+Bzr/Otc+Ezr/Ouc68zrHPg868zq3Ovc61z4IgzrHOu867zrHOs86tz4IuIgorCisjOiB3dC1zdGF0dXMuYzoyMzkyCittc2dpZCAiYWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgorbXNnc3RyICLOtc+AzrnPgM+Bz4zPg864zrXPhM6xLCDPhM6/IM61z4XPgc61z4TOrs+BzrnPjCDPg86xz4Igz4DOtc+BzrnOrc+HzrXOuSDOvM63IM+Fz4DOv86yzrXOss67zrfOvM6tzr3Otc+CIM6xzrvOu86xzrPOrc+CLiIKKworIzogd3Qtc3RhdHVzLmM6MjM5NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgJXM6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCittc2dzdHIgIiIKKyLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ez4wgzr3OsSDOs86vzr3Otc65ICVzOiDOpM6/IM61z4XPgc61z4TOrs+BzrnPjCDPg86xz4Igz4DOtc+BzrnOrc+HzrXOuSDOvM63IM+Fz4DOv86yzrXOss67zrfOvM6tzr3Otc+CICIKKyLOsc67zrvOsc6zzq3Pgi4iCisKKyM6IGJ1aWx0aW4vYWRkLmM6MjUKK21zZ2lkICJnaXQgYWRkIFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKK21zZ3N0ciAiZ2l0IGFkZCBbPM61z4DOuc67zr/Os86tz4I+XSBbLS1dIDzPgM61z4HOuc6zz4HOsc+Gzq4gzrTOuc6xzrTPgc6/zrzOrs+CPi4uLiIKKworIzogYnVpbHRpbi9hZGQuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRpZmYgc3RhdHVzICVjIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6ODkgYnVpbHRpbi9jb21taXQuYzoyODUKK21zZ2lkICJ1cGRhdGluZyBmaWxlcyBmYWlsZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzo5OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmUgJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MTc0Cittc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZWZyZXNoaW5nIHRoZSBpbmRleDoiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzoyMzQgYnVpbHRpbi9yZXYtcGFyc2UuYzo4OTYKK21zZ2lkICJDb3VsZCBub3QgcmVhZCB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZy4iCittc2dzdHIgIs6UzrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ez4wgz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgJyVzJyDOs865zrEgzrXOs86zz4HOsc+Gzq4uIgorCisjOiBidWlsdGluL2FkZC5jOjI0OQorbXNnaWQgIkNvdWxkIG5vdCB3cml0ZSBwYXRjaCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FkZC5jOjI1MgorbXNnaWQgImVkaXRpbmcgcGF0Y2ggZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBzdGF0ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzoyNTcKK21zZ2lkICJFbXB0eSBwYXRjaC4gQWJvcnRlZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGFwcGx5ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzoyNzAKK21zZ2lkICJUaGUgZm9sbG93aW5nIHBhdGhzIGFyZSBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzoyOTAgYnVpbHRpbi9jbGVhbi5jOjkwOCBidWlsdGluL2ZldGNoLmM6MTM3IGJ1aWx0aW4vbXYuYzoxMjQKKyM6IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTYgYnVpbHRpbi9wdWxsLmM6MjE0IGJ1aWx0aW4vcHVzaC5jOjU2MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzQ1IGJ1aWx0aW4vcm0uYzoyNDEgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjUKK21zZ2lkICJkcnkgcnVuIgorbXNnc3RyICLOtM6/zrrOuc68zq4iCisKKyM6IGJ1aWx0aW4vYWRkLmM6MjkzCittc2dpZCAiaW50ZXJhY3RpdmUgcGlja2luZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FkZC5jOjI5NCBidWlsdGluL2NoZWNrb3V0LmM6MTMwNCBidWlsdGluL3Jlc2V0LmM6MzA2Cittc2dpZCAic2VsZWN0IGh1bmtzIGludGVyYWN0aXZlbHkiCittc2dzdHIgIs69zrEgzrPOr869zrXOuSDOtM65zrHOtM+BzrHPg8+EzrnOus6uIM61z4DOuc67zr/Os86uIM6xzrvOu86xzrPPjs69IgorCisjOiBidWlsdGluL2FkZC5jOjI5NQorbXNnaWQgImVkaXQgY3VycmVudCBkaWZmIGFuZCBhcHBseSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FkZC5jOjI5NgorbXNnaWQgImFsbG93IGFkZGluZyBvdGhlcndpc2UgaWdub3JlZCBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FkZC5jOjI5NworbXNnaWQgInVwZGF0ZSB0cmFja2VkIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6Mjk4Cittc2dpZCAicmVub3JtYWxpemUgRU9MIG9mIHRyYWNrZWQgZmlsZXMgKGltcGxpZXMgLXUpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6Mjk5Cittc2dpZCAicmVjb3JkIG9ubHkgdGhlIGZhY3QgdGhhdCB0aGUgcGF0aCB3aWxsIGJlIGFkZGVkIGxhdGVyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzAwCittc2dpZCAiYWRkIGNoYW5nZXMgZnJvbSBhbGwgdHJhY2tlZCBhbmQgdW50cmFja2VkIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzAzCittc2dpZCAiaWdub3JlIHBhdGhzIHJlbW92ZWQgaW4gdGhlIHdvcmtpbmcgdHJlZSAoc2FtZSBhcyAtLW5vLWFsbCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzozMDUKK21zZ2lkICJkb24ndCBhZGQsIG9ubHkgcmVmcmVzaCB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzozMDYKK21zZ2lkICJqdXN0IHNraXAgZmlsZXMgd2hpY2ggY2Fubm90IGJlIGFkZGVkIGJlY2F1c2Ugb2YgZXJyb3JzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzA3Cittc2dpZCAiY2hlY2sgaWYgLSBldmVuIG1pc3NpbmcgLSBmaWxlcyBhcmUgaWdub3JlZCBpbiBkcnkgcnVuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzA5IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTkxCittc2dpZCAib3ZlcnJpZGUgdGhlIGV4ZWN1dGFibGUgYml0IG9mIHRoZSBsaXN0ZWQgZmlsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzozMTEKK21zZ2lkICJ3YXJuIHdoZW4gYWRkaW5nIGFuIGVtYmVkZGVkIHJlcG9zaXRvcnkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzozMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSd2ZSBhZGRlZCBhbm90aGVyIGdpdCByZXBvc2l0b3J5IGluc2lkZSB5b3VyIGN1cnJlbnQgcmVwb3NpdG9yeS5cbiIKKyJDbG9uZXMgb2YgdGhlIG91dGVyIHJlcG9zaXRvcnkgd2lsbCBub3QgY29udGFpbiB0aGUgY29udGVudHMgb2ZcbiIKKyJ0aGUgZW1iZWRkZWQgcmVwb3NpdG9yeSBhbmQgd2lsbCBub3Qga25vdyBob3cgdG8gb2J0YWluIGl0LlxuIgorIklmIHlvdSBtZWFudCB0byBhZGQgYSBzdWJtb2R1bGUsIHVzZTpcbiIKKyJcbiIKKyJcdGdpdCBzdWJtb2R1bGUgYWRkIDx1cmw+ICVzXG4iCisiXG4iCisiSWYgeW91IGFkZGVkIHRoaXMgcGF0aCBieSBtaXN0YWtlLCB5b3UgY2FuIHJlbW92ZSBpdCBmcm9tIHRoZVxuIgorImluZGV4IHdpdGg6XG4iCisiXG4iCisiXHRnaXQgcm0gLS1jYWNoZWQgJXNcbiIKKyJcbiIKKyJTZWUgXCJnaXQgaGVscCBzdWJtb2R1bGVcIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyLOoM+Bzr/Pg864zq3Pg86xz4TOtSDOrc69zrEgzqzOu867zr8gzrHPgM6/zrjOtc+Ezq7Pgc65zr8gZ2l0IM68zq3Pg86xIM+Dz4TOvyDPhM+Bzq3Ph86/zr0gzrHPgM6/zrjOtc+Ezq7Pgc65zr8uXG4iCisizp/OuSDOus67z47Ovc6/zrkgz4TOv8+FIM61zr7Pjs+EzrXPgc6/z4UgzrHPgM6/zrjOtc+EzrfPgc6vzr/PhSDOtM61IM64zrEgz4DOtc+BzrnOrc+Hzr/Phc69IM+EzrEgz4DOtc+BzrnOtc+Hz4zOvM61zr3OsSDPhM6/z4VcbiIKKyLOtc69z4PPic68zrHPhM+JzrzOrc69zr/PhSDOsc+Azr/OuM61z4TOt8+Bzq/Ov8+FIM66zrHOuSDOtM61zr0gzrjOsSDOs869z4nPgc6vzrbOv8+Fzr0gz4DPjs+CIM69zrEgz4TOvyDOss+Bzr/Phc69LlxuIgorIs6Rzr0gzrjOrc67zrHPhM61IM69zrEgz4DPgc6/z4POuM6tz4POtc+EzrUgzrzOuc6xIM+Fz4DOv861zr3PjM+EzrfPhM6xIHN1Ym1vZHVsZSwgz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtTpcbiIKKyJcbiIKKyJcdGdpdCBzdWJtb2R1bGUgYWRkIDx1cmw+ICVzXG4iCisiXG4iCisizpHOvSDPgM+Bzr/Pg864zq3Pg86xz4TOtSDOsc+Fz4TOriDPhM63IM60zrnOsc60z4HOv868zq4gzrrOsc+EzqwgzrvOrM64zr/PgiwgzrzPgM6/z4HOtc6vz4TOtSDOvc6xIM+EzrfOvSDOsc+GzrHOuc+Bzq3Pg861z4TOtSDOsc+Az4wgIgorIs+Ezr9cbiIKKyLOtc+Fz4HOtc+Ezq7Pgc65zr8gzrzOtTpcbiIKKyJcbiIKKyJcdGdpdCBybSAtLWNhY2hlZCAlc1xuIgorIlxuIgorIs6UzrXOr8+EzrUgXCJnaXQgaGVscCBzdWJtb2R1bGVcIiDOs865zrEgz4DOtc+BzrnPg8+Dz4zPhM61z4HOtc+CIM+AzrvOt8+Bzr/Phs6/z4HOr861z4IuIgorCisjOiBidWlsdGluL2FkZC5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICJhZGRpbmcgZW1iZWRkZWQgZ2l0IHJlcG9zaXRvcnk6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzcyCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIHRoZW0uXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzozODAKK21zZ2lkICJhZGRpbmcgZmlsZXMgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDE4Cittc2dpZCAiLUEgYW5kIC11IGFyZSBtdXR1YWxseSBpbmNvbXBhdGlibGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzo0MjUKK21zZ2lkICJPcHRpb24gLS1pZ25vcmUtbWlzc2luZyBjYW4gb25seSBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggLS1kcnktcnVuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tY2htb2QgcGFyYW0gJyVzJyBtdXN0IGJlIGVpdGhlciAteCBvciAreCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FkZC5jOjQ0NAorIywgYy1mb3JtYXQKK21zZ2lkICJOb3RoaW5nIHNwZWNpZmllZCwgbm90aGluZyBhZGRlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FkZC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJNYXliZSB5b3Ugd2FudGVkIHRvIHNheSAnZ2l0IGFkZCAuJz9cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MzQ4Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGF1dGhvciBzY3JpcHQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIHdhcyBkZWxldGVkIGJ5IHRoZSBhcHBseXBhdGNoLW1zZyBob29rIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzo0NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWFsZm9ybWVkIGlucHV0IGxpbmU6ICclcycuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIGNvcHkgbm90ZXMgZnJvbSAnJXMnIHRvICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjUzNgorbXNnaWQgImZzZWVrIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6NzI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBwYXRjaCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzo3ODkKK21zZ2lkICJPbmx5IG9uZSBTdEdJVCBwYXRjaCBzZXJpZXMgY2FuIGJlIGFwcGxpZWQgYXQgb25jZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6ODM3Cittc2dpZCAiaW52YWxpZCB0aW1lc3RhbXAiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjg0MiBidWlsdGluL2FtLmM6ODU0Cittc2dpZCAiaW52YWxpZCBEYXRlIGxpbmUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjg0OQorbXNnaWQgImludmFsaWQgdGltZXpvbmUgb2Zmc2V0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzo5NDIKK21zZ2lkICJQYXRjaCBmb3JtYXQgZGV0ZWN0aW9uIGZhaWxlZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjk0NyBidWlsdGluL2Nsb25lLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM60zrfOvM65zr/Phc+BzrPOr86xIM+Ezr/PhSDPhs6xzrrOrc67zr/PhSAnJXMnIgorCisjOiBidWlsdGluL2FtLmM6OTUyCittc2dpZCAiRmFpbGVkIHRvIHNwbGl0IHBhdGNoZXMuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoxMDgyIGJ1aWx0aW4vY29tbWl0LmM6MzcxCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGluZGV4IGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjEwOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2hlbiB5b3UgaGF2ZSByZXNvbHZlZCB0aGlzIHByb2JsZW0sIHJ1biBcIiVzIC0tY29udGludWVcIi4iCittc2dzdHIgIs6Mz4TOsc69IM6tz4fOtc+EzrUgzrXPgM65zrvPjc+DzrXOuSDOsc+Fz4TPjCDPhM6/IM+Az4HPjM6yzrvOt868zrEsIM+Ez4HOrc6+z4TOtSBcIiVzIC0tY29udGludWVcIi4iCisKKyM6IGJ1aWx0aW4vYW0uYzoxMDk3CisjLCBjLWZvcm1hdAorbXNnaWQgIklmIHlvdSBwcmVmZXIgdG8gc2tpcCB0aGlzIHBhdGNoLCBydW4gXCIlcyAtLXNraXBcIiBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MTA5OAorIywgYy1mb3JtYXQKK21zZ2lkICJUbyByZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIHN0b3AgcGF0Y2hpbmcsIHJ1biBcIiVzIC0tYWJvcnRcIi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjExODEKK21zZ2lkICJQYXRjaCBzZW50IHdpdGggZm9ybWF0PWZsb3dlZDsgc3BhY2UgYXQgdGhlIGVuZCBvZiBsaW5lcyBtaWdodCBiZSBsb3N0LiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MTIwOQorbXNnaWQgIlBhdGNoIGlzIGVtcHR5LiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MTI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGlkZW50IGxpbmU6ICUuKnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjEyOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbW1pdCAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MTQ5MworbXNnaWQgIlJlcG9zaXRvcnkgbGFja3MgbmVjZXNzYXJ5IGJsb2JzIHRvIGZhbGwgYmFjayBvbiAzLXdheSBtZXJnZS4iCittc2dzdHIgIiIKKyLOm861zq/PgM6/z4XOvSDPhM6xIM6xzr3Osc6zzrrOsc6vzrEgYmxvYiDOsc+Az4wgz4TOvyDOsc+Azr/OuM61z4TOrs+BzrnOvyDOs865zrEgzr3OsSDOsc66zr/Ou86/z4XOuM63zrjOtc6vIM63IM61zr3Osc67zrvOsc66z4TOuc66zq4gIgorIs+Ez4HOuc+AzrvOrs+CIM+Dz4XOs8+Hz47Ovc61z4XPg863z4IuIgorCisjOiBidWlsdGluL2FtLmM6MTQ5NQorbXNnaWQgIlVzaW5nIGluZGV4IGluZm8gdG8gcmVjb25zdHJ1Y3QgYSBiYXNlIHRyZWUuLi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjE1MTQKK21zZ2lkICIiCisiRGlkIHlvdSBoYW5kIGVkaXQgeW91ciBwYXRjaD9cbiIKKyJJdCBkb2VzIG5vdCBhcHBseSB0byBibG9icyByZWNvcmRlZCBpbiBpdHMgaW5kZXguIgorbXNnc3RyICIiCisizpXPgM61zr7Otc+BzrPOsc+Dz4TOrs66zrHPhM61IM68zrUgz4TOvyDPh86tz4HOuSDPhM63IM60zrnPjM+BzrjPic+Dzq4gz4POsc+CO1xuIgorIs6UzrXOvSDOtc+GzrHPgc68z4zOts61z4TOsc65IM+Dz4TOsSBibG9iIM+Azr/PhSDOtc6vzr3Osc65IM66zrHPhM6xzrPOtc6zz4HOsc68zrzOrc69zrEgz4PPhM6/IM61z4XPgc61z4TOrs+BzrnPjCDPhM6/z4UuIgorCisjOiBidWlsdGluL2FtLmM6MTUyMAorbXNnaWQgIkZhbGxpbmcgYmFjayB0byBwYXRjaGluZyBiYXNlIGFuZCAzLXdheSBtZXJnZS4uLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MTU0NgorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBpbiB0aGUgY2hhbmdlcy4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjE1NzgKK21zZ2lkICJhcHBseWluZyB0byBhbiBlbXB0eSBoaXN0b3J5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNjI0IGJ1aWx0aW4vYW0uYzoxNjI4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZXN1bWU6ICVzIGRvZXMgbm90IGV4aXN0LiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MTY0NAorbXNnaWQgImNhbm5vdCBiZSBpbnRlcmFjdGl2ZSB3aXRob3V0IHN0ZGluIGNvbm5lY3RlZCB0byBhIHRlcm1pbmFsLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MTY0OQorbXNnaWQgIkNvbW1pdCBCb2R5IGlzOiIKK21zZ3N0ciAizqTOvyDPgM61z4HOuc61z4fPjM68zrXOvc6/IM+EzrfPgiDPhc+Azr/Oss6/zrvOrs+CIM61zq/Ovc6xzrk6IgorCisjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3ldLCBbbl0sIFtlXSwgW3ZdIGFuZCBbYV0KKyMuIGluIHlvdXIgdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaAorIy4gaW5wdXQgYXQgdGhpcyBwb2ludC4KKyMuCisjOiBidWlsdGluL2FtLmM6MTY1OQorbXNnaWQgIkFwcGx5PyBbeV1lcy9bbl1vL1tlXWRpdC9bdl1pZXcgcGF0Y2gvW2FdY2NlcHQgYWxsOiAiCittc2dzdHIgIs6dzrEgzrPOr869zrXOuSDOtc+GzrHPgc68zr/Os86uOyBbeV1lcy9bbl1vL1tlXWRpdC9bdl1pZXcgcGF0Y2gvW2FdY2NlcHQgYWxsOiAiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNzA5CisjLCBjLWZvcm1hdAorbXNnaWQgIkRpcnR5IGluZGV4OiBjYW5ub3QgYXBwbHkgcGF0Y2hlcyAoZGlydHk6ICVzKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MTc0OSBidWlsdGluL2FtLmM6MTgxNworIywgYy1mb3JtYXQKK21zZ2lkICJBcHBseWluZzogJS4qcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MTc2NgorbXNnaWQgIk5vIGNoYW5nZXMgLS0gUGF0Y2ggYWxyZWFkeSBhcHBsaWVkLiIKK21zZ3N0ciAizprOsc64z4zOu86/z4UgzrHOu867zrHOs86tz4IgLS0gzojPh861zrkgzrPOr869zrXOuSDOrs60zrcgzrXPhs6xz4HOvM6/zrPOriDPhM63z4IgzrTOuc+Mz4HOuM+Jz4POt8+CLiIKKworIzogYnVpbHRpbi9hbS5jOjE3NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGF0Y2ggZmFpbGVkIGF0ICVzICUuKnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjE3NzYKK21zZ2lkICJVc2UgJ2dpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaCcgdG8gc2VlIHRoZSBmYWlsZWQgcGF0Y2giCittc2dzdHIgIiIKKyLOp8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61ICdnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2gnIM6zzrnOsSDOvc6xIM60zrXOr8+EzrUgz4TOtyDOtM65z4zPgc64z4nPg863IM+Azr/PhSAiCisizrHPgM6tz4TPhc+HzrUiCisKKyM6IGJ1aWx0aW4vYW0uYzoxODIwCittc2dpZCAiIgorIk5vIGNoYW5nZXMgLSBkaWQgeW91IGZvcmdldCB0byB1c2UgJ2dpdCBhZGQnP1xuIgorIklmIHRoZXJlIGlzIG5vdGhpbmcgbGVmdCB0byBzdGFnZSwgY2hhbmNlcyBhcmUgdGhhdCBzb21ldGhpbmcgZWxzZVxuIgorImFscmVhZHkgaW50cm9kdWNlZCB0aGUgc2FtZSBjaGFuZ2VzOyB5b3UgbWlnaHQgd2FudCB0byBza2lwIHRoaXMgcGF0Y2guIgorbXNnc3RyICIiCisizprOsc64z4zOu86/z4UgzrHOu867zrHOs86tz4IgLSDOvs61z4fOrM+DzrHPhM61IM69zrEgz4fPgc63z4POuc68zr/PgM6/zrnOrs+DzrXPhM61IM+Ezr8gJ2dpdCBhZGQnO1xuIgorIs6Rzr0gzrTOtc69IM6tz4fOtc65IM6xz4DOv868zrXOr869zrXOuSDPhM6vz4DOv8+EzrEgzrPOuc6xIM+Az4HOv861z4TOv865zrzOsc+Dzq/OsSwgzrzOrM67zrvOv869IM66zqzPhM65IM6szrvOu86/IM6tz4fOtc65XG4iCisizq7OtM63IM61zrnPg86xzrPOrM6zzrXOuSDPhM65z4Igzq/OtM65zrXPgiDOsc67zrvOsc6zzq3PgiwgzrzPgM6/z4HOtc6vIM69zrEgzrjOrc67zrXPhM61IM69zrEgz4DPgc6/z4PPgM61z4HOrM+DzrXPhM61IM6xz4XPhM6uIM+EzrcgIgorIs60zrnPjM+BzrjPic+DzrcuIgorCisjOiBidWlsdGluL2FtLmM6MTgyNworbXNnaWQgIiIKKyJZb3Ugc3RpbGwgaGF2ZSB1bm1lcmdlZCBwYXRocyBpbiB5b3VyIGluZGV4LlxuIgorIllvdSBzaG91bGQgJ2dpdCBhZGQnIGVhY2ggZmlsZSB3aXRoIHJlc29sdmVkIGNvbmZsaWN0cyB0byBtYXJrIHRoZW0gYXMgIgorInN1Y2guXG4iCisiWW91IG1pZ2h0IHJ1biBgZ2l0IHJtYCBvbiBhIGZpbGUgdG8gYWNjZXB0IFwiZGVsZXRlZCBieSB0aGVtXCIgZm9yIGl0LiIKK21zZ3N0ciAiIgorIs6Iz4fOtc+EzrUgzrHOus+MzrzOsSDOvM63IM+Dz4XOs8+Hz4nOvc61z4XOvM6tzr3Otc+CIM60zrnOsc60z4HOv868zq3PgiDPg8+Ezr8gzrXPhc+BzrXPhM6uz4HOuc+MIM+DzrHPgi5cbiIKKyLOmM6xIM+Az4HOrc+AzrXOuSDOvc6xIM+Az4HOv8+DzrjOrc+DzrXPhM61IM68zrUgJ2dpdCBhZGQnIM66zqzOuM61IM6xz4HPh861zq/OvyDPgM6/z4Ugzq3Ph861zrkgzrXPgM65zrvPhc68zq3Ovc61z4IgIgorIs+Dz4XOs866z4HOv8+Nz4POtc65z4IgzrPOuc6xIM69zrEgz4TOvyDOtc+AzrnPg863zrzOrM69zrXPhM61LlxuIgorIs6cz4DOv8+BzrXOr8+EzrUgzr3OsSDPhM+Bzq3Ovs61z4TOtSBgZ2l0IHJtYCDPg861IM6tzr3OsSDOsc+Bz4fOtc6vzr8gzrPOuc6xIM69zrEgzrHPgM6/zrTOtc+HzrjOtc6vz4TOtSDOs865zrEgzrHPhc+Ez4wgz4DPic+CICIKKyJcIs60zrnOsc6zz4HOrM+GzrfOus61IM6xz4DPjCDOsc+Fz4TOv8+Nz4JcIi4iCisKKyM6IGJ1aWx0aW4vYW0uYzoxOTM0IGJ1aWx0aW4vYW0uYzoxOTM4IGJ1aWx0aW4vYW0uYzoxOTUwIGJ1aWx0aW4vcmVzZXQuYzozMjkKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnLiIKK21zZ3N0ciAizpTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDOsc69zqzOu8+Fz4POtyDPhM6/z4UgzrHOvc+EzrnOus61zrnOvM6tzr3Ov8+FICclcycuIgorCisjOiBidWlsdGluL2FtLmM6MTk4NgorbXNnaWQgImZhaWxlZCB0byBjbGVhbiBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MjAzMAorbXNnaWQgIiIKKyJZb3Ugc2VlbSB0byBoYXZlIG1vdmVkIEhFQUQgc2luY2UgdGhlIGxhc3QgJ2FtJyBmYWlsdXJlLlxuIgorIk5vdCByZXdpbmRpbmcgdG8gT1JJR19IRUFEIgorbXNnc3RyICIiCisizqbOsc6vzr3Otc+EzrHOuSDPgM+Jz4IgzrzOtc+EzrHOus65zr3Ors+DzrHPhM61IM+Ezr8gSEVBRCDOsc+Az4wgz4TOtyDPg8+EzrnOs868zq4gz4TOt8+CIM+EzrXOu861z4XPhM6xzq/Osc+CIM6xz4DOv8+Ez4XPh86vzrHPgiAiCisiJ2FtJy5cbiIKKyLOlM61IM6zzq/Ovc61z4TOsc65IM6zz43Pgc65z4POvM6xIM+Az4HOv8+CIM+EzrEgz4DOr8+Dz4kgz4PPhM6/IE9SSUdfSEVBRCIKKworIzogYnVpbHRpbi9hbS5jOjIxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgLS1wYXRjaC1mb3JtYXQ6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMTU5Cittc2dpZCAiZ2l0IGFtIFs8b3B0aW9ucz5dIFsoPG1ib3g+IHwgPE1haWxkaXI+KS4uLl0iCittc2dzdHIgImdpdCBhbSBbPM61z4DOuc67zr/Os86tz4I+XSBbKDxtYm94PiB8IDxNYWlsZGlyPikuLi5dIgorCisjOiBidWlsdGluL2FtLmM6MjE2MAorbXNnaWQgImdpdCBhbSBbPG9wdGlvbnM+XSAoLS1jb250aW51ZSB8IC0tc2tpcCB8IC0tYWJvcnQpIgorbXNnc3RyICJnaXQgYW0gWzzOtc+AzrnOu86/zrPOrc+CPl0gKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0KSIKKworIzogYnVpbHRpbi9hbS5jOjIxNjYKK21zZ2lkICJydW4gaW50ZXJhY3RpdmVseSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MjE2OAorbXNnaWQgImhpc3RvcmljYWwgb3B0aW9uIC0tIG5vLW9wIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMTcwCittc2dpZCAiYWxsb3cgZmFsbCBiYWNrIG9uIDN3YXkgbWVyZ2luZyBpZiBuZWVkZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIxNzEgYnVpbHRpbi9pbml0LWRiLmM6NDg2IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA2Cittc2dpZCAiYmUgcXVpZXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIxNzMKK21zZ2lkICJhZGQgYSBTaWduZWQtb2ZmLWJ5IGxpbmUgdG8gdGhlIGNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMTc2Cittc2dpZCAicmVjb2RlIGludG8gdXRmOCAoZGVmYXVsdCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIxNzgKK21zZ2lkICJwYXNzIC1rIGZsYWcgdG8gZ2l0LW1haWxpbmZvIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMTgwCittc2dpZCAicGFzcyAtYiBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MjE4MgorbXNnaWQgInBhc3MgLW0gZmxhZyB0byBnaXQtbWFpbGluZm8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIxODQKK21zZ2lkICJwYXNzIC0ta2VlcC1jciBmbGFnIHRvIGdpdC1tYWlsc3BsaXQgZm9yIG1ib3ggZm9ybWF0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMTg3Cittc2dpZCAiZG8gbm90IHBhc3MgLS1rZWVwLWNyIGZsYWcgdG8gZ2l0LW1haWxzcGxpdCBpbmRlcGVuZGVudCBvZiBhbS5rZWVwY3IiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIxOTAKK21zZ2lkICJzdHJpcCBldmVyeXRoaW5nIGJlZm9yZSBhIHNjaXNzb3JzIGxpbmUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIxOTIgYnVpbHRpbi9hbS5jOjIxOTUgYnVpbHRpbi9hbS5jOjIxOTggYnVpbHRpbi9hbS5jOjIyMDEKKyM6IGJ1aWx0aW4vYW0uYzoyMjA0IGJ1aWx0aW4vYW0uYzoyMjA3IGJ1aWx0aW4vYW0uYzoyMjEwIGJ1aWx0aW4vYW0uYzoyMjEzCisjOiBidWlsdGluL2FtLmM6MjIxOQorbXNnaWQgInBhc3MgaXQgdGhyb3VnaCBnaXQtYXBwbHkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIyMDkgYnVpbHRpbi9jb21taXQuYzoxMzQzIGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc0IGJ1aWx0aW4vZ3JlcC5jOjg3OSBidWlsdGluL21lcmdlLmM6MjQwCisjOiBidWlsdGluL3B1bGwuYzoxNTIgYnVpbHRpbi9wdWxsLmM6MjEwIGJ1aWx0aW4vcmViYXNlLmM6MTA2MgorIzogYnVpbHRpbi9yZXBhY2suYzozMTcgYnVpbHRpbi9yZXBhY2suYzozMjEgYnVpbHRpbi9yZXBhY2suYzozMjMKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTEgYnVpbHRpbi9zaG93LXJlZi5jOjE3MSBidWlsdGluL3RhZy5jOjM4NgorIzogcGFyc2Utb3B0aW9ucy5oOjE0NCBwYXJzZS1vcHRpb25zLmg6MTQ2IHBhcnNlLW9wdGlvbnMuaDoyNjYKK21zZ2lkICJuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjE1IGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0NCBidWlsdGluL3RhZy5jOjQyMiBidWlsdGluL3ZlcmlmeS10YWcuYzozOQorbXNnaWQgImZvcm1hdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MjIxNgorbXNnaWQgImZvcm1hdCB0aGUgcGF0Y2goZXMpIGFyZSBpbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MjIyMgorbXNnaWQgIm92ZXJyaWRlIGVycm9yIG1lc3NhZ2Ugd2hlbiBwYXRjaCBmYWlsdXJlIG9jY3VycyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MjIyNAorbXNnaWQgImNvbnRpbnVlIGFwcGx5aW5nIHBhdGNoZXMgYWZ0ZXIgcmVzb2x2aW5nIGEgY29uZmxpY3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIyMjcKK21zZ2lkICJzeW5vbnltcyBmb3IgLS1jb250aW51ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MjIzMAorbXNnaWQgInNraXAgdGhlIGN1cnJlbnQgcGF0Y2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIyMzMKK21zZ2lkICJyZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIGFib3J0IHRoZSBwYXRjaGluZyBvcGVyYXRpb24uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjM2Cittc2dpZCAiYWJvcnQgdGhlIHBhdGNoaW5nIG9wZXJhdGlvbiBidXQga2VlcCBIRUFEIHdoZXJlIGl0IGlzLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MjIzOQorbXNnaWQgInNob3cgdGhlIHBhdGNoIGJlaW5nIGFwcGxpZWQuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjQzCittc2dpZCAibGllIGFib3V0IGNvbW1pdHRlciBkYXRlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjQ1Cittc2dpZCAidXNlIGN1cnJlbnQgdGltZXN0YW1wIGZvciBhdXRob3IgZGF0ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MjI0NyBidWlsdGluL2NvbW1pdC5jOjE0ODYgYnVpbHRpbi9tZXJnZS5jOjI3NAorIzogYnVpbHRpbi9wdWxsLmM6MTg1IGJ1aWx0aW4vcmViYXNlLmM6MTEwNiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODUKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0IGJ1aWx0aW4vdGFnLmM6NDAyCittc2dpZCAia2V5LWlkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjQ4IGJ1aWx0aW4vcmViYXNlLmM6MTEwNyBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODYKK21zZ2lkICJHUEctc2lnbiBjb21taXRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjUxCittc2dpZCAiKGludGVybmFsIHVzZSBmb3IgZ2l0LXJlYmFzZSkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIyNjkKK21zZ2lkICIiCisiVGhlIC1iLy0tYmluYXJ5IG9wdGlvbiBoYXMgYmVlbiBhIG5vLW9wIGZvciBsb25nIHRpbWUsIGFuZFxuIgorIml0IHdpbGwgYmUgcmVtb3ZlZC4gUGxlYXNlIGRvIG5vdCB1c2UgaXQgYW55bW9yZS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIyNzYKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIyOTEKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJldmlvdXMgcmViYXNlIGRpcmVjdG9yeSAlcyBzdGlsbCBleGlzdHMgYnV0IG1ib3ggZ2l2ZW4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTdHJheSAlcyBkaXJlY3RvcnkgZm91bmQuXG4iCisiVXNlIFwiZ2l0IGFtIC0tYWJvcnRcIiB0byByZW1vdmUgaXQuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzIxCittc2dpZCAiUmVzb2x2ZSBvcGVyYXRpb24gbm90IGluIHByb2dyZXNzLCB3ZSBhcmUgbm90IHJlc3VtaW5nLiIKK21zZ3N0ciAizpTOtc69IM+Fz4bOr8+Dz4TOsc+EzrHOuSDOtM65zrXPgc6zzrHPg86vzrEgzrXPgM6vzrvPhc+DzrfPgiwgzrTOtSDPg8+Fzr3Otc+Hzq/Ots6/z4XOvM61LiIKKworIzogYnVpbHRpbi9hcHBseS5jOjgKK21zZ2lkICJnaXQgYXBwbHkgWzxvcHRpb25zPl0gWzxwYXRjaD4uLi5dIgorbXNnc3RyICJnaXQgYXBwbHkgWzzOtc+AzrnOu86/zrPOrc+CPl0gWzzOtM65z4zPgc64z4nPg863Pi4uLl0iCisKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjE3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgYXJjaGl2ZSBmaWxlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hcmNoaXZlLmM6MjAKK21zZ2lkICJjb3VsZCBub3QgcmVkaXJlY3Qgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjM3Cittc2dpZCAiZ2l0IGFyY2hpdmU6IFJlbW90ZSB3aXRoIG5vIFVSTCIKK21zZ3N0ciAiZ2l0IGFyY2hpdmU6IM6Rz4DOv868zrHOus+Bz4XPg868zq3Ovc6/z4IgzrXOvs+Fz4DOt8+BzrXPhM63z4TOrs+CIM+Hz4nPgc6vz4IgVVJMIgorCisjOiBidWlsdGluL2FyY2hpdmUuYzo2MQorbXNnaWQgImdpdCBhcmNoaXZlOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgYSBmbHVzaCBwYWNrZXQiCittc2dzdHIgImdpdCBhcmNoaXZlOiDOsc69zrHOvM61zr3PjM+EzrHOvSBBQ0svTkFLLCDOss+Bzq3OuM63zrrOtSDPgM6xzrrOrc+Ezr8gZmx1c2giCisKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY0CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBhcmNoaXZlOiBOQUNLICVzIgorbXNnc3RyICJnaXQgYXJjaGl2ZTogTkFDSyAlcyIKKworIzogYnVpbHRpbi9hcmNoaXZlLmM6NjUKK21zZ2lkICJnaXQgYXJjaGl2ZTogcHJvdG9jb2wgZXJyb3IiCittc2dzdHIgImdpdCBhcmNoaXZlOiDPg8+GzqzOu868zrEgz4DPgc+Jz4TOv866z4zOu867zr/PhSDOtc+AzrnOus6/zrnOvc+Jzr3Or86xz4IiCisKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY5Cittc2dpZCAiZ2l0IGFyY2hpdmU6IGV4cGVjdGVkIGEgZmx1c2giCittc2dzdHIgImdpdCBhcmNoaXZlOiDOsc69zrHOvM61zr3PjM+EzrHOvSBmbHVzaCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyCittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tbmV4dC1hbGwgWy0tbm8tY2hlY2tvdXRdIgorbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCBbLS1uby1jaGVja291dF0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMworbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDxiYWRfdGVybT4gPGdvb2RfdGVybT4iCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDzOu86szrjOv8+CIM+Mz4HOv8+CPiA8z4PPic+Dz4TPjM+CIM+Mz4HOv8+CPiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI0Cittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNsZWFuLXN0YXRlIgorbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2xlYW4tc3RhdGUiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNQorbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1yZXNldCBbPGNvbW1pdD5dIgorbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtcmVzZXQgWzzPhc+Azr/Oss6/zrvOrj5dIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjYKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPHN0YXRlPiA8cmV2aXNpb24+IDxnb29kX3Rlcm0+ICIKKyI8YmFkX3Rlcm0+IgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPM66zrHPhM6sz4PPhM6xz4POtz4gPM6tzrrOtM6/z4POtz4gPM+Dz4nPg8+Ez4zPgiAiCisiz4zPgc6/z4I+IDzOu86szrjOv8+CIM+Mz4HOv8+CPiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI3Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDxjb21tYW5kPiA8Z29vZF90ZXJtPiAiCisiPGJhZF90ZXJtPiIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDzOtc69z4TOv867zq4+IDzPg8+Jz4PPhM+Mz4Igz4zPgc6/z4I+ICIKKyI8zrvOrM64zr/PgiDPjM+Bzr/Pgj4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOAorbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrIDxnb29kX3Rlcm0+IDxiYWRfdGVybT4gWzx0ZXJtPl0iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtbmV4dC1jaGVjayA8z4PPic+Dz4TPjM+CIM+Mz4HOv8+CPiA8zrvOrM64zr/PgiDPjM+Bzr/Pgj4gWzzPjM+Bzr/Pgj5dIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjkKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzAKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT08dGVybT4gLS10ZXJtLXtuZXcsYmFkfSIKKyI9PHRlcm0+XVstLW5vLWNoZWNrb3V0XSBbPGJhZD4gWzxnb29kPi4uLl1dIFstLV0gWzxwYXRocz4uLi5dIgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT08z4zPgc6/z4I+IC0tdGVybS17bmV3LGJhZH0iCisiPTzPjM+Bzr/Pgj5dWy0tbm8tY2hlY2tvdXRdIFs8zrvOrM64zr/Pgj4gWzzPg8+Jz4PPhM+MPi4uLl1dIFstLV0gWzzOtM65zrHOtM+Bzr/OvM6tz4I+Li4uXSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgdGVybSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgdXNlIHRoZSBidWlsdGluIGNvbW1hbmQgJyVzJyBhcyBhIHRlcm0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBjaGFuZ2UgdGhlIG1lYW5pbmcgb2YgdGhlIHRlcm0gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTExCittc2dpZCAicGxlYXNlIHVzZSB0d28gZGlmZmVyZW50IHRlcm1zIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMTgKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgZmlsZSBCSVNFQ1RfVEVSTVMiCittc2dzdHIgIs60zrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ez4wgz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgzrHPgc+HzrXOr86/z4UgQklTRUNUX1RFUk1TIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLlxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY291bGQgbm90IGNoZWNrIG91dCBvcmlnaW5hbCBIRUFEICclcycuIFRyeSAnZ2l0IGJpc2VjdCByZXNldCA8Y29tbWl0PicuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmFkIGJpc2VjdF93cml0ZSBhcmd1bWVudDogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBnZXQgdGhlIG9pZCBvZiB0aGUgcmV2ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIHRoZSBmaWxlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGNvbW1hbmQ6IHlvdSdyZSBjdXJyZW50bHkgaW4gYSAlcy8lcyBiaXNlY3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJXMgYW5kICVzIHJldmlzaW9uLlxuIgorIllvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAlc1wiIGFuZCBcImdpdCBiaXNlY3QgJXNcIiBmb3IgdGhhdC4iCittc2dzdHIgIiIKKyLOoM+Bzq3PgM61zrkgzr3OsSDOtM+Oz4POtc+EzrUgz4TOv8+FzrvOrM+HzrnPg8+Ezr/OvSDOrc69zrEgJXMgzrrOsc65ICVzIM6tzrrOtM6/z4POty5cbiIKKyLOnM+Azr/Pgc61zq/PhM61IM69zrEgz4fPgc63z4POuc68zr/PgM6/zrnOrs+DzrXPhM61IFwiZ2l0IGJpc2VjdCAlc1wiIM66zrHOuSBcImdpdCBiaXNlY3QgJXNcIiDOs865zrEgzrHPhc+Ez4wuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKKyJZb3UgdGhlbiBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICVzIGFuZCAlcyByZXZpc2lvbi5cbiIKKyJZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJXNcIiBhbmQgXCJnaXQgYmlzZWN0ICVzXCIgZm9yIHRoYXQuIgorbXNnc3RyICIiCisizqfPgc61zrnOrM62zrXPhM6xzrkgzr3OsSDOsc+Bz4fOr8+DzrXPhM61IM68zrUgXCJnaXQgYmlzZWN0IHN0YXJ0XCIuXG4iCisizojPgM61zrnPhM6xIM+Hz4HOtc65zqzOts61z4TOsc65IM69zrEgzrTPjs+DzrXPhM61IM+Ezr/Phc67zqzPh865z4PPhM6/zr0gzq3Ovc6xICVzIM66zrHOuSAlcyDOrc66zrTOv8+DzrcuXG4iCisizpzPgM6/z4HOtc6vz4TOtSDOvc6xIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg861z4TOtSBcImdpdCBiaXNlY3QgJXNcIiDOus6xzrkgXCJnaXQgYmlzZWN0ICVzXCIgzrPOuc6xIM6xz4XPhM+MLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMyMQorIywgYy1mb3JtYXQKK21zZ2lkICJiaXNlY3Rpbmcgb25seSB3aXRoIGEgJXMgY29tbWl0IgorbXNnc3RyICIiCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbWV0gYW5kIFtuXSBpbiB5b3VyCisjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIy4KKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMjkKK21zZ2lkICJBcmUgeW91IHN1cmUgW1kvbl0/ICIKK21zZ3N0ciAizpXPgM65zrLOtc6yzrHOuc+Ozr3Otc+EzrUgW1kvbl07ICIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM3NgorbXNnaWQgIm5vIHRlcm1zIGRlZmluZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM3OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBjdXJyZW50IHRlcm1zIGFyZSAlcyBmb3IgdGhlIG9sZCBzdGF0ZVxuIgorImFuZCAlcyBmb3IgdGhlIG5ldyBzdGF0ZS5cbiIKK21zZ3N0ciAiIgorIs6fzrkgz4DOsc+Bz4zOvc+EzrXPgiDPjM+Bzr/OuSDPg86xz4IgzrXOr869zrHOuSAlcyDOs865zrEgz4TOt869IM+AzrHOu865zqwgzrrOsc+EzqzPg8+EzrHPg863XG4iCisizrrOsc65ICVzIM6zzrnOsSDPhM63IM69zq3OsSDOus6xz4TOrM+Dz4TOsc+DzrcuXG4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgYXJndW1lbnQgJXMgZm9yICdnaXQgYmlzZWN0IHRlcm1zJy5cbiIKKyJTdXBwb3J0ZWQgb3B0aW9ucyBhcmU6IC0tdGVybS1nb29kfC0tdGVybS1vbGQgYW5kIC0tdGVybS1iYWR8LS10ZXJtLW5ldy4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgb3B0aW9uOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo0NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYSB2YWxpZCByZXZpc2lvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTExCittc2dpZCAiYmFkIEhFQUQgLSBJIG5lZWQgYSBIRUFEIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hlY2tpbmcgb3V0ICclcycgZmFpbGVkLiBUcnkgJ2dpdCBiaXNlY3Qgc3RhcnQgPHZhbGlkLWJyYW5jaD4nLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTQ3Cittc2dpZCAid29uJ3QgYmlzZWN0IG9uIGNnLXNlZWsnZWQgdHJlZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTUwCittc2dpZCAiYmFkIEhFQUQgLSBzdHJhbmdlIHN5bWJvbGljIHJlZiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjI3Cittc2dpZCAicGVyZm9ybSAnZ2l0IGJpc2VjdCBuZXh0JyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjI5Cittc2dpZCAid3JpdGUgdGhlIHRlcm1zIHRvIC5naXQvQklTRUNUX1RFUk1TIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzEKK21zZ2lkICJjbGVhbnVwIHRoZSBiaXNlY3Rpb24gc3RhdGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzMworbXNnaWQgImNoZWNrIGZvciBleHBlY3RlZCByZXZzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzUKK21zZ2lkICJyZXNldCB0aGUgYmlzZWN0aW9uIHN0YXRlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzcKK21zZ2lkICJ3cml0ZSBvdXQgdGhlIGJpc2VjdGlvbiBzdGF0ZSBpbiBCSVNFQ1RfTE9HIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzkKK21zZ2lkICJjaGVjayBhbmQgc2V0IHRlcm1zIGluIGEgYmlzZWN0aW9uIHN0YXRlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDEKK21zZ2lkICJjaGVjayB3aGV0aGVyIGJhZCBvciBnb29kIHRlcm1zIGV4aXN0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDMKK21zZ2lkICJwcmludCBvdXQgdGhlIGJpc2VjdCB0ZXJtcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ1Cittc2dpZCAic3RhcnQgdGhlIGJpc2VjdCBzZXNzaW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDcKK21zZ2lkICJ1cGRhdGUgQklTRUNUX0hFQUQgaW5zdGVhZCBvZiBjaGVja2luZyBvdXQgdGhlIGN1cnJlbnQgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDkKK21zZ2lkICJubyBsb2cgZm9yIEJJU0VDVF9XUklURSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjY2Cittc2dpZCAiLS13cml0ZS10ZXJtcyByZXF1aXJlcyB0d28gYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NzAKK21zZ2lkICItLWJpc2VjdC1jbGVhbi1zdGF0ZSByZXF1aXJlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY3NworbXNnaWQgIi0tYmlzZWN0LXJlc2V0IHJlcXVpcmVzIGVpdGhlciBubyBhcmd1bWVudCBvciBhIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjgxCittc2dpZCAiLS1iaXNlY3Qtd3JpdGUgcmVxdWlyZXMgZWl0aGVyIDQgb3IgNSBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY4NworbXNnaWQgIi0tY2hlY2stYW5kLXNldC10ZXJtcyByZXF1aXJlcyAzIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjkzCittc2dpZCAiLS1iaXNlY3QtbmV4dC1jaGVjayByZXF1aXJlcyAyIG9yIDMgYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2OTkKK21zZ2lkICItLWJpc2VjdC10ZXJtcyByZXF1aXJlcyAwIG9yIDEgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjMxCittc2dpZCAiZ2l0IGJsYW1lIFs8b3B0aW9ucz5dIFs8cmV2LW9wdHM+XSBbPHJldj5dIFstLV0gPGZpbGU+IgorbXNnc3RyICJnaXQgYmxhbWUgWzzOtc+AzrnOu86/zrPOrc+CPl0gWzzOtc+AzrnOu86/zrPOrc+CIM6tzrrOtC4+XSBbPM6tzrrOtC4+XSBbLS1dIDzOsc+Bz4fOtc6vzr8+IgorCisjOiBidWlsdGluL2JsYW1lLmM6MzYKK21zZ2lkICI8cmV2LW9wdHM+IGFyZSBkb2N1bWVudGVkIGluIGdpdC1yZXYtbGlzdCgxKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JsYW1lLmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgImV4cGVjdGluZyBhIGNvbG9yOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JsYW1lLmM6NDEzCittc2dpZCAibXVzdCBlbmQgd2l0aCBhIGNvbG9yIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb2xvciAnJXMnIGluIGNvbG9yLmJsYW1lLnJlcGVhdGVkTGluZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjcxOAorbXNnaWQgImludmFsaWQgdmFsdWUgZm9yIGJsYW1lLmNvbG9yaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3OTMKK21zZ2lkICJTaG93IGJsYW1lIGVudHJpZXMgYXMgd2UgZmluZCB0aGVtLCBpbmNyZW1lbnRhbGx5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3OTQKK21zZ2lkICJTaG93IGJsYW5rIFNIQS0xIGZvciBib3VuZGFyeSBjb21taXRzIChEZWZhdWx0OiBvZmYpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3OTUKK21zZ2lkICJEbyBub3QgdHJlYXQgcm9vdCBjb21taXRzIGFzIGJvdW5kYXJpZXMgKERlZmF1bHQ6IG9mZikiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjc5NgorbXNnaWQgIlNob3cgd29yayBjb3N0IHN0YXRpc3RpY3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjc5NworbXNnaWQgIkZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JsYW1lLmM6Nzk4Cittc2dpZCAiU2hvdyBvdXRwdXQgc2NvcmUgZm9yIGJsYW1lIGVudHJpZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjc5OQorbXNnaWQgIlNob3cgb3JpZ2luYWwgZmlsZW5hbWUgKERlZmF1bHQ6IGF1dG8pIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MDAKK21zZ2lkICJTaG93IG9yaWdpbmFsIGxpbmVudW1iZXIgKERlZmF1bHQ6IG9mZikiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjgwMQorbXNnaWQgIlNob3cgaW4gYSBmb3JtYXQgZGVzaWduZWQgZm9yIG1hY2hpbmUgY29uc3VtcHRpb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjgwMgorbXNnaWQgIlNob3cgcG9yY2VsYWluIGZvcm1hdCB3aXRoIHBlci1saW5lIGNvbW1pdCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAizqDPgc6/zrLOv867zq4gzrzOv8+Bz4bOrs+CIM61zr3PhM6/zrvPjs69IHBvcmNlbGFpbiDOvM61IM+AzrvOt8+Bzr/Phs6/z4HOr861z4Igz4XPgM6/zrLOv867zq7PgiDOsc69zqwgzrPPgc6xzrzOvM6uIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODAzCittc2dpZCAiVXNlIHRoZSBzYW1lIG91dHB1dCBtb2RlIGFzIGdpdC1hbm5vdGF0ZSAoRGVmYXVsdDogb2ZmKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODA0Cittc2dpZCAiU2hvdyByYXcgdGltZXN0YW1wIChEZWZhdWx0OiBvZmYpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MDUKK21zZ2lkICJTaG93IGxvbmcgY29tbWl0IFNIQTEgKERlZmF1bHQ6IG9mZikiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjgwNgorbXNnaWQgIlN1cHByZXNzIGF1dGhvciBuYW1lIGFuZCB0aW1lc3RhbXAgKERlZmF1bHQ6IG9mZikiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjgwNworbXNnaWQgIlNob3cgYXV0aG9yIGVtYWlsIGluc3RlYWQgb2YgbmFtZSAoRGVmYXVsdDogb2ZmKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODA4Cittc2dpZCAiSWdub3JlIHdoaXRlc3BhY2UgZGlmZmVyZW5jZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjgwOQorbXNnaWQgImNvbG9yIHJlZHVuZGFudCBtZXRhZGF0YSBmcm9tIHByZXZpb3VzIGxpbmUgZGlmZmVyZW50bHkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjgxMAorbXNnaWQgImNvbG9yIGxpbmVzIGJ5IGFnZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODE3Cittc2dpZCAiVXNlIGFuIGV4cGVyaW1lbnRhbCBoZXVyaXN0aWMgdG8gaW1wcm92ZSBkaWZmcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODE5Cittc2dpZCAiU3BlbmQgZXh0cmEgY3ljbGVzIHRvIGZpbmQgYmV0dGVyIG1hdGNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MjAKK21zZ2lkICJVc2UgcmV2aXNpb25zIGZyb20gPGZpbGU+IGluc3RlYWQgb2YgY2FsbGluZyBnaXQtcmV2LWxpc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjgyMQorbXNnaWQgIlVzZSA8ZmlsZT4ncyBjb250ZW50cyBhcyB0aGUgZmluYWwgaW1hZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjgyMiBidWlsdGluL2JsYW1lLmM6ODIzCittc2dpZCAic2NvcmUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjgyMgorbXNnaWQgIkZpbmQgbGluZSBjb3BpZXMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjgyMworbXNnaWQgIkZpbmQgbGluZSBtb3ZlbWVudHMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjgyNAorbXNnaWQgIm4sbSIKK21zZ3N0ciAibixtIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODI0Cittc2dpZCAiUHJvY2VzcyBvbmx5IGxpbmUgcmFuZ2UgbixtLCBjb3VudGluZyBmcm9tIDEiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg3NQorbXNnaWQgIi0tcHJvZ3Jlc3MgY2FuJ3QgYmUgdXNlZCB3aXRoIC0taW5jcmVtZW50YWwgb3IgcG9yY2VsYWluIGZvcm1hdHMiCittc2dzdHIgIiIKKyLPhM6/IC0tcHJvZ3Jlc3MgzrTOtSDOs86vzr3Otc+EzrHOuSDOvc6xIM+Hz4HOt8+DzrnOvM6/z4DOv865zrfOuM61zq8gzrzOtSDPhM6/IC0taW5jcmVtZW50YWwgzq4gzrzOtSDOvM6/z4HPhs6tz4IgIgorIs61zr3PhM6/zrvPjs69IHBvcmNlbGFpbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgc3RyaW5nIGlzIHVzZWQgdG8gdGVsbCB1cyB0aGUKKyMuIG1heGltdW0gZGlzcGxheSB3aWR0aCBmb3IgYSByZWxhdGl2ZSB0aW1lc3RhbXAgaW4KKyMuICJnaXQgYmxhbWUiIG91dHB1dC4gIEZvciBDIGxvY2FsZSwgIjQgeWVhcnMsIDExCisjLiBtb250aHMgYWdvIiwgd2hpY2ggdGFrZXMgMjIgcGxhY2VzLCBpcyB0aGUgbG9uZ2VzdAorIy4gYW1vbmcgdmFyaW91cyBmb3JtcyBvZiByZWxhdGl2ZSB0aW1lc3RhbXBzLCBidXQKKyMuIHlvdXIgbGFuZ3VhZ2UgbWF5IG5lZWQgbW9yZSBvciBmZXdlciBkaXNwbGF5CisjLiBjb2x1bW5zLgorIy4KKyM6IGJ1aWx0aW4vYmxhbWUuYzo5MjYKK21zZ2lkICI0IHllYXJzLCAxMSBtb250aHMgYWdvIgorbXNnc3RyICLPgM+BzrnOvSDOsc+Az4wgNCDPh8+Bz4zOvc65zrEgzrrOsc65IDExIM68zq7Ovc61z4IiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzoxMDE4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJXMgaGFzIG9ubHkgJWx1IGxpbmUiCittc2dpZF9wbHVyYWwgImZpbGUgJXMgaGFzIG9ubHkgJWx1IGxpbmVzIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjEwNjQKK21zZ2lkICJCbGFtaW5nIGxpbmVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjkKK21zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstciB8IC1hXSBbLS1tZXJnZWQgfCAtLW5vLW1lcmdlZF0iCittc2dzdHIgImdpdCBicmFuY2ggWzzOtc+AzrnOu86/zrPOrc+CPl0gWy1yIHwgLWFdIFstLW1lcmdlZCB8IC0tbm8tbWVyZ2VkXSIKKworIzogYnVpbHRpbi9icmFuY2guYzozMAorbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1sXSBbLWZdIDxicmFuY2gtbmFtZT4gWzxzdGFydC1wb2ludD5dIgorbXNnc3RyICJnaXQgYnJhbmNoIFs8zrXPgM65zrvOv86zzq3Pgj5dIFstbF0gWy1mXSA8z4zOvc6/zrzOsSDOus67zqzOtM6/z4U+IFs8zrHPgc+HzrnOus+MIM+DzrfOvM61zq/Ovz5dIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjMxCittc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSBbLXJdICgtZCB8IC1EKSA8YnJhbmNoLW5hbWU+Li4uIgorbXNnc3RyICJnaXQgYnJhbmNoIFs8zrXPgM65zrvOv86zzq3Pgj5dIFstcl0gKC1kIHwgLUQpIDzPjM69zr/OvM6xIM66zrvOrM60zr/PhT4uLi4iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MzIKK21zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dICgtbSB8IC1NKSBbPG9sZC1icmFuY2g+XSA8bmV3LWJyYW5jaD4iCittc2dzdHIgImdpdCBicmFuY2ggWzzOtc+AzrnOu86/zrPOrc+CPl0gKC1tIHwgLU0pIFs8z4DOsc67zrnPjM+CIM66zrvOrM60zr/Pgj5dIDzOvc6tzr/PgiDOus67zqzOtM6/z4I+IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjMzCittc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSAoLWMgfCAtQykgWzxvbGQtYnJhbmNoPl0gPG5ldy1icmFuY2g+IgorbXNnc3RyICJnaXQgYnJhbmNoIFs8zrXPgM65zrvOv86zzq3Pgj5dICgtYyB8IC1DKSBbPM+AzrHOu865z4zPgiDOus67zqzOtM6/z4I+XSA8zr3Orc6/z4IgzrrOu86szrTOv8+CPiIKKworIzogYnVpbHRpbi9icmFuY2guYzozNAorbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1yIHwgLWFdIFstLXBvaW50cy1hdF0iCittc2dzdHIgImdpdCBicmFuY2ggWzzOtc+AzrnOu86/zrPOrc+CPl0gWy1yIHwgLWFdIFstLXBvaW50cy1hdF0iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MzUKK21zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstciB8IC1hXSBbLS1mb3JtYXRdIgorbXNnc3RyICJnaXQgYnJhbmNoIFs8zrXPgM65zrvOv86zzq3Pgj5dIFstciB8IC1hXSBbLS1mb3JtYXRdIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZGVsZXRpbmcgYnJhbmNoICclcycgdGhhdCBoYXMgYmVlbiBtZXJnZWQgdG9cbiIKKyIgICAgICAgICAnJXMnLCBidXQgbm90IHlldCBtZXJnZWQgdG8gSEVBRC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm5vdCBkZWxldGluZyBicmFuY2ggJyVzJyB0aGF0IGlzIG5vdCB5ZXQgbWVyZ2VkIHRvXG4iCisiICAgICAgICAgJyVzJywgZXZlbiB0aG91Z2ggaXQgaXMgbWVyZ2VkIHRvIEhFQUQuIgorbXNnc3RyICIiCisizrTOtSDOs86vzr3Otc+EzrHOuSDOtM65zrHOs8+BzrHPhs6uIM+Ezr/PhSDOus67zqzOtM6/z4UgJyVzJyDPgM6/z4UgzrTOtc69IM6tz4fOtc65IM+Dz4XOs8+Hz4nOvc61z4XPhM61zq8gzrHOus+MzrzOsSDOvM61IM+Ezr9cbiIKKyIgICAgICAgICAnJXMnLCDPgM6xz4HPjM67zr8gz4DOv8+FIM6tz4fOtc65IM+Dz4XOs8+Hz4nOvc61z4XPhM61zq8gzrzOtSDPhM6/IEhFQUQuIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZG4ndCBsb29rIHVwIGNvbW1pdCBvYmplY3QgZm9yICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzoxNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBicmFuY2ggJyVzJyBpcyBub3QgZnVsbHkgbWVyZ2VkLlxuIgorIklmIHlvdSBhcmUgc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgaXQsIHJ1biAnZ2l0IGJyYW5jaCAtRCAlcycuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTg2Cittc2dpZCAiVXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjIxNworbXNnaWQgImNhbm5vdCB1c2UgLWEgd2l0aCAtZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjIyMworbXNnaWQgIkNvdWxkbid0IGxvb2sgdXAgY29tbWl0IG9iamVjdCBmb3IgSEVBRCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgZGVsZXRlIGJyYW5jaCAnJXMnIGNoZWNrZWQgb3V0IGF0ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzoyNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlLXRyYWNraW5nIGJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzoyNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYnJhbmNoICclcycgbm90IGZvdW5kLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJFcnJvciBkZWxldGluZyByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXJyb3IgZGVsZXRpbmcgYnJhbmNoICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzoyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICVzICh3YXMgJXMpLlxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgYnJhbmNoICVzICh3YXMgJXMpLlxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDIxIGJ1aWx0aW4vdGFnLmM6NTkKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgZm9ybWF0IHN0cmluZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJXMgaXMgYmVpbmcgcmViYXNlZCBhdCAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ2MgorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJXMgaXMgYmVpbmcgYmlzZWN0ZWQgYXQgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo0NzkKK21zZ2lkICJjYW5ub3QgY29weSB0aGUgY3VycmVudCBicmFuY2ggd2hpbGUgbm90IG9uIGFueS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo0ODEKK21zZ2lkICJjYW5ub3QgcmVuYW1lIHRoZSBjdXJyZW50IGJyYW5jaCB3aGlsZSBub3Qgb24gYW55LiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGJyYW5jaCBuYW1lOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTE5Cittc2dpZCAiQnJhbmNoIHJlbmFtZSBmYWlsZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo1MjEKK21zZ2lkICJCcmFuY2ggY29weSBmYWlsZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3JlYXRlZCBhIGNvcHkgb2YgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJSZW5hbWVkIGEgbWlzbmFtZWQgYnJhbmNoICclcycgYXdheSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjUzNAorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggcmVuYW1lZCB0byAlcywgYnV0IEhFQUQgaXMgbm90IHVwZGF0ZWQhIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQzCittc2dpZCAiQnJhbmNoIGlzIHJlbmFtZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQ1Cittc2dpZCAiQnJhbmNoIGlzIGNvcGllZCwgYnV0IHVwZGF0ZSBvZiBjb25maWctZmlsZSBmYWlsZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBsZWFzZSBlZGl0IHRoZSBkZXNjcmlwdGlvbiBmb3IgdGhlIGJyYW5jaFxuIgorIiAgJXNcbiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBzdHJpcHBlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjU5NAorbXNnaWQgIkdlbmVyaWMgb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjU5NgorbXNnaWQgInNob3cgaGFzaCBhbmQgc3ViamVjdCwgZ2l2ZSB0d2ljZSBmb3IgdXBzdHJlYW0gYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTk3Cittc2dpZCAic3VwcHJlc3MgaW5mb3JtYXRpb25hbCBtZXNzYWdlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjU5OAorbXNnaWQgInNldCB1cCB0cmFja2luZyBtb2RlIChzZWUgZ2l0LXB1bGwoMSkpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjAwCittc2dpZCAiZG8gbm90IHVzZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYwMiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODIKK21zZ2lkICJ1cHN0cmVhbSIKK21zZ3N0ciAiz4DPgc6/z4Igz4TOsSDPgM6szr3PiSIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MDIKK21zZ2lkICJjaGFuZ2UgdGhlIHVwc3RyZWFtIGluZm8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MDMKK21zZ2lkICJVbnNldCB0aGUgdXBzdHJlYW0gaW5mbyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYwNAorbXNnaWQgInVzZSBjb2xvcmVkIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYwNQorbXNnaWQgImFjdCBvbiByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MDcgYnVpbHRpbi9icmFuY2guYzo2MDkKK21zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgY29udGFpbiB0aGUgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA4IGJ1aWx0aW4vYnJhbmNoLmM6NjEwCittc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYxMworbXNnaWQgIlNwZWNpZmljIGdpdC1icmFuY2ggYWN0aW9uczoiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MTQKK21zZ2lkICJsaXN0IGJvdGggcmVtb3RlLXRyYWNraW5nIGFuZCBsb2NhbCBicmFuY2hlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYxNgorbXNnaWQgImRlbGV0ZSBmdWxseSBtZXJnZWQgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE3Cittc2dpZCAiZGVsZXRlIGJyYW5jaCAoZXZlbiBpZiBub3QgbWVyZ2VkKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYxOAorbXNnaWQgIm1vdmUvcmVuYW1lIGEgYnJhbmNoIGFuZCBpdHMgcmVmbG9nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE5Cittc2dpZCAibW92ZS9yZW5hbWUgYSBicmFuY2gsIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyMAorbXNnaWQgImNvcHkgYSBicmFuY2ggYW5kIGl0cyByZWZsb2ciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MjEKK21zZ2lkICJjb3B5IGEgYnJhbmNoLCBldmVuIGlmIHRhcmdldCBleGlzdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MjIKK21zZ2lkICJsaXN0IGJyYW5jaCBuYW1lcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyMworbXNnaWQgImNyZWF0ZSB0aGUgYnJhbmNoJ3MgcmVmbG9nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI1Cittc2dpZCAiZWRpdCB0aGUgZGVzY3JpcHRpb24gZm9yIHRoZSBicmFuY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MjYKK21zZ2lkICJmb3JjZSBjcmVhdGlvbiwgbW92ZS9yZW5hbWUsIGRlbGV0aW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI3Cittc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGFyZSBtZXJnZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MjgKK21zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MjkKK21zZ2lkICJsaXN0IGJyYW5jaGVzIGluIGNvbHVtbnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MzAgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MCBidWlsdGluL2xzLXJlbW90ZS5jOjcwCisjOiBidWlsdGluL3RhZy5jOjQxNQorbXNnaWQgImtleSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYzMSBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQxIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzEKKyM6IGJ1aWx0aW4vdGFnLmM6NDE2Cittc2dpZCAiZmllbGQgbmFtZSB0byBzb3J0IG9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMzIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDMgYnVpbHRpbi9ub3Rlcy5jOjQxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQxOCBidWlsdGluL25vdGVzLmM6NTgxIGJ1aWx0aW4vbm90ZXMuYzo1ODQKKyM6IGJ1aWx0aW4vdGFnLmM6NDE4Cittc2dpZCAib2JqZWN0IgorbXNnc3RyICLOsc69z4TOuc66zrXOr868zrXOvc6/IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYzNAorbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgb2YgdGhlIG9iamVjdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYzNiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ5IGJ1aWx0aW4vdGFnLmM6NDI1Cittc2dpZCAic29ydGluZyBhbmQgZmlsdGVyaW5nIGFyZSBjYXNlIGluc2Vuc2l0aXZlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzggYnVpbHRpbi90YWcuYzo0MjMKKyM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM5Cittc2dpZCAiZm9ybWF0IHRvIHVzZSBmb3IgdGhlIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY2MCBidWlsdGluL2Nsb25lLmM6NzQ2Cittc2dpZCAiSEVBRCBub3QgZm91bmQgYmVsb3cgcmVmcy9oZWFkcyEiCittc2dzdHIgIs6kzr8gSEVBRCDOtM61IM6yz4HOrc64zrfOus61IM66zqzPhM+JIM6xz4DPjCDPhM6/IHJlZnMvaGVhZHMhIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY4MworbXNnaWQgIi0tY29sdW1uIGFuZCAtLXZlcmJvc2UgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY5OCBidWlsdGluL2JyYW5jaC5jOjc0OSBidWlsdGluL2JyYW5jaC5jOjc1OAorbXNnaWQgImJyYW5jaCBuYW1lIHJlcXVpcmVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzI1Cittc2dpZCAiQ2Fubm90IGdpdmUgZGVzY3JpcHRpb24gdG8gZGV0YWNoZWQgSEVBRCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjczMAorbXNnaWQgImNhbm5vdCBlZGl0IGRlc2NyaXB0aW9uIG9mIG1vcmUgdGhhbiBvbmUgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGNvbW1pdCBvbiBicmFuY2ggJyVzJyB5ZXQuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzQwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGJyYW5jaCBuYW1lZCAnJXMnLiIKK21zZ3N0ciAizpTOtc69IM+Fz4DOrM+Bz4fOtc65IM66zrvOrM60zr/PgiDOvM61IM+Mzr3Ov868zrEgJyVzJy4iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzU1Cittc2dpZCAidG9vIG1hbnkgYnJhbmNoZXMgZm9yIGEgY29weSBvcGVyYXRpb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo3NjQKK21zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgZm9yIGEgcmVuYW1lIG9wZXJhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjc2OQorbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyB0byBzZXQgbmV3IHVwc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzczCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb3VsZCBub3Qgc2V0IHVwc3RyZWFtIG9mIEhFQUQgdG8gJXMgd2hlbiBpdCBkb2VzIG5vdCBwb2ludCB0byBhbnkgYnJhbmNoLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjc3NiBidWlsdGluL2JyYW5jaC5jOjc5OQorIywgYy1mb3JtYXQKK21zZ2lkICJubyBzdWNoIGJyYW5jaCAnJXMnIgorbXNnc3RyICLOtM61zr0gz4XPgM6sz4HPh861zrkgzr8gzrrOu86szrTOv8+CICclcyciCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzgwCisjLCBjLWZvcm1hdAorbXNnaWQgImJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzkzCittc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIHRvIHVuc2V0IHVwc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzk3Cittc2dpZCAiY291bGQgbm90IHVuc2V0IHVwc3RyZWFtIG9mIEhFQUQgd2hlbiBpdCBkb2VzIG5vdCBwb2ludCB0byBhbnkgYnJhbmNoLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjgwMworIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJyVzJyBoYXMgbm8gdXBzdHJlYW0gaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo4MTMKK21zZ2lkICItYSBhbmQgLXIgb3B0aW9ucyB0byAnZ2l0IGJyYW5jaCcgZG8gbm90IG1ha2Ugc2Vuc2Ugd2l0aCBhIGJyYW5jaCBuYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODE2Cittc2dpZCAiIgorInRoZSAnLS1zZXQtdXBzdHJlYW0nIG9wdGlvbiBpcyBubyBsb25nZXIgc3VwcG9ydGVkLiBQbGVhc2UgdXNlICctLXRyYWNrJyBvciAiCisiJy0tc2V0LXVwc3RyZWFtLXRvJyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG9rYXlcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjU4Cittc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjYyCittc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gdW5idW5kbGUuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1OTMKK21zZ2lkICIiCisiZ2l0IGNhdC1maWxlICgtdCBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1lIHwgLSIKKyJwIHwgPHR5cGU+IHwgLS10ZXh0Y29udiB8IC0tZmlsdGVycykgWy0tcGF0aD08cGF0aD5dIDxvYmplY3Q+IgorbXNnc3RyICIiCisiZ2l0IGNhdC1maWxlICgtdCBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1lIHwgLSIKKyJwIHwgPM+Ez43PgM6/z4I+IHwgLS10ZXh0Y29udiB8IC0tZmlsdGVycykgWy0tcGF0aD08zrTOuc6xzrTPgc6/zrzOrj5dIDzOsc69z4TOuc66zrXOr868zrXOvc6/PiIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU5NAorbXNnaWQgIiIKKyJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCisiZmlsdGVyc10iCittc2dzdHIgIiIKKyJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCisiZmlsdGVyc10iCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MTUKK21zZ2lkICJvbmx5IG9uZSBiYXRjaCBvcHRpb24gbWF5IGJlIHNwZWNpZmllZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjMzCittc2dpZCAiPHR5cGU+IGNhbiBiZSBvbmUgb2Y6IGJsb2IsIHRyZWUsIGNvbW1pdCwgdGFnIgorbXNnc3RyICLOvyA8z4TPjc+Azr/Pgj4gzrzPgM6/z4HOtc6vIM69zrEgzrXOr869zrHOuSDOrc69zrHPgiDOtc66IM+Ez4nOvTogYmxvYiwgzrTOrc69z4TPgc6/LCDPhc+Azr/Oss6/zrvOriwgzrXPhM65zrrOrc+EzrEiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzQKK21zZ2lkICJzaG93IG9iamVjdCB0eXBlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzUKK21zZ2lkICJzaG93IG9iamVjdCBzaXplIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzcKK21zZ2lkICJleGl0IHdpdGggemVybyB3aGVuIHRoZXJlJ3Mgbm8gZXJyb3IiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzOAorbXNnaWQgInByZXR0eS1wcmludCBvYmplY3QncyBjb250ZW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDAKK21zZ2lkICJmb3IgYmxvYiBvYmplY3RzLCBydW4gdGV4dGNvbnYgb24gb2JqZWN0J3MgY29udGVudCIKK21zZ3N0ciAizrPOuc6xIM6xzr3PhM65zrrOtc6vzrzOtc69zrEgYmxvYiwgz4TPgc6tzr7PhM61IHRleHRjb252IM+Dz4TOvyDPgM61z4HOuc61z4fPjM68zrXOvc6/IM+Ezr/PhSDOsc69z4TOuc66zrXOuc68zq3Ovc6/z4UiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDIKK21zZ2lkICJmb3IgYmxvYiBvYmplY3RzLCBydW4gZmlsdGVycyBvbiBvYmplY3QncyBjb250ZW50IgorbXNnc3RyICLOs865zrEgzrHOvc+EzrnOus61zq/OvM61zr3OsSBibG9iLCDPhM+Bzq3Ovs+EzrUgz4bOr867z4TPgc6xIM+Dz4TOvyDPgM61z4HOuc61z4fPjM68zrXOvc6/IM+Ezr/PhSDOsc69z4TOuc66zrXOuc68zq3Ovc6/z4UiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDMgZ2l0LXN1Ym1vZHVsZS5zaDo4NjAKK21zZ2lkICJibG9iIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDQKK21zZ2lkICJ1c2UgYSBzcGVjaWZpYyBwYXRoIGZvciAtLXRleHRjb252Ly0tZmlsdGVycyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ2Cittc2dpZCAiYWxsb3cgLXMgYW5kIC10IHRvIHdvcmsgd2l0aCBicm9rZW4vY29ycnVwdCBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDcKK21zZ2lkICJidWZmZXIgLS1iYXRjaCBvdXRwdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0OQorbXNnaWQgInNob3cgaW5mbyBhbmQgY29udGVudCBvZiBvYmplY3RzIGZlZCBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjUzCittc2dpZCAic2hvdyBpbmZvIGFib3V0IG9iamVjdHMgZmVkIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTcKK21zZ2lkICJmb2xsb3cgaW4tdHJlZSBzeW1saW5rcyAodXNlZCB3aXRoIC0tYmF0Y2ggb3IgLS1iYXRjaC1jaGVjaykiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1OQorbXNnaWQgInNob3cgYWxsIG9iamVjdHMgd2l0aCAtLWJhdGNoIG9yIC0tYmF0Y2gtY2hlY2siCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY2MQorbXNnaWQgImRvIG5vdCBvcmRlciAtLWJhdGNoLWFsbC1vYmplY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxMworbXNnaWQgImdpdCBjaGVjay1hdHRyIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSBbLS1dIDxwYXRobmFtZT4uLi4iCittc2dzdHIgImdpdCBjaGVjay1hdHRyIFstYSB8IC0tYWxsIHwgPM+AzrXOtM6vzr8+Li4uXSBbLS1dIDzPjM69zr/OvM6xIM60zrnOsc60z4HOv868zq7Pgj4uLi4iCisKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjE0Cittc2dpZCAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSIKK21zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPM+AzrXOtM6vzr8+Li4uXSIKKworIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjEKK21zZ2lkICJyZXBvcnQgYWxsIGF0dHJpYnV0ZXMgc2V0IG9uIGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjIKK21zZ2lkICJ1c2UgLmdpdGF0dHJpYnV0ZXMgb25seSBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAizr3OsSDOs86vzr3Otc65IM+Hz4HOrs+Dzrcgz4TOv8+FIC5naXRhdHRyaWJ1dGVzIM68z4zOvc6/IM6xz4DPjCDPhM6/IM61z4XPgc61z4TOrs+BzrnOvyIKKworIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjMgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNSBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAyCittc2dpZCAicmVhZCBmaWxlIG5hbWVzIGZyb20gc3RkaW4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjUgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNworbXNnaWQgInRlcm1pbmF0ZSBpbnB1dCBhbmQgb3V0cHV0IHJlY29yZHMgYnkgYSBOVUwgY2hhcmFjdGVyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjEgYnVpbHRpbi9jaGVja291dC5jOjEyODAgYnVpbHRpbi9nYy5jOjUxNworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NgorbXNnaWQgInN1cHByZXNzIHByb2dyZXNzIHJlcG9ydGluZyIKK21zZ3N0ciAizr3OsSDOvM63zr0gzrHOvc6xz4bOrc+BzrXPhM6xzrkgzrcgz4DPgc+Mzr/OtM6/z4IiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjkKK21zZ2lkICJzaG93IG5vbi1tYXRjaGluZyBpbnB1dCBwYXRocyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjMxCittc2dpZCAiaWdub3JlIGluZGV4IHdoZW4gY2hlY2tpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjAKK21zZ2lkICJjYW5ub3Qgc3BlY2lmeSBwYXRobmFtZXMgd2l0aCAtLXN0ZGluIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTYzCittc2dpZCAiLXogb25seSBtYWtlcyBzZW5zZSB3aXRoIC0tc3RkaW4iCittc2dzdHIgIs+Ezr8gLXogzq3Ph861zrkgzr3PjM63zrzOsSDOvM+Mzr3OvyDOvM61IM+Ezr8gLS1zdGRpbiIKKworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjUKK21zZ2lkICJubyBwYXRoIHNwZWNpZmllZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2OQorbXNnaWQgIi0tcXVpZXQgaXMgb25seSB2YWxpZCB3aXRoIGEgc2luZ2xlIHBhdGhuYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTcxCittc2dpZCAiY2Fubm90IGhhdmUgYm90aCAtLXF1aWV0IGFuZCAtLXZlcmJvc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzQKK21zZ2lkICItLW5vbi1tYXRjaGluZyBpcyBvbmx5IHZhbGlkIHdpdGggLS12ZXJib3NlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2stbWFpbG1hcC5jOjkKK21zZ2lkICJnaXQgY2hlY2stbWFpbG1hcCBbPG9wdGlvbnM+XSA8Y29udGFjdD4uLi4iCittc2dzdHIgImdpdCBjaGVjay1tYWlsbWFwIFs8zrXPgM65zrvOv86zzq3Pgj5dIDzOtc+AzrHPhs6uPi4uLiIKKworIzogYnVpbHRpbi9jaGVjay1tYWlsbWFwLmM6MTQKK21zZ2lkICJhbHNvIHJlYWQgY29udGFjdHMgZnJvbSBzdGRpbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrLW1haWxtYXAuYzoyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29udGFjdDogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVjay1tYWlsbWFwLmM6NDgKK21zZ2lkICJubyBjb250YWN0cyBzcGVjaWZpZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjEzMQorbXNnaWQgImdpdCBjaGVja291dC1pbmRleCBbPG9wdGlvbnM+XSBbLS1dIFs8ZmlsZT4uLi5dIgorbXNnc3RyICJnaXQgY2hlY2tvdXQtaW5kZXggWzzOtc+AzrnOu86/zrPOrc+CPl0gWy0tXSBbPM6xz4HPh861zq/Ovz4uLi5dIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTQ4Cittc2dpZCAic3RhZ2Ugc2hvdWxkIGJlIGJldHdlZW4gMSBhbmQgMyBvciBhbGwiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NAorbXNnaWQgImNoZWNrIG91dCBhbGwgZmlsZXMgaW4gdGhlIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjUKK21zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgZXhpc3RpbmcgZmlsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NworbXNnaWQgIm5vIHdhcm5pbmcgZm9yIGV4aXN0aW5nIGZpbGVzIGFuZCBmaWxlcyBub3QgaW4gaW5kZXgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2OQorbXNnaWQgImRvbid0IGNoZWNrb3V0IG5ldyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcxCittc2dpZCAidXBkYXRlIHN0YXQgaW5mb3JtYXRpb24gaW4gdGhlIGluZGV4IGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NQorbXNnaWQgInJlYWQgbGlzdCBvZiBwYXRocyBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc3Cittc2dpZCAid3JpdGUgdGhlIGNvbnRlbnQgdG8gdGVtcG9yYXJ5IGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzggYnVpbHRpbi9jb2x1bW4uYzozMQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzgzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU3CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjY5Cittc2dpZCAic3RyaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzkKK21zZ2lkICJ3aGVuIGNyZWF0aW5nIGZpbGVzLCBwcmVwZW5kIDxzdHJpbmc+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxODEKK21zZ2lkICJjb3B5IG91dCB0aGUgZmlsZXMgZnJvbSBuYW1lZCBzdGFnZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzIKK21zZ2lkICJnaXQgY2hlY2tvdXQgWzxvcHRpb25zPl0gPGJyYW5jaD4iCittc2dzdHIgImdpdCBjaGVja291dCBbPM61z4DOuc67zr/Os86tz4I+XSA8zrrOu86szrTOv8+CPiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjMzCittc2dpZCAiZ2l0IGNoZWNrb3V0IFs8b3B0aW9ucz5dIFs8YnJhbmNoPl0gLS0gPGZpbGU+Li4uIgorbXNnc3RyICJnaXQgY2hlY2tvdXQgWzzOtc+AzrnOu86/zrPOrc+CPl0gWzzOus67zqzOtM6/z4I+XSAtLSA8zrHPgc+HzrXOr86/Pi4uLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NyBidWlsdGluL2NoZWNrb3V0LmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG91ciB2ZXJzaW9uIgorbXNnc3RyICLOtyDOtM65zrHOtM+Bzr/OvM6uICclcycgzrTOtc69IM6tz4fOtc65IM+EzrcgzrTOuc66zq4gzrzOsc+CIM6tzrrOtM6/z4POtyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0OSBidWlsdGluL2NoZWNrb3V0LmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIHRoZWlyIHZlcnNpb24iCittc2dzdHIgIs63IM60zrnOsc60z4HOv868zq4gJyVzJyDOtM61zr0gzq3Ph861zrkgz4TOtyDOtM65zrrOriDPhM6/z4XPgiDOrc66zrTOv8+DzrciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgYWxsIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKK21zZ3N0ciAizrcgzrTOuc6xzrTPgc6/zrzOriAnJXMnIM60zrXOvSDOrc+HzrXOuSDPjM67zrXPgiDPhM65z4IgzrHOvc6xzrPOus6xzq/Otc+CIM61zrrOtM+Mz4POtc65z4IiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgbmVjZXNzYXJ5IHZlcnNpb25zIgorbXNnc3RyICLOtyDOtM65zrHOtM+Bzr/OvM6uICclcycgzrTOtc69IM6tz4fOtc65IM+EzrnPgiDOsc69zrHOs866zrHOr861z4IgzrXOus60z4zPg861zrnPgiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcyc6IGNhbm5vdCBtZXJnZSIKK21zZ3N0ciAizrTOuc6xzrTPgc6/zrzOriAnJXMnOiDOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgz4PPhc6zz4fPjs69zrXPhc+DzrciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGFkZCBtZXJnZSByZXN1bHQgZm9yICclcyciCittc2dzdHIgIs6UzrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDPgM+Bzr/Pg864zq7Ous63IM6xz4DOv8+EzrXOu86tz4POvM6xz4TOv8+CIM+Dz4XOs8+Hz47Ovc61z4XPg863z4IgzrPOuc6xIM+Ezr8gJyVzJyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjI2NyBidWlsdGluL2NoZWNrb3V0LmM6MjcwIGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzMKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHVwZGF0aW5nIHBhdGhzIgorbXNnc3RyICLPhM6/ICclcycgzrTOtSDOs86vzr3Otc+EzrHOuSDOvc6xIM+Hz4HOt8+DzrnOvM6/z4DOv865zrfOuM61zq8gzrzOtSDPhM63zr0gzrXOvc63zrzOrc+Bz4nPg863IM60zrnOsc60z4HOv868z47OvSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjI3OSBidWlsdGluL2NoZWNrb3V0LmM6MjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKK21zZ3N0ciAiz4TOvyAnJXMnIM60zrUgzrPOr869zrXPhM6xzrkgzr3OsSDPh8+BzrfPg865zrzOv8+Azr/Ouc63zrjOtc6vIM68zrUgz4TOvyAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjI4NQorIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgdXBkYXRlIHBhdGhzIGFuZCBzd2l0Y2ggdG8gYnJhbmNoICclcycgYXQgdGhlIHNhbWUgdGltZS4iCittc2dzdHIgIs6UzrUgzrPOr869zrXPhM6xzrkgzrXOvc63zrzOrc+Bz4nPg863IM60zrnOsc60z4HOv868z47OvSDOus6xzrkgzrHOu867zrHOs86uIM+Dz4TOv869IM66zrvOrM60zr8gJyVzJyDPhM6xz4XPhM+Mz4fPgc6/zr3OsS4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNTQgYnVpbHRpbi9jaGVja291dC5jOjM2MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgaXMgdW5tZXJnZWQiCittc2dzdHIgIs60zrXOvSDOrc+HzrXOuSDOs86vzr3Otc65IM+Dz4XOs8+Hz47Ovc61z4XPg863IM+EzrfPgiDOtM65zrHOtM+Bzr/OvM6uz4IgJyVzJyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM5NworIywgYy1mb3JtYXQKK21zZ2lkICJSZWNyZWF0ZWQgJWQgbWVyZ2UgY29uZmxpY3QiCittc2dpZF9wbHVyYWwgIlJlY3JlYXRlZCAlZCBtZXJnZSBjb25mbGljdHMiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0ZWQgJWQgcGF0aCBmcm9tICVzIgorbXNnaWRfcGx1cmFsICJVcGRhdGVkICVkIHBhdGhzIGZyb20gJXMiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0ZWQgJWQgcGF0aCBmcm9tIHRoZSBpbmRleCIKK21zZ2lkX3BsdXJhbCAiVXBkYXRlZCAlZCBwYXRocyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2NDUKK21zZ2lkICJ5b3UgbmVlZCB0byByZXNvbHZlIHlvdXIgY3VycmVudCBpbmRleCBmaXJzdCIKK21zZ3N0ciAiz4DPgc6tz4DOtc65IM69zrEgzrXPgM65zrvPjc+DzrXPhM61IM+Ezr8gz4TPgc6tz4fOv869IM+DzrHPgiDOtc+Fz4HOtc+Ezq7Pgc65zr8gz4DPgc+Oz4TOsSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjc4MgorIywgYy1mb3JtYXQKK21zZ2lkICJDYW4gbm90IGRvIHJlZmxvZyBmb3IgJyVzJzogJXNcbiIKK21zZ3N0ciAizpTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM+MIM+Ezr8gcmVmbG9nIM6zzrnOsSDPhM6/ICclcyc6ICVzXG4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MjQKK21zZ2lkICJIRUFEIGlzIG5vdyBhdCIKK21zZ3N0ciAizqTOvyBIRUFEIM6yz4HOr8+DzrrOtc+EzrHOuSDPhM+Oz4HOsSDPg8+Ezr8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MjggYnVpbHRpbi9jbG9uZS5jOjY5OQorbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgSEVBRCIKK21zZ3N0ciAizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TPjCDOvc6xIM61zr3Ot868zrXPgc+JzrjOtc6vIM+Ezr8gSEVBRCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjgzMgorIywgYy1mb3JtYXQKK21zZ2lkICJSZXNldCBicmFuY2ggJyVzJ1xuIgorbXNnc3RyICLOlc+AzrHOvc6xz4bOv8+Bzqwgz4TOv8+FIM66zrvOrM60zr/PhSAnJXMnXG4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWxyZWFkeSBvbiAnJXMnXG4iCittc2dzdHIgIs6Sz4HOr8+DzrrOtc+Dz4TOtSDOrs60zrcgz4PPhM6/ICclcydcbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJTd2l0Y2hlZCB0byBhbmQgcmVzZXQgYnJhbmNoICclcydcbiIKK21zZ3N0ciAizpHOu867zrHOs86uIM66zrHOuSDOtc+AzrHOvc6xz4bOv8+Bzqwgz4PPhM6/zr0gzrrOu86szrTOvyAnJXMnXG4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4NDEgYnVpbHRpbi9jaGVja291dC5jOjEyMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3dpdGNoZWQgdG8gYSBuZXcgYnJhbmNoICclcydcbiIKK21zZ3N0ciAizpHOu867zrHOs86uIM+DzrUgzr3Orc6/IM66zrvOrM60zr8gJyVzJ1xuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlN3aXRjaGVkIHRvIGJyYW5jaCAnJXMnXG4iCittc2dzdHIgIs6RzrvOu86xzrPOriDPg8+Ezr/OvSDOus67zqzOtM6/ICclcydcbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjg5NAorIywgYy1mb3JtYXQKK21zZ2lkICIgLi4uIGFuZCAlZCBtb3JlLlxuIgorbXNnc3RyICIgLi4uIM66zrHOuSAlZCDOsc66z4zOvM6xLlxuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXYXJuaW5nOiB5b3UgYXJlIGxlYXZpbmcgJWQgY29tbWl0IGJlaGluZCwgbm90IGNvbm5lY3RlZCB0b1xuIgorImFueSBvZiB5b3VyIGJyYW5jaGVzOlxuIgorIlxuIgorIiVzXG4iCittc2dpZF9wbHVyYWwgIiIKKyJXYXJuaW5nOiB5b3UgYXJlIGxlYXZpbmcgJWQgY29tbWl0cyBiZWhpbmQsIG5vdCBjb25uZWN0ZWQgdG9cbiIKKyJhbnkgb2YgeW91ciBicmFuY2hlczpcbiIKKyJcbiIKKyIlc1xuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjkxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSWYgeW91IHdhbnQgdG8ga2VlcCBpdCBieSBjcmVhdGluZyBhIG5ldyBicmFuY2gsIHRoaXMgbWF5IGJlIGEgZ29vZCB0aW1lXG4iCisidG8gZG8gc28gd2l0aDpcbiIKKyJcbiIKKyIgZ2l0IGJyYW5jaCA8bmV3LWJyYW5jaC1uYW1lPiAlc1xuIgorIlxuIgorbXNnaWRfcGx1cmFsICIiCisiSWYgeW91IHdhbnQgdG8ga2VlcCB0aGVtIGJ5IGNyZWF0aW5nIGEgbmV3IGJyYW5jaCwgdGhpcyBtYXkgYmUgYSBnb29kIHRpbWVcbiIKKyJ0byBkbyBzbyB3aXRoOlxuIgorIlxuIgorIiBnaXQgYnJhbmNoIDxuZXctYnJhbmNoLW5hbWU+ICVzXG4iCisiXG4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTUxCittc2dpZCAiaW50ZXJuYWwgZXJyb3IgaW4gcmV2aXNpb24gd2FsayIKK21zZ3N0ciAizrXPg8+Jz4TOtc+BzrnOus+MIM+Dz4bOrM67zrzOsSDPg8+Ezr8gzrzOv869zr/PgM6sz4TOuSDOtc66zrTPjM+DzrXPic69IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTU1Cittc2dpZCAiUHJldmlvdXMgSEVBRCBwb3NpdGlvbiB3YXMiCittc2dzdHIgIs6XIM+Az4HOv863zrPOv8+NzrzOtc69zrcgzrjOrc+Dzrcgz4TOv8+FIEhFQUQgzq7PhM6xzr0iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5ODMgYnVpbHRpbi9jaGVja291dC5jOjEyMDcKK21zZ2lkICJZb3UgYXJlIG9uIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIgorbXNnc3RyICLOks+Bzq/Pg866zrXPg8+EzrUgz4POtSDOus67zqzOtM6/IM+Azr/PhSDOtM61zr0gzq3Ph861zrkgzrHOus+MzrzOsSDOs861zr3Ovc63zrjOtc6vIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTEwNAorIywgYy1mb3JtYXQKK21zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQsICVkIGdpdmVuLiIKK21zZ3N0ciAizrHOvc6xzrzOtc69z4zPhM6xzr0gzrzPjM69zr8gzrzOr86xIM6xzr3Osc+Gzr/Pgc6sLCDOtM+MzrjOt866zrHOvSAlZC4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTQwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyInJXMnIGNvdWxkIGJlIGJvdGggYSBsb2NhbCBmaWxlIGFuZCBhIHRyYWNraW5nIGJyYW5jaC5cbiIKKyJQbGVhc2UgdXNlIC0tIChhbmQgb3B0aW9uYWxseSAtLW5vLWd1ZXNzKSB0byBkaXNhbWJpZ3VhdGUiCittc2dzdHIgIiIKKyLOpM6/ICclcycgzrjOsSDOvM+Azr/Pgc6/z43Pg861IM69zrEgzrXOr869zrHOuSDOtc6vz4TOtSDPhM6/z4DOuc66z4wgzrHPgc+HzrXOr86/IM61zq/PhM61IM66zrvOrM60zr/PgiDPgM6xz4HOsc66zr/Ou86/z43OuM63z4POt8+CLlxuIgorIs6gzrHPgc6xzrrOsc67z44gz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtSAtLSAozrrOsc65IM+Az4HOv86xzrnPgc61z4TOuc66zqwgLS1uby1ndWVzcykgzrPOuc6xIM69zrEgzrHPgM6/z4POsc+GzrfOvc6vz4POtc+EzrUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTUzIGJ1aWx0aW4vd29ya3RyZWUuYzoyOTAgYnVpbHRpbi93b3JrdHJlZS5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZmVyZW5jZTogJXMiCittc2dzdHIgIs68zrcgzq3Os866z4XPgc63IM6xzr3Osc+Gzr/Pgc6sOiAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjExODIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIGlzIG5vdCBhIHRyZWU6ICVzIgorbXNnc3RyICLOtyDOsc69zrHPhs6/z4HOrCDOtM61zr0gzrXOr869zrHOuSDOtM6tzr3PhM+Bzr86ICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTIyMQorbXNnaWQgInBhdGhzIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgz4fPgc6uz4POtyDOtM65zrHOtM+Bzr/OvM+Ozr0gzrzOtSDPhM63zr0gzrHOu867zrHOs86uIM66zrvOrM60z4nOvSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyMjQgYnVpbHRpbi9jaGVja291dC5jOjEyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKK21zZ3N0ciAizrTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM6uIM63IM+Hz4HOrs+Dzrcgz4TOv8+FICclcycgzrzOtSDPhM63zr0gzrHOu867zrHOs86uIM66zrvOrM60z4nOvSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyMzIgYnVpbHRpbi9jaGVja291dC5jOjEyMzUgYnVpbHRpbi9jaGVja291dC5jOjEyNDAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAnJXMnIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgz4fPgc6uz4POtyDPhM6/z4UgJyVzJyDOvM61IM+Ezr8gJyVzJyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN3aXRjaCBicmFuY2ggdG8gYSBub24tY29tbWl0ICclcyciCittc2dzdHIgIs6UzrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDOsc67zrvOsc6zzq4gz4TOv8+FIM66zrvOrM60zr/PhSDPg8+Ezr8gJyVzJyDPgM6/z4UgzrTOtc69IM61zq/Ovc6xzrkgz4XPgM6/zrLOv867zq4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjgxIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjgzIGJ1aWx0aW4vY2xvbmUuYzoxMjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY5IGJ1aWx0aW4vcmVtb3RlLmM6MTcxIGJ1aWx0aW4vd29ya3RyZWUuYzo0ODkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTEKK21zZ2lkICJicmFuY2giCittc2dzdHIgIs66zrvOrM60zr/PgiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyODIKK21zZ2lkICJjcmVhdGUgYW5kIGNoZWNrb3V0IGEgbmV3IGJyYW5jaCIKK21zZ3N0ciAizr3OsSDOtM63zrzOuc6/z4XPgc6zzrfOuM61zq8gzrrOsc65IM69zrEgzrXOvs6xz4fOuM61zq8gzq3Ovc6xz4Igzr3Orc6/z4IgzrrOu86szrTOv8+CIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTI4NAorbXNnaWQgImNyZWF0ZS9yZXNldCBhbmQgY2hlY2tvdXQgYSBicmFuY2giCittc2dzdHIgIs69zrEgzrTOt868zrnOv8+Fz4HOs863zrjOtc6vL861z4DOsc69zrHPhs61z4HOuM61zq8gzrrOsc65IM69zrEgzrXOvs6xz4fOuM61zq8gzq3Ovc6xz4IgzrrOu86szrTOv8+CIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTI4NQorbXNnaWQgImNyZWF0ZSByZWZsb2cgZm9yIG5ldyBicmFuY2giCittc2dzdHIgIs69zrEgzrTOt868zrnOv8+Fz4HOs863zrjOtc6vIHJlZmxvZyDOs865zrEgzr3Orc6/IM66zrvOrM60zr8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjg2IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTMKK21zZ2lkICJkZXRhY2ggSEVBRCBhdCBuYW1lZCBjb21taXQiCittc2dzdHIgIs69zrEgzrPOr869zrXOuSDOsc+Azr/Pg8+Nzr3OtM61z4POtyDPhM6/z4UgSEVBRCDPg8+EzrfOvSDOus6xz4TOv869zr/OvM6xz4POvM6tzr3OtyDPhc+Azr/Oss6/zrvOriIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyODcKK21zZ2lkICJzZXQgdXBzdHJlYW0gaW5mbyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAizr3OsSDOv8+BzrnPg8+Ezr/Pjc69IM6/zrkgz4DOu863z4HOv8+Gzr/Pgc6vzrXPgiDPhM6/z4Ugz4DPgc6/z4Igz4TOsSDPgM6szr3PiSDOs865zrEgz4TOv869IM69zq3OvyDOus67zqzOtM6/IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTI4OQorbXNnaWQgIm5ldy1icmFuY2giCittc2dzdHIgIs69zq3Ov8+CIM66zrvOrM60zr/PgiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyODkKK21zZ2lkICJuZXcgdW5wYXJlbnRlZCBicmFuY2giCittc2dzdHIgIs69zq3Ov8+CIM66zrvOrM60zr/PgiDPh8+Jz4HOr8+CIM6zzr/Ovc6tzrEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjkxCittc2dpZCAiY2hlY2tvdXQgb3VyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgorbXNnc3RyICLOvc6xIM6zzq/Ovc61zrkgzrXOvs6xzrPPic6zzq4gz4TOt8+CIM60zrnOus6uz4IgzrzOsc+CIM6tzrrOtM6/z4POt8+CIM6zzrnOsSDPhM6xIM68zrcgz4PPhc6zz4fPic69zrXPhc68zq3Ovc6xIM6xz4HPh861zq/OsSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyOTQKK21zZ2lkICJjaGVja291dCB0aGVpciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKK21zZ3N0ciAizr3OsSDOs86vzr3Otc65IM61zr7Osc6zz4nOs86uIM+EzrfPgiDOtM65zrrOrs+CIM+Ezr/Phc+CIM6tzrrOtM6/z4POt8+CIM6zzrnOsSDPhM6xIM68zrcgz4PPhc6zz4fPic69zrXPhc68zq3Ovc6xIM6xz4HPh861zq/OsSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyOTYKK21zZ2lkICJmb3JjZSBjaGVja291dCAodGhyb3cgYXdheSBsb2NhbCBtb2RpZmljYXRpb25zKSIKK21zZ3N0ciAizr3OsSDOs86vzr3Otc65IM6xzr3Osc6zzrrOsc+Dz4TOuc66zq4gzrXOvs6xzrPPic6zzq4gKM6xz4DPjM+Bz4HOuc+Izrcgz4TPic69IM+Ezr/PgM65zrrPjs69IM+Ez4HOv8+Azr/PgM6/zrnOrs+DzrXPic69KSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyOTgKK21zZ2lkICJwZXJmb3JtIGEgMy13YXkgbWVyZ2Ugd2l0aCB0aGUgbmV3IGJyYW5jaCIKK21zZ3N0ciAizr3OsSDOs86vzr3Otc65IM+Ez4HOuc+AzrvOriDPg8+FzrPPh8+Ozr3Otc+Fz4POtyDOvM61IM+Ezr/OvSDOvc6tzr8gzrrOu86szrTOvyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMDAgYnVpbHRpbi9tZXJnZS5jOjI3NgorbXNnaWQgInVwZGF0ZSBpZ25vcmVkIGZpbGVzIChkZWZhdWx0KSIKK21zZ3N0ciAizr3OsSDOtc69zrfOvM61z4HPic64zr/Pjc69IM+EzrEgzrHPgc+HzrXOr86xIM+Azr/PhSDPgM6xz4HOsc6yzrvOrc+Azr/Ovc+EzrHOuSAoz4DPgc6/zrXPgM65zrvOv86zzq4pIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMwMiBidWlsdGluL2xvZy5jOjE1ODYgcGFyc2Utb3B0aW9ucy5oOjI3MgorbXNnaWQgInN0eWxlIgorbXNnc3RyICLOvM6/z4HPhs6uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMwMworbXNnaWQgImNvbmZsaWN0IHN0eWxlIChtZXJnZSBvciBkaWZmMykiCittc2dzdHIgIs68zr/Pgc+Gzq4gz4PPhc6zzrrPgc6/z43Pg861z4nOvSAobWVyZ2Ugzq4gZGlmZjMpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMwNgorbXNnaWQgImRvIG5vdCBsaW1pdCBwYXRoc3BlY3MgdG8gc3BhcnNlIGVudHJpZXMgb25seSIKK21zZ3N0ciAiIgorIs69zrEgzrzOtyDOs86vzr3Otc65IM+AzrXPgc65zr/Pgc65z4POvM+Mz4Igz4TPic69IM+AzrXPgc65zrPPgc6xz4bPjs69IM60zrnOsc60z4HOv868z47OvSDPg861IM68z4zOvc6/IM60zrnOrM+Dz4DOsc+Bz4TOsSDPg8+Ezr/Ouc+HzrXOr86xIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMwOAorbXNnaWQgImRvIG5vdCBzZWNvbmQgZ3Vlc3MgJ2dpdCBjaGVja291dCA8bm8tc3VjaC1icmFuY2g+JyIKK21zZ3N0ciAiIgorIs69zrEgzrzOtyDOs86vzr3Otc65IM60zrXPjc+EzrXPgc63IM6xz4DPjM+AzrXOuc+BzrEgzrXPgc68zrfOvc61zq/Osc+CICdnaXQgY2hlY2tvdXQgPM66zrvOrM60zr/PgiDPgM6/z4UgzrTOtc69ICIKKyLPhc+AzqzPgc+HzrXOuT4nIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMxMAorbXNnaWQgImRvIG5vdCBjaGVjayBpZiBhbm90aGVyIHdvcmt0cmVlIGlzIGhvbGRpbmcgdGhlIGdpdmVuIHJlZiIKK21zZ3N0ciAiIgorIs69zrEgzrzOtyDOs86vzr3Otc65IM6tzrvOtc6zz4fOv8+CIM6xzr0gzrrOrM+Azr/Ouc6/IM6szrvOu86/IM60zq3Ovc+Ez4HOvyDOtc+BzrPOsc+Dzq/Osc+CIM66z4HOsc+Ezqwgz4TOvyByZWYgz4DOv8+FIM60z4zOuM63zrrOtSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMTQgYnVpbHRpbi9jbG9uZS5jOjg3IGJ1aWx0aW4vZmV0Y2guYzoxNDEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzMgYnVpbHRpbi9wdWxsLmM6MTMwIGJ1aWx0aW4vcHVzaC5jOjU3NQorIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzQKK21zZ2lkICJmb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCittc2dzdHIgIs69zrEgzrPOr869zrXOuSDOsc69zrHOs866zrHPg8+EzrnOus6sIM6xzr3Osc+Gzr/Pgc6sIM+EzrfPgiDPgM+Bzr/PjM60zr/PhSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNDUKK21zZ2lkICItYiwgLUIgYW5kIC0tb3JwaGFuIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIs+EzrEgLWIsIC1CIM66zrHOuSAtLW9ycGhhbiDOtc6vzr3Osc65IM6xzrvOu863zrvOv86xz4DOv866zrvOtc65z4zOvM61zr3OsSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjIKK21zZ2lkICItLXRyYWNrIG5lZWRzIGEgYnJhbmNoIG5hbWUiCittc2dzdHIgIs+Ezr8gLS10cmFjayDPh8+BzrXOuc6szrbOtc+EzrHOuSDOrc69zrEgz4zOvc6/zrzOsSDOus67zqzOtM6/z4UiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY3Cittc2dpZCAibWlzc2luZyBicmFuY2ggbmFtZTsgdHJ5IC1iIgorbXNnc3RyICLOu861zq/PgM61zrkgz4TOvyDPjM69zr/OvM6xIM66zrvOrM60zr/PhSwgzrTOv866zrnOvM6sz4PPhM61IC1iIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQwNAorbXNnaWQgImludmFsaWQgcGF0aCBzcGVjaWZpY2F0aW9uIgorbXNnc3RyICLOvM63IM6tzrPOus+Fz4HOtyDPgM61z4HOuc6zz4HOsc+Gzq4gzrTOuc6xzrTPgc6/zrzOrs+CIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQxMQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIGNvbW1pdCBhbmQgYSBicmFuY2ggJyVzJyBjYW5ub3QgYmUgY3JlYXRlZCBmcm9tIGl0IgorbXNnc3RyICIiCisiz4TOvyAnJXMnIM60zrXOvSDOtc6vzr3Osc65IM+Fz4DOv86yzr/Ou86uIM66zrHOuSDOtM61IM6zzq/Ovc61z4TOsc65IM69zrEgzrTOt868zrnOv8+Fz4HOs863zrjOtc6vIM66zrvOrM60zr/PgiAnJXMnIM6xz4DPjCDOsc+Fz4TPjCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCAnJXMnIgorbXNnc3RyICJnaXQgY2hlY2tvdXQ6IM+Ezr8gLS1kZXRhY2ggzrTOtSDOtM6tz4fOtc+EzrHOuSDPjM+BzrnPg868zrEgzrTOuc6xzrTPgc6/zrzOrs+CICclcyciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDE5Cittc2dpZCAiIgorImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIGFuZCAtLW1lcmdlIGFyZSBpbmNvbXBhdGlibGUgd2hlblxuIgorImNoZWNraW5nIG91dCBvZiB0aGUgaW5kZXguIgorbXNnc3RyICIiCisiZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgzrrOsc65IC0tbWVyZ2UgzrXOr869zrHOuSDOsc+Dz43OvM6yzrHPhM6xIM+Mz4TOsc69XG4iCisizrPOr869zrXPhM6xzrkgzrXOvs6xzrPPic6zzq4gzrHPgM+MIM+Ezr8gzrXPhc+BzrXPhM6uz4HOuc6/LiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiclcycgbWF0Y2hlZCBtb3JlIHRoYW4gb25lIHJlbW90ZSB0cmFja2luZyBicmFuY2guXG4iCisiV2UgZm91bmQgJWQgcmVtb3RlcyB3aXRoIGEgcmVmZXJlbmNlIHRoYXQgbWF0Y2hlZC4gU28gd2UgZmVsbCBiYWNrXG4iCisib24gdHJ5aW5nIHRvIHJlc29sdmUgdGhlIGFyZ3VtZW50IGFzIGEgcGF0aCwgYnV0IGZhaWxlZCB0aGVyZSB0b28hXG4iCisiXG4iCisiSWYgeW91IG1lYW50IHRvIGNoZWNrIG91dCBhIHJlbW90ZSB0cmFja2luZyBicmFuY2ggb24sIGUuZy4gJ29yaWdpbicsXG4iCisieW91IGNhbiBkbyBzbyBieSBmdWxseSBxdWFsaWZ5aW5nIHRoZSBuYW1lIHdpdGggdGhlIC0tdHJhY2sgb3B0aW9uOlxuIgorIlxuIgorIiAgICBnaXQgY2hlY2tvdXQgLS10cmFjayBvcmlnaW4vPG5hbWU+XG4iCisiXG4iCisiSWYgeW91J2QgbGlrZSB0byBhbHdheXMgaGF2ZSBjaGVja291dHMgb2YgYW4gYW1iaWd1b3VzIDxuYW1lPiBwcmVmZXJcbiIKKyJvbmUgcmVtb3RlLCBlLmcuIHRoZSAnb3JpZ2luJyByZW1vdGUsIGNvbnNpZGVyIHNldHRpbmdcbiIKKyJjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbiBpbiB5b3VyIGNvbmZpZy4iCittc2dzdHIgIiIKKyLOpM6/ICclcycgz4TOsc6vz4HOuc6xzr7OtSDOvM61IM+AzrXPgc65z4PPg8+Mz4TOtc+Bzr/Phc+CIM6xz4DPjCDOrc69zrHOvSDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3Ov8+Fz4IgIgorIs+AzrHPgc6xzrrOv867zr/Phc64zr/Pjc68zrXOvc6/z4XPgiDOus67zqzOtM6/z4XPgi5cbiIKKyLOks+Bzq7Ous6xzrzOtSAlZCDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3Ov8+Fz4IgzrXOvs+Fz4DOt8+BzrXPhM63z4TOrc+CIM68zrUgzrHOvc6xz4bOv8+Bzqwgz4DOv8+FIM+EzrHOuc+BzrnOrM62zrXOuS4gzp/PgM+Mz4TOtSAiCisizq3Os865zr3OtSDOtc69zrHOu867zrHOus+EzrnOus6sXG4iCisizrHPgM+Mz4DOtc65z4HOsSDPhM6xz43PhM65z4POt8+CIM+Ezr/PhSDOv8+Bzq/Pg868zrHPhM6/z4IgzrzOtSDOtM65zrHOtM+Bzr/OvM6uLCDOsc67zrvOrCDOsc+Azq3PhM+Fz4fOtSDOus6xzrkgzrHPhc+Ezq4hXG4iCisiXG4iCisizpHOvSDOuM6tzrvOsc+EzrUgzr3OsSDOtc6+zrHOs86szrPOtc+EzrUgzq3Ovc6xzr0gzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zr8gz4DOsc+BzrHOus6/zrvOv8+FzrjOv8+NzrzOtc69zr8gzrrOu86szrTOvyDPgC7Phy4gz4PPhM6/ICIKKyInb3JpZ2luJyxcbiIKKyLOvM+Azr/Pgc61zq/PhM61IM69zrEgz4TOvyDOus6szr3Otc+EzrUgzr/Pgc6vzrbOv869z4TOsc+CIM6/zrvOv86zz4HOrM+Gz4nPgiDPhM6/IM+Mzr3Ov868zrEgzrzOtSDPhM63zr0gzrXPgM65zrvOv86zzq4gLS10cmFjazpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZWNrb3V0IC0tdHJhY2sgb3JpZ2luLzzPjM69zr/OvM6xPlxuIgorIlxuIgorIs6Rzr0gzrjOsSDOuM6tzrvOsc+EzrUgzr/OuSDOtc6+zrHOs8+JzrPOrc+CIM6xz4DPjCDOrc69zrEgzrHOvM+Gzq/Pg863zrzOvyA8z4zOvc6/zrzOsT4gzr3OsSDPgM+Bzr/PhM65zrzOv8+Nzr0gz4DOrM69z4TOsVxuIgorIs6tzr3Osc69IM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/IM61zr7Phc+AzrfPgc61z4TOt8+Ezq4sIM+ALs+HLiDPhM6/IM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/ICdvcmlnaW4nLCDPg866zrXPhs+EzrXOr8+EzrUgzr3OsSAiCisizr/Pgc6vz4POtc+EzrVcbiIKKyJjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbiDPg8+EzrnPgiDPgc+FzrjOvM6vz4POtc65z4Igz4POsc+CLiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjI4Cittc2dpZCAiIgorImdpdCBjbGVhbiBbLWRdIFstZl0gWy1pXSBbLW5dIFstcV0gWy1lIDxwYXR0ZXJuPl0gWy14IHwgLVhdIFstLV0gPHBhdGhzPi4uLiIKK21zZ3N0ciAiIgorImdpdCBjbGVhbiBbLWRdIFstZl0gWy1pXSBbLW5dIFstcV0gWy1lIDzOvM6/z4TOr86yzr8+XSBbLXggfCAtWF0gWy0tXSAiCisiPM60zrnOsc60z4HOv868zq3Pgj4uLi4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMgorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlc1xuIgorbXNnc3RyICLOkc+GzrHOr8+BzrXPg863IM+Ezr/PhSAlc1xuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlICVzXG4iCittc2dzdHIgIs6YzrEgzrHPhs6xzrnPgc6/z43Pg861IM+Ezr8gJXNcbiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjM0CisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXBwaW5nIHJlcG9zaXRvcnkgJXNcbiIKK21zZ3N0ciAizqDPgc6/z4PPgM61z4HOvc6sz4TOsc65IM+Ezr8gzrHPgM6/zrjOtc+Ezq7Pgc65zr8gJXNcbiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHNraXAgcmVwb3NpdG9yeSAlc1xuIgorbXNnc3RyICLOmM6xIM+Az4HOv8+Dz4DOtc+Bzr3Ov8+Nz4POtSDPhM6/IM6xz4DOv864zrXPhM6uz4HOuc6/ICVzXG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzoyOTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlByb21wdCBoZWxwOlxuIgorIjEgICAgICAgICAgLSBzZWxlY3QgYSBudW1iZXJlZCBpdGVtXG4iCisiZm9vICAgICAgICAtIHNlbGVjdCBpdGVtIGJhc2VkIG9uIHVuaXF1ZSBwcmVmaXhcbiIKKyIgICAgICAgICAgIC0gKGVtcHR5KSBzZWxlY3Qgbm90aGluZ1xuIgorbXNnc3RyICIiCisizpLOv86uzrjOtc65zrE6XG4iCisiMSAgICAgICAgICAtIM61z4DOuc67zr/Os86uIM6xz4HOuc64zrzOt868zq3Ovc6/z4Ugz4PPhM6/zrnPh861zq/Ov8+FXG4iCisiZm9vICAgICAgICAtIM61z4DOuc67zr/Os86uIM+Dz4TOv865z4fOtc6vzr/PhSDOvM61IM6yzqzPg863IM68zr/Ovc6xzrTOuc66z4wgz4DPgc+MzrjOtc68zrFcbiIKKyIgICAgICAgICAgIC0gKM66zrXOvc+MKSDOvM63IM61z4DOuc67zr/Os86uIM66zrHOvc61zr3PjM+CXG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMDMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlByb21wdCBoZWxwOlxuIgorIjEgICAgICAgICAgLSBzZWxlY3QgYSBzaW5nbGUgaXRlbVxuIgorIjMtNSAgICAgICAgLSBzZWxlY3QgYSByYW5nZSBvZiBpdGVtc1xuIgorIjItMyw2LTkgICAgLSBzZWxlY3QgbXVsdGlwbGUgcmFuZ2VzXG4iCisiZm9vICAgICAgICAtIHNlbGVjdCBpdGVtIGJhc2VkIG9uIHVuaXF1ZSBwcmVmaXhcbiIKKyItLi4uICAgICAgIC0gdW5zZWxlY3Qgc3BlY2lmaWVkIGl0ZW1zXG4iCisiKiAgICAgICAgICAtIGNob29zZSBhbGwgaXRlbXNcbiIKKyIgICAgICAgICAgIC0gKGVtcHR5KSBmaW5pc2ggc2VsZWN0aW5nXG4iCittc2dzdHIgIiIKKyLOks6/zq7OuM61zrnOsTpcbiIKKyIxICAgICAgICAgIC0gzrXPgM65zrvOv86zzq4gzrXOvc+Mz4IgzrzPjM69zr8gz4PPhM6/zrnPh861zq/Ov8+FXG4iCisiMy01ICAgICAgICAtIM61z4DOuc67zr/Os86uIM61z43Pgc6/z4XPgiDPg8+Ezr/Ouc+HzrXOr8+Jzr1cbiIKKyIyLTMsNi05ICAgIC0gzrXPgM65zrvOv86zzq4gz4DOv867zrvOsc+AzrvPjs69IM61z4XPgc+Ozr0gz4PPhM6/zrnPh861zq/Pic69XG4iCisiZm9vICAgICAgICAtIM61z4DOuc67zr/Os86uIM+Dz4TOv865z4fOtc6vzr/PhSDOvM61IM6yzqzPg863IM68zr/Ovc6xzrTOuc66z4wgz4DPgc+MzrjOtc68zrFcbiIKKyItLi4uICAgICAgIC0gzrHPgM6/zrXPgM65zrvOv86zzq4gz4TPic69IM61zr7Ors+CIM+Dz4TOv865z4fOtc6vz4nOvVxuIgorIiogICAgICAgICAgLSDOtc+AzrnOu86/zrPOriDPjM67z4nOvSDPhM+Jzr0gz4PPhM6/zrnPh861zq/Pic69XG4iCisiICAgICAgICAgICAtICjOus61zr3PjCkgzr/Ou86/zrrOu86uz4HPic+DzrcgzrXPgM65zrvOv86zzq7PglxuIgorCisjOiBidWlsdGluL2NsZWFuLmM6NTE5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTU0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU1OQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiSHVoICglcyk/XG4iCittc2dzdHIgIs6fz4HOr8+Dz4TOtSAoJXMpO1xuIgorCisjOiBidWlsdGluL2NsZWFuLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIklucHV0IGlnbm9yZSBwYXR0ZXJucz4+ICIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NsZWFuLmM6Njk4CisjLCBjLWZvcm1hdAorbXNnaWQgIldBUk5JTkc6IENhbm5vdCBmaW5kIGl0ZW1zIG1hdGNoZWQgYnk6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3MTkKK21zZ2lkICJTZWxlY3QgaXRlbXMgdG8gZGVsZXRlIgorbXNnc3RyICIiCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8ga2VlcCBbeS9OXSBhcyBpcworIzogYnVpbHRpbi9jbGVhbi5jOjc2MAorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmUgJXMgW3kvTl0/ICIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NsZWFuLmM6Nzg1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcxNworIywgYy1mb3JtYXQKK21zZ2lkICJCeWUuXG4iCittc2dzdHIgIs6Rzr3PhM6vzr8uXG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3OTMKK21zZ2lkICIiCisiY2xlYW4gICAgICAgICAgICAgICAtIHN0YXJ0IGNsZWFuaW5nXG4iCisiZmlsdGVyIGJ5IHBhdHRlcm4gICAtIGV4Y2x1ZGUgaXRlbXMgZnJvbSBkZWxldGlvblxuIgorInNlbGVjdCBieSBudW1iZXJzICAgLSBzZWxlY3QgaXRlbXMgdG8gYmUgZGVsZXRlZCBieSBudW1iZXJzXG4iCisiYXNrIGVhY2ggICAgICAgICAgICAtIGNvbmZpcm0gZWFjaCBkZWxldGlvbiAobGlrZSBcInJtIC1pXCIpXG4iCisicXVpdCAgICAgICAgICAgICAgICAtIHN0b3AgY2xlYW5pbmdcbiIKKyJoZWxwICAgICAgICAgICAgICAgIC0gdGhpcyBzY3JlZW5cbiIKKyI/ICAgICAgICAgICAgICAgICAgIC0gaGVscCBmb3IgcHJvbXB0IHNlbGVjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NsZWFuLmM6ODIwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MworbXNnaWQgIioqKiBDb21tYW5kcyAqKioiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjgyMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTAKK21zZ2lkICJXaGF0IG5vdyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NsZWFuLmM6ODI5Cittc2dpZCAiV291bGQgcmVtb3ZlIHRoZSBmb2xsb3dpbmcgaXRlbToiCittc2dpZF9wbHVyYWwgIldvdWxkIHJlbW92ZSB0aGUgZm9sbG93aW5nIGl0ZW1zOiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo4NDUKK21zZ2lkICJObyBtb3JlIGZpbGVzIHRvIGNsZWFuLCBleGl0aW5nLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NsZWFuLmM6OTA3Cittc2dpZCAiZG8gbm90IHByaW50IG5hbWVzIG9mIGZpbGVzIHJlbW92ZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkwOQorbXNnaWQgImZvcmNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTAKK21zZ2lkICJpbnRlcmFjdGl2ZSBjbGVhbmluZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NsZWFuLmM6OTEyCittc2dpZCAicmVtb3ZlIHdob2xlIGRpcmVjdG9yaWVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTMgYnVpbHRpbi9kZXNjcmliZS5jOjU0NiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ4CisjOiBidWlsdGluL2dyZXAuYzo4OTcgYnVpbHRpbi9sb2cuYzoxNjcgYnVpbHRpbi9sb2cuYzoxNjkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTcgYnVpbHRpbi9uYW1lLXJldi5jOjQxNSBidWlsdGluL25hbWUtcmV2LmM6NDE3CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc4Cittc2dpZCAicGF0dGVybiIKK21zZ3N0ciAizrzOv8+Ezq/Oss6/IgorCisjOiBidWlsdGluL2NsZWFuLmM6OTE0Cittc2dpZCAiYWRkIDxwYXR0ZXJuPiB0byBpZ25vcmUgcnVsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkxNQorbXNnaWQgInJlbW92ZSBpZ25vcmVkIGZpbGVzLCB0b28iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkxNworbXNnaWQgInJlbW92ZSBvbmx5IGlnbm9yZWQgZmlsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkzNQorbXNnaWQgIi14IGFuZCAtWCBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NsZWFuLmM6OTM5Cittc2dpZCAiIgorImNsZWFuLnJlcXVpcmVGb3JjZSBzZXQgdG8gdHJ1ZSBhbmQgbmVpdGhlciAtaSwgLW4sIG5vciAtZiBnaXZlbjsgcmVmdXNpbmcgdG8gIgorImNsZWFuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5NDIKK21zZ2lkICIiCisiY2xlYW4ucmVxdWlyZUZvcmNlIGRlZmF1bHRzIHRvIHRydWUgYW5kIG5laXRoZXIgLWksIC1uLCBub3IgLWYgZ2l2ZW47ICIKKyJyZWZ1c2luZyB0byBjbGVhbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Nsb25lLmM6NDQKK21zZ2lkICJnaXQgY2xvbmUgWzxvcHRpb25zPl0gWy0tXSA8cmVwbz4gWzxkaXI+XSIKK21zZ3N0ciAiZ2l0IGNsb25lIFs8zrXPgM65zrvOv86zzq3Pgj5dIFstLV0gPM6xz4DOv864zrXPhM6uz4HOuc6/PiBbPM+GzqzOus61zrvOv8+CPl0iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4OQorbXNnaWQgImRvbid0IGNyZWF0ZSBhIGNoZWNrb3V0IgorbXNnc3RyICLOvc6xIM68zrcgzrTOt868zrnOv8+Fz4HOs863zrjOtc6vIM61zr7Osc6zz4nOs86uIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTAgYnVpbHRpbi9jbG9uZS5jOjkyIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4MQorbXNnaWQgImNyZWF0ZSBhIGJhcmUgcmVwb3NpdG9yeSIKK21zZ3N0ciAizr3OsSDOtM63zrzOuc6/z4XPgc6zzrfOuM61zq8gzq3Ovc6xIM6zz4XOvM69z4wgzrHPgM6/zrjOtc+Ezq7Pgc65zr8iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NAorbXNnaWQgImNyZWF0ZSBhIG1pcnJvciByZXBvc2l0b3J5IChpbXBsaWVzIGJhcmUpIgorbXNnc3RyICLOvc6xIM60zrfOvM65zr/Phc+BzrPOt864zrXOryDOsc+Azr/OuM61z4TOrs+BzrnOvyDOsc69z4TOr86zz4HOsc+Gzr8gKM61zr3Ovc6/zrXOr8+EzrHOuSDOs8+FzrzOvc+MKSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk2Cittc2dpZCAidG8gY2xvbmUgZnJvbSBhIGxvY2FsIHJlcG9zaXRvcnkiCittc2dzdHIgIs6zzrnOsSDOus67z4nOvc6/z4DOv86vzrfPg863IM6xz4DPjCDPhM6/z4DOuc66z4wgzrHPgM6/zrjOtc+Ezq7Pgc65zr8iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5OAorbXNnaWQgImRvbid0IHVzZSBsb2NhbCBoYXJkbGlua3MsIGFsd2F5cyBjb3B5IgorbXNnc3RyICLOvc6xIM68zrcgzrPOr869zrXOuSDPh8+Bzq7Pg863IM+Ezr/PgM65zrrPjs69IGhhcmRsaW5rcywgzr3OsSDOs86vzr3Otc+EzrHOuSDPgM6szr3PhM6xIM6xzr3PhM65zrPPgc6xz4bOriIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwMAorbXNnaWQgInNldHVwIGFzIHNoYXJlZCByZXBvc2l0b3J5IgorbXNnc3RyICLOsc+Bz4fOuc66zr/PgM6/zq/Ot8+Dzrcgz4nPgiDOsc+Azr/OuM61z4TOrs+BzrnOvyDOus6/zrnOvc6uz4Igz4fPgc6uz4POt8+CIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTAyIGJ1aWx0aW4vY2xvbmUuYzoxMDYKK21zZ2lkICJwYXRoc3BlYyIKK21zZ3N0ciAiz4DOtc+BzrnOs8+BzrHPhs6uIM60zrnOsc60z4HOv868zq7PgiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwMiBidWlsdGluL2Nsb25lLmM6MTA2Cittc2dpZCAiaW5pdGlhbGl6ZSBzdWJtb2R1bGVzIGluIHRoZSBjbG9uZSIKK21zZ3N0ciAizrHPgc+HzrnOus6/z4DOv86vzrfPg863IM+Fz4DOv861zr3Ov8+Ezq7PhM+Jzr0gzrzOrc+DzrEgz4PPhM6/zr0gzrrOu8+Ozr3OvyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwOQorbXNnaWQgIm51bWJlciBvZiBzdWJtb2R1bGVzIGNsb25lZCBpbiBwYXJhbGxlbCIKK21zZ3N0ciAizrHPgc65zrjOvM+Mz4Igz4XPgM6/zrXOvc6/z4TOrs+Ez4nOvSDPgM+Bzr/PgiDPgM6xz4HOrM67zrvOt867zrcgzrrOu8+Jzr3Ov8+Azr/Or863z4POtyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExMCBidWlsdGluL2luaXQtZGIuYzo0NzgKK21zZ2lkICJ0ZW1wbGF0ZS1kaXJlY3RvcnkiCittc2dzdHIgIs+GzqzOus61zrvOv8+CIM+Az4HOv8+Ez43PgM+Jzr0iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTEgYnVpbHRpbi9pbml0LWRiLmM6NDc5Cittc2dpZCAiZGlyZWN0b3J5IGZyb20gd2hpY2ggdGVtcGxhdGVzIHdpbGwgYmUgdXNlZCIKK21zZ3N0ciAiz4bOrM66zrXOu86/z4IgzrHPgM+MIM+Ezr/OvSDOv8+Azr/Or86/IM64zrEgz4fPgc63z4POuc68zr/PgM6/zrnOt864zr/Pjc69z4TOsc65IM+Az4HPjM+Ez4XPgM6xIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTEzIGJ1aWx0aW4vY2xvbmUuYzoxMTUgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODYwCittc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkiCittc2dzdHIgIs6xz4DOv864zrXPhM6uz4HOuc6/IM6xzr3Osc+Gzr/Pgc6sz4IiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzODEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODYyCittc2dpZCAidXNlIC0tcmVmZXJlbmNlIG9ubHkgd2hpbGUgY2xvbmluZyIKK21zZ3N0ciAizr3OsSDOs86vzr3Otc65IM+Hz4HOrs+Dzrcgz4TOv8+FIC0tcmVmZXJlbmNlIM68z4zOvc6/IM66zrHPhM6sIM+EzrcgzrTOuc6sz4HOus61zrnOsSDOus67z4nOvc6/z4DOv86vzrfPg863z4IiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTggYnVpbHRpbi9jb2x1bW4uYzoyNyBidWlsdGluL21lcmdlLWZpbGUuYzo0NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAzIGJ1aWx0aW4vcmVwYWNrLmM6MzI5Cittc2dpZCAibmFtZSIKK21zZ3N0ciAiz4zOvc6/zrzOsSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExOQorbXNnaWQgInVzZSA8bmFtZT4gaW5zdGVhZCBvZiAnb3JpZ2luJyB0byB0cmFjayB1cHN0cmVhbSIKK21zZ3N0ciAiIgorIs69zrEgz4fPgc63z4POuc68zr/PgM6/zrnOt864zrXOryDPhM6/IDzPjM69zr/OvM6xPiDOsc69z4TOryDOs865zrEgJ29yaWdpbicgzrPOuc6xIM+EzrfOvSDPgM6xz4HOsc66zr/Ou86/z43OuM63z4POtyDPhM6/z4UgIgorIs+Az4HOv8+CIM+EzrEgz4DOrM69z4kiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjEKK21zZ2lkICJjaGVja291dCA8YnJhbmNoPiBpbnN0ZWFkIG9mIHRoZSByZW1vdGUncyBIRUFEIgorbXNnc3RyICLOvc6xIM61zr7Osc+HzrjOtc6vIM6/IDzOus67zqzOtM6/z4I+IM6xzr3PhM6vIM6zzrnOsSDPhM6/IEhFQUQgz4TOv8+FIM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/z4UiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjMKK21zZ2lkICJwYXRoIHRvIGdpdC11cGxvYWQtcGFjayBvbiB0aGUgcmVtb3RlIgorbXNnc3RyICLOtM65zrHOtM+Bzr/OvM6uIM6zzrnOsSDPhM6/IGdpdC11cGxvYWQtcGFjayDPg8+Ezr/OvSDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3OvyDOtc6+z4XPgM63z4HOtc+EzrfPhM6uIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI0IGJ1aWx0aW4vZmV0Y2guYzoxNDIgYnVpbHRpbi9ncmVwLmM6ODM2CisjOiBidWlsdGluL3B1bGwuYzoyMTgKK21zZ2lkICJkZXB0aCIKK21zZ3N0ciAizrLOrM64zr/PgiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEyNQorbXNnaWQgImNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgb2YgdGhhdCBkZXB0aCIKK21zZ3N0ciAizr3OsSDOtM63zrzOuc6/z4XPgc6zzrfOuM61zq8gz4HOt8+Hz4zPgiDOus67z47Ovc6/z4IgzrzOtSDOsc+Fz4TPjCDPhM6/IM6yzqzOuM6/z4IiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjYgYnVpbHRpbi9mZXRjaC5jOjE0NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTIKK21zZ2lkICJ0aW1lIgorbXNnc3RyICLPh8+Bz4zOvc6/z4IiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjcKK21zZ2lkICJjcmVhdGUgYSBzaGFsbG93IGNsb25lIHNpbmNlIGEgc3BlY2lmaWMgdGltZSIKK21zZ3N0ciAizr3OsSDOtM63zrzOuc6/z4XPgc6zzrfOuM61zq8gz4HOt8+Hz4zPgiDOus67z47Ovc6/z4IgzrHPgM+MIM66zqzPgM6/zrnOsSDPg8+FzrPOus61zrrPgc65zrzOrc69zrcgz4PPhM65zrPOvM6uIM66zrHOuSDOvM61z4TOrCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEyOCBidWlsdGluL2ZldGNoLmM6MTQ2IGJ1aWx0aW4vZmV0Y2guYzoxNjkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTAzOQorbXNnaWQgInJldmlzaW9uIgorbXNnc3RyICLOrc66zrTOv8+DzrciCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjkgYnVpbHRpbi9mZXRjaC5jOjE0NworbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgY2xvbmUsIGV4Y2x1ZGluZyByZXYiCittc2dzdHIgIs69zrEgzrPOr869zrXOuSDOtc68zrLOrM64z4XOvc+Dzrcgz4TOv8+FIM65z4PPhM6/z4HOuc66zr/PjSDPhM6/z4Ugz4HOt8+Hzr/PjSDOus67z47Ovc6/z4UsIM61zr7Osc65z4HPjs69z4TOsc+CIM+Ezr8gcmV2IgorCisjOiBidWlsdGluL2Nsb25lLmM6MTMxCittc2dpZCAiY2xvbmUgb25seSBvbmUgYnJhbmNoLCBIRUFEIG9yIC0tYnJhbmNoIgorbXNnc3RyICLOvc6xIM66zrvPic69zr/PgM6/zrnOt864zrXOryDOvM+Mzr3OvyDOrc69zrHPgiDOus67zqzOtM6/z4IsIM+Ezr8gSEVBRCDOriAtLWJyYW5jaCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEzMworbXNnaWQgImRvbid0IGNsb25lIGFueSB0YWdzLCBhbmQgbWFrZSBsYXRlciBmZXRjaGVzIG5vdCB0byBmb2xsb3cgdGhlbSIKK21zZ3N0ciAiIgorIs69zrEgzrzOt869IM66zrvPic69zr/PgM6/zrnOt864zrXOryDOus6xzrzOr86xIM61z4TOuc66zq3PhM6xLCDOus6xzrkgzr/OuSDOvM61zrvOu86/zr3PhM65zrrOrc+CIM6xzr3Osc66z4TOrs+DzrXOuc+CIM69zrEgzrzOt869IM+EzrnPgiAiCisizrHOus6/zrvOv8+FzrjOv8+Nzr0iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzUKK21zZ2lkICJhbnkgY2xvbmVkIHN1Ym1vZHVsZXMgd2lsbCBiZSBzaGFsbG93IgorbXNnc3RyICLPjM67zrXPgiDOv865IM66zrvPic69zr/PgM6/zrnOt868zq3Ovc61z4Igz4XPgM6/zrXOvc+Mz4TOt8+EzrXPgiDOuM6xIM61zq/Ovc6xzrkgz4HOt8+Hzq3PgiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEzNiBidWlsdGluL2luaXQtZGIuYzo0ODcKK21zZ2lkICJnaXRkaXIiCittc2dzdHIgIs+GzqzOus61zrvOv8+CIGdpdCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEzNyBidWlsdGluL2luaXQtZGIuYzo0ODgKK21zZ2lkICJzZXBhcmF0ZSBnaXQgZGlyIGZyb20gd29ya2luZyB0cmVlIgorbXNnc3RyICLOvc6xIM6zzq/Ovc61zrkgzrTOuc6xz4fPic+BzrnPg868z4zPgiDPhM6/z4Ugz4bOsc66zq3Ou86/z4UgZ2l0IM6xz4DPjCDPhM6/IM60zq3Ovc+Ez4HOvyDOtc+BzrPOsc+Dzq/Osc+CIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTM4Cittc2dpZCAia2V5PXZhbHVlIgorbXNnc3RyICLOus67zrXOuc60zq89z4TOuc68zq4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzkKK21zZ2lkICJzZXQgY29uZmlnIGluc2lkZSB0aGUgbmV3IHJlcG9zaXRvcnkiCittc2dzdHIgIs69zrEgzr/Pgc65z4PPhM6/z43OvSDPgc+FzrjOvM6vz4POtc65z4IgzrzOrc+DzrEgz4PPhM6/IM69zq3OvyDOsc+Azr/OuM61z4TOrs+BzrnOvyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0MCBidWlsdGluL2ZldGNoLmM6MTY1IGJ1aWx0aW4vcHVsbC5jOjIzMQorIzogYnVpbHRpbi9wdXNoLmM6NTg2Cittc2dpZCAidXNlIElQdjQgYWRkcmVzc2VzIG9ubHkiCittc2dzdHIgIs+Hz4HOrs+DzrcgzrzPjM69zr8gzrTOuc61z4XOuM+Nzr3Pg861z4nOvSBJUHY0IgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQyIGJ1aWx0aW4vZmV0Y2guYzoxNjcgYnVpbHRpbi9wdWxsLmM6MjM0CisjOiBidWlsdGluL3B1c2guYzo1ODgKK21zZ2lkICJ1c2UgSVB2NiBhZGRyZXNzZXMgb25seSIKK21zZ3N0ciAiz4fPgc6uz4POtyDOvM+Mzr3OvyDOtM65zrXPhc64z43Ovc+DzrXPic69IElQdjYiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoyODAKK21zZ2lkICIiCisiTm8gZGlyZWN0b3J5IG5hbWUgY291bGQgYmUgZ3Vlc3NlZC5cbiIKKyJQbGVhc2Ugc3BlY2lmeSBhIGRpcmVjdG9yeSBvbiB0aGUgY29tbWFuZCBsaW5lIgorbXNnc3RyICIiCisizpTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TPjCDOvc6xIM68zrHOvc+Ezq3PiM6/z4XOvM61IM+Ezr8gz4zOvc6/zrzOsSDPhM6/z4Ugz4bOsc66zq3Ou86/z4UuXG4iCisizqDOsc+BzrHOus6xzrvPjiDOtM+Oz4PPhM61IM6tzr3Osc69IM+GzqzOus61zrvOvyDPg8+EzrcgzrPPgc6xzrzOvM6uIM61zr3PhM6/zrvPjs69IgorCisjOiBidWlsdGluL2Nsb25lLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgImluZm86IENvdWxkIG5vdCBhZGQgYWx0ZXJuYXRlIGZvciAnJXMnOiAlc1xuIgorbXNnc3RyICLPgM67zrfPgc6/z4bOv8+Bzq/OsTogzpTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TPjCDOvc6xIM+Az4HOv8+Dz4TOtc64zrXOryDOtc69zrHOu867zrHOus+EzrnOus6uIM6zzrnOsSDPhM6/ICclcyc6ICVzXG4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgJyVzJyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleGlzdHMgYW5kIGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiz4TOvyAlcyDPhc+AzqzPgc+HzrXOuSDOrs60zrcgzrrOsc65IM60zrXOvSDOtc6vzr3Osc65IM+GzqzOus61zrvOv8+CIgorCisjOiBidWlsdGluL2Nsb25lLmM6NDI3CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0ICVzXG4iCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM+Ezr8gc3RhdCDPhM6/z4UgJXNcbiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjQ0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rICclcyciCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM6xz4bOsc6vz4HOtc+DzrcgzrTOtc+DzrzOv8+NICclcyciCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBsaW5rICclcyciCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM60zrfOvM65zr/Phc+BzrPOr86xIM+Ezr/PhSDOtM61z4POvM6/z40gJyVzJyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY29weSBmaWxlIHRvICclcyciCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM6xzr3PhM65zrPPgc6xz4bOriDPhM6/z4UgzrHPgc+HzrXOr86/z4Ugz4PPhM6/ICclcyciCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZS5cbiIKK21zZ3N0ciAizr/Ou86/zrrOu863z4HPjs64zrfOus61LlxuIgorCisjOiBidWlsdGluL2Nsb25lLmM6NDkzCittc2dpZCAiIgorIkNsb25lIHN1Y2NlZWRlZCwgYnV0IGNoZWNrb3V0IGZhaWxlZC5cbiIKKyJZb3UgY2FuIGluc3BlY3Qgd2hhdCB3YXMgY2hlY2tlZCBvdXQgd2l0aCAnZ2l0IHN0YXR1cydcbiIKKyJhbmQgcmV0cnkgdGhlIGNoZWNrb3V0IHdpdGggJ2dpdCBjaGVja291dCAtZiBIRUFEJ1xuIgorbXNnc3RyICIiCisizpcgzrrOu8+Jzr3Ov8+Azr/Or863z4POtyDPgM6tz4TPhc+HzrUsIM6xzrvOu86sIM63IM61zr7Osc6zz4nOs86uIM6xz4DOrc+Ez4XPh861LlxuIgorIs6cz4DOv8+BzrXOr8+EzrUgzr3OsSDOtc+AzrnOuM61z4nPgc6uz4POtc+EzrUgz4TOuSDOtc6+zq7Ph864zrcgzrzOtSAnZ2l0IHN0YXR1cydcbiIKKyLOus6xzrkgzr3OsSDPgM+Bzr/Pg8+AzrHOuM6uz4POtc+EzrUgz4DOrM67zrkgz4TOt869IM61zr7Osc6zz4nOs86uIM68zrUgJ2dpdCBjaGVja291dCAtZiBIRUFEJ1xuIgorCisjOiBidWlsdGluL2Nsb25lLmM6NTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBmaW5kIHJlbW90ZSBicmFuY2ggJXMgdG8gY2xvbmUuIgorbXNnc3RyICLOlM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM+MIM69zrEgzrLPgc61zrjOtc6vIM6/IM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/z4IgzrrOu86szrTOv8+CICVzIM+Az4HOv8+CIM66zrvPic69zr/PgM6/zq/Ot8+DzrcuIgorCisjOiBidWlsdGluL2Nsb25lLmM6Njg3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgJXMiCittc2dzdHIgIs60zrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ez4wgzr3OsSDOtc69zrfOvM61z4HPic64zrXOryDPhM6/ICVzIgorCisjOiBidWlsdGluL2Nsb25lLmM6NzM3Cittc2dpZCAicmVtb3RlIEhFQUQgcmVmZXJzIHRvIG5vbmV4aXN0ZW50IHJlZiwgdW5hYmxlIHRvIGNoZWNrb3V0LlxuIgorbXNnc3RyICIiCisiz4TOvyDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3OvyBIRUFEIM6xzr3Osc+Gzq3Pgc61z4TOsc65IM+DzrUgcmVmIM+Azr/PhSDOtM61zr0gz4XPgM6sz4HPh861zrksIM60zrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyAiCisizrXOvs6xzrPPic6zzq4uXG4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo3NjgKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2tvdXQgd29ya2luZyB0cmVlIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgzrXOvs6xzrPPic6zzq4gz4TOv8+FIM60zq3Ovc+Ez4HOv8+FIM61z4HOs86xz4POr86xz4IiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4MTMKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcGFyYW1ldGVycyB0byBjb25maWcgZmlsZSIKK21zZ3N0ciAizrTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM6uIM63IM61zrPOs8+BzrHPhs6uIM+AzrHPgc6xzrzOrc+Ez4HPic69IM+Dz4TOvyDOsc+Bz4fOtc6vzr8gz4HPhc64zrzOr8+DzrXPic69IgorCisjOiBidWlsdGluL2Nsb25lLmM6ODc2Cittc2dpZCAiY2Fubm90IHJlcGFjayB0byBjbGVhbiB1cCIKK21zZ3N0ciAizrTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM+MIM+Ezr8gcmVwYWNrIM6zzrnOsSDOus6xzrjOsc+BzrnPg868z4wiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4NzgKK21zZ2lkICJjYW5ub3QgdW5saW5rIHRlbXBvcmFyeSBhbHRlcm5hdGVzIGZpbGUiCittc2dzdHIgIiIKKyLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgzrHPhs6xzq/Pgc61z4POtyDOtM61z4POvM6/z40gzrHPgM+MIM+Ezr8gz4DPgc6/z4PPic+BzrnOvc+MIM6xz4HPh861zq/OvyDOtc69zrHOu867zrHOus+EzrnOus+Ozr0iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MTggYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTQxCittc2dpZCAiVG9vIG1hbnkgYXJndW1lbnRzLiIKK21zZ3N0ciAizqXPgM61z4HOss6/zrvOuc66zqwgz4DOv867zrvOrCDOv8+Bzq/Pg868zrHPhM6xLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjkyMgorbXNnaWQgIllvdSBtdXN0IHNwZWNpZnkgYSByZXBvc2l0b3J5IHRvIGNsb25lLiIKK21zZ3N0ciAizqDPgc6tz4DOtc65IM69zrEgzr/Pgc6vz4POtc+EzrUgzq3Ovc6xIM6xz4DOv864zrXPhM6uz4HOuc6/IM+Az4HOv8+CIM66zrvPic69zr/PgM6/zq/Ot8+DzrcuIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tYmFyZSBhbmQgLS1vcmlnaW4gJXMgb3B0aW9ucyBhcmUgaW5jb21wYXRpYmxlLiIKK21zZ3N0ciAizr/OuSDOtc+AzrnOu86/zrPOrc+CIC0tYmFyZSDOus6xzrkgLS1vcmlnaW4gJXMgzrTOtc69IM61zq/Ovc6xzrkgz4PPhc68zrLOsc+Ezq3PgiDOvM61z4TOsc6+z40gz4TOv8+Fz4IuIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTM4Cittc2dpZCAiLS1iYXJlIGFuZCAtLXNlcGFyYXRlLWdpdC1kaXIgYXJlIGluY29tcGF0aWJsZS4iCittc2dzdHIgIs+Ezr8gLS1iYXJlIM66zrHOuSDPhM6/IC0tc2VwYXJhdGUtZ2l0LWRpciDOtM61zr0gzrXOr869zrHOuSDPg8+FzrzOss6xz4TOrCDOvM61z4TOsc6+z40gz4TOv8+Fz4IuIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTUxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlcG9zaXRvcnkgJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiz4TOvyDOsc+Azr/OuM61z4TOrs+BzrnOvyAnJXMnIM60zrXOvSDPhc+AzqzPgc+HzrXOuSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk1NyBidWlsdGluL2ZldGNoLmM6MTYwOAorIywgYy1mb3JtYXQKK21zZ2lkICJkZXB0aCAlcyBpcyBub3QgYSBwb3NpdGl2ZSBudW1iZXIiCittc2dzdHIgIs+Ezr8gzrLOrM64zr/PgiAlcyDOtM61zr0gzrXOr869zrHOuSDOuM61z4TOuc66z4zPgiDOsc+BzrnOuM68z4zPgiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk2NworIywgYy1mb3JtYXQKK21zZ2lkICJkZXN0aW5hdGlvbiBwYXRoICclcycgYWxyZWFkeSBleGlzdHMgYW5kIGlzIG5vdCBhbiBlbXB0eSBkaXJlY3RvcnkuIgorbXNnc3RyICLOtyDOtM65zrHOtM+Bzr/OvM6uIM+Az4HOv86/z4HOuc+DzrzOv8+NICclcycgz4XPgM6sz4HPh861zrkgzq7OtM63IM66zrHOuSDOtM61zr0gzrXOr869zrHOuSDOus61zr3PjM+CIM+GzqzOus61zrvOv8+CLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk3NworIywgYy1mb3JtYXQKK21zZ2lkICJ3b3JraW5nIHRyZWUgJyVzJyBhbHJlYWR5IGV4aXN0cy4iCittc2dzdHIgIs+Ezr8gzrTOrc69z4TPgc6/IM61z4HOs86xz4POr86xz4IgJyVzJyDPhc+AzqzPgc+HzrXOuSDOrs60zrcuIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTkyIGJ1aWx0aW4vY2xvbmUuYzoxMDEzIGJ1aWx0aW4vZGlmZnRvb2wuYzoyNzIKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyOTYgYnVpbHRpbi93b3JrdHJlZS5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgb2YgJyVzJyIKK21zZ3N0ciAizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDPhM+Jzr0gzrHPgc+HzrnOus+Ozr0gz4bOsc66zq3Ou8+Jzr0gz4TOv8+FICclcyciCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSB3b3JrIHRyZWUgZGlyICclcyciCittc2dzdHIgIs60zrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ezq4gzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgz4TOv8+FIM+GzrHOus6tzrvOv8+FIM60zq3Ovc+Ez4HOv8+FIM61z4HOs86xz4POr86xz4IgJyVzJyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvbmluZyBpbnRvIGJhcmUgcmVwb3NpdG9yeSAnJXMnLi4uXG4iCittc2dzdHIgIs6Tzq/Ovc61z4TOsc65IM66zrvPic69zr/PgM6/zq/Ot8+DzrcgzrzOrc+DzrEgz4PPhM6/IM6zz4XOvM69z4wgzrHPgM6/zrjOtc+Ezq7Pgc65zr8gJyVzJy4uLlxuIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTAxOQorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9uaW5nIGludG8gJyVzJy4uLlxuIgorbXNnc3RyICLOk86vzr3Otc+EzrHOuSDOus67z4nOvc6/z4DOv86vzrfPg863IM68zq3Pg86xIM+Dz4TOvyAnJXMnLi4uXG4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDQzCittc2dpZCAiIgorImNsb25lIC0tcmVjdXJzaXZlIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggYm90aCAtLXJlZmVyZW5jZSBhbmQgLS1yZWZlcmVuY2UtaWYtIgorImFibGUiCittc2dzdHIgIiIKKyLPhM6/IGNsb25lIC0tcmVjdXJzaXZlIM60zrXOvSDOtc6vzr3Osc65IM+Dz4XOvM6yzrHPhM+MIM68zrUgz4TOvyAtLXJlZmVyZW5jZSDOus6xzrkgz4TOvyAtLXJlZmVyZW5jZS0iCisiaWYtYWJsZSDPhM6xz4XPhM+Mz4fPgc6/zr3OsSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExMDQKK21zZ2lkICItLWRlcHRoIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIs+Ezr8gLS1kZXB0aCDPgM6xz4HOsc6yzrvOrc+AzrXPhM6xzrkgz4POtSDPhM6/z4DOuc66zr/Pjc+CIM66zrvPjs69zr/Phc+CLCDPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IM+Ezr8gZmlsZTovLyDOsc69z4TOryAiCisizrHPhc+Ezr/PjS4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTA2Cittc2dpZCAiLS1zaGFsbG93LXNpbmNlIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIs+Ezr8gLS1zaGFsbG93LXNpbmNlIM+AzrHPgc6xzrLOu86tz4DOtc+EzrHOuSDPg861IM+Ezr/PgM65zrrOv8+Nz4IgzrrOu8+Ozr3Ov8+Fz4IsIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgz4TOvyAiCisiZmlsZTovLyDOsc69z4TOryDOsc+Fz4TOv8+NLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExMDgKK21zZ2lkICItLXNoYWxsb3ctZXhjbHVkZSBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCittc2dzdHIgIiIKKyLPhM6/IC0tc2hhbGxvdy1leGNsdWRlIM+AzrHPgc6xzrLOu86tz4DOtc+EzrHOuSDPg861IM+Ezr/PgM65zrrOv8+Nz4IgzrrOu8+Ozr3Ov8+Fz4IsIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgz4TOvyAiCisiZmlsZTovLyDOsc69z4TOryDOsc+Fz4TOv8+NLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExMTAKK21zZ2lkICItLWZpbHRlciBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCittc2dzdHIgIiIKKyLPhM6/IC0tZmlsdGVyIM+AzrHPgc6xzrLOu86tz4DOtc+EzrHOuSDPg861IM+Ezr/PgM65zrrOv8+Nz4IgzrrOu8+Ozr3Ov8+Fz4IsIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgz4TOvyBmaWxlOi8vIM6xzr3PhM6vICIKKyLOsc+Fz4TOv8+NLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExMTMKK21zZ2lkICJzb3VyY2UgcmVwb3NpdG9yeSBpcyBzaGFsbG93LCBpZ25vcmluZyAtLWxvY2FsIgorbXNnc3RyICLPhM6/IM6xz4DOv864zrXPhM6uz4HOuc6/IM+AzrfOs86uz4IgzrXOr869zrHOuSDPgc63z4fPjCwgzrPOr869zrXPhM6xzrkgz4DOsc+BzqzOss67zrXPiM63IM+Ezr/PhSAtLWxvY2FsIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTExOAorbXNnaWQgIi0tbG9jYWwgaXMgaWdub3JlZCIKK21zZ3N0ciAizrPOr869zrXPhM6xzrkgz4DOsc+BzqzOss67zrXPiM63IM+Ezr/PhSAtLWxvY2FsIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTE5MiBidWlsdGluL2Nsb25lLmM6MTIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdGUgYnJhbmNoICVzIG5vdCBmb3VuZCBpbiB1cHN0cmVhbSAlcyIKK21zZ3N0ciAizp8gzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zr/PgiDOus67zqzOtM6/z4IgJXMgzrTOtSDOss+Bzq3OuM63zrrOtSDPg8+Ezr8gzrHPgM+MIM+AzqzOvc+JICVzIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTIwMworbXNnaWQgIllvdSBhcHBlYXIgdG8gaGF2ZSBjbG9uZWQgYW4gZW1wdHkgcmVwb3NpdG9yeS4iCittc2dzdHIgIs6mzrHOr869zrXPhM6xzrkgz4DPic+CIM66zrvPic69zr/PgM6/zrnOrs+DzrHPhM61IM6tzr3OsSDOus61zr3PjCDOsc+Azr/OuM61z4TOrs+BzrnOvy4iCisKKyM6IGJ1aWx0aW4vY29sdW1uLmM6MTAKK21zZ2lkICJnaXQgY29sdW1uIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgY29sdW1uIFs8zrXPgM65zrvOv86zzq3Pgj5dIgorCisjOiBidWlsdGluL2NvbHVtbi5jOjI3Cittc2dpZCAibG9va3VwIGNvbmZpZyB2YXJzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29sdW1uLmM6MjggYnVpbHRpbi9jb2x1bW4uYzoyOQorbXNnaWQgImxheW91dCB0byB1c2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb2x1bW4uYzozMAorbXNnaWQgIk1heGltdW0gd2lkdGgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb2x1bW4uYzozMQorbXNnaWQgIlBhZGRpbmcgc3BhY2Ugb24gbGVmdCBib3JkZXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb2x1bW4uYzozMgorbXNnaWQgIlBhZGRpbmcgc3BhY2Ugb24gcmlnaHQgYm9yZGVyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29sdW1uLmM6MzMKK21zZ2lkICJQYWRkaW5nIHNwYWNlIGJldHdlZW4gY29sdW1ucyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbHVtbi5jOjUxCittc2dpZCAiLS1jb21tYW5kIG11c3QgYmUgdGhlIGZpcnN0IGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDEKK21zZ2lkICJnaXQgY29tbWl0IFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKK21zZ3N0ciAiZ2l0IGNvbW1pdCBbPM61z4DOuc67zr/Os86tz4I+XSBbLS1dIDzPgM61z4HOuc6zz4HOsc+Gzq4gzrTOuc6xzrTPgc6/zrzOrs+CPi4uLiIKKworIzogYnVpbHRpbi9jb21taXQuYzo0NgorbXNnaWQgImdpdCBzdGF0dXMgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgorbXNnc3RyICJnaXQgc3RhdHVzIFs8zrXPgM65zrvOv86zzq3Pgj5dIFstLV0gPM+AzrXPgc65zrPPgc6xz4bOriDOtM65zrHOtM+Bzr/OvM6uz4I+Li4uIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjUxCittc2dpZCAiIgorIllvdSBhc2tlZCB0byBhbWVuZCB0aGUgbW9zdCByZWNlbnQgY29tbWl0LCBidXQgZG9pbmcgc28gd291bGQgbWFrZVxuIgorIml0IGVtcHR5LiBZb3UgY2FuIHJlcGVhdCB5b3VyIGNvbW1hbmQgd2l0aCAtLWFsbG93LWVtcHR5LCBvciB5b3UgY2FuXG4iCisicmVtb3ZlIHRoZSBjb21taXQgZW50aXJlbHkgd2l0aCBcImdpdCByZXNldCBIRUFEXlwiLlxuIgorbXNnc3RyICIiCisizpbOt8+Ezq7Pg86xz4TOtSDOvc6xIM+Ez4HOv8+Azr/PgM6/zrnOrs+DzrXPhM61IM+EzrfOvSDPgM65zr8gz4DPgc+Mz4PPhs6xz4TOtyDPhc+Azr/Oss6/zrvOriwgzrHOu867zqwgzrHPhc+Ez4wgzrjOsSDPhM63zr0gzqzPhs63zr3OtVxuIgorIs66zrXOvc6uLiDOnM+Azr/Pgc61zq/PhM61IM69zrEgzrXPgM6xzr3Osc67zqzOss61z4TOtSDPhM63zr0gzrXOvc+Ezr/Ou86uIM+DzrHPgiDOvM61IC0tYWxsb3ctZW1wdHksIM6uIM69zrFcbiIKKyLOsc+GzrHOuc+Bzq3Pg861z4TOtSDPhM63zr0gz4XPgM6/zrLOv867zq4gzrXOvc+EzrXOu8+Oz4IgzrzOtSBcImdpdCByZXNldCBIRUFEXlwiLlxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjU2Cittc2dpZCAiIgorIlRoZSBwcmV2aW91cyBjaGVycnktcGljayBpcyBub3cgZW1wdHksIHBvc3NpYmx5IGR1ZSB0byBjb25mbGljdCByZXNvbHV0aW9uLlxuIgorIklmIHlvdSB3aXNoIHRvIGNvbW1pdCBpdCBhbnl3YXksIHVzZTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5XG4iCisiXG4iCittc2dzdHIgIiIKKyLOlyDPgM+Bzr/Ot86zzr/Pjc68zrXOvc63IM61z4DOuc67zrXOus+EzrnOus6uIM60zrnOsc67zr/Os86uIM61zq/Ovc6xzrkgz4TPjs+BzrEgzrrOtc69zq4sIM+AzrnOuM6xzr3Pjs+CIM67z4zOs8+JIM61z4DOr867z4XPg863z4IgIgorIs+Dz4XOs866z4HOv8+Nz4POtc+Jzr0uXG4iCisizpHOvSDOuM6tzrvOtc+EzrUgzr3OsSDPhM63zr0gz4XPgM6/zrLOrM67zrXPhM61IM+AzqzPgc6xz4XPhM6xLCDPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61OlxuIgorIlxuIgorIiAgICBnaXQgY29tbWl0IC0tYWxsb3ctZW1wdHlcbiIKKyJcbiIKKworIzogYnVpbHRpbi9jb21taXQuYzo2MworbXNnaWQgIk90aGVyd2lzZSwgcGxlYXNlIHVzZSAnZ2l0IHJlc2V0J1xuIgorbXNnc3RyICLOlc65zrTOrM67zrvPic+CLCDPgM6xz4HOsc66zrHOu8+OIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgJ2dpdCByZXNldCdcbiIKKworIzogYnVpbHRpbi9jb21taXQuYzo2NgorbXNnaWQgIiIKKyJJZiB5b3Ugd2lzaCB0byBza2lwIHRoaXMgY29tbWl0LCB1c2U6XG4iCisiXG4iCisiICAgIGdpdCByZXNldFxuIgorIlxuIgorIlRoZW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIHdpbGwgcmVzdW1lIGNoZXJyeS1waWNraW5nXG4iCisidGhlIHJlbWFpbmluZyBjb21taXRzLlxuIgorbXNnc3RyICIiCisizpHOvSDOuM6tzrvOtc+EzrUgzr3OsSDPgM+Bzr/Pg8+AzrXPgc6sz4POtc+EzrUgzrHPhc+Ezq4gz4TOt869IM+Fz4DOv86yzr/Ou86uLCDPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61OlxuIgorIlxuIgorIiAgICBnaXQgcmVzZXRcbiIKKyJcbiIKKyLOiM+AzrXOuc+EzrEgzrzOtSBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgzrjOsSDPg8+Fzr3Otc+Hzq/Pg861z4TOtSDPhM63zr0gzrXPgM65zrvOtc66z4TOuc66zq4gIgorIs60zrnOsc67zr/Os86uXG4iCisiz4TPic69IM+Fz4DPjM67zr/Ouc+Az4nOvSDPhc+Azr/Oss6/zrvPjs69LlxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjMxMgorbXNnaWQgImZhaWxlZCB0byB1bnBhY2sgSEVBRCB0cmVlIG9iamVjdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjM1MworbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGluZGV4IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzU5Cittc2dpZCAiaW50ZXJhY3RpdmUgYWRkIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjM3MworbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgdGVtcG9yYXJ5IGluZGV4IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzc1Cittc2dpZCAiRmFpbGVkIHRvIHVwZGF0ZSBtYWluIGNhY2hlIHRyZWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo0MDAgYnVpbHRpbi9jb21taXQuYzo0MjMgYnVpbHRpbi9jb21taXQuYzo0NjkKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3X2luZGV4IGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo0NTIKK21zZ2lkICJjYW5ub3QgZG8gYSBwYXJ0aWFsIGNvbW1pdCBkdXJpbmcgYSBtZXJnZS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo0NTQKK21zZ2lkICJjYW5ub3QgZG8gYSBwYXJ0aWFsIGNvbW1pdCBkdXJpbmcgYSBjaGVycnktcGljay4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo0NjIKK21zZ2lkICJjYW5ub3QgcmVhZCB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo0ODEKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdGVtcG9yYXJ5IGluZGV4IGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo1NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0ICclcycgbGFja3MgYXV0aG9yIGhlYWRlciIKK21zZ3N0ciAizrcgz4XPgM6/zrLOv867zq4gJyVzJyDOtM61IM60zrnOsc64zq3PhM61zrkgzrXPgM65zrrOtc+GzrHOu86vzrTOsSDOtM63zrzOuc6/z4XPgc6zzr/PjSIKKworIzogYnVpbHRpbi9jb21taXQuYzo1ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0ICclcycgaGFzIG1hbGZvcm1lZCBhdXRob3IgbGluZSIKK21zZ3N0ciAizrcgz4XPgM6/zrLOv867zq4gJyVzJyDOrc+HzrXOuSDOtc+Dz4bOsc67zrzOrc69zrcgzrPPgc6xzrzOvM6uIM60zrfOvM65zr/Phc+BzrPOv8+NIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjYwMAorbXNnaWQgIm1hbGZvcm1lZCAtLWF1dGhvciBwYXJhbWV0ZXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo2NTIKK21zZ2lkICIiCisidW5hYmxlIHRvIHNlbGVjdCBhIGNvbW1lbnQgY2hhcmFjdGVyIHRoYXQgaXMgbm90IHVzZWRcbiIKKyJpbiB0aGUgY3VycmVudCBjb21taXQgbWVzc2FnZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjY4OSBidWlsdGluL2NvbW1pdC5jOjcyMiBidWlsdGluL2NvbW1pdC5jOjEwNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGxvb2t1cCBjb21taXQgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo3MDEgYnVpbHRpbi9zaG9ydGxvZy5jOjMxOQorIywgYy1mb3JtYXQKK21zZ2lkICIocmVhZGluZyBsb2cgbWVzc2FnZSBmcm9tIHN0YW5kYXJkIGlucHV0KVxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzAzCittc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZyb20gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo3MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjczNiBidWlsdGluL2NvbW1pdC5jOjc0NAorbXNnaWQgImNvdWxkIG5vdCByZWFkIFNRVUFTSF9NU0ciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo3NDEKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBNRVJHRV9NU0ciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo3OTUKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29tbWl0IHRlbXBsYXRlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJJdCBsb29rcyBsaWtlIHlvdSBtYXkgYmUgY29tbWl0dGluZyBhIG1lcmdlLlxuIgorIklmIHRoaXMgaXMgbm90IGNvcnJlY3QsIHBsZWFzZSByZW1vdmUgdGhlIGZpbGVcbiIKKyJcdCVzXG4iCisiYW5kIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIs6mzrHOr869zrXPhM6xzrkgz4DPic+CIM68zqzOu867zr/OvSDPhc+Azr/Oss6szrvOu861z4TOtSDOvM65zrEgz4PPhc6zz4fPjs69zrXPhc+DzrcuXG4iCisizpHOvSDOsc+Fz4TPjCDOtM61zr0gzrXOr869zrHOuSDPg8+Jz4PPhM+MLCDPgM6xz4HOsc66zrHOu8+OIM6xz4bOsc65z4HOrc+Dz4TOtSDPhM6/IM6xz4HPh861zq/Ov1xuIgorIlx0JXNcbiIKKyLOus6xzrkgz4DPgc6/z4PPgM6xzrjOrs+Dz4TOtSDOvs6xzr3OrC5cbiIKKworIzogYnVpbHRpbi9jb21taXQuYzo4MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkl0IGxvb2tzIGxpa2UgeW91IG1heSBiZSBjb21taXR0aW5nIGEgY2hlcnJ5LXBpY2suXG4iCisiSWYgdGhpcyBpcyBub3QgY29ycmVjdCwgcGxlYXNlIHJlbW92ZSB0aGUgZmlsZVxuIgorIlx0JXNcbiIKKyJhbmQgdHJ5IGFnYWluLlxuIgorbXNnc3RyICIiCisiXG4iCisizqbOsc6vzr3Otc+EzrHOuSDPgM+Jz4IgzrzOrM67zrvOv869IM+Fz4DOv86yzqzOu867zrXPhM61IM68zrnOsSDOtc+AzrnOu861zrrPhM65zrrOriDOtM65zrHOu86/zrPOri5cbiIKKyLOkc69IM6xz4XPhM+MIM60zrXOvSDOtc6vzr3Osc65IM+Dz4nPg8+Ez4wsIM+AzrHPgc6xzrrOsc67z44gzrHPhs6xzrnPgc6tz4PPhM61IM+Ezr8gzrHPgc+HzrXOr86/XG4iCisiXHQlc1xuIgorIs66zrHOuSDPgM+Bzr/Pg8+AzrHOuM6uz4PPhM61IM6+zrHOvc6sLlxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjgzMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGxlYXNlIGVudGVyIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgeW91ciBjaGFuZ2VzLiBMaW5lcyBzdGFydGluZ1xuIgorIndpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQsIGFuZCBhbiBlbXB0eSBtZXNzYWdlIGFib3J0cyB0aGUgY29tbWl0LlxuIgorbXNnc3RyICIiCisizqDOsc+BzrHOus6xzrvPjiDOtc65z4POrM6zzrXPhM61IM+Ezr8gzrzOrs69z4XOvM6xIM+Fz4DOv86yzr/Ou86uz4IgzrPOuc6xIM+EzrnPgiDOsc67zrvOsc6zzq3PgiDPg86xz4IuIM6fzrkgzrPPgc6xzrzOvM6tz4Igz4DOv8+FICIKKyLOsc+Bz4fOr862zr/Phc69XG4iCisizrzOtSAnJWMnIM6xzrPOvc6/zr/Pjc69z4TOsc65LCDOus6xzrkgzrzOtSDOus61zr3PjCDOvM6uzr3Phc68zrEgzrXOs866zrHPhM6xzrvOtc6vz4DOtc+EzrUgz4TOt869IM+Fz4DOv86yzr/Ou86uLlxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGxlYXNlIGVudGVyIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgeW91ciBjaGFuZ2VzLiBMaW5lcyBzdGFydGluZ1xuIgorIndpdGggJyVjJyB3aWxsIGJlIGtlcHQ7IHlvdSBtYXkgcmVtb3ZlIHRoZW0geW91cnNlbGYgaWYgeW91IHdhbnQgdG8uXG4iCisiQW4gZW1wdHkgbWVzc2FnZSBhYm9ydHMgdGhlIGNvbW1pdC5cbiIKK21zZ3N0ciAiIgorIs6gzrHPgc6xzrrOsc67z44gzrXOuc+DzqzOs861z4TOtSDPhM6/IM68zq7Ovc+FzrzOsSDPhc+Azr/Oss6/zrvOrs+CIM6zzrnOsSDPhM65z4IgzrHOu867zrHOs86tz4Igz4POsc+CLiDOn865IM6zz4HOsc68zrzOrc+CIM+Azr/PhSAiCisizrHPgc+Hzq/Ots6/z4XOvVxuIgorIs68zrUgJyVjJyDOuM6xIM60zrnOsc+EzrfPgc63zrjOv8+Nzr0sIM68z4DOv8+BzrXOr8+EzrUgzr3OsSDPhM65z4IgzrHPhs6xzrnPgc6tz4POtc+EzrUgzrzOtc+EzqwgzrHOvSDOuM6tzrvOtc+EzrUuXG4iCisizpzOtSDOus61zr3PjCDOvM6uzr3Phc68zrEgzrXOs866zrHPhM6xzrvOtc6vz4DOtc+EzrUgz4TOt869IM+Fz4DOv86yzr/Ou86uLlxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjg1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlc0F1dGhvcjogICAgJS4qcyA8JS4qcz4iCittc2dzdHIgIiVzzpTOt868zrnOv8+Fz4HOs8+Mz4I6ICAgICUuKnMgPCUuKnM+IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjg2NAorIywgYy1mb3JtYXQKK21zZ2lkICIlc0RhdGU6ICAgICAgJXMiCittc2dzdHIgIiVzzpfOvM61z4HOv868zrfOvc6vzrE6ICAgICAgJXMiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODcxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzQ29tbWl0dGVyOiAlLipzIDwlLipzPiIKK21zZ3N0ciAiJXPOpc+Azr/Oss6szrvOu8+Jzr06ICUuKnMgPCUuKnM+IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjg4OQorbXNnaWQgIkNhbm5vdCByZWFkIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTU2Cittc2dpZCAiRXJyb3IgYnVpbGRpbmcgdHJlZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo5NzAgYnVpbHRpbi90YWcuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGxlYXNlIHN1cHBseSB0aGUgbWVzc2FnZSB1c2luZyBlaXRoZXIgLW0gb3IgLUYgb3B0aW9uLlxuIgorbXNnc3RyICLOoM6xz4HOsc66zrHOu8+OIM61zrnPg86szrPOtc+EzrUgz4TOvyDOvM6uzr3Phc68zrEgz4fPgc63z4POuc68zr/PgM6/zrnPjs69z4TOsc+CIM+EzrfOvSDOtc+AzrnOu86/zrPOriAtbSDOriAtRi5cbiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMDE0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tYXV0aG9yICclcycgaXMgbm90ICdOYW1lIDxlbWFpbD4nIGFuZCBtYXRjaGVzIG5vIGV4aXN0aW5nIGF1dGhvciIKK21zZ3N0ciAiIgorIi0tYXV0aG9yICclcycgzrTOtc69IM61zq/Ovc6xzrkgJ86Mzr3Ov868zrEgPGVtYWlsPicgzrrOsc65IM60zrXOvSDPhM6xzrnPgc65zqzOts61zrkgzrzOtSDOus6sz4DOv865zr/OvSAiCisiz4XPgM6sz4HPh86/zr3PhM6xIM60zrfOvM65zr/Phc+BzrPPjCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgaWdub3JlZCBtb2RlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMDQyIGJ1aWx0aW4vY29tbWl0LmM6MTI3OQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHVudHJhY2tlZCBmaWxlcyBtb2RlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMDgwCittc2dpZCAiLS1sb25nIGFuZCAteiBhcmUgaW5jb21wYXRpYmxlIgorbXNnc3RyICItLWxvbmcgzrrOsc65IC16IM61zq/Ovc6xzrkgzrHPg8+NzrzOss6xz4TOsSDOvM61z4TOsc6+z40gz4TOv8+Fz4IiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTExMworbXNnaWQgIlVzaW5nIGJvdGggLS1yZXNldC1hdXRob3IgYW5kIC0tYXV0aG9yIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgIs6XIM+Hz4HOrs+Dzrcgz4TPic69IC0tcmVzZXQtYXV0aG9yIM66zrHOuSAtLWF1dGhvciDPhM6xz4XPhM+Mz4fPgc6/zr3OsSDOtM61zr0gzq3Ph861zrkgzr3PjM63zrzOsSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTIyCittc2dpZCAiWW91IGhhdmUgbm90aGluZyB0byBhbWVuZC4iCittc2dzdHIgIs6UzrXOvSDOrc+HzrXPhM61IM+Ezq/PgM6/z4TOsSDPgM+Bzr/PgiDPhM+Bzr/PgM6/z4DOv86vzrfPg863LiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTI1Cittc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UgLS0gY2Fubm90IGFtZW5kLiIKK21zZ3N0ciAizpLPgc6vz4POus61z4PPhM61IM+Dz4TOtyDOvM6tz4POtyDOvM65zrHPgiDPg8+FzrPPh8+Ozr3Otc+Fz4POt8+CIC0tIM60zrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDPhM+Bzr/PgM6/z4DOv86vzrfPg863LiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTI3Cittc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgY2hlcnJ5LXBpY2sgLS0gY2Fubm90IGFtZW5kLiIKK21zZ3N0ciAiIgorIs6Sz4HOr8+DzrrOtc+Dz4TOtSDPg8+EzrcgzrzOrc+DzrcgzrzOuc6xz4IgzrXPgM65zrvOtc66z4TOuc66zq7PgiDOtM65zrHOu86/zrPOrs+CIC0tIM60zrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyAiCisiz4TPgc6/z4DOv8+Azr/Or863z4POty4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTEzMAorbXNnaWQgIk9wdGlvbnMgLS1zcXVhc2ggYW5kIC0tZml4dXAgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTQwCittc2dpZCAiT25seSBvbmUgb2YgLWMvLUMvLUYvLS1maXh1cCBjYW4gYmUgdXNlZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTQyCittc2dpZCAiT3B0aW9uIC1tIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIC1jLy1DLy1GLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjExNTAKK21zZ2lkICItLXJlc2V0LWF1dGhvciBjYW4gYmUgdXNlZCBvbmx5IHdpdGggLUMsIC1jIG9yIC0tYW1lbmQuIgorbXNnc3RyICItLXJlc2V0LWF1dGhvciDOvM+Azr/Pgc61zq8gzr3OsSDPh8+BzrfPg865zrzOv8+Azr/Ouc63zrjOtc6vIM68z4zOvc6/IM68zrUgLUMsIC1jIM6uIC0tYW1lbmQuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjExNjcKK21zZ2lkICJPbmx5IG9uZSBvZiAtLWluY2x1ZGUvLS1vbmx5Ly0tYWxsLy0taW50ZXJhY3RpdmUvLS1wYXRjaCBjYW4gYmUgdXNlZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTY5Cittc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MyBidWlsdGluL3RhZy5jOjU0NgorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGNsZWFudXAgbW9kZSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjExODgKK21zZ2lkICJQYXRocyB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxNCBidWlsdGluL2NvbW1pdC5jOjE0OTgKK21zZ2lkICJzaG93IHN0YXR1cyBjb25jaXNlbHkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzE2IGJ1aWx0aW4vY29tbWl0LmM6MTUwMAorbXNnaWQgInNob3cgYnJhbmNoIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxOAorbXNnaWQgInNob3cgc3Rhc2ggaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzIwIGJ1aWx0aW4vY29tbWl0LmM6MTUwMgorbXNnaWQgImNvbXB1dGUgZnVsbCBhaGVhZC9iZWhpbmQgdmFsdWVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyMgorbXNnaWQgInZlcnNpb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzIyIGJ1aWx0aW4vY29tbWl0LmM6MTUwNCBidWlsdGluL3B1c2guYzo1NjEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NDAKK21zZ2lkICJtYWNoaW5lLXJlYWRhYmxlIG91dHB1dCIKK21zZ3N0ciAizq3Ovs6/zrTOv8+CIM+DzrUgzrzOt8+HzrHOvc65zrrOrCDOsc69zrHOs869z47Pg865zrzOtyDOvM6/z4HPhs6uIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzMjUgYnVpbHRpbi9jb21taXQuYzoxNTA2Cittc2dpZCAic2hvdyBzdGF0dXMgaW4gbG9uZyBmb3JtYXQgKGRlZmF1bHQpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyOCBidWlsdGluL2NvbW1pdC5jOjE1MDkKK21zZ2lkICJ0ZXJtaW5hdGUgZW50cmllcyB3aXRoIE5VTCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzMzAgYnVpbHRpbi9jb21taXQuYzoxMzM0IGJ1aWx0aW4vY29tbWl0LmM6MTUxMgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwODUgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwODggYnVpbHRpbi9yZWJhc2UuYzoxMTE4CisjOiBidWlsdGluL3RhZy5jOjQwMAorbXNnaWQgIm1vZGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzMxIGJ1aWx0aW4vY29tbWl0LmM6MTUxMgorbXNnaWQgInNob3cgdW50cmFja2VkIGZpbGVzLCBvcHRpb25hbCBtb2RlczogYWxsLCBub3JtYWwsIG5vLiAoRGVmYXVsdDogYWxsKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzMzUKK21zZ2lkICIiCisic2hvdyBpZ25vcmVkIGZpbGVzLCBvcHRpb25hbCBtb2RlczogdHJhZGl0aW9uYWwsIG1hdGNoaW5nLCBuby4gKERlZmF1bHQ6ICIKKyJ0cmFkaXRpb25hbCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzM3IHBhcnNlLW9wdGlvbnMuaDoxNjQKK21zZ2lkICJ3aGVuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTMzOAorbXNnaWQgIiIKKyJpZ25vcmUgY2hhbmdlcyB0byBzdWJtb2R1bGVzLCBvcHRpb25hbCB3aGVuOiBhbGwsIGRpcnR5LCB1bnRyYWNrZWQuICIKKyIoRGVmYXVsdDogYWxsKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNDAKK21zZ2lkICJsaXN0IHVudHJhY2tlZCBmaWxlcyBpbiBjb2x1bW5zIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM0MQorbXNnaWQgImRvIG5vdCBkZXRlY3QgcmVuYW1lcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNDMKK21zZ2lkICJkZXRlY3QgcmVuYW1lcywgb3B0aW9uYWxseSBzZXQgc2ltaWxhcml0eSBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjMKK21zZ2lkICJVbnN1cHBvcnRlZCBjb21iaW5hdGlvbiBvZiBpZ25vcmVkIGFuZCB1bnRyYWNrZWQtZmlsZXMgYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2OAorbXNnaWQgInN1cHByZXNzIHN1bW1hcnkgYWZ0ZXIgc3VjY2Vzc2Z1bCBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDY5Cittc2dpZCAic2hvdyBkaWZmIGluIGNvbW1pdCBtZXNzYWdlIHRlbXBsYXRlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MQorbXNnaWQgIkNvbW1pdCBtZXNzYWdlIG9wdGlvbnMiCittc2dzdHIgIs6Vz4DOuc67zr/Os86tz4IgzrzOt869z43OvM6xz4TOv8+CIM+Fz4DOv86yzr/Ou86uz4IiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MiBidWlsdGluL21lcmdlLmM6MjY0IGJ1aWx0aW4vdGFnLmM6Mzk3Cittc2dpZCAicmVhZCBtZXNzYWdlIGZyb20gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0NzMKK21zZ2lkICJhdXRob3IiCittc2dzdHIgIs60zrfOvM65zr/Phc+BzrPPjM+CIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0NzMKK21zZ2lkICJvdmVycmlkZSBhdXRob3IgZm9yIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0NzQgYnVpbHRpbi9nYy5jOjUxOAorbXNnaWQgImRhdGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDc0Cittc2dpZCAib3ZlcnJpZGUgZGF0ZSBmb3IgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NSBidWlsdGluL21lcmdlLmM6MjYwIGJ1aWx0aW4vbm90ZXMuYzo0MDkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1NzUgYnVpbHRpbi90YWcuYzozOTUKK21zZ2lkICJtZXNzYWdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NQorbXNnaWQgImNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICLOvM6uzr3Phc68zrEgz4XPgM6/zrLOv867zq7PgiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDc2IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NyBidWlsdGluL2NvbW1pdC5jOjE0NzgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3OSBwYXJzZS1vcHRpb25zLmg6Mjc4IHJlZi1maWx0ZXIuaDo5MgorbXNnaWQgImNvbW1pdCIKK21zZ3N0ciAiz4XPgM6/zrLOv867zq4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NgorbXNnaWQgInJldXNlIGFuZCBlZGl0IG1lc3NhZ2UgZnJvbSBzcGVjaWZpZWQgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NworbXNnaWQgInJldXNlIG1lc3NhZ2UgZnJvbSBzcGVjaWZpZWQgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3OAorbXNnaWQgInVzZSBhdXRvc3F1YXNoIGZvcm1hdHRlZCBtZXNzYWdlIHRvIGZpeHVwIHNwZWNpZmllZCBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDc5Cittc2dpZCAidXNlIGF1dG9zcXVhc2ggZm9ybWF0dGVkIG1lc3NhZ2UgdG8gc3F1YXNoIHNwZWNpZmllZCBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDgwCittc2dpZCAidGhlIGNvbW1pdCBpcyBhdXRob3JlZCBieSBtZSBub3cgKHVzZWQgd2l0aCAtQy8tYy8tLWFtZW5kKSIKK21zZ3N0ciAizrcgz4XPgM6/zrLOv867zq4gzq3Ph861zrkgzrTOt868zrnOv8+Fz4HOs8+MIM61zrzOrc69zrEgz4TPjs+BzrEgKM+Hz4HOt8+DzrnOvM6/z4DOv865zrXOr8+EzrHOuSDOvM61IC1DLy1jLy0tYW1lbmQpIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0ODEgYnVpbHRpbi9sb2cuYzoxNTMzIGJ1aWx0aW4vbWVyZ2UuYzoyNzcKKyM6IGJ1aWx0aW4vcHVsbC5jOjE1NiBidWlsdGluL3JldmVydC5jOjEwNworbXNnaWQgImFkZCBTaWduZWQtb2ZmLWJ5OiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0ODIKK21zZ2lkICJ1c2Ugc3BlY2lmaWVkIHRlbXBsYXRlIGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDgzCittc2dpZCAiZm9yY2UgZWRpdCBvZiBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDg0Cittc2dpZCAiZGVmYXVsdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0ODQgYnVpbHRpbi90YWcuYzo0MDEKK21zZ2lkICJob3cgdG8gc3RyaXAgc3BhY2VzIGFuZCAjY29tbWVudHMgZnJvbSBtZXNzYWdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4NQorbXNnaWQgImluY2x1ZGUgc3RhdHVzIGluIGNvbW1pdCBtZXNzYWdlIHRlbXBsYXRlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4NyBidWlsdGluL21lcmdlLmM6Mjc1IGJ1aWx0aW4vcHVsbC5jOjE4NgorIzogYnVpbHRpbi9yZXZlcnQuYzoxMTUKK21zZ2lkICJHUEcgc2lnbiBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDkwCittc2dpZCAiQ29tbWl0IGNvbnRlbnRzIG9wdGlvbnMiCittc2dzdHIgIs6Vz4DOuc67zr/Os86tz4Igz4DOtc+BzrnOtc+Hzr/OvM6tzr3Pic69IM+Fz4DOv86yzr/Ou86uz4IiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MQorbXNnaWQgImNvbW1pdCBhbGwgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAizr3OsSDOs86vzr3Otc65IM+Fz4DOv86yzr/Ou86uIM+MzrvPic69IM+Ez4nOvSDOsc67zrvOsc6zzrzOrc69z4nOvSDOsc+Bz4fOtc6vz4nOvSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDkyCittc2dpZCAiYWRkIHNwZWNpZmllZCBmaWxlcyB0byBpbmRleCBmb3IgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MworbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NAorbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGNoYW5nZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDk1Cittc2dpZCAiY29tbWl0IG9ubHkgc3BlY2lmaWVkIGZpbGVzIgorbXNnc3RyICLOvc6xIM6zzq/Ovc61zrkgz4XPgM6/zrLOv867zq4gzrzPjM69zr8gz4TPic69IM60zr/OuM6tzr3PhM+Jzr0gzrHPgc+HzrXOr8+Jzr0iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NgorbXNnaWQgImJ5cGFzcyBwcmUtY29tbWl0IGFuZCBjb21taXQtbXNnIGhvb2tzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NworbXNnaWQgInNob3cgd2hhdCB3b3VsZCBiZSBjb21taXR0ZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTEwCittc2dpZCAiYW1lbmQgcHJldmlvdXMgY29tbWl0IgorbXNnc3RyICLPhM+Bzr/PgM6/z4DOv86vzrfPg863IM+EzrfPgiDPgM+Bzr/Ot86zzr/Pjc68zrXOvc63z4Igz4XPgM6/zrLOv867zq7PgiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTExCittc2dpZCAiYnlwYXNzIHBvc3QtcmV3cml0ZSBob29rIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNgorbXNnaWQgIm9rIHRvIHJlY29yZCBhbiBlbXB0eSBjaGFuZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTE4Cittc2dpZCAib2sgdG8gcmVjb3JkIGEgY2hhbmdlIHdpdGggYW4gZW1wdHkgbWVzc2FnZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29ycnVwdCBNRVJHRV9IRUFEIGZpbGUgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1OTgKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBNRVJHRV9NT0RFIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTYxNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBjb21taXQgbWVzc2FnZTogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIkFib3J0aW5nIGNvbW1pdCBkdWUgdG8gZW1wdHkgY29tbWl0IG1lc3NhZ2UuXG4iCittc2dzdHIgIs6VzrPOus6xz4TOrM67zrXOuc+Izrcgz4TOt8+CIM+Fz4DOv86yzr/Ou86uz4IgzrvPjM6zz4kgzrrOtc69zr/PjSDOvM63zr3Pjc68zrHPhM6/z4Igz4XPgM6/zrLOv867zq7Pgi5cbiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNjMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkFib3J0aW5nIGNvbW1pdDsgeW91IGRpZCBub3QgZWRpdCB0aGUgbWVzc2FnZS5cbiIKK21zZ3N0ciAizpXOs866zrHPhM6szrvOtc65z4jOtyDPhM63z4Igz4XPgM6/zrLOv867zq7PgiwgzrTOtc69IM61z4DOtc6+zrXPgc6zzrHPg8+Ezq7Ous6xz4TOtSDPhM6/IM68zq7Ovc+FzrzOsS5cbiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNjY4Cittc2dpZCAiIgorInJlcG9zaXRvcnkgaGFzIGJlZW4gdXBkYXRlZCwgYnV0IHVuYWJsZSB0byB3cml0ZVxuIgorIm5ld19pbmRleCBmaWxlLiBDaGVjayB0aGF0IGRpc2sgaXMgbm90IGZ1bGwgYW5kIHF1b3RhIGlzXG4iCisibm90IGV4Y2VlZGVkLCBhbmQgdGhlbiBcImdpdCByZXNldCBIRUFEXCIgdG8gcmVjb3Zlci4iCittc2dzdHIgIiIKKyLPhM6/IM6xz4DOv864zrXPhM6uz4HOuc6/IM61zr3Ot868zrXPgc+OzrjOt866zrUsIM6xzrvOu86sIM60zrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ez4wgzr3OsSDOs8+BzrHPhs61zq9cbiIKKyLPhM6/IM6xz4HPh861zq/OvyBuZXdfaW5kZXguIM6VzrvOrc6zzr7PhM61IM+Az4nPgiDOvyDOtM6vz4POus6/z4IgzrTOtc69IM61zq/Ovc6xzrkgzrPOtc68zqzPhM6/z4IgzrrOsc65IM+Az4nPglxuIgorIs60zrXOvSDPhc+AzqzPgc+HzrXOuSDPhc+Azq3Pgc6yzrHPg863IM6/z4HOr86/z4UsIM66zrHOuSDOvM61z4TOrCDOus6szr3PhM61IFwiZ2l0IHJlc2V0IEhFQURcIiDOs865zrEgzrHOvc6szrrPhM63z4POty4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTAKK21zZ2lkICJnaXQgY29tbWl0LWdyYXBoIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgorbXNnc3RyICJnaXQgY29tbWl0LWdyYXBoIFstLW9iamVjdC1kaXIgPM+GzqzOus61zrvOv8+CIM6xzr3PhM65zrrOtc65zrzOrc69z4nOvT5dIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjExIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjMKK21zZ2lkICJnaXQgY29tbWl0LWdyYXBoIHJlYWQgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCittc2dzdHIgImdpdCBjb21taXQtZ3JhcGggcmVhZCBbLS1vYmplY3QtZGlyIDzPhs6szrrOtc67zr/PgiDOsc69z4TOuc66zrXOuc68zq3Ovc+Jzr0+XSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE4Cittc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCittc2dzdHIgImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPM+GzqzOus61zrvOv8+CIM6xzr3PhM65zrrOtc65zrzOrc69z4nOvT5dIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjgKK21zZ2lkICIiCisiZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1hcHBlbmRdIFstLXJlYWNoYWJsZXwtLSIKKyJzdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIgorbXNnc3RyICIiCisiZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDzPhs6szrrOtc67zr/PgiDOsc69z4TOuc66zrXOuc68zq3Ovc+Jzr0+XSBbLS1hcHBlbmRdIFstLSIKKyJyZWFjaGFibGV8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjQ4IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzgKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMyIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTkwIGJ1aWx0aW4vZmV0Y2guYzoxNTMKKyM6IGJ1aWx0aW4vbG9nLmM6MTU1MworbXNnaWQgImRpciIKK21zZ3N0ciAiz4bOrM66zrXOu86/z4IiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NDkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3OQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzMgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxOTEKK21zZ2lkICJUaGUgb2JqZWN0IGRpcmVjdG9yeSB0byBzdG9yZSB0aGUgZ3JhcGgiCittc2dzdHIgIs6fIM+GzqzOus61zrvOv8+CIM6xzr3PhM65zrrOtc65zrzOrc69z4nOvSDPgM6/z4UgzrjOsSDOsc+Azr/OuM63zrrOtc+Fz4TOtc6vIM6/IM6zz4HOrM+Gzr/PgiIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzUKK21zZ2lkICJzdGFydCB3YWxrIGF0IGFsbCByZWZzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM3Cittc2dpZCAic2NhbiBwYWNrLWluZGV4ZXMgbGlzdGVkIGJ5IHN0ZGluIGZvciBjb21taXRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM5Cittc2dpZCAic3RhcnQgd2FsayBhdCBjb21taXRzIGxpc3RlZCBieSBzdGRpbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0MQorbXNnaWQgImluY2x1ZGUgYWxsIGNvbW1pdHMgYWxyZWFkeSBpbiB0aGUgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNTAKK21zZ2lkICJ1c2UgYXQgbW9zdCBvbmUgb2YgLS1yZWFjaGFibGUsIC0tc3RkaW4tY29tbWl0cywgb3IgLS1zdGRpbi1wYWNrcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjExCittc2dpZCAiZ2l0IGNvbmZpZyBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IGNvbmZpZyBbPM61z4DOuc67zr/Os86tz4I+XSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIC0tdHlwZSBhcmd1bWVudCwgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMTUKK21zZ2lkICJvbmx5IG9uZSB0eXBlIGF0IGEgdGltZSIKK21zZ3N0ciAizrzPjM69zr8gzq3Ovc6xz4Igz4TPjc+Azr/PgiDOus6szrjOtSDPhs6/z4HOrCIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMjQKK21zZ2lkICJDb25maWcgZmlsZSBsb2NhdGlvbiIKK21zZ3N0ciAizqTOv8+Azr/OuM61z4POr86xIM6xz4HPh861zq/Ov8+FIM+Bz4XOuM68zq/Pg861z4nOvSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMjUKK21zZ2lkICJ1c2UgZ2xvYmFsIGNvbmZpZyBmaWxlIgorbXNnc3RyICLOvc6xIM6zzq/Ovc61zrkgz4fPgc6uz4POtyDPhM6/z4UgzrrOsc64zr/Ou865zrrOv8+NIM6xz4HPh861zq/Ov8+FIM+Bz4XOuM68zq/Pg861z4nOvSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMjYKK21zZ2lkICJ1c2Ugc3lzdGVtIGNvbmZpZyBmaWxlIgorbXNnc3RyICLOvc6xIM6zzq/Ovc61zrkgz4fPgc6uz4POtyDPhM6/z4UgzrHPgc+HzrXOr86/z4Ugz4HPhc64zrzOr8+DzrXPic69IM+Dz4XPg8+Ezq7OvM6xz4TOv8+CIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEyNworbXNnaWQgInVzZSByZXBvc2l0b3J5IGNvbmZpZyBmaWxlIgorbXNnc3RyICLOvc6xIM6zzq/Ovc61zrkgz4fPgc6uz4POtyDPhM6/z4UgzrHPgc+HzrXOr86/z4Ugz4HPhc64zrzOr8+DzrXPic69IM6xz4DOv864zrXPhM63z4HOr86/z4UiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI4Cittc2dpZCAidXNlIHBlci13b3JrdHJlZSBjb25maWcgZmlsZSIKK21zZ3N0ciAizr3OsSDOs86vzr3Otc65IM+Hz4HOrs+DzrcgzrHPgc+HzrXOr86/z4Ugz4HPhc64zrzOr8+DzrXPic69IM6xzr3OrCDOtM6tzr3PhM+Bzr8gzrXPgc6zzrHPg86vzrHPgiIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMjkKK21zZ2lkICJ1c2UgZ2l2ZW4gY29uZmlnIGZpbGUiCittc2dzdHIgIs69zrEgzrPOr869zrXOuSDPh8+Bzq7Pg863IM+Ezr/PhSDOtM6/zrjOrc69z4TOv8+CIM6xz4HPh861zq/Ov8+FIM+Bz4XOuM68zq/Pg861z4nOvSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMzAKK21zZ2lkICJibG9iLWlkIgorbXNnc3RyICLOsc69zrHOs869z4nPgc65z4PPhM65zrrPjCBibG9iIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMAorbXNnaWQgInJlYWQgY29uZmlnIGZyb20gZ2l2ZW4gYmxvYiBvYmplY3QiCittc2dzdHIgIs6xzr3OrM6zzr3Pic+Dzrcgz4HPhc64zrzOr8+DzrXPic69IM6xz4DPjCDPhM6/IM60zr/OuM6tzr0gzrHOvc+EzrnOus61zq/OvM61zr3OvyBibG9iIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMQorbXNnaWQgIkFjdGlvbiIKK21zZ3N0ciAizpXOvc6tz4HOs861zrnOsSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMzIKK21zZ2lkICJnZXQgdmFsdWU6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMworbXNnaWQgImdldCBhbGwgdmFsdWVzOiBrZXkgW3ZhbHVlLXJlZ2V4XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzNAorbXNnaWQgImdldCB2YWx1ZXMgZm9yIHJlZ2V4cDogbmFtZS1yZWdleCBbdmFsdWUtcmVnZXhdIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM1Cittc2dpZCAiZ2V0IHZhbHVlIHNwZWNpZmljIGZvciB0aGUgVVJMOiBzZWN0aW9uWy52YXJdIFVSTCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzNgorbXNnaWQgInJlcGxhY2UgYWxsIG1hdGNoaW5nIHZhcmlhYmxlczogbmFtZSB2YWx1ZSBbdmFsdWVfcmVnZXhdIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM3Cittc2dpZCAiYWRkIGEgbmV3IHZhcmlhYmxlOiBuYW1lIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM4Cittc2dpZCAicmVtb3ZlIGEgdmFyaWFibGU6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzOQorbXNnaWQgInJlbW92ZSBhbGwgbWF0Y2hlczogbmFtZSBbdmFsdWUtcmVnZXhdIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQwCittc2dpZCAicmVuYW1lIHNlY3Rpb246IG9sZC1uYW1lIG5ldy1uYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQxCittc2dpZCAicmVtb3ZlIGEgc2VjdGlvbjogbmFtZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0MgorbXNnaWQgImxpc3QgYWxsIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQzCittc2dpZCAib3BlbiBhbiBlZGl0b3IiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNDQKK21zZ2lkICJmaW5kIHRoZSBjb2xvciBjb25maWd1cmVkOiBzbG90IFtkZWZhdWx0XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0NQorbXNnaWQgImZpbmQgdGhlIGNvbG9yIHNldHRpbmc6IHNsb3QgW3N0ZG91dC1pcy10dHldIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ2Cittc2dpZCAiVHlwZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0NworbXNnaWQgInZhbHVlIGlzIGdpdmVuIHRoaXMgdHlwZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0OAorbXNnaWQgInZhbHVlIGlzIFwidHJ1ZVwiIG9yIFwiZmFsc2VcIiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0OQorbXNnaWQgInZhbHVlIGlzIGRlY2ltYWwgbnVtYmVyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUwCittc2dpZCAidmFsdWUgaXMgLS1ib29sIG9yIC0taW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUxCittc2dpZCAidmFsdWUgaXMgYSBwYXRoIChmaWxlIG9yIGRpcmVjdG9yeSBuYW1lKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MgorbXNnaWQgInZhbHVlIGlzIGFuIGV4cGlyeSBkYXRlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUzCittc2dpZCAiT3RoZXIiCittc2dzdHIgIs6GzrvOu86/IgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1NAorbXNnaWQgInRlcm1pbmF0ZSB2YWx1ZXMgd2l0aCBOVUwgYnl0ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1NQorbXNnaWQgInNob3cgdmFyaWFibGUgbmFtZXMgb25seSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1NgorbXNnaWQgInJlc3BlY3QgaW5jbHVkZSBkaXJlY3RpdmVzIG9uIGxvb2t1cCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1NworbXNnaWQgInNob3cgb3JpZ2luIG9mIGNvbmZpZyAoZmlsZSwgc3RhbmRhcmQgaW5wdXQsIGJsb2IsIGNvbW1hbmQgbGluZSkiCittc2dzdHIgIiIKKyLPgM+Bzr/Oss6/zrvOriDPgM+Bzr/Orc67zrXPhc+DzrfPgiDPgc+FzrjOvM6vz4POtc+Jzr0gKM6xz4HPh861zq/Ovywgc3RhbmRhcmQgaW5wdXQsIGJsb2IsIM6zz4HOsc68zrzOriDOtc69z4TOv867z47OvSkiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU4Cittc2dpZCAidmFsdWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNTgKK21zZ2lkICJ3aXRoIC0tZ2V0LCB1c2UgZGVmYXVsdCB2YWx1ZSB3aGVuIG1pc3NpbmcgZW50cnkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAid3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cywgc2hvdWxkIGJlICVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIndyb25nIG51bWJlciBvZiBhcmd1bWVudHMsIHNob3VsZCBiZSBmcm9tICVkIHRvICVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MzA4CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQga2V5IHBhdHRlcm46ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmb3JtYXQgZGVmYXVsdCBjb25maWcgdmFsdWU6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBwYXJzZSBjb2xvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDQzCittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGRlZmF1bHQgY29sb3IgdmFsdWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb25maWcuYzo0OTYgYnVpbHRpbi9jb25maWcuYzo3NDIKK21zZ2lkICJub3QgaW4gYSBnaXQgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDk5Cittc2dpZCAid3JpdGluZyB0byBzdGRpbiBpcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTAyCittc2dpZCAid3JpdGluZyBjb25maWcgYmxvYnMgaXMgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAizrcgzrXOs86zz4HOsc+Gzq4gYmxvYiDPgc+FzrjOvM6vz4PPic69IM60zrXOvSDPhc+Azr/Pg8+EzrfPgc6vzrbOtc+EzrHOuSIKKworIzogYnVpbHRpbi9jb25maWcuYzo1ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiMgVGhpcyBpcyBHaXQncyBwZXItdXNlciBjb25maWd1cmF0aW9uIGZpbGUuXG4iCisiW3VzZXJdXG4iCisiIyBQbGVhc2UgYWRhcHQgYW5kIHVuY29tbWVudCB0aGUgZm9sbG93aW5nIGxpbmVzOlxuIgorIiNcdG5hbWUgPSAlc1xuIgorIiNcdGVtYWlsID0gJXNcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjYxMQorbXNnaWQgIm9ubHkgb25lIGNvbmZpZyBmaWxlIGF0IGEgdGltZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjYxNgorbXNnaWQgIi0tbG9jYWwgY2FuIG9ubHkgYmUgdXNlZCBpbnNpZGUgYSBnaXQgcmVwb3NpdG9yeSIKK21zZ3N0ciAiz4TOvyAtLWxvY2FsIM68z4DOv8+BzrXOryDOvc6xIM+Hz4HOt8+DzrnOvM6/z4DOv865zrfOuM61zq8gzrzPjM69zr8gzrzOrc+DzrEgz4POtSDOsc+Azr/OuM61z4TOrs+BzrnOvyBnaXQiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjE5Cittc2dpZCAiLS1ibG9iIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCittc2dzdHIgIs+Ezr8gLS1ibG9iIM68z4DOv8+BzrXOryDOvc6xIM+Hz4HOt8+DzrnOvM6/z4DOv865zrfOuM61zq8gzrzPjM69zr8gzrzOrc+DzrEgz4POtSDOsc+Azr/OuM61z4TOrs+BzrnOvyBnaXQiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjM4Cittc2dpZCAiJEhPTUUgbm90IHNldCIKK21zZ3N0ciAizqTOvyAkSE9NRSDOtM61zr0gzq3Ph861zrkgzr/Pgc65z4PPhM61zq8iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjU4Cittc2dpZCAiIgorIi0td29ya3RyZWUgY2Fubm90IGJlIHVzZWQgd2l0aCBtdWx0aXBsZSB3b3JraW5nIHRyZWVzIHVubGVzcyB0aGUgY29uZmlnXG4iCisiZXh0ZW5zaW9uIHdvcmt0cmVlQ29uZmlnIGlzIGVuYWJsZWQuIFBsZWFzZSByZWFkIFwiQ09ORklHVVJBVElPTiBGSUxFXCJcbiIKKyJzZWN0aW9uIGluIFwiZ2l0IGhlbHAgd29ya3RyZWVcIiBmb3IgZGV0YWlscyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjY4OAorbXNnaWQgIi0tZ2V0LWNvbG9yIGFuZCB2YXJpYWJsZSB0eXBlIGFyZSBpbmNvaGVyZW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjkzCittc2dpZCAib25seSBvbmUgYWN0aW9uIGF0IGEgdGltZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjcwNgorbXNnaWQgIi0tbmFtZS1vbmx5IGlzIG9ubHkgYXBwbGljYWJsZSB0byAtLWxpc3Qgb3IgLS1nZXQtcmVnZXhwIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzEyCittc2dpZCAiIgorIi0tc2hvdy1vcmlnaW4gaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCwgYW5kIC0tIgorImxpc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb25maWcuYzo3MTgKK21zZ2lkICItLWRlZmF1bHQgaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tZ2V0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGNvbmZpZyBmaWxlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb25maWcuYzo3MzQKK21zZ2lkICJlcnJvciBwcm9jZXNzaW5nIGNvbmZpZyBmaWxlKHMpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzQ0Cittc2dpZCAiZWRpdGluZyBzdGRpbiBpcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzQ2Cittc2dpZCAiZWRpdGluZyBibG9icyBpcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICLOtyDOtM65z4zPgc64z4nPg863IGJsb2IgzrTOtc69IM+Fz4DOv8+Dz4TOt8+Bzq/Ots61z4TOsc65IgorCisjOiBidWlsdGluL2NvbmZpZy5jOjc2MAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGNvbmZpZ3VyYXRpb24gZmlsZSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjc3MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY2Fubm90IG92ZXJ3cml0ZSBtdWx0aXBsZSB2YWx1ZXMgd2l0aCBhIHNpbmdsZSB2YWx1ZVxuIgorIiAgICAgICBVc2UgYSByZWdleHAsIC0tYWRkIG9yIC0tcmVwbGFjZS1hbGwgdG8gY2hhbmdlICVzLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjg0NyBidWlsdGluL2NvbmZpZy5jOjg1OAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBzdWNoIHNlY3Rpb246ICVzIgorbXNnc3RyICLOtM61zr0gz4XPgM6sz4HPh861zrkgz4TOrc+Ezr/Ouc6xIM61zr3PjM+EzrfPhM6xOiAlcyIKKworIzogYnVpbHRpbi9jb3VudC1vYmplY3RzLmM6OTAKK21zZ2lkICJnaXQgY291bnQtb2JqZWN0cyBbLXZdIFstSCB8IC0taHVtYW4tcmVhZGFibGVdIgorbXNnc3RyICJnaXQgY291bnQtb2JqZWN0cyBbLXZdIFstSCB8IC0taHVtYW4tcmVhZGFibGVdIgorCisjOiBidWlsdGluL2NvdW50LW9iamVjdHMuYzoxMDAKK21zZ2lkICJwcmludCBzaXplcyBpbiBodW1hbiByZWFkYWJsZSBmb3JtYXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3Cittc2dpZCAiZ2l0IGRlc2NyaWJlIFs8b3B0aW9ucz5dIFs8Y29tbWl0LWlzaD4uLi5dIgorbXNnc3RyICJnaXQgZGVzY3JpYmUgWzzOtc+AzrnOu86/zrPOrc+CPl0gWzzPhc+Azr/Oss6/zrvOriDOriDPhs6xzrnOvc6/zrzOtc69zrnOus6uPi4uLl0iCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyOAorbXNnaWQgImdpdCBkZXNjcmliZSBbPG9wdGlvbnM+XSAtLWRpcnR5IgorbXNnc3RyICJnaXQgZGVzY3JpYmUgWzzOtc+AzrnOu86/zrPOrc+CPl0gLS1kaXJ0eSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjYzCittc2dpZCAiaGVhZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjMKK21zZ2lkICJsaWdodHdlaWdodCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjMKK21zZ2lkICJhbm5vdGF0ZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJhbm5vdGF0ZWQgdGFnICVzIG5vdCBhdmFpbGFibGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3NworIywgYy1mb3JtYXQKK21zZ2lkICJhbm5vdGF0ZWQgdGFnICVzIGhhcyBubyBlbWJlZGRlZCBuYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFnICclcycgaXMgcmVhbGx5ICclcycgaGVyZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MzIzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHRhZyBleGFjdGx5IG1hdGNoZXMgJyVzJyIKK21zZ3N0ciAizrrOsc68zq/OsSDOtc+EzrnOus6tz4TOsSDOtM61zr0gz4TOsc65z4HOuc6szrbOtc65IM6xzrrPgc65zrLPjs+CIM68zrUgz4TOvyAnJXMnIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGV4YWN0IG1hdGNoIG9uIHJlZnMgb3IgdGFncywgc2VhcmNoaW5nIHRvIGRlc2NyaWJlXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjM3OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5pc2hlZCBzZWFyY2ggYXQgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJObyBhbm5vdGF0ZWQgdGFncyBjYW4gZGVzY3JpYmUgJyVzJy5cbiIKKyJIb3dldmVyLCB0aGVyZSB3ZXJlIHVuYW5ub3RhdGVkIHRhZ3M6IHRyeSAtLXRhZ3MuIgorbXNnc3RyICIiCisizprOsc68zq/OsSDPg8+Hzr/Ou865zrHPg868zq3Ovc63IM61z4TOuc66zq3PhM6xIM60zrXOvSDPgM61z4HOuc6zz4HOrM+GzrXOuSDPhM6/ICclcycuXG4iCisizqDOrM+BzrHPhc+EzrEsIM+Fz4DOrs+Bz4fOsc69IM68zrcgz4PPh86/zrvOuc6xz4POvM6tzr3Otc+CIM61z4TOuc66zq3PhM61z4I6IM60zr/Ous65zrzOrM+Dz4TOtSDPhM6/IC0tdGFncy4iCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk5vIHRhZ3MgY2FuIGRlc2NyaWJlICclcycuXG4iCisiVHJ5IC0tYWx3YXlzLCBvciBjcmVhdGUgc29tZSB0YWdzLiIKK21zZ3N0ciAiIgorIs6azrHOvM6vzrEgzrXPhM65zrrOrc+EzrEgzrTOtc69IM+AzrXPgc65zrPPgc6sz4bOtc65IM+Ezr8gJyVzJy5cbiIKKyLOlM6/zrrOuc68zqzPg8+EzrUgz4TOvyAtLWFsd2F5cywgzq4gzrTOt868zrnOv8+Fz4HOs86uz4PPhM61IM61z4TOuc66zq3PhM61z4IuIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgInRyYXZlcnNlZCAlbHUgY29tbWl0c1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1vcmUgdGhhbiAlaSB0YWdzIGZvdW5kOyBsaXN0ZWQgJWkgbW9zdCByZWNlbnRcbiIKKyJnYXZlIHVwIHNlYXJjaCBhdCAlc1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVzY3JpYmUgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTEzIGJ1aWx0aW4vbG9nLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdCBhIHZhbGlkIG9iamVjdCBuYW1lICVzIgorbXNnc3RyICLOnM63IM6tzrPOus+Fz4HOvyDPjM69zr/OvM6xIM6xzr3PhM65zrrOtc65zrzOrc69zr/PhSAlcyIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyMQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBuZWl0aGVyIGEgY29tbWl0IG5vciBibG9iIgorbXNnc3RyICIlcyDOtM61zr0gzrXOr869zrHOuSDOv8+Nz4TOtSDPhc+Azr/Oss6/zrvOriDOv8+Nz4TOtSBibG9iIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM1Cittc2dpZCAiZmluZCB0aGUgdGFnIHRoYXQgY29tZXMgYWZ0ZXIgdGhlIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM2Cittc2dpZCAiZGVidWcgc2VhcmNoIHN0cmF0ZWd5IG9uIHN0ZGVyciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3Cittc2dpZCAidXNlIGFueSByZWYiCittc2dzdHIgIs69zrEgzrPOr869zrXOuSDPh8+Bzq7Pg863IM6/z4DOv865zr/Phc60zq7PgM6/z4TOtSByZWYiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzgKK21zZ2lkICJ1c2UgYW55IHRhZywgZXZlbiB1bmFubm90YXRlZCIKK21zZ3N0ciAizr3OsSDOs86vzr3Otc65IM+Hz4HOrs+Dzrcgzr/PgM6/zrnOsc+DzrTOrs+Azr/PhM61IM61z4TOuc66zq3PhM6xz4IsIM6xzrrPjM68zrEgzrrOsc65IM68zrcgz4PPh86/zrvOuc6xz4POvM6tzr3Ot8+CIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM5Cittc2dpZCAiYWx3YXlzIHVzZSBsb25nIGZvcm1hdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQwCittc2dpZCAib25seSBmb2xsb3cgZmlyc3QgcGFyZW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDMKK21zZ2lkICJvbmx5IG91dHB1dCBleGFjdCBtYXRjaGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDUKK21zZ2lkICJjb25zaWRlciA8bj4gbW9zdCByZWNlbnQgdGFncyAoZGVmYXVsdDogMTApIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDcKK21zZ2lkICJvbmx5IGNvbnNpZGVyIHRhZ3MgbWF0Y2hpbmcgPHBhdHRlcm4+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDkKK21zZ2lkICJkbyBub3QgY29uc2lkZXIgdGFncyBtYXRjaGluZyA8cGF0dGVybj4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MSBidWlsdGluL25hbWUtcmV2LmM6NDI0Cittc2dpZCAic2hvdyBhYmJyZXZpYXRlZCBjb21taXQgb2JqZWN0IGFzIGZhbGxiYWNrIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTIgYnVpbHRpbi9kZXNjcmliZS5jOjU1NQorbXNnaWQgIm1hcmsiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MworbXNnaWQgImFwcGVuZCA8bWFyaz4gb24gZGlydHkgd29ya2luZyB0cmVlIChkZWZhdWx0OiBcIi1kaXJ0eVwiKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU2Cittc2dpZCAiYXBwZW5kIDxtYXJrPiBvbiBicm9rZW4gd29ya2luZyB0cmVlIChkZWZhdWx0OiBcIi1icm9rZW5cIikiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU3NAorbXNnaWQgIi0tbG9uZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFiYnJldj0wIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MDMKK21zZ2lkICJObyBuYW1lcyBmb3VuZCwgY2Fubm90IGRlc2NyaWJlIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjU0Cittc2dpZCAiLS1kaXJ0eSBpcyBpbmNvbXBhdGlibGUgd2l0aCBjb21taXQtaXNoZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjY1NgorbXNnaWQgIi0tYnJva2VuIGlzIGluY29tcGF0aWJsZSB3aXRoIGNvbW1pdC1pc2hlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmYuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnOiBub3QgYSByZWd1bGFyIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmYuYzoyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBvcHRpb246ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGlmZi5jOjM2NAorbXNnaWQgIk5vdCBhIGdpdCByZXBvc2l0b3J5IgorbXNnc3RyICLOlM61zr0gzrXOr869zrHOuSDOsc+Azr/OuM61z4TOrs+BzrnOvyBnaXQiCisKKyM6IGJ1aWx0aW4vZGlmZi5jOjQwOAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG9iamVjdCAnJXMnIGdpdmVuLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmYuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAibW9yZSB0aGFuIHR3byBibG9icyBnaXZlbjogJyVzJyIKK21zZ3N0ciAizrTPjM64zrfOus6xzr0gz4DOtc+BzrnPg8+Dz4zPhM61z4HOsSDOsc+Az4wgzrTPjc6/IGJsb2I6ICclcyciCisKKyM6IGJ1aWx0aW4vZGlmZi5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmhhbmRsZWQgb2JqZWN0ICclcycgZ2l2ZW4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzozMQorbXNnaWQgImdpdCBkaWZmdG9vbCBbPG9wdGlvbnM+XSBbPGNvbW1pdD4gWzxjb21taXQ+XV0gWy0tXSBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IGRpZmZ0b29sIFs8zrXPgM65zrvOv86zzq3Pgj5dIFs8z4XPgM6/zrLOv867zq4+IFs8z4XPgM6/zrLOv867zq4+XV0gWy0tXSBbPM60zrnOsc60z4HOv868zq4+Li4uXSIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjI2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQ6ICVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzozMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgc3ltbGluayAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIHN5bWxpbmsgZmlsZSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6MzEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIG9iamVjdCAlcyBmb3Igc3ltbGluayAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NDE0Cittc2dpZCAiIgorImNvbWJpbmVkIGRpZmYgZm9ybWF0cygnLWMnIGFuZCAnLS1jYycpIGFyZSBub3Qgc3VwcG9ydGVkIGluXG4iCisiZGlyZWN0b3J5IGRpZmYgbW9kZSgnLWQnIGFuZCAnLS1kaXItZGlmZicpLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImJvdGggZmlsZXMgbW9kaWZpZWQ6ICclcycgYW5kICclcycuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzYKK21zZ2lkICJ3b3JraW5nIHRyZWUgZmlsZSBoYXMgYmVlbiBsZWZ0LiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInRlbXBvcmFyeSBmaWxlcyBleGlzdCBpbiAnJXMnLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ4Cittc2dpZCAieW91IG1heSB3YW50IHRvIGNsZWFudXAgb3IgcmVjb3ZlciB0aGVzZS4iCittc2dzdHIgIs68z4DOv8+BzrXOr8+EzrUgzr3OsSDOtM6/zrrOuc68zqzPg861z4TOtSDOvc6xIM+EzrEgzrXOus66zrHOuM6xz4HOr8+DzrXPhM61IM6uIM69zrEgz4TOsSDOsc69zrHOus+Ezq7Pg861z4TOtS4iCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTcKK21zZ2lkICJ1c2UgYGRpZmYuZ3VpdG9vbGAgaW5zdGVhZCBvZiBgZGlmZi50b29sYCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6Njk5Cittc2dpZCAicGVyZm9ybSBhIGZ1bGwtZGlyZWN0b3J5IGRpZmYiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwMQorbXNnaWQgImRvIG5vdCBwcm9tcHQgYmVmb3JlIGxhdW5jaGluZyBhIGRpZmYgdG9vbCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzA2Cittc2dpZCAidXNlIHN5bWxpbmtzIGluIGRpci1kaWZmIG1vZGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNworbXNnaWQgInRvb2wiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOAorbXNnaWQgInVzZSB0aGUgc3BlY2lmaWVkIGRpZmYgdG9vbCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEwCittc2dpZCAicHJpbnQgYSBsaXN0IG9mIGRpZmYgdG9vbHMgdGhhdCBtYXkgYmUgdXNlZCB3aXRoIGAtLXRvb2xgIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTMKK21zZ2lkICIiCisibWFrZSAnZ2l0LWRpZmZ0b29sJyBleGl0IHdoZW4gYW4gaW52b2tlZCBkaWZmIHRvb2wgcmV0dXJucyBhIG5vbiAtIHplcm8gZXhpdCAiCisiY29kZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE2Cittc2dpZCAic3BlY2lmeSBhIGN1c3RvbSBjb21tYW5kIGZvciB2aWV3aW5nIGRpZmZzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDAKK21zZ2lkICJubyA8dG9vbD4gZ2l2ZW4gZm9yIC0tdG9vbD08dG9vbD4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc0NworbXNnaWQgIm5vIDxjbWQ+IGdpdmVuIGZvciAtLWV4dGNtZD08Y21kPiIKK21zZ3N0ciAizrTOtSDOtM+MzrjOt866zrUgPM61zr3PhM6/zrvOrj4gzrPOuc6xIM+Ezr8gLS1leHRjbWQ9PM61zr3PhM6/zrvOrj4iCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoyOQorbXNnaWQgImdpdCBmYXN0LWV4cG9ydCBbcmV2LWxpc3Qtb3B0c10iCittc2dzdHIgImdpdCBmYXN0LWV4cG9ydCBbzrXPgM65zrvOv86zzq3PgiDPgM6xz4HOrM64zrXPg863z4IgzrXOus60z4zPg861z4nOvV0iCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDg0Cittc2dpZCAic2hvdyBwcm9ncmVzcyBhZnRlciA8bj4gb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTA4NgorbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiBzaWduZWQgdGFncyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTA4OQorbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiB0YWdzIHRoYXQgdGFnIGZpbHRlcmVkIG9iamVjdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwOTIKK21zZ2lkICJEdW1wIG1hcmtzIHRvIHRoaXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTA5NAorbXNnaWQgIkltcG9ydCBtYXJrcyBmcm9tIHRoaXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTA5NgorbXNnaWQgIkZha2UgYSB0YWdnZXIgd2hlbiB0YWdzIGxhY2sgb25lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDk4Cittc2dpZCAiT3V0cHV0IGZ1bGwgdHJlZSBmb3IgZWFjaCBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExMDAKK21zZ2lkICJVc2UgdGhlIGRvbmUgZmVhdHVyZSB0byB0ZXJtaW5hdGUgdGhlIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTEwMQorbXNnaWQgIlNraXAgb3V0cHV0IG9mIGJsb2IgZGF0YSIKK21zZ3N0ciAizqDPgc6/z4PPgM6tz4HOsc+DzrcgzrXOvs+MzrTOv8+FIM+Ez4nOvSDOtM61zrTOv868zq3Ovc+Jzr0gYmxvYiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExMDIgYnVpbHRpbi9sb2cuYzoxNjAxCittc2dpZCAicmVmc3BlYyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTEwMworbXNnaWQgIkFwcGx5IHJlZnNwZWMgdG8gZXhwb3J0ZWQgcmVmcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTEwNAorbXNnaWQgImFub255bWl6ZSBvdXRwdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExMDYKK21zZ2lkICJSZWZlcmVuY2UgcGFyZW50cyB3aGljaCBhcmUgbm90IGluIGZhc3QtZXhwb3J0IHN0cmVhbSBieSBvYmplY3QgaWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExMDgKK21zZ2lkICJTaG93IG9yaWdpbmFsIG9iamVjdCBpZHMgb2YgYmxvYnMvY29tbWl0cyIKK21zZ3N0ciAizqDPgc6/zrLOv867zq4gzrHPgc+HzrnOus+Ozr0gzrHOvc6xzrPOvc+Jz4HOuc+Dz4TOuc66z47OvSDPhM+Jzr0gYmxvYi/Phc+Azr/Oss6/zrvPjs69IgorCisjOiBidWlsdGluL2ZldGNoLmM6MjgKK21zZ2lkICJnaXQgZmV0Y2ggWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCittc2dzdHIgImdpdCBmZXRjaCBbPM61z4DOuc67zr/Os86tz4I+XSBbPM6xz4DOv864zrXPhM6uz4HOuc6/PiBbPHJlZnNwZWM+Li4uXV0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoyOQorbXNnaWQgImdpdCBmZXRjaCBbPG9wdGlvbnM+XSA8Z3JvdXA+IgorbXNnc3RyICJnaXQgZmV0Y2ggWzzOtc+AzrnOu86/zrPOrc+CPl0gPM6/zrzOrM60zrE+IgorCisjOiBidWlsdGluL2ZldGNoLmM6MzAKK21zZ2lkICJnaXQgZmV0Y2ggLS1tdWx0aXBsZSBbPG9wdGlvbnM+XSBbKDxyZXBvc2l0b3J5PiB8IDxncm91cD4pLi4uXSIKK21zZ3N0ciAiZ2l0IGZldGNoIC0tbXVsdGlwbGUgWzzOtc+AzrnOu86/zrPOrc+CPl0gWyg8zrHPgM6/zrjOtc+Ezq7Pgc65zr8+IHwgPM6/zrzOrM60zrE+KS4uLl0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzozMQorbXNnaWQgImdpdCBmZXRjaCAtLWFsbCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IGZldGNoIC0tYWxsIFs8zrXPgM65zrvOv86zzq3Pgj5dIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTE1IGJ1aWx0aW4vcHVsbC5jOjE5NQorbXNnaWQgImZldGNoIGZyb20gYWxsIHJlbW90ZXMiCittc2dzdHIgIs69zrEgzrPOr869zrXOuSDOsc69zqzOus+EzrfPg863IM6xz4DPjCDPjM67zr/Phc+CIM+Ezr/Phc+CIM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/z4XPgiDOtc6+z4XPgM63z4HOtc+EzrfPhM6tz4IiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTcgYnVpbHRpbi9wdWxsLmM6MTk4Cittc2dpZCAiYXBwZW5kIHRvIC5naXQvRkVUQ0hfSEVBRCBpbnN0ZWFkIG9mIG92ZXJ3cml0aW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTkgYnVpbHRpbi9wdWxsLmM6MjAxCittc2dpZCAicGF0aCB0byB1cGxvYWQgcGFjayBvbiByZW1vdGUgZW5kIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMjAKK21zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgbG9jYWwgcmVmZXJlbmNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMjIKK21zZ2lkICJmZXRjaCBmcm9tIG11bHRpcGxlIHJlbW90ZXMiCittc2dzdHIgIs69zrEgzrPOr869zrXOuSDOsc69zqzOus+EzrfPg863IM6xz4DPjCDPgM6/zrvOu86xz4DOu86/z43PgiDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3Ov8+Fz4IgzrXOvs+Fz4DOt8+BzrXPhM63z4TOrc+CIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTI0IGJ1aWx0aW4vcHVsbC5jOjIwNQorbXNnaWQgImZldGNoIGFsbCB0YWdzIGFuZCBhc3NvY2lhdGVkIG9iamVjdHMiCittc2dzdHIgIs69zrEgzrPOr869zrXOuSDOsc69zqzOus+EzrfPg863IM+MzrvPic69IM+Ez4nOvSDOtc+EzrnOus61z4TPjs69IM66zrHOuSDPg8+HzrXPhM65zrrPjs69IM6xzr3PhM65zrrOtc65zrzOrc69z4nOvSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjEyNgorbXNnaWQgImRvIG5vdCBmZXRjaCBhbGwgdGFncyAoLS1uby10YWdzKSIKK21zZ3N0ciAizr3OsSDOvM63IM6zzq/Ovc61zrkgzrHOvc6szrrPhM63z4POtyDPjM67z4nOvSDPhM+Jzr0gzrXPhM65zrrOtc+Ez47OvSAoLS1uby10YWdzKSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjEyOAorbXNnaWQgIm51bWJlciBvZiBzdWJtb2R1bGVzIGZldGNoZWQgaW4gcGFyYWxsZWwiCittc2dzdHIgIs6xz4HOuc64zrzPjM+CIM+Fz4DOv861zr3Ov8+Ezq7PhM+Jzr0gz4DPgc6/z4Igz4DOsc+BzqzOu867zrfOu863IM6xzr3OrM66z4TOt8+DzrciCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMzAgYnVpbHRpbi9wdWxsLmM6MjA4Cittc2dpZCAicHJ1bmUgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIG5vIGxvbmdlciBvbiByZW1vdGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjEzMgorbXNnaWQgInBydW5lIGxvY2FsIHRhZ3Mgbm8gbG9uZ2VyIG9uIHJlbW90ZSBhbmQgY2xvYmJlciBjaGFuZ2VkIHRhZ3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjEzMyBidWlsdGluL2ZldGNoLmM6MTU2IGJ1aWx0aW4vcHVsbC5jOjEzMworbXNnaWQgIm9uLWRlbWFuZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTM0Cittc2dpZCAiY29udHJvbCByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyIKK21zZ3N0ciAizq3Ou861zrPPh86/z4IgzrHOvc6xzrTPgc6/zrzOuc66zq7PgiDOsc69zqzOus+EzrfPg863z4Igz4TPic69IM+Fz4DOv861zr3Ov8+Ezq7PhM+Jzr0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMzggYnVpbHRpbi9wdWxsLmM6MjE2Cittc2dpZCAia2VlcCBkb3dubG9hZGVkIHBhY2siCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MAorbXNnaWQgImFsbG93IHVwZGF0aW5nIG9mIEhFQUQgcmVmIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMgYnVpbHRpbi9mZXRjaC5jOjE0OSBidWlsdGluL3B1bGwuYzoyMTkKK21zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IGNsb25lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDUKK21zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IHJlcG9zaXRvcnkgYmFzZWQgb24gdGltZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTUxIGJ1aWx0aW4vcHVsbC5jOjIyMgorbXNnaWQgImNvbnZlcnQgdG8gYSBjb21wbGV0ZSByZXBvc2l0b3J5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQKK21zZ2lkICJwcmVwZW5kIHRoaXMgdG8gc3VibW9kdWxlIHBhdGggb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTcKK21zZ2lkICIiCisiZGVmYXVsdCBmb3IgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMgKGxvd2VyIHByaW9yaXR5IHRoYW4gY29uZmlnICIKKyJmaWxlcykiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE2MSBidWlsdGluL3B1bGwuYzoyMjUKK21zZ2lkICJhY2NlcHQgcmVmcyB0aGF0IHVwZGF0ZSAuZ2l0L3NoYWxsb3ciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE2MiBidWlsdGluL3B1bGwuYzoyMjcKK21zZ2lkICJyZWZtYXAiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE2MyBidWlsdGluL3B1bGwuYzoyMjgKK21zZ2lkICJzcGVjaWZ5IGZldGNoIHJlZm1hcCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTY0IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzcgYnVpbHRpbi9wdXNoLmM6NTg1CisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE3MgorbXNnaWQgInNlcnZlci1zcGVjaWZpYyIKK21zZ3N0ciAizrPOuc6xIM+Dz4XOs866zrXOus+BzrnOvM6tzr3OvyDOtc6+z4XPgM63z4HOtc+EzrfPhM6uIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTY0IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzcgYnVpbHRpbi9wdXNoLmM6NTg1CisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE3MworbXNnaWQgIm9wdGlvbiB0byB0cmFuc21pdCIKK21zZ3N0ciAizrXPgM65zrvOv86zzq4gzr3OsSDOvM61z4TOsc60zr/OuM61zq8iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzAKK21zZ2lkICJyZXBvcnQgdGhhdCB3ZSBoYXZlIG9ubHkgb2JqZWN0cyByZWFjaGFibGUgZnJvbSB0aGlzIG9iamVjdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6NDY5Cittc2dpZCAiQ291bGRuJ3QgZmluZCByZW1vdGUgcmVmIEhFQUQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25maWd1cmF0aW9uIGZldGNoLm91dHB1dCBjb250YWlucyBpbnZhbGlkIHZhbHVlICVzIgorbXNnc3RyICLOtyDPgc+NzrjOvM65z4POtyBmZXRjaC5vdXRwdXQgz4DOtc+BzrnOrc+HzrXOuSDOvM63IM6tzrPOus+Fz4HOtyDPhM65zrzOriAlcyIKKworIzogYnVpbHRpbi9mZXRjaC5jOjcwNQorIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgJXMgbm90IGZvdW5kIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3MDkKK21zZ2lkICJbdXAgdG8gZGF0ZV0iCittc2dzdHIgIlvPgM67zq7Pgc+Jz4IgzrXOvc6uzrzOtc+Bzr9dIgorCisjOiBidWlsdGluL2ZldGNoLmM6NzIyIGJ1aWx0aW4vZmV0Y2guYzo3MzggYnVpbHRpbi9mZXRjaC5jOjgwMQorbXNnaWQgIltyZWplY3RlZF0iCittc2dzdHIgIlvOsc+Azr/Pgc+Bzq/Phs64zrfOus61XSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjcyMworbXNnaWQgImNhbid0IGZldGNoIGluIGN1cnJlbnQgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3MzMKK21zZ2lkICJbdGFnIHVwZGF0ZV0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjczNCBidWlsdGluL2ZldGNoLmM6NzcxIGJ1aWx0aW4vZmV0Y2guYzo3ODQKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3OTYKK21zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIGxvY2FsIHJlZiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6NzM4Cittc2dpZCAid291bGQgY2xvYmJlciBleGlzdGluZyB0YWciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjc2MAorbXNnaWQgIltuZXcgdGFnXSIKK21zZ3N0ciAiW869zq3OsSDOtc+EzrnOus6tz4TOsV0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NjMKK21zZ2lkICJbbmV3IGJyYW5jaF0iCittc2dzdHIgIlvOvc6tzr/PgiDOus67zqzOtM6/z4JdIgorCisjOiBidWlsdGluL2ZldGNoLmM6NzY2Cittc2dpZCAiW25ldyByZWZdIgorbXNnc3RyICJbzr3Orc6/IHJlZl0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3OTYKK21zZ2lkICJmb3JjZWQgdXBkYXRlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MDEKK21zZ2lkICJub24tZmFzdC1mb3J3YXJkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZGlkIG5vdCBzZW5kIGFsbCBuZWNlc3Nhcnkgb2JqZWN0c1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVqZWN0ICVzIGJlY2F1c2Ugc2hhbGxvdyByb290cyBhcmUgbm90IGFsbG93ZWQgdG8gYmUgdXBkYXRlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6OTU5IGJ1aWx0aW4vZmV0Y2guYzoxMDgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkZyb20gJS4qc1xuIgorbXNnc3RyICLOkc+Az4wgz4TOvyAlLipzXG4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo5NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNvbWUgbG9jYWwgcmVmcyBjb3VsZCBub3QgYmUgdXBkYXRlZDsgdHJ5IHJ1bm5pbmdcbiIKKyIgJ2dpdCByZW1vdGUgcHJ1bmUgJXMnIHRvIHJlbW92ZSBhbnkgb2xkLCBjb25mbGljdGluZyBicmFuY2hlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTA1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgICAoJXMgd2lsbCBiZWNvbWUgZGFuZ2xpbmcpIgorbXNnc3RyICIgICAoz4TOvyAlcyDOuM6xIM68zrXOr869zrXOuSDOtc66zrrPgc61zrzOrc+CKSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjEwNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgKCVzIGhhcyBiZWNvbWUgZGFuZ2xpbmcpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMDg0Cittc2dpZCAiW2RlbGV0ZWRdIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMDg1IGJ1aWx0aW4vcmVtb3RlLmM6MTAzNgorbXNnaWQgIihub25lKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJSZWZ1c2luZyB0byBmZXRjaCBpbnRvIGN1cnJlbnQgYnJhbmNoICVzIG9mIG5vbi1iYXJlIHJlcG9zaXRvcnkiCittc2dzdHIgIiIKKyLOkc+Bzr3Ov8+NzrzOsc65IM69zrEgzrrOrM69z4kgzrHOvc6szrrPhM63z4POtyDOvM6tz4POsSDPg8+Ezr/OvSDPhM+Bzq3Ph86/zr3PhM6xIM66zrvOrM60zr8gJXMgzrzOtyDOs8+FzrzOvc6/z40gzrHPgM6/zrjOtc+EzrfPgc6vzr/PhSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjExMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiT3B0aW9uIFwiJXNcIiB2YWx1ZSBcIiVzXCIgaXMgbm90IHZhbGlkIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJPcHRpb24gXCIlc1wiIGlzIGlnbm9yZWQgZm9yICVzXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmV0Y2hpbmcgJXNcbiIKK21zZ3N0ciAizpHOvc6szrrPhM63z4POtyAlc1xuIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzNiBidWlsdGluL3JlbW90ZS5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgZmV0Y2ggJXMiCittc2dzdHIgIs6UzrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ezq4gzrcgzrHOvc6szrrPhM63z4POtyDPhM6/z4UgJXMiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDgyCittc2dpZCAiIgorIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gZXh0ZW5zaW9ucy4iCisicGFydGlhbENsb25lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTA2Cittc2dpZCAiIgorIk5vIHJlbW90ZSByZXBvc2l0b3J5IHNwZWNpZmllZC4gIFBsZWFzZSwgc3BlY2lmeSBlaXRoZXIgYSBVUkwgb3IgYVxuIgorInJlbW90ZSBuYW1lIGZyb20gd2hpY2ggbmV3IHJldmlzaW9ucyBzaG91bGQgYmUgZmV0Y2hlZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE1NDMKK21zZ2lkICJZb3UgbmVlZCB0byBzcGVjaWZ5IGEgdGFnIG5hbWUuIgorbXNnc3RyICLOp8+BzrXOuc6szrbOtc+EzrHOuSDOvc6xIM6/z4HOr8+DzrXPhM61IM6tzr3OsSDPjM69zr/OvM6xIM61z4TOuc66zq3PhM6xz4IuIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTU5MgorbXNnaWQgIk5lZ2F0aXZlIGRlcHRoIGluIC0tZGVlcGVuIGlzIG5vdCBzdXBwb3J0ZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE1OTQKK21zZ2lkICItLWRlZXBlbiBhbmQgLS1kZXB0aCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTk5Cittc2dpZCAiLS1kZXB0aCBhbmQgLS11bnNoYWxsb3cgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE2MDEKK21zZ2lkICItLXVuc2hhbGxvdyBvbiBhIGNvbXBsZXRlIHJlcG9zaXRvcnkgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTYxNworbXNnaWQgImZldGNoIC0tYWxsIGRvZXMgbm90IHRha2UgYSByZXBvc2l0b3J5IGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjE5Cittc2dpZCAiZmV0Y2ggLS1hbGwgZG9lcyBub3QgbWFrZSBzZW5zZSB3aXRoIHJlZnNwZWNzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHN1Y2ggcmVtb3RlIG9yIHJlbW90ZSBncm91cDogJXMiCittc2dzdHIgIiIKKyLOlM61zr0gz4XPgM6sz4HPh861zrkgz4TOrc+Ezr/Ouc6/z4IgzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zr/PgiDOtc6+z4XPgM63z4HOtc+EzrfPhM6uz4Igzq4gzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zrcgzr/OvM6szrTOsTogJXMiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjM1Cittc2dpZCAiRmV0Y2hpbmcgYSBncm91cCBhbmQgc3BlY2lmeWluZyByZWZzcGVjcyBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjUxCittc2dpZCAiIgorIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gZXh0ZW5zaW9ucy4iCisicGFydGlhbGNsb25lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjE4Cittc2dpZCAiIgorImdpdCBmbXQtbWVyZ2UtbXNnIFstbSA8bWVzc2FnZT5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlIDxmaWxlPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcyCittc2dpZCAicG9wdWxhdGUgbG9nIHdpdGggYXQgbW9zdCA8bj4gZW50cmllcyBmcm9tIHNob3J0bG9nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NQorbXNnaWQgImFsaWFzIGZvciAtLWxvZyAoZGVwcmVjYXRlZCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc4Cittc2dpZCAidGV4dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzkKK21zZ2lkICJ1c2UgPHRleHQ+IGFzIHN0YXJ0IG9mIG1lc3NhZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjgwCittc2dpZCAiZmlsZSB0byByZWFkIGZyb20iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzoxMAorbXNnaWQgImdpdCBmb3ItZWFjaC1yZWYgWzxvcHRpb25zPl0gWzxwYXR0ZXJuPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzoxMQorbXNnaWQgImdpdCBmb3ItZWFjaC1yZWYgWy0tcG9pbnRzLWF0IDxvYmplY3Q+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjEyCittc2dpZCAiZ2l0IGZvci1lYWNoLXJlZiBbKC0tbWVyZ2VkIHwgLS1uby1tZXJnZWQpIFs8Y29tbWl0Pl1dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MTMKK21zZ2lkICJnaXQgZm9yLWVhY2gtcmVmIFstLWNvbnRhaW5zIFs8Y29tbWl0Pl1dIFstLW5vLWNvbnRhaW5zIFs8Y29tbWl0Pl1dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MjgKK21zZ2lkICJxdW90ZSBwbGFjZWhvbGRlcnMgc3VpdGFibHkgZm9yIHNoZWxscyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjMwCittc2dpZCAicXVvdGUgcGxhY2Vob2xkZXJzIHN1aXRhYmx5IGZvciBwZXJsIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzIKK21zZ2lkICJxdW90ZSBwbGFjZWhvbGRlcnMgc3VpdGFibHkgZm9yIHB5dGhvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM0Cittc2dpZCAicXVvdGUgcGxhY2Vob2xkZXJzIHN1aXRhYmx5IGZvciBUY2wiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozNworbXNnaWQgInNob3cgb25seSA8bj4gbWF0Y2hlZCByZWZzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzkgYnVpbHRpbi90YWcuYzo0MjQKK21zZ2lkICJyZXNwZWN0IGZvcm1hdCBjb2xvcnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MworbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBwb2ludHMgYXQgdGhlIGdpdmVuIG9iamVjdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ1Cittc2dpZCAicHJpbnQgb25seSByZWZzIHRoYXQgYXJlIG1lcmdlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ2Cittc2dpZCAicHJpbnQgb25seSByZWZzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NworbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBjb250YWluIHRoZSBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OAorbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6ODggYnVpbHRpbi9mc2NrLmM6MTYwIGJ1aWx0aW4vZnNjay5jOjE2MQorbXNnaWQgInVua25vd24iCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gZXJyb3IgaW4gdHJlZSAwMWJmZGE6IDxtb3JlIGV4cGxhbmF0aW9uPgorIzogYnVpbHRpbi9mc2NrLmM6MTIwIGJ1aWx0aW4vZnNjay5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiAlcyAlczogJXMiCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gd2FybmluZyBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FybmluZyBpbiAlcyAlczogJXMiCittc2dzdHIgIs+Az4HOv8+Dzr/Ph86uIM+Dz4TOvyAlcyAlczogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE1NyBidWlsdGluL2ZzY2suYzoxNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYnJva2VuIGxpbmsgZnJvbSAlN3MgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6MTY4Cittc2dpZCAid3Jvbmcgb2JqZWN0IHR5cGUgaW4gbGluayIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImJyb2tlbiBsaW5rIGZyb20gJTdzICVzXG4iCisiICAgICAgICAgICAgICB0byAlN3MgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVhY2hhYmxlICVzICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjI5OAorIywgYy1mb3JtYXQKK21zZ2lkICJkYW5nbGluZyAlcyAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzozMDcKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGxvc3QtZm91bmQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIGNvbm5lY3Rpdml0eSAoJWQgb2JqZWN0cykiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6MzcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjM3NgorbXNnaWQgImJyb2tlbiBsaW5rcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzozODUKKyMsIGMtZm9ybWF0Cittc2dpZCAicm9vdCAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFnZ2VkICVzICVzICglcykgaW4gJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgY29ycnVwdCBvciBtaXNzaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCByZWZsb2cgZW50cnkgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIHJlZmxvZyAlcy0+JXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHNoYTEgcG9pbnRlciAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo1MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG5vdCBhIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo1NTcKK21zZ2lkICJub3RpY2U6IE5vIGRlZmF1bHQgcmVmZXJlbmNlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3Npbmc6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvdWxkIG5vdCBiZSBwYXJzZWQ6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYwNQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgc2hhMSBmaWxlOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo2MjAKK21zZ2lkICJDaGVja2luZyBvYmplY3QgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYyMworbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcmllcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo2MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgbGluayIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo2NDMgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODMzCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgJXMiCittc2dzdHIgIs68zrcgzq3Os866z4XPgc6/ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo2NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcG9pbnRzIHRvIHNvbWV0aGluZyBzdHJhbmdlICglcykiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NjU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZXRhY2hlZCBIRUFEIHBvaW50cyBhdCBub3RoaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY2MAorIywgYy1mb3JtYXQKK21zZ2lkICJub3RpY2U6ICVzIHBvaW50cyB0byBhbiB1bmJvcm4gYnJhbmNoICglcykiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NjcyCittc2dpZCAiQ2hlY2tpbmcgY2FjaGUgdHJlZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo2NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyIGluIGNhY2hlLXRyZWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6Njg4Cittc2dpZCAibm9uLXRyZWUgaW4gY2FjaGUtdHJlZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo3MTkKK21zZ2lkICJnaXQgZnNjayBbPG9wdGlvbnM+XSBbPG9iamVjdD4uLi5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcyNQorbXNnaWQgInNob3cgdW5yZWFjaGFibGUgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo3MjYKK21zZ2lkICJzaG93IGRhbmdsaW5nIG9iamVjdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NzI3Cittc2dpZCAicmVwb3J0IHRhZ3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NzI4Cittc2dpZCAicmVwb3J0IHJvb3Qgbm9kZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NzI5Cittc2dpZCAibWFrZSBpbmRleCBvYmplY3RzIGhlYWQgbm9kZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NzMwCittc2dpZCAibWFrZSByZWZsb2dzIGhlYWQgbm9kZXMgKGRlZmF1bHQpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjczMQorbXNnaWQgImFsc28gY29uc2lkZXIgcGFja3MgYW5kIGFsdGVybmF0ZSBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjczMgorbXNnaWQgImNoZWNrIG9ubHkgY29ubmVjdGl2aXR5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjczMworbXNnaWQgImVuYWJsZSBtb3JlIHN0cmljdCBjaGVja2luZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo3MzUKK21zZ2lkICJ3cml0ZSBkYW5nbGluZyBvYmplY3RzIGluIC5naXQvbG9zdC1mb3VuZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo3MzYgYnVpbHRpbi9wcnVuZS5jOjExMAorbXNnaWQgInNob3cgcHJvZ3Jlc3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NzM3Cittc2dpZCAic2hvdyB2ZXJib3NlIG5hbWVzIGZvciByZWFjaGFibGUgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo3OTcKK21zZ2lkICJDaGVja2luZyBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjgyNQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IG1pc3NpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6ODM3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFyYW1ldGVyOiBleHBlY3RlZCBzaGExLCBnb3QgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2djLmM6MzQKK21zZ2lkICJnaXQgZ2MgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCBnYyBbPM61z4DOuc67zr/Os86tz4I+XSIKKworIzogYnVpbHRpbi9nYy5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBmc3RhdCAlczogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9nYy5jOjQ2MSBidWlsdGluL2luaXQtZGIuYzo1NQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ2MuYzo0NzAgYnVpbHRpbi9ub3Rlcy5jOjI0MCBidWlsdGluL3RhZy5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ2MuYzo0NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBsYXN0IGdjIHJ1biByZXBvcnRlZCB0aGUgZm9sbG93aW5nLiBQbGVhc2UgY29ycmVjdCB0aGUgcm9vdCBjYXVzZVxuIgorImFuZCByZW1vdmUgJXMuXG4iCisiQXV0b21hdGljIGNsZWFudXAgd2lsbCBub3QgYmUgcGVyZm9ybWVkIHVudGlsIHRoZSBmaWxlIGlzIHJlbW92ZWQuXG4iCisiXG4iCisiJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9nYy5jOjUxOQorbXNnaWQgInBydW5lIHVucmVmZXJlbmNlZCBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ2MuYzo1MjEKK21zZ2lkICJiZSBtb3JlIHRob3JvdWdoIChpbmNyZWFzZWQgcnVudGltZSkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9nYy5jOjUyMgorbXNnaWQgImVuYWJsZSBhdXRvLWdjIG1vZGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9nYy5jOjUyNQorbXNnaWQgImZvcmNlIHJ1bm5pbmcgZ2MgZXZlbiBpZiB0aGVyZSBtYXkgYmUgYW5vdGhlciBnYyBydW5uaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ2MuYzo1MjgKK21zZ2lkICJyZXBhY2sgYWxsIG90aGVyIHBhY2tzIGV4Y2VwdCB0aGUgbGFyZ2VzdCBwYWNrIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ2MuYzo1NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIGdjLmxvZ2V4cGlyeSB2YWx1ZSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2djLmM6NTU2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSBwcnVuZSBleHBpcnkgdmFsdWUgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9nYy5jOjU3NgorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRvIHBhY2tpbmcgdGhlIHJlcG9zaXRvcnkgaW4gYmFja2dyb3VuZCBmb3Igb3B0aW11bSBwZXJmb3JtYW5jZS5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2djLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dG8gcGFja2luZyB0aGUgcmVwb3NpdG9yeSBmb3Igb3B0aW11bSBwZXJmb3JtYW5jZS5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2djLmM6NTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlNlZSBcImdpdCBoZWxwIGdjXCIgZm9yIG1hbnVhbCBob3VzZWtlZXBpbmcuXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9nYy5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZ2MgaXMgYWxyZWFkeSBydW5uaW5nIG9uIG1hY2hpbmUgJyVzJyBwaWQgJTxQUkl1TUFYPiAodXNlIC0tZm9yY2UgaWYgbm90KSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2djLmM6NjcyCittc2dpZCAiIgorIlRoZXJlIGFyZSB0b28gbWFueSB1bnJlYWNoYWJsZSBsb29zZSBvYmplY3RzOyBydW4gJ2dpdCBwcnVuZScgdG8gcmVtb3ZlIHRoZW0uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjI5Cittc2dpZCAiZ2l0IGdyZXAgWzxvcHRpb25zPl0gWy1lXSA8cGF0dGVybj4gWzxyZXY+Li4uXSBbWy0tXSA8cGF0aD4uLi5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjIyNQorIywgYy1mb3JtYXQKK21zZ2lkICJncmVwOiBmYWlsZWQgdG8gY3JlYXRlIHRocmVhZDogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgbnVtYmVyIG9mIHRocmVhZHMgc3BlY2lmaWVkICglZCkgZm9yICVzIgorbXNnc3RyICIiCisKKyMuIFRSQU5TTEFUT1JTOiAlcyBpcyB0aGUgY29uZmlndXJhdGlvbgorIy4gdmFyaWFibGUgZm9yIHR3ZWFraW5nIHRocmVhZHMsIGN1cnJlbnRseQorIy4gZ3JlcC50aHJlYWRzCisjLgorIzogYnVpbHRpbi9ncmVwLmM6Mjg3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MDYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY5NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzE3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHRocmVhZHMgc3VwcG9ydCwgaWdub3JpbmcgJXMiCittc2dzdHIgIs60zrXOvSDPhc+Azr/Pg8+EzrfPgc6vzrbOv869z4TOsc65IM69zq7OvM6xz4TOsSwgz4DOsc+BzrHOss67zq3PgM61z4TOsc65IM+Ezr8gJXMiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjQ2NiBidWlsdGluL2dyZXAuYzo1OTAgYnVpbHRpbi9ncmVwLmM6NjMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHRyZWUgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo2NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGdyZXAgZnJvbSBvYmplY3Qgb2YgdHlwZSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAic3dpdGNoIGAlYycgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo4MTEKK21zZ2lkICJzZWFyY2ggaW4gaW5kZXggaW5zdGVhZCBvZiBpbiB0aGUgd29yayB0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxMworbXNnaWQgImZpbmQgaW4gY29udGVudHMgbm90IG1hbmFnZWQgYnkgZ2l0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxNQorbXNnaWQgInNlYXJjaCBpbiBib3RoIHRyYWNrZWQgYW5kIHVudHJhY2tlZCBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo4MTcKK21zZ2lkICJpZ25vcmUgZmlsZXMgc3BlY2lmaWVkIHZpYSAnLmdpdGlnbm9yZSciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODE5Cittc2dpZCAicmVjdXJzaXZlbHkgc2VhcmNoIGluIGVhY2ggc3VibW9kdWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyMgorbXNnaWQgInNob3cgbm9uLW1hdGNoaW5nIGxpbmVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyNAorbXNnaWQgImNhc2UgaW5zZW5zaXRpdmUgbWF0Y2hpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODI2Cittc2dpZCAibWF0Y2ggcGF0dGVybnMgb25seSBhdCB3b3JkIGJvdW5kYXJpZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODI4Cittc2dpZCAicHJvY2VzcyBiaW5hcnkgZmlsZXMgYXMgdGV4dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo4MzAKK21zZ2lkICJkb24ndCBtYXRjaCBwYXR0ZXJucyBpbiBiaW5hcnkgZmlsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODMzCittc2dpZCAicHJvY2VzcyBiaW5hcnkgZmlsZXMgd2l0aCB0ZXh0Y29udiBmaWx0ZXJzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgzNQorbXNnaWQgInNlYXJjaCBpbiBzdWJkaXJlY3RvcmllcyAoZGVmYXVsdCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODM3Cittc2dpZCAiZGVzY2VuZCBhdCBtb3N0IDxkZXB0aD4gbGV2ZWxzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0MQorbXNnaWQgInVzZSBleHRlbmRlZCBQT1NJWCByZWd1bGFyIGV4cHJlc3Npb25zIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NAorbXNnaWQgInVzZSBiYXNpYyBQT1NJWCByZWd1bGFyIGV4cHJlc3Npb25zIChkZWZhdWx0KSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo4NDcKK21zZ2lkICJpbnRlcnByZXQgcGF0dGVybnMgYXMgZml4ZWQgc3RyaW5ncyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo4NTAKK21zZ2lkICJ1c2UgUGVybC1jb21wYXRpYmxlIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODUzCittc2dpZCAic2hvdyBsaW5lIG51bWJlcnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODU0Cittc2dpZCAic2hvdyBjb2x1bW4gbnVtYmVyIG9mIGZpcnN0IG1hdGNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1NQorbXNnaWQgImRvbid0IHNob3cgZmlsZW5hbWVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1NgorbXNnaWQgInNob3cgZmlsZW5hbWVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1OAorbXNnaWQgInNob3cgZmlsZW5hbWVzIHJlbGF0aXZlIHRvIHRvcCBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODYwCittc2dpZCAic2hvdyBvbmx5IGZpbGVuYW1lcyBpbnN0ZWFkIG9mIG1hdGNoaW5nIGxpbmVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2MgorbXNnaWQgInN5bm9ueW0gZm9yIC0tZmlsZXMtd2l0aC1tYXRjaGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2NQorbXNnaWQgInNob3cgb25seSB0aGUgbmFtZXMgb2YgZmlsZXMgd2l0aG91dCBtYXRjaCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo4NjcKK21zZ2lkICJwcmludCBOVUwgYWZ0ZXIgZmlsZW5hbWVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3MAorbXNnaWQgInNob3cgb25seSBtYXRjaGluZyBwYXJ0cyBvZiBhIGxpbmUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODcyCittc2dpZCAic2hvdyB0aGUgbnVtYmVyIG9mIG1hdGNoZXMgaW5zdGVhZCBvZiBtYXRjaGluZyBsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo4NzMKK21zZ2lkICJoaWdobGlnaHQgbWF0Y2hlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo4NzUKK21zZ2lkICJwcmludCBlbXB0eSBsaW5lIGJldHdlZW4gbWF0Y2hlcyBmcm9tIGRpZmZlcmVudCBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo4NzcKK21zZ2lkICJzaG93IGZpbGVuYW1lIG9ubHkgb25jZSBhYm92ZSBtYXRjaGVzIGZyb20gc2FtZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4MAorbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYmVmb3JlIGFuZCBhZnRlciBtYXRjaGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4MworbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYmVmb3JlIG1hdGNoZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODg1Cittc2dpZCAic2hvdyA8bj4gY29udGV4dCBsaW5lcyBhZnRlciBtYXRjaGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4NworbXNnaWQgInVzZSA8bj4gd29ya2VyIHRocmVhZHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODg4Cittc2dpZCAic2hvcnRjdXQgZm9yIC1DIE5VTSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo4OTEKK21zZ2lkICJzaG93IGEgbGluZSB3aXRoIHRoZSBmdW5jdGlvbiBuYW1lIGJlZm9yZSBtYXRjaGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5MworbXNnaWQgInNob3cgdGhlIHN1cnJvdW5kaW5nIGZ1bmN0aW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5NgorbXNnaWQgInJlYWQgcGF0dGVybnMgZnJvbSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5OAorbXNnaWQgIm1hdGNoIDxwYXR0ZXJuPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo5MDAKK21zZ2lkICJjb21iaW5lIHBhdHRlcm5zIHNwZWNpZmllZCB3aXRoIC1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxMgorbXNnaWQgImluZGljYXRlIGhpdCB3aXRoIGV4aXQgc3RhdHVzIHdpdGhvdXQgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxNAorbXNnaWQgInNob3cgb25seSBtYXRjaGVzIGZyb20gZmlsZXMgdGhhdCBtYXRjaCBhbGwgcGF0dGVybnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6OTE2Cittc2dpZCAic2hvdyBwYXJzZSB0cmVlIGZvciBncmVwIGV4cHJlc3Npb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6OTIwCittc2dpZCAicGFnZXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6OTIwCittc2dpZCAic2hvdyBtYXRjaGluZyBmaWxlcyBpbiB0aGUgcGFnZXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6OTI0Cittc2dpZCAiYWxsb3cgY2FsbGluZyBvZiBncmVwKDEpIChpZ25vcmVkIGJ5IHRoaXMgYnVpbGQpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjk4OAorbXNnaWQgIm5vIHBhdHRlcm4gZ2l2ZW4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6MTAyNAorbXNnaWQgIi0tbm8taW5kZXggb3IgLS11bnRyYWNrZWQgY2Fubm90IGJlIHVzZWQgd2l0aCByZXZzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgcmV2aXNpb246ICVzIgorbXNnc3RyICLOtM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM6uIM63IM+EzrHPjc+EzrnPg863IM+EzrfPgiDOrc66zrTOv8+DzrfPgjogJXMiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjMKK21zZ2lkICJpbnZhbGlkIG9wdGlvbiBjb21iaW5hdGlvbiwgaWdub3JpbmcgLS10aHJlYWRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAwCittc2dpZCAibm8gdGhyZWFkcyBzdXBwb3J0LCBpZ25vcmluZyAtLXRocmVhZHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6MTA2OSBidWlsdGluL2luZGV4LXBhY2suYzoxNTAzIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcxNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG51bWJlciBvZiB0aHJlYWRzIHNwZWNpZmllZCAoJWQpIgorbXNnc3RyICLOtM+MzrjOt866zrUgzrzOtyDOrc6zzrrPhc+Bzr/PgiDOsc+BzrnOuM68z4zPgiDOvc63zrzOrM+Ez4nOvSAoJWQpIgorCisjOiBidWlsdGluL2dyZXAuYzoxMDkyCittc2dpZCAiLS1vcGVuLWZpbGVzLWluLXBhZ2VyIG9ubHkgd29ya3Mgb24gdGhlIHdvcmt0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExMTUKK21zZ2lkICJvcHRpb24gbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExMjEKK21zZ2lkICItLWNhY2hlZCBvciAtLXVudHJhY2tlZCBjYW5ub3QgYmUgdXNlZCB3aXRoIC0tbm8taW5kZXgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ncmVwLmM6MTEyNworbXNnaWQgIi0tW25vLV1leGNsdWRlLXN0YW5kYXJkIGNhbm5vdCBiZSB1c2VkIGZvciB0cmFja2VkIGNvbnRlbnRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExMzUKK21zZ2lkICJib3RoIC0tY2FjaGVkIGFuZCB0cmVlcyBhcmUgZ2l2ZW4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg1Cittc2dpZCAiIgorImdpdCBoYXNoLW9iamVjdCBbLXQgPHR5cGU+XSBbLXddIFstLXBhdGg9PGZpbGU+IHwgLS1uby1maWx0ZXJzXSBbLS1zdGRpbl0gIgorIlstLV0gPGZpbGU+Li4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NgorbXNnaWQgImdpdCBoYXNoLW9iamVjdCAgLS1zdGRpbi1wYXRocyIKK21zZ3N0ciAiZ2l0IGhhc2gtb2JqZWN0ICAtLXN0ZGluLXBhdGhzIgorCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKK21zZ2lkICJ0eXBlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAorbXNnaWQgIm9iamVjdCB0eXBlIgorbXNnc3RyICLPhM+Nz4DOv8+CIM6xzr3PhM65zrrOtc65zrzOrc69zr/PhSIKKworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk5Cittc2dpZCAid3JpdGUgdGhlIG9iamVjdCBpbnRvIHRoZSBvYmplY3QgZGF0YWJhc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMQorbXNnaWQgInJlYWQgdGhlIG9iamVjdCBmcm9tIHN0ZGluIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDMKK21zZ2lkICJzdG9yZSBmaWxlIGFzIGlzIHdpdGhvdXQgZmlsdGVycyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0Cittc2dpZCAiIgorImp1c3QgaGFzaCBhbnkgcmFuZG9tIGdhcmJhZ2UgdG8gY3JlYXRlIGNvcnJ1cHQgb2JqZWN0cyBmb3IgZGVidWdnaW5nIEdpdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA1Cittc2dpZCAicHJvY2VzcyBmaWxlIGFzIGl0IHdlcmUgZnJvbSB0aGlzIHBhdGgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6NDYKK21zZ2lkICJwcmludCBhbGwgYXZhaWxhYmxlIGNvbW1hbmRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaGVscC5jOjQ3Cittc2dpZCAiZXhjbHVkZSBndWlkZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6NDgKK21zZ2lkICJwcmludCBsaXN0IG9mIHVzZWZ1bCBndWlkZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6NDkKK21zZ2lkICJwcmludCBhbGwgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBuYW1lcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2hlbHAuYzo1MQorbXNnaWQgInNob3cgbWFuIHBhZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6NTIKK21zZ2lkICJzaG93IG1hbnVhbCBpbiB3ZWIgYnJvd3NlciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2hlbHAuYzo1NAorbXNnaWQgInNob3cgaW5mbyBwYWdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaGVscC5jOjU2Cittc2dpZCAicHJpbnQgY29tbWFuZCBkZXNjcmlwdGlvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2hlbHAuYzo2MQorbXNnaWQgImdpdCBoZWxwIFstLWFsbF0gWy0tZ3VpZGVzXSBbLS1tYW4gfCAtLXdlYiB8IC0taW5mb10gWzxjb21tYW5kPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIGhlbHAgZm9ybWF0ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6MTAwCittc2dpZCAiRmFpbGVkIHRvIHN0YXJ0IGVtYWNzY2xpZW50LiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2hlbHAuYzoxMTMKK21zZ2lkICJGYWlsZWQgdG8gcGFyc2UgZW1hY3NjbGllbnQgdmVyc2lvbi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgImVtYWNzY2xpZW50IHZlcnNpb24gJyVkJyB0b28gb2xkICg8IDIyKS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6MTM5IGJ1aWx0aW4vaGVscC5jOjE2MSBidWlsdGluL2hlbHAuYzoxNzEgYnVpbHRpbi9oZWxwLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBleGVjICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6MjE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyInJXMnOiBwYXRoIGZvciB1bnN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgorIlBsZWFzZSBjb25zaWRlciB1c2luZyAnbWFuLjx0b29sPi5jbWQnIGluc3RlYWQuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaGVscC5jOjIyOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJyVzJzogY21kIGZvciBzdXBwb3J0ZWQgbWFuIHZpZXdlci5cbiIKKyJQbGVhc2UgY29uc2lkZXIgdXNpbmcgJ21hbi48dG9vbD4ucGF0aCcgaW5zdGVhZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6MzQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IHVua25vd24gbWFuIHZpZXdlci4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6MzYzCittc2dpZCAibm8gbWFuIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaGVscC5jOjM3MQorbXNnaWQgIm5vIGluZm8gdmlld2VyIGhhbmRsZWQgdGhlIHJlcXVlc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6NDMwIGJ1aWx0aW4vaGVscC5jOjQ0MSBnaXQuYzozMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBhbGlhc2VkIHRvICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6NDQ0IGdpdC5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgYWxpYXMuJXMgc3RyaW5nOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2hlbHAuYzo0NzMgYnVpbHRpbi9oZWxwLmM6NTAzCisjLCBjLWZvcm1hdAorbXNnaWQgInVzYWdlOiAlcyVzIgorbXNnc3RyICLPh8+Bzq7Pg863OiAlcyVzIgorCisjOiBidWlsdGluL2hlbHAuYzo0ODcKK21zZ2lkICInZ2l0IGhlbHAgY29uZmlnJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiJ2dpdCBoZWxwIGNvbmZpZycgzrPOuc6xIM+AzrXPgc65z4PPg8+Mz4TOtc+BzrXPgiDPgM67zrfPgc6/z4bOv8+Bzq/Otc+CIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0IHR5cGUgbWlzbWF0Y2ggYXQgJXMiCittc2dzdHIgIs6xz4PPhc68z4bPic69zq/OsSDPhM+Nz4DOv8+FIM6xzr3PhM65zrrOtc65zrzOrc69zr/PhSDPg8+Ezr8gJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJkaWQgbm90IHJlY2VpdmUgZXhwZWN0ZWQgb2JqZWN0ICVzIgorbXNnc3RyICLOtM61zr0gzrXOu86uz4bOuM63IM+Ezr8gzrHOvc6xzrzOtc69z4zOvM61zr3OvyDOsc69z4TOuc66zrXOr868zrXOvc6/ICVzIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0ICVzOiBleHBlY3RlZCB0eXBlICVzLCBmb3VuZCAlcyIKK21zZ3N0ciAizrHOvc+EzrnOus61zq/OvM61zr3OvyAlczogzrHOvc6xzrzOtc69z4zPhM6xzr0gz4TPjc+Azr/PgiAlcywgzrLPgc6tzrjOt866zrUgJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZmlsbCAlZCBieXRlIgorbXNnaWRfcGx1cmFsICJjYW5ub3QgZmlsbCAlZCBieXRlcyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI1OQorbXNnaWQgImVhcmx5IEVPRiIKK21zZ3N0ciAiz4DPgc+Mz4nPgc6/IEVPRiIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjYwCittc2dpZCAicmVhZCBlcnJvciBvbiBpbnB1dCIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM6xzr3OrM6zzr3Pic+DzrfPgiDOus6xz4TOrCDPhM63zr0gzrXOuc+DzrHOs8+JzrPOriIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjcyCittc2dpZCAidXNlZCBtb3JlIGJ5dGVzIHRoYW4gd2VyZSBhdmFpbGFibGUiCittc2dzdHIgIs+Hz4HOt8+DzrnOvM6/z4DOv86vzrfPg861IM+AzrXPgc65z4PPg8+Mz4TOtc+BzrEgYnl0ZXMgzrHPgM+MIM+Mz4POsSDOrs+EzrHOvSDOtM65zrHOuM6tz4POuc68zrEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI3OSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjU5OQorbXNnaWQgInBhY2sgdG9vIGxhcmdlIGZvciBjdXJyZW50IGRlZmluaXRpb24gb2Ygb2ZmX3QiCittc2dzdHIgIs+Ezr8gz4DOsc66zq3PhM6/IM+AzrHPgc6xzrXOr869zrHOuSDOvM61zrPOrM67zr8gzrPOuc6xIM+Ezr/OvSDPhM+Bzq3Ph86/zr3PhM6xIM6/z4HOuc+DzrzPjCDPhM6/z4Ugb2ZmX3QiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI4MiBidWlsdGluL3VucGFjay1vYmplY3RzLmM6OTQKK21zZ2lkICJwYWNrIGV4Y2VlZHMgbWF4aW11bSBhbGxvd2VkIHNpemUiCittc2dzdHIgIs+Ezr8gz4DOsc66zq3PhM6/IM+Fz4DOtc+BzrLOsc6vzr3Otc65IM+Ezr8gzrzOrc6zzrnPg8+Ezr8gzrXPgM65z4TPgc61z4DPhM+MIM68zq3Os861zrjOv8+CIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyOTcgYnVpbHRpbi9yZXBhY2suYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAnJXMnIgorbXNnc3RyICLOtM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM6uIM63IM60zrfOvM65zr/Phc+BzrPOr86xIM+Ezr/PhSAnJXMnIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gcGFja2ZpbGUgJyVzJyIKK21zZ3N0ciAizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TPjCDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDPgM6xzrrOrc+Ezr/PhSAnJXMnIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMTcKK21zZ2lkICJwYWNrIHNpZ25hdHVyZSBtaXNtYXRjaCIKK21zZ3N0ciAizrHPg8+FzrzPhs+Jzr3Or86xIM+Fz4DOv86zz4HOsc+Gzq7PgiDPgM6xzrrOrc+Ezr/PhSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzE5CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2sgdmVyc2lvbiAlPFBSSXUzMj4gdW5zdXBwb3J0ZWQiCittc2dzdHIgIs60zrXOvSDPhc+Azr/Pg8+EzrfPgc6vzrbOtc+EzrHOuSDOtyDOrc66zrTOv8+DzrcgJTxQUkl1MzI+IM+Ezr/PhSDPgM6xzrrOrc+Ezr/PhSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2sgaGFzIGJhZCBvYmplY3QgYXQgb2Zmc2V0ICU8UFJJdU1BWD46ICVzIgorbXNnc3RyICLPhM6/IM+AzrHOus6tz4TOvyDOrc+HzrXOuSDOu86szrjOv8+CIM6xzr3PhM65zrrOtc6vzrzOtc69zr8gz4PPhM6/IM+DzrfOvM61zq/OvyAlPFBSSXVNQVg+OiAlcyIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluZmxhdGUgcmV0dXJuZWQgJWQiCittc2dzdHIgIs63IM6xz4DOv8+Dz4XOvM+Azq/Otc+DzrcgzrXPgM6tz4PPhM+BzrXPiM61ICVkIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MDYKK21zZ2lkICJvZmZzZXQgdmFsdWUgb3ZlcmZsb3cgZm9yIGRlbHRhIGJhc2Ugb2JqZWN0IgorbXNnc3RyICLPhc+AzrXPgc+HzrXOr867zrnPg863IM+EzrnOvM6uz4Igz4POt868zrXOr86/z4UgzrPOuc6xIM+Ezr8gzrLOsc+DzrnOus+MIM6xzr3PhM65zrrOtc6vzrzOtc69zr8gZGVsdGEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNAorbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IGlzIG91dCBvZiBib3VuZCIKK21zZ3N0ciAiz4TOvyDPg863zrzOtc6vzr8gz4TOt8+CIM6yzqzPg863z4IgZGVsdGEgzrXOr869zrHOuSDOtc66z4TPjM+CIM6/z4HOr8+Jzr0iCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9iamVjdCB0eXBlICVkIgorbXNnc3RyICLOrM6zzr3Pic+Dz4TOv8+CIM+Ez43PgM6/z4IgzrHOvc+EzrnOus61zrnOvM6tzr3Ov8+FICVkIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NTMKK21zZ2lkICJjYW5ub3QgcHJlYWQgcGFjayBmaWxlIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ez4wgzr3OsSDOs86vzr3Otc65IHByZWFkIM+Ezr8gzrHPgc+HzrXOr86/IM+AzrHOus6tz4TOv8+FIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICU8UFJJdU1BWD4gYnl0ZSBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICJwcmVtYXR1cmUgZW5kIG9mIHBhY2sgZmlsZSwgJTxQUkl1TUFYPiBieXRlcyBtaXNzaW5nIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTgxCittc2dpZCAic2VyaW91cyBpbmZsYXRlIGluY29uc2lzdGVuY3kiCittc2dzdHIgIs+Dzr/Oss6xz4HOriDOsc69z4TOr8+GzrHPg863IM+Dz4TOt869IM6xz4DOv8+Dz4XOvM+Azq/Otc+DzrciCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjcyNiBidWlsdGluL2luZGV4LXBhY2suYzo3MzIgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzU1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo3OTQgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNIQTEgQ09MTElTSU9OIEZPVU5EIFdJVEggJXMgISIKK21zZ3N0ciAizpLOoc6VzpjOl86azpUgzqPOpc6TzprOoc6fzqXOo86XIFNIQTEgzpzOlSDOpM6fICVzICEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjcyOSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE1MgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTIgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgJXMiCittc2dzdHIgIs60zrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ezq4gzrcgzrHOvc6szrPOvc+Jz4POtyDPhM6/z4UgJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBleGlzdGluZyBvYmplY3QgaW5mbyAlcyIKK21zZ3N0ciAiIgorIs60zrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDOsc69zqzOs869z4nPg863IM+Ez4nOvSDPgM67zrfPgc6/z4bOv8+BzrnPjs69IM+Ezr/PhSDPhc+AzqzPgc+Hzr/Ovc+Ezr/PgiDOsc69z4TOuc66zrXOuc68zq3Ovc6/z4UgJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBleGlzdGluZyBvYmplY3QgJXMiCittc2dzdHIgIs60zrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDOsc69zqzOs869z4nPg863IM+Ezr/PhSDPhc+AzqzPgc+Hzr/Ovc+Ezr/PgiDOsc69z4TOuc66zrXOuc68zq3Ovc6/z4UgJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGJsb2Igb2JqZWN0ICVzIgorbXNnc3RyICLOvM63IM6tzrPOus+Fz4HOvyDOsc69z4TOuc66zrXOr868zrXOvc6/IGJsb2IgJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxNyBidWlsdGluL2luZGV4LXBhY2suYzo4MzYKK21zZ2lkICJmc2NrIGVycm9yIGluIHBhY2tlZCBvYmplY3QiCittc2dzdHIgIs+Dz4bOrM67zrzOsSBmc2NrIM+Dz4TOvyDPgM6xzrrOtc+EzrHPgc65z4POvM6tzr3OvyDOsc69z4TOuc66zrXOr868zrXOvc6/IgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm90IGFsbCBjaGlsZCBvYmplY3RzIG9mICVzIGFyZSByZWFjaGFibGUiCittc2dzdHIgIs6UzrXOvSDOtc6vzr3Osc65IM+Az4HOv8+DzrLOrM+DzrnOvM6xIM+MzrvOsSDPhM6xIM6xzr3PhM65zrrOtc6vzrzOtc69zrEgz4DOsc65zrTOuc6sIM+Ezr/PhSAlcyIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6OTEwIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjk0MQorbXNnaWQgImZhaWxlZCB0byBhcHBseSBkZWx0YSIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrXPhs6xz4HOvM6/zrPOriDPhM6/z4UgZGVsdGEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMDkKK21zZ2lkICJSZWNlaXZpbmcgb2JqZWN0cyIKK21zZ3N0ciAizpvOrs+IzrcgzrHOvc+EzrnOus61zrnOvM6tzr3Pic69IgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTA5Cittc2dpZCAiSW5kZXhpbmcgb2JqZWN0cyIKK21zZ3N0ciAizqDPgc6/z4POuM6uzrrOtyDPg861IM61z4XPgc61z4TOrs+BzrnOvyDOsc69z4TOuc66zrXOuc68zq3Ovc+Jzr0iCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNDMKK21zZ2lkICJwYWNrIGlzIGNvcnJ1cHRlZCAoU0hBMSBtaXNtYXRjaCkiCittc2dzdHIgIs+Ezr8gz4DOsc66zq3PhM6/IM61zq/Ovc6xzrkgzrrOsc+EzrXPg8+Ez4HOsc68zrzOrc69zr8gKM6xz4PPhc68z4bPic69zq/OsSBTSEExKSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE0OAorbXNnaWQgImNhbm5vdCBmc3RhdCBwYWNrZmlsZSIKK21zZ3N0ciAizrTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM+MIM+Ezr8gZnN0YXQgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrHOus6tz4TOv8+FIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTUxCittc2dpZCAicGFjayBoYXMganVuayBhdCB0aGUgZW5kIgorbXNnc3RyICLPhM6/IM+AzrHOus6tz4TOvyDOrc+HzrXOuSDPg866zr/Phc+Azq/OtM65zrEgz4PPhM6/IM+Ezq3Ou86/z4Igz4TOv8+FIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYzCittc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSBpbiBwYXJzZV9wYWNrX29iamVjdHMoKSIKK21zZ3N0ciAizrHPg8+NzrvOu863z4DPhM6/IM68z4DOrc+BzrTOtc68zrEgz4PPhM6/IHBhcnNlX3BhY2tfb2JqZWN0cygpIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTg2Cittc2dpZCAiUmVzb2x2aW5nIGRlbHRhcyIKK21zZ3N0ciAizpXPgM6vzrvPhc+DzrcgZGVsdGEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExOTYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNDg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGhyZWFkOiAlcyIKK21zZ3N0ciAizrTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM6uIM63IM60zrfOvM65zr/Phc+BzrPOr86xIM69zq7OvM6xz4TOv8+COiAlcyIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTIzNworbXNnaWQgImNvbmZ1c2lvbiBiZXlvbmQgaW5zYW5pdHkiCittc2dzdHIgIs6xz4PPjc67zrvOt8+Az4TOvyDOvM+Azq3Pgc60zrXOvM6xIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjQzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbXBsZXRlZCB3aXRoICVkIGxvY2FsIG9iamVjdCIKK21zZ2lkX3BsdXJhbCAiY29tcGxldGVkIHdpdGggJWQgbG9jYWwgb2JqZWN0cyIKK21zZ3N0clswXSAizr/Ou86/zrrOu863z4HPjs64zrfOus61IM68zrUgJWQgz4TOv8+AzrnOus+MIM6xzr3PhM65zrrOtc6vzrzOtc69zr8iCittc2dzdHJbMV0gIs6/zrvOv866zrvOt8+Bz47OuM63zrrOtSDOvM61ICVkIM+Ezr/PgM65zrrOrCDOsc69z4TOuc66zrXOr868zrXOvc6xIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVuZXhwZWN0ZWQgdGFpbCBjaGVja3N1bSBmb3IgJXMgKGRpc2sgY29ycnVwdGlvbj8pIgorbXNnc3RyICIiCisizpzOtyDOsc69zrHOvM61zr3PjM68zrXOvc6/IM+EzrXOu865zrrPjCDOrM64z4HOv865z4POvM6xIM61zrvOrc6zz4fOv8+FIM6zzrnOsSDPhM6/ICVzICjOus6xz4TOtc+Dz4TPgc6xzrzOvM6tzr3Ov8+CIM60zq/Pg866zr/PgjspIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjU5CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2sgaGFzICVkIHVucmVzb2x2ZWQgZGVsdGEiCittc2dpZF9wbHVyYWwgInBhY2sgaGFzICVkIHVucmVzb2x2ZWQgZGVsdGFzIgorbXNnc3RyWzBdICLPhM6/IM+AzrHOus6tz4TOvyDOrc+HzrXOuSAlZCDOsc69zrXPgM6vzrvPhc+Ezr8gZGVsdGEiCittc2dzdHJbMV0gIs+Ezr8gz4DOsc66zq3PhM6/IM6tz4fOtc65ICVkIM6xzr3Otc+Azq/Ou8+Fz4TOsSBkZWx0YSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVmbGF0ZSBhcHBlbmRlZCBvYmplY3QgKCVkKSIKK21zZ3N0ciAizrTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM+MIM69zrEgzrHPgM6/z4PPhc68z4DOuc+Dz4TOtc6vIM+Ezr8gz4PPhc69zrfOvM68zq3Ovc6/IM6xzr3PhM65zrrOtc6vzrzOtc69zr8gKCVkKSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM2MAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBvYmplY3QgJXMgaXMgY29ycnVwdCIKK21zZ3N0ciAiz4TOvyDPhM6/z4DOuc66z4wgzrHOvc+EzrnOus61zq/OvM61zr3OvyAlcyDOtc6vzr3Osc65IM66zrHPhM61z4PPhM+BzrHOvM68zq3Ovc6/IgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzc0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2tmaWxlIG5hbWUgJyVzJyBkb2VzIG5vdCBlbmQgd2l0aCAnLnBhY2snIgorbXNnc3RyICLPhM6/IM+Mzr3Ov868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrHOus6tz4TOv8+FICclcycgzrTOtc69IM+EzrXOu861zrnPjs69zrXOuSDPg861ICcucGFjayciCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHdyaXRlICVzIGZpbGUgJyVzJyIKK21zZ3N0ciAizrTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM6uIM63IM61zrPOs8+BzrHPhs6uICVzIM6xz4HPh861zq/Ov8+FICclcyciCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNsb3NlIHdyaXR0ZW4gJXMgZmlsZSAnJXMnIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ez4wgz4TOvyDOus67zrXOr8+DzrnOvM6/IM+Ezr/PhSDOtc6zzrPOtc6zz4HOsc68zrzOrc69zr/PhSAlcyDOsc+Bz4fOtc6vzr/PhSAnJXMnIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDMxCittc2dpZCAiZXJyb3Igd2hpbGUgY2xvc2luZyBwYWNrIGZpbGUiCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOus6xz4TOrCDPhM6/IM66zrvOtc6vz4POuc68zr8gz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrHOus6tz4TOv8+FIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDQ1Cittc2dpZCAiY2Fubm90IHN0b3JlIHBhY2sgZmlsZSIKK21zZ3N0ciAizrTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM6uIM63IM6xz4DOv864zq7Ous61z4XPg863IM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDPgM6xzrrOrc+Ezr/PhSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ1MworbXNnaWQgImNhbm5vdCBzdG9yZSBpbmRleCBmaWxlIgorbXNnc3RyICLOtM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ezq4gzrcgzrHPgM6/zrjOrs66zrXPhc+Dzrcgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM61z4XPgc61z4TOt8+Bzq/Ov8+FIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDk3IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcyNQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgcGFjay5pbmRleHZlcnNpb249JTxQUkl1MzI+IgorbXNnc3RyICLOu86szrjOv8+CIHBhY2suaW5kZXh2ZXJzaW9uPSU8UFJJdTMyPiIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU2NQorIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3Qgb3BlbiBleGlzdGluZyBwYWNrIGZpbGUgJyVzJyIKK21zZ3N0ciAizpTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM+MIM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM+Fz4DOrM+Bz4fOv869z4TOv8+CIM6xz4HPh861zq/Ov8+FIM+AzrHOus6tz4TOv8+FICclcyciCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IG9wZW4gZXhpc3RpbmcgcGFjayBpZHggZmlsZSBmb3IgJyVzJyIKK21zZ3N0ciAiIgorIs6UzrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TPjCDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSDPhc+AzqzPgc+Hzr/Ovc+Ezr/PgiDOsc+Bz4fOtc6vzr/PhSDOtc+Fz4HOtc+EzrfPgc6vzr/PhSDPgM6xzrrOrc+Ezr/PhSDOs865zrEgIgorIiclcyciCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAibm9uIGRlbHRhOiAlZCBvYmplY3QiCittc2dpZF9wbHVyYWwgIm5vbiBkZWx0YTogJWQgb2JqZWN0cyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhaW4gbGVuZ3RoID0gJWQ6ICVsdSBvYmplY3QiCittc2dpZF9wbHVyYWwgImNoYWluIGxlbmd0aCA9ICVkOiAlbHUgb2JqZWN0cyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NTkKK21zZ2lkICJDYW5ub3QgY29tZSBiYWNrIHRvIGN3ZCIKK21zZ3N0ciAizpTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM6uIM63IM61z4DOuc+Dz4TPgc6/z4bOriDPg8+Ezr/OvSDPhM+Bzq3Ph86/zr3PhM6xIM+GzqzOus61zrvOvyDOtc+BzrPOsc+Dzq/Osc+CIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzA4IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MTEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MjcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTczMQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgJXMiCittc2dzdHIgIs67zqzOuM6/z4IgJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDcKK21zZ2lkICItLWZpeC10aGluIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgLS1zdGRpbiIKK21zZ3N0ciAiz4TOvyAtLWZpeC10aGluIM60zrUgzrPOr869zrXPhM6xzrkgzr3OsSDPh8+BzrfPg865zrzOv8+Azr/Ouc63zrjOtc6vIM+Hz4nPgc6vz4Igz4TOvyAtLXN0ZGluIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQ5Cittc2dpZCAiLS1zdGRpbiByZXF1aXJlcyBhIGdpdCByZXBvc2l0b3J5IgorbXNnc3RyICLPhM6/IC0tc3RkaW4gzrHPgM6xzrnPhM61zq8gzq3Ovc6xIM6xz4DOv864zrXPhM6uz4HOuc6/IGdpdCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc1NQorbXNnaWQgIi0tdmVyaWZ5IHdpdGggbm8gcGFja2ZpbGUgbmFtZSBnaXZlbiIKK21zZ3N0ciAizrTPjM64zrfOus61IC0tdmVyaWZ5IM+Hz4nPgc6vz4Igz4zOvc6/zrzOsSDOsc+Bz4fOtc6vzr/PhSDPgM6xzrrOrc+Ezr/PhSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTgwMyBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTgwCittc2dpZCAiZnNjayBlcnJvciBpbiBwYWNrIG9iamVjdHMiCittc2dzdHIgIs+Dz4bOrM67zrzOsSBmc2NrIM+Dz4TOsSDOsc69z4TOuc66zrXOr868zrXOvc6xIM+Ezr/PhSDPgM6xzrrOrc+Ezr/PhSIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgdGVtcGxhdGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbmRpciAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkbGluayAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzeW1saW5rICclcycgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY29weSAnJXMnIHRvICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgdGVtcGxhdGUgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgInRlbXBsYXRlcyBub3QgZm91bmQgaW4gJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBjb3B5aW5nIHRlbXBsYXRlcyBmcm9tICclcyc6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaGFuZGxlIGZpbGUgdHlwZSAlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2luaXQtZGIuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1vdmUgJXMgdG8gJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6MzQ5IGJ1aWx0aW4vaW5pdC1kYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBhbHJlYWR5IGV4aXN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo0MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVpbml0aWFsaXplZCBleGlzdGluZyBzaGFyZWQgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICJSZWluaXRpYWxpemVkIGV4aXN0aW5nIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5pdGlhbGl6ZWQgZW1wdHkgc2hhcmVkIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5pdGlhbGl6ZWQgZW1wdHkgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ2MAorbXNnaWQgIiIKKyJnaXQgaW5pdCBbLXEgfCAtLXF1aWV0XSBbLS1iYXJlXSBbLS10ZW1wbGF0ZT08dGVtcGxhdGUtZGlyZWN0b3J5Pl0gWy0tIgorInNoYXJlZFs9PHBlcm1pc3Npb25zPl1dIFs8ZGlyZWN0b3J5Pl0iCittc2dzdHIgIiIKKyJnaXQgaW5pdCBbLXEgfCAtLXF1aWV0XSBbLS1iYXJlXSBbLS10ZW1wbGF0ZT08z4bOrM66zrXOu86/z4Igz4DPgc6/z4TPjc+Azr/PhT5dIFstLSIKKyJzaGFyZWRbPTzOtM65zrrOsc65z47OvM6xz4TOsT5dXSBbPM+GzqzOus61zrvOv8+CPl0iCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4MworbXNnaWQgInBlcm1pc3Npb25zIgorbXNnc3RyICLOtM65zrrOsc65z47OvM6xz4TOsSIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NDg0Cittc2dpZCAic3BlY2lmeSB0aGF0IHRoZSBnaXQgcmVwb3NpdG9yeSBpcyB0byBiZSBzaGFyZWQgYW1vbmdzdCBzZXZlcmFsIHVzZXJzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUxOCBidWlsdGluL2luaXQtZGIuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG1rZGlyICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUyNworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY2hkaXIgdG8gJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyAob3IgLS13b3JrLXRyZWU9PGRpcmVjdG9yeT4pIG5vdCBhbGxvd2VkIHdpdGhvdXQgc3BlY2lmeWluZyAlcyAob3IgLS1naXQtIgorImRpcj08ZGlyZWN0b3J5PikiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBhY2Nlc3Mgd29yayB0cmVlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxNQorbXNnaWQgIiIKKyJnaXQgaW50ZXJwcmV0LXRyYWlsZXJzIFstLWluLXBsYWNlXSBbLS10cmltLWVtcHR5XSBbKC0tdHJhaWxlciAiCisiPHRva2VuPlsoPXw6KTx2YWx1ZT5dKS4uLl0gWzxmaWxlPi4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NAorbXNnaWQgImVkaXQgZmlsZXMgaW4gcGxhY2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NQorbXNnaWQgInRyaW0gZW1wdHkgdHJhaWxlcnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5OAorbXNnaWQgIndoZXJlIHRvIHBsYWNlIHRoZSBuZXcgdHJhaWxlciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMAorbXNnaWQgImFjdGlvbiBpZiB0cmFpbGVyIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICLOtc69zq3Pgc6zzrXOuc6xIM6xzr0gz4XPgM6sz4HPh861zrkgzq7OtM63IM+Fz4DOv8+DzrfOvM61zq/Pic+DzrciCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAyCittc2dpZCAiYWN0aW9uIGlmIHRyYWlsZXIgaXMgbWlzc2luZyIKK21zZ3N0ciAizrXOvc6tz4HOs861zrnOsSDOsc69IM60zrXOvSDPhc+AzqzPgc+HzrXOuSDPhc+Azr/Pg863zrzOtc6vz4nPg863IgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNAorbXNnaWQgIm91dHB1dCBvbmx5IHRoZSB0cmFpbGVycyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNQorbXNnaWQgImRvIG5vdCBhcHBseSBjb25maWcgcnVsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDYKK21zZ2lkICJqb2luIHdoaXRlc3BhY2UtY29udGludWVkIHZhbHVlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNworbXNnaWQgInNldCBwYXJzaW5nIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDkKK21zZ2lkICJkbyBub3QgdHJlYXQgLS0tIHNwZWNpYWxseSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMAorbXNnaWQgInRyYWlsZXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTEKK21zZ2lkICJ0cmFpbGVyKHMpIHRvIGFkZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEyMAorbXNnaWQgIi0tdHJhaWxlciB3aXRoIC0tb25seS1pbnB1dCBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTMwCittc2dpZCAibm8gaW5wdXQgZmlsZSBnaXZlbiBmb3IgaW4tcGxhY2UgZWRpdGluZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjU1Cittc2dpZCAiZ2l0IGxvZyBbPG9wdGlvbnM+XSBbPHJldmlzaW9uLXJhbmdlPl0gW1stLV0gPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IGxvZyBbPM61z4DOuc67zr/Os86tz4I+XSBbPM61z43Pgc6/z4IgzrXOus60z4zPg861z4nOvT5dIFtbLS1dIDzOtM65zrHOtM+Bzr/OvM6uPi4uLl0iCisKKyM6IGJ1aWx0aW4vbG9nLmM6NTYKK21zZ2lkICJnaXQgc2hvdyBbPG9wdGlvbnM+XSA8b2JqZWN0Pi4uLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIC0tZGVjb3JhdGUgb3B0aW9uOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE2MworbXNnaWQgInN1cHByZXNzIGRpZmYgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0Cittc2dpZCAic2hvdyBzb3VyY2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNjUKK21zZ2lkICJVc2UgbWFpbCBtYXAgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE2NworbXNnaWQgIm9ubHkgZGVjb3JhdGUgcmVmcyB0aGF0IG1hdGNoIDxwYXR0ZXJuPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE2OQorbXNnaWQgImRvIG5vdCBkZWNvcmF0ZSByZWZzIHRoYXQgbWF0Y2ggPHBhdHRlcm4+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwCittc2dpZCAiZGVjb3JhdGUgb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE3MworbXNnaWQgIlByb2Nlc3MgbGluZSByYW5nZSBuLG0gaW4gZmlsZSwgY291bnRpbmcgZnJvbSAxIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbmFsIG91dHB1dDogJWQgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgc2hvdyAlczogYmFkIGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzo1NDAgYnVpbHRpbi9sb2cuYzo2MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVua25vd24gdHlwZTogJWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzo3ODAKK21zZ2lkICJmb3JtYXQuaGVhZGVycyB3aXRob3V0IHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6ODgxCittc2dpZCAibmFtZSBvZiBvdXRwdXQgZGlyZWN0b3J5IGlzIHRvbyBsb25nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6ODk3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBvcGVuIHBhdGNoIGZpbGUgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzo5MTQKK21zZ2lkICJOZWVkIGV4YWN0bHkgb25lIHJhbmdlLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjkyNAorbXNnaWQgIk5vdCBhIHJhbmdlLiIKK21zZ3N0ciAizpTOtc69IM61zq/Ovc6xzrkgzrXPjc+Bzr/Pgi4iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTA0NworbXNnaWQgIkNvdmVyIGxldHRlciBuZWVkcyBlbWFpbCBmb3JtYXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxMTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImluc2FuZSBpbi1yZXBseS10bzogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxMTU5Cittc2dpZCAiZ2l0IGZvcm1hdC1wYXRjaCBbPG9wdGlvbnM+XSBbPHNpbmNlPiB8IDxyZXZpc2lvbi1yYW5nZT5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTIxNworbXNnaWQgIlR3byBvdXRwdXQgZGlyZWN0b3JpZXM/IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTMyNCBidWlsdGluL2xvZy5jOjIwNjggYnVpbHRpbi9sb2cuYzoyMDcwIGJ1aWx0aW4vbG9nLmM6MjA4MgorIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIGNvbW1pdCAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjEzMzQgYnVpbHRpbi9ub3Rlcy5jOjg5NyBidWlsdGluL3RhZy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjEzMzkKK21zZ2lkICJDb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjEzNDMKK21zZ2lkICIiCisiRmFpbGVkIHRvIGdldCB1cHN0cmVhbSwgaWYgeW91IHdhbnQgdG8gcmVjb3JkIGJhc2UgY29tbWl0IGF1dG9tYXRpY2FsbHksXG4iCisicGxlYXNlIHVzZSBnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvIHRvIHRyYWNrIGEgcmVtb3RlIGJyYW5jaC5cbiIKKyJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxMzYzCittc2dpZCAiRmFpbGVkIHRvIGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjEzNzQKK21zZ2lkICJiYXNlIGNvbW1pdCBzaG91bGQgYmUgdGhlIGFuY2VzdG9yIG9mIHJldmlzaW9uIGxpc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxMzc4Cittc2dpZCAiYmFzZSBjb21taXQgc2hvdWxkbid0IGJlIGluIHJldmlzaW9uIGxpc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNDMxCittc2dpZCAiY2Fubm90IGdldCBwYXRjaCBpZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE0ODMKK21zZ2lkICJmYWlsZWQgdG8gaW5mZXIgcmFuZ2UtZGlmZiByYW5nZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNTI4Cittc2dpZCAidXNlIFtQQVRDSCBuL21dIGV2ZW4gd2l0aCBhIHNpbmdsZSBwYXRjaCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1MzEKK21zZ2lkICJ1c2UgW1BBVENIXSBldmVuIHdpdGggbXVsdGlwbGUgcGF0Y2hlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1MzUKK21zZ2lkICJwcmludCBwYXRjaGVzIHRvIHN0YW5kYXJkIG91dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1MzcKK21zZ2lkICJnZW5lcmF0ZSBhIGNvdmVyIGxldHRlciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1MzkKK21zZ2lkICJ1c2Ugc2ltcGxlIG51bWJlciBzZXF1ZW5jZSBmb3Igb3V0cHV0IGZpbGUgbmFtZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNTQwCittc2dpZCAic2Z4IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU0MQorbXNnaWQgInVzZSA8c2Z4PiBpbnN0ZWFkIG9mICcucGF0Y2gnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU0MworbXNnaWQgInN0YXJ0IG51bWJlcmluZyBwYXRjaGVzIGF0IDxuPiBpbnN0ZWFkIG9mIDEiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNTQ1Cittc2dpZCAibWFyayB0aGUgc2VyaWVzIGFzIE50aCByZS1yb2xsIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU0NworbXNnaWQgIlVzZSBbUkZDIFBBVENIXSBpbnN0ZWFkIG9mIFtQQVRDSF0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNTUwCittc2dpZCAiVXNlIFs8cHJlZml4Pl0gaW5zdGVhZCBvZiBbUEFUQ0hdIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU1MworbXNnaWQgInN0b3JlIHJlc3VsdGluZyBmaWxlcyBpbiA8ZGlyPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1NTYKK21zZ2lkICJkb24ndCBzdHJpcC9hZGQgW1BBVENIXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1NTkKK21zZ2lkICJkb24ndCBvdXRwdXQgYmluYXJ5IGRpZmZzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU2MQorbXNnaWQgIm91dHB1dCBhbGwtemVybyBoYXNoIGluIEZyb20gaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU2MworbXNnaWQgImRvbid0IGluY2x1ZGUgYSBwYXRjaCBtYXRjaGluZyBhIGNvbW1pdCB1cHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1NjUKK21zZ2lkICJzaG93IHBhdGNoIGZvcm1hdCBpbnN0ZWFkIG9mIGRlZmF1bHQgKHBhdGNoICsgc3RhdCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNTY3Cittc2dpZCAiTWVzc2FnaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU2OAorbXNnaWQgImhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1NjkKK21zZ2lkICJhZGQgZW1haWwgaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU3MCBidWlsdGluL2xvZy5jOjE1NzIKK21zZ2lkICJlbWFpbCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1NzAKK21zZ2lkICJhZGQgVG86IGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1NzIKK21zZ2lkICJhZGQgQ2M6IGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1NzQKK21zZ2lkICJpZGVudCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1NzUKK21zZ2lkICJzZXQgRnJvbSBhZGRyZXNzIHRvIDxpZGVudD4gKG9yIGNvbW1pdHRlciBpZGVudCBpZiBhYnNlbnQpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU3NworbXNnaWQgIm1lc3NhZ2UtaWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNTc4Cittc2dpZCAibWFrZSBmaXJzdCBtYWlsIGEgcmVwbHkgdG8gPG1lc3NhZ2UtaWQ+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU3OSBidWlsdGluL2xvZy5jOjE1ODIKK21zZ2lkICJib3VuZGFyeSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1ODAKK21zZ2lkICJhdHRhY2ggdGhlIHBhdGNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU4MworbXNnaWQgImlubGluZSB0aGUgcGF0Y2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNTg3Cittc2dpZCAiZW5hYmxlIG1lc3NhZ2UgdGhyZWFkaW5nLCBzdHlsZXM6IHNoYWxsb3csIGRlZXAiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNTg5Cittc2dpZCAic2lnbmF0dXJlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU5MAorbXNnaWQgImFkZCBhIHNpZ25hdHVyZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1OTEKK21zZ2lkICJiYXNlLWNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1OTIKK21zZ2lkICJhZGQgcHJlcmVxdWlzaXRlIHRyZWUgaW5mbyB0byB0aGUgcGF0Y2ggc2VyaWVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU5NAorbXNnaWQgImFkZCBhIHNpZ25hdHVyZSBmcm9tIGEgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1OTUKK21zZ2lkICJkb24ndCBwcmludCB0aGUgcGF0Y2ggZmlsZW5hbWVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU5NworbXNnaWQgInNob3cgcHJvZ3Jlc3Mgd2hpbGUgZ2VuZXJhdGluZyBwYXRjaGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU5OAorbXNnaWQgInJldiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1OTkKK21zZ2lkICJzaG93IGNoYW5nZXMgYWdhaW5zdCA8cmV2PiBpbiBjb3ZlciBsZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTYwMgorbXNnaWQgInNob3cgY2hhbmdlcyBhZ2FpbnN0IDxyZWZzcGVjPiBpbiBjb3ZlciBsZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTYwNAorbXNnaWQgInBlcmNlbnRhZ2UgYnkgd2hpY2ggY3JlYXRpb24gaXMgd2VpZ2h0ZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaWRlbnQgbGluZTogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNjk0Cittc2dpZCAiLW4gYW5kIC1rIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNjk2Cittc2dpZCAiLS1zdWJqZWN0LXByZWZpeC8tLXJmYyBhbmQgLWsgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE3MDQKK21zZ2lkICItLW5hbWUtb25seSBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwNgorbXNnaWQgIi0tbmFtZS1zdGF0dXMgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE3MDgKK21zZ2lkICItLWNoZWNrIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNzQwCittc2dpZCAic3RhbmRhcmQgb3V0cHV0LCBvciBkaXJlY3RvcnksIHdoaWNoIG9uZT8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNzQyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxODI5Cittc2dpZCAiLS1pbnRlcmRpZmYgcmVxdWlyZXMgLS1jb3Zlci1sZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTgzMworbXNnaWQgIkludGVyZGlmZjoiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxODM0CisjLCBjLWZvcm1hdAorbXNnaWQgIkludGVyZGlmZiBhZ2FpbnN0IHYlZDoiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxODQwCittc2dpZCAiLS1jcmVhdGlvbi1mYWN0b3IgcmVxdWlyZXMgLS1yYW5nZS1kaWZmIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTg0NAorbXNnaWQgIi0tcmFuZ2UtZGlmZiByZXF1aXJlcyAtLWNvdmVyLWxldHRlciBvciBzaW5nbGUgcGF0Y2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxODUyCittc2dpZCAiUmFuZ2UtZGlmZjoiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxODUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlJhbmdlLWRpZmYgYWdhaW5zdCB2JWQ6IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTg2NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBzaWduYXR1cmUgZmlsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTkwMAorbXNnaWQgIkdlbmVyYXRpbmcgcGF0Y2hlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE5NDQKK21zZ2lkICJGYWlsZWQgdG8gY3JlYXRlIG91dHB1dCBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjIwMDMKK21zZ2lkICJnaXQgY2hlcnJ5IFstdl0gWzx1cHN0cmVhbT4gWzxoZWFkPiBbPGxpbWl0Pl1dXSIKK21zZ3N0ciAiZ2l0IGNoZXJyeSBbLXZdIFs8z4DPgc6/z4Igz4TOsSDPgM6szr3PiT4gWzxoZWFkPiBbPM+Mz4HOuc6/Pl1dXSIKKworIzogYnVpbHRpbi9sb2cuYzoyMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3VsZCBub3QgZmluZCBhIHRyYWNrZWQgcmVtb3RlIGJyYW5jaCwgcGxlYXNlIHNwZWNpZnkgPHVwc3RyZWFtPiBtYW51YWxseS5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NDcwCittc2dpZCAiZ2l0IGxzLWZpbGVzIFs8b3B0aW9ucz5dIFs8ZmlsZT4uLi5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjYKK21zZ2lkICJpZGVudGlmeSB0aGUgZmlsZSBzdGF0dXMgd2l0aCB0YWdzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjgKK21zZ2lkICJ1c2UgbG93ZXJjYXNlIGxldHRlcnMgZm9yICdhc3N1bWUgdW5jaGFuZ2VkJyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTMwCittc2dpZCAidXNlIGxvd2VyY2FzZSBsZXR0ZXJzIGZvciAnZnNtb25pdG9yIGNsZWFuJyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTMyCittc2dpZCAic2hvdyBjYWNoZWQgZmlsZXMgaW4gdGhlIG91dHB1dCAoZGVmYXVsdCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNAorbXNnaWQgInNob3cgZGVsZXRlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzYKK21zZ2lkICJzaG93IG1vZGlmaWVkIGZpbGVzIGluIHRoZSBvdXRwdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOAorbXNnaWQgInNob3cgb3RoZXIgZmlsZXMgaW4gdGhlIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQwCittc2dpZCAic2hvdyBpZ25vcmVkIGZpbGVzIGluIHRoZSBvdXRwdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MworbXNnaWQgInNob3cgc3RhZ2VkIGNvbnRlbnRzJyBvYmplY3QgbmFtZSBpbiB0aGUgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDUKK21zZ2lkICJzaG93IGZpbGVzIG9uIHRoZSBmaWxlc3lzdGVtIHRoYXQgbmVlZCB0byBiZSByZW1vdmVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDcKK21zZ2lkICJzaG93ICdvdGhlcicgZGlyZWN0b3JpZXMnIG5hbWVzIG9ubHkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OQorbXNnaWQgInNob3cgbGluZSBlbmRpbmdzIG9mIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTEKK21zZ2lkICJkb24ndCBzaG93IGVtcHR5IGRpcmVjdG9yaWVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTQKK21zZ2lkICJzaG93IHVubWVyZ2VkIGZpbGVzIGluIHRoZSBvdXRwdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NgorbXNnaWQgInNob3cgcmVzb2x2ZS11bmRvIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTgKK21zZ2lkICJza2lwIGZpbGVzIG1hdGNoaW5nIHBhdHRlcm4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU2MQorbXNnaWQgImV4Y2x1ZGUgcGF0dGVybnMgYXJlIHJlYWQgZnJvbSA8ZmlsZT4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NAorbXNnaWQgInJlYWQgYWRkaXRpb25hbCBwZXItZGlyZWN0b3J5IGV4Y2x1ZGUgcGF0dGVybnMgaW4gPGZpbGU+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjYKK21zZ2lkICJhZGQgdGhlIHN0YW5kYXJkIGdpdCBleGNsdXNpb25zIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzAKK21zZ2lkICJtYWtlIHRoZSBvdXRwdXQgcmVsYXRpdmUgdG8gdGhlIHByb2plY3QgdG9wIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTczCittc2dpZCAicmVjdXJzZSB0aHJvdWdoIHN1Ym1vZHVsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NQorbXNnaWQgImlmIGFueSA8ZmlsZT4gaXMgbm90IGluIHRoZSBpbmRleCwgdHJlYXQgdGhpcyBhcyBhbiBlcnJvciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc2Cittc2dpZCAidHJlZS1pc2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NworbXNnaWQgInByZXRlbmQgdGhhdCBwYXRocyByZW1vdmVkIHNpbmNlIDx0cmVlLWlzaD4gYXJlIHN0aWxsIHByZXNlbnQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU3OQorbXNnaWQgInNob3cgZGVidWdnaW5nIGRhdGEiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo5Cittc2dpZCAiIgorImdpdCBscy1yZW1vdGUgWy0taGVhZHNdIFstLXRhZ3NdIFstLXJlZnNdIFstLXVwbG9hZC1wYWNrPTxleGVjPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICBbLXEgfCAtLXF1aWV0XSBbLS1leGl0LWNvZGVdIFstLWdldC11cmxdXG4iCisiICAgICAgICAgICAgICAgICAgICAgWy0tc3ltcmVmXSBbPHJlcG9zaXRvcnk+IFs8cmVmcz4uLi5dXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjU5Cittc2dpZCAiZG8gbm90IHByaW50IHJlbW90ZSBVUkwiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2MCBidWlsdGluL2xzLXJlbW90ZS5jOjYyIGJ1aWx0aW4vcmViYXNlLmM6MTExMQorbXNnaWQgImV4ZWMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2MSBidWlsdGluL2xzLXJlbW90ZS5jOjYzCittc2dpZCAicGF0aCBvZiBnaXQtdXBsb2FkLXBhY2sgb24gdGhlIHJlbW90ZSBob3N0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjUKK21zZ2lkICJsaW1pdCB0byB0YWdzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjYKK21zZ2lkICJsaW1pdCB0byBoZWFkcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjY3Cittc2dpZCAiZG8gbm90IHNob3cgcGVlbGVkIHRhZ3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2OQorbXNnaWQgInRha2UgdXJsLjxiYXNlPi5pbnN0ZWFkT2YgaW50byBhY2NvdW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzMKK21zZ2lkICJleGl0IHdpdGggZXhpdCBjb2RlIDIgaWYgbm8gbWF0Y2hpbmcgcmVmcyBhcmUgZm91bmQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorbXNnaWQgInNob3cgdW5kZXJseWluZyByZWYgaW4gYWRkaXRpb24gdG8gdGhlIG9iamVjdCBwb2ludGVkIGJ5IGl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtdHJlZS5jOjMwCittc2dpZCAiZ2l0IGxzLXRyZWUgWzxvcHRpb25zPl0gPHRyZWUtaXNoPiBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xzLXRyZWUuYzoxMjgKK21zZ2lkICJvbmx5IHNob3cgdHJlZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTMwCittc2dpZCAicmVjdXJzZSBpbnRvIHN1YnRyZWVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtdHJlZS5jOjEzMgorbXNnaWQgInNob3cgdHJlZXMgd2hlbiByZWN1cnNpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTM1Cittc2dpZCAidGVybWluYXRlIGVudHJpZXMgd2l0aCBOVUwgYnl0ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xzLXRyZWUuYzoxMzYKK21zZ2lkICJpbmNsdWRlIG9iamVjdCBzaXplIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtdHJlZS5jOjEzOCBidWlsdGluL2xzLXRyZWUuYzoxNDAKK21zZ2lkICJsaXN0IG9ubHkgZmlsZW5hbWVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbHMtdHJlZS5jOjE0MworbXNnaWQgInVzZSBmdWxsIHBhdGggbmFtZXMiCittc2dzdHIgIs69zrEgzrPOr869zrXOuSDPh8+Bzq7Pg863IM+AzrvOrs+Bz4nOvSDOv869zr/OvM6sz4TPic69IM60zrnOsc60z4HOv868z47OvSIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTQ1Cittc2dpZCAibGlzdCBlbnRpcmUgdHJlZTsgbm90IGp1c3QgY3VycmVudCBkaXJlY3RvcnkgKGltcGxpZXMgLS1mdWxsLW5hbWUpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWFpbHNwbGl0LmM6MjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IG1ib3g6ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjUzCittc2dpZCAiZ2l0IG1lcmdlIFs8b3B0aW9ucz5dIFs8Y29tbWl0Pi4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjU0Cittc2dpZCAiZ2l0IG1lcmdlIC0tYWJvcnQiCittc2dzdHIgImdpdCBtZXJnZSAtLWFib3J0IgorCisjOiBidWlsdGluL21lcmdlLmM6NTUKK21zZ2lkICJnaXQgbWVyZ2UgLS1jb250aW51ZSIKK21zZ3N0ciAiZ2l0IG1lcmdlIC0tY29udGludWUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTIKK21zZ2lkICJzd2l0Y2ggYG0nIHJlcXVpcmVzIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyByZXF1aXJlcyBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGZpbmQgbWVyZ2Ugc3RyYXRlZ3kgJyVzJy5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIkF2YWlsYWJsZSBzdHJhdGVnaWVzIGFyZToiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJBdmFpbGFibGUgY3VzdG9tIHN0cmF0ZWdpZXMgYXJlOiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MjM1IGJ1aWx0aW4vcHVsbC5jOjE0NAorbXNnaWQgImRvIG5vdCBzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjIzOCBidWlsdGluL3B1bGwuYzoxNDcKK21zZ2lkICJzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjIzOSBidWlsdGluL3B1bGwuYzoxNTAKK21zZ2lkICIoc3lub255bSB0byAtLXN0YXQpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDEgYnVpbHRpbi9wdWxsLmM6MTUzCittc2dpZCAiYWRkIChhdCBtb3N0IDxuPikgZW50cmllcyBmcm9tIHNob3J0bG9nIHRvIG1lcmdlIGNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDQgYnVpbHRpbi9wdWxsLmM6MTU5Cittc2dpZCAiY3JlYXRlIGEgc2luZ2xlIGNvbW1pdCBpbnN0ZWFkIG9mIGRvaW5nIGEgbWVyZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI0NiBidWlsdGluL3B1bGwuYzoxNjIKK21zZ2lkICJwZXJmb3JtIGEgY29tbWl0IGlmIHRoZSBtZXJnZSBzdWNjZWVkcyAoZGVmYXVsdCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI0OCBidWlsdGluL3B1bGwuYzoxNjUKK21zZ2lkICJlZGl0IG1lc3NhZ2UgYmVmb3JlIGNvbW1pdHRpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI0OQorbXNnaWQgImFsbG93IGZhc3QtZm9yd2FyZCAoZGVmYXVsdCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI1MSBidWlsdGluL3B1bGwuYzoxNzEKK21zZ2lkICJhYm9ydCBpZiBmYXN0LWZvcndhcmQgaXMgbm90IHBvc3NpYmxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTUgYnVpbHRpbi9wdWxsLmM6MTc0Cittc2dpZCAidmVyaWZ5IHRoYXQgdGhlIG5hbWVkIGNvbW1pdCBoYXMgYSB2YWxpZCBHUEcgc2lnbmF0dXJlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTYgYnVpbHRpbi9ub3Rlcy5jOjc4NyBidWlsdGluL3B1bGwuYzoxNzgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTEyNCBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODggYnVpbHRpbi9yZXZlcnQuYzoxMTEKK21zZ2lkICJzdHJhdGVneSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MjU3IGJ1aWx0aW4vcHVsbC5jOjE3OQorbXNnaWQgIm1lcmdlIHN0cmF0ZWd5IHRvIHVzZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MjU4IGJ1aWx0aW4vcHVsbC5jOjE4MgorbXNnaWQgIm9wdGlvbj12YWx1ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MjU5IGJ1aWx0aW4vcHVsbC5jOjE4MworbXNnaWQgIm9wdGlvbiBmb3Igc2VsZWN0ZWQgbWVyZ2Ugc3RyYXRlZ3kiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI2MQorbXNnaWQgIm1lcmdlIGNvbW1pdCBtZXNzYWdlIChmb3IgYSBub24tZmFzdC1mb3J3YXJkIG1lcmdlKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MjY4Cittc2dpZCAiYWJvcnQgdGhlIGN1cnJlbnQgaW4tcHJvZ3Jlc3MgbWVyZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI3MAorbXNnaWQgImNvbnRpbnVlIHRoZSBjdXJyZW50IGluLXByb2dyZXNzIG1lcmdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzIgYnVpbHRpbi9wdWxsLmM6MTkwCittc2dpZCAiYWxsb3cgbWVyZ2luZyB1bnJlbGF0ZWQgaGlzdG9yaWVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzgKK21zZ2lkICJ2ZXJpZnkgY29tbWl0LW1zZyBob29rIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMDMKK21zZ2lkICJjb3VsZCBub3QgcnVuIHN0YXNoLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MzA4Cittc2dpZCAic3Rhc2ggZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0OiAlcyIKK21zZ3N0ciAizrTOtc69IM61zq/Ovc6xzrkgzq3Os866z4XPgc6/IM6xzr3PhM65zrrOtc6vzrzOtc69zr86ICVzIgorCisjOiBidWlsdGluL21lcmdlLmM6MzM1IGJ1aWx0aW4vbWVyZ2UuYzozNTIKK21zZ2lkICJyZWFkLXRyZWUgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozODIKK21zZ2lkICIgKG5vdGhpbmcgdG8gc3F1YXNoKSIKK21zZ3N0ciAiICjPhM6vz4DOv8+EzrEgz4DPgc6/z4Igz4PPjc68z4DPhM+Fzr7OtykiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3F1YXNoIGNvbW1pdCAtLSBub3QgdXBkYXRpbmcgSEVBRFxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gbWVyZ2UgbWVzc2FnZSAtLSBub3QgdXBkYXRpbmcgSEVBRFxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo0OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBwb2ludCB0byBhIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6NTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkJhZCBicmFuY2guJXMubWVyZ2VvcHRpb25zIHN0cmluZzogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjcwMgorbXNnaWQgIk5vdCBoYW5kbGluZyBhbnl0aGluZyBvdGhlciB0aGFuIHR3byBoZWFkcyBtZXJnZS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjcxNgorIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIG9wdGlvbiBmb3IgbWVyZ2UtcmVjdXJzaXZlOiAtWCVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHJlYWQgZnJvbSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm90IGNvbW1pdHRpbmcgbWVyZ2U7IHVzZSAnZ2l0IGNvbW1pdCcgdG8gY29tcGxldGUgdGhlIG1lcmdlLlxuIgorbXNnc3RyICIiCisizpTOtSDOs86vzr3Otc+EzrHOuSDPhc+Azr/Oss6/zrvOriDPhM63z4Igz4PPhc6zz4fPjs69zrXPhc+DzrfPgiwgz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtSAnZ2l0IGNvbW1pdCcgzrPOuc6xIM69zrEgIgorIs6/zrvOv866zrvOt8+Bz47Pg861z4TOtSDPhM63IM+Dz4XOs8+Hz47Ovc61z4XPg863LlxuIgorCisjOiBidWlsdGluL21lcmdlLmM6Nzk4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQbGVhc2UgZW50ZXIgYSBjb21taXQgbWVzc2FnZSB0byBleHBsYWluIHdoeSB0aGlzIG1lcmdlIGlzIG5lY2Vzc2FyeSxcbiIKKyJlc3BlY2lhbGx5IGlmIGl0IG1lcmdlcyBhbiB1cGRhdGVkIHVwc3RyZWFtIGludG8gYSB0b3BpYyBicmFuY2guXG4iCisiXG4iCisiTGluZXMgc3RhcnRpbmcgd2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzXG4iCisidGhlIGNvbW1pdC5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6ODM0Cittc2dpZCAiRW1wdHkgY29tbWl0IG1lc3NhZ2UuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiV29uZGVyZnVsLlxuIgorbXNnc3RyICLOlc6+zrHOuc+BzrXPhM65zrrOrC5cbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjkwNgorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRvbWF0aWMgbWVyZ2UgZmFpbGVkOyBmaXggY29uZmxpY3RzIGFuZCB0aGVuIGNvbW1pdCB0aGUgcmVzdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5NDUKK21zZ2lkICJObyBjdXJyZW50IGJyYW5jaC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjk0NworbXNnaWQgIk5vIHJlbW90ZSBmb3IgdGhlIGN1cnJlbnQgYnJhbmNoLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6OTQ5Cittc2dpZCAiTm8gZGVmYXVsdCB1cHN0cmVhbSBkZWZpbmVkIGZvciB0aGUgY3VycmVudCBicmFuY2guIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gcmVtb3RlLXRyYWNraW5nIGJyYW5jaCBmb3IgJXMgZnJvbSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MTAxMQorIywgYy1mb3JtYXQKK21zZ2lkICJCYWQgdmFsdWUgJyVzJyBpbiBlbnZpcm9ubWVudCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIGluICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MTE0OAorbXNnaWQgIm5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjUxCittc2dpZCAiLS1hYm9ydCBleHBlY3RzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MTI1NQorbXNnaWQgIlRoZXJlIGlzIG5vIG1lcmdlIHRvIGFib3J0IChNRVJHRV9IRUFEIG1pc3NpbmcpLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MTI2NworbXNnaWQgIi0tY29udGludWUgZXhwZWN0cyBubyBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEyNzEKK21zZ2lkICJUaGVyZSBpcyBubyBtZXJnZSBpbiBwcm9ncmVzcyAoTUVSR0VfSEVBRCBtaXNzaW5nKS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEyODcKK21zZ2lkICIiCisiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG1lcmdlIChNRVJHRV9IRUFEIGV4aXN0cykuXG4iCisiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSB5b3UgbWVyZ2UuIgorbXNnc3RyICIiCisizpTOtc69IM6tz4fOtc+EzrUgzr/Ou86/zrrOu863z4HPjs+DzrXOuSDPhM63IM+Dz4XOs8+Hz47Ovc61z4XPg86uIM+DzrHPgiAozqXPgM6sz4HPh861zrkgz4TOvyBNRVJHRV9IRUFEKS5cbiIKKyLOoM6xz4HOsc66zrHOu8+OLCDPhc+Azr/Oss6szrvOtc+EzrUgz4TOuc+CIM6xzrvOu86xzrPOrc+CIM+DzrHPgiDPgM+BzrnOvSDPg8+FzrPPh8+Jzr3Otc+Nz4POtc+EzrUuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTI5NAorbXNnaWQgIiIKKyJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgY2hlcnJ5LXBpY2sgKENIRVJSWV9QSUNLX0hFQUQgZXhpc3RzKS5cbiIKKyJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIHlvdSBtZXJnZS4iCittc2dzdHIgIiIKKyLOlM61zr0gzq3Ph861z4TOtSDOv867zr/Ous67zrfPgc+Oz4POtc65IM+EzrfOvSDOtc+AzrnOu861zrrPhM65zrrOriDOtM65zrHOu86/zrPOriDPg86xz4IgKM6lz4DOrM+Bz4fOtc65IM+Ezr8gIgorIkNIRVJSWV9QSUNLX0hFQUQpLlxuIgorIs6gzrHPgc6xzrrOsc67z44sIM+Fz4DOv86yzqzOu861z4TOtSDPhM65z4IgzrHOu867zrHOs86tz4Igz4POsc+CIM+Az4HOuc69IM+Dz4XOs8+Hz4nOvc61z43Pg861z4TOtS4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjk3Cittc2dpZCAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIGNoZXJyeS1waWNrIChDSEVSUllfUElDS19IRUFEIGV4aXN0cykuIgorbXNnc3RyICIiCisizpTOtc69IM6tz4fOtc+EzrUgzr/Ou86/zrrOu863z4HPjs+DzrXOuSDPhM63zr0gzrXPgM65zrvOtc66z4TOuc66zq4gzrTOuc6xzrvOv86zzq4gz4POsc+CICjOpc+AzqzPgc+HzrXOuSDPhM6/ICIKKyJDSEVSUllfUElDS19IRUFEKS4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzA2Cittc2dpZCAiWW91IGNhbm5vdCBjb21iaW5lIC0tc3F1YXNoIHdpdGggLS1uby1mZi4iCittc2dzdHIgIs6UzrUgzrzPgM6/z4HOtc6vz4TOtSDOvc6xIM+Dz4XOvc60z4XOrM+DzrXPhM61IM+Ezr8gLS1zcXVhc2ggzrzOtSDPhM6/IC0tbm8tZmYuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTMxNAorbXNnaWQgIk5vIGNvbW1pdCBzcGVjaWZpZWQgYW5kIG1lcmdlLmRlZmF1bHRUb1Vwc3RyZWFtIG5vdCBzZXQuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzMxCittc2dpZCAiU3F1YXNoIGNvbW1pdCBpbnRvIGVtcHR5IGhlYWQgbm90IHN1cHBvcnRlZCB5ZXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzMzMKK21zZ2lkICJOb24tZmFzdC1mb3J3YXJkIGNvbW1pdCBkb2VzIG5vdCBtYWtlIHNlbnNlIGludG8gYW4gZW1wdHkgaGVhZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MTMzOAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAtIG5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzQwCittc2dpZCAiQ2FuIG1lcmdlIG9ubHkgZXhhY3RseSBvbmUgY29tbWl0IGludG8gZW1wdHkgaGVhZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MTQyMgorbXNnaWQgInJlZnVzaW5nIHRvIG1lcmdlIHVucmVsYXRlZCBoaXN0b3JpZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE0MzEKK21zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIgorbXNnc3RyICLOic60zrcgz4DOu86uz4HPic+CIM61zr3Ors68zrXPgc6/LiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgJXMuLiVzXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVHJ5aW5nIHJlYWxseSB0cml2aWFsIGluLWluZGV4IG1lcmdlLi4uXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm9wZS5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MTUxNQorbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZS4gWWVlYWghIgorbXNnc3RyICLOic60zrcgz4DOu86uz4HPic+CIM61zr3Ors68zrXPgc6/LiDOnc6xzrnOuc65ISIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE1MjEKK21zZ2lkICJOb3QgcG9zc2libGUgdG8gZmFzdC1mb3J3YXJkLCBhYm9ydGluZy4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE1NDQgYnVpbHRpbi9tZXJnZS5jOjE2MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmV3aW5kaW5nIHRoZSB0cmVlIHRvIHByaXN0aW5lLi4uXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE1NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiVHJ5aW5nIG1lcmdlIHN0cmF0ZWd5ICVzLi4uXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE2MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gbWVyZ2Ugc3RyYXRlZ3kgaGFuZGxlZCB0aGUgbWVyZ2UuXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWVyZ2Ugd2l0aCBzdHJhdGVneSAlcyBmYWlsZWQuXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE2MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNpbmcgdGhlICVzIHRvIHByZXBhcmUgcmVzb2x2aW5nIGJ5IGhhbmQuXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0b21hdGljIG1lcmdlIHdlbnQgd2VsbDsgc3RvcHBlZCBiZWZvcmUgY29tbWl0dGluZyBhcyByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzozMgorbXNnaWQgImdpdCBtZXJnZS1iYXNlIFstYSB8IC0tYWxsXSA8Y29tbWl0PiA8Y29tbWl0Pi4uLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzozMworbXNnaWQgImdpdCBtZXJnZS1iYXNlIFstYSB8IC0tYWxsXSAtLW9jdG9wdXMgPGNvbW1pdD4uLi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MzQKK21zZ2lkICJnaXQgbWVyZ2UtYmFzZSAtLWluZGVwZW5kZW50IDxjb21taXQ+Li4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjM1Cittc2dpZCAiZ2l0IG1lcmdlLWJhc2UgLS1pcy1hbmNlc3RvciA8Y29tbWl0PiA8Y29tbWl0PiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzozNgorbXNnaWQgImdpdCBtZXJnZS1iYXNlIC0tZm9yay1wb2ludCA8cmVmPiBbPGNvbW1pdD5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjE1MworbXNnaWQgIm91dHB1dCBhbGwgY29tbW9uIGFuY2VzdG9ycyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzoxNTUKK21zZ2lkICJmaW5kIGFuY2VzdG9ycyBmb3IgYSBzaW5nbGUgbi13YXkgbWVyZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MTU3Cittc2dpZCAibGlzdCByZXZzIG5vdCByZWFjaGFibGUgZnJvbSBvdGhlcnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MTU5Cittc2dpZCAiaXMgdGhlIGZpcnN0IG9uZSBhbmNlc3RvciBvZiB0aGUgb3RoZXI/IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjE2MQorbXNnaWQgImZpbmQgd2hlcmUgPGNvbW1pdD4gZm9ya2VkIGZyb20gcmVmbG9nIG9mIDxyZWY+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjkKK21zZ2lkICIiCisiZ2l0IG1lcmdlLWZpbGUgWzxvcHRpb25zPl0gWy1MIDxuYW1lMT4gWy1MIDxvcmlnPiBbLUwgPG5hbWUyPl1dXSA8ZmlsZTE+ICIKKyI8b3JpZy1maWxlPiA8ZmlsZTI+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjM1Cittc2dpZCAic2VuZCByZXN1bHRzIHRvIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLWZpbGUuYzozNgorbXNnaWQgInVzZSBhIGRpZmYzIGJhc2VkIG1lcmdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjM3Cittc2dpZCAiZm9yIGNvbmZsaWN0cywgdXNlIG91ciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjM5Cittc2dpZCAiZm9yIGNvbmZsaWN0cywgdXNlIHRoZWlyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6NDEKK21zZ2lkICJmb3IgY29uZmxpY3RzLCB1c2UgYSB1bmlvbiB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjQ0Cittc2dpZCAiZm9yIGNvbmZsaWN0cywgdXNlIHRoaXMgbWFya2VyIHNpemUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6NDUKK21zZ2lkICJkbyBub3Qgd2FybiBhYm91dCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6NDcKK21zZ2lkICJzZXQgbGFiZWxzIGZvciBmaWxlMS9vcmlnLWZpbGUvZmlsZTIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIGJhc2UuIElnbm9yaW5nICVzLiIKK21zZ2lkX3BsdXJhbCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgYmFzZXMuIElnbm9yaW5nICVzLiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjQKK21zZ2lkICJub3QgaGFuZGxpbmcgYW55dGhpbmcgb3RoZXIgdGhhbiB0d28gaGVhZHMgbWVyZ2UuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzAgYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSByZWYgJyVzJyIKK21zZ3N0ciAizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDPhM6xz43PhM65z4POtyDPhM6/z4UgcmVmICclcyciCisKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWVyZ2luZyAlcyB3aXRoICVzXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ta3RyZWUuYzo2NgorbXNnaWQgImdpdCBta3RyZWUgWy16XSBbLS1taXNzaW5nXSBbLS1iYXRjaF0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ta3RyZWUuYzoxNTQKK21zZ2lkICJpbnB1dCBpcyBOVUwgdGVybWluYXRlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21rdHJlZS5jOjE1NSBidWlsdGluL3dyaXRlLXRyZWUuYzoyNgorbXNnaWQgImFsbG93IG1pc3Npbmcgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21rdHJlZS5jOjE1NgorbXNnaWQgImFsbG93IGNyZWF0aW9uIG9mIG1vcmUgdGhhbiBvbmUgdHJlZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo4Cittc2dpZCAiZ2l0IG11bHRpLXBhY2staW5kZXggWy0tb2JqZWN0LWRpcj08ZGlyPl0gKHdyaXRlfHZlcmlmeSkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjEKK21zZ2lkICJvYmplY3QgZGlyZWN0b3J5IGNvbnRhaW5pbmcgc2V0IG9mIHBhY2tmaWxlIGFuZCBwYWNrLWluZGV4IHBhaXJzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjM5Cittc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCB2ZXJiOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL212LmM6MTgKK21zZ2lkICJnaXQgbXYgWzxvcHRpb25zPl0gPHNvdXJjZT4uLi4gPGRlc3RpbmF0aW9uPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL212LmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGlyZWN0b3J5ICVzIGlzIGluIGluZGV4IGFuZCBubyBzdWJtb2R1bGU/IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzo4NQorbXNnaWQgIlBsZWFzZSBzdGFnZSB5b3VyIGNoYW5nZXMgdG8gLmdpdG1vZHVsZXMgb3Igc3Rhc2ggdGhlbSB0byBwcm9jZWVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJS4qcyBpcyBpbiBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL212LmM6MTI1Cittc2dpZCAiZm9yY2UgbW92ZS9yZW5hbWUgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzoxMjcKK21zZ2lkICJza2lwIG1vdmUvcmVuYW1lIGVycm9ycyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL212LmM6MTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRlc3RpbmF0aW9uICclcycgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgcmVuYW1lIG9mICclcycgdG8gJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzoxODQKK21zZ2lkICJiYWQgc291cmNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzoxODcKK21zZ2lkICJjYW4gbm90IG1vdmUgZGlyZWN0b3J5IGludG8gaXRzZWxmIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzoxOTAKK21zZ2lkICJjYW5ub3QgbW92ZSBkaXJlY3Rvcnkgb3ZlciBmaWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzoxOTkKK21zZ2lkICJzb3VyY2UgZGlyZWN0b3J5IGlzIGVtcHR5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzoyMjQKK21zZ2lkICJub3QgdW5kZXIgdmVyc2lvbiBjb250cm9sIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzoyMjcKK21zZ2lkICJkZXN0aW5hdGlvbiBleGlzdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tdi5jOjIzNQorIywgYy1mb3JtYXQKK21zZ2lkICJvdmVyd3JpdGluZyAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzoyMzgKK21zZ2lkICJDYW5ub3Qgb3ZlcndyaXRlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzoyNDEKK21zZ2lkICJtdWx0aXBsZSBzb3VyY2VzIGZvciB0aGUgc2FtZSB0YXJnZXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tdi5jOjI0MworbXNnaWQgImRlc3RpbmF0aW9uIGRpcmVjdG9yeSBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL212LmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzLCBzb3VyY2U9JXMsIGRlc3RpbmF0aW9uPSVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbXYuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVuYW1pbmcgJXMgdG8gJXNcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL212LmM6Mjc3IGJ1aWx0aW4vcmVtb3RlLmM6NzE3IGJ1aWx0aW4vcmVwYWNrLmM6NTEzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICclcycgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzozNTUKK21zZ2lkICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gPGNvbW1pdD4uLi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NgorbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLWFsbCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6MzU3Cittc2dpZCAiZ2l0IG5hbWUtcmV2IFs8b3B0aW9ucz5dIC0tc3RkaW4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxMworbXNnaWQgInByaW50IG9ubHkgbmFtZXMgKG5vIFNIQS0xKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NDE0Cittc2dpZCAib25seSB1c2UgdGFncyB0byBuYW1lIHRoZSBjb21taXRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTYKK21zZ2lkICJvbmx5IHVzZSByZWZzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NDE4Cittc2dpZCAiaWdub3JlIHJlZnMgbWF0Y2hpbmcgPHBhdHRlcm4+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjAKK21zZ2lkICJsaXN0IGFsbCBjb21taXRzIHJlYWNoYWJsZSBmcm9tIGFsbCByZWZzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjEKK21zZ2lkICJyZWFkIGZyb20gc3RkaW4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQyMgorbXNnaWQgImFsbG93IHRvIHByaW50IGB1bmRlZmluZWRgIG5hbWVzIChkZWZhdWx0KSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NDI4Cittc2dpZCAiZGVyZWZlcmVuY2UgdGFncyBpbiB0aGUgaW5wdXQgKGludGVybmFsIHVzZSkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjI4Cittc2dpZCAiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gW2xpc3QgWzxvYmplY3Q+XV0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjI5Cittc2dpZCAiIgorImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIGFkZCBbLWZdIFstLWFsbG93LWVtcHR5XSBbLW0gPG1zZz4gfCAtRiA8ZmlsZT4gIgorInwgKC1jIHwgLUMpIDxvYmplY3Q+XSBbPG9iamVjdD5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMAorbXNnaWQgImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIGNvcHkgWy1mXSA8ZnJvbS1vYmplY3Q+IDx0by1vYmplY3Q+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMQorbXNnaWQgIiIKKyJnaXQgbm90ZXMgWy0tcmVmIDxub3Rlcy1yZWY+XSBhcHBlbmQgWy0tYWxsb3ctZW1wdHldIFstbSA8bXNnPiB8IC1GIDxmaWxlPiB8ICIKKyIoLWMgfCAtQykgPG9iamVjdD5dIFs8b2JqZWN0Pl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjMyCittc2dpZCAiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gZWRpdCBbLS1hbGxvdy1lbXB0eV0gWzxvYmplY3Q+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6MzMKK21zZ2lkICJnaXQgbm90ZXMgWy0tcmVmIDxub3Rlcy1yZWY+XSBzaG93IFs8b2JqZWN0Pl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM0Cittc2dpZCAiIgorImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIG1lcmdlIFstdiB8IC1xXSBbLXMgPHN0cmF0ZWd5Pl0gPG5vdGVzLXJlZj4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM1Cittc2dpZCAiZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0IFstdiB8IC1xXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6MzYKK21zZ2lkICJnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCBbLXYgfCAtcV0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM3Cittc2dpZCAiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gcmVtb3ZlIFs8b2JqZWN0Pi4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM4Cittc2dpZCAiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gcHJ1bmUgWy1uXSBbLXZdIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozOQorbXNnaWQgImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIGdldC1yZWYiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjQ0Cittc2dpZCAiZ2l0IG5vdGVzIFtsaXN0IFs8b2JqZWN0Pl1dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OQorbXNnaWQgImdpdCBub3RlcyBhZGQgWzxvcHRpb25zPl0gWzxvYmplY3Q+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NTQKK21zZ2lkICJnaXQgbm90ZXMgY29weSBbPG9wdGlvbnM+XSA8ZnJvbS1vYmplY3Q+IDx0by1vYmplY3Q+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1NQorbXNnaWQgImdpdCBub3RlcyBjb3B5IC0tc3RkaW4gWzxmcm9tLW9iamVjdD4gPHRvLW9iamVjdD5dLi4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2MAorbXNnaWQgImdpdCBub3RlcyBhcHBlbmQgWzxvcHRpb25zPl0gWzxvYmplY3Q+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NjUKK21zZ2lkICJnaXQgbm90ZXMgZWRpdCBbPG9iamVjdD5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MAorbXNnaWQgImdpdCBub3RlcyBzaG93IFs8b2JqZWN0Pl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjc1Cittc2dpZCAiZ2l0IG5vdGVzIG1lcmdlIFs8b3B0aW9ucz5dIDxub3Rlcy1yZWY+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NgorbXNnaWQgImdpdCBub3RlcyBtZXJnZSAtLWNvbW1pdCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NzcKK21zZ2lkICJnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6ODIKK21zZ2lkICJnaXQgbm90ZXMgcmVtb3ZlIFs8b2JqZWN0Pl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjg3Cittc2dpZCAiZ2l0IG5vdGVzIHBydW5lIFs8b3B0aW9ucz5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MgorbXNnaWQgImdpdCBub3RlcyBnZXQtcmVmIgorbXNnc3RyICJnaXQgbm90ZXMgZ2V0LXJlZiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjk3Cittc2dpZCAiV3JpdGUvZWRpdCB0aGUgbm90ZXMgZm9yIHRoZSBmb2xsb3dpbmcgb2JqZWN0OiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGFydCAnc2hvdycgZm9yIG9iamVjdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoxNTQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCAnc2hvdycgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoxNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZpbmlzaCAnc2hvdycgZm9yIG9iamVjdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoxOTcKK21zZ2lkICJwbGVhc2Ugc3VwcGx5IHRoZSBub3RlIGNvbnRlbnRzIHVzaW5nIGVpdGhlciAtbSBvciAtRiBvcHRpb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjIwNgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBub3RlIG9iamVjdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6MjA4CisjLCBjLWZvcm1hdAorbXNnaWQgInRoZSBub3RlIGNvbnRlbnRzIGhhdmUgYmVlbiBsZWZ0IGluICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoyNDIgYnVpbHRpbi90YWcuYzo1MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG9wZW4gb3IgcmVhZCAnJXMnIgorbXNnc3RyICLOtM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM+MIM+Ezr8gzqzOvc6/zrnOs868zrEgzq4gzrcgzrHOvc6szrPOvc+Jz4POtyDPhM6/z4UgJyVzJyIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjI2MyBidWlsdGluL25vdGVzLmM6MzEzIGJ1aWx0aW4vbm90ZXMuYzozMTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzozODMgYnVpbHRpbi9ub3Rlcy5jOjQzOCBidWlsdGluL25vdGVzLmM6NTI2CisjOiBidWlsdGluL25vdGVzLmM6NTMxIGJ1aWx0aW4vbm90ZXMuYzo2MTAgYnVpbHRpbi9ub3Rlcy5jOjY3MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgz4TOsc+Nz4TOuc+Dzrcgz4TOv8+FICclcycgzrzOtSDOus6sz4DOv865zr8gzq3Os866z4XPgc6/IHJlZi4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoyNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb2JqZWN0ICclcycuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgbm90ZSBkYXRhIGZyb20gbm9uLWJsb2Igb2JqZWN0ICclcycuIgorbXNnc3RyICIiCisizrTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDOsc69zqzOs869z4nPg863IM60zrXOtM6/zrzOrc69z4nOvSDPg863zrzOtc65z47Pg861z4nOvSDOsc+Az4wgzrzOtyBibG9iIM6xzr3PhM65zrrOtc6vzrzOtc69zr8gJyVzJy4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIGlucHV0IGxpbmU6ICclcycuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNvcHkgbm90ZXMgZnJvbSAnJXMnIHRvICclcyciCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IHRoZSBmaXJzdCAlcyB3aWxsIGJlIHJlcGxhY2VkIGJ5IGEgZ2l0CisjLiBub3RlcyBjb21tYW5kOiAnYWRkJywgJ21lcmdlJywgJ3JlbW92ZScsIGV0Yy4KKyMuCisjOiBidWlsdGluL25vdGVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZnVzaW5nIHRvICVzIG5vdGVzIGluICVzIChvdXRzaWRlIG9mIHJlZnMvbm90ZXMvKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6Mzc2IGJ1aWx0aW4vbm90ZXMuYzo0MzEgYnVpbHRpbi9ub3Rlcy5jOjUwOQorIzogYnVpbHRpbi9ub3Rlcy5jOjUyMSBidWlsdGluL25vdGVzLmM6NTk4IGJ1aWx0aW4vbm90ZXMuYzo2NjUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MTUgYnVpbHRpbi9ub3Rlcy5jOjk2MyBidWlsdGluL25vdGVzLmM6OTg1Cittc2dpZCAidG9vIG1hbnkgcGFyYW1ldGVycyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6Mzg5IGJ1aWx0aW4vbm90ZXMuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gbm90ZSBmb3VuZCBmb3Igb2JqZWN0ICVzLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NDEwIGJ1aWx0aW4vbm90ZXMuYzo1NzYKK21zZ2lkICJub3RlIGNvbnRlbnRzIGFzIGEgc3RyaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTMgYnVpbHRpbi9ub3Rlcy5jOjU3OQorbXNnaWQgIm5vdGUgY29udGVudHMgaW4gYSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTYgYnVpbHRpbi9ub3Rlcy5jOjU4MgorbXNnaWQgInJldXNlIGFuZCBlZGl0IHNwZWNpZmllZCBub3RlIG9iamVjdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NDE5IGJ1aWx0aW4vbm90ZXMuYzo1ODUKK21zZ2lkICJyZXVzZSBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjQyMiBidWlsdGluL25vdGVzLmM6NTg4Cittc2dpZCAiYWxsb3cgc3RvcmluZyBlbXB0eSBub3RlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MjMgYnVpbHRpbi9ub3Rlcy5jOjQ5NgorbXNnaWQgInJlcGxhY2UgZXhpc3Rpbmcgbm90ZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ2Fubm90IGFkZCBub3Rlcy4gRm91bmQgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlcy4gVXNlICctZicgdG8gb3ZlcndyaXRlICIKKyJleGlzdGluZyBub3RlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NDYzIGJ1aWx0aW4vbm90ZXMuYzo1NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiT3ZlcndyaXRpbmcgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlc1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NzUgYnVpbHRpbi9ub3Rlcy5jOjYzNyBidWlsdGluL25vdGVzLmM6OTAyCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nIG5vdGUgZm9yIG9iamVjdCAlc1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTcKK21zZ2lkICJyZWFkIG9iamVjdHMgZnJvbSBzdGRpbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NDk5Cittc2dpZCAibG9hZCByZXdyaXRpbmcgY29uZmlnIGZvciA8Y29tbWFuZD4gKGltcGxpZXMgLS1zdGRpbikiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjUxNworbXNnaWQgInRvbyBmZXcgcGFyYW1ldGVycyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NTM4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDYW5ub3QgY29weSBub3Rlcy4gRm91bmQgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlcy4gVXNlICctZicgdG8gb3ZlcndyaXRlICIKKyJleGlzdGluZyBub3RlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3Npbmcgbm90ZXMgb24gc291cmNlIG9iamVjdCAlcy4gQ2Fubm90IGNvcHkuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSAtbS8tRi8tYy8tQyBvcHRpb25zIGhhdmUgYmVlbiBkZXByZWNhdGVkIGZvciB0aGUgJ2VkaXQnIHN1YmNvbW1hbmQuXG4iCisiUGxlYXNlIHVzZSAnZ2l0IG5vdGVzIGFkZCAtZiAtbS8tRi8tYy8tQycgaW5zdGVhZC5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6Njk4Cittc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NzAwCittc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSByZWYgTk9URVNfTUVSR0VfUkVGIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDIKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICdnaXQgbm90ZXMgbWVyZ2UnIHdvcmt0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjIKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NzI0Cittc2dpZCAiY291bGQgbm90IGZpbmQgY29tbWl0IGZyb20gTk9URVNfTUVSR0VfUEFSVElBTC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjcyNgorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgZnJvbSBOT1RFU19NRVJHRV9QQVJUSUFMLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NzM5Cittc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgTk9URVNfTUVSR0VfUkVGIgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDPhM6xz43PhM65z4POtyDPhM6/z4UgTk9URVNfTUVSR0VfUkVGIgorCisjOiBidWlsdGluL25vdGVzLmM6NzQyCittc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplIG5vdGVzIG1lcmdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBub3RlcyBtZXJnZSBzdHJhdGVneSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6Nzg0Cittc2dpZCAiR2VuZXJhbCBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3ODYKK21zZ2lkICJNZXJnZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3ODgKK21zZ2lkICIiCisicmVzb2x2ZSBub3RlcyBjb25mbGljdHMgdXNpbmcgdGhlIGdpdmVuIHN0cmF0ZWd5IChtYW51YWwvb3Vycy90aGVpcnMvdW5pb24vIgorImNhdF9zb3J0X3VuaXEpIgorbXNnc3RyICIiCisizrXPgM65zrvPjc+Dz4TOtSDPhM65z4Igz4PPhc6zzrrPgc6/z43Pg861zrnPgiDPg863zrzOtc65z47Pg861z4nOvSDPh8+BzrfPg865zrzOv8+Azr/Ouc+Ozr3PhM6xz4Igz4TOt869IM61z4DOuc67zrXOs868zq3Ovc63ICIKKyLPg8+Ez4HOsc+EzrfOs865zrrOriAobWFudWFsL291cnMvdGhlaXJzL3VuaW9uL2NhdF9zb3J0X3VuaXEpIgorCisjOiBidWlsdGluL25vdGVzLmM6NzkwCittc2dpZCAiQ29tbWl0dGluZyB1bm1lcmdlZCBub3RlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6NzkyCittc2dpZCAiZmluYWxpemUgbm90ZXMgbWVyZ2UgYnkgY29tbWl0dGluZyB1bm1lcmdlZCBub3RlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6Nzk0Cittc2dpZCAiQWJvcnRpbmcgbm90ZXMgbWVyZ2UgcmVzb2x1dGlvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6Nzk2Cittc2dpZCAiYWJvcnQgbm90ZXMgbWVyZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjgwNworbXNnaWQgImNhbm5vdCBtaXggLS1jb21taXQsIC0tYWJvcnQgb3IgLXMvLS1zdHJhdGVneSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6ODEyCittc2dpZCAibXVzdCBzcGVjaWZ5IGEgbm90ZXMgcmVmIHRvIG1lcmdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biAtcy8tLXN0cmF0ZWd5OiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6ODczCisjLCBjLWZvcm1hdAorbXNnaWQgImEgbm90ZXMgbWVyZ2UgaW50byAlcyBpcyBhbHJlYWR5IGluLXByb2dyZXNzIGF0ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0b3JlIGxpbmsgdG8gY3VycmVudCBub3RlcyByZWYgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6ODc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBdXRvbWF0aWMgbm90ZXMgbWVyZ2UgZmFpbGVkLiBGaXggY29uZmxpY3RzIGluICVzIGFuZCBjb21taXQgdGhlIHJlc3VsdCB3aXRoICIKKyInZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0Jywgb3IgYWJvcnQgdGhlIG1lcmdlIHdpdGggJ2dpdCBub3RlcyBtZXJnZSAtLSIKKyJhYm9ydCcuXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjkwMAorIywgYy1mb3JtYXQKK21zZ2lkICJPYmplY3QgJXMgaGFzIG5vIG5vdGVcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6OTEyCittc2dpZCAiYXR0ZW1wdCB0byByZW1vdmUgbm9uLWV4aXN0ZW50IG5vdGUgaXMgbm90IGFuIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MTUKK21zZ2lkICJyZWFkIG9iamVjdCBuYW1lcyBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6OTU0IGJ1aWx0aW4vcHJ1bmUuYzoxMDggYnVpbHRpbi93b3JrdHJlZS5jOjE2NQorbXNnaWQgImRvIG5vdCByZW1vdmUsIHNob3cgb25seSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6OTU1Cittc2dpZCAicmVwb3J0IHBydW5lZCBub3RlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6OTk4Cittc2dpZCAibm90ZXMtcmVmIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5OTkKK21zZ2lkICJ1c2Ugbm90ZXMgZnJvbSA8bm90ZXMtcmVmPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6MTAzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHN1YmNvbW1hbmQ6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTEKK21zZ2lkICIiCisiZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCBbPG9wdGlvbnM+Li4uXSBbPCA8cmVmLWxpc3Q+IHwgPCA8b2JqZWN0LWxpc3Q+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUyCittc2dpZCAiIgorImdpdCBwYWNrLW9iamVjdHMgWzxvcHRpb25zPi4uLl0gPGJhc2UtbmFtZT4gWzwgPHJlZi1saXN0PiB8IDwgPG9iamVjdC1saXN0Pl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHBhY2tlZCBvYmplY3QgQ1JDIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3JydXB0IHBhY2tlZCBvYmplY3QgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgInJlY3Vyc2l2ZSBkZWx0YSBkZXRlY3RlZCBmb3Igb2JqZWN0ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIm9yZGVyZWQgJXUgb2JqZWN0cywgZXhwZWN0ZWQgJTxQUkl1MzI+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzg5CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2tmaWxlIGlzIGludmFsaWQ6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NzkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHBhY2tmaWxlIGZvciByZXVzZTogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3OTcKK21zZ2lkICJ1bmFibGUgdG8gc2VlayBpbiByZXVzZWQgcGFja2ZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4MDgKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmcm9tIHJldXNlZCBwYWNrZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjgzNgorbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgcGFja3MgYXJlIHNwbGl0IGR1ZSB0byBwYWNrLnBhY2tTaXplTGltaXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4NDkKK21zZ2lkICJXcml0aW5nIG9iamVjdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5MTEgYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk2NAorIywgYy1mb3JtYXQKK21zZ2lkICJ3cm90ZSAlPFBSSXUzMj4gb2JqZWN0cyB3aGlsZSBleHBlY3RpbmcgJTxQUkl1MzI+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTE1OAorbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgYXMgc29tZSBvYmplY3RzIGFyZSBub3QgYmVpbmcgcGFja2VkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU4NgorIywgYy1mb3JtYXQKK21zZ2lkICJkZWx0YSBiYXNlIG9mZnNldCBvdmVyZmxvdyBpbiBwYWNrIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE1OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgb3V0IG9mIGJvdW5kIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE4NjQKK21zZ2lkICJDb3VudGluZyBvYmplY3RzIgorbXNnc3RyICLOms6xz4TOsc68zq3PhM+BzrfPg863IM6xzr3PhM65zrrOtc65zrzOrc69z4nOvSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxOTk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBnZXQgc2l6ZSBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIG9iamVjdCBoZWFkZXIgb2YgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDc5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA5NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCAlcyBjYW5ub3QgYmUgcmVhZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwODIgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCAlcyBpbmNvbnNpc3RlbnQgb2JqZWN0IGxlbmd0aCAoJTxQUkl1TUFYPiB2cyAlPFBSSXVNQVg+KSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMTkKK21zZ2lkICJzdWJvcHRpbWFsIHBhY2sgLSBvdXQgb2YgbWVtb3J5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWx0YSBjb21wcmVzc2lvbiB1c2luZyB1cCB0byAlZCB0aHJlYWRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjU3NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFjayBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHRhZyAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2NjQKK21zZ2lkICJDb21wcmVzc2luZyBvYmplY3RzIgorbXNnc3RyICLOo8+FzrzPgM6vzrXPg863IM6xzr3PhM65zrrOtc65zrzOrc69z4nOvSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjcwCittc2dpZCAiaW5jb25zaXN0ZW5jeSB3aXRoIGRlbHRhIGNvdW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjc1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZXhwZWN0ZWQgZWRnZSBvYmplY3QgSUQsIGdvdCBnYXJiYWdlOlxuIgorIiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4cGVjdGVkIG9iamVjdCBJRCwgZ290IGdhcmJhZ2U6XG4iCisiICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg1NQorbXNnaWQgImludmFsaWQgdmFsdWUgZm9yIC0tbWlzc2luZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5MTQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDIyCittc2dpZCAiY2Fubm90IG9wZW4gcGFjayBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9vc2Ugb2JqZWN0IGF0ICVzIGNvdWxkIG5vdCBiZSBleGFtaW5lZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwMzAKK21zZ2lkICJ1bmFibGUgdG8gZm9yY2UgbG9vc2Ugb2JqZWN0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSByZXYgJyVzJyIKK21zZ3N0ciAizrTOtc69IM61zq/Ovc6xzrkgzq3Ous60zr/Pg863IM63ICclcyciCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgcmV2aXNpb24gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNTAKK21zZ2lkICJ1bmFibGUgdG8gYWRkIHJlY2VudCBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnN1cHBvcnRlZCBpbmRleCB2ZXJzaW9uICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIwNworIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgaW5kZXggdmVyc2lvbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIzNworbXNnaWQgImRvIG5vdCBzaG93IHByb2dyZXNzIG1ldGVyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIzOQorbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQxCittc2dpZCAic2hvdyBwcm9ncmVzcyBtZXRlciBkdXJpbmcgb2JqZWN0IHdyaXRpbmcgcGhhc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQ0Cittc2dpZCAic2ltaWxhciB0byAtLWFsbC1wcm9ncmVzcyB3aGVuIHByb2dyZXNzIG1ldGVyIGlzIHNob3duIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0NQorbXNnaWQgIjx2ZXJzaW9uPlssPG9mZnNldD5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0NgorbXNnaWQgIndyaXRlIHRoZSBwYWNrIGluZGV4IGZpbGUgaW4gdGhlIHNwZWNpZmllZCBpZHggZm9ybWF0IHZlcnNpb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQ5Cittc2dpZCAibWF4aW11bSBzaXplIG9mIGVhY2ggb3V0cHV0IHBhY2sgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTEKK21zZ2lkICJpZ25vcmUgYm9ycm93ZWQgb2JqZWN0cyBmcm9tIGFsdGVybmF0ZSBvYmplY3Qgc3RvcmUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjUzCittc2dpZCAiaWdub3JlIHBhY2tlZCBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1NQorbXNnaWQgImxpbWl0IHBhY2sgd2luZG93IGJ5IG9iamVjdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjU3Cittc2dpZCAibGltaXQgcGFjayB3aW5kb3cgYnkgbWVtb3J5IGluIGFkZGl0aW9uIHRvIG9iamVjdCBsaW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTkKK21zZ2lkICJtYXhpbXVtIGxlbmd0aCBvZiBkZWx0YSBjaGFpbiBhbGxvd2VkIGluIHRoZSByZXN1bHRpbmcgcGFjayIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjEKK21zZ2lkICJyZXVzZSBleGlzdGluZyBkZWx0YXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjYzCittc2dpZCAicmV1c2UgZXhpc3Rpbmcgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjUKK21zZ2lkICJ1c2UgT0ZTX0RFTFRBIG9iamVjdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjY3Cittc2dpZCAidXNlIHRocmVhZHMgd2hlbiBzZWFyY2hpbmcgZm9yIGJlc3QgZGVsdGEgbWF0Y2hlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjkKK21zZ2lkICJkbyBub3QgY3JlYXRlIGFuIGVtcHR5IHBhY2sgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3MQorbXNnaWQgInJlYWQgcmV2aXNpb24gYXJndW1lbnRzIGZyb20gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjczCittc2dpZCAibGltaXQgdGhlIG9iamVjdHMgdG8gdGhvc2UgdGhhdCBhcmUgbm90IHlldCBwYWNrZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjc2Cittc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIGFueSByZWZlcmVuY2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjc5Cittc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlZmVycmVkIGJ5IHJlZmxvZyBlbnRyaWVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4MgorbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWZlcnJlZCB0byBieSB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg1Cittc2dpZCAib3V0cHV0IHBhY2sgdG8gc3Rkb3V0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4NworbXNnaWQgImluY2x1ZGUgdGFnIG9iamVjdHMgdGhhdCByZWZlciB0byBvYmplY3RzIHRvIGJlIHBhY2tlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODkKK21zZ2lkICJrZWVwIHVucmVhY2hhYmxlIG9iamVjdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkxCittc2dpZCAicGFjayBsb29zZSB1bnJlYWNoYWJsZSBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5MworbXNnaWQgInVucGFjayB1bnJlYWNoYWJsZSBvYmplY3RzIG5ld2VyIHRoYW4gPHRpbWU+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5NgorbXNnaWQgInVzZSB0aGUgc3BhcnNlIHJlYWNoYWJpbGl0eSBhbGdvcml0aG0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk4Cittc2dpZCAiY3JlYXRlIHRoaW4gcGFja3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAwCittc2dpZCAiY3JlYXRlIHBhY2tzIHN1aXRhYmxlIGZvciBzaGFsbG93IGZldGNoZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAyCittc2dpZCAiaWdub3JlIHBhY2tzIHRoYXQgaGF2ZSBjb21wYW5pb24gLmtlZXAgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDQKK21zZ2lkICJpZ25vcmUgdGhpcyBwYWNrIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwNgorbXNnaWQgInBhY2sgY29tcHJlc3Npb24gbGV2ZWwiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzA4Cittc2dpZCAiZG8gbm90IGhpZGUgY29tbWl0cyBieSBncmFmdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzEwCittc2dpZCAidXNlIGEgYml0bWFwIGluZGV4IGlmIGF2YWlsYWJsZSB0byBzcGVlZCB1cCBjb3VudGluZyBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxMgorbXNnaWQgIndyaXRlIGEgYml0bWFwIGluZGV4IHRvZ2V0aGVyIHdpdGggdGhlIHBhY2sgaW5kZXgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzE1Cittc2dpZCAiaGFuZGxpbmcgZm9yIG1pc3Npbmcgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTgKK21zZ2lkICJkbyBub3QgcGFjayBvYmplY3RzIGluIHByb21pc29yIHBhY2tmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMjAKK21zZ2lkICJyZXNwZWN0IGlzbGFuZHMgZHVyaW5nIGRlbHRhIGNvbXByZXNzaW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkZWx0YSBjaGFpbiBkZXB0aCAlZCBpcyB0b28gZGVlcCwgZm9yY2luZyAlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFjay5kZWx0YUNhY2hlTGltaXQgaXMgdG9vIGhpZ2gsIGZvcmNpbmcgJWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA0Cittc2dpZCAiLS1tYXgtcGFjay1zaXplIGNhbm5vdCBiZSB1c2VkIHRvIGJ1aWxkIGEgcGFjayBmb3IgdHJhbnNmZXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA2Cittc2dpZCAibWluaW11bSBwYWNrIHNpemUgbGltaXQgaXMgMSBNaUIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDExCittc2dpZCAiLS10aGluIGNhbm5vdCBiZSB1c2VkIHRvIGJ1aWxkIGFuIGluZGV4YWJsZSBwYWNrIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNAorbXNnaWQgIi0ta2VlcC11bnJlYWNoYWJsZSBhbmQgLS11bnBhY2stdW5yZWFjaGFibGUgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjAKK21zZ2lkICJjYW5ub3QgdXNlIC0tZmlsdGVyIHdpdGhvdXQgLS1zdGRvdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDc5Cittc2dpZCAiRW51bWVyYXRpbmcgb2JqZWN0cyIKK21zZ3N0ciAizpHPgM6xz4HOr864zrzOt8+DzrcgzrHOvc+EzrnOus61zrnOvM6tzr3Pic69IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiVG90YWwgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCByZXVzZWQgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pIgorbXNnc3RyICIiCisizqPPhc69zr/Ou865zrrOrCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIM61z4DOsc69zrHPh8+BzrfPg865zrzOv8+Azr/Ouc63zrzOrc69zrEgJTxQUkl1MzI+IChkZWx0YSAiCisiJTxQUkl1MzI+KSIKKworIzogYnVpbHRpbi9wYWNrLXJlZnMuYzo3Cittc2dpZCAiZ2l0IHBhY2stcmVmcyBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stcmVmcy5jOjE1Cittc2dpZCAicGFjayBldmVyeXRoaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKK21zZ2lkICJwcnVuZSBsb29zZSByZWZzIChkZWZhdWx0KSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjkKK21zZ2lkICJnaXQgcHJ1bmUtcGFja2VkIFstbiB8IC0tZHJ5LXJ1bl0gWy1xIHwgLS1xdWlldF0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo0MgorbXNnaWQgIlJlbW92aW5nIGR1cGxpY2F0ZSBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMgorbXNnaWQgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGltZT5dIFstLV0gWzxoZWFkPi4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wcnVuZS5jOjEwOQorbXNnaWQgInJlcG9ydCBwcnVuZWQgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BydW5lLmM6MTEyCittc2dpZCAiZXhwaXJlIG9iamVjdHMgb2xkZXIgdGhhbiA8dGltZT4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wcnVuZS5jOjExNAorbXNnaWQgImxpbWl0IHRyYXZlcnNhbCB0byBvYmplY3RzIG91dHNpZGUgcHJvbWlzb3IgcGFja2ZpbGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMjgKK21zZ2lkICJjYW5ub3QgcHJ1bmUgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6NjEgYnVpbHRpbi9wdWxsLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjgzCittc2dpZCAiZ2l0IHB1bGwgWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6MTM0Cittc2dpZCAiY29udHJvbCBmb3IgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6MTM4Cittc2dpZCAiT3B0aW9ucyByZWxhdGVkIHRvIG1lcmdpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6MTQxCittc2dpZCAiaW5jb3Jwb3JhdGUgY2hhbmdlcyBieSByZWJhc2luZyByYXRoZXIgdGhhbiBtZXJnaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjE2OCBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNDkgYnVpbHRpbi9yZXZlcnQuYzoxMjMKK21zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6MTc3Cittc2dpZCAiYXV0b21hdGljYWxseSBzdGFzaC9zdGFzaCBwb3AgYmVmb3JlIGFuZCBhZnRlciByZWJhc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6MTkzCittc2dpZCAiT3B0aW9ucyByZWxhdGVkIHRvIGZldGNoaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjIwMworbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBsb2NhbCBicmFuY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6MjExCittc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgcHVsbGVkIGluIHBhcmFsbGVsIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciBwdWxsLmZmOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1bGwuYzo0MjIKK21zZ2lkICIiCisiVGhlcmUgaXMgbm8gY2FuZGlkYXRlIGZvciByZWJhc2luZyBhZ2FpbnN0IGFtb25nIHRoZSByZWZzIHRoYXQgeW91IGp1c3QgIgorImZldGNoZWQuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQyNAorbXNnaWQgIiIKKyJUaGVyZSBhcmUgbm8gY2FuZGlkYXRlcyBmb3IgbWVyZ2luZyBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0IGZldGNoZWQuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQyNQorbXNnaWQgIiIKKyJHZW5lcmFsbHkgdGhpcyBtZWFucyB0aGF0IHlvdSBwcm92aWRlZCBhIHdpbGRjYXJkIHJlZnNwZWMgd2hpY2ggaGFkIG5vXG4iCisibWF0Y2hlcyBvbiB0aGUgcmVtb3RlIGVuZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgYXNrZWQgdG8gcHVsbCBmcm9tIHRoZSByZW1vdGUgJyVzJywgYnV0IGRpZCBub3Qgc3BlY2lmeVxuIgorImEgYnJhbmNoLiBCZWNhdXNlIHRoaXMgaXMgbm90IHRoZSBkZWZhdWx0IGNvbmZpZ3VyZWQgcmVtb3RlXG4iCisiZm9yIHlvdXIgY3VycmVudCBicmFuY2gsIHlvdSBtdXN0IHNwZWNpZnkgYSBicmFuY2ggb24gdGhlIGNvbW1hbmQgbGluZS4iCittc2dzdHIgIiIKKyLOls63z4TOrs+DzrHPhM61IM69zrEgzrXOvc+Dz4nOvM6xz4TPjs+DzrXPhM61IM6xz4DPjCDPhM6/IM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/ICclcycsIM6xzrvOu86sIM60zrUgzrTPjs+DzrHPhM61XG4iCisizrrOrM+Azr/Ouc6/zr0gzrrOu86szrTOvy4gzpHPhs6/z40gzrHPhc+Ez4wgzrTOtc69IM61zq/Ovc6xzrkgz4TOvyDPgM+Bzr/Otc+AzrnOu861zrPOvM6tzr3OvyDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3Ov1xuIgorIs6zzrnOsSDPhM6/zr0gz4TPgc6tz4fOv869z4TOrCDPg86xz4IgzrrOu86szrTOvywgz4DPgc6tz4DOtc65IM69zrEgzrTPjs+DzrXPhM61IM6tzr3Osc69IM66zrvOrM60zr8gz4PPhM63IM6zz4HOsc68zrzOriDOtc69z4TOv867z47OvS4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzMyBidWlsdGluL3JlYmFzZS5jOjk1NiBnaXQtcGFyc2UtcmVtb3RlLnNoOjczCittc2dpZCAiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLiIKK21zZ3N0ciAizpTOtSDOss+Bzq/Pg866zrXPg8+EzrUgzrHPhc+Ezq4gz4TOtyDPg8+EzrnOs868zq4gz4POtSDOus6sz4DOv865zr/OvSDOus67zqzOtM6/LiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDM1IGJ1aWx0aW4vcHVsbC5jOjQ1MCBnaXQtcGFyc2UtcmVtb3RlLnNoOjc5Cittc2dpZCAiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIHJlYmFzZSBhZ2FpbnN0LiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1bGwuYzo0MzcgYnVpbHRpbi9wdWxsLmM6NDUyIGdpdC1wYXJzZS1yZW1vdGUuc2g6ODIKK21zZ2lkICJQbGVhc2Ugc3BlY2lmeSB3aGljaCBicmFuY2ggeW91IHdhbnQgdG8gbWVyZ2Ugd2l0aC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDM4IGJ1aWx0aW4vcHVsbC5jOjQ1MworbXNnaWQgIlNlZSBnaXQtcHVsbCgxKSBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDQwIGJ1aWx0aW4vcHVsbC5jOjQ0NiBidWlsdGluL3B1bGwuYzo0NTUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6OTYyIGdpdC1wYXJzZS1yZW1vdGUuc2g6NjQKK21zZ2lkICI8cmVtb3RlPiIKK21zZ3N0ciAiPM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/PiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDQwIGJ1aWx0aW4vcHVsbC5jOjQ1NSBidWlsdGluL3B1bGwuYzo0NjAKKyM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU2NCBnaXQtcGFyc2UtcmVtb3RlLnNoOjY1Cittc2dpZCAiPGJyYW5jaD4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDQ4IGJ1aWx0aW4vcmViYXNlLmM6OTU0IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzUKK21zZ2lkICJUaGVyZSBpcyBubyB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGN1cnJlbnQgYnJhbmNoLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1bGwuYzo0NTcgZ2l0LXBhcnNlLXJlbW90ZS5zaDo5NQorbXNnaWQgIiIKKyJJZiB5b3Ugd2lzaCB0byBzZXQgdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoaXMgYnJhbmNoIHlvdSBjYW4gZG8gc28gd2l0aDoiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDYyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGNvbmZpZ3VyYXRpb24gc3BlY2lmaWVzIHRvIG1lcmdlIHdpdGggdGhlIHJlZiAnJXMnXG4iCisiZnJvbSB0aGUgcmVtb3RlLCBidXQgbm8gc3VjaCByZWYgd2FzIGZldGNoZWQuIgorbXNnc3RyICIiCisizp/OuSDPgc+FzrjOvM6vz4POtc65z4Igz4POsc+CIM6/z4HOr862zr/Phc69IM69zrEgzrPOr869zrXOuSDPg8+FzrPPh8+Ozr3Otc+Fz4POtyDOvM61IM+Ezr8gcmVmICclcydcbiIKKyLOsc+Az4wgz4TOv869IM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/IM61zr7Phc+AzrfPgc61z4TOt8+Ezq4sIM6xzrvOu86sIM60zrXOvSDOrc+HzrXOuSDOs86vzr3Otc65IM6xzr3OrM66z4TOt8+Dzrcgz4TOrc+Ezr/Ouc6/z4UgcmVmLiIKKworIzogYnVpbHRpbi9wdWxsLmM6NTY2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgY29tbWl0ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjg0NAorbXNnaWQgImlnbm9yaW5nIC0tdmVyaWZ5LXNpZ25hdHVyZXMgZm9yIHJlYmFzZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1bGwuYzo4OTIKK21zZ2lkICItLVtuby1dYXV0b3N0YXNoIG9wdGlvbiBpcyBvbmx5IHZhbGlkIHdpdGggLS1yZWJhc2UuIgorbXNnc3RyICLOtyDOtc+AzrnOu86/zrPOriAtLVtuby1dYXV0b3N0YXNoIM65z4PPh8+NzrXOuSDOvM+Mzr3OvyDOvM61IM+Ezr8gLS1yZWJhc2UuIgorCisjOiBidWlsdGluL3B1bGwuYzo5MDAKK21zZ2lkICJVcGRhdGluZyBhbiB1bmJvcm4gYnJhbmNoIHdpdGggY2hhbmdlcyBhZGRlZCB0byB0aGUgaW5kZXguIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjkwNAorbXNnaWQgInB1bGwgd2l0aCByZWJhc2UiCittc2dzdHIgIs61zr3Pg8+JzrzOrM+Ez4nPg863IM68zrUgcmViYXNlIgorCisjOiBidWlsdGluL3B1bGwuYzo5MDUKK21zZ2lkICJwbGVhc2UgY29tbWl0IG9yIHN0YXNoIHRoZW0uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjkzMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmV0Y2ggdXBkYXRlZCB0aGUgY3VycmVudCBicmFuY2ggaGVhZC5cbiIKKyJmYXN0LWZvcndhcmRpbmcgeW91ciB3b3JraW5nIHRyZWUgZnJvbVxuIgorImNvbW1pdCAlcy4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6OTM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDYW5ub3QgZmFzdC1mb3J3YXJkIHlvdXIgd29ya2luZyB0cmVlLlxuIgorIkFmdGVyIG1ha2luZyBzdXJlIHRoYXQgeW91IHNhdmVkIGFueXRoaW5nIHByZWNpb3VzIGZyb21cbiIKKyIkIGdpdCBkaWZmICVzXG4iCisib3V0cHV0LCBydW5cbiIKKyIkIGdpdCByZXNldCAtLWhhcmRcbiIKKyJ0byByZWNvdmVyLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1bGwuYzo5NTEKK21zZ2lkICJDYW5ub3QgbWVyZ2UgbXVsdGlwbGUgYnJhbmNoZXMgaW50byBlbXB0eSBoZWFkLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1bGwuYzo5NTUKK21zZ2lkICJDYW5ub3QgcmViYXNlIG9udG8gbXVsdGlwbGUgYnJhbmNoZXMuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjk2MgorbXNnaWQgImNhbm5vdCByZWJhc2Ugd2l0aCBsb2NhbGx5IHJlY29yZGVkIHN1Ym1vZHVsZSBtb2RpZmljYXRpb25zIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjE5Cittc2dpZCAiZ2l0IHB1c2ggWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCittc2dzdHIgImdpdCBwdXNoIFs8zrXPgM65zrvOv86zzq3Pgj5dIFs8zrHPgM6/zrjOtc+Ezq7Pgc65zr8+IFs8cmVmc3BlYz4uLi5dXSIKKworIzogYnVpbHRpbi9wdXNoLmM6MTExCittc2dpZCAidGFnIHNob3J0aGFuZCB3aXRob3V0IDx0YWc+IgorbXNnc3RyICLPg8+Fzr3PhM6/zrzOv86zz4HOsc+Gzq/OsSDOtc+EzrnOus6tz4TOsc+CIM+Hz4nPgc6vz4IgPM61z4TOuc66zq3PhM6xPiIKKworIzogYnVpbHRpbi9wdXNoLmM6MTIxCittc2dpZCAiLS1kZWxldGUgb25seSBhY2NlcHRzIHBsYWluIHRhcmdldCByZWYgbmFtZXMiCittc2dzdHIgIs+Ezr8gLS1kZWxldGUgzrTOrc+HzrXPhM6xzrkgzrzPjM69zr8gzrHPgM67zqwgzr/Ovc+MzrzOsc+EzrEgcmVmIM+Az4HOv86/z4HOuc+DzrzOv8+NIgorCisjOiBidWlsdGluL3B1c2guYzoxNjcKK21zZ2lkICIiCisiXG4iCisiVG8gY2hvb3NlIGVpdGhlciBvcHRpb24gcGVybWFuZW50bHksIHNlZSBwdXNoLmRlZmF1bHQgaW4gJ2dpdCBoZWxwIGNvbmZpZycuIgorbXNnc3RyICIiCisiXG4iCisizpPOuc6xIM69zrEgzrTOuc6xzrvOrc6+zrXPhM61IM6/z4DOv865zrHOtM6uz4DOv8+EzrUgzrHPgM+MIM+EzrnPgiDOtM+Nzr8gzrXPgM65zrvOv86zzq3PgiDOvM+Mzr3Ouc68zrEsIM60zrXOr8+EzrUgz4TOvyBwdXNoLiIKKyJkZWZhdWx0IM+Dz4TOvyAnZ2l0IGhlbHAgY29uZmlnJy4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIHVwc3RyZWFtIGJyYW5jaCBvZiB5b3VyIGN1cnJlbnQgYnJhbmNoIGRvZXMgbm90IG1hdGNoXG4iCisidGhlIG5hbWUgb2YgeW91ciBjdXJyZW50IGJyYW5jaC4gIFRvIHB1c2ggdG8gdGhlIHVwc3RyZWFtIGJyYW5jaFxuIgorIm9uIHRoZSByZW1vdGUsIHVzZVxuIgorIlxuIgorIiAgICBnaXQgcHVzaCAlcyBIRUFEOiVzXG4iCisiXG4iCisiVG8gcHVzaCB0byB0aGUgYnJhbmNoIG9mIHRoZSBzYW1lIG5hbWUgb24gdGhlIHJlbW90ZSwgdXNlXG4iCisiXG4iCisiICAgIGdpdCBwdXNoICVzIEhFQURcbiIKKyIlcyIKK21zZ3N0ciAiIgorIs6fIM+Az4HOv8+CIM+EzrEgz4DOrM69z4kgzrrOu86szrTOv8+CIM+Ezr/PhSDPhM+Bzq3Ph86/zr3PhM6/z4IgzrrOu86szrTOv8+FIM+DzrHPgiDOtM61zr0gz4TOsc65z4HOuc6szrbOtc65IM68zrVcbiIKKyLPhM6/IM+Mzr3Ov868zrEgz4TOv8+FIM+Ez4HOrc+Hzr/Ovc+Ezr/PgiDOus67zqzOtM6/z4Ugz4POsc+CLiAgzpPOuc6xIM69zrEgzrTOt868zr/Pg865zrXPjc+DzrXPhM61IM+Dz4TOv869IM66zrvOrM60zr8gz4DPgc6/z4Igz4TOsSAiCisiz4DOrM69z4lcbiIKKyLPg8+Ezr/OvSDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3OvyDOtc6+z4XPgM63z4HOtc+EzrfPhM6uLCDPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61XG4iCisiXG4iCisiICAgIGdpdCBwdXNoICVzIEhFQUQ6JXNcbiIKKyJcbiIKKyLOk865zrEgzr3OsSDOtM63zrzOv8+DzrnOtc+Nz4POtc+EzrUgz4PPhM6/zr0gzrrOu86szrTOvyDOvM61IM+Ezr8gzq/OtM65zr8gz4zOvc6/zrzOsSDPg8+Ezr/OvSDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3OvyAiCisizrXOvs+Fz4DOt8+BzrXPhM63z4TOriwgz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtVxuIgorIlxuIgorIiAgICBnaXQgcHVzaCAlcyBIRUFEXG4iCisiJXMiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjE4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLlxuIgorIlRvIHB1c2ggdGhlIGhpc3RvcnkgbGVhZGluZyB0byB0aGUgY3VycmVudCAoZGV0YWNoZWQgSEVBRClcbiIKKyJzdGF0ZSBub3csIHVzZVxuIgorIlxuIgorIiAgICBnaXQgcHVzaCAlcyBIRUFEOjxuYW1lLW9mLXJlbW90ZS1icmFuY2g+XG4iCittc2dzdHIgIiIKKyLOlM61IM6yz4HOr8+DzrrOtc+Dz4TOtSDOsc+Fz4TOriDPhM63IM+Dz4TOuc6zzrzOriDPg861IM66zqzPgM6/zrnOv869IM66zrvOrM60zr8uXG4iCisizpPOuc6xIM69zrEgzrTOt868zr/Pg865zrXPjc+DzrXPhM61IM+Ezr8gzrnPg8+Ezr/Pgc65zrrPjCDPgM6/z4Ugzr/OtM63zrPOtc6vIM+Dz4TOt869IM+Ez4HOrc+Hzr/Phc+DzrEgzrrOsc+EzqzPg8+EzrHPg863XG4iCisiKM6xz4DOv8+Dz4XOvc60zrXOtM61zrzOrc69zr/PhSBIRUFEKSDPhM+Oz4HOsSwgz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtVxuIgorIlxuIgorIiAgICBnaXQgcHVzaCAlcyBIRUFEOjzPjM69zr/OvM6xLc+Ezr/PhS3Osc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3Ov8+FLc66zrvOrM60zr/PhT5cbiIKKworIzogYnVpbHRpbi9wdXNoLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgY3VycmVudCBicmFuY2ggJXMgaGFzIG5vIHVwc3RyZWFtIGJyYW5jaC5cbiIKKyJUbyBwdXNoIHRoZSBjdXJyZW50IGJyYW5jaCBhbmQgc2V0IHRoZSByZW1vdGUgYXMgdXBzdHJlYW0sIHVzZVxuIgorIlxuIgorIiAgICBnaXQgcHVzaCAtLXNldC11cHN0cmVhbSAlcyAlc1xuIgorbXNnc3RyICIiCisizp8gz4TPgc6tz4fPic69IM66zrvOrM60zr/PgiAlcyDOtM61zr0gzq3Ph861zrkgz4DPgc6/z4Igz4TOsSDPgM6szr3PiSDOus67zqzOtM6/LlxuIgorIs6TzrnOsSDOvc6xIM60zrfOvM6/z4POuc61z43Pg861z4TOtSDPhM6/zr0gz4TPgc6tz4fOv869z4TOsSDOus67zqzOtM6/IM66zrHOuSDOvc6xIM6/z4HOr8+DzrXPhM61IM+Ezr/OvSDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3OvyDPic+CICIKKyLPgM+Bzr/PgiDPhM6xIM+AzqzOvc+JIM+Ezr/PhSwgz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtVxuIgorIlxuIgorIiAgICBnaXQgcHVzaCAtLXNldC11cHN0cmVhbSAlcyAlc1xuIgorCisjOiBidWlsdGluL3B1c2guYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlIGN1cnJlbnQgYnJhbmNoICVzIGhhcyBtdWx0aXBsZSB1cHN0cmVhbSBicmFuY2hlcywgcmVmdXNpbmcgdG8gcHVzaC4iCittc2dzdHIgIiIKKyLOnyDPhM+Bzq3Ph8+Jzr0gzrrOu86szrTOv8+CICVzIM6tz4fOtc65IM+Azr/Ou867zrHPgM67zr/Pjc+CIM+Az4HOv8+CIM+EzrEgz4DOrM69z4kgzrrOu86szrTOv8+Fz4IsIM6xz4HOvc6/z43OvM6xzrkgzr3OsSAiCisizrTOt868zr/Pg865zrXPjc+Dz4kuIgorCisjOiBidWlsdGluL3B1c2guYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBhcmUgcHVzaGluZyB0byByZW1vdGUgJyVzJywgd2hpY2ggaXMgbm90IHRoZSB1cHN0cmVhbSBvZlxuIgorInlvdXIgY3VycmVudCBicmFuY2ggJyVzJywgd2l0aG91dCB0ZWxsaW5nIG1lIHdoYXQgdG8gcHVzaFxuIgorInRvIHVwZGF0ZSB3aGljaCByZW1vdGUgYnJhbmNoLiIKK21zZ3N0ciAiIgorIs6UzrfOvM6/z4POuc61z43Otc+EzrUgz4PPhM6/IM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/ICclcycsIM+Azr/PhSDOtM61zr0gzrXOr869zrHOuSDPhM6/IM+Az4HOv8+CIM+EzrEgz4DOrM69z4kgz4TOv8+FXG4iCisiz4TPgc6tz4fOv869z4TPjM+CIM+DzrHPgiDOus67zqzOtM6/z4UgJyVzJywgz4fPic+Bzq/PgiDOvc6xIM68zr/PhSDPgM61zq/PhM61IM+Ezrkgzr3OsSDOtM63zrzOv8+DzrnOtc+Nz4PPiVxuIgorIs66zrHOuSDPgM6/zrnOv869IM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/IM66zrvOrM60zr8gzr3OsSDOtc69zrfOvM61z4HPjs+Dz4kuIgorCisjOiBidWlsdGluL3B1c2guYzoyNjkKK21zZ2lkICIiCisiWW91IGRpZG4ndCBzcGVjaWZ5IGFueSByZWZzcGVjcyB0byBwdXNoLCBhbmQgcHVzaC5kZWZhdWx0IGlzIFwibm90aGluZ1wiLiIKK21zZ3N0ciAiIgorIs6UzrXOvSDPgM+Bzr/Pg860zrnOv8+Bzq/Pg86xz4TOtSByZWZzcGVjcyDPgM+Bzr/PgiDOtM63zrzOv8+Dzq/Otc+Fz4POtywgzrrOsc65IM+Ezr8gz4DPgc6/zrXPgM65zrvOtc6zzrzOrc69zr8gcHVzaC4iCisiZGVmYXVsdCDOtc6vzr3Osc65IM+Ezq/PgM6/z4TOsTogXCJub3RoaW5nXCIuIgorCisjOiBidWlsdGluL3B1c2guYzoyNzYKK21zZ2lkICIiCisiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHRpcCBvZiB5b3VyIGN1cnJlbnQgYnJhbmNoIGlzIGJlaGluZFxuIgorIml0cyByZW1vdGUgY291bnRlcnBhcnQuIEludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXMgKGUuZy5cbiIKKyInZ2l0IHB1bGwgLi4uJykgYmVmb3JlIHB1c2hpbmcgYWdhaW4uXG4iCisiU2VlIHRoZSAnTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzJyBpbiAnZ2l0IHB1c2ggLS1oZWxwJyBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKyLOkc+Azr/Pgc+Bzq/Phs64zrfOus6xzr0gzr/OuSDOtc69zrfOvM61z4HPjs+DzrXOuc+CIM61z4DOtc65zrTOriDOtyDOrM66z4HOtyDPhM6/z4Ugz4TPgc6tz4fOv869z4TOv8+CIM66zrvOrM60zr/PhSDOtc6vzr3Osc65IM+Azq/Pg8+JICIKKyLOsc+Az4xcbiIKKyLPhM6/IM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/IM6xzr3PhM6vz4PPhM6/zrnPh8+MIM+Ezr/PhS4gzpXOvc+Dz4nOvM6xz4TPjs+Dz4TOtSDPhM65z4IgzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zrXPgiDOsc67zrvOsc6zzq3PgiAoz4AuIgorIs+HLlxuIgorIidnaXQgcHVsbCAuLi4nKSDPgM+BzrnOvSDOtM63zrzOv8+DzrnOtc+Nz4POtc+EzrUgzr7Osc69zqwuXG4iCisizpTOtc6vz4TOtSDPhM63ICfOo863zrzOtc6vz4nPg863IM6zzrnOsSDPhM6xz4fOtc6vzrXPgiDPgM+Bzr/Pic64zq7Pg861zrnPgicgz4PPhM6/ICdnaXQgcHVzaCAtLWhlbHAnIM6zzrnOsSAiCisizrvOtc+Az4TOv868zq3Pgc61zrnOtc+CLiIKKworIzogYnVpbHRpbi9wdXNoLmM6MjgyCittc2dpZCAiIgorIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIGEgcHVzaGVkIGJyYW5jaCB0aXAgaXMgYmVoaW5kIGl0cyByZW1vdGVcbiIKKyJjb3VudGVycGFydC4gQ2hlY2sgb3V0IHRoaXMgYnJhbmNoIGFuZCBpbnRlZ3JhdGUgdGhlIHJlbW90ZSBjaGFuZ2VzXG4iCisiKGUuZy4gJ2dpdCBwdWxsIC4uLicpIGJlZm9yZSBwdXNoaW5nIGFnYWluLlxuIgorIlNlZSB0aGUgJ05vdGUgYWJvdXQgZmFzdC1mb3J3YXJkcycgaW4gJ2dpdCBwdXNoIC0taGVscCcgZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisizpHPgM6/z4HPgc6vz4bOuM63zrrOsc69IM6/zrkgzrXOvc63zrzOtc+Bz47Pg861zrnPgiDOtc+AzrXOuc60zq4gzrcgzqzOus+BzrcgzrXOvc+Mz4IgzrrOu86szrTOv8+FIM+Azr/PhSDOtM63zrzOv8+DzrnOtc+Nz4TOt866zrUgzrXOr869zrHOuSAiCisiz4DOr8+Dz4kgzrHPgM+MXG4iCisiz4TOvyDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3OvyDOsc69z4TOr8+Dz4TOv865z4fPjCDPhM6/z4UuIM6Vzr7OrM6zzrXPhM61IM6xz4XPhM+Mzr0gz4TOv869IM66zrvOrM60zr8gzrrOsc65IM61zr3Pg8+JzrzOsc+Ez47Pg8+EzrUgz4TOuc+CICIKKyLOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3Otc+CIM6xzrvOu86xzrPOrc+CXG4iCisiKM+ALs+HLiAnZ2l0IHB1bGwgLi4uJykgz4DPgc65zr0gzrTOt868zr/Pg865zrXPjc+DzrXPhM61IM6+zrHOvc6sLlxuIgorIs6UzrXOr8+EzrUgz4TOtyAnzqPOt868zrXOr8+Jz4POtyDOs865zrEgz4TOsc+HzrXOr861z4Igz4DPgc6/z4nOuM6uz4POtc65z4InIM+Dz4TOvyAnZ2l0IHB1c2ggLS1oZWxwJyDOs865zrEgIgorIs67zrXPgM+Ezr/OvM6tz4HOtc65zrXPgi4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjI4OAorbXNnaWQgIiIKKyJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgcmVtb3RlIGNvbnRhaW5zIHdvcmsgdGhhdCB5b3UgZG9cbiIKKyJub3QgaGF2ZSBsb2NhbGx5LiBUaGlzIGlzIHVzdWFsbHkgY2F1c2VkIGJ5IGFub3RoZXIgcmVwb3NpdG9yeSBwdXNoaW5nXG4iCisidG8gdGhlIHNhbWUgcmVmLiBZb3UgbWF5IHdhbnQgdG8gZmlyc3QgaW50ZWdyYXRlIHRoZSByZW1vdGUgY2hhbmdlc1xuIgorIihlLmcuLCAnZ2l0IHB1bGwgLi4uJykgYmVmb3JlIHB1c2hpbmcgYWdhaW4uXG4iCisiU2VlIHRoZSAnTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzJyBpbiAnZ2l0IHB1c2ggLS1oZWxwJyBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKyLOkc+Azr/Pgc+Bzq/Phs64zrfOus6xzr0gzr/OuSDOtc69zrfOvM61z4HPjs+DzrXOuc+CIM61z4DOtc65zrTOriDOvyDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3Ov8+CIM61zr7Phc+AzrfPgc61z4TOt8+Ezq7PgiDPgM61z4HOuc6tz4fOtc65ICIKKyLOrc+BzrPOvyDPgM6/z4VcbiIKKyLOtM61IM60zrnOsc64zq3PhM61z4TOtSDPhM6/z4DOuc66zqwuIM6Rz4XPhM+MIM+Az4HOv866zrHOu861zq/PhM6xzrkgz4PPhc69zq7OuM+Jz4Igz4zPhM6xzr0gzq3Ovc6xIM6szrvOu86/IM6xz4DOv864zrXPhM6uz4HOuc6/IM6tz4fOtc65ICIKKyLOtM63zrzOv8+DzrnOtc+Nz4POtc65XG4iCisiz4PPhM6/IM6vzrTOuc6/IHJlZi4gzpzPgM6/z4HOtc6vIM69zrEgzrjOrc67zrXPhM61IM69zrEgzrXOvc+Dz4nOvM6xz4TPjs+DzrXPhM61IM+Az4HPjs+EzrEgz4TOuc+CIM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc61z4IgIgorIs6xzrvOu86xzrPOrc+CXG4iCisiKM+ALs+HLiAnZ2l0IHB1bGwgLi4uJykgz4DPgc65zr0gzrTOt868zr/Pg865zrXPjc+DzrXPhM61IM6+zrHOvc6sLlxuIgorIs6UzrXOr8+EzrUgz4TOtyAnzqPOt868zrXOr8+Jz4POtyDOs865zrEgz4TOsc+HzrXOr861z4Igz4DPgc6/z4nOuM6uz4POtc65z4InIM+Dz4TOvyAnZ2l0IHB1c2ggLS1oZWxwJyDOs865zrEgIgorIs67zrXPgM+Ezr/OvM6tz4HOtc65zrXPgi4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjI5NQorbXNnaWQgIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSB0YWcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIHJlbW90ZS4iCittc2dzdHIgIiIKKyLOkc+Azr/Pgc+Bzq/Phs64zrfOus6xzr0gzr/OuSDOtc69zrfOvM61z4HPjs+DzrXOuc+CIM61z4DOtc65zrTOriDOtyDOtc+EzrnOus6tz4TOsSDPhc+AzqzPgc+HzrXOuSDOrs60zrcgz4PPhM6/zr0gzrHPgM6/zrzOsc66z4HPhc+DzrzOrc69zr8gIgorIs61zr7Phc+AzrfPgc61z4TOt8+Ezq4uIgorCisjOiBidWlsdGluL3B1c2guYzoyOTgKK21zZ2lkICIiCisiWW91IGNhbm5vdCB1cGRhdGUgYSByZW1vdGUgcmVmIHRoYXQgcG9pbnRzIGF0IGEgbm9uLWNvbW1pdCBvYmplY3QsXG4iCisib3IgdXBkYXRlIGEgcmVtb3RlIHJlZiB0byBtYWtlIGl0IHBvaW50IGF0IGEgbm9uLWNvbW1pdCBvYmplY3QsXG4iCisid2l0aG91dCB1c2luZyB0aGUgJy0tZm9yY2UnIG9wdGlvbi5cbiIKK21zZ3N0ciAiIgorIs6UzrUgzrzPgM6/z4HOtc6vz4TOtSDOvc6xIM61zr3Ot868zrXPgc+Oz4POtc+EzrUgzq3Ovc6xIM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/IHJlZiDPgM6/z4UgzrTOtc6vz4fOvc61zrkgz4POtSDOsc69z4TOuc66zrXOr868zrXOvc6/ICIKKyLPgM6/z4UgzrTOtc69IM61zq/Ovc6xzrkgz4XPgM6/zrLOv867zq4sXG4iCisizq4gzr3OsSDOtc69zrfOvM61z4HPjs+DzrXPhM61IM6tzr3OsSDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3OvyByZWYgzrPOuc6xIM69zrEgz4TOvyDOus6szr3Otc+EzrUgzr3OsSDOtM61zq/Ph869zrXOuSDPg861ICIKKyLOsc69z4TOuc66zrXOr868zrXOvc6/IM+Azr/PhSDOtM61zr0gzrXOr869zrHOuSDPhc+Azr/Oss6/zrvOrixcbiIKKyLPh8+Jz4HOr8+CIM69zrEgz4fPgc63z4POuc68zr/PgM6/zrnOrs+DzrXPhM61IM+EzrfOvSDOtc+AzrnOu86/zrPOriDOtc6+zrHOvc6szrPOus6xz4POt8+CICctLWZvcmNlJy5cbiIKKworIzogYnVpbHRpbi9wdXNoLmM6MzU5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1c2hpbmcgdG8gJXNcbiIKK21zZ3N0ciAizpTOt868zr/Pg86vzrXPhc+Dzrcgz4PPhM6/ICVzXG4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjM2NAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcHVzaCBzb21lIHJlZnMgdG8gJyVzJyIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrTOt868zr/Pg86vzrXPhc+DzrcgzrrOrM+Azr/Ouc+Jzr0gcmVmIM+Dz4TOvyAnJXMnIgorCisjOiBidWlsdGluL3B1c2guYzozOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHJlcG9zaXRvcnkgJyVzJyIKK21zZ3N0ciAizrvOrM64zr/PgiDOsc+Azr/OuM61z4TOrs+BzrnOvyAnJXMnIgorCisjOiBidWlsdGluL3B1c2guYzozOTkKK21zZ2lkICIiCisiTm8gY29uZmlndXJlZCBwdXNoIGRlc3RpbmF0aW9uLlxuIgorIkVpdGhlciBzcGVjaWZ5IHRoZSBVUkwgZnJvbSB0aGUgY29tbWFuZC1saW5lIG9yIGNvbmZpZ3VyZSBhIHJlbW90ZSAiCisicmVwb3NpdG9yeSB1c2luZ1xuIgorIlxuIgorIiAgICBnaXQgcmVtb3RlIGFkZCA8bmFtZT4gPHVybD5cbiIKKyJcbiIKKyJhbmQgdGhlbiBwdXNoIHVzaW5nIHRoZSByZW1vdGUgbmFtZVxuIgorIlxuIgorIiAgICBnaXQgcHVzaCA8bmFtZT5cbiIKK21zZ3N0ciAiIgorIs6UzrXOvSDOrc+HzrXOuSDPgc+FzrjOvM65z4PPhM61zq8gz4DPgc6/zr/Pgc65z4POvM+Mz4IgzrTOt868zr/Pg86vzrXPhc+DzrfPgi5cbiIKKyLOn8+Bzq/Pg8+EzrUgz4TOvyBVUkwgzrHPgM+MIM+EzrcgzrPPgc6xzrzOvM6uIM61zr3PhM6/zrvPjs69IM6uIM+Bz4XOuM68zq/Pg8+EzrUgzq3Ovc6xIM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/IM6xz4DOv864zrXPhM6uz4HOuc6/ICIKKyLPh8+BzrfPg865zrzOv8+Azr/Ouc+Ozr3PhM6xz4JcbiIKKyJcbiIKKyIgICAgZ2l0IHJlbW90ZSBhZGQgPM+Mzr3Ov868zrE+IDx1cmw+XG4iCisiXG4iCisizrrOsc65IM6tz4DOtc65z4TOsSDOtM63zrzOv8+DzrnOtc+Nz4PPhM61IM+Hz4HOt8+DzrnOvM6/z4DOv865z47Ovc+EzrHPgiDPhM6/IM+Mzr3Ov868zrEgz4TOv8+FIM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/z4VcbiIKKyJcbiIKKyIgICAgZ2l0IHB1c2ggPM+Mzr3Ov868zrE+XG4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1NAorbXNnaWQgInJlcG9zaXRvcnkiCittc2dzdHIgIs6xz4DOv864zrXPhM6uz4HOuc6/IgorCisjOiBidWlsdGluL3B1c2guYzo1NTUgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjQKK21zZ2lkICJwdXNoIGFsbCByZWZzIgorbXNnc3RyICLOvc6xIM6zzq/Ovc61zrkgzrTOt868zr/Pg86vzrXPhc+Dzrcgz4zOu8+Jzr0gz4TPic69IHJlZiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU2IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY2Cittc2dpZCAibWlycm9yIGFsbCByZWZzIgorbXNnc3RyICLOvc6xIM6zzq/Ovc61zrkgzrHOvc+EzrnOs8+BzrHPhs6uIM+MzrvPic69IM+Ez4nOvSByZWYiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1OAorbXNnaWQgImRlbGV0ZSByZWZzIgorbXNnc3RyICLOvc6xIM6zzq/Ovc61zrkgzrTOuc6xzrPPgc6xz4bOriDPhM+Jzr0gcmVmIgorCisjOiBidWlsdGluL3B1c2guYzo1NTkKK21zZ2lkICJwdXNoIHRhZ3MgKGNhbid0IGJlIHVzZWQgd2l0aCAtLWFsbCBvciAtLW1pcnJvcikiCittc2dzdHIgIiIKKyLOvc6xIM6zzq/Ovc61zrkgzrTOt868zr/Pg86vzrXPhc+Dzrcgz4TPic69IM61z4TOuc66zrXPhM+Ozr0gKM60zrUgzrPOr869zrXPhM6xzrkgzr3OsSDPh8+BzrfPg865zrzOv8+Azr/Ouc63zrjOtc6vIM68zrUgz4TOvyAtLWFsbCDOriAiCisiz4TOvyAtLW1pcnJvcikiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2MiBidWlsdGluL3NlbmQtcGFjay5jOjE2NworbXNnaWQgImZvcmNlIHVwZGF0ZXMiCittc2dzdHIgIs69zrEgzrPOr869zr/Phc69IM6xzr3Osc6zzrrOsc+Dz4TOuc66zqwgzrXOvc63zrzOtc+Bz47Pg861zrnPgiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTY0IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgxCittc2dpZCAiPHJlZm5hbWU+OjxleHBlY3Q+IgorbXNnc3RyICI8cmVmbmFtZT46PGV4cGVjdD4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2NSBidWlsdGluL3NlbmQtcGFjay5jOjE4MgorbXNnaWQgInJlcXVpcmUgb2xkIHZhbHVlIG9mIHJlZiB0byBiZSBhdCB0aGlzIHZhbHVlIgorbXNnc3RyICLOvc6xIM6xz4DOsc65z4TOt864zrXOryDOtyDPgM6xzrvOuc6sIM+EzrnOvM6uIM+Ezr/PhSByZWYgzr3OsSDOtc6vzr3Osc65IM63IM61zr7Ors+CIgorCisjOiBidWlsdGluL3B1c2guYzo1NjgKK21zZ2lkICJjb250cm9sIHJlY3Vyc2l2ZSBwdXNoaW5nIG9mIHN1Ym1vZHVsZXMiCittc2dzdHIgIs6tzrvOtc6zz4fOv8+CIM6xzr3Osc60z4HOv868zrnOus6uz4IgzrTOt868zr/Pg86vzrXPhc+DzrfPgiDPhM+Jzr0gz4XPgM6/zrXOvc6/z4TOrs+Ez4nOvSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc1Cittc2dpZCAidXNlIHRoaW4gcGFjayIKK21zZ3N0ciAizr3OsSDOs86vzr3Otc65IM+Hz4HOrs+DzrcgzrvOtc+Az4TOv8+NIM+AzrHOus6tz4TOv8+FIgorCisjOiBidWlsdGluL3B1c2guYzo1NzEgYnVpbHRpbi9wdXNoLmM6NTcyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYxCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE2MgorbXNnaWQgInJlY2VpdmUgcGFjayBwcm9ncmFtIgorbXNnc3RyICLOu86uz4jOtyDPgM+Bzr/Os8+BzqzOvM68zrHPhM6/z4Igz4DOsc66zq3PhM6/z4UiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3MworbXNnaWQgInNldCB1cHN0cmVhbSBmb3IgZ2l0IHB1bGwvc3RhdHVzIgorbXNnc3RyICLOvc6xIM6/z4HOuc+Dz4TOtc6vIM+Ezr8gz4DPgc6/z4Igz4TOsSDPgM6szr3PiSDOs865zrEgz4TOvyBnaXQgcHVsbC9zdGF0dXMiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3NgorbXNnaWQgInBydW5lIGxvY2FsbHkgcmVtb3ZlZCByZWZzIgorbXNnc3RyICLOvc6xIM6zzq/Ovc61zrkgzrrOu86szrTOtc68zrEgz4TPic69IM+Ezr/PgM65zrrOrCDOtM65zrXOs8+BzrHOvM68zq3Ovc+Jzr0gcmVmIgorCisjOiBidWlsdGluL3B1c2guYzo1NzgKK21zZ2lkICJieXBhc3MgcHJlLXB1c2ggaG9vayIKK21zZ3N0ciAizr3OsSDOs86vzr3Otc65IM+AzrHPgc6szrrOsc68z4jOtyDPhM6/z4UgzrHOs866zq/Pg8+Ez4HOv8+FIM+Az4HOvyDOtM63zrzOv8+Dzq/Otc+Fz4POt8+CIgorCisjOiBidWlsdGluL3B1c2guYzo1NzkKK21zZ2lkICJwdXNoIG1pc3NpbmcgYnV0IHJlbGV2YW50IHRhZ3MiCittc2dzdHIgIs69zrEgzrPOr869zrXOuSDOtM63zrzOv8+Dzq/Otc+Fz4POtyDPhM+Jzr0gzrXPhM65zrrOtc+Ez47OvSDPgM6/z4UgzrvOtc6vz4DOv8+Fzr0gzrHOu867zqwgzrXOr869zrHOuSDPg8+HzrXPhM65zrrOrc+CIgorCisjOiBidWlsdGluL3B1c2guYzo1ODIgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjkKK21zZ2lkICJHUEcgc2lnbiB0aGUgcHVzaCIKK21zZ3N0ciAizr3OsSDPhc+Azr/Os8+BzrHPhs61zq8gzrzOtSBHUEcgzrcgzrTOt868zr/Pg86vzrXPhc+DzrciCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU4NCBidWlsdGluL3NlbmQtcGFjay5jOjE3NgorbXNnaWQgInJlcXVlc3QgYXRvbWljIHRyYW5zYWN0aW9uIG9uIHJlbW90ZSBzaWRlIgorbXNnc3RyICLOvc6xIM62zrfPhM63zrjOtc6vIM6xz4TOv868zrnOus6uIM+Dz4XOvc6xzrvOu86xzrPOriDPg8+EzrfOvSDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3OtyDPgM67zrXPhc+BzqwiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjYwMgorbXNnaWQgIi0tZGVsZXRlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWxsLCAtLW1pcnJvciBhbmQgLS10YWdzIgorbXNnc3RyICLPhM6/IC0tZGVsZXRlIM60zrXOvSDOtc6vzr3Osc65IM+Dz4XOvM6yzrHPhM+MIM68zrUgz4TOsSAtLWFsbCwgLS1taXJyb3IgzrrOsc65IC0tdGFncyIKKworIzogYnVpbHRpbi9wdXNoLmM6NjA0Cittc2dpZCAiLS1kZWxldGUgZG9lc24ndCBtYWtlIHNlbnNlIHdpdGhvdXQgYW55IHJlZnMiCittc2dzdHIgIs+Ezr8gLS1kZWxldGUgzrTOtc69IM6tz4fOtc65IM69z4zOt868zrEgz4fPic+Bzq/PgiDOus6xzr3Orc69zrEgcmVmIgorCisjOiBidWlsdGluL3B1c2guYzo2MDcKK21zZ2lkICItLWFsbCBhbmQgLS10YWdzIGFyZSBpbmNvbXBhdGlibGUiCittc2dzdHIgIs+Ezr8gLS1hbGwgzrrOsc65IM+Ezr8gLS10YWdzIM60zrXOvSDOtc6vzr3Osc65IM+Dz4XOvM6yzrHPhM6sIM68zrXPhM6xzr7PjSDPhM6/z4XPgiIKKworIzogYnVpbHRpbi9wdXNoLmM6NjA5Cittc2dpZCAiLS1hbGwgY2FuJ3QgYmUgY29tYmluZWQgd2l0aCByZWZzcGVjcyIKK21zZ3N0ciAiz4TOvyAtLWFsbCDOtM61IM6zzq/Ovc61z4TOsc65IM69zrEgz4PPhc69zrTPhc6xz4PPhM61zq8gzrzOtSByZWZzcGVjIgorCisjOiBidWlsdGluL3B1c2guYzo2MTMKK21zZ2lkICItLW1pcnJvciBhbmQgLS10YWdzIGFyZSBpbmNvbXBhdGlibGUiCittc2dzdHIgIs+Ezr8gLS1taXJyb3IgzrrOsc65IM+Ezr8gLS10YWdzIM60zrXOvSDOtc6vzr3Osc65IM+Dz4XOvM6yzrHPhM6sIM68zrXPhM6xzr7PjSDPhM6/z4XPgiIKKworIzogYnVpbHRpbi9wdXNoLmM6NjE1Cittc2dpZCAiLS1taXJyb3IgY2FuJ3QgYmUgY29tYmluZWQgd2l0aCByZWZzcGVjcyIKK21zZ3N0ciAiz4TOvyAtLW1pcnJvciDOtM61IM6zzq/Ovc61z4TOsc65IM69zrEgz4PPhc69zrTPhc6xz4PPhM61zq8gzrzOtSByZWZzcGVjIgorCisjOiBidWlsdGluL3B1c2guYzo2MTgKK21zZ2lkICItLWFsbCBhbmQgLS1taXJyb3IgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiz4TOvyAtLWFsbCDOus6xzrkgz4TOvyAtLW1pcnJvciDOtM61zr0gzrXOr869zrHOuSDPg8+FzrzOss6xz4TOrCDOvM61z4TOsc6+z40gz4TOv8+Fz4IiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzNworbXNnaWQgInB1c2ggb3B0aW9ucyBtdXN0IG5vdCBoYXZlIG5ldyBsaW5lIGNoYXJhY3RlcnMiCittc2dzdHIgIs6/zrkgzrXPgM65zrvOv86zzq3PgiDOtM63zrzOv8+Dzq/Otc+Fz4POt8+CIM60zrXOvSDPgM+Bzq3PgM61zrkgzr3OsSDOrc+Hzr/Phc69IM+HzrHPgc6xzrrPhM6uz4HOtc+CIG5ld2xpbmUiCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjgKK21zZ2lkICJnaXQgcmFuZ2UtZGlmZiBbPG9wdGlvbnM+XSA8b2xkLWJhc2U+Li48b2xkLXRpcD4gPG5ldy1iYXNlPi4uPG5ldy10aXA+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjkKK21zZ2lkICJnaXQgcmFuZ2UtZGlmZiBbPG9wdGlvbnM+XSA8b2xkLXRpcD4uLi48bmV3LXRpcD4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MTAKK21zZ2lkICJnaXQgcmFuZ2UtZGlmZiBbPG9wdGlvbnM+XSA8YmFzZT4gPG9sZC10aXA+IDxuZXctdGlwPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyMQorbXNnaWQgIlBlcmNlbnRhZ2UgYnkgd2hpY2ggY3JlYXRpb24gaXMgd2VpZ2h0ZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjMKK21zZ2lkICJ1c2Ugc2ltcGxlIGRpZmYgY29sb3JzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjYxIGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIC4uIGluIHJhbmdlOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjc1Cittc2dpZCAic2luZ2xlIGFyZyBmb3JtYXQgbXVzdCBiZSBzeW1tZXRyaWMgcmFuZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6OTAKK21zZ2lkICJuZWVkIHR3byBjb21taXQgcmFuZ2VzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6NDEKK21zZ2lkICIiCisiZ2l0IHJlYWQtdHJlZSBbKC1tIFstLXRyaXZpYWxdIFstLWFnZ3Jlc3NpdmVdIHwgLS1yZXNldCB8IC0tcHJlZml4PTxwcmVmaXg+KSAiCisiWy11IFstLWV4Y2x1ZGUtcGVyLWRpcmVjdG9yeT08Z2l0aWdub3JlPl0gfCAtaV1dIFstLW5vLXNwYXJzZS1jaGVja291dF0gWy0tIgorImluZGV4LW91dHB1dD08ZmlsZT5dICgtLWVtcHR5IHwgPHRyZWUtaXNoMT4gWzx0cmVlLWlzaDI+IFs8dHJlZS1pc2gzPl1dKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNAorbXNnaWQgIndyaXRlIHJlc3VsdGluZyBpbmRleCB0byA8ZmlsZT4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjcKK21zZ2lkICJvbmx5IGVtcHR5IHRoZSBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyOQorbXNnaWQgIk1lcmdpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzEKK21zZ2lkICJwZXJmb3JtIGEgbWVyZ2UgaW4gYWRkaXRpb24gdG8gYSByZWFkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMzCittc2dpZCAiMy13YXkgbWVyZ2UgaWYgbm8gZmlsZSBsZXZlbCBtZXJnaW5nIHJlcXVpcmVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM1Cittc2dpZCAiMy13YXkgbWVyZ2UgaW4gcHJlc2VuY2Ugb2YgYWRkcyBhbmQgcmVtb3ZlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNworbXNnaWQgInNhbWUgYXMgLW0sIGJ1dCBkaXNjYXJkIHVubWVyZ2VkIGVudHJpZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzgKK21zZ2lkICI8c3ViZGlyZWN0b3J5Pi8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzkKK21zZ2lkICJyZWFkIHRoZSB0cmVlIGludG8gdGhlIGluZGV4IHVuZGVyIDxzdWJkaXJlY3Rvcnk+LyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0MgorbXNnaWQgInVwZGF0ZSB3b3JraW5nIHRyZWUgd2l0aCBtZXJnZSByZXN1bHQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDQKK21zZ2lkICJnaXRpZ25vcmUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDUKK21zZ2lkICJhbGxvdyBleHBsaWNpdGx5IGlnbm9yZWQgZmlsZXMgdG8gYmUgb3ZlcndyaXR0ZW4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDgKK21zZ2lkICJkb24ndCBjaGVjayB0aGUgd29ya2luZyB0cmVlIGFmdGVyIG1lcmdpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDkKK21zZ2lkICJkb24ndCB1cGRhdGUgdGhlIGluZGV4IG9yIHRoZSB3b3JrIHRyZWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTEKK21zZ2lkICJza2lwIGFwcGx5aW5nIHNwYXJzZSBjaGVja291dCBmaWx0ZXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTMKK21zZ2lkICJkZWJ1ZyB1bnBhY2stdHJlZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozMAorbXNnaWQgIiIKKyJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+XSBbPHVwc3RyZWFtPl0gIgorIls8YnJhbmNoPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozMgorbXNnaWQgIiIKKyJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+XSAtLXJvb3QgWzxicmFuY2g+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM0Cittc2dpZCAiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIHwgLS1hYm9ydCB8IC0tc2tpcCB8IC0tZWRpdC10b2RvIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTIxIGJ1aWx0aW4vcmViYXNlLmM6MTQzNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZXF1aXJlcyBhbiBpbnRlcmFjdGl2ZSByZWJhc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGdldCAnb250byc6ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBvcmlnLWhlYWQ6ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgaW52YWxpZCBhbGxvd19yZXJlcmVfYXV0b3VwZGF0ZTogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcmVhZCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBzdG9yZSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQwMgorbXNnaWQgImNvdWxkIG5vdCBkZXRlcm1pbmUgSEVBRCByZXZpc2lvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyMgorbXNnaWQgIiIKKyJSZXNvbHZlIGFsbCBjb25mbGljdHMgbWFudWFsbHksIG1hcmsgdGhlbSBhcyByZXNvbHZlZCB3aXRoXG4iCisiXCJnaXQgYWRkL3JtIDxjb25mbGljdGVkX2ZpbGVzPlwiLCB0aGVuIHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiLlxuIgorIllvdSBjYW4gaW5zdGVhZCBza2lwIHRoaXMgY29tbWl0OiBydW4gXCJnaXQgcmViYXNlIC0tc2tpcFwiLlxuIgorIlRvIGFib3J0IGFuZCBnZXQgYmFjayB0byB0aGUgc3RhdGUgYmVmb3JlIFwiZ2l0IHJlYmFzZVwiLCBydW4gXCJnaXQgcmViYXNlIC0tIgorImFib3J0XCIuIgorbXNnc3RyICIiCisizpXPgM65zrvPjc+Dz4TOtSDPjM67zrXPgiDPhM65z4Igz4PPhc6zzrrPgc6/z43Pg861zrnPgiDPh861zrnPgc6/zrrOr869zrfPhM6xLCDOtc+AzrnPg863zrzOrM69zrXPhM6tIM+EzrnPgiDPic+CIM61z4DOuc67z4XOvM6tzr3Otc+CIM68zrVcbiIKKyJcImdpdCBhZGQvcm0gPM+Dz4XOs866z4HOv8+Fz4zOvM61zr3OsSDOsc+Bz4fOtc6vzrE+XCIsIM6tz4DOtc65z4TOsSDPhM+Bzq3Ovs+EzrUgXCJnaXQgcmViYXNlIC0tY29udGludWUiCisiXCIuXG4iCisizpXOuc60zqzOu867z4nPgiDOvM+Azr/Pgc61zq/PhM61IM69zrEgz4DPgc6/z4PPgM61z4HOrM+DzrXPhM61IM6xz4XPhM6uIM+EzrfOvSDPhc+Azr/Oss6/zrvOrjogz4TPgc6tzr7PhM61IFwiZ2l0IHJlYmFzZSAtLSIKKyJza2lwXCIuXG4iCisizpPOuc6xIM69zrEgzrXOs866zrHPhM6xzrvOtc6vz4jOtc+EzrUgzrrOsc65IM69zrEgzrXPgM65z4PPhM+Bzq3PiM61z4TOtSDPg8+EzrfOvSDOus6xz4TOrM+Dz4TOsc+Dzrcgz4DPgc65zr0gzrHPgM+MIM+Ezr8gXCJnaXQgIgorInJlYmFzZVwiLCDPhM+Bzq3Ovs+EzrUgXCJnaXQgcmViYXNlIC0tYWJvcnRcIi4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJnaXQgZW5jb3VudGVyZWQgYW4gZXJyb3Igd2hpbGUgcHJlcGFyaW5nIHRoZSBwYXRjaGVzIHRvIHJlcGxheVxuIgorInRoZXNlIHJldmlzaW9uczpcbiIKKyJcbiIKKyIgICAgJXNcbiIKKyJcbiIKKyJBcyBhIHJlc3VsdCwgZ2l0IGNhbm5vdCByZWJhc2UgdGhlbS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo5NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzXG4iCisiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIHJlYmFzZSBhZ2FpbnN0LlxuIgorIlNlZSBnaXQtcmViYXNlKDEpIGZvciBkZXRhaWxzLlxuIgorIlxuIgorIiAgICBnaXQgcmViYXNlICc8YnJhbmNoPidcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjk2NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSWYgeW91IHdpc2ggdG8gc2V0IHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGlzIGJyYW5jaCB5b3UgY2FuIGRvIHNvIHdpdGg6XG4iCisiXG4iCisiICAgIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMvPGJyYW5jaD4gJXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjk5NAorbXNnaWQgImV4ZWMgY29tbWFuZHMgY2Fubm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo5OTgKK21zZ2lkICJlbXB0eSBleGVjIGNvbW1hbmQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMDQwCittc2dpZCAicmViYXNlIG9udG8gZ2l2ZW4gYnJhbmNoIGluc3RlYWQgb2YgdXBzdHJlYW0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMDQyCittc2dpZCAiYWxsb3cgcHJlLXJlYmFzZSBob29rIHRvIHJ1biIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEwNDQKK21zZ2lkICJiZSBxdWlldC4gaW1wbGllcyAtLW5vLXN0YXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMDQ3Cittc2dpZCAiZGlzcGxheSBhIGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEwNTAKK21zZ2lkICJkbyBub3Qgc2hvdyBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMDUzCittc2dpZCAiYWRkIGEgU2lnbmVkLW9mZi1ieTogbGluZSB0byBlYWNoIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEwNTUgYnVpbHRpbi9yZWJhc2UuYzoxMDU5IGJ1aWx0aW4vcmViYXNlLmM6MTA2MQorbXNnaWQgInBhc3NlZCB0byAnZ2l0IGFtJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEwNjMgYnVpbHRpbi9yZWJhc2UuYzoxMDY1Cittc2dpZCAicGFzc2VkIHRvICdnaXQgYXBwbHknIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTA2NyBidWlsdGluL3JlYmFzZS5jOjEwNzAKK21zZ2lkICJjaGVycnktcGljayBhbGwgY29tbWl0cywgZXZlbiBpZiB1bmNoYW5nZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMDcyCittc2dpZCAiY29udGludWUiCittc2dzdHIgIs+Dz4XOvc6tz4fOtc65zrEiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTA3NQorbXNnaWQgInNraXAgY3VycmVudCBwYXRjaCBhbmQgY29udGludWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMDc3Cittc2dpZCAiYWJvcnQgYW5kIGNoZWNrIG91dCB0aGUgb3JpZ2luYWwgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTA4MAorbXNnaWQgImFib3J0IGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMDgxCittc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IGR1cmluZyBhbiBpbnRlcmFjdGl2ZSByZWJhc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMDg0Cittc2dpZCAic2hvdyB0aGUgcGF0Y2ggZmlsZSBiZWluZyBhcHBsaWVkIG9yIG1lcmdlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEwODcKK21zZ2lkICJ1c2UgbWVyZ2luZyBzdHJhdGVnaWVzIHRvIHJlYmFzZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEwOTEKK21zZ2lkICJsZXQgdGhlIHVzZXIgZWRpdCB0aGUgbGlzdCBvZiBjb21taXRzIHRvIHJlYmFzZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEwOTUKK21zZ2lkICJ0cnkgdG8gcmVjcmVhdGUgbWVyZ2VzIGluc3RlYWQgb2YgaWdub3JpbmcgdGhlbSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEwOTkKK21zZ2lkICJhbGxvdyByZXJlcmUgdG8gdXBkYXRlIGluZGV4IHdpdGggcmVzb2x2ZWQgY29uZmxpY3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMTAyCittc2dpZCAicHJlc2VydmUgZW1wdHkgY29tbWl0cyBkdXJpbmcgcmViYXNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTEwNAorbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEgdW5kZXIgLWkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMTEwCittc2dpZCAiYXV0b21hdGljYWxseSBzdGFzaC9zdGFzaCBwb3AgYmVmb3JlIGFuZCBhZnRlciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjExMTIKK21zZ2lkICJhZGQgZXhlYyBsaW5lcyBhZnRlciBlYWNoIGNvbW1pdCBvZiB0aGUgZWRpdGFibGUgbGlzdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjExMTYKK21zZ2lkICJhbGxvdyByZWJhc2luZyBjb21taXRzIHdpdGggZW1wdHkgbWVzc2FnZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMTE5Cittc2dpZCAidHJ5IHRvIHJlYmFzZSBtZXJnZXMgaW5zdGVhZCBvZiBza2lwcGluZyB0aGVtIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTEyMgorbXNnaWQgInVzZSAnbWVyZ2UtYmFzZSAtLWZvcmstcG9pbnQnIHRvIHJlZmluZSB1cHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjExMjQKK21zZ2lkICJ1c2UgdGhlIGdpdmVuIG1lcmdlIHN0cmF0ZWd5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTEyNiBidWlsdGluL3JldmVydC5jOjExMgorbXNnaWQgIm9wdGlvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjExMjcKK21zZ2lkICJwYXNzIHRoZSBhcmd1bWVudCB0aHJvdWdoIHRvIHRoZSBtZXJnZSBzdHJhdGVneSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjExMzAKK21zZ2lkICJyZWJhc2UgYWxsIHJlYWNoYWJsZSBjb21taXRzIHVwIHRvIHRoZSByb290KHMpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTEzMyBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTgKK21zZ2lkICJhdXRvbWF0aWNhbGx5IHJlLXNjaGVkdWxlIGFueSBgZXhlY2AgdGhhdCBmYWlscyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjExNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGV4ZWMgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMTY3IGdpdC1sZWdhY3ktcmViYXNlLnNoOjIyMAorbXNnaWQgIkl0IGxvb2tzIGxpa2UgJ2dpdCBhbScgaXMgaW4gcHJvZ3Jlc3MuIENhbm5vdCByZWJhc2UuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTIwOCBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MDYKK21zZ2lkICJObyByZWJhc2UgaW4gcHJvZ3Jlc3M/IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTIxMiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MTcKK21zZ2lkICJUaGUgLS1lZGl0LXRvZG8gYWN0aW9uIGNhbiBvbmx5IGJlIHVzZWQgZHVyaW5nIGludGVyYWN0aXZlIHJlYmFzZS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMjI2IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQyNAorbXNnaWQgIkNhbm5vdCByZWFkIEhFQUQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMjM4IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQyNworbXNnaWQgIiIKKyJZb3UgbXVzdCBlZGl0IGFsbCBtZXJnZSBjb25mbGljdHMgYW5kIHRoZW5cbiIKKyJtYXJrIHRoZW0gYXMgcmVzb2x2ZWQgdXNpbmcgZ2l0IGFkZCIKK21zZ3N0ciAiIgorIs6gz4HOrc+AzrXOuSDOvc6xIM61z4DOtc6+zrXPgc6zzrHPg8+EzrXOr8+EzrUgz4zOu861z4Igz4TOuc+CIM+Dz4XOs866z4HOv8+Nz4POtc65z4Igz4PPhc6zz4fPjs69zrXPhc+DzrfPgiDOus6xzrkgzrzOtc+EzqxcbiIKKyLOvc6xIM+EzrnPgiDOtc+AzrnPg863zrzOrM69zrXPhM61IM+Jz4IgzrXPgM65zrvPhc68zq3Ovc61z4Igz4fPgc63z4POuc68zr/PgM6/zrnPjs69z4TOsc+CIGdpdCBhZGQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTI1NworbXNnaWQgImNvdWxkIG5vdCBkaXNjYXJkIHdvcmt0cmVlIGNoYW5nZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMjc2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBtb3ZlIGJhY2sgdG8gJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMjg3IGJ1aWx0aW4vcm0uYzozNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlbW92ZSAnJXMnIgorbXNnc3RyICLOtM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM6uIM63IM6xz4bOsc6vz4HOtc+Dzrcgz4TOv8+FICclcyciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTMxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSXQgc2VlbXMgdGhhdCB0aGVyZSBpcyBhbHJlYWR5IGEgJXMgZGlyZWN0b3J5LCBhbmRcbiIKKyJJIHdvbmRlciBpZiB5b3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciByZWJhc2UuICBJZiB0aGF0IGlzIHRoZVxuIgorImNhc2UsIHBsZWFzZSB0cnlcbiIKKyJcdCVzXG4iCisiSWYgdGhhdCBpcyBub3QgdGhlIGNhc2UsIHBsZWFzZVxuIgorIlx0JXNcbiIKKyJhbmQgcnVuIG1lIGFnYWluLiAgSSBhbSBzdG9wcGluZyBpbiBjYXNlIHlvdSBzdGlsbCBoYXZlIHNvbWV0aGluZ1xuIgorInZhbHVhYmxlIHRoZXJlLlxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTMzNAorbXNnaWQgInN3aXRjaCBgQycgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEzNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5rbm93biBtb2RlOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEzOTcKK21zZ2lkICItLXN0cmF0ZWd5IHJlcXVpcmVzIC0tbWVyZ2Ugb3IgLS1pbnRlcmFjdGl2ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NDYKK21zZ2lkICJjYW5ub3QgY29tYmluZSBhbSBvcHRpb25zIHdpdGggZWl0aGVyIGludGVyYWN0aXZlIG9yIG1lcmdlIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDY1Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmUtbWVyZ2VzJyB3aXRoICctLXJlYmFzZS1tZXJnZXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ2OSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1NDQKK21zZ2lkICIiCisiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXByZXNlcnZlLW1lcmdlcycgd2l0aCAnLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NzUKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1yZWJhc2UtbWVyZ2VzJyB3aXRoICctLXN0cmF0ZWd5LW9wdGlvbiciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDc4Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneSciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdXBzdHJlYW0gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MDgKK21zZ2lkICJDb3VsZCBub3QgY3JlYXRlIG5ldyByb290IGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJzogbmVlZCBleGFjdGx5IG9uZSBtZXJnZSBiYXNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUzMworIywgYy1mb3JtYXQKK21zZ2lkICJEb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIGNvbW1pdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTY2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzozOAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gc3VjaCByZWY6ICVzIgorbXNnc3RyICLOlM61zr0gz4XPgM6sz4HPh861zrkgcmVmOiAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTc4Cittc2dpZCAiQ291bGQgbm90IHJlc29sdmUgSEVBRCB0byBhIHJldmlzaW9uIgorbXNnc3RyICLOlM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM6uIM63IM+EzrHPjc+EzrnPg863IM+Ezr/PhSBIRUFEIM68zrUgzrrOrM+Azr/Ouc6xIM6tzrrOtM6/z4POtyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjE5IGdpdC1sZWdhY3ktcmViYXNlLnNoOjY3MworbXNnaWQgIkNhbm5vdCBhdXRvc3Rhc2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIlVuZXhwZWN0ZWQgc3Rhc2ggcmVzcG9uc2U6ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5IGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTYzMQorIywgYy1mb3JtYXQKK21zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2MzQKK21zZ2lkICJjb3VsZCBub3QgcmVzZXQgLS1oYXJkIgorbXNnc3RyICLOtM61zr0gzq7PhM6xzr0gzrTPhc69zrHPhM6uIM63IC0taGFyZCDOtc+AzrHOvc6xz4bOv8+BzqwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTYzNSBidWlsdGluL3Jlc2V0LmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgaXMgbm93IGF0ICVzIgorbXNnc3RyICLOpM6/IEhFQUQgz4TPjs+BzrEgzrLPgc6vz4POus61z4TOsc65IM+Dz4TOvyAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjUxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjY4MgorbXNnaWQgIlBsZWFzZSBjb21taXQgb3Igc3Rhc2ggdGhlbS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY5MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3dpdGNoIHRvICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTcwMiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MDUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkhFQUQgaXMgdXAgdG8gZGF0ZS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgYnJhbmNoICVzIGlzIHVwIHRvIGRhdGUuXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzEyIGdpdC1sZWdhY3ktcmViYXNlLnNoOjcxNQorIywgc2gtZm9ybWF0Cittc2dpZCAiSEVBRCBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE3MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCBicmFuY2ggJXMgaXMgdXAgdG8gZGF0ZSwgcmViYXNlIGZvcmNlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE3MjIgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6MjE1Cittc2dpZCAiVGhlIHByZS1yZWJhc2UgaG9vayByZWZ1c2VkIHRvIHJlYmFzZS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzI5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoYW5nZXMgdG8gJXM6XG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzMyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoYW5nZXMgZnJvbSAlcyB0byAlczpcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE3NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uXG4iCittc2dzdHIgIiIKKyLOoM+Bz47PhM6xLCDOs86vzr3Otc+EzrHOuSDOs8+Nz4HOuc+DzrzOsSDPgM+Bzr/PgiDPhM6xIM+Azq/Pg8+JIM+Ezr/PhSBoZWFkIM6zzrnOsSDOvc6xIM6zzq/Ovc61zrkgzrXPgM6xzr3OrM67zrfPiM63IM+EzrfPgiAiCisizrTOv8+FzrvOtc65zqzPgiDPg86xz4Igz4DOrM69z4kgz4POtSDOsc+Fz4TPjC4uLlxuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE3NjUKK21zZ2lkICJDb3VsZCBub3QgZGV0YWNoIEhFQUQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzc0CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhc3QtZm9yd2FyZGVkICVzIHRvICVzLlxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjI1Cittc2dpZCAibm8gSEVBRD8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6NTgKK21zZ2lkICJjb3VsZCBub3QgbWFyayBhcyBpbnRlcmFjdGl2ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG9wZW4gJXMiCittc2dzdHIgIs60zrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ez4wgz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgJXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjExNQorbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSB0b2RvIGxpc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTMxCittc2dpZCAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxvcHRpb25zPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTUwCittc2dpZCAia2VlcCBlbXB0eSBjb21taXRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1MiBidWlsdGluL3JldmVydC5jOjEyNQorbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTMKK21zZ2lkICJyZWJhc2UgbWVyZ2UgY29tbWl0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTUKK21zZ2lkICJrZWVwIG9yaWdpbmFsIGJyYW5jaCBwb2ludHMgb2YgY291c2lucyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTcKK21zZ2lkICJtb3ZlIGNvbW1pdHMgdGhhdCBiZWdpbiB3aXRoIHNxdWFzaCEvZml4dXAhIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1OAorbXNnaWQgInNpZ24gY29tbWl0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjAKK21zZ2lkICJjb250aW51ZSByZWJhc2UiCittc2dzdHIgIs+Dz4XOvc6tz4fOtc65zrE7IHJlYmFzZSIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYyCittc2dpZCAic2tpcCBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYzCittc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2NQorbXNnaWQgInNob3cgdGhlIGN1cnJlbnQgcGF0Y2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTY4Cittc2dpZCAic2hvcnRlbiBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTcwCittc2dpZCAiZXhwYW5kIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzIKK21zZ2lkICJjaGVjayB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NAorbXNnaWQgInJlYXJyYW5nZSBmaXh1cC9zcXVhc2ggbGluZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc2Cittc2dpZCAiaW5zZXJ0IGV4ZWMgY29tbWFuZHMgaW4gdG9kbyBsaXN0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NworbXNnaWQgIm9udG8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc5Cittc2dpZCAicmVzdHJpY3QtcmV2aXNpb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc5Cittc2dpZCAicmVzdHJpY3QgcmV2aXNpb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgwCittc2dpZCAic3F1YXNoLW9udG8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgxCittc2dpZCAic3F1YXNoIG9udG8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgzCittc2dpZCAidGhlIHVwc3RyZWFtIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODQKK21zZ2lkICJoZWFkLW5hbWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg0Cittc2dpZCAiaGVhZCBuYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4OQorbXNnaWQgInJlYmFzZSBzdHJhdGVneSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTAKK21zZ2lkICJzdHJhdGVneS1vcHRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MQorbXNnaWQgInN0cmF0ZWd5IG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkyCittc2dpZCAic3dpdGNoLXRvIgorbXNnc3RyICLOsc67zrvOsc6zzq4gz4POtSIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkzCittc2dpZCAidGhlIGJyYW5jaCBvciBjb21taXQgdG8gY2hlY2tvdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTk0Cittc2dpZCAib250by1uYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5NAorbXNnaWQgIm9udG8gbmFtZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTUKK21zZ2lkICJjbWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTk1Cittc2dpZCAidGhlIGNvbW1hbmQgdG8gcnVuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjIyNAorbXNnaWQgIi0tW25vLV1yZWJhc2UtY291c2lucyBoYXMgbm8gZWZmZWN0IHdpdGhvdXQgLS1yZWJhc2UtbWVyZ2VzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjIzMAorbXNnaWQgImEgYmFzZSBjb21taXQgbXVzdCBiZSBwcm92aWRlZCB3aXRoIC0tdXBzdHJlYW0gb3IgLS1vbnRvIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MzMKK21zZ2lkICJnaXQgcmVjZWl2ZS1wYWNrIDxnaXQtZGlyPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjgzMAorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCB1cGRhdGluZyB0aGUgY3VycmVudCBicmFuY2ggaW4gYSBub24tYmFyZSByZXBvc2l0b3J5XG4iCisiaXMgZGVuaWVkLCBiZWNhdXNlIGl0IHdpbGwgbWFrZSB0aGUgaW5kZXggYW5kIHdvcmsgdHJlZSBpbmNvbnNpc3RlbnRcbiIKKyJ3aXRoIHdoYXQgeW91IHB1c2hlZCwgYW5kIHdpbGwgcmVxdWlyZSAnZ2l0IHJlc2V0IC0taGFyZCcgdG8gbWF0Y2hcbiIKKyJ0aGUgd29yayB0cmVlIHRvIEhFQUQuXG4iCisiXG4iCisiWW91IGNhbiBzZXQgdGhlICdyZWNlaXZlLmRlbnlDdXJyZW50QnJhbmNoJyBjb25maWd1cmF0aW9uIHZhcmlhYmxlXG4iCisidG8gJ2lnbm9yZScgb3IgJ3dhcm4nIGluIHRoZSByZW1vdGUgcmVwb3NpdG9yeSB0byBhbGxvdyBwdXNoaW5nIGludG9cbiIKKyJpdHMgY3VycmVudCBicmFuY2g7IGhvd2V2ZXIsIHRoaXMgaXMgbm90IHJlY29tbWVuZGVkIHVubGVzcyB5b3VcbiIKKyJhcnJhbmdlZCB0byB1cGRhdGUgaXRzIHdvcmsgdHJlZSB0byBtYXRjaCB3aGF0IHlvdSBwdXNoZWQgaW4gc29tZVxuIgorIm90aGVyIHdheS5cbiIKKyJcbiIKKyJUbyBzcXVlbGNoIHRoaXMgbWVzc2FnZSBhbmQgc3RpbGwga2VlcCB0aGUgZGVmYXVsdCBiZWhhdmlvdXIsIHNldFxuIgorIidyZWNlaXZlLmRlbnlDdXJyZW50QnJhbmNoJyBjb25maWd1cmF0aW9uIHZhcmlhYmxlIHRvICdyZWZ1c2UnLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjg1MAorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBkZWxldGluZyB0aGUgY3VycmVudCBicmFuY2ggaXMgZGVuaWVkLCBiZWNhdXNlIHRoZSBuZXh0XG4iCisiJ2dpdCBjbG9uZScgd29uJ3QgcmVzdWx0IGluIGFueSBmaWxlIGNoZWNrZWQgb3V0LCBjYXVzaW5nIGNvbmZ1c2lvbi5cbiIKKyJcbiIKKyJZb3UgY2FuIHNldCAncmVjZWl2ZS5kZW55RGVsZXRlQ3VycmVudCcgY29uZmlndXJhdGlvbiB2YXJpYWJsZSB0b1xuIgorIid3YXJuJyBvciAnaWdub3JlJyBpbiB0aGUgcmVtb3RlIHJlcG9zaXRvcnkgdG8gYWxsb3cgZGVsZXRpbmcgdGhlXG4iCisiY3VycmVudCBicmFuY2gsIHdpdGggb3Igd2l0aG91dCBhIHdhcm5pbmcgbWVzc2FnZS5cbiIKKyJcbiIKKyJUbyBzcXVlbGNoIHRoaXMgbWVzc2FnZSwgeW91IGNhbiBzZXQgaXQgdG8gJ3JlZnVzZScuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTkyOQorbXNnaWQgInF1aWV0IgorbXNnc3RyICLPg865z4nPgM63zrvOrCIKKworIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTQzCittc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIGRpcmVjdG9yeS4iCittc2dzdHIgIs6gz4HOrc+AzrXOuSDOvc6xIM6/z4HOr8+DzrXPhM61IM6tzr3Osc69IM+GzqzOus61zrvOvy4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MTcKK21zZ2lkICIiCisiZ2l0IHJlZmxvZyBleHBpcmUgWy0tZXhwaXJlPTx0aW1lPl0gWy0tZXhwaXJlLXVucmVhY2hhYmxlPTx0aW1lPl0gWy0tIgorInJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tc3RhbGUtZml4XSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdIFstLWFsbF0gIgorIjxyZWZzPi4uLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjIyCittc2dpZCAiIgorImdpdCByZWZsb2cgZGVsZXRlIFstLXJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSAiCisiPHJlZnM+Li4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MjUKK21zZ2lkICJnaXQgcmVmbG9nIGV4aXN0cyA8cmVmPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjU2NyBidWlsdGluL3JlZmxvZy5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRpbWVzdGFtcCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjYwNQorIywgYy1mb3JtYXQKK21zZ2lkICJNYXJraW5nIHJlYWNoYWJsZSBvYmplY3RzLi4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBvaW50cyBub3doZXJlISIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY5NQorbXNnaWQgIm5vIHJlZmxvZyBzcGVjaWZpZWQgdG8gZGVsZXRlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHJlZmxvZzogJXMiCittc2dzdHIgIs60zrXOvSDOtc6vzr3Osc65IHJlZmxvZzogJXMiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzA5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHJlZmxvZyBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc1NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZiBmb3JtYXQ6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzY0Cittc2dpZCAiZ2l0IHJlZmxvZyBbIHNob3cgfCBleHBpcmUgfCBkZWxldGUgfCBleGlzdHMgXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE2Cittc2dpZCAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcKK21zZ2lkICIiCisiZ2l0IHJlbW90ZSBhZGQgWy10IDxicmFuY2g+XSBbLW0gPG1hc3Rlcj5dIFstZl0gWy0tdGFncyB8IC0tbm8tdGFnc10gWy0tIgorIm1pcnJvcj08ZmV0Y2h8cHVzaD5dIDxuYW1lPiA8dXJsPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE4IGJ1aWx0aW4vcmVtb3RlLmM6MzgKK21zZ2lkICJnaXQgcmVtb3RlIHJlbmFtZSA8b2xkPiA8bmV3PiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6NDMKK21zZ2lkICJnaXQgcmVtb3RlIHJlbW92ZSA8bmFtZT4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyMCBidWlsdGluL3JlbW90ZS5jOjQ4Cittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtaGVhZCA8bmFtZT4gKC1hIHwgLS1hdXRvIHwgLWQgfCAtLWRlbGV0ZSB8IDxicmFuY2g+KSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjIxCittc2dpZCAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHNob3cgWy1uXSA8bmFtZT4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyMgorbXNnaWQgImdpdCByZW1vdGUgcHJ1bmUgWy1uIHwgLS1kcnktcnVuXSA8bmFtZT4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyMworbXNnaWQgIiIKKyJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gdXBkYXRlIFstcCB8IC0tcHJ1bmVdIFsoPGdyb3VwPiB8IDxyZW1vdGU+KS4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyNAorbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIFstLWFkZF0gPG5hbWU+IDxicmFuY2g+Li4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjUgYnVpbHRpbi9yZW1vdGUuYzo3NAorbXNnaWQgImdpdCByZW1vdGUgZ2V0LXVybCBbLS1wdXNoXSBbLS1hbGxdIDxuYW1lPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjI2IGJ1aWx0aW4vcmVtb3RlLmM6NzkKK21zZ2lkICJnaXQgcmVtb3RlIHNldC11cmwgWy0tcHVzaF0gPG5hbWU+IDxuZXd1cmw+IFs8b2xkdXJsPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyNyBidWlsdGluL3JlbW90ZS5jOjgwCittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tYWRkIDxuYW1lPiA8bmV3dXJsPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjI4IGJ1aWx0aW4vcmVtb3RlLmM6ODEKK21zZ2lkICJnaXQgcmVtb3RlIHNldC11cmwgLS1kZWxldGUgPG5hbWU+IDx1cmw+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MzMKK21zZ2lkICJnaXQgcmVtb3RlIGFkZCBbPG9wdGlvbnM+XSA8bmFtZT4gPHVybD4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo1MworbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIDxuYW1lPiA8YnJhbmNoPi4uLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjU0Cittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgLS1hZGQgPG5hbWU+IDxicmFuY2g+Li4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NTkKK21zZ2lkICJnaXQgcmVtb3RlIHNob3cgWzxvcHRpb25zPl0gPG5hbWU+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjQKK21zZ2lkICJnaXQgcmVtb3RlIHBydW5lIFs8b3B0aW9ucz5dIDxuYW1lPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjY5Cittc2dpZCAiZ2l0IHJlbW90ZSB1cGRhdGUgWzxvcHRpb25zPl0gWzxncm91cD4gfCA8cmVtb3RlPl0uLi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo5OAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGluZyAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMAorbXNnaWQgIiIKKyItLW1pcnJvciBpcyBkYW5nZXJvdXMgYW5kIGRlcHJlY2F0ZWQ7IHBsZWFzZVxuIgorIlx0IHVzZSAtLW1pcnJvcj1mZXRjaCBvciAtLW1pcnJvcj1wdXNoIGluc3RlYWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBtaXJyb3IgYXJndW1lbnQ6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYzCittc2dpZCAiZmV0Y2ggdGhlIHJlbW90ZSBicmFuY2hlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE2NQorbXNnaWQgImltcG9ydCBhbGwgdGFncyBhbmQgYXNzb2NpYXRlZCBvYmplY3RzIHdoZW4gZmV0Y2hpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjgKK21zZ2lkICJvciBkbyBub3QgZmV0Y2ggYW55IHRhZyBhdCBhbGwgKC0tbm8tdGFncykiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNzAKK21zZ2lkICJicmFuY2goZXMpIHRvIHRyYWNrIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcxCittc2dpZCAibWFzdGVyIGJyYW5jaCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MworbXNnaWQgInNldCB1cCByZW1vdGUgYXMgYSBtaXJyb3IgdG8gcHVzaCB0byBvciBmZXRjaCBmcm9tIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg1Cittc2dpZCAic3BlY2lmeWluZyBhIG1hc3RlciBicmFuY2ggbWFrZXMgbm8gc2Vuc2Ugd2l0aCAtLW1pcnJvciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE4NworbXNnaWQgInNwZWNpZnlpbmcgYnJhbmNoZXMgdG8gdHJhY2sgbWFrZXMgc2Vuc2Ugb25seSB3aXRoIGZldGNoIG1pcnJvcnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxOTQgYnVpbHRpbi9yZW1vdGUuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlICVzIGFscmVhZHkgZXhpc3RzLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE5OCBidWlsdGluL3JlbW90ZS5jOjY0MAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHJlbW90ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjM4CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBzZXR1cCBtYXN0ZXIgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgZ2V0IGZldGNoIG1hcCBmb3IgcmVmc3BlYyAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjQ0MyBidWlsdGluL3JlbW90ZS5jOjQ1MQorbXNnaWQgIihtYXRjaGluZykiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo0NTUKK21zZ2lkICIoZGVsZXRlKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjYyOSBidWlsdGluL3JlbW90ZS5jOjc2NSBidWlsdGluL3JlbW90ZS5jOjg2NAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBzdWNoIHJlbW90ZTogJyVzJyIKK21zZ3N0ciAizpTOtc69IM+Fz4DOrM+Bz4fOtc65IM+Ezq3PhM6/zrnOv8+CIM6xz4DOv868zrHOus+Bz4XPg868zq3Ovc6/z4IgzrXOvs+Fz4DOt8+BzrXPhM63z4TOrs+COiAnJXMnIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjY0NgorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcmVuYW1lIGNvbmZpZyBzZWN0aW9uICclcycgdG8gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjY2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTm90IHVwZGF0aW5nIG5vbi1kZWZhdWx0IGZldGNoIHJlZnNwZWNcbiIKKyJcdCVzXG4iCisiXHRQbGVhc2UgdXBkYXRlIHRoZSBjb25maWd1cmF0aW9uIG1hbnVhbGx5IGlmIG5lY2Vzc2FyeS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo3MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVsZXRpbmcgJyVzJyBmYWlsZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo3MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3JlYXRpbmcgJyVzJyBmYWlsZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo4MDIKK21zZ2lkICIiCisiTm90ZTogQSBicmFuY2ggb3V0c2lkZSB0aGUgcmVmcy9yZW1vdGVzLyBoaWVyYXJjaHkgd2FzIG5vdCByZW1vdmVkO1xuIgorInRvIGRlbGV0ZSBpdCwgdXNlOiIKK21zZ2lkX3BsdXJhbCAiIgorIk5vdGU6IFNvbWUgYnJhbmNoZXMgb3V0c2lkZSB0aGUgcmVmcy9yZW1vdGVzLyBoaWVyYXJjaHkgd2VyZSBub3QgcmVtb3ZlZDtcbiIKKyJ0byBkZWxldGUgdGhlbSwgdXNlOiIKK21zZ3N0clswXSAiIgorIs6jzrfOvM61zq/Pic+Dzrc6IM6Izr3Osc+CIM66zrvOrM60zr/PgiDOtc66z4TPjM+CIM+EzrfPgiDOuc61z4HOsc+Bz4fOr86xz4IgcmVmcy9yZW1vdGVzLyBoaWVyYXJjaHkgzrTOtc69ICIKKyLOsc+GzrHOuc+Bzq3OuM63zrrOtSxcbiIKKyLOs865zrEgzr3OsSDPhM6/zr0gzrTOuc6xzrPPgc6sz4jOtc+EzrUsIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrU6IgorbXNnc3RyWzFdICIiCisizqPOt868zrXOr8+Jz4POtzogzprOrM+Azr/Ouc6/zrkgzrrOu86szrTOv865IM61zrrPhM+Mz4Igz4TOt8+CIM65zrXPgc6xz4HPh86vzrHPgiByZWZzL3JlbW90ZXMvIGhpZXJhcmNoeSDOtM61zr0gIgorIs6xz4bOsc65z4HOrc64zrfOus6xzr0sXG4iCisizrPOuc6xIM69zrEgz4TOv8+Fz4IgzrTOuc6xzrPPgc6sz4jOtc+EzrUsIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrU6IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjgxNgorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIGNvbmZpZyBzZWN0aW9uICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo5MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIG5ldyAobmV4dCBmZXRjaCB3aWxsIHN0b3JlIGluIHJlbW90ZXMvJXMpIgorbXNnc3RyICIgzr3Orc6/ICjOtyDOtc+Az4zOvM61zr3OtyDOsc69zqzOus+EzrfPg863IM64zrEgzrHPgM6/zrjOt866zrXPjc+DzrXOuSDOvM6tz4POsSDPg8+Ezr8gcmVtb3Rlcy8lcykiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTIwCittc2dpZCAiIHRyYWNrZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo5MjIKK21zZ2lkICIgc3RhbGUgKHVzZSAnZ2l0IHJlbW90ZSBwcnVuZScgdG8gcmVtb3ZlKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjkyNAorbXNnaWQgIiA/Pz8iCittc2dzdHIgIiA7OzsiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgYnJhbmNoLiVzLm1lcmdlOyBjYW5ub3QgcmViYXNlIG9udG8gPiAxIGJyYW5jaCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjk3NAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgb250byByZW1vdGUgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo5NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAicmViYXNlcyBpbnRlcmFjdGl2ZWx5ICh3aXRoIG1lcmdlcykgb250byByZW1vdGUgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo5NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmViYXNlcyBvbnRvIHJlbW90ZSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjk4MworIywgYy1mb3JtYXQKK21zZ2lkICIgbWVyZ2VzIHdpdGggcmVtb3RlICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1lcmdlcyB3aXRoIHJlbW90ZSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjk4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICAgIGFuZCB3aXRoIHJlbW90ZSAlc1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzMgorbXNnaWQgImNyZWF0ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEwMzUKK21zZ2lkICJkZWxldGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMDM5Cittc2dpZCAidXAgdG8gZGF0ZSIKK21zZ3N0ciAiz4DOu86uz4HPic+CIM61zr3Ors68zrXPgc6/IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEwNDIKK21zZ2lkICJmYXN0LWZvcndhcmRhYmxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA0NQorbXNnaWQgImxvY2FsIG91dCBvZiBkYXRlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgJS0qcyBmb3JjZXMgdG8gJS0qcyAoJXMpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgJS0qcyBwdXNoZXMgdG8gJS0qcyAoJXMpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgJS0qcyBmb3JjZXMgdG8gJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMDYyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAlLSpzIHB1c2hlcyB0byAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjExMzAKK21zZ2lkICJkbyBub3QgcXVlcnkgcmVtb3RlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjExNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiKiByZW1vdGUgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgRmV0Y2ggVVJMOiAlcyIKK21zZ3N0ciAiICBVUkwgIM6xzr3OrM66z4TOt8+DzrfPgjogJXMiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1OSBidWlsdGluL3JlbW90ZS5jOjExNzUgYnVpbHRpbi9yZW1vdGUuYzoxMzE0Cittc2dpZCAiKG5vIFVSTCkiCittc2dzdHIgIijOus6xzr3Orc69zrEgVVJMKSIKKworIy4gVFJBTlNMQVRPUlM6IHRoZSBjb2xvbiAnOicgc2hvdWxkIGFsaWduCisjLiB3aXRoIHRoZSBvbmUgaW4gIiBGZXRjaCBVUkw6ICVzIgorIy4gdHJhbnNsYXRpb24uCisjLgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTczIGJ1aWx0aW4vcmVtb3RlLmM6MTE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFB1c2ggIFVSTDogJXMiCittc2dzdHIgIiAgVVJMICDOtM63zrzOv8+Dzq/Otc+Fz4POt8+COiAlcyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTc3IGJ1aWx0aW4vcmVtb3RlLmM6MTE3OSBidWlsdGluL3JlbW90ZS5jOjExODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBIRUFEIGJyYW5jaDogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTc3Cittc2dpZCAiKG5vdCBxdWVyaWVkKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjExNzkKK21zZ2lkICIodW5rbm93bikiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIEhFQUQgYnJhbmNoIChyZW1vdGUgSEVBRCBpcyBhbWJpZ3VvdXMsIG1heSBiZSBvbmUgb2YgdGhlIGZvbGxvd2luZyk6XG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUmVtb3RlIGJyYW5jaDolcyIKK21zZ2lkX3BsdXJhbCAiICBSZW1vdGUgYnJhbmNoZXM6JXMiCittc2dzdHJbMF0gIiAgzpHPgM6/zrzOsc66z4HPhc+DzrzOrc69zr/PgiDOus67zqzOtM6/z4I6JXMiCittc2dzdHJbMV0gIiAgzpHPgM6/zrzOsc66z4HPhc+DzrzOrc69zr/OuSDOus67zqzOtM6/zrk6JXMiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE5OCBidWlsdGluL3JlbW90ZS5jOjEyMjQKK21zZ2lkICIgKHN0YXR1cyBub3QgcXVlcmllZCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjA3Cittc2dpZCAiICBMb2NhbCBicmFuY2ggY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCittc2dpZF9wbHVyYWwgIiAgTG9jYWwgYnJhbmNoZXMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyMTUKK21zZ2lkICIgIExvY2FsIHJlZnMgd2lsbCBiZSBtaXJyb3JlZCBieSAnZ2l0IHB1c2gnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIExvY2FsIHJlZiBjb25maWd1cmVkIGZvciAnZ2l0IHB1c2gnJXM6IgorbXNnaWRfcGx1cmFsICIgIExvY2FsIHJlZnMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdXNoJyVzOiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0MgorbXNnaWQgInNldCByZWZzL3JlbW90ZXMvPG5hbWU+L0hFQUQgYWNjb3JkaW5nIHRvIHJlbW90ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNDQKK21zZ2lkICJkZWxldGUgcmVmcy9yZW1vdGVzLzxuYW1lPi9IRUFEIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1OQorbXNnaWQgIkNhbm5vdCBkZXRlcm1pbmUgcmVtb3RlIEhFQUQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjYxCittc2dpZCAiTXVsdGlwbGUgcmVtb3RlIEhFQUQgYnJhbmNoZXMuIFBsZWFzZSBjaG9vc2Ugb25lIGV4cGxpY2l0bHkgd2l0aDoiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBkZWxldGUgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdCBhIHZhbGlkIHJlZjogJXMiCittc2dzdHIgIs6UzrXOvSDOtc6vzr3Osc65IM6tzrPOus+Fz4HOvyByZWY6ICVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHNldHVwICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgd2lsbCBiZWNvbWUgZGFuZ2xpbmchIgorbXNnc3RyICIgz4TOvyAlcyDOuM6xIM68zrXOr869zrXOuSDOtc66zrrPgc61zrzOrc+CISIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyBoYXMgYmVjb21lIGRhbmdsaW5nISIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJ1bmluZyAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVVJMOiAlcyIKK21zZ3N0ciAiVVJMOiAlcyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAqIFt3b3VsZCBwcnVuZV0gJXMiCittc2dzdHIgIiAqIFvOuM6xIM66zrvOrM60zrXPhc61IM+Ezr9dICVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICogW3BydW5lZF0gJXMiCittc2dzdHIgIiAqIFvOus67zrHOtM61zrzOrc69zr9dICVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEzNzUKK21zZ2lkICJwcnVuZSByZW1vdGVzIGFmdGVyIGZldGNoaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQzOCBidWlsdGluL3JlbW90ZS5jOjE0OTIgYnVpbHRpbi9yZW1vdGUuYzoxNTYwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHN1Y2ggcmVtb3RlICclcyciCittc2dzdHIgIs6UzrXOvSDPhc+AzqzPgc+HzrXOuSDPhM6tz4TOv865zr/PgiDOsc+Azr/OvM6xzrrPgc+Fz4POvM6tzr3Ov8+CIM61zr7Phc+AzrfPgc61z4TOt8+Ezq7PgiAnJXMnIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE0NTQKK21zZ2lkICJhZGQgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ2MQorbXNnaWQgIm5vIHJlbW90ZSBzcGVjaWZpZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNDc4Cittc2dpZCAicXVlcnkgcHVzaCBVUkxzIHJhdGhlciB0aGFuIGZldGNoIFVSTHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNDgwCittc2dpZCAicmV0dXJuIGFsbCBVUkxzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUwOAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBVUkxzIGNvbmZpZ3VyZWQgZm9yIHJlbW90ZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzNAorbXNnaWQgIm1hbmlwdWxhdGUgcHVzaCBVUkxzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzNgorbXNnaWQgImFkZCBVUkwiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM4Cittc2dpZCAiZGVsZXRlIFVSTHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTQ1Cittc2dpZCAiLS1hZGQgLS1kZWxldGUgZG9lc24ndCBtYWtlIHNlbnNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU4NAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIG9sZCBVUkwgcGF0dGVybjogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHN1Y2ggVVJMIGZvdW5kOiAlcyIKK21zZ3N0ciAizpTOtSDOss+Bzq3OuM63zrrOtSDPhM6tz4TOv865zr8gVVJMOiAlcyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTk0Cittc2dpZCAiV2lsbCBub3QgZGVsZXRlIGFsbCBub24tcHVzaCBVUkxzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYxMAorbXNnaWQgImJlIHZlcmJvc2U7IG11c3QgYmUgcGxhY2VkIGJlZm9yZSBhIHN1YmNvbW1hbmQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVua25vd24gc3ViY29tbWFuZDogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyMgorbXNnaWQgImdpdCByZXBhY2sgWzxvcHRpb25zPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyNworbXNnaWQgIiIKKyJJbmNyZW1lbnRhbCByZXBhY2tzIGFyZSBpbmNvbXBhdGlibGUgd2l0aCBiaXRtYXAgaW5kZXhlcy4gIFVzZVxuIgorIi0tbm8td3JpdGUtYml0bWFwLWluZGV4IG9yIGRpc2FibGUgdGhlIHBhY2sud3JpdGViaXRtYXBzIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjAwCittc2dpZCAiY291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjIzOSBidWlsdGluL3JlcGFjay5jOjQxMQorbXNnaWQgInJlcGFjazogRXhwZWN0aW5nIGZ1bGwgaGV4IG9iamVjdCBJRCBsaW5lcyBvbmx5IGZyb20gcGFjay1vYmplY3RzLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI1NgorbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk0Cittc2dpZCAicGFjayBldmVyeXRoaW5nIGluIGEgc2luZ2xlIHBhY2siCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyOTYKK21zZ2lkICJzYW1lIGFzIC1hLCBhbmQgdHVybiB1bnJlYWNoYWJsZSBvYmplY3RzIGxvb3NlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk5Cittc2dpZCAicmVtb3ZlIHJlZHVuZGFudCBwYWNrcywgYW5kIHJ1biBnaXQtcHJ1bmUtcGFja2VkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCittc2dpZCAicGFzcyAtLW5vLXJldXNlLWRlbHRhIHRvIGdpdC1wYWNrLW9iamVjdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMDMKK21zZ2lkICJwYXNzIC0tbm8tcmV1c2Utb2JqZWN0IHRvIGdpdC1wYWNrLW9iamVjdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMDUKK21zZ2lkICJkbyBub3QgcnVuIGdpdC11cGRhdGUtc2VydmVyLWluZm8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMDgKK21zZ2lkICJwYXNzIC0tbG9jYWwgdG8gZ2l0LXBhY2stb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMxMAorbXNnaWQgIndyaXRlIGJpdG1hcCBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMxMgorbXNnaWQgInBhc3MgLS1kZWx0YS1pc2xhbmRzIHRvIGdpdC1wYWNrLW9iamVjdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMTMKK21zZ2lkICJhcHByb3hpZGF0ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMxNAorbXNnaWQgIndpdGggLUEsIGRvIG5vdCBsb29zZW4gb2JqZWN0cyBvbGRlciB0aGFuIHRoaXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMTYKK21zZ2lkICJ3aXRoIC1hLCByZXBhY2sgdW5yZWFjaGFibGUgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMxOAorbXNnaWQgInNpemUgb2YgdGhlIHdpbmRvdyB1c2VkIGZvciBkZWx0YSBjb21wcmVzc2lvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMxOSBidWlsdGluL3JlcGFjay5jOjMyNQorbXNnaWQgImJ5dGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIwCittc2dpZCAic2FtZSBhcyB0aGUgYWJvdmUsIGJ1dCBsaW1pdCBtZW1vcnkgc2l6ZSBpbnN0ZWFkIG9mIGVudHJpZXMgY291bnQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMjIKK21zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gZGVsdGEgZGVwdGgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMjQKK21zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gbnVtYmVyIG9mIHRocmVhZHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMjYKK21zZ2lkICJtYXhpbXVtIHNpemUgb2YgZWFjaCBwYWNrZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMyOAorbXNnaWQgInJlcGFjayBvYmplY3RzIGluIHBhY2tzIG1hcmtlZCB3aXRoIC5rZWVwIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzMwCittc2dpZCAiZG8gbm90IHJlcGFjayB0aGlzIHBhY2siCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzozNDAKK21zZ2lkICJjYW5ub3QgZGVsZXRlIHBhY2tzIGluIGEgcHJlY2lvdXMtb2JqZWN0cyByZXBvIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQ0Cittc2dpZCAiLS1rZWVwLXVucmVhY2hhYmxlIGFuZCAtQSBhcmUgaW5jb21wYXRpYmxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NDIwCittc2dpZCAiTm90aGluZyBuZXcgdG8gcGFjay4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldBUk5JTkc6IFNvbWUgcGFja3MgaW4gdXNlIGhhdmUgYmVlbiByZW5hbWVkIGJ5XG4iCisiV0FSTklORzogcHJlZml4aW5nIG9sZC0gdG8gdGhlaXIgbmFtZSwgaW4gb3JkZXIgdG9cbiIKKyJXQVJOSU5HOiByZXBsYWNlIHRoZW0gd2l0aCB0aGUgbmV3IHZlcnNpb24gb2YgdGhlXG4iCisiV0FSTklORzogZmlsZS4gIEJ1dCB0aGUgb3BlcmF0aW9uIGZhaWxlZCwgYW5kIHRoZVxuIgorIldBUk5JTkc6IGF0dGVtcHQgdG8gcmVuYW1lIHRoZW0gYmFjayB0byB0aGVpclxuIgorIldBUk5JTkc6IG9yaWdpbmFsIG5hbWVzIGFsc28gZmFpbGVkLlxuIgorIldBUk5JTkc6IFBsZWFzZSByZW5hbWUgdGhlbSBpbiAlcyBtYW51YWxseTpcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjUyOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjIKK21zZ2lkICJnaXQgcmVwbGFjZSBbLWZdIDxvYmplY3Q+IDxyZXBsYWNlbWVudD4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjMKK21zZ2lkICJnaXQgcmVwbGFjZSBbLWZdIC0tZWRpdCA8b2JqZWN0PiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNAorbXNnaWQgImdpdCByZXBsYWNlIFstZl0gLS1ncmFmdCA8Y29tbWl0PiBbPHBhcmVudD4uLi5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI1Cittc2dpZCAiZ2l0IHJlcGxhY2UgWy1mXSAtLWNvbnZlcnQtZ3JhZnQtZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNgorbXNnaWQgImdpdCByZXBsYWNlIC1kIDxvYmplY3Q+Li4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3Cittc2dpZCAiZ2l0IHJlcGxhY2UgWy0tZm9ybWF0PTxmb3JtYXQ+XSBbLWwgWzxwYXR0ZXJuPl1dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4IGJ1aWx0aW4vcmVwbGFjZS5jOjIwMyBidWlsdGluL3JlcGxhY2UuYzoyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZiIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgz4TOsc+Nz4TOuc+Dzrcgz4TOv8+FICclcycgzrzOtSDOus6sz4DOv865zr8gzq3Os866z4XPgc6/IHJlZiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgcmVwbGFjZSBmb3JtYXQgJyVzJ1xuIgorInZhbGlkIGZvcm1hdHMgYXJlICdzaG9ydCcsICdtZWRpdW0nIGFuZCAnbG9uZyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlcGxhY2UgcmVmICclcycgbm90IGZvdW5kIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjEzNworIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkIHJlcGxhY2UgcmVmICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVmIG5hbWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgInJlcGxhY2UgcmVmICclcycgYWxyZWFkeSBleGlzdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPYmplY3RzIG11c3QgYmUgb2YgdGhlIHNhbWUgdHlwZS5cbiIKKyInJXMnIHBvaW50cyB0byBhIHJlcGxhY2VkIG9iamVjdCBvZiB0eXBlICclcydcbiIKKyJ3aGlsZSAnJXMnIHBvaW50cyB0byBhIHJlcGxhY2VtZW50IG9iamVjdCBvZiB0eXBlICclcycuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjIyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGluZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyMzgKK21zZ2lkICJjYXQtZmlsZSByZXBvcnRlZCBmYWlsdXJlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNjgKK21zZ2lkICJ1bmFibGUgdG8gc3Bhd24gbWt0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3MgorbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gbWt0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4MQorbXNnaWQgIm1rdHJlZSByZXBvcnRlZCBmYWlsdXJlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4NQorbXNnaWQgIm1rdHJlZSBkaWQgbm90IHJldHVybiBhbiBvYmplY3QgbmFtZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI5OQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBvYmplY3QgdG8gZGF0YWJhc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MzE4IGJ1aWx0aW4vcmVwbGFjZS5jOjM3MSBidWlsdGluL3JlcGxhY2UuYzo0MTUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJyVzJyIKK21zZ3N0ciAizrzOtyDOrc6zzrrPhc+Bzr8gz4zOvc6/zrzOsSDOsc69z4TOuc66zrXOuc68zq3Ovc6/z4U6ICclcyciCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IG9iamVjdCB0eXBlIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzozMzgKK21zZ2lkICJlZGl0aW5nIG9iamVjdCBmaWxlIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3IG9iamVjdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKK21zZ3N0ciAiz4TOvyDOvc6tzr8gzrHOvc+EzrnOus61zq/OvM61zr3OvyDOtc6vzr3Osc65IM6vzrTOuc6/IM68zrUgz4TOvyDPgM6xzrvOuc+MOiAnJXMnIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG1lcmdldGFnIGluIGNvbW1pdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgbWVyZ2V0YWcgaW4gY29tbWl0ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvcmlnaW5hbCBjb21taXQgJyVzJyBjb250YWlucyBtZXJnZXRhZyAnJXMnIHRoYXQgaXMgZGlzY2FyZGVkOyB1c2UgLS1lZGl0ICIKKyJpbnN0ZWFkIG9mIC0tZ3JhZnQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZSBvcmlnaW5hbCBjb21taXQgJyVzJyBoYXMgYSBncGcgc2lnbmF0dXJlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ2MQorbXNnaWQgInRoZSBzaWduYXR1cmUgd2lsbCBiZSByZW1vdmVkIGluIHRoZSByZXBsYWNlbWVudCBjb21taXQhIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgcmVwbGFjZW1lbnQgY29tbWl0IGZvcjogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ3JhZnQgZm9yICclcycgdW5uZWNlc3NhcnkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyBjb21taXQgaXMgdGhlIHNhbWUgYXMgdGhlIG9sZCBvbmU6ICclcyciCittc2dzdHIgIs63IM69zq3OsSDPhc+Azr/Oss6/zrvOriDOtc6vzr3Osc65IM6vzrTOuc6xIM68zrUgz4TOt869IM+AzrHOu865zqw6ICclcyciCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY291bGQgbm90IGNvbnZlcnQgdGhlIGZvbGxvd2luZyBncmFmdChzKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1MzYKK21zZ2lkICJsaXN0IHJlcGxhY2UgcmVmcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1MzcKK21zZ2lkICJkZWxldGUgcmVwbGFjZSByZWZzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzOAorbXNnaWQgImVkaXQgZXhpc3Rpbmcgb2JqZWN0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzOQorbXNnaWQgImNoYW5nZSBhIGNvbW1pdCdzIHBhcmVudHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQwCittc2dpZCAiY29udmVydCBleGlzdGluZyBncmFmdCBmaWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0MQorbXNnaWQgInJlcGxhY2UgdGhlIHJlZiBpZiBpdCBleGlzdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQzCittc2dpZCAiZG8gbm90IHByZXR0eS1wcmludCBjb250ZW50cyBmb3IgLS1lZGl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0NAorbXNnaWQgInVzZSB0aGlzIGZvcm1hdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTcKK21zZ2lkICItLWZvcm1hdCBjYW5ub3QgYmUgdXNlZCB3aGVuIG5vdCBsaXN0aW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU2NQorbXNnaWQgIi1mIG9ubHkgbWFrZXMgc2Vuc2Ugd2hlbiB3cml0aW5nIGEgcmVwbGFjZW1lbnQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY5Cittc2dpZCAiLS1yYXcgb25seSBtYWtlcyBzZW5zZSB3aXRoIC0tZWRpdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NzUKK21zZ2lkICItZCBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTgxCittc2dpZCAiYmFkIG51bWJlciBvZiBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTg3Cittc2dpZCAiLWUgbmVlZHMgZXhhY3RseSBvbmUgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTkzCittc2dpZCAiLWcgbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5OQorbXNnaWQgIi0tY29udmVydC1ncmFmdC1maWxlIHRha2VzIG5vIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYwNQorbXNnaWQgIm9ubHkgb25lIHBhdHRlcm4gY2FuIGJlIGdpdmVuIHdpdGggLWwiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXJlcmUuYzoxMworbXNnaWQgImdpdCByZXJlcmUgW2NsZWFyIHwgZm9yZ2V0IDxwYXRoPi4uLiB8IHN0YXR1cyB8IHJlbWFpbmluZyB8IGRpZmYgfCBnY10iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXJlcmUuYzo2MAorbXNnaWQgInJlZ2lzdGVyIGNsZWFuIHJlc29sdXRpb25zIGluIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVyZXJlLmM6NzkKK21zZ2lkICInZ2l0IHJlcmVyZSBmb3JnZXQnIHdpdGhvdXQgcGF0aHMgaXMgZGVwcmVjYXRlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcmVyZS5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2VuZXJhdGUgZGlmZiBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzIKK21zZ2lkICIiCisiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPGNvbW1pdD5dIgorbXNnc3RyICIiCisiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPM+Fz4DOv86yzr/Ou86uPl0iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMworbXNnaWQgImdpdCByZXNldCBbLXFdIFs8dHJlZS1pc2g+XSBbLS1dIDxwYXRocz4uLi4iCittc2dzdHIgImdpdCByZXNldCBbLXFdIFs8zrTOrc69z4TPgc6/IM6uIM+GzrHOuc69zr/OvM61zr3Ouc66z4w+XSBbLS1dIDzOtM65zrHOtM+Bzr/OvM6tz4I+Li4uIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzQKK21zZ2lkICJnaXQgcmVzZXQgLS1wYXRjaCBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzPi4uLl0iCittc2dzdHIgImdpdCByZXNldCAtLXBhdGNoIFs8zrTOrc69z4TPgc6/IM6uIM+GzrHOuc69zr/OvM61zr3Ouc66z4w+XSBbLS1dIFs8zrTOuc6xzrTPgc6/zrzOrc+CPi4uLl0iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MAorbXNnaWQgIm1peGVkIgorbXNnc3RyICJtaXhlZCIKKworIzogYnVpbHRpbi9yZXNldC5jOjQwCittc2dpZCAic29mdCIKK21zZ3N0ciAic29mdCIKKworIzogYnVpbHRpbi9yZXNldC5jOjQwCittc2dpZCAiaGFyZCIKK21zZ3N0ciAiaGFyZCIKKworIzogYnVpbHRpbi9yZXNldC5jOjQwCittc2dpZCAibWVyZ2UiCittc2dzdHIgIs+Dz4XOs8+Hz47Ovc61z4XPg863IgorCisjOiBidWlsdGluL3Jlc2V0LmM6NDAKK21zZ2lkICJrZWVwIgorbXNnc3RyICLOtM65zrHPhM6uz4HOt8+DzrciCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo4MQorbXNnaWQgIllvdSBkbyBub3QgaGF2ZSBhIHZhbGlkIEhFQUQuIgorbXNnc3RyICLOlM61zr0gzq3Ph861z4TOtSDOrc6zzrrPhc+Bzr8gSEVBRC4iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo4MworbXNnaWQgIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgSEVBRC4iCittc2dzdHIgIs6UzrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ez4wgzr3OsSDOss+BzrXOuM61zq8gz4TOvyDOtM6tzr3PhM+Bzr8gz4TOv8+FIEhFQUQuIgorCisjOiBidWlsdGluL3Jlc2V0LmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIGZpbmQgdHJlZSBvZiAlcy4iCittc2dzdHIgIs6UzrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ez4wgzr3OsSDOss+BzrXOuM61zq8gz4TOvyDOtM6tzr3PhM+Bzr8gz4TOv8+FICVzLiIKKworIzogYnVpbHRpbi9yZXNldC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgZG8gYSAlcyByZXNldCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UuIgorbXNnc3RyICLOlM61zr0gzrXOr869zrHOuSDOtM+Fzr3Osc+Ez4wgzr3OsSDOs86vzr3Otc65IM61z4DOsc69zrHPhs6/z4HOrCAlcyDPg8+EzrcgzrzOrc+DzrcgzrzOuc6xz4Igz4PPhc6zz4fPjs69zrXPhc+DzrfPgi4iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTMKK21zZ2lkICJiZSBxdWlldCwgb25seSByZXBvcnQgZXJyb3JzIgorbXNnc3RyICLPg865z4nPgM63zrvOriDOu861zrnPhM6/z4XPgc6zzq/OsSwgzrHOvc6xz4bOv8+BzqwgzrzPjM69zr8gz4PPhs6xzrvOvM6sz4TPic69IgorCisjOiBidWlsdGluL3Jlc2V0LmM6Mjk1Cittc2dpZCAicmVzZXQgSEVBRCBhbmQgaW5kZXgiCittc2dzdHIgIs61z4DOsc69zrHPhs6/z4HOrCBIRUFEIM66zrHOuSDOtc+Fz4HOtc+EzrfPgc6vzr/PhSIKKworIzogYnVpbHRpbi9yZXNldC5jOjI5NgorbXNnaWQgInJlc2V0IG9ubHkgSEVBRCIKK21zZ3N0ciAizrXPgM6xzr3Osc+Gzr/Pgc6sIM68z4zOvc6/IEhFQUQiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTggYnVpbHRpbi9yZXNldC5jOjMwMAorbXNnaWQgInJlc2V0IEhFQUQsIGluZGV4IGFuZCB3b3JraW5nIHRyZWUiCittc2dzdHIgIs61z4DOsc69zrHPhs6/z4HOrCBIRUFELCDOtc+Fz4HOtc+EzrfPgc6vzr/PhSDOus6xzrkgzrTOrc69z4TPgc6/z4UgzrXPgc6zzrHPg86vzrHPgiIKKworIzogYnVpbHRpbi9yZXNldC5jOjMwMgorbXNnaWQgInJlc2V0IEhFQUQgYnV0IGtlZXAgbG9jYWwgY2hhbmdlcyIKK21zZ3N0ciAizrXPgM6xzr3Osc+Gzr/Pgc6sIEhFQUQgzrHOu867zqwgzrTOuc6xz4TOrs+BzrfPg863IM+Ezr/PgM65zrrPjs69IM6xzrvOu86xzrPPjs69IgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzA4Cittc2dpZCAicmVjb3JkIG9ubHkgdGhlIGZhY3QgdGhhdCByZW1vdmVkIHBhdGhzIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCittc2dzdHIgIiIKKyLOus6xz4TOsc6zz4HOsc+Gzq4gzrzPjM69zr8gz4TOv8+FIM6zzrXOs86/zr3PjM+Ezr/PgiDPjM+Ezrkgzr/OuSDOsc+GzrHOuc+BzrXOuM61zq/Pg861z4IgzrTOuc6xzrTPgc6/zrzOrc+CIM64zrEgz4DPgc6/z4PPhM61zrjOv8+Nzr0gIgorIs6xz4HOs8+Mz4TOtc+BzrEiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJldmlzaW9uLiIKK21zZ3N0ciAizpHPgM6tz4TPhc+HzrUgzrcgz4TOsc+Nz4TOuc+Dzrcgz4TOv8+FICclcycgzrzOtSDOus6sz4DOv865zrEgzq3Os866z4XPgc63IM6tzrrOtM6/z4POty4iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHRyZWUuIgorbXNnc3RyICLOkc+Azq3PhM+Fz4fOtSDOtyDPhM6xz43PhM65z4POtyDPhM6/z4UgJyVzJyDOvM61IM66zqzPgM6/zrnOvyDOrc6zzrrPhc+Bzr8gzrTOrc69z4TPgc6/LiIKKworIzogYnVpbHRpbi9yZXNldC5jOjM0MworbXNnaWQgIi0tcGF0Y2ggaXMgaW5jb21wYXRpYmxlIHdpdGggLS17aGFyZCxtaXhlZCxzb2Z0fSIKK21zZ3N0ciAiz4TOvyAtLXBhdGNoIM61zq/Ovc6xzrkgzrHPg8+NzrzOss6xz4TOvyDOvM61IC0te2hhcmQsbWl4ZWQsc29mdH0iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNTIKK21zZ2lkICItLW1peGVkIHdpdGggcGF0aHMgaXMgZGVwcmVjYXRlZDsgdXNlICdnaXQgcmVzZXQgLS0gPHBhdGhzPicgaW5zdGVhZC4iCittc2dzdHIgIiIKKyLPhM6/IC0tbWl4ZWQgzrzOtSDOtM65zrHOtM+Bzr/OvM6tz4Igzq3Ph861zrkgzrrOsc+EzrHPgc6zzrfOuM61zq8sIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgzrHOvc+Ezq8gzrHPhc+Ezr/PjSAnZ2l0ICIKKyJyZXNldCAtLSA8zrTOuc6xzrTPgc6/zrzOrc+CPicuIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBkbyAlcyByZXNldCB3aXRoIHBhdGhzLiIKK21zZ3N0ciAizpTOtc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM6uIM63IM61z4DOsc69zrHPhs6/z4HOrCAlcyDOvM61IM60zrnOsc60z4HOv868zq3Pgi4iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVzZXQgaXMgbm90IGFsbG93ZWQgaW4gYSBiYXJlIHJlcG9zaXRvcnkiCittc2dzdHIgIs63IM61z4DOsc69zrHPhs6/z4HOrCAlcyDOtM61zr0gzrXPgM65z4TPgc6tz4DOtc+EzrHOuSDPg861IM6zz4XOvM69z4wgzrHPgM6/zrjOtc+Ezq7Pgc65zr8iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNjgKK21zZ2lkICItTiBjYW4gb25seSBiZSB1c2VkIHdpdGggLS1taXhlZCIKK21zZ3N0ciAiz4TOvyAtTiDOvM+Azr/Pgc61zq8gzr3OsSDPh8+BzrfPg865zrzOv8+Azr/Ouc63zrjOtc6vIM68z4zOvc6/IM68zrUgz4TOvyAtLW1peGVkIgorCisjOiBidWlsdGluL3Jlc2V0LmM6Mzg4Cittc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZXNldDoiCittc2dzdHIgIs6czrcgz4DPgc6/zrXPhM6/zrnOvM6xz4POvM6tzr3Otc+CIM6xzrvOu86xzrPOrc+CIM68zrXPhM6sIM+EzrfOvSDOtc+AzrHOvc6xz4bOv8+Bzqw6IgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBlbnVtZXJhdGUgdW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZXNldC4gIFlvdSBjYW5cbiIKKyJ1c2UgJy0tcXVpZXQnIHRvIGF2b2lkIHRoaXMuICBTZXQgdGhlIGNvbmZpZyBzZXR0aW5nIHJlc2V0LnF1aWV0IHRvIHRydWVcbiIKKyJ0byBtYWtlIHRoaXMgdGhlIGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyLOlyDOsc+AzrHPgc6vzrjOvM63z4POtyDOvM63IM+Az4HOv861z4TOv865zrzOsc+DzrzOrc69z4nOvSDOsc67zrvOsc6zz47OvSDOvM61z4TOrCDPhM63zr0gzrXPgM6xzr3Osc+Gzr/Pgc6sIM+Azq7Pgc61ICUuMmYgIgorIs60zrXPhc+EzrXPgc+MzrvOtc+Az4TOsS4gIM6cz4DOv8+BzrXOr8+EzrUgzr3OsVxuIgorIs+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg861z4TOtSDPhM6/ICctLXF1aWV0JyDOs865zrEgzr3OsSDPhM6/IM6xz4DOv8+Gz43Os861z4TOtSDOsc+Fz4TPjC4gIM6RzrvOu86szr7PhM61IM+EzrfOvSDOtc+AzrnOu86/zrPOriAiCisiz4HPjc64zrzOuc+DzrfPgiByZXNldC5xdWlldCDPg861IHRydWVcbiIKKyLOs865zrEgzr3OsSDPhM6/IM66zqzOvc61z4TOtSDPgM+Bzr/Otc+AzrnOu861zrPOvM6tzr3Ovy5cbiIKKworIzogYnVpbHRpbi9yZXNldC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcmVzZXQgaW5kZXggZmlsZSB0byByZXZpc2lvbiAnJXMnLiIKK21zZ3N0ciAizpTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDOtc+AzrHOvc6xz4bOv8+Bzqwgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM61z4XPgc61z4TOt8+Bzq/Ov8+FIM+Dz4TOt869IM6tzrrOtM6/z4POtyAnJXMnLiIKKworIzogYnVpbHRpbi9yZXNldC5jOjQwNQorbXNnaWQgIkNvdWxkIG5vdCB3cml0ZSBuZXcgaW5kZXggZmlsZS4iCittc2dzdHIgIs6UzrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ezq4gzrcgzrXOs86zz4HOsc+Gzq4gz4TOv8+FIM69zq3Ov8+FIM6xz4HPh861zq/Ov8+FIM61z4XPgc61z4TOt8+Bzq/Ov8+FLiIKKworIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQwNgorbXNnaWQgImNhbm5vdCBjb21iaW5lIC0tZXhjbHVkZS1wcm9taXNvci1vYmplY3RzIGFuZCAtLW1pc3NpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQ2NAorbXNnaWQgIm9iamVjdCBmaWx0ZXJpbmcgcmVxdWlyZXMgLS1vYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzcGFyc2UgdmFsdWUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Jldi1saXN0LmM6NTA4Cittc2dpZCAicmV2LWxpc3QgZG9lcyBub3Qgc3VwcG9ydCBkaXNwbGF5IG9mIG5vdGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1MTEKK21zZ2lkICJjYW5ub3QgY29tYmluZSAtLXVzZS1iaXRtYXAtaW5kZXggd2l0aCBvYmplY3QgZmlsdGVyaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDA4Cittc2dpZCAiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IFs8b3B0aW9ucz5dIC0tIFs8YXJncz4uLi5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDEzCittc2dpZCAia2VlcCB0aGUgYC0tYCBwYXNzZWQgYXMgYW4gYXJnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE1Cittc2dpZCAic3RvcCBwYXJzaW5nIGFmdGVyIHRoZSBmaXJzdCBub24tb3B0aW9uIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE4Cittc2dpZCAib3V0cHV0IGluIHN0dWNrIGxvbmcgZm9ybSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjU1MQorbXNnaWQgIiIKKyJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHRpb25zPl0gLS0gWzxhcmdzPi4uLl1cbiIKKyIgICBvcjogZ2l0IHJldi1wYXJzZSAtLXNxLXF1b3RlIFs8YXJnPi4uLl1cbiIKKyIgICBvcjogZ2l0IHJldi1wYXJzZSBbPG9wdGlvbnM+XSBbPGFyZz4uLi5dXG4iCisiXG4iCisiUnVuIFwiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IC1oXCIgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhlIGZpcnN0IHVzYWdlLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JldmVydC5jOjI0Cittc2dpZCAiZ2l0IHJldmVydCBbPG9wdGlvbnM+XSA8Y29tbWl0LWlzaD4uLi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoyNQorbXNnaWQgImdpdCByZXZlcnQgPHN1YmNvbW1hbmQ+IgorbXNnc3RyICJnaXQgcmV2ZXJ0IDzPhc+Azr/Otc69z4TOv867zq4+IgorCisjOiBidWlsdGluL3JldmVydC5jOjMwCittc2dpZCAiZ2l0IGNoZXJyeS1waWNrIFs8b3B0aW9ucz5dIDxjb21taXQtaXNoPi4uLiIKK21zZ3N0ciAiZ2l0IGNoZXJyeS1waWNrIFs8zrXPgM65zrvOv86zzq3Pgj5dIDzPhc+Azr/Oss6/zrvOriDOriDPhs6xzrnOvc6/zrzOtc69zrnOus6uPi4uLiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzozMQorbXNnaWQgImdpdCBjaGVycnktcGljayA8c3ViY29tbWFuZD4iCittc2dzdHIgImdpdCBjaGVycnktcGljayA8z4XPgM6/zrXOvc+Ezr/Ou86uPiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiB6ZXJvIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6ICVzIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDEKK21zZ2lkICJlbmQgcmV2ZXJ0IG9yIGNoZXJyeS1waWNrIHNlcXVlbmNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAyCittc2dpZCAicmVzdW1lIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JldmVydC5jOjEwMworbXNnaWQgImNhbmNlbCByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDQKK21zZ2lkICJkb24ndCBhdXRvbWF0aWNhbGx5IGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JldmVydC5jOjEwNQorbXNnaWQgImVkaXQgdGhlIGNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA4Cittc2dpZCAicGFyZW50LW51bWJlciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JldmVydC5jOjEwOQorbXNnaWQgInNlbGVjdCBtYWlubGluZSBwYXJlbnQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMTEKK21zZ2lkICJtZXJnZSBzdHJhdGVneSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JldmVydC5jOjExMworbXNnaWQgIm9wdGlvbiBmb3IgbWVyZ2Ugc3RyYXRlZ3kiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMjIKK21zZ2lkICJhcHBlbmQgY29tbWl0IG5hbWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMjQKK21zZ2lkICJwcmVzZXJ2ZSBpbml0aWFsbHkgZW1wdHkgY29tbWl0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JldmVydC5jOjEyNgorbXNnaWQgImtlZXAgcmVkdW5kYW50LCBlbXB0eSBjb21taXRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjIwCittc2dpZCAicmV2ZXJ0IGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JldmVydC5jOjIzMworbXNnaWQgImNoZXJyeS1waWNrIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JtLmM6MTkKK21zZ2lkICJnaXQgcm0gWzxvcHRpb25zPl0gWy0tXSA8ZmlsZT4uLi4iCittc2dzdHIgImdpdCBybSBbPM61z4DOuc67zr/Os86tz4I+XSBbLS1dIDzOsc+Bz4fOtc6vzr8+Li4uIgorCisjOiBidWlsdGluL3JtLmM6MjA3Cittc2dpZCAiIgorInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgc3RhZ2VkIGNvbnRlbnQgZGlmZmVyZW50IGZyb20gYm90aCB0aGVcbiIKKyJmaWxlIGFuZCB0aGUgSEVBRDoiCittc2dpZF9wbHVyYWwgIiIKKyJ0aGUgZm9sbG93aW5nIGZpbGVzIGhhdmUgc3RhZ2VkIGNvbnRlbnQgZGlmZmVyZW50IGZyb20gYm90aCB0aGVcbiIKKyJmaWxlIGFuZCB0aGUgSEVBRDoiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBidWlsdGluL3JtLmM6MjEyCittc2dpZCAiIgorIlxuIgorIih1c2UgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCittc2dzdHIgIiIKKyJcbiIKKyIoz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtSDPhM6/IC1mIM6zzrnOsSDOvc6xIM61zr7Osc69zrHOs866zqzPg861z4TOtSDPhM63zr0gzrHPhs6xzq/Pgc61z4POtykiCisKKyM6IGJ1aWx0aW4vcm0uYzoyMTYKK21zZ2lkICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIGNoYW5nZXMgc3RhZ2VkIGluIHRoZSBpbmRleDoiCittc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBjaGFuZ2VzIHN0YWdlZCBpbiB0aGUgaW5kZXg6IgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYnVpbHRpbi9ybS5jOjIyMCBidWlsdGluL3JtLmM6MjI5Cittc2dpZCAiIgorIlxuIgorIih1c2UgLS1jYWNoZWQgdG8ga2VlcCB0aGUgZmlsZSwgb3IgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ybS5jOjIyNgorbXNnaWQgInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgbG9jYWwgbW9kaWZpY2F0aW9uczoiCittc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBsb2NhbCBtb2RpZmljYXRpb25zOiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGJ1aWx0aW4vcm0uYzoyNDIKK21zZ2lkICJkbyBub3QgbGlzdCByZW1vdmVkIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcm0uYzoyNDMKK21zZ2lkICJvbmx5IHJlbW92ZSBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JtLmM6MjQ0Cittc2dpZCAib3ZlcnJpZGUgdGhlIHVwLXRvLWRhdGUgY2hlY2siCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ybS5jOjI0NQorbXNnaWQgImFsbG93IHJlY3Vyc2l2ZSByZW1vdmFsIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcm0uYzoyNDcKK21zZ2lkICJleGl0IHdpdGggYSB6ZXJvIHN0YXR1cyBldmVuIGlmIG5vdGhpbmcgbWF0Y2hlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JtLmM6Mjg5Cittc2dpZCAicGxlYXNlIHN0YWdlIHlvdXIgY2hhbmdlcyB0byAuZ2l0bW9kdWxlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9ybS5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVtb3ZpbmcgJyVzJyByZWN1cnNpdmVseSB3aXRob3V0IC1yIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcm0uYzozNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IHJtOiB1bmFibGUgdG8gcmVtb3ZlICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MjAKK21zZ2lkICIiCisiZ2l0IHNlbmQtcGFjayBbLS1hbGwgfCAtLW1pcnJvcl0gWy0tZHJ5LXJ1bl0gWy0tZm9yY2VdIFstLXJlY2VpdmUtcGFjaz08Z2l0LSIKKyJyZWNlaXZlLXBhY2s+XSBbLS12ZXJib3NlXSBbLS10aGluXSBbLS1hdG9taWNdIFs8aG9zdD46XTxkaXJlY3Rvcnk+ICIKKyJbPHJlZj4uLi5dXG4iCisiICAtLWFsbCBhbmQgZXhwbGljaXQgPHJlZj4gc3BlY2lmaWNhdGlvbiBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE2MworbXNnaWQgInJlbW90ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc3Cittc2dpZCAidXNlIHN0YXRlbGVzcyBSUEMgcHJvdG9jb2wiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzgKK21zZ2lkICJyZWFkIHJlZnMgZnJvbSBzdGRpbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE3OQorbXNnaWQgInByaW50IHN0YXR1cyBmcm9tIHJlbW90ZSBoZWxwZXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zZXJ2ZS5jOjcKK21zZ2lkICJnaXQgc2VydmUgWzxvcHRpb25zPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zZXJ2ZS5jOjE3IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyMworbXNnaWQgInF1aXQgYWZ0ZXIgYSBzaW5nbGUgcmVxdWVzdC9yZXNwb25zZSBleGNoYW5nZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3NlcnZlLmM6MTkKK21zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGFkdmVydGlzaW5nIGNhcGFiaWxpdGllcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MTQKK21zZ2lkICJnaXQgc2hvcnRsb2cgWzxvcHRpb25zPl0gWzxyZXZpc2lvbi1yYW5nZT5dIFtbLS1dIDxwYXRoPi4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjE1Cittc2dpZCAiZ2l0IGxvZyAtLXByZXR0eT1zaG9ydCB8IGdpdCBzaG9ydGxvZyBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IGxvZyAtLXByZXR0eT1zaG9ydCB8IGdpdCBzaG9ydGxvZyBbPM61z4DOuc67zr/Os86tz4I+XSIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI2NAorbXNnaWQgIkdyb3VwIGJ5IGNvbW1pdHRlciByYXRoZXIgdGhhbiBhdXRob3IiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI2NgorbXNnaWQgInNvcnQgb3V0cHV0IGFjY29yZGluZyB0byB0aGUgbnVtYmVyIG9mIGNvbW1pdHMgcGVyIGF1dGhvciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MjY4Cittc2dpZCAiU3VwcHJlc3MgY29tbWl0IGRlc2NyaXB0aW9ucywgb25seSBwcm92aWRlcyBjb21taXQgY291bnQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI3MAorbXNnaWQgIlNob3cgdGhlIGVtYWlsIGFkZHJlc3Mgb2YgZWFjaCBhdXRob3IiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI3MQorbXNnaWQgIjx3PlssPGkxPlssPGkyPl1dIgorbXNnc3RyICI8dz5bLDxpMT5bLDxpMj5dXSIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI3MgorbXNnaWQgIkxpbmV3cmFwIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MzAxCittc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIGdpdmVuIG91dHNpZGUgcmVwb3NpdG9yeSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6MTMKK21zZ2lkICIiCisiZ2l0IHNob3ctYnJhbmNoIFstYSB8IC0tYWxsXSBbLXIgfCAtLXJlbW90ZXNdIFstLXRvcG8tb3JkZXIgfCAtLWRhdGUtb3JkZXJdXG4iCisiXHRcdFstLWN1cnJlbnRdIFstLWNvbG9yWz08d2hlbj5dIHwgLS1uby1jb2xvcl0gWy0tc3BhcnNlXVxuIgorIlx0XHRbLS1tb3JlPTxuPiB8IC0tbGlzdCB8IC0taW5kZXBlbmRlbnQgfCAtLW1lcmdlLWJhc2VdXG4iCisiXHRcdFstLW5vLW5hbWUgfCAtLXNoYTEtbmFtZV0gWy0tdG9waWNzXSBbKDxyZXY+IHwgPGdsb2I+KS4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjE3Cittc2dpZCAiZ2l0IHNob3ctYnJhbmNoICgtZyB8IC0tcmVmbG9nKVs9PG4+Wyw8YmFzZT5dXSBbLS1saXN0XSBbPHJlZj5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJXM7IGNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJlZiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJXM7IGNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJlZnMiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIG1hdGNoaW5nIHJlZnMgd2l0aCAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ2Cittc2dpZCAic2hvdyByZW1vdGUtdHJhY2tpbmcgYW5kIGxvY2FsIGJyYW5jaGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDgKK21zZ2lkICJzaG93IHJlbW90ZS10cmFja2luZyBicmFuY2hlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUwCittc2dpZCAiY29sb3IgJyohKy0nIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGJyYW5jaCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUyCittc2dpZCAic2hvdyA8bj4gbW9yZSBjb21taXRzIGFmdGVyIHRoZSBjb21tb24gYW5jZXN0b3IiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NAorbXNnaWQgInN5bm9ueW0gdG8gbW9yZT0tMSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU1Cittc2dpZCAic3VwcHJlc3MgbmFtaW5nIHN0cmluZ3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NworbXNnaWQgImluY2x1ZGUgdGhlIGN1cnJlbnQgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTkKK21zZ2lkICJuYW1lIGNvbW1pdHMgd2l0aCB0aGVpciBvYmplY3QgbmFtZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MQorbXNnaWQgInNob3cgcG9zc2libGUgbWVyZ2UgYmFzZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MworbXNnaWQgInNob3cgcmVmcyB1bnJlYWNoYWJsZSBmcm9tIGFueSBvdGhlciByZWYiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NQorbXNnaWQgInNob3cgY29tbWl0cyBpbiB0b3BvbG9naWNhbCBvcmRlciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY4Cittc2dpZCAic2hvdyBvbmx5IGNvbW1pdHMgbm90IG9uIHRoZSBmaXJzdCBicmFuY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MAorbXNnaWQgInNob3cgbWVyZ2VzIHJlYWNoYWJsZSBmcm9tIG9ubHkgb25lIHRpcCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjcyCittc2dpZCAidG9wb2xvZ2ljYWxseSBzb3J0LCBtYWludGFpbmluZyBkYXRlIG9yZGVyIHdoZXJlIHBvc3NpYmxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzUKK21zZ2lkICI8bj5bLDxiYXNlPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NgorbXNnaWQgInNob3cgPG4+IG1vc3QgcmVjZW50IHJlZi1sb2cgZW50cmllcyBzdGFydGluZyBhdCBiYXNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MTIKK21zZ2lkICIiCisiLS1yZWZsb2cgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tcmVtb3RlcywgLS1pbmRlcGVuZGVudCBvciAtLW1lcmdlLWJhc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczNgorbXNnaWQgIm5vIGJyYW5jaGVzIGdpdmVuLCBhbmQgSEVBRCBpcyBub3QgdmFsaWQiCittc2dzdHIgIs60zrUgzrTPjM64zrfOus6xzr0gzrrOu86szrTOv865LCDOus6xzrkgz4TOvyBIRUFEIM60zrXOvSDOtc6vzr3Osc65IM6tzrPOus+Fz4HOvyIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczOQorbXNnaWQgIi0tcmVmbG9nIG9wdGlvbiBuZWVkcyBvbmUgYnJhbmNoIG5hbWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0MgorIywgYy1mb3JtYXQKK21zZ2lkICJvbmx5ICVkIGVudHJ5IGNhbiBiZSBzaG93biBhdCBvbmUgdGltZS4iCittc2dpZF9wbHVyYWwgIm9ubHkgJWQgZW50cmllcyBjYW4gYmUgc2hvd24gYXQgb25lIHRpbWUuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0NgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBzdWNoIHJlZiAlcyIKK21zZ3N0ciAizrTOtc69IM+Fz4DOrM+Bz4fOtc65IHJlZiAlcyIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCByZXYuIgorbXNnaWRfcGx1cmFsICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCByZXZzLiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZWYuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpbmQgY29tbWl0ICVzICglcykiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjExCittc2dpZCAiIgorImdpdCBzaG93LXJlZiBbLXEgfCAtLXF1aWV0XSBbLS12ZXJpZnldIFstLWhlYWRdIFstZCB8IC0tZGVyZWZlcmVuY2VdIFstcyB8IC0tIgorImhhc2hbPTxuPl1dIFstLWFiYnJldls9PG4+XV0gWy0tdGFnc10gWy0taGVhZHNdIFstLV0gWzxwYXR0ZXJuPi4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjEyCittc2dpZCAiZ2l0IHNob3ctcmVmIC0tZXhjbHVkZS1leGlzdGluZ1s9PHBhdHRlcm4+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYxCittc2dpZCAib25seSBzaG93IHRhZ3MgKGNhbiBiZSBjb21iaW5lZCB3aXRoIGhlYWRzKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYyCittc2dpZCAib25seSBzaG93IGhlYWRzIChjYW4gYmUgY29tYmluZWQgd2l0aCB0YWdzKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYzCittc2dpZCAic3RyaWN0ZXIgcmVmZXJlbmNlIGNoZWNraW5nLCByZXF1aXJlcyBleGFjdCByZWYgcGF0aCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTY2IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjgKK21zZ2lkICJzaG93IHRoZSBIRUFEIHJlZmVyZW5jZSwgZXZlbiBpZiBpdCB3b3VsZCBiZSBmaWx0ZXJlZCBvdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MAorbXNnaWQgImRlcmVmZXJlbmNlIHRhZ3MgaW50byBvYmplY3QgSURzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzIKK21zZ2lkICJvbmx5IHNob3cgU0hBMSBoYXNoIHVzaW5nIDxuPiBkaWdpdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3NgorbXNnaWQgImRvIG5vdCBwcmludCByZXN1bHRzIHRvIHN0ZG91dCAodXNlZnVsIHdpdGggLS12ZXJpZnkpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzgKK21zZ2lkICJzaG93IHJlZnMgZnJvbSBzdGRpbiB0aGF0IGFyZW4ndCBpbiBsb2NhbCByZXBvc2l0b3J5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjE4Cittc2dpZCAiZ2l0IHN0cmlwc3BhY2UgWy1zIHwgLS1zdHJpcC1jb21tZW50c10iCittc2dzdHIgImdpdCBzdHJpcHNwYWNlIFstcyB8IC0tc3RyaXAtY29tbWVudHNdIgorCisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzoxOQorbXNnaWQgImdpdCBzdHJpcHNwYWNlIFstYyB8IC0tY29tbWVudC1saW5lc10iCittc2dzdHIgImdpdCBzdHJpcHNwYWNlIFstYyB8IC0tY29tbWVudC1saW5lc10iCisKKyM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM3Cittc2dpZCAic2tpcCBhbmQgcmVtb3ZlIGFsbCBsaW5lcyBzdGFydGluZyB3aXRoIGNvbW1lbnQgY2hhcmFjdGVyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjQwCittc2dpZCAicHJlcGVuZCBjb21tZW50IGNoYXJhY3RlciBhbmQgc3BhY2UgdG8gZWFjaCBsaW5lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk0MworIywgYy1mb3JtYXQKK21zZ2lkICJFeHBlY3RpbmcgYSBmdWxsIHJlZiBuYW1lLCBnb3QgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYyCittc2dpZCAic3VibW9kdWxlLS1oZWxwZXIgcHJpbnQtZGVmYXVsdC1yZW1vdGUgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0cmlwIG9uZSBjb21wb25lbnQgb2ZmIHVybCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MDggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjcKK21zZ2lkICJhbHRlcm5hdGl2ZSBhbmNob3IgZm9yIHJlbGF0aXZlIHBhdGhzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MTMKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbGlzdCBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDcwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2MjcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gdXJsIGZvdW5kIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIGluIC5naXRtb2R1bGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiRW50ZXJpbmcgJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyBmb3IgJXNcbiIKKyIuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyB3aGlsZSByZWN1cnNpbmcgaW4gdGhlIG5lc3RlZCAiCisic3VibW9kdWxlcyBvZiAlc1xuIgorIi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2MgorbXNnaWQgIlN1cHByZXNzIG91dHB1dCBvZiBlbnRlcmluZyBlYWNoIHN1Ym1vZHVsZSBjb21tYW5kIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNDkKK21zZ2lkICJSZWN1cnNlIGludG8gbmVzdGVkIHN1Ym1vZHVsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2OQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIDxjb21tYW5kPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb3VsZCBub3QgbG9vayB1cCBjb25maWd1cmF0aW9uICclcycuIEFzc3VtaW5nIHRoaXMgcmVwb3NpdG9yeSBpcyBpdHMgb3duICIKKyJhdXRob3JpdGF0aXZlIHVwc3RyZWFtLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjY0CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciB1cmwgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY2OAorIywgYy1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgJyVzJyAoJXMpIHJlZ2lzdGVyZWQgZm9yIHBhdGggJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FybmluZzogY29tbWFuZCB1cGRhdGUgbW9kZSBzdWdnZXN0ZWQgZm9yIHN1Ym1vZHVsZSAnJXMnXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY4NQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVnaXN0ZXIgdXBkYXRlIG1vZGUgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcwNworbXNnaWQgIlN1cHByZXNzIG91dHB1dCBmb3IgaW5pdGlhbGl6aW5nIGEgc3VibW9kdWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MTIKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPHBhdGg+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Nzg0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VibW9kdWxlIG1hcHBpbmcgZm91bmQgaW4gLmdpdG1vZHVsZXMgZm9yIHBhdGggJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODIzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlIEhFQUQgcmVmIGluc2lkZSB0aGUgc3VibW9kdWxlICclcyciCittc2dzdHIgIs60zrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ezq4gzrcgz4TOsc+Nz4TOuc+Dzrcgz4TOv8+FIEhFQUQgcmVmIM68zq3Pg86xIM+Dz4TOt869IM+Fz4DOv861zr3PjM+EzrfPhM6xICclcyciCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NTAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrHOvc6xzrTPgc6/zrzOriDOvM6tz4POsSDPg8+EzrfOvSDPhc+Azr/Otc69z4zPhM63z4TOsSAnJXMnIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODc0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTg1Cittc2dpZCAiU3VwcHJlc3Mgc3VibW9kdWxlIHN0YXR1cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg3NQorbXNnaWQgIiIKKyJVc2UgY29tbWl0IHN0b3JlZCBpbiB0aGUgaW5kZXggaW5zdGVhZCBvZiB0aGUgb25lIHN0b3JlZCBpbiB0aGUgc3VibW9kdWxlICIKKyJIRUFEIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzYKK21zZ2lkICJyZWN1cnNlIGludG8gbmVzdGVkIHN1Ym1vZHVsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg4MQorbXNnaWQgImdpdCBzdWJtb2R1bGUgc3RhdHVzIFstLXF1aWV0XSBbLS1jYWNoZWRdIFstLXJlY3Vyc2l2ZV0gWzxwYXRoPi4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkwNQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBuYW1lIDxwYXRoPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTY5CisjLCBjLWZvcm1hdAorbXNnaWQgIlN5bmNocm9uaXppbmcgc3VibW9kdWxlIHVybCBmb3IgJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlZ2lzdGVyIHVybCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBnZXQgdGhlIGRlZmF1bHQgcmVtb3RlIGZvciBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAwMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gdXBkYXRlIHJlbW90ZSBmb3Igc3VibW9kdWxlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNDcKK21zZ2lkICJTdXBwcmVzcyBvdXRwdXQgb2Ygc3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDU0Cittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHN5bmMgWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWzxwYXRoPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJyBjb250YWlucyBhIC5naXQgZGlyZWN0b3J5ICh1c2UgJ3JtIC1yZicgaWYgeW91ICIKKyJyZWFsbHkgd2FudCB0byByZW1vdmUgaXQgaW5jbHVkaW5nIGFsbCBvZiBpdHMgaGlzdG9yeSkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJyBjb250YWlucyBsb2NhbCBtb2RpZmljYXRpb25zOyB1c2UgJy1mJyB0byBkaXNjYXJkICIKKyJ0aGVtIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIkNsZWFyZWQgZGlyZWN0b3J5ICclcydcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIHN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZW1wdHkgc3VibW9kdWxlIGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE1NworIywgYy1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgJyVzJyAoJXMpIHVucmVnaXN0ZXJlZCBmb3IgcGF0aCAnJXMnXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODYKK21zZ2lkICJSZW1vdmUgc3VibW9kdWxlIHdvcmtpbmcgdHJlZXMgZXZlbiBpZiB0aGV5IGNvbnRhaW4gbG9jYWwgY2hhbmdlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4NworbXNnaWQgIlVucmVnaXN0ZXIgYWxsIHN1Ym1vZHVsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExOTIKK21zZ2lkICIiCisiZ2l0IHN1Ym1vZHVsZSBkZWluaXQgWy0tcXVpZXRdIFstZiB8IC0tZm9yY2VdIFstLWFsbCB8IFstLV0gWzxwYXRoPi4uLl1dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjA2Cittc2dpZCAiVXNlICctLWFsbCcgaWYgeW91IHJlYWxseSB3YW50IHRvIGRlaW5pdGlhbGl6ZSBhbGwgc3VibW9kdWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMwMSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMwNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJtb2R1bGUgJyVzJyBjYW5ub3QgYWRkIGFsdGVybmF0ZTogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmFsdWUgJyVzJyBmb3Igc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgaXMgbm90IHJlY29nbml6ZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmFsdWUgJyVzJyBmb3Igc3VibW9kdWxlLmFsdGVybmF0ZUxvY2F0aW9uIGlzIG5vdCByZWNvZ25pemVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzcwCittc2dpZCAid2hlcmUgdGhlIG5ldyBzdWJtb2R1bGUgd2lsbCBiZSBjbG9uZWQgdG8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzMKK21zZ2lkICJuYW1lIG9mIHRoZSBuZXcgc3VibW9kdWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc2Cittc2dpZCAidXJsIHdoZXJlIHRvIGNsb25lIHRoZSBzdWJtb2R1bGUgZnJvbSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4NAorbXNnaWQgImRlcHRoIGZvciBzaGFsbG93IGNsb25lcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg3MgorbXNnaWQgImZvcmNlIGNsb25pbmcgcHJvZ3Jlc3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzOTIKK21zZ2lkICIiCisiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNsb25lIFstLXByZWZpeD08cGF0aD5dIFstLXF1aWV0XSBbLS1yZWZlcmVuY2UgIgorIjxyZXBvc2l0b3J5Pl0gWy0tbmFtZSA8bmFtZT5dIFstLWRlcHRoIDxkZXB0aD5dIC0tdXJsIDx1cmw+IC0tcGF0aCA8cGF0aD4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2xvbmUgb2YgJyVzJyBpbnRvIHN1Ym1vZHVsZSBwYXRoICclcycgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDM3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZXQgc3VibW9kdWxlIGRpcmVjdG9yeSBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ3MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHVwZGF0ZSBtb2RlICclcycgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB1cGRhdGUgbW9kZSAnJXMnIGNvbmZpZ3VyZWQgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlIHBhdGggJyVzJyBub3QgaW5pdGlhbGl6ZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1NzQKK21zZ2lkICJNYXliZSB5b3Ugd2FudCB0byB1c2UgJ3VwZGF0ZSAtLWluaXQnPyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYwNAorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwcGluZyB1bm1lcmdlZCBzdWJtb2R1bGUgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBpbmcgc3VibW9kdWxlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIGNsb25lICclcycuIFJldHJ5IHNjaGVkdWxlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTc4OAorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJyBhIHNlY29uZCB0aW1lLCBhYm9ydGluZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1MSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA5MworbXNnaWQgInBhdGggaW50byB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU0Cittc2dpZCAicGF0aCBpbnRvIHRoZSB3b3JraW5nIHRyZWUsIGFjcm9zcyBuZXN0ZWQgc3VibW9kdWxlIGJvdW5kYXJpZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTgKK21zZ2lkICJyZWJhc2UsIG1lcmdlLCBjaGVja291dCBvciBub25lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY0Cittc2dpZCAiQ3JlYXRlIGEgc2hhbGxvdyBjbG9uZSB0cnVuY2F0ZWQgdG8gdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgcmV2aXNpb25zIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY3Cittc2dpZCAicGFyYWxsZWwgam9icyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2OQorbXNnaWQgIndoZXRoZXIgdGhlIGluaXRpYWwgY2xvbmUgc2hvdWxkIGZvbGxvdyB0aGUgc2hhbGxvdyByZWNvbW1lbmRhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg3MAorbXNnaWQgImRvbid0IHByaW50IGNsb25pbmcgcHJvZ3Jlc3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NzcKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgdXBkYXRlX2Nsb25lIFstLXByZWZpeD08cGF0aD5dIFs8cGF0aD4uLi5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODkwCittc2dpZCAiYmFkIHZhbHVlIGZvciB1cGRhdGUgcGFyYW1ldGVyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTM4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTdWJtb2R1bGUgKCVzKSBicmFuY2ggY29uZmlndXJlZCB0byBpbmhlcml0IGJyYW5jaCBmcm9tIHN1cGVycHJvamVjdCwgYnV0ICIKKyJ0aGUgc3VwZXJwcm9qZWN0IGlzIG5vdCBvbiBhbnkgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDYxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZXQgYSByZXBvc2l0b3J5IGhhbmRsZSBmb3Igc3VibW9kdWxlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwOTQKK21zZ2lkICJyZWN1cnNlIGludG8gc3VibW9kdWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjEwMAorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBlbWJlZC1naXQtZGlyIFs8cGF0aD4uLi5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTU2Cittc2dpZCAiY2hlY2sgaWYgaXQgaXMgc2FmZSB0byB3cml0ZSB0byB0aGUgLmdpdG1vZHVsZXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE2MQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgbmFtZSBbdmFsdWVdIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTYyCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLWNoZWNrLXdyaXRlYWJsZSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLWNoZWNrLXdyaXRlYWJsZSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNzkgZ2l0LXN1Ym1vZHVsZS5zaDoxNjkKKyMsIHNoLWZvcm1hdAorbXNnaWQgInBsZWFzZSBtYWtlIHN1cmUgdGhhdCB0aGUgLmdpdG1vZHVsZXMgZmlsZSBpcyBpbiB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjI5IGdpdC5jOjQxMyBnaXQuYzo2NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZG9lc24ndCBzdXBwb3J0IC0tc3VwZXItcHJlZml4IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgc3VibW9kdWxlLS1oZWxwZXIgc3ViY29tbWFuZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N5bWJvbGljLXJlZi5jOjgKK21zZ2lkICJnaXQgc3ltYm9saWMtcmVmIFs8b3B0aW9ucz5dIDxuYW1lPiBbPHJlZj5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3ltYm9saWMtcmVmLmM6OQorbXNnaWQgImdpdCBzeW1ib2xpYy1yZWYgLWQgWy1xXSA8bmFtZT4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo0MAorbXNnaWQgInN1cHByZXNzIGVycm9yIG1lc3NhZ2UgZm9yIG5vbi1zeW1ib2xpYyAoZGV0YWNoZWQpIHJlZnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo0MQorbXNnaWQgImRlbGV0ZSBzeW1ib2xpYyByZWYiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo0MgorbXNnaWQgInNob3J0ZW4gcmVmIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N5bWJvbGljLXJlZi5jOjQzIGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2MworbXNnaWQgInJlYXNvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N5bWJvbGljLXJlZi5jOjQzIGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2MworbXNnaWQgInJlYXNvbiBvZiB0aGUgdXBkYXRlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjUKK21zZ2lkICIiCisiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA8bXNnPiB8IC1GIDxmaWxlPl0gPHRhZ25hbWU+ICIKKyJbPGhlYWQ+XSIKK21zZ3N0ciAiIgorImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8zrHOvc6xzrPOvc+Jz4HOuc+Dz4TOuc66z4wgzrrOu861zrnOtM6vPl0gWy1mXSBbLW0gPM68zq7Ovc+FzrzOsT4gfCAtRiAiCisiPM6xz4HPh861zq/Ovz5dIDzPjM69zr/OvM6xIM61z4TOuc66zq3PhM6xz4I+IFs8aGVhZD5dIgorCisjOiBidWlsdGluL3RhZy5jOjI2Cittc2dpZCAiZ2l0IHRhZyAtZCA8dGFnbmFtZT4uLi4iCittc2dzdHIgImdpdCB0YWcgLWQgPM+Mzr3Ov868zrEgzrXPhM65zrrOrc+EzrHPgj4uLi4iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjcKK21zZ2lkICIiCisiZ2l0IHRhZyAtbCBbLW5bPG51bT5dXSBbLS1jb250YWlucyA8Y29tbWl0Pl0gWy0tbm8tY29udGFpbnMgPGNvbW1pdD5dIFstLSIKKyJwb2ludHMtYXQgPG9iamVjdD5dXG4iCisiXHRcdFstLWZvcm1hdD08Zm9ybWF0Pl0gWy0tW25vLV1tZXJnZWQgWzxjb21taXQ+XV0gWzxwYXR0ZXJuPi4uLl0iCittc2dzdHIgIiIKKyJnaXQgdGFnIC1sIFstbls8zrHPgc65zrguPl1dIFstLWNvbnRhaW5zIDzPhc+Azr/Oss6/zrvOrj5dIFstLW5vLWNvbnRhaW5zIDzPhc+Azr/Oss6/zrvOrj5dIFstLSIKKyJwb2ludHMtYXQgPM6xzr3PhM65zrrOtc6vzrzOtc69zr8+XVxuIgorIlx0XHRbLS1mb3JtYXQ9PM68zr/Pgc+Gzq4+XSBbLS1bbm8tXW1lcmdlZCBbPM+Fz4DOv86yzr/Ou86uPl1dIFs8zrzOv8+Ezq/Oss6/Pi4uLl0iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjkKK21zZ2lkICJnaXQgdGFnIC12IFstLWZvcm1hdD08Zm9ybWF0Pl0gPHRhZ25hbWU+Li4uIgorbXNnc3RyICJnaXQgdGFnIC12IFstLWZvcm1hdD08zrzOv8+Bz4bOrj5dIDzPjM69zr/OvM6xIM61z4TOuc66zq3PhM6xz4I+Li4uIgorCisjOiBidWlsdGluL3RhZy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInRhZyAnJXMnIG5vdCBmb3VuZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCB0YWcgJyVzJyAod2FzICVzKVxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXcml0ZSBhIG1lc3NhZ2UgZm9yIHRhZzpcbiIKKyIgICVzXG4iCisiTGluZXMgc3RhcnRpbmcgd2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3RhZy5jOjEzNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV3JpdGUgYSBtZXNzYWdlIGZvciB0YWc6XG4iCisiICAlc1xuIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGtlcHQ7IHlvdSBtYXkgcmVtb3ZlIHRoZW0geW91cnNlbGYgaWYgeW91ICIKKyJ3YW50IHRvLlxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6MTkxCittc2dpZCAidW5hYmxlIHRvIHNpZ24gdGhlIHRhZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3RhZy5jOjE5MworbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0YWcgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3RhZy5jOjIxOAorbXNnaWQgImJhZCBvYmplY3QgdHlwZS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzoyNjcKK21zZ2lkICJubyB0YWcgbWVzc2FnZT8iCittc2dzdHIgIs60zrXOvSDPhc+AzqzPgc+HzrXOuSDOvM6uzr3Phc68zrEgzrXPhM65zrrOrc+EzrHPgjsiCisKKyM6IGJ1aWx0aW4vdGFnLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZSB0YWcgbWVzc2FnZSBoYXMgYmVlbiBsZWZ0IGluICVzXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzozODUKK21zZ2lkICJsaXN0IHRhZyBuYW1lcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3RhZy5jOjM4NworbXNnaWQgInByaW50IDxuPiBsaW5lcyBvZiBlYWNoIHRhZyBtZXNzYWdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6Mzg5Cittc2dpZCAiZGVsZXRlIHRhZ3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzozOTAKK21zZ2lkICJ2ZXJpZnkgdGFncyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3RhZy5jOjM5MgorbXNnaWQgIlRhZyBjcmVhdGlvbiBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6Mzk0Cittc2dpZCAiYW5ub3RhdGVkIHRhZywgbmVlZHMgYSBtZXNzYWdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6Mzk2Cittc2dpZCAidGFnIG1lc3NhZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzozOTgKK21zZ2lkICJmb3JjZSBlZGl0IG9mIHRhZyBtZXNzYWdlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6Mzk5Cittc2dpZCAiYW5ub3RhdGVkIGFuZCBHUEctc2lnbmVkIHRhZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3RhZy5jOjQwMworbXNnaWQgInVzZSBhbm90aGVyIGtleSB0byBzaWduIHRoZSB0YWciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzo0MDQKK21zZ2lkICJyZXBsYWNlIHRoZSB0YWcgaWYgZXhpc3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDA1IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2OQorbXNnaWQgImNyZWF0ZSBhIHJlZmxvZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3RhZy5jOjQwNworbXNnaWQgIlRhZyBsaXN0aW5nIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzo0MDgKK21zZ2lkICJzaG93IHRhZyBsaXN0IGluIGNvbHVtbnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzo0MDkgYnVpbHRpbi90YWcuYzo0MTEKK21zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBjb250YWluIHRoZSBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzo0MTAgYnVpbHRpbi90YWcuYzo0MTIKK21zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzo0MTMKK21zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBhcmUgbWVyZ2VkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDE0Cittc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzo0MTkKK21zZ2lkICJwcmludCBvbmx5IHRhZ3Mgb2YgdGhlIG9iamVjdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3RhZy5jOjQ2MworbXNnaWQgIi0tY29sdW1uIGFuZCAtbiBhcmUgaW5jb21wYXRpYmxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDg1Cittc2dpZCAiLW4gb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzo0ODcKK21zZ2lkICItLWNvbnRhaW5zIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDg5Cittc2dpZCAiLS1uby1jb250YWlucyBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3RhZy5jOjQ5MQorbXNnaWQgIi0tcG9pbnRzLWF0IG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDkzCittc2dpZCAiLS1tZXJnZWQgYW5kIC0tbm8tbWVyZ2VkIG9wdGlvbnMgYXJlIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzo1MDQKK21zZ2lkICJvbmx5IG9uZSAtRiBvciAtbSBvcHRpb24gaXMgYWxsb3dlZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzo1MjMKK21zZ2lkICJ0b28gbWFueSBwYXJhbXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzo1MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0YWcgbmFtZS4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzo1MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFnICclcycgYWxyZWFkeSBleGlzdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRlZCB0YWcgJyVzJyAod2FzICVzKVxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1MDAKK21zZ2lkICJVbnBhY2tpbmcgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBmaWxlICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA3CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkZWxldGUgZmlsZSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNCBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJUZXN0aW5nIG10aW1lIGluICclcycgIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTUzCittc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgYWRkaW5nIGEgbmV3IGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNjYKK21zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBhZGRpbmcgYSBuZXcgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTc5Cittc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBjaGFuZ2VzIGFmdGVyIHVwZGF0aW5nIGEgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE5MAorbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gY2hhbmdlcyBhZnRlciBhZGRpbmcgYSBmaWxlIGluc2lkZSBzdWJkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMDEKK21zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTQKK21zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMQorbXNnaWQgIiBPSyIKK21zZ3N0ciAiIE9LIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjU4OQorbXNnaWQgImdpdCB1cGRhdGUtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2MgorbXNnaWQgImNvbnRpbnVlIHJlZnJlc2ggZXZlbiB3aGVuIGluZGV4IG5lZWRzIHVwZGF0ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2NQorbXNnaWQgInJlZnJlc2g6IGlnbm9yZSBzdWJtb2R1bGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTY4Cittc2dpZCAiZG8gbm90IGlnbm9yZSBuZXcgZmlsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzAKK21zZ2lkICJsZXQgZmlsZXMgcmVwbGFjZSBkaXJlY3RvcmllcyBhbmQgdmljZS12ZXJzYSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3MgorbXNnaWQgIm5vdGljZSBmaWxlcyBtaXNzaW5nIGZyb20gd29ya3RyZWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzQKK21zZ2lkICJyZWZyZXNoIGV2ZW4gaWYgaW5kZXggY29udGFpbnMgdW5tZXJnZWQgZW50cmllcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3NworbXNnaWQgInJlZnJlc2ggc3RhdCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4MQorbXNnaWQgImxpa2UgLS1yZWZyZXNoLCBidXQgaWdub3JlIGFzc3VtZS11bmNoYW5nZWQgc2V0dGluZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NQorbXNnaWQgIjxtb2RlPiw8b2JqZWN0Piw8cGF0aD4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODYKK21zZ2lkICJhZGQgdGhlIHNwZWNpZmllZCBlbnRyeSB0byB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTUKK21zZ2lkICJtYXJrIGZpbGVzIGFzIFwibm90IGNoYW5naW5nXCIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTgKK21zZ2lkICJjbGVhciBhc3N1bWVkLXVuY2hhbmdlZCBiaXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAxCittc2dpZCAibWFyayBmaWxlcyBhcyBcImluZGV4LW9ubHlcIiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDQKK21zZ2lkICJjbGVhciBza2lwLXdvcmt0cmVlIGJpdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDcKK21zZ2lkICJhZGQgdG8gaW5kZXggb25seTsgZG8gbm90IGFkZCBjb250ZW50IHRvIG9iamVjdCBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDkKK21zZ2lkICJyZW1vdmUgbmFtZWQgcGF0aHMgZXZlbiBpZiBwcmVzZW50IGluIHdvcmt0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMQorbXNnaWQgIndpdGggLS1zdGRpbjogaW5wdXQgbGluZXMgYXJlIHRlcm1pbmF0ZWQgYnkgbnVsbCBieXRlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTMKK21zZ2lkICJyZWFkIGxpc3Qgb2YgcGF0aHMgdG8gYmUgdXBkYXRlZCBmcm9tIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNworbXNnaWQgImFkZCBlbnRyaWVzIGZyb20gc3RhbmRhcmQgaW5wdXQgdG8gdGhlIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyMQorbXNnaWQgInJlcG9wdWxhdGUgc3RhZ2VzICMyIGFuZCAjMyBmb3IgdGhlIGxpc3RlZCBwYXRocyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjUKK21zZ2lkICJvbmx5IHVwZGF0ZSBlbnRyaWVzIHRoYXQgZGlmZmVyIGZyb20gSEVBRCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjkKK21zZ2lkICJpZ25vcmUgZmlsZXMgbWlzc2luZyBmcm9tIHdvcmt0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzMgorbXNnaWQgInJlcG9ydCBhY3Rpb25zIHRvIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzQKK21zZ2lkICIoZm9yIHBvcmNlbGFpbnMpIGZvcmdldCBzYXZlZCB1bnJlc29sdmVkIGNvbmZsaWN0cyIKK21zZ3N0ciAiKM6zzrnOsSDOtc69z4TOv867zq3PgiBwb3JjZWxhaW4pIM6+zq3Ph869zrEgz4TOuc+CIM+Dz4nPg868zq3Ovc61z4IgzrzOtyDOtc+AzrnOu8+FzrzOrc69zrXPgiDPg8+FzrPOus+Bzr/Pjc+DzrXOuc+CIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzgKK21zZ2lkICJ3cml0ZSBpbmRleCBpbiB0aGlzIGZvcm1hdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDAKK21zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBzcGxpdCBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDIKK21zZ2lkICJlbmFibGUvZGlzYWJsZSB1bnRyYWNrZWQgY2FjaGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ0Cittc2dpZCAidGVzdCBpZiB0aGUgZmlsZXN5c3RlbSBzdXBwb3J0cyB1bnRyYWNrZWQgY2FjaGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ2Cittc2dpZCAiZW5hYmxlIHVudHJhY2tlZCBjYWNoZSB3aXRob3V0IHRlc3RpbmcgdGhlIGZpbGVzeXN0ZW0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ4Cittc2dpZCAid3JpdGUgb3V0IHRoZSBpbmRleCBldmVuIGlmIGlzIG5vdCBmbGFnZ2VkIGFzIGNoYW5nZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDUwCittc2dpZCAiZW5hYmxlIG9yIGRpc2FibGUgZmlsZSBzeXN0ZW0gbW9uaXRvciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTIKK21zZ2lkICJtYXJrIGZpbGVzIGFzIGZzbW9uaXRvciB2YWxpZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTUKK21zZ2lkICJjbGVhciBmc21vbml0b3IgdmFsaWQgYml0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE1NgorbXNnaWQgIiIKKyJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgorImVuYWJsZSBzcGxpdCBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNjUKK21zZ2lkICIiCisiY29yZS5zcGxpdEluZGV4IGlzIHNldCB0byB0cnVlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgorImRpc2FibGUgc3BsaXQgaW5kZXgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTc2Cittc2dpZCAiIgorImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCisidG8gZGlzYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4MAorbXNnaWQgIlVudHJhY2tlZCBjYWNoZSBkaXNhYmxlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExODgKK21zZ2lkICIiCisiY29yZS51bnRyYWNrZWRDYWNoZSBpcyBzZXQgdG8gZmFsc2U7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCisidG8gZW5hYmxlIHRoZSB1bnRyYWNrZWQgY2FjaGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIlVudHJhY2tlZCBjYWNoZSBlbmFibGVkIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwMAorbXNnaWQgImNvcmUuZnNtb25pdG9yIGlzIHVuc2V0OyBzZXQgaXQgaWYgeW91IHJlYWxseSB3YW50IHRvIGVuYWJsZSBmc21vbml0b3IiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA0Cittc2dpZCAiZnNtb25pdG9yIGVuYWJsZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA3Cittc2dpZCAiIgorImNvcmUuZnNtb25pdG9yIGlzIHNldDsgcmVtb3ZlIGl0IGlmIHlvdSByZWFsbHkgd2FudCB0byBkaXNhYmxlIGZzbW9uaXRvciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMTEKK21zZ2lkICJmc21vbml0b3IgZGlzYWJsZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtcmVmLmM6MTAKK21zZ2lkICJnaXQgdXBkYXRlLXJlZiBbPG9wdGlvbnM+XSAtZCA8cmVmbmFtZT4gWzxvbGQtdmFsPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtcmVmLmM6MTEKK21zZ2lkICJnaXQgdXBkYXRlLXJlZiBbPG9wdGlvbnM+XSAgICA8cmVmbmFtZT4gPG5ldy12YWw+IFs8b2xkLXZhbD5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjEyCittc2dpZCAiZ2l0IHVwZGF0ZS1yZWYgWzxvcHRpb25zPl0gLS1zdGRpbiBbLXpdIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2NAorbXNnaWQgImRlbGV0ZSB0aGUgcmVmZXJlbmNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2NgorbXNnaWQgInVwZGF0ZSA8cmVmbmFtZT4gbm90IHRoZSBvbmUgaXQgcG9pbnRzIHRvIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2NworbXNnaWQgInN0ZGluIGhhcyBOVUwtdGVybWluYXRlZCBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY4Cittc2dpZCAicmVhZCB1cGRhdGVzIGZyb20gc3RkaW4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGRhdGUtc2VydmVyLWluZm8uYzo3Cittc2dpZCAiZ2l0IHVwZGF0ZS1zZXJ2ZXItaW5mbyBbLS1mb3JjZV0iCittc2dzdHIgImdpdCB1cGRhdGUtc2VydmVyLWluZm8gWy0tZm9yY2VdIgorCisjOiBidWlsdGluL3VwZGF0ZS1zZXJ2ZXItaW5mby5jOjE1Cittc2dpZCAidXBkYXRlIHRoZSBpbmZvIGZpbGVzIGZyb20gc2NyYXRjaCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MTEKK21zZ2lkICJnaXQgdXBsb2FkLXBhY2sgWzxvcHRpb25zPl0gPGRpcj4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi91cGxvYWQtcGFjay5jOjI1Cittc2dpZCAiZXhpdCBpbW1lZGlhdGVseSBhZnRlciBpbml0aWFsIHJlZiBhZHZlcnRpc2VtZW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyNworbXNnaWQgImRvIG5vdCB0cnkgPGRpcmVjdG9yeT4vLmdpdC8gaWYgPGRpcmVjdG9yeT4gaXMgbm8gR2l0IGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjkKK21zZ2lkICJpbnRlcnJ1cHQgdHJhbnNmZXIgYWZ0ZXIgPG4+IHNlY29uZHMgb2YgaW5hY3Rpdml0eSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzoyMAorbXNnaWQgImdpdCB2ZXJpZnktY29tbWl0IFstdiB8IC0tdmVyYm9zZV0gPGNvbW1pdD4uLi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NzYKK21zZ2lkICJwcmludCBjb21taXQgY29udGVudHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NzcgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzgKK21zZ2lkICJwcmludCByYXcgZ3BnIHN0YXR1cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi92ZXJpZnktcGFjay5jOjU1Cittc2dpZCAiZ2l0IHZlcmlmeS1wYWNrIFstdiB8IC0tdmVyYm9zZV0gWy1zIHwgLS1zdGF0LW9ubHldIDxwYWNrPi4uLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3ZlcmlmeS1wYWNrLmM6NjUKK21zZ2lkICJ2ZXJib3NlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdmVyaWZ5LXBhY2suYzo2NworbXNnaWQgInNob3cgc3RhdGlzdGljcyBvbmx5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjE5Cittc2dpZCAiZ2l0IHZlcmlmeS10YWcgWy12IHwgLS12ZXJib3NlXSBbLS1mb3JtYXQ9PGZvcm1hdD5dIDx0YWc+Li4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM3Cittc2dpZCAicHJpbnQgdGFnIGNvbnRlbnRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxOAorbXNnaWQgImdpdCB3b3JrdHJlZSBhZGQgWzxvcHRpb25zPl0gPHBhdGg+IFs8Y29tbWl0LWlzaD5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxOQorbXNnaWQgImdpdCB3b3JrdHJlZSBsaXN0IFs8b3B0aW9ucz5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMAorbXNnaWQgImdpdCB3b3JrdHJlZSBsb2NrIFs8b3B0aW9ucz5dIDxwYXRoPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjEKK21zZ2lkICJnaXQgd29ya3RyZWUgbW92ZSA8d29ya3RyZWU+IDxuZXctcGF0aD4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjIyCittc2dpZCAiZ2l0IHdvcmt0cmVlIHBydW5lIFs8b3B0aW9ucz5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMworbXNnaWQgImdpdCB3b3JrdHJlZSByZW1vdmUgWzxvcHRpb25zPl0gPHdvcmt0cmVlPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjQKK21zZ2lkICJnaXQgd29ya3RyZWUgdW5sb2NrIDxwYXRoPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjEgYnVpbHRpbi93b3JrdHJlZS5jOjg4OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZGVsZXRlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nIHdvcmt0cmVlcy8lczogbm90IGEgdmFsaWQgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyB3b3JrdHJlZXMvJXM6IGdpdGRpciBmaWxlIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MSBidWlsdGluL3dvcmt0cmVlLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nIHdvcmt0cmVlcy8lczogdW5hYmxlIHRvIHJlYWQgZ2l0ZGlyIGZpbGUgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJSZW1vdmluZyB3b3JrdHJlZXMvJXM6IHNob3J0IHJlYWQgKGV4cGVjdGVkICU8UFJJdU1BWD4gYnl0ZXMsIHJlYWQgIgorIiU8UFJJdU1BWD4pIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiBpbnZhbGlkIGdpdGRpciBmaWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiBnaXRkaXIgZmlsZSBwb2ludHMgdG8gbm9uLWV4aXN0ZW50IGxvY2F0aW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxNjYKK21zZ2lkICJyZXBvcnQgcHJ1bmVkIHdvcmtpbmcgdHJlZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjE2OAorbXNnaWQgImV4cGlyZSB3b3JraW5nIHRyZWVzIG9sZGVyIHRoYW4gPHRpbWU+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBhbHJlYWR5IGV4aXN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZS1hZGQgd29ya3RyZWUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyInJXMnIGlzIGEgbWlzc2luZyBidXQgbG9ja2VkIHdvcmt0cmVlO1xuIgorInVzZSAnYWRkIC1mIC1mJyB0byBvdmVycmlkZSwgb3IgJ3VubG9jaycgYW5kICdwcnVuZScgb3IgJ3JlbW92ZScgdG8gY2xlYXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJyVzJyBpcyBhIG1pc3NpbmcgYnV0IGFscmVhZHkgcmVnaXN0ZXJlZCB3b3JrdHJlZTtcbiIKKyJ1c2UgJ2FkZCAtZicgdG8gb3ZlcnJpZGUsIG9yICdwcnVuZScgb3IgJ3JlbW92ZScgdG8gY2xlYXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBvZiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MjkgYnVpbHRpbi93b3JrdHJlZS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKG5ldyBicmFuY2ggJyVzJykiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKHJlc2V0dGluZyBicmFuY2ggJyVzJzsgd2FzIGF0ICVzKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDQwCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAoY2hlY2tpbmcgb3V0ICclcycpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChkZXRhY2hlZCBIRUFEICVzKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDg3Cittc2dpZCAiY2hlY2tvdXQgPGJyYW5jaD4gZXZlbiBpZiBhbHJlYWR5IGNoZWNrZWQgb3V0IGluIG90aGVyIHdvcmt0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTAKK21zZ2lkICJjcmVhdGUgYSBuZXcgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTIKK21zZ2lkICJjcmVhdGUgb3IgcmVzZXQgYSBicmFuY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NAorbXNnaWQgInBvcHVsYXRlIHRoZSBuZXcgd29ya2luZyB0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTUKK21zZ2lkICJrZWVwIHRoZSBuZXcgd29ya2luZyB0cmVlIGxvY2tlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk4Cittc2dpZCAic2V0IHVwIHRyYWNraW5nIG1vZGUgKHNlZSBnaXQtYnJhbmNoKDEpKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTAxCittc2dpZCAidHJ5IHRvIG1hdGNoIHRoZSBuZXcgYnJhbmNoIG5hbWUgd2l0aCBhIHJlbW90ZS10cmFja2luZyBicmFuY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwOQorbXNnaWQgIi1iLCAtQiwgYW5kIC0tZGV0YWNoIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjU3MAorbXNnaWQgIi0tW25vLV10cmFjayBjYW4gb25seSBiZSB1c2VkIGlmIGEgbmV3IGJyYW5jaCBpcyBjcmVhdGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NzAKK21zZ2lkICJyZWFzb24gZm9yIGxvY2tpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4MiBidWlsdGluL3dvcmt0cmVlLmM6NzE1IGJ1aWx0aW4vd29ya3RyZWUuYzo3ODkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB3b3JraW5nIHRyZWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4NCBidWlsdGluL3dvcmt0cmVlLmM6NzE3Cittc2dpZCAiVGhlIG1haW4gd29ya2luZyB0cmVlIGNhbm5vdCBiZSBsb2NrZWQgb3IgdW5sb2NrZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4OQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIGFscmVhZHkgbG9ja2VkLCByZWFzb246ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBhbHJlYWR5IGxvY2tlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGxvY2tlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzYwCittc2dpZCAid29ya2luZyB0cmVlcyBjb250YWluaW5nIHN1Ym1vZHVsZXMgY2Fubm90IGJlIG1vdmVkIG9yIHJlbW92ZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc2OAorbXNnaWQgImZvcmNlIG1vdmUgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5MSBidWlsdGluL3dvcmt0cmVlLmM6OTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgYSBtYWluIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Nzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaWd1cmUgb3V0IGRlc3RpbmF0aW9uIG5hbWUgZnJvbSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFyZ2V0ICclcycgYWxyZWFkeSBleGlzdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY2Fubm90IG1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlLCBsb2NrIHJlYXNvbjogJXNcbiIKKyJ1c2UgJ21vdmUgLWYgLWYnIHRvIG92ZXJyaWRlIG9yIHVubG9jayBmaXJzdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODEyCittc2dpZCAiIgorImNhbm5vdCBtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZTtcbiIKKyJ1c2UgJ21vdmUgLWYgLWYnIHRvIG92ZXJyaWRlIG9yIHVubG9jayBmaXJzdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODE1CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbGlkYXRpb24gZmFpbGVkLCBjYW5ub3QgbW92ZSB3b3JraW5nIHRyZWU6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG1vdmUgJyVzJyB0byAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJ1biAnZ2l0IHN0YXR1cycgb24gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgZGlydHksIHVzZSAtLWZvcmNlIHRvIGRlbGV0ZSBpdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODc3CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBydW4gJ2dpdCBzdGF0dXMnIG9uICclcycsIGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwMAorbXNnaWQgImZvcmNlIHJlbW92YWwgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlc1xuIgorInVzZSAncmVtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyNQorbXNnaWQgIiIKKyJjYW5ub3QgcmVtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZTtcbiIKKyJ1c2UgJ3JlbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsaWRhdGlvbiBmYWlsZWQsIGNhbm5vdCByZW1vdmUgd29ya2luZyB0cmVlOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzoxNQorbXNnaWQgImdpdCB3cml0ZS10cmVlIFstLW1pc3Npbmctb2tdIFstLXByZWZpeD08cHJlZml4Pi9dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI4Cittc2dpZCAiPHByZWZpeD4vIgorbXNnc3RyICI8z4DPgc+MzrjOtc68zrE+LyIKKworIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjkKK21zZ2lkICJ3cml0ZSB0cmVlIG9iamVjdCBmb3IgYSBzdWJkaXJlY3RvcnkgPHByZWZpeD4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MzEKK21zZ2lkICJvbmx5IHVzZWZ1bCBmb3IgZGVidWdnaW5nIgorbXNnc3RyICIiCisKKyM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjIyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIHBlcm1pc3Npb25zIG9uIHlvdXIgc29ja2V0IGRpcmVjdG9yeSBhcmUgdG9vIGxvb3NlOyBvdGhlclxuIgorInVzZXJzIG1heSBiZSBhYmxlIHRvIHJlYWQgeW91ciBjYWNoZWQgY3JlZGVudGlhbHMuIENvbnNpZGVyIHJ1bm5pbmc6XG4iCisiXG4iCisiXHRjaG1vZCAwNzAwICVzIgorbXNnc3RyICIiCisKKyM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjI3MgorbXNnaWQgInByaW50IGRlYnVnZ2luZyBtZXNzYWdlcyB0byBzdGRlcnIiCittc2dzdHIgIiIKKworIzogdC9oZWxwZXIvdGVzdC1yZWFjaC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgJXMgaXMgbm90IG1hcmtlZCByZWFjaGFibGUiCittc2dzdHIgIs63IM+Fz4DOv86yzr/Ou86uICVzIM60zrXOvSDOtc6vzr3Osc65IM+DzrfOvM61zrnPic68zq3Ovc63IM+Jz4Igz4DPgc6/z4POss6sz4POuc68zrciCisKKyM6IHQvaGVscGVyL3Rlc3QtcmVhY2guYzoxNjIKK21zZ2lkICJ0b28gbWFueSBjb21taXRzIG1hcmtlZCByZWFjaGFibGUiCittc2dzdHIgIiIKKworIzogZ2l0LmM6MjcKK21zZ2lkICIiCisiZ2l0IFstLXZlcnNpb25dIFstLWhlbHBdIFstQyA8cGF0aD5dIFstYyA8bmFtZT49PHZhbHVlPl1cbiIKKyIgICAgICAgICAgIFstLWV4ZWMtcGF0aFs9PHBhdGg+XV0gWy0taHRtbC1wYXRoXSBbLS1tYW4tcGF0aF0gWy0taW5mby1wYXRoXVxuIgorIiAgICAgICAgICAgWy1wIHwgLS1wYWdpbmF0ZSB8IC1QIHwgLS1uby1wYWdlcl0gWy0tbm8tcmVwbGFjZS1vYmplY3RzXSBbLS0iCisiYmFyZV1cbiIKKyIgICAgICAgICAgIFstLWdpdC1kaXI9PHBhdGg+XSBbLS13b3JrLXRyZWU9PHBhdGg+XSBbLS1uYW1lc3BhY2U9PG5hbWU+XVxuIgorIiAgICAgICAgICAgPGNvbW1hbmQ+IFs8YXJncz5dIgorbXNnc3RyICIiCisiZ2l0IFstLXZlcnNpb25dIFstLWhlbHBdIFstQyA8zrTOuc6xzrTPgc6/zrzOrj5dIFstYyA8z4zOvc6/zrzOsT49PM+EzrnOvM6uPl1cbiIKKyIgICAgICAgICAgIFstLWV4ZWMtcGF0aFs9PM60zrnOsc60z4HOv868zq4+XV0gWy0taHRtbC1wYXRoXSBbLS1tYW4tcGF0aF0gWy0taW5mby0iCisicGF0aF1cbiIKKyIgICAgICAgICAgIFstcCB8IC0tcGFnaW5hdGUgfCAtUCB8IC0tbm8tcGFnZXJdIFstLW5vLXJlcGxhY2Utb2JqZWN0c10gWy0tIgorImJhcmVdXG4iCisiICAgICAgICAgICBbLS1naXQtZGlyPTzOtM65zrHOtM+Bzr/OvM6uPl0gWy0td29yay10cmVlPTzOtM65zrHOtM+Bzr/OvM6uPl0gWy0tIgorIm5hbWVzcGFjZT08z4zOvc6/zrzOsT5dXG4iCisiICAgICAgICAgICA8zrXOvc+Ezr/Ou86uPiBbPM6/z4HOr8+DzrzOsc+EzrE+XSIKKworIzogZ2l0LmM6MzQKK21zZ2lkICIiCisiJ2dpdCBoZWxwIC1hJyBhbmQgJ2dpdCBoZWxwIC1nJyBsaXN0IGF2YWlsYWJsZSBzdWJjb21tYW5kcyBhbmQgc29tZVxuIgorImNvbmNlcHQgZ3VpZGVzLiBTZWUgJ2dpdCBoZWxwIDxjb21tYW5kPicgb3IgJ2dpdCBoZWxwIDxjb25jZXB0PidcbiIKKyJ0byByZWFkIGFib3V0IGEgc3BlY2lmaWMgc3ViY29tbWFuZCBvciBjb25jZXB0LiIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtLWdpdC1kaXJcbiIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gbmFtZXNwYWNlIGdpdmVuIGZvciAtLW5hbWVzcGFjZVxuIgorbXNnc3RyICIiCisKKyM6IGdpdC5jOjIwMgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBkaXJlY3RvcnkgZ2l2ZW4gZm9yIC0td29yay10cmVlXG4iCittc2dzdHIgIiIKKworIzogZ2l0LmM6MjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHByZWZpeCBnaXZlbiBmb3IgLS1zdXBlci1wcmVmaXhcbiIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzoyMzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLWMgZXhwZWN0cyBhIGNvbmZpZ3VyYXRpb24gc3RyaW5nXG4iCittc2dzdHIgIiIKKworIzogZ2l0LmM6Mjc2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLUNcbiIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb246ICVzXG4iCittc2dzdHIgIiIKKworIzogZ2l0LmM6MzQyCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIGV4cGFuZGluZyBhbGlhcyAnJXMnOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGdpdC5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWxpYXMgJyVzJyBjaGFuZ2VzIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiIKKyJZb3UgY2FuIHVzZSAnIWdpdCcgaW4gdGhlIGFsaWFzIHRvIGRvIHRoaXMiCittc2dzdHIgIiIKKworIzogZ2l0LmM6MzU5CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGFsaWFzIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzozNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVjdXJzaXZlIGFsaWFzOiAlcyIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzo0MzcKK21zZ2lkICJ3cml0ZSBmYWlsdXJlIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzo0MzkKK21zZ2lkICJ1bmtub3duIHdyaXRlIGZhaWx1cmUgb24gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGdpdC5jOjQ0MQorbXNnaWQgImNsb3NlIGZhaWxlZCBvbiBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgIiIKKworIzogZ2l0LmM6NzIwCisjLCBjLWZvcm1hdAorbXNnaWQgImFsaWFzIGxvb3AgZGV0ZWN0ZWQ6IGV4cGFuc2lvbiBvZiAnJXMnIGRvZXMgbm90IHRlcm1pbmF0ZTolcyIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzo3NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGhhbmRsZSAlcyBhcyBhIGJ1aWx0aW4iCittc2dzdHIgIiIKKworIzogZ2l0LmM6NzgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1c2FnZTogJXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIs+Hz4HOrs+Dzrc6ICVzXG4iCisiXG4iCisKKyM6IGdpdC5jOjgwMworIywgYy1mb3JtYXQKK21zZ2lkICJleHBhbnNpb24gb2YgYWxpYXMgJyVzJyBmYWlsZWQ7ICclcycgaXMgbm90IGEgZ2l0IGNvbW1hbmRcbiIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzo4MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJ1biBjb21tYW5kICclcyc6ICVzXG4iCittc2dzdHIgIiIKKworIzogaHR0cC5jOjM3OAorIywgYy1mb3JtYXQKK21zZ2lkICJuZWdhdGl2ZSB2YWx1ZSBmb3IgaHR0cC5wb3N0YnVmZmVyOyBkZWZhdWx0aW5nIHRvICVkIgorbXNnc3RyICIiCisKKyM6IGh0dHAuYzozOTkKK21zZ2lkICJEZWxlZ2F0aW9uIGNvbnRyb2wgaXMgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjIyLjAiCittc2dzdHIgIiIKKworIzogaHR0cC5jOjQwOAorbXNnaWQgIlB1YmxpYyBrZXkgcGlubmluZyBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuNDQuMCIKK21zZ3N0ciAiIgorCisjOiBodHRwLmM6ODc2Cittc2dpZCAiQ1VSTFNTTE9QVF9OT19SRVZPS0Ugbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjQ0LjAiCittc2dzdHIgIiIKKworIzogaHR0cC5jOjk0OQorbXNnaWQgIlByb3RvY29sIHJlc3RyaWN0aW9ucyBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuMTkuNCIKK21zZ3N0ciAiIgorCisjOiBodHRwLmM6MTA4NQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnN1cHBvcnRlZCBTU0wgYmFja2VuZCAnJXMnLiBTdXBwb3J0ZWQgU1NMIGJhY2tlbmRzOiIKK21zZ3N0ciAiIgorCisjOiBodHRwLmM6MTA5MgorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgc2V0IFNTTCBiYWNrZW5kIHRvICclcyc6IGNVUkwgd2FzIGJ1aWx0IHdpdGhvdXQgU1NMIGJhY2tlbmRzIgorbXNnc3RyICIiCisKKyM6IGh0dHAuYzoxMDk2CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBzZXQgU1NMIGJhY2tlbmQgdG8gJyVzJzogYWxyZWFkeSBzZXQiCittc2dzdHIgIiIKKworIzogaHR0cC5jOjE5NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byB1cGRhdGUgdXJsIGJhc2UgZnJvbSByZWRpcmVjdGlvbjpcbiIKKyIgIGFza2VkIGZvcjogJXNcbiIKKyIgICByZWRpcmVjdDogJXMiCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVkaXJlY3RpbmcgdG8gJXMiCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy5oOjE1NAorbXNnaWQgImV4cGlyeS1kYXRlIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuaDoxNjkKK21zZ2lkICJuby1vcCAoYmFja3dhcmQgY29tcGF0aWJpbGl0eSkiCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy5oOjI1OQorbXNnaWQgImJlIG1vcmUgdmVyYm9zZSIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MjYxCittc2dpZCAiYmUgbW9yZSBxdWlldCIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MjY3Cittc2dpZCAidXNlIDxuPiBkaWdpdHMgdG8gZGlzcGxheSBTSEEtMXMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6NTAKK21zZ2lkICJBZGQgZmlsZSBjb250ZW50cyB0byB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6NTEKK21zZ2lkICJBcHBseSBhIHNlcmllcyBvZiBwYXRjaGVzIGZyb20gYSBtYWlsYm94IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjUyCittc2dpZCAiQW5ub3RhdGUgZmlsZSBsaW5lcyB3aXRoIGNvbW1pdCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo1MworbXNnaWQgIkFwcGx5IGEgcGF0Y2ggdG8gZmlsZXMgYW5kL29yIHRvIHRoZSBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo1NAorbXNnaWQgIkltcG9ydCBhIEdOVSBBcmNoIHJlcG9zaXRvcnkgaW50byBHaXQiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6NTUKK21zZ2lkICJDcmVhdGUgYW4gYXJjaGl2ZSBvZiBmaWxlcyBmcm9tIGEgbmFtZWQgdHJlZSIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo1NgorbXNnaWQgIlVzZSBiaW5hcnkgc2VhcmNoIHRvIGZpbmQgdGhlIGNvbW1pdCB0aGF0IGludHJvZHVjZWQgYSBidWciCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6NTcKK21zZ2lkICJTaG93IHdoYXQgcmV2aXNpb24gYW5kIGF1dGhvciBsYXN0IG1vZGlmaWVkIGVhY2ggbGluZSBvZiBhIGZpbGUiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6NTgKK21zZ2lkICJMaXN0LCBjcmVhdGUsIG9yIGRlbGV0ZSBicmFuY2hlcyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo1OQorbXNnaWQgIk1vdmUgb2JqZWN0cyBhbmQgcmVmcyBieSBhcmNoaXZlIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjYwCittc2dpZCAiUHJvdmlkZSBjb250ZW50IG9yIHR5cGUgYW5kIHNpemUgaW5mb3JtYXRpb24gZm9yIHJlcG9zaXRvcnkgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo2MQorbXNnaWQgIkRpc3BsYXkgZ2l0YXR0cmlidXRlcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo2MgorbXNnaWQgIkRlYnVnIGdpdGlnbm9yZSAvIGV4Y2x1ZGUgZmlsZXMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6NjMKK21zZ2lkICJTaG93IGNhbm9uaWNhbCBuYW1lcyBhbmQgZW1haWwgYWRkcmVzc2VzIG9mIGNvbnRhY3RzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjY0Cittc2dpZCAiU3dpdGNoIGJyYW5jaGVzIG9yIHJlc3RvcmUgd29ya2luZyB0cmVlIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjY1Cittc2dpZCAiQ29weSBmaWxlcyBmcm9tIHRoZSBpbmRleCB0byB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjY2Cittc2dpZCAiRW5zdXJlcyB0aGF0IGEgcmVmZXJlbmNlIG5hbWUgaXMgd2VsbCBmb3JtZWQiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6NjcKK21zZ2lkICJGaW5kIGNvbW1pdHMgeWV0IHRvIGJlIGFwcGxpZWQgdG8gdXBzdHJlYW0iCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6NjgKK21zZ2lkICJBcHBseSB0aGUgY2hhbmdlcyBpbnRyb2R1Y2VkIGJ5IHNvbWUgZXhpc3RpbmcgY29tbWl0cyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo2OQorbXNnaWQgIkdyYXBoaWNhbCBhbHRlcm5hdGl2ZSB0byBnaXQtY29tbWl0IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjcwCittc2dpZCAiUmVtb3ZlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHRoZSB3b3JraW5nIHRyZWUiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6NzEKK21zZ2lkICJDbG9uZSBhIHJlcG9zaXRvcnkgaW50byBhIG5ldyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6NzIKK21zZ2lkICJEaXNwbGF5IGRhdGEgaW4gY29sdW1ucyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo3MworbXNnaWQgIlJlY29yZCBjaGFuZ2VzIHRvIHRoZSByZXBvc2l0b3J5IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjc0Cittc2dpZCAiV3JpdGUgYW5kIHZlcmlmeSBHaXQgY29tbWl0LWdyYXBoIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjc1Cittc2dpZCAiQ3JlYXRlIGEgbmV3IGNvbW1pdCBvYmplY3QiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6NzYKK21zZ2lkICJHZXQgYW5kIHNldCByZXBvc2l0b3J5IG9yIGdsb2JhbCBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjc3Cittc2dpZCAiQ291bnQgdW5wYWNrZWQgbnVtYmVyIG9mIG9iamVjdHMgYW5kIHRoZWlyIGRpc2sgY29uc3VtcHRpb24iCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6NzgKK21zZ2lkICJSZXRyaWV2ZSBhbmQgc3RvcmUgdXNlciBjcmVkZW50aWFscyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo3OQorbXNnaWQgIkhlbHBlciB0byB0ZW1wb3JhcmlseSBzdG9yZSBwYXNzd29yZHMgaW4gbWVtb3J5IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjgwCittc2dpZCAiSGVscGVyIHRvIHN0b3JlIGNyZWRlbnRpYWxzIG9uIGRpc2siCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6ODEKK21zZ2lkICJFeHBvcnQgYSBzaW5nbGUgY29tbWl0IHRvIGEgQ1ZTIGNoZWNrb3V0IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjgyCittc2dpZCAiU2FsdmFnZSB5b3VyIGRhdGEgb3V0IG9mIGFub3RoZXIgU0NNIHBlb3BsZSBsb3ZlIHRvIGhhdGUiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6ODMKK21zZ2lkICJBIENWUyBzZXJ2ZXIgZW11bGF0b3IgZm9yIEdpdCIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo4NAorbXNnaWQgIkEgcmVhbGx5IHNpbXBsZSBzZXJ2ZXIgZm9yIEdpdCByZXBvc2l0b3JpZXMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6ODUKK21zZ2lkICJHaXZlIGFuIG9iamVjdCBhIGh1bWFuIHJlYWRhYmxlIG5hbWUgYmFzZWQgb24gYW4gYXZhaWxhYmxlIHJlZiIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo4NgorbXNnaWQgIlNob3cgY2hhbmdlcyBiZXR3ZWVuIGNvbW1pdHMsIGNvbW1pdCBhbmQgd29ya2luZyB0cmVlLCBldGMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6ODcKK21zZ2lkICJDb21wYXJlcyBmaWxlcyBpbiB0aGUgd29ya2luZyB0cmVlIGFuZCB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6ODgKK21zZ2lkICJDb21wYXJlIGEgdHJlZSB0byB0aGUgd29ya2luZyB0cmVlIG9yIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjg5Cittc2dpZCAiQ29tcGFyZXMgdGhlIGNvbnRlbnQgYW5kIG1vZGUgb2YgYmxvYnMgZm91bmQgdmlhIHR3byB0cmVlIG9iamVjdHMiCittc2dzdHIgIiIKKyLOo8+FzrPOus+Bzq/Ovc61zrkgz4TOvyDPgM61z4HOuc61z4fPjM68zrXOvc6/IM66zrHOuSDPhM63IM67zrXOuc+Ezr/Phc+BzrPOr86xIM+Ez4nOvSBibG9iIM+Azr/PhSDOss+Bzq3OuM63zrrOsc69IM68zq3Pg8+JIM60z43OvyAiCisizrHOvc+EzrnOus61zrnOvM6tzr3Pic69IM60zq3Ovc+Ez4HPic69IgorCisjOiBjb21tYW5kLWxpc3QuaDo5MAorbXNnaWQgIlNob3cgY2hhbmdlcyB1c2luZyBjb21tb24gZGlmZiB0b29scyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo5MQorbXNnaWQgIkdpdCBkYXRhIGV4cG9ydGVyIgorbXNnc3RyICLOlc6+zrHOs8+JzrPOrc6xz4IgzrTOtc60zr/OvM6tzr3Pic69IEdpdCIKKworIzogY29tbWFuZC1saXN0Lmg6OTIKK21zZ2lkICJCYWNrZW5kIGZvciBmYXN0IEdpdCBkYXRhIGltcG9ydGVycyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo5MworbXNnaWQgIkRvd25sb2FkIG9iamVjdHMgYW5kIHJlZnMgZnJvbSBhbm90aGVyIHJlcG9zaXRvcnkiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6OTQKK21zZ2lkICJSZWNlaXZlIG1pc3Npbmcgb2JqZWN0cyBmcm9tIGFub3RoZXIgcmVwb3NpdG9yeSIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDo5NQorbXNnaWQgIlJld3JpdGUgYnJhbmNoZXMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6OTYKK21zZ2lkICJQcm9kdWNlIGEgbWVyZ2UgY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6OTcKK21zZ2lkICJPdXRwdXQgaW5mb3JtYXRpb24gb24gZWFjaCByZWYiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6OTgKK21zZ2lkICJQcmVwYXJlIHBhdGNoZXMgZm9yIGUtbWFpbCBzdWJtaXNzaW9uIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjk5Cittc2dpZCAiVmVyaWZpZXMgdGhlIGNvbm5lY3Rpdml0eSBhbmQgdmFsaWRpdHkgb2YgdGhlIG9iamVjdHMgaW4gdGhlIGRhdGFiYXNlIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEwMAorbXNnaWQgIkNsZWFudXAgdW5uZWNlc3NhcnkgZmlsZXMgYW5kIG9wdGltaXplIHRoZSBsb2NhbCByZXBvc2l0b3J5IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEwMQorbXNnaWQgIkV4dHJhY3QgY29tbWl0IElEIGZyb20gYW4gYXJjaGl2ZSBjcmVhdGVkIHVzaW5nIGdpdC1hcmNoaXZlIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEwMgorbXNnaWQgIlByaW50IGxpbmVzIG1hdGNoaW5nIGEgcGF0dGVybiIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMDMKK21zZ2lkICJBIHBvcnRhYmxlIGdyYXBoaWNhbCBpbnRlcmZhY2UgdG8gR2l0IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEwNAorbXNnaWQgIkNvbXB1dGUgb2JqZWN0IElEIGFuZCBvcHRpb25hbGx5IGNyZWF0ZXMgYSBibG9iIGZyb20gYSBmaWxlIgorbXNnc3RyICIiCisizqXPgM6/zrvOv86zzrnPg868z4zPgiDOsc69zrHOs869z4nPgc65z4PPhM65zrrOv8+NIM6xzr3PhM65zrrOtc65zrzOrc69zr/PhSDOus6xzrkgz4DPgc6/zrHOuc+BzrXPhM65zrrOrCDOtM63zrzOuc6/z4XPgc6zzq/OsSBibG9iIM6xz4DPjCAiCisizq3Ovc6xIM6xz4HPh861zq/OvyIKKworIzogY29tbWFuZC1saXN0Lmg6MTA1Cittc2dpZCAiRGlzcGxheSBoZWxwIGluZm9ybWF0aW9uIGFib3V0IEdpdCIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMDYKK21zZ2lkICJTZXJ2ZXIgc2lkZSBpbXBsZW1lbnRhdGlvbiBvZiBHaXQgb3ZlciBIVFRQIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEwNworbXNnaWQgIkRvd25sb2FkIGZyb20gYSByZW1vdGUgR2l0IHJlcG9zaXRvcnkgdmlhIEhUVFAiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTA4Cittc2dpZCAiUHVzaCBvYmplY3RzIG92ZXIgSFRUUC9EQVYgdG8gYW5vdGhlciByZXBvc2l0b3J5IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEwOQorbXNnaWQgIlNlbmQgYSBjb2xsZWN0aW9uIG9mIHBhdGNoZXMgZnJvbSBzdGRpbiB0byBhbiBJTUFQIGZvbGRlciIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTAKK21zZ2lkICJCdWlsZCBwYWNrIGluZGV4IGZpbGUgZm9yIGFuIGV4aXN0aW5nIHBhY2tlZCBhcmNoaXZlIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExMQorbXNnaWQgIkNyZWF0ZSBhbiBlbXB0eSBHaXQgcmVwb3NpdG9yeSBvciByZWluaXRpYWxpemUgYW4gZXhpc3Rpbmcgb25lIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExMgorbXNnaWQgIkluc3RhbnRseSBicm93c2UgeW91ciB3b3JraW5nIHJlcG9zaXRvcnkgaW4gZ2l0d2ViIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExMworbXNnaWQgImFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTQKK21zZ2lkICJUaGUgR2l0IHJlcG9zaXRvcnkgYnJvd3NlciIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTUKK21zZ2lkICJTaG93IGNvbW1pdCBsb2dzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExNgorbXNnaWQgIlNob3cgaW5mb3JtYXRpb24gYWJvdXQgZmlsZXMgaW4gdGhlIGluZGV4IGFuZCB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExNworbXNnaWQgIkxpc3QgcmVmZXJlbmNlcyBpbiBhIHJlbW90ZSByZXBvc2l0b3J5IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExOAorbXNnaWQgIkxpc3QgdGhlIGNvbnRlbnRzIG9mIGEgdHJlZSBvYmplY3QiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTE5Cittc2dpZCAiRXh0cmFjdHMgcGF0Y2ggYW5kIGF1dGhvcnNoaXAgZnJvbSBhIHNpbmdsZSBlLW1haWwgbWVzc2FnZSIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMjAKK21zZ2lkICJTaW1wbGUgVU5JWCBtYm94IHNwbGl0dGVyIHByb2dyYW0iCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTIxCittc2dpZCAiSm9pbiB0d28gb3IgbW9yZSBkZXZlbG9wbWVudCBoaXN0b3JpZXMgdG9nZXRoZXIiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTIyCittc2dpZCAiRmluZCBhcyBnb29kIGNvbW1vbiBhbmNlc3RvcnMgYXMgcG9zc2libGUgZm9yIGEgbWVyZ2UiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTIzCittc2dpZCAiUnVuIGEgdGhyZWUtd2F5IGZpbGUgbWVyZ2UiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTI0Cittc2dpZCAiUnVuIGEgbWVyZ2UgZm9yIGZpbGVzIG5lZWRpbmcgbWVyZ2luZyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMjUKK21zZ2lkICJUaGUgc3RhbmRhcmQgaGVscGVyIHByb2dyYW0gdG8gdXNlIHdpdGggZ2l0LW1lcmdlLWluZGV4IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEyNgorbXNnaWQgIlJ1biBtZXJnZSBjb25mbGljdCByZXNvbHV0aW9uIHRvb2xzIHRvIHJlc29sdmUgbWVyZ2UgY29uZmxpY3RzIgorbXNnc3RyICIiCisizqTPgc6tzr7PhM61IM61z4HOs86xzrvOtc6vzrEgzrXPgM6vzrvPhc+DzrfPgiDPg8+FzrPOus+Bzr/Pjc+DzrXPic69IM+Dz4XOs8+Hz47Ovc61z4XPg863z4IgzrPOuc6xIM69zrEgzrXPgM65zrvPjc+DzrXPhM61IM+EzrnPgiAiCisiz4PPhc6zzrrPgc6/z43Pg861zrnPgiDPg8+FzrPPh8+Ozr3Otc+Fz4POt8+CIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMjcKK21zZ2lkICJTaG93IHRocmVlLXdheSBtZXJnZSB3aXRob3V0IHRvdWNoaW5nIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEyOAorbXNnaWQgIldyaXRlIGFuZCB2ZXJpZnkgbXVsdGktcGFjay1pbmRleGVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEyOQorbXNnaWQgIkNyZWF0ZXMgYSB0YWcgb2JqZWN0IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzMAorbXNnaWQgIkJ1aWxkIGEgdHJlZS1vYmplY3QgZnJvbSBscy10cmVlIGZvcm1hdHRlZCB0ZXh0IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzMQorbXNnaWQgIk1vdmUgb3IgcmVuYW1lIGEgZmlsZSwgYSBkaXJlY3RvcnksIG9yIGEgc3ltbGluayIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzIKK21zZ2lkICJGaW5kIHN5bWJvbGljIG5hbWVzIGZvciBnaXZlbiByZXZzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzMworbXNnaWQgIkFkZCBvciBpbnNwZWN0IG9iamVjdCBub3RlcyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzQKK21zZ2lkICJJbXBvcnQgZnJvbSBhbmQgc3VibWl0IHRvIFBlcmZvcmNlIHJlcG9zaXRvcmllcyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzUKK21zZ2lkICJDcmVhdGUgYSBwYWNrZWQgYXJjaGl2ZSBvZiBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzNgorbXNnaWQgIkZpbmQgcmVkdW5kYW50IHBhY2sgZmlsZXMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTM3Cittc2dpZCAiUGFjayBoZWFkcyBhbmQgdGFncyBmb3IgZWZmaWNpZW50IHJlcG9zaXRvcnkgYWNjZXNzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzOAorbXNnaWQgIlJvdXRpbmVzIHRvIGhlbHAgcGFyc2luZyByZW1vdGUgcmVwb3NpdG9yeSBhY2Nlc3MgcGFyYW1ldGVycyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzkKK21zZ2lkICJDb21wdXRlIHVuaXF1ZSBJRCBmb3IgYSBwYXRjaCIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDAKK21zZ2lkICJQcnVuZSBhbGwgdW5yZWFjaGFibGUgb2JqZWN0cyBmcm9tIHRoZSBvYmplY3QgZGF0YWJhc2UiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTQxCittc2dpZCAiUmVtb3ZlIGV4dHJhIG9iamVjdHMgdGhhdCBhcmUgYWxyZWFkeSBpbiBwYWNrIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE0MgorbXNnaWQgIkZldGNoIGZyb20gYW5kIGludGVncmF0ZSB3aXRoIGFub3RoZXIgcmVwb3NpdG9yeSBvciBhIGxvY2FsIGJyYW5jaCIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDMKK21zZ2lkICJVcGRhdGUgcmVtb3RlIHJlZnMgYWxvbmcgd2l0aCBhc3NvY2lhdGVkIG9iamVjdHMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTQ0Cittc2dpZCAiQXBwbGllcyBhIHF1aWx0IHBhdGNoc2V0IG9udG8gdGhlIGN1cnJlbnQgYnJhbmNoIgorbXNnc3RyICLOms6szr3Otc65IM61z4bOsc+BzrzOv86zzq4gzrXOvc+Mz4Igz4DOsc66zq3PhM6/z4UgzrTOuc6/z4HOuM+Oz4POtc+Jzr0gz4DOrM69z4kgz4PPhM6/zr0gz4TPgc6tz4fOv869z4TOsSDOus67zqzOtM6/IgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDUKK21zZ2lkICJDb21wYXJlIHR3byBjb21taXQgcmFuZ2VzIChlLmcuIHR3byB2ZXJzaW9ucyBvZiBhIGJyYW5jaCkiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTQ2Cittc2dpZCAiUmVhZHMgdHJlZSBpbmZvcm1hdGlvbiBpbnRvIHRoZSBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDcKK21zZ2lkICJSZWFwcGx5IGNvbW1pdHMgb24gdG9wIG9mIGFub3RoZXIgYmFzZSB0aXAiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTQ4Cittc2dpZCAiUmVjZWl2ZSB3aGF0IGlzIHB1c2hlZCBpbnRvIHRoZSByZXBvc2l0b3J5IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE0OQorbXNnaWQgIk1hbmFnZSByZWZsb2cgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTUwCittc2dpZCAiTWFuYWdlIHNldCBvZiB0cmFja2VkIHJlcG9zaXRvcmllcyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTEKK21zZ2lkICJQYWNrIHVucGFja2VkIG9iamVjdHMgaW4gYSByZXBvc2l0b3J5IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE1MgorbXNnaWQgIkNyZWF0ZSwgbGlzdCwgZGVsZXRlIHJlZnMgdG8gcmVwbGFjZSBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE1MworbXNnaWQgIkdlbmVyYXRlcyBhIHN1bW1hcnkgb2YgcGVuZGluZyBjaGFuZ2VzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE1NAorbXNnaWQgIlJldXNlIHJlY29yZGVkIHJlc29sdXRpb24gb2YgY29uZmxpY3RlZCBtZXJnZXMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTU1Cittc2dpZCAiUmVzZXQgY3VycmVudCBIRUFEIHRvIHRoZSBzcGVjaWZpZWQgc3RhdGUiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTU2Cittc2dpZCAiUmV2ZXJ0IHNvbWUgZXhpc3RpbmcgY29tbWl0cyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTcKK21zZ2lkICJMaXN0cyBjb21taXQgb2JqZWN0cyBpbiByZXZlcnNlIGNocm9ub2xvZ2ljYWwgb3JkZXIiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTU4Cittc2dpZCAiUGljayBvdXQgYW5kIG1hc3NhZ2UgcGFyYW1ldGVycyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTkKK21zZ2lkICJSZW1vdmUgZmlsZXMgZnJvbSB0aGUgd29ya2luZyB0cmVlIGFuZCBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjAKK21zZ2lkICJTZW5kIGEgY29sbGVjdGlvbiBvZiBwYXRjaGVzIGFzIGVtYWlscyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjEKK21zZ2lkICJQdXNoIG9iamVjdHMgb3ZlciBHaXQgcHJvdG9jb2wgdG8gYW5vdGhlciByZXBvc2l0b3J5IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MgorbXNnaWQgIlJlc3RyaWN0ZWQgbG9naW4gc2hlbGwgZm9yIEdpdC1vbmx5IFNTSCBhY2Nlc3MiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTYzCittc2dpZCAiU3VtbWFyaXplICdnaXQgbG9nJyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTY0Cittc2dpZCAiU2hvdyB2YXJpb3VzIHR5cGVzIG9mIG9iamVjdHMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTY1Cittc2dpZCAiU2hvdyBicmFuY2hlcyBhbmQgdGhlaXIgY29tbWl0cyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjYKK21zZ2lkICJTaG93IHBhY2tlZCBhcmNoaXZlIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NworbXNnaWQgIkxpc3QgcmVmZXJlbmNlcyBpbiBhIGxvY2FsIHJlcG9zaXRvcnkiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTY4Cittc2dpZCAiR2l0J3MgaTE4biBzZXR1cCBjb2RlIGZvciBzaGVsbCBzY3JpcHRzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2OQorbXNnaWQgIkNvbW1vbiBHaXQgc2hlbGwgc2NyaXB0IHNldHVwIGNvZGUiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTcwCittc2dpZCAiU3Rhc2ggdGhlIGNoYW5nZXMgaW4gYSBkaXJ0eSB3b3JraW5nIGRpcmVjdG9yeSBhd2F5IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MQorbXNnaWQgIkFkZCBmaWxlIGNvbnRlbnRzIHRvIHRoZSBzdGFnaW5nIGFyZWEiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTcyCittc2dpZCAiU2hvdyB0aGUgd29ya2luZyB0cmVlIHN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzMKK21zZ2lkICJSZW1vdmUgdW5uZWNlc3Nhcnkgd2hpdGVzcGFjZSIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzQKK21zZ2lkICJJbml0aWFsaXplLCB1cGRhdGUgb3IgaW5zcGVjdCBzdWJtb2R1bGVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NQorbXNnaWQgIkJpZGlyZWN0aW9uYWwgb3BlcmF0aW9uIGJldHdlZW4gYSBTdWJ2ZXJzaW9uIHJlcG9zaXRvcnkgYW5kIEdpdCIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzYKK21zZ2lkICJSZWFkLCBtb2RpZnkgYW5kIGRlbGV0ZSBzeW1ib2xpYyByZWZzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NworbXNnaWQgIkNyZWF0ZSwgbGlzdCwgZGVsZXRlIG9yIHZlcmlmeSBhIHRhZyBvYmplY3Qgc2lnbmVkIHdpdGggR1BHIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3OAorbXNnaWQgIkNyZWF0ZXMgYSB0ZW1wb3JhcnkgZmlsZSB3aXRoIGEgYmxvYidzIGNvbnRlbnRzIgorbXNnc3RyICLOlM63zrzOuc6/z4XPgc6zzrXOryDPgM+Bzr/Pg8+Jz4HOuc69z4wgzrHPgc+HzrXOr86/IM68zrUgz4TOsSDPgM61z4HOuc61z4fPjM68zrXOvc6xIM61zr3PjM+CIGJsb2IiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3OQorbXNnaWQgIlVucGFjayBvYmplY3RzIGZyb20gYSBwYWNrZWQgYXJjaGl2ZSIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODAKK21zZ2lkICJSZWdpc3RlciBmaWxlIGNvbnRlbnRzIGluIHRoZSB3b3JraW5nIHRyZWUgdG8gdGhlIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MQorbXNnaWQgIlVwZGF0ZSB0aGUgb2JqZWN0IG5hbWUgc3RvcmVkIGluIGEgcmVmIHNhZmVseSIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODIKK21zZ2lkICJVcGRhdGUgYXV4aWxpYXJ5IGluZm8gZmlsZSB0byBoZWxwIGR1bWIgc2VydmVycyIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODMKK21zZ2lkICJTZW5kIGFyY2hpdmUgYmFjayB0byBnaXQtYXJjaGl2ZSIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODQKK21zZ2lkICJTZW5kIG9iamVjdHMgcGFja2VkIGJhY2sgdG8gZ2l0LWZldGNoLXBhY2siCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTg1Cittc2dpZCAiU2hvdyBhIEdpdCBsb2dpY2FsIHZhcmlhYmxlIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE4NgorbXNnaWQgIkNoZWNrIHRoZSBHUEcgc2lnbmF0dXJlIG9mIGNvbW1pdHMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTg3Cittc2dpZCAiVmFsaWRhdGUgcGFja2VkIEdpdCBhcmNoaXZlIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE4OAorbXNnaWQgIkNoZWNrIHRoZSBHUEcgc2lnbmF0dXJlIG9mIHRhZ3MiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTg5Cittc2dpZCAiR2l0IHdlYiBpbnRlcmZhY2UgKHdlYiBmcm9udGVuZCB0byBHaXQgcmVwb3NpdG9yaWVzKSIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTAKK21zZ2lkICJTaG93IGxvZ3Mgd2l0aCBkaWZmZXJlbmNlIGVhY2ggY29tbWl0IGludHJvZHVjZXMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTkxCittc2dpZCAiTWFuYWdlIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTkyCittc2dpZCAiQ3JlYXRlIGEgdHJlZSBvYmplY3QgZnJvbSB0aGUgY3VycmVudCBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTMKK21zZ2lkICJEZWZpbmluZyBhdHRyaWJ1dGVzIHBlciBwYXRoIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NAorbXNnaWQgIkdpdCBjb21tYW5kLWxpbmUgaW50ZXJmYWNlIGFuZCBjb252ZW50aW9ucyIKK21zZ3N0ciAizpTOuc61z4DOsc+Gzq4gzrPPgc6xzrzOvM6uz4IgzrXOvc+Ezr/Ou8+Ozr0gR2l0IM66zrHOuSDPg8+FzrzOss6sz4POtc65z4IiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NQorbXNnaWQgIkEgR2l0IGNvcmUgdHV0b3JpYWwgZm9yIGRldmVsb3BlcnMiCittc2dzdHIgIs6Izr3OsSDOvM6szrjOt868zrEgz4TOv8+FIM+Az4XPgc6uzr3OsSDPhM6/z4UgR2l0IM6zzrnOsSDPgM+Bzr/Os8+BzrHOvM68zrHPhM65z4PPhM6tz4IiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NgorbXNnaWQgIkdpdCBmb3IgQ1ZTIHVzZXJzIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NworbXNnaWQgIlR3ZWFraW5nIGRpZmYgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5OAorbXNnaWQgIkEgdXNlZnVsIG1pbmltdW0gc2V0IG9mIGNvbW1hbmRzIGZvciBFdmVyeWRheSBHaXQiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MTk5Cittc2dpZCAiQSBHaXQgR2xvc3NhcnkiCittc2dzdHIgIs6Izr3OsSDOk867z4nPg8+DzqzPgc65IM+Ezr/PhSBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMAorbXNnaWQgIkhvb2tzIHVzZWQgYnkgR2l0IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMQorbXNnaWQgIlNwZWNpZmllcyBpbnRlbnRpb25hbGx5IHVudHJhY2tlZCBmaWxlcyB0byBpZ25vcmUiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MjAyCittc2dpZCAiRGVmaW5pbmcgc3VibW9kdWxlIHByb3BlcnRpZXMiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MjAzCittc2dpZCAiR2l0IG5hbWVzcGFjZXMiCittc2dzdHIgIs6fzr3PjM68zrHPhM6xIHjPjs+Bz4nOvSBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNAorbXNnaWQgIkdpdCBSZXBvc2l0b3J5IExheW91dCIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoyMDUKK21zZ2lkICJTcGVjaWZ5aW5nIHJldmlzaW9ucyBhbmQgcmFuZ2VzIGZvciBHaXQiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MjA2Cittc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0OiBwYXJ0IHR3byIKK21zZ3N0ciAiIgorCisjOiBjb21tYW5kLWxpc3QuaDoyMDcKK21zZ2lkICJBIHR1dG9yaWFsIGludHJvZHVjdGlvbiB0byBHaXQiCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MjA4Cittc2dpZCAiQW4gb3ZlcnZpZXcgb2YgcmVjb21tZW5kZWQgd29ya2Zsb3dzIHdpdGggR2l0IgorbXNnc3RyICIiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjYzCittc2dpZCAiYXJncyIKK21zZ3N0ciAizr/Pgc6vz4POvM6xz4TOsSIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6NjQKK21zZ2lkICJvYmplY3QgZmlsdGVyaW5nIgorbXNnc3RyICIiCisKKyM6IHJlcmVyZS5oOjQ0Cittc2dpZCAidXBkYXRlIHRoZSBpbmRleCB3aXRoIHJldXNlZCBjb25mbGljdCByZXNvbHV0aW9uIGlmIHBvc3NpYmxlIgorbXNnc3RyICIiCisKKyM6IGdpdC1iaXNlY3Quc2g6NTQKK21zZ2lkICJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIiIKK21zZ3N0ciAizqfPgc61zrnOrM62zrXPhM6xzrkgzr3OsSDOsc+Bz4fOr8+DzrXPhM61IM68zrUgXCJnaXQgYmlzZWN0IHN0YXJ0XCIiCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbWV0gYW5kIFtuXSBpbiB5b3VyCisjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIzogZ2l0LWJpc2VjdC5zaDo2MAorbXNnaWQgIkRvIHlvdSB3YW50IG1lIHRvIGRvIGl0IGZvciB5b3UgW1kvbl0/ICIKK21zZ3N0ciAiIgorCisjOiBnaXQtYmlzZWN0LnNoOjEwMQorIywgc2gtZm9ybWF0Cittc2dpZCAiQmFkIHJldiBpbnB1dDogJGFyZyIKK21zZ3N0ciAiIgorCisjOiBnaXQtYmlzZWN0LnNoOjEyMQorIywgc2gtZm9ybWF0Cittc2dpZCAiQmFkIHJldiBpbnB1dDogJGJpc2VjdGVkX2hlYWQiCittc2dzdHIgIiIKKworIzogZ2l0LWJpc2VjdC5zaDoxMzAKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRyZXYiCittc2dzdHIgIiIKKworIzogZ2l0LWJpc2VjdC5zaDoxMzkKKyMsIHNoLWZvcm1hdAorbXNnaWQgIidnaXQgYmlzZWN0ICRURVJNX0JBRCcgY2FuIHRha2Ugb25seSBvbmUgYXJndW1lbnQuIgorbXNnc3RyICInZ2l0IGJpc2VjdCAkVEVSTV9CQUQnIM60zq3Ph861z4TOsc65IM68z4zOvc6/IM6tzr3OsSDPjM+BzrnPg868zrEuIgorCisjOiBnaXQtYmlzZWN0LnNoOjIwOQorbXNnaWQgIk5vIGxvZ2ZpbGUgZ2l2ZW4iCittc2dzdHIgIiIKKworIzogZ2l0LWJpc2VjdC5zaDoyMTAKKyMsIHNoLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICRmaWxlIGZvciByZXBsYXlpbmciCittc2dzdHIgIiIKKworIzogZ2l0LWJpc2VjdC5zaDoyMzIKK21zZ2lkICI/PyB3aGF0IGFyZSB5b3UgdGFsa2luZyBhYm91dD8iCittc2dzdHIgIjs7ICDPhM65IM61zr3Ovc6/zrXOr8+EzrU7IgorCisjOiBnaXQtYmlzZWN0LnNoOjI0MQorbXNnaWQgImJpc2VjdCBydW4gZmFpbGVkOiBubyBjb21tYW5kIHByb3ZpZGVkLiIKK21zZ3N0ciAiIgorCisjOiBnaXQtYmlzZWN0LnNoOjI0NgorIywgc2gtZm9ybWF0Cittc2dpZCAicnVubmluZyAkY29tbWFuZCIKK21zZ3N0ciAiIgorCisjOiBnaXQtYmlzZWN0LnNoOjI1MworIywgc2gtZm9ybWF0Cittc2dpZCAiIgorImJpc2VjdCBydW4gZmFpbGVkOlxuIgorImV4aXQgY29kZSAkcmVzIGZyb20gJyRjb21tYW5kJyBpcyA8IDAgb3IgPj0gMTI4IgorbXNnc3RyICIiCisKKyM6IGdpdC1iaXNlY3Quc2g6Mjc5Cittc2dpZCAiYmlzZWN0IHJ1biBjYW5ub3QgY29udGludWUgYW55IG1vcmUiCittc2dzdHIgIiIKKworIzogZ2l0LWJpc2VjdC5zaDoyODUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiIKKyJiaXNlY3QgcnVuIGZhaWxlZDpcbiIKKyInYmlzZWN0X3N0YXRlICRzdGF0ZScgZXhpdGVkIHdpdGggZXJyb3IgY29kZSAkcmVzIgorbXNnc3RyICIiCisKKyM6IGdpdC1iaXNlY3Quc2g6MjkyCittc2dpZCAiYmlzZWN0IHJ1biBzdWNjZXNzIgorbXNnc3RyICIiCisKKyM6IGdpdC1iaXNlY3Quc2g6MzAwCittc2dpZCAiV2UgYXJlIG5vdCBiaXNlY3RpbmcuIgorbXNnc3RyICIiCisKKyM6IGdpdC1tZXJnZS1vY3RvcHVzLnNoOjQ2Cittc2dpZCAiIgorIkVycm9yOiBZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCisibWVyZ2UiCittc2dzdHIgIiIKKworIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6NjEKK21zZ2lkICJBdXRvbWF0ZWQgbWVyZ2UgZGlkIG5vdCB3b3JrLiIKK21zZ3N0ciAiIgorCisjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo2MgorbXNnaWQgIlNob3VsZCBub3QgYmUgZG9pbmcgYW4gb2N0b3B1cy4iCittc2dzdHIgIiIKKworIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6NzMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBmaW5kIGNvbW1vbiBjb21taXQgd2l0aCAkcHJldHR5X25hbWUiCittc2dzdHIgIiIKKworIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6NzcKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZSB3aXRoICRwcmV0dHlfbmFtZSIKK21zZ3N0ciAizonOtM63IM+AzrvOrs+Bz4nPgiDOtc69zq7OvM61z4HOvyDOvM61IM+Ezr8gJHByZXR0eV9uYW1lIgorCisjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo4OQorIywgc2gtZm9ybWF0Cittc2dpZCAiRmFzdC1mb3J3YXJkaW5nIHRvOiAkcHJldHR5X25hbWUiCittc2dzdHIgIiIKKworIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6OTcKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlRyeWluZyBzaW1wbGUgbWVyZ2Ugd2l0aCAkcHJldHR5X25hbWUiCittc2dzdHIgIiIKKworIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6MTAyCittc2dpZCAiU2ltcGxlIG1lcmdlIGRpZCBub3Qgd29yaywgdHJ5aW5nIGF1dG9tYXRpYyBtZXJnZS4iCittc2dzdHIgIiIKKworIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDQ1CisjLCBzaC1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgbW92ZSBiYWNrIHRvICRoZWFkX25hbWUiCittc2dzdHIgIiIKKworIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDcxCisjLCBzaC1mb3JtYXQKK21zZ2lkICIiCisiSXQgc2VlbXMgdGhhdCB0aGVyZSBpcyBhbHJlYWR5IGEgJHN0YXRlX2Rpcl9iYXNlIGRpcmVjdG9yeSwgYW5kXG4iCisiSSB3b25kZXIgaWYgeW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgcmViYXNlLiAgSWYgdGhhdCBpcyB0aGVcbiIKKyJjYXNlLCBwbGVhc2UgdHJ5XG4iCisiXHQkY21kX2xpdmVfcmViYXNlXG4iCisiSWYgdGhhdCBpcyBub3QgdGhlIGNhc2UsIHBsZWFzZVxuIgorIlx0JGNtZF9jbGVhcl9zdGFsZV9yZWJhc2VcbiIKKyJhbmQgcnVuIG1lIGFnYWluLiAgSSBhbSBzdG9wcGluZyBpbiBjYXNlIHlvdSBzdGlsbCBoYXZlIHNvbWV0aGluZ1xuIgorInZhbHVhYmxlIHRoZXJlLiIKK21zZ3N0ciAiIgorCisjOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1MjMKK21zZ2lkICIiCisiZmF0YWw6IGNhbm5vdCBjb21iaW5lIGFtIG9wdGlvbnMgd2l0aCBlaXRoZXIgaW50ZXJhY3RpdmUgb3IgbWVyZ2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1MzAKK21zZ2lkICJmYXRhbDogY2Fubm90IGNvbWJpbmUgJy0tc2lnbm9mZicgd2l0aCAnLS1wcmVzZXJ2ZS1tZXJnZXMnIgorbXNnc3RyICIiCisKKyM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU0MQorbXNnaWQgImZhdGFsOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmViYXNlLW1lcmdlcyciCittc2dzdHIgIiIKKworIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTUwCittc2dpZCAiZmF0YWw6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3ktb3B0aW9uJyIKK21zZ3N0ciAiIgorCisjOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1NTIKK21zZ2lkICJmYXRhbDogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneSciCittc2dzdHIgIiIKKworIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTc4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICckdXBzdHJlYW1fbmFtZSciCittc2dzdHIgIiIKKworIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjAyCisjLCBzaC1mb3JtYXQKK21zZ2lkICIkb250b19uYW1lOiB0aGVyZSBhcmUgbW9yZSB0aGFuIG9uZSBtZXJnZSBiYXNlcyIKK21zZ3N0ciAiIgorCisjOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2MDUgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjA5CisjLCBzaC1mb3JtYXQKK21zZ2lkICIkb250b19uYW1lOiB0aGVyZSBpcyBubyBtZXJnZSBiYXNlIgorbXNnc3RyICIiCisKKyM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjYxNAorIywgc2gtZm9ybWF0Cittc2dpZCAiRG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBjb21taXQ6ICRvbnRvX25hbWUiCittc2dzdHIgIiIKKworIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjQwCisjLCBzaC1mb3JtYXQKK21zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICckYnJhbmNoX25hbWUnIgorbXNnc3RyICIiCisKKyM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjY3OAorIywgc2gtZm9ybWF0Cittc2dpZCAiQ3JlYXRlZCBhdXRvc3Rhc2g6ICRzdGFzaF9hYmJyZXYiCittc2dzdHIgIiIKKworIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzA3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJDdXJyZW50IGJyYW5jaCAkYnJhbmNoX25hbWUgaXMgdXAgdG8gZGF0ZS4iCittc2dzdHIgIiIKKworIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzE3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJDdXJyZW50IGJyYW5jaCAkYnJhbmNoX25hbWUgaXMgdXAgdG8gZGF0ZSwgcmViYXNlIGZvcmNlZC4iCittc2dzdHIgIiIKKworIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzMxCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDaGFuZ2VzIHRvICRvbnRvOiIKK21zZ3N0ciAiIgorCisjOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MzMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNoYW5nZXMgZnJvbSAkbWIgdG8gJG9udG86IgorbXNnc3RyICIiCisKKyM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjc0MworIywgc2gtZm9ybWF0Cittc2dpZCAiRmFzdC1mb3J3YXJkZWQgJGJyYW5jaF9uYW1lIHRvICRvbnRvX25hbWUuIgorbXNnc3RyICIiCisKKyM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjc1NworbXNnaWQgIkZpcnN0LCByZXdpbmRpbmcgaGVhZCB0byByZXBsYXkgeW91ciB3b3JrIG9uIHRvcCBvZiBpdC4uLiIKK21zZ3N0ciAiIgorIs6gz4HPjs+EzrEsIM6zzq/Ovc61z4TOsc65IM6zz43Pgc65z4POvM6xIM+Az4HOv8+CIM+EzrEgz4DOr8+Dz4kgz4TOv8+FIGhlYWQgzrPOuc6xIM69zrEgzrPOr869zrXOuSDOtc+AzrHOvc6szrvOt8+Izrcgz4TOt8+CICIKKyLOtM6/z4XOu861zrnOrM+CIM+DzrHPgiDPgM6szr3PiSDPg861IM6xz4XPhM+MLi4uIgorCisjOiBnaXQtc3Rhc2guc2g6NzUKK21zZ2lkICJnaXQgc3Rhc2ggY2xlYXIgd2l0aCBwYXJhbWV0ZXJzIGlzIHVuaW1wbGVtZW50ZWQiCittc2dzdHIgIiIKKworIzogZ2l0LXN0YXNoLnNoOjEyNQorbXNnaWQgIllvdSBkbyBub3QgaGF2ZSB0aGUgaW5pdGlhbCBjb21taXQgeWV0IgorbXNnc3RyICLOlM61zr0gzq3Ph861z4TOtSDOsc66z4zOvM6xIM+EzrfOvSDOsc+Bz4fOuc66zq4gz4XPgM6/zrLOv867zq4iCisKKyM6IGdpdC1zdGFzaC5zaDoxNDAKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBpbmRleCBzdGF0ZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3Rhc2guc2g6MTU1Cittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIHVudHJhY2tlZCBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3Rhc2guc2g6MTc1IGdpdC1zdGFzaC5zaDoxODgKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCB3b3JrdHJlZSBzdGF0ZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3Rhc2guc2g6MTkyCittc2dpZCAiTm8gY2hhbmdlcyBzZWxlY3RlZCIKK21zZ3N0ciAizpTOtc69IM61z4DOuc67zq3Ph8+EzrfOus61IM66zrHOvM6vzrEgzrHOu867zrHOs86uIgorCisjOiBnaXQtc3Rhc2guc2g6MTk1Cittc2dpZCAiQ2Fubm90IHJlbW92ZSB0ZW1wb3JhcnkgaW5kZXggKGNhbid0IGhhcHBlbikiCittc2dzdHIgIiIKKworIzogZ2l0LXN0YXNoLnNoOjIwOAorbXNnaWQgIkNhbm5vdCByZWNvcmQgd29ya2luZyB0cmVlIHN0YXRlIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdGFzaC5zaDoyNDYKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCB1cGRhdGUgJHJlZl9zdGFzaCB3aXRoICR3X2NvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3Rhc2guc2g6Mjk4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJlcnJvcjogdW5rbm93biBvcHRpb24gZm9yICdzdGFzaCBwdXNoJzogJG9wdGlvbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3Rhc2guc2g6MzEyCittc2dpZCAiQ2FuJ3QgdXNlIC0tcGF0Y2ggYW5kIC0taW5jbHVkZS11bnRyYWNrZWQgb3IgLS1hbGwgYXQgdGhlIHNhbWUgdGltZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3Rhc2guc2g6MzIwCittc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdGFzaC5zaDozMjUKK21zZ2lkICJDYW5ub3QgaW5pdGlhbGl6ZSBzdGFzaCIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3Rhc2guc2g6MzI5Cittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgc3RhdHVzIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdGFzaC5zaDozMzAKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlNhdmVkIHdvcmtpbmcgZGlyZWN0b3J5IGFuZCBpbmRleCBzdGF0ZSAkc3Rhc2hfbXNnIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdGFzaC5zaDozNTkKK21zZ2lkICJDYW5ub3QgcmVtb3ZlIHdvcmt0cmVlIGNoYW5nZXMiCittc2dzdHIgIiIKKworIzogZ2l0LXN0YXNoLnNoOjUwNworIywgc2gtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb246ICRvcHQiCittc2dzdHIgIiIKKworIzogZ2l0LXN0YXNoLnNoOjUyMAorbXNnaWQgIk5vIHN0YXNoIGVudHJpZXMgZm91bmQuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdGFzaC5zaDo1MjcKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlRvbyBtYW55IHJldmlzaW9ucyBzcGVjaWZpZWQ6ICRSRVYiCittc2dzdHIgIiIKKworIzogZ2l0LXN0YXNoLnNoOjU0MgorIywgc2gtZm9ybWF0Cittc2dpZCAiJHJlZmVyZW5jZSBpcyBub3QgYSB2YWxpZCByZWZlcmVuY2UiCittc2dzdHIgIiIKKworIzogZ2l0LXN0YXNoLnNoOjU3MAorIywgc2gtZm9ybWF0Cittc2dpZCAiJyRhcmdzJyBpcyBub3QgYSBzdGFzaC1saWtlIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3Rhc2guc2g6NTgxCisjLCBzaC1mb3JtYXQKK21zZ2lkICInJGFyZ3MnIGlzIG5vdCBhIHN0YXNoIHJlZmVyZW5jZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3Rhc2guc2g6NTg5Cittc2dpZCAidW5hYmxlIHRvIHJlZnJlc2ggaW5kZXgiCittc2dzdHIgIiIKKworIzogZ2l0LXN0YXNoLnNoOjU5MworbXNnaWQgIkNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3Rhc2guc2g6NjAxCittc2dpZCAiQ29uZmxpY3RzIGluIGluZGV4LiBUcnkgd2l0aG91dCAtLWluZGV4LiIKK21zZ3N0ciAizqPPhc6zzrrPgc6/z43Pg861zrnPgiDPg8+Ezr8gzrXPhc+BzrXPhM6uz4HOuc6/LiDOlM6/zrrOuc68zqzPg8+EzrUgz4fPic+Bzq/PgiDPhM6/IC0taW5kZXguIgorCisjOiBnaXQtc3Rhc2guc2g6NjAzCittc2dpZCAiQ291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3Rhc2guc2g6NjEyCittc2dpZCAiQ291bGQgbm90IHJlc3RvcmUgdW50cmFja2VkIGZpbGVzIGZyb20gc3Rhc2ggZW50cnkiCittc2dzdHIgIiIKKworIzogZ2l0LXN0YXNoLnNoOjYzNworbXNnaWQgIkNhbm5vdCB1bnN0YWdlIG1vZGlmaWVkIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdGFzaC5zaDo2NTIKK21zZ2lkICJJbmRleCB3YXMgbm90IHVuc3Rhc2hlZC4iCittc2dzdHIgIiIKKworIzogZ2l0LXN0YXNoLnNoOjY2NgorbXNnaWQgIlRoZSBzdGFzaCBlbnRyeSBpcyBrZXB0IGluIGNhc2UgeW91IG5lZWQgaXQgYWdhaW4uIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdGFzaC5zaDo2NzUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkRyb3BwZWQgJHtSRVZ9ICgkcykiCittc2dzdHIgIiIKKworIzogZ2l0LXN0YXNoLnNoOjY3NgorIywgc2gtZm9ybWF0Cittc2dpZCAiJHtSRVZ9OiBDb3VsZCBub3QgZHJvcCBzdGFzaCBlbnRyeSIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3Rhc2guc2g6Njg0Cittc2dpZCAiTm8gYnJhbmNoIG5hbWUgc3BlY2lmaWVkIgorbXNnc3RyICLOlM61IM60z4zOuM63zrrOtSDPjM69zr/OvM6xIM66zrvOrM60zr/PhSIKKworIzogZ2l0LXN0YXNoLnNoOjc2MworbXNnaWQgIihUbyByZXN0b3JlIHRoZW0gdHlwZSBcImdpdCBzdGFzaCBhcHBseVwiKSIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjE5OAorbXNnaWQgIlJlbGF0aXZlIHBhdGggY2FuIG9ubHkgYmUgdXNlZCBmcm9tIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjA4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJyZXBvIFVSTDogJyRyZXBvJyBtdXN0IGJlIGFic29sdXRlIG9yIGJlZ2luIHdpdGggLi98Li4vIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjI3CisjLCBzaC1mb3JtYXQKK21zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGluIHRoZSBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjIzMAorIywgc2gtZm9ybWF0Cittc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXggYW5kIGlzIG5vdCBhIHN1Ym1vZHVsZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjIzNgorIywgc2gtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGF0aCBpcyBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCisiJHNtX3BhdGhcbiIKKyJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCBpdC4iCittc2dzdHIgIiIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNTkKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkFkZGluZyBleGlzdGluZyByZXBvIGF0ICckc21fcGF0aCcgdG8gdGhlIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjYxCisjLCBzaC1mb3JtYXQKK21zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYSB2YWxpZCBnaXQgcmVwbyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjI2OQorIywgc2gtZm9ybWF0Cittc2dpZCAiQSBnaXQgZGlyZWN0b3J5IGZvciAnJHNtX25hbWUnIGlzIGZvdW5kIGxvY2FsbHkgd2l0aCByZW1vdGUocyk6IgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjcxCisjLCBzaC1mb3JtYXQKK21zZ2lkICIiCisiSWYgeW91IHdhbnQgdG8gcmV1c2UgdGhpcyBsb2NhbCBnaXQgZGlyZWN0b3J5IGluc3RlYWQgb2YgY2xvbmluZyBhZ2FpbiBmcm9tXG4iCisiICAkcmVhbHJlcG9cbiIKKyJ1c2UgdGhlICctLWZvcmNlJyBvcHRpb24uIElmIHRoZSBsb2NhbCBnaXQgZGlyZWN0b3J5IGlzIG5vdCB0aGUgY29ycmVjdCAiCisicmVwb1xuIgorIm9yIHlvdSBhcmUgdW5zdXJlIHdoYXQgdGhpcyBtZWFucyBjaG9vc2UgYW5vdGhlciBuYW1lIHdpdGggdGhlICctLW5hbWUnICIKKyJvcHRpb24uIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjc3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJSZWFjdGl2YXRpbmcgbG9jYWwgZ2l0IGRpcmVjdG9yeSBmb3Igc3VibW9kdWxlICckc21fbmFtZScuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjg5CisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gY2hlY2tvdXQgc3VibW9kdWxlICckc21fcGF0aCciCittc2dzdHIgIiIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTQKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBhZGQgc3VibW9kdWxlICckc21fcGF0aCciCittc2dzdHIgIiIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDozMDMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjU2MworIywgc2gtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGZpbmQgY3VycmVudCByZXZpc2lvbiBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjU3MworIywgc2gtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGZldGNoIGluIHN1Ym1vZHVsZSBwYXRoICckc21fcGF0aCciCittc2dzdHIgIiIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NzgKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiIKKyJVbmFibGUgdG8gZmluZCBjdXJyZW50ICR7cmVtb3RlX25hbWV9LyR7YnJhbmNofSByZXZpc2lvbiBpbiBzdWJtb2R1bGUgcGF0aCAiCisiJyRzbV9wYXRoJyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjU5NgorIywgc2gtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGZldGNoIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjAyCisjLCBzaC1mb3JtYXQKK21zZ2lkICIiCisiRmV0Y2hlZCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJywgYnV0IGl0IGRpZCBub3QgY29udGFpbiAkc2hhMS4gIgorIkRpcmVjdCBmZXRjaGluZyBvZiB0aGF0IGNvbW1pdCBmYWlsZWQuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjA5CisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gY2hlY2tvdXQgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjYxMAorIywgc2gtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IGNoZWNrZWQgb3V0ICckc2hhMSciCittc2dzdHIgIiIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MTQKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byByZWJhc2UgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjYxNQorIywgc2gtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IHJlYmFzZWQgaW50byAnJHNoYTEnIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjIwCisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gbWVyZ2UgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjYyMQorIywgc2gtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IG1lcmdlZCBpbiAnJHNoYTEnIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjI2CisjLCBzaC1mb3JtYXQKK21zZ2lkICJFeGVjdXRpb24gb2YgJyRjb21tYW5kICRzaGExJyBmYWlsZWQgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCittc2dzdHIgIiIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjcKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiAnJGNvbW1hbmQgJHNoYTEnIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjU4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NzU0Cittc2dpZCAiVGhlIC0tY2FjaGVkIG9wdGlvbiBjYW5ub3QgYmUgdXNlZCB3aXRoIHRoZSAtLWZpbGVzIG9wdGlvbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjgwNgorIywgc2gtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBtb2RlICRtb2RfZHN0IgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6ODI2CisjLCBzaC1mb3JtYXQKK21zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdCAkc2hhMV9zcmMiCittc2dzdHIgIiIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MjkKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX2RzdCIKK21zZ3N0ciAiIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjgzMgorIywgc2gtZm9ybWF0Cittc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXRzICRzaGExX3NyYyBhbmQgJHNoYTFfZHN0IgorbXNnc3RyICIiCisKKyM6IGdpdC1wYXJzZS1yZW1vdGUuc2g6ODkKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlNlZSBnaXQtJHtjbWR9KDEpIGZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTM2CisjLCBzaC1mb3JtYXQKK21zZ2lkICJSZWJhc2luZyAoJG5ld19jb3VudC8kdG90YWwpIgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNTIKK21zZ2lkICIiCisiXG4iCisiQ29tbWFuZHM6XG4iCisicCwgcGljayA8Y29tbWl0PiA9IHVzZSBjb21taXRcbiIKKyJyLCByZXdvcmQgPGNvbW1pdD4gPSB1c2UgY29tbWl0LCBidXQgZWRpdCB0aGUgY29tbWl0IG1lc3NhZ2VcbiIKKyJlLCBlZGl0IDxjb21taXQ+ID0gdXNlIGNvbW1pdCwgYnV0IHN0b3AgZm9yIGFtZW5kaW5nXG4iCisicywgc3F1YXNoIDxjb21taXQ+ID0gdXNlIGNvbW1pdCwgYnV0IG1lbGQgaW50byBwcmV2aW91cyBjb21taXRcbiIKKyJmLCBmaXh1cCA8Y29tbWl0PiA9IGxpa2UgXCJzcXVhc2hcIiwgYnV0IGRpc2NhcmQgdGhpcyBjb21taXQncyBsb2cgbWVzc2FnZVxuIgorIngsIGV4ZWMgPGNvbW1pdD4gPSBydW4gY29tbWFuZCAodGhlIHJlc3Qgb2YgdGhlIGxpbmUpIHVzaW5nIHNoZWxsXG4iCisiZCwgZHJvcCA8Y29tbWl0PiA9IHJlbW92ZSBjb21taXRcbiIKKyJsLCBsYWJlbCA8bGFiZWw+ID0gbGFiZWwgY3VycmVudCBIRUFEIHdpdGggYSBuYW1lXG4iCisidCwgcmVzZXQgPGxhYmVsPiA9IHJlc2V0IEhFQUQgdG8gYSBsYWJlbFxuIgorIm0sIG1lcmdlIFstQyA8Y29tbWl0PiB8IC1jIDxjb21taXQ+XSA8bGFiZWw+IFsjIDxvbmVsaW5lPl1cbiIKKyIuICAgICAgIGNyZWF0ZSBhIG1lcmdlIGNvbW1pdCB1c2luZyB0aGUgb3JpZ2luYWwgbWVyZ2UgY29tbWl0J3NcbiIKKyIuICAgICAgIG1lc3NhZ2UgKG9yIHRoZSBvbmVsaW5lLCBpZiBubyBvcmlnaW5hbCBtZXJnZSBjb21taXQgd2FzXG4iCisiLiAgICAgICBzcGVjaWZpZWQpLiBVc2UgLWMgPGNvbW1pdD4gdG8gcmV3b3JkIHRoZSBjb21taXQgbWVzc2FnZS5cbiIKKyJcbiIKKyJUaGVzZSBsaW5lcyBjYW4gYmUgcmUtb3JkZXJlZDsgdGhleSBhcmUgZXhlY3V0ZWQgZnJvbSB0b3AgdG8gYm90dG9tLlxuIgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMTUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgY2FuIGFtZW5kIHRoZSBjb21taXQgbm93LCB3aXRoXG4iCisiXG4iCisiXHRnaXQgY29tbWl0IC0tYW1lbmQgJGdwZ19zaWduX29wdF9xdW90ZWRcbiIKKyJcbiIKKyJPbmNlIHlvdSBhcmUgc2F0aXNmaWVkIHdpdGggeW91ciBjaGFuZ2VzLCBydW5cbiIKKyJcbiIKKyJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKK21zZ3N0ciAiIgorIs6cz4DOv8+BzrXOr8+EzrUgzr3OsSDPhM+Bzr/PgM6/z4DOv865zq7Pg861z4TOtSDPhM63zr0gz4XPgM6/zrLOv867zq4gz4TPjs+BzrEsIM68zrVcbiIKKyJcbiIKKyJcdGdpdCBjb21taXQgLS1hbWVuZCAkZ3BnX3NpZ25fb3B0X3F1b3RlZFxuIgorIlxuIgorIs6Mz4TOsc69IM6/zrkgzrHOu867zrHOs86tz4Igz4POsc+CIM+DzrHPgiDOuc66zrHOvc6/z4DOv865zr/Pjc69LCDPhM+Bzq3Ovs+EzrVcbiIKKyJcbiIKKyJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI0MAorIywgc2gtZm9ybWF0Cittc2dpZCAiJHNoYTE6IG5vdCBhIGNvbW1pdCB0aGF0IGNhbiBiZSBwaWNrZWQiCittc2dzdHIgIiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI3OQorIywgc2gtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBjb21taXQgbmFtZTogJHNoYTEiCittc2dzdHIgIiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjMwOQorbXNnaWQgIkNhbm5vdCB3cml0ZSBjdXJyZW50IGNvbW1pdCdzIHJlcGxhY2VtZW50IHNoYTEiCittc2dzdHIgIiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2MAorIywgc2gtZm9ybWF0Cittc2dpZCAiRmFzdC1mb3J3YXJkIHRvICRzaGExIgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNjIKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBmYXN0LWZvcndhcmQgdG8gJHNoYTEiCittc2dzdHIgIiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM3MQorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90IG1vdmUgSEVBRCB0byAkZmlyc3RfcGFyZW50IgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNzYKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlJlZnVzaW5nIHRvIHNxdWFzaCBhIG1lcmdlOiAkc2hhMSIKK21zZ3N0ciAiIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mzk0CisjLCBzaC1mb3JtYXQKK21zZ2lkICJFcnJvciByZWRvaW5nIG1lcmdlICRzaGExIgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MDMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBwaWNrICRzaGExIgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MTIKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlRoaXMgaXMgdGhlIGNvbW1pdCBtZXNzYWdlICMke259OiIKK21zZ3N0ciAiIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDE3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJUaGUgY29tbWl0IG1lc3NhZ2UgIyR7bn0gd2lsbCBiZSBza2lwcGVkOiIKK21zZ3N0ciAiIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDI4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJGNvdW50IGNvbW1pdC4iCittc2dpZF9wbHVyYWwgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAkY291bnQgY29tbWl0cy4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDM3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3Qgd3JpdGUgJGZpeHVwX21zZyIKK21zZ3N0ciAiIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQwCittc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mIDIgY29tbWl0cy4iCittc2dzdHIgIiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ4MSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTI0CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTI3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgYXBwbHkgJHNoYTEuLi4gJHJlc3QiCittc2dzdHIgIiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU1NgorIywgc2gtZm9ybWF0Cittc2dpZCAiIgorIkNvdWxkIG5vdCBhbWVuZCBjb21taXQgYWZ0ZXIgc3VjY2Vzc2Z1bGx5IHBpY2tpbmcgJHNoYTEuLi4gJHJlc3RcbiIKKyJUaGlzIGlzIG1vc3QgbGlrZWx5IGR1ZSB0byBhbiBlbXB0eSBjb21taXQgbWVzc2FnZSwgb3IgdGhlIHByZS1jb21taXQgaG9va1xuIgorImZhaWxlZC4gSWYgdGhlIHByZS1jb21taXQgaG9vayBmYWlsZWQsIHlvdSBtYXkgbmVlZCB0byByZXNvbHZlIHRoZSBpc3N1ZSAiCisiYmVmb3JlXG4iCisieW91IGFyZSBhYmxlIHRvIHJld29yZCB0aGUgY29tbWl0LiIKK21zZ3N0ciAiIgorIs6UzrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ezq4gzrcgz4TPgc6/z4DOv8+Azr/Or863z4POtyDPhM63z4Igz4XPgM6/zrLOv867zq7PgiDOvM61z4TOrCDOsc+Az4wgz4TOt869IM61z4DOuc+Ez4XPh86uIM60zrnOsc67zr/Os86uIM+Ezr/PhSAiCisiJHNoYTEuLi4gJHJlc3RcbiIKKyLOms6xz4TOrCDPgM6sz4POsSDPgM65zrjOsc69z4zPhM63z4TOsSDOv8+GzrXOr867zrXPhM6xzrkgz4POtSDOus61zr3PjCDOvM6uzr3Phc68zrEgz4XPgM6/zrLOv867zq7Pgiwgzq4gzrHPgM6tz4TPhc+HzrUgz4TOvyAiCisizqzOs866zrnPg8+Ez4HOvyDPgM+Bzr8gz4XPgM6/zrLOv867zq7Pgi5cbiIKKyLOkc69IM6xz4DOrc+Ez4XPh861IM+Ezr8gzqzOs866zrnPg8+Ez4HOvyDPgM+Bzr8gz4XPgM6/zrLOv867zq7PgiwgzrzPgM6/z4HOtc6vIM69zrEgz4fPgc61zrnOsc+Dz4TOtc6vIM69zrEgzrXPgM65zrvPjc+DzrXPhM61IM+Ezr8gIgorIs64zq3OvM6xIM+Az4HOuc69IM69zrFcbiIKKyLOvM+Azr/Pgc6tz4POtc+EzrUgzr3OsSDOsc69zrHOtM65zrHPhM+Fz4DPjs+DzrXPhM61IM+EzrfOvSDPhc+Azr/Oss6/zrvOri4iCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1NzEKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlN0b3BwZWQgYXQgJHNoYTFfYWJicmV2Li4uICRyZXN0IgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1ODYKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCAnJHNxdWFzaF9zdHlsZScgd2l0aG91dCBhIHByZXZpb3VzIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjI4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJFeGVjdXRpbmc6ICRyZXN0IgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MzYKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkV4ZWN1dGlvbiBmYWlsZWQ6ICRyZXN0IgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MzgKK21zZ2lkICJhbmQgbWFkZSBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQwCittc2dpZCAiIgorIllvdSBjYW4gZml4IHRoZSBwcm9ibGVtLCBhbmQgdGhlbiBydW5cbiIKKyJcbiIKKyJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKK21zZ3N0ciAiIgorIs6cz4DOv8+BzrXOr8+EzrUgzr3OsSDOtM65zr/Pgc64z47Pg861z4TOtSDPhM6/IM+Az4HPjM6yzrvOt868zrEsIM66zrHOuSDOvM61z4TOrCDOvc6xIM+Ez4HOrc6+zrXPhM61XG4iCisiXG4iCisiXHRnaXQgcmViYXNlIC0tY29udGludWUiCisKKyMuIFRSQU5TTEFUT1JTOiBhZnRlciB0aGVzZSBsaW5lcyBpcyBhIGNvbW1hbmQgdG8gYmUgaXNzdWVkIGJ5IHRoZSB1c2VyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjUzCisjLCBzaC1mb3JtYXQKK21zZ2lkICIiCisiRXhlY3V0aW9uIHN1Y2NlZWRlZDogJHJlc3RcbiIKKyJidXQgbGVmdCBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZVxuIgorIkNvbW1pdCBvciBzdGFzaCB5b3VyIGNoYW5nZXMsIGFuZCB0aGVuIHJ1blxuIgorIlxuIgorIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NjQKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlVua25vd24gY29tbWFuZDogJGNvbW1hbmQgJHNoYTEgJHJlc3QiCittc2dzdHIgIiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY2NQorbXNnaWQgIlBsZWFzZSBmaXggdGhpcyB1c2luZyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycuIgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MDAKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlN1Y2Nlc3NmdWxseSByZWJhc2VkIGFuZCB1cGRhdGVkICRoZWFkX25hbWUuIgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NTcKK21zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIENIRVJSWV9QSUNLX0hFQUQiCittc2dzdHIgIiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc2MgorIywgc2gtZm9ybWF0Cittc2dpZCAiIgorIllvdSBoYXZlIHN0YWdlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLlxuIgorIklmIHRoZXNlIGNoYW5nZXMgYXJlIG1lYW50IHRvIGJlXG4iCisic3F1YXNoZWQgaW50byB0aGUgcHJldmlvdXMgY29tbWl0LCBydW46XG4iCisiXG4iCisiICBnaXQgY29tbWl0IC0tYW1lbmQgJGdwZ19zaWduX29wdF9xdW90ZWRcbiIKKyJcbiIKKyJJZiB0aGV5IGFyZSBtZWFudCB0byBnbyBpbnRvIGEgbmV3IGNvbW1pdCwgcnVuOlxuIgorIlxuIgorIiAgZ2l0IGNvbW1pdCAkZ3BnX3NpZ25fb3B0X3F1b3RlZFxuIgorIlxuIgorIkluIGJvdGggY2FzZXMsIG9uY2UgeW91J3JlIGRvbmUsIGNvbnRpbnVlIHdpdGg6XG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKK21zZ3N0ciAiIgorIs6Iz4fOtc+EzrUgz4DPgc6/zrXPhM6/zrnOvM6xz4POvM6tzr3Otc+CIM6xzrvOu86xzrPOrc+CIM+Dz4TOvyDOtM6tzr3PhM+Bzr8gzrXPgc6zzrHPg86vzrHPgiDPg86xz4IuXG4iCisizpHOvSDOsc+Fz4TOrc+CIM6/zrkgzrHOu867zrHOs86tz4Igz4DPgc6tz4DOtc65IM69zrEgXG4iCisiz4PPhc68z4DPhM+Fz4fOuM6/z43OvSDOvM6tz4POsSDPg8+EzrfOvSDPgM+Bzr/Ot86zzr/Pjc68zrXOvc63IM+Fz4DOv86yzr/Ou86uLCDPhM+Bzq3Ovs+EzrU6XG4iCisiXG4iCisiICBnaXQgY29tbWl0IC0tYW1lbmQgJGdwZ19zaWduX29wdF9xdW90ZWRcbiIKKyJcbiIKKyLOkc69IM+Az4HOrc+AzrXOuSDOvc6xIM+AzqzOvc61IM+DzrUgzr3Orc6xIM+Fz4DOv86yzr/Ou86uLCDPhM+Bzq3Ovs+EzrU6XG4iCisiXG4iCisiICBnaXQgY29tbWl0ICRncGdfc2lnbl9vcHRfcXVvdGVkXG4iCisiXG4iCisizprOsc65IM+Dz4TOuc+CIM60z43OvyDPgM61z4HOuc+Az4TPjs+DzrXOuc+CLCDOvM+MzrvOuc+CIM+EzrXOu861zrnPjs+DzrXPhM61LCDPg8+Fzr3Otc+Hzq/Pg8+EzrUgzrzOtTpcbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzc5Cittc2dpZCAiRXJyb3IgdHJ5aW5nIHRvIGZpbmQgdGhlIGF1dGhvciBpZGVudGl0eSB0byBhbWVuZCBjb21taXQiCittc2dzdHIgIiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc4NAorbXNnaWQgIiIKKyJZb3UgaGF2ZSB1bmNvbW1pdHRlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLiBQbGVhc2UgY29tbWl0IHRoZW1cbiIKKyJmaXJzdCBhbmQgdGhlbiBydW4gJ2dpdCByZWJhc2UgLS1jb250aW51ZScgYWdhaW4uIgorbXNnc3RyICIiCisizojPh861z4TOtSDOvM63IM+Dz4XOs8+Hz4nOvc61z4XOvM6tzr3Otc+CIM6xzrvOu86xzrPOrc+CIM+Dz4TOvyDOtM6tzr3PhM+Bzr8gzrXPgc6zzrHPg86vzrHPgiDPg86xz4IuIM6gzrHPgc6xzrrOsc67z44gz4XPgM6/zrLOrM67zrXPhM6tICIKKyLPhM65z4JcbiIKKyLPgM+Bz47PhM6xIM66zrHOuSDOvM61z4TOrCDPhM+Bzq3Ovs+EzrUgJ2dpdCByZWJhc2UgLS1jb250aW51ZScgz4DOrM67zrkuIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzg5IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3OTMKK21zZ2lkICJDb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODI0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MTAKK21zZ2lkICJDb3VsZCBub3QgZXhlY3V0ZSBlZGl0b3IiCittc2dzdHIgIiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg0NQorIywgc2gtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGNoZWNrb3V0ICRzd2l0Y2hfdG8iCittc2dzdHIgIiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1MgorbXNnaWQgIk5vIEhFQUQ/IgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NTMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5ICRzdGF0ZV9kaXIiCittc2dzdHIgIiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1NgorbXNnaWQgIkNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4ODgKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgb250byAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmQpIgorbXNnaWRfcGx1cmFsICJSZWJhc2UgJHNob3J0cmV2aXNpb25zIG9udG8gJHNob3J0b250byAoJHRvZG9jb3VudCBjb21tYW5kcykiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTQyIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDcKK21zZ2lkICJDb3VsZCBub3QgaW5pdCByZXdyaXR0ZW4gY29tbWl0cyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6ODkgZ2l0LXNoLXNldHVwLnNoOjk0CisjLCBzaC1mb3JtYXQKK21zZ2lkICJ1c2FnZTogJGRhc2hsZXNzICRVU0FHRSIKK21zZ3N0ciAiz4fPgc6uz4POtzogJGRhc2hsZXNzICRVU0FHRSIKKworIzogZ2l0LXNoLXNldHVwLnNoOjE5MAorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90IGNoZGlyIHRvICRjZHVwLCB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MTk5IGdpdC1zaC1zZXR1cC5zaDoyMDYKKyMsIHNoLWZvcm1hdAorbXNnaWQgImZhdGFsOiAkcHJvZ3JhbV9uYW1lIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgYSB3b3JraW5nIHRyZWUuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjAKK21zZ2lkICJDYW5ub3QgcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MjIzCittc2dpZCAiQ2Fubm90IHJld3JpdGUgYnJhbmNoZXM6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjYKK21zZ2lkICJDYW5ub3QgcHVsbCB3aXRoIHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCittc2dzdHIgIiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjIyOQorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90ICRhY3Rpb246IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNDIKK21zZ2lkICJDYW5ub3QgcmViYXNlOiBZb3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNDUKK21zZ2lkICJDYW5ub3QgcHVsbCB3aXRoIHJlYmFzZTogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3QgJGFjdGlvbjogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MjUyCittc2dpZCAiQWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgorbXNnc3RyICLOlc+AzrnPgM+Bz4zPg864zrXPhM6xLCDPhM6/IM61z4XPgc61z4TOrs+BzrnPjCDPg86xz4Igz4DOtc+BzrnOrc+HzrXOuSDOvM63IM+Fz4DOv86yzrXOss67zrfOvM6tzr3Otc+CIM6xzrvOu86xzrPOrc+CLiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjM3MgorbXNnaWQgIllvdSBuZWVkIHRvIHJ1biB0aGlzIGNvbW1hbmQgZnJvbSB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZS4iCittc2dzdHIgIiIKKyLOp8+BzrXOuc6szrbOtc+EzrHOuSDOvc6xIM+Ez4HOrc6+zrXPhM61IM6xz4XPhM6uIM+EzrfOvSDOtc69z4TOv867zq4gzrHPgM+MIM+Ezr8gz4jOt867z4zPhM61z4HOvyDOtc+Azq/PgM61zrTOvyDPhM6/z4UgzrTOrc69z4TPgc6/z4UgIgorIs61z4HOs86xz4POr86xz4IuIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6Mzc3Cittc2dpZCAiVW5hYmxlIHRvIGRldGVybWluZSBhYnNvbHV0ZSBwYXRoIG9mIGdpdCBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IHlvdSBjYW4gYWRqdXN0IHRoaXMgdG8gYWxpZ24gImdpdCBhZGQgLWkiIHN0YXR1cyBtZW51CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlMTJzICUxMnMgJXMiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKK21zZ2lkICJzdGFnZWQiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKK21zZ2lkICJ1bnN0YWdlZCIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI1MyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI3OAorbXNnaWQgImJpbmFyeSIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxNgorbXNnaWQgIm5vdGhpbmciCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyOTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMTMKK21zZ2lkICJ1bmNoYW5nZWQiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWRkZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJhZGRlZCAlZCBwYXRoc1xuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXBkYXRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInVwZGF0ZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjE1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInJldmVydGVkICVkIHBhdGhcbiIKK21zZ2lkX3BsdXJhbCAicmV2ZXJ0ZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRvdWNoZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJ0b3VjaGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyNworbXNnaWQgIlVwZGF0ZSIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzOQorbXNnaWQgIlJldmVydCIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY2MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJub3RlOiAlcyBpcyB1bnRyYWNrZWQgbm93LlxuIgorbXNnc3RyICLPg863zrzOtc6vz4nPg863OiDPhM6/ICVzIM60zrXOvSDPgM6xz4HOsc66zr/Ou86/z4XOuM61zq/PhM6xzrkgz4TPjs+BzrEuXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjczCittc2dpZCAiQWRkIHVudHJhY2tlZCIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3OQorbXNnaWQgIk5vIHVudHJhY2tlZCBmaWxlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwMzMKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKKyJtYXJrZWQgZm9yIHN0YWdpbmcuIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTAzNgorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgorIm1hcmtlZCBmb3Igc3Rhc2hpbmcuIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTAzOQorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgorIm1hcmtlZCBmb3IgdW5zdGFnaW5nLiIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNDIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDUxCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCisibWFya2VkIGZvciBhcHBseWluZy4iCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDQ1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA0OAorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgorIm1hcmtlZCBmb3IgZGlzY2FyZGluZy4iCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDg1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGh1bmsgZWRpdCBmaWxlIGZvciB3cml0aW5nOiAlcyIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwODYKK21zZ2lkICJNYW51YWwgaHVuayBlZGl0IG1vZGUgLS0gc2VlIGJvdHRvbSBmb3IgYSBxdWljayBndWlkZS5cbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwOTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIi0tLVxuIgorIlRvIHJlbW92ZSAnJXMnIGxpbmVzLCBtYWtlIHRoZW0gJyAnIGxpbmVzIChjb250ZXh0KS5cbiIKKyJUbyByZW1vdmUgJyVzJyBsaW5lcywgZGVsZXRlIHRoZW0uXG4iCisiTGluZXMgc3RhcnRpbmcgd2l0aCAlcyB3aWxsIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6ICdpdCcgcmVmZXJzIHRvIHRoZSBwYXRjaCBtZW50aW9uZWQgaW4gdGhlIHByZXZpb3VzIG1lc3NhZ2VzLgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTAwCittc2dpZCAiIgorIklmIGl0IGRvZXMgbm90IGFwcGx5IGNsZWFubHksIHlvdSB3aWxsIGJlIGdpdmVuIGFuIG9wcG9ydHVuaXR5IHRvXG4iCisiZWRpdCBhZ2Fpbi4gIElmIGFsbCBsaW5lcyBvZiB0aGUgaHVuayBhcmUgcmVtb3ZlZCwgdGhlbiB0aGUgZWRpdCBpc1xuIgorImFib3J0ZWQgYW5kIHRoZSBodW5rIGlzIGxlZnQgdW5jaGFuZ2VkLlxuIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KKyMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dAorIy4gYXQgdGhpcyBwb2ludC4KKyMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCisjLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgorIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMTMKK21zZ2lkICIiCisiWW91ciBlZGl0ZWQgaHVuayBkb2VzIG5vdCBhcHBseS4gRWRpdCBhZ2FpbiAoc2F5aW5nIFwibm9cIiBkaXNjYXJkcyEpIFt5L25dPyAiCittc2dzdHIgIiIKKyLOlyDOtc+AzrXOvs61z4HOs86xz4POvM6tzr3OtyDOsc67zrvOsc6zzq4gz4POsc+CIM60zrXOvSDOtc+GzrHPgc68z4zOts61z4TOsc65LiDOnc6xIM6zzq/Ovc61zrkgzrXPgM61zr7Otc+BzrPOsc+Dzq/OsSDPgM6szrvOuSAozrzOtSBcIm4iCisiXCIgzrHPgM6/z4HPgc6vz4DPhM61z4TOsc65ISkgW3kvbl07IgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMjIKK21zZ2lkICIiCisieSAtIHN0YWdlIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFnZSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKyJ5IC0gz4DPgc6/zrXPhM6/zrnOvM6xz4POr86xIM6xz4XPhM6uz4Igz4TOt8+CIM6xzrvOu86xzrPOrs+CXG4iCisibiAtIM+Mz4fOuSDPgM+Bzr/Otc+Ezr/Ouc68zrHPg86vzrEgzrHPhc+Ezq7PgiDPhM63z4IgzrHOu867zrHOs86uz4JcbiIKKyJxIC0gzq3Ovs6/zrTOv8+CLCDPjM+Hzrkgz4DPgc6/zrXPhM6/zrnOvM6xz4POr86xIM6xz4XPhM6uz4Igz4TOt8+CIM6xzrvOu86xzrPOrs+CIM6uIM66zrHOvM6vzrHPgiDOsc+Az4wgz4zPg861z4IgzrHPgM6/zrzOrc69zr/Phc69XG4iCisiYSAtIM+Az4HOv861z4TOv865zrzOsc+Dzq/OsSDOsc+Fz4TOrs+CIM+EzrfPgiDOsc67zrvOsc6zzq7PgiDOus6xzrkgz4zOu8+Jzr0gz4TPic69IM61z4DPjM68zrXOvc+Jzr0gzrHOu867zrHOs8+Ozr0gz4PPhM6/IM6xz4HPh861zq/Ov1xuIgorImQgLSDPjM+Hzrkgz4DPgc6/zrXPhM6/zrnOvM6xz4POr86xIM6xz4XPhM6uz4Igz4TOt8+CIM6xzrvOu86xzrPOrs+CIM6uIM66zrHOvM6vzrHPgiDOsc+Az4wgz4TOuc+CIM61z4DPjM68zrXOvc61z4IgzrHOu867zrHOs86tz4Igz4PPhM6/ICIKKyLOsc+Bz4fOtc6vzr8iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIyOAorbXNnaWQgIiIKKyJ5IC0gc3Rhc2ggdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCBzdGFzaCB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHN0YXNoIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHN0YXNoIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBzdGFzaCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSDOsc+Azr/OuM6uzrrOtc+Fz4POtyDOsc+Fz4TOrs+CIM+EzrfPgiDOsc67zrvOsc6zzq7PglxuIgorIm4gLSDPjM+HzrkgzrHPgM6/zrjOrs66zrXPhc+DzrcgzrHPhc+Ezq7PgiDPhM63z4IgzrHOu867zrHOs86uz4JcbiIKKyJxIC0gzq3Ovs6/zrTOv8+CLCDPjM+HzrkgzrHPgM6/zrjOrs66zrXPhc+DzrcgzrHPhc+Ezq7PgiDPhM63z4IgzrHOu867zrHOs86uz4Igzq4gzrrOsc68zq/Osc+CIM6xz4DPjCDPjM+DzrXPgiDOsc+Azr/OvM6tzr3Ov8+Fzr1cbiIKKyJhIC0gzrHPgM6/zrjOrs66zrXPhc+DzrcgzrHPhc+Ezq7PgiDPhM63z4IgzrHOu867zrHOs86uz4IgzrrOsc65IM+MzrvPic69IM+Ez4nOvSDOtc+Az4zOvM61zr3Pic69IM6xzrvOu86xzrPPjs69IM+Dz4TOvyDOsc+Bz4fOtc6vzr9cbiIKKyJkIC0gz4zPh865IM6xz4DOv864zq7Ous61z4XPg863IM6xz4XPhM6uz4Igz4TOt8+CIM6xzrvOu86xzrPOrs+CIM6uIM66zrHOvM6vzrHPgiDOsc+Az4wgz4TOuc+CIM61z4DPjM68zrXOvc61z4IgzrHOu867zrHOs86tz4Igz4PPhM6/ICIKKyLOsc+Bz4fOtc6vzr8iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIzNAorbXNnaWQgIiIKKyJ5IC0gdW5zdGFnZSB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHVuc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKyJ5IC0gzrHPgM6/z4DPgc6/zrXPhM6/zrnOvM6xz4POr86xIM6xz4XPhM6uz4Igz4TOt8+CIM6xzrvOu86xzrPOrs+CXG4iCisibiAtIM+Mz4fOuSDOsc+Azr/PgM+Bzr/Otc+Ezr/Ouc68zrHPg86vzrEgzrHPhc+Ezq7PgiDPhM63z4IgzrHOu867zrHOs86uz4JcbiIKKyJxIC0gzq3Ovs6/zrTOv8+CLCDPjM+HzrkgzrHPgM6/z4DPgc6/zrXPhM6/zrnOvM6xz4POr86xIM6xz4XPhM6uz4Igz4TOt8+CIM6xzrvOu86xzrPOrs+CIM6uIM66zrHOvM6vzrHPgiDOsc+Az4wgz4zPg861z4IgIgorIs6xz4DOv868zq3Ovc6/z4XOvVxuIgorImEgLSDOsc+Azr/PgM+Bzr/Otc+Ezr/Ouc68zrHPg86vzrEgzrHPhc+Ezq7PgiDPhM63z4IgzrHOu867zrHOs86uz4IgzrrOsc65IM+MzrvPic69IM+Ez4nOvSDOtc+Az4zOvM61zr3Pic69IM6xzrvOu86xzrPPjs69IM+Dz4TOvyAiCisizrHPgc+HzrXOr86/XG4iCisiZCAtIM+Mz4fOuSDOsc+Azr/PgM+Bzr/Otc+Ezr/Ouc68zrHPg86vzrEgzrHPhc+Ezq7PgiDPhM63z4IgzrHOu867zrHOs86uz4Igzq4gzrrOsc68zq/Osc+CIM6xz4DPjCDPhM65z4IgzrXPgM+MzrzOtc69zrXPgiDOsc67zrvOsc6zzq3PgiAiCisiz4PPhM6/IM6xz4HPh861zq/OvyIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjQwCittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0NgorbXNnaWQgIiIKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI1MgorbXNnaWQgIiIKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGRpc2NhcmQgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjU4Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjczCittc2dpZCAiIgorImcgLSBzZWxlY3QgYSBodW5rIHRvIGdvIHRvXG4iCisiLyAtIHNlYXJjaCBmb3IgYSBodW5rIG1hdGNoaW5nIHRoZSBnaXZlbiByZWdleFxuIgorImogLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgbmV4dCB1bmRlY2lkZWQgaHVua1xuIgorIkogLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgbmV4dCBodW5rXG4iCisiayAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBwcmV2aW91cyB1bmRlY2lkZWQgaHVua1xuIgorIksgLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgcHJldmlvdXMgaHVua1xuIgorInMgLSBzcGxpdCB0aGUgY3VycmVudCBodW5rIGludG8gc21hbGxlciBodW5rc1xuIgorImUgLSBtYW51YWxseSBlZGl0IHRoZSBjdXJyZW50IGh1bmtcbiIKKyI/IC0gcHJpbnQgaGVscFxuIgorbXNnc3RyICIiCisiZyAtIM61z4DOuc67zr/Os86uIM6xzrvOu86xzrPOrs+CIM6zzrnOsSDOvc6xIM+AzqzPhM61XG4iCisiLyAtIM6xzr3Osc62zq7PhM63z4POtyDOs865zrEgzrHOu867zrHOs86uIM+Azr/PhSDPhM6xzrnPgc65zqzOts61zrkgzrzOtSDPhM63IM60zr/OuM61zq/Pg86xIM66zrHOvc6/zr3Ouc66zq4gzq3Ous+Gz4HOsc+DzrdcbiIKKyJqIC0gz4zPh865IM6xz4DPjM+GzrHPg863IM6zzrnOsSDOsc+Fz4TOriDPhM63zr0gzrHOu867zrHOs86uLCDOtM61z4Igz4TOt869IM61z4DPjM68zrXOvc63IM6xzrvOu86xzrPOriDPh8+Jz4HOr8+CIM6xz4DPjM+GzrHPg863XG4iCisiSiAtIM+Mz4fOuSDOsc+Az4zPhs6xz4POtyDOs865zrEgzrHPhc+Ezq4gz4TOt869IM6xzrvOu86xzrPOriwgzrTOtc+CIM+EzrfOvSDOtc+Az4zOvM61zr3OtyDOsc67zrvOsc6zzq5cbiIKKyJrIC0gz4zPh865IM6xz4DPjM+GzrHPg863IM6zzrnOsSDOsc+Fz4TOriDPhM63zr0gzrHOu867zrHOs86uLCDOtM61z4Igz4TOt869IM+Az4HOv863zrPOv8+NzrzOtc69zrcgzrHOu867zrHOs86uIM+Hz4nPgc6vz4IgIgorIs6xz4DPjM+GzrHPg863XG4iCisiSyAtIM+Mz4fOuSDOsc+Az4zPhs6xz4POtyDOs865zrEgzrHPhc+Ezq4gz4TOt869IM6xzrvOu86xzrPOriwgzrTOtc+CIM+EzrfOvSDPgM+Bzr/Ot86zzr/Pjc68zrXOvc63IM6xzrvOu86xzrPOrlxuIgorInMgLSDPhM61zrzOrM+HzrnPg861IM+EzrfOvSDPhM+Bzq3Ph86/z4XPg86xIM6xzrvOu86xzrPOriDPg861IM68zrnOus+Bz4zPhM61z4HOtc+CIM6xzrvOu86xzrPOrc+CXG4iCisiZSAtIM+HzrXOuc+Bzr/Ous6vzr3Ot8+EzrcgzrXPgM61zr7Otc+BzrPOsc+Dzq/OsSDPhM63z4Igz4DOsc+Bzr/Pjc+DzrHPgiDOsc67zrvOsc6zzq7PglxuIgorIj8gLSDPgM+Bzr/Oss6/zrvOriDOss6/zq7OuM61zrnOsc+CXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwNAorbXNnaWQgIlRoZSBzZWxlY3RlZCBodW5rcyBkbyBub3QgYXBwbHkgdG8gdGhlIGluZGV4IVxuIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwNQorbXNnaWQgIkFwcGx5IHRoZW0gdG8gdGhlIHdvcmt0cmVlIGFueXdheT8gIgorbXNnc3RyICLOnc6xIM6zzq/Ovc61zrkgz4DOrM+BzrHPhc+EzrEgzrXPhs6xz4HOvM6/zrPOriDPhM6/z4XPgiDPg8+Ezr8gzrTOrc69z4TPgc6/IM61z4HOs86xz4POr86xz4I7ICIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzA4Cittc2dpZCAiTm90aGluZyB3YXMgYXBwbGllZC5cbiIKK21zZ3N0ciAizpTOtc69IM61z4bOsc+BzrzPjM+Dz4TOt866zrUgz4TOr8+Azr/PhM6xLlxuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgdW5tZXJnZWQ6ICVzXG4iCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzI4Cittc2dpZCAiT25seSBiaW5hcnkgZmlsZXMgY2hhbmdlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMzAKK21zZ2lkICJObyBjaGFuZ2VzLlxuIgorbXNnc3RyICLOlM61zr0gz4XPgM6sz4HPh86/z4XOvSDOsc67zrvOsc6zzq3Pgi5cbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzM4Cittc2dpZCAiUGF0Y2ggdXBkYXRlIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3Rhc2ggbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzk2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YXNoIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorIs6dzrEgzrPOr869zrXOuSDOtc+GzrHPgc68zr/Os86uIM+EzrfPgiDOsc67zrvOsc6zzq7PgiDOu861zrnPhM6/z4XPgc6zzq/Osc+CIM+Dz4TOvyDOtc+Fz4HOtc+Ezq7Pgc65zr8gW3ksbixxLGEsZCVzLD9dOyAiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBkZWxldGlvbiB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDExCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBkZWxldGlvbiBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDIwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorIs6dzrEgzrPOr869zrXOuSDOtc+GzrHPgc68zr/Os86uIM+EzrfPgiDOsc67zrvOsc6zzq7PgiDOu861zrnPhM6/z4XPgc6zzq/Osc+CIM+Dz4TOvyDOtc+Fz4HOtc+Ezq7Pgc65zr8gzrrOsc65IM+Ezr8gzrTOrc69z4TPgc6/ICIKKyLOtc+BzrPOsc+Dzq/Osc+CIFt5LG4scSxhLGQlcyw/XTsgIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQyMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTUyMgorbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIGdvdG9cbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MjkKK21zZ2lkICJnbyB0byB3aGljaCBodW5rICg8cmV0PiB0byBzZWUgbW9yZSk/ICIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MzEKK21zZ2lkICJnbyB0byB3aGljaCBodW5rPyAiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkludmFsaWQgbnVtYmVyOiAnJXMnXG4iCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQ1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNvcnJ5LCBvbmx5ICVkIGh1bmsgYXZhaWxhYmxlLlxuIgorbXNnaWRfcGx1cmFsICJTb3JyeSwgb25seSAlZCBodW5rcyBhdmFpbGFibGUuXG4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzEKK21zZ2lkICJObyBvdGhlciBodW5rcyB0byBzZWFyY2hcbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzUKK21zZ2lkICJzZWFyY2ggZm9yIHJlZ2V4PyAiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTg4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIk1hbGZvcm1lZCBzZWFyY2ggcmVnZXhwICVzOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU5OAorbXNnaWQgIk5vIGh1bmsgbWF0Y2hlcyB0aGUgZ2l2ZW4gcGF0dGVyblxuIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxMCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MzIKK21zZ2lkICJObyBwcmV2aW91cyBodW5rXG4iCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjE5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYzOAorbXNnaWQgIk5vIG5leHQgaHVua1xuIgorbXNnc3RyICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY0NAorbXNnaWQgIlNvcnJ5LCBjYW5ub3Qgc3BsaXQgdGhpcyBodW5rXG4iCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNwbGl0IGludG8gJWQgaHVuay5cbiIKK21zZ2lkX3BsdXJhbCAiU3BsaXQgaW50byAlZCBodW5rcy5cbiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY2MAorbXNnaWQgIlNvcnJ5LCBjYW5ub3QgZWRpdCB0aGlzIGh1bmtcbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MDYKK21zZ2lkICJSZXZpZXcgZGlmZiIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGRvIG5vdCB0cmFuc2xhdGUgdGhlIGNvbW1hbmQgbmFtZXMKKyMuICdzdGF0dXMnLCAndXBkYXRlJywgJ3JldmVydCcsIGV0Yy4KKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcyNQorbXNnaWQgIiIKKyJzdGF0dXMgICAgICAgIC0gc2hvdyBwYXRocyB3aXRoIGNoYW5nZXNcbiIKKyJ1cGRhdGUgICAgICAgIC0gYWRkIHdvcmtpbmcgdHJlZSBzdGF0ZSB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzXG4iCisicmV2ZXJ0ICAgICAgICAtIHJldmVydCBzdGFnZWQgc2V0IG9mIGNoYW5nZXMgYmFjayB0byB0aGUgSEVBRCB2ZXJzaW9uXG4iCisicGF0Y2ggICAgICAgICAtIHBpY2sgaHVua3MgYW5kIHVwZGF0ZSBzZWxlY3RpdmVseVxuIgorImRpZmYgICAgICAgICAgLSB2aWV3IGRpZmYgYmV0d2VlbiBIRUFEIGFuZCBpbmRleFxuIgorImFkZCB1bnRyYWNrZWQgLSBhZGQgY29udGVudHMgb2YgdW50cmFja2VkIGZpbGVzIHRvIHRoZSBzdGFnZWQgc2V0IG9mICIKKyJjaGFuZ2VzXG4iCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzQyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc0NworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzUwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1NworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzYxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2NworbXNnaWQgIm1pc3NpbmcgLS0iCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzYzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gLS1wYXRjaCBtb2RlOiAlcyIKK21zZ3N0ciAiIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgYXJndW1lbnQgJXMsIGV4cGVjdGluZyAtLSIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEzOAorbXNnaWQgImxvY2FsIHpvbmUgZGlmZmVycyBmcm9tIEdNVCBieSBhIG5vbi1taW51dGUgaW50ZXJ2YWxcbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NSBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MQorbXNnaWQgImxvY2FsIHRpbWUgb2Zmc2V0IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAyNCBob3Vyc1xuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjE5IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjI1Cittc2dpZCAidGhlIGVkaXRvciBleGl0ZWQgdW5jbGVhbmx5LCBhYm9ydGluZyBldmVyeXRoaW5nIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzAyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyInJXMnIGNvbnRhaW5zIGFuIGludGVybWVkaWF0ZSB2ZXJzaW9uIG9mIHRoZSBlbWFpbCB5b3Ugd2VyZSBjb21wb3NpbmcuXG4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDozMDcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJyVzLmZpbmFsJyBjb250YWlucyB0aGUgY29tcG9zZWQgZW1haWwuXG4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDozMjYKK21zZ2lkICItLWR1bXAtYWxpYXNlcyBpbmNvbXBhdGlibGUgd2l0aCBvdGhlciBvcHRpb25zXG4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDozOTUgZ2l0LXNlbmQtZW1haWwucGVybDo2NTAKK21zZ2lkICJDYW5ub3QgcnVuIGdpdCBmb3JtYXQtcGF0Y2ggZnJvbSBvdXRzaWRlIGEgcmVwb3NpdG9yeVxuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Mzk4Cittc2dpZCAiIgorImBiYXRjaC1zaXplYCBhbmQgYHJlbG9naW5gIG11c3QgYmUgc3BlY2lmaWVkIHRvZ2V0aGVyICh2aWEgY29tbWFuZC1saW5lIG9yICIKKyJjb25maWd1cmF0aW9uIG9wdGlvbilcbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJVbmtub3duIC0tc3VwcHJlc3MtY2MgZmllbGQ6ICclcydcbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ5NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJVbmtub3duIC0tY29uZmlybSBzZXR0aW5nOiAnJXMnXG4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAid2FybmluZzogc2VuZG1haWwgYWxpYXMgd2l0aCBxdW90ZXMgaXMgbm90IHN1cHBvcnRlZDogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ3YXJuaW5nOiBgOmluY2x1ZGU6YCBub3Qgc3VwcG9ydGVkOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTI5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIndhcm5pbmc6IGAvZmlsZWAgb3IgYHxwaXBlYCByZWRpcmVjdGlvbiBub3Qgc3VwcG9ydGVkOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIndhcm5pbmc6IHNlbmRtYWlsIGxpbmUgaXMgbm90IHJlY29nbml6ZWQ6ICVzXG4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo2MTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIkZpbGUgJyVzJyBleGlzdHMgYnV0IGl0IGNvdWxkIGFsc28gYmUgdGhlIHJhbmdlIG9mIGNvbW1pdHNcbiIKKyJ0byBwcm9kdWNlIHBhdGNoZXMgZm9yLiAgUGxlYXNlIGRpc2FtYmlndWF0ZSBieS4uLlxuIgorIlxuIgorIiAgICAqIFNheWluZyBcIi4vJXNcIiBpZiB5b3UgbWVhbiBhIGZpbGU7IG9yXG4iCisiICAgICogR2l2aW5nIC0tZm9ybWF0LXBhdGNoIG9wdGlvbiBpZiB5b3UgbWVhbiBhIHJhbmdlLlxuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjM3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBvcGVuZGlyICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY2MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiZmF0YWw6ICVzOiAlc1xuIgorIndhcm5pbmc6IG5vIHBhdGNoZXMgd2VyZSBzZW50XG4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NzIKK21zZ2lkICIiCisiXG4iCisiTm8gcGF0Y2ggZmlsZXMgc3BlY2lmaWVkIVxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Njg1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIk5vIHN1YmplY3QgbGluZSBpbiAlcz8iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo2OTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIG9wZW4gZm9yIHdyaXRpbmcgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzA2Cittc2dpZCAiIgorIkxpbmVzIGJlZ2lubmluZyBpbiBcIkdJVDpcIiB3aWxsIGJlIHJlbW92ZWQuXG4iCisiQ29uc2lkZXIgaW5jbHVkaW5nIGFuIG92ZXJhbGwgZGlmZnN0YXQgb3IgdGFibGUgb2YgY29udGVudHNcbiIKKyJmb3IgdGhlIHBhdGNoIHlvdSBhcmUgd3JpdGluZy5cbiIKKyJcbiIKKyJDbGVhciB0aGUgYm9keSBjb250ZW50IGlmIHlvdSBkb24ndCB3aXNoIHRvIHNlbmQgYSBzdW1tYXJ5LlxuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzMwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBvcGVuICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc0NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gb3BlbiAlcy5maW5hbDogJXMiCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo3OTAKK21zZ2lkICJTdW1tYXJ5IGVtYWlsIGlzIGVtcHR5LCBza2lwcGluZyBpdFxuIgorbXNnc3RyICIiCisKKyMuIFRSQU5TTEFUT1JTOiBwbGVhc2Uga2VlcCBbeS9OXSBhcyBpcy4KKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODI1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byB1c2UgPCVzPiBbeS9OXT8gIgorbXNnc3RyICLOlc+AzrnOss61zrLOsc65z47Ovc61z4TOtSDPgM+Jz4IgzrjOrc67zrXPhM61IM69zrEgz4fPgc63z4POuc68zr/PgM6/zrnOrs+DzrXPhM61IDwlcz4gW3kvTl0/ICIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo4ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBmaWxlcyBhcmUgOGJpdCwgYnV0IGRvIG5vdCBkZWNsYXJlIGEgQ29udGVudC1UcmFuc2Zlci0iCisiRW5jb2RpbmcuXG4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo4ODUKK21zZ2lkICJXaGljaCA4Yml0IGVuY29kaW5nIHNob3VsZCBJIGRlY2xhcmUgW1VURi04XT8gIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJSZWZ1c2luZyB0byBzZW5kIGJlY2F1c2UgdGhlIHBhdGNoXG4iCisiXHQlc1xuIgorImhhcyB0aGUgdGVtcGxhdGUgc3ViamVjdCAnKioqIFNVQkpFQ1QgSEVSRSAqKionLiBQYXNzIC0tZm9yY2UgaWYgeW91IHJlYWxseSAiCisid2FudCB0byBzZW5kLlxuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTEyCittc2dpZCAiVG8gd2hvbSBzaG91bGQgdGhlIGVtYWlscyBiZSBzZW50IChpZiBhbnlvbmUpPyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkzMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYXRhbDogYWxpYXMgJyVzJyBleHBhbmRzIHRvIGl0c2VsZlxuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTQyCittc2dpZCAiTWVzc2FnZS1JRCB0byBiZSB1c2VkIGFzIEluLVJlcGx5LVRvIGZvciB0aGUgZmlyc3QgZW1haWwgKGlmIGFueSk/ICIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMDAgZ2l0LXNlbmQtZW1haWwucGVybDoxMDA4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVycm9yOiB1bmFibGUgdG8gZXh0cmFjdCBhIHZhbGlkIGFkZHJlc3MgZnJvbTogJXNcbiIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3FdIFtkXSBbZV0gaW4geW91cgorIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAorIy4gYXQgdGhpcyBwb2ludC4KKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAxMgorbXNnaWQgIldoYXQgdG8gZG8gd2l0aCB0aGlzIGFkZHJlc3M/IChbcV11aXR8W2Rdcm9wfFtlXWRpdCk6ICIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEzMjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ0EgcGF0aCBcIiVzXCIgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDEyCittc2dpZCAiIgorIiAgICBUaGUgQ2MgbGlzdCBhYm92ZSBoYXMgYmVlbiBleHBhbmRlZCBieSBhZGRpdGlvbmFsXG4iCisiICAgIGFkZHJlc3NlcyBmb3VuZCBpbiB0aGUgcGF0Y2ggY29tbWl0IG1lc3NhZ2UuIEJ5IGRlZmF1bHRcbiIKKyIgICAgc2VuZC1lbWFpbCBwcm9tcHRzIGJlZm9yZSBzZW5kaW5nIHdoZW5ldmVyIHRoaXMgb2NjdXJzLlxuIgorIiAgICBUaGlzIGJlaGF2aW9yIGlzIGNvbnRyb2xsZWQgYnkgdGhlIHNlbmRlbWFpbC5jb25maXJtXG4iCisiICAgIGNvbmZpZ3VyYXRpb24gc2V0dGluZy5cbiIKKyJcbiIKKyIgICAgRm9yIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24sIHJ1biAnZ2l0IHNlbmQtZW1haWwgLS1oZWxwJy5cbiIKKyIgICAgVG8gcmV0YWluIHRoZSBjdXJyZW50IGJlaGF2aW9yLCBidXQgc3F1ZWxjaCB0aGlzIG1lc3NhZ2UsXG4iCisiICAgIHJ1biAnZ2l0IGNvbmZpZyAtLWdsb2JhbCBzZW5kZW1haWwuY29uZmlybSBhdXRvJy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3ldIFtuXSBbZV0gW3FdIFthXSBpbiB5b3VyCisjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDI3Cittc2dpZCAiU2VuZCB0aGlzIGVtYWlsPyAoW3ldZXN8W25db3xbZV1kaXR8W3FddWl0fFthXWxsKTogIgorbXNnc3RyICLOnc6xIM6zzq/Ovc61zrkgzrHPgM6/z4PPhM6/zrvOriDOsc+Fz4TOv8+NIM+Ezr/PhSBlbWFpbDsgKFt5XWVzfFtuXW98W2VdZGl0fFtxXXVpdHxbYV1sbCk6ICIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDMwCittc2dpZCAiU2VuZCB0aGlzIGVtYWlsIHJlcGx5IHJlcXVpcmVkIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ1OAorbXNnaWQgIlRoZSByZXF1aXJlZCBTTVRQIHNlcnZlciBpcyBub3QgcHJvcGVybHkgZGVmaW5lZC4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IFNUQVJUVExTISAlcyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MTAgZ2l0LXNlbmQtZW1haWwucGVybDoxNTE0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNUQVJUVExTIGZhaWxlZCEgJXMiCittc2dzdHIgIs6kzr8gU1RBUlRUTFMgzrHPgM6tz4TPhc+HzrUhICVzIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MjMKK21zZ2lkICJVbmFibGUgdG8gaW5pdGlhbGl6ZSBTTVRQIHByb3Blcmx5LiBDaGVjayBjb25maWcgYW5kIHVzZSAtLXNtdHAtZGVidWcuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gc2VuZCAlc1xuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJEcnktU2VudCAlc1xuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJTZW50ICVzXG4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ2Cittc2dpZCAiRHJ5LU9LLiBMb2cgc2F5czpcbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDYKK21zZ2lkICJPSy4gTG9nIHNheXM6XG4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTU4Cittc2dpZCAiUmVzdWx0OiAiCittc2dzdHIgIs6Rz4DOv8+Ezq3Ou861z4POvM6xOiAiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU2MQorbXNnaWQgIlJlc3VsdDogT0tcbiIKK21zZ3N0ciAizpHPgM6/z4TOrc67zrXPg868zrE6IE9LXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBvcGVuIGZpbGUgJXMiCittc2dzdHIgIs60zrXOvSDOrs+EzrHOvSDOtM+Fzr3Osc+Ez4wgzr3OsSDOsc69zr/Ouc+Hz4TOtc6vIM+Ezr8gzrHPgc+HzrXOr86/ICVzIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MjYgZ2l0LXNlbmQtZW1haWwucGVybDoxNjQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIihtYm94KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjMyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIihtYm94KSBBZGRpbmcgdG86ICVzIGZyb20gbGluZSAnJXMnXG4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjg1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIihub24tbWJveCkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTcyMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIoYm9keSkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTgzMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIoJXMpIENvdWxkIG5vdCBleGVjdXRlICclcyciCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODM4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiglcykgQWRkaW5nICVzOiAlcyBmcm9tOiAnJXMnXG4iCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiglcykgZmFpbGVkIHRvIGNsb3NlIHBpcGUgdG8gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NzIKK21zZ2lkICJjYW5ub3Qgc2VuZCBtZXNzYWdlIGFzIDdiaXQiCittc2dzdHIgIiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODgwCittc2dpZCAiaW52YWxpZCB0cmFuc2ZlciBlbmNvZGluZyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MjEgZ2l0LXNlbmQtZW1haWwucGVybDoxOTczIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAlczogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IHBhdGNoIGNvbnRhaW5zIGEgbGluZSBsb25nZXIgdGhhbiA5OTggY2hhcmFjdGVycyIKK21zZ3N0ciAiIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NDEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiU2tpcHBpbmcgJXMgd2l0aCBiYWNrdXAgc3VmZml4ICclcycuXG4iCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBrZWVwICJbeXxOXSIgYXMgaXMuCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRG8geW91IHJlYWxseSB3YW50IHRvIHNlbmQgJXM/IFt5fE5dOiAiCittc2dzdHIgIiIKZGlmZiAtLWdpdCBhL3BvL2VzLnBvIGIvcG8vZXMucG8KaW5kZXggMjA0YmY5ZS4uNGE5NGVlOSAxMDA2NDQKLS0tIGEvcG8vZXMucG8KKysrIGIvcG8vZXMucG8KQEAgLTcsOCArNyw4IEBACiBtc2dzdHIgIiIKICJQcm9qZWN0LUlkLVZlcnNpb246IEdpdFxuIgogIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBHaXQgTWFpbGluZyBMaXN0IDxnaXRAdmdlci5rZXJuZWwub3JnPlxuIgotIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDE4LTEyLTAyIDEwOjU1KzA4MDBcbiIKLSJQTy1SZXZpc2lvbi1EYXRlOiAyMDE4LTEyLTAxIDIzOjE2LTA1MDBcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAyMC0wMy0xMSAxNToyNiswODAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAyMC0wMy0xMSAyMzoxOC0wNTAwXG4iCiAiTGFzdC1UcmFuc2xhdG9yOiBjaHJpc3RvcGhlci5kaWF6LnJpdkBnbWFpbC5jb21cbiIKICJMYW5ndWFnZS1UZWFtOiBDb2RlTGFib3JhIDxjb2RlbGFib3JhQGdtYWlsLmNvbT5cbiIKICJMYW5ndWFnZTogZXNcbiIKQEAgLTE2LDQwICsxNiw3MjkgQEAKICJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKICJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCiAiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9KG4gIT0gMSk7XG4iCi0iWC1HZW5lcmF0b3I6IFBvZWRpdCAyLjEuMVxuIgorIlgtR2VuZXJhdG9yOiBQb2VkaXQgMi4zXG4iCiAKLSM6IGFkdmljZS5jOjk5CisjOiBhZGQtaW50ZXJhY3RpdmUuYzozNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiSHVoICglcyk/IgorbXNnc3RyICLCv0FoaCAoJXMpPyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NTIxIGFkZC1pbnRlcmFjdGl2ZS5jOjgyMiBzZXF1ZW5jZXIuYzozMTI0CisjOiBzZXF1ZW5jZXIuYzozNTYyIGJ1aWx0aW4vcmViYXNlLmM6ODc1IGJ1aWx0aW4vcmViYXNlLmM6MTY4NworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDg2IGJ1aWx0aW4vcmViYXNlLmM6MjEzMAorbXNnaWQgImNvdWxkIG5vdCByZWFkIGluZGV4IgorbXNnc3RyICJubyBzZSBwdWRvIGxlZXIgw61uZGljZSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NTc2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjY5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI5NAorbXNnaWQgImJpbmFyeSIKK21zZ3N0ciAiYmluYXJpbyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjM0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjc4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMzMgorbXNnaWQgIm5vdGhpbmciCittc2dzdHIgIm5hZGEiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjYzNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMjkKK21zZ2lkICJ1bmNoYW5nZWQiCittc2dzdHIgInNpbiBjYW1iaW9zIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2NzIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NDMKK21zZ2lkICJVcGRhdGUiCittc2dzdHIgIkFjdHVhbGl6YXIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY4OSBhZGQtaW50ZXJhY3RpdmUuYzo4NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YWdlICclcyciCittc2dzdHIgIm5vIHNlIHB1ZG8gcG9uZXIgZW4gc3RhZ2UgJyVzJyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njk1IGFkZC1pbnRlcmFjdGl2ZS5jOjg4NCBzZXF1ZW5jZXIuYzozMzE3CisjOiBidWlsdGluL3JlYmFzZS5jOjg5OQorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBpbmRleCIKK21zZ3N0ciAibm8gc2UgcHVkbyBlc2NyaWJpciDDrW5kaWNlIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2OTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MjgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgInVwZGF0ZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJ1cGRhdGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gImFjdHVhbGl6YWRhICVkIHJ1dGFcbiIKK21zZ3N0clsxXSAiYWN0dWFsaXphZGFzICVkIHJ1dGFzXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjcxNiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3OAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAibm90ZTogJXMgaXMgdW50cmFja2VkIG5vdy5cbiIKK21zZ3N0ciAibm90YTogJXMgbm8gZXMgcmFzdHJlYWRvIGFob3JhLlxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3MjEgYXBwbHkuYzo0MTEwIGJ1aWx0aW4vY2hlY2tvdXQuYzoyODEKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFrZV9jYWNoZV9lbnRyeSBmYWlsZWQgZm9yIHBhdGggJyVzJyIKK21zZ3N0ciAibWFrZV9jYWNoZV9lbnRyeSBmYWxsw7MgcGFyYSBsYSBydXRhICclcyciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjc1MSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY1NQorbXNnaWQgIlJldmVydCIKK21zZ3N0ciAiUmV2ZXJ0aXIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjc2NworbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBIRUFEXnt0cmVlfSIKK21zZ3N0ciAibm8gc2UgcHVkbyBhbmFsaXphciBIRUFEXnt0cmVlfSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODA1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjMxCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJyZXZlcnRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInJldmVydGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gInJldmVydGlkYSAlZCBydXRhXG4iCittc2dzdHJbMV0gInJldmVydGlkYXMgJWQgcnV0YXNcbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODU2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Njk1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHVudHJhY2tlZCBmaWxlcy5cbiIKK21zZ3N0ciAiTm8gaGF5IGFyY2hpdm9zIHNpbiByYXN0cmVhci5cbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODYwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Njg5Cittc2dpZCAiQWRkIHVudHJhY2tlZCIKK21zZ3N0ciAiQWdyZWdhciBubyByYXN0cmVhZG9zIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4ODcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MjUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgImFkZGVkICVkIHBhdGhcbiIKK21zZ2lkX3BsdXJhbCAiYWRkZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAiYWdyZWdhZGEgJWQgcnV0YVxuIgorbXNnc3RyWzFdICJhZ3JlZ2FkYXMgJWQgcnV0YXNcbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHVubWVyZ2VkOiAlcyIKK21zZ3N0ciAiaWdub3JhbmRvIGxvIG5vIGZ1c2lvbmFkbzogJXMiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkyOSBhZGQtcGF0Y2guYzoxNjc1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2NgorIywgYy1mb3JtYXQKK21zZ2lkICJPbmx5IGJpbmFyeSBmaWxlcyBjaGFuZ2VkLlxuIgorbXNnc3RyICJTb2xvIGNhbWJpYXJvbiBhcmNoaXZvcyBiaW5hcmlvcy5cbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTMxIGFkZC1wYXRjaC5jOjE2NzMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzY4CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGNoYW5nZXMuXG4iCittc2dzdHIgIlNpbiBjYW1iaW9zLlxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5MzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzc2Cittc2dpZCAiUGF0Y2ggdXBkYXRlIgorbXNnc3RyICJBY3R1YWxpemFjacOzbiBkZWwgcGFyY2hlIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5NzQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzU0Cittc2dpZCAiUmV2aWV3IGRpZmYiCittc2dzdHIgIlJldmlzacOzbiBkZSAgZGlmZiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwMgorbXNnaWQgInNob3cgcGF0aHMgd2l0aCBjaGFuZ2VzIgorbXNnc3RyICJtb3N0cmFyIHJ1dGFzIGNvbiBjYW1iaW9zIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA0Cittc2dpZCAiYWRkIHdvcmtpbmcgdHJlZSBzdGF0ZSB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIgorbXNnc3RyICJhZ3JlZ2FyIGVzdGFkbyBkZWwgw6FyYm9sIGRlIHRyYWJham8gYWwgY29uanVudG8gZGUgY2FtYmlvcyBlbiBzdGFnZSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwNgorbXNnaWQgInJldmVydCBzdGFnZWQgc2V0IG9mIGNoYW5nZXMgYmFjayB0byB0aGUgSEVBRCB2ZXJzaW9uIgorbXNnc3RyICJyZXZlcnRpciBjb25qdW50byBkZSBjYW1iaW9zIGVuIHN0YWdlIGEgbGEgdmVyc2nDs24gZGUgSEVBRCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwOAorbXNnaWQgInBpY2sgaHVua3MgYW5kIHVwZGF0ZSBzZWxlY3RpdmVseSIKK21zZ3N0ciAiZWxlZ2lyIGh1bmtzIHkgYWN0dWFsaXphciBkZSBmb3JtYSBzZWxlY3RpdmEiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMTAKK21zZ2lkICJ2aWV3IGRpZmYgYmV0d2VlbiBIRUFEIGFuZCBpbmRleCIKK21zZ3N0ciAidmVyIGRpZmYgZW50cmUgSEVBRCBlIGluZGV4IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDEyCittc2dpZCAiYWRkIGNvbnRlbnRzIG9mIHVudHJhY2tlZCBmaWxlcyB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIgorbXNnc3RyICIiCisiYWdyZWdhciBjb250ZW5pZG9zIGRlIGFyY2hpdm9zIHNpbiByYXN0cmVhciBhbCBjb25qdW50byBkZSBjYW1iaW9zIGRlIHN0YWdlIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDIwIGFkZC1pbnRlcmFjdGl2ZS5jOjEwNjkKK21zZ2lkICJQcm9tcHQgaGVscDoiCittc2dzdHIgIk1vc3RyYXIgYXl1ZGE6IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDIyCittc2dpZCAic2VsZWN0IGEgc2luZ2xlIGl0ZW0iCittc2dzdHIgInNlbGVjY2lvbmEgdW4gw7puaWNvIG9iamV0byIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyNAorbXNnaWQgInNlbGVjdCBhIHJhbmdlIG9mIGl0ZW1zIgorbXNnc3RyICJzZWxlY2Npb25hIHVuIHJhbmdvIGRlIG9iamV0b3MiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjYKK21zZ2lkICJzZWxlY3QgbXVsdGlwbGUgcmFuZ2VzIgorbXNnc3RyICJzZWxlY2Npb25hIG11bHRpcGxlcyByYW5nb3MiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjggYWRkLWludGVyYWN0aXZlLmM6MTA3MworbXNnaWQgInNlbGVjdCBpdGVtIGJhc2VkIG9uIHVuaXF1ZSBwcmVmaXgiCittc2dzdHIgInNlbGVjY2lvbmFyIG9iamV0byBiYXNhZG8gZW4gcHJlZmlqbyDDum5pY28iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMzAKK21zZ2lkICJ1bnNlbGVjdCBzcGVjaWZpZWQgaXRlbXMiCittc2dzdHIgInF1aXRhciBvYmpldG9zIGVzcGVjaWZpY2Fkb3MiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMzIKK21zZ2lkICJjaG9vc2UgYWxsIGl0ZW1zIgorbXNnc3RyICJlc2NvZ2VyIHRvZG9zIGxvcyBvYmpldG9zIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDM0Cittc2dpZCAiKGVtcHR5KSBmaW5pc2ggc2VsZWN0aW5nIgorbXNnc3RyICIodmFjw61vKSBmaW5hbGl6YXIgc2VsZWNjacOzbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3MQorbXNnaWQgInNlbGVjdCBhIG51bWJlcmVkIGl0ZW0iCittc2dzdHIgInNlbGVjY2lvbmEgdW4gb2JqZXRvIG51bWVyYWRvIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDc1Cittc2dpZCAiKGVtcHR5KSBzZWxlY3Qgbm90aGluZyIKK21zZ3N0ciAiKHZhY8Otbykgc2VsZWNjaW9uYSBuYWRhIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDgzIGJ1aWx0aW4vY2xlYW4uYzo4MjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODUxCittc2dpZCAiKioqIENvbW1hbmRzICoqKiIKK21zZ3N0ciAiKioqIENvbWFuZG9zICoqKiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA4NCBidWlsdGluL2NsZWFuLmM6ODIzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTg0OAorbXNnaWQgIldoYXQgbm93IgorbXNnc3RyICJBaG9yYSBxdWUiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJzdGFnZWQiCittc2dzdHIgInJhc3RyZWFkbyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTEzNiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMworbXNnaWQgInVuc3RhZ2VkIgorbXNnc3RyICJubyByYXN0cmVhZG8iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgYXBwbHkuYzo0OTY3IGFwcGx5LmM6NDk3MCBidWlsdGluL2FtLmM6MjI1MQorIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9jbG9uZS5jOjEyMyBidWlsdGluL2ZldGNoLmM6MTQ0CisjOiBidWlsdGluL21lcmdlLmM6Mjc0IGJ1aWx0aW4vcHVsbC5jOjE4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTQ4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEzCittc2dpZCAicGF0aCIKK21zZ3N0ciAicnV0YSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTE0MworbXNnaWQgImNvdWxkIG5vdCByZWZyZXNoIGluZGV4IgorbXNnc3RyICJubyBzZSBwdWRvIHJlZnJlc2NhciBlbCBpbmRleCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTE1NyBidWlsdGluL2NsZWFuLmM6Nzg3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2NQorIywgYy1mb3JtYXQKK21zZ2lkICJCeWUuXG4iCittc2dzdHIgIkFkacOzcy5cbiIKKworIzogYWRkLXBhdGNoLmM6MzMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9DYW1iaW8gZGUgbW9kbyBkZSBzdGFnZSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI5CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9BcGxpY2FyIHN0YWdlIGFsIGJvcnJhZG8gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjM1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzMAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLCv0FwbGljYXIgc3RhZ2UgYSBlc3RlIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjM3Cittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorInN0YWdpbmcuIgorbXNnc3RyICIiCisiU2kgZWwgcGFyY2hlIGFwbGljYSBsaW1waWFtZW50ZSwgZWwgaHVuayBlZGl0YWRvIHNlcmEgbWFyY2FkbyBpbm1lZGlhdGFtZW50ZSAiCisicGFyYSBlbCDDoXJlYSBkZSBzdGFnZS4iCisKKyM6IGFkZC1wYXRjaC5jOjQwCittc2dpZCAiIgorInkgLSBzdGFnZSB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHN0YWdlIHRoaXMgaHVua1xuIgorInEgLSBxdWl0OyBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gYXBsaWNhciBzdGFnZSBhIGVzdGUgaHVua1xuIgorIm4gLSBubyBhcGxpY2FyIHN0YWdlIGEgZXN0ZSBodW5rXG4iCisicSAtIHF1aXQ7IG5vIGFwbGljYXIgc3RhZ2UgYSBlc3RlIGh1bmsgbyBuaW5ndW5vIGRlIGxvcyByZXN0YW50ZXNcbiIKKyJhIC0gYXBsaWNhciBzdGFnZSBhIGVzdGUgaHVuayB5IGEgdG9kb3MgbG9zIHBvc3RlcmlvcmVzIGVuIGVsIGFyY2hpdm8gXG4iCisiZCAtIG5vIGFwbGljYXIgc3RhZ2UgYSBlc3RlIGh1bmsgbyBhIG5pbmd1bm8gZGUgbG9zIHBvc3RlcmlvcmVzIGVuIGVzdGUgIgorImFyY2hpdm9cbiIKKworIzogYWRkLXBhdGNoLmM6NTQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDMzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9BcGxpY2FyIHN0YXNoIGFsIGNhbWJpbyBkZSBtb2RvIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo1NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YXNoIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLCv0FwbGljYXIgc3Rhc2ggYWwgYm9ycmFkbyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NTYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIsK/QXBsaWNhciBzdGFzaCBhIGVzdGUgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NTgKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisic3Rhc2hpbmcuIgorbXNnc3RyICIiCisiU2kgZWwgcGFyY2hlIGFwbGljYSBsaW1waWFtZW50ZSwgZWwgaHVuayBlZGl0YWRvIHNlcmEgbWFyY2FkbyBpbm1lZGlhdGFtZW50ZSAiCisicGFyYSBhcGxpY2FyIHN0YXNoLiIKKworIzogYWRkLXBhdGNoLmM6NjEKK21zZ2lkICIiCisieSAtIHN0YXNoIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFzaCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFzaCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBhcGxpY2FyIHN0YXNoIGEgZXN0ZSBodW5rXG4iCisibiAtIG5vIGFwbGljYXIgc3Rhc2ggYSBlc3RlIGh1bmtcbiIKKyJxIC0gcXVpdDsgbm8gYXBsaWNhciBzdGFzaCBhIGVzdGUgaHVuayBvIGEgbmluZ3VubyBkZSBsb3MgcmVzdGFudGVzXG4iCisiYSAtIGFwbGljYXIgc3Rhc2ggYSBlc3RlIGh1bmsgeSBhIHRvZG9zIGxvcyBwb3N0ZXJpb3JlcyBlbiBlbCBhcmNoaXZvXG4iCisiZCAtIG5vIGFwbGljYXIgc3Rhc2ggYSBlc3RlIGh1bmsgbyBuaW5ndW5vIGRlIGxvcyBwb3N0ZXJpb3JlcyBlbiBlbCBhcmNoaXZvXG4iCisKKyM6IGFkZC1wYXRjaC5jOjc3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5zdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9TYWNhciBjYW1iaW8gZGUgbW9kbyBkZWwgc3RhZ2UgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjc4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzOQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5zdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9TYWNhciBib3JyYWRvIGRlbCBzdGFnZSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NzkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9TYWNhciBlc3RlIGh1bmsgZGVsIHN0YWdlIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo4MQorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJ1bnN0YWdpbmcuIgorbXNnc3RyICIiCisiU2kgZWwgcGFyY2hlIGFwbGljYSBsaW1waWFtZW50ZSwgZWwgaHVuayBlZGl0YWRvIHNlcmEgbWFyY2FkbyBpbm1lZGlhdGFtZW50ZSAiCisicGFyYSBzYWNhciBkZWwgw6FyZWEgZGUgc3RhZ2UuIgorCisjOiBhZGQtcGF0Y2guYzo4NAorbXNnaWQgIiIKKyJ5IC0gdW5zdGFnZSB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHVuc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBzYWNhciBkZXNkZSBodW5rIGRlbCDDoXJlYSBkZSBzdGFnZVxuIgorIm4gLSBubyBzYWNhciBlc3RlIGh1bmsgZGVsIGFyZWEgZGUgc3RhZ2VcbiIKKyJxIC0gcXVpdDsgbm8gc2FjYXIgZGVsIGFyZWEgZGUgc3RhZ2UgZXN0ZSBodW5rIG8gbmluZ3VubyBkZSBsb3MgcmVzdGFudGVzXG4iCisiYSAtIHNhY2FyIGRlbCBhcmVhIGRlIHN0YWdlIGVzdGUgaHVuayB5IHRvZG9zIGxvcyBwb3N0ZXJpb3JlcyBlbiBlbCBhcmNoaXZvXG4iCisiZCAtIG5vIHNhY2FyIGRlbCBhcmVhIGRlIHN0YWdlIGVzdGUgaHVuayBvIG5pbmd1bm8gZGUgbG9zIHBvc3RlcmlvcmVzIGVuIGVsICIKKyJhcmNoaXZvXG4iCisKKyM6IGFkZC1wYXRjaC5jOjk5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0MworIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIsK/QXBsaWNhciBjYW1iaW8gZGUgbW9kbyBhbCDDrW5kaWNlIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMDAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBkZWxldGlvbiB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9BcGxpY2FyIGJvcnJhZG8gYWwgw61uZGljZSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLCv0FwbGljYXIgZXN0ZSBodW5rIGFsIMOtbmRpY2UgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEwMyBhZGQtcGF0Y2guYzoxNjggYWRkLXBhdGNoLmM6MjExCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorImFwcGx5aW5nLiIKK21zZ3N0ciAiIgorIlNpIGVsIHBhcmNoZSBhcGxpY2EgZGUgZm9ybWEgbGltcGlhLCBlbCBodW5rIGVkaXRhZG8gc2VyYSBtYXJjYWRvICIKKyJpbm1lZGlhdGFtZW50ZSBwYXJhIGFwbGljYXIuIgorCisjOiBhZGQtcGF0Y2guYzoxMDYKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4XG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBhcGxpY2FyIGVzdGUgaHVuayBhbCDDrW5kaWNlXG4iCisibiAtIG5vIGFwbGljYXIgZXN0ZSBodW5rIGFsIMOtbmRpY2VcbiIKKyJxIC0gcXVpdDsgbm8gYXBsaWNhciBlc3RlIGh1bmsgbyBuaW5ndW5vIGRlIGxvcyByZXN0YW50ZXNcbiIKKyJhIC0gYXBsaWNhciBlc3RlIGh1bmsgeSB0b2RvcyBsb3MgcG9zdGVyaW9yZXMgZW4gZWwgYXJjaGl2b1xuIgorImQgLSBubyBhcGxpY2FyIGVzdGUgaHVua28gbmluZ3VubyBkZSBsb3MgcG9zdGVyaW9yZXMgZW4gZWwgYXJjaGl2b1xuIgorCisjOiBhZGQtcGF0Y2guYzoxMjEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjMKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9EZXNjYXJ0YXIgY2FtYmlvIGRlIG1vZG8gZGVsIMOhcmJvbCBkZSB0cmFiYWpvIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9EZXNjYXJ0YXIgYm9ycmFkbyBkZWwgw6FyYm9sIGRlIHRyYWJham8gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyMyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9EZXNjYXJ0YXIgZXN0ZSBodW5rIGRlbCDDoXJib2wgZGUgdHJhYmFqbyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTI1IGFkZC1wYXRjaC5jOjE0NyBhZGQtcGF0Y2guYzoxOTAKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisiZGlzY2FyZGluZy4iCittc2dzdHIgIiIKKyJTaSBlbCBwYXJjaGUgYXBsaWNhIGRlIGZvcm1hIGxpbXBpYSwgZWwgaHVuayBlZGl0YWRvIHNlcmEgbWFyY2FkbyAiCisiaW5tZWRpYXRhbWVudGUgcGFyYSBkZXNjYXJ0ZS4iCisKKyM6IGFkZC1wYXRjaC5jOjEyOCBhZGQtcGF0Y2guYzoxOTMKK21zZ2lkICIiCisieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gZGlzY2FyZCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIGRlc2NhcnRhciBlc3RlIGh1bmsgZGVsIMOhcmJvbCBkZSB0cmFiYWpvXG4iCisibiAtIG5vIGRlc2NhcnRhciBlc3RlIGh1bmsgZGVsIMOhcmJvbCBkZSB0cmFiYWpvXG4iCisicSAtIHF1aXQ7IG5vIGRlc2NhcnRhciBlc3RlIGh1bmsgbyBuaW5ndW5vIGRlIGxvcyBxdWUgcmVzdGFudGVzXG4iCisiYSAtIGRlc2NhcnRhciBlc3RlIGh1bmsgeSB0b2RvcyBsb3MgcG9zdGVyaW9yZXMgZW4gZXN0ZSBhcmNoaXZvXG4iCisiZCAtIG5vIGRlc2NhcnRhciBlc3RlIGh1bmsgbyBuaW5ndW5vIGRlIGxvcyBwb3N0ZXJpb3JlcyBlbiBlbCBhcmNoaXZvXG4iCisKKyM6IGFkZC1wYXRjaC5jOjE0MyBhZGQtcGF0Y2guYzoxODYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDUzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisiwr9EZXNjYXJ0YXIgY2FtYmlvIGRlIG1vZG8gZGVsIMOtbmRpY2UgeSBlbCDDoXJib2wgZGUgdHJhYmFqbyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ0IGFkZC1wYXRjaC5jOjE4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIsK/RGVzY2FydGFyIGJvcnJhZG8gZGVsIMOtbmRpY2UgeSBlbCDDoXJib2wgZGUgdHJhYmFqbyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ1IGFkZC1wYXRjaC5jOjE4OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisiwr9EZXNjYXJ0YXIgZXN0ZSBodW5rIGRlbCDDrW5kaWNlIHkgZWwgw6FyYm9sIGRlIHRyYWJham8gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE1MAorbXNnaWQgIiIKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGRpc2NhcmQgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBkZXNjYXJ0YXIgZXN0ZSBodW5rIGRlbCDDrW5kaWNlIHkgZWwgw6FyYm9sIGRlIHRyYWJham9cbiIKKyJuIC0gbm8gZGVzY2FydGFyIGVzdGUgaHVuayBkZWwgw61uZGljZSBuaSBlbCDDoXJib2wgZGUgdHJhYmFqb1xuIgorInEgLSBxdWl0OyBubyBkZXNjYXJ0YXIgZXN0ZSBodW5rIG8gbmluZ3VubyBkZSBsb3MgcXVlIHF1ZWRhblxuIgorImEgLSBkZXNjYXJ0YXIgZXN0ZSBodW5rIHkgdG9kb3MgbG9zIHBvc3RlcmlvcmVzIGVuIGVzdGUgYXJjaGl2b1xuIgorImQgLSBubyBkZXNjYXJ0YXIgZXN0ZSBodW5rIG8gbmluZ3VubyBwb3N0ZXJpb3IgZW4gZWwgYXJjaGl2b1xuIgorCisjOiBhZGQtcGF0Y2guYzoxNjQgYWRkLXBhdGNoLmM6MjA3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1OAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisiwr9BcGxpY2FyIGNhbWJpbyBkZSBtb2RvIHBhcmEgZWwgw61uZGljZSB5IGVsIMOhcmJvbCBkZSB0cmFiYWpvIFt5LG4scSxhLGQiCisiJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTY1IGFkZC1wYXRjaC5jOjIwOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTkKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9BcGxpY2FyIGJvcnJhZG8gYWwgw61uZGljZSB5IGFsIMOhcmJvbCBkZSB0cmFiYWpvIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNjYgYWRkLXBhdGNoLmM6MjA5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2MAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9BcGxpY2FyIGVzdGUgaHVuayBhbCDDrW5kaWNlIHkgw6FyYm9sIGRlIHRyYWJham8gW3ksbixxLGEsZCwvJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTcxCittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBhcGxpY2FyIGVzdGUgaHVuayBhbCDDrW5kaWNlIHkgYWwgw6FyYm9sIGRlIHRyYWJham9cbiIKKyJuIC0gbm8gYXBsaWNhciBlc3RlIGh1bmsgYWwgw61uZGljZSB5IGFsIMOhcmJvbCBkZSB0cmFiYWpvXG4iCisicSAtIHF1aXQ7ICBubyBhcGxpY2FyIGVzdGUgaHVuayBvIG5pbmd1bm8gZGUgbG9zIHJlc3RhbnRlc1xuIgorImEgLSBhcGxpY2FyIGVzdGUgaHVuayB5IHRvZG9zIGxvcyBwb3N0ZXJpb3JlcyBlbiBlbCBhcmNoaXZvXG4iCisiZCAtIG5vIGFwbGljYXIgZXN0ZSBodW5rIG8gbmluZ3VubyBkZSBsb3Mgc2lndWllbnRlcyBlbiBlc3RlIGFyY2hpdm9cbiIKKworIzogYWRkLXBhdGNoLmM6MjE0Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gYXBsaWNhciBlc3RlIGh1bmsgYWwgw61uZGljZSB5IGFsIMOhcmJvbCBkZSB0cmFiYWpvXG4iCisibiAtIG5vIGFwbGljYXIgZXN0ZSBodW5rIGFsIMOtbmRpY2UgeSBhbCDDoXJib2wgZGUgdHJhYmFqb1xuIgorInEgLSBxdWl0OyAgbm8gYXBsaWNhciBlc3RlIGh1bmsgbyBuaW5ndW5vIGRlIGxvcyByZXN0YW50ZXNcbiIKKyJhIC0gYXBsaWNhciBlc3RlIGh1bmsgeSB0b2RvcyBsb3MgcG9zdGVyaW9yZXMgZW4gZWwgYXJjaGl2b1xuIgorImQgLSBubyBhcGxpY2FyIGVzdGUgaHVuayBvIG5pbmd1bm8gZGUgbG9zIHNpZ3VpZW50ZXMgZW4gZXN0ZSBhcmNoaXZvXG4iCisKKyM6IGFkZC1wYXRjaC5jOjMxOAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgaHVuayBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBhbmFsaXphciBodW5rIGhlYWRlciAnJS4qcyciCisKKyM6IGFkZC1wYXRjaC5jOjMzNyBhZGQtcGF0Y2guYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbG9yZWQgaHVuayBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBhbmFsaXphciBodW5rIGhlYWRlciAnJS4qcyciCisKKyM6IGFkZC1wYXRjaC5jOjM5NQorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBkaWZmIgorbXNnc3RyICJubyBzZSBwdWVkZSBhbmFsaXphciBkaWZmIgorCisjOiBhZGQtcGF0Y2guYzo0MTQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29sb3JlZCBkaWZmIgorbXNnc3RyICJubyBzZSBwdWRvIGFuYWxpemFyIGRpZmYgYSBjb2xvcmVzIgorCisjOiBhZGQtcGF0Y2guYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJ1biAnJXMnIgorbXNnc3RyICJmYWxsw7MgYWwgZWplY3V0YXIgJyVzJyIKKworIzogYWRkLXBhdGNoLmM6NTg3Cittc2dpZCAibWlzbWF0Y2hlZCBvdXRwdXQgZnJvbSBpbnRlcmFjdGl2ZS5kaWZmRmlsdGVyIgorbXNnc3RyICJvdXRwdXQgZGUgaW50ZXJhY3RpdmUuZGlmZkZpbHRlciBubyBjb25jdWVyZGEiCisKKyM6IGFkZC1wYXRjaC5jOjU4OAorbXNnaWQgIiIKKyJZb3VyIGZpbHRlciBtdXN0IG1haW50YWluIGEgb25lLXRvLW9uZSBjb3JyZXNwb25kZW5jZVxuIgorImJldHdlZW4gaXRzIGlucHV0IGFuZCBvdXRwdXQgbGluZXMuIgorbXNnc3RyICIiCisiVHUgZmlsdHJvIHRpZW5lIHF1ZSBtYW50ZW5lciBjb3JyZXNwb25kZW5jaWEgZGUgdW5vIGEgdW5vXG4iCisiZW50cmUgbGFzIGzDrW5lYXMgZGUgZW50cmFkYSB5IHNhbGlkYS4iCisKKyM6IGFkZC1wYXRjaC5jOjc2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZXhwZWN0ZWQgY29udGV4dCBsaW5lICMlZCBpblxuIgorIiUuKnMiCittc2dzdHIgIiIKKyJzZSBlc3BlcmFiYSBsw61uZWEgZGUgY29udGV4dG8gIyVkIGVuXG4iCisiJS4qcyIKKworIzogYWRkLXBhdGNoLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJodW5rcyBkbyBub3Qgb3ZlcmxhcDpcbiIKKyIlLipzXG4iCisiXHRkb2VzIG5vdCBlbmQgd2l0aDpcbiIKKyIlLipzIgorbXNnc3RyICIiCisiaHVua3Mgbm8gaGFjZW4gb3ZlcmxhcDpcbiIKKyIlLipzXG4iCisiXHRubyBhY2FiYSBjb246XG4iCisiJS4qcyIKKworIzogYWRkLXBhdGNoLmM6MTA1MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTIKK21zZ2lkICJNYW51YWwgaHVuayBlZGl0IG1vZGUgLS0gc2VlIGJvdHRvbSBmb3IgYSBxdWljayBndWlkZS5cbiIKK21zZ3N0ciAiTW9kbyBkZSBlZGljacOzbiBtYW51YWwgZGUgaHVuayAtLSB2ZWEgYWJham8gcGFyYSB1bmEgZ3XDrWEgcsOhcGlkYS5cbiIKKworIzogYWRkLXBhdGNoLmM6MTA1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0tXG4iCisiVG8gcmVtb3ZlICclYycgbGluZXMsIG1ha2UgdGhlbSAnICcgbGluZXMgKGNvbnRleHQpLlxuIgorIlRvIHJlbW92ZSAnJWMnIGxpbmVzLCBkZWxldGUgdGhlbS5cbiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICVjIHdpbGwgYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorIi0tLVxuIgorIlBhcmEgZWxpbWluYXIgJyVjJyBsw61uZWFzLCBoYWdhIGRlIGVsbGFzIGzDrW5lYXMgICcgJyAgKGNvbnRleHRvKS5cbiIKKyJQYXJhIGVsaW1pbmFyICclYycgbMOtbmVhcywgYsOzcnJlbGFzLlxuIgorIkxpbmVhcyBjb21lbnphbmRvIGNvbiAgJWMgc2Vyw6FuIGVsaW1pbmFkYXMuXG4iCisKKyMuIFRSQU5TTEFUT1JTOiAnaXQnIHJlZmVycyB0byB0aGUgcGF0Y2ggbWVudGlvbmVkIGluIHRoZSBwcmV2aW91cyBtZXNzYWdlcy4KKyM6IGFkZC1wYXRjaC5jOjEwNzAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTI2Cittc2dpZCAiIgorIklmIGl0IGRvZXMgbm90IGFwcGx5IGNsZWFubHksIHlvdSB3aWxsIGJlIGdpdmVuIGFuIG9wcG9ydHVuaXR5IHRvXG4iCisiZWRpdCBhZ2Fpbi4gIElmIGFsbCBsaW5lcyBvZiB0aGUgaHVuayBhcmUgcmVtb3ZlZCwgdGhlbiB0aGUgZWRpdCBpc1xuIgorImFib3J0ZWQgYW5kIHRoZSBodW5rIGlzIGxlZnQgdW5jaGFuZ2VkLlxuIgorbXNnc3RyICIiCisiU2kgZXN0byBubyBhcGxpY2EgZGUgbWFuZXJhIGxpbXBpYSwgc2UgdGUgZGEgbGEgb3BvcnR1bmlkYWQgZGUgXG4iCisiZWRpdGFyIG51ZXZhbWVudGUuIFNpIHRvZGFzIGxhcyBsw61uZWFzIGRlbCBodW5rIHNvbiBlbGltaW5hZGFzLCBlbnRvbmNlcyBcbiIKKyJsYSBlZGljacOzbiBlcyBhYm9ydGFkYSB5IGVsIGh1bmsgcXVlZGEgc2luIGNhbWJpb3MuXG4iCisKKyM6IGFkZC1wYXRjaC5jOjExMDMKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgaHVuayBoZWFkZXIiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFuYWxpemFyIGh1bmsgaGVhZGVyIgorCisjOiBhZGQtcGF0Y2guYzoxMTQ4Cittc2dpZCAiJ2dpdCBhcHBseSAtLWNhY2hlZCcgZmFpbGVkIgorbXNnc3RyICJmYWxsw7MgJ2dpdCBhcHBseSAtLWNhY2hlZCciCisKKyMuIFRSQU5TTEFUT1JTOiBkbyBub3QgdHJhbnNsYXRlIFt5L25dCisjLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IHRoYXQgaW5wdXQgYXQgdGhpcyBwb2ludC4KKyMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCisjLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgorIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCisjLgorIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KKyMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dAorIy4gYXQgdGhpcyBwb2ludC4KKyMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCisjLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgorIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCisjOiBhZGQtcGF0Y2guYzoxMjE4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIzOQorbXNnaWQgIiIKKyJZb3VyIGVkaXRlZCBodW5rIGRvZXMgbm90IGFwcGx5LiBFZGl0IGFnYWluIChzYXlpbmcgXCJub1wiIGRpc2NhcmRzISkgW3kvbl0/ICIKK21zZ3N0ciAiIgorIlR1IGh1bmsgZWRpdGFkbyBubyBhcGxpY2EuIMK/RWRpdGFyIG51ZXZhbWVudGUgKMKhZGVjaXIgXCJub1wiIGRlc2NhcnRhISkgW3kvIgorIm5dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyNjEKK21zZ2lkICJUaGUgc2VsZWN0ZWQgaHVua3MgZG8gbm90IGFwcGx5IHRvIHRoZSBpbmRleCEiCittc2dzdHIgIsKhTG9zIGh1bmtzIHNlbGVjY2lvbmFkb3Mgbm8gYXBsaWNhbiBhbCDDrW5kaWNlISIKKworIzogYWRkLXBhdGNoLmM6MTI2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDMKK21zZ2lkICJBcHBseSB0aGVtIHRvIHRoZSB3b3JrdHJlZSBhbnl3YXk/ICIKK21zZ3N0ciAiwr9BcGxpY2FybG9zIGFsIMOhcmJvbCBkZSB0cmFiYWpvIGRlIHRvZGFzIG1hbmVyYXM/ICIKKworIzogYWRkLXBhdGNoLmM6MTI2OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDYKK21zZ2lkICJOb3RoaW5nIHdhcyBhcHBsaWVkLlxuIgorbXNnc3RyICJOYWRhIGZ1ZSBhcGxpY2Fkby5cbiIKKworIzogYWRkLXBhdGNoLmM6MTMyNgorbXNnaWQgIiIKKyJqIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIG5leHQgdW5kZWNpZGVkIGh1bmtcbiIKKyJKIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIG5leHQgaHVua1xuIgorImsgLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgcHJldmlvdXMgdW5kZWNpZGVkIGh1bmtcbiIKKyJLIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIHByZXZpb3VzIGh1bmtcbiIKKyJnIC0gc2VsZWN0IGEgaHVuayB0byBnbyB0b1xuIgorIi8gLSBzZWFyY2ggZm9yIGEgaHVuayBtYXRjaGluZyB0aGUgZ2l2ZW4gcmVnZXhcbiIKKyJzIC0gc3BsaXQgdGhlIGN1cnJlbnQgaHVuayBpbnRvIHNtYWxsZXIgaHVua3NcbiIKKyJlIC0gbWFudWFsbHkgZWRpdCB0aGUgY3VycmVudCBodW5rXG4iCisiPyAtIHByaW50IGhlbHBcbiIKK21zZ3N0ciAiIgorImogLSBkZWphIGVzdGUgaHVuayBzaW4gZGVjaWRpciwgdmVyIGVsIHNpZ3VpZW50ZSBodW5rIHNpbiBkZWNpc2nDs25cbiIKKyJKIC0gZGVqYSBlc3RlIGh1bmsgc2luIGRlY2lkaXIsIHZlciBzaWd1aWVudGUgaHVua1xuIgorImsgLSBkZWphIGVzdGUgaHVuayBzaW4gZGVjaWRpciwgdmVyIGh1bmsgcHJldmlvIHNpbiBkZWNpZGlyXG4iCisiSyAtIGRlamEgZXN0ZSBodW5rIHNpbiBkZWNpZGlyLCB2ZXIgaHVuayBhbnRlcmlvclxuIgorImcgLSBzZWxlY2Npb25hIHVuIGh1bmsgYSBkw7NuZGUgaXJcbiIKKyIvIC0gYnVzY2FyIHVuIGh1bmsgcXVlIGN1bXBsYSBjb24gZWwgcmVnZXggZGFkb1xuIgorInMgLSBzZXBhcmFyIGVsIGh1bmsgYWN0dWFsIGVuIG3DoXMgcGVxdWXDsW9zXG4iCisiZSAtIGVkaXRhciBtYW51YWxtZW50ZSBlbCBodW5rIGFjdHVhbFxuIgorIj8gLSBpbXByaW1pciBheXVkYVxuIgorCisjOiBhZGQtcGF0Y2guYzoxNDQ3IGFkZC1wYXRjaC5jOjE0NTcKK21zZ2lkICJObyBwcmV2aW91cyBodW5rIgorbXNnc3RyICJObyBlbCBhbnRlcmlvciBodW5rIgorCisjOiBhZGQtcGF0Y2guYzoxNDUyIGFkZC1wYXRjaC5jOjE0NjIKK21zZ2lkICJObyBuZXh0IGh1bmsiCittc2dzdHIgIk5vIGVsIHNpZ3VpZW50ZSBodW5rIgorCisjOiBhZGQtcGF0Y2guYzoxNDY4Cittc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gZ290byIKK21zZ3N0ciAiTm8gaGF5IG3DoXMgcGVkYXpvcyBwYXJhIGVsIGlyIgorCisjOiBhZGQtcGF0Y2guYzoxNDc5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3NworbXNnaWQgImdvIHRvIHdoaWNoIGh1bmsgKDxyZXQ+IHRvIHNlZSBtb3JlKT8gIgorbXNnc3RyICLCv2EgcXVlIGh1bmsgaXIgKDxlbnRlcj4gcGFyYSB2ZXIgbcOhcyk/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ4MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzkKK21zZ2lkICJnbyB0byB3aGljaCBodW5rPyAiCittc2dzdHIgIsK/YSBxdWUgaHVuayBpcj8gIgorCisjOiBhZGQtcGF0Y2guYzoxNDkxCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgbnVtYmVyOiAnJXMnIgorbXNnc3RyICJOdW1lcm8gaW52w6FsaWRvOiAnJXMnIgorCisjOiBhZGQtcGF0Y2guYzoxNDk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlNvcnJ5LCBvbmx5ICVkIGh1bmsgYXZhaWxhYmxlLiIKK21zZ2lkX3BsdXJhbCAiU29ycnksIG9ubHkgJWQgaHVua3MgYXZhaWxhYmxlLiIKK21zZ3N0clswXSAiTG8gc2llbnRvLCBzb2xvICVkIGh1bmsgZGlzcG9uaWJsZS4iCittc2dzdHJbMV0gIkxvIHNpZW50bywgc29sbyAlZCBodW5rcyBkaXNwb25pYmxlcy4iCisKKyM6IGFkZC1wYXRjaC5jOjE1MDUKK21zZ2lkICJObyBvdGhlciBodW5rcyB0byBzZWFyY2giCittc2dzdHIgIk5vIGhheSBtw6FzIHBlZGF6b3MgcGFyYSBidXNjYXIiCisKKyM6IGFkZC1wYXRjaC5jOjE1MTEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjIzCittc2dpZCAic2VhcmNoIGZvciByZWdleD8gIgorbXNnc3RyICLCv2J1c2NhciBwYXJhIHJlZ2V4cD8gIgorCisjOiBhZGQtcGF0Y2guYzoxNTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hbGZvcm1lZCBzZWFyY2ggcmVnZXhwICVzOiAlcyIKK21zZ3N0ciAiUmVnZXhwIHBhcmEgbGEgYsO6c3F1ZWRhIG1hbCBmb3JtYWRvICVzOiAlcyIKKworIzogYWRkLXBhdGNoLmM6MTU0MworbXNnaWQgIk5vIGh1bmsgbWF0Y2hlcyB0aGUgZ2l2ZW4gcGF0dGVybiIKK21zZ3N0ciAiTm8gaGF5IGh1bmtzIHF1ZSBjb25jdWVyZGVuIGNvbiBlbCBwYXRyw7NuIGVudHJlZ2Fkby4iCisKKyM6IGFkZC1wYXRjaC5jOjE1NTAKK21zZ2lkICJTb3JyeSwgY2Fubm90IHNwbGl0IHRoaXMgaHVuayIKK21zZ3N0ciAiUGVyZMOzbiwgbm8gc2UgcHVlZGUgZGl2aWRpciBlc3RlIHBlZGF6byIKKworIzogYWRkLXBhdGNoLmM6MTU1NAorIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdCBpbnRvICVkIGh1bmtzLiIKK21zZ3N0ciAiQ29ydGFyIGVuICVkIGh1bmsuIgorCisjOiBhZGQtcGF0Y2guYzoxNTU4Cittc2dpZCAiU29ycnksIGNhbm5vdCBlZGl0IHRoaXMgaHVuayIKK21zZ3N0ciAiUGVyZMOzbiwgbm8gc2UgcHVlZGUgZWRpdGFyIGVzdGUgcGVkYXpvIgorCisjOiBhZGQtcGF0Y2guYzoxNjA5Cittc2dpZCAiJ2dpdCBhcHBseScgZmFpbGVkIgorbXNnc3RyICJmYWxsw7MgJ2dpdCBhcHBseSciCisKKyM6IGFkdmljZS5jOjExNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlc2hpbnQ6ICUuKnMlc1xuIgogbXNnc3RyICIlc2F5dWRhOiAlLipzJXNcbiIKIAotIzogYWR2aWNlLmM6MTUyCisjOiBhZHZpY2UuYzoxNjgKIG1zZ2lkICJDaGVycnktcGlja2luZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgIiIKICJObyBlcyBwb3NpYmxlIGVqZWN1dGFyIGNoZXJyeS1waWNraW5nIHBvcnF1ZSB0aWVuZXMgYXJjaGl2b3Mgc2luIGZ1c2lvbmFyLiIKIAotIzogYWR2aWNlLmM6MTU0CisjOiBhZHZpY2UuYzoxNzAKIG1zZ2lkICJDb21taXR0aW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiTm8gZXMgcG9zaWJsZSByZWFsaXphciB1biBjb21taXQgcG9ycXVlIHRpZW5lcyBhcmNoaXZvcyBzaW4gZnVzaW9uYXIuIgogCi0jOiBhZHZpY2UuYzoxNTYKKyM6IGFkdmljZS5jOjE3MgogbXNnaWQgIk1lcmdpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICJObyBlcyBwb3NpYmxlIGhhY2VyIG1lcmdlIHBvcnF1ZSB0aWVuZXMgYXJjaGl2b3Mgc2luIGZ1c2lvbmFyLiIKIAotIzogYWR2aWNlLmM6MTU4CisjOiBhZHZpY2UuYzoxNzQKIG1zZ2lkICJQdWxsaW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiTm8gZXMgcG9zaWJsZSBoYWNlciBwdWxsIHBvcnF1ZSB0aWVuZXMgYXJjaGl2b3Mgc2luIGZ1c2lvbmFyLiIKIAotIzogYWR2aWNlLmM6MTYwCisjOiBhZHZpY2UuYzoxNzYKIG1zZ2lkICJSZXZlcnRpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICJObyBlcyBwb3NpYmxlIHJldmVydGlyIHBvcnF1ZSB0aWVuZXMgYXJjaGl2b3Mgc2luIGZ1c2lvbmFyLiIKIAotIzogYWR2aWNlLmM6MTYyCisjOiBhZHZpY2UuYzoxNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiSXQgaXMgbm90IHBvc3NpYmxlIHRvICVzIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICJObyBlcyBwb3NpYmxlICVzIHBvcnF1ZSB0aWVuZXMgYXJjaGl2b3Mgc2luIGZ1c2lvbmFyLiIKIAotIzogYWR2aWNlLmM6MTcwCisjOiBhZHZpY2UuYzoxODYKIG1zZ2lkICIiCiAiRml4IHRoZW0gdXAgaW4gdGhlIHdvcmsgdHJlZSwgYW5kIHRoZW4gdXNlICdnaXQgYWRkL3JtIDxmaWxlPidcbiIKICJhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24gYW5kIG1ha2UgYSBjb21taXQuIgpAQCAtNTcsMTQ0ICs3NDYsMTU2IEBACiAiQ29ycsOtZ2Vsb3MgZW4gZWwgw6FyYm9sIGRlIHRyYWJham8geSBlbnRvbmNlcyB1c2EgJ2dpdCBhZGQvcm0gPGFyY2hpdm8+JyxcbiIKICJjb21vIHNlYSBhcHJvcGlhZG8sIHBhcmEgbWFyY2FyIGxhIHJlc29sdWNpw7NuIHkgcmVhbGl6YXIgdW4gY29tbWl0LiIKIAotIzogYWR2aWNlLmM6MTc4CisjOiBhZHZpY2UuYzoxOTQKIG1zZ2lkICJFeGl0aW5nIGJlY2F1c2Ugb2YgYW4gdW5yZXNvbHZlZCBjb25mbGljdC4iCiBtc2dzdHIgIlNhbGllbmRvIHBvcnF1ZSBleGlzdGUgdW4gY29uZmxpY3RvIHNpbiByZXNvbHZlci4iCiAKLSM6IGFkdmljZS5jOjE4MyBidWlsdGluL21lcmdlLmM6MTI4OQorIzogYWR2aWNlLmM6MTk5IGJ1aWx0aW4vbWVyZ2UuYzoxMzM1CiBtc2dpZCAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG1lcmdlIChNRVJHRV9IRUFEIGV4aXN0cykuIgogbXNnc3RyICJObyBoYXMgY29uY2x1aWRvIHR1IGZ1c2nDs24gKE1FUkdFX0hFQUQgZXhpc3RlKS4iCiAKLSM6IGFkdmljZS5jOjE4NQorIzogYWR2aWNlLmM6MjAxCiBtc2dpZCAiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSBtZXJnaW5nLiIKIG1zZ3N0ciAiUG9yIGZhdm9yLCByZWFsaXphIHVuIGNvbW1pdCBhbnRlcyBkZSBmdXNpb25hci4iCiAKLSM6IGFkdmljZS5jOjE4NgorIzogYWR2aWNlLmM6MjAyCiBtc2dpZCAiRXhpdGluZyBiZWNhdXNlIG9mIHVuZmluaXNoZWQgbWVyZ2UuIgogbXNnc3RyICJTYWxpZW5kbyBwb3IgdW5hIGZ1c2nDs24gaW5jb25jbHVzYS4iCiAKLSM6IGFkdmljZS5jOjE5MgorIzogYWR2aWNlLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKLSJOb3RlOiBjaGVja2luZyBvdXQgJyVzJy5cbiIKKyJOb3RlOiBzd2l0Y2hpbmcgdG8gJyVzJy5cbiIKICJcbiIKICJZb3UgYXJlIGluICdkZXRhY2hlZCBIRUFEJyBzdGF0ZS4gWW91IGNhbiBsb29rIGFyb3VuZCwgbWFrZSBleHBlcmltZW50YWxcbiIKICJjaGFuZ2VzIGFuZCBjb21taXQgdGhlbSwgYW5kIHlvdSBjYW4gZGlzY2FyZCBhbnkgY29tbWl0cyB5b3UgbWFrZSBpbiB0aGlzXG4iCi0ic3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHBlcmZvcm1pbmcgYW5vdGhlciBjaGVja291dC5cbiIKKyJzdGF0ZSB3aXRob3V0IGltcGFjdGluZyBhbnkgYnJhbmNoZXMgYnkgc3dpdGNoaW5nIGJhY2sgdG8gYSBicmFuY2guXG4iCiAiXG4iCiAiSWYgeW91IHdhbnQgdG8gY3JlYXRlIGEgbmV3IGJyYW5jaCB0byByZXRhaW4gY29tbWl0cyB5b3UgY3JlYXRlLCB5b3UgbWF5XG4iCi0iZG8gc28gKG5vdyBvciBsYXRlcikgYnkgdXNpbmcgLWIgd2l0aCB0aGUgY2hlY2tvdXQgY29tbWFuZCBhZ2Fpbi4gRXhhbXBsZTpcbiIKKyJkbyBzbyAobm93IG9yIGxhdGVyKSBieSB1c2luZyAtYyB3aXRoIHRoZSBzd2l0Y2ggY29tbWFuZC4gRXhhbXBsZTpcbiIKICJcbiIKLSIgIGdpdCBjaGVja291dCAtYiA8bmV3LWJyYW5jaC1uYW1lPlxuIgorIiAgZ2l0IHN3aXRjaCAtYyA8bmV3LWJyYW5jaC1uYW1lPlxuIgorIlxuIgorIk9yIHVuZG8gdGhpcyBvcGVyYXRpb24gd2l0aDpcbiIKKyJcbiIKKyIgIGdpdCBzd2l0Y2ggLVxuIgorIlxuIgorIlR1cm4gb2ZmIHRoaXMgYWR2aWNlIGJ5IHNldHRpbmcgY29uZmlnIHZhcmlhYmxlIGFkdmljZS5kZXRhY2hlZEhlYWQgdG8gIgorImZhbHNlXG4iCiAiXG4iCiBtc2dzdHIgIiIKLSJOb3RhOiBhY3R1YWxpemFuZG8gZWwgw6FyYm9sIGRlIHRyYWJham8gJyVzJy5cbiIKKyJOb3RhOiBjYW1iaWFuZG8gYSAnJXMnLlxuIgogIlxuIgogIlRlIGVuY3VlbnRyYXMgZW4gZXN0YWRvICdkZXRhY2hlZCBIRUFEJy4gUHVlZGVzIHJldmlzYXIgcG9yIGFxdcOtLCBoYWNlclxuIgotImNhbWJpb3MgZXhwZXJpbWVudGFsZXMgeSBjb25maXJtYXJsb3MsIHkgcHVlZGVzIGRlc2NhcnRhciBjdWFscXVpZXJcbiIKKyJjYW1iaW9zIGV4cGVyaW1lbnRhbGVzIHkgaGFjZXIgY29tbWl0cywgeSBwdWVkZXMgZGVzY2FydGFyIGN1YWxxdWllclxuIgogImNvbW1pdCBxdWUgaGF5YXMgaGVjaG8gZW4gZXN0ZSBlc3RhZG8gc2luIGltcGFjdGFyIGEgdHUgcmFtYSByZWFsaXphbmRvXG4iCiAib3RybyBjaGVja291dC5cbiIKICJcbiIKICJTaSBxdWllcmVzIGNyZWFyIHVuYSBudWV2YSByYW1hIHBhcmEgbWFudGVuZXIgbG9zIGNvbW1pdHMgcXVlIGhhcyBjcmVhZG8sXG4iCi0icHVlZGVzIGhhY2VybG8gKGFob3JhIG8gZGVzcHXDqXMpIHVzYW5kbyAtYiBjb24gZWwgY29tYW5kbyBjaGVja291dC4gIgorInB1ZWRlcyBoYWNlcmxvIChhaG9yYSBvIGRlc3B1w6lzKSB1c2FuZG8gLWMgY29uIGVsIGNvbWFuZG8gY2hlY2tvdXQuICIKICJFamVtcGxvOlxuIgogIlxuIgotIiAgZ2l0IGNoZWNrb3V0IC1iIDxub21icmUtZGUtbnVldmEtcmFtYT5cbiIKKyIgIGdpdCBzd2l0Y2ggLWMgPG5vbWJyZS1kZS1udWV2YS1yYW1hPlxuIgorIlxuIgorIk8gZGVzaGFjZXIgbGEgb3BlcmFjacOzbiBjb246XG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1cbiIKKyJcbiIKKyJEZXNhY3RpdmEgZXN0ZSBhdmlzbyBwb25pZW5kbyBsYSB2YXJpYWJsZSBkZSBjb25maWcgYWR2aWNlLmRldGFjaGVkSGVhZCBlbiAiCisiZmFsc2VcbiIKICJcbiIKIAotIzogYXBwbHkuYzo1OQorIzogYWxpYXMuYzo1MAorbXNnaWQgImNtZGxpbmUgZW5kcyB3aXRoIFxcIgorbXNnc3RyICJjbWRsaW5lIHRlcm1pbmEgZW4gXFwiCisKKyM6IGFsaWFzLmM6NTEKK21zZ2lkICJ1bmNsb3NlZCBxdW90ZSIKK21zZ3N0ciAiY29taWxsYXMgaW5jb21wbGV0YXMiCisKKyM6IGFwcGx5LmM6NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2Ugb3B0aW9uICclcyciCiBtc2dzdHIgIm9wY2nDs24gZGUgZXNwYWNpb3MgZW4gYmxhbmNvIG5vIHJlY29ub2NpZGEgJyVzJyIKIAotIzogYXBwbHkuYzo3NQorIzogYXBwbHkuYzo4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgd2hpdGVzcGFjZSBpZ25vcmUgb3B0aW9uICclcyciCiBtc2dzdHIgIm9wY2nDs24gZGUgaWdub3JhciBlc3BhY2lvcyBlbiBibGFuY28gbm8gcmVjb25vY2lkYSAnJXMnIgogCi0jOiBhcHBseS5jOjEyNQorIzogYXBwbHkuYzoxMzUKIG1zZ2lkICItLXJlamVjdCBhbmQgLS0zd2F5IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyLiIKIG1zZ3N0ciAiLS1yZWplY3QgeSAtLTN3YXkgbm8gc2UgcHVlZGVuIHV0aWxpemFyIGp1bnRhcy4iCiAKLSM6IGFwcGx5LmM6MTI3CisjOiBhcHBseS5jOjEzNwogbXNnaWQgIi0tY2FjaGVkIGFuZCAtLTN3YXkgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuIgogbXNnc3RyICItLWNhY2hlZCB5IC0tM3dheSBubyBzZSBwdWVkZW4gdXRpbGl6YXIganVudGFzLiIKIAotIzogYXBwbHkuYzoxMzAKKyM6IGFwcGx5LmM6MTQwCiBtc2dpZCAiLS0zd2F5IG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICItLTN3YXkgZXN0w6EgZnVlcmEgZGUgdW4gcmVwb3NpdG9yaW8iCiAKLSM6IGFwcGx5LmM6MTQxCisjOiBhcHBseS5jOjE1MQogbXNnaWQgIi0taW5kZXggb3V0c2lkZSBhIHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0taW5kZXggZXN0w6EgZnVlcmEgZGUgdW4gcmVwb3NpdG9yaW8iCiAKLSM6IGFwcGx5LmM6MTQ0CisjOiBhcHBseS5jOjE1NAogbXNnaWQgIi0tY2FjaGVkIG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICItLWNhY2hlZCBlc3TDoSBmdWVyYSBkZSB1biByZXBvc2l0b3JpbyIKIAotIzogYXBwbHkuYzo4MjYKKyM6IGFwcGx5LmM6ODAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBwcmVwYXJlIHRpbWVzdGFtcCByZWdleHAgJXMiCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIHByZXBhcmFyIHVuYSBtYXJjYSBkZSB0aWVtcG8gcGFyYSBsYSBleHByZXNpw7NuIHJlZ3VsYXIgJXMiCiAKLSM6IGFwcGx5LmM6ODM1CisjOiBhcHBseS5jOjgxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWdleGVjIHJldHVybmVkICVkIGZvciBpbnB1dDogJXMiCiBtc2dzdHIgInJlZ2V4ZWMgZGV2b2x2acOzICVkIHBhcmEgbGEgZW50cmFkYTogJXMiCiAKLSM6IGFwcGx5LmM6OTA5CisjOiBhcHBseS5jOjg4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZmluZCBmaWxlbmFtZSBpbiBwYXRjaCBhdCBsaW5lICVkIgogbXNnc3RyICIiCiAibm8gc2UgcHVlZGUgZW5jb250cmFyIGVsIG5vbWJyZSBkZWwgYXJjaGl2byBlbiBlbCBwYXJjaGUgZW4gbGEgbMOtbmVhICVkIgogCi0jOiBhcHBseS5jOjk0NworIzogYXBwbHkuYzo5MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwsIGdvdCAlcyBvbiBsaW5lICVkIgogbXNnc3RyICIiCiAiZ2l0IGFwcGx5OiBnaXQtZGlmZiBlcnLDs25lbyAtIHNlIGVzcGVyYWJhIC9kZXYvbnVsbCwgc2UgZW5jb250csOzICVzIGVuICIKICJsYWzDrW5lYSAlZCIKIAotIzogYXBwbHkuYzo5NTMKKyM6IGFwcGx5LmM6OTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gaW5jb25zaXN0ZW50IG5ldyBmaWxlbmFtZSBvbiBsaW5lICVkIgogbXNnc3RyICIiCiAiZ2l0IGFwcGx5OiBnaXQtZGlmZiBlcnLDs25lbyAtIG51ZXZvIG5vbWJyZSBkZSBhcmNoaXZvIGluY29uc2lzdGVudGUgZW4gIgogImxhbMOtbmVhICVkIgogCi0jOiBhcHBseS5jOjk1NAorIzogYXBwbHkuYzo5MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBpbmNvbnNpc3RlbnQgb2xkIGZpbGVuYW1lIG9uIGxpbmUgJWQiCiBtc2dzdHIgIiIKICJnaXQgYXBwbHk6IGdpdC1kaWZmIGVycsOzbmVvIC0gdmllam8gbm9tYnJlIGRlIGFyY2hpdm8gaW5jb25zaXN0ZW50ZSBlbiAiCiAibGFsw61uZWEgJWQiCiAKLSM6IGFwcGx5LmM6OTU5CisjOiBhcHBseS5jOjkzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGV4cGVjdGVkIC9kZXYvbnVsbCBvbiBsaW5lICVkIgogbXNnc3RyICJnaXQgYXBwbHk6IGdpdC1kaWZmIGVycsOzbmVvIC0gc2UgZXNwZXJhYmEgL2Rldi9udWxsIGVuIGxhIGzDrW5lYSAlZCIKIAotIzogYXBwbHkuYzo5ODgKKyM6IGFwcGx5LmM6OTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbW9kZSBvbiBsaW5lICVkOiAlcyIKIG1zZ3N0ciAibW9kbyBpbnbDoWxpZG8gZW4gbGEgbMOtbmVhICVkOiAlcyIKIAotIzogYXBwbHkuYzoxMzA3CisjOiBhcHBseS5jOjEyODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5jb25zaXN0ZW50IGhlYWRlciBsaW5lcyAlZCBhbmQgJWQiCiBtc2dzdHIgImhlYWRlciBpbmNvbnNpc3RlbnRlIGVuIGxhcyBsw61uZWFzICVkIHkgJWQiCiAKLSM6IGFwcGx5LmM6MTQ3OQotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWNvdW50OiB1bmV4cGVjdGVkIGxpbmU6ICUuKnMiCi1tc2dzdHIgInJlY291bnQ6IGzDrW5lYSBpbmVzcGVyYWRhOiAlLipzIgotCi0jOiBhcHBseS5jOjE1NDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGF0Y2ggZnJhZ21lbnQgd2l0aG91dCBoZWFkZXIgYXQgbGluZSAlZDogJS4qcyIKLW1zZ3N0ciAiZnJhZ21lbnRvIGRlIHBhcmNoZSBzaW4gaGVhZGVyIGVuIGxhIGzDrW5lYSAlZDogJS4qcyIKLQotIzogYXBwbHkuYzoxNTY4CisjOiBhcHBseS5jOjEzNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImdpdCBkaWZmIGhlYWRlciBsYWNrcyBmaWxlbmFtZSBpbmZvcm1hdGlvbiB3aGVuIHJlbW92aW5nICVkIGxlYWRpbmcgcGF0aG5hbWUgIgpAQCAtMjA5LDgzICs5MTAsOTQgQEAKICJsb3MgaGVhZGVycyBkZSBnaXQgZGlmZiBjYXJlY2VuIGRlIGluZm9ybWFjacOzbiBkZSBsb3Mgbm9tYnJlcyBkZSBsb3MgIgogImFyY2hpdm9zICVkIGN1YW5kbyBsb3MgZWxpbWluYW4gZGUgbGEgcnV0YSBwcmluY2lwYWwgY29tcG9uZW50ZXMgKGzDrW5lYSAlZCkiCiAKLSM6IGFwcGx5LmM6MTU4MQorIzogYXBwbHkuYzoxMzg1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBkaWZmIGhlYWRlciBsYWNrcyBmaWxlbmFtZSBpbmZvcm1hdGlvbiAobGluZSAlZCkiCiBtc2dzdHIgIiIKLSJlbCBoZWFkZXIgZGUgZ2l0IGRpZmYgY2FyZWNlIGRlIGluZm9ybWFjacOzbiBkZWwgbm9tYnJlIGRlbCBhcmNoaXZvIChsw61uZWEgJWQpIgorImxhIGNhYmVjZXJhIGRlIGdpdCBkaWZmIGNhcmVjZSBkZSBpbmZvcm1hY2nDs24gZGVsIG5vbWJyZSBkZWwgYXJjaGl2byAobMOtbmVhICIKKyIlZCkiCiAKLSM6IGFwcGx5LmM6MTc2OQorIzogYXBwbHkuYzoxNDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlY291bnQ6IHVuZXhwZWN0ZWQgbGluZTogJS4qcyIKK21zZ3N0ciAicmVjb3VudDogbMOtbmVhIGluZXNwZXJhZGE6ICUuKnMiCisKKyM6IGFwcGx5LmM6MTU1MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRjaCBmcmFnbWVudCB3aXRob3V0IGhlYWRlciBhdCBsaW5lICVkOiAlLipzIgorbXNnc3RyICJmcmFnbWVudG8gZGUgcGFyY2hlIHNpbiBoZWFkZXIgZW4gbGEgbMOtbmVhICVkOiAlLipzIgorCisjOiBhcHBseS5jOjE3NTMKIG1zZ2lkICJuZXcgZmlsZSBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKIG1zZ3N0ciAiZWwgbnVldm8gYXJjaGl2byBkZXBlbmRlIGRlIGNvbnRlbmlkb3Mgdmllam9zIgogCi0jOiBhcHBseS5jOjE3NzEKKyM6IGFwcGx5LmM6MTc1NQogbXNnaWQgImRlbGV0ZWQgZmlsZSBzdGlsbCBoYXMgY29udGVudHMiCiBtc2dzdHIgImVsIGFyY2hpdm8gZWxpbWluYWRvIHRvZGF2w61hIHRpZW5lIGNvbnRlbmlkbyIKIAotIzogYXBwbHkuYzoxODA1CisjOiBhcHBseS5jOjE3ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBwYXRjaCBhdCBsaW5lICVkIgogbXNnc3RyICJwYXJjaGUgY29ycnVwdG8gZW4gbGEgbMOtbmVhICVkIgogCi0jOiBhcHBseS5jOjE4NDIKKyM6IGFwcGx5LmM6MTgyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgZmlsZSAlcyBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKIG1zZ3N0ciAibnVldm8gYXJjaGl2byAlcyBkZXBlbmRlIGVuIGNvbnRlbmlkb3Mgdmllam9zIgogCi0jOiBhcHBseS5jOjE4NDQKKyM6IGFwcGx5LmM6MTgyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWxldGVkIGZpbGUgJXMgc3RpbGwgaGFzIGNvbnRlbnRzIgogbXNnc3RyICJlbCBhcmNoaXZvIGJvcnJhZG8gJXMgdG9kYXbDrWEgdGllbmUgY29udGVuaWRvIgogCi0jOiBhcHBseS5jOjE4NDcKKyM6IGFwcGx5LmM6MTgzMQogIywgYy1mb3JtYXQKIG1zZ2lkICIqKiB3YXJuaW5nOiBmaWxlICVzIGJlY29tZXMgZW1wdHkgYnV0IGlzIG5vdCBkZWxldGVkIgogbXNnc3RyICIqKiBwZWxpZ3JvOiBlbCBhcmNoaXZvICVzIGVzdMOhIHZhY8OtbyBwZXJvIG5vIGVzIGJvcnJhZG8iCiAKLSM6IGFwcGx5LmM6MTk5NAorIzogYXBwbHkuYzoxOTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgYmluYXJ5IHBhdGNoIGF0IGxpbmUgJWQ6ICUuKnMiCiBtc2dzdHIgInBhcmNoZSBiaW5hcmlvIGNvcnJ1cHRvIGVuIGxhIGzDrW5lYSAlZDogJS4qcyIKIAotIzogYXBwbHkuYzoyMDMxCisjOiBhcHBseS5jOjIwMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIGJpbmFyeSBwYXRjaCBhdCBsaW5lICVkIgogbXNnc3RyICJwYXJjaGUgYmluYXJpbyBubyByZWNvbm9jaWRvIGVuIGxhIGzDrW5lYSAlZCIKIAotIzogYXBwbHkuYzoyMTkzCisjOiBhcHBseS5jOjIxNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0Y2ggd2l0aCBvbmx5IGdhcmJhZ2UgYXQgbGluZSAlZCIKIG1zZ3N0ciAicGFyY2hlIHF1ZSBzb2xvIGNvbnRpZW5lIGJhc3VyYSBlbiBsYSBsw61uZWEgJWQiCiAKLSM6IGFwcGx5LmM6MjI3OQorIzogYXBwbHkuYzoyMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHN5bWxpbmsgJXMiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgbGVlciBlbCBlbmxhY2Ugc2ltYsOzbGljbyAlcyIKIAotIzogYXBwbHkuYzoyMjgzCisjOiBhcHBseS5jOjIyNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gb3IgcmVhZCAlcyIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBhYnJpciBvIGxlZXIgJXMiCiAKLSM6IGFwcGx5LmM6Mjk0MgorIzogYXBwbHkuYzoyOTM2CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc3RhcnQgb2YgbGluZTogJyVjJyIKIG1zZ3N0ciAiY29taWVuem8gaW52w6FsaWRvIGRlIGzDrW5lYTogJyVjJyIKIAotIzogYXBwbHkuYzozMDYzCisjOiBhcHBseS5jOjMwNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSHVuayAjJWQgc3VjY2VlZGVkIGF0ICVkIChvZmZzZXQgJWQgbGluZSkuIgogbXNnaWRfcGx1cmFsICJIdW5rICMlZCBzdWNjZWVkZWQgYXQgJWQgKG9mZnNldCAlZCBsaW5lcykuIgogbXNnc3RyWzBdICJIdW5rICMlZCB0dXZvIMOpeGl0byBlbiAlZCAoJWQgbMOtbmVhIGNvbXBlbnNhZGEpLiIKIG1zZ3N0clsxXSAiSHVuayAjJWQgdHV2byDDqXhpdG8gZW4gJWQgKCVkIGzDrW5lYXMgY29tcGVuc2FkYXMpLiIKIAotIzogYXBwbHkuYzozMDc1CisjOiBhcHBseS5jOjMwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29udGV4dCByZWR1Y2VkIHRvICglbGQvJWxkKSB0byBhcHBseSBmcmFnbWVudCBhdCAlZCIKIG1zZ3N0ciAiQ29udGV4dG8gcmVkdWNpZG8gYSAoJWxkLyVsZCkgcGFyYSBhcGxpY2FyIGVsIGZyYWdtZW50byBlbiAlZCIKIAotIzogYXBwbHkuYzozMDgxCisjOiBhcHBseS5jOjMwNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIndoaWxlIHNlYXJjaGluZyBmb3I6XG4iCkBAIC0yOTQsMjMgKzEwMDYsMjMgQEAKICJtaWVudHJhcyBzZSBidXNjYTpcbiIKICIlLipzIgogCi0jOiBhcHBseS5jOjMxMDMKKyM6IGFwcGx5LmM6MzA5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIGJpbmFyeSBwYXRjaCBkYXRhIGZvciAnJXMnIgogbXNnc3RyICJkYXRhIHBlcmRpZGEgZW4gcGFyY2hlIGJpbmFyaW8gcGFyYSAnJXMnIgogCi0jOiBhcHBseS5jOjMxMTEKKyM6IGFwcGx5LmM6MzEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmV2ZXJzZS1hcHBseSBhIGJpbmFyeSBwYXRjaCB3aXRob3V0IHRoZSByZXZlcnNlIGh1bmsgdG8gJyVzJyIKIG1zZ3N0ciAiIgogIm5vIHNlIHB1ZWRlIHJldmVydGlyLWFwbGljYXIgdW4gcGFyY2hlIGJpbmFyaW8gc2luIGVsIGh1bmsgcmV2ZXJ0aWRvIGEgJyVzJyIKIAotIzogYXBwbHkuYzozMTU4CisjOiBhcHBseS5jOjMxNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGFwcGx5IGJpbmFyeSBwYXRjaCB0byAnJXMnIHdpdGhvdXQgZnVsbCBpbmRleCBsaW5lIgogbXNnc3RyICJubyBzZSBwdWVkZSBhcGxpY2FyIGVsIHBhcmNoZSBiaW5hcmlvIGEgJyVzJyBzaW4gdW4gw61uZGljZSBjb21wbGV0byIKIAotIzogYXBwbHkuYzozMTY4CisjOiBhcHBseS5jOjMxNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInRoZSBwYXRjaCBhcHBsaWVzIHRvICclcycgKCVzKSwgd2hpY2ggZG9lcyBub3QgbWF0Y2ggdGhlIGN1cnJlbnQgY29udGVudHMuIgpAQCAtMzE4LDI4OCArMTAzMCwyODQgQEAKICJlbCBwYXJjaGUgYXBsaWNhIGEgJyVzJyAoJXMpLCBsbyBjdWFsIG5vIGNvbmN1ZXJkYSBjb24gbG9zIGNvbnRlbmlkb3MgIgogImFjdHVhbGVzLiIKIAotIzogYXBwbHkuYzozMTc2CisjOiBhcHBseS5jOjMxNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlIHBhdGNoIGFwcGxpZXMgdG8gYW4gZW1wdHkgJyVzJyBidXQgaXQgaXMgbm90IGVtcHR5IgogbXNnc3RyICJlbCBwYXJjaGUgYXBsaWNhIGEgdW4gJyVzJyB2YWPDrW8sIHBlcm8gZXN0ZSBubyBsbyBlc3RhIgogCi0jOiBhcHBseS5jOjMxOTQKKyM6IGFwcGx5LmM6MzE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgbmVjZXNzYXJ5IHBvc3RpbWFnZSAlcyBmb3IgJyVzJyBjYW5ub3QgYmUgcmVhZCIKIG1zZ3N0ciAibGEgcG9zdGltYWdlbiBuZWNlc2FyaWEgJXMgcGFyYSAnJXMnIG5vIHNlIHB1ZWRlIGxlZXIiCiAKLSM6IGFwcGx5LmM6MzIwNworIzogYXBwbHkuYzozMjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImJpbmFyeSBwYXRjaCBkb2VzIG5vdCBhcHBseSB0byAnJXMnIgogbXNnc3RyICJlbCBwYXJjaGUgYmluYXJpbyBubyBhcGxpY2EgcGFyYSAnJXMnIgogCi0jOiBhcHBseS5jOjMyMTMKKyM6IGFwcGx5LmM6MzIwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJiaW5hcnkgcGF0Y2ggdG8gJyVzJyBjcmVhdGVzIGluY29ycmVjdCByZXN1bHQgKGV4cGVjdGluZyAlcywgZ290ICVzKSIKIG1zZ3N0ciAiIgogImVsIHBhcmNoZSBiaW5hcmlvIHBhcmEgJyVzJyBjcmVhIHVuIHJlc3VsdGFkbyBpbmNvcnJlY3RvIChzYWxpZW5kbyAlcywgc2UgIgogIm9idHV2byAlcykiCiAKLSM6IGFwcGx5LmM6MzIzNAorIzogYXBwbHkuYzozMjMwCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGNoIGZhaWxlZDogJXM6JWxkIgogbXNnc3RyICJlbCBwYXJjaGUgZmFsbMOzOiAlczolbGQiCiAKLSM6IGFwcGx5LmM6MzM1NgorIzogYXBwbHkuYzozMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGVja291dCAlcyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgaGFjZXIgY2hlY2tvdXQgYSAlcyIKIAotIzogYXBwbHkuYzozNDA4IGFwcGx5LmM6MzQxOSBhcHBseS5jOjM0NjUgbWlkeC5jOjU4IHNldHVwLmM6Mjc4CisjOiBhcHBseS5jOjM0MDUgYXBwbHkuYzozNDE2IGFwcGx5LmM6MzQ2MiBtaWR4LmM6NjEgc2V0dXAuYzoyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gbGVlciAlcyIKIAotIzogYXBwbHkuYzozNDE2CisjOiBhcHBseS5jOjM0MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZGluZyBmcm9tICclcycgYmV5b25kIGEgc3ltYm9saWMgbGluayIKIG1zZ3N0ciAibGV5ZW5kbyBkZSAnJXMnIHRyYXMgdW4gZW5sYWNlIHNpbWLDs2xpY28iCiAKLSM6IGFwcGx5LmM6MzQ0NSBhcHBseS5jOjM2ODgKKyM6IGFwcGx5LmM6MzQ0MiBhcHBseS5jOjM2ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAlcyBoYXMgYmVlbiByZW5hbWVkL2RlbGV0ZWQiCiBtc2dzdHIgImxhIHJ1dGEgJXMgaGEgc2lkbyByZW5vbWJyYWRhL3N1cHJpbWlkYSIKIAotIzogYXBwbHkuYzozNTMxIGFwcGx5LmM6MzcwMworIzogYXBwbHkuYzozNTI4IGFwcGx5LmM6MzcwMAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZG9lcyBub3QgZXhpc3QgaW4gaW5kZXgiCiBtc2dzdHIgIiVzOiBubyBleGlzdGUgZW4gZWwgw61uZGljZSIKIAotIzogYXBwbHkuYzozNTQwIGFwcGx5LmM6MzcxMQorIzogYXBwbHkuYzozNTM3IGFwcGx5LmM6MzcwOAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZG9lcyBub3QgbWF0Y2ggaW5kZXgiCiBtc2dzdHIgIiVzOiBubyBjb25jdWVyZGEgY29uIGVsIMOtbmRpY2UiCiAKLSM6IGFwcGx5LmM6MzU3NQorIzogYXBwbHkuYzozNTcyCiBtc2dpZCAicmVwb3NpdG9yeSBsYWNrcyB0aGUgbmVjZXNzYXJ5IGJsb2IgdG8gZmFsbCBiYWNrIG9uIDMtd2F5IG1lcmdlLiIKIG1zZ3N0ciAiIgogImVsIHJlcG9zaXRvcmlvIGNhcmVjZSBkZWwgYmxvYiBuZWNlc2FyaW8gcGFyYSByZWdyZXNhciBlbiB1biBtZXJnZSBkZSB0cmVzLSIKICJ2w61hcy4iCiAKLSM6IGFwcGx5LmM6MzU3OAorIzogYXBwbHkuYzozNTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhbGxpbmcgYmFjayB0byB0aHJlZS13YXkgbWVyZ2UuLi5cbiIKIG1zZ3N0ciAiUmV0cm9jZWRpZW5kbyBlbiB1biBtZXJnZSBkZSB0cmVzLXbDrWFzLi4uXG4iCiAKLSM6IGFwcGx5LmM6MzU5NCBhcHBseS5jOjM1OTgKKyM6IGFwcGx5LmM6MzU5MSBhcHBseS5jOjM1OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgdGhlIGN1cnJlbnQgY29udGVudHMgb2YgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVlZGVuIGxlZXIgbG9zIGNvbnRlbmlkb3MgYWN0dWFsZXMgZGUgJyVzJyIKIAotIzogYXBwbHkuYzozNjEwCisjOiBhcHBseS5jOjM2MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGZhbGwgYmFjayBvbiB0aHJlZS13YXkgbWVyZ2UuLi5cbiIKIG1zZ3N0ciAiRmFsbMOzIGVsIG1lcmdlIGVuIHJldHJvY2VzbyBkZSB0cmVzLXbDrWFzLi4uXG4iCiAKLSM6IGFwcGx5LmM6MzYyNAorIzogYXBwbHkuYzozNjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyB3aXRoIGNvbmZsaWN0cy5cbiIKIG1zZ3N0ciAiUGFyY2hlIGFwbGljYWRvIGEgJyVzJyBjb24gY29uZmxpY3Rvcy5cbiIKIAotIzogYXBwbHkuYzozNjI5CisjOiBhcHBseS5jOjM2MjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBwYXRjaCB0byAnJXMnIGNsZWFubHkuXG4iCiBtc2dzdHIgIlBhcmNoZSBhcGxpY2FkbyBhICclcycgbGltcGlhbWVudGVcbiIKIAotIzogYXBwbHkuYzozNjU1CisjOiBhcHBseS5jOjM2NTIKIG1zZ2lkICJyZW1vdmFsIHBhdGNoIGxlYXZlcyBmaWxlIGNvbnRlbnRzIgotbXNnc3RyICJwYXJjaGUgZGUgcmVtb2Npw7NuIGRlamEgY29udGVuaWRvcyBlbiBlbCBhcmNoaXZvIgorbXNnc3RyICJwYXJjaGUgZGUgZWxpbWluYWNpw7NuIGRlamEgY29udGVuaWRvcyBlbiBlbCBhcmNoaXZvIgogCi0jOiBhcHBseS5jOjM3MjgKKyM6IGFwcGx5LmM6MzcyNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogd3JvbmcgdHlwZSIKIG1zZ3N0ciAiJXM6IHRpcG8gaW5jb3JyZWN0byIKIAotIzogYXBwbHkuYzozNzMwCisjOiBhcHBseS5jOjM3MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaGFzIHR5cGUgJW8sIGV4cGVjdGVkICVvIgogbXNnc3RyICIlcyB0aWVuZSB0aXBvICVvLCBzZSBlc3BlcmFiYSAlbyIKIAotIzogYXBwbHkuYzozODgxIGFwcGx5LmM6Mzg4MworIzogYXBwbHkuYzozODc4IGFwcGx5LmM6Mzg4MCByZWFkLWNhY2hlLmM6ODMwIHJlYWQtY2FjaGUuYzo4NTYKKyM6IHJlYWQtY2FjaGUuYzoxMzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgcGF0aCAnJXMnIgogbXNnc3RyICJydXRhIGludsOhbGlkYSAnJXMnIgogCi0jOiBhcHBseS5jOjM5MzkKKyM6IGFwcGx5LmM6MzkzNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgiCiBtc2dzdHIgIiVzOiB5YSBleGlzdGUgZW4gZWwgw61uZGljZSIKIAotIzogYXBwbHkuYzozOTQyCisjOiBhcHBseS5jOjM5MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGFscmVhZHkgZXhpc3RzIGluIHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICIlczogeWEgZXhpc3RlIGVuIGVsIGRpcmVjdG9yaW8gZGUgdHJhYmFqbyIKIAotIzogYXBwbHkuYzozOTYyCisjOiBhcHBseS5jOjM5NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IG1vZGUgKCVvKSBvZiAlcyBkb2VzIG5vdCBtYXRjaCBvbGQgbW9kZSAoJW8pIgogbXNnc3RyICJudWV2byBtb2RvICglbykgZGUgJXMgbm8gY29uY3VlcmRhIGNvbiBlbCB2aWVqbyBtb2RvICglbykiCiAKLSM6IGFwcGx5LmM6Mzk2NworIzogYXBwbHkuYzozOTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSBvZiAlcyIKIG1zZ3N0ciAibnVldm8gbW9kbyAoJW8pIGRlICVzIG5vIGNvbmN1ZXJkYSBjb24gZWwgdmllam8gbW9kbyAoJW8pIGRlICVzIgogCi0jOiBhcHBseS5jOjM5ODcKKyM6IGFwcGx5LmM6Mzk4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJhZmZlY3RlZCBmaWxlICclcycgaXMgYmV5b25kIGEgc3ltYm9saWMgbGluayIKIG1zZ3N0ciAiYXJjaGl2byBhZmVjdGFkbyAnJXMnIGVzdMOhIHRyYXMgdW4gZW5sYWNlIHNpbWLDs2xpY28iCiAKLSM6IGFwcGx5LmM6Mzk5MQorIzogYXBwbHkuYzozOTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBwYXRjaCBkb2VzIG5vdCBhcHBseSIKIG1zZ3N0ciAiJXM6IGVsIHBhcmNoZSBubyBhcGxpY2EiCiAKLSM6IGFwcGx5LmM6NDAwNgorIzogYXBwbHkuYzo0MDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoZWNraW5nIHBhdGNoICVzLi4uIgogbXNnc3RyICJSZXZpc2FuZG8gZWwgcGFyY2hlICVzLi4uIgogCi0jOiBhcHBseS5jOjQwOTgKKyM6IGFwcGx5LmM6NDA5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJzaGExIGluZm9ybWF0aW9uIGlzIGxhY2tpbmcgb3IgdXNlbGVzcyBmb3Igc3VibW9kdWxlICVzIgogbXNnc3RyICJmYWx0YSBpbmZvcm1hY2nDs24gZGVsIHNoYTEgbyBlcyBpbsO6dGlsIHBhcmEgZWwgc3VibcOzZHVsbyAlcyIKIAotIzogYXBwbHkuYzo0MTA1CisjOiBhcHBseS5jOjQxMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9kZSBjaGFuZ2UgZm9yICVzLCB3aGljaCBpcyBub3QgaW4gY3VycmVudCBIRUFEIgogbXNnc3RyICJtb2RvIGNhbWJpYWRvIHBhcmEgJXMsIGVsIGN1YWwgbm8gc2UgZW5jdWVudHJhIGVuIGVsIEhFQUQgYWN0dWFsIgogCi0jOiBhcHBseS5jOjQxMDgKKyM6IGFwcGx5LmM6NDEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJzaGExIGluZm9ybWF0aW9uIGlzIGxhY2tpbmcgb3IgdXNlbGVzcyAoJXMpLiIKIG1zZ3N0ciAiZmFsdGEgaW5mb3JtYWNpw7NuIHNoYTEgbyBlcyBpbsO6dGlsICglcykuIgogCi0jOiBhcHBseS5jOjQxMTMgYnVpbHRpbi9jaGVja291dC5jOjI0NCBidWlsdGluL3Jlc2V0LmM6MTQyCi0jLCBjLWZvcm1hdAotbXNnaWQgIm1ha2VfY2FjaGVfZW50cnkgZmFpbGVkIGZvciBwYXRoICclcyciCi1tc2dzdHIgIm1ha2VfY2FjaGVfZW50cnkgZmFsbMOzIHBhcmEgbGEgcnV0YSAnJXMnIgotCi0jOiBhcHBseS5jOjQxMTcKKyM6IGFwcGx5LmM6NDExNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgYWRkICVzIHRvIHRlbXBvcmFyeSBpbmRleCIKIG1zZ3N0ciAibm8gc2UgcHVkbyBhw7FhZGlyICVzIGFsIMOtbmRpY2UgdGVtcG9yYWwiCiAKLSM6IGFwcGx5LmM6NDEyNworIzogYXBwbHkuYzo0MTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSB0ZW1wb3JhcnkgaW5kZXggdG8gJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gZXNjcmliaXIgdW4gw61uZGljZSB0ZW1wb3JhbCBwYXJhICVzIgogCi0jOiBhcHBseS5jOjQyNjUKKyM6IGFwcGx5LmM6NDI2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICVzIGZyb20gaW5kZXgiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGVsaW1pbmFyICVzIGRlbCDDrW5kaWNlIgogCi0jOiBhcHBseS5jOjQyOTkKKyM6IGFwcGx5LmM6NDI5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IHBhdGNoIGZvciBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgInBhcmNoZSBjb3JydXB0byBwYXJhIGVsIHN1Ym3Ds2R1bG8gJXMiCiAKLSM6IGFwcGx5LmM6NDMwNQorIzogYXBwbHkuYzo0MzAyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ld2x5IGNyZWF0ZWQgZmlsZSAnJXMnIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGVzdGFibGVjZXIgZWwgYXJjaGl2byByZWNpw6luIGNyZWFkbyAnJXMnIgogCi0jOiBhcHBseS5jOjQzMTMKKyM6IGFwcGx5LmM6NDMxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGJhY2tpbmcgc3RvcmUgZm9yIG5ld2x5IGNyZWF0ZWQgZmlsZSAlcyIKIG1zZ3N0ciAiIgogIm5vIGVzIHBvc2libGUgY3JlYXIgdW5hIGNvcGlhIGRlIHNlZ3VyaWRhZCBwYXJhIGVsIGFyY2hpdm8gcmVjacOpbiBjcmVhZG8gJXMiCiAKLSM6IGFwcGx5LmM6NDMxOSBhcHBseS5jOjQ0NjQKKyM6IGFwcGx5LmM6NDMxNiBhcHBseS5jOjQ0NjEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGFkZCBjYWNoZSBlbnRyeSBmb3IgJXMiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgYWdyZWdhciB1bmEgZW50cmFkYSBlbiBlbCBjYWNoZSBwYXJhICVzIgogCi0jOiBhcHBseS5jOjQzNjIKKyM6IGFwcGx5LmM6NDM1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gJyVzJyIKIG1zZ3N0ciAiZmFsbMOzIGVzY3JpYmlyIHBhcmEgJyVzJyIKIAotIzogYXBwbHkuYzo0MzY2CisjOiBhcHBseS5jOjQzNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2xvc2luZyBmaWxlICclcyciCiBtc2dzdHIgImNlcnJhbmRvIGFyY2hpdm8gJyVzJyIKIAotIzogYXBwbHkuYzo0NDM2CisjOiBhcHBseS5jOjQ0MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyBtb2RlICVvIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGVzY3JpYmlyIGVsIGFyY2hpdm8gJyVzJyBtb2RvICVvIgogCi0jOiBhcHBseS5jOjQ1MzQKKyM6IGFwcGx5LmM6NDUzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBsaWVkIHBhdGNoICVzIGNsZWFubHkuIgogbXNnc3RyICJQYXJjaGUgJXMgYXBsaWNhZG8gbGltcGlhbWVudGUuIgogCi0jOiBhcHBseS5jOjQ1NDIKKyM6IGFwcGx5LmM6NDUzOQogbXNnaWQgImludGVybmFsIGVycm9yIgogbXNnc3RyICJlcnJvciBpbnRlcm5vIgogCi0jOiBhcHBseS5jOjQ1NDUKKyM6IGFwcGx5LmM6NDU0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBseWluZyBwYXRjaCAlJXMgd2l0aCAlZCByZWplY3QuLi4iCiBtc2dpZF9wbHVyYWwgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdHMuLi4iCiBtc2dzdHJbMF0gIkFwbGljYW5kbyBwYXJjaGUgJSVzIGNvbiAlZCByZWNoYXpvLi4uIgogbXNnc3RyWzFdICJBcGxpY2FuZG8gcGFyY2hlICUlcyBjb24gJWQgcmVjaGF6b3MuLi4iCiAKLSM6IGFwcGx5LmM6NDU1NgorIzogYXBwbHkuYzo0NTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgInRydW5jYXRpbmcgLnJlaiBmaWxlbmFtZSB0byAlLipzLnJlaiIKIG1zZ3N0ciAidHJ1bmNhbmRvIGVsIG5vbWJyZSBkZSBhcmNoaXZvIC5yZWogYSAlLipzLnJlaiIKIAotIzogYXBwbHkuYzo0NTY0IGJ1aWx0aW4vZmV0Y2guYzo4NDMgYnVpbHRpbi9mZXRjaC5jOjExMjIKKyM6IGFwcGx5LmM6NDU2MSBidWlsdGluL2ZldGNoLmM6OTAxIGJ1aWx0aW4vZmV0Y2guYzoxMjAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuICVzIgogbXNnc3RyICJubyBzZSBwdWVkZSBhYnJpciAlcyIKIAotIzogYXBwbHkuYzo0NTc4CisjOiBhcHBseS5jOjQ1NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiSHVuayAjJWQgYXBwbGllZCBjbGVhbmx5LiIKIG1zZ3N0ciAiSHVuayAjJWQgYXBsaWNhZG8gbGltcGlhbWVudGUuIgogCi0jOiBhcHBseS5jOjQ1ODIKKyM6IGFwcGx5LmM6NDU3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWplY3RlZCBodW5rICMlZC4iCiBtc2dzdHIgIkh1bmsgIyVkIHJlY2hhemFkby4iCiAKLSM6IGFwcGx5LmM6NDY5MgorIzogYXBwbHkuYzo0Njk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwZWQgcGF0Y2ggJyVzJy4iCiBtc2dzdHIgIlBhcmNoZSAnJXMnIHNhbHRhZG8uIgogCi0jOiBhcHBseS5jOjQ3MDAKKyM6IGFwcGx5LmM6NDcwNgogbXNnaWQgInVucmVjb2duaXplZCBpbnB1dCIKIG1zZ3N0ciAiaW5wdXQgbm8gcmVjb25vY2lkbyIKIAotIzogYXBwbHkuYzo0NzE5CisjOiBhcHBseS5jOjQ3MjYKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBpbmRleCBmaWxlIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGxlZXIgZWwgYXJjaGl2byDDrW5kaWNlIgogCi0jOiBhcHBseS5jOjQ4NzQKKyM6IGFwcGx5LmM6NDg4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCBvcGVuIHBhdGNoICclcyc6ICVzIgogbXNnc3RyICJubyBzZSBwdWVkZSBhYnJpciBlbCBwYXJjaGUgJyVzJzogJXMiCiAKLSM6IGFwcGx5LmM6NDkwMQorIzogYXBwbHkuYzo0OTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgInNxdWVsY2hlZCAlZCB3aGl0ZXNwYWNlIGVycm9yIgogbXNnaWRfcGx1cmFsICJzcXVlbGNoZWQgJWQgd2hpdGVzcGFjZSBlcnJvcnMiCiBtc2dzdHJbMF0gIiVkIGVycm9yIGRlIGVzcGFjaW9zIGVuIGJsYW5jbyBhcGxhc3RhZG8iCiBtc2dzdHJbMV0gIiVkIGVycm9yZXMgZGUgZXNwYWNpb3MgZW4gYmxhbmNvIGFwbGFzdGFkb3MiCiAKLSM6IGFwcGx5LmM6NDkwNyBhcHBseS5jOjQ5MjIKKyM6IGFwcGx5LmM6NDkxNiBhcHBseS5jOjQ5MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJWQgbGluZSBhZGRzIHdoaXRlc3BhY2UgZXJyb3JzLiIKIG1zZ2lkX3BsdXJhbCAiJWQgbGluZXMgYWRkIHdoaXRlc3BhY2UgZXJyb3JzLiIKIG1zZ3N0clswXSAiJWQgbMOtbmVhIGFncmVnYSBlcnJvcmVzIGRlIGVzcGFjaW9zIGVuIGJsYW5jby4iCiBtc2dzdHJbMV0gIiVkIGzDrW5lYXMgYWdyZWdhbiBlcnJvcmVzIGRlIGVzcGFjaW9zIGVuIGJsYW5jby4iCiAKLSM6IGFwcGx5LmM6NDkxNQorIzogYXBwbHkuYzo0OTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVkIGxpbmUgYXBwbGllZCBhZnRlciBmaXhpbmcgd2hpdGVzcGFjZSBlcnJvcnMuIgogbXNnaWRfcGx1cmFsICIlZCBsaW5lcyBhcHBsaWVkIGFmdGVyIGZpeGluZyB3aGl0ZXNwYWNlIGVycm9ycy4iCkBAIC02MDgsMTQ3ICsxMzE2LDEzNyBAQAogbXNnc3RyWzFdICIiCiAiJWQgbMOtbmVhcyBhcGxpY2FkYXMgZGVzcHXDqXMgZGUgYXJyZWdsYXIgbG9zIGVycm9yZXMgZGUgZXNwYWNpb3MgZW4gYmxhbmNvLiIKIAotIzogYXBwbHkuYzo0OTMxIGJ1aWx0aW4vYWRkLmM6NTM4IGJ1aWx0aW4vbXYuYzozMDAgYnVpbHRpbi9ybS5jOjM4OQorIzogYXBwbHkuYzo0OTQwIGJ1aWx0aW4vYWRkLmM6NjEyIGJ1aWx0aW4vbXYuYzozMDEgYnVpbHRpbi9ybS5jOjQwNgogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAiTm8gZXMgcG9zaWJsZSBlc2NyaWJpciBlbCBhcmNoaXZvIMOtbmRpY2UiCiAKLSM6IGFwcGx5LmM6NDk1OCBhcHBseS5jOjQ5NjEgYnVpbHRpbi9hbS5jOjIyMDkgYnVpbHRpbi9hbS5jOjIyMTIKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjEgYnVpbHRpbi9mZXRjaC5jOjExOCBidWlsdGluL21lcmdlLmM6MjYyCi0jOiBidWlsdGluL3B1bGwuYzoxOTkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwNgotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjUKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODQ2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODQ5Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA4OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NwotbXNnaWQgInBhdGgiCi1tc2dzdHIgInJ1dGEiCi0KLSM6IGFwcGx5LmM6NDk1OQorIzogYXBwbHkuYzo0OTY4CiBtc2dpZCAiZG9uJ3QgYXBwbHkgY2hhbmdlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCIKIG1zZ3N0ciAibm8gYXBsaWNhciBjYW1iaW9zIHF1ZSBjb25jdWVyZGVuIGNvbiBsYSBydXRhIHN1bWluaXN0cmFkYSIKIAotIzogYXBwbHkuYzo0OTYyCisjOiBhcHBseS5jOjQ5NzEKIG1zZ2lkICJhcHBseSBjaGFuZ2VzIG1hdGNoaW5nIHRoZSBnaXZlbiBwYXRoIgogbXNnc3RyICJhcGxpY2FyIGNhbWJpb3MgcXVlIGNvbmN1ZXJkZW4gY29uIGxhIHJ1dGEgc3VtaW5pc3RyYWRhIgogCi0jOiBhcHBseS5jOjQ5NjQgYnVpbHRpbi9hbS5jOjIyMTgKKyM6IGFwcGx5LmM6NDk3MyBidWlsdGluL2FtLmM6MjI2MAogbXNnaWQgIm51bSIKIG1zZ3N0ciAibnVtIgogCi0jOiBhcHBseS5jOjQ5NjUKKyM6IGFwcGx5LmM6NDk3NAogbXNnaWQgInJlbW92ZSA8bnVtPiBsZWFkaW5nIHNsYXNoZXMgZnJvbSB0cmFkaXRpb25hbCBkaWZmIHBhdGhzIgogbXNnc3RyICJlbGltaW5hciA8bnVtPiBzbGFzaGVzIGluaWNpYWxlcyBkZSBsYXMgcnV0YXMgZGlmZiB0cmFkaWNpb25hbGVzIgogCi0jOiBhcHBseS5jOjQ5NjgKKyM6IGFwcGx5LmM6NDk3NwogbXNnaWQgImlnbm9yZSBhZGRpdGlvbnMgbWFkZSBieSB0aGUgcGF0Y2giCiBtc2dzdHIgImlnbm9yYXIgYWRpY2lvbmVzIGhlY2hhcyBwb3IgZWwgcGFyY2hlIgogCi0jOiBhcHBseS5jOjQ5NzAKKyM6IGFwcGx5LmM6NDk3OQogbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBvdXRwdXQgZGlmZnN0YXQgZm9yIHRoZSBpbnB1dCIKIG1zZ3N0ciAiZW4gbHVnYXIgZGUgYXBsaWNhciBlbCBwYXJjaGUsIG1vc3RyYXIgZGlmZnN0YXQgcGFyYSBsYSBlbnRyYWRhIgogCi0jOiBhcHBseS5jOjQ5NzQKKyM6IGFwcGx5LmM6NDk4MwogbXNnaWQgInNob3cgbnVtYmVyIG9mIGFkZGVkIGFuZCBkZWxldGVkIGxpbmVzIGluIGRlY2ltYWwgbm90YXRpb24iCiBtc2dzdHIgIm1vc3RyYXIgZWwgbnVtZXJvIGRlIGzDrW5lYXMgYWdyZWdhZGFzIHkgZWxpbWluYWRhcyBlbiBub3RhY2nDs24gZGVjaW1hbCIKIAotIzogYXBwbHkuYzo0OTc2CisjOiBhcHBseS5jOjQ5ODUKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGEgc3VtbWFyeSBmb3IgdGhlIGlucHV0IgogbXNnc3RyICJlbiBsdWdhciBkZSBhcGxpY2FyIGVsIHBhcmNoZSwgbW9zdHJhciB1biByZXN1bWVuIHBhcmEgbGEgZW50cmFkYSIKIAotIzogYXBwbHkuYzo0OTc4CisjOiBhcHBseS5jOjQ5ODcKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgc2VlIGlmIHRoZSBwYXRjaCBpcyBhcHBsaWNhYmxlIgogbXNnc3RyICJlbiBsdWdhciBkZSBhcGxpY2FyIGVsIHBhcmNoZSwgdmVyIHNpIGVsIHBhcmNoZSBlcyBhcGxpY2FibGUiCiAKLSM6IGFwcGx5LmM6NDk4MAorIzogYXBwbHkuYzo0OTg5CiBtc2dpZCAibWFrZSBzdXJlIHRoZSBwYXRjaCBpcyBhcHBsaWNhYmxlIHRvIHRoZSBjdXJyZW50IGluZGV4IgogbXNnc3RyICJhc2VndXJhciBxdWUgZWwgcGFyY2hlIGVzIGFwbGljYWJsZSBhbCDDrW5kaWNlIGFjdHVhbCIKIAotIzogYXBwbHkuYzo0OTgyCisjOiBhcHBseS5jOjQ5OTEKIG1zZ2lkICJtYXJrIG5ldyBmaWxlcyB3aXRoIGBnaXQgYWRkIC0taW50ZW50LXRvLWFkZGAiCiBtc2dzdHIgIm1hcmNhIGxvcyBudWV2b3MgYXJjaGl2b3MgY29uIGBnaXQgYWRkIC0taW50ZW50LXRvLWFkZGAiCiAKLSM6IGFwcGx5LmM6NDk4NAorIzogYXBwbHkuYzo0OTkzCiBtc2dpZCAiYXBwbHkgYSBwYXRjaCB3aXRob3V0IHRvdWNoaW5nIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgImFwbGljYXIgdW4gcGFyY2hlIHNpbiB0b2NhciBlbCDDoXJib2wgZGUgdHJhYmFqbyIKIAotIzogYXBwbHkuYzo0OTg2CisjOiBhcHBseS5jOjQ5OTUKIG1zZ2lkICJhY2NlcHQgYSBwYXRjaCB0aGF0IHRvdWNoZXMgb3V0c2lkZSB0aGUgd29ya2luZyBhcmVhIgogbXNnc3RyICJhY2VwdGFyIHVuIHBhcmNoZSBxdWUgdG9jYSBmdWVyYSBkZWwgw6FyZWEgZGUgdHJhYmFqbyIKIAotIzogYXBwbHkuYzo0OTg5CisjOiBhcHBseS5jOjQ5OTgKIG1zZ2lkICJhbHNvIGFwcGx5IHRoZSBwYXRjaCAodXNlIHdpdGggLS1zdGF0Ly0tc3VtbWFyeS8tLWNoZWNrKSIKIG1zZ3N0ciAidGFtYmnDqW4gYXBsaWNhciBlbCBwYXJjaGUgKCB1c2FyIGNvbiAtLXN0YXQvLS1zdW1tYXJ5Ly0tY2hlY2siCiAKLSM6IGFwcGx5LmM6NDk5MQorIzogYXBwbHkuYzo1MDAwCiBtc2dpZCAiYXR0ZW1wdCB0aHJlZS13YXkgbWVyZ2UgaWYgYSBwYXRjaCBkb2VzIG5vdCBhcHBseSIKIG1zZ3N0ciAiaW50ZW50YXIgbWVyZ2UgZGUgdHJlcy12w61hcyBzaSBlbCBwYXJjaGUgbm8gYXBsaWNhIgogCi0jOiBhcHBseS5jOjQ5OTMKKyM6IGFwcGx5LmM6NTAwMgogbXNnaWQgImJ1aWxkIGEgdGVtcG9yYXJ5IGluZGV4IGJhc2VkIG9uIGVtYmVkZGVkIGluZGV4IGluZm9ybWF0aW9uIgogbXNnc3RyICIiCiAiY29uc3RydWlyIHVuIMOtbmRpY2UgdGVtcG9yYWwgYmFzYWRvIGVuIGxhIGluZm9ybWFjacOzbiBkZWwgw61uZGljZSBpbmNydXN0YWRvIgogCi0jOiBhcHBseS5jOjQ5OTYgYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3MCBidWlsdGluL2xzLWZpbGVzLmM6NTIzCisjOiBhcHBseS5jOjUwMDUgYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3MyBidWlsdGluL2xzLWZpbGVzLmM6NTI0CiBtc2dpZCAicGF0aHMgYXJlIHNlcGFyYXRlZCB3aXRoIE5VTCBjaGFyYWN0ZXIiCiBtc2dzdHIgInJ1dGFzIGVzdMOhbiBzZXBhcmFkYXMgY29uIHVuIGNhcsOhY3RlciBOVUxMIgogCi0jOiBhcHBseS5jOjQ5OTgKKyM6IGFwcGx5LmM6NTAwNwogbXNnaWQgImVuc3VyZSBhdCBsZWFzdCA8bj4gbGluZXMgb2YgY29udGV4dCBtYXRjaCIKLW1zZ3N0ciAiYXNlZ3VyZSBxdWUgcG9yIGxvIG1lbm9zIDxuPiBsw61uZWFzIGRlbCBjb250ZXh0byBjb25jdWVyZGVuIgorbXNnc3RyICJhc2VndXJhciBxdWUgYWwgbWVub3MgY29uY3VlcmRlbiA8bj4gbMOtbmVhcyBkZWwgY29udGV4dG8gY29uY3VlcmRlbiIKIAotIzogYXBwbHkuYzo0OTk5IGJ1aWx0aW4vYW0uYzoyMTk3IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTcKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTkgYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDEKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxMiBidWlsdGluL3JlYmFzZS5jOjg1NworIzogYXBwbHkuYzo1MDA4IGJ1aWx0aW4vYW0uYzoyMjM5IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTgKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAwIGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTcgYnVpbHRpbi9yZWJhc2UuYzoxNTA4CiBtc2dpZCAiYWN0aW9uIgogbXNnc3RyICJhY2Npw7NuIgogCi0jOiBhcHBseS5jOjUwMDAKKyM6IGFwcGx5LmM6NTAwOQogbXNnaWQgImRldGVjdCBuZXcgb3IgbW9kaWZpZWQgbGluZXMgdGhhdCBoYXZlIHdoaXRlc3BhY2UgZXJyb3JzIgogbXNnc3RyICIiCiAiZGV0ZWN0YXIgbMOtbmVhcyBudWV2YXMgbyBtb2RpZmljYWRhcyBxdWUgY29udGllbmVuIGVycm9yZXMgZGUgZXNwYWNpb3MgZW4gIgogImJsYW5jbyIKIAotIzogYXBwbHkuYzo1MDAzIGFwcGx5LmM6NTAwNgorIzogYXBwbHkuYzo1MDEyIGFwcGx5LmM6NTAxNQogbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIHdoaXRlc3BhY2Ugd2hlbiBmaW5kaW5nIGNvbnRleHQiCiBtc2dzdHIgIiIKICJpZ25vcmFyIGNhbWJpb3MgZW4gbG9zIGVzcGFjaW9zIGVuIGJsYW5jbyBjdWFuZG8gc2UgZW5jdWVudHJhIGVsIGNvbnRleHRvIgogCi0jOiBhcHBseS5jOjUwMDkKKyM6IGFwcGx5LmM6NTAxOAogbXNnaWQgImFwcGx5IHRoZSBwYXRjaCBpbiByZXZlcnNlIgogbXNnc3RyICJhcGxpY2FyIGVsIHBhcmNoZSBlbiByZXZlcnNhIgogCi0jOiBhcHBseS5jOjUwMTEKKyM6IGFwcGx5LmM6NTAyMAogbXNnaWQgImRvbid0IGV4cGVjdCBhdCBsZWFzdCBvbmUgbGluZSBvZiBjb250ZXh0IgogbXNnc3RyICJubyBlc3BlcmEgYWwgbWVub3MgdW5hIGzDrW5lYSBkZWwgY29udGV4dG8iCiAKLSM6IGFwcGx5LmM6NTAxMworIzogYXBwbHkuYzo1MDIyCiBtc2dpZCAibGVhdmUgdGhlIHJlamVjdGVkIGh1bmtzIGluIGNvcnJlc3BvbmRpbmcgKi5yZWogZmlsZXMiCiBtc2dzdHIgImRlamFyIGxvcyBodW5rcyByZWNoYXphZG9zIGVuIGxvcyBhcmNoaXZvcyAqLnJlaiBjb3JyZXNwb250aWVudGVzIgogCi0jOiBhcHBseS5jOjUwMTUKKyM6IGFwcGx5LmM6NTAyNAogbXNnaWQgImFsbG93IG92ZXJsYXBwaW5nIGh1bmtzIgogbXNnc3RyICJwZXJtaXRpciBzb2xhcGFtaWVudG8gZGUgaHVua3MiCiAKLSM6IGFwcGx5LmM6NTAxNiBidWlsdGluL2FkZC5jOjI5MCBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjIxCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMDkgYnVpbHRpbi9jb3VudC1vYmplY3RzLmM6OTggYnVpbHRpbi9mc2NrLmM6Njk4Ci0jOiBidWlsdGluL2xvZy5jOjIwMjMgYnVpbHRpbi9tdi5jOjEyMiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNwotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTU3CisjOiBhcHBseS5jOjUwMjUgYnVpbHRpbi9hZGQuYzozMjMgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyMgorIzogYnVpbHRpbi9jb21taXQuYzoxMzYwIGJ1aWx0aW4vY291bnQtb2JqZWN0cy5jOjk4IGJ1aWx0aW4vZnNjay5jOjc3NAorIzogYnVpbHRpbi9sb2cuYzoyMTY2IGJ1aWx0aW4vbXYuYzoxMjMgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjgKIG1zZ2lkICJiZSB2ZXJib3NlIgogbXNnc3RyICJzZXIgdmVyYm9zbyIKIAotIzogYXBwbHkuYzo1MDE4CisjOiBhcHBseS5jOjUwMjcKIG1zZ2lkICJ0b2xlcmF0ZSBpbmNvcnJlY3RseSBkZXRlY3RlZCBtaXNzaW5nIG5ldy1saW5lIGF0IHRoZSBlbmQgb2YgZmlsZSIKIG1zZ3N0ciAiIgogInRvbGVyYXIgbnVldmFzIGzDrW5lYXMgZmFsdGFudGVzIGRldGVjdGFkYXMgaW5jb3JyZWN0YW1lbnRlIGFsIGZpbmFsIGRlbCAiCiAiYXJjaGl2byIKIAotIzogYXBwbHkuYzo1MDIxCisjOiBhcHBseS5jOjUwMzAKIG1zZ2lkICJkbyBub3QgdHJ1c3QgdGhlIGxpbmUgY291bnRzIGluIHRoZSBodW5rIGhlYWRlcnMiCiBtc2dzdHIgIm5vIGNvbmZpYXIgZW4gZWwgY29udGVvIGRlIGzDrW5lYXMgZW4gbG9zIGhlYWRlcnMgZGVsIGh1bmsiCiAKLSM6IGFwcGx5LmM6NTAyMyBidWlsdGluL2FtLmM6MjIwNgorIzogYXBwbHkuYzo1MDMyIGJ1aWx0aW4vYW0uYzoyMjQ4CiBtc2dpZCAicm9vdCIKIG1zZ3N0ciAicmHDrXoiCiAKLSM6IGFwcGx5LmM6NTAyNAorIzogYXBwbHkuYzo1MDMzCiBtc2dpZCAicHJlcGVuZCA8cm9vdD4gdG8gYWxsIGZpbGVuYW1lcyIKIG1zZ3N0ciAiYW50ZXBvbmVyIDxyb290PiBhIHRvZG9zIGxvcyBub21icmVzIGRlIGFyY2hpdm9zIgogCkBAIC03NzEsMTQ4ICsxNDY5LDE2OCBAQAogbXNnaWQgImdpdCBhcmNoaXZlIC0tcmVtb3RlIDxyZXBvPiBbLS1leGVjIDxjbWQ+XSAtLWxpc3QiCiBtc2dzdHIgImdpdCBhcmNoaXZlIC0tcmVtb3RlIDxyZXBvPiBbLS1leGVjIDxjb21hbmRvPl0gLS1saXN0IgogCi0jOiBhcmNoaXZlLmM6MzcwIGJ1aWx0aW4vYWRkLmM6MTc2IGJ1aWx0aW4vYWRkLmM6NTE0IGJ1aWx0aW4vcm0uYzoyOTgKKyM6IGFyY2hpdmUuYzozNzIgYnVpbHRpbi9hZGQuYzoxODEgYnVpbHRpbi9hZGQuYzo1ODggYnVpbHRpbi9ybS5jOjMxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGRpZCBub3QgbWF0Y2ggYW55IGZpbGVzIgogbXNnc3RyICJydXRhIGVzcGVjaWZpY2FkYSAnJXMnIG5vIGNvbmNvcmTDsyBjb24gbmluZ3VuYSBjYXJwZXRhIgogCi0jOiBhcmNoaXZlLmM6NDUzCisjOiBhcmNoaXZlLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggcmVmOiAlLipzIgorbXNnc3RyICJubyBleGlzdGUgZWwgcmVmOiAlLipzIgorCisjOiBhcmNoaXZlLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAlcyIKK21zZ3N0ciAibm9tYnJlIGRlIG9iamV0byBubyB2w6FsaWRvOiAlcyIKKworIzogYXJjaGl2ZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB0cmVlIG9iamVjdDogJXMiCittc2dzdHIgIm5vIGVzIHVuIG9iamV0byB0cmVlOiAlcyIKKworIzogYXJjaGl2ZS5jOjQyNgorbXNnaWQgImN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkgaXMgdW50cmFja2VkIgorbXNnc3RyICJkaXJlY3RvcmlvIGRlIHRyYWJham8gYWN0dWFsIG5vIHJhc3RyZWFkbyIKKworIzogYXJjaGl2ZS5jOjQ1NwogbXNnaWQgImZtdCIKIG1zZ3N0ciAiZm10IgogCi0jOiBhcmNoaXZlLmM6NDUzCisjOiBhcmNoaXZlLmM6NDU3CiBtc2dpZCAiYXJjaGl2ZSBmb3JtYXQiCiBtc2dzdHIgImZvcm1hdG8gZGVsIGFyY2hpdm8iCiAKLSM6IGFyY2hpdmUuYzo0NTQgYnVpbHRpbi9sb2cuYzoxNTM2CisjOiBhcmNoaXZlLmM6NDU4IGJ1aWx0aW4vbG9nLmM6MTY1MwogbXNnaWQgInByZWZpeCIKIG1zZ3N0ciAicHJlZmlqbyIKIAotIzogYXJjaGl2ZS5jOjQ1NQorIzogYXJjaGl2ZS5jOjQ1OQogbXNnaWQgInByZXBlbmQgcHJlZml4IHRvIGVhY2ggcGF0aG5hbWUgaW4gdGhlIGFyY2hpdmUiCiBtc2dzdHIgImFudGVwb25lciBwcmVmaWpvIGEgY2FkYSBydXRhIGVuIGVsIGFyY2hpdm8iCiAKLSM6IGFyY2hpdmUuYzo0NTYgYnVpbHRpbi9ibGFtZS5jOjgyMCBidWlsdGluL2JsYW1lLmM6ODIxIGJ1aWx0aW4vY29uZmlnLmM6MTI5Ci0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNSBidWlsdGluL2dyZXAuYzo4ODQKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDQgYnVpbHRpbi9scy1maWxlcy5jOjU1OSBidWlsdGluL2xzLWZpbGVzLmM6NTYyCi0jOiBidWlsdGluL25vdGVzLmM6NDEyIGJ1aWx0aW4vbm90ZXMuYzo1NzUgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjIKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNjIKKyM6IGFyY2hpdmUuYzo0NjAgYnVpbHRpbi9ibGFtZS5jOjg2MSBidWlsdGluL2JsYW1lLmM6ODY1IGJ1aWx0aW4vYmxhbWUuYzo4NjYKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTcgYnVpbHRpbi9jb25maWcuYzoxMzAgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY0IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY4IGJ1aWx0aW4vZ3JlcC5jOjg4NworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNSBidWlsdGluL2xzLWZpbGVzLmM6NTYwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTIgYnVpbHRpbi9ub3Rlcy5jOjU3OCBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogcGFyc2Utb3B0aW9ucy5oOjE5MAogbXNnaWQgImZpbGUiCiBtc2dzdHIgImNhcnBldGEiCiAKLSM6IGFyY2hpdmUuYzo0NTcgYnVpbHRpbi9hcmNoaXZlLmM6ODkKKyM6IGFyY2hpdmUuYzo0NjEgYnVpbHRpbi9hcmNoaXZlLmM6OTAKIG1zZ2lkICJ3cml0ZSB0aGUgYXJjaGl2ZSB0byB0aGlzIGZpbGUiCiBtc2dzdHIgImVzY3JpYmUgZWwgYXJjaGl2byBlbiBlc3RhIGNhcnBldGEiCiAKLSM6IGFyY2hpdmUuYzo0NTkKKyM6IGFyY2hpdmUuYzo0NjMKIG1zZ2lkICJyZWFkIC5naXRhdHRyaWJ1dGVzIGluIHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICJsZWVyIC5naXRhdHRyaWJ1dGVzIGVuIGVsIGRpcmVjdG9yaW8gZGUgdHJhYmFqbyIKIAotIzogYXJjaGl2ZS5jOjQ2MAorIzogYXJjaGl2ZS5jOjQ2NAogbXNnaWQgInJlcG9ydCBhcmNoaXZlZCBmaWxlcyBvbiBzdGRlcnIiCiBtc2dzdHIgInJlcG9ydGFyIGFyY2hpdm9zIGFyY2hpdmFkb3MgcG9yIHN0ZGVyciIKIAotIzogYXJjaGl2ZS5jOjQ2MQorIzogYXJjaGl2ZS5jOjQ2NQogbXNnaWQgInN0b3JlIG9ubHkiCiBtc2dzdHIgInNvbG8gZ3VhcmRhciIKIAotIzogYXJjaGl2ZS5jOjQ2MgorIzogYXJjaGl2ZS5jOjQ2NgogbXNnaWQgImNvbXByZXNzIGZhc3RlciIKLW1zZ3N0ciAiY29tcHJpbWlyIG1hcyByw6FwaWRvIgorbXNnc3RyICJjb21wcmltaXIgbcOhcyByw6FwaWRvIgogCi0jOiBhcmNoaXZlLmM6NDcwCisjOiBhcmNoaXZlLmM6NDc0CiBtc2dpZCAiY29tcHJlc3MgYmV0dGVyIgogbXNnc3RyICJjb21wcmltaXIgbWVqb3IiCiAKLSM6IGFyY2hpdmUuYzo0NzMKKyM6IGFyY2hpdmUuYzo0NzcKIG1zZ2lkICJsaXN0IHN1cHBvcnRlZCBhcmNoaXZlIGZvcm1hdHMiCiBtc2dzdHIgImxpc3RhciBsb3MgZm9ybWF0b3MgZGUgY2FycGV0YSBzb3BvcnRhZG9zIgogCi0jOiBhcmNoaXZlLmM6NDc1IGJ1aWx0aW4vYXJjaGl2ZS5jOjkwIGJ1aWx0aW4vY2xvbmUuYzoxMTEgYnVpbHRpbi9jbG9uZS5jOjExNAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTUKKyM6IGFyY2hpdmUuYzo0NzkgYnVpbHRpbi9hcmNoaXZlLmM6OTEgYnVpbHRpbi9jbG9uZS5jOjExMyBidWlsdGluL2Nsb25lLmM6MTE2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxMQogbXNnaWQgInJlcG8iCiBtc2dzdHIgInJlcG8iCiAKLSM6IGFyY2hpdmUuYzo0NzYgYnVpbHRpbi9hcmNoaXZlLmM6OTEKKyM6IGFyY2hpdmUuYzo0ODAgYnVpbHRpbi9hcmNoaXZlLmM6OTIKIG1zZ2lkICJyZXRyaWV2ZSB0aGUgYXJjaGl2ZSBmcm9tIHJlbW90ZSByZXBvc2l0b3J5IDxyZXBvPiIKIG1zZ3N0ciAib2J0ZW5lciBsYSBjYXJwZXRhIGRlbCByZXBvc2l0b3JpbyByZW1vdG8gPHJlcG8+IgogCi0jOiBhcmNoaXZlLmM6NDc3IGJ1aWx0aW4vYXJjaGl2ZS5jOjkyIGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTQKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0OTYKKyM6IGFyY2hpdmUuYzo0ODEgYnVpbHRpbi9hcmNoaXZlLmM6OTMgYnVpbHRpbi9kaWZmdG9vbC5jOjcxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQ5OAogbXNnaWQgImNvbW1hbmQiCiBtc2dzdHIgImNvbWFuZG8iCiAKLSM6IGFyY2hpdmUuYzo0NzggYnVpbHRpbi9hcmNoaXZlLmM6OTMKKyM6IGFyY2hpdmUuYzo0ODIgYnVpbHRpbi9hcmNoaXZlLmM6OTQKIG1zZ2lkICJwYXRoIHRvIHRoZSByZW1vdGUgZ2l0LXVwbG9hZC1hcmNoaXZlIGNvbW1hbmQiCiBtc2dzdHIgInJ1dGEgcGFyYSBlbCBjb21hbmRvIGdpdC11cGxvYWQtYXJjaGl2byByZW1vdG8iCiAKLSM6IGFyY2hpdmUuYzo0ODUKKyM6IGFyY2hpdmUuYzo0ODkKIG1zZ2lkICJVbmV4cGVjdGVkIG9wdGlvbiAtLXJlbW90ZSIKIG1zZ3N0ciAiT3BjacOzbiBpbmVzcGVyYWRhIC0tcmVtb3RlIgogCi0jOiBhcmNoaXZlLmM6NDg3CisjOiBhcmNoaXZlLmM6NDkxCiBtc2dpZCAiT3B0aW9uIC0tZXhlYyBjYW4gb25seSBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggLS1yZW1vdGUiCiBtc2dzdHIgIk9wY2nDs24gLS1leGVjIHNvbG8gcHVlZGUgc2VyIHV0aWxpemFkYSBjb24gLS1yZW1vdGUiCiAKLSM6IGFyY2hpdmUuYzo0ODkKKyM6IGFyY2hpdmUuYzo0OTMKIG1zZ2lkICJVbmV4cGVjdGVkIG9wdGlvbiAtLW91dHB1dCIKIG1zZ3N0ciAiT3BjacOzbiBpbmVzcGVyYWRhIC0tb3V0cHV0IgogCi0jOiBhcmNoaXZlLmM6NTExCisjOiBhcmNoaXZlLmM6NTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gYXJjaGl2ZSBmb3JtYXQgJyVzJyIKIG1zZ3N0ciAiRm9ybWF0byBkZSBjYXJwZXRhIGRlc2Nvbm9jaWRvICclcyciCiAKLSM6IGFyY2hpdmUuYzo1MTgKKyM6IGFyY2hpdmUuYzo1MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXJndW1lbnQgbm90IHN1cHBvcnRlZCBmb3IgZm9ybWF0ICclcyc6IC0lZCIKIG1zZ3N0ciAiQXJndW1lbnRvIG5vIHNvcG9ydGFkbyBwYXJhIGZvcm1hdG8gJyVzJzogLSVkIgogCi0jOiBhcmNoaXZlLXRhci5jOjEyNSBhcmNoaXZlLXppcC5jOjM0NQorIzogYXJjaGl2ZS10YXIuYzoxMjUgYXJjaGl2ZS16aXAuYzozNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0cmVhbSBibG9iICVzIgogbXNnc3RyICJubyBzZSBwdWVkZSB0cmFuc21pdGlyIGVsIGJsb2IgJXMiCiAKLSM6IGFyY2hpdmUtdGFyLmM6MjYwIGFyY2hpdmUtemlwLmM6MzYzCisjOiBhcmNoaXZlLXRhci5jOjI2NiBhcmNoaXZlLXppcC5jOjM2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnN1cHBvcnRlZCBmaWxlIG1vZGU6IDAlbyAoU0hBMTogJXMpIgogbXNnc3RyICJtb2RvIGRlIGFyY2hpdm8gbm8gc29wb3J0YWRvOiAwJW8gKFNIQTE6ICVzKSIKIAotIzogYXJjaGl2ZS10YXIuYzoyODcgYXJjaGl2ZS16aXAuYzozNTMKKyM6IGFyY2hpdmUtdGFyLmM6MjkzIGFyY2hpdmUtemlwLmM6MzU5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICVzIgogbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyICVzIgogCi0jOiBhcmNoaXZlLXRhci5jOjQ1OAorIzogYXJjaGl2ZS10YXIuYzo0NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHN0YXJ0ICclcycgZmlsdGVyIgogbXNnc3RyICJubyBzZSBwdWVkZSBjb21lbnphciBmaWx0cm8gJyVzJyIKIAotIzogYXJjaGl2ZS10YXIuYzo0NjEKKyM6IGFyY2hpdmUtdGFyLmM6NDY4CiBtc2dpZCAidW5hYmxlIHRvIHJlZGlyZWN0IGRlc2NyaXB0b3IiCiBtc2dzdHIgImluY2FwYXogZGUgcmVkaXJpZ2lyIGRlc2NyaXB0b3IiCiAKLSM6IGFyY2hpdmUtdGFyLmM6NDY4CisjOiBhcmNoaXZlLXRhci5jOjQ3NQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGZpbHRlciByZXBvcnRlZCBlcnJvciIKIG1zZ3N0ciAiZmlsdHJvICclcycgcmVwb3J0w7MgdW4gZXJyb3IiCiAKLSM6IGFyY2hpdmUtemlwLmM6MzE0CisjOiBhcmNoaXZlLXppcC5jOjMxOQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoIGlzIG5vdCB2YWxpZCBVVEYtODogJXMiCiBtc2dzdHIgInJ1dGEgbm8gdsOhbGlkYSBVVEYtODogJXMiCiAKLSM6IGFyY2hpdmUtemlwLmM6MzE4CisjOiBhcmNoaXZlLXppcC5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoIHRvbyBsb25nICglZCBjaGFycywgU0hBMTogJXMpOiAlcyIKIG1zZ3N0ciAicnV0YSBtdXkgbGFyZ2EgKCVkIGNoYXJzLCBTSEExOiAlcyk6ICVzIgogCi0jOiBhcmNoaXZlLXppcC5jOjQ3NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNworIzogYXJjaGl2ZS16aXAuYzo0ODAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMzEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVmbGF0ZSBlcnJvciAoJWQpIgogbXNnc3RyICJlcnJvciBhbCBkZXNpbmZsYXIgKCVkKSIKIAotIzogYXJjaGl2ZS16aXAuYzo2MDkKKyM6IGFyY2hpdmUtemlwLmM6NjE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRpbWVzdGFtcCB0b28gbGFyZ2UgZm9yIHRoaXMgc3lzdGVtOiAlPFBSSXVNQVg+IgogbXNnc3RyICJ0aW1lc3RhbXAgbXV5IGxhcmdvIHBhcmEgZXN0ZSBzaXN0ZW1hOiAlPFBSSXVNQVg+IgpAQCAtOTIwLDcgKzE2MzgsMTIgQEAKICM6IGF0dHIuYzoyMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJS4qcyBpcyBub3QgYSB2YWxpZCBhdHRyaWJ1dGUgbmFtZSIKLW1zZ3N0ciAiJS4qcyBubyBlcyB1biBub21icmUgZGUgYXRyaWJ1dG8gdmFsaWRvIgorbXNnc3RyICIlLipzIG5vIGVzIHVuIG5vbWJyZSBkZSBhdHJpYnV0byB2w6FsaWRvIgorCisjOiBhdHRyLmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIG5vdCBhbGxvd2VkOiAlczolZCIKK21zZ3N0ciAiJXMgbm8gcGVybWl0aWRvOiAlczolZCIKIAogIzogYXR0ci5jOjQwOQogbXNnaWQgIiIKQEAgLTkzNSwxNyArMTY1OCwxNyBAQAogbXNnaWQgIkJhZGx5IHF1b3RlZCBjb250ZW50IGluIGZpbGUgJyVzJzogJXMiCiBtc2dzdHIgIlJldmlzYSBsYXMgY29taWxsYXMgZW4gZWwgYXJjaGl2byAnJXMnOiAlcyIKIAotIzogYmlzZWN0LmM6Njc2CisjOiBiaXNlY3QuYzo2NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiV2UgY2Fubm90IGJpc2VjdCBtb3JlIVxuIgogbXNnc3RyICLCoU5vIHBvZGVtb3MgYmlzZWNjaW9uYXIgbcOhcyFcbiIKIAotIzogYmlzZWN0LmM6NzMwCisjOiBiaXNlY3QuYzo3NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgY29tbWl0IG5hbWUgJXMiCi1tc2dzdHIgIk5vIGVzIHVuIG5vbWJyZSBkZSBjb21taXQgdmFsaWRvICVzIgorbXNnc3RyICJObyBlcyB1biBub21icmUgZGUgY29tbWl0IHbDoWxpZG8gJXMiCiAKLSM6IGJpc2VjdC5jOjc1NAorIzogYmlzZWN0LmM6NzcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgbWVyZ2UgYmFzZSAlcyBpcyBiYWQuXG4iCkBAIC05NTQsNyArMTY3Nyw3IEBACiAiTGEgYmFzZSBkZSBmaXNpw7NuICVzIGVzdMOhIG1hbC5cbiIKICJFc3RvIHF1aWVyZSBkZWNpciBxdWUgZWwgYnVnIGhhIHNpZG8gYXJyZWdsYWRvIGVudHJlICVzIHkgWyVzXS5cbiIKIAotIzogYmlzZWN0LmM6NzU5CisjOiBiaXNlY3QuYzo3NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBtZXJnZSBiYXNlICVzIGlzIG5ldy5cbiIKQEAgLTk2Myw3ICsxNjg2LDcgQEAKICJMYSBiYXNlIGRlIGZpc2nDs24gJXMgZXMgbnVldmEuXG4iCiAiRXN0YSBwcm9waWVkYWQgaGEgY2FtYmlhZG8gZW50cmUgJXMgeSBbJXNdLlxuIgogCi0jOiBiaXNlY3QuYzo3NjQKKyM6IGJpc2VjdC5jOjc4MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIG1lcmdlIGJhc2UgJXMgaXMgJXMuXG4iCkBAIC05NzIsNyArMTY5NSw3IEBACiAiTGEgYmFzZSBkZSBmaXNpw7NuICVzIGVzICVzLlxuIgogIkVzdG8gcXVpZXJlIGRlY2lyIHF1ZSBlbCBwcmltZXIgJyVzJyBjb21taXQgZXN0w6EgZW50cmUgJXMgeSBbJXNdLlxuIgogCi0jOiBiaXNlY3QuYzo3NzIKKyM6IGJpc2VjdC5jOjc4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiU29tZSAlcyByZXZzIGFyZSBub3QgYW5jZXN0b3JzIG9mIHRoZSAlcyByZXYuXG4iCkBAIC05ODEsOSArMTcwNCw5IEBACiBtc2dzdHIgIiIKICJBbGd1bmFzICVzIHJldmlzaW9uZXMgbm8gc29uIGFuY2VzdHJvcyBkZSBsYSByZXZpc2nDs24gJXMuXG4iCiAiZ2l0IGJpc2VjdCBubyBwdWVkZSB0cmFiYWphciBiaWVuIGVuIGVzdGUgY2Fzby5cbiIKLSJUYWwgdmV6IGNvbmZ1bmRpw7MgbGEgcmV2aXNpw7NuICVzIHkgJXM/XG4iCisiwr9UYWwgdmV6IGNvbmZ1bmRpc3RlIGxhIHJldmlzacOzbiAlcyB5ICVzP1xuIgogCi0jOiBiaXNlY3QuYzo3ODUKKyM6IGJpc2VjdC5jOjgwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidGhlIG1lcmdlIGJhc2UgYmV0d2VlbiAlcyBhbmQgWyVzXSBtdXN0IGJlIHNraXBwZWQuXG4iCkBAIC05OTQsMzYgKzE3MTcsMzYgQEAKICJBc8OtIHF1ZSBubyBwb2RlbW9zIGVzdGFyIHNlZ3Vyb3MgcXVlIGVsIHByaW1lciAlcyBjb21taXQgZXN0w6EgZW50cmUlcyB5ICVzLlxuIgogIlZhbW9zIGEgY29udGludWFyIGRlIHRvZGFzIG1hbmVyYXMuIgogCi0jOiBiaXNlY3QuYzo4MTgKKyM6IGJpc2VjdC5jOjg0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJCaXNlY3Rpbmc6IGEgbWVyZ2UgYmFzZSBtdXN0IGJlIHRlc3RlZFxuIgogbXNnc3RyICJCaXNlY2Npb25hbmRvOiB1bmEgYmFzZSBkZSBmaXNpw7NuIGRlYmUgc2VyIHByb2JhZGFcbiIKIAotIzogYmlzZWN0LmM6ODU4CisjOiBiaXNlY3QuYzo4OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSAlcyByZXZpc2lvbiBpcyBuZWVkZWQiCiBtc2dzdHIgInVuYSAlcyByZXZpc2nDs24gZXMgbmVjZXNhcmlhIgogCi0jOiBiaXNlY3QuYzo4NzcgYnVpbHRpbi9ub3Rlcy5jOjE3NyBidWlsdGluL3RhZy5jOjIzNworIzogYmlzZWN0LmM6OTIwIGJ1aWx0aW4vbm90ZXMuYzoxNzcgYnVpbHRpbi90YWcuYzoyNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBmaWxlICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gY3JlYXIgZWwgYXJjaGl2byAnJXMnIgogCi0jOiBiaXNlY3QuYzo5MjggYnVpbHRpbi9tZXJnZS5jOjEzOAorIzogYmlzZWN0LmM6OTY2IGJ1aWx0aW4vbWVyZ2UuYzoxNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgZmlsZSAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGxlZXIgZWwgYXJjaGl2byAnJXMnIgogCi0jOiBiaXNlY3QuYzo5NTgKKyM6IGJpc2VjdC5jOjk5NwogbXNnaWQgInJlYWRpbmcgYmlzZWN0IHJlZnMgZmFpbGVkIgogbXNnc3RyICJmYWxsw7MgbGVlciBsYXMgcmVmcyBkZSBiaXNlY3QiCiAKLSM6IGJpc2VjdC5jOjk3NworIzogYmlzZWN0LmM6MTAxOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB3YXMgYm90aCAlcyBhbmQgJXNcbiIKIG1zZ3N0ciAiJXMgZnVlIHRhbnRvICVzIGNvbW8gJXNcbiIKIAotIzogYmlzZWN0LmM6OTg1CisjOiBiaXNlY3QuYzoxMDI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyB0ZXN0YWJsZSBjb21taXQgZm91bmQuXG4iCkBAIC0xMDMyLDcgKzE3NTUsNyBAQAogIk5vIHNlIGVuY29udHLDsyBjb21taXQgcXVlIHNlIHB1ZWRhIHByb2Jhci5cbiIKICLCv1F1aXrDoXMgaW5pY2lhc3RlIGNvbiBwYXLDoW1ldHJvcyBkZSBydXRhcyBpbmNvcnJlY3Rvcz9cbiIKIAotIzogYmlzZWN0LmM6MTAwNAorIzogYmlzZWN0LmM6MTA1NwogIywgYy1mb3JtYXQKIG1zZ2lkICIocm91Z2hseSAlZCBzdGVwKSIKIG1zZ2lkX3BsdXJhbCAiKHJvdWdobHkgJWQgc3RlcHMpIgpAQCAtMTA0Miw1MiArMTc2NSw1MiBAQAogIy4gVFJBTlNMQVRPUlM6IHRoZSBsYXN0ICVzIHdpbGwgYmUgcmVwbGFjZWQgd2l0aCAiKHJvdWdobHkgJWQKICMuIHN0ZXBzKSIgdHJhbnNsYXRpb24uCiAjLgotIzogYmlzZWN0LmM6MTAxMAorIzogYmlzZWN0LmM6MTA2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJCaXNlY3Rpbmc6ICVkIHJldmlzaW9uIGxlZnQgdG8gdGVzdCBhZnRlciB0aGlzICVzXG4iCiBtc2dpZF9wbHVyYWwgIkJpc2VjdGluZzogJWQgcmV2aXNpb25zIGxlZnQgdG8gdGVzdCBhZnRlciB0aGlzICVzXG4iCiBtc2dzdHJbMF0gIkJpc2VjY2lvbmFuZG86IGZhbHRhICVkIHJldmlzacOzbiBwb3IgcHJvYmFyIGRlc3B1w6lzIGRlIGVzdG8gJXNcbiIKIG1zZ3N0clsxXSAiQmlzZWNjaW9uYW5kbzogZmFsdGFuICVkIHJldmlzaW9uZXMgcG9yIHByb2JhciBkZXNwdcOpcyBkZSBlc3RvICVzXG4iCiAKLSM6IGJsYW1lLmM6MTc4NworIzogYmxhbWUuYzoyNzAwCiBtc2dpZCAiLS1jb250ZW50cyBhbmQgLS1yZXZlcnNlIGRvIG5vdCBibGVuZCB3ZWxsLiIKIG1zZ3N0ciAiLS1jb250ZW50cyB5IC0tcmV2ZXJzZSBubyBzZSBtZXpjbGFuIGJpZW4uIgogCi0jOiBibGFtZS5jOjE4MDEKKyM6IGJsYW1lLmM6MjcxNAogbXNnaWQgImNhbm5vdCB1c2UgLS1jb250ZW50cyB3aXRoIGZpbmFsIGNvbW1pdCBvYmplY3QgbmFtZSIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgdXNhciAtLWNvbnRlbnRzIGNvbiBlbCBub21icmUgZGUgb2JqZXRvIGNvbW1pdCBmaW5hbCIKIAotIzogYmxhbWUuYzoxODIyCisjOiBibGFtZS5jOjI3MzUKIG1zZ2lkICItLXJldmVyc2UgYW5kIC0tZmlyc3QtcGFyZW50IHRvZ2V0aGVyIHJlcXVpcmUgc3BlY2lmaWVkIGxhdGVzdCBjb21taXQiCiBtc2dzdHIgIiIKICItLXJldmVyc2UgeSAtLWZpcnN0LXBhcmVudCBqdW50b3MgcmVxdWllcmVuIGVzcGVjaWZpY2FyIGVsIMO6bHRpbW8gY29tbWl0IgogCi0jOiBibGFtZS5jOjE4MzEgYnVuZGxlLmM6MTYyIHJlZi1maWx0ZXIuYzoyMDQ2IHNlcXVlbmNlci5jOjE5NjMKLSM6IHNlcXVlbmNlci5jOjQwMDIgYnVpbHRpbi9jb21taXQuYzoxMDAxIGJ1aWx0aW4vbG9nLmM6Mzc3IGJ1aWx0aW4vbG9nLmM6OTMyCi0jOiBidWlsdGluL2xvZy5jOjE0MDcgYnVpbHRpbi9sb2cuYzoxNzgzIGJ1aWx0aW4vbG9nLmM6MjA3MiBidWlsdGluL21lcmdlLmM6NDA2Ci0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMzcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTUyCisjOiBibGFtZS5jOjI3NDQgYnVuZGxlLmM6MTY3IHJlZi1maWx0ZXIuYzoyMjAzIHJlbW90ZS5jOjE5NDIgc2VxdWVuY2VyLmM6MjAwNgorIzogc2VxdWVuY2VyLmM6NDM1OCBzdWJtb2R1bGUuYzo4NDcgYnVpbHRpbi9jb21taXQuYzoxMDQ1IGJ1aWx0aW4vbG9nLmM6Mzg4CisjOiBidWlsdGluL2xvZy5jOjk5MSBidWlsdGluL2xvZy5jOjE1MjAgYnVpbHRpbi9sb2cuYzoxOTI1IGJ1aWx0aW4vbG9nLmM6MjIxNQorIzogYnVpbHRpbi9tZXJnZS5jOjQxMiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkwCiAjOiBidWlsdGluL3Nob3J0bG9nLmM6MTkyCiBtc2dpZCAicmV2aXNpb24gd2FsayBzZXR1cCBmYWlsZWQiCiBtc2dzdHIgImZhbGzDsyBsYSBjb25maWd1cmFjacOzbiBkZWwgY2FtaW5vIGRlIHJldmlzacOzbiIKIAotIzogYmxhbWUuYzoxODQ5CisjOiBibGFtZS5jOjI3NjIKIG1zZ2lkICIiCiAiLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IHRvZ2V0aGVyIHJlcXVpcmUgcmFuZ2UgYWxvbmcgZmlyc3QtcGFyZW50IGNoYWluIgogbXNnc3RyICIiCiAiLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IGp1bnRvcyByZXF1aWVyZW4gdW4gcmFuZ28gYSBsbyBsYXJnbyBkZSBsYSBjYWRlbmEgIgogImRlbCBwcmltZXIgcGFkcmUiCiAKLSM6IGJsYW1lLmM6MTg2MAorIzogYmxhbWUuYzoyNzczCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggcGF0aCAlcyBpbiAlcyIKIG1zZ3N0ciAibm8gaGF5IHVuYSBydXRhICVzIGVuICVzIgogCi0jOiBibGFtZS5jOjE4NzEKKyM6IGJsYW1lLmM6Mjc4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBibG9iICVzIGZvciBwYXRoICVzIgogbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyIGVsIGJsb2IgJXMgcGFyYSBsYSBydXRhICVzIgogCi0jOiBicmFuY2guYzo1MgorIzogYnJhbmNoLmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTEwMCw5NyArMTgyMyw5NyBAQAogImxhIGluZmFtYWNpw7NuIGRlbCByYXN0cmVvIHJlbW90byBpbnZvY2FuZG9cbiIKICJcImdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMlcyVzXCIuIgogCi0jOiBicmFuY2guYzo2NgorIzogYnJhbmNoLmM6NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IHNldHRpbmcgYnJhbmNoICVzIGFzIGl0cyBvd24gdXBzdHJlYW0uIgogbXNnc3RyICJMYSByYW1hICVzIG5vIHNlIGNvbmZpZ3VyYSBjb21vIHN1IHByb3BpbyB1cHN0cmVhbS4iCiAKLSM6IGJyYW5jaC5jOjkyCisjOiBicmFuY2guYzo5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIGJyYW5jaCAnJXMnIGZyb20gJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgIiIKICJSYW1hICclcycgY29uZmlndXJhZGEgcGFyYSBoYWNlciBzZWd1aW1pZW50byBhIGxhIHJhbWEgcmVtb3RhICclcycgZGUgJyVzJyAiCiAicG9yIHJlYmFzZS4iCiAKLSM6IGJyYW5jaC5jOjkzCisjOiBicmFuY2guYzo5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIGJyYW5jaCAnJXMnIGZyb20gJyVzJy4iCiBtc2dzdHIgIiIKICJSYW1hICclcycgY29uZmlndXJhZGEgcGFyYSBoYWNlciBzZWd1aW1pZW50byBhIGxhIHJhbWEgcmVtb3RhICclcycgZGUgJyVzJy4iCiAKLSM6IGJyYW5jaC5jOjk3CisjOiBicmFuY2guYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycgYnkgcmViYXNpbmcuIgogbXNnc3RyICIiCiAiUmFtYSAnJXMnIGNvbmZpZ3VyYWRhIHBhcmEgaGFjZXIgc2VndWltaWVudG8gYSBsYSByYW1hIGxvY2FsICclcycgcG9yIHJlYmFzZS4iCiAKLSM6IGJyYW5jaC5jOjk4CisjOiBicmFuY2guYzo5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycuIgogbXNnc3RyICJSYW1hICclcycgY29uZmlndXJhZGEgcGFyYSBoYWNlciBzZWd1aW1pZW50byBhIGxhIHJhbWEgbG9jYWwgJyVzJy4iCiAKLSM6IGJyYW5jaC5jOjEwMworIzogYnJhbmNoLmM6MTA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgcmVmICclcycgYnkgcmViYXNpbmcuIgogbXNnc3RyICIiCiAiUmFtYSAnJXMnIGNvbmZpZ3VyYWRhIHBhcmEgaGFjZXIgc2VndWltaWVudG8gYSBsYSByZWZlcmVuY2lhIHJlbW90YSAnJXMnIHBvciAiCiAicmViYXNlLiIKIAotIzogYnJhbmNoLmM6MTA0CisjOiBicmFuY2guYzoxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIHJlbW90ZSByZWYgJyVzJy4iCiBtc2dzdHIgIiIKICJSYW1hICclcycgY29uZmlndXJhZGEgcGFyYSBoYWNlciBzZWd1aW1pZW50byBhIGxhIHJlZmVyZW5jaWEgcmVtb3RhICclcycuIgogCi0jOiBicmFuY2guYzoxMDgKKyM6IGJyYW5jaC5jOjEwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycgYnkgcmViYXNpbmcuIgogbXNnc3RyICIiCiAiUmFtYSAnJXMnIGNvbmZpZ3VyYWRhIHBhcmEgaGFjZXIgc2VndWltaWVudG8gYSBsYSByZWZlcmVuY2lhIGxvY2FsICclcycgcG9yICIKICJyZWJhc2UuIgogCi0jOiBicmFuY2guYzoxMDkKKyM6IGJyYW5jaC5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycuIgogbXNnc3RyICIiCiAiUmFtYSAnJXMnIGNvbmZpZ3VyYWRhIHBhcmEgaGFjZXIgc2VndWltaWVudG8gYSBsYSByZWZlcmVuY2lhIGxvY2FsICclcycuIgogCi0jOiBicmFuY2guYzoxMTgKKyM6IGJyYW5jaC5jOjExOQogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSB1cHN0cmVhbSBicmFuY2ggY29uZmlndXJhdGlvbiIKIG1zZ3N0ciAiTm8gZXMgcG9zaWJsZSBlc2NyaWJpciBsYSBjb25maWd1cmFjacOzbiBkZSBsYSByYW1hIHVwc3RyZWFtIgogCi0jOiBicmFuY2guYzoxNTUKKyM6IGJyYW5jaC5jOjE1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgdHJhY2tpbmc6IGFtYmlndW91cyBpbmZvcm1hdGlvbiBmb3IgcmVmICVzIgogbXNnc3RyICJObyByYXN0cmVhbmRvOiBpbmZvcm1hY2nDs24gYW1iaWd1YSBwYXJhIGxhIHJlZmVyZW5jaWEgJXMiCiAKLSM6IGJyYW5jaC5jOjE4OAorIzogYnJhbmNoLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgYnJhbmNoIG5hbWUuIgotbXNnc3RyICInJXMnIG5vIGVzIHVuIG5vbWJyZSB2YWxpZG8gZGUgcmFtYS4iCittc2dzdHIgIiclcycgbm8gZXMgdW4gbm9tYnJlIHbDoWxpZG8gZGUgcmFtYS4iCiAKLSM6IGJyYW5jaC5jOjIwNworIzogYnJhbmNoLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkEgYnJhbmNoIG5hbWVkICclcycgYWxyZWFkeSBleGlzdHMuIgogbXNnc3RyICJVbmEgcmFtYSBsbGFtYWRhICclcycgeWEgZXhpc3RlLiIKIAotIzogYnJhbmNoLmM6MjEyCisjOiBicmFuY2guYzoyMTMKIG1zZ2lkICJDYW5ub3QgZm9yY2UgdXBkYXRlIHRoZSBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIGZvcnphciBsYSBhY3R1YWxpemFjacOzbiBkZSBsYSByYW1hIGFjdHVhbC4iCiAKLSM6IGJyYW5jaC5jOjIzMgorIzogYnJhbmNoLmM6MjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBzZXR1cCB0cmFja2luZyBpbmZvcm1hdGlvbjsgc3RhcnRpbmcgcG9pbnQgJyVzJyBpcyBub3QgYSBicmFuY2guIgogbXNnc3RyICIiCiAiTm8gc2UgcHVlZGUgY29uZmlndXJhciBlbCByYXN0cmVvIGRlIGluZm9ybWFjacOzbjsgZWwgcHVudG8gZGUgcGFydGlkYSAnJXMnICIKICJubyBlcyB1bmEgcmFtYS4iCiAKLSM6IGJyYW5jaC5jOjIzNAorIzogYnJhbmNoLmM6MjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSByZXF1ZXN0ZWQgdXBzdHJlYW0gYnJhbmNoICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgImxhIHJhbWEgZGUgdXBzdHJlYW0gc29saWNpdGFkYSAnJXMnIG5vIGV4aXN0ZSIKIAotIzogYnJhbmNoLmM6MjM2CisjOiBicmFuY2guYzoyMzcKIG1zZ2lkICIiCiAiXG4iCiAiSWYgeW91IGFyZSBwbGFubmluZyBvbiBiYXNpbmcgeW91ciB3b3JrIG9uIGFuIHVwc3RyZWFtXG4iCkBAIC0xMjExLDI3ICsxOTM0LDI3IEBACiAiXCJnaXQgcHVzaCAtdVwiIHBhcmEgY29uZmlndXJhciB0dSB1cHN0cmVhbSBwcmVkZXRlcm1pbmFkbyBjdWFuZG8gcmVhbGl6YXMgIgogImVsIHB1c2guIgogCi0jOiBicmFuY2guYzoyNzkKKyM6IGJyYW5jaC5jOjI4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJyVzJy4iCi1tc2dzdHIgIk5vbWJyZSBkZSBvYmpldG8gbm8gdmFsaWRvOiAnJXMnLiIKK21zZ3N0ciAiTm9tYnJlIGRlIG9iamV0byBubyB2w6FsaWRvOiAnJXMnLiIKIAotIzogYnJhbmNoLmM6Mjk5CisjOiBicmFuY2guYzozMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQW1iaWd1b3VzIG9iamVjdCBuYW1lOiAnJXMnLiIKIG1zZ3N0ciAiTm9tYnJlIGRlIG9iamV0byBhbWJpZ3VvOiAnJXMnLiIKIAotIzogYnJhbmNoLmM6MzA0CisjOiBicmFuY2guYzozMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgYnJhbmNoIHBvaW50OiAnJXMnLiIKLW1zZ3N0ciAiUHVudG8gZGUgcmFtYSBubyB2YWxpZG86ICclcycuIgorbXNnc3RyICJQdW50byBkZSByYW1hIG5vIHbDoWxpZG86ICclcycuIgogCi0jOiBicmFuY2guYzozNTgKKyM6IGJyYW5jaC5jOjM2NAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFscmVhZHkgY2hlY2tlZCBvdXQgYXQgJyVzJyIKIG1zZ3N0ciAiJyVzJyB5YSBoYSBzaWRvIG1hcmNhZG8gZW4gJyVzJyIKIAotIzogYnJhbmNoLmM6MzgxCisjOiBicmFuY2guYzozODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSEVBRCBvZiB3b3JraW5nIHRyZWUgJXMgaXMgbm90IHVwZGF0ZWQiCiBtc2dzdHIgIkhFQUQgZGVsIMOhcmJvbCBkZSB0cmFiYWpvICVzIG5vIGVzdMOhIGFjdHVhbGl6YWRhIgpAQCAtMTI0Niw4OSArMTk2OSw5MiBAQAogbXNnaWQgInVucmVjb2duaXplZCBoZWFkZXI6ICVzJXMgKCVkKSIKIG1zZ3N0ciAiaGVhZGVyIG5vIHJlY29ub2NpZG8gJXMlcyAoJWQpIgogCi0jOiBidW5kbGUuYzo5MCByZXJlcmUuYzo0ODAgcmVyZXJlLmM6NjkwIHNlcXVlbmNlci5jOjIxODIgc2VxdWVuY2VyLmM6MjcyMgotIzogYnVpbHRpbi9jb21taXQuYzo3NzQKKyM6IGJ1bmRsZS5jOjkwIHJlcmVyZS5jOjQ4MCByZXJlcmUuYzo2OTAgc2VxdWVuY2VyLmM6MjI1OCBzZXF1ZW5jZXIuYzozMDE2CisjOiBidWlsdGluL2NvbW1pdC5jOjgxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGFicmlyICclcyciCiAKLSM6IGJ1bmRsZS5jOjE0MQorIzogYnVuZGxlLmM6MTQzCiBtc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyB0aGVzZSBwcmVyZXF1aXNpdGUgY29tbWl0czoiCiBtc2dzdHIgIkFsIHJlcG9zaXRvcmlvIGxlIGZhbHRhIGVzdG9zIGNvbW1pdHMgcHJlcnJlcXVpc2l0bzoiCiAKLSM6IGJ1bmRsZS5jOjE5MgorIzogYnVuZGxlLmM6MTQ2Cittc2dpZCAibmVlZCBhIHJlcG9zaXRvcnkgdG8gdmVyaWZ5IGEgYnVuZGxlIgorbXNnc3RyICJzZSBuZWNlc2l0YSB1biByZXBvc2l0b3JpbyBwYXJhIHZlcmlmaWNhciB1biBidW5kbGUiCisKKyM6IGJ1bmRsZS5jOjE5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgYnVuZGxlIGNvbnRhaW5zIHRoaXMgcmVmOiIKIG1zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSBjb250YWlucyB0aGVzZSAlZCByZWZzOiIKIG1zZ3N0clswXSAiRWwgYnVuZGxlIGNvbnRpZW5lIGVzdGEgcmVmZXJlbmNpYToiCiBtc2dzdHJbMV0gIkVsIGJ1bmRsZSBjb250aWVuZSBlc3RhcyAlZCByZWZlcmVuY2lhczoiCiAKLSM6IGJ1bmRsZS5jOjE5OQorIzogYnVuZGxlLmM6MjA0CiBtc2dpZCAiVGhlIGJ1bmRsZSByZWNvcmRzIGEgY29tcGxldGUgaGlzdG9yeS4iCiBtc2dzdHIgIkVsIGJ1bmRsZSByZWdpc3RyYSB1bmEgaGlzdG9yaWEgY29tcGxldGEuIgogCi0jOiBidW5kbGUuYzoyMDEKKyM6IGJ1bmRsZS5jOjIwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoaXMgcmVmOiIKIG1zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSByZXF1aXJlcyB0aGVzZSAlZCByZWZzOiIKIG1zZ3N0clswXSAiRWwgYnVuZGxlIHJlcXVpZXJlIGVzdGEgcmVmZXJlbmNpYToiCiBtc2dzdHJbMV0gIkVsIGJ1bmRsZSByZXF1aWVyZSBlc3RhcyAlZCByZWZlcmVuY2lhczoiCiAKLSM6IGJ1bmRsZS5jOjI2NworIzogYnVuZGxlLmM6MjczCiBtc2dpZCAidW5hYmxlIHRvIGR1cCBidW5kbGUgZGVzY3JpcHRvciIKIG1zZ3N0ciAiaW5jYXBheiBkZSBkdXBsaWNhciBidW5kbGUgZGVzY3JpcHRvciIKIAotIzogYnVuZGxlLmM6Mjc0CisjOiBidW5kbGUuYzoyODAKIG1zZ2lkICJDb3VsZCBub3Qgc3Bhd24gcGFjay1vYmplY3RzIgogbXNnc3RyICJObyBzZSBwdWRvIGNyZWFyIGxvcyBwYWNrLW9iamV0Y3RzIgogCi0jOiBidW5kbGUuYzoyODUKKyM6IGJ1bmRsZS5jOjI5MQogbXNnaWQgInBhY2stb2JqZWN0cyBkaWVkIgogbXNnc3RyICJwYWNrLW9iamVjdHMgbXVyacOzIgogCi0jOiBidW5kbGUuYzozMjcKKyM6IGJ1bmRsZS5jOjMzMwogbXNnaWQgInJldi1saXN0IGRpZWQiCiBtc2dzdHIgInJldi1saXN0IG11cmnDsyIKIAotIzogYnVuZGxlLmM6Mzc2CisjOiBidW5kbGUuYzozODIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmICclcycgaXMgZXhjbHVkZWQgYnkgdGhlIHJldi1saXN0IG9wdGlvbnMiCiBtc2dzdHIgInJlZmVyZW5jaWEgJyVzJyBlcyBleGNsdWlkYSBwb3IgbGFzIG9wY2lvbmVzIGRlIHJldi1saXN0IgogCi0jOiBidW5kbGUuYzo0NTYgYnVpbHRpbi9sb2cuYzoxOTIgYnVpbHRpbi9sb2cuYzoxNjg4IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDQKKyM6IGJ1bmRsZS5jOjQ2MSBidWlsdGluL2xvZy5jOjIwMyBidWlsdGluL2xvZy5jOjE4MTQgYnVpbHRpbi9zaG9ydGxvZy5jOjMwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJhcmd1bWVudG8gbm8gcmVjb25vY2lkbzogJXMiCiAKLSM6IGJ1bmRsZS5jOjQ2NAorIzogYnVuZGxlLmM6NDY5CiBtc2dpZCAiUmVmdXNpbmcgdG8gY3JlYXRlIGVtcHR5IGJ1bmRsZS4iCiBtc2dzdHIgIlJlY2hhemFuZG8gY3JlYXIgdW4gYnVuZGxlIHZhY8Otby4iCiAKLSM6IGJ1bmRsZS5jOjQ3NAorIzogYnVuZGxlLmM6NDc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjcmVhdGUgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgY3JlYXIgJyVzJyIKIAotIzogYnVuZGxlLmM6NDk4CisjOiBidW5kbGUuYzo1MDQKIG1zZ2lkICJpbmRleC1wYWNrIGRpZWQiCiBtc2dzdHIgImluZGV4LXBhY2sgbXVyacOzIgogCi0jOiBjb2xvci5jOjI5NgorIzogY29sb3IuYzozMjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb2xvciB2YWx1ZTogJS4qcyIKIG1zZ3N0ciAiY29sb3IgaW52w6FsaWRvOiAlLipzIgogCi0jOiBjb21taXQuYzo1MCBzZXF1ZW5jZXIuYzoyNTI4IGJ1aWx0aW4vYW0uYzozNzAgYnVpbHRpbi9hbS5jOjQxNAotIzogYnVpbHRpbi9hbS5jOjEzOTAgYnVpbHRpbi9hbS5jOjIwMjUgYnVpbHRpbi9yZXBsYWNlLmM6Mzc2Ci0jOiBidWlsdGluL3JlcGxhY2UuYzo0NDgKKyM6IGNvbW1pdC5jOjUxIHNlcXVlbmNlci5jOjI3MTkgYnVpbHRpbi9hbS5jOjM1OSBidWlsdGluL2FtLmM6NDAzCisjOiBidWlsdGluL2FtLmM6MTM3MSBidWlsdGluL2FtLmM6MjAxNCBidWlsdGluL3JlcGxhY2UuYzo0NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlICVzIgogbXNnc3RyICJubyBzZSBwdWVkZSBhbmFsaXphciAlcyIKIAotIzogY29tbWl0LmM6NTIKKyM6IGNvbW1pdC5jOjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzICVzIGlzIG5vdCBhIGNvbW1pdCEiCi1tc2dzdHIgIiVzICVzIG5vIGVzIHVuIGNvbW1pdCEiCittc2dzdHIgIsKhJXMgJXMgbm8gZXMgdW4gY29tbWl0ISIKIAogIzogY29tbWl0LmM6MTkzCiBtc2dpZCAiIgpAQCAtMTM1MCwxMjggKzIwNzYsMzAyIEBACiAiQXBhcGEgZXN0ZSBtZW5zYWplIGVqZWN1dGFuZG9cbiIKICJcImdpdCBjb25maWcgYWR2aWNlLmdyYWZ0RmlsZURlcHJlY2F0ZWQgZmFsc2VcIiIKIAotIzogY29tbWl0LmM6MTExNQorIzogY29tbWl0LmM6MTE1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaGFzIGFuIHVudHJ1c3RlZCBHUEcgc2lnbmF0dXJlLCBhbGxlZ2VkbHkgYnkgJXMuIgogbXNnc3RyICJDb21taXQgJXMgdGllbmUgdW5hIGZpcm1hIEdQRyBubyBjb25maWFibGUsIHByZXRlbmRpZGFtZW50ZSBwb3IgJXMuIgogCi0jOiBjb21taXQuYzoxMTE4CisjOiBjb21taXQuYzoxMTU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBoYXMgYSBiYWQgR1BHIHNpZ25hdHVyZSBhbGxlZ2VkbHkgYnkgJXMuIgogbXNnc3RyICJDb21taXQgJXMgdGllbmUgdW5hIG1hbGEgZmlybWEgR1BHIHByZXRlbmRpZGFtZW50ZSBwb3IgJXMuIgogCi0jOiBjb21taXQuYzoxMTIxCisjOiBjb21taXQuYzoxMTYwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIGEgR1BHIHNpZ25hdHVyZS4iCiBtc2dzdHIgIkNvbW1pdCAlcyBubyB0aWVuZSB1bmEgZmlybWEgR1BHLiIKIAotIzogY29tbWl0LmM6MTEyNAorIzogY29tbWl0LmM6MTE2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaGFzIGEgZ29vZCBHUEcgc2lnbmF0dXJlIGJ5ICVzXG4iCiBtc2dzdHIgIkVsIENvbW1pdCAlcyB0aWVuZSB1bmEgYnVlbmEgZmlybWEgR1BHIHBvciAlc1xuIgogCi0jOiBjb21taXQuYzoxMzc4CisjOiBjb21taXQuYzoxNDE3CiBtc2dpZCAiIgogIldhcm5pbmc6IGNvbW1pdCBtZXNzYWdlIGRpZCBub3QgY29uZm9ybSB0byBVVEYtOC5cbiIKICJZb3UgbWF5IHdhbnQgdG8gYW1lbmQgaXQgYWZ0ZXIgZml4aW5nIHRoZSBtZXNzYWdlLCBvciBzZXQgdGhlIGNvbmZpZ1xuIgogInZhcmlhYmxlIGkxOG4uY29tbWl0ZW5jb2RpbmcgdG8gdGhlIGVuY29kaW5nIHlvdXIgcHJvamVjdCB1c2VzLlxuIgogbXNnc3RyICIiCiAiUGVsaWdybzogZWwgbWVuc2FqZSBkZWwgY29tbWl0IG5vIHNlIGFqdXN0YSBhIFVURi04LlxuIgotIlRhbCB2ZXogcXVpZXJhIGVubWVuZGFybG8gZGVzcHXDqXMgZGUgYXJyZWdsYXIgZWwgbWVuc2FqZSwgbyBhcnJlZ2xhciBsYVxuIgorIlRhbCB2ZXogcXVpZXJhcyBlbm1lbmRhcmxvIGRlc3B1w6lzIGRlIGFycmVnbGFyIGVsIG1lbnNhamUsIG8gYXJyZWdsYXIgbGFcbiIKICJ2YXJpYWJsZSBkZSBjb25maWd1cmFjacOzbiBpMThuLmNvbW1pdGVuY29kaW5nIHBhcmEgbGEgY29kaWZpY2FjacOzbiBxdWUgdXNhICIKLSJzdSBwcm95ZWN0by5cbiIKLQotIzogY29tbWl0LWdyYXBoLmM6MTA4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdyYXBoIGZpbGUgJXMgaXMgdG9vIHNtYWxsIgotbXNnc3RyICJhcmNoaXZvIGdyYXBoICVzIGVzIG11eSBwZXF1ZcOxbyIKLQotIzogY29tbWl0LWdyYXBoLmM6MTE1Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCi1tc2dzdHIgImZpcm1hIGRlIGdyYXBoICVYIG5vIGNvbmN1ZXJkYSBjb24gZmlybWEgJVgiCisidHUgcHJveWVjdG8uXG4iCiAKICM6IGNvbW1pdC1ncmFwaC5jOjEyMgotIywgYy1mb3JtYXQKLW1zZ2lkICJncmFwaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCi1tc2dzdHIgInZlcnNpw7NuIGRlIGdyYXBoICVYIG5vIGNvbmN1ZXJkYSBjb24gdmVyc2nDs24gJVgiCi0KLSM6IGNvbW1pdC1ncmFwaC5jOjEyOQotIywgYy1mb3JtYXQKLW1zZ2lkICJoYXNoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKLW1zZ3N0ciAidmVyc2nDs24gZGUgaGFzaCAlWCBubyBjb25jdWVyZGEgY29uIHZlcnNpw7NuICVYIgotCi0jOiBjb21taXQtZ3JhcGguYzoxNTMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW1wcm9wZXIgY2h1bmsgb2Zmc2V0ICUwOHglMDh4IgotbXNnc3RyICJvZmZzZXQgZGVsIGNodW5rIGltcHJvcGlvICUwOHglMDh4IgorbXNnaWQgImNvbW1pdC1ncmFwaCBmaWxlIGlzIHRvbyBzbWFsbCIKK21zZ3N0ciAiYXJjaGl2byBjb21taXQtZ3JhcGggZXMgbXV5IHBlcXVlw7FvIgogCiAjOiBjb21taXQtZ3JhcGguYzoxODkKICMsIGMtZm9ybWF0Ci1tc2dpZCAiY2h1bmsgaWQgJTA4eCBhcHBlYXJzIG11bHRpcGxlIHRpbWVzIgotbXNnc3RyICJpZCBkZSBjaHVuayAlMDh4IHBhcmVjZSB0ZW5lciBtw7psdGlwbGVzIHRpZW1wb3MiCittc2dpZCAiY29tbWl0LWdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCittc2dzdHIgImZpcm1hICVYIGVuIGNvbW1pdC1ncmFwaCBubyBjb25jdWVyZGEgY29uIGZpcm1hICVYIgogCi0jOiBjb21taXQtZ3JhcGguYzozMDgKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgorbXNnc3RyICJ2ZXJzacOzbiBkZSBjb21taXQtZ3JhcGggJVggbm8gY29uY3VlcmRhIGNvbiB2ZXJzacOzbiAlWCIKKworIzogY29tbWl0LWdyYXBoLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXNoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKK21zZ3N0ciAidmVyc2nDs24gZGUgaGFzaCBkZSBjb21taXQtZ3JhcGggJVggbm8gY29uY3VlcmRhIGNvbiB2ZXJzacOzbiAlWCIKKworIzogY29tbWl0LWdyYXBoLmM6MjI2Cittc2dpZCAiY29tbWl0LWdyYXBoIGNodW5rIGxvb2t1cCB0YWJsZSBlbnRyeSBtaXNzaW5nOyBmaWxlIG1heSBiZSBpbmNvbXBsZXRlIgorbXNnc3RyICIiCisiZmFsdGEgdGFibGEgZGUgbG9va3VwIGRlbCBjaHVuayBlbiBjb21taXQtZ3JhcGg7IGVsIGFyY2hpdm8gcHVlZGUgZXN0YXIgIgorImluY29tcGxldG8iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaW1wcm9wZXIgY2h1bmsgb2Zmc2V0ICUwOHglMDh4IgorbXNnc3RyICJvZmZzZXQgZGVsIGNodW5rIGRlIGNvbW1pdC1ncmFwaCBpbmFwcm9waWFkbyAlMDh4JTA4eCIKKworIzogY29tbWl0LWdyYXBoLmM6MjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBjaHVuayBpZCAlMDh4IGFwcGVhcnMgbXVsdGlwbGUgdGltZXMiCittc2dzdHIgImlkIGRlIGNodW5rIGRlIGNvbW1pdC1ncmFwaCAlMDh4IHBhcmVjZSB0ZW5lciBtw7psdGlwbGVzIHRpZW1wb3MiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjM0MworbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgbm8gYmFzZSBncmFwaHMgY2h1bmsiCittc2dzdHIgImNvbW1pdC1ncmFwaCBubyB0aWVuZSB1bmEgY2h1bmsgYmFzZSBkZSBncmFwaHMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjM1MworbXNnaWQgImNvbW1pdC1ncmFwaCBjaGFpbiBkb2VzIG5vdCBtYXRjaCIKK21zZ3N0ciAiY2FkZW5hIGNvbW1pdC1ncmFwaCBubyBjb25jdWVyZGEiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdC1ncmFwaCBjaGFpbjogbGluZSAnJXMnIG5vdCBhIGhhc2giCittc2dzdHIgImNhZGVuYSBkZSBjb21taXQtZ3JhcGggaW52w6FsaWRhOiBsw61uZWEgJyVzJyBubyBlcyB1biBoYXNoIgorCisjOiBjb21taXQtZ3JhcGguYzo0MjUKK21zZ2lkICJ1bmFibGUgdG8gZmluZCBhbGwgY29tbWl0LWdyYXBoIGZpbGVzIgorbXNnc3RyICJubyBlcyBwb3NpYmxlIGVuY29udHJhciBsb3MgYXJjaGl2b3MgY29tbWl0LWdyYXBoIgorCisjOiBjb21taXQtZ3JhcGguYzo1NTggY29tbWl0LWdyYXBoLmM6NjE4Cittc2dpZCAiaW52YWxpZCBjb21taXQgcG9zaXRpb24uIGNvbW1pdC1ncmFwaCBpcyBsaWtlbHkgY29ycnVwdCIKK21zZ3N0ciAicG9zaWNpw7NuIGRlIGNvbW1pdCBpbnbDoWxpZGEuIGNvbW1pdC1ncmFwaCBlc3TDoSBwcm9iYWJsZW1lbnRlIGNvcnJ1cHRvIgorCisjOiBjb21taXQtZ3JhcGguYzo1NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGZpbmQgY29tbWl0ICVzIgogbXNnc3RyICJubyBzZSBwdWRvIGVuY29udHJhciBjb21taXQgJXMiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjYxNyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2NTIKKyM6IGNvbW1pdC1ncmFwaC5jOjg1MiBidWlsdGluL2FtLmM6MTI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0ICVzIgorbXNnc3RyICJubyBlcyBwb3NpYmxlIGFuYWxpemFyIGVsIGNvbW1pdCAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTAxMSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdldCB0eXBlIG9mIG9iamVjdCAlcyIKIG1zZ3N0ciAiaW5jYXBheiBkZSBvYnRlbmVyIGVsIHRpcG8gZGUgb2JqZXRvOiAlcyIKIAotIzogY29tbWl0LWdyYXBoLmM6NjUxCi1tc2dpZCAiQW5ub3RhdGluZyBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKLW1zZ3N0ciAiQW5vdGFuZG8gY29tbWl0cyBlbiBjb21taXQgZ3JhcGgiCisjOiBjb21taXQtZ3JhcGguYzoxMDQzCittc2dpZCAiTG9hZGluZyBrbm93biBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiQ2FyZ2FuZG8gY29tbWl0cyBjb25vY2lkb3MgZW4gY29tbWl0IGdyYXBoIgogCi0jOiBjb21taXQtZ3JhcGguYzo2OTEKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNjAKK21zZ2lkICJFeHBhbmRpbmcgcmVhY2hhYmxlIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJFeHBhbmRpZW5kbyBjb21taXRzIGFsY2FuemFibGVzIGVuIGNvbW1pdCBncmFwaCIKKworIzogY29tbWl0LWdyYXBoLmM6MTA3OQorbXNnaWQgIkNsZWFyaW5nIGNvbW1pdCBtYXJrcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIkxpbXBpYW5kbyBtYXJjYXMgZGUgY29tbWl0cyBlbiBjb21taXQgZ3JhcGgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwOTgKIG1zZ2lkICJDb21wdXRpbmcgY29tbWl0IGdyYXBoIGdlbmVyYXRpb24gbnVtYmVycyIKIG1zZ3N0ciAiQ2FsY3VsYW5kbyBuw7ptZXJvcyBkZSBnZW5lcmFjacOzbiBkZSBjb21taXQgZ3JhcGgiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgwMyBjb21taXQtZ3JhcGguYzo4MjYgY29tbWl0LWdyYXBoLmM6ODUyCi1tc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGgiCi1tc2dzdHIgIkVuY29udHJhbmRvIGNvbW1pdHMgcGFyYSBjb21taXQgZ3JhcGgiCisjOiBjb21taXQtZ3JhcGguYzoxMTczCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGluICVkIHBhY2siCittc2dpZF9wbHVyYWwgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGluICVkIHBhY2tzIgorbXNnc3RyWzBdICJFbmNvbnRyYW5kbyBjb21taXRzIHBhcmEgY29tbWl0IGdyYXBoIGVuICVkIHBhY2siCittc2dzdHJbMV0gIkVuY29udHJhbmRvIGNvbW1pdHMgcGFyYSBjb21taXQgZ3JhcGggZW4gJWQgcGFja3MiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgxMgorIzogY29tbWl0LWdyYXBoLmM6MTE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBhZGRpbmcgcGFjayAlcyIKIG1zZ3N0ciAiZXJyb3IgYWdyZWdhbmRvIHBhY2sgJXMiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgxNAorIzogY29tbWl0LWdyYXBoLmM6MTE5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBvcGVuaW5nIGluZGV4IGZvciAlcyIKIG1zZ3N0ciAiZXJyb3IgYWJyaWVuZG8gaW5kZXggcGFyYSAlcyIKIAotIzogY29tbWl0LWdyYXBoLmM6ODY4CisjOiBjb21taXQtZ3JhcGguYzoxMjE0CiAjLCBjLWZvcm1hdAotbXNnaWQgInRoZSBjb21taXQgZ3JhcGggZm9ybWF0IGNhbm5vdCB3cml0ZSAlZCBjb21taXRzIgotbXNnc3RyICJlbCBmb3JtYXRvIGRlIGdyw6FmaWNvcyBkZSBjb21taXQgbm8gcHVkZWRlIGVzY3JpYmlyICVkIGNvbW1pdHMiCittc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggZnJvbSAlZCByZWYiCittc2dpZF9wbHVyYWwgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGZyb20gJWQgcmVmcyIKK21zZ3N0clswXSAiRW5jb250cmFuZG8gY29tbWl0cyBwYXJhIGNvbW1pdCBncmFwaCBkZSAlZCByZWYiCittc2dzdHJbMV0gIkVuY29udHJhbmRvIGNvbW1pdHMgcGFyYSBjb21taXQgZ3JhcGggZGUgJWQgcmVmcyIKIAotIzogY29tbWl0LWdyYXBoLmM6ODk1Ci1tc2dpZCAidG9vIG1hbnkgY29tbWl0cyB0byB3cml0ZSBncmFwaCIKLW1zZ3N0ciAiZGVtYXNpYWRvcyBjb21taXRzIHBhcmEgZXNjcmliaXIgZWwgZ3LDoWZpY28iCisjOiBjb21taXQtZ3JhcGguYzoxMjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tbWl0IG9iamVjdCBpZDogJXMiCittc2dzdHIgImlkIGRlIG9iamV0byBjb21taXQ6ICVzIGludsOhbGlkbyIKIAotIzogY29tbWl0LWdyYXBoLmM6OTAyIG1pZHguYzo3NjkKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNDkKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBhbW9uZyBwYWNrZWQgb2JqZWN0cyIKK21zZ3N0ciAiRW5jb250cmFuZG8gY29tbWl0cyBwYXJhIGNvbW1pdCBncmFwaCBlbnRyZSBsb3Mgb2JqZXRvcyBlbXBhcXVldGFkb3MiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNjQKK21zZ2lkICJDb3VudGluZyBkaXN0aW5jdCBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiQ29udGFuZG8gY29tbWl0cyBkaXN0aW50b3MgZW4gY29tbWl0IGdyYXBoIgorCisjOiBjb21taXQtZ3JhcGguYzoxMjk0Cittc2dpZCAiRmluZGluZyBleHRyYSBlZGdlcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIkVuY29udHJhbmRvIGVzcXVpbmFzIGV4dHJhIGVuIGNvbW1pdCBncmFwaCIKKworIzogY29tbWl0LWdyYXBoLmM6MTM0MAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBjb3JyZWN0IG51bWJlciBvZiBiYXNlIGdyYXBoIGlkcyIKK21zZ3N0ciAiZmFsbMOzIGFsIGVzY3JpYmlyIGVsIG7Dum1lcm8gY29ycmVjdG8gZGUgaWRzIGRlIGJhc2UgZ3JhcGgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEzNzMgbWlkeC5jOjgxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgb2YgJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gY3JlYXIgZGlyZWN0b3Jpb3MgcHJpbmNpcGFsZXMgcGFyYSAlcyIKIAotIzogY29tbWl0LWdyYXBoLmM6MTAwMgorIzogY29tbWl0LWdyYXBoLmM6MTM4NSBidWlsdGluL2luZGV4LXBhY2suYzozMDYgYnVpbHRpbi9yZXBhY2suYzoyNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAnJXMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBjcmVhciAnJXMnIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIldyaXRpbmcgb3V0IGNvbW1pdCBncmFwaCBpbiAlZCBwYXNzIgorbXNnaWRfcGx1cmFsICJXcml0aW5nIG91dCBjb21taXQgZ3JhcGggaW4gJWQgcGFzc2VzIgorbXNnc3RyWzBdICJFc2NyaWJpZW5kbyBjb21taXQgZ3JhcGggZW4gJWQgcGFzbyIKK21zZ3N0clsxXSAiRXNjcmliaWVuZG8gY29tbWl0IGdyYXBoIGVuICVkIHBhc29zIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDg2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gY29tbWl0LWdyYXBoIGNoYWluIGZpbGUiCittc2dzdHIgIm5vIHNlIHB1ZG8gYWJyaXIgbGEgY2FkZW5hIGRlIGFyY2hpdm9zIGNvbW1pdC1ncmFwaCIKKworIzogY29tbWl0LWdyYXBoLmM6MTQ5OAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgYmFzZSBjb21taXQtZ3JhcGggZmlsZSIKK21zZ3N0ciAibm8gc2UgcHVkbyByZW5vbWJyYXIgZWwgYXJjaGl2byBiYXNlIGNvbW1pdC1ncmFwaCIKKworIzogY29tbWl0LWdyYXBoLmM6MTUxOAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgdGVtcG9yYXJ5IGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICJmYWxsw7MgYWwgcmVub21icmFyIGVsIGFyY2hpdm8gdGVtcG9yYWwgY29tbWl0LWdyYXBoIgorCisjOiBjb21taXQtZ3JhcGguYzoxNjMxCittc2dpZCAiU2Nhbm5pbmcgbWVyZ2VkIGNvbW1pdHMiCittc2dzdHIgIkVzY2FuZWFuZG8gY29tbWl0cyBmdXNpb25hZG9zIgorCisjOiBjb21taXQtZ3JhcGguYzoxNjQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZHVwbGljYXRlIGNvbW1pdCBpZCAlcyIKK21zZ3N0ciAiaWQgZGUgY29tbWl0IGR1cGxpY2FkbyBpbmVzcGVyYWRvICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoxNjY1Cittc2dpZCAiTWVyZ2luZyBjb21taXQtZ3JhcGgiCittc2dzdHIgIkZ1c2lvbmFuZG8gY29tbWl0LWdyYXBoIgorCisjOiBjb21taXQtZ3JhcGguYzoxODQ0CisjLCBjLWZvcm1hdAorbXNnaWQgInRoZSBjb21taXQgZ3JhcGggZm9ybWF0IGNhbm5vdCB3cml0ZSAlZCBjb21taXRzIgorbXNnc3RyICJlbCBmb3JtYXRvIGRlIGdyw6FmaWNvcyBkZSBjb21taXQgbm8gcHVkZWRlIGVzY3JpYmlyICVkIGNvbW1pdHMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE4NTUKK21zZ2lkICJ0b28gbWFueSBjb21taXRzIHRvIHdyaXRlIGdyYXBoIgorbXNnc3RyICJkZW1hc2lhZG9zIGNvbW1pdHMgcGFyYSBlc2NyaWJpciBlbCBncsOhZmljbyIKKworIzogY29tbWl0LWdyYXBoLmM6MTk0NAogbXNnaWQgInRoZSBjb21taXQtZ3JhcGggZmlsZSBoYXMgaW5jb3JyZWN0IGNoZWNrc3VtIGFuZCBpcyBsaWtlbHkgY29ycnVwdCIKIG1zZ3N0ciAiIgogImVsIGFyY2hpdm8gZGUgY29tbWl0LWdyYXBoIHRpZW5lIGNoZWNrc3VtcyBpbmNvcnJlY3RvcyB5IHByb2JhYmxlbWVudGUgZXN0w6EgIgogImNvcnJ1cHRvIgogCi0jOiBjb21taXQtZ3JhcGguYzoxMDQ2CisjOiBjb21taXQtZ3JhcGguYzoxOTU0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IE9JRCBvcmRlcjogJXMgdGhlbiAlcyIKK21zZ3N0ciAiY29tbWl0LWdyYXBoIHRpZW5lIHVuIG9yZGVuIGRlIE9JRCBpbmNvcnJlY3RvOiAlcyBsdWVnbyAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTk2NCBjb21taXQtZ3JhcGguYzoxOTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IGZhbm91dCB2YWx1ZTogZmFub3V0WyVkXSA9ICV1ICE9ICV1IgorbXNnc3RyICJjb21taXQtZ3JhcGggdGllbmUgdW4gdmFsb3IgZmFub3V0IGluY29ycmVjdG86IGZhbm91dFslZF0gPSAldSAhPSAldSIKKworIzogY29tbWl0LWdyYXBoLmM6MTk3MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgY29tbWl0ICVzIGZyb20gY29tbWl0LWdyYXBoIgorbXNnc3RyICJmYWxsw7MgYWwgYW5hbGl6YXIgY29tbWl0ICVzIHBhcmEgY29tbWl0LWdyYXBoIgorCisjOiBjb21taXQtZ3JhcGguYzoxOTg5CiBtc2dpZCAiVmVyaWZ5aW5nIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgogbXNnc3RyICJWZXJpZmljYW5kbyBjb21taXRzIGVuIGNvbW1pdCBncmFwaCIKIAotIzogY29tcGF0L29ic3RhY2suYzo0MDUgY29tcGF0L29ic3RhY2suYzo0MDcKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIGNvbW1pdCAlcyBmcm9tIG9iamVjdCBkYXRhYmFzZSBmb3IgY29tbWl0LWdyYXBoIgorbXNnc3RyICIiCisiZmFsbMOzIGFsIGFuYWxpemFyIGVsIGNvbW1pdCAlcyBkZSBsYSBiYXNlIGRlIGRhdG9zIGRlIG9iamV0b3MgcGFyYSBjb21taXQtIgorImdyYXBoIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDEwCisjLCBjLWZvcm1hdAorbXNnaWQgInJvb3QgdHJlZSBPSUQgZm9yIGNvbW1pdCAlcyBpbiBjb21taXQtZ3JhcGggaXMgJXMgIT0gJXMiCittc2dzdHIgIsOhcmJvbCByYcOteiBPSUQgcGFyYSBjb21taXQgJXMgZW4gY29tbWl0LWdyYXBoIGVzICVzICE9ICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDIwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgbGlzdCBmb3IgY29tbWl0ICVzIGlzIHRvbyBsb25nIgorbXNnc3RyICJsaXN0YSBwYWRyZSBkZSBjb21taXQtZ3JhcGggcGFyYSBjb21taXQgJXMgZXMgbXV5IGxhcmdhIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDI5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgZm9yICVzIGlzICVzICE9ICVzIgorbXNnc3RyICJwYWRyZSBkZSBjb21taXQtZ3JhcGggcGFyYSAlcyBlcyAlcyAhPSAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MjA0MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggcGFyZW50IGxpc3QgZm9yIGNvbW1pdCAlcyB0ZXJtaW5hdGVzIGVhcmx5IgorbXNnc3RyICJsaXN0YSBwYWRyZSBkZSBjb21taXQtZ3JhcGggcGFyYSBjb21taXQgJXMgdGVybWluYSBhbnRlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29tbWl0LWdyYXBoIGhhcyBnZW5lcmF0aW9uIG51bWJlciB6ZXJvIGZvciBjb21taXQgJXMsIGJ1dCBub24temVybyBlbHNld2hlcmUiCittc2dzdHIgIiIKKyJjb21taXQtZ3JhcGggaGEgZ2VuZXJhZG8gbsO6bWVybyBjZXJvIHBhcmEgJXMsIHBlcm8gbm8tY2VybyBwYXJhIGxvcyBkZW3DoXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbW1pdC1ncmFwaCBoYXMgbm9uLXplcm8gZ2VuZXJhdGlvbiBudW1iZXIgZm9yIGNvbW1pdCAlcywgYnV0IHplcm8gZWxzZXdoZXJlIgorbXNnc3RyICIiCisiY29tbWl0LWdyYXBoIHRpZW5lIGdlbmVyYWNpw7NuIG5vLWNlcm8gcGFyYSAlcywgcGVybyBjZXJvIHBhcmEgbG9zIGRlbcOhcyIKKworIzogY29tbWl0LWdyYXBoLmM6MjA2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggZ2VuZXJhdGlvbiBmb3IgY29tbWl0ICVzIGlzICV1ICE9ICV1IgorbXNnc3RyICJnZW5lcmFjacOzbiBjb21taXQtZ3JhcGggcGFyYSBjb21taXQgJXMgZXMgJXUgIT0gJXUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0IGRhdGUgZm9yIGNvbW1pdCAlcyBpbiBjb21taXQtZ3JhcGggaXMgJTxQUkl1TUFYPiAhPSAlPFBSSXVNQVg+IgorbXNnc3RyICIiCisiZmVjaGEgZGUgY29tbWl0IHBhcmEgY29tbWl0ICVzIGVuIGNvbW1pdC1ncmFwaCBlcyAlPFBSSXVNQVg+ICE9ICU8UFJJdU1BWD4iCisKKyM6IGNvbXBhdC9vYnN0YWNrLmM6NDA2IGNvbXBhdC9vYnN0YWNrLmM6NDA4CiBtc2dpZCAibWVtb3J5IGV4aGF1c3RlZCIKIG1zZ3N0ciAibWVtb3JpYSBhZ290YWRhIgogCi0jOiBjb25maWcuYzoxMjMKKyM6IGNvbmZpZy5jOjEyNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhjZWVkZWQgbWF4aW11bSBpbmNsdWRlIGRlcHRoICglZCkgd2hpbGUgaW5jbHVkaW5nXG4iCkBAIC0xNDg2LDMwMCArMjM4NiwyOTMgQEAKICJcdCVzXG4iCiAiRXN0byBwdWVkZSBzZXIgY2F1c2FkbyBwb3IgaW5jbHVzaW9uZXMgY2lyY3VsYXJlcy4iCiAKLSM6IGNvbmZpZy5jOjEzOQorIzogY29uZmlnLmM6MTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBleHBhbmQgaW5jbHVkZSBwYXRoICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gZXhwYW5kaXIgcnV0YXMgZGUgaW5jbHVzacOzbiAnJXMnIgogCi0jOiBjb25maWcuYzoxNTAKKyM6IGNvbmZpZy5jOjE1MQogbXNnaWQgInJlbGF0aXZlIGNvbmZpZyBpbmNsdWRlcyBtdXN0IGNvbWUgZnJvbSBmaWxlcyIKIG1zZ3N0ciAiaW5jbHVzaW9uZXMgZGUgY29uZmlndXJhY2nDs24gcmVsYXRpdmFzIHRpZW5lbiBxdWUgdmVuaXIgZGUgYXJjaGl2b3MiCiAKLSM6IGNvbmZpZy5jOjE5MAorIzogY29uZmlnLmM6MTk3CiBtc2dpZCAicmVsYXRpdmUgY29uZmlnIGluY2x1ZGUgY29uZGl0aW9uYWxzIG11c3QgY29tZSBmcm9tIGZpbGVzIgogbXNnc3RyICIiCiAibGEgY29uZmlndXJhY2nDs24gcmVsYXRpdmEgaW5jbHV5ZSBjb25kaWNpb25hbGVzIHF1ZSBkZWJlbiB2ZW5pciBkZSBhcmNoaXZvcyIKIAotIzogY29uZmlnLmM6MzQ4CisjOiBjb25maWcuYzozNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAia2V5IGRvZXMgbm90IGNvbnRhaW4gYSBzZWN0aW9uOiAlcyIKIG1zZ3N0ciAibGxhdmUgbm8gY29udGllbmUgdW5hIHNlY2Npw7NuOiAlcyIKIAotIzogY29uZmlnLmM6MzU0CisjOiBjb25maWcuYzozODIKICMsIGMtZm9ybWF0CiBtc2dpZCAia2V5IGRvZXMgbm90IGNvbnRhaW4gdmFyaWFibGUgbmFtZTogJXMiCiBtc2dzdHIgImxsYXZlIG5vIGNvbnRpZW5lIGVsIG5vbWJyZSBkZSB2YXJpYWJsZTogJXMiCiAKLSM6IGNvbmZpZy5jOjM3OCBzZXF1ZW5jZXIuYzoyMjk2CisjOiBjb25maWcuYzo0MDYgc2VxdWVuY2VyLmM6MjQ0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGtleTogJXMiCiBtc2dzdHIgImxsYXZlIGludsOhbGlkYTogJXMiCiAKLSM6IGNvbmZpZy5jOjM4NAorIzogY29uZmlnLmM6NDEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQga2V5IChuZXdsaW5lKTogJXMiCiBtc2dzdHIgImxsYXZlIGludsOhbGlkYSAobnVldmEgbMOtbmVhKTogJXMiCiAKLSM6IGNvbmZpZy5jOjQyMCBjb25maWcuYzo0MzIKKyM6IGNvbmZpZy5jOjQ0OCBjb25maWcuYzo0NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYm9ndXMgY29uZmlnIHBhcmFtZXRlcjogJXMiCiBtc2dzdHIgInBhcsOhbWV0cm8gZGUgY29uZmlndXJhY2nDs24gbWFsb2dyYWRvOiAlcyIKIAotIzogY29uZmlnLmM6NDY3CisjOiBjb25maWcuYzo0OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYm9ndXMgZm9ybWF0IGluICVzIgogbXNnc3RyICJmb3JtYXRvIG1hbG9ncmFkbyBlbiAlcyIKIAotIzogY29uZmlnLmM6NzkzCisjOiBjb25maWcuYzo4MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGJsb2IgJXMiCiBtc2dzdHIgIm1hbGEgbMOtbmVhIGRlIGNvbmZpZyAlZCBlbiBlbCBibG9iICVzIgogCi0jOiBjb25maWcuYzo3OTcKKyM6IGNvbmZpZy5jOjgyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gZmlsZSAlcyIKIG1zZ3N0ciAibWFsYSBsw61uZWEgZGUgY29uZmlnICVkIGVuIGVsIGFyY2hpdm8gJXMiCiAKLSM6IGNvbmZpZy5jOjgwMQorIzogY29uZmlnLmM6ODI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAibWFsYSBsw61uZWEgZGUgY29uZmlnICVkIGVuIGxhIGVudHJhZGEgc3RhbmRhcmQiCiAKLSM6IGNvbmZpZy5jOjgwNQorIzogY29uZmlnLmM6ODMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBzdWJtb2R1bGUtYmxvYiAlcyIKIG1zZ3N0ciAibWFsYSBsw61uZWEgZGUgY29uZmlnICVkIGVuIGVsIHN1Ym3Ds2R1bG8tYmxvYiAlcyIKIAotIzogY29uZmlnLmM6ODA5CisjOiBjb25maWcuYzo4MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGNvbW1hbmQgbGluZSAlcyIKIG1zZ3N0ciAibWFsYSBsw61uZWEgZGUgY29uZmlnICVkIGVuIGxhIGzDrW5lYSBkZSBjb21hbmRvICVzIgogCi0jOiBjb25maWcuYzo4MTMKKyM6IGNvbmZpZy5jOjg0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gJXMiCiBtc2dzdHIgIm1hbGEgbMOtbmVhIGRlIGNvbmZpZyAlZCBlbiAlcyIKIAotIzogY29uZmlnLmM6OTUyCisjOiBjb25maWcuYzo5NzgKIG1zZ2lkICJvdXQgb2YgcmFuZ2UiCiBtc2dzdHIgImZ1ZXJhIGRlIHJhbmdvIgogCi0jOiBjb25maWcuYzo5NTIKKyM6IGNvbmZpZy5jOjk3OAogbXNnaWQgImludmFsaWQgdW5pdCIKIG1zZ3N0ciAidW5pZGFkIGludsOhbGlkYSIKIAotIzogY29uZmlnLmM6OTU4CisjOiBjb25maWcuYzo5NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcyc6ICVzIgogbXNnc3RyICJtYWwgdmFsb3IgZGUgY29uZmlnIG51bcOpcmljYSAnJXMnIHBhcmEgJyVzJzogJXMiCiAKLSM6IGNvbmZpZy5jOjk2MworIzogY29uZmlnLmM6OTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIGJsb2IgJXM6ICVzIgogbXNnc3RyICJtYWwgdmFsb3IgZGUgY29uZmlnIG51bcOpcmljYSAnJXMnIHBhcmEgJyVzJyBlbiBlbCBibG9iICVzOiAlcyIKIAotIzogY29uZmlnLmM6OTY2CisjOiBjb25maWcuYzoxMDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIGZpbGUgJXM6ICVzIgogbXNnc3RyICJtYWwgdmFsb3IgZGUgY29uZmlnIG51bcOpcmljYSAnJXMnIHBhcmEgJyVzJyBlbiBlbCBhcmNoaXZvICVzOiAlcyIKIAotIzogY29uZmlnLmM6OTY5CisjOiBjb25maWcuYzoxMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN0YW5kYXJkIGlucHV0OiAlcyIKIG1zZ3N0ciAibWFsIHZhbG9yIGRlIGNvbmZpZyBudW3DqXJpY2EgJyVzJyBwYXJhICclcycgZW4gbGEgZW50cmFkYSBzdGFuZGFyZDogJXMiCiAKLSM6IGNvbmZpZy5jOjk3MgorIzogY29uZmlnLmM6MTAwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBzdWJtb2R1bGUtYmxvYiAlczogJXMiCiBtc2dzdHIgIiIKICJtYWwgdmFsb3IgZGUgY29uZmlnIG51bcOpcmljYSAnJXMnIHBhcmEgJyVzJyBlbiBlbCBzdWJtw7NkdWxvLWJsb2IgJXM6ICVzIgogCi0jOiBjb25maWcuYzo5NzUKKyM6IGNvbmZpZy5jOjEwMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gY29tbWFuZCBsaW5lICVzOiAlcyIKIG1zZ3N0ciAiIgogIm1hbCB2YWxvciBkZSBjb25maWcgbnVtw6lyaWNhICclcycgcGFyYSAnJXMnIGVuIGxhIGzDrW5lYSBkZSBjb21hbmRvICVzOiAlcyIKIAotIzogY29uZmlnLmM6OTc4CisjOiBjb25maWcuYzoxMDEzCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluICVzOiAlcyIKIG1zZ3N0ciAibWFsIHZhbG9yIGRlIGNvbmZpZyBudW3DqXJpY2EgJyVzJyBwYXJhICclcycgZW4gJXM6ICVzIgogCi0jOiBjb25maWcuYzoxMDczCisjOiBjb25maWcuYzoxMTA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBleHBhbmQgdXNlciBkaXIgaW46ICclcyciCiBtc2dzdHIgImZhbGzDsyBhbCBleHBhbmRpciBlbCBkaXJlY3RvcmlvIGRlIHVzdWFyaW8gZW46ICclcyciCiAKLSM6IGNvbmZpZy5jOjEwODIKKyM6IGNvbmZpZy5jOjExMTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBmb3IgJyVzJyBpcyBub3QgYSB2YWxpZCB0aW1lc3RhbXAiCiBtc2dzdHIgIiclcycgcGFyYSAnJXMnIG5vIGVzIHVuYSBtYXJjYSBkZSB0aWVtcG8gdsOhbGlkYSIKIAotIzogY29uZmlnLmM6MTE3MworIzogY29uZmlnLmM6MTIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJhYmJyZXYgbGVuZ3RoIG91dCBvZiByYW5nZTogJWQiCiBtc2dzdHIgImxhcmdvIGRlIGFicmV2aWF0dXJhIGZ1ZXJhIGRlIHJhbmdvOiAlZCIKIAotIzogY29uZmlnLmM6MTE4NyBjb25maWcuYzoxMTk4CisjOiBjb25maWcuYzoxMjIyIGNvbmZpZy5jOjEyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHpsaWIgY29tcHJlc3Npb24gbGV2ZWwgJWQiCiBtc2dzdHIgIm5pdmVsIGRlIGNvbXByZXNpw7NuIGRlIHpsaWIgZXJyw7NuZW8gJWQiCiAKLSM6IGNvbmZpZy5jOjEyOTAKKyM6IGNvbmZpZy5jOjEzMjUKIG1zZ2lkICJjb3JlLmNvbW1lbnRDaGFyIHNob3VsZCBvbmx5IGJlIG9uZSBjaGFyYWN0ZXIiCiBtc2dzdHIgImNvcmUuY29tbWVudENoYXIgZGViZXLDrWEgdGVuZXIgc29sbyB1biBjYXJhY3RlciIKIAotIzogY29uZmlnLmM6MTMyMworIzogY29uZmlnLmM6MTM1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG1vZGUgZm9yIG9iamVjdCBjcmVhdGlvbjogJXMiCiBtc2dzdHIgIm1vZG8gaW52w6FsaWRvIGRlIGNyZWFjacOzbiBkZSBvYmpldG9zOiAlcyIKIAotIzogY29uZmlnLmM6MTM5NQorIzogY29uZmlnLmM6MTQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgdmFsdWUgZm9yICVzIgogbXNnc3RyICJ2YWxvciBtYWxmb3JtYWRvIHBhcmEgJXMiCiAKLSM6IGNvbmZpZy5jOjE0MjEKKyM6IGNvbmZpZy5jOjE0NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIHZhbHVlIGZvciAlczogJXMiCiBtc2dzdHIgInZhbG9yIG1hbGZvcm1hZG8gcGFyYSAlczogJXMiCiAKLSM6IGNvbmZpZy5jOjE0MjIKKyM6IGNvbmZpZy5jOjE0NTcKIG1zZ2lkICJtdXN0IGJlIG9uZSBvZiBub3RoaW5nLCBtYXRjaGluZywgc2ltcGxlLCB1cHN0cmVhbSBvciBjdXJyZW50IgogbXNnc3RyICJkZWJlIHNlciB1bm8gZGUgbm90aGluZywgbWF0Y2hpbmcsIHNpbXBsZSwgdXBzdHJlYW0gbyBjdXJyZW50IgogCi0jOiBjb25maWcuYzoxNDgxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5MQorIzogY29uZmlnLmM6MTUxOCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2sgY29tcHJlc3Npb24gbGV2ZWwgJWQiCiBtc2dzdHIgIm5pdmVsIGRlIGNvbXByZXNpw7NuIGRlIHBhY2sgZXJyw7NuZW8gJWQiCiAKLSM6IGNvbmZpZy5jOjE2MDIKKyM6IGNvbmZpZy5jOjE2MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGxvYWQgY29uZmlnIGJsb2Igb2JqZWN0ICclcyciCiBtc2dzdHIgImluY2FwYXogZGUgY2FyZ2FyIGNvbmZpZ3VyYWNpw7NuIGRlIG9iamV0byBibG9iICclcyciCiAKLSM6IGNvbmZpZy5jOjE2MDUKKyM6IGNvbmZpZy5jOjE2NDIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmZXJlbmNlICclcycgZG9lcyBub3QgcG9pbnQgdG8gYSBibG9iIgogbXNnc3RyICJyZWZlcmVuY2lhICclcycgbm8gYXB1bnRhIGEgdW4gYmxvYiIKIAotIzogY29uZmlnLmM6MTYyMgorIzogY29uZmlnLmM6MTY1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBjb25maWcgYmxvYiAnJXMnIgogbXNnc3RyICJubyBzZSBwb3NpYmxlIHJlc29sdmVyIGNvbmZpZ3VyYWNpw7NuIGRlIGJsb2IgJyVzJyIKIAotIzogY29uZmlnLmM6MTY1MgorIzogY29uZmlnLmM6MTY4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcGFyc2UgJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gYW5hbGl6YXIgJXMiCiAKLSM6IGNvbmZpZy5jOjE3MDUKKyM6IGNvbmZpZy5jOjE3NDMKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWFuZC1saW5lIGNvbmZpZyIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBhbmFsaXphciBsYSBjb25maWd1cmFjacOzbiBkZSBsYSBsw61uZWEgZGUgY29tYW5kbyIKIAotIzogY29uZmlnLmM6MjAzNworIzogY29uZmlnLmM6MjA5NwogbXNnaWQgInVua25vd24gZXJyb3Igb2NjdXJyZWQgd2hpbGUgcmVhZGluZyB0aGUgY29uZmlndXJhdGlvbiBmaWxlcyIKIG1zZ3N0ciAiIgogImVycm9yIGRlc2Nvbm9jaWRvIG9jdXJyacOzIG1pZW50cmFzIHNlIGxlw61hbiBsb3MgYXJjaGl2b3MgZGUgY29uZmlndXJhY2nDs24iCiAKLSM6IGNvbmZpZy5jOjIyMDcKKyM6IGNvbmZpZy5jOjIyNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCAlczogJyVzJyIKLW1zZ3N0ciAiSW52YWxpZG8gJXM6ICclcyciCittc2dzdHIgIkludsOhbGlkbyAlczogJyVzJyIKIAotIzogY29uZmlnLmM6MjI1MAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmtub3duIGNvcmUudW50cmFja2VkQ2FjaGUgdmFsdWUgJyVzJzsgdXNpbmcgJ2tlZXAnIGRlZmF1bHQgdmFsdWUiCi1tc2dzdHIgIiIKLSJ2YWxvciBjb3JlLnVudHJhY2tlZENhY2hlICclcycgZGVzY29ub2NpZG87IHVzYW5kbyAna2VlcCcgY29tbyB2YWxvciBwb3IgIgotImRlZmVjdG8iCi0KLSM6IGNvbmZpZy5jOjIyNzYKKyM6IGNvbmZpZy5jOjIzMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAic3BsaXRJbmRleC5tYXhQZXJjZW50Q2hhbmdlIHZhbHVlICclZCcgc2hvdWxkIGJlIGJldHdlZW4gMCBhbmQgMTAwIgogbXNnc3RyICJ2YWxvciBzcGxpdEluZGV4Lm1heFBlcmNlbnRDaGFuZ2UgJyVkJyBkZWJlIGVzdGFyIGVudHJlIDAgeSAxMDAiCiAKLSM6IGNvbmZpZy5jOjIzMjIKKyM6IGNvbmZpZy5jOjIzNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICclcycgZnJvbSBjb21tYW5kLWxpbmUgY29uZmlnIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGFuYWxpemFyICclcycgZGUgbGEgY29uZmlndXJhY2nDs24gZGUgbGEgbMOtbmVhIGRlIGNvbWFuZG8iCiAKLSM6IGNvbmZpZy5jOjIzMjQKKyM6IGNvbmZpZy5jOjIzNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyB2YXJpYWJsZSAnJXMnIGluIGZpbGUgJyVzJyBhdCBsaW5lICVkIgogbXNnc3RyICJtYWxhIHZhcmlhYmxlIGRlIGNvbmZpZyAnJXMnIGVuIGVsIGFyY2hpdm8gJyVzJyBlbiBsYSBsw61uZWEgJWQiCiAKLSM6IGNvbmZpZy5jOjI0MDUKKyM6IGNvbmZpZy5jOjI0NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzZWN0aW9uIG5hbWUgJyVzJyIKIG1zZ3N0ciAibm9tYnJlIGRlIHNlY2Npw7NuIGludsOhbGlkbyAnJXMnIgogCi0jOiBjb25maWcuYzoyNDM3CisjOiBjb25maWcuYzoyNDczCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGhhcyBtdWx0aXBsZSB2YWx1ZXMiCiBtc2dzdHIgIiVzIHRpZW5lIG3Dumx0aXBsZXMgdmFsb3JlcyIKIAotIzogY29uZmlnLmM6MjQ2NgorIzogY29uZmlnLmM6MjUwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgbmV3IGNvbmZpZ3VyYXRpb24gZmlsZSAlcyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGVzY3JpYmlyIG51ZXZvIGFyY2hpdm8gZGUgY29uZmlndXJhY2nDs24gJXMiCiAKLSM6IGNvbmZpZy5jOjI3MTcgY29uZmlnLmM6MzA0MQorIzogY29uZmlnLmM6Mjc1NCBjb25maWcuYzozMDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb2NrIGNvbmZpZyBmaWxlICVzIgogbXNnc3RyICJubyBzZSBwdWRvIGJsb3F1ZWFyIGFyY2hpdm8gZGUgY29uZmlndXJhY2nDs24gJXMiCiAKLSM6IGNvbmZpZy5jOjI3MjgKKyM6IGNvbmZpZy5jOjI3NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAib3BlbmluZyAlcyIKIG1zZ3N0ciAiYWJyaWVuZG8gJXMiCiAKLSM6IGNvbmZpZy5jOjI3NjMgYnVpbHRpbi9jb25maWcuYzozMjcKKyM6IGNvbmZpZy5jOjI4MDAgYnVpbHRpbi9jb25maWcuYzozNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBwYXR0ZXJuOiAlcyIKIG1zZ3N0ciAicGF0csOzbiBpbnbDoWxpZG86ICVzIgogCi0jOiBjb25maWcuYzoyNzg4CisjOiBjb25maWcuYzoyODI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29uZmlnIGZpbGUgJXMiCiBtc2dzdHIgImFyY2hpdm8gZGUgY29uZmlndXJhY2nDs24gaW52w6FsaWRvOiAlcyIKIAotIzogY29uZmlnLmM6MjgwMSBjb25maWcuYzozMDU0CisjOiBjb25maWcuYzoyODM4IGNvbmZpZy5jOjMwOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZnN0YXQgb24gJXMgZmFpbGVkIgogbXNnc3RyICJmc3RhdCBlbiAlcyBmYWxsw7MiCiAKLSM6IGNvbmZpZy5jOjI4MTIKKyM6IGNvbmZpZy5jOjI4NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG1tYXAgJyVzJyIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBoYWNlciBtbWFwICclcyciCiAKLSM6IGNvbmZpZy5jOjI4MjEgY29uZmlnLmM6MzA1OQorIzogY29uZmlnLmM6Mjg1OCBjb25maWcuYzozMDk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNobW9kIG9uICVzIGZhaWxlZCIKIG1zZ3N0ciAiY2htb2QgZW4gJXMgZmFsbMOzIgogCi0jOiBjb25maWcuYzoyOTA2IGNvbmZpZy5jOjMxNTYKKyM6IGNvbmZpZy5jOjI5NDMgY29uZmlnLmM6MzE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29uZmlnIGZpbGUgJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gZXNjcmliaXIgZWwgYXJjaGl2byBkZSBjb25maWd1cmFjacOzbiAlcyIKIAotIzogY29uZmlnLmM6Mjk0MAorIzogY29uZmlnLmM6Mjk3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc2V0ICclcycgdG8gJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBjb25maWd1cmFyICclcycgYSAnJXMnIgogCi0jOiBjb25maWcuYzoyOTQyIGJ1aWx0aW4vcmVtb3RlLmM6NzgyCisjOiBjb25maWcuYzoyOTc5IGJ1aWx0aW4vcmVtb3RlLmM6NjU1IGJ1aWx0aW4vcmVtb3RlLmM6ODQ5IGJ1aWx0aW4vcmVtb3RlLmM6ODU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB1bnNldCAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGRlc2FjdGl2YXIgJyVzJyIKIAotIzogY29uZmlnLmM6MzAzMgorIzogY29uZmlnLmM6MzA2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHNlY3Rpb24gbmFtZTogJXMiCiBtc2dzdHIgInNlY2Npw7NuIGRlIG5vbWJyZSBpbnbDoWxpZGE6ICVzIgogCi0jOiBjb25maWcuYzozMTk5CisjOiBjb25maWcuYzozMjM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3NpbmcgdmFsdWUgZm9yICclcyciCiBtc2dzdHIgInZhbG9yIGZhbHRhbnRlIHBhcmEgJyVzJyIKQEAgLTE3OTcsNyArMjY5MCw3IEBACiBtc2dzdHIgIiIKICJObyBzZSBwdWRvIGxlZXIgZGVsIHJlcG9zaXRvcmlvIHJlbW90by5cbiIKICJcbiIKLSJQb3IgZmF2b3IgYXNlZ8O6cmVzZSBxdWUgdGllbmUgbG9zIHBlcm1pc29zIGRlIGFjY2VzbyBjb3JyZWN0b3NcbiIKKyJQb3IgZmF2b3IgYXNlZ8O6cmF0ZSBxdWUgdGllbmVzIGxvcyBwZXJtaXNvcyBkZSBhY2Nlc28gY29ycmVjdG9zXG4iCiAieSBxdWUgZWwgcmVwb3NpdG9yaW8gZXhpc3RlLiIKIAogIzogY29ubmVjdC5jOjgxCkBAIC0xODMyLDUwICsyNzI1LDQ1IEBACiBtc2dpZCAicmVwb3NpdG9yeSBvbiB0aGUgb3RoZXIgZW5kIGNhbm5vdCBiZSBzaGFsbG93IgogbXNnc3RyICJlbCByZXBvc2l0b3JpbyBlbiBlbCBvdHJvIGZpbmFsIG5vIHB1ZWRlIHNlciBzdXBlcmZpY2lhbCIKIAotIzogY29ubmVjdC5jOjMxMCBmZXRjaC1wYWNrLmM6MTgyIGJ1aWx0aW4vYXJjaGl2ZS5jOjYzCi0jLCBjLWZvcm1hdAotbXNnaWQgInJlbW90ZSBlcnJvcjogJXMiCi1tc2dzdHIgImVycm9yIHJlbW90bzogJXMiCi0KLSM6IGNvbm5lY3QuYzozMTYKKyM6IGNvbm5lY3QuYzozMTMKIG1zZ2lkICJpbnZhbGlkIHBhY2tldCIKIG1zZ3N0ciAicGFxdWV0ZSBpbnbDoWxpZG8iCiAKLSM6IGNvbm5lY3QuYzozMzYKKyM6IGNvbm5lY3QuYzozMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IHVuZXhwZWN0ZWQgJyVzJyIKIG1zZ3N0ciAiZXJyb3IgZGUgcHJvdG9jb2xvOiAnJXMnIGluZXNwZXJhZG8iCiAKLSM6IGNvbm5lY3QuYzo0NDQKKyM6IGNvbm5lY3QuYzo0NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBscy1yZWZzIHJlc3BvbnNlOiAlcyIKIG1zZ3N0ciAicmVzcHVlc3RhIGRlIHJlZmVyZW5jaWFzIGxzLXJlZnMgaW52w6FsaWRhOiAlcyIKIAotIzogY29ubmVjdC5jOjQ0OAorIzogY29ubmVjdC5jOjQ0NQogbXNnaWQgImV4cGVjdGVkIGZsdXNoIGFmdGVyIHJlZiBsaXN0aW5nIgogbXNnc3RyICJmbHVzaCBlc3BlcmFkbyB0cmFzIGxpc3RhZG8gZGUgcmVmcyIKIAotIzogY29ubmVjdC5jOjU0NworIzogY29ubmVjdC5jOjU0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCAnJXMnIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgInByb3RvY29sbyAnJXMnIG5vIGVzIHNvcG9ydGFkbyIKIAotIzogY29ubmVjdC5jOjU5OAorIzogY29ubmVjdC5jOjU5NQogbXNnaWQgInVuYWJsZSB0byBzZXQgU09fS0VFUEFMSVZFIG9uIHNvY2tldCIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBjb25maWd1cmFyIFNPX0tFRVBBTElWRSBlbiBlbCBzb2NrZXQiCiAKLSM6IGNvbm5lY3QuYzo2MzggY29ubmVjdC5jOjcwMQorIzogY29ubmVjdC5jOjYzNSBjb25uZWN0LmM6Njk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkxvb2tpbmcgdXAgJXMgLi4uICIKIG1zZ3N0ciAiUmV2aXNhbmRvICVzLi4uICIKIAotIzogY29ubmVjdC5jOjY0MgorIzogY29ubmVjdC5jOjYzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbG9vayB1cCAlcyAocG9ydCAlcykgKCVzKSIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgcmV2aXNhciAlcyAocHVlcnRvICVzKSAoJXMpIgogCiAjLiBUUkFOU0xBVE9SUzogdGhpcyBpcyB0aGUgZW5kIG9mICJMb29raW5nIHVwICVzIC4uLiAiCi0jOiBjb25uZWN0LmM6NjQ2IGNvbm5lY3QuYzo3MTcKKyM6IGNvbm5lY3QuYzo2NDMgY29ubmVjdC5jOjcxNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZG9uZS5cbiIKQEAgLTE4ODQsNyArMjc3Miw3IEBACiAiaGVjaG8uXG4iCiAiQ29uZWN0YW5kbyBhICVzIChwdWVydG8gJXMpIC4uLiAiCiAKLSM6IGNvbm5lY3QuYzo2NjggY29ubmVjdC5jOjc0NQorIzogY29ubmVjdC5jOjY2NSBjb25uZWN0LmM6NzQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ1bmFibGUgdG8gY29ubmVjdCB0byAlczpcbiIKQEAgLTE4OTQsNzQgKzI3ODIsNzQgQEAKICIlcyIKIAogIy4gVFJBTlNMQVRPUlM6IHRoaXMgaXMgdGhlIGVuZCBvZiAiQ29ubmVjdGluZyB0byAlcyAocG9ydCAlcykgLi4uICIKLSM6IGNvbm5lY3QuYzo2NzQgY29ubmVjdC5jOjc1MQorIzogY29ubmVjdC5jOjY3MSBjb25uZWN0LmM6NzQ4CiBtc2dpZCAiZG9uZS4iCiBtc2dzdHIgImhlY2hvLiIKIAotIzogY29ubmVjdC5jOjcwNQorIzogY29ubmVjdC5jOjcwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbG9vayB1cCAlcyAoJXMpIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIHJldmlzYXIgJXMgKCVzKSIKIAotIzogY29ubmVjdC5jOjcxMQorIzogY29ubmVjdC5jOjcwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHBvcnQgJXMiCiBtc2dzdHIgInB1ZXJ0byBkZXNjb25vY2lkbyAlcyIKIAotIzogY29ubmVjdC5jOjg0OCBjb25uZWN0LmM6MTE3NAorIzogY29ubmVjdC5jOjg0NSBjb25uZWN0LmM6MTE3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJzdHJhbmdlIGhvc3RuYW1lICclcycgYmxvY2tlZCIKIG1zZ3N0ciAiaG9zdG5hbWUgZXh0cmHDsW8gJyVzJyBibG9xdWVhZG8iCiAKLSM6IGNvbm5lY3QuYzo4NTAKKyM6IGNvbm5lY3QuYzo4NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBwb3J0ICclcycgYmxvY2tlZCIKIG1zZ3N0ciAicHVlcnRvIGV4dHJhw7FvICclcycgYmxvcXVlYWRvIgogCi0jOiBjb25uZWN0LmM6ODYwCisjOiBjb25uZWN0LmM6ODU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGFydCBwcm94eSAlcyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgY29tZW56YXIgcHJveHkgJXMiCiAKLSM6IGNvbm5lY3QuYzo5MjcKKyM6IGNvbm5lY3QuYzo5MjgKIG1zZ2lkICJubyBwYXRoIHNwZWNpZmllZDsgc2VlICdnaXQgaGVscCBwdWxsJyBmb3IgdmFsaWQgdXJsIHN5bnRheCIKIG1zZ3N0ciAiIgogIm5vIGhheSBydXRhIGVzcGVjaWZpY2FkYTsgdmVhICdnaXQgaGVscCBwdWxsJyBwYXJhIHNpbnRheGlzIGRlIHVybCB2w6FsaWRhcyIKIAotIzogY29ubmVjdC5jOjExMjIKKyM6IGNvbm5lY3QuYzoxMTIzCiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNCIKIG1zZ3N0ciAidmFyaWFudGUgJ3NpbXBsZScgZGUgc3NoIG5vIHNvcG9ydGEgLTQiCiAKLSM6IGNvbm5lY3QuYzoxMTM0CisjOiBjb25uZWN0LmM6MTEzNQogbXNnaWQgInNzaCB2YXJpYW50ICdzaW1wbGUnIGRvZXMgbm90IHN1cHBvcnQgLTYiCiBtc2dzdHIgInZhcmlhbnRlICdzaW1wbGUnIGRlIHNzaCBubyBzb3BvcnRhIC02IgogCi0jOiBjb25uZWN0LmM6MTE1MQorIzogY29ubmVjdC5jOjExNTIKIG1zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IHNldHRpbmcgcG9ydCIKIG1zZ3N0ciAidmFyaWFudGUgc3NoICdzaW1wbGUnIG5vIHNvcG9ydGEgY29uZmlndXJhciBwdWVydG8iCiAKLSM6IGNvbm5lY3QuYzoxMjYyCisjOiBjb25uZWN0LmM6MTI2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdHJhbmdlIHBhdGhuYW1lICclcycgYmxvY2tlZCIKIG1zZ3N0ciAicnV0YSBleHRyYcOxYSAnJXMnIGJsb3F1ZWFkYSIKIAotIzogY29ubmVjdC5jOjEzMDcKKyM6IGNvbm5lY3QuYzoxMzExCiBtc2dpZCAidW5hYmxlIHRvIGZvcmsiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgaGFjZXIgZm9yayIKIAotIzogY29ubmVjdGVkLmM6NjggYnVpbHRpbi9mc2NrLmM6MjAyIGJ1aWx0aW4vcHJ1bmUuYzoxNDcKKyM6IGNvbm5lY3RlZC5jOjk4IGJ1aWx0aW4vZnNjay5jOjIwOCBidWlsdGluL3BydW5lLmM6NDMKIG1zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkiCiBtc2dzdHIgIlZlcmlmaWNhbmRvIGNvbmVjdGl2aWRhZCIKIAotIzogY29ubmVjdGVkLmM6ODAKKyM6IGNvbm5lY3RlZC5jOjExMAogbXNnaWQgIkNvdWxkIG5vdCBydW4gJ2dpdCByZXYtbGlzdCciCiBtc2dzdHIgIk5vIHNlIHB1ZG8gY29ycmVyICdnaXQgcmV2LWxpc3QnIgogCi0jOiBjb25uZWN0ZWQuYzoxMDAKKyM6IGNvbm5lY3RlZC5jOjEzMAogbXNnaWQgImZhaWxlZCB3cml0ZSB0byByZXYtbGlzdCIKIG1zZ3N0ciAiZmFsbMOzIGVzY3JpYmlyIGEgcmV2LWxpc3QiCiAKLSM6IGNvbm5lY3RlZC5jOjEwNworIzogY29ubmVjdGVkLmM6MTM3CiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHJldi1saXN0J3Mgc3RkaW4iCiBtc2dzdHIgImZhbGzDsyBhbCBjZXJyYXIgbGEgZW50cmFkYSBzdGFuZGFyZCBkZSByZXYtbGlzdCIKIApAQCAtMTk5OCwyNiArMjg4NiwyNiBAQAogIkxGIHNlcsOhIHJlZW1wbGF6YWRvIHBvciBDUkxGIGVuICVzLlxuIgogIkVsIGFyY2hpdm8gdGVuZHLDoSBzdXMgZmluYWxlcyBkZSBsw61uZWEgb3JpZ2luYWxlcyBlbiB0dSBkaXJlY3RvcmlvIGRlIHRyYWJham8iCiAKLSM6IGNvbnZlcnQuYzoyODAKKyM6IGNvbnZlcnQuYzoyODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQk9NIGlzIHByb2hpYml0ZWQgaW4gJyVzJyBpZiBlbmNvZGVkIGFzICVzIgogbXNnc3RyICJCT00gZXN0w6EgcHJvaGliaWRvIGVuICclcycgc2kgZXMgY29kaWZpY2FkbyBjb21vICVzIgogCi0jOiBjb252ZXJ0LmM6Mjg3CisjOiBjb252ZXJ0LmM6MjkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKLSJUaGUgZmlsZSAnJXMnIGNvbnRhaW5zIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lcyBhcyB3b3JraW5nLSIKLSJ0cmVlLWVuY29kaW5nLiIKLW1zZ3N0ciAiIgotIkVsIGFyY2hpdm8gJyVzJyBjb250aWVuZSB1bmEgbWFyY2EgZGUgYnl0ZSAoQk9NKS4gUG9yIGZhdm9yIHVzYSBVVEYtJXMgY29tbyAiCisiVGhlIGZpbGUgJyVzJyBjb250YWlucyBhIGJ5dGUgb3JkZXIgbWFyayAoQk9NKS4gUGxlYXNlIHVzZSBVVEYtJS4qcyBhcyAiCiAid29ya2luZy10cmVlLWVuY29kaW5nLiIKK21zZ3N0ciAiIgorIkVsIGFyY2hpdm8gJyVzJyBjb250aWVuZSB1bmEgbWFyY2EgZGUgYnl0ZSAoQk9NKS4gUG9yIGZhdm9yIHVzYSBVVEYtJS4qcyAiCisiY29tbyB3b3JraW5nLXRyZWUtZW5jb2RpbmcuIgogCi0jOiBjb252ZXJ0LmM6MzA1CisjOiBjb252ZXJ0LmM6MzA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJPTSBpcyByZXF1aXJlZCBpbiAnJXMnIGlmIGVuY29kZWQgYXMgJXMiCiBtc2dzdHIgIkJPTSBlcyByZXF1ZXJpZG8gZW4gJyVzJyBzaSBlcyBjb2RpZmljYWRvIGNvbW8gJXMiCiAKLSM6IGNvbnZlcnQuYzozMDcKKyM6IGNvbnZlcnQuYzozMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmaWxlICclcycgaXMgbWlzc2luZyBhIGJ5dGUgb3JkZXIgbWFyayAoQk9NKS4gUGxlYXNlIHVzZSBVVEYtJXNCRSBvciBVVEYtIgpAQCAtMjAyNiw1MCArMjkxNCw1MCBAQAogIkFsIGFyY2hpdm8gJyVzJyBsZSBmYWx0YSB1bmEgbWFyY2EgZGUgYnl0ZSAoQk9NKS4gUG9yIGZhdm9yIHVzYSBVVEYtJXNCRSBvICIKICJVVEYtJXNMRSAoZGVwZW5kaWVuZG8gZW4gZWwgb3JkZW4gZGUgYnl0ZSkgY29tbyB3b3JraW5nLXRyZWUtZW5jb2RpbmcuIgogCi0jOiBjb252ZXJ0LmM6NDI1IGNvbnZlcnQuYzo0OTYKKyM6IGNvbnZlcnQuYzo0MTkgY29udmVydC5jOjQ5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZW5jb2RlICclcycgZnJvbSAlcyB0byAlcyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGNvZGlmaWNhciAnJXMnIGRlICVzIGEgJXMiCiAKLSM6IGNvbnZlcnQuYzo0NjgKKyM6IGNvbnZlcnQuYzo0NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZW5jb2RpbmcgJyVzJyBmcm9tICVzIHRvICVzIGFuZCBiYWNrIGlzIG5vdCB0aGUgc2FtZSIKIG1zZ3N0ciAiY29kaWZpY2FjacOzbiAnJXMnIGRlICVzIGEgJXMgeSBkZSB2dWVsdGEgbm8gc29uIGlndWFsZXMiCiAKLSM6IGNvbnZlcnQuYzo2NzQKKyM6IGNvbnZlcnQuYzo2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZvcmsgdG8gcnVuIGV4dGVybmFsIGZpbHRlciAnJXMnIgogbXNnc3RyICJubyBzZSBwdWVkZSBoYWNlciBmb3JrIHBhcmEgZWplY3V0YXIgZmlsdHJvcyBleHRlcm5vcyAnJXMnIgogCi0jOiBjb252ZXJ0LmM6Njk0CisjOiBjb252ZXJ0LmM6Njg4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBmZWVkIHRoZSBpbnB1dCB0byBleHRlcm5hbCBmaWx0ZXIgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVlZGVuIGFsaW1lbnRhciBkZSBpbnB1dCBhIGxvcyBmaWx0cm9zIGV4dGVybm9zICclcyciCiAKLSM6IGNvbnZlcnQuYzo3MDEKKyM6IGNvbnZlcnQuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkICVkIgogbXNnc3RyICJmaWx0cm8gZXh0ZXJubyAnJXMnIGZhbGzDsyAlZCIKIAotIzogY29udmVydC5jOjczNiBjb252ZXJ0LmM6NzM5CisjOiBjb252ZXJ0LmM6NzMwIGNvbnZlcnQuYzo3MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZCBmcm9tIGV4dGVybmFsIGZpbHRlciAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAibGVjdHVyYSBkZSBmaWx0cm8gZXh0ZXJubyAnJXMnIGZhbGzDsyIKIAotIzogY29udmVydC5jOjc0MiBjb252ZXJ0LmM6Nzk2CisjOiBjb252ZXJ0LmM6NzM2IGNvbnZlcnQuYzo3OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkIgogbXNnc3RyICJmaWx0cm8gZXh0ZXJubyAnJXMnIGZhbGzDsyIKIAotIzogY29udmVydC5jOjg0NAorIzogY29udmVydC5jOjgzOQogbXNnaWQgInVuZXhwZWN0ZWQgZmlsdGVyIHR5cGUiCiBtc2dzdHIgInRpcG8gZGUgZmlsdHJvIGluZXNwZXJhZG8iCiAKLSM6IGNvbnZlcnQuYzo4NTUKKyM6IGNvbnZlcnQuYzo4NTAKIG1zZ2lkICJwYXRoIG5hbWUgdG9vIGxvbmcgZm9yIGV4dGVybmFsIGZpbHRlciIKIG1zZ3N0ciAibm9tYnJlIGRlIHJ1dGEgbXV5IGxhcmdvIHBhcmEgZmlsdHJvIGV4dGVybm8iCiAKLSM6IGNvbnZlcnQuYzo5MjkKKyM6IGNvbnZlcnQuYzo5MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4dGVybmFsIGZpbHRlciAnJXMnIGlzIG5vdCBhdmFpbGFibGUgYW55bW9yZSBhbHRob3VnaCBub3QgYWxsIHBhdGhzIGhhdmUgIgpAQCAtMjA3OCw2NyArMjk2Niw2NyBAQAogImZpbHRybyBleHRlcm5vICclcycgeWEgbm8gZXN0w6EgZGlzcG9uaWJsZSBhdW5xdWUgbm8gdG9kYXMgbGFzIHJ1dGFzIGhhbiBzaWRvICIKICJmaWx0cmFkYXMiCiAKLSM6IGNvbnZlcnQuYzoxMjI4CisjOiBjb252ZXJ0LmM6MTIyMwogbXNnaWQgInRydWUvZmFsc2UgYXJlIG5vIHZhbGlkIHdvcmtpbmctdHJlZS1lbmNvZGluZ3MiCiBtc2dzdHIgInRydWUvZmFsc2Ugbm8gc29uIHdvcmtpbmctdHJlZS1lbmNvZGluZ3MgdsOhbGlkb3MiCiAKLSM6IGNvbnZlcnQuYzoxMzk4IGNvbnZlcnQuYzoxNDMyCisjOiBjb252ZXJ0LmM6MTQxMSBjb252ZXJ0LmM6MTQ0NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogY2xlYW4gZmlsdGVyICclcycgZmFpbGVkIgogbXNnc3RyICIlczogZmFsbMOzIGFsIGxpbXBpYXIgZmlsdHJvICclcyciCiAKLSM6IGNvbnZlcnQuYzoxNDc2CisjOiBjb252ZXJ0LmM6MTQ4OQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogc211ZGdlIGZpbHRlciAlcyBmYWlsZWQiCiBtc2dzdHIgIiVzOiBmaWx0cm8gc211ZGdlICVzIGZhbGzDsyIKIAotIzogZGF0ZS5jOjExNgorIzogZGF0ZS5jOjEzOAogbXNnaWQgImluIHRoZSBmdXR1cmUiCiBtc2dzdHIgImVuIGVsIGZ1dHVybyIKIAotIzogZGF0ZS5jOjEyMgorIzogZGF0ZS5jOjE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHNlY29uZCBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gc2Vjb25kcyBhZ28iCiBtc2dzdHJbMF0gImhhY2UgJTxQUkl1TUFYPiBzZWd1bmRvIgogbXNnc3RyWzFdICJoYWNlICU8UFJJdU1BWD4gc2VndW5kb3MiCiAKLSM6IGRhdGUuYzoxMjkKKyM6IGRhdGUuYzoxNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiBtaW51dGUgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IG1pbnV0ZXMgYWdvIgogbXNnc3RyWzBdICJoYWNlICU8UFJJdU1BWD4gbWludXRvIgogbXNnc3RyWzFdICJoYWNlICU8UFJJdU1BWD4gbWludXRvcyIKIAotIzogZGF0ZS5jOjEzNgorIzogZGF0ZS5jOjE1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IGhvdXIgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IGhvdXJzIGFnbyIKIG1zZ3N0clswXSAiaGFjZSAlPFBSSXVNQVg+IGhvcmEiCiBtc2dzdHJbMV0gImhhY2UgJTxQUkl1TUFYPiBob3JhcyIKIAotIzogZGF0ZS5jOjE0MworIzogZGF0ZS5jOjE2NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IGRheSBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gZGF5cyBhZ28iCiBtc2dzdHJbMF0gImhhY2UgJTxQUkl1TUFYPiBkw61hIgogbXNnc3RyWzFdICJoYWNlICU8UFJJdU1BWD4gZMOtYXMiCiAKLSM6IGRhdGUuYzoxNDkKKyM6IGRhdGUuYzoxNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiB3ZWVrIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiB3ZWVrcyBhZ28iCiBtc2dzdHJbMF0gImhhY2UgJTxQUkl1TUFYPiBzZW1hbmEiCiBtc2dzdHJbMV0gImhhY2UgJTxQUkl1TUFYPiBzZW1hbmFzIgogCi0jOiBkYXRlLmM6MTU2CisjOiBkYXRlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gbW9udGggYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IG1vbnRocyBhZ28iCiBtc2dzdHJbMF0gImhhY2UgJTxQUkl1TUFYPiBtZXMiCiBtc2dzdHJbMV0gImhhY2UgJTxQUkl1TUFYPiBtZXNlcyIKIAotIzogZGF0ZS5jOjE2NworIzogZGF0ZS5jOjE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHllYXIiCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4geWVhcnMiCkBAIC0yMTQ2LDQwICszMDM0LDQwIEBACiBtc2dzdHJbMV0gIiU8UFJJdU1BWD4gYcOxb3MiCiAKICMuIFRSQU5TTEFUT1JTOiAiJXMiIGlzICI8bj4geWVhcnMiCi0jOiBkYXRlLmM6MTcwCisjOiBkYXRlLmM6MTkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzLCAlPFBSSXVNQVg+IG1vbnRoIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJXMsICU8UFJJdU1BWD4gbW9udGhzIGFnbyIKIG1zZ3N0clswXSAiJXMsIHkgJTxQUkl1TUFYPiBtZXMgYXRyw6FzIgogbXNnc3RyWzFdICIlcywgeSAlPFBSSXVNQVg+IG1lc2VzIGF0csOhcyIKIAotIzogZGF0ZS5jOjE3NSBkYXRlLmM6MTgwCisjOiBkYXRlLmM6MTk3IGRhdGUuYzoyMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiB5ZWFyIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiB5ZWFycyBhZ28iCiBtc2dzdHJbMF0gImhhY2UgJTxQUkl1TUFYPiBhw7FvIgogbXNnc3RyWzFdICJoYWNlICU8UFJJdU1BWD4gYcOxb3MiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzoyNjgKKyM6IGRlbHRhLWlzbGFuZHMuYzoyNzIKIG1zZ2lkICJQcm9wYWdhdGluZyBpc2xhbmQgbWFya3MiCiBtc2dzdHIgIlByb3BhZ2FuZG8gbWFyY2FzIGlzbGEiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzoyODYKKyM6IGRlbHRhLWlzbGFuZHMuYzoyOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHRyZWUgb2JqZWN0ICVzIgogbXNnc3RyICJtYWwgb2JqZXRvIMOhcmJvbCAlcyIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjMzMAorIzogZGVsdGEtaXNsYW5kcy5jOjMzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBpc2xhbmQgcmVnZXggZm9yICclcyc6ICVzIgogbXNnc3RyICJmYWxsw7MgYWwgY2FyZ2FyIGlzbGEgZGUgcmVnZXggcGFyYSAnJXMnOiAlcyIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjM4NgorIzogZGVsdGEtaXNsYW5kcy5jOjM5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpc2xhbmQgcmVnZXggZnJvbSBjb25maWcgaGFzIHRvbyBtYW55IGNhcHR1cmUgZ3JvdXBzIChtYXg9JWQpIgogbXNnc3RyICJyZWdleCBpc2xhIGRlIGNvbmZpZyB0aWVuZSBtdWNob3MgZ3J1cG9zIGRlIGNhcHR1cmEgKG1heD0lZCkiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzo0NjIKKyM6IGRlbHRhLWlzbGFuZHMuYzo0NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWFya2VkICVkIGlzbGFuZHMsIGRvbmUuXG4iCiBtc2dzdHIgIiVkIGlzbGFzIG1hcmNhZGFzLCBsaXN0by5cbiIKQEAgLTIxODksMjYgKzMwNzcsMzMgQEAKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcmRlcmZpbGUgJyVzJyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGxlZXIgb3JkZW4gZGUgYXJjaGl2b3MgJyVzJyIKIAotIzogZGlmZmNvcmUtcmVuYW1lLmM6NTQ0CisjOiBkaWZmY29yZS1yZW5hbWUuYzo1NDMKIG1zZ2lkICJQZXJmb3JtaW5nIGluZXhhY3QgcmVuYW1lIGRldGVjdGlvbiIKIG1zZ3N0ciAiUmVhbGl6YW5kbyB1bmEgZGV0ZWNjacOzbiBkZSBjYW1iaW9zIGRlIG5vbWJyZSBpbmV4YWN0YSIKIAotIzogZGlmZi5jOjEwOAotIywgYy1mb3JtYXQKLW1zZ2lkICJvcHRpb24gJyVzJyByZXF1aXJlcyBhIHZhbHVlIgotbXNnc3RyICJvcGNpw7NuICclcycgcmVxdWllcmUgdW4gdmFsb3IiCisjOiBkaWZmLW5vLWluZGV4LmM6MjM4Cittc2dpZCAiZ2l0IGRpZmYgLS1uby1pbmRleCBbPG9wdGlvbnM+XSA8cGF0aD4gPHBhdGg+IgorbXNnc3RyICJnaXQgZGlmZiAtLW5vLWluZGV4IFs8b3BjaW9uZXM+XSA8cGF0aD4gPHBhdGg+IgogCi0jOiBkaWZmLmM6MTU4CisjOiBkaWZmLW5vLWluZGV4LmM6MjYzCittc2dpZCAiIgorIk5vdCBhIGdpdCByZXBvc2l0b3J5LiBVc2UgLS1uby1pbmRleCB0byBjb21wYXJlIHR3byBwYXRocyBvdXRzaWRlIGEgd29ya2luZyAiCisidHJlZSIKK21zZ3N0ciAiIgorIk5vIGVzIHVuIHJlcG9zaXRvcmlvIGdpdC4gVXNlIC0tbm8taW5kZXggcGFyYSBjb21wYXJhciBkb3MgcGF0aHMgZnVlcmEgZGVsICIKKyLDoXJib2wgZGUgdHJhYmFqbyIKKworIzogZGlmZi5jOjE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICIgIEZhaWxlZCB0byBwYXJzZSBkaXJzdGF0IGN1dC1vZmYgcGVyY2VudGFnZSAnJXMnXG4iCiBtc2dzdHIgIiAgRmFsbMOzIGFsIGFuYWxpemFyIGRpcnN0YXQgcG9yY2VudGFqZSBkZSBjb3J0ZSAnJXMnXG4iCiAKLSM6IGRpZmYuYzoxNjMKKyM6IGRpZmYuYzoxNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBVbmtub3duIGRpcnN0YXQgcGFyYW1ldGVyICclcydcbiIKIG1zZ3N0ciAiICBwYXLDoW1ldHJvICclcycgZGUgZGlyc3RhdCBkZXNjb25vY2lkb1xuIgogCi0jOiBkaWZmLmM6MjkxCisjOiBkaWZmLmM6Mjk2CiBtc2dpZCAiIgogImNvbG9yIG1vdmVkIHNldHRpbmcgbXVzdCBiZSBvbmUgb2YgJ25vJywgJ2RlZmF1bHQnLCAnYmxvY2tzJywgJ3plYnJhJywgIgogIidkaW1tZWQtemVicmEnLCAncGxhaW4nIgpAQCAtMjIxNiwyNiArMzExMSwzMSBAQAogIm9wY2nDs24gZGUgY29sb3IgdGllbmUgcXVlIHNlciB1bmEgZGUgJ25vJywgJ2RlZmF1bHQnLCAnYmxvY2tzJywgJ3plYnJhJywgIgogIidkaW1tZWRfemVicmEnLCAncGxhaW4nIgogCi0jOiBkaWZmLmM6MzE2CisjOiBkaWZmLmM6MzI0CiAjLCBjLWZvcm1hdAotbXNnaWQgImlnbm9yaW5nIHVua25vd24gY29sb3ItbW92ZWQtd3MgbW9kZSAnJXMnIgotbXNnc3RyICJpZ25vcmFuZG8gbW9kbyBkZXNjb25vY2lkbyBjb2xvci1tb3ZlZC13cyAnJXMnIgotCi0jOiBkaWZmLmM6MzIzCiBtc2dpZCAiIgotImNvbG9yLW1vdmVkLXdzOiBhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UgY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgd2hpdGUgIgotInNwYWNlIG1vZGVzIgorInVua25vd24gY29sb3ItbW92ZWQtd3MgbW9kZSAnJXMnLCBwb3NzaWJsZSB2YWx1ZXMgYXJlICdpZ25vcmUtc3BhY2UtY2hhbmdlJywgIgorIidpZ25vcmUtc3BhY2UtYXQtZW9sJywgJ2lnbm9yZS1hbGwtc3BhY2UnLCAnYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlJyIKK21zZ3N0ciAiIgorIm1vZG8gY29sb3ItbW92ZWQtd3MgZGVzY29ub2NpZG8gJyVzJywgdmFsb3JlcyBwb3NpYmxlcyBzb24gJ2lnbm9yZS1zcGFjZS0iCisiY2hhbmdlJywgJ2lnbm9yZS1zcGFjZS1hdC1lb2wnLCAnaWdub3JlLWFsbC1zcGFjZScsICdhbGxvdy1pbmRlbnRhdGlvbi0iCisiY2hhbmdlJyIKKworIzogZGlmZi5jOjMzMgorbXNnaWQgIiIKKyJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyICIKKyJ3aGl0ZXNwYWNlIG1vZGVzIgogbXNnc3RyICIiCiAiY29sb3ItbW92ZWQtd3M6IGFsbG93LWluZGVudGF0aW9uLWNoYW5nZSBubyBwdWVkZSBzZXIgY29tYmluYWRvIGNvbiBvdHJvcyAiCiAibW9kb3MgZGUgZXNwYWNpb3MgZW4gYmxhbmNvIgogCi0jOiBkaWZmLmM6Mzk0CisjOiBkaWZmLmM6NDA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gdmFsdWUgZm9yICdkaWZmLnN1Ym1vZHVsZScgY29uZmlnIHZhcmlhYmxlOiAnJXMnIgogbXNnc3RyICIiCiAiVmFsb3IgcGFyYSBsYSB2YXJpYWJsZSBkZSBjb25maWd1cmFjacOzbiAnZGlmZi5zdWJtb2R1bGUnIGRlc2Nvbm9jaWRvOiAnJXMnIgogCi0jOiBkaWZmLmM6NDU0CisjOiBkaWZmLmM6NDY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJGb3VuZCBlcnJvcnMgaW4gJ2RpZmYuZGlyc3RhdCcgY29uZmlnIHZhcmlhYmxlOlxuIgpAQCAtMjI0NCwyNCArMzE0NCwzNSBAQAogIkVycm9yZXMgZW4gbGEgdmFyaWFibGUgZGUgY29uZmlnICdkaWZmLmRpcnN0YXQnIGVuY29udHJhZG9zOlxuIgogIiVzIgogCi0jOiBkaWZmLmM6NDE0MAorIzogZGlmZi5jOjQyMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZGlmZiBkaWVkLCBzdG9wcGluZyBhdCAlcyIKIG1zZ3N0ciAiZGlmZiBleHRlcm5vIG11cmnDsywgZGV0ZW5pZW5kbyBlbiAlcyIKIAotIzogZGlmZi5jOjQ0ODIKKyM6IGRpZmYuYzo0NTQ3CiBtc2dpZCAiLS1uYW1lLW9ubHksIC0tbmFtZS1zdGF0dXMsIC0tY2hlY2sgYW5kIC1zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi0tbmFtZS1vbmx5LCAtLW5hbWUtc3RhdHVzLCAtLWNoZWNrIHkgLXMgc29uIG11dHVhbWVudGUgZXhjbHVzaXZhcyIKIAotIzogZGlmZi5jOjQ0ODUKKyM6IGRpZmYuYzo0NTUwCiBtc2dpZCAiLUcsIC1TIGFuZCAtLWZpbmQtb2JqZWN0IGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi1HLCAtUyB5IC0tZmluZC1vYmplY3Qgc29uIG11dHVhbWVudGUgZXhjbHVzaXZhcyIKIAotIzogZGlmZi5jOjQ1NjMKKyM6IGRpZmYuYzo0NjI4CiBtc2dpZCAiLS1mb2xsb3cgcmVxdWlyZXMgZXhhY3RseSBvbmUgcGF0aHNwZWMiCiBtc2dzdHIgIi0tZm9sbG93IHJlcXVpZXJlIGV4YWN0YW1lbnRlIHVuIHBhdGhzcGVjIgogCi0jOiBkaWZmLmM6NDcyOQorIzogZGlmZi5jOjQ2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAtLXN0YXQgdmFsdWU6ICVzIgorbXNnc3RyICJ2YWxvciAtLXN0YXQgaW52w6FsaWRvOiAlcyIKKworIzogZGlmZi5jOjQ2ODEgZGlmZi5jOjQ2ODYgZGlmZi5jOjQ2OTEgZGlmZi5jOjQ2OTYgZGlmZi5jOjUyMDkKKyM6IHBhcnNlLW9wdGlvbnMuYzoxOTcgcGFyc2Utb3B0aW9ucy5jOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICIlcyBlc3BlcmEgdW4gdmFsb3IgbnVtw6lyaWNvIgorCisjOiBkaWZmLmM6NDcxMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiRmFpbGVkIHRvIHBhcnNlIC0tZGlyc3RhdC8tWCBvcHRpb24gcGFyYW1ldGVyOlxuIgpAQCAtMjI3MCw2NCArMzE4MSw1NzkgQEAKICJGYWxsw7MgYWwgYW5hbGl6YXIgcGFyw6FtZXRybyBkZSBvcGNpw7NuIC0tZGlyc3RhdC8tWDpcbiIKICIlcyIKIAotIzogZGlmZi5jOjQ3NDMKKyM6IGRpZmYuYzo0Nzk4CiAjLCBjLWZvcm1hdAotbXNnaWQgIkZhaWxlZCB0byBwYXJzZSAtLXN1Ym1vZHVsZSBvcHRpb24gcGFyYW1ldGVyOiAnJXMnIgotbXNnc3RyICJGYWxsw7MgYWwgYW5hbGl6YXIgcGFyw6FtZXRybyBkZSBvcGNpw7NuIC0tc3VibW9kdWxlOiAnJXMnIgorbXNnaWQgInVua25vd24gY2hhbmdlIGNsYXNzICclYycgaW4gLS1kaWZmLWZpbHRlcj0lcyIKK21zZ3N0ciAiY2FtYmlvIGRlIGNsYXNlIGRlc2Nvbm9jaWRvICclYycgZW4gLS1kaWZmLWZpbHRlcj0lcyIKIAotIzogZGlmZi5jOjU4MjMKKyM6IGRpZmYuYzo0ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdmFsdWUgYWZ0ZXIgd3MtZXJyb3ItaGlnaGxpZ2h0PSUuKnMiCittc2dzdHIgInZhbG9yIGRlc2Nvbm9jaWRvIGx1ZWdvIGRlIHdzLWVycm9yLWhpZ2hsaWdodD0lLipzIgorCisjOiBkaWZmLmM6NDgzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSAnJXMnIgorbXNnc3RyICJubyBzZSBwdWVkZSByZXNvbHZlciAnJXMnIgorCisjOiBkaWZmLmM6NDg4NiBkaWZmLmM6NDg5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIDxuPi88bT4gZm9ybSIKK21zZ3N0ciAiJXMgZXNwZXJhIGZvcm1hIDxuPi88bT4iCisKKyM6IGRpZmYuYzo0OTA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBjaGFyYWN0ZXIsIGdvdCAnJXMnIgorbXNnc3RyICIlcyBlc3BlcmFiYSB1biBjaGFyLCBzZSBvYnR1dm8gJyVzJyIKKworIzogZGlmZi5jOjQ5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIC0tY29sb3ItbW92ZWQgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJtYWwgYXJndW1lbnRvIC0tY29sb3ItbW92ZWQ6ICVzIgorCisjOiBkaWZmLmM6NDk0NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG1vZGUgJyVzJyBpbiAtLWNvbG9yLW1vdmVkLXdzIgorbXNnc3RyICJtb2RvIGludsOhbGlkbyAnJXMnIGVuIC0tY29sb3ItbW92ZWQtd3MiCisKKyM6IGRpZmYuYzo0OTg0Cittc2dpZCAiIgorIm9wdGlvbiBkaWZmLWFsZ29yaXRobSBhY2NlcHRzIFwibXllcnNcIiwgXCJtaW5pbWFsXCIsIFwicGF0aWVuY2VcIiBhbmQgIgorIlwiaGlzdG9ncmFtXCIiCittc2dzdHIgIiIKKyJvcGNpw7NuIGRpZmYtYWxnb3JpdGhtIGFjZXB0YSBcIm15ZXJzXCIsIFwibWluaW1hbFwiLCBcInBhdGllbmNlXCIgZSAiCisiXCJoaXN0b2dyYW1cIiIKKworIzogZGlmZi5jOjUwMjAgZGlmZi5jOjUwNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBhcmd1bWVudCB0byAlcyIKK21zZ3N0ciAiYXJndW1lbnRvIGludsOhbGlkbyBwYXJhICVzIgorCisjOiBkaWZmLmM6NTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgLS1zdWJtb2R1bGUgb3B0aW9uIHBhcmFtZXRlcjogJyVzJyIKK21zZ3N0ciAiZmFsbMOzIGFsIGFuYWxpemFyIHBhcsOhbWV0cm8gZGUgb3BjacOzbiAtLXN1Ym1vZHVsZTogJyVzJyIKKworIzogZGlmZi5jOjUyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIC0td29yZC1kaWZmIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAibWFsIGFyZ3VtZW50byAtLXdvcmQtZGlmZjogJXMiCisKKyM6IGRpZmYuYzo1MjU3Cittc2dpZCAiRGlmZiBvdXRwdXQgZm9ybWF0IG9wdGlvbnMiCittc2dzdHIgIk9wY2lvbmVzIGRlIGZvcm1hdG8gZGUgc2FsaWRhIHBhcmEgZGlmZiIKKworIzogZGlmZi5jOjUyNTkgZGlmZi5jOjUyNjUKK21zZ2lkICJnZW5lcmF0ZSBwYXRjaCIKK21zZ3N0ciAiZ2VuZXJhciBwYXJjaGUiCisKKyM6IGRpZmYuYzo1MjYyIGJ1aWx0aW4vbG9nLmM6MTczCittc2dpZCAic3VwcHJlc3MgZGlmZiBvdXRwdXQiCittc2dzdHIgInN1cHJpbWlyIHNhbGlkYSBkZSBkaWZmIgorCisjOiBkaWZmLmM6NTI2NyBkaWZmLmM6NTM4MSBkaWZmLmM6NTM4OAorbXNnaWQgIjxuPiIKK21zZ3N0ciAiPG4+IgorCisjOiBkaWZmLmM6NTI2OCBkaWZmLmM6NTI3MQorbXNnaWQgImdlbmVyYXRlIGRpZmZzIHdpdGggPG4+IGxpbmVzIGNvbnRleHQiCittc2dzdHIgImdlbmVyYSBkaWZmcyBjb24gPG4+IGzDrW5lYXMgZGUgY29udGV4dG8iCisKKyM6IGRpZmYuYzo1MjczCittc2dpZCAiZ2VuZXJhdGUgdGhlIGRpZmYgaW4gcmF3IGZvcm1hdCIKK21zZ3N0ciAiZ2VuZXJhIGVsIGRpZmYgZW4gZm9ybWF0byByYXciCisKKyM6IGRpZmYuYzo1Mjc2Cittc2dpZCAic3lub255bSBmb3IgJy1wIC0tcmF3JyIKK21zZ3N0ciAic2luw7NuaW1vIHBhcmEgJy1wIC0tc3RhdCciCisKKyM6IGRpZmYuYzo1MjgwCittc2dpZCAic3lub255bSBmb3IgJy1wIC0tc3RhdCciCittc2dzdHIgInNpbsOzbmltbyBwYXJhICctcCAtLXN0YXQnIgorCisjOiBkaWZmLmM6NTI4NAorbXNnaWQgIm1hY2hpbmUgZnJpZW5kbHkgLS1zdGF0IgorbXNnc3RyICItLXN0YXQgYW1pZ2FibGUgcGFyYSBtw6FxdWluYSIKKworIzogZGlmZi5jOjUyODcKK21zZ2lkICJvdXRwdXQgb25seSB0aGUgbGFzdCBsaW5lIG9mIC0tc3RhdCIKK21zZ3N0ciAibW9zdHJhciBzb2xvIGxhIMO6bHRpbWEgbMOtbmVhIHBhcmEgLS1zdGF0IgorCisjOiBkaWZmLmM6NTI4OSBkaWZmLmM6NTI5NworbXNnaWQgIjxwYXJhbTEscGFyYW0yPi4uLiIKK21zZ3N0ciAiPHBhcmFtMSxwYXJhbTI+Li4uIgorCisjOiBkaWZmLmM6NTI5MAorbXNnaWQgIiIKKyJvdXRwdXQgdGhlIGRpc3RyaWJ1dGlvbiBvZiByZWxhdGl2ZSBhbW91bnQgb2YgY2hhbmdlcyBmb3IgZWFjaCBzdWItZGlyZWN0b3J5IgorbXNnc3RyICIiCisibXVlc3RyYSBsYSBkaXN0cmlidWNpw7NuIGRlIGNhbnRpZGFkZXMgZGUgY2FtYmlvcyByZWxhdGl2YSBwYXJhIGNhZGEgIgorInN1YmRpcmVjdG9yaW8iCisKKyM6IGRpZmYuYzo1Mjk0Cittc2dpZCAic3lub255bSBmb3IgLS1kaXJzdGF0PWN1bXVsYXRpdmUiCittc2dzdHIgInNpbsOzbmltbyBwYXJhIC0tZGlyc3RhdD1jdW11bGF0aXZlIgorCisjOiBkaWZmLmM6NTI5OAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1maWxlcyxwYXJhbTEscGFyYW0yLi4uIgorbXNnc3RyICJzaW5vbmltbyBwYXJhIC0tZGlyc3RhdD1hcmNoaXZvcyxwYXJhbTEscGFyYW0yLi4uIgorCisjOiBkaWZmLmM6NTMwMgorbXNnaWQgIndhcm4gaWYgY2hhbmdlcyBpbnRyb2R1Y2UgY29uZmxpY3QgbWFya2VycyBvciB3aGl0ZXNwYWNlIGVycm9ycyIKK21zZ3N0ciAiIgorImFkdmllcnRlIHNpIGNhbWJpb3MgaW50cm9kdWNlbiBjb25mbGljdG9zIGRlIG1hcmtlcnMgbyBlcnJvcmVzIGRlIGVzcGFjaW9zICIKKyJlbiBibGFuY28iCisKKyM6IGRpZmYuYzo1MzA1Cittc2dpZCAiY29uZGVuc2VkIHN1bW1hcnkgc3VjaCBhcyBjcmVhdGlvbnMsIHJlbmFtZXMgYW5kIG1vZGUgY2hhbmdlcyIKK21zZ3N0ciAiIgorInJlc3VtZW4gY29uZGVuc2FkbyBkZSBjcmVhY2lvbmVzLCBjYW1iaW9zIGRlIG5vbWJyZXMgeSBjYW1iaW9zIGRlIG1vZG9zIgorCisjOiBkaWZmLmM6NTMwOAorbXNnaWQgInNob3cgb25seSBuYW1lcyBvZiBjaGFuZ2VkIGZpbGVzIgorbXNnc3RyICJtb3N0cmFyIHNvbG8gbm9tYnJlcyBkZSBhcmNoaXZvcyBjYW1iaWFkb3MiCisKKyM6IGRpZmYuYzo1MzExCittc2dpZCAic2hvdyBvbmx5IG5hbWVzIGFuZCBzdGF0dXMgb2YgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAibW9zdHJhciBzb2xvIG5vbWJyZXMgeSBlc3RhZG9zIGRlIGFyY2hpdm9zIGNhbWJpYWRvcyIKKworIzogZGlmZi5jOjUzMTMKK21zZ2lkICI8d2lkdGg+Wyw8bmFtZS13aWR0aD5bLDxjb3VudD5dXSIKK21zZ3N0ciAiPGFuY2hvPlssPG5vbWJyZS1hbmNobz5bLDxjYW50aWRhZD5dXSIKKworIzogZGlmZi5jOjUzMTQKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCIKK21zZ3N0ciAiZ2VuZXJhciBkaWZmc3RhdCIKKworIzogZGlmZi5jOjUzMTYgZGlmZi5jOjUzMTkgZGlmZi5jOjUzMjIKK21zZ2lkICI8d2lkdGg+IgorbXNnc3RyICI8YW5jaG8+IgorCisjOiBkaWZmLmM6NTMxNworbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiB3aWR0aCIKK21zZ3N0ciAiZ2VuZXJhIGRpZmZzdGF0IGNvbiB1biBhbmNobyBkYWRvIgorCisjOiBkaWZmLmM6NTMyMAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBuYW1lIHdpZHRoIgorbXNnc3RyICJnZW5lcmEgZGlmZnN0YXQgY29uIHVuIG5vbWJyZSBkZSBhbmNobyBkYWRvIgorCisjOiBkaWZmLmM6NTMyMworbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBncmFwaCB3aWR0aCIKK21zZ3N0ciAiZ2VuZXJhIGRpZmZzdGF0IGNvbiB1biBhbmNobyBkZSBncmFwaCBkYWRvIgorCisjOiBkaWZmLmM6NTMyNQorbXNnaWQgIjxjb3VudD4iCittc2dzdHIgIjxjYW50aWRhZD4iCisKKyM6IGRpZmYuYzo1MzI2Cittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBsaW1pdGVkIGxpbmVzIgorbXNnc3RyICJnZW5lcmEgZGlmZnN0YXQgY29uIGzDrW5lYXMgbGltaXRhZGFzIgorCisjOiBkaWZmLmM6NTMyOQorbXNnaWQgImdlbmVyYXRlIGNvbXBhY3Qgc3VtbWFyeSBpbiBkaWZmc3RhdCIKK21zZ3N0ciAiZ2VuZXJhIHVuIHJlc3VtZW4gY29tcGFjdG8gZGUgZGlmZnN0YXQiCisKKyM6IGRpZmYuYzo1MzMyCittc2dpZCAib3V0cHV0IGEgYmluYXJ5IGRpZmYgdGhhdCBjYW4gYmUgYXBwbGllZCIKK21zZ3N0ciAibXVlc3RyYSB1biBkaWZmIGJpbmFyaW8gcXVlIHB1ZWRlIHNlciBhcGxpY2FkbyIKKworIzogZGlmZi5jOjUzMzUKK21zZ2lkICJzaG93IGZ1bGwgcHJlLSBhbmQgcG9zdC1pbWFnZSBvYmplY3QgbmFtZXMgb24gdGhlIFwiaW5kZXhcIiBsaW5lcyIKK21zZ3N0ciAiIgorIm1vc3RyYXIgdG9kbyB1biBwcmUtIHkgcG9zdC1pbWFnZSBkZSBub21icmVzIGRlIG9iamV0b3MgZW4gbGFzIGzDrW5lYXMgXCJpbmRleCIKKyJcIiIKKworIzogZGlmZi5jOjUzMzcKK21zZ2lkICJzaG93IGNvbG9yZWQgZGlmZiIKK21zZ3N0ciAibW9zdHJhciBkaWZmIGNvbG9yaWRvIgorCisjOiBkaWZmLmM6NTMzOAorbXNnaWQgIjxraW5kPiIKK21zZ3N0ciAiPHRpcG8+IgorCisjOiBkaWZmLmM6NTMzOQorbXNnaWQgIiIKKyJoaWdobGlnaHQgd2hpdGVzcGFjZSBlcnJvcnMgaW4gdGhlICdjb250ZXh0JywgJ29sZCcgb3IgJ25ldycgbGluZXMgaW4gdGhlICIKKyJkaWZmIgorbXNnc3RyICIiCisicmVzYWx0YXIgZXJyb3JlcyBkZSBlc3BhY2lvcyBlbiBibGFuY28gZW4gbGFzIGzDrW5lYXMgJ2NvbnRleHQnLCAnb2xkJyBvICIKKyInbmV3JyBkZWwgZGlmZiIKKworIzogZGlmZi5jOjUzNDIKK21zZ2lkICIiCisiZG8gbm90IG11bmdlIHBhdGhuYW1lcyBhbmQgdXNlIE5VTHMgYXMgb3V0cHV0IGZpZWxkIHRlcm1pbmF0b3JzIGluIC0tcmF3IG9yICIKKyItLW51bXN0YXQiCittc2dzdHIgIiIKKyJubyBjb25zb2xpZGFyIGxvcyBwYXRobmFtZXMgeSB1c2FyIE5VTHMgY29tbyB0ZXJtaW5hZG9yZXMgZGUgY2FtcG9zIGVuIC0tcmF3ICIKKyJvIC0tbnVtc3RhdCIKKworIzogZGlmZi5jOjUzNDUgZGlmZi5jOjUzNDggZGlmZi5jOjUzNTEgZGlmZi5jOjU0NTcKK21zZ2lkICI8cHJlZml4PiIKK21zZ3N0ciAiPHByZWZpam8+IgorCisjOiBkaWZmLmM6NTM0NgorbXNnaWQgInNob3cgdGhlIGdpdmVuIHNvdXJjZSBwcmVmaXggaW5zdGVhZCBvZiBcImEvXCIiCittc2dzdHIgIm1vc3RyYXIgZWwgcHJlZmlqbyBkZSBmdWVudGUgZGFkbyBlbiBsdWdhciBkZSBcImEvXCIiCisKKyM6IGRpZmYuYzo1MzQ5Cittc2dpZCAic2hvdyB0aGUgZ2l2ZW4gZGVzdGluYXRpb24gcHJlZml4IGluc3RlYWQgb2YgXCJiL1wiIgorbXNnc3RyICJtb3N0cmFyIGVsIHByZWZpam8gZGUgZGVzdGlubyBlbiBsdWdhciBkZSBcImIvXCIiCisKKyM6IGRpZmYuYzo1MzUyCittc2dpZCAicHJlcGVuZCBhbiBhZGRpdGlvbmFsIHByZWZpeCB0byBldmVyeSBsaW5lIG9mIG91dHB1dCIKK21zZ3N0ciAiYW50ZXBvbmVyIHVuIHByZWZpam8gYWRpY2lvbmFsIGEgY2FkYSBsw61uZWEgbW9zdHJhZGEiCisKKyM6IGRpZmYuYzo1MzU1Cittc2dpZCAiZG8gbm90IHNob3cgYW55IHNvdXJjZSBvciBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIm5vIG1vc3RyYXIgbmluZ8O6biBwcmVmaWpvIGRlIGZ1ZW50ZSBvIGRlc3Rpbm8iCisKKyM6IGRpZmYuYzo1MzU4Cittc2dpZCAic2hvdyBjb250ZXh0IGJldHdlZW4gZGlmZiBodW5rcyB1cCB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiBsaW5lcyIKK21zZ3N0ciAiIgorIm11ZXN0cmEgZWwgY29udGV4dG8gZW50cmUgaHVua3MgZGUgZGlmZiBoYXN0YSBlbCBuw7ptZXJvIGVzcGVjaWZpY2FkbyBkZSAiCisibMOtbmVhcyIKKworIzogZGlmZi5jOjUzNjIgZGlmZi5jOjUzNjcgZGlmZi5jOjUzNzIKK21zZ2lkICI8Y2hhcj4iCittc2dzdHIgIjxjaGFyPiIKKworIzogZGlmZi5jOjUzNjMKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBuZXcgbGluZSBpbnN0ZWFkIG9mICcrJyIKK21zZ3N0ciAiZXNwZWNpZmljYSBlbCBjaGFyIHBhcmEgaW5kaWNhciB1bmEgbnVldmEgbMOtbmVhIGVuIGx1Z2FyIGRlICcrJyIKKworIzogZGlmZi5jOjUzNjgKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYW4gb2xkIGxpbmUgaW5zdGVhZCBvZiAnLSciCittc2dzdHIgImVzcGVjaWZpY2EgZWwgY2hhciBwYXJhIGluZGljYXIgdW5hIGzDrW5lYSB2aWVqYSBlbiBsdWdhciBkZSAnLSciCisKKyM6IGRpZmYuYzo1MzczCittc2dpZCAic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGEgY29udGV4dCBpbnN0ZWFkIG9mICcgJyIKK21zZ3N0ciAiZXNwZWNpZmljYSBlbCBjaGFyIHBhcmEgaW5kaWNhciB1biBjb250ZXh0byBlbiBsdWdhciBkZSAnICciCisKKyM6IGRpZmYuYzo1Mzc2Cittc2dpZCAiRGlmZiByZW5hbWUgb3B0aW9ucyIKK21zZ3N0ciAiT3BjaW9uZXMgZGUgZGlmZiByZW5hbWUiCisKKyM6IGRpZmYuYzo1Mzc3Cittc2dpZCAiPG4+Wy88bT5dIgorbXNnc3RyICI8bj5bLzxtPl0iCisKKyM6IGRpZmYuYzo1Mzc4Cittc2dpZCAiYnJlYWsgY29tcGxldGUgcmV3cml0ZSBjaGFuZ2VzIGludG8gcGFpcnMgb2YgZGVsZXRlIGFuZCBjcmVhdGUiCittc2dzdHIgImRlc2NvbXBvbmVyIGxvcyBjYW1iaW9zIGRlIHJlZXNjcml0dXJhIGVuIHBhcmVzIGRlIGJvcnJhciB5IGNyZWFyIgorCisjOiBkaWZmLmM6NTM4MgorbXNnaWQgImRldGVjdCByZW5hbWVzIgorbXNnc3RyICJkZXRlY3RhciByZW5vbWJyYWRvcyIKKworIzogZGlmZi5jOjUzODYKK21zZ2lkICJvbWl0IHRoZSBwcmVpbWFnZSBmb3IgZGVsZXRlcyIKK21zZ3N0ciAib21pdGUgbGEgcHJlaW1hZ2UgcGFyYSBib3JyYWRvcyIKKworIzogZGlmZi5jOjUzODkKK21zZ2lkICJkZXRlY3QgY29waWVzIgorbXNnc3RyICJkZXRlY3RhciBjb3BpYXMiCisKKyM6IGRpZmYuYzo1MzkzCittc2dpZCAidXNlIHVubW9kaWZpZWQgZmlsZXMgYXMgc291cmNlIHRvIGZpbmQgY29waWVzIgorbXNnc3RyICJ1c2EgYXJjaGl2b3Mgbm8gbW9kaWZpY2Fkb3MgY29tbyBmdWVudGUgcGFyYSBlbmNvbnRyYXIgY29waWFzIgorCisjOiBkaWZmLmM6NTM5NQorbXNnaWQgImRpc2FibGUgcmVuYW1lIGRldGVjdGlvbiIKK21zZ3N0ciAiZGVzaGFiaWxpdGEgZGV0ZWNjacOzbiBkZSByZW5vbWJyZXMiCisKKyM6IGRpZmYuYzo1Mzk4Cittc2dpZCAidXNlIGVtcHR5IGJsb2JzIGFzIHJlbmFtZSBzb3VyY2UiCittc2dzdHIgInVzYSBibG9icyB2YWPDrW9zIGNvbW8gZnVlbnRlIGRlIHJlbm9tYnJlIgorCisjOiBkaWZmLmM6NTQwMAorbXNnaWQgImNvbnRpbnVlIGxpc3RpbmcgdGhlIGhpc3Rvcnkgb2YgYSBmaWxlIGJleW9uZCByZW5hbWVzIgorbXNnc3RyICJjb250aW51YSBsaXN0YW5kbyBlbCBoaXN0b3JpYWwgZGUgdW4gYXJjaGl2byBtw6FzIGFsbMOhIGRlIHJlbm9tYnJlcyIKKworIzogZGlmZi5jOjU0MDMKK21zZ2lkICIiCisicHJldmVudCByZW5hbWUvY29weSBkZXRlY3Rpb24gaWYgdGhlIG51bWJlciBvZiByZW5hbWUvY29weSB0YXJnZXRzIGV4Y2VlZHMgIgorImdpdmVuIGxpbWl0IgorbXNnc3RyICIiCisicHJldmllbmUgZGV0ZWNjacOzbiBkZSByZW5vbWJyZS9jb3BpYXMgc2kgZWwgbsO6bWVybyBkZSBvYmpldGl2b3MgcGFyYSAiCisicmVub21icmVzL2NvcGlhcyBleGNlZGUgZWwgbMOtbWl0ZSBkYWRvIgorCisjOiBkaWZmLmM6NTQwNQorbXNnaWQgIkRpZmYgYWxnb3JpdGhtIG9wdGlvbnMiCittc2dzdHIgIk9wY2lvbmVzIGRlIGFsZ29yaXRtb3MgZGUgZGlmZiIKKworIzogZGlmZi5jOjU0MDcKK21zZ2lkICJwcm9kdWNlIHRoZSBzbWFsbGVzdCBwb3NzaWJsZSBkaWZmIgorbXNnc3RyICJwcm9kdWNlIGVsIGRpZmYgbcOhcyBwZXF1ZcOxbyBwb3NpYmxlIgorCisjOiBkaWZmLmM6NTQxMAorbXNnaWQgImlnbm9yZSB3aGl0ZXNwYWNlIHdoZW4gY29tcGFyaW5nIGxpbmVzIgorbXNnc3RyICJpZ25vcmFyIGVzcGFjaW9zIGVuIGJsYW5jbyBjdWFuZG8gY29tcGFyYW5kbyBsw61uZWFzIgorCisjOiBkaWZmLmM6NTQxMworbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIGFtb3VudCBvZiB3aGl0ZXNwYWNlIgorbXNnc3RyICJpZ25vcmFyIGNhbWJpb3MgZW4gbGEgY2FudGlkYWQgZGUgbMOtbmVhcyBlbiBibGFuY28iCisKKyM6IGRpZmYuYzo1NDE2Cittc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSBhdCBFT0wiCittc2dzdHIgImlnbm9yYXIgY2FtYmlvcyBlbiBlc3BhY2lvcyBlbiBibGFuY28gZW4gRU9MIgorCisjOiBkaWZmLmM6NTQxOQorbXNnaWQgImlnbm9yZSBjYXJyaWVyLXJldHVybiBhdCB0aGUgZW5kIG9mIGxpbmUiCittc2dzdHIgImlnbm9yYSBjYXJyaWVyLXJldHVybiBhbCBmaW5hbCBkZSBsYSBsw61uZWEiCisKKyM6IGRpZmYuYzo1NDIyCittc2dpZCAiaWdub3JlIGNoYW5nZXMgd2hvc2UgbGluZXMgYXJlIGFsbCBibGFuayIKK21zZ3N0ciAiaWdub3JhIGNhbWJpb3MgY3V5YXMgbMOtbmVhcyBzb24gdG9kYXMgZW4gYmxhbmNvIgorCisjOiBkaWZmLmM6NTQyNQorbXNnaWQgImhldXJpc3RpYyB0byBzaGlmdCBkaWZmIGh1bmsgYm91bmRhcmllcyBmb3IgZWFzeSByZWFkaW5nIgorbXNnc3RyICJoZXVyw61zdGljYSBwYXJhIGNhbWJpYXIgbG9zIGzDrW1pdGVzIGRlIGh1bmsgcGFyYSB1bmEgZsOhY2lsIGxlY3R1cmEiCisKKyM6IGRpZmYuYzo1NDI4Cittc2dpZCAiZ2VuZXJhdGUgZGlmZiB1c2luZyB0aGUgXCJwYXRpZW5jZSBkaWZmXCIgYWxnb3JpdGhtIgorbXNnc3RyICJnZW5lcmEgdW4gZGlmZiB1c2FuZG8gYWxnb3JpdG1vIFwicGF0aWVuY2UgZGlmZlwiIgorCisjOiBkaWZmLmM6NTQzMgorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwiaGlzdG9ncmFtIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgImdlbmVyYSB1biBkaWZmIHVzYW5kbyBhbGdvcml0bW8gXCJoaXN0b2dyYW0gZGlmZlwiIgorCisjOiBkaWZmLmM6NTQzNAorbXNnaWQgIjxhbGdvcml0aG0+IgorbXNnc3RyICI8YWxnb3JpdG1vPiIKKworIzogZGlmZi5jOjU0MzUKK21zZ2lkICJjaG9vc2UgYSBkaWZmIGFsZ29yaXRobSIKK21zZ3N0ciAiZXNjb2dlIHVuIGFsZ29yaXRtbyBwYXJhIGRpZmYiCisKKyM6IGRpZmYuYzo1NDM3Cittc2dpZCAiPHRleHQ+IgorbXNnc3RyICI8dGV4dG8+IgorCisjOiBkaWZmLmM6NTQzOAorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwiYW5jaG9yZWQgZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAiZ2VuZXJhIHVuIGRpZmYgdXNhbmRvIGFsZ29yaXRtbyBcImFuY2hvcmVkIGRpZmZcIiIKKworIzogZGlmZi5jOjU0NDAgZGlmZi5jOjU0NDkgZGlmZi5jOjU0NTIKK21zZ2lkICI8bW9kZT4iCittc2dzdHIgIjxtb2RvPiIKKworIzogZGlmZi5jOjU0NDEKK21zZ2lkICJzaG93IHdvcmQgZGlmZiwgdXNpbmcgPG1vZGU+IHRvIGRlbGltaXQgY2hhbmdlZCB3b3JkcyIKK21zZ3N0ciAiIgorIm11ZXN0cmEgZGlmZiBwb3IgcGFsYWJyYXMgdXNhbmRvIDxtb2RvPiBwYXJhIGRlbGltaXRhciBsYXMgcGFsYWJyYXMgY2FtYmlhZGFzIgorCisjOiBkaWZmLmM6NTQ0MyBkaWZmLmM6NTQ0NiBkaWZmLmM6NTQ5MQorbXNnaWQgIjxyZWdleD4iCittc2dzdHIgIjxyZWdleD4iCisKKyM6IGRpZmYuYzo1NDQ0Cittc2dpZCAidXNlIDxyZWdleD4gdG8gZGVjaWRlIHdoYXQgYSB3b3JkIGlzIgorbXNnc3RyICJ1c2EgPHJlZ2V4PiBwYXJhIGRlY2lkaXIgcXVlIHBhbGFicmEgZXMiCisKKyM6IGRpZmYuYzo1NDQ3Cittc2dpZCAiZXF1aXZhbGVudCB0byAtLXdvcmQtZGlmZj1jb2xvciAtLXdvcmQtZGlmZi1yZWdleD08cmVnZXg+IgorbXNnc3RyICJlcXVpdmFsZW50ZSBhIC0td29yZC1kaWZmPWNvbG9yIC0td29yZC1kaWZmLXJlZ2V4PTxyZWdleD4iCisKKyM6IGRpZmYuYzo1NDUwCittc2dpZCAibW92ZWQgbGluZXMgb2YgY29kZSBhcmUgY29sb3JlZCBkaWZmZXJlbnRseSIKK21zZ3N0ciAibMOtbmVhcyBtb3ZpZGFzIGRlIGPDs2RpZ28gZXN0w6FuIGNvbG9yZWFkYXMgZGlmZXJlbnRlIgorCisjOiBkaWZmLmM6NTQ1MworbXNnaWQgImhvdyB3aGl0ZSBzcGFjZXMgYXJlIGlnbm9yZWQgaW4gLS1jb2xvci1tb3ZlZCIKK21zZ3N0ciAiY29tbyBlc3BhY2lvcyBlbiBibGFuY28gc29uIGlnbm9yYWRvcyBlbiAtLWNvbG9yLW1vdmVkIgorCisjOiBkaWZmLmM6NTQ1NgorbXNnaWQgIk90aGVyIGRpZmYgb3B0aW9ucyIKK21zZ3N0ciAiT3RyYXMgb3BjaW9uZXMgZGUgZGlmZiIKKworIzogZGlmZi5jOjU0NTgKK21zZ2lkICJ3aGVuIHJ1biBmcm9tIHN1YmRpciwgZXhjbHVkZSBjaGFuZ2VzIG91dHNpZGUgYW5kIHNob3cgcmVsYXRpdmUgcGF0aHMiCittc2dzdHIgIiIKKyJjdWFuZG8gZWplY3V0YWRvIGRlc2RlIHVuIHN1YmRpciwgZXhjbHV5ZSBjYW1iaW9zIGRlbCBleHRlcmlvciB5IG11ZXN0cmEgIgorInBhdGhzIHJlbGF0aXZvcyIKKworIzogZGlmZi5jOjU0NjIKK21zZ2lkICJ0cmVhdCBhbGwgZmlsZXMgYXMgdGV4dCIKK21zZ3N0ciAidHJhdGFyIHRvZG9zIGxvcyBhcmNoaXZvcyBjb21vIHRleHRvIgorCisjOiBkaWZmLmM6NTQ2NAorbXNnaWQgInN3YXAgdHdvIGlucHV0cywgcmV2ZXJzZSB0aGUgZGlmZiIKK21zZ3N0ciAiY2FtYmlhIGRvcyBpbnB1dHMsIGludmllcnRlIGVsIGRpZmYiCisKKyM6IGRpZmYuYzo1NDY2Cittc2dpZCAiZXhpdCB3aXRoIDEgaWYgdGhlcmUgd2VyZSBkaWZmZXJlbmNlcywgMCBvdGhlcndpc2UiCittc2dzdHIgInRlcm1pbmEgY29uIDEgc2kgaHViaWVyb24gZGlmZXJlbmNpYXMsIGRlIGxvIGNvbnRyYXJpbyBjb24gMCIKKworIzogZGlmZi5jOjU0NjgKK21zZ2lkICJkaXNhYmxlIGFsbCBvdXRwdXQgb2YgdGhlIHByb2dyYW0iCittc2dzdHIgImRlc2hhYmlsaXRhIHRvZG8gZWwgb3V0cHV0IGRlbCBwcm9ncmFtYSIKKworIzogZGlmZi5jOjU0NzAKK21zZ2lkICJhbGxvdyBhbiBleHRlcm5hbCBkaWZmIGhlbHBlciB0byBiZSBleGVjdXRlZCIKK21zZ3N0ciAicGVybWl0ZSBsYSBlamVjdWNpw7NuIGRlIHVuIGRpZmYgaGVscGVyIGV4dGVybm8iCisKKyM6IGRpZmYuYzo1NDcyCittc2dpZCAicnVuIGV4dGVybmFsIHRleHQgY29udmVyc2lvbiBmaWx0ZXJzIHdoZW4gY29tcGFyaW5nIGJpbmFyeSBmaWxlcyIKK21zZ3N0ciAiIgorImVqZWN1dGEgZmlsdHJvcyBkZSBjb252ZXJzacOzbiBkZSB0ZXh0byBleHRlcm5vcyBjdWFuZG8gY29tcGFyYW5kbyBiaW5hcmlvcyIKKworIzogZGlmZi5jOjU0NzQKK21zZ2lkICI8d2hlbj4iCittc2dzdHIgIjxjdWFuZG8+IgorCisjOiBkaWZmLmM6NTQ3NQorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIHRvIHN1Ym1vZHVsZXMgaW4gdGhlIGRpZmYgZ2VuZXJhdGlvbiIKK21zZ3N0ciAiaWdub3JhciBjYW1iaW9zIGEgc3VibcOzZHVsb3MgZW4gbGEgZ2VuZXJhY2nDs24gZGUgZGlmZiIKKworIzogZGlmZi5jOjU0NzgKK21zZ2lkICI8Zm9ybWF0PiIKK21zZ3N0ciAiPGZvcm1hdG8+IgorCisjOiBkaWZmLmM6NTQ3OQorbXNnaWQgInNwZWNpZnkgaG93IGRpZmZlcmVuY2VzIGluIHN1Ym1vZHVsZXMgYXJlIHNob3duIgorbXNnc3RyICJlc3BlY2lmaWNhIGNvbW8gc29uIG1vc3RyYWRhcyBsYXMgZGlmZXJlbmNpYXMgZW4gc3VibcOzZHVsb3MiCisKKyM6IGRpZmYuYzo1NDgzCittc2dpZCAiaGlkZSAnZ2l0IGFkZCAtTicgZW50cmllcyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAib2N1bHRhciBlbnRyYWRhcyAnZ2l0IGFkZCAtTicgZGVsIGluZGV4IgorCisjOiBkaWZmLmM6NTQ4NgorbXNnaWQgInRyZWF0ICdnaXQgYWRkIC1OJyBlbnRyaWVzIGFzIHJlYWwgaW4gdGhlIGluZGV4IgorbXNnc3RyICJ0cmF0YSBlbnRyYWRhcyAnZ2l0IGFkZCAtTicgY29tbyByZWFsZXMgZW4gZWwgaW5kZXgiCisKKyM6IGRpZmYuYzo1NDg4Cittc2dpZCAiPHN0cmluZz4iCittc2dzdHIgIjxzdHJpbmc+IgorCisjOiBkaWZmLmM6NTQ4OQorbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorInN0cmluZyIKK21zZ3N0ciAiIgorImJ1c2NhIHBvciBkaWZlcmVuY2lhcyBxdWUgY2FtYmllbiBlbCBuw7ptZXJvIGRlIG9jdXJyZW5jaWFzIHBhcmEgZWwgc3RyaW5nICIKKyJlc3BlY2lmaWNhZG8iCisKKyM6IGRpZmYuYzo1NDkyCittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisicmVnZXgiCittc2dzdHIgIiIKKyJidXNjYSBwb3IgZGlmZXJlbmNpYXMgcXVlIGNhbWJpZW4gZWwgbsO6bWVybyBkZSBvY3VycmVuY2lhcyBwYXJhIGVsIHJlZ2V4ICIKKyJlc3BlY2lmaWNhZG8iCisKKyM6IGRpZmYuYzo1NDk1Cittc2dpZCAic2hvdyBhbGwgY2hhbmdlcyBpbiB0aGUgY2hhbmdlc2V0IHdpdGggLVMgb3IgLUciCittc2dzdHIgIm1vc3RyYXIgdG9kb3MgbG9zIGNhbWJpb3MgZW4gZWwgY2hhbmdlc2V0IGNvbiAtUyBvIC1HIgorCisjOiBkaWZmLmM6NTQ5OAorbXNnaWQgInRyZWF0IDxzdHJpbmc+IGluIC1TIGFzIGV4dGVuZGVkIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAidHJhdGFyIDxzdHJpbmc+IGVuIC1TIGNvbW8gdW5hIGV4cHJlc2nDs24gcmVndWxhciBleHRlbmRpZGEgZGUgUE9TSVgiCisKKyM6IGRpZmYuYzo1NTAxCittc2dpZCAiY29udHJvbCB0aGUgb3JkZXIgaW4gd2hpY2ggZmlsZXMgYXBwZWFyIGluIHRoZSBvdXRwdXQiCittc2dzdHIgImNvbnRyb2xhciBlbCBvcmRlbiBlbiBlbCBxdWUgbG9zIGFyY2hpdm9zIGFwYXJlY2VuIGVuIGxhIHNhbGlkYSIKKworIzogZGlmZi5jOjU1MDIKK21zZ2lkICI8b2JqZWN0LWlkPiIKK21zZ3N0ciAiPGlkLW9iamV0bz4iCisKKyM6IGRpZmYuYzo1NTAzCittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisib2JqZWN0IgorbXNnc3RyICIiCisiYnVzY2EgcG9yIGRpZmVyZW5jaWFzIHF1ZSBjYW1iaWVuIGVsIG7Dum1lcm8gZGUgb2N1cnJlbmNpYXMgcGFyYSBlbCBvYmpldG8gIgorImVzcGVjaWZpY2FkbyIKKworIzogZGlmZi5jOjU1MDUKK21zZ2lkICJbKEF8Q3xEfE18UnxUfFV8WHxCKS4uLlsqXV0iCittc2dzdHIgIlsoQXxDfER8TXxSfFR8VXxYfEIpLi4uWypdXSIKKworIzogZGlmZi5jOjU1MDYKK21zZ2lkICJzZWxlY3QgZmlsZXMgYnkgZGlmZiB0eXBlIgorbXNnc3RyICJzZWxlY2Npb25hIGFyY2hpdm9zIHBvciB0aXBvIGRlIGRpZmYiCisKKyM6IGRpZmYuYzo1NTA4Cittc2dpZCAiPGZpbGU+IgorbXNnc3RyICI8YXJjaGl2bz4iCisKKyM6IGRpZmYuYzo1NTA5Cittc2dpZCAiT3V0cHV0IHRvIGEgc3BlY2lmaWMgZmlsZSIKK21zZ3N0ciAiT3V0cHV0IGEgdW4gYXJjaGl2byBlc3BlY8OtZmljbyIKKworIzogZGlmZi5jOjYxNjQKIG1zZ2lkICJpbmV4YWN0IHJlbmFtZSBkZXRlY3Rpb24gd2FzIHNraXBwZWQgZHVlIHRvIHRvbyBtYW55IGZpbGVzLiIKIG1zZ3N0ciAiIgogImRldGVjY2nDs24gZGUgY2FtYmlvIGRlIG5vbWJyZSBpbmV4YWN0YSBmdWUgc2FsdGFkYSBwb3IgaGFiZXIgbXVjaG9zIGFyY2hpdm9zLiIKIAotIzogZGlmZi5jOjU4MjYKKyM6IGRpZmYuYzo2MTY3CiBtc2dpZCAib25seSBmb3VuZCBjb3BpZXMgZnJvbSBtb2RpZmllZCBwYXRocyBkdWUgdG8gdG9vIG1hbnkgZmlsZXMuIgogbXNnc3RyICIiCiAic29sbyBzZSBlbmNvbnRyYXJvbiBjb3BpYXMgZGUgcnV0YXMgbW9kaWZpY2FkYXMgcG9yIGhhYmVyIG11Y2hvcyBhcmNoaXZvcy4iCiAKLSM6IGRpZmYuYzo1ODI5CisjOiBkaWZmLmM6NjE3MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAieW91IG1heSB3YW50IHRvIHNldCB5b3VyICVzIHZhcmlhYmxlIHRvIGF0IGxlYXN0ICVkIGFuZCByZXRyeSB0aGUgY29tbWFuZC4iCiBtc2dzdHIgIiIKLSJ0YWwgdmV6IHF1aWVyYSBjb25maWd1cmFyIGxhIHZhcmlhYmxlICVzIHBhcmEgcG9yIGxvIG1lbm9zICVkIHkgdm9sdmVyIGEgIgorInRhbCB2ZXogcXVpZXJhcyBjb25maWd1cmFyIGxhIHZhcmlhYmxlICVzIHBhcmEgcG9yIGxvIG1lbm9zICVkIHkgdm9sdmVyIGEgIgogImludGVudGFyIGVsIGNvbWFuZG8uIgogCi0jOiBkaXIuYzo1NzYKKyM6IGRpci5jOjU1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGRpZCBub3QgbWF0Y2ggYW55IGZpbGUocykga25vd24gdG8gZ2l0IgogbXNnc3RyICIiCiAicnV0YSBlc3BlY2lmaWNhZGEgJyVzJyBubyBjb25jb3Jkw7MgY29uIG5pbmfDum4gYXJjaGl2byhzKSBjb25vY2lkbyBwb3IgZ2l0IgogCi0jOiBkaXIuYzo5NjUKKyM6IGRpci5jOjY5NSBkaXIuYzo3MjQgZGlyLmM6NzM3CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBwYXR0ZXJuOiAnJXMnIgorbXNnc3RyICJwYXRyw7NuIGRlc2Nvbm9jaWRvOiAnJXMnIgorCisjOiBkaXIuYzo3NTQgZGlyLmM6NzY4CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBuZWdhdGl2ZSBwYXR0ZXJuOiAnJXMnIgorbXNnc3RyICJwYXRyw7NuIG5lZ2F0aXZvIG5vIHJlY29ub2NpZG86ICclcyciCisKKyM6IGRpci5jOjc4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ5b3VyIHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBoYXZlIGlzc3VlczogcGF0dGVybiAnJXMnIGlzIHJlcGVhdGVkIgorbXNnc3RyICIiCisidHUgYXJjaGl2byBzcGFyc2UtY2hlY2tvdXQgdGFsIHZleiB0ZW5nYSBlcnJvcmVzOiBwYXRyw7NuICclcycgZXN0w6EgcmVwZXRpZG8iCisKKyM6IGRpci5jOjc5NgorbXNnaWQgImRpc2FibGluZyBjb25lIHBhdHRlcm4gbWF0Y2hpbmciCittc2dzdHIgImRlc2hhYmlsaXRhciBjb2luY2lkZW5jaWEgZGUgcGF0csOzbmVzIGNvbm8iCisKKyM6IGRpci5jOjExNzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHVzZSAlcyBhcyBhbiBleGNsdWRlIGZpbGUiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIHVzYXIgJXMgY29tbyBhcmNoaXZvIGRlIGV4Y2x1c2nDs24iCiAKLSM6IGRpci5jOjE4ODAKKyM6IGRpci5jOjIxNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gYWJyaXIgZWwgZGlyZWN0b3JpbyAnJXMnIgogCi0jOiBkaXIuYzoyMTIyCisjOiBkaXIuYzoyNDc5CiBtc2dpZCAiZmFpbGVkIHRvIGdldCBrZXJuZWwgbmFtZSBhbmQgaW5mb3JtYXRpb24iCiBtc2dzdHIgImZhbGzDsyBhbCBjb25zZWd1aXIgbGEgaW5mb3JtYWNpw7NuIHkgbm9tYnJlIGRlbCBrZXJuZWwiCiAKLSM6IGRpci5jOjIyNDYKKyM6IGRpci5jOjI2MDMKIG1zZ2lkICJ1bnRyYWNrZWQgY2FjaGUgaXMgZGlzYWJsZWQgb24gdGhpcyBzeXN0ZW0gb3IgbG9jYXRpb24iCiBtc2dzdHIgInVudHJhY2tlZCBjYWNoZSBlc3TDoSBkZXNhY3RpdmFkbyBlbiBlc3RlIHNpc3RlbWEgbyB1YmljYWNpw7NuIgogCi0jOiBkaXIuYzozMDQ3CisjOiBkaXIuYzozNDA3CiAjLCBjLWZvcm1hdAogbXNnaWQgImluZGV4IGZpbGUgY29ycnVwdCBpbiByZXBvICVzIgogbXNnc3RyICJhcmNoaXZvIMOtbmRpY2UgY29ycm9tcGlkbyBlbiByZXBvc2l0b3JpbyAlcyIKIAotIzogZGlyLmM6MzA5MiBkaXIuYzozMDk3CisjOiBkaXIuYzozNDUyIGRpci5jOjM0NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcmllcyBmb3IgJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gY3JlYXIgZGlyZWN0b3Jpb3MgcGFyYSAlcyIKIAotIzogZGlyLmM6MzEyNgorIzogZGlyLmM6MzQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbWlncmF0ZSBnaXQgZGlyZWN0b3J5IGZyb20gJyVzJyB0byAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIG1pZ3JhciBlbCBkaXJlY3RvcmlvIGdpdCBkZSAnJXMnIGEgJyVzJyIKQEAgLTIzNDEsMjk3ICszNzY3LDI5MCBAQAogbXNnaWQgIkZpbHRlcmluZyBjb250ZW50IgogbXNnc3RyICJGaWx0cmFuZG8gY29udGVuaWRvIgogCi0jOiBlbnRyeS5jOjQ2NQorIzogZW50cnkuYzo0NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN0YXQgZmlsZSAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGVzdGFibGVjZXIgZWwgYXJjaGl2byAnJXMnIgogCi0jOiBlbnZpcm9ubWVudC5jOjE1MAorIzogZW52aXJvbm1lbnQuYzoxNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGdpdCBuYW1lc3BhY2UgcGF0aCBcIiVzXCIiCiBtc2dzdHIgInJ1dGEgZGUgbmFtZXNwYWNlIGRlIGdpdCBtYWxhIFwiJXNcIiIKIAotIzogZW52aXJvbm1lbnQuYzozMzIKKyM6IGVudmlyb25tZW50LmM6MzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzZXQgR0lUX0RJUiB0byAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGNvbmZpZ3VyYXIgR0lUX0RJUiBhICclcyciCiAKLSM6IGV4ZWMtY21kLmM6MzYxCisjOiBleGVjLWNtZC5jOjM2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0b28gbWFueSBhcmdzIHRvIHJ1biAlcyIKIG1zZ3N0ciAiZGVtYXNpYWRvcyBhcmd1bWVudG9zIHBhcmEgY29ycmVyICVzIgogCi0jOiBmZXRjaC1vYmplY3QuYzoxNwotbXNnaWQgIlJlbW90ZSB3aXRoIG5vIFVSTCIKLW1zZ3N0ciAiUmVtb3RvIHNpbiBVUkwiCi0KLSM6IGZldGNoLXBhY2suYzoxNTEKKyM6IGZldGNoLXBhY2suYzoxNTAKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgc2hhbGxvdyBsaXN0IgogbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogbGlzdGEgcG9jbyBwcm9mdW5kYSBlc3BlcmFkYSIKIAotIzogZmV0Y2gtcGFjay5jOjE2MworIzogZmV0Y2gtcGFjay5jOjE1MworbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBhIGZsdXNoIHBhY2tldCBhZnRlciBzaGFsbG93IGxpc3QiCittc2dzdHIgIiIKKyJnaXQgZmV0Y2gtcGFjazogc2UgZXNwZXJhYmEgdW4gZmx1c2ggcGFja2V0IGx1ZWdvIGRlIGxhIGxpc3RhIHN1cGVyZmljaWFsIgorCisjOiBmZXRjaC1wYWNrLmM6MTY0CiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCBhIGZsdXNoIHBhY2tldCIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6IHNlIGVzcGVyYWJhIEFDSy9OQUssIHNlIG9idHV2byB1biBmbHVzaCBwYWNrZXQiCiAKLSM6IGZldGNoLXBhY2suYzoxODMKKyM6IGZldGNoLXBhY2suYzoxODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCAnJXMnIgogbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogc2UgZXNwZXJhYmEgQUNLL05BSywgc2Ugb2J0dXZvICclcyciCiAKLSM6IGZldGNoLXBhY2suYzoyNTMKKyM6IGZldGNoLXBhY2suYzoxOTUKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gcmVtb3RlIgorbXNnc3RyICJubyBzZSBwdWVkZSBlc2NyaWJpciBhbCByZW1vdG8iCisKKyM6IGZldGNoLXBhY2suYzoyNTcKIG1zZ2lkICItLXN0YXRlbGVzcy1ycGMgcmVxdWlyZXMgbXVsdGlfYWNrX2RldGFpbGVkIgogbXNnc3RyICItLXN0YXRlbGVzcy1ycGMgcmVxdWllcmUgbXVsdGlfYWNrX2RldGFpbGVkIgogCi0jOiBmZXRjaC1wYWNrLmM6MzQ3IGZldGNoLXBhY2suYzoxMjc3CisjOiBmZXRjaC1wYWNrLmM6MzU2IGZldGNoLXBhY2suYzoxMzQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc2hhbGxvdyBsaW5lOiAlcyIKIG1zZ3N0ciAibMOtbmVhIHBvY28gcHJvZnVuZGEgaW52w6FsaWRhOiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM1MyBmZXRjaC1wYWNrLmM6MTI4MworIzogZmV0Y2gtcGFjay5jOjM2MiBmZXRjaC1wYWNrLmM6MTM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHVuc2hhbGxvdyBsaW5lOiAlcyIKIG1zZ3N0ciAibMOtbmVhIHN1cGVyZmljaWFsIGludsOhbGlkYTogJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNTUgZmV0Y2gtcGFjay5jOjEyODUKKyM6IGZldGNoLXBhY2suYzozNjQgZmV0Y2gtcGFjay5jOjEzNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IG5vdCBmb3VuZDogJXMiCiBtc2dzdHIgIm9iamV0byBubyBlbmNvbnRyYWRvOiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM1OCBmZXRjaC1wYWNrLmM6MTI4OAorIzogZmV0Y2gtcGFjay5jOjM2NyBmZXRjaC1wYWNrLmM6MTM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBpbiBvYmplY3Q6ICVzIgogbXNnc3RyICJlcnJvciBlbiBvYmpldG86ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzYwIGZldGNoLXBhY2suYzoxMjkwCisjOiBmZXRjaC1wYWNrLmM6MzY5IGZldGNoLXBhY2suYzoxMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHNoYWxsb3cgZm91bmQ6ICVzIgogbXNnc3RyICJzdXBlcmZpY2llIG5vIGVuY29udHJhZGE6ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzYzIGZldGNoLXBhY2suYzoxMjkzCisjOiBmZXRjaC1wYWNrLmM6MzcyIGZldGNoLXBhY2suYzoxMzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIHNoYWxsb3cvdW5zaGFsbG93LCBnb3QgJXMiCiBtc2dzdHIgInNlIGVzcGVyYWJhIHNoYWxsb3cvdW5zaGFsbG93LCBzZSBvYnR1dm8gJXMiCiAKLSM6IGZldGNoLXBhY2suYzo0MDQKKyM6IGZldGNoLXBhY2suYzo0MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ290ICVzICVkICVzIgogbXNnc3RyICJzZSBvYnR1dm8gJXMgJWQgJXMiCiAKLSM6IGZldGNoLXBhY2suYzo0MjEKKyM6IGZldGNoLXBhY2suYzo0MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb21taXQgJXMiCiBtc2dzdHIgImNvbW1pdCBpbnbDoWxpZG8gJXMiCiAKLSM6IGZldGNoLXBhY2suYzo0NTIKKyM6IGZldGNoLXBhY2suYzo0NjIKIG1zZ2lkICJnaXZpbmcgdXAiCiBtc2dzdHIgInJpbmRpw6luZG9zZSIKIAotIzogZmV0Y2gtcGFjay5jOjQ2NCBwcm9ncmVzcy5jOjIyOQorIzogZmV0Y2gtcGFjay5jOjQ3NSBwcm9ncmVzcy5jOjMyMwogbXNnaWQgImRvbmUiCiBtc2dzdHIgImxpc3RvIgogCi0jOiBmZXRjaC1wYWNrLmM6NDc2CisjOiBmZXRjaC1wYWNrLmM6NDg3CiAjLCBjLWZvcm1hdAogbXNnaWQgImdvdCAlcyAoJWQpICVzIgogbXNnc3RyICJzZSBvYnR1dm8gJXMgKCVkKSAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjUyMgorIzogZmV0Y2gtcGFjay5jOjUzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJNYXJraW5nICVzIGFzIGNvbXBsZXRlIgogbXNnc3RyICJNYXJjYW5kbyAlcyBjb21vIGNvbXBsZXRhIgogCi0jOiBmZXRjaC1wYWNrLmM6NzY0CisjOiBmZXRjaC1wYWNrLmM6NzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImFscmVhZHkgaGF2ZSAlcyAoJXMpIgogbXNnc3RyICJ5YSBzZSB0aWVuZSAlcyAoJXMpIgogCi0jOiBmZXRjaC1wYWNrLmM6ODAzCisjOiBmZXRjaC1wYWNrLmM6ODE4CiBtc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiBtc2dzdHIgImZldGNoLXBhY2s6IG5vIHNlIHB1ZWRlIGV4dHJhZXIgdW4gZGVtdWx0aXBsZXhvciBkZSBiYW5kYSBsYXRlcmFsIgogCi0jOiBmZXRjaC1wYWNrLmM6ODExCisjOiBmZXRjaC1wYWNrLmM6ODI2CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBwYWNrIGhlYWRlciIKIG1zZ3N0ciAiZXJyb3IgZGUgcHJvdG9jb2xvOiBwYXF1ZXRlIGRlIGhlYWRlciBlcnLDs25lbyIKIAotIzogZmV0Y2gtcGFjay5jOjg3OQorIzogZmV0Y2gtcGFjay5jOjkwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJmZXRjaC1wYWNrOiB1bmFibGUgdG8gZm9yayBvZmYgJXMiCiBtc2dzdHIgImZldGNoLXBhY2s6IG5vIHNlIHB1ZWRlIHF1aXRhciAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjg5NQorIzogZmV0Y2gtcGFjay5jOjkxNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBmYWlsZWQiCiBtc2dzdHIgIiVzIGZhbGzDsyIKIAotIzogZmV0Y2gtcGFjay5jOjg5NworIzogZmV0Y2gtcGFjay5jOjkxOAogbXNnaWQgImVycm9yIGluIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiBtc2dzdHIgImVycm9yIGVuIGRlbXVsdGlwbGV4b3IgZGUgYmFuZGEgbGF0ZXJhbCIKIAotIzogZmV0Y2gtcGFjay5jOjkyNgotbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2xpZW50cyIKLW1zZ3N0ciAiRWwgc2Vydmlkb3Igbm8gc29wb3J0YSBjbGllbnRlcyBzdXBlcmZpY2lhbGVzIgotCi0jOiBmZXRjaC1wYWNrLmM6OTMwCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIG11bHRpX2Fja19kZXRhaWxlZCIKLW1zZ3N0ciAiRWwgc2Vydmlkb3Igc29wb3J0YSB1bHRpX2Fja19kZXRhaWxlZCIKLQotIzogZmV0Y2gtcGFjay5jOjkzMwotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBuby1kb25lIgotbXNnc3RyICJFbCBzZXJ2aWRvciBzb3BvcnRhIG5vLWRvbmUiCi0KLSM6IGZldGNoLXBhY2suYzo5MzkKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgbXVsdGlfYWNrIgotbXNnc3RyICJFbCBzZXJ2aWRvciBzb3BvcnRhIG11bHRpX2FjayIKLQotIzogZmV0Y2gtcGFjay5jOjk0MwotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQtNjRrIgotbXNnc3RyICJFbCBzZXJ2aWRvciBzb3BvcnRhIHNpZGUtYmFuZC02NGsiCi0KLSM6IGZldGNoLXBhY2suYzo5NDcKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgc2lkZS1iYW5kIgotbXNnc3RyICJFbCBzZXJ2aWRvciBzb3BvcnRhIHNpZGUtYmFuZCIKLQotIzogZmV0Y2gtcGFjay5jOjk1MQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBhbGxvdy10aXAtc2hhMS1pbi13YW50IgotbXNnc3RyICJFbCBzZXJ2aWRvciBzb3BvcnRhIGFsbG93LXRpcC1zaGExLWluLXdhbnQiCi0KLSM6IGZldGNoLXBhY2suYzo5NTUKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgYWxsb3ctcmVhY2hhYmxlLXNoYTEtaW4td2FudCIKLW1zZ3N0ciAiRWwgc2Vydmlkb3Igc29wb3J0YSBhbGxvdy1yZWFjaGFibGUtc2hhMS1pbi13YW50IgotCiAjOiBmZXRjaC1wYWNrLmM6OTY1Ci1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIG9mcy1kZWx0YSIKLW1zZ3N0ciAiRWwgc2Vydmlkb3Igc29wb3J0YSBvZnMtZGVsdGEiCi0KLSM6IGZldGNoLXBhY2suYzo5NzEgZmV0Y2gtcGFjay5jOjExNTgKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgZmlsdGVyIgotbXNnc3RyICJFbCBzZXJ2aWRvciBzb3BvcnRhIGZpbHRybyIKLQotIzogZmV0Y2gtcGFjay5jOjk3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZXJ2ZXIgdmVyc2lvbiBpcyAlLipzIgogbXNnc3RyICJWZXJzacOzbiBkZSBzZXJ2aWRvciBlcyAlLipzIgogCi0jOiBmZXRjaC1wYWNrLmM6OTg1CisjOiBmZXRjaC1wYWNrLmM6OTcwIGZldGNoLXBhY2suYzo5NzYgZmV0Y2gtcGFjay5jOjk3OSBmZXRjaC1wYWNrLmM6OTg1CisjOiBmZXRjaC1wYWNrLmM6OTg5IGZldGNoLXBhY2suYzo5OTMgZmV0Y2gtcGFjay5jOjk5NyBmZXRjaC1wYWNrLmM6MTAwMQorIzogZmV0Y2gtcGFjay5jOjEwMDUgZmV0Y2gtcGFjay5jOjEwMDkgZmV0Y2gtcGFjay5jOjEwMTMgZmV0Y2gtcGFjay5jOjEwMTcKKyM6IGZldGNoLXBhY2suYzoxMDIzIGZldGNoLXBhY2suYzoxMDI5IGZldGNoLXBhY2suYzoxMDM0IGZldGNoLXBhY2suYzoxMDM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyAlcyIKK21zZ3N0ciAiRWwgc2Vydmlkb3Igc29wb3J0YSAlcyIKKworIzogZmV0Y2gtcGFjay5jOjk3MgorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2xpZW50cyIKK21zZ3N0ciAiRWwgc2Vydmlkb3Igbm8gc29wb3J0YSBjbGllbnRlcyBzdXBlcmZpY2lhbGVzIgorCisjOiBmZXRjaC1wYWNrLmM6MTAzMgogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tc2hhbGxvdy1zaW5jZSIKIG1zZ3N0ciAiRWwgc2Vydmlkb3Igbm8gc29wb3J0YSAtLXNoYWxvdy1zaW5jZSIKIAotIzogZmV0Y2gtcGFjay5jOjk4OQorIzogZmV0Y2gtcGFjay5jOjEwMzcKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLXNoYWxsb3ctZXhjbHVkZSIKIG1zZ3N0ciAiRWwgc2Vydmlkb3Igbm8gc29wb3J0YSAtLXNoYWxvdy1leGNsdWRlIgogCi0jOiBmZXRjaC1wYWNrLmM6OTkxCisjOiBmZXRjaC1wYWNrLmM6MTA0MQogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tZGVlcGVuIgogbXNnc3RyICJFbCBzZXJ2aWRvciBubyBzb3BvcnRhIC0tZGVlcGVuIgogCi0jOiBmZXRjaC1wYWNrLmM6MTAwOAorIzogZmV0Y2gtcGFjay5jOjEwNTgKIG1zZ2lkICJubyBjb21tb24gY29tbWl0cyIKIG1zZ3N0ciAibm8gaGF5IGNvbW1pdHMgY29tdW5lcyIKIAotIzogZmV0Y2gtcGFjay5jOjEwMjAgZmV0Y2gtcGFjay5jOjE0MTgKKyM6IGZldGNoLXBhY2suYzoxMDcwIGZldGNoLXBhY2suYzoxNTM2CiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGZldGNoIGZhaWxlZC4iCiBtc2dzdHIgImdpdCBmZXRjaC1wYWNrOiBmZXRjaCBmYWxsw7MuIgogCi0jOiBmZXRjaC1wYWNrLmM6MTE1MworIzogZmV0Y2gtcGFjay5jOjEyMDkKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IHJlcXVlc3RzIgogbXNnc3RyICJFbCBzZXJ2aWRvciBubyBzb3BvcnRhIHBldGljaW9uZXMgc3VwZXJmaWNpYWxlcyIKIAotIzogZmV0Y2gtcGFjay5jOjExOTkKKyM6IGZldGNoLXBhY2suYzoxMjE2Cittc2dpZCAiU2VydmVyIHN1cHBvcnRzIGZpbHRlciIKK21zZ3N0ciAiRWwgc2Vydmlkb3Igc29wb3J0YSBmaWx0cm8iCisKKyM6IGZldGNoLXBhY2suYzoxMjM5Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHJlcXVlc3QgdG8gcmVtb3RlIgorbXNnc3RyICJubyBzZSBwdWVkZSBlc2NyaWJpciByZXF1ZXN0IGFsIHJlbW90byIKKworIzogZmV0Y2gtcGFjay5jOjEyNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcmVhZGluZyBzZWN0aW9uIGhlYWRlciAnJXMnIgogbXNnc3RyICJlcnJvciBsZXllbmRvIHNlY2Npw7NuIGhlYWRlciAnJXMnIgogCi0jOiBmZXRjaC1wYWNrLmM6MTIwNQorIzogZmV0Y2gtcGFjay5jOjEyNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgJyVzJywgcmVjZWl2ZWQgJyVzJyIKIG1zZ3N0ciAic2UgZXNwZXJhYmEgJyVzJywgc2UgcmVjaWJpw7MgJyVzJyIKIAotIzogZmV0Y2gtcGFjay5jOjEyNDQKKyM6IGZldGNoLXBhY2suYzoxMzAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgYWNrbm93bGVkZ21lbnQgbGluZTogJyVzJyIKLW1zZ3N0ciAibGluZWEgZGUgY29uZmlybWFjacOzbiBpbmVzcGVyYWRhOiAnJXMnIgorbXNnc3RyICJsw61uZWEgZGUgY29uZmlybWFjacOzbiBpbmVzcGVyYWRhOiAnJXMnIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI0OQorIzogZmV0Y2gtcGFjay5jOjEzMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBhY2tzOiAlZCIKIG1zZ3N0ciAiZXJyb3IgcHJvY2VzYW5kbyBhY2tzOiAlZCIKIAotIzogZmV0Y2gtcGFjay5jOjEyNTkKKyM6IGZldGNoLXBhY2suYzoxMzE4CiBtc2dpZCAiZXhwZWN0ZWQgcGFja2ZpbGUgdG8gYmUgc2VudCBhZnRlciAncmVhZHknIgogbXNnc3RyICJlc3BlcmUgcXVlIGVsIHBhY2tmaWxlIHNlYSBtYW5kYWRvIGx1ZWdvIGRlbCAnbGlzdG8nIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI2MQorIzogZmV0Y2gtcGFjay5jOjEzMjAKIG1zZ2lkICJleHBlY3RlZCBubyBvdGhlciBzZWN0aW9ucyB0byBiZSBzZW50IGFmdGVyIG5vICdyZWFkeSciCiBtc2dzdHIgImVzcGVyZSBxdWUgbmluZ3VuYSBvdHJhIHNlY2Npw7NuIHNlYSBlbnZpYWRhIGx1ZWdvIGRlbCAnbGlzdG8nIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI5OAorIzogZmV0Y2gtcGFjay5jOjEzNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBzaGFsbG93IGluZm86ICVkIgogbXNnc3RyICJlcnJvciBwcm9jZXNhbmRvIGluZm9ybWFjacOzbiBzdXBlcmZpY2lhbDogJWQiCiAKLSM6IGZldGNoLXBhY2suYzoxMzE0CisjOiBmZXRjaC1wYWNrLmM6MTQwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCB3YW50ZWQtcmVmLCBnb3QgJyVzJyIKIG1zZ3N0ciAic2UgZXNwZXJhYmEgd2FudGVkLXJlZiwgc2Ugb2J0dXZvICclcyciCiAKLSM6IGZldGNoLXBhY2suYzoxMzI0CisjOiBmZXRjaC1wYWNrLmM6MTQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIHdhbnRlZC1yZWY6ICclcyciCiBtc2dzdHIgIndhbnRlZC1yZWYgaW5lc3BlcmFkbzogJyVzJyIKIAotIzogZmV0Y2gtcGFjay5jOjEzMjgKKyM6IGZldGNoLXBhY2suYzoxNDE5CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHByb2Nlc3Npbmcgd2FudGVkIHJlZnM6ICVkIgogbXNnc3RyICJlcnJvciBwcm9jZXNhbmRvIHJlZnMgZGVzZWFkYXM6ICVkIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY0MgorIzogZmV0Y2gtcGFjay5jOjE3NjIKIG1zZ2lkICJubyBtYXRjaGluZyByZW1vdGUgaGVhZCIKIG1zZ3N0ciAibm8gY29uY3VlcmRhIGVsIGhlYWQgcmVtb3RvIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY2MCBidWlsdGluL2Nsb25lLmM6NjY0CisjOiBmZXRjaC1wYWNrLmM6MTc4NSBidWlsdGluL2Nsb25lLmM6Njg5CiBtc2dpZCAicmVtb3RlIGRpZCBub3Qgc2VuZCBhbGwgbmVjZXNzYXJ5IG9iamVjdHMiCiBtc2dzdHIgInJlbW90byBubyBtYW5kbyB0b2RvcyBsb3Mgb2JqZXRvcyBuZWNlc2FyaW9zIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY4NgorIzogZmV0Y2gtcGFjay5jOjE4MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCByZW1vdGUgcmVmICVzIgogbXNnc3RyICJubyBleGlzdGUgcmVmIHJlbW90YSAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjE2ODkKKyM6IGZldGNoLXBhY2suYzoxODE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBhbGxvdyByZXF1ZXN0IGZvciB1bmFkdmVydGlzZWQgb2JqZWN0ICVzIgogbXNnc3RyICJFbCBzZXJ2aWRvciBubyBwZXJtaXRlIHNvbGljaXR1ZGVzIGRlIG9iamV0b3MgaW5hZHZlcnRpZG9zICVzIgogCi0jOiBncGctaW50ZXJmYWNlLmM6MzE4CisjOiBncGctaW50ZXJmYWNlLmM6NDA4CiBtc2dpZCAiZ3BnIGZhaWxlZCB0byBzaWduIHRoZSBkYXRhIgogbXNnc3RyICJncGcgZmFsbMOzIGFsIGZpcm1hciBsYSBkYXRhIgogCi0jOiBncGctaW50ZXJmYWNlLmM6MzQ0CisjOiBncGctaW50ZXJmYWNlLmM6NDM0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZSIKIG1zZ3N0ciAibm8gc2UgcHVkbyBjcmVhciBhcmNoaXZvIHRlbXBvcmFsIgogCi0jOiBncGctaW50ZXJmYWNlLmM6MzQ3CisjOiBncGctaW50ZXJmYWNlLmM6NDM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB3cml0aW5nIGRldGFjaGVkIHNpZ25hdHVyZSB0byAnJXMnIgogbXNnc3RyICJmYWxsw7MgYWwgZXNjcmliaXIgbGEgZmlybWEgc2VwYXJhZGEgcGFyYSAnJXMnIgogCi0jOiBncmFwaC5jOjk3CisjOiBncmFwaC5jOjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yZSBpbnZhbGlkIGNvbG9yICclLipzJyBpbiBsb2cuZ3JhcGhDb2xvcnMiCiBtc2dzdHIgImlnbm9yYSBjb2xvciBpbnbDoWxpZG8gJyUuKnMnIGVuIGxvZy5ncmFwaENvbG9ycyIKIAotIzogZ3JlcC5jOjIxMTMKKyM6IGdyZXAuYzo2NjgKK21zZ2lkICIiCisiZ2l2ZW4gcGF0dGVybiBjb250YWlucyBOVUxMIGJ5dGUgKHZpYSAtZiA8ZmlsZT4pLiBUaGlzIGlzIG9ubHkgc3VwcG9ydGVkICIKKyJ3aXRoIC1QIHVuZGVyIFBDUkUgdjIiCittc2dzdHIgIiIKKyJlbCBwYXRyw7NuIHByb3Zpc3RvIGNvbnRpZW5lIGJ5dGVzIE5VTEwgKHZpYSAtZiA8YXJjaGl2bz4pLiBFc3RvIHNvbG8gZXMgIgorInNvcG9ydGFkbyBjb24gLVAgYmFqbyBQQ1JFIHYyIgorCisjOiBncmVwLmM6MjEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiB1bmFibGUgdG8gcmVhZCAlcyIKIG1zZ3N0ciAiJyVzJzogbm8gZXMgcG9zaWJsZSBsZWVyICVzIgogCi0jOiBncmVwLmM6MjEzMCBzZXR1cC5jOjE2NCBidWlsdGluL2Nsb25lLmM6NDEwIGJ1aWx0aW4vZGlmZi5jOjgxCi0jOiBidWlsdGluL3JtLmM6MTM0CisjOiBncmVwLmM6MjE0NSBzZXR1cC5jOjE2NiBidWlsdGluL2Nsb25lLmM6NDExIGJ1aWx0aW4vZGlmZi5jOjgyCisjOiBidWlsdGluL3JtLmM6MTM1CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBzdGF0ICclcyciCiBtc2dzdHIgImZhbGzDsyBhbCBtYXJjYXIgJyVzJyIKIAotIzogZ3JlcC5jOjIxNDEKKyM6IGdyZXAuYzoyMTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IHNob3J0IHJlYWQiCiBtc2dzdHIgIiclcyc6IGxlY3R1cmEgY29ydGEiCkBAIC0yNjgxLDgxICs0MTAwLDgxIEBACiBtc2dzdHIgIkNvbWFuZG9zIGRlIGJham8gbml2ZWwgLyBJbnRlcnJvZ2Fkb3JlcyIKIAogIzogaGVscC5jOjM3Ci1tc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gU3luY2hpbmcgUmVwb3NpdG9yaWVzIgorbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIFN5bmNpbmcgUmVwb3NpdG9yaWVzIgogbXNnc3RyICJDb21hbmRvcyBkZSBiYWpvIG5pdmVsIC8gU2luY3Jvbml6YWNpw7NuIGRlIHJlcG9zaXRvcmlvcyIKIAogIzogaGVscC5jOjM4CiBtc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gSW50ZXJuYWwgSGVscGVycyIKIG1zZ3N0ciAiQ29tYW5kb3MgZGUgYmFqbyBuaXZlbCAvIEF1eGlsaWFyZXMgaW50ZXJub3MiCiAKLSM6IGhlbHAuYzoyOTYKKyM6IGhlbHAuYzoyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYXZhaWxhYmxlIGdpdCBjb21tYW5kcyBpbiAnJXMnIgogbXNnc3RyICJjb21hbmRvcyBkaXNwb25pYmxlcyBkZSBnaXQgZW4gJyVzJyIKIAotIzogaGVscC5jOjMwMworIzogaGVscC5jOjMwNQogbXNnaWQgImdpdCBjb21tYW5kcyBhdmFpbGFibGUgZnJvbSBlbHNld2hlcmUgb24geW91ciAkUEFUSCIKIG1zZ3N0ciAiY29tYW5kb3MgZGlzcG9uaWJsZXMgZGUgZ2l0IGRlc2RlIG90cm8gbHVnYXIgZW4gdHUgJFBBVEgiCiAKLSM6IGhlbHAuYzozMTIKKyM6IGhlbHAuYzozMTQKIG1zZ2lkICJUaGVzZSBhcmUgY29tbW9uIEdpdCBjb21tYW5kcyB1c2VkIGluIHZhcmlvdXMgc2l0dWF0aW9uczoiCiBtc2dzdHIgIkVzdG9zIHNvbiBjb21hbmRvcyBjb211bmVzIGRlIEdpdCB1c2Fkb3MgZW4gdmFyaWFzIHNpdHVhY2lvbmVzOiIKIAotIzogaGVscC5jOjM2MSBnaXQuYzo5MAorIzogaGVscC5jOjM2MyBnaXQuYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnN1cHBvcnRlZCBjb21tYW5kIGxpc3RpbmcgdHlwZSAnJXMnIgogbXNnc3RyICJjb21hbmRvIGRlIGxpc3RhZG8gZGUgdGlwb3Mgbm8gc29wb3J0YWRvICclcyciCiAKLSM6IGhlbHAuYzo0MDgKKyM6IGhlbHAuYzo0MDMKIG1zZ2lkICJUaGUgY29tbW9uIEdpdCBndWlkZXMgYXJlOiIKIG1zZ3N0ciAiTGFzIGd1w61hcyBjb211bmVzIGRlIEdpdCBzb246IgogCi0jOiBoZWxwLmM6NTE3CisjOiBoZWxwLmM6NTEyCiBtc2dpZCAiU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIHRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIgogbXNnc3RyICJWZWEgJ2dpdCBoZWxwIDxjb21hbmRvPicgcGFyYSBsZWVyIHNvYnJlIGxvcyBzdWJjb21hbmRvcyBlc3BlY8OtZmljb3MiCiAKLSM6IGhlbHAuYzo1MjIKKyM6IGhlbHAuYzo1MTcKIG1zZ2lkICJFeHRlcm5hbCBjb21tYW5kcyIKIG1zZ3N0ciAiQ29tYW5kb3MgZXh0ZXJub3MiCiAKLSM6IGhlbHAuYzo1MzAKKyM6IGhlbHAuYzo1MzIKIG1zZ2lkICJDb21tYW5kIGFsaWFzZXMiCiBtc2dzdHIgIkFsaWFzZXMgZGUgY29tYW5kbyIKIAotIzogaGVscC5jOjU5NAorIzogaGVscC5jOjU5NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBhcHBlYXJzIHRvIGJlIGEgZ2l0IGNvbW1hbmQsIGJ1dCB3ZSB3ZXJlIG5vdFxuIgogImFibGUgdG8gZXhlY3V0ZSBpdC4gTWF5YmUgZ2l0LSVzIGlzIGJyb2tlbj8iCiBtc2dzdHIgIiIKICInJXMnIHBhcmVjZSBzZXIgdW4gY29tYW5kbyBkZSBnaXQsIHBlcm8gbm8gaGVtb3NcbiIKLSJwb2RpZG8gZWplY3V0YXJsby4gVGFsIHZleiBnaXQtJXMgc2UgaGEgcm90bz8iCisicG9kaWRvIGVqZWN1dGFybG8uIMK/VGFsIHZleiBnaXQtJXMgc2UgaGEgcm90bz8iCiAKLSM6IGhlbHAuYzo2NTMKKyM6IGhlbHAuYzo2NTUKIG1zZ2lkICJVaCBvaC4gWW91ciBzeXN0ZW0gcmVwb3J0cyBubyBHaXQgY29tbWFuZHMgYXQgYWxsLiIKIG1zZ3N0ciAiT2ggb2guIFR1IHNpc3RlbWEgbm8gcmVwb3J0YSBuaW5nw7puIGNvbWFuZG8gZGUgR2l0LiIKIAotIzogaGVscC5jOjY3NQorIzogaGVscC5jOjY3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJXQVJOSU5HOiBZb3UgY2FsbGVkIGEgR2l0IGNvbW1hbmQgbmFtZWQgJyVzJywgd2hpY2ggZG9lcyBub3QgZXhpc3QuIgogbXNnc3RyICJQRUxJR1JPOiBIYXMgbGxhbWFkbyBhIHVuIGNvbWFuZG8gZGUgR2l0ICclcycsIGVsIGN1YWwgbm8gZXhpc3RlLiIKIAotIzogaGVscC5jOjY4MAorIzogaGVscC5jOjY4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb250aW51aW5nIHVuZGVyIHRoZSBhc3N1bXB0aW9uIHRoYXQgeW91IG1lYW50ICclcycuIgogbXNnc3RyICJDb250aW51YW5kbyBhc3VtaWVuZG8gcXVlIHF1aXNpc3RlIGRlY2lyICclcycuIgogCi0jOiBoZWxwLmM6Njg1CisjOiBoZWxwLmM6Njg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbnRpbnVpbmcgaW4gJTAuMWYgc2Vjb25kcywgYXNzdW1pbmcgdGhhdCB5b3UgbWVhbnQgJyVzJy4iCiBtc2dzdHIgIkNvbnRpbnVhbmRvIGVuICUwLjFmIHNlZ3VuZG9zLCBhc3VtaWVuZG8gcXVlIHR1IGRpamlzdGUgJyVzJy4iCiAKLSM6IGhlbHAuYzo2OTMKKyM6IGhlbHAuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0OiAnJXMnIGlzIG5vdCBhIGdpdCBjb21tYW5kLiBTZWUgJ2dpdCAtLWhlbHAnLiIKIG1zZ3N0ciAiZ2l0OiAnJXMnbm8gZXMgdW4gY29tYW5kbyBkZSBnaXQuIE1pcmEgJ2dpdCAtLWhlbHAnLiIKIAotIzogaGVscC5jOjY5NworIzogaGVscC5jOjY5OQogbXNnaWQgIiIKICJcbiIKICJUaGUgbW9zdCBzaW1pbGFyIGNvbW1hbmQgaXMiCkBAIC0yNzY0LDIxICs0MTgzLDIxIEBACiAiVGhlIG1vc3Qgc2ltaWxhciBjb21tYW5kcyBhcmUiCiBtc2dzdHJbMF0gIiIKICJcbiIKLSJFbCBjb21hbmRvIG1hcyBzaW1pbGFyIGVzIgorIkVsIGNvbWFuZG8gbcOhcyBzaW1pbGFyIGVzIgogbXNnc3RyWzFdICIiCiAiXG4iCi0iTG9zIGNvbWFuZG9zIG1hcyBzaW1pbGFyZXMgc29uIgorIkxvcyBjb21hbmRvcyBtw6FzIHNpbWlsYXJlcyBzb24iCiAKLSM6IGhlbHAuYzo3MTIKKyM6IGhlbHAuYzo3MTQKIG1zZ2lkICJnaXQgdmVyc2lvbiBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IHZlcnNpw7NuIFs8b3BjaW9uZXM+XSIKIAotIzogaGVscC5jOjc4MAorIzogaGVscC5jOjc4MwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogJXMgLSAlcyIKIG1zZ3N0ciAiJXM6ICVzIC0gJXMiCiAKLSM6IGhlbHAuYzo3ODQKKyM6IGhlbHAuYzo3ODcKIG1zZ2lkICIiCiAiXG4iCiAiRGlkIHlvdSBtZWFuIHRoaXM/IgpAQCAtMjc5Miw3ICs0MjExLDcgQEAKICJcbiIKICLCv1F1aXNpc3RlIGRlY2lyIGFsZ3VubyBkZSBlc3Rvcz8iCiAKLSM6IGlkZW50LmM6MzQ1CisjOiBpZGVudC5jOjM0OQogbXNnaWQgIiIKICJcbiIKICIqKiogUGxlYXNlIHRlbGwgbWUgd2hvIHlvdSBhcmUuXG4iCkBAIC0yODE4LDUwICs0MjM3LDg5IEBACiAiT21pdGUgLS1nbG9iYWwgcGFyYSBjb25maWd1cmFyIHR1IGlkZW50aWRhZCBzb2xvIGVuIGVzdGUgcmVwb3NpdG9yaW8uXG4iCiAiXG4iCiAKLSM6IGlkZW50LmM6MzY5CisjOiBpZGVudC5jOjM3OQogbXNnaWQgIm5vIGVtYWlsIHdhcyBnaXZlbiBhbmQgYXV0by1kZXRlY3Rpb24gaXMgZGlzYWJsZWQiCiBtc2dzdHIgIm5vIHNlIGVudHJlZ28gbmluZ8O6biBlbWFpbCB5IGxhIGRldGVjY2nDs24gYXV0b23DoXRpY2EgZXN0w6EgZGVzYWN0aXZhZGEiCiAKLSM6IGlkZW50LmM6Mzc0CisjOiBpZGVudC5jOjM4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYXV0by1kZXRlY3QgZW1haWwgYWRkcmVzcyAoZ290ICclcycpIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGF1dG8tZGV0ZWN0YXIgbGEgZGlyZWNjacOzbiBkZSBjb3JyZW8gKHNlIG9idHV2byAnJXMnKSIKIAotIzogaWRlbnQuYzozODQKKyM6IGlkZW50LmM6NDAxCiBtc2dpZCAibm8gbmFtZSB3YXMgZ2l2ZW4gYW5kIGF1dG8tZGV0ZWN0aW9uIGlzIGRpc2FibGVkIgogbXNnc3RyICJubyBzZSBlbnRyZWdvIG5pbmfDum4gbm9tYnJlIHkgbGEgZGV0ZWNjacOzbiBhdXRvbcOhdGljYSBlc3TDoSBkZXNhY3RpdmFkYSIKIAotIzogaWRlbnQuYzozOTAKKyM6IGlkZW50LmM6NDA3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhdXRvLWRldGVjdCBuYW1lIChnb3QgJyVzJykiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgYXV0by1kZXRlY3RhciBlbCBub21icmUgKHNlIG9idHV2byAnJXMnKSIKIAotIzogaWRlbnQuYzozOTgKKyM6IGlkZW50LmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgImVtcHR5IGlkZW50IG5hbWUgKGZvciA8JXM+KSBub3QgYWxsb3dlZCIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgdGVuZXIgdW4gbm9tYnJlIHZhY8OtbyAocGFyYSA8JXM+KSIKIAotIzogaWRlbnQuYzo0MDQKKyM6IGlkZW50LmM6NDIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5hbWUgY29uc2lzdHMgb25seSBvZiBkaXNhbGxvd2VkIGNoYXJhY3RlcnM6ICVzIgogbXNnc3RyICJlbCBub21icmUgY29uc2lzdGUgc29sbyBkZSBjYXJhY3RlcmVzIG5vIHBlcm1pdGlkb3M6ICVzIgogCi0jOiBpZGVudC5jOjQxOSBidWlsdGluL2NvbW1pdC5jOjYwNgorIzogaWRlbnQuYzo0MzYgYnVpbHRpbi9jb21taXQuYzo2MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBkYXRlIGZvcm1hdDogJXMiCiBtc2dzdHIgImZvcm1hdG8gZGUgZmVjaGEgaW52w6FsaWRvOiAlcyIKIAotIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MzUKLW1zZ2lkICJtdWx0aXBsZSBmaWx0ZXItc3BlY3MgY2Fubm90IGJlIGNvbWJpbmVkIgotbXNnc3RyICJubyBzZSBwdWVkZW4gY29tYmluYXIgbcO6bHRpcGxlcyB0aXBvcyBkZSBlc3BlY2lmaWNhY2lvbmVzIGRlIGZpbHRybyIKKyM6IGxpc3Qtb2JqZWN0cy5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICJlbnRyeSAnJXMnIGluIHRyZWUgJXMgaGFzIHRyZWUgbW9kZSwgYnV0IGlzIG5vdCBhIHRyZWUiCittc2dzdHIgImVudHJhZGEgJyVzJyBlbiDDoXJib2wgJXMgdGllbmUgbW9kbyDDoXJib2wsIHBlcm8gbm8gZXMgdW5vIgorCisjOiBsaXN0LW9iamVjdHMuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW50cnkgJyVzJyBpbiB0cmVlICVzIGhhcyBibG9iIG1vZGUsIGJ1dCBpcyBub3QgYSBibG9iIgorbXNnc3RyICJlbnRyYWRhICclcycgZW4gw6FyYm9sICVzIHRpZW5lIG1vZG8gYmxvYiwgcGVybyBubyBlcyB1bm8iCisKKyM6IGxpc3Qtb2JqZWN0cy5jOjM3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbG9hZCByb290IHRyZWUgZm9yIGNvbW1pdCAlcyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgY2FyZ2FyIMOhcmJvbCByYcOteiBwYXJhIGNvbW1pdCAlcyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIHNwYXJzZSBibG9iIGluICclcyciCittc2dzdHIgIm5vIGVzIHBvc2libGUgYWNjZWRlciBhbCBibG9iIGVuICclcyciCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXIuYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIHNwYXJzZSBmaWx0ZXIgZGF0YSBpbiAlcyIKK21zZ3N0ciAiaW5jYXBheiBkZSBhbmFsaXphciBmaWx0cm8gZGUgZGF0YSBlbiAlcyIKIAogIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6NTgKLW1zZ2lkICJvbmx5ICd0cmVlOjAnIGlzIHN1cHBvcnRlZCIKLW1zZ3N0ciAic29sbyAndHJlZTowJyBlcyBzb3BvcnRhZG8iCittc2dpZCAiZXhwZWN0ZWQgJ3RyZWU6PGRlcHRoPiciCittc2dzdHIgInNlIGVzcGVyYWJhICd0cmVlOjxkZXB0aD4nIgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxMzcKLW1zZ2lkICJjYW5ub3QgY2hhbmdlIHBhcnRpYWwgY2xvbmUgcHJvbWlzb3IgcmVtb3RlIgotbXNnc3RyICJubyBzZSBwdWVkZSBjYW1iaWFyIHVuIGNsb24gcGFyY2lhbCByZW1vdG8gcHJvbWlzb3IiCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo3MworbXNnaWQgInNwYXJzZTpwYXRoIGZpbHRlcnMgc3VwcG9ydCBoYXMgYmVlbiBkcm9wcGVkIgorbXNnc3RyICJzb3BvcnRlIHBhcmEgZmlsdHJvcyBzcGFyc2U6cGF0aCBoYSBzaWRvIGRpc2NvbnRpbnVhZG8iCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgZmlsdGVyLXNwZWMgJyVzJyIKK21zZ3N0ciAiZmlsdHJvIC1zcGVjIGludsOhbGlkbyAnJXMnIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVzdCBlc2NhcGUgY2hhciBpbiBzdWItZmlsdGVyLXNwZWM6ICclYyciCittc2dzdHIgInRpZW5lcyBxdWUgZXNjYXBhciBlbCBjYXJhY3RlciBlbiBzdWItZmlsdGVyLXNwZWM6ICclYyciCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjE0NAorbXNnaWQgImV4cGVjdGVkIHNvbWV0aGluZyBhZnRlciBjb21iaW5lOiIKK21zZ3N0ciAic2UgZXNwZXJhIGFsZ28gbHVlZ28gZGUgY29tYmluZToiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjIyNgorbXNnaWQgIm11bHRpcGxlIGZpbHRlci1zcGVjcyBjYW5ub3QgYmUgY29tYmluZWQiCittc2dzdHIgIm5vIHNlIHB1ZWRlbiBjb21iaW5hciBtw7psdGlwbGVzIHRpcG9zIGRlIGVzcGVjaWZpY2FjaW9uZXMgZGUgZmlsdHJvIgogCiAjOiBsb2NrZmlsZS5jOjE1MQogIywgYy1mb3JtYXQKQEAgLTI4OTIsMTE0ICs0MzUwLDExMSBAQAogbXNnaWQgImZhaWxlZCB0byByZWFkIHRoZSBjYWNoZSIKIG1zZ3N0ciAiZmFsbMOzIGFsIGxlZXIgbGEgY2FjaGUiCiAKLSM6IG1lcmdlLmM6MTA3IHJlcmVyZS5jOjcyMCBidWlsdGluL2FtLmM6MTg5OSBidWlsdGluL2FtLmM6MTkzMwotIzogYnVpbHRpbi9jaGVja291dC5jOjM4NyBidWlsdGluL2NoZWNrb3V0LmM6NzA4IGJ1aWx0aW4vY2xvbmUuYzo3NjQKKyM6IG1lcmdlLmM6MTA3IHJlcmVyZS5jOjcyMCBidWlsdGluL2FtLmM6MTg3OSBidWlsdGluL2FtLmM6MTkxMworIzogYnVpbHRpbi9jaGVja291dC5jOjU0MSBidWlsdGluL2NoZWNrb3V0LmM6ODAwIGJ1aWx0aW4vY2xvbmUuYzo4MTAKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNjUKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgZXNjcmliaXIgZWwgYXJjaGl2byDDrW5kaWNlIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NgogbXNnaWQgIihiYWQgY29tbWl0KVxuIgogbXNnc3RyICIoY29tbWl0IGVycsOzbmVvKVxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJhZGRfY2FjaGVpbmZvIGZhaWxlZCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCiBtc2dzdHIgImFkZF9jYWNoZWluZm8gZmFsbMOzIHBhcmEgbGEgcnV0YSAnJXMnOyBhYm9ydGFuZG8gZnVzacOzbi4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1MworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mzg4CiAjLCBjLWZvcm1hdAogbXNnaWQgImFkZF9jYWNoZWluZm8gZmFpbGVkIHRvIHJlZnJlc2ggZm9yIHBhdGggJyVzJzsgbWVyZ2UgYWJvcnRpbmcuIgogbXNnc3RyICJhZGRfY2FjaGVpbmZvIGZhbGzDsyBwYXJhIHJlZnJlc2NhciBsYSBydXRhICclcyc7IGFib3J0YW5kbyBmdXNpw7NuLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6NDM1Ci1tc2dpZCAiZXJyb3IgYnVpbGRpbmcgdHJlZXMiCi1tc2dzdHIgImVycm9yIGNvbnN0cnV5ZW5kbyDDoXJib2xlcyIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTA2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo4NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwYXRoICclcyclcyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGNyZWFyIGxhIHJ1dGEgJyVzJyVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5MTcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyAlcyB0byBtYWtlIHJvb20gZm9yIHN1YmRpcmVjdG9yeVxuIgogbXNnc3RyICJSZW1vdmllbmRvICVzIHBhcmEgaGFjZXIgZXNwYWNpbyBwYXJhIHVuIHN1YmRpcmVjdG9yaW9cbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTMxIG1lcmdlLXJlY3Vyc2l2ZS5jOjk1MAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6ODk5IG1lcmdlLXJlY3Vyc2l2ZS5jOjkxOAogbXNnaWQgIjogcGVyaGFwcyBhIEQvRiBjb25mbGljdD8iCi1tc2dzdHIgIjogdGFsIHZleiB1biBjb25mbGljdG8gRC9GPyIKK21zZ3N0ciAiOiDCv3RhbCB2ZXogdW4gY29uZmxpY3RvIEQvRj8iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk0MAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJyVzJyIKIG1zZ3N0ciAicmVodXNhbmRvIHBlcmRlciBlbCBhcmNoaXZvIHJhc3RyZWFkbyBlbiAnJXMnIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5ODIgYnVpbHRpbi9jYXQtZmlsZS5jOjM5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NDkgYnVpbHRpbi9jYXQtZmlsZS5jOjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCAlcyAnJXMnIgogbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyIGVsIG9iamV0byAlcyAnJXMnIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5ODQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJibG9iIGV4cGVjdGVkIGZvciAlcyAnJXMnIgogbXNnc3RyICJzZSBlc3BlcmFiYSBibG9iIHBhcmEgJXMgJyVzJyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTAwOAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyc6ICVzIgogbXNnc3RyICJmYWxsw7MgYWwgYWJyaXIgJyVzJzogJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEwMTkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3ltbGluayAnJXMnOiAlcyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGNyZWFyIGVsIGVubGFjZSBzaW1iw7NsaWNvICclcyc6ICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZG8gbm90IGtub3cgd2hhdCB0byBkbyB3aXRoICUwNm8gJXMgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcXVlIGhhY2VyIGNvbiAlMDZvICVzICclcyciCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjExOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobm90IGNoZWNrZWQgb3V0KSIKIG1zZ3N0ciAiRmFsbMOzIGFsIGZ1c2lvbmFyIGVsIHN1Ym3Ds2R1bG8gJXMgKG5vIHJldmlzYWRvKSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxOQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTE5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChjb21taXRzIG5vdCBwcmVzZW50KSIKIG1zZ3N0ciAiRmFsbMOzIGFsIGZ1c2lvbmFyIGVsIHN1Ym3Ds2R1bG8gJXMgKGNvbW1pdHMgbm8gcHJlc2VudGVzKSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIyNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChjb21taXRzIGRvbid0IGZvbGxvdyBtZXJnZS1iYXNlKSIKIG1zZ3N0ciAiRmFsbMOzIGVsIGZ1c2lvbmFyIHN1Ym3Ds2R1bG8gJXMgKGNvbW1pdHMgbm8gc2lndWVuIGxhIGZ1c2nDs24gYmFzZSkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMzQgbWVyZ2UtcmVjdXJzaXZlLmM6MTI0NgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxMyBtZXJnZS1yZWN1cnNpdmUuYzoxMjI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMgdG8gdGhlIGZvbGxvd2luZyBjb21taXQ6IgogbXNnc3RyICJIYWNpZW5kbyBmYXN0LWZvcndhcmQgYSBzdWJtw7NkdWxvICVzIHBhcmEgZWwgc2lndWllbnRlIGNvbW1pdDoiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMzcgbWVyZ2UtcmVjdXJzaXZlLmM6MTI0OQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxNiBtZXJnZS1yZWN1cnNpdmUuYzoxMjI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIkF2YW5jZSByw6FwaWRvIGVuIHN1Ym3Ds2R1bG8gJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzEKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobWVyZ2UgZm9sbG93aW5nIGNvbW1pdHMgbm90IGZvdW5kKSIKIG1zZ3N0ciAiIgogIkZhbGzDsyBhbCBmdXNpb25hciBzdWJtw7NkdWxvICVzIChsb3Mgc2lndWVudGVzIGNvbW1pdHMgbm8gZnVlcm9uIGVuY29udHJhZG9zKSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChub3QgZmFzdC1mb3J3YXJkKSIKIG1zZ3N0ciAiRmFsbMOzIGFsIGZ1c2lvbmFyIGVsIHN1Ym3Ds2R1bG8gJXMgKG5vIGVzIHBvc2libGUgYXZhbmNlIHLDoXBpZG8pIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjc2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU2CiBtc2dpZCAiRm91bmQgYSBwb3NzaWJsZSBtZXJnZSByZXNvbHV0aW9uIGZvciB0aGUgc3VibW9kdWxlOlxuIgogbXNnc3RyICJTZSBlbmNvbnRyw7MgdW5hIHBvc2libGUgc29sdWNpw7NuIGRlIGZ1c2nDs24gcGFyYSBlbCBzdWJtw7NkdWxvOlxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjc5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJZiB0aGlzIGlzIGNvcnJlY3Qgc2ltcGx5IGFkZCBpdCB0byB0aGUgaW5kZXggZm9yIGV4YW1wbGVcbiIKQEAgLTMwMTYsMzMgKzQ0NzEsMzMgQEAKICJcbiIKICJlbCBjdWFsIGFjZXB0YXLDoSBlc3RhIHN1Z2VyZW5jaWEuXG4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyODgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobXVsdGlwbGUgbWVyZ2VzIGZvdW5kKSIKIG1zZ3N0ciAiRmFsbMOzIGFsIGZ1c2lvbmFyIGVsIHN1Ym3Ds2R1bG8gJXMgKGZ1c2lvbmVzIG3Dumx0aXBsZXMgZW5jb250cmFkYXMpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzU4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzQxCiBtc2dpZCAiRmFpbGVkIHRvIGV4ZWN1dGUgaW50ZXJuYWwgbWVyZ2UiCiBtc2dzdHIgIkZhbGzDsyBhbCBlamVjdXRhciBsYSBmdXNpw7NuIGludGVybmEiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNjMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGFkZCAlcyB0byBkYXRhYmFzZSIKIG1zZ3N0ciAiTm8gZXMgcG9zaWJsZSBhZ3JlZ2FyICVzIGEgbGEgYmFzZSBkZSBkYXRvcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM5NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvLW1lcmdpbmcgJXMiCiBtc2dzdHIgIkF1dG8tZnVzaW9uYW5kbyAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQxNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJFcnJvcjogUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlczsgd3JpdGluZyB0byAlcyBpbnN0ZWFkLiIKIG1zZ3N0ciAiIgogIkVycm9yOiBSZWh1c2FuZG8gcGVyZGVyIGVsIGFyY2hpdm8gbm8gcmFzdHJlYWRvIGVuICVzOyBlc2NyaWJpw6luZG9sbyBhICVzIGVuICIKICJjYW1iaW8uIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDgzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgbGVmdCAiCkBAIC0zMDUxLDcgKzQ1MDYsNyBAQAogIkNPTkZMSUNUTyAoJXMvYm9ycmFyKTogJXMgYm9ycmFkbyBlbiAlcyB5ICVzIGVuICVzLiBGYWx0YSB2ZXJzacOzbiAlcyBkZSAlcyAiCiAiZW4gZWwgw6FyYm9sLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ4OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ3OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIHRvICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzICIKQEAgLTMwNjAsNyArNDUxNSw3IEBACiAiQ09ORkxJQ1RPICglcy9ib3JyYXIpOiAlcyBib3JyYWRvIGVuICVzIHkgJXMgcGFyYSAlcyBlbiAlcy4gVmVyc2nDs24gJXMgZGUgJXMgIgogInBlcm1hbmVjZSBlbiBlbCDDoXJib2wuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDk1CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgbGVmdCAiCkBAIC0zMDY5LDcgKzQ1MjQsNyBAQAogIkNPTkZMSUNUTyAoJXMvZWxpbWluYXIpOiAlcyBlbGltaW5hZG8gZW4gJXMgeSAlcyBlbiAlcy4gVmVyc2nDs24gJXMgZGUgJXMgIgogImRlamFkYSBlbiBlbCDDoXJib2wsIGVuICVzLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUwMAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ5MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIHRvICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzICIKQEAgLTMwNzgsMzIgKzQ1MzMsNDQgQEAKICJDT05GTElDVE8gKCVzL2JvcnJhcik6ICVzIGJvcnJhZG8gZW4gJXMgeSAlcyBwYXJhICVzIGVuICVzLiBWZXJzacOzbiAlcyBkZSAlcyAiCiAicGVybWFuZWNlIGVuIGVsIMOhcmJvbCBlbiAlcy4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MzQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MjYKIG1zZ2lkICJyZW5hbWUiCiBtc2dzdHIgInJlbm9tYnJhciIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUzNAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUyNgogbXNnaWQgInJlbmFtZWQiCiBtc2dzdHIgInJlbm9tYnJhZG8iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1ODggbWVyZ2UtcmVjdXJzaXZlLmM6MTczNyBtZXJnZS1yZWN1cnNpdmUuYzoyMzY5Ci0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMTI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTc3IG1lcmdlLXJlY3Vyc2l2ZS5jOjI0NzIgbWVyZ2UtcmVjdXJzaXZlLmM6MzExNwogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgJXMiCiBtc2dzdHIgIlJlaHVzYW5kbyBwZXJkZXIgZWwgYXJjaGl2byBzdWNpbyBlbiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTYwMgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTU4NworIywgYy1mb3JtYXQKK21zZ2lkICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzLCBldmVuIHRob3VnaCBpdCdzIGluIHRoZSB3YXkuIgorbXNnc3RyICIiCisiUmVodXNhbmRvIHBlcmRlciBlbCBhcmNoaXZvIG5vIHJhc3RyZWFkbyBlbiAlcywgaW5jbHVzbyBhdW5xdWUgc2UgZXN0w6EgIgorImludGVycG9uaWVuZG8uIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUIChyZW5hbWUvYWRkKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gIEFkZGVkICVzIGluICVzIgorbXNnc3RyICIiCisiQ09ORkxJQ1RPIChyZW5vbWJyYXIvYWdyZWdhcik6IFJlbm9tYnJhciAlcy0+JXMgZW4gJXMuICAlcyBhZ3JlZ2FkbyBlbiAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTY3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBhIGRpcmVjdG9yeSBpbiAlcyBhZGRpbmcgYXMgJXMgaW5zdGVhZCIKIG1zZ3N0ciAiJXMgZXMgdW4gZGlyZWN0b3JpbyBlbiAlcyBhZ3JlZ2FuZG8gY29tbyAlcyBtw6FzIGJpZW4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MDcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlczsgYWRkaW5nIGFzICVzIGluc3RlYWQiCiBtc2dzdHIgIiIKICJSZWh1c2FuZG8gcGVyZGVyIGVsIGFyY2hpdm8gbm8gcmFzdHJlYWRvIGVuICVzOyBhZ3JlZ8OhbmRvbG8gY29tbyAlcyBlbiBjYW1iaW8iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MzMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIFwiJXNcIi0+XCIlc1wiIGluIGJyYW5jaCBcIiVzXCIgcmVuYW1lIFwiJXMiCkBAIC0zMTEyLDMwICs0NTc5LDE4IEBACiAiQ09ORkxJQ1RPIChyZW5vbWJyYXIvcmVub21icmFyKTogUmVub21icmFyIFwiJXNcIi0+XCIlc1wiIGVuIGxhIHJhbWEgXCIlc1wiICIKICJyZW5vbWJyYXIgXCIlc1wiLT5cIiVzXCIgZW4gXCIlc1wiJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MzgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MTMKIG1zZ2lkICIgKGxlZnQgdW5yZXNvbHZlZCkiCiBtc2dzdHIgIiAoZGVqYWRvIHNpbiByZXNvbHZlcikiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2OTkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiBSZW5hbWUgJXMtPiVzIGluICVzLiBSZW5hbWUgJXMtPiVzIGluICVzIgogbXNnc3RyICIiCiAiQ09ORkxJQ1RPIChyZW5vbWJyYXIvcmVub21icmFyKTogUmVub21icmFyICVzLT4lcyBlbiAlcy4gUmVub21icmFyICVzLT4lcyBlbiAiCiAiJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MzQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiUmVuYW1pbmcgJXMgdG8gJXMgYW5kICVzIHRvICVzIGluc3RlYWQiCi1tc2dzdHIgIlJlbm9tYnJhbmRvICVzIGEgJXMgeSAlcyBhICVzIG3DoXMgYmllbiIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTc0NgotIywgYy1mb3JtYXQKLW1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzLCBldmVuIHRob3VnaCBpdCdzIGluIHRoZSB3YXkuIgotbXNnc3RyICIiCi0iUmVodXNhbmRvIHBlcmRlciBlbCBhcmNoaXZvIG5vIHJhc3RyZWFkbyBlbiAlcywgaW5jbHVzbyBhdW5xdWUgc2UgZXN0w6EgIgotImludGVycG9uaWVuZG8uIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxOTUyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoZGlyZWN0b3J5IHJlbmFtZSBzcGxpdCk6IFVuY2xlYXIgd2hlcmUgdG8gcGxhY2UgJXMgYmVjYXVzZSAiCkBAIC0zMTQ2LDcgKzQ2MDEsNyBAQAogImNvbG9jYXIgJXMgcG9ycXVlIGVsIGRpcmVjdG9yaW8gJXMgZnVlIHJlbm9tYnJhZG8gYSBvdHJvcyBtw7psdGlwbGVzICIKICJkaXJlY3Rvcmlvcywgc2luIG5pbmfDum4gcXVlIGNvbnRlbmdhIGxhIG1heW9yw61hIGRlIGFyY2hpdm9zLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTk4NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjA4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKGltcGxpY2l0IGRpciByZW5hbWUpOiBFeGlzdGluZyBmaWxlL2RpciBhdCAlcyBpbiB0aGUgd2F5IG9mICIKQEAgLTMxNTYsNyArNDYxMSw3IEBACiAiZXhpc3RlbnRlIGVuICVzIHNlIGludGVycG9uZSBjb24gZWwgY2FtYmlvIGRlIG5vbWJyZXMgaW1wbMOtY2l0bywgcG9uaWVuZG8gIgogImxhKHMpIHNpZ3VpZW50ZShzKSBydXRhKHMpIGFxdcOtOiAlcy4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5OTQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogQ2Fubm90IG1hcCBtb3JlIHRoYW4gb25lIHBhdGggdG8gJXM7ICIKQEAgLTMxNjUsNyArNDYyMCw3IEBACiAiQ09ORkxJQ1RPIChjYW1iaW8gZGUgbm9tYnJlIGltcGzDrWNpdG8pOiBObyBzZSBwdWVkZSBtYXBlYXIgbcOhcyBkZSB1bmEgcnV0YSAiCiAicGFyYSAlczsgY2FtYmlvIGRlIG5vbWJyZSBpbXBsw61jaXRvIGludGVudMOzIHBvbmVyIGVzdGFzIHJ1dGFzOiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjA4NgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjE5MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiBSZW5hbWUgZGlyZWN0b3J5ICVzLT4lcyBpbiAlcy4gUmVuYW1lIGRpcmVjdG9yeSAlcy0iCkBAIC0zMTc0LDcgKzQ2MjksNyBAQAogIkNPTkZMSUNUTyAocmVub21icmFyL3Jlbm9tYnJhcik6IFJlbm9tYnJhciBkaXJlY3RvcmlvICVzLT4lcyBlbiAlcy4gIgogIlJlbm9tYnJhciBkaXJlY3RvcmlvICVzLT4lcyBlbiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjMzMQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjQzNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiV0FSTklORzogQXZvaWRpbmcgYXBwbHlpbmcgJXMgLT4gJXMgcmVuYW1lIHRvICVzLCBiZWNhdXNlICVzIGl0c2VsZiB3YXMgIgpAQCAtMzE4Myw4OCArNDYzOCwxNDMgQEAKICJQRUxJR1JPOiBFdml0YW5kbyBhcGxpY2FyICVzIC0+ICVzIHJlbm9tYnJhZG8gYSAlcywgcG9ycXVlICVzIG1pc21vIGZ1ZSAiCiAicmVub21icmFkby4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI3MzcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9hZGQpOiBSZW5hbWUgJXMtPiVzIGluICVzLiAlcyBhZGRlZCBpbiAlcyIKLW1zZ3N0ciAiIgotIkNPTkZMSUNUTyAocmVub21icmFyL2FncmVnYXIpOiBSZW5vbWJyYXIgJXMtPiVzIGVuICVzLiAlcyBhZ3JlZ2FkbyBlbiAlcyIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjc2MwotIywgYy1mb3JtYXQKLW1zZ2lkICJBZGRpbmcgbWVyZ2VkICVzIgotbXNnc3RyICJBZ3JlZ2FyICVzIGZ1c2lvbmFkbyIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjc3MCBtZXJnZS1yZWN1cnNpdmUuYzozMTI3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkFkZGluZyBhcyAlcyBpbnN0ZWFkIgotbXNnc3RyICJBZ3JlZ2FuZG8gbcOhcyBiaWVuIGNvbW8gJXMiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5MzQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5NjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgb2JqZWN0ICVzIgogbXNnc3RyICJubyBzZSBwdWRvIGxlZXIgZWwgb2JqZXRvICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyOTM3CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyOTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBpcyBub3QgYSBibG9iIgogbXNnc3RyICJvYmpldG8gJXMgbm8gZXMgdW4gYmxvYiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAwNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAyOAogbXNnaWQgIm1vZGlmeSIKIG1zZ3N0ciAibW9kaWZpY2FyIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDA2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDI4CiBtc2dpZCAibW9kaWZpZWQiCiBtc2dzdHIgIm1vZGlmaWNhZG8iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMTcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDAKIG1zZ2lkICJjb250ZW50IgogbXNnc3RyICJjb250ZW5pZG8iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDQKIG1zZ2lkICJhZGQvYWRkIgogbXNnc3RyICJhZ3JlZ2FyL2FncmVnYXIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNzEKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBlZCAlcyAobWVyZ2VkIHNhbWUgYXMgZXhpc3RpbmcpIgogbXNnc3RyICJTYWx0YWRvICVzIChmdXNpb25hZG8gY29tbyBleGlzdGVudGUpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkzIGdpdC1zdWJtb2R1bGUuc2g6ODU4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDg5IGdpdC1zdWJtb2R1bGUuc2g6MTAwMwogbXNnaWQgInN1Ym1vZHVsZSIKIG1zZ3N0ciAic3VibcOzZHVsbyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA5NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDT05GTElDVCAoJXMpOiBNZXJnZSBjb25mbGljdCBpbiAlcyIKIG1zZ3N0ciAiQ09ORkxJQ1RPICglcyk6IENvbmZsaWN0byBkZSBmdXNpw7NuIGVuICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjE2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyBhcyAlcyBpbnN0ZWFkIgorbXNnc3RyICJBZ3JlZ2FuZG8gbcOhcyBiaWVuIGNvbW8gJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhdGggdXBkYXRlZDogJXMgYWRkZWQgaW4gJXMgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgd2FzIHJlbmFtZWQgaW4gJXM7ICIKKyJtb3ZpbmcgaXQgdG8gJXMuIgorbXNnc3RyICIiCisiUGF0aCBhY3R1YWxpemFkbzogJXMgYWdyZWdhZG8gZW4gJXMgZGVudHJvIGRlIHVuIGRpcmVjdG9yaW8gcXVlIGZ1ZSAiCisicmVub21icmFkbyBlbiAlczsgbW92acOpbmRvbG8gYSAlcy4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChmaWxlIGxvY2F0aW9uKTogJXMgYWRkZWQgaW4gJXMgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgd2FzIHJlbmFtZWQgIgorImluICVzLCBzdWdnZXN0aW5nIGl0IHNob3VsZCBwZXJoYXBzIGJlIG1vdmVkIHRvICVzLiIKK21zZ3N0ciAiIgorIkNPTkZMSUNUTyAodWJpY2FjacOzbiBkZSBhcmNoaXZvKTogJXMgYWdyZWdhZG8gZW4gJXMgZGVudHJvIGRlIHVuIGRpcmVjdG9yaW8gIgorInF1ZSBmdWUgcmVub21icmFkbyBlbiAlcywgc3VnZXJpbW9zIHF1ZSBkZWJlcsOtYSBzZXIgbW92aWRvIGEgJXMuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYXRoIHVwZGF0ZWQ6ICVzIHJlbmFtZWQgdG8gJXMgaW4gJXMsIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkIGluICIKKyIlczsgbW92aW5nIGl0IHRvICVzLiIKK21zZ3N0ciAiIgorIlBhdGggYWN0dWFsaXphZG86ICVzIHJlbm9tYnJhZG8gYSAlcyBlbiAlcywgZGVudHJvIGRlIHVuIGRpcmVjdG9yaW8gcXVlIGZ1ZSAiCisicmVub21icmFkbyBlbiAlczsgbW92acOpbmRvbG8gYSAlcy4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChmaWxlIGxvY2F0aW9uKTogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgIgorIndhcyByZW5hbWVkIGluICVzLCBzdWdnZXN0aW5nIGl0IHNob3VsZCBwZXJoYXBzIGJlIG1vdmVkIHRvICVzLiIKK21zZ3N0ciAiIgorIkNPTkZMSUNUTyAodWJpY2FjacOzbiBkZSBhcmNoaXZvKTogJXMgcmVub21icmFkbyBhICVzIGVuICVzLCBkZW50cm8gZGUgdW4gIgorImRpcmVjdG9yaW8gcXVlIGZ1ZSByZW5vbWJyYWRvIGVuICVzLCBzdWdpcmllbmRvIHF1ZSB0YWwgdmV6IGRlYmVyw61hIHNlciAiCisibW92aWRvIGEgJXMuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzIgogbXNnc3RyICJFbGltaW5hbmRvICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjQyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzUwCiBtc2dpZCAiZmlsZS9kaXJlY3RvcnkiCiBtc2dzdHIgImFyY2hpdm8vZGlyZWN0b3JpbyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI0OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM1NQogbXNnaWQgImRpcmVjdG9yeS9maWxlIgogbXNnc3RyICJkaXJlY3RvcmlvL2FyY2hpdm8iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNTUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ09ORkxJQ1QgKCVzKTogVGhlcmUgaXMgYSBkaXJlY3Rvcnkgd2l0aCBuYW1lICVzIGluICVzLiBBZGRpbmcgJXMgYXMgJXMiCiBtc2dzdHIgIiIKICJDT05GTElDVE8gKCVzKTogSGF5IHVuIGRpcmVjdG9yaW8gY29uIGVsIG5vbWJyZSAlcyBlbiAlcy4gQWdyZWdhbmRvICVzIGNvbW8gIgogIiVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjY0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFkZGluZyAlcyIKIG1zZ3N0ciAiQWdyZWdhbmRvICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMzAwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUIChhZGQvYWRkKTogTWVyZ2UgY29uZmxpY3QgaW4gJXMiCittc2dzdHIgIkNPTkZMSUNUTyAoYWRkL2FkZCk6IENvbmZsaWN0byBkZSBtZXJnZSBlbiAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQyNAorbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZSEiCittc2dzdHIgIsKhWWEgZXN0w6EgYWN0dWFsaXphZG8hIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNDMzCisjLCBjLWZvcm1hdAorbXNnaWQgIm1lcmdpbmcgb2YgdHJlZXMgJXMgYW5kICVzIGZhaWxlZCIKK21zZ3N0ciAiZmFsbMOzIGxhIGZ1c2nDs24gZGUgbG9zIMOhcmJvbGVzICVzIHkgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1MzcKK21zZ2lkICJNZXJnaW5nOiIKK21zZ3N0ciAiRnVzaW9uYW5kbzoiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yOiIKK21zZ2lkX3BsdXJhbCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yczoiCittc2dzdHJbMF0gInNlIGVuY29udHLDsyAldSBhbmNlc3RybyBjb23Dum46IgorbXNnc3RyWzFdICJzZSBlbmNvbnRyYXJvbiAldSBhbmNlc3Ryb3MgY29tdW5lczoiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM2MDAKK21zZ2lkICJtZXJnZSByZXR1cm5lZCBubyBjb21taXQiCittc2dzdHIgImxhIGZ1c2nDs24gbm8gZGV2b2x2acOzIG5pbmfDum4gY29tbWl0IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTMyNzQsMTcwICs0Nzg0LDE4NyBAQAogIm1lcmdlOlxuIgogIiAgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMTEKLW1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUhIgotbXNnc3RyICLCoVlhIGVzdMOhIGFjdHVhbGl6YWRvISIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMyMAotIywgYy1mb3JtYXQKLW1zZ2lkICJtZXJnaW5nIG9mIHRyZWVzICVzIGFuZCAlcyBmYWlsZWQiCi1tc2dzdHIgImZhbGzDsyBsYSBmdXNpw7NuIGRlIGxvcyDDoXJib2xlcyAlcyB5ICVzIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDE5Ci1tc2dpZCAiTWVyZ2luZzoiCi1tc2dzdHIgIkZ1c2lvbmFuZG86IgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDMyCi0jLCBjLWZvcm1hdAotbXNnaWQgImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcjoiCi1tc2dpZF9wbHVyYWwgImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcnM6IgotbXNnc3RyWzBdICJzZSBlbmNvbnRyw7MgJXUgYW5jZXN0cm8gY29tw7puOiIKLW1zZ3N0clsxXSAic2UgZW5jb250cmFyb24gJXUgYW5jZXN0cm9zIGNvbXVuZXM6IgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDcxCi1tc2dpZCAibWVyZ2UgcmV0dXJuZWQgbm8gY29tbWl0IgotbXNnc3RyICJsYSBmdXNpw7NuIG5vIGRldm9sdmnDsyBuaW5nw7puIGNvbW1pdCIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mzc1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgIk5vIHNlIHB1ZG8gYW5hbGl6YXIgZWwgb2JqZXRvICclcyciCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NTMgYnVpbHRpbi9tZXJnZS5jOjY5MSBidWlsdGluL21lcmdlLmM6ODQ5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNzc0IGJ1aWx0aW4vbWVyZ2UuYzo2OTcgYnVpbHRpbi9tZXJnZS5jOjg3NwogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSBpbmRleC4iCiBtc2dzdHIgIkluY2FwYXogZGUgZXNjcmliaXIgZWwgw61uZGljZS4iCiAKLSM6IG1pZHguYzo2NQorIzogbWlkeC5jOjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggZmlsZSAlcyBpcyB0b28gc21hbGwiCiBtc2dzdHIgImFyY2hpdm8gbXVsdGktcGFjay1pbmRleCAlcyBlcyBtdXkgcGVxdWXDsW8iCiAKLSM6IG1pZHguYzo4MQorIzogbWlkeC5jOjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggc2lnbmF0dXJlIDB4JTA4eCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgMHglMDh4IgogbXNnc3RyICJmaXJtYSBkZSBtdWx0aS1wYWNrLWluZGV4IDB4JTA4eCBubyBjb25jdWVyZGEgY29uIGZpcm1hIDB4JTA4eCIKIAotIzogbWlkeC5jOjg2CisjOiBtaWR4LmM6ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCB2ZXJzaW9uICVkIG5vdCByZWNvZ25pemVkIgogbXNnc3RyICJ2ZXJzacOzbiAlZCBkZSBtdWx0aS1wYWNrLWluZGV4IG5vIHJlY29ub2NpZGEiCiAKLSM6IG1pZHguYzo5MQorIzogbWlkeC5jOjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImhhc2ggdmVyc2lvbiAldSBkb2VzIG5vdCBtYXRjaCIKIG1zZ3N0ciAidmVyc2nDs24gZGUgaGFzaCAldSBubyBjb25jdWVyZGEiCiAKLSM6IG1pZHguYzoxMDUKKyM6IG1pZHguYzoxMDgKIG1zZ2lkICJpbnZhbGlkIGNodW5rIG9mZnNldCAodG9vIGxhcmdlKSIKIG1zZ3N0ciAib2Zmc2V0IGludsOhbGlkbyBkZWwgY29uanVudG8gKG11eSBncmFuZGUpIgogCi0jOiBtaWR4LmM6MTI5CisjOiBtaWR4LmM6MTMyCiBtc2dpZCAidGVybWluYXRpbmcgbXVsdGktcGFjay1pbmRleCBjaHVuayBpZCBhcHBlYXJzIGVhcmxpZXIgdGhhbiBleHBlY3RlZCIKIG1zZ3N0ciAiIgogInRlcm1pbmFuZG8gbXVsdGktcGFjay1pbmRleCBwb3JxdWUgZWwgaWQgZGVsIGNvbmp1bnRvIGFwYXJlY2UgYW50ZXMgZGUgbG8gIgogImVzcGVyYWRvIgogCi0jOiBtaWR4LmM6MTQyCisjOiBtaWR4LmM6MTQ1CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIHBhY2stbmFtZSBjaHVuayIKIG1zZ3N0ciAibXVsdGktcGFjay1pbmRleCBsZSBmYWx0YSBlbCBjb25qdW50byBwYWNrLW5hbWUgcmVxdWVyaWRvIgogCi0jOiBtaWR4LmM6MTQ0CisjOiBtaWR4LmM6MTQ3CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIE9JRCBmYW5vdXQgY2h1bmsiCiBtc2dzdHIgIm11bHRpLXBhY2staW5kZXggbGUgZmFsdGEgZWwgY29uanVudG8gT0lEIGZhbm91dCByZXF1ZXJpZG8iCiAKLSM6IG1pZHguYzoxNDYKKyM6IG1pZHguYzoxNDkKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgT0lEIGxvb2t1cCBjaHVuayIKIG1zZ3N0ciAibXVsdGktcGFjay1pbmRleCBsZSBmYWx0YSBlbCBjb25qdW50byBPSUQgZmFub3V0IHJlcXVlcmlkbyIKIAotIzogbWlkeC5jOjE0OAorIzogbWlkeC5jOjE1MQogbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBvYmplY3Qgb2Zmc2V0cyBjaHVuayIKIG1zZ3N0ciAibXVsdGktcGFjay1pbmRleCBsZSBmYWx0YSBlbCBjb25qdW50byBkZSBvZmZzZXQgZGVsIG9iamV0byByZXF1ZXJpZG8iCiAKLSM6IG1pZHguYzoxNjIKKyM6IG1pZHguYzoxNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBwYWNrIG5hbWVzIG91dCBvZiBvcmRlcjogJyVzJyBiZWZvcmUgJyVzJyIKIG1zZ3N0ciAibXVsdGktcGFjay1pbmRleCBub21icmVzIGRlIHBhcXVldGUgZnVlcmEgZGUgb3JkZW46JyVzJyBhbnRlcyAnJXMnIgogCi0jOiBtaWR4LmM6MjA1CisjOiBtaWR4LmM6MjEwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBwYWNrLWludC1pZDogJXUgKCV1IHRvdGFsIHBhY2tzKSIKIG1zZ3N0ciAibWFsIHBhY2staW50LWlkOiAldSAoJXUgcGFxdWV0ZXMgdG90YWxlcykiCiAKLSM6IG1pZHguYzoyNDYKKyM6IG1pZHguYzoyNjAKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHN0b3JlcyBhIDY0LWJpdCBvZmZzZXQsIGJ1dCBvZmZfdCBpcyB0b28gc21hbGwiCiBtc2dzdHIgIm11bHRpLXBhY2staW5kZXggZ3VhcmRhIHVuIG9mZnNldCBkZSA2NC1iaXQsIHBlcm8gb2ZmX3QgZXMgbXV5IHBlcXVlw7FvIgogCi0jOiBtaWR4LmM6MjcxCisjOiBtaWR4LmM6Mjg4CiBtc2dpZCAiZXJyb3IgcHJlcGFyaW5nIHBhY2tmaWxlIGZyb20gbXVsdGktcGFjay1pbmRleCIKIG1zZ3N0ciAiZXJyb3IgcHJlcGFyYW5kbyBwYWNrZmlsZSBkZSBtdWx0aS1wYWNrLWluZGV4IgogCi0jOiBtaWR4LmM6NDA3CisjOiBtaWR4LmM6NDcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBhZGQgcGFja2ZpbGUgJyVzJyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGFncmVnYXIgcGFja2ZpbGUgJyVzJyIKIAotIzogbWlkeC5jOjQxMworIzogbWlkeC5jOjQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrLWluZGV4ICclcyciCiBtc2dzdHIgImZhbGzDsyBhbCBhYnJpciBwYWNrLWluZGV4ICclcyciCiAKLSM6IG1pZHguYzo1MDcKKyM6IG1pZHguYzo1MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvY2F0ZSBvYmplY3QgJWQgaW4gcGFja2ZpbGUiCiBtc2dzdHIgImZhbGzDsyBhbCB1YmljYXIgb2JqZXRvICVkIGVuIHBhY2tmaWxlIgogCi0jOiBtaWR4LmM6OTQzCisjOiBtaWR4LmM6ODQyCittc2dpZCAiQWRkaW5nIHBhY2tmaWxlcyB0byBtdWx0aS1wYWNrLWluZGV4IgorbXNnc3RyICJBZ3JlZ2FuZG8gcGFja2ZpbGVzIGEgbXVsdGktcGFjay1pbmRleCIKKworIzogbWlkeC5jOjg3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaWQgbm90IHNlZSBwYWNrLWZpbGUgJXMgdG8gZHJvcCIKK21zZ3N0ciAibm8gc2UgdmnDsyBwYWNrLWZpbGUgJXMgY2FlciIKKworIzogbWlkeC5jOjk3MworbXNnaWQgIldyaXRpbmcgY2h1bmtzIHRvIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIkVzY3JpYmllbmRvIGNodW5rcyBhIG11bHRpLXBhY2staW5kZXgiCisKKyM6IG1pZHguYzoxMDUyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjbGVhciBtdWx0aS1wYWNrLWluZGV4IGF0ICVzIgogbXNnc3RyICJmYWxsw7MgYWwgbGltcGlhciBtdWx0aS1wYWNrLWluZGV4IGVuICVzIgogCi0jOiBtaWR4LmM6OTgxCisjOiBtaWR4LmM6MTEwOAorbXNnaWQgIkxvb2tpbmcgZm9yIHJlZmVyZW5jZWQgcGFja2ZpbGVzIgorbXNnc3RyICJCdXNjYW5kbyBwb3IgcGFja2ZpbGVzIHJlZmVyaWRvcyIKKworIzogbWlkeC5jOjExMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm9pZCBmYW5vdXQgb3V0IG9mIG9yZGVyOiBmYW5vdXRbJWRdID0gJTxQUkl4MzI+ID4gJTxQUkl4MzI+ID0gZmFub3V0WyVkXSIKIG1zZ3N0ciAiIgogIm9pZCBmYW5vdXQgZnVlcmEgZGUgb3JkZW46IGZhbm91dFslZF0gPSAlPFBSSXgzMj4gPiAlPFBSSXgzMj4gPSBmYW5vdXRbJWRdIgogCi0jOiBtaWR4LmM6OTkyCisjOiBtaWR4LmM6MTEyOAorbXNnaWQgIlZlcmlmeWluZyBPSUQgb3JkZXIgaW4gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAiVmVyaWZpY2FuZG8gb3JkZW4gZGUgT0lEIGVuIG11bHRpLXBhY2staW5kZXgiCisKKyM6IG1pZHguYzoxMTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9pZCBsb29rdXAgb3V0IG9mIG9yZGVyOiBvaWRbJWRdID0gJXMgPj0gJXMgPSBvaWRbJWRdIgogbXNnc3RyICJvaWQgbG9va3VwIGZ1ZXJhIGRlIG9yZGVuOiBvaWRbJWRdID0gJXMgPj0gJXMgPSBvaWRbJWRdIgogCi0jOiBtaWR4LmM6OTk2CisjOiBtaWR4LmM6MTE1NworbXNnaWQgIlNvcnRpbmcgb2JqZWN0cyBieSBwYWNrZmlsZSIKK21zZ3N0ciAiT3JkZW5hbmRvIG9iamV0b3MgcG9yIHBhY2tmaWxlIgorCisjOiBtaWR4LmM6MTE2NAogbXNnaWQgIlZlcmlmeWluZyBvYmplY3Qgb2Zmc2V0cyIKIG1zZ3N0ciAiVmVyaWZpY2FuZG8gb2Zmc2V0cyBkZSBvYmpldG9zIgogCi0jOiBtaWR4LmM6MTAwNAorIzogbWlkeC5jOjExODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvYWQgcGFjayBlbnRyeSBmb3Igb2lkWyVkXSA9ICVzIgogbXNnc3RyICJmYWxsbyBhbCBjYXJnYXIgZW50cmFkYSBwYWNrIHBhcmEgb2lkWyVkXSA9ICVzIgogCi0jOiBtaWR4LmM6MTAxMAorIzogbWlkeC5jOjExODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvYWQgcGFjay1pbmRleCBmb3IgcGFja2ZpbGUgJXMiCiBtc2dzdHIgImZhbGzDsyBhbCBjYXJnYXIgZWwgcGFjay1pbmRleCBwYXJhIHBhY2tmaWxlICVzIgogCi0jOiBtaWR4LmM6MTAxOQorIzogbWlkeC5jOjExOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5jb3JyZWN0IG9iamVjdCBvZmZzZXQgZm9yIG9pZFslZF0gPSAlczogJTxQUkl4NjQ+ICE9ICU8UFJJeDY0PiIKIG1zZ3N0ciAib2Zmc2V0IHBhcmEgb2JqZXRvIGluY29ycmVjdG8gb2lkWyVkXSA9ICVzOiAlPFBSSXg2ND4gIT0gJTxQUkl4NjQ+IgogCi0jOiBuYW1lLWhhc2guYzo1MzIKKyM6IG1pZHguYzoxMjIwCittc2dpZCAiQ291bnRpbmcgcmVmZXJlbmNlZCBvYmplY3RzIgorbXNnc3RyICJDb250YW5kbyBvYmpldG9zIG5vIHJlZmVyZW5jaWFkb3MiCisKKyM6IG1pZHguYzoxMjMwCittc2dpZCAiRmluZGluZyBhbmQgZGVsZXRpbmcgdW5yZWZlcmVuY2VkIHBhY2tmaWxlcyIKK21zZ3N0ciAiRW5jb250cmFuZG8geSBib3JyYW5kbyBwYWNrZmlsZXMgc2luIHJlZmVyZW5jaWFzIgorCisjOiBtaWR4LmM6MTM4OAorbXNnaWQgImNvdWxkIG5vdCBzdGFydCBwYWNrLW9iamVjdHMiCittc2dzdHIgIm5vIHNlIHB1ZG8gZW1wZXphciBsb3MgcGFjay1vYmpldGN0cyIKKworIzogbWlkeC5jOjE0MDcKK21zZ2lkICJjb3VsZCBub3QgZmluaXNoIHBhY2stb2JqZWN0cyIKK21zZ3N0ciAibm8gc2UgcHVkbyBmaW5hbGl6YXIgcGFjay1vYmpldGN0cyIKKworIzogbmFtZS1oYXNoLmM6NTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbGF6eV9kaXIgdGhyZWFkOiAlcyIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBjcmVhciBoaWxvIGxhenlfZGlyOiAlcyIKIAotIzogbmFtZS1oYXNoLmM6NTU0CisjOiBuYW1lLWhhc2guYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsYXp5X25hbWUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBjcmVhciBoaWxvIGxhenlfbmFtZTogJXMiCiAKLSM6IG5hbWUtaGFzaC5jOjU2MAorIzogbmFtZS1oYXNoLmM6NTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBqb2luIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIHVuaXIgaGlsbyBsYXp5X25hbWU6ICVzIgogCi0jOiBub3Rlcy1tZXJnZS5jOjI3NQorIzogbm90ZXMtbWVyZ2UuYzoyNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBwcmV2aW91cyBub3RlcyBtZXJnZSAoJXMgZXhpc3RzKS5cbiIKQEAgLTM0NDksMjMgKzQ5NzYsMjMgQEAKICJjb25maXJtYXIvYWJvcnRhciBsYSBmdXNpw7NuIHByZXZpYSBhbnRlcyBkZSBxdWUgcHVlZGFzIGNvbWVuemFyIHVuYSBudWV2YSAiCiAibm90YSBkZSBmdXNpw7NuLiIKIAotIzogbm90ZXMtbWVyZ2UuYzoyODIKKyM6IG5vdGVzLW1lcmdlLmM6Mjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBub3RlcyBtZXJnZSAoJXMgZXhpc3RzKS4iCiBtc2dzdHIgIk5vIGhhcyB0ZXJtaW5hZG8gdHVzIG5vdGFzIGRlIGZ1c2nDs24gKCVzIGV4aXN0ZSkuIgogCi0jOiBub3Rlcy11dGlscy5jOjQ1CisjOiBub3Rlcy11dGlscy5jOjQ2CiBtc2dpZCAiQ2Fubm90IGNvbW1pdCB1bmluaXRpYWxpemVkL3VucmVmZXJlbmNlZCBub3RlcyB0cmVlIgogbXNnc3RyICIiCiAiTm8gc2UgcHVlZGUgcmVhbGl6YXIgY29tbWl0LCBub3RhcyBkZWwgw6FyYm9sIG5vIGluaWNpYWxpemFkYXMgbyBubyAiCiAicmVmZXJlbmNpYWRhcyIKIAotIzogbm90ZXMtdXRpbHMuYzoxMDQKKyM6IG5vdGVzLXV0aWxzLmM6MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCBub3Rlcy5yZXdyaXRlTW9kZSB2YWx1ZTogJyVzJyIKIG1zZ3N0ciAiVmFsb3IgZXJyw7NuZW8gcGFyYSBub3Rlcy5yZXdyaXRlTW9kZTogJyVzJyIKIAotIzogbm90ZXMtdXRpbHMuYzoxMTQKKyM6IG5vdGVzLXV0aWxzLmM6MTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIHJld3JpdGUgbm90ZXMgaW4gJXMgKG91dHNpZGUgb2YgcmVmcy9ub3Rlcy8pIgogbXNnc3RyICJSZWh1c2FuZG8gcmVlc2NyaWJpciBub3RhcyBlbiAlcyAoZnVlcmEgZGUgcmVmcy9ub3Rlcy8pIgpAQCAtMzQ3NCwxMiArNTAwMSwxMiBAQAogIy4gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlLCB0aGUgc2Vjb25kICVzIGlzCiAjLiBpdHMgdmFsdWUuCiAjLgotIzogbm90ZXMtdXRpbHMuYzoxNDQKKyM6IG5vdGVzLXV0aWxzLmM6MTQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCAlcyB2YWx1ZTogJyVzJyIKIG1zZ3N0ciAiVmFsb3IgZXJyw7NuZW8gcGFyYSAlczogJyVzJyIKIAotIzogb2JqZWN0LmM6NTQKKyM6IG9iamVjdC5jOjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgb2JqZWN0IHR5cGUgXCIlc1wiIgogbXNnc3RyICJ0aXBvIGRlIG9iamV0byBcIiVzXCIgaW52w6FsaWRvIgpAQCAtMzQ5OSwzMiArNTAyNiw5MiBAQAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBvYmplY3Q6ICVzIgogbXNnc3RyICJpbmNhcGF6IGRlIGFuYWxpemFyIG9iamV0bzogJXMiCiAKLSM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzcKKyM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzgKICMsIGMtZm9ybWF0Ci1tc2dpZCAic2hhMSBtaXNtYXRjaCAlcyIKLW1zZ3N0ciAic2hhMSBubyBjb25jdWVyZGEgJXMiCittc2dpZCAiaGFzaCBtaXNtYXRjaCAlcyIKK21zZ3N0ciAiaGFzaCBubyBjb25jdWVyZGEgJXMiCiAKLSM6IHBhY2tmaWxlLmM6NjA3CisjOiBwYWNrZmlsZS5jOjYyOQogbXNnaWQgIm9mZnNldCBiZWZvcmUgZW5kIG9mIHBhY2tmaWxlIChicm9rZW4gLmlkeD8pIgogbXNnc3RyICJvZmZzZXQgYW50ZXMgZGVsIGZpbmFsIGRlbCBwYXF1ZXRlIChicm9rZW4gLmlkeD8pIgogCi0jOiBwYWNrZmlsZS5jOjE4NjQKKyM6IHBhY2tmaWxlLmM6MTg5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJvZmZzZXQgYmVmb3JlIHN0YXJ0IG9mIHBhY2sgaW5kZXggZm9yICVzIChjb3JydXB0IGluZGV4PykiCiBtc2dzdHIgIiIKLSJvZmZzZXQgYW50ZXMgZGVsIGNvbWllbnpvIGRlbCDDrW5kaWNlIGRlbCBwYXF1ZXRlIHBhcmEgJXMgKMOtbmRpY2UgY29ycnVwdG8/KSIKKyJvZmZzZXQgYW50ZXMgZGVsIGNvbWllbnpvIGRlbCDDrW5kaWNlIGRlbCBwYXF1ZXRlIHBhcmEgJXMgKMK/w61uZGljZSBjb3JydXB0bz8pIgogCi0jOiBwYWNrZmlsZS5jOjE4NjgKKyM6IHBhY2tmaWxlLmM6MTkwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJvZmZzZXQgYmV5b25kIGVuZCBvZiBwYWNrIGluZGV4IGZvciAlcyAodHJ1bmNhdGVkIGluZGV4PykiCiBtc2dzdHIgIiIKLSJvZmZzZXQgbcOhcyBhbGzDoSBkZWwgw61uZGljZSBkZSBmaW4gZGUgcGFxdWV0ZSBwYXJhICVzICjDrW5kaWNlIHRydW5jYWRvPykiCisib2Zmc2V0IG3DoXMgYWxsw6EgZGVsIMOtbmRpY2UgZGUgZmluIGRlIHBhcXVldGUgcGFyYSAlcyAowr/DrW5kaWNlIHRydW5jYWRvPykiCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo2NzIKKyM6IHBhY2stYml0bWFwLmM6ODAwIHBhY2stYml0bWFwLmM6ODA2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IHNpemUgb2YgJXMiCittc2dzdHIgIm5vIHNlIHB1ZG8gb2J0ZW5lciBlbCB0YW1hw7FvIGRlICVzIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVxdWlyZXMgYSB2YWx1ZSIKK21zZ3N0ciAiJXMgcmVxdWllcmUgdW4gdmFsb3IiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAlcyIKK21zZ3N0ciAiJXMgZXMgaW5jb21wYXRpYmxlIGNvbiAlcyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIDogaW5jb21wYXRpYmxlIHdpdGggc29tZXRoaW5nIGVsc2UiCittc2dzdHIgIiVzIDogaW5jb21wYXRpYmxlIGNvbiBvdHJhIGNvc2EiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MiBwYXJzZS1vcHRpb25zLmM6OTYgcGFyc2Utb3B0aW9ucy5jOjMxNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0YWtlcyBubyB2YWx1ZSIKK21zZ3N0ciAiJXMgbm8gdG9tYSB2YWxvcmVzIgorCisjOiBwYXJzZS1vcHRpb25zLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXNuJ3QgYXZhaWxhYmxlIgorbXNnc3RyICIlcyBubyBlc3TDoSBkaXNwb25pYmxlIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MjE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBub24tbmVnYXRpdmUgaW50ZWdlciB2YWx1ZSB3aXRoIGFuIG9wdGlvbmFsIGsvbS9nIHN1ZmZpeCIKK21zZ3N0ciAiJXMgZXNwZXJhIHVuIHZhbG9yIGVudGVybyBubyBuZWdhdGl2byBjb24gdW4gc3VmaWpvIG9wY2lvbmFsIGsvbS9nIgorCisjOiBwYXJzZS1vcHRpb25zLmM6Mzg2CisjLCBjLWZvcm1hdAorbXNnaWQgImFtYmlndW91cyBvcHRpb246ICVzIChjb3VsZCBiZSAtLSVzJXMgb3IgLS0lcyVzKSIKK21zZ3N0ciAib3BjacOzbiBhbWJpZ3VhOiAlcyAocHVlZGUgc2VyIC0tJXMlcyBvIC0tJXMlcykiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo0MjAgcGFyc2Utb3B0aW9ucy5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJkaWQgeW91IG1lYW4gYC0tJXNgICh3aXRoIHR3byBkYXNoZXMpPyIKK21zZ3N0ciAiwr9xdWlzaXN0ZSBkZWNpciBgLS0lc2AgKGNvbiBkb3MgZ3Vpb25lcyk/IgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgIm9wY2nDs24gYCVzJyBkZXNjb25vY2lkYSIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHN3aXRjaCBgJWMnIgorbXNnc3RyICJzd2l0Y2ggZGVzY29ub2NpZG8gYCVjJyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG5vbi1hc2NpaSBvcHRpb24gaW4gc3RyaW5nOiBgJXMnIgorbXNnc3RyICJvcGNpw7NuIGRlc2Nvbm9jaWRhIGVuIHN0cmluZyBubyBhc2NpaTogYCVzJyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg4NQogbXNnaWQgIi4uLiIKIG1zZ3N0ciAiLi4uIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NjkxCisjOiBwYXJzZS1vcHRpb25zLmM6OTA0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVzYWdlOiAlcyIKIG1zZ3N0ciAidXNvOiAlcyIKQEAgLTM1MzIsNTkgKzUxMTksNzQgQEAKICMuIFRSQU5TTEFUT1JTOiB0aGUgY29sb24gaGVyZSBzaG91bGQgYWxpZ24gd2l0aCB0aGUKICMuIG9uZSBpbiAidXNhZ2U6ICVzIiB0cmFuc2xhdGlvbi4KICMuCi0jOiBwYXJzZS1vcHRpb25zLmM6Njk3CisjOiBwYXJzZS1vcHRpb25zLmM6OTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgIG9yOiAlcyIKIG1zZ3N0ciAiICAgbzogJXMiCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo3MDAKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICVzIgogbXNnc3RyICIgICAgJXMiCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo3MzkKKyM6IHBhcnNlLW9wdGlvbnMuYzo5NTIKIG1zZ2lkICItTlVNIgogbXNnc3RyICItTlVNIgogCi0jOiBwYXJzZS1vcHRpb25zLWNiLmM6MzcKKyM6IHBhcnNlLW9wdGlvbnMuYzo5NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWxpYXMgb2YgLS0lcyIKK21zZ3N0ciAiYWxpYXMgZGUgLS0lcyIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjIwIHBhcnNlLW9wdGlvbnMtY2IuYzoyNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICJvcGNpw7NuIGAlcycgZXNwZXJhIHVuIHZhbG9yIG51bcOpcmljbyIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBleHBpcmF0aW9uIGRhdGUgJyVzJyIKIG1zZ3N0ciAiZmVjaGEgZGUgZXhwaXJhY2nDs24gbWFsIGZvcm1hZGE6ICclcyciCiAKLSM6IHBhcnNlLW9wdGlvbnMtY2IuYzoxMDkKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIFwiYWx3YXlzXCIsIFwiYXV0b1wiLCBvciBcIm5ldmVyXCIiCittc2dzdHIgIm9wY2nDs24gYCVzJyBwdWVkZSB1c2FyIFwiYWx3YXlzXCIsIFwiYXV0b1wiLCBvIFwibmV2ZXJcIiIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjEzMCBwYXJzZS1vcHRpb25zLWNiLmM6MTQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAnJXMnIgogbXNnc3RyICJub21icmUgZGUgb2JqZXRvIG1hbCBmb3JtYWRvICclcyciCiAKLSM6IHBhdGguYzo4OTQKKyM6IHBhdGguYzo5MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IG1ha2UgJXMgd3JpdGFibGUgYnkgZ3JvdXAiCiBtc2dzdHIgIk5vIHNlIHB1ZG8gaGFjZXIgcXVlICVzIGZ1ZXJhIGVzY3JpYmlibGUgcG9yIGVsIGdydXBvIgogCi0jOiBwYXRoc3BlYy5jOjEyOQorIzogcGF0aHNwZWMuYzoxMzAKIG1zZ2lkICJFc2NhcGUgY2hhcmFjdGVyICdcXCcgbm90IGFsbG93ZWQgYXMgbGFzdCBjaGFyYWN0ZXIgaW4gYXR0ciB2YWx1ZSIKIG1zZ3N0ciAiIgogIkNhcsOhY3RlciBkZSBlc2NhcGUgJ1xcJyBubyBwZXJtaXRpZG8gY29tbyDDumx0aW1vIGNhcsOhY3RlciBlbiBlbCB2YWxvciBhdHRyIgogCi0jOiBwYXRoc3BlYy5jOjE0NworIzogcGF0aHNwZWMuYzoxNDgKIG1zZ2lkICJPbmx5IG9uZSAnYXR0cjonIHNwZWNpZmljYXRpb24gaXMgYWxsb3dlZC4iCiBtc2dzdHIgIlNvbG8gdW5hIGVzcGVjaWZpY2FjacOzbiAnYXR0cicgZXMgcGVybWl0aWRhLiIKIAotIzogcGF0aHNwZWMuYzoxNTAKKyM6IHBhdGhzcGVjLmM6MTUxCiBtc2dpZCAiYXR0ciBzcGVjIG11c3Qgbm90IGJlIGVtcHR5IgogbXNnc3RyICJlc3BlY2lmaWNhY2nDs24gYXR0ciBubyBwdWVkZSBlc3RhciB2YWPDrWEiCiAKLSM6IHBhdGhzcGVjLmM6MTkzCisjOiBwYXRoc3BlYy5jOjE5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGF0dHJpYnV0ZSBuYW1lICVzIgogbXNnc3RyICJub21icmUgZGUgYXRyaWJ1dG8gJXMgaW52w6FsaWRvIgogCi0jOiBwYXRoc3BlYy5jOjI1OAorIzogcGF0aHNwZWMuYzoyNTkKIG1zZ2lkICJnbG9iYWwgJ2dsb2InIGFuZCAnbm9nbG9iJyBwYXRoc3BlYyBzZXR0aW5ncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICIiCiAiY29uZmlndXJhY2lvbmVzIGdsb2JhbGVzIGRlIHBhdGhzcGVjICdnbG9iJyB5ICdub2dsb2InIHNvbiBpbmNvbXBhdGlibGVzIgogCi0jOiBwYXRoc3BlYy5jOjI2NQorIzogcGF0aHNwZWMuYzoyNjYKIG1zZ2lkICIiCiAiZ2xvYmFsICdsaXRlcmFsJyBwYXRoc3BlYyBzZXR0aW5nIGlzIGluY29tcGF0aWJsZSB3aXRoIGFsbCBvdGhlciBnbG9iYWwgIgogInBhdGhzcGVjIHNldHRpbmdzIgpAQCAtMzU5MiwxMjggKzUxOTQsMjAwIEBACiAibGEgY29uZmlndXJhY2nDs24gZ2xvYmFsIGRlICdsaXRlcmFsJyBwYXJhIHBhdHJvbmVzIGRlIHJ1dGEgZXMgaW5jb21wYXRpYmxlICIKICJjb24gbGFzIGRlbcOhcyBjb25maWd1cmFjaW9uZXMgZ2xvYmFsZXMgZGUgcGF0cm9uZXMgZGUgcnV0YSIKIAotIzogcGF0aHNwZWMuYzozMDUKKyM6IHBhdGhzcGVjLmM6MzA2CiBtc2dpZCAiaW52YWxpZCBwYXJhbWV0ZXIgZm9yIHBhdGhzcGVjIG1hZ2ljICdwcmVmaXgnIgogbXNnc3RyICJwYXLDoW1ldHJvIG5vIHbDoWxpZG8gcGFyYSBlbCBwcmVmaWpvICdtYWdpYyBwYXRoc3BlYyciCiAKLSM6IHBhdGhzcGVjLmM6MzI2CisjOiBwYXRoc3BlYy5jOjMyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHBhdGhzcGVjIG1hZ2ljICclLipzJyBpbiAnJXMnIgogbXNnc3RyICJNYWdpYyBwYXRoc3BlYyBpbnbDoWxpZG8gJyUuKnMnIGVuICclcyciCiAKLSM6IHBhdGhzcGVjLmM6MzMxCisjOiBwYXRoc3BlYy5jOjMzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJNaXNzaW5nICcpJyBhdCB0aGUgZW5kIG9mIHBhdGhzcGVjIG1hZ2ljIGluICclcyciCiBtc2dzdHIgIkZhbHRhICcpJyBhbCBmaW5hbCBkZWwgbWFnaWMgcGF0aHNwZWMgZW4gJyVzJyIKIAotIzogcGF0aHNwZWMuYzozNjkKKyM6IHBhdGhzcGVjLmM6MzcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuaW1wbGVtZW50ZWQgcGF0aHNwZWMgbWFnaWMgJyVjJyBpbiAnJXMnIgogbXNnc3RyICJNYWdpYyBwYXRoc3BlYyAnJWMnIG5vIGltcGxlbWVudGFkbyBlbiAnJXMnIgogCi0jOiBwYXRoc3BlYy5jOjQyOAorIzogcGF0aHNwZWMuYzo0MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6ICdsaXRlcmFsJyBhbmQgJ2dsb2InIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIiVzOiAnbGl0ZXJhbCcgeSAnZ2xvYicgc29uIGluY29tcGF0aWJsZXMiCiAKLSM6IHBhdGhzcGVjLmM6NDQxCisjOiBwYXRoc3BlYy5jOjQ0MgogIywgYy1mb3JtYXQKLW1zZ2lkICIlczogJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkiCi1tc2dzdHIgIiVzOiAnJXMnIGVzdMOhIGZ1ZXJhIGRlbCByZXBvc2l0b3JpbyIKK21zZ2lkICIlczogJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkgYXQgJyVzJyIKK21zZ3N0ciAiJXM6ICclcycgZXN0w6EgZnVlcmEgZGVsIHJlcG9zaXRvcmlvIGVuICclcyciCiAKLSM6IHBhdGhzcGVjLmM6NTE1CisjOiBwYXRoc3BlYy5jOjUxNwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIChtbmVtb25pYzogJyVjJykiCiBtc2dzdHIgIiclcycgKG5lbW90w6ljbmljbzogJyVjJykiCiAKLSM6IHBhdGhzcGVjLmM6NTI1CisjOiBwYXRoc3BlYy5jOjUyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogcGF0aHNwZWMgbWFnaWMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvbW1hbmQ6ICVzIgogbXNnc3RyICIlczogbWFnaWMgcGF0aHNwZWMgbm8gc29wb3J0YWRvIHBvciBlc3RlIGNvbWFuZG86ICVzIgogCi0jOiBwYXRoc3BlYy5jOjU5MgorIzogcGF0aHNwZWMuYzo1OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aHNwZWMgJyVzJyBpcyBiZXlvbmQgYSBzeW1ib2xpYyBsaW5rIgogbXNnc3RyICJlbCBwYXRyw7NuIGRlIHJ1dGEgJyVzJyBlc3TDoSBkZXRyw6FzIGRlIHVuIGVubGFjZSBzaW1iw7NsaWNvIgogCi0jOiBwa3QtbGluZS5jOjEwNAorIzogcGF0aHNwZWMuYzo2MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBpcyBiYWRseSBxdW90ZWQ6ICVzIgorbXNnc3RyICJsYSBsw61uZWEgZXN0w6EgbcOhbCBjaXRhZGE6ICVzIgorCisjOiBwa3QtbGluZS5jOjkyCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZsdXNoIHBhY2tldCIKK21zZ3N0ciAibm8gZXMgcG9zaWJsZSBlc2NyaWJpciBmbHVzaCBwYWNrZXQiCisKKyM6IHBrdC1saW5lLmM6OTkKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZGVsaW0gcGFja2V0IgorbXNnc3RyICJubyBlcyBwb3NpYmxlIGVzY3JpYmlyIGRlbGltIHBhY2tldCIKKworIzogcGt0LWxpbmUuYzoxMDYKIG1zZ2lkICJmbHVzaCBwYWNrZXQgd3JpdGUgZmFpbGVkIgogbXNnc3RyICJsaW1waWV6YSBkZSBlc2NyaXR1cmEgZGUgcGFxdWV0ZXMgZmFsbMOzIgogCi0jOiBwa3QtbGluZS5jOjE0MiBwa3QtbGluZS5jOjIyOAorIzogcGt0LWxpbmUuYzoxNDYgcGt0LWxpbmUuYzoyMzIKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogaW1wb3NzaWJseSBsb25nIGxpbmUiCiBtc2dzdHIgImVycm9yIGRlIHByb3RvY29sbzogbMOtbmVhIGltcG9zaWJsZW1lbnRlIGxhcmdhIgogCi0jOiBwa3QtbGluZS5jOjE1OCBwa3QtbGluZS5jOjE2MAorIzogcGt0LWxpbmUuYzoxNjIgcGt0LWxpbmUuYzoxNjQKIG1zZ2lkICJwYWNrZXQgd3JpdGUgd2l0aCBmb3JtYXQgZmFpbGVkIgogbXNnc3RyICJlc2NyaXR1cmEgZGUgcGFxdWV0ZXMgY29uIGZvcm1hdG8gZmFsbMOzIgogCi0jOiBwa3QtbGluZS5jOjE5MgorIzogcGt0LWxpbmUuYzoxOTYKIG1zZ2lkICJwYWNrZXQgd3JpdGUgZmFpbGVkIC0gZGF0YSBleGNlZWRzIG1heCBwYWNrZXQgc2l6ZSIKIG1zZ3N0ciAiZmFsbG8gYWwgZXNjcmliaXIgcGFxdWV0ZSAtIGxhIGRhdGEgZXhjZWRlIGFsIHRhbWHDsW8gbcOheGltbyBkZSBwYXF1ZXRlIgogCi0jOiBwa3QtbGluZS5jOjE5OSBwa3QtbGluZS5jOjIwNgorIzogcGt0LWxpbmUuYzoyMDMgcGt0LWxpbmUuYzoyMTAKIG1zZ2lkICJwYWNrZXQgd3JpdGUgZmFpbGVkIgogbXNnc3RyICJlc2NyaXR1cmEgZGUgcGFxdWV0ZXMgZmFsbMOzIgogCi0jOiBwa3QtbGluZS5jOjI5MQorIzogcGt0LWxpbmUuYzoyOTUKIG1zZ2lkICJyZWFkIGVycm9yIgogbXNnc3RyICJlcnJvciBkZSBsZWN0dXJhIgogCi0jOiBwa3QtbGluZS5jOjI5OQorIzogcGt0LWxpbmUuYzozMDMKIG1zZ2lkICJ0aGUgcmVtb3RlIGVuZCBodW5nIHVwIHVuZXhwZWN0ZWRseSIKIG1zZ3N0ciAiZWwgcmVtb3RvIHNlIGNvbGfDsyBkZSBtYW5lcmEgaW5lc3BlcmFkYSIKIAotIzogcGt0LWxpbmUuYzozMjcKKyM6IHBrdC1saW5lLmM6MzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sIGVycm9yOiBiYWQgbGluZSBsZW5ndGggY2hhcmFjdGVyOiAlLjRzIgogbXNnc3RyICJlcnJvciBkZSBwcm90b2NvbG86IG1hbCBjYXJhY3RlciBkZSBsYXJnbyBkZSBsw61uZWE6ICUuNHMiCiAKLSM6IHBrdC1saW5lLmM6MzM3IHBrdC1saW5lLmM6MzQyCisjOiBwa3QtbGluZS5jOjM0MSBwa3QtbGluZS5jOjM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIGxpbmUgbGVuZ3RoICVkIgogbXNnc3RyICJlcnJvciBkZSBwcm90b2NvbG86IG1hbCBsYXJnbyBkZSBsw61uZWEgJWQiCiAKLSM6IHByZWxvYWQtaW5kZXguYzoxMTgKKyM6IHBrdC1saW5lLmM6MzYyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW90ZSBlcnJvcjogJXMiCittc2dzdHIgImVycm9yIHJlbW90bzogJXMiCisKKyM6IHByZWxvYWQtaW5kZXguYzoxMTkKIG1zZ2lkICJSZWZyZXNoaW5nIGluZGV4IgogbXNnc3RyICJSZWZyZXNjYW5kbyBpbmRleCIKIAotIzogcHJlbG9hZC1pbmRleC5jOjEzNworIzogcHJlbG9hZC1pbmRleC5jOjEzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRocmVhZGVkIGxzdGF0OiAlcyIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBjcmVhciBsc3RhdCBoaWxhZG86ICVzIgogCi0jOiBwcmV0dHkuYzo5NjIKKyM6IHByZXR0eS5jOjk4MQogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAtLXByZXR0eSBmb3JtYXQiCiBtc2dzdHIgImluY2FwYXogZGUgYW5hbGl6YXIgZWwgZm9ybWF0byAtLXByZXR0eSIKIAotIzogcmFuZ2UtZGlmZi5jOjU2CisjOiBwcm9taXNvci1yZW1vdGUuYzoyMworbXNnaWQgIlJlbW90ZSB3aXRoIG5vIFVSTCIKK21zZ3N0ciAiUmVtb3RvIHNpbiBVUkwiCisKKyM6IHByb21pc29yLXJlbW90ZS5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInByb21pc29yIHJlbW90ZSBuYW1lIGNhbm5vdCBiZWdpbiB3aXRoICcvJzogJXMiCittc2dzdHIgIm5vbWJyZSByZW1vdG8gcHJvbWlzb3Igbm8gcHVlZGUgY29tZW56YXIgY29uICcvJzogJXMiCisKKyM6IHJhbmdlLWRpZmYuYzo3NQogbXNnaWQgImNvdWxkIG5vdCBzdGFydCBgbG9nYCIKIG1zZ3N0ciAibm8gc2UgcHVkbyBjb21lbnphciBgbG9nYCIKIAotIzogcmFuZ2UtZGlmZi5jOjU5CisjOiByYW5nZS1kaWZmLmM6NzcKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBgbG9nYCBvdXRwdXQiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gbGVlciBvdXRwdXQgZGUgYGxvZ2AiCiAKLSM6IHJhbmdlLWRpZmYuYzo3NCBzZXF1ZW5jZXIuYzo0NzY0CisjOiByYW5nZS1kaWZmLmM6OTYgc2VxdWVuY2VyLmM6NTAyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0ICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gYW5hbGl6YXIgY29tbWl0ICclcyciCiAKLSM6IHJhbmdlLWRpZmYuYzoyMjQKKyM6IHJhbmdlLWRpZmYuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGdpdCBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBhbmFsaXphciBnaXQgaGVhZGVyICclLipzJyIKKworIzogcmFuZ2UtZGlmZi5jOjI4NQogbXNnaWQgImZhaWxlZCB0byBnZW5lcmF0ZSBkaWZmIgogbXNnc3RyICJmYWxsw7MgYWwgZ2VuZXJhciBkaWZmIgogCi0jOiByYW5nZS1kaWZmLmM6NDU1IHJhbmdlLWRpZmYuYzo0NTcKKyM6IHJhbmdlLWRpZmYuYzo1MTggcmFuZ2UtZGlmZi5jOjUyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgbG9nIGZvciAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGxlZXIgZWwgbG9nIHBhcmEgJyVzJyIKIAotIzogcmVhZC1jYWNoZS5jOjE0OTAKKyM6IHJlYWQtY2FjaGUuYzo2ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAid2lsbCBub3QgYWRkIGZpbGUgYWxpYXMgJyVzJyAoJyVzJyBhbHJlYWR5IGV4aXN0cyBpbiBpbmRleCkiCittc2dzdHIgIm5vIGFncmVnYXLDoSBhbGlhcyBkZSBhcmNoaXZvICclcycgKCclcycgeWEgZXhpc3RlIGVuIGVsIGluZGV4KSIKKworIzogcmVhZC1jYWNoZS5jOjY5NgorbXNnaWQgImNhbm5vdCBjcmVhdGUgYW4gZW1wdHkgYmxvYiBpbiB0aGUgb2JqZWN0IGRhdGFiYXNlIgorbXNnc3RyICJubyBzZSBwdWVkZSBjcmVhciB1biBibG9iIHZhY8OtbyBlbiBsYSBiYXNlIGRlIGRhdG9zIGRlIG9iamV0b3MiCisKKyM6IHJlYWQtY2FjaGUuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbiBvbmx5IGFkZCByZWd1bGFyIGZpbGVzLCBzeW1ib2xpYyBsaW5rcyBvciBnaXQtZGlyZWN0b3JpZXMiCittc2dzdHIgIiIKKyIlczogc29sbyBwdWVkZSBhZ3JlZ2FyIGFyY2hpdm9zIHJlZ3VsYXJlcywgc3ltYm9saWMgbGlua3MgbyBnaXQtZGlyZWN0b3JpZXMiCisKKyM6IHJlYWQtY2FjaGUuYzo3MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBoYXZlIGEgY29tbWl0IGNoZWNrZWQgb3V0IgorbXNnc3RyICInJXMnIG5vIHRpZW5lIHVuIGNvbW1pdCBjaGVja2VkIG91dCIKKworIzogcmVhZC1jYWNoZS5jOjc3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5kZXggZmlsZSAnJXMnIgorbXNnc3RyICJubyBlcyBwb3NpYmxlIGluZGV4YXIgYXJjaGl2byAnJXMnIgorCisjOiByZWFkLWNhY2hlLmM6Nzk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhZGQgJyVzJyB0byBpbmRleCIKK21zZ3N0ciAibm8gZXMgcG9zaWJsZSBhZ3JlZ2FyICclcycgYWwgaW5kZXgiCisKKyM6IHJlYWQtY2FjaGUuYzo4MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJyVzJyIKK21zZ3N0ciAiaW5jYXBheiBkZSBjb3JyZXIgc3RhdCBlbiAnJXMnIgorCisjOiByZWFkLWNhY2hlLmM6MTMzMAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGFwcGVhcnMgYXMgYm90aCBhIGZpbGUgYW5kIGFzIGEgZGlyZWN0b3J5IgorbXNnc3RyICInJXMnIHBhcmVjZSBzZXIgdW4gZGlyZWN0b3JpbyB5IHVuIGFyY2hpdm8gYSBsYSB2ZXoiCisKKyM6IHJlYWQtY2FjaGUuYzoxNTM2CiBtc2dpZCAiUmVmcmVzaCBpbmRleCIKIG1zZ3N0ciAiUmVmcmVzY2FyIGluZGV4IgogCi0jOiByZWFkLWNhY2hlLmM6MTYwNAorIzogcmVhZC1jYWNoZS5jOjE2NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImluZGV4LnZlcnNpb24gc2V0LCBidXQgdGhlIHZhbHVlIGlzIGludmFsaWQuXG4iCkBAIC0zNzIyLDcgKzUzOTYsNyBAQAogImluZGV4LnZlcnNpb24gY29uZmlndXJhZG8sIHBlcm8gZWwgdmFsb3Igbm8gZXMgdsOhbGlkby5cbiIKICJVc2FuZG8gdmVyc2nDs24gJWkiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNjE0CisjOiByZWFkLWNhY2hlLmM6MTY2MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiR0lUX0lOREVYX1ZFUlNJT04gc2V0LCBidXQgdGhlIHZhbHVlIGlzIGludmFsaWQuXG4iCkBAIC0zNzMxLDYwICs1NDA1LDE2MSBAQAogIkdJVF9JTkRFWF9WRVJTSU9OIGNvbmZpZ3VyYWRvLCBwZXJvIGVsIHZhbG9yIG5vIGVzIHbDoWxpZG8uXG4iCiAiVXNhbmRvIHZlcnNpw7NuICVpIgogCi0jOiByZWFkLWNhY2hlLmM6MTc5MgorIzogcmVhZC1jYWNoZS5jOjE3MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHNpZ25hdHVyZSAweCUwOHgiCittc2dzdHIgIm1hbGEgZmlybWEgMHglMDh4IgorCisjOiByZWFkLWNhY2hlLmM6MTcyMAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgaW5kZXggdmVyc2lvbiAlZCIKK21zZ3N0ciAibWFsYSB2ZXJzacOzbiBkZWwgw61uZGljZSAlZCIKKworIzogcmVhZC1jYWNoZS5jOjE3MjkKK21zZ2lkICJiYWQgaW5kZXggZmlsZSBzaGExIHNpZ25hdHVyZSIKK21zZ3N0ciAibWFsYSBmaXJtYSBzaGExIGRlbCBhcmNoaXZvIGluZGV4IgorCisjOiByZWFkLWNhY2hlLmM6MTc1OQorIywgYy1mb3JtYXQKK21zZ2lkICJpbmRleCB1c2VzICUuNHMgZXh0ZW5zaW9uLCB3aGljaCB3ZSBkbyBub3QgdW5kZXJzdGFuZCIKK21zZ3N0ciAiaW5kZXggdXNhICUuNHMgZXh0ZW5zaW9uZXMsIGNvc2EgcXVlIG5vIGVudGVuZGVtb3MiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzYxCisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICUuNHMgZXh0ZW5zaW9uIgorbXNnc3RyICJpZ25vcmFuZG8gZXh0ZW5zacOzbiAlLjRzIgorCisjOiByZWFkLWNhY2hlLmM6MTc5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGluZGV4IGVudHJ5IGZvcm1hdCAweCUwOHgiCittc2dzdHIgImZvcm1hdG8gZGUgaW5kZXggZGVzY29ub2NpZG8gMHglMDh4IgorCisjOiByZWFkLWNhY2hlLmM6MTgxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgbmFtZSBmaWVsZCBpbiB0aGUgaW5kZXgsIG5lYXIgcGF0aCAnJXMnIgogbXNnc3RyICJjYW1wbyBub21icmUgbWFsZm9ybWFkbyBlbiBlbCBpbmRleCwgY2VyY2EgYSBydXRhICclcyciCiAKLSM6IHJlYWQtY2FjaGUuYzoxOTYwIHJlcmVyZS5jOjU2NSByZXJlcmUuYzo1OTkgcmVyZXJlLmM6MTExMSBidWlsdGluL2FkZC5jOjQ1OAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjI4OSBidWlsdGluL2NoZWNrb3V0LmM6NTg1Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTUzIGJ1aWx0aW4vY2xlYW4uYzo5NTQgYnVpbHRpbi9jb21taXQuYzozNDMKLSM6IGJ1aWx0aW4vZGlmZi10cmVlLmM6MTE1IGJ1aWx0aW4vZ3JlcC5jOjQ4OSBidWlsdGluL212LmM6MTQ0Ci0jOiBidWlsdGluL3Jlc2V0LmM6MjQ0IGJ1aWx0aW4vcm0uYzoyNzAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjMyOQorIzogcmVhZC1jYWNoZS5jOjE4NzEKK21zZ2lkICJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBpbiBpbmRleCIKK21zZ3N0ciAiZW50cmFkYXMgZW4gc3RhZ2UgZGVzb3JkZW5hZGFzIGVuIGluZGV4IgorCisjOiByZWFkLWNhY2hlLmM6MTg3NAorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGFnZSBlbnRyaWVzIGZvciBtZXJnZWQgZmlsZSAnJXMnIgorbXNnc3RyICJtw7psdGlwbGVzIGVudHJhZGFzIGV4dHJhw7FhcyBwYXJhIGFyY2hpdm8gZnVzaW9uYWRvICclcyciCisKKyM6IHJlYWQtY2FjaGUuYzoxODc3CisjLCBjLWZvcm1hdAorbXNnaWQgInVub3JkZXJlZCBzdGFnZSBlbnRyaWVzIGZvciAnJXMnIgorbXNnc3RyICJlbnRyYWRhcyBkZSBzdGFnZSBkZXNvcmRlbmFkYXMgcGFyYSAnJXMnIgorCisjOiByZWFkLWNhY2hlLmM6MTk4MyByZWFkLWNhY2hlLmM6MjI3MSByZXJlcmUuYzo1NjUgcmVyZXJlLmM6NTk5IHJlcmVyZS5jOjExMTEKKyM6IHN1Ym1vZHVsZS5jOjE2MTkgYnVpbHRpbi9hZGQuYzo1MzIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NzAgYnVpbHRpbi9jaGVja291dC5jOjY1NiBidWlsdGluL2NsZWFuLmM6OTY3CisjOiBidWlsdGluL2NvbW1pdC5jOjM2NyBidWlsdGluL2RpZmYtdHJlZS5jOjEyMCBidWlsdGluL2dyZXAuYzo0ODUKKyM6IGJ1aWx0aW4vbXYuYzoxNDUgYnVpbHRpbi9yZXNldC5jOjI0NiBidWlsdGluL3JtLmM6MjkwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MzMyCiBtc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IgogbXNnc3RyICJhcmNoaXZvIMOtbmRpY2UgY29ycm9tcGlkbyIKIAotIzogcmVhZC1jYWNoZS5jOjIxMDEKKyM6IHJlYWQtY2FjaGUuYzoyMTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgY3JlYXIgaGlsbyBsb2FkX2NhY2hlX2VudHJpZXM6ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6MjExNAorIzogcmVhZC1jYWNoZS5jOjIxMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGpvaW4gbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgdW5pciBoaWxvIGxvYWRfY2FjaGVfZW50aXJlczogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzoyMjAxCisjOiByZWFkLWNhY2hlLmM6MjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW5kZXggZmlsZSBvcGVuIGZhaWxlZCIKK21zZ3N0ciAiJXM6IGZhbGzDsyBhbCBhYnJpciBlbCBhcmNoaXZvIGluZGV4IgorCisjOiByZWFkLWNhY2hlLmM6MjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2Fubm90IHN0YXQgdGhlIG9wZW4gaW5kZXgiCittc2dzdHIgIiVzOiBubyBzZSBwdWVkZSBoYWNlciBzdGF0IGRlbCBpbmRleCBhYmllcnRvIgorCisjOiByZWFkLWNhY2hlLmM6MjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW5kZXggZmlsZSBzbWFsbGVyIHRoYW4gZXhwZWN0ZWQiCittc2dzdHIgIiVzOiBhcmNoaXZvIGluZGV4IG3DoXMgcGVxdWXDsW8gZGUgbG8gZXNwZXJhZG8iCisKKyM6IHJlYWQtY2FjaGUuYzoyMTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gbWFwIGluZGV4IGZpbGUiCittc2dzdHIgIiVzOiBubyBzZSBwdWRvIG1hcGVhciBlbCBhcmNoaXZvIGluZGV4IgorCisjOiByZWFkLWNhY2hlLmM6MjIyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxvYWRfaW5kZXhfZXh0ZW5zaW9ucyB0aHJlYWQ6ICVzIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGNyZWFyIGhpbG8gbG9hZF9pbmRleF9leHRlbnNpb25zOiAlcyIKIAotIzogcmVhZC1jYWNoZS5jOjIyMjgKKyM6IHJlYWQtY2FjaGUuYzoyMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBqb2luIGxvYWRfaW5kZXhfZXh0ZW5zaW9ucyB0aHJlYWQ6ICVzIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIHVuaXIgaGlsbyBsb2FkX2luZGV4X2V4dGVuc2lvbnM6ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6Mjk4MiBzZXF1ZW5jZXIuYzo0NzI3IHdyYXBwZXIuYzo2NTggYnVpbHRpbi9tZXJnZS5jOjEwODYKKyM6IHJlYWQtY2FjaGUuYzoyMjgzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmcmVzaGVuIHNoYXJlZCBpbmRleCAnJXMnIgorbXNnc3RyICJubyBzZSBwdWRvIHJlZnJlc2NhciBlbCBpbmRleCBjb21wYXJ0aWRvICclcyciCisKKyM6IHJlYWQtY2FjaGUuYzoyMzMwCisjLCBjLWZvcm1hdAorbXNnaWQgImJyb2tlbiBpbmRleCwgZXhwZWN0ICVzIGluICVzLCBnb3QgJXMiCittc2dzdHIgImluZGV4IHJvdG8sIHNlIGVzcGVyYWJhICVzIGVuICVzLCBzZSBvYnR1dm8gJXMiCisKKyM6IHJlYWQtY2FjaGUuYzozMDI2IHN0cmJ1Zi5jOjExNjAgd3JhcHBlci5jOjYyMiBidWlsdGluL21lcmdlLmM6MTEyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY2xvc2UgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBjZXJyYXIgJyVzJyIKIAotIzogcmVhZC1jYWNoZS5jOjMwNTUgc2VxdWVuY2VyLmM6MjIwMyBzZXF1ZW5jZXIuYzozNTkyCisjOiByZWFkLWNhY2hlLmM6MzEyOSBzZXF1ZW5jZXIuYzoyMzQzIHNlcXVlbmNlci5jOjM5NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN0YXQgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBkZWZpbmlyICclcyciCiAKLSM6IHJlYWQtY2FjaGUuYzozMDY4CisjOiByZWFkLWNhY2hlLmM6MzE0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBnaXQgZGlyOiAlcyIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBhYnJpciBlbCBkaXJlY3RvcmlvIGRlIGdpdDogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzozMDgwCisjOiByZWFkLWNhY2hlLmM6MzE1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5saW5rOiAlcyIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBlbGltaW5hciBlbCB2aW5jdWxvOiAlcyIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTAKKyM6IHJlYWQtY2FjaGUuYzozMTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmaXggcGVybWlzc2lvbiBiaXRzIG9uICclcyciCittc2dzdHIgIm5vIHNlIHB1ZG8gYXJyZWdsYXIgYml0cyBkZSBwZXJtaXNvcyBlbiAnJXMnIgorCisjOiByZWFkLWNhY2hlLmM6MzMyOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2Fubm90IGRyb3AgdG8gc3RhZ2UgIzAiCittc2dzdHIgIiVzOiBubyBzZSBwdWVkZSBlbGltaW5hciBhIHN0YWdlICMwIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMQorbXNnaWQgIiIKKyJZb3UgY2FuIGZpeCB0aGlzIHdpdGggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLSIKKyJjb250aW51ZScuXG4iCisiT3IgeW91IGNhbiBhYm9ydCB0aGUgcmViYXNlIHdpdGggJ2dpdCByZWJhc2UgLS1hYm9ydCcuXG4iCittc2dzdHIgIiIKKyJTZSBwdWVkZSBhcnJlZ2xhciBlc3RvIGNvbiAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycgeSBkZXNwdcOpcyBlamVjdXRhICdnaXQgIgorInJlYmFzZSAtLWNvbnRpbnVlJy5cbiIKKyJPIHNlIHB1ZWRlIGFib3J0YXIgZWwgcmViYXNlIGNvbiAnZ2l0IHJlYmFzZSAtLWFib3J0Jy5cbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVucmVjb2duaXplZCBzZXR0aW5nICVzIGZvciBvcHRpb24gcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2suIElnbm9yaW5nLiIKK21zZ3N0ciAiIgorIm9wY2nDs24gJXMgbm8gcmVjb25vY2lkYSBwYXJhIGxhIG9wY2nDs24gcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2suIElnbm9yYW5kby4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQyCiBtc2dpZCAiIgogIlxuIgogIkNvbW1hbmRzOlxuIgpAQCAtMzgyNiw3ICs1NjAxLDE0IEBACiAiRXN0YXMgbMOtbmVhcyBwdWVkZW4gc2VyIHJlb3JkZW5hZGFzOyBzb24gZWplY3V0YWRhcyBkZXNkZSBhcnJpYmEgaGFjaWEgIgogImFiYWpvLlxuIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzozMSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTczCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZCkiCittc2dpZF9wbHVyYWwgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kcykiCittc2dzdHJbMF0gIlJlYmFzZSAlcyBlbiAlcyAoJWQgY29tYW5kbykiCittc2dzdHJbMV0gIlJlYmFzZSAlcyBlbiAlcyAoJWQgY29tYW5kb3MpIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3MiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjI4CiBtc2dpZCAiIgogIlxuIgogIkRvIG5vdCByZW1vdmUgYW55IGxpbmUuIFVzZSAnZHJvcCcgZXhwbGljaXRseSB0byByZW1vdmUgYSBjb21taXQuXG4iCkBAIC0zODM0LDE1ICs1NjE2LDE1IEBACiAiXG4iCiAiTm8gZWxpbWluYXIgbmluZ3VuYSBsw61uZWEuIFVzYSAnZHJvcCcgZXhwbMOtY2l0YW1lbnRlIHBhcmEgYm9ycmFyIHVuIGNvbW1pdCBcbiIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6MzQgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE3NworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NzUgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIzMgogbXNnaWQgIiIKICJcbiIKICJJZiB5b3UgcmVtb3ZlIGEgbGluZSBoZXJlIFRIQVQgQ09NTUlUIFdJTEwgQkUgTE9TVC5cbiIKIG1zZ3N0ciAiIgogIlxuIgotIlNpIHJlbXVldmVzIHVuYSBsw61uZWEgYXF1w60gRUwgQ09NTUlUIFNFIFBFUkRFUsOBLlxuIgorIlNpIGVsaW1pbmFzIHVuYSBsw61uZWEgYXF1w60gRUwgQ09NTUlUIFNFIFBFUkRFUsOBLlxuIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo0MCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODE2CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo4MSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODcxCiBtc2dpZCAiIgogIlxuIgogIllvdSBhcmUgZWRpdGluZyB0aGUgdG9kbyBmaWxlIG9mIGFuIG9uZ29pbmcgaW50ZXJhY3RpdmUgcmViYXNlLlxuIgpAQCAtMzg1MSwxMiArNTYzMywxMiBAQAogIlxuIgogbXNnc3RyICIiCiAiXG4iCi0iRXN0YSBlZGl0YW5kbyBlbCBhcmNoaXZvIFRPRE8gZGUgdW4gcmViYXNlIGludGVyYWN0aXZvLlxuIgotIlBhcmEgY29udGludWFyIGVsIHJlYmFzZSBkZXNwdcOpcyBkZSBlZGl0YXIsIGVqZWN1dGU6XG4iCisiRXN0w6FzIGVkaXRhbmRvIGVsIGFyY2hpdm8gVE9ETyBkZSB1biByZWJhc2UgaW50ZXJhY3Rpdm8uXG4iCisiUGFyYSBjb250aW51YXIgZWwgcmViYXNlIGRlc3B1w6lzIGRlIGVkaXRhciwgZWplY3V0YTpcbiIKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAiXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQ1IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4OTMKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjg2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDgKIG1zZ2lkICIiCiAiXG4iCiAiSG93ZXZlciwgaWYgeW91IHJlbW92ZSBldmVyeXRoaW5nLCB0aGUgcmViYXNlIHdpbGwgYmUgYWJvcnRlZC5cbiIKQEAgLTM4NjYsMTI1ICs1NjQ4LDE2MSBAQAogIkNvbW8gc2VhLCBzaSBxdWllcmVzIGJvcnJhciB0b2RvLCBlbCByZWJhc2Ugc2Vyw6EgYWJvcnRhZG8uXG4iCiAiXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjUxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDAKLW1zZ2lkICJOb3RlIHRoYXQgZW1wdHkgY29tbWl0cyBhcmUgY29tbWVudGVkIG91dCIKLW1zZ3N0ciAiVGVuZ2EgZW4gY3VlbnRhIHF1ZSBsb3MgY29tbWl0cyB2YWPDrW9zIGVzdMOhbiBjb21lbnRhZG9zIgorIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTEwIHJlcmVyZS5jOjQ4NSByZXJlcmUuYzo2OTIgc2VxdWVuY2VyLmM6MzQ0NAorIzogc2VxdWVuY2VyLmM6MzQ3MCBzZXF1ZW5jZXIuYzo1MTI1IGJ1aWx0aW4vZnNjay5jOjM0NiBidWlsdGluL3JlYmFzZS5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVkbyBlc2NyaWJpciAnJXMnIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo2MiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3NSBzZXF1ZW5jZXIuYzoyMTg2Ci0jOiBzZXF1ZW5jZXIuYzo0NTA1IHNlcXVlbmNlci5jOjQ1NjEgc2VxdWVuY2VyLmM6NDgzNgorIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTE2IGJ1aWx0aW4vcmViYXNlLmM6MTg0IGJ1aWx0aW4vcmViYXNlLmM6MjEwCisjOiBidWlsdGluL3JlYmFzZS5jOjIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJy4iCittc2dzdHIgIm5vIHNlIHB1ZG8gZXNjcmliaXIgJyVzJy4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCisiRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCittc2dzdHIgIiIKKyJQZWxpZ3JvOiBhbGd1bm9zIGNvbW1pdHMgcHVlZGVuIGhhYmVyIHNpZG8gYm90YWRvcyBkZSBmb3JtYSBhY2NpZGVudGFsLlxuIgorIkNvbW1pdHMgYm90YWRvcyAoZW1wZXphbmRvIGNvbiBlbCBtw6FzIG51ZXZvKTpcbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUbyBhdm9pZCB0aGlzIG1lc3NhZ2UsIHVzZSBcImRyb3BcIiB0byBleHBsaWNpdGx5IHJlbW92ZSBhIGNvbW1pdC5cbiIKKyJcbiIKKyJVc2UgJ2dpdCBjb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2snIHRvIGNoYW5nZSB0aGUgbGV2ZWwgb2YgIgorIndhcm5pbmdzLlxuIgorIlRoZSBwb3NzaWJsZSBiZWhhdmlvdXJzIGFyZTogaWdub3JlLCB3YXJuLCBlcnJvci5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBhcmEgZXZpdGFyIGVzdGUgbWVuc2FqZSwgdXNlIFwiZHJvcFwiIHBhcmEgZWxpbWluYXIgZGUgZm9ybWEgZXhwbMOtY2l0YSB1biAiCisiY29tbWl0LlxuIgorIlxuIgorIlVzZSAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgcGFyYSBjYW1iaWFyIGVsIG5pdmVsIGRlICIKKyJhZHZlcnRlbmNpYXMuXG4iCisiTG9zIHBvc2libGVzIGNvbXBvcnRhbWllbnRvcyBzb246IGlnbm9yZSx3YXJuLGVycm9yLlxuIgorIlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoyMzMgcmViYXNlLWludGVyYWN0aXZlLmM6MjM4IHNlcXVlbmNlci5jOjIyNjIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTcwIGJ1aWx0aW4vcmViYXNlLmM6MTk1IGJ1aWx0aW4vcmViYXNlLmM6MjIxCisjOiBidWlsdGluL3JlYmFzZS5jOjI0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCAnJXMnLiIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgbGVlciAnJXMnLiIKIAotIzogcmVmcy5jOjE5MgorIzogcmVmcy5jOjI2MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBkb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIG9iamVjdCEiCi1tc2dzdHIgIiVzIG5vIGFwdW50YSBhIG5pbmfDum4gb2JqZXRvIHbDoWxpZG8hIgorbXNnc3RyICLCoSVzIG5vIGFwdW50YSBhIG5pbmfDum4gb2JqZXRvIHbDoWxpZG8hIgogCi0jOiByZWZzLmM6NTgzCisjOiByZWZzLmM6NjY3CiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIGRhbmdsaW5nIHN5bXJlZiAlcyIKIG1zZ3N0ciAiaWdub3JhbmRvIHJlZmVyZW5jaWEgcm90YSAlcyIKIAotIzogcmVmcy5jOjU4NSByZWYtZmlsdGVyLmM6MTk1MQorIzogcmVmcy5jOjY2OSByZWYtZmlsdGVyLmM6MjA5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyBicm9rZW4gcmVmICVzIgogbXNnc3RyICJpZ25vcmFuZG8gcmVmZXJlbmNpYSByb3RhICVzIgogCi0jOiByZWZzLmM6NzExCisjOiByZWZzLmM6ODA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmc6ICVzIgogbXNnc3RyICJubyBzZSBwdWRvIGFicmlyICclcycgcGFyYSBlc2NyaXR1cmE6ICVzIgogCi0jOiByZWZzLmM6NzIxIHJlZnMuYzo3NzIKKyM6IHJlZnMuYzo4MTQgcmVmcy5jOjg2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCByZWYgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBsZWVyIGxhIHJlZmVyZW5jaWEgJyVzJyIKIAotIzogcmVmcy5jOjcyNworIzogcmVmcy5jOjgyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWYgJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAicmVmICclcycgeWEgZXhpc3RlIgogCi0jOiByZWZzLmM6NzMyCisjOiByZWZzLmM6ODI1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgb2JqZWN0IElEIHdoZW4gd3JpdGluZyAnJXMnIgotbXNnc3RyICJJRCBkZSBvYmplY3RvIGluZXNwZXJhZG8gY3VhbmRvIHNlIGVzY3JpYsOtYSAnJXMnIgorbXNnc3RyICJJRCBkZSBvYmplY3RvIGluZXNwZXJhZG8gYWwgZXNjcmliaXIgJyVzJyIKIAotIzogcmVmcy5jOjc0MCBzZXF1ZW5jZXIuYzozOTQgc2VxdWVuY2VyLmM6MjUxMCBzZXF1ZW5jZXIuYzoyNjM2Ci0jOiBzZXF1ZW5jZXIuYzoyNjUwIHNlcXVlbmNlci5jOjI4Nzcgc2VxdWVuY2VyLmM6NDcyNSBzZXF1ZW5jZXIuYzo0Nzg4Ci0jOiB3cmFwcGVyLmM6NjU2CisjOiByZWZzLmM6ODMzIHNlcXVlbmNlci5jOjQwNyBzZXF1ZW5jZXIuYzoyNzAxIHNlcXVlbmNlci5jOjI5MDUKKyM6IHNlcXVlbmNlci5jOjI5MTkgc2VxdWVuY2VyLmM6MzE3NyBzZXF1ZW5jZXIuYzo1MDM2IHN0cmJ1Zi5jOjExNTcKKyM6IHdyYXBwZXIuYzo2MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIHRvICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gZXNjcmliaXIgZW4gJyVzJyIKIAotIzogcmVmcy5jOjc2NyBzZXF1ZW5jZXIuYzo0NzIzIHNlcXVlbmNlci5jOjQ3ODIgd3JhcHBlci5jOjIyNSB3cmFwcGVyLmM6Mzk1Ci0jOiBidWlsdGluL2FtLmM6NzI4CisjOiByZWZzLmM6ODYwIHN0cmJ1Zi5jOjExNTUgd3JhcHBlci5jOjE4OCB3cmFwcGVyLmM6MzU4IGJ1aWx0aW4vYW0uYzo3MTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTAyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nIgogbXNnc3RyICJubyBzZSBwdWRvIGFicmlyICclcycgcGFyYSBlc2NyaXR1cmEiCiAKLSM6IHJlZnMuYzo3NzQKKyM6IHJlZnMuYzo4NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBvYmplY3QgSUQgd2hlbiBkZWxldGluZyAnJXMnIgotbXNnc3RyICJJRCBkZSBvYmplY3RvIGluZXNwZXJhZG8gY3VhbmRvIHNlIGJvcnJhYmEgJyVzJyIKK21zZ3N0ciAiSUQgZGUgb2JqZWN0byBpbmVzcGVyYWRvIGFsIGJvcnJhciAnJXMnIgogCi0jOiByZWZzLmM6OTA1CisjOiByZWZzLmM6OTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvZyBmb3IgcmVmICVzIGhhcyBnYXAgYWZ0ZXIgJXMiCiBtc2dzdHIgImxvZyBkZSByZWYgJXMgdGllbmUgdW4gdmFjw61vIHRyYXMgJXMiCiAKLSM6IHJlZnMuYzo5MTEKKyM6IHJlZnMuYzoxMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvZyBmb3IgcmVmICVzIHVuZXhwZWN0ZWRseSBlbmRlZCBvbiAlcyIKIG1zZ3N0ciAibG9nIGRlIHJlZiAlcyBmaW5hbGl6YWRvIGluZXNwZXJhZGFtZW50ZSBlbiAlcyIKIAotIzogcmVmcy5jOjk2OQorIzogcmVmcy5jOjEwNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9nIGZvciAlcyBpcyBlbXB0eSIKIG1zZ3N0ciAibG9nIGRlICVzIGVzdMOhIHZhY8OtbyIKIAotIzogcmVmcy5jOjEwNjEKKyM6IHJlZnMuYzoxMTU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZnVzaW5nIHRvIHVwZGF0ZSByZWYgd2l0aCBiYWQgbmFtZSAnJXMnIgogbXNnc3RyICJyZWh1c2FuZG8gYWN0dWFsaXphciByZWYgY29uIG1hbCBub21icmUgJyVzJyIKIAotIzogcmVmcy5jOjExMzcKKyM6IHJlZnMuYzoxMjMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVwZGF0ZV9yZWYgZmFpbGVkIGZvciByZWYgJyVzJzogJXMiCiBtc2dzdHIgInVwZGF0ZV9yZWYgZmFsbMOzIHBhcmEgcmVmICclcyc6ICVzIgogCi0jOiByZWZzLmM6MTkxMQorIzogcmVmcy5jOjIwMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGlwbGUgdXBkYXRlcyBmb3IgcmVmICclcycgbm90IGFsbG93ZWQiCiBtc2dzdHIgIm3Dumx0aXBsZXMgYWN0dWFsaXphY2lvbmVzIHBhcmEgcmVmICclcycgbm8gcGVybWl0aWRhcyIKIAotIzogcmVmcy5jOjE5NDMKKyM6IHJlZnMuYzoyMDU1CiBtc2dpZCAicmVmIHVwZGF0ZXMgZm9yYmlkZGVuIGluc2lkZSBxdWFyYW50aW5lIGVudmlyb25tZW50IgogbXNnc3RyICJhY3R1YWxpemFjaW9uZXMgZGUgcmVmIHByb2hpYmlkYXMgZGVudHJvIGRlIGFtYmllbnRlIGRlIGN1YXJlbnRlbmEiCiAKLSM6IHJlZnMuYzoyMDM5IHJlZnMuYzoyMDY5CisjOiByZWZzLmM6MjE1MSByZWZzLmM6MjE4MQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGV4aXN0czsgY2Fubm90IGNyZWF0ZSAnJXMnIgogbXNnc3RyICInJXMnIGV4aXN0ZTsgbm8gc2UgcHVlZGUgY3JlYXIgJyVzJyIKIAotIzogcmVmcy5jOjIwNDUgcmVmcy5jOjIwODAKKyM6IHJlZnMuYzoyMTU3IHJlZnMuYzoyMTkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBwcm9jZXNzICclcycgYW5kICclcycgYXQgdGhlIHNhbWUgdGltZSIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgcHJvY2VzYXIgJyVzJyB5ICclcycgYWwgbWlzbW8gdGllbXBvIgogCi0jOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjI4CisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgcmVmZXJlbmNlICVzIgogbXNnc3RyICJubyBzZSBwdWRvIGVsaW1pbmFyIGxhIHJlZmVyZW5jaWEgJXMiCiAKLSM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDIgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1MzIKLSM6IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQyCisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjQ3IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQxCisjOiByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZGVsZXRlIHJlZmVyZW5jZSAlczogJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gZWxpbWluYXIgbGEgcmVmZXJlbmNpYSAlczogJXMiCiAKLSM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDUgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NDUKKyM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNTAgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGRlbGV0ZSByZWZlcmVuY2VzOiAlcyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBlbGltaW5hciBsYSByZWZlcmVuY2lhOiAlcyIKQEAgLTM5OTQsMzUwICs1ODEyLDQ4NSBAQAogbXNnaWQgImludmFsaWQgcmVmc3BlYyAnJXMnIgogbXNnc3RyICJyZWZzcGVjIGludsOhbGlkbzogJyVzJyIKIAotIzogcmVmLWZpbHRlci5jOjM5IHd0LXN0YXR1cy5jOjE4NTUKKyM6IHJlZi1maWx0ZXIuYzo0MiB3dC1zdGF0dXMuYzoxOTM4CiBtc2dpZCAiZ29uZSIKIG1zZ3N0ciAiZGVzYXBhcmVjaWRvIgogCi0jOiByZWYtZmlsdGVyLmM6NDAKKyM6IHJlZi1maWx0ZXIuYzo0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhaGVhZCAlZCIKIG1zZ3N0ciAiYWRlbGFudGUgJWQiCiAKLSM6IHJlZi1maWx0ZXIuYzo0MQorIzogcmVmLWZpbHRlci5jOjQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJlaGluZCAlZCIKIG1zZ3N0ciAiZGV0csOhcyAlZCIKIAotIzogcmVmLWZpbHRlci5jOjQyCisjOiByZWYtZmlsdGVyLmM6NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWhlYWQgJWQsIGJlaGluZCAlZCIKIG1zZ3N0ciAiZGVsYW50ZSAlZCwgZGV0csOhcyAlZCIKIAotIzogcmVmLWZpbHRlci5jOjEzOAorIzogcmVmLWZpbHRlci5jOjE2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBmb3JtYXQ6ICUlKGNvbG9yOjxjb2xvcj4pIgogbXNnc3RyICJmb3JtYXRvIGVzcGVyYWRvOiAlJShjb2xvcjo8Y29sb3I+KSIKIAotIzogcmVmLWZpbHRlci5jOjE0MAorIzogcmVmLWZpbHRlci5jOjE2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgY29sb3I6ICUlKGNvbG9yOiVzKSIKIG1zZ3N0ciAiY29sb3Igbm8gcmVjb25vY2lkbzogJSUoY29sb3I6JXMpIgogCi0jOiByZWYtZmlsdGVyLmM6MTYyCisjOiByZWYtZmlsdGVyLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludGVnZXIgdmFsdWUgZXhwZWN0ZWQgcmVmbmFtZTpsc3RyaXA9JXMiCiBtc2dzdHIgIlZhbG9yIGVudGVybyBlc3BlcmFkbyByZWZuYW1lOmxzdHJpcD0lcyIKIAotIzogcmVmLWZpbHRlci5jOjE2NgorIzogcmVmLWZpbHRlci5jOjE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6cnN0cmlwPSVzIgogbXNnc3RyICJWYWxvciBlbnRlcm8gZXNwZXJhZG8gcmVmbmFtZTpyc3RyaXA9JXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNjgKKyM6IHJlZi1maWx0ZXIuYzoxOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKCVzKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgImFyZ3VtZW50bzogJXMgbm8gcmVjb25vY2lkbyAlJSglcykiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMjMKKyM6IHJlZi1maWx0ZXIuYzoyNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJSUob2JqZWN0dHlwZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCiBtc2dzdHIgIiUlKG9iamVjdHR5cGUpIG5vIHRvbWEgbmluZ8O6biBhcmd1bWVudG8iCiAKLSM6IHJlZi1maWx0ZXIuYzoyMzUKKyM6IHJlZi1maWx0ZXIuYzoyNzIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJSUob2JqZWN0c2l6ZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCi1tc2dzdHIgIiUlKG9iamVjdHNpemUpIG5vIHRvbWEgYXJndW1lbnRvcyIKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUob2JqZWN0c2l6ZSkgYXJndW1lbnQ6ICVzIgorbXNnc3RyICIlJShvYmplY3RzaXplKSBubyByZWNvbm9jaWRvIGFyZ3VtZW50bzogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoyNDcKKyM6IHJlZi1maWx0ZXIuYzoyODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJSUoZGVsdGFiYXNlKSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKK21zZ3N0ciAiJSUoZGVsdGFiYXNlKSBubyB0b21hIGFyZ3VtZW50b3MiCisKKyM6IHJlZi1maWx0ZXIuYzoyOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJSUoYm9keSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCiBtc2dzdHIgIiUlKGJvZHkpIG5vIHRvbWEgbmluZ8O6biBhcmd1bWVudG8iCiAKLSM6IHJlZi1maWx0ZXIuYzoyNTYKKyM6IHJlZi1maWx0ZXIuYzozMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJSUoc3ViamVjdCkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCiBtc2dzdHIgIiUlKHN1YmplY3QpIG5vIHRvbWEgbmluZ8O6biBhcmd1bWVudG8iCiAKLSM6IHJlZi1maWx0ZXIuYzoyNzgKKyM6IHJlZi1maWx0ZXIuYzozMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biAlJSh0cmFpbGVycykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICIlJSh0cmFpbGVycykgZGVzY29ub2NpZG9zLCBhcmd1bWVudG86ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzA3CisjOiByZWYtZmlsdGVyLmM6MzUyCiAjLCBjLWZvcm1hdAogbXNnaWQgInBvc2l0aXZlIHZhbHVlIGV4cGVjdGVkIGNvbnRlbnRzOmxpbmVzPSVzIgogbXNnc3RyICJ2YWxvciBwb3NpdGl2byBlc3BlcmFkbyBjb250ZW50czpsaW5lcz0lcyIKIAotIzogcmVmLWZpbHRlci5jOjMwOQorIzogcmVmLWZpbHRlci5jOjM1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUoY29udGVudHMpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAiYXJndW1lbnRvICVzIG5vIHJlY29ub2NpZG8gJSUoY29udGVudHMpIgogCi0jOiByZWYtZmlsdGVyLmM6MzI0CisjOiByZWYtZmlsdGVyLmM6MzY5CiAjLCBjLWZvcm1hdAogbXNnaWQgInBvc2l0aXZlIHZhbHVlIGV4cGVjdGVkIG9iamVjdG5hbWU6c2hvcnQ9JXMiCiBtc2dzdHIgInZhbG9yIHBvc2l0aXZvIGVzcGVyYWRvIG9iamVjdG5hbWU6c2hvcnQ9JXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozMjgKKyM6IHJlZi1maWx0ZXIuYzozNzMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKG9iamVjdG5hbWUpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAiYXJndW1lbnRvOiAlcyBubyByZWNvbm9jaWRvICUlKG9iamVjdG5hbWUpIgogCi0jOiByZWYtZmlsdGVyLmM6MzU4CisjOiByZWYtZmlsdGVyLmM6NDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIGZvcm1hdDogJSUoYWxpZ246PHdpZHRoPiw8cG9zaXRpb24+KSIKIG1zZ3N0ciAiZm9ybWF0byBlc3BlcmFkbzogJSUoYWxpZ246PGFuY2hvPiw8cG9zaWNpw7NuPikiCiAKLSM6IHJlZi1maWx0ZXIuYzozNzAKKyM6IHJlZi1maWx0ZXIuYzo0MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIHBvc2l0aW9uOiVzIgogbXNnc3RyICJwb3NpY2nDs24gZGVzY29ub2NpZGE6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6Mzc3CisjOiByZWYtZmlsdGVyLmM6NDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCB3aWR0aDolcyIKIG1zZ3N0ciAiYW5jaG8gZGVzY29ub2NpZG86ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6Mzg2CisjOiByZWYtZmlsdGVyLmM6NDMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShhbGlnbikgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJhcmd1bWVudG8gbm8gcmVjb25vY2lkbyBwYXJhICUlKGFsaWduKTogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozOTQKKyM6IHJlZi1maWx0ZXIuYzo0MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAicG9zaXRpdmUgd2lkdGggZXhwZWN0ZWQgd2l0aCB0aGUgJSUoYWxpZ24pIGF0b20iCiBtc2dzdHIgInNlIGVzcGVyYWJhIHVuIGFuY2hvIHBvc2l0aXZvIGNvbiBlbCDDoXRvbW8gJSUoYWxpZ24pIgogCi0jOiByZWYtZmlsdGVyLmM6NDEyCisjOiByZWYtZmlsdGVyLmM6NDU3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShpZikgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJhcmd1bWVudG86ICVzIG5vIHJlY29ub2NpZG8gJSUoaWYpIgogCi0jOiByZWYtZmlsdGVyLmM6NTA4CisjOiByZWYtZmlsdGVyLmM6NTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBmaWVsZCBuYW1lOiAlLipzIgogbXNnc3RyICJub21icmUgbWFsIGZvcm1hZG8gZGUgY2FtcG86ICUuKnMiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MzUKKyM6IHJlZi1maWx0ZXIuYzo1ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBmaWVsZCBuYW1lOiAlLipzIgogbXNnc3RyICJub21icmUgZGUgY2FtcG8gZGVzY29ub2NpZG86ICUuKnMiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MzkKKyM6IHJlZi1maWx0ZXIuYzo1OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdCBhIGdpdCByZXBvc2l0b3J5LCBidXQgdGhlIGZpZWxkICclLipzJyByZXF1aXJlcyBhY2Nlc3MgdG8gb2JqZWN0IGRhdGEiCiBtc2dzdHIgIiIKICJubyBlcyB1biByZXBvc2l0b3JpbyBnaXQsIHBlcm8gZWwgY2FtcG8gJyUuKnMnIHJlcXVpZXJlIGFjY2VzbyBhbCBvYmpldG8gZGF0YSIKIAotIzogcmVmLWZpbHRlci5jOjY2MworIzogcmVmLWZpbHRlci5jOjcxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGlmKSBhdG9tIHVzZWQgd2l0aG91dCBhICUlKHRoZW4pIGF0b20iCiBtc2dzdHIgImZvcm1hdG86IMOhdG9tbyAlJShpZikgdXNhZG8gc2luIHVuIMOhdG9tbyAlJSh0aGVuKSIKIAotIzogcmVmLWZpbHRlci5jOjcyNgorIzogcmVmLWZpbHRlci5jOjc3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKHRoZW4pIGF0b20gdXNlZCB3aXRob3V0IGFuICUlKGlmKSBhdG9tIgogbXNnc3RyICJmb3JtYXRvOiDDoXRvbW8gJSUodGhlbikgdXNhZG8gc2luIMOhdG9tbyAlJShpZikiCiAKLSM6IHJlZi1maWx0ZXIuYzo3MjgKKyM6IHJlZi1maWx0ZXIuYzo3NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgbW9yZSB0aGFuIG9uY2UiCi1tc2dzdHIgImZvcm1hdG86IMOhdG9tbyAlJSh0aGVuKSB1c2FkbyBtYXMgZGUgdW5hIHZleiIKK21zZ3N0ciAiZm9ybWF0bzogw6F0b21vICUlKHRoZW4pIHVzYWRvIG3DoXMgZGUgdW5hIHZleiIKIAotIzogcmVmLWZpbHRlci5jOjczMAorIzogcmVmLWZpbHRlci5jOjc4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKHRoZW4pIGF0b20gdXNlZCBhZnRlciAlJShlbHNlKSIKIG1zZ3N0ciAiZm9ybWF0bzogw6F0b21vICUlKHRoZW4pIHVzYWRvIGRlc3B1w6lzIGRlICUlKGVsc2UpIgogCi0jOiByZWYtZmlsdGVyLmM6NzU4CisjOiByZWYtZmlsdGVyLmM6ODA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIHdpdGhvdXQgYW4gJSUoaWYpIGF0b20iCiBtc2dzdHIgImZvcm1hdG86IMOhdG9tbyAlJShlbHNlKSB1c2FkbyBzaW4gdW4gw6F0b21vICUlKGlmKSIKIAotIzogcmVmLWZpbHRlci5jOjc2MAorIzogcmVmLWZpbHRlci5jOjgxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCB3aXRob3V0IGEgJSUodGhlbikgYXRvbSIKIG1zZ3N0ciAiZm9ybWF0bzogw6F0b21vICUlKGVsc2UpIHVzYWRvIHNpbiB1biDDoXRvbW8gJSUodGhlbikiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NjIKKyM6IHJlZi1maWx0ZXIuYzo4MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgbW9yZSB0aGFuIG9uY2UiCi1tc2dzdHIgImZvcm1hdG86IMOhdG9tbyAlJShlbHNlKSB1c2FkbyBtYXMgZGUgdW5hIHZleiIKK21zZ3N0ciAiZm9ybWF0bzogw6F0b21vICUlKGVsc2UpIHVzYWRvIG3DoXMgZGUgdW5hIHZleiIKIAotIzogcmVmLWZpbHRlci5jOjc3NworIzogcmVmLWZpbHRlci5jOjgyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVuZCkgYXRvbSB1c2VkIHdpdGhvdXQgY29ycmVzcG9uZGluZyBhdG9tIgogbXNnc3RyICJmb3JtYXRvOiDDoXRvbW8gJSUoZW5kKSB1c2FkbyBzaW4gw6F0b21vIGNvcnJlc3BvbmRpZW50ZSIKIAotIzogcmVmLWZpbHRlci5jOjgzNAorIzogcmVmLWZpbHRlci5jOjg4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgZm9ybWF0IHN0cmluZyAlcyIKIG1zZ3N0ciAiZm9ybWF0byBkZSBjYWRlbmEgbWFsIGZvcm1hZG8gJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDI0CisjOiByZWYtZmlsdGVyLmM6MTQ4OAogIywgYy1mb3JtYXQKLW1zZ2lkICIobm8gYnJhbmNoLCByZWJhc2luZyAlcykiCi1tc2dzdHIgIihubyBoYXkgcmFtYSwgcmViYXNhbmRvICVzKSIKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nICVzIgorbXNnc3RyICJubyBoYXkgcmFtYSwgcmViYXNhbmRvICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTQyNworIzogcmVmLWZpbHRlci5jOjE0OTEKICMsIGMtZm9ybWF0Ci1tc2dpZCAiKG5vIGJyYW5jaCwgcmViYXNpbmcgZGV0YWNoZWQgSEVBRCAlcykiCi1tc2dzdHIgIihubyBoYXkgcmFtYSwgcmViYXNhbmRvIGNvbiBIRUFEIGRlc2Fjb3BsYWRvICVzKSIKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nIGRldGFjaGVkIEhFQUQgJXMiCittc2dzdHIgIihvIGhheSByYW1hLCByZWJhc2FuZG8gY29uIEhFQUQgZGVzYWNvcGxhZG8gJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDMwCisjOiByZWYtZmlsdGVyLmM6MTQ5NAogIywgYy1mb3JtYXQKLW1zZ2lkICIobm8gYnJhbmNoLCBiaXNlY3Qgc3RhcnRlZCBvbiAlcykiCi1tc2dzdHIgIihubyBoYXkgcmFtYSwgY29tZW56YW5kbyBiaXNlY2PDs24gZW4gICVzKSIKK21zZ2lkICJubyBicmFuY2gsIGJpc2VjdCBzdGFydGVkIG9uICVzIgorbXNnc3RyICJubyBoYXkgcmFtYSwgY29tZW56YW5kbyBiaXNlY2PDs24gZW4gICVzIgogCi0jLiBUUkFOU0xBVE9SUzogbWFrZSBzdXJlIHRoaXMgbWF0Y2hlcyAiSEVBRAotIy4gZGV0YWNoZWQgYXQgIiBpbiB3dC1zdGF0dXMuYwotIy4KLSM6IHJlZi1maWx0ZXIuYzoxNDM4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIihIRUFEIGRldGFjaGVkIGF0ICVzKSIKLW1zZ3N0ciAiKEhFQUQgZGVzYWNvcGxhZG8gZW4gJXMpIgorIzogcmVmLWZpbHRlci5jOjE1MDQKK21zZ2lkICJubyBicmFuY2giCittc2dzdHIgInNpbiByYW1hIgogCi0jLiBUUkFOU0xBVE9SUzogbWFrZSBzdXJlIHRoaXMgbWF0Y2hlcyAiSEVBRAotIy4gZGV0YWNoZWQgZnJvbSAiIGluIHd0LXN0YXR1cy5jCi0jLgotIzogcmVmLWZpbHRlci5jOjE0NDUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiKEhFQUQgZGV0YWNoZWQgZnJvbSAlcykiCi1tc2dzdHIgIihIRUFEIGRlc2Fjb3BsYWRvIGRlICVzKSIKLQotIzogcmVmLWZpbHRlci5jOjE0NDkKLW1zZ2lkICIobm8gYnJhbmNoKSIKLW1zZ3N0ciAiKHNpbiByYW1hKSIKLQotIzogcmVmLWZpbHRlci5jOjE0ODMgcmVmLWZpbHRlci5jOjE2MzgKKyM6IHJlZi1maWx0ZXIuYzoxNTQwIHJlZi1maWx0ZXIuYzoxNzQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3Npbmcgb2JqZWN0ICVzIGZvciAlcyIKIG1zZ3N0ciAiZmFsdGEgb2JqZXRvICVzIHBhcmEgJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDkxCisjOiByZWYtZmlsdGVyLmM6MTU1MAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXJzZV9vYmplY3RfYnVmZmVyIGZhaWxlZCBvbiAlcyBmb3IgJXMiCiBtc2dzdHIgInBhcnNlX29iamVjdF9idWZmZXIgZmFsbMOzIGVuICVzIHBhcmEgJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxODU3CisjOiByZWYtZmlsdGVyLmM6MjAwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IGF0ICclcyciCiBtc2dzdHIgIm9iamV0byBtYWwgZm9ybWFkbyBlbiAnJXMnIgogCi0jOiByZWYtZmlsdGVyLmM6MTk0NgorIzogcmVmLWZpbHRlci5jOjIwOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgcmVmIHdpdGggYnJva2VuIG5hbWUgJXMiCiBtc2dzdHIgImlnbm9yYW5kbyByZWZlcmVuY2lhIGNvbiBub21icmUgcm90byAlcyIKIAotIzogcmVmLWZpbHRlci5jOjIyMzIKKyM6IHJlZi1maWx0ZXIuYzoyMzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZW5kKSBhdG9tIG1pc3NpbmciCiBtc2dzdHIgImZvcm1hdG86IGZhbHRhIMOhdG9tbyAlJShlbmQpIgogCi0jOiByZWYtZmlsdGVyLmM6MjMzOAorIzogcmVmLWZpbHRlci5jOjI0ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1tZXJnZWQiCittc2dzdHIgIm9wY2nDs24gYCVzJyBlcyBpbmNvbXBhdGlibGUgY29uIC0tbWVyZ2VkIgorCisjOiByZWYtZmlsdGVyLmM6MjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW5vLW1lcmdlZCIKK21zZ3N0ciAib3BjacOzbiBgJXMnIGVzIGluY29tcGF0aWJsZSBjb24gLS1uby1tZXJnZWQiCisKKyM6IHJlZi1maWx0ZXIuYzoyNTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAlcyIKIG1zZ3N0ciAibm9tYnJlIGRlIG9iamV0byBtYWwgZm9ybWFkbyAlcyIKIAotIzogcmVtb3RlLmM6NjA3CisjOiByZWYtZmlsdGVyLmM6MjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBtdXN0IHBvaW50IHRvIGEgY29tbWl0IgorbXNnc3RyICJvcGNpw7NuICclcycgZGViZSBhcHVudGFyIGEgdW4gY29tbWl0IgorCisjOiByZW1vdGUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlnIHJlbW90ZSBzaG9ydGhhbmQgY2Fubm90IGJlZ2luIHdpdGggJy8nOiAlcyIKK21zZ3N0ciAiY29uZmlnIHJlbW90ZSBzaG9ydGhhbmQgbm8gcHVlZGUgY29tZW56YXIgY29uICcvJzogJXMiCisKKyM6IHJlbW90ZS5jOjQxNAorbXNnaWQgIm1vcmUgdGhhbiBvbmUgcmVjZWl2ZXBhY2sgZ2l2ZW4sIHVzaW5nIHRoZSBmaXJzdCIKK21zZ3N0ciAibcOhcyBkZSB1biByZWNlaXZlcGFjayBkYWRvLCB1c2FuZG8gZWwgcHJpbWVybyIKKworIzogcmVtb3RlLmM6NDIyCittc2dpZCAibW9yZSB0aGFuIG9uZSB1cGxvYWRwYWNrIGdpdmVuLCB1c2luZyB0aGUgZmlyc3QiCittc2dzdHIgIm3DoXMgZGUgdW4gdXBsb2FkcGFjayBkYWRvLCB1c2FuZG8gZWwgcHJpbWVybyIKKworIzogcmVtb3RlLmM6NjEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBmZXRjaCBib3RoICVzIGFuZCAlcyB0byAlcyIKIG1zZ3N0ciAiTm8gc2UgcHVlZGVuIHRyYWVyIGFtYm9zICVzIHkgJXMgYSAlcyIKIAotIzogcmVtb3RlLmM6NjExCisjOiByZW1vdGUuYzo2MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdXN1YWxseSB0cmFja3MgJXMsIG5vdCAlcyIKIG1zZ3N0ciAiJXMgcG9yIGxvIGdlbmVyYWwgaGFjZSBzZWd1aW1pZW50byBhICVzLCBubyBhICVzIgogCi0jOiByZW1vdGUuYzo2MTUKKyM6IHJlbW90ZS5jOjYyMAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB0cmFja3MgYm90aCAlcyBhbmQgJXMiCiBtc2dzdHIgIiVzIGhhY2Ugc2VndWltaWVudG8gdGFudG8gYSAlcyBjb21vIGEgJXMiCiAKLSM6IHJlbW90ZS5jOjYyMwotbXNnaWQgIkludGVybmFsIGVycm9yIgotbXNnc3RyICJFcnJvciBpbnRlcm5vIgorIzogcmVtb3RlLmM6Njg4CisjLCBjLWZvcm1hdAorbXNnaWQgImtleSAnJXMnIG9mIHBhdHRlcm4gaGFkIG5vICcqJyIKK21zZ3N0ciAibGxhdmUgJyVzJyBkZSBwYXRyw7NuIG5vIHR1dm8gJyonIgogCi0jOiByZW1vdGUuYzoxNTY5IHJlbW90ZS5jOjE2NzAKKyM6IHJlbW90ZS5jOjY5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSAnJXMnIG9mIHBhdHRlcm4gaGFzIG5vICcqJyIKK21zZ3N0ciAidmFsb3IgJyVzJyBkZWwgcGF0csOzbiBubyB0aWVuZSAnKiciCisKKyM6IHJlbW90ZS5jOjEwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgZG9lcyBub3QgbWF0Y2ggYW55IgorbXNnc3RyICJzcmMgcmVmc29lYyAlczogbm8gY29uY3VlcmRhIGNvbiBuaW5ndW5vIgorCisjOiByZW1vdGUuYzoxMDA5CisjLCBjLWZvcm1hdAorbXNnaWQgInNyYyByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAic3JjIHJlZnNwZWMgJXMgY29uY3VlcmRhIGNvbiBtw6FzIGRlIHVubyIKKworIy4gVFJBTlNMQVRPUlM6ICJtYXRjaGVzICclcyclIiBpcyB0aGUgPGRzdD4gcGFydCBvZiAiZ2l0IHB1c2gKKyMuIDxyZW1vdGU+IDxzcmM+Ojxkc3Q+IiBwdXNoLCBhbmQgImJlaW5nIHB1c2hlZCAoJyVzJykiIGlzCisjLiB0aGUgPHNyYz4uCisjLgorIzogcmVtb3RlLmM6MTAyNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGRlc3RpbmF0aW9uIHlvdSBwcm92aWRlZCBpcyBub3QgYSBmdWxsIHJlZm5hbWUgKGkuZS4sXG4iCisic3RhcnRpbmcgd2l0aCBcInJlZnMvXCIpLiBXZSB0cmllZCB0byBndWVzcyB3aGF0IHlvdSBtZWFudCBieTpcbiIKKyJcbiIKKyItIExvb2tpbmcgZm9yIGEgcmVmIHRoYXQgbWF0Y2hlcyAnJXMnIG9uIHRoZSByZW1vdGUgc2lkZS5cbiIKKyItIENoZWNraW5nIGlmIHRoZSA8c3JjPiBiZWluZyBwdXNoZWQgKCclcycpXG4iCisiICBpcyBhIHJlZiBpbiBcInJlZnMve2hlYWRzLHRhZ3N9L1wiLiBJZiBzbyB3ZSBhZGQgYSBjb3JyZXNwb25kaW5nXG4iCisiICByZWZzL3toZWFkcyx0YWdzfS8gcHJlZml4IG9uIHRoZSByZW1vdGUgc2lkZS5cbiIKKyJcbiIKKyJOZWl0aGVyIHdvcmtlZCwgc28gd2UgZ2F2ZSB1cC4gWW91IG11c3QgZnVsbHkgcXVhbGlmeSB0aGUgcmVmLiIKK21zZ3N0ciAiIgorIkVsIGRlc3Rpbm8gcXVlIHByb3ZlZXMgbm8gZXMgdW4gZnVsbCByZWZuYW1lIChpLmUuLFxuIgorImNvbWllbnphIGNvbiBcInJlZnMvXCIpLiBJbnRlbnRhbW9zIGFkaXZpbmFyIGxvIHF1ZSBxdWlzaXN0ZSBkZWNpcjpcbiIKKyJcbiIKKyItIEJ1c2NhbmRvIHVuIHJlZiBxdWUgY29uY3VlcmRlIGNvbiAnJXMnIGVuIGVsIGxhZG8gcmVtb3RvLlxuIgorIi0gUmV2aXNhbmRvIHNpIGVsIDxzcmM+IGVzIHVzYWRvIGVuIGVsIHB1c2goJyVzJylcbiIKKyIgIGVzIHVuIHJlZiBlbiBcInJlZnMve2hlYWRzLHRhZ3N9L1wiLiBTaSBlcyBhc8OtLCBhZ3JlZ2Ftb3MgZWwgcHJlZmlqb1xuIgorIiAgcmVmcy97aGVhZHMsdGFnc30vIGNvcnJlc3BvbmRpZW50ZSBhbCBsYWRvIHJlbW90by5cbiIKKyJcbiIKKyJOaW5ndW5vIGZ1bmNpb27DsyBhc8OtIHF1ZSBub3MgZGltb3MgcG9yIHZlbmNpZG9zLiBUaWVuZXMgcXVlIGVzcGVjaWZpY2FyIGVsICIKKyJmdWxsIHJlZi4iCisKKyM6IHJlbW90ZS5jOjEwNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgY29tbWl0IG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gY3JlYXRlIGEgbmV3IGJyYW5jaCBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvaGVhZHMvJXMnPyIKK21zZ3N0ciAiIgorIkxhIHBhcnRlIDxzcmM+IGRlbCByZWZzcGVjIGVzIHVuIG9iamV0byBjb21taXQuXG4iCisiwr9RdWlzaXN0ZSBjcmVhciB1biBicmFuY2ggbnVldm8gbWVkaWFudGUgdW4gcHVzaCBhXG4iCisiJyVzOnJlZnMvaGVhZHMvJXMnPyIKKworIzogcmVtb3RlLmM6MTA0OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSB0YWcgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byBjcmVhdGUgYSBuZXcgdGFnIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIHRhZyBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIGNyZWF0ZSBhIG5ldyB0YWcgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKKworIzogcmVtb3RlLmM6MTA1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSB0cmVlIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gdGFnIGEgbmV3IHRyZWUgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorIkxhIHBhcnRlIDxzcmM+IGRlbCByZWZzcGVjIGVzIHVuIG9iamV0byB0cmVlLlxuIgorIsK/UXVpc2lzdGUgY3JlYXIgdW4gdGFnIG51ZXZvIG1lZGlhbnRlIHVuIHB1c2ggYVxuIgorIiclczpyZWZzL2hlYWRzLyVzJz8iCisKKyM6IHJlbW90ZS5jOjEwNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgYmxvYiBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHRhZyBhIG5ldyBibG9iIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKyJMYSBwYXJ0ZSA8c3JjPiBkZWwgcmVmc3BlYyBlcyB1biBvYmpldG8gYmxvYi5cbiIKKyLCv1F1aXNpc3RlIGNyZWFyIHVuIHRhZyBudWV2byBtZWRpYW50ZSB1biBwdXNoIGFcbiIKKyInJXM6cmVmcy9oZWFkcy8lcyc/IgorCisjOiByZW1vdGUuYzoxMDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNhbm5vdCBiZSByZXNvbHZlZCB0byBicmFuY2giCittc2dzdHIgIiVzIG5vIHB1ZWRlIHNlciByZXNvbHZlciBhIHVuIGJyYW5jaCIKKworIzogcmVtb3RlLmM6MTEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlICclcyc6IHJlbW90ZSByZWYgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIm5vIGVzIHBvc2libGUgYm9ycmFyICclcyc6IHJlZiByZW1vdG8gbm8gZXhpc3RlIgorCisjOiByZW1vdGUuYzoxMTE4CisjLCBjLWZvcm1hdAorbXNnaWQgImRzdCByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAiZHN0IHJlZnNwZWMgJXMgY29uY3VlcmRhIGNvbiBtw6FzIGRlIHVubyIKKworIzogcmVtb3RlLmM6MTEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkc3QgcmVmICVzIHJlY2VpdmVzIGZyb20gbW9yZSB0aGFuIG9uZSBzcmMiCittc2dzdHIgImRzdCByZWYgJXMgcmVjaWJlIGRlIG3DoXMgZGUgdW4gc3JjIgorCisjOiByZW1vdGUuYzoxNjI4IHJlbW90ZS5jOjE3MjkKIG1zZ2lkICJIRUFEIGRvZXMgbm90IHBvaW50IHRvIGEgYnJhbmNoIgogbXNnc3RyICJIRUFEIG5vIGFwdW50YSBhIG5pbmd1bmEgcmFtYSIKIAotIzogcmVtb3RlLmM6MTU3OAorIzogcmVtb3RlLmM6MTYzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIGJyYW5jaDogJyVzJyIKIG1zZ3N0ciAibm8gZXhpc3RlIHRhbCByYW1hOiAnJXMnIgogCi0jOiByZW1vdGUuYzoxNTgxCisjOiByZW1vdGUuYzoxNjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHVwc3RyZWFtIGNvbmZpZ3VyZWQgZm9yIGJyYW5jaCAnJXMnIgogbXNnc3RyICJubyBzZSBoYSBjb25maWd1cmFkbyB1cHN0cmVhbSBwYXJhIGxhIHJhbWEgJyVzJyIKIAotIzogcmVtb3RlLmM6MTU4NworIzogcmVtb3RlLmM6MTY0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1cHN0cmVhbSBicmFuY2ggJyVzJyBub3Qgc3RvcmVkIGFzIGEgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKIG1zZ3N0ciAibGEgcmFtYSAnJXMnIGRlIHVwc3RyZWFtIG5vIGVzIGd1YXJkYWQgY29tbyByYW1hIGRlIHJhc3RyZW8gcmVtb3RvIgogCi0jOiByZW1vdGUuYzoxNjAyCisjOiByZW1vdGUuYzoxNjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgInB1c2ggZGVzdGluYXRpb24gJyVzJyBvbiByZW1vdGUgJyVzJyBoYXMgbm8gbG9jYWwgdHJhY2tpbmcgYnJhbmNoIgogbXNnc3RyICIiCiAiZGVzdGlubyBkZSBwdXNoICclcycgZW4gZWwgcmVtb3RvICclcycgbm8gdGllbmUgdW5hIHJhbWEgZGUgcmFzdHJlbyBsb2NhbCIKIAotIzogcmVtb3RlLmM6MTYxNAorIzogcmVtb3RlLmM6MTY3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJicmFuY2ggJyVzJyBoYXMgbm8gcmVtb3RlIGZvciBwdXNoaW5nIgogbXNnc3RyICJsYSByYW1hICclcycgbm8gdGllbmUgcmVtb3RvIHBhcmEgZW52aWFyIgogCi0jOiByZW1vdGUuYzoxNjI0CisjOiByZW1vdGUuYzoxNjgzCiAjLCBjLWZvcm1hdAogbXNnaWQgInB1c2ggcmVmc3BlY3MgZm9yICclcycgZG8gbm90IGluY2x1ZGUgJyVzJyIKIG1zZ3N0ciAicmVmc3BlY3MgZGVsIHB1c2ggcGFyYSAnJXMnIG5vIGluY2x1eWVuICclcyciCiAKLSM6IHJlbW90ZS5jOjE2MzcKKyM6IHJlbW90ZS5jOjE2OTYKIG1zZ2lkICJwdXNoIGhhcyBubyBkZXN0aW5hdGlvbiAocHVzaC5kZWZhdWx0IGlzICdub3RoaW5nJykiCiBtc2dzdHIgInB1c2ggbm8gdGllbmUgZGVzdGlubyAocHVzaC5kZWZhdWx0IGVzICduYWRhJykiCiAKLSM6IHJlbW90ZS5jOjE2NTkKKyM6IHJlbW90ZS5jOjE3MTgKIG1zZ2lkICJjYW5ub3QgcmVzb2x2ZSAnc2ltcGxlJyBwdXNoIHRvIGEgc2luZ2xlIGRlc3RpbmF0aW9uIgogbXNnc3RyICJubyBzZSBwdWVkZSByZXNvbHZlciBwdXNoICdzaW1wbGUnIHBhcmEgdW4gZGVzdGlubyDDum5pY28iCiAKLSM6IHJlbW90ZS5jOjE5MzUKKyM6IHJlbW90ZS5jOjE4NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgZmluZCByZW1vdGUgcmVmICVzIgorbXNnc3RyICJubyBzZSBwdWVkbyBlbmNvbnRyYXIgcmVmIHJlbW90YSAlcyIKKworIzogcmVtb3RlLmM6MTg1NworIywgYy1mb3JtYXQKK21zZ2lkICIqIElnbm9yaW5nIGZ1bm55IHJlZiAnJXMnIGxvY2FsbHkiCittc2dzdHIgIiogSWdub3JhbmRvIHJlZiBncmFjaW9zYSAnJXMnIGxvY2FsbWVudGUiCisKKyM6IHJlbW90ZS5jOjIwMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgYmFzZWQgb24gJyVzJywgYnV0IHRoZSB1cHN0cmVhbSBpcyBnb25lLlxuIgogbXNnc3RyICJUdSByYW1hIGVzdMOhIGJhc2FkYSBlbiAnJXMnLCBwZXJvIHVwc3RyZWFtIGhhIGRlc2FwYXJlY2lkby5cbiIKIAotIzogcmVtb3RlLmM6MTkzOQorIzogcmVtb3RlLmM6MjAyNAogbXNnaWQgIiAgKHVzZSBcImdpdCBicmFuY2ggLS11bnNldC11cHN0cmVhbVwiIHRvIGZpeHVwKVxuIgogbXNnc3RyICIgICh1c2EgXCJnaXQgYnJhbmNoIC0tdW5zZXQtdXBzdHJlYW1cIiBwYXJhIGFycmVnbGFyKVxuIgogCi0jOiByZW1vdGUuYzoxOTQyCisjOiByZW1vdGUuYzoyMDI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIHVwIHRvIGRhdGUgd2l0aCAnJXMnLlxuIgogbXNnc3RyICJUdSByYW1hIGVzdMOhIGFjdHVhbGl6YWRhIGNvbiAnJXMnLlxuIgogCi0jOiByZW1vdGUuYzoxOTQ2CisjOiByZW1vdGUuYzoyMDMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGFuZCAnJXMnIHJlZmVyIHRvIGRpZmZlcmVudCBjb21taXRzLlxuIgogbXNnc3RyICJUdSByYW1hIHkgJyVzJyByZWZpZXJlbiBhIGNvbW1pdHMgZGlmZXJlbnRlcy5cbiIKIAotIzogcmVtb3RlLmM6MTk0OQorIzogcmVtb3RlLmM6MjAzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICh1c2UgXCIlc1wiIGZvciBkZXRhaWxzKVxuIgogbXNnc3RyICIgICh1c2EgXCIlc1wiIHBhcmEgZGV0YWxsZXMpXG4iCiAKLSM6IHJlbW90ZS5jOjE5NTMKKyM6IHJlbW90ZS5jOjIwMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgYWhlYWQgb2YgJyVzJyBieSAlZCBjb21taXQuXG4iCiBtc2dpZF9wbHVyYWwgIllvdXIgYnJhbmNoIGlzIGFoZWFkIG9mICclcycgYnkgJWQgY29tbWl0cy5cbiIKIG1zZ3N0clswXSAiVHUgcmFtYSBlc3TDoSBhZGVsYW50YWRhIGEgJyVzJyBwb3IgJWQgY29tbWl0LlxuIgogbXNnc3RyWzFdICJUdSByYW1hIGVzdMOhIGFkZWxhbnRhZGEgYSAnJXMnIHBvciAlZCBjb21taXRzLlxuIgogCi0jOiByZW1vdGUuYzoxOTU5CisjOiByZW1vdGUuYzoyMDQ0CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1c2hcIiB0byBwdWJsaXNoIHlvdXIgbG9jYWwgY29tbWl0cylcbiIKIG1zZ3N0ciAiICAodXNhIFwiZ2l0IHB1c2hcIiBwYXJhIHB1YmxpY2FyIHR1cyBjb21taXRzIGxvY2FsZXMpXG4iCiAKLSM6IHJlbW90ZS5jOjE5NjIKKyM6IHJlbW90ZS5jOjIwNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgYmVoaW5kICclcycgYnkgJWQgY29tbWl0LCBhbmQgY2FuIGJlIGZhc3QtZm9yd2FyZGVkLlxuIgogbXNnaWRfcGx1cmFsICIiCkBAIC00MzQ3LDExICs2MzAwLDExIEBACiBtc2dzdHJbMV0gIiIKICJUdSByYW1hIGVzdMOhIGRldHLDoXMgZGUgJyVzJyBwb3IgJWQgY29tbWl0cywgeSBwdWVkZSBzZXIgYXZhbnphZGEgcsOhcGlkby5cbiIKIAotIzogcmVtb3RlLmM6MTk3MAorIzogcmVtb3RlLmM6MjA1NQogbXNnaWQgIiAgKHVzZSBcImdpdCBwdWxsXCIgdG8gdXBkYXRlIHlvdXIgbG9jYWwgYnJhbmNoKVxuIgogbXNnc3RyICIgICh1c2EgXCJnaXQgcHVsbFwiIHBhcmEgYWN0dWFsaXphciB0dSByYW1hIGxvY2FsKVxuIgogCi0jOiByZW1vdGUuYzoxOTczCisjOiByZW1vdGUuYzoyMDU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGJyYW5jaCBhbmQgJyVzJyBoYXZlIGRpdmVyZ2VkLFxuIgpAQCAtNDM2NiwxMCArNjMxOSwxNSBAQAogIlR1IHJhbWEgeSAnJXMnIGhhbiBkaXZlcmdpZG8sXG4iCiAieSB0aWVuZW4gJWQgeSAlZCBjb21taXRzIGRpZmVyZW50ZXMgY2FkYSB1bmEgcmVzcGVjdGl2YW1lbnRlLlxuIgogCi0jOiByZW1vdGUuYzoxOTgzCisjOiByZW1vdGUuYzoyMDY4CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1bGxcIiB0byBtZXJnZSB0aGUgcmVtb3RlIGJyYW5jaCBpbnRvIHlvdXJzKVxuIgogbXNnc3RyICIgICh1c2EgXCJnaXQgcHVsbFwiIHBhcmEgZnVzaW9uYXIgbGEgcmFtYSByZW1vdGEgZW4gbGEgdHV5YSlcbiIKIAorIzogcmVtb3RlLmM6MjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcGFyc2UgZXhwZWN0ZWQgb2JqZWN0IG5hbWUgJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgbGVlciBlbCBub21icmUgZGUgb2JqZXRvICclcyciCisKICM6IHJlcGxhY2Utb2JqZWN0LmM6MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJlcGxhY2UgcmVmIG5hbWU6ICVzIgpAQCAtNDM4MCw3ICs2MzM4LDcgQEAKIG1zZ2lkICJkdXBsaWNhdGUgcmVwbGFjZSByZWY6ICVzIgogbXNnc3RyICJkdXBsaWNhciByZWYgZGUgcmVlbXBsYXpvOiAlcyIKIAotIzogcmVwbGFjZS1vYmplY3QuYzo3MworIzogcmVwbGFjZS1vYmplY3QuYzo4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBsYWNlIGRlcHRoIHRvbyBoaWdoIGZvciBvYmplY3QgJXMiCiBtc2dzdHIgInJlbXBsYXphciBwcm9mdW5kaWFkIG11eSBlbGV2YWRhIHBhcmEgb2JqZXRvICVzIgpAQCAtNDM5MywxMSArNjM1MSw2IEBACiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHJlcmVyZSByZWNvcmQiCiBtc2dzdHIgImluY2FwYXogZGUgZXNjcmliaXIgZW50cmFkYSByZXJlcmUiCiAKLSM6IHJlcmVyZS5jOjQ4NSByZXJlcmUuYzo2OTIgc2VxdWVuY2VyLmM6MzEzNiBzZXF1ZW5jZXIuYzozMTYyCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnIgotbXNnc3RyICJubyBzZSBwdWRvIGVzY3JpYmlyICclcyciCi0KICM6IHJlcmVyZS5jOjQ5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGVyZSB3ZXJlIGVycm9ycyB3aGlsZSB3cml0aW5nICclcycgKCVzKSIKQEAgLTQ0NDgsOCArNjQwMSw4IEBACiBtc2dpZCAiUmVjb3JkZWQgcHJlaW1hZ2UgZm9yICclcyciCiBtc2dzdHIgIlJlc29sdWNpw7NuIHByZWNhcmdhZGEgcGFyYSAnJXMnIgogCi0jOiByZXJlcmUuYzo4ODEgc3VibW9kdWxlLmM6MTc2MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxMwotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MjMKKyM6IHJlcmVyZS5jOjg4MSBzdWJtb2R1bGUuYzoyMDc4IGJ1aWx0aW4vbG9nLmM6MTg3MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NTQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBjcmVhciBlbCBkaXJlY3RvcmlvICclcyciCkBAIC00NDgzLDI5ICs2NDM2LDMzIEBACiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gcnItY2FjaGUgZGlyZWN0b3J5IgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGFicmlyIGRpcmVjdG9yaW8gcnItY2FjaGUiCiAKLSM6IHJldmlzaW9uLmM6MjMyNAorIzogcmV2aXNpb24uYzoyNDk3CiBtc2dpZCAieW91ciBjdXJyZW50IGJyYW5jaCBhcHBlYXJzIHRvIGJlIGJyb2tlbiIKIG1zZ3N0ciAidHUgcmFtYSBhY3R1YWwgcGFyZWNlIGVzdGFyIHJvdGEiCiAKLSM6IHJldmlzaW9uLmM6MjMyNworIzogcmV2aXNpb24uYzoyNTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgInlvdXIgY3VycmVudCBicmFuY2ggJyVzJyBkb2VzIG5vdCBoYXZlIGFueSBjb21taXRzIHlldCIKIG1zZ3N0ciAidHUgcmFtYSBhY3R1YWwgJyVzJyBubyB0aWVuZSBuaW5nw7puIGNvbW1pdCB0b2RhdsOtYSIKIAotIzogcmV2aXNpb24uYzoyNTIzCisjOiByZXZpc2lvbi5jOjI3MDgKIG1zZ2lkICItLWZpcnN0LXBhcmVudCBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWJpc2VjdCIKIG1zZ3N0ciAiLS1maXJzdC1wYXJlbnQgZXMgaW5jb21wYXRpYmxlIGNvbiAtLWJpc2VjdCIKIAotIzogcnVuLWNvbW1hbmQuYzo3NDAKKyM6IHJldmlzaW9uLmM6MjcxMgorbXNnaWQgIi1MIGRvZXMgbm90IHlldCBzdXBwb3J0IGRpZmYgZm9ybWF0cyBiZXNpZGVzIC1wIGFuZCAtcyIKK21zZ3N0ciAiLUwgbm8gc29wb3J0YSB0b2RhdsOtYSBmb3JtYXRvcyBkZSBkaWZmIGZ1ZXJhIGRlIC1wIHkgLXMiCisKKyM6IHJ1bi1jb21tYW5kLmM6NzYzCiBtc2dpZCAib3BlbiAvZGV2L251bGwgZmFpbGVkIgogbXNnc3RyICJmYWxsw7MgYWwgYWJyaXIgL2Rldi9udWxsIgogCi0jOiBydW4tY29tbWFuZC5jOjEyMjkKKyM6IHJ1bi1jb21tYW5kLmM6MTI2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY3JlYXRlIGFzeW5jIHRocmVhZDogJXMiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgY3JlYXIgaGlsbyBhc3luYzogJXMiCiAKLSM6IHJ1bi1jb21tYW5kLmM6MTI5MworIzogcnVuLWNvbW1hbmQuYzoxMzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgJyVzJyBob29rIHdhcyBpZ25vcmVkIGJlY2F1c2UgaXQncyBub3Qgc2V0IGFzIGV4ZWN1dGFibGUuXG4iCkBAIC00NTE1LDMwICs2NDcyLDMwIEBACiAiUHVlZGVzIGRlc2FjdGl2YXIgZXN0YSBhZHZlcnRlbmNpYXMgY29uIGBnaXQgY29uZmlnIGFkdmljZS5pZ25vcmVkSG9vayAiCiAiZmFsc2VgLiIKIAotIzogc2VuZC1wYWNrLmM6MTQyCisjOiBzZW5kLXBhY2suYzoxNDQKIG1zZ2lkICJ1bmV4cGVjdGVkIGZsdXNoIHBhY2tldCB3aGlsZSByZWFkaW5nIHJlbW90ZSB1bnBhY2sgc3RhdHVzIgogbXNnc3RyICIiCiAiZmx1c2ggcGFja2V0IGluZXNwZXJhZG8gbWllbnRyYXMgc2UgbGXDrWEgZXN0YXR1cyBkZSBkZXNlbXBhcXVldGFkbyByZW1vdG8iCiAKLSM6IHNlbmQtcGFjay5jOjE0NAorIzogc2VuZC1wYWNrLmM6MTQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSByZW1vdGUgdW5wYWNrIHN0YXR1czogJXMiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgYW5hbGl6YXIgZWwgZXN0YWRvIGRlIGRlc2VtcGFxdWV0YWRvIHJlbW90bzogJXMiCiAKLSM6IHNlbmQtcGFjay5jOjE0NgorIzogc2VuZC1wYWNrLmM6MTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZSB1bnBhY2sgZmFpbGVkOiAlcyIKIG1zZ3N0ciAiZGVzZW1wYXF1ZXRhZG8gcmVtb3RvIGZhbGzDszogJXMiCiAKLSM6IHNlbmQtcGFjay5jOjMwOAorIzogc2VuZC1wYWNrLmM6MzA5CiBtc2dpZCAiZmFpbGVkIHRvIHNpZ24gdGhlIHB1c2ggY2VydGlmaWNhdGUiCiBtc2dzdHIgImZhbGzDsyBhbCBmaXJtYXIgZWwgY2VydGlmaWNhZG8gZGUgcHVzaCIKIAotIzogc2VuZC1wYWNrLmM6NDIxCisjOiBzZW5kLXBhY2suYzo0MjMKIG1zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIHB1c2giCiBtc2dzdHIgImVsIGZpbmFsIHJlY2VwdG9yIG5vIHNvcG9ydGEgLS1zaWduZWQgcHVzaCIKIAotIzogc2VuZC1wYWNrLmM6NDIzCisjOiBzZW5kLXBhY2suYzo0MjUKIG1zZ2lkICIiCiAibm90IHNlbmRpbmcgYSBwdXNoIGNlcnRpZmljYXRlIHNpbmNlIHRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS0iCiAic2lnbmVkIHB1c2giCkBAIC00NTQ2LDQyICs2NTAzLDQ3IEBACiAibm8gc2UgbWFuZGEgdW4gY2VydGlmaWNhZG8gZGUgcHVzaCB5YSBxdWUgZWwgZGVzdGlubyBubyBzb3BvcnRhIHB1c2ggZmlybWFkbyAiCiAiKC0tc2lnbmVkICkiCiAKLSM6IHNlbmQtcGFjay5jOjQzNQorIzogc2VuZC1wYWNrLmM6NDM3CiBtc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCAtLWF0b21pYyBwdXNoIgogbXNnc3RyICJlbCBkZXN0aW5vIG5vIHNvcG9ydGEgcHVzaCBhdMOzbWljb3MgKC0tYXRvbWljKSIKIAotIzogc2VuZC1wYWNrLmM6NDQwCisjOiBzZW5kLXBhY2suYzo0NDIKIG1zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IHB1c2ggb3B0aW9ucyIKIG1zZ3N0ciAiZWwgZGVzdGlubyBubyBzb3BvcnRhIG9wY2lvbmVzIGRlIHB1c2giCiAKLSM6IHNlcXVlbmNlci5jOjE4MworIzogc2VxdWVuY2VyLmM6MTkxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29tbWl0IG1lc3NhZ2UgY2xlYW51cCBtb2RlICclcyciCiBtc2dzdHIgIm1lbnNhamUgZGUgY29tbWl0IGludsOhbGlkbywgbW9kbyBjbGVhbnVwICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjI4NworIzogc2VxdWVuY2VyLmM6Mjk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBib3JyYXIgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MzEzCisjOiBzZXF1ZW5jZXIuYzozMTUgYnVpbHRpbi9yZWJhc2UuYzo3ODUgYnVpbHRpbi9yZWJhc2UuYzoxNzUwIGJ1aWx0aW4vcm0uYzozODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlbW92ZSAnJXMnIgorbXNnc3RyICJubyBzZSBwdWRvIGVsaW1pbmFyJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MzI1CiBtc2dpZCAicmV2ZXJ0IgogbXNnc3RyICJyZXZlcnRpciIKIAotIzogc2VxdWVuY2VyLmM6MzE1CisjOiBzZXF1ZW5jZXIuYzozMjcKIG1zZ2lkICJjaGVycnktcGljayIKIG1zZ3N0ciAiY2hlcnJ5LXBpY2siCiAKLSM6IHNlcXVlbmNlci5jOjMxNwotbXNnaWQgInJlYmFzZSAtaSIKLW1zZ3N0ciAicmViYXNlIC1pIgorIzogc2VxdWVuY2VyLmM6MzI5Cittc2dpZCAicmViYXNlIgorbXNnc3RyICJyZWJhc2UiCiAKLSM6IHNlcXVlbmNlci5jOjMxOQorIzogc2VxdWVuY2VyLmM6MzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gYWN0aW9uOiAlZCIKIG1zZ3N0ciAiYWNjacOzbiBkZXNjb25vY2lkYTogJWQiCiAKLSM6IHNlcXVlbmNlci5jOjM3NgorIzogc2VxdWVuY2VyLmM6Mzg5CiBtc2dpZCAiIgogImFmdGVyIHJlc29sdmluZyB0aGUgY29uZmxpY3RzLCBtYXJrIHRoZSBjb3JyZWN0ZWQgcGF0aHNcbiIKICJ3aXRoICdnaXQgYWRkIDxwYXRocz4nIG9yICdnaXQgcm0gPHBhdGhzPiciCkBAIC00NTg5LDcgKzY1NTEsNyBAQAogImRlc3B1w6lzIGRlIHJlc29sdmVyIGxvcyBjb25mbGljdG9zLCBtYXJjYSBsYXMgcnV0YXMgY29ycmVnaWRhc1xuIgogImNvbiAnZ2l0IGFkZCA8cnV0YXM+JyBvICdnaXQgcm0gPHJ1dGFzPiciCiAKLSM6IHNlcXVlbmNlci5jOjM3OQorIzogc2VxdWVuY2VyLmM6MzkyCiBtc2dpZCAiIgogImFmdGVyIHJlc29sdmluZyB0aGUgY29uZmxpY3RzLCBtYXJrIHRoZSBjb3JyZWN0ZWQgcGF0aHNcbiIKICJ3aXRoICdnaXQgYWRkIDxwYXRocz4nIG9yICdnaXQgcm0gPHBhdGhzPidcbiIKQEAgLTQ1OTksMTEwICs2NTYxLDExMCBAQAogImNvbiAnZ2l0IGFkZCA8cnV0YXM+JyBvICdnaXQgcm0gPHJ1dGFzPidcbiIKICJ5IGhheiB1biBjb21taXQgZGVsIHJlc3VsdGFkbyBjb24gJ2dpdCBjb21taXQnIgogCi0jOiBzZXF1ZW5jZXIuYzozOTIgc2VxdWVuY2VyLmM6MjYzMgorIzogc2VxdWVuY2VyLmM6NDA1IHNlcXVlbmNlci5jOjI5MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvY2sgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBibG9xdWVhciAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzozOTkKKyM6IHNlcXVlbmNlci5jOjQxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZW9sIHRvICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gZXNjcmliaXIgRU9MIGVuICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjQwNCBzZXF1ZW5jZXIuYzoyNTE1IHNlcXVlbmNlci5jOjI2Mzggc2VxdWVuY2VyLmM6MjY1MgotIzogc2VxdWVuY2VyLmM6Mjg4NQorIzogc2VxdWVuY2VyLmM6NDE3IHNlcXVlbmNlci5jOjI3MDYgc2VxdWVuY2VyLmM6MjkwNyBzZXF1ZW5jZXIuYzoyOTIxCisjOiBzZXF1ZW5jZXIuYzozMTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBmaW5hbGl6ZSAnJXMnIgogbXNnc3RyICJmYWxsw7MgYWwgZmluYWxpemFyICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjQyNyBzZXF1ZW5jZXIuYzo5MjEgc2VxdWVuY2VyLmM6MTU5NCBzZXF1ZW5jZXIuYzoyNTM1Ci0jOiBzZXF1ZW5jZXIuYzoyODY3IHNlcXVlbmNlci5jOjI5NzQgYnVpbHRpbi9hbS5jOjI2MCBidWlsdGluL2NvbW1pdC5jOjc0NgotIzogYnVpbHRpbi9tZXJnZS5jOjEwODQgYnVpbHRpbi9yZWJhc2UuYzoxNTIKKyM6IHNlcXVlbmNlci5jOjQ0MCBzZXF1ZW5jZXIuYzoxNjEzIHNlcXVlbmNlci5jOjI3MjYgc2VxdWVuY2VyLmM6MzE2NworIzogc2VxdWVuY2VyLmM6MzI3NiBidWlsdGluL2FtLmM6MjQ5IGJ1aWx0aW4vY29tbWl0LmM6Nzg3IGJ1aWx0aW4vbWVyZ2UuYzoxMTIwCisjOiBidWlsdGluL3JlYmFzZS5jOjU5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGxlZXIgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6NDUzCisjOiBzZXF1ZW5jZXIuYzo0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAieW91ciBsb2NhbCBjaGFuZ2VzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzLiIKIG1zZ3N0ciAidHVzIGNhbWJpb3MgbG9jYWxlcyBzZXLDoW4gc29icmVlc2NyaXRvcyBwb3IgJXMuIgogCi0jOiBzZXF1ZW5jZXIuYzo0NTcKKyM6IHNlcXVlbmNlci5jOjQ3MAogbXNnaWQgImNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSB0byBwcm9jZWVkLiIKIG1zZ3N0ciAicmVhbGl6YSB1biBjb21taXQgY29uIHR1cyBjYW1iaW9zIG8gYXBsaWNhIHVuIHN0YXNoIHBhcmEgcHJvY2VkZXIuIgogCi0jOiBzZXF1ZW5jZXIuYzo0ODYKKyM6IHNlcXVlbmNlci5jOjUwMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZmFzdC1mb3J3YXJkIgogbXNnc3RyICIlczogYXZhbmNlIHLDoXBpZG8iCiAKKyM6IHNlcXVlbmNlci5jOjU0MSBidWlsdGluL3RhZy5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGNsZWFudXAgbW9kZSAlcyIKK21zZ3N0ciAiTW9kbyBjbGVhbnVwIGludsOhbGlkbyAlcyIKKwogIy4gVFJBTlNMQVRPUlM6ICVzIHdpbGwgYmUgInJldmVydCIsICJjaGVycnktcGljayIgb3IKLSMuICJyZWJhc2UgLWkiLgorIy4gInJlYmFzZSIuCiAjLgotIzogc2VxdWVuY2VyLmM6NTc1CisjOiBzZXF1ZW5jZXIuYzo2MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IFVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAiJXM6IEluY2FwYXogZGUgZXNjcmliaXIgZWwgbnVldm8gYXJjaGl2byDDrW5kaWNlIgogCi0jOiBzZXF1ZW5jZXIuYzo1OTEKKyM6IHNlcXVlbmNlci5jOjY1MgogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgY2FjaGUgdHJlZSIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBhY3R1YWxpemFyIGVsIMOhcmJvbCBkZSBsYSBjYWNow6kiCiAKLSM6IHNlcXVlbmNlci5jOjYwNAorIzogc2VxdWVuY2VyLmM6NjY2CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgSEVBRCBjb21taXQiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gcmVzb2x2ZXIgZWwgY29tbWl0IGRlIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjY4NAorIzogc2VxdWVuY2VyLmM6NzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGtleSBwcmVzZW50IGluICclLipzJyIKIG1zZ3N0ciAibm8gaGF5IGxsYXZlIHByZXNlbnRlIGVuICclLipzJyIKIAotIzogc2VxdWVuY2VyLmM6Njk1CisjOiBzZXF1ZW5jZXIuYzo3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlcXVvdGUgdmFsdWUgb2YgJyVzJyIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBkZXF1b3RlIHBhcmEgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6NzMyIHdyYXBwZXIuYzoyMjcgd3JhcHBlci5jOjM5NyBidWlsdGluL2FtLmM6NzE5Ci0jOiBidWlsdGluL2FtLmM6ODExIGJ1aWx0aW4vbWVyZ2UuYzoxMDgxCisjOiBzZXF1ZW5jZXIuYzo3OTQgd3JhcHBlci5jOjE5MCB3cmFwcGVyLmM6MzYwIGJ1aWx0aW4vYW0uYzo3MTAKKyM6IGJ1aWx0aW4vYW0uYzo4MDIgYnVpbHRpbi9tZXJnZS5jOjExMTcgYnVpbHRpbi9yZWJhc2UuYzoxMDcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHJlYWRpbmciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gYWJyaXIgJyVzJyBwYXJhIGxlY3R1cmEiCiAKLSM6IHNlcXVlbmNlci5jOjc0MgorIzogc2VxdWVuY2VyLmM6ODA0CiBtc2dpZCAiJ0dJVF9BVVRIT1JfTkFNRScgYWxyZWFkeSBnaXZlbiIKIG1zZ3N0ciAiJ0dJVF9BVVRIT1JfTkFNRScgeWEgcHJvcG9yY2lvbmFkbyIKIAotIzogc2VxdWVuY2VyLmM6NzQ3CisjOiBzZXF1ZW5jZXIuYzo4MDkKIG1zZ2lkICInR0lUX0FVVEhPUl9FTUFJTCcgYWxyZWFkeSBnaXZlbiIKIG1zZ3N0ciAiJ0dJVF9BVVRIT1JfRU1BSUwnIHlhIHByb3BvcmNpb25hZG8iCiAKLSM6IHNlcXVlbmNlci5jOjc1MgorIzogc2VxdWVuY2VyLmM6ODE0CiBtc2dpZCAiJ0dJVF9BVVRIT1JfREFURScgYWxyZWFkeSBnaXZlbiIKIG1zZ3N0ciAiJ0dJVF9BVVRIT1JfREFURScgeWEgcHJvcG9yY2lvbmFkbyIKIAotIzogc2VxdWVuY2VyLmM6NzU2CisjOiBzZXF1ZW5jZXIuYzo4MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biB2YXJpYWJsZSAnJXMnIgogbXNnc3RyICJ2YXJpYWJsZSBkZXNjb25vY2lkYSAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzo3NjEKKyM6IHNlcXVlbmNlci5jOjgyMwogbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfTkFNRSciCiBtc2dzdHIgImZhbHRhICdHSVRfQVVUSE9SX05BTUUnIgogCi0jOiBzZXF1ZW5jZXIuYzo3NjMKKyM6IHNlcXVlbmNlci5jOjgyNQogbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfRU1BSUwnIgogbXNnc3RyICJmYWx0YSAnR0lUX0FVVEhPUl9FTUFJTCciCiAKLSM6IHNlcXVlbmNlci5jOjc2NQorIzogc2VxdWVuY2VyLmM6ODI3CiBtc2dpZCAibWlzc2luZyAnR0lUX0FVVEhPUl9EQVRFJyIKIG1zZ3N0ciAiZmFsdGEgJ0dJVF9BVVRIT1JfREFURSciCiAKLSM6IHNlcXVlbmNlci5jOjgyNQotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIGRhdGUgZm9ybWF0ICclcycgaW4gJyVzJyIKLW1zZ3N0ciAiZm9ybWF0byBkZSBmZWNoYSBpbnbDoWxpZG8gJyVzJyBlbiAnJXMnIgotCi0jOiBzZXF1ZW5jZXIuYzo4NDIKKyM6IHNlcXVlbmNlci5jOjg3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAieW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWVcbiIKQEAgLTQ3MzIsMTUgKzY2OTQsMTEgQEAKICJcbiIKICIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogCi0jOiBzZXF1ZW5jZXIuYzo5MzUKLW1zZ2lkICJ3cml0aW5nIHJvb3QgY29tbWl0IgotbXNnc3RyICJlc2NyaWJpZW5kbyBjb21taXQgcmHDrXoiCi0KLSM6IHNlcXVlbmNlci5jOjExNDIKKyM6IHNlcXVlbmNlci5jOjExNDgKIG1zZ2lkICIncHJlcGFyZS1jb21taXQtbXNnJyBob29rIGZhaWxlZCIKIG1zZ3N0ciAiaG9vayAncHJlcGFyZS1jb21taXQtbXNnJyBmYWxsw7MiCiAKLSM6IHNlcXVlbmNlci5jOjExNDkKKyM6IHNlcXVlbmNlci5jOjExNTQKIG1zZ2lkICIiCiAiWW91ciBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIHdlcmUgY29uZmlndXJlZCBhdXRvbWF0aWNhbGx5IGJhc2VkXG4iCiAib24geW91ciB1c2VybmFtZSBhbmQgaG9zdG5hbWUuIFBsZWFzZSBjaGVjayB0aGF0IHRoZXkgYXJlIGFjY3VyYXRlLlxuIgpAQCAtNDc2Nyw3ICs2NzI1LDcgQEAKICJcbiIKICIgICAgZ2l0IGNvbW1pdCAtLWFtZW5kIC0tcmVzZXQtYXV0aG9yXG4iCiAKLSM6IHNlcXVlbmNlci5jOjExNjIKKyM6IHNlcXVlbmNlci5jOjExNjcKIG1zZ2lkICIiCiAiWW91ciBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIHdlcmUgY29uZmlndXJlZCBhdXRvbWF0aWNhbGx5IGJhc2VkXG4iCiAib24geW91ciB1c2VybmFtZSBhbmQgaG9zdG5hbWUuIFBsZWFzZSBjaGVjayB0aGF0IHRoZXkgYXJlIGFjY3VyYXRlLlxuIgpAQCAtNDc5MSwyOTkgKzY3NDksMzQ3IEBACiAiXG4iCiAiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjAyCisjOiBzZXF1ZW5jZXIuYzoxMjA5CiBtc2dpZCAiY291bGRuJ3QgbG9vayB1cCBuZXdseSBjcmVhdGVkIGNvbW1pdCIKIG1zZ3N0ciAibm8gc2UgcHVkbyByZXZpc2FyIGVsIGNvbW1pdCByZWNpw6luIGNyZWFkbyIKIAotIzogc2VxdWVuY2VyLmM6MTIwNAorIzogc2VxdWVuY2VyLmM6MTIxMQogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBuZXdseSBjcmVhdGVkIGNvbW1pdCIKIG1zZ3N0ciAibm8gc2UgcHVkbyBhbmFsaXphciBlbCBjb21taXQgcmVjacOpbiBjcmVhZG8iCiAKLSM6IHNlcXVlbmNlci5jOjEyNTAKKyM6IHNlcXVlbmNlci5jOjEyNTcKIG1zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBIRUFEIGFmdGVyIGNyZWF0aW5nIGNvbW1pdCIKIG1zZ3N0ciAibm8gc2UgcHVkbyByZXNvbHZlciBIRUFEIHRyYXMgY3JlYXIgZWwgY29tbWl0IgogCi0jOiBzZXF1ZW5jZXIuYzoxMjUyCisjOiBzZXF1ZW5jZXIuYzoxMjU5CiBtc2dpZCAiZGV0YWNoZWQgSEVBRCIKIG1zZ3N0ciAiSEVBRCBkZXNhY29wbGFkbyIKIAotIzogc2VxdWVuY2VyLmM6MTI1NgorIzogc2VxdWVuY2VyLmM6MTI2MwogbXNnaWQgIiAocm9vdC1jb21taXQpIgogbXNnc3RyICIgKGNvbW1pdC1yYcOteikiCiAKLSM6IHNlcXVlbmNlci5jOjEyNzcKKyM6IHNlcXVlbmNlci5jOjEyODQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgSEVBRCIKIG1zZ3N0ciAibm8gc2UgcHVkbyBhbmFsaXphciBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjc5CisjOiBzZXF1ZW5jZXIuYzoxMjg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkhFQUQgJXMgaXMgbm90IGEgY29tbWl0ISIKLW1zZ3N0ciAiSEVBRCAlcyBubyBlcyB1biBjb21taXQhIgorbXNnc3RyICLCoUhFQUQgJXMgbm8gZXMgdW4gY29tbWl0ISIKIAotIzogc2VxdWVuY2VyLmM6MTI4MyBidWlsdGluL2NvbW1pdC5jOjE1NDMKKyM6IHNlcXVlbmNlci5jOjEyOTAgc2VxdWVuY2VyLmM6MTM2NCBidWlsdGluL2NvbW1pdC5jOjE1NzQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgSEVBRCBjb21taXQiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gYW5hbGl6YXIgZWwgY29tbWl0IGRlIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjEzMzQgc2VxdWVuY2VyLmM6MTkzNAorIzogc2VxdWVuY2VyLmM6MTM0MiBzZXF1ZW5jZXIuYzoxOTY4CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbW1pdCBhdXRob3IiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgYW5hbGl6YXIgZWwgYXV0b3IgZGVsIGNvbW1pdCIKIAotIzogc2VxdWVuY2VyLmM6MTM0NCBidWlsdGluL2FtLmM6MTU4NSBidWlsdGluL21lcmdlLmM6Njc3CisjOiBzZXF1ZW5jZXIuYzoxMzUzIGJ1aWx0aW4vYW0uYzoxNTY2IGJ1aWx0aW4vbWVyZ2UuYzo2ODcKIG1zZ2lkICJnaXQgd3JpdGUtdHJlZSBmYWlsZWQgdG8gd3JpdGUgYSB0cmVlIgogbXNnc3RyICJnaXQgd3JpdGUtdHJlZSBmYWxsw7MgYWwgZXNjcmliaXIgZWwgw6FyYm9sIgogCi0jOiBzZXF1ZW5jZXIuYzoxMzYxIHNlcXVlbmNlci5jOjE0MTYKKyM6IHNlcXVlbmNlci5jOjEzODYgc2VxdWVuY2VyLmM6MTQ0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBjb21taXQgbWVzc2FnZSBmcm9tICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGxlZXIgZWwgbWVuc2FqZSBkZWwgY29tbWl0IGRlICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjEzODMgYnVpbHRpbi9hbS5jOjE2MDYgYnVpbHRpbi9jb21taXQuYzoxNjQ2IGJ1aWx0aW4vbWVyZ2UuYzo4NTgKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4ODMKKyM6IHNlcXVlbmNlci5jOjE0MTMgYnVpbHRpbi9hbS5jOjE1ODggYnVpbHRpbi9jb21taXQuYzoxNjczIGJ1aWx0aW4vbWVyZ2UuYzo4ODYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5MTEKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgY29tbWl0IG9iamVjdCIKIG1zZ3N0ciAiZmFsbMOzIGFsIGVzY3JpYmlyIGVsIG9iamV0byBjb21taXQiCiAKLSM6IHNlcXVlbmNlci5jOjE0NDMKKyM6IHNlcXVlbmNlci5jOjE0NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbW1pdCAlcyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBhbmFsaXphciBjb21taXQgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjE0NDgKKyM6IHNlcXVlbmNlci5jOjE0NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHBhcmVudCBjb21taXQgJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gYW5hbGl6YXIgZWwgY29tbWl0IHBhZHJlICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxNTQ2IHNlcXVlbmNlci5jOjE2NTQKKyM6IHNlcXVlbmNlci5jOjE1NjIgc2VxdWVuY2VyLmM6MTY3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIGNvbW1hbmQ6ICVkIgogbXNnc3RyICJjb21hbmRvIGRlc2Nvbm9jaWRvOiAlZCIKIAotIzogc2VxdWVuY2VyLmM6MTYwMSBzZXF1ZW5jZXIuYzoxNjI2CisjOiBzZXF1ZW5jZXIuYzoxNjIwIHNlcXVlbmNlci5jOjE2NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mICVkIGNvbW1pdHMuIgogbXNnc3RyICJFc3RhIGVzIHVuYSBjb21iaW5hY2nDs24gZGUgJWQgY29tbWl0cy4iCiAKLSM6IHNlcXVlbmNlci5jOjE2MTEgc2VxdWVuY2VyLmM6NDc0NAorIzogc2VxdWVuY2VyLmM6MTYzMAogbXNnaWQgIm5lZWQgYSBIRUFEIHRvIGZpeHVwIgogbXNnc3RyICJzZSBuZWNlc2l0YSB1biBIRUFEIHBhcmEgYXJyZWdsYXIiCiAKLSM6IHNlcXVlbmNlci5jOjE2MTMgc2VxdWVuY2VyLmM6MjkxMgorIzogc2VxdWVuY2VyLmM6MTYzMiBzZXF1ZW5jZXIuYzozMjEyCiBtc2dpZCAiY291bGQgbm90IHJlYWQgSEVBRCIKIG1zZ3N0ciAibm8gc2UgcHVkbyBsZWVyIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjE2MTUKKyM6IHNlcXVlbmNlci5jOjE2MzQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBIRUFEJ3MgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gbGVlciBlbCBtZW5zYWplIGRlIGNvbW1pdCBkZSBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjIxCisjOiBzZXF1ZW5jZXIuYzoxNjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCB3cml0ZSAnJXMnIgogbXNnc3RyICJubyBzZSBwdWVkZSBlc2NyaWJpciAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjI4IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NDEKKyM6IHNlcXVlbmNlci5jOjE2NDcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5NgogbXNnaWQgIlRoaXMgaXMgdGhlIDFzdCBjb21taXQgbWVzc2FnZToiCiBtc2dzdHIgIkVzdGUgZXMgZWwgbWVuc2FqZSBkZWwgMWVyIGNvbW1pdDoiCiAKLSM6IHNlcXVlbmNlci5jOjE2MzYKKyM6IHNlcXVlbmNlci5jOjE2NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgY29tbWl0IG1lc3NhZ2Ugb2YgJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGxlZXIgZWwgbWVuc2FqZSBkZWwgY29tbWl0IGRlICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjQzCisjOiBzZXF1ZW5jZXIuYzoxNjYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgdGhlIGNvbW1pdCBtZXNzYWdlICMlZDoiCiBtc2dzdHIgIkVzdGUgZXMgZWwgbWVuc2FqZSBkZWwgY29tbWl0ICMlZDoiCiAKLSM6IHNlcXVlbmNlci5jOjE2NDkKKyM6IHNlcXVlbmNlci5jOjE2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIGNvbW1pdCBtZXNzYWdlICMlZCB3aWxsIGJlIHNraXBwZWQ6IgogbXNnc3RyICJFbCBtZW5zYWplIGRlbCBjb21taXQgIyVkIHNlcsOhIHNhbHRhZG86IgogCi0jOiBzZXF1ZW5jZXIuYzoxNzMyCisjOiBzZXF1ZW5jZXIuYzoxNzU2CiBtc2dpZCAieW91ciBpbmRleCBmaWxlIGlzIHVubWVyZ2VkLiIKIG1zZ3N0ciAidHUgYXJjaGl2byDDrW5kaWNlIG5vIGVzdMOhIGZ1c2lvbmFkby4iCiAKLSM6IHNlcXVlbmNlci5jOjE3MzkKKyM6IHNlcXVlbmNlci5jOjE3NjMKIG1zZ2lkICJjYW5ub3QgZml4dXAgcm9vdCBjb21taXQiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGFycmVnbGFyIGVsIGNvbW1pdCByYcOteiIKIAotIzogc2VxdWVuY2VyLmM6MTc1OAorIzogc2VxdWVuY2VyLmM6MTc4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJXMgaXMgYSBtZXJnZSBidXQgbm8gLW0gb3B0aW9uIHdhcyBnaXZlbi4iCiBtc2dzdHIgImVsIGNvbW1pdCAlcyBlcyB1bmEgZnVzacOzbiBwZXJvIG5vIHNlIHByb3BvcmNpb27DsyBsYSBvcGNpw7NuIC1tLiIKIAotIzogc2VxdWVuY2VyLmM6MTc2NgorIzogc2VxdWVuY2VyLmM6MTc5MCBzZXF1ZW5jZXIuYzoxNzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIHBhcmVudCAlZCIKIG1zZ3N0ciAiZWwgY29tbWl0ICVzIG5vIHRpZW5lIHVuIHBhZHJlICVkIgogCi0jOiBzZXF1ZW5jZXIuYzoxNzcwCi0jLCBjLWZvcm1hdAotbXNnaWQgIm1haW5saW5lIHdhcyBzcGVjaWZpZWQgYnV0IGNvbW1pdCAlcyBpcyBub3QgYSBtZXJnZS4iCi1tc2dzdHIgImzDrW5lYSBwcmluY2lwYWwgZXNwZWNpZmljYWRhIHBlcm8gZWwgY29tbWl0ICVzIG5vIGVzIHVuYSBmdXNpw7NuLiIKLQotIzogc2VxdWVuY2VyLmM6MTc3NgorIzogc2VxdWVuY2VyLmM6MTgwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZ2V0IGNvbW1pdCBtZXNzYWdlIGZvciAlcyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgb2J0ZW5lciBlbCBtZW5zYWplIGRlIGNvbW1pdCBwYXJhICVzIgogCiAjLiBUUkFOU0xBVE9SUzogVGhlIGZpcnN0ICVzIHdpbGwgYmUgYSAidG9kbyIgY29tbWFuZCBsaWtlCiAjLiAicmV2ZXJ0IiBvciAicGljayIsIHRoZSBzZWNvbmQgJXMgYSBTSEExLgotIzogc2VxdWVuY2VyLmM6MTc5NQorIzogc2VxdWVuY2VyLmM6MTgyMwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogY2Fubm90IHBhcnNlIHBhcmVudCBjb21taXQgJXMiCiBtc2dzdHIgIiVzOiBubyBzZSBwdWVkZSBhbmFsaXphciBlbCBjb21taXQgcGFkcmUgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjE4NjAKKyM6IHNlcXVlbmNlci5jOjE4ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlbmFtZSAnJXMnIHRvICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIHJlbm9tYnJhciAnJXMnIGEgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MTkxNQorIzogc2VxdWVuY2VyLmM6MTk0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmV2ZXJ0ICVzLi4uICVzIgogbXNnc3RyICJubyBzZSBwdWRvIHJldmVydGlyICVzLi4uICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxOTE2CisjOiBzZXF1ZW5jZXIuYzoxOTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBhcHBseSAlcy4uLiAlcyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBhcGxpY2FyICVzLi4uICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxOTc0CisjOiBzZXF1ZW5jZXIuYzoxOTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImRyb3BwaW5nICVzICVzIC0tIHBhdGNoIGNvbnRlbnRzIGFscmVhZHkgdXBzdHJlYW1cbiIKK21zZ3N0ciAiYm90YW5kbyAkJXMgJXMgLS0gY29udGVuaWRvcyBkZWwgcGFyY2hlIHlhIGVzdMOhbiBlbiB1cHN0cmVhbVxuIgorCisjOiBzZXF1ZW5jZXIuYzoyMDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCAlczogZmFpbGVkIHRvIHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICJnaXQgJXM6IGZhbGzDsyBhbCBsZWVyIGVsIMOtbmRpY2UiCiAKLSM6IHNlcXVlbmNlci5jOjE5ODEKKyM6IHNlcXVlbmNlci5jOjIwMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0ICVzOiBmYWlsZWQgdG8gcmVmcmVzaCB0aGUgaW5kZXgiCiBtc2dzdHIgImdpdCAlczogZmFsbMOzIGFsIHJlZnJlc2NhciBlbCDDrW5kaWNlIgogCi0jOiBzZXF1ZW5jZXIuYzoyMDYyCisjOiBzZXF1ZW5jZXIuYzoyMTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRvZXMgbm90IGFjY2VwdCBhcmd1bWVudHM6ICclcyciCiBtc2dzdHIgIiVzIG5vIGFjZXB0YSBsb3MgYXJndW1lbnRvczogJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MjA3MQorIzogc2VxdWVuY2VyLmM6MjExMQogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIGFyZ3VtZW50cyBmb3IgJXMiCiBtc2dzdHIgImZhbHRhbiBhcmd1bWVudG9zIHBhcmEgcGFyYSAlcyIKIAotIzogc2VxdWVuY2VyLmM6MjEzMAorIzogc2VxdWVuY2VyLmM6MjE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYW5hbGl6YXIgJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MjIwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGxpbmUgJWQ6ICUuKnMiCiBtc2dzdHIgImzDrW5lYSBpbnbDoWxpZGEgJWQ6ICUuKnMiCiAKLSM6IHNlcXVlbmNlci5jOjIxMzgKKyM6IHNlcXVlbmNlci5jOjIyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90ICclcycgd2l0aG91dCBhIHByZXZpb3VzIGNvbW1pdCIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgICclcycgc2luIHVuIGNvbW1pdCBwcmV2aW8iCiAKLSM6IHNlcXVlbmNlci5jOjIyMDkKKyM6IHNlcXVlbmNlci5jOjIyOTgKK21zZ2lkICJjYW5jZWxsaW5nIGEgY2hlcnJ5IHBpY2tpbmcgaW4gcHJvZ3Jlc3MiCittc2dzdHIgImNhbmNlbGFuZG8gY2hlcnJ5LXBpY2sgZW4gcHJvZ3Jlc28iCisKKyM6IHNlcXVlbmNlci5jOjIzMDUKK21zZ2lkICJjYW5jZWxsaW5nIGEgcmV2ZXJ0IGluIHByb2dyZXNzIgorbXNnc3RyICJjYW5jZWxhbmRvIHJldmVydCBlbiBwcm9ncmVzbyIKKworIzogc2VxdWVuY2VyLmM6MjM0OQogbXNnaWQgInBsZWFzZSBmaXggdGhpcyB1c2luZyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycuIgogbXNnc3RyICJwb3IgZmF2b3IgYXJyZWdsZSBlc3RvIHVzYW5kbyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycuIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjExCisjOiBzZXF1ZW5jZXIuYzoyMzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVudXNhYmxlIGluc3RydWN0aW9uIHNoZWV0OiAnJXMnIgogbXNnc3RyICJob2phIGRlIGluc3RydWNjaW9uZXMgaW51dGlsaXphYmxlOiAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjE2CisjOiBzZXF1ZW5jZXIuYzoyMzU2CiBtc2dpZCAibm8gY29tbWl0cyBwYXJzZWQuIgogbXNnc3RyICJuaW5nw7puIGNvbW1pdCBhbmFsaXphZG8uIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjI3CisjOiBzZXF1ZW5jZXIuYzoyMzY3CiBtc2dpZCAiY2Fubm90IGNoZXJyeS1waWNrIGR1cmluZyBhIHJldmVydC4iCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIHJlYWxpemFyIGNoZXJyeS1waWNrIGR1cmFudGUgdW4gcmV2ZXJ0LiIKIAotIzogc2VxdWVuY2VyLmM6MjIyOQorIzogc2VxdWVuY2VyLmM6MjM2OQogbXNnaWQgImNhbm5vdCByZXZlcnQgZHVyaW5nIGEgY2hlcnJ5LXBpY2suIgogbXNnc3RyICJubyBzZSBwdWVkZSByZWFsaXphciB1biByZXZlcnQgZHVyYW50ZSB1biBjaGVycnktcGljay4iCiAKLSM6IHNlcXVlbmNlci5jOjIyOTkKKyM6IHNlcXVlbmNlci5jOjI0NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICJ2YWxvciBpbnbDoWxpZG8gcGFyYSAlczogJXMiCiAKLSM6IHNlcXVlbmNlci5jOjIzODAKKyM6IHNlcXVlbmNlci5jOjI1NDAKIG1zZ2lkICJ1bnVzYWJsZSBzcXVhc2gtb250byIKIG1zZ3N0ciAic3F1YXNoLW9udG8gaW5zZXJ2aWJsZSIKIAotIzogc2VxdWVuY2VyLmM6MjM5NgorIzogc2VxdWVuY2VyLmM6MjU1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgb3B0aW9ucyBzaGVldDogJyVzJyIKIG1zZ3N0ciAiaG9qYSBkZSBvcGNpb25lcyBtYWwgZm9ybWFkYTogJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MjQ3OSBzZXF1ZW5jZXIuYzo0MDA1CisjOiBzZXF1ZW5jZXIuYzoyNjQ0IHNlcXVlbmNlci5jOjQzNjEKIG1zZ2lkICJlbXB0eSBjb21taXQgc2V0IHBhc3NlZCIKIG1zZ3N0ciAiY29uanVudG8gZGUgY29tbWl0cyB2YWPDrW8gZW50cmVnYWRvIgogCi0jOiBzZXF1ZW5jZXIuYzoyNDg3Ci1tc2dpZCAiYSBjaGVycnktcGljayBvciByZXZlcnQgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIKLW1zZ3N0ciAidW4gY2hlcnJ5LXBpY2sgbyByZXZlcnQgeWEgZXN0w6EgZW4gcHJvZ3Jlc28iCisjOiBzZXF1ZW5jZXIuYzoyNjYwCittc2dpZCAicmV2ZXJ0IGlzIGFscmVhZHkgaW4gcHJvZ3Jlc3MiCittc2dzdHIgInJldmVydCB5YSBlc3TDoSBlbiBwcm9ncmVzbyIKIAotIzogc2VxdWVuY2VyLmM6MjQ4OAotbXNnaWQgInRyeSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8IC0tcXVpdCB8IC0tYWJvcnQpXCIiCi1tc2dzdHIgImludGVudGEgXCJnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAtLXF1aXQgfCAtLWFib3J0KVwiIgorIzogc2VxdWVuY2VyLmM6MjY2MgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnkgXCJnaXQgcmV2ZXJ0ICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIgorbXNnc3RyICJpbnRlbnRhIFwiZ2l0IHJldmVydCAoLS1jb250aW51ZSB8IC0tcXVpdCB8ICVzIC0tYWJvcnQpXCIiCiAKLSM6IHNlcXVlbmNlci5jOjI0OTEKKyM6IHNlcXVlbmNlci5jOjI2NjUKK21zZ2lkICJjaGVycnktcGljayBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgorbXNnc3RyICJjaGVycnktcGljayB5YSBlc3TDoSBlbiBwcm9ncmVzbyIKKworIzogc2VxdWVuY2VyLmM6MjY2NworIywgYy1mb3JtYXQKK21zZ2lkICJ0cnkgXCJnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAlcy0tYWJvcnQgfCAtLXF1aXQpXCIiCittc2dzdHIgImludGVudGEgXCJnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAtLXF1aXQgfCAlcyAtLWFib3J0KVwiIgorCisjOiBzZXF1ZW5jZXIuYzoyNjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgc2VxdWVuY2VyIGRpcmVjdG9yeSAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGNyZWFyIHVuIGRpcmVjdG9yaW8gc2VjdWVuY2lhZG9yICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjI1MDUKKyM6IHNlcXVlbmNlci5jOjI2OTYKIG1zZ2lkICJjb3VsZCBub3QgbG9jayBIRUFEIgogbXNnc3RyICJubyBzZSBwdWRvIGJsb3F1ZWFyIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjI1NjAgc2VxdWVuY2VyLmM6Mzc2MQorIzogc2VxdWVuY2VyLmM6Mjc1NiBzZXF1ZW5jZXIuYzo0MDk5CiBtc2dpZCAibm8gY2hlcnJ5LXBpY2sgb3IgcmV2ZXJ0IGluIHByb2dyZXNzIgogbXNnc3RyICJuaW5nw7puIGNoZXJyeS1waWNrIG8gcmV2ZXJ0IGVuIHByb2dyZXNvIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTYyCisjOiBzZXF1ZW5jZXIuYzoyNzU4IHNlcXVlbmNlci5jOjI3NjkKIG1zZ2lkICJjYW5ub3QgcmVzb2x2ZSBIRUFEIgogbXNnc3RyICJubyBzZSBwdWVkZSByZXNvbHZlciBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTY0IHNlcXVlbmNlci5jOjI1OTkKKyM6IHNlcXVlbmNlci5jOjI3NjAgc2VxdWVuY2VyLmM6MjgwNAogbXNnaWQgImNhbm5vdCBhYm9ydCBmcm9tIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIgogbXNnc3RyICJubyBzZSBwdWVkZSBhYm9ydGFyIGRlIHVuYSByYW1hIHBvciBuYWNlciIKIAotIzogc2VxdWVuY2VyLmM6MjU4NSBidWlsdGluL2dyZXAuYzo3MjEKKyM6IHNlcXVlbmNlci5jOjI3OTAgYnVpbHRpbi9ncmVwLmM6NzI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGFicmlyICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjI1ODcKKyM6IHNlcXVlbmNlci5jOjI3OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJyVzJzogJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGxlZXIgJyVzJzogJXMiCiAKLSM6IHNlcXVlbmNlci5jOjI1ODgKKyM6IHNlcXVlbmNlci5jOjI3OTMKIG1zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIgogbXNnc3RyICJmaW5hbCBkZSBhcmNoaXZvIGluZXNwZXJhZG8iCiAKLSM6IHNlcXVlbmNlci5jOjI1OTQKKyM6IHNlcXVlbmNlci5jOjI3OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RvcmVkIHByZS1jaGVycnktcGljayBIRUFEIGZpbGUgJyVzJyBpcyBjb3JydXB0IgogbXNnc3RyICJhcmNoaXZvIEhFQUQgZGUgcHJlLWNoZXJyeS1waWNrIGd1YXJkYWRvwqAnJXMnIGVzdMOhIGNvcnJ1cHRvIgogCi0jOiBzZXF1ZW5jZXIuYzoyNjA1CisjOiBzZXF1ZW5jZXIuYzoyODEwCiBtc2dpZCAiWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFELiBOb3QgcmV3aW5kaW5nLCBjaGVjayB5b3VyIEhFQUQhIgotbXNnc3RyICJQYXJlY2UgcXVlIHNlIGhhIG1vdmlkbyBIRUFELiBObyBzZSBoYWNlIHJlYm9iaW5hZG8sIHJldmlzZSBzdSBIRUFEISIKK21zZ3N0ciAiUGFyZWNlIHF1ZSBzZSBoYSBtb3ZpZG8gSEVBRC4gTm8gc2UgaGFjZSByZWJvYmluYWRvLCDCoXJldmlzYSB0dSBIRUFEISIKIAotIzogc2VxdWVuY2VyLmM6MjcwOSBzZXF1ZW5jZXIuYzozNjc5CisjOiBzZXF1ZW5jZXIuYzoyODUxCittc2dpZCAibm8gcmV2ZXJ0IGluIHByb2dyZXNzIgorbXNnc3RyICJubyBoYXkgcmV2ZXJ0IGVuIHByb2dyZXNvIgorCisjOiBzZXF1ZW5jZXIuYzoyODU5Cittc2dpZCAibm8gY2hlcnJ5LXBpY2sgaW4gcHJvZ3Jlc3MiCittc2dzdHIgIm5pbmfDum4gY2hlcnJ5LXBpY2sgZW4gcHJvZ3Jlc28iCisKKyM6IHNlcXVlbmNlci5jOjI4NjkKK21zZ2lkICJmYWlsZWQgdG8gc2tpcCB0aGUgY29tbWl0IgorbXNnc3RyICJmYWxsw7MgYWwgZXNjcmliaXIgZWwgY29tbWl0IgorCisjOiBzZXF1ZW5jZXIuYzoyODc2Cittc2dpZCAidGhlcmUgaXMgbm90aGluZyB0byBza2lwIgorbXNnc3RyICJubyBoYXkgbmFkYSBxdWUgc2FsdGFyIgorCisjOiBzZXF1ZW5jZXIuYzoyODc5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJoYXZlIHlvdSBjb21taXR0ZWQgYWxyZWFkeT9cbiIKKyJ0cnkgXCJnaXQgJXMgLS1jb250aW51ZVwiIgorbXNnc3RyICIiCisiwr95YSBoYXMgaGVjaG8gZWwgY29tbWl0P1xuIgorImludGVudGEgXCJnaXQgJXMgLS1jb250aW51ZVwiIgorCisjOiBzZXF1ZW5jZXIuYzozMDAzIHNlcXVlbmNlci5jOjQwMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHVwZGF0ZSAlcyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgYWN0dWFsaXphciAlcyIKIAotIzogc2VxdWVuY2VyLmM6Mjc0NyBzZXF1ZW5jZXIuYzozNjU5CisjOiBzZXF1ZW5jZXIuYzozMDQyIHNlcXVlbmNlci5jOjM5OTEKIG1zZ2lkICJjYW5ub3QgcmVhZCBIRUFEIgogbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjI3NjIKKyM6IHNlcXVlbmNlci5jOjMwNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNvcHkgJyVzJyB0byAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGNvcGlhciAnJXMnIGEgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6Mjc3MAorIzogc2VxdWVuY2VyLmM6MzA2NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGNhbiBhbWVuZCB0aGUgY29tbWl0IG5vdywgd2l0aFxuIgpAQCAtNTA5NCwzNSArNzEwMCwzMCBAQAogIlxuIgogIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiBtc2dzdHIgIiIKLSJQdWVkZSBlbm1lbmRhciBlbCBjb21taXQgYWhvcmEsIGNvblxuIgorIlB1ZWRlcyBlbm1lbmRhciBlbCBjb21taXQgYWhvcmEsIGNvblxuIgogIlxuIgogIlx0Z2l0IGNvbW1pdCAtLWFtZW5kICVzXG4iCiAiXG4iCi0iVW5hIHZleiBxdWUgZXN0w6kgc2F0aXNmZWNobyBjb24gbG9zIGNhbWJpb3MsIGVqZWN1dGVcbiIKKyJVbmEgdmV6IHF1ZSBlc3TDqXMgc2F0aXNmZWNobyBjb24gbG9zIGNhbWJpb3MsIGVqZWN1dGFcbiIKICJcbiIKICJcdGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzgwCisjOiBzZXF1ZW5jZXIuYzozMDc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBhcHBseSAlcy4uLiAlLipzIgogbXNnc3RyICJObyBzZSBwdWRvIGFwbGljYXIgJXMuLi4gJS4qcyIKIAotIzogc2VxdWVuY2VyLmM6Mjc4NworIzogc2VxdWVuY2VyLmM6MzA4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgbWVyZ2UgJS4qcyIKIG1zZ3N0ciAiTm8gc2UgcHVkbyBmdXNpb25hciAlLipzIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzk4IHNlcXVlbmNlci5jOjI4MDIgYnVpbHRpbi9kaWZmdG9vbC5jOjY0MAorIzogc2VxdWVuY2VyLmM6MzA5OCBzZXF1ZW5jZXIuYzozMTAyIGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNvcHkgJyVzJyB0byAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGNvcGlhciAnJXMnIGEgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MjgyNCBzZXF1ZW5jZXIuYzozMjQyIGJ1aWx0aW4vcmViYXNlLmM6NTgwIGJ1aWx0aW4vcmViYXNlLmM6MTAxOQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzcyIGJ1aWx0aW4vcmViYXNlLmM6MTQyNgotbXNnaWQgImNvdWxkIG5vdCByZWFkIGluZGV4IgotbXNnc3RyICJubyBzZSBwdWRvIGxlZXIgw61uZGljZSIKLQotIzogc2VxdWVuY2VyLmM6MjgyOQorIzogc2VxdWVuY2VyLmM6MzEyOQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhlY3V0aW9uIGZhaWxlZDogJXNcbiIKQEAgLTUxMzcsMTEgKzcxMzgsMTEgQEAKICIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogIlxuIgogCi0jOiBzZXF1ZW5jZXIuYzoyODM1CisjOiBzZXF1ZW5jZXIuYzozMTM1CiBtc2dpZCAiYW5kIG1hZGUgY2hhbmdlcyB0byB0aGUgaW5kZXggYW5kL29yIHRoZSB3b3JraW5nIHRyZWVcbiIKIG1zZ3N0ciAieSBzZSBoaWNpZXJvbiBjYW1iaW9zIGFsIMOtbmRpY2UgeS9vIMOhcmJvbCBkZSB0cmFiYWpvXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI4NDEKKyM6IHNlcXVlbmNlci5jOjMxNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4ZWN1dGlvbiBzdWNjZWVkZWQ6ICVzXG4iCkBAIC01MTU4LDc2ICs3MTU5LDcyIEBACiAiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKICJcbiIKIAotIzogc2VxdWVuY2VyLmM6MjkwMgorIzogc2VxdWVuY2VyLmM6MzIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbGxlZ2FsIGxhYmVsIG5hbWU6ICclLipzJyIKIG1zZ3N0ciAibm9tYnJlIGRlIGxhYmVsIGlsZWdhbDogJyUuKnMnIgogCi0jOiBzZXF1ZW5jZXIuYzoyOTU0CisjOiBzZXF1ZW5jZXIuYzozMjU2CiBtc2dpZCAid3JpdGluZyBmYWtlIHJvb3QgY29tbWl0IgogbXNnc3RyICJlc2NyaWJpZW5kbyBjb21taXQgcmHDrXogZmFsc28iCiAKLSM6IHNlcXVlbmNlci5jOjI5NTkKKyM6IHNlcXVlbmNlci5jOjMyNjEKIG1zZ2lkICJ3cml0aW5nIHNxdWFzaC1vbnRvIgogbXNnc3RyICJlc2NyaWJpZW5kbyBzcXVhc2gtb250byIKIAotIzogc2VxdWVuY2VyLmM6Mjk5NyBidWlsdGluL3JlYmFzZS5jOjU4NSBidWlsdGluL3JlYmFzZS5jOjU5MQorIzogc2VxdWVuY2VyLmM6MzI5OSBidWlsdGluL3JlYmFzZS5jOjg4MCBidWlsdGluL3JlYmFzZS5jOjg4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzIgogbXNnc3RyICJmYWxsw7MgYWwgZW5jb250cmFyIMOhcmJvbCBkZSAlcyIKIAotIzogc2VxdWVuY2VyLmM6MzAxNSBidWlsdGluL3JlYmFzZS5jOjYwNAotbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBpbmRleCIKLW1zZ3N0ciAibm8gc2UgcHVkbyBlc2NyaWJpciDDrW5kaWNlIgotCi0jOiBzZXF1ZW5jZXIuYzozMDQyCisjOiBzZXF1ZW5jZXIuYzozMzQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gcmVzb2x2ZXIgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MzA2OAorIzogc2VxdWVuY2VyLmM6MzM3NQogbXNnaWQgImNhbm5vdCBtZXJnZSB3aXRob3V0IGEgY3VycmVudCByZXZpc2lvbiIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgZnVzaW9uYXIgc2luIHVuYSB2ZXJzacOzbiBhY3R1YWwiCiAKLSM6IHNlcXVlbmNlci5jOjMwOTAKKyM6IHNlcXVlbmNlci5jOjMzOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICclLipzJyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgYW5hbGl6YXIgJyUuKnMnIgogCi0jOiBzZXF1ZW5jZXIuYzozMDk5CisjOiBzZXF1ZW5jZXIuYzozNDA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gbWVyZ2U6ICclLipzJyIKIG1zZ3N0ciAibmFkYSBwYXJhIGZ1c2lvbmFyOiAnJS4qcyciCiAKLSM6IHNlcXVlbmNlci5jOjMxMTEKKyM6IHNlcXVlbmNlci5jOjM0MTgKIG1zZ2lkICJvY3RvcHVzIG1lcmdlIGNhbm5vdCBiZSBleGVjdXRlZCBvbiB0b3Agb2YgYSBbbmV3IHJvb3RdIgogbXNnc3RyICJmdXNpw7NuIG9jdG9wdXMgbm8gcHVlZGUgc2VyIGVqZWN1dGFkYSBlbiBsYSBwdW50YSBkZSB1biBbbnVldm8gcm9vdF0iCiAKLSM6IHNlcXVlbmNlci5jOjMxMjYKKyM6IHNlcXVlbmNlci5jOjM0MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCBjb21taXQgbWVzc2FnZSBvZiAnJXMnIgogbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyIGVsIG1lbnNhamUgZGVsIGNvbW1pdCAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzozMjc0CisjOiBzZXF1ZW5jZXIuYzozNTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBldmVuIGF0dGVtcHQgdG8gbWVyZ2UgJyUuKnMnIgogbXNnc3RyICJubyBzZSBwdWRvIGludGVudGFyIGZ1c2lvbmFyICclLipzJyIKIAotIzogc2VxdWVuY2VyLmM6MzI5MAorIzogc2VxdWVuY2VyLmM6MzYxMAogbXNnaWQgIm1lcmdlOiBVbmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCiBtc2dzdHIgImZ1c2nDs246IE5vIHNlIHB1ZWRlIGVzY3JpYmlyIGVsIG51ZXZvIGFyY2hpdm8gw61uZGljZSIKIAotIzogc2VxdWVuY2VyLmM6MzM1OCBidWlsdGluL3JlYmFzZS5jOjI2OAorIzogc2VxdWVuY2VyLmM6MzY3OSBidWlsdGluL3JlYmFzZS5jOjczNwogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBsaWVkIGF1dG9zdGFzaC5cbiIKIG1zZ3N0ciAiQXV0b3N0YXNoIGFwbGljYWRvLlxuIgogCi0jOiBzZXF1ZW5jZXIuYzozMzcwCisjOiBzZXF1ZW5jZXIuYzozNjkxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdG9yZSAlcyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgZ3VhcmRhciAlcyIKIAotIzogc2VxdWVuY2VyLmM6MzM3MyBidWlsdGluL3JlYmFzZS5jOjI4NAorIzogc2VxdWVuY2VyLmM6MzY5NCBidWlsdGluL3JlYmFzZS5jOjc1MyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJBcHBseWluZyBhdXRvc3Rhc2ggcmVzdWx0ZWQgaW4gY29uZmxpY3RzLlxuIgpAQCAtNTIzOSwzMSArNzIzNiwyNiBAQAogIlB1ZWRlcyBlamVjdXRhciBcImdpdCBzdGFzaCBwb3BcIiBvIFwiZ2l0IHN0YXNoIGRyb3BcIiBlbiBjdWFscXVpZXIgIgogIm1vbWVudG8uXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM0MjcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IGNoZWNrb3V0ICVzIgotbXNnc3RyICJubyBzZSBwdWVkZSBoYWNlciBjaGVja291dCBhICVzIgotCi0jOiBzZXF1ZW5jZXIuYzozNDQxCisjOiBzZXF1ZW5jZXIuYzozNzU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBub3QgYSB2YWxpZCBPSUQiCiBtc2dzdHIgIiVzIG5vIGVzIE9JRCB2w6FsaWRvIgogCi0jOiBzZXF1ZW5jZXIuYzozNDQ2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MjQKKyM6IHNlcXVlbmNlci5jOjM3NjAgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc3OQogbXNnaWQgImNvdWxkIG5vdCBkZXRhY2ggSEVBRCIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgZGVzYWNvcGxhciBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzozNDYxCisjOiBzZXF1ZW5jZXIuYzozNzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN0b3BwZWQgYXQgSEVBRFxuIgogbXNnc3RyICJEZXRlbmlkbyBlbiBIRUFEXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM0NjMKKyM6IHNlcXVlbmNlci5jOjM3NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAlc1xuIgogbXNnc3RyICJEZXRlbmlkbyBlbiAlc1xuIgogCi0jOiBzZXF1ZW5jZXIuYzozNDcxCisjOiBzZXF1ZW5jZXIuYzozNzg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDb3VsZCBub3QgZXhlY3V0ZSB0aGUgdG9kbyBjb21tYW5kXG4iCkBAIC01Mjg0LDQ4ICs3Mjc2LDQ4IEBACiAiICAgIGdpdCByZWJhc2UgLS1lZGl0LXRvZG9cbiIKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM1NDMKKyM6IHNlcXVlbmNlci5jOjM4NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAlcy4uLiAgJS4qc1xuIgogbXNnc3RyICJEZXRlbmlkbyBlbiAlcy4uLiAgJS4qc1xuIgogCi0jOiBzZXF1ZW5jZXIuYzozNjIyCisjOiBzZXF1ZW5jZXIuYzozOTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gY29tbWFuZCAlZCIKIG1zZ3N0ciAiY29tYW5kbyBkZXNjb25vY2lkbyAlZCIKIAotIzogc2VxdWVuY2VyLmM6MzY2NworIzogc2VxdWVuY2VyLmM6Mzk5OQogbXNnaWQgImNvdWxkIG5vdCByZWFkIG9yaWctaGVhZCIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgbGVlciBvcmlnLWhlYWQiCiAKLSM6IHNlcXVlbmNlci5jOjM2NzIgc2VxdWVuY2VyLmM6NDc0MQorIzogc2VxdWVuY2VyLmM6NDAwNAogbXNnaWQgImNvdWxkIG5vdCByZWFkICdvbnRvJyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgbGVlciAnb250byciCiAKLSM6IHNlcXVlbmNlci5jOjM2ODYKKyM6IHNlcXVlbmNlci5jOjQwMTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHVwZGF0ZSBIRUFEIHRvICVzIgogbXNnc3RyICJubyBzZSBwdWVkZSBhY3R1YWxpemFyIEhFQUQgYSAlcyIKIAotIzogc2VxdWVuY2VyLmM6Mzc3MgorIzogc2VxdWVuY2VyLmM6NDExMQogbXNnaWQgImNhbm5vdCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICJubyBzZSBwdWVkZSByZWFsaXphciByZWJhc2U6IFRpZW5lcyBjYW1iaW9zIGZ1ZXJhIGRlbCDDoXJlYSBkZSBzdGFnZS4iCiAKLSM6IHNlcXVlbmNlci5jOjM3ODEKKyM6IHNlcXVlbmNlci5jOjQxMjAKIG1zZ2lkICJjYW5ub3QgYW1lbmQgbm9uLWV4aXN0aW5nIGNvbW1pdCIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgYXJyZWdsYXIgdW4gY29tbWl0IG5vIGV4aXN0ZW50ZSIKIAotIzogc2VxdWVuY2VyLmM6Mzc4MworIzogc2VxdWVuY2VyLmM6NDEyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGZpbGU6ICclcyciCiBtc2dzdHIgImFyY2hpdm8gaW52w6FsaWRvOiAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzozNzg1CisjOiBzZXF1ZW5jZXIuYzo0MTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29udGVudHM6ICclcyciCiBtc2dzdHIgImNvbnRlbmlkbyBpbnbDoWxpZG86ICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjM3ODgKKyM6IHNlcXVlbmNlci5jOjQxMjcKIG1zZ2lkICIiCiAiXG4iCiAiWW91IGhhdmUgdW5jb21taXR0ZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS4gUGxlYXNlLCBjb21taXQgdGhlbVxuIgpAQCAtNTMzNiwxMjUgKzczMjgsNTkgQEAKICJ1biBjb21taXQgY29uIGVzdG9zXG4iCiAicHJpbWVybyB5IGx1ZWdvIGVqZWN1dGEgJ2dpdCByZWJhc2UgLS1jb250aW51ZScgZGUgbnVldm8uIgogCi0jOiBzZXF1ZW5jZXIuYzozODI0IHNlcXVlbmNlci5jOjM4NjIKKyM6IHNlcXVlbmNlci5jOjQxNjMgc2VxdWVuY2VyLmM6NDIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZmlsZTogJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBlc2NyaWJpciBlbCBhcmNoaXZvOiAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzozODc3CisjOiBzZXF1ZW5jZXIuYzo0MjE3CiBtc2dpZCAiY291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgogbXNnc3RyICJubyBzZSBwdWVkZSBlbGltaW5hciBDSEVSUllfUElDS19IRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzozODg0CisjOiBzZXF1ZW5jZXIuYzo0MjI0CiBtc2dpZCAiY291bGQgbm90IGNvbW1pdCBzdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIm5vIHNlIHB1ZG8gcmVhbGl6YXIgZWwgY29tbWl0IGNvbiBsb3MgY2FtYmlvcyBlbiBlbCDDoXJlYSBkZSBzdGFnZS4iCiAKLSM6IHNlcXVlbmNlci5jOjM5ODIKKyM6IHNlcXVlbmNlci5jOjQzMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGNhbid0IGNoZXJyeS1waWNrIGEgJXMiCiBtc2dzdHIgIiVzOiBubyBzZSBwdWVkZSBhcGxpY2FyIGNoZXJyeS1waWNrIGEgdW4gJXMiCiAKLSM6IHNlcXVlbmNlci5jOjM5ODYKKyM6IHNlcXVlbmNlci5jOjQzNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGJhZCByZXZpc2lvbiIKIG1zZ3N0ciAiJXM6IHJldmlzacOzbiBlcnLDs25lYSIKIAotIzogc2VxdWVuY2VyLmM6NDAyMQorIzogc2VxdWVuY2VyLmM6NDM3NwogbXNnaWQgImNhbid0IHJldmVydCBhcyBpbml0aWFsIGNvbW1pdCIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgcmV2ZXJ0aXIgY29tbyBjb21taXQgaW5pY2lhbCIKIAotIzogc2VxdWVuY2VyLmM6NDQ2NgorIzogc2VxdWVuY2VyLmM6NDg0NgogbXNnaWQgIm1ha2Vfc2NyaXB0OiB1bmhhbmRsZWQgb3B0aW9ucyIKIG1zZ3N0ciAibWFrZV9zY3JpcHQ6IG9wY2lvbmVzIGRlc2Nvbm9jaWRhcyIKIAotIzogc2VxdWVuY2VyLmM6NDQ2OQorIzogc2VxdWVuY2VyLmM6NDg0OQogbXNnaWQgIm1ha2Vfc2NyaXB0OiBlcnJvciBwcmVwYXJpbmcgcmV2aXNpb25zIgogbXNnc3RyICJtYWtlX3NjcmlwdDogZXJyb3IgcHJlcGFyYW5kbyByZXZpc2lvbmVzIgogCi0jOiBzZXF1ZW5jZXIuYzo0NTA5IHNlcXVlbmNlci5jOjQ1NjUgc2VxdWVuY2VyLmM6NDg0MAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bnVzYWJsZSB0b2RvIGxpc3Q6ICclcyciCi1tc2dzdHIgImxpc3RhIGRlIHBlbmRpZW50ZXMgaW51dGlsaXphYmxlOiAnJXMnIgotCi0jOiBzZXF1ZW5jZXIuYzo0NjIwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJ1bnJlY29nbml6ZWQgc2V0dGluZyAlcyBmb3Igb3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmluZy4iCi1tc2dzdHIgIiIKLSJvcGNpw7NuICVzIG5vIHJlY29ub2NpZGEgcGFyYSBsYSBvcGNpw7NuIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmFuZG8uIgotCi0jOiBzZXF1ZW5jZXIuYzo0NjkwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJXYXJuaW5nOiBzb21lIGNvbW1pdHMgbWF5IGhhdmUgYmVlbiBkcm9wcGVkIGFjY2lkZW50YWxseS5cbiIKLSJEcm9wcGVkIGNvbW1pdHMgKG5ld2VyIHRvIG9sZGVyKTpcbiIKLW1zZ3N0ciAiIgotIlBlbGlncm86IGFsZ3Vub3MgY29tbWl0cyBwdWVkZW4gaGFiZXIgc2lkbyBib3RhZG9zIGRlIGZvcm1hIGFjY2lkZW50YWwuXG4iCi0iQ29tbWl0cyBib3RhZG9zIChlbXBlemFuZG8gY29uIGVsIG1hcyBudWV2byk6XG4iCi0KLSM6IHNlcXVlbmNlci5jOjQ2OTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotIlRvIGF2b2lkIHRoaXMgbWVzc2FnZSwgdXNlIFwiZHJvcFwiIHRvIGV4cGxpY2l0bHkgcmVtb3ZlIGEgY29tbWl0LlxuIgotIlxuIgotIlVzZSAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgdG8gY2hhbmdlIHRoZSBsZXZlbCBvZiAiCi0id2FybmluZ3MuXG4iCi0iVGhlIHBvc3NpYmxlIGJlaGF2aW91cnMgYXJlOiBpZ25vcmUsIHdhcm4sIGVycm9yLlxuIgotIlxuIgotbXNnc3RyICIiCi0iUGFyYSBldml0YXIgZXN0ZSBtZW5zYWplLCB1c2UgXCJkcm9wXCIgcGFyYSBlbGltaW5hciBkZSBmb3JtYSBleHBsw61jaXRhIHVuICIKLSJjb21taXQuXG4iCi0iXG4iCi0iVXNlICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyBwYXJhIGNhbWJpYXIgZWwgbml2ZWwgZGUgIgotImFkdmVydGVuY2lhcy5cbiIKLSJMb3MgcG9zaWJsZXMgY29tcG9ydGFtaWVudG9zIHNvbjogaWdub3JlLHdhcm4sZXJyb3IuXG4iCi0iXG4iCi0KLSM6IHNlcXVlbmNlci5jOjQ3MTAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBjYW4gZml4IHRoaXMgd2l0aCAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tIgotImNvbnRpbnVlJy5cbiIKLSJPciB5b3UgY2FuIGFib3J0IHRoZSByZWJhc2Ugd2l0aCAnZ2l0IHJlYmFzZSAtLWFib3J0Jy5cbiIKLW1zZ3N0ciAiIgotIlNlIHB1ZWRlIGFycmVnbGFyIGVzdG8gY29uICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyB5IGRlc3B1w6lzIGVqZWN1dGFyICdnaXQgIgotInJlYmFzZSAtLWNvbnRpbnVlJy5cbiIKLSJPIHNlIHB1ZWRlIGFib3J0YXIgZWwgcmViYXNlIGNvbiAnZ2l0IHJlYmFzZSAtLWFib3J0Jy5cbiIKLQotIzogc2VxdWVuY2VyLmM6NDg0OCBzZXF1ZW5jZXIuYzo0ODg2CisjOiBzZXF1ZW5jZXIuYzo1MDgzIHNlcXVlbmNlci5jOjUxMDAKIG1zZ2lkICJub3RoaW5nIHRvIGRvIgogbXNnc3RyICJuYWRhIHF1ZSBoYWNlciIKIAotIzogc2VxdWVuY2VyLmM6NDg1MgotIywgYy1mb3JtYXQKLW1zZ2lkICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZCkiCi1tc2dpZF9wbHVyYWwgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kcykiCi1tc2dzdHJbMF0gIlJlYmFzZSAlcyBlbiAlcyAoJWQgY29tYW5kbykiCi1tc2dzdHJbMV0gIlJlYmFzZSAlcyBlbiAlcyAoJWQgY29tYW5kb3MpIgotCi0jOiBzZXF1ZW5jZXIuYzo0ODY0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBjb3B5ICclcycgdG8gJyVzJy4iCi1tc2dzdHIgIm5vIHNlIHB1ZG8gY29waWFyICclcycgYSAnJXMnLiIKLQotIzogc2VxdWVuY2VyLmM6NDg2OCBzZXF1ZW5jZXIuYzo0ODk3Ci1tc2dpZCAiY291bGQgbm90IHRyYW5zZm9ybSB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICJubyBzZSBwdWRvIHRyYW5zZm9ybWFyIGxpc3RhIGRlIHBlbmRpZW50ZXMiCi0KLSM6IHNlcXVlbmNlci5jOjQ5MDAKKyM6IHNlcXVlbmNlci5jOjUxMTkKIG1zZ2lkICJjb3VsZCBub3Qgc2tpcCB1bm5lY2Vzc2FyeSBwaWNrIGNvbW1hbmRzIgogbXNnc3RyICJubyBzZSBwdWRvIHNhbHRhciBsb3MgY29tYW5kb3MgcGljayBpbm5lY2VzYXJpb3MiCiAKLSM6IHNlcXVlbmNlci5jOjQ5ODMKKyM6IHNlcXVlbmNlci5jOjUyMTMKIG1zZ2lkICJ0aGUgc2NyaXB0IHdhcyBhbHJlYWR5IHJlYXJyYW5nZWQuIgogbXNnc3RyICJlc3RlIHNjcmlwdCB5YSBmdWUgcmVvcmdhbml6YWRvLiIKIAotIzogc2V0dXAuYzoxMjMKKyM6IHNldHVwLmM6MTI0CiAjLCBjLWZvcm1hdAotbXNnaWQgIiclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IgotbXNnc3RyICInJXMnIGVzdMOhIGZ1ZXJhIGRlbCByZXBvc2l0b3JpbyIKK21zZ2lkICInJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSBhdCAnJXMnIgorbXNnc3RyICInJXMnIGVzdMOhIGZ1ZXJhIGRlbCByZXBvc2l0b3JpbyBlbiAnJXMnIgogCi0jOiBzZXR1cC5jOjE3MgorIzogc2V0dXAuYzoxNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiVzOiBubyBzdWNoIHBhdGggaW4gdGhlIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTU0NjQsNyArNzM5MCw3IEBACiAiVXNlICdnaXQgPGNvbWFuZG8+IC0tIDxydXRhPi4uLicgcGFyYSBlc3BlY2lmaWNhciBydXRhcyBxdWUgbm8gZXhpc3RlbiAiCiAibG9jYWxtZW50ZS4iCiAKLSM6IHNldHVwLmM6MTg1CisjOiBzZXR1cC5jOjE4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IHVua25vd24gcmV2aXNpb24gb3IgcGF0aCBub3QgaW4gdGhlIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTU0NzYsMTIgKzc0MDIsMTIgQEAKICJVc2UgJy0tJyBwYXJhIHNlcGFyYXIgbGFzIHJ1dGFzIGRlIGxhcyByZXZpc2lvbmVzLCBkZSBlc3RhIG1hbmVyYTpcbiIKICInZ2l0IDxjb21hbmRvPiBbPHJldmlzacOzbj4uLi5dIC0tIFs8YXJjaGl2bz4uLi5dJyIKIAotIzogc2V0dXAuYzoyMzQKKyM6IHNldHVwLmM6MjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9wdGlvbiAnJXMnIG11c3QgY29tZSBiZWZvcmUgbm9uLW9wdGlvbiBhcmd1bWVudHMiCiBtc2dzdHIgIm9wY2nDs24gJyVzJyBkZWJlIHZlbmlyIGFudGVzIGRlIGFyZ3VtZW50b3Mgbm8gb3BjaW9uYWxlcyIKIAotIzogc2V0dXAuYzoyNTMKKyM6IHNldHVwLmM6MjczCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJhbWJpZ3VvdXMgYXJndW1lbnQgJyVzJzogYm90aCByZXZpc2lvbiBhbmQgZmlsZW5hbWVcbiIKQEAgLTU0OTIsOTUgKzc0MTgsOTUgQEAKICJVc2UgJy0tJyBwYXJhIHNlcGFyYXIgcnV0YXMgZGUgcmV2aXNpb25lcywgZGUgZXN0YSBtYW5lcmE6XG4iCiAiJ2dpdCA8Y29tYW5kbz4gWzxyZXZpc2nDs24+Li4uXSAtLSBbPGFyY2hpdm8+Li4uXSciCiAKLSM6IHNldHVwLmM6Mzg5CisjOiBzZXR1cC5jOjQwOQogbXNnaWQgInVuYWJsZSB0byBzZXQgdXAgd29yayB0cmVlIHVzaW5nIGludmFsaWQgY29uZmlnIgogbXNnc3RyICIiCiAibm8gZXMgcG9zaWJsZSBjb25maWd1cmFyIGVsIGRpcmVjdG9yaW8gZGUgdHJhYmFqbyB1c2FuZG8gdW5hIGNvbmZpZ3VyYWNpw7NuICIKICJpbnbDoWxpZGEiCiAKLSM6IHNldHVwLmM6MzkzCisjOiBzZXR1cC5jOjQxMwogbXNnaWQgInRoaXMgb3BlcmF0aW9uIG11c3QgYmUgcnVuIGluIGEgd29yayB0cmVlIgogbXNnc3RyICJlc3RhIG9wZXJhY2nDs24gZGViZSBzZXIgcmVhbGl6YWRhIGVuIHVuIMOhcmJvbCBkZSB0cmFiYWpvIgogCi0jOiBzZXR1cC5jOjUyNworIzogc2V0dXAuYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXhwZWN0ZWQgZ2l0IHJlcG8gdmVyc2lvbiA8PSAlZCwgZm91bmQgJWQiCiBtc2dzdHIgIlNlIGVzcGVyYWJhIHZlcnNpw7NuIGRlIGdpdCByZXBvICA8PSAlZCwgZW5jb250cmFkYSAlZCIKIAotIzogc2V0dXAuYzo1MzUKKyM6IHNldHVwLmM6NTY3CiBtc2dpZCAidW5rbm93biByZXBvc2l0b3J5IGV4dGVuc2lvbnMgZm91bmQ6IgogbXNnc3RyICJzZSBlbmNvbnRyw7MgZXh0ZW5zacOzbiBkZSByZXBvc2l0b3JpbyBkZXNjb25vY2lkYToiCiAKLSM6IHNldHVwLmM6NTU0CisjOiBzZXR1cC5jOjU4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBvcGVuaW5nICclcyciCiBtc2dzdHIgImVycm9yIGFicmllbmRvICclcyciCiAKLSM6IHNldHVwLmM6NTU2CisjOiBzZXR1cC5jOjU4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ0b28gbGFyZ2UgdG8gYmUgYSAuZ2l0IGZpbGU6ICclcyciCiBtc2dzdHIgIm11eSBncmFuZGUgcGFyYSBzZXIgdW4gYXJjaGl2byAuZ2l0OiAnJXMnIgogCi0jOiBzZXR1cC5jOjU1OAorIzogc2V0dXAuYzo1OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcmVhZGluZyAlcyIKIG1zZ3N0ciAiZXJyb3IgbGV5ZW5kbyAlcyIKIAotIzogc2V0dXAuYzo1NjAKKyM6IHNldHVwLmM6NTkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZ2l0ZmlsZSBmb3JtYXQ6ICVzIgogbXNnc3RyICJmb3JtYXRvIGdpdGZpbGUgaW52w6FsaWRvOiAlcyIKIAotIzogc2V0dXAuYzo1NjIKKyM6IHNldHVwLmM6NTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHBhdGggaW4gZ2l0ZmlsZTogJXMiCiBtc2dzdHIgIm5vIGhheSBydXRhIGVuIGdpdGZpbGU6ICVzIgogCi0jOiBzZXR1cC5jOjU2NAorIzogc2V0dXAuYzo1OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnk6ICVzIgogbXNnc3RyICJubyBlcyB1biByZXBvc2l0b3JpbyBnaXQ6ICVzIgogCi0jOiBzZXR1cC5jOjY2MworIzogc2V0dXAuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyQlcycgdG9vIGJpZyIKIG1zZ3N0ciAiJyQlcycgbXV5IGdyYW5kZSIKIAotIzogc2V0dXAuYzo2NzcKKyM6IHNldHVwLmM6NzA5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5OiAnJXMnIgogbXNnc3RyICJubyBlcyB1biByZXBvc2l0b3JpbyBnaXQ6ICclcyciCiAKLSM6IHNldHVwLmM6NzA2IHNldHVwLmM6NzA4IHNldHVwLmM6NzM5CisjOiBzZXR1cC5jOjczOCBzZXR1cC5jOjc0MCBzZXR1cC5jOjc3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY2hkaXIgdG8gJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgYXBsaWNhciBjaGRpciBhICclcyciCiAKLSM6IHNldHVwLmM6NzExIHNldHVwLmM6NzY3IHNldHVwLmM6Nzc3IHNldHVwLmM6ODE2IHNldHVwLmM6ODI0IHNldHVwLmM6ODM5CisjOiBzZXR1cC5jOjc0MyBzZXR1cC5jOjc5OSBzZXR1cC5jOjgwOSBzZXR1cC5jOjg0OCBzZXR1cC5jOjg1NgogbXNnaWQgImNhbm5vdCBjb21lIGJhY2sgdG8gY3dkIgogbXNnc3RyICJubyBzZSBwdWVkZSB2b2x2ZXIgYSBjd2QiCiAKLSM6IHNldHVwLmM6ODM3CisjOiBzZXR1cC5jOjg3MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJSpzJXMlcyciCittc2dzdHIgImZhbGzDsyBhbCBkZXRlcm1pbmFyICclKnMlcyVzJyIKKworIzogc2V0dXAuYzoxMTA4Cittc2dpZCAiVW5hYmxlIHRvIHJlYWQgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAiSW5jYXBheiBkZSBsZWVyIGVsIGRpcmVjdG9yaW8gZGUgdHJhYmFqbyBhY3R1YWwiCisKKyM6IHNldHVwLmM6MTExNyBzZXR1cC5jOjExMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNoYW5nZSB0byAnJXMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBjYW1iaWFyIGEgJyVzJyIKKworIzogc2V0dXAuYzoxMTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgb2YgdGhlIHBhcmVudCBkaXJlY3Rvcmllcyk6ICVzIgogbXNnc3RyICIiCiAibm8gZXMgdW4gcmVwb3NpdG9yaW8gZ2l0IChuaSBuaW5ndW5vIGRlIGxvcyBkaXJlY3RvcmlvcyBzdXBlcmlvcmVzKTogJXMiCiAKLSM6IHNldHVwLmM6ODQ4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBzdGF0ICclKnMlcyVzJyIKLW1zZ3N0ciAiZmFsbMOzIGFsIGRldGVybWluYXIgJyUqcyVzJXMnIgotCi0jOiBzZXR1cC5jOjEwNzgKLW1zZ2lkICJVbmFibGUgdG8gcmVhZCBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IgotbXNnc3RyICJJbmNhcGF6IGRlIGxlZXIgZWwgZGlyZWN0b3JpbyBkZSB0cmFiYWpvIGFjdHVhbCIKLQotIzogc2V0dXAuYzoxMDkwIHNldHVwLmM6MTA5NgotIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3QgY2hhbmdlIHRvICclcyciCi1tc2dzdHIgIm5vIHNlIHB1ZWRlIGNhbWJpYXIgYSAnJXMnIgotCi0jOiBzZXR1cC5jOjExMDkKKyM6IHNldHVwLmM6MTEzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBwYXJlbnQgdXAgdG8gbW91bnQgcG9pbnQgJXMpXG4iCkBAIC01NTkwLDcgKzc1MTYsNyBAQAogIlBhcmFuZG8gZW4gZWwgbMOtbWl0ZSBkZWwgc2lzdGVtYSBkZSBhcmNoaXZvcyAiCiAiKEdJVF9ESVNDT1ZFUllfQUNST1NTX0ZJTEVTWVNURU0gbm8gZXN0YWJsZWNpZG8pLiIKIAotIzogc2V0dXAuYzoxMTkyCisjOiBzZXR1cC5jOjEyNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInByb2JsZW0gd2l0aCBjb3JlLnNoYXJlZFJlcG9zaXRvcnkgZmlsZW1vZGUgdmFsdWUgKDAlLjNvKS5cbiIKQEAgLTU1OTksMjg3ICs3NTI1LDI5MiBAQAogInByb2JsZW1hIGNvbiBlbCB2YWxvciBkZWwgbW9kbyBkZSBhcmNoaXZvIGNvcmUuc2hhcmVkUmVwb3NpdG9yeSAoMCUuM28pLlxuIgogIkVsIGR1ZcOxbyBkZSBsb3MgYXJjaGl2b3MgdGllbmUgcXVlIHRlbmVyIHBlcm1pc29zIGRlIGxlY3R1cmEgeSBlc2NyaXR1cmEuIgogCi0jOiBzZXR1cC5jOjEyMzUKKyM6IHNldHVwLmM6MTI4OQogbXNnaWQgIm9wZW4gL2Rldi9udWxsIG9yIGR1cCBmYWlsZWQiCiBtc2dzdHIgImZhbGzDsyBhbCBhYnJpciAvZGV2L251bGwgbyBkdXAiCiAKLSM6IHNldHVwLmM6MTI1MAorIzogc2V0dXAuYzoxMzA0CiBtc2dpZCAiZm9yayBmYWlsZWQiCiBtc2dzdHIgImZhbGzDsyBmb3JrIgogCi0jOiBzZXR1cC5jOjEyNTUKKyM6IHNldHVwLmM6MTMwOQogbXNnaWQgInNldHNpZCBmYWlsZWQiCiBtc2dzdHIgImZhbGzDsyBzZXRzaWQiCiAKLSM6IHNoYTEtZmlsZS5jOjM4MQorIzogc2hhMS1maWxlLmM6NDUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCBkaXJlY3RvcnkgJXMgZG9lcyBub3QgZXhpc3Q7IGNoZWNrIC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiCiBtc2dzdHIgIm9iamV0byBkaXJlY3RvcmlvICVzIG5vIGV4aXN0ZTsgcmV2aXNhIC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiCiAKLSM6IHNoYTEtZmlsZS5jOjQzMgorIzogc2hhMS1maWxlLmM6NTAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgYWx0ZXJuYXRlIG9iamVjdCBwYXRoOiAlcyIKIG1zZ3N0ciAiaW5jYXBheiBkZSBub3JtYWxpemFyIGxhIHJ1dGEgZGUgb2JqZXRvIGFsdGVybm86ICVzIgogCi0jOiBzaGExLWZpbGUuYzo1MDMKKyM6IHNoYTEtZmlsZS5jOjU3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogaWdub3JpbmcgYWx0ZXJuYXRlIG9iamVjdCBzdG9yZXMsIG5lc3RpbmcgdG9vIGRlZXAiCiBtc2dzdHIgIiVzOiBpZ25vcmFuZG8gZXNwYWNpb3MgZGUgb2JqZXRvcyBhbHRlcm5vcywgYW5pZGFkbyBtdXkgcHJvZnVuZG8iCiAKLSM6IHNoYTEtZmlsZS5jOjUxMAorIzogc2hhMS1maWxlLmM6NTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgb2JqZWN0IGRpcmVjdG9yeTogJXMiCiBtc2dzdHIgImluY2FwYXogZGUgbm9ybWFsaXphciBkaXJlY3RvcmlvIGRlIG9iamV0bzogJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjU2NQorIzogc2hhMS1maWxlLmM6NjI1CiBtc2dpZCAidW5hYmxlIHRvIGZkb3BlbiBhbHRlcm5hdGVzIGxvY2tmaWxlIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGhhY2VyIGZkb3BlbiBlbiBsb2NrZmlsZSBhbHRlcm5vcyIKIAotIzogc2hhMS1maWxlLmM6NTgzCisjOiBzaGExLWZpbGUuYzo2NDMKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBhbHRlcm5hdGVzIGZpbGUiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgbGVlciBhcmNoaXZvcyBhbHRlcm5vcyIKIAotIzogc2hhMS1maWxlLmM6NTkwCisjOiBzaGExLWZpbGUuYzo2NTAKIG1zZ2lkICJ1bmFibGUgdG8gbW92ZSBuZXcgYWx0ZXJuYXRlcyBmaWxlIGludG8gcGxhY2UiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgbW92ZXIgYXJjaGl2b3MgYWx0ZXJub3MgZW4gZWwgbHVnYXIiCiAKLSM6IHNoYTEtZmlsZS5jOjYyNQorIzogc2hhMS1maWxlLmM6Njg1CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAicnV0YSAnJXMnIG5vIGV4aXN0ZSIKIAotIzogc2hhMS1maWxlLmM6NjUxCisjOiBzaGExLWZpbGUuYzo3MTEKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBhcyBhIGxpbmtlZCBjaGVja291dCBpcyBub3Qgc3VwcG9ydGVkIHlldC4iCiBtc2dzdHIgIiIKICJyZXBvc2l0b3JpbyBkZSByZWZlcmVuY2lhICclcycgY29tbyB1biBjaGVja291dCB2aW5jdWxhZG8gbm8gZXMgc29wb3J0YWRvICIKICJ0b2RhdsOtYS4iCiAKLSM6IHNoYTEtZmlsZS5jOjY1NworIzogc2hhMS1maWxlLmM6NzE3CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgbm90IGEgbG9jYWwgcmVwb3NpdG9yeS4iCiBtc2dzdHIgInJlcG9zaXRvcmlvIGRlIHJlZmVyZW5jaWEgJyVzJyBubyBlcyB1biByZXBvc2l0b3JpbyBsb2NhbC4iCiAKLSM6IHNoYTEtZmlsZS5jOjY2MworIzogc2hhMS1maWxlLmM6NzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgc2hhbGxvdyIKIG1zZ3N0ciAicmVwb3NpdG9yaW8gZGUgcmVmZXJlbmNpYSAnJXMnIGVzIHN1cGVyZmljaWFsIChzaGFsbG93KSIKIAotIzogc2hhMS1maWxlLmM6NjcxCisjOiBzaGExLWZpbGUuYzo3MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBpcyBncmFmdGVkIgogbXNnc3RyICJyZXBvc2l0b3JpbyBkZSByZWZlcmVuY2lhICclIHMnIGVzdMOhIGluamVydGFkbyIKIAotIzogc2hhMS1maWxlLmM6NzgxCisjOiBzaGExLWZpbGUuYzo3OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lIHdoaWxlIHBhcnNpbmcgYWx0ZXJuYXRlIHJlZnM6ICVzIgorbXNnc3RyICJsw61uZWEgaW52w6FsaWRhIG1pZW50cmFzIHNlIGFuYWxpemFiYW4gcmVmcyBhbHRlcm5hczogJXMiCisKKyM6IHNoYTEtZmlsZS5jOjk0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhdHRlbXB0aW5nIHRvIG1tYXAgJTxQUkl1TUFYPiBvdmVyIGxpbWl0ICU8UFJJdU1BWD4iCiBtc2dzdHIgImludGVudGFuZG8gdXNhciBtbWFwICU8UFJJdU1BWD4gc29icmUgbMOtbWl0ZSAlPFBSSXVNQVg+IgogCi0jOiBzaGExLWZpbGUuYzo4MDYKKyM6IHNoYTEtZmlsZS5jOjk2NAogbXNnaWQgIm1tYXAgZmFpbGVkIgogbXNnc3RyICJtbWFwIGZhbGzDsyIKIAotIzogc2hhMS1maWxlLmM6OTczCisjOiBzaGExLWZpbGUuYzoxMTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCBmaWxlICVzIGlzIGVtcHR5IgogbXNnc3RyICJhcmNoaXZvIGRlIG9iamV0byAlcyBlc3TDoSB2YWPDrW8iCiAKLSM6IHNoYTEtZmlsZS5jOjEwOTMgc2hhMS1maWxlLmM6MjIxNQorIzogc2hhMS1maWxlLmM6MTI2MyBzaGExLWZpbGUuYzoyNDQzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgbG9vc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgIm9iamV0byBwZXJkaWRvIGNvcnJ1cHRvICclcyciCiAKLSM6IHNoYTEtZmlsZS5jOjEwOTUgc2hhMS1maWxlLmM6MjIxOQorIzogc2hhMS1maWxlLmM6MTI2NSBzaGExLWZpbGUuYzoyNDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgImdhcmJhZ2UgYXQgZW5kIG9mIGxvb3NlIG9iamVjdCAnJXMnIgogbXNnc3RyICJiYXN1cmEgYWwgZmluYWwgZGVsIG9iamV0byBwZXJkaWRvICclcyciCiAKLSM6IHNoYTEtZmlsZS5jOjExMzcKKyM6IHNoYTEtZmlsZS5jOjEzMDcKIG1zZ2lkICJpbnZhbGlkIG9iamVjdCB0eXBlIgogbXNnc3RyICJ0aXBvIGRlIG9iamV0byBpbnbDoWxpZG8iCiAKLSM6IHNoYTEtZmlsZS5jOjEyMTkKKyM6IHNoYTEtZmlsZS5jOjEzOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBkZXNlbXBhY2FyIGhlYWRlciAlcyBjb24gLS1hbGxvdy11bmtub3duLXR5cGUiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMjIKKyM6IHNoYTEtZmlsZS5jOjEzOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayAlcyBoZWFkZXIiCiBtc2dzdHIgImluY2FwYXogZGUgZGVzZW1wYXF1ZXRhciBoZWFkZXIgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMjgKKyM6IHNoYTEtZmlsZS5jOjE0MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciB3aXRoIC0tYWxsb3ctdW5rbm93bi10eXBlIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGFuYWxpemFyIGhlYWRlciAlcyBjb24gLS1hbGxvdy11bmtub3duLXR5cGUiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMzEKKyM6IHNoYTEtZmlsZS5jOjE0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciIKIG1zZ3N0ciAiaW5jYXBheiBkZSBhbmFsaXphciBoZWFkZXIgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjE0MjIKKyM6IHNoYTEtZmlsZS5jOjE2MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgb2JqZWN0ICVzIgogbXNnc3RyICJmYWxsw7MgYWwgbGVlciBvYmpldG8gJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjE0MjYKKyM6IHNoYTEtZmlsZS5jOjE2MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZW1lbnQgJXMgbm90IGZvdW5kIGZvciAlcyIKIG1zZ3N0ciAicmVlbXBsYXpvICVzIG5vIGVuY29udHJhZG8gcGFyYSAlcyIKIAotIzogc2hhMS1maWxlLmM6MTQzMAorIzogc2hhMS1maWxlLmM6MTYzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJsb29zZSBvYmplY3QgJXMgKHN0b3JlZCBpbiAlcykgaXMgY29ycnVwdCIKIG1zZ3N0ciAib2JqZXRvIHBlcmRpZG8gJXMgKGd1YXJkYWRvIGVuICVzKSBlc3TDoSBjb3Jyb21waWRvIgogCi0jOiBzaGExLWZpbGUuYzoxNDM0CisjOiBzaGExLWZpbGUuYzoxNjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2tlZCBvYmplY3QgJXMgKHN0b3JlZCBpbiAlcykgaXMgY29ycnVwdCIKIG1zZ3N0ciAicGFxdWV0ZSBkZSBvYmpldG8gJXMgKGd1YXJkYWRvIGVuICVzKSBlc3TDoSBjb3Jyb21waWRvIgogCi0jOiBzaGExLWZpbGUuYzoxNTM2CisjOiBzaGExLWZpbGUuYzoxNzQ2CiAjLCBjLWZvcm1hdAotbXNnaWQgInVuYWJsZSB0byB3cml0ZSBzaGExIGZpbGVuYW1lICVzIgotbXNnc3RyICJpbmNhcGF6IGRlIGVzY3JpYmlyIGVsIG5vbWJyZSBkZSBhcmNoaXZvIHNoYTEgJXMiCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJXMiCittc2dzdHIgIm5vIGVzIHBvc2libGUgZXNjcmliaXIgYXJjaGl2byAlcyIKIAotIzogc2hhMS1maWxlLmM6MTU0MworIzogc2hhMS1maWxlLmM6MTc1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gc2V0IHBlcm1pc3Npb24gdG8gJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBwb25lciBwZXJtaXNvcyBhICclcyciCiAKLSM6IHNoYTEtZmlsZS5jOjE1NTAKKyM6IHNoYTEtZmlsZS5jOjE3NjAKIG1zZ2lkICJmaWxlIHdyaXRlIGVycm9yIgogbXNnc3RyICJmYWxsw7MgZGUgZXNjcml0dXJhIgogCi0jOiBzaGExLWZpbGUuYzoxNTY5Ci1tc2dpZCAiZXJyb3Igd2hlbiBjbG9zaW5nIHNoYTEgZmlsZSIKLW1zZ3N0ciAiZXJyb3IgY2VycmFuZG8gZWwgYXJjaGl2byBzaGExIgorIzogc2hhMS1maWxlLmM6MTc4MAorbXNnaWQgImVycm9yIHdoZW4gY2xvc2luZyBsb29zZSBvYmplY3QgZmlsZSIKK21zZ3N0ciAiZXJyb3IgY2VycmFuZG8gZWwgYXJjaGl2byBkZSBvYmpldG8gc3VlbHRvIgogCi0jOiBzaGExLWZpbGUuYzoxNjM1CisjOiBzaGExLWZpbGUuYzoxODQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImluc3VmZmljaWVudCBwZXJtaXNzaW9uIGZvciBhZGRpbmcgYW4gb2JqZWN0IHRvIHJlcG9zaXRvcnkgZGF0YWJhc2UgJXMiCiBtc2dzdHIgIiIKICJwZXJtaXNvcyBpbnN1ZmljaWVudGVzIHBhcmEgYWdyZWdhciB1biBvYmpldG8gYSBsYSBiYXNlIGRlIGRhdG9zIGRlbCAiCiAicmVwb3NpdG9yaW8gJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjE2MzcKKyM6IHNoYTEtZmlsZS5jOjE4NDcKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBmaWxlIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGNyZWFyIHVuIGFyY2hpdm8gdGVtcG9yYWwiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NjEKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgc2hhMSBmaWxlIgotbXNnc3RyICJpbmNhcGF6IGRlIGVzY3JpYmlyIGFyY2hpdm8gc2hhMSIKKyM6IHNoYTEtZmlsZS5jOjE4NzEKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbG9vc2Ugb2JqZWN0IGZpbGUiCittc2dzdHIgIm5vIGVzIHBvc2libGUgZXNjcmliaXIgZWwgYXJjaGl2byBkZSBvYmpldG8gc3VlbHRvIgogCi0jOiBzaGExLWZpbGUuYzoxNjY3CisjOiBzaGExLWZpbGUuYzoxODc3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBkZWZsYXRlIG5ldyBvYmplY3QgJXMgKCVkKSIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBkZXNpbmZsYXIgZWwgb2JqZXRvIG51ZXZvICVzICglZCkiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NzEKKyM6IHNoYTEtZmlsZS5jOjE4ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVmbGF0ZUVuZCBvbiBvYmplY3QgJXMgZmFpbGVkICglZCkiCiBtc2dzdHIgImRlZmxhdGVFbmQgZW4gb2JqZXRvICVzIGZhbGzDsyAoJWQpIgogCi0jOiBzaGExLWZpbGUuYzoxNjc1CisjOiBzaGExLWZpbGUuYzoxODg1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbmZ1c2VkIGJ5IHVuc3RhYmxlIG9iamVjdCBzb3VyY2UgZGF0YSBmb3IgJXMiCiBtc2dzdHIgImNvbmZ1bmRpZG8gcG9yIGZ1ZW50ZSBkZSBkYXRhIGRlIG9iamV0b3MgaW5lc3RhYmxlIHBhcmEgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjE2ODUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5MTgKKyM6IHNoYTEtZmlsZS5jOjE4OTUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMDU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB1dGltZSgpIG9uICVzIgogbXNnc3RyICJmYWxsw7MgdXRpbWUoKSBlbiAlcyIKIAotIzogc2hhMS1maWxlLmM6MTc2MAorIzogc2hhMS1maWxlLmM6MTk3MgogIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3QgcmVhZCBzaGExX2ZpbGUgZm9yICVzIgotbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyIHNoYTFfZmlsZSBwYXJhICVzIgorbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCBmb3IgJXMiCittc2dzdHIgIm5vIHNlIHB1ZG8gbGVlciBlbCBvYmpldG8gcGFyYSAlcyIKIAotIzogc2hhMS1maWxlLmM6MTgwNQorIzogc2hhMS1maWxlLmM6MjAxMQogbXNnaWQgImNvcnJ1cHQgY29tbWl0IgogbXNnc3RyICJjb21taXQgY29ycnVwdG8iCiAKLSM6IHNoYTEtZmlsZS5jOjE4MTMKKyM6IHNoYTEtZmlsZS5jOjIwMTkKIG1zZ2lkICJjb3JydXB0IHRhZyIKIG1zZ3N0ciAidGFnIGNvcnJ1cHRvIgogCi0jOiBzaGExLWZpbGUuYzoxOTEyCisjOiBzaGExLWZpbGUuYzoyMTE5CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYWQgZXJyb3Igd2hpbGUgaW5kZXhpbmcgJXMiCiBtc2dzdHIgImVycm9yIGxleWVuZG8gYWwgaW5kZXhhciAlcyIKIAotIzogc2hhMS1maWxlLmM6MTkxNQorIzogc2hhMS1maWxlLmM6MjEyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJzaG9ydCByZWFkIHdoaWxlIGluZGV4aW5nICVzIgogbXNnc3RyICJsZWN0dXJhIGNvcnRhIGFsIGluZGV4YXIgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjE5ODggc2hhMS1maWxlLmM6MTk5NworIzogc2hhMS1maWxlLmM6MjE5NSBzaGExLWZpbGUuYzoyMjA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBmYWlsZWQgdG8gaW5zZXJ0IGludG8gZGF0YWJhc2UiCiBtc2dzdHIgIiVzOiBmYWxsw7MgYWwgaW5zZXJ0YXIgZW4gbGEgYmFzZSBkZSBkYXRvcyIKIAotIzogc2hhMS1maWxlLmM6MjAwMworIzogc2hhMS1maWxlLmM6MjIxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogdW5zdXBwb3J0ZWQgZmlsZSB0eXBlIgogbXNnc3RyICIlczogdGlwbyBkZSBhcmNoaXZvIG5vIHNvcG9ydGFkbyIKIAotIzogc2hhMS1maWxlLmM6MjAyNworIzogc2hhMS1maWxlLmM6MjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCBvYmplY3QiCiBtc2dzdHIgIiVzIG5vIGVzIG9iamV0byB2w6FsaWRvIgogCi0jOiBzaGExLWZpbGUuYzoyMDI5CisjOiBzaGExLWZpbGUuYzoyMjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkICclcycgb2JqZWN0IgogbXNnc3RyICIlcyBubyBlcyB1biBvYmpldG8gJyVzJyB2w6FsaWRvIgogCi0jOiBzaGExLWZpbGUuYzoyMDU2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NAorIzogc2hhMS1maWxlLmM6MjI2NCBidWlsdGluL2luZGV4LXBhY2suYzoxNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgYWJyaXIgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjIyMjYgc2hhMS1maWxlLmM6MjI3OAorIzogc2hhMS1maWxlLmM6MjQ1NCBzaGExLWZpbGUuYzoyNTA3CiAjLCBjLWZvcm1hdAotbXNnaWQgInNoYTEgbWlzbWF0Y2ggZm9yICVzIChleHBlY3RlZCAlcykiCi1tc2dzdHIgInNoYTEgbm8gY29uY3VlcmRhIHBhcmEgJXMgKHNlIGVzcGVyYWJhICVzKSIKK21zZ2lkICJoYXNoIG1pc21hdGNoIGZvciAlcyAoZXhwZWN0ZWQgJXMpIgorbXNnc3RyICJoYXNoIG5vIGNvbmN1ZXJkYSBwYXJhICVzIChzZSBlc3BlcmFiYSAlcykiCiAKLSM6IHNoYTEtZmlsZS5jOjIyNTAKKyM6IHNoYTEtZmlsZS5jOjI0NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG1tYXAgJXMiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgaGFjZXIgbW1hcCBhICVzIgogCi0jOiBzaGExLWZpbGUuYzoyMjU1CisjOiBzaGExLWZpbGUuYzoyNDgzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgaGVhZGVyIG9mICVzIgogbXNnc3RyICJpbmNhcGF6IGRlIGRlc2VtcGFxdWV0YXIgaGVhZGVyIGRlICVzIgogCi0jOiBzaGExLWZpbGUuYzoyMjYxCisjOiBzaGExLWZpbGUuYzoyNDg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBoZWFkZXIgb2YgJXMiCiBtc2dzdHIgImluY2FwYXogZGUgYW5hbGl6YXIgaGVhZGVyIGRlICVzIgogCi0jOiBzaGExLWZpbGUuYzoyMjcyCisjOiBzaGExLWZpbGUuYzoyNTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgY29udGVudHMgb2YgJXMiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgZGVzZW1wYXF1ZXRhciBjb250ZW5pZG9zIGRlICVzIgogCi0jOiBzaGExLW5hbWUuYzo0NzYKKyM6IHNoYTEtbmFtZS5jOjQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJzaG9ydCBTSEExICVzIGlzIGFtYmlndW91cyIKIG1zZ3N0ciAiU0hBMSAlcyBjb3J0byBlcyBhbWJpZ3VvIgogCi0jOiBzaGExLW5hbWUuYzo0ODcKKyM6IHNoYTEtbmFtZS5jOjQ5NwogbXNnaWQgIlRoZSBjYW5kaWRhdGVzIGFyZToiCiBtc2dzdHIgIkxvcyBjYW5kaWRhdG9zIHNvbjoiCiAKLSM6IHNoYTEtbmFtZS5jOjc3MAorIzogc2hhMS1uYW1lLmM6Nzk2CiBtc2dpZCAiIgogIkdpdCBub3JtYWxseSBuZXZlciBjcmVhdGVzIGEgcmVmIHRoYXQgZW5kcyB3aXRoIDQwIGhleCBjaGFyYWN0ZXJzXG4iCiAiYmVjYXVzZSBpdCB3aWxsIGJlIGlnbm9yZWQgd2hlbiB5b3UganVzdCBzcGVjaWZ5IDQwLWhleC4gVGhlc2UgcmVmc1xuIgogIm1heSBiZSBjcmVhdGVkIGJ5IG1pc3Rha2UuIEZvciBleGFtcGxlLFxuIgogIlxuIgotIiAgZ2l0IGNoZWNrb3V0IC1iICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgorIiAgZ2l0IHN3aXRjaCAtYyAkYnIgJChnaXQgcmV2LXBhcnNlIC4uLilcbiIKICJcbiIKICJ3aGVyZSBcIiRiclwiIGlzIHNvbWVob3cgZW1wdHkgYW5kIGEgNDAtaGV4IHJlZiBpcyBjcmVhdGVkLiBQbGVhc2VcbiIKICJleGFtaW5lIHRoZXNlIHJlZnMgYW5kIG1heWJlIGRlbGV0ZSB0aGVtLiBUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnlcbiIKQEAgLTU4ODksNzcgKzc4MjAsMjg3IEBACiAicG9ycXVlIGVzdG8gc2Vyw61hIGlnbm9yYWRvIGN1YW5kbyBzb2xvIHNlIGVzcGVjaWZpcXVlbiA0MC1oZXguIEVzdGFzIHJlZnNcbiIKICJ0YWwgdmV6IHNlYW4gY3JlYWRhcyBwb3IgZXJyb3IuIFBvciBlamVtcGxvLFxuIgogIlxuIgotIiAgZ2l0IGNoZWNrb3V0IC1iICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgorIiAgZ2l0IHN3aXRjaCAtYyAkYnIgJChnaXQgcmV2LXBhcnNlIC4uLilcbiIKICJcbiIKICJkb25kZSBcIiRiclwiIGVzdMOhIGRlIGFsZ3VuYSBtYW5lcmEgdmFjw61hIHkgdW5hIHJlZiBkZSA0MC1oZXggZXMgY3JlYWRhLiBQb3IgIgogImZhdm9yXG4iCi0iZXhhbWluZSBlc3RhcyByZWZzIHkgdGFsIHZleiBiw7NycmVsYXMuIFNpbGVuY2llIGVzdGUgbWVuc2FqZSBcbiIKKyJleGFtaW5hIGVzdGFzIHJlZnMgeSB0YWwgdmV6IGLDs3JyYWxhcy4gU2lsZW5jaWEgZXN0ZSBtZW5zYWplIFxuIgogImVqZWN1dGFuZG8gXCJnaXQgY29uZmlnIGFkdmljZS5vYmplY3ROYW1lV2FybmluZyBmYWxzZVwiIgogCi0jOiBzdWJtb2R1bGUuYzoxMTYgc3VibW9kdWxlLmM6MTQ1CisjOiBzaGExLW5hbWUuYzo5MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciAnJS4qcycgb25seSBnb2VzIGJhY2sgdG8gJXMiCittc2dzdHIgImxvZyBwYXJhICclLipzJyBzb2xvIHZhIGhhc3RhICVzIgorCisjOiBzaGExLW5hbWUuYzo5MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciAnJS4qcycgb25seSBoYXMgJWQgZW50cmllcyIKK21zZ3N0ciAibG9nIHBhcmEgJyUuKnMnIHNvbG8gdGllbmUgJWQgZW50cmFkYXMiCisKKyM6IHNoYTEtbmFtZS5jOjE2ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGV4aXN0cyBvbiBkaXNrLCBidXQgbm90IGluICclLipzJyIKK21zZ3N0ciAibGEgcnV0YSAnJXMnIGV4aXN0ZSBlbiBkaXNjbywgcGVybyBubyBlbiAnJS4qcyciCisKKyM6IHNoYTEtbmFtZS5jOjE2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBleGlzdHMsIGJ1dCBub3QgJyVzJ1xuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnJS4qczolcycgYWthICclLipzOi4vJXMnPyIKK21zZ3N0ciAiIgorInJ1dGEgJyVzJyBleGlzdGUsIHBlcm8gbm8gJyVzJ1xuIgorImF5dWRhOiDCv1F1aXNpc3RlIGRlY2lyICclLipzOiVzJyBvICclLipzOi4vJXMnPyIKKworIzogc2hhMS1uYW1lLmM6MTcwNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZG9lcyBub3QgZXhpc3QgaW4gJyUuKnMnIgorbXNnc3RyICJydXRhICclcycgbm8gZXhpc3RlIGVuICclLipzJyIKKworIzogc2hhMS1uYW1lLmM6MTczMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGlzIGluIHRoZSBpbmRleCwgYnV0IG5vdCBhdCBzdGFnZSAlZFxuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnOiVkOiVzJz8iCittc2dzdHIgIiIKKyJydXRhICclcycgZXN0w6EgZW4gZWwgaW5kZXgsIHBlcm8gbm8gZW4gc3RhZ2UgJWRcbiIKKyJheXVkYTrCv1F1aXNpc3RlIGRlY2lyOiAnJWQ6JXMnPyIKKworIzogc2hhMS1uYW1lLmM6MTc0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGlzIGluIHRoZSBpbmRleCwgYnV0IG5vdCAnJXMnXG4iCisiaGludDogRGlkIHlvdSBtZWFuICc6JWQ6JXMnIGFrYSAnOiVkOi4vJXMnPyIKK21zZ3N0ciAiIgorInJ1dGEgJyVzJyBlc3TDoSBlbiBlbCBpbmRleCwgcGVybyBubyAnJXMnXG4iCisiYXl1ZGE6wr9RdWlzaXN0ZSBkZWNpciAnOiVkOiVzJyBvICc6JWQ6Li8lcyc/IgorCisjOiBzaGExLW5hbWUuYzoxNzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBleGlzdHMgb24gZGlzaywgYnV0IG5vdCBpbiB0aGUgaW5kZXgiCittc2dzdHIgInJ1dGEgJyVzJyBleGlzdGUgZW4gZWwgZGlzY28sIHBlcm8gbm8gZW4gZWwgaW5kZXgiCisKKyM6IHNoYTEtbmFtZS5jOjE3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGV4aXN0IChuZWl0aGVyIG9uIGRpc2sgbm9yIGluIHRoZSBpbmRleCkiCittc2dzdHIgInJ1dGEgJyVzJyBubyBleGlzdGUgKG5pIGVuIGRpc2NvIG5pIGVuIGVsIGluZGV4KSIKKworIzogc2hhMS1uYW1lLmM6MTc3MQorbXNnaWQgInJlbGF0aXZlIHBhdGggc3ludGF4IGNhbid0IGJlIHVzZWQgb3V0c2lkZSB3b3JraW5nIHRyZWUiCittc2dzdHIgIiIKKyJsYSBzaW50YXhpcyBkZSBydXRhIHJlbGF0aXZhIG5vIHNlIHB1ZWRlIHVzYXIgZnVlcmEgZGVsIGRpcmVjdG9yaW8gZGUgdHJhYmFqbyIKKworIzogc2hhMS1uYW1lLmM6MTkwOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG9iamVjdCBuYW1lICclLipzJy4iCittc2dzdHIgIm5vbWJyZSBkZSBvYmpldG8gbm8gdsOhbGlkbzogJyUuKnMnLiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGdpYmlieXRlCisjOiBzdHJidWYuYzo4MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgR2lCIgorbXNnc3RyICIldS4lMi4ydSBHaUIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBnaWJpYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBHaUIvcyIKK21zZ3N0ciAiJXUuJTIuMnUgR2lCL3MiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBtZWJpYnl0ZQorIzogc3RyYnVmLmM6ODQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IE1pQiIKK21zZ3N0ciAiJXUuJTIuMnUgTWlCIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggbWViaWJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgTWlCL3MiCittc2dzdHIgIiV1LiUyLjJ1IE1pQi9zIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDgga2liaWJ5dGUKKyM6IHN0cmJ1Zi5jOjg1NgorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBLaUIiCittc2dzdHIgIiV1LiUyLjJ1IEtpQiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGtpYmlieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEtpQi9zIgorbXNnc3RyICIldS4lMi4ydSBLaUIvcyIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGJ5dGUKKyM6IHN0cmJ1Zi5jOjg2NAorIywgYy1mb3JtYXQKK21zZ2lkICIldSBieXRlIgorbXNnaWRfcGx1cmFsICIldSBieXRlcyIKK21zZ3N0clswXSAiJXUgYnl0ZSIKK21zZ3N0clsxXSAiJXUgYnl0ZXMiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1IGJ5dGUvcyIKK21zZ2lkX3BsdXJhbCAiJXUgYnl0ZXMvcyIKK21zZ3N0clswXSAiJXUgYnl0ZXMvcyIKK21zZ3N0clsxXSAiJXUgYnl0ZXMvcyIKKworIzogc3RyYnVmLmM6MTE2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZWRpdCAnJXMnIgorbXNnc3RyICJubyBzZSBwdWRvIGVkaXRhciAnJXMnIgorCisjOiBzdWJtb2R1bGUuYzoxMTQgc3VibW9kdWxlLmM6MTQzCiBtc2dpZCAiQ2Fubm90IGNoYW5nZSB1bm1lcmdlZCAuZ2l0bW9kdWxlcywgcmVzb2x2ZSBtZXJnZSBjb25mbGljdHMgZmlyc3QiCiBtc2dzdHIgIiIKICJObyBzZSBwdWVkZSBjYW1iaWFyIC5naXRtb2R1bGVzIG5vIGZ1c2lvbmFkb3MsIHJlc3VlbHZhIGVzdGUgcHJvYmxlbWEgcHJpbWVybyIKIAotIzogc3VibW9kdWxlLmM6MTIwIHN1Ym1vZHVsZS5jOjE0OQorIzogc3VibW9kdWxlLmM6MTE4IHN1Ym1vZHVsZS5jOjE0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCBzZWN0aW9uIGluIC5naXRtb2R1bGVzIHdoZXJlIHBhdGg9JXMiCiBtc2dzdHIgIk5vIHNlIHB1ZG8gZW5jb250cmFyIGxhIHNlY2Npw7NuIGVuIC5naXRtb2R1bGVzIGRvbmRlIHBhdGg9JXMiCiAKLSM6IHN1Ym1vZHVsZS5jOjE1NgorIzogc3VibW9kdWxlLmM6MTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgLmdpdG1vZHVsZXMgZW50cnkgZm9yICVzIgogbXNnc3RyICJObyBzZSBwdWRvIGVsaW1pbmFyIGxhIGVudHJhZGEgJXMgZGUgLmdpdG1vZHVsZXMiCiAKLSM6IHN1Ym1vZHVsZS5jOjE2NworIzogc3VibW9kdWxlLmM6MTY1CiBtc2dpZCAic3RhZ2luZyB1cGRhdGVkIC5naXRtb2R1bGVzIGZhaWxlZCIKIG1zZ3N0ciAiZmFsbMOzIHJlYWxpemFyIHN0YWdlIGEgbG9zIC5naXRtb2R1bGVzIGFjdHVhbGl6YWRvcyIKIAotIzogc3VibW9kdWxlLmM6MzI5CisjOiBzdWJtb2R1bGUuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW4gdW5wb3B1bGF0ZWQgc3VibW9kdWxlICclcyciCiBtc2dzdHIgImVuIGVsIHN1Ym3Ds2R1bG8gbm8gcG9ibGFkbyAnJXMnIgogCi0jOiBzdWJtb2R1bGUuYzozNjAKKyM6IHN1Ym1vZHVsZS5jOjM1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJQYXRoc3BlYyAnJXMnIGlzIGluIHN1Ym1vZHVsZSAnJS4qcyciCiBtc2dzdHIgIkVsIHBhdHLDs24gZGUgcnV0YSAnJXMnIGVzdMOhIGVuIGVsIHN1Ym3Ds2R1bG8gJyUuKnMnIgogCi0jOiBzdWJtb2R1bGUuYzo4NTcKKyM6IHN1Ym1vZHVsZS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS1pZ25vcmUtc3VibW9kdWxlcyBhcmd1bWVudDogJXMiCittc2dzdHIgIm1hbCBhcmd1bWVudG8gLS1pZ25vcmUtc3VibW9kdWxlczogJXMiCisKKyM6IHN1Ym1vZHVsZS5jOjgxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU3VibW9kdWxlIGluIGNvbW1pdCAlcyBhdCBwYXRoOiAnJXMnIGNvbGxpZGVzIHdpdGggYSBzdWJtb2R1bGUgbmFtZWQgdGhlICIKKyJzYW1lLiBTa2lwcGluZyBpdC4iCittc2dzdHIgIiIKKyJTdWJtw7NkdWxvIGVuIGVsIGNvbW1pdCAlcyBlbiBydXRhOiAnJXMnIGNvbGlzaW9uYSBjb24gdW4gc3VibcOzZHVsbyBsbGFtYWRvICIKKyJpZ3VhbC4gU2FsdGFuZG9sby4iCisKKyM6IHN1Ym1vZHVsZS5jOjkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgZW50cnkgJyVzJyAoJXMpIGlzIGEgJXMsIG5vdCBhIGNvbW1pdCIKIG1zZ3N0ciAiZW50cmFkYSBkZSBzdWJtw7NkdWxvICclcycgKCVzKSBlcyB1biAlcywgbm8gdW4gY29tbWl0IgogCi0jOiBzdWJtb2R1bGUuYzoxMDk3IGJ1aWx0aW4vYnJhbmNoLmM6NjU2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTg1Ci1tc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgSEVBRCBhcyBhIHZhbGlkIHJlZi4iCi1tc2dzdHIgIkZhbGzDsyBhbCByZXNvbHZlciBIRUFEIGNvbW8gdW4gcmVmIHZhbGlkby4iCisjOiBzdWJtb2R1bGUuYzo5OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvdWxkIG5vdCBydW4gJ2dpdCByZXYtbGlzdCA8Y29tbWl0cz4gLS1ub3QgLS1yZW1vdGVzIC1uIDEnIGNvbW1hbmQgaW4gIgorInN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZG8gZWplY3V0YXIgY29tYW5kbyAnZ2l0IHJldi1saXN0IDxjb21taXRzPiAtLW5vdCAtLXJlbW90ZXMgLW4gMScgZW4gIgorImVsIHN1Ym3Ds2R1bG8gJXMiCiAKLSM6IHN1Ym1vZHVsZS5jOjE0MDQKKyM6IHN1Ym1vZHVsZS5jOjExMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvY2VzcyBmb3Igc3VibW9kdWxlICclcycgZmFpbGVkIgorbXNnc3RyICJwcm9jZXNvIHBhcmEgc3VibcOzZHVsbyAnJXMnIGZhbGzDsyIKKworIzogc3VibW9kdWxlLmM6MTE0NyBidWlsdGluL2JyYW5jaC5jOjY4MCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA0NQorbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlIEhFQUQgYXMgYSB2YWxpZCByZWYuIgorbXNnc3RyICJGYWxsw7MgYWwgcmVzb2x2ZXIgSEVBRCBjb21vIHVuIHJlZiB2w6FsaWRvLiIKKworIzogc3VibW9kdWxlLmM6MTE1OAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXNoaW5nIHN1Ym1vZHVsZSAnJXMnXG4iCittc2dzdHIgIkVtcHVqYW5kbyBzdWJtw7NkdWxvICclcydcbiIKKworIzogc3VibW9kdWxlLmM6MTE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gcHVzaCBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICJObyBlcyBwb3NpYmxlIGhhY2VyIHB1c2ggYWwgc3VibcOzZHVsbyAnJXMnXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjE0NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmV0Y2hpbmcgc3VibW9kdWxlICVzJXNcbiIKK21zZ3N0ciAiSGFjaWVuZG8gZmV0Y2ggYWwgc3VibcOzZHVsbyAlcyVzXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjE0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGFjY2VzcyBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICJObyBwdWRvIGFjY2VkZXIgYWwgc3VibcOzZHVsbyAnJXMnXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjE2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkVycm9ycyBkdXJpbmcgc3VibW9kdWxlIGZldGNoOlxuIgorIiVzIgorbXNnc3RyICIiCisiRXJyb3JlcyBkdXJhbnRlIGVsIGZldGNoIGRlbCBzdWJtw7NkdWxvOlxuIgorIiVzIgorCisjOiBzdWJtb2R1bGUuYzoxNjYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgbm90IHJlY29nbml6ZWQgYXMgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiJyVzJyBubyByZWNvbm9jaWRvIGNvbW8gdW4gcmVwb3NpdG9yaW8gZ2l0IgogCi0jOiBzdWJtb2R1bGUuYzoxNTQyCisjOiBzdWJtb2R1bGUuYzoxNjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBydW4gJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgaW4gc3VibW9kdWxlICVzIgorbXNnc3RyICJObyBzZSBwdWRvIGVqZWN1dGFyICdnaXQgc3RhdHVzIC0tcHJvY2VsYWluPTInIGVuIGVsIHN1Ym3Ds2R1bG8gJXMiCisKKyM6IHN1Ym1vZHVsZS5jOjE3MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgZmFpbGVkIGluIHN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiJ2dpdCBzdGF0dXMgLS1wcm9jZWxhaW49MicgZmFsbMOzIGVuIGVsIHN1Ym3Ds2R1bG8gJXMiCisKKyM6IHN1Ym1vZHVsZS5jOjE4MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN0YXJ0ICdnaXQgc3RhdHVzJyBpbiBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBjb21lbnphciAnZ2l0IHN0YXR1cycgZW4gZWwgc3VibcOzZHVsbyAnJXMnIgogCi0jOiBzdWJtb2R1bGUuYzoxNTU1CisjOiBzdWJtb2R1bGUuYzoxODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBydW4gJ2dpdCBzdGF0dXMnIGluIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGVqZWN1dGFyICdnaXQgc3RhdHVzJyBlbiBlbCBzdWJtw7NkdWxvICclcyciCiAKLSM6IHN1Ym1vZHVsZS5jOjE2NDgKKyM6IHN1Ym1vZHVsZS5jOjE4MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHVuc2V0IGNvcmUud29ya3RyZWUgc2V0dGluZyBpbiBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiTm8gc2UgcHVkbyBxdWl0YXIgY29uZmlndXJhY2nDs24gY29yZS53b3JrdHJlZSBlbiBzdWJtw7NkdWxvICclcyciCisKKyM6IHN1Ym1vZHVsZS5jOjE4NTUgc3VibW9kdWxlLmM6MjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICJubyBwdWRvIHJlY3Vyc2FyIGVuIGVsIHN1Ym3Ds2R1bG8gJyVzJyIKKworIzogc3VibW9kdWxlLmM6MTg3NgorbXNnaWQgImNvdWxkIG5vdCByZXNldCBzdWJtb2R1bGUgaW5kZXgiCittc2dzdHIgIm5vIHNlIHB1ZG8gcmVpbmljaWFyIGVsIGluZGV4IGRlbCBzdWJtw7NkdWxvIgorCisjOiBzdWJtb2R1bGUuYzoxOTE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInN1Ym1vZHVsZSAnJXMnIGhhcyBkaXJ0eSBpbmRleCIKIG1zZ3N0ciAic3VibcOzZHVsbyAnJXMnIHRpZW5lIHVuIMOtbmRpY2UgY29ycnVwdG8iCiAKLSM6IHN1Ym1vZHVsZS5jOjE3MDAKKyM6IHN1Ym1vZHVsZS5jOjE5NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlICclcycgY291bGQgbm90IGJlIHVwZGF0ZWQuIgogbXNnc3RyICJTdWJtw7NkdWxvICclcycgbm8gcHVkbyBzZXIgYWN0dWFsaXphZG8uIgogCi0jOiBzdWJtb2R1bGUuYzoxNzQ3CisjOiBzdWJtb2R1bGUuYzoyMDM4CisjLCBjLWZvcm1hdAorbXNnaWQgInN1Ym1vZHVsZSBnaXQgZGlyICclcycgaXMgaW5zaWRlIGdpdCBkaXIgJyUuKnMnIgorbXNnc3RyICJzdWJtw7NkdWxvIGdpdCBkaXIgJyVzJyBlc3RhIGRlbnRybyBkZSBnaXQgZGlyICclLipzJyIKKworIzogc3VibW9kdWxlLmM6MjA1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicmVsb2NhdGVfZ2l0ZGlyIGZvciBzdWJtb2R1bGUgJyVzJyB3aXRoIG1vcmUgdGhhbiBvbmUgd29ya3RyZWUgbm90IHN1cHBvcnRlZCIKQEAgLTU5NjcsMTIgKzgxMDgsMTcgQEAKICJyZWxvY2F0ZV9naXRkaXIgcGFyYSBlbCBzdWJtw7NkdWxvICclcycgY29uIG3DoXMgZGUgdW4gw6FyYm9sIGRlIHRyYWJham8gbm8gIgogInNvcG9ydGFkbyIKIAotIzogc3VibW9kdWxlLmM6MTc1OSBzdWJtb2R1bGUuYzoxODE1CisjOiBzdWJtb2R1bGUuYzoyMDcxIHN1Ym1vZHVsZS5jOjIxMzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvb2t1cCBuYW1lIGZvciBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyByZXNvbHZlciBlbCBub21icmUgcGFyYSBlbCBzdWJtw7NkdWxvICclcyciCiAKLSM6IHN1Ym1vZHVsZS5jOjE3NjYKKyM6IHN1Ym1vZHVsZS5jOjIwNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmdXNpbmcgdG8gbW92ZSAnJXMnIGludG8gYW4gZXhpc3RpbmcgZ2l0IGRpciIKK21zZ3N0ciAicmVjaGF6YW5kbyBtb3ZlciAnJXMnIGRlbnRybyBkZSB1biBkaXJlY3RvcmlvIGdpdCBleGlzdGVudGUiCisKKyM6IHN1Ym1vZHVsZS5jOjIwODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk1pZ3JhdGluZyBnaXQgZGlyZWN0b3J5IG9mICclcyVzJyBmcm9tXG4iCkBAIC01OTgzLDQyICs4MTI5LDM3IEBACiAiJyVzJyBoYWNpYVxuIgogIiclcydcbiIKIAotIzogc3VibW9kdWxlLmM6MTg1MAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSAnJXMnIgotbXNnc3RyICJubyBwdWRvIHJlY3Vyc2FyIGVuIGVsIHN1Ym3Ds2R1bG8gJyVzJyIKLQotIzogc3VibW9kdWxlLmM6MTg5NAorIzogc3VibW9kdWxlLmM6MjIwOQogbXNnaWQgImNvdWxkIG5vdCBzdGFydCBscy1maWxlcyBpbiAuLiIKIG1zZ3N0ciAibm8gc2UgcHVkbyBjb21lbnphciBscy1maWxlcyBlbiAuLiIKIAotIzogc3VibW9kdWxlLmM6MTkzMworIzogc3VibW9kdWxlLmM6MjI0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJscy10cmVlIHJldHVybmVkIHVuZXhwZWN0ZWQgcmV0dXJuIGNvZGUgJWQiCiBtc2dzdHIgImxzLXRyZWUgZGV2b2x2acOzIHVuIGPDs2RpZ28gJWQgaW5lc3BlcmFkbyIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjIzMgorIzogc3VibW9kdWxlLWNvbmZpZy5jOjIzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyBzdXNwaWNpb3VzIHN1Ym1vZHVsZSBuYW1lOiAlcyIKIG1zZ3N0ciAiaWdub3JhbmRvIHN1Ym3Ds2R1bG8gc29zcGVjaG9zbzogJXMiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzoyOTYKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzozMDMKIG1zZ2lkICJuZWdhdGl2ZSB2YWx1ZXMgbm90IGFsbG93ZWQgZm9yIHN1Ym1vZHVsZS5mZXRjaGpvYnMiCiBtc2dzdHIgIm5vIHNlIHBlcm1pdGVuIHZhbG9yZXMgbmVnYXRpdm9zIHBhcmEgc3VibW9kdWxlLmZldGNoam9icyIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjM5MAorIzogc3VibW9kdWxlLWNvbmZpZy5jOjQwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyAnJXMnIHdoaWNoIG1heSBiZSBpbnRlcnByZXRlZCBhcyBhIGNvbW1hbmQtbGluZSBvcHRpb246ICVzIgogbXNnc3RyICIiCiAiaWdub3JhbmRvICclcycgeWEgcXVlIHB1ZWRlIHNlciBpbnRlcnByZXRhZG8gY29tbyB1bmEgb3BjacOzbiBkZSBsw61uZWEgZGUgIgogImNvbWFuZG86ICVzIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6NDc5CisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yICVzIgogbXNnc3RyICJ2YWxvciBpbnbDoWxpZG8gcGFyYSAlcyIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjc1NAorIzogc3VibW9kdWxlLWNvbmZpZy5jOjc2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgdXBkYXRlIC5naXRtb2R1bGVzIGVudHJ5ICVzIgogbXNnc3RyICJObyBzZSBwdWRvIGFjdHVhbGl6YXIgbGEgZW50cmFkYSAlcyBkZSAuZ2l0bW9kdWxlcyIKQEAgLTYwMzQsNyArODE3NSw3IEBACiBtc2dpZCAidW5rbm93biB2YWx1ZSAnJXMnIGZvciBrZXkgJyVzJyIKIG1zZ3N0ciAidmFsb3IgJyVzJyBkZXNjb25vY2lkbyBwYXJhIGxhIGNsYXZlICclcyciCiAKLSM6IHRyYWlsZXIuYzo1MzkgdHJhaWxlci5jOjU0NCBidWlsdGluL3JlbW90ZS5jOjI5NQorIzogdHJhaWxlci5jOjUzOSB0cmFpbGVyLmM6NTQ0IGJ1aWx0aW4vcmVtb3RlLmM6Mjk4IGJ1aWx0aW4vcmVtb3RlLmM6MzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1vcmUgdGhhbiBvbmUgJXMiCiBtc2dzdHIgIm3DoXMgZGUgdW4gJXMiCkBAIC02MDUzLDcgKzgxOTQsNyBAQAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGZyb20gc3RkaW4iCiBtc2dzdHIgIm5vIHNlIHB1ZG8gbGVlciBkZXNkZSBzdGRpbiIKIAotIzogdHJhaWxlci5jOjEwMTEgYnVpbHRpbi9hbS5jOjQ3CisjOiB0cmFpbGVyLmM6MTAxMSB3cmFwcGVyLmM6NjY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0ICVzIgogbXNnc3RyICJubyBzZSBwdWRvIGRlZmluaXIgJXMiCkBAIC02MDgyLDM5ICs4MjIzLDQ3IEBACiBtc2dpZCAiV291bGQgc2V0IHVwc3RyZWFtIG9mICclcycgdG8gJyVzJyBvZiAnJXMnXG4iCiBtc2dzdHIgIkNvbmZpZ3VyYXLDoSB1cHN0cmVhbSBkZSAnJXMnIGEgJyVzJyBkZSAnJXMnXG4iCiAKLSM6IHRyYW5zcG9ydC5jOjE0MgorIzogdHJhbnNwb3J0LmM6MTQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGJ1bmRsZSAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGxlZXIgZWwgY29uanVudG8gJyVzJyIKIAotIzogdHJhbnNwb3J0LmM6MjA4CisjOiB0cmFuc3BvcnQuYzoyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJhbnNwb3J0OiBpbnZhbGlkIGRlcHRoIG9wdGlvbiAnJXMnIgogbXNnc3RyICJ0cmFuc3BvcnQ6IG9wY2nDs24gaW52w6FsaWRhICclcyciCiAKLSM6IHRyYW5zcG9ydC5jOjYxNgorIzogdHJhbnNwb3J0LmM6MjY2Cittc2dpZCAic2VlIHByb3RvY29sLnZlcnNpb24gaW4gJ2dpdCBoZWxwIGNvbmZpZycgZm9yIG1vcmUgZGV0YWlscyIKK21zZ3N0ciAidmVyIHByb3RvY29sLnZlcnNpb24gZW4gJ2dpdCBoZWxwIGNvbmZpZycgcGFyYSBtw6FzIGluZm9ybWFjacOzbiIKKworIzogdHJhbnNwb3J0LmM6MjY3Cittc2dpZCAic2VydmVyIG9wdGlvbnMgcmVxdWlyZSBwcm90b2NvbCB2ZXJzaW9uIDIgb3IgbGF0ZXIiCittc2dzdHIgIm9wY2lvbmVzIGRlbCBzZXJ2aWRvciByZXF1aWVyZW4gcHJvdG9jb2xvIHZlcnNpw7NuIDIgbyBwb3N0ZXJpb3IiCisKKyM6IHRyYW5zcG9ydC5jOjYzMgogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSB0cmFuc3BvcnQuY29sb3IuKiBjb25maWciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gYW5hbGl6YXIgdmFsb3IgZGUgY29uZmlndXJhY2nDs24gdHJhbnNwb3J0LmNvbG9yLioiCiAKLSM6IHRyYW5zcG9ydC5jOjY4OQorIzogdHJhbnNwb3J0LmM6NzA1CiBtc2dpZCAic3VwcG9ydCBmb3IgcHJvdG9jb2wgdjIgbm90IGltcGxlbWVudGVkIHlldCIKIG1zZ3N0ciAic29wb3J0ZSBwYXJhIHByb3RvY29sbyB2MiBubyBpbXBsZW1lbnRhZG8gdG9kYXbDrWEiCiAKLSM6IHRyYW5zcG9ydC5jOjgxNgorIzogdHJhbnNwb3J0LmM6ODMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gdmFsdWUgZm9yIGNvbmZpZyAnJXMnOiAlcyIKIG1zZ3N0ciAidmFsb3IgZGVzY29ub2NpZG8gcGFyYSBjb25maWd1cmFjacOzbiAnJXMnOiAlcyIKIAotIzogdHJhbnNwb3J0LmM6ODgyCisjOiB0cmFuc3BvcnQuYzo4OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJhbnNwb3J0ICclcycgbm90IGFsbG93ZWQiCiBtc2dzdHIgInRyYW5zcG9ydGUgJyVzJyBubyBwZXJtaXRpZG8iCiAKLSM6IHRyYW5zcG9ydC5jOjkzNgorIzogdHJhbnNwb3J0LmM6OTQ5CiBtc2dpZCAiZ2l0LW92ZXItcnN5bmMgaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZCIKIG1zZ3N0ciAiZ2l0LW92ZXItcnN5bmMgeWEgbm8gZXMgc29wb3J0YWRvIgogCi0jOiB0cmFuc3BvcnQuYzoxMDMxCisjOiB0cmFuc3BvcnQuYzoxMDQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHN1Ym1vZHVsZSBwYXRocyBjb250YWluIGNoYW5nZXMgdGhhdCBjYW5cbiIKQEAgLTYxMjMsNyArODI3Miw3IEBACiAiTGEgc2lndWllbnRlIHJ1dGEgZGUgc3VibcOzZHVsbyBjb250aWVuZSBjYW1iaW9zIHF1ZSBub1xuIgogInB1ZWRlbiBzZXIgZW5jb250cmFkb3MgZW4gbmluZ8O6biByZW1vdG86XG4iCiAKLSM6IHRyYW5zcG9ydC5jOjEwMzUKKyM6IHRyYW5zcG9ydC5jOjEwNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtNjE1MCwzNyArODI5OSwzMiBAQAogInBhcmEgaGFjZXIgdW4gcHVzaCBhbCByZW1vdG8uXG4iCiAiXG4iCiAKLSM6IHRyYW5zcG9ydC5jOjEwNDMKKyM6IHRyYW5zcG9ydC5jOjEwNTYKIG1zZ2lkICJBYm9ydGluZy4iCiBtc2dzdHIgIkFib3J0YW5kby4iCiAKLSM6IHRyYW5zcG9ydC5jOjExODIKKyM6IHRyYW5zcG9ydC5jOjEyMDEKIG1zZ2lkICJmYWlsZWQgdG8gcHVzaCBhbGwgbmVlZGVkIHN1Ym1vZHVsZXMiCiBtc2dzdHIgImZhbGzDsyBhbCBoYWNlciBwdXNoIGEgdG9kb3MgbG9zIHN1Ym3Ds2R1bG9zIG5lY2VzYXJpb3MiCiAKLSM6IHRyYW5zcG9ydC5jOjEzMTUgdHJhbnNwb3J0LWhlbHBlci5jOjY0MworIzogdHJhbnNwb3J0LmM6MTM0NSB0cmFuc3BvcnQtaGVscGVyLmM6NjU3CiBtc2dpZCAib3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCiBtc2dzdHIgIm9wZXJhY2nDs24gbm8gc29wb3J0YWRhIHBvciBwcm90b2NvbG8iCiAKLSM6IHRyYW5zcG9ydC5jOjE0MTkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBsaW5lIHdoaWxlIHBhcnNpbmcgYWx0ZXJuYXRlIHJlZnM6ICVzIgotbXNnc3RyICJsw61uZWEgaW52w6FsaWRhIG1pZW50cmFzIHNlIGFuYWxpemFiYW4gcmVmcyBhbHRlcm5hczogJXMiCi0KLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MSB0cmFuc3BvcnQtaGVscGVyLmM6ODAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MSB0cmFuc3BvcnQtaGVscGVyLmM6OTAKIG1zZ2lkICJmdWxsIHdyaXRlIHRvIHJlbW90ZSBoZWxwZXIgZmFpbGVkIgogbXNnc3RyICJlc2NyaXR1cmEgdG90YWwgYWwgaGVscGVyIHJlbW90byBmYWxsw7MiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZpbmQgcmVtb3RlIGhlbHBlciBmb3IgJyVzJyIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBlbmNvbnRyYXIgaGVscGVyIHJlbW90byBwYXJhICclcyciCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDggdHJhbnNwb3J0LWhlbHBlci5jOjU1NworIzogdHJhbnNwb3J0LWhlbHBlci5jOjE2MCB0cmFuc3BvcnQtaGVscGVyLmM6NTcxCiBtc2dpZCAiY2FuJ3QgZHVwIGhlbHBlciBvdXRwdXQgZmQiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGR1cGxpY2FyIG91dHB1dCBkZSBmZCBkZWwgaGVscGVyIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTk5CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MjExCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ1bmtub3duIG1hbmRhdG9yeSBjYXBhYmlsaXR5ICVzOyB0aGlzIHJlbW90ZSBoZWxwZXIgcHJvYmFibHkgbmVlZHMgbmV3ZXIgIgpAQCAtNjE4OSw5OSArODMzMywxMDQgQEAKICJjYXBhY2lkYWQgbWFuZGF0b3JpYSBkZXNjb25vY2lkYSAlczsgZXN0ZSBoZWxwZXIgcmVtb3RvIHByb2JhYmxlbWVudGUgIgogIm5lY2VzaXRhIHVuYSBudWV2YSB2ZXJzacOzbiBkZSBHaXQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyMDUKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyMTcKIG1zZ2lkICJ0aGlzIHJlbW90ZSBoZWxwZXIgc2hvdWxkIGltcGxlbWVudCByZWZzcGVjIGNhcGFiaWxpdHkiCiBtc2dzdHIgImVzdGUgaGVscGVyIHJlbW90byBkZWJlcsOtYSBpbXBsZW1lbnRhciBjYXBhY2lkYWQgcmVmc3BlYyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjI3MiB0cmFuc3BvcnQtaGVscGVyLmM6NDEyCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6Mjg0IHRyYW5zcG9ydC1oZWxwZXIuYzo0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdW5leHBlY3RlZGx5IHNhaWQ6ICclcyciCiBtc2dzdHIgIiVzIGRpam8gaW5lc3BlcmFkYW1lbnRlOiAnJXMnIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NDAxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGFsc28gbG9ja2VkICVzIgogbXNnc3RyICIlcyB0YW1iacOpbiBibG9xdWXDsyAlcyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjQ3OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjQ5MwogbXNnaWQgImNvdWxkbid0IHJ1biBmYXN0LWltcG9ydCIKIG1zZ3N0ciAibm8gc2UgcHVkbyBlamVjdXRhciBmYXN0LWltcG9ydCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjUwMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjUxNgogbXNnaWQgImVycm9yIHdoaWxlIHJ1bm5pbmcgZmFzdC1pbXBvcnQiCiBtc2dzdHIgImVycm9yIGFsIGVqZWN1dGFyIGZhc3QtaW1wb3J0IgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTMxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMDkxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTQ1IHRyYW5zcG9ydC1oZWxwZXIuYzoxMTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAlcyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBsZWVyIGxhIHJlZmVyZW5jaWEgJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1NzYKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biByZXNwb25zZSB0byBjb25uZWN0OiAlcyIKIG1zZ3N0ciAicmVzcHVlc3RhIHBhcmEgY29uZWN0YXIgZGVzY29ub2NpZGE6ICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTk4CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjEyCiBtc2dpZCAic2V0dGluZyByZW1vdGUgc2VydmljZSBwYXRoIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCiBtc2dzdHIgImNvbmZpZ3VyYW5kbyBzZXJ2aWNpbyBkZSBydXRhIHJlbW90YSBubyBzb3BvcnRhZG8gcG9yIGVsIHByb3RvY29sbyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjYwMAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjYxNAogbXNnaWQgImludmFsaWQgcmVtb3RlIHNlcnZpY2UgcGF0aCIKIG1zZ3N0ciAicnV0YSBkZSBzZXJ2aWNpbyByZW1vdG8gaW52w6FsaWRhIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NjQ2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IGNvbm5lY3QgdG8gc3Vic2VydmljZSAlcyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgY29uZWN0YXIgYWwgc3Vic2VydmljaW8gJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo3MTMKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo3MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgb2svZXJyb3IsIGhlbHBlciBzYWlkICclcyciCiBtc2dzdHIgInNlIGVzcGVyYWJhIG9rL2Vycm9yLCBoZWxwZXIgZGlqbyAnJXMnIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NzY2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6Nzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciByZXBvcnRlZCB1bmV4cGVjdGVkIHN0YXR1cyBvZiAlcyIKIG1zZ3N0ciAiaGVscGVyIHJlcG9ydMOzIGVzdGFkbyBpbmVzcGVyYWRvIGRlICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODI3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODUwCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IGRyeS1ydW4iCiBtc2dzdHIgImhlbHBlciAlcyBubyBzb3BvcnRhIGRyeS1ydW4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4MzAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgLS1zaWduZWQiCiBtc2dzdHIgImhlbHBlciAlcyBubyBzb3BvcnRhIC0tc2lnbmVkIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODMzCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODU2CiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkPWlmLWFza2VkIgogbXNnc3RyICJoZWxwZXIgJXMgbm8gc29wb3J0YSAtLXNpZ25lZD1pZi1hc2tlZCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjg0MAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjg2MQorIywgYy1mb3JtYXQKK21zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAtLWF0b21pYyIKK21zZ3N0ciAiaGVscGVyICVzIG5vIHNvcG9ydGEgLS1hdG9taWMiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgJ3B1c2gtb3B0aW9uJyIKIG1zZ3N0ciAiaGVscGVyICVzIG5vIHNvcG9ydGEgJ3B1c2gtb3B0aW9uJyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjkzMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjk2NQogbXNnaWQgInJlbW90ZS1oZWxwZXIgZG9lc24ndCBzdXBwb3J0IHB1c2g7IHJlZnNwZWMgbmVlZGVkIgogbXNnc3RyICJyZW1vdGUtaGVscGVyIG5vIHNvcG9ydGEgcHVzaDsgc2UgbmVjZXNpdGEgcmVmc3BlYyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjkzNworIzogdHJhbnNwb3J0LWhlbHBlci5jOjk3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAnZm9yY2UnIgogbXNnc3RyICJoZWxwZXIgJXMgbm8gc29wb3J0YSAnZm9yY2UnIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTg0CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTAxNwogbXNnaWQgImNvdWxkbid0IHJ1biBmYXN0LWV4cG9ydCIKIG1zZ3N0ciAibm8gc2UgcHVkbyBlamVjdXRhciBmYXN0LWV4cG9ydCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjk4OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMjIKIG1zZ2lkICJlcnJvciB3aGlsZSBydW5uaW5nIGZhc3QtZXhwb3J0IgogbXNnc3RyICJlcnJvciBhbCBlamVjdXRhciBmYXN0LWV4cG9ydCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMTQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyByZWZzIGluIGNvbW1vbiBhbmQgbm9uZSBzcGVjaWZpZWQ7IGRvaW5nIG5vdGhpbmcuXG4iCkBAIC02MjkwLDY3ICs4NDM5LDY3IEBACiAiTm8gaGF5IHJlZnMgY29tdW5lcyB5IG5pbmd1bm8gZXNwZWNpZmljYWRvOyBubyBzZSBoYWNlIG5hZGEuXG4iCiAiVGFsIHZleiBkZWJlcsOtYXMgZXNwZWNpZmljYXIgdW4gYnJhbmNoIGNvbW8gJ21hc3RlcicuXG4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDc3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTEyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgcmVzcG9uc2UgaW4gcmVmIGxpc3Q6ICVzIgogbXNnc3RyICJyZXNwdWVzdGEgbWFsZm9ybWFkYSBlbiBsaXN0YSBkZSByZWZzOiAlcyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyMzEKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYWQoJXMpIGZhaWxlZCIKIG1zZ3N0ciAibGVlciglcykgZmFsbMOzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI1OAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyOTkKICMsIGMtZm9ybWF0CiBtc2dpZCAid3JpdGUoJXMpIGZhaWxlZCIKIG1zZ3N0ciAiZXNjcmliaXIoJXMpIGZhbGzDsyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMDcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHRocmVhZCBmYWlsZWQiCiBtc2dzdHIgImhpbG8gJXMgZmFsbMOzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMxMQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdGhyZWFkIGZhaWxlZCB0byBqb2luOiAlcyIKIG1zZ3N0ciAiaGlsbyAlcyBmYWxsw7MgYWwgdW5pcnNlOiAlcyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMzAgdHJhbnNwb3J0LWhlbHBlci5jOjEzMzQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzcxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IHN0YXJ0IHRocmVhZCBmb3IgY29weWluZyBkYXRhOiAlcyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgaW5pY2lhciBlbCBoaWxvIHBhcmEgY29waWFyIGRhdGE6ICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM3MQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcHJvY2VzcyBmYWlsZWQgdG8gd2FpdCIKIG1zZ3N0ciAicHJvY2VzbyAlcyBmYWxsw7MgYWwgZXNwZXJhciIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNzUKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHByb2Nlc3MgZmFpbGVkIgogbXNnc3RyICJwcm9jZXNvICVzIGZhbGzDsyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzOTMgdHJhbnNwb3J0LWhlbHBlci5jOjE0MDIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDM0IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDQzCiBtc2dpZCAiY2FuJ3Qgc3RhcnQgdGhyZWFkIGZvciBjb3B5aW5nIGRhdGEiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGluaWNpYXIgaGlsbyBwYXJhIGNvcGlhciBkYXRhIgogCi0jOiB0cmVlLXdhbGsuYzozMworIzogdHJlZS13YWxrLmM6MzIKIG1zZ2lkICJ0b28tc2hvcnQgdHJlZSBvYmplY3QiCiBtc2dzdHIgIm9iamV0byBkZSDDoXJib2wgbXV5IGNvcnRvIgogCi0jOiB0cmVlLXdhbGsuYzozOQorIzogdHJlZS13YWxrLmM6MzgKIG1zZ2lkICJtYWxmb3JtZWQgbW9kZSBpbiB0cmVlIGVudHJ5IgogbXNnc3RyICJtb2RvIG1hbCBmb3JtYWRvIGVuIGxhIGVudHJhZGEgZGUgw6FyYm9sIgogCi0jOiB0cmVlLXdhbGsuYzo0MworIzogdHJlZS13YWxrLmM6NDIKIG1zZ2lkICJlbXB0eSBmaWxlbmFtZSBpbiB0cmVlIGVudHJ5IgogbXNnc3RyICJub21icmUgZGUgYXJjaGl2byB2YWPDrW8gZW4gbGEgZW50cmFkYSBkZSDDoXJib2wiCiAKLSM6IHRyZWUtd2Fsay5jOjExNQorIzogdHJlZS13YWxrLmM6MTE3CiBtc2dpZCAidG9vLXNob3J0IHRyZWUgZmlsZSIKIG1zZ3N0ciAiYXJjaGl2byBkZSDDoXJib2wgbXV5IGNvcnRvIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTIKKyM6IHVucGFjay10cmVlcy5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCkBAIC02MzYxLDcgKzg1MTAsNyBAQAogIiUlc1BvciBmYXZvciByZWFsaXphIHVuIGNvbW1pdCBjb24gbG9zIGNhbWJpb3MgbyB1biBzdGFzaCBhbnRlcyBkZSBjYW1iaWFyICIKICJyYW1hcy4iCiAKLSM6IHVucGFjay10cmVlcy5jOjExNAorIzogdW5wYWNrLXRyZWVzLmM6MTEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBjaGVja291dDpcbiIKQEAgLTYzNzEsNyArODUyMCw3IEBACiAiY2hlY2tvdXQ6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTcKKyM6IHVucGFjay10cmVlcy5jOjExNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCkBAIC02MzgxLDcgKzg1MzAsNyBAQAogImZ1c2lvbmFyOlxuIgogIiUlc1BvciBmYXZvciwgY29uZmlybWEgdHVzIGNhbWJpb3MgbyBhZ3XDoXJkYWxvcyBhbnRlcyBkZSBmdXNpb25hci4iCiAKLSM6IHVucGFjay10cmVlcy5jOjExOQorIzogdW5wYWNrLXRyZWVzLmM6MTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTYzOTEsNyArODU0MCw3IEBACiAibWVyZ2U6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMjIKKyM6IHVucGFjay10cmVlcy5jOjEyMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCkBAIC02NDAwLDcgKzg1NDksNyBAQAogIkxvcyBjYW1iaW9zIGxvY2FsZXMgZGUgbG9zIHNpZ3VpZW50ZXMgYXJjaGl2b3Mgc2Vyw6FuIHNvYnJlc2NyaXRvcyBhbCAlczpcbiIKICIlJXNQb3IgZmF2b3IsIGNvbmZpcm1hIHR1cyBjYW1iaW9zIG8gZ3XDoXJkYWxvcyBhbnRlcyBkZSAlcy4iCiAKLSM6IHVucGFjay10cmVlcy5jOjEyNAorIzogdW5wYWNrLXRyZWVzLmM6MTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKQEAgLTY0MDksNyArODU1OCw3IEBACiAiTG9zIGNhbWJpb3MgbG9jYWxlcyBkZSBsb3Mgc2lndWllbnRlcyBhcmNoaXZvcyBzZXLDoW4gc29icmVlc2NyaXRvcyBwb3IgJXM6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMjkKKyM6IHVucGFjay10cmVlcy5jOjEyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVXBkYXRpbmcgdGhlIGZvbGxvd2luZyBkaXJlY3RvcmllcyB3b3VsZCBsb3NlIHVudHJhY2tlZCBmaWxlcyBpbiB0aGVtOlxuIgpAQCAtNjQxOSw3ICs4NTY4LDcgQEAKICJzZWd1aW1pZW50byBlbiBlbGxvczpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTMzCisjOiB1bnBhY2stdHJlZXMuYzoxMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IGNoZWNrb3V0OlxuIgpAQCAtNjQyOSw3ICs4NTc4LDcgQEAKICJlbGltaW5hZG9zIGFsIGFjdHVhbGl6YXIgZWwgw6FyYm9sIGRlIHRyYWJham86XG4iCiAiJSVzUG9yIGZhdm9yLCBtdcOpdmVsb3MgbyBlbGltw61uYWxvcyBhbnRlcyBkZSBpbnRlcmNhbWJpYXIgcmFtYXMuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMzUKKyM6IHVucGFjay10cmVlcy5jOjEzMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgY2hlY2tvdXQ6XG4iCkBAIC02NDM5LDcgKzg1ODgsNyBAQAogImVsaW1pbmFkb3NhbCBhY3R1YWxpemFyIGVsIMOhcmJvbCBkZSB0cmFiYWpvOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTM4CisjOiB1bnBhY2stdHJlZXMuYzoxMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgpAQCAtNjQ0OSw3ICs4NTk4LDcgQEAKICJlbGltaW5hZG9zIGFsIGZ1c2lvbmFyOlxuIgogIiUlc1BvciBmYXZvciwgbXXDqXZlbG9zIG8gZWxpbcOtbmFsb3MgYW50ZXMgZGUgZnVzaW9uYXIuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNDAKKyM6IHVucGFjay10cmVlcy5jOjEzOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgbWVyZ2U6XG4iCkBAIC02NDU5LDcgKzg2MDgsNyBAQAogImVsaW1pbmFkb3NhbCBmdXNpb25hcjpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE0MworIzogdW5wYWNrLXRyZWVzLmM6MTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSAlczpcbiIKQEAgLTY0NjksNyArODYxOCw3IEBACiAiZWxpbWluYWRvcyBhbCAlczpcbiIKICIlJXNQb3IgZmF2b3IsIG11w6l2ZWxvcyBvIGVsaW3DrW5hbG9zIGFudGVzIGRlICVzLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTQ1CisjOiB1bnBhY2stdHJlZXMuYzoxNDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5ICVzOlxuIgpAQCAtNjQ3OSw3ICs4NjI4LDcgQEAKICJlbGltaW5hZG9zIGFsIGVqZWN1dGFyICVzOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTUxCisjOiB1bnBhY2stdHJlZXMuYzoxNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCkBAIC02NDkwLDcgKzg2MzksNyBAQAogInNvYnJlc2NyaXRvcyBhbCBhY3R1YWxpemFyIGVsIMOhcmJvbCBkZSB0cmFiYWpvOlxuIgogIiUlc1BvciBmYXZvciwgbXXDqXZlbG9zIG8gZWxpbcOtbmFsb3MgYW50ZXMgZGUgaW50ZXJjYW1iaWFyIHJhbWFzLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTUzCisjOiB1bnBhY2stdHJlZXMuYzoxNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCkBAIC02NTAxLDcgKzg2NTAsNyBAQAogInNvYnJlc2NyaXRvcyBhbCBhY3R1YWxpemFyIGVsIMOhcmJvbCBkZSB0cmFiYWpvOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTU2CisjOiB1bnBhY2stdHJlZXMuYzoxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTY1MTEsNyArODY2MCw3IEBACiAic29icmVzY3JpdG9zIGFsIGZ1c2lvbmFyOlxuIgogIiUlc1BvciBmYXZvciwgbXXDqXZlbG9zIG8gZWxpbcOtbmFsb3MgYW50ZXMgZGUgZnVzaW9uYXIuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNTgKKyM6IHVucGFjay10cmVlcy5jOjE1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtNjUyMSw3ICs4NjcwLDcgQEAKICJzb2JyZXNjcml0b3MgYWwgZnVzaW9uYXI6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNjEKKyM6IHVucGFjay10cmVlcy5jOjE1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjUzMSw3ICs4NjgwLDcgQEAKICJzb2JyZXNjcml0b3MgYWwgJXM6XG4iCiAiJSVzUG9yIGZhdm9yLCBtdcOpdmVsb3MgbyBlbGltw61uYWxvcyBhbnRlcyBkZSAlcy4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE2MworIzogdW5wYWNrLXRyZWVzLmM6MTYxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCkBAIC02NTQxLDEyICs4NjkwLDEyIEBACiAiZWxpbWluYWRvc3BvciAlczpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE3MQorIzogdW5wYWNrLXRyZWVzLmM6MTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkVudHJ5ICclcycgb3ZlcmxhcHMgd2l0aCAnJXMnLiAgQ2Fubm90IGJpbmQuIgogbXNnc3RyICJFbnRyYWRhICclcycgc2Ugc3VwZXJwb25lIGNvbiAnJXMnLiAgTm8gc2UgcHVlZGVuIHVuaXIuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNzQKKyM6IHVucGFjay10cmVlcy5jOjE3MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IHVwZGF0ZSBzcGFyc2UgY2hlY2tvdXQ6IHRoZSBmb2xsb3dpbmcgZW50cmllcyBhcmUgbm90IHVwIHRvIGRhdGU6XG4iCkBAIC02NTU2LDcgKzg3MDUsNyBAQAogImFjdHVhbGl6YWRhczpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTc2CisjOiB1bnBhY2stdHJlZXMuYzoxNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IHNwYXJzZSBjaGVja291dCAiCkBAIC02NTY3LDcgKzg3MTYsNyBAQAogImFjdHVhbGl6YWNpw7NuIHNwYXJzZSBjaGVja291dDpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTc4CisjOiB1bnBhY2stdHJlZXMuYzoxNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgc3BhcnNlIGNoZWNrb3V0ICIKQEAgLTY1NzgsNyArODcyNyw3IEBACiAiYWN0dWFsaXphY2nDs24gc3BhcnNlIGNoZWNrb3V0OlxuIgogIiVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxODAKKyM6IHVucGFjay10cmVlcy5jOjE3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IHVwZGF0ZSBzdWJtb2R1bGU6XG4iCkBAIC02NTg3LDE2ICs4NzM2LDE2IEBACiAiTm8gc2UgcHVlZGUgYWN0dWFsaXphciBsZSBzdWJtw7NkdWxvOlxuIgogIiVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoyNTQKKyM6IHVucGFjay10cmVlcy5jOjI1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJBYm9ydGluZ1xuIgogbXNnc3RyICJBYm9ydGFuZG9cbiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MzM2Ci1tc2dpZCAiQ2hlY2tpbmcgb3V0IGZpbGVzIgotbXNnc3RyICJSZXZpc2FuZG8gYXJjaGl2b3MiCisjOiB1bnBhY2stdHJlZXMuYzozMTcKK21zZ2lkICJVcGRhdGluZyBmaWxlcyIKK21zZ3N0ciAiQWN0dWFsaXphbmRvIGFyY2hpdm9zIgogCi0jOiB1bnBhY2stdHJlZXMuYzozNjgKKyM6IHVucGFjay10cmVlcy5jOjM0OQogbXNnaWQgIiIKICJ0aGUgZm9sbG93aW5nIHBhdGhzIGhhdmUgY29sbGlkZWQgKGUuZy4gY2FzZS1zZW5zaXRpdmUgcGF0aHNcbiIKICJvbiBhIGNhc2UtaW5zZW5zaXRpdmUgZmlsZXN5c3RlbSkgYW5kIG9ubHkgb25lIGZyb20gdGhlIHNhbWVcbiIKQEAgLTY2MDYsNiArODc1NSwxMCBAQAogImVuIHVuIGZpbGVzeXN0ZW0gY2FzZS1pbnNlbnNpdGl2ZSkgeSBzb2xvIHVuYSBkZWwgZ3J1cG9cbiIKICJjb2xpc2lvbmFuZG8gZXN0w6EgZW4gZWwgw6FyYm9sIGRlIHRyYWJham86XG4iCiAKKyM6IHVucGFjay10cmVlcy5jOjE0NDUKK21zZ2lkICJVcGRhdGluZyBpbmRleCBmbGFncyIKK21zZ3N0ciAiQWN0dWFsaXphbmRvIGZsYWdzIGRlbCBpbmRleCIKKwogIzogdXJsbWF0Y2guYzoxNjMKIG1zZ2lkICJpbnZhbGlkIFVSTCBzY2hlbWUgbmFtZSBvciBtaXNzaW5nICc6Ly8nIHN1ZmZpeCIKIG1zZ3N0ciAibm9tYnJlIGRlIFVSTCBpbnbDoWxpZG8gb8Kgc3VmaWpvICc6Ly8nIGZhbHRhbnRlIgpAQCAtNjYzNSwyMDYgKzg3ODgsMjE3IEBACiBtc2dpZCAiaW52YWxpZCAnLi4nIHBhdGggc2VnbWVudCIKIG1zZ3N0ciAic2VnbWVudG8gZGUgcnV0YSAnLi4nIGludsOhbGlkbyIKIAotIzogd29ya3RyZWUuYzoyNDkgYnVpbHRpbi9hbS5jOjIxMDAKKyM6IHdhbGtlci5jOjE3MAorbXNnaWQgIkZldGNoaW5nIG9iamVjdHMiCittc2dzdHIgIkhhY2llbmRvIGZldGNoIGEgb2JqZXRvcyIKKworIzogd29ya3RyZWUuYzoyNTkgYnVpbHRpbi9hbS5jOjIwOTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgJyVzJyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGxlZXIgJyVzJyIKIAotIzogd29ya3RyZWUuYzoyOTUKKyM6IHdvcmt0cmVlLmM6MzA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgYXQgbWFpbiB3b3JraW5nIHRyZWUgaXMgbm90IHRoZSByZXBvc2l0b3J5IGRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogIiclcycgZW4gZWwgw6FyYm9sIGRlIHRyYWJham8gcHJpbmNpcGFsIG5vIGVzIGVsIGRpcmVjdG9yaW8gZGVsIHJlcG9zaXRvcmlvIgogCi0jOiB3b3JrdHJlZS5jOjMwNgorIzogd29ya3RyZWUuYzozMTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBmaWxlIGRvZXMgbm90IGNvbnRhaW4gYWJzb2x1dGUgcGF0aCB0byB0aGUgd29ya2luZyB0cmVlIGxvY2F0aW9uIgogbXNnc3RyICIiCiAiYXJjaGl2byAnJXMnIG5vIGNvbnRpZW5lIHVuYSBydXRhIGFic29sdXRhIGEgbGEgdWJpY2FjacOzbiBkZWwgw6FyYm9sIGRlICIKICJ0cmFiYWpvIgogCi0jOiB3b3JrdHJlZS5jOjMxOAorIzogd29ya3RyZWUuYzozMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAiJyVzJyBubyBleGlzdGUiCiAKLSM6IHdvcmt0cmVlLmM6MzI0CisjOiB3b3JrdHJlZS5jOjMzNAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIC5naXQgZmlsZSwgZXJyb3IgY29kZSAlZCIKIG1zZ3N0ciAiJyVzJyBubyBlcyB1biBhcmNoaXZvIC5naXQsIGPDs2RpZ28gZGUgZXJyb3IgJWQiCiAKLSM6IHdvcmt0cmVlLmM6MzMyCisjOiB3b3JrdHJlZS5jOjM0MgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGRvZXMgbm90IHBvaW50IGJhY2sgdG8gJyVzJyIKIG1zZ3N0ciAiJyVzJyBubyBhcHVudGEgZGUgdnVlbHRhIGEgJyVzJyIKIAotIzogd3JhcHBlci5jOjIyMyB3cmFwcGVyLmM6MzkzCisjOiB3cmFwcGVyLmM6MTg2IHdyYXBwZXIuYzozNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3IgcmVhZGluZyBhbmQgd3JpdGluZyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBhYnJpciAnJXMnIHBhcmEgbGVjdHVyYSB5IGVzY3JpdHVyYSIKIAotIzogd3JhcHBlci5jOjQyNCB3cmFwcGVyLmM6NjI0CisjOiB3cmFwcGVyLmM6Mzg3IHdyYXBwZXIuYzo1ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGFjY2VzcyAnJXMnIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGFjY2VkZXIgJyVzJyIKIAotIzogd3JhcHBlci5jOjYzMgorIzogd3JhcHBlci5jOjU5NgogbXNnaWQgInVuYWJsZSB0byBnZXQgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBvYnRlbmVyIGVsIGRpcmVjdG9yaW8gZGUgdHJhYmFqbyBhY3R1YWwiCiAKLSM6IHd0LXN0YXR1cy5jOjE1NAorIzogd3Qtc3RhdHVzLmM6MTU4CiBtc2dpZCAiVW5tZXJnZWQgcGF0aHM6IgogbXNnc3RyICJSdXRhcyBubyBmdXNpb25hZGFzOiIKIAotIzogd3Qtc3RhdHVzLmM6MTgxIHd0LXN0YXR1cy5jOjIwOAotIywgYy1mb3JtYXQKLW1zZ2lkICIgICh1c2UgXCJnaXQgcmVzZXQgJXMgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCi1tc2dzdHIgIiAgKHVzYSBcImdpdCByZXNldCAlcyA8YXJjaGl2bz4uLi5cIiBwYXJhIHNhY2FyIGRlbCDDoXJlYSBkZSBzdGFnZSkiCisjOiB3dC1zdGF0dXMuYzoxODcgd3Qtc3RhdHVzLmM6MjE5Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiIKKyIgICh1c2EgXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8YXJjaGl2bz4uLi5cIiBwYXJhIHNhY2FyIGRlbCDDoXJlYSBkZSBzdGFnZSkiCiAKLSM6IHd0LXN0YXR1cy5jOjE4MyB3dC1zdGF0dXMuYzoyMTAKKyM6IHd0LXN0YXR1cy5jOjE5MCB3dC1zdGF0dXMuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zb3VyY2U9JXMgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiIKKyIgICh1c2EgXCJnaXQgcmVzdG9yZSAtLXNvdXJjZT0lcyAtLXN0YWdlZCA8YXJjaGl2bz4uLi5cIiBwYXJhIHNhY2FyIGRlbCDDoXJlYSAiCisiZGUgc3RhZ2UpIgorCisjOiB3dC1zdGF0dXMuYzoxOTMgd3Qtc3RhdHVzLmM6MjI1CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJtIC0tY2FjaGVkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgogbXNnc3RyICIgICh1c2EgXCJnaXQgcm0gLS1jYWNoZWQgPGFyY2hpdm8+Li4uXCIgcGFyYSBzYWNhciBkZWwgw6FyZWEgZGUgc3RhZ2UpIgogCi0jOiB3dC1zdGF0dXMuYzoxODcKKyM6IHd0LXN0YXR1cy5jOjE5NwogbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQgPGZpbGU+Li4uXCIgdG8gbWFyayByZXNvbHV0aW9uKSIKIG1zZ3N0ciAiICAodXNhIFwiZ2l0IGFkZCA8YXJjaGl2bz4uLi5cIiBwYXJhIG1hcmNhciB1bmEgcmVzb2x1Y2nDs24pIgogCi0jOiB3dC1zdGF0dXMuYzoxODkgd3Qtc3RhdHVzLmM6MTkzCisjOiB3dC1zdGF0dXMuYzoxOTkgd3Qtc3RhdHVzLmM6MjAzCiBtc2dpZCAiICAodXNlIFwiZ2l0IGFkZC9ybSA8ZmlsZT4uLi5cIiBhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24pIgogbXNnc3RyICIiCiAiICAodXNhIFwiZ2l0IGFkZC9ybSA8YXJjaGl2bz4uLi5cIiBjb21vIHVuYSBmb3JtYSBhcHJvcGlhZGEgZGUgbWFyY2FyIGxhICIKICJyZXNvbHVjacOzbikiCiAKLSM6IHd0LXN0YXR1cy5jOjE5MQorIzogd3Qtc3RhdHVzLmM6MjAxCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJtIDxmaWxlPi4uLlwiIHRvIG1hcmsgcmVzb2x1dGlvbikiCiBtc2dzdHIgIiAgKHVzYSBcImdpdCBybSA8ZmlsZT4uLi5cIiBwYXJhIG1hcmNhciBsYSByZXNvbHVjacOzbikiCiAKLSM6IHd0LXN0YXR1cy5jOjIwMiB3dC1zdGF0dXMuYzoxMDQyCisjOiB3dC1zdGF0dXMuYzoyMTEgd3Qtc3RhdHVzLmM6MTA3NAogbXNnaWQgIkNoYW5nZXMgdG8gYmUgY29tbWl0dGVkOiIKIG1zZ3N0ciAiQ2FtYmlvcyBhIHNlciBjb25maXJtYWRvczoiCiAKLSM6IHd0LXN0YXR1cy5jOjIyMCB3dC1zdGF0dXMuYzoxMDUxCisjOiB3dC1zdGF0dXMuYzoyMzQgd3Qtc3RhdHVzLmM6MTA4MwogbXNnaWQgIkNoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OiIKIG1zZ3N0ciAiQ2FtYmlvcyBubyByYXN0cmVhZG9zIHBhcmEgZWwgY29tbWl0OiIKIAotIzogd3Qtc3RhdHVzLmM6MjI0CisjOiB3dC1zdGF0dXMuYzoyMzgKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiIgogIiAgKHVzYSBcImdpdCBhZGQgPGFyY2hpdm8+Li4uXCIgcGFyYSBhY3R1YWxpemFyIGxvIHF1ZSBzZXLDoSBjb25maXJtYWRvKSIKIAotIzogd3Qtc3RhdHVzLmM6MjI2CisjOiB3dC1zdGF0dXMuYzoyNDAKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiIgogIiAgKHVzYSBcImdpdCBhZGQvcm0gPGFyY2hpdm8+Li4uXCIgcGFyYSBhY3R1YWxpemFyIGEgbG8gcXVlIHNlIGxlIHZhIGEgaGFjZXIgIgogImNvbW1pdCkiCiAKLSM6IHd0LXN0YXR1cy5jOjIyNworIzogd3Qtc3RhdHVzLmM6MjQxCiBtc2dpZCAiIgotIiAgKHVzZSBcImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi5cIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpIgorIiAgKHVzZSBcImdpdCByZXN0b3JlIDxmaWxlPi4uLlwiIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkiCiBtc2dzdHIgIiIKLSIgICh1c2EgXCJnaXQgY2hlY2tvdXQgLS0gPGFyY2hpdm8+Li4uXCIgcGFyYSBkZXNjYXJ0YXIgbG9zIGNhbWJpb3MgZW4gZWwgIgorIiAgKHVzYSBcImdpdCByZXN0b3JlIDxhcmNoaXZvPi4uLlwiIHBhcmEgZGVzY2FydGFyIGxvcyBjYW1iaW9zIGVuIGVsICIKICJkaXJlY3RvcmlvIGRlIHRyYWJham8pIgogCi0jOiB3dC1zdGF0dXMuYzoyMjkKKyM6IHd0LXN0YXR1cy5jOjI0MwogbXNnaWQgIiAgKGNvbW1pdCBvciBkaXNjYXJkIHRoZSB1bnRyYWNrZWQgb3IgbW9kaWZpZWQgY29udGVudCBpbiBzdWJtb2R1bGVzKSIKIG1zZ3N0ciAiIgogIiAgKGNvbmZpcm1hciBvIGRlc2NhcnRhciBlbCBjb250ZW5pZG8gc2luIHNlZ3VpbWllbnRvIG8gbW9kaWZpY2FkbyBlbiBsb3MgIgogInN1Yi1tw7NkdWxvcykiCiAKLSM6IHd0LXN0YXR1cy5jOjI0MQorIzogd3Qtc3RhdHVzLmM6MjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgKHVzZSBcImdpdCAlcyA8ZmlsZT4uLi5cIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIgogbXNnc3RyICIiCiAiICAodXNhIFwiZ2l0ICVzIDxhcmNoaXZvPi4uLlwiIHBhcmEgaW5jbHVpcmxvIGEgbG8gcXVlIHNlIHNlcsOhIGNvbmZpcm1hZG8pIgogCi0jOiB3dC1zdGF0dXMuYzoyNTYKKyM6IHd0LXN0YXR1cy5jOjI2OAogbXNnaWQgImJvdGggZGVsZXRlZDoiCiBtc2dzdHIgImFtYm9zIGJvcnJhZG9zOiIKIAotIzogd3Qtc3RhdHVzLmM6MjU4CisjOiB3dC1zdGF0dXMuYzoyNzAKIG1zZ2lkICJhZGRlZCBieSB1czoiCiBtc2dzdHIgImFncmVnYWRvIHBvciBub3NvdHJvczoiCiAKLSM6IHd0LXN0YXR1cy5jOjI2MAorIzogd3Qtc3RhdHVzLmM6MjcyCiBtc2dpZCAiZGVsZXRlZCBieSB0aGVtOiIKIG1zZ3N0ciAiYm9ycmFkb3MgcG9yIGVsbG9zOiIKIAotIzogd3Qtc3RhdHVzLmM6MjYyCisjOiB3dC1zdGF0dXMuYzoyNzQKIG1zZ2lkICJhZGRlZCBieSB0aGVtOiIKIG1zZ3N0ciAiYWdyZWdhZG8gcG9yIGVsbG9zOiIKIAotIzogd3Qtc3RhdHVzLmM6MjY0CisjOiB3dC1zdGF0dXMuYzoyNzYKIG1zZ2lkICJkZWxldGVkIGJ5IHVzOiIKIG1zZ3N0ciAiYm9ycmFkbyBwb3Igbm9zb3Ryb3M6IgogCi0jOiB3dC1zdGF0dXMuYzoyNjYKKyM6IHd0LXN0YXR1cy5jOjI3OAogbXNnaWQgImJvdGggYWRkZWQ6IgogbXNnc3RyICJhbWJvcyBhZ3JlZ2Fkb3M6IgogCi0jOiB3dC1zdGF0dXMuYzoyNjgKKyM6IHd0LXN0YXR1cy5jOjI4MAogbXNnaWQgImJvdGggbW9kaWZpZWQ6IgogbXNnc3RyICJhbWJvcyBtb2RpZmljYWRvczoiCiAKLSM6IHd0LXN0YXR1cy5jOjI3OAorIzogd3Qtc3RhdHVzLmM6MjkwCiBtc2dpZCAibmV3IGZpbGU6IgogbXNnc3RyICJudWV2byBhcmNoaXZvOiIKIAotIzogd3Qtc3RhdHVzLmM6MjgwCisjOiB3dC1zdGF0dXMuYzoyOTIKIG1zZ2lkICJjb3BpZWQ6IgogbXNnc3RyICJjb3BpYWRvOiIKIAotIzogd3Qtc3RhdHVzLmM6MjgyCisjOiB3dC1zdGF0dXMuYzoyOTQKIG1zZ2lkICJkZWxldGVkOiIKIG1zZ3N0ciAiYm9ycmFkbzoiCiAKLSM6IHd0LXN0YXR1cy5jOjI4NAorIzogd3Qtc3RhdHVzLmM6Mjk2CiBtc2dpZCAibW9kaWZpZWQ6IgogbXNnc3RyICJtb2RpZmljYWRvOiIKIAotIzogd3Qtc3RhdHVzLmM6Mjg2CisjOiB3dC1zdGF0dXMuYzoyOTgKIG1zZ2lkICJyZW5hbWVkOiIKIG1zZ3N0ciAicmVub21icmFkbzoiCiAKLSM6IHd0LXN0YXR1cy5jOjI4OAorIzogd3Qtc3RhdHVzLmM6MzAwCiBtc2dpZCAidHlwZWNoYW5nZToiCiBtc2dzdHIgImNhbWJpbyBkZSB0aXBvOiIKIAotIzogd3Qtc3RhdHVzLmM6MjkwCisjOiB3dC1zdGF0dXMuYzozMDIKIG1zZ2lkICJ1bmtub3duOiIKIG1zZ3N0ciAiZGVzY29ub2NpZG86IgogCi0jOiB3dC1zdGF0dXMuYzoyOTIKKyM6IHd0LXN0YXR1cy5jOjMwNAogbXNnaWQgInVubWVyZ2VkOiIKIG1zZ3N0ciAiZGVzLWZ1c2lvbmFkbzoiCiAKLSM6IHd0LXN0YXR1cy5jOjM3MgorIzogd3Qtc3RhdHVzLmM6Mzg0CiBtc2dpZCAibmV3IGNvbW1pdHMsICIKIG1zZ3N0ciAibnVldm9zIGNvbW1pdHMsICIKIAotIzogd3Qtc3RhdHVzLmM6Mzc0CisjOiB3dC1zdGF0dXMuYzozODYKIG1zZ2lkICJtb2RpZmllZCBjb250ZW50LCAiCiBtc2dzdHIgImNvbnRlbmlkbyBtb2RpZmljYWRvLCAiCiAKLSM6IHd0LXN0YXR1cy5jOjM3NgorIzogd3Qtc3RhdHVzLmM6Mzg4CiBtc2dpZCAidW50cmFja2VkIGNvbnRlbnQsICIKIG1zZ3N0ciAiY29udGVuaWRvIG5vIHJhc3RyZWFkbywgIgogCi0jOiB3dC1zdGF0dXMuYzo4ODAKKyM6IHd0LXN0YXR1cy5jOjkwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIHN0YXNoIGN1cnJlbnRseSBoYXMgJWQgZW50cnkiCiBtc2dpZF9wbHVyYWwgIllvdXIgc3Rhc2ggY3VycmVudGx5IGhhcyAlZCBlbnRyaWVzIgogbXNnc3RyWzBdICJUdSBzdGFzaCBhY3R1YWxtZW50ZSB0aWVuZSAlZCBlbnRyYWRhIgogbXNnc3RyWzFdICJUdSBzdGFzaCBhY3R1YWxtZW50ZSB0aWVuZSAlZCBlbnRyYWRhcyIKIAotIzogd3Qtc3RhdHVzLmM6OTEyCisjOiB3dC1zdGF0dXMuYzo5MzgKIG1zZ2lkICJTdWJtb2R1bGVzIGNoYW5nZWQgYnV0IG5vdCB1cGRhdGVkOiIKLW1zZ3N0ciAiU3VibW9kdWxvcyBjYW1iaWFkb3MgcGVybyBubyBhY3R1YWxpemFkb3M6IgorbXNnc3RyICJTdWJtw7NkdWxvcyBjYW1iaWFkb3MgcGVybyBubyBhY3R1YWxpemFkb3M6IgogCi0jOiB3dC1zdGF0dXMuYzo5MTQKKyM6IHd0LXN0YXR1cy5jOjk0MAogbXNnaWQgIlN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCi1tc2dzdHIgIlN1Ym1vZHVsb3MgY2FtYmlhZG9zIGxpc3RvcyBwYXJhIHJlYWxpemFyIGNvbW1pdDoiCittc2dzdHIgIlN1Ym3Ds2R1bG9zIGNhbWJpYWRvcyBsaXN0b3MgcGFyYSByZWFsaXphciBjb21taXQ6IgogCi0jOiB3dC1zdGF0dXMuYzo5OTYKKyM6IHd0LXN0YXR1cy5jOjEwMjIKIG1zZ2lkICIiCiAiRG8gbm90IG1vZGlmeSBvciByZW1vdmUgdGhlIGxpbmUgYWJvdmUuXG4iCiAiRXZlcnl0aGluZyBiZWxvdyBpdCB3aWxsIGJlIGlnbm9yZWQuIgpAQCAtNjg0MiwxMDcgKzkwMDYsMTE4IEBACiAiTm8gbW9kaWZpcXVlIG8gYm9ycmUgbGEgbMOtbmVhIGRlIGVuY2ltYS5cbiIKICJUb2RvIGxvIHF1ZSBlc3RlIHBvciBhYmFqbyBzZXLDoSBlbGltaW5hZG8uIgogCi0jOiB3dC1zdGF0dXMuYzoxMDk3CisjOiB3dC1zdGF0dXMuYzoxMTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBjb21wdXRlIHRoZSBicmFuY2ggYWhlYWQvYmVoaW5kIHZhbHVlcy5cbiIKKyJZb3UgY2FuIHVzZSAnLS1uby1haGVhZC1iZWhpbmQnIHRvIGF2b2lkIHRoaXMuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJUb23DsyAlLjJmIHNlZ3VuZG9zIHBhcmEgY2FsY3VsYXIgbG9zIHZhbG9yZXMgYW50ZXJpb3IvcG9zdGVyaW9yIGRlbCBicmFuY2guXG4iCisiUHVlZGVzIHVzYXIgJy0tbm8tYWhlYWQtYmVoaW5kJyBwYXJhIGV2aXRhciBlc3RvLlxuIgorCisjOiB3dC1zdGF0dXMuYzoxMTQ0CiBtc2dpZCAiWW91IGhhdmUgdW5tZXJnZWQgcGF0aHMuIgogbXNnc3RyICJUaWVuZXMgcnV0YXMgbm8gZnVzaW9uYWRhcy4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMDAKKyM6IHd0LXN0YXR1cy5jOjExNDcKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgY29tbWl0XCIpIgogbXNnc3RyICIgIChhcnJlZ2xhIGxvcyBjb25mbGljdG9zIHkgY29ycmUgXCJnaXQgY29tbWl0XCIiCiAKLSM6IHd0LXN0YXR1cy5jOjExMDIKKyM6IHd0LXN0YXR1cy5jOjExNDkKIG1zZ2lkICIgICh1c2UgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIHRvIGFib3J0IHRoZSBtZXJnZSkiCiBtc2dzdHIgIiAgKHVzYSBcImdpdCBtZXJnZSAtLWFib3J0XCIgcGFyYSBhYm9ydGFyIGxhIGZ1c2lvbikiCiAKLSM6IHd0LXN0YXR1cy5jOjExMDYKKyM6IHd0LXN0YXR1cy5jOjExNTMKIG1zZ2lkICJBbGwgY29uZmxpY3RzIGZpeGVkIGJ1dCB5b3UgYXJlIHN0aWxsIG1lcmdpbmcuIgogbXNnc3RyICJUb2RvcyBsb3MgY29uZmxpY3RvcyByZXN1ZWx0b3MgcGVybyBzaWd1ZXMgZnVzaW9uYW5kby4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMDkKKyM6IHd0LXN0YXR1cy5jOjExNTYKIG1zZ2lkICIgICh1c2UgXCJnaXQgY29tbWl0XCIgdG8gY29uY2x1ZGUgbWVyZ2UpIgogbXNnc3RyICIgICh1c2EgXCJnaXQgY29tbWl0XCIgcGFyYSBjb25jbHVpciBsYSBmdXNpw7NuKSIKIAotIzogd3Qtc3RhdHVzLmM6MTExOAorIzogd3Qtc3RhdHVzLmM6MTE2NQogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbiBhbSBzZXNzaW9uLiIKIG1zZ3N0ciAiRXN0w6FzIGVuIG1lZGlvIGRlIHVuYSBzZXNpw7NuIGFtLiIKIAotIzogd3Qtc3RhdHVzLmM6MTEyMQorIzogd3Qtc3RhdHVzLmM6MTE2OAogbXNnaWQgIlRoZSBjdXJyZW50IHBhdGNoIGlzIGVtcHR5LiIKIG1zZ3N0ciAiRWwgcGFyY2hlIGFjdHVhbCBlc3TDoSB2YWPDrW8uIgogCi0jOiB3dC1zdGF0dXMuYzoxMTI1CisjOiB3dC1zdGF0dXMuYzoxMTcyCiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBydW4gXCJnaXQgYW0gLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiICAoYXJyZWdsYSBsb3MgY29uZmxpY3RvcyB5IGx1ZWdvIGNvcnJlIFwiZ2l0IGFtIC0tY29udGludWVcIiIKIAotIzogd3Qtc3RhdHVzLmM6MTEyNworIzogd3Qtc3RhdHVzLmM6MTE3NAogbXNnaWQgIiAgKHVzZSBcImdpdCBhbSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgogbXNnc3RyICIgICh1c2EgXCJnaXQgYW0gLS1za2lwXCIgcGFyYSBzYWx0YXIgZXN0ZSBwYXJjaGUpIgogCi0jOiB3dC1zdGF0dXMuYzoxMTI5CisjOiB3dC1zdGF0dXMuYzoxMTc2CiBtc2dpZCAiICAodXNlIFwiZ2l0IGFtIC0tYWJvcnRcIiB0byByZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2gpIgogbXNnc3RyICIgICh1c2EgXCJnaXQgYW0gLS1hYm9ydFwiIHBhcmEgcmVzdGF1cmFyIGxhIHJhbWEgb3JpZ2luYWwpIgogCi0jOiB3dC1zdGF0dXMuYzoxMjYwCisjOiB3dC1zdGF0dXMuYzoxMzA5CiBtc2dpZCAiZ2l0LXJlYmFzZS10b2RvIGlzIG1pc3NpbmcuIgogbXNnc3RyICJnaXQtcmViYXNlLXRvZG8gbm8gZXN0w6EgcHJlc2VudGUuIgogCi0jOiB3dC1zdGF0dXMuYzoxMjYyCisjOiB3dC1zdGF0dXMuYzoxMzExCiBtc2dpZCAiTm8gY29tbWFuZHMgZG9uZS4iCiBtc2dzdHIgIk5vIHNlIHJlYWxpemFyb24gbG9zIGNvbWFuZG9zLiIKIAotIzogd3Qtc3RhdHVzLmM6MTI2NQorIzogd3Qtc3RhdHVzLmM6MTMxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJMYXN0IGNvbW1hbmQgZG9uZSAoJWQgY29tbWFuZCBkb25lKToiCiBtc2dpZF9wbHVyYWwgIkxhc3QgY29tbWFuZHMgZG9uZSAoJWQgY29tbWFuZHMgZG9uZSk6IgogbXNnc3RyWzBdICJFbCDDumx0aW1vIGNvbWFuZG8gcmVhbGl6YWRvICglZCBjb21hbmRvIHJlYWxpemFkbyk6IgogbXNnc3RyWzFdICJMb3Mgw7psdGltb3MgY29tYW5kb3MgcmVhbGl6YWRvcyAoJWQgY29tYW5kb3MgcmVhbGl6YWRvcyk6IgogCi0jOiB3dC1zdGF0dXMuYzoxMjc2CisjOiB3dC1zdGF0dXMuYzoxMzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgKHNlZSBtb3JlIGluIGZpbGUgJXMpIgotbXNnc3RyICIgICh2ZXIgbWFzIGVuIGVsIGFyY2hpdm8gJXMpIgorbXNnc3RyICIgICh2ZXIgbcOhcyBlbiBlbCBhcmNoaXZvICVzKSIKIAotIzogd3Qtc3RhdHVzLmM6MTI4MQorIzogd3Qtc3RhdHVzLmM6MTMzMAogbXNnaWQgIk5vIGNvbW1hbmRzIHJlbWFpbmluZy4iCi1tc2dzdHIgIk5vIHF1ZWRhbiBtYXMgY29tYW5kb3MuIgorbXNnc3RyICJObyBxdWVkYW4gbcOhcyBjb21hbmRvcy4iCiAKLSM6IHd0LXN0YXR1cy5jOjEyODQKKyM6IHd0LXN0YXR1cy5jOjEzMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiTmV4dCBjb21tYW5kIHRvIGRvICglZCByZW1haW5pbmcgY29tbWFuZCk6IgogbXNnaWRfcGx1cmFsICJOZXh0IGNvbW1hbmRzIHRvIGRvICglZCByZW1haW5pbmcgY29tbWFuZHMpOiIKIG1zZ3N0clswXSAiU2lndWllbnRlIGNvbWFuZG8gYSByZWFsaXphcsKgKCVkIGNvbWFuZG8gcmVzdGFudGUpOiIKIG1zZ3N0clsxXSAiU2lndWllbnRlIGNvbWFuZG9zIGEgcmVhbGl6YXIgKCVkIGNvbWFuZG9zIGZhbHRhbnRlcyk6IgogCi0jOiB3dC1zdGF0dXMuYzoxMjkyCisjOiB3dC1zdGF0dXMuYzoxMzQxCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb1wiIHRvIHZpZXcgYW5kIGVkaXQpIgogbXNnc3RyICIgICh1c2EgXCJnaXQgcmViYXNlIC0tZWRpdC10b2RvXCIgcGFyYSB2ZXIgeSBlZGl0YXIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzA0CisjOiB3dC1zdGF0dXMuYzoxMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgogbXNnc3RyICJFc3TDoXMgYXBsaWNhbmRvIHVuIHJlYmFzZSBkZSBsYSByYW1hICclcycgZW4gJyVzLiIKIAotIzogd3Qtc3RhdHVzLmM6MTMwOQorIzogd3Qtc3RhdHVzLmM6MTM1OAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJlYmFzaW5nLiIKIG1zZ3N0ciAiRXN0w6FzIGFwbGljYW5kbyB1biByZWJhc2UuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzIyCisjOiB3dC1zdGF0dXMuYzoxMzcxCiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKGNvcnJpZ2UgbG9zIGNvbmZsaWN0b3MgeSBlamVjdXRhIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzI0CisjOiB3dC1zdGF0dXMuYzoxMzczCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgogbXNnc3RyICIgICh1c2EgXCJnaXQgcmViYXNlIC0tc2tpcFwiIHBhcmEgb21pdGlyIGVzdGUgcGFyY2hlKSIKIAotIzogd3Qtc3RhdHVzLmM6MTMyNgorIzogd3Qtc3RhdHVzLmM6MTM3NQogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1hYm9ydFwiIHRvIGNoZWNrIG91dCB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiICAodXNhIFwiZ2l0IHJlYmFzZSAtLWFib3J0XCIgcGFyYSB2b2x2ZXIgYSB0dSByYW1hIG9yaWdpbmFsKSIKIAotIzogd3Qtc3RhdHVzLmM6MTMzMworIzogd3Qtc3RhdHVzLmM6MTM4MgogbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiICAodG9kb3MgbG9zIGNvbmZsaWN0b3MgY29ycmVnaWRvczogZWplY3V0YSBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKIAotIzogd3Qtc3RhdHVzLmM6MTMzNworIzogd3Qtc3RhdHVzLmM6MTM4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFyZSBjdXJyZW50bHkgc3BsaXR0aW5nIGEgY29tbWl0IHdoaWxlIHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgpAQCAtNjk1MCwxMjggKzkxMjUsMTQ0IEBACiAiRXN0w6FzIGRpdmlkaWVuZG8gdW4gY29tbWl0IG1pZW50cmFzIGFwbGljYXMgdW4gcmViYXNlIGRlIGxhIHJhbWEgJyVzJyBlbiAiCiAiJyVzJy4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzNDIKKyM6IHd0LXN0YXR1cy5jOjEzOTEKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBzcGxpdHRpbmcgYSBjb21taXQgZHVyaW5nIGEgcmViYXNlLiIKIG1zZ3N0ciAiRXN0w6FzIGRpdmlkaWVuZG8gdW4gY29tbWl0IGR1cmFudGUgdW4gcmViYXNlLiIKIAotIzogd3Qtc3RhdHVzLmM6MTM0NQorIzogd3Qtc3RhdHVzLmM6MTM5NAogbXNnaWQgIiAgKE9uY2UgeW91ciB3b3JraW5nIGRpcmVjdG9yeSBpcyBjbGVhbiwgcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIiCiAiICAoVW5hIHZleiBxdWUgdHUgZGlyZWN0b3JpbyBkZSB0cmFiYWpvIGVzdMOpIGxpbXBpbywgZWplY3V0YSBcImdpdCByZWJhc2UgLS0iCiAiY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNDkKKyM6IHd0LXN0YXR1cy5jOjEzOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgZWRpdGluZyBhIGNvbW1pdCB3aGlsZSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKIG1zZ3N0ciAiIgogIkVzdMOhcyBlZGl0YW5kbyB1biBjb21taXQgbWllbnRyYXMgc2UgYXBsaWNhIHVuIHJlYmFzZSBkZSBsYSByYW1hICclcycgZW4gIgogIiclcycuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzU0CisjOiB3dC1zdGF0dXMuYzoxNDAzCiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgZWRpdGluZyBhIGNvbW1pdCBkdXJpbmcgYSByZWJhc2UuIgogbXNnc3RyICJFc3TDoXMgZWRpdGFuZG8gdW4gY29tbWl0IGR1cmFudGUgdW4gcmViYXNlLiIKIAotIzogd3Qtc3RhdHVzLmM6MTM1NworIzogd3Qtc3RhdHVzLmM6MTQwNgogbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXQgLS1hbWVuZFwiIHRvIGFtZW5kIHRoZSBjdXJyZW50IGNvbW1pdCkiCiBtc2dzdHIgIiAgKHVzYSBcImdpdCBjb21taXQgLS1hbWVuZFwiIHBhcmEgZW5tZW5kYXIgZWwgY29tbWl0IGFjdHVhbCkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTkKKyM6IHd0LXN0YXR1cy5jOjE0MDgKIG1zZ2lkICIiCiAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIgb25jZSB5b3UgYXJlIHNhdGlzZmllZCB3aXRoIHlvdXIgY2hhbmdlcykiCiBtc2dzdHIgIiIKICIgICh1c2EgXCJnaXQgcmViYXNlIC0tY29udGludWVcIiB1bmEgdmV6IHF1ZSBlc3TDqXMgc2F0aXNmZWNobyBjb24gdHVzICIKICJjYW1iaW9zKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM2OAorIzogd3Qtc3RhdHVzLmM6MTQxOQorbXNnaWQgIkNoZXJyeS1waWNrIGN1cnJlbnRseSBpbiBwcm9ncmVzcy4iCittc2dzdHIgIkNoZXJyeS1waWNrIGVuIHByb2dyZXNvIGFjdHVhbG1lbnRlLiIKKworIzogd3Qtc3RhdHVzLmM6MTQyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBjaGVycnktcGlja2luZyBjb21taXQgJXMuIgogbXNnc3RyICJFc3TDoXMgcmVhbGl6YW5kbyB1biBjaGVycnktcGlja2luZyBlbiBlbCBjb21taXQgJXMuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzczCisjOiB3dC1zdGF0dXMuYzoxNDI5CiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKGNvcnJpZ2UgbG9zIGNvbmZsaWN0b3MgeSBlamVjdXRhIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNzYKKyM6IHd0LXN0YXR1cy5jOjE0MzIKK21zZ2lkICIgIChydW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIHRvIGNvbnRpbnVlKSIKK21zZ3N0ciAiICAoZWplY3V0YSBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgcGFyYSBjb250aW51YXIpIgorCisjOiB3dC1zdGF0dXMuYzoxNDM1CiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCiBtc2dzdHIgIiIKICIgICh0b2RvcyBsb3MgY29uZmxpY3RvcyBjb3JyZWdpZG9zOiBlamVjdXRhIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNzgKKyM6IHd0LXN0YXR1cy5jOjE0MzcKK21zZ2lkICIgICh1c2UgXCJnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKK21zZ3N0ciAiICAodXNhIFwiZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFwiIHBhcmEgc2FsdGFyIGVzdGUgcGFyY2hlKSIKKworIzogd3Qtc3RhdHVzLmM6MTQzOQogbXNnaWQgIiAgKHVzZSBcImdpdCBjaGVycnktcGljayAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSBjaGVycnktcGljayBvcGVyYXRpb24pIgogbXNnc3RyICIiCiAiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnRcIiBwYXJhIGNhbmNlbGFyIGxhIG9wZXJhY2nDs24gY2hlcnJ5LXBpY2spIgogCi0jOiB3dC1zdGF0dXMuYzoxMzg2CisjOiB3dC1zdGF0dXMuYzoxNDQ5Cittc2dpZCAiUmV2ZXJ0IGN1cnJlbnRseSBpbiBwcm9ncmVzcy4iCittc2dzdHIgIlJldmllcnRlIGVsIGVzdGFkbyBlbiBwcm9ncmVzbyBhY3R1YWwuIgorCisjOiB3dC1zdGF0dXMuYzoxNDUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJldmVydGluZyBjb21taXQgJXMuIgogbXNnc3RyICJFc3TDoXMgcmV2aXJ0aWVuZG8gZWwgY29tbWl0ICVzLiIKIAotIzogd3Qtc3RhdHVzLmM6MTM5MQorIzogd3Qtc3RhdHVzLmM6MTQ1OAogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiICAoY29ycmlnZSBsb3MgY29uZmxpY3RvcyB5IGVqZWN1dGEgXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzOTQKKyM6IHd0LXN0YXR1cy5jOjE0NjEKK21zZ2lkICIgIChydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIiB0byBjb250aW51ZSkiCittc2dzdHIgIiAgKGVqZWN1dGEgXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIiBwYXJhIGNvbnRpbnVhcikiCisKKyM6IHd0LXN0YXR1cy5jOjE0NjQKIG1zZ2lkICIgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKHRvZG9zIGxvcyBjb25mbGljdG9zIGNvcnJlZ2lkb3M6IGVqZWN1dGEgXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzOTYKKyM6IHd0LXN0YXR1cy5jOjE0NjYKK21zZ2lkICIgICh1c2UgXCJnaXQgcmV2ZXJ0IC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCittc2dzdHIgIiAgKHVzYSBcImdpdCByZXZlcnQgLS1za2lwXCIgcGFyYSBvbWl0aXIgZXN0ZSBwYXJjaGUpIgorCisjOiB3dC1zdGF0dXMuYzoxNDY4CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJldmVydCAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSByZXZlcnQgb3BlcmF0aW9uKSIKIG1zZ3N0ciAiICAodXNhIFwiZ2l0IHJldmVydCAtLWFib3J0XCIgcGFyYSBjYW5jZWxhciBsYSBvcGVyYWNpw7NuIGRlIHJldmVydGlyKSIKIAotIzogd3Qtc3RhdHVzLmM6MTQwNgorIzogd3Qtc3RhdHVzLmM6MTQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcsIHN0YXJ0ZWQgZnJvbSBicmFuY2ggJyVzJy4iCiBtc2dzdHIgIkVzdMOhcyBhcGxpY2FuZG8gdW4gYmlzZWN0LCBjb21lbnphbmRvIGVuIGxhIHJhbWEgJyVzJy4iCiAKLSM6IHd0LXN0YXR1cy5jOjE0MTAKKyM6IHd0LXN0YXR1cy5jOjE0ODIKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcuIgogbXNnc3RyICJFc3TDoXMgYXBsaWNhbmRvIHVuIGJpc2VjdC4iCiAKLSM6IHd0LXN0YXR1cy5jOjE0MTMKKyM6IHd0LXN0YXR1cy5jOjE0ODUKIG1zZ2lkICIgICh1c2UgXCJnaXQgYmlzZWN0IHJlc2V0XCIgdG8gZ2V0IGJhY2sgdG8gdGhlIG9yaWdpbmFsIGJyYW5jaCkiCiBtc2dzdHIgIiAgKHVzYSBcImdpdCBiaXNlY3QgcmVzZXRcIiBwYXJhIHZvbHZlciBhIGxhIHJhbWEgb3JpZ2luYWwpIgogCi0jOiB3dC1zdGF0dXMuYzoxNjExCisjOiB3dC1zdGF0dXMuYzoxNjk0CiBtc2dpZCAiT24gYnJhbmNoICIKIG1zZ3N0ciAiRW4gbGEgcmFtYSAiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MTgKKyM6IHd0LXN0YXR1cy5jOjE3MDEKIG1zZ2lkICJpbnRlcmFjdGl2ZSByZWJhc2UgaW4gcHJvZ3Jlc3M7IG9udG8gIgogbXNnc3RyICJyZWJhc2UgaW50ZXJhY3Rpdm8gZW4gcHJvZ3Jlc287IGVuICIKIAotIzogd3Qtc3RhdHVzLmM6MTYyMAorIzogd3Qtc3RhdHVzLmM6MTcwMwogbXNnaWQgInJlYmFzZSBpbiBwcm9ncmVzczsgb250byAiCiBtc2dzdHIgInJlYmFzZSBlbiBwcm9ncmVzbzsgZW4gIgogCi0jOiB3dC1zdGF0dXMuYzoxNjI1Ci1tc2dpZCAiSEVBRCBkZXRhY2hlZCBhdCAiCi1tc2dzdHIgIkhFQUQgZGVzYWNvcGxhZGEgZW4gIgotCi0jOiB3dC1zdGF0dXMuYzoxNjI3Ci1tc2dpZCAiSEVBRCBkZXRhY2hlZCBmcm9tICIKLW1zZ3N0ciAiSEVBRCBkZXNhY29wbGFkYSBkZSAiCi0KLSM6IHd0LXN0YXR1cy5jOjE2MzAKKyM6IHd0LXN0YXR1cy5jOjE3MTMKIG1zZ2lkICJOb3QgY3VycmVudGx5IG9uIGFueSBicmFuY2guIgogbXNnc3RyICJBY3R1YWxtZW50ZSBubyBlc3TDoXMgZW4gbmluZ3VuYSByYW1hLiIKIAotIzogd3Qtc3RhdHVzLmM6MTY0NworIzogd3Qtc3RhdHVzLmM6MTczMAogbXNnaWQgIkluaXRpYWwgY29tbWl0IgogbXNnc3RyICJDb25maXJtYWNpw7NuIGluaWNpYWwiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NDgKKyM6IHd0LXN0YXR1cy5jOjE3MzEKIG1zZ2lkICJObyBjb21taXRzIHlldCIKIG1zZ3N0ciAiTm8gaGF5IGNvbW1pdHMgdG9kYXbDrWEiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjIKKyM6IHd0LXN0YXR1cy5jOjE3NDUKIG1zZ2lkICJVbnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgIkFyY2hpdm9zIHNpbiBzZWd1aW1pZW50byIKIAotIzogd3Qtc3RhdHVzLmM6MTY2NAorIzogd3Qtc3RhdHVzLmM6MTc0NwogbXNnaWQgIklnbm9yZWQgZmlsZXMiCiBtc2dzdHIgIkFyY2hpdm9zIGlnbm9yYWRvcyIKIAotIzogd3Qtc3RhdHVzLmM6MTY2OAorIzogd3Qtc3RhdHVzLmM6MTc1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gZW51bWVyYXRlIHVudHJhY2tlZCBmaWxlcy4gJ3N0YXR1cyAtdW5vJ1xuIgpAQCAtNzA3OSwzNCArOTI3MCwzNCBAQAogIm5ldyBmaWxlcyB5b3Vyc2VsZiAoc2VlICdnaXQgaGVscCBzdGF0dXMnKS4iCiBtc2dzdHIgIiIKICJUb23DsyAlLjJmIHNlZ3VuZG9zIGVudW1lcmFyIGxvcyBhcmNoaXZvcyBubyByYXN0cmVhZG9zLiAnc3RhdHVzIC11bm8nXG4iCi0icHVlZGUgYWNlbGVyYXJsbywgcGVybyB0aWVuZSBxdWUgc2VyIGN1aWRhZG9zbyBkZSBubyBvbHZpZGFyIGFncmVnYXJcbiIKLSJudWV2b3MgYXJjaGl2b3MgdXN0ZWQgbWlzbW8gKHZlYSAnZ2l0IGhlbHAgc3RhdHVzJykuIgorInB1ZWRlIGFjZWxlcmFybG8sIHBlcm8gdGllbmVzIHF1ZSBzZXIgY3VpZGFkb3NvIGRlIG5vIG9sdmlkYXIgYWdyZWdhclxuIgorIm51ZXZvcyBhcmNoaXZvcyB0w7ogbWlzbW8gKHZlYSAnZ2l0IGhlbHAgc3RhdHVzJykuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjc0CisjOiB3dC1zdGF0dXMuYzoxNzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVudHJhY2tlZCBmaWxlcyBub3QgbGlzdGVkJXMiCiBtc2dzdHIgIkFyY2hpdm9zIG5vIHJhc3RyZWFkb3Mgbm8gc29uIG1vc3RyYWRvcyAlcyIKIAotIzogd3Qtc3RhdHVzLmM6MTY3NgorIzogd3Qtc3RhdHVzLmM6MTc1OQogbXNnaWQgIiAodXNlIC11IG9wdGlvbiB0byBzaG93IHVudHJhY2tlZCBmaWxlcykiCiBtc2dzdHIgIiAodXNhIGxhIG9wY2nDs24gLXUgcGFyYSBtb3N0cmFyIGxvcyBhcmNoaXZvcyBzaW4gc2VndWltaWVudG8pIgogCi0jOiB3dC1zdGF0dXMuYzoxNjgyCisjOiB3dC1zdGF0dXMuYzoxNzY1CiBtc2dpZCAiTm8gY2hhbmdlcyIKIG1zZ3N0ciAiU2luIGNhbWJpb3MiCiAKLSM6IHd0LXN0YXR1cy5jOjE2ODcKKyM6IHd0LXN0YXR1cy5jOjE3NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXQgKHVzZSBcImdpdCBhZGRcIiBhbmQvb3IgXCJnaXQgY29tbWl0IC1hXCIpXG4iCiBtc2dzdHIgIiIKICJzaW4gY2FtYmlvcyBhZ3JlZ2Fkb3MgYWwgY29tbWl0ICh1c2EgXCJnaXQgYWRkXCIgeS9vIFwiZ2l0IGNvbW1pdCAtYVwiKVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjkwCisjOiB3dC1zdGF0dXMuYzoxNzczCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGNoYW5nZXMgYWRkZWQgdG8gY29tbWl0XG4iCiBtc2dzdHIgIm5vIHNlIGFncmVnYXJvbiBjYW1iaW9zIGFsIGNvbW1pdFxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjkzCisjOiB3dC1zdGF0dXMuYzoxNzc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJub3RoaW5nIGFkZGVkIHRvIGNvbW1pdCBidXQgdW50cmFja2VkIGZpbGVzIHByZXNlbnQgKHVzZSBcImdpdCBhZGRcIiB0byAiCkBAIC03MTE1LDE5MiArOTMwNiwyMDIgQEAKICJubyBoYXkgbmFkYSBhZ3JlZ2FkbyBhbCBjb21taXQgcGVybyBoYXkgYXJjaGl2b3Mgc2luIHNlZ3VpbWllbnRvIHByZXNlbnRlcyAiCiAiKHVzYSBcImdpdCBhZGRcIiBwYXJhIGhhY2VybGVzIHNlZ3VpbWllbnRvKVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjk2CisjOiB3dC1zdGF0dXMuYzoxNzc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgYWRkZWQgdG8gY29tbWl0IGJ1dCB1bnRyYWNrZWQgZmlsZXMgcHJlc2VudFxuIgogbXNnc3RyICIiCiAibm8gaGF5IG5hZGEgYWdyZWdhZG8gcGFyYSBjb25maXJtYXIsIHBlcm8gaGF5IGFyY2hpdm9zIHNpbiBzZWd1aW1pZW50byAiCiAicHJlc2VudGVzXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTkKKyM6IHd0LXN0YXR1cy5jOjE3ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXQgKGNyZWF0ZS9jb3B5IGZpbGVzIGFuZCB1c2UgXCJnaXQgYWRkXCIgdG8gdHJhY2spXG4iCiBtc2dzdHIgIiIKICJubyBoYXkgbmFkYSBwYXJhIGNvbmZpcm1hciAoY3JlYS9jb3BpYSBhcmNoaXZvcyB5IHVzYSBcImdpdCBhZGRcIiBwYXJhICIKICJoYWNlcmxlcyBzZWd1aW1pZW50bylcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTcwMiB3dC1zdGF0dXMuYzoxNzA3CisjOiB3dC1zdGF0dXMuYzoxNzg1IHd0LXN0YXR1cy5jOjE3OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXRcbiIKIG1zZ3N0ciAibmFkYSBwYXJhIGhhY2VyIGNvbW1pdFxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNzA1CisjOiB3dC1zdGF0dXMuYzoxNzg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0ICh1c2UgLXUgdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpXG4iCiBtc2dzdHIgIiIKICJuYWRhIHBhcmEgaGFjZXIgY29tbWl0ICh1c2EgLXUgcGFyYSBtb3N0cmFyIGxvcyBhcmNoaXZvcyBubyByYXN0cmVhZG9zKVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNzA5CisjOiB3dC1zdGF0dXMuYzoxNzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0LCB3b3JraW5nIHRyZWUgY2xlYW5cbiIKIG1zZ3N0ciAibmFkYSBwYXJhIGhhY2VyIGNvbW1pdCwgZWwgw6FyYm9sIGRlIHRyYWJham8gZXN0w6EgbGltcGlvXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE4MjIKKyM6IHd0LXN0YXR1cy5jOjE5MDUKIG1zZ2lkICJObyBjb21taXRzIHlldCBvbiAiCiBtc2dzdHIgIk5vIGhheSBjb21taXRzIHRvZGF2w61hIGVuICIKIAotIzogd3Qtc3RhdHVzLmM6MTgyNgorIzogd3Qtc3RhdHVzLmM6MTkwOQogbXNnaWQgIkhFQUQgKG5vIGJyYW5jaCkiCiBtc2dzdHIgIkhFQUQgKHNpbiByYW1hKSIKIAotIzogd3Qtc3RhdHVzLmM6MTg1NworIzogd3Qtc3RhdHVzLmM6MTk0MAogbXNnaWQgImRpZmZlcmVudCIKIG1zZ3N0ciAiZGlmZXJlbnRlIgogCi0jOiB3dC1zdGF0dXMuYzoxODU5IHd0LXN0YXR1cy5jOjE4NjcKKyM6IHd0LXN0YXR1cy5jOjE5NDIgd3Qtc3RhdHVzLmM6MTk1MAogbXNnaWQgImJlaGluZCAiCiBtc2dzdHIgImRldHLDoXMgIgogCi0jOiB3dC1zdGF0dXMuYzoxODYyIHd0LXN0YXR1cy5jOjE4NjUKKyM6IHd0LXN0YXR1cy5jOjE5NDUgd3Qtc3RhdHVzLmM6MTk0OAogbXNnaWQgImFoZWFkICIKIG1zZ3N0ciAiYWRlbGFudGUgIgogCiAjLiBUUkFOU0xBVE9SUzogdGhlIGFjdGlvbiBpcyBlLmcuICJwdWxsIHdpdGggcmViYXNlIgotIzogd3Qtc3RhdHVzLmM6MjM3NAorIzogd3Qtc3RhdHVzLmM6MjQ3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgJXM6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICJubyBzZSBwdWVkZSAlczogVGllbmVzIGNhbWJpb3Mgc2luIG1hcmNhci4iCiAKLSM6IHd0LXN0YXR1cy5jOjIzODAKKyM6IHd0LXN0YXR1cy5jOjI0NzYKIG1zZ2lkICJhZGRpdGlvbmFsbHksIHlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgImFkaWNpb25hbG1lbnRlLCB0dSDDrW5kaWNlIGNvbnRpZW5lIGNhbWJpb3MgcXVlIG5vIGVzdMOhbiBlbiB1biBjb21taXQuIgogCi0jOiB3dC1zdGF0dXMuYzoyMzgyCisjOiB3dC1zdGF0dXMuYzoyNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAlczogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgJXM6IFR1IMOtbmRpY2UgY29udGllbmUgY2FtYmlvcyBxdWUgbm8gZXN0w6FuIGVuIHVuIGNvbW1pdC4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQKKyM6IGNvbXBhdC9wcmVjb21wb3NlX3V0ZjguYzo1OCBidWlsdGluL2Nsb25lLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgJyVzJyIKK21zZ3N0ciAiZmFsbMOzIGFsIGRlc3ZpbmN1bGFyICclcyciCisKKyM6IGJ1aWx0aW4vYWRkLmM6MjYKIG1zZ2lkICJnaXQgYWRkIFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKIG1zZ3N0ciAiZ2l0IGFkZCBbPG9wY2nDs24+XSBbLS1dIDxlc3BlY2lmaWNhY2nDs24tZGUtcnV0YT4uLi4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6ODMKKyM6IGJ1aWx0aW4vYWRkLmM6ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBkaWZmIHN0YXR1cyAlYyIKIG1zZ3N0ciAiZGlmZiBzdGF0dXMgaW5lc3BlcmFkbyAlYyIKIAotIzogYnVpbHRpbi9hZGQuYzo4OCBidWlsdGluL2NvbW1pdC5jOjI4NAorIzogYnVpbHRpbi9hZGQuYzo5MyBidWlsdGluL2NvbW1pdC5jOjI4OAogbXNnaWQgInVwZGF0aW5nIGZpbGVzIGZhaWxlZCIKIG1zZ3N0ciAiZmFsbMOzIGxhIGFjdHVhbGl6YWNpw7NuIGRlIGNhcnBldGFzIgogCi0jOiBidWlsdGluL2FkZC5jOjk4CisjOiBidWlsdGluL2FkZC5jOjEwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZW1vdmUgJyVzJ1xuIgogbXNnc3RyICJlbGltaW5hciAnJXMnXG4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MTczCisjOiBidWlsdGluL2FkZC5jOjE3OAogbXNnaWQgIlVuc3RhZ2VkIGNoYW5nZXMgYWZ0ZXIgcmVmcmVzaGluZyB0aGUgaW5kZXg6IgogbXNnc3RyICJDYW1iaW9zIGZ1ZXJhIGRlbCDDoXJlYSBkZSBzdGFnZSB0cmFzIHJlZnJlc2NhciBlbCDDrW5kaWNlOiIKIAotIzogYnVpbHRpbi9hZGQuYzoyMzMgYnVpbHRpbi9yZXYtcGFyc2UuYzo4OTUKKyM6IGJ1aWx0aW4vYWRkLmM6MjY2IGJ1aWx0aW4vcmV2LXBhcnNlLmM6ODk5CiBtc2dpZCAiQ291bGQgbm90IHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICJObyBzZSBwdWRvIGxlZXIgZWwgw61uZGljZSIKIAotIzogYnVpbHRpbi9hZGQuYzoyNDQKKyM6IGJ1aWx0aW4vYWRkLmM6Mjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmcuIgogbXNnc3RyICJObyBzZSBwdWRvIGFicmlyICclcycgcGFyYSBlc2NyaXR1cmEuIgogCi0jOiBidWlsdGluL2FkZC5jOjI0OAorIzogYnVpbHRpbi9hZGQuYzoyODEKIG1zZ2lkICJDb3VsZCBub3Qgd3JpdGUgcGF0Y2giCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIGVzY3JpYmlyIGVsIHBhcmNoZSIKIAotIzogYnVpbHRpbi9hZGQuYzoyNTEKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg0CiBtc2dpZCAiZWRpdGluZyBwYXRjaCBmYWlsZWQiCiBtc2dzdHIgImZhbGzDsyBsYSBlZGljacOzbiBkZWwgcGFyY2hlIgogCi0jOiBidWlsdGluL2FkZC5jOjI1NAorIzogYnVpbHRpbi9hZGQuYzoyODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHN0YXQgJyVzJyIKIG1zZ3N0ciAiTm8gc2UgcHVkbyBkZWZpbmlyICclcyciCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjU2CisjOiBidWlsdGluL2FkZC5jOjI4OQogbXNnaWQgIkVtcHR5IHBhdGNoLiBBYm9ydGVkLiIKIG1zZ3N0ciAiUGFyY2hlIHZhY8Otby4gQWJvcnRhZG8uIgogCi0jOiBidWlsdGluL2FkZC5jOjI2MQorIzogYnVpbHRpbi9hZGQuYzoyOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICclcyciCiBtc2dzdHIgIk5vIHNlIHB1ZG8gYXBsaWNhciAnJXMnIgogCi0jOiBidWlsdGluL2FkZC5jOjI2OQorIzogYnVpbHRpbi9hZGQuYzozMDIKIG1zZ2lkICJUaGUgZm9sbG93aW5nIHBhdGhzIGFyZSBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCiBtc2dzdHIgIiIKICJMYXMgc2lndWllbnRlcyBydXRhcyBzb24gaWdub3JhZGFzIHBvciB1bm8gZGUgdHVzIGFyY2hpdm9zIC5naXRpZ25vcmU6XG4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjg5IGJ1aWx0aW4vY2xlYW4uYzo5MDcgYnVpbHRpbi9mZXRjaC5jOjEzNyBidWlsdGluL212LmM6MTIzCi0jOiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU2IGJ1aWx0aW4vcHVsbC5jOjIxMyBidWlsdGluL3B1c2guYzo1NTcKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM0NSBidWlsdGluL3JtLmM6MjQwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY1CisjOiBidWlsdGluL2FkZC5jOjMyMiBidWlsdGluL2NsZWFuLmM6OTEwIGJ1aWx0aW4vZmV0Y2guYzoxNjMgYnVpbHRpbi9tdi5jOjEyNAorIzogYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1NiBidWlsdGluL3B1bGwuYzoyMDMgYnVpbHRpbi9wdXNoLmM6NTQ4CisjOiBidWlsdGluL3JlbW90ZS5jOjE0MjEgYnVpbHRpbi9ybS5jOjI0MiBidWlsdGluL3NlbmQtcGFjay5jOjE2NQogbXNnaWQgImRyeSBydW4iCiBtc2dzdHIgImRyeSBydW4gKCBlamVjdWNpw7NuIGVuIHNlY28pIgogCi0jOiBidWlsdGluL2FkZC5jOjI5MgorIzogYnVpbHRpbi9hZGQuYzozMjUKIG1zZ2lkICJpbnRlcmFjdGl2ZSBwaWNraW5nIgogbXNnc3RyICJzZWxlY2Npw7NuIGludGVyYWN0aXZhIgogCi0jOiBidWlsdGluL2FkZC5jOjI5MyBidWlsdGluL2NoZWNrb3V0LmM6MTI1OCBidWlsdGluL3Jlc2V0LmM6MzA1CisjOiBidWlsdGluL2FkZC5jOjMyNiBidWlsdGluL2NoZWNrb3V0LmM6MTUxMSBidWlsdGluL3Jlc2V0LmM6MzA3CiBtc2dpZCAic2VsZWN0IGh1bmtzIGludGVyYWN0aXZlbHkiCiBtc2dzdHIgImVsZWdpciBodW5rcyBkZSBmb3JtYSBpbnRlcmFjdGl2YSIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTQKKyM6IGJ1aWx0aW4vYWRkLmM6MzI3CiBtc2dpZCAiZWRpdCBjdXJyZW50IGRpZmYgYW5kIGFwcGx5IgogbXNnc3RyICJlZGl0YXIgZGlmZiBhY3R1YWwgeSBhcGxpY2FyIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NQorIzogYnVpbHRpbi9hZGQuYzozMjgKIG1zZ2lkICJhbGxvdyBhZGRpbmcgb3RoZXJ3aXNlIGlnbm9yZWQgZmlsZXMiCiBtc2dzdHIgInBlcm1pdGlyIGFncmVnYXIgY2FzbyBjb250cmFyaW8gaWdub3JhciBhcmNoaXZvcyIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTYKKyM6IGJ1aWx0aW4vYWRkLmM6MzI5CiBtc2dpZCAidXBkYXRlIHRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgImFjdHVhbGl6YWRvIGxhcyBjYXJwZXRhcyByYXN0cmVhZGFzIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NworIzogYnVpbHRpbi9hZGQuYzozMzAKIG1zZ2lkICJyZW5vcm1hbGl6ZSBFT0wgb2YgdHJhY2tlZCBmaWxlcyAoaW1wbGllcyAtdSkiCiBtc2dzdHIgInJlbm9ybWFsaXphciBFT0wgZGUgbG9zIGFyY2hpdm9zIHJhc3RyZWFkb3MgKGltcGxpY2EgLXUpIgogCi0jOiBidWlsdGluL2FkZC5jOjI5OAorIzogYnVpbHRpbi9hZGQuYzozMzEKIG1zZ2lkICJyZWNvcmQgb25seSB0aGUgZmFjdCB0aGF0IHRoZSBwYXRoIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCiBtc2dzdHIgImdyYWJhciBzb2xvIGVsIGhlY2hvIGRlIHF1ZSBsYSBydXRhIHNlcsOhIGFncmVnYWRhIGRlc3B1w6lzIgogCi0jOiBidWlsdGluL2FkZC5jOjI5OQorIzogYnVpbHRpbi9hZGQuYzozMzIKIG1zZ2lkICJhZGQgY2hhbmdlcyBmcm9tIGFsbCB0cmFja2VkIGFuZCB1bnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgImFncmVnYXIgbG9zIGNhbWJpb3MgZGUgdG9kYXMgbGFzIGNhcnBldGFzIGNvbiB5IHNpbiBzZWd1aW1pZW50byIKIAotIzogYnVpbHRpbi9hZGQuYzozMDIKKyM6IGJ1aWx0aW4vYWRkLmM6MzM1CiBtc2dpZCAiaWdub3JlIHBhdGhzIHJlbW92ZWQgaW4gdGhlIHdvcmtpbmcgdHJlZSAoc2FtZSBhcyAtLW5vLWFsbCkiCi1tc2dzdHIgImlnbm9yYXIgcnV0YXMgcmVtb3ZpZGFzIGVuIGVsIMOhcmJvbCBkZSB0cmFiYWpvIChsbyBtaXNtbyBxdWUgLS1uby1hbGwpIgorbXNnc3RyICIiCisiaWdub3JhciBydXRhcyBlbGltaW5hZGFzIGVuIGVsIMOhcmJvbCBkZSB0cmFiYWpvIChsbyBtaXNtbyBxdWUgLS1uby1hbGwpIgogCi0jOiBidWlsdGluL2FkZC5jOjMwNAorIzogYnVpbHRpbi9hZGQuYzozMzcKIG1zZ2lkICJkb24ndCBhZGQsIG9ubHkgcmVmcmVzaCB0aGUgaW5kZXgiCiBtc2dzdHIgIm5vIGFncmVnYXIsIHNvbG8gYWN0dWFsaXphciBlbCDDrW5kaWNlIgogCi0jOiBidWlsdGluL2FkZC5jOjMwNQorIzogYnVpbHRpbi9hZGQuYzozMzgKIG1zZ2lkICJqdXN0IHNraXAgZmlsZXMgd2hpY2ggY2Fubm90IGJlIGFkZGVkIGJlY2F1c2Ugb2YgZXJyb3JzIgogbXNnc3RyICJzYWx0YXIgbGFzIGNhcnBldGFzIHF1ZSBubyBwdWVkZW4gc2VyIGFncmVnYWRhcyBhIGNhdXNhIGRlIGVycm9yZXMiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzA2CisjOiBidWlsdGluL2FkZC5jOjMzOQogbXNnaWQgImNoZWNrIGlmIC0gZXZlbiBtaXNzaW5nIC0gZmlsZXMgYXJlIGlnbm9yZWQgaW4gZHJ5IHJ1biIKIG1zZ3N0ciAiY29tcHJvYmFyIHNpIC0gaW5jbHVzbyBsb3MgYXJjaGl2b3MgcXVlIGZhbHRhbiAtIHNlIGlnbm9yYW4gZW4gZHJ5IHJ1biIKIAotIzogYnVpbHRpbi9hZGQuYzozMDggYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTAKKyM6IGJ1aWx0aW4vYWRkLmM6MzQxIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwNAogbXNnaWQgIm92ZXJyaWRlIHRoZSBleGVjdXRhYmxlIGJpdCBvZiB0aGUgbGlzdGVkIGZpbGVzIgogbXNnc3RyICJzb2JyZXNjcmliaXIgZWwgYml0IGVqZWN1dGFibGUgZGUgbG9zIGFyY2hpdm9zIGxpc3RhZG9zIgogCi0jOiBidWlsdGluL2FkZC5jOjMxMAorIzogYnVpbHRpbi9hZGQuYzozNDMKIG1zZ2lkICJ3YXJuIHdoZW4gYWRkaW5nIGFuIGVtYmVkZGVkIHJlcG9zaXRvcnkiCiBtc2dzdHIgImF2aXNhciBjdWFuZG8gc2UgYWdyZWdhIHVuIHJlcG9zaXRvcmlvIGluY3J1c3RhZG8iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzI1CisjOiBidWlsdGluL2FkZC5jOjM0NQorbXNnaWQgImJhY2tlbmQgZm9yIGBnaXQgc3Rhc2ggLXBgIgorbXNnc3RyICJiYWNrZW5kIHBhcmEgYGdpdCBzdGFzaCAtcGAiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UndmUgYWRkZWQgYW5vdGhlciBnaXQgcmVwb3NpdG9yeSBpbnNpZGUgeW91ciBjdXJyZW50IHJlcG9zaXRvcnkuXG4iCkBAIC03MzIwLDE5MiArOTUyMSwyMTIgQEAKICJTZSBoYSBhZ3JlZ2FkbyBvdHJvIHJlcG9zaXRvcmlvIGRlIGdpdCBkZW50cm8gZGVsIHJlcG9zaXRvcmlvIGFjdHVhbC5cbiIKICJDbG9uZXMgZGVsIHJlcG9zaXRvcmlvIGV4dGVyaW9yIG5vIHRlbmRyw6FuIGVsIGNvbnRlbmlkbyBkZWwgXG4iCiAicmVwb3NpdG9yaW8gZW1iZWJpZG8geSBubyBzYWJyw6FuIGNvbW8gb2J0ZW5lcmxhLlxuIgotIlNpIHF1ZXLDrWEgYWdyZWdhciB1biBzdWJtw7NkdWxvLCB1c2U6XG4iCisiU2kgcXVlcsOtYXMgYWdyZWdhciB1biBzdWJtw7NkdWxvLCB1c2E6XG4iCiAiXG4iCiAiXHRnaXQgc3VibW9kdWxlIGFkZCA8dXJsPiAlc1xuIgogIlxuIgotIlNpIHNlIGFncmVnbyBlc3RhIHJ1dGEgcG9yIGVycm9yLCBwdWVkZSBlbGltaW5hciBkZXNkZSBlbCDDrW5kaWNlIFxuIgorIlNpIHNlIGFncmVnbyBlc3RhIHJ1dGEgcG9yIGVycm9yLCBwdWVkZXMgZWxpbWluYXIgZGVzZGUgZWwgw61uZGljZSBcbiIKICJ1c2FuZG86XG4iCiAiXG4iCiAiXHRnaXQgcm0gLS1jYWNoZWQgJXNcbiIKICJcbiIKLSJWZWEgXCJnaXQgaGVscCBzdWJtb2R1bGVcIiBwYXJhIG1hcyBpbmZvcm1hY2nDs24uIgorIlZlYSBcImdpdCBoZWxwIHN1Ym1vZHVsZVwiIHBhcmEgbcOhcyBpbmZvcm1hY2nDs24uIgogCi0jOiBidWlsdGluL2FkZC5jOjM1MworIzogYnVpbHRpbi9hZGQuYzozOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkaW5nIGVtYmVkZGVkIGdpdCByZXBvc2l0b3J5OiAlcyIKIG1zZ3N0ciAiYWdyZWdhbmRvIHJlcG9zaXRvcmlvIGVtYmViaWRvOiAlcyIKIAotIzogYnVpbHRpbi9hZGQuYzozNzEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgdGhlbS5cbiIKLW1zZ3N0ciAiVXNlIC1mIHNpIHJlYWxtZW50ZSBxdWllcmUgYWdyZWdhcmxvcy5cbiIKKyM6IGJ1aWx0aW4vYWRkLmM6NDEwCittc2dpZCAiIgorIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIHRoZW0uXG4iCisiVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5IHJ1bm5pbmdcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZElnbm9yZWRGaWxlIGZhbHNlXCIiCittc2dzdHIgIiIKKyJVc2EgLWYgc2kgcmVhbG1lbnRlIHF1aWVyZXMgYWdyZWdhcmxvcy5cbiIKKyJEZXNhY3RpdmEgZXN0ZSBtZW5zYWplIGVqZWN1dGFuZG9cbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZElnbm9yZWRGaWxlIGZhbHNlXCIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mzc5CisjOiBidWlsdGluL2FkZC5jOjQxOQogbXNnaWQgImFkZGluZyBmaWxlcyBmYWlsZWQiCiBtc2dzdHIgImZhbGzDsyBhbCBhZ3JlZ2FyIGFyY2hpdm9zIgogCi0jOiBidWlsdGluL2FkZC5jOjQxNworIzogYnVpbHRpbi9hZGQuYzo0NDcgYnVpbHRpbi9jb21taXQuYzozNDgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWludGVyYWN0aXZlLy0tcGF0Y2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGVzIGluY29tcGF0aWJsZSBjb24gLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIgorCisjOiBidWlsdGluL2FkZC5jOjQ2NAorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tZWRpdCIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgZXMgaW5jb21wYXRpYmxlIGNvbiAtLWVkaXQiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDc2CiBtc2dpZCAiLUEgYW5kIC11IGFyZSBtdXR1YWxseSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi1BIHkgLXUgc29uIG11dHVhbWVudGUgaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9hZGQuYzo0MjQKKyM6IGJ1aWx0aW4vYWRkLmM6NDc5CiBtc2dpZCAiT3B0aW9uIC0taWdub3JlLW1pc3NpbmcgY2FuIG9ubHkgYmUgdXNlZCB0b2dldGhlciB3aXRoIC0tZHJ5LXJ1biIKIG1zZ3N0ciAiT3BjacOzbiAtLWlnbm9yZS1taXNzaW5nIHNvbG8gcHVlZGUgc2VyIHVzYWRhIGp1bnRvIGEgLS1kcnktcnVuIgogCi0jOiBidWlsdGluL2FkZC5jOjQyOAorIzogYnVpbHRpbi9hZGQuYzo0ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiLS1jaG1vZCBwYXJhbSAnJXMnIG11c3QgYmUgZWl0aGVyIC14IG9yICt4IgogbXNnc3RyICJFbCBwYXLDoW1ldHJvICclcycgcGFyYSAtLWNobW9kIGRlYmUgc2VyIC14IMOzICt4IgogCi0jOiBidWlsdGluL2FkZC5jOjQ0MworIzogYnVpbHRpbi9hZGQuYzo1MDEgYnVpbHRpbi9jaGVja291dC5jOjE2NzUgYnVpbHRpbi9jb21taXQuYzozNTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMjcgYnVpbHRpbi9ybS5jOjI3MiBidWlsdGluL3N0YXNoLmM6MTUwOQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgZXMgaW5jb21wYXRpYmxlIGNvbiBhcmd1bWVudG9zIGRlIHBhdGhzcGVjIgorCisjOiBidWlsdGluL2FkZC5jOjUwOCBidWlsdGluL2NoZWNrb3V0LmM6MTY4NyBidWlsdGluL2NvbW1pdC5jOjM2MAorIzogYnVpbHRpbi9yZXNldC5jOjMzMyBidWlsdGluL3JtLmM6Mjc4IGJ1aWx0aW4vc3Rhc2guYzoxNTE1Cittc2dpZCAiLS1wYXRoc3BlYy1maWxlLW51bCByZXF1aXJlcyAtLXBhdGhzcGVjLWZyb20tZmlsZSIKK21zZ3N0ciAiLS1wYXRoc3BlYy1maWxlLW51bCByZXF1aWVyZSAtLXBhdGhzcGVjLWZyb20tZmlsZSIKKworIzogYnVpbHRpbi9hZGQuYzo1MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90aGluZyBzcGVjaWZpZWQsIG5vdGhpbmcgYWRkZWQuXG4iCiBtc2dzdHIgIk5hZGEgZXNwZWNpZmljYWRvLCBuYWRhIGFncmVnYWRvLlxuIgogCi0jOiBidWlsdGluL2FkZC5jOjQ0NAotIywgYy1mb3JtYXQKLW1zZ2lkICJNYXliZSB5b3Ugd2FudGVkIHRvIHNheSAnZ2l0IGFkZCAuJz9cbiIKLW1zZ3N0ciAiVGFsIHZleiBxdWlzbyBkZWNpciAnZ2l0IGFkZCAuJz9cbiIKKyM6IGJ1aWx0aW4vYWRkLmM6NTE0Cittc2dpZCAiIgorIk1heWJlIHlvdSB3YW50ZWQgdG8gc2F5ICdnaXQgYWRkIC4nP1xuIgorIlR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieSBydW5uaW5nXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRFbXB0eVBhdGhzcGVjIGZhbHNlXCIiCittc2dzdHIgIiIKKyLCv1RhbCB2ZXogcXVpc2lzdGUgZGVjaXIgJ2dpdCBhZGQuJz9cbiIKKyJEZXNhY3RpdmEgZXN0ZSBtZW5zYWdlIGVqZWN1dGFuZG9cbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZEVtcHR5UGF0aHNwZWMgZmFsc2VcIiIKIAotIzogYnVpbHRpbi9hbS5jOjM2MworIzogYnVpbHRpbi9hbS5jOjM1MgogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBhdXRob3Igc2NyaXB0IgogbXNnc3RyICJubyBzZSBwdWRvIGFuYWxpemFyIGVsIHNjcmlwdCBkZWwgYXV0b3IiCiAKLSM6IGJ1aWx0aW4vYW0uYzo0NDcKKyM6IGJ1aWx0aW4vYW0uYzo0MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyB3YXMgZGVsZXRlZCBieSB0aGUgYXBwbHlwYXRjaC1tc2cgaG9vayIKIG1zZ3N0ciAiJyVzJyBmdWUgYm9ycmFkbyBwb3IgZWwgaG9vayBkZSBhcHBseXBhdGNoLW1zZyIKIAotIzogYnVpbHRpbi9hbS5jOjQ4OAorIzogYnVpbHRpbi9hbS5jOjQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJNYWxmb3JtZWQgaW5wdXQgbGluZTogJyVzJy4iCiBtc2dzdHIgIkzDrW5lYSBtYWwgZm9ybWFkYTogJyVzJy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzo1MjUKKyM6IGJ1aWx0aW4vYW0uYzo1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGNvcHkgbm90ZXMgZnJvbSAnJXMnIHRvICclcyciCiBtc2dzdHIgIkZhbGzDsyBhbCBjb3BpYXIgbm90YXMgZGUgJyVzJyBhICclcyciCiAKLSM6IGJ1aWx0aW4vYW0uYzo1NTEKKyM6IGJ1aWx0aW4vYW0uYzo1NDIKIG1zZ2lkICJmc2VlayBmYWlsZWQiCiBtc2dzdHIgImZhbGwgZGUgZnNlZWsiCiAKLSM6IGJ1aWx0aW4vYW0uYzo3MzkKKyM6IGJ1aWx0aW4vYW0uYzo3MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHBhdGNoICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gYW5hbGl6YXIgZWwgcGFyY2hlICclcyciCiAKLSM6IGJ1aWx0aW4vYW0uYzo4MDQKKyM6IGJ1aWx0aW4vYW0uYzo3OTUKIG1zZ2lkICJPbmx5IG9uZSBTdEdJVCBwYXRjaCBzZXJpZXMgY2FuIGJlIGFwcGxpZWQgYXQgb25jZSIKIG1zZ3N0ciAiU29sbyB1biBwYXJjaGUgU3RHSVQgcHVlZGUgc2VyIGFwbGljYWRvIGRlIHVuYSB2ZXoiCiAKLSM6IGJ1aWx0aW4vYW0uYzo4NTIKKyM6IGJ1aWx0aW4vYW0uYzo4NDMKIG1zZ2lkICJpbnZhbGlkIHRpbWVzdGFtcCIKIG1zZ3N0ciAidGltZXN0YW1wIGludsOhbGlkbyIKIAotIzogYnVpbHRpbi9hbS5jOjg1NyBidWlsdGluL2FtLmM6ODY5CisjOiBidWlsdGluL2FtLmM6ODQ4IGJ1aWx0aW4vYW0uYzo4NjAKIG1zZ2lkICJpbnZhbGlkIERhdGUgbGluZSIKIG1zZ3N0ciAibMOtbmVhIERhdGUgaW52w6FsaWRhIgogCi0jOiBidWlsdGluL2FtLmM6ODY0CisjOiBidWlsdGluL2FtLmM6ODU1CiBtc2dpZCAiaW52YWxpZCB0aW1lem9uZSBvZmZzZXQiCiBtc2dzdHIgIm9mZnNldCBkZSB6b25hIGhvcmFyaWEgaW52w6FsaWRvIgogCi0jOiBidWlsdGluL2FtLmM6OTU3CisjOiBidWlsdGluL2FtLmM6OTQ4CiBtc2dpZCAiUGF0Y2ggZm9ybWF0IGRldGVjdGlvbiBmYWlsZWQuIgogbXNnc3RyICJGYWxsw7MgYWwgZGV0ZWN0YXIgZWwgZm9ybWF0byBkZWwgcGFyY2hlLiIKIAotIzogYnVpbHRpbi9hbS5jOjk2MiBidWlsdGluL2Nsb25lLmM6NDA4CisjOiBidWlsdGluL2FtLmM6OTUzIGJ1aWx0aW4vY2xvbmUuYzo0MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGNyZWFyIGVsIGRpcmVjdG9yaW8gJyVzJyIKIAotIzogYnVpbHRpbi9hbS5jOjk2NworIzogYnVpbHRpbi9hbS5jOjk1OAogbXNnaWQgIkZhaWxlZCB0byBzcGxpdCBwYXRjaGVzLiIKIG1zZ3N0ciAiRmFsbMOzIGFsIGRpdmlkaXIgcGFyY2hlcy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMDk3IGJ1aWx0aW4vY29tbWl0LmM6MzY5Ci1tc2dpZCAidW5hYmxlIHRvIHdyaXRlIGluZGV4IGZpbGUiCi1tc2dzdHIgIm5vIGVzIHBvc2libGUgZXNjcmliaXIgZW4gZWwgYXJjaGl2byDDrW5kaWNlIgotCi0jOiBidWlsdGluL2FtLmM6MTExMQorIzogYnVpbHRpbi9hbS5jOjEwODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiV2hlbiB5b3UgaGF2ZSByZXNvbHZlZCB0aGlzIHByb2JsZW0sIHJ1biBcIiVzIC0tY29udGludWVcIi4iCi1tc2dzdHIgIkN1YW5kbyBoYXlhIHJlc3VlbHRvIGVzdGUgcHJvYmxlbWEsIGVqZWN1dGUgXCIlcyAtLWNvbnRpbnVlXCIuIgorbXNnc3RyICJDdWFuZG8gaGF5YXMgcmVzdWVsdG8gZXN0ZSBwcm9ibGVtYSwgZWplY3V0YSBcIiVzIC0tY29udGludWVcIi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMTEyCisjOiBidWlsdGluL2FtLmM6MTA5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJJZiB5b3UgcHJlZmVyIHRvIHNraXAgdGhpcyBwYXRjaCwgcnVuIFwiJXMgLS1za2lwXCIgaW5zdGVhZC4iCiBtc2dzdHIgIlNpIHByZWZpZXJlcyBzYWx0YXIgZXN0ZSBwYXJjaGUsIGVqZWN1dGEgXCIlcyAtLXNraXBcIi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMTEzCisjOiBidWlsdGluL2FtLmM6MTA5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJUbyByZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIHN0b3AgcGF0Y2hpbmcsIHJ1biBcIiVzIC0tYWJvcnRcIi4iCiBtc2dzdHIgIiIKICJQYXJhIHJlc3RhdXJhciBsYSByYW1hIG9yaWdpbmFsIHkgZGV0ZW5lciBlbCBwYXJjaGFkbywgZWplY3V0YXIgXCIlcyAtLWFib3J0IgogIlwiLiIKIAotIzogYnVpbHRpbi9hbS5jOjExOTYKKyM6IGJ1aWx0aW4vYW0uYzoxMTc0CiBtc2dpZCAiUGF0Y2ggc2VudCB3aXRoIGZvcm1hdD1mbG93ZWQ7IHNwYWNlIGF0IHRoZSBlbmQgb2YgbGluZXMgbWlnaHQgYmUgbG9zdC4iCiBtc2dzdHIgIiIKICJQYXJjaGUgbWFuZGFkbyBjb24gZm9ybWF0bz1mbG93ZWQ7IGVzcGFjaW9zIGFsIGZpbmFsIGRlIGxhcyBsw61uZWFzIHRhbCB2ZXogIgogImRlc2FwYXJlemNhbi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMjI0CisjOiBidWlsdGluL2FtLmM6MTIwMgogbXNnaWQgIlBhdGNoIGlzIGVtcHR5LiIKIG1zZ3N0ciAiRWwgcGFyY2hlIGVzdMOhIHZhY8Otby4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMjkwCisjOiBidWlsdGluL2FtLmM6MTI2NworIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGF1dGhvciBsaW5lIGluIGNvbW1pdCAlcyIKK21zZ3N0ciAiZmFsdGEgbMOtbmVhIGF1dG9yIGVuIGNvbW1pdCAlcyIKKworIzogYnVpbHRpbi9hbS5jOjEyNzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBpZGVudCBsaW5lOiAlLipzIgogbXNnc3RyICJzYW5ncsOtYSBubyB2w6FsaWRhOiAlLipzIgogCi0jOiBidWlsdGluL2FtLmM6MTMxMgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0ICVzIgotbXNnc3RyICJubyBlcyBwb3NpYmxlIGFuYWxpemFyIGVsIGNvbW1pdCAlcyIKLQotIzogYnVpbHRpbi9hbS5jOjE1MDgKKyM6IGJ1aWx0aW4vYW0uYzoxNDg5CiBtc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyBuZWNlc3NhcnkgYmxvYnMgdG8gZmFsbCBiYWNrIG9uIDMtd2F5IG1lcmdlLiIKIG1zZ3N0ciAiIgogIlJlcG9zaXRvcmlvIGNhcmVjZSBkZSBsb3MgYmxvYnMgbmVjZXNhcmlvcyBwYXJhIHJldHJvY2VkZXIgZW4gdW5hIGZ1c2nDs24gZGUgIgogIjMtdsOtYXMuIgogCi0jOiBidWlsdGluL2FtLmM6MTUxMAorIzogYnVpbHRpbi9hbS5jOjE0OTEKIG1zZ2lkICJVc2luZyBpbmRleCBpbmZvIHRvIHJlY29uc3RydWN0IGEgYmFzZSB0cmVlLi4uIgogbXNnc3RyICJVc2FuZG8gbGEgaW5mb3JtYWNpw7NuIGRlbCDDrW5kaWNlIHBhcmEgcmVjb25zdHJ1aXIgdW4gw6FyYm9sIGJhc2UuLi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTI5CisjOiBidWlsdGluL2FtLmM6MTUxMAogbXNnaWQgIiIKICJEaWQgeW91IGhhbmQgZWRpdCB5b3VyIHBhdGNoP1xuIgogIkl0IGRvZXMgbm90IGFwcGx5IHRvIGJsb2JzIHJlY29yZGVkIGluIGl0cyBpbmRleC4iCiBtc2dzdHIgIiIKLSJFZGl0YXN0ZSBlbCBwYXJjaGUgYSBtYW5vP1xuIgorIsK/RWRpdGFzdGUgZWwgcGFyY2hlIGEgbWFubz9cbiIKICJObyBhcGxpY2EgYSBibG9icyBndWFyZGFkb3MgZW4gc3Ugw61uZGljZS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTM1CisjOiBidWlsdGluL2FtLmM6MTUxNgogbXNnaWQgIkZhbGxpbmcgYmFjayB0byBwYXRjaGluZyBiYXNlIGFuZCAzLXdheSBtZXJnZS4uLiIKIG1zZ3N0ciAiUmV0cm9jZWRpZW5kbyBwYXJhIHBhcmNoYXIgYmFzZSB5IGZ1c2nDs24gZGUgMy12w61hcy4uLiIKIAotIzogYnVpbHRpbi9hbS5jOjE1NjEKKyM6IGJ1aWx0aW4vYW0uYzoxNTQyCiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIGluIHRoZSBjaGFuZ2VzLiIKIG1zZ3N0ciAiRmFsbMOzIGFsIGZ1c2lvbmFyIGVuIGxvcyBjYW1iaW9zLiIKIAotIzogYnVpbHRpbi9hbS5jOjE1OTMKKyM6IGJ1aWx0aW4vYW0uYzoxNTc0CiBtc2dpZCAiYXBwbHlpbmcgdG8gYW4gZW1wdHkgaGlzdG9yeSIKIG1zZ3N0ciAiYXBsaWNhbmRvIGEgdW4gaGlzdG9yaWFsIHZhY8OtbyIKIAotIzogYnVpbHRpbi9hbS5jOjE2MzkgYnVpbHRpbi9hbS5jOjE2NDMKKyM6IGJ1aWx0aW4vYW0uYzoxNjIxIGJ1aWx0aW4vYW0uYzoxNjI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZXN1bWU6ICVzIGRvZXMgbm90IGV4aXN0LiIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgY29udGludWFyOiAlcyBubyBleGlzdGUuIgogCi0jOiBidWlsdGluL2FtLmM6MTY1OQotbXNnaWQgImNhbm5vdCBiZSBpbnRlcmFjdGl2ZSB3aXRob3V0IHN0ZGluIGNvbm5lY3RlZCB0byBhIHRlcm1pbmFsLiIKLW1zZ3N0ciAibm8gc2UgcHVlZGUgc2VyIGludGVyYWN0aXZvIHNpbiBzdGRpbiBjb25lY3RhZG8gYSB1biB0ZXJtaW5hbC4iCi0KLSM6IGJ1aWx0aW4vYW0uYzoxNjY0CisjOiBidWlsdGluL2FtLmM6MTY0MwogbXNnaWQgIkNvbW1pdCBCb2R5IGlzOiIKIG1zZ3N0ciAiQ3VlcnBvIGRlIGNvbW1pdCBlczoiCiAKQEAgLTc1MTMsNjcgKzk3MzQsNzIgQEAKICMuIGluIHlvdXIgdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaAogIy4gaW5wdXQgYXQgdGhpcyBwb2ludC4KICMuCi0jOiBidWlsdGluL2FtLmM6MTY3NAorIzogYnVpbHRpbi9hbS5jOjE2NTMKKyMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbHk/IFt5XWVzL1tuXW8vW2VdZGl0L1t2XWlldyBwYXRjaC9bYV1jY2VwdCBhbGw6ICIKLW1zZ3N0ciAiQXBsaWNhcj8gW3ldZXMvW25dby9bZV1kaXQvW3ZdaWV3IHBhdGNoL1thXWNjZXB0IGFsbDogIgorbXNnc3RyICLCv0FwbGljYXI/IFt5XWVzL1tuXW8vW2VdZGl0L1t2XWlldyBwYXRjaC9bYV1jY2VwdCBhbGw6ICIKIAotIzogYnVpbHRpbi9hbS5jOjE3MjQKKyM6IGJ1aWx0aW4vYW0uYzoxNzAwIGJ1aWx0aW4vY29tbWl0LmM6Mzk4Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGluZGV4IGZpbGUiCittc2dzdHIgIm5vIGVzIHBvc2libGUgZXNjcmliaXIgZW4gZWwgYXJjaGl2byDDrW5kaWNlIgorCisjOiBidWlsdGluL2FtLmM6MTcwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJEaXJ0eSBpbmRleDogY2Fubm90IGFwcGx5IHBhdGNoZXMgKGRpcnR5OiAlcykiCiBtc2dzdHIgIsONbmRpY2Ugc3VjaW86IG5vIHNlIHB1ZWRlIGFwbGljYXIgcGFyY2hlcyAoc3VjaW86ICVzKSIKIAotIzogYnVpbHRpbi9hbS5jOjE3NjQgYnVpbHRpbi9hbS5jOjE4MzIKKyM6IGJ1aWx0aW4vYW0uYzoxNzQ0IGJ1aWx0aW4vYW0uYzoxODEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGx5aW5nOiAlLipzIgogbXNnc3RyICJBcGxpY2FuZG86ICUuKnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzgxCisjOiBidWlsdGluL2FtLmM6MTc2MQogbXNnaWQgIk5vIGNoYW5nZXMgLS0gUGF0Y2ggYWxyZWFkeSBhcHBsaWVkLiIKIG1zZ3N0ciAiU2luIGNhbWJpb3MgLS0gcGFyY2hlIHlhIGFwbGljYWRvLiIKIAotIzogYnVpbHRpbi9hbS5jOjE3ODcKKyM6IGJ1aWx0aW4vYW0uYzoxNzY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlBhdGNoIGZhaWxlZCBhdCAlcyAlLipzIgogbXNnc3RyICJFbCBwYXJjaGUgZmFsbMOzIGVuICVzICUuKnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzkxCi1tc2dpZCAiVXNlICdnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2gnIHRvIHNlZSB0aGUgZmFpbGVkIHBhdGNoIgotbXNnc3RyICJVc2UgJ2dpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaCcgcGFyYSB2ZXIgZWwgcGFyY2hlIGZhbGxpZG8iCisjOiBidWlsdGluL2FtLmM6MTc3MQorbXNnaWQgIlVzZSAnZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoPWRpZmYnIHRvIHNlZSB0aGUgZmFpbGVkIHBhdGNoIgorbXNnc3RyICJVc2UgJ2dpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaD1kaWZmJyBwYXJhIHZlciBlbCBwYXJjaGUgZmFsbGlkbyIKIAotIzogYnVpbHRpbi9hbS5jOjE4MzUKKyM6IGJ1aWx0aW4vYW0uYzoxODE1CiBtc2dpZCAiIgogIk5vIGNoYW5nZXMgLSBkaWQgeW91IGZvcmdldCB0byB1c2UgJ2dpdCBhZGQnP1xuIgogIklmIHRoZXJlIGlzIG5vdGhpbmcgbGVmdCB0byBzdGFnZSwgY2hhbmNlcyBhcmUgdGhhdCBzb21ldGhpbmcgZWxzZVxuIgogImFscmVhZHkgaW50cm9kdWNlZCB0aGUgc2FtZSBjaGFuZ2VzOyB5b3UgbWlnaHQgd2FudCB0byBza2lwIHRoaXMgcGF0Y2guIgogbXNnc3RyICIiCi0iU2luIGNhbWJpb3MgLSBvbHZpZGFzdGUgdXNhciAnZ2l0IGFkZCc/XG4iCisiU2luIGNhbWJpb3MgLSDCv29sdmlkYXN0ZSB1c2FyICdnaXQgYWRkJz9cbiIKICJTaSBubyBoYXkgbmFkYSBlbiBlbCDDoXJlYSBkZSBzdGFnZSwgbGFzIHBvc2liaWxpZGFkIGVzIHF1ZSBhbGdvIG1hc1xuIgogInlhIGhheWEgaW50cm9kdWNpZG8gZWwgbWlzbW8gY2FtYmlvOyB0YWwgdmV6IHF1aWVyYXMgb21pdGlyIGVzdGUgcGFyY2hlLiIKIAotIzogYnVpbHRpbi9hbS5jOjE4NDIKKyM6IGJ1aWx0aW4vYW0uYzoxODIyCiBtc2dpZCAiIgogIllvdSBzdGlsbCBoYXZlIHVubWVyZ2VkIHBhdGhzIGluIHlvdXIgaW5kZXguXG4iCiAiWW91IHNob3VsZCAnZ2l0IGFkZCcgZWFjaCBmaWxlIHdpdGggcmVzb2x2ZWQgY29uZmxpY3RzIHRvIG1hcmsgdGhlbSBhcyAiCiAic3VjaC5cbiIKICJZb3UgbWlnaHQgcnVuIGBnaXQgcm1gIG9uIGEgZmlsZSB0byBhY2NlcHQgXCJkZWxldGVkIGJ5IHRoZW1cIiBmb3IgaXQuIgogbXNnc3RyICIiCi0iVG9kYXbDrWEgdGllbmUgcnV0YXMgc2luIGZ1c2lvbmFyIGVuIHN1IMOtbmRpY2UuXG4iCi0iRGViZSByZWFsaXphciAnZ2l0IGFkZCcgY2FkYSBhcmNoaXZvIGNvbiBjb25mbGljdG9zIHJlc3VlbHRvcyB5IG1hcmNhcmxvcyAiCisiVG9kYXbDrWEgdGllbmVzIHJ1dGFzIHNpbiBmdXNpb25hciBlbiB0dSDDrW5kaWNlLlxuIgorIkRlYmVzIHJlYWxpemFyICdnaXQgYWRkJyBjYWRhIGFyY2hpdm8gY29uIGNvbmZsaWN0b3MgcmVzdWVsdG9zIHkgbWFyY2FybG9zICIKICJjb21vIHRhbC5cbiIKLSJUYWwgdmV6IGVqZWN1dGUgYGdpdCBybWAgZW4gZWwgYXJjaGl2byBwYXJhIGFjZXB0YXIgXCJib3JyYWRvIHBvciBlbGxvc1wiIGVuICIKLSLDqWwuIgorIlNlIHB1ZWRlIGVqZWN1dGFyIGBnaXQgcm1gIGVuIGVsIGFyY2hpdm8gcGFyYSBhY2VwdGFyIFwiYm9ycmFkbyBwb3IgZWxsb3NcIiAiCisiZW4gw6lsLiIKIAotIzogYnVpbHRpbi9hbS5jOjE5NDkgYnVpbHRpbi9hbS5jOjE5NTMgYnVpbHRpbi9hbS5jOjE5NjUgYnVpbHRpbi9yZXNldC5jOjMyOAotIzogYnVpbHRpbi9yZXNldC5jOjMzNgorIzogYnVpbHRpbi9hbS5jOjE5MjkgYnVpbHRpbi9hbS5jOjE5MzMgYnVpbHRpbi9hbS5jOjE5NDUgYnVpbHRpbi9yZXNldC5jOjM0NgorIzogYnVpbHRpbi9yZXNldC5jOjM1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcycuIgogbXNnc3RyICJObyBzZSBwdWRvIGFuYWxpemFyIGVsIG9iamV0byAnJXMnLiIKIAotIzogYnVpbHRpbi9hbS5jOjIwMDEKKyM6IGJ1aWx0aW4vYW0uYzoxOTgxCiBtc2dpZCAiZmFpbGVkIHRvIGNsZWFuIGluZGV4IgogbXNnc3RyICJmYWxsw7MgYWwgbGltcGlhciBlbCDDrW5kaWNlIgogCi0jOiBidWlsdGluL2FtLmM6MjAzNgorIzogYnVpbHRpbi9hbS5jOjIwMjUKIG1zZ2lkICIiCiAiWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFEIHNpbmNlIHRoZSBsYXN0ICdhbScgZmFpbHVyZS5cbiIKICJOb3QgcmV3aW5kaW5nIHRvIE9SSUdfSEVBRCIKQEAgLTc1ODEsMTYxICs5ODA3LDE3MSBAQAogIlBhcmVjZSBoYWJlciBtb3ZpZG8gSEVBRCBkZXNkZSBlbCDDumx0aW1vIGZhbGzDsyAnYW0nLlxuIgogIk5vIHJlYm9iaW5hbmRvIGEgT1JJR19IRUFEIgogCi0jOiBidWlsdGluL2FtLmM6MjEyOQorIzogYnVpbHRpbi9hbS5jOjIxMzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgLS1wYXRjaC1mb3JtYXQ6ICVzIgogbXNnc3RyICJWYWxvciBpbnbDoWxpZG8gcGFyYSAtLXBhdGNoLWZvcm1hdDogJXMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTY1CisjOiBidWlsdGluL2FtLmM6MjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciAtLXNob3ctY3VycmVudC1wYXRjaDogJXMiCittc2dzdHIgIlZhbG9yIGludsOhbGlkbyBwYXJhIC0tc2hvdy1jdXJyZW50LXBhdGNoOiAlcyIKKworIzogYnVpbHRpbi9hbS5jOjIxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMiCittc2dzdHIgIi0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIGVzIGluY29tcGF0aWJsZSBjb24gLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjA3CiBtc2dpZCAiZ2l0IGFtIFs8b3B0aW9ucz5dIFsoPG1ib3g+IHwgPE1haWxkaXI+KS4uLl0iCiBtc2dzdHIgImdpdCBhbSBbPG9wY2lvbmVzPl0gWyg8bWJveD4gfCA8RGlyZWN0b3Jpby1kZS1jb3JyZW8+KS4uLl0iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTY2CisjOiBidWlsdGluL2FtLmM6MjIwOAogbXNnaWQgImdpdCBhbSBbPG9wdGlvbnM+XSAoLS1jb250aW51ZSB8IC0tc2tpcCB8IC0tYWJvcnQpIgogbXNnc3RyICJnaXQgYW0gWzxvcGNpb25lcz5dICgtLWNvbnRpbnVlIHwgLS1za2lwIHwgLS1hYm9ydCkiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTcyCisjOiBidWlsdGluL2FtLmM6MjIxNAogbXNnaWQgInJ1biBpbnRlcmFjdGl2ZWx5IgogbXNnc3RyICJlamVjdXRhciBkZSBtYW5lcmEgaW50ZXJhY3RpdmEiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc0CisjOiBidWlsdGluL2FtLmM6MjIxNgogbXNnaWQgImhpc3RvcmljYWwgb3B0aW9uIC0tIG5vLW9wIgogbXNnc3RyICJvcGNpw7NuIGhpc3TDs3JpY2EgLS0gbm8tb3AiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc2CisjOiBidWlsdGluL2FtLmM6MjIxOAogbXNnaWQgImFsbG93IGZhbGwgYmFjayBvbiAzd2F5IG1lcmdpbmcgaWYgbmVlZGVkIgogbXNnc3RyICJwZXJtaXRpciByZXRyb2Nlc28gZW4gZnVzacOzbiBkZSAzLXbDrWFzIHNpIGVzIG5lY2VzYXJpbyIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzcgYnVpbHRpbi9pbml0LWRiLmM6NDg2IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTgKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA2CisjOiBidWlsdGluL2FtLmM6MjIxOSBidWlsdGluL2luaXQtZGIuYzo0OTQgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1OAorIzogYnVpbHRpbi9yZXBhY2suYzozMDQgYnVpbHRpbi9zdGFzaC5jOjgxMgogbXNnaWQgImJlIHF1aWV0IgogbXNnc3RyICJzZXIgc2lsZW5jaW9zbyIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzkKKyM6IGJ1aWx0aW4vYW0uYzoyMjIxCiBtc2dpZCAiYWRkIGEgU2lnbmVkLW9mZi1ieSBsaW5lIHRvIHRoZSBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAiYWdyZWdhciB1bmEgbMOtbmVhIFwiRmlybWFkby1wb3JcIiBhbCBtZW5zYWplIGRlbCBjb21taXQiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTgyCisjOiBidWlsdGluL2FtLmM6MjIyNAogbXNnaWQgInJlY29kZSBpbnRvIHV0ZjggKGRlZmF1bHQpIgogbXNnc3RyICJyZWNvZGlmaWNhciBlbiB1dGY4IChkZWZhdWx0KSIKIAotIzogYnVpbHRpbi9hbS5jOjIxODQKKyM6IGJ1aWx0aW4vYW0uYzoyMjI2CiBtc2dpZCAicGFzcyAtayBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKIG1zZ3N0ciAicGFzYXIgZmxhZyAtayBhIGdpdC1tYWlsaW5mbyIKIAotIzogYnVpbHRpbi9hbS5jOjIxODYKKyM6IGJ1aWx0aW4vYW0uYzoyMjI4CiBtc2dpZCAicGFzcyAtYiBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKIG1zZ3N0ciAicGFzYXIgZmxhZyAtYiBhIGdpdC1tYWlsaW5mbyIKIAotIzogYnVpbHRpbi9hbS5jOjIxODgKKyM6IGJ1aWx0aW4vYW0uYzoyMjMwCiBtc2dpZCAicGFzcyAtbSBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKIG1zZ3N0ciAicGFzYXIgZmxhZyAtbSBhIGdpdC1tYWlsaW5mbyIKIAotIzogYnVpbHRpbi9hbS5jOjIxOTAKKyM6IGJ1aWx0aW4vYW0uYzoyMjMyCiBtc2dpZCAicGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGZvciBtYm94IGZvcm1hdCIKIG1zZ3N0ciAicGFzYXIgZmxhZyAtLWtlZXAtY3IgYSBnaXQtbWFpbHNwbGl0IHBhcmEgZm9ybWF0byBtYm94IgogCi0jOiBidWlsdGluL2FtLmM6MjE5MworIzogYnVpbHRpbi9hbS5jOjIyMzUKIG1zZ2lkICJkbyBub3QgcGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGluZGVwZW5kZW50IG9mIGFtLmtlZXBjciIKIG1zZ3N0ciAiIgogIm5vIHBhc2FyIGZsYWcgLS1rZWVwLWNyIGEgZ2l0LW1haWxzcGxpdCBpbmRlcGVuZGllbnRlbWVudGUgZGUgYW0ua2VlcGNyIgogCi0jOiBidWlsdGluL2FtLmM6MjE5NgorIzogYnVpbHRpbi9hbS5jOjIyMzgKIG1zZ2lkICJzdHJpcCBldmVyeXRoaW5nIGJlZm9yZSBhIHNjaXNzb3JzIGxpbmUiCiBtc2dzdHIgImRlc2N1YnJpciB0b2RvIGFudGVzIGRlIHVuYSBsw61uZWEgZGUgdGlqZXJhcyIKIAotIzogYnVpbHRpbi9hbS5jOjIxOTggYnVpbHRpbi9hbS5jOjIyMDEgYnVpbHRpbi9hbS5jOjIyMDQgYnVpbHRpbi9hbS5jOjIyMDcKLSM6IGJ1aWx0aW4vYW0uYzoyMjEwIGJ1aWx0aW4vYW0uYzoyMjEzIGJ1aWx0aW4vYW0uYzoyMjE2IGJ1aWx0aW4vYW0uYzoyMjE5Ci0jOiBidWlsdGluL2FtLmM6MjIyNQorIzogYnVpbHRpbi9hbS5jOjIyNDAgYnVpbHRpbi9hbS5jOjIyNDMgYnVpbHRpbi9hbS5jOjIyNDYgYnVpbHRpbi9hbS5jOjIyNDkKKyM6IGJ1aWx0aW4vYW0uYzoyMjUyIGJ1aWx0aW4vYW0uYzoyMjU1IGJ1aWx0aW4vYW0uYzoyMjU4IGJ1aWx0aW4vYW0uYzoyMjYxCisjOiBidWlsdGluL2FtLmM6MjI2NwogbXNnaWQgInBhc3MgaXQgdGhyb3VnaCBnaXQtYXBwbHkiCiBtc2dzdHIgInBhc2FybG8gYSB0cmF2w6lzIGRlIGdpdC1hcHBseSIKIAotIzogYnVpbHRpbi9hbS5jOjIyMTUgYnVpbHRpbi9jb21taXQuYzoxMzQwIGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MQotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc0IGJ1aWx0aW4vZ3JlcC5jOjg2OCBidWlsdGluL21lcmdlLmM6MjM5Ci0jOiBidWlsdGluL3B1bGwuYzoxNTEgYnVpbHRpbi9wdWxsLmM6MjA5IGJ1aWx0aW4vcmViYXNlLmM6ODU0Ci0jOiBidWlsdGluL3JlcGFjay5jOjMxNyBidWlsdGluL3JlcGFjay5jOjMyMSBidWlsdGluL3JlcGFjay5jOjMyMwotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MSBidWlsdGluL3Nob3ctcmVmLmM6MTcxIGJ1aWx0aW4vdGFnLmM6Mzg2Ci0jOiBwYXJzZS1vcHRpb25zLmg6MTQ0IHBhcnNlLW9wdGlvbnMuaDoxNDYgcGFyc2Utb3B0aW9ucy5oOjI2OAorIzogYnVpbHRpbi9hbS5jOjIyNTcgYnVpbHRpbi9jb21taXQuYzoxMzkxIGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MAorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjczIGJ1aWx0aW4vZ3JlcC5jOjg3MSBidWlsdGluL21lcmdlLmM6MjUwCisjOiBidWlsdGluL3B1bGwuYzoxNDAgYnVpbHRpbi9wdWxsLmM6MTk5IGJ1aWx0aW4vcmViYXNlLmM6MTUwNQorIzogYnVpbHRpbi9yZXBhY2suYzozMTUgYnVpbHRpbi9yZXBhY2suYzozMTkgYnVpbHRpbi9yZXBhY2suYzozMjEKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTAgYnVpbHRpbi9zaG93LXJlZi5jOjE3MiBidWlsdGluL3RhZy5jOjQwMworIzogcGFyc2Utb3B0aW9ucy5oOjE1NCBwYXJzZS1vcHRpb25zLmg6MTc1IHBhcnNlLW9wdGlvbnMuaDozMTYKIG1zZ2lkICJuIgogbXNnc3RyICJuIgogCi0jOiBidWlsdGluL2FtLmM6MjIyMSBidWlsdGluL2JyYW5jaC5jOjYzNyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4Ci0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDQgYnVpbHRpbi90YWcuYzo0MjIgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzkKKyM6IGJ1aWx0aW4vYW0uYzoyMjYzIGJ1aWx0aW4vYnJhbmNoLmM6NjYxIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NiBidWlsdGluL3RhZy5jOjQzNyBidWlsdGluL3ZlcmlmeS10YWcuYzozOAogbXNnaWQgImZvcm1hdCIKIG1zZ3N0ciAiZm9ybWF0byIKIAotIzogYnVpbHRpbi9hbS5jOjIyMjIKKyM6IGJ1aWx0aW4vYW0uYzoyMjY0CiBtc2dpZCAiZm9ybWF0IHRoZSBwYXRjaChlcykgYXJlIGluIgogbXNnc3RyICJmb3JtYXRlYXIgZWwgcGFyY2hlKHMpIgogCi0jOiBidWlsdGluL2FtLmM6MjIyOAorIzogYnVpbHRpbi9hbS5jOjIyNzAKIG1zZ2lkICJvdmVycmlkZSBlcnJvciBtZXNzYWdlIHdoZW4gcGF0Y2ggZmFpbHVyZSBvY2N1cnMiCiBtc2dzdHIgInNvYnJlc2NyaWJpciBtZW5zYWplcyBkZSBlcnJvciBjdWFuZG8gZmFsbG9zIGRlIHBhcmNoYWRvIG9jdXJyYW4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjMwCisjOiBidWlsdGluL2FtLmM6MjI3MgogbXNnaWQgImNvbnRpbnVlIGFwcGx5aW5nIHBhdGNoZXMgYWZ0ZXIgcmVzb2x2aW5nIGEgY29uZmxpY3QiCiBtc2dzdHIgImNvbnRpbnVhciBhcGxpY2FuZG8gbG9zIHBhcmNoZXMgdHJhcyByZXNvbHZlciBjb25mbGljdG9zIgogCi0jOiBidWlsdGluL2FtLmM6MjIzMworIzogYnVpbHRpbi9hbS5jOjIyNzUKIG1zZ2lkICJzeW5vbnltcyBmb3IgLS1jb250aW51ZSIKIG1zZ3N0ciAic2luw7NuaW1vcyBwYXJhIC0tY29udGludWUiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjM2CisjOiBidWlsdGluL2FtLmM6MjI3OAogbXNnaWQgInNraXAgdGhlIGN1cnJlbnQgcGF0Y2giCiBtc2dzdHIgInNhbHRhciBlbCBwYXJjaGUgYWN0dWFsIgogCi0jOiBidWlsdGluL2FtLmM6MjIzOQorIzogYnVpbHRpbi9hbS5jOjIyODEKIG1zZ2lkICJyZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIGFib3J0IHRoZSBwYXRjaGluZyBvcGVyYXRpb24uIgogbXNnc3RyICJyZXN0YXVyYXIgbGEgcmFtYSBvcmlnaW5hbCB5IGFib3J0YXIgbGEgb3BlcmFjacOzbiBkZSBwYXJjaGFkby4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjQyCisjOiBidWlsdGluL2FtLmM6MjI4NAogbXNnaWQgImFib3J0IHRoZSBwYXRjaGluZyBvcGVyYXRpb24gYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcy4iCiBtc2dzdHIgImFib3J0YXIgbGEgb3BlcmFjacOzbiBkZSBwYXJjaGFkbyBwZXJvIG1hbnRlbmVyIEhFQUQgZG9uZGUgZXN0w6EuIgogCi0jOiBidWlsdGluL2FtLmM6MjI0NQotbXNnaWQgInNob3cgdGhlIHBhdGNoIGJlaW5nIGFwcGxpZWQuIgotbXNnc3RyICJtdWVzdHJhIGVsIHBhcmNoZSBzaWVuZG8gYXBsaWNhZG8uIgorIzogYnVpbHRpbi9hbS5jOjIyODgKK21zZ2lkICJzaG93IHRoZSBwYXRjaCBiZWluZyBhcHBsaWVkIgorbXNnc3RyICJtdWVzdHJhIGVsIHBhcmNoZSBzaWVuZG8gYXBsaWNhZG8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjQ5CisjOiBidWlsdGluL2FtLmM6MjI5MwogbXNnaWQgImxpZSBhYm91dCBjb21taXR0ZXIgZGF0ZSIKIG1zZ3N0ciAibWVudGlyIHNvYnJlIGxhIGZlY2hhIGRlbCBjb21taXR0ZXIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjUxCisjOiBidWlsdGluL2FtLmM6MjI5NQogbXNnaWQgInVzZSBjdXJyZW50IHRpbWVzdGFtcCBmb3IgYXV0aG9yIGRhdGUiCiBtc2dzdHIgInVzYXIgZWwgdGltZXN0YW1wIGFjdHVhbCBwYXJhIGxhIGZlY2hhIGRlbCBhdXRvciIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTMgYnVpbHRpbi9jb21taXQuYzoxNDgzIGJ1aWx0aW4vbWVyZ2UuYzoyNzMKLSM6IGJ1aWx0aW4vcHVsbC5jOjE4NCBidWlsdGluL3JlYmFzZS5jOjg5OCBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODMKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEzIGJ1aWx0aW4vdGFnLmM6NDAyCisjOiBidWlsdGluL2FtLmM6MjI5NyBidWlsdGluL2NvbW1pdC10cmVlLmM6MTIwIGJ1aWx0aW4vY29tbWl0LmM6MTUxMgorIzogYnVpbHRpbi9tZXJnZS5jOjI4NyBidWlsdGluL3B1bGwuYzoxNzQgYnVpbHRpbi9yZWJhc2UuYzo1MTcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU1NiBidWlsdGluL3JldmVydC5jOjExNyBidWlsdGluL3RhZy5jOjQxOAogbXNnaWQgImtleS1pZCIKIG1zZ3N0ciAia2V5LWlkIgogCi0jOiBidWlsdGluL2FtLmM6MjI1NCBidWlsdGluL3JlYmFzZS5jOjg5OSBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODQKKyM6IGJ1aWx0aW4vYW0uYzoyMjk4IGJ1aWx0aW4vcmViYXNlLmM6NTE4IGJ1aWx0aW4vcmViYXNlLmM6MTU1NwogbXNnaWQgIkdQRy1zaWduIGNvbW1pdHMiCiBtc2dzdHIgIkNvbW1pdHMgY29uIGZpcm1hIEdQRyIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTcKKyM6IGJ1aWx0aW4vYW0uYzoyMzAxCiBtc2dpZCAiKGludGVybmFsIHVzZSBmb3IgZ2l0LXJlYmFzZSkiCiBtc2dzdHIgIih1c28gaW50ZXJubyBwYXJhIGdpdC1yZWJhc2UpIgogCi0jOiBidWlsdGluL2FtLmM6MjI3NQorIzogYnVpbHRpbi9hbS5jOjIzMTkKIG1zZ2lkICIiCiAiVGhlIC1iLy0tYmluYXJ5IG9wdGlvbiBoYXMgYmVlbiBhIG5vLW9wIGZvciBsb25nIHRpbWUsIGFuZFxuIgogIml0IHdpbGwgYmUgcmVtb3ZlZC4gUGxlYXNlIGRvIG5vdCB1c2UgaXQgYW55bW9yZS4iCiBtc2dzdHIgIiIKICJMYSBvcGNpw7NuIC1iLy0tYmluYXJ5IGhhIGVzdGFkbyBkZXNoYWJpbGl0YWRhIHBvciBtdWNobyB0aWVtcG8sIHlcbiIKLSJzZXLDoSByZW1vdmlkYS4gUG9yIGZhdm9yIG5vIGxhIHVzZSBtw6FzLiIKKyJzZXLDoSBlbGltaW5hZGEuIFBvciBmYXZvciBubyBsYSB1c2UgbcOhcy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjgyCisjOiBidWlsdGluL2FtLmM6MjMyNgogbXNnaWQgImZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAiZmFsbMOzIGFsIGxlZXIgZWwgw61uZGljZSIKIAotIzogYnVpbHRpbi9hbS5jOjIyOTcKKyM6IGJ1aWx0aW4vYW0uYzoyMzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInByZXZpb3VzIHJlYmFzZSBkaXJlY3RvcnkgJXMgc3RpbGwgZXhpc3RzIGJ1dCBtYm94IGdpdmVuLiIKIG1zZ3N0ciAiZGlyZWN0b3JpbyBkZSByZWJhc2UgcHJldmlvICVzIHRvZGF2w61hIGV4aXN0ZSBlbiBlbCBtYm94IGRhZG8uIgogCi0jOiBidWlsdGluL2FtLmM6MjMyMQorIzogYnVpbHRpbi9hbS5jOjIzNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN0cmF5ICVzIGRpcmVjdG9yeSBmb3VuZC5cbiIKQEAgLTc3NDQsMTAgKzk5ODAsMTQgQEAKICJEaXJlY3RvcmlvIGV4dHJhdmlhZG8gJXMgZW5jb250cmFkby5cbiIKICJVc2UgXCJnaXQgYW0gLS1hYm9ydFwiIHBhcmEgYm9ycmFybG8uIgogCi0jOiBidWlsdGluL2FtLmM6MjMyNworIzogYnVpbHRpbi9hbS5jOjIzNzEKIG1zZ2lkICJSZXNvbHZlIG9wZXJhdGlvbiBub3QgaW4gcHJvZ3Jlc3MsIHdlIGFyZSBub3QgcmVzdW1pbmcuIgogbXNnc3RyICJPcGVyYWNpw7NuIGRlIHJlc29sdWNpw7NuIG5vIGVzdMOhIGVuIHByb2dyZXNvLCBubyB2YW1vcyBhIGNvbnRpbnVhci4iCiAKKyM6IGJ1aWx0aW4vYW0uYzoyMzgxCittc2dpZCAiaW50ZXJhY3RpdmUgbW9kZSByZXF1aXJlcyBwYXRjaGVzIG9uIHRoZSBjb21tYW5kIGxpbmUiCittc2dzdHIgIm1vZG8gaW50ZXJhY3Rpdm8gcmVxdWllcmUgcGFyY2hlcyBlbiBsYSBsw61uZWEgZGUgY29tYW5kbyIKKwogIzogYnVpbHRpbi9hcHBseS5jOjgKIG1zZ2lkICJnaXQgYXBwbHkgWzxvcHRpb25zPl0gWzxwYXRjaD4uLi5dIgogbXNnc3RyICJnaXQgYXBwbHkgWzxvcGNpb25lcz5dIFs8cGFyY2hlPi4uLl0iCkBAIC03NzY1LDg2ICsxMDAwNSwzMDAgQEAKIG1zZ2lkICJnaXQgYXJjaGl2ZTogUmVtb3RlIHdpdGggbm8gVVJMIgogbXNnc3RyICJnaXQgYXJjaGl2ZTogUmVtb3RlIHNpbiBVUkwiCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjU4CisjOiBidWlsdGluL2FyY2hpdmUuYzo2MQogbXNnaWQgImdpdCBhcmNoaXZlOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgYSBmbHVzaCBwYWNrZXQiCiBtc2dzdHIgImdpdCBhcmNoaXZlOiBzZSBlc3BlcmFiYSBBQ0svTkFLLCBzZSBvYnR1dm8gZmx1c2ggcGFja2V0IgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2MQorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFyY2hpdmU6IE5BQ0sgJXMiCiBtc2dzdHIgImdpdCBhcmNoaXZlOiBOQUNLICVzIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2NAorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjUKIG1zZ2lkICJnaXQgYXJjaGl2ZTogcHJvdG9jb2wgZXJyb3IiCiBtc2dzdHIgImdpdCBhcmNoaXZlOiBlcnJvciBkZSBwcm90b2NvbG8iCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY4CisjOiBidWlsdGluL2FyY2hpdmUuYzo2OQogbXNnaWQgImdpdCBhcmNoaXZlOiBleHBlY3RlZCBhIGZsdXNoIgogbXNnc3RyICJnaXQgYXJjaGl2ZTogc2UgZXNwZXJhYmEgdW4gZmx1c2giCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyCiBtc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tbmV4dC1hbGwgWy0tbm8tY2hlY2tvdXRdIgogbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCBbLS1uby1jaGVja291dF0iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIzCiBtc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0td3JpdGUtdGVybXMgPGJhZF90ZXJtPiA8Z29vZF90ZXJtPiIKIG1zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0td3JpdGUtdGVybXMgPG1hbF90w6lybWlubz4gPGJ1ZW5fdMOpcm1pbm8+IgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTQKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNAogbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jbGVhbi1zdGF0ZSIKIG1zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNsZWFuLXN0YXRlIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDYKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNQorbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1yZXNldCBbPGNvbW1pdD5dIgorbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtcmVzZXQgWzxjb21taXQ+XSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI2Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC13cml0ZSBbLS1uby1sb2ddIDxzdGF0ZT4gPHJldmlzaW9uPiA8Z29vZF90ZXJtPiAiCisiPGJhZF90ZXJtPiIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC13cml0ZSBbLS1uby1sb2ddIDxlc3RhZG8+IDxyZXZpc2lvbj4gPGJ1ZW5fdGVybT4gIgorIjxtYWxfdGVybT4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNworbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2hlY2stYW5kLXNldC10ZXJtcyA8Y29tbWFuZD4gPGdvb2RfdGVybT4gIgorIjxiYWRfdGVybT4iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2hlY2stYW5kLXNldC10ZXJtcyA8Y29tYW5kbz4gPGJ1ZW5fdGVybT4gIgorIjxtYWxfdGVybT4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOAorbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrIDxnb29kX3Rlcm0+IDxiYWRfdGVybT4gWzx0ZXJtPl0iCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrIDxidWVuX3Rlcm0+IDxtYWxfdGVybT4gWzx0ZXJtPl0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOQorbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtdGVybXMgWy0tdGVybS1nb29kIHwgLS10ZXJtLW9sZCB8IC0tdGVybS1iYWQgfCAtLSIKKyJ0ZXJtLW5ld10iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtdGVybXMgWy0tdGVybS1nb29kIHwgLS10ZXJtLW9sZCB8IC0tdGVybS1iYWQgfCAtLSIKKyJ0ZXJtLW5ld10iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMAorbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtc3RhcnQgWy0tdGVybS17b2xkLGdvb2R9PTx0ZXJtPiAtLXRlcm0te25ldyxiYWR9IgorIj08dGVybT5dWy0tbm8tY2hlY2tvdXRdIFs8YmFkPiBbPGdvb2Q+Li4uXV0gWy0tXSBbPHBhdGhzPi4uLl0iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtc3RhcnQgWy0tdGVybS17b2xkLGdvb2R9PTx0w6lybWlubz4gLS10ZXJtLXtuZXcsIgorImJhZH09PHTDqXJtaW5vPl1bLS1uby1jaGVja291dF0gWzxtYWxvPiBbPGJ1ZW5vPi4uLl1dIFstLV0gWzxydXRhcz4uLi5dIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0ZXJtIgogbXNnc3RyICInJXMnIG5vIGVzIHVuIHTDqXJtaW5vIHbDoWxpZG8iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IHVzZSB0aGUgYnVpbHRpbiBjb21tYW5kICclcycgYXMgYSB0ZXJtIgogbXNnc3RyICJubyBzZSBwdWVkZSB1c2FyIGVsIGNvbWFuZG8gbmF0aXZvICclcycgY29tbyB1biB0w6lybWlubyIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYwCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IGNoYW5nZSB0aGUgbWVhbmluZyBvZiB0aGUgdGVybSAnJXMnIgogbXNnc3RyICJubyBzZSBwdWVkZSBjYW1iaWFyIGVsIHNpZ25pZmljYWRvIGRlbCB0w6lybWlubyAnJXMnIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzEKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMTEKIG1zZ2lkICJwbGVhc2UgdXNlIHR3byBkaWZmZXJlbnQgdGVybXMiCiBtc2dzdHIgInBvciBmYXZvciB1c2UgZG9zIHTDqXJtaW5vcyBkaWZlcmVudGVzIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzgKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMTgKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgZmlsZSBCSVNFQ1RfVEVSTVMiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gYWJyaXIgZWwgYXJjaGl2byBCSVNFQ1RfVEVSTVMiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2UgYXJlIG5vdCBiaXNlY3RpbmcuXG4iCittc2dzdHIgIk5vIGVzdGFtb3MgYmlzZWNhbmRvLlxuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgY29tbWl0IgorbXNnc3RyICInJXMnIG5vIGVzIHVuIGNvbW1pdCB2w6FsaWRvIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb3VsZCBub3QgY2hlY2sgb3V0IG9yaWdpbmFsIEhFQUQgJyVzJy4gVHJ5ICdnaXQgYmlzZWN0IHJlc2V0IDxjb21taXQ+Jy4iCittc2dzdHIgIiIKKyJubyBzZSBwdWRvIGhhY2VyIGNoZWNrIG91dCBhbCBIRUFEIG9yaWdpbmFsICclcycuIEludGVudGEgJ2dpdCBiaXNlY3QgcmVzZXQgIgorIjxjb21taXQ+Jy4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmFkIGJpc2VjdF93cml0ZSBhcmd1bWVudDogJXMiCittc2dzdHIgIk1hbCBhcmd1bWVudG8gYmlzZWN0X3dyaXRlOiAlcyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBnZXQgdGhlIG9pZCBvZiB0aGUgcmV2ICclcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIG9idGVuZXIgZWwgb2lkIGRlIGxhIHJldiAnJXMnIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gdGhlIGZpbGUgJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVkbyBhYnJpciBlbCBhcmNoaXZvICclcyciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBjb21tYW5kOiB5b3UncmUgY3VycmVudGx5IGluIGEgJXMvJXMgYmlzZWN0IgorbXNnc3RyICJDb21hbmRvIGludsOhbGlkbzogYWN0dWFsbWVudGUgc2UgZW5jdWVudHJhIGVuIHVuIGJpc2VjdCAlcy8lcyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJXMgYW5kICVzIHJldmlzaW9uLlxuIgorIllvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAlc1wiIGFuZCBcImdpdCBiaXNlY3QgJXNcIiBmb3IgdGhhdC4iCittc2dzdHIgIiIKKyJUaWVuZXMgcXVlIGRhciBhbCBtZW5vcyB1biAlcyB5IHVuICVzIHJldmlzaW9uLlxuIgorIlNlIHB1ZWRlIHZlciBcImdpdCBiaXNlY3QgJXNcIiB5IFwiZ2l0IGJpc2VjdCAlc1wiIHBhcmEgZXNvLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IG5lZWQgdG8gc3RhcnQgYnkgXCJnaXQgYmlzZWN0IHN0YXJ0XCIuXG4iCisiWW91IHRoZW4gbmVlZCB0byBnaXZlIG1lIGF0IGxlYXN0IG9uZSAlcyBhbmQgJXMgcmV2aXNpb24uXG4iCisiWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICVzXCIgYW5kIFwiZ2l0IGJpc2VjdCAlc1wiIGZvciB0aGF0LiIKK21zZ3N0ciAiIgorIlRpZW5lcyBxdWUgY29tZW56YXIgcG9yIFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgorIkRlc3B1w6lzIHRpZW5lcyBxdWUgZW50cmVnYXIgYWwgbWVub3MgdW4gJXMgeSB1bmEgcmV2aXNpb24gJXMuXG4iCisiUHVlZGVzIHVzYXIgXCJnaXQgYmlzZWN0ICVzXCIgeSBcImdpdCBiaXNlY3QgJXNcIiBwYXJhIGVzby4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmlzZWN0aW5nIG9ubHkgd2l0aCBhICVzIGNvbW1pdCIKK21zZ3N0ciAiaGFjaWVuZG8gYmlzZWN0IHNvbG8gY29uIHVuIGNvbW1pdCAlcyIKKworIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtZXSBhbmQgW25dIGluIHlvdXIKKyMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKKyMuIGF0IHRoaXMgcG9pbnQuCisjLgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMxOAorbXNnaWQgIkFyZSB5b3Ugc3VyZSBbWS9uXT8gIgorbXNnc3RyICLCv0VzdMOhcyBzZWd1cm8gW1kvbl0/ICIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM3OQorbXNnaWQgIm5vIHRlcm1zIGRlZmluZWQiCittc2dzdHIgIm5vIGhheSB0w6lybWlub3MgZGVmaW5pZG9zIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGN1cnJlbnQgdGVybXMgYXJlICVzIGZvciB0aGUgb2xkIHN0YXRlXG4iCisiYW5kICVzIGZvciB0aGUgbmV3IHN0YXRlLlxuIgorbXNnc3RyICIiCisiVHVzIHTDqXJtaW5vcyBhY3R1YWxlcyBzb24gJXMgcGFyYSBlbCBlc3RhZG8gdmllam9cbiIKKyJ5ICVzIHBhcmEgZWwgZXN0YWRvIG51ZXZvLlxuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIGFyZ3VtZW50ICVzIGZvciAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCisiU3VwcG9ydGVkIG9wdGlvbnMgYXJlOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGFuZCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgorbXNnc3RyICIiCisiYXJndW1lbnRvIGludsOhbGlkbyAlcyBwYXJhICdnaXQgYmlzZWN0IHRlcm1zJy5cbiIKKyJMYXMgb3BjaW9uZXMgc29wb3J0YWRhcyBzb246IC0tdGVybS1nb29kfC0tdGVybS1vbGQgeSAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDc4CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBvcHRpb246ICclcyciCittc2dzdHIgIm9wY2nDs24gZGVzY29ub2NpZGE6ICclcyciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYSB2YWxpZCByZXZpc2lvbiIKK21zZ3N0ciAiJyVzJyBubyBwYXJlY2Ugc2VyIHVuYSByZXZpc2nDs24gdsOhbGlkYSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUxNAorbXNnaWQgImJhZCBIRUFEIC0gSSBuZWVkIGEgSEVBRCIKK21zZ3N0ciAibWFsIEhFQUQgLSBOZWNlc2l0byB1biBIRUFEIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTI5CisjLCBjLWZvcm1hdAorbXNnaWQgImNoZWNraW5nIG91dCAnJXMnIGZhaWxlZC4gVHJ5ICdnaXQgYmlzZWN0IHN0YXJ0IDx2YWxpZC1icmFuY2g+Jy4iCittc2dzdHIgIiIKKyJlcnJvciBhbCBoYWNlciBjaGVja291dCAnJXMnLiBJbnRlbnRlICdnaXQgYmlzZWN0IHN0YXJ0IDxyYW1hLXbDoWxpZGE+Jy4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NTAKK21zZ2lkICJ3b24ndCBiaXNlY3Qgb24gY2ctc2VlaydlZCB0cmVlIgorbXNnc3RyICJubyBzZSBiaXNlY2Fyw6EgZW4gdW4gw6FyYm9sIGNvbiBjZy1zZWVrIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTUzCittc2dpZCAiYmFkIEhFQUQgLSBzdHJhbmdlIHN5bWJvbGljIHJlZiIKK21zZ3N0ciAibWFsIEhFQUQgLSByZWYgc2ltYsOzbGljbyBleHRyYcOxbyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU3NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZjogJyVzJyIKK21zZ3N0ciAicmVmIGludsOhbGlkbzogJyVzJyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzMwogbXNnaWQgInBlcmZvcm0gJ2dpdCBiaXNlY3QgbmV4dCciCiBtc2dzdHIgInJlYWxpemEgJ2dpdCBiaXNlY3QgbmV4dCciCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjIKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzUKIG1zZ2lkICJ3cml0ZSB0aGUgdGVybXMgdG8gLmdpdC9CSVNFQ1RfVEVSTVMiCiBtc2dzdHIgImVzY3JpYmUgbG9zIHTDqXJtaW5vcyBhIC5naXQvQklTRUNUX1RFUk1TIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTI0CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjM3CiBtc2dpZCAiY2xlYW51cCB0aGUgYmlzZWN0aW9uIHN0YXRlIgogbXNnc3RyICJsaW1waWFyIGVsIGVzdGFkbyBkZSBiaXNlY2Npw7NuIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTI2CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjM5CiBtc2dpZCAiY2hlY2sgZm9yIGV4cGVjdGVkIHJldnMiCiBtc2dzdHIgInJldmlzYXIgcG9yIHJldnMgZXNwZXJhZG9zIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTI4CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQxCittc2dpZCAicmVzZXQgdGhlIGJpc2VjdGlvbiBzdGF0ZSIKK21zZ3N0ciAicmVpbmljaWFyIGVsIGVzdGFkbyBkZSBiaXNlY3QiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDMKK21zZ2lkICJ3cml0ZSBvdXQgdGhlIGJpc2VjdGlvbiBzdGF0ZSBpbiBCSVNFQ1RfTE9HIgorbXNnc3RyICJlc2NyaWJpciBlbCBlc3RhZG8gZGUgYmlzZWN0IGVuIEJJU0VDVF9MT0ciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDUKK21zZ2lkICJjaGVjayBhbmQgc2V0IHRlcm1zIGluIGEgYmlzZWN0aW9uIHN0YXRlIgorbXNnc3RyICJyZXZpc2FyIHkgY29uZmlndXJhciBsb3MgdGVybXMgZW4gZWwgZXN0YWRvIGRlIGJpc2VjdCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0NworbXNnaWQgImNoZWNrIHdoZXRoZXIgYmFkIG9yIGdvb2QgdGVybXMgZXhpc3QiCittc2dzdHIgInJldmlzYXIgc2kgZXhpc3RlbiB0w6lybWlub3MgbWFsb3MgbyBidWVub3MiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDkKK21zZ2lkICJwcmludCBvdXQgdGhlIGJpc2VjdCB0ZXJtcyIKK21zZ3N0ciAiaW1wcmltaXIgbG9zIHRlcm1zIGRlbCBiaXNlY3QiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NTEKK21zZ2lkICJzdGFydCB0aGUgYmlzZWN0IHNlc3Npb24iCittc2dzdHIgImNvbWVuemFyIGxhIHNlc2nDs24gZGUgYmlzZWN0IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUzCiBtc2dpZCAidXBkYXRlIEJJU0VDVF9IRUFEIGluc3RlYWQgb2YgY2hlY2tpbmcgb3V0IHRoZSBjdXJyZW50IGNvbW1pdCIKIG1zZ3N0ciAiYWN0dWFsaXphIEJJU0VDVF9IRUFEIGVuIGx1Z2FyIGRlIHJldmlzYXIgZWwgY29tbWl0IGFjdHVhbCIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE0MworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY1NQorbXNnaWQgIm5vIGxvZyBmb3IgQklTRUNUX1dSSVRFIgorbXNnc3RyICJubyBoYXkgbG9nIHBhcmEgQklTRUNUX1dSSVRFIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjczCiBtc2dpZCAiLS13cml0ZS10ZXJtcyByZXF1aXJlcyB0d28gYXJndW1lbnRzIgogbXNnc3RyICItLXdyaXRlLXRlcm1zIHJlcXVpZXJlIGRvcyBhcmd1bWVudG9zIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTQ3CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njc3CiBtc2dpZCAiLS1iaXNlY3QtY2xlYW4tc3RhdGUgcmVxdWlyZXMgbm8gYXJndW1lbnRzIgogbXNnc3RyICItLWJpc2VjdC1jbGVhbi1zdGF0ZSBubyByZXF1aWVyZSBhcmd1bWVudG9zIgogCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njg0Cittc2dpZCAiLS1iaXNlY3QtcmVzZXQgcmVxdWlyZXMgZWl0aGVyIG5vIGFyZ3VtZW50IG9yIGEgY29tbWl0IgorbXNnc3RyICItLWJpc2VjdC1yZXNldCByZXF1aWVyZSB1biBjb21taXQgbyBuaW5nw7puIGFyZ3VtZW50byIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY4OAorbXNnaWQgIi0tYmlzZWN0LXdyaXRlIHJlcXVpcmVzIGVpdGhlciA0IG9yIDUgYXJndW1lbnRzIgorbXNnc3RyICItLWJpc2VjdC13cml0ZSByZXF1aWVyZSBlbnRyZSA0IG8gNSBhcmd1bWVudG9zIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njk0Cittc2dpZCAiLS1jaGVjay1hbmQtc2V0LXRlcm1zIHJlcXVpcmVzIDMgYXJndW1lbnRzIgorbXNnc3RyICItLWJpc2VjdC1jbGVhbi1zdGF0ZSBubyByZXF1aWVyZSBhcmd1bWVudG9zIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzAwCittc2dpZCAiLS1iaXNlY3QtbmV4dC1jaGVjayByZXF1aXJlcyAyIG9yIDMgYXJndW1lbnRzIgorbXNnc3RyICItLWJpc2VjdC1uZXh0LWNoZWNrIHJlcXVpZXJlIDIgbyAzIGFyZ3VtZW50b3MiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3MDYKK21zZ2lkICItLWJpc2VjdC10ZXJtcyByZXF1aXJlcyAwIG9yIDEgYXJndW1lbnQiCittc2dzdHIgIi0tYmlzZWN0LXRlcm1zIHJlcXVpZXJlIDAgbyAxIGFyZ3VtZW50b3MiCisKICM6IGJ1aWx0aW4vYmxhbWUuYzozMQogbXNnaWQgImdpdCBibGFtZSBbPG9wdGlvbnM+XSBbPHJldi1vcHRzPl0gWzxyZXY+XSBbLS1dIDxmaWxlPiIKIG1zZ3N0ciAiZ2l0IGJsYW1lIFs8b3BjaW9uZXM+XSBbPG9wY2lvbmVzLXJldj5dIFs8cmV2aXNpb24+XSBbLS1dIDxhcmNoaXZvPiIKQEAgLTc4NTMsMTMzICsxMDMwNywxNDYgQEAKIG1zZ2lkICI8cmV2LW9wdHM+IGFyZSBkb2N1bWVudGVkIGluIGdpdC1yZXYtbGlzdCgxKSIKIG1zZ3N0ciAiPHJldi1vcHRzPiBlc3TDoW4gZG9jdW1lbnRhZGFzIGVuIGdpdC1yZXYtbGlzdCgxKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjQwNgorIzogYnVpbHRpbi9ibGFtZS5jOjQwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RpbmcgYSBjb2xvcjogJXMiCiBtc2dzdHIgImVzcGVyYW5kbyB1biBjb2xvcjogJXMiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo0MTMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo0MTYKIG1zZ2lkICJtdXN0IGVuZCB3aXRoIGEgY29sb3IiCiBtc2dzdHIgInRpZW5lIHF1ZSB0ZXJtaW5hciBjb24gdW4gY29sb3IiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3MDAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb2xvciAnJXMnIGluIGNvbG9yLmJsYW1lLnJlcGVhdGVkTGluZXMiCiBtc2dzdHIgImNvbG9yIGludsOhbGlkbyAnJXMnIGVuIGNvbG9yLmJsYW1lLnJlcGVhdGVkTGluZXMiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3MTgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3NDcKIG1zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciBibGFtZS5jb2xvcmluZyIKIG1zZ3N0ciAidmFsb3IgaW52w6FsaWRvIHBhcmEgYmxhbWUuY29sb3JpbmciCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpbmQgcmV2aXNpb24gJXMgdG8gaWdub3JlIgorbXNnc3RyICJubyBzZSBwdWRvIGVuY29udHJhciByZXZpc2lvbiAlcyBwYXJhIGlnbm9yYXIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDQKIG1zZ2lkICJTaG93IGJsYW1lIGVudHJpZXMgYXMgd2UgZmluZCB0aGVtLCBpbmNyZW1lbnRhbGx5IgogbXNnc3RyICJNb3N0cmFyIGxhcyBlbnRyYWRhcyBibGFtZSBjb21vIGxhcyBlbmNvbnRyYW1vcywgaW5jcmVtZW50YWxtZW50ZSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5NAorIzogYnVpbHRpbi9ibGFtZS5jOjg0NQogbXNnaWQgIlNob3cgYmxhbmsgU0hBLTEgZm9yIGJvdW5kYXJ5IGNvbW1pdHMgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIk1vc3RyYXIgU0hBLTEgZW4gYmxhbmNvIHBhcmEgY29tbWl0cyBleHRyZW1vcyAoRGVmYXVsdDogb2ZmKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5NQorIzogYnVpbHRpbi9ibGFtZS5jOjg0NgogbXNnaWQgIkRvIG5vdCB0cmVhdCByb290IGNvbW1pdHMgYXMgYm91bmRhcmllcyAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiTm8gdHJhdGFyIGNvbW1pdHMgcmHDrWNlcyBjb21vIGV4dHJlbW9zIChEZWZhdWx0OiBvZmYpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk2CisjOiBidWlsdGluL2JsYW1lLmM6ODQ3CiBtc2dpZCAiU2hvdyB3b3JrIGNvc3Qgc3RhdGlzdGljcyIKIG1zZ3N0ciAiTW9zdHJhciBlc3RhZMOtc3RpY2FzIGRlIGNvc3RvIGRlIHRyYWJham8iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTcKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDgKIG1zZ2lkICJGb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCiBtc2dzdHIgIkZvcnphciBlbCByZXBvcnRlIGRlIHByb2dyZXNvIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk4CisjOiBidWlsdGluL2JsYW1lLmM6ODQ5CiBtc2dpZCAiU2hvdyBvdXRwdXQgc2NvcmUgZm9yIGJsYW1lIGVudHJpZXMiCiBtc2dzdHIgIk1vc3RyYXIgbGEgcHVudHVhY2nDs24gZGUgc2FsaWRhIGRlIGxhcyBlbnRyYWRhcyBkZSBibGFtZSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5OQorIzogYnVpbHRpbi9ibGFtZS5jOjg1MAogbXNnaWQgIlNob3cgb3JpZ2luYWwgZmlsZW5hbWUgKERlZmF1bHQ6IGF1dG8pIgogbXNnc3RyICJNb3N0cmFyIG5vbWJyZSBvcmlnaW5hbCBkZWwgYXJjaGl2byAoRGVmYXVsdDogYXV0bykiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTEKIG1zZ2lkICJTaG93IG9yaWdpbmFsIGxpbmVudW1iZXIgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIk1vc3RyYXIgbsO6bWVybyBkZSBsw61uZWEgb3JpZ2luYWwgKERlZmF1bHQ6IG9mZikiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDEKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTIKIG1zZ2lkICJTaG93IGluIGEgZm9ybWF0IGRlc2lnbmVkIGZvciBtYWNoaW5lIGNvbnN1bXB0aW9uIgogbXNnc3RyICJNb3N0cmFyIGVuIHVuIGZvcm1hdG8gZGlzZcOxYWRvIHBhcmEgY29uc3VtbyBkZSBtw6FxdWluYSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwMgorIzogYnVpbHRpbi9ibGFtZS5jOjg1MwogbXNnaWQgIlNob3cgcG9yY2VsYWluIGZvcm1hdCB3aXRoIHBlci1saW5lIGNvbW1pdCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiTW9zdHJhciBlbiBmb3JtYXRvIHBvcmNlbGFuYSBjb24gaW5mb3JtYWNpw7NuIGRlIGNvbW1pdCBwb3IgbMOtbmVhIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAzCisjOiBidWlsdGluL2JsYW1lLmM6ODU0CiBtc2dpZCAiVXNlIHRoZSBzYW1lIG91dHB1dCBtb2RlIGFzIGdpdC1hbm5vdGF0ZSAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiVXNhciBlbCBtaXNtbyBtb2RvIHNhbGlkYSBjb21vIGdpdC1hbm5vdGF0ZSAoRGVmYXVsdDogb2ZmKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwNAorIzogYnVpbHRpbi9ibGFtZS5jOjg1NQogbXNnaWQgIlNob3cgcmF3IHRpbWVzdGFtcCAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiTW9zdHJhciB0aW1lc3RhbXAgZW4gZm9ybWF0byByYXcgKERlZmF1bHQ6IG9mZikiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDUKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTYKIG1zZ2lkICJTaG93IGxvbmcgY29tbWl0IFNIQTEgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIk1vc3RyYXIgU0hBMSBkZWwgY29tbWl0IGVuIGZvcm1hdG8gbGFyZ28gKERlZmF1bHQ6IG9mZikiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDYKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTcKIG1zZ2lkICJTdXBwcmVzcyBhdXRob3IgbmFtZSBhbmQgdGltZXN0YW1wIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICJTdXByaW1pciBub21icmUgZGVsIGF1dG9yIHkgdGltZXN0YW1wIChEZWZhdWx0OiBvZmYpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA3CisjOiBidWlsdGluL2JsYW1lLmM6ODU4CiBtc2dpZCAiU2hvdyBhdXRob3IgZW1haWwgaW5zdGVhZCBvZiBuYW1lIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICJNb3N0cmFyIGVuIGNhbWJpbyBlbCBlbWFpbCBkZWwgYXV0b3IgKERlZmF1bHQ6IG9mZikiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTkKIG1zZ2lkICJJZ25vcmUgd2hpdGVzcGFjZSBkaWZmZXJlbmNlcyIKIG1zZ3N0ciAiSWdub3JhciBkaWZlcmVuY2lhcyBkZSBlc3BhY2lvcyBlbiBibGFuY28iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDkKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjAgYnVpbHRpbi9sb2cuYzoxNzAyCittc2dpZCAicmV2IgorbXNnc3RyICJyZXYiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjAKK21zZ2lkICJJZ25vcmUgPHJldj4gd2hlbiBibGFtaW5nIgorbXNnc3RyICJJZ25vcmFyIDxyZXY+IGR1cmFudGUgZWwgYmxhbWUiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjEKK21zZ2lkICJJZ25vcmUgcmV2aXNpb25zIGZyb20gPGZpbGU+IgorbXNnc3RyICJJZ25vcmFyIHJldmlzaW9uZXMgZGUgPGFyY2hpdm8+IgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYyCiBtc2dpZCAiY29sb3IgcmVkdW5kYW50IG1ldGFkYXRhIGZyb20gcHJldmlvdXMgbGluZSBkaWZmZXJlbnRseSIKLW1zZ3N0ciAiY29sb3JlYXIgbWV0YWRhdGEgcmVkdW5kYW50ZSBkZSBsaW5lYXMgcHJldmlhcyBkZSBtYW5lcmEgZGlmZXJlbnRlIgorbXNnc3RyICJjb2xvcmVhciBtZXRhZGF0YSByZWR1bmRhbnRlIGRlIGzDrW5lYXMgcHJldmlhcyBkZSBtYW5lcmEgZGlmZXJlbnRlIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODEwCisjOiBidWlsdGluL2JsYW1lLmM6ODYzCiBtc2dpZCAiY29sb3IgbGluZXMgYnkgYWdlIgotbXNnc3RyICJjb2xvcmVhciBsaW5lYXMgcG9yIGVkYWQiCittc2dzdHIgImNvbG9yZWFyIGzDrW5lYXMgcG9yIGVkYWQiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MTcKLW1zZ2lkICJVc2UgYW4gZXhwZXJpbWVudGFsIGhldXJpc3RpYyB0byBpbXByb3ZlIGRpZmZzIgotbXNnc3RyICJVc2FyIHVuIGhldXLDrXN0aWNvIGV4cGVyaW1lbnRhbCBwYXJhIG1lam9yYXIgbG9zIGRpZmZzIgotCi0jOiBidWlsdGluL2JsYW1lLmM6ODE5CisjOiBidWlsdGluL2JsYW1lLmM6ODY0CiBtc2dpZCAiU3BlbmQgZXh0cmEgY3ljbGVzIHRvIGZpbmQgYmV0dGVyIG1hdGNoIgogbXNnc3RyICJPY3VwbyBtw6FzIGNpY2xvcyBwYXJhIGVuY29udHJhciBtZWpvcmFzIHJlc3VsdGFkb3MiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjUKIG1zZ2lkICJVc2UgcmV2aXNpb25zIGZyb20gPGZpbGU+IGluc3RlYWQgb2YgY2FsbGluZyBnaXQtcmV2LWxpc3QiCiBtc2dzdHIgIlVzZSByZXZpc2lvbmVzIGRlc2RlIDxhcmNoaXZvPiBlbiBsdWdhciBkZSBsbGFtYXIgZ2l0LXJldi1saXN0IgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIxCisjOiBidWlsdGluL2JsYW1lLmM6ODY2CiBtc2dpZCAiVXNlIDxmaWxlPidzIGNvbnRlbnRzIGFzIHRoZSBmaW5hbCBpbWFnZSIKIG1zZ3N0ciAiVXNhciBjb250ZW5pZG8gZGUgPGFyY2hpdm8+IGNvbW8gaW1hZ2VuIGZpbmFsIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIyIGJ1aWx0aW4vYmxhbWUuYzo4MjMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjcgYnVpbHRpbi9ibGFtZS5jOjg2OAogbXNnaWQgInNjb3JlIgogbXNnc3RyICJwdW50YWplIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIyCisjOiBidWlsdGluL2JsYW1lLmM6ODY3CiBtc2dpZCAiRmluZCBsaW5lIGNvcGllcyB3aXRoaW4gYW5kIGFjcm9zcyBmaWxlcyIKIG1zZ3N0ciAiRW5jb250cmFyIGNvcGlhcyBkZSBsw61uZWFzIGVudHJlIHkgYSB0cmF2w6lzIGRlIGFyY2hpdm9zIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIzCisjOiBidWlsdGluL2JsYW1lLmM6ODY4CiBtc2dpZCAiRmluZCBsaW5lIG1vdmVtZW50cyB3aXRoaW4gYW5kIGFjcm9zcyBmaWxlcyIKIG1zZ3N0ciAiRW5jb250cmFyIG1vdmltaWVudG9zIGRlIGzDrW5lYXMgZW50cmUgeSBhIHRyYXbDqXMgZGUgYXJjaGl2b3MiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjQKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjkKIG1zZ2lkICJuLG0iCiBtc2dzdHIgIm4sbSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyNAorIzogYnVpbHRpbi9ibGFtZS5jOjg2OQogbXNnaWQgIlByb2Nlc3Mgb25seSBsaW5lIHJhbmdlIG4sbSwgY291bnRpbmcgZnJvbSAxIgogbXNnc3RyICJQcm9jZXNhciBzb2xvIGVsIHJhbmdvIGRlIGzDrW5lYXMgbixtLCBjb250YW5kbyBkZXNkZSAxIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODczCisjOiBidWlsdGluL2JsYW1lLmM6OTIxCiBtc2dpZCAiLS1wcm9ncmVzcyBjYW4ndCBiZSB1c2VkIHdpdGggLS1pbmNyZW1lbnRhbCBvciBwb3JjZWxhaW4gZm9ybWF0cyIKIG1zZ3N0ciAiLS1wcm9ncmVzcyBubyBwdWVkZSBzZXIgdXNhZG8gY29uIC0taW5jcmVtZW50YWwgbyBmb3JtYXRvcyBwb3JjZWxhbmEiCiAKQEAgLTc5OTEsMTggKzEwNDU4LDE4IEBACiAjLiB5b3VyIGxhbmd1YWdlIG1heSBuZWVkIG1vcmUgb3IgZmV3ZXIgZGlzcGxheQogIy4gY29sdW1ucy4KICMuCi0jOiBidWlsdGluL2JsYW1lLmM6OTI0CisjOiBidWlsdGluL2JsYW1lLmM6OTcyCiBtc2dpZCAiNCB5ZWFycywgMTEgbW9udGhzIGFnbyIKIG1zZ3N0ciAiaGFjZSA0IGHDsW9zLCAxMSBtZXNlcyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjEwMTEKKyM6IGJ1aWx0aW4vYmxhbWUuYzoxMDc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZpbGUgJXMgaGFzIG9ubHkgJWx1IGxpbmUiCiBtc2dpZF9wbHVyYWwgImZpbGUgJXMgaGFzIG9ubHkgJWx1IGxpbmVzIgogbXNnc3RyWzBdICJhcmNoaXZvICVzIHRpZW5lIHNvbG8gJWx1IGzDrW5lYSIKIG1zZ3N0clsxXSAiYXJjaGl2byAlcyB0aWVuZSBzb2xvICVsdSBsw61uZWFzIgogCi0jOiBidWlsdGluL2JsYW1lLmM6MTA1NworIzogYnVpbHRpbi9ibGFtZS5jOjExMjUKIG1zZ2lkICJCbGFtaW5nIGxpbmVzIgogbXNnc3RyICJCbGFtaW5nIGEgbMOtbmVhcyIKIApAQCAtODAzNCw3ICsxMDUwMSw3IEBACiBtc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSBbLXIgfCAtYV0gWy0tZm9ybWF0XSIKIG1zZ3N0ciAiZ2l0IGJyYW5jaCBbPG9wY2lvbmVzPl0gWy1yIHwgLWFdIFstLWZvcm1hdG9dIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE1MQorIzogYnVpbHRpbi9icmFuY2guYzoxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImRlbGV0aW5nIGJyYW5jaCAnJXMnIHRoYXQgaGFzIGJlZW4gbWVyZ2VkIHRvXG4iCkBAIC04MDQzLDcgKzEwNTEwLDcgQEAKICJib3JyYW5kbyBsYSByYW1hICclcycgcXVlIGhhIHNpZG8gZnVzaW9uYWRhIGVuXG4iCiAiICAgICAgICAgJyVzJywgcGVybyBhw7puIG5vIGhhIHNpZG8gZnVzaW9uYWRhIGEgSEVBRC4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTU1CisjOiBidWlsdGluL2JyYW5jaC5jOjE1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibm90IGRlbGV0aW5nIGJyYW5jaCAnJXMnIHRoYXQgaXMgbm90IHlldCBtZXJnZWQgdG9cbiIKQEAgLTgwNTIsMTMwICsxMDUxOSwxMzkgQEAKICJubyBib3JyYW5kbyByYW1hICclcycgcXVlIHRvZGF2w61hIG5vIGhhIHNpZG8gZnVzaW9uYWRhIFxuIgogIlx0YSAnJXMnLCBhdW5xdWUgc2UgZnVzaW9uZSBjb24gSEVBRC4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTY5CisjOiBidWlsdGluL2JyYW5jaC5jOjE3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZG4ndCBsb29rIHVwIGNvbW1pdCBvYmplY3QgZm9yICclcyciCiBtc2dzdHIgIk5vIHNlIHB1ZG8gZW5jb250cmFyIGVsIG9iamV0byBjb21taXQgcGFyYSAnJXMnIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE3MworIzogYnVpbHRpbi9icmFuY2guYzoxNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBicmFuY2ggJyVzJyBpcyBub3QgZnVsbHkgbWVyZ2VkLlxuIgogIklmIHlvdSBhcmUgc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgaXQsIHJ1biAnZ2l0IGJyYW5jaCAtRCAlcycuIgogbXNnc3RyICIiCiAiTGEgcmFtYSAnJXMnIG5vIGhhIHNpZG8gZnVzaW9uYWRhIGNvbXBsZXRhbWVudGUuXG4iCi0iU2kgZXN0w6Egc2VndXJvIGRlIHF1ZXJlciBib3JyYXJsYSwgZWplY3V0ZSAnZ2l0IGJyYW5jaCAtRCAlcycuIgorIlNpIGVzdMOhcyBzZWd1cm8gZGUgcXVlcmVyIGJvcnJhcmxhLCBlamVjdXRhICdnaXQgYnJhbmNoIC1EICVzJy4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTg2CisjOiBidWlsdGluL2JyYW5jaC5jOjE4OQogbXNnaWQgIlVwZGF0ZSBvZiBjb25maWctZmlsZSBmYWlsZWQiCiBtc2dzdHIgIkZhbGzDsyBkZSBhY3R1YWxpemFjacOzbiBkZSBjb25maWctZmlsZSIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMTcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjIwCiBtc2dpZCAiY2Fubm90IHVzZSAtYSB3aXRoIC1kIgogbXNnc3RyICJubyBzZSBwdWVkZSB1c2FyLWEgY29uIC1kIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjIyMworIzogYnVpbHRpbi9icmFuY2guYzoyMjYKIG1zZ2lkICJDb3VsZG4ndCBsb29rIHVwIGNvbW1pdCBvYmplY3QgZm9yIEhFQUQiCiBtc2dzdHIgIk5vIHNlIHB1ZG8gcmV2aXNhciBlbCBvYmpldG8gY29tbWl0IHBhcmEgSEVBRCIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBkZWxldGUgYnJhbmNoICclcycgY2hlY2tlZCBvdXQgYXQgJyVzJyIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgYm9ycmFyIHJhbWEgJyVzJyBxdWUgY3VlbnRhIGNvbiBjaGVja291dCBlbiAnJXMnIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI1MgorIzogYnVpbHRpbi9icmFuY2guYzoyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3RlLXRyYWNraW5nIGJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCiBtc2dzdHIgInJhbWEgZGUgcmFzdHJlbyByZW1vdG8gJyVzJyBubyBlbmNvbnRyYWRhLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNTMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjU2CiAjLCBjLWZvcm1hdAogbXNnaWQgImJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCiBtc2dzdHIgInJhbWEgJyVzJyBubyBlbmNvbnRyYWRhLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNjgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkVycm9yIGRlbGV0aW5nIHJlbW90ZS10cmFja2luZyBicmFuY2ggJyVzJyIKIG1zZ3N0ciAiRXJyb3IgYWwgZWxpbWluYXIgbGEgcmFtYSBkZSByYXN0cmVvIHJlbW90YSAnJXMnIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI2OQorIzogYnVpbHRpbi9icmFuY2guYzoyNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXJyb3IgZGVsZXRpbmcgYnJhbmNoICclcyciCiBtc2dzdHIgIkVycm9yIGFsIGVsaW1pbmFyIGxhIHJhbWEgJyVzJyIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNzYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCAlcyAod2FzICVzKS5cbiIKIG1zZ3N0ciAiRWxpbWluYWRhIGxhIHJhbWEgZGUgcmFzdHJlbyByZW1vdGEgJXMgKGVyYSAlcykuXG4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc3CisjOiBidWlsdGluL2JyYW5jaC5jOjI4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWxldGVkIGJyYW5jaCAlcyAod2FzICVzKS5cbiIKIG1zZ3N0ciAiRWxpbWluYWRhIGxhIHJhbWEgJXMgKGVyYSAlcykuLlxuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQyMSBidWlsdGluL3RhZy5jOjU5CisjOiBidWlsdGluL2JyYW5jaC5jOjQyOSBidWlsdGluL3RhZy5jOjYxCiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGZvcm1hdCBzdHJpbmciCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgYW5hbGl6YXIgZWwgc3RyaW5nIGRlIGZvcm1hdG8iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDU4CisjOiBidWlsdGluL2JyYW5jaC5jOjQ2MAorbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlIEhFQUQiCittc2dzdHIgIm5vIHNlIHB1ZG8gcmVzb2x2ZXIgSEVBRCIKKworIzogYnVpbHRpbi9icmFuY2guYzo0NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiSEVBRCAoJXMpIHBvaW50cyBvdXRzaWRlIG9mIHJlZnMvaGVhZHMvIgorbXNnc3RyICJIRUFEICglcykgYXB1bnRhIGZ1ZXJhIGRlIHJlZnMvaGVhZHMvIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJXMgaXMgYmVpbmcgcmViYXNlZCBhdCAlcyIKIG1zZ3N0ciAiUmFtYSAlcyBlc3TDoSBzaWVuZG8gcmViYXNhZGEgZW4gJXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDYyCisjOiBidWlsdGluL2JyYW5jaC5jOjQ4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJXMgaXMgYmVpbmcgYmlzZWN0ZWQgYXQgJXMiCiBtc2dzdHIgIlJhbWEgJXMgZXN0w6Egc2llbmRvIGJpc2VjYWRhIGVuICVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ3OQorIzogYnVpbHRpbi9icmFuY2guYzo1MDIKIG1zZ2lkICJjYW5ub3QgY29weSB0aGUgY3VycmVudCBicmFuY2ggd2hpbGUgbm90IG9uIGFueS4iCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGNvcGlhciBsYSByYW1hIGFjdHVhbCBtaWVudHJhcyBubyBzZSBlc3TDoSBlbiBuaW5ndW5hLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0ODEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTA0CiBtc2dpZCAiY2Fubm90IHJlbmFtZSB0aGUgY3VycmVudCBicmFuY2ggd2hpbGUgbm90IG9uIGFueS4iCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIHJlbm9tYnJhciBsYSByYW1hIGFjdHVhbCBtaWVudHJhcyBubyBzZSBlc3TDoSBlbiBuaW5ndW5hLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0OTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgYnJhbmNoIG5hbWU6ICclcyciCiBtc2dzdHIgIk5vbWJyZSBkZSByYW1hIGludsOhbGlkbzogJyVzJyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MTkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQyCiBtc2dpZCAiQnJhbmNoIHJlbmFtZSBmYWlsZWQiCiBtc2dzdHIgIkNhbWJpbyBkZSBub21icmUgZGUgcmFtYSBmYWxsaWRvIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyMQorIzogYnVpbHRpbi9icmFuY2guYzo1NDQKIG1zZ2lkICJCcmFuY2ggY29weSBmYWlsZWQiCiBtc2dzdHIgIkNvcGlhZG8gZGUgcmFtYSBmYWxsaWRvIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyNQorIzogYnVpbHRpbi9icmFuY2guYzo1NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3JlYXRlZCBhIGNvcHkgb2YgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyIKIG1zZ3N0ciAiQ29waWEgY3JlYWRhIGRlIGxhIHJhbWEgbWFsbm9tYnJhZGEgJyVzJyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MjgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbmFtZWQgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyBhd2F5IgogbXNnc3RyICJSYW1hIG1hbCBsbGFtYWRhICclcycgcmVub21icmFkYSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MzQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCByZW5hbWVkIHRvICVzLCBidXQgSEVBRCBpcyBub3QgdXBkYXRlZCEiCiBtc2dzdHIgIsKhUmFtYSByZW5vbWJyYWRhIGEgJXMsIHBlcm8gSEVBRCBubyBlc3TDoSBhY3R1YWxpemFkbyEiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQzCisjOiBidWlsdGluL2JyYW5jaC5jOjU2NgogbXNnaWQgIkJyYW5jaCBpcyByZW5hbWVkLCBidXQgdXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKIG1zZ3N0ciAiIgogIkxhIHJhbWEgZXN0w6EgcmVub21icmFkYSwgcGVybyBmYWxsw7MgbGEgYWN0dWFsaXphY2nDs24gZGVsIGFyY2hpdm8gZGUgIgogImNvbmZpZ3VyYWNpw7NuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU0NQorIzogYnVpbHRpbi9icmFuY2guYzo1NjgKIG1zZ2lkICJCcmFuY2ggaXMgY29waWVkLCBidXQgdXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKIG1zZ3N0ciAiIgogIkxhIHJhbWEgZXN0w6EgY29waWFkYSwgcGVybyBmYWxsw7MgbGEgYWN0dWFsaXphY2nDs24gZGVsIGFyY2hpdm8gZGUgIgogImNvbmZpZ3VyYWNpw7NuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU2MQorIzogYnVpbHRpbi9icmFuY2guYzo1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlBsZWFzZSBlZGl0IHRoZSBkZXNjcmlwdGlvbiBmb3IgdGhlIGJyYW5jaFxuIgpAQCAtODE4NCwxODggKzEwNjYwLDE4MiBAQAogbXNnc3RyICIiCiAiUG9yIGZhdm9yLCBlZGl0YSBsYSBkZXNjcmlwY2nDs24gcGFyYSBsYSByYW1hXG4iCiAiJXNcbiIKLSJMYXMgbMOtbmVhcyBxdWUgY29taWVuY2VuIGNvbiAnJWMnIHNlcsOhbiByZW1vdmlkYXMuXG4iCisiTGFzIGzDrW5lYXMgcXVlIGNvbWllbmNlbiBjb24gJyVjJyBzZXLDoW4gZWxpbWluYWRhcy5cbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE4CiBtc2dpZCAiR2VuZXJpYyBvcHRpb25zIgogbXNnc3RyICJPcGNpb25lcyBnZW7DqXJpY2FzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5NgorIzogYnVpbHRpbi9icmFuY2guYzo2MjAKIG1zZ2lkICJzaG93IGhhc2ggYW5kIHN1YmplY3QsIGdpdmUgdHdpY2UgZm9yIHVwc3RyZWFtIGJyYW5jaCIKIG1zZ3N0ciAibW9zdHJhciBoYXNoIHkgdGVtYSwgZGFyIGRvcyB2ZWNlcyBwYXJhIHJhbWEgdXBzdHJlYW0iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTk3CisjOiBidWlsdGluL2JyYW5jaC5jOjYyMQogbXNnaWQgInN1cHByZXNzIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMiCiBtc2dzdHIgInN1cHJpbWlyIG1lbnNhamVzIGluZm9ybWF0aXZvcyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIyCiBtc2dpZCAic2V0IHVwIHRyYWNraW5nIG1vZGUgKHNlZSBnaXQtcHVsbCgxKSkiCiBtc2dzdHIgImNvbmZpZ3VyYW5kbyBtb2RvIHRyYWNraW5nIChtaXJhciBnaXQtcHVsbCgxKSkiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjAwCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNAogbXNnaWQgImRvIG5vdCB1c2UiCiBtc2dzdHIgIm5vIHVzYXIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjAyIGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MAorIzogYnVpbHRpbi9icmFuY2guYzo2MjYgYnVpbHRpbi9yZWJhc2UuYzo1MTMKIG1zZ2lkICJ1cHN0cmVhbSIKIG1zZ3N0ciAidXBzdHJlYW0iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjAyCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNgogbXNnaWQgImNoYW5nZSB0aGUgdXBzdHJlYW0gaW5mbyIKIG1zZ3N0ciAiY2FtYmlhciBpbmZvIGRlIHVwc3RyZWFtIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMwotbXNnaWQgIlVuc2V0IHRoZSB1cHN0cmVhbSBpbmZvIgotbXNnc3RyICJEZXNjb25maWd1cmFuZG8gbGEgaW5mbyBkZSB1cHN0cmVhbSIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI3Cittc2dpZCAidW5zZXQgdGhlIHVwc3RyZWFtIGluZm8iCittc2dzdHIgImRlc2NvbmZpZ3VyYW5kbyBsYSBpbmZvIGRlIHVwc3RyZWFtIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwNAorIzogYnVpbHRpbi9icmFuY2guYzo2MjgKIG1zZ2lkICJ1c2UgY29sb3JlZCBvdXRwdXQiCiBtc2dzdHIgInVzYXIgc2FsaWRhIGNvbiBjb2xvcmVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwNQorIzogYnVpbHRpbi9icmFuY2guYzo2MjkKIG1zZ2lkICJhY3Qgb24gcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgogbXNnc3RyICJhY3R1YXIgZW4gcmFtYXMgZGUgdHJhcXVlbyByZW1vdG8iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA3IGJ1aWx0aW4vYnJhbmNoLmM6NjA5CisjOiBidWlsdGluL2JyYW5jaC5jOjYzMSBidWlsdGluL2JyYW5jaC5jOjYzMwogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgIm1vc3RyYXIgc29sbyByYW1hcyBxdWUgY29udGllbmVuIGVsIGNvbW1pdCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDggYnVpbHRpbi9icmFuY2guYzo2MTAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMyIGJ1aWx0aW4vYnJhbmNoLmM6NjM0CiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAibW9zdHJhciBzb2xvIHJhbWFzIHF1ZSBubyBjb250aWVuZW4gZWwgY29tbWl0IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxMworIzogYnVpbHRpbi9icmFuY2guYzo2MzcKIG1zZ2lkICJTcGVjaWZpYyBnaXQtYnJhbmNoIGFjdGlvbnM6IgogbXNnc3RyICJBY2Npb25lcyBlc3BlY8OtZmljYXMgZGUgZ2l0LWJyYW5jaDoiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE0CisjOiBidWlsdGluL2JyYW5jaC5jOjYzOAogbXNnaWQgImxpc3QgYm90aCByZW1vdGUtdHJhY2tpbmcgYW5kIGxvY2FsIGJyYW5jaGVzIgogbXNnc3RyICJsaXN0YXLCoHJhbWFzIGRlIHJlbW90ZS10cmFja2luZyB5IGxvY2FsZXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE2CisjOiBidWlsdGluL2JyYW5jaC5jOjY0MAogbXNnaWQgImRlbGV0ZSBmdWxseSBtZXJnZWQgYnJhbmNoIgogbXNnc3RyICJib3JyYXIgcmFtYXMgdG90YWxtZW50ZSBmdXNpb25hZGFzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxNworIzogYnVpbHRpbi9icmFuY2guYzo2NDEKIG1zZ2lkICJkZWxldGUgYnJhbmNoIChldmVuIGlmIG5vdCBtZXJnZWQpIgogbXNnc3RyICJib3JyYXIgcmFtYSAoaW5jbHVzbyBzaSBubyBlc3TDoSBmdXNpb25hZGEpIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxOAorIzogYnVpbHRpbi9icmFuY2guYzo2NDIKIG1zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCBhbmQgaXRzIHJlZmxvZyIKIG1zZ3N0ciAibW92ZXIvcmVub21icmFyIHVuYSByYW1hIHkgc3UgcmVmbG9nIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxOQorIzogYnVpbHRpbi9icmFuY2guYzo2NDMKIG1zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCwgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgogbXNnc3RyICJtb3Zlci9yZW5vbWJyYXIgdW5hIHJhbWEsIGluY2x1c28gc2kgZWwgZGVzdGlubyBleGlzdGUiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIwCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NAogbXNnaWQgImNvcHkgYSBicmFuY2ggYW5kIGl0cyByZWZsb2ciCiBtc2dzdHIgImNvcGlhciB1bmEgcmFtYSB5IHN1IHJlZmxvZyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ1CiBtc2dpZCAiY29weSBhIGJyYW5jaCwgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgogbXNnc3RyICJjb3BpYXIgdW5hIHJhbWEsIGluY2x1c28gc2kgZWwgb2JqZXRpdm8gZXhpc3RlIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMgorIzogYnVpbHRpbi9icmFuY2guYzo2NDYKIG1zZ2lkICJsaXN0IGJyYW5jaCBuYW1lcyIKIG1zZ3N0ciAibGlzdGFyIG5vbWJyZXMgZGUgcmFtYXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIzCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NworbXNnaWQgInNob3cgY3VycmVudCBicmFuY2ggbmFtZSIKK21zZ3N0ciAibXVlc3RyYSBlbCBub21icmUgZGUgYnJhbmNoIGFjdHVhbCIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDgKIG1zZ2lkICJjcmVhdGUgdGhlIGJyYW5jaCdzIHJlZmxvZyIKIG1zZ3N0ciAiY3JlYSBlbCByZWZsb2cgZGUgbGEgcmFtYSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUwCiBtc2dpZCAiZWRpdCB0aGUgZGVzY3JpcHRpb24gZm9yIHRoZSBicmFuY2giCiBtc2dzdHIgImVkaXRhIGxhIGRlc2NyaXBjacOzbiBkZSBsYSByYW1hIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyNgorIzogYnVpbHRpbi9icmFuY2guYzo2NTEKIG1zZ2lkICJmb3JjZSBjcmVhdGlvbiwgbW92ZS9yZW5hbWUsIGRlbGV0aW9uIgogbXNnc3RyICJmdWVyemEgbGEgY3JlYWNpw7NuLG1vdmltaWVudG8vcmVub21icmFkbyxib3JyYWRvIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyNworIzogYnVpbHRpbi9icmFuY2guYzo2NTIKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAibXVlc3RyYSBzb2xvIHJhbWFzIHF1ZSBoYW4gc2lkbyBmdXNpb25hZGFzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyOAorIzogYnVpbHRpbi9icmFuY2guYzo2NTMKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCiBtc2dzdHIgIm11ZXN0cmEgc29sbyByYW1hcyBxdWUgbm8gaGFuIHNpZG8gZnVzaW9uYWRhcyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjU0CiBtc2dpZCAibGlzdCBicmFuY2hlcyBpbiBjb2x1bW5zIgogbXNnc3RyICJtdWVzdHJhIGxhcyByYW1hcyBlbiBjb2x1bW5hcyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MzAgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MCBidWlsdGluL2xzLXJlbW90ZS5jOjcwCi0jOiBidWlsdGluL3RhZy5jOjQxNQotbXNnaWQgImtleSIKLW1zZ3N0ciAiY2xhdmUiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMxIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDEgYnVpbHRpbi9scy1yZW1vdGUuYzo3MQotIzogYnVpbHRpbi90YWcuYzo0MTYKLW1zZ2lkICJmaWVsZCBuYW1lIHRvIHNvcnQgb24iCi1tc2dzdHIgIm5vbWJyZSBkZWwgY2FtcG8gcG9yIGVsIGN1w6FsIG9yZGVuYXIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMzIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDMgYnVpbHRpbi9ub3Rlcy5jOjQxNQotIzogYnVpbHRpbi9ub3Rlcy5jOjQxOCBidWlsdGluL25vdGVzLmM6NTc4IGJ1aWx0aW4vbm90ZXMuYzo1ODEKLSM6IGJ1aWx0aW4vdGFnLmM6NDE4CisjOiBidWlsdGluL2JyYW5jaC5jOjY1NyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQyIGJ1aWx0aW4vbm90ZXMuYzo0MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTggYnVpbHRpbi9ub3Rlcy5jOjU4MSBidWlsdGluL25vdGVzLmM6NTg0CisjOiBidWlsdGluL3RhZy5jOjQzMwogbXNnaWQgIm9iamVjdCIKIG1zZ3N0ciAib2JqZXRvIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzNAorIzogYnVpbHRpbi9icmFuY2guYzo2NTgKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIG9mIHRoZSBvYmplY3QiCiBtc2dzdHIgImltcHJpbWlyIHPDs2xvIGxhcyByYW1hcyBkZWwgb2JqZXRvIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzNiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ5IGJ1aWx0aW4vdGFnLmM6NDI1CisjOiBidWlsdGluL2JyYW5jaC5jOjY2MCBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ4IGJ1aWx0aW4vdGFnLmM6NDQwCiBtc2dpZCAic29ydGluZyBhbmQgZmlsdGVyaW5nIGFyZSBjYXNlIGluc2Vuc2l0aXZlIgogbXNnc3RyICJvcmRlbmFtaWVudG8geSBmaWx0cmFkbyBzb24gY2FzZS1pbnNlbnNpdGl2ZSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MzcgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOCBidWlsdGluL3RhZy5jOjQyMwotIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjYxIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzggYnVpbHRpbi90YWcuYzo0MzgKKyM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM4CiBtc2dpZCAiZm9ybWF0IHRvIHVzZSBmb3IgdGhlIG91dHB1dCIKIG1zZ3N0ciAiZm9ybWF0byBwYXJhIHVzYXIgcGFyYSBlbCBvdXRwdXQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjYwIGJ1aWx0aW4vY2xvbmUuYzo3MzkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Njg0IGJ1aWx0aW4vY2xvbmUuYzo3ODUKIG1zZ2lkICJIRUFEIG5vdCBmb3VuZCBiZWxvdyByZWZzL2hlYWRzISIKLW1zZ3N0ciAiSEVBRCBubyBlbmNvbnRyYWRvIGFiYWpvIGRlIHJlZnMvaGVhZHMhIgorbXNnc3RyICLCoUhFQUQgbm8gZW5jb250cmFkbyBhYmFqbyBkZSByZWZzL2hlYWRzISIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2ODMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzA4CiBtc2dpZCAiLS1jb2x1bW4gYW5kIC0tdmVyYm9zZSBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWNvbHVtbiB5IC0tdmVyYm9zZSBzb24gaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2OTggYnVpbHRpbi9icmFuY2guYzo3NDkgYnVpbHRpbi9icmFuY2guYzo3NTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzIzIGJ1aWx0aW4vYnJhbmNoLmM6Nzc3IGJ1aWx0aW4vYnJhbmNoLmM6Nzg2CiBtc2dpZCAiYnJhbmNoIG5hbWUgcmVxdWlyZWQiCiBtc2dzdHIgInNlIG5lY2VzaXRhIGVsIG5vbWJyZSBkZSBsYSByYW1hIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjcyNQorIzogYnVpbHRpbi9icmFuY2guYzo3NTMKIG1zZ2lkICJDYW5ub3QgZ2l2ZSBkZXNjcmlwdGlvbiB0byBkZXRhY2hlZCBIRUFEIgogbXNnc3RyICJObyBzZSBwdWVkZSBkYXIgZGVzY3JpcGNpw7NuIGFsIEhFQUQgZGVzYWNvcGxhZG8iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzMwCisjOiBidWlsdGluL2JyYW5jaC5jOjc1OAogbXNnaWQgImNhbm5vdCBlZGl0IGRlc2NyaXB0aW9uIG9mIG1vcmUgdGhhbiBvbmUgYnJhbmNoIgogbXNnc3RyICJubyBzZSBwdWVkZSBlZGl0YXIgbGEgZGVzY3JpcGNpw7NuIGRlIG3DoXMgZGUgdW5hIHJhbWEiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzM3CisjOiBidWlsdGluL2JyYW5jaC5jOjc2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBjb21taXQgb24gYnJhbmNoICclcycgeWV0LiIKIG1zZ3N0ciAiQcO6biBubyBoYXkgY29tbWl0cyBlbiBsYSByYW1hICclcycuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc0MAorIzogYnVpbHRpbi9icmFuY2guYzo3NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gYnJhbmNoIG5hbWVkICclcycuIgogbXNnc3RyICJObyBoYXkgbmluZ3VuYSByYW1hIGxsYW1hZGEgJyVzJy4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzU1CisjOiBidWlsdGluL2JyYW5jaC5jOjc4MwogbXNnaWQgInRvbyBtYW55IGJyYW5jaGVzIGZvciBhIGNvcHkgb3BlcmF0aW9uIgogbXNnc3RyICJkZW1hc2lhZGFzIHJhbWFzIHBhcmEgdW5hIG9wZXJhY2nDs24gZGUgY29waWFkbyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NjQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzkyCiBtc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIGZvciBhIHJlbmFtZSBvcGVyYXRpb24iCiBtc2dzdHIgImRlbWFzaWFkb3MgYXJndW1lbnRvcyBwYXJhIHVuYSBvcGVyYWNpw7NuIGRlIHJlbm9tYnJhZG8iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzY5CisjOiBidWlsdGluL2JyYW5jaC5jOjc5NwogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyB0byBzZXQgbmV3IHVwc3RyZWFtIgogbXNnc3RyICJkZW1hc2lhZG9zIGFyZ3VtZW50b3MgcGFyYSBjb25maWd1cmFyIHVuIG51ZXZvIHVwc3RyZWFtIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc3MworIzogYnVpbHRpbi9icmFuY2guYzo4MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNvdWxkIG5vdCBzZXQgdXBzdHJlYW0gb2YgSEVBRCB0byAlcyB3aGVuIGl0IGRvZXMgbm90IHBvaW50IHRvIGFueSBicmFuY2guIgpAQCAtODM3MywzNyArMTA4NDMsNDAgQEAKICJubyBzZSBwdWRvIGNvbmZpZ3VyYXIgdXBzdHJlYW0gZGUgSEVBRCBhICVzIGN1YW5kbyBlc3RlIG5vIGFwdW50YSBhIG5pbmd1bmEgIgogInJhbWEuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc3NiBidWlsdGluL2JyYW5jaC5jOjc5OAorIzogYnVpbHRpbi9icmFuY2guYzo4MDQgYnVpbHRpbi9icmFuY2guYzo4MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBicmFuY2ggJyVzJyIKIG1zZ3N0ciAibm8gaGF5IHRhbCByYW1hICclcyciCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzgwCisjOiBidWlsdGluL2JyYW5jaC5jOjgwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJicmFuY2ggJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAibGEgcmFtYSAnJXMnIG5vIGV4aXN0ZSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3OTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODIxCiBtc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIHRvIHVuc2V0IHVwc3RyZWFtIgogbXNnc3RyICJkZW1hc2lhZG9zIGFyZ3VtZW50b3MgcGFyYSBkZXNjb25maWd1cmFyIHVwc3RyZWFtIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc5NgorIzogYnVpbHRpbi9icmFuY2guYzo4MjUKIG1zZ2lkICJjb3VsZCBub3QgdW5zZXQgdXBzdHJlYW0gb2YgSEVBRCB3aGVuIGl0IGRvZXMgbm90IHBvaW50IHRvIGFueSBicmFuY2guIgogbXNnc3RyICIiCiAibm8gc2UgcHVlZGUgZGVzY29uZmlndXJhciB1cHN0cmVhbSBkZSBIRUFEIGN1YW5kbyBlc3RlIG5vIGFwdW50YSBhIG5pbmd1bmEgIgogInJhbWEuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjgwMgorIzogYnVpbHRpbi9icmFuY2guYzo4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgaGFzIG5vIHVwc3RyZWFtIGluZm9ybWF0aW9uIgogbXNnc3RyICJSYW1hICclcycgbm8gdGllbmUgaW5mb3JtYWNpw7NuIGRlIHVwc3RyZWFtIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjgxMgotbXNnaWQgIi1hIGFuZCAtciBvcHRpb25zIHRvICdnaXQgYnJhbmNoJyBkbyBub3QgbWFrZSBzZW5zZSB3aXRoIGEgYnJhbmNoIG5hbWUiCisjOiBidWlsdGluL2JyYW5jaC5jOjg0MQorbXNnaWQgIiIKKyJUaGUgLWEsIGFuZCAtciwgb3B0aW9ucyB0byAnZ2l0IGJyYW5jaCcgZG8gbm90IHRha2UgYSBicmFuY2ggbmFtZS5cbiIKKyJEaWQgeW91IG1lYW4gdG8gdXNlOiAtYXwtciAtLWxpc3QgPHBhdHRlcm4+PyIKIG1zZ3N0ciAiIgotIm9wY2lvbmVzIC1hIHkgLXIgcGFyYSAnZ2l0IGJyYW5jaCcgbm8gdGllbmVuIHNlbnRpZG8gY29uIHVuIG5vbWJyZSBkZSByYW1hIgorIkxhcyBvcGNpb25lcyAtYSwgeSAtciwgZGUgJ2dpdCBicmFuY2gnIG5vIHRvbWFuIHVuIG5vbWJyZSBkZSByYW1hLlxuIgorIsK/UXVpc2lzdGUgdXNhcjogLWF8LXIgLS1saXN0IDxwYXRyw7NuPj8iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6ODE1CisjOiBidWlsdGluL2JyYW5jaC5jOjg0NQogbXNnaWQgIiIKICJ0aGUgJy0tc2V0LXVwc3RyZWFtJyBvcHRpb24gaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZC4gUGxlYXNlIHVzZSAnLS10cmFjaycgb3IgIgogIictLXNldC11cHN0cmVhbS10bycgaW5zdGVhZC4iCkBAIC04NDExLDIwICsxMDg4NCw2NSBAQAogImxhIG9wY2nDs24gJy0tc2V0LXVwc3RyZWFtJyB5YSBubyBlcyBzb3BvcnRhZGEuIENvbnNpZGVyZSB1c2FyICctLXRyYWNrJyBvICctLSIKICJzZXQtdXBzdHJlYW0tdG8nIGVuIGNhbWJpby4iCiAKLSM6IGJ1aWx0aW4vYnVuZGxlLmM6NDUKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTUgYnVpbHRpbi9idW5kbGUuYzoyMworbXNnaWQgImdpdCBidW5kbGUgY3JlYXRlIFs8b3B0aW9ucz5dIDxmaWxlPiA8Z2l0LXJldi1saXN0IGFyZ3M+IgorbXNnc3RyICJnaXQgYnVuZGxlIGNyZWF0ZSBbPG9wY2lvbmVzPl0gPGZpbGU+IDxnaXQtcmV2LWxpc3QgYXJncz4iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTYgYnVpbHRpbi9idW5kbGUuYzoyOAorbXNnaWQgImdpdCBidW5kbGUgdmVyaWZ5IFs8b3B0aW9ucz5dIDxmaWxlPiIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSB2ZXJpZnkgWzxvcGNpb25lcz5dIDxhcmNoaXZvPiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxNyBidWlsdGluL2J1bmRsZS5jOjMzCittc2dpZCAiZ2l0IGJ1bmRsZSBsaXN0LWhlYWRzIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSBsaXN0LWhlYWRzIDxhcmNoaXZvPiBbPG5vbWJyZS1kZS1yZWY+Li4uXSIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxOCBidWlsdGluL2J1bmRsZS5jOjM4Cittc2dpZCAiZ2l0IGJ1bmRsZSB1bmJ1bmRsZSA8ZmlsZT4gWzxyZWZuYW1lPi4uLl0iCittc2dzdHIgImdpdCBidW5kbGUgdW5idW5kbGUgPGFyY2hpdm8+IFs8bm9tYnJlLWRlLXJlZj4uLi5dIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjY2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM3NQorbXNnaWQgImRvIG5vdCBzaG93IHByb2dyZXNzIG1ldGVyIgorbXNnc3RyICJubyBtb3N0cmFyIG1lZGlkb3IgZGUgcHJvZ3Jlc28iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NjggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzc3Cittc2dpZCAic2hvdyBwcm9ncmVzcyBtZXRlciIKK21zZ3N0ciAibW9zdHJhciBtZWRpZG9yIGRlIHByb2dyZXNvIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjcwIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM3OQorbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIgZHVyaW5nIG9iamVjdCB3cml0aW5nIHBoYXNlIgorbXNnc3RyICJtb3N0cmFyIG1lZGlkb3IgZGUgcHJvZ3Jlc28gZHVyYW50ZSBsYSBmYXNlIGRlIGVzY3JpdHVyYSBkZSBvYmpldG8iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NzMgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzgyCittc2dpZCAic2ltaWxhciB0byAtLWFsbC1wcm9ncmVzcyB3aGVuIHByb2dyZXNzIG1ldGVyIGlzIHNob3duIgorbXNnc3RyICJzaW1pbGFyIGEgLS1hbGwtcHJvZ3Jlc3MgY3VhbmRvIG1lZGlkb3IgZGUgcHJvZ3Jlc28gZXMgbW9zdHJhZG8iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6OTMKK21zZ2lkICJOZWVkIGEgcmVwb3NpdG9yeSB0byBjcmVhdGUgYSBidW5kbGUuIgorbXNnc3RyICJTZSBuZWNlc2l0YSB1biByZXBvc2l0b3JpbyBwYXJhIGFncnVwYXIuIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjEwNAorbXNnaWQgImRvIG5vdCBzaG93IGJ1bmRsZSBkZXRhaWxzIgorbXNnc3RyICJubyBtb3N0cmFyIGRldGFsbGVzIGRlbCBidW5kbGUiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG9rYXlcbiIKIG1zZ3N0ciAiJXMgZXN0w6EgYmllblxuIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjU4Ci1tc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKLW1zZ3N0ciAiU2UgbmVjZXNpdGEgdW4gcmVwb3NpdG9yaW8gcGFyYSBhZ3J1cGFyLiIKLQotIzogYnVpbHRpbi9idW5kbGUuYzo2MgorIzogYnVpbHRpbi9idW5kbGUuYzoxNjAKIG1zZ2lkICJOZWVkIGEgcmVwb3NpdG9yeSB0byB1bmJ1bmRsZS4iCiBtc2dzdHIgIlNlIG5lY2VzaXRhIHVuIHJlcG9zaXRvcmlvIHBhcmEgZGVzYWdydXBhci4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1ODcKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTY4IGJ1aWx0aW4vcmVtb3RlLmM6MTY4NgorbXNnaWQgImJlIHZlcmJvc2U7IG11c3QgYmUgcGxhY2VkIGJlZm9yZSBhIHN1YmNvbW1hbmQiCittc2dzdHIgInNlciB2ZXJib3NvOyB0aWVuZSBxdWUgc2VyIGFncmVnYWRvIGFudGVzIGRlIHVuIHN1YmNvbWFuZG8iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTkwIGJ1aWx0aW4vcmVtb3RlLmM6MTcxNworIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHN1YmNvbW1hbmQ6ICVzIgorbXNnc3RyICJTdWItY29tYW5kbyBkZXNjb25vY2lkbzogJXMiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1OTUKIG1zZ2lkICIiCiAiZ2l0IGNhdC1maWxlICgtdCBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1lIHwgLSIKICJwIHwgPHR5cGU+IHwgLS10ZXh0Y29udiB8IC0tZmlsdGVycykgWy0tcGF0aD08cGF0aD5dIDxvYmplY3Q+IgpAQCAtODQzMiw3ICsxMDk1MCw3IEBACiAiZ2l0IGNhdC1maWxlICgtdCBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1lIHwgLSIKICJwIHwgPHRpcG8+IHwgLS10ZXh0Y29udiB8IC0tZmlsdGVycykgWy0tcGF0aD08cnV0YT5dIDxvYmpldG8+IgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NTg4CisjOiBidWlsdGluL2NhdC1maWxlLmM6NTk2CiBtc2dpZCAiIgogImdpdCBjYXQtZmlsZSAoLS1iYXRjaCB8IC0tYmF0Y2gtY2hlY2spIFstLWZvbGxvdy1zeW1saW5rc10gWy0tdGV4dGNvbnYgfCAtLSIKICJmaWx0ZXJzXSIKQEAgLTg0NDAsMTMzICsxMDk1OCwxMzMgQEAKICJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCiAiZmlsdGVyc10iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MDkKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MTcKIG1zZ2lkICJvbmx5IG9uZSBiYXRjaCBvcHRpb24gbWF5IGJlIHNwZWNpZmllZCIKIG1zZ3N0ciAic29sbyBzZSBwdWVkZSBlc3BlY2lmaWNhciB1bmEgb3BjacOzbiBiYXRjaCIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYyNworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNQogbXNnaWQgIjx0eXBlPiBjYW4gYmUgb25lIG9mOiBibG9iLCB0cmVlLCBjb21taXQsIHRhZyIKIG1zZ3N0ciAiPHRpcG8+IHB1ZWRlIHNlcjogYmxvYiwgdHJlZSwgY29tbWl0LCB0YWciCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MjgKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzYKIG1zZ2lkICJzaG93IG9iamVjdCB0eXBlIgogbXNnc3RyICJtb3N0cmFyIGVsIHRpcG8gZGVsIG9iamV0byIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYyOQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNwogbXNnaWQgInNob3cgb2JqZWN0IHNpemUiCiBtc2dzdHIgIm1vc3RyYXIgZWwgdGFtYcOxbyBkZWwgb2JqZXRvIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjMxCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM5CiBtc2dpZCAiZXhpdCB3aXRoIHplcm8gd2hlbiB0aGVyZSdzIG5vIGVycm9yIgogbXNnc3RyICJzYWxpciBjb24gY2VybyBjdWFuZG8gbm8gaGF5YSBlcnJvciIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzMgorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MAogbXNnaWQgInByZXR0eS1wcmludCBvYmplY3QncyBjb250ZW50IgogbXNnc3RyICJyZWFsaXphciBwcmV0dHktcHJpbnQgZGVsIGNvbnRlbmlkbyBkZWwgb2JqZXRvIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM0CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQyCiBtc2dpZCAiZm9yIGJsb2Igb2JqZWN0cywgcnVuIHRleHRjb252IG9uIG9iamVjdCdzIGNvbnRlbnQiCiBtc2dzdHIgInBhcmEgb2JqZXRvcyBibG9iLCBlamVjdXRhIHRleHRjb252IGVuIGVsIGNvbnRlbmlkbyBkZWwgb2JqZXRvIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM2CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ0CiBtc2dpZCAiZm9yIGJsb2Igb2JqZWN0cywgcnVuIGZpbHRlcnMgb24gb2JqZWN0J3MgY29udGVudCIKIG1zZ3N0ciAicGFyYSBvYmpldG9zIGJsb2IsIGVqZWN1dGEgZmlsdGVycyBlbiBlbCBjb250ZW5pZG8gZGVsIG9iamV0byIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNyBnaXQtc3VibW9kdWxlLnNoOjg1NworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NSBnaXQtc3VibW9kdWxlLnNoOjEwMDIKIG1zZ2lkICJibG9iIgogbXNnc3RyICJibG9iIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM4CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ2CiBtc2dpZCAidXNlIGEgc3BlY2lmaWMgcGF0aCBmb3IgLS10ZXh0Y29udi8tLWZpbHRlcnMiCiBtc2dzdHIgInVzZSB1bmEgcnV0YSBlc3BlY8OtZmljYSBwYXJhIC0tdGV4dGNvbnYvLS1maWx0ZXJzIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjQwCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ4CiBtc2dpZCAiYWxsb3cgLXMgYW5kIC10IHRvIHdvcmsgd2l0aCBicm9rZW4vY29ycnVwdCBvYmplY3RzIgogbXNnc3RyICJwZXJtaXRhIC1zIHkgLXQgcGFyYSB0cmFiYWphciBjb24gb2JqZXRvcyByb3RvcyBvIGNvcnJ1cHRvcyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0OQogbXNnaWQgImJ1ZmZlciAtLWJhdGNoIG91dHB1dCIKIG1zZ3N0ciAic2FsaWRhIGJ1ZmZlciAtLWJhdGNoIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjQzCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjUxCiBtc2dpZCAic2hvdyBpbmZvIGFuZCBjb250ZW50IG9mIG9iamVjdHMgZmVkIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJtb3N0cmFyIGluZm8geSBjb250ZW50IGRlIGxvcyBvYmpldG9zIGFsaW1lbnRhZG9zIHBvciBzdGFuZGFyZCBpbnB1dCIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1NQogbXNnaWQgInNob3cgaW5mbyBhYm91dCBvYmplY3RzIGZlZCBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAibW9zdHJhciBpbmZvIGRlIGxvcyBvYmpldG9zIGFsaW1lbnRhZG9zIHBvciBzdGFuZGFyZCBpbnB1dCIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1MQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1OQogbXNnaWQgImZvbGxvdyBpbi10cmVlIHN5bWxpbmtzICh1c2VkIHdpdGggLS1iYXRjaCBvciAtLWJhdGNoLWNoZWNrKSIKIG1zZ3N0ciAiIgogInNlZ3VpciBsb3MgZW5sYWNlcyBzaW1iw7NsaWNvcyBlbiBlbCDDoXJib2wgKHVzYWRvIGNvbiAtLWJhdGNoIG8gLS1iYXRjaC1jaGVjaykiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTMKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NjEKIG1zZ2lkICJzaG93IGFsbCBvYmplY3RzIHdpdGggLS1iYXRjaCBvciAtLWJhdGNoLWNoZWNrIgogbXNnc3RyICJtb3N0cmFyIHRvZG9zIGxvcyBvYmpldG9zIGNvbiAtLWJhdGNoIG8gLS1iYXRjaC1jaGVjayIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1NQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY2MwogbXNnaWQgImRvIG5vdCBvcmRlciAtLWJhdGNoLWFsbC1vYmplY3RzIG91dHB1dCIKIG1zZ3N0ciAibm8gb3JkZW5hciBlbCBvdXRwdXQgZGUgLS1iYXRjaC1hbGwtb2JqZWN0cyIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTIKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjEzCiBtc2dpZCAiZ2l0IGNoZWNrLWF0dHIgWy1hIHwgLS1hbGwgfCA8YXR0cj4uLi5dIFstLV0gPHBhdGhuYW1lPi4uLiIKIG1zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgWy1hIHwgLS1hbGwgfCA8YXR0cj4uLi5dIFstLV0gPG5vbWJyZS1kZS1ydXRhPi4uLiIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTMKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjE0CiBtc2dpZCAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSIKIG1zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjAKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIxCiBtc2dpZCAicmVwb3J0IGFsbCBhdHRyaWJ1dGVzIHNldCBvbiBmaWxlIgogbXNnc3RyICJyZXBvcnRhciB0b2RvcyBsb3MgYXRyaWJ1dG9zIGNvbmZpZ3VyYWRvcyBlbiBlbCBhcmNoaXZvIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMQorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjIKIG1zZ2lkICJ1c2UgLmdpdGF0dHJpYnV0ZXMgb25seSBmcm9tIHRoZSBpbmRleCIKIG1zZ3N0ciAidXNlIC5naXRhdHRyaWJ1dGVzIHNvbG8gZGVzZGUgZWwgw61uZGljZSIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNCBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAxCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMyBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI1IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKIG1zZ2lkICJyZWFkIGZpbGUgbmFtZXMgZnJvbSBzdGRpbiIKIG1zZ3N0ciAibGVlciBub21icmVzIGRlIGFyY2hpdm9zIGRlIHN0ZGluIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyNCBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI2CisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyNSBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI3CiBtc2dpZCAidGVybWluYXRlIGlucHV0IGFuZCBvdXRwdXQgcmVjb3JkcyBieSBhIE5VTCBjaGFyYWN0ZXIiCiBtc2dzdHIgInRlcm1pbmFyIHJlZ2lzdHJvcyBkZSBlbnRyYWRhIHkgc2FsaWRhIGNvbiB1biBjYXLDoWN0ZXIgTlVMIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjIwIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM0IGJ1aWx0aW4vZ2MuYzo1MTcKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTUKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjEgYnVpbHRpbi9jaGVja291dC5jOjE0NjQgYnVpbHRpbi9nYy5jOjUzNworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5OQogbXNnaWQgInN1cHByZXNzIHByb2dyZXNzIHJlcG9ydGluZyIKIG1zZ3N0ciAic3VwcmltaXIgZWwgcmVwb3J0ZSBkZSBwcm9ncmVzbyIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOQogbXNnaWQgInNob3cgbm9uLW1hdGNoaW5nIGlucHV0IHBhdGhzIgogbXNnc3RyICJtb3N0cmFyIHJ1dGFzIGRlIGVudHJhZGEgcXVlIG5vIGNvbmN1ZXJkYW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzAKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzEKIG1zZ2lkICJpZ25vcmUgaW5kZXggd2hlbiBjaGVja2luZyIKIG1zZ3N0ciAiaWdub3JhciBlbCDDrW5kaWNlIGN1YW5kbyBzZSByZXZpc2UiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTU5CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2MwogbXNnaWQgImNhbm5vdCBzcGVjaWZ5IHBhdGhuYW1lcyB3aXRoIC0tc3RkaW4iCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGVzcGVjaWZpY2FyIGxvcyBub21icmVzIGRlIHJ1dGFzIGNvbiAtLXN0ZGluIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2MgorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjYKIG1zZ2lkICIteiBvbmx5IG1ha2VzIHNlbnNlIHdpdGggLS1zdGRpbiIKIG1zZ3N0ciAiLXogc8OzbG8gdGllbmUgc2VudGlkbyBjb24gLS1zdGRpbiIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjQKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY4CiBtc2dpZCAibm8gcGF0aCBzcGVjaWZpZWQiCiBtc2dzdHIgInJ1dGEgbm8gZXNwZWNpZmljYWRhIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2OAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzIKIG1zZ2lkICItLXF1aWV0IGlzIG9ubHkgdmFsaWQgd2l0aCBhIHNpbmdsZSBwYXRobmFtZSIKIG1zZ3N0ciAiLS1xdWlldCBzb2xvIGVzIHbDoWxpZG8gY29uIHVuIG5vbWJyZSBkZSBydXRhIMO6bmljbyIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzAKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTc0CiBtc2dpZCAiY2Fubm90IGhhdmUgYm90aCAtLXF1aWV0IGFuZCAtLXZlcmJvc2UiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIHRlbmVyIGFtYm9zIC0tcXVpZXQgeSAtLXZlcmJvc2UiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTczCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3NwogbXNnaWQgIi0tbm9uLW1hdGNoaW5nIGlzIG9ubHkgdmFsaWQgd2l0aCAtLXZlcmJvc2UiCiBtc2dzdHIgIi0tbm9uLW1hdGNoaW5nIHPDs2xvIGVzIHbDoWxpZGEgY29uIC0tdmVyYm9zZSIKIApAQCAtODU4Nyw1NiArMTExMDUsNTYgQEAKIG1zZ2lkICJubyBjb250YWN0cyBzcGVjaWZpZWQiCiBtc2dzdHIgImNvbnRhY3RvcyBubyBlc3BlY2lmaWNhZG9zIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTI4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTMxCiBtc2dpZCAiZ2l0IGNoZWNrb3V0LWluZGV4IFs8b3B0aW9ucz5dIFstLV0gWzxmaWxlPi4uLl0iCiBtc2dzdHIgImdpdCBjaGVja291dC1pbmRleCBbPG9wY2lvbmVzPl0gWy0tXSBbPGFyY2hpdm8+Li4uXSIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE0NQorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE0OAogbXNnaWQgInN0YWdlIHNob3VsZCBiZSBiZXR3ZWVuIDEgYW5kIDMgb3IgYWxsIgogbXNnc3RyICJzdGFnZSB0aWVuZSBxdWUgZXN0YXIgZW50cmUgMSB5IDMgbyBhbGwiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjQKIG1zZ2lkICJjaGVjayBvdXQgYWxsIGZpbGVzIGluIHRoZSBpbmRleCIKIG1zZ3N0ciAicmV2aXNhciB0b2RvcyBsb3MgYXJjaGl2b3MgZW4gZWwgw61uZGljZSIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2MgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NQogbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBleGlzdGluZyBmaWxlcyIKIG1zZ3N0ciAiZm9yemFyIHNvYnJlZXNjcml0dXJhIGRlIGxvcyBhcmNoaXZvcyBleGlzdGVudGVzIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY0CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY3CiBtc2dpZCAibm8gd2FybmluZyBmb3IgZXhpc3RpbmcgZmlsZXMgYW5kIGZpbGVzIG5vdCBpbiBpbmRleCIKIG1zZ3N0ciAiIgogIm5vIGhheSBhZHZlcnRlbmNpYXMgcGFyYSBsb3MgYXJjaGl2b3MgZXhpc3RlbnRlcyB5IGxvcyBhcmNoaXZvcyBubyBlc3TDoW4gZW4gIgogImVsIMOtbmRpY2UiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjkKIG1zZ2lkICJkb24ndCBjaGVja291dCBuZXcgZmlsZXMiCiBtc2dzdHIgIm5vIHJldmlzYXIgYXJjaGl2b3MgbnVldm9zIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcxCiBtc2dpZCAidXBkYXRlIHN0YXQgaW5mb3JtYXRpb24gaW4gdGhlIGluZGV4IGZpbGUiCiBtc2dzdHIgImFjdHVhbGl6YXIgaW5mb3JtYWNpw7NuIGRlIGVzdGFkbyBlbiBlbCBhcmNoaXZvIMOtbmRpY2UiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzUKIG1zZ2lkICJyZWFkIGxpc3Qgb2YgcGF0aHMgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgImxlZXIgbGlzdGEgZGUgcnV0YXMgZGVzZGUgc3RhbmRhcmQgaW5wdXQiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzcKIG1zZ2lkICJ3cml0ZSB0aGUgY29udGVudCB0byB0ZW1wb3JhcnkgZmlsZXMiCiBtc2dzdHIgImVzY3JpYmlyIGVsIGNvbnRlbmlkbyBlbiB1biBhcmNoaXZvIHRlbXBvcmFsIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc1IGJ1aWx0aW4vY29sdW1uLmM6MzEKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzcxCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1MwotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY2OAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3OCBidWlsdGluL2NvbHVtbi5jOjMxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTEgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NzIKIG1zZ2lkICJzdHJpbmciCiBtc2dzdHIgInN0cmluZyIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3OQogbXNnaWQgIndoZW4gY3JlYXRpbmcgZmlsZXMsIHByZXBlbmQgPHN0cmluZz4iCiBtc2dzdHIgImN1YW5kbyBjcmVlIGFyY2hpdm9zLCBhbnRlcG9uZXIgPHN0cmluZz4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxODEKIG1zZ2lkICJjb3B5IG91dCB0aGUgZmlsZXMgZnJvbSBuYW1lZCBzdGFnZSIKIG1zZ3N0ciAiY29waWFyIGxvcyBhcmNoaXZvcyBkZWwgc3RhZ2Ugbm9tYnJhZG8iCiAKQEAgLTg2NDgsMTA1ICsxMTE2NiwxNTggQEAKIG1zZ2lkICJnaXQgY2hlY2tvdXQgWzxvcHRpb25zPl0gWzxicmFuY2g+XSAtLSA8ZmlsZT4uLi4iCiBtc2dzdHIgImdpdCBjaGVja291dCBbPG9wY2lvbmVzPl0gWzxyYW1hPl0gLS0gPGFyY2hpdm8+Li4uIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ0IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNworbXNnaWQgImdpdCBzd2l0Y2ggWzxvcHRpb25zPl0gWzxicmFuY2g+XSIKK21zZ3N0ciAiZ2l0IHN3aXRjaCBbPG9wY2lvbmVzPl0gWzxyYW1hPl0iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MgorbXNnaWQgImdpdCByZXN0b3JlIFs8b3B0aW9ucz5dIFstLXNvdXJjZT08YnJhbmNoPl0gPGZpbGU+Li4uIgorbXNnc3RyICJnaXQgcmVzdG9yZSBbPG9wY2lvbmVzPl0gWy0tc291cmNlPTxyYW1hPl0gLS0gPGFyY2hpdm8+Li4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc1IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgb3VyIHZlcnNpb24iCiBtc2dzdHIgInJ1dGEgJyVzJyBubyB0aWVuZSBudWVzdHJhIHZlcnNpw7NuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzkKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjIxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSB0aGVpciB2ZXJzaW9uIgogbXNnc3RyICJydXRhICclcycgbm8gdGllbmUgc3UgdmVyc2nDs24iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgYWxsIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKIG1zZ3N0ciAicnV0YSAnJXMnIG5vIHRpZW5lIHRvZGFzIGxhcyB2ZXJzaW9uZXMgbmVjZXNhcmlhcyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjIwNgorIzogYnVpbHRpbi9jaGVja291dC5jOjI0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSBuZWNlc3NhcnkgdmVyc2lvbnMiCiBtc2dzdHIgInJ1dGEgJyVzJyBubyB0aWVuZSB2ZXJzaW9uZXMgbmVjZXNhcmlhcyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjIyNAorIzogYnVpbHRpbi9jaGVja291dC5jOjI2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcyc6IGNhbm5vdCBtZXJnZSIKIG1zZ3N0ciAicnV0YSAnJXMnOiBubyBzZSBwdWVkZSBmdXNpb25hciIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjI0MAorIzogYnVpbHRpbi9jaGVja291dC5jOjI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gYWRkIG1lcmdlIHJlc3VsdCBmb3IgJyVzJyIKIG1zZ3N0ciAiSW5jYXBheiBkZSBhZ3JlZ2FyIHJlc3VsdGFkb3MgZGUgZnVzacOzbiBhICclcyciCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNjIgYnVpbHRpbi9jaGVja291dC5jOjI2NSBidWlsdGluL2NoZWNrb3V0LmM6MjY4Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjcxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY3JlYXRlZCAlZCBtZXJnZSBjb25mbGljdCIKK21zZ2lkX3BsdXJhbCAiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0cyIKK21zZ3N0clswXSAiUmVjcmVhZG8gJWQgY29uZmxpY3RvIGRlIG1lcmdlIgorbXNnc3RyWzFdICJSZWNyZWFkb3MgJWQgY29uZmxpY3RvcyBkZSBtZXJnZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4MgorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSAlcyIKK21zZ2lkX3BsdXJhbCAiVXBkYXRlZCAlZCBwYXRocyBmcm9tICVzIgorbXNnc3RyWzBdICJBY3R1YWxpemFkYSAlZCBydXRhIHBhcmEgJXMiCittc2dzdHJbMV0gIkFjdHVhbGl6YWRhcyAlZCBydXRhcyBwYXJhICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mzg5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0ZWQgJWQgcGF0aCBmcm9tIHRoZSBpbmRleCIKK21zZ2lkX3BsdXJhbCAiVXBkYXRlZCAlZCBwYXRocyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0clswXSAiQWN0dWFsaXphZGEgJWQgcnV0YSBkZXNkZSBlbCBpbmRleCIKK21zZ3N0clsxXSAiQWN0dWFsaXphZGFzICVkIHJ1dGFzIGRlc2RlIGVsIGluZGV4IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDEyIGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTUgYnVpbHRpbi9jaGVja291dC5jOjQxOAorIzogYnVpbHRpbi9jaGVja291dC5jOjQyMgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggdXBkYXRpbmcgcGF0aHMiCiBtc2dzdHIgIiclcycgbm8gcHVlZGUgc2VyIHVzYWRhIGNvbiBydXRhcyBhY3R1YWxpemFkYXMiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzQgYnVpbHRpbi9jaGVja291dC5jOjI3NworIzogYnVpbHRpbi9jaGVja291dC5jOjQyNSBidWlsdGluL2NoZWNrb3V0LmM6NDI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKIG1zZ3N0ciAiJyVzJyBubyBwdWVkZSBzZXIgdXNhZG8gY29uICVzIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjgwCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCB1cGRhdGUgcGF0aHMgYW5kIHN3aXRjaCB0byBicmFuY2ggJyVzJyBhdCB0aGUgc2FtZSB0aW1lLiIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgYWN0dWFsaXphciBydXRhcyB5IGNhbWJpYXIgYSBsYSByYW1hICclcycgYWwgbWlzbW8gdGllbXBvLiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjM0OSBidWlsdGluL2NoZWNrb3V0LmM6MzU2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5laXRoZXIgJyVzJyBvciAnJXMnIGlzIHNwZWNpZmllZCIKK21zZ3N0ciAibmkgJyVzJyBvICclcycgZXN0w6FuIGVzcGVjaWZpY2Fkb3MiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBtdXN0IGJlIHVzZWQgd2hlbiAnJXMnIGlzIG5vdCBzcGVjaWZpZWQiCittc2dzdHIgIiclcycgdGllbmUgcXVlIHNlciB1c2FkbyBjdWFuZG8gJyVzJyBubyBlcyBlc3BlY2lmaWNhZG8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NDUgYnVpbHRpbi9jaGVja291dC5jOjQ1MAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG9yICclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKK21zZ3N0ciAiJyVzJyBvICclcycgbm8gcHVlZGUgc2VyIHVzYWRvIGNvbiAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjUwOSBidWlsdGluL2NoZWNrb3V0LmM6NTE2CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBpcyB1bm1lcmdlZCIKIG1zZ3N0ciAicnV0YSAnJXMnIG5vIGVzdGEgZnVzaW9uYWRhIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NjA4CisjOiBidWlsdGluL2NoZWNrb3V0LmM6Njg0IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MTA2CiBtc2dpZCAieW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiCi1tc2dzdHIgIm5lY2VzaXRhIHJlc29sdmVyIHN1IMOtbmRpY2UgYWN0dWFsIHByaW1lcm8iCittc2dzdHIgIm5lY2VzaXRhcyByZXNvbHZlciB0dSDDrW5kaWNlIGFjdHVhbCBwcmltZXJvIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NzQ1CisjOiBidWlsdGluL2NoZWNrb3V0LmM6NzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjYW5ub3QgY29udGludWUgd2l0aCBzdGFnZWQgY2hhbmdlcyBpbiB0aGUgZm9sbG93aW5nIGZpbGVzOlxuIgorIiVzIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgY29udGludWFyIGNvbiBsb3MgY2FtYmlvcyBlbiBzdGFnZSBlbiBsb3Mgc2lndWllbnRlcyBhcmNoaXZvczpcbiIKKyIlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjgzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW4gbm90IGRvIHJlZmxvZyBmb3IgJyVzJzogJXNcbiIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgaGFjZXIgcmVmbG9nIHBhcmEgJyVzJzogJXNcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc4NgorIzogYnVpbHRpbi9jaGVja291dC5jOjg3OQogbXNnaWQgIkhFQUQgaXMgbm93IGF0IgogbXNnc3RyICJIRUFEIGVzdMOhIGFob3JhIGVuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NzkwIGJ1aWx0aW4vY2xvbmUuYzo2OTIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODMgYnVpbHRpbi9jbG9uZS5jOjcxNwogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgSEVBRCIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBhY3R1YWxpemFyICBIRUFEIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Nzk0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlc2V0IGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIlJlaW5pY2lhciByYW1hICclcydcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc5NworIzogYnVpbHRpbi9jaGVja291dC5jOjg5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJBbHJlYWR5IG9uICclcydcbiIKIG1zZ3N0ciAiWWEgZW4gJyVzJ1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODAxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN3aXRjaGVkIHRvIGFuZCByZXNldCBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICJSYW1hIHJlaW5pY2lhZGEgeSBjYW1iaWFkYSBhICclcydcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjgwMyBidWlsdGluL2NoZWNrb3V0LmM6MTE2NgorIzogYnVpbHRpbi9jaGVja291dC5jOjg5NiBidWlsdGluL2NoZWNrb3V0LmM6MTMyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJTd2l0Y2hlZCB0byBhIG5ldyBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICJDYW1iaWFkbyBhIG51ZXZhIHJhbWEgJyVzJ1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODA1CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN3aXRjaGVkIHRvIGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIkNhbWJpYWRvIGEgcmFtYSAnJXMnXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4NTYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIC4uLiBhbmQgJWQgbW9yZS5cbiIKIG1zZ3N0ciAiIC4uLiB5ICVkIG3DoXMuXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4NjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIldhcm5pbmc6IHlvdSBhcmUgbGVhdmluZyAlZCBjb21taXQgYmVoaW5kLCBub3QgY29ubmVjdGVkIHRvXG4iCkBAIC04NzU5LDE3ICsxMTMzMCwxNyBAQAogIlxuIgogIiVzXG4iCiBtc2dzdHJbMF0gIiIKLSJQZWxpZ3JvOiBlc3TDoSBzYWxpZW5kbyAlZCBjb21taXQgYXRyw6FzLCBubyBlc3TDoSBjb25lY3RhZG9cbiIKKyJQZWxpZ3JvOiBlc3TDoXMgc2FsaWVuZG8gJWQgY29tbWl0IGF0csOhcywgbm8gZXN0w6EgY29uZWN0YWRvXG4iCiAiYSBuaW5ndW5hIHJhbWE6XG4iCiAiXG4iCiAiJXNcbiIKIG1zZ3N0clsxXSAiIgotIlBlbGlncm86IGVzdMOhIHNhbGllbmRvICVkIGNvbW1pdHMgYXRyw6FzLCBubyBlc3TDoSBjb25lY3RhZG9cbiIKKyJQZWxpZ3JvOiBlc3TDoXMgc2FsaWVuZG8gJWQgY29tbWl0cyBhdHLDoXMsIG5vIGVzdMOhIGNvbmVjdGFkb1xuIgogImEgbmluZ3VuYSByYW1hOlxuIgogIlxuIgogIiVzXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3YW50IHRvIGtlZXAgaXQgYnkgY3JlYXRpbmcgYSBuZXcgYnJhbmNoLCB0aGlzIG1heSBiZSBhIGdvb2QgdGltZVxuIgpAQCAtODc4NCwxODYgKzExMzU1LDQxIEBACiAiIGdpdCBicmFuY2ggPG5ldy1icmFuY2gtbmFtZT4gJXNcbiIKICJcbiIKIG1zZ3N0clswXSAiIgotIlNpIHF1aWVyZSBjb25zZXJ2YXJsbyBjcmVhbmRvIHVuYSBudWV2YSByYW1hLCBlc3RlIGVzIHVuIGJ1ZW4gbW9tZW50b1xuIgorIlNpIHF1aWVyZXMgY29uc2VydmFybG8gY3JlYW5kbyB1bmEgbnVldmEgcmFtYSwgZXN0ZSBlcyB1biBidWVuIG1vbWVudG9cbiIKICJwYXJhIGhhY2VybG86XG4iCiAiXG4iCiAiIGdpdCBicmFuY2ggPG51ZXZvLW5vbWJyZS1kZS1yYW1hPiAlc1xuIgogIlxuIgogbXNnc3RyWzFdICIiCi0iU2kgcXVpZXJlIGNvbnNlcnZhcmxvcyBjcmVhbmRvIHVuYSBudWV2YSByYW1hLCBlc3RlIGVzIHVuIGJ1ZW4gbW9tZW50b1xuIgorIlNpIHF1aWVyZXMgY29uc2VydmFybG9zIGNyZWFuZG8gdW5hIG51ZXZhIHJhbWEsIGVzdGUgZXMgdW4gYnVlbiBtb21lbnRvXG4iCiAicGFyYSBoYWNlcmxvOlxuIgogIlxuIgogIiBnaXQgYnJhbmNoIDxub21icmUtZGUtcmFtYT4gJXNcbiIKICJcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjkxMworIzogYnVpbHRpbi9jaGVja291dC5jOjEwMDkKIG1zZ2lkICJpbnRlcm5hbCBlcnJvciBpbiByZXZpc2lvbiB3YWxrIgogbXNnc3RyICJlcnJvciBpbnRlcm5vIGVuIGNhbWlubyBkZSByZXZpc2nDs24iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5MTcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDEzCiBtc2dpZCAiUHJldmlvdXMgSEVBRCBwb3NpdGlvbiB3YXMiCiBtc2dzdHIgIkxhIHBvc2ljacOzbiBwcmV2aWEgZGUgSEVBRCBlcmEiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NDUgYnVpbHRpbi9jaGVja291dC5jOjExNjEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDUzIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzE1CiBtc2dpZCAiWW91IGFyZSBvbiBhIGJyYW5jaCB5ZXQgdG8gYmUgYm9ybiIKIG1zZ3N0ciAiRXN0w6FzIGVuIHVuYSByYW1hIHBvciBuYWNlciIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEwNjYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTI4CiAjLCBjLWZvcm1hdAotbXNnaWQgIm9ubHkgb25lIHJlZmVyZW5jZSBleHBlY3RlZCwgJWQgZ2l2ZW4uIgotbXNnc3RyICJzb2xvIHVuYSByZWZlcmVuY2lhIGVzcGVyYWRhLCAlZCBlbnRyZWdhZGFzLiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExMDcgYnVpbHRpbi93b3JrdHJlZS5jOjI4OSBidWlsdGluL3dvcmt0cmVlLmM6NDQ0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKLW1zZ3N0ciAicmVmZXJlbmNpYSBpbnbDoWxpZGE6ICVzIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTEzNgotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWZlcmVuY2UgaXMgbm90IGEgdHJlZTogJXMiCi1tc2dzdHIgImxhIHJlZmVyZW5jaWEgbm8gZXMgbiDDoXJib2w6ICVzIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE3NQotbXNnaWQgInBhdGhzIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgotbXNnc3RyICJydXRhcyBubyBwdWVkZW4gc2VyIHVzYWRhcyBjb24gY2FtYmlvcyBkZSByYW1hIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE3OCBidWlsdGluL2NoZWNrb3V0LmM6MTE4MgotIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgotbXNnc3RyICInJXMnIG5vIHB1ZWRlIHNlciB1c2FkbyBjb24gY2FtYmlvcyBkZSByYW1hcyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExODYgYnVpbHRpbi9jaGVja291dC5jOjExODkgYnVpbHRpbi9jaGVja291dC5jOjExOTQKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTk3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAnJXMnIgotbXNnc3RyICInJXMnIG5vIHB1ZWRlIHNlciB1c2FkbyBjb24gJyVzJyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMDIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ2Fubm90IHN3aXRjaCBicmFuY2ggdG8gYSBub24tY29tbWl0ICclcyciCi1tc2dzdHIgIk5vIHNlIHB1ZWRlIGNhbWJpYXIgcmFtYSBhIHVuICclcycgc2luIGNvbW1pdHMiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM1IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM3IGJ1aWx0aW4vY2xvbmUuYzoxMTkKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY5IGJ1aWx0aW4vcmVtb3RlLmM6MTcxIGJ1aWx0aW4vd29ya3RyZWUuYzo0ODgKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTAKLW1zZ2lkICJicmFuY2giCi1tc2dzdHIgInJhbWEiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM2Ci1tc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCi1tc2dzdHIgImNyZWFyIHkgaGFjZXIgY2hlY2tvdXQgYSB1bmEgbnVldmEgcmFtYSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMzgKLW1zZ2lkICJjcmVhdGUvcmVzZXQgYW5kIGNoZWNrb3V0IGEgYnJhbmNoIgotbXNnc3RyICJjcmVhci9yZWluaWNpYXIgeSBoYWNlciBjaGVja291dCBhIHVuYSByYW1hIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIzOQotbXNnaWQgImNyZWF0ZSByZWZsb2cgZm9yIG5ldyBicmFuY2giCi1tc2dzdHIgImNyZWFyIHVuIHJlZmxvZyBwYXJhIHVuYSBudWV2YSByYW1hIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MCBidWlsdGluL3dvcmt0cmVlLmM6NDkyCi1tc2dpZCAiZGV0YWNoIEhFQUQgYXQgbmFtZWQgY29tbWl0IgotbXNnc3RyICJkZXNhY29wbGFyIEhFQUQgZW4gZWwgY29tbWl0IG5vbWJyYWRvIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MQotbXNnaWQgInNldCB1cHN0cmVhbSBpbmZvIGZvciBuZXcgYnJhbmNoIgotbXNnc3RyICJjb25maWd1cmFyIGluZm8gZGUgdXBzdHJlYW0gcGFyYSB1bmEgcmFtYSBudWV2YSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDMKLW1zZ2lkICJuZXctYnJhbmNoIgotbXNnc3RyICJudWV2YS1yYW1hIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MwotbXNnaWQgIm5ldyB1bnBhcmVudGVkIGJyYW5jaCIKLW1zZ3N0ciAibnVldmEgcmFtYSBubyBlbXBhcmVudGFkYSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDUKLW1zZ2lkICJjaGVja291dCBvdXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCi1tc2dzdHIgImhhY2VyIGNoZWNrb3V0IGEgIG51ZXN0cmEgdmVyc2nDs24gcGFyYSBhcmNoaXZvcyBzaW4gZnVzaW9uYXIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQ4Ci1tc2dpZCAiY2hlY2tvdXQgdGhlaXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCi1tc2dzdHIgImhhY2VyIGNoZWNrb3V0IGEgc3UgdmVyc2nDs24gcGFyYSBsb3MgYXJjaGl2b3Mgc2luIGZ1c2lvbmFyIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1MAotbXNnaWQgImZvcmNlIGNoZWNrb3V0ICh0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMpIgotbXNnc3RyICJmb3J6YXIgZWwgY2hlY2tvdXQgKGRlc2NhcnRhciBtb2RpZmljYWNpb25lcyBsb2NhbGVzKSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTIKLW1zZ2lkICJwZXJmb3JtIGEgMy13YXkgbWVyZ2Ugd2l0aCB0aGUgbmV3IGJyYW5jaCIKLW1zZ3N0ciAicmVhbGl6YXIgdW5hIGZ1c2nDs24gZGUgdHJlcyB2w61hcyBjb24gbGEgcmFtYSBudWV2YSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTQgYnVpbHRpbi9tZXJnZS5jOjI3NQotbXNnaWQgInVwZGF0ZSBpZ25vcmVkIGZpbGVzIChkZWZhdWx0KSIKLW1zZ3N0ciAiYWN0dWFsaXphciBhcmNoaXZvcyBpZ25vcmFkb3MgKGRlZmF1bHQpIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1NiBidWlsdGluL2xvZy5jOjE1NzMgcGFyc2Utb3B0aW9ucy5oOjI3NAotbXNnaWQgInN0eWxlIgotbXNnc3RyICJlc3RpbG8iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU3Ci1tc2dpZCAiY29uZmxpY3Qgc3R5bGUgKG1lcmdlIG9yIGRpZmYzKSIKLW1zZ3N0ciAiY29uZmxpY3RvIGRlIGVzdGlsb3MgKG1lcmdlIG8gZGlmZjMpIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI2MAotbXNnaWQgImRvIG5vdCBsaW1pdCBwYXRoc3BlY3MgdG8gc3BhcnNlIGVudHJpZXMgb25seSIKLW1zZ3N0ciAibm8gbGltaXRhciBwYXRoc3BlY3MgYSBkaXNwZXJzYXIgZW50cmFkYXMgc29sYW1lbnRlIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI2MgotbXNnaWQgInNlY29uZCBndWVzcyAnZ2l0IGNoZWNrb3V0IDxuby1zdWNoLWJyYW5jaD4nIgotbXNnc3RyICJzZWd1bmRhIG9wY2nDs24gJ2dpdCBjaGVja291dCA8bm8taGF5LXRhbC1yYW1hPiciCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjY0Ci1tc2dpZCAiZG8gbm90IGNoZWNrIGlmIGFub3RoZXIgd29ya3RyZWUgaXMgaG9sZGluZyB0aGUgZ2l2ZW4gcmVmIgotbXNnc3RyICJubyByZXZpc2Ugc2kgb3RybyDDoXJib2wgZGUgdHJhYmFqbyBjb250aWVuZSBsYSByZWYgZW50cmVnYWRhIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI2OCBidWlsdGluL2Nsb25lLmM6ODYgYnVpbHRpbi9mZXRjaC5jOjE0MQotIzogYnVpbHRpbi9tZXJnZS5jOjI3MiBidWlsdGluL3B1bGwuYzoxMjkgYnVpbHRpbi9wdXNoLmM6NTcyCi0jOiBidWlsdGluL3NlbmQtcGFjay5jOjE3NAotbXNnaWQgImZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKLW1zZ3N0ciAiZm9yemFyIGVsIHJlcG9ydGUgZGUgcHJvZ3Jlc28iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjk4Ci1tc2dpZCAiLWIsIC1CIGFuZCAtLW9ycGhhbiBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgotbXNnc3RyICItYiwgLUIgeSAtLW9ycGhhbiBzb24gbXV0dWFtZW50ZSBleGNsdXNpdmFzIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTMxNQotbXNnaWQgIi0tdHJhY2sgbmVlZHMgYSBicmFuY2ggbmFtZSIKLW1zZ3N0ciAiLS10cmFjayBuZWNlc2l0YSBlbCBub21icmUgZGUgdW5hIHJhbWEiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzIwCi1tc2dpZCAibWlzc2luZyBicmFuY2ggbmFtZTsgdHJ5IC1iIgotbXNnc3RyICJmYWx0YSBub21icmUgZGUgcmFtYTsgcHJ1ZWJhIC1iIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTM1NwotbXNnaWQgImludmFsaWQgcGF0aCBzcGVjaWZpY2F0aW9uIgotbXNnc3RyICJlc3BlY2lmaWNhY2nDs24gZGUgcnV0YSBpbnbDoWxpZGEiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY0Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiclcycgaXMgbm90IGEgY29tbWl0IGFuZCBhIGJyYW5jaCAnJXMnIGNhbm5vdCBiZSBjcmVhdGVkIGZyb20gaXQiCi1tc2dzdHIgIiclcycgbm8gZXMgdW4gY29tbWl0IHkgdW5hIHJhbWEgJyVzJyBubyBwdWVkZSBzZXIgY3JlYWRhIGRlc2RlIGVzdGUiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdpdCBjaGVja291dDogLS1kZXRhY2ggZG9lcyBub3QgdGFrZSBhIHBhdGggYXJndW1lbnQgJyVzJyIKLW1zZ3N0ciAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBubyB0b21hIHVuIGFyZ3VtZW50byBkZSBydXRhICclcyciCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzcyCiBtc2dpZCAiIgotImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIGFuZCAtLW1lcmdlIGFyZSBpbmNvbXBhdGlibGUgd2hlblxuIgotImNoZWNraW5nIG91dCBvZiB0aGUgaW5kZXguIgorIiclcycgY291bGQgYmUgYm90aCBhIGxvY2FsIGZpbGUgYW5kIGEgdHJhY2tpbmcgYnJhbmNoLlxuIgorIlBsZWFzZSB1c2UgLS0gKGFuZCBvcHRpb25hbGx5IC0tbm8tZ3Vlc3MpIHRvIGRpc2FtYmlndWF0ZSIKIG1zZ3N0ciAiIgotImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIHkgLS1tZXJnZSBzb24gaW5jb21wYXRpYmxlcyBjdWFuZG9cbiIKLSJzZSByZXZpc2EgZnVlcmEgZGVsIMOtbmRpY2UuIgorIiclcycgcHVlZGUgc2VyIHRhbnRvIHVuIGFyY2hpdm8gbG9jYWwgY29tbyB1bmEgcmFtYSBkZSByYXN0cmVvLlxuIgorIlBvciBmYXZvciB1c2UgLS0gKHkgb3BjaW9uYWxtZW50ZSAtLW5vLWd1ZXNzKSBwYXJhIGRlc2FtYmlndWFyIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTM5MgotIywgYy1mb3JtYXQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTM1CiBtc2dpZCAiIgotIiclcycgbWF0Y2hlZCBtb3JlIHRoYW4gb25lIHJlbW90ZSB0cmFja2luZyBicmFuY2guXG4iCi0iV2UgZm91bmQgJWQgcmVtb3RlcyB3aXRoIGEgcmVmZXJlbmNlIHRoYXQgbWF0Y2hlZC4gU28gd2UgZmVsbCBiYWNrXG4iCi0ib24gdHJ5aW5nIHRvIHJlc29sdmUgdGhlIGFyZ3VtZW50IGFzIGEgcGF0aCwgYnV0IGZhaWxlZCB0aGVyZSB0b28hXG4iCi0iXG4iCiAiSWYgeW91IG1lYW50IHRvIGNoZWNrIG91dCBhIHJlbW90ZSB0cmFja2luZyBicmFuY2ggb24sIGUuZy4gJ29yaWdpbicsXG4iCiAieW91IGNhbiBkbyBzbyBieSBmdWxseSBxdWFsaWZ5aW5nIHRoZSBuYW1lIHdpdGggdGhlIC0tdHJhY2sgb3B0aW9uOlxuIgogIlxuIgpAQCAtODk3MywxMCArMTEzOTksNiBAQAogIm9uZSByZW1vdGUsIGUuZy4gdGhlICdvcmlnaW4nIHJlbW90ZSwgY29uc2lkZXIgc2V0dGluZ1xuIgogImNoZWNrb3V0LmRlZmF1bHRSZW1vdGU9b3JpZ2luIGluIHlvdXIgY29uZmlnLiIKIG1zZ3N0ciAiIgotIiclcycgYWNlcnTDsyBtw6FzIGRlIHVuYSByYW1hIHJlbW90YSByYXN0cmVhZGEuXG4iCi0iRW5jb250cmFtb3MgJWQgcmVtb3RvcyBjb24gdW5hIHJlZmVyZW5jaWEgcXVlIGNvbmN1ZXJkYS4gQXPDrSBxdWUgdm9sdmVtb3NcbiIKLSJhIGludGVudGFyIHJlc29sdmVyIGVsIGFyZ3VtZW50byBjb21vIHVuYSBydXRhLCBwZXJvIGVzbyB0YW1iacOpbiBmYWxsw7MhXG4iCi0iXG4iCiAiU2kgcXVlcsOtYXMgaGFjZXIgdW4gY2hlY2sgb3V0IGEgdW5hIHJhbWEgcmFzdHJlYWRhIHJlbW90YSwgY29tbyAnb3JpZ2luJyxcbiIKICJwdWVkZXMgaGFjZXJsbyBwcm9wb3JjaW9uYW5kbyBlbCBub21icmUgY29tcGxldG8gY29uIGxhIG9wY2nDs24gLS10cmFjazpcbiIKICJcbiIKQEAgLTg5ODcsMzggKzExNDA5LDMzNiBAQAogImRlIG5vbWJyZSA8bm9tYnJlPiByZW1vdGEsIGNvbW8gJ29yaWdpbicsIGNvbnNpZGVyYSBjb25maWd1cmFyXG4iCiAiY2hlY2tvdXQuZGVmYXVsdFJlbW90ZT1vcmlnaW4gZW4gdHUgY29uZmlndXJhY2nDs24uIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MjcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbWF0Y2hlZCBtdWx0aXBsZSAoJWQpIHJlbW90ZSB0cmFja2luZyBicmFuY2hlcyIKK21zZ3N0ciAiJyVzJyBjb25jb3Jkw7MgY29uIG11bHRpcGxlcyAoJWQpIHJhbWFzIGRlIHJhc3RyZW8gcmVtb3RvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTIxMQorbXNnaWQgIm9ubHkgb25lIHJlZmVyZW5jZSBleHBlY3RlZCIKK21zZ3N0ciAic29sbyB1bmEgcmVmZXJlbmNpYSBlc3BlcmFkYSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkLCAlZCBnaXZlbi4iCittc2dzdHIgInNvbG8gdW5hIHJlZmVyZW5jaWEgZXNwZXJhZGEsICVkIGVudHJlZ2FkYXMuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTI3NCBidWlsdGluL3dvcmt0cmVlLmM6MjgzIGJ1aWx0aW4vd29ya3RyZWUuYzo0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWZlcmVuY2U6ICVzIgorbXNnc3RyICJyZWZlcmVuY2lhIGludsOhbGlkYTogJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjg3IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZmVyZW5jZSBpcyBub3QgYSB0cmVlOiAlcyIKK21zZ3N0ciAibGEgcmVmZXJlbmNpYSBubyBlcyBuIMOhcmJvbDogJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM0CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgdGFnICclcyciCittc2dzdHIgInNlIGVzcGVyYWJhIHVuIGJyYW5jaCwgc2Ugb2J0dXZvIHRhZyAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMzNgorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290IHJlbW90ZSBicmFuY2ggJyVzJyIKK21zZ3N0ciAic2UgZXNwZXJhIHVuYSByYW1hLCBzZSBvYnR1dm8gdW5hIHJhbWEgcmVtb3RhICclcyciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM3IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgJyVzJyIKK21zZ3N0ciAic2UgZXNwZXJhYmEgYnJhbmNoLCBzZSBvYnV0byAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM0MAorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290IGNvbW1pdCAnJXMnIgorbXNnc3RyICJzZSBlc3BlcmEgdW5hIHJhbWEsIHNlIG9idHV2byBjb21taXQgJyVzJyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNTYKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgbWVyZ2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IG1lcmdlIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGNhbWJpYXIgZGUgYnJhbmNoIGR1cmFudGUgdW4gbWVyZ2VcbiIKKyJDb25zaWRlcmEgXCJnaXQgbWVyZ2UgLS1xdWl0XCIgbyBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzYwCittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIGluIHRoZSBtaWRkbGUgb2YgYW4gYW0gc2Vzc2lvblxuIgorIkNvbnNpZGVyIFwiZ2l0IGFtIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGNhbWJpYXIgZGUgYnJhbmNoIGVuIG1lZGlvIGRlIHVuYSBzZXNpw7NuIGRlIGFtXG4iCisiQ29uc2lkZXJhIFwiZ2l0IGFtIC0tcXVpdFwiIG8gXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2NAorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSByZWJhc2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IHJlYmFzZSAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBjYW1iaWFyIGRlIGJyYW5jaCBkdXJhbnRlIHVuIHJlYmFzZVxuIgorIkNvbnNpZGVyYSBcImdpdCByZWJhc2UgLS1xdWl0XCIgbyBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY4Cittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIGNoZXJyeS1waWNraW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgY2hlcnJ5LXBpY2sgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgY2FtYmlhciBkZSBicmFuY2ggZHVyYW50ZSB1biBjaGVycnktcGlja1xuIgorIkNvbnNpZGVyYSBcImdpdCBjaGVycnktcGljayAtLXF1aXRcIiBvIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzIKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgcmV2ZXJ0aW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgcmV2ZXJ0IC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGNhbWJpYXIgZGUgYnJhbmNoIGR1cmFudGUgdW4gcmV2ZXJ0XG4iCisiQ29uc2lkZXJhIFwiZ2l0IHJldmVydCAtLXF1aXRcIiBvIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzYKK21zZ2lkICJ5b3UgYXJlIHN3aXRjaGluZyBicmFuY2ggd2hpbGUgYmlzZWN0aW5nIgorbXNnc3RyICJlc3TDoXMgY2FtYmlhbmRvIHJhbWFzIGR1cmFudGUgdW4gYmlzZWN0IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM4MworbXNnaWQgInBhdGhzIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgorbXNnc3RyICJydXRhcyBubyBwdWVkZW4gc2VyIHVzYWRhcyBjb24gY2FtYmlvcyBkZSByYW1hIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM4NiBidWlsdGluL2NoZWNrb3V0LmM6MTM5MCBidWlsdGluL2NoZWNrb3V0LmM6MTM5NAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgorbXNnc3RyICInJXMnIG5vIHB1ZWRlIHNlciB1c2FkbyBjb24gY2FtYmlvcyBkZSByYW1hcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzOTggYnVpbHRpbi9jaGVja291dC5jOjE0MDEgYnVpbHRpbi9jaGVja291dC5jOjE0MDQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDA5IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAnJXMnIgorbXNnc3RyICInJXMnIG5vIHB1ZWRlIHNlciB1c2FkbyBjb24gJyVzJyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgdGFrZSA8c3RhcnQtcG9pbnQ+IgorbXNnc3RyICInJXMnIG5vIHB1ZWRlIHRvbWFyIDxwdW50byBkZSBwYXJ0aWRhPiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN3aXRjaCBicmFuY2ggdG8gYSBub24tY29tbWl0ICclcyciCittc2dzdHIgIk5vIHNlIHB1ZWRlIGNhbWJpYXIgcmFtYSBhIHVuICclcycgc2luIGNvbW1pdHMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDI2Cittc2dpZCAibWlzc2luZyBicmFuY2ggb3IgY29tbWl0IGFyZ3VtZW50IgorbXNnc3RyICJmYWx0YSBicmFuY2ggbyBjb21taXQgY29tbyBhcmd1bWVudG8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDY4IGJ1aWx0aW4vY2xvbmUuYzo5MSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjcyCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNSBidWlsdGluL2ZldGNoLmM6MTY3IGJ1aWx0aW4vbWVyZ2UuYzoyODYKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjI3IGJ1aWx0aW4vcHVsbC5jOjExOCBidWlsdGluL3B1c2guYzo1NjMKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc0Cittc2dpZCAiZm9yY2UgcHJvZ3Jlc3MgcmVwb3J0aW5nIgorbXNnc3RyICJmb3J6YXIgZWwgcmVwb3J0ZSBkZSBwcm9ncmVzbyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NjkKK21zZ2lkICJwZXJmb3JtIGEgMy13YXkgbWVyZ2Ugd2l0aCB0aGUgbmV3IGJyYW5jaCIKK21zZ3N0ciAicmVhbGl6YXIgdW5hIGZ1c2nDs24gZGUgdHJlcyB2w61hcyBjb24gbGEgcmFtYSBudWV2YSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NzAgYnVpbHRpbi9sb2cuYzoxNjkwIHBhcnNlLW9wdGlvbnMuaDozMjIKK21zZ2lkICJzdHlsZSIKK21zZ3N0ciAiZXN0aWxvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ3MQorbXNnaWQgImNvbmZsaWN0IHN0eWxlIChtZXJnZSBvciBkaWZmMykiCittc2dzdHIgImNvbmZsaWN0byBkZSBlc3RpbG9zIChtZXJnZSBvIGRpZmYzKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODMgYnVpbHRpbi93b3JrdHJlZS5jOjQ5NgorbXNnaWQgImRldGFjaCBIRUFEIGF0IG5hbWVkIGNvbW1pdCIKK21zZ3N0ciAiZGVzYWNvcGxhciBIRUFEIGVuIGVsIGNvbW1pdCBub21icmFkbyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODQKK21zZ2lkICJzZXQgdXBzdHJlYW0gaW5mbyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAiY29uZmlndXJhciBpbmZvIGRlIHVwc3RyZWFtIHBhcmEgdW5hIHJhbWEgbnVldmEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg2Cittc2dpZCAiZm9yY2UgY2hlY2tvdXQgKHRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucykiCittc2dzdHIgImZvcnphciBlbCBjaGVja291dCAoZGVzY2FydGFyIG1vZGlmaWNhY2lvbmVzIGxvY2FsZXMpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4OAorbXNnaWQgIm5ldy1icmFuY2giCittc2dzdHIgIm51ZXZhLXJhbWEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg4Cittc2dpZCAibmV3IHVucGFyZW50ZWQgYnJhbmNoIgorbXNnc3RyICJudWV2YSByYW1hIG5vIGVtcGFyZW50YWRhIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ5MCBidWlsdGluL21lcmdlLmM6Mjg5Cittc2dpZCAidXBkYXRlIGlnbm9yZWQgZmlsZXMgKGRlZmF1bHQpIgorbXNnc3RyICJhY3R1YWxpemFyIGFyY2hpdm9zIGlnbm9yYWRvcyAoZGVmYXVsdCkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDkzCittc2dpZCAiZG8gbm90IGNoZWNrIGlmIGFub3RoZXIgd29ya3RyZWUgaXMgaG9sZGluZyB0aGUgZ2l2ZW4gcmVmIgorbXNnc3RyICJubyByZXZpc2Ugc2kgb3RybyDDoXJib2wgZGUgdHJhYmFqbyBjb250aWVuZSBsYSByZWYgZW50cmVnYWRhIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTUwNgorbXNnaWQgImNoZWNrb3V0IG91ciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKK21zZ3N0ciAiaGFjZXIgY2hlY2tvdXQgYSAgbnVlc3RyYSB2ZXJzacOzbiBwYXJhIGFyY2hpdm9zIHNpbiBmdXNpb25hciIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MDkKK21zZ2lkICJjaGVja291dCB0aGVpciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKK21zZ3N0ciAiaGFjZXIgY2hlY2tvdXQgYSBzdSB2ZXJzacOzbiBwYXJhIGxvcyBhcmNoaXZvcyBzaW4gZnVzaW9uYXIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTEzCittc2dpZCAiZG8gbm90IGxpbWl0IHBhdGhzcGVjcyB0byBzcGFyc2UgZW50cmllcyBvbmx5IgorbXNnc3RyICJubyBsaW1pdGFyIHBhdGhzcGVjcyBhIGRpc3BlcnNhciBlbnRyYWRhcyBzb2xhbWVudGUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTY1Cittc2dpZCAiLWIsIC1CIGFuZCAtLW9ycGhhbiBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICItYiwgLUIgeSAtLW9ycGhhbiBzb24gbXV0dWFtZW50ZSBleGNsdXNpdmFzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTU2OAorbXNnaWQgIi1wIGFuZCAtLW92ZXJsYXkgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLXAgeSAtLW92ZXJsYXkgc29uIG11dHVhbWVudGUgZXhjbHVzaXZhcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2MDUKK21zZ2lkICItLXRyYWNrIG5lZWRzIGEgYnJhbmNoIG5hbWUiCittc2dzdHIgIi0tdHJhY2sgbmVjZXNpdGEgZWwgbm9tYnJlIGRlIHVuYSByYW1hIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTYxMAorbXNnaWQgIm1pc3NpbmcgYnJhbmNoIG5hbWU7IHRyeSAtYiIKK21zZ3N0ciAiZmFsdGEgbm9tYnJlIGRlIHJhbWE7IHBydWViYSAtYiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlc29sdmUgJXMiCittc2dzdHIgIm5vIHNlIHB1ZG8gcmVzb2x2ZXIgJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjU4Cittc2dpZCAiaW52YWxpZCBwYXRoIHNwZWNpZmljYXRpb24iCittc2dzdHIgImVzcGVjaWZpY2FjacOzbiBkZSBydXRhIGludsOhbGlkYSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBjb21taXQgYW5kIGEgYnJhbmNoICclcycgY2Fubm90IGJlIGNyZWF0ZWQgZnJvbSBpdCIKK21zZ3N0ciAiJyVzJyBubyBlcyB1biBjb21taXQgeSB1bmEgcmFtYSAnJXMnIG5vIHB1ZWRlIHNlciBjcmVhZGEgZGVzZGUgZXN0ZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCAnJXMnIgorbXNnc3RyICJnaXQgY2hlY2tvdXQ6IC0tZGV0YWNoIG5vIHRvbWEgdW4gYXJndW1lbnRvIGRlIHJ1dGEgJyVzJyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NzgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWRldGFjaCIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgZXMgaW5jb21wYXRpYmxlIGNvbiAtLWRldGFjaCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2ODEgYnVpbHRpbi9yZXNldC5jOjMyNCBidWlsdGluL3N0YXNoLmM6MTUwNgorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tcGF0Y2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGVzIGluY29tcGF0aWJsZSBjb24gLS1wYXRjaCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2OTIKK21zZ2lkICIiCisiZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgYW5kIC0tbWVyZ2UgYXJlIGluY29tcGF0aWJsZSB3aGVuXG4iCisiY2hlY2tpbmcgb3V0IG9mIHRoZSBpbmRleC4iCittc2dzdHIgIiIKKyJnaXQgY2hlY2tvdXQ6IC0tb3Vycy8tLXRoZWlycywgLS1mb3JjZSB5IC0tbWVyZ2Ugc29uIGluY29tcGF0aWJsZXMgY3VhbmRvXG4iCisic2UgcmV2aXNhIGZ1ZXJhIGRlbCDDrW5kaWNlLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2OTcKK21zZ2lkICJ5b3UgbXVzdCBzcGVjaWZ5IHBhdGgocykgdG8gcmVzdG9yZSIKK21zZ3N0ciAiZGViZXMgZXNwZWNpZmljYXIgcGF0aChzKSBwYXJhIHJlc3RhdXJhciIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjMgYnVpbHRpbi9jaGVja291dC5jOjE3MjUgYnVpbHRpbi9jaGVja291dC5jOjE3NzQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc2IGJ1aWx0aW4vY2xvbmUuYzoxMjEgYnVpbHRpbi9yZW1vdGUuYzoxNzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcyIGJ1aWx0aW4vd29ya3RyZWUuYzo0OTIgYnVpbHRpbi93b3JrdHJlZS5jOjQ5NAorbXNnaWQgImJyYW5jaCIKK21zZ3N0ciAicmFtYSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjQKK21zZ2lkICJjcmVhdGUgYW5kIGNoZWNrb3V0IGEgbmV3IGJyYW5jaCIKK21zZ3N0ciAiY3JlYXIgeSBoYWNlciBjaGVja291dCBhIHVuYSBudWV2YSByYW1hIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyNgorbXNnaWQgImNyZWF0ZS9yZXNldCBhbmQgY2hlY2tvdXQgYSBicmFuY2giCittc2dzdHIgImNyZWFyL3JlaW5pY2lhciB5IGhhY2VyIGNoZWNrb3V0IGEgdW5hIHJhbWEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI3Cittc2dpZCAiY3JlYXRlIHJlZmxvZyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAiY3JlYXIgdW4gcmVmbG9nIHBhcmEgdW5hIG51ZXZhIHJhbWEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI5Cittc2dpZCAic2Vjb25kIGd1ZXNzICdnaXQgY2hlY2tvdXQgPG5vLXN1Y2gtYnJhbmNoPicgKGRlZmF1bHQpIgorbXNnc3RyICJhZGl2aW5hciBzZWd1bmRhIG9wY2nDs24gJ2dpdCBjaGVja291dCA8bm8taGF5LXRhbC1yYW1hPicgKGRlZmF1bHQpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTczMAorbXNnaWQgInVzZSBvdmVybGF5IG1vZGUgKGRlZmF1bHQpIgorbXNnc3RyICJ1c2FyIG1vZG8gb3ZlcmxheSAoZGVmYXVsdCkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc1Cittc2dpZCAiY3JlYXRlIGFuZCBzd2l0Y2ggdG8gYSBuZXcgYnJhbmNoIgorbXNnc3RyICJjcmVhciB5IGhhY2VyIHN3aXRjaCBhIHVuYSBudWV2YSByYW1hIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3NworbXNnaWQgImNyZWF0ZS9yZXNldCBhbmQgc3dpdGNoIHRvIGEgYnJhbmNoIgorbXNnc3RyICJjcmVhci9yZWluaWNpYXIgeSBoYWNlciBzd2l0Y2ggYSB1bmEgcmFtYSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzkKK21zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBzd2l0Y2ggPG5vLXN1Y2gtYnJhbmNoPiciCittc2dzdHIgImFkaXZpbmFyIHNlZ3VuZGEgb3BjacOzbiAnZ2l0IGNoZWNrb3V0IDxuby1oYXktdGFsLXJhbWE+JyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3ODEKK21zZ2lkICJ0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMiCittc2dzdHIgImRlc2NhcnRhciBtb2RpZmljYWNpb25lcyBsb2NhbGVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxMworbXNnaWQgIndoaWNoIHRyZWUtaXNoIHRvIGNoZWNrb3V0IGZyb20iCittc2dzdHIgImRlIHF1w6kgw6FyYm9sIGhhY2VyIGVsIGNoZWNrb3V0IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxNQorbXNnaWQgInJlc3RvcmUgdGhlIGluZGV4IgorbXNnc3RyICJyZXN0YXVyYXIgZWwgaW5kZXgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODE3Cittc2dpZCAicmVzdG9yZSB0aGUgd29ya2luZyB0cmVlIChkZWZhdWx0KSIKK21zZ3N0ciAicmVzdGF1cmFyIGVsIMOhcmJvbCBkZSB0cmFiYWpvIChkZWZhdWx0KSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTkKK21zZ2lkICJpZ25vcmUgdW5tZXJnZWQgZW50cmllcyIKK21zZ3N0ciAiaWdub3JhciBlbnRyYWRhcyBubyBmdXNpb25hZGFzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgyMAorbXNnaWQgInVzZSBvdmVybGF5IG1vZGUiCittc2dzdHIgInVzYXIgbW9kbyBvdmVybGF5IgorCisjOiBidWlsdGluL2NsZWFuLmM6MjgKIG1zZ2lkICIiCiAiZ2l0IGNsZWFuIFstZF0gWy1mXSBbLWldIFstbl0gWy1xXSBbLWUgPHBhdHRlcm4+XSBbLXggfCAtWF0gWy0tXSA8cGF0aHM+Li4uIgogbXNnc3RyICIiCiAiZ2l0IGNsZWFuIFstZF0gWy1mXSBbLWldIFstbl0gWy1xXSBbLWUgPHBhdHLDs24+XSBbLXggfCAtWF0gWy0tXSA8cnV0YXM+Li4uIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzEKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyAlc1xuIgogbXNnc3RyICJCb3JyYW5kbyAlc1xuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzIKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMwogIywgYy1mb3JtYXQKIG1zZ2lkICJXb3VsZCByZW1vdmUgJXNcbiIKIG1zZ3N0ciAiU2VyYSBib3JyYWRvICVzXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMworIzogYnVpbHRpbi9jbGVhbi5jOjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwaW5nIHJlcG9zaXRvcnkgJXNcbiIKIG1zZ3N0ciAiU2FsdGFuZG8gcmVwb3NpdG9yaW8gJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjM0CisjOiBidWlsdGluL2NsZWFuLmM6MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiV291bGQgc2tpcCByZXBvc2l0b3J5ICVzXG4iCiBtc2dzdHIgIlNlIHNhbHRhcmEgcmVwb3NpdG9yaW8gJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjM1CisjOiBidWlsdGluL2NsZWFuLmM6MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAlcyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGJvcnJhciAlcyIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjI5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3OQorIzogYnVpbHRpbi9jbGVhbi5jOjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBsc3RhdCAlc1xuIgorbXNnc3RyICJubyBzZSBwdWRvIGxzdGF0ICVzXG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMDEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlByb21wdCBoZWxwOlxuIgpAQCAtOTAzMSw3ICsxMTc1MSw3IEBACiAiZm9vICAgICAgICAtIHNlbGVjY2lvbmEgdW4gb2JqZXRvIGJhc2FkbyBlbiB1biBwcmVmaWpvIMO6bmljb1xuIgogIiAgICAgICAgICAgLSAodmFjw61vKSBubyBlbGVnaXIgbmFkYVxuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzAyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTg4CisjOiBidWlsdGluL2NsZWFuLmM6MzA1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQcm9tcHQgaGVscDpcbiIKQEAgLTkwNTIsMzggKzExNzcyLDMzIEBACiAiKiAgICAgICAgICAtIGVzY29nZXIgdG9kb3MgbG9zIG9iamV0b3NcbiIKICIgICAgICAgICAgIC0gKHZhY8OtbykgdGVybWluYXIgc2VsZWNjacOzblxuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6NTE4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTU0Ci0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU1OQorIzogYnVpbHRpbi9jbGVhbi5jOjUyMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NzUKICMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAogbXNnaWQgIkh1aCAoJXMpP1xuIgotbXNnc3RyICJBaGggKCVzKT9cbiIKK21zZ3N0ciAiwr9BaGggKCVzKT9cbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjY2MAorIzogYnVpbHRpbi9jbGVhbi5jOjY2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnB1dCBpZ25vcmUgcGF0dGVybnM+PiAiCiBtc2dzdHIgIklucHV0IGlnbm9yYSBsb3MgcGF0cm9uZXMgPj4gIgogCi0jOiBidWlsdGluL2NsZWFuLmM6Njk3CisjOiBidWlsdGluL2NsZWFuLmM6NzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIldBUk5JTkc6IENhbm5vdCBmaW5kIGl0ZW1zIG1hdGNoZWQgYnk6ICVzIgogbXNnc3RyICJQRUxJR1JPOiBObyBzZSBwdWVkZSBlbmNvbnRyYXIgb2JqZXRvcyBxdWUgY29uY3VlcmRlbiBjb246ICVzIgogCi0jOiBidWlsdGluL2NsZWFuLmM6NzE4CisjOiBidWlsdGluL2NsZWFuLmM6NzIxCiBtc2dpZCAiU2VsZWN0IGl0ZW1zIHRvIGRlbGV0ZSIKIG1zZ3N0ciAiU2VsZWNjaW9uYXIgb2JqZXRvcyBwYXJhIGJvcnJhciIKIAogIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBrZWVwIFt5L05dIGFzIGlzCi0jOiBidWlsdGluL2NsZWFuLmM6NzU5CisjOiBidWlsdGluL2NsZWFuLmM6NzYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92ZSAlcyBbeS9OXT8gIgotbXNnc3RyICJCb3JyYXIgJXMgW3kvTl0/ICIKK21zZ3N0ciAiwr9Cb3JyYXIgJXMgW3kvTl0/ICIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjc4NCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQnllLlxuIgotbXNnc3RyICJBZGnDs3MuXG4iCi0KLSM6IGJ1aWx0aW4vY2xlYW4uYzo3OTIKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3OTUKIG1zZ2lkICIiCiAiY2xlYW4gICAgICAgICAgICAgICAtIHN0YXJ0IGNsZWFuaW5nXG4iCiAiZmlsdGVyIGJ5IHBhdHRlcm4gICAtIGV4Y2x1ZGUgaXRlbXMgZnJvbSBkZWxldGlvblxuIgpAQCAtOTEwMSw2NCArMTE4MTYsNTYgQEAKICJoZWxwICAgICAgICAgICAgICAgIC0gZXN0YSB2ZW50YW5hXG4iCiAiPyAgICAgICAgICAgICAgICAgICAtIGF5dWRhIHBhcmEgc2VsZWNjacOzbiBkZSBvcGNpb25lcyIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjgxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTMKLW1zZ2lkICIqKiogQ29tbWFuZHMgKioqIgotbXNnc3RyICIqKiogQ29tYW5kb3MgKioqIgotCi0jOiBidWlsdGluL2NsZWFuLmM6ODIwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MAotbXNnaWQgIldoYXQgbm93IgotbXNnc3RyICJBaG9yYSBxdWUiCi0KLSM6IGJ1aWx0aW4vY2xlYW4uYzo4MjgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo4MzEKIG1zZ2lkICJXb3VsZCByZW1vdmUgdGhlIGZvbGxvd2luZyBpdGVtOiIKIG1zZ2lkX3BsdXJhbCAiV291bGQgcmVtb3ZlIHRoZSBmb2xsb3dpbmcgaXRlbXM6IgogbXNnc3RyWzBdICJTZSBlbGltaW5hcsOhIGVsIHNpZ3VpZW50ZSBvYmpldG86IgogbXNnc3RyWzFdICJTZSBlbGltaW5hcsOhbiBsb3Mgc2lndWllbnRlcyBvYmpldG9zOiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjg0NAorIzogYnVpbHRpbi9jbGVhbi5jOjg0NwogbXNnaWQgIk5vIG1vcmUgZmlsZXMgdG8gY2xlYW4sIGV4aXRpbmcuIgotbXNnc3RyICJObyBoYXkgbWFzIGFyY2hpdm9zIHBhcmEgbGltcGlhciwgc2FsaWVuZG8uIgorbXNnc3RyICJObyBoYXkgbcOhcyBhcmNoaXZvcyBwYXJhIGxpbXBpYXIsIHNhbGllbmRvLiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwNgorIzogYnVpbHRpbi9jbGVhbi5jOjkwOQogbXNnaWQgImRvIG5vdCBwcmludCBuYW1lcyBvZiBmaWxlcyByZW1vdmVkIgogbXNnc3RyICJubyBpbXByaW1pciBub21icmVzIGRlIGFyY2hpdm9zIGJvcnJhZG9zIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA4CisjOiBidWlsdGluL2NsZWFuLmM6OTExCiBtc2dpZCAiZm9yY2UiCiBtc2dzdHIgImZvcnphciIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwOQorIzogYnVpbHRpbi9jbGVhbi5jOjkxMgogbXNnaWQgImludGVyYWN0aXZlIGNsZWFuaW5nIgogbXNnc3RyICJsaW1waWV6YSBpbnRlcmFjdGl2YSIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxMQorIzogYnVpbHRpbi9jbGVhbi5jOjkxNAogbXNnaWQgInJlbW92ZSB3aG9sZSBkaXJlY3RvcmllcyIKIG1zZ3N0ciAiYm9ycmFyIGRpcmVjdG9yaW9zIGNvbXBsZXRvcyIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxMiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ1IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDcKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4NiBidWlsdGluL2xvZy5jOjE2NiBidWlsdGluL2xvZy5jOjE2OAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NiBidWlsdGluL25hbWUtcmV2LmM6NDE1IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTcKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTUgYnVpbHRpbi9kZXNjcmliZS5jOjU2MiBidWlsdGluL2Rlc2NyaWJlLmM6NTY0CisjOiBidWlsdGluL2dyZXAuYzo4ODkgYnVpbHRpbi9sb2cuYzoxNzcgYnVpbHRpbi9sb2cuYzoxNzkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTcgYnVpbHRpbi9uYW1lLXJldi5jOjUyNiBidWlsdGluL25hbWUtcmV2LmM6NTI4CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc5CiBtc2dpZCAicGF0dGVybiIKIG1zZ3N0ciAicGF0csOzbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxMworIzogYnVpbHRpbi9jbGVhbi5jOjkxNgogbXNnaWQgImFkZCA8cGF0dGVybj4gdG8gaWdub3JlIHJ1bGVzIgogbXNnc3RyICJhZ3JlZ2FyIDxwYXRyw7NuPiBwYXJhIGlnbm9yYXIgcmVnbGFzIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTE0CisjOiBidWlsdGluL2NsZWFuLmM6OTE3CiBtc2dpZCAicmVtb3ZlIGlnbm9yZWQgZmlsZXMsIHRvbyIKIG1zZ3N0ciAiYm9ycmFyIGFyY2hpdm9zIGlnbm9yYWRvcywgdGFtYmnDqW4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTYKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTkKIG1zZ2lkICJyZW1vdmUgb25seSBpZ25vcmVkIGZpbGVzIgogbXNnc3RyICJib3JyYXIgc29sbyBhcmNoaXZvcyBpZ25vcmFkb3MiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MzQKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MzcKIG1zZ2lkICIteCBhbmQgLVggY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCiBtc2dzdHIgIi14IHkgLVggbm8gcHVlZGVuIHNlciB1c2FkYXMganVudGFzIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTM4CisjOiBidWlsdGluL2NsZWFuLmM6OTQxCiBtc2dpZCAiIgogImNsZWFuLnJlcXVpcmVGb3JjZSBzZXQgdG8gdHJ1ZSBhbmQgbmVpdGhlciAtaSwgLW4sIG5vciAtZiBnaXZlbjsgcmVmdXNpbmcgdG8gIgogImNsZWFuIgpAQCAtOTE2Niw3ICsxMTg3Myw3IEBACiAiY2xlYW4ucmVxdWlyZUZvcmNlIGNvbmZpZ3VyYWRvIGNvbW8gdHJ1ZSB5IG5pbmd1bm8gLWksIC1uLCBuaSAtZiBlbnRyZWdhZG9zOyAiCiAicmVodXNhbmRvIGVsIGNsZWFuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTQxCisjOiBidWlsdGluL2NsZWFuLmM6OTQ0CiBtc2dpZCAiIgogImNsZWFuLnJlcXVpcmVGb3JjZSBkZWZhdWx0cyB0byB0cnVlIGFuZCBuZWl0aGVyIC1pLCAtbiwgbm9yIC1mIGdpdmVuOyAiCiAicmVmdXNpbmcgdG8gY2xlYW4iCkBAIC05MTc0LDE0NiArMTE4ODEsMTY2IEBACiAiY2xlYW4ucmVxdWlyZUZvcmNlIGRlZmF1bHQgZW4gdHJ1ZSB5IG5pbmd1bm8gLWksIC1uLCBuaSAtZiBlbnRyZWdhZG9zOyAiCiAicmVodXNhbmRvIGVsIGNsZWFuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDMKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NQogbXNnaWQgImdpdCBjbG9uZSBbPG9wdGlvbnM+XSBbLS1dIDxyZXBvPiBbPGRpcj5dIgogbXNnc3RyICJnaXQgY2xvbmUgWzxvcGNpb25lcz5dIFstLV0gPHJlcG8+IFs8ZGlyZWN0b3Jpbz5dIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MwogbXNnaWQgImRvbid0IGNyZWF0ZSBhIGNoZWNrb3V0IgogbXNnc3RyICJubyBjcmVhciBjaGVja291dCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjg5IGJ1aWx0aW4vY2xvbmUuYzo5MSBidWlsdGluL2luaXQtZGIuYzo0ODEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NCBidWlsdGluL2Nsb25lLmM6OTYgYnVpbHRpbi9pbml0LWRiLmM6NDg5CiBtc2dpZCAiY3JlYXRlIGEgYmFyZSByZXBvc2l0b3J5IgogbXNnc3RyICJjcmVhciB1biByZXBvc2l0b3JpbyB2YWPDrW8iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MworIzogYnVpbHRpbi9jbG9uZS5jOjk4CiBtc2dpZCAiY3JlYXRlIGEgbWlycm9yIHJlcG9zaXRvcnkgKGltcGxpZXMgYmFyZSkiCiBtc2dzdHIgImNyZWFyIHVuIHJlcG9zaXRvcmlvIGVzcGVqbyAoaW1wbGljYSB2YWPDrW8pIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDAKIG1zZ2lkICJ0byBjbG9uZSBmcm9tIGEgbG9jYWwgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiY2xvbmFyIGRlIHVuIHJlcG9zaXRvcmlvIGxvY2FsIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDIKIG1zZ2lkICJkb24ndCB1c2UgbG9jYWwgaGFyZGxpbmtzLCBhbHdheXMgY29weSIKIG1zZ3N0ciAibm8gdXNhciBoYXJkbGlua3MsIHNpZW1wcmUgY29waWFyIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDQKIG1zZ2lkICJzZXR1cCBhcyBzaGFyZWQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiY29uZmlndXJhciBjb21vIHJlcG9zaXRvcmlvIGNvbXBhcnRpZG8iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEgYnVpbHRpbi9jbG9uZS5jOjEwNQorIzogYnVpbHRpbi9jbG9uZS5jOjEwNwogbXNnaWQgInBhdGhzcGVjIgogbXNnc3RyICJwYXRoc3BlYyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwMSBidWlsdGluL2Nsb25lLmM6MTA1CisjOiBidWlsdGluL2Nsb25lLmM6MTA3CiBtc2dpZCAiaW5pdGlhbGl6ZSBzdWJtb2R1bGVzIGluIHRoZSBjbG9uZSIKIG1zZ3N0ciAiaW5pY2lhbGl6YXIgc3VibcOzZHVsb3MgZW4gZWwgY2xvbmFkbyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwOAorIzogYnVpbHRpbi9jbG9uZS5jOjExMAogbXNnaWQgIm51bWJlciBvZiBzdWJtb2R1bGVzIGNsb25lZCBpbiBwYXJhbGxlbCIKIG1zZ3N0ciAibnVtZXJvIGRlIHN1Ym3Ds2R1bG9zIGNsb25hZG9zIGVuIHBhcmFsZWxvIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA5IGJ1aWx0aW4vaW5pdC1kYi5jOjQ3OAorIzogYnVpbHRpbi9jbG9uZS5jOjExMSBidWlsdGluL2luaXQtZGIuYzo0ODYKIG1zZ2lkICJ0ZW1wbGF0ZS1kaXJlY3RvcnkiCiBtc2dzdHIgImRpcmVjdG9yaW8tdGVtcGxhdGUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAgYnVpbHRpbi9pbml0LWRiLmM6NDc5CisjOiBidWlsdGluL2Nsb25lLmM6MTEyIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NwogbXNnaWQgImRpcmVjdG9yeSBmcm9tIHdoaWNoIHRlbXBsYXRlcyB3aWxsIGJlIHVzZWQiCiBtc2dzdHIgImRpcmVjdG9yaW8gZGVsIGN1YWwgbG9zIHRlbXBsYXRlcyBzZXLDoW4gdXNhZG9zIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTEyIGJ1aWx0aW4vY2xvbmUuYzoxMTQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzUKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU2CisjOiBidWlsdGluL2Nsb25lLmM6MTE0IGJ1aWx0aW4vY2xvbmUuYzoxMTYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTEyCiBtc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkiCiBtc2dzdHIgInJlcG9zaXRvcmlvIGRlIHJlZmVyZW5jaWEiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzcKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU4CisjOiBidWlsdGluL2Nsb25lLmM6MTE4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxNAogbXNnaWQgInVzZSAtLXJlZmVyZW5jZSBvbmx5IHdoaWxlIGNsb25pbmciCiBtc2dzdHIgInVzYS0tcmVmZXJlbmNlICBzb2xhbWVudGUgc2kgZXN0w6FzIGNsb25hZG8iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTcgYnVpbHRpbi9jb2x1bW4uYzoyNyBidWlsdGluL21lcmdlLWZpbGUuYzo0NgotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAxIGJ1aWx0aW4vcmVwYWNrLmM6MzI5CisjOiBidWlsdGluL2Nsb25lLmM6MTE5IGJ1aWx0aW4vY29sdW1uLmM6MjcgYnVpbHRpbi9tZXJnZS1maWxlLmM6NDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0MSBidWlsdGluL3JlcGFjay5jOjMyNwogbXNnaWQgIm5hbWUiCiBtc2dzdHIgIm5vbWJyZSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExOAorIzogYnVpbHRpbi9jbG9uZS5jOjEyMAogbXNnaWQgInVzZSA8bmFtZT4gaW5zdGVhZCBvZiAnb3JpZ2luJyB0byB0cmFjayB1cHN0cmVhbSIKIG1zZ3N0ciAidXNlIDxub21icmU+IGVuIGx1Z2FyIGRlICdvcmlnaW4nIHBhcmEgcmFzdHJlYXIgdXBzdHJlYW0iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjIKIG1zZ2lkICJjaGVja291dCA8YnJhbmNoPiBpbnN0ZWFkIG9mIHRoZSByZW1vdGUncyBIRUFEIgogbXNnc3RyICJjaGVja291dCA8cmFtYT4gZW4gbHVnYXIgZGUgSEVBRCByZW1vdGEiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjIKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjQKIG1zZ2lkICJwYXRoIHRvIGdpdC11cGxvYWQtcGFjayBvbiB0aGUgcmVtb3RlIgogbXNnc3RyICJydXRhIHBhcmEgZ2l0LXVwbG9hZC1wYWNrIGVuIGVsIHJlbW90byIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyMyBidWlsdGluL2ZldGNoLmM6MTQyIGJ1aWx0aW4vZ3JlcC5jOjgyNQotIzogYnVpbHRpbi9wdWxsLmM6MjE3CisjOiBidWlsdGluL2Nsb25lLmM6MTI1IGJ1aWx0aW4vZmV0Y2guYzoxNjggYnVpbHRpbi9ncmVwLmM6ODI4CisjOiBidWlsdGluL3B1bGwuYzoyMDcKIG1zZ2lkICJkZXB0aCIKIG1zZ3N0ciAicHJvZnVuZGlkYWQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjQKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjYKIG1zZ2lkICJjcmVhdGUgYSBzaGFsbG93IGNsb25lIG9mIHRoYXQgZGVwdGgiCiBtc2dzdHIgImNyZWFyIHVuIGNsb24gc3VwZXJmaWNpYWwgcGFyYSBlc2EgcHJvZnVuZGlkYWQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjUgYnVpbHRpbi9mZXRjaC5jOjE0NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjcgYnVpbHRpbi9mZXRjaC5jOjE3MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzAKIG1zZ2lkICJ0aW1lIgogbXNnc3RyICJ0aWVtcG8iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjYKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjgKIG1zZ2lkICJjcmVhdGUgYSBzaGFsbG93IGNsb25lIHNpbmNlIGEgc3BlY2lmaWMgdGltZSIKIG1zZ3N0ciAiY3JlYXIgdW4gY2xvbiBzdXBlcmZpY2lhbCBkZXNkZSBlbCB0aWVtcG8gZXNwZWPDrWZpY28iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjcgYnVpbHRpbi9mZXRjaC5jOjE0NiBidWlsdGluL2ZldGNoLmM6MTY5Ci0jOiBidWlsdGluL3JlYmFzZS5jOjgzMQorIzogYnVpbHRpbi9jbG9uZS5jOjEyOSBidWlsdGluL2ZldGNoLmM6MTcyIGJ1aWx0aW4vZmV0Y2guYzoxOTUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MAogbXNnaWQgInJldmlzaW9uIgogbXNnc3RyICJyZXZpc2lvbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyOCBidWlsdGluL2ZldGNoLmM6MTQ3CisjOiBidWlsdGluL2Nsb25lLmM6MTMwIGJ1aWx0aW4vZmV0Y2guYzoxNzMKIG1zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IGNsb25lLCBleGNsdWRpbmcgcmV2IgogbXNnc3RyICJhaG9uZGFuZG8gaGlzdG9yaWEgZGUgY2xvbiBzdXBlcmZpY2lhbCwgZXhjbHV5ZW5kbyByZXYiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI4CiBtc2dpZCAiY2xvbmUgb25seSBvbmUgYnJhbmNoLCBIRUFEIG9yIC0tYnJhbmNoIgogbXNnc3RyICJjbG9uYXIgc29sbyB1bmEgcmFtYSxIRUFEIG8gLS1icmFuY2giCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzIKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzQKIG1zZ2lkICJkb24ndCBjbG9uZSBhbnkgdGFncywgYW5kIG1ha2UgbGF0ZXIgZmV0Y2hlcyBub3QgdG8gZm9sbG93IHRoZW0iCiBtc2dzdHIgIm5vIGNsb25hciBuaW5nw7puIHRhZywgeSBoYWNlciBxdWUgbG9zIHN1YnNpZ3VpZW50ZXMgZmV0Y2ggbm8gbG9zIHNpZ2FuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM0CisjOiBidWlsdGluL2Nsb25lLmM6MTM2CiBtc2dpZCAiYW55IGNsb25lZCBzdWJtb2R1bGVzIHdpbGwgYmUgc2hhbGxvdyIKIG1zZ3N0ciAiY3VhbHF1aWVyIHN1Ym3Ds2R1bG8gY2xvbmFkbyBzZXLDoSBzdXBlcmZpY2lhbCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNSBidWlsdGluL2luaXQtZGIuYzo0ODcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzcgYnVpbHRpbi9pbml0LWRiLmM6NDk1CiBtc2dpZCAiZ2l0ZGlyIgogbXNnc3RyICJnaXRkaXIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzYgYnVpbHRpbi9pbml0LWRiLmM6NDg4CisjOiBidWlsdGluL2Nsb25lLmM6MTM4IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5NgogbXNnaWQgInNlcGFyYXRlIGdpdCBkaXIgZnJvbSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgInNlcGFyYSBnaXQgZGlyIGRlbCDDoXJib2wgZGUgdHJhYmFqbyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNworIzogYnVpbHRpbi9jbG9uZS5jOjEzOQogbXNnaWQgImtleT12YWx1ZSIKIG1zZ3N0ciAibGxhdmU9dmFsb3IiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDAKIG1zZ2lkICJzZXQgY29uZmlnIGluc2lkZSB0aGUgbmV3IHJlcG9zaXRvcnkiCiBtc2dzdHIgImNvbmZpZ3VyYXIgY29uZmlnIGRlbnRybyBkZWwgbnVldm8gcmVwb3NpdG9yaW8iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzkgYnVpbHRpbi9mZXRjaC5jOjE2NSBidWlsdGluL3B1bGwuYzoyMzAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU4MworIzogYnVpbHRpbi9jbG9uZS5jOjE0MiBidWlsdGluL2ZldGNoLmM6MTkwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzYKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3MyBidWlsdGluL3NlbmQtcGFjay5jOjE3MgorbXNnaWQgInNlcnZlci1zcGVjaWZpYyIKK21zZ3N0ciAiZXNwZWNpZmljby1kZS1zZXJ2aWRvciIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0MiBidWlsdGluL2ZldGNoLmM6MTkwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzYKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3MyBidWlsdGluL3NlbmQtcGFjay5jOjE3MworbXNnaWQgIm9wdGlvbiB0byB0cmFuc21pdCIKK21zZ3N0ciAib3BjacOzbiBwYXJhIHRyYXNtaXRpciIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0MyBidWlsdGluL2ZldGNoLmM6MTkxIGJ1aWx0aW4vcHVsbC5jOjIyMAorIzogYnVpbHRpbi9wdXNoLmM6NTc0CiBtc2dpZCAidXNlIElQdjQgYWRkcmVzc2VzIG9ubHkiCiBtc2dzdHIgInNvbG8gdXNhciBkaXJlY2Npb25lcyBJUHY0IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTQxIGJ1aWx0aW4vZmV0Y2guYzoxNjcgYnVpbHRpbi9wdWxsLmM6MjMzCi0jOiBidWlsdGluL3B1c2guYzo1ODUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDUgYnVpbHRpbi9mZXRjaC5jOjE5MyBidWlsdGluL3B1bGwuYzoyMjMKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3NgogbXNnaWQgInVzZSBJUHY2IGFkZHJlc3NlcyBvbmx5IgogbXNnc3RyICJzb2xvIHVzYXIgZGlyZWNjaW9uZXMgSVB2NiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjI3OQorIzogYnVpbHRpbi9jbG9uZS5jOjE0OQorbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIHVzZSB0aGVpciByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICJjdWFscXVpZXIgc3VibcOzZHVsbyBjbG9uYWRvIHVzYXLDoSBzdSBicmFuY2ggZGUgcmFzdHJlbyByZW1vdG8iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNTEKK21zZ2lkICJpbml0aWFsaXplIHNwYXJzZS1jaGVja291dCBmaWxlIHRvIGluY2x1ZGUgb25seSBmaWxlcyBhdCByb290IgorbXNnc3RyICIiCisiaW5pY2lhbGl6YXIgYXJjaGl2byBzcGFyc2UtY2hlY2tvdXQgcGFyYSBpbmNsdWlyIHNvbG8gYXJjaGl2b3MgZW4gbGEgcmHDrXoiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoyODcKIG1zZ2lkICIiCiAiTm8gZGlyZWN0b3J5IG5hbWUgY291bGQgYmUgZ3Vlc3NlZC5cbiIKICJQbGVhc2Ugc3BlY2lmeSBhIGRpcmVjdG9yeSBvbiB0aGUgY29tbWFuZCBsaW5lIgpAQCAtOTMyMSwxNDYgKzEyMDQ4LDE0NSBAQAogIk5vIHNlIHB1ZG8gYWRpdmluYXIgbmluZ8O6biBub21icmUgZGUgZGlyZWN0b3Jpby5cbiIKICJQb3IgZmF2b3IgZXNwZWNpZmlxdWUgdW4gZGlyZWN0b3JpbyBlbiBsYSBsw61uZWEgZGUgY29tYW5kbyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjMzMgorIzogYnVpbHRpbi9jbG9uZS5jOjM0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbmZvOiBDb3VsZCBub3QgYWRkIGFsdGVybmF0ZSBmb3IgJyVzJzogJXNcbiIKIG1zZ3N0ciAiaW5mbzogTm8gc2UgcHVkbyBhZ3JlZ2FyIHVuIGFsdGVybm8gcGFyYSAnJXMnOiAlc1xuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDA0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyciCi1tc2dzdHIgImZhbGzDsyBhbCBhYnJpciAnJXMnIgotCi0jOiBidWlsdGluL2Nsb25lLmM6NDEyCisjOiBidWlsdGluL2Nsb25lLmM6NDEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGV4aXN0cyBhbmQgaXMgbm90IGEgZGlyZWN0b3J5IgogbXNnc3RyICIlcyBleGlzdGUgcGVybyBubyBlcyB1biBkaXJlY3RvcmlvIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDI2CisjOiBidWlsdGluL2Nsb25lLmM6NDMwCiAjLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBzdGF0ICVzXG4iCi1tc2dzdHIgImZhbGzDsyBhbCBhbmFsaXphciAlc1xuIgorbXNnaWQgImZhaWxlZCB0byBzdGFydCBpdGVyYXRvciBvdmVyICclcyciCittc2dzdHIgImZhbGzDsyBhbCBpbmljaWFyIGVsIGl0ZXJhZG9yIHNvYnJlICclcyciCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0NDMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIHVubGluayAnJXMnIgotbXNnc3RyICJmYWxsw7MgYWwgZGVzdmluY3VsYXIgJyVzJyIKLQotIzogYnVpbHRpbi9jbG9uZS5jOjQ0OAorIzogYnVpbHRpbi9jbG9uZS5jOjQ2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGxpbmsgJyVzJyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGNyZWFyIGxpbmsgJyVzJyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ1MgorIzogYnVpbHRpbi9jbG9uZS5jOjQ2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY29weSBmaWxlIHRvICclcyciCiBtc2dzdHIgImZhbGzDsyBhbCBjb3BpYXIgYXJjaGl2byBhICclcyciCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0NzgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGl0ZXJhdGUgb3ZlciAnJXMnIgorbXNnc3RyICJmYWxsw7MgYWwgaXRlcmFyIHNvYnJlICclcyciCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZG9uZS5cbiIKIG1zZ3N0ciAiaGVjaG8uXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0OTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzo1MDgKIG1zZ2lkICIiCiAiQ2xvbmUgc3VjY2VlZGVkLCBidXQgY2hlY2tvdXQgZmFpbGVkLlxuIgogIllvdSBjYW4gaW5zcGVjdCB3aGF0IHdhcyBjaGVja2VkIG91dCB3aXRoICdnaXQgc3RhdHVzJ1xuIgotImFuZCByZXRyeSB0aGUgY2hlY2tvdXQgd2l0aCAnZ2l0IGNoZWNrb3V0IC1mIEhFQUQnXG4iCisiYW5kIHJldHJ5IHdpdGggJ2dpdCByZXN0b3JlIC0tc291cmNlPUhFQUQgOi8nXG4iCiBtc2dzdHIgIiIKICJDbG9uYWRvIGV4aXRvc28sIHBlcm8gZmFsbMOzIGVsIGNoZWNrb3V0LlxuIgotIlB1ZWRlIGluc3BlY2Npb25hciBhIHF1w6kgc2UgaGl6byBjaGVja291dCBjb24gJ2dpdCBzdGF0dXMnXG4iCi0ieSB2b2x2ZXIgYSBpbnRlbnRhcmxvIGNvbiAnZ2l0IGNoZWNrb3V0IC1mIEhFQUQnXG4iCisiUHVlZGVzIGluc3BlY2Npb25hciBhIHF1w6kgc2UgaGl6byBjaGVja291dCBjb24gJ2dpdCBzdGF0dXMnXG4iCisieSB2b2x2ZXIgYSBpbnRlbnRhcmxvIGNvbiAnZ2l0IHJlc3RvcmUgLS1zb3VyY2U9SEVBRCA6LydcbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjU2OQorIzogYnVpbHRpbi9jbG9uZS5jOjU4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCByZW1vdGUgYnJhbmNoICVzIHRvIGNsb25lLiIKIG1zZ3N0ciAiTm8gc2UgcHVkbyBlbmNvbnRyYXIgbGEgcmFtYSByZW1vdGEgJXMgcGFyYSBjbG9uYXIuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NjgwCisjOiBidWlsdGluL2Nsb25lLmM6NzA1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgJXMiCiBtc2dzdHIgImluY2FwYXogZGUgYWN0dWFsaXphciAlcyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjczMAorIzogYnVpbHRpbi9jbG9uZS5jOjc1MworbXNnaWQgImZhaWxlZCB0byBpbml0aWFsaXplIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAiZmFsbMOzIGFsIGluaWNpYWxpemFyIHNwYXJzZS1jaGVja291dCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjc3NgogbXNnaWQgInJlbW90ZSBIRUFEIHJlZmVycyB0byBub25leGlzdGVudCByZWYsIHVuYWJsZSB0byBjaGVja291dC5cbiIKIG1zZ3N0ciAiIgogInJlbW90byBIRUFEIHJlZmllcmUgYSB1biByZWYgaW5leGlzdGVudGUsIG5vIHNlIHB1ZWRlIGhhY2VyIGNoZWNrb3V0LlxuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NzYxCisjOiBidWlsdGluL2Nsb25lLmM6ODA3CiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrb3V0IHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSByZWFsaXphciBjaGVja291dCBlbiBlbCDDoXJib2wgZGUgdHJhYmFqbyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjgwNgorIzogYnVpbHRpbi9jbG9uZS5jOjg2MgogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBwYXJhbWV0ZXJzIHRvIGNvbmZpZyBmaWxlIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGVzY3JpYmlyIHBhcsOhbWV0cm9zIGFsIGFyY2hpdm8gY29uZmlnIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODY5CisjOiBidWlsdGluL2Nsb25lLmM6OTI1CiBtc2dpZCAiY2Fubm90IHJlcGFjayB0byBjbGVhbiB1cCIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgcmVlbXBhcXVldGFyIHBhcmEgbGltcGlhciIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjg3MQorIzogYnVpbHRpbi9jbG9uZS5jOjkyNwogbXNnaWQgImNhbm5vdCB1bmxpbmsgdGVtcG9yYXJ5IGFsdGVybmF0ZXMgZmlsZSIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgZGVzdmluY3VsYXIgYXJjaGl2b3MgYWx0ZXJub3MgdGVtcG9yYWxlcyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkxMSBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NDEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NjUgYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTUwCiBtc2dpZCAiVG9vIG1hbnkgYXJndW1lbnRzLiIKIG1zZ3N0ciAiTXVjaG9zIGFyZ3VtZW50b3MuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTE1CisjOiBidWlsdGluL2Nsb25lLmM6OTY5CiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIHJlcG9zaXRvcnkgdG8gY2xvbmUuIgogbXNnc3RyICJUaWVuZXMgcXVlIGVzcGVjaWZpY2FyIHVuIHJlcG9zaXRvcmlvIHBhcmEgY2xvbmFyLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkyOAorIzogYnVpbHRpbi9jbG9uZS5jOjk4MgogIywgYy1mb3JtYXQKIG1zZ2lkICItLWJhcmUgYW5kIC0tb3JpZ2luICVzIG9wdGlvbnMgYXJlIGluY29tcGF0aWJsZS4iCiBtc2dzdHIgIkxhcyBvcGNpb25lcyAtLWJhcmUgeSAtLW9yaWdpbiAlcyBzb24gaW5jb21wYXRpYmxlcy4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MzEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5ODUKIG1zZ2lkICItLWJhcmUgYW5kIC0tc2VwYXJhdGUtZ2l0LWRpciBhcmUgaW5jb21wYXRpYmxlLiIKIG1zZ3N0ciAiLS1iYXJlIHkgLS1zZXBhcmF0ZS1naXQtZGlyIHNvbiBpbmNvbXBhdGlibGVzLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk0NAorIzogYnVpbHRpbi9jbG9uZS5jOjk5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBvc2l0b3J5ICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgInJlcG9zaXRvcmlvICclcycgbm8gZXhpc3RlIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTUwIGJ1aWx0aW4vZmV0Y2guYzoxNjA2CisjOiBidWlsdGluL2Nsb25lLmM6MTAwNCBidWlsdGluL2ZldGNoLmM6MTc5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJkZXB0aCAlcyBpcyBub3QgYSBwb3NpdGl2ZSBudW1iZXIiCiBtc2dzdHIgInByb2Z1bmRpZGFkICVzIG5vIGVzIHVuIG51bWVybyBwb3NpdGl2byIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk2MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzdGluYXRpb24gcGF0aCAnJXMnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYW4gZW1wdHkgZGlyZWN0b3J5LiIKIG1zZ3N0ciAibGEgcnV0YSBkZSBkZXN0aW5vICclcycgeWEgZXhpc3RlIHkgbm8gZXMgdW4gZGlyZWN0b3JpbyB2YWPDrW8uIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTcwCisjOiBidWlsdGluL2Nsb25lLmM6MTAyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ3b3JraW5nIHRyZWUgJyVzJyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgImRpcmVjdG9yaW8gZGUgdHJhYmFqbyAnJXMnIHlhIGV4aXN0ZS4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5ODUgYnVpbHRpbi9jbG9uZS5jOjEwMDYgYnVpbHRpbi9kaWZmdG9vbC5jOjI3MQotIzogYnVpbHRpbi93b3JrdHJlZS5jOjI5NSBidWlsdGluL3dvcmt0cmVlLmM6MzI1CisjOiBidWlsdGluL2Nsb25lLmM6MTAzOSBidWlsdGluL2Nsb25lLmM6MTA2MCBidWlsdGluL2RpZmZ0b29sLmM6MjcxCisjOiBidWlsdGluL2xvZy5jOjE4NjYgYnVpbHRpbi93b3JrdHJlZS5jOjI5NSBidWlsdGluL3dvcmt0cmVlLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgbGVhZGluZyBkaXJlY3RvcmllcyBvZiAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGNyZWFyIGRpcmVjdG9yaW9zIHByaW5jaXBhbGVzIGRlICclcyciCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5OTAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgd29yayB0cmVlIGRpciAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGNyZWFyIHVuIMOhcmJvbCBkZSB0cmFiYWpvICclcyciCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEwCisjOiBidWlsdGluL2Nsb25lLmM6MTA2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDbG9uaW5nIGludG8gYmFyZSByZXBvc2l0b3J5ICclcycuLi5cbiIKIG1zZ3N0ciAiQ2xvbmFuZG8gZW4gdW4gcmVwb3NpdG9yaW8gdmFjw61vICclcycuLi5cbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwMTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNsb25pbmcgaW50byAnJXMnLi4uXG4iCiBtc2dzdHIgIkNsb25hbmRvIGVuICclcycuLi5cbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwMzYKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDkwCiBtc2dpZCAiIgogImNsb25lIC0tcmVjdXJzaXZlIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggYm90aCAtLXJlZmVyZW5jZSBhbmQgLS1yZWZlcmVuY2UtaWYtIgogImFibGUiCkBAIC05NDY4LDM2ICsxMjE5NCwzNiBAQAogImNsb25lIC0tcmVjdXJzaXZlIG5vIGVzIGNvbXBhdGlibGUgY29uIC0tcmVmZXJlbmNlIHkgLS1yZWZlcmVuY2UtaWYtYWJsZSBhbCAiCiAibWlzbW8gdGllbXBvIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA5NworIzogYnVpbHRpbi9jbG9uZS5jOjExNTQKIG1zZ2lkICItLWRlcHRoIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKIG1zZ3N0ciAiLS1kZXB0aCBlcyBpZ25vcmFkYSBlbiBjbG9uYWNpb25lcyBsb2NhbGVzOyB1c2EgZmlsZTovLyBtw6FzIGJpZW4uIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA5OQorIzogYnVpbHRpbi9jbG9uZS5jOjExNTYKIG1zZ2lkICItLXNoYWxsb3ctc2luY2UgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICItLXNoYWxsb3ctc2luY2UgZXMgaWdub3JhZG8gZW4gZWwgY2xvbiBsb2NhbDsgdXNlIGZpbGU6Ly8gLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMDEKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTU4CiBtc2dpZCAiLS1zaGFsbG93LWV4Y2x1ZGUgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICItLXNoYWxsb3ctZXhjbHVkZSBlcyBpZ25vcmFkbyBlbiBjbG9uZXMgbG9jYWxlczsgdXNlIGZpbGU6Ly8uIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTEwMworIzogYnVpbHRpbi9jbG9uZS5jOjExNjAKIG1zZ2lkICItLWZpbHRlciBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCiBtc2dzdHIgIi0tZmlsdGVyIGVzIGlnbm9yYWRvIGVuIGNsb25lcyBsb2NhbGVzOyB1c2EgZmlsZTovLyBlbiBzdSBsdWdhci4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTA2CisjOiBidWlsdGluL2Nsb25lLmM6MTE2MwogbXNnaWQgInNvdXJjZSByZXBvc2l0b3J5IGlzIHNoYWxsb3csIGlnbm9yaW5nIC0tbG9jYWwiCiBtc2dzdHIgInJlcG9zaXRvcmlvIGZ1ZW50ZSBlcyBzdXBlcmZpY2lhbCwgaWdub3JhbmRvIC0tbG9jYWwiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTExCisjOiBidWlsdGluL2Nsb25lLmM6MTE2OAogbXNnaWQgIi0tbG9jYWwgaXMgaWdub3JlZCIKIG1zZ3N0ciAiLS1sb2NhbCBlcyBpZ25vcmFkbyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExODEgYnVpbHRpbi9jbG9uZS5jOjExODkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjQzIGJ1aWx0aW4vY2xvbmUuYzoxMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW90ZSBicmFuY2ggJXMgbm90IGZvdW5kIGluIHVwc3RyZWFtICVzIgogbXNnc3RyICJSYW1hIHJlbW90YSAlcyBubyBlbmNvbnRyYWRhIGVuIHVwc3RyZWFtICVzIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE5MgorIzogYnVpbHRpbi9jbG9uZS5jOjEyNTQKIG1zZ2lkICJZb3UgYXBwZWFyIHRvIGhhdmUgY2xvbmVkIGFuIGVtcHR5IHJlcG9zaXRvcnkuIgogbXNnc3RyICJQYXJlY2VzIGhhYmVyIGNsb25hZG8gdW4gcmVwb3NpdG9yaW8gc2luIGNvbnRlbmlkby4iCiAKQEAgLTk1MzMsMjUgKzEyMjU5LDkzIEBACiBtc2dpZCAiLS1jb21tYW5kIG11c3QgYmUgdGhlIGZpcnN0IGFyZ3VtZW50IgogbXNnc3RyICItLWNvbW1hbmQgZGViZSBzZXIgZWwgcHJpbWVyIGFyZ3VtZW50byIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0MAorIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjE4Cittc2dpZCAiIgorImdpdCBjb21taXQtdHJlZSBbKC1wIDxwYXJlbnQ+KS4uLl0gWy1TWzxrZXlpZD5dXSBbKC1tIDxtZXNzYWdlPikuLi5dIFsoLUYgIgorIjxmaWxlPikuLi5dIDx0cmVlPiIKK21zZ3N0ciAiIgorImdpdCBjb21taXQtdHJlZSBbKC1wIDxwYWRyZT4pLi4uXSBbLVNbPGtleWlkPl1dIFsoLW0gPG1lbnNhamU+KS4uLl0gWygtRiAiCisiPGFyY2hpdm8+KS4uLl0gPMOhcmJvbD4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzozMQorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGFyZW50ICVzIGlnbm9yZWQiCittc2dzdHIgInBhZHJlIGR1cGxpY2FkbyAlcyBpZ25vcmFkbyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjU2IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMzYgYnVpbHRpbi9sb2cuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0IG5hbWUgJXMiCittc2dzdHIgIm5vIGVzIHVuIG5vbWJyZSBkZSBvYmpldG8gdsOhbGlkbyAlcyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIG9wZW4gJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiBmYWxsw7MgYWwgYWJyaXIgJyVzJyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk2CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQgJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiBmYWxsw7MgYWwgbGVlciAnJXMnIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gY2xvc2UgJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiBmYWxsw7MgYWwgY2VycmFyICclcyciCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTEKK21zZ2lkICJwYXJlbnQiCittc2dzdHIgInBhZHJlIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTEyCittc2dpZCAiaWQgb2YgYSBwYXJlbnQgY29tbWl0IG9iamVjdCIKK21zZ3N0ciAiaWQgZGVsIG9iamV0byBjb21taXQgcGFkcmUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTQgYnVpbHRpbi9jb21taXQuYzoxNTAxIGJ1aWx0aW4vbWVyZ2UuYzoyNzEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MDkgYnVpbHRpbi9ub3Rlcy5jOjU3NSBidWlsdGluL3N0YXNoLmM6MTQ3NworIzogYnVpbHRpbi90YWcuYzo0MTIKK21zZ2lkICJtZXNzYWdlIgorbXNnc3RyICJtZW5zYWplIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE1IGJ1aWx0aW4vY29tbWl0LmM6MTUwMQorbXNnaWQgImNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICJtZW5zYWplIGRlbCBjb21taXQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTgKK21zZ2lkICJyZWFkIGNvbW1pdCBsb2cgbWVzc2FnZSBmcm9tIGZpbGUiCittc2dzdHIgImxlZXIgbWVuc2FqZSBkZSBjb21taXQgZGVzZGUgdW4gYXJjaGl2byIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMSBidWlsdGluL2NvbW1pdC5jOjE1MTMgYnVpbHRpbi9tZXJnZS5jOjI4OAorIzogYnVpbHRpbi9wdWxsLmM6MTc1IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE4Cittc2dpZCAiR1BHIHNpZ24gY29tbWl0IgorbXNnc3RyICJGaXJtYXIgY29tbWl0IGNvbiBHUEciCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMzMKK21zZ2lkICJtdXN0IGdpdmUgZXhhY3RseSBvbmUgdHJlZSIKK21zZ3N0ciAidGllbmUgcXVlIGRhciBleGFjdGFtZW50ZSB1biDDoXJib2wiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxNDAKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byByZWFkIgorbXNnc3RyICJnaXQgY29tbWl0LXRyZWU6IGZhbGzDsyBhbCBsZWVyIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjQxCiBtc2dpZCAiZ2l0IGNvbW1pdCBbPG9wdGlvbnM+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCiBtc2dzdHIgImdpdCBjb21taXQgWzxvcGNpb25lcz5dIFstLV0gPGVzcGVjaWZpY2FjacOzbi1kZS1ydXRhPi4uLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NQorIzogYnVpbHRpbi9jb21taXQuYzo0NgogbXNnaWQgImdpdCBzdGF0dXMgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICJnaXQgc3RhdHVzIFs8b3BjaW9uZXM+XSBbLS1dIDxlc3BlY2lmaWNhY2nDs24tZGUtcnV0YT4uLi4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTEKIG1zZ2lkICIiCiAiWW91IGFza2VkIHRvIGFtZW5kIHRoZSBtb3N0IHJlY2VudCBjb21taXQsIGJ1dCBkb2luZyBzbyB3b3VsZCBtYWtlXG4iCiAiaXQgZW1wdHkuIFlvdSBjYW4gcmVwZWF0IHlvdXIgY29tbWFuZCB3aXRoIC0tYWxsb3ctZW1wdHksIG9yIHlvdSBjYW5cbiIKICJyZW1vdmUgdGhlIGNvbW1pdCBlbnRpcmVseSB3aXRoIFwiZ2l0IHJlc2V0IEhFQUReXCIuXG4iCiBtc2dzdHIgIiIKLSJIYXMgc29saWNpdGFkbyB1biBhbWVuZCBlbiB0dSBjb21taXQgbWFzIHJlY2llbnRlLCBwZXJvIGhhY2VybG8gbG8gXG4iCisiSGFzIHNvbGljaXRhZG8gdW4gYW1lbmQgZW4gdHUgY29tbWl0IG3DoXMgcmVjaWVudGUsIHBlcm8gaGFjZXJsbyBsbyBcbiIKICJ2YWNpYXLDrWEuIFB1ZWRlcyByZXBldGlyIGVsIGNvbWFuZG8gY29uIC0tYWxvdy1lbXB0eSwgbyBwdWVkZXMgZWxpbWluYXJcbiIKICJlbCBjb21taXQgY29tcGxldGFtZW50ZSBjb24gXCJnaXQgcmVzZXQgSEVBRF5cIi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo1NQorIzogYnVpbHRpbi9jb21taXQuYzo1NgogbXNnaWQgIiIKICJUaGUgcHJldmlvdXMgY2hlcnJ5LXBpY2sgaXMgbm93IGVtcHR5LCBwb3NzaWJseSBkdWUgdG8gY29uZmxpY3QgcmVzb2x1dGlvbi5cbiIKICJJZiB5b3Ugd2lzaCB0byBjb21taXQgaXQgYW55d2F5LCB1c2U6XG4iCkBAIC05NTYxLDg2ICsxMjM1NSwxMDAgQEAKIG1zZ3N0ciAiIgogIkVsIGNoZXJyeS1waWNrIGFudGVyaW9yIGFob3JhIGVzdMOhIHZhY8OtbywgcG9zaWJsZW1lbnRlIHBvciB1biBjb25mbGljdG8gZGUgIgogInJlc29sdWNpw7NuLlxuIgotIlNpIGRlc2VhIHJlYWxpemFyIHVuIGNvbW1pdCBkZSB0b2RhcyBtYW5lcmFzLCB1c2U6XG4iCisiU2kgZGVzZWFzIHJlYWxpemFyIHVuIGNvbW1pdCBkZSB0b2RhcyBtYW5lcmFzLCB1c2E6XG4iCiAiXG4iCiAiICAgIGdpdCBjb21taXQgLS1hbGxvdy1lbXB0eVxuIgogIlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjYyCi1tc2dpZCAiT3RoZXJ3aXNlLCBwbGVhc2UgdXNlICdnaXQgcmVzZXQnXG4iCi1tc2dzdHIgIkNhc28gY29udHJhcmlvLCBwb3IgZmF2b3IgdXNhICdnaXQgcmVzZXQnXG4iCisjOiBidWlsdGluL2NvbW1pdC5jOjYzCittc2dpZCAiT3RoZXJ3aXNlLCBwbGVhc2UgdXNlICdnaXQgY2hlcnJ5LXBpY2sgLS1za2lwJ1xuIgorbXNnc3RyICJDYXNvIGNvbnRyYXJpbywgcG9yIGZhdm9yIHVzYSAnZ2l0IGNoZXJyeS1waWNrIC0tc2tpcCdcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2NQorIzogYnVpbHRpbi9jb21taXQuYzo2NgogbXNnaWQgIiIKKyJhbmQgdGhlbiB1c2U6XG4iCisiXG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXG4iCisiXG4iCisidG8gcmVzdW1lIGNoZXJyeS1waWNraW5nIHRoZSByZW1haW5pbmcgY29tbWl0cy5cbiIKICJJZiB5b3Ugd2lzaCB0byBza2lwIHRoaXMgY29tbWl0LCB1c2U6XG4iCiAiXG4iCi0iICAgIGdpdCByZXNldFxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXG4iCiAiXG4iCi0iVGhlbiBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgd2lsbCByZXN1bWUgY2hlcnJ5LXBpY2tpbmdcbiIKLSJ0aGUgcmVtYWluaW5nIGNvbW1pdHMuXG4iCiBtc2dzdHIgIiIKLSJTaSBxdWllcmUgc2FsdGFyIGVzdGUgY29tbWl0LCB1c2U6XG4iCisieSBsdWVnbyB1c2E6XG4iCiAiXG4iCi0iICAgIGdpdCByZXNldFxuIgorIiAgIGdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXG4iCiAiXG4iCi0iTHVlZ28gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIGNvbnRpbnVhcmEgZWwgY2hlcnJ5LXBpY2tpbmdcbiIKLSJwYXJhIGxvcyBjb21taXRzIHJlc3RhbnRlcy5cbiIKKyJwYXJhIHJlc3VtaXIgZWwgY2hlcnJ5LXBpY2sgY29uIGxvcyBjb21taXRzIGZhbHRhbnRlcy5cbiIKKyJTaSBkZXNlYXMgc2FsdGFyIGVsIGNvbW1pdCwgdXNhOlxuIgorIlxuIgorIiAgICAgZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFxuIgorIlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjMxMQorIzogYnVpbHRpbi9jb21taXQuYzozMTUKIG1zZ2lkICJmYWlsZWQgdG8gdW5wYWNrIEhFQUQgdHJlZSBvYmplY3QiCiBtc2dzdHIgImZhbGzDsyBhbCBkZXNlbXBhcXVldGFyIG9iamV0byBkZWwgw6FyYm9sIEhFQUQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzUyCisjOiBidWlsdGluL2NvbW1pdC5jOjM1MQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgY29uIC1hIG5vIHRpZW5lIHNlbnRpZG8iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzY0Cittc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgorbXNnc3RyICJObyBoYXkgcnV0YXMgY29uIC0taW5jbHVkZS8tLW9ubHkgbm8gdGllbmUgc2VudGlkby4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzc2CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgY3JlYXIgdW4gw61uZGljZSB0ZW1wb3JhbCIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzg1CiBtc2dpZCAiaW50ZXJhY3RpdmUgYWRkIGZhaWxlZCIKIG1zZ3N0ciAiYWRpY2nDs24gaW50ZXJhY3RpdmEgZmFsbGlkYSIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNzEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDAwCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgYWN0dWFsaXphciBlbCDDrW5kaWNlIHRlbXBvcmFsIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM3MworIzogYnVpbHRpbi9jb21taXQuYzo0MDIKIG1zZ2lkICJGYWlsZWQgdG8gdXBkYXRlIG1haW4gY2FjaGUgdHJlZSIKIG1zZ3N0ciAiRmFsbMOzIGFsIGFjdHVhbGl6YXIgZWwgY2FjaGUgcHJpbmNpcGFsIGRlbCDDoXJib2wiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Mzk4IGJ1aWx0aW4vY29tbWl0LmM6NDIxIGJ1aWx0aW4vY29tbWl0LmM6NDY3CisjOiBidWlsdGluL2NvbW1pdC5jOjQyNyBidWlsdGluL2NvbW1pdC5jOjQ1MCBidWlsdGluL2NvbW1pdC5jOjQ5NgogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXdfaW5kZXggZmlsZSIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBlc2NyaWJpciBhcmNoaXZvIG5ld19pbmRleCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDc5CiBtc2dpZCAiY2Fubm90IGRvIGEgcGFydGlhbCBjb21taXQgZHVyaW5nIGEgbWVyZ2UuIgogbXNnc3RyICJubyBzZSBwdWVkZSByZWFsaXphciB1biBjb21taXQgcGFyY2lhbCBkdXJhbnRlIHVuYSBmdXNpw7NuLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NTIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDgxCiBtc2dpZCAiY2Fubm90IGRvIGEgcGFydGlhbCBjb21taXQgZHVyaW5nIGEgY2hlcnJ5LXBpY2suIgogbXNnc3RyICJubyBzZSBwdWVkZSByZWFsaXphciB1biBjb21taXQgcGFyY2lhbCBkdXJhbnRlIHVuIGNoZXJyeS1waWNrLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NjAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDg5CiBtc2dpZCAiY2Fubm90IHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyIGVsIMOtbmRpY2UiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDc5CisjOiBidWlsdGluL2NvbW1pdC5jOjUwOAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0ZW1wb3JhcnkgaW5kZXggZmlsZSIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBlc2NyaWJpciBlbCDDrW5kaWNlIHRlbXBvcmFsIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3NworIzogYnVpbHRpbi9jb21taXQuYzo2MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgbGFja3MgYXV0aG9yIGhlYWRlciIKIG1zZ3N0ciAiY29tbWl0ICclcycgcmVxdWllcmUgY2FiZWNlcmEgZGUgYXV0b3IiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTc5CisjOiBidWlsdGluL2NvbW1pdC5jOjYwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJyVzJyBoYXMgbWFsZm9ybWVkIGF1dGhvciBsaW5lIgogbXNnc3RyICJlbCBjb21taXQgJyVzJyB0aWVuZSB1bmEgbMOtbmVhIGRlIGF1dG9yIG1hbCBmb3JtYWRhIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU5OAorIzogYnVpbHRpbi9jb21taXQuYzo2MjcKIG1zZ2lkICJtYWxmb3JtZWQgLS1hdXRob3IgcGFyYW1ldGVyIgogbXNnc3RyICJwYXLDoW1ldHJvIC0tYXV0aG9yIG1hbCBmb3JtYWRvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY1MAorIzogYnVpbHRpbi9jb21taXQuYzo2ODAKIG1zZ2lkICIiCiAidW5hYmxlIHRvIHNlbGVjdCBhIGNvbW1lbnQgY2hhcmFjdGVyIHRoYXQgaXMgbm90IHVzZWRcbiIKICJpbiB0aGUgY3VycmVudCBjb21taXQgbWVzc2FnZSIKQEAgLTk2NDgsMzggKzEyNDU2LDM4IEBACiAibm8gZXMgcG9zaWJsZSBzZWxlY2Npb25hciB1biBjYXLDoWN0ZXIgZGUgY29tZW50YXJpbyBxdWUgbm8gZXMgdXNhZG9cbiIKICJlbiBlbCBtZW5zYWplIGRlIGNvbW1pdCBhY3R1YWwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Njg3IGJ1aWx0aW4vY29tbWl0LmM6NzIwIGJ1aWx0aW4vY29tbWl0LmM6MTA0OQorIzogYnVpbHRpbi9jb21taXQuYzo3MTggYnVpbHRpbi9jb21taXQuYzo3NTEgYnVpbHRpbi9jb21taXQuYzoxMDk3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb29rdXAgY29tbWl0ICVzIgogbXNnc3RyICJubyBzZSBwdWRvIHJldmlzYXIgZWwgY29tbWl0ICVzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY5OSBidWlsdGluL3Nob3J0bG9nLmM6MzE3CisjOiBidWlsdGluL2NvbW1pdC5jOjczMCBidWlsdGluL3Nob3J0bG9nLmM6MzE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIihyZWFkaW5nIGxvZyBtZXNzYWdlIGZyb20gc3RhbmRhcmQgaW5wdXQpXG4iCiBtc2dzdHIgIihsZXllbmRvIG1lbnNhamVzIGRlIGxvZ3MgZGVzZGUgc3RhbmRhcmQgaW5wdXQpXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzAxCisjOiBidWlsdGluL2NvbW1pdC5jOjczMgogbXNnaWQgImNvdWxkIG5vdCByZWFkIGxvZyBmcm9tIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJubyBzZSBwdWRvIGxlZXIgbG9nIGRlc2RlIHN0YW5kYXJkIGlucHV0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjcwNQorIzogYnVpbHRpbi9jb21taXQuYzo3MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZpbGUgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBsZWVyIGVsIGxvZyAnJXMnIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjczNCBidWlsdGluL2NvbW1pdC5jOjc0MgorIzogYnVpbHRpbi9jb21taXQuYzo3NjcgYnVpbHRpbi9jb21taXQuYzo3ODMKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBTUVVBU0hfTVNHIgogbXNnc3RyICJubyBzZSBwdWRvIGxlZXIgU1FVQVNIX01TRyIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3MzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Nzc0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgTUVSR0VfTVNHIgogbXNnc3RyICJubyBzZSBwdWRvIGxlZXIgTUVSR0VfTVNHIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjc5MworIzogYnVpbHRpbi9jb21taXQuYzo4MzQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29tbWl0IHRlbXBsYXRlIgogbXNnc3RyICJubyBzZSBwdWRvIGVzY3JpYmlyIGVsIHRlbXBsYXRlIGRlbCBjb21taXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODExCisjOiBidWlsdGluL2NvbW1pdC5jOjg1MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC05NjkwLDExICsxMjQ5OCwxMSBAQAogbXNnc3RyICIiCiAiXG4iCiAiUGFyZWNlIHF1ZSBlc3TDoXMgaGFjaWVuZG8gdW4gY29tbWl0IGNvbiB1bmEgZnVzacOzbiBkZW50cm8uXG4iCi0iU2kgZXN0byBubyBlcyBjb3JyZWN0bywgcG9yIGZhdm9yIHJlbXVldmUgZWwgYXJjaGl2b1xuIgorIlNpIGVzdG8gbm8gZXMgY29ycmVjdG8sIHBvciBmYXZvciBlbGltaW5hIGVsIGFyY2hpdm9cbiIKICJcdCVzXG4iCiAieSB2dWVsdmUgYSBpbnRlbnRhci5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MTYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTk3MDQsMTc4ICsxMjUxMiwxNzAgQEAKICJhbmQgdHJ5IGFnYWluLlxuIgogbXNnc3RyICIiCiAiXG4iCi0iUGFyZWNlIHF1ZSBwdWVkZSBlc3RhciBoYWNpZW5kbyB1biBjb21taXQgYSB1biBjaGVycnktcGljay5cbiIKLSJTaSBlc3RvIG5vIGVzIGNvcnJlY3RvLCBwb3IgZmF2b3IgZWxpbWluZSBlbCBhcmNoaXZvXG4iCisiUGFyZWNlIHF1ZSBwdWVkZXMgZXN0YXIgaGFjaWVuZG8gdW4gY29tbWl0IGEgdW4gY2hlcnJ5LXBpY2suXG4iCisiU2kgZXN0byBubyBlcyBjb3JyZWN0bywgcG9yIGZhdm9yIGVsaW1pbmEgZWwgYXJjaGl2b1xuIgogIlx0JXNcbiIKLSJ5IHZ1ZWx2YSBhIGludGVudGFyLlxuIgorInkgdnVlbHZlIGEgaW50ZW50YXIuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODI5CisjOiBidWlsdGluL2NvbW1pdC5jOjg3MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgeW91ciBjaGFuZ2VzLiBMaW5lcyBzdGFydGluZ1xuIgogIndpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQsIGFuZCBhbiBlbXB0eSBtZXNzYWdlIGFib3J0cyB0aGUgY29tbWl0LlxuIgogbXNnc3RyICIiCi0iUG9yIGZhdm9yIGluZ3Jlc2UgZWwgbWVuc2FqZSBkZWwgY29tbWl0IHBhcmEgc3VzIGNhbWJpb3MuIExhcyBsw61uZWFzIHF1ZSAiCi0iY29taWVuY2VuXG4iCi0iY29uICclYycgc2Vyw6FuIGlnbm9yYWRhcywgeSB1biBtZW5zYWplIHZhY8OtbyBhYm9ydGEgZWwgY29tbWl0LlxuIgorIlBvciBmYXZvciBpbmdyZXNhIGVsIG1lbnNhamUgZGVsIGNvbW1pdCBwYXJhIHR1cyBjYW1iaW9zLiBMYXNcbiIKKyIgbMOtbmVhcyBxdWUgY29taWVuY2VuIGNvbiAnJWMnIHNlcsOhbiBpZ25vcmFkYXMsIHkgdW4gbWVuc2FqZVxuIgorIiB2YWPDrW8gYWJvcnRhIGVsIGNvbW1pdC5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQbGVhc2UgZW50ZXIgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB5b3VyIGNoYW5nZXMuIExpbmVzIHN0YXJ0aW5nXG4iCiAid2l0aCAnJWMnIHdpbGwgYmUga2VwdDsgeW91IG1heSByZW1vdmUgdGhlbSB5b3Vyc2VsZiBpZiB5b3Ugd2FudCB0by5cbiIKICJBbiBlbXB0eSBtZXNzYWdlIGFib3J0cyB0aGUgY29tbWl0LlxuIgogbXNnc3RyICIiCi0iUG9yIGZhdm9yIGluZ3Jlc2UgZWwgbWVuc2FqZSBkZWwgY29tbWl0IHBhcmEgc3VzIGNhbWJpb3MuIExhcyBsw61uZWFzIHF1ZSAiCi0iY29taWVuY2VuXG4iCi0iY29uICclYycgc2Vyw6FuIGd1YXJkYWRhczsgcHVlZGUgZWxpbWluYXJsYXMgdXN0ZWQgbWlzbW8gc2kgZGVzZWEuXG4iCisiUG9yIGZhdm9yIGluZ3Jlc2EgZWwgbWVuc2FqZSBkZWwgY29tbWl0IHBhcmEgdHVzIGNhbWJpb3MuIExhc1xuIgorIiBsw61uZWFzIHF1ZSBjb21pZW5jZW4gY29uICclYycgc2Vyw6FuIGd1YXJkYWRhczsgcHVlZGUgZWxpbWluYXJsYXNcbiIKKyIgdXN0ZWQgbWlzbW8gc2kgbG8gZGVzZWEuXG4iCiAiVW4gbWVuc2FqZSB2YWPDrW8gYWJvcnRhIGVsIGNvbW1pdC5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4NTQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzQXV0aG9yOiAgICAlLipzIDwlLipzPiIKIG1zZ3N0ciAiJXNBdXRvcjogICAgICUuKnMgPCUuKnM+IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjg2MgorIzogYnVpbHRpbi9jb21taXQuYzo5MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXNEYXRlOiAgICAgICVzIgogbXNnc3RyICIlc0ZlY2hhOiAgICAgJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODY5CisjOiBidWlsdGluL2NvbW1pdC5jOjkxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0NvbW1pdHRlcjogJS4qcyA8JS4qcz4iCiBtc2dzdHIgIiVzQ29tbWl0dGVyOiAlLipzIDwlLipzPiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4ODcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTI5CiBtc2dpZCAiQ2Fubm90IHJlYWQgaW5kZXgiCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIGxlZXIgZWwgw61uZGljZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzo5NTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTk3CiBtc2dpZCAiRXJyb3IgYnVpbGRpbmcgdHJlZXMiCiBtc2dzdHIgIkVycm9yIGFsIGNvbnN0cnVpciBsb3Mgw6FyYm9sZXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6OTY3IGJ1aWx0aW4vdGFnLmM6MjU4CisjOiBidWlsdGluL2NvbW1pdC5jOjEwMTEgYnVpbHRpbi90YWcuYzoyNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiUGxlYXNlIHN1cHBseSB0aGUgbWVzc2FnZSB1c2luZyBlaXRoZXIgLW0gb3IgLUYgb3B0aW9uLlxuIgogbXNnc3RyICJQb3IgZmF2b3Igc3VtaW5pc3RyYSBlbCBtZW5zYWplIHVzYW5kbyBsYXMgb3BjaW9uZXMgLW0gbyAtRi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDExCisjOiBidWlsdGluL2NvbW1pdC5jOjEwNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiLS1hdXRob3IgJyVzJyBpcyBub3QgJ05hbWUgPGVtYWlsPicgYW5kIG1hdGNoZXMgbm8gZXhpc3RpbmcgYXV0aG9yIgogbXNnc3RyICIiCiAiLS1hdXRob3IgJyVzJyBubyBlc3TDoSBlbiBlbCBmb3JtYXRvICdOYW1lIDxlbWFpbD4nIHkgbm8gY29uY3VlcmRhIGNvbiBuaW5nw7puICIKICJhdXRvciBleGlzdGVudGUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAyNQorIzogYnVpbHRpbi9jb21taXQuYzoxMDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgaWdub3JlZCBtb2RlICclcyciCiBtc2dzdHIgIk1vZG8gaWdub3JhZG8gaW52w6FsaWRvICclcyciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAzOSBidWlsdGluL2NvbW1pdC5jOjEyNzYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA4NyBidWlsdGluL2NvbW1pdC5jOjEzMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB1bnRyYWNrZWQgZmlsZXMgbW9kZSAnJXMnIgogbXNnc3RyICJNb2RvIGludsOhbGlkbyBkZSBsb3MgYXJjaGl2b3Mgbm8gcmFzdHJlYWRvcyAnJXMnIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwNzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNwogbXNnaWQgIi0tbG9uZyBhbmQgLXogYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1sb25nIHkgLXogc29uIGluY29tcGF0aWJsZXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTExMAorIzogYnVpbHRpbi9jb21taXQuYzoxMTcxCiBtc2dpZCAiVXNpbmcgYm90aCAtLXJlc2V0LWF1dGhvciBhbmQgLS1hdXRob3IgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiVXNhciBhbWJvcyAtLXJlc2V0LWF1dGhvciB5IC0tYXV0aG9yIG5vIHRpZW5lIHNlbnRpZG8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTExOQorIzogYnVpbHRpbi9jb21taXQuYzoxMTgwCiBtc2dpZCAiWW91IGhhdmUgbm90aGluZyB0byBhbWVuZC4iCiBtc2dzdHIgIk5vIHRpZW5lcyBuYWRhIHF1ZSBlbm1lbmRhci4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyMgorIzogYnVpbHRpbi9jb21taXQuYzoxMTgzCiBtc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UgLS0gY2Fubm90IGFtZW5kLiIKIG1zZ3N0ciAiRXN0w6FzIGVuIG1lZGlvIGRlIHVuYSBmdXNpw7NuIC0tIG5vIHB1ZWRlcyBlbm1lbmRhci4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNAorIzogYnVpbHRpbi9jb21taXQuYzoxMTg1CiBtc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgY2hlcnJ5LXBpY2sgLS0gY2Fubm90IGFtZW5kLiIKIG1zZ3N0ciAiRXN0w6EgZW4gbWVkaW8gZGUgdW4gY2hlcnJ5LXBpY2sgLS0gbm8gc2UgcHVlZGUgZW5tZW5kYXIuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMjcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4OAogbXNnaWQgIk9wdGlvbnMgLS1zcXVhc2ggYW5kIC0tZml4dXAgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCiBtc2dzdHIgIk9wY2lvbmVzIC0tc3F1YXNoIHkgLS1maXh1cCBubyBwdWVkZW4gc2VyIHVzYWRhcyBqdW50YXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEzNworIzogYnVpbHRpbi9jb21taXQuYzoxMTk4CiBtc2dpZCAiT25seSBvbmUgb2YgLWMvLUMvLUYvLS1maXh1cCBjYW4gYmUgdXNlZC4iCiBtc2dzdHIgIlNvbG8gdW5vIGRlIC1jLy1DLy1GLy0tZml4dXAgcHVlZGUgc2VyIHVzYWRvLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTM5CisjOiBidWlsdGluL2NvbW1pdC5jOjEyMDAKIG1zZ2lkICJPcHRpb24gLW0gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggLWMvLUMvLUYuIgogbXNnc3RyICJMYSBvcGNpw7NuIC1tIG5vIHB1ZWRlIHNlciBjb21iaW5hZGEgY29uIC1jLy1DLy1GLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTQ3CisjOiBidWlsdGluL2NvbW1pdC5jOjEyMDgKIG1zZ2lkICItLXJlc2V0LWF1dGhvciBjYW4gYmUgdXNlZCBvbmx5IHdpdGggLUMsIC1jIG9yIC0tYW1lbmQuIgogbXNnc3RyICItLXJlc2V0LWF1dGhvciBzw7NsbyBwdWVkZSBzZXIgdXNhZGEgY29uIC1DLCAtYyBvIC0tYW1lbmQuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIyNQogbXNnaWQgIk9ubHkgb25lIG9mIC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIGNhbiBiZSB1c2VkLiIKIG1zZ3N0ciAiIgogIlNvbG8gdW5vIGRlIC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIHB1ZWRlIHNlciB1c2Fkby4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE2NgotbXNnaWQgIk5vIHBhdGhzIHdpdGggLS1pbmNsdWRlLy0tb25seSBkb2VzIG5vdCBtYWtlIHNlbnNlLiIKLW1zZ3N0ciAiTm8gaGF5IHJ1dGFzIGNvbiAtLWluY2x1ZGUvLS1vbmx5IG5vIHRpZW5lIHNlbnRpZG8uIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjExODAgYnVpbHRpbi90YWcuYzo1NDYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIzMQogIywgYy1mb3JtYXQKLW1zZ2lkICJJbnZhbGlkIGNsZWFudXAgbW9kZSAlcyIKLW1zZ3N0ciAiTW9kbyBjbGVhbnVwIGludsOhbGlkbyAlcyIKK21zZ2lkICJwYXRocyAnJXMgLi4uJyB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgInBhdGhzICclcyAuLi4nIGNvbiAtYSBubyB0aWVuZSBzZW50aWRvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExODUKLW1zZ2lkICJQYXRocyB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgotbXNnc3RyICJSdXRhcyBjb24gLWEgbm8gdGllbmUgc2VudGlkby4iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxMSBidWlsdGluL2NvbW1pdC5jOjE0OTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MiBidWlsdGluL2NvbW1pdC5jOjE1MjQKIG1zZ2lkICJzaG93IHN0YXR1cyBjb25jaXNlbHkiCiBtc2dzdHIgIm1vc3RyYXIgc3RhdHVzIGRlIG1hbmVyYSBjb25jaXNhIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTMgYnVpbHRpbi9jb21taXQuYzoxNDk3CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjQgYnVpbHRpbi9jb21taXQuYzoxNTI2CiBtc2dpZCAic2hvdyBicmFuY2ggaW5mb3JtYXRpb24iCiBtc2dzdHIgIm1vc3RyYXIgaW5mb3JtYWNpw7NuIGRlIGxhIHJhbWEiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxNQorIzogYnVpbHRpbi9jb21taXQuYzoxMzY2CiBtc2dpZCAic2hvdyBzdGFzaCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAibW9zdHJhciBpbmZvcm1hY2nDs24gZGVsIHN0YXNoIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTcgYnVpbHRpbi9jb21taXQuYzoxNDk5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjggYnVpbHRpbi9jb21taXQuYzoxNTI4CiBtc2dpZCAiY29tcHV0ZSBmdWxsIGFoZWFkL2JlaGluZCB2YWx1ZXMiCiBtc2dzdHIgImNhbGN1bGFyIHRvZG9zIGxvcyB2YWxvcmVzIGRlbGFudGUvYXRyw6FzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3MAogbXNnaWQgInZlcnNpb24iCiBtc2dzdHIgInZlcnNpb24iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxOSBidWlsdGluL2NvbW1pdC5jOjE1MDEgYnVpbHRpbi9wdXNoLmM6NTU4Ci0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjM5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzAgYnVpbHRpbi9jb21taXQuYzoxNTMwIGJ1aWx0aW4vcHVzaC5jOjU0OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY0MwogbXNnaWQgIm1hY2hpbmUtcmVhZGFibGUgb3V0cHV0IgogbXNnc3RyICJvdXRwdXQgZm9ybWF0by1tYXF1aW5hIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjIgYnVpbHRpbi9jb21taXQuYzoxNTAzCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzMgYnVpbHRpbi9jb21taXQuYzoxNTMyCiBtc2dpZCAic2hvdyBzdGF0dXMgaW4gbG9uZyBmb3JtYXQgKGRlZmF1bHQpIgogbXNnc3RyICJtb3N0cmFyIHN0YXR1cyBlbiBmb3JtYXRvIGxhcmdvIChkZWZhdWx0KSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzI1IGJ1aWx0aW4vY29tbWl0LmM6MTUwNgorIzogYnVpbHRpbi9jb21taXQuYzoxMzc2IGJ1aWx0aW4vY29tbWl0LmM6MTUzNQogbXNnaWQgInRlcm1pbmF0ZSBlbnRyaWVzIHdpdGggTlVMIgogbXNnc3RyICJ0ZXJtaW5hciBlbnRyYWRhcyBjb24gTlVMIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjcgYnVpbHRpbi9jb21taXQuYzoxMzMxIGJ1aWx0aW4vY29tbWl0LmM6MTUwOQotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMDcgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTAgYnVpbHRpbi9yZWJhc2UuYzo5MTAKLSM6IGJ1aWx0aW4vdGFnLmM6NDAwCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzggYnVpbHRpbi9jb21taXQuYzoxMzgyIGJ1aWx0aW4vY29tbWl0LmM6MTUzOAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTMgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTYKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTU5IGJ1aWx0aW4vcmViYXNlLmM6MTU2OSBwYXJzZS1vcHRpb25zLmg6MzM2CiBtc2dpZCAibW9kZSIKIG1zZ3N0ciAibW9kbyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzI4IGJ1aWx0aW4vY29tbWl0LmM6MTUwOQorIzogYnVpbHRpbi9jb21taXQuYzoxMzc5IGJ1aWx0aW4vY29tbWl0LmM6MTUzOAogbXNnaWQgInNob3cgdW50cmFja2VkIGZpbGVzLCBvcHRpb25hbCBtb2RlczogYWxsLCBub3JtYWwsIG5vLiAoRGVmYXVsdDogYWxsKSIKIG1zZ3N0ciAiIgogIm1vc3RyYXIgYXJjaGl2b3Mgc2luIHNlZ3VpbWllbnRvLCBtb2RvcyBvcGNpb25hbGVzOiBhbGwsIG5vcm1hbCwgbm8uICIKICIoUHJlZGV0ZXJtaW5hZG86IGFsbCkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMzMgorIzogYnVpbHRpbi9jb21taXQuYzoxMzgzCiBtc2dpZCAiIgogInNob3cgaWdub3JlZCBmaWxlcywgb3B0aW9uYWwgbW9kZXM6IHRyYWRpdGlvbmFsLCBtYXRjaGluZywgbm8uIChEZWZhdWx0OiAiCiAidHJhZGl0aW9uYWwpIgpAQCAtOTg4MywxMSArMTI2ODMsMTEgQEAKICJtb3N0cmFyIGFyY2hpdm9zIGlnbm9yYWRvcywgbW9kb3Mgb3BjaW9uYWxlczogdHJhZGl0aW9uYWwsIG1hdGNoaW5nLCBuby4gIgogIihQcmVkZXRlcm1pbmFkbzogdHJhZGl0aW9uYWwpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzQgcGFyc2Utb3B0aW9ucy5oOjE2NAorIzogYnVpbHRpbi9jb21taXQuYzoxMzg1IHBhcnNlLW9wdGlvbnMuaDoxOTIKIG1zZ2lkICJ3aGVuIgogbXNnc3RyICJjdWFuZG8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMzNQorIzogYnVpbHRpbi9jb21taXQuYzoxMzg2CiBtc2dpZCAiIgogImlnbm9yZSBjaGFuZ2VzIHRvIHN1Ym1vZHVsZXMsIG9wdGlvbmFsIHdoZW46IGFsbCwgZGlydHksIHVudHJhY2tlZC4gIgogIihEZWZhdWx0OiBhbGwpIgpAQCAtOTg5NSwyNTIgKzEyNjk1LDI1MCBAQAogImlnbm9yYXIgY2FtYmlvcyBlbiBzdWJtw7NkdWxvcywgb3BjaW9uYWwgY3VhbmRvOiBhbGwsZGlydHksdW50cmFja2VkLiAiCiAiKERlZmF1bHQ6IGFsbCkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMzNworIzogYnVpbHRpbi9jb21taXQuYzoxMzg4CiBtc2dpZCAibGlzdCB1bnRyYWNrZWQgZmlsZXMgaW4gY29sdW1ucyIKIG1zZ3N0ciAibGlzdGFyIGVuIGNvbHVtbmFzIGxvcyBhcmNoaXZvcyBzaW4gc2VndWltaWVudG8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMzOAorIzogYnVpbHRpbi9jb21taXQuYzoxMzg5CiBtc2dpZCAiZG8gbm90IGRldGVjdCByZW5hbWVzIgogbXNnc3RyICJubyBkZXRlY3RhciByZW5vbWJyYWRvcyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzQwCisjOiBidWlsdGluL2NvbW1pdC5jOjEzOTEKIG1zZ2lkICJkZXRlY3QgcmVuYW1lcywgb3B0aW9uYWxseSBzZXQgc2ltaWxhcml0eSBpbmRleCIKIG1zZ3N0ciAiZGV0ZWN0YXIgcmVub21icmVzLCBvcGNpb25hbG1lbnRlIGNvbmZpZ3VyYXIgc2ltaWxhcmlkYWQgZGUgw61uZGljZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzYwCisjOiBidWlsdGluL2NvbW1pdC5jOjE0MTEKIG1zZ2lkICJVbnN1cHBvcnRlZCBjb21iaW5hdGlvbiBvZiBpZ25vcmVkIGFuZCB1bnRyYWNrZWQtZmlsZXMgYXJndW1lbnRzIgogbXNnc3RyICIiCiAiQ29tYmluYWNpw7NuIGRlIGFyZ3VtZW50b3MgZGUgYXJjaGl2b3MgaWdub3JhZG9zIHkgbm8gcmFzdHJlYWRvcyBubyBzb3BvcnRhZGEiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2NQorIzogYnVpbHRpbi9jb21taXQuYzoxNDk0CiBtc2dpZCAic3VwcHJlc3Mgc3VtbWFyeSBhZnRlciBzdWNjZXNzZnVsIGNvbW1pdCIKIG1zZ3N0ciAic3VwcmltZSBzdW1tYXJ5IHRyYXMgdW4gY29tbWl0IGV4aXRvc28iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2NgorIzogYnVpbHRpbi9jb21taXQuYzoxNDk1CiBtc2dpZCAic2hvdyBkaWZmIGluIGNvbW1pdCBtZXNzYWdlIHRlbXBsYXRlIgogbXNnc3RyICJtb3N0cmFyIGRpZmYgZW4gZWwgdGVtcGxhdGUgZGVsIG1lbnNhamUgZGUgY29tbWl0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NwogbXNnaWQgIkNvbW1pdCBtZXNzYWdlIG9wdGlvbnMiCiBtc2dzdHIgIk9wY2lvbmVzIHBhcmEgZWwgbWVuc2FqZSBkZWwgY29tbWl0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjkgYnVpbHRpbi9tZXJnZS5jOjI2MyBidWlsdGluL3RhZy5jOjM5NworIzogYnVpbHRpbi9jb21taXQuYzoxNDk4IGJ1aWx0aW4vbWVyZ2UuYzoyNzUgYnVpbHRpbi90YWcuYzo0MTQKIG1zZ2lkICJyZWFkIG1lc3NhZ2UgZnJvbSBmaWxlIgogbXNnc3RyICJsZWVyIG1lbnNhamUgZGVzZGUgdW4gYXJjaGl2byIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcwCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTkKIG1zZ2lkICJhdXRob3IiCiBtc2dzdHIgImF1dG9yIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5OQogbXNnaWQgIm92ZXJyaWRlIGF1dGhvciBmb3IgY29tbWl0IgogbXNnc3RyICJzb2JyZXNjcmliZSBlbCBhdXRvciBkZWwgY29tbWl0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzEgYnVpbHRpbi9nYy5jOjUxOAorIzogYnVpbHRpbi9jb21taXQuYzoxNTAwIGJ1aWx0aW4vZ2MuYzo1MzgKIG1zZ2lkICJkYXRlIgogbXNnc3RyICJmZWNoYSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcxCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDAKIG1zZ2lkICJvdmVycmlkZSBkYXRlIGZvciBjb21taXQiCiBtc2dzdHIgInNvYnJlc2NyaWJlIGxhIGZlY2hhIGRlbCBjb21taXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MiBidWlsdGluL21lcmdlLmM6MjU5IGJ1aWx0aW4vbm90ZXMuYzo0MDkKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1NzIgYnVpbHRpbi90YWcuYzozOTUKLW1zZ2lkICJtZXNzYWdlIgotbXNnc3RyICJtZW5zYWplIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzIKLW1zZ2lkICJjb21taXQgbWVzc2FnZSIKLW1zZ3N0ciAibWVuc2FqZSBkZWwgY29tbWl0IgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzMgYnVpbHRpbi9jb21taXQuYzoxNDc0IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NQotIzogYnVpbHRpbi9jb21taXQuYzoxNDc2IHJlZi1maWx0ZXIuaDo5MiBwYXJzZS1vcHRpb25zLmg6MjgwCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDIgYnVpbHRpbi9jb21taXQuYzoxNTAzIGJ1aWx0aW4vY29tbWl0LmM6MTUwNAorIzogYnVpbHRpbi9jb21taXQuYzoxNTA1IHBhcnNlLW9wdGlvbnMuaDozMjggcmVmLWZpbHRlci5oOjkyCiBtc2dpZCAiY29tbWl0IgogbXNnc3RyICJjb25maXJtYXIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MworIzogYnVpbHRpbi9jb21taXQuYzoxNTAyCiBtc2dpZCAicmV1c2UgYW5kIGVkaXQgbWVzc2FnZSBmcm9tIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgInJldXNhciB5IGVkaXRhciBlbCBtZW5zYWplIGRlIHVuIGNvbW1pdCBlc3BlY2lmaWNvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMwogbXNnaWQgInJldXNlIG1lc3NhZ2UgZnJvbSBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICJyZXVzYXIgZWwgbWVuc2FqZSBkZSB1biBjb21taXQgZXNwZWNpZmljbyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc1CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDQKIG1zZ2lkICJ1c2UgYXV0b3NxdWFzaCBmb3JtYXR0ZWQgbWVzc2FnZSB0byBmaXh1cCBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICIiCiAidXNhciBtZW5zYWplIGRlIGZvcm1hdG8gYXV0b3NxdWFzaMKgcGFyYSBhcnJlZ2xhciBlbCBjb21taXQgZXNwZWNpZmljYWRvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNQogbXNnaWQgInVzZSBhdXRvc3F1YXNoIGZvcm1hdHRlZCBtZXNzYWdlIHRvIHNxdWFzaCBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICIiCiAidXNhciBlbCBtZW5zYWplIGRlIGZvcm1hdG8gYXV0b3NxdWFzaCBwYXJhIHJlYWxpemFyIHNxdWFzaCAgYWwgY29tbWl0ICIKICJlc3BlY2lmaWNhZG8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NworIzogYnVpbHRpbi9jb21taXQuYzoxNTA2CiBtc2dpZCAidGhlIGNvbW1pdCBpcyBhdXRob3JlZCBieSBtZSBub3cgKHVzZWQgd2l0aCAtQy8tYy8tLWFtZW5kKSIKIG1zZ3N0ciAiZWwgYXV0b3IgZGVsIGNvbW1pdCBzb3kgeW8gYWhvcmEgKHVzYWRvIGNvbiAtQy8tYy8tLWFtZW5kKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc4IGJ1aWx0aW4vbG9nLmM6MTUyMCBidWlsdGluL21lcmdlLmM6Mjc2Ci0jOiBidWlsdGluL3B1bGwuYzoxNTUgYnVpbHRpbi9yZXZlcnQuYzoxMDYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNyBidWlsdGluL2xvZy5jOjE2MzQgYnVpbHRpbi9tZXJnZS5jOjI5MAorIzogYnVpbHRpbi9wdWxsLmM6MTQ0IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCiBtc2dpZCAiYWRkIFNpZ25lZC1vZmYtYnk6IgogbXNnc3RyICJhZ3JlZ2FyIFNpZ25lZC1vZmYtYnk6IChmaXJtYWRvIHBvcikiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3OQorIzogYnVpbHRpbi9jb21taXQuYzoxNTA4CiBtc2dpZCAidXNlIHNwZWNpZmllZCB0ZW1wbGF0ZSBmaWxlIgogbXNnc3RyICJ1c2FyIGFyY2hpdm8gZGUgdGVtcGxhdGUgZXNwZWNpZmljYWRvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwOQogbXNnaWQgImZvcmNlIGVkaXQgb2YgY29tbWl0IgogbXNnc3RyICJmb3J6YXIgbGEgZWRpY2nDs24gZGVsIGNvbW1pdCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDgxCi1tc2dpZCAiZGVmYXVsdCIKLW1zZ3N0ciAiZGVmYXVsdCIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDgxIGJ1aWx0aW4vdGFnLmM6NDAxCi1tc2dpZCAiaG93IHRvIHN0cmlwIHNwYWNlcyBhbmQgI2NvbW1lbnRzIGZyb20gbWVzc2FnZSIKLW1zZ3N0ciAiY8OzbW8gcXVpdGFyIGVzcGFjaW9zIHkgI2NvbWVudGFyaW9zIGRlIG1lbnNhamVzIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxMQogbXNnaWQgImluY2x1ZGUgc3RhdHVzIGluIGNvbW1pdCBtZXNzYWdlIHRlbXBsYXRlIgogbXNnc3RyICJpbmNsdWlyIHN0YXR1cyBlbiBlbCB0ZW1wbGF0ZSBkZWwgbWVuc2FqZSBkZSBjb21taXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4NCBidWlsdGluL21lcmdlLmM6Mjc0IGJ1aWx0aW4vcHVsbC5jOjE4NQotIzogYnVpbHRpbi9yZXZlcnQuYzoxMTQKLW1zZ2lkICJHUEcgc2lnbiBjb21taXQiCi1tc2dzdHIgIkZpcm1hciBjb21taXQgY29uIEdQRyIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDg3CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTYKIG1zZ2lkICJDb21taXQgY29udGVudHMgb3B0aW9ucyIKIG1zZ3N0ciAiT3BjaW9uZXMgcGFyYSBlbCBjb250ZW5pZG8gZGVsIGNvbW1pdCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTcKIG1zZ2lkICJjb21taXQgYWxsIGNoYW5nZWQgZmlsZXMiCiBtc2dzdHIgImNvbmZpcm1hciB0b2RvcyBsb3MgYXJjaGl2b3MgY2FtYmlhZG9zIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxOAogbXNnaWQgImFkZCBzcGVjaWZpZWQgZmlsZXMgdG8gaW5kZXggZm9yIGNvbW1pdCIKIG1zZ3N0ciAiYWdyZWdhciBhcmNoaXZvcyBlc3BlY8OtZmljb3MgYWwgw61uZGljZSBwYXJhIGNvbmZpcm1hciIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDkwCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTkKIG1zZ2lkICJpbnRlcmFjdGl2ZWx5IGFkZCBmaWxlcyIKIG1zZ3N0ciAiYWdyZWdhciBhcmNoaXZvcyBpbnRlcmFjdGl2YW1lbnRlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMAogbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGNoYW5nZXMiCiBtc2dzdHIgImFncmVnYXIgY2FtYmlvcyBpbnRlcmFjdGl2YW1lbnRlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMQogbXNnaWQgImNvbW1pdCBvbmx5IHNwZWNpZmllZCBmaWxlcyIKIG1zZ3N0ciAic8OzbG8gY29uZmlybWFyIGFyY2hpdm9zIGVzcGVjw61maWNvcyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDkzCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjIKIG1zZ2lkICJieXBhc3MgcHJlLWNvbW1pdCBhbmQgY29tbWl0LW1zZyBob29rcyIKIG1zZ3N0ciAiZXZpdGFyIGxvcyBjYXB0dXJhZG9yZXMgKGhvb2tzKSBkZSBwcmUtY29tbWl0IHkgY29tbWl0LW1zZyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDk0CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjMKIG1zZ2lkICJzaG93IHdoYXQgd291bGQgYmUgY29tbWl0dGVkIgogbXNnc3RyICJtb3N0cmFyIGxvIHF1ZSBzZXLDrWEgaW5jbHVpZG8gZW4gZWwgY29tbWl0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MDcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUzNgogbXNnaWQgImFtZW5kIHByZXZpb3VzIGNvbW1pdCIKIG1zZ3N0ciAiZW5tZW5kYXIgY29tbWl0IHByZXZpbyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTA4CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MzcKIG1zZ2lkICJieXBhc3MgcG9zdC1yZXdyaXRlIGhvb2siCiBtc2dzdHIgImdhbmNobyBieXBhc3MgcG9zdCByZWVzY3JpdHVyYSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTEzCisjOiBidWlsdGluL2NvbW1pdC5jOjE1NDQKIG1zZ2lkICJvayB0byByZWNvcmQgYW4gZW1wdHkgY2hhbmdlIgogbXNnc3RyICJvayBhbCBncmFiYXIgdW4gY2FtYmlvIHZhY8OtbyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTE1CisjOiBidWlsdGluL2NvbW1pdC5jOjE1NDYKIG1zZ2lkICJvayB0byByZWNvcmQgYSBjaGFuZ2Ugd2l0aCBhbiBlbXB0eSBtZXNzYWdlIgogbXNnc3RyICJvayBhbCBncmFiYXIgdW4gY2FtYmlvIGNvbiB1biBtZW5zYWplIHZhY8OtbyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE2MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29ycnVwdCBNRVJHRV9IRUFEIGZpbGUgKCVzKSIKIG1zZ3N0ciAiQXJjaGl2byBNRVJHRV9IRUFEICglcykgY29ycnVwdG8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTU5NQorIzogYnVpbHRpbi9jb21taXQuYzoxNjI2CiBtc2dpZCAiY291bGQgbm90IHJlYWQgTUVSR0VfTU9ERSIKIG1zZ3N0ciAibm8gc2UgcHVkbyBsZWVyIE1FUkdFX01PREUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTYxNAorIzogYnVpbHRpbi9jb21taXQuYzoxNjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGNvbW1pdCBtZXNzYWdlOiAlcyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBsZWVyIGVsIG1lbnNhamUgZGUgY29tbWl0OiAlcyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjI1CisjOiBidWlsdGluL2NvbW1pdC5jOjE2NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmcgY29tbWl0IGR1ZSB0byBlbXB0eSBjb21taXQgbWVzc2FnZS5cbiIKIG1zZ3N0ciAiQWJvcnRhbmRvIGNvbW1pdCBkZWJpZG8gcXVlIGVsIG1lbnNhamUgZXN0w6EgZW4gYmxhbmNvLlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE2MzAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJBYm9ydGluZyBjb21taXQ7IHlvdSBkaWQgbm90IGVkaXQgdGhlIG1lc3NhZ2UuXG4iCiBtc2dzdHIgIkFib3J0YW5kbyBjb21taXQ7IG5vIHNlIGhhIGVkaXRhZG8gZWwgbWVuc2FqZVxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE2NjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY5MQogbXNnaWQgIiIKICJyZXBvc2l0b3J5IGhhcyBiZWVuIHVwZGF0ZWQsIGJ1dCB1bmFibGUgdG8gd3JpdGVcbiIKICJuZXdfaW5kZXggZmlsZS4gQ2hlY2sgdGhhdCBkaXNrIGlzIG5vdCBmdWxsIGFuZCBxdW90YSBpc1xuIgotIm5vdCBleGNlZWRlZCwgYW5kIHRoZW4gXCJnaXQgcmVzZXQgSEVBRFwiIHRvIHJlY292ZXIuIgorIm5vdCBleGNlZWRlZCwgYW5kIHRoZW4gXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA6L1wiIHRvIHJlY292ZXIuIgogbXNnc3RyICIiCiAiZWwgcmVwb3NpdG9yaW8gaGEgc2lkbyBhY3R1YWxpemFkbywgcGVybyBubyBzZSBwdWRvIGVzY3JpYmlyIGVsIGFyY2hpdm9cbiIKICJuZXdfaW5kZXguIFZlcmlmaXF1ZSBxdWUgZWwgZGlzY28gbm8gZXN0ZSBsbGVubyB5IGxhIHF1b3RhIG5vIGhhXG4iCi0ic2lkbyBzdXBlcmFkYSwgeSBsdWVnbyBcImdpdCByZXNldCBIRUFEXCIgcGFyYSByZWN1cGVyYXIuIgorInNpZG8gc3VwZXJhZGEsIHkgbHVlZ28gXCJnaXQgcmVzdG9yZSAtLXNhdGVnZWQgOi9cIiBwYXJhIHJlY3VwZXJhci4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTAKLW1zZ2lkICJnaXQgY29tbWl0LWdyYXBoIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgotbXNnc3RyICJnaXQgY29tbWl0LWdyYXBoIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgotCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjExIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjMKLW1zZ2lkICJnaXQgY29tbWl0LWdyYXBoIHJlYWQgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi1tc2dzdHIgImdpdCBjb21taXQtZ3JhcGggcmVhZCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKLQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE4Ci1tc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi1tc2dzdHIgImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgotCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjgKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTEgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNwogbXNnaWQgIiIKLSJnaXQgY29tbWl0LWdyYXBoIHdyaXRlIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIFstLWFwcGVuZF0gWy0tcmVhY2hhYmxlfC0tIgotInN0ZGluLXBhY2tzfC0tc3RkaW4tY29tbWl0c10iCisiZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tc2hhbGxvd10gWy0tW25vLV1wcm9ncmVzc10iCiBtc2dzdHIgIiIKLSJnaXQgY29tbWl0LWdyYXBoIHdyaXRlIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIFstLWFwcGVuZF1bLS1yZWFjaGFibGV8LS0iCi0ic3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSIKKyJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1zaGFsbG93XSBbLS1bbm8tXXByb2dyZXNzXSIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo0OCBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjc4Ci0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE5MCBidWlsdGluL2ZldGNoLmM6MTUzCi0jOiBidWlsdGluL2xvZy5jOjE1NDAKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTIgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMgorbXNnaWQgIiIKKyJnaXQgY29tbWl0LWdyYXBoIHdyaXRlIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIFstLWFwcGVuZHwtLXNwbGl0XSBbLS0iCisicmVhY2hhYmxlfC0tc3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSBbLS1bbm8tXXByb2dyZXNzXSA8c3BsaXQgb3B0aW9ucz4iCittc2dzdHIgIiIKKyJnaXQgY29tbWl0LWdyYXBoIHdyaXRlIFstLW9iamVjdC1kaXIgPGRpciBvYmpldG8+XSBbLS1hcHBlbmR8LS1zcGxpdF0gWy0tIgorInJlYWNoYWJsZXwtLXN0ZGluLXBhY2tzfC0tc3RkaW4tY29tbWl0c10gWy0tW25vLV1wcm9ncmVzc10gPG9wY2lvbmVzIGRlICIKKyJzcGxpdD4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZpbmQgb2JqZWN0IGRpcmVjdG9yeSBtYXRjaGluZyAlcyIKK21zZ3N0ciAibm8gc2UgcHVkbyBlbnRvbmNyYXIgZWwgb2JqZXRvIGRpcmVjdG9yaW8gY29uY29yZGFudGUgY29uICVzIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjY4IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTI1CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIxMCBidWlsdGluL2ZldGNoLmM6MTc5IGJ1aWx0aW4vbG9nLmM6MTY1NwogbXNnaWQgImRpciIKIG1zZ3N0ciAiZGlyIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjQ5IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzkKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMzIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTkxCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjY5IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTI2CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIxMQogbXNnaWQgIlRoZSBvYmplY3QgZGlyZWN0b3J5IHRvIHN0b3JlIHRoZSBncmFwaCIKIG1zZ3N0ciAiRWwgZGlyZWN0b3JpbyBkZSBvYmpldG9zIHBhcmEgZ3VhcmRhciBlbCBncsOhZmljbyIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzUKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzEKK21zZ2lkICJpZiB0aGUgY29tbWl0LWdyYXBoIGlzIHNwbGl0LCBvbmx5IHZlcmlmeSB0aGUgdGlwIGZpbGUiCittc2dzdHIgInNpIGVsIGNvbW1pdC1ncmFwaCBlc3TDoSBjb3J0YWRvLCBzb2xvIHZlcmlmaWNhIGxhIHB1bnRhIGRlbCBhcmNoaXZvIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjk0IHQvaGVscGVyL3Rlc3QtcmVhZC1ncmFwaC5jOjIzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBvcGVuIGNvbW1pdC1ncmFwaCAnJXMnIgorbXNnc3RyICJObyBzZSBwdWRvIGFicmlyIGNvbW1pdC1ncmFwaCAnJXMnIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyOAogbXNnaWQgInN0YXJ0IHdhbGsgYXQgYWxsIHJlZnMiCiBtc2dzdHIgImNvbWVuemFyIGNhbWluYXRhIGVuIHRvZGFzIGxhcyByZWZzIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzAKIG1zZ2lkICJzY2FuIHBhY2staW5kZXhlcyBsaXN0ZWQgYnkgc3RkaW4gZm9yIGNvbW1pdHMiCiBtc2dzdHIgImVzY2FuZWFyIHBhcXVldGUgZGUgw61uZGljZXMgcG9yIHN0ZGluIHBvciBjb21taXRzIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzOQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzIKIG1zZ2lkICJzdGFydCB3YWxrIGF0IGNvbW1pdHMgbGlzdGVkIGJ5IHN0ZGluIgogbXNnc3RyICJjb21lbnphciBhIGNhbWluYXIgYSBsb3MgY29tbWl0cyBsaXN0YWRvcyBwb3Igc3RkaW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTQxCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNAogbXNnaWQgImluY2x1ZGUgYWxsIGNvbW1pdHMgYWxyZWFkeSBpbiB0aGUgY29tbWl0LWdyYXBoIGZpbGUiCiBtc2dzdHIgImluY2x5ZSB0b2RvcyBsb3MgY29tbWl0cyBxdWUgeWEgZXN0w6FuIGVuIGVsIGFyY2hpdm8gY29tbWl0LWdyYXBoIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE1MAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzcKK21zZ2lkICJhbGxvdyB3cml0aW5nIGFuIGluY3JlbWVudGFsIGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICJwZXJtaXRpciBlc2NyaWJpciB1biBhcmNoaXZvIGNvbW1pdC1ncmFwaCBpbmNyZW1lbnRhbCIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDMKK21zZ2lkICJtYXhpbXVtIG51bWJlciBvZiBjb21taXRzIGluIGEgbm9uLWJhc2Ugc3BsaXQgY29tbWl0LWdyYXBoIgorbXNnc3RyICJtw6F4aW1vIG7Dum1lcm8gZGUgY29tbWl0cyBlbiB1biBjb21taXQtZ3JhcGggc2luIGJhc2UgY29ydGFkYSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDEKK21zZ2lkICJtYXhpbXVtIHJhdGlvIGJldHdlZW4gdHdvIGxldmVscyBvZiBhIHNwbGl0IGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAicmFkaW8gbcOheGltbyBlbnRyZSBkb3Mgbml2ZWxlcyBkZSBjb3J0ZSBkZSBjb21taXQtZ3JhcGgiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTU5CiBtc2dpZCAidXNlIGF0IG1vc3Qgb25lIG9mIC0tcmVhY2hhYmxlLCAtLXN0ZGluLWNvbW1pdHMsIG9yIC0tc3RkaW4tcGFja3MiCiBtc2dzdHIgInVzZSBjb21vIG3DoXhpbW8gdW5vIGRlIC0tcmVhY2hhYmxlLCAtLXN0ZGluLWNvbW1pdHMsIG8gLS1zdGRpbi1wYWNrcyIKIApAQCAtMTAxNDgsMjA2ICsxMjk0NiwyMTIgQEAKIG1zZ2lkICJnaXQgY29uZmlnIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgY29uZmlnIFs8b3BjaW9uZXM+XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMDMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTA0IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzoyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgLS10eXBlIGFyZ3VtZW50LCAlcyIKIG1zZ3N0ciAiYXJndW1lbnRvIC0tdHlwZSBubyByZWNvbm9jaWRvLCAlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMTUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTE2CiBtc2dpZCAib25seSBvbmUgdHlwZSBhdCBhIHRpbWUiCiBtc2dzdHIgInNvbG8gdW4gdGlwbyBhIGxhIHZleiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI1CiBtc2dpZCAiQ29uZmlnIGZpbGUgbG9jYXRpb24iCiBtc2dzdHIgIlViaWNhY2nDs24gZGVsIGFyY2hpdm8gY29uZmlndXJhY2nDs24iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTI1CisjOiBidWlsdGluL2NvbmZpZy5jOjEyNgogbXNnaWQgInVzZSBnbG9iYWwgY29uZmlnIGZpbGUiCiBtc2dzdHIgInVzYXIgYXJjaGl2byBkZSBjb25maWcgZ2xvYmFsIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNgorIzogYnVpbHRpbi9jb25maWcuYzoxMjcKIG1zZ2lkICJ1c2Ugc3lzdGVtIGNvbmZpZyBmaWxlIgogbXNnc3RyICJ1c2FyIGFyY2hpdm8gZGUgY29uZmlnIGRlbCBzaXN0ZW1hIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNworIzogYnVpbHRpbi9jb25maWcuYzoxMjgKIG1zZ2lkICJ1c2UgcmVwb3NpdG9yeSBjb25maWcgZmlsZSIKIG1zZ3N0ciAidXNhciBhcmNoaXZvIGRlIGNvbmZpZyBkZWwgcmVwb3NpdG9yaW8iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTI4CisjOiBidWlsdGluL2NvbmZpZy5jOjEyOQogbXNnaWQgInVzZSBwZXItd29ya3RyZWUgY29uZmlnIGZpbGUiCiBtc2dzdHIgInVzYXIgdW4gYXJjaGl2byBkZSBjb25maWcgcG9yIMOhcmJvbCBkZSB0cmFiYWpvIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyOQorIzogYnVpbHRpbi9jb25maWcuYzoxMzAKIG1zZ2lkICJ1c2UgZ2l2ZW4gY29uZmlnIGZpbGUiCiBtc2dzdHIgInVzYXIgYXJjaGl2byBjb25maWcgZXNwZWNpZmljYWRvIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMAorIzogYnVpbHRpbi9jb25maWcuYzoxMzEKIG1zZ2lkICJibG9iLWlkIgogbXNnc3RyICJibG9iLWlkIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMAorIzogYnVpbHRpbi9jb25maWcuYzoxMzEKIG1zZ2lkICJyZWFkIGNvbmZpZyBmcm9tIGdpdmVuIGJsb2Igb2JqZWN0IgogbXNnc3RyICJsZWVyIGNvbmZpZyBkZWwgb2JqZXRvIGJsb2Igc3VtaW5pc3RyYWRvIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMQorIzogYnVpbHRpbi9jb25maWcuYzoxMzIKIG1zZ2lkICJBY3Rpb24iCiBtc2dzdHIgIkFjY2nDs24iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTMyCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMwogbXNnaWQgImdldCB2YWx1ZTogbmFtZSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICJvYnRlbmVyIHZhbG9yOiBub21icmUgW3ZhbG9yLXJlZ2V4XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM0CiBtc2dpZCAiZ2V0IGFsbCB2YWx1ZXM6IGtleSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICJvYnRlbmVyIHRvZG9zIGxvcyB2YWxvcmVzOiBsbGF2ZSBbdmFsb3Jlcy1yZWdleF0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM0CisjOiBidWlsdGluL2NvbmZpZy5jOjEzNQogbXNnaWQgImdldCB2YWx1ZXMgZm9yIHJlZ2V4cDogbmFtZS1yZWdleCBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICJvYnRlbmVyIHZhbG9yZXMgcGFyYSB1bmEgcmVnZXhwOiBub21icmUtcmVnZXggW3ZhbG9yLXJlZ2V4XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM2CiBtc2dpZCAiZ2V0IHZhbHVlIHNwZWNpZmljIGZvciB0aGUgVVJMOiBzZWN0aW9uWy52YXJdIFVSTCIKIG1zZ3N0ciAib2J0ZW5lciB2YWxvciBlc3BlY2lmaWNvIHBhcmEgZWwgVVJMOiBzZWNjacOzblsudmFyXSBVUkwiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM2CisjOiBidWlsdGluL2NvbmZpZy5jOjEzNwogbXNnaWQgInJlcGxhY2UgYWxsIG1hdGNoaW5nIHZhcmlhYmxlczogbmFtZSB2YWx1ZSBbdmFsdWVfcmVnZXhdIgogbXNnc3RyICIiCiAicmVtcGxhemFyIHRvZGFzIGxhcyB2YXJpYWJsZXMgcXVlIGNvbmN1ZXJkZW46IG5vbWJyZSB2YWxvciBbdmFsb3JfcmVnZXhdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNworIzogYnVpbHRpbi9jb25maWcuYzoxMzgKIG1zZ2lkICJhZGQgYSBuZXcgdmFyaWFibGU6IG5hbWUgdmFsdWUiCiBtc2dzdHIgImFncmVnYXIgbnVldmEgdmFyaWFibGU6IG5vbWJyZSB2YWxvciIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM5CiBtc2dpZCAicmVtb3ZlIGEgdmFyaWFibGU6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAiYm9ycmFyIHVuYSB2YXJpYWJsZS4gbm9tYnJlIFt2YWxvci1yZWdleF0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM5CisjOiBidWlsdGluL2NvbmZpZy5jOjE0MAogbXNnaWQgInJlbW92ZSBhbGwgbWF0Y2hlczogbmFtZSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICJib3JyYXIgdG9kYXMgbGFzIGNvbmN1cnJlbmNpYXM6IG5vbWJyZSBbdmFsb3ItcmVnZXhdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0MAorIzogYnVpbHRpbi9jb25maWcuYzoxNDEKIG1zZ2lkICJyZW5hbWUgc2VjdGlvbjogb2xkLW5hbWUgbmV3LW5hbWUiCiBtc2dzdHIgInJlbm9tYnJhciBzZWNjacOzbjogbm9tYnJlLXZpZWpvIG5vbWJyZS1udWV2byIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQyCiBtc2dpZCAicmVtb3ZlIGEgc2VjdGlvbjogbmFtZSIKIG1zZ3N0ciAiYm9ycmFyIHVuYSBzZWNjacOzbjogbm9tYnJlIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0MgorIzogYnVpbHRpbi9jb25maWcuYzoxNDMKIG1zZ2lkICJsaXN0IGFsbCIKIG1zZ3N0ciAibGlzdGFyIHRvZG8iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQzCisjOiBidWlsdGluL2NvbmZpZy5jOjE0NAogbXNnaWQgIm9wZW4gYW4gZWRpdG9yIgogbXNnc3RyICJhYnJpciBlbCBlZGl0b3IiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ0CisjOiBidWlsdGluL2NvbmZpZy5jOjE0NQogbXNnaWQgImZpbmQgdGhlIGNvbG9yIGNvbmZpZ3VyZWQ6IHNsb3QgW2RlZmF1bHRdIgogbXNnc3RyICJlbmNvbnRyYXIgZWwgY29sb3IgY29uZmlndXJhZG86IHNsb3QgW2RlZmF1bHRdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NQorIzogYnVpbHRpbi9jb25maWcuYzoxNDYKIG1zZ2lkICJmaW5kIHRoZSBjb2xvciBzZXR0aW5nOiBzbG90IFtzdGRvdXQtaXMtdHR5XSIKIG1zZ3N0ciAiZW5jb250cmFyIGxhcyBvcGNpb25lcyBkZWwgY29sb3I6IHNsb3QgW3N0ZG91dC1lcy10dHldIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NgorIzogYnVpbHRpbi9jb25maWcuYzoxNDcKIG1zZ2lkICJUeXBlIgogbXNnc3RyICJUaXBvIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NworIzogYnVpbHRpbi9jb25maWcuYzoxNDggYnVpbHRpbi9lbnYtLWhlbHBlci5jOjM4CiBtc2dpZCAidmFsdWUgaXMgZ2l2ZW4gdGhpcyB0eXBlIgogbXNnc3RyICJhbCB2YWxvciBzZSBoYSBkYWRvIGVzdGUgdGlwbyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ5CiBtc2dpZCAidmFsdWUgaXMgXCJ0cnVlXCIgb3IgXCJmYWxzZVwiIgogbXNnc3RyICJ2YWxvciBlcyBcInRydWVcIiBvIFwiZmFsc2VcIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUwCiBtc2dpZCAidmFsdWUgaXMgZGVjaW1hbCBudW1iZXIiCiBtc2dzdHIgInZhbG9yIGVzIHVuIG51bWVybyBkZWNpbWFsIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1MAorIzogYnVpbHRpbi9jb25maWcuYzoxNTEKIG1zZ2lkICJ2YWx1ZSBpcyAtLWJvb2wgb3IgLS1pbnQiCiBtc2dzdHIgInZhbG9yIGVzIC0tYm9vbCBvIC0taW50IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1MQorIzogYnVpbHRpbi9jb25maWcuYzoxNTIKIG1zZ2lkICJ2YWx1ZSBpcyBhIHBhdGggKGZpbGUgb3IgZGlyZWN0b3J5IG5hbWUpIgogbXNnc3RyICJ2YWxvciBlcyB1bmEgcnV0YSAoYXJjaGl2byBvIG5vbWJyZSBkZSBkaXJlY3RvcmlvKSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUzCiBtc2dpZCAidmFsdWUgaXMgYW4gZXhwaXJ5IGRhdGUiCiBtc2dzdHIgInZhbG9yIGVzIHVuYSBmZWNoYSBkZSBleHBpcmFjacOzbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU0CiBtc2dpZCAiT3RoZXIiCiBtc2dzdHIgIk90cm8iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU0CisjOiBidWlsdGluL2NvbmZpZy5jOjE1NQogbXNnaWQgInRlcm1pbmF0ZSB2YWx1ZXMgd2l0aCBOVUwgYnl0ZSIKIG1zZ3N0ciAidGVybWluYXIgdmFsb3JlcyBjb24gdW4gYnl0ZSBOVUxMIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NQorIzogYnVpbHRpbi9jb25maWcuYzoxNTYKIG1zZ2lkICJzaG93IHZhcmlhYmxlIG5hbWVzIG9ubHkiCiBtc2dzdHIgIm1vc3RyYXIgc29sbyBub21icmVzIGRlIHZhcmlhYmxlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU3CiBtc2dpZCAicmVzcGVjdCBpbmNsdWRlIGRpcmVjdGl2ZXMgb24gbG9va3VwIgogbXNnc3RyICJyZXNwZXRhciBkaXJlY3RpdmFzIGluY2x1ZGUgZW4gbGEgYsO6c3F1ZWRhIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NworIzogYnVpbHRpbi9jb25maWcuYzoxNTgKIG1zZ2lkICJzaG93IG9yaWdpbiBvZiBjb25maWcgKGZpbGUsIHN0YW5kYXJkIGlucHV0LCBibG9iLCBjb21tYW5kIGxpbmUpIgogbXNnc3RyICJtb3N0cmFyIGVsIG9yaWdlbiBkZSBjb25maWd1cmFjacOzbiAoYXJjaGl2bywgc3RkaW4sIGJsb2IsIGNvbWFuZG8pIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1OAorIzogYnVpbHRpbi9jb25maWcuYzoxNTkKK21zZ2lkICJzaG93IHNjb3BlIG9mIGNvbmZpZyAod29ya3RyZWUsIGxvY2FsLCBnbG9iYWwsIHN5c3RlbSwgY29tbWFuZCkiCittc2dzdHIgIiIKKyJtb3N0cmFyIGVsIHNjb3BlIGRlIGxhIGNvbmZpZ3VyYWNpw7NuICh3b3JrdHJlZSwgbG9jYWwsIGdsb2JhbCwgc3lzdGVtLCAiCisiY29tbWFuZCkiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTYwIGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MAogbXNnaWQgInZhbHVlIgogbXNnc3RyICJ2YWxvciIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTYwCiBtc2dpZCAid2l0aCAtLWdldCwgdXNlIGRlZmF1bHQgdmFsdWUgd2hlbiBtaXNzaW5nIGVudHJ5IgogbXNnc3RyICJjb24gLS1nZXQsIHVzYSBlbCB2YWxvciBwb3IgZGVmZWN0byBjdWFuZG8gZmFsdGEgdW5hIGVudHJhZGEiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTcxCisjOiBidWlsdGluL2NvbmZpZy5jOjE3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgJWQiCiBtc2dzdHIgIm7Dum1lcm8gZGUgYXJndW1lbnRvcyBpbnbDoWxpZG9zLCBkZWJlcsOtYW4gc2VyICVkIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE3MworIzogYnVpbHRpbi9jb25maWcuYzoxNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAid3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cywgc2hvdWxkIGJlIGZyb20gJWQgdG8gJWQiCiBtc2dzdHIgIm7Dum1lcm8gZGUgYXJndW1lbnRvcyBpbnbDoWxpZG9zLCBkZWJlcsOtYW4gc2VyIGRlICVkIGEgJWQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MzA3CisjOiBidWlsdGluL2NvbmZpZy5jOjMyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGtleSBwYXR0ZXJuOiAlcyIKIG1zZ3N0ciAicGF0csOzbiBkZSBsbGF2ZSBpbnbDoWxpZG86ICVzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjM0MworIzogYnVpbHRpbi9jb25maWcuYzozNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGZvcm1hdCBkZWZhdWx0IGNvbmZpZyB2YWx1ZTogJXMiCiBtc2dzdHIgImZhbGzDsyBhbCBmb3JtYXRlYXIgZWwgdmFsb3IgcG9yIGRlZmVjdG8gZGUgY29uZmlndXJhY2nDs246ICVzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjQwMAorIzogYnVpbHRpbi9jb25maWcuYzo0MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHBhcnNlIGNvbG9yICclcyciCiBtc2dzdHIgIm5vIHNlIGFuYWxpemFyIGNvbG9yICclcyciCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDQyCisjOiBidWlsdGluL2NvbmZpZy5jOjQ1OQogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBkZWZhdWx0IGNvbG9yIHZhbHVlIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGFuYWxpemFyIGVsIHZhbG9yIHBvciBkZWZlY3RvIGRlIGNvbG9yIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjQ5NSBidWlsdGluL2NvbmZpZy5jOjc0MQorIzogYnVpbHRpbi9jb25maWcuYzo1MTIgYnVpbHRpbi9jb25maWcuYzo3NjgKIG1zZ2lkICJub3QgaW4gYSBnaXQgZGlyZWN0b3J5IgogbXNnc3RyICJubyBlbiB1biBkaXJlY3RvcmlvIGdpdCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0OTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTE1CiBtc2dpZCAid3JpdGluZyB0byBzdGRpbiBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJlc2NyaWJpciBlbiBzdGRpbiBubyBlc3TDoSBzb3BvcnRhZG8iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NTAxCisjOiBidWlsdGluL2NvbmZpZy5jOjUxOAogbXNnaWQgIndyaXRpbmcgY29uZmlnIGJsb2JzIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgImVzY3JpYmlyIGJsb2JzIGRlIGNvbmZpZ3VyYWNpw7NuIG5vIGVzdMOhIHNvcG9ydGFkbyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo1ODYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIjIFRoaXMgaXMgR2l0J3MgcGVyLXVzZXIgY29uZmlndXJhdGlvbiBmaWxlLlxuIgpAQCAtMTAzNjIsMjMgKzEzMTY2LDIzIEBACiAiI1x0bmFtZSA9ICVzXG4iCiAiI1x0ZW1haWwgPSAlc1xuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYxMAorIzogYnVpbHRpbi9jb25maWcuYzo2MjcKIG1zZ2lkICJvbmx5IG9uZSBjb25maWcgZmlsZSBhdCBhIHRpbWUiCiBtc2dzdHIgInNvbG8gdW4gYXJjaGl2byBkZSBjb25maWd1cmFjacOzbiBhIGxhIHZleiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MTUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjMyCiBtc2dpZCAiLS1sb2NhbCBjYW4gb25seSBiZSB1c2VkIGluc2lkZSBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICItLWxvY2FsIHNvbG8gcHVlZG8gc2VyIHVzYWRvIGRlbnRybyBkZSB1biByZXBvc2l0b3JpbyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjM1CiBtc2dpZCAiLS1ibG9iIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0tYmxvYiBzb2xvIHB1ZWRlIHNlciB1c2FkbyBkZW50cm8gZGUgdW4gcmVwb3NpdG9yaW8iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjM3CisjOiBidWlsdGluL2NvbmZpZy5jOjY1NQogbXNnaWQgIiRIT01FIG5vdCBzZXQiCiBtc2dzdHIgIiRIT01FIG5vIGVzdMOhIGNvbmZpZ3VyYWRvIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjY1NworIzogYnVpbHRpbi9jb25maWcuYzo2NzkKIG1zZ2lkICIiCiAiLS13b3JrdHJlZSBjYW5ub3QgYmUgdXNlZCB3aXRoIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMgdW5sZXNzIHRoZSBjb25maWdcbiIKICJleHRlbnNpb24gd29ya3RyZWVDb25maWcgaXMgZW5hYmxlZC4gUGxlYXNlIHJlYWQgXCJDT05GSUdVUkFUSU9OIEZJTEVcIlxuIgpAQCAtMTAzOTAsNTIgKzEzMTk0LDUyIEBACiAiXCJcbiIKICJlbiBcImdpdCBoZWxwIHdvcmt0cmVlXCIgcGFyYSBtw6FzIGRldGFsbGVzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjY4NworIzogYnVpbHRpbi9jb25maWcuYzo3MTQKIG1zZ2lkICItLWdldC1jb2xvciBhbmQgdmFyaWFibGUgdHlwZSBhcmUgaW5jb2hlcmVudCIKIG1zZ3N0ciAiLS1nZXQtY29sb3IgeSB0aXBvIGRlIHZhcmlhYmxlIGluY29oZXJlbnRlIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjY5MgorIzogYnVpbHRpbi9jb25maWcuYzo3MTkKIG1zZ2lkICJvbmx5IG9uZSBhY3Rpb24gYXQgYSB0aW1lIgogbXNnc3RyICJzb2xvIHVuYSBhY2Npw7NuIGEgbGEgdmV6IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjcwNQorIzogYnVpbHRpbi9jb25maWcuYzo3MzIKIG1zZ2lkICItLW5hbWUtb25seSBpcyBvbmx5IGFwcGxpY2FibGUgdG8gLS1saXN0IG9yIC0tZ2V0LXJlZ2V4cCIKIG1zZ3N0ciAiLS1uYW1lLW9ubHkgc29sbyBlcyBhcGxpY2FibGUgcGFyYSAtLWxpc3QgbyAtLWdldC1yZWdleHAiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzExCisjOiBidWlsdGluL2NvbmZpZy5jOjczOAogbXNnaWQgIiIKICItLXNob3ctb3JpZ2luIGlzIG9ubHkgYXBwbGljYWJsZSB0byAtLWdldCwgLS1nZXQtYWxsLCAtLWdldC1yZWdleHAsIGFuZCAtLSIKICJsaXN0IgogbXNnc3RyICIiCiAiLS1zaG93LW9yaWdpbiBzb2xvIGVzIGFwbGljYWJsZSBwYXJhIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCwgeSAtLWxpc3QiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzE3CisjOiBidWlsdGluL2NvbmZpZy5jOjc0NAogbXNnaWQgIi0tZGVmYXVsdCBpcyBvbmx5IGFwcGxpY2FibGUgdG8gLS1nZXQiCiBtc2dzdHIgIi0tZGVmYXVsdCBzb2xvIGVzIGFwbGljYWJsZSBwYXJhIC0tZ2V0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjczMAorIzogYnVpbHRpbi9jb25maWcuYzo3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgY29uZmlnIGZpbGUgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgbGVlciBlbCBhcmNoaXZvIGRlIGNvbmZpZ3VyYWNpw7NuICclcyciCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzMzCisjOiBidWlsdGluL2NvbmZpZy5jOjc2MAogbXNnaWQgImVycm9yIHByb2Nlc3NpbmcgY29uZmlnIGZpbGUocykiCiBtc2dzdHIgImVycm9yIGFsIHByb2Nlc2FyIGFyY2hpdm8ocykgZGUgY29uZmlndXJhY2nDs24iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzQzCisjOiBidWlsdGluL2NvbmZpZy5jOjc3MAogbXNnaWQgImVkaXRpbmcgc3RkaW4gaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAiZWRpdGFyIHN0ZGluIG5vIGVzdMOhIHNvcG9ydGFkbyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3NDUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzcyCiBtc2dpZCAiZWRpdGluZyBibG9icyBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJlZGl0YXIgYmxvYnMgbm8gZXN0w6Egc29wb3J0YWRvIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc1OQorIzogYnVpbHRpbi9jb25maWcuYzo3ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNyZWF0ZSBjb25maWd1cmF0aW9uIGZpbGUgJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGNyZWFyIGVsIGFyY2hpdm8gZGUgY29uZmlndXJhY2nDs24gJXMiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzcyCisjOiBidWlsdGluL2NvbmZpZy5jOjc5OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY2Fubm90IG92ZXJ3cml0ZSBtdWx0aXBsZSB2YWx1ZXMgd2l0aCBhIHNpbmdsZSB2YWx1ZVxuIgpAQCAtMTA0NDQsNyArMTMyNDgsNyBAQAogIm5vIHNlIHB1ZWRlIHNvYnJlc2NyaWJpciBtw7psdGlwbGVzIHZhbG9yZXMgY29uIHVuIMO6bmljbyB2YWxvclxuIgogIlx0VXNlIHVuYSByZWdleHAsIC0tYWRkIG8gLS1yZXBsYWNlLWFsbCBwYXJhIGNhbWJpYXIgJXMuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjg0NiBidWlsdGluL2NvbmZpZy5jOjg1NworIzogYnVpbHRpbi9jb25maWcuYzo4NzMgYnVpbHRpbi9jb25maWcuYzo4ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBzZWN0aW9uOiAlcyIKIG1zZ3N0ciAibm8gZXhpc3RlIGxhIHNlY2Npw7NuOiAlcyIKQEAgLTEwNDc3LDM3ICsxMzI4MSwzNyBAQAogbXNnaWQgImFubm90YXRlZCIKIG1zZ3N0ciAiYW5vdGFkbyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJhbm5vdGF0ZWQgdGFnICVzIG5vdCBhdmFpbGFibGUiCiBtc2dzdHIgInRhZyBhbm90YWRvICVzIG5vIGRpc3BvbmlibGUiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNzYKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYW5ub3RhdGVkIHRhZyAlcyBoYXMgbm8gZW1iZWRkZWQgbmFtZSIKIG1zZ3N0ciAidGFnIGFub3RhZG8gJXMgbm8gdGllbmUgbm9tYnJlIGVtYmViaWRvIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIGlzIHJlYWxseSAnJXMnIGhlcmUiCiBtc2dzdHIgInRhZyAnJXMnIGVzIHJlYWxtZW50ZSAnJXMnIGFxdcOtIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MzIyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHRhZyBleGFjdGx5IG1hdGNoZXMgJyVzJyIKIG1zZ3N0ciAibm8gaGF5IHRhZyBxdWUgY29uY3VlcmRlIGV4YWN0YW1lbnRlIGNvbiAnJXMnIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIGV4YWN0IG1hdGNoIG9uIHJlZnMgb3IgdGFncywgc2VhcmNoaW5nIHRvIGRlc2NyaWJlXG4iCiBtc2dzdHIgIk5vIGhheSBjb2luY2lkZW5jaWEgZXhhY3RhIGVuIHJlZnMgbyB0YWdzLCBidXNjYW5kbyBlbiBkZXNjcmliZVxuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mzc4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mzk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZpbmlzaGVkIHNlYXJjaCBhdCAlc1xuIgogbXNnc3RyICJiw7pzcXVlZGEgZmluYWxpemFkYSBhIGxhcyAlc1xuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDA0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyBhbm5vdGF0ZWQgdGFncyBjYW4gZGVzY3JpYmUgJyVzJy5cbiIKQEAgLTEwNTE2LDcgKzEzMzIwLDcgQEAKICJObyBoYXkgdGFncyBhbm90YWRvcyBxdWUgcHVlZGFuIGRlc2NyaWJpciAnJXMnLlxuIgogIlNpbiBlbWJhcmdvLCBodWJpZXJvbiB0YWdzIG5vIGFub3RhZG9zOiBpbnRlbnRlIC0tdGFncy4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MDgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vIHRhZ3MgY2FuIGRlc2NyaWJlICclcycuXG4iCkBAIC0xMDUyNSwxMiArMTMzMjksMTIgQEAKICJOaW5nw7puIHRhZyBwdWVkZSBkZXNjcmliaXQgJyVzJy5cbiIKICJJbnRlbnRlIC0tYWx3YXlzLCBvIGNyZWUgYWxndW5vcyB0YWdzLiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQzOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQ1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmF2ZXJzZWQgJWx1IGNvbW1pdHNcbiIKIG1zZ3N0ciAiJWx1IGNvbW1pdHMgY3J1emFkb3NcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQ0MQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQ1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibW9yZSB0aGFuICVpIHRhZ3MgZm91bmQ7IGxpc3RlZCAlaSBtb3N0IHJlY2VudFxuIgpAQCAtMTA1MzksMTE4ICsxMzM0MywxMTggQEAKICJzZSBlbmNvbnRyw7MgbcOhcyBkZSAlaSB0YWdzOyBzZSBtb3N0csOzICVpIG3DoXMgcmVjaWVudGVcbiIKICJmaW4gZGUgbGEgYsO6c3F1ZWRhIGVuICVzXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MDkKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzY3JpYmUgJXNcbiIKIG1zZ3N0ciAiZGVzY3JpYmUgJXNcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUxMiBidWlsdGluL2xvZy5jOjUxMworIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIKIG1zZ3N0ciAiTm9tYnJlIGRlIG9iamV0byAlcyBubyB2w6FsaWRvIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTIwCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5laXRoZXIgYSBjb21taXQgbm9yIGJsb2IiCiBtc2dzdHIgIiVzIG5vIGVzIHVuIGNvbW1pdCBuaSB1biBibG9iIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUxCiBtc2dpZCAiZmluZCB0aGUgdGFnIHRoYXQgY29tZXMgYWZ0ZXIgdGhlIGNvbW1pdCIKIG1zZ3N0ciAiZW5jb250cmFyIGVsIHRhZyBxdWUgdmllbmUgZGVzcHXDqXMgZGVsIGNvbW1pdCIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzNQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MgogbXNnaWQgImRlYnVnIHNlYXJjaCBzdHJhdGVneSBvbiBzdGRlcnIiCiBtc2dzdHIgImhhY2VyIGRlYnVnIGEgbGEgZXN0cmF0ZWdpYSBkZSBiw7pzcXVlZGEgZW4gc3RkZXJyIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM2CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUzCiBtc2dpZCAidXNlIGFueSByZWYiCiBtc2dzdHIgInVzZSBjdWFscXVpZXIgcmVmIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU0CiBtc2dpZCAidXNlIGFueSB0YWcsIGV2ZW4gdW5hbm5vdGF0ZWQiCiBtc2dzdHIgInVzZSBjdWFscXVpZXIgdGFnLCBpbmNsdXNvIGxvcyBubyBhbm90YWRvcyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NQogbXNnaWQgImFsd2F5cyB1c2UgbG9uZyBmb3JtYXQiCiBtc2dzdHIgInNpZW1wcmUgdXNhciBmb3JtYXRvIGxhcmdvIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM5CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU2CiBtc2dpZCAib25seSBmb2xsb3cgZmlyc3QgcGFyZW50IgogbXNnc3RyICJzb2xvIHNlZ3VpciBlbCBwcmltZXIgcGF0csOzbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU0MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1OQogbXNnaWQgIm9ubHkgb3V0cHV0IGV4YWN0IG1hdGNoZXMiCiBtc2dzdHIgInNvbG8gbW9zdHJhciBjb25jb3JkYW5jaWFzIGV4YWN0YXMiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjEKIG1zZ2lkICJjb25zaWRlciA8bj4gbW9zdCByZWNlbnQgdGFncyAoZGVmYXVsdDogMTApIgogbXNnc3RyICJjb25zaWRlcmFyIDxuPiB0YWdzIG3DoXMgcmVjaWVudGVzIChkZWZhdWx0OjEwKSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU0NgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2MwogbXNnaWQgIm9ubHkgY29uc2lkZXIgdGFncyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgInNvbG8gY29uc2lkZXJhciB0YWdzIHF1ZSBjb25jdWVyZGVuIGNvbiA8cGF0csOzbj4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjUKIG1zZ2lkICJkbyBub3QgY29uc2lkZXIgdGFncyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgIm5vIGNvbnNpZGVyYXIgdGFncyBxdWUgY29uY3VlcmRlbiBjb24gPHBhdHLDs24+IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUwIGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjcgYnVpbHRpbi9uYW1lLXJldi5jOjUzNQogbXNnaWQgInNob3cgYWJicmV2aWF0ZWQgY29tbWl0IG9iamVjdCBhcyBmYWxsYmFjayIKIG1zZ3N0ciAibW9zdHJhciBlbCBvYmpldG8gY29tbWl0IGFicmV2aWFkbyBjb21vIGZhbGxiYWNrIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUxIGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjggYnVpbHRpbi9kZXNjcmliZS5jOjU3MQogbXNnaWQgIm1hcmsiCiBtc2dzdHIgIm1hcmNhIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTY5CiBtc2dpZCAiYXBwZW5kIDxtYXJrPiBvbiBkaXJ0eSB3b3JraW5nIHRyZWUgKGRlZmF1bHQ6IFwiLWRpcnR5XCIpIgogbXNnc3RyICJhZGp1bnRhciA8bWFyY2E+IGVuIGVsIMOhcmJvbCBkZSB0cmFiYWpvIHN1Y2lvIChkZWZhdWx0OiBcIi1kaXJ0eVwiKSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU3MgogbXNnaWQgImFwcGVuZCA8bWFyaz4gb24gYnJva2VuIHdvcmtpbmcgdHJlZSAoZGVmYXVsdDogXCItYnJva2VuXCIpIgogbXNnc3RyICJhZGp1bnRhciA8bWFyY2E+IGVuIHVuIMOhcmJvbCBkZSB0cmFiYWpvIHJvdG8gKGRlZmF1bHQ6IFwiLWJyb2tlblwiKSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU3MworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU5MAogbXNnaWQgIi0tbG9uZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFiYnJldj0wIgogbXNnc3RyICItLWxvbmcgZXMgaW5jb21wYXRpYmxlIGNvbiAtLWFiYnJldj0wIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NjAyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjE5CiBtc2dpZCAiTm8gbmFtZXMgZm91bmQsIGNhbm5vdCBkZXNjcmliZSBhbnl0aGluZy4iCiBtc2dzdHIgIk5vIHNlIGVuY29udHJhcm9uIG5vbWJyZXMsIG5vIHNlIHB1ZWRlIGRlc2NyaWJpciBuYWRhLiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjY1MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjY3MAogbXNnaWQgIi0tZGlydHkgaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgogbXNnc3RyICItLWRpcnR5IGVzIGluY29tcGF0aWJsZSBjb24gY29tbWl0LWlzbW9zIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NjU0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjcyCiBtc2dpZCAiLS1icm9rZW4gaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgogbXNnc3RyICItLWJyb2tlbiBlcyBpbmNvbXBhdGlibGUgY29uIGNvbW1pdC1pc21vcyIKIAotIzogYnVpbHRpbi9kaWZmLmM6ODMKKyM6IGJ1aWx0aW4vZGlmZi5jOjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IG5vdCBhIHJlZ3VsYXIgZmlsZSBvciBzeW1saW5rIgogbXNnc3RyICInJXMnOiBubyBlcyB1biBhcmNoaXZvIHJlZ3VsYXIgbyB1biBlbmxhY2Ugc2ltYsOzbGljbyIKIAotIzogYnVpbHRpbi9kaWZmLmM6MjM0CisjOiBidWlsdGluL2RpZmYuYzoyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvcHRpb246ICVzIgogbXNnc3RyICJvcGNpw7NuIGludsOhbGlkYTogJXMiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjM2MworIzogYnVpbHRpbi9kaWZmLmM6MzUwCiBtc2dpZCAiTm90IGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIk5vIGVzIHVuIHJlcG9zaXRvcmlvIGdpdCIKIAotIzogYnVpbHRpbi9kaWZmLmM6NDA3CisjOiBidWlsdGluL2RpZmYuYzozOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvYmplY3QgJyVzJyBnaXZlbi4iCiBtc2dzdHIgIm9iamV0byAnJXMnIGVudHJlZ2FkbyBubyBlcyB2w6FsaWRvLiIKIAotIzogYnVpbHRpbi9kaWZmLmM6NDE2CisjOiBidWlsdGluL2RpZmYuYzo0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9yZSB0aGFuIHR3byBibG9icyBnaXZlbjogJyVzJyIKIG1zZ3N0ciAibcOhcyBkZSBkb3MgYmxvYnMgZW50cmVnYWRvczogJyVzJyIKIAotIzogYnVpbHRpbi9kaWZmLmM6NDIxCisjOiBidWlsdGluL2RpZmYuYzo0MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5oYW5kbGVkIG9iamVjdCAnJXMnIGdpdmVuLiIKIG1zZ3N0ciAib2JqZXRvIG5vIG1hbmVqYWRvICclcycgZW50cmVnYWRvLiIKQEAgLTEwNjg3LDU0ICsxMzQ5MSw1NCBAQAogImZvcm1hdG9zIGNvbWJpbmFkb3MgZGUgZGlmZiAoJy1jJyB5ICctLWNjJykgbm8gc29wb3J0YWRvcyBlblxuIgogIm1vZG8gZGlmZiBwYXJhIGRpcmVjdG9yaW8oJy1kJyB5ICctLWRpci1kaWZmJykuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjMzCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJvdGggZmlsZXMgbW9kaWZpZWQ6ICclcycgYW5kICclcycuIgogbXNnc3RyICJhbWJvcyBhcmNoaXZvcyBtb2RpZmljYWRvczogJyVzJyB5ICclcycuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjM1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjM2CiBtc2dpZCAid29ya2luZyB0cmVlIGZpbGUgaGFzIGJlZW4gbGVmdC4iCiBtc2dzdHIgImFyY2hpdm8gZGVsIMOhcmJvbCBkZSB0cmFiYWpvIGhhIHNpZG8gZGVqYWRvLiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0NgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0ZW1wb3JhcnkgZmlsZXMgZXhpc3QgaW4gJyVzJy4iCiBtc2dzdHIgImFyY2hpdm8gdGVtcG9yYWwgZXhpc3RlIGVuICclcycuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ3CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ4CiBtc2dpZCAieW91IG1heSB3YW50IHRvIGNsZWFudXAgb3IgcmVjb3ZlciB0aGVzZS4iCi1tc2dzdHIgInRhbCB2ZXogZGVzZWUgbGltcGlhciBvIHJlY3VwZXJhciBlc3Rvcy4iCittc2dzdHIgInRhbCB2ZXogZGVzZWVzIGxpbXBpYXIgbyByZWN1cGVyYXIgZXN0b3MuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6Njk2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6Njk3CiBtc2dpZCAidXNlIGBkaWZmLmd1aXRvb2xgIGluc3RlYWQgb2YgYGRpZmYudG9vbGAiCiBtc2dzdHIgInVzZSBgZGlmZi5ndWl0b29sYCBlbiBsdWdhciBkZSBgZGlmZi50b29sYCIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OQogbXNnaWQgInBlcmZvcm0gYSBmdWxsLWRpcmVjdG9yeSBkaWZmIgogbXNnc3RyICJyZWFsaXphciB1biBkaWZmIGRlIHRvZG8gZWwgZGlyZWN0b3JpbyIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwMAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwMQogbXNnaWQgImRvIG5vdCBwcm9tcHQgYmVmb3JlIGxhdW5jaGluZyBhIGRpZmYgdG9vbCIKIG1zZ3N0ciAibm8gbW9zdHJhciBhbnRlcyBkZSBsYW56YXIgdW5hIGhlcnJhbWllbnRhIGRlIGRpZmYiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDUKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDYKIG1zZ2lkICJ1c2Ugc3ltbGlua3MgaW4gZGlyLWRpZmYgbW9kZSIKIG1zZ3N0ciAidXNhciBlbmxhY2VzIHNpbWLDs2xpY29zIGVuIG1vZG8gZGlyLWRpZmYiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDYKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDcKIG1zZ2lkICJ0b29sIgogbXNnc3RyICJoZXJyYW1pZW50YSIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOAogbXNnaWQgInVzZSB0aGUgc3BlY2lmaWVkIGRpZmYgdG9vbCIKIG1zZ3N0ciAidXNhciBsYSBoZXJyYW1pZW50YSBkZSBkaWZmIGVzcGVjaWZpY2FkYSIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxMAogbXNnaWQgInByaW50IGEgbGlzdCBvZiBkaWZmIHRvb2xzIHRoYXQgbWF5IGJlIHVzZWQgd2l0aCBgLS10b29sYCIKIG1zZ3N0ciAiIgogIm1vc3RyYXIgdW5hIGxpc3RhIGRlIGhlcnJhbWllbnRhcyBkZSBkaWZmIHF1ZSBwdWVkZW4gc2VyIHVzYWRhcyBjb24gYC0tdG9vbGAiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTIKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTMKIG1zZ2lkICIiCiAibWFrZSAnZ2l0LWRpZmZ0b29sJyBleGl0IHdoZW4gYW4gaW52b2tlZCBkaWZmIHRvb2wgcmV0dXJucyBhIG5vbiAtIHplcm8gZXhpdCAiCiAiY29kZSIKQEAgLTEwNzQyLDE2MSArMTM1NDYsMjQ1IEBACiAiaGFjZXIgcXVlICdnaXQtZGlmZnRvb2wnIHNhbGdhIGN1YW5kbyB1bmEgaGVycmFtaWVudGEgZGUgZGlmZiByZXRvcm5lIHVuICIKICJjw7NkaWdvIGRlIHNhbGlkYSBkaXN0aW50byBkZSBjZXJvIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzE1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE2CiBtc2dpZCAic3BlY2lmeSBhIGN1c3RvbSBjb21tYW5kIGZvciB2aWV3aW5nIGRpZmZzIgogbXNnc3RyICJlc3BlY2lmaWNhciB1biBjb21hbmRvIHBlcnNvbmFsaXphZG8gcGFyYSB2ZXIgZGlmZnMiCiAKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTcKK21zZ2lkICJwYXNzZWQgdG8gYGRpZmZgIgorbXNnc3RyICJwYXNhZG8gYSBgZGlmZmAiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzIKK21zZ2lkICJkaWZmdG9vbCByZXF1aXJlcyB3b3JrdHJlZSBvciAtLW5vLWluZGV4IgorbXNnc3RyICJkaWZmdG9vbCByZXF1aWVyZSB1biDDoXJib2wgZGUgdHJhYmFqbyBvIC0tbm8taW5kZXgiCisKICM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzkKK21zZ2lkICItLWRpci1kaWZmIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8taW5kZXgiCittc2dzdHIgIi0tZGlydHktZGlmZiBlcyBpbmNvbXBhdGlibGUgY29uIC0tbm8taW5kZXgiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDIKK21zZ2lkICItLWd1aSwgLS10b29sIGFuZCAtLWV4dGNtZCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICItLWd1aSwgLS10b29sIHkgLS1leHRjbWQgc29uIG11dHVhbWVudGUgZXhjbHVzaXZhcyIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc1MAogbXNnaWQgIm5vIDx0b29sPiBnaXZlbiBmb3IgLS10b29sPTx0b29sPiIKIG1zZ3N0ciAibm8gc2UgaGEgcHJvcG9yY2lvbmFkbyA8aGVycmFtaWVudGE+IHBhcmEgLS10b29sPTxoZXJyYW1pZW50YT4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDYKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NTcKIG1zZ2lkICJubyA8Y21kPiBnaXZlbiBmb3IgLS1leHRjbWQ9PGNtZD4iCiBtc2dzdHIgIm5vIHNlIGhhIGVudHJlZ2FkbyA8Y29tYW5kbz4gcGFyYSAtLWV4dGNtZD08Y29tYW5kbz4iCiAKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo2Cittc2dpZCAiZ2l0IGVudi0taGVscGVyIC0tdHlwZT1bYm9vbHx1bG9uZ10gPG9wdGlvbnM+IDxlbnYtdmFyPiIKK21zZ3N0ciAiZ2l0IGVudi0taGVscGVyIC0tdHlwZT1bYm9vbHx1bG9uZ10gPG9wY2lvbmVzPiA8ZW52LXZhcj4iCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzozNyBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKK21zZ2lkICJ0eXBlIgorbXNnc3RyICJ0aXBvIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NDEKK21zZ2lkICJkZWZhdWx0IGZvciBnaXRfZW52XyooLi4uKSB0byBmYWxsIGJhY2sgb24iCittc2dzdHIgImRlZmF1bHQgcGFyYSBnaXRfZW52XyooLi4uKSBlcyBoYWNlciBmYWxsYmFjayBlbiIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjQzCittc2dpZCAiYmUgcXVpZXQgb25seSB1c2UgZ2l0X2Vudl8qKCkgdmFsdWUgYXMgZXhpdCBjb2RlIgorbXNnc3RyICJzZXIgc2lsZW5jaW9zbyBzb2xvIHVzYXIgdmFsb3IgZ2l0X2Vudl8qKCkgY29tbyBjw7NkaWdvIGRlIHNhbGlkYSIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjYyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgLS1kZWZhdWx0JyBleHBlY3RzIGEgYm9vbGVhbiB2YWx1ZSB3aXRoIGAtLXR5cGU9Ym9vbGAsIG5vdCBgJXNgIgorbXNnc3RyICJvcGNpw7NuIGAtLWRlZmF1bHQnIGVzcGVyYSB1biB2YWxvciBib29sZWFuIGNvbiBgLS10eXBlPWJvb2xgLCBubyBgJXNgIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9wdGlvbiBgLS1kZWZhdWx0JyBleHBlY3RzIGFuIHVuc2lnbmVkIGxvbmcgdmFsdWUgd2l0aCBgLS10eXBlPXVsb25nYCwgbm90IGAiCisiJXNgIgorbXNnc3RyICIiCisib3BjacOzbiBgLS1kZWZhdWx0JyBlc3BlcmEgdW4gdmFsb3IgdW5zaWduZWQgbG9uZyBjb24gYC0tdHlwZT11bG9uZ2AsIG5vIGAlc2AiCisKICM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoyOQogbXNnaWQgImdpdCBmYXN0LWV4cG9ydCBbcmV2LWxpc3Qtb3B0c10iCiBtc2dzdHIgImdpdCBmYXN0LWV4cG9ydCBbcmV2LWxpc3Qtb3B0c10iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6ODUzCittc2dpZCAiRXJyb3I6IENhbm5vdCBleHBvcnQgbmVzdGVkIHRhZ3MgdW5sZXNzIC0tbWFyay10YWdzIGlzIHNwZWNpZmllZC4iCittc2dzdHIgIiIKKyJFcnJvcjogTm8gc2UgcHVlZGUgZXhwb3J0YXIgbG9zIHRhZ3MgYW5pZGFkb3MgYSBtZW5vcyBxdWUgLS1tYXJrLXRhZ3Mgc2VhICIKKyJlc3BlY2lmaWNhZG8uIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1MgogbXNnaWQgInNob3cgcHJvZ3Jlc3MgYWZ0ZXIgPG4+IG9iamVjdHMiCiBtc2dzdHIgIm1vc3RyYXIgcHJvZ3Jlc28gZGVzcHXDqXMgZGUgPG4+IG9iamV0b3MiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NAogbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiBzaWduZWQgdGFncyIKIG1zZ3N0ciAic2VsZWNjaW9uYXIgZWwgbWFuZWpvIGRlIHRhZ3MgZmlybWFkb3MiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDExCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NwogbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiB0YWdzIHRoYXQgdGFnIGZpbHRlcmVkIG9iamVjdHMiCiBtc2dzdHIgInNlbGVjY2lvbmFyIGVsIG1hbmVqbyBkZSB0YWdzIHF1ZSBzb24gdGFncyBkZSBvYmpldG9zIGZpbHRyYWRvcyIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTQKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTYwCittc2dpZCAic2VsZWN0IGhhbmRsaW5nIG9mIGNvbW1pdCBtZXNzYWdlcyBpbiBhbiBhbHRlcm5hdGUgZW5jb2RpbmciCittc2dzdHIgInNlbGVjY2lvbmFyIGVsIG1hbmVqbyBkZSBtZW5zYWplcyBkZSBjb21taXQgZW4gdW4gZW5jb2RpbmcgZGlmZXJlbnRlIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2MwogbXNnaWQgIkR1bXAgbWFya3MgdG8gdGhpcyBmaWxlIgogbXNnc3RyICJWb2xjYXIgbWFyY2FzIGEgZXN0ZSBhcmNoaXZvIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjUKIG1zZ2lkICJJbXBvcnQgbWFya3MgZnJvbSB0aGlzIGZpbGUiCiBtc2dzdHIgIkltcG9ydGFyIG1hcmNhcyBkZSBlc3RlIGFyY2hpdm8iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDE4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2OQorbXNnaWQgIkltcG9ydCBtYXJrcyBmcm9tIHRoaXMgZmlsZSBpZiBpdCBleGlzdHMiCittc2dzdHIgIkltcG9ydGFyIG1hcmNhcyBkZSBlc3RlIGFyY2hpdm8gc2kgZXhpc3RlIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3MQogbXNnaWQgIkZha2UgYSB0YWdnZXIgd2hlbiB0YWdzIGxhY2sgb25lIgogbXNnc3RyICJGYWxzaWZpY2FyIHVuIHRhZ2dlciBjdWFuZG8gbGVzIGZhbHRhIHVubyIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjAKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTczCiBtc2dpZCAiT3V0cHV0IGZ1bGwgdHJlZSBmb3IgZWFjaCBjb21taXQiCiBtc2dzdHIgIk1vc3RyYXIgdG9kbyBlbCDDoXJib2wgcGFyYSBjYWRhIGNvbW1pdCIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc1CiBtc2dpZCAiVXNlIHRoZSBkb25lIGZlYXR1cmUgdG8gdGVybWluYXRlIHRoZSBzdHJlYW0iCiBtc2dzdHIgIlVzZSBlbCBmZWF0dXJlIGRvbmUgcGFyYSB0ZXJtaW5hciBlbCBzdHJlYW0iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDIzCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NgogbXNnaWQgIlNraXAgb3V0cHV0IG9mIGJsb2IgZGF0YSIKIG1zZ3N0ciAiU2FsdGFyIGVsIG91dHB1dCBkZSBkYXRhIGJsb2IiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDI0IGJ1aWx0aW4vbG9nLmM6MTU4OAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzcgYnVpbHRpbi9sb2cuYzoxNzA1CiBtc2dpZCAicmVmc3BlYyIKIG1zZ3N0ciAicmVmc3BlYyIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjUKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc4CiBtc2dpZCAiQXBwbHkgcmVmc3BlYyB0byBleHBvcnRlZCByZWZzIgogbXNnc3RyICJBcGxpY2FyIHJlZnNwZWMgcGFyYSBsb3MgcmVmcyBleHBvcnRhZG9zIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyNgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzkKIG1zZ2lkICJhbm9ueW1pemUgb3V0cHV0IgogbXNnc3RyICJhbm9uaW1pemFyIGxhIHNhbGlkYSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjI4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE4MQorbXNnaWQgIlJlZmVyZW5jZSBwYXJlbnRzIHdoaWNoIGFyZSBub3QgaW4gZmFzdC1leHBvcnQgc3RyZWFtIGJ5IG9iamVjdCBpZCIKK21zZ3N0ciAiIgorIlBhZHJlcyBkZSBsYSByZWZlcmVuY2lhIHF1ZSBubyBlc3RhbiBlbiBmYXN0LWV4cG9ydCBzdHJlYW0gcG9yIGlkIGRlIG9iamV0byIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODMKK21zZ2lkICJTaG93IG9yaWdpbmFsIG9iamVjdCBpZHMgb2YgYmxvYnMvY29tbWl0cyIKK21zZ3N0ciAiTW9zdHJhciBpZHMgZGUgb2JqZXRvcyBvcmlnaW5hbGVzIHBhcmEgYmxvYnMvY29tbWl0cyIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODUKK21zZ2lkICJMYWJlbCB0YWdzIHdpdGggbWFyayBpZHMiCittc2dzdHIgIk1hcmNhciB0YWdzIGNvbiBpZHMgZGUgbWFyayIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEyMjAKK21zZ2lkICJDYW5ub3QgcGFzcyBib3RoIC0taW1wb3J0LW1hcmtzIGFuZCAtLWltcG9ydC1tYXJrcy1pZi1leGlzdHMiCittc2dzdHIgIk5vIHNlIHB1ZWRlIHBhc2FyIGFtYm9zIC0taW1wb3J0LW1hcmtzIHkgLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzIgorCisjOiBidWlsdGluL2ZldGNoLmM6MzQKIG1zZ2lkICJnaXQgZmV0Y2ggWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCiBtc2dzdHIgImdpdCBmZXRjaCBbPG9wY2lvbmVzPl0gWzxyZXBvc2l0b3Jpbz4gWzxyZWZzcGVjPi4uLl1dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MjkKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNQogbXNnaWQgImdpdCBmZXRjaCBbPG9wdGlvbnM+XSA8Z3JvdXA+IgogbXNnc3RyICJnaXQgZmV0Y2ggWzxvcGNpb25lcz5dIDxncnVwbz4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzozMAorIzogYnVpbHRpbi9mZXRjaC5jOjM2CiBtc2dpZCAiZ2l0IGZldGNoIC0tbXVsdGlwbGUgWzxvcHRpb25zPl0gWyg8cmVwb3NpdG9yeT4gfCA8Z3JvdXA+KS4uLl0iCiBtc2dzdHIgImdpdCBmZXRjaCAtLW11bHRpcGxlIFs8b3BjaW9uZXM+XSBbKDxyZXBvc2l0b3Jpbz4gfCA8Z3J1cG8+KS4uLl0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzozMQorIzogYnVpbHRpbi9mZXRjaC5jOjM3CiBtc2dpZCAiZ2l0IGZldGNoIC0tYWxsIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgZmV0Y2ggLS1hbGwgWzxvcGNpb25lcz5dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTE1IGJ1aWx0aW4vcHVsbC5jOjE5NAorIzogYnVpbHRpbi9mZXRjaC5jOjExNgorbXNnaWQgImZldGNoLnBhcmFsbGVsIGNhbm5vdCBiZSBuZWdhdGl2ZSIKK21zZ3N0ciAiZmV0Y2gucGFyYWxsZWwgbm8gcHVlZGUgc2VyIG5lZ2F0aXZvIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTM5IGJ1aWx0aW4vcHVsbC5jOjE4NAogbXNnaWQgImZldGNoIGZyb20gYWxsIHJlbW90ZXMiCiBtc2dzdHIgImV4dHJhZXIgZGUgdG9kb3MgbG9zIHJlbW90b3MiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTcgYnVpbHRpbi9wdWxsLmM6MTk3CisjOiBidWlsdGluL2ZldGNoLmM6MTQxIGJ1aWx0aW4vcHVsbC5jOjIyOAorbXNnaWQgInNldCB1cHN0cmVhbSBmb3IgZ2l0IHB1bGwvZmV0Y2giCittc2dzdHIgImNvbmZpZ3VyYXIgdXBzdHJlYW0gcGFyYSBnaXQgcHVsbGwvZmV0Y2giCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMgYnVpbHRpbi9wdWxsLmM6MTg3CiBtc2dpZCAiYXBwZW5kIHRvIC5naXQvRkVUQ0hfSEVBRCBpbnN0ZWFkIG9mIG92ZXJ3cml0aW5nIgogbXNnc3RyICJhZGp1bnRhciBhIC5naXQvRkVUQ0hfSEVBRCBlbiBsdWdhciBkZSBzb2JyZXNjcmliaXIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTkgYnVpbHRpbi9wdWxsLmM6MjAwCisjOiBidWlsdGluL2ZldGNoLmM6MTQ1IGJ1aWx0aW4vcHVsbC5jOjE5MAogbXNnaWQgInBhdGggdG8gdXBsb2FkIHBhY2sgb24gcmVtb3RlIGVuZCIKIG1zZ3N0ciAicnV0YSBwYXJhIGNhcmdhciBlbCBwYXF1ZXRlIGFsIGZpbmFsIGRlbCByZW1vdG8iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMjAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDYKIG1zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgbG9jYWwgcmVmZXJlbmNlIgogbXNnc3RyICJmb3J6YXIgc29icmVzY3JpdHVyYSBkZSByZWZlcmVuY2lhIGxvY2FsIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTIyCisjOiBidWlsdGluL2ZldGNoLmM6MTQ4CiBtc2dpZCAiZmV0Y2ggZnJvbSBtdWx0aXBsZSByZW1vdGVzIgogbXNnc3RyICJleHRyYWVyIGRlIG3Dumx0aXBsZXMgcmVtb3RvcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyNCBidWlsdGluL3B1bGwuYzoyMDQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTAgYnVpbHRpbi9wdWxsLmM6MTk0CiBtc2dpZCAiZmV0Y2ggYWxsIHRhZ3MgYW5kIGFzc29jaWF0ZWQgb2JqZWN0cyIKIG1zZ3N0ciAiZXh0cmFlciB0b2RvcyBsb3MgdGFncyB5IG9iamV0b3MgYXNvY2lhZG9zIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI2CisjOiBidWlsdGluL2ZldGNoLmM6MTUyCiBtc2dpZCAiZG8gbm90IGZldGNoIGFsbCB0YWdzICgtLW5vLXRhZ3MpIgogbXNnc3RyICJubyBleHRyYWVyIHRvZG9zIGxvcyB0YWdzICgtLW5vLXRhZ3MpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI4CisjOiBidWlsdGluL2ZldGNoLmM6MTU0CiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgZmV0Y2hlZCBpbiBwYXJhbGxlbCIKIG1zZ3N0ciAibsO6bWVybyBkZSBzdWJtw7NkdWxvcyBleHRyYcOtZG9zIGVuIHBhcmFsZWxvIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMwIGJ1aWx0aW4vcHVsbC5jOjIwNworIzogYnVpbHRpbi9mZXRjaC5jOjE1NiBidWlsdGluL3B1bGwuYzoxOTcKIG1zZ2lkICJwcnVuZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMgbm8gbG9uZ2VyIG9uIHJlbW90ZSIKIG1zZ3N0ciAibGltcGlhciByYW1hcyByZW1vdGFzIHJhc3RyZWFkYXMgcXVlIHlhIG5vIGVzdMOhbiBlbiBlbCByZW1vdG8iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTgKIG1zZ2lkICJwcnVuZSBsb2NhbCB0YWdzIG5vIGxvbmdlciBvbiByZW1vdGUgYW5kIGNsb2JiZXIgY2hhbmdlZCB0YWdzIgogbXNnc3RyICIiCiAibGltcGlhciB0YWdzIGxvY2FsZXMgcXVlIG5vIHNlIGVuY3VlbnRyYW4gZW4gZWwgcmVtb3RvIHkgZWxpbWluYXIgdGFncyAiCiAiY2FtYmlhZG9zIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMzIGJ1aWx0aW4vZmV0Y2guYzoxNTYgYnVpbHRpbi9wdWxsLmM6MTMyCisjOiBidWlsdGluL2ZldGNoLmM6MTU5IGJ1aWx0aW4vZmV0Y2guYzoxODIgYnVpbHRpbi9wdWxsLmM6MTIxCiBtc2dpZCAib24tZGVtYW5kIgogbXNnc3RyICJlbiBkZW1hbmRhIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTM0CisjOiBidWlsdGluL2ZldGNoLmM6MTYwCiBtc2dpZCAiY29udHJvbCByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyIKIG1zZ3N0ciAiY29udHJvbGFyIGV4dHJhY2Npw7NuIHJlY3Vyc2l2YSBkZSBzdWJtw7NkdWxvcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzOCBidWlsdGluL3B1bGwuYzoyMTUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9wdWxsLmM6MjA1CiBtc2dpZCAia2VlcCBkb3dubG9hZGVkIHBhY2siCiBtc2dzdHIgIm1hbnRlbmVyIGVsIHBhcXVldGUgZGVzY2FyZ2FkbyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0MAorIzogYnVpbHRpbi9mZXRjaC5jOjE2NgogbXNnaWQgImFsbG93IHVwZGF0aW5nIG9mIEhFQUQgcmVmIgogbXNnc3RyICJwZXJtaXRpciBhY3R1YWxpemFyIGxhIHJlZiBIRUFEIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQzIGJ1aWx0aW4vZmV0Y2guYzoxNDkgYnVpbHRpbi9wdWxsLmM6MjE4CisjOiBidWlsdGluL2ZldGNoLmM6MTY5IGJ1aWx0aW4vZmV0Y2guYzoxNzUgYnVpbHRpbi9wdWxsLmM6MjA4CiBtc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyBjbG9uZSIKIG1zZ3N0ciAiaGlzdG9yaWEgcHJvZnVuZGEgZGUgdW4gY2xvbiBzdXBlcmZpY2lhbCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0NQorIzogYnVpbHRpbi9mZXRjaC5jOjE3MQogbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgcmVwb3NpdG9yeSBiYXNlZCBvbiB0aW1lIgogbXNnc3RyICJoaXN0b3JpYSBwcm9mdW5kYSBkZSB1biByZXBvc2l0b3JpbyBzdXBlcmZpY2lhbCBiYXNhZG8gZW4gdGllbXBvIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTUxIGJ1aWx0aW4vcHVsbC5jOjIyMQorIzogYnVpbHRpbi9mZXRjaC5jOjE3NyBidWlsdGluL3B1bGwuYzoyMTEKIG1zZ2lkICJjb252ZXJ0IHRvIGEgY29tcGxldGUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiY29udmVydGlyIGEgdW4gcmVwb3NpdG9yaW8gY29tcGxldG8iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODAKIG1zZ2lkICJwcmVwZW5kIHRoaXMgdG8gc3VibW9kdWxlIHBhdGggb3V0cHV0IgogbXNnc3RyICJhbnRlcG9uZXIgZXN0byBhIHNhbGlkYSBkZSBsYSBydXRhIGRlbCBzdWJtw7NkdWxvIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU3CisjOiBidWlsdGluL2ZldGNoLmM6MTgzCiBtc2dpZCAiIgogImRlZmF1bHQgZm9yIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIChsb3dlciBwcmlvcml0eSB0aGFuIGNvbmZpZyAiCiAiZmlsZXMpIgpAQCAtMTA5MDQsMTA3ICsxMzc5MiwxMzMgQEAKICJkZWZhdWx0IHBhcmEgZXh0cmFjY2nDs24gcmVjdXJzaXZhIGRlIHN1Ym3Ds2R1bG9zIChtZW5vciBwcmlvcmlkYWQgcXVlICIKICJhcmNoaXZvcyBkZSBjb25maWd1cmFjacOzbikiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjEgYnVpbHRpbi9wdWxsLmM6MjI0CisjOiBidWlsdGluL2ZldGNoLmM6MTg3IGJ1aWx0aW4vcHVsbC5jOjIxNAogbXNnaWQgImFjY2VwdCByZWZzIHRoYXQgdXBkYXRlIC5naXQvc2hhbGxvdyIKIG1zZ3N0ciAiYWNlcHRhciByZWZzIHF1ZSBhY3R1YWxpY2VuIC5naXQvc2hhbGxvdyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MiBidWlsdGluL3B1bGwuYzoyMjYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODggYnVpbHRpbi9wdWxsLmM6MjE2CiBtc2dpZCAicmVmbWFwIgogbXNnc3RyICJyZWZtYXAiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjMgYnVpbHRpbi9wdWxsLmM6MjI3CisjOiBidWlsdGluL2ZldGNoLmM6MTg5IGJ1aWx0aW4vcHVsbC5jOjIxNwogbXNnaWQgInNwZWNpZnkgZmV0Y2ggcmVmbWFwIgogbXNnc3RyICJlc3BlY2lmaWNhciBleHRyYWNjacOzbiBkZSByZWZtYXAiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9scy1yZW1vdGUuYzo3NyBidWlsdGluL3B1c2guYzo1ODIKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTcyCi1tc2dpZCAic2VydmVyLXNwZWNpZmljIgotbXNnc3RyICJlc3BlY2lmaWNvLWRlLXNlcnZpZG9yIgotCi0jOiBidWlsdGluL2ZldGNoLmM6MTY0IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzcgYnVpbHRpbi9wdXNoLmM6NTgyCi0jOiBidWlsdGluL3NlbmQtcGFjay5jOjE3MwotbXNnaWQgIm9wdGlvbiB0byB0cmFuc21pdCIKLW1zZ3N0ciAib3BjacOzbiBwYXJhIHRyYXNtaXRpciIKLQotIzogYnVpbHRpbi9mZXRjaC5jOjE3MAorIzogYnVpbHRpbi9mZXRjaC5jOjE5NgogbXNnaWQgInJlcG9ydCB0aGF0IHdlIGhhdmUgb25seSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHRoaXMgb2JqZWN0IgogbXNnc3RyICJyZXBvcnRhIHF1ZSBzb2xvIHRlbmVtb3Mgb2JqZXRvcyBhbGNhbnphYmxlcyBkZSBlc3RlIG9iamV0byIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjQ3MAorIzogYnVpbHRpbi9mZXRjaC5jOjE5OQorbXNnaWQgInJ1biAnZ2MgLS1hdXRvJyBhZnRlciBmZXRjaGluZyIKK21zZ3N0ciAiZWplY3V0YXIgJ2djIC0tYXV0bycgdHJhcyBlbCBmZXRjaCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjIwMSBidWlsdGluL3B1bGwuYzoyMjYKK21zZ2lkICJjaGVjayBmb3IgZm9yY2VkLXVwZGF0ZXMgb24gYWxsIHVwZGF0ZWQgYnJhbmNoZXMiCittc2dzdHIgInZlcmlmaWNhciB1cGRhdGVzIGZvcnphZG9zIGVuIHRvZG9zIGxvcyBicmFuY2ggYWN0dWFsaXphZG9zIgorCisjOiBidWlsdGluL2ZldGNoLmM6MjAzCittc2dpZCAid3JpdGUgdGhlIGNvbW1pdC1ncmFwaCBhZnRlciBmZXRjaGluZyIKK21zZ3N0ciAiZXNjcmliaXIgY29tbWl0LWdyYXBoIGx1ZWdvIGRlbCBmZXRjaCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjUxMwogbXNnaWQgIkNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiBIRUFEIgogbXNnc3RyICJObyBzZSBwdWVkbyBlbmNvbnRyYXIgcmVmIHJlbW90YSBIRUFEIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NjA5CisjOiBidWlsdGluL2ZldGNoLmM6NjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbmZpZ3VyYXRpb24gZmV0Y2gub3V0cHV0IGNvbnRhaW5zIGludmFsaWQgdmFsdWUgJXMiCiBtc2dzdHIgImxhIGNvbmZpZ3VyYWNpw7NuIGZldGNoLm91dHB1dCBjb250aWVuZSBlbCB2YWxvciBpbnbDoWxpZG8gJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MDIKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIG5vdCBmb3VuZCIKIG1zZ3N0ciAib2JqZXRvICVzIG5vIGVuY29udHJhZG8iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MDYKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTUKIG1zZ2lkICJbdXAgdG8gZGF0ZV0iCiBtc2dzdHIgIlthY3R1YWxpemFkb10iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MTkgYnVpbHRpbi9mZXRjaC5jOjczNSBidWlsdGluL2ZldGNoLmM6ODA3CisjOiBidWlsdGluL2ZldGNoLmM6NzY4IGJ1aWx0aW4vZmV0Y2guYzo3ODQgYnVpbHRpbi9mZXRjaC5jOjg1NgogbXNnaWQgIltyZWplY3RlZF0iCiBtc2dzdHIgIltyZWNoYXphZG9dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzIwCisjOiBidWlsdGluL2ZldGNoLmM6NzY5CiBtc2dpZCAiY2FuJ3QgZmV0Y2ggaW4gY3VycmVudCBicmFuY2giCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIHRyYWVyIGVuIGxhIHJhbWEgYWN0dWFsIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzMwCisjOiBidWlsdGluL2ZldGNoLmM6Nzc5CiBtc2dpZCAiW3RhZyB1cGRhdGVdIgogbXNnc3RyICJbYWN0dWFsaXphY2nDs24gZGUgdGFnXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjczMSBidWlsdGluL2ZldGNoLmM6NzcxIGJ1aWx0aW4vZmV0Y2guYzo3ODcKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4MDIKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3ODAgYnVpbHRpbi9mZXRjaC5jOjgxNyBidWlsdGluL2ZldGNoLmM6ODM5CisjOiBidWlsdGluL2ZldGNoLmM6ODUxCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBsb2NhbCByZWYiCiBtc2dzdHIgIm5vIHNlIHBvc2libGUgYWN0dWFsaXphciBlbCByZWYgbG9jYWwiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MzUKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3ODQKIG1zZ2lkICJ3b3VsZCBjbG9iYmVyIGV4aXN0aW5nIHRhZyIKIG1zZ3N0ciAicG9kcsOtYSBnb2xwZWFyIHRhZyBleGlzdGVudGUiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3NTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MDYKIG1zZ2lkICJbbmV3IHRhZ10iCiBtc2dzdHIgIltudWV2byB0YWddIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzYwCisjOiBidWlsdGluL2ZldGNoLmM6ODA5CiBtc2dpZCAiW25ldyBicmFuY2hdIgogbXNnc3RyICJbbnVldmEgcmFtYV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3NjMKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MTIKIG1zZ2lkICJbbmV3IHJlZl0iCiBtc2dzdHIgIltudWV2YSByZWZlcmVuY2lhXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjgwMgorIzogYnVpbHRpbi9mZXRjaC5jOjg1MQogbXNnaWQgImZvcmNlZCB1cGRhdGUiCiBtc2dzdHIgImFjdHVhbGl6YWNpw7NuIGZvcnphZGEiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4MDcKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NTYKIG1zZ2lkICJub24tZmFzdC1mb3J3YXJkIgogbXNnc3RyICJhdmFuY2UgbGVudG8iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4NTMKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NzcKK21zZ2lkICIiCisiRmV0Y2ggbm9ybWFsbHkgaW5kaWNhdGVzIHdoaWNoIGJyYW5jaGVzIGhhZCBhIGZvcmNlZCB1cGRhdGUsXG4iCisiYnV0IHRoYXQgY2hlY2sgaGFzIGJlZW4gZGlzYWJsZWQuIFRvIHJlLWVuYWJsZSwgdXNlICctLXNob3ctZm9yY2VkLXVwZGF0ZXMnXG4iCisiZmxhZyBvciBydW4gJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgdHJ1ZScuIgorbXNnc3RyICIiCisiRmV0Y2ggbm9ybWFsbWVudGUgaW5jaWRhIHF1w6kgYnJhbmNoZXMgaGFuIHRlbmlkbyB1biB1cGRhdGUgZm9yemFkbyxcbiIKKyJwZXJvIGVzYSB2YWxpZGFjacOzbiBoYSBzaWRvIGRlc2hhYmlsaXRhZGEuIFBhcmEgYWN0aXZhcmxhIGRlIG51ZXZvIHVzZSAnLS0iCisic2hvdy1mb3JjZWQtdXBkYXRlcydcbiIKKyJvIGVqZWN1dGUgJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgdHJ1ZScuIgorCisjOiBidWlsdGluL2ZldGNoLmM6ODgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBjaGVjayBmb3JjZWQgdXBkYXRlcy4gWW91IGNhbiB1c2VcbiIKKyInLS1uby1zaG93LWZvcmNlZC11cGRhdGVzJyBvciBydW4gJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgIgorImZhbHNlJ1xuIgorIiB0byBhdm9pZCB0aGlzIGNoZWNrLlxuIgorbXNnc3RyICIiCisiVG9tw7MgJS4yZiBzZWd1bmRvcyB2YWxpZGFyIGxvcyB1cGRhdGVzIGZvcnphZG9zLiBQdWVkZXMgdXNhclxuIgorIictLW5vLXNob3ctZm9yY2VkLXVwZGF0ZXMnIG8gZWplY3V0YXIgJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgIgorImZhbHNlJ1xuIgorInBhcmEgZXZpdGFyIGVzdGEgdmFsaWRhY2nDs24uXG4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo5MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZGlkIG5vdCBzZW5kIGFsbCBuZWNlc3Nhcnkgb2JqZWN0c1xuIgogbXNnc3RyICIlcyBubyBlbnZpw7MgdG9kb3MgbG9zIG9iamV0b3MgbmVjZXNhcmlvc1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODc0CisjOiBidWlsdGluL2ZldGNoLmM6OTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlamVjdCAlcyBiZWNhdXNlIHNoYWxsb3cgcm9vdHMgYXJlIG5vdCBhbGxvd2VkIHRvIGJlIHVwZGF0ZWQiCiBtc2dzdHIgInJlY2hhemFkbyAlcyBwb3JxdWUgcmHDrWNlcyBzdXBlcmZpY2lhbGVzIG5vIHB1ZWRlbiBzZXIgYWN0dWFsaXphZGFzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6OTYzIGJ1aWx0aW4vZmV0Y2guYzoxMDg1CisjOiBidWlsdGluL2ZldGNoLmM6MTAyNiBidWlsdGluL2ZldGNoLmM6MTE2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJGcm9tICUuKnNcbiIKIG1zZ3N0ciAiRGVzZGUgJS4qc1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6OTc0CisjOiBidWlsdGluL2ZldGNoLmM6MTAzNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAic29tZSBsb2NhbCByZWZzIGNvdWxkIG5vdCBiZSB1cGRhdGVkOyB0cnkgcnVubmluZ1xuIgpAQCAtMTEwMTMsNTYgKzEzOTI3LDc5IEBACiAiYWxndW5vcyByZWZzIGxvY2FsZXMgbm8gcHVkaWVyb24gc2VyIGFjdHVhbGl6YWRvczsgaW50ZW50ZSBlamVjdXRhclxuIgogIiAnZ2l0IHJlbW90ZSBwcnVuZSAlcycgcGFyYSBlbGltaW5hciBjdWFscXVpZXIgcmFtYSB2aWVqYSBvIGNvbmZsaWN0aXZhIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA1NQorIzogYnVpbHRpbi9mZXRjaC5jOjExMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgKCVzIHdpbGwgYmVjb21lIGRhbmdsaW5nKSIKIG1zZ3N0ciAiICAgKCVzIHNlIHBvbmRyw6EgY29sZ2FkbykiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMDU2CisjOiBidWlsdGluL2ZldGNoLmM6MTEzNQogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAoJXMgaGFzIGJlY29tZSBkYW5nbGluZykiCiBtc2dzdHIgIiAgICglcyBzZSBoYSBjb2xnYWRvKSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwODgKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTY3CiBtc2dpZCAiW2RlbGV0ZWRdIgogbXNnc3RyICJbZWxpbWluYWRvXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwODkgYnVpbHRpbi9yZW1vdGUuYzoxMDM2CisjOiBidWlsdGluL2ZldGNoLmM6MTE2OCBidWlsdGluL3JlbW90ZS5jOjExMTIKIG1zZ2lkICIobm9uZSkiCiBtc2dzdHIgIihuYWRhKSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExMTIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIGZldGNoIGludG8gY3VycmVudCBicmFuY2ggJXMgb2Ygbm9uLWJhcmUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiUmVodXNhbmRvIGV4dHJhZXIgZW4gbGEgcmFtYSBhY3R1YWwgJXMgZGUgdW4gcmVwb3NpdG9yaW8gbm8gdmFjw61vIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTEzMQorIzogYnVpbHRpbi9mZXRjaC5jOjEyMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiT3B0aW9uIFwiJXNcIiB2YWx1ZSBcIiVzXCIgaXMgbm90IHZhbGlkIGZvciAlcyIKIG1zZ3N0ciAiT3BjacOzbiBcIiVzXCIgdmFsb3IgXCIlc1wiIG5vIGVzIHbDoWxpZG8gcGFyYSAlcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExMzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMjEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9wdGlvbiBcIiVzXCIgaXMgaWdub3JlZCBmb3IgJXNcbiIKIG1zZ3N0ciAiT3BjacOzbiBcIiVzXCIgZXMgaWdub3JhZGEgcG9yICVzXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMzCisjOiBidWlsdGluL2ZldGNoLmM6MTQyMQorbXNnaWQgIm11bHRpcGxlIGJyYW5jaGVzIGRldGVjdGVkLCBpbmNvbXBhdGlibGUgd2l0aCAtLXNldC11cHN0cmVhbSIKK21zZ3N0ciAibcO6bHRpcGxlcyByYW1hcyBkZXRlY3RhZGFzLCBpbmNvbXBhdGlibGUgY29uIC0tc2V0LXVwc3RyZWFtIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzNgorbXNnaWQgIm5vdCBzZXR0aW5nIHVwc3RyZWFtIGZvciBhIHJlbW90ZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICJubyBjb25maWd1cmFyIHVwc3RyZWFtIHBhcmEgdW5hIHJhbWEgZGUgcmFzdHJlbyByZW1vdG8iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDM4Cittc2dpZCAibm90IHNldHRpbmcgdXBzdHJlYW0gZm9yIGEgcmVtb3RlIHRhZyIKK21zZ3N0ciAibm8gY29uZmlndXJhciB1cHN0cmVhbSBwYXJhIHVuIHRhZyByZW1vdG8iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDQwCittc2dpZCAidW5rbm93biBicmFuY2ggdHlwZSIKK21zZ3N0ciAidGlwbyBkZSBicmFuY2ggZGVzY29ub2NpZG8iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDQyCittc2dpZCAiIgorIm5vIHNvdXJjZSBicmFuY2ggZm91bmQuXG4iCisieW91IG5lZWQgdG8gc3BlY2lmeSBleGFjdGx5IG9uZSBicmFuY2ggd2l0aCB0aGUgLS1zZXQtdXBzdHJlYW0gb3B0aW9uLiIKK21zZ3N0ciAiIgorIm5vIHNlIGVuY29udHLDsyByYW1hIGZ1ZW50ZS5cbiIKKyJ0aWVuZXMgcXVlIGVzcGVjaWZpY2FyIGV4YWN0YW1lbnRlIHVuYSByYW1hIGNvbiBsYSBvcGNpw7NuIC0tc2V0LXVwc3RyZWFtLiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE1NjggYnVpbHRpbi9mZXRjaC5jOjE2MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmV0Y2hpbmcgJXNcbiIKIG1zZ3N0ciAiRXh0cmF5ZW5kbyAlc1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQzNSBidWlsdGluL3JlbW90ZS5jOjEwMAorIzogYnVpbHRpbi9mZXRjaC5jOjE1NzggYnVpbHRpbi9mZXRjaC5jOjE2MzMgYnVpbHRpbi9yZW1vdGUuYzoxMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZldGNoICVzIgogbXNnc3RyICJObyBzZSBwdWRvIGV4dHJhZXIgJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDgxIGJ1aWx0aW4vZmV0Y2guYzoxNjQ5Ci1tc2dpZCAiIgotIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gY29yZS5wYXJ0aWFsQ2xvbmUiCi1tc2dzdHIgIiIKLSItLWZpbHRlciBzb2xvIHB1ZWRlIHNlciB1c2FkbyBjb24gZWwgcmVtb3RvIGNvbmZpZ3VyYWRvIGVuIGNvcmUucGFydGlhbENsb25lIgorIzogYnVpbHRpbi9mZXRjaC5jOjE1OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZldGNoICclcycgKGV4aXQgY29kZTogJWQpXG4iCittc2dzdHIgIm5vIHNlIHB1ZG8gaGFjZXIgZmV0Y2ggYSAnJXMnIChjw7NkaWdvIGRlIHNhbGlkYTogJWQpXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTA0CisjOiBidWlsdGluL2ZldGNoLmM6MTY5MwogbXNnaWQgIiIKICJObyByZW1vdGUgcmVwb3NpdG9yeSBzcGVjaWZpZWQuICBQbGVhc2UsIHNwZWNpZnkgZWl0aGVyIGEgVVJMIG9yIGFcbiIKICJyZW1vdGUgbmFtZSBmcm9tIHdoaWNoIG5ldyByZXZpc2lvbnMgc2hvdWxkIGJlIGZldGNoZWQuIgpAQCAtMTEwNzAsNjYgKzE0MDA3LDc0IEBACiAiTm8gaGF5IHJlcG9zaXRvcmlvIHJlbW90byBlc3BlY2lmaWNhZG8uIFBvciBmYXZvciwgZXNwZWNpZmlxdWUgdW4gVVJMIG8gdW5cbiIKICJub21icmUgcmVtb3RvIGRlbCBjdWFsIGxhcyBudWV2YXMgcmV2aXNpb25lcyBkZWJlbiBzZXIgZXh0cmHDrWRhcy4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQxCisjOiBidWlsdGluL2ZldGNoLmM6MTczMAogbXNnaWQgIllvdSBuZWVkIHRvIHNwZWNpZnkgYSB0YWcgbmFtZS4iCi1tc2dzdHIgIlRpZW5lIHF1ZSBlc3BlY2lmaWNhciB1biBub21icmUgZGUgdGFnLiIKK21zZ3N0ciAiVGllbmVzIHF1ZSBlc3BlY2lmaWNhciB1biBub21icmUgZGUgdGFnLiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzgwCiBtc2dpZCAiTmVnYXRpdmUgZGVwdGggaW4gLS1kZWVwZW4gaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAiUHJvZnVuZGlkYWQgbmVnYXRpdmEgZW4gLS1kZWVwZW4gbm8gc29wb3J0YWRhIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU5MgorIzogYnVpbHRpbi9mZXRjaC5jOjE3ODIKIG1zZ2lkICItLWRlZXBlbiBhbmQgLS1kZXB0aCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICItLWRlZXBlbiB5IC0tZGVwdGggc29uIG11dHVhbWVudGUgZXhjbHVzaXZhcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzg3CiBtc2dpZCAiLS1kZXB0aCBhbmQgLS11bnNoYWxsb3cgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCiBtc2dzdHIgIi0tZGVwdGggeSAtLXVuc2hhbGxvdyBubyBwdWVkZW4gc2VyIHVzYWRhcyBqdW50YXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTk5CisjOiBidWlsdGluL2ZldGNoLmM6MTc4OQogbXNnaWQgIi0tdW5zaGFsbG93IG9uIGEgY29tcGxldGUgcmVwb3NpdG9yeSBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLXVuc2hhbGxvdyBubyB0aWVuZSBzZW50aWRvIGVuIHVuIHJlcG9zaXRvcmlvIGNvbXBsZXRvIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYxNQorIzogYnVpbHRpbi9mZXRjaC5jOjE4MDUKIG1zZ2lkICJmZXRjaCAtLWFsbCBkb2VzIG5vdCB0YWtlIGEgcmVwb3NpdG9yeSBhcmd1bWVudCIKIG1zZ3N0ciAiZmV0Y2ggLS1hbGwgbm8gdG9tYSB1biBhcmd1bWVudG8gZGUgcmVwb3NpdG9yaW8iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjE3CisjOiBidWlsdGluL2ZldGNoLmM6MTgwNwogbXNnaWQgImZldGNoIC0tYWxsIGRvZXMgbm90IG1ha2Ugc2Vuc2Ugd2l0aCByZWZzcGVjcyIKIG1zZ3N0ciAiZmV0Y2ggLS1hbGwgbm8gdGllbmUgc2VudGlkbyBjb24gcmVmc3BlY3MiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjI2CisjOiBidWlsdGluL2ZldGNoLmM6MTgxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIHJlbW90ZSBvciByZW1vdGUgZ3JvdXA6ICVzIgogbXNnc3RyICJObyBleGlzdGUgZWwgcmVtb3RvIG8gZ3J1cG8gcmVtb3RvOiAlcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MzMKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODIzCiBtc2dpZCAiRmV0Y2hpbmcgYSBncm91cCBhbmQgc3BlY2lmeWluZyByZWZzcGVjcyBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICJFeHRyYWVyIHVuIGdydXBvIHkgZXNwZWNpZmljYXIgdW4gcmVmc3BlY3Mgbm8gdGllbmUgc2VudGlkbyIKIAorIzogYnVpbHRpbi9mZXRjaC5jOjE4NDEKK21zZ2lkICIiCisiLS1maWx0ZXIgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIHRoZSByZW1vdGUgY29uZmlndXJlZCBpbiBleHRlbnNpb25zLiIKKyJwYXJ0aWFsY2xvbmUiCittc2dzdHIgIiIKKyItLWZpbHRlciBzb2xvIHB1ZWRlIHNlciB1c2FkbyBjb24gZWwgcmVtb3RvIGNvbmZpZ3VyYWRvIGVuIGV4dGVuc2lvbnMuIgorInBhcnRpYWxDbG9uZSIKKwogIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6MTgKIG1zZ2lkICIiCiAiZ2l0IGZtdC1tZXJnZS1tc2cgWy1tIDxtZXNzYWdlPl0gWy0tbG9nWz08bj5dIHwgLS1uby1sb2ddIFstLWZpbGUgPGZpbGU+XSIKIG1zZ3N0ciAiIgogImdpdCBmbXQtbWVyZ2UtbXNnIFstbSA8bWVuc2FqZT5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlIDxhcmNoaXZvPl0iCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MgorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcxCiBtc2dpZCAicG9wdWxhdGUgbG9nIHdpdGggYXQgbW9zdCA8bj4gZW50cmllcyBmcm9tIHNob3J0bG9nIgogbXNnc3RyICJwb2JsYXIgZWwgbG9nIGNvbiBtw6F4aW1vIDxuPiBlbnRyYWRhcyBkZWwgc2hvcmxvZyIKIAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc1CisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzQKIG1zZ2lkICJhbGlhcyBmb3IgLS1sb2cgKGRlcHJlY2F0ZWQpIgogbXNnc3RyICJhbGlhcyBwYXJhIC0tbG9nIChkZXByZWNhZG8pIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzgKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NwogbXNnaWQgInRleHQiCiBtc2dzdHIgInRleHRvIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzkKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OAogbXNnaWQgInVzZSA8dGV4dD4gYXMgc3RhcnQgb2YgbWVzc2FnZSIKIG1zZ3N0ciAidXNlIDx0ZXh0PiBjb21vIGNvbWllbnpvIGRlIG1lbnNhamUiCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY4MAorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc5CiBtc2dpZCAiZmlsZSB0byByZWFkIGZyb20iCiBtc2dzdHIgImFyY2hpdm8gZGVsIGN1YWwgbGVlciIKIApAQCAtMTExNjksOTEgKzE0MTE0LDI3NCBAQAogbXNnaWQgInNob3cgb25seSA8bj4gbWF0Y2hlZCByZWZzIgogbXNnc3RyICJtb3N0cmFyIHNvbG8gPG4+IHJlZnMgZW5jb250cmFkYXMiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzkgYnVpbHRpbi90YWcuYzo0MjQKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzkgYnVpbHRpbi90YWcuYzo0MzkKIG1zZ2lkICJyZXNwZWN0IGZvcm1hdCBjb2xvcnMiCiBtc2dzdHIgInJlc3BldGFyIGVsIGZvcm1hdG8gZGUgY29sb3JlcyIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MgogbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBwb2ludHMgYXQgdGhlIGdpdmVuIG9iamVjdCIKIG1zZ3N0ciAibW9zdHJhciBzb2xvIHJlZnMgcXVlIGFwdW50ZW4gYWwgb2JqZXRvIGRhZG8iCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDUKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDQKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgdGhhdCBhcmUgbWVyZ2VkIgogbXNnc3RyICJtb3N0cmFyIHNvbG8gcmVmcyBxdWUgc29uIGZ1c2lvbmFkYXMiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDYKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDUKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgdGhhdCBhcmUgbm90IG1lcmdlZCIKIG1zZ3N0ciAibW9zdHJhciBzb2xvIHJlZnMgcXVlIG5vIHNvbiBmdXNpb25hZGFzIgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ3CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ2CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHdoaWNoIGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAibW9zdHJhciBzb2xvIHJlZnMgcXVlIGNvbnRpZW5lbiBlbCBjb21taXQiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDgKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDcKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICJtb3N0cmFyIHNvbG8gcmVmcyBxdWUgbm8gY29udGllbmVuIGVsIGNvbW1pdCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NTk4CisjOiBidWlsdGluL2ZzY2suYzo2OCBidWlsdGluL2ZzY2suYzoxNDcgYnVpbHRpbi9mc2NrLmM6MTQ4Cittc2dpZCAidW5rbm93biIKK21zZ3N0ciAiZGVzY29ub2NpZG8iCisKKyMuIFRSQU5TTEFUT1JTOiBlLmcuIGVycm9yIGluIHRyZWUgMDFiZmRhOiA8bW9yZSBleHBsYW5hdGlvbj4KKyM6IGJ1aWx0aW4vZnNjay5jOjEwMCBidWlsdGluL2ZzY2suYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gJXMgJXM6ICVzIgorbXNnc3RyICJlcnJvciBlbiAlcyAlczogJXMiCisKKyMuIFRSQU5TTEFUT1JTOiBlLmcuIHdhcm5pbmcgaW4gdHJlZSAwMWJmZGE6IDxtb3JlIGV4cGxhbmF0aW9uPgorIzogYnVpbHRpbi9mc2NrLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIndhcm5pbmcgaW4gJXMgJXM6ICVzIgorbXNnc3RyICJwZWxpZ3JvIGVuICVzICVzOiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MTQzIGJ1aWx0aW4vZnNjay5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJicm9rZW4gbGluayBmcm9tICU3cyAlcyIKK21zZ3N0ciAibGluayByb3RvIGRlICU3cyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MTU1Cittc2dpZCAid3Jvbmcgb2JqZWN0IHR5cGUgaW4gbGluayIKK21zZ3N0ciAidGlwbyBkZSBvYmpldG8gZXF1aXZvY2FkbyBlbiBsaW5rIgorCisjOiBidWlsdGluL2ZzY2suYzoxNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImJyb2tlbiBsaW5rIGZyb20gJTdzICVzXG4iCisiICAgICAgICAgICAgICB0byAlN3MgJXMiCittc2dzdHIgIiIKKyJsaW5rIHJvdG8gZGUgJTdzICVzXG4iCisiICAgICAgICAgICAgICBhICU3cyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMgJXMiCittc2dzdHIgImZhbHRhbiAlcyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVhY2hhYmxlICVzICVzIgorbXNnc3RyICJpbmFsY2FuemFibGUgJXMgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjMyOQorIywgYy1mb3JtYXQKK21zZ2lkICJkYW5nbGluZyAlcyAlcyIKK21zZ3N0ciAiYWN0dWFsaXphbmRvICVzICVzIgorCisjOiBidWlsdGluL2ZzY2suYzozMzkKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGxvc3QtZm91bmQiCittc2dzdHIgIm5vIHNlIHB1ZG8gY3JlYXIgbG9zdC1mb3VuZCIKKworIzogYnVpbHRpbi9mc2NrLmM6MzUwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVkbyBmaW5hbGl6YXIgJyVzJyIKKworIzogYnVpbHRpbi9mc2NrLmM6MzY3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzIgorbXNnc3RyICJSZXZpc2FuZG8gJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQwNQorIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkgKCVkIG9iamVjdHMpIgorbXNnc3RyICJWZXJpZmljYW5kbyBjb25lY3RpdmlkYWQgKCVkIG9iamV0b3MpIgorCisjOiBidWlsdGluL2ZzY2suYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgJXMiCittc2dzdHIgIlJldmlzYW5kbyAlcyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDI5Cittc2dpZCAiYnJva2VuIGxpbmtzIgorbXNnc3RyICJsaW5rcyByb3RvcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgInJvb3QgJXMiCittc2dzdHIgInJhw616ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFnZ2VkICVzICVzICglcykgaW4gJXMiCittc2dzdHIgInRhZyAlcyAlcyAoJXMpIGVuICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3NpbmciCittc2dzdHIgIiVzOiBvYmplY3RvIGNvcnJ1cHRvIG8gZmFsdGFudGUiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjUwMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCByZWZsb2cgZW50cnkgJXMiCittc2dzdHIgIiVzOiByZWZlcmVuY2lhIGludsOhbGlkYSAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIHJlZmxvZyAlcy0+JXMiCittc2dzdHIgIlJldmlzYW5kbyByZWZsb2cgJXMtPiVzIgorCisjOiBidWlsdGluL2ZzY2suYzo1NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyICVzIgorbXNnc3RyICIlczogcHVudGVybyBzaGExIGludsOhbGlkbyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBub3QgYSBjb21taXQiCittc2dzdHIgIiVzOiBubyBlcyB1biBjb21taXQiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYwOQorbXNnaWQgIm5vdGljZTogTm8gZGVmYXVsdCByZWZlcmVuY2VzIgorbXNnc3RyICJhdmlzbzogTm8gaGF5IHJlZmVyZW5jaWFzIHBvciBkZWZlY3RvIgorCisjOiBidWlsdGluL2ZzY2suYzo2MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3Npbmc6ICVzIgorbXNnc3RyICIlczogb2JqZXRvIGNvcnJ1cHRvIG8gbm8gZW5jb250cmFkbzogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvdWxkIG5vdCBiZSBwYXJzZWQ6ICVzIgorbXNnc3RyICIlczogbm8gc2UgcHVlZGUgYW5hbGl6YXIgb2JqZXRvOiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjU3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaGExIGZpbGU6ICVzIgorbXNnc3RyICJtYWwgc2hhMSBkZSBhcmNoaXZvOiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjcyCittc2dpZCAiQ2hlY2tpbmcgb2JqZWN0IGRpcmVjdG9yeSIKK21zZ3N0ciAiUmV2aXNhbmRvIGRpcmVjdG9yaW8gZGUgb2JqZXRvcyIKKworIzogYnVpbHRpbi9mc2NrLmM6Njc1CiBtc2dpZCAiQ2hlY2tpbmcgb2JqZWN0IGRpcmVjdG9yaWVzIgogbXNnc3RyICJSZXZpc2FuZG8gb2JqZXRvcyBkaXJlY3RvcmlvcyIKIAotIzogYnVpbHRpbi9mc2NrLmM6NjkzCisjOiBidWlsdGluL2ZzY2suYzo2OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgbGluayIKK21zZ3N0ciAiUmV2aXNhbmRvIGxpbmsgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY5NSBidWlsdGluL2luZGV4LXBhY2suYzo4NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAlcyIKK21zZ3N0ciAiJXMgaW52w6FsaWRvIgorCisjOiBidWlsdGluL2ZzY2suYzo3MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcG9pbnRzIHRvIHNvbWV0aGluZyBzdHJhbmdlICglcykiCittc2dzdHIgIiVzIGFwdW50YSBhIGFsZ28gZXh0cmHDsW8gKCVzKSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZXRhY2hlZCBIRUFEIHBvaW50cyBhdCBub3RoaW5nIgorbXNnc3RyICIlczogSEVBRCBkZXNhY29wbGFkbyBhcHVudGEgYSBuYWRhIgorCisjOiBidWlsdGluL2ZzY2suYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aWNlOiAlcyBwb2ludHMgdG8gYW4gdW5ib3JuIGJyYW5jaCAoJXMpIgorbXNnc3RyICJhdmlzbzogJXMgYXB1bnRhIGEgdW4gYnJhbmNoIG5vIG5hY2lkbyAoJXMpIgorCisjOiBidWlsdGluL2ZzY2suYzo3MjQKK21zZ2lkICJDaGVja2luZyBjYWNoZSB0cmVlIgorbXNnc3RyICJSZXZpc2FuZG8gZWwgY2FjaGUgdHJlZSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzI5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHNoYTEgcG9pbnRlciBpbiBjYWNoZS10cmVlIgorbXNnc3RyICIlczogcHVudGVybyBpbnbDoWxpZG8gc2hhMSBlbiBjYWNoZS10cmVlIgorCisjOiBidWlsdGluL2ZzY2suYzo3MzgKK21zZ2lkICJub24tdHJlZSBpbiBjYWNoZS10cmVlIgorbXNnc3RyICJub24tdHJlZSBlbiBjYWNoZS10cmVlIgorCisjOiBidWlsdGluL2ZzY2suYzo3NjkKIG1zZ2lkICJnaXQgZnNjayBbPG9wdGlvbnM+XSBbPG9iamVjdD4uLi5dIgogbXNnc3RyICJnaXQgZnNjayBbPG9wY2lvbmVzPl0gWzxvYmpldG8+Li4uXSIKIAotIzogYnVpbHRpbi9mc2NrLmM6Njk5CisjOiBidWlsdGluL2ZzY2suYzo3NzUKIG1zZ2lkICJzaG93IHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgIm1vc3RyYXIgb2JqZXRvcyBpbGVnaWJsZXMiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMAorIzogYnVpbHRpbi9mc2NrLmM6Nzc2CiBtc2dpZCAic2hvdyBkYW5nbGluZyBvYmplY3RzIgogbXNnc3RyICJtb3N0cmFyIG9iamV0b3MgY29sZ2Fkb3MiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMQorIzogYnVpbHRpbi9mc2NrLmM6Nzc3CiBtc2dpZCAicmVwb3J0IHRhZ3MiCiBtc2dzdHIgInJlcG9ydGFyIHRhZ3MiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMgorIzogYnVpbHRpbi9mc2NrLmM6Nzc4CiBtc2dpZCAicmVwb3J0IHJvb3Qgbm9kZXMiCiBtc2dzdHIgInJlcG9ydGFyIG5vZG9zIHJhw616IgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDMKKyM6IGJ1aWx0aW4vZnNjay5jOjc3OQogbXNnaWQgIm1ha2UgaW5kZXggb2JqZWN0cyBoZWFkIG5vZGVzIgogbXNnc3RyICJoYWNlciBvYmpldG9zIMOtbmRpY2VzIGNhYmV6YXMgZGUgbm9kb3MiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwNAorIzogYnVpbHRpbi9mc2NrLmM6NzgwCiBtc2dpZCAibWFrZSByZWZsb2dzIGhlYWQgbm9kZXMgKGRlZmF1bHQpIgogbXNnc3RyICJoYWNlciByZWZsb2dzIGNhYmV6YSBkZSBub2RvcyAoZGVmYXVsdCkiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwNQorIzogYnVpbHRpbi9mc2NrLmM6NzgxCiBtc2dpZCAiYWxzbyBjb25zaWRlciBwYWNrcyBhbmQgYWx0ZXJuYXRlIG9iamVjdHMiCiBtc2dzdHIgInRhbWJpw6luIGNvbnNpZGVyYXIgcGFxdWV0ZXMgeSBvYmpldG9zIGFsdGVybm9zIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDYKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MgogbXNnaWQgImNoZWNrIG9ubHkgY29ubmVjdGl2aXR5IgogbXNnc3RyICJyZXZpc2FyIHNvbG8gY29uZWN0aXZpZGFkIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDcKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MwogbXNnaWQgImVuYWJsZSBtb3JlIHN0cmljdCBjaGVja2luZyIKIG1zZ3N0ciAiaGFiaWxpdGFyIHJldmlzacOzbiBtw6FzIGVzdHJpY3RhIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDkKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NQogbXNnaWQgIndyaXRlIGRhbmdsaW5nIG9iamVjdHMgaW4gLmdpdC9sb3N0LWZvdW5kIgogbXNnc3RyICJlc2NyaWJpciBvYmpldG9zIGNvbGdhZG9zIGVuIC5naXQvbG9zdC1mb3VuZCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzEwIGJ1aWx0aW4vcHJ1bmUuYzoxMTAKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NiBidWlsdGluL3BydW5lLmM6MTMyCiBtc2dpZCAic2hvdyBwcm9ncmVzcyIKIG1zZ3N0ciAibW9zdHJhciBwcm9ncmVzbyIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzExCisjOiBidWlsdGluL2ZzY2suYzo3ODcKIG1zZ2lkICJzaG93IHZlcmJvc2UgbmFtZXMgZm9yIHJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICJtb3N0cmFyIG5vbWJyZXMgdmVyYm9zbyBwYXJhIG9iamV0b3MgYWxjYW56YWJsZXMiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjc3NgorIzogYnVpbHRpbi9mc2NrLmM6ODQ2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIyNQogbXNnaWQgIkNoZWNraW5nIG9iamVjdHMiCiBtc2dzdHIgIlJldmlzYW5kbyBvYmpldG9zIgogCi0jOiBidWlsdGluL2djLmM6MzQKKyM6IGJ1aWx0aW4vZnNjay5jOjg3NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IG1pc3NpbmciCittc2dzdHIgIiVzOiBvYmpldG8gZmFsdGFudGUiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjg4NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhcmFtZXRlcjogZXhwZWN0ZWQgc2hhMSwgZ290ICclcyciCittc2dzdHIgInBhcsOhbWV0cm8gaW52w6FsaWRvOiBzaGExIGVzcGVyYWRvLCBzZSBvYnR1dm8gJyVzJyIKKworIzogYnVpbHRpbi9nYy5jOjM1CiBtc2dpZCAiZ2l0IGdjIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgZ2MgWzxvcGNpb25lcz5dIgogCkBAIC0xMTI2MiwxNyArMTQzOTAsMjIgQEAKIG1zZ2lkICJGYWlsZWQgdG8gZnN0YXQgJXM6ICVzIgogbXNnc3RyICJGYWxsw7MgZWwgZnN0YXQgJXM6ICVzIgogCi0jOiBidWlsdGluL2djLmM6NDYxIGJ1aWx0aW4vaW5pdC1kYi5jOjU1CisjOiBidWlsdGluL2djLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSAnJXMnIHZhbHVlICclcyciCittc2dzdHIgImZhbGzDsyBhbCBhbmFsaXphciAnJXMnIHZhbG9yICclcyciCisKKyM6IGJ1aWx0aW4vZ2MuYzo0NzUgYnVpbHRpbi9pbml0LWRiLmM6NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0YXQgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBkZWZpbmlyICclcyciCiAKLSM6IGJ1aWx0aW4vZ2MuYzo0NzAgYnVpbHRpbi9ub3Rlcy5jOjI0MCBidWlsdGluL3RhZy5jOjUxMAorIzogYnVpbHRpbi9nYy5jOjQ4NCBidWlsdGluL25vdGVzLmM6MjQwIGJ1aWx0aW4vdGFnLmM6NTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGxlZXIgJyVzJyIKIAotIzogYnVpbHRpbi9nYy5jOjQ3NworIzogYnVpbHRpbi9nYy5jOjQ5MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGxhc3QgZ2MgcnVuIHJlcG9ydGVkIHRoZSBmb2xsb3dpbmcuIFBsZWFzZSBjb3JyZWN0IHRoZSByb290IGNhdXNlXG4iCkBAIC0xMTI4Miw1OSArMTQ0MTUsNTkgQEAKICIlcyIKIG1zZ3N0ciAiIgogIkVsIMO6bHRpbW8gZ2MgcmVwb3J0w7MgbG8gc2lndWllbnRlLiBQb3IgZmF2b3IgY29ycmlnZSBsYSBjYXVzYVxuIgotInkgcmVtdWV2YSAlcy5cbiIKKyJ5IGVsaW1pbmUgJXMuXG4iCiAiTGltcGllemEgYXV0b23DoXRpY2Egbm8gc2UgcmVhbGl6YXLDoSBoYXN0YSBxdWUgZWwgYXJjaGl2byBzZWEgZWxpbWluYWRvLlxuIgogIlxuIgogIiVzIgogCi0jOiBidWlsdGluL2djLmM6NTE5CisjOiBidWlsdGluL2djLmM6NTM5CiBtc2dpZCAicHJ1bmUgdW5yZWZlcmVuY2VkIG9iamVjdHMiCiBtc2dzdHIgImxpbXBpYXIgb2JqZXRvcyBubyByZWZlcmVuY2lhZG9zIgogCi0jOiBidWlsdGluL2djLmM6NTIxCisjOiBidWlsdGluL2djLmM6NTQxCiBtc2dpZCAiYmUgbW9yZSB0aG9yb3VnaCAoaW5jcmVhc2VkIHJ1bnRpbWUpIgogbXNnc3RyICJzZXIgbcOhcyBleGhhdXN0aXZvIChhdW1lbnRhciBydW50aW1lKSIKIAotIzogYnVpbHRpbi9nYy5jOjUyMgorIzogYnVpbHRpbi9nYy5jOjU0MgogbXNnaWQgImVuYWJsZSBhdXRvLWdjIG1vZGUiCiBtc2dzdHIgImhhYmlsaXRhciBtb2RvIGF1dG8tZ2MiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1MjUKKyM6IGJ1aWx0aW4vZ2MuYzo1NDUKIG1zZ2lkICJmb3JjZSBydW5uaW5nIGdjIGV2ZW4gaWYgdGhlcmUgbWF5IGJlIGFub3RoZXIgZ2MgcnVubmluZyIKIG1zZ3N0ciAiZm9yemFyIGxhIGVqZWN1Y2nDs24gZGUgZ2MgaW5jbHVzbyBzaSBwdWVkZSBoYWJlciBvdHJvIGdjIGVqZWN1dMOhbmRvc2UiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1MjgKKyM6IGJ1aWx0aW4vZ2MuYzo1NDgKIG1zZ2lkICJyZXBhY2sgYWxsIG90aGVyIHBhY2tzIGV4Y2VwdCB0aGUgbGFyZ2VzdCBwYWNrIgogbXNnc3RyICJyZWVtcGFxdWV0YXIgdG9kb3MgbG9zIG90cm9zIHBhcXVldGVzIGV4Y2VwdG8gZWwgcGFxdWV0ZSBtw6FzIGdyYW5kZSIKIAotIzogYnVpbHRpbi9nYy5jOjU0NQorIzogYnVpbHRpbi9nYy5jOjU2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcGFyc2UgZ2MubG9nZXhwaXJ5IHZhbHVlICVzIgogbXNnc3RyICJmYWxsw7MgYWwgYW5hbGl6YXIgdmFsb3IgJXMgZGUgZ2MubG9nZXhwaXJpdHkiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NTYKKyM6IGJ1aWx0aW4vZ2MuYzo1NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHBhcnNlIHBydW5lIGV4cGlyeSB2YWx1ZSAlcyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGFuYWxpemFyIHZhbG9yICVzIGRlIHBydW5lIGV4cGlyeSIKIAotIzogYnVpbHRpbi9nYy5jOjU3NgorIzogYnVpbHRpbi9nYy5jOjU5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvIHBhY2tpbmcgdGhlIHJlcG9zaXRvcnkgaW4gYmFja2dyb3VuZCBmb3Igb3B0aW11bSBwZXJmb3JtYW5jZS5cbiIKIG1zZ3N0ciAiIgogIkF1dG8gZW1wYXF1ZXRhZG8gZGVsIHJlcG9zaXRvcmlvIGVuIHNlZ3VuZG8gcGxhbm8gcGFyYSB1biBwZXJmb3JtYW5jZSAiCiAiw7NwdGltby5cbiIKIAotIzogYnVpbHRpbi9nYy5jOjU3OAorIzogYnVpbHRpbi9nYy5jOjU5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvIHBhY2tpbmcgdGhlIHJlcG9zaXRvcnkgZm9yIG9wdGltdW0gcGVyZm9ybWFuY2UuXG4iCiBtc2dzdHIgIkF1dG8gZW1wYXF1ZXRhZG8gZGVsIHJlcG9zaXRvcmlvIHBhcmEgcGVyZm9ybWFuY2Ugw7NwdGltby5cbiIKIAotIzogYnVpbHRpbi9nYy5jOjU3OQorIzogYnVpbHRpbi9nYy5jOjU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZWUgXCJnaXQgaGVscCBnY1wiIGZvciBtYW51YWwgaG91c2VrZWVwaW5nLlxuIgogbXNnc3RyICJWZWEgXCJnaXQgaGVscCBnY1wiIHBhcmEgbGltcGllemEgbWFudWFsLlxuIgogCi0jOiBidWlsdGluL2djLmM6NjE5CisjOiBidWlsdGluL2djLmM6NjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJnYyBpcyBhbHJlYWR5IHJ1bm5pbmcgb24gbWFjaGluZSAnJXMnIHBpZCAlPFBSSXVNQVg+ICh1c2UgLS1mb3JjZSBpZiBub3QpIgpAQCAtMTEzNDIsMjMgKzE0NDc1LDIzIEBACiAiZ2MgeWEgZXN0w6EgZWplY3V0w6FuZG9zZSBlbiBsYSBtw6FxdWluYSAnJXMnIHBpZCAlPFBSSXVNQVg+ICh1c2UgLS1mb3JjZSBzbyBubyAiCiAiZXMgYXPDrSkiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo2NzAKKyM6IGJ1aWx0aW4vZ2MuYzo2OTQKIG1zZ2lkICIiCiAiVGhlcmUgYXJlIHRvbyBtYW55IHVucmVhY2hhYmxlIGxvb3NlIG9iamVjdHM7IHJ1biAnZ2l0IHBydW5lJyB0byByZW1vdmUgdGhlbS4iCiBtc2dzdHIgIiIKICJIYXkgbXVjaG9zIG9iamV0b3Mgc3VlbHRvcyBpbmFsY2FuemFibGVzOyBlamVjdXRlICdnaXQgcHJ1bmUnIHBhcmEgIgogImVsaW1pbmFybG9zLiIKIAotIzogYnVpbHRpbi9ncmVwLmM6MjgKKyM6IGJ1aWx0aW4vZ3JlcC5jOjMwCiBtc2dpZCAiZ2l0IGdyZXAgWzxvcHRpb25zPl0gWy1lXSA8cGF0dGVybj4gWzxyZXY+Li4uXSBbWy0tXSA8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgZ3JlcCBbPG9wY2lvbmVzPl0gWy1lXSA8cGF0csOzbj4gWzxyZXY+Li4uXSBbWy0tXSA8cnV0YT4uLi5dIgogCi0jOiBidWlsdGluL2dyZXAuYzoyMjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjIyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJncmVwOiBmYWlsZWQgdG8gY3JlYXRlIHRocmVhZDogJXMiCiBtc2dzdHIgImdyZXA6IGZhbGzDsyBhbCBjcmVhciBlbCBoaWxvOiAlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6Mjc4CisjOiBidWlsdGluL2dyZXAuYzoyNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBudW1iZXIgb2YgdGhyZWFkcyBzcGVjaWZpZWQgKCVkKSBmb3IgJXMiCiBtc2dzdHIgIm7Dum1lcm8gaW52w6FsaWRvIGRlIGhpbG9zIGVzcGVjaWZpY2FkbyAoJWQpIHBhcmEgJXMiCkBAIC0xMTM2NywyNjYgKzE0NTAwLDI2NiBAQAogIy4gdmFyaWFibGUgZm9yIHR3ZWFraW5nIHRocmVhZHMsIGN1cnJlbnRseQogIy4gZ3JlcC50aHJlYWRzCiAjLgotIzogYnVpbHRpbi9ncmVwLmM6Mjg2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MDYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY5NwotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzE5CisjOiBidWlsdGluL2dyZXAuYzoyODcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzOCBidWlsdGluL2luZGV4LXBhY2suYzoxNzMxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gdGhyZWFkcyBzdXBwb3J0LCBpZ25vcmluZyAlcyIKIG1zZ3N0ciAibm8gaGF5IHNvcG9ydGUgcGFyYSBoaWxvcywgaWdub3JhbmRvICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo0NTggYnVpbHRpbi9ncmVwLmM6NTc5IGJ1aWx0aW4vZ3JlcC5jOjYyMAorIzogYnVpbHRpbi9ncmVwLmM6NDUzIGJ1aWx0aW4vZ3JlcC5jOjU3OCBidWlsdGluL2dyZXAuYzo2MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgdHJlZSAoJXMpIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGxlZXIgZWwgIMOhcmJvbCAoJXMpIgogCi0jOiBidWlsdGluL2dyZXAuYzo2MzUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjYzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ3JlcCBmcm9tIG9iamVjdCBvZiB0eXBlICVzIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIHJlYWxpemFyIGdyZXAgZGVsIG9iamV0byBkZSB0aXBvICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo3MDEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjcwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJzd2l0Y2ggYCVjJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgogbXNnc3RyICJzd2l0Y2ggYCVjJyBlc3BlcmEgdW4gdmFsb3IgbnVtw6lyaWNvIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwMwogbXNnaWQgInNlYXJjaCBpbiBpbmRleCBpbnN0ZWFkIG9mIGluIHRoZSB3b3JrIHRyZWUiCiBtc2dzdHIgImJ1c2NhciBlbiBlbCDDrW5kaWNlIGVuIGx1Z2FyIGRlbCDDoXJib2wgZGUgdHJhYmFqbyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODAyCisjOiBidWlsdGluL2dyZXAuYzo4MDUKIG1zZ2lkICJmaW5kIGluIGNvbnRlbnRzIG5vdCBtYW5hZ2VkIGJ5IGdpdCIKIG1zZ3N0ciAiZW5jb250cmFyIGVuIGNvbnRlbmlkb3Mgbm8gbWFuZWphZG9zIHBvciBnaXQiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwNAorIzogYnVpbHRpbi9ncmVwLmM6ODA3CiBtc2dpZCAic2VhcmNoIGluIGJvdGggdHJhY2tlZCBhbmQgdW50cmFja2VkIGZpbGVzIgogbXNnc3RyICJidXNjYXIgZW4gYXJjaGl2b3MgcmFzdHJlYWRvcyB5IG5vIHJhc3RyZWFkb3MiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwNgorIzogYnVpbHRpbi9ncmVwLmM6ODA5CiBtc2dpZCAiaWdub3JlIGZpbGVzIHNwZWNpZmllZCB2aWEgJy5naXRpZ25vcmUnIgogbXNnc3RyICJpZ25vcmFyIGFyY2hpdm9zIGVzcGVjaWZpY2Fkb3MgdmlhICcuZ2l0aWdub3JlJyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODA4CisjOiBidWlsdGluL2dyZXAuYzo4MTEKIG1zZ2lkICJyZWN1cnNpdmVseSBzZWFyY2ggaW4gZWFjaCBzdWJtb2R1bGUiCiBtc2dzdHIgImLDunNxdWVkYSByZWN1cnNpdmEgZW4gY2FkYSBzdWJtw7NkdWxvIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxNAogbXNnaWQgInNob3cgbm9uLW1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICJtb3N0cmFyIGzDrW5lYXMgcXVlIG5vIGNvbmN1ZXJkYW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxMworIzogYnVpbHRpbi9ncmVwLmM6ODE2CiBtc2dpZCAiY2FzZSBpbnNlbnNpdGl2ZSBtYXRjaGluZyIKIG1zZ3N0ciAiYsO6c3F1ZWRhIGluc2Vuc2libGUgYSBtYXnDunNjdWxhcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODE1CisjOiBidWlsdGluL2dyZXAuYzo4MTgKIG1zZ2lkICJtYXRjaCBwYXR0ZXJucyBvbmx5IGF0IHdvcmQgYm91bmRhcmllcyIKIG1zZ3N0ciAiY29uY29yZGFyIHBhdHLDs24gc29sbyBhIGxvcyBsw61taXRlcyBkZSBsYXMgcGFsYWJyYXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxNworIzogYnVpbHRpbi9ncmVwLmM6ODIwCiBtc2dpZCAicHJvY2VzcyBiaW5hcnkgZmlsZXMgYXMgdGV4dCIKIG1zZ3N0ciAicHJvY2VzYXIgYXJjaGl2b3MgYmluYXJpb3MgY29tbyB0ZXh0byIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODE5CisjOiBidWlsdGluL2dyZXAuYzo4MjIKIG1zZ2lkICJkb24ndCBtYXRjaCBwYXR0ZXJucyBpbiBiaW5hcnkgZmlsZXMiCiBtc2dzdHIgIm5vIGNvbmNvcmRhciBwYXRyb25lcyBlbiBhcmNoaXZvcyBiaW5hcmlvcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODIyCisjOiBidWlsdGluL2dyZXAuYzo4MjUKIG1zZ2lkICJwcm9jZXNzIGJpbmFyeSBmaWxlcyB3aXRoIHRleHRjb252IGZpbHRlcnMiCiBtc2dzdHIgInByb2Nlc2FyIGFyY2hpdm9zIGJpbmFyaW9zIGNvbiBmaWx0cm9zIHRleHRjb252IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyNwogbXNnaWQgInNlYXJjaCBpbiBzdWJkaXJlY3RvcmllcyAoZGVmYXVsdCkiCiBtc2dzdHIgImJ1c2NhciBlbiBzdWJkaXJlY3RvcmlvcyAoZGVmYXVsdCkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgyNgorIzogYnVpbHRpbi9ncmVwLmM6ODI5CiBtc2dpZCAiZGVzY2VuZCBhdCBtb3N0IDxkZXB0aD4gbGV2ZWxzIgogbXNnc3RyICJkZXNjZW5kZXIgY29tbyBtw6F4aW1vIDx2YWxvci1kZS1wcm9mdW5kaWFkPiAgbml2ZWxlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODMwCisjOiBidWlsdGluL2dyZXAuYzo4MzMKIG1zZ2lkICJ1c2UgZXh0ZW5kZWQgUE9TSVggcmVndWxhciBleHByZXNzaW9ucyIKIG1zZ3N0ciAidXNhciBleHByZXNpb25lcyByZWd1bGFyZXMgUE9TSVggZXh0ZW5kaWRhcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODMzCisjOiBidWlsdGluL2dyZXAuYzo4MzYKIG1zZ2lkICJ1c2UgYmFzaWMgUE9TSVggcmVndWxhciBleHByZXNzaW9ucyAoZGVmYXVsdCkiCiBtc2dzdHIgInVzYXIgZXhwcmVzaW9uZXMgcmVndWxhcmVzIFBPU0lYIChkZWZhdWx0KSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODM2CisjOiBidWlsdGluL2dyZXAuYzo4MzkKIG1zZ2lkICJpbnRlcnByZXQgcGF0dGVybnMgYXMgZml4ZWQgc3RyaW5ncyIKIG1zZ3N0ciAiaW50ZXJwcmV0YXIgcGF0cm9uZXMgY29tbyBzdHJpbmdzIGFycmVnbGFkb3MiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzOQorIzogYnVpbHRpbi9ncmVwLmM6ODQyCiBtc2dpZCAidXNlIFBlcmwtY29tcGF0aWJsZSByZWd1bGFyIGV4cHJlc3Npb25zIgogbXNnc3RyICJ1c2FyIGV4cHJlc2lvbmVzIHJlZ3VsYXJlcyBjb21wYXRpYmxlcyBjb24gUGVybCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQyCisjOiBidWlsdGluL2dyZXAuYzo4NDUKIG1zZ2lkICJzaG93IGxpbmUgbnVtYmVycyIKIG1zZ3N0ciAibW9zdHJhciBuw7ptZXJvcyBkZSBsw61uZWEiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0MworIzogYnVpbHRpbi9ncmVwLmM6ODQ2CiBtc2dpZCAic2hvdyBjb2x1bW4gbnVtYmVyIG9mIGZpcnN0IG1hdGNoIgogbXNnc3RyICJtb3N0cmFyIGVsIG7Dum1lcm8gZGUgY29sdW1uYSBkZSBsYSBwcmltZXIgY29pbmNpZGVuY2lhIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NwogbXNnaWQgImRvbid0IHNob3cgZmlsZW5hbWVzIgogbXNnc3RyICJubyBtb3N0cmFyIG5vbWJyZXMgZGUgYXJjaGl2byIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQ1CisjOiBidWlsdGluL2dyZXAuYzo4NDgKIG1zZ2lkICJzaG93IGZpbGVuYW1lcyIKIG1zZ3N0ciAibW9zdHJhciBub21icmVzIGRlIGFyY2hpdm8iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0NworIzogYnVpbHRpbi9ncmVwLmM6ODUwCiBtc2dpZCAic2hvdyBmaWxlbmFtZXMgcmVsYXRpdmUgdG8gdG9wIGRpcmVjdG9yeSIKIG1zZ3N0ciAibW9zdHJhciBub21icmVzIGRlIGFyY2hpdm8gcmVsYXRpdm9zIGFsIGRpcmVjdG9yaW8gc3VwZXJpb3IiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0OQorIzogYnVpbHRpbi9ncmVwLmM6ODUyCiBtc2dpZCAic2hvdyBvbmx5IGZpbGVuYW1lcyBpbnN0ZWFkIG9mIG1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICJtb3N0cmFyIHNvbG8gbm9tYnJlcyBkZSBhcmNoaXZvcyBlbiBsdWdhciBkZSBsw61uZWFzIGVuY29udHJhZGFzIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NTEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1NAogbXNnaWQgInN5bm9ueW0gZm9yIC0tZmlsZXMtd2l0aC1tYXRjaGVzIgogbXNnc3RyICJzaW7Ds25pbW8gcGFyYSAtLWZpbGVzLXdpdGgtbWF0Y2hlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODU0CisjOiBidWlsdGluL2dyZXAuYzo4NTcKIG1zZ2lkICJzaG93IG9ubHkgdGhlIG5hbWVzIG9mIGZpbGVzIHdpdGhvdXQgbWF0Y2giCiBtc2dzdHIgIm1vc3RyYXIgc29sbyBsb3Mgbm9tYnJlcyBkZSBhcmNoaXZvcyBzaW4gY29pbmNpZGVuY2lhcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODU2CisjOiBidWlsdGluL2dyZXAuYzo4NTkKIG1zZ2lkICJwcmludCBOVUwgYWZ0ZXIgZmlsZW5hbWVzIgogbXNnc3RyICJpbXByaW1pciBOVUwgZGVzcHXDqXMgZGVsIG5vbWJyZSBkZSBhcmNoaXZvIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NTkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2MgogbXNnaWQgInNob3cgb25seSBtYXRjaGluZyBwYXJ0cyBvZiBhIGxpbmUiCiBtc2dzdHIgIm1vc3RyYXIgc29sbyBwYXJ0ZXMgcXVlIGNvbmN1ZXJkYW4gZGUgdW5hIGzDrW5lYSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODYxCisjOiBidWlsdGluL2dyZXAuYzo4NjQKIG1zZ2lkICJzaG93IHRoZSBudW1iZXIgb2YgbWF0Y2hlcyBpbnN0ZWFkIG9mIG1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICJtb3N0cmFyIGVsIG7Dum1lcm8gZGUgY29uY29yZGFuY2lhcyBlbiBsdWdhciBkZSBsYXMgbMOtbmVhcyBjb25jb3JkYW50ZXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2MgorIzogYnVpbHRpbi9ncmVwLmM6ODY1CiBtc2dpZCAiaGlnaGxpZ2h0IG1hdGNoZXMiCiBtc2dzdHIgInJlc2FsdGFyIGNvbmNvcmRhbmNpYXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2NAorIzogYnVpbHRpbi9ncmVwLmM6ODY3CiBtc2dpZCAicHJpbnQgZW1wdHkgbGluZSBiZXR3ZWVuIG1hdGNoZXMgZnJvbSBkaWZmZXJlbnQgZmlsZXMiCiBtc2dzdHIgImltcHJpbWlyIHVuYSBsw61uZWEgdmFjw61hIGVudHJlIGNvaW5jaWRlbmNpYXMgZGUgZGlmZXJlbnRlcyBhcmNoaXZvcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODY2CisjOiBidWlsdGluL2dyZXAuYzo4NjkKIG1zZ2lkICJzaG93IGZpbGVuYW1lIG9ubHkgb25jZSBhYm92ZSBtYXRjaGVzIGZyb20gc2FtZSBmaWxlIgogbXNnc3RyICIiCiAibW9zdHJhciBlbCBub21icmUgZGUgYXJjaGl2byBzb2xvIHVuYSB2ZXogcGFyYSBjb25jb3JkYW5jaWFzIGVuIGVsIG1pc21vICIKICJhcmNoaXZvIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3MgogbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYmVmb3JlIGFuZCBhZnRlciBtYXRjaGVzIgogbXNnc3RyICJtb3N0cmFyIDxuPiBsw61uZWFzIGRlIGNvbnRleHRvIGFudGVzIHkgZGVzcHXDqXMgZGUgbGEgY29uY29yZGFuY2lhIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3NQogbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYmVmb3JlIG1hdGNoZXMiCiBtc2dzdHIgIm1vc3RyYXIgPG4+IGzDrW5lYXMgZGUgY29udGV4dG8gYW50ZXMgZGUgbGFzIGNvbmNvcmRhbmNpYXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NAorIzogYnVpbHRpbi9ncmVwLmM6ODc3CiBtc2dpZCAic2hvdyA8bj4gY29udGV4dCBsaW5lcyBhZnRlciBtYXRjaGVzIgogbXNnc3RyICJtb3N0cmFyIDxuPiBsw61uZWFzIGRlIGNvbnRleHQgZGVzcHXDqXMgZGUgbGFzIGNvbmNvcmRhbmNpYXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NgorIzogYnVpbHRpbi9ncmVwLmM6ODc5CiBtc2dpZCAidXNlIDxuPiB3b3JrZXIgdGhyZWFkcyIKIG1zZ3N0ciAidXNhciA8bj4gaGlsb3MgZGUgdHJhYmFqbyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODc3CisjOiBidWlsdGluL2dyZXAuYzo4ODAKIG1zZ2lkICJzaG9ydGN1dCBmb3IgLUMgTlVNIgogbXNnc3RyICJhdGFqbyBwYXJhIC1DIE5VTSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODgwCisjOiBidWlsdGluL2dyZXAuYzo4ODMKIG1zZ2lkICJzaG93IGEgbGluZSB3aXRoIHRoZSBmdW5jdGlvbiBuYW1lIGJlZm9yZSBtYXRjaGVzIgogbXNnc3RyICIiCiAibW9zdHJhciB1bmEgbMOtbmVhIGNvbiBlbCBub21icmUgZGUgbGEgZnVuY2nDs24gYW50ZXMgZGUgbGFzIGNvbmNvcmRhbmNpYXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4MgorIzogYnVpbHRpbi9ncmVwLmM6ODg1CiBtc2dpZCAic2hvdyB0aGUgc3Vycm91bmRpbmcgZnVuY3Rpb24iCiBtc2dzdHIgIm1vc3RyYXIgbGEgZnVuY2nDs24gY2lyY3VuZGFudGUiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4NQorIzogYnVpbHRpbi9ncmVwLmM6ODg4CiBtc2dpZCAicmVhZCBwYXR0ZXJucyBmcm9tIGZpbGUiCiBtc2dzdHIgImxlZXIgcGF0cm9uZXMgZGVsIGFyY2hpdm8iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4NworIzogYnVpbHRpbi9ncmVwLmM6ODkwCiBtc2dpZCAibWF0Y2ggPHBhdHRlcm4+IgogbXNnc3RyICJjb25jb3JkYXIgPHBhdHLDs24+IgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5MgogbXNnaWQgImNvbWJpbmUgcGF0dGVybnMgc3BlY2lmaWVkIHdpdGggLWUiCiBtc2dzdHIgImNvbWJpbmFyIHBhdHJvbmVzIGVzcGVjaWZpY2Fkb3MgY29uIC1lIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwNAogbXNnaWQgImluZGljYXRlIGhpdCB3aXRoIGV4aXQgc3RhdHVzIHdpdGhvdXQgb3V0cHV0IgogbXNnc3RyICJpbmRpY2FyIGNvbmNvcmRhbmNpYSBjb24gZXhpdCBzdGF0dXMgc2luIG91dHB1dCIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTAzCisjOiBidWlsdGluL2dyZXAuYzo5MDYKIG1zZ2lkICJzaG93IG9ubHkgbWF0Y2hlcyBmcm9tIGZpbGVzIHRoYXQgbWF0Y2ggYWxsIHBhdHRlcm5zIgogbXNnc3RyICIiCiAibW9zdHJhciBzb2xvIGNvbmNvcmRhbmNpYXMgY29uIGFyY2hpdm9zIHF1ZSBjb25jdWVyZGFuIHRvZG9zIGxvcyBwYXRyb25lcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTA1CisjOiBidWlsdGluL2dyZXAuYzo5MDgKIG1zZ2lkICJzaG93IHBhcnNlIHRyZWUgZm9yIGdyZXAgZXhwcmVzc2lvbiIKIG1zZ3N0ciAibW9zdHJhciDDoXJib2wgYW5hbGl6YWRvIHBhcmEgbGEgZXhwcmVzacOzbiBncmVwIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxMgogbXNnaWQgInBhZ2VyIgogbXNnc3RyICJwYWdpbmFkb3IiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwOQorIzogYnVpbHRpbi9ncmVwLmM6OTEyCiBtc2dpZCAic2hvdyBtYXRjaGluZyBmaWxlcyBpbiB0aGUgcGFnZXIiCiBtc2dzdHIgIm1vc3RyYXIgYXJjaGl2b3MgY29uY29yZGFudGVzIGVuIGVsIHBhZ2luYWRvciIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTEzCisjOiBidWlsdGluL2dyZXAuYzo5MTYKIG1zZ2lkICJhbGxvdyBjYWxsaW5nIG9mIGdyZXAoMSkgKGlnbm9yZWQgYnkgdGhpcyBidWlsZCkiCiBtc2dzdHIgInBlcm1pdGlyIGVsIGxsYW1hZG8gZGUgZ3JlcCgxKSAoaWdub3JhZG8gcG9yIGVzdGEgYnVpbGQpIgogCi0jOiBidWlsdGluL2dyZXAuYzo5NzcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjk4MwogbXNnaWQgIm5vIHBhdHRlcm4gZ2l2ZW4iCiBtc2dzdHIgIm5vIHNlIGhhIGVudHJlZ2FkbyBwYXRyw7NuIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDEzCisjOiBidWlsdGluL2dyZXAuYzoxMDE5CiBtc2dpZCAiLS1uby1pbmRleCBvciAtLXVudHJhY2tlZCBjYW5ub3QgYmUgdXNlZCB3aXRoIHJldnMiCiBtc2dzdHIgIi0tbm8taW5kZXggbyAtLXVudHJhY2tlZCBubyBzZSBwdWVkZSB1c2FyIGNvbiByZXZzIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDIwCisjOiBidWlsdGluL2dyZXAuYzoxMDI3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIHJldmlzaW9uOiAlcyIKIG1zZ3N0ciAibm8gc2UgcG9zaWJsZSByZXNvbHZlciByZXZpc2nDs246ICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDUxCisjOiBidWlsdGluL2dyZXAuYzoxMDU3Cittc2dpZCAiLS11bnRyYWNrZWQgbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgorbXNnc3RyICItLXVudHJhY2tlZCBubyBlcyBzb3BvcnRhZGEgY29uIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgorCisjOiBidWlsdGluL2dyZXAuYzoxMDYxCiBtc2dpZCAiaW52YWxpZCBvcHRpb24gY29tYmluYXRpb24sIGlnbm9yaW5nIC0tdGhyZWFkcyIKIG1zZ3N0ciAiY29tYmluYWNpw7NuIGRlIG9wY2lvbmVzIGludsOhbGlkYSwgaWdub3JhbmRvIC0tdGhyZWFkcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTA1NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTQ3CiBtc2dpZCAibm8gdGhyZWFkcyBzdXBwb3J0LCBpZ25vcmluZyAtLXRocmVhZHMiCiBtc2dzdHIgIm5vIHNlIHNvcG9ydGFuIGhpbG9zLCBpZ25vcmFuZG8gLS10aHJlYWRzIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDU3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MDMgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzE2CisjOiBidWlsdGluL2dyZXAuYzoxMDY3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MzUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbnVtYmVyIG9mIHRocmVhZHMgc3BlY2lmaWVkICglZCkiCiBtc2dzdHIgIm7Dum1lcm8gaW52w6FsaWRvIGRlIGhpbG9zIGVzcGVjaWZpY2FkbyAoJWQpIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDgwCisjOiBidWlsdGluL2dyZXAuYzoxMTAxCiBtc2dpZCAiLS1vcGVuLWZpbGVzLWluLXBhZ2VyIG9ubHkgd29ya3Mgb24gdGhlIHdvcmt0cmVlIgogbXNnc3RyICItLW9wZW4tZmlsZXMtaW4tcGFnZXIgc29sbyBmdW5jaW9uYSBlbiBlbCDDoXJib2wgZGUgdHJhYmFqbyIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTEwMwotbXNnaWQgIm9wdGlvbiBub3Qgc3VwcG9ydGVkIHdpdGggLS1yZWN1cnNlLXN1Ym1vZHVsZXMiCi1tc2dzdHIgIm9wY2nDs24gbm8gc29wb3J0YWRhIGNvbiAtLXJlY3Vyc2Utc3VibW9kdWxlcyIKLQotIzogYnVpbHRpbi9ncmVwLmM6MTEwOQorIzogYnVpbHRpbi9ncmVwLmM6MTEyNwogbXNnaWQgIi0tY2FjaGVkIG9yIC0tdW50cmFja2VkIGNhbm5vdCBiZSB1c2VkIHdpdGggLS1uby1pbmRleCIKIG1zZ3N0ciAiLS1jYWNoZWQgbyAtLXVudHJhY2tlZCBubyBwdWVkZW4gc2VyIHVzYWRhcyBjb24gLS1uby1pbmRleCIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTExNQorIzogYnVpbHRpbi9ncmVwLmM6MTEzMwogbXNnaWQgIi0tW25vLV1leGNsdWRlLXN0YW5kYXJkIGNhbm5vdCBiZSB1c2VkIGZvciB0cmFja2VkIGNvbnRlbnRzIgogbXNnc3RyICItLVtuby1dZXhjbHVkZS1zdGFuZGFyZCBubyBwdWVkZSBzZXIgdXNhZGEgcGFyYSBjb250ZW5pZG8gcmFzdHJlYWRvIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMTIzCisjOiBidWlsdGluL2dyZXAuYzoxMTQxCiBtc2dpZCAiYm90aCAtLWNhY2hlZCBhbmQgdHJlZXMgYXJlIGdpdmVuIgogbXNnc3RyICItLWNhY2hlZCB5IMOhcmJvbGVzIGhhbiBzaWRvIGVudHJlZ2Fkb3MiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg1CiBtc2dpZCAiIgogImdpdCBoYXNoLW9iamVjdCBbLXQgPHR5cGU+XSBbLXddIFstLXBhdGg9PGZpbGU+IHwgLS1uby1maWx0ZXJzXSBbLS1zdGRpbl0gIgogIlstLV0gPGZpbGU+Li4uIgpAQCAtMTE2MzQsMzggKzE0NzY3LDM0IEBACiAiZ2l0IGhhc2gtb2JqZWN0IFstdCA8dGlwbz5dIFstd10gWy0tcGF0aD08YXJjaGl2bz4gfCAtLW5vLWZpbHRlcnNdIFstLXN0ZGluXSAiCiAiWy0tXSA8YXJjaGl2bz4uLi4iCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NQorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg2CiBtc2dpZCAiZ2l0IGhhc2gtb2JqZWN0ICAtLXN0ZGluLXBhdGhzIgogbXNnc3RyICJnaXQgaGFzaC1vYmplY3QgIC0tc3RkaW4tcGF0aHMiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5NwotbXNnaWQgInR5cGUiCi1tc2dzdHIgInRpcG8iCi0KLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5NworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk4CiBtc2dpZCAib2JqZWN0IHR5cGUiCiBtc2dzdHIgInRpcG8gZGUgb2JqZXRvIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OQogbXNnaWQgIndyaXRlIHRoZSBvYmplY3QgaW50byB0aGUgb2JqZWN0IGRhdGFiYXNlIgogbXNnc3RyICJlc2NyaWJpciBlbCBvYmpldG8gZW4gbGEgYmFzZSBkZSBkYXRvcyBkZSBvYmpldG9zIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAwCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAxCiBtc2dpZCAicmVhZCB0aGUgb2JqZWN0IGZyb20gc3RkaW4iCiBtc2dzdHIgImxlZXIgZWwgb2JqZXRvIGRlIHN0ZGluIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAyCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAzCiBtc2dpZCAic3RvcmUgZmlsZSBhcyBpcyB3aXRob3V0IGZpbHRlcnMiCiBtc2dzdHIgImd1YXJkYXIgZWwgYXJjaGl2byBjb21vIGVzIHNpbiBmaWx0cm9zIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAzCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0CiBtc2dpZCAiIgogImp1c3QgaGFzaCBhbnkgcmFuZG9tIGdhcmJhZ2UgdG8gY3JlYXRlIGNvcnJ1cHQgb2JqZWN0cyBmb3IgZGVidWdnaW5nIEdpdCIKIG1zZ3N0ciAiIgogInNvbG8gcmVhbGl6YXIgdW4gaGFzaCBhIGN1YWxxdWllciBiYXN1cmEgcmFuZG9tIHBhcmEgY3JlYXIgdW4gb2JqZXRvICIKICJjb3JydXB0byBwYXJhIGhhY2VyIGRlYnVnZ2luZyBkZSBHdGkiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDQKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDUKIG1zZ2lkICJwcm9jZXNzIGZpbGUgYXMgaXQgd2VyZSBmcm9tIHRoaXMgcGF0aCIKIG1zZ3N0ciAicHJvY2VzYXIgZWwgYXJjaGl2byBjb21vIHNpIGZ1ZXJhIGRlIGVzdGEgcnV0YSIKIApAQCAtMTE3MDUsMzAgKzE0ODM0LDMwIEBACiBtc2dpZCAiZ2l0IGhlbHAgWy0tYWxsXSBbLS1ndWlkZXNdIFstLW1hbiB8IC0td2ViIHwgLS1pbmZvXSBbPGNvbW1hbmQ+XSIKIG1zZ3N0ciAiZ2l0IGhlbHAgWy0tYWxsXSBbLS1ndWlkZXNdIFstLW1hbiB8IC0td2ViIHwgLS1pbmZvXSBbPGNvbWFuZG8+XSIKIAotIzogYnVpbHRpbi9oZWxwLmM6NzMKKyM6IGJ1aWx0aW4vaGVscC5jOjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBoZWxwIGZvcm1hdCAnJXMnIgogbXNnc3RyICJmb3JtYXRvIGhlbHAgbm8gcmVjb25vY2lkbyAnJXMnIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMDAKKyM6IGJ1aWx0aW4vaGVscC5jOjEwNAogbXNnaWQgIkZhaWxlZCB0byBzdGFydCBlbWFjc2NsaWVudC4iCiBtc2dzdHIgIkZhbGzDsyBhbCBpbmljaWFyIGVtYWNzY2xpZW50LiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTEzCisjOiBidWlsdGluL2hlbHAuYzoxMTcKIG1zZ2lkICJGYWlsZWQgdG8gcGFyc2UgZW1hY3NjbGllbnQgdmVyc2lvbi4iCiBtc2dzdHIgIkZhbGzDsyBhbCBhbmFsaXphciBsYSB2ZXJzacOzbiBkZSBlbWFjc2NsaWVudC4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjEyMQorIzogYnVpbHRpbi9oZWxwLmM6MTI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImVtYWNzY2xpZW50IHZlcnNpb24gJyVkJyB0b28gb2xkICg8IDIyKS4iCiBtc2dzdHIgImxhIHZlcnNpw7NuICclZCcgZGUgZW1hY3NjbGllbnQgZXMgbXV5IGFudGlndWEgKDwyMikuIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMzkgYnVpbHRpbi9oZWxwLmM6MTYxIGJ1aWx0aW4vaGVscC5jOjE3MSBidWlsdGluL2hlbHAuYzoxNzkKKyM6IGJ1aWx0aW4vaGVscC5jOjE0MyBidWlsdGluL2hlbHAuYzoxNjUgYnVpbHRpbi9oZWxwLmM6MTc1IGJ1aWx0aW4vaGVscC5jOjE4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZXhlYyAnJXMnIgogbXNnc3RyICJmYWxsw7MgYWwgZWplY3V0YXIgJyVzJyIKIAotIzogYnVpbHRpbi9oZWxwLmM6MjE3CisjOiBidWlsdGluL2hlbHAuYzoyMjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcyc6IHBhdGggZm9yIHVuc3VwcG9ydGVkIG1hbiB2aWV3ZXIuXG4iCkBAIC0xMTczNyw3ICsxNDg2Niw3IEBACiAiJyVzJzogcnV0YSBwYXJhIGVsIHZpc3VhbGl6YWRvciBkZWwgbWFudWFsIG5vIHNvcG9ydGFkYS5cbiIKICJQb3IgZmF2b3IgY29uc2lkZXJlIHVzYXIgJ21hbi48aGVycmFtaWVudGEuY21kJy4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjIyOQorIzogYnVpbHRpbi9oZWxwLmM6MjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnOiBjbWQgZm9yIHN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgpAQCAtMTE3NDYsMzI3ICsxNDg3NSwzMTcgQEAKICInJXMnOiBjb21hbmRvIG5vIHNvcG9ydGFkbyBwYXJhIG1hbiB2aWV3ZXIuXG4iCiAiUG9yIGZhdm9yIGNvbnNpZGVyZSB1c2FyICdtYW4uPGhlcnJhbWllbnRhPi5wYXRoLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MzQ2CisjOiBidWlsdGluL2hlbHAuYzozNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogdW5rbm93biBtYW4gdmlld2VyLiIKIG1zZ3N0ciAiJyVzJzogdmlzdWFsaXphZG9yIGRlIG1hbiBkZXNjb25vY2lkby4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM2MworIzogYnVpbHRpbi9oZWxwLmM6MzY3CiBtc2dpZCAibm8gbWFuIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgogbXNnc3RyICJuaW5nw7puIHZpc3VhbGl6YWRvciBkZSBtYW51YWwgcHJvY2VzbyBsYSBwZXRpY2nDs24iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM3MQorIzogYnVpbHRpbi9oZWxwLmM6Mzc1CiBtc2dpZCAibm8gaW5mbyB2aWV3ZXIgaGFuZGxlZCB0aGUgcmVxdWVzdCIKIG1zZ3N0ciAibmluZ8O6biB2aXNvciBkZSBpbmZvIG1hbmVqbyBsYSBwZXRpY2nDs24iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQzMCBidWlsdGluL2hlbHAuYzo0NDEgZ2l0LmM6MzIyCisjOiBidWlsdGluL2hlbHAuYzo0MzQgYnVpbHRpbi9oZWxwLmM6NDQ1IGdpdC5jOjMzNgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFsaWFzZWQgdG8gJyVzJyIKIG1zZ3N0ciAiJyVzJyB0aWVuZSBlbCBhbGlhcyAnJXMnIgogCi0jOiBidWlsdGluL2hlbHAuYzo0NDQKKyM6IGJ1aWx0aW4vaGVscC5jOjQ0OCBnaXQuYzozNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGFsaWFzLiVzIHN0cmluZzogJXMiCiBtc2dzdHIgIm1hbCBhbGlhcy4lcyBzdHJpbmc6ICVzIgogCi0jOiBidWlsdGluL2hlbHAuYzo0NzMgYnVpbHRpbi9oZWxwLmM6NTAzCisjOiBidWlsdGluL2hlbHAuYzo0NzcgYnVpbHRpbi9oZWxwLmM6NTA3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVzYWdlOiAlcyVzIgogbXNnc3RyICJ1c286ICVzJXMiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQ4NworIzogYnVpbHRpbi9oZWxwLmM6NDkxCiBtc2dpZCAiJ2dpdCBoZWxwIGNvbmZpZycgZm9yIG1vcmUgaW5mb3JtYXRpb24iCiBtc2dzdHIgIidnaXQgaGVscCBjb25maWcnIHBhcmEgbcOhcyBpbmZvcm1hY2nDs24iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCB0eXBlIG1pc21hdGNoIGF0ICVzIgogbXNnc3RyICJlbCB0aXBvIGRlbCBvYmpldG8gbm8gY29uY3VlcmRhIGVuICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJkaWQgbm90IHJlY2VpdmUgZXhwZWN0ZWQgb2JqZWN0ICVzIgogbXNnc3RyICJubyBzZSByZWNpYmnDsyBlbCBvYmpldG8gZXNwZXJhZG8gJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlczogZXhwZWN0ZWQgdHlwZSAlcywgZm91bmQgJXMiCiBtc2dzdHIgIm9iamV0byAlczogdGlwbyBlc3BlcmFkbyAlcywgZW5jb250cmFkbyAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjQ5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZpbGwgJWQgYnl0ZSIKIG1zZ2lkX3BsdXJhbCAiY2Fubm90IGZpbGwgJWQgYnl0ZXMiCiBtc2dzdHJbMF0gIm5vIHNlIHB1ZWRlIGxsZW5hciAlZCBieXRlIgogbXNnc3RyWzFdICJubyBzZSBwdWVkZW4gbGxlbmFyICVkIGJ5dGVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OAogbXNnaWQgImVhcmx5IEVPRiIKIG1zZ3N0ciAiRU9GIHRlbXByYW5vIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNjAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OQogbXNnaWQgInJlYWQgZXJyb3Igb24gaW5wdXQiCiBtc2dzdHIgImxlZXIgZXJyb3IgZW4gaW5wdXQiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI3MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjgxCiBtc2dpZCAidXNlZCBtb3JlIGJ5dGVzIHRoYW4gd2VyZSBhdmFpbGFibGUiCiBtc2dzdHIgInNlIHVzYXJvbiBtw6FzIGJ5dGVzIGRlIGxvcyBkaXNwb25pYmxlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6Mjc5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTk4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyODggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo2MDYKIG1zZ2lkICJwYWNrIHRvbyBsYXJnZSBmb3IgY3VycmVudCBkZWZpbml0aW9uIG9mIG9mZl90IgogbXNnc3RyICJwYXF1ZXRlIG11eSBncmFuZGUgcGFyYSBsYSBkZWZpbmljacOzbiBhY3R1YWwgZGUgb2ZmX3QiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI4MiBidWlsdGluL3VucGFjay1vYmplY3RzLmM6OTQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI5MSBidWlsdGluL3VucGFjay1vYmplY3RzLmM6OTUKIG1zZ2lkICJwYWNrIGV4Y2VlZHMgbWF4aW11bSBhbGxvd2VkIHNpemUiCiBtc2dzdHIgInBhcXVldGUgZXhjZWRlIGVsIG3DoXhpbW8gdGFtYcOxbyBwZXJtaXRpZG8iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI5NwotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlICclcyciCi1tc2dzdHIgIm5vIHNlIHB1ZWRlIGNyZWFyICclcyciCi0KLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMwMworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuIHBhY2tmaWxlICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGFicmlyIGVsIGFyY2hpdm8gZGUgcGFxdWV0ZSAnJXMnIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozMTcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMyNgogbXNnaWQgInBhY2sgc2lnbmF0dXJlIG1pc21hdGNoIgogbXNnc3RyICJmaXJtYSBkZWwgcGFxdWV0ZSBubyBjb25jdWVyZGEiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMxOQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2sgdmVyc2lvbiAlPFBSSXUzMj4gdW5zdXBwb3J0ZWQiCiBtc2dzdHIgInZlcnNpw7NuIGRlIHBhcXVldGUgJTxQUkl1MzI+IG5vIHNvcG9ydGFkYSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzM3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzozNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjayBoYXMgYmFkIG9iamVjdCBhdCBvZmZzZXQgJTxQUkl1TUFYPjogJXMiCiBtc2dzdHIgInBhcXVldGUgdGllbmUgdW4gbWFsIG9iamV0byBlbiBlbCBvZmZzZXQgJTxQUkl1TUFYPjogJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjQ1NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgImluZmxhdGUgcmV0dXJuZWQgJWQiCiBtc2dzdHIgImluZmxhdGUgZGV2b2x2acOzICVkIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1MDYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNQogbXNnaWQgIm9mZnNldCB2YWx1ZSBvdmVyZmxvdyBmb3IgZGVsdGEgYmFzZSBvYmplY3QiCiBtc2dzdHIgInZhbG9yIGRlIG9mZnNldCBkZXNib3JkYWRvIHBhcmEgZWwgb2JqZXRvIGJhc2UgZGVsdGEiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTIzCiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgaXMgb3V0IG9mIGJvdW5kIgogbXNnc3RyICJvZmZzZXQgZGUgYmFzZSBkZWx0YSBlc3TDoSBmdWVyYSBkZSBsw61taXRlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTIyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvYmplY3QgdHlwZSAlZCIKIG1zZ3N0ciAidGlwbyBkZSBvYmpldG8gJWQgZGVzY29ub2NpZG8iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU1MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTYyCiBtc2dpZCAiY2Fubm90IHByZWFkIHBhY2sgZmlsZSIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgcHJvcGFnYXIgZWwgcGFxdWV0ZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTU1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICU8UFJJdU1BWD4gYnl0ZSBtaXNzaW5nIgogbXNnaWRfcGx1cmFsICJwcmVtYXR1cmUgZW5kIG9mIHBhY2sgZmlsZSwgJTxQUkl1TUFYPiBieXRlcyBtaXNzaW5nIgogbXNnc3RyWzBdICJmaW5hbCBwcmVtYXR1cm8gZGUgYXJjaGl2byBkZSBwYXF1ZXRlLCAlPFBSSXVNQVg+IGJ5dGUgZmFsdGFudGUiCiBtc2dzdHJbMV0gImZpbmFsIHByZW1hdHVybyBkZSBhcmNoaXZvIGRlIHBhcXVldGUsICU8UFJJdU1BWD4gYnl0ZXMgZmFsdGFudGVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1ODEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU5MAogbXNnaWQgInNlcmlvdXMgaW5mbGF0ZSBpbmNvbnNpc3RlbmN5IgogbXNnc3RyICJpbmNvbnNpc3RlbmNpYSBzZXJpYSBlbiBpbmZsYXRlIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3MjYgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzMyIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc1NQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6Nzk0IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwMworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzM1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc0MSBidWlsdGluL2luZGV4LXBhY2suYzo3NjUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwNCBidWlsdGluL2luZGV4LXBhY2suYzo4MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiU0hBMSBDT0xMSVNJT04gRk9VTkQgV0lUSCAlcyAhIgotbXNnc3RyICJDT0xJU0nDk04gREUgVElQTyBTSEExIEVOQ09OVFJBREEgQ09OICVzICEiCittc2dzdHIgIsKhQ09MSVNJw5NOIERFIFRJUE8gU0hBMSBFTkNPTlRSQURBIENPTiAlcyAhIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3MjkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTEKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjExIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzA1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo3MzggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjE4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkICVzIgogbXNnc3RyICJubyBzZSBwb3NpYmxlIGxlZXIgJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc5MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIGV4aXN0aW5nIG9iamVjdCBpbmZvICVzIgogbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyIGxhIGluZm9ybWFjacOzbiBleGlzdGVudGUgZGVsIG9iamV0byAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgZXhpc3Rpbmcgb2JqZWN0ICVzIgogbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyIGVsIG9iamV0byBleGlzdGVudGUgJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxNAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgYmxvYiBvYmplY3QgJXMiCiBtc2dzdHIgIm9iamV0byBibG9iICVzIGludsOhbGlkbyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODE3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzNgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODI3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0NgogbXNnaWQgImZzY2sgZXJyb3IgaW4gcGFja2VkIG9iamVjdCIKIG1zZ3N0ciAiZXJyb3IgZGUgZnNjayBlbiBlbCBvYmpldG8gZW1wYXF1ZXRhZG8iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzMwotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkICVzIgotbXNnc3RyICIlcyBpbnbDoWxpZG8iCi0KLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzOAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhbGwgY2hpbGQgb2JqZWN0cyBvZiAlcyBhcmUgcmVhY2hhYmxlIgogbXNnc3RyICJObyB0b2RvcyBsb3Mgb2JqZXRvcyBoaWpvcyBkZSAlcyBzb24gYWxjYW56YWJsZXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjkxMCBidWlsdGluL2luZGV4LXBhY2suYzo5NDEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjkyMCBidWlsdGluL2luZGV4LXBhY2suYzo5NTEKIG1zZ2lkICJmYWlsZWQgdG8gYXBwbHkgZGVsdGEiCiBtc2dzdHIgImZhbGzDsyBhbCBhcGxpY2FyIGRlbHRhIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTA5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTIxCiBtc2dpZCAiUmVjZWl2aW5nIG9iamVjdHMiCiBtc2dzdHIgIlJlY2liaWVuZG8gb2JqZXRvcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEwOQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEyMQogbXNnaWQgIkluZGV4aW5nIG9iamVjdHMiCiBtc2dzdHIgIkluZGV4YW5kbyBvYmpldG9zIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTQzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTU1CiBtc2dpZCAicGFjayBpcyBjb3JydXB0ZWQgKFNIQTEgbWlzbWF0Y2gpIgogbXNnc3RyICJwYXF1ZXRlIGVzdMOhIGNvcnJvbXBpZG8gKFNIQTEgbm8gY29uY3VlcmRhKSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE0OAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE2MAogbXNnaWQgImNhbm5vdCBmc3RhdCBwYWNrZmlsZSIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgZnN0YXQgYWwgYXJjaGl2byBkZSBwYXF1ZXRlIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTUxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYzCiBtc2dpZCAicGFjayBoYXMganVuayBhdCB0aGUgZW5kIgogbXNnc3RyICJlbCBwYXF1ZXRlIHRpZW5lIGJhc3VyYSBhbCBmaW5hbCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE2MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE3NQogbXNnaWQgImNvbmZ1c2lvbiBiZXlvbmQgaW5zYW5pdHkgaW4gcGFyc2VfcGFja19vYmplY3RzKCkiCiBtc2dzdHIgImNvbmZ1c2nDs24gbcOhcyBhbGzDoSBkZSBsYSBsb2N1cmEgZW4gcGFyc2VfcGFja19vYmplY3RzKCkiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExODYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExOTgKIG1zZ2lkICJSZXNvbHZpbmcgZGVsdGFzIgogbXNnc3RyICJSZXNvbHZpZW5kbyBkZWx0YXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExOTYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNDkyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjA4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjYxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRocmVhZDogJXMiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgY3JlYXIgaGlsbzogJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyMzcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNDkKIG1zZ2lkICJjb25mdXNpb24gYmV5b25kIGluc2FuaXR5IgogbXNnc3RyICJjb25mdXNpw7NuIG3DoXMgYWxsw6EgZGUgbGEgbG9jdXJhIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjQzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbXBsZXRlZCB3aXRoICVkIGxvY2FsIG9iamVjdCIKIG1zZ2lkX3BsdXJhbCAiY29tcGxldGVkIHdpdGggJWQgbG9jYWwgb2JqZWN0cyIKIG1zZ3N0clswXSAiY29tcGxldGFkbyBjb24gJWQgb2JqZXRvIGxvY2FsIgogbXNnc3RyWzFdICJjb21wbGV0YWRvIGNvbiAlZCBvYmpldG9zIGxvY2FsZXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5leHBlY3RlZCB0YWlsIGNoZWNrc3VtIGZvciAlcyAoZGlzayBjb3JydXB0aW9uPykiCi1tc2dzdHIgIlRhaWwgY2hlY2tzdW0gcGFyYSAlcyBpbmVzcGVyYWRhIChjb3JydXBjacOzbiBkZSBkaXNjbz8pIgorbXNnc3RyICJUYWlsIGNoZWNrc3VtIHBhcmEgJXMgaW5lc3BlcmFkYSAowr9jb3JydXBjacOzbiBkZSBkaXNjbz8pIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjU5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2sgaGFzICVkIHVucmVzb2x2ZWQgZGVsdGEiCiBtc2dpZF9wbHVyYWwgInBhY2sgaGFzICVkIHVucmVzb2x2ZWQgZGVsdGFzIgogbXNnc3RyWzBdICJwYXF1ZXRlIHRpZW5lICVkIGRlbHRhIHNpbiByZXNvbHZlciIKIG1zZ3N0clsxXSAicGFxdWV0ZSB0aWVuZSAlZCBkZWx0YXMgc2luIHJlc29sdmVyIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjgzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjk1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBkZWZsYXRlIGFwcGVuZGVkIG9iamVjdCAoJWQpIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIGRlc2luZmxhciBlbCBvYmpldG8gYWRqdW50byAoJWQpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzYwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImxvY2FsIG9iamVjdCAlcyBpcyBjb3JydXB0IgogbXNnc3RyICJvYmpldG8gbG9jYWwgJXMgZXN0w6EgY29ycm9tcGlkbyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM3NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrZmlsZSBuYW1lICclcycgZG9lcyBub3QgZW5kIHdpdGggJy5wYWNrJyIKIG1zZ3N0ciAibm9tYnJlICclcycgZGUgYXJjaGl2byBkZSBwYXF1ZXRlIG5vIHRlcm1pbmEgY29uICcucGFjayciCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzOTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHdyaXRlICVzIGZpbGUgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgZXNjcmliaXIgJXMgZW4gZWwgYXJjaGl2byAnJXMnIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDA3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDM5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjbG9zZSB3cml0dGVuICVzIGZpbGUgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgY2VycmFyIGVzY3JpdG8gJXMgZW4gYXJjaGl2byAnJXMnIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDMxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDYzCiBtc2dpZCAiZXJyb3Igd2hpbGUgY2xvc2luZyBwYWNrIGZpbGUiCiBtc2dzdHIgImVycm9yIG1pZW50cmFzIHNlIGNpZXJyYSBlbCBhcmNoaXZvIHBhcXVldGUiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0NDUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0NzcKIG1zZ2lkICJjYW5ub3Qgc3RvcmUgcGFjayBmaWxlIgogbXNnc3RyICJubyBzZSBwdWVkZSBndWFyZGFyIGVsIGFyY2hpdm8gcGFxdWV0ZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ1MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ4NQogbXNnaWQgImNhbm5vdCBzdG9yZSBpbmRleCBmaWxlIgogbXNnc3RyICJubyBzZSBwdWVkZSBndWFyZGFyIGVsIGFyY2hpdm8gw61uZGljZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ5NyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MjcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MjkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODYyCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBwYWNrLmluZGV4dmVyc2lvbj0lPFBSSXUzMj4iCiBtc2dzdHIgIm1hbCBwYWNrLmluZGV4dmVyc2lvbj0lPFBSSXUzMj4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NjUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IG9wZW4gZXhpc3RpbmcgcGFjayBmaWxlICclcyciCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIGFicmlyIGVsIGFyY2hpdm8gcGFxdWV0ZSBleGlzdGVudGUgJyVzJyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU2NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgb3BlbiBleGlzdGluZyBwYWNrIGlkeCBmaWxlIGZvciAnJXMnIgogbXNnc3RyICJObyBzZSBwdWVkZSBhYnJpciBlbCDDrW5kaWNlIGRlbCBhcmNoaXZvIHBhcXVldGUgcGFyYSAnJXMnIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjE1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vbiBkZWx0YTogJWQgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJub24gZGVsdGE6ICVkIG9iamVjdHMiCiBtc2dzdHJbMF0gIm5vIGRlbHRhOiAlZCBvYmpldG8iCiBtc2dzdHJbMV0gIm5vIGRlbHRhOiAlZCBvYmpldG9zIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjIyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNoYWluIGxlbmd0aCA9ICVkOiAlbHUgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJjaGFpbiBsZW5ndGggPSAlZDogJWx1IG9iamVjdHMiCiBtc2dzdHJbMF0gImxhcmdvIGRlIGNhZGVuYSA9ICVkOiAlbHUgb2JqZXRvIgogbXNnc3RyWzFdICJsYXJnbyBkZSBjYWRlbmEgPSAlZDogJWx1IG9iamV0b3MiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2OTMKIG1zZ2lkICJDYW5ub3QgY29tZSBiYWNrIHRvIGN3ZCIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgcmVncmVzYXIgYSBjd2QiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MDggYnVpbHRpbi9pbmRleC1wYWNrLmM6MTcxMQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTcyNyBidWlsdGluL2luZGV4LXBhY2suYzoxNzMxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQyIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NjEgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgJXMiCiBtc2dzdHIgIm1hbCAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4MQogbXNnaWQgIi0tZml4LXRoaW4gY2Fubm90IGJlIHVzZWQgd2l0aG91dCAtLXN0ZGluIgogbXNnc3RyICItLWZpeC10aGluIG5vIHB1ZWRlIHNlciB1c2FkYSBzaW4gLS1zdGRpbiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4MwogbXNnaWQgIi0tc3RkaW4gcmVxdWlyZXMgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiLS1zdGRpbiByZXF1aWVyZSB1biByZXBvc2l0b3JpbyBnaXQiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NTUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3ODkKIG1zZ2lkICItLXZlcmlmeSB3aXRoIG5vIHBhY2tmaWxlIG5hbWUgZ2l2ZW4iCiBtc2dzdHIgIi0tdmVyaWZ5IG5vIHJlY2liacOzIG5pbmfDum4gbm9tYnJlIGRlIGFyY2hpdm8gZGUgcGFxdWV0ZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTgwMyBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTgwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxODM3IGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1ODIKIG1zZ2lkICJmc2NrIGVycm9yIGluIHBhY2sgb2JqZWN0cyIKIG1zZ3N0ciAiZXJyb3IgZGUgZnNjayBlbiBvYmpldG9zIHBhcXVldGUiCiAKQEAgLTEyMTEwLDQyICsxNTIyOSw0MiBAQAogbXNnaWQgIm5vdCBjb3B5aW5nIHRlbXBsYXRlcyBmcm9tICclcyc6ICVzIgogbXNnc3RyICJubyBzZSBjb3BpYW4gdGVtcGxhdGVzIGRlICclcyc6ICVzIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzozMjkKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gaGFuZGxlIGZpbGUgdHlwZSAlZCIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBtYW5lamFyIGVsIHRpcG8gZGUgYXJjaGl2byAlZCIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6MzMyCisjOiBidWlsdGluL2luaXQtZGIuYzozMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG1vdmUgJXMgdG8gJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIG1vdmVyICVzIGEgJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjM0OSBidWlsdGluL2luaXQtZGIuYzozNTIKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjM1NCBidWlsdGluL2luaXQtZGIuYzozNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIiVzIHlhIGV4aXN0ZSIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDA1CisjOiBidWlsdGluL2luaXQtZGIuYzo0MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVpbml0aWFsaXplZCBleGlzdGluZyBzaGFyZWQgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgogbXNnc3RyICJSZWluaWNpYWxpemFkbyBlbCByZXBvc2l0b3JpbyBHaXQgY29tcGFydGlkbyBleGlzdGVudGUgZW4gJXMlc1xuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MDYKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWluaXRpYWxpemVkIGV4aXN0aW5nIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAiUmVpbmljaWFsaXphZG8gZWwgcmVwb3NpdG9yaW8gR2l0IGV4aXN0ZW50ZSBlbiAlcyVzXG4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMAorIzogYnVpbHRpbi9pbml0LWRiLmM6NDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkluaXRpYWxpemVkIGVtcHR5IHNoYXJlZCBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgIkluaWNpYWxpemFkbyByZXBvc2l0b3JpbyBHaXQgY29tcGFydGlkbyB2YWPDrW8gZW4gJXMlc1xuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MTEKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxOQogIywgYy1mb3JtYXQKIG1zZ2lkICJJbml0aWFsaXplZCBlbXB0eSBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgIkluaWNpYWxpemFkbyByZXBvc2l0b3JpbyBHaXQgdmFjw61vIGVuICVzJXNcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDYwCisjOiBidWlsdGluL2luaXQtZGIuYzo0NjgKIG1zZ2lkICIiCiAiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU9PHRlbXBsYXRlLWRpcmVjdG9yeT5dIFstLSIKICJzaGFyZWRbPTxwZXJtaXNzaW9ucz5dXSBbPGRpcmVjdG9yeT5dIgpAQCAtMTIxNTMsMjYgKzE1MjcyLDI2IEBACiAiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU9PGRpcmVjdG9yaW8tdGVtcGxhdGU+XSBbLS0iCiAic2hhcmVkWz08cGVybWlzb3M+XV0gWzxkaXJlY3RvcmlvPl0iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4MworIzogYnVpbHRpbi9pbml0LWRiLmM6NDkxCiBtc2dpZCAicGVybWlzc2lvbnMiCiBtc2dzdHIgInBlcm1pc29zIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0ODQKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MgogbXNnaWQgInNwZWNpZnkgdGhhdCB0aGUgZ2l0IHJlcG9zaXRvcnkgaXMgdG8gYmUgc2hhcmVkIGFtb25nc3Qgc2V2ZXJhbCB1c2VycyIKIG1zZ3N0ciAiIgogImVzcGVjaWZpY2EgcXVlIGVsIHJlcG9zaXRvcmlvIGRlIGdpdCBzZXLDoSBjb21wYXJ0aWRvIGVudHJlIHZhcmlvcyB1c3VhcmlvcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTE4IGJ1aWx0aW4vaW5pdC1kYi5jOjUyMworIzogYnVpbHRpbi9pbml0LWRiLmM6NTI5IGJ1aWx0aW4vaW5pdC1kYi5jOjUzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgbWtkaXIgJXMiCiBtc2dzdHIgIm5vIHNlIHB1ZGUgY3JlYXIgZGlyZWN0b3JpbyAlcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTI3CisjOiBidWlsdGluL2luaXQtZGIuYzo1MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoZGlyIHRvICVzIgogbXNnc3RyICJubyBzZSBwdWVkZSBhcGxpY2FyIGNoZGlyIGEgJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU0OAorIzogYnVpbHRpbi9pbml0LWRiLmM6NTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIlcyAob3IgLS13b3JrLXRyZWU9PGRpcmVjdG9yeT4pIG5vdCBhbGxvd2VkIHdpdGhvdXQgc3BlY2lmeWluZyAlcyAob3IgLS1naXQtIgpAQCAtMTIxODEsMTIgKzE1MzAwLDEyIEBACiAiJXMgKG8gLS13b3JrLXRyZWU9PGRpcmVjdG9yaW8+KSBubyBzZSBwZXJtaXRlIHNpbiBlc3BlY2lmaWNhciAlcyAobyAtLWdpdC0iCiAiZGlyPTxkaXJlY3RvcmlvPikiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU3NgorIzogYnVpbHRpbi9pbml0LWRiLmM6NTg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBhY2Nlc3Mgd29yayB0cmVlICclcyciCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIGFjY2VkZXIgYWwgw6FyYm9sIGRlIHRyYWJham8gJyVzJyIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxNQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxNgogbXNnaWQgIiIKICJnaXQgaW50ZXJwcmV0LXRyYWlsZXJzIFstLWluLXBsYWNlXSBbLS10cmltLWVtcHR5XSBbKC0tdHJhaWxlciAiCiAiPHRva2VuPlsoPXw6KTx2YWx1ZT5dKS4uLl0gWzxmaWxlPi4uLl0iCkBAIC0xMjE5NCw0NjEgKzE1MzEzLDQ2OCBAQAogImdpdCBpbnRlcnByZXQtdHJhaWxlcnMgWy0taW4tcGxhY2VdIFstLXRyaW0tZW1wdHldIFsoLS10cmFpbGVyICIKICI8dG9rZW4+Wyg9fDopPHZhbG9yPl0pLi4uXSBbPGFyY2hpdm8+Li4uXSIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NQogbXNnaWQgImVkaXQgZmlsZXMgaW4gcGxhY2UiCiBtc2dzdHIgImVkaXRhciBhcmNoaXZvcyBlbiBlbCBsdWdhciIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NgogbXNnaWQgInRyaW0gZW1wdHkgdHJhaWxlcnMiCiBtc2dzdHIgImNvcnRhciB0cmFpbGVycyB2YWPDrW9zIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk4CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk5CiBtc2dpZCAid2hlcmUgdG8gcGxhY2UgdGhlIG5ldyB0cmFpbGVyIgogbXNnc3RyICJkb25kZSBjb2xvY2FyIGVsIG51ZXZvIHRyYWlsZXIiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMQogbXNnaWQgImFjdGlvbiBpZiB0cmFpbGVyIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICJhY2Npw7NuIGlmIHRyYWlsZXIgeWEgZXhpc3RlIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMgorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDMKIG1zZ2lkICJhY3Rpb24gaWYgdHJhaWxlciBpcyBtaXNzaW5nIgogbXNnc3RyICJhY2Npw7NuIHNpIGZhbHRhIGVsIHRyYWlsZXIiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA0CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNQogbXNnaWQgIm91dHB1dCBvbmx5IHRoZSB0cmFpbGVycyIKIG1zZ3N0ciAibW9zdHJhciBzb2xvIGxvcyB0cmFpbGVycyIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDUKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA2CiBtc2dpZCAiZG8gbm90IGFwcGx5IGNvbmZpZyBydWxlcyIKIG1zZ3N0ciAibm8gYXBsaWNhciByZWdsYXMgZGUgY29uZmlndXJhY2nDs24iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA2CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNwogbXNnaWQgImpvaW4gd2hpdGVzcGFjZS1jb250aW51ZWQgdmFsdWVzIgogbXNnc3RyICJqdW50YXIgdmFsb3JlcyBjb24gZXNwYWNpb3MgZW4gYmxhbmNvIGNvbnRpZ3VvcyIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDcKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA4CiBtc2dpZCAic2V0IHBhcnNpbmcgb3B0aW9ucyIKIG1zZ3N0ciAiY29uZmlndXJhciBvcGNpb25lcyBkZSBhbsOhbGlzaXMiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA5CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMAogbXNnaWQgImRvIG5vdCB0cmVhdCAtLS0gc3BlY2lhbGx5IgogbXNnc3RyICJubyB0cmF0YXIgLS0tIGVzcGVjaWFsbWVudGUiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMQogbXNnaWQgInRyYWlsZXIiCiBtc2dzdHIgInRyYWlsZXIiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTExCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMgogbXNnaWQgInRyYWlsZXIocykgdG8gYWRkIgogbXNnc3RyICJ0cmFpbGVyKHMpIHBhcmEgYWdyZWdhciIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMjAKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTIzCiBtc2dpZCAiLS10cmFpbGVyIHdpdGggLS1vbmx5LWlucHV0IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tdHJhaWxlciBjb24gLS1vbmx5LWlucHV0IG5vIHRpZW5lIHNlbnRpZG8iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTMwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEzMwogbXNnaWQgIm5vIGlucHV0IGZpbGUgZ2l2ZW4gZm9yIGluLXBsYWNlIGVkaXRpbmciCiBtc2dzdHIgIm5vIHNlIGVudHJlZ8OzIGFyY2hpdm8gZGUgZW50cmFkYSBwYXJhIGVkaWNpw7NuIGVuIGx1Z2FyIgogCi0jOiBidWlsdGluL2xvZy5jOjU0CisjOiBidWlsdGluL2xvZy5jOjU2CiBtc2dpZCAiZ2l0IGxvZyBbPG9wdGlvbnM+XSBbPHJldmlzaW9uLXJhbmdlPl0gW1stLV0gPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IGxvZyBbPG9wY2lvbmVzPl0gWzxyYW5nby1kZS1yZXZpc2nDs24+XSBbWy0tXSA8cnV0YT4uLi5dIgogCi0jOiBidWlsdGluL2xvZy5jOjU1CisjOiBidWlsdGluL2xvZy5jOjU3CiBtc2dpZCAiZ2l0IHNob3cgWzxvcHRpb25zPl0gPG9iamVjdD4uLi4iCiBtc2dzdHIgImdpdCBzaG93IFs8b3BjaW9uZXM+XSA8b2JqZXRvPi4uLiIKIAotIzogYnVpbHRpbi9sb2cuYzo5OQorIzogYnVpbHRpbi9sb2cuYzoxMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCAtLWRlY29yYXRlIG9wdGlvbjogJXMiCiBtc2dzdHIgIm9wY2nDs24gLS1kZWNvcmF0ZSBpbnbDoWxpZGE6ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjE2MgotbXNnaWQgInN1cHByZXNzIGRpZmYgb3V0cHV0IgotbXNnc3RyICJzdXByaW1pciBzYWxpZGEgZGUgZGlmZiIKLQotIzogYnVpbHRpbi9sb2cuYzoxNjMKKyM6IGJ1aWx0aW4vbG9nLmM6MTc0CiBtc2dpZCAic2hvdyBzb3VyY2UiCiBtc2dzdHIgIm1vc3RyYXIgZnVlbnRlIgogCi0jOiBidWlsdGluL2xvZy5jOjE2NAorIzogYnVpbHRpbi9sb2cuYzoxNzUKIG1zZ2lkICJVc2UgbWFpbCBtYXAgZmlsZSIKIG1zZ3N0ciAiVXNhciBhcmNoaXZvIGRlIG1hcGEgZGUgbWFpbCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjYKKyM6IGJ1aWx0aW4vbG9nLmM6MTc3CiBtc2dpZCAib25seSBkZWNvcmF0ZSByZWZzIHRoYXQgbWF0Y2ggPHBhdHRlcm4+IgogbXNnc3RyICJzb2xvIGRlY29yYXIgcmVmcyBxdWUgY29uY3VlcmRlbiBjb24gPHBhdHLDs24+IgogCi0jOiBidWlsdGluL2xvZy5jOjE2OAorIzogYnVpbHRpbi9sb2cuYzoxNzkKIG1zZ2lkICJkbyBub3QgZGVjb3JhdGUgcmVmcyB0aGF0IG1hdGNoIDxwYXR0ZXJuPiIKIG1zZ3N0ciAibm8gZGVjb3JhciByZWZzIHF1ZSBjb25jdWVyZGVuIGNvbiA8cGF0csOzbj4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5CisjOiBidWlsdGluL2xvZy5jOjE4MAogbXNnaWQgImRlY29yYXRlIG9wdGlvbnMiCiBtc2dzdHIgIm9wY2lvbmVzIGRlIGRlY29yYWRvIgogCi0jOiBidWlsdGluL2xvZy5jOjE3MgorIzogYnVpbHRpbi9sb2cuYzoxODMKIG1zZ2lkICJQcm9jZXNzIGxpbmUgcmFuZ2UgbixtIGluIGZpbGUsIGNvdW50aW5nIGZyb20gMSIKIG1zZ3N0ciAiUHJvY2VzYXIgcmFuZ28gZGUgbMOtbmVhcyBuLG0gZW4gYXJjaGl2bywgY29udGFuZG8gZGVzZGUgMSIKIAotIzogYnVpbHRpbi9sb2cuYzoyNzAKKyM6IGJ1aWx0aW4vbG9nLmM6MjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZpbmFsIG91dHB1dDogJWQgJXNcbiIKIG1zZ3N0ciAiU2FsaWRhIGZpbmFsOiAlZCAlc1xuIgogCi0jOiBidWlsdGluL2xvZy5jOjUyMgorIzogYnVpbHRpbi9sb2cuYzo1MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IHNob3cgJXM6IGJhZCBmaWxlIgogbXNnc3RyICJnaXQgc2hvdyAlczogbWFsIGFyY2hpdm8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTM3IGJ1aWx0aW4vbG9nLmM6NjMxCisjOiBidWlsdGluL2xvZy5jOjU1MCBidWlsdGluL2xvZy5jOjY0NQogIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgcmVhZCBvYmplY3QgJXMiCi1tc2dzdHIgIk5vIHNlIHB1ZG8gbGVlciBvYmpldG8gJXMiCittc2dpZCAiY291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgorbXNnc3RyICJubyBzZSBwdWRvIGxlZXIgb2JqZXRvICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjY1NQorIzogYnVpbHRpbi9sb2cuYzo2NzAKICMsIGMtZm9ybWF0Ci1tc2dpZCAiVW5rbm93biB0eXBlOiAlZCIKLW1zZ3N0ciAiVGlwbyBkZXNjb25vY2lkbzogJWQiCittc2dpZCAidW5rbm93biB0eXBlOiAlZCIKK21zZ3N0ciAidGlwbyBkZXNjb25vY2lkbzogJWQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6Nzc2CisjOiBidWlsdGluL2xvZy5jOjgxNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCBjb3ZlciBmcm9tIGRlc2NyaXB0aW9uIG1vZGUiCittc2dzdHIgIiVzOiBtb2RvIGNvdmVyIGZyb20gZGVzY3JpcHRpb24gaW52w6FsaWRvIgorCisjOiBidWlsdGluL2xvZy5jOjgyMQogbXNnaWQgImZvcm1hdC5oZWFkZXJzIHdpdGhvdXQgdmFsdWUiCiBtc2dzdHIgImZvcm1hdGUuaGVhZGVycy4gc2luIHZhbG9yIgogCi0jOiBidWlsdGluL2xvZy5jOjg3NworIzogYnVpbHRpbi9sb2cuYzo5MzYKIG1zZ2lkICJuYW1lIG9mIG91dHB1dCBkaXJlY3RvcnkgaXMgdG9vIGxvbmciCiBtc2dzdHIgIm5vbWJyZSBkZWwgZGlyZWN0b3JpbyBkZSBzYWxpZGEgZXMgbXV5IGxhcmdvIgogCi0jOiBidWlsdGluL2xvZy5jOjg5MworIzogYnVpbHRpbi9sb2cuYzo5NTIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ2Fubm90IG9wZW4gcGF0Y2ggZmlsZSAlcyIKLW1zZ3N0ciAiTm8gc2UgcHVlZGUgYWJyaXIgYXJjaGl2byBwYXRjaCAlcyIKK21zZ2lkICJjYW5ub3Qgb3BlbiBwYXRjaCBmaWxlICVzIgorbXNnc3RyICJubyBzZSBwdWVkZSBhYnJpciBhcmNoaXZvIHBhdGNoICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjkxMAotbXNnaWQgIk5lZWQgZXhhY3RseSBvbmUgcmFuZ2UuIgotbXNnc3RyICJFeGFjdGFtZW50ZSB1biByYW5nbyBuZWNlc2FyaW8uIgorIzogYnVpbHRpbi9sb2cuYzo5NjkKK21zZ2lkICJuZWVkIGV4YWN0bHkgb25lIHJhbmdlIgorbXNnc3RyICJuZWNlc2l0YSBleGFjdGFtZW50ZSB1biByYW5nbyIKIAotIzogYnVpbHRpbi9sb2cuYzo5MjAKLW1zZ2lkICJOb3QgYSByYW5nZS4iCi1tc2dzdHIgIk5vIGVzIHVuIHJhbmdvLiIKKyM6IGJ1aWx0aW4vbG9nLmM6OTc5Cittc2dpZCAibm90IGEgcmFuZ2UiCittc2dzdHIgIm5vIGVzIHVuIHJhbmdvIgogCi0jOiBidWlsdGluL2xvZy5jOjEwNDMKLW1zZ2lkICJDb3ZlciBsZXR0ZXIgbmVlZHMgZW1haWwgZm9ybWF0IgotbXNnc3RyICJMZXRyYXMgZGUgcG9ydGFkYSBuZWNlc2l0YSBmb3JtYXRvIGVtYWlsIgorIzogYnVpbHRpbi9sb2cuYzoxMTQzCittc2dpZCAiY292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKK21zZ3N0ciAibGV0cmFzIGRlIHBvcnRhZGEgbmVjZXNpdGEgZm9ybWF0byBlbWFpbCIKIAotIzogYnVpbHRpbi9sb2cuYzoxMTE5CisjOiBidWlsdGluL2xvZy5jOjExNDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGNvdmVyLWxldHRlciBmaWxlIgorbXNnc3RyICJmYWxsw7MgYWwgY3JlYXIgbG9zIGFyY2hpdm9zIGNvdmVyLWxldHRlciIKKworIzogYnVpbHRpbi9sb2cuYzoxMjI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImluc2FuZSBpbi1yZXBseS10bzogJXMiCiBtc2dzdHIgImluc2FubyBpbi1yZXBseS10bzogJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTE0NgorIzogYnVpbHRpbi9sb2cuYzoxMjU1CiBtc2dpZCAiZ2l0IGZvcm1hdC1wYXRjaCBbPG9wdGlvbnM+XSBbPHNpbmNlPiB8IDxyZXZpc2lvbi1yYW5nZT5dIgogbXNnc3RyICJnaXQgZm9ybWF0LXBhdGNoIFs8b3BjaW9uZXM+XSBbPGRlc2RlPiB8IDxyYW5nby1kZS1yZXZpc2lvbmVzPl0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTIwNAotbXNnaWQgIlR3byBvdXRwdXQgZGlyZWN0b3JpZXM/IgotbXNnc3RyICJEb3MgZGlyZWN0b3Jpb3MgZGUgc2FsaWRhPyIKKyM6IGJ1aWx0aW4vbG9nLmM6MTMxMworbXNnaWQgInR3byBvdXRwdXQgZGlyZWN0b3JpZXM/IgorbXNnc3RyICLCv2RvcyBkaXJlY3RvcmlvcyBkZSBzYWxpZGE/IgogCi0jOiBidWlsdGluL2xvZy5jOjEzMTEgYnVpbHRpbi9sb2cuYzoyMDU0IGJ1aWx0aW4vbG9nLmM6MjA1NiBidWlsdGluL2xvZy5jOjIwNjgKKyM6IGJ1aWx0aW4vbG9nLmM6MTQyNCBidWlsdGluL2xvZy5jOjIxOTcgYnVpbHRpbi9sb2cuYzoyMTk5IGJ1aWx0aW4vbG9nLmM6MjIxMQogIywgYy1mb3JtYXQKLW1zZ2lkICJVbmtub3duIGNvbW1pdCAlcyIKLW1zZ3N0ciAiQ29tbWl0IGRlc2Nvbm9jaWRvICVzIgorbXNnaWQgInVua25vd24gY29tbWl0ICVzIgorbXNnc3RyICJjb21taXQgZGVzY29ub2NpZG8gJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTMyMSBidWlsdGluL25vdGVzLmM6ODk0IGJ1aWx0aW4vdGFnLmM6NTI2CisjOiBidWlsdGluL2xvZy5jOjE0MzQgYnVpbHRpbi9yZXBsYWNlLmM6NTggYnVpbHRpbi9yZXBsYWNlLmM6MjA3CisjOiBidWlsdGluL3JlcGxhY2UuYzoyMTAKICMsIGMtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZi4iCi1tc2dzdHIgIkZhbGzDsyBhbCByZXNvbHZlciAnJXMnIGNvbW8gdW5hIHJlZiB2w6FsaWRhLiIKK21zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmIgorbXNnc3RyICJmYWxsw7MgYWwgcmVzb2x2ZXIgJyVzJyBjb21vIHJlZiB2w6FsaWRhIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMjYKLW1zZ2lkICJDb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlLiIKLW1zZ3N0ciAiTm8gc2UgcHVkbyBlbmNvbnRyYXIgdW5hIGJhc2UgZGUgZnVzacOzbi4iCisjOiBidWlsdGluL2xvZy5jOjE0MzkKK21zZ2lkICJjb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlIgorbXNnc3RyICJubyBzZSBwdWRvIGVuY29udHJhciB1bmEgYmFzZSBkZSBmdXNpw7NuIGV4YWN0YSIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzMwCisjOiBidWlsdGluL2xvZy5jOjE0NDMKIG1zZ2lkICIiCi0iRmFpbGVkIHRvIGdldCB1cHN0cmVhbSwgaWYgeW91IHdhbnQgdG8gcmVjb3JkIGJhc2UgY29tbWl0IGF1dG9tYXRpY2FsbHksXG4iCisiZmFpbGVkIHRvIGdldCB1cHN0cmVhbSwgaWYgeW91IHdhbnQgdG8gcmVjb3JkIGJhc2UgY29tbWl0IGF1dG9tYXRpY2FsbHksXG4iCiAicGxlYXNlIHVzZSBnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvIHRvIHRyYWNrIGEgcmVtb3RlIGJyYW5jaC5cbiIKLSJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseS4iCisiT3IgeW91IGNvdWxkIHNwZWNpZnkgYmFzZSBjb21taXQgYnkgLS1iYXNlPTxiYXNlLWNvbW1pdC1pZD4gbWFudWFsbHkiCiBtc2dzdHIgIiIKLSJGYWxsw7MgYWwgY29uc2VndWlyIHVwc3RyZWFtLCBzaSBxdWllcmUgZ3JhYmFyIHVuIGNvbW1pdCBiYXNlIGRlIG1hbmVyYSAiCisiZmFsbMOzIGFsIGNvbnNlZ3VpciB1cHN0cmVhbSwgc2kgcXVpZXJlcyBncmFiYXIgdW4gY29tbWl0IGJhc2UgZGUgbWFuZXJhICIKICJhdXRvbcOhdGljYSxcbiIKLSJwb3IgZmF2b3IgdXNlIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG8gcGFyYSByYXN0cmVhciB1bmEgcmFtYSByZW1vdGEuXG4iCi0iTyBwdWVkZSBlc3BlY2lmaWNhciB1biBjb21taXQgYmFzZSBtZWRpYW50ZSAtLWJhc2U9PGlkLWNvbW1pdC1iYXNlPiAiCi0ibWFudWFsbWVudGUuIgorInBvciBmYXZvciB1c2EgZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10byBwYXJhIHJhc3RyZWFyIHVuYSByYW1hIHJlbW90YS5cbiIKKyJPIHB1ZWRlcyBlc3BlY2lmaWNhciB1biBjb21taXQgYmFzZSBtZWRpYW50ZSAtLWJhc2U9PGlkLWNvbW1pdC1iYXNlPiAiCisibWFudWFsbWVudGUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTM1MAotbXNnaWQgIkZhaWxlZCB0byBmaW5kIGV4YWN0IG1lcmdlIGJhc2UiCi1tc2dzdHIgIkZhbGzDsyBhbCBlbmNvbnRyYXIgdW5hIGJhc2UgZGUgZnVzacOzbiBleGFjdGEiCisjOiBidWlsdGluL2xvZy5jOjE0NjMKK21zZ2lkICJmYWlsZWQgdG8gZmluZCBleGFjdCBtZXJnZSBiYXNlIgorbXNnc3RyICJmYWxsw7MgYWwgZW5jb250cmFyIHVuYSBiYXNlIGRlIGZ1c2nDs24gZXhhY3RhIgogCi0jOiBidWlsdGluL2xvZy5jOjEzNjEKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ3NAogbXNnaWQgImJhc2UgY29tbWl0IHNob3VsZCBiZSB0aGUgYW5jZXN0b3Igb2YgcmV2aXNpb24gbGlzdCIKIG1zZ3N0ciAiZWwgY29tbWl0IGJhc2UgZGViZSBzZXIgZWwgYW5jZXN0cm8gZGUgbGEgbGlzdGEgZGUgcmV2aXNpw7NuIgogCi0jOiBidWlsdGluL2xvZy5jOjEzNjUKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ3OAogbXNnaWQgImJhc2UgY29tbWl0IHNob3VsZG4ndCBiZSBpbiByZXZpc2lvbiBsaXN0IgogbXNnc3RyICJlbCBjb21taXQgYmFzZSBubyBkZWJlIGVzdGFyIGVuIGxhIGxpc3RhIGRlIHJldmlzacOzbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDE4CisjOiBidWlsdGluL2xvZy5jOjE1MzEKIG1zZ2lkICJjYW5ub3QgZ2V0IHBhdGNoIGlkIgogbXNnc3RyICJubyBzZSBwdWVkZSBvYnRlbmVyIGlkIGRlIHBhdGNoIgogCi0jOiBidWlsdGluL2xvZy5jOjE0NzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTU4MwogbXNnaWQgImZhaWxlZCB0byBpbmZlciByYW5nZS1kaWZmIHJhbmdlcyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGluZmVyaXIgcmFuZ29zIHJhbmdlLWRpZmYiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUxNQorIzogYnVpbHRpbi9sb2cuYzoxNjI5CiBtc2dpZCAidXNlIFtQQVRDSCBuL21dIGV2ZW4gd2l0aCBhIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAidXNlIFtQQVRDSCBuL21dIGluY2x1c28gY29uIHVuIMO6bmljbyBwYXJjaGUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUxOAorIzogYnVpbHRpbi9sb2cuYzoxNjMyCiBtc2dpZCAidXNlIFtQQVRDSF0gZXZlbiB3aXRoIG11bHRpcGxlIHBhdGNoZXMiCiBtc2dzdHIgInVzZSBbUEFUQ0hdIGluY2x1c28gY29uIG3Dumx0aXBsZXMgcGFyY2hlcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTIyCisjOiBidWlsdGluL2xvZy5jOjE2MzYKIG1zZ2lkICJwcmludCBwYXRjaGVzIHRvIHN0YW5kYXJkIG91dCIKIG1zZ3N0ciAibW9zdHJhciBwYXJjaGVzIGVuIHN0YW5kYXJkIG91dCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI0CisjOiBidWlsdGluL2xvZy5jOjE2MzgKIG1zZ2lkICJnZW5lcmF0ZSBhIGNvdmVyIGxldHRlciIKIG1zZ3N0ciAiZ2VuZXJhciBsZXRyYSBkZSBjb3ZlciIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI2CisjOiBidWlsdGluL2xvZy5jOjE2NDAKIG1zZ2lkICJ1c2Ugc2ltcGxlIG51bWJlciBzZXF1ZW5jZSBmb3Igb3V0cHV0IGZpbGUgbmFtZXMiCiBtc2dzdHIgIiIKICJ1c2FyIHVuYSBzZWN1ZW5jaWEgc2ltcGxlIGRlIG7Dum1lcm9zIHBhcmEgc2FsaWRhIGRlIG5vbWJyZXMgZGUgYXJjaGl2b3MiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyNworIzogYnVpbHRpbi9sb2cuYzoxNjQxCiBtc2dpZCAic2Z4IgogbXNnc3RyICJzZngiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyOAorIzogYnVpbHRpbi9sb2cuYzoxNjQyCiBtc2dpZCAidXNlIDxzZng+IGluc3RlYWQgb2YgJy5wYXRjaCciCiBtc2dzdHIgInVzZSA8c2Z4PiBlbiBsdWdhciBkZSAnLnBhdGNoJyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTMwCisjOiBidWlsdGluL2xvZy5jOjE2NDQKIG1zZ2lkICJzdGFydCBudW1iZXJpbmcgcGF0Y2hlcyBhdCA8bj4gaW5zdGVhZCBvZiAxIgogbXNnc3RyICJjb21lbnphciBhIG51bWVyYXIgbG9zIHBhcmNoZXMgZGVzZGUgPG4+IGVuIGx1Z2FyIGRlIDEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzMgorIzogYnVpbHRpbi9sb2cuYzoxNjQ2CiBtc2dpZCAibWFyayB0aGUgc2VyaWVzIGFzIE50aCByZS1yb2xsIgogbXNnc3RyICJtYXJjYXIgbGFzIHNlcmllcyBjb21vIE50aCByZS1yb2xsIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzQKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0OAogbXNnaWQgIlVzZSBbUkZDIFBBVENIXSBpbnN0ZWFkIG9mIFtQQVRDSF0iCiBtc2dzdHIgIlVzZSBbUkZDIFBBVENIXSBlbiBsdWdhciBkZSBbUEFUQ0hdIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1MQorbXNnaWQgImNvdmVyLWZyb20tZGVzY3JpcHRpb24tbW9kZSIKK21zZ3N0ciAibW9kby1jb3Zlci1mcm9tLWRlc2NyaXB0aW9uIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTIKK21zZ2lkICJnZW5lcmF0ZSBwYXJ0cyBvZiBhIGNvdmVyIGxldHRlciBiYXNlZCBvbiBhIGJyYW5jaCdzIGRlc2NyaXB0aW9uIgorbXNnc3RyICIiCisiZ2VuZXJhIHBhcnRlcyBkZSB1bmEgY2FydGEgZGUgcHJlc2VudGFjacOzbiBiYXNhZG8gZW4gbGEgZGVzY3JpcGNpw7NuIGRlIGxhICIKKyJyYW1hIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTQKIG1zZ2lkICJVc2UgWzxwcmVmaXg+XSBpbnN0ZWFkIG9mIFtQQVRDSF0iCiBtc2dzdHIgIlVzZSBbPHByZWZpam8+XSBlbiBsdWdhciBkZSBbUEFUQ0hdIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1NwogbXNnaWQgInN0b3JlIHJlc3VsdGluZyBmaWxlcyBpbiA8ZGlyPiIKIG1zZ3N0ciAiZ3VhcmRhciBhcmNoaXZvcyByZXN1bHRhbnRlcyBlbiA8ZGlyPiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTQzCisjOiBidWlsdGluL2xvZy5jOjE2NjAKIG1zZ2lkICJkb24ndCBzdHJpcC9hZGQgW1BBVENIXSIKIG1zZ3N0ciAibm8gY29ydGFyL2FncmVnYXIgW1BBVENIXSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTQ2CisjOiBidWlsdGluL2xvZy5jOjE2NjMKIG1zZ2lkICJkb24ndCBvdXRwdXQgYmluYXJ5IGRpZmZzIgogbXNnc3RyICJubyBtb3N0cmFyIGRpZmZzIGJpbmFyaW9zIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDgKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2NQogbXNnaWQgIm91dHB1dCBhbGwtemVybyBoYXNoIGluIEZyb20gaGVhZGVyIgogbXNnc3RyICJzYWxpZGEgY29tbyBoYXNoIGRlIHRvZG9zLWNlcm9zIGVuIGxhIGNhYmVjZXJhIEZyb20iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1MAorIzogYnVpbHRpbi9sb2cuYzoxNjY3CiBtc2dpZCAiZG9uJ3QgaW5jbHVkZSBhIHBhdGNoIG1hdGNoaW5nIGEgY29tbWl0IHVwc3RyZWFtIgogbXNnc3RyICJubyBpbmNsdXlhIHVuIHBhcmNoZSBxdWUgY29pbmNpZGEgY29uIHVuIGNvbW1pdCBlbiB1cHN0cmVhbSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTUyCisjOiBidWlsdGluL2xvZy5jOjE2NjkKIG1zZ2lkICJzaG93IHBhdGNoIGZvcm1hdCBpbnN0ZWFkIG9mIGRlZmF1bHQgKHBhdGNoICsgc3RhdCkiCiBtc2dzdHIgIm1vc3RyYXIgZm9ybWF0byBkZSBwYXJjaGUgZW4gbHVnYXIgZGVsIGRlZmF1bHQgKHBhcmNoZSArIHN0YXQpIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTQKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MQogbXNnaWQgIk1lc3NhZ2luZyIKIG1zZ3N0ciAiTWVuc2FqZWFuZG8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NQorIzogYnVpbHRpbi9sb2cuYzoxNjcyCiBtc2dpZCAiaGVhZGVyIgogbXNnc3RyICJjYWJlemFsIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTYKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MwogbXNnaWQgImFkZCBlbWFpbCBoZWFkZXIiCiBtc2dzdHIgImFncmVnYXIgY2FiZWNlcmEgZW1haWwiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NyBidWlsdGluL2xvZy5jOjE1NTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3NCBidWlsdGluL2xvZy5jOjE2NzYKIG1zZ2lkICJlbWFpbCIKIG1zZ3N0ciAiZW1haWwiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NworIzogYnVpbHRpbi9sb2cuYzoxNjc0CiBtc2dpZCAiYWRkIFRvOiBoZWFkZXIiCiBtc2dzdHIgImFncmVnYXIgY2FiZWNlcmEgVG86IgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3NgogbXNnaWQgImFkZCBDYzogaGVhZGVyIgogbXNnc3RyICJhZ3JlZ2FyIGNhYmVjZXJhIENjOiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTYxCisjOiBidWlsdGluL2xvZy5jOjE2NzgKIG1zZ2lkICJpZGVudCIKIG1zZ3N0ciAiaWRlbnQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2MgorIzogYnVpbHRpbi9sb2cuYzoxNjc5CiBtc2dpZCAic2V0IEZyb20gYWRkcmVzcyB0byA8aWRlbnQ+IChvciBjb21taXR0ZXIgaWRlbnQgaWYgYWJzZW50KSIKIG1zZ3N0ciAiIgogImNvbmZpZ3VyYXIgZGlyZWNjacOzbiBGcm9tIGEgPGlkZW50PiAoIG8gaWRlbnRpZGFkIGRlIGNvbW1pdHRlciBzaSBlc3TDoSAiCiAiYXVzZW50ZSkiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NAorIzogYnVpbHRpbi9sb2cuYzoxNjgxCiBtc2dpZCAibWVzc2FnZS1pZCIKIG1zZ3N0ciAiaWQgZGUgbWVuc2FqZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTY1CisjOiBidWlsdGluL2xvZy5jOjE2ODIKIG1zZ2lkICJtYWtlIGZpcnN0IG1haWwgYSByZXBseSB0byA8bWVzc2FnZS1pZD4iCiBtc2dzdHIgImhhY2VyIHByaW1lciBtYWlsIHVuYSByZXNwdWVzdGEgYSA8aWQgZGUgbWVuc2FqZT4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NiBidWlsdGluL2xvZy5jOjE1NjkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4MyBidWlsdGluL2xvZy5jOjE2ODYKIG1zZ2lkICJib3VuZGFyeSIKIG1zZ3N0ciAibMOtbWl0ZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTY3CisjOiBidWlsdGluL2xvZy5jOjE2ODQKIG1zZ2lkICJhdHRhY2ggdGhlIHBhdGNoIgogbXNnc3RyICJhZGp1bnRhciBlbCBwYXJjaGUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3MAorIzogYnVpbHRpbi9sb2cuYzoxNjg3CiBtc2dpZCAiaW5saW5lIHRoZSBwYXRjaCIKIG1zZ3N0ciAicG9uZXIgZWwgcGFyY2hlIGVuIGzDrW5lYSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc0CisjOiBidWlsdGluL2xvZy5jOjE2OTEKIG1zZ2lkICJlbmFibGUgbWVzc2FnZSB0aHJlYWRpbmcsIHN0eWxlczogc2hhbGxvdywgZGVlcCIKIG1zZ3N0ciAiaGFiaWxpdGFyIGhpbG9zIGRlIG1lbnNhamVzLCBlc3RpbG9zOiBzdXBlcmZpY2lhbCwgcHJvZnVuZG8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3NgorIzogYnVpbHRpbi9sb2cuYzoxNjkzCiBtc2dpZCAic2lnbmF0dXJlIgogbXNnc3RyICJmaXJtYSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc3CisjOiBidWlsdGluL2xvZy5jOjE2OTQKIG1zZ2lkICJhZGQgYSBzaWduYXR1cmUiCiBtc2dzdHIgImFncmVnYXIgdW5hIGZpcm1hIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzgKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5NQogbXNnaWQgImJhc2UtY29tbWl0IgogbXNnc3RyICJjb21taXQtYmFzZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc5CisjOiBidWlsdGluL2xvZy5jOjE2OTYKIG1zZ2lkICJhZGQgcHJlcmVxdWlzaXRlIHRyZWUgaW5mbyB0byB0aGUgcGF0Y2ggc2VyaWVzIgogbXNnc3RyICIiCiAiYWdyZWdhciBpbmZvcm1hY2nDs24gZGUgw6FyYm9sIGRlIHJlcXVpc2l0b3MgcHJldmlvcyBhIGxhIHNlcmllIGRlIHBhcmNoZXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4MQorIzogYnVpbHRpbi9sb2cuYzoxNjk4CiBtc2dpZCAiYWRkIGEgc2lnbmF0dXJlIGZyb20gYSBmaWxlIgogbXNnc3RyICJhZ3JlZ2FyIHVuYSBmaXJtYSBkZSB1biBhcmNoaXZvIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODIKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5OQogbXNnaWQgImRvbid0IHByaW50IHRoZSBwYXRjaCBmaWxlbmFtZXMiCiBtc2dzdHIgIm5vIG1vc3RyYXIgbG9zIG5vbWJyZXMgZGUgYXJjaGl2b3MgZGUgbG9zIHBhcmNoZXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4NAorIzogYnVpbHRpbi9sb2cuYzoxNzAxCiBtc2dpZCAic2hvdyBwcm9ncmVzcyB3aGlsZSBnZW5lcmF0aW5nIHBhdGNoZXMiCiBtc2dzdHIgIm1vc3RyYXIgbWVkaWRvciBkZSBwcm9ncmVzbyBtaWVudHJhcyBzZSBnZW5lcmFuIGxvcyBwYXJjaGVzIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODUKLW1zZ2lkICJyZXYiCi1tc2dzdHIgInJldiIKLQotIzogYnVpbHRpbi9sb2cuYzoxNTg2CisjOiBidWlsdGluL2xvZy5jOjE3MDMKIG1zZ2lkICJzaG93IGNoYW5nZXMgYWdhaW5zdCA8cmV2PiBpbiBjb3ZlciBsZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgogbXNnc3RyICJtdWVzdHJhIGNhbWJpb3MgY29udHJhIDxyZXY+IGVuIGNvdmVyIGxldHRlciBvIGVuIHVuIHNvbG8gcGFyY2hlIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODkKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwNgogbXNnaWQgInNob3cgY2hhbmdlcyBhZ2FpbnN0IDxyZWZzcGVjPiBpbiBjb3ZlciBsZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgogbXNnc3RyICJtdWVzdHJhIGNhbWJpb3MgY29udHJhIDxyZWZzcGVjPiBlbiBjb3ZlciBsZXR0ZXIgbyBlbiB1biBzb2xvIHBhcmNoZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTkxCisjOiBidWlsdGluL2xvZy5jOjE3MDgKIG1zZ2lkICJwZXJjZW50YWdlIGJ5IHdoaWNoIGNyZWF0aW9uIGlzIHdlaWdodGVkIgogbXNnc3RyICJwb3JjZW50YWplIHBvciBlbCBjdWFsIGxhIGNyZWFjacOzbiBlcyBwZXNhZGEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY2NgorIzogYnVpbHRpbi9sb2cuYzoxNzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgaWRlbnQgbGluZTogJXMiCiBtc2dzdHIgImzDrW5lYSBkZSBpZGVudGlmaWNhY2nDs24gaW52w6FsaWRhOiAlcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjgxCisjOiBidWlsdGluL2xvZy5jOjE4MDcKIG1zZ2lkICItbiBhbmQgLWsgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLW4geSAtayBzb24gbXV0dWFtZW50ZSBleGNsdXNpdmFzIgogCi0jOiBidWlsdGluL2xvZy5jOjE2ODMKKyM6IGJ1aWx0aW4vbG9nLmM6MTgwOQogbXNnaWQgIi0tc3ViamVjdC1wcmVmaXgvLS1yZmMgYW5kIC1rIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi0tc3ViamVjdC1wcmVmaXgvLS1yZmMgeSAtayBzb24gbXV0dWFtZW50ZSBleGNsdXNpdm9zIgogCi0jOiBidWlsdGluL2xvZy5jOjE2OTEKKyM6IGJ1aWx0aW4vbG9nLmM6MTgxNwogbXNnaWQgIi0tbmFtZS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tbmFtZS1vbmx5IG5vIHRpZW5lIHNlbnRpZG8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5MworIzogYnVpbHRpbi9sb2cuYzoxODE5CiBtc2dpZCAiLS1uYW1lLXN0YXR1cyBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLW5hbWUtc3RhdHVzIG5vIHRpZW5lIHNlbnRpZG8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5NQorIzogYnVpbHRpbi9sb2cuYzoxODIxCiBtc2dpZCAiLS1jaGVjayBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLWNoZWNrIG5vIHRpZW5lIHNlbnRpZG8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTcyNworIzogYnVpbHRpbi9sb2cuYzoxODU0CiBtc2dpZCAic3RhbmRhcmQgb3V0cHV0LCBvciBkaXJlY3RvcnksIHdoaWNoIG9uZT8iCi1tc2dzdHIgInNhbGlkYSBzdGFuZGFyZCwgbyBkaXJlY3RvcmlvLCBjdWFsPyIKK21zZ3N0ciAiwr9zYWxpZGEgc3RhbmRhcmQsIG8gZGlyZWN0b3JpbywgY3VhbD8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTcyOQotIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgotbXNnc3RyICJObyBzZSBwdWRvIGNyZWFyIGVsIGRpcmVjdG9yaW8gJyVzJyIKLQotIzogYnVpbHRpbi9sb2cuYzoxODE2CisjOiBidWlsdGluL2xvZy5jOjE5NTgKIG1zZ2lkICItLWludGVyZGlmZiByZXF1aXJlcyAtLWNvdmVyLWxldHRlciBvciBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgIi0taW50ZXJkaWZmIHJlcXVpZXJlIC0tY292ZXItbGV0dGVyIG8gdW4gcGFyY2hlIMO6bmljbyIKIAotIzogYnVpbHRpbi9sb2cuYzoxODIwCisjOiBidWlsdGluL2xvZy5jOjE5NjIKIG1zZ2lkICJJbnRlcmRpZmY6IgogbXNnc3RyICJJbnRlcmRpZmY6IgogCi0jOiBidWlsdGluL2xvZy5jOjE4MjEKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnRlcmRpZmYgYWdhaW5zdCB2JWQ6IgogbXNnc3RyICJJbnRlcmRpZmYgY29udHJhIHYlZDoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgyNworIzogYnVpbHRpbi9sb2cuYzoxOTY5CiBtc2dpZCAiLS1jcmVhdGlvbi1mYWN0b3IgcmVxdWlyZXMgLS1yYW5nZS1kaWZmIgogbXNnc3RyICItLWNyZWF0aW9uLWZhY3RvciByZXF1aWVyZSAtLXJhbmdlLWRpZmYiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgzMQorIzogYnVpbHRpbi9sb2cuYzoxOTczCiBtc2dpZCAiLS1yYW5nZS1kaWZmIHJlcXVpcmVzIC0tY292ZXItbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAiLS1yYW5nZS1kaWZmIHJlcXVpZXJlIC0tY292ZXItbGV0dGVyIG8gcGFyY2hlIMO6bmljbyIKIAotIzogYnVpbHRpbi9sb2cuYzoxODM5CisjOiBidWlsdGluL2xvZy5jOjE5ODEKIG1zZ2lkICJSYW5nZS1kaWZmOiIKIG1zZ3N0ciAiUmFuZ2UtZGlmZjoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg0MAorIzogYnVpbHRpbi9sb2cuYzoxOTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJhbmdlLWRpZmYgYWdhaW5zdCB2JWQ6IgogbXNnc3RyICJSYW5nZS1kaWZmIGNvbnRyYSB2JWQ6IgogCi0jOiBidWlsdGluL2xvZy5jOjE4NTEKKyM6IGJ1aWx0aW4vbG9nLmM6MTk5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBzaWduYXR1cmUgZmlsZSAnJXMnIgogbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyIGxhIGZpcm1hIGRlbCBhcmNoaXZvICclcyciCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg4NworIzogYnVpbHRpbi9sb2cuYzoyMDI5CiBtc2dpZCAiR2VuZXJhdGluZyBwYXRjaGVzIgogbXNnc3RyICJHZW5lcmFuZG8gcGFyY2hlcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxOTMxCi1tc2dpZCAiRmFpbGVkIHRvIGNyZWF0ZSBvdXRwdXQgZmlsZXMiCi1tc2dzdHIgIkZhbGzDsyBhbCBjcmVhciBsb3MgYXJjaGl2b3MgZGUgc2FsaWRhIgorIzogYnVpbHRpbi9sb2cuYzoyMDczCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBvdXRwdXQgZmlsZXMiCittc2dzdHIgImZhbGzDsyBhbCBjcmVhciBsb3MgYXJjaGl2b3MgZGUgc2FsaWRhIgogCi0jOiBidWlsdGluL2xvZy5jOjE5ODkKKyM6IGJ1aWx0aW4vbG9nLmM6MjEzMgogbXNnaWQgImdpdCBjaGVycnkgWy12XSBbPHVwc3RyZWFtPiBbPGhlYWQ+IFs8bGltaXQ+XV1dIgogbXNnc3RyICJnaXQgY2hlcnJ5IFstdl0gWzx1cHN0cmVhbT4gWzxoZWFkPiBbPGzDrW1pdGU+XV1dIgogCi0jOiBidWlsdGluL2xvZy5jOjIwNDMKKyM6IGJ1aWx0aW4vbG9nLmM6MjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IGZpbmQgYSB0cmFja2VkIHJlbW90ZSBicmFuY2gsIHBsZWFzZSBzcGVjaWZ5IDx1cHN0cmVhbT4gbWFudWFsbHkuXG4iCkBAIC0xMjY1NiwxMTEgKzE1NzgyLDExMSBAQAogIk5vIHNlIHB1ZG8gZW5jb250cmFyIHVuYSByYW1hIHJlbW90YSByYXN0cmVhZGEsIHBvciBmYXZvciBlc3BlY2lmaXF1ZSAiCiAiPHVwc3RyZWFtPiBtYW51YWxtZW50ZS5cbiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjQ2OQorIzogYnVpbHRpbi9scy1maWxlcy5jOjQ3MAogbXNnaWQgImdpdCBscy1maWxlcyBbPG9wdGlvbnM+XSBbPGZpbGU+Li4uXSIKIG1zZ3N0ciAiZ2l0IGxzLWZpbGVzIFs8b3BjaW9uZXM+XSBbPGFyY2hpdm8+Li4uXSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUyNQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUyNgogbXNnaWQgImlkZW50aWZ5IHRoZSBmaWxlIHN0YXR1cyB3aXRoIHRhZ3MiCiBtc2dzdHIgImlkZW50aWZpcXVlIGVsIGVzdGFkbyBkZWwgYXJjaGl2byBjb24gdGFncyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUyNworIzogYnVpbHRpbi9scy1maWxlcy5jOjUyOAogbXNnaWQgInVzZSBsb3dlcmNhc2UgbGV0dGVycyBmb3IgJ2Fzc3VtZSB1bmNoYW5nZWQnIGZpbGVzIgogbXNnc3RyICJ1c2FyIGxldHJhcyBtaW7DunNjdWxhcyBwYXJhIGFyY2hpdm9zICdhc3VtaWRvcyBzaW4gY2FtYmlvcyciCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzAKIG1zZ2lkICJ1c2UgbG93ZXJjYXNlIGxldHRlcnMgZm9yICdmc21vbml0b3IgY2xlYW4nIGZpbGVzIgogbXNnc3RyICJ1c2FyIGxldHJhcyBtaW7DunNjdWxhcyBwYXJhIGFyY2hpdm9zIGRlICdmc21vbml0b3IgY2xlYW4nIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTMxCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTMyCiBtc2dpZCAic2hvdyBjYWNoZWQgZmlsZXMgaW4gdGhlIG91dHB1dCAoZGVmYXVsdCkiCiBtc2dzdHIgIm1vc3RyYXIgYXJjaGl2b3MgZW4gY2FjaMOpIGVuIGxhIHNhbGlkYSAoZGVmYXVsdCkiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzMKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzQKIG1zZ2lkICJzaG93IGRlbGV0ZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAibW9zdHJhciBhcmNoaXZvcyBib3JyYWRvcyBlbiBsYSBzYWxpZGEiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzYKIG1zZ2lkICJzaG93IG1vZGlmaWVkIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgIm1vc3RyYXIgYXJjaGl2b3MgbW9kaWZpY2Fkb3MgZW4gbGEgc2FsaWRhIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTM3CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTM4CiBtc2dpZCAic2hvdyBvdGhlciBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJtb3N0cmFyIG90cm9zIGFyY2hpdm9zIGVuIGxhIHNhbGlkYSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MAogbXNnaWQgInNob3cgaWdub3JlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJtb3N0cmFyIGFyY2hpdm9zIGlnbm9yYWRvcyBlbiBsYSBzYWxpZGEiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDIKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDMKIG1zZ2lkICJzaG93IHN0YWdlZCBjb250ZW50cycgb2JqZWN0IG5hbWUgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAiIgogIm1vc3RyYXIgY29udGVuaWRvIGRlIG5vbWJyZXMgZGUgb2JqZXRvcyBlbiBlbCDDoXJlYSBkZSBzdGFnZSBlbiBsYSBzYWxpZGEiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDQKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDUKIG1zZ2lkICJzaG93IGZpbGVzIG9uIHRoZSBmaWxlc3lzdGVtIHRoYXQgbmVlZCB0byBiZSByZW1vdmVkIgogbXNnc3RyICJtb3N0cmFyIGFyY2hpdm9zIGVuIGVsIGZpbGVzeXN0ZW0gcXVlIG5lY2VzaXRhbiBzZXIgYm9ycmFkb3MiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDYKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDcKIG1zZ2lkICJzaG93ICdvdGhlcicgZGlyZWN0b3JpZXMnIG5hbWVzIG9ubHkiCiBtc2dzdHIgIm1vc3RyYXIgc29sbyBub21icmVzIGRlICdkaXJlY3RvcmlvcyBvdHJvcyciCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDgKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDkKIG1zZ2lkICJzaG93IGxpbmUgZW5kaW5ncyBvZiBmaWxlcyIKIG1zZ3N0ciAibW9zdHJhciBmaW5hbGVzIGRlIGzDrW5lYSBkZSBhcmNoaXZvcyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1MAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1MQogbXNnaWQgImRvbid0IHNob3cgZW1wdHkgZGlyZWN0b3JpZXMiCiBtc2dzdHIgIm5vIG1vc3RyYXIgZGlyZWN0b3Jpb3MgdmFjw61vcyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1MworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NAogbXNnaWQgInNob3cgdW5tZXJnZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAibW9zdHJhciBhcmNoaXZvcyBubyBmdXNpb25hZG9zIGVuIGxhIHNhbGlkYSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NgogbXNnaWQgInNob3cgcmVzb2x2ZS11bmRvIGluZm9ybWF0aW9uIgogbXNnc3RyICJtb3N0cmFyIGluZm9ybWFjacOzbiByZXNvbHZlci1kZXNoYWNlciIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1OAogbXNnaWQgInNraXAgZmlsZXMgbWF0Y2hpbmcgcGF0dGVybiIKIG1zZ3N0ciAic2FsdGFyIGFyY2hpdm9zIHF1ZSBjb25jdWVyZGVuIGNvbiBlbCBwYXRyw7NuIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTYwCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTYxCiBtc2dpZCAiZXhjbHVkZSBwYXR0ZXJucyBhcmUgcmVhZCBmcm9tIDxmaWxlPiIKIG1zZ3N0ciAiZXhjbHVpciBwYXRyb25lcyBsZcOtZG9zIGRlIDxhcmNoaXZvPiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU2MworIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NAogbXNnaWQgInJlYWQgYWRkaXRpb25hbCBwZXItZGlyZWN0b3J5IGV4Y2x1ZGUgcGF0dGVybnMgaW4gPGZpbGU+IgogbXNnc3RyICIiCiAibGVlciBwYXRyb25lcyBkZSBleGNsdXNpw7NuIGRlIG1hbmVyYSBhZGljaW9uYWwgcG9yIGRpcmVjdG9yaW8gZW4gPGFyY2hpdm8+IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTY1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTY2CiBtc2dpZCAiYWRkIHRoZSBzdGFuZGFyZCBnaXQgZXhjbHVzaW9ucyIKIG1zZ3N0ciAiYWdyZWdhciBsYXMgZXhjbHVzaW9uZXMgc3RhbmRhcmQgZGUgZ2l0IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTY5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTcwCiBtc2dpZCAibWFrZSB0aGUgb3V0cHV0IHJlbGF0aXZlIHRvIHRoZSBwcm9qZWN0IHRvcCBkaXJlY3RvcnkiCiBtc2dzdHIgImhhY2VyIGxhIHNhbGlkYSByZWxhdGl2YSBhbCBkaXJlY3RvcmlvIHByaW5jaXBhbCBkZWwgcHJveWVjdG8iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzIKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzMKIG1zZ2lkICJyZWN1cnNlIHRocm91Z2ggc3VibW9kdWxlcyIKIG1zZ3N0ciAicmVjdXJyaXIgYSB0cmF2w6lzIGRlIHN1Ym3Ds2R1bG9zIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTc0CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc1CiBtc2dpZCAiaWYgYW55IDxmaWxlPiBpcyBub3QgaW4gdGhlIGluZGV4LCB0cmVhdCB0aGlzIGFzIGFuIGVycm9yIgogbXNnc3RyICJzaSBjdWFscXVpZXIgPGFyY2hpdm8+IG5vIGVzdMOhIGVuIGVsIMOtbmRpY2UsIHRyYXRhcmxvIGNvbW8gdW4gZXJyb3IiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzYKIG1zZ2lkICJ0cmVlLWlzaCIKIG1zZ3N0ciAiw6FyYm9sLWlzbW8iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzYKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzcKIG1zZ2lkICJwcmV0ZW5kIHRoYXQgcGF0aHMgcmVtb3ZlZCBzaW5jZSA8dHJlZS1pc2g+IGFyZSBzdGlsbCBwcmVzZW50IgogbXNnc3RyICIiCiAiZmluZ2lyIHF1ZSBsYXMgcnV0YXMgaGFuIHNpZG8gYm9ycmFkYXMgeWEgcXVlIHRvZGF2w61hIGhheSA8w6FyYm9sLWlzbW9zPiAiCiAicHJlc2VudGVzIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTc4CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc5CiBtc2dpZCAic2hvdyBkZWJ1Z2dpbmcgZGF0YSIKIG1zZ3N0ciAibW9zdHJhciBkYXRhIGRlIGRlYnVnIgogCkBAIC0xMjc3OCw3ICsxNTkwNCw3IEBACiBtc2dpZCAiZG8gbm90IHByaW50IHJlbW90ZSBVUkwiCiBtc2dzdHIgIm5vIG1vc3RyYXIgZWwgVVJMIHJlbW90byIKIAotIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2MCBidWlsdGluL2xzLXJlbW90ZS5jOjYyIGJ1aWx0aW4vcmViYXNlLmM6OTAzCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjYwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjIgYnVpbHRpbi9yZWJhc2UuYzoxNTYxCiBtc2dpZCAiZXhlYyIKIG1zZ3N0ciAiZWplY3V0YXIiCiAKQEAgLTEyODAyLDExICsxNTkyOCwxMSBAQAogbXNnaWQgInRha2UgdXJsLjxiYXNlPi5pbnN0ZWFkT2YgaW50byBhY2NvdW50IgogbXNnc3RyICJ0b21hciB1cmwuPGJhc2U+Lmluc3RlYWRPZiBlbiBjdWVudGEiCiAKLSM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzMKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzIKIG1zZ2lkICJleGl0IHdpdGggZXhpdCBjb2RlIDIgaWYgbm8gbWF0Y2hpbmcgcmVmcyBhcmUgZm91bmQiCiBtc2dzdHIgInNhbGlyIGNvbiBjw7NkaWdvIGRlIHNhbGlkYSAyIHNpIG5vIHNlIGVuY3VlbnRyYW4gcmVmcyBxdWUgY29uY3VlcmRlbiIKIAotIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NQogbXNnaWQgInNob3cgdW5kZXJseWluZyByZWYgaW4gYWRkaXRpb24gdG8gdGhlIG9iamVjdCBwb2ludGVkIGJ5IGl0IgogbXNnc3RyICJtb3N0cmFyIHJlZiBzdWJ5YWNlbnRlIGVuIGFkaWNpw7NuIGFsIG9iamV0byBhcHVudGFkbyBwb3Igw6lsIgogCkBAIC0xMjg1MiwzNjYgKzE1OTc4LDM5MSBAQAogbXNnaWQgImVtcHR5IG1ib3g6ICclcyciCiBtc2dzdHIgIm1ib3ggdmFjw61vOiAnJXMnIgogCi0jOiBidWlsdGluL21lcmdlLmM6NTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1NQogbXNnaWQgImdpdCBtZXJnZSBbPG9wdGlvbnM+XSBbPGNvbW1pdD4uLi5dIgogbXNnc3RyICJnaXQgbWVyZ2UgWzxvcGNpb25lcz5dIFs8Y29tbWl0Pi4uLl0iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1MworIzogYnVpbHRpbi9tZXJnZS5jOjU2CiBtc2dpZCAiZ2l0IG1lcmdlIC0tYWJvcnQiCiBtc2dzdHIgImdpdCBtZXJnZSAtLWFib3J0IgogCi0jOiBidWlsdGluL21lcmdlLmM6NTQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1NwogbXNnaWQgImdpdCBtZXJnZSAtLWNvbnRpbnVlIgogbXNnc3RyICJnaXQgbWVyZ2UgLS1jb250aW51ZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjExMQorIzogYnVpbHRpbi9tZXJnZS5jOjExOQogbXNnaWQgInN3aXRjaCBgbScgcmVxdWlyZXMgYSB2YWx1ZSIKIG1zZ3N0ciAiY2FtYmlhciBgbScgcmVxdWllcmUgdW4gdmFsb3IiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNzcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgcmVxdWlyZXMgYSB2YWx1ZSIKK21zZ3N0ciAib3BjacOzbiBgJXMnIHJlcXVpZXJlIHVuIHZhbG9yIgorCisjOiBidWlsdGluL21lcmdlLmM6MTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBmaW5kIG1lcmdlIHN0cmF0ZWd5ICclcycuXG4iCiBtc2dzdHIgIk5vIHNlIHB1ZG8gZW5jb250cmFyIGVzdHJhdGVnaWEgZGUgZnVzacOzbiAnJXMnLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTc4CisjOiBidWlsdGluL21lcmdlLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF2YWlsYWJsZSBzdHJhdGVnaWVzIGFyZToiCiBtc2dzdHIgIkVzdHJhdGVnaWFzIGRpc3BvbmlibGVzIHNvbjoiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxODMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXZhaWxhYmxlIGN1c3RvbSBzdHJhdGVnaWVzIGFyZToiCiBtc2dzdHIgIkVzdHJhdGVnaWFzIHBlcnNvbmFsaXphZGFzIGRpc3BvbmlibGVzIHNvbjoiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzQgYnVpbHRpbi9wdWxsLmM6MTQzCisjOiBidWlsdGluL21lcmdlLmM6MjQ1IGJ1aWx0aW4vcHVsbC5jOjEzMgogbXNnaWQgImRvIG5vdCBzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCiBtc2dzdHIgIm5vIG1vc3RyYXIgdW4gZGlmZnN0YXQgYWwgZmluYWwgZGUgbGEgZnVzacOzbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjIzNyBidWlsdGluL3B1bGwuYzoxNDYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDggYnVpbHRpbi9wdWxsLmM6MTM1CiBtc2dpZCAic2hvdyBhIGRpZmZzdGF0IGF0IHRoZSBlbmQgb2YgdGhlIG1lcmdlIgogbXNnc3RyICJtb3N0cmFyIHVuIGRpZmZzdGF0IGFsIGZpbmFsIGRlIGxhIGZ1c2nDs24iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzggYnVpbHRpbi9wdWxsLmM6MTQ5CisjOiBidWlsdGluL21lcmdlLmM6MjQ5IGJ1aWx0aW4vcHVsbC5jOjEzOAogbXNnaWQgIihzeW5vbnltIHRvIC0tc3RhdCkiCiBtc2dzdHIgIihzaW7Ds25pbW8gcGFyYSAtLXN0YXQpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQwIGJ1aWx0aW4vcHVsbC5jOjE1MgorIzogYnVpbHRpbi9tZXJnZS5jOjI1MSBidWlsdGluL3B1bGwuYzoxNDEKIG1zZ2lkICJhZGQgKGF0IG1vc3QgPG4+KSBlbnRyaWVzIGZyb20gc2hvcnRsb2cgdG8gbWVyZ2UgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgIiIKICJhZ3JlZ2FyIChjb21vIG3DoXhpbW8gPG4+KSBlbnRyYWRhcyBkZWwgc2hvcnRsb2cgYWwgbWVuc2FqZSBkZWwgY29tbWl0IGRlICIKICJmdXNpw7NuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQzIGJ1aWx0aW4vcHVsbC5jOjE1OAorIzogYnVpbHRpbi9tZXJnZS5jOjI1NCBidWlsdGluL3B1bGwuYzoxNDcKIG1zZ2lkICJjcmVhdGUgYSBzaW5nbGUgY29tbWl0IGluc3RlYWQgb2YgZG9pbmcgYSBtZXJnZSIKIG1zZ3N0ciAiY3JlYXIgdW4gY29tbWl0IMO6bmljbyBlbiBsdWdhciBkZSBoYWNlciB1bmEgZnVzacOzbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0NSBidWlsdGluL3B1bGwuYzoxNjEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTYgYnVpbHRpbi9wdWxsLmM6MTUwCiBtc2dpZCAicGVyZm9ybSBhIGNvbW1pdCBpZiB0aGUgbWVyZ2Ugc3VjY2VlZHMgKGRlZmF1bHQpIgogbXNnc3RyICJyZWFsaXphciB1biBjb21taXQgc2kgbGEgZnVzacOzbiBlcyBleGl0b3NhIChkZWZhdWx0KSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0NyBidWlsdGluL3B1bGwuYzoxNjQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTggYnVpbHRpbi9wdWxsLmM6MTUzCiBtc2dpZCAiZWRpdCBtZXNzYWdlIGJlZm9yZSBjb21taXR0aW5nIgogbXNnc3RyICJlZGl0YXIgbWVuc2FqZSBhbnRlcyBkZSByZWFsaXphciBjb21taXQiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjAKIG1zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQgKGRlZmF1bHQpIgogbXNnc3RyICJwZXJtaXRpciBmYXN0LWZvcndhcnMgKGRlZmF1bHQpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjUwIGJ1aWx0aW4vcHVsbC5jOjE3MAorIzogYnVpbHRpbi9tZXJnZS5jOjI2MiBidWlsdGluL3B1bGwuYzoxNjAKIG1zZ2lkICJhYm9ydCBpZiBmYXN0LWZvcndhcmQgaXMgbm90IHBvc3NpYmxlIgogbXNnc3RyICJhYm9ydGFyIHNpIGZhc3QtZm9yd2FyZCBubyBlcyBwb3NpYmxlIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU0IGJ1aWx0aW4vcHVsbC5jOjE3MworIzogYnVpbHRpbi9tZXJnZS5jOjI2NiBidWlsdGluL3B1bGwuYzoxNjMKIG1zZ2lkICJ2ZXJpZnkgdGhhdCB0aGUgbmFtZWQgY29tbWl0IGhhcyBhIHZhbGlkIEdQRyBzaWduYXR1cmUiCiBtc2dzdHIgInZlcmlmaWNhciBxdWUgZWwgY29tbWl0IG5vbWJyYWRvIHRpZW5lIHVuYSBmaXJtYSBHUEcgdsOhbGlkYSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NSBidWlsdGluL25vdGVzLmM6Nzg0IGJ1aWx0aW4vcHVsbC5jOjE3NwotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTYgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg2IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCisjOiBidWlsdGluL21lcmdlLmM6MjY3IGJ1aWx0aW4vbm90ZXMuYzo3ODcgYnVpbHRpbi9wdWxsLmM6MTY3CisjOiBidWlsdGluL3JlYmFzZS5jOjUyMCBidWlsdGluL3JlYmFzZS5jOjE1NzUgYnVpbHRpbi9yZXZlcnQuYzoxMTQKIG1zZ2lkICJzdHJhdGVneSIKIG1zZ3N0ciAiZXN0cmF0ZWdpYSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NiBidWlsdGluL3B1bGwuYzoxNzgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjggYnVpbHRpbi9wdWxsLmM6MTY4CiBtc2dpZCAibWVyZ2Ugc3RyYXRlZ3kgdG8gdXNlIgogbXNnc3RyICJlc3RyYXRlZ2lhIGRlIGZ1c2nDs24gcGFyYSB1c2FyIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU3IGJ1aWx0aW4vcHVsbC5jOjE4MQorIzogYnVpbHRpbi9tZXJnZS5jOjI2OSBidWlsdGluL3B1bGwuYzoxNzEKIG1zZ2lkICJvcHRpb249dmFsdWUiCiBtc2dzdHIgIm9wY2nDs249dmFsb3IiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTggYnVpbHRpbi9wdWxsLmM6MTgyCisjOiBidWlsdGluL21lcmdlLmM6MjcwIGJ1aWx0aW4vcHVsbC5jOjE3MgogbXNnaWQgIm9wdGlvbiBmb3Igc2VsZWN0ZWQgbWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgIm9wY2nDs24gcGFyYSBsYSBlc3RyYXRlZ2lhIGRlIGZ1c2nDs24gc2VsZWNjaW9uYWRhIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjYwCisjOiBidWlsdGluL21lcmdlLmM6MjcyCiBtc2dpZCAibWVyZ2UgY29tbWl0IG1lc3NhZ2UgKGZvciBhIG5vbi1mYXN0LWZvcndhcmQgbWVyZ2UpIgogbXNnc3RyICJmdXNpb25hciBtZW5zYWplIGRlIGNvbW1pdCAocGFyYSB1bmEgZnVzacOzbiBubyBmYXN0LWZvcndhcmQpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjY3CisjOiBidWlsdGluL21lcmdlLmM6Mjc5CiBtc2dpZCAiYWJvcnQgdGhlIGN1cnJlbnQgaW4tcHJvZ3Jlc3MgbWVyZ2UiCiBtc2dzdHIgImFib3J0YXIgbGEgZnVzacOzbiBlbiBwcm9ncmVzbyBhY3R1YWwiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODEKK21zZ2lkICItLWFib3J0IGJ1dCBsZWF2ZSBpbmRleCBhbmQgd29ya2luZyB0cmVlIGFsb25lIgorbXNnc3RyICItLWFib3J0IHBlcm8gZGVqYSBlbCDDrW5kaWNlIHkgZWwgw6FyYm9sIGRlIHRyYWJham8gc29sb3MiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODMKIG1zZ2lkICJjb250aW51ZSB0aGUgY3VycmVudCBpbi1wcm9ncmVzcyBtZXJnZSIKIG1zZ3N0ciAiY29udGludWFyIGxhIGZ1c2nDs24gZW4gcHJvZ3Jlc28gYWN0dWFsIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjcxIGJ1aWx0aW4vcHVsbC5jOjE4OQorIzogYnVpbHRpbi9tZXJnZS5jOjI4NSBidWlsdGluL3B1bGwuYzoxNzkKIG1zZ2lkICJhbGxvdyBtZXJnaW5nIHVucmVsYXRlZCBoaXN0b3JpZXMiCiBtc2dzdHIgInBlcm1pdGlyIGZ1c2lvbmFyIGhpc3RvcmlhcyBubyByZWxhY2lvbmFkYXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzcKLW1zZ2lkICJ2ZXJpZnkgY29tbWl0LW1zZyBob29rIgotbXNnc3RyICJ2ZXJpZmljYXIgZWwgaG9vayBjb21taXQtbXNnIgorIzogYnVpbHRpbi9tZXJnZS5jOjI5MQorbXNnaWQgImJ5cGFzcyBwcmUtbWVyZ2UtY29tbWl0IGFuZCBjb21taXQtbXNnIGhvb2tzIgorbXNnc3RyICJoYWNlciB1biBieXBhc3MgYSBob29rcyBwcmUtbWVyZ2UtY29tbWl0IHkgY29tbWl0LW1zZyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMwMgorIzogYnVpbHRpbi9tZXJnZS5jOjMwOAogbXNnaWQgImNvdWxkIG5vdCBydW4gc3Rhc2guIgogbXNnc3RyICJubyBzZSBwdWRvIGVqZWN1dGFyIHN0YXNoLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMwNworIzogYnVpbHRpbi9tZXJnZS5jOjMxMwogbXNnaWQgInN0YXNoIGZhaWxlZCIKIG1zZ3N0ciAic3Rhc2ggZmFsbMOzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzEyCisjOiBidWlsdGluL21lcmdlLmM6MzE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdDogJXMiCiBtc2dzdHIgIm5vIGVzIHVuIG9iamV0byB2w6FsaWRvOiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMzNCBidWlsdGluL21lcmdlLmM6MzUxCisjOiBidWlsdGluL21lcmdlLmM6MzQwIGJ1aWx0aW4vbWVyZ2UuYzozNTcKIG1zZ2lkICJyZWFkLXRyZWUgZmFpbGVkIgogbXNnc3RyICJsZWN0dXJhIGRlIMOhcmJvbCBmYWxsw7MiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozODEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozODcKIG1zZ2lkICIgKG5vdGhpbmcgdG8gc3F1YXNoKSIKIG1zZ3N0ciAiIChuYWRhIHBhcmEgaGFjZXIgc3F1YXNoKSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjM5MgorIzogYnVpbHRpbi9tZXJnZS5jOjM5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJTcXVhc2ggY29tbWl0IC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCiBtc2dzdHIgIkNvbW1pdCBkZSBzcXVhc2ggLS0gbm8gYWN0dWFsaXphbmRvIEhFQURcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjQ0MgorIzogYnVpbHRpbi9tZXJnZS5jOjQ0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBtZXJnZSBtZXNzYWdlIC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCiBtc2dzdHIgIk5vIGhheSBtZW5zYWplIGRlIGZ1c2nDs24gLS0gbm8gYWN0dWFsaXphbmRvIEhFQURcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjQ5MworIzogYnVpbHRpbi9tZXJnZS5jOjQ5OQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgY29tbWl0IgogbXNnc3RyICInJXMnIG5vIGFwdW50YSBhIG5pbmfDum4gY29tbWl0IgogCi0jOiBidWlsdGluL21lcmdlLmM6NTgwCisjOiBidWlsdGluL21lcmdlLmM6NTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCBicmFuY2guJXMubWVyZ2VvcHRpb25zIHN0cmluZzogJXMiCiBtc2dzdHIgIk1hbCBzdHJpbmcgYnJhbmNoLiVzLm1lcmdlb3B0aW9uczogJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3MDEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3MDgKIG1zZ2lkICJOb3QgaGFuZGxpbmcgYW55dGhpbmcgb3RoZXIgdGhhbiB0d28gaGVhZHMgbWVyZ2UuIgogbXNnc3RyICJObyBtYW5lamFuZG8gbmFkYSBtw6FzIHF1ZSBmdXNpw7NuIGRlIGRvcyBoZWFkcy4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3MTUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biBvcHRpb24gZm9yIG1lcmdlLXJlY3Vyc2l2ZTogLVglcyIKIG1zZ3N0ciAiT3BjacOzbiBkZXNjb25vY2lkYSBwYXJhIG1lcmdlLXJlY3Vyc2l2ZTogLVglcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjczMAorIzogYnVpbHRpbi9tZXJnZS5jOjczNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgJXMiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgZXNjcmliaXIgJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3ODIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlYWQgZnJvbSAnJXMnIgogbXNnc3RyICJObyBzZSBwdWVkbyBsZWVyIGRlICclcyciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGNvbW1pdHRpbmcgbWVyZ2U7IHVzZSAnZ2l0IGNvbW1pdCcgdG8gY29tcGxldGUgdGhlIG1lcmdlLlxuIgogbXNnc3RyICIiCiAiTm8gc2UgcmVhbGl6YSBjb21taXQgZGUgbGEgZnVzacOzbjsgdXNlICdnaXQgY29tbWl0JyBwYXJhIGNvbXBsZXRhciBsYSAiCiAiZnVzacOzbi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjc5NwotIywgYy1mb3JtYXQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4MDQKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIGEgY29tbWl0IG1lc3NhZ2UgdG8gZXhwbGFpbiB3aHkgdGhpcyBtZXJnZSBpcyBuZWNlc3NhcnksXG4iCiAiZXNwZWNpYWxseSBpZiBpdCBtZXJnZXMgYW4gdXBkYXRlZCB1cHN0cmVhbSBpbnRvIGEgdG9waWMgYnJhbmNoLlxuIgogIlxuIgotIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQsIGFuZCBhbiBlbXB0eSBtZXNzYWdlIGFib3J0c1xuIgotInRoZSBjb21taXQuXG4iCiBtc2dzdHIgIiIKICJQb3IgZmF2b3IgaW5ncmVzZSB1biBtZW5zYWplIGRlIGNvbW1pdCBxdWUgZXhwbGlxdWUgcG9yIHF1w6kgZXMgbmVjZXNhcmlhICIKICJlc3RhIGZ1c2nDs24sXG4iCiAiZXNwZWNpYWxtZW50ZSBzaSBlc3RvIGZ1c2lvbmEgdW4gdXBzdHJlYW0gYWN0dWFsaXphZG8gZW4gdW5hIHJhbWEgZGUgIgogInTDs3BpY28uXG4iCiAiXG4iCi0iTMOtbmVhcyBjb21lbnphbmRvIGNvbiAnJWMnIHNlcsOhbiBpZ25vcmFkYXMsIHkgdW4gbWVuc2FqZSB2YWPDrW8gYWJvcnRhXG4iCi0iZWwgY29tbWl0LlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6ODMzCisjOiBidWlsdGluL21lcmdlLmM6ODA5Cittc2dpZCAiQW4gZW1wdHkgbWVzc2FnZSBhYm9ydHMgdGhlIGNvbW1pdC5cbiIKK21zZ3N0ciAiVW4gbWVuc2FqZSB2YWPDrW8gYWJvcnRhIGVsIGNvbW1pdC5cbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjgxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTGluZXMgc3RhcnRpbmcgd2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzXG4iCisidGhlIGNvbW1pdC5cbiIKK21zZ3N0ciAiIgorIkzDrW5lYXMgY29tZW56YW5kbyBjb24gJyVjJyBzZXLDoW4gaWdub3JhZGFzLCB5IHVuIG1lbnNhamUgdmFjw61vIGFib3J0YVxuIgorIiBlbCBjb21taXQuXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4NjUKIG1zZ2lkICJFbXB0eSBjb21taXQgbWVzc2FnZS4iCiBtc2dzdHIgIk1lbnNhamUgZGUgY29tbWl0IHZhY8Otby4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4NTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiV29uZGVyZnVsLlxuIgogbXNnc3RyICJNYXJhdmlsbG9zby5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjkwNQorIzogYnVpbHRpbi9tZXJnZS5jOjk0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvbWF0aWMgbWVyZ2UgZmFpbGVkOyBmaXggY29uZmxpY3RzIGFuZCB0aGVuIGNvbW1pdCB0aGUgcmVzdWx0LlxuIgogbXNnc3RyICIiCiAiRnVzacOzbiBhdXRvbcOhdGljYSBmYWxsw7M7IGFycmVnbGUgbG9zIGNvbmZsaWN0b3MgeSBsdWVnbyByZWFsaWNlIHVuIGNvbW1pdCAiCiAiY29uIGVsIHJlc3VsdGFkby5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjk0NAorIzogYnVpbHRpbi9tZXJnZS5jOjk4MAogbXNnaWQgIk5vIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAiTm8gcmFtYSBhY3R1YWwuIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ2CisjOiBidWlsdGluL21lcmdlLmM6OTgyCiBtc2dpZCAiTm8gcmVtb3RlIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJObyBoYXkgcmVtb3RvIHBhcmEgbGEgcmFtYSBhY3R1YWwuIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ4CisjOiBidWlsdGluL21lcmdlLmM6OTg0CiBtc2dpZCAiTm8gZGVmYXVsdCB1cHN0cmVhbSBkZWZpbmVkIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJQb3IgZGVmZWN0bywgbm8gaGF5IHVuIHVwc3RyZWFtICBkZWZpbmlkbyBwYXJhIGxhIHJhbWEgYWN0dWFsLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjk1MworIzogYnVpbHRpbi9tZXJnZS5jOjk4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJObyByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIGZvciAlcyBmcm9tICVzIgogbXNnc3RyICJObyBoYXkgcmFtYSBkZSByYXN0cmVvIHJlbW90byBwYXJhICVzIGRlICVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTAxMAorIzogYnVpbHRpbi9tZXJnZS5jOjEwNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkIHZhbHVlICclcycgaW4gZW52aXJvbm1lbnQgJyVzJyIKIG1zZ3N0ciAiVmFsb3IgZXJyw7NuZW8gJyVzJyBlbiBlbCBlbnRvcm5vICclcyciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTEzCisjOiBidWlsdGluL21lcmdlLmM6MTE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJub3Qgc29tZXRoaW5nIHdlIGNhbiBtZXJnZSBpbiAlczogJXMiCiBtc2dzdHIgIm5hZGEgcXVlIHBvZGFtb3MgZnVzaW9uYXIgZW4gJXM6ICVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTE0NworIzogYnVpbHRpbi9tZXJnZS5jOjExODMKIG1zZ2lkICJub3Qgc29tZXRoaW5nIHdlIGNhbiBtZXJnZSIKIG1zZ3N0ciAibmFkYSBxdWUgcG9kYW1vcyBmdXNpb25hciIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNTAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjg2CiBtc2dpZCAiLS1hYm9ydCBleHBlY3RzIG5vIGFyZ3VtZW50cyIKIG1zZ3N0ciAiLS1hYm9ydCBubyBlc3BlcmEgYXJndW1lbnRvcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNTQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjkwCiBtc2dpZCAiVGhlcmUgaXMgbm8gbWVyZ2UgdG8gYWJvcnQgKE1FUkdFX0hFQUQgbWlzc2luZykuIgogbXNnc3RyICJObyBoYXkgdW5hIGZ1c2nDs24gcGFyYSBhYm9ydGFyIChmYWx0YSBNRVJHRV9IRUFEKSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNjYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjk5Cittc2dpZCAiLS1xdWl0IGV4cGVjdHMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLXF1aXQgbm8gZXNwZXJhIGFyZ3VtZW50b3MiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzEyCiBtc2dpZCAiLS1jb250aW51ZSBleHBlY3RzIG5vIGFyZ3VtZW50cyIKIG1zZ3N0ciAiLS1jb250aW51ZSBubyBlc3BlcmEgYXJndW1lbnRvcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzE2CiBtc2dpZCAiVGhlcmUgaXMgbm8gbWVyZ2UgaW4gcHJvZ3Jlc3MgKE1FUkdFX0hFQUQgbWlzc2luZykuIgogbXNnc3RyICJObyBoYXkgZnVzacOzbiBlbiBwcm9ncmVzbyAoZmFsdGEgTUVSR0VfSEVBRCkuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI4NgorIzogYnVpbHRpbi9tZXJnZS5jOjEzMzIKIG1zZ2lkICIiCiAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG1lcmdlIChNRVJHRV9IRUFEIGV4aXN0cykuXG4iCiAiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSB5b3UgbWVyZ2UuIgogbXNnc3RyICIiCi0iTm8gaGEgY29uY2x1aWRvIGxhIGZ1c2nDs24gKGV4aXN0ZSBNRVJHRV9IRUFEKS5cbiIKLSJQb3IgZmF2b3IsIHJlYWxpY2UgdW4gY29tbWl0IGNvbiBsb3MgY2FtYmlvcyBhbnRlcyBkZSBmdXNpb25hci4iCisiTm8gaGFzIGNvbmNsdWlkbyBsYSBmdXNpw7NuIChleGlzdGUgTUVSR0VfSEVBRCkuXG4iCisiUG9yIGZhdm9yLCByZWFsaXphIHVuIGNvbW1pdCBjb24gbG9zIGNhbWJpb3MgYW50ZXMgZGUgZnVzaW9uYXIuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI5MworIzogYnVpbHRpbi9tZXJnZS5jOjEzMzkKIG1zZ2lkICIiCiAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIGNoZXJyeS1waWNrIChDSEVSUllfUElDS19IRUFEIGV4aXN0cykuXG4iCiAiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSB5b3UgbWVyZ2UuIgogbXNnc3RyICIiCi0iTm8gaGEgY29uY2x1aWRvIGVsIGNoZXJyeS1waWNrIChleGlzdGUgQ0hFUlJZX1BJQ0tfSEVBRCkuXG4iCi0iUG9yIGZhdm9yLCByZWFsaWNlIHVuIGNvbW1pdCBjb24gbG9zIGNhbWJpb3MgYW50ZXMgZGUgZnVzaW9uYXIuIgorIk5vIGhhcyBjb25jbHVpZG8gZWwgY2hlcnJ5LXBpY2sgKGV4aXN0ZSBDSEVSUllfUElDS19IRUFEKS5cbiIKKyJQb3IgZmF2b3IsIHJlYWxpemEgdW4gY29tbWl0IGNvbiBsb3MgY2FtYmlvcyBhbnRlcyBkZSBmdXNpb25hci4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjk2CisjOiBidWlsdGluL21lcmdlLmM6MTM0MgogbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdHMpLiIKLW1zZ3N0ciAiTm8gaGEgY29uY2x1aWRvIGVsIGNoZXJyeS1waWNrIChleGlzdGUgQ0hFUlJZX1BJQ0tfSEVBRCkuIgorbXNnc3RyICJObyBoYXMgY29uY2x1aWRvIGVsIGNoZXJyeS1waWNrIChleGlzdGUgQ0hFUlJZX1BJQ0tfSEVBRCkuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMwNQorIzogYnVpbHRpbi9tZXJnZS5jOjEzNTYKIG1zZ2lkICJZb3UgY2Fubm90IGNvbWJpbmUgLS1zcXVhc2ggd2l0aCAtLW5vLWZmLiIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgY29tYmluYXIgLS1zcXVhc2ggY29uIC0tbm8tZmYuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMxMworIzogYnVpbHRpbi9tZXJnZS5jOjEzNTgKK21zZ2lkICJZb3UgY2Fubm90IGNvbWJpbmUgLS1zcXVhc2ggd2l0aCAtLWNvbW1pdC4iCittc2dzdHIgIk5vIHNlIHB1ZWRlIGNvbWJpbmFyIC0tc3F1YXNoIGNvbiAtLWNvbW1pdC4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzc0CiBtc2dpZCAiTm8gY29tbWl0IHNwZWNpZmllZCBhbmQgbWVyZ2UuZGVmYXVsdFRvVXBzdHJlYW0gbm90IHNldC4iCiBtc2dzdHIgIiIKICJObyBoYXkgY29tbWl0IGVzcGVjaWZpY2FkbyB5IG1lcmdlLmRlZmF1bHRUb1Vwc3RyZWFtIG5vIGVzdMOhIGNvbmZpZ3VyYWRvLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzkxCiBtc2dpZCAiU3F1YXNoIGNvbW1pdCBpbnRvIGVtcHR5IGhlYWQgbm90IHN1cHBvcnRlZCB5ZXQiCiBtc2dzdHIgIkNvbW1pdCBhcGxhc3RhZG8gZGVudHJvIGRlIHVuIGhlYWQgdmFjw61vIG5vIGVzIHNvcG9ydGFkbyB0b2RhdsOtYSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzkzCiBtc2dpZCAiTm9uLWZhc3QtZm9yd2FyZCBjb21taXQgZG9lcyBub3QgbWFrZSBzZW5zZSBpbnRvIGFuIGVtcHR5IGhlYWQiCiBtc2dzdHIgIkNvbW1pdCBubyBmYXN0LWZvcndhcmQgbm8gdGllbmUgc2VudGlkbyBkZW50cm8gZGUgdW4gaGVhZCB2YWPDrW8iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzM3CisjOiBidWlsdGluL21lcmdlLmM6MTM5OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyAtIG5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgogbXNnc3RyICIlcyAtIG5hZGEgcXVlIHBvZGFtb3MgZnVzaW9uYXIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzM5CisjOiBidWlsdGluL21lcmdlLmM6MTQwMAogbXNnaWQgIkNhbiBtZXJnZSBvbmx5IGV4YWN0bHkgb25lIGNvbW1pdCBpbnRvIGVtcHR5IGhlYWQiCiBtc2dzdHIgIlNvbG8gc2UgcHVlZGUgZnVzaW9uYXIgZXhhY3RhbWVudGUgdW4gY29tbWl0IGVuIHVuIGhlYWQgdmFjw61vIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQyMQorIzogYnVpbHRpbi9tZXJnZS5jOjE0ODEKIG1zZ2lkICJyZWZ1c2luZyB0byBtZXJnZSB1bnJlbGF0ZWQgaGlzdG9yaWVzIgogbXNnc3RyICJyZWh1c2FuZG8gZnVzaW9uYXIgaGlzdG9yaWFzIG5vIHJlbGFjaW9uYWRhcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0MzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDkwCiBtc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlLiIKIG1zZ3N0ciAiWWEgZXN0w6EgYWN0dWFsaXphZG8uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQ0MAorIzogYnVpbHRpbi9tZXJnZS5jOjE1MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRpbmcgJXMuLiVzXG4iCiBtc2dzdHIgIkFjdHVhbGl6YW5kbyAlcy4uJXNcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0ODIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRyeWluZyByZWFsbHkgdHJpdmlhbCBpbi1pbmRleCBtZXJnZS4uLlxuIgogbXNnc3RyICJJbnRlbnRhbmRvIGZ1c2nDs24gZW4gw61uZGljZSByZWFsbWVudGUgdHJpdmlhbC4uLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQ4OQorIzogYnVpbHRpbi9tZXJnZS5jOjE1NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm9wZS5cbiIKIG1zZ3N0ciAiTm9wLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTUxNAorIzogYnVpbHRpbi9tZXJnZS5jOjE1NzQKIG1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIFllZWFoISIKIG1zZ3N0ciAiWWEgZXN0w6EgYWN0dWFsaXphZG8uIMKhT2gsIHllYWFoaCEiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTIwCisjOiBidWlsdGluL21lcmdlLmM6MTU4MAogbXNnaWQgIk5vdCBwb3NzaWJsZSB0byBmYXN0LWZvcndhcmQsIGFib3J0aW5nLiIKIG1zZ3N0ciAiTm8gZXMgcG9zaWJsZSBoYWNlciBmYXN0LWZvcndhcmQsIGFib3J0YW5kby4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQzIGJ1aWx0aW4vbWVyZ2UuYzoxNjIyCisjOiBidWlsdGluL21lcmdlLmM6MTYwMyBidWlsdGluL21lcmdlLmM6MTY2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJSZXdpbmRpbmcgdGhlIHRyZWUgdG8gcHJpc3RpbmUuLi5cbiIKIG1zZ3N0ciAiUmVib2JpbmFuZG8gZWwgw6FyYm9sIGEgb3JpZ2luYWwuLi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1NDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjA3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRyeWluZyBtZXJnZSBzdHJhdGVneSAlcy4uLlxuIgogbXNnc3RyICJJbnRlbnRhbmRvIGVzdHJhdGVnaWEgZGUgZnVzacOzbiAlcy4uLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYxMworIzogYnVpbHRpbi9tZXJnZS5jOjE2NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gbWVyZ2Ugc3RyYXRlZ3kgaGFuZGxlZCB0aGUgbWVyZ2UuXG4iCiBtc2dzdHIgIk5pbmd1bmEgZXN0cmF0ZWdpYSBkZSBmdXNpw7NuIG1hbmVqw7MgbGEgZnVzacOzbi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MTUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1lcmdlIHdpdGggc3RyYXRlZ3kgJXMgZmFpbGVkLlxuIgogbXNnc3RyICJGdXNpb25hciBjb24gZXN0cmF0ZWdpYSAlcyBmYWxsw7MuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjI0CisjOiBidWlsdGluL21lcmdlLmM6MTY3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJVc2luZyB0aGUgJXMgdG8gcHJlcGFyZSByZXNvbHZpbmcgYnkgaGFuZC5cbiIKIG1zZ3N0ciAiVXNhbmRvIGVsICVzIHBhcmEgcHJlcGFyYXIgcmVzb2x1Y2nDs24gYSBtYW5vLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYzNgorIzogYnVpbHRpbi9tZXJnZS5jOjE2ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0b21hdGljIG1lcmdlIHdlbnQgd2VsbDsgc3RvcHBlZCBiZWZvcmUgY29tbWl0dGluZyBhcyByZXF1ZXN0ZWRcbiIKIG1zZ3N0ciAiIgpAQCAtMTMyNTEsNyArMTY0MDIsNyBAQAogCiAjOiBidWlsdGluL21lcmdlLWJhc2UuYzoxNTkKIG1zZ2lkICJpcyB0aGUgZmlyc3Qgb25lIGFuY2VzdG9yIG9mIHRoZSBvdGhlcj8iCi1tc2dzdHIgImVzIGVsIHByaW1lciBhbmNlc3RybyBkZWwgb3Rybz8iCittc2dzdHIgIsK/ZXMgZWwgcHJpbWVyIGFuY2VzdHJvIGRlbCBvdHJvPyIKIAogIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MTYxCiBtc2dpZCAiZmluZCB3aGVyZSA8Y29tbWl0PiBmb3JrZWQgZnJvbSByZWZsb2cgb2YgPHJlZj4iCkBAIC0xMzI5NywzMyArMTY0NDgsMzMgQEAKIG1zZ2lkICJzZXQgbGFiZWxzIGZvciBmaWxlMS9vcmlnLWZpbGUvZmlsZTIiCiBtc2dzdHIgImNvbmZpZ3VyYXIgbGFiZWxzIHBhcmEgYXJjaGl2bzEvb3JpZy1hcmNoaXZvL2FyY2hpdm8yIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjQ1CisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gb3B0aW9uICVzIgogbXNnc3RyICJvcGNpw7NuICVzIGRlc2Nvbm9jaWRhIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjUxCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBhbmFsaXphciBlbCBvYmpldG8gJyVzJyIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1NQorIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCBiYXNlLiBJZ25vcmluZyAlcy4iCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIGJhc2VzLiBJZ25vcmluZyAlcy4iCiBtc2dzdHJbMF0gIm5vIHNlIHB1ZWRlIG1hbmVqYXIgbcOhcyBkZSAlZCBiYXNlLiBJZ25vcmFuZG8gJXMuIgogbXNnc3RyWzFdICJubyBzZSBwdWVkZSBtYW5lamFyIG3DoXMgZGUgJWQgYmFzZXMuIElnbm9yYW5kbyAlcy4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjMKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjUKIG1zZ2lkICJub3QgaGFuZGxpbmcgYW55dGhpbmcgb3RoZXIgdGhhbiB0d28gaGVhZHMgbWVyZ2UuIgogbXNnc3RyICJubyBtYW5lamFuZG8gbmFkYSBkaXN0aW50byBhIGZ1c2lvbmVzIGRlIGRvcyBoZWFkcy4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjkgYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo3MQorIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo3NCBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlIHJlZiAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIHJlc29sdmVyIHJlZiAnJXMnIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjc3CisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1lcmdpbmcgJXMgd2l0aCAlc1xuIgogbXNnc3RyICJGdXNpb25hbmRvICVzIGNvbiAlc1xuIgpAQCAtMTMzMzYsNyArMTY0ODcsNyBAQAogbXNnaWQgImlucHV0IGlzIE5VTCB0ZXJtaW5hdGVkIgogbXNnc3RyICJpbnB1dCBlcyB0ZXJtaW5hZGEgY29uIE5VTCIKIAotIzogYnVpbHRpbi9ta3RyZWUuYzoxNTUgYnVpbHRpbi93cml0ZS10cmVlLmM6MjUKKyM6IGJ1aWx0aW4vbWt0cmVlLmM6MTU1IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI2CiBtc2dpZCAiYWxsb3cgbWlzc2luZyBvYmplY3RzIgogbXNnc3RyICJwZXJtaXRpciBvYmpldG9zIGZhbHRhbnRlcyIKIApAQCAtMTMzNDQsMTU4ICsxNjQ5NSwxNzQgQEAKIG1zZ2lkICJhbGxvdyBjcmVhdGlvbiBvZiBtb3JlIHRoYW4gb25lIHRyZWUiCiBtc2dzdHIgInBlcm1pdGlyIGxhIGNyZWFjacOzbiBkZSBtw6FzIGRlIHVuIMOhcmJvbCIKIAotIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6OAotbXNnaWQgImdpdCBtdWx0aS1wYWNrLWluZGV4IFstLW9iamVjdC1kaXI9PGRpcj5dICh3cml0ZXx2ZXJpZnkpIgotbXNnc3RyICJnaXQgbXVsdGktcGFjay1pbmRleCBbLS1vYmplY3QtZGlyPTxkaXI+XSAod3JpdGV8dmVyaWZ5KSIKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjkKK21zZ2lkICIiCisiZ2l0IG11bHRpLXBhY2staW5kZXggWzxvcHRpb25zPl0gKHdyaXRlfHZlcmlmeXxleHBpcmV8cmVwYWNrIC0tYmF0Y2gtIgorInNpemU9PHNpemU+KSIKK21zZ3N0ciAiIgorImdpdCBtdWx0aS1wYWNrLWluZGV4IFs8b3B0aW9ucz5dICh3cml0ZXx2ZXJpZnl8ZXhwaXJlfHJlcGFjayAtLWJhdGNoLSIKKyJzaXplPTx0YW1hw7FvPikiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjIxCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyNgogbXNnaWQgIm9iamVjdCBkaXJlY3RvcnkgY29udGFpbmluZyBzZXQgb2YgcGFja2ZpbGUgYW5kIHBhY2staW5kZXggcGFpcnMiCiBtc2dzdHIgIm9iamV0byBkaXJlY3RvcmlvIGNvbnRlbmllbmRvIGNvbmp1bnRvcyBkZSBwYXJlcyBwYWNrZmlsZSB5IHBhY2staW5kZXgiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjM5CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyOQorbXNnaWQgIiIKKyJkdXJpbmcgcmVwYWNrLCBjb2xsZWN0IHBhY2stZmlsZXMgb2Ygc21hbGxlciBzaXplIGludG8gYSBiYXRjaCB0aGF0IGlzICIKKyJsYXJnZXIgdGhhbiB0aGlzIHNpemUiCittc2dzdHIgIiIKKyJkdXJhbnRlIGVsIHJlcGFjaywgcmVjb2xlY3RhciBsb3MgcGFjay1maWxlcyBkZSB0YW1hw7FvIG1lbm9yIGVuIHVuIGJhdGNoIHF1ZSAiCisiZXMgbcOhcyBncmFuZGUgcXVlIGVzdGUgdGFtYcOxbyIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NTAgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo2NwogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyIKIG1zZ3N0ciAibXVjaG9zIGFyZ3VtZW50b3MiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjQ4Ci0jLCBjLWZvcm1hdAotbXNnaWQgInVucmVjb2duaXplZCB2ZXJiOiAlcyIKLW1zZ3N0ciAidmVyYm8gbm8gcmVjb25vY2lkbzogJXMiCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo2MAorbXNnaWQgIi0tYmF0Y2gtc2l6ZSBvcHRpb24gaXMgb25seSBmb3IgJ3JlcGFjaycgc3ViY29tbWFuZCIKK21zZ3N0ciAib3BjacOzbiAtLWJhdGNoLXNpemUgZXMgc29sbyBwYXJhIGVsIHN1YmNvbWFuZG8gJ3JlcGFjayciCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIHN1YmNvbW1hbmQ6ICVzIgorbXNnc3RyICJzdWJjb21hbmRvIGRlc2Nvbm9jaWRvOiAlcyIKKworIzogYnVpbHRpbi9tdi5jOjE4CiBtc2dpZCAiZ2l0IG12IFs8b3B0aW9ucz5dIDxzb3VyY2U+Li4uIDxkZXN0aW5hdGlvbj4iCiBtc2dzdHIgImdpdCBtdiBbPG9wY2lvbmVzPl0gPGZ1ZW50ZT4uLi4gPGRlc3Rpbm8+IgogCi0jOiBidWlsdGluL212LmM6ODIKKyM6IGJ1aWx0aW4vbXYuYzo4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJEaXJlY3RvcnkgJXMgaXMgaW4gaW5kZXggYW5kIG5vIHN1Ym1vZHVsZT8iCi1tc2dzdHIgIkRpcmVjdG9yaW8gJXMgZXN0w6EgZW4gZWwgw61uZGljZSB5IG5vIGhheSBzdWJtw7NkdWxvPyIKK21zZ3N0ciAiwr9EaXJlY3RvcmlvICVzIGVzdMOhIGVuIGVsIMOtbmRpY2UgeSBubyBoYXkgc3VibcOzZHVsbz8iCiAKLSM6IGJ1aWx0aW4vbXYuYzo4NAorIzogYnVpbHRpbi9tdi5jOjg1CiBtc2dpZCAiUGxlYXNlIHN0YWdlIHlvdXIgY2hhbmdlcyB0byAuZ2l0bW9kdWxlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQiCiBtc2dzdHIgIiIKICJQb3IgZmF2b3IgYWdyZWdhIGVsIHN0YWdlIGRlIHR1cyBjYW1iaW9zIGEgLmdpdG1vZHVsZXMgbyByZWFsaXphIHVuIHN0YXNoICIKICJwYXJhIHByb2NlZGVyIgogCi0jOiBidWlsdGluL212LmM6MTAyCisjOiBidWlsdGluL212LmM6MTAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiUuKnMgaXMgaW4gaW5kZXgiCiBtc2dzdHIgIiUuKnMgZXN0w6EgZW4gZWwgw61uZGljZSIKIAotIzogYnVpbHRpbi9tdi5jOjEyNAorIzogYnVpbHRpbi9tdi5jOjEyNQogbXNnaWQgImZvcmNlIG1vdmUvcmVuYW1lIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAiZm9yemFyIG1vdmVyL3Jlbm9tYnJhciBpbmNsdXNvIHNpIGVsIG9iamV0aXZvIGV4aXN0ZSIKIAotIzogYnVpbHRpbi9tdi5jOjEyNgorIzogYnVpbHRpbi9tdi5jOjEyNwogbXNnaWQgInNraXAgbW92ZS9yZW5hbWUgZXJyb3JzIgogbXNnc3RyICJzYWx0YXIgZXJyb3JlcyBkZSBtb3Zlci9yZW5vbWJyYXIiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNjgKKyM6IGJ1aWx0aW4vbXYuYzoxNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzdGluYXRpb24gJyVzJyBpcyBub3QgYSBkaXJlY3RvcnkiCiBtc2dzdHIgImRlc3Rpbm8gJyVzJyBubyBlcyB1biBkaXJlY3RvcmlvIgogCi0jOiBidWlsdGluL212LmM6MTc5CisjOiBidWlsdGluL212LmM6MTgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoZWNraW5nIHJlbmFtZSBvZiAnJXMnIHRvICclcydcbiIKIG1zZ3N0ciAiUmV2aXNhbmRvIGNhbWJpbyBkZSBub21icmUgZGUgJyVzJyBhICclcydcbiIKIAotIzogYnVpbHRpbi9tdi5jOjE4MworIzogYnVpbHRpbi9tdi5jOjE4NAogbXNnaWQgImJhZCBzb3VyY2UiCiBtc2dzdHIgIm1hbGEgZnVlbnRlIgogCi0jOiBidWlsdGluL212LmM6MTg2CisjOiBidWlsdGluL212LmM6MTg3CiBtc2dpZCAiY2FuIG5vdCBtb3ZlIGRpcmVjdG9yeSBpbnRvIGl0c2VsZiIKIG1zZ3N0ciAibm8gc2UgcHVkZSBtb3ZlciB1biBkaXJlY3RvcmlvIGVuIHPDrSBtaXNtbyIKIAotIzogYnVpbHRpbi9tdi5jOjE4OQorIzogYnVpbHRpbi9tdi5jOjE5MAogbXNnaWQgImNhbm5vdCBtb3ZlIGRpcmVjdG9yeSBvdmVyIGZpbGUiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIG1vdmVyIHVuIGRpcmVjdG9yaW8gZGVudHJvIGRlIHVuIGFyY2hpdm8iCiAKLSM6IGJ1aWx0aW4vbXYuYzoxOTgKKyM6IGJ1aWx0aW4vbXYuYzoxOTkKIG1zZ2lkICJzb3VyY2UgZGlyZWN0b3J5IGlzIGVtcHR5IgogbXNnc3RyICJkaXJlY3RvcmlvIGRlIGZ1ZW50ZSBlc3TDoSB2YWPDrW8iCiAKLSM6IGJ1aWx0aW4vbXYuYzoyMjMKKyM6IGJ1aWx0aW4vbXYuYzoyMjQKIG1zZ2lkICJub3QgdW5kZXIgdmVyc2lvbiBjb250cm9sIgogbXNnc3RyICJubyBzZSBlbmN1ZW50cmEgYmFqbyBjb250cm9sIGRlIHZlcnNpw7NuIgogCi0jOiBidWlsdGluL212LmM6MjI2CisjOiBidWlsdGluL212LmM6MjI3CiBtc2dpZCAiZGVzdGluYXRpb24gZXhpc3RzIgogbXNnc3RyICJkZXN0aW5vIGV4aXN0ZSIKIAotIzogYnVpbHRpbi9tdi5jOjIzNAorIzogYnVpbHRpbi9tdi5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJvdmVyd3JpdGluZyAnJXMnIgogbXNnc3RyICJzb2JyZXNjcmliaWVuZG8gJyVzJyIKIAotIzogYnVpbHRpbi9tdi5jOjIzNworIzogYnVpbHRpbi9tdi5jOjIzOAogbXNnaWQgIkNhbm5vdCBvdmVyd3JpdGUiCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIHNvYnJlc2NyaWJpciIKIAotIzogYnVpbHRpbi9tdi5jOjI0MAorIzogYnVpbHRpbi9tdi5jOjI0MQogbXNnaWQgIm11bHRpcGxlIHNvdXJjZXMgZm9yIHRoZSBzYW1lIHRhcmdldCIKIG1zZ3N0ciAibcO6bHRpcGxlcyBmdWVudGVzIHBhcmEgZWwgbWlzbW8gb2JqZXRpdm8iCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNDIKKyM6IGJ1aWx0aW4vbXYuYzoyNDMKIG1zZ2lkICJkZXN0aW5hdGlvbiBkaXJlY3RvcnkgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgImVsIGRpcmVjdG9yaW8gZGUgZGVzdGlubyBubyBleGlzdGUiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNDkKKyM6IGJ1aWx0aW4vbXYuYzoyNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMsIHNvdXJjZT0lcywgZGVzdGluYXRpb249JXMiCiBtc2dzdHIgIiVzLCBmdWVudGU9JXMsIGRlc3Rpbm89JXMiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNzAKKyM6IGJ1aWx0aW4vbXYuYzoyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVuYW1pbmcgJXMgdG8gJXNcbiIKIG1zZ3N0ciAiUmVub21icmFuZG8gJXMgYSAlc1xuIgogCi0jOiBidWlsdGluL212LmM6Mjc2IGJ1aWx0aW4vcmVtb3RlLmM6NzE3IGJ1aWx0aW4vcmVwYWNrLmM6NTExCisjOiBidWlsdGluL212LmM6Mjc3IGJ1aWx0aW4vcmVtb3RlLmM6NzgxIGJ1aWx0aW4vcmVwYWNrLmM6NTE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbmFtaW5nICclcycgZmFpbGVkIgogbXNnc3RyICJyZW5vbWJyYW5kbyAnJXMnIGZhbGzDsyIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NQorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NQogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSA8Y29tbWl0Pi4uLiIKIG1zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs8b3BjaW9uZXM+XSA8Y29tbWl0Pi4uLiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NgorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NgogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLWFsbCIKIG1zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs8b3BjaW9uZXM+XSAtLWFsbCIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NwogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLXN0ZGluIgogbXNnc3RyICJnaXQgbmFtZS1yZXYgWzxvcGNpb25lcz5dIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTMKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjQKIG1zZ2lkICJwcmludCBvbmx5IG5hbWVzIChubyBTSEEtMSkiCiBtc2dzdHIgImltcHJpbWlyIHPDs2xvIG5vbWJyZXMgKHNpbiBTSEEtMSkiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTQKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjUKIG1zZ2lkICJvbmx5IHVzZSB0YWdzIHRvIG5hbWUgdGhlIGNvbW1pdHMiCiBtc2dzdHIgInPDs2xvIHVzYXIgdGFncyBwYXJhIG5vbWJyYXIgY29tbWl0cyIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxNgorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUyNwogbXNnaWQgIm9ubHkgdXNlIHJlZnMgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICJzb2xvIHVzYXIgcmVmcyBxdWUgY29uY3VlcmRlbiBjb24gPHBhdHLDs24+IgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE4CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI5CiBtc2dpZCAiaWdub3JlIHJlZnMgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICJpZ25vcmFyIHJlZnMgcXVlIGNvbmN1ZXJkZW4gY29uIDxwYXRyw7NuPiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQyMAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzMQogbXNnaWQgImxpc3QgYWxsIGNvbW1pdHMgcmVhY2hhYmxlIGZyb20gYWxsIHJlZnMiCiBtc2dzdHIgImxpc3RhciB0b2RvcyBsb3MgY29tbWl0cyBhbGNhbnphYmxlcyBkZXNkZSB0b2RhcyBsYXMgcmVmZXJlbmNpYXMiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjEKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzIKIG1zZ2lkICJyZWFkIGZyb20gc3RkaW4iCiBtc2dzdHIgImxlZXIgZGVzZGUgc3RkaW4iCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjIKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzMKIG1zZ2lkICJhbGxvdyB0byBwcmludCBgdW5kZWZpbmVkYCBuYW1lcyAoZGVmYXVsdCkiCiBtc2dzdHIgInBlcm1pdGlyIGltcHJpbWlyIG5vbWJyZXMgYHVuZGVmaW5lZGAgKHByZWRldGVybWluYWRvKSIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQyOAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzOQogbXNnaWQgImRlcmVmZXJlbmNlIHRhZ3MgaW4gdGhlIGlucHV0IChpbnRlcm5hbCB1c2UpIgogbXNnc3RyICJkZXNyZWZlcmVuY2lhciB0YWdzIGVuIGxhIGVudHJhZGEgKHVzbyBpbnRlcm5vKSIKIApAQCAtMTM2NDQsMTQgKzE2ODExLDE0IEBACiBtc2dpZCAidGhlIG5vdGUgY29udGVudHMgaGF2ZSBiZWVuIGxlZnQgaW4gJXMiCiBtc2dzdHIgImxvcyBjb250ZW5pZG9zIGRlIG5vdGEgaGFuIHNpZG8gZGVqYWRvcyBlbiAlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjI0MiBidWlsdGluL3RhZy5jOjUxMworIzogYnVpbHRpbi9ub3Rlcy5jOjI0MiBidWlsdGluL3RhZy5jOjUzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBvciByZWFkICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gYWJyaXIgbyBsZWVyICclcyciCiAKICM6IGJ1aWx0aW4vbm90ZXMuYzoyNjMgYnVpbHRpbi9ub3Rlcy5jOjMxMyBidWlsdGluL25vdGVzLmM6MzE1Ci0jOiBidWlsdGluL25vdGVzLmM6MzgzIGJ1aWx0aW4vbm90ZXMuYzo0MzggYnVpbHRpbi9ub3Rlcy5jOjUyNAotIzogYnVpbHRpbi9ub3Rlcy5jOjUyOSBidWlsdGluL25vdGVzLmM6NjA3IGJ1aWx0aW4vbm90ZXMuYzo2NjkKKyM6IGJ1aWx0aW4vbm90ZXMuYzozODMgYnVpbHRpbi9ub3Rlcy5jOjQzOCBidWlsdGluL25vdGVzLmM6NTI2CisjOiBidWlsdGluL25vdGVzLmM6NTMxIGJ1aWx0aW4vbm90ZXMuYzo2MTAgYnVpbHRpbi9ub3Rlcy5jOjY3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKIG1zZ3N0ciAiZmFsbMOzIGFsIHJlc29sdmVyICclcycgY29tbyByZWYgdsOhbGlkYS4iCkBAIC0xMzY4NCwzOCArMTY4NTEsMzggQEAKIG1zZ2lkICJyZWZ1c2luZyB0byAlcyBub3RlcyBpbiAlcyAob3V0c2lkZSBvZiByZWZzL25vdGVzLykiCiBtc2dzdHIgInJlY2hhemFuZG8gJXMgbm90YXMgZW4gJXMgKGZ1ZXJhIGRlIHJlZnMvbm90ZXMvKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjM3NiBidWlsdGluL25vdGVzLmM6NDMxIGJ1aWx0aW4vbm90ZXMuYzo1MDcKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MTkgYnVpbHRpbi9ub3Rlcy5jOjU5NSBidWlsdGluL25vdGVzLmM6NjYyCi0jOiBidWlsdGluL25vdGVzLmM6ODEyIGJ1aWx0aW4vbm90ZXMuYzo5NTkgYnVpbHRpbi9ub3Rlcy5jOjk4MAorIzogYnVpbHRpbi9ub3Rlcy5jOjM3NiBidWlsdGluL25vdGVzLmM6NDMxIGJ1aWx0aW4vbm90ZXMuYzo1MDkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MjEgYnVpbHRpbi9ub3Rlcy5jOjU5OCBidWlsdGluL25vdGVzLmM6NjY1CisjOiBidWlsdGluL25vdGVzLmM6ODE1IGJ1aWx0aW4vbm90ZXMuYzo5NjMgYnVpbHRpbi9ub3Rlcy5jOjk4NQogbXNnaWQgInRvbyBtYW55IHBhcmFtZXRlcnMiCiBtc2dzdHIgImRlbWFzaWFkb3MgcGFyw6FtZXRyb3MiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzozODkgYnVpbHRpbi9ub3Rlcy5jOjY3NQorIzogYnVpbHRpbi9ub3Rlcy5jOjM4OSBidWlsdGluL25vdGVzLmM6Njc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIG5vdGUgZm91bmQgZm9yIG9iamVjdCAlcy4iCiBtc2dzdHIgIm5vIHNlIGVuY29udHJhcm9uIG5vdGFzIHBhcmEgb2JqZXRvICVzLiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxMCBidWlsdGluL25vdGVzLmM6NTczCisjOiBidWlsdGluL25vdGVzLmM6NDEwIGJ1aWx0aW4vbm90ZXMuYzo1NzYKIG1zZ2lkICJub3RlIGNvbnRlbnRzIGFzIGEgc3RyaW5nIgogbXNnc3RyICJjb250ZW5pZG9zIGRlIGxhIG5vdGEgY29tbyBjYWRlbmEiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0MTMgYnVpbHRpbi9ub3Rlcy5jOjU3NgorIzogYnVpbHRpbi9ub3Rlcy5jOjQxMyBidWlsdGluL25vdGVzLmM6NTc5CiBtc2dpZCAibm90ZSBjb250ZW50cyBpbiBhIGZpbGUiCiBtc2dzdHIgImNvbnRlbmlkb3MgZGUgbGEgbm90YSBlbiB1biBhcmNoaXZvIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDE2IGJ1aWx0aW4vbm90ZXMuYzo1NzkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTYgYnVpbHRpbi9ub3Rlcy5jOjU4MgogbXNnaWQgInJldXNlIGFuZCBlZGl0IHNwZWNpZmllZCBub3RlIG9iamVjdCIKIG1zZ3N0ciAicmV1dGlsaXphciB5IGVkaXRhciBlbCBvYmpldG8gZGUgbm90YSBlc3BlY2lmaWNhZGEiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0MTkgYnVpbHRpbi9ub3Rlcy5jOjU4MgorIzogYnVpbHRpbi9ub3Rlcy5jOjQxOSBidWlsdGluL25vdGVzLmM6NTg1CiBtc2dpZCAicmV1c2Ugc3BlY2lmaWVkIG5vdGUgb2JqZWN0IgogbXNnc3RyICJyZXV0aWxpemFyIGVsIG9iamV0byBkZSBub3RhIGVzcGVjaWZpY2FkbyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQyMiBidWlsdGluL25vdGVzLmM6NTg1CisjOiBidWlsdGluL25vdGVzLmM6NDIyIGJ1aWx0aW4vbm90ZXMuYzo1ODgKIG1zZ2lkICJhbGxvdyBzdG9yaW5nIGVtcHR5IG5vdGUiCiBtc2dzdHIgInBlcm1pdGlyIGFsbWFjZW5hciBub3RhIHZhY8OtYSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQyMyBidWlsdGluL25vdGVzLmM6NDk0CisjOiBidWlsdGluL25vdGVzLmM6NDIzIGJ1aWx0aW4vbm90ZXMuYzo0OTYKIG1zZ2lkICJyZXBsYWNlIGV4aXN0aW5nIG5vdGVzIgogbXNnc3RyICJyZWVtcGxhemFyIG5vdGFzIGV4aXN0ZW50ZXMiCiAKQEAgLTEzNzI4LDI5ICsxNjg5NSwyOSBAQAogIk5vIHNlIHB1ZWRlIGFncmVnYXIgbm90YXMuIFNlIGVuY29udHLDsyBub3RhcyBleGlzdGVudGVzIHBhcmEgb2JqZXRvICVzLiBVc2UgIgogIictZicgcGFyYSBzb2JyZXNjcmliaXIgbGFzIG5vdGFzIGV4aXN0ZW50ZXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0NjMgYnVpbHRpbi9ub3Rlcy5jOjU0MgorIzogYnVpbHRpbi9ub3Rlcy5jOjQ2MyBidWlsdGluL25vdGVzLmM6NTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIk92ZXJ3cml0aW5nIGV4aXN0aW5nIG5vdGVzIGZvciBvYmplY3QgJXNcbiIKIG1zZ3N0ciAiU29icmVzY3JpYmllbmRvIG5vdGFzIGV4aXN0ZW50ZXMgcGFyYSBvYmpldG8gJXNcbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ3NCBidWlsdGluL25vdGVzLmM6NjM0IGJ1aWx0aW4vbm90ZXMuYzo4OTkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NzUgYnVpbHRpbi9ub3Rlcy5jOjYzNyBidWlsdGluL25vdGVzLmM6OTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nIG5vdGUgZm9yIG9iamVjdCAlc1xuIgogbXNnc3RyICJSZW1vdmllbmRvIG5vdGEgcGFyYSBvYmpldG8gJXNcbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ5NQorIzogYnVpbHRpbi9ub3Rlcy5jOjQ5NwogbXNnaWQgInJlYWQgb2JqZWN0cyBmcm9tIHN0ZGluIgogbXNnc3RyICJsZWVyIG9iamV0b3MgZGVzZGUgc3RkaW4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0OTcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTkKIG1zZ2lkICJsb2FkIHJld3JpdGluZyBjb25maWcgZm9yIDxjb21tYW5kPiAoaW1wbGllcyAtLXN0ZGluKSIKIG1zZ3N0ciAiY2FyZ2FyIGNvbmZpZ3VyYWNpw7NuIGRlIHJlZXNjcml0dXJhIHBhcmEgPGNvbWFuZG8+IChpbXBsaWNhIC0tc3RkaW4pIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTE1CisjOiBidWlsdGluL25vdGVzLmM6NTE3CiBtc2dpZCAidG9vIGZldyBwYXJhbWV0ZXJzIgogbXNnc3RyICJtdXkgcG9jb3MgcGFyw6FtZXRyb3MiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MzYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNhbm5vdCBjb3B5IG5vdGVzLiBGb3VuZCBleGlzdGluZyBub3RlcyBmb3Igb2JqZWN0ICVzLiBVc2UgJy1mJyB0byBvdmVyd3JpdGUgIgpAQCAtMTM3NTksMTIgKzE2OTI2LDEyIEBACiAiTm8gc2UgcHVlZGUgY29waWFyIG5vdGFzLiBTZSBlbmNvbnRyw7Mgbm90YXMgZXhpc3RlbnRlcyBwYXJhIGVsIG9iamV0byAlcy4gIgogIlVzZSAnLWYnIHBhcmEgc29icmVzY3JpYmlyIGxhcyBub3RlcyBleGlzdGVudGVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTQ4CisjOiBidWlsdGluL25vdGVzLmM6NTUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3Npbmcgbm90ZXMgb24gc291cmNlIG9iamVjdCAlcy4gQ2Fubm90IGNvcHkuIgogbXNnc3RyICJmYWx0YW4gbm90YXMgZW4gbGEgZnVlbnRlIGRlbCBvYmpldG8gJXMuIE5vIHNlIHB1ZWRlIGNvcGlhci4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2MDAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSAtbS8tRi8tYy8tQyBvcHRpb25zIGhhdmUgYmVlbiBkZXByZWNhdGVkIGZvciB0aGUgJ2VkaXQnIHN1YmNvbW1hbmQuXG4iCkBAIC0xMzc3Myw1MiArMTY5NDAsNTIgQEAKICJMYXMgb3BjaW9uZXMgLW0vLUYvLWMvLUMgaGFuIHNpZG8gZGVwcmVjYWRhcyBwb3IgZWwgc3ViY29tYW5kbyAnZWRpdCcuXG4iCiAiUG9yIGZhdm9yIHVzZSAnZ2l0IG5vdGVzIGFkZCAtZiAtbS8tRi8tYy8tQycgZW4gY2FtYmlvLlxuIgogCi0jOiBidWlsdGluL25vdGVzLmM6Njk1CisjOiBidWlsdGluL25vdGVzLmM6Njk4CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKIG1zZ3N0ciAiZmFsbMOzIGFsIGJvcnJhciByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjY5NworIzogYnVpbHRpbi9ub3Rlcy5jOjcwMAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgcmVmIE5PVEVTX01FUkdFX1JFRiIKIG1zZ3N0ciAiZmFsbMOzIGFsIGJvcnJhciByZWYgTk9URVNfTUVSR0VfUkVGIgogCi0jOiBidWlsdGluL25vdGVzLmM6Njk5CisjOiBidWlsdGluL25vdGVzLmM6NzAyCiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAnZ2l0IG5vdGVzIG1lcmdlJyB3b3JrdHJlZSIKIG1zZ3N0ciAibm8gc2UgcHVkbyBlbGltaW5hciBlbCDDoXJib2wgZGUgdHJhYmFqbyAnZ2l0IG5vdGVzIG1lcmdlJyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjcxOQorIzogYnVpbHRpbi9ub3Rlcy5jOjcyMgogbXNnaWQgImZhaWxlZCB0byByZWFkIHJlZiBOT1RFU19NRVJHRV9QQVJUSUFMIgogbXNnc3RyICJmYWxsw7MgYWwgbGVlciByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjcyMQorIzogYnVpbHRpbi9ub3Rlcy5jOjcyNAogbXNnaWQgImNvdWxkIG5vdCBmaW5kIGNvbW1pdCBmcm9tIE5PVEVTX01FUkdFX1BBUlRJQUwuIgogbXNnc3RyICJubyBzZSBwdWRvIGVuY29udHJhciBjb21taXQgZGUgTk9URVNfTUVSR0VfUEFSVElBTC4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjYKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0IGZyb20gTk9URVNfTUVSR0VfUEFSVElBTC4iCiBtc2dzdHIgIm5vIHNlIHB1ZG8gYW5hbGl6YXIgY29tbWl0IGRlIE5PVEVTX01FUkdFX1BBUlRJQUwuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzM2CisjOiBidWlsdGluL25vdGVzLmM6NzM5CiBtc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgTk9URVNfTUVSR0VfUkVGIgogbXNnc3RyICJmYWxsw7MgYWwgcmVzb2x2ZXIgTk9URVNfTUVSR0VfUkVGIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzM5CisjOiBidWlsdGluL25vdGVzLmM6NzQyCiBtc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplIG5vdGVzIG1lcmdlIgogbXNnc3RyICJmYWxsw7MgYWwgZmluYWxpemFyIGxhcyBub3RhcyBkZSBmdXNpw7NuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzY1CisjOiBidWlsdGluL25vdGVzLmM6NzY4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gbm90ZXMgbWVyZ2Ugc3RyYXRlZ3kgJXMiCiBtc2dzdHIgImVzdHJhdGVnaWEgZGUgZnVzacOzbiBkZSBub3RhcyAlcyBkZXNjb25vY2lkYSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4MQorIzogYnVpbHRpbi9ub3Rlcy5jOjc4NAogbXNnaWQgIkdlbmVyYWwgb3B0aW9ucyIKIG1zZ3N0ciAiT3BjaW9uZXMgZ2VuZXJhbGVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzgzCisjOiBidWlsdGluL25vdGVzLmM6Nzg2CiBtc2dpZCAiTWVyZ2Ugb3B0aW9ucyIKIG1zZ3N0ciAiT3BjaW9uZXMgZGUgZnVzacOzbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4NQorIzogYnVpbHRpbi9ub3Rlcy5jOjc4OAogbXNnaWQgIiIKICJyZXNvbHZlIG5vdGVzIGNvbmZsaWN0cyB1c2luZyB0aGUgZ2l2ZW4gc3RyYXRlZ3kgKG1hbnVhbC9vdXJzL3RoZWlycy91bmlvbi8iCiAiY2F0X3NvcnRfdW5pcSkiCkBAIC0xMzgyNiw0NyArMTY5OTMsNDcgQEAKICJyZXNvbHZlciBjb25mbGljdG9zIGRlIG5vdGFzIHVzYW5kbyBsYSBlc3RyYXRlZ2lhIGVudHJlZ2FkYXMgKG1hbnVhbC9vdXJzLyIKICJ0aGVpcnMvdW5pb24vY2F0X3NvcnRfdW5pcSkiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTAKIG1zZ2lkICJDb21taXR0aW5nIHVubWVyZ2VkIG5vdGVzIgogbXNnc3RyICJSZWFsaXphbmRvIGNvbW1pdCBhIGxhcyBub3RhcyBubyBmdXNpb25hZGFzIgogCi0jOiBidWlsdGluL25vdGVzLmM6Nzg5CisjOiBidWlsdGluL25vdGVzLmM6NzkyCiBtc2dpZCAiZmluYWxpemUgbm90ZXMgbWVyZ2UgYnkgY29tbWl0dGluZyB1bm1lcmdlZCBub3RlcyIKIG1zZ3N0ciAiIgogImZpbmFsaXphciBmdXNpw7NuIGRlIG5vdGFzIHJlYWxpemFuZG8gdW4gY29tbWl0IGRlIGxhcyBub3RhcyBubyBmdXNpb25hZGFzIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzkxCisjOiBidWlsdGluL25vdGVzLmM6Nzk0CiBtc2dpZCAiQWJvcnRpbmcgbm90ZXMgbWVyZ2UgcmVzb2x1dGlvbiIKIG1zZ3N0ciAiQWJvcnRhbmRvIG5vdGFzIGRlIHJlc29sdWNpw7NuIGRlIGZ1c2nDs24iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3OTMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTYKIG1zZ2lkICJhYm9ydCBub3RlcyBtZXJnZSIKIG1zZ3N0ciAiYWJvcnRhciBub3RhcyBkZSBmdXNpw7NuIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODA0CisjOiBidWlsdGluL25vdGVzLmM6ODA3CiBtc2dpZCAiY2Fubm90IG1peCAtLWNvbW1pdCwgLS1hYm9ydCBvciAtcy8tLXN0cmF0ZWd5IgogbXNnc3RyICJubyBzZSBwdWVkZW4gbWV6Y2xhciAtLWNvbW1pdCwgLS1hYm9ydCDDsyAtcy8tLXN0cmF0ZWd5IgogCi0jOiBidWlsdGluL25vdGVzLmM6ODA5CisjOiBidWlsdGluL25vdGVzLmM6ODEyCiBtc2dpZCAibXVzdCBzcGVjaWZ5IGEgbm90ZXMgcmVmIHRvIG1lcmdlIgogbXNnc3RyICJkZWJlIGVzcGVjaWZpY2FyIHVuYSByZWYgZGUgbm90YXMgYSBmdXNpb25hciIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjgzMworIzogYnVpbHRpbi9ub3Rlcy5jOjgzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIC1zLy0tc3RyYXRlZ3k6ICVzIgogbXNnc3RyICItLXN0cmF0ZWd5Ly1zIGRlc2Nvbm9jaWRhOiAlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg3MAorIzogYnVpbHRpbi9ub3Rlcy5jOjg3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhIG5vdGVzIG1lcmdlIGludG8gJXMgaXMgYWxyZWFkeSBpbi1wcm9ncmVzcyBhdCAlcyIKIG1zZ3N0ciAidW5hIGZ1c2nDs24gZGUgbm90YXMgZW4gJXMgeWEgZXN0w6EgZW4gcHJvZ3Jlc28gZW4gJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0b3JlIGxpbmsgdG8gY3VycmVudCBub3RlcyByZWYgKCVzKSIKIG1zZ3N0ciAiZmFsbMOzIGFsIGd1YXJkYXIgdW4gbGluayBwYXJhIGVsIHJlZiBkZSBub3RhcyBhY3R1YWwgKCVzKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg3NQorIzogYnVpbHRpbi9ub3Rlcy5jOjg3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQXV0b21hdGljIG5vdGVzIG1lcmdlIGZhaWxlZC4gRml4IGNvbmZsaWN0cyBpbiAlcyBhbmQgY29tbWl0IHRoZSByZXN1bHQgd2l0aCAiCkBAIC0xMzg3NywxNzcgKzE3MDQ0LDE1OSBAQAogImNvbW1pdCBjb24gZWwgcmVzdWx0YWRvICdnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXQnLCBvIGFib3J0ZSBsYSBmdXNpw7NuIGNvbiAiCiAiJ2dpdCBub3RlcyBtZXJnZSAtLWFib3J0Jy5cbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg5NworIzogYnVpbHRpbi9ub3Rlcy5jOjg5NyBidWlsdGluL3RhZy5jOjU0NQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAiRmFsbMOzIGFsIHJlc29sdmVyICclcycgY29tbyB1bmEgcmVmIHbDoWxpZGEuIgorCisjOiBidWlsdGluL25vdGVzLmM6OTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9iamVjdCAlcyBoYXMgbm8gbm90ZVxuIgogbXNnc3RyICJFbCBvYmpldG8gJXMgbm8gdGllbmUgbm90YXNcbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjkwOQorIzogYnVpbHRpbi9ub3Rlcy5jOjkxMgogbXNnaWQgImF0dGVtcHQgdG8gcmVtb3ZlIG5vbi1leGlzdGVudCBub3RlIGlzIG5vdCBhbiBlcnJvciIKIG1zZ3N0ciAiaW50ZW50YXIgZWxpbWluYXIgdW5hIG5vdGEgbm8gZXhpc3RlbnRlIG5vIGVzIHVuIGVycm9yIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTEyCisjOiBidWlsdGluL25vdGVzLmM6OTE1CiBtc2dpZCAicmVhZCBvYmplY3QgbmFtZXMgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgImxlZXIgbm9tYnJlcyBkZSBvYmpldG9zIGRlIHN0YW5kYXJkIGlucHV0IgogCi0jOiBidWlsdGluL25vdGVzLmM6OTUwIGJ1aWx0aW4vcHJ1bmUuYzoxMDggYnVpbHRpbi93b3JrdHJlZS5jOjE2NAorIzogYnVpbHRpbi9ub3Rlcy5jOjk1NCBidWlsdGluL3BydW5lLmM6MTMwIGJ1aWx0aW4vd29ya3RyZWUuYzoxNjQKIG1zZ2lkICJkbyBub3QgcmVtb3ZlLCBzaG93IG9ubHkiCiBtc2dzdHIgIm5vIGVsaW1pbmFyLCBzb2xvIG1vc3RyYXIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5NTEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NTUKIG1zZ2lkICJyZXBvcnQgcHJ1bmVkIG5vdGVzIgogbXNnc3RyICJyZXBvcnRhciBub3RhcyByZWNvcnRhZGFzIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTkzCisjOiBidWlsdGluL25vdGVzLmM6OTk4CiBtc2dpZCAibm90ZXMtcmVmIgogbXNnc3RyICJyZWZlcmVuY2lhLWRlLW5vdGFzIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTk0CisjOiBidWlsdGluL25vdGVzLmM6OTk5CiBtc2dpZCAidXNlIG5vdGVzIGZyb20gPG5vdGVzLXJlZj4iCiBtc2dzdHIgInVzYXIgbm90YXMgZGVzZGUgPHJlZmVyZW5jaWEtZGUtbm90YXM+IgogCi0jOiBidWlsdGluL25vdGVzLmM6MTAyOQorIzogYnVpbHRpbi9ub3Rlcy5jOjEwMzQgYnVpbHRpbi9zdGFzaC5jOjE2NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBzdWJjb21tYW5kOiAlcyIKIG1zZ3N0ciAic3ViY29tYW5kbyBkZXNjb25vY2lkbzogJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTIKIG1zZ2lkICIiCiAiZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCBbPG9wdGlvbnM+Li4uXSBbPCA8cmVmLWxpc3Q+IHwgPCA8b2JqZWN0LWxpc3Q+XSIKIG1zZ3N0ciAiIgogImdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgWzxvcGNpb25lcz4uLi5dIFs8IDxsaXN0YS1kZS1yZWY+IHwgPCA8bGlzdGEtZGUtIgogIm9iamV0b3M+XSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1MgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1MwogbXNnaWQgIiIKICJnaXQgcGFjay1vYmplY3RzIFs8b3B0aW9ucz4uLi5dIDxiYXNlLW5hbWU+IFs8IDxyZWYtbGlzdD4gfCA8IDxvYmplY3QtbGlzdD5dIgogbXNnc3RyICIiCiAiZ2l0IHBhY2stb2JqZWN0cyBbPG9wY2lvbmVzPi4uLl0gPG5vbWJyZS1iYXNlPiBbPCA8bGlzdGEtZGUtcmVmcz4gfCA8IDxsaXN0YS0iCiAiZGUtb2JqZXRvcz5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQyMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2tlZCBvYmplY3QgQ1JDIGZvciAlcyIKIG1zZ3N0ciAibWFsIHBhcXVldGUgZGUgb2JqZXRvIENSQyBwYXJhICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQzMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBwYWNrZWQgb2JqZWN0IGZvciAlcyIKIG1zZ3N0ciAib2JqZXRvIGVtcGFxdWV0YWRvIGNvcnJ1cHRvIHBhcmEgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTY0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjU3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWN1cnNpdmUgZGVsdGEgZGV0ZWN0ZWQgZm9yIG9iamVjdCAlcyIKIG1zZ3N0ciAiZGVsdGEgcmVjdXJzaXZvIGVuY29udHJhZG8gcGFyYSBvYmpldG8gJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzc1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJvcmRlcmVkICV1IG9iamVjdHMsIGV4cGVjdGVkICU8UFJJdTMyPiIKIG1zZ3N0ciAiJXUgb2JqZXRvcyBvcmRlbmFkb3MsIGVzcGVyYWRvcyAlPFBSSXUzMj4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzg4Ci0jLCBjLWZvcm1hdAotbXNnaWQgInBhY2tmaWxlIGlzIGludmFsaWQ6ICVzIgotbXNnc3RyICJwYWNrZmlsZSBlcyBpbnbDoWxpZG86ICVzIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc5MgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gb3BlbiBwYWNrZmlsZSBmb3IgcmV1c2U6ICVzIgotbXNnc3RyICJubyBlcyBwb3NpYmxlIGFicmlyIHBhY2tmaWxlIHBhcmEgcmV1c2FyOiAlcyIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3OTYKLW1zZ2lkICJ1bmFibGUgdG8gc2VlayBpbiByZXVzZWQgcGFja2ZpbGUiCi1tc2dzdHIgIm5vIGVzIHBvc2libGUgYnVzY2FyIGVuIGxvcyBwYWNrZmlsZSByZXVzYWRvcyIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4MDcKLW1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmcm9tIHJldXNlZCBwYWNrZmlsZSIKLW1zZ3N0ciAibm8gZXMgcG9zaWJsZSBsZWVyIGRlIHBhY2tmaWxlIHJldXNhZG8iCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODM1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk3MgogbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgcGFja3MgYXJlIHNwbGl0IGR1ZSB0byBwYWNrLnBhY2tTaXplTGltaXQiCiBtc2dzdHIgIiIKICJkZXNoYWJpbGl0YW5kbyBlc2NyaXR1cmEgYml0bWFwLCBwYXF1ZXRlcyBzb24gZGl2aWRpZG9zIGRlYmlkbyBhIHBhY2suIgogInBhY2tTaXplTGltaXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODQ4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk4NQogbXNnaWQgIldyaXRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiRXNjcmliaWVuZG8gb2JqZXRvcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5MTAgYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4OAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMDQ2IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0YXQgJXMiCiBtc2dzdHIgImZhbGzDsyBhbCBpbmljaWFyICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk2MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMDk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIndyb3RlICU8UFJJdTMyPiBvYmplY3RzIHdoaWxlIGV4cGVjdGluZyAlPFBSSXUzMj4iCiBtc2dzdHIgIiU8UFJJdTMyPiBvYmpldG9zIGVzY3JpdG9zIG1pZW50cmFzIHNlIGVzcGVyYWJhbiAlPFBSSXUzMj4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTE1NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMjk3CiBtc2dpZCAiZGlzYWJsaW5nIGJpdG1hcCB3cml0aW5nLCBhcyBzb21lIG9iamVjdHMgYXJlIG5vdCBiZWluZyBwYWNrZWQiCiBtc2dzdHIgIiIKICJkZXNoYWJpbGl0YW5kbyBlc2NyaXR1cmEgYml0bWFwLCB5YSBxdWUgYWxndW5vcyBvYmpldG9zIG5vIGVzdMOhbiBzaWVuZG8gIgogImVtcGFxdWV0YWRvcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTg1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE3MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgb3ZlcmZsb3cgaW4gcGFjayBmb3IgJXMiCiBtc2dzdHIgIm92ZXJmbG93IGRlIG9mZnNldCBlbiBsYSBiYXNlIGRlIGRlbHRhIGVuIHBhcXVldGUgcGFyYSAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTk0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE3MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgb3V0IG9mIGJvdW5kIGZvciAlcyIKIG1zZ3N0ciAib3V0Ym91bmQgZGUgb2Zmc2V0IGVuIGxhIGJhc2UgZGUgZGVsdGEgcGFyYSAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxODYzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwMDQKIG1zZ2lkICJDb3VudGluZyBvYmplY3RzIgogbXNnc3RyICJDb250YW5kbyBvYmpldG9zIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE5OTgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIGdldCBzaXplIG9mICVzIgotbXNnc3RyICJubyBzZSBwdWRvIG9idGVuZXIgZWwgdGFtYcOxbyBkZSAlcyIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDEzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIG9iamVjdCBoZWFkZXIgb2YgJXMiCiBtc2dzdHIgImluY2FwYXogZGUgYW5hbGl6YXIgaGVhZGVyIGRlbCBvYmpldG8gJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA4MyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwOTkKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEwOQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjE5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIzNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBjYW5ub3QgYmUgcmVhZCIKIG1zZ3N0ciAib2JqZXRvICVzIG5vIHB1ZWRlIHNlciBsZcOtZG8iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA4NiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIyMiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGluY29uc2lzdGVudCBvYmplY3QgbGVuZ3RoICglPFBSSXVNQVg+IHZzICU8UFJJdU1BWD4pIgogbXNnc3RyICIiCiAib2JqZXRvICVzIGluY29uc2lzdGVudGUgY29uIGVsIGxhcmdvIGRlbCBvYmpldG8gKCU8UFJJdU1BWD4gdnMgJTxQUkl1TUFYPikiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEyMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjU5CiBtc2dpZCAic3Vib3B0aW1hbCBwYWNrIC0gb3V0IG9mIG1lbW9yeSIKIG1zZ3N0ciAic3Vib3B0aW1hbCBwYWNrIC0gZnVlcmEgZGUgbWVtb3JpYSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNDUxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI1NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsdGEgY29tcHJlc3Npb24gdXNpbmcgdXAgdG8gJWQgdGhyZWFkcyIKIG1zZ3N0ciAiQ29tcHJlc2nDs24gZGVsdGEgdXNhbmRvIGhhc3RhICVkIGhpbG9zIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI1ODMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFjayBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHRhZyAlcyIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBlbXBhcXVldGFyIG9iamV0b3MgYWxjYW56YWJsZXMgZGVzZGUgdGFnICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2NzAKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjgwMQogbXNnaWQgIkNvbXByZXNzaW5nIG9iamVjdHMiCiBtc2dzdHIgIkNvbXByaW1pZW5kbyBvYmpldG9zIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2NzYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjgwNwogbXNnaWQgImluY29uc2lzdGVuY3kgd2l0aCBkZWx0YSBjb3VudCIKIG1zZ3N0ciAiaW5jb25zaXN0ZW5jaWEgY29uIGxhIGN1ZW50YSBkZSBkZWx0YSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzUzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4cGVjdGVkIGVkZ2Ugb2JqZWN0IElELCBnb3QgZ2FyYmFnZTpcbiIKQEAgLTE0MDU2LDcgKzE3MjA1LDcgQEAKICJzZSBlc3BzZXJhYmEgSUQgZGUgb2JqZXRvIGFsIGJvcmRlLCBzZSBvYnR1dm8gYmFzdXJhOlxuIgogIiVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3NTkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg5NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhwZWN0ZWQgb2JqZWN0IElELCBnb3QgZ2FyYmFnZTpcbiIKQEAgLTE0MDY1LDI1MSArMTcyMTQsMjQ3IEBACiAic2UgZXNwZXJhYmEgSUQgZGUgb2JqZXRvLCBzZSBvYnR1dm8gYmFzdXRhOlxuIgogIiVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjk5MgogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yIC0tbWlzc2luZyIKIG1zZ3N0ciAidmFsb3IgaW52w6FsaWRvIHBhcmEgLS1taXNzaW5nIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5MTYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDI0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwNTEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTU5CiBtc2dpZCAiY2Fubm90IG9wZW4gcGFjayBpbmRleCIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgYWJyaXIgw61uZGljZSBkZSBwYXF1ZXRlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTQ3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwODIKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9vc2Ugb2JqZWN0IGF0ICVzIGNvdWxkIG5vdCBiZSBleGFtaW5lZCIKIG1zZ3N0ciAib2JqZXRvIHBlcmRpZG8gZW4gJXMgbm8gcHVkbyBzZXIgZXhhbWluYWRvIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwMzIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE2NwogbXNnaWQgInVuYWJsZSB0byBmb3JjZSBsb29zZSBvYmplY3QiCiBtc2dzdHIgImluY2FwYXogZGUgZm9yemFyIHVuIG9iamV0byBwZXJkaWRvIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMjIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSByZXYgJyVzJyIKIG1zZ3N0ciAibm8gZXMgdW5hIHJldiAnJXMnIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMjUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcmV2aXNpb24gJyVzJyIKIG1zZ3N0ciAibWFsYSByZXZpc2nDs24gJyVzJyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTUwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODgKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIHJlY2VudCBvYmplY3RzIgogbXNnc3RyICJpbmNhcGF6IGRlIGHDsWFkaXIgb2JqZXRvcyByZWNpZW50ZXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIwMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuc3VwcG9ydGVkIGluZGV4IHZlcnNpb24gJXMiCiBtc2dzdHIgInZlcnNpw7NuIGRlIMOtbmRpY2Ugbm8gc29wb3J0YWRhICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMDcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgaW5kZXggdmVyc2lvbiAnJXMnIgogbXNnc3RyICJtYWxhIHZlcnNpw7NuIGRlbCDDrW5kaWNlICclcyciCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIzNwotbXNnaWQgImRvIG5vdCBzaG93IHByb2dyZXNzIG1ldGVyIgotbXNnc3RyICJubyBtb3N0cmFyIG1lZGlkb3IgZGUgcHJvZ3Jlc28iCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIzOQotbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIiCi1tc2dzdHIgIm1vc3RyYXIgbWVkaWRvciBkZSBwcm9ncmVzbyIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQxCi1tc2dpZCAic2hvdyBwcm9ncmVzcyBtZXRlciBkdXJpbmcgb2JqZWN0IHdyaXRpbmcgcGhhc2UiCi1tc2dzdHIgIm1vc3RyYXIgbWVkaWRvciBkZSBwcm9ncmVzbyBkdXJhbnRlIGxhIGZhc2UgZGUgZXNjcml0dXJhIGRlIG9iamV0byIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQ0Ci1tc2dpZCAic2ltaWxhciB0byAtLWFsbC1wcm9ncmVzcyB3aGVuIHByb2dyZXNzIG1ldGVyIGlzIHNob3duIgotbXNnc3RyICJzaW1pbGFyIGEgLS1hbGwtcHJvZ3Jlc3MgY3VhbmRvIG1lZGlkb3IgZGUgcHJvZ3Jlc28gZXMgbW9zdHJhZG8iCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzgzCiBtc2dpZCAiPHZlcnNpb24+Wyw8b2Zmc2V0Pl0iCiBtc2dzdHIgIjx2ZXJzacOzbj5bLDxvZmZzZXQ+XSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQ2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODQKIG1zZ2lkICJ3cml0ZSB0aGUgcGFjayBpbmRleCBmaWxlIGluIHRoZSBzcGVjaWZpZWQgaWR4IGZvcm1hdCB2ZXJzaW9uIgogbXNnc3RyICIiCiAiZXNjcmliaXIgZWwgw61uZGljZSBkZSBwYXF1ZXRlIGVuIGxhIHZlcnNpw7NuIGRlIGZvcm1hdG8gaWR4IGVzcGVjaWZpY2FkbyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQ5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODcKIG1zZ2lkICJtYXhpbXVtIHNpemUgb2YgZWFjaCBvdXRwdXQgcGFjayBmaWxlIgogbXNnc3RyICJ0YW1hw7FvIG3DoXhpbW8gZGUgY2FkYSBwYXF1ZXRlIHJlc3VsdGFudGUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzg5CiBtc2dpZCAiaWdub3JlIGJvcnJvd2VkIG9iamVjdHMgZnJvbSBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlIgogbXNnc3RyICJpZ25vcmFyIG9iamV0b3MgcHJlc3RhZG9zIGRlIG90cm9zIGFsbWFjZW5lcyBkZSBvYmpldG9zIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5MQogbXNnaWQgImlnbm9yZSBwYWNrZWQgb2JqZWN0cyIKIG1zZ3N0ciAiaWdub3JhciBvYmpldG9zIHBhcXVldGUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzkzCiBtc2dpZCAibGltaXQgcGFjayB3aW5kb3cgYnkgb2JqZWN0cyIKIG1zZ3N0ciAibGltaXRhciB2ZW50YW5hIGRlIHBhcXVldGUgcG9yIG9iamV0b3MiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk1CiBtc2dpZCAibGltaXQgcGFjayB3aW5kb3cgYnkgbWVtb3J5IGluIGFkZGl0aW9uIHRvIG9iamVjdCBsaW1pdCIKIG1zZ3N0ciAibGltaXRhciB2ZW50YW5hIGRlIHBhcXVldGUgcG9yIG1lbW9yaWEgZW4gYWRpY2nDs24gYSBsw61taXRlIGRlIG9iamV0b3MiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk3CiBtc2dpZCAibWF4aW11bSBsZW5ndGggb2YgZGVsdGEgY2hhaW4gYWxsb3dlZCBpbiB0aGUgcmVzdWx0aW5nIHBhY2siCiBtc2dzdHIgImxvbmdpdHVkIG3DoXhpbWEgZGUgY2FkZW5hIGRlbHRhIHBlcm1pdGlkYSBlbiBlbCBwYXF1ZXRlIHJlc3VsdGFudGUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk5CiBtc2dpZCAicmV1c2UgZXhpc3RpbmcgZGVsdGFzIgogbXNnc3RyICJyZXVzYXIgZGVsdGFzIGV4aXN0ZW50ZXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAxCiBtc2dpZCAicmV1c2UgZXhpc3Rpbmcgb2JqZWN0cyIKIG1zZ3N0ciAicmV1dGlsaXphciBvYmpldG9zIGV4aXN0ZW50ZXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAzCiBtc2dpZCAidXNlIE9GU19ERUxUQSBvYmplY3RzIgogbXNnc3RyICJ1c2FyIG9iamV0b3MgT0ZTX0RFTFRBIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwNQogbXNnaWQgInVzZSB0aHJlYWRzIHdoZW4gc2VhcmNoaW5nIGZvciBiZXN0IGRlbHRhIG1hdGNoZXMiCiBtc2dzdHIgInVzYXIgaGlsb3MgY3VhbmRvIHNlIGJ1c3F1ZSBwYXJhIG1lam9yZXMgY29uY29yZGFuY2lhcyBkZSBkZWx0YSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjY5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDcKIG1zZ2lkICJkbyBub3QgY3JlYXRlIGFuIGVtcHR5IHBhY2sgb3V0cHV0IgogbXNnc3RyICJubyBjcmVhciB1biBwYXF1ZXRlIHJlc3VsdGFudGUgdmFjw61vIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwOQogbXNnaWQgInJlYWQgcmV2aXNpb24gYXJndW1lbnRzIGZyb20gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgImxlZXIgYXJndW1lbnRvcyBkZSByZXZpc2nDs24gZGUgc3RhbmRhcmQgaW5wdXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDExCiBtc2dpZCAibGltaXQgdGhlIG9iamVjdHMgdG8gdGhvc2UgdGhhdCBhcmUgbm90IHlldCBwYWNrZWQiCiBtc2dzdHIgImxpbWl0YXIgbG9zIG9iamV0b3MgYSBhcXVlbGxvcyBxdWUgbm8gaGFuIHNpZG8gZW1wYXF1ZXRhZG9zIHRvZGF2w61hIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNAogbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWFjaGFibGUgZnJvbSBhbnkgcmVmZXJlbmNlIgogbXNnc3RyICJpbmNsdWlyIG9iamV0b3MgYWxjYW56YWJsZXMgcG9yIGN1YWxxdWllciByZWZlcmVuY2lhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNwogbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWZlcnJlZCBieSByZWZsb2cgZW50cmllcyIKIG1zZ3N0ciAiaW5jbHVpciBvYmpldG9zIHJlZmVyaWRvcyBwb3IgZW50cmFkYXMgZGUgcmVmbG9nIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyMAogbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWZlcnJlZCB0byBieSB0aGUgaW5kZXgiCiBtc2dzdHIgImluY2x1aXIgb2JqZXRvcyByZWZlcmlkb3MgcG9yIGVsIMOtbmRpY2UiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDIzCiBtc2dpZCAib3V0cHV0IHBhY2sgdG8gc3Rkb3V0IgogbXNnc3RyICJtb3N0cmFyIHBhcXVldGUgZW4gc3Rkb3V0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyNQogbXNnaWQgImluY2x1ZGUgdGFnIG9iamVjdHMgdGhhdCByZWZlciB0byBvYmplY3RzIHRvIGJlIHBhY2tlZCIKIG1zZ3N0ciAiaW5jbHVpciBvYmpldG9zIHRhZyBxdWUgcmVmaWVyZW4gYSBvYmpldG9zIGEgc2VyIGVtcGFxdWV0YWRvcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjcKIG1zZ2lkICJrZWVwIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgIm1hbnRlbmVyIG9iamV0b3MgaW5hbGNhbnphYmxlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjkKIG1zZ2lkICJwYWNrIGxvb3NlIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgImVtcGFxdWV0YXIgb2JqZXRvcyBzdWVsdG9zIGluYWxjYW56YWJsZXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDMxCiBtc2dpZCAidW5wYWNrIHVucmVhY2hhYmxlIG9iamVjdHMgbmV3ZXIgdGhhbiA8dGltZT4iCiBtc2dzdHIgImRlc2VtcGFxdWV0YXIgb2JqZXRvcyBpbmFsY2FuemFibGVzIG3DoXMgbnVldm9zIHF1ZSA8dGllbXBvPiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzQKK21zZ2lkICJ1c2UgdGhlIHNwYXJzZSByZWFjaGFiaWxpdHkgYWxnb3JpdGhtIgorbXNnc3RyICJ1c2FyIGVsIGFsZ29yaXRtbyBzcGFyc2UgcmVhY2hhYmlsaXR5IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzYKIG1zZ2lkICJjcmVhdGUgdGhpbiBwYWNrcyIKIG1zZ3N0ciAiY3JlYXIgcGFxdWV0ZXMgZGVsZ2Fkb3MiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5OAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDM4CiBtc2dpZCAiY3JlYXRlIHBhY2tzIHN1aXRhYmxlIGZvciBzaGFsbG93IGZldGNoZXMiCiBtc2dzdHIgImNyZWFyIHBhcXVldGVzIGFkZWN1YWRvcyBwYXJhIGZldGNoZXMgc3VwZXJmaWNpYWxlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDAKIG1zZ2lkICJpZ25vcmUgcGFja3MgdGhhdCBoYXZlIGNvbXBhbmlvbiAua2VlcCBmaWxlIgogbXNnc3RyICJpZ25vcmFyIHBhcXVldGVzIHF1ZSB0aWVuZW4gdW4gYXJjaGl2byAua2VlcCBhY29tcGHDsWFudGUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQyCiBtc2dpZCAiaWdub3JlIHRoaXMgcGFjayIKIG1zZ3N0ciAiaWdub3JhciBlc3RlIHBhcXVldGUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwNAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQ0CiBtc2dpZCAicGFjayBjb21wcmVzc2lvbiBsZXZlbCIKIG1zZ3N0ciAibml2ZWwgZGUgY29tcHJlc2nDs24gZGVsIHBhcXVldGUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwNgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQ2CiBtc2dpZCAiZG8gbm90IGhpZGUgY29tbWl0cyBieSBncmFmdHMiCiBtc2dzdHIgIm5vIG9jdWx0YXIgY29tbWl0cyBwb3IgaW5qZXJ0b3MiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwOAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQ4CiBtc2dpZCAidXNlIGEgYml0bWFwIGluZGV4IGlmIGF2YWlsYWJsZSB0byBzcGVlZCB1cCBjb3VudGluZyBvYmplY3RzIgogbXNnc3RyICIiCiAidXNhciB1biDDrW5kaWNlIGJpdG1hcCBzaSBlc3TDoSBkaXNwb25pYmxlIHBhcmEgYWNlbGVyYXIgbGEgY3VlbnRhIGRlIG9iamV0b3MiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxMAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDUwCiBtc2dpZCAid3JpdGUgYSBiaXRtYXAgaW5kZXggdG9nZXRoZXIgd2l0aCB0aGUgcGFjayBpbmRleCIKIG1zZ3N0ciAiZXNjcmliaXIgdW4gw61uZGljZSBkZSBiaXRtYXAganVudG8gYWwgw61uZGljZSBkZSBwYXF1ZXRlIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ1NAorbXNnaWQgIndyaXRlIGEgYml0bWFwIGluZGV4IGlmIHBvc3NpYmxlIgorbXNnc3RyICJlc2NyaWJpciB1biDDrW5kaWNlIGRlIGJpdG1hcCBzaSBlcyBwb3NpYmxlIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTgKIG1zZ2lkICJoYW5kbGluZyBmb3IgbWlzc2luZyBvYmplY3RzIgogbXNnc3RyICJtYW5lam8gZGUgb2JqZXRvcyBwZXJkaWRvcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzE2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NjEKIG1zZ2lkICJkbyBub3QgcGFjayBvYmplY3RzIGluIHByb21pc29yIHBhY2tmaWxlcyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgZW1wYXF1ZXRhciBvYmpldG9zIGVuIHBhY2tmaWxlcyBwcm9taXNvcmVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ2MwogbXNnaWQgInJlc3BlY3QgaXNsYW5kcyBkdXJpbmcgZGVsdGEgY29tcHJlc3Npb24iCiBtc2dzdHIgInJlc3BldGFyIGlzbGFzIGR1cmFudGUgbGEgY29tcHJlc2nDs24gZGVsdGEiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0MgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbHRhIGNoYWluIGRlcHRoICVkIGlzIHRvbyBkZWVwLCBmb3JjaW5nICVkIgogbXNnc3RyICJwcm9mdW5kaWRhZCBkZSBjYWRlbmEgZGUgZGVsdGEgJWQgZXMgbXV5IHByb2Z1bmRhLCBmb3J6YW5kbyAlZCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQ3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjay5kZWx0YUNhY2hlTGltaXQgaXMgdG9vIGhpZ2gsIGZvcmNpbmcgJWQiCiBtc2dzdHIgInBhY2suZGVsdGFDYWNoZUxpbWl0IGVzIG11eSBncmFuZGUsIGZvcnphbmRvICVkIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1MQogbXNnaWQgIi0tbWF4LXBhY2stc2l6ZSBjYW5ub3QgYmUgdXNlZCB0byBidWlsZCBhIHBhY2sgZm9yIHRyYW5zZmVyIgogbXNnc3RyICIiCiAiLS1tYXgtcGFjay1zaXplIG5vIHB1ZWRlIHNlciB1c2FkbyBwYXJhIGNvbnN0cnVpciB1biBwYXF1ZXRlIHBhcmEgIgogInRyYW5zZmVyZW5jaWEiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTUzCiBtc2dpZCAibWluaW11bSBwYWNrIHNpemUgbGltaXQgaXMgMSBNaUIiCiBtc2dzdHIgInRhbWHDsW8gbcOtbmltbyBkZWwgcGFxdWV0ZSBlcyAxIE1pQiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NTgKIG1zZ2lkICItLXRoaW4gY2Fubm90IGJlIHVzZWQgdG8gYnVpbGQgYW4gaW5kZXhhYmxlIHBhY2siCiBtc2dzdHIgIi0tdGhpbiBubyBwdWVkZSBzZXIgdXNhZG8gcGFyYSBjb25zdHJ1aXIgdW4gcGFxdWV0ZSBpbmRleGFibGUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxMQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTYxCiBtc2dpZCAiLS1rZWVwLXVucmVhY2hhYmxlIGFuZCAtLXVucGFjay11bnJlYWNoYWJsZSBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWtlZXAtdW5yZWFjaGFibGUgeSAtLXVucGFjay11bnJlYWNoYWJsZSBzb24gaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDE3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NjcKIG1zZ2lkICJjYW5ub3QgdXNlIC0tZmlsdGVyIHdpdGhvdXQgLS1zdGRvdXQiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIHVzYXItLWZpbHRlciBzaW4gLS1zdGRvdXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ3NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNjI3CiBtc2dpZCAiRW51bWVyYXRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiRW51bWVyYW5kbyBvYmpldG9zIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzY1NwogIywgYy1mb3JtYXQKLW1zZ2lkICJUb3RhbCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHJldXNlZCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPikiCi1tc2dzdHIgIlRvdGFsICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcmV1c2FkbyAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPikiCittc2dpZCAiIgorIlRvdGFsICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcmV1c2VkICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcGFjay0iCisicmV1c2VkICU8UFJJdTMyPiIKK21zZ3N0ciAiIgorIlRvdGFsICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcmV1c2FkbyAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHBhY2stIgorInJldXNhZG8gJTxQUkl1MzI+IgogCi0jOiBidWlsdGluL3BhY2stcmVmcy5jOjcKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6OAogbXNnaWQgImdpdCBwYWNrLXJlZnMgWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCBwYWNrLXJlZnMgWzxvcGNpb25lcz5dIgogCi0jOiBidWlsdGluL3BhY2stcmVmcy5jOjE1CisjOiBidWlsdGluL3BhY2stcmVmcy5jOjE2CiBtc2dpZCAicGFjayBldmVyeXRoaW5nIgogbXNnc3RyICJlbXBhcXVldGFyIHRvZG8iCiAKLSM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTcKIG1zZ2lkICJwcnVuZSBsb29zZSByZWZzIChkZWZhdWx0KSIKIG1zZ3N0ciAicmVjb3J0YXIgcmVmcyBwZXJkaWRvcyAoZGVmYXVsdCkiCiAKQEAgLTE0MzI1LDgyICsxNzQ3MCw4MiBAQAogbXNnaWQgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGltZT5dIFstLV0gWzxoZWFkPi4uLl0iCiBtc2dzdHIgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGllbXBvPl0gWy0tXSBbPGhlYWQ+Li4uXSIKIAotIzogYnVpbHRpbi9wcnVuZS5jOjEwOQorIzogYnVpbHRpbi9wcnVuZS5jOjEzMQogbXNnaWQgInJlcG9ydCBwcnVuZWQgb2JqZWN0cyIKIG1zZ3N0ciAicmVwb3J0YXIgb2JqZXRvcyByZWNvcnRhZG9zIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTEyCisjOiBidWlsdGluL3BydW5lLmM6MTM0CiBtc2dpZCAiZXhwaXJlIG9iamVjdHMgb2xkZXIgdGhhbiA8dGltZT4iCiBtc2dzdHIgImV4cGlyYXIgb2JqZXRvcyBtw6FzIHZpZWpvcyBhIDx0aWVtcG8+IgogCi0jOiBidWlsdGluL3BydW5lLmM6MTE0CisjOiBidWlsdGluL3BydW5lLmM6MTM2CiBtc2dpZCAibGltaXQgdHJhdmVyc2FsIHRvIG9iamVjdHMgb3V0c2lkZSBwcm9taXNvciBwYWNrZmlsZXMiCiBtc2dzdHIgImxpbWl0YXIgZWwgcmVjb3JyaWRvIGEgb2JqZXRvcyBmdWVyYSBkZSBsb3MgcGFxdWV0ZXMgZGVsIHByb21pc29yIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTI5CisjOiBidWlsdGluL3BydW5lLmM6MTUwCiBtc2dpZCAiY2Fubm90IHBydW5lIGluIGEgcHJlY2lvdXMtb2JqZWN0cyByZXBvIgogbXNnc3RyICJubyBzZSBwdWVkZSByZWNvcnRhciBlbiB1biByZXBvc2l0b3JpbyBkZSBvYmpldG9zLXByZWNpb3NvcyIKIAotIzogYnVpbHRpbi9wdWxsLmM6NjAgYnVpbHRpbi9wdWxsLmM6NjIKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ1IGJ1aWx0aW4vcHVsbC5jOjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yICVzOiAlcyIKIG1zZ3N0ciAiVmFsb3IgaW52w6FsaWRvIHBhcmEgJXM6ICVzIgogCi0jOiBidWlsdGluL3B1bGwuYzo4MgorIzogYnVpbHRpbi9wdWxsLmM6NjcKIG1zZ2lkICJnaXQgcHVsbCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKIG1zZ3N0ciAiIgogImdpdCBwdWxsIFs8b3BjaW9uZXM+XSBbPHJlcG9zaXRvcmlvPiBbPGVzcGVjaWZpY2FjacOzbi1kZS1yZWZlcmVuY2lhPi4uLl1dIgogCi0jOiBidWlsdGluL3B1bGwuYzoxMzMKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyMgogbXNnaWQgImNvbnRyb2wgZm9yIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIgogbXNnc3RyICJjb250cm9sIGRlIGZldGNoIHJlY3Vyc2l2byBlbiBzdWJtw7NkdWxvcyIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTM3CisjOiBidWlsdGluL3B1bGwuYzoxMjYKIG1zZ2lkICJPcHRpb25zIHJlbGF0ZWQgdG8gbWVyZ2luZyIKIG1zZ3N0ciAiT3BjaW9uZXMgcmVsYWNpb25hZGFzIGEgZnVzacOzbiIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTQwCisjOiBidWlsdGluL3B1bGwuYzoxMjkKIG1zZ2lkICJpbmNvcnBvcmF0ZSBjaGFuZ2VzIGJ5IHJlYmFzaW5nIHJhdGhlciB0aGFuIG1lcmdpbmciCiBtc2dzdHIgImluY29ycG9yYXIgY2FtYmlvcyBwb3IgcmViYXNlIGVuIGx1Z2FyIGRlIGZ1c2nDs24iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE2NyBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNDcgYnVpbHRpbi9yZXZlcnQuYzoxMjIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE1NyBidWlsdGluL3JlYmFzZS5jOjQ3MSBidWlsdGluL3JldmVydC5jOjEyNgogbXNnaWQgImFsbG93IGZhc3QtZm9yd2FyZCIKIG1zZ3N0ciAicGVybWl0aXIgZmFzdC1mb3J3YXJkIgogCi0jOiBidWlsdGluL3B1bGwuYzoxNzYKKyM6IGJ1aWx0aW4vcHVsbC5jOjE2NgogbXNnaWQgImF1dG9tYXRpY2FsbHkgc3Rhc2gvc3Rhc2ggcG9wIGJlZm9yZSBhbmQgYWZ0ZXIgcmViYXNlIgogbXNnc3RyICJlamVjdXRhciBhdXRvbcOhdGljYW1lbnRlIHN0YXNoL3N0YXNoIHBvcCBhbnRlcyB5IGRlc3B1w6lzIGRlIHJlYmFzZSIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTkyCisjOiBidWlsdGluL3B1bGwuYzoxODIKIG1zZ2lkICJPcHRpb25zIHJlbGF0ZWQgdG8gZmV0Y2hpbmciCiBtc2dzdHIgIk9wY2lvbmVzIHJlbGFjaW9uYWRhcyBhIGZldGNoIgogCi0jOiBidWlsdGluL3B1bGwuYzoyMDIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE5MgogbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBsb2NhbCBicmFuY2giCiBtc2dzdHIgImZvcnphciBzb2JyZXNjcml0dXJhIGRlIGxhIHJhbWEgbG9jYWwiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjIxMAorIzogYnVpbHRpbi9wdWxsLmM6MjAwCiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgcHVsbGVkIGluIHBhcmFsbGVsIgogbXNnc3RyICJuw7ptZXJvIGRlIHN1Ym3Ds2R1bG9zIHF1ZSByZWFsaXphbiBwdWxsIGVuIHBhcmFsZWxvIgogCi0jOiBidWlsdGluL3B1bGwuYzozMDUKKyM6IGJ1aWx0aW4vcHVsbC5jOjMwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciBwdWxsLmZmOiAlcyIKIG1zZ3N0ciAiVmFsb3IgaW52w6FsaWRvIHBhcmEgcHVsbC5mZjogJXMiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyMQorIzogYnVpbHRpbi9wdWxsLmM6NDI2CiBtc2dpZCAiIgogIlRoZXJlIGlzIG5vIGNhbmRpZGF0ZSBmb3IgcmViYXNpbmcgYWdhaW5zdCBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0ICIKICJmZXRjaGVkLiIKIG1zZ3N0ciAiTm8gaGF5IGNhbmRpZGF0byBwYXJhIHJlYmFzYXIgZW50cmUgbGFzIHJlZnMgcXVlIGhhcyBiYWphZG8gY29uIGZldGNoLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDIzCisjOiBidWlsdGluL3B1bGwuYzo0MjgKIG1zZ2lkICIiCiAiVGhlcmUgYXJlIG5vIGNhbmRpZGF0ZXMgZm9yIG1lcmdpbmcgYW1vbmcgdGhlIHJlZnMgdGhhdCB5b3UganVzdCBmZXRjaGVkLiIKIG1zZ3N0ciAiIgogIk5vIGhheSBjYW5kaWRhdG9zIHBhcmEgZnVzaW9uYXIgZW50cmUgbGFzIHJlZnMgcXVlIGhhcyBiYWphZG8gY29uIGZldGNoLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDI0CisjOiBidWlsdGluL3B1bGwuYzo0MjkKIG1zZ2lkICIiCiAiR2VuZXJhbGx5IHRoaXMgbWVhbnMgdGhhdCB5b3UgcHJvdmlkZWQgYSB3aWxkY2FyZCByZWZzcGVjIHdoaWNoIGhhZCBub1xuIgogIm1hdGNoZXMgb24gdGhlIHJlbW90ZSBlbmQuIgpAQCAtMTQ0MDksNyArMTc1NTQsNyBAQAogInRpZW5lXG4iCiAiY29uY29yZGFuY2lhIGVuIGVsIGZpbmFsIHJlbW90by4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyNworIzogYnVpbHRpbi9wdWxsLmM6NDMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXNrZWQgdG8gcHVsbCBmcm9tIHRoZSByZW1vdGUgJyVzJywgYnV0IGRpZCBub3Qgc3BlY2lmeVxuIgpAQCAtMTQ0MjAsNDQgKzE3NTY1LDQ0IEBACiAidW5hIHJhbWEuIFBvcnF1ZSBlc3RlIG5vIGVzIGVsIHJlbW90byBjb25maWd1cmFkbyBwb3IgZGVmYXVsdFxuIgogInBhcmEgdHUgcmFtYSBhY3R1YWwsIHRpZW5lcyBxdWUgZXNwZWNpZmljYXIgdW5hIHJhbWEgZW4gbGEgbMOtbmVhIGRlIGNvbWFuZG8uIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzIgYnVpbHRpbi9yZWJhc2UuYzo3NjEgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3MworIzogYnVpbHRpbi9wdWxsLmM6NDM3IGJ1aWx0aW4vcmViYXNlLmM6MTQwOSBnaXQtcGFyc2UtcmVtb3RlLnNoOjczCiBtc2dpZCAiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLiIKIG1zZ3N0ciAiTm8gdGUgZW5jdWVudHJhcyBhY3R1YWxtZW50ZSBlbiBsYSByYW1hLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM0IGJ1aWx0aW4vcHVsbC5jOjQ0OSBnaXQtcGFyc2UtcmVtb3RlLnNoOjc5CisjOiBidWlsdGluL3B1bGwuYzo0MzkgYnVpbHRpbi9wdWxsLmM6NDU0IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzkKIG1zZ2lkICJQbGVhc2Ugc3BlY2lmeSB3aGljaCBicmFuY2ggeW91IHdhbnQgdG8gcmViYXNlIGFnYWluc3QuIgogbXNnc3RyICJQb3IgZmF2b3IgZXNwZWNpZmljYSBhIHF1w6kgcmFtYSBxdWllcmVzIHJlYmFzYXIuIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzYgYnVpbHRpbi9wdWxsLmM6NDUxIGdpdC1wYXJzZS1yZW1vdGUuc2g6ODIKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0MSBidWlsdGluL3B1bGwuYzo0NTYgZ2l0LXBhcnNlLXJlbW90ZS5zaDo4MgogbXNnaWQgIlBsZWFzZSBzcGVjaWZ5IHdoaWNoIGJyYW5jaCB5b3Ugd2FudCB0byBtZXJnZSB3aXRoLiIKIG1zZ3N0ciAiUG9yIGZhdm9yIGVzcGVjaWZpY2EgYSBxdcOpIHJhbWEgcXVpZXJlcyBmdXNpb25hci4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzNyBidWlsdGluL3B1bGwuYzo0NTIKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0MiBidWlsdGluL3B1bGwuYzo0NTcKIG1zZ2lkICJTZWUgZ2l0LXB1bGwoMSkgZm9yIGRldGFpbHMuIgogbXNnc3RyICJWZXIgZ2l0LXB1bGwoMSkgcGFyYSBkZXRhbGxlcy4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NDUgYnVpbHRpbi9wdWxsLmM6NDU0Ci0jOiBidWlsdGluL3JlYmFzZS5jOjc2NyBnaXQtcGFyc2UtcmVtb3RlLnNoOjY0CisjOiBidWlsdGluL3B1bGwuYzo0NDQgYnVpbHRpbi9wdWxsLmM6NDUwIGJ1aWx0aW4vcHVsbC5jOjQ1OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE1IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjQKIG1zZ2lkICI8cmVtb3RlPiIKIG1zZ3N0ciAiPHJlbW90bz4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NTQgYnVpbHRpbi9wdWxsLmM6NDU5Ci0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1NTYgZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NQorIzogYnVpbHRpbi9wdWxsLmM6NDQ0IGJ1aWx0aW4vcHVsbC5jOjQ1OSBidWlsdGluL3B1bGwuYzo0NjQKKyM6IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjUKIG1zZ2lkICI8YnJhbmNoPiIKIG1zZ3N0ciAiPHJhbWE+IgogCi0jOiBidWlsdGluL3B1bGwuYzo0NDcgYnVpbHRpbi9yZWJhc2UuYzo3NTkgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3NQorIzogYnVpbHRpbi9wdWxsLmM6NDUyIGJ1aWx0aW4vcmViYXNlLmM6MTQwNyBnaXQtcGFyc2UtcmVtb3RlLnNoOjc1CiBtc2dpZCAiVGhlcmUgaXMgbm8gdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoZSBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgIk5vIGhheSBpbmZvcm1hY2nDs24gZGUgcmFzdHJlbyBwYXJhIGxhIHJhbWEgYWN0dWFsLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDU2IGdpdC1wYXJzZS1yZW1vdGUuc2g6OTUKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ2MSBnaXQtcGFyc2UtcmVtb3RlLnNoOjk1CiBtc2dpZCAiIgogIklmIHlvdSB3aXNoIHRvIHNldCB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhpcyBicmFuY2ggeW91IGNhbiBkbyBzbyB3aXRoOiIKIG1zZ3N0ciAiIgogIlNpIGRlc2VhcyBjb25maWd1cmFyIGVsIHJhc3RyZW8gZGUgaW5mb3JtYWNpw7NuIHBhcmEgZXN0YSByYW1hLCBwdWVkZXMgIgogImhhY2VybG8gY29uOiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDYxCisjOiBidWlsdGluL3B1bGwuYzo0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgY29uZmlndXJhdGlvbiBzcGVjaWZpZXMgdG8gbWVyZ2Ugd2l0aCB0aGUgcmVmICclcydcbiIKQEAgLTE0NDY2LDMyICsxNzYxMSwzMiBAQAogIlR1IGNvbmZpZ3VyYWNpw7NuIGVzcGVjaWZpY2EgZnVzaW9uYXIgY29uIGxhIHJlZiAnJXMnXG4iCiAiZGUgdHUgcmVtb3RvLCBwZXJvIG5vIHNlIHB1ZG8gaGFjZXIgZmV0Y2ggYSBlc2EgcmVmLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NTY1CisjOiBidWlsdGluL3B1bGwuYzo1NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBjb21taXQgJXMiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgYWNjZWRlciBhbCBjb21taXQgJXMiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg0MworIzogYnVpbHRpbi9wdWxsLmM6ODU3CiBtc2dpZCAiaWdub3JpbmcgLS12ZXJpZnktc2lnbmF0dXJlcyBmb3IgcmViYXNlIgogbXNnc3RyICJpZ25vcmFuZG8gLS12ZXJpZnktc2lnbmF0dXJlcyBwYXJhIHJlYmFzZSIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODkxCisjOiBidWlsdGluL3B1bGwuYzo5MTIKIG1zZ2lkICItLVtuby1dYXV0b3N0YXNoIG9wdGlvbiBpcyBvbmx5IHZhbGlkIHdpdGggLS1yZWJhc2UuIgogbXNnc3RyICJMYSBvcGNpw7NuIC0tW25vLV1hdXRvc3Rhc2ggc8OzbG8gZXMgdsOhbGlkYSBjb24gLS1yZWJhc2UuIgogCi0jOiBidWlsdGluL3B1bGwuYzo4OTkKKyM6IGJ1aWx0aW4vcHVsbC5jOjkyMAogbXNnaWQgIlVwZGF0aW5nIGFuIHVuYm9ybiBicmFuY2ggd2l0aCBjaGFuZ2VzIGFkZGVkIHRvIHRoZSBpbmRleC4iCiBtc2dzdHIgIkFjdHVhbGl6YW5kbyB1bmEgcmFtYSBubyBuYXRhIGNvbiBjYW1iaW9zIGFncmVnYWRvcyBhbCDDrW5kaWNlLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTAyCisjOiBidWlsdGluL3B1bGwuYzo5MjQKIG1zZ2lkICJwdWxsIHdpdGggcmViYXNlIgogbXNnc3RyICJwdWxsIGNvbiByZWJhc2UiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjkwMworIzogYnVpbHRpbi9wdWxsLmM6OTI1CiBtc2dpZCAicGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKIG1zZ3N0ciAicG9yIGZhdm9yIHJlYWxpemEgdW4gY29tbWl0IG8gdW4gc3Rhc2ggY29uIGVsbG9zLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTI4CisjOiBidWlsdGluL3B1bGwuYzo5NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImZldGNoIHVwZGF0ZWQgdGhlIGN1cnJlbnQgYnJhbmNoIGhlYWQuXG4iCkBAIC0xNDUwMiw3ICsxNzY0Nyw3IEBACiAicmVhbGl6YW5kbyBmYXN0LWZvcndhcmQgYWwgw6FyYm9sIGRlIHRyYWJham9cbiIKICJkZXNkZSBjb21taXQgJXMuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MzQKKyM6IGJ1aWx0aW4vcHVsbC5jOjk1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IGZhc3QtZm9yd2FyZCB5b3VyIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTE0NTE5LDE1ICsxNzY2NCwxNSBAQAogIiQgZ2l0IHJlc2V0IC0taGFyZFxuIgogInBhcmEgcmVjdXBlcmFyLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTQ5CisjOiBidWlsdGluL3B1bGwuYzo5NzEKIG1zZ2lkICJDYW5ub3QgbWVyZ2UgbXVsdGlwbGUgYnJhbmNoZXMgaW50byBlbXB0eSBoZWFkLiIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgZnVzaW9uYXIgbcO6bHRpcGxlcyByYW1hcyBlbiB1biBoZWFkIHZhY8Otby4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjk1MworIzogYnVpbHRpbi9wdWxsLmM6OTc1CiBtc2dpZCAiQ2Fubm90IHJlYmFzZSBvbnRvIG11bHRpcGxlIGJyYW5jaGVzLiIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgcmViYXNhciBlbiBtw7psdGlwbGVzIHJhbWFzLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTYwCisjOiBidWlsdGluL3B1bGwuYzo5ODIKIG1zZ2lkICJjYW5ub3QgcmViYXNlIHdpdGggbG9jYWxseSByZWNvcmRlZCBzdWJtb2R1bGUgbW9kaWZpY2F0aW9ucyIKIG1zZ3N0ciAiIgogIm5vIHNlIHB1ZWRlIHJlYmFzYXIgY29uIG1vZGlmaWNhY2lvbmVzIGRlIHN1Ym3Ds2R1bG9zIGdyYWJhZGFzIGxvY2FsbWVudGUiCkBAIC0xNDUzNywxNSArMTc2ODIsMTUgQEAKIG1zZ3N0ciAiIgogImdpdCBwdXNoIFs8b3BjaW9uZXM+XSBbPHJlcG9zaXRvcmlvPiBbPGVzcGVjaWZpY2FjaW9uZXMtZGUtcmVmZXJlbmNpYT4uLi5dXSIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTExCisjOiBidWlsdGluL3B1c2guYzoxMTIKIG1zZ2lkICJ0YWcgc2hvcnRoYW5kIHdpdGhvdXQgPHRhZz4iCiBtc2dzdHIgInRhcXVpZ3JhZsOtYSBkZSB0YWcgc2luIDx0YWc+IgogCi0jOiBidWlsdGluL3B1c2guYzoxMjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjEyMgogbXNnaWQgIi0tZGVsZXRlIG9ubHkgYWNjZXB0cyBwbGFpbiB0YXJnZXQgcmVmIG5hbWVzIgogbXNnc3RyICItLWRlbGV0ZSBzb2xvIGFjZXB0YSBjb21vIG9iamV0aXZvcyBub21icmVzIGRlIHJlZiBwbGFub3MiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE2NQorIzogYnVpbHRpbi9wdXNoLmM6MTY4CiBtc2dpZCAiIgogIlxuIgogIlRvIGNob29zZSBlaXRoZXIgb3B0aW9uIHBlcm1hbmVudGx5LCBzZWUgcHVzaC5kZWZhdWx0IGluICdnaXQgaGVscCBjb25maWcnLiIKQEAgLTE0NTU0LDcgKzE3Njk5LDcgQEAKICJQYXJhIGVsZWdpciBzaSBsYSBvcGNpw7NuIGVzIHBlcm1hbmVudGUsIG1pcmEgcHVzaC5kZWZhdWx0IGVuICdnaXQgaGVscCAiCiAiY29uZmlnJy4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE2OAorIzogYnVpbHRpbi9wdXNoLmM6MTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgdXBzdHJlYW0gYnJhbmNoIG9mIHlvdXIgY3VycmVudCBicmFuY2ggZG9lcyBub3QgbWF0Y2hcbiIKQEAgLTE0NTc5LDcgKzE3NzI0LDcgQEAKICIgICAgZ2l0IHB1c2ggJXMgSEVBRFxuIgogIiVzIgogCi0jOiBidWlsdGluL3B1c2guYzoxODMKKyM6IGJ1aWx0aW4vcHVzaC5jOjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLlxuIgpAQCAtMTQ1OTQsNyArMTc3MzksNyBAQAogIlxuIgogIlx0Z2l0IHB1c2ggJXMgSEVBRDo8bm9tYnJlLWRlLXJhbWEtcmVtb3RhPlxuIgogCi0jOiBidWlsdGluL3B1c2guYzoxOTcKKyM6IGJ1aWx0aW4vcHVzaC5jOjIwMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGN1cnJlbnQgYnJhbmNoICVzIGhhcyBubyB1cHN0cmVhbSBicmFuY2guXG4iCkBAIC0xNDYwOCwyOSArMTc3NTMsMjkgQEAKICJcbiIKICJcdGdpdCBwdXNoIC0tc2V0LXVwc3RyZWFtICVzICVzXG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjIwNQorIzogYnVpbHRpbi9wdXNoLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBjdXJyZW50IGJyYW5jaCAlcyBoYXMgbXVsdGlwbGUgdXBzdHJlYW0gYnJhbmNoZXMsIHJlZnVzaW5nIHRvIHB1c2guIgogbXNnc3RyICJMYSByYW1hIGFjdHVhbCAlcyB0aWVuZSBtw7psdGlwbGVzIHJhbWFzIHVwc3RyZWFtLCByZWNoYXphbmRvIGVsIHB1c2guIgogCi0jOiBidWlsdGluL3B1c2guYzoyMDgKKyM6IGJ1aWx0aW4vcHVzaC5jOjIxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFyZSBwdXNoaW5nIHRvIHJlbW90ZSAnJXMnLCB3aGljaCBpcyBub3QgdGhlIHVwc3RyZWFtIG9mXG4iCiAieW91ciBjdXJyZW50IGJyYW5jaCAnJXMnLCB3aXRob3V0IHRlbGxpbmcgbWUgd2hhdCB0byBwdXNoXG4iCiAidG8gdXBkYXRlIHdoaWNoIHJlbW90ZSBicmFuY2guIgogbXNnc3RyICIiCi0iRXN0w6EgaGFjaWVuZG8gdW4gcHVzaCBhbCByZW1vdG8gJyVzJywgZWwgY3VhbCBubyBlcyBlbCB1cHN0cmVhbSBkZVxuIgotInN1IHJhbWEgYWN0dWFsICclcycsIHNpbiBkZWNpcm1lIHF1w6kgcG9uZXIgZW4gZWwgcHVzaFxuIgorIkVzdMOhcyBoYWNpZW5kbyB1biBwdXNoIGFsIHJlbW90byAnJXMnLCBlbCBjdWFsIG5vIGVzIGVsIHVwc3RyZWFtIGRlXG4iCisibGEgcmFtYSBhY3R1YWwgJyVzJywgc2luIGRlY2lybWUgcXXDqSBwb25lciBlbiBlbCBwdXNoXG4iCiAicGFyYSBhY3R1YWxpemFyIGVuIHF1w6kgcmFtYSBkZSByZW1vdG8uIgogCi0jOiBidWlsdGluL3B1c2guYzoyNjcKKyM6IGJ1aWx0aW4vcHVzaC5jOjI3MAogbXNnaWQgIiIKICJZb3UgZGlkbid0IHNwZWNpZnkgYW55IHJlZnNwZWNzIHRvIHB1c2gsIGFuZCBwdXNoLmRlZmF1bHQgaXMgXCJub3RoaW5nXCIuIgogbXNnc3RyICIiCiAiTm8gc2UgZXNwZWNpZmljw7MgbmluZ8O6biByZWZzcGVjcyBwYXJhIGhhY2VyIHB1c2gsIHkgcHVzaC5kZWZhdWx0IGVzIFwibmFkYVwiLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mjc0CisjOiBidWlsdGluL3B1c2guYzoyNzcKIG1zZ2lkICIiCiAiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHRpcCBvZiB5b3VyIGN1cnJlbnQgYnJhbmNoIGlzIGJlaGluZFxuIgogIml0cyByZW1vdGUgY291bnRlcnBhcnQuIEludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXMgKGUuZy5cbiIKQEAgLTE0NjQwLDkgKzE3Nzg1LDkgQEAKICJBY3R1YWxpemFjaW9uZXMgZnVlcm9uIHJlY2hhemFkYXMgcG9ycXVlIGxhIHB1bnRhIGRlIHR1IHJhbWEgYWN0dWFsIGVzdMOhXG4iCiAiZGV0csOhcyBkZSBzdSBjb250cmFwYXJ0ZSByZW1vdGEuIEludGVncmEgbG9zIGNhbWJpb3MgcmVtb3RvcyAoZXMgZGVjaXJcbiIKICInZ2l0IHB1bGwgLi4uJykgYW50ZXMgZGUgaGFjZXIgcHVzaCBkZSBudWV2by5cbiIKLSJNaXJhICdOb3RlIGFib3V0IGZhc3QtZm9yd2FyZHMnIGVuICdnaXQgcHVzaCAtLWhlbHAnIHBhcmEgbWFzIGRldGFsbGVzLiIKKyJNaXJhICdOb3RlIGFib3V0IGZhc3QtZm9yd2FyZHMnIGVuICdnaXQgcHVzaCAtLWhlbHAnIHBhcmEgbcOhcyBkZXRhbGxlcy4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI4MAorIzogYnVpbHRpbi9wdXNoLmM6MjgzCiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIGEgcHVzaGVkIGJyYW5jaCB0aXAgaXMgYmVoaW5kIGl0cyByZW1vdGVcbiIKICJjb3VudGVycGFydC4gQ2hlY2sgb3V0IHRoaXMgYnJhbmNoIGFuZCBpbnRlZ3JhdGUgdGhlIHJlbW90ZSBjaGFuZ2VzXG4iCkBAIC0xNDY1NSw3ICsxNzgwMCw3IEBACiAiKGVqZW0uICdnaXQgcHVsbCAuLi4nKSBhbnRlcyBkZSB2b2x2ZXIgYSBoYWNlciBwdXNoLlxuIgogIlZlYSBsYXMgJ05vdGVzIGFib3V0IGZhc3QtZm9yd2FyZHMnIGVuICdnaXQgcHVzaCAtLWhlbHAnIHBhcmEgbcOhcyBkZXRhbGxlcy4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI4NgorIzogYnVpbHRpbi9wdXNoLmM6Mjg5CiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSByZW1vdGUgY29udGFpbnMgd29yayB0aGF0IHlvdSBkb1xuIgogIm5vdCBoYXZlIGxvY2FsbHkuIFRoaXMgaXMgdXN1YWxseSBjYXVzZWQgYnkgYW5vdGhlciByZXBvc2l0b3J5IHB1c2hpbmdcbiIKQEAgLTE0NjY5LDM3ICsxNzgxNCwxMTQgQEAKICJyZW1vdG9zIChlai4gJ2dpdCBwdWxsIC4uLicpIGFudGVzIGRlIHZvbHZlciBhIGhhY2VyIHB1c2guXG4iCiAiVmVhICdOb3RlcyBhYm91dCBmYXN0LWZvcndhcmRzMCBlbiAnZ2l0IHB1c2ggLS1oZWxwJyBwYXJhIGRldGFsbGVzLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjkzCisjOiBidWlsdGluL3B1c2guYzoyOTYKIG1zZ2lkICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgdGFnIGFscmVhZHkgZXhpc3RzIGluIHRoZSByZW1vdGUuIgogbXNnc3RyICIiCiAiQWN0dWFsaXphY2lvbmVzIGZ1ZXJvbiByZWNoYXphZGFzIHBvcnF1ZSBlbCB0YWcgeWEgZXhpc3RlIGVuIGVsIHJlbW90by4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI5NgorIzogYnVpbHRpbi9wdXNoLmM6Mjk5CiBtc2dpZCAiIgogIllvdSBjYW5ub3QgdXBkYXRlIGEgcmVtb3RlIHJlZiB0aGF0IHBvaW50cyBhdCBhIG5vbi1jb21taXQgb2JqZWN0LFxuIgogIm9yIHVwZGF0ZSBhIHJlbW90ZSByZWYgdG8gbWFrZSBpdCBwb2ludCBhdCBhIG5vbi1jb21taXQgb2JqZWN0LFxuIgogIndpdGhvdXQgdXNpbmcgdGhlICctLWZvcmNlJyBvcHRpb24uXG4iCiBtc2dzdHIgIiIKLSJObyBwdWVkZSBhY3R1YWxpemFyIHVuIHJlZiByZW1vdG8gcXVlIGFwdW50YSBhIHVuIG9iamV0byBuby1jb21taXQsXG4iCisiTm8gc2UgcHVlZGUgYWN0dWFsaXphciB1biByZWYgcmVtb3RvIHF1ZSBhcHVudGEgYSB1biBvYmpldG8gbm8tY29tbWl0LFxuIgogIm8gYWN0dWFsaXphciB1biByZWYgcmVtb3RvIHBhcmEgaGFjZXIgcXVlICBhcHVudGUgYSB1biBvYmpldG8gbm8tY29tbWl0LFxuIgogInNpbiB1c2FyIGxhIG9wY2nDs24gJy0tZm9yY2UnLlxuIgogCi0jOiBidWlsdGluL3B1c2guYzozNTcKKyM6IGJ1aWx0aW4vcHVzaC5jOjM2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJQdXNoaW5nIHRvICVzXG4iCiBtc2dzdHIgIkhhY2llbmRvIHB1c2ggYSAlc1xuIgogCi0jOiBidWlsdGluL3B1c2guYzozNjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjM2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcHVzaCBzb21lIHJlZnMgdG8gJyVzJyIKIG1zZ3N0ciAiZmFsbMOzIGVsIHB1c2ggZGUgYWxndW5hcyByZWZlcmVuY2lhcyBhICclcyciCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM5NQorIzogYnVpbHRpbi9wdXNoLmM6NTQyCittc2dpZCAicmVwb3NpdG9yeSIKK21zZ3N0ciAicmVwb3NpdG9yaW8iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0MyBidWlsdGluL3NlbmQtcGFjay5jOjE2NAorbXNnaWQgInB1c2ggYWxsIHJlZnMiCittc2dzdHIgInJlYWxpemFyIHB1c2ggYSB0b2RhcyBsYXMgcmVmcyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ0IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY2Cittc2dpZCAibWlycm9yIGFsbCByZWZzIgorbXNnc3RyICJyZWFsaXphciBtaXJyb3IgYSB0b2RhcyBsYXMgcmVmcyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ2Cittc2dpZCAiZGVsZXRlIHJlZnMiCittc2dzdHIgImJvcnJhciByZWZzIgorCisjOiBidWlsdGluL3B1c2guYzo1NDcKK21zZ2lkICJwdXNoIHRhZ3MgKGNhbid0IGJlIHVzZWQgd2l0aCAtLWFsbCBvciAtLW1pcnJvcikiCittc2dzdHIgInJlYWxpemFyIHB1c2ggYSB0YWdzIChubyBwdWVkZSBzZXIgdXNhZG8gY29uIC0tYWxsIG8gLS1taXJyb3IpIgorCisjOiBidWlsdGluL3B1c2guYzo1NTAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjcKK21zZ2lkICJmb3JjZSB1cGRhdGVzIgorbXNnc3RyICJmb3J6YXIgYWN0dWFsaXphY2lvbmVzIgorCisjOiBidWlsdGluL3B1c2guYzo1NTIgYnVpbHRpbi9zZW5kLXBhY2suYzoxODEKK21zZ2lkICI8cmVmbmFtZT46PGV4cGVjdD4iCittc2dzdHIgIjxyZWZuYW1lPjo8ZXhwZWN0PiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUzIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgyCittc2dpZCAicmVxdWlyZSBvbGQgdmFsdWUgb2YgcmVmIHRvIGJlIGF0IHRoaXMgdmFsdWUiCittc2dzdHIgInJlcXVpZXJlIGhhYmVyIHZhbG9yIHZpZWpvIGRlIHJlZiBlbiBlc3RlIHZhbG9yIgorCisjOiBidWlsdGluL3B1c2guYzo1NTYKK21zZ2lkICJjb250cm9sIHJlY3Vyc2l2ZSBwdXNoaW5nIG9mIHN1Ym1vZHVsZXMiCittc2dzdHIgImNvbnRyb2xhciBwdXNoIHJlY3Vyc2l2byBkZSBzdWJtw7NkdWxvcyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU4IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc1Cittc2dpZCAidXNlIHRoaW4gcGFjayIKK21zZ3N0ciAidXNhciBlbXBhcXVldGFkbyBkZWxnYWRvIgorCisjOiBidWlsdGluL3B1c2guYzo1NTkgYnVpbHRpbi9wdXNoLmM6NTYwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYxCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE2MgorbXNnaWQgInJlY2VpdmUgcGFjayBwcm9ncmFtIgorbXNnc3RyICJyZWNpYmlyIHByb2dyYW1hIGRlIHBhcXVldGUiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2MQorbXNnaWQgInNldCB1cHN0cmVhbSBmb3IgZ2l0IHB1bGwvc3RhdHVzIgorbXNnc3RyICJjb25maWd1cmFyIHVwc3RyZWFtIHBhcmEgZ2l0IHB1bGxsL3N0YXR1cyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTY0Cittc2dpZCAicHJ1bmUgbG9jYWxseSByZW1vdmVkIHJlZnMiCittc2dzdHIgInJlY29ydGFuZG8gcmVmcyBlbGltaW5hZGFzIGxvY2FsbWVudGUiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2NgorbXNnaWQgImJ5cGFzcyBwcmUtcHVzaCBob29rIgorbXNnc3RyICJoYWNlciB1biBieXBhc3MgYWwgaG9vayBwcmUtcHVzaCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTY3Cittc2dpZCAicHVzaCBtaXNzaW5nIGJ1dCByZWxldmFudCB0YWdzIgorbXNnc3RyICJyZWFsaXphciBwdXNoIGRlIHRhZ3MgZmFsdGFudGVzIHBlcm8gcmVsZXZhbnRlcyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY5Cittc2dpZCAiR1BHIHNpZ24gdGhlIHB1c2giCittc2dzdHIgIkZpcm1hciBjb24gR1BHIGVsIHB1c2giCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3MiBidWlsdGluL3NlbmQtcGFjay5jOjE3NgorbXNnaWQgInJlcXVlc3QgYXRvbWljIHRyYW5zYWN0aW9uIG9uIHJlbW90ZSBzaWRlIgorbXNnc3RyICJzb2xpY2l0YXIgdHJhbnNhY2Npw7NuIGF0w7NtaWNhIGVuIGVsIGxhZG8gcmVtb3RvIgorCisjOiBidWlsdGluL3B1c2guYzo1OTAKK21zZ2lkICItLWRlbGV0ZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1taXJyb3IgYW5kIC0tdGFncyIKK21zZ3N0ciAiLS1kZWxldGUgZXMgaW5jb21wYXRpYmxlIGNvbiAtLWFsbCwgLS1taXJyb3IgeSAtLXRhZ3MiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU5MgorbXNnaWQgIi0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSB3aXRob3V0IGFueSByZWZzIgorbXNnc3RyICItLWRlbGV0ZSBubyB0aWVuZSBzZW50aWRvIHNpbiBuaW5ndW5hIHJlZmVyZW5jaWEiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjYxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcmVwb3NpdG9yeSAnJXMnIgogbXNnc3RyICJtYWwgcmVwb3NpdG9yaW8gJyVzJyIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mzk2CisjOiBidWlsdGluL3B1c2guYzo2MTMKIG1zZ2lkICIiCiAiTm8gY29uZmlndXJlZCBwdXNoIGRlc3RpbmF0aW9uLlxuIgogIkVpdGhlciBzcGVjaWZ5IHRoZSBVUkwgZnJvbSB0aGUgY29tbWFuZC1saW5lIG9yIGNvbmZpZ3VyZSBhIHJlbW90ZSAiCkBAIC0xNDcyMSwxMDQgKzE3OTQzLDI3IEBACiAiXG4iCiAiICAgIGdpdCBwdXNoIDxub21icmU+XG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU1MQotbXNnaWQgInJlcG9zaXRvcnkiCi1tc2dzdHIgInJlcG9zaXRvcmlvIgotCi0jOiBidWlsdGluL3B1c2guYzo1NTIgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjQKLW1zZ2lkICJwdXNoIGFsbCByZWZzIgotbXNnc3RyICJyZWFsaXphciBwdXNoIGEgdG9kYXMgbGFzIHJlZnMiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1MyBidWlsdGluL3NlbmQtcGFjay5jOjE2NgotbXNnaWQgIm1pcnJvciBhbGwgcmVmcyIKLW1zZ3N0ciAicmVhbGl6YXIgbWlycm9yIGEgdG9kYXMgbGFzIHJlZnMiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1NQotbXNnaWQgImRlbGV0ZSByZWZzIgotbXNnc3RyICJib3JyYXIgcmVmcyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTU2Ci1tc2dpZCAicHVzaCB0YWdzIChjYW4ndCBiZSB1c2VkIHdpdGggLS1hbGwgb3IgLS1taXJyb3IpIgotbXNnc3RyICJyZWFsaXphciBwdXNoIGEgdGFncyAobm8gcHVlZGUgc2VyIHVzYWRvIGNvbiAtLWFsbCBvIC0tbWlycm9yKSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTU5IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY3Ci1tc2dpZCAiZm9yY2UgdXBkYXRlcyIKLW1zZ3N0ciAiZm9yemFyIGFjdHVhbGl6YWNpb25lcyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTYxIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgxCi1tc2dpZCAiPHJlZm5hbWU+OjxleHBlY3Q+IgotbXNnc3RyICI8cmVmbmFtZT46PGV4cGVjdD4iCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2MiBidWlsdGluL3NlbmQtcGFjay5jOjE4MgotbXNnaWQgInJlcXVpcmUgb2xkIHZhbHVlIG9mIHJlZiB0byBiZSBhdCB0aGlzIHZhbHVlIgotbXNnc3RyICJyZXF1aWVyZSBoYWJlciB2YWxvciB2aWVqbyBkZSByZWYgZW4gZXN0ZSB2YWxvciIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTY1Ci1tc2dpZCAiY29udHJvbCByZWN1cnNpdmUgcHVzaGluZyBvZiBzdWJtb2R1bGVzIgotbXNnc3RyICJjb250cm9sYXIgcHVzaCByZWN1cnNpdm8gZGUgc3VibcOzZHVsb3MiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2NyBidWlsdGluL3NlbmQtcGFjay5jOjE3NQotbXNnaWQgInVzZSB0aGluIHBhY2siCi1tc2dzdHIgInVzYXIgZW1wYXF1ZXRhZG8gZGVsZ2FkbyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTY4IGJ1aWx0aW4vcHVzaC5jOjU2OSBidWlsdGluL3NlbmQtcGFjay5jOjE2MQotIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNjIKLW1zZ2lkICJyZWNlaXZlIHBhY2sgcHJvZ3JhbSIKLW1zZ3N0ciAicmVjaWJpciBwcm9ncmFtYSBkZSBwYXF1ZXRlIgotCi0jOiBidWlsdGluL3B1c2guYzo1NzAKLW1zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL3N0YXR1cyIKLW1zZ3N0ciAiY29uZmlndXJhciB1cHN0cmVhbSBwYXJhIGdpdCBwdWxsbC9zdGF0dXMiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3MwotbXNnaWQgInBydW5lIGxvY2FsbHkgcmVtb3ZlZCByZWZzIgotbXNnc3RyICJyZWNvcnRhbmRvIHJlZnMgcmVtb3ZpZGFzIGxvY2FsbWVudGUiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3NQotbXNnaWQgImJ5cGFzcyBwcmUtcHVzaCBob29rIgotbXNnc3RyICJoYWNlciB1biBieXBhc3MgYWwgaG9vayBwcmUtcHVzaCIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTc2Ci1tc2dpZCAicHVzaCBtaXNzaW5nIGJ1dCByZWxldmFudCB0YWdzIgotbXNnc3RyICJyZWFsaXphciBwdXNoIGRlIHRhZ3MgZmFsdGFudGVzIHBlcm8gcmVsZXZhbnRlcyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTc5IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY5Ci1tc2dpZCAiR1BHIHNpZ24gdGhlIHB1c2giCi1tc2dzdHIgIkZpcm1hciBjb24gR1BHIGVsIHB1c2giCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU4MSBidWlsdGluL3NlbmQtcGFjay5jOjE3NgotbXNnaWQgInJlcXVlc3QgYXRvbWljIHRyYW5zYWN0aW9uIG9uIHJlbW90ZSBzaWRlIgotbXNnc3RyICJzb2xpY2l0YXIgdHJhbnNhY2Npw7NuIGF0w7NtaWNhIGVuIGVsIGxhZG8gcmVtb3RvIgotCi0jOiBidWlsdGluL3B1c2guYzo1OTkKLW1zZ2lkICItLWRlbGV0ZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1taXJyb3IgYW5kIC0tdGFncyIKLW1zZ3N0ciAiLS1kZWxldGUgZXMgaW5jb21wYXRpYmxlIGNvbiAtLWFsbCwgLS1taXJyb3IgeSAtLXRhZ3MiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjYwMQotbXNnaWQgIi0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSB3aXRob3V0IGFueSByZWZzIgotbXNnc3RyICItLWRlbGV0ZSBubyB0aWVuZSBzZW50aWRvIHNpbiBuaW5ndW5hIHJlZmVyZW5jaWEiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjYwNAorIzogYnVpbHRpbi9wdXNoLmM6NjI4CiBtc2dpZCAiLS1hbGwgYW5kIC0tdGFncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWFsbCB5IC0tdGFncyBzb24gaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjA2CisjOiBidWlsdGluL3B1c2guYzo2MzAKIG1zZ2lkICItLWFsbCBjYW4ndCBiZSBjb21iaW5lZCB3aXRoIHJlZnNwZWNzIgogbXNnc3RyICItLWFsbCBubyBwdWVkZSBzZXIgY29tYmluYWRhIGNvbiByZWZzcGVjcyIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjEwCisjOiBidWlsdGluL3B1c2guYzo2MzQKIG1zZ2lkICItLW1pcnJvciBhbmQgLS10YWdzIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0tbWlycm9yIHkgLS10YWdzIHNvbiBpbmNvbXBhdGlibGVzIgogCi0jOiBidWlsdGluL3B1c2guYzo2MTIKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzNgogbXNnaWQgIi0tbWlycm9yIGNhbid0IGJlIGNvbWJpbmVkIHdpdGggcmVmc3BlY3MiCiBtc2dzdHIgIi0tbWlycm9yIG5vIHB1ZWRlIHNlciBjb21iaW5hZG8gY29uIHJlZnNwZWNzIgogCi0jOiBidWlsdGluL3B1c2guYzo2MTUKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzOQogbXNnaWQgIi0tYWxsIGFuZCAtLW1pcnJvciBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWFsbCB5IC0tbWlycm9yIHNvbiBpbmNvbXBhdGlibGVzIgogCi0jOiBidWlsdGluL3B1c2guYzo2MzQKKyM6IGJ1aWx0aW4vcHVzaC5jOjY0MwogbXNnaWQgInB1c2ggb3B0aW9ucyBtdXN0IG5vdCBoYXZlIG5ldyBsaW5lIGNoYXJhY3RlcnMiCiBtc2dzdHIgIm9wY2lvbmVzIGRlIHB1c2ggbm8gcHVlZGVuIHRlbmVyIGNhcmFjdGVyZXMgZGUgbMOtbmVhIG51ZXZhIgogCkBAIC0xNDgzNiwyOCArMTc5ODEsMzYgQEAKIG1zZ2lkICJnaXQgcmFuZ2UtZGlmZiBbPG9wdGlvbnM+XSA8YmFzZT4gPG9sZC10aXA+IDxuZXctdGlwPiIKIG1zZ3N0ciAiZ2l0IHJhbmdlLWRpZmYgWzxvcGNpb25lcz5dIDxiYXNlPiA8cHVudGEtdmllamE+IDxwdW50YS1udWV2YT4iCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjIxCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyMgogbXNnaWQgIlBlcmNlbnRhZ2UgYnkgd2hpY2ggY3JlYXRpb24gaXMgd2VpZ2h0ZWQiCiBtc2dzdHIgIlBvcmNlbnRhamUgcG9yIGVsIGN1YWwgbGEgY3JlYWNpw7NuIGVzIHBlc2FkYSIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjMKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI0CiBtc2dpZCAidXNlIHNpbXBsZSBkaWZmIGNvbG9ycyIKIG1zZ3N0ciAidXNhciBjb2xvcmVzIHNpbXBsZXMgZGUgZGlmZiIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjEgYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjUKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI2Cittc2dpZCAibm90ZXMiCittc2dzdHIgIm5vdGFzIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyNgorbXNnaWQgInBhc3NlZCB0byAnZ2l0IGxvZyciCittc2dzdHIgInBhc2FkbyBhICdnaXQgbG9nJyIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NTAgYnVpbHRpbi9yYW5nZS1kaWZmLmM6NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gLi4gaW4gcmFuZ2U6ICclcyciCiBtc2dzdHIgIm5vIC4uIGVuIHJhbmdvOiAnJXMnIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo3NQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjQKIG1zZ2lkICJzaW5nbGUgYXJnIGZvcm1hdCBtdXN0IGJlIHN5bW1ldHJpYyByYW5nZSIKIG1zZ3N0ciAiYXJndW1lbnRvIMO6bmljbyBkZSBmb3JtYXRvIGRlYmUgc2VyIHVuIHJhbmdvIHNpbcOpdHJpY28iCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjkwCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo3OQogbXNnaWQgIm5lZWQgdHdvIGNvbW1pdCByYW5nZXMiCiBtc2dzdHIgInNlIG5lY2VzaXRhbiBkb3MgcmFuZ29zIGRlIGNvbW1pdHMiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6NDAKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6NDEKIG1zZ2lkICIiCiAiZ2l0IHJlYWQtdHJlZSBbKC1tIFstLXRyaXZpYWxdIFstLWFnZ3Jlc3NpdmVdIHwgLS1yZXNldCB8IC0tcHJlZml4PTxwcmVmaXg+KSAiCiAiWy11IFstLWV4Y2x1ZGUtcGVyLWRpcmVjdG9yeT08Z2l0aWdub3JlPl0gfCAtaV1dIFstLW5vLXNwYXJzZS1jaGVja291dF0gWy0tIgpAQCAtMTQ4NjgsMTE5ICsxODAyMSwyOTcgQEAKICJzcGFyc2UtY2hlY2tvdXRdIFstLWluZGV4LW91dHB1dD08YXJjaGl2bz5dICgtLWVtcHR5IHwgPMOhcmJvbC1pc21vMT4gWzzDoXJib2wtIgogImlzbW8yPiBbPMOhcmJvbC1pc21vMz5dXSkiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTIzCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNAogbXNnaWQgIndyaXRlIHJlc3VsdGluZyBpbmRleCB0byA8ZmlsZT4iCiBtc2dzdHIgImVzY3JpYmlyIMOtbmRpY2UgcmVzdWx0YW50ZSBlbiA8YXJjaGl2bz4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI2CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNwogbXNnaWQgIm9ubHkgZW1wdHkgdGhlIGluZGV4IgogbXNnc3RyICJzb2xvIHZhY2lhciBlbCDDrW5kaWNlIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyOAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjkKIG1zZ2lkICJNZXJnaW5nIgogbXNnc3RyICJGdXNpb25hbmRvIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzEKIG1zZ2lkICJwZXJmb3JtIGEgbWVyZ2UgaW4gYWRkaXRpb24gdG8gYSByZWFkIgogbXNnc3RyICJyZWFsaXphciB1biBtZXJnZSBlbiBhZGljacOzbiBhIHVuYSBsZWN0dXJhIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMgorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzMKIG1zZ2lkICIzLXdheSBtZXJnZSBpZiBubyBmaWxlIGxldmVsIG1lcmdpbmcgcmVxdWlyZWQiCiBtc2dzdHIgImZ1c2nDs24gZGUgMy12w61hcyBzaSBubyBzZSByZXF1aWVyZSBuaW5ndW5hIGZ1c2nDs24gYSBuaXZlbCBkZSBhcmNoaXZvIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzUKIG1zZ2lkICIzLXdheSBtZXJnZSBpbiBwcmVzZW5jZSBvZiBhZGRzIGFuZCByZW1vdmVzIgogbXNnc3RyICJmdXNpw7NuIGVuIDMtdsOtYXMgZW4gcHJlc2VuY2lhIGRlIGFkaWNpb25lcyB5IHJlbW9jaW9uZXMiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM2CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNwogbXNnaWQgInNhbWUgYXMgLW0sIGJ1dCBkaXNjYXJkIHVubWVyZ2VkIGVudHJpZXMiCiBtc2dzdHIgImlndWFsIHF1ZSAtbSwgcGVybyBkZXNjYXJ0YSBlbnRyYWRhcyBzaW4gZnVzaW9uYXIiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM3CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzOAogbXNnaWQgIjxzdWJkaXJlY3Rvcnk+LyIKIG1zZ3N0ciAiPHN1YmRpcmVjdG9yaW8+LyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzgKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM5CiBtc2dpZCAicmVhZCB0aGUgdHJlZSBpbnRvIHRoZSBpbmRleCB1bmRlciA8c3ViZGlyZWN0b3J5Pi8iCiBtc2dzdHIgImxlYSBlbCDDoXJib2wgZW4gZWwgw61uZGljZSBiYWpvIDxzdWJkaXJlY3RvcmlvPi8iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQxCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0MgogbXNnaWQgInVwZGF0ZSB3b3JraW5nIHRyZWUgd2l0aCBtZXJnZSByZXN1bHQiCiBtc2dzdHIgImFjdHVhbGl6YSBlbCDDoXJib2wgZGUgdHJhYmFqbyBjb24gZWwgcmVzdWx0YWRvIGRlIGxhIGZ1c2nDs24iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQzCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NAogbXNnaWQgImdpdGlnbm9yZSIKIG1zZ3N0ciAiZ2l0aWdub3JlIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDUKIG1zZ2lkICJhbGxvdyBleHBsaWNpdGx5IGlnbm9yZWQgZmlsZXMgdG8gYmUgb3ZlcndyaXR0ZW4iCiBtc2dzdHIgInBlcm1pdGlyIHNvYnJlc2NyaXR1cmEgZGUgYXJjaGl2b3MgZXhwbMOtY2l0YW1lbnRlIGlnbm9yYWRvcyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDcKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ4CiBtc2dpZCAiZG9uJ3QgY2hlY2sgdGhlIHdvcmtpbmcgdHJlZSBhZnRlciBtZXJnaW5nIgogbXNnc3RyICJubyByZXZpc2FyIGVsIMOhcmJvbCBkZSB0cmFiYWpvIHRyYXMgZnVzaW9uYXIiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ4CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0OQogbXNnaWQgImRvbid0IHVwZGF0ZSB0aGUgaW5kZXggb3IgdGhlIHdvcmsgdHJlZSIKIG1zZ3N0ciAibm8gYWN0dWFsaXphciBlbCDDrW5kaWNlIG8gZWwgw6FyYm9sIGRlIHRyYWJham8iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUwCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MQogbXNnaWQgInNraXAgYXBwbHlpbmcgc3BhcnNlIGNoZWNrb3V0IGZpbHRlciIKIG1zZ3N0ciAic2FsdGFyIGFwbGljYWRvIGRlIGZpbHRybyBkZSBzcGFyc2UgY2hlY2tvdXQiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUyCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MwogbXNnaWQgImRlYnVnIHVucGFjay10cmVlcyIKIG1zZ3N0ciAiZGVidWcgZGUgw6FyYm9sZXMtZGVzZW1wYWNhZG9zIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjI5Ci1tc2dpZCAiIgotImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dIFs8dXBzdHJlYW0+XSAiCi0iWzxicmFuY2g+XSIKLW1zZ3N0ciAiIgotImdpdCByZWJhc2UgWy1pXSBbb3BjaW9uZXNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+XSBbPHVwc3RyZWFtPl0gIgotIls8YnJhbmNoPl0iCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1NworbXNnaWQgInN1cHByZXNzIGZlZWRiYWNrIG1lc3NhZ2VzIgorbXNnc3RyICJzdXByaW1pciBtZW5zYWplcyBkZSBmZWVkYmFjayIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzozMQorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxODgKK21zZ2lkICJZb3UgbmVlZCB0byByZXNvbHZlIHlvdXIgY3VycmVudCBpbmRleCBmaXJzdCIKK21zZ3N0ciAiTmVjZXNpdGFzIHJlc29sdmVyIHR1IMOtbmRpY2UgYWN0dWFsIHByaW1lcm8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzIKK21zZ2lkICIiCisiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPiB8IC0ta2VlcC1iYXNlXSAiCisiWzx1cHN0cmVhbT4gWzxicmFuY2g+XV0iCittc2dzdHIgIiIKKyJnaXQgcmViYXNlIFstaV0gW29wY2lvbmVzXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPiB8IC0ta2VlcC1iYXNlXSAiCisiWzx1cHN0cmVhbT4gWzxicmFuY2g+XV0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzQKIG1zZ2lkICIiCiAiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPl0gLS1yb290IFs8YnJhbmNoPl0iCiBtc2dzdHIgIiIKICJnaXQgcmViYXNlIFstaV0gW29wY2lvbmVzXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPl0gLS1yb290WzxyYW1hPl0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MzMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzYKIG1zZ2lkICJnaXQgcmViYXNlIC0tY29udGludWUgfCAtLWFib3J0IHwgLS1za2lwIHwgLS1lZGl0LXRvZG8iCiBtc2dzdHIgImdpdCByZWJhc2UgLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXAgfCAtLWVkaXQtdG9kbyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTc1IGJ1aWx0aW4vcmViYXNlLmM6MTk5IGJ1aWx0aW4vcmViYXNlLmM6MjI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIKK21zZ3N0ciAibGlzdGEgZGUgcGVuZGllbnRlcyBpbnV0aWxpemFibGU6ICclcyciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5ICVzIgorbXNnc3RyICJubyBzZSBwdWRvIGNyZWFyIGFyY2hpdm8gdGVtcG9yYWwgJXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6Mjk4Cittc2dpZCAiY291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCittc2dzdHIgIm5vIHNlIHB1ZG8gbWFyY2FyIGNvbW8gaW50ZXJhY3Rpdm8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzUyCittc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIHRvZG8gbGlzdCIKK21zZ3N0ciAibm8gc2UgcHVkbyBnZW5lcmFyIGxpc3RhIGRlIHBlbmRpZW50ZXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzkxCittc2dpZCAiYSBiYXNlIGNvbW1pdCBtdXN0IGJlIHByb3ZpZGVkIHdpdGggLS11cHN0cmVhbSBvciAtLW9udG8iCittc2dzdHIgInVuIGNvbW1pdCBiYXNlIHRpZW5lIHF1ZSBzZXIgcHJvdmlzdG8gY29uIC0tdXBzdHJlYW0gbyAtLW9udG8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDYxCittc2dpZCAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFs8b3BjaW9uZXM+XSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NzQgYnVpbHRpbi9yZWJhc2UuYzoxNTUwCittc2dpZCAiKERFUFJFQ0FURUQpIGtlZXAgZW1wdHkgY29tbWl0cyIKK21zZ3N0ciAiKERFUFJFQ0FETykgbWFudGVuZXIgY29tbWl0cyB2YWPDrW9zIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ3OCBidWlsdGluL3JldmVydC5jOjEyOAorbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKK21zZ3N0ciAicGVybWl0aXIgY29tbWl0cyBjb24gbWVuc2FqZXMgdmFjw61vcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODAKK21zZ2lkICJyZWJhc2UgbWVyZ2UgY29tbWl0cyIKK21zZ3N0ciAicmViYXNhbmRvIGNvbW1pdHMgZGUgZnVzacOzbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODIKK21zZ2lkICJrZWVwIG9yaWdpbmFsIGJyYW5jaCBwb2ludHMgb2YgY291c2lucyIKK21zZ3N0ciAibWFudGVuZXIgcHVudG9zIG9yaWdpbmFsZXMgZGUgbGEgcmFtYSBkZSBzdXMgcHJpbW9zIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4NAorbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEiCittc2dzdHIgIm1vdmVyIGNvbW1pdHMgcXVlIGNvbWllbnphbiBjb24gc3F1YXNoIS9maXh1cCEiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg1Cittc2dpZCAic2lnbiBjb21taXRzIgorbXNnc3RyICJmaXJtYXIgY29tbWl0cyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODcgYnVpbHRpbi9yZWJhc2UuYzoxNDkwCittc2dpZCAiZGlzcGxheSBhIGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKK21zZ3N0ciAibW9zdHJhciB1biBkaWZmc3RhdCBkZSBsbyBxdWUgY2FtYmnDsyBlbiB1cHN0cmVhbSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODkKK21zZ2lkICJjb250aW51ZSByZWJhc2UiCittc2dzdHIgImNvbnRpbnVhciByZWJhc2UiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDkxCittc2dpZCAic2tpcCBjb21taXQiCittc2dzdHIgInNhbHRhciBjb21taXQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDkyCittc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICJlZGl0YXIgbGEgbGlzdGEgZGUgcGVuZGllbnRlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTQKK21zZ2lkICJzaG93IHRoZSBjdXJyZW50IHBhdGNoIgorbXNnc3RyICJtb3N0cmFyIGVsIHBhcmNoZSBhY3R1YWwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk3Cittc2dpZCAic2hvcnRlbiBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCittc2dzdHIgImlkcyBkZSBjb21taXRzIGNvcnRvcyBlbiBsYSBsaXN0YSBkZSBwZW5kaWVudGVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5OQorbXNnaWQgImV4cGFuZCBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCittc2dzdHIgImV4cGFuZGlyIGlkcyBkZSBjb21taXRzIGVuIGxhIGxpc3RhIGRlIHBlbmRpZW50ZXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAxCittc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAicmV2aXNhciBsYSBsaXN0YSBkZSBwZW5kaWVudGVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwMworbXNnaWQgInJlYXJyYW5nZSBmaXh1cC9zcXVhc2ggbGluZXMiCittc2dzdHIgInJlb3JnYW5pemFyIGzDrW5lYXMgZml4dXAvc3F1YXNoIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwNQorbXNnaWQgImluc2VydCBleGVjIGNvbW1hbmRzIGluIHRvZG8gbGlzdCIKK21zZ3N0ciAiaW5zZXJ0YXIgY29tYW5kbyBleGVjIGVuIGxhIGxpc3RhIGRlIHBlbmRpZW50ZXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTA2Cittc2dpZCAib250byIKK21zZ3N0ciAiaGFjaWEiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTA5Cittc2dpZCAicmVzdHJpY3QtcmV2aXNpb24iCittc2dzdHIgInJlc3RyaWN0LXJldmlzaW9uIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwOQorbXNnaWQgInJlc3RyaWN0IHJldmlzaW9uIgorbXNnc3RyICJyZXN0cmluZ2lyIHJldmlzaW9uIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxMQorbXNnaWQgInNxdWFzaC1vbnRvIgorbXNnc3RyICJzcXVhc2gtb250byIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTIKK21zZ2lkICJzcXVhc2ggb250byIKK21zZ3N0ciAic3F1YXNoIGhhY2lhIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxNAorbXNnaWQgInRoZSB1cHN0cmVhbSBjb21taXQiCittc2dzdHIgImVsIGNvbW1pdCBkZSB1cHN0cmVhbSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTYKK21zZ2lkICJoZWFkLW5hbWUiCittc2dzdHIgImhlYWQtbmFtZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTYKK21zZ2lkICJoZWFkIG5hbWUiCittc2dzdHIgIm5vbWJyZSBkZSBoZWFkIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyMQorbXNnaWQgInJlYmFzZSBzdHJhdGVneSIKK21zZ3N0ciAiZXN0cmF0ZWdpYSBkZSByZWJhc2UiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTIyCittc2dpZCAic3RyYXRlZ3ktb3B0cyIKK21zZ3N0ciAic3RyYXRlZ3ktb3B0cyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjMKK21zZ2lkICJzdHJhdGVneSBvcHRpb25zIgorbXNnc3RyICJvcGNpb25lcyBkZSBlc3RyYXRlZ2lhIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNAorbXNnaWQgInN3aXRjaC10byIKK21zZ3N0ciAiY2FtYmlhciBhIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNQorbXNnaWQgInRoZSBicmFuY2ggb3IgY29tbWl0IHRvIGNoZWNrb3V0IgorbXNnc3RyICJsYSByYW1hIG8gY29tbWl0IHBhcmEgaGFjZXIgY2hlY2tvdXQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI2Cittc2dpZCAib250by1uYW1lIgorbXNnc3RyICJoYWNpYS1ub21icmUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI2Cittc2dpZCAib250byBuYW1lIgorbXNnc3RyICJoYWNpYSBub21icmUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI3Cittc2dpZCAiY21kIgorbXNnc3RyICJjbWQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI3Cittc2dpZCAidGhlIGNvbW1hbmQgdG8gcnVuIgorbXNnc3RyICJlbCBjb21hbmRvIHBhcmEgZWplY3V0YXIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTMwIGJ1aWx0aW4vcmViYXNlLmM6MTU4NAorbXNnaWQgImF1dG9tYXRpY2FsbHkgcmUtc2NoZWR1bGUgYW55IGBleGVjYCB0aGF0IGZhaWxzIgorbXNnc3RyICJyZXByb2dyYW1hciBhdXRvbWF0aWNhbWVudGUgY3VhbHF1aWVyIGBleGVjYCBxdWUgZmFsbGUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTQ2Cittc2dpZCAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIGhhcyBubyBlZmZlY3Qgd2l0aG91dCAtLXJlYmFzZS1tZXJnZXMiCittc2dzdHIgIi0tW25vLV1yZWJhc2UtY291c2lucyBubyB0aWVuZSBlZmVjdG8gc2luIC0tcmViYXNlLW1lcmdlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcmVxdWlyZXMgYW4gaW50ZXJhY3RpdmUgcmViYXNlIgogbXNnc3RyICIlcyByZXF1aWVyZSB1biByZWJhc2UgaW50ZXJhY3Rpdm8iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTcxCisjOiBidWlsdGluL3JlYmFzZS5jOjYxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0ICdvbnRvJzogJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBjb25zZWd1aXIgJ29udG8nOiAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE4NgorIzogYnVpbHRpbi9yZWJhc2UuYzo2MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvcmlnLWhlYWQ6ICclcyciCiBtc2dzdHIgIm9yaWctaGVhZCBpbnbDoWxpZG86ICclcyciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MjE0CisjOiBidWlsdGluL3JlYmFzZS5jOjY1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyBpbnZhbGlkIGFsbG93X3JlcmVyZV9hdXRvdXBkYXRlOiAnJXMnIgogbXNnc3RyICJpZ25vcmFuZG8gaW52w6FsaWRvIGFsbG93X3JlcmVyZV9hdXRvdXBkYXRlOiAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjI1OQorIzogYnVpbHRpbi9yZWJhc2UuYzo3MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlYWQgJyVzJyIKIG1zZ3N0ciAiTm8gc2UgcHVkbyBsZWVyICclcyciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6Mjc3CisjOiBidWlsdGluL3JlYmFzZS5jOjc0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgc3RvcmUgJXMiCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIGd1YXJkYXIgJXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MzM3CisjOiBidWlsdGluL3JlYmFzZS5jOjg1MworbXNnaWQgImNvdWxkIG5vdCBkZXRlcm1pbmUgSEVBRCByZXZpc2lvbiIKK21zZ3N0ciAibm8gc2UgcHVkbyBkZXRlcm1pbmFyIHJldmlzacOzbiBIRUFEIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjk3NiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODEKIG1zZ2lkICIiCiAiUmVzb2x2ZSBhbGwgY29uZmxpY3RzIG1hbnVhbGx5LCBtYXJrIHRoZW0gYXMgcmVzb2x2ZWQgd2l0aFxuIgogIlwiZ2l0IGFkZC9ybSA8Y29uZmxpY3RlZF9maWxlcz5cIiwgdGhlbiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIi5cbiIKQEAgLTE0OTkxLDE1ICsxODMyMiwzOSBAQAogIlJlc3VlbHZhIHRvZG9zIGxvcyBjb25mbGljdG9zIG1hbnVhbG1lbnRlIHlhIHNlYSBjb24gXG4iCiAiXCJnaXQgYWRkL3JtIDxhcmNoaXZvX2NvbmZsaWN0aXZvPlwiLCBsdWVnbyBlamVjdXRlIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIgogIlwiLlxuIgotIlNpIHByZWZpZXJlIHNhbHRhciBlc3RlIHBhcmNoZSwgZWplY3V0ZSBcImdpdCByZWJhc2UgLS1za2lwXCIgLlxuIgotIlBhcmEgYWJvcnRhciB5IHJlZ3Jlc2FyIGFsIGVzdGFkbyBwcmV2aW8gYWwgXCJnaXQgcmViYXNlXCIsIGVqZWN1dGUgXCJnaXQgIgorIlNpIHByZWZpZXJlcyBzYWx0YXIgZXN0ZSBwYXJjaGUsIGVqZWN1dGEgXCJnaXQgcmViYXNlIC0tc2tpcFwiIC5cbiIKKyJQYXJhIGFib3J0YXIgeSByZWdyZXNhciBhbCBlc3RhZG8gcHJldmlvIGFsIFwiZ2l0IHJlYmFzZVwiLCBlamVjdXRhIFwiZ2l0ICIKICJyZWJhc2UgLS1hYm9ydFwiLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo1NjEKLW1zZ2lkICJjb3VsZCBub3QgZGV0ZXJtaW5lIEhFQUQgcmV2aXNpb24iCi1tc2dzdHIgIm5vIHNlIHB1ZG8gZGV0ZXJtaW5hciByZXZpc2nDs24gSEVBRCIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiZ2l0IGVuY291bnRlcmVkIGFuIGVycm9yIHdoaWxlIHByZXBhcmluZyB0aGUgcGF0Y2hlcyB0byByZXBsYXlcbiIKKyJ0aGVzZSByZXZpc2lvbnM6XG4iCisiXG4iCisiICAgICVzXG4iCisiXG4iCisiQXMgYSByZXN1bHQsIGdpdCBjYW5ub3QgcmViYXNlIHRoZW0uIgorbXNnc3RyICIiCisiXG4iCisiZ2l0IGVuY29udHLDsyB1biBlcnJvciBtaWVudHJhcyBwcmVwYXJhYmEgbG9zIHBhcmNoZXMgcGFyYSByZXBsaWNhclxuIgorImVzYXMgcmV2aXNpb25lczpcbiIKKyJcbiIKKyIgICAgJXNcbiIKKyJcbiIKKyJDb21vIHJlc3VsdGFkbywgZ2l0IG5vIHB1ZWRlIGhhY2VyIHJlYmFzZSBjb24gZWxsb3MuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjc1MworIzogYnVpbHRpbi9yZWJhc2UuYzoxMzgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bnJlY29nbml6ZWQgZW1wdHkgdHlwZSAnJXMnOyB2YWxpZCB2YWx1ZXMgYXJlIFwiZHJvcFwiLCBcImtlZXBcIiwgYW5kIFwiYXNrIgorIlwiLiIKK21zZ3N0ciAiIgorInRpcG8gJyVzJyB2YWPDrW8geSBkZXNjb25vY2lkbzsgdmFsb3JlcyB2w6FsaWRvcyBzb24gXCJkcm9wXCIsIFwia2VlcFwiLCB5ICIKKyJcImFza1wiLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIlc1xuIgpAQCAtMTUwMTYsNyArMTgzNzEsNyBAQAogIiAgICBnaXQgcmViYXNlICc8cmFtYT4nXG4iCiAiXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6NzY5CisjOiBidWlsdGluL3JlYmFzZS5jOjE0MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3aXNoIHRvIHNldCB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhpcyBicmFuY2ggeW91IGNhbiBkbyBzbyB3aXRoOlxuIgpAQCAtMTUwMjksMTQ5ICsxODM4NCwxNzQgQEAKICIgICAgZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10bz0lcy88cmFtYT4gJXNcbiIKICJcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0NworbXNnaWQgImV4ZWMgY29tbWFuZHMgY2Fubm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImNvbWFuZG9zIGV4ZWMgbm8gcHVlZGVuIGNvbnRlbmVyIG5ld2xpbmVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NTEKK21zZ2lkICJlbXB0eSBleGVjIGNvbW1hbmQiCittc2dzdHIgImNvbWFuZG8gZXhlYyB2YWPDrW8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MQogbXNnaWQgInJlYmFzZSBvbnRvIGdpdmVuIGJyYW5jaCBpbnN0ZWFkIG9mIHVwc3RyZWFtIgogbXNnc3RyICJoYWNpZW5kbyByZWJhc2UgaGFjaWEgcmFtYSBkYWRhIGVuIGx1Z2FyIGRlIHVwc3RyZWFtIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjgzNAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgzCittc2dpZCAidXNlIHRoZSBtZXJnZS1iYXNlIG9mIHVwc3RyZWFtIGFuZCBicmFuY2ggYXMgdGhlIGN1cnJlbnQgYmFzZSIKK21zZ3N0ciAidXNhciBsYSBiYXNlIGRlIGZ1c2nDs24gZGUgdXBzdHJlYW0geSBsYSByYW1hIGNvbW8gYmFzZSBhY3R1YWwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4NQogbXNnaWQgImFsbG93IHByZS1yZWJhc2UgaG9vayB0byBydW4iCiBtc2dzdHIgInBlcm1pdGlyIGVqZWN1dGFyIGhvb2sgcHJlLXJlYmFzZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4NwogbXNnaWQgImJlIHF1aWV0LiBpbXBsaWVzIC0tbm8tc3RhdCIKIG1zZ3N0ciAic2VyIHNpbGVuY2lvc28gaW1wbGljYSAtLW5vLXN0YXQiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODM5Ci1tc2dpZCAiZGlzcGxheSBhIGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKLW1zZ3N0ciAibW9zdHJhciB1biBkaWZmc3RhdCBkZSBsbyBxdWUgY2FtYmnDsyBlbiB1cHN0cmVhbSIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzo4NDIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MwogbXNnaWQgImRvIG5vdCBzaG93IGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKIG1zZ3N0ciAibm8gbW9zdHJhciB1biBkaWZmc3RhdCBkZSBsbyBxdWUgY2FtYmnDsyBlbiB1cHN0cmVhbSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NDUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5NgogbXNnaWQgImFkZCBhIFNpZ25lZC1vZmYtYnk6IGxpbmUgdG8gZWFjaCBjb21taXQiCiBtc2dzdHIgImFncmVnYXIgdW5hIGzDrW5lYSBcIkZpcm1hZG8tcG9yXCIgYWwgbWVuc2FqZSBkZSBjYWRhIGNvbW1pdCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NDcgYnVpbHRpbi9yZWJhc2UuYzo4NTEgYnVpbHRpbi9yZWJhc2UuYzo4NTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5OCBidWlsdGluL3JlYmFzZS5jOjE1MDIgYnVpbHRpbi9yZWJhc2UuYzoxNTA0CiBtc2dpZCAicGFzc2VkIHRvICdnaXQgYW0nIgogbXNnc3RyICJwYXNhZG8gYSAnZ2l0IGFtJyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NTUgYnVpbHRpbi9yZWJhc2UuYzo4NTcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUwNiBidWlsdGluL3JlYmFzZS5jOjE1MDgKIG1zZ2lkICJwYXNzZWQgdG8gJ2dpdCBhcHBseSciCiBtc2dzdHIgInBhc2FkbyBhICdnaXQtYXBwbHknIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg1OSBidWlsdGluL3JlYmFzZS5jOjg2MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTEwIGJ1aWx0aW4vcmViYXNlLmM6MTUxMwogbXNnaWQgImNoZXJyeS1waWNrIGFsbCBjb21taXRzLCBldmVuIGlmIHVuY2hhbmdlZCIKIG1zZ3N0ciAiY2hlcnJ5LXBpY2sgdG9kb3MgbG9zIGNvbW1pdHMsIGluY2x1c28gc2kgbm8gaGFuIGNhbWJpYWRvIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg2NAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTE1CiBtc2dpZCAiY29udGludWUiCiBtc2dzdHIgImNvbnRpbnVhciIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NjcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxOAogbXNnaWQgInNraXAgY3VycmVudCBwYXRjaCBhbmQgY29udGludWUiCiBtc2dzdHIgInNhbHRhciBlbCBwYXJjaGUgeSBjb250aW51YXIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODY5CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjAKIG1zZ2lkICJhYm9ydCBhbmQgY2hlY2sgb3V0IHRoZSBvcmlnaW5hbCBicmFuY2giCiBtc2dzdHIgImFib3J0YSB5IHJldmlzYSBsYSByYW1hIG9yaWdpbmFsIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTIzCiBtc2dpZCAiYWJvcnQgYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcyIKIG1zZ3N0ciAiYWJvcnRhIHBlcm8gbWFudGllbmUgSEVBRCBkb25kZSBlc3TDoSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyNAogbXNnaWQgImVkaXQgdGhlIHRvZG8gbGlzdCBkdXJpbmcgYW4gaW50ZXJhY3RpdmUgcmViYXNlIgogbXNnc3RyICJlZGl0YXIgbGEgbGlzdGEgZGUgcGVuZGllbnRlcyBkdXJhbnRlIGVsIHJlYmFzZSBpbnRlcmFjdGl2byIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyNwogbXNnaWQgInNob3cgdGhlIHBhdGNoIGZpbGUgYmVpbmcgYXBwbGllZCBvciBtZXJnZWQiCiBtc2dzdHIgIm11ZXN0cmEgZWwgYXJjaGl2byBwYXJjaGUgc2llbmRvIGFwbGljYWRvIG8gZnVzaW9uYWRvIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTMwCittc2dpZCAidXNlIGFwcGx5IHN0cmF0ZWdpZXMgdG8gcmViYXNlIgorbXNnc3RyICJ1c2FyIGVzdHJhdGVnaWFzIGRlIGFwcGx5IHBhcmEgZWwgcmViYXNlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzQKIG1zZ2lkICJ1c2UgbWVyZ2luZyBzdHJhdGVnaWVzIHRvIHJlYmFzZSIKIG1zZ3N0ciAidXNhciBlc3RyYXRlZ2lhcyBkZSBmdXNpw7NuIHBhcmEgZWwgcmViYXNlIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg4MworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTM4CiBtc2dpZCAibGV0IHRoZSB1c2VyIGVkaXQgdGhlIGxpc3Qgb2YgY29tbWl0cyB0byByZWJhc2UiCiBtc2dzdHIgInBlcm1pdGlyIGFsIHVzdWFyaW8gZWRpdGFyIGxhIGxpc3RhIGRlIGNvbW1pdHMgcGFyYSByZWJhc2FyIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg4NwotbXNnaWQgInRyeSB0byByZWNyZWF0ZSBtZXJnZXMgaW5zdGVhZCBvZiBpZ25vcmluZyB0aGVtIgotbXNnc3RyICJpbnRlbnRhciByZWNyZWFyIG1lcmdlcyBlbiBsdWdhciBkZSBpZ25vcmFybG9zIgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTQyCittc2dpZCAiKERFUFJFQ0FURUQpIHRyeSB0byByZWNyZWF0ZSBtZXJnZXMgaW5zdGVhZCBvZiBpZ25vcmluZyB0aGVtIgorbXNnc3RyICIoREVQUkVDQURPKSBpbnRlbnRhciByZWNyZWFyIG1lcmdlcyBlbiBsdWdhciBkZSBpZ25vcmFybG9zIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg5MQotbXNnaWQgImFsbG93IHJlcmVyZSB0byB1cGRhdGUgaW5kZXggd2l0aCByZXNvbHZlZCBjb25mbGljdCIKLW1zZ3N0ciAicGVybWl0aXIgcmVyZXJlIGFjdHVhbGl6YXIgaW5kZXggY29uIGNvbmZsaWN0b3MgcmVzdWVsdG9zIgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTQ3Cittc2dpZCAiaG93IHRvIGhhbmRsZSBjb21taXRzIHRoYXQgYmVjb21lIGVtcHR5IgorbXNnc3RyICJjb21vIG1hbmVqYXIgY29tbWl0cyBxdWUgc2UgdnVlbHZlbiB2YWPDrW9zIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg5NAotbXNnaWQgInByZXNlcnZlIGVtcHR5IGNvbW1pdHMgZHVyaW5nIHJlYmFzZSIKLW1zZ3N0ciAicHJlc2VydmFyIGNvbW1pdHMgdmFjw61vcyBkdXJhbnRlIGVsIHJlYmFzZSIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzo4OTYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU1NAogbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEgdW5kZXIgLWkiCiBtc2dzdHIgIm1vdmVyIGNvbW1pdHMgcXVlIGNvbWllbnphbiBjb24gc3F1YXNoIS9maXh1cCEgYmFqbyAtaSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MDIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU2MAogbXNnaWQgImF1dG9tYXRpY2FsbHkgc3Rhc2gvc3Rhc2ggcG9wIGJlZm9yZSBhbmQgYWZ0ZXIiCiBtc2dzdHIgImVqZWN1dGFyIGF1dG9tw6F0aWNhbWVudGUgc3Rhc2gvc3Rhc2ggcG9wIGFudGVzIHkgZGVzcHXDqXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTA0CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjIKIG1zZ2lkICJhZGQgZXhlYyBsaW5lcyBhZnRlciBlYWNoIGNvbW1pdCBvZiB0aGUgZWRpdGFibGUgbGlzdCIKIG1zZ3N0ciAiYWdyZWdhciBsw61uZWFzIGV4ZWMgdHJhcyBjYWRhIGFjb21taXQgZGUgbGEgbGlzdGEgZWRpdGFibGUiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTA4CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjYKIG1zZ2lkICJhbGxvdyByZWJhc2luZyBjb21taXRzIHdpdGggZW1wdHkgbWVzc2FnZXMiCiBtc2dzdHIgInBlcm1pdGlyIHJlYmFzZSBjb21taXRzIGNvbiBtZW5zYWplcyB2YWPDrW9zIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxMQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTcwCiBtc2dpZCAidHJ5IHRvIHJlYmFzZSBtZXJnZXMgaW5zdGVhZCBvZiBza2lwcGluZyB0aGVtIgogbXNnc3RyICJpbnRlbnRhciBmdXNpb25lcyBwb3IgcmViYXNlIGVuIGx1Z2FyIGRlIHNhbHRhcmxhcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3MwogbXNnaWQgInVzZSAnbWVyZ2UtYmFzZSAtLWZvcmstcG9pbnQnIHRvIHJlZmluZSB1cHN0cmVhbSIKIG1zZ3N0ciAidXNlICdtZXJnZS1iYXNlIC0tZm9yay1wb2ludCcgcGFyYSByZWZpbmFyIHVwc3RyZWFtIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTc1CiBtc2dpZCAidXNlIHRoZSBnaXZlbiBtZXJnZSBzdHJhdGVneSIKIG1zZ3N0ciAidXNhciBsYSBlc3RyYXRlZ2lhIGRlIG1lcmdlIGRhZGEiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTE4IGJ1aWx0aW4vcmV2ZXJ0LmM6MTExCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzcgYnVpbHRpbi9yZXZlcnQuYzoxMTUKIG1zZ2lkICJvcHRpb24iCiBtc2dzdHIgIm9wY2nDs24iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTE5CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzgKIG1zZ2lkICJwYXNzIHRoZSBhcmd1bWVudCB0aHJvdWdoIHRvIHRoZSBtZXJnZSBzdHJhdGVneSIKIG1zZ3N0ciAicGFzYXIgZWwgYXJndW1lbnRvIHBhcmEgbGEgZXN0cmF0ZWdpYSBkZSBmdXNpw7NuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkyMgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTgxCiBtc2dpZCAicmViYXNlIGFsbCByZWFjaGFibGUgY29tbWl0cyB1cCB0byB0aGUgcm9vdChzKSIKIG1zZ3N0ciAiaGFjZXIgcmViYXNlIGEgdG9kb3MgbG9zIGNvbW1pdHMgYWxjYW56YWJsZXMgaGFzdGEgbGEgcmHDrXoocmHDrWNlcykiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTM4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBleGVjICVzIgotbXNnc3RyICJubyBzZSBwdWRvIGVqZWN1dGFyICVzIgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTk4Cittc2dpZCAiIgorInRoZSByZWJhc2UudXNlQnVpbHRpbiBzdXBwb3J0IGhhcyBiZWVuIHJlbW92ZWQhXG4iCisiU2VlIGl0cyBlbnRyeSBpbiAnZ2l0IGhlbHAgY29uZmlnJyBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKyJlbCBzb3BvcnRlIHBhcmEgcmViYXNlLnVzZUJ1aWx0aW4gaGEgc2lkbyBlbGltaW5hZG8hXG4iCisiVmVhIHN1IGVudHJhZGEgZW4gJ2dpdCBoZWxwIGNvbmZpZycgcGFyYSBkZXRhbGxlcy4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTU2IGdpdC1sZWdhY3ktcmViYXNlLnNoOjIxMworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjA0CiBtc2dpZCAiSXQgbG9va3MgbGlrZSAnZ2l0IGFtJyBpcyBpbiBwcm9ncmVzcy4gQ2Fubm90IHJlYmFzZS4iCiBtc2dzdHIgIlBhcmVjZSBxdWUgJ2dpdCBhbScgZXN0w6EgZW4gcHJvZ3Jlc28uIE5vIHNlIHB1ZWRlIHJlYmFzYXIuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjk5NyBnaXQtbGVnYWN5LXJlYmFzZS5zaDozOTUKLW1zZ2lkICJObyByZWJhc2UgaW4gcHJvZ3Jlc3M/IgotbXNnc3RyICJObyBoYXkgcmViYXNlIGVuIHByb2dyZXNvPyIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY0NQorbXNnaWQgIiIKKyJnaXQgcmViYXNlIC0tcHJlc2VydmUtbWVyZ2VzIGlzIGRlcHJlY2F0ZWQuIFVzZSAtLXJlYmFzZS1tZXJnZXMgaW5zdGVhZC4iCittc2dzdHIgIiIKKyJnaXQgcmViYXNlIC0tcHJlc2VydmUtbWVyZ2VzIGVzdMOhIGRlcHJlY2Fkby4gVXNlIC0tcmViYXNlLW1lcmdlcyBlbiBzdSBsdWdhci4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTAwMSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MDYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1MAorbXNnaWQgImNhbm5vdCBjb21iaW5lICctLWtlZXAtYmFzZScgd2l0aCAnLS1vbnRvJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgY29tYmluYXIgJy0ta2VlcC1iYXNlJyBjb24gJy0tb250byciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1MgorbXNnaWQgImNhbm5vdCBjb21iaW5lICctLWtlZXAtYmFzZScgd2l0aCAnLS1yb290JyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgY29tYmluYXIgJy0ta2VlcC1iYXNlJyBjb24gJy0tcm9vdCciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1NgorbXNnaWQgIk5vIHJlYmFzZSBpbiBwcm9ncmVzcz8iCittc2dzdHIgIsK/Tm8gaGF5IHJlYmFzZSBlbiBwcm9ncmVzbz8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY2MAogbXNnaWQgIlRoZSAtLWVkaXQtdG9kbyBhY3Rpb24gY2FuIG9ubHkgYmUgdXNlZCBkdXJpbmcgaW50ZXJhY3RpdmUgcmViYXNlLiIKIG1zZ3N0ciAiIgogIkxhIGFjY2nDs24gLS1lZGl0LXRvZG8gc8OzbG8gcHVlZGUgc2VyIHVzYWRhIGFsIHJlYmFzYXIgaW50ZXJhY3RpdmFtZW50ZS4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTAxNSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY4MwogbXNnaWQgIkNhbm5vdCByZWFkIEhFQUQiCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIGxlZXIgZWwgSEVBRCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDI4IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQxNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjk1CiBtc2dpZCAiIgogIllvdSBtdXN0IGVkaXQgYWxsIG1lcmdlIGNvbmZsaWN0cyBhbmQgdGhlblxuIgogIm1hcmsgdGhlbSBhcyByZXNvbHZlZCB1c2luZyBnaXQgYWRkIgpAQCAtMTUxNzksMjEgKzE4NTU5LDE2IEBACiAiVGllbmVzIHF1ZSBlZGl0YXIgdG9kb3MgbG9zIGNvbmZsaWN0b3MgZGUgZnVzacOzbiB5IGx1ZWdvXG4iCiAibWFyY2FybG9zIGNvbW8gcmVzdWVsdG9zIHVzYW5kbyBnaXQgYWRkIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwNDcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTcxNAogbXNnaWQgImNvdWxkIG5vdCBkaXNjYXJkIHdvcmt0cmVlIGNoYW5nZXMiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gZGVzY2FydGFyIGxvcyBjYW1iaW9zIGRlbCDDoXJib2wgZGUgdHJhYmFqbyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDY2CisjOiBidWlsdGluL3JlYmFzZS5jOjE3MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG1vdmUgYmFjayB0byAlcyIKLW1zZ3N0ciAiTm8gc2UgcHVlZGUgcmVncmVzYXIgYSAlcyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgcmVncmVzYXIgYSAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDc3IGJ1aWx0aW4vcm0uYzozNjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IHJlbW92ZSAnJXMnIgotbXNnc3RyICJubyBzZSBwdWRvIGVsaW1pbmFyJyVzJyIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTAzCisjOiBidWlsdGluL3JlYmFzZS5jOjE3NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkl0IHNlZW1zIHRoYXQgdGhlcmUgaXMgYWxyZWFkeSBhICVzIGRpcmVjdG9yeSwgYW5kXG4iCkBAIC0xNTIwNiwzNTIgKzE4NTgxLDE3NSBAQAogInZhbHVhYmxlIHRoZXJlLlxuIgogbXNnc3RyICIiCiAiUGFyZWNlIHF1ZSB5YSBoYXkgdW4gZGlyZWN0b3JpbyAlcywgeVxuIgotIm1lIHByZWd1bnRvIHNpIGVzdMOhIGVuIG1lZGlvIGRlIG90cm8gcmViYXNlLiBTaSBlc2UgZXMgZWwgXG4iCi0iY2FzbywgcG9yIGZhdm9yIGludGVudGVcbiIKKyJtZSBwcmVndW50byBzaSBlc3TDoXMgZW4gbWVkaW8gZGUgb3RybyByZWJhc2UuIFNpIGVzZSBlcyBlbCBcbiIKKyJjYXNvLCBwb3IgZmF2b3IgaW50ZW50YVxuIgogIlx0JXNcbiIKICJTaSBubyBlcyBlbCBjYXNvLCBwb3IgZmF2b3JcbiIKICJcdCVzXG4iCi0ieSBlamVjw7p0ZW1lIG51ZXZhbWVudGUuIE1lIGVzdG95IGRldGVuaWVuZG8gZW4gY2FzbyBkZSBxdWUgdGVuZ2FcbiIKKyJ5IGVqZWPDunRhbWUgbnVldmFtZW50ZS4gTWUgZXN0b3kgZGV0ZW5pZW5kbyBlbiBjYXNvIGRlIHF1ZSB0ZW5nYXNcbiIKICJhbGdvIGRlIHZhbG9yIGFow60uXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTEyNAorIzogYnVpbHRpbi9yZWJhc2UuYzoxODA2CiBtc2dpZCAic3dpdGNoIGBDJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgogbXNnc3RyICJzd2l0Y2ggYEMnIGVzcGVyYSB1biB2YWxvciBudW3DqXJpY28iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTE2MQorIzogYnVpbHRpbi9yZWJhc2UuYzoxODQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gbW9kZTogJXMiCiBtc2dzdHIgIk1vZG8gZGVzY29ub2NpZG86ICVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExODMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg2OQogbXNnaWQgIi0tc3RyYXRlZ3kgcmVxdWlyZXMgLS1tZXJnZSBvciAtLWludGVyYWN0aXZlIgogbXNnc3RyICItLXN0cmF0ZWd5IHJlcXVpZXJlIC0tbWVyZ2UgbyAtLWludGVyYWN0aXZlIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyMjYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg5OQorbXNnaWQgImNhbm5vdCBjb21iaW5lIGFwcGx5IG9wdGlvbnMgd2l0aCBtZXJnZSBvcHRpb25zIgorbXNnc3RyICJubyBzZSBwdWVkZW4gY29tYmluYXIgb3BjaW9uZXMgZGUgYXBwbHkgY29uIG9wY2lvbmVzIGRlIG1lcmdlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5MTIKICMsIGMtZm9ybWF0Cittc2dpZCAiVW5rbm93biByZWJhc2UgYmFja2VuZDogJXMiCittc2dzdHIgIkJhY2tlbmQgZGUgcmViYXNlIGRlc2Nvbm9jaWRvOiAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTM3Cittc2dpZCAiLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjIHJlcXVpcmVzIC0tZXhlYyBvciAtLWludGVyYWN0aXZlIgorbXNnc3RyICItLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWMgcmVxdWllcmUgLS1leGVjIG8gLS1pbnRlcmFjdGl2ZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTU3Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmUtbWVyZ2VzJyB3aXRoICctLXJlYmFzZS1tZXJnZXMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBjb21iaW5hciAnLS1wcmVzZXJ2ZS1tZXJnZXMnIGNvbiAnLS1yZWJhc2UtbWVyZ2VzJyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTYxCiBtc2dpZCAiIgotImVycm9yOiBjYW5ub3QgY29tYmluZSBpbnRlcmFjdGl2ZSBvcHRpb25zICgtLWludGVyYWN0aXZlLCAtLWV4ZWMsIC0tcmViYXNlLSIKLSJtZXJnZXMsIC0tcHJlc2VydmUtbWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250bykgd2l0aCBhbSBvcHRpb25zICIKLSIoJXMpIgorImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyciCiBtc2dzdHIgIiIKLSJlcnJvcjogbm8gc2UgcHVlZGUgY29tYmluYXIgb3BjaW9uZXMgaW50ZXJhY3RpdmFzICgtLWludGVyYWN0aXZlLCAtLWV4ZWMsIC0tIgotInJlYmFzZS1tZXJnZXMsIC0tcHJlc2VydmUtbWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250bykgY29uICIKLSJvcGNpb25lcyAoJXMpIgorImVycm9yOiBubyBzZSBwdWVkZSBjb21iaW5hciAnLS1wcmVzZXJ2ZS1tZXJnZXMnIGNvbiAnLS1yZXNjaGVkdWxlLWZhaWxlZC0iCisiZXhlYyciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTIzMQotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iZXJyb3I6IGNhbm5vdCBjb21iaW5lIG1lcmdlIG9wdGlvbnMgKC0tbWVyZ2UsIC0tc3RyYXRlZ3ksIC0tc3RyYXRlZ3ktb3B0aW9uKSAiCi0id2l0aCBhbSBvcHRpb25zICglcykiCi1tc2dzdHIgIiIKLSJlcnJvcjogbm8gc2UgcHVlZGUgY29tYmluYXIgb3BjaW9uZXMgZGUgbWVyZ2UgKC0tbWVyZ2UsIC0tc3RyYXRlZ3ksIC0tIgotInN0cmF0ZWd5LW9wdGlvbikgY29uIG9wY2lvbmVzIGRlIGFtICglcykiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI1MSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1MzYKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmUtbWVyZ2VzJyB3aXRoICctLXJlYmFzZS1tZXJnZXMnIgotbXNnc3RyICJlcnJvcjogbm8gc2UgcHVlZGUgY29tYmluYXIgJy0tcHJlc2VydmUtbWVyZ2VzJyBjb24gJy0tcmViYXNlLW1lcmdlcyciCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI1NiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1NDIKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneS1vcHRpb24nIgotbXNnc3RyICJlcnJvcjogbm8gc2UgcHVlZGUgY29tYmluYXIgJy0tcmViYXNlLW1lcmdlcycgY29uICctLXN0cmF0ZWd5LW9wdGlvbiciCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI1OSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1NDQKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneSciCi1tc2dzdHIgImVycm9yOiBubyBzZSBwdWVkZSBjb21iaW5hciAnLS1yZWJhc2UtbWVyZ2VzJyBjb24gJy0tc3RyYXRlZ3knIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyODMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICclcyciCiBtc2dzdHIgInVwc3RyZWFtIGludsOhbGlkbyAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyODkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk5MQogbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgbmV3IHJvb3QgY29tbWl0IgogbXNnc3RyICJObyBzZSBwdWRvIGNyZWFyIGNvbW1pdCByYcOteiBudWV2byIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzA3CisjOiBidWlsdGluL3JlYmFzZS5jOjIwMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJzogbmVlZCBleGFjdGx5IG9uZSBtZXJnZSBiYXNlIHdpdGggYnJhbmNoIgorbXNnc3RyICInJXMnOiBuZWNlc2l0YSBleGFjdGFtZW50ZSB1bmEgYmFzZSBkZSBmdXNpw7NuIGNvbiByYW1hIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogbmVlZCBleGFjdGx5IG9uZSBtZXJnZSBiYXNlIgogbXNnc3RyICInJXMnOiBuZWNlc2l0YSBleGFjdGFtZW50ZSB1bmEgYmFzZSBkZSBmdXNpw7NuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzMTQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJEb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIGNvbW1pdCAnJXMnIgogbXNnc3RyICJObyBhcHVudGEgYSB1biBjb21taXQgdsOhbGlkbyAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzMzkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICclcyciCiBtc2dzdHIgImZhdGFsOiBubyBleGlzdGUgbGEgcmFtYS9jb21taXQ6ICclcyciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTM0NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MzcKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTMwCisjOiBidWlsdGluL3JlYmFzZS5jOjIwNjIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIHJlZjogJXMiCiBtc2dzdHIgIk5vIGV4aXN0ZSByZWY6ICVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzNTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA3MwogbXNnaWQgIkNvdWxkIG5vdCByZXNvbHZlIEhFQUQgdG8gYSByZXZpc2lvbiIKLW1zZ3N0ciAibm8gc2UgcHVkbyByZXNvbHZlciBIRUFEIGEgdW5hIHJldmlzacOzbiIKK21zZ3N0ciAiTm8gc2UgcHVkbyByZXNvbHZlciBIRUFEIGEgdW5hIHJldmlzacOzbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzk5IGdpdC1sZWdhY3ktcmViYXNlLnNoOjY2NQorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTExCiBtc2dpZCAiQ2Fubm90IGF1dG9zdGFzaCIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgZWplY3V0YXIgYXV0b3N0YXNoIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MDIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjExNAogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmV4cGVjdGVkIHN0YXNoIHJlc3BvbnNlOiAnJXMnIgogbXNnc3RyICJSZXNwdWVzdGEgZGUgc3Rhc2ggaW5lc3BlcmFkYTogJyVzJyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDA4CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgZm9yICclcyciCiBtc2dzdHIgIk5vIHNlIHB1ZG8gY3JlYXIgZWwgZGlyZWN0b3JpbyBwYXJhICclcyciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxMQorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNyZWF0ZWQgYXV0b3N0YXNoOiAlc1xuIgogbXNnc3RyICJBdXRvc3Rhc2ggY3JlYWRvOiAlc1xuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MTQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyNgogbXNnaWQgImNvdWxkIG5vdCByZXNldCAtLWhhcmQiCiBtc2dzdHIgIm5vIHNlIHB1ZG8gcmVzZXQgLS1oYXJkIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MTUgYnVpbHRpbi9yZXNldC5jOjExMwotIywgYy1mb3JtYXQKLW1zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKLW1zZ3N0ciAiSEVBRCBlc3TDoSBhaG9yYSBlbiAlcyIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDMxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjY3NAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTM1CiBtc2dpZCAiUGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKIG1zZ3N0ciAiUG9yIGZhdm9yLCBjb25mw61ybWFsb3MgbyBndcOhcmRhbG9zLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDU4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJXMnIgotbXNnc3RyICJubyBzZSBwdWVkZSBhbmFsaXphciAnJXMnIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0NzAKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc3dpdGNoIHRvICVzIgogbXNnc3RyICJubyBzZSBwdWRvIGNhbWJpYXIgYSAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjY5NwotIywgc2gtZm9ybWF0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxODAKIG1zZ2lkICJIRUFEIGlzIHVwIHRvIGRhdGUuIgogbXNnc3RyICJIRUFEIGVzdMOhIGFjdHVhbGl6YWRvLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgzCisjOiBidWlsdGluL3JlYmFzZS5jOjIxODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3VycmVudCBicmFuY2ggJXMgaXMgdXAgdG8gZGF0ZS5cbiIKIG1zZ3N0ciAiTGEgcmFtYSBhY3R1YWwgJXMgZXN0w6EgYWN0dWFsaXphZGEuXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MDcKLSMsIHNoLWZvcm1hdAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTkwCiBtc2dpZCAiSEVBRCBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLiIKIG1zZ3N0ciAiSEVBRCBlc3TDoSBhY3R1YWxpemFkbywgcmViYXNlIGZvcnphZG8uIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0OTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDdXJyZW50IGJyYW5jaCAlcyBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLlxuIgogbXNnc3RyICJSYW1hIGFjdHVhbCAlcyBlc3TDoSBhY3R1YWxpemFkYSwgcmViYXNlIGZvcnphZG8uXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTUwMSBnaXQtbGVnYWN5LXJlYmFzZS5zaDoyMDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIwMAogbXNnaWQgIlRoZSBwcmUtcmViYXNlIGhvb2sgcmVmdXNlZCB0byByZWJhc2UuIgogbXNnc3RyICJFbCBob29rIHByZS1yZWJhc2UgcmVjaGF6w7MgZWwgcmViYXNlLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTA4CisjOiBidWlsdGluL3JlYmFzZS5jOjIyMDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2hhbmdlcyB0byAlczpcbiIKIG1zZ3N0ciAiQ2FtYmlvcyBhICVzOlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJDaGFuZ2VzIGZyb20gJXMgdG8gJXM6XG4iCiBtc2dzdHIgIkNhbWJpb3MgZGVzZGUgJXMgYSAlczpcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTM2CisjOiBidWlsdGluL3JlYmFzZS5jOjIyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uXG4iCiBtc2dzdHIgIiIKICJFbiBwcmltZXIgbHVnYXIsIHJlYm9iaW5hbmRvIEhFQUQgcGFyYSBkZXNwdcOpcyByZXByb2R1Y2lyIHR1cyBjYW1iaW9zIGVuY2ltYSAiCiAiZGUgw6lzdGEuLi5cbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTQzCisjOiBidWlsdGluL3JlYmFzZS5jOjIyNDQKIG1zZ2lkICJDb3VsZCBub3QgZGV0YWNoIEhFQUQiCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIGRlc2Fjb3BsYXIgSEVBRCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTUyCisjOiBidWlsdGluL3JlYmFzZS5jOjIyNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFzdC1mb3J3YXJkZWQgJXMgdG8gJXMuXG4iCiBtc2dzdHIgIkF2YW5jZSByw6FwaWRvIGRlICVzIGEgJXMuXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjI0Ci1tc2dpZCAibm8gSEVBRD8iCi1tc2dzdHIgIsK/U2luIEhFQUQ/IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzo1MQotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAlcyIKLW1zZ3N0ciAibm8gc2UgcHVkbyBjcmVhciBhcmNoaXZvIHRlbXBvcmFsICVzIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzo1NwotbXNnaWQgImNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgotbXNnc3RyICJubyBzZSBwdWRvIG1hcmNhciBjb21vIGludGVyYWN0aXZvIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxMDEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IG9wZW4gJXMiCi1tc2dzdHIgIm5vIHNlIHB1ZG8gYWJyaXIgJXMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjExNAotbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSB0b2RvIGxpc3QiCi1tc2dzdHIgIm5vIHNlIHB1ZG8gZ2VuZXJhciBsaXN0YSBkZSBwZW5kaWVudGVzIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxMjkKLW1zZ2lkICJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPG9wdGlvbnM+XSIKLW1zZ3N0ciAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxvcGNpb25lcz5dIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNDgKLW1zZ2lkICJrZWVwIGVtcHR5IGNvbW1pdHMiCi1tc2dzdHIgIm1hbnRlbmVyIGNvbW1pdHMgdmFjw61vcyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTUwIGJ1aWx0aW4vcmV2ZXJ0LmM6MTI0Ci1tc2dpZCAiYWxsb3cgY29tbWl0cyB3aXRoIGVtcHR5IG1lc3NhZ2VzIgotbXNnc3RyICJwZXJtaXRpciBjb21taXRzIGNvbiBtZW5zYWplcyB2YWPDrW9zIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTEKLW1zZ2lkICJyZWJhc2UgbWVyZ2UgY29tbWl0cyIKLW1zZ3N0ciAicmViYXNhbmRvIGNvbW1pdHMgZGUgZnVzacOzbiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTUzCi1tc2dpZCAia2VlcCBvcmlnaW5hbCBicmFuY2ggcG9pbnRzIG9mIGNvdXNpbnMiCi1tc2dzdHIgIm1hbnRlbmVyIHB1bnRvcyBvcmlnaW5hbGVzIGRlIGxhIHJhbWEgZGUgc3VzIHByaW1vcyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTU1Ci1tc2dpZCAibW92ZSBjb21taXRzIHRoYXQgYmVnaW4gd2l0aCBzcXVhc2ghL2ZpeHVwISIKLW1zZ3N0ciAibW92ZXIgY29tbWl0cyBxdWUgY29taWVuemFuIGNvbiBzcXVhc2ghL2ZpeHVwISIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTU2Ci1tc2dpZCAic2lnbiBjb21taXRzIgotbXNnc3RyICJmaXJtYXIgY29tbWl0cyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTU4Ci1tc2dpZCAiY29udGludWUgcmViYXNlIgotbXNnc3RyICJjb250aW51YXIgcmViYXNlIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjAKLW1zZ2lkICJza2lwIGNvbW1pdCIKLW1zZ3N0ciAic2FsdGFyIGNvbW1pdCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYxCi1tc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICJlZGl0YXIgbGEgbGlzdGEgZGUgcGVuZGllbnRlcyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYzCi1tc2dpZCAic2hvdyB0aGUgY3VycmVudCBwYXRjaCIKLW1zZ3N0ciAibW9zdHJhciBlbCBwYXJjaGUgYWN0dWFsIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjYKLW1zZ2lkICJzaG9ydGVuIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAiaWRzIGRlIGNvbW1pdHMgY29ydG9zIGVuIGxhIGxpc3RhIGRlIHBlbmRpZW50ZXMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2OAotbXNnaWQgImV4cGFuZCBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgImV4cGFuZGlyIGlkcyBkZSBjb21taXRzIGVuIGxhIGxpc3RhIGRlIHBlbmRpZW50ZXMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3MAotbXNnaWQgImNoZWNrIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgInJldmlzYXIgbGEgbGlzdGEgZGUgcGVuZGllbnRlcyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTcyCi1tc2dpZCAicmVhcnJhbmdlIGZpeHVwL3NxdWFzaCBsaW5lcyIKLW1zZ3N0ciAicmVvcmdhbml6YXIgbMOtbmVhcyBmaXh1cC9zcXVhc2giCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NAotbXNnaWQgImluc2VydCBleGVjIGNvbW1hbmRzIGluIHRvZG8gbGlzdCIKLW1zZ3N0ciAiaW5zZXJ0YXIgY29tYW5kbyBleGVjIGVuIGxhIGxpc3RhIGRlIHBlbmRpZW50ZXMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NQotbXNnaWQgIm9udG8iCi1tc2dzdHIgImhhY2lhIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzcKLW1zZ2lkICJyZXN0cmljdC1yZXZpc2lvbiIKLW1zZ3N0ciAicmVzdHJpY3QtcmV2aXNpb24iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NwotbXNnaWQgInJlc3RyaWN0IHJldmlzaW9uIgotbXNnc3RyICJyZXN0cmluZ2lyIHJldmlzaW9uIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzgKLW1zZ2lkICJzcXVhc2gtb250byIKLW1zZ3N0ciAic3F1YXNoLW9udG8iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3OQotbXNnaWQgInNxdWFzaCBvbnRvIgotbXNnc3RyICJzcXVhc2ggaGFjaWEiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MQotbXNnaWQgInRoZSB1cHN0cmVhbSBjb21taXQiCi1tc2dzdHIgImVsIGNvbW1pdCBkZSB1cHN0cmVhbSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgyCi1tc2dpZCAiaGVhZC1uYW1lIgotbXNnc3RyICJoZWFkLW5hbWUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MgotbXNnaWQgImhlYWQgbmFtZSIKLW1zZ3N0ciAibm9tYnJlIGRlIGhlYWQiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4NwotbXNnaWQgInJlYmFzZSBzdHJhdGVneSIKLW1zZ3N0ciAiZXN0cmF0ZWdpYSBkZSByZWJhc2UiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4OAotbXNnaWQgInN0cmF0ZWd5LW9wdHMiCi1tc2dzdHIgInN0cmF0ZWd5LW9wdHMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4OQotbXNnaWQgInN0cmF0ZWd5IG9wdGlvbnMiCi1tc2dzdHIgIm9wY2lvbmVzIGRlIGVzdHJhdGVnaWEiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MAotbXNnaWQgInN3aXRjaC10byIKLW1zZ3N0ciAiY2FtYmlhciBhIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTEKLW1zZ2lkICJ0aGUgYnJhbmNoIG9yIGNvbW1pdCB0byBjaGVja291dCIKLW1zZ3N0ciAibGEgcmFtYSBvIGNvbW1pdCBwYXJhIGhhY2VyIGNoZWNrb3V0IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTIKLW1zZ2lkICJvbnRvLW5hbWUiCi1tc2dzdHIgImhhY2lhLW5vbWJyZSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkyCi1tc2dpZCAib250byBuYW1lIgotbXNnc3RyICJoYWNpYSBub21icmUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MwotbXNnaWQgImNtZCIKLW1zZ3N0ciAiY21kIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTMKLW1zZ2lkICJ0aGUgY29tbWFuZCB0byBydW4iCi1tc2dzdHIgImVsIGNvbWFuZG8gcGFyYSBlamVjdXRhciIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MjIwCi1tc2dpZCAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIGhhcyBubyBlZmZlY3Qgd2l0aG91dCAtLXJlYmFzZS1tZXJnZXMiCi1tc2dzdHIgIi0tW25vLV1yZWJhc2UtY291c2lucyBubyB0aWVuZSBlZmVjdG8gc2luIC0tcmViYXNlLW1lcmdlcyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MjI2Ci1tc2dpZCAiYSBiYXNlIGNvbW1pdCBtdXN0IGJlIHByb3ZpZGVkIHdpdGggLS11cHN0cmVhbSBvciAtLW9udG8iCi1tc2dzdHIgInVuIGNvbW1pdCBiYXNlIHRpZW5lIHF1ZSBzZXIgcHJvdmlzdG8gY29uIC0tdXBzdHJlYW0gbyAtLW9udG8iCi0KICM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MzMKIG1zZ2lkICJnaXQgcmVjZWl2ZS1wYWNrIDxnaXQtZGlyPiIKIG1zZ3N0ciAiZ2l0IHJlY2VpdmUtcGFjayA8Z2l0LWRpcj4iCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODMwCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjgyMQogbXNnaWQgIiIKICJCeSBkZWZhdWx0LCB1cGRhdGluZyB0aGUgY3VycmVudCBicmFuY2ggaW4gYSBub24tYmFyZSByZXBvc2l0b3J5XG4iCiAiaXMgZGVuaWVkLCBiZWNhdXNlIGl0IHdpbGwgbWFrZSB0aGUgaW5kZXggYW5kIHdvcmsgdHJlZSBpbmNvbnNpc3RlbnRcbiIKQEAgLTE1NTc0LDE3ICsxODc3MiwxNyBAQAogImFycmVnbGFyXG4iCiAiZWwgw6FyYm9sIGRlIHRyYWJham8gY29uIEhFQUQuXG4iCiAiXG4iCi0iUHVlZGUgY29uZmlndXJhciBsYSB2YXJpYWJsZSBkZSBjb25maWd1cmFjacOzbiAncmVjZWl2ZS5kZW55Q3VycmVudEJyYW5jaCdcbiIKKyJQdWVkZXMgY29uZmlndXJhciBsYSB2YXJpYWJsZSBkZSBjb25maWd1cmFjacOzbiAncmVjZWl2ZS5kZW55Q3VycmVudEJyYW5jaCdcbiIKICJcImlnbm9yZVwiIG8gXCJ3YXJuXCIgZW4gZWwgcmVwb3NpdG9yaW8gcmVtb3RvIHBhcmEgcGVybWl0aXJcbiIKLSJzdSByYW1hIGFjdHVhbDsgU2luIGVtYmFyZ28sIGVzdG8gbm8gc2UgcmVjb21pZW5kYSBhIG1lbm9zIHF1ZSB1c3RlZFxuIgotInNlIGhheWEgb3JnYW5pemFkbyBwYXJhIGFjdHVhbGl6YXIgc3Ugw6FyYm9sIGRlIHRyYWJham8gcGFyYSBxdWUgY29pbmNpZGEgY29uICIKLSJsbyBxdWVcbiIKLSJlbnZpYXLDoSBjb24gZWwgcHVzaCBkZSBvdHJhIG1hbmVyYS5cbiIKKyJzdSByYW1hIGFjdHVhbDsgU2luIGVtYmFyZ28sIGVzdG8gbm8gc2UgcmVjb21pZW5kYSBhIG1lbm9zIHF1ZSB0w7pcbiIKKyJ0ZSBoYXlhcyBvcmdhbml6YWRvIHBhcmEgYWN0dWFsaXphciBzdSDDoXJib2wgZGUgdHJhYmFqbyBwYXJhIHF1ZSBjb2luY2lkYSAiCisiY29uIGxvIHF1ZVxuIgorImVudmlhcsOhcyBjb24gZWwgcHVzaCBkZSBvdHJhIG1hbmVyYS5cbiIKICJcbiIKICJQYXJhIHN1cHJpbWlyIGVzdGUgbWVuc2FqZSB5IG1hbnRlbmVyIGVsIGNvbXBvcnRhbWllbnRvIHByZWRldGVybWluYWRvLFxuIgotImNvbmZpZ3VyZSAncmVjZWl2ZS5kZW55Q3VycmVudEJyYW5jaCcgYSAncmVmdXNlJy4iCisiY29uZmlndXJhICdyZWNlaXZlLmRlbnlDdXJyZW50QnJhbmNoJyBhICdyZWZ1c2UnLiIKIAotIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzo4NTAKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODQxCiBtc2dpZCAiIgogIkJ5IGRlZmF1bHQsIGRlbGV0aW5nIHRoZSBjdXJyZW50IGJyYW5jaCBpcyBkZW5pZWQsIGJlY2F1c2UgdGhlIG5leHRcbiIKICInZ2l0IGNsb25lJyB3b24ndCByZXN1bHQgaW4gYW55IGZpbGUgY2hlY2tlZCBvdXQsIGNhdXNpbmcgY29uZnVzaW9uLlxuIgpAQCAtMTU2MDMsMjYgKzE4ODAxLDgxIEBACiAiZW4gZWwgcmVwb3NpdG9yaW8gcmVtb3RvIHBhcmEgcGVybWl0aXIgYm9ycmFyIGxhIHJhbWEgYWN0dWFsLlxuIgogImNvbiBvIHNpbiBtZW5zYWplIGRlIGFkdmVydGVuY2lhLlxuIgogIlxuIgotIlBhcmEgc3VwcmltaXIgZXN0ZSBtZW5zYWplLCBwdWVkZSBjb25maWd1cmFybG8gZW4gJ3JlZnVzZScuIgorIlBhcmEgc3VwcmltaXIgZXN0ZSBtZW5zYWplLCBwdWVkZXMgY29uZmlndXJhcmxvIGVuICdyZWZ1c2UnLiIKIAotIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTI5CisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5MzgKIG1zZ2lkICJxdWlldCIKIG1zZ3N0ciAidHJhbnF1aWxvIgogCi0jOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NDMKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk1MgogbXNnaWQgIllvdSBtdXN0IHNwZWNpZnkgYSBkaXJlY3RvcnkuIgogbXNnc3RyICJTZSB0aWVuZSBxdWUgZXNwZWNpZmljYXIgdW4gZGlyZWN0b3Jpby4iCiAKLSM6IGJ1aWx0aW4vcmVmbG9nLmM6NTYzIGJ1aWx0aW4vcmVmbG9nLmM6NTY4CisjOiBidWlsdGluL3JlZmxvZy5jOjE3Cittc2dpZCAiIgorImdpdCByZWZsb2cgZXhwaXJlIFstLWV4cGlyZT08dGltZT5dIFstLWV4cGlyZS11bnJlYWNoYWJsZT08dGltZT5dIFstLSIKKyJyZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLXN0YWxlLWZpeF0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSBbLS1hbGxdICIKKyI8cmVmcz4uLi4iCittc2dzdHIgIiIKKyJnaXQgcmVmbG9nIGV4cGlyZSBbLS1leHBpcmU9PHRpZW1wbz5dIFstLWV4cGlyZS11bnJlYWNoYWJsZT08dGllbXBvPl0gWy0tIgorInJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tc3RhbGUtZml4XSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdIFstLWFsbF0gIgorIjxyZWZzPi4uLiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzoyMgorbXNnaWQgIiIKKyJnaXQgcmVmbG9nIGRlbGV0ZSBbLS1yZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gIgorIjxyZWZzPi4uLiIKK21zZ3N0ciAiIgorImdpdCByZWZsb2cgZGVsZXRlIFstLXJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSAiCisiPHJlZnM+Li4uIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjI1Cittc2dpZCAiZ2l0IHJlZmxvZyBleGlzdHMgPHJlZj4iCittc2dzdHIgImdpdCByZWZsb2cgZXhpc3RlIDxyZWY+IgorCisjOiBidWlsdGluL3JlZmxvZy5jOjU2OCBidWlsdGluL3JlZmxvZy5jOjU3MwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRpbWVzdGFtcCIKIG1zZ3N0ciAiJyVzJyBubyBlcyB1bmEgbWFyY2EgZGUgdGllbXBvIHbDoWxpZGEiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hcmtpbmcgcmVhY2hhYmxlIG9iamVjdHMuLi4iCittc2dzdHIgIk1hcmNhbmRvIG9iamVjdG9zIGFsY2FuemFibGVzLi4uIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwb2ludHMgbm93aGVyZSEiCittc2dzdHIgIsKhJXMgYXB1bnRhIGEgbmluZ8O6biBsYWRvISIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo2OTYKK21zZ2lkICJubyByZWZsb2cgc3BlY2lmaWVkIHRvIGRlbGV0ZSIKK21zZ3N0ciAibm8gcmVmbG9nIGVzcGVjaWZpY2FkbyBwYXJhIGJvcnJhciIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgcmVmbG9nOiAlcyIKK21zZ3N0ciAibm8gZXMgdW5hIHJlZmxvZzogJXMiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzEwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHJlZmxvZyBmb3IgJyVzJyIKK21zZ3N0ciAibm8gcmVmbG9nIHBhcmEgJyVzJyIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWYgZm9ybWF0OiAlcyIKK21zZ3N0ciAiZm9ybWF0byBpbnbDoWxpZG86ICVzIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc2NQorbXNnaWQgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCittc2dzdHIgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcKIG1zZ2lkICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0iCiBtc2dzdHIgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNworIzogYnVpbHRpbi9yZW1vdGUuYzoxOAogbXNnaWQgIiIKICJnaXQgcmVtb3RlIGFkZCBbLXQgPGJyYW5jaD5dIFstbSA8bWFzdGVyPl0gWy1mXSBbLS10YWdzIHwgLS1uby10YWdzXSBbLS0iCiAibWlycm9yPTxmZXRjaHxwdXNoPl0gPG5hbWU+IDx1cmw+IgpAQCAtMTU2MzAsODIgKzE4ODgzLDgyIEBACiAiZ2l0IHJlbW90ZSBhZGQgWy10IDxyYW1hPl0gWy1tIDxtYXN0ZXI+XSBbLWZdIFstLXRhZ3MgfCAtLW5vLXRhZ3NdIFstLSIKICJtaXJyb3I9PGZldGNofHB1c2g+XSA8bm9tYnJlPiA8dXJsPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOCBidWlsdGluL3JlbW90ZS5jOjM4CisjOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6MzkKIG1zZ2lkICJnaXQgcmVtb3RlIHJlbmFtZSA8b2xkPiA8bmV3PiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSByZW5hbWUgPHZpZWpvPiA8bnVldm8+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6NDMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjAgYnVpbHRpbi9yZW1vdGUuYzo0NAogbXNnaWQgImdpdCByZW1vdGUgcmVtb3ZlIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSByZW1vdmUgPG5vbWJyZT4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjAgYnVpbHRpbi9yZW1vdGUuYzo0OAorIzogYnVpbHRpbi9yZW1vdGUuYzoyMSBidWlsdGluL3JlbW90ZS5jOjQ5CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtaGVhZCA8bmFtZT4gKC1hIHwgLS1hdXRvIHwgLWQgfCAtLWRlbGV0ZSB8IDxicmFuY2g+KSIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtaGVhZCA8bm9tYnJlPiAoLWEgfCAtLWF1dG8gfCAtZCB8IC0tZGVsZXRlIHwgPHJhbWE+KSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMQorIzogYnVpbHRpbi9yZW1vdGUuYzoyMgogbXNnaWQgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSBzaG93IFstbl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gc2hvdyBbLW5dIDxub21icmU+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIyCisjOiBidWlsdGluL3JlbW90ZS5jOjIzCiBtc2dpZCAiZ2l0IHJlbW90ZSBwcnVuZSBbLW4gfCAtLWRyeS1ydW5dIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBwcnVuZSBbLW4gfCAtLWRyeS1ydW5dIDxub21icmU+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIzCisjOiBidWlsdGluL3JlbW90ZS5jOjI0CiBtc2dpZCAiIgogImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSB1cGRhdGUgWy1wIHwgLS1wcnVuZV0gWyg8Z3JvdXA+IHwgPHJlbW90ZT4pLi4uXSIKIG1zZ3N0ciAiIgogImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSB1cGRhdGUgWy1wIHwgLS1wcnVuZV0gWyg8Z3J1cG8+IHwgPHJlbW90bz4pLi4uXSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNAorIzogYnVpbHRpbi9yZW1vdGUuYzoyNQogbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIFstLWFkZF0gPG5hbWU+IDxicmFuY2g+Li4uIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyBbLS1hZGRdIDxub21icmU+IDxyYW1hPi4uLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNSBidWlsdGluL3JlbW90ZS5jOjc0CisjOiBidWlsdGluL3JlbW90ZS5jOjI2IGJ1aWx0aW4vcmVtb3RlLmM6NzUKIG1zZ2lkICJnaXQgcmVtb3RlIGdldC11cmwgWy0tcHVzaF0gWy0tYWxsXSA8bmFtZT4iCiBtc2dzdHIgImdpdCByZW1vdGUgZ2V0LXVybCBbLS1wdXNoXSBbLS1hbGxdIDxub21icmU+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI2IGJ1aWx0aW4vcmVtb3RlLmM6NzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjcgYnVpbHRpbi9yZW1vdGUuYzo4MAogbXNnaWQgImdpdCByZW1vdGUgc2V0LXVybCBbLS1wdXNoXSA8bmFtZT4gPG5ld3VybD4gWzxvbGR1cmw+XSIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIFstLXB1c2hdIDxub21icmU+IDxudWV2by11cmw+IFs8dmllam8tdXJsPl0iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjcgYnVpbHRpbi9yZW1vdGUuYzo4MAorIzogYnVpbHRpbi9yZW1vdGUuYzoyOCBidWlsdGluL3JlbW90ZS5jOjgxCiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tYWRkIDxuYW1lPiA8bmV3dXJsPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tYWRkIDxub21icmU+IDxudWV2by11cmw+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI4IGJ1aWx0aW4vcmVtb3RlLmM6ODEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjkgYnVpbHRpbi9yZW1vdGUuYzo4MgogbXNnaWQgImdpdCByZW1vdGUgc2V0LXVybCAtLWRlbGV0ZSA8bmFtZT4gPHVybD4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LXVybCAtLWRlbGV0ZSA8bm9tYnJlPiA8dXJsPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzozMworIzogYnVpbHRpbi9yZW1vdGUuYzozNAogbXNnaWQgImdpdCByZW1vdGUgYWRkIFs8b3B0aW9ucz5dIDxuYW1lPiA8dXJsPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBhZGQgWzxvcGNpb25lcz5dIDxub21icmU+IDx1cmw+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjUzCisjOiBidWlsdGluL3JlbW90ZS5jOjU0CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgPG5hbWU+IDxicmFuY2g+Li4uIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyA8bm9tYnJlPiA8cmFtYT4uLi4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NTUKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyAtLWFkZCA8bmFtZT4gPGJyYW5jaD4uLi4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIC0tYWRkIDxub21icmU+IDxyYW1hPi4uLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo1OQorIzogYnVpbHRpbi9yZW1vdGUuYzo2MAogbXNnaWQgImdpdCByZW1vdGUgc2hvdyBbPG9wdGlvbnM+XSA8bmFtZT4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2hvdyBbPG9wY2lvbmVzPl0gPG5vbWJyZT4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjUKIG1zZ2lkICJnaXQgcmVtb3RlIHBydW5lIFs8b3B0aW9ucz5dIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBwcnVuZSBbPG9wY2lvbmVzPl0gPG5vbWJyZT4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NjkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzAKIG1zZ2lkICJnaXQgcmVtb3RlIHVwZGF0ZSBbPG9wdGlvbnM+XSBbPGdyb3VwPiB8IDxyZW1vdGU+XS4uLiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSB1cGRhdGUgWzxvcGNpb25lcz5dIFs8Z3J1cG8+IHwgPHJlbW90bz5dLi4uIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk4CisjOiBidWlsdGluL3JlbW90ZS5jOjk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVwZGF0aW5nICVzIgogbXNnc3RyICJBY3R1YWxpemFuZG8gJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMwCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMQogbXNnaWQgIiIKICItLW1pcnJvciBpcyBkYW5nZXJvdXMgYW5kIGRlcHJlY2F0ZWQ7IHBsZWFzZVxuIgogIlx0IHVzZSAtLW1pcnJvcj1mZXRjaCBvciAtLW1pcnJvcj1wdXNoIGluc3RlYWQiCkBAIC0xNTcxMyw4NCArMTg5NjYsMTAwIEBACiAiVXNhciAtLW1pcnJvciBlcyBwZWxpZ3Jvc28geSBlc3TDoSBkZXNhcHJvYmFkbztcbiIKICJcdCB1c2EgbcOhcyBiaWVuIC0tbWlycm9yPWZldGNoIG8gLS1taXJyb3I9cHVzaCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gbWlycm9yIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAiYXJndW1lbnRvIG1pcnJvciBkZXNjb25vY2lkbzogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYzCisjOiBidWlsdGluL3JlbW90ZS5jOjE2NAogbXNnaWQgImZldGNoIHRoZSByZW1vdGUgYnJhbmNoZXMiCiBtc2dzdHIgInJlYWxpemFyIGZldGNoIGEgbGFzIHJhbWFzIHJlbW90YXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY1CisjOiBidWlsdGluL3JlbW90ZS5jOjE2NgogbXNnaWQgImltcG9ydCBhbGwgdGFncyBhbmQgYXNzb2NpYXRlZCBvYmplY3RzIHdoZW4gZmV0Y2hpbmciCiBtc2dzdHIgImltcG9ydGFyIHRvZG9zIGxvcyB0YWdzIHkgb2JqZXRvcyBhc29jaWFkb3MgY3VhbmRvIHJlYWxpemEgZWwgZmV0Y2giCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY4CisjOiBidWlsdGluL3JlbW90ZS5jOjE2OQogbXNnaWQgIm9yIGRvIG5vdCBmZXRjaCBhbnkgdGFnIGF0IGFsbCAoLS1uby10YWdzKSIKIG1zZ3N0ciAibyBubyByZWFsemlhciBmZXRjaCBhIG5pbmfDum4gdGFnICgtLW5vLXRhZ3MpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE3MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNzEKIG1zZ2lkICJicmFuY2goZXMpIHRvIHRyYWNrIgogbXNnc3RyICJyYW1hKHMpIHBhcmEgcmFzdHJlYXIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcxCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MgogbXNnaWQgIm1hc3RlciBicmFuY2giCiBtc2dzdHIgInJhbWEgbWFzdGVyIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE3MworIzogYnVpbHRpbi9yZW1vdGUuYzoxNzQKIG1zZ2lkICJzZXQgdXAgcmVtb3RlIGFzIGEgbWlycm9yIHRvIHB1c2ggdG8gb3IgZmV0Y2ggZnJvbSIKIG1zZ3N0ciAiIgogImNvbmZpZ3VyYXIgcmVtb3RlIGNvbW8gbWlycm9yIHBhcmEgcmVhbGl6YXIgcHVzaCBvIGRlc2RlIGVsIGN1YWwgcmVhbGl6YXIgIgogImZldGNoIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE4NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxODYKIG1zZ2lkICJzcGVjaWZ5aW5nIGEgbWFzdGVyIGJyYW5jaCBtYWtlcyBubyBzZW5zZSB3aXRoIC0tbWlycm9yIgogbXNnc3RyICJlc3BlY2lmaWNhciB1bmEgcmFtYSBtYXN0ZXIgbm8gdGllbmUgc2VudGlkbyBjb24gLS1taXJyb3IiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg3CisjOiBidWlsdGluL3JlbW90ZS5jOjE4OAogbXNnaWQgInNwZWNpZnlpbmcgYnJhbmNoZXMgdG8gdHJhY2sgbWFrZXMgc2Vuc2Ugb25seSB3aXRoIGZldGNoIG1pcnJvcnMiCiBtc2dzdHIgImVzcGVjaWZpY2FyIHJhbWFzIHBhcmEgcmFzdHJlYXIgc29sbyB0aWVuZSBzZW50aWRvIGNvbiBmZXRjaCBtaXJyb3JzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE5NCBidWlsdGluL3JlbW90ZS5jOjYzNgorIzogYnVpbHRpbi9yZW1vdGUuYzoxOTUgYnVpbHRpbi9yZW1vdGUuYzo2OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3RlICVzIGFscmVhZHkgZXhpc3RzLiIKIG1zZ3N0ciAicmVtb3RvICVzIHlhIGV4aXN0ZS4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk4IGJ1aWx0aW4vcmVtb3RlLmM6NjQwCisjOiBidWlsdGluL3JlbW90ZS5jOjE5OSBidWlsdGluL3JlbW90ZS5jOjcwMAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHJlbW90ZSBuYW1lIgogbXNnc3RyICInJXMnIG5vIGVzIHVuIG5vbWJyZSByZW1vdG8gdsOhbGlkbyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMzgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzZXR1cCBtYXN0ZXIgJyVzJyIKIG1zZ3N0ciAiTm8gc2UgcHVkbyBjb25maWd1cmFyIG1hc3RlciAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjM0NAorIzogYnVpbHRpbi9yZW1vdGUuYzozNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGdldCBmZXRjaCBtYXAgZm9yIHJlZnNwZWMgJXMiCiBtc2dzdHIgIk5vIHNlIHB1ZG8gcmVhbGl6YXIgZWwgZmV0Y2ggYWwgbWFwYSBwYXJhIHJlZnNwZWMgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NDQzIGJ1aWx0aW4vcmVtb3RlLmM6NDUxCisjOiBidWlsdGluL3JlbW90ZS5jOjQ1MyBidWlsdGluL3JlbW90ZS5jOjQ2MQogbXNnaWQgIihtYXRjaGluZykiCiBtc2dzdHIgIihjb25jb3JkYW5kbykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NDU1CisjOiBidWlsdGluL3JlbW90ZS5jOjQ2NQogbXNnaWQgIihkZWxldGUpIgogbXNnc3RyICIoZWxpbWluYXIpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjYyOSBidWlsdGluL3JlbW90ZS5jOjc2NSBidWlsdGluL3JlbW90ZS5jOjg2NAorIzogYnVpbHRpbi9yZW1vdGUuYzo2NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHNldCAnJXMnIgorbXNnc3RyICJubyBzZSBwdWRvIGNvbmZpZ3VyYXIgJyVzJyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo2NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSAlcyBjb25maWd1cmF0aW9uIHJlbW90ZS5wdXNoRGVmYXVsdCBpbjpcbiIKKyJcdCVzOiVkXG4iCisibm93IG5hbWVzIHRoZSBub24tZXhpc3RlbnQgcmVtb3RlICclcyciCittc2dzdHIgIiIKKyJMYSBjb25maWd1cmFjacOzbiAlcyByZW1vdGUucHVzaERlZmF1bHQgZW46XG4iCisiXHQlczolZFxuIgorImFob3JhIG5vbWJyYSBhbCByZW1vdG8gaW5leGlzdGVudGUgJyVzJyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo2ODkgYnVpbHRpbi9yZW1vdGUuYzo4MzIgYnVpbHRpbi9yZW1vdGUuYzo5NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZW1vdGU6ICclcyciCiBtc2dzdHIgIk5vIGV4aXN0ZSBlbCByZW1vdG8gJyVzJyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NDYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW5hbWUgY29uZmlnIHNlY3Rpb24gJyVzJyB0byAnJXMnIgogbXNnc3RyICJObyBzZSBwdWRvIHJlbm9tYnJhciBsYSBzZWNjacOzbiBkZSBjb25maWd1cmFjacOzbiAnJXMnIGEgJyVzJyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NjYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJOb3QgdXBkYXRpbmcgbm9uLWRlZmF1bHQgZmV0Y2ggcmVmc3BlY1xuIgpAQCAtMTU4MDEsMTcgKzE5MDcwLDE3IEBACiAiXHQlc1xuIgogIlx0UG9yIGZhdm9yIGFjdHVhbGljZSBsYSBjb25maWd1cmFjacOzbiBtYW51YWxtZW50ZSBzaSBlcyBuZWNlc2FyaW8uIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjcwMgorIzogYnVpbHRpbi9yZW1vdGUuYzo3NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsZXRpbmcgJyVzJyBmYWlsZWQiCiBtc2dzdHIgImJvcnJhbmRvICclcycgZmFsbMOzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjczNgorIzogYnVpbHRpbi9yZW1vdGUuYzo4MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY3JlYXRpbmcgJyVzJyBmYWlsZWQiCiBtc2dzdHIgImNyZWFuZG8gJyVzJyBmYWxsw7MiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6ODAyCisjOiBidWlsdGluL3JlbW90ZS5jOjg3NgogbXNnaWQgIiIKICJOb3RlOiBBIGJyYW5jaCBvdXRzaWRlIHRoZSByZWZzL3JlbW90ZXMvIGhpZXJhcmNoeSB3YXMgbm90IHJlbW92ZWQ7XG4iCiAidG8gZGVsZXRlIGl0LCB1c2U6IgpAQCAtMTU4MTksMTI1ICsxOTA4OCwxMjUgQEAKICJOb3RlOiBTb21lIGJyYW5jaGVzIG91dHNpZGUgdGhlIHJlZnMvcmVtb3Rlcy8gaGllcmFyY2h5IHdlcmUgbm90IHJlbW92ZWQ7XG4iCiAidG8gZGVsZXRlIHRoZW0sIHVzZToiCiBtc2dzdHJbMF0gIiIKLSJOb3RhOiBVbmEgcmFtYSBmdWVyYSBkZSBsYSBqZXJhcnF1w61hIHJlZnMvcmVtb3Rlcy8gbm8gZnVlIHJlbW92aWRhO1xuIgorIk5vdGE6IFVuYSByYW1hIGZ1ZXJhIGRlIGxhIGplcmFycXXDrWEgcmVmcy9yZW1vdGVzLyBubyBmdWUgZWxpbWluYWRhO1xuIgogInBhcmEgYm9ycmFybGEsIHVzZToiCiBtc2dzdHJbMV0gIiIKICJOb3RhOiBBbGd1bmFzIHJhbWFzIGZ1ZXJhIGRlIGxhIGplcmFycXXDrWEgcmVmcy9yZW1vdGVzLyBubyBmdWVyb24gIgotInJlbW92aWRhcztcbiIKKyJlbGltaW5hZGFzO1xuIgogInBhcmEgYm9ycmFybGFzLCB1c2U6IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjgxNgorIzogYnVpbHRpbi9yZW1vdGUuYzo4OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBjb25maWcgc2VjdGlvbiAnJXMnIgogbXNnc3RyICJObyBzZSBwdWRvIGJvcnJhciBsYSBzZWNjacOzbiBkZSBjb25maWd1cmFjacOzbiAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkxNworIzogYnVpbHRpbi9yZW1vdGUuYzo5OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIG5ldyAobmV4dCBmZXRjaCB3aWxsIHN0b3JlIGluIHJlbW90ZXMvJXMpIgogbXNnc3RyICIgbnVldm8gKHNpZ3VpZW50ZSBmZXRjaCBzZSBndWFyZGFyw6EgZW4gcmVtb3Rlcy8lcykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTIwCisjOiBidWlsdGluL3JlbW90ZS5jOjk5NgogbXNnaWQgIiB0cmFja2VkIgogbXNnc3RyICIgcmFzdHJlYWRhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkyMgorIzogYnVpbHRpbi9yZW1vdGUuYzo5OTgKIG1zZ2lkICIgc3RhbGUgKHVzZSAnZ2l0IHJlbW90ZSBwcnVuZScgdG8gcmVtb3ZlKSIKIG1zZ3N0ciAiIHZpZWpvICggdXNlICdnaXQgcmVtb3RlIHBydW5lJyBwYXJhIGVsaW1pbmFyKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAwMAogbXNnaWQgIiA/Pz8iCiBtc2dzdHIgIiA/Pz8iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTY1CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBicmFuY2guJXMubWVyZ2U7IGNhbm5vdCByZWJhc2Ugb250byA+IDEgYnJhbmNoIgogbXNnc3RyICJpbnbDoWxpZG8gYnJhbmNoLiVzLm1lcmdlOyBubyBzZSBwdWVkZSByZWJhc2FyIGVuID4gMSByYW1hIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk3NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDUwCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYmFzZXMgaW50ZXJhY3RpdmVseSBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAicmViYXNhIGludGVyYWN0aXZhbWVudGUgZW4gcmVtb3RvICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk3NgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDUyCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYmFzZXMgaW50ZXJhY3RpdmVseSAod2l0aCBtZXJnZXMpIG9udG8gcmVtb3RlICVzIgogbXNnc3RyICJyZWJhc2EgaW50ZXJhY3RpdmFtZW50ZSAoY29uIGZ1c2lvbmVzKSBlbiByZW1vdG8gJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTc5CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmViYXNlcyBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAicmViYXNhIHNvYnJlIGVsIHJlbW90byAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5ODMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIgbWVyZ2VzIHdpdGggcmVtb3RlICVzIgogbXNnc3RyICIgc2UgZnVzaW9uYSBjb24gcmVtb3RvICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk4NgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1lcmdlcyB3aXRoIHJlbW90ZSAlcyIKIG1zZ3N0ciAiZnVzaW9uYSBjb24gcmVtb3RvICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk4OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiUtKnMgICAgYW5kIHdpdGggcmVtb3RlICVzXG4iCiBtc2dzdHIgIiUtKnMgeSBjb24gZWwgcmVtb3RvICVzXG4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzMgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTA4CiBtc2dpZCAiY3JlYXRlIgogbXNnc3RyICJjcmVhciIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDM1CisjOiBidWlsdGluL3JlbW90ZS5jOjExMTEKIG1zZ2lkICJkZWxldGUiCiBtc2dzdHIgImJvcnJhciIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDM5CisjOiBidWlsdGluL3JlbW90ZS5jOjExMTUKIG1zZ2lkICJ1cCB0byBkYXRlIgogbXNnc3RyICJhY3R1YWxpemFkbyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQyCisjOiBidWlsdGluL3JlbW90ZS5jOjExMTgKIG1zZ2lkICJmYXN0LWZvcndhcmRhYmxlIgogbXNnc3RyICJwdWVkZSByZWFsaXphciBmYXN0LWZvcndhcmQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA0NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTIxCiBtc2dpZCAibG9jYWwgb3V0IG9mIGRhdGUiCiBtc2dzdHIgImRlc2FjdHVhbGl6YWRvIGxvY2FsIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNTIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBmb3JjZXMgdG8gJS0qcyAoJXMpIgogbXNnc3RyICIgICAgJS0qcyBmdWVyemEgYSAlLSpzICglcykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIHB1c2hlcyB0byAlLSpzICglcykiCiBtc2dzdHIgIiAgICAlLSpzIHB1YmxpY2EgYSAlLSpzICglcykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIGZvcmNlcyB0byAlcyIKIG1zZ3N0ciAiICAgICUtKnMgZnVlcnphIGEgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA2MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIHB1c2hlcyB0byAlcyIKIG1zZ3N0ciAiICAgICUtKnMgcHVibGljYSBhICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExMzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIwNgogbXNnaWQgImRvIG5vdCBxdWVyeSByZW1vdGVzIgogbXNnc3RyICJubyBjb25zdWx0YXIgcmVtb3RvcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU3CisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiKiByZW1vdGUgJXMiCiBtc2dzdHIgIiogcmVtb3RvICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNTgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIgIEZldGNoIFVSTDogJXMiCiBtc2dzdHIgIiAgVVJMICBwYXJhIG9idGVuZXI6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNTkgYnVpbHRpbi9yZW1vdGUuYzoxMTc1IGJ1aWx0aW4vcmVtb3RlLmM6MTMxNAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjM1IGJ1aWx0aW4vcmVtb3RlLmM6MTI1MSBidWlsdGluL3JlbW90ZS5jOjEzOTAKIG1zZ2lkICIobm8gVVJMKSIKIG1zZ3N0ciAiKHNpbiBVUkwpIgogCkBAIC0xNTk0NSwxOTQgKzE5MjE0LDE4NSBAQAogIy4gd2l0aCB0aGUgb25lIGluICIgRmV0Y2ggVVJMOiAlcyIKICMuIHRyYW5zbGF0aW9uLgogIy4KLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3MyBidWlsdGluL3JlbW90ZS5jOjExNzUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0OSBidWlsdGluL3JlbW90ZS5jOjEyNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBQdXNoICBVUkw6ICVzIgogbXNnc3RyICIgIFVSTCBwYXJhIHB1YmxpY2FyOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTc3IGJ1aWx0aW4vcmVtb3RlLmM6MTE3OSBidWlsdGluL3JlbW90ZS5jOjExODEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1MyBidWlsdGluL3JlbW90ZS5jOjEyNTUgYnVpbHRpbi9yZW1vdGUuYzoxMjU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgSEVBRCBicmFuY2g6ICVzIgogbXNnc3RyICIgIFJhbWEgSEVBRDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjUzCiBtc2dpZCAiKG5vdCBxdWVyaWVkKSIKIG1zZ3N0ciAiKG5vIGNvbnN1bHRhZG8pIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1NQogbXNnaWQgIih1bmtub3duKSIKIG1zZ3N0ciAiKGRlc2Nvbm9jaWRvKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTgzCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiAgSEVBRCBicmFuY2ggKHJlbW90ZSBIRUFEIGlzIGFtYmlndW91cywgbWF5IGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nKTpcbiIKIG1zZ3N0ciAiIgogIiAgSEVBRCBlbiByYW1hICggSEVBRCByZW1vdG8gZXMgYW1iaWd1bywgcHVlZGUgc2VyIHVubyBkZSBsb3Mgc2lndWllbnRlcyk6XG4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE5NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgUmVtb3RlIGJyYW5jaDolcyIKIG1zZ2lkX3BsdXJhbCAiICBSZW1vdGUgYnJhbmNoZXM6JXMiCiBtc2dzdHJbMF0gIiAgUmFtYSByZW1vdGE6JXMiCiBtc2dzdHJbMV0gIiAgUmFtYXMgcmVtb3RhczolcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTk4IGJ1aWx0aW4vcmVtb3RlLmM6MTIyNAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjc0IGJ1aWx0aW4vcmVtb3RlLmM6MTMwMAogbXNnaWQgIiAoc3RhdHVzIG5vdCBxdWVyaWVkKSIKIG1zZ3N0ciAiIChlc3RhZG8gbm8gY29uc3VsdGFkbykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIwNworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjgzCiBtc2dpZCAiICBMb2NhbCBicmFuY2ggY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dpZF9wbHVyYWwgIiAgTG9jYWwgYnJhbmNoZXMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dzdHJbMF0gIiAgUmFtYSBsb2NhbCBjb25maWd1cmFkYSBwYXJhICdnaXQgcHVsbCc6IgogbXNnc3RyWzFdICIgIFJhbWFzIGxvY2FsZXMgY29uZmlndXJhZGFzIHBhcmEgJ2dpdCBwdWxsJzoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIxNQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjkxCiBtc2dpZCAiICBMb2NhbCByZWZzIHdpbGwgYmUgbWlycm9yZWQgYnkgJ2dpdCBwdXNoJyIKIG1zZ3N0ciAiICBMYXMgcmVmZXJlbmNpYXMgbG9jYWxlcyBzZXLDoW4gcmVmbGVqYWRhcyBwb3IgJ2dpdCBwdXNoJyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjIxCisjOiBidWlsdGluL3JlbW90ZS5jOjEyOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBMb2NhbCByZWYgY29uZmlndXJlZCBmb3IgJ2dpdCBwdXNoJyVzOiIKIG1zZ2lkX3BsdXJhbCAiICBMb2NhbCByZWZzIGNvbmZpZ3VyZWQgZm9yICdnaXQgcHVzaCclczoiCiBtc2dzdHJbMF0gIiAgUmVmZXJlbmNpYSBsb2NhbCBjb25maWd1cmFkYSBwYXJhICdnaXQgcHVzaCclczoiCiBtc2dzdHJbMV0gIiAgUmVmZXJlbmNpYXMgbG9jYWxlcyBjb25maWd1cmFkYXMgcGFyYSAnZ2l0IHB1c2gnJXM6IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNDIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxOAogbXNnaWQgInNldCByZWZzL3JlbW90ZXMvPG5hbWU+L0hFQUQgYWNjb3JkaW5nIHRvIHJlbW90ZSIKIG1zZ3N0ciAiY29uZmlndXJhciByZWZzL3JlbW90ZXMvPG5vbWJyZT4vSEVBRCBkZSBhY3VlcmRvIGFsIHJlbW90byIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjQ0CisjOiBidWlsdGluL3JlbW90ZS5jOjEzMjAKIG1zZ2lkICJkZWxldGUgcmVmcy9yZW1vdGVzLzxuYW1lPi9IRUFEIgogbXNnc3RyICJib3JyYXIgcmVmcy9yZW1vdG9zLzxub21icmU+L0hFQUQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzM1CiBtc2dpZCAiQ2Fubm90IGRldGVybWluZSByZW1vdGUgSEVBRCIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgZGV0ZXJtaW5hciBlbCBIRUFEIHJlbW90byIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjYxCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMzcKIG1zZ2lkICJNdWx0aXBsZSByZW1vdGUgSEVBRCBicmFuY2hlcy4gUGxlYXNlIGNob29zZSBvbmUgZXhwbGljaXRseSB3aXRoOiIKIG1zZ3N0ciAiTcO6bHRpcGxlcyByYW1hcyBIRUFEIHJlbW90YXMuIFBvciBmYXZvciBlc2NvamEgdW5hIGV4cGzDrWNpdGFtZW50ZSBjb246IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNzEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZGVsZXRlICVzIgogbXNnc3RyICJObyBzZSBwdWRvIGJvcnJhciAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjc5CisjOiBidWlsdGluL3JlbW90ZS5jOjEzNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgcmVmOiAlcyIKIG1zZ3N0ciAiTm8gZXMgdW4gcmVmIHbDoWxpZG86ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyODEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc2V0dXAgJXMiCiBtc2dzdHIgIk5vIHNlIHB1ZG8gY29uZmlndXJhciAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjk5CisjOiBidWlsdGluL3JlbW90ZS5jOjEzNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICVzIHdpbGwgYmVjb21lIGRhbmdsaW5nISIKLW1zZ3N0ciAiICVzIHNlcsOhIGNvbGdhZG8hIgorbXNnc3RyICIgwqElcyBzZXLDoSBjb2xnYWRvISIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzAwCisjOiBidWlsdGluL3JlbW90ZS5jOjEzNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiICVzIGhhcyBiZWNvbWUgZGFuZ2xpbmchIgotbXNnc3RyICIgJXMgaGEgc2lkbyBjb2xnYWRvISIKK21zZ3N0ciAiIMKhJXMgaGEgc2lkbyBjb2xnYWRvISIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzEwCisjOiBidWlsdGluL3JlbW90ZS5jOjEzODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHJ1bmluZyAlcyIKIG1zZ3N0ciAiUmVjb3J0YW5kbyAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzExCisjOiBidWlsdGluL3JlbW90ZS5jOjEzODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVVJMOiAlcyIKIG1zZ3N0ciAiVVJMOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzI3CisjOiBidWlsdGluL3JlbW90ZS5jOjE0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiICogW3dvdWxkIHBydW5lXSAlcyIKIG1zZ3N0ciAiICogW2VqZWN1dGFyw6EgcHJ1bmVdICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQwNgogIywgYy1mb3JtYXQKIG1zZ2lkICIgKiBbcHJ1bmVkXSAlcyIKIG1zZ3N0ciAiICogW3BydW5lIHJlYWxpemFkb10gJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM3NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNDUxCiBtc2dpZCAicHJ1bmUgcmVtb3RlcyBhZnRlciBmZXRjaGluZyIKIG1zZ3N0ciAicmVjb3J0YXIgcmVtb3RvcyB0cmFzIHJlYWxpemFyIGZldGNoIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0MzggYnVpbHRpbi9yZW1vdGUuYzoxNDkyIGJ1aWx0aW4vcmVtb3RlLmM6MTU2MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTE0IGJ1aWx0aW4vcmVtb3RlLmM6MTU2OCBidWlsdGluL3JlbW90ZS5jOjE2MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZW1vdGUgJyVzJyIKIG1zZ3N0ciAiTm8gZXhpc3RlIGVsIHJlbW90byAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0NTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzMAogbXNnaWQgImFkZCBicmFuY2giCiBtc2dzdHIgImFncmVnYXIgcmFtYSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDYxCisjOiBidWlsdGluL3JlbW90ZS5jOjE1MzcKIG1zZ2lkICJubyByZW1vdGUgc3BlY2lmaWVkIgogbXNnc3RyICJubyBoYXkgcmVtb3RvcyBlc3BlY2lmaWNhZG9zIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0NzgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU1NAogbXNnaWQgInF1ZXJ5IHB1c2ggVVJMcyByYXRoZXIgdGhhbiBmZXRjaCBVUkxzIgogbXNnc3RyICJjb25zdWx0YXIgVVJMcyBkZSBwdXNoIGVuIGx1Z2FyIGRlIFVSTHMgZGUgZmV0Y2giCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ4MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTU2CiBtc2dpZCAicmV0dXJuIGFsbCBVUkxzIgogbXNnc3RyICJyZXRvcm5hciB0b2RvcyBsb3MgVVJMcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTA4CisjOiBidWlsdGluL3JlbW90ZS5jOjE1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gVVJMcyBjb25maWd1cmVkIGZvciByZW1vdGUgJyVzJyIKIG1zZ3N0ciAibm8gaGF5IFVSTHMgY29uZmlndXJhZG9zIHBhcmEgcmVtb3RvICclcyciCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzNAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEwCiBtc2dpZCAibWFuaXB1bGF0ZSBwdXNoIFVSTHMiCiBtc2dzdHIgIm1hbmlwdWxhciBVUkxzIGRlIHB1c2giCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzNgorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEyCiBtc2dpZCAiYWRkIFVSTCIKIG1zZ3N0ciAiYWdyZWdhciBVUkwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzOAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjE0CiBtc2dpZCAiZGVsZXRlIFVSTHMiCiBtc2dzdHIgImJvcnJhciBVUkxzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1NDUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYyMQogbXNnaWQgIi0tYWRkIC0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS1hZGQgLS1kZWxldGUgbm8gdGllbmUgc2VudGlkbyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTg0CisjOiBidWlsdGluL3JlbW90ZS5jOjE2NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBvbGQgVVJMIHBhdHRlcm46ICVzIgogbXNnc3RyICJQYXRyw7NuIGRlIFVSTCB2aWVqbyBpbnbDoWxpZG86ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1OTIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIFVSTCBmb3VuZDogJXMiCiBtc2dzdHIgIk5vIHNlIGVuY29udHLDsyBVUkw6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1OTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY3MAogbXNnaWQgIldpbGwgbm90IGRlbGV0ZSBhbGwgbm9uLXB1c2ggVVJMcyIKIG1zZ3N0ciAiTm8gYm9ycmFyw6EgdG9kb3MgbG9zIFVSTHMgZGUgbm8tcHVzaCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEwCi1tc2dpZCAiYmUgdmVyYm9zZTsgbXVzdCBiZSBwbGFjZWQgYmVmb3JlIGEgc3ViY29tbWFuZCIKLW1zZ3N0ciAic2VyIHZlcmJvc287IHRpZW5lIHF1ZSBzZXIgYWdyZWdhZG8gYW50ZXMgZGUgdW4gc3ViY29tYW5kbyIKLQotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjQxCi0jLCBjLWZvcm1hdAotbXNnaWQgIlVua25vd24gc3ViY29tbWFuZDogJXMiCi1tc2dzdHIgIlN1Yi1jb21hbmRvIGRlc2Nvbm9jaWRvOiAlcyIKLQotIzogYnVpbHRpbi9yZXBhY2suYzoyMgorIzogYnVpbHRpbi9yZXBhY2suYzoyMwogbXNnaWQgImdpdCByZXBhY2sgWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCByZXBhY2sgWzxvcGNpb25lcz5dIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI3CisjOiBidWlsdGluL3JlcGFjay5jOjI4CiBtc2dpZCAiIgogIkluY3JlbWVudGFsIHJlcGFja3MgYXJlIGluY29tcGF0aWJsZSB3aXRoIGJpdG1hcCBpbmRleGVzLiAgVXNlXG4iCiAiLS1uby13cml0ZS1iaXRtYXAtaW5kZXggb3IgZGlzYWJsZSB0aGUgcGFjay53cml0ZWJpdG1hcHMgY29uZmlndXJhdGlvbi4iCkBAIC0xNjE0MCw5NyArMTk0MDAsMTM0IEBACiAiUmUgZW1wYXF1ZXRhZG9zIGluY3JlbWVudGFsZXMgc29uIGluY29tcGF0aWJsZXMgY29uIMOtbmRpY2VzIGJpdG1hcC4gVXNlIFxuIgogIi0tbm8td3JpdGUtYml0bWFwLWluZGV4IG8gZGVzaGFiaWxpdGUgbGEgY29uZmlndXJhY2nDs24gcGFjay53cml0ZWJpdG1hcHMuIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5NAorIzogYnVpbHRpbi9yZXBhY2suYzoxOTEKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICJubyBzZSBwdWVkZSBpbmljaWFyIHBhY2stb2JqZWN0cyBwYXJhIHJlZW1wYXF1ZXRhciBvYmpldG9zIHByb21pc29yZXMiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjMwIGJ1aWx0aW4vcmVwYWNrLmM6NDE2Cittc2dpZCAicmVwYWNrOiBFeHBlY3RpbmcgZnVsbCBoZXggb2JqZWN0IElEIGxpbmVzIG9ubHkgZnJvbSBwYWNrLW9iamVjdHMuIgorbXNnc3RyICIiCisicmVwYWNrOiBFc3BlcmFuZG8gbMOtbmVhcyBkZSBJRCBkZSBvYmpldG8gZW4gZnVsbCBoZXggc29sbyBkZXNkZSBwYWNrLW9iamVjdHMuIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI1NAorbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgZmluYWxpemFyIHBhY2stb2JqZWN0cyBwYXJhIHJlZW1wYXF1ZXRhciBvYmpldG9zIHByb21pc29yZXMiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjkyCiBtc2dpZCAicGFjayBldmVyeXRoaW5nIGluIGEgc2luZ2xlIHBhY2siCiBtc2dzdHIgImVtcGFxdWV0YXIgdG9kbyBlbiB1biDDum5pY28gcGFxdWV0ZSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyOTYKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk0CiBtc2dpZCAic2FtZSBhcyAtYSwgYW5kIHR1cm4gdW5yZWFjaGFibGUgb2JqZWN0cyBsb29zZSIKIG1zZ3N0ciAibG8gbWlzbW8gcXVlIC1hLCB5IHBpZXJkZSBvYmpldG9zIGluYWNjZXNpYmxlcyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyOTkKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk3CiBtc2dpZCAicmVtb3ZlIHJlZHVuZGFudCBwYWNrcywgYW5kIHJ1biBnaXQtcHJ1bmUtcGFja2VkIgogbXNnc3RyICJlbGltaW5hciBwYXF1ZXRlcyByZWR1bmRhbnRlcywgeSBlamVjdXRhciBnaXQtcHJ1bmUtcGFja2VkIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMwMQorIzogYnVpbHRpbi9yZXBhY2suYzoyOTkKIG1zZ2lkICJwYXNzIC0tbm8tcmV1c2UtZGVsdGEgdG8gZ2l0LXBhY2stb2JqZWN0cyIKIG1zZ3N0ciAicGFzYXIgLS1uby1yZXVzZS1kZWx0YSBhIGdpdC1wYWNrLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAzCisjOiBidWlsdGluL3JlcGFjay5jOjMwMQogbXNnaWQgInBhc3MgLS1uby1yZXVzZS1vYmplY3QgdG8gZ2l0LXBhY2stb2JqZWN0cyIKIG1zZ3N0ciAicGFzYXIgLS1uby1yZXVzZS1vYmplY3QgYSBnaXQtcGFjay1vYmplY3RzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMwNQorIzogYnVpbHRpbi9yZXBhY2suYzozMDMKIG1zZ2lkICJkbyBub3QgcnVuIGdpdC11cGRhdGUtc2VydmVyLWluZm8iCiBtc2dzdHIgIm5vIGVqZWN1dGFyIGdpdC11cGRhdGUtc2VydmVyLWluZm8iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA4CisjOiBidWlsdGluL3JlcGFjay5jOjMwNgogbXNnaWQgInBhc3MgLS1sb2NhbCB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICJwYXNhciAtLWxvY2FsIGEgZ2l0LXBhY2stb2JqZWN0cyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTAKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA4CiBtc2dpZCAid3JpdGUgYml0bWFwIGluZGV4IgogbXNnc3RyICJlc2NyaWJpciB1biDDrW5kaWNlIGRlIGJpdG1hcCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTIKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEwCiBtc2dpZCAicGFzcyAtLWRlbHRhLWlzbGFuZHMgdG8gZ2l0LXBhY2stb2JqZWN0cyIKIG1zZ3N0ciAicGFzYXIgLS1kZWx0YS1pc2xhbmRzIGEgZ2l0LXBhY2stb2JqZWN0cyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTMKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzExCiBtc2dpZCAiYXBwcm94aWRhdGUiCiBtc2dzdHIgImFwcm94aW1lIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxNAorIzogYnVpbHRpbi9yZXBhY2suYzozMTIKIG1zZ2lkICJ3aXRoIC1BLCBkbyBub3QgbG9vc2VuIG9iamVjdHMgb2xkZXIgdGhhbiB0aGlzIgogbXNnc3RyICJjb24gLUEsIG5vIHBlcmRlciBvYmpldG9zIG3DoXMgYW50aWd1b3MgcXVlIGVzdGUiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE2CisjOiBidWlsdGluL3JlcGFjay5jOjMxNAogbXNnaWQgIndpdGggLWEsIHJlcGFjayB1bnJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICJjb24gLWEsIHJlIGVtcGFxdWV0YXIgb2JqZXRvcyBpbmFsY2FuemFibGVzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxOAorIzogYnVpbHRpbi9yZXBhY2suYzozMTYKIG1zZ2lkICJzaXplIG9mIHRoZSB3aW5kb3cgdXNlZCBmb3IgZGVsdGEgY29tcHJlc3Npb24iCiBtc2dzdHIgInRhbWHDsW8gZGUgbGEgdmVudGFuYSB1c2FkbyBwYXJhIGxhIGNvbXByZXNpw7NuIGRlbHRhIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxOSBidWlsdGluL3JlcGFjay5jOjMyNQorIzogYnVpbHRpbi9yZXBhY2suYzozMTcgYnVpbHRpbi9yZXBhY2suYzozMjMKIG1zZ2lkICJieXRlcyIKIG1zZ3N0ciAiYnl0ZXMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIwCisjOiBidWlsdGluL3JlcGFjay5jOjMxOAogbXNnaWQgInNhbWUgYXMgdGhlIGFib3ZlLCBidXQgbGltaXQgbWVtb3J5IHNpemUgaW5zdGVhZCBvZiBlbnRyaWVzIGNvdW50IgogbXNnc3RyICIiCiAibG8gbWlzbW8gcXVlIGFycmliYSwgcGVybyBsaW1pdGEgZWwgdGFtYcOxbyBkZSBtZW1vcmlhIGVuIGx1Z2FyIGRlIGNvbnRhciAiCiAiZW50cmFkYXMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIyCisjOiBidWlsdGluL3JlcGFjay5jOjMyMAogbXNnaWQgImxpbWl0cyB0aGUgbWF4aW11bSBkZWx0YSBkZXB0aCIKIG1zZ3N0ciAibGltaXRhIGxhIHByb2Z1bmRpZGFkIG3DoXhpbWEgZGVsIGRlbHRhIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyNAorIzogYnVpbHRpbi9yZXBhY2suYzozMjIKIG1zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gbnVtYmVyIG9mIHRocmVhZHMiCiBtc2dzdHIgImxpbWl0YSBlbCBuw7ptZXJvIG3DoXhpbW8gZGUgaGlsb3MiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI2CisjOiBidWlsdGluL3JlcGFjay5jOjMyNAogbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIHBhY2tmaWxlIgogbXNnc3RyICJ0YW1hw7FvIG3DoXhpbW8gZGUgY2FkYSBwYXF1ZXRlIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyOAorIzogYnVpbHRpbi9yZXBhY2suYzozMjYKIG1zZ2lkICJyZXBhY2sgb2JqZWN0cyBpbiBwYWNrcyBtYXJrZWQgd2l0aCAua2VlcCIKIG1zZ3N0ciAicmUtZW1wYXF1ZXRhciBvYmpldG9zIGVuIHBhcXVldGVzIG1hcmNhZG9zIGNvbiAua2VlcCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMzAKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI4CiBtc2dpZCAiZG8gbm90IHJlcGFjayB0aGlzIHBhY2siCiBtc2dzdHIgIm5vIHJlZW1wYXF1ZXRhciBlc3RlIHBhcXVldGUiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQwCisjOiBidWlsdGluL3JlcGFjay5jOjMzOAogbXNnaWQgImNhbm5vdCBkZWxldGUgcGFja3MgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCiBtc2dzdHIgIm5vIHNlIHB1ZWRlbiBib3JyYXIgcGFxdWV0ZXMgZW4gdW4gcmVwb3NpdG9yaW8gZGUgb2JqZXRvcy1wcmVjaW9zb3MiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQ0CisjOiBidWlsdGluL3JlcGFjay5jOjM0MgogbXNnaWQgIi0ta2VlcC11bnJlYWNoYWJsZSBhbmQgLUEgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1rZWVwLXVucmVhY2hhYmxlIHkgLUEgc29uIGluY29tcGF0aWJsZXMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6NTI3CisjOiBidWlsdGluL3JlcGFjay5jOjQyNQorbXNnaWQgIk5vdGhpbmcgbmV3IHRvIHBhY2suIgorbXNnc3RyICJOYWRhIG51ZXZvIHBhcmEgZW1wYXF1ZXRhci4iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NDg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXQVJOSU5HOiBTb21lIHBhY2tzIGluIHVzZSBoYXZlIGJlZW4gcmVuYW1lZCBieVxuIgorIldBUk5JTkc6IHByZWZpeGluZyBvbGQtIHRvIHRoZWlyIG5hbWUsIGluIG9yZGVyIHRvXG4iCisiV0FSTklORzogcmVwbGFjZSB0aGVtIHdpdGggdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZVxuIgorIldBUk5JTkc6IGZpbGUuICBCdXQgdGhlIG9wZXJhdGlvbiBmYWlsZWQsIGFuZCB0aGVcbiIKKyJXQVJOSU5HOiBhdHRlbXB0IHRvIHJlbmFtZSB0aGVtIGJhY2sgdG8gdGhlaXJcbiIKKyJXQVJOSU5HOiBvcmlnaW5hbCBuYW1lcyBhbHNvIGZhaWxlZC5cbiIKKyJXQVJOSU5HOiBQbGVhc2UgcmVuYW1lIHRoZW0gaW4gJXMgbWFudWFsbHk6XG4iCittc2dzdHIgIiIKKyJXQVJOSU5HOiBBbGd1bm9zIHBhY2tzIGVuIHVzbyBoYW4gc2lkbyByZW5vbWJyYWRvc1xuIgorIldBUk5JTkc6IGFncmVnYW5kbyBlbCBwcmVmaWpvIG9sZC0gYSBzdXMgbm9tYnJlcyxwYXJhXG4iCisiV0FSTklORzogcmVlbXBsYXphcmxvcyBjb24gbGEgbnVldmEgdmVyc2nDs24gZGVsXG4iCisiV0FSTklORzogYXJjaGl2by4gUGVybyBsYSBvcGVyYWNpw7NuIGZhbGzDsywgeSBlbCBpbnRlbnRvXG4iCisiV0FSTklORzogZGUgcmVub21icmFybG9zIGEgc3VzIG5vbWJyZXMgb3JpZ2luYWxlc1xuIgorIldBUk5JTkc6IHRhbWJpw6luIGZhbGzDsy5cbiIKKyJXQVJOSU5HOiBQb3IgZmF2b3IgcmVub21icmFsb3MgZW4gJXMgbWFudWFsbWVudGU6XG4iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZW1vdmUgJyVzJyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGVsaW1pbmFyJyVzJyIKQEAgLTE2MjU5LDEyICsxOTU1Niw3IEBACiBtc2dpZCAiZ2l0IHJlcGxhY2UgWy0tZm9ybWF0PTxmb3JtYXQ+XSBbLWwgWzxwYXR0ZXJuPl1dIgogbXNnc3RyICJnaXQgcmVwbGFjZSBbLS1mb3JtYXQ9PGZvcm1hdG8+XSBbLWwgWzxwYXRyw7NuPl1dIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1OCBidWlsdGluL3JlcGxhY2UuYzoyMDMgYnVpbHRpbi9yZXBsYWNlLmM6MjA2Ci0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYiCi1tc2dzdHIgImZhbGzDsyBhbCByZXNvbHZlciAnJXMnIGNvbW8gcmVmIHbDoWxpZGEiCi0KLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjg2CisjOiBidWlsdGluL3JlcGxhY2UuYzo5MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiaW52YWxpZCByZXBsYWNlIGZvcm1hdCAnJXMnXG4iCkBAIC0xNjI3MywyNyArMTk1NjUsMjcgQEAKICJmb3JtYXRvIGRlIHJlZW1wbGF6byBpbnbDoWxpZG8gJyVzJ1xuIgogImZvcm1hdG9zIHbDoWxpZG9zIHNvbiAnc2hvcnQnLCAnbWVkaXVtJyB5ICdsb25nJyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTIxCisjOiBidWlsdGluL3JlcGxhY2UuYzoxMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZSByZWYgJyVzJyBub3QgZm91bmQiCiBtc2dzdHIgInJhbWEgZGUgcmVlbXBsYXpvICclcycgbm8gZW5jb250cmFkYSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTM3CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCByZXBsYWNlIHJlZiAnJXMnIgogbXNnc3RyICJCb3JyYWRhcyByZXBsYWNlIHJlZnMgJyVzJyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTQ5CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZWYgbmFtZSIKIG1zZ3N0ciAiJyVzJyBubyBlcyB1biBub21icmUgZGUgcmVmIHbDoWxpZG8iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE1NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2UgcmVmICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgInJlZiBkZSByZWVtcGxhem8gJyVzJyB5YSBleGlzdGUiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE3NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJPYmplY3RzIG11c3QgYmUgb2YgdGhlIHNhbWUgdHlwZS5cbiIKQEAgLTE2MzA0LDc2ICsxOTU5Niw4MSBAQAogIiclcycgcHVudG9zIHBhcmEgdW4gb2JqZXRvIHJlZW1wbGF6YWRvIGRlIHRpcG8gJyVzJ1xuIgogIm1pZW50cmFzICclcycgcHVudG9zIHBhcmEgdW4gcmVlbXBsYXpvIGRlIHRpcG8gZGUgb2JqZXRvICclcycuIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyMjUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjIyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGluZyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBhYnJpciAlcyBwYXJhIGVzY3JpdHVyYSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjM4CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNDIKIG1zZ2lkICJjYXQtZmlsZSByZXBvcnRlZCBmYWlsdXJlIgogbXNnc3RyICJjYXQtZmlsZSByZXBvcnTDsyB1biBmYWxsbyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjU0CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHJlYWRpbmciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gYWJyaXIgJXMgcGFyYSBsZWN0dXJhIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyNjgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3MgogbXNnaWQgInVuYWJsZSB0byBzcGF3biBta3RyZWUiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgZ2VuZXJhciBta3RyZWUiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3MgorIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjc2CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZnJvbSBta3RyZWUiCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgbGVlciBkZSBta3RyZWUiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg1CiBtc2dpZCAibWt0cmVlIHJlcG9ydGVkIGZhaWx1cmUiCiBtc2dzdHIgIm1rdHJlZSByZXBvcnTDsyB1biBlcnJvciIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg1CisjOiBidWlsdGluL3JlcGxhY2UuYzoyODkKIG1zZ2lkICJta3RyZWUgZGlkIG5vdCByZXR1cm4gYW4gb2JqZWN0IG5hbWUiCiBtc2dzdHIgIm1rdHJlZSBubyBkZXZvbHZpw7MgdW4gbm9tYnJlIGRlIG9iamV0byIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjk0CisjOiBidWlsdGluL3JlcGxhY2UuYzoyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZzdGF0ICVzIgogbXNnc3RyICJpbmNhcGF6IGRlIGNvcnJlciBmc3RhdCAlcyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjk5CisjOiBidWlsdGluL3JlcGxhY2UuYzozMDMKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgb2JqZWN0IHRvIGRhdGFiYXNlIgogbXNnc3RyICJpbmNhcGF6IGRlIGVzY3JpYmlyIGVsIG9iamV0byBlbiBsYSBiYXNlIGRlIGRhdG9zIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozMTggYnVpbHRpbi9yZXBsYWNlLmM6MzcxIGJ1aWx0aW4vcmVwbGFjZS5jOjQxNQotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDQ1CisjOiBidWlsdGluL3JlcGxhY2UuYzozMjIgYnVpbHRpbi9yZXBsYWNlLmM6Mzc4IGJ1aWx0aW4vcmVwbGFjZS5jOjQyNAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnIgogbXNnc3RyICJub21icmUgZGUgb2JqZXRvIG5vIHbDoWxpZG86ICclcyciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyMgorIzogYnVpbHRpbi9yZXBsYWNlLmM6MzI2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBnZXQgb2JqZWN0IHR5cGUgZm9yICVzIgogbXNnc3RyICJubyBlcyBvYnRlbmVyIHRpcG8gZGUgb2JqZXRvIHBhcmEgJXMiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMzOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MzQyCiBtc2dpZCAiZWRpdGluZyBvYmplY3QgZmlsZSBmYWlsZWQiCiBtc2dzdHIgImVkaWNpw7NuIGRlIGFyY2hpdm8gZGUgb2JqZXRvIGZhbGzDsyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzQ3CisjOiBidWlsdGluL3JlcGxhY2UuYzozNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IG9iamVjdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKIG1zZ3N0ciAibnVldm8gb2JqZXRvIGVzIGlndWFsIGFsIGFudGlndW86ICclcyciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQwNworIzogYnVpbHRpbi9yZXBsYWNlLmM6Mzg0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAlcyBhcyBhIGNvbW1pdCIKK21zZ3N0ciAibm8gc2UgcHVkbyBhbmFsaXphciAlcyBjb21vIHVuIGNvbW1pdCIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDE2CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBtZXJnZXRhZyBpbiBjb21taXQgJyVzJyIKIG1zZ3N0ciAibWFsIG1lcmdldGFnIGVuIGNvbW1pdCAnJXMnIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MDkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgbWVyZ2V0YWcgaW4gY29tbWl0ICclcyciCiBtc2dzdHIgIm1lcmdldGFnIG1hbCBmb3JtYWRvIGVuIGNvbW1pdCAnJXMnIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MjEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAib3JpZ2luYWwgY29tbWl0ICclcycgY29udGFpbnMgbWVyZ2V0YWcgJyVzJyB0aGF0IGlzIGRpc2NhcmRlZDsgdXNlIC0tZWRpdCAiCkBAIC0xNjM4MiwzMSArMTk2NzksMzEgQEAKICJjb21taXQgb3JpZ2luYWwgJyVzJyBjb250aWVuZSB1biBtZXJnZXRhZyAnJXMnIHF1ZSBlcyBkZXNjYXJ0YWRvOyB1c2UgLS1lZGl0ICIKICJlbiBsdWdhciBkZSAtLWdyYWZ0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NjAKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgb3JpZ2luYWwgY29tbWl0ICclcycgaGFzIGEgZ3BnIHNpZ25hdHVyZSIKIG1zZ3N0ciAiZWwgY29tbWl0IG9yaWdpbmFsICclcycgdGllbmUgdW5hIGZpcm1hIGdwZyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDYxCisjOiBidWlsdGluL3JlcGxhY2UuYzo0NzAKIG1zZ2lkICJ0aGUgc2lnbmF0dXJlIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgcmVwbGFjZW1lbnQgY29tbWl0ISIKLW1zZ3N0ciAibGEgZmlybWEgc2Vyw6EgcmVtb3ZpZGEgZW4gZWwgY29tbWl0IGRlIHJlZW1wbGF6byEiCittc2dzdHIgImxhIGZpcm1hIHNlcsOhIGVsaW1pbmFkYSBlbiBlbCBjb21taXQgZGUgcmVlbXBsYXpvISIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDcxCisjOiBidWlsdGluL3JlcGxhY2UuYzo0ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIHJlcGxhY2VtZW50IGNvbW1pdCBmb3I6ICclcyciCiBtc2dzdHIgIm5vIHNlIHB1ZG8gZXNjcmliaXIgZWwgY29tbWl0IGRlIHJlZW1wbGF6bzogJyVzJyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDc5CisjOiBidWlsdGluL3JlcGxhY2UuYzo0ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ3JhZnQgZm9yICclcycgdW5uZWNlc3NhcnkiCiBtc2dzdHIgImdyYWZ0IHBhcmEgJyVzJyBpbm5lY2VzYXJpbyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDgyCisjOiBidWlsdGluL3JlcGxhY2UuYzo0OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IGNvbW1pdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKIG1zZ3N0ciAibnVldm8gY29tbWl0IGVzIGxlIG1pc21vIHF1ZSBlbCBhbnRpZ3VvOiAnJXMnIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1MTUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY291bGQgbm90IGNvbnZlcnQgdGhlIGZvbGxvd2luZyBncmFmdChzKTpcbiIKQEAgLTE2NDE1LDcxICsxOTcxMiw3MSBAQAogIm5vIHNlIHB1ZG8gY29udmVydGlyIGVsIHNpZ3VpZW50ZSBncmFmdChzKTpcbiIKICIlcyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM2CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NDgKIG1zZ2lkICJsaXN0IHJlcGxhY2UgcmVmcyIKIG1zZ3N0ciAibGlzdGFyIHJlcGxhY2UgcmVmcyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM3CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NDkKIG1zZ2lkICJkZWxldGUgcmVwbGFjZSByZWZzIgogbXNnc3RyICJib3JyYXIgcmVwbGFjZSByZWZzIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1MzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MAogbXNnaWQgImVkaXQgZXhpc3Rpbmcgb2JqZWN0IgogbXNnc3RyICJlZGl0YXIgb2JqZXRvIGV4aXN0ZW50ZSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM5CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTEKIG1zZ2lkICJjaGFuZ2UgYSBjb21taXQncyBwYXJlbnRzIgogbXNnc3RyICJjYW1iaWFyIHVuIHBhZHJlIGRlIGNvbW1pdCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQwCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTIKIG1zZ2lkICJjb252ZXJ0IGV4aXN0aW5nIGdyYWZ0IGZpbGUiCiBtc2dzdHIgImNvbnZlcnRpciBhcmNoaXZvIGdyYWZ0IGV4aXN0ZW50ZSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQxCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTMKIG1zZ2lkICJyZXBsYWNlIHRoZSByZWYgaWYgaXQgZXhpc3RzIgogbXNnc3RyICJyZWVtcGxhemFyIGVsIHJlZiBzaSBlc3RlIGV4aXN0ZSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQzCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTUKIG1zZ2lkICJkbyBub3QgcHJldHR5LXByaW50IGNvbnRlbnRzIGZvciAtLWVkaXQiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGltcHJpbWlyIGNvbnRlbmlkb3MgcGFyYSAtLWVkaXQiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU2CiBtc2dpZCAidXNlIHRoaXMgZm9ybWF0IgogbXNnc3RyICJ1c2FyIGVzdGUgZm9ybWF0byIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU3CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NjkKIG1zZ2lkICItLWZvcm1hdCBjYW5ub3QgYmUgdXNlZCB3aGVuIG5vdCBsaXN0aW5nIgogbXNnc3RyICItLWZvcm1hdCBubyBwdWVkZSBzZXIgdXNhZG8gY3VhbmRvIG5vIHNlIGhhY2UgbGlzdGluZyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY1CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NzcKIG1zZ2lkICItZiBvbmx5IG1ha2VzIHNlbnNlIHdoZW4gd3JpdGluZyBhIHJlcGxhY2VtZW50IgogbXNnc3RyICItZiBzb2xvIHRpZW5lIHNlbnRpZG8gY3VhbmRvIHNlIGVzY3JpYmUgdW4gcmVlbXBsYXpvIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NjkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4MQogbXNnaWQgIi0tcmF3IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLWVkaXQiCiBtc2dzdHIgIi0tcmF3IHNvbG8gdGllbmUgc2VudGlkbyBjb24gLS1lZGl0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NzUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4NwogbXNnaWQgIi1kIG5lZWRzIGF0IGxlYXN0IG9uZSBhcmd1bWVudCIKIG1zZ3N0ciAiLWQgbmVjZXNpdGEgYWwgbWVub3MgdW4gYXJndW1lbnRvIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1ODEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5MwogbXNnaWQgImJhZCBudW1iZXIgb2YgYXJndW1lbnRzIgogbXNnc3RyICJtYWwgbsO6bWVybyBkZSBhcmd1bWVudG9zIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1ODcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5OQogbXNnaWQgIi1lIG5lZWRzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgogbXNnc3RyICItZSBuZWNlc2l0YSBleGFjdGFtZW50ZSB1biBhcmd1bWVudG8iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5MworIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA1CiBtc2dpZCAiLWcgbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IgogbXNnc3RyICItZyBuZWNlc2l0YSBhbCBtZW5vcyB1biBhcmd1bWVudG8iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NjExCiBtc2dpZCAiLS1jb252ZXJ0LWdyYWZ0LWZpbGUgdGFrZXMgbm8gYXJndW1lbnQiCiBtc2dzdHIgIi0tY29udmVydC1ncmFmdC1maWxlIG5vIHRvbWEgYXJndW1lbnRvcyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA1CisjOiBidWlsdGluL3JlcGxhY2UuYzo2MTcKIG1zZ2lkICJvbmx5IG9uZSBwYXR0ZXJuIGNhbiBiZSBnaXZlbiB3aXRoIC1sIgogbXNnc3RyICJzb2xvIHNlIHB1ZWRlIGRhciB1biBwYXRyw7NuIGNvbiAtbCIKIApAQCAtMTY0OTUsMTI2ICsxOTc5MiwxMzggQEAKIG1zZ2lkICInZ2l0IHJlcmVyZSBmb3JnZXQnIHdpdGhvdXQgcGF0aHMgaXMgZGVwcmVjYXRlZCIKIG1zZ3N0ciAiJ2dpdCByZXJlcmUgZm9yZ2V0JyBzaW4gcnV0YXMgZXN0w6EgZGVwcmVjYWRvIgogCi0jOiBidWlsdGluL3JlcmVyZS5jOjExMQorIzogYnVpbHRpbi9yZXJlcmUuYzoxMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdlbmVyYXRlIGRpZmYgZm9yICclcyciCiBtc2dzdHIgIm5vIGVzIHBvc2libGUgZ2VuZXJhciBkaWZmIHBhcmEgJyVzJyIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMxCisjOiBidWlsdGluL3Jlc2V0LmM6MzIKIG1zZ2lkICIiCiAiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPGNvbW1pdD5dIgogbXNnc3RyICIiCiAiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPGNvbW1pdD5dIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzIKLW1zZ2lkICJnaXQgcmVzZXQgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHM+Li4uIgotbXNnc3RyICJnaXQgcmVzZXQgWy1xXSBbPMOhcmJvbC1pc21vPl0gWy0tXSA8cnV0YXM+Li4uIgotCiAjOiBidWlsdGluL3Jlc2V0LmM6MzMKLW1zZ2lkICJnaXQgcmVzZXQgLS1wYXRjaCBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzPi4uLl0iCi1tc2dzdHIgImdpdCByZXNldCAtLXBhdGNoIFs8w6FyYm9sLWlzbW8+XSBbLS1dIFs8cnV0YXM+Li4uXSIKK21zZ2lkICJnaXQgcmVzZXQgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgorbXNnc3RyICJnaXQgcmVzZXQgWy1xXSBbPMOhcmJvbC1pc21vPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNAorbXNnaWQgIiIKKyJnaXQgcmVzZXQgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGUgWy0tcGF0aHNwZWMtZmlsZS1udWxdXSBbPHRyZWUtaXNoPl0iCittc2dzdHIgIiIKKyJnaXQgcmVzZXQgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGUgWy0tcGF0aHNwZWMtZmlsZS1udWxdXSBbPMOhcmJvbC1pc21vPl0iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNQorbXNnaWQgImdpdCByZXNldCAtLXBhdGNoIFs8dHJlZS1pc2g+XSBbLS1dIFs8cGF0aHNwZWM+Li4uXSIKK21zZ3N0ciAiZ2l0IHJlc2V0IC0tcGF0Y2ggWzzDoXJib2wtaXNtbz5dIFstLV0gWzxwYXRoc3BlYz4uLi5dIgorCisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJtaXhlZCIKIG1zZ3N0ciAibWV6Y2xhZG8iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAic29mdCIKIG1zZ3N0ciAic3VhdmUiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAiaGFyZCIKIG1zZ3N0ciAiZHVybyIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJtZXJnZSIKIG1zZ3N0ciAiZnVzaW9uYXIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAia2VlcCIKIG1zZ3N0ciAibWFudGVuZXIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo4MAorIzogYnVpbHRpbi9yZXNldC5jOjgyCiBtc2dpZCAiWW91IGRvIG5vdCBoYXZlIGEgdmFsaWQgSEVBRC4iCiBtc2dzdHIgIk5vIGhheSB1biBIRUFEIHbDoWxpZG8uIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6ODIKKyM6IGJ1aWx0aW4vcmVzZXQuYzo4NAogbXNnaWQgIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgSEVBRC4iCiBtc2dzdHIgIkZhbGzDsyBhbCBlbmNvbnRyYXIgZWwgSEVBRCBkZWwgw6FyYm9sLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjg4CisjOiBidWlsdGluL3Jlc2V0LmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGZpbmQgdHJlZSBvZiAlcy4iCiBtc2dzdHIgIkZhbGzDsyBhbCBlbmNvbnRyYXIgw6FyYm9sIGRlICVzLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjE5MgorIzogYnVpbHRpbi9yZXNldC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKK21zZ3N0ciAiSEVBRCBlc3TDoSBhaG9yYSBlbiAlcyIKKworIzogYnVpbHRpbi9yZXNldC5jOjE5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZG8gYSAlcyByZXNldCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UuIgogbXNnc3RyICJObyBzZSBwdWVkZSByZWFsemlhciB1biByZXNldCAlcyAgZW4gbWVkaW8gZGUgdW5hIGZ1c2nDs24uIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MjkyCisjOiBidWlsdGluL3Jlc2V0LmM6Mjk0IGJ1aWx0aW4vc3Rhc2guYzo1MjAgYnVpbHRpbi9zdGFzaC5jOjU5NQorIzogYnVpbHRpbi9zdGFzaC5jOjYxOQogbXNnaWQgImJlIHF1aWV0LCBvbmx5IHJlcG9ydCBlcnJvcnMiCiBtc2dzdHIgInNlciBzaWxlbmNpb3NvLCBzb2xvIHJlcG9ydGFyIGVycm9yZXMiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTYKIG1zZ2lkICJyZXNldCBIRUFEIGFuZCBpbmRleCIKIG1zZ3N0ciAicmVpbmljaWFyIEhFQUQgZSBpbmRleCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI5NQorIzogYnVpbHRpbi9yZXNldC5jOjI5NwogbXNnaWQgInJlc2V0IG9ubHkgSEVBRCIKIG1zZ3N0ciAicmVpbmljaWFyIHNvbG8gSEVBRCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI5NyBidWlsdGluL3Jlc2V0LmM6Mjk5CisjOiBidWlsdGluL3Jlc2V0LmM6Mjk5IGJ1aWx0aW4vcmVzZXQuYzozMDEKIG1zZ2lkICJyZXNldCBIRUFELCBpbmRleCBhbmQgd29ya2luZyB0cmVlIgogbXNnc3RyICJyZWluaWNpYXIgSEVBRCwgw61uZGljZSB5IMOhcmJvbCBkZSB0cmFiYWpvIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzAxCisjOiBidWlsdGluL3Jlc2V0LmM6MzAzCiBtc2dpZCAicmVzZXQgSEVBRCBidXQga2VlcCBsb2NhbCBjaGFuZ2VzIgogbXNnc3RyICJyZWluaWNpYXIgSEVBRCBwZXJvIG1hbnRlbmVyIGNhbWJpb3MgbG9jYWxlcyIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMwNworIzogYnVpbHRpbi9yZXNldC5jOjMwOQogbXNnaWQgInJlY29yZCBvbmx5IHRoZSBmYWN0IHRoYXQgcmVtb3ZlZCBwYXRocyB3aWxsIGJlIGFkZGVkIGxhdGVyIgogbXNnc3RyICIiCi0iZ3JhYmFyIHNvbG8gZWwgaGVjaG8gZGUgcXVlIGxhcyBydXRhcyByZW1vdmlkYXMgc2Vyw6FuIGFncmVnYWRhcyBkZXNwdcOpcyIKKyJncmFiYXIgc29sbyBlbCBoZWNobyBkZSBxdWUgbGFzIHJ1dGFzIGVsaW1pbmFkYXMgc2Vyw6FuIGFncmVnYWRhcyBkZXNwdcOpcyIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMyNQorIzogYnVpbHRpbi9yZXNldC5jOjM0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmV2aXNpb24uIgogbXNnc3RyICJGYWxsw7MgYWwgcmVzb2x2ZXIgJyVzJyBjb21vIHVuYSByZXZpc2nDs24gdsOhbGlkYS4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMzMKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHRyZWUuIgogbXNnc3RyICJGYWxsw7MgYWwgcmVzb2x2ZXIgJyVzJyBjb21vIHVuIMOhcmJvbCB2w6FsaWRvLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM0MgorIzogYnVpbHRpbi9yZXNldC5jOjM2MAogbXNnaWQgIi0tcGF0Y2ggaXMgaW5jb21wYXRpYmxlIHdpdGggLS17aGFyZCxtaXhlZCxzb2Z0fSIKIG1zZ3N0ciAiLS1wYXRjaCBlcyBpbmNvbXBhdGlibGUgY29uIC0te2hhcmQsbWl4ZWQsc29mdH0iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNTEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNzAKIG1zZ2lkICItLW1peGVkIHdpdGggcGF0aHMgaXMgZGVwcmVjYXRlZDsgdXNlICdnaXQgcmVzZXQgLS0gPHBhdGhzPicgaW5zdGVhZC4iCiBtc2dzdHIgIiIKICItLW1peGVkIGNvbiBydXRhcyBoYSBzaWRvIGRlcHJlY2FkbzsgdXNlICdnaXQgcmVzZXQgLS0gPHJ1dGFzPicgZW4gY2FtYmlvLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM1MworIzogYnVpbHRpbi9yZXNldC5jOjM3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZG8gJXMgcmVzZXQgd2l0aCBwYXRocy4iCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIGhhY2VyIHVuIHJlc2V0ICVzIGNvbiBydXRhcy4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNjMKKyM6IGJ1aWx0aW4vcmVzZXQuYzozODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcmVzZXQgaXMgbm90IGFsbG93ZWQgaW4gYSBiYXJlIHJlcG9zaXRvcnkiCiBtc2dzdHIgIiVzIHJlc2V0IG5vIGVzdMOhIHBlcm1pdGlkbyBlbiB1biByZXBvc2l0b3JpbyB2YWPDrW8iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNjcKKyM6IGJ1aWx0aW4vcmVzZXQuYzozOTEKIG1zZ2lkICItTiBjYW4gb25seSBiZSB1c2VkIHdpdGggLS1taXhlZCIKIG1zZ3N0ciAiLU4gc8OzbG8gcHVlZGUgc2VyIHVzYWRhIGNvbiAtLW1peGVkIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mzg3CisjOiBidWlsdGluL3Jlc2V0LmM6NDEyCiBtc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZXNldDoiCiBtc2dzdHIgIkNhbWJpb3MgZnVlcmEgZGVsIMOhcmVhIGRlIHN0YWdlIHRyYXMgZWwgcmVzZXQ6IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkwCisjOiBidWlsdGluL3Jlc2V0LmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTE2NjI4LDUzICsxOTkzNyw0OCBAQAogInVzYXIgJy0tcXVpZXQnIHBhcmEgZXZpdGFyIGVzdG8uICBDb25maWd1cmEgbGEgb3BjacOzbiByZXNldC5xdWlldCBhIHRydWVcbiIKICJwYXJhIHZvbHZlcmxvIGVuIGVsIGRlZmF1bHQuXG4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo0MDAKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlc2V0IGluZGV4IGZpbGUgdG8gcmV2aXNpb24gJyVzJy4iCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIHJlaW5pY2lhciBlbCDDrW5kaWNlIGEgbGEgcmV2aXNpw7NuICclcycuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6NDA0CisjOiBidWlsdGluL3Jlc2V0LmM6NDI5CiBtc2dpZCAiQ291bGQgbm90IHdyaXRlIG5ldyBpbmRleCBmaWxlLiIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgZXNjcmliaXIgdW4gbnVldm8gYXJjaGl2byDDrW5kaWNlLiIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQwMworIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQ5OQogbXNnaWQgImNhbm5vdCBjb21iaW5lIC0tZXhjbHVkZS1wcm9taXNvci1vYmplY3RzIGFuZCAtLW1pc3NpbmciCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGNvbWJpbmFyIC0tZXhjbHVkZS1wcm9taXNvci1vYmplY3RzIHkgLS1taXNzaW5nIgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NDYxCisjOiBidWlsdGluL3Jldi1saXN0LmM6NTYwCiBtc2dpZCAib2JqZWN0IGZpbHRlcmluZyByZXF1aXJlcyAtLW9iamVjdHMiCiBtc2dzdHIgImZpbHRyYWRvIGRlIG9iamV0b3MgcmVxdWllcmUgLS1vYmplY3RzIgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NDY0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgc3BhcnNlIHZhbHVlICclcyciCi1tc2dzdHIgInZhbG9yIGRpc3BlcnNvIGludsOhbGlkbzogJyVzJyIKLQotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjUwNQorIzogYnVpbHRpbi9yZXYtbGlzdC5jOjYxMAogbXNnaWQgInJldi1saXN0IGRvZXMgbm90IHN1cHBvcnQgZGlzcGxheSBvZiBub3RlcyIKIG1zZ3N0ciAicmV2LWxpc3Qgbm8gc29wb3J0YSBtb3N0cmFyIG5vdGFzIgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NTA4Ci1tc2dpZCAiY2Fubm90IGNvbWJpbmUgLS11c2UtYml0bWFwLWluZGV4IHdpdGggb2JqZWN0IGZpbHRlcmluZyIKLW1zZ3N0ciAibm8gc2UgcHVlZGUgY29tYmluYXIgLS11c2UtYml0bWFwLWluZGV4IGNvbiBvYmpldG9zIGRlIGZpbHRyYWRvIgorIzogYnVpbHRpbi9yZXYtbGlzdC5jOjYxNQorbXNnaWQgIm1hcmtlZCBjb3VudGluZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW9iamVjdHMiCittc2dzdHIgImNvbnRlbyBkZSBtYXJjYXMgZXMgaW5jb21wYXRpYmxlIGNvbiAtLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDA3CisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQwOAogbXNnaWQgImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPG9wdGlvbnM+XSAtLSBbPGFyZ3M+Li4uXSIKIG1zZ3N0ciAiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IFs8b3BjaW9uZXM+XSAtLSBbPGFyZ3M+Li4uXSIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTIKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDEzCiBtc2dpZCAia2VlcCB0aGUgYC0tYCBwYXNzZWQgYXMgYW4gYXJnIgogbXNnc3RyICJtYW50ZW5lciBlbCBgLS1gIHBhc2FkbyBjb21vIHVuIGFyZyIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTQKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE1CiBtc2dpZCAic3RvcCBwYXJzaW5nIGFmdGVyIHRoZSBmaXJzdCBub24tb3B0aW9uIGFyZ3VtZW50IgogbXNnc3RyICJkZXRlbmVyIGFuw6FsaXNpcyB0cmFzIGVsIHByaW1lciBhcmd1bWVudG8gcXVlIG5vIGVzIG9wY2nDs24iCiAKLSM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE3CisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxOAogbXNnaWQgIm91dHB1dCBpbiBzdHVjayBsb25nIGZvcm0iCiBtc2dzdHIgInNhbGlkYSBlbiBmb3JtdWxhcmlvIGxhcmdvIGRlIGF0YXNjbyIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo1NTAKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NTUxCiBtc2dpZCAiIgogImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPG9wdGlvbnM+XSAtLSBbPGFyZ3M+Li4uXVxuIgogIiAgIG9yOiBnaXQgcmV2LXBhcnNlIC0tc3EtcXVvdGUgWzxhcmc+Li4uXVxuIgpAQCAtMTY3MDUsNzIgKzIwMDA5LDgxIEBACiBtc2dpZCAiZ2l0IGNoZXJyeS1waWNrIDxzdWJjb21tYW5kPiIKIG1zZ3N0ciAiZ2l0IGNoZXJyeS1waWNrIDxzdWJjb21hbmRvPiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzo5MQorIzogYnVpbHRpbi9yZXZlcnQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiB6ZXJvIgorbXNnc3RyICJvcGNpw7NuIGAlcycgZXNwZXJhIHVuIHZhbG9yIG51bcOpcmljbyBtYXlvciBhIGNlcm8iCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6ICVzIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiCiBtc2dzdHIgIiVzOiAlcyBubyBwdWVkZSBzZXIgdXNhZG8gY29uICVzIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwMAorIzogYnVpbHRpbi9yZXZlcnQuYzoxMDIKIG1zZ2lkICJlbmQgcmV2ZXJ0IG9yIGNoZXJyeS1waWNrIHNlcXVlbmNlIgogbXNnc3RyICJmaW5hbGl6YXIgc2VjdWVuY2lhIHJldmVydCBvIGNoZXJyeS1waWNrIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwMQorIzogYnVpbHRpbi9yZXZlcnQuYzoxMDMKIG1zZ2lkICJyZXN1bWUgcmV2ZXJ0IG9yIGNoZXJyeS1waWNrIHNlcXVlbmNlIgogbXNnc3RyICJyZXN1bWlyIHNlY3VlbmNpYSByZXZlcnQgbyBjaGVycnktcGljayIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDIKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA0CiBtc2dpZCAiY2FuY2VsIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAiY2FuY2VsYXIgc2VjdWVuY2lhIHJldmVydCBvIGNoZXJyeS1waWNrIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwMworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDUKK21zZ2lkICJza2lwIGN1cnJlbnQgY29tbWl0IGFuZCBjb250aW51ZSIKK21zZ3N0ciAic2FsdGFyIGVsIGNvbW1pdCBhY3R1YWwgeSBjb250aW51YXIiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA3CiBtc2dpZCAiZG9uJ3QgYXV0b21hdGljYWxseSBjb21taXQiCiBtc2dzdHIgIm5vIHJlYWxpemFyIGNvbW1pdCBkZSBmb3JtYSBhdXRvbcOhdGljYSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDQKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA4CiBtc2dpZCAiZWRpdCB0aGUgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgImVkaXRhciBlbCBtZW5zYWplIGRlIGNvbW1pdCIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDcKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTExCiBtc2dpZCAicGFyZW50LW51bWJlciIKIG1zZ3N0ciAibsO6bWVyby1kZS1wYWRyZSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDgKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEyCiBtc2dpZCAic2VsZWN0IG1haW5saW5lIHBhcmVudCIKIG1zZ3N0ciAic2VsZWNjaW9uYXIgZWwgcGFkcmUgcHJpbmNpcGFsIgogCi0jOiBidWlsdGluL3JldmVydC5jOjExMAorIzogYnVpbHRpbi9yZXZlcnQuYzoxMTQKIG1zZ2lkICJtZXJnZSBzdHJhdGVneSIKIG1zZ3N0ciAiZXN0cmF0ZWdpYSBkZSBmdXNpw7NuIgogCi0jOiBidWlsdGluL3JldmVydC5jOjExMgorIzogYnVpbHRpbi9yZXZlcnQuYzoxMTYKIG1zZ2lkICJvcHRpb24gZm9yIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICJvcGNpw7NuIHBhcmEgZXN0cmF0ZWdpYSBkZSBmdXNpw7NuIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEyMQorIzogYnVpbHRpbi9yZXZlcnQuYzoxMjUKIG1zZ2lkICJhcHBlbmQgY29tbWl0IG5hbWUiCiBtc2dzdHIgImFkanVudGFyIGVsIG5vbWJyZSBkZWwgY29tbWl0IgogCi0jOiBidWlsdGluL3JldmVydC5jOjEyMworIzogYnVpbHRpbi9yZXZlcnQuYzoxMjcKIG1zZ2lkICJwcmVzZXJ2ZSBpbml0aWFsbHkgZW1wdHkgY29tbWl0cyIKIG1zZ3N0ciAicHJlc2VydmFyIGNvbW1pdHMgaW5pY2lhbGVzIHZhY8Otb3MiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI1CisjOiBidWlsdGluL3JldmVydC5jOjEyOQogbXNnaWQgImtlZXAgcmVkdW5kYW50LCBlbXB0eSBjb21taXRzIgogbXNnc3RyICJtYW50ZW5lciBjb21taXRzIHJlZHVuZGFudGVzLCB2YWPDrW9zIgogCi0jOiBidWlsdGluL3JldmVydC5jOjIxOQorIzogYnVpbHRpbi9yZXZlcnQuYzoyMzIKIG1zZ2lkICJyZXZlcnQgZmFpbGVkIgogbXNnc3RyICJmYWxsw7MgYWwgcmV2ZXJ0aXIiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjMyCisjOiBidWlsdGluL3JldmVydC5jOjI0NQogbXNnaWQgImNoZXJyeS1waWNrIGZhaWxlZCIKIG1zZ3N0ciAiY2hlcnJ5LXBpY2sgZmFsbMOzIgogCi0jOiBidWlsdGluL3JtLmM6MTgKKyM6IGJ1aWx0aW4vcm0uYzoxOQogbXNnaWQgImdpdCBybSBbPG9wdGlvbnM+XSBbLS1dIDxmaWxlPi4uLiIKIG1zZ3N0ciAiZ2l0IHJtIFs8b3BjaW9uZXM+XSBbLS1dIDxhcmNoaXZvPi4uLiIKIAotIzogYnVpbHRpbi9ybS5jOjIwNgorIzogYnVpbHRpbi9ybS5jOjIwNwogbXNnaWQgIiIKICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIHN0YWdlZCBjb250ZW50IGRpZmZlcmVudCBmcm9tIGJvdGggdGhlXG4iCiAiZmlsZSBhbmQgdGhlIEhFQUQ6IgpAQCAtMTY3ODQsNyArMjAwOTcsNyBAQAogImxvcyBzaWd1aWVudGVzIGFyY2hpdm9zIHRpZW5lbiBjb250ZW5pZG8gZGlmZXJlbnRlIGEgbG9zIG1pc21vc1xuIgogInkgYSBIRUFEOiIKIAotIzogYnVpbHRpbi9ybS5jOjIxMQorIzogYnVpbHRpbi9ybS5jOjIxMgogbXNnaWQgIiIKICJcbiIKICIodXNlIC1mIHRvIGZvcmNlIHJlbW92YWwpIgpAQCAtMTY3OTIsMTMgKzIwMTA1LDEzIEBACiAiXG4iCiAiKHVzYSAtZiBwYXJhIGZvcnphciBzdSBlbGltaW5hY2nDs24pIgogCi0jOiBidWlsdGluL3JtLmM6MjE1CisjOiBidWlsdGluL3JtLmM6MjE2CiBtc2dpZCAidGhlIGZvbGxvd2luZyBmaWxlIGhhcyBjaGFuZ2VzIHN0YWdlZCBpbiB0aGUgaW5kZXg6IgogbXNnaWRfcGx1cmFsICJ0aGUgZm9sbG93aW5nIGZpbGVzIGhhdmUgY2hhbmdlcyBzdGFnZWQgaW4gdGhlIGluZGV4OiIKIG1zZ3N0clswXSAiZWwgc2lndWllbnRlIGFyY2hpdm8gdGllbmUgY2FtYmlvcyBlbiBzdGFnZSBlbiBlbCDDrW5kaWNlOiIKIG1zZ3N0clsxXSAibG9zIHNpZ3VpZW50ZXMgYXJjaGl2b3MgdGllbmVuIGNhbWJpb3MgZW4gc3RhZ2UgZW4gZWwgw61uZGljZToiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMTkgYnVpbHRpbi9ybS5jOjIyOAorIzogYnVpbHRpbi9ybS5jOjIyMCBidWlsdGluL3JtLmM6MjI5CiBtc2dpZCAiIgogIlxuIgogIih1c2UgLS1jYWNoZWQgdG8ga2VlcCB0aGUgZmlsZSwgb3IgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCkBAIC0xNjgwNiw0NCArMjAxMTksNDggQEAKICJcbiIKICIodXNhIC0tY2FjaGVkIHBhcmEgY29uc2VydmFyIGVsIGFyY2hpdm8sIG8gLWYgcGFyYSBmb3J6YXIgc3UgZWxpbWluYWNpw7NuKSIKIAotIzogYnVpbHRpbi9ybS5jOjIyNQorIzogYnVpbHRpbi9ybS5jOjIyNgogbXNnaWQgInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgbG9jYWwgbW9kaWZpY2F0aW9uczoiCiBtc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBsb2NhbCBtb2RpZmljYXRpb25zOiIKIG1zZ3N0clswXSAiZWwgc2lndWllbnRlIGFyY2hpdm8gdGllbmUgbW9kaWZpY2FjaW9uZXMgbG9jYWxlczoiCiBtc2dzdHJbMV0gImxvcyBzaWd1aWVudGVzIGFyY2hpdm9zIHRpZW5lbiBtb2RpZmljYWNpb25lcyBsb2NhbGVzOiIKIAotIzogYnVpbHRpbi9ybS5jOjI0MQorIzogYnVpbHRpbi9ybS5jOjI0MwogbXNnaWQgImRvIG5vdCBsaXN0IHJlbW92ZWQgZmlsZXMiCiBtc2dzdHIgIm5vIGxpc3RhciBhcmNoaXZvcyBlbGltaW5hZG8iCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDIKKyM6IGJ1aWx0aW4vcm0uYzoyNDQKIG1zZ2lkICJvbmx5IHJlbW92ZSBmcm9tIHRoZSBpbmRleCIKIG1zZ3N0ciAic29sbyBlbGltaW5hciBkZWwgw61uZGljZSIKIAotIzogYnVpbHRpbi9ybS5jOjI0MworIzogYnVpbHRpbi9ybS5jOjI0NQogbXNnaWQgIm92ZXJyaWRlIHRoZSB1cC10by1kYXRlIGNoZWNrIgogbXNnc3RyICJzb2JyZXNjcmliaXIgZWwgY2hlY2sgZGUgYWN0dWFsaXphZG8iCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDQKKyM6IGJ1aWx0aW4vcm0uYzoyNDYKIG1zZ2lkICJhbGxvdyByZWN1cnNpdmUgcmVtb3ZhbCIKIG1zZ3N0ciAicGVybWl0aXIgZWxpbWluYXIgZGUgZm9ybWEgcmVjdXJzaXZhIgogCi0jOiBidWlsdGluL3JtLmM6MjQ2CisjOiBidWlsdGluL3JtLmM6MjQ4CiBtc2dpZCAiZXhpdCB3aXRoIGEgemVybyBzdGF0dXMgZXZlbiBpZiBub3RoaW5nIG1hdGNoZWQiCiBtc2dzdHIgInNhbGlyIGNvbiBlc3RhZG8gY2VybyBpbmNsdXNvIHNpIG5hZGEgY29pbmNpZGUiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyODgKKyM6IGJ1aWx0aW4vcm0uYzoyODIKK21zZ2lkICJObyBwYXRoc3BlYyB3YXMgZ2l2ZW4uIFdoaWNoIGZpbGVzIHNob3VsZCBJIHJlbW92ZT8iCittc2dzdHIgIlNlIGVudHJlZ8OzIHVuIG51ZXZvIHBhdGhzcGVjLiDCv1F1w6kgYXJjaGl2b3MgZGViZXLDrWEgZWxpbWluYXI/IgorCisjOiBidWlsdGluL3JtLmM6MzA1CiBtc2dpZCAicGxlYXNlIHN0YWdlIHlvdXIgY2hhbmdlcyB0byAuZ2l0bW9kdWxlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQiCiBtc2dzdHIgIiIKICJwb3IgZmF2b3IgYWdyZWdhIGVsIHN0YWdlIGRlIHR1cyBjYW1iaW9zIGEgLmdpdG1vZHVsZXMgbyByZWFsaXphIHVuIHN0YXNoICIKICJwYXJhIHByb2NlZGVyIgogCi0jOiBidWlsdGluL3JtLmM6MzA2CisjOiBidWlsdGluL3JtLmM6MzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCByZW1vdmluZyAnJXMnIHJlY3Vyc2l2ZWx5IHdpdGhvdXQgLXIiCi1tc2dzdHIgIm5vIHJlbW92aWVuZG8gJyVzJyBkZSBtYW5lcmEgcmVjdXJzaXZhIHNpbiAtciIKK21zZ3N0ciAibm8gZWxpbWluYW5kbyAnJXMnIGRlIG1hbmVyYSByZWN1cnNpdmEgc2luIC1yIgogCi0jOiBidWlsdGluL3JtLmM6MzQ1CisjOiBidWlsdGluL3JtLmM6MzYyCiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBybTogdW5hYmxlIHRvIHJlbW92ZSAlcyIKIG1zZ3N0ciAiZ2l0IHJtOiBubyBlcyBwb3NpYmxlIGVsaW1pbmFyICVzIgpAQCAtMTY4NzYsMTggKzIwMTkzLDYgQEAKIG1zZ2lkICJwcmludCBzdGF0dXMgZnJvbSByZW1vdGUgaGVscGVyIgogbXNnc3RyICJtb3N0cmFyIHN0YXR1cyBkZWwgcmVtb3RlIGhlbHBlciIKIAotIzogYnVpbHRpbi9zZXJ2ZS5jOjcKLW1zZ2lkICJnaXQgc2VydmUgWzxvcHRpb25zPl0iCi1tc2dzdHIgImdpdCBzZXJ2ZSBbPG9wY2lvbmVzPl0iCi0KLSM6IGJ1aWx0aW4vc2VydmUuYzoxNyBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjMKLW1zZ2lkICJxdWl0IGFmdGVyIGEgc2luZ2xlIHJlcXVlc3QvcmVzcG9uc2UgZXhjaGFuZ2UiCi1tc2dzdHIgInNhbGUgZGVzcHXDqXMgZGUgdW4gaW50ZXJjYW1iaW8gcGV0aWNpw7NuL3Jlc3B1ZXN0YSDDum5pY28iCi0KLSM6IGJ1aWx0aW4vc2VydmUuYzoxOQotbXNnaWQgImV4aXQgaW1tZWRpYXRlbHkgYWZ0ZXIgYWR2ZXJ0aXNpbmcgY2FwYWJpbGl0aWVzIgotbXNnc3RyICJzYWxpciBpbm1lZGlhdGFtZW50ZSB0cmFzIGFudW5jaWFyIGNhcGFjaWRhZGVzIgotCiAjOiBidWlsdGluL3Nob3J0bG9nLmM6MTQKIG1zZ2lkICJnaXQgc2hvcnRsb2cgWzxvcHRpb25zPl0gWzxyZXZpc2lvbi1yYW5nZT5dIFtbLS1dIDxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBzaG9ydGxvZyBbPG9wY2lvbmVzPl0gWzxyYW5nby1kZS1yZXZpc2nDs24+XSBbWy0tXSA8cnV0YT4uLi5dIgpAQCAtMTY5MjAsNyArMjAyMjUsNyBAQAogbXNnaWQgIkxpbmV3cmFwIG91dHB1dCIKIG1zZ3N0ciAiU2FsaWRhIGRlIGzDrW5lYSIKIAotIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI5OQorIzogYnVpbHRpbi9zaG9ydGxvZy5jOjMwMQogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyBnaXZlbiBvdXRzaWRlIHJlcG9zaXRvcnkiCiBtc2dzdHIgImRlbWFzaWFkb3MgYXJndW1lbnRvcyBkYWRvcyBmdWVyYSBkZWwgcmVwb3NpdG9yaW8iCiAKQEAgLTE2OTQ3LDExOSArMjAyNTIsMTE5IEBACiBtc2dzdHJbMF0gImlnbm9yYW5kbyAlczsgbm8gc2UgcHVlZGUgbWFuZWphciBtw6FzIGRlICVkIHJlZiIKIG1zZ3N0clsxXSAiaWdub3JhbmRvICVzOyBubyBzZSBwdWVkZSBtYW5lamFyIG3DoXMgZGUgJWQgcmVmcyIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjU0OQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjU0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBtYXRjaGluZyByZWZzIHdpdGggJXMiCiBtc2dzdHIgIm5vIGhheSByZWZzIHF1ZSBjb25jdWVyZGVuIGNvbiAlcyIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NQogbXNnaWQgInNob3cgcmVtb3RlLXRyYWNraW5nIGFuZCBsb2NhbCBicmFuY2hlcyIKIG1zZ3N0ciAibW9zdHJhciByYW1hcyBsb2NhbGVzIHkgZGUgcmFzdHJlbyByZW1vdG8iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDgKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDcKIG1zZ2lkICJzaG93IHJlbW90ZS10cmFja2luZyBicmFuY2hlcyIKIG1zZ3N0ciAibW9zdHJhciByYW1hcyBkZSByYXN0cmVvIHJlbW90byIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0OQogbXNnaWQgImNvbG9yICcqISstJyBjb3JyZXNwb25kaW5nIHRvIHRoZSBicmFuY2giCiBtc2dzdHIgImNvbG9yICcqISstJyBjb3JyZXNwb25kaWVuZG8gYSBsYSByYW1hIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUyCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUxCiBtc2dpZCAic2hvdyA8bj4gbW9yZSBjb21taXRzIGFmdGVyIHRoZSBjb21tb24gYW5jZXN0b3IiCiBtc2dzdHIgIm1vc3RyYXIgPG4+IGNvbW1pdHMgbcOhcyB0cmFzIGVuY29udHJhciBlbCBhbmNlc3RybyBjb23Dum4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTMKIG1zZ2lkICJzeW5vbnltIHRvIG1vcmU9LTEiCiBtc2dzdHIgInNpbsOzbmltbyBkZSBtw6FzPS0xIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU1CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU0CiBtc2dpZCAic3VwcHJlc3MgbmFtaW5nIHN0cmluZ3MiCiBtc2dzdHIgInN1cHJpbWlyIHN0cmluZ3MgZGUgbm9tYnJlIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU3CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU2CiBtc2dpZCAiaW5jbHVkZSB0aGUgY3VycmVudCBicmFuY2giCiBtc2dzdHIgImluY2x1aXIgbGEgcmFtYSBhY3R1YWwiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTkKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTgKIG1zZ2lkICJuYW1lIGNvbW1pdHMgd2l0aCB0aGVpciBvYmplY3QgbmFtZXMiCiBtc2dzdHIgIm5vbWJyYXIgY29tbWl0cyBjb24gc3VzIG5vbWJyZXMgZGUgb2JqZXRvIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYxCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYwCiBtc2dpZCAic2hvdyBwb3NzaWJsZSBtZXJnZSBiYXNlcyIKIG1zZ3N0ciAibW9zdHJhciBiYXNlcyBkZSBmdXNpw7NuIHBvc2libGVzIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYzCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYyCiBtc2dpZCAic2hvdyByZWZzIHVucmVhY2hhYmxlIGZyb20gYW55IG90aGVyIHJlZiIKIG1zZ3N0ciAibW9zdHJhciByZWZzIGluYWxjYW56YWJsZXMgcG9yIG5pbmfDum4gb3RybyByZWYiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjQKIG1zZ2lkICJzaG93IGNvbW1pdHMgaW4gdG9wb2xvZ2ljYWwgb3JkZXIiCiBtc2dzdHIgIm1vc3RyYXIgY29tbWl0cyBlbiBvcmRlbiB0b3BvbMOzZ2ljbyIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2OAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NwogbXNnaWQgInNob3cgb25seSBjb21taXRzIG5vdCBvbiB0aGUgZmlyc3QgYnJhbmNoIgogbXNnc3RyICJtb3N0cmFyIHNvbG8gY29tbWl0cyBxdWUgbm8gZXN0w6FuIGVuIGxhIHByaW1lcmEgcmFtYSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2OQogbXNnaWQgInNob3cgbWVyZ2VzIHJlYWNoYWJsZSBmcm9tIG9ubHkgb25lIHRpcCIKIG1zZ3N0ciAibW9zdHJhciBmdXNpb25lcyBhbGNhbnphYmxlcyBzb2xvIHBvciB1bmEgcHVudGEiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzEKIG1zZ2lkICJ0b3BvbG9naWNhbGx5IHNvcnQsIG1haW50YWluaW5nIGRhdGUgb3JkZXIgd2hlcmUgcG9zc2libGUiCiBtc2dzdHIgIm9yZGVuIHRvcG9sw7NnaWNvLCBtYW50ZW5pZW5kbyBlbCBvcmRlbiBkZSBmZWNoYXMgZG9uZGUgc2VhIHBvc2libGUiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzQKIG1zZ2lkICI8bj5bLDxiYXNlPl0iCiBtc2dzdHIgIjxuPlssPGJhc2U+XSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NQogbXNnaWQgInNob3cgPG4+IG1vc3QgcmVjZW50IHJlZi1sb2cgZW50cmllcyBzdGFydGluZyBhdCBiYXNlIgogbXNnc3RyICJtb3N0cmFyIDxuPiBlbnRyYWRhcyBtw6FzIHJlY2llbnRlcyBkZSByZWYtbG9nIGNvbWVuemFuZG8gZGVzZGUgbGEgYmFzZSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjcxMgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjcxMQogbXNnaWQgIiIKICItLXJlZmxvZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1yZW1vdGVzLCAtLWluZGVwZW5kZW50IG9yIC0tbWVyZ2UtYmFzZSIKIG1zZ3N0ciAiIgogIi0tcmVmbG9nIG5vIGVzIGNvbXBhdGlibGUgY29uIC0tYWxsLCAtLXJlbW90ZXMsIC0taW5kZXBlbmRlbnQgbyAtLW1lcmdlLWJhc2UiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzUKIG1zZ2lkICJubyBicmFuY2hlcyBnaXZlbiwgYW5kIEhFQUQgaXMgbm90IHZhbGlkIgogbXNnc3RyICJubyBzZSBkaWVyb24gcmFtYXMsIHkgZWwgSEVBRCBubyBlcyB2w6FsaWRvIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM5CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM4CiBtc2dpZCAiLS1yZWZsb2cgb3B0aW9uIG5lZWRzIG9uZSBicmFuY2ggbmFtZSIKIG1zZ3N0ciAib3BjacOzbiAtLXJlZmxvZyBuZWNlc2l0YSB1biBub21icmUgZGUgcmFtYSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0MgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJvbmx5ICVkIGVudHJ5IGNhbiBiZSBzaG93biBhdCBvbmUgdGltZS4iCiBtc2dpZF9wbHVyYWwgIm9ubHkgJWQgZW50cmllcyBjYW4gYmUgc2hvd24gYXQgb25lIHRpbWUuIgogbXNnc3RyWzBdICJzb2xvICVkIGVudHJhZGEgcHVlZGUgc2VyIG1vc3RyYWRhIGEgbGEgdmV6LiIKIG1zZ3N0clsxXSAic29sbyAlZCBlbnRyYWRhcyBwdWVkZW4gc2VyIG1vc3RyYWRhcyBhIGxhIHZlei4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCByZWYgJXMiCiBtc2dzdHIgIm5vIGV4aXN0ZSBlbCByZWYgJXMiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzAKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmV2LiIKIG1zZ2lkX3BsdXJhbCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmV2cy4iCiBtc2dzdHJbMF0gIm5vIHNlIHB1ZWRlIG1hbmVqYXIgbcOhcyBkZSAlZCByZXYuIgogbXNnc3RyWzFdICJubyBzZSBwdWVkZSBtYW5lamFyIG3DoXMgZGUgJWQgcmV2cy4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzQKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZWYuIgogbXNnc3RyICInJXMnIG5vIGVzIHVuYSByZWYgdsOhbGlkYS4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzcKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZpbmQgY29tbWl0ICVzICglcykiCiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGVuY29udHJhciBlbCBjb21taXQgJXMgKCVzKSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjExCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTIKIG1zZ2lkICIiCiAiZ2l0IHNob3ctcmVmIFstcSB8IC0tcXVpZXRdIFstLXZlcmlmeV0gWy0taGVhZF0gWy1kIHwgLS1kZXJlZmVyZW5jZV0gWy1zIHwgLS0iCiAiaGFzaFs9PG4+XV0gWy0tYWJicmV2Wz08bj5dXSBbLS10YWdzXSBbLS1oZWFkc10gWy0tXSBbPHBhdHRlcm4+Li4uXSIKQEAgLTE3MDY3LDQyICsyMDM3MiwzNDkgQEAKICJnaXQgc2hvdy1yZWYgWy1xIHwgLS1xdWlldF0gWy0tdmVyaWZ5XSBbLS1oZWFkXSBbLWQgfCAtLWRlcmVmZXJlbmNlXSBbLXMgfCAtLSIKICJoYXNoWz08bj5dXSBbLS1hYmJyZXZbPTxuPl1dIFstLXRhZ3NdIFstLWhlYWRzXSBbLS1dIFs8cGF0csOzbj4uLi5dIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTIKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxMwogbXNnaWQgImdpdCBzaG93LXJlZiAtLWV4Y2x1ZGUtZXhpc3RpbmdbPTxwYXR0ZXJuPl0iCiBtc2dzdHIgImdpdCBzaG93LXJlZiAtLWV4Y2x1ZGUtZXhpc3RpbmdbPTxwYXRyw7NuPl0iCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjEKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjIKIG1zZ2lkICJvbmx5IHNob3cgdGFncyAoY2FuIGJlIGNvbWJpbmVkIHdpdGggaGVhZHMpIgogbXNnc3RyICJzb2xvIG1vc3RyYXIgdGFncyAocHVlZGUgc2VyIGNvbWJpbmFkbyBjb24gaGVhZHMpIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTYyCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYzCiBtc2dpZCAib25seSBzaG93IGhlYWRzIChjYW4gYmUgY29tYmluZWQgd2l0aCB0YWdzKSIKIG1zZ3N0ciAic29sbyBtb3N0cmFyIGhlYWRzIChwdWVkZSBzZXIgY29tYmluYWRvIGNvbiB0YWdzKSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2MworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2NAogbXNnaWQgInN0cmljdGVyIHJlZmVyZW5jZSBjaGVja2luZywgcmVxdWlyZXMgZXhhY3QgcmVmIHBhdGgiCiBtc2dzdHIgInJldmlzYXIgcmVmZXJlbmNpYXMgbcOhcyBlc3RyaWN0YW1lbnRlLCByZXF1aWVyZSBydXRhIGRlIHJlZiBleGFjdGEiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjYgYnVpbHRpbi9zaG93LXJlZi5jOjE2OAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2NyBidWlsdGluL3Nob3ctcmVmLmM6MTY5CiBtc2dpZCAic2hvdyB0aGUgSEVBRCByZWZlcmVuY2UsIGV2ZW4gaWYgaXQgd291bGQgYmUgZmlsdGVyZWQgb3V0IgogbXNnc3RyICJtb3N0cmFyIGxhIHJlZmVyZW5jaWEgZGUgSEVBRCwgaW5jbHVzbyBzaSBzZSBmaWx0cmFyYSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MQogbXNnaWQgImRlcmVmZXJlbmNlIHRhZ3MgaW50byBvYmplY3QgSURzIgogbXNnc3RyICJ0YWdzIGRlIGRlZmVyZW5jaWEgZW4gSURzIGRlIG9iamV0byIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MgorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MwogbXNnaWQgIm9ubHkgc2hvdyBTSEExIGhhc2ggdXNpbmcgPG4+IGRpZ2l0cyIKIG1zZ3N0ciAic29sbyBtb3N0cmFyIGhhc2ggU0hBMSB1c2FuZG8gPG4+IGTDrWdpdG9zIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTc2CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc3CiBtc2dpZCAiZG8gbm90IHByaW50IHJlc3VsdHMgdG8gc3Rkb3V0ICh1c2VmdWwgd2l0aCAtLXZlcmlmeSkiCiBtc2dzdHIgIm5vIG1vc3RyYXIgcmVzdWx0YWRvcyBlbiBzdGRvdXQgKMO6dGlsIGNvbiAtLXZlcmlmeSkiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzgKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzkKIG1zZ2lkICJzaG93IHJlZnMgZnJvbSBzdGRpbiB0aGF0IGFyZW4ndCBpbiBsb2NhbCByZXBvc2l0b3J5IgogbXNnc3RyICJtb3N0cmFyIHJlZnMgZGUgc3RkaW4gcXVlIG5vIGVzdMOhbiBlbiBlbCByZXBvc2l0b3JpbyBsb2NhbCIKIAorIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyMQorbXNnaWQgImdpdCBzcGFyc2UtY2hlY2tvdXQgKGluaXR8bGlzdHxzZXR8YWRkfGRpc2FibGUpIDxvcHRpb25zPiIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCAoaW5pdHxsaXN0fHNldHxhZGR8ZGlzYWJsZSkgPG9wY2lvbmVzPiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo2NAorbXNnaWQgInRoaXMgd29ya3RyZWUgaXMgbm90IHNwYXJzZSAoc3BhcnNlLWNoZWNrb3V0IGZpbGUgbWF5IG5vdCBleGlzdCkiCittc2dzdHIgIiIKKyJlc3RlIMOhcmJvbCBkZSB0cmFiYWpvIG5vIHRpZW5lIHNwYXJzZSAoYXJjaGl2byBzcGFyZXNlLWNoZWNrb3V0IHRhbCB2ZXogbm8gIgorImV4aXN0ZSkiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjI1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgZm9yIHNwYXJzZS1jaGVja291dCBmaWxlIgorbXNnc3RyICJmYWxsw7MgYWwgY3JlYXIgZGlyZWN0b3JpbyBwYXJhIGVsIGFyY2hpdm8gc3BhcnNlLWNoZWNrb3V0IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byBzZXQgZXh0ZW5zaW9ucy53b3JrdHJlZUNvbmZpZyBzZXR0aW5nIgorbXNnc3RyICJmYWxsw7MgYWwgY29uZmlndXJhciBvcGNpw7NuIGV4dGVuc2lvbnMud29ya3RyZWVDb25maWciCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjgzCittc2dpZCAiZ2l0IHNwYXJzZS1jaGVja291dCBpbml0IFstLWNvbmVdIgorbXNnc3RyICJnaXQgc3BhcnNlLWNoZWNrb3V0IGluaXQgWy0tY29uZV0iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MzAyCittc2dpZCAiaW5pdGlhbGl6ZSB0aGUgc3BhcnNlLWNoZWNrb3V0IGluIGNvbmUgbW9kZSIKK21zZ3N0ciAiaW5pY2lhbGl6YSBlbCBzcGFyc2UtY2hlY2tvdXQgZW4gbW9kbyBjb25vIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjMwOAorbXNnaWQgImluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJpbmljaWFsaXphciBzcGFyc2UtY2hlY2tvdXQiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyciCittc2dzdHIgImZhbGzDsyBhbCBhYnJpciAnJXMnIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjM5OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgbm9ybWFsaXplIHBhdGggJXMiCittc2dzdHIgIm5vIHNlIHB1ZG8gbm9ybWFsaXphciBsYSBydXRhICVzIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjQxMAorbXNnaWQgImdpdCBzcGFyc2UtY2hlY2tvdXQgKHNldHxhZGQpICgtLXN0ZGluIHwgPHBhdHRlcm5zPikiCittc2dzdHIgImdpdCBzcGFyc2UtY2hlY2tvdXQgKHNldHxhZGQpICgtLXN0ZGluIHwgPHBhdHJvbmVzPikiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bnF1b3RlIEMtc3R5bGUgc3RyaW5nICclcyciCittc2dzdHIgIm5vIGVzIHBvc2libGUgZGVxdW90ZSBwYXJhIGxhIGNhZGVuYSBkZSBlc3RpbG8gQyAnJXMnIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjQ4OSBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjUxMworbXNnaWQgInVuYWJsZSB0byBsb2FkIGV4aXN0aW5nIHNwYXJzZS1jaGVja291dCBwYXR0ZXJucyIKK21zZ3N0ciAibm8gc2UgcHVkbyBjYXJnYXIgcGF0cm9uZXMgZGUgc3BhcnNlLWNoZWNrb3V0IGV4aXN0ZW50ZXMiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTU4Cittc2dpZCAicmVhZCBwYXR0ZXJucyBmcm9tIHN0YW5kYXJkIGluIgorbXNnc3RyICJsZWVyIHBhdHJvbmVzIGRlIHN0YW5kYXJkIGluIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjU2NAorbXNnaWQgInNldCBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMiCittc2dzdHIgImNvbmZpZ3VyYXIgcGF0cm9uZXMgZGUgc3BhcnNlLWNoZWNrb3V0IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjU4MQorbXNnaWQgImRpc2FibGUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJkZXNoYWJpbGl0YXIgc3BhcnNlLWNoZWNrb3V0IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjU5MworbXNnaWQgImVycm9yIHdoaWxlIHJlZnJlc2hpbmcgd29ya2luZyBkaXJlY3RvcnkiCittc2dzdHIgImVycm9yIGFsIHJlZnJlc2NhciBkaXJlY3RvcmlvIGRlIHRyYWJham8iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMiBidWlsdGluL3N0YXNoLmM6MzgKK21zZ2lkICJnaXQgc3Rhc2ggbGlzdCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGxpc3QgWzxvcGNpb25lcz5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjMgYnVpbHRpbi9zdGFzaC5jOjQzCittc2dpZCAiZ2l0IHN0YXNoIHNob3cgWzxvcHRpb25zPl0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggc2hvdyBbPG9wY2lvbmVzPl0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjQgYnVpbHRpbi9zdGFzaC5jOjQ4Cittc2dpZCAiZ2l0IHN0YXNoIGRyb3AgWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGRyb3AgWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI1Cittc2dpZCAiZ2l0IHN0YXNoICggcG9wIHwgYXBwbHkgKSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoICggcG9wIHwgYXBwbHkgKSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI2IGJ1aWx0aW4vc3Rhc2guYzo2MworbXNnaWQgImdpdCBzdGFzaCBicmFuY2ggPGJyYW5jaG5hbWU+IFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGJyYW5jaCA8bm9tYnJlLXJhbWE+IFs8c3Rhc2g+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI3IGJ1aWx0aW4vc3Rhc2guYzo2OAorbXNnaWQgImdpdCBzdGFzaCBjbGVhciIKK21zZ3N0ciAiZ2l0IHN0YXNoIGNsZWFyIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjgKK21zZ2lkICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl1cbiIKKyIgICAgICAgICAgWy0tcGF0aHNwZWMtZnJvbS1maWxlPTxmaWxlPiBbLS1wYXRoc3BlYy1maWxlLW51bF1dXG4iCisiICAgICAgICAgIFstLV0gWzxwYXRoc3BlYz4uLi5dXSIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWy1tfC0tbWVzc2FnZSA8bWVuc2FqZT5dXG4iCisiICAgICAgICAgIFstLXBhdGhzcGVjLWZyb20tZmlsZT08YXJjaGl2bz4gWy0tcGF0aHNwZWMtZmlsZS1udWxdXVxuIgorIiAgICAgICAgICBbLS1dIFs8cGF0aHNwZWM+Li4uXV0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzozMiBidWlsdGluL3N0YXNoLmM6ODUKK21zZ2lkICIiCisiZ2l0IHN0YXNoIHNhdmUgWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8bWVzc2FnZT5dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIHNhdmUgWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8bWVuc2FqZT5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTMKK21zZ2lkICJnaXQgc3Rhc2ggcG9wIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggcG9wIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTgKK21zZ2lkICJnaXQgc3Rhc2ggYXBwbHkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBhcHBseSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjczCittc2dpZCAiZ2l0IHN0YXNoIHN0b3JlIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XSBbLXF8LS1xdWlldF0gPGNvbW1pdD4iCittc2dzdHIgImdpdCBzdGFzaCBzdG9yZSBbLW18LS1tZXNzYWdlIDxtZW5zYWplPl0gWy1xfC0tcXVpZXRdIDxjb21taXQ+IgorCisjOiBidWlsdGluL3N0YXNoLmM6NzgKK21zZ2lkICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZW5zYWplPl1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgc3Rhc2gtbGlrZSBjb21taXQiCittc2dzdHIgIiclcycgbm8gZXMgdW4gY29tbWl0IGVzdGlsbyBzdGFzaCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJUb28gbWFueSByZXZpc2lvbnMgc3BlY2lmaWVkOiVzIgorbXNnc3RyICJTZSBlc3BlY2lmaWNhcm9uIGRlbWFzaWFkYXMgcmV2aXNpb25lczogJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNjIgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NDkKK21zZ2lkICJObyBzdGFzaCBlbnRyaWVzIGZvdW5kLiIKK21zZ3N0ciAiTm8gc2UgZW5jb250cmFyb24gZW50cmFkYXMgZGUgc3Rhc2guIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIHJlZmVyZW5jZSIKK21zZ3N0ciAiJXMgbm8gZXMgdW5hIHJlZmVyZW5jaWEgdsOhbGlkYSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjIyNSBnaXQtbGVnYWN5LXN0YXNoLnNoOjc1Cittc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIHdpdGggcGFyYW1ldGVycyBpcyB1bmltcGxlbWVudGVkIgorbXNnc3RyICJnaXQgc3Rhc2ggY2xlYXIgY29uIHBhcsOhbWV0cm9zIG5vIGVzdMOhIGltcGxlbWVudGFkbyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQwNAorbXNnaWQgImNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYXBsaWNhciB1biBzdGFzaCBlbiBtZWRpbyBkZSB1biBtZXJnZSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZ2VuZXJhdGUgZGlmZiAlc14hLiIKK21zZ3N0ciAibm8gc2UgcHVkbyBnZW5lcmFyIGRpZmYgJXNeIS4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MjIKK21zZ2lkICJjb25mbGljdHMgaW4gaW5kZXguVHJ5IHdpdGhvdXQgLS1pbmRleC4iCittc2dzdHIgImNvbmZsaWN0b3MgZW4gw61uZGljZS4gSW50ZW50ZSBzaW4gLS1pbmRleC4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MjgKK21zZ2lkICJjb3VsZCBub3Qgc2F2ZSBpbmRleCB0cmVlIgorbXNnc3RyICJubyBzZSBwdWVkZSBndWFyZGFyIGVsIMOtbmRpY2UgZGVsIMOhcmJvbCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQzNworbXNnaWQgImNvdWxkIG5vdCByZXN0b3JlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHN0YXNoIgorbXNnc3RyICJubyBzZSBwdWVkZW4gcmVzdGF1cmFyIGFyY2hpdm9zIG5vIHJhc3RyZWFkb3MgZGUgbGEgZW50cmFkYSBzdGFzaCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQ1MQorIywgYy1mb3JtYXQKK21zZ2lkICJNZXJnaW5nICVzIHdpdGggJXMiCittc2dzdHIgIkZ1c2lvbmFuZG8gJXMgY29uICVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDYxIGdpdC1sZWdhY3ktc3Rhc2guc2g6NjgxCittc2dpZCAiSW5kZXggd2FzIG5vdCB1bnN0YXNoZWQuIgorbXNnc3RyICJFbCDDrW5kaWNlIG5vIGZ1ZSBzYWNhZG8gZGUgc3Rhc2guIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTIyIGJ1aWx0aW4vc3Rhc2guYzo2MjEKK21zZ2lkICJhdHRlbXB0IHRvIHJlY3JlYXRlIHRoZSBpbmRleCIKK21zZ3N0ciAiaW50ZW50byBkZSByZWNyZWFyIGVsIGluZGV4IgorCisjOiBidWlsdGluL3N0YXNoLmM6NTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRyb3BwZWQgJXMgKCVzKSIKK21zZ3N0ciAiQm90YWRvICVzICglcykiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IENvdWxkIG5vdCBkcm9wIHN0YXNoIGVudHJ5IgorbXNnc3RyICIlczogTm8gc2UgcHVkbyBib3JyYXIgZW50cmFkYSBzdGFzaCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU4MworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHN0YXNoIHJlZmVyZW5jZSIKK21zZ3N0ciAiJyVzJyBubyBlcyB1bmEgcmVmZXJlbmNpYSBzdGFzaCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjYzMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjY5NQorbXNnaWQgIlRoZSBzdGFzaCBlbnRyeSBpcyBrZXB0IGluIGNhc2UgeW91IG5lZWQgaXQgYWdhaW4uIgorbXNnc3RyICJMYSBlbnRyYWRhIGRlIHN0YXNoIHNlIGd1YXJkw7MgZW4gY2FzbyBkZSBzZXIgbmVjZXNhcmlvIG51ZXZhbWVudGUuIgorCisjOiBidWlsdGluL3N0YXNoLmM6NjU2IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzEzCittc2dpZCAiTm8gYnJhbmNoIG5hbWUgc3BlY2lmaWVkIgorbXNnc3RyICJObyBzZSBlc3BlY2lmaWPDsyBlbCBub21icmUgZGUgbGEgcmFtYSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjc5NiBidWlsdGluL3N0YXNoLmM6ODMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCB1cGRhdGUgJXMgd2l0aCAlcyIKK21zZ3N0ciAiTm8gc2UgcHVlZGUgYWN0dWFsaXphciAlcyBjb24gJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo4MTQgYnVpbHRpbi9zdGFzaC5jOjE0NzggYnVpbHRpbi9zdGFzaC5jOjE1NDMKK21zZ2lkICJzdGFzaCBtZXNzYWdlIgorbXNnc3RyICJtZW5zYWplIGRlIHN0YXNoIgorCisjOiBidWlsdGluL3N0YXNoLmM6ODI0Cittc2dpZCAiXCJnaXQgc3Rhc2ggc3RvcmVcIiByZXF1aXJlcyBvbmUgPGNvbW1pdD4gYXJndW1lbnQiCittc2dzdHIgIlwiZ2l0IHN0YXNoIHN0b3JlXCIgcmVxdWllcmUgdW4gYXJndW1lbnRvIDxjb21taXQ+IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTA0OSBnaXQtbGVnYWN5LXN0YXNoLnNoOjIxOAorbXNnaWQgIk5vIGNoYW5nZXMgc2VsZWN0ZWQiCittc2dzdHIgIlNpbiBjYW1iaW9zIHNlbGVjY2lvbmFkb3MiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTQ5IGdpdC1sZWdhY3ktc3Rhc2guc2g6MTUwCittc2dpZCAiWW91IGRvIG5vdCBoYXZlIHRoZSBpbml0aWFsIGNvbW1pdCB5ZXQiCittc2dzdHIgIkHDum4gbm8gdGllbmVzIHVuIGNvbW1pdCBpbmljaWFsIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE3NiBnaXQtbGVnYWN5LXN0YXNoLnNoOjE2NQorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IGluZGV4IHN0YXRlIgorbXNnc3RyICJObyBzZSBwdWVkZSBndWFyZGFyIGVsIGVzdGFkbyBhY3R1YWwgZGVsIMOtbmRpY2UiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTg1IGdpdC1sZWdhY3ktc3Rhc2guc2g6MTgwCittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIHVudHJhY2tlZCBmaWxlcyIKK21zZ3N0ciAiTm8gc2UgcHVlZGVuIGd1YXJkYXIgbG9zIGFyY2hpdm9zIG5vIHJhc3RyZWFkb3MiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTk2IGJ1aWx0aW4vc3Rhc2guYzoxMjA1IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjAxCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIxNAorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHdvcmt0cmVlIHN0YXRlIgorbXNnc3RyICJObyBzZSBwdWVkZSBndWFyZGFyIGVsIGVzdGFkbyBhY3R1YWwgZGVsIMOhcmJvbCBkZSB0cmFiYWpvIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTIzMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjIzNAorbXNnaWQgIkNhbm5vdCByZWNvcmQgd29ya2luZyB0cmVlIHN0YXRlIgorbXNnc3RyICJObyBzZSBwdWVkZSBncmFiYXIgZWwgZXN0YWRvIGRlbCDDoXJib2wgZGUgdHJhYmFqbyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyODIgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMzgKK21zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgorbXNnc3RyICJObyBzZSBwdWVkZSB1c2FyIC0tcGF0Y2ggeSAtLWluY2x1ZGUtdW50cmFja2VkIG8gLS1hbGwgYWwgbWlzbW8gdGllbXBvIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI5OAorbXNnaWQgIkRpZCB5b3UgZm9yZ2V0IHRvICdnaXQgYWRkJz8iCittc2dzdHIgIsK/T2x2aWRhc3RlICdnaXQgYWRkJz8iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzEzIGdpdC1sZWdhY3ktc3Rhc2guc2g6MzQ2Cittc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgorbXNnc3RyICJObyBoYXkgY2FtYmlvcyBsb2NhbGVzIHBhcmEgZ3VhcmRhciIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMjAgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTEKK21zZ2lkICJDYW5ub3QgaW5pdGlhbGl6ZSBzdGFzaCIKK21zZ3N0ciAiTm8gc2UgcHVlZGUgaW5pY2lhbGl6YXIgc3Rhc2giCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzM1IGdpdC1sZWdhY3ktc3Rhc2guc2g6MzU1Cittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgc3RhdHVzIgorbXNnc3RyICJObyBzZSBwdWVkZSBndWFyZGFyIGVsIGVzdGFkbyBhY3R1YWwiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzQwCisjLCBjLWZvcm1hdAorbXNnaWQgIlNhdmVkIHdvcmtpbmcgZGlyZWN0b3J5IGFuZCBpbmRleCBzdGF0ZSAlcyIKK21zZ3N0ciAiRGlyZWN0b3JpbyBkZSB0cmFiYWpvIGd1YXJkYWRvIHkgZXN0YWRvIGRlIMOtbmRpY2UgJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDMwIGdpdC1sZWdhY3ktc3Rhc2guc2g6Mzg1Cittc2dpZCAiQ2Fubm90IHJlbW92ZSB3b3JrdHJlZSBjaGFuZ2VzIgorbXNnc3RyICJObyBzZSBwdWVkZW4gZWxpbWluYXIgY2FtYmlvcyBkZWwgw6FyYm9sIGRlIHRyYWJham8iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDY5IGJ1aWx0aW4vc3Rhc2guYzoxNTM0Cittc2dpZCAia2VlcCBpbmRleCIKK21zZ3N0ciAibWFudGVuZXIgaW5kZXgiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDcxIGJ1aWx0aW4vc3Rhc2guYzoxNTM2Cittc2dpZCAic3Rhc2ggaW4gcGF0Y2ggbW9kZSIKK21zZ3N0ciAic3Rhc2ggZW4gbW9kbyBwYXRjaCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NzIgYnVpbHRpbi9zdGFzaC5jOjE1MzcKK21zZ2lkICJxdWlldCBtb2RlIgorbXNnc3RyICJtb2RvIHRyYW5xdWlsbyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NzQgYnVpbHRpbi9zdGFzaC5jOjE1MzkKK21zZ2lkICJpbmNsdWRlIHVudHJhY2tlZCBmaWxlcyBpbiBzdGFzaCIKK21zZ3N0ciAiaW5jbHVpciBhcmNoaXZvcyBzaW4gc2VndWltaWVudG8gZW4gc3Rhc2giCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDc2IGJ1aWx0aW4vc3Rhc2guYzoxNTQxCittc2dpZCAiaW5jbHVkZSBpZ25vcmUgZmlsZXMiCittc2dzdHIgImluY2x1aXIgYXJjaGl2b3MgaWdub3JhZG9zIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTYwMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZXhlYyAlcyIKK21zZ3N0ciAibm8gc2UgcHVkbyBlamVjdXRhciAlcyIKKwogIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MTgKIG1zZ2lkICJnaXQgc3RyaXBzcGFjZSBbLXMgfCAtLXN0cmlwLWNvbW1lbnRzXSIKIG1zZ3N0ciAiZ2l0IHN0cmlwc3BhY2UgWy1zIHwgLS1zdHJpcC1jb21tZW50c10iCkBAIC0xNzExMSw0OSArMjA3MjMsNDkgQEAKIG1zZ2lkICJnaXQgc3RyaXBzcGFjZSBbLWMgfCAtLWNvbW1lbnQtbGluZXNdIgogbXNnc3RyICJnaXQgc3RyaXBzcGFjZSBbLWMgfCAtLWNvbW1lbnQtbGluZXNdIgogCi0jOiBidWlsdGluL3N0cmlwc3BhY2UuYzozNgorIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MzcKIG1zZ2lkICJza2lwIGFuZCByZW1vdmUgYWxsIGxpbmVzIHN0YXJ0aW5nIHdpdGggY29tbWVudCBjaGFyYWN0ZXIiCiBtc2dzdHIgIiIKICJzYWx0YXIgeSBib3JyYXIgdG9kYXMgbGFzIGzDrW5lYXMgcXVlIGNvbWllbnphbiBjb24gdW4gY2Fyw6FjdGVyIGRlIGNvbWVudGFyaW8iCiAKLSM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM5CisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzo0MAogbXNnaWQgInByZXBlbmQgY29tbWVudCBjaGFyYWN0ZXIgYW5kIHNwYWNlIHRvIGVhY2ggbGluZSIKIG1zZ3N0ciAiYW50ZXBvbmVyIGNhcsOhY3RlciBkZSBjb21lbnRhcmlvIHkgZXNwYWNpbyBhIGNhZGEgbMOtbmVhIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MzkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJFeHBlY3RpbmcgYSBmdWxsIHJlZiBuYW1lLCBnb3QgJXMiCiBtc2dzdHIgIlNlIGVzcGVyYWJhIHVuIG5vbWJyZSBkZSByZWYgY29tcGxldG8sIHNlIG9idHV2byAlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjQKIG1zZ2lkICJzdWJtb2R1bGUtLWhlbHBlciBwcmludC1kZWZhdWx0LXJlbW90ZSB0YWtlcyBubyBhcmd1bWVudHMiCiBtc2dzdHIgInN1Ym9tZHVsZS0taGVscGVyIHByaW50LWRlZmF1bHQtcmVtb3RlIG5vIHRvbWEgYXJndW1lbnRvcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdHJpcCBvbmUgY29tcG9uZW50IG9mZiB1cmwgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgcXVpdGFyIHVuIGNvbXBvbmVudGUgZGVsIHVybCAnJXMnIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzYzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDEwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk1CiBtc2dpZCAiYWx0ZXJuYXRpdmUgYW5jaG9yIGZvciByZWxhdGl2ZSBwYXRocyIKIG1zZ3N0ciAiYW5jaG8gYWx0ZXJuYXRpdm8gcGFyYSBydXRhcyByZWxhdGl2YXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MTIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MTUKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbGlzdCBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGxpc3QgWy0tcHJlZml4PTxydXRhPl0gWzxydXRhPi4uLl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NjkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYyNgotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY0OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ3MiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjMwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHVybCBmb3VuZCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyBpbiAuZ2l0bW9kdWxlcyIKIG1zZ3N0ciAiTm8gc2UgZW5jb250csOzIHVybCBwYXJhIGxhIHJ1dGEgZGVsIHN1Ym3Ds2R1bG8gJyVzJyBlbiAuZ2l0bW9kdWxlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyMQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJFbnRlcmluZyAnJXMnXG4iCiBtc2dzdHIgIkVudHJhbmRvICclcydcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyNAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicnVuX2NvbW1hbmQgcmV0dXJuZWQgbm9uLXplcm8gc3RhdHVzIGZvciAlc1xuIgpAQCAtMTcxNjIsNyArMjA3NzQsNyBAQAogInJ1bl9jb21tYW5kIGRldm9sdmnDsyBlc3RhZG8gbm8tY2VybyBwYXJhICVzXG4iCiAiLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU0NQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU0OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicnVuX2NvbW1hbmQgcmV0dXJuZWQgbm9uLXplcm8gc3RhdHVzIHdoaWxlIHJlY3Vyc2luZyBpbiB0aGUgbmVzdGVkICIKQEAgLTE3MTczLDE5ICsyMDc4NSwxOSBAQAogImFuaWRhZG9zIGRlICVzXG4iCiAiLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2NQogbXNnaWQgIlN1cHByZXNzIG91dHB1dCBvZiBlbnRlcmluZyBlYWNoIHN1Ym1vZHVsZSBjb21tYW5kIgogbXNnc3RyICJTdXByaW1lIGxhIHNhbGlkYSBhbCBpbmljaWFsaXphciBjYWRhIGNvbWFuZG8gZGUgc3VibcOzZHVsbyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA0OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA2MwogbXNnaWQgIlJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKIG1zZ3N0ciAiUmVjdXJzYXIgZW4gc3VibcOzZHVsb3MgYW5pZGFkb3MiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjgKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSA8Y29tbWFuZD4iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIDxydXRhPiIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NzIKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbLS1dIDxjb21tYW5kPiIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGZvcmVhY2ggWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWy0tXSA8Y29tYW5kbz4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1OTUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNvdWxkIG5vdCBsb29rIHVwIGNvbmZpZ3VyYXRpb24gJyVzJy4gQXNzdW1pbmcgdGhpcyByZXBvc2l0b3J5IGlzIGl0cyBvd24gIgpAQCAtMTcxOTQsNTcgKzIwODA2LDU3IEBACiAibm8gc2UgcHVkbyBlbmNvbnRyYXIgY29uZmlndXJhY2nDs24gJyVzJy4gQXN1bWllbmRvIHF1ZSBlc3RlIHJlcG9zaXRvcmlvIGVzICIKICJzdSBwcm9waW8gdXBzdHJlYW0gYXV0b3JpdGF0aXZvLiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVnaXN0ZXIgdXJsIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICJGYWxsw7MgYWwgcmVnaXN0cmFyIGVsIHVybCBwYXJhIGxhIHJ1dGEgZGVsIHN1Ym3Ds2R1bG8gJyVzJyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY2NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyAoJXMpIHJlZ2lzdGVyZWQgZm9yIHBhdGggJyVzJ1xuIgogbXNnc3RyICJTdWJtw7NkdWxvICclcycgKCVzKSByZWdpc3RyYWRvIHBhcmEgcnV0YSAnJXMnXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NzcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAid2FybmluZzogY29tbWFuZCB1cGRhdGUgbW9kZSBzdWdnZXN0ZWQgZm9yIHN1Ym1vZHVsZSAnJXMnXG4iCiBtc2dzdHIgIiIKICJwZWxpZ3JvOiBtb2RvIGRlIGFjdHVhbGl6YWNpw7NuIGRlIGNvbWFuZG9zIHN1Z2VyaWRvIHBhcmEgZWwgc3VibcOzZHVsbyAnJXMnXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2ODQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHVwZGF0ZSBtb2RlIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICIiCiAiRXJyb3IgYWwgcmVnaXN0cmFyIGVsIG1vZG8gZGUgYWN0dWFsaXphY2nDs24gcGFyYSBsYSBydXRhIGRlbCBzdWJtw7NkdWxvICclcyciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MDYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MTAKIG1zZ2lkICJTdXBwcmVzcyBvdXRwdXQgZm9yIGluaXRpYWxpemluZyBhIHN1Ym1vZHVsZSIKIG1zZ3N0ciAiU3VwcmltZSBsYSBzYWxpZGEgcGFyYSBpbmljaWFsaXphciB1biBzdWJtw7NkdWxvIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzExCi1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxwYXRoPl0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8cnV0YT5dIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcxNQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8b3B0aW9ucz5dIFs8cGF0aD5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPG9wY2lvbmVzPl0gWzxwYXRoPl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3ODMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjc4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Ym1vZHVsZSBtYXBwaW5nIGZvdW5kIGluIC5naXRtb2R1bGVzIGZvciBwYXRoICclcyciCiBtc2dzdHIgIiIKICJubyBzZSBoYSBlbmNvbnRyYWRvIG1hcGVvIGRlIHN1Ym3Ds2R1bG9zIGVuIC5naXRtb2R1bGVzIHBhcmEgbGEgcnV0YSAnJXMnIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODIyCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlIEhFQUQgcmVmIGluc2lkZSB0aGUgc3VibW9kdWxlICclcyciCiBtc2dzdHIgIm5vIHB1ZG8gcmVzb2x2ZXIgcmVmIGRlIEhFQUQgZGVudHJvIGRlbCBzdWJtw7NkdWxvICclcyciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NDkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMTgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NjQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiZmFsbMOzIGFsIHJlY3Vyc2FyIGVuIGVsIHN1Ym3Ds2R1bG8gJyVzJyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg3MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg4OCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE5OQogbXNnaWQgIlN1cHByZXNzIHN1Ym1vZHVsZSBzdGF0dXMgb3V0cHV0IgogbXNnc3RyICJTdXByaW1pciBvdXRwdXQgZGVsIGVzdGFkbyBkZWwgc3VibcOzZHVsbyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg3NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg4OQogbXNnaWQgIiIKICJVc2UgY29tbWl0IHN0b3JlZCBpbiB0aGUgaW5kZXggaW5zdGVhZCBvZiB0aGUgb25lIHN0b3JlZCBpbiB0aGUgc3VibW9kdWxlICIKICJIRUFEIgpAQCAtMTcyNTIsNTYgKzIwODY0LDU2IEBACiAiVXNhciBlbCBjb21taXQgZ3VhcmRhZG8gZW4gZWwgw61uZGljZSBlbiBsdWdhciBkZWwgZ3VhcmRhZG8gZW4gZWwgc3VibcOzZHVsbyAiCiAiSEVBRCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg3NQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg5MAogbXNnaWQgInJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKIG1zZ3N0ciAicmVjdXJzYXIgZW4gc3VibcOzZHVsb3MgYW5pZGFkb3MiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4OTUKIG1zZ2lkICJnaXQgc3VibW9kdWxlIHN0YXR1cyBbLS1xdWlldF0gWy0tY2FjaGVkXSBbLS1yZWN1cnNpdmVdIFs8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgc3VibW9kdWxlIHN0YXR1cyBbLS1xdWlldF0gWy0tY2FjaGVkXSBbLS1yZWN1cnNpdmVdIFs8cnV0YT4uLi5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTA0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTE5CiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIG5hbWUgPHBhdGg+IgogbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbmFtZSA8cnV0YT4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5NjgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIGZvciAnJXMnXG4iCiBtc2dzdHIgIlNpbmNyb25pemFuZG8gdXJsIGRlbCBzdWJtw7NkdWxvIHBhcmEgJyVzJ1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTc0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWdpc3RlciB1cmwgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgImZhbGzDsyBhbCByZWdpc3RyYXIgZWwgdXJsIHBhcmEgbGEgcnV0YSBkZWwgc3VibcOzZHVsbyAnJXMnIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTg4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZ2V0IHRoZSBkZWZhdWx0IHJlbW90ZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgImVycm9yIGFsIGNvbnNlZ3VpciBlbCByZW1vdG8gcG9yIGRlZmVjdG8gcGFyYSBlbCBzdWJtw7NkdWxvICclcyciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5OTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byB1cGRhdGUgcmVtb3RlIGZvciBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiZXJyb3IgYWwgYWN0dWFsaXphciBlbCByZW1vdG8gcGFyYSBlbCBzdWJtw7NkdWxvICclcyciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDQ2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA2MQogbXNnaWQgIlN1cHByZXNzIG91dHB1dCBvZiBzeW5jaHJvbml6aW5nIHN1Ym1vZHVsZSB1cmwiCiBtc2dzdHIgIlN1cHJpbWUgbGEgc2FsaWRhIGRlbCB1cmwgZGVsIHN1Ym3Ds2R1bG8gcXVlIHNlIHNpbmNyb25pemEiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDUzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA2OAogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBzeW5jIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFs8cGF0aD5dIgogbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgc3luYyBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbPHJ1dGE+XSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMDcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgd29yayB0cmVlICclcycgY29udGFpbnMgYSAuZ2l0IGRpcmVjdG9yeSAodXNlICdybSAtcmYnIGlmIHlvdSAiCiAicmVhbGx5IHdhbnQgdG8gcmVtb3ZlIGl0IGluY2x1ZGluZyBhbGwgb2YgaXRzIGhpc3RvcnkpIgogbXNnc3RyICIiCiAiRWwgw6FyYm9sIGRlIHRyYWJham8gZGVsIHN1Ym3Ds2R1bG8gJyVzJyBjb250aWVuZSB1biBkaXJlY3RvcmlvIC5naXQgKHVzZSAncm0gLSIKLSJyZicgc2kgcmVhbG1lbnRlIHF1aWVyZSBlbGltaW5hcmxvIGluY2x1eWVuZG8gdG9kbyBlbiBzdSBoaXN0b3JpYSkiCisicmYnIHNpIHJlYWxtZW50ZSBxdWllcmVzIGVsaW1pbmFybG8gaW5jbHV5ZW5kbyB0b2RvIGVuIHN1IGhpc3RvcmlhKSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgd29yayB0cmVlICclcycgY29udGFpbnMgbG9jYWwgbW9kaWZpY2F0aW9uczsgdXNlICctZicgdG8gZGlzY2FyZCAiCkBAIC0xNzMxMCwyMjUgKzIwOTIyLDI2MiBAQAogIkVsIMOhcmJvbCBkZSB0cmFiYWpvIGRlbCBzdWJtw7NkdWxvICclcycgY29udGllbmUgbW9kaWZpY2FjaW9uZXMgbG9jYWxlczsgdXNhICIKICInLWYnIHBhcmEgZGVzY2FydGFybGFzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2xlYXJlZCBkaXJlY3RvcnkgJyVzJ1xuIgogbXNnc3RyICJEaXJlY3RvcmlvICclcycgbGltcGlhZG9cbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgc3VibW9kdWxlIHdvcmsgdHJlZSAnJXMnXG4iCiBtc2dzdHIgIk5vIHNlIHB1ZG8gZWxpbWluYXIgZWwgw6FyYm9sIGRlIHRyYWJham8gZGVsIHN1Ym3Ds2R1bG8gJyVzJ1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEzOAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBlbXB0eSBzdWJtb2R1bGUgZGlyZWN0b3J5ICVzIgogbXNnc3RyICJubyBzZSBwdWRvIGNyZWFyIGRpcmVjdG9yaW8gdmFjw61vIGRlIHN1Ym3Ds2R1bG8gJXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTU0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyAoJXMpIHVucmVnaXN0ZXJlZCBmb3IgcGF0aCAnJXMnXG4iCiBtc2dzdHIgIlN1Ym3Ds2R1bG8gJyVzJyAoJXMpIG5vIHJlZ2lzdHJhZG8gcGFyYSBydXRhICclcydcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjAwCiBtc2dpZCAiUmVtb3ZlIHN1Ym1vZHVsZSB3b3JraW5nIHRyZWVzIGV2ZW4gaWYgdGhleSBjb250YWluIGxvY2FsIGNoYW5nZXMiCiBtc2dzdHIgIiIKLSJSZW1vdmVyIGFyYm9sZXMgZGUgdHJhYmFqbyBkZSBzdWJtw7NkdWxvcyBpbmNsdXNvIHNpIGNvbnRpZW5lbiBjYW1iaW9zIGxvY2FsZXMiCisiUmVtb3ZlciDDoXJib2xlcyBkZSB0cmFiYWpvIGRlIHN1Ym3Ds2R1bG9zIGluY2x1c28gc2kgY29udGllbmVuIGNhbWJpb3MgbG9jYWxlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjAxCiBtc2dpZCAiVW5yZWdpc3RlciBhbGwgc3VibW9kdWxlcyIKIG1zZ3N0ciAiUXVpdGFyIHRvZG9zIGxvcyBzdWJtw7NkdWxvcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjA2CiBtc2dpZCAiIgogImdpdCBzdWJtb2R1bGUgZGVpbml0IFstLXF1aWV0XSBbLWYgfCAtLWZvcmNlXSBbLS1hbGwgfCBbLS1dIFs8cGF0aD4uLi5dXSIKIG1zZ3N0ciAiIgogImdpdCBzdWJtb2R1bGUgZGVpbml0IFstLXF1aWV0XSBbLWYgfCAtLWZvcmNlXSBbLS1hbGwgfCBbLS1dIFs8cnV0YT4uLi5dXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjIwCiBtc2dpZCAiVXNlICctLWFsbCcgaWYgeW91IHJlYWxseSB3YW50IHRvIGRlaW5pdGlhbGl6ZSBhbGwgc3VibW9kdWxlcyIKIG1zZ3N0ciAiVXNhICctLWFsbCcgc2kgcmVhbG1lbnRlIHF1aWVyZXMgZGVzLWluaWNpYWxpemFyIHRvZG9zIGxvcyBzdWJtw7NkdWxvcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyOTcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzMDAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjg5Cittc2dpZCAiIgorIkFuIGFsdGVybmF0ZSBjb21wdXRlZCBmcm9tIGEgc3VwZXJwcm9qZWN0J3MgYWx0ZXJuYXRlIGlzIGludmFsaWQuXG4iCisiVG8gYWxsb3cgR2l0IHRvIGNsb25lIHdpdGhvdXQgYW4gYWx0ZXJuYXRlIGluIHN1Y2ggYSBjYXNlLCBzZXRcbiIKKyJzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSB0byAnaW5mbycgb3IsIGVxdWl2YWxlbnRseSwgY2xvbmUgd2l0aFxuIgorIictLXJlZmVyZW5jZS1pZi1hYmxlJyBpbnN0ZWFkIG9mICctLXJlZmVyZW5jZScuIgorbXNnc3RyICIiCisiVW5hIGFsdGVybmF0aXZhIGNhbGN1bGFkYSBhIHBhcnRpciBkZSBsYSBhbHRlcm5hdGl2YSBkZSB1biBzdXBlcnByb3llY3RvIG5vICIKKyJlcyB2w6FsaWRhLlxuIgorIlBhcmEgcGVybWl0aXIgcXVlIEdpdCBjbG9uZSBzaW4gdW5hIGFsdGVybmF0aXZhIGVuIGVzZSBjYXNvLCBlc3RhYmxlemNhXG4iCisic3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgYSAnaW5mbycgbywgZGUgbWFuZXJhIGVxdWl2YWxlbnRlLCBjbG9uYXIgIgorImNvblxuIgorIictLXJlZmVyZW5jZS1pZi1hYmxlJyBlbiBsdWdhciBkZSAnLS1yZWZlcmVuY2UnLiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzMjggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAic3VibW9kdWxlICclcycgY2Fubm90IGFkZCBhbHRlcm5hdGU6ICVzIgogbXNnc3RyICJzdWJtw7NkdWxvICclcycgbm8gcHVlZGUgYWdyZWdhciBhbHRlcm5vOiAlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzMzYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlZhbHVlICclcycgZm9yIHN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IGlzIG5vdCByZWNvZ25pemVkIgogbXNnc3RyICJWYWxvciAnJXMnIHBhcmEgc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgbm8gZXMgcmVjb25vY2lkbyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNDMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlZhbHVlICclcycgZm9yIHN1Ym1vZHVsZS5hbHRlcm5hdGVMb2NhdGlvbiBpcyBub3QgcmVjb2duaXplZCIKIG1zZ3N0ciAiVmFsb3IgJyVzJyBwYXJhIHN1Ym1vZHVsZS5hbHRlcm5hdGVMb2NhdGlvbiBubyBlcyByZWNvbm9jaWRvIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzOTgKIG1zZ2lkICJ3aGVyZSB0aGUgbmV3IHN1Ym1vZHVsZSB3aWxsIGJlIGNsb25lZCB0byIKIG1zZ3N0ciAiYSBkb25kZSBlbCBudWV2byBzdWJtw7NkdWxvIHNlcsOhIGNsb25hZG8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMQogbXNnaWQgIm5hbWUgb2YgdGhlIG5ldyBzdWJtb2R1bGUiCiBtc2dzdHIgIm5vbWJyZSBkZWwgbnVldm8gc3VibcOzZHVsbyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA0CiBtc2dpZCAidXJsIHdoZXJlIHRvIGNsb25lIHRoZSBzdWJtb2R1bGUgZnJvbSIKIG1zZ3N0ciAidXJsIGRlIGTDs25kZSBjbG9uYXIgZWwgc3VibcOzZHVsbyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzODAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDEyCiBtc2dpZCAiZGVwdGggZm9yIHNoYWxsb3cgY2xvbmVzIgogbXNnc3RyICJwcm9mdW5kaWRhZCBwYXJhIGNsb25lcyBzdXBlcmZpY2lhbGVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTUgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjQKIG1zZ2lkICJmb3JjZSBjbG9uaW5nIHByb2dyZXNzIgogbXNnc3RyICJmb3J6YXIgZWwgcHJvY2VzbyBkZSBjbG9uYWRvIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjYKK21zZ2lkICJkaXNhbGxvdyBjbG9uaW5nIGludG8gbm9uLWVtcHR5IGRpcmVjdG9yeSIKK21zZ3N0ciAibm8gcGVybWl0aXIgY2xvbmFyIGVuIGRpcmVjdG9yaW9zIG5vIHZhY8Otb3MiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDI0CiBtc2dpZCAiIgogImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbLS1xdWlldF0gWy0tcmVmZXJlbmNlICIKLSI8cmVwb3NpdG9yeT5dIFstLW5hbWUgPG5hbWU+XSBbLS1kZXB0aCA8ZGVwdGg+XSAtLXVybCA8dXJsPiAtLXBhdGggPHBhdGg+IgorIjxyZXBvc2l0b3J5Pl0gWy0tbmFtZSA8bmFtZT5dIFstLWRlcHRoIDxkZXB0aD5dIFstLXNpbmdsZS1icmFuY2hdIC0tdXJsICIKKyI8dXJsPiAtLXBhdGggPHBhdGg+IgogbXNnc3RyICIiCiAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNsb25lIFstLXByZWZpeD08cnV0YT5dIFstLXF1aWV0XSBbLS1yZWZlcmVuY2UgIgotIjxyZXBvc2l0b3Jpbz5dIFstLW5hbWUgPG5vbWJyZT5dIFstLWRlcHRoIDxwcm9mdW5kaWRhZD5dIC0tdXJsIDx1cmw+IC0tcGF0aCAiCi0iPHJ1dGE+IgorIjxyZXBvc2l0b3Jpbz5dIFstLW5hbWUgPG5vbWJyZT5dIFstLWRlcHRoIDxwcm9mdW5kaWRhZD5dIFstLXNpbmdsZS1icmFuY2hdIC0tIgorInVybCA8dXJsPiAtLXBhdGggPHJ1dGE+IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmdXNpbmcgdG8gY3JlYXRlL3VzZSAnJXMnIGluIGFub3RoZXIgc3VibW9kdWxlJ3MgZ2l0IGRpciIKK21zZ3N0ciAicmVjaGF6YW5kbyBjcmVhci91c2FyICclcycgZW4gZWwgZGlyZWN0b3JpbyBkZSBnaXQgZGUgb3RybyBzdWJtw7NkdWxvIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJjbG9uZSBvZiAnJXMnIGludG8gc3VibW9kdWxlIHBhdGggJyVzJyBmYWlsZWQiCiBtc2dzdHIgImNsb24gZGUgJyVzJyBlbiBsYSBydXRhIGRlIHN1Ym3Ds2R1bG8gJyVzJyBmYWxsw7MiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDMzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ2NAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXJlY3Rvcnkgbm90IGVtcHR5OiAnJXMnIgorbXNnc3RyICJkaXJlY3RvcmlvIG5vIGVzdMOhIHZhY8OtbzogJyVzJyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCBzdWJtb2R1bGUgZGlyZWN0b3J5IGZvciAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIG9idGVuZXIgZWwgZGlyZWN0b3JpbyBkZSBzdWJtw7NkdWxvIHBhcmEgJyVzJyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKLW1zZ3N0ciAiTW9kbyBkZSBhY3R1YWxpemFjacOzbiBpbnbDoWxpZG8gJyVzJyBwYXJhIHJ1dGEgZGUgc3VibW9kdWxvICclcyciCittc2dzdHIgIk1vZG8gZGUgYWN0dWFsaXphY2nDs24gaW52w6FsaWRvICclcycgcGFyYSBydXRhIGRlIHN1Ym3Ds2R1bG8gJyVzJyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NzMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBjb25maWd1cmVkIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICIiCi0iTW9kbyBkZSBhY3R1YWxpemFjacOzbiBpbnbDoWxpZG8gJyVzJyBjb25maWd1cmFkbyBwYXJhIHJ1dGEgZGUgc3VibW9kdWxvICclcyciCisiTW9kbyBkZSBhY3R1YWxpemFjacOzbiBpbnbDoWxpZG8gJyVzJyBjb25maWd1cmFkbyBwYXJhIHJ1dGEgZGUgc3VibcOzZHVsbyAnJXMnIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTU2NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyVzJyBub3QgaW5pdGlhbGl6ZWQiCiBtc2dzdHIgIlJ1dGEgZGUgc3VibcOzZHVsbyAnJXMnIG5vIGluaWNpYWxpemFkYSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1NzAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjIxCiBtc2dpZCAiTWF5YmUgeW91IHdhbnQgdG8gdXNlICd1cGRhdGUgLS1pbml0Jz8iCi1tc2dzdHIgIlRhbCB2ZXogcXVpZXJlIHVzYXIgJ3VwZGF0ZSAtLWluaXQnPyIKK21zZ3N0ciAiwr9UYWwgdmV6IHF1aWVyZXMgdXNhciAndXBkYXRlIC0taW5pdCc/IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYwMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBpbmcgdW5tZXJnZWQgc3VibW9kdWxlICVzIgogbXNnc3RyICJTYWx0YW5kbyBzdWJtw7NkdWxvICVzIG5vIGZ1c2lvbmFkbyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwaW5nIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJTYWx0YW5kbyBzdWJtw7NkdWxvICclcyciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzczCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTgzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJy4gUmV0cnkgc2NoZWR1bGVkIgogbXNnc3RyICJGYWxsw7MgYWwgY2xvbmFyICclcycuIFJlaW50ZW50byBwcm9ncmFtYWRvIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTc4NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGNsb25lICclcycgYSBzZWNvbmQgdGltZSwgYWJvcnRpbmciCiBtc2dzdHIgIkZhbGzDsyBhbCBjbG9uYXIgJyVzJyB1bmEgc2VndW5kYSB2ZXosIGFib3J0YW5kbyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwODkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTAzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTQ5CiBtc2dpZCAicGF0aCBpbnRvIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgInJ1dGEgaGFjaWEgZWwgw6FyYm9sIGRlIHRyYWJham8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODUwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwNgogbXNnaWQgInBhdGggaW50byB0aGUgd29ya2luZyB0cmVlLCBhY3Jvc3MgbmVzdGVkIHN1Ym1vZHVsZSBib3VuZGFyaWVzIgogbXNnc3RyICIiCiAicnV0YSBoYWNpYSBlbCDDoXJib2wgZGUgdHJhYmFqbywgYSB0cmF2w6lzIGRlIGV4dHJlbW9zIGRlIHN1Ym3Ds2R1bG9zIGFuaWRhZG9zIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTAKIG1zZ2lkICJyZWJhc2UsIG1lcmdlLCBjaGVja291dCBvciBub25lIgogbXNnc3RyICJyZWJhc2UsIG1lcmdlLCBjaGVja291dCBvIG5vbmUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODYwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxNgogbXNnaWQgIkNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgdHJ1bmNhdGVkIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHJldmlzaW9ucyIKIG1zZ3N0ciAiQ3JlYSB1biBjbG9uIHN1cGVyZmljaWFsIHRydW5jYWRvIGFsIG7Dum1lcm8gZXNwZWNpZmljYWRvIGRlIHJldmlzacOzbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTE5CiBtc2dpZCAicGFyYWxsZWwgam9icyIKIG1zZ3N0ciAidHJhYmFqb3MgcGFyYWxlbG9zIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2NQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjEKIG1zZ2lkICJ3aGV0aGVyIHRoZSBpbml0aWFsIGNsb25lIHNob3VsZCBmb2xsb3cgdGhlIHNoYWxsb3cgcmVjb21tZW5kYXRpb24iCiBtc2dzdHIgInNpIGVsIGNsb24gaW5pY2lhbCBkZWJlIHNlZ3VpciBsYSByZWNvbWVuZGFjacOzbiBzdXBlcmZpY2lhbCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTIyCiBtc2dpZCAiZG9uJ3QgcHJpbnQgY2xvbmluZyBwcm9ncmVzcyIKIG1zZ3N0ciAibm8gbW9zdHJhciBlbCBwcm9ncmVzbyBkZSBjbG9uYWRvIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg3MwotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciB1cGRhdGVfY2xvbmUgWy0tcHJlZml4PTxwYXRoPl0gWzxwYXRoPi4uLl0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciB1cGRhdGVfY2xvbmUgWy0tcHJlZml4PTxydXRhPl0gWzxydXRhPi4uLl0iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkzMworbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciB1cGRhdGUtY2xvbmUgWy0tcHJlZml4PTxwYXRoPl0gWzxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciB1cGRhdGUtY2xvbmUgWy0tcHJlZml4PTxydXRhPl0gWzxydXRhPi4uLl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODg2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk0NgogbXNnaWQgImJhZCB2YWx1ZSBmb3IgdXBkYXRlIHBhcmFtZXRlciIKIG1zZ3N0ciAibWFsIHZhbG9yIHBhcmEgcGFyw6FtZXRybyB1cGRhdGUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTM0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk5NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiU3VibW9kdWxlICglcykgYnJhbmNoIGNvbmZpZ3VyZWQgdG8gaW5oZXJpdCBicmFuY2ggZnJvbSBzdXBlcnByb2plY3QsIGJ1dCAiCiAidGhlIHN1cGVycHJvamVjdCBpcyBub3Qgb24gYW55IGJyYW5jaCIKIG1zZ3N0ciAiIgotIlJhbWEgZGUgc3VibcOzZHVsbyAoJXMpICBjb25maWd1cmFkYSBwYXJhIGhlcmVkYXIgcmFtYSBkZWwgc3VwZXJwcm95ZWN0bywgIgotInBlcm8gZWwgc3VwZXJwcm95ZWN0byBubyBlc3TDoSBlbiBuaW5ndW5hIHJhbWEiCisiUmFtYSBkZSBzdWJtw7NkdWxvICglcykgY29uZmlndXJhZGEgcGFyYSBoZXJlZGFyIHJhbWEgZGVsIHN1cGVycHJveWVjdG8sIHBlcm8gIgorImVsIHN1cGVycHJveWVjdG8gbm8gZXN0w6EgZW4gbmluZ3VuYSByYW1hIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA1NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxMTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCBhIHJlcG9zaXRvcnkgaGFuZGxlIGZvciBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBjb25zZWd1aXIgdW4gaGFuZGxlIHBhcmEgZWwgc3VibcOzZHVsbyAnJXMnIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA5MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTAKIG1zZ2lkICJyZWN1cnNlIGludG8gc3VibW9kdWxlcyIKIG1zZ3N0ciAicmVjdXJyaXIgYSBzdWJtw7NkdWxvcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwOTYKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZW1iZWQtZ2l0LWRpciBbPHBhdGg+Li4uXSIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGVtYmVkLWdpdC1kaXIgWzxydXRhPi4uLl0iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1NgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzxvcHRpb25zPl0gWzxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzxvcGNpb25lcz5dIFs8cGF0aD4uLi5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMTIKIG1zZ2lkICJjaGVjayBpZiBpdCBpcyBzYWZlIHRvIHdyaXRlIHRvIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIgogbXNnc3RyICJyZXZpc2FyIGlzIGVzIHNlZ3VybyBlc2NyaWJpciBlbCBhcmNoaXZvIC5naXRtb2R1bGVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1NwotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgbmFtZSBbdmFsdWVdIgotbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIG5hbWUgPHZhbG9yPiIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjE1Cittc2dpZCAidW5zZXQgdGhlIGNvbmZpZyBpbiB0aGUgLmdpdG1vZHVsZXMgZmlsZSIKK21zZ3N0ciAiZGVzY29uZmlndXJhIGxhIG9wY2nDs24gZW4gZWxhcmNoaXZvIC5naXRtb2R1bGVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjAKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIDxuYW1lPiBbPHZhbHVlPl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgPG5vbWJyZT4gWzx2YWxvcj5dIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyMQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS11bnNldCA8bmFtZT4iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS11bnNldCA8bm9tYnJlPiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjIKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tY2hlY2std3JpdGVhYmxlIgogbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tY2hlY2std3JpdGVhYmxlIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE3NSBnaXQtc3VibW9kdWxlLnNoOjE2OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyNDEgZ2l0LXN1Ym1vZHVsZS5zaDoxNzQKICMsIHNoLWZvcm1hdAogbXNnaWQgInBsZWFzZSBtYWtlIHN1cmUgdGhhdCB0aGUgLmdpdG1vZHVsZXMgZmlsZSBpcyBpbiB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICIiCiAicG9yIGZhdm9yIGFzZWfDunJhdGUgcXVlIGVsIGFyY2hpdm8gLmdpdG1vZHVsZXMgZXN0w6EgZW4gZWwgw6FyYm9sIGRlIHRyYWJham8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjI1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI5MSBnaXQuYzo0MzMgZ2l0LmM6Njg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRvZXNuJ3Qgc3VwcG9ydCAtLXN1cGVyLXByZWZpeCIKIG1zZ3N0ciAiJXMgbm8gc29wb3J0YSAtLXN1cGVyLXByZWZpeCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgc3VibW9kdWxlLS1oZWxwZXIgc3ViY29tbWFuZCIKLW1zZ3N0ciAiJyVzJyBubyBlcyB1biBjb21hbmRvIHN1Ym1vZHVsZS0taGVscGVyIHZhbGlkbyIKK21zZ3N0ciAiJyVzJyBubyBlcyB1biBjb21hbmRvIHN1Ym1vZHVsZS0taGVscGVyIHbDoWxpZG8iCiAKICM6IGJ1aWx0aW4vc3ltYm9saWMtcmVmLmM6OAogbXNnaWQgImdpdCBzeW1ib2xpYy1yZWYgWzxvcHRpb25zPl0gPG5hbWU+IFs8cmVmPl0iCkBAIC0xNzU2MCwxNyArMjEyMDksMTcgQEAKIAogIzogYnVpbHRpbi90YWcuYzoyNQogbXNnaWQgIiIKLSJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPGtleS1pZD5dIFstZl0gWy1tIDxtc2c+IHwgLUYgPGZpbGU+XSA8dGFnbmFtZT4gIgotIls8aGVhZD5dIgorImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8a2V5LWlkPl0gWy1mXSBbLW0gPG1zZz4gfCAtRiA8ZmlsZT5dXG4iCisiXHRcdDx0YWduYW1lPiBbPGhlYWQ+XSIKIG1zZ3N0ciAiIgotImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8aWQtZGUtY2xhdmU+XSBbLWZdIFstbSA8bWVuc2FqZT4gfCAtRiA8YXJjaGl2bz5dICIKLSI8bm9tYnJlLWRlLXRhZz4gWzxoZWFkPl0iCisiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA8bXNnPiB8IC1GIDxhcmNoaXZvPl1cbiIKKyJcdFx0PG5vbWJyZS10YWc+IFs8aGVhZD5dIgogCi0jOiBidWlsdGluL3RhZy5jOjI2CisjOiBidWlsdGluL3RhZy5jOjI3CiBtc2dpZCAiZ2l0IHRhZyAtZCA8dGFnbmFtZT4uLi4iCiBtc2dzdHIgImdpdCB0YWcgLWQgPG5vbWJyZS1kZS10YWc+Li4uIgogCi0jOiBidWlsdGluL3RhZy5jOjI3CisjOiBidWlsdGluL3RhZy5jOjI4CiBtc2dpZCAiIgogImdpdCB0YWcgLWwgWy1uWzxudW0+XV0gWy0tY29udGFpbnMgPGNvbW1pdD5dIFstLW5vLWNvbnRhaW5zIDxjb21taXQ+XSBbLS0iCiAicG9pbnRzLWF0IDxvYmplY3Q+XVxuIgpAQCAtMTc1ODAsMjEgKzIxMjI5LDIxIEBACiAicG9pbnRzLWF0IDxvYmpldG8+XVxuIgogIlx0XHRbLS1mb3JtYXQ9PGZvcm1hdG8+XSBbLS1bbm8tXW1lcmdlZCBbPGNvbW1pdD5dXSBbPHBhdHLDs24+Li4uXSIKIAotIzogYnVpbHRpbi90YWcuYzoyOQorIzogYnVpbHRpbi90YWcuYzozMAogbXNnaWQgImdpdCB0YWcgLXYgWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnbmFtZT4uLi4iCiBtc2dzdHIgImdpdCB0YWcgLXYgWy0tZm9ybWF0PTxmb3JtYXRvPl0gPG5vbWJyZS1kZS10YWc+Li4uIgogCi0jOiBidWlsdGluL3RhZy5jOjg3CisjOiBidWlsdGluL3RhZy5jOjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIG5vdCBmb3VuZC4iCiBtc2dzdHIgInRhZyAnJXMnIG5vIGVuY29udHJhZG8uIgogCi0jOiBidWlsdGluL3RhZy5jOjEwMworIzogYnVpbHRpbi90YWcuYzoxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCB0YWcgJyVzJyAod2FzICVzKVxuIgogbXNnc3RyICJFdGlxdWV0YSAnJXMnIGVsaW1pbmFkYSAoZXJhICVzKVxuIgogCi0jOiBidWlsdGluL3RhZy5jOjEzMworIzogYnVpbHRpbi90YWcuYzoxMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTc2MDcsNyArMjEyNTYsNyBAQAogIiAgJXNcbiIKICJMYXMgbMOtbmVhcyBxdWUgY29taWVuemFuIGNvbiAnJWMnIHNlcsOhbiBpZ25vcmFkYXMuXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTM3CisjOiBidWlsdGluL3RhZy5jOjEzOQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC0xNzYyMiwzNTEgKzIxMjcxLDM2OCBAQAogIkxhcyBsw61uZWFzIHF1ZSBjb21pZW56YW4gY29uICclYycgc2Vyw6FuIGNvbnNlcnZhZGFzOyBwdWVkZXMgZWxpbWluYXJsYXMgcG9yICIKICJ0aSBtaXNtbyBzaSBxdWllcmVzIGhhY2VybG8uXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTkxCisjOiBidWlsdGluL3RhZy5jOjE5OAogbXNnaWQgInVuYWJsZSB0byBzaWduIHRoZSB0YWciCiBtc2dzdHIgImluY2FwYXogZGUgZmlybWFyIHRhZyIKIAotIzogYnVpbHRpbi90YWcuYzoxOTMKKyM6IGJ1aWx0aW4vdGFnLmM6MjAwCiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRhZyBmaWxlIgogbXNnc3RyICJpbmNhcGF6IGRlIGVzY3JpYmlyIGVsIGFyY2hpdm8gZGUgdGFnIgogCi0jOiBidWlsdGluL3RhZy5jOjIxOAorIzogYnVpbHRpbi90YWcuYzoyMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBoYXZlIGNyZWF0ZWQgYSBuZXN0ZWQgdGFnLiBUaGUgb2JqZWN0IHJlZmVycmVkIHRvIGJ5IHlvdXIgbmV3IHRhZyBpc1xuIgorImFscmVhZHkgYSB0YWcuIElmIHlvdSBtZWFudCB0byB0YWcgdGhlIG9iamVjdCB0aGF0IGl0IHBvaW50cyB0bywgdXNlOlxuIgorIlxuIgorIlx0Z2l0IHRhZyAtZiAlcyAlc157fSIKK21zZ3N0ciAiIgorIkhhcyBjcmVhZG8gdW4gdGFnIGFuaWRhZG8uIEVsIG9iamV0byByZWZlcmlkbyBwb3IgZWwgbnVldm8gdGFnIHlhXG4iCisiZXMgdW4gdGFnLiBTaSBxdWlzaXN0ZSBoYWNlciBlbCB0YWcgYWwgb2JqZXRvIHF1ZSBhcHVudGEsIHVzYTpcbiIKKyJcbiIKKyJcdGdpdCB0YWcgLWYgJXMgJXNee30iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjMyCiBtc2dpZCAiYmFkIG9iamVjdCB0eXBlLiIKIG1zZ3N0ciAidGlwbyBkZSBvYmpldG8gZXJyw7NuZW8uIgogCi0jOiBidWlsdGluL3RhZy5jOjI2NworIzogYnVpbHRpbi90YWcuYzoyODQKIG1zZ2lkICJubyB0YWcgbWVzc2FnZT8iCiBtc2dzdHIgIsK/U2luIG1lbnNhamUgZGUgdGFnPyIKIAotIzogYnVpbHRpbi90YWcuYzoyNzQKKyM6IGJ1aWx0aW4vdGFnLmM6MjkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSB0YWcgbWVzc2FnZSBoYXMgYmVlbiBsZWZ0IGluICVzXG4iCiBtc2dzdHIgIkVsIG1lbnNhamUgZGVsIHRhZyBoYSBzaWRvIGRlamFkbyBlbiAlc1xuIgogCi0jOiBidWlsdGluL3RhZy5jOjM4NQorIzogYnVpbHRpbi90YWcuYzo0MDIKIG1zZ2lkICJsaXN0IHRhZyBuYW1lcyIKIG1zZ3N0ciAibGlzdGFyIG5vbWJyZXMgZGUgdGFncyIKIAotIzogYnVpbHRpbi90YWcuYzozODcKKyM6IGJ1aWx0aW4vdGFnLmM6NDA0CiBtc2dpZCAicHJpbnQgPG4+IGxpbmVzIG9mIGVhY2ggdGFnIG1lc3NhZ2UiCiBtc2dzdHIgImltcHJpbWlyIDxuPiBsw61uZWFzIGRlIGNhZGEgbWVuc2FqZSBkZSB0YWciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzg5CisjOiBidWlsdGluL3RhZy5jOjQwNgogbXNnaWQgImRlbGV0ZSB0YWdzIgogbXNnc3RyICJlbGltaW5hciB0YWdzIgogCi0jOiBidWlsdGluL3RhZy5jOjM5MAorIzogYnVpbHRpbi90YWcuYzo0MDcKIG1zZ2lkICJ2ZXJpZnkgdGFncyIKIG1zZ3N0ciAidmVyaWZpY2FyIHRhZ3MiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MzkyCisjOiBidWlsdGluL3RhZy5jOjQwOQogbXNnaWQgIlRhZyBjcmVhdGlvbiBvcHRpb25zIgogbXNnc3RyICJPcGNpb25lcyBkZSBjcmVhY2nDs24gZGUgdGFncyIKIAotIzogYnVpbHRpbi90YWcuYzozOTQKKyM6IGJ1aWx0aW4vdGFnLmM6NDExCiBtc2dpZCAiYW5ub3RhdGVkIHRhZywgbmVlZHMgYSBtZXNzYWdlIgogbXNnc3RyICJ0YWdzIGFub3RhZGFzIG5lY2VzaXRhbiB1biBtZW5zYWplIgogCi0jOiBidWlsdGluL3RhZy5jOjM5NgorIzogYnVpbHRpbi90YWcuYzo0MTMKIG1zZ2lkICJ0YWcgbWVzc2FnZSIKIG1zZ3N0ciAibWVuc2FqZSBkZSB0YWciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzk4CisjOiBidWlsdGluL3RhZy5jOjQxNQogbXNnaWQgImZvcmNlIGVkaXQgb2YgdGFnIG1lc3NhZ2UiCiBtc2dzdHIgImZvcnphciBsYSBlZGljacOzbiBkZWwgbWVuc2FqZSBkZSB0YWciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzk5CisjOiBidWlsdGluL3RhZy5jOjQxNgogbXNnaWQgImFubm90YXRlZCBhbmQgR1BHLXNpZ25lZCB0YWciCiBtc2dzdHIgInRhZyBhbm90YWRvIHkgZmlybWFkbyBjb24gR1BHIgogCi0jOiBidWlsdGluL3RhZy5jOjQwMworIzogYnVpbHRpbi90YWcuYzo0MTkKIG1zZ2lkICJ1c2UgYW5vdGhlciBrZXkgdG8gc2lnbiB0aGUgdGFnIgogbXNnc3RyICJ1c2FyIG90cmEgY2xhdmUgcGFyYSBmaXJtYXIgZWwgdGFnIgogCi0jOiBidWlsdGluL3RhZy5jOjQwNAorIzogYnVpbHRpbi90YWcuYzo0MjAKIG1zZ2lkICJyZXBsYWNlIHRoZSB0YWcgaWYgZXhpc3RzIgogbXNnc3RyICJyZW1wbGF6YXIgdGFnIHNpIGV4aXN0ZSIKIAotIzogYnVpbHRpbi90YWcuYzo0MDUgYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY5CisjOiBidWlsdGluL3RhZy5jOjQyMSBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjkKIG1zZ2lkICJjcmVhdGUgYSByZWZsb2ciCiBtc2dzdHIgImNyZWFyIHVuIHJlZmxvZyIKIAotIzogYnVpbHRpbi90YWcuYzo0MDcKKyM6IGJ1aWx0aW4vdGFnLmM6NDIzCiBtc2dpZCAiVGFnIGxpc3Rpbmcgb3B0aW9ucyIKIG1zZ3N0ciAiT3BjaW9uZXMgZGUgbGlzdGFkbyBkZSB0YWciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA4CisjOiBidWlsdGluL3RhZy5jOjQyNAogbXNnaWQgInNob3cgdGFnIGxpc3QgaW4gY29sdW1ucyIKIG1zZ3N0ciAibW9zdHJhciBsaXN0YSBkZSB0YWdzIGVuIGNvbHVtbmFzIgogCi0jOiBidWlsdGluL3RhZy5jOjQwOSBidWlsdGluL3RhZy5jOjQxMQorIzogYnVpbHRpbi90YWcuYzo0MjUgYnVpbHRpbi90YWcuYzo0MjcKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgIm1vc3RyYXIgc29sbyB0YWdzIHF1ZSBjb250aWVuZW4gZWwgY29tbWl0IgogCi0jOiBidWlsdGluL3RhZy5jOjQxMCBidWlsdGluL3RhZy5jOjQxMgorIzogYnVpbHRpbi90YWcuYzo0MjYgYnVpbHRpbi90YWcuYzo0MjgKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgIm1vc3RyYXIgc29sbyB0YWdzIHF1ZSBubyBjb250aWVuZW4gZWwgY29tbWl0IgogCi0jOiBidWlsdGluL3RhZy5jOjQxMworIzogYnVpbHRpbi90YWcuYzo0MjkKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBhcmUgbWVyZ2VkIgogbXNnc3RyICJzw7NsbyBpbXByaW1pciBsYXMgdGFncyBxdWUgZXN0w6FuIGZ1c2lvbmFkYXMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDE0CisjOiBidWlsdGluL3RhZy5jOjQzMAogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGFyZSBub3QgbWVyZ2VkIgogbXNnc3RyICJzw7NsbyBpbXByaW1pciBsYXMgdGFncyBxdWUgbm8gZXN0w6FuIGZ1c2lvbmFkYXMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDE5CisjOiBidWlsdGluL3RhZy5jOjQzNAogbXNnaWQgInByaW50IG9ubHkgdGFncyBvZiB0aGUgb2JqZWN0IgogbXNnc3RyICJzw7NsbyBpbXByaW1pciB0YWdzIGRlIGVsIG9iamV0byIKIAotIzogYnVpbHRpbi90YWcuYzo0NjMKKyM6IGJ1aWx0aW4vdGFnLmM6NDgyCiBtc2dpZCAiLS1jb2x1bW4gYW5kIC1uIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0tY29sdW1uIHkgLW4gc29uIGluY29tcGF0aWJsZXMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDg1CisjOiBidWlsdGluL3RhZy5jOjUwNAogbXNnaWQgIi1uIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICJvcGNpw7NuIC1uIHNvbG8gZXMgcGVybWl0aWRhIGVuIG1vZG8gbGlzdGEiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDg3CisjOiBidWlsdGluL3RhZy5jOjUwNgogbXNnaWQgIi0tY29udGFpbnMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgIm9wY2nDs24gLS1jb250YWlucyBzb2xvIGVzIHBlcm1pdGlkbyBlbiBtb2RvIGxpc3RhIgogCi0jOiBidWlsdGluL3RhZy5jOjQ4OQorIzogYnVpbHRpbi90YWcuYzo1MDgKIG1zZ2lkICItLW5vLWNvbnRhaW5zIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICJvcGNpw7NuIC0tbm8tY29udGFpbnMgc29sbyBlcyBwZXJtaXRpZGEgZW4gbW9kbyBsaXN0YSIKIAotIzogYnVpbHRpbi90YWcuYzo0OTEKKyM6IGJ1aWx0aW4vdGFnLmM6NTEwCiBtc2dpZCAiLS1wb2ludHMtYXQgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgIm9wY2nDs24gLS1wb2ludHMtYXQgc29sbyBlcyBwZXJtaXRpZGEgZW4gbW9kbyBsaXN0YSIKIAotIzogYnVpbHRpbi90YWcuYzo0OTMKKyM6IGJ1aWx0aW4vdGFnLmM6NTEyCiBtc2dpZCAiLS1tZXJnZWQgYW5kIC0tbm8tbWVyZ2VkIG9wdGlvbnMgYXJlIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgIm9wY2lvbmVzIC0tbWVyZ2VkIHkgLS1uby1tZXJnZWQgIHNvbG8gZXN0w6FuIHBlcm1pdGlkYXMgZW4gbW9kbyBsaXN0YSIKIAotIzogYnVpbHRpbi90YWcuYzo1MDQKKyM6IGJ1aWx0aW4vdGFnLmM6NTIzCiBtc2dpZCAib25seSBvbmUgLUYgb3IgLW0gb3B0aW9uIGlzIGFsbG93ZWQuIgogbXNnc3RyICJzw7NsbyBzZSBwZXJtaXRlIHVuYSBkZSBsYXMgb3BjaW9uZXMsIC1tIMOzIC1GLiIKIAotIzogYnVpbHRpbi90YWcuYzo1MjMKKyM6IGJ1aWx0aW4vdGFnLmM6NTQyCiBtc2dpZCAidG9vIG1hbnkgcGFyYW1zIgogbXNnc3RyICJkZW1hc2lhZG9zIHBhcsOhbWV0cm9zIgogCi0jOiBidWlsdGluL3RhZy5jOjUyOQorIzogYnVpbHRpbi90YWcuYzo1NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0YWcgbmFtZS4iCiBtc2dzdHIgIiclcycgbm8gZXMgdW4gbm9tYnJlIGRlIHRhZyB2w6FsaWRvLiIKIAotIzogYnVpbHRpbi90YWcuYzo1MzQKKyM6IGJ1aWx0aW4vdGFnLmM6NTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICJlbCB0YWcgJyVzJyB5YSBleGlzdGUiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTY1CisjOiBidWlsdGluL3RhZy5jOjU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJVcGRhdGVkIHRhZyAnJXMnICh3YXMgJXMpXG4iCiBtc2dzdHIgIkV0aXF1ZXRhICclcycgYWN0dWFsaXphZGEgKGVyYSAlcylcbiIKIAotIzogYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjUwMAorIzogYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjUwMgogbXNnaWQgIlVucGFja2luZyBvYmplY3RzIgogbXNnc3RyICJEZXNlbXBhcXVldGFuZG8gb2JqZXRvcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAlcyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGNyZWFyIGRpcmVjdG9yaW8gJXMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZmlsZSAlcyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGNyZWFyIGVsIGFyY2hpdm8gJXMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIGZpbGUgJXMiCiBtc2dzdHIgImZhbGzDsyBhbCBlbGltaW5hciBlbCBhcmNoaXZvICVzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExMyBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxOQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTUgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSBkaXJlY3RvcnkgJXMiCiBtc2dzdHIgImZhbGzDsyBhbCBlbGltaW5hciBkaXJlY3RvcmlvICVzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEzOAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGVzdGluZyBtdGltZSBpbiAnJXMnICIKIG1zZ3N0ciAiUHJvYmFuZG8gbXRpbWUgZW4gJyVzJyAiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTUyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE1NAogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGFkZGluZyBhIG5ldyBmaWxlIgogbXNnc3RyICJpbmZvIGRlIGVzdGFkbyBkZWwgZGlyZWN0b3JpbyBubyBjYW1iaWEgdHJhcyBhZ3JlZ2FyIHVuIG51ZXZvIGFyY2hpdm8iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTY1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE2NwogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGFkZGluZyBhIG5ldyBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKICJpbmZvIGRlIGVzdGFkbyBkZWwgZGlyZWN0b3JpbyBubyBjYW1iaWEgdHJhcyBhZ3JlZ2FyIHVuIG51ZXZvIGRpcmVjdG9yaW8iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTc4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE4MAogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gY2hhbmdlcyBhZnRlciB1cGRhdGluZyBhIGZpbGUiCiBtc2dzdHIgImluZm8gZGUgZXN0YWRvIGRlbCBkaXJlY3RvcmlvIGNhbWJpYSB0cmFzIGFjdHVhbGl6YXIgdW4gYXJjaGl2byIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxODkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTkxCiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBjaGFuZ2VzIGFmdGVyIGFkZGluZyBhIGZpbGUgaW5zaWRlIHN1YmRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogImluZm8gZGUgZXN0YWRvIGRlbCBkaXJlY3RvcmlvIGNhbWJpYSB0cmFzIGFncmVnYXIgdW4gYXJjaGl2byBkZW50cm8gZGVsICIKICJzdWJkaXJlY3RvcmlvIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIwMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMDIKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGZpbGUiCiBtc2dzdHIgImluZm8gZGUgZXN0YWRvIGRlbCBkaXJlY3RvcmlvIG5vIGNhbWJpYSB0cmFzIGJvcnJhciB1biBhcmNoaXZvIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxMworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTUKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGRpcmVjdG9yeSIKIG1zZ3N0ciAiaW5mbyBkZSBlc3RhZG8gZGVsIGRpcmVjdG9yaW8gbm8gY2FtYmlhIHRyYXMgYm9ycmFyIHVuIGRpcmVjdG9yaW8iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMgogbXNnaWQgIiBPSyIKIG1zZ3N0ciAiIE9LIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjU4OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo1OTEKIG1zZ2lkICJnaXQgdXBkYXRlLWluZGV4IFs8b3B0aW9ucz5dIFstLV0gWzxmaWxlPi4uLl0iCiBtc2dzdHIgImdpdCB1cGRhdGUtaW5kZXggWzxvcGNpb25lcz5dIFstLV0gWzxhcmNoaXZvPi4uLl0iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTYxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3NAogbXNnaWQgImNvbnRpbnVlIHJlZnJlc2ggZXZlbiB3aGVuIGluZGV4IG5lZWRzIHVwZGF0ZSIKIG1zZ3N0ciAiIgogImNvbnRpbnVhciByZWZyZXNoIChBY3R1YWxpemFjacOzbikgaW5jbHVzbyBjdWFuZG8gZWwgw61uZGljZSBuZWNlc2l0YSAiCiAiYWN0dWFsaXphY2nDs24iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTY0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3NwogbXNnaWQgInJlZnJlc2g6IGlnbm9yZSBzdWJtb2R1bGVzIgogbXNnc3RyICJyZWZyZXNoOiBpZ25vcmEgc3VibcOzZHVsb3MiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTY3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4MAogbXNnaWQgImRvIG5vdCBpZ25vcmUgbmV3IGZpbGVzIgogbXNnc3RyICJubyBpZ25vcmFyIGFyY2hpdm9zIG51ZXZvcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NjkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgyCiBtc2dpZCAibGV0IGZpbGVzIHJlcGxhY2UgZGlyZWN0b3JpZXMgYW5kIHZpY2UtdmVyc2EiCiBtc2dzdHIgInBlcm1pdGlyIHF1ZSBhcmNoaXZvcyByZW1wbGFjZW4gZGlyZWN0b3Jpb3MgeSB2aWNlLXZlcnNhIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODQKIG1zZ2lkICJub3RpY2UgZmlsZXMgbWlzc2luZyBmcm9tIHdvcmt0cmVlIgogbXNnc3RyICJhdmlzYXIgZGUgYXJjaGl2b3MgZmFsdGFuZG8gZW4gZWwgw6FyYm9sIGRlIHRyYWJham8iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTczCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NgogbXNnaWQgInJlZnJlc2ggZXZlbiBpZiBpbmRleCBjb250YWlucyB1bm1lcmdlZCBlbnRyaWVzIgogbXNnc3RyICJlamVjdXRhciByZWZyZXNoIGluY2x1c28gc2kgZWwgw61uZGljZSBjb250aWVuZSBlbnRyYWRhcyBzaW4gY2FtYmlvcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg5CiBtc2dpZCAicmVmcmVzaCBzdGF0IGluZm9ybWF0aW9uIgogbXNnc3RyICJyZWZyZXNoIGluZm9ybWFjacOzbiBkZSBlc3RhZG8iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5MwogbXNnaWQgImxpa2UgLS1yZWZyZXNoLCBidXQgaWdub3JlIGFzc3VtZS11bmNoYW5nZWQgc2V0dGluZyIKIG1zZ3N0ciAiY29tbyAtLXJlZnJlc2gsIHBlcm8gaWdub3JhIGNvbmZpZ3VyYWNpw7NuIGFzc3VtZS11bmNoYW5nZWQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NwogbXNnaWQgIjxtb2RlPiw8b2JqZWN0Piw8cGF0aD4iCiBtc2dzdHIgIjxtb2RvPiw8b2JqZXRvPiw8cnV0YT4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5OAogbXNnaWQgImFkZCB0aGUgc3BlY2lmaWVkIGVudHJ5IHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiYWdyZWdhciBsYSBlbnRyYWRhIGVzcGVjaWZpY2FkYSBhbCDDrW5kaWNlIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA4CiBtc2dpZCAibWFyayBmaWxlcyBhcyBcIm5vdCBjaGFuZ2luZ1wiIgogbXNnc3RyICJtYXJjYXIgYXJjaGl2b3MgY29tbyBcIm5vdCBjaGFuZ2luZ1wiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDExCiBtc2dpZCAiY2xlYXIgYXNzdW1lZC11bmNoYW5nZWQgYml0IgogbXNnc3RyICJsaW1waWFyIGJpdCBhc3N1bWVkLXVuY2hhbmdlZCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTQKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIFwiaW5kZXgtb25seVwiIgogbXNnc3RyICJtYXJjYXIgYXJjaGl2b3MgY29tbyBcImluZGV4LW9ubHlcIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAzCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTcKIG1zZ2lkICJjbGVhciBza2lwLXdvcmt0cmVlIGJpdCIKIG1zZ3N0ciAibGltcGlhciBiaXQgc2tpcC13b3JrdHJlZSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjAKK21zZ2lkICJkbyBub3QgdG91Y2ggaW5kZXgtb25seSBlbnRyaWVzIgorbXNnc3RyICJubyB0b2NhciBlbnRyYWRhcyBpbmRleC1vbmx5IgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjIKIG1zZ2lkICJhZGQgdG8gaW5kZXggb25seTsgZG8gbm90IGFkZCBjb250ZW50IHRvIG9iamVjdCBkYXRhYmFzZSIKIG1zZ3N0ciAiIgogImFncmVnYXIgc29sbyBhbCDDrW5kaWNlOyBubyBhZ3JlZ2FyIGNvbnRlbmlkbyBhIGxhIGJhc2UgZGUgZGF0b3MgZGUgb2JqZXRvcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjQKIG1zZ2lkICJyZW1vdmUgbmFtZWQgcGF0aHMgZXZlbiBpZiBwcmVzZW50IGluIHdvcmt0cmVlIgogbXNnc3RyICIiCiAiZWxpbWluYXIgcnV0YXMgbm9tYnJhZGFzIGluY2x1c28gc2kgZXN0w6FuIHByZXNlbnRlcyBlbiBlbCDDoXJib2wgZGUgdHJhYmFqbyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDEwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjYKIG1zZ2lkICJ3aXRoIC0tc3RkaW46IGlucHV0IGxpbmVzIGFyZSB0ZXJtaW5hdGVkIGJ5IG51bGwgYnl0ZXMiCi1tc2dzdHIgImNvbiAtLXN0ZGluOiBsYXMgbGluZWFzIGRlIGVudHJhZGEgc29uIHRlcm1pbmFkYXMgY29uIGJ5dGVzIG51bG9zIgorbXNnc3RyICJjb24gLS1zdGRpbjogbGFzIGzDrW5lYXMgZGUgZW50cmFkYSBzb24gdGVybWluYWRhcyBjb24gYnl0ZXMgbnVsb3MiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI4CiBtc2dpZCAicmVhZCBsaXN0IG9mIHBhdGhzIHRvIGJlIHVwZGF0ZWQgZnJvbSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAibGVlciBsYSBsaXN0YSBkZSBydXRhcyBwYXJhIHNlciBhY3R1YWxpemFkYSBkZXNkZSBzdGFuZGFyZCBpbnB1dCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDE2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzIKIG1zZ2lkICJhZGQgZW50cmllcyBmcm9tIHN0YW5kYXJkIGlucHV0IHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiYWdyZWdhciBlbnRyYWRhcyBkZSBzdGFuZGFyZCBpbnB1dCBhbCDDrW5kaWNlIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzNgogbXNnaWQgInJlcG9wdWxhdGUgc3RhZ2VzICMyIGFuZCAjMyBmb3IgdGhlIGxpc3RlZCBwYXRocyIKIG1zZ3N0ciAicmVwb2JsYXIgc3RhZ2VzICMyIHkgIzMgcGFyYSBsYXMgcnV0YXMgbGlzdGFkYXMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQwCiBtc2dpZCAib25seSB1cGRhdGUgZW50cmllcyB0aGF0IGRpZmZlciBmcm9tIEhFQUQiCiBtc2dzdHIgInNvbG8gYWN0dWFsaXphciBlbnRyYWRhcyBxdWUgZGlmaWVyZW4gZGUgSEVBRCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDQKIG1zZ2lkICJpZ25vcmUgZmlsZXMgbWlzc2luZyBmcm9tIHdvcmt0cmVlIgogbXNnc3RyICJpZ25vcmFyIGFyY2hpdm9zIGZhbHRhbnRlcyBlbiBlbCDDoXJib2wgZGUgdHJhYmFqbyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDMxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDcKIG1zZ2lkICJyZXBvcnQgYWN0aW9ucyB0byBzdGFuZGFyZCBvdXRwdXQiCiBtc2dzdHIgInJlcG9ydGFyIGFjY2lvbmVzIHBvciBzdGFuZGFyZCBvdXRwdXQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzMworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ5CiBtc2dpZCAiKGZvciBwb3JjZWxhaW5zKSBmb3JnZXQgc2F2ZWQgdW5yZXNvbHZlZCBjb25mbGljdHMiCiBtc2dzdHIgIihwYXJhIHBvcmNlbGFuYXMpIG9sdmlkYXIgY29uZmxpY3RvcyBzaW4gcmVzb2x2ZXIgZ3VhcmRhZG9zIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1MwogbXNnaWQgIndyaXRlIGluZGV4IGluIHRoaXMgZm9ybWF0IgogbXNnc3RyICJlc2NyaWJpciDDrW5kaWNlIGVuIGVzdGUgZm9ybWF0byIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDM5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTUKIG1zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBzcGxpdCBpbmRleCIKIG1zZ3N0ciAiYWN0aXZhciBvIGRlc2FjdGl2YXIgw61uZGljZSBkaXZpZGlkbyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTcKIG1zZ2lkICJlbmFibGUvZGlzYWJsZSB1bnRyYWNrZWQgY2FjaGUiCiBtc2dzdHIgImhhYmlsaXRhciBvIGRlc2hhYmlsaXRhciBjYWNow6kgbm8gcmFzdHJlYWRvIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1OQogbXNnaWQgInRlc3QgaWYgdGhlIGZpbGVzeXN0ZW0gc3VwcG9ydHMgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICJwcm9iYXIgc2kgZWwgZmlsZXN5c3RlbSBzb3BvcnRhIGNhY2jDqSBubyByYXN0cmVhZG8iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDYxCiBtc2dpZCAiZW5hYmxlIHVudHJhY2tlZCBjYWNoZSB3aXRob3V0IHRlc3RpbmcgdGhlIGZpbGVzeXN0ZW0iCiBtc2dzdHIgImhhYmlsaXRhciBjYWNow6kgbm8gcmFzdHJlYWRvIHNpbiBwcm9iYXIgZWwgZmlsZXN5c3RlbSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjMKIG1zZ2lkICJ3cml0ZSBvdXQgdGhlIGluZGV4IGV2ZW4gaWYgaXMgbm90IGZsYWdnZWQgYXMgY2hhbmdlZCIKIG1zZ3N0ciAiZXNjcmliaXIgZWwgw61uZGljZSBpbmNsdXNvIHNpIG5vIGVzdMOhIG1hcmNhZG8gY29tbyBjYW1iaWFkbyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjUKIG1zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBmaWxlIHN5c3RlbSBtb25pdG9yIgogbXNnc3RyICJhY3RpdmFyIG8gZGVzYWN0aXZhciBtb25pdG9yIGRlIHNpc3RlbWEgZGUgYXJjaGl2b3MiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDY3CiBtc2dpZCAibWFyayBmaWxlcyBhcyBmc21vbml0b3IgdmFsaWQiCiBtc2dzdHIgIm1hcmNhciBhcmNoaXZvcyBjb21vIHbDoWxpZG9zIHBhcmEgZnNtb25pdG9yIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA3MAogbXNnaWQgImNsZWFyIGZzbW9uaXRvciB2YWxpZCBiaXQiCiBtc2dzdHIgImxpbXBpYSBlbCBiaXQgZGUgdmFsaWRhY2nDs24gZnNtb25pdG9yIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNTMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MwogbXNnaWQgIiIKICJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgogImVuYWJsZSBzcGxpdCBpbmRleCIKQEAgLTE3OTc0LDcgKzIxNjQwLDcgQEAKICJjb3JlLnNwbGl0SW5kZXggZXN0w6EgY29uZmlndXJhZG8gZW4gZmFsc2U7IHJlbXXDqXZlbG8gbyBjw6FtYmlhbG8sIHNpICIKICJyZWFsbWVudGUgcXVpZXJlcyBoYWJpbGl0YXIgZWwgw61uZGljZSBwYXJ0aWRvIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNjIKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4MgogbXNnaWQgIiIKICJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCB0byAiCiAiZGlzYWJsZSBzcGxpdCBpbmRleCIKQEAgLTE3OTgyLDcgKzIxNjQ4LDcgQEAKICJjb3JlLnNwbGl0SW5kZXggZXN0w6EgY29uZmlndXJhZG8gZW4gdHJ1ZTsgcmVtdcOpdmVsbyBvIGPDoW1iaWFsbywgc2kgcmVhbG1lbnRlICIKICJxdWllcmVzIGRlc2hhYmlsaXRhciBlbCDDrW5kaWNlIHBhcnRpZG8iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTk0CiBtc2dpZCAiIgogImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCiAidG8gZGlzYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgpAQCAtMTc5OTAsMTEgKzIxNjU2LDExIEBACiAiY29yZS51bnRyYWNrZWRDYWNoZSBlc3TDoSBjb25maWd1cmFkbyBlbiB0cnVlOyByZW11w6l2ZWxvIG8gY8OhbWJpYWxvLCBzaSAiCiAicmVhbG1lbnRlIHF1aWVyZXMgZGVzaGFiaWxpdGFyIGVsIGNoYWNow6kgbm8gcmFzdHJlYWRvIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNzcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE5OAogbXNnaWQgIlVudHJhY2tlZCBjYWNoZSBkaXNhYmxlZCIKIG1zZ3N0ciAiQ2FjaMOpIG5vIHJhc3RyZWFkbyBkZXNoYWJpbGl0YWRvIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExODUKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwNgogbXNnaWQgIiIKICJjb3JlLnVudHJhY2tlZENhY2hlIGlzIHNldCB0byBmYWxzZTsgcmVtb3ZlIG9yIGNoYW5nZSBpdCwgaWYgeW91IHJlYWxseSB3YW50ICIKICJ0byBlbmFibGUgdGhlIHVudHJhY2tlZCBjYWNoZSIKQEAgLTE4MDAyLDI5ICsyMTY2OCwyOSBAQAogImNvcmUudW50cmFja2VkQ2FjaGUgZXN0w6EgY29uZmlndXJhZG8gZW4gZmFsc2U7IHJlbXXDqXZlbG8gbyBjw6FtYmlhbG8sIHNpICIKICJyZWFsbWVudGUgcXVpZXJlcyBoYWJpbGl0YXIgZWwgY2FjaMOpIG5vIHJhc3RyZWFkbyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTg5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW50cmFja2VkIGNhY2hlIGVuYWJsZWQgZm9yICclcyciCiBtc2dzdHIgIkNhY2jDqSBubyByYXN0cmVhZG8gaGFiaWxpdGFkbyBwYXJhICclcyciCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE5NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjE4CiBtc2dpZCAiY29yZS5mc21vbml0b3IgaXMgdW5zZXQ7IHNldCBpdCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZW5hYmxlIGZzbW9uaXRvciIKIG1zZ3N0ciAiIgogImNvcmUuZnNtb25pdG9yIG5vIGVzdMOhIGNvbmZpZ3VyYWRvOyBhY3TDrXZhbG8gc2kgcmVhbG1lbnRlIHF1aWVyZXMgaGFiaWxpdGFyICIKICJmc21vbml0b3IiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwMQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjIyCiBtc2dpZCAiZnNtb25pdG9yIGVuYWJsZWQiCiBtc2dzdHIgImZzbW9uaXRvciBhY3RpdmFkbyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMjUKIG1zZ2lkICIiCiAiY29yZS5mc21vbml0b3IgaXMgc2V0OyByZW1vdmUgaXQgaWYgeW91IHJlYWxseSB3YW50IHRvIGRpc2FibGUgZnNtb25pdG9yIgogbXNnc3RyICIiCiAiY29yZS5mc21vbml0b3IgZXN0w6EgY29uZmlndXJhZG87IHJlbXXDqXZlbG8gc2kgcmVhbG1lbnRlIHF1aWVyZXMgZGVzaGFiaWxpdGFyICIKICJlbCBmc21vbml0b3IiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwOAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjI5CiBtc2dpZCAiZnNtb25pdG9yIGRpc2FibGVkIgogbXNnc3RyICJmc21vbml0b3IgZGVzYWN0aXZhZG8iCiAKQEAgLTE4MDcwLDYgKzIxNzM2LDEwIEBACiBtc2dpZCAiZ2l0IHVwbG9hZC1wYWNrIFs8b3B0aW9ucz5dIDxkaXI+IgogbXNnc3RyICJnaXQgdXBsb2FkLXBhY2sgWzxvcGNpb25lcz5dIDxkaXJlY3RvcmlvPiIKIAorIzogYnVpbHRpbi91cGxvYWQtcGFjay5jOjIzIHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzoxNworbXNnaWQgInF1aXQgYWZ0ZXIgYSBzaW5nbGUgcmVxdWVzdC9yZXNwb25zZSBleGNoYW5nZSIKK21zZ3N0ciAic2FsZSBkZXNwdcOpcyBkZSB1biBpbnRlcmNhbWJpbyBwZXRpY2nDs24vcmVzcHVlc3RhIMO6bmljbyIKKwogIzogYnVpbHRpbi91cGxvYWQtcGFjay5jOjI1CiBtc2dpZCAiZXhpdCBpbW1lZGlhdGVseSBhZnRlciBpbml0aWFsIHJlZiBhZHZlcnRpc2VtZW50IgogbXNnc3RyICJzYWxpciBpbm1lZGlhdGFtZW50ZSB0cmFzIGVsIGFudW5jaW8gaW5pY2lhbCBkZSByZWYiCkBAIC0xODA4MiwxNSArMjE3NTIsMTUgQEAKIG1zZ2lkICJpbnRlcnJ1cHQgdHJhbnNmZXIgYWZ0ZXIgPG4+IHNlY29uZHMgb2YgaW5hY3Rpdml0eSIKIG1zZ3N0ciAiaW50ZXJydW1waXIgdHJhbnNmZXJlbmNpYSB0cmFzIDxuPiBzZWd1bmRvcyBkZSBpbmFjdGl2aWRhZCIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6MjAKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjE5CiBtc2dpZCAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA8Y29tbWl0Pi4uLiIKIG1zZ3N0ciAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA8Y29tbWl0Pi4uLiIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NzYKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjY4CiBtc2dpZCAicHJpbnQgY29tbWl0IGNvbnRlbnRzIgogbXNnc3RyICJpbXByaW1pciBjb250ZW5pZG8gZGVsIGNvbW1pdCIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NzcgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzgKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjY5IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM3CiBtc2dpZCAicHJpbnQgcmF3IGdwZyBzdGF0dXMgb3V0cHV0IgogbXNnc3RyICJtdWVzdHJhIGxhIHNhbGlkYSBkZSBzdGF0dXMgZ3BnIGVuIGZvcm1hdG8gcmF3IgogCkBAIC0xODEwNiwxMSArMjE3NzYsMTEgQEAKIG1zZ2lkICJzaG93IHN0YXRpc3RpY3Mgb25seSIKIG1zZ3N0ciAic29sbyBtb3N0cmFyIGVzdGFkw61zdGljYXMiCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjE5CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzoxOAogbXNnaWQgImdpdCB2ZXJpZnktdGFnIFstdiB8IC0tdmVyYm9zZV0gWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnPi4uLiIKIG1zZ3N0ciAiZ2l0IHZlcmlmeS10YWcgWy12IHwgLS12ZXJib3NlXSBbLS1mb3JtYXQ9PGZvcm1hdG8+XSA8dGFnPi4uLiIKIAotIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzcKKyM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM2CiBtc2dpZCAicHJpbnQgdGFnIGNvbnRlbnRzIgogbXNnc3RyICJpbXByaW1pciBjb250ZW5pZG8gZGVsIHRhZyIKIApAQCAtMTgxNDIsNyArMjE4MTIsNyBAQAogbXNnaWQgImdpdCB3b3JrdHJlZSB1bmxvY2sgPHBhdGg+IgogbXNnc3RyICJnaXQgd29ya3RyZWUgdW5sb2NrIDxydXRhPiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjYwIGJ1aWx0aW4vd29ya3RyZWUuYzo4NzEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2MCBidWlsdGluL3dvcmt0cmVlLmM6ODkxCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgJyVzJyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGJvcnJhciAnJXMnIgpAQCAtMTgxOTUsMTIgKzIxODY1LDEyIEBACiBtc2dpZCAiJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAiJyVzJyB5YSBleGlzdGUiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlLWFkZCB3b3JrdHJlZSAnJXMnIgogbXNnc3RyICJubyBlcyBwb3NpYmxlIHZvbHZlciBhIGFncmVnYXIgZWwgw6FyYm9sICclcyciCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTYKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcycgaXMgYSBtaXNzaW5nIGJ1dCBsb2NrZWQgd29ya3RyZWU7XG4iCkBAIC0xODIxMCw3ICsyMTg4MCw3IEBACiAidXNhICdhZGQgLWYgLWYnIHBhcmEgc29icmVlc2NyaWJpciwgbyAndW5sb2NrJyB5ICdwcnVuZScgbyAncmVtb3ZlJyBwYXJhICIKICJsaW1waWFyIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6MjU4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGlzIGEgbWlzc2luZyBidXQgYWxyZWFkeSByZWdpc3RlcmVkIHdvcmt0cmVlO1xuIgpAQCAtMTgyMTksMTI0ICsyMTg4OSwxMjQgQEAKICInJXMnIGVzIHVuIMOhcmJvbCBkZSB0cmFiYWpvIGZhbHRhbnRlIHBlcm8geWEgcmVnaXN0cmFkbztcbiIKICJ1c2EgJ2FkZCAtZicgcGFyYSBzb2JyZWVzY3JpYmlyLCBvICdwcnVuZScgbyAncmVtb3ZlJyBwYXJhIGxpbXBpYXIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzozMDkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzozMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3Rvcnkgb2YgJyVzJyIKIG1zZ3N0ciAibm8gc2UgcHVkbyBjcmVhciBkaXJlY3RvcmlvIGRlICclcyciCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MjggYnVpbHRpbi93b3JrdHJlZS5jOjQzNAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMiBidWlsdGluL3dvcmt0cmVlLmM6NDM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAobmV3IGJyYW5jaCAnJXMnKSIKIG1zZ3N0ciAiUHJlcGFyYW5kbyDDoXJib2wgZGUgdHJhYmFqbyAobnVldmEgcmFtYSAnJXMnKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKHJlc2V0dGluZyBicmFuY2ggJyVzJzsgd2FzIGF0ICVzKSIKIG1zZ3N0ciAiUHJlcGFyYW5kbyDDoXJib2wgZGUgdHJhYmFqbyAocmVpbmljaWFuZG8gcmFtYSAnJXMnOyBlc3RhYmEgZW4gJXMpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDM5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAoY2hlY2tpbmcgb3V0ICclcycpIgogbXNnc3RyICJQcmVwYXJhbmRvIMOhcmJvbCBkZSB0cmFiYWpvIChoYWNpZW5kbyBjaGVja291dCBhICclcycpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDQ1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAoZGV0YWNoZWQgSEVBRCAlcykiCiBtc2dzdHIgIlByZXBhcmFuZG8gw6FyYm9sIGRlIHRyYWJham8gKEhFQUQgZGVzYWNvcGxhZG8gJXMpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDg2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDkwCiBtc2dpZCAiY2hlY2tvdXQgPGJyYW5jaD4gZXZlbiBpZiBhbHJlYWR5IGNoZWNrZWQgb3V0IGluIG90aGVyIHdvcmt0cmVlIgogbXNnc3RyICIiCiAiaGFjZXIgY2hlY2tvdXQgYSA8cmFtYT4gaW5jbHVzbyBzaSB5YSBoYSBoZWNobyBjaGVja291dCBlbiBvdHJvIMOhcmJvbCBkZSAiCiAidHJhYmFqbyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ4OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MwogbXNnaWQgImNyZWF0ZSBhIG5ldyBicmFuY2giCiBtc2dzdHIgImNyZWFyIHVuYSBudWV2YSByYW1hIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDkxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk1CiBtc2dpZCAiY3JlYXRlIG9yIHJlc2V0IGEgYnJhbmNoIgogbXNnc3RyICJjcmVhciBvIHJlc3RhYmxlY2VyIHVuYSByYW1hIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDkzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk3CiBtc2dpZCAicG9wdWxhdGUgdGhlIG5ldyB3b3JraW5nIHRyZWUiCiBtc2dzdHIgInBvcHVsYXIgZWwgbnVldm8gw6FyYm9sIGRlIHRyYWJham8iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTQKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTgKIG1zZ2lkICJrZWVwIHRoZSBuZXcgd29ya2luZyB0cmVlIGxvY2tlZCIKIG1zZ3N0ciAibWFudGVuZXIgZWwgbnVldm8gw6FyYm9sIGRlIHRyYWJham8gYmxvcXVlYWRvIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDk3CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTAxCiBtc2dpZCAic2V0IHVwIHRyYWNraW5nIG1vZGUgKHNlZSBnaXQtYnJhbmNoKDEpKSIKIG1zZ3N0ciAiY29uZmlndXJhbmRvIG1vZG8gdHJhY2tpbmcgKG1pcmFyIGdpdC1icmFuY2goMSkpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NTAwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTA0CiBtc2dpZCAidHJ5IHRvIG1hdGNoIHRoZSBuZXcgYnJhbmNoIG5hbWUgd2l0aCBhIHJlbW90ZS10cmFja2luZyBicmFuY2giCiBtc2dzdHIgIiIKICJpbnRlbnRhciBlbXBhcmVqYXIgZWwgbnVldm8gbm9tYnJlIGRlIHJhbWEgY29uIHVuYSByYW1hIGRlIHJhc3RyZW8gcmVtb3RvIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NTA4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTEyCiBtc2dpZCAiLWIsIC1CLCBhbmQgLS1kZXRhY2ggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLWIsIC1CLCB5IC0tZGV0YWNoIHNvbiBtdXR1YW1lbnRlIGV4Y2x1c2l2YXMiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1NjkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1NzMKIG1zZ2lkICItLVtuby1ddHJhY2sgY2FuIG9ubHkgYmUgdXNlZCBpZiBhIG5ldyBicmFuY2ggaXMgY3JlYXRlZCIKIG1zZ3N0ciAiLS1bbm8tXXRyYWNrIHNvbG8gcHVlZGUgc2VyIHVzYWRvIHNpIHVuYSBudWV2YSByYW1hIGVzIGNyZWFkYSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY2OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY3MwogbXNnaWQgInJlYXNvbiBmb3IgbG9ja2luZyIKIG1zZ3N0ciAicmF6w7NuIHBhcmEgYmxvcXVlYXIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODEgYnVpbHRpbi93b3JrdHJlZS5jOjcxNCBidWlsdGluL3dvcmt0cmVlLmM6NzcyCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODk5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njg1IGJ1aWx0aW4vd29ya3RyZWUuYzo3MTggYnVpbHRpbi93b3JrdHJlZS5jOjc5MgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkxOQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiJyVzJyBubyBlcyB1biDDoXJib2wgZGUgdHJhYmFqbyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4MyBidWlsdGluL3dvcmt0cmVlLmM6NzE2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njg3IGJ1aWx0aW4vd29ya3RyZWUuYzo3MjAKIG1zZ2lkICJUaGUgbWFpbiB3b3JraW5nIHRyZWUgY2Fubm90IGJlIGxvY2tlZCBvciB1bmxvY2tlZCIKIG1zZ3N0ciAiRWwgw6FyYm9sIGRlIHRyYWJham8gcHJpbmNpcGFsIG5vIHB1ZWRlIHNlciBibG9xdWVhZG8gbmkgZGVzYmxvcXVlYWRvIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Njg4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxyZWFkeSBsb2NrZWQsIHJlYXNvbjogJXMiCiBtc2dzdHIgIiclcycgeWEgZXN0w6EgYmxvcXVlYWRvOyByYXrDs246ICVzIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjkwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxyZWFkeSBsb2NrZWQiCiBtc2dzdHIgIiclcycgeWEgZXN0w6EgYmxvcXVlYWRvIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzE4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGxvY2tlZCIKIG1zZ3N0ciAiJyVzJyBubyBlc3TDoSBibG9xdWVhZG8iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NDMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NjMKIG1zZ2lkICJ3b3JraW5nIHRyZWVzIGNvbnRhaW5pbmcgc3VibW9kdWxlcyBjYW5ub3QgYmUgbW92ZWQgb3IgcmVtb3ZlZCIKIG1zZ3N0ciAiIgogIsOhcmJvbGVzIGRlIHRyYWJham8gY29udGVuaWVuZG8gc3VibcOzZHVsb3Mgbm8gcHVlZGUgc2VyIG1vdmlkb3MgbyBlbGltaW5hZG8iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NzEKIG1zZ2lkICJmb3JjZSBtb3ZlIGV2ZW4gaWYgd29ya3RyZWUgaXMgZGlydHkgb3IgbG9ja2VkIgogbXNnc3RyICJmb3J6YXIgbW92ZSBpbmNsdXNvIHNpIGVsIMOhcmJvbCBkZSB0cmFiYWpvIGVzdMOhIHN1Y2lvIG8gYmxvcXVlYWRvIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzc0IGJ1aWx0aW4vd29ya3RyZWUuYzo5MDEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTQgYnVpbHRpbi93b3JrdHJlZS5jOjkyMQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGEgbWFpbiB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiclcycgZXMgdW4gw6FyYm9sIGRlIHRyYWJham8gcHJpbmNpcGFsIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzc5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6Nzk5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBmaWd1cmUgb3V0IGRlc3RpbmF0aW9uIG5hbWUgZnJvbSAnJXMnIgogbXNnc3RyICJubyBzZSBwdWRvIGRlc2N1YnJpciBlbCBub21icmUgZGUgZGVzdGlubyBkZSAnJXMnIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzg1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODA1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRhcmdldCAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICJlbCBvYmpldGl2byAnJXMnIHlhIGV4aXN0ZSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5MworIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY2Fubm90IG1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlLCBsb2NrIHJlYXNvbjogJXNcbiIKQEAgLTE4MzQ1LDcgKzIyMDE1LDcgQEAKICJubyBzZSBwdWVkZSBtb3ZlciB1biDDoXJib2wgZGUgdHJhYmFqbyBibG9xdWVhZG8sIG1vdGl2byBkZWwgYmxvcXVlbzogJXNcbiIKICJ1c2UgJ21vdmUgLWYgLWYnIHBhcmEgc29icmVlc2NyaWJpciBvIGRlc2Jsb3F1ZWFyIHByaW1lcm8iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTUKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTUKIG1zZ2lkICIiCiAiY2Fubm90IG1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlO1xuIgogInVzZSAnbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgpAQCAtMTgzNTMsMzYgKzIyMDIzLDM3IEBACiAibm8gc2UgcHVlZGUgbW92ZXIgdW4gw6FyYm9sIGRlIHRyYWJham8gYmxvcXVlYWRvO1xuIgogInVzZSAnbW92ZSAtZiAtZicgcGFyYSBzb2JyZWVzY3JpYmlyIG8gZGVzYmxvcXVlYXIgcHJpbWVybyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ2YWxpZGF0aW9uIGZhaWxlZCwgY2Fubm90IG1vdmUgd29ya2luZyB0cmVlOiAlcyIKIG1zZ3N0ciAiZmFsbMOzIHZhbGlkYWNpw7NuLCBubyBzZSBwdWVkZSBtb3ZlciBlbCDDoXJib2wgZGUgdHJhYmFqbzogJXMiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG1vdmUgJyVzJyB0byAnJXMnIgogbXNnc3RyICJmYWxsw7MgYWwgbW92ZXIgJyVzJyBhICclcyciCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAnZ2l0IHN0YXR1cycgb24gJyVzJyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGVqZWN1dGFyICdnaXQgc3RhdHVzJyBlbiAnJXMnIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODU1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODc1CiAjLCBjLWZvcm1hdAotbXNnaWQgIiclcycgaXMgZGlydHksIHVzZSAtLWZvcmNlIHRvIGRlbGV0ZSBpdCIKLW1zZ3N0ciAiJyVzJyBlc3TDoSBzdWNpbywgdXNlIC0tZm9yY2UgcGFyYSBib3JyYXJsbyIKK21zZ2lkICInJXMnIGNvbnRhaW5zIG1vZGlmaWVkIG9yIHVudHJhY2tlZCBmaWxlcywgdXNlIC0tZm9yY2UgdG8gZGVsZXRlIGl0IgorbXNnc3RyICIiCisiJyVzJyBjb250aWVuZSBhcmNoaXZvcyBubyByYXN0cmVhZG9zIG8gbW9kaWZpY2Fkb3MsIHVzZSAtLWZvcmNlIHBhcmEgYm9ycmFybG8iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NjAKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAnZ2l0IHN0YXR1cycgb24gJyVzJywgY29kZSAlZCIKIG1zZ3N0ciAibm8gc2UgcHVkbyBlamVjdXRhciAnZ2l0IHN0YXR1cycgZW4gJyVzJywgY8OzZGlnbyAlZCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg4MworIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwMwogbXNnaWQgImZvcmNlIHJlbW92YWwgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCiBtc2dzdHIgImZvcnphciByZW1vY2nDs24gaW5jbHVzbyBzaSBlbCDDoXJib2wgZGUgdHJhYmFqbyBlc3TDoSBzdWNpbyBvIGJsb3F1ZWFkbyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwNgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlc1xuIgpAQCAtMTgzOTEsNyArMjIwNjIsNyBAQAogIm5vIHNlIHB1ZWRlbiBlbGltaW5hciDDoXJib2wgZGUgdHJhYmFqbyBibG9xdWVhZG8sIHJhesOzbiBkZWwgYmxvcXVlbzogJXNcbiIKICJ1c2UgJ3JlbW92ZSAtZiAtZicgcGFyYSBzb2JyZWVzY3JpYmlyIG8gZGVzYmxvcXVlYXIgcHJpbWVybyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwOAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyOAogbXNnaWQgIiIKICJjYW5ub3QgcmVtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZTtcbiIKICJ1c2UgJ3JlbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgpAQCAtMTgzOTksMjggKzIyMDcwLDQzIEBACiAibm8gc2UgcHVlZGVuIGVsaW1pbmFyIMOhcmJvbCBkZSB0cmFiYWpvIGJsb3F1ZWFkbztcbiIKICJ1c2UgJ3JlbW92ZSAtZiAtZicgcGFyYSBzb2JyZWVzY3JpYmlyIG8gZGVzYmxvcXVlYXIgcHJpbWVybyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkxMQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ2YWxpZGF0aW9uIGZhaWxlZCwgY2Fubm90IHJlbW92ZSB3b3JraW5nIHRyZWU6ICVzIgogbXNnc3RyICJmYWxsw7MgdmFsaWRhY2nDs24sIG5vIHNlIHB1ZWRlIGVsaW1pbmFyIMOhcmJvbCBkZSB0cmFiYWpvOiAlcyIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MTQKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjE1CiBtc2dpZCAiZ2l0IHdyaXRlLXRyZWUgWy0tbWlzc2luZy1va10gWy0tcHJlZml4PTxwcmVmaXg+L10iCiBtc2dzdHIgImdpdCB3cml0ZS10cmVlIFstLW1pc3Npbmctb2tdIFstLXByZWZpeD08cHJlZmlqbz4vXSIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjcKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI4CiBtc2dpZCAiPHByZWZpeD4vIgogbXNnc3RyICI8cHJlZmlqbz4vIgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyOAorIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjkKIG1zZ2lkICJ3cml0ZSB0cmVlIG9iamVjdCBmb3IgYSBzdWJkaXJlY3RvcnkgPHByZWZpeD4iCiBtc2dzdHIgImVzY3JpYmlyIG9iamV0byBkZSAgw6FyYm9sIHBhcmEgdW4gc3ViZGlyZWN0b3JpbyA8cHJlZmlqbz4iCiAKLSM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjMwCisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzozMQogbXNnaWQgIm9ubHkgdXNlZnVsIGZvciBkZWJ1Z2dpbmciCiBtc2dzdHIgInPDs2xvIMO6dGlsIHBhcmEgZGVwdXJhciIKIAotIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjIyCisjOiBmYXN0LWltcG9ydC5jOjMxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0ZWQgJ21hcmsnIGNvbW1hbmQsIGdvdCAlcyIKK21zZ3N0ciAiU2UgZXNwZXJhYmEgY29tYW5kbyAnbWFyaycsIHNlIG9idHV2byAlcyIKKworIzogZmFzdC1pbXBvcnQuYzozMTMwCisjLCBjLWZvcm1hdAorbXNnaWQgIkV4cGVjdGVkICd0bycgY29tbWFuZCwgZ290ICVzIgorbXNnc3RyICJTZSBlc3BlcmFiYSBjb21hbmRvICd0bycsIHNlIG9idHV2byAlcyIKKworIzogZmFzdC1pbXBvcnQuYzozMjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImZlYXR1cmUgJyVzJyBmb3JiaWRkZW4gaW4gaW5wdXQgd2l0aG91dCAtLWFsbG93LXVuc2FmZS1mZWF0dXJlcyIKK21zZ3N0ciAiY2FyYWN0ZXLDrXN0aWNhICclcycgcHJvaGliaWRhIGVuIGlucHV0IHNpbiAtLWFsbG93LXVuc2FmZS1mZWF0dXJlcyIKKworIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgcGVybWlzc2lvbnMgb24geW91ciBzb2NrZXQgZGlyZWN0b3J5IGFyZSB0b28gbG9vc2U7IG90aGVyXG4iCkBAIC0xODQyOCwxMyArMjIxMTQsMTMgQEAKICJcbiIKICJcdGNobW9kIDA3MDAgJXMiCiBtc2dzdHIgIiIKLSJMb3MgcGVybWlzb3MgZW4gc3UgZGlyZWN0b3JpbyBkZSBzb2NrZXQgc29uIGRlbWFzaWFkbyBmbG9qb3M7IG90cm9zXG4iCi0idXN1YXJpb3MgcHVlZGVuIGxlZXIgc3VzIGNyZWRlbmNpYWxlcyBhbG1hY2VuYWRhcyBlbiBjYWNow6kuIENvbnNpZGVyZSAiCisiTG9zIHBlcm1pc29zIGVuIHR1IGRpcmVjdG9yaW8gZGUgc29ja2V0IHNvbiBkZW1hc2lhZG8gZmxvam9zOyBvdHJvc1xuIgorInVzdWFyaW9zIHB1ZWRlbiBsZWVyIHN1cyBjcmVkZW5jaWFsZXMgYWxtYWNlbmFkYXMgZW4gY2FjaMOpLiBDb25zaWRlcmEgIgogImVqZWN1dGFyOlxuIgogIlxuIgogIlx0Y2htb2QgMDcwMCAlcyIKIAotIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjcxCisjOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyNzIKIG1zZ2lkICJwcmludCBkZWJ1Z2dpbmcgbWVzc2FnZXMgdG8gc3RkZXJyIgogbXNnc3RyICJtb3N0cmFyIG1lbnNhamVzIGRlIGRlYnVnIGVuIHN0ZGVyciIKIApAQCAtMTg0NDcsNiArMjIxMzMsMTQgQEAKIG1zZ2lkICJ0b28gbWFueSBjb21taXRzIG1hcmtlZCByZWFjaGFibGUiCiBtc2dzdHIgImRlbWFzaWFkb3MgY29tbWl0cyBtYXJjYWRvcyBjb21vIGFsY2FuemFibGVzIgogCisjOiB0L2hlbHBlci90ZXN0LXNlcnZlLXYyLmM6NworbXNnaWQgInRlc3QtdG9vbCBzZXJ2ZS12MiBbPG9wdGlvbnM+XSIKK21zZ3N0ciAidGVzdC10b29sIHNlcnZlLXYyIFs8b3BjaW9uZXM+XSIKKworIzogdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjE5Cittc2dpZCAiZXhpdCBpbW1lZGlhdGVseSBhZnRlciBhZHZlcnRpc2luZyBjYXBhYmlsaXRpZXMiCittc2dzdHIgInNhbGlyIGlubWVkaWF0YW1lbnRlIHRyYXMgYW51bmNpYXIgY2FwYWNpZGFkZXMiCisKICM6IGdpdC5jOjI3CiBtc2dpZCAiIgogImdpdCBbLS12ZXJzaW9uXSBbLS1oZWxwXSBbLUMgPHBhdGg+XSBbLWMgPG5hbWU+PTx2YWx1ZT5dXG4iCkBAIC0xODQ2NywxMDEgKzIyMTYxLDE1NSBAQAogbXNnaWQgIiIKICInZ2l0IGhlbHAgLWEnIGFuZCAnZ2l0IGhlbHAgLWcnIGxpc3QgYXZhaWxhYmxlIHN1YmNvbW1hbmRzIGFuZCBzb21lXG4iCiAiY29uY2VwdCBndWlkZXMuIFNlZSAnZ2l0IGhlbHAgPGNvbW1hbmQ+JyBvciAnZ2l0IGhlbHAgPGNvbmNlcHQ+J1xuIgotInRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIG9yIGNvbmNlcHQuIgorInRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIG9yIGNvbmNlcHQuXG4iCisiU2VlICdnaXQgaGVscCBnaXQnIGZvciBhbiBvdmVydmlldyBvZiB0aGUgc3lzdGVtLiIKIG1zZ3N0ciAiIgogIidnaXQgaGVscCAtYScgeSAnZ2l0IGhlbHAgLWcnIGxpc3RhbiBsb3Mgc3ViY29tYW5kb3MgZGlzcG9uaWJsZXMgeSBhbGd1bmFzXG4iCiAiZ3XDrWFzIGRlIGNvbmNlcHRvLiBDb25zdWx0ZSAnZ2l0IGhlbHAgPGNvbW1hbmQ+JyBvICdnaXQgaGVscCA8Y29uY2VwdG8+J1xuIgotInBhcmEgbGVlciBzb2JyZSB1biBzdWJjb21hbmRvIG8gY29uY2VwdG8gZXNwZWPDrWZpY28uIgorInBhcmEgbGVlciBzb2JyZSB1biBzdWJjb21hbmRvIG8gY29uY2VwdG8gZXNwZWPDrWZpY28uXG4iCisiTWlyYSAnZ2l0IGhlbHAgZ2l0JyBwYXJhIHVuYSB2aXN0YSBnZW5lcmFsIGRlbCBzaXN0ZW1hLiIKIAotIzogZ2l0LmM6MTczCisjOiBnaXQuYzoxODYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtLWdpdC1kaXJcbiIKIG1zZ3N0ciAibm8gc2UgZW50cmVnw7MgZGlyZWN0b3JpbyBwYXJhIC0tZ2l0LWRpclxuIgogCi0jOiBnaXQuYzoxODcKKyM6IGdpdC5jOjIwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBuYW1lc3BhY2UgZ2l2ZW4gZm9yIC0tbmFtZXNwYWNlXG4iCiBtc2dzdHIgIm5vIHNlIGVudHJlZ8OzIG5hbWVzcGFjZSBwYXJhIC0tbmFtZXNwYWNlXG4iCiAKLSM6IGdpdC5jOjIwMQorIzogZ2l0LmM6MjE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLS13b3JrLXRyZWVcbiIKIG1zZ3N0ciAibm8gc2UgZW50cmVnw7MgZGlyZWN0b3JpbyBwYXJhIC0td29yay10cmVlXG4iCiAKLSM6IGdpdC5jOjIxNQorIzogZ2l0LmM6MjI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHByZWZpeCBnaXZlbiBmb3IgLS1zdXBlci1wcmVmaXhcbiIKIG1zZ3N0ciAibm8gc2UgZW50cmVnw7MgcHJlZmlqbyBwYXJhIC0tc3VwZXItcHJlZml4XG4iCiAKLSM6IGdpdC5jOjIzNworIzogZ2l0LmM6MjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIi1jIGV4cGVjdHMgYSBjb25maWd1cmF0aW9uIHN0cmluZ1xuIgogbXNnc3RyICItYyBlc3BlcmEgdW4gc3RyaW5nIGRlIGNvbmZpZ3VyYWNpw7NuXG4iCiAKLSM6IGdpdC5jOjI3NQorIzogZ2l0LmM6Mjg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLUNcbiIKIG1zZ3N0ciAibm8gc2UgZW50cmVnw7MgZGlyZWN0b3JpbyBwYXJhIC1DXG4iCiAKLSM6IGdpdC5jOjMwMAorIzogZ2l0LmM6MzE0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gb3B0aW9uOiAlc1xuIgogbXNnc3RyICJvcGNpw7NuICVzIGRlc2Nvbm9jaWRhXG4iCiAKLSM6IGdpdC5jOjcxOQorIzogZ2l0LmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIGV4cGFuZGluZyBhbGlhcyAnJXMnOiAnJXMnIgorbXNnc3RyICJhbCBleHBhbmRpciBlbCBhbGlhcyAnJXMnOiclcyciCisKKyM6IGdpdC5jOjM2OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWxpYXMgJyVzJyBjaGFuZ2VzIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiIKKyJZb3UgY2FuIHVzZSAnIWdpdCcgaW4gdGhlIGFsaWFzIHRvIGRvIHRoaXMiCittc2dzdHIgIiIKKyJhbGlhcyAnJXMnIGNhbWJpYSBsYXMgdmFyaWFibGVzIGRlIGVudG9ybm8uXG4iCisiUHVlZGVzIHVzYXIgJyFnaXQnIGVuIGVsIGFsaWFzIHBhcmEgaGFjZXIgZXN0byIKKworIzogZ2l0LmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGFsaWFzIGZvciAlcyIKK21zZ3N0ciAiYWxpYXMgdmFjw61vIHBhcmEgJXMiCisKKyM6IGdpdC5jOjM3OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWN1cnNpdmUgYWxpYXM6ICVzIgorbXNnc3RyICJhbGlhcyByZWN1cnNpdm86ICVzIgorCisjOiBnaXQuYzo0NTkKK21zZ2lkICJ3cml0ZSBmYWlsdXJlIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiZXJyb3IgZGUgZXNjcml0dXJhIGVuIHN0YW5kYXJkIG91dHB1dCIKKworIzogZ2l0LmM6NDYxCittc2dpZCAidW5rbm93biB3cml0ZSBmYWlsdXJlIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiZXJyb3IgZGVzY29ub2NpZG8gZGUgZXNjcml0dXJhIGVuIHN0YW5kYXJkIG91dHB1dCIKKworIzogZ2l0LmM6NDYzCittc2dpZCAiY2xvc2UgZmFpbGVkIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiY2llcnJlIGZhbGzDsyBlbiBzdGFuZGFyZCBvdXRwdXQiCisKKyM6IGdpdC5jOjc5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhbGlhcyBsb29wIGRldGVjdGVkOiBleHBhbnNpb24gb2YgJyVzJyBkb2VzIG5vdCB0ZXJtaW5hdGU6JXMiCiBtc2dzdHIgImJ1Y2xlIGRlIGFsaWFzIGRldGVjdGFkbzogZXhwYW5zacOzbiBkZSAnJXMnIG5vIHRlcm1pbmE6ICVzIgogCi0jOiBnaXQuYzo4MDIKKyM6IGdpdC5jOjg0MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgaGFuZGxlICVzIGFzIGEgYnVpbHRpbiIKK21zZ3N0ciAibm8gc2UgcHVlZGUgbWFuZWphciAlcyBjb21vIHVuIGJ1aWx0aW4iCisKKyM6IGdpdC5jOjg1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXNhZ2U6ICVzXG4iCisiXG4iCittc2dzdHIgIiIKKyJ1c286ICVzXG4iCisiXG4iCisiXG4iCisiXG4iCisKKyM6IGdpdC5jOjg3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBhbnNpb24gb2YgYWxpYXMgJyVzJyBmYWlsZWQ7ICclcycgaXMgbm90IGEgZ2l0IGNvbW1hbmRcbiIKIG1zZ3N0ciAiZXhwYW5zacOzbiBkZWwgYWxpYXMgJyVzJyBmYWxsw7M7ICclcycgbm8gZXMgdW4gY29tYW5kbyBkZSBnaXRcbiIKIAotIzogZ2l0LmM6ODE0CisjOiBnaXQuYzo4ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJ1biBjb21tYW5kICclcyc6ICVzXG4iCiBtc2dzdHIgImZhbGzDsyBhbCBlamVjdXRhciBjb21hbmRvICclcyc6ICVzXG4iCiAKLSM6IGh0dHAuYzozNzQKKyM6IGh0dHAuYzozNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAibmVnYXRpdmUgdmFsdWUgZm9yIGh0dHAucG9zdGJ1ZmZlcjsgZGVmYXVsdGluZyB0byAlZCIKIG1zZ3N0ciAidmFsb3IgbmVnYXRpdm8gcGFyYSBodHRwLnBvc3RidWZmZXI7IHBvbmllbmRvIGVsIGRlZmF1bHQgYSAlZCIKIAotIzogaHR0cC5jOjM5NQorIzogaHR0cC5jOjM5OQogbXNnaWQgIkRlbGVnYXRpb24gY29udHJvbCBpcyBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuMjIuMCIKIG1zZ3N0ciAiRGVsZWdhY2nDs24gZGUgY29udHJvbCBubyBlcyBzb3BvcnRhZGEgY29uIGNVUkwgPCA3LjIyLjAiCiAKLSM6IGh0dHAuYzo0MDQKKyM6IGh0dHAuYzo0MDgKIG1zZ2lkICJQdWJsaWMga2V5IHBpbm5pbmcgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjQ0LjAiCiBtc2dzdHIgIkZpamFjacOzbiBkZSBsbGF2ZSBww7pibGljYSBubyBlcyBzb3BvcnRhZGEgY29uIGNVUkwgPCA3LjQ0LjAiCiAKLSM6IGh0dHAuYzo4MzcKKyM6IGh0dHAuYzo4NzYKIG1zZ2lkICJDVVJMU1NMT1BUX05PX1JFVk9LRSBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuNDQuMCIKIG1zZ3N0ciAiQ1VSTFNTTE9QVF9OT19SRVZPS0Ugbm8gc29wb3J0YWRvIGNvbiBjVVJMIDwgNy40NC4wIgogCi0jOiBodHRwLmM6OTEwCisjOiBodHRwLmM6OTQ5CiBtc2dpZCAiUHJvdG9jb2wgcmVzdHJpY3Rpb25zIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy4xOS40IgogbXNnc3RyICJSZXN0cmljY2nDs24gZGUgcHJvdG9jb2xvIG5vIHNvcG9ydGFkYSBjb24gY1VSTCA8IDcuMTkuNCIKIAotIzogaHR0cC5jOjEwNDYKKyM6IGh0dHAuYzoxMDg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuc3VwcG9ydGVkIFNTTCBiYWNrZW5kICclcycuIFN1cHBvcnRlZCBTU0wgYmFja2VuZHM6IgogbXNnc3RyICJCYWNrZW5kIFNTTCBubyBzb3BvcnRhZG8gJyVzJy4gQmFja2VuZHMgU1NMIHNvcG9ydGFkb3M6IgogCi0jOiBodHRwLmM6MTA1MworIzogaHR0cC5jOjEwOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldCBTU0wgYmFja2VuZCB0byAnJXMnOiBjVVJMIHdhcyBidWlsdCB3aXRob3V0IFNTTCBiYWNrZW5kcyIKIG1zZ3N0ciAiIgogIk5vIHNlIHB1ZG8gY29uZmlndXJhciBiYWNrZW5kIFNTTCBhICclcyc6IGNVUkwgZnVlIGNvbnN0cnVpZG8gc2luIGJhY2tlbmRzICIKICJTU0wiCiAKLSM6IGh0dHAuYzoxMDU3CisjOiBodHRwLmM6MTA5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc2V0IFNTTCBiYWNrZW5kIHRvICclcyc6IGFscmVhZHkgc2V0IgogbXNnc3RyICJObyBzZSBwdWRvIGNvbmZpZ3VyYXIgYmFja2VuZCBTU0wgcGFyYSAnJXMnOiB5YSBjb25maWd1cmFkbyIKIAotIzogaHR0cC5jOjE5MjEKKyM6IGh0dHAuYzoxOTY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ1bmFibGUgdG8gdXBkYXRlIHVybCBiYXNlIGZyb20gcmVkaXJlY3Rpb246XG4iCkBAIC0xODU3MiwzOSArMjIzMjAsMTgzIEBACiAiICBwcmVndW50YWJhIHBvcjogJXNcbiIKICIgICByZWRpcmVjY2lvbmFtaWVudG86ICVzIgogCi0jOiByZW1vdGUtY3VybC5jOjQwMQorIzogcmVtb3RlLWN1cmwuYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBxdW90aW5nIGluIHB1c2gtb3B0aW9uIHZhbHVlOiAnJXMnIgorbXNnc3RyICJxdW90aW5nIGludsOhbGlkbyBlbiB2YWxvciBkZSBwdXNoLW9wdGlvbjogJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXNpbmZvL3JlZnMgbm90IHZhbGlkOiBpcyB0aGlzIGEgZ2l0IHJlcG9zaXRvcnk/IgorbXNnc3RyICIlc2luZm8vcmVmcyBubyBlcyB2w6FsaWRvOiDCv2VzIGVzdGUgdW4gcmVwb3NpdG9yaW8gZ2l0PyIKKworIzogcmVtb3RlLWN1cmwuYzozNjQKK21zZ2lkICJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZXhwZWN0ZWQgc2VydmljZSwgZ290IGZsdXNoIHBhY2tldCIKK21zZ3N0ciAiIgorInJlc3B1ZXN0YSBkZSBzZXJ2aWRvciBpbnbDoWxpZGE7IHNlIGVzcGVyYWJhIHNlcnZpY2lvLCBzZSBvYnR1dm8gdW4gZmx1c2ggIgorInBhY2tldCIKKworIzogcmVtb3RlLWN1cmwuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzZXJ2ZXIgcmVzcG9uc2U7IGdvdCAnJXMnIgorbXNnc3RyICJyZXNwdWVzdGEgZGUgc2Vydmlkb3IgaW52w6FsaWRhOyBzZSBvYnR1dm8gJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVwb3NpdG9yeSAnJXMnIG5vdCBmb3VuZCIKK21zZ3N0ciAicmVwb3NpdG9yaW8gJyVzJyBubyBlbmNvbnRyYWRvIgorCisjOiByZW1vdGUtY3VybC5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGlvbiBmYWlsZWQgZm9yICclcyciCittc2dzdHIgIkF1dGVudGljYWNpw7NuIGZhbGzDsyBwYXJhICclcyciCisKKyM6IHJlbW90ZS1jdXJsLmM6NDYzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgJyVzJzogJXMiCittc2dzdHIgIm5vIGVzIHBvc2libGUgYWNjZWRlciAnJXMnOiVzIgorCisjOiByZW1vdGUtY3VybC5jOjQ2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWRpcmVjdGluZyB0byAlcyIKIG1zZ3N0ciAicmVkaXJpZ2llbmRvIGEgJXMiCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjYwCisjOiByZW1vdGUtY3VybC5jOjU5MworbXNnaWQgInNob3VsZG4ndCBoYXZlIEVPRiB3aGVuIG5vdCBnZW50bGUgb24gRU9GIgorbXNnc3RyICJubyBkZWJlcsOtYSB0ZW5lciBFT0YgY3VhbmRvIG5vIGVzIGdlbnRpbCBlbiBFT0YiCisKKyM6IHJlbW90ZS1jdXJsLmM6NjczCittc2dpZCAidW5hYmxlIHRvIHJld2luZCBycGMgcG9zdCBkYXRhIC0gdHJ5IGluY3JlYXNpbmcgaHR0cC5wb3N0QnVmZmVyIgorbXNnc3RyICIiCisibm8gZXMgcG9zaWJsZSByZWJvYmluYXIgcnBjIHBvc3QgZGF0YSAtIGludGVudGEgaW5jcmVtZW50YW5kbyBodHRwLnBvc3RCdWZmZXIiCisKKyM6IHJlbW90ZS1jdXJsLmM6NzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIlJQQyBmYWlsZWQ7ICVzIgorbXNnc3RyICJSUEMgZmFsbMOzOyAlcyIKKworIzogcmVtb3RlLWN1cmwuYzo3NzMKK21zZ2lkICJjYW5ub3QgaGFuZGxlIHB1c2hlcyB0aGlzIGJpZyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgbWFuZWphciBwdXNoZXMgdGFuIGdyYW5kZXMiCisKKyM6IHJlbW90ZS1jdXJsLmM6ODg4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkZWZsYXRlIHJlcXVlc3Q7IHpsaWIgZGVmbGF0ZSBlcnJvciAlZCIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZGVzaW5mbGFyIGVsIHJlcXVlc3Q7IHpsaWIgZGVmbGF0ZSBlcnJvciAlZCIKKworIzogcmVtb3RlLWN1cmwuYzo4OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRlZmxhdGUgcmVxdWVzdDsgemxpYiBlbmQgZXJyb3IgJWQiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGRlc2luZmxhciBlbCByZXF1ZXN0OyB6bGliIGVuZCBlcnJvciAlZCIKKworIzogcmVtb3RlLWN1cmwuYzoxMDIzCittc2dpZCAiZHVtYiBodHRwIHRyYW5zcG9ydCBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2FwYWJpbGl0aWVzIgorbXNnc3RyICJkdW1wIGh0dHAgdHJhbnNwb3J0IG5vIHNvcG9ydGEgY2FwYWNpZGFkZXMgc3VwZXJmaWNpYWxlcyIKKworIzogcmVtb3RlLWN1cmwuYzoxMDM4Cittc2dpZCAiZmV0Y2ggZmFpbGVkLiIKK21zZ3N0ciAiZmV0Y2ggZmFsbMOzLiIKKworIzogcmVtb3RlLWN1cmwuYzoxMDg2Cittc2dpZCAiY2Fubm90IGZldGNoIGJ5IHNoYTEgb3ZlciBzbWFydCBodHRwIgorbXNnc3RyICJubyBzZSBwdWVkZSBoYWNlciBmZXRjaCBwb3Igc2hhMSBzb2JyZSBzbWFydCBodHRwIgorCisjOiByZW1vdGUtY3VybC5jOjExMzAgcmVtb3RlLWN1cmwuYzoxMTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInByb3RvY29sIGVycm9yOiBleHBlY3RlZCBzaGEvcmVmLCBnb3QgJyVzJyIKK21zZ3N0ciAiZXJyb3IgZGUgcHJvdG9jb2xvOiBzZSBlc3BlcmFiYSBzaGEvcmVmLCBzZSBvYnR1dm8gJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzoxMTQ4IHJlbW90ZS1jdXJsLmM6MTI2MworIywgYy1mb3JtYXQKK21zZ2lkICJodHRwIHRyYW5zcG9ydCBkb2VzIG5vdCBzdXBwb3J0ICVzIgorbXNnc3RyICJodHRwIHRyYW5zcG9ydCBubyBzb3BvcnRhICVzIgorCisjOiByZW1vdGUtY3VybC5jOjExODQKK21zZ2lkICJnaXQtaHR0cC1wdXNoIGZhaWxlZCIKK21zZ3N0ciAiZ2l0LWh0dHAtcHVzaCBmYWxsw7MiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTM2OQorbXNnaWQgInJlbW90ZS1jdXJsOiB1c2FnZTogZ2l0IHJlbW90ZS1jdXJsIDxyZW1vdGU+IFs8dXJsPl0iCittc2dzdHIgInJlbW90ZS1jdXJsOiB1c286IGdpdCByZW1vdGUtY3VybCA8cmVtb3RlPiBbPHVybD5dIgorCisjOiByZW1vdGUtY3VybC5jOjE0MDEKK21zZ2lkICJyZW1vdGUtY3VybDogZXJyb3IgcmVhZGluZyBjb21tYW5kIHN0cmVhbSBmcm9tIGdpdCIKK21zZ3N0ciAicmVtb3RlLWN1cmw6IGVycm9yIGxleWVuZG8gY29tbWFuZCBzdHJlYW0gZGUgZ2l0IgorCisjOiByZW1vdGUtY3VybC5jOjE0MDgKK21zZ2lkICJyZW1vdGUtY3VybDogZmV0Y2ggYXR0ZW1wdGVkIHdpdGhvdXQgYSBsb2NhbCByZXBvIgorbXNnc3RyICJyZW1vdGUtY3VybDogZmV0Y2ggaW50ZW50YWRvIHNpbiB1biByZXBvc2l0b3JpbyBsb2NhbCIKKworIzogcmVtb3RlLWN1cmwuYzoxNDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW90ZS1jdXJsOiB1bmtub3duIGNvbW1hbmQgJyVzJyBmcm9tIGdpdCIKK21zZ3N0ciAicmVtb3RlLWN1cmw6IGNvbWFuZG8gJyVzJyBkZXNjb25vY2lkbyBkZSBnaXQiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjg1CiBtc2dpZCAiYXJncyIKIG1zZ3N0ciAiYXJncyIKIAotIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6NjEKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjg2CiBtc2dpZCAib2JqZWN0IGZpbHRlcmluZyIKIG1zZ3N0ciAiZmlsdHJhZG8gZGUgb2JqZXRvIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MTU0CisjOiBwYXJzZS1vcHRpb25zLmg6MTgzCiBtc2dpZCAiZXhwaXJ5LWRhdGUiCiBtc2dzdHIgImZlY2hhIGRlIGV4cGlyYWNpw7NuIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MTY5CisjOiBwYXJzZS1vcHRpb25zLmg6MTk3CiBtc2dpZCAibm8tb3AgKGJhY2t3YXJkIGNvbXBhdGliaWxpdHkpIgogbXNnc3RyICJuby1vcCAoY29tcGF0aWJpbGlkYWQgY29uIHZlcnNpb25lcyBhbnRlcmlvcmVzKSIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjI2MQorIzogcGFyc2Utb3B0aW9ucy5oOjMwOQogbXNnaWQgImJlIG1vcmUgdmVyYm9zZSIKLW1zZ3N0ciAic2VyIG1hcyB2ZXJib3NvIgorbXNnc3RyICJzZXIgbcOhcyB2ZXJib3NvIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MjYzCisjOiBwYXJzZS1vcHRpb25zLmg6MzExCiBtc2dpZCAiYmUgbW9yZSBxdWlldCIKLW1zZ3N0ciAic2VyIG1hcyBkaXNjcmV0byIKK21zZ3N0ciAic2VyIG3DoXMgZGlzY3JldG8iCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoyNjkKKyM6IHBhcnNlLW9wdGlvbnMuaDozMTcKIG1zZ2lkICJ1c2UgPG4+IGRpZ2l0cyB0byBkaXNwbGF5IFNIQS0xcyIKIG1zZ3N0ciAidXNhIDxuPiBkw61naXRvcyBwYXJhIG1vc3RyYXIgU0hBLTFzIgogCisjOiBwYXJzZS1vcHRpb25zLmg6MzM2Cittc2dpZCAiaG93IHRvIHN0cmlwIHNwYWNlcyBhbmQgI2NvbW1lbnRzIGZyb20gbWVzc2FnZSIKK21zZ3N0ciAiY8OzbW8gcXVpdGFyIGVzcGFjaW9zIHkgI2NvbWVudGFyaW9zIGRlIG1lbnNhamVzIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzM3Cittc2dpZCAicmVhZCBwYXRoc3BlYyBmcm9tIGZpbGUiCittc2dzdHIgImxlZXIgcGF0aHNwZWMgZGUgYXJjaGl2byIKKworIzogcGFyc2Utb3B0aW9ucy5oOjMzOAorbXNnaWQgIiIKKyJ3aXRoIC0tcGF0aHNwZWMtZnJvbS1maWxlLCBwYXRoc3BlYyBlbGVtZW50cyBhcmUgc2VwYXJhdGVkIHdpdGggTlVMIGNoYXJhY3RlciIKK21zZ3N0ciAiIgorImNvbiAtLXBhdGhzcGVjLWZyb20tZmlsZSwgZWxlbWVudG9zIGRlIHBhdGhzcGVjIHNvbiBzZXBhcmFkb3MgY29uIGNhcmFjdGVyICIKKyJOVUwiCisKKyM6IHJlZi1maWx0ZXIuaDoxMDEKK21zZ2lkICJrZXkiCittc2dzdHIgImNsYXZlIgorCisjOiByZWYtZmlsdGVyLmg6MTAxCittc2dpZCAiZmllbGQgbmFtZSB0byBzb3J0IG9uIgorbXNnc3RyICJub21icmUgZGVsIGNhbXBvIHBvciBlbCBjdcOhbCBvcmRlbmFyIgorCisjOiByZXJlcmUuaDo0NAorbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKK21zZ3N0ciAiIgorImFjdHVhbGl6YXIgZWwgw61uZGljZSBjb24gbGEgcmVzb2x1Y2nDs24gZGUgY29uZmxpY3RvcyByZXV0aWxpemFkYSBzaSBlcyAiCisicG9zaWJsZSIKKworIzogd3Qtc3RhdHVzLmg6NjcKK21zZ2lkICJIRUFEIGRldGFjaGVkIGF0ICIKK21zZ3N0ciAiSEVBRCBkZXNhY29wbGFkYSBlbiAiCisKKyM6IHd0LXN0YXR1cy5oOjY4Cittc2dpZCAiSEVBRCBkZXRhY2hlZCBmcm9tICIKK21zZ3N0ciAiSEVBRCBkZXNhY29wbGFkYSBkZSAiCisKICM6IGNvbW1hbmQtbGlzdC5oOjUwCiBtc2dpZCAiQWRkIGZpbGUgY29udGVudHMgdG8gdGhlIGluZGV4IgogbXNnc3RyICJBZ3JlZ2EgY29udGVuaWRvIGRlIGNhcnBldGFzIGFsIMOtbmRpY2UiCkBAIC0xODg2NSw4ICsyMjc1Nyw4IEBACiBtc2dzdHIgIkJ1c2NhciBpbnN0YW50w6FuZWFtZW50ZSB0dSByZXBvc2l0b3JpbyBkZSB0cmFiYWpvIGVuIGdpdHdlYiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTEzCi1tc2dpZCAiYWRkIG9yIHBhcnNlIHN0cnVjdHVyZWQgaW5mb3JtYXRpb24gaW4gY29tbWl0IG1lc3NhZ2VzIgotbXNnc3RyICJhZ3JlZ2FyIG8gYW5hbGl6YXIgaW5mb3JtYWNpw7NuIGVzdHJ1Y3R1cmFkYSBlbiBtZW5zYWplcyBkZSBjb21taXQiCittc2dpZCAiQWRkIG9yIHBhcnNlIHN0cnVjdHVyZWQgaW5mb3JtYXRpb24gaW4gY29tbWl0IG1lc3NhZ2VzIgorbXNnc3RyICJBZ3JlZ2FyIG8gYW5hbGl6YXIgaW5mb3JtYWNpw7NuIGVzdHJ1Y3R1cmFkYSBlbiBtZW5zYWplcyBkZSBjb21taXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjExNAogbXNnaWQgIlRoZSBHaXQgcmVwb3NpdG9yeSBicm93c2VyIgpAQCAtMTg4OTgsNyArMjI3OTAsNyBAQAogCiAjOiBjb21tYW5kLWxpc3QuaDoxMjEKIG1zZ2lkICJKb2luIHR3byBvciBtb3JlIGRldmVsb3BtZW50IGhpc3RvcmllcyB0b2dldGhlciIKLW1zZ3N0ciAiSnVudGEgZG9zIG8gbWFzIGhpc3RvcmlhbGVzIGRlIGRlc2Fycm9sbG8ganVudG9zIgorbXNnc3RyICJKdW50YSBkb3MgbyBtw6FzIGhpc3RvcmlhbGVzIGRlIGRlc2Fycm9sbG8ganVudG9zIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMjIKIG1zZ2lkICJGaW5kIGFzIGdvb2QgY29tbW9uIGFuY2VzdG9ycyBhcyBwb3NzaWJsZSBmb3IgYSBtZXJnZSIKQEAgLTE5MDQxLDIyOCArMjI5MzMsMjM4IEBACiBtc2dzdHIgIlJlaW5pY2lhIGVsIEhFQUQgYWN0dWFsIGEgdW4gZXN0YWRvIGVzcGVjaWZpY28iCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE1NgorbXNnaWQgIlJlc3RvcmUgd29ya2luZyB0cmVlIGZpbGVzIgorbXNnc3RyICJSZXN0YXVyYXIgYXJjaGl2b3MgZGUgw6FyYm9sZXMgZGUgdHJhYmFqbyIKKworIzogY29tbWFuZC1saXN0Lmg6MTU3CiBtc2dpZCAiUmV2ZXJ0IHNvbWUgZXhpc3RpbmcgY29tbWl0cyIKIG1zZ3N0ciAiUmV2aWVydGUgYWxndW5vcyBjb21taXRzIGV4aXN0ZW50ZXMiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE1NworIzogY29tbWFuZC1saXN0Lmg6MTU4CiBtc2dpZCAiTGlzdHMgY29tbWl0IG9iamVjdHMgaW4gcmV2ZXJzZSBjaHJvbm9sb2dpY2FsIG9yZGVyIgogbXNnc3RyICJMaXN0YSBvYmpldG9zIGNvbW1pdCBlbiBvcmRlbiBjcm9ub2zDs2dpY28gaW52ZXJzbyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTU4CisjOiBjb21tYW5kLWxpc3QuaDoxNTkKIG1zZ2lkICJQaWNrIG91dCBhbmQgbWFzc2FnZSBwYXJhbWV0ZXJzIgogbXNnc3RyICJTZWxlY2Npb25hciB5IG1hc2FqZWFyIGxvcyBwYXLDoW1ldHJvcyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTU5CisjOiBjb21tYW5kLWxpc3QuaDoxNjAKIG1zZ2lkICJSZW1vdmUgZmlsZXMgZnJvbSB0aGUgd29ya2luZyB0cmVlIGFuZCBmcm9tIHRoZSBpbmRleCIKIG1zZ3N0ciAiQm9ycmEgYXJjaGl2b3MgZGVsIMOhcmJvbCBkZSB0cmFiYWpvIHkgZGVsIMOtbmRpY2UiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2MAorIzogY29tbWFuZC1saXN0Lmg6MTYxCiBtc2dpZCAiU2VuZCBhIGNvbGxlY3Rpb24gb2YgcGF0Y2hlcyBhcyBlbWFpbHMiCiBtc2dzdHIgIkVudsOtYSB1bmEgY29sZWNjacOzbiBkZSBwYXJjaGVzIGNvbW8gZS1tYWlscyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTYxCisjOiBjb21tYW5kLWxpc3QuaDoxNjIKIG1zZ2lkICJQdXNoIG9iamVjdHMgb3ZlciBHaXQgcHJvdG9jb2wgdG8gYW5vdGhlciByZXBvc2l0b3J5IgogbXNnc3RyICJFbXB1amFyIG9iamV0b3MgcG9yIHByb3RvY29sbyBHaXQgYSBvdHJvIHJlcG9zaXRvcmlvIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjIKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MwogbXNnaWQgIlJlc3RyaWN0ZWQgbG9naW4gc2hlbGwgZm9yIEdpdC1vbmx5IFNTSCBhY2Nlc3MiCiBtc2dzdHIgIlNoZWxsIGRlIGluaWNpbyBkZSBzZXNpw7NuIHJlc3RyaW5naWRvIHBhcmEgYWNjZXNvIFNTSCBleGNsdXNpdm8gZGUgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjMKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NAogbXNnaWQgIlN1bW1hcml6ZSAnZ2l0IGxvZycgb3V0cHV0IgogbXNnc3RyICJSZXN1bWlyIGxhIHNhbGlkYSAnZ2l0IGxvZyciCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NAorIzogY29tbWFuZC1saXN0Lmg6MTY1CiBtc2dpZCAiU2hvdyB2YXJpb3VzIHR5cGVzIG9mIG9iamVjdHMiCiBtc2dzdHIgIk11ZXN0cmEgdmFyaW9zIHRpcG9zIGRlIG9iamV0b3MiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NQorIzogY29tbWFuZC1saXN0Lmg6MTY2CiBtc2dpZCAiU2hvdyBicmFuY2hlcyBhbmQgdGhlaXIgY29tbWl0cyIKIG1zZ3N0ciAiTW9zdHJhciByYW1hcyB5IHN1cyBjb21taXRzIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjYKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NwogbXNnaWQgIlNob3cgcGFja2VkIGFyY2hpdmUgaW5kZXgiCiBtc2dzdHIgIk1vc3RyYXIgZWwgw61uZGljZSBkZSBhcmNoaXZvIGVtcGFxdWV0YWRvIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjcKKyM6IGNvbW1hbmQtbGlzdC5oOjE2OAogbXNnaWQgIkxpc3QgcmVmZXJlbmNlcyBpbiBhIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgIkxpc3RhciByZWZlcmVuY2lhcyBlbiBlbCByZXBvc2l0b3JpbyBsb2NhbCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTY4CisjOiBjb21tYW5kLWxpc3QuaDoxNjkKIG1zZ2lkICJHaXQncyBpMThuIHNldHVwIGNvZGUgZm9yIHNoZWxsIHNjcmlwdHMiCiBtc2dzdHIgIkVsIGPDs2RpZ28gZGUgY29uZmlndXJhY2nDs24gaTE4biBkZSBHaXQgcGFyYSBzY3JpcHRzIGRlIHNoZWxsIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjkKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MAogbXNnaWQgIkNvbW1vbiBHaXQgc2hlbGwgc2NyaXB0IHNldHVwIGNvZGUiCiBtc2dzdHIgIkPDs2RpZ28gZGUgY29uZmlndXJhY2nDs24gZGUgc2NyaXB0IGRlIHNoZWxsIGNvbcO6biBkZSBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3MAorIzogY29tbWFuZC1saXN0Lmg6MTcxCittc2dpZCAiSW5pdGlhbGl6ZSBhbmQgbW9kaWZ5IHRoZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgIkluaWNpYWxpemEgeSBtb2RpZmljYSBlbCBzcGFyc2UtY2hlY2tvdXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MgogbXNnaWQgIlN0YXNoIHRoZSBjaGFuZ2VzIGluIGEgZGlydHkgd29ya2luZyBkaXJlY3RvcnkgYXdheSIKIG1zZ3N0ciAiIgogIlBvbmVyIGVuIHVuIHN0YXNoIGxvcyBjYW1iaW9zIGVuIHVuIGRpcmVjdG9yaW8gZGUgdHJhYmFqbyBzdWNpbyBkZSB0b2RhcyAiCiAibWFuZXJhcyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTcxCisjOiBjb21tYW5kLWxpc3QuaDoxNzMKIG1zZ2lkICJBZGQgZmlsZSBjb250ZW50cyB0byB0aGUgc3RhZ2luZyBhcmVhIgogbXNnc3RyICJBZ3JlZ2EgY29udGVuaWRvcyBkZSB1biBhcmNoaXZvIGFsIMOhcmVhIGRlIHN0YWdpbmciCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3MgorIzogY29tbWFuZC1saXN0Lmg6MTc0CiBtc2dpZCAiU2hvdyB0aGUgd29ya2luZyB0cmVlIHN0YXR1cyIKIG1zZ3N0ciAiTXVlc3RyYSBlbCBlc3RhZG8gZGVsIMOhcmJvbCBkZSB0cmFiYWpvIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzMKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NQogbXNnaWQgIlJlbW92ZSB1bm5lY2Vzc2FyeSB3aGl0ZXNwYWNlIgogbXNnc3RyICJFbGltaW5hciBlbCBlc3BhY2lvIGVuIGJsYW5jbyBpbm5lY2VzYXJpbyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc0CisjOiBjb21tYW5kLWxpc3QuaDoxNzYKIG1zZ2lkICJJbml0aWFsaXplLCB1cGRhdGUgb3IgaW5zcGVjdCBzdWJtb2R1bGVzIgogbXNnc3RyICJJbmljaWFsaXphLCBhY3R1YWxpemEgbyBpbnNwZWNjaW9uYSBzdWJtw7NkdWxvcyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc1CisjOiBjb21tYW5kLWxpc3QuaDoxNzcKIG1zZ2lkICJCaWRpcmVjdGlvbmFsIG9wZXJhdGlvbiBiZXR3ZWVuIGEgU3VidmVyc2lvbiByZXBvc2l0b3J5IGFuZCBHaXQiCiBtc2dzdHIgIk9wZXJhY2nDs24gYmlkaXJlY2Npb25hbCBlbnRyZSB1biByZXBvc2l0b3JpbyBTdWJ2ZXJzaW9uIHkgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzYKKyM6IGNvbW1hbmQtbGlzdC5oOjE3OAorbXNnaWQgIlN3aXRjaCBicmFuY2hlcyIKK21zZ3N0ciAiQ2FtYmlhciBicmFuY2hlcyIKKworIzogY29tbWFuZC1saXN0Lmg6MTc5CiBtc2dpZCAiUmVhZCwgbW9kaWZ5IGFuZCBkZWxldGUgc3ltYm9saWMgcmVmcyIKIG1zZ3N0ciAiTGVlLCBtb2RpZmljYSB5IGJvcnJhIHJlZmVyZW5jaWFzIHNpbWLDs2xpY2FzIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzcKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MAogbXNnaWQgIkNyZWF0ZSwgbGlzdCwgZGVsZXRlIG9yIHZlcmlmeSBhIHRhZyBvYmplY3Qgc2lnbmVkIHdpdGggR1BHIgogbXNnc3RyICJDcmVhLCBsaXN0YSwgYm9ycmEgbyB2ZXJpZmljYSB1biB0YWcgZGUgb2JqZXRvIGZpcm1hZG8gY29uIEdQRyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc4CisjOiBjb21tYW5kLWxpc3QuaDoxODEKIG1zZ2lkICJDcmVhdGVzIGEgdGVtcG9yYXJ5IGZpbGUgd2l0aCBhIGJsb2IncyBjb250ZW50cyIKIG1zZ3N0ciAiQ3JlYSB1biBhcmNoaXZvIHRlbXBvcmFsIGNvbiBjb250ZW5pZG9zIGRlIHVuIGJsb2IiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3OQorIzogY29tbWFuZC1saXN0Lmg6MTgyCiBtc2dpZCAiVW5wYWNrIG9iamVjdHMgZnJvbSBhIHBhY2tlZCBhcmNoaXZlIgogbXNnc3RyICJEZXNlbXBhcXVldGEgb2JqZXRvcyBkZSB1biBhcmNoaXZvIGVtcGFxdWV0YWRvIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODAKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MwogbXNnaWQgIlJlZ2lzdGVyIGZpbGUgY29udGVudHMgaW4gdGhlIHdvcmtpbmcgdHJlZSB0byB0aGUgaW5kZXgiCiBtc2dzdHIgIlJlZ2lzdHJhIGNvbnRlbmlkb3MgZGUgYXJjaGl2b3MgZW4gZWwgw6FyYm9sIGRlIHRyYWJham8gYWwgw61uZGljZSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTgxCisjOiBjb21tYW5kLWxpc3QuaDoxODQKIG1zZ2lkICJVcGRhdGUgdGhlIG9iamVjdCBuYW1lIHN0b3JlZCBpbiBhIHJlZiBzYWZlbHkiCiBtc2dzdHIgIiIKICJBY3R1YWxpemEgZWwgbm9tYnJlIGRlbCBvYmpldG8gYWxtYWNlbmFkbyBlbiB1bmEgcmVmZXJlbmNpYSBkZSBmb3JtYSBzZWd1cmEiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4MgorIzogY29tbWFuZC1saXN0Lmg6MTg1CiBtc2dpZCAiVXBkYXRlIGF1eGlsaWFyeSBpbmZvIGZpbGUgdG8gaGVscCBkdW1iIHNlcnZlcnMiCiBtc2dzdHIgIiIKICJBY3R1YWxpemEgZWwgYXJjaGl2byBkZSBpbmZvcm1hY2nDs24gYXV4aWxpYXIgcGFyYSBheXVkYXIgYSBsb3Mgc2Vydmlkb3JlcyAiCiAiZHVtYiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTgzCisjOiBjb21tYW5kLWxpc3QuaDoxODYKIG1zZ2lkICJTZW5kIGFyY2hpdmUgYmFjayB0byBnaXQtYXJjaGl2ZSIKIG1zZ3N0ciAiRW52aWFyIGFyY2hpdm8gYSBnaXQtYXJjaGl2ZSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg0CisjOiBjb21tYW5kLWxpc3QuaDoxODcKIG1zZ2lkICJTZW5kIG9iamVjdHMgcGFja2VkIGJhY2sgdG8gZ2l0LWZldGNoLXBhY2siCiBtc2dzdHIgIkVudmlhciBvYmpldG9zIGVtcGFxdWV0YWRvcyBhIGdpdC1mZXRjaC1wYWNrIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODUKKyM6IGNvbW1hbmQtbGlzdC5oOjE4OAogbXNnaWQgIlNob3cgYSBHaXQgbG9naWNhbCB2YXJpYWJsZSIKIG1zZ3N0ciAiTW9zdHJhciB1bmEgdmFyaWFibGUgbMOzZ2ljYSBkZSBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4NgorIzogY29tbWFuZC1saXN0Lmg6MTg5CiBtc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgY29tbWl0cyIKIG1zZ3N0ciAiVmVyaWZpY2FyIGZpcm1hIEdQRyBkZSBjb21taXRzIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODcKKyM6IGNvbW1hbmQtbGlzdC5oOjE5MAogbXNnaWQgIlZhbGlkYXRlIHBhY2tlZCBHaXQgYXJjaGl2ZSBmaWxlcyIKIG1zZ3N0ciAiVmFsaWRhIGFyY2hpdm9zIEdpdCBlbXBhcXVldGFkb3MiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4OAorIzogY29tbWFuZC1saXN0Lmg6MTkxCiBtc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgdGFncyIKIG1zZ3N0ciAiVmVyaWZpY2EgbGEgZmlybWEgR1BHIGRlIGV0aXF1ZXRhcyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg5CisjOiBjb21tYW5kLWxpc3QuaDoxOTIKIG1zZ2lkICJHaXQgd2ViIGludGVyZmFjZSAod2ViIGZyb250ZW5kIHRvIEdpdCByZXBvc2l0b3JpZXMpIgogbXNnc3RyICJJbnRlcmZheiB3ZWIgR2l0IChpbnRlcmZheiB3ZWIgcGFyYSByZXBvc2l0b3Jpb3MgR2l0KSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTkwCisjOiBjb21tYW5kLWxpc3QuaDoxOTMKIG1zZ2lkICJTaG93IGxvZ3Mgd2l0aCBkaWZmZXJlbmNlIGVhY2ggY29tbWl0IGludHJvZHVjZXMiCiBtc2dzdHIgIk11ZXN0cmEgbG9ncyBjb24gbGFzIGRpZmVyZW5jaWFzIHF1ZSBjYWRhIGNvbW1pdCBpbnRyb2R1Y2UiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MQorIzogY29tbWFuZC1saXN0Lmg6MTk0CiBtc2dpZCAiTWFuYWdlIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMiCiBtc2dzdHIgIkdlc3Rpb25hIG3Dumx0aXBsZXMgw6FyYm9sZXMgZGUgdHJhYmFqbyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTkyCisjOiBjb21tYW5kLWxpc3QuaDoxOTUKIG1zZ2lkICJDcmVhdGUgYSB0cmVlIG9iamVjdCBmcm9tIHRoZSBjdXJyZW50IGluZGV4IgogbXNnc3RyICJDcmVhIHVuIG9iamV0byDDoXJib2wgZGVsIMOtbmRpY2UgYWN0dWFsIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTMKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NgogbXNnaWQgIkRlZmluaW5nIGF0dHJpYnV0ZXMgcGVyIHBhdGgiCiBtc2dzdHIgIkRlZmluaWVuZG8gYXRyaWJ1dG9zIHBvciBydXRhIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTQKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NwogbXNnaWQgIkdpdCBjb21tYW5kLWxpbmUgaW50ZXJmYWNlIGFuZCBjb252ZW50aW9ucyIKIG1zZ3N0ciAiSW50ZXJmYXogeSBjb252ZW5jaW9uZXMgZGUgbMOtbmVhIGRlIGNvbWFuZG9zIGRlIEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk1CisjOiBjb21tYW5kLWxpc3QuaDoxOTgKIG1zZ2lkICJBIEdpdCBjb3JlIHR1dG9yaWFsIGZvciBkZXZlbG9wZXJzIgogbXNnc3RyICJVbiB0dXRvcmlhbCBiw6FzaWNvIGRlIEdpdCBwYXJhIGRlc2Fycm9sbGFkb3JlcyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk2CisjOiBjb21tYW5kLWxpc3QuaDoxOTkKIG1zZ2lkICJHaXQgZm9yIENWUyB1c2VycyIKIG1zZ3N0ciAiR2l0IHBhcmEgdXN1YXJpb3MgQ1ZTIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTcKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMAogbXNnaWQgIlR3ZWFraW5nIGRpZmYgb3V0cHV0IgogbXNnc3RyICJBZmluYXIgbGEgc2FsaWRhIGRlIGRpZmYiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5OAorIzogY29tbWFuZC1saXN0Lmg6MjAxCiBtc2dpZCAiQSB1c2VmdWwgbWluaW11bSBzZXQgb2YgY29tbWFuZHMgZm9yIEV2ZXJ5ZGF5IEdpdCIKIG1zZ3N0ciAiVW4gY29uanVudG8gbcOtbmltbyDDunRpbCBkZSBjb21hbmRvcyBkaWFyaW9zIGRlIEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk5CisjOiBjb21tYW5kLWxpc3QuaDoyMDIKIG1zZ2lkICJBIEdpdCBHbG9zc2FyeSIKIG1zZ3N0ciAiVW4gR2xvc2FyaW8gZGUgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDAKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMwogbXNnaWQgIkhvb2tzIHVzZWQgYnkgR2l0IgogbXNnc3RyICJIb29rcyB1dGlsaXphZG9zIHBvciBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwMQorIzogY29tbWFuZC1saXN0Lmg6MjA0CiBtc2dpZCAiU3BlY2lmaWVzIGludGVudGlvbmFsbHkgdW50cmFja2VkIGZpbGVzIHRvIGlnbm9yZSIKIG1zZ3N0ciAiRXNwZWNpZmljYSBkZSBmb3JtYSBpbnRlbmNpb25hbCBhcmNoaXZvcyBzaW4gc2VndWltaWVudG8gYSBpZ25vcmFyIgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDIKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNQogbXNnaWQgIkRlZmluaW5nIHN1Ym1vZHVsZSBwcm9wZXJ0aWVzIgogbXNnc3RyICJEZWZpbmllbmRvIGxhcyBwcm9waWVkYWRlcyBkZWwgc3VibcOzZHVsbyIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAzCisjOiBjb21tYW5kLWxpc3QuaDoyMDYKIG1zZ2lkICJHaXQgbmFtZXNwYWNlcyIKLW1zZ3N0ciAibmFtZXNwYWNlcyBkZSBHaXQiCittc2dzdHIgIk5hbWVzcGFjZXMgZGUgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDQKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNwogbXNnaWQgIkdpdCBSZXBvc2l0b3J5IExheW91dCIKIG1zZ3N0ciAiRGlzcG9zaWNpw7NuIGRlbCByZXBvc2l0b3JpbyBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwNQorIzogY29tbWFuZC1saXN0Lmg6MjA4CiBtc2dpZCAiU3BlY2lmeWluZyByZXZpc2lvbnMgYW5kIHJhbmdlcyBmb3IgR2l0IgogbXNnc3RyICJFc3BlY2lmaWNhbmRvIHJldmlzaW9uZXMgeSByYW5nb3MgcGFyYSBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwNgorIzogY29tbWFuZC1saXN0Lmg6MjA5Cittc2dpZCAiTW91bnRpbmcgb25lIHJlcG9zaXRvcnkgaW5zaWRlIGFub3RoZXIiCittc2dzdHIgIk1vbnRhbmRvIHVuIHJlcG9zaXRvcmlvIGRlbnRybyBkZSBvdHJvIgorCisjOiBjb21tYW5kLWxpc3QuaDoyMTAKIG1zZ2lkICJBIHR1dG9yaWFsIGludHJvZHVjdGlvbiB0byBHaXQ6IHBhcnQgdHdvIgogbXNnc3RyICJVbiB0dXRvcmlhbCBkZSBpbnRyb2R1Y2Npw7NuIGEgR2l0OiBwYXJ0ZSBkb3MiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwNworIzogY29tbWFuZC1saXN0Lmg6MjExCiBtc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0IgogbXNnc3RyICJVbiB0dXRvcmlhbCBkZSBpbnRyb2R1Y2Npw7NuIHBhcmEgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDgKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMgogbXNnaWQgIkFuIG92ZXJ2aWV3IG9mIHJlY29tbWVuZGVkIHdvcmtmbG93cyB3aXRoIEdpdCIKIG1zZ3N0ciAiVW5hIHZpc2nDs24gZ2VuZXJhbCBkZSBmbHVqb3MgZGUgdHJhYmFqbyByZWNvbWVuZGFkb3MgY29uIEdpdCIKIAotIzogcmVyZXJlLmg6NDQKLW1zZ2lkICJ1cGRhdGUgdGhlIGluZGV4IHdpdGggcmV1c2VkIGNvbmZsaWN0IHJlc29sdXRpb24gaWYgcG9zc2libGUiCi1tc2dzdHIgIiIKLSJhY3R1YWxpemFyIGVsIMOtbmRpY2UgY29uIGxhIHJlc29sdWNpw7NuIGRlIGNvbmZsaWN0b3MgcmV1dGlsaXphZGEgc2kgZXMgIgotInBvc2libGUiCi0KICM6IGdpdC1iaXNlY3Quc2g6NTQKIG1zZ2lkICJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIiIKIG1zZ3N0ciAiRGViZXMgaW5pY2lhciBjb24gXCJnaXQgYmlzZWN0IHN0YXJ0XCIiCkBAIC0xOTI3NCwxMzMgKzIzMTc2LDQ5IEBACiBtc2dpZCAiRG8geW91IHdhbnQgbWUgdG8gZG8gaXQgZm9yIHlvdSBbWS9uXT8gIgogbXNnc3RyICLCv1F1aWVyZXMgcXVlIGxvIGhhZ2EgcG9yIHRpIFtZL25dPyAiCiAKLSM6IGdpdC1iaXNlY3Quc2g6MTIxCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJ1bnJlY29nbmlzZWQgb3B0aW9uOiAnJGFyZyciCi1tc2dzdHIgIm9wY2nDs24gbm8gcmVjb25vY2lkYTogJyRhcmcnIgotCi0jOiBnaXQtYmlzZWN0LnNoOjEyNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJyRhcmcnIGRvZXMgbm90IGFwcGVhciB0byBiZSBhIHZhbGlkIHJldmlzaW9uIgotbXNnc3RyICInJGFyZycgbm8gcGFyZWNlIHNlciB1bmEgcmV2aXNpw7NuIHbDoWxpZGEiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTU0Ci1tc2dpZCAiQmFkIEhFQUQgLSBJIG5lZWQgYSBIRUFEIgotbXNnc3RyICJNYWwgSEVBRCAtIE5lY2VzaXRvIHVuIEhFQUQiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTY3Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iQ2hlY2tpbmcgb3V0ICckc3RhcnRfaGVhZCcgZmFpbGVkLiBUcnkgJ2dpdCBiaXNlY3QgcmVzZXQgPHZhbGlkLWJyYW5jaD4nLiIKLW1zZ3N0ciAiIgotIkVycm9yIGFsIGNvbXByb2JhciAnJHN0YXJ0X2hlYWQnLiBJbnRlbnRlICdnaXQgYmlzZWN0IHJlc2V0IDxyYW1hLXbDoWxpZGE+Jy4iCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTc3Ci1tc2dpZCAid29uJ3QgYmlzZWN0IG9uIGNnLXNlZWsnZWQgdHJlZSIKLW1zZ3N0ciAibm8gc2UgYmlzZWNhcsOhIGVuIHVuIMOhcmJvbCBjb24gY2ctc2VlayIKLQotIzogZ2l0LWJpc2VjdC5zaDoxODEKLW1zZ2lkICJCYWQgSEVBRCAtIHN0cmFuZ2Ugc3ltYm9saWMgcmVmIgotbXNnc3RyICJNYWwgSEVBRCAtIHJlZiBzaW1iw7NsaWNvIGV4dHJhw7FvIgotCi0jOiBnaXQtYmlzZWN0LnNoOjIzMwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQmFkIGJpc2VjdF93cml0ZSBhcmd1bWVudDogJHN0YXRlIgotbXNnc3RyICJNYWwgYXJndW1lbnRvIGJpc2VjdF93cml0ZTogJHN0YXRlIgotCi0jOiBnaXQtYmlzZWN0LnNoOjI0NgorIzogZ2l0LWJpc2VjdC5zaDoxMDEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRhcmciCiBtc2dzdHIgIk1hbGEgZW50cmFkYSByZXY6ICRhcmciCiAKLSM6IGdpdC1iaXNlY3Quc2g6MjY1CisjOiBnaXQtYmlzZWN0LnNoOjEyMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQmFkIHJldiBpbnB1dDogJGJpc2VjdGVkX2hlYWQiCiBtc2dzdHIgIk1hbGEgZW50cmFkYSByZXY6ICRiaXNlY3RlZF9oZWFkIgogCi0jOiBnaXQtYmlzZWN0LnNoOjI3NAorIzogZ2l0LWJpc2VjdC5zaDoxMzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRyZXYiCiBtc2dzdHIgIk1hbGEgZW50cmFkYSByZXY6ICRyZXYiCiAKLSM6IGdpdC1iaXNlY3Quc2g6MjgzCisjOiBnaXQtYmlzZWN0LnNoOjEzOQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJ2dpdCBiaXNlY3QgJFRFUk1fQkFEJyBjYW4gdGFrZSBvbmx5IG9uZSBhcmd1bWVudC4iCiBtc2dzdHIgIidnaXQgYmlzZWN0ICRURVJNX0JBRCcgc29sbyBwdWVkZSB0b21hciB1biBhcmd1bWVudG8uIgogCi0jOiBnaXQtYmlzZWN0LnNoOjMwNgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiV2FybmluZzogYmlzZWN0aW5nIG9ubHkgd2l0aCBhICRURVJNX0JBRCBjb21taXQuIgotbXNnc3RyICJQZWxpZ3JvOiBiaXNlY2FuZG8gc29sbyBjb24gdW4gJFRFUk1fQkFEIGNvbW1pdC4iCi0KLSMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbWV0gYW5kIFtuXSBpbiB5b3VyCi0jLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0Ci0jLiBhdCB0aGlzIHBvaW50LgotIzogZ2l0LWJpc2VjdC5zaDozMTIKLW1zZ2lkICJBcmUgeW91IHN1cmUgW1kvbl0/ICIKLW1zZ3N0ciAiwr9Fc3TDoXMgc2VndXJvIFtZL25dPyAiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MzI0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iWW91IG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJGJhZF9zeW4gYW5kIG9uZSAkZ29vZF9zeW4gcmV2aXNpb24uXG4iCi0iKFlvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGFuZCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgZm9yIHRoYXQuKSIKLW1zZ3N0ciAiIgotIlRpZW5lIHF1ZSBkYXIgYWwgbWVub3MgdW4gJGJhZF9zeW4geSB1biAkZ29vZF9zeW4gcmV2aXNpb24uXG4iCi0iKFB1ZWRlIHZlciBcImdpdCBiaXNlY3QgJGJhZF9zeW5cIiB5IFwiZ2l0IGJpc2VjdCAkZ29vZF9zeW5cIiBwYXJhIGVzby4pIgotCi0jOiBnaXQtYmlzZWN0LnNoOjMyNwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgotIllvdSB0aGVuIG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJGdvb2Rfc3luIGFuZCBvbmUgJGJhZF9zeW4gcmV2aXNpb24uXG4iCi0iKFlvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGFuZCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgZm9yIHRoYXQuKSIKLW1zZ3N0ciAiIgotIlRpZW5lIHF1ZSBjb21lbnphciBwb3IgXCJnaXQgYmlzZWN0IHN0YXJ0XCIuXG4iCi0iRGVzcHXDqXMgdGllbmUgcXVlIGVudHJlZ2FyIGFsIG1lbm9zIHVuICRnb29kX3N5biB5IHVuICRiYWRfc3luIHJldmlzaW9uLlxuIgotIihQdWVkZSB1c2FyIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIHkgXCJnaXQgYmlzZWN0ICRnb29kX3N5blwiIHBhcmEgZXNvLikiCi0KLSM6IGdpdC1iaXNlY3Quc2g6Mzk4IGdpdC1iaXNlY3Quc2g6NTEyCi1tc2dpZCAiV2UgYXJlIG5vdCBiaXNlY3RpbmcuIgotbXNnc3RyICJObyBlc3RhbW9zIGJpc2VjYW5kby4iCi0KLSM6IGdpdC1iaXNlY3Quc2g6NDA1Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICInJGludmFsaWQnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIKLW1zZ3N0ciAiJyRpbnZhbGlkJyBubyBlcyB1biBjb21taXQgdsOhbGlkbyIKLQotIzogZ2l0LWJpc2VjdC5zaDo0MTQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJDb3VsZCBub3QgY2hlY2sgb3V0IG9yaWdpbmFsIEhFQUQgJyRicmFuY2gnLlxuIgotIlRyeSAnZ2l0IGJpc2VjdCByZXNldCA8Y29tbWl0PicuIgotbXNnc3RyICIiCi0iTm8gc2UgcHVkbyByZXZpc2FyIGVsIEhFQUQgb3JpZ2luYWwgJyRicmFuY2gnLlxuIgotIkludGVudGUgJ2dpdCBiaXNlY3QgcmVzZXQgPGNvbW1pdD4nLiIKLQotIzogZ2l0LWJpc2VjdC5zaDo0MjIKKyM6IGdpdC1iaXNlY3Quc2g6MjA5CiBtc2dpZCAiTm8gbG9nZmlsZSBnaXZlbiIKIG1zZ3N0ciAiTmluZ8O6biBsb2dmaWxlIHByb3BvcmNpb25hZG8iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDIzCisjOiBnaXQtYmlzZWN0LnNoOjIxMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJGZpbGUgZm9yIHJlcGxheWluZyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgbGVlciAkZmlsZSBwYXJhIHJlcHJvZHVjaXIiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDQ0CisjOiBnaXQtYmlzZWN0LnNoOjIzMgogbXNnaWQgIj8/IHdoYXQgYXJlIHlvdSB0YWxraW5nIGFib3V0PyIKIG1zZ3N0ciAiPz8gwr9EZSBxdcOpIGVzdMOhcyBoYWJsYW5kbz8iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDUzCisjOiBnaXQtYmlzZWN0LnNoOjI0MQogbXNnaWQgImJpc2VjdCBydW4gZmFpbGVkOiBubyBjb21tYW5kIHByb3ZpZGVkLiIKIG1zZ3N0ciAiYmlzZWN0IGZhbGzDszogbm8gc2UgcHJvdmV5w7MgY29tYW5kby4iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDU4CisjOiBnaXQtYmlzZWN0LnNoOjI0NgogIywgc2gtZm9ybWF0CiBtc2dpZCAicnVubmluZyAkY29tbWFuZCIKIG1zZ3N0ciAiZWplY3V0YW5kbyAkY29tbWFuZCIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NjUKKyM6IGdpdC1iaXNlY3Quc2g6MjUzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiYmlzZWN0IHJ1biBmYWlsZWQ6XG4iCkBAIC0xOTQwOSwxMSArMjMyMjcsMTEgQEAKICJiaXNlY3QgZmFsbMOzOlxuIgogImPDs2RpZ28gZGUgc2FsaWRhICRyZXMgZGUgJyRjb21tYW5kJyBlcyA8MCBvID49MTI4IgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ5MQorIzogZ2l0LWJpc2VjdC5zaDoyNzkKIG1zZ2lkICJiaXNlY3QgcnVuIGNhbm5vdCBjb250aW51ZSBhbnkgbW9yZSIKIG1zZ3N0ciAiYmlzZWN0IG5vIHB1ZWRlIHNlZ3VpciBjb250aW51YW5kbyIKIAotIzogZ2l0LWJpc2VjdC5zaDo0OTcKKyM6IGdpdC1iaXNlY3Quc2g6Mjg1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiYmlzZWN0IHJ1biBmYWlsZWQ6XG4iCkBAIC0xOTQyMiwzNiArMjMyNDAsMjAgQEAKICJiaXNlY3QgZmFsbMOzOlxuIgogIidiaXNlY3Rfc3RhdGUgJHN0YXRlJyBzYWxpw7MgY29uIGPDs2RpZ28gZGUgZXJyb3IgJHJlcyIKIAotIzogZ2l0LWJpc2VjdC5zaDo1MDQKKyM6IGdpdC1iaXNlY3Quc2g6MjkyCiBtc2dpZCAiYmlzZWN0IHJ1biBzdWNjZXNzIgogbXNnc3RyICJiaXNlY3QgZXhpdG9zbyIKIAotIzogZ2l0LWJpc2VjdC5zaDo1MzMKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkludmFsaWQgY29tbWFuZDogeW91J3JlIGN1cnJlbnRseSBpbiBhICRURVJNX0JBRC8kVEVSTV9HT09EIGJpc2VjdC4iCi1tc2dzdHIgIiIKLSJDb21hbmRvIGludsOhbGlkbzogYWN0dWFsbWVudGUgc2UgZW5jdWVudHJhIGVuIHVuIGJpc2VjdCAkVEVSTV9CQUQvJFRFUk1fR09PRC4iCi0KLSM6IGdpdC1iaXNlY3Quc2g6NTY3Ci1tc2dpZCAibm8gdGVybXMgZGVmaW5lZCIKLW1zZ3N0ciAibm8gaGF5IHTDqXJtaW5vcyBkZWZpbmlkb3MiCi0KLSM6IGdpdC1iaXNlY3Quc2g6NTg0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iaW52YWxpZCBhcmd1bWVudCAkYXJnIGZvciAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCi0iU3VwcG9ydGVkIG9wdGlvbnMgYXJlOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGFuZCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgotbXNnc3RyICIiCi0iYXJndW1lbnRvIGludsOhbGlkbyAkYXJnIHBhcmEgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgotIkxhcyBvcGNpb25lcyBzb3BvcnRhZGFzIHNvbjogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCBhbmQgLS10ZXJtLWJhZHwtLXRlcm0tIgotIm5ldy4iCisjOiBnaXQtYmlzZWN0LnNoOjMwMAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLiIKK21zZ3N0ciAiTm8gZXN0YW1vcyBiaXNlY2FuZG8uIgogCiAjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo0NgogbXNnaWQgIiIKICJFcnJvcjogWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgIgogIm1lcmdlIgogbXNnc3RyICIiCi0iRXJyb3I6IFN1cyBjYW1iaW9zIGxvY2FsZXMgZGUgbG9zIHNpZ3VpZW50ZXMgYXJjaGl2b3Mgc2Vyw6FuIHNvYnJlc2NyaXRvcyBwb3IgIgorIkVycm9yOiBUdXMgY2FtYmlvcyBsb2NhbGVzIGRlIGxvcyBzaWd1aWVudGVzIGFyY2hpdm9zIHNlcsOhbiBzb2JyZXNjcml0b3MgcG9yICIKICJsYSBmdXNpw7NuIgogCiAjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo2MQpAQCAtMTk0ODYsMjkzICsyMzI4OCwxMzIgQEAKIG1zZ2lkICJTaW1wbGUgbWVyZ2UgZGlkIG5vdCB3b3JrLCB0cnlpbmcgYXV0b21hdGljIG1lcmdlLiIKIG1zZ3N0ciAiRnVzacOzbiBzaW1wbGUgbm8gZnVuY2lvbsOzLCBpbnRlbnRhbmRvIGZ1c2nDs24gYXV0b23DoXRpY2EuIgogCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MzQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkNvdWxkIG5vdCBtb3ZlIGJhY2sgdG8gJGhlYWRfbmFtZSIKLW1zZ3N0ciAiTm8gc2UgcHVlZGUgcmVncmVzYXIgYSAkaGVhZF9uYW1lIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0NjAKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJJdCBzZWVtcyB0aGF0IHRoZXJlIGlzIGFscmVhZHkgYSAkc3RhdGVfZGlyX2Jhc2UgZGlyZWN0b3J5LCBhbmRcbiIKLSJJIHdvbmRlciBpZiB5b3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciByZWJhc2UuICBJZiB0aGF0IGlzIHRoZVxuIgotImNhc2UsIHBsZWFzZSB0cnlcbiIKLSJcdCRjbWRfbGl2ZV9yZWJhc2VcbiIKLSJJZiB0aGF0IGlzIG5vdCB0aGUgY2FzZSwgcGxlYXNlXG4iCi0iXHQkY21kX2NsZWFyX3N0YWxlX3JlYmFzZVxuIgotImFuZCBydW4gbWUgYWdhaW4uICBJIGFtIHN0b3BwaW5nIGluIGNhc2UgeW91IHN0aWxsIGhhdmUgc29tZXRoaW5nXG4iCi0idmFsdWFibGUgdGhlcmUuIgotbXNnc3RyICIiCi0iUGFyZWNlIHF1ZSB5YSBoYXkgdW4gZGlyZWN0b3JpbyAkc3RhdGVfZGlyX2Jhc2UsIHlcbiIKLSJtZSBwcmVndW50byBzaSBlc3TDoSBlbiBtZWRpbyBkZSBvdHJvIHJlYmFzZS4gU2kgZXNlIGVzIGVsIFxuIgotImNhc28sIHBvciBmYXZvciBpbnRlbnRlXG4iCi0iXHQkY21kX2xpdmVfcmViYXNlXG4iCi0iU2kgbm8gZXMgZWwgY2FzbywgcG9yIGZhdm9yXG4iCi0iXHQkY21kX2NsZWFyX3N0YWxlX3JlYmFzZVxuIgotInkgZWplY8O6dGVtZSBudWV2YW1lbnRlLiAgTWUgZXN0b3kgZGV0ZW5pZW5kbyBlbiBjYXNvIGRlIHF1ZSB0ZW5nYVxuIgotImFsZ28gZGUgdmFsb3IgYWjDrS4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjUyNQotbXNnaWQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1zaWdub2ZmJyB3aXRoICctLXByZXNlcnZlLW1lcmdlcyciCi1tc2dzdHIgImVycm9yOiBubyBzZSBwdWVkZSBjb21iaW5hciAnLS1zaWdub2ZmJyBjb24gJy0tcHJlc2VydmUtbWVyZ2VzJyIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTcwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICckdXBzdHJlYW1fbmFtZSciCi1tc2dzdHIgInVwc3RyZWFtIGludsOhbGlkbyAnJHVwc3RyZWFtX25hbWUnIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1OTQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiRvbnRvX25hbWU6IHRoZXJlIGFyZSBtb3JlIHRoYW4gb25lIG1lcmdlIGJhc2VzIgotbXNnc3RyICIkb250b19uYW1lOiBoYXkgbcOhcyBkZSB1bmEgYmFzZSBkZSBmdXNpw7NuIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1OTcgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjAxCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICIkb250b19uYW1lOiB0aGVyZSBpcyBubyBtZXJnZSBiYXNlIgotbXNnc3RyICIkb250b19uYW1lOiBubyBoYXkgYmFzZSBkZSBmdXNpw7NuIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2MDYKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkRvZXMgbm90IHBvaW50IHRvIGEgdmFsaWQgY29tbWl0OiAkb250b19uYW1lIgotbXNnc3RyICJObyBhcHVudGEgYSB1biBjb21taXQgdsOhbGlkbzogJG9udG9fbmFtZSIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjMyCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICckYnJhbmNoX25hbWUnIgotbXNnc3RyICJmYXRhbDogbm8gZXhpc3RlIGxhIHJhbWEvY29tbWl0OiAnJGJyYW5jaF9uYW1lJyIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjcwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJHN0YXNoX2FiYnJldiIKLW1zZ3N0ciAiQXV0b3N0YXNoIGNyZWFkbzogJHN0YXNoX2FiYnJldiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6Njk5Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDdXJyZW50IGJyYW5jaCAkYnJhbmNoX25hbWUgaXMgdXAgdG8gZGF0ZS4iCi1tc2dzdHIgIkxhIHJhbWEgYWN0dWFsICRicmFuY2hfbmFtZSBlc3TDoSBhY3R1YWxpemFkYS4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjcwOQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgotbXNnc3RyICJSYW1hIGFjdHVhbCAkYnJhbmNoX25hbWUgZXN0w6EgYWN0dWFsaXphZGEsIHJlYmFzZSBmb3J6YWRvLiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzIzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDaGFuZ2VzIHRvICRvbnRvOiIKLW1zZ3N0ciAiQ2FtYmlvcyBoYWNpYSAkb250bzoiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjcyNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ2hhbmdlcyBmcm9tICRtYiB0byAkb250bzoiCi1tc2dzdHIgIkNhbWJpb3MgZGVzZGUgJG1iIGEgJG9udG86IgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MzYKLW1zZ2lkICJGaXJzdCwgcmV3aW5kaW5nIGhlYWQgdG8gcmVwbGF5IHlvdXIgd29yayBvbiB0b3Agb2YgaXQuLi4iCi1tc2dzdHIgIiIKLSJFbiBwcmltZXIgbHVnYXIsIHJlYm9iaW5hbmRvIEhFQUQgcGFyYSBkZXNwdcOpcyByZXByb2R1Y2lyIHR1cyBjYW1iaW9zIGVuY2ltYSAiCi0iZGUgw6lzdGEuLi4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjc0NgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRmFzdC1mb3J3YXJkZWQgJGJyYW5jaF9uYW1lIHRvICRvbnRvX25hbWUuIgotbXNnc3RyICJBdmFuY2UgcsOhcGlkbyBkZSAkYnJhbmNoX25hbWUgYSAkb250b19uYW1lLiIKLQotIzogZ2l0LXN0YXNoLnNoOjYxCi1tc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIHdpdGggcGFyYW1ldGVycyBpcyB1bmltcGxlbWVudGVkIgotbXNnc3RyICJnaXQgc3Rhc2ggY2xlYXIgY29uIHBhcsOhbWV0cm9zIG5vIGVzdMOhIGltcGxlbWVudGFkbyIKLQotIzogZ2l0LXN0YXNoLnNoOjEwOAotbXNnaWQgIllvdSBkbyBub3QgaGF2ZSB0aGUgaW5pdGlhbCBjb21taXQgeWV0IgotbXNnc3RyICJBw7puIG5vIHRpZW5lcyB1biBjb21taXQgaW5pY2lhbCIKLQotIzogZ2l0LXN0YXNoLnNoOjEyMwotbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IGluZGV4IHN0YXRlIgotbXNnc3RyICJObyBzZSBwdWVkZSBndWFyZGFyIGVsIGVzdGFkbyBhY3R1YWwgZGVsIMOtbmRpY2UiCi0KLSM6IGdpdC1zdGFzaC5zaDoxMzgKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgdW50cmFja2VkIGZpbGVzIgotbXNnc3RyICJObyBzZSBwdWVkZW4gZ3VhcmRhciBsb3MgYXJjaGl2b3Mgbm8gcmFzdHJlYWRvcyIKLQotIzogZ2l0LXN0YXNoLnNoOjE1OCBnaXQtc3Rhc2guc2g6MTcxCi1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgd29ya3RyZWUgc3RhdGUiCi1tc2dzdHIgIk5vIHNlIHB1ZWRlIGd1YXJkYXIgZWwgZXN0YWRvIGFjdHVhbCBkZWwgw6FyYm9sIGRlIHRyYWJham8iCi0KLSM6IGdpdC1zdGFzaC5zaDoxNzUKLW1zZ2lkICJObyBjaGFuZ2VzIHNlbGVjdGVkIgotbXNnc3RyICJTaW4gY2FtYmlvcyBzZWxlY2Npb25hZG9zIgotCi0jOiBnaXQtc3Rhc2guc2g6MTc4CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIyMQogbXNnaWQgIkNhbm5vdCByZW1vdmUgdGVtcG9yYXJ5IGluZGV4IChjYW4ndCBoYXBwZW4pIgogbXNnc3RyICJObyBzZSBwdWVkZSBlbGltaW5hciBlbCDDrW5kaWNlIHRlbXBvcmFsIChubyBwdWVkZSBzdWNlZGVyKSIKIAotIzogZ2l0LXN0YXNoLnNoOjE5MQotbXNnaWQgIkNhbm5vdCByZWNvcmQgd29ya2luZyB0cmVlIHN0YXRlIgotbXNnc3RyICJObyBzZSBwdWVkZSBncmFiYXIgZWwgZXN0YWRvIGRlbCDDoXJib2wgZGUgdHJhYmFqbyIKLQotIzogZ2l0LXN0YXNoLnNoOjIyOQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyNzIKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCB1cGRhdGUgJHJlZl9zdGFzaCB3aXRoICR3X2NvbW1pdCIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgYWN0dWFsaXphciAkcmVmX3N0YXNoIGNvbiAkd19jb21taXQiCiAKLSM6IGdpdC1zdGFzaC5zaDoyODEKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MzI0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJlcnJvcjogdW5rbm93biBvcHRpb24gZm9yICdzdGFzaCBwdXNoJzogJG9wdGlvbiIKIG1zZ3N0ciAiZXJyb3I6IG9wY2nDs24gZGVzY29ub2NpZGEgcGFyYSAnc3Rhc2ggcHVzJzogJG9wdGlvbiIKIAotIzogZ2l0LXN0YXNoLnNoOjI5NQotbXNnaWQgIkNhbid0IHVzZSAtLXBhdGNoIGFuZCAtLWluY2x1ZGUtdW50cmFja2VkIG9yIC0tYWxsIGF0IHRoZSBzYW1lIHRpbWUiCi1tc2dzdHIgIk5vIHNlIHB1ZWRlIHVzYXIgLS1wYXRjaCB5IC0taW5jbHVkZS11bnRyYWNrZWQgbyAtLWFsbCBhbCBtaXNtbyB0aWVtcG8iCi0KLSM6IGdpdC1zdGFzaC5zaDozMDMKLW1zZ2lkICJObyBsb2NhbCBjaGFuZ2VzIHRvIHNhdmUiCi1tc2dzdHIgIk5vIGhheSBjYW1iaW9zIGxvY2FsZXMgcGFyYSBndWFyZGFyIgotCi0jOiBnaXQtc3Rhc2guc2g6MzA4Ci1tc2dpZCAiQ2Fubm90IGluaXRpYWxpemUgc3Rhc2giCi1tc2dzdHIgIk5vIHNlIHB1ZWRlIGluaWNpYWxpemFyIHN0YXNoIgotCi0jOiBnaXQtc3Rhc2guc2g6MzEyCi1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgc3RhdHVzIgotbXNnc3RyICJObyBzZSBwdWVkZSBndWFyZGFyIGVsIGVzdGFkbyBhY3R1YWwiCi0KLSM6IGdpdC1zdGFzaC5zaDozMTMKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MzU2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTYXZlZCB3b3JraW5nIGRpcmVjdG9yeSBhbmQgaW5kZXggc3RhdGUgJHN0YXNoX21zZyIKIG1zZ3N0ciAiRGlyZWN0b3JpbyBkZSB0cmFiYWpvIGd1YXJkYWRvIHkgZXN0YWRvIGRlIMOtbmRpY2UgJHN0YXNoX21zZyIKIAotIzogZ2l0LXN0YXNoLnNoOjM0MgotbXNnaWQgIkNhbm5vdCByZW1vdmUgd29ya3RyZWUgY2hhbmdlcyIKLW1zZ3N0ciAiTm8gc2UgcHVlZGVuIGVsaW1pbmFyIGNhbWJpb3MgZGVsIMOhcmJvbCBkZSB0cmFiYWpvIgotCi0jOiBnaXQtc3Rhc2guc2g6NDkwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjUzNgogIywgc2gtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvcHRpb246ICRvcHQiCiBtc2dzdHIgIm9wY2nDs24gZGVzY29ub2NpZGE6ICRvcHQiCiAKLSM6IGdpdC1zdGFzaC5zaDo1MDMKLW1zZ2lkICJObyBzdGFzaCBlbnRyaWVzIGZvdW5kLiIKLW1zZ3N0ciAiTm8gc2UgZW5jb250cmFyb24gZW50cmFkYXMgZGUgc3Rhc2guIgotCi0jOiBnaXQtc3Rhc2guc2g6NTEwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU1NgogIywgc2gtZm9ybWF0CiBtc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDogJFJFViIKIG1zZ3N0ciAiU2UgZXNwZWNpZmljYXJvbiBkZW1hc2lhZGFzIHJldmlzaW9uZXM6ICRSRVYiCiAKLSM6IGdpdC1zdGFzaC5zaDo1MjUKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NTcxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIkcmVmZXJlbmNlIGlzIG5vdCBhIHZhbGlkIHJlZmVyZW5jZSIKIG1zZ3N0ciAiJHJlZmVyZW5jZSBubyBlcyB1bmEgcmVmZXJlbmNpYSB2w6FsaWRhIgogCi0jOiBnaXQtc3Rhc2guc2g6NTUzCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU5OQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRhcmdzJyBpcyBub3QgYSBzdGFzaC1saWtlIGNvbW1pdCIKIG1zZ3N0ciAiJyRhcmdzJyBubyBlcyB1biBjb21taXQgZXN0aWxvIHN0YXNoIgogCi0jOiBnaXQtc3Rhc2guc2g6NTY0CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYxMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRhcmdzJyBpcyBub3QgYSBzdGFzaCByZWZlcmVuY2UiCiBtc2dzdHIgIickYXJncycgbm8gZXMgdW5hIHJlZmVyZW5jaWEgc3Rhc2giCiAKLSM6IGdpdC1zdGFzaC5zaDo1NzIKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjE4CiBtc2dpZCAidW5hYmxlIHRvIHJlZnJlc2ggaW5kZXgiCiBtc2dzdHIgImluY2FwYXogZGUgcmVmcmVzY2FyIGVsIMOtbmRpY2UiCiAKLSM6IGdpdC1zdGFzaC5zaDo1NzYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjIyCiBtc2dpZCAiQ2Fubm90IGFwcGx5IGEgc3Rhc2ggaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIgogbXNnc3RyICJObyBzZSBwdWVkZSBhcGxpY2FyIHVuIHN0YXNoIGVuIG1lZGlvIGRlIHVuYSBmdXNpw7NuIgogCi0jOiBnaXQtc3Rhc2guc2g6NTg0CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYzMAogbXNnaWQgIkNvbmZsaWN0cyBpbiBpbmRleC4gVHJ5IHdpdGhvdXQgLS1pbmRleC4iCiBtc2dzdHIgIkNvbmZsaWN0b3MgZW4gw61uZGljZS4gSW50ZW50ZSBzaW4gLS1pbmRleC4iCiAKLSM6IGdpdC1zdGFzaC5zaDo1ODYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjMyCiBtc2dpZCAiQ291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgZ3VhcmRhciBlbCDDrW5kaWNlIGRlbCDDoXJib2wiCiAKLSM6IGdpdC1zdGFzaC5zaDo1OTUKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjQxCiBtc2dpZCAiQ291bGQgbm90IHJlc3RvcmUgdW50cmFja2VkIGZpbGVzIGZyb20gc3Rhc2ggZW50cnkiCiBtc2dzdHIgIk5vIHNlIHB1ZWRlbiByZXN0YXVyYXIgYXJjaGl2b3Mgbm8gcmFzdHJlYWRvcyBkZSBsYSBlbnRyYWRhIHN0YXNoIgogCi0jOiBnaXQtc3Rhc2guc2g6NjIwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjY2NgogbXNnaWQgIkNhbm5vdCB1bnN0YWdlIG1vZGlmaWVkIGZpbGVzIgogbXNnc3RyICJObyBzZSBwdWVkZSBzYWNhciBkZSBzdGFnZSBhcmNoaXZvcyBtb2RpZmljYWRvcyIKIAotIzogZ2l0LXN0YXNoLnNoOjYzNQotbXNnaWQgIkluZGV4IHdhcyBub3QgdW5zdGFzaGVkLiIKLW1zZ3N0ciAiRWwgw61uZGljZSBubyBmdWUgc2FjYWRvIGRlIHN0YXNoLiIKLQotIzogZ2l0LXN0YXNoLnNoOjY0OQotbXNnaWQgIlRoZSBzdGFzaCBlbnRyeSBpcyBrZXB0IGluIGNhc2UgeW91IG5lZWQgaXQgYWdhaW4uIgotbXNnc3RyICJMYSBlbnRyYWRhIGRlIHN0YXNoIHNlIGd1YXJkw7MgZW4gY2FzbyBkZSBzZXIgbmVjZXNhcmlvIG51ZXZhbWVudGUuIgotCi0jOiBnaXQtc3Rhc2guc2g6NjU4CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjcwNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiRHJvcHBlZCAke1JFVn0gKCRzKSIKIG1zZ3N0ciAiQm90YWRvICR7UkVWfSAoJHMpIgogCi0jOiBnaXQtc3Rhc2guc2g6NjU5CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjcwNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJHtSRVZ9OiBDb3VsZCBub3QgZHJvcCBzdGFzaCBlbnRyeSIKIG1zZ3N0ciAiJHtSRVZ9OiBObyBzZSBwdWRvIGJvcnJhciBlbnRyYWRhIHN0YXNoIgogCi0jOiBnaXQtc3Rhc2guc2g6NjY3Ci1tc2dpZCAiTm8gYnJhbmNoIG5hbWUgc3BlY2lmaWVkIgotbXNnc3RyICJObyBzZSBlc3BlY2lmaWPDsyBlbCBub21icmUgZGUgbGEgcmFtYSIKLQotIzogZ2l0LXN0YXNoLnNoOjc0NgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3OTIKIG1zZ2lkICIoVG8gcmVzdG9yZSB0aGVtIHR5cGUgXCJnaXQgc3Rhc2ggYXBwbHlcIikiCiBtc2dzdHIgIihQYXJhIHJlc3RhdXJhcmxvcywgZXNjcmliZSBcImdpdCBzdGFzaCBhcHBseVwiKSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoxOTgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjAzCiBtc2dpZCAiUmVsYXRpdmUgcGF0aCBjYW4gb25seSBiZSB1c2VkIGZyb20gdGhlIHRvcGxldmVsIG9mIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKICJMYSBydXRhIHJlbGF0aXZhIHPDs2xvIHNlIHB1ZWRlIHVzYXIgZGVzZGUgZWwgbml2ZWwgc3VwZXJpb3IgZGVsIMOhcmJvbCBkZSAiCiAidHJhYmFqbyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMDgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjEzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJyZXBvIFVSTDogJyRyZXBvJyBtdXN0IGJlIGFic29sdXRlIG9yIGJlZ2luIHdpdGggLi98Li4vIgogbXNnc3RyICJyZXBvIFVSTDogJyRyZXBvJyBkZWJlIHNlciBhYnNvbHV0YSBvIGluaWNpYXIgY29uIC4vfC4uLyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMjcKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjMyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGluIHRoZSBpbmRleCIKIG1zZ3N0ciAiJyRzbV9wYXRoJyB5YSBleGlzdGUgZW4gZWwgw61uZGljZSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzAKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjM1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGluIHRoZSBpbmRleCBhbmQgaXMgbm90IGEgc3VibW9kdWxlIgogbXNnc3RyICInJHNtX3BhdGgnIHlhIGV4aXN0ZSBlbiBlbCDDrW5kaWNlIHkgbm8gZXMgdW4gc3VibcOzZHVsbyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjQyCiAjLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iVGhlIGZvbGxvd2luZyBwYXRoIGlzIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczpcbiIKLSIkc21fcGF0aFxuIgotIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIGl0LiIKLW1zZ3N0ciAiIgotIkxhIHNpZ3VpZW50ZSBydXRhIGVzIGlnbm9yYWRhIHBvciB1bm8gZGUgdHVzIGFyY2hpdm9zIC5naXRpZ25vcmU6XG4iCi0iJHNtX3BhdGhcbiIKLSJVc2EgLWYgc2kgZW4gdmVyZGFkIHF1aWVyZXMgYWdyZWdhcmxvLiIKK21zZ2lkICInJHNtX3BhdGgnIGRvZXMgbm90IGhhdmUgYSBjb21taXQgY2hlY2tlZCBvdXQiCittc2dzdHIgIickc21fcGF0aCcgbm8gdGllbmUgdW4gY29tbWl0IGNoZWNrZWQgb3V0IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI1OQorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzMKICMsIHNoLWZvcm1hdAogbXNnaWQgIkFkZGluZyBleGlzdGluZyByZXBvIGF0ICckc21fcGF0aCcgdG8gdGhlIGluZGV4IgogbXNnc3RyICJBZ3JlZ2FuZG8gZWwgcmVwb3NpdG9yaW8gZXhpc3RlbnRlIGVuICckc21fcGF0aCcgYWwgw61uZGljZSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNjEKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjc1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYSB2YWxpZCBnaXQgcmVwbyIKIG1zZ3N0ciAiJyRzbV9wYXRoJyB5YSBleGlzdGUgeSBubyBlcyB1biByZXBvc2l0b3JpbyBnaXQgdsOhbGlkbyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNjkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjgzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJBIGdpdCBkaXJlY3RvcnkgZm9yICckc21fbmFtZScgaXMgZm91bmQgbG9jYWxseSB3aXRoIHJlbW90ZShzKToiCiBtc2dzdHIgIiIKICJTZSBlbmNvbnRyw7MgbG9jYWxtZW50ZSB1biBkaXJlY3RvcmlvIGdpdCBwYXJhICckc21fbmFtZScgY29uIGVsKGxvcykgIgogInJlbW90byhzKToiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjcxCisjOiBnaXQtc3VibW9kdWxlLnNoOjI4NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3YW50IHRvIHJldXNlIHRoaXMgbG9jYWwgZ2l0IGRpcmVjdG9yeSBpbnN0ZWFkIG9mIGNsb25pbmcgYWdhaW4gZnJvbVxuIgpAQCAtMTk3ODQsNDQgKzIzNDI1LDQ0IEBACiBtc2dzdHIgIiIKICJTaSBxdWllcmUgcmV1c2FyIGVzdGUgZGlyZWN0b3JpbyBnaXQgbG9jYWwgZW4gbHVnYXIgZGUgY2xvbmFyIG51ZXZhbWVudGUgZGVcbiIKICIgICRyZWFscmVwb1xuIgotInVzZSBsYSBvcGNpw7NuICctLWZvcmNlJy4gU2kgZWwgZGlyZWN0b3JpbyBnaXQgbG9jYWwgbm8gZXMgZWwgcmVwb3NpdG9yaW8gIgorInVzYSBsYSBvcGNpw7NuICctLWZvcmNlJy4gU2kgZWwgZGlyZWN0b3JpbyBnaXQgbG9jYWwgbm8gZXMgZWwgcmVwb3NpdG9yaW8gIgogImNvcnJlY3RvXG4iCi0ibyBubyBlc3TDoSBzZWd1cm8gZGUgbG8gcXVlIGVzdG8gc2lnbmlmaWNhLCBlc2NvamEgb3RybyBub21icmUgY29uIGxhIG9wY2nDs24gIgorIm8gbm8gZXN0w6FzIHNlZ3VybyBkZSBsbyBxdWUgZXN0byBzaWduaWZpY2EsIGVzY29nZSBvdHJvIG5vbWJyZSBjb24gbGEgb3BjacOzbiAiCiAiJy0tbmFtZScuIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI3NworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYWN0aXZhdGluZyBsb2NhbCBnaXQgZGlyZWN0b3J5IGZvciBzdWJtb2R1bGUgJyRzbV9uYW1lJy4iCiBtc2dzdHIgIlJlYWN0aXZhciBkaXJlY3RvcmlvIGdpdCBsb2NhbCBwYXJhIGVsIHN1Ym3Ds2R1bG8gJyRzbV9uYW1lJy4iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6Mjg5CisjOiBnaXQtc3VibW9kdWxlLnNoOjMwMwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGNoZWNrb3V0IHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICJObyBlcyBwb3NpYmxlIGhhY2VyIGNoZWNrb3V0IGFsIHN1Ym3Ds2R1bG8gJyRzbV9wYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTQKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MzA4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gYWRkIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICJGYWxsw7MgYWwgYWdyZWdhciBlbCBzdWJtw7NkdWxvICckc21fcGF0aCciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MzAzCisjOiBnaXQtc3VibW9kdWxlLnNoOjMxNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICJGYWxsw7MgYWwgcmVnaXN0cmFyIGVsIHN1Ym3Ds2R1bG8gJyRzbV9wYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NjMKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NTkwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gZmluZCBjdXJyZW50IHJldmlzaW9uIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICIiCiAiTm8gc2UgcHVkbyBlbmNvbnRyYXIgbGEgcmV2aXNpw7NuIGFjdHVhbCBlbiBsYSBydXRhIGRlIHN1Ym3Ds2R1bG8gIgogIickZGlzcGxheXBhdGgnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU3MworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDAKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJHNtX3BhdGgnIgogbXNnc3RyICJObyBlcyBwb3NpYmxlIHJlYWxpemFyIGZldGNoIGVuIGxhIHJ1dGEgZGUgc3VibcOzZHVsbyAnJHNtX3BhdGgnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU3OAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJVbmFibGUgdG8gZmluZCBjdXJyZW50ICR7cmVtb3RlX25hbWV9LyR7YnJhbmNofSByZXZpc2lvbiBpbiBzdWJtb2R1bGUgcGF0aCAiCkBAIC0xOTgzMCwxMiArMjM0NzEsMTYgQEAKICJObyBlcyBwb3NpYmxlIGVuY29udHJhciByZXZpc2nDs24gYWN0dWFsICR7cmVtb3RlX25hbWV9LyR7YnJhbmNofSBlbiBsYSBydXRhICIKICJkZSBzdWJtw7NkdWxvICAnJHNtX3BhdGgnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU5NgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjMKICMsIHNoLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKLW1zZ3N0ciAiTm8gZXMgcG9zaWJsZSByZWFsaXphciBmZXRjaCBlbiBsYSBydXRhIGRlIHN1Ym3Ds2R1bG8gJyRkaXNwbGF5cGF0aCciCittc2dpZCAiIgorIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzsgdHJ5aW5nIHRvIGRpcmVjdGx5IGZldGNoICIKKyIkc2hhMToiCittc2dzdHIgIiIKKyJObyBlcyBwb3NpYmxlIHJlYWxpemFyIGZldGNoIGVuIGxhIHJ1dGEgZGUgc3VibcOzZHVsbyAnJGRpc3BsYXlwYXRoJzsgIgorImludGVudGFuZG8gaGFjZXIgdW4gZmV0Y2ggZGlyZWN0byAkc2hhMToiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjAyCisjOiBnaXQtc3VibW9kdWxlLnNoOjYyOQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIkZldGNoZWQgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCcsIGJ1dCBpdCBkaWQgbm90IGNvbnRhaW4gJHNoYTEuICIKQEAgLTE5ODQ0LDc1ICsyMzQ4OSw3NSBAQAogIkZldGNoIHJlYWxpemFkbyBlbiBydXRhIGRlIHN1Ym3Ds2R1bG8gJyRkaXNwbGF5cGF0aCcsIHBlcm8gbm8gY29udGVuw61hICRzaGExLiAiCiAiRmV0Y2ggZGlyZWN0byBkZWwgY29tbWl0IGZhbGzDsy4iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjA5CisjOiBnaXQtc3VibW9kdWxlLnNoOjYzNgogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGNoZWNrb3V0ICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIk5vIGVzIHBvc2libGUgcmV2aXNhciAnJHNoYTEnIGVuIGxhIHJ1dGEgZGUgc3VibcOzZHVsbyAnJGRpc3BsYXlwYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MTAKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjM3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogY2hlY2tlZCBvdXQgJyRzaGExJyIKIG1zZ3N0ciAiUnV0YSBkZSBzdWJtw7NkdWxvICckZGlzcGxheXBhdGgnOiBjaGVjayBvdXQgcmVhbGl6YWRvIGEgJyRzaGExJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MTQKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gcmViYXNlICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIiIKICJObyBzZSBwb3NpYmxlIGVqZWN1dGFyIHJlYmFzZSBhICckc2hhMScgZW4gbGEgcnV0YSBkZSBzdWJtw7NkdWxvICIKICInJGRpc3BsYXlwYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MTUKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogcmViYXNlZCBpbnRvICckc2hhMSciCiBtc2dzdHIgIlJ1dGEgZGUgc3VibcOzZHVsbyAnJGRpc3BsYXlwYXRoJzogcmViYXNhZGEgZW4gJyRzaGExJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjAKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQ3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gbWVyZ2UgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiSW5jYXBheiBkZSBmdXNpb25hciAnJHNoYTEnIGVuIGxhIHJ1dGEgZGVsIHN1Ym3Ds2R1bG8gJyRkaXNwbGF5cGF0aCciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjIxCisjOiBnaXQtc3VibW9kdWxlLnNoOjY0OAogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IG1lcmdlZCBpbiAnJHNoYTEnIgogbXNnc3RyICJSdXRhIGRlIHN1Ym3Ds2R1bG8gJyRkaXNwbGF5cGF0aCc6IGZ1c2lvbmFkYSBlbiAnJHNoYTEnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYyNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NTMKICMsIHNoLWZvcm1hdAogbXNnaWQgIkV4ZWN1dGlvbiBvZiAnJGNvbW1hbmQgJHNoYTEnIGZhaWxlZCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiIgogIkZhbGzDsyBsYSBlamVjdWNpw7NuICBkZSAgJyRjb21tYW5kICRzaGExJyBlbiBsYSBydXRhIGRlIHN1Ym3Ds2R1bG8gIgogIickZGlzcGxheXBhdGgnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYyNworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NTQKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiAnJGNvbW1hbmQgJHNoYTEnIgogbXNnc3RyICJSdXRhIGRlIHN1Ym3Ds2R1bG8gJyRkaXNwbGF5cGF0aCc6ICckY29tbWFuZCAkc2hhMSciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjU4CisjOiBnaXQtc3VibW9kdWxlLnNoOjY4NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiRmFsbMOzIGFsIHJlY3VycmlyIGVuIGxhIHJ1dGEgZGUgc3VibcOzZHVsbyAnJGRpc3BsYXlwYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo3NTQKKyM6IGdpdC1zdWJtb2R1bGUuc2g6ODk2CiBtc2dpZCAiVGhlIC0tY2FjaGVkIG9wdGlvbiBjYW5ub3QgYmUgdXNlZCB3aXRoIHRoZSAtLWZpbGVzIG9wdGlvbiIKIG1zZ3N0ciAiTGEgb3BjacOzbiAtLWNhY2hlZCBubyBwdWVkZSBzZXIgdXNhZGEgY29uIGxhIG9wY2nDs24gLS1maWxlcyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MDYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTQ4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG1vZGUgJG1vZF9kc3QiCiBtc2dzdHIgIm1vZG8gJG1vZF9kc3QgaW5lc3BlcmFkbyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MjYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTY4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdCAkc2hhMV9zcmMiCiBtc2dzdHIgIiAgQWR2ZXJ0ZW5jaWE6ICRkaXNwbGF5X25hbWUgbm8gY29udGllbmUgZWwgY29tbWl0ICRzaGExX3NyYyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MjkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTcxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdCAkc2hhMV9kc3QiCiBtc2dzdHIgIiAgQWR2ZXJ0ZW5jaWE6ICRkaXNwbGF5X25hbWUgbm8gY29udGllbmUgZWwgY29tbWl0ICRzaGExX2RzdCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MzIKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTc0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdHMgJHNoYTFfc3JjIGFuZCAkc2hhMV9kc3QiCiBtc2dzdHIgIiIKQEAgLTE5OTIzLDEyICsyMzU2OCwyMSBAQAogbXNnaWQgIlNlZSBnaXQtJHtjbWR9KDEpIGZvciBkZXRhaWxzLiIKIG1zZ3N0ciAiVsOpYXNlIGdpdC0ke2NtZH0oMSkgcGFyYSBtw6FzIGRldGFsbGVzLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEzNgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEwOQorbXNnaWQgIkFwcGxpZWQgYXV0b3N0YXNoLiIKK21zZ3N0ciAiQXV0b3N0YXNoIGFwbGljYWRvLiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjExMgorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN0b3JlICRzdGFzaF9zaGExIgorbXNnc3RyICJObyBzZSBwdWVkZSBhbG1hY2VuYXIgJHN0YXNoX3NoYTEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxOTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYmFzaW5nICgkbmV3X2NvdW50LyR0b3RhbCkiCiBtc2dzdHIgIlJlYmFzYW5kbyAoJG5ld19jb3VudC8kdG90YWwpIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTUyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjA3CiBtc2dpZCAiIgogIlxuIgogIkNvbW1hbmRzOlxuIgpAQCAtMTk5NjgsNyArMjM2MjIsNyBAQAogIkVzdGFzIGzDrW5lYXMgcHVlZGVuIHNlciByZW9yZGVuYWRhczsgc29uIGVqZWN1dGFkYXMgZGVzZGUgYXJyaWJhIGhhY2lhICIKICJhYmFqby5cbiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIxNQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI3MAogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBjYW4gYW1lbmQgdGhlIGNvbW1pdCBub3csIHdpdGhcbiIKQEAgLTE5OTc5LDkxICsyMzYzMyw5MSBAQAogIlxuIgogIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgogbXNnc3RyICIiCi0iUHVlZGUgZW5tZW5kYXIgZWwgY29tbWl0IGFob3JhLCBjb25cbiIKKyJQdWVkZXMgZW5tZW5kYXIgZWwgY29tbWl0IGFob3JhLCBjb25cbiIKICJcbiIKICJcdGdpdCBjb21taXQgLS1hbWVuZCAkZ3BnX3NpZ25fb3B0X3F1b3RlZFxuIgogIlxuIgotIlVuYSB2ZXogcXVlIGVzdMOpIHNhdGlzZmVjaG8gY29uIGxvcyBjYW1iaW9zLCBlamVjdXRlXG4iCisiVW5hIHZleiBxdWUgZXN0w6lzIHNhdGlzZmVjaG8gY29uIGxvcyBjYW1iaW9zLCBlamVjdXRhXG4iCiAiXG4iCiAiXHRnaXQgcmViYXNlIC0tY29udGludWUiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyNDAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyOTUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiRzaGExOiBub3QgYSBjb21taXQgdGhhdCBjYW4gYmUgcGlja2VkIgogbXNnc3RyICIkc2hhMTogbm8gZXMgdW4gY29tbWl0IHF1ZSBwdWVkYSBzZXIgY29naWRvIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mjc5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzM0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIGNvbW1pdCBuYW1lOiAkc2hhMSIKIG1zZ3N0ciAiTm9tYnJlIGRlIGNvbW1pdCBpbnbDoWxpZG86ICRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzA5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzY0CiBtc2dpZCAiQ2Fubm90IHdyaXRlIGN1cnJlbnQgY29tbWl0J3MgcmVwbGFjZW1lbnQgc2hhMSIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgZXNjcmliaXIgZWwgcmVtcGxhem8gc2hhMSBkZWwgY29tbWl0IGFjdHVhbCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFzdC1mb3J3YXJkIHRvICRzaGExIgogbXNnc3RyICJBdmFuY2UgcsOhcGlkbyBhICRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzYyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDE3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZmFzdC1mb3J3YXJkIHRvICRzaGExIgogbXNnc3RyICJObyBzZSBwdWVkZSByZWFsaXphciBhdmFuY2UgcsOhcGlkbyBhICRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzcxCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDI2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgbW92ZSBIRUFEIHRvICRmaXJzdF9wYXJlbnQiCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIG1vdmVyIEhFQUQgYSAkZmlyc3RfcGFyZW50IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mzc2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDMxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBzcXVhc2ggYSBtZXJnZTogJHNoYTEiCiBtc2dzdHIgIlJlaHVzYW5kbyBhIGVqZWN1dGFyIHNxdWFzaCBlbiBmdXNpw7NuOiAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM5NAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ0OQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRXJyb3IgcmVkb2luZyBtZXJnZSAkc2hhMSIKIG1zZ3N0ciAiRXJyb3IgcmVoYWNpZW5kbyBmdXNpw7NuICRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDAzCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDU4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcGljayAkc2hhMSIKIG1zZ3N0ciAiTm8gc2UgcHVkbyBjb2dlciAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxMgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ2NwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyB0aGUgY29tbWl0IG1lc3NhZ2UgIyR7bn06IgogbXNnc3RyICJFc3RlIGVzIGVsIG1lbnNhamUgZGVsIGNvbW1pdCAjJHtufToiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MTcKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NzIKICMsIHNoLWZvcm1hdAogbXNnaWQgIlRoZSBjb21taXQgbWVzc2FnZSAjJHtufSB3aWxsIGJlIHNraXBwZWQ6IgogbXNnc3RyICJFbCBtZW5zYWplIGRlbCBjb21taXQgICMke259IHNlcsOhIGlnbm9yYWRvOiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQyOAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ4MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mICRjb3VudCBjb21taXQuIgogbXNnaWRfcGx1cmFsICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJGNvdW50IGNvbW1pdHMuIgogbXNnc3RyWzBdICJFc3RhIGVzIHVuYSBjb21iaW5hY2nDs24gZGUgJGNvdW50IGNvbW1pdC4iCiBtc2dzdHJbMV0gIkVzdGEgZXMgbGEgY29tYmluYWNpw7NuIGRlICRjb3VudCBjb21taXRzLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQzNworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHdyaXRlICRmaXh1cF9tc2ciCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIGVzY3JpYmlyICRmaXh1cF9tc2ciCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NDAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0OTUKIG1zZ2lkICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgMiBjb21taXRzLiIKIG1zZ3N0ciAiRXN0byBlcyB1bmEgY29tYmluYWNpw7NuIGRlIDIgY29tbWl0cy4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0ODEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUyNAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUyNworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUzNiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTc5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTgyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgYXBwbHkgJHNoYTEuLi4gJHJlc3QiCiBtc2dzdHIgIk5vIHNlIHB1ZWRlIGFwbGljYXIgJHNoYTEuLi4gJHJlc3QiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1NTYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJDb3VsZCBub3QgYW1lbmQgY29tbWl0IGFmdGVyIHN1Y2Nlc3NmdWxseSBwaWNraW5nICRzaGExLi4uICRyZXN0XG4iCkBAIC0yMDA3NiwzNSArMjM3MzAsMzUgQEAKICIkcmVzdFxuIgogIkVzdG8gZXMgcHJvYmFibGVtZW50ZSBkZWJpZG8gYSB1biBtZW5zYWplIGRlIGNvbW1pdCB2YWPDrW8sIG8gZWwgaG9vayBwcmUtIgogImNvbW1pdFxuIgotImhhIGZhbGxhZG8uIFNpIGVsIGhvb2sgcHJlLWNvbW1pdCBmYWxsw7MsIGVzIHBvc2libGUgcXVlIGRlYmEgcmVzb2x2ZXIgZWwgIgorImhhIGZhbGxhZG8uIFNpIGVsIGhvb2sgcHJlLWNvbW1pdCBmYWxsw7MsIGVzIHBvc2libGUgcXVlIGRlYmFzIHJlc29sdmVyIGVsICIKICJwcm9ibGVtYSBhbnRlc1xuIgogImRlIHF1ZSBzZWEgY2FwYXogZGUgcmVmb3JtdWxhciBlbCBjb21taXQuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTcxCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjI2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdG9wcGVkIGF0ICRzaGExX2FiYnJldi4uLiAkcmVzdCIKIG1zZ3N0ciAiRGV0ZW5pZG8gZW4gJHNoYTFfYWJicmV2Li4uICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTg2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJyRzcXVhc2hfc3R5bGUnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgIk5vIHNlIHB1ZWRlICckc3F1YXNoX3N0eWxlJyBzaW4gdW4gY29tbWl0IHByZXZpbyIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYyOAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY4MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRXhlY3V0aW5nOiAkcmVzdCIKIG1zZ3N0ciAiRWplY3V0YW5kbzogJHJlc3QiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MzYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkV4ZWN1dGlvbiBmYWlsZWQ6ICRyZXN0IgogbXNnc3RyICJFamVjdWNpw7NuIGZhbGxpZGE6ICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjM4CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjkzCiBtc2dpZCAiYW5kIG1hZGUgY2hhbmdlcyB0byB0aGUgaW5kZXggYW5kL29yIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgInkgaGl6byBjYW1iaW9zIGFsIMOtbmRpY2UgeS9vIGFsIMOhcmJvbCBkZSB0cmFiYWpvIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Njk1CiBtc2dpZCAiIgogIllvdSBjYW4gZml4IHRoZSBwcm9ibGVtLCBhbmQgdGhlbiBydW5cbiIKICJcbiIKQEAgLTIwMTE1LDcgKzIzNzY5LDcgQEAKICJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKIAogIy4gVFJBTlNMQVRPUlM6IGFmdGVyIHRoZXNlIGxpbmVzIGlzIGEgY29tbWFuZCB0byBiZSBpc3N1ZWQgYnkgdGhlIHVzZXIKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NTMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MDgKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJFeGVjdXRpb24gc3VjY2VlZGVkOiAkcmVzdFxuIgpAQCAtMjAxMjYsMjkgKzIzNzgwLDI5IEBACiBtc2dzdHIgIiIKICJMYSBlamVjdWNpw7NuIHR1dm8gw6l4aXRvOiAkcmVzdFxuIgogIlBlcm8gZGVqw7MgY2FtYmlvcyBlbiBlbCDDrW5kaWNlIHkvbyBlbiBlbCDDoXJib2wgZGUgdHJhYmFqb1xuIgotIlJlYWxpY2UgdW4gY29tbWl0IG8gc3Rhc2ggY29uIGxvcyBjYW1iaW9zIHksIGEgY29udGludWFjacOzbiwgZWplY3V0ZVxuIgorIlJlYWxpemEgdW4gY29tbWl0IG8gc3Rhc2ggY29uIGxvcyBjYW1iaW9zIHksIGEgY29udGludWFjacOzbiwgZWplY3V0YVxuIgogIlxuIgogIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjY0CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzE5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmtub3duIGNvbW1hbmQ6ICRjb21tYW5kICRzaGExICRyZXN0IgogbXNnc3RyICJDb21hbmRvIGRlc2Nvbm9jaWRvOiAkY29tbWFuZCAkc2hhMSAkcmVzdCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY2NQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcyMAogbXNnaWQgIlBsZWFzZSBmaXggdGhpcyB1c2luZyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycuIgogbXNnc3RyICJQb3IgZmF2b3IsIGNvcnJpZ2UgZXN0byB1c2FuZG8gJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcwMAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc1NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VjY2Vzc2Z1bGx5IHJlYmFzZWQgYW5kIHVwZGF0ZWQgJGhlYWRfbmFtZS4iCiBtc2dzdHIgIiRoZWFkX25hbWUgcmViYXNhZG8geSBhY3R1YWxpemFkbyBzYXRpc2ZhY3RvcmlhbWVudGUuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzU3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODEyCiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgogbXNnc3RyICJObyBzZSBwdWRvIGVsaW1pbmFyIENIRVJSWV9QSUNLX0hFQUQiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NjIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MTcKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgaGF2ZSBzdGFnZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTIwMTY1LDI2ICsyMzgxOSwyNiBAQAogIlxuIgogIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiBtc2dzdHIgIiIKLSJUaWVuZSBjYW1iaW9zIGVuIGVsIMOhcmVhIGRlIHN0YWdlIGRlIHN1IMOhcmJvbCBkZSB0cmFiYWpvLlxuIgorIlRpZW5lcyBjYW1iaW9zIGVuIGVsIMOhcmVhIGRlIHN0YWdlIGRlIHR1IMOhcmJvbCBkZSB0cmFiYWpvLlxuIgogIlNpIGVzdG9zIGNhbWJpb3MgZXN0w6FuIGRlc3RpbmFkb3MgYSBcbiIKLSJzZXIgYXBsYXN0YWRvcyBlbiBlbCBjb21taXQgcHJldmlvLCBlamVjdXRlOlxuIgorInNlciBhcGxhc3RhZG9zIGVuIGVsIGNvbW1pdCBwcmV2aW8sIGVqZWN1dGE6XG4iCiAiXG4iCiAiICBnaXQgY29tbWl0IC0tYW1lbmQgJGdwZ19zaWduX29wdF9xdW90ZWRcbiIKICJcbiIKLSJTaSBlc3RvcyBlc3TDoW4gZGVzdGluYWRvcyBhIGlyIGVuIHVuIG51ZXZvIGNvbW1pdCwgZWplY3V0ZTpcbiIKKyJTaSBlc3RvcyBlc3TDoW4gZGVzdGluYWRvcyBhIGlyIGVuIHVuIG51ZXZvIGNvbW1pdCwgZWplY3V0YTpcbiIKICJcbiIKICIgIGdpdCBjb21taXQgJGdwZ19zaWduX29wdF9xdW90ZWRcbiIKICJcbiIKLSJFbiBhbWJvcyBjYXNvcywgY3VhbmRvIHRlcm1pbmUsIGNvbnRpbnVlIGNvbjpcbiIKKyJFbiBhbWJvcyBjYXNvcywgY3VhbmRvIHRlcm1pbmVzLCBjb250aW51ZSBjb246XG4iCiAiXG4iCiAiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc3OQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgzNAogbXNnaWQgIkVycm9yIHRyeWluZyB0byBmaW5kIHRoZSBhdXRob3IgaWRlbnRpdHkgdG8gYW1lbmQgY29tbWl0IgogbXNnc3RyICIiCiAiRXJyb3IgdHJhdGFuZG8gZGUgZW5jb250cmFyIGxhIGlkZW50aWRhZCBkZWwgYXV0b3IgcGFyYSByZW1lZGlhciBlbCBjb21taXQiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3ODQKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MzkKIG1zZ2lkICIiCiAiWW91IGhhdmUgdW5jb21taXR0ZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS4gUGxlYXNlIGNvbW1pdCB0aGVtXG4iCiAiZmlyc3QgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tY29udGludWUnIGFnYWluLiIKQEAgLTIwMTkyLDQwICsyMzg0Niw0NCBAQAogIlRpZW5lcyBjYW1iaW9zIHNpbiBjb25maXJtYXIgZW4gdHUgw6FyYm9sIGRlIHRyYWJham8uIFBvciBmYXZvciwgY29uZsOtcm1hbG9zXG4iCiAicHJpbWVybyB5IGVudG9uY2VzIGVqZWN1dGEgJ2dpdCByZWJhc2UgLS1jb250aW51ZScgZGUgbnVldm8uIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzg5IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3OTMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NDQgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg0OAogbXNnaWQgIkNvdWxkIG5vdCBjb21taXQgc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICJObyBzZSBwdWRvIHJlYWxpemFyIGVsIGNvbW1pdCBjb24gbG9zIGNhbWJpb3MgZW4gZWwgw6FyZWEgZGUgc3RhZ2UuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODI0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MTAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NzkgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk2NQogbXNnaWQgIkNvdWxkIG5vdCBleGVjdXRlIGVkaXRvciIKIG1zZ3N0ciAiTm8gc2UgcHVkbyBlamVjdXRhciBlbCBlZGl0b3IiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NDUKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDAKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBjaGVja291dCAkc3dpdGNoX3RvIgogbXNnc3RyICJObyBzZSBwdWRvIGFjdHVhbGl6YXIgZWwgw6FyYm9sIGRlIHRyYWJham8gYSAkc3dpdGNoX3RvIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODUyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTA3CiBtc2dpZCAiTm8gSEVBRD8iCiBtc2dzdHIgIsK/U2luIEhFQUQ/IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODUzCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTA4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAkc3RhdGVfZGlyIgogbXNnc3RyICJObyBzZSBwdWRvIGNyZWFyICRzdGF0ZV9kaXIgdGVtcG9yYWxtZW50ZSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1NgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkxMQogbXNnaWQgIkNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgogbXNnc3RyICJObyBzZSBwdWRvIG1hcmNhciBjb21vIGludGVyYWN0aXZvIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODg4CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTQzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJSZWJhc2UgJHNob3J0cmV2aXNpb25zIG9udG8gJHNob3J0b250byAoJHRvZG9jb3VudCBjb21tYW5kKSIKIG1zZ2lkX3BsdXJhbCAiUmViYXNlICRzaG9ydHJldmlzaW9ucyBvbnRvICRzaG9ydG9udG8gKCR0b2RvY291bnQgY29tbWFuZHMpIgogbXNnc3RyWzBdICJSZWJhc2UgJHNob3J0cmV2aXNpb25zIGVuICRzaG9ydG9udG8gKCR0b2RvY291bnQgY29tYW5kbykiCiBtc2dzdHJbMV0gIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgZW4gJHNob3J0b250byAoJHRvZG9jb3VudCBjb21hbmRvcykiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDIgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0NworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk1NQorbXNnaWQgIk5vdGUgdGhhdCBlbXB0eSBjb21taXRzIGFyZSBjb21tZW50ZWQgb3V0IgorbXNnc3RyICJUZW5nYSBlbiBjdWVudGEgcXVlIGxvcyBjb21taXRzIHZhY8Otb3MgZXN0w6FuIGNvbWVudGFkb3MiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5OTcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEwMDIKIG1zZ2lkICJDb3VsZCBub3QgaW5pdCByZXdyaXR0ZW4gY29tbWl0cyIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgaW5pY2lhbGl6YXIgbG9zIGNvbW1pdHMgcmVlc2NyaXRvcyIKIApAQCAtMjAyMzQsMTQ2ICsyMzg5Miw4NCBAQAogbXNnaWQgInVzYWdlOiAkZGFzaGxlc3MgJFVTQUdFIgogbXNnc3RyICJ1c286ICRkYXNobGVzcyAkVVNBR0UiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoxOTAKKyM6IGdpdC1zaC1zZXR1cC5zaDoxOTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBjaGRpciB0byAkY2R1cCwgdGhlIHRvcGxldmVsIG9mIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKICJObyBzZSBwdWVkZSBhcGxpY2FyIGNoZGlyIGEgJGNkdXAsIGVsIG5pdmVsIG3DoXhpbW8gZGVsIMOhcmJvbCBkZSB0cmFiYWpvIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MTk5IGdpdC1zaC1zZXR1cC5zaDoyMDYKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMDAgZ2l0LXNoLXNldHVwLnNoOjIwNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiZmF0YWw6ICRwcm9ncmFtX25hbWUgY2Fubm90IGJlIHVzZWQgd2l0aG91dCBhIHdvcmtpbmcgdHJlZS4iCiBtc2dzdHIgImZhdGFsOiAkcHJvZ3JhbV9uYW1lIG5vIHB1ZWRlIHNlciB1c2FkbyBzaW4gdW4gw6FyYm9sIGRlIHRyYWJham8uIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjIwCisjOiBnaXQtc2gtc2V0dXAuc2g6MjIxCiBtc2dpZCAiQ2Fubm90IHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICJObyBzZSBwdWVkZSBhcGxpY2FyIHJlYmFzZTogVGllbmVzIGNhbWJpb3MgcXVlIG5vIGVzdMOhbiBlbiBlbCDDoXJlYSBkZSBzdGFnZS4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjMKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjQKIG1zZ2lkICJDYW5ub3QgcmV3cml0ZSBicmFuY2hlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICJObyBzZSBwdWVkZSByZWVzY3JpYmlyIGxhcyByYW1hczogVGllbmVzIGNhbWJpb3MgcXVlIG5vIGVzdMOhbiBlbiBlbCDDoXJlYSBkZSAiCiAic3RhZ2UuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjI2CisjOiBnaXQtc2gtc2V0dXAuc2g6MjI3CiBtc2dpZCAiQ2Fubm90IHB1bGwgd2l0aCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAiTm8gc2UgcHVlZGUgYXBsaWNhciBwdWxsIGNvbiByZWJhc2U6IFRpZW5lcyBjYW1iaW9zIHF1ZSBubyBlc3TDoW4gZW4gZWwgw6FyZWEgIgogImRlIHN0YWdlLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjIyOQorIzogZ2l0LXNoLXNldHVwLnNoOjIzMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90ICRhY3Rpb246IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICJObyBzZSBwdWVkZSAkYWN0aW9uOiBUaWVuZXMgY2FtYmlvcyBxdWUgbm8gZXN0w6FuIGVuIGVsIMOhcmVhIGRlIHN0YWdlLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjI0MgorIzogZ2l0LXNoLXNldHVwLnNoOjI0MwogbXNnaWQgIkNhbm5vdCByZWJhc2U6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICJObyBzZSBwdWVkZSBoYWNlciByZWJhc2U6IFR1IMOtbmRpY2UgY29udGllbmUgY2FtYmlvcyBxdWUgbm8gZXN0w6FuIGVuIHVuICIKICJjb21taXQuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQ1CisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ2CiBtc2dpZCAiQ2Fubm90IHB1bGwgd2l0aCByZWJhc2U6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICJObyBzZSBwdWVkZSBoYWNlciBwdWxsIGNvbiByZWJhc2U6IFR1IMOtbmRpY2UgY29udGllbmUgY2FtYmlvcyBxdWUgbm8gZXN0w6FuICIKICJlbiB1biBjb21taXQuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQ4CisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJGFjdGlvbjogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiTm8gc2UgcHVlZGUgJGFjdGlvbjogRWwgw61uZGljZSBjb250aWVuZSBjYW1iaW9zIHNpbiBjb25maXJtYXIuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjUyCisjOiBnaXQtc2gtc2V0dXAuc2g6MjUzCiBtc2dpZCAiQWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICJBZGljaW9uYWxtZW50ZSwgdHUgw61uZGljZSBjb250aWVuZSBjYW1iaW9zIHF1ZSBubyBlc3TDoW4gZW4gdW4gY29tbWl0LiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjM3MgorIzogZ2l0LXNoLXNldHVwLnNoOjM3MwogbXNnaWQgIllvdSBuZWVkIHRvIHJ1biB0aGlzIGNvbW1hbmQgZnJvbSB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZS4iCiBtc2dzdHIgIiIKICJOZWNlc2l0YXMgZWplY3V0YXIgZXN0ZSBjb21hbmRvIGRlc2RlIGVsIG5pdmVsIHN1cGVyaW9yIGRlIHR1IMOhcmJvbCBkZSAiCiAidHJhYmFqby4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDozNzcKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzgKIG1zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIGFic29sdXRlIHBhdGggb2YgZ2l0IGRpcmVjdG9yeSIKIG1zZ3N0ciAiSW5jYXBheiBkZSBkZXRlcm1pbmFyIGxhIHJ1dGEgYWJzb2x1dGEgZGVsIGRpcmVjdG9yaW8gZ2l0IgogCiAjLiBUUkFOU0xBVE9SUzogeW91IGNhbiBhZGp1c3QgdGhpcyB0byBhbGlnbiAiZ2l0IGFkZCAtaSIgc3RhdHVzIG1lbnUKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTk2CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIlMTJzICUxMnMgJXMiCiBtc2dzdHIgIiUxMnMgJTEycyAlcyIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJzdGFnZWQiCi1tc2dzdHIgInJhc3RyZWFkbyIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJ1bnN0YWdlZCIKLW1zZ3N0ciAibm8gcmFzdHJlYWRvIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI1MyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI3OAotbXNnaWQgImJpbmFyeSIKLW1zZ3N0ciAiYmluYXJpbyIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyNjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMTYKLW1zZ2lkICJub3RoaW5nIgotbXNnc3RyICJuYWRhIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxMwotbXNnaWQgInVuY2hhbmdlZCIKLW1zZ3N0ciAic2luIGNhbWJpb3MiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjA5Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgImFkZGVkICVkIHBhdGhcbiIKLW1zZ2lkX3BsdXJhbCAiYWRkZWQgJWQgcGF0aHNcbiIKLW1zZ3N0clswXSAiYWdyZWdhZGEgJWQgcnV0YVxuIgotbXNnc3RyWzFdICJhZ3JlZ2FkYXMgJWQgcnV0YXNcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAidXBkYXRlZCAlZCBwYXRoXG4iCi1tc2dpZF9wbHVyYWwgInVwZGF0ZWQgJWQgcGF0aHNcbiIKLW1zZ3N0clswXSAiYWN0dWFsaXphZGEgJWQgcnV0YVxuIgotbXNnc3RyWzFdICJhY3R1YWxpemFkYXMgJWQgcnV0YXNcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTUKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAicmV2ZXJ0ZWQgJWQgcGF0aFxuIgotbXNnaWRfcGx1cmFsICJyZXZlcnRlZCAlZCBwYXRoc1xuIgotbXNnc3RyWzBdICJyZXZlcnRpZGEgJWQgcnV0YVxuIgotbXNnc3RyWzFdICJyZXZlcnRpZGFzICVkIHJ1dGFzXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjE4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzNAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ0b3VjaGVkICVkIHBhdGhcbiIKIG1zZ2lkX3BsdXJhbCAidG91Y2hlZCAlZCBwYXRoc1xuIgogbXNnc3RyWzBdICJ0b3VjaCBoZWNobyBhICVkIHJ1dGFcbiIKIG1zZ3N0clsxXSAidG91Y2ggaGVjaG8gYSAlZCBydXRhc1xuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyNwotbXNnaWQgIlVwZGF0ZSIKLW1zZ3N0ciAiQWN0dWFsaXphciIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MzkKLW1zZ2lkICJSZXZlcnQiCi1tc2dzdHIgIlJldmVydGlyIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY2MgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJub3RlOiAlcyBpcyB1bnRyYWNrZWQgbm93LlxuIgotbXNnc3RyICJub3RhOiAlcyBubyBlcyByYXN0cmVhZG8gYWhvcmEuXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjczCi1tc2dpZCAiQWRkIHVudHJhY2tlZCIKLW1zZ3N0ciAiQWdyZWdhciBubyByYXN0cmVhZG9zIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3OQotbXNnaWQgIk5vIHVudHJhY2tlZCBmaWxlcy5cbiIKLW1zZ3N0ciAiTm8gaGF5IGFyY2hpdm9zIHNpbiByYXN0cmVhci5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDMzCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTMKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHN0YWdpbmcuIgpAQCAtMjAzODEsNyArMjM5NzcsNyBAQAogIlNpIGVsIHBhcmNoZSBhcGxpY2EgbGltcGlhbWVudGUsIGVsIGh1bmsgZWRpdGFkbyBzZXJhIG1hcmNhZG9cbiIKICJpbm1lZGlhdGFtZW50ZSBwYXJhIGVsIMOhcmVhIGRlIHN0YWdlLiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDM2CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTYKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHN0YXNoaW5nLiIKQEAgLTIwMzg5LDcgKzIzOTg1LDcgQEAKICJTaSBlbCBwYXJjaGUgYXBsaWNhIGxpbXBpYW1lbnRlLCBlbCBodW5rIGVkaXRhZG8gc2VyYSBtYXJjYWRvXG4iCiAiaW5tZWRpYXRhbWVudGUgcGFyYSBhcGxpY2FyIHN0YXNoLiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDM5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTkKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHVuc3RhZ2luZy4iCkBAIC0yMDM5Nyw3ICsyMzk5Myw4IEBACiAiU2kgZWwgcGFyY2hlIGFwbGljYSBsaW1waWFtZW50ZSwgZWwgaHVuayBlZGl0YWRvIHNlcmEgbWFyY2Fkb1xuIgogImlubWVkaWF0YW1lbnRlIHBhcmEgc2FjYXIgZGVsIMOhcmVhIGRlIHN0YWdlLiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDQyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA1MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDYyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA3MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDc3CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBhcHBseWluZy4iCkBAIC0yMDQwNSw3ICsyNDAwMiw4IEBACiAiU2kgZWwgcGFyY2hlIGFwbGljYSBkZSBmb3JtYSBsaW1waWEsIGVsIGh1bmsgZWRpdGFkbyBzZXJhIG1hcmNhZG8gXG4iCiAiaW5tZWRpYXRhbWVudGUgcGFyYSBhcGxpY2FyLiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDQ1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA0OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDY1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA2OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDc0CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBkaXNjYXJkaW5nLiIKQEAgLTIwNDEzLDE2ICsyNDAxMSwxMiBAQAogIlNpIGVsIHBhcmNoZSBhcGxpY2EgZGUgZm9ybWEgbGltcGlhLCBlbCBodW5rIGVkaXRhZG8gc2VyYSBtYXJjYWRvXG4iCiAiaW5tZWRpYXRhbWVudGUgcGFyYSBkZXNjYXJ0ZS4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA4NQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTExCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuIGh1bmsgZWRpdCBmaWxlIGZvciB3cml0aW5nOiAlcyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGFicmlyIGVsIGFyY2hpdm8gZGUgYWRpY2nDs24gZGVsIGh1bmsgcGFyYSBlc2NyaXR1cmE6ICVzIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwODYKLW1zZ2lkICJNYW51YWwgaHVuayBlZGl0IG1vZGUgLS0gc2VlIGJvdHRvbSBmb3IgYSBxdWljayBndWlkZS5cbiIKLW1zZ3N0ciAiTW9kbyBkZSBlZGljacOzbiBtYW51YWwgZGUgaHVuayAtLSB2ZWEgYWJham8gcGFyYSB1bmEgZ3XDrWEgcsOhcGlkYS5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDkyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogIi0tLVxuIgpAQCAtMjA0MzMsMzcgKzI0MDI3LDE0IEBACiAiLS0tXG4iCiAiUGFyYSBlbGltaW5hciAnJXMnIGzDrW5lYXMsIGhhZ2EgZGUgZWxsYXMgbMOtbmVhcyAgJyAnICAoY29udGV4dG8pLlxuIgogIlBhcmEgZWxpbWluYXIgJyVzJyBsw61uZWFzLCBiw7NycmVsYXMuXG4iCi0iTGluZWFzIGNvbWVuemFuZG8gY29uICAlcyBzZXLDoW4gcmVtb3ZpZGFzLlxuIgorIkxpbmVhcyBjb21lbnphbmRvIGNvbiAgJXMgc2Vyw6FuIGVsaW1pbmFkYXMuXG4iCiAKLSMuIFRSQU5TTEFUT1JTOiAnaXQnIHJlZmVycyB0byB0aGUgcGF0Y2ggbWVudGlvbmVkIGluIHRoZSBwcmV2aW91cyBtZXNzYWdlcy4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTEwMAotbXNnaWQgIiIKLSJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSBnaXZlbiBhbiBvcHBvcnR1bml0eSB0b1xuIgotImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlIHJlbW92ZWQsIHRoZW4gdGhlIGVkaXQgaXNcbiIKLSJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIKLW1zZ3N0ciAiIgotIlNpIGVzdG8gbm8gYXBsaWNhIGRlIG1hbmVyYSBsaW1waWEsIHNlIGxlIGRhIGxhIG9wb3J0dW5pZGFkIGRlIFxuIgotImVkaXRhciBudWV2YW1lbnRlLiBTaSB0b2RhcyBsYXMgbMOtbmVhcyBkZWwgaHVuayBzb24gcmVtb3ZpZGFzLCBlbnRvbmNlcyBcbiIKLSJsYSBlZGljacOzbiBlcyBhYm9ydGFkYSB5IGVsIGh1bmsgcXVlZGEgc2luIGNhbWJpb3MuXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTQwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuIGh1bmsgZWRpdCBmaWxlIGZvciByZWFkaW5nOiAlcyIKIG1zZ3N0ciAiZmFsbMOzIGFsIGFicmlyIGVsIGFyY2hpdm8gZGUgZWRpY2nDs24gZGVsIGh1bmsgcGFyYSBsZWN0dXJhOiAlcyIKIAotIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KLSMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dAotIy4gYXQgdGhpcyBwb2ludC4KLSMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCi0jLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgotIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMTMKLW1zZ2lkICIiCi0iWW91ciBlZGl0ZWQgaHVuayBkb2VzIG5vdCBhcHBseS4gRWRpdCBhZ2FpbiAoc2F5aW5nIFwibm9cIiBkaXNjYXJkcyEpIFt5L25dPyAiCi1tc2dzdHIgIiIKLSJUdSBodW5rIGVkaXRhZG8gbm8gYXBsaWNhLiBFZGl0YXIgbnVldmFtZW50ZSAoZGVjaXIgXCJub1wiIGRlc2NhcnRhISkgW3kvbl0/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjIyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNDgKIG1zZ2lkICIiCiAieSAtIHN0YWdlIHRoaXMgaHVua1xuIgogIm4gLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rXG4iCkBAIC0yMDQ3OCw3ICsyNDA0OSw3IEBACiAiZCAtIG5vIGFwbGljYXIgc3RhZ2UgYSBlc3RlIGh1bmsgbyBhIG5pbmd1bm8gZGUgbG9zIHBvc3RlcmlvcmVzIGVuIGVzdGUgIgogImFyY2hpdm8iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIyOAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjU0CiBtc2dpZCAiIgogInkgLSBzdGFzaCB0aGlzIGh1bmtcbiIKICJuIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVua1xuIgpAQCAtMjA0OTIsNyArMjQwNjMsNyBAQAogImEgLSBhcGxpY2FyIHN0YXNoIGEgZXN0ZSBodW5rIHkgYSB0b2RvcyBsb3MgcG9zdGVyaW9yZXMgZW4gZWwgYXJjaGl2b1xuIgogImQgLSBubyBhcGxpY2FyIHN0YXNoIGEgZXN0ZSBodW5rIG8gbmluZ3VubyBkZSBsb3MgcG9zdGVyaW9yZXMgZW4gZWwgYXJjaGl2byIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjM0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNjAKIG1zZ2lkICIiCiAieSAtIHVuc3RhZ2UgdGhpcyBodW5rXG4iCiAibiAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVua1xuIgpAQCAtMjA1MDcsNyArMjQwNzgsNyBAQAogImQgLSBubyBzYWNhciBkZWwgYXJlYSBkZSBzdGFnZSBlc3RlIGh1bmsgbyBuaW5ndW5vIGRlIGxvcyBwb3N0ZXJpb3JlcyBlbiBlbCAiCiAiYXJjaGl2byIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjQwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNjYKIG1zZ2lkICIiCiAieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgogIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4XG4iCkBAIC0yMDUyMSw3ICsyNDA5Miw3IEBACiAiYSAtIGFwbGljYXIgZXN0ZSBodW5rIHkgdG9kb3MgbG9zIHBvc3RlcmlvcmVzIGVuIGVsIGFyY2hpdm9cbiIKICJkIC0gbm8gYXBsaWNhciBlc3RlIGh1bmtvIG5pbmd1bm8gZGUgbG9zIHBvc3RlcmlvcmVzIGVuIGVsIGFyY2hpdm8iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0NgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5MAogbXNnaWQgIiIKICJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgogIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgpAQCAtMjA1MzUsNyArMjQxMDYsNyBAQAogImEgLSBkZXNjYXJ0YXIgZXN0ZSBodW5rIHkgdG9kb3MgbG9zIHBvc3RlcmlvcmVzIGVuIGVzdGUgYXJjaGl2b1xuIgogImQgLSBubyBkZXNjYXJ0YXIgZXN0ZSBodW5rIG8gbmluZ3VubyBkZSBsb3MgcG9zdGVyaW9yZXMgZW4gZWwgYXJjaGl2byIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjUyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNzgKIG1zZ2lkICIiCiAieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCiAibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgpAQCAtMjA1NDksNyArMjQxMjAsNyBAQAogImEgLSBkZXNjYXJ0YXIgZXN0ZSBodW5rIHkgdG9kb3MgbG9zIHBvc3RlcmlvcmVzIGVuIGVzdGUgYXJjaGl2b1xuIgogImQgLSBubyBkZXNjYXJ0YXIgZXN0ZSBodW5rIG8gbmluZ3VubyBwb3N0ZXJpb3IgZW4gZWwgYXJjaGl2byIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjU4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyODQKIG1zZ2lkICIiCiAieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKICJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKQEAgLTIwNTYzLDcgKzI0MTM0LDIxIEBACiAiYSAtIGFwbGljYXIgZXN0ZSBodW5rIHkgdG9kb3MgbG9zIHBvc3RlcmlvcmVzIGVuIGVsIGFyY2hpdm9cbiIKICJkIC0gbm8gYXBsaWNhciBlc3RlIGh1bmsgbyBuaW5ndW5vIGRlIGxvcyBzaWd1aWVudGVzIGVuIGVzdGUgYXJjaGl2byIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjczCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyOTYKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKyJ5IC0gYXBsaWNhciBlc3RlIGh1bmsgYWwgw61uZGljZSB5IGFsIMOhcmJvbCBkZSB0cmFiYWpvXG4iCisibiAtIG5vIGFwbGljYXIgZXN0ZSBodW5rIGFsIMOtbmRpY2UgeSBhbCDDoXJib2wgZGUgdHJhYmFqb1xuIgorInEgLSBxdWl0OyAgbm8gYXBsaWNhciBlc3RlIGh1bmsgbyBuaW5ndW5vIGRlIGxvcyByZXN0YW50ZXNcbiIKKyJhIC0gYXBsaWNhciBlc3RlIGh1bmsgeSB0b2RvcyBsb3MgcG9zdGVyaW9yZXMgZW4gZWwgYXJjaGl2b1xuIgorImQgLSBubyBhcGxpY2FyIGVzdGUgaHVuayBvIG5pbmd1bm8gZGUgbG9zIHNpZ3VpZW50ZXMgZW4gZXN0ZSBhcmNoaXZvIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMTEKIG1zZ2lkICIiCiAiZyAtIHNlbGVjdCBhIGh1bmsgdG8gZ28gdG9cbiIKICIvIC0gc2VhcmNoIGZvciBhIGh1bmsgbWF0Y2hpbmcgdGhlIGdpdmVuIHJlZ2V4XG4iCkBAIC0yMDU4MSwyMTcgKzI0MTY2LDg5IEBACiAiSiAtIGRlamFyIGVzdGUgaHVuayBwb3IgZGVmaW5pciwgdmVyIHNpZ3VpZW50ZSBodW5rXG4iCiAiayAtIGRlamFyIGVzdGUgaHVuayBwb3IgZGVmaW5pciwgdmVyIGh1bmsgcHJldmlvIHBvciBkZWZpbmlyXG4iCiAiSyAtIGRlamFyIGVzdGUgaHVuayBwb3IgZGVmaW5pciwgdmVyIGh1bmsgcHJldmlvXG4iCi0icyAtIGRpdmlkaXIgZWwgIGh1bmsgYWN0dWFsIGVuIGh1bmtzIG1hcyBwZXF1ZcOxb3NcbiIKKyJzIC0gZGl2aWRpciBlbCAgaHVuayBhY3R1YWwgZW4gaHVua3MgbcOhcyBwZXF1ZcOxb3NcbiIKICJlIC0gZWRpdGFyIG1hbnVhbG1lbnRlIGVsIGh1bmsgYWN0dWFsXG4iCiAiPyAtIGltcHJpbWlyIGF5dWRhXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQyCiBtc2dpZCAiVGhlIHNlbGVjdGVkIGh1bmtzIGRvIG5vdCBhcHBseSB0byB0aGUgaW5kZXghXG4iCi1tc2dzdHIgIkxvcyBodW5rcyBzZWxlY2Npb25hZG9zIG5vIGFwbGljYW4gYWwgw61uZGljZSFcbiIKK21zZ3N0ciAiwqFMb3MgaHVua3Mgc2VsZWNjaW9uYWRvcyBubyBhcGxpY2FuIGFsIMOtbmRpY2UhXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwNQotbXNnaWQgIkFwcGx5IHRoZW0gdG8gdGhlIHdvcmt0cmVlIGFueXdheT8gIgotbXNnc3RyICJBcGxpY2FybG9zIGFsIMOhcmJvbCBkZSB0cmFiYWpvIGRlIHRvZGFzIG1hbmVyYXM/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzA4Ci1tc2dpZCAiTm90aGluZyB3YXMgYXBwbGllZC5cbiIKLW1zZ3N0ciAiTmFkYSBmdWUgYXBsaWNhZG8uXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMxOQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzU3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIHVubWVyZ2VkOiAlc1xuIgogbXNnc3RyICJpZ25vcmFuZG8gbG8gbm8gZnVzaW9uYWRvOiAlc1xuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMjgKLW1zZ2lkICJPbmx5IGJpbmFyeSBmaWxlcyBjaGFuZ2VkLlxuIgotbXNnc3RyICJTb2xvIGNhbWJpYXJvbiBhcmNoaXZvcyBiaW5hcmlvcy5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzMwCi1tc2dpZCAiTm8gY2hhbmdlcy5cbiIKLW1zZ3N0ciAiU2luIGNhbWJpb3MuXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMzOAotbXNnaWQgIlBhdGNoIHVwZGF0ZSIKLW1zZ3N0ciAiQWN0dWFsaXphY2nDs24gZGVsIHBhcmNoZSIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjgKICMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkNhbWJpbyBkZSBtb2RvIGRlIHN0YWdlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLCv0FwbGljYXIgY2FtYmlvIGRlIG1vZG8gcGFyYSBlbCDDoXJib2wgZGUgdHJhYmFqbyBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjkKICMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkFwbGljYXIgc3RhZ2UgYWwgYm9ycmFkbyBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ2lkICJBcHBseSBkZWxldGlvbiB0byB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiwr9BcGxpY2FyIGJvcnJhZG8gYWwgw6FyYm9sIGRlIHRyYWJham8gW3ksbixxLGEsZCVzLD9dPyAiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5MgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDcwCiAjLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiQXBsaWNhciBzdGFnZSBhIGVzdGUgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIsK/QXBsaWNhciBlc3RlIGh1bmsgYWwgw6FyYm9sIGRlIHRyYWJham8gW3ksbixxLGEsZCwvJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzk1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YXNoIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJBcGxpY2FyIHN0YXNoIGFsIGNhbWJpbyBkZSBtb2RvIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTYKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3Rhc2ggZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkFwbGljYXIgc3Rhc2ggYWwgYm9ycmFkbyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzk3Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YXNoIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiQXBsaWNhciBzdGFzaCBhIGVzdGUgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAwCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlVuc3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIlNhY2FyIGNhbWJpbyBkZSBtb2RvIGRlbCBzdGFnZSBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAxCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlVuc3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIlNhY2FyIGJvcnJhZG8gZGVsIHN0YWdlIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiVW5zdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIlNhY2FyIGVzdGUgaHVuayBkZWwgc3RhZ2UgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwNQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiQXBsaWNhciBjYW1iaW8gZGUgbW9kbyBhbCDDrW5kaWNlIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDYKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkFwbGljYXIgYm9ycmFkbyBhbCDDrW5kaWNlIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDcKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJBcGxpY2FyIGVzdGUgaHVuayBhbCDDrW5kaWNlIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTAKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJEZXNjYXJ0YXIgY2FtYmlvIGRlIG1vZG8gZGVsIMOhcmJvbCBkZSB0cmFiYWpvIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTEKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCBkZWxldGlvbiBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJEZXNjYXJ0YXIgYm9ycmFkbyBkZWwgw6FyYm9sIGRlIHRyYWJham8gW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxMgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJEZXNjYXJ0YXIgZXN0ZSBodW5rIGRlbCDDoXJib2wgZGUgdHJhYmFqbyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLSJEZXNjYXJ0YXIgY2FtYmlvIGRlIG1vZG8gZGVsIMOtbmRpY2UgeSBlbCDDoXJib2wgZGUgdHJhYmFqbyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE2Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkRlc2NhcnRhciBib3JyYWRvIGRlbCDDrW5kaWNlIHkgZWwgw6FyYm9sIGRlIHRyYWJham8gW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxNwotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiRGVzY2FydGFyIGVzdGUgaHVuayBkZWwgw61uZGljZSB5IGVsIMOhcmJvbCBkZSB0cmFiYWpvIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjAKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICIiCi0iQXBsaWNhciBjYW1iaW8gZGUgbW9kbyBwYXJhIGVsIMOtbmRpY2UgeSBlbCDDoXJib2wgZGUgdHJhYmFqbyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDIxCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiQXBsaWNhciBib3JyYWRvIGFsIMOtbmRpY2UgeSBhbCDDoXJib2wgZGUgdHJhYmFqbyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDIyCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkFwbGljYXIgZXN0ZSBodW5rIGFsIMOtbmRpY2UgeSDDoXJib2wgZGUgdHJhYmFqbyBbeSxuLHEsYSxkLC8lcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MjIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3MAogbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIGdvdG9cbiIKIG1zZ3N0ciAiTm8gaGF5IG3DoXMgcGVkYXpvcyBwYXJhIGVsIGlyXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTUyOQotbXNnaWQgImdvIHRvIHdoaWNoIGh1bmsgKDxyZXQ+IHRvIHNlZSBtb3JlKT8gIgotbXNnc3RyICJhIHF1ZSBodW5rIGlyICg8ZW50ZXI+IHBhcmEgdmVyIG1hcyk/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTMxCi1tc2dpZCAiZ28gdG8gd2hpY2ggaHVuaz8gIgotbXNnc3RyICJhIHF1ZSBodW5rIGlyPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU0MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTg4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkludmFsaWQgbnVtYmVyOiAnJXMnXG4iCiBtc2dzdHIgIk51bWVybyBpbnbDoWxpZG86ICclcydcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQ1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1OTMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU29ycnksIG9ubHkgJWQgaHVuayBhdmFpbGFibGUuXG4iCiBtc2dpZF9wbHVyYWwgIlNvcnJ5LCBvbmx5ICVkIGh1bmtzIGF2YWlsYWJsZS5cbiIKIG1zZ3N0clswXSAiTG8gc2llbnRvLCBzb2xvICVkIGh1bmsgZGlzcG9uaWJsZS5cbiIKIG1zZ3N0clsxXSAiTG8gc2llbnRvLCBzb2xvICVkIGh1bmtzIGRpc3BvbmlibGVzLlxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzEKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxOQogbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIHNlYXJjaFxuIgogbXNnc3RyICJObyBoYXkgbcOhcyBwZWRhem9zIHBhcmEgYnVzY2FyXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3NQotbXNnaWQgInNlYXJjaCBmb3IgcmVnZXg/ICIKLW1zZ3N0ciAiYnVzY2FyIHBhcmEgcmVnZXhwPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU4OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjM2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIk1hbGZvcm1lZCBzZWFyY2ggcmVnZXhwICVzOiAlc1xuIgogbXNnc3RyICJSZWdleHAgcGFyYSBsYSBiw7pzcXVlZGEgbWFsIGZvcm1hZG8gJXM6ICVzXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU5OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjQ2CiBtc2dpZCAiTm8gaHVuayBtYXRjaGVzIHRoZSBnaXZlbiBwYXR0ZXJuXG4iCiBtc2dzdHIgIk5vIGhheSBodW5rcyBxdWUgY29uY3VlcmRlbiBjb24gZWwgcGF0csOzbiBlbnRyZWdhZG8uXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxMCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MzIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY1OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2ODAKIG1zZ2lkICJObyBwcmV2aW91cyBodW5rXG4iCiBtc2dzdHIgIk5vIGVsIGFudGVyaW9yIGh1bmtcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjE5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYzOAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjY3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY4NgogbXNnaWQgIk5vIG5leHQgaHVua1xuIgogbXNnc3RyICJObyBlbCBzaWd1aWVudGUgaHVua1xuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NDQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY5MgogbXNnaWQgIlNvcnJ5LCBjYW5ub3Qgc3BsaXQgdGhpcyBodW5rXG4iCiBtc2dzdHIgIlBlcmTDs24sIG5vIHNlIHB1ZWRlIGRpdmlkaXIgZXN0ZSBwZWRhem9cbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjUwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2OTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU3BsaXQgaW50byAlZCBodW5rLlxuIgogbXNnaWRfcGx1cmFsICJTcGxpdCBpbnRvICVkIGh1bmtzLlxuIgogbXNnc3RyWzBdICJDb3J0YXIgZW4gJWQgaHVuay5cbiIKIG1zZ3N0clsxXSAiQ29ydGFyIGVuICAlZCBodW5rcy5cbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjYwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MDgKIG1zZ2lkICJTb3JyeSwgY2Fubm90IGVkaXQgdGhpcyBodW5rXG4iCiBtc2dzdHIgIlBlcmTDs24sIG5vIHNlIHB1ZWRlIGVkaXRhciBlc3RlIHBlZGF6b1xuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MDYKLW1zZ2lkICJSZXZpZXcgZGlmZiIKLW1zZ3N0ciAiUmV2aXNpw7NuIGRlICBkaWZmIgotCiAjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGRvIG5vdCB0cmFuc2xhdGUgdGhlIGNvbW1hbmQgbmFtZXMKICMuICdzdGF0dXMnLCAndXBkYXRlJywgJ3JldmVydCcsIGV0Yy4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcyNQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzczCiBtc2dpZCAiIgogInN0YXR1cyAgICAgICAgLSBzaG93IHBhdGhzIHdpdGggY2hhbmdlc1xuIgogInVwZGF0ZSAgICAgICAgLSBhZGQgd29ya2luZyB0cmVlIHN0YXRlIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXNcbiIKQEAgLTIwODExLDE4ICsyNDI2OCwxOSBAQAogImFkZCB1bnRyYWNrZWQgLSBhZ3JlZ2EgY29udGVuaWRvcyBkZSBhcmNoaXZvcyBubyByYXN0cmVhZG9zIGFsIGdydXBvIGRlICIKICJjYW1iaW9zIGRlbCBhcmVhIGRlIHN0YWdlXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc0MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NDcKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NTcKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2MSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjcKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MDUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgwOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MTUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MjUKIG1zZ2lkICJtaXNzaW5nIC0tIgogbXNnc3RyICJmYWx0YSAtLSIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzYzCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MjEKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAidW5rbm93biAtLXBhdGNoIG1vZGU6ICVzIgogbXNnc3RyICJtb2RvIC0tcGF0Y2ggZGVzY29ub2NpZG86ICVzIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzc1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MjcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODMzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImludmFsaWQgYXJndW1lbnQgJXMsIGV4cGVjdGluZyAtLSIKIG1zZ3N0ciAiYXJndW1lbnRvIGludsOhbGlkbyAlcywgc2UgZXNwZXJhYmEgLS0iCkBAIC0yMDgzNSwzMSArMjQyOTMsMzEgQEAKIG1zZ2lkICJsb2NhbCB0aW1lIG9mZnNldCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMjQgaG91cnNcbiIKIG1zZ3N0ciAiZWwgb2Zmc2V0IGRlbCB0aWVtcG8gbG9jYWwgZXMgbWF5b3IgbyBpZ3VhbCBhIDI0IGhvcmFzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjE5IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjI1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjIyMyBnaXQtc2VuZC1lbWFpbC5wZXJsOjIyOQogbXNnaWQgInRoZSBlZGl0b3IgZXhpdGVkIHVuY2xlYW5seSwgYWJvcnRpbmcgZXZlcnl0aGluZyIKIG1zZ3N0ciAiZWwgZWRpdG9yIHNlIGNlcnJvIGluYXByb3BpYWRhbWVudGUsIGFib3J0YW5kbyB0b2RvIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMwMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDozMTAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogIiclcycgY29udGFpbnMgYW4gaW50ZXJtZWRpYXRlIHZlcnNpb24gb2YgdGhlIGVtYWlsIHlvdSB3ZXJlIGNvbXBvc2luZy5cbiIKIG1zZ3N0ciAiIgogIiclcycgY29udGllbmUgdW5hIHZlcnNpw7NuIGludGVybWVkaWEgZGVsIGNvcnJlbyBxdWUgc2UgZXN0YWJhIGdlbmVyYW5kby5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMDcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzE1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiclcy5maW5hbCcgY29udGFpbnMgdGhlIGNvbXBvc2VkIGVtYWlsLlxuIgogbXNnc3RyICInJXMuZmluYWwnIGNvbnRpZW5lIGVsIGVtYWlsIGdlbmVyYWRvLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMyNgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo0MDgKIG1zZ2lkICItLWR1bXAtYWxpYXNlcyBpbmNvbXBhdGlibGUgd2l0aCBvdGhlciBvcHRpb25zXG4iCiBtc2dzdHIgIi0tZHVtcC1hbGlhc2VzIG5vIGVzIGNvbXBhdGlibGUgY29uIG90cmFzIG9wY2lvbmVzLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjM5NSBnaXQtc2VuZC1lbWFpbC5wZXJsOjY1MAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo0ODEgZ2l0LXNlbmQtZW1haWwucGVybDo2ODMKIG1zZ2lkICJDYW5ub3QgcnVuIGdpdCBmb3JtYXQtcGF0Y2ggZnJvbSBvdXRzaWRlIGEgcmVwb3NpdG9yeVxuIgogbXNnc3RyICJObyBzZSBwdWVkZSBlamVjdXRhciBnaXQgZm9ybWF0LXBhdGNoIGRlc2RlIGZ1ZXJhIGRlbCByZXBvc2l0b3Jpby5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozOTgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDg0CiBtc2dpZCAiIgogImBiYXRjaC1zaXplYCBhbmQgYHJlbG9naW5gIG11c3QgYmUgc3BlY2lmaWVkIHRvZ2V0aGVyICh2aWEgY29tbWFuZC1saW5lIG9yICIKICJjb25maWd1cmF0aW9uIG9wdGlvbilcbiIKQEAgLTIwODY3LDM3ICsyNDMyNSwzNyBAQAogImBiYXRjaC1zaXplYCB5IGByZWxvZ2luYCBkZWJlbiBzZXIgZXNwZWNpZmljYWRvcyBqdW50b3MgKHZpYSBsYSBsw61uZWEgZGUgIgogImNvbWFuZG8gbyBwb3Igb3BjacOzbiBkZSBjb25maWd1cmFjacOzbilcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo0NjgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDk3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlVua25vd24gLS1zdXBwcmVzcy1jYyBmaWVsZDogJyVzJ1xuIgogbXNnc3RyICJDYW1wbyAtLXN1cHByZXNzLWNjIGRlc2Nvbm9jaWRvOiAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDk3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJVbmtub3duIC0tY29uZmlybSBzZXR0aW5nOiAnJXMnXG4iCiBtc2dzdHIgIkNvbmZpZ3VyYWNpw7NuIC0tY29uZmlybSBkZXNjb25vY2lkYTogJyVzJ1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NTYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogc2VuZG1haWwgYWxpYXMgd2l0aCBxdW90ZXMgaXMgbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAicGVsaWdybzogYWxpYXMgZGUgc2VuZG1haWwgIGNvbiBjb21pbGxhcyBubyBlcyBzb3BvcnRhZG86ICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTI3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU1OAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ3YXJuaW5nOiBgOmluY2x1ZGU6YCBub3Qgc3VwcG9ydGVkOiAlc1xuIgogbXNnc3RyICJwZWxpZ3JvOiBgOmluY2x1ZGU6YCBubyBzb3BvcnRhZG86ICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTI5CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU2MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ3YXJuaW5nOiBgL2ZpbGVgIG9yIGB8cGlwZWAgcmVkaXJlY3Rpb24gbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAiYWR2ZXJ0ZW5jaWE6IHJlZGlyZWNjacOzbiBgL2ZpbGVgIG8gYHxwaXBlYCBubyBzb3BvcnRhZGEgOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUzNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NjUKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogc2VuZG1haWwgbGluZSBpcyBub3QgcmVjb2duaXplZDogJXNcbiIKIG1zZ3N0ciAiYWR2ZXJ0ZW5jaWE6IGzDrW5lYSBzZW5kbWFpbCBubyByZWNvbm9jaWRhOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjYxNgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NDkKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogIkZpbGUgJyVzJyBleGlzdHMgYnV0IGl0IGNvdWxkIGFsc28gYmUgdGhlIHJhbmdlIG9mIGNvbW1pdHNcbiIKQEAgLTIwOTEyLDEyICsyNDM3MCwxMiBAQAogIiAgICAqIERpY2llbmRvIFwiLi8lc1wiIHNpIHNlIHF1aWVyZSBkZWNpciB1biBhcmNoaXZvOyBvXG4iCiAiICAgICogQWdyZWdhbmRvIGxhIG9wY2nDs24gLS1mb3JtYXQtcGF0Y2ggc2kgc2UgcXVpZXJlIGRlY2lyIHVuIHJhbmdvLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjYzNworIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NzAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW5kaXIgJXM6ICVzIgogbXNnc3RyICJGYWxsw7MgYWwgYWJyaXIgZGlyZWN0b3JpbyAlczogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjYxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY5NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiZmF0YWw6ICVzOiAlc1xuIgpAQCAtMjA5MjYsNyArMjQzODQsNyBAQAogImZhdGFsOiAlczogJXNcbiIKICJwZWxpZ3JvOiBubyBzZSBtYW5kYXJvbiBwYXJjaGVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjcyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcwNQogbXNnaWQgIiIKICJcbiIKICJObyBwYXRjaCBmaWxlcyBzcGVjaWZpZWQhXG4iCkBAIC0yMDkzNiwxNyArMjQzOTQsMTcgQEAKICJObyBzZSBlc3BlY2lmaWNhcm9uIHBhcmNoZXMhXG4iCiAiXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Njg1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcxOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJObyBzdWJqZWN0IGxpbmUgaW4gJXM/IgotbXNnc3RyICJObyBoYXkgbMOtbmVhIGRlIHN1YmplY3QgZW4gJXM/IgorbXNnc3RyICLCv05vIGhheSBsw61uZWEgZGUgc3ViamVjdCBlbiAlcz8iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Njk1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcyOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiBmb3Igd3JpdGluZyAlczogJXMiCiBtc2dzdHIgIkZhbGzDsyBhbCBhYnJpciBwYXJhIGVzY3JpdHVyYSAlczogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzA2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjczOQogbXNnaWQgIiIKICJMaW5lcyBiZWdpbm5pbmcgaW4gXCJHSVQ6XCIgd2lsbCBiZSByZW1vdmVkLlxuIgogIkNvbnNpZGVyIGluY2x1ZGluZyBhbiBvdmVyYWxsIGRpZmZzdGF0IG9yIHRhYmxlIG9mIGNvbnRlbnRzXG4iCkBAIC0yMDk1NCwzMyArMjQ0MTIsMzMgQEAKICJcbiIKICJDbGVhciB0aGUgYm9keSBjb250ZW50IGlmIHlvdSBkb24ndCB3aXNoIHRvIHNlbmQgYSBzdW1tYXJ5LlxuIgogbXNnc3RyICIiCi0iTGluZWFzIHF1ZSBjb21pZW56YW4gZW4gXCJHSVQ6XCIgc2Vyw6FuIHJlbW92aWRhcy5cbiIKKyJMaW5lYXMgcXVlIGNvbWllbnphbiBlbiBcIkdJVDpcIiBzZXLDoW4gZWxpbWluYWRhcy5cbiIKICJDb25zaWRlcmUgaW5jbHVpciB1biBkaWZmc3RhdCBnbG9iYWwgbyB1bmEgdGFibGEgZGUgY29udGVuaWRvc1xuIgotInBhcmEgZWwgcGFyY2hlIHF1ZSBlc3TDoSBlc2NyaWJpZW5kby5cbiIKKyJwYXJhIGVsIHBhcmNoZSBxdWUgZXN0w6FzIGVzY3JpYmllbmRvLlxuIgogIlxuIgotIkxpbXBpYXIgZWwgY29udGVuaWRvIGRlIGJvZHkgc2kgdXN0ZWQgbm8gZGVzZWEgbWFuZGFyIHVuIHJlc3VtZW4uXG4iCisiTGltcGlhciBlbCBjb250ZW5pZG8gZGUgYm9keSBzaSBubyBkZXNlYXMgbWFuZGFyIHVuIHJlc3VtZW4uXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzMwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc2MwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiAlczogJXMiCiBtc2dzdHIgIkZhbGzDsyBhbCBhYnJpciAlczogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzQ3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc4MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiAlcy5maW5hbDogJXMiCiBtc2dzdHIgIkZhbGzDsyBhbCBhYnJpciAlcy5maW5hbDogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzkwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjgyMwogbXNnaWQgIlN1bW1hcnkgZW1haWwgaXMgZW1wdHksIHNraXBwaW5nIGl0XG4iCiBtc2dzdHIgIkFyY2hpdm8gZGUgcmVzdW1lbiBlc3TDoSB2YWPDrW8sIHNhbHRhbmRvIGFsIHNpZ3VpZW50ZVxuIgogCiAjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGtlZXAgW3kvTl0gYXMgaXMuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjgyNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo4NTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHVzZSA8JXM+IFt5L05dPyAiCi1tc2dzdHIgIkVzdGEgc2VndXJvIGRlIHF1ZSBkZXNlYSB1c2FyIDwlcz4gW3kvTl0/ICIKK21zZ3N0ciAiwr9Fc3TDoXMgc2VndXJvIGRlIHF1ZSBkZXNlYXMgdXNhciA8JXM+IFt5L05dPyAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODgwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkxMwogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIGZpbGVzIGFyZSA4Yml0LCBidXQgZG8gbm90IGRlY2xhcmUgYSBDb250ZW50LVRyYW5zZmVyLSIKICJFbmNvZGluZy5cbiIKQEAgLTIwOTg4LDExICsyNDQ0NiwxMSBAQAogIkxvcyBzaWd1aWVudGVzIGFyY2hpdm9zIHNvbiA4Yml0LCBwZXJvIG5vIGRlY2xhcmFuIHVuIENvbnRlbnQtVHJhbnNmZXItIgogIkVuY29kaW5nLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjg4NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MTgKIG1zZ2lkICJXaGljaCA4Yml0IGVuY29kaW5nIHNob3VsZCBJIGRlY2xhcmUgW1VURi04XT8gIgotbXNnc3RyICJRdWUgY29kaWZpY2FjacOzbiBkZSA4Yml0IGRlYmVyw61hIGRlY2xhcmFyIFtVVEYtOF0/ICIKK21zZ3N0ciAiwr9RdWUgY29kaWZpY2FjacOzbiBkZSA4Yml0IGRlYmVyw61hIGRlY2xhcmFyIFtVVEYtOF0/ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4OTMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTI2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICJSZWZ1c2luZyB0byBzZW5kIGJlY2F1c2UgdGhlIHBhdGNoXG4iCkBAIC0yMTAwNSwzOSArMjQ0NjMsMzkgQEAKICJ0aWVuZSBlbCB0ZW1wbGF0ZSAgJyoqKiBTVUJKRUNUIEhFUkUgKioqJy4gQWdyZWdhIC0tZm9yY2Ugc2kgcmVhbG1lbnRlIGxvICIKICJkZXNlYXMgbWFuZGFyLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkxMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NDUKIG1zZ2lkICJUbyB3aG9tIHNob3VsZCB0aGUgZW1haWxzIGJlIHNlbnQgKGlmIGFueW9uZSk/IgotbXNnc3RyICJBIHF1aWVuIHNlIGRlYmVuIG1hbmRhciBsb3MgY29ycmVvcyAoc2kgZXhpc3RlKT8iCittc2dzdHIgIsK/QSBxdWllbiBzZSBkZWJlbiBtYW5kYXIgbG9zIGNvcnJlb3MgKHNpIGV4aXN0ZSk/IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkzMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NjMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZmF0YWw6IGFsaWFzICclcycgZXhwYW5kcyB0byBpdHNlbGZcbiIKIG1zZ3N0ciAiZmF0YWw6IGFsaWFzICclcycgc2UgZXhwYW5kZSBhIHNpIG1pc21vXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTQyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjk3NQogbXNnaWQgIk1lc3NhZ2UtSUQgdG8gYmUgdXNlZCBhcyBJbi1SZXBseS1UbyBmb3IgdGhlIGZpcnN0IGVtYWlsIChpZiBhbnkpPyAiCiBtc2dzdHIgIiIKLSJRdcOpIGlkIGRlIG1lbnNhamUgc2Vyw6EgdXNhZG8gY29tbyBFbi1SZXNwdWVzdGEtUGFyYSBlbiBlbCBwcmltZXIgZW1haWwgKHNpICIKKyLCv1F1w6kgaWQgZGUgbWVuc2FqZSBzZXLDoSB1c2FkbyBjb21vIEVuLVJlc3B1ZXN0YS1QYXJhIGVuIGVsIHByaW1lciBlbWFpbCAoc2kgIgogImV4aXN0ZSBhbGd1bm8pPyAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAwMCBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMDgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAzMyBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwNDEKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZXJyb3I6IHVuYWJsZSB0byBleHRyYWN0IGEgdmFsaWQgYWRkcmVzcyBmcm9tOiAlc1xuIgotbXNnc3RyICJlcnJvcjogbm8gZXMgcG9zaWJsZSBleHRyYWVyIHVuYSBkaXJlY2Npw7NuIHZhbGlkYSBkZSAlc1xuIgorbXNnc3RyICJlcnJvcjogbm8gZXMgcG9zaWJsZSBleHRyYWVyIHVuYSBkaXJlY2Npw7NuIHbDoWxpZGEgZGUgJXNcbiIKIAogIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtxXSBbZF0gW2VdIGluIHlvdXIKICMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKICMuIGF0IHRoaXMgcG9pbnQuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMTIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTA0NQogbXNnaWQgIldoYXQgdG8gZG8gd2l0aCB0aGlzIGFkZHJlc3M/IChbcV11aXR8W2Rdcm9wfFtlXWRpdCk6ICIKLW1zZ3N0ciAiUXVlIGhhY2VyIGNvbiBlc3RhIGRpcmVjY2nDs24/IChbcV1zYWxpcnxbZF1ib3RhcnxbZV1kaXRhcik6ICIKK21zZ3N0ciAiwr9RdWUgaGFjZXIgY29uIGVzdGEgZGlyZWNjacOzbj8gKFtxXXNhbGlyfFtkXWJvdGFyfFtlXWRpdGFyKTogIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEzMjkKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTM2MgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJDQSBwYXRoIFwiJXNcIiBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAiUnV0YSBDQSBcIiVzXCIgbm8gZXhpc3RlIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0MTIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ0NQogbXNnaWQgIiIKICIgICAgVGhlIENjIGxpc3QgYWJvdmUgaGFzIGJlZW4gZXhwYW5kZWQgYnkgYWRkaXRpb25hbFxuIgogIiAgICBhZGRyZXNzZXMgZm91bmQgaW4gdGhlIHBhdGNoIGNvbW1pdCBtZXNzYWdlLiBCeSBkZWZhdWx0XG4iCkBAIC0yMTA1Nyw3ICsyNDUxNSw3IEBACiAiICAgIEVzdGUgY29tcG9ydGFtaWVudG8gaXMgY29udHJvbGFkbyBwb3IgZWwgdmFsb3IgZGUgY29uZmlndXJhY2nDs24gIgogInNlbmRlbWFpbC5jb25maXJtLlxuIgogIlxuIgotIiAgICBQYXJhIG1hcyBpbmZvcm1hY2nDs24sIGVqZWN1dGEgJ2dpdCBzZW5kLWVtYWlsIC0taGVscCcuXG4iCisiICAgIFBhcmEgbcOhcyBpbmZvcm1hY2nDs24sIGVqZWN1dGEgJ2dpdCBzZW5kLWVtYWlsIC0taGVscCcuXG4iCiAiICAgIFBhcmEgbWFudGVuZXIgZWwgY29tcG9ydGFtaWVudG8gYWN0dWFsLCBwZXJvIGV2aXRhciBlc3RlIG1lbnNhamUsXG4iCiAiICAgIGVqZWN1dGEgJ2dpdCBjb25maWcgLS1nbG9iYWwgc2VuZGVtYWlsLmNvbmZpcm0gYXV0bycuXG4iCiAiXG4iCkBAIC0yMTA2NSwxNDMgKzI0NTIzLDUwMCBAQAogIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFt5XSBbbl0gW2VdIFtxXSBbYV0gaW4geW91cgogIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAogIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQyNworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDYwCiBtc2dpZCAiU2VuZCB0aGlzIGVtYWlsPyAoW3ldZXN8W25db3xbZV1kaXR8W3FddWl0fFthXWxsKTogIgotbXNnc3RyICJNYW5kYXIgZXN0ZSBlbWFpbD8gKFt5XXNpfHxbbl1vfFtlXWVkaXRhcnxbcV1zYWxpcnxbYV10b2RvKTogIgorbXNnc3RyICLCv01hbmRhciBlc3RlIGVtYWlsPyAoW3ldc2l8fFtuXW98W2VdZWRpdGFyfFtxXXNhbGlyfFthXXRvZG8pOiAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQzMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDYzCiBtc2dpZCAiU2VuZCB0aGlzIGVtYWlsIHJlcGx5IHJlcXVpcmVkIgogbXNnc3RyICJOZWNlc2l0YXMgbWFuZGFyIGVzdGEgcmVzcHVlc3RhIGRlIGVtYWlsIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NTgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ5MQogbXNnaWQgIlRoZSByZXF1aXJlZCBTTVRQIHNlcnZlciBpcyBub3QgcHJvcGVybHkgZGVmaW5lZC4iCiBtc2dzdHIgIkVsIHNlcnZpZG9yIFNNVFAgbm8gZXN0YSBkZWZpbmlkbyBhZGVjdWFkYW1lbnRlLiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTA1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MzgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgU1RBUlRUTFMhICVzIgotbXNnc3RyICJFbCBzZXJ2aWRvciBubyBzb3BvcnRhIFNUQVJUVExTISAlcyIKK21zZ3N0ciAiwqFFbCBzZXJ2aWRvciBubyBzb3BvcnRhIFNUQVJUVExTISAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTEwIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUxNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTVEFSVFRMUyBmYWlsZWQhICVzIgotbXNnc3RyICJGYWxsw7MgU1RBUlRUTFMhICVzIgorbXNnc3RyICLCoUZhbGzDsyBTVEFSVFRMUyEgJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUyMworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTU2CiBtc2dpZCAiVW5hYmxlIHRvIGluaXRpYWxpemUgU01UUCBwcm9wZXJseS4gQ2hlY2sgY29uZmlnIGFuZCB1c2UgLS1zbXRwLWRlYnVnLiIKIG1zZ3N0ciAiIgogIk5vIGVzIHBvc2libGUgaW5pY2lhbGl6YXIgU01UUCBhZGVjdWFkYW1lbnRlLiBWZXJpZmljYXIgY29uZmlnIHkgdXNhciAtLS0iCiAic210cC1kZWJ1Zy4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBzZW5kICVzXG4iCiBtc2dzdHIgIkZhbGzDsyBhbCBlbnZpYXIgJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRHJ5LVNlbnQgJXNcbiIKIG1zZ3N0ciAiRHJ5LVNlbnQgJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU2VudCAlc1xuIgogbXNnc3RyICJFbnZpYWRvICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CiBtc2dpZCAiRHJ5LU9LLiBMb2cgc2F5czpcbiIKIG1zZ3N0ciAiRHJ5LU9LLiBMb2cgZGljZTpcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzkKIG1zZ2lkICJPSy4gTG9nIHNheXM6XG4iCiBtc2dzdHIgIk9LLiBMb2cgZGljZTpcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTU4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1OTEKIG1zZ2lkICJSZXN1bHQ6ICIKIG1zZ3N0ciAiUmVzdWx0YWRvOiAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU2MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTk0CiBtc2dpZCAiUmVzdWx0OiBPS1xuIgogbXNnc3RyICJSZXN1bHRhZG86IE9LXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3OQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjEyCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImNhbid0IG9wZW4gZmlsZSAlcyIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgYWJyaXIgZWwgYXJjaGl2byAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjI2IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjU5IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY3OQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIobWJveCkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIobWJveCkgQWdyZWdhbmRvIGNjOiAlcyBkZSBsw61uZWEgJyVzJ1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MzIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY2NQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIobWJveCkgQWRkaW5nIHRvOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIobWJveCkgQWdyZWdhbmRvIHBhcmE6ICVzIGRlIGxhIGzDrW5lYSAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY4NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzE4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihub24tbWJveCkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIobm9uLW1ib3gpIEFncmVnYW5kbyBjYzogJXMgZGUgbGEgbMOtbmVhICclcydcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzIwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE3NTMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKGJvZHkpIEFkZGluZyBjYzogJXMgZnJvbSBsaW5lICclcydcbiIKIG1zZ3N0ciAiKGJvZHkpIEFncmVnYW5kbyBjYzogJXMgZGUgbGEgbMOtbmVhICclcydcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODMxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NjQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKCVzKSBDb3VsZCBub3QgZXhlY3V0ZSAnJXMnIgogbXNnc3RyICIoJXMpIG5vIHNlIHB1ZG8gZWplY3V0YXIgJyVzJyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODM4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NzEKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKCVzKSBBZGRpbmcgJXM6ICVzIGZyb206ICclcydcbiIKIG1zZ3N0ciAiKCVzKSBBZ3JlZ2FuZG8gJXM6ICVzIGRlOiAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg0MgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODc1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiglcykgZmFpbGVkIHRvIGNsb3NlIHBpcGUgdG8gJyVzJyIKIG1zZ3N0ciAiKCVzKSBmYWxsw7MgYWwgY2VycmFyIGVsIHBpcGUgcGFyYSAnJXMnIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NzIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkwNQogbXNnaWQgImNhbm5vdCBzZW5kIG1lc3NhZ2UgYXMgN2JpdCIKIG1zZ3N0ciAibm8gc2UgcHVlZGUgbWFuZGFyIG1lbnNhamUgY29tbyA3Yml0IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4ODAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkxMwogbXNnaWQgImludmFsaWQgdHJhbnNmZXIgZW5jb2RpbmciCiBtc2dzdHIgImNvZGlmaWNhY2nDs24gZGUgdHJhbnNmZXJlbmNpYSBpbnbDoWxpZGEiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkyMSBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NzMgZ2l0LXNlbmQtZW1haWwucGVybDoxOTgzCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NTQgZ2l0LXNlbmQtZW1haWwucGVybDoyMDA2IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjAxNgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlczogJXNcbiIKIG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBhYnJpciAlczogJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTI0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NTcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiJXM6IHBhdGNoIGNvbnRhaW5zIGEgbGluZSBsb25nZXIgdGhhbiA5OTggY2hhcmFjdGVycyIKLW1zZ3N0ciAiJXM6IGVsIHBhcmNoZSBjb250aWVuZSB1bmEgbMOtbmVhIGNvbiBtYXMgZGUgOTk4IGNhcmFjdGVyZXMiCittc2dzdHIgIiVzOiBlbCBwYXJjaGUgY29udGllbmUgdW5hIGzDrW5lYSBjb24gbcOhcyBkZSA5OTggY2FyYWN0ZXJlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTQxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NzQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU2tpcHBpbmcgJXMgd2l0aCBiYWNrdXAgc3VmZml4ICclcycuXG4iCiBtc2dzdHIgIlNhbHRhbmRvICVzIGNvbiBlbCBzdWZpam8gZGUgYmFja3VwICclcycuXG4iCiAKICMuIFRSQU5TTEFUT1JTOiBwbGVhc2Uga2VlcCAiW3l8Tl0iIGFzIGlzLgotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTQ1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NzgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRG8geW91IHJlYWxseSB3YW50IHRvIHNlbmQgJXM/IFt5fE5dOiAiCi1tc2dzdHIgIlJlYWxtZW50ZSBkZXNlYXMgbWFuZGFyICVzP1t5fE5dOiAiCittc2dzdHIgIsK/UmVhbG1lbnRlIGRlc2VhcyBtYW5kYXIgJXM/W3l8Tl06ICIKKworIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJTdGFnZSBtb2RlIGNoYW5nZSBbeSxuLGEscSxkJXMsP10/ICIKKyN+IG1zZ3N0ciAiwr9DYW1iaW8gZGUgbW9kbyBkZSBzdGFnZSBbeSxuLGEscSxkJXMsP10/ICIKKworIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJTdGFnZSBkZWxldGlvbiBbeSxuLGEscSxkJXMsP10/ICIKKyN+IG1zZ3N0ciAiwr9BcGxpY2FyIHN0YWdlIGFsIGJvcnJhZG8gW3ksbixhLHEsZCVzLD9dPyAiCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAiU3RhZ2UgdGhpcyBodW5rIFt5LG4sYSxxLGQlcyw/XT8gIgorI34gbXNnc3RyICLCv0FwbGljYXIgc3RhZ2UgYSBlc3RlIGh1bmsgW3ksbixhLHEsZCVzLD9dPyAiCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKKyN+ICJtYXJrZWQgZm9yIHN0YWdpbmcuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJTaSBlbCBwYXJjaGUgYXBsaWNhIGxpbXBpYW1lbnRlLCBlbCBodW5rIGVkaXRhZG8gc2VyYSBtYXJjYWRvXG4iCisjfiAiaW5tZWRpYXRhbWVudGUgcGFyYSBlbCDDoXJlYSBkZSBzdGFnZS5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCisjfiAibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKKyN+ICJxIC0gcXVpdDsgZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisjfiAiYSAtIHN0YWdlIHRoaXMgYW5kIGFsbCB0aGUgcmVtYWluaW5nIGh1bmtzXG4iCisjfiAiZCAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgbm9yIGFueSBvZiB0aGUgcmVtYWluaW5nIGh1bmtzXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJ5IC0gYXBsaWNhciBzdGFnZSBhIGVzdGUgaHVua1xuIgorI34gIm4gLSBubyBhcGxpY2FyIHN0YWdlIGEgZXN0ZSBodW5rXG4iCisjfiAicSAtIHF1aXQ7IG5vIGFwbGljYXIgc3RhZ2UgYSBlc3RlIGh1bmsgbyBuaW5ndW5vIGRlIGxvcyByZXN0YW50ZXNcbiIKKyN+ICJhIC0gYXBsaWNhciBzdGFnZSBhIGVzdGUgaHVuayB5IGEgdG9kb3MgbG9zIHBvc3RlcmlvcmVzIGVuIGVsIGFyY2hpdm8gXG4iCisjfiAiZCAtIG5vIGFwbGljYXIgc3RhZ2UgYSBlc3RlIGh1bmsgbyBhIG5pbmd1bm8gZGUgbG9zIHBvc3RlcmlvcmVzIGVuIGVzdGUgIgorI34gImFyY2hpdm9cbiIKKworIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcycuIgorI34gbXNnc3RyICJubyBzZSBwdWRvIGNvcGlhciAnJXMnIGEgJyVzJy4iCisKKyN+IG1zZ2lkICJtYWxmb3JtZWQgaWRlbnQgbGluZSIKKyN+IG1zZ3N0ciAibMOtbmVhIGRlIGVudHJhZGEgbWFsIGZvcm1hZGEiCisKKyN+IG1zZ2lkICJjb3JydXB0ZWQgYXV0aG9yIHdpdGhvdXQgZGF0ZSBpbmZvcm1hdGlvbiIKKyN+IG1zZ3N0ciAiYXV0b3IgY29ycnVwdG8gc2luIGluZm9ybWFjacOzbiBkZSBmZWNoYSIKKworIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyUuKnMnIgorI34gbXNnc3RyICJubyBzZSBwdWVkZSBhbmFsaXphciAnJS4qcyciCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAiY291bGQgbm90IGNoZWNrb3V0ICVzIgorI34gbXNnc3RyICJubyBzZSBwdWVkZSBoYWNlciBjaGVja291dCBhICVzIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgImZpbGVuYW1lIGluIHRyZWUgZW50cnkgY29udGFpbnMgYmFja3NsYXNoOiAnJXMnIgorI34gbXNnc3RyICJub21icmUgZGUgYXJjaGl2byBlbiBlbCDDoXJib2wgY29udGllbmUgdW4gYmFja3NsYXNoOiAnJXMnIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIHRoZW0uXG4iCisjfiBtc2dzdHIgIlVzYSAtZiBzaSByZWFsbWVudGUgcXVpZXJlcyBhZ3JlZ2FybG9zLlxuIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgIk1heWJlIHlvdSB3YW50ZWQgdG8gc2F5ICdnaXQgYWRkIC4nP1xuIgorI34gbXNnc3RyICLCv1RhbCB2ZXogcXVpc28gZGVjaXIgJ2dpdCBhZGQgLic/XG4iCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAicGFja2ZpbGUgaXMgaW52YWxpZDogJXMiCisjfiBtc2dzdHIgInBhY2tmaWxlIGVzIGludsOhbGlkbzogJXMiCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gcGFja2ZpbGUgZm9yIHJldXNlOiAlcyIKKyN+IG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBhYnJpciBwYWNrZmlsZSBwYXJhIHJldXNhcjogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc2VlayBpbiByZXVzZWQgcGFja2ZpbGUiCisjfiBtc2dzdHIgIm5vIGVzIHBvc2libGUgYnVzY2FyIGVuIGxvcyBwYWNrZmlsZSByZXVzYWRvcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gcmV1c2VkIHBhY2tmaWxlIgorI34gbXNnc3RyICJubyBlcyBwb3NpYmxlIGxlZXIgZGUgcGFja2ZpbGUgcmV1c2FkbyIKKworI34gbXNnaWQgIm5vIEhFQUQ/IgorI34gbXNnc3RyICLCv1NpbiBIRUFEPyIKKworI34gbXNnaWQgIm1ha2UgY29tbWl0dGVyIGRhdGUgbWF0Y2ggYXV0aG9yIGRhdGUiCisjfiBtc2dzdHIgImhhY2VyIHF1ZSBsYSBmZWNoYSBkZWwgY29tbWl0IGNvbmN1ZXJkZSBjb24gbGEgZmVjaGEgZGUgYXV0b3LDrWEiCisKKyN+IG1zZ2lkICJpZ25vcmUgYXV0aG9yIGRhdGUgYW5kIHVzZSBjdXJyZW50IGRhdGUiCisjfiBtc2dzdHIgImlnbm9yYXIgbGEgZmVjaGEgZGVsIGF1dG9yIHkgdXNhciBsYSBmZWNoYSBhY3R1YWwiCisKKyN+IG1zZ2lkICJzeW5vbnltIG9mIC0tcmVzZXQtYXV0aG9yLWRhdGUiCisjfiBtc2dzdHIgInNpbsOzbmltbyBwYXJhIC0tcmVzZXQtYXV0aG9yLWRhdGUiCisKKyN+IG1zZ2lkICJpZ25vcmUgY2hhbmdlcyBpbiB3aGl0ZXNwYWNlIgorI34gbXNnc3RyICJpZ25vcmFyIGNhbWJpb3MgZW4gZXNwYWNpb3MgZW4gYmxhbmNvIgorCisjfiBtc2dpZCAicHJlc2VydmUgZW1wdHkgY29tbWl0cyBkdXJpbmcgcmViYXNlIgorI34gbXNnc3RyICJwcmVzZXJ2YXIgY29tbWl0cyB2YWPDrW9zIGR1cmFudGUgZWwgcmViYXNlIgorCisjfiBtc2dpZCAiY2Fubm90IGNvbWJpbmUgLS11c2UtYml0bWFwLWluZGV4IHdpdGggb2JqZWN0IGZpbHRlcmluZyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgY29tYmluYXIgLS11c2UtYml0bWFwLWluZGV4IGNvbiBvYmpldG9zIGRlIGZpbHRyYWRvIgorCisjLCBzaC1mb3JtYXQKKyN+IG1zZ2lkICIiCisjfiAiVGhlIGZvbGxvd2luZyBwYXRoIGlzIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczpcbiIKKyN+ICIkc21fcGF0aFxuIgorI34gIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIGl0LiIKKyN+IG1zZ3N0ciAiIgorI34gIkxhIHNpZ3VpZW50ZSBydXRhIGVzIGlnbm9yYWRhIHBvciB1bm8gZGUgdHVzIGFyY2hpdm9zIC5naXRpZ25vcmU6XG4iCisjfiAiJHNtX3BhdGhcbiIKKyN+ICJVc2EgLWYgc2kgZW4gdmVyZGFkIHF1aWVyZXMgYWdyZWdhcmxvLiIKKworIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHRyZWUgZm9yICVzIgorI34gbXNnc3RyICJubyBzZSBwdWRvIG9idGVuZXIgw6FyYm9sIHBhcmEgJXMiCisKKyN+IG1zZ2lkICJVc2UgYW4gZXhwZXJpbWVudGFsIGhldXJpc3RpYyB0byBpbXByb3ZlIGRpZmZzIgorI34gbXNnc3RyICJVc2FyIHVuIGhldXLDrXN0aWNvIGV4cGVyaW1lbnRhbCBwYXJhIG1lam9yYXIgbG9zIGRpZmZzIgorCisjfiBtc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKKyN+IG1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKKworI34gbXNnaWQgImdpdCBjb21taXQtZ3JhcGggcmVhZCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKKyN+IG1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCByZWFkIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgorCisjfiBtc2dpZCAidW5rbm93biBjb3JlLnVudHJhY2tlZENhY2hlIHZhbHVlICclcyc7IHVzaW5nICdrZWVwJyBkZWZhdWx0IHZhbHVlIgorI34gbXNnc3RyICIiCisjfiAidmFsb3IgY29yZS51bnRyYWNrZWRDYWNoZSAnJXMnIGRlc2Nvbm9jaWRvOyB1c2FuZG8gJ2tlZXAnIGNvbW8gdmFsb3IgcG9yICIKKyN+ICJkZWZlY3RvIgorCisjfiBtc2dpZCAiY2Fubm90IGNoYW5nZSBwYXJ0aWFsIGNsb25lIHByb21pc29yIHJlbW90ZSIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgY2FtYmlhciB1biBjbG9uIHBhcmNpYWwgcmVtb3RvIHByb21pc29yIgorCisjfiBtc2dpZCAiZXJyb3IgYnVpbGRpbmcgdHJlZXMiCisjfiBtc2dzdHIgImVycm9yIGNvbnN0cnV5ZW5kbyDDoXJib2xlcyIKKworI34gbXNnaWQgImludmFsaWQgZGF0ZSBmb3JtYXQgJyVzJyBpbiAnJXMnIgorI34gbXNnc3RyICJmb3JtYXRvIGRlIGZlY2hhIGludsOhbGlkbyAnJXMnIGVuICclcyciCisKKyN+IG1zZ2lkICJ3cml0aW5nIHJvb3QgY29tbWl0IgorI34gbXNnc3RyICJlc2NyaWJpZW5kbyBjb21taXQgcmHDrXoiCisKKyN+IG1zZ2lkICJzdGFnZWQgY2hhbmdlcyBpbiB0aGUgZm9sbG93aW5nIGZpbGVzIG1heSBiZSBsb3N0OiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gImNhbWJpb3MgZW4gZWwgw6FyZWEgZGUgc3RhZ2UgZW4gZWwgc2lndWllbnRlIGFyY2hpdm8gcHVlZGVuIHNlciBwZXJkaWRvczogIgorI34gIiVzIgorCisjfiBtc2dpZCAiIgorI34gIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gZXh0ZW5zaW9ucy4iCisjfiAicGFydGlhbENsb25lIgorI34gbXNnc3RyICIiCisjfiAiLS1maWx0ZXIgc29sbyBwdWVkZSBzZXIgdXNhZG8gY29uIGVsIHJlbW90byBjb25maWd1cmFkbyBlbiBleHRlbnNpb25zLiIKKyN+ICJwYXJ0aWFsQ2xvbmUiCisKKyN+IG1zZ2lkICJ2ZXJpZnkgY29tbWl0LW1zZyBob29rIgorI34gbXNnc3RyICJ2ZXJpZmljYXIgZWwgaG9vayBjb21taXQtbXNnIgorCisjfiBtc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneS1vcHRpb24nIgorI34gbXNnc3RyICJubyBzZSBwdWVkZSBjb21iaW5hciAnLS1yZWJhc2UtbWVyZ2VzJyBjb24gJy0tc3RyYXRlZ3ktb3B0aW9uJyIKKworI34gbXNnaWQgImludmFsaWQgc3BhcnNlIHZhbHVlICclcyciCisjfiBtc2dzdHIgInZhbG9yIGRpc3BlcnNvIGludsOhbGlkbzogJyVzJyIKKworI34gbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2tfZGV0YWlsZWQiCisjfiBtc2dzdHIgIkVsIHNlcnZpZG9yIHNvcG9ydGEgdWx0aV9hY2tfZGV0YWlsZWQiCisKKyN+IG1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgbm8tZG9uZSIKKyN+IG1zZ3N0ciAiRWwgc2Vydmlkb3Igc29wb3J0YSBuby1kb25lIgorCisjfiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIG11bHRpX2FjayIKKyN+IG1zZ3N0ciAiRWwgc2Vydmlkb3Igc29wb3J0YSBtdWx0aV9hY2siCisKKyN+IG1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgc2lkZS1iYW5kLTY0ayIKKyN+IG1zZ3N0ciAiRWwgc2Vydmlkb3Igc29wb3J0YSBzaWRlLWJhbmQtNjRrIgorCisjfiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIHNpZGUtYmFuZCIKKyN+IG1zZ3N0ciAiRWwgc2Vydmlkb3Igc29wb3J0YSBzaWRlLWJhbmQiCisKKyN+IG1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgYWxsb3ctdGlwLXNoYTEtaW4td2FudCIKKyN+IG1zZ3N0ciAiRWwgc2Vydmlkb3Igc29wb3J0YSBhbGxvdy10aXAtc2hhMS1pbi13YW50IgorCisjfiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIGFsbG93LXJlYWNoYWJsZS1zaGExLWluLXdhbnQiCisjfiBtc2dzdHIgIkVsIHNlcnZpZG9yIHNvcG9ydGEgYWxsb3ctcmVhY2hhYmxlLXNoYTEtaW4td2FudCIKKworI34gbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBvZnMtZGVsdGEiCisjfiBtc2dzdHIgIkVsIHNlcnZpZG9yIHNvcG9ydGEgb2ZzLWRlbHRhIgorCisjfiBtc2dpZCAiKEhFQUQgZGV0YWNoZWQgYXQgJXMpIgorI34gbXNnc3RyICIoSEVBRCBkZXNhY29wbGFkbyBlbiAlcykiCisKKyN+IG1zZ2lkICIoSEVBRCBkZXRhY2hlZCBmcm9tICVzKSIKKyN+IG1zZ3N0ciAiKEhFQUQgZGVzYWNvcGxhZG8gZGUgJXMpIgorCisjfiBtc2dpZCAiQ2hlY2tpbmcgb3V0IGZpbGVzIgorI34gbXNnc3RyICJSZXZpc2FuZG8gYXJjaGl2b3MiCisKKyN+IG1zZ2lkICJjYW5ub3QgYmUgaW50ZXJhY3RpdmUgd2l0aG91dCBzdGRpbiBjb25uZWN0ZWQgdG8gYSB0ZXJtaW5hbC4iCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIHNlciBpbnRlcmFjdGl2byBzaW4gc3RkaW4gY29uZWN0YWRvIGEgdW4gdGVybWluYWwuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHN0YXQgJXNcbiIKKyN+IG1zZ3N0ciAiZmFsbMOzIGFsIGFuYWxpemFyICVzXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgeW91IHdpc2ggdG8gc2tpcCB0aGlzIGNvbW1pdCwgdXNlOlxuIgorI34gIlxuIgorI34gIiAgICBnaXQgcmVzZXRcbiIKKyN+ICJcbiIKKyN+ICJUaGVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB3aWxsIHJlc3VtZSBjaGVycnktcGlja2luZ1xuIgorI34gInRoZSByZW1haW5pbmcgY29tbWl0cy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlNpIHF1aWVyZSBzYWx0YXIgZXN0ZSBjb21taXQsIHVzZTpcbiIKKyN+ICJcbiIKKyN+ICIgICAgZ2l0IHJlc2V0XG4iCisjfiAiXG4iCisjfiAiTHVlZ28gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIGNvbnRpbnVhcmEgZWwgY2hlcnJ5LXBpY2tpbmdcbiIKKyN+ICJwYXJhIGxvcyBjb21taXRzIHJlc3RhbnRlcy5cbiIKKworI34gbXNnaWQgInVucmVjb2duaXplZCB2ZXJiOiAlcyIKKyN+IG1zZ3N0ciAidmVyYm8gbm8gcmVjb25vY2lkbzogJXMiCisKKyN+IG1zZ2lkICJoYXNoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKKyN+IG1zZ3N0ciAidmVyc2nDs24gZGUgaGFzaCAlWCBubyBjb25jdWVyZGEgY29uIHZlcnNpw7NuICVYIgorCisjfiBtc2dpZCAib3B0aW9uICclcycgcmVxdWlyZXMgYSB2YWx1ZSIKKyN+IG1zZ3N0ciAib3BjacOzbiAnJXMnIHJlcXVpZXJlIHVuIHZhbG9yIgorCisjfiBtc2dpZCAiY291bGQgbm90IHRyYW5zZm9ybSB0aGUgdG9kbyBsaXN0IgorI34gbXNnc3RyICJubyBzZSBwdWRvIHRyYW5zZm9ybWFyIGxpc3RhIGRlIHBlbmRpZW50ZXMiCisKKyN+IG1zZ2lkICJkZWZhdWx0IgorI34gbXNnc3RyICJkZWZhdWx0IgorCisjfiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKKyN+IG1zZ3N0ciAiTm8gc2UgcHVkbyBjcmVhciBlbCBkaXJlY3RvcmlvICclcyciCisKKyN+IG1zZ2lkICJhbGxvdyByZXJlcmUgdG8gdXBkYXRlIGluZGV4IHdpdGggcmVzb2x2ZWQgY29uZmxpY3QiCisjfiBtc2dzdHIgInBlcm1pdGlyIHJlcmVyZSBhY3R1YWxpemFyIGluZGV4IGNvbiBjb25mbGljdG9zIHJlc3VlbHRvcyIKKworI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuICVzIgorI34gbXNnc3RyICJubyBzZSBwdWRvIGFicmlyICVzIgorCisjfiBtc2dpZCAiQ291bGQgbm90IG1vdmUgYmFjayB0byAkaGVhZF9uYW1lIgorI34gbXNnc3RyICJObyBzZSBwdWVkZSByZWdyZXNhciBhICRoZWFkX25hbWUiCisKKyN+IG1zZ2lkICIiCisjfiAiSXQgc2VlbXMgdGhhdCB0aGVyZSBpcyBhbHJlYWR5IGEgJHN0YXRlX2Rpcl9iYXNlIGRpcmVjdG9yeSwgYW5kXG4iCisjfiAiSSB3b25kZXIgaWYgeW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgcmViYXNlLiAgSWYgdGhhdCBpcyB0aGVcbiIKKyN+ICJjYXNlLCBwbGVhc2UgdHJ5XG4iCisjfiAiXHQkY21kX2xpdmVfcmViYXNlXG4iCisjfiAiSWYgdGhhdCBpcyBub3QgdGhlIGNhc2UsIHBsZWFzZVxuIgorI34gIlx0JGNtZF9jbGVhcl9zdGFsZV9yZWJhc2VcbiIKKyN+ICJhbmQgcnVuIG1lIGFnYWluLiAgSSBhbSBzdG9wcGluZyBpbiBjYXNlIHlvdSBzdGlsbCBoYXZlIHNvbWV0aGluZ1xuIgorI34gInZhbHVhYmxlIHRoZXJlLiIKKyN+IG1zZ3N0ciAiIgorI34gIlBhcmVjZSBxdWUgeWEgaGF5IHVuIGRpcmVjdG9yaW8gJHN0YXRlX2Rpcl9iYXNlLCB5XG4iCisjfiAibWUgcHJlZ3VudG8gc2kgZXN0w6EgZW4gbWVkaW8gZGUgb3RybyByZWJhc2UuIFNpIGVzZSBlcyBlbCBcbiIKKyN+ICJjYXNvLCBwb3IgZmF2b3IgaW50ZW50ZVxuIgorI34gIlx0JGNtZF9saXZlX3JlYmFzZVxuIgorI34gIlNpIG5vIGVzIGVsIGNhc28sIHBvciBmYXZvclxuIgorI34gIlx0JGNtZF9jbGVhcl9zdGFsZV9yZWJhc2VcbiIKKyN+ICJ5IGVqZWPDunRlbWUgbnVldmFtZW50ZS4gIE1lIGVzdG95IGRldGVuaWVuZG8gZW4gY2FzbyBkZSBxdWUgdGVuZ2FcbiIKKyN+ICJhbGdvIGRlIHZhbG9yIGFow60uIgorCisjfiBtc2dpZCAiIgorI34gImZhdGFsOiBjYW5ub3QgY29tYmluZSBhbSBvcHRpb25zIHdpdGggZWl0aGVyIGludGVyYWN0aXZlIG9yIG1lcmdlIG9wdGlvbnMiCisjfiBtc2dzdHIgIiIKKyN+ICJmYXRhbDogbm8gc2UgcHVlZGUgY29tYmluYXIgb3BjaW9uZXMgYW0gY29uIG9wY2lvbmVzIGludGVyYWN0aXZhcyBvIGRlICIKKyN+ICJtZXJnZSIKKworI34gbXNnaWQgImZhdGFsOiBjYW5ub3QgY29tYmluZSAnLS1zaWdub2ZmJyB3aXRoICctLXByZXNlcnZlLW1lcmdlcyciCisjfiBtc2dzdHIgImZhdGFsOiBubyBzZSBwdWVkZSBjb21iaW5hciAnLS1zaWdub2ZmJyBjb24gJy0tcHJlc2VydmUtbWVyZ2VzJyIKKworI34gbXNnaWQgImZhdGFsOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmViYXNlLW1lcmdlcyciCisjfiBtc2dzdHIgIiIKKyN+ICJmYXRhbDogbm8gc2UgcHVlZGUgY29tYmluYXIgJy0tcHJlc2VydmUtbWVyZ2VzJyBjb24gJy0tcmViYXNlLW1lcmdlcyciCisKKyN+IG1zZ2lkICJmYXRhbDogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneS1vcHRpb24nIgorI34gbXNnc3RyICIiCisjfiAiZmF0YWw6IG5vIHNlIHB1ZWRlIGNvbWJpbmFyICctLXJlYmFzZS1tZXJnZXMnIGNvbiAnLS1zdHJhdGVneS1vcHRpb24nIgorCisjfiBtc2dpZCAiZmF0YWw6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3knIgorI34gbXNnc3RyICJmYXRhbDogbm8gc2UgcHVlZGUgY29tYmluYXIgJy0tcmViYXNlLW1lcmdlcycgY29uICctLXN0cmF0ZWd5JyIKKworI34gbXNnaWQgImludmFsaWQgdXBzdHJlYW0gJyR1cHN0cmVhbV9uYW1lJyIKKyN+IG1zZ3N0ciAidXBzdHJlYW0gaW52w6FsaWRvICckdXBzdHJlYW1fbmFtZSciCisKKyN+IG1zZ2lkICIkb250b19uYW1lOiB0aGVyZSBhcmUgbW9yZSB0aGFuIG9uZSBtZXJnZSBiYXNlcyIKKyN+IG1zZ3N0ciAiJG9udG9fbmFtZTogaGF5IG3DoXMgZGUgdW5hIGJhc2UgZGUgZnVzacOzbiIKKworI34gbXNnaWQgIiRvbnRvX25hbWU6IHRoZXJlIGlzIG5vIG1lcmdlIGJhc2UiCisjfiBtc2dzdHIgIiRvbnRvX25hbWU6IG5vIGhheSBiYXNlIGRlIGZ1c2nDs24iCisKKyN+IG1zZ2lkICJEb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIGNvbW1pdDogJG9udG9fbmFtZSIKKyN+IG1zZ3N0ciAiTm8gYXB1bnRhIGEgdW4gY29tbWl0IHbDoWxpZG86ICRvbnRvX25hbWUiCisKKyN+IG1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICckYnJhbmNoX25hbWUnIgorI34gbXNnc3RyICJmYXRhbDogbm8gZXhpc3RlIGxhIHJhbWEvY29tbWl0OiAnJGJyYW5jaF9uYW1lJyIKKworI34gbXNnaWQgIkNyZWF0ZWQgYXV0b3N0YXNoOiAkc3Rhc2hfYWJicmV2IgorI34gbXNnc3RyICJBdXRvc3Rhc2ggY3JlYWRvOiAkc3Rhc2hfYWJicmV2IgorCisjfiBtc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUuIgorI34gbXNnc3RyICJMYSByYW1hIGFjdHVhbCAkYnJhbmNoX25hbWUgZXN0w6EgYWN0dWFsaXphZGEuIgorCisjfiBtc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgorI34gbXNnc3RyICJSYW1hIGFjdHVhbCAkYnJhbmNoX25hbWUgZXN0w6EgYWN0dWFsaXphZGEsIHJlYmFzZSBmb3J6YWRvLiIKKworI34gbXNnaWQgIkNoYW5nZXMgdG8gJG9udG86IgorI34gbXNnc3RyICJDYW1iaW9zIGhhY2lhICRvbnRvOiIKKworI34gbXNnaWQgIkNoYW5nZXMgZnJvbSAkbWIgdG8gJG9udG86IgorI34gbXNnc3RyICJDYW1iaW9zIGRlc2RlICRtYiBhICRvbnRvOiIKKworI34gbXNnaWQgIkZhc3QtZm9yd2FyZGVkICRicmFuY2hfbmFtZSB0byAkb250b19uYW1lLiIKKyN+IG1zZ3N0ciAiQXZhbmNlIHLDoXBpZG8gZGUgJGJyYW5jaF9uYW1lIGEgJG9udG9fbmFtZS4iCisKKyN+IG1zZ2lkICJGaXJzdCwgcmV3aW5kaW5nIGhlYWQgdG8gcmVwbGF5IHlvdXIgd29yayBvbiB0b3Agb2YgaXQuLi4iCisjfiBtc2dzdHIgIiIKKyN+ICJFbiBwcmltZXIgbHVnYXIsIHJlYm9iaW5hbmRvIEhFQUQgcGFyYSBkZXNwdcOpcyByZXByb2R1Y2lyIHR1cyBjYW1iaW9zICIKKyN+ICJlbmNpbWEgZGUgw6lzdGEuLi4iCisKKyN+IG1zZ2lkICJpZ25vcmluZyB1bmtub3duIGNvbG9yLW1vdmVkLXdzIG1vZGUgJyVzJyIKKyN+IG1zZ3N0ciAiaWdub3JhbmRvIG1vZG8gZGVzY29ub2NpZG8gY29sb3ItbW92ZWQtd3MgJyVzJyIKKworI34gbXNnaWQgIm9ubHkgJ3RyZWU6MCcgaXMgc3VwcG9ydGVkIgorI34gbXNnc3RyICJzb2xvICd0cmVlOjAnIGVzIHNvcG9ydGFkbyIKKworI34gbXNnaWQgIlJlbmFtaW5nICVzIHRvICVzIGFuZCAlcyB0byAlcyBpbnN0ZWFkIgorI34gbXNnc3RyICJSZW5vbWJyYW5kbyAlcyBhICVzIHkgJXMgYSAlcyBtw6FzIGJpZW4iCisKKyN+IG1zZ2lkICJBZGRpbmcgbWVyZ2VkICVzIgorI34gbXNnc3RyICJBZ3JlZ2FyICVzIGZ1c2lvbmFkbyIKKworI34gbXNnaWQgIkludGVybmFsIGVycm9yIgorI34gbXNnc3RyICJFcnJvciBpbnRlcm5vIgorCisjfiBtc2dpZCAibWFpbmxpbmUgd2FzIHNwZWNpZmllZCBidXQgY29tbWl0ICVzIGlzIG5vdCBhIG1lcmdlLiIKKyN+IG1zZ3N0ciAibMOtbmVhIHByaW5jaXBhbCBlc3BlY2lmaWNhZGEgcGVybyBlbCBjb21taXQgJXMgbm8gZXMgdW5hIGZ1c2nDs24uIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHNoYTEgZmlsZW5hbWUgJXMiCisjfiBtc2dzdHIgImluY2FwYXogZGUgZXNjcmliaXIgZWwgbm9tYnJlIGRlIGFyY2hpdm8gc2hhMSAlcyIKKworI34gbXNnaWQgImNhbm5vdCByZWFkIHNoYTFfZmlsZSBmb3IgJXMiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGxlZXIgc2hhMV9maWxlIHBhcmEgJXMiCisKKyN+IG1zZ2lkICIiCisjfiAiZXJyb3I6IGNhbm5vdCBjb21iaW5lIGludGVyYWN0aXZlIG9wdGlvbnMgKC0taW50ZXJhY3RpdmUsIC0tZXhlYywgLS0iCisjfiAicmViYXNlLW1lcmdlcywgLS1wcmVzZXJ2ZS1tZXJnZXMsIC0ta2VlcC1lbXB0eSwgLS1yb290ICsgLS1vbnRvKSB3aXRoIGFtICIKKyN+ICJvcHRpb25zICglcykiCisjfiBtc2dzdHIgIiIKKyN+ICJlcnJvcjogbm8gc2UgcHVlZGUgY29tYmluYXIgb3BjaW9uZXMgaW50ZXJhY3RpdmFzICgtLWludGVyYWN0aXZlLCAtLWV4ZWMsICIKKyN+ICItLXJlYmFzZS1tZXJnZXMsIC0tcHJlc2VydmUtbWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250bykgY29uICIKKyN+ICJvcGNpb25lcyAoJXMpIgorCisjfiBtc2dpZCAiIgorI34gImVycm9yOiBjYW5ub3QgY29tYmluZSBtZXJnZSBvcHRpb25zICgtLW1lcmdlLCAtLXN0cmF0ZWd5LCAtLXN0cmF0ZWd5LSIKKyN+ICJvcHRpb24pIHdpdGggYW0gb3B0aW9ucyAoJXMpIgorI34gbXNnc3RyICIiCisjfiAiZXJyb3I6IG5vIHNlIHB1ZWRlIGNvbWJpbmFyIG9wY2lvbmVzIGRlIG1lcmdlICgtLW1lcmdlLCAtLXN0cmF0ZWd5LCAtLSIKKyN+ICJzdHJhdGVneS1vcHRpb24pIGNvbiBvcGNpb25lcyBkZSBhbSAoJXMpIgorCisjfiBtc2dpZCAidW5yZWNvZ25pc2VkIG9wdGlvbjogJyRhcmcnIgorI34gbXNnc3RyICJvcGNpw7NuIG5vIHJlY29ub2NpZGE6ICckYXJnJyIKKworI34gbXNnaWQgIickaW52YWxpZCcgaXMgbm90IGEgdmFsaWQgY29tbWl0IgorI34gbXNnc3RyICInJGludmFsaWQnIG5vIGVzIHVuIGNvbW1pdCB2w6FsaWRvIgogCiAjfiBtc2dpZCAiY291bGQgbm90IHBhcnNlICclcycgKGxvb2tpbmcgZm9yICclcycpIgogI34gbXNnc3RyICJubyBzZSBwdWRvIGNvbmZpZ3VyYXIgJyVzJyAoYnVzY2FuZG8gJyVzJykiCiAKLSN+IG1zZ2lkICJiYWQgcXVvdGluZyBvbiAlcyB2YWx1ZSBpbiAnJXMnIgotI34gbXNnc3RyICJtYWwgY2l0YWRvIGVuICVzIHZhbG9yIGVuICclcyciCi0KLSN+IG1zZ2lkICJDb3VsZCBub3QgdW5zZXQgY29yZS53b3JrdHJlZSBzZXR0aW5nIGluIHN1Ym1vZHVsZSAnJXMnIgotI34gbXNnc3RyICJObyBzZSBwdWRvIHF1aXRhciBjb25maWd1cmFjacOzbiBjb3JlLndvcmt0cmVlIGVuIHN1Ym3Ds2R1bG8gJyVzJyIKLQogI34gbXNnaWQgImRlcHJlY2F0ZWQgc3lub255bSBmb3IgLS1jcmVhdGUtcmVmbG9nIgogI34gbXNnc3RyICJzaW7Ds25pbW8gZGVwcmVjYWRvIHBhcmEgLS1jcmVhdGUtcmVmbG9nIgogCkBAIC0yMTIyMywxMiArMjUwMzgsNiBAQAogI34gbXNnaWQgImNhbm5vdCByZW1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlIgogI34gbXNnc3RyICJubyBzZSBwdWVkZSBlbGltaW5hciDDoXJib2wgZGUgdHJhYmFqbyBlbmNlcnJhZG8iCiAKLSN+IG1zZ2lkICJBcHBsaWVkIGF1dG9zdGFzaC4iCi0jfiBtc2dzdHIgIkF1dG9zdGFzaCBhcGxpY2Fkby4iCi0KLSN+IG1zZ2lkICJDYW5ub3Qgc3RvcmUgJHN0YXNoX3NoYTEiCi0jfiBtc2dzdHIgIk5vIHNlIHB1ZWRlIGFsbWFjZW5hciAkc3Rhc2hfc2hhMSIKLQogI34gbXNnaWQgIiIKICN+ICJcbiIKICN+ICJcdEhvd2V2ZXIsIGlmIHlvdSByZW1vdmUgZXZlcnl0aGluZywgdGhlIHJlYmFzZSB3aWxsIGJlIGFib3J0ZWQuXG4iCkBAIC0yMTI5Myw3ICsyNTEwMiw3IEBACiAjfiBtc2dzdHIgIkVycm9yIGVuIGVsIG9iamV0byIKIAogI34gbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgRU9GIgotI34gbXNnc3RyICJnaXQgZ2V0Y2gtcGFjazogc2UgZXNwZXJhYmEgQUNLL05BSywgc2Ugb2J0dXZvIEVPRiIKKyN+IG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6IHNlIGVzcGVyYWJhIEFDSy9OQUssIHNlIG9idHV2byBFT0YiCiAKICN+IG1zZ2lkICJpbnZhbGlkIGZpbHRlci1zcGVjIGV4cHJlc3Npb24gJyVzJyIKICN+IG1zZ3N0ciAiZXhwcmVzacOzbiBmaWx0ZXItc3BlYyBpbnbDoWxpZGEgJyVzJyIKQEAgLTIxMzIzLDkgKzI1MTMyLDYgQEAKICN+IG1zZ2lkICJjb3VsZCBub3QgdHJ1bmNhdGUgJyVzJyIKICN+IG1zZ3N0ciAibm8gc2UgcHVkbyB0cnVuY2FyICclcyciCiAKLSN+IG1zZ2lkICJjb3VsZCBub3QgZmluaXNoICclcyciCi0jfiBtc2dzdHIgIm5vIHNlIHB1ZG8gZmluYWxpemFyICclcyciCi0KICN+IG1zZ2lkICJjb3VsZCBub3QgY2xvc2UgJXMiCiAjfiBtc2dzdHIgIm5vIHNlIHB1ZG8gY2VycmFyICVzIgogCkBAIC0yMTMzOCw5ICsyNTE0NCw2IEBACiAjfiBtc2dpZCAiRG9uJ3Qga25vdyBob3cgdG8gY2xvbmUgJXMiCiAjfiBtc2dzdHIgIk5vIHNlIHNhYmUgY29tbyBjbG9uYXIgJXMiCiAKLSN+IG1zZ2lkICJzaG93IGlnbm9yZWQgZmlsZXMiCi0jfiBtc2dzdHIgIm1vc3RyYXIgYXJjaGl2b3MgaWdub3JhZG9zIgotCiAjfiBtc2dpZCAiRG9uJ3Qga25vdyBob3cgdG8gZmV0Y2ggZnJvbSAlcyIKICN+IG1zZ3N0ciAiTm8gc2Ugc2FiZSBjb21vIGV4dHJhZXIgZGUgJXMiCiAKQEAgLTIxMzc5LDkgKzI1MTgyLDYgQEAKICN+IG1zZ2lkICJiYXNlbmFtZSIKICN+IG1zZ3N0ciAibm9tYnJlIGJhc2UiCiAKLSN+IG1zZ2lkICJwcmVwZW5kIHBhcmVudCBwcm9qZWN0J3MgYmFzZW5hbWUgdG8gb3V0cHV0IgotI34gbXNnc3RyICJhbnRlcG9uZXIgZWwgbm9tYnJlIGJhc2UgZGVsIHByb3llY3RvIHBhZHJlIGEgbGEgc2FsaWRhIgotCiAjfiBtc2dpZCAiIgogI34gIldhcm5pbmc6IHRoZSBTSEEtMSBpcyBtaXNzaW5nIG9yIGlzbid0IGEgY29tbWl0IGluIHRoZSBmb2xsb3dpbmcgbGluZTpcbiIKICN+ICIgLSAkbGluZSIKZGlmZiAtLWdpdCBhL3BvL2ZyLnBvIGIvcG8vZnIucG8KaW5kZXggYTIwMDhiNi4uMzE0ZmYzNyAxMDA2NDQKLS0tIGEvcG8vZnIucG8KKysrIGIvcG8vZnIucG8KQEAgLTEsNyArMSw3IEBACiAjIEZyZW5jaCB0cmFuc2xhdGlvbnMgZm9yIEdpdC4KLSMgQ29weXJpZ2h0IChDKSAyMDE4IEplYW4tTm/Dq2wgQXZpbGEgPGpuLmF2aWxhQGZyZWUuZnI+CisjIENvcHlyaWdodCAoQykgMjAxOSBKZWFuLU5vw6tsIEF2aWxhIDxqbi5hdmlsYUBmcmVlLmZyPgogIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgR2l0IHBhY2thZ2UuCi0jIEplYW4tTm/Dq2wgQXZpbGEgPGpuLmF2aWxhQGZyZWUuZnI+LCAyMDE4LgorIyBKZWFuLU5vw6tsIEF2aWxhIDxqbi5hdmlsYUBmcmVlLmZyPiwgMjAxMy0yMDE5LgogIyBTw6liYXN0aWVuIEhlbGxldSA8Zmxhc2hjb2RlQGZsYXNodHV4Lm9yZz4sIDIwMTMuCiAjCiAjIEZyZW5jaCB0cmFuc2xhdGlvbnMgb2YgY29tbW9uIEdpdCB3b3JkcyB1c2VkIGluIHRoaXMgZmlsZToKQEAgLTMwLDYgKzMwLDcgQEAKICMgICB0byBkZWZsYXRlICAgICAgIHwgIGNvbXByZXNzZXIKICMgICBlbWFpbCAgICAgICAgICAgIHwgIGNvdXJyaWVsCiAjICAgZW50cnkgICAgICAgICAgICB8ICDDqWzDqW1lbnQKKyMgICBmYW5vdXQgICAgICAgICAgIHwgIGRpc3BlcnNpb24KICMgICBmYXN0LWZvcndhcmQgICAgIHwgIGF2YW5jZSByYXBpZGUKICMgICBmYXN0LWZvcndhcmRlZCAgIHwgIG1pcyDDoCBqb3VyIGVuIGF2YW5jZSByYXBpZGUKICMgICB0byBmZXRjaCAgICAgICAgIHwgIHJhcGF0cmllcgpAQCAtNzQsNDcgKzc1LDc0MSBAQAogbXNnc3RyICIiCiAiUHJvamVjdC1JZC1WZXJzaW9uOiBnaXRcbiIKICJSZXBvcnQtTXNnaWQtQnVncy1UbzogR2l0IE1haWxpbmcgTGlzdCA8Z2l0QHZnZXIua2VybmVsLm9yZz5cbiIKLSJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxOC0xMi0wMiAxMDo1NSswODAwXG4iCi0iUE8tUmV2aXNpb24tRGF0ZTogMjAxOC0xMi0wMiAxMDoyNCswMTAwXG4iCi0iTGFzdC1UcmFuc2xhdG9yOiBKZWFuLU5vw6tsIEF2aWxhIDxqbi5hdmlsYUBmcmVlLmZyPlxuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDIwLTAzLTExIDE1OjI2KzA4MDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDIwLTAzLTExIDIxOjAzKzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEPDqWRyaWMgTWFsYXJkIDxjLm1hbGFyZC1naXRAdmFsZHVuLm5ldD5cbiIKICJMYW5ndWFnZS1UZWFtOiBKZWFuLU5vw6tsIEF2aWxhIDxqbi5hdmlsYUBmcmVlLmZyPlxuIgogIkxhbmd1YWdlOiBmclxuIgogIk1JTUUtVmVyc2lvbjogMS4wXG4iCiAiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCiAiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgogIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPW48PTEgPzAgOiAxO1xuIgorIlgtR2VuZXJhdG9yOiBQb2VkaXQgMi4yLjNcbiIKIAotIzogYWR2aWNlLmM6OTkKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjM2OAorIywgYy1mb3JtYXQKK21zZ2lkICJIdWggKCVzKT8iCittc2dzdHIgIkhlaW4gKCVzKcKgPyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NTIxIGFkZC1pbnRlcmFjdGl2ZS5jOjgyMiBzZXF1ZW5jZXIuYzozMTI0CisjOiBzZXF1ZW5jZXIuYzozNTYyIGJ1aWx0aW4vcmViYXNlLmM6ODc1IGJ1aWx0aW4vcmViYXNlLmM6MTY4NworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDg2IGJ1aWx0aW4vcmViYXNlLmM6MjEzMAorbXNnaWQgImNvdWxkIG5vdCByZWFkIGluZGV4IgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbCdpbmRleCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NTc2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjY5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI5NAorbXNnaWQgImJpbmFyeSIKK21zZ3N0ciAiYmluYWlyZSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjM0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjc4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMzMgorbXNnaWQgIm5vdGhpbmciCittc2dzdHIgInJpZW4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjYzNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMjkKK21zZ2lkICJ1bmNoYW5nZWQiCittc2dzdHIgImluY2hhbmfDqSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjQzCittc2dpZCAiVXBkYXRlIgorbXNnc3RyICJNaXNlIMOgIGpvdXIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY4OSBhZGQtaW50ZXJhY3RpdmUuYzo4NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YWdlICclcyciCittc2dzdHIgImltcG9zc2libGUgZCdpbmRleGVyICclcyciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY5NSBhZGQtaW50ZXJhY3RpdmUuYzo4ODQgc2VxdWVuY2VyLmM6MzMxNworIzogYnVpbHRpbi9yZWJhc2UuYzo4OTkKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgaW5kZXgiCittc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlIGwnaW5kZXgiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAidXBkYXRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInVwZGF0ZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAiJWQgY2hlbWluIG1pcyDDoCBqb3VyXG4iCittc2dzdHJbMV0gIiVkIGNoZW1pbnMgbWlzIMOgIGpvdXJcbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NzE2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Njc4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJub3RlOiAlcyBpcyB1bnRyYWNrZWQgbm93LlxuIgorbXNnc3RyICJub3RlwqA6ICVzIG4nZXN0IHBsdXMgc3Vpdmkgw6AgcHLDqXNlbnQuXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjcyMSBhcHBseS5jOjQxMTAgYnVpbHRpbi9jaGVja291dC5jOjI4MQorIzogYnVpbHRpbi9yZXNldC5jOjE0NAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWtlX2NhY2hlX2VudHJ5IGZhaWxlZCBmb3IgcGF0aCAnJXMnIgorbXNnc3RyICLDqWNoZWMgZGUgbWFrZV9jYWNoZV9lbnRyeSBwb3VyIGxlIGNoZW1pbiAnJXMnIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3NTEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NTUKK21zZ2lkICJSZXZlcnQiCittc2dzdHIgIkludmVyc2VyIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3NjcKK21zZ2lkICJDb3VsZCBub3QgcGFyc2UgSEVBRF57dHJlZX0iCittc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBIRUFEXnt0cmVlfSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODA1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjMxCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJyZXZlcnRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInJldmVydGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gIiVkIGNoZW1pbiBpbnZlcnPDqVxuIgorbXNnc3RyWzFdICIlZCBjaGVtaW5zIGludmVyc8Opc1xuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4NTYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gdW50cmFja2VkIGZpbGVzLlxuIgorbXNnc3RyICJBdWN1biBGaWNoaWVyIG5vbiBzdWl2aS5cbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODYwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Njg5Cittc2dpZCAiQWRkIHVudHJhY2tlZCIKK21zZ3N0ciAiQWpvdXRlciB1biBmaWNoaWVyIG5vbi1zdWl2aSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODg3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjI1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJhZGRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgImFkZGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gIiVkIGNoZW1pbiBham91dMOpXG4iCittc2dzdHJbMV0gIiVkIGNoZW1pbnMgYWpvdXTDqXNcbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHVubWVyZ2VkOiAlcyIKK21zZ3N0ciAiZmljaGllciBub24tZnVzaW9ubsOpIGlnbm9yw6nCoDogJXMiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkyOSBhZGQtcGF0Y2guYzoxNjc1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2NgorIywgYy1mb3JtYXQKK21zZ2lkICJPbmx5IGJpbmFyeSBmaWxlcyBjaGFuZ2VkLlxuIgorbXNnc3RyICJTZXVscyBkZXMgZmljaGllcnMgYmluYWlyZXMgb250IGNoYW5nw6kuXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkzMSBhZGQtcGF0Y2guYzoxNjczIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2OAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBjaGFuZ2VzLlxuIgorbXNnc3RyICJBdWN1bmUgbW9kaWZpY2F0aW9uLlxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5MzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzc2Cittc2dpZCAiUGF0Y2ggdXBkYXRlIgorbXNnc3RyICJNaXNlIMOgIGpvdXIgcGFyIHBhdGNoIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5NzQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzU0Cittc2dpZCAiUmV2aWV3IGRpZmYiCittc2dzdHIgIlLDqXZpc2VyIGxhIGRpZmbDqXJlbmNlIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDAyCittc2dpZCAic2hvdyBwYXRocyB3aXRoIGNoYW5nZXMiCittc2dzdHIgImFmZmljaGVyIGxlcyBjaGVtaW5zIGNvbXByZW5hbnQgZGVzIG1vZGlmaWNhdGlvbnMiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDQKK21zZ2lkICJhZGQgd29ya2luZyB0cmVlIHN0YXRlIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXMiCittc2dzdHIgIiIKKyJham91dGVyIGwnw6l0YXQgZGUgbCdhcmJyZSBkZSB0cmF2YWlsIMOgIGwnZW5zZW1ibGUgZGVzIG1vZGlmaWNhdGlvbnMgaW5kZXjDqWVzIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA2Cittc2dpZCAicmV2ZXJ0IHN0YWdlZCBzZXQgb2YgY2hhbmdlcyBiYWNrIHRvIHRoZSBIRUFEIHZlcnNpb24iCittc2dzdHIgInJldG91cm5lciBsJ2Vuc2VtYmxlIGRlIG1vZGlmaWNhdGlvbnMgaW5kZXjDqWVzIMOgIGxhIHZlcnNpb24gSEVBRCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwOAorbXNnaWQgInBpY2sgaHVua3MgYW5kIHVwZGF0ZSBzZWxlY3RpdmVseSIKK21zZ3N0ciAic8OpbGVjdGlvbiBldCBtaXNlIMOgIGpvdXIgaW5kaXZpZHVlbGxlIGRlcyBzZWN0aW9ucyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAxMAorbXNnaWQgInZpZXcgZGlmZiBiZXR3ZWVuIEhFQUQgYW5kIGluZGV4IgorbXNnc3RyICJ2aXN1YWxpc2VyIGxlcyBkaWZmcyBlbnRyZSBIRUFEIGV0IGwnaW5kZXgiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMTIKK21zZ2lkICJhZGQgY29udGVudHMgb2YgdW50cmFja2VkIGZpbGVzIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXMiCittc2dzdHIgIiIKKyJham91dGVyIGxlIGNvbnRlbnUgZGVzIGZpY2hpZXJzIG5vbi1zdWl2aXMgw6AgbCdlbnNlbWJsZSBkZXMgbW9kaWZpY2F0aW9ucyAiCisiaW5kZXjDqWVzIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDIwIGFkZC1pbnRlcmFjdGl2ZS5jOjEwNjkKK21zZ2lkICJQcm9tcHQgaGVscDoiCittc2dzdHIgIkFpZGXCoDoiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjIKK21zZ2lkICJzZWxlY3QgYSBzaW5nbGUgaXRlbSIKK21zZ3N0ciAic8OpbGVjdGlvbm5lciB1biBzZXVsIMOpbMOpbWVudCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyNAorbXNnaWQgInNlbGVjdCBhIHJhbmdlIG9mIGl0ZW1zIgorbXNnc3RyICJzw6lsZWN0aW9ubmVyIHVuZSBwbGFnZSBkJ8OpbMOpbWVudHMiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjYKK21zZ2lkICJzZWxlY3QgbXVsdGlwbGUgcmFuZ2VzIgorbXNnc3RyICJzw6lsZWN0aW9ubmVyIHBsdXNpZXVycyBwbGFnZXMiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjggYWRkLWludGVyYWN0aXZlLmM6MTA3MworbXNnaWQgInNlbGVjdCBpdGVtIGJhc2VkIG9uIHVuaXF1ZSBwcmVmaXgiCittc2dzdHIgInPDqWxlY3Rpb25uZXIgdW4gw6lsw6ltZW50IGJhc8OpIHN1ciB1bmUgcHLDqWZpeGUgdW5pcXVlIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDMwCittc2dpZCAidW5zZWxlY3Qgc3BlY2lmaWVkIGl0ZW1zIgorbXNnc3RyICJkw6lzw6lsZWN0aW9ubmVyIGxlcyDDqWzDqW1lbnRzIHNww6ljaWZpw6lzIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDMyCittc2dpZCAiY2hvb3NlIGFsbCBpdGVtcyIKK21zZ3N0ciAiY2hvaXNpciB0b3VzIGxlcyDDqWzDqW1lbnRzIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDM0Cittc2dpZCAiKGVtcHR5KSBmaW5pc2ggc2VsZWN0aW5nIgorbXNnc3RyICIodmlkZSkgYXJyw6p0ZXIgZGUgc8OpbGVjdGlvbm5lciIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3MQorbXNnaWQgInNlbGVjdCBhIG51bWJlcmVkIGl0ZW0iCittc2dzdHIgInPDqWxlY3Rpb25uZXIgdW4gw6lsw6ltZW50IHBhciBzb24gbnVtw6lybyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3NQorbXNnaWQgIihlbXB0eSkgc2VsZWN0IG5vdGhpbmciCittc2dzdHIgIih2aWRlKSBuZSByaWVuIHPDqWxlY3Rpb25uZXIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwODMgYnVpbHRpbi9jbGVhbi5jOjgyMiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4NTEKK21zZ2lkICIqKiogQ29tbWFuZHMgKioqIgorbXNnc3RyICIqKiogQ29tbWFuZGVzICoqKiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA4NCBidWlsdGluL2NsZWFuLmM6ODIzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTg0OAorbXNnaWQgIldoYXQgbm93IgorbXNnc3RyICJFdCBtYWludGVuYW50ID8iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJzdGFnZWQiCittc2dzdHIgImluZGV4w6kiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJ1bnN0YWdlZCIKK21zZ3N0ciAibm9uLWluZGV4w6kiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgYXBwbHkuYzo0OTY3IGFwcGx5LmM6NDk3MCBidWlsdGluL2FtLmM6MjI1MQorIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9jbG9uZS5jOjEyMyBidWlsdGluL2ZldGNoLmM6MTQ0CisjOiBidWlsdGluL21lcmdlLmM6Mjc0IGJ1aWx0aW4vcHVsbC5jOjE4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTQ4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEzCittc2dpZCAicGF0aCIKK21zZ3N0ciAiY2hlbWluIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTQzCittc2dpZCAiY291bGQgbm90IHJlZnJlc2ggaW5kZXgiCittc2dzdHIgImltcG9zc2libGUgZGUgcmFmcmHDrmNoaXIgbCdpbmRleCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTE1NyBidWlsdGluL2NsZWFuLmM6Nzg3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2NQorIywgYy1mb3JtYXQKK21zZ2lkICJCeWUuXG4iCittc2dzdHIgIkF1IHJldm9pci5cbiIKKworIzogYWRkLXBhdGNoLmM6MzMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiSW5kZXhlciBsZSBjaGFuZ2VtZW50IGRlIG1vZGUgW3ksbixxLGEsZCVzLD9dwqA/ICIKKworIzogYWRkLXBhdGNoLmM6MzQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI5CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiSW5kZXhlciBsYSBzdXBwcmVzc2lvbiBbeSxuLHEsYSxkJXMsP13CoD8gIgorCisjOiBhZGQtcGF0Y2guYzozNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiSW5kZXhlciBjZXR0ZSBzZWN0aW9uIFt5LG4scSxhLGQlcyw/XcKgPyAiCisKKyM6IGFkZC1wYXRjaC5jOjM3Cittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorInN0YWdpbmcuIgorbXNnc3RyICIiCisiU2kgbGUgcGF0Y2ggcydhcHBsaXF1ZSBwcm9wcmVtZW50LCBsYSBzZWN0aW9uIMOpZGl0w6llIHNlcmEgaW1tw6lkaWF0ZW1lbnQgIgorIm1hcnF1w6llIGNvbW1lIGluZGV4w6llLiIKKworIzogYWRkLXBhdGNoLmM6NDAKK21zZ2lkICIiCisieSAtIHN0YWdlIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFnZSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBpbmRleGVyIGNldHRlIHNlY3Rpb25cbiIKKyJuIC0gbmUgcGFzIGluZGV4ZXIgY2V0dGUgc2VjdGlvblxuIgorInEgLSBxdWl0dGVywqA7IG5lIHBhcyBpbmRleGVyIGNldHRlIHNlY3Rpb24gbmkgbGVzIGF1dHJlcyByZXN0YW50ZXNcbiIKKyJhIC0gaW5kZXhlciBjZXR0ZSBzZWN0aW9uIGV0IHRvdXRlcyBsZXMgc3VpdmFudGVzIGRlIGNlIGZpY2hpZXJcbiIKKyJkIC0gbmUgcGFzIGluZGV4ZXIgY2V0dGUgc2VjdGlvbiBuaSBsZXMgc3VpdmFudGVzIGRlIGNlIGZpY2hpZXJcbiIKKworIzogYWRkLXBhdGNoLmM6NTQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDMzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiUmVtaXNlciBsZSBjaGFuZ2VtZW50IGRlIG1vZGUgW3ksbixxLGEsZCVzLD9dwqA/ICIKKworIzogYWRkLXBhdGNoLmM6NTUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiUmVtaXNlciBsYSBzdXBwcmVzc2lvbiBbeSxuLHEsYSxkJXMsP13CoD8gIgorCisjOiBhZGQtcGF0Y2guYzo1NiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YXNoIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiUmVtaXNlciBjZXR0ZSBzZWN0aW9uIFt5LG4scSxhLGQlcyw/XcKgPyAiCisKKyM6IGFkZC1wYXRjaC5jOjU4Cittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorInN0YXNoaW5nLiIKK21zZ3N0ciAiIgorIlNpIGxlIHBhdGNoIHMnYXBwbGlxdWUgcHJvcHJlbWVudCwgbGEgc2VjdGlvbiDDqWRpdMOpZSBzZXJhIGltbcOpZGlhdGVtZW50ICIKKyJtYXJxdcOpZSBjb21tZSByZW1pc8OpZS4iCisKKyM6IGFkZC1wYXRjaC5jOjYxCittc2dpZCAiIgorInkgLSBzdGFzaCB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVua1xuIgorInEgLSBxdWl0OyBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gc3Rhc2ggdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gcmVtaXNlciBjZXR0ZSBzZWN0aW9uXG4iCisibiAtIG5lIHBhcyByZW1pc2VyIGNldHRlIHNlY3Rpb25cbiIKKyJxIC0gcXVpdHRlcsKgOyBuZSBwYXMgcmVtaXNlciBjZXR0ZSBzZWN0aW9uIG5pIGxlcyBhdXRyZXMgcmVzdGFudGVzXG4iCisiYSAtIHJlbWlzZXIgY2V0dGUgc2VjdGlvbiBldCB0b3V0ZXMgbGVzIHN1aXZhbnRlcyBkZSBjZSBmaWNoaWVyXG4iCisiZCAtIG5lIHBhcyByZW1pc2VyIGNldHRlIHNlY3Rpb24gbmkgbGVzIHN1aXZhbnRlcyBkZSBjZSBmaWNoaWVyXG4iCisKKyM6IGFkZC1wYXRjaC5jOjc3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5zdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiRMOpc2luZGV4ZXIgbGUgY2hhbmdlbWVudCBkZSBtb2RlIFt5LG4scSxhLGQlcyw/XcKgPyAiCisKKyM6IGFkZC1wYXRjaC5jOjc4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzOQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5zdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiRMOpc2luZGV4ZXIgbGEgc3VwcHJlc3Npb24gW3ksbixxLGEsZCVzLD9dwqA/ICIKKworIzogYWRkLXBhdGNoLmM6NzkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiRMOpc2luZGV4ZXIgY2V0dGUgc2VjdGlvbiBbeSxuLHEsYSxkJXMsP13CoD8gIgorCisjOiBhZGQtcGF0Y2guYzo4MQorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJ1bnN0YWdpbmcuIgorbXNnc3RyICIiCisiU2kgbGUgcGF0Y2ggcydhcHBsaXF1ZSBwcm9wcmVtZW50LCBsYSBzZWN0aW9uIMOpZGl0w6llIHNlcmEgaW1tw6lkaWF0ZW1lbnQgIgorIm1hcnF1w6llIGNvbW1lIGRlc2luZGV4w6llLiIKKworIzogYWRkLXBhdGNoLmM6ODQKK21zZ2lkICIiCisieSAtIHVuc3RhZ2UgdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVua1xuIgorInEgLSBxdWl0OyBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSB1bnN0YWdlIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gZMOpc2luZGV4ZXIgY2V0dGUgc2VjdGlvblxuIgorIm4gLSBuZSBwYXMgZMOpc2luZGV4ZXIgY2V0dGUgc2VjdGlvblxuIgorInEgLSBxdWl0dGVywqA7IG5lIHBhcyBkw6lzaW5kZXhlciBjZXR0ZSBzZWN0aW9uIG5pIGxlcyBhdXRyZXMgcmVzdGFudGVzXG4iCisiYSAtIGTDqXNpbmRleGVyIGNldHRlIHNlY3Rpb24gZXQgdG91dGVzIGxlcyBzdWl2YW50ZXMgZGUgY2UgZmljaGllclxuIgorImQgLSBuZSBwYXMgZMOpc2luZGV4ZXIgY2V0dGUgc2VjdGlvbiBuaSBsZXMgc3VpdmFudGVzIGRlIGNlIGZpY2hpZXJcbiIKKworIzogYWRkLXBhdGNoLmM6OTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiQXBwbGlxdWVyIGxlIGNoYW5nZW1lbnQgZGUgbW9kZSDDoCBsJ2luZGV4IFt5LG4scSxhLGQlcyw/XcKgPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEwMCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJBcHBsaXF1ZXIgbGEgc3VwcHJlc3Npb24gw6AgbCdpbmRleCBbeSxuLHEsYSxkJXMsP13CoD8gIgorCisjOiBhZGQtcGF0Y2guYzoxMDEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkFwcGxpcXVlciBjZXR0ZSBzZWN0aW9uIMOgIGwnaW5kZXggW3ksbixxLGEsZCVzLD9dwqA/ICIKKworIzogYWRkLXBhdGNoLmM6MTAzIGFkZC1wYXRjaC5jOjE2OCBhZGQtcGF0Y2guYzoyMTEKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisiYXBwbHlpbmcuIgorbXNnc3RyICIiCisiU2kgbGUgcGF0Y2ggcydhcHBsaXF1ZSBwcm9wcmVtZW50LCBsYSBzZWN0aW9uIMOpZGl0w6llIHNlcmEgaW1tw6lkaWF0ZW1lbnQgIgorIm1hcnF1w6llIGNvbW1lIGFwcGxpcXXDqWUuIgorCisjOiBhZGQtcGF0Y2guYzoxMDYKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4XG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBhcHBsaXF1ZXIgY2V0dGUgc2VjdGlvblxuIgorIm4gLSBuZSBwYXMgYXBwbGlxdWVyIGNldHRlIHNlY3Rpb25cbiIKKyJxIC0gcXVpdHRlcsKgOyBuZSBwYXMgYXBwbGlxdWVyIGNldHRlIHNlY3Rpb24gbmkgbGVzIGF1dHJlcyByZXN0YW50ZXNcbiIKKyJhIC0gYXBwbGlxdWVyIGNldHRlIHNlY3Rpb24gZXQgdG91dGVzIGxlcyBzdWl2YW50ZXMgZGUgY2UgZmljaGllclxuIgorImQgLSBuZSBwYXMgYXBwbGlxdWVyIGNldHRlIHNlY3Rpb24gbmkgbGVzIHN1aXZhbnRlcyBkZSBjZSBmaWNoaWVyXG4iCisKKyM6IGFkZC1wYXRjaC5jOjEyMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2MworIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJBYmFuZG9ubmVyIGxlIGNoYW5nZW1lbnQgZGUgbW9kZSBkYW5zIGwnYXJicmUgW3ksbixxLGEsZCVzLD9dwqA/ICIKKworIzogYWRkLXBhdGNoLmM6MTIyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0OQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkFiYW5kb25uZXIgbGEgc3VwcHJlc3Npb24gZGFucyBsJ2FyYnJlIFt5LG4scSxhLGQlcyw/XcKgPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyMyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiQWJhbmRvbm5lciBjZXR0ZSBzZWN0aW9uIGRhbnMgbCdhcmJyZSBbeSxuLHEsYSxkJXMsP13CoD8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjUgYWRkLXBhdGNoLmM6MTQ3IGFkZC1wYXRjaC5jOjE5MAorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJkaXNjYXJkaW5nLiIKK21zZ3N0ciAiIgorIlNpIGxlIHBhdGNoIHMnYXBwbGlxdWUgcHJvcHJlbWVudCwgbGEgc2VjdGlvbiDDqWRpdMOpZSBzZXJhIGltbcOpZGlhdGVtZW50ICIKKyJtYXJxdcOpZSBjb21tZSDDqWxpbWluw6llLiIKKworIzogYWRkLXBhdGNoLmM6MTI4IGFkZC1wYXRjaC5jOjE5MworbXNnaWQgIiIKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gc3VwcHJpbWVyIGNldHRlIHNlY3Rpb25cbiIKKyJuIC0gbmUgcGFzIHN1cHByaW1lciBjZXR0ZSBzZWN0aW9uXG4iCisicSAtIHF1aXR0ZXLCoDsgbmUgcGFzIHN1cHByaW1lciBjZXR0ZSBzZWN0aW9uIG5pIGxlcyBhdXRyZXMgcmVzdGFudGVzXG4iCisiYSAtIHN1cHByaW1lciBjZXR0ZSBzZWN0aW9uIGV0IHRvdXRlcyBsZXMgc3VpdmFudGVzIGRlIGNlIGZpY2hpZXJcbiIKKyJkIC0gbmUgcGFzIHN1cHByaW1lciBjZXR0ZSBzZWN0aW9uIG5pIGxlcyBzdWl2YW50ZXMgZGUgY2UgZmljaGllclxuIgorCisjOiBhZGQtcGF0Y2guYzoxNDMgYWRkLXBhdGNoLmM6MTg2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1MworIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorIkFiYW5kb25uZXIgbGUgY2hhbmdlbWVudCBkZSBtb2RlIGRhbnMgbCdpbmRleCBldCBsJ2FyYnJlIFt5LG4scSxhLGQlcyw/XcKgPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE0NCBhZGQtcGF0Y2guYzoxODcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDU0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJBYmFuZG9ubmVyIGxhIHN1cHByZXNzaW9uIGRlIGwnaW5kZXggZXQgZGUgbCdhcmJyZSBbeSxuLHEsYSxkJXMsP13CoD8gIgorCisjOiBhZGQtcGF0Y2guYzoxNDUgYWRkLXBhdGNoLmM6MTg4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKyJTdXBwcmltZXIgbGEgc2VjdGlvbiBkYW5zIGwnaW5kZXggZXQgbCdhcmJyZSBkZSB0cmF2YWlsIFt5LG4scSxhLGQlcyw/XcKgPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE1MAorbXNnaWQgIiIKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGRpc2NhcmQgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSDDqWxpbWluZXIgY2V0dGUgc2VjdGlvbiBkZSBsJ2luZGV4IGV0IGRlIGwnYXJicmUgZGUgdHJhdmFpbFxuIgorIm4gLSBuZSBwYXMgw6lsaW1pbmVyIGNldHRlIHNlY3Rpb25cbiIKKyJxIC0gcXVpdHRlcsKgOyBuZSBwYXMgw6lsaW1pbmVyIGNldHRlIHNlY3Rpb24gbmkgbGVzIGF1dHJlcyByZXN0YW50ZXNcbiIKKyJhIC0gw6lsaW1pbmVyIGNldHRlIHNlY3Rpb24gZXQgdG91dGVzIGxlcyBzdWl2YW50ZXMgZGUgY2UgZmljaGllclxuIgorImQgLSBuZSBwYXMgw6lsaW1pbmVyIGNldHRlIHNlY3Rpb24gbmkgbGVzIHN1aXZhbnRlcyBkZSBjZSBmaWNoaWVyXG4iCisKKyM6IGFkZC1wYXRjaC5jOjE2NCBhZGQtcGF0Y2guYzoyMDcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDU4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKyJBcHBsaXF1ZXIgbGUgY2hhbmdlbWVudCBkZSBtb2RlIGRhbnMgbCdpbmRleCBldCBsJ2FyYnJlIGRlIHRyYXZhaWwgW3ksbixxLGEsZCIKKyIlcyw/XcKgPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE2NSBhZGQtcGF0Y2guYzoyMDggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDU5CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBkZWxldGlvbiB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKyJBcHBsaXF1ZXIgbGEgc3VwcHJlc3Npb24gZGFucyBsJ2luZGV4IGV0IGwnYXJicmUgZGUgdHJhdmFpbCBbeSxuLHEsYSxkIgorIiVzLD9dwqA/ICIKKworIzogYWRkLXBhdGNoLmM6MTY2IGFkZC1wYXRjaC5jOjIwOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKyJBcHBsaXF1ZXIgbGEgc2VjdGlvbiDDoCBsJ2luZGV4IGV0IGwnYXJicmUgZGUgdHJhdmFpbCBbeSxuLHEsYSxkJXMsP13CoD8gIgorCisjOiBhZGQtcGF0Y2guYzoxNzEKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIGFwcGxpcXVlciBjZXR0ZSBzZWN0aW9uIMOgIGwnaW5kZXggZXQgw6AgbCdhcmJyZSBkZSB0cmF2YWlsXG4iCisibiAtIG5lIHBhcyBhcHBsaXF1ZXIgY2V0dGUgc2VjdGlvblxuIgorInEgLSBxdWl0dGVywqA7IG5lIHBhcyBhcHBsaXF1ZXIgY2V0dGUgc2VjdGlvbiBuaSBsZXMgYXV0cmVzIHJlc3RhbnRlc1xuIgorImEgLSBhcHBsaXF1ZXIgY2V0dGUgc2VjdGlvbiBldCB0b3V0ZXMgbGVzIHN1aXZhbnRlcyBkZSBjZSBmaWNoaWVyXG4iCisiZCAtIG5lIHBhcyBhcHBsaXF1ZXIgY2V0dGUgc2VjdGlvbiBuaSBsZXMgc3VpdmFudGVzIGRlIGNlIGZpY2hpZXJcbiIKKworIzogYWRkLXBhdGNoLmM6MjE0Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gYXBwbGlxdWVyIGNldHRlIHNlY3Rpb24gw6AgbCdhcmJyZSBkZSB0cmF2YWlsXG4iCisibiAtIG5lIHBhcyBhcHBsaXF1ZXIgY2V0dGUgc2VjdGlvblxuIgorInEgLSBxdWl0dGVywqA7IG5lIHBhcyBhcHBsaXF1ZXIgY2V0dGUgc2VjdGlvbiBuaSBsZXMgYXV0cmVzIHJlc3RhbnRlc1xuIgorImEgLSBhcHBsaXF1ZXIgY2V0dGUgc2VjdGlvbiBldCB0b3V0ZXMgbGVzIHN1aXZhbnRlcyBkZSBjZSBmaWNoaWVyXG4iCisiZCAtIG5lIHBhcyBhcHBsaXF1ZXIgY2V0dGUgc2VjdGlvbiBuaSBsZXMgc3VpdmFudGVzIGRlIGNlIGZpY2hpZXJcbiIKKworIzogYWRkLXBhdGNoLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciAnJS4qcyciCittc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBsJ2VudMOqdGUgZGUgc2VjdGlvbiAnJS4qcyciCisKKyM6IGFkZC1wYXRjaC5jOjMzNyBhZGQtcGF0Y2guYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbG9yZWQgaHVuayBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbCdlbnTDqnRlIGNvbG9yw6kgZGUgc2VjdGlvbiAnJS4qcyciCisKKyM6IGFkZC1wYXRjaC5jOjM5NQorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBkaWZmIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGEgZGlmZiIKKworIzogYWRkLXBhdGNoLmM6NDE0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbG9yZWQgZGlmZiIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGxhIGRpZmYgY29sb3LDqWUiCisKKyM6IGFkZC1wYXRjaC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcnVuICclcyciCittc2dzdHIgIsOpY2hlYyBwb3VyIGxhbmNlciAnJXMnIgorCisjOiBhZGQtcGF0Y2guYzo1ODcKK21zZ2lkICJtaXNtYXRjaGVkIG91dHB1dCBmcm9tIGludGVyYWN0aXZlLmRpZmZGaWx0ZXIiCittc2dzdHIgInNvcnRpZSBzYW5zIGNvcnJlc3BvbmRhbmNlIGRlcHVpcyBpbnRlcmFjdGl2ZS5kaWZmRmlsdGVyIgorCisjOiBhZGQtcGF0Y2guYzo1ODgKK21zZ2lkICIiCisiWW91ciBmaWx0ZXIgbXVzdCBtYWludGFpbiBhIG9uZS10by1vbmUgY29ycmVzcG9uZGVuY2VcbiIKKyJiZXR3ZWVuIGl0cyBpbnB1dCBhbmQgb3V0cHV0IGxpbmVzLiIKK21zZ3N0ciAiIgorIlZvdHJlIGZpbHRyZSBkb2l0IG1haW50ZW5pciB1bmUgY29ycmVzcG9uZGFuY2UgdW4tcG91ci11blxuIgorImVudHJlIGxlcyBsaWduZXMgZW4gZW50csOpZSBldCBlbiBzb3J0aWUuIgorCisjOiBhZGQtcGF0Y2guYzo3NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4cGVjdGVkIGNvbnRleHQgbGluZSAjJWQgaW5cbiIKKyIlLipzIgorbXNnc3RyICIiCisibGlnbmUgZGUgY29udGV4dGUgYXR0ZW5kdWUgIyVkIGRhbnNcbiIKKyIlLipzIgorCisjOiBhZGQtcGF0Y2guYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImh1bmtzIGRvIG5vdCBvdmVybGFwOlxuIgorIiUuKnNcbiIKKyJcdGRvZXMgbm90IGVuZCB3aXRoOlxuIgorIiUuKnMiCittc2dzdHIgIiIKKyJsZXMgc2VjdGlvbnMgbmUgc2UgcmVjb3V2cmVudCBwYXPCoDpcbiIKKyIlLipzXG4iCisiXHRuZSBzZSB0ZXJtaW5lIHBhcyBwYXLCoDpcbiIKKyIlLipzIgorCisjOiBhZGQtcGF0Y2guYzoxMDUyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExMgorbXNnaWQgIk1hbnVhbCBodW5rIGVkaXQgbW9kZSAtLSBzZWUgYm90dG9tIGZvciBhIHF1aWNrIGd1aWRlLlxuIgorbXNnc3RyICIiCisiTW9kZSBkJ8OpZGl0aW9uIG1hbnVlbGxlIGRlIHNlY3Rpb24gLS0gdm9pciBjaS1kZXNzb3VzIHBvdXIgdW4gZ3VpZGUgcmFwaWRlLlxuIgorCisjOiBhZGQtcGF0Y2guYzoxMDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLS1cbiIKKyJUbyByZW1vdmUgJyVjJyBsaW5lcywgbWFrZSB0aGVtICcgJyBsaW5lcyAoY29udGV4dCkuXG4iCisiVG8gcmVtb3ZlICclYycgbGluZXMsIGRlbGV0ZSB0aGVtLlxuIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggJWMgd2lsbCBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIiCisiLS0tXG4iCisiUG91ciDDqWxpbWluZXIgbGVzIGxpZ25lcyAnJWMnLCByZW5kZXotbGVzICcgJyAoY29udGV4dGUpLlxuIgorIlBvdXIgw6lsaW1pbmVyIGxlcyBsaWduZXMgJyVjJywgZWZmYWNlei1sZXMuXG4iCisiTGVzIGxpZ25lcyBjb21tZW7Dp2FudCBwYXIgJWMgc2Vyb250IMOpbGltaW7DqWVzLlxuIgorCisjLiBUUkFOU0xBVE9SUzogJ2l0JyByZWZlcnMgdG8gdGhlIHBhdGNoIG1lbnRpb25lZCBpbiB0aGUgcHJldmlvdXMgbWVzc2FnZXMuCisjOiBhZGQtcGF0Y2guYzoxMDcwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTEyNgorbXNnaWQgIiIKKyJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSBnaXZlbiBhbiBvcHBvcnR1bml0eSB0b1xuIgorImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlIHJlbW92ZWQsIHRoZW4gdGhlIGVkaXQgaXNcbiIKKyJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIKK21zZ3N0ciAiIgorIlNpIMOnYSBuZSBzJ2FwcGxpcXVlIHBhcyBwcm9wcmVtZW50LCB2b3VzIGF1cmV6IGxhIHBvc3NpYmlsaXTDqSBkZVxuIgorImwnw6lkaXRlciDDoCBub3V2ZWF1LiBTaSB0b3V0ZXMgbGVzIGxpZ25lcyBkZSBsYSBzZWN0aW9uIHNvbnQgc3VwcHJpbcOpZXMsXG4iCisiYWxvcnMgbCfDqWRpdGlvbiBzZXJhIGFiYW5kb25uw6llIGV0IGxhIHNlY3Rpb24gY29uc2VydsOpZS5cbiIKKworIzogYWRkLXBhdGNoLmM6MTEwMworbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGwnZW50w6p0ZSBkZSBzZWN0aW9uIgorCisjOiBhZGQtcGF0Y2guYzoxMTQ4Cittc2dpZCAiJ2dpdCBhcHBseSAtLWNhY2hlZCcgZmFpbGVkIgorbXNnc3RyICInZ2l0IGFwcGx5IC0tY2FjaGVkJyBhIMOpY2hvdcOpIgorCisjLiBUUkFOU0xBVE9SUzogZG8gbm90IHRyYW5zbGF0ZSBbeS9uXQorIy4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCB0aGF0IGlucHV0IGF0IHRoaXMgcG9pbnQuCisjLiBDb25zaWRlciB0cmFuc2xhdGluZyAoc2F5aW5nICJubyIgZGlzY2FyZHMhKSBhcworIy4gKHNheWluZyAibiIgZm9yICJubyIgZGlzY2FyZHMhKSBpZiB0aGUgdHJhbnNsYXRpb24KKyMuIG9mIHRoZSB3b3JkICJubyIgZG9lcyBub3Qgc3RhcnQgd2l0aCBuLgorIy4KKyMuIFRSQU5TTEFUT1JTOiBkbyBub3QgdHJhbnNsYXRlIFt5L25dCisjLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IHRoYXQgaW5wdXQKKyMuIGF0IHRoaXMgcG9pbnQuCisjLiBDb25zaWRlciB0cmFuc2xhdGluZyAoc2F5aW5nICJubyIgZGlzY2FyZHMhKSBhcworIy4gKHNheWluZyAibiIgZm9yICJubyIgZGlzY2FyZHMhKSBpZiB0aGUgdHJhbnNsYXRpb24KKyMuIG9mIHRoZSB3b3JkICJubyIgZG9lcyBub3Qgc3RhcnQgd2l0aCBuLgorIzogYWRkLXBhdGNoLmM6MTIxOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMzkKK21zZ2lkICIiCisiWW91ciBlZGl0ZWQgaHVuayBkb2VzIG5vdCBhcHBseS4gRWRpdCBhZ2FpbiAoc2F5aW5nIFwibm9cIiBkaXNjYXJkcyEpIFt5L25dPyAiCittc2dzdHIgIiIKKyJWb3RyZSBzZWN0aW9uIMOpZGl0w6llIG5lIHMnYXBwbGlxdWUgcGFzLiBMJ8OpZGl0ZXIgw6Agbm91dmVhdSAoXCJub1wiICIKKyJsJ8OpbGltaW5lwqAhKSBbeXxuXcKgPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyNjEKK21zZ2lkICJUaGUgc2VsZWN0ZWQgaHVua3MgZG8gbm90IGFwcGx5IHRvIHRoZSBpbmRleCEiCittc2dzdHIgIkxlcyBzZWN0aW9ucyBzw6lsZWN0aW9ubsOpZXMgbmUgcydhcHBsaXF1ZSBwYXMgw6AgbCdpbmRleMKgISIKKworIzogYWRkLXBhdGNoLmM6MTI2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDMKK21zZ2lkICJBcHBseSB0aGVtIHRvIHRoZSB3b3JrdHJlZSBhbnl3YXk/ICIKK21zZ3N0ciAiTGVzIGFwcGxpcXVlciBxdWFuZCBtw6ptZSDDoCBsJ2FyYnJlIGRlIHRyYXZhaWzCoD8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjY5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM0NgorbXNnaWQgIk5vdGhpbmcgd2FzIGFwcGxpZWQuXG4iCittc2dzdHIgIlJpZW4gbidhIMOpdMOpIGFwcGxpcXXDqS5cbiIKKworIzogYWRkLXBhdGNoLmM6MTMyNgorbXNnaWQgIiIKKyJqIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIG5leHQgdW5kZWNpZGVkIGh1bmtcbiIKKyJKIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIG5leHQgaHVua1xuIgorImsgLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgcHJldmlvdXMgdW5kZWNpZGVkIGh1bmtcbiIKKyJLIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIHByZXZpb3VzIGh1bmtcbiIKKyJnIC0gc2VsZWN0IGEgaHVuayB0byBnbyB0b1xuIgorIi8gLSBzZWFyY2ggZm9yIGEgaHVuayBtYXRjaGluZyB0aGUgZ2l2ZW4gcmVnZXhcbiIKKyJzIC0gc3BsaXQgdGhlIGN1cnJlbnQgaHVuayBpbnRvIHNtYWxsZXIgaHVua3NcbiIKKyJlIC0gbWFudWFsbHkgZWRpdCB0aGUgY3VycmVudCBodW5rXG4iCisiPyAtIHByaW50IGhlbHBcbiIKK21zZ3N0ciAiIgorImogLSBsYWlzc2VyIGNldHRlIHNlY3Rpb24gbm9uIGTDqWNpZMOpZSBldCBhbGxlciDDoCBsYSBzdWl2YW50ZSBub24tZMOpY2lkw6llXG4iCisiSiAtIGxhaXNzZXIgY2V0dGUgc2VjdGlvbiBub24gZMOpY2lkw6llIGV0IGFsbGVyIMOgIGxhIHN1aXZhbnRlXG4iCisiayAtIGxhaXNzZXIgY2V0dGUgc2VjdGlvbiBub24gZMOpY2lkw6llIGV0IGFsbGVyIMOgIGxhIHByw6ljw6lkZW50ZSBub24tZMOpY2lkw6llXG4iCisiSyAtIGxhaXNzZXIgY2V0dGUgc2VjdGlvbiBub24gZMOpY2lkw6llIGV0IGFsbGVyIMOgIGxhIHByw6ljw6lkZW50ZVxuIgorImcgLSBzw6lsZWN0aW9ubmVyIHVuZSBzZWN0aW9uIGV0IHMneSByZW5kcmVcbiIKKyIvIC0gcmVjaGVyY2hlciB1bmUgc2VjdGlvbiBjb3JyZXNwb25kYW50IMOgIHVuZSByZWdleCBkb25uw6llXG4iCisicyAtIGTDqWNvdXBlciBsYSBzZWN0aW9uIGVuIHNlY3Rpb25zIHBsdXMgcGV0aXRlc1xuIgorImUgLSDDqWRpdGVyIG1hbnVlbGxlbWVudCBsYSBzZWN0aW9uIGFjdHVlbGxlXG4iCisiPyAtIGFmZmljaGVyIGwnYWlkZVxuIgorCisjOiBhZGQtcGF0Y2guYzoxNDQ3IGFkZC1wYXRjaC5jOjE0NTcKK21zZ2lkICJObyBwcmV2aW91cyBodW5rIgorbXNnc3RyICJQYXMgZGUgc2VjdGlvbiBwcsOpY8OpZGVudGUiCisKKyM6IGFkZC1wYXRjaC5jOjE0NTIgYWRkLXBhdGNoLmM6MTQ2MgorbXNnaWQgIk5vIG5leHQgaHVuayIKK21zZ3N0ciAiUGFzIGRlIHNlY3Rpb24gc3VpdmFudGUiCisKKyM6IGFkZC1wYXRjaC5jOjE0NjgKK21zZ2lkICJObyBvdGhlciBodW5rcyB0byBnb3RvIgorbXNnc3RyICJBdWN1bmUgYXV0cmUgc2VjdGlvbiDDoCBhdHRlaW5kcmUiCisKKyM6IGFkZC1wYXRjaC5jOjE0NzkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTc3Cittc2dpZCAiZ28gdG8gd2hpY2ggaHVuayAoPHJldD4gdG8gc2VlIG1vcmUpPyAiCittc2dzdHIgImFsbGVyIMOgIHF1ZWxsZSBzZWN0aW9uICg8cmV0PiBwb3VyIHZvaXIgcGx1cynCoD8gIgorCisjOiBhZGQtcGF0Y2guYzoxNDgwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3OQorbXNnaWQgImdvIHRvIHdoaWNoIGh1bms/ICIKK21zZ3N0ciAiYWxsZXIgw6AgcXVlbGxlIHNlY3Rpb27CoD8gIgorCisjOiBhZGQtcGF0Y2guYzoxNDkxCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgbnVtYmVyOiAnJXMnIgorbXNnc3RyICJOdW3DqXJvIGludmFsaWRlIDogJyVzJyIKKworIzogYWRkLXBhdGNoLmM6MTQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJTb3JyeSwgb25seSAlZCBodW5rIGF2YWlsYWJsZS4iCittc2dpZF9wbHVyYWwgIlNvcnJ5LCBvbmx5ICVkIGh1bmtzIGF2YWlsYWJsZS4iCittc2dzdHJbMF0gIkTDqXNvbMOpLCAlZCBzZXVsZSBzZWN0aW9uIGRpc3BvbmlibGUuIgorbXNnc3RyWzFdICJEw6lzb2zDqSwgU2V1bGVtZW50ICVkIHNlY3Rpb25zIGRpc3BvbmlibGVzLiIKKworIzogYWRkLXBhdGNoLmM6MTUwNQorbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIHNlYXJjaCIKK21zZ3N0ciAiYXVjdW5lIGF1dHJlIHNlY3Rpb24gw6AgcmVjaGVyY2hlciIKKworIzogYWRkLXBhdGNoLmM6MTUxMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MjMKK21zZ2lkICJzZWFyY2ggZm9yIHJlZ2V4PyAiCittc2dzdHIgInJlY2hlcmNoZXIgbGEgcmVnZXjCoD8gIgorCisjOiBhZGQtcGF0Y2guYzoxNTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hbGZvcm1lZCBzZWFyY2ggcmVnZXhwICVzOiAlcyIKK21zZ3N0ciAiUmVnZXggZGUgcmVjaGVyY2hlIG1hbGZvcm3DqWUgJXPCoDogJXMiCisKKyM6IGFkZC1wYXRjaC5jOjE1NDMKK21zZ2lkICJObyBodW5rIG1hdGNoZXMgdGhlIGdpdmVuIHBhdHRlcm4iCittc2dzdHIgIkF1Y3VuZSBzZWN0aW9uIG5lIGNvcnJlc3BvbmQgYXUgbW90aWYgZG9ubsOpIgorCisjOiBhZGQtcGF0Y2guYzoxNTUwCittc2dpZCAiU29ycnksIGNhbm5vdCBzcGxpdCB0aGlzIGh1bmsiCittc2dzdHIgIkTDqXNvbMOpLCBpbXBvc3NpYmxlIGRlIGTDqWNvdXBlciBjZXR0ZSBzZWN0aW9uIgorCisjOiBhZGQtcGF0Y2guYzoxNTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIlNwbGl0IGludG8gJWQgaHVua3MuIgorbXNnc3RyICJEw6ljb3Vww6llIGVuICVkIHNlY3Rpb25zLiIKKworIzogYWRkLXBhdGNoLmM6MTU1OAorbXNnaWQgIlNvcnJ5LCBjYW5ub3QgZWRpdCB0aGlzIGh1bmsiCittc2dzdHIgIkTDqXNvbMOpLCBpbXBvc3NpYmxlIGQnw6lkaXRlciBjZXR0ZSBzZWN0aW9uIgorCisjOiBhZGQtcGF0Y2guYzoxNjA5Cittc2dpZCAiJ2dpdCBhcHBseScgZmFpbGVkIgorbXNnc3RyICInZ2l0IGFwcGx5JyBhIMOpY2hvdcOpIgorCisjOiBhZHZpY2UuYzoxMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXNoaW50OiAlLipzJXNcbiIKIG1zZ3N0ciAiJXNhc3R1Y2U6ICUuKnMlc1xuIgogCi0jOiBhZHZpY2UuYzoxNTIKKyM6IGFkdmljZS5jOjE2OAogbXNnaWQgIkNoZXJyeS1waWNraW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBwaWNvcmVyIGNhciB2b3VzIGF2ZXogZGVzIGZpY2hpZXJzIG5vbiBmdXNpb25uw6lzLiIKIAotIzogYWR2aWNlLmM6MTU0CisjOiBhZHZpY2UuYzoxNzAKIG1zZ2lkICJDb21taXR0aW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSB2YWxpZGVyIGNhciB2b3VzIGF2ZXogZGVzIGZpY2hpZXJzIG5vbiBmdXNpb25uw6lzLiIKIAotIzogYWR2aWNlLmM6MTU2CisjOiBhZHZpY2UuYzoxNzIKIG1zZ2lkICJNZXJnaW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBmdXNpb25uZXIgY2FyIHZvdXMgYXZleiBkZXMgZmljaGllcnMgbm9uIGZ1c2lvbm7DqXMuIgogCi0jOiBhZHZpY2UuYzoxNTgKKyM6IGFkdmljZS5jOjE3NAogbXNnaWQgIlB1bGxpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHRpcmVyIGNhciB2b3VzIGF2ZXogZGVzIGZpY2hpZXJzIG5vbiBmdXNpb25uw6lzLiIKIAotIzogYWR2aWNlLmM6MTYwCisjOiBhZHZpY2UuYzoxNzYKIG1zZ2lkICJSZXZlcnRpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICJJbXBvc3NpYmxlIGQnYW5udWxlciBjYXIgdm91cyBhdmV6IGRlcyBmaWNoaWVycyBub24gZnVzaW9ubsOpcy4iCiAKLSM6IGFkdmljZS5jOjE2MgorIzogYWR2aWNlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkl0IGlzIG5vdCBwb3NzaWJsZSB0byAlcyBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiJXMgbidlc3QgcGFzIHBvc3NpYmxlIGNhciB2b3VzIGF2ZXogZGVzIGZpY2hpZXJzIG5vbiBmdXNpb25uw6lzLiIKIAotIzogYWR2aWNlLmM6MTcwCisjOiBhZHZpY2UuYzoxODYKIG1zZ2lkICIiCiAiRml4IHRoZW0gdXAgaW4gdGhlIHdvcmsgdHJlZSwgYW5kIHRoZW4gdXNlICdnaXQgYWRkL3JtIDxmaWxlPidcbiIKICJhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24gYW5kIG1ha2UgYSBjb21taXQuIgpAQCAtMTIyLDE0NyArODE3LDE1OCBAQAogIkNvcnJpZ2V6LWxlcyBwdWlzIGxhbmNleiAnZ2l0IGFkZC9ybSA8ZmljaGllcj4nXG4iCiAic2kgbsOpY2Vzc2FpcmUgcG91ciBtYXJxdWVyIGxhIHLDqXNvbHV0aW9uIGV0IHZhbGlkZXIuIgogCi0jOiBhZHZpY2UuYzoxNzgKKyM6IGFkdmljZS5jOjE5NAogbXNnaWQgIkV4aXRpbmcgYmVjYXVzZSBvZiBhbiB1bnJlc29sdmVkIGNvbmZsaWN0LiIKIG1zZ3N0ciAiQWJhbmRvbiDDoCBjYXVzZSBkZSBjb25mbGl0IG5vbiByw6lzb2x1LiIKIAotIzogYWR2aWNlLmM6MTgzIGJ1aWx0aW4vbWVyZ2UuYzoxMjg5CisjOiBhZHZpY2UuYzoxOTkgYnVpbHRpbi9tZXJnZS5jOjEzMzUKIG1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS4iCiBtc2dzdHIgIlZvdXMgbidhdmV6IHBhcyB0ZXJtaW7DqSB2b3RyZSBmdXNpb24gKE1FUkdFX0hFQUQgZXhpc3RlKS4iCiAKLSM6IGFkdmljZS5jOjE4NQorIzogYWR2aWNlLmM6MjAxCiBtc2dpZCAiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSBtZXJnaW5nLiIKIG1zZ3N0ciAiVmV1aWxsZXogdmFsaWRlciB2b3MgY2hhbmdlbWVudHMgYXZhbnQgZGUgZnVzaW9ubmVyLiIKIAotIzogYWR2aWNlLmM6MTg2CisjOiBhZHZpY2UuYzoyMDIKIG1zZ2lkICJFeGl0aW5nIGJlY2F1c2Ugb2YgdW5maW5pc2hlZCBtZXJnZS4iCiBtc2dzdHIgIkFiYW5kb24gw6AgY2F1c2UgZCd1bmUgZnVzaW9uIG5vbiB0ZXJtaW7DqWUuIgogCi0jOiBhZHZpY2UuYzoxOTIKKyM6IGFkdmljZS5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCi0iTm90ZTogY2hlY2tpbmcgb3V0ICclcycuXG4iCisiTm90ZTogc3dpdGNoaW5nIHRvICclcycuXG4iCiAiXG4iCiAiWW91IGFyZSBpbiAnZGV0YWNoZWQgSEVBRCcgc3RhdGUuIFlvdSBjYW4gbG9vayBhcm91bmQsIG1ha2UgZXhwZXJpbWVudGFsXG4iCiAiY2hhbmdlcyBhbmQgY29tbWl0IHRoZW0sIGFuZCB5b3UgY2FuIGRpc2NhcmQgYW55IGNvbW1pdHMgeW91IG1ha2UgaW4gdGhpc1xuIgotInN0YXRlIHdpdGhvdXQgaW1wYWN0aW5nIGFueSBicmFuY2hlcyBieSBwZXJmb3JtaW5nIGFub3RoZXIgY2hlY2tvdXQuXG4iCisic3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHN3aXRjaGluZyBiYWNrIHRvIGEgYnJhbmNoLlxuIgogIlxuIgogIklmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIG5ldyBicmFuY2ggdG8gcmV0YWluIGNvbW1pdHMgeW91IGNyZWF0ZSwgeW91IG1heVxuIgotImRvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1iIHdpdGggdGhlIGNoZWNrb3V0IGNvbW1hbmQgYWdhaW4uIEV4YW1wbGU6XG4iCisiZG8gc28gKG5vdyBvciBsYXRlcikgYnkgdXNpbmcgLWMgd2l0aCB0aGUgc3dpdGNoIGNvbW1hbmQuIEV4YW1wbGU6XG4iCiAiXG4iCi0iICBnaXQgY2hlY2tvdXQgLWIgPG5ldy1icmFuY2gtbmFtZT5cbiIKKyIgIGdpdCBzd2l0Y2ggLWMgPG5ldy1icmFuY2gtbmFtZT5cbiIKKyJcbiIKKyJPciB1bmRvIHRoaXMgb3BlcmF0aW9uIHdpdGg6XG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1cbiIKKyJcbiIKKyJUdXJuIG9mZiB0aGlzIGFkdmljZSBieSBzZXR0aW5nIGNvbmZpZyB2YXJpYWJsZSBhZHZpY2UuZGV0YWNoZWRIZWFkIHRvICIKKyJmYWxzZVxuIgogIlxuIgogbXNnc3RyICIiCi0iTm90ZcKgOiBleHRyYWN0aW9uIGRlICclcycuXG4iCisiTm90ZcKgOiBiYXNjdWxlbWVudCBzdXIgJyVzJy5cbiIKICJcbiIKICJWb3VzIMOqdGVzIGRhbnMgbCfDqXRhdCDCq8KgSEVBRCBkw6l0YWNow6llwqDCuy4gVm91cyBwb3V2ZXogdmlzaXRlciwgZmFpcmUgZGVzICIKICJtb2RpZmljYXRpb25zXG4iCi0iZXhww6lyaW1lbnRhbGVzIGV0IGxlcyB2YWxpZGVyLiBJbCB2b3VzIHN1ZmZpdCBkZSBmYWlyZSB1bmUgYXV0cmUgZXh0cmFjdGlvbiAiCisiZXhww6lyaW1lbnRhbGVzIGV0IGxlcyB2YWxpZGVyLiBJbCB2b3VzIHN1ZmZpdCBkZSBmYWlyZSB1biBhdXRyZSBiYXNjdWxlbWVudCAiCiAicG91clxuIgogImFiYW5kb25uZXIgbGVzIGNvbW1pdHMgcXVlIHZvdXMgZmFpdGVzIGRhbnMgY2V0IMOpdGF0IHNhbnMgaW1wYWN0ZXIgbGVzICIKICJhdXRyZXMgYnJhbmNoZXNcbiIKICJcbiIKICJTaSB2b3VzIHZvdWxleiBjcsOpZXIgdW5lIG5vdXZlbGxlIGJyYW5jaGUgcG91ciBjb25zZXJ2ZXIgbGVzIGNvbW1pdHMgcXVlICIKICJ2b3VzIGNyw6lleixcbiIKLSJpbCB2b3VzIHN1ZmZpdCBkJ3V0aWxpc2VyIMKrwqBjaGVja291dCAtYsKgwrsgKG1haW50ZW5hbnQgb3UgcGx1cyB0YXJkKSBjb21tZSAiCi0iY2VjacKgOlxuIgorImlsIHZvdXMgc3VmZml0IGQndXRpbGlzZXIgbCdvcHRpb24gLWMgZGUgbGEgY29tbWFuZGUgc3dpdGNoIGNvbW1lIGNlY2nCoDpcbiIKICJcbiIKLSIgIGdpdCBjaGVja291dCAtYiA8bm9tLWRlLWxhLW5vdXZlbGxlLWJyYW5jaGU+XG4iCisiICBnaXQgc3dpdGNoIC1jIDxub20tZGUtbGEtbm91dmVsbGUtYnJhbmNoZT5cbiIKKyJcbiIKKyJPdSBhbm51bGVyIGNldHRlIG9ww6lyYXRpb24gYXZlY8KgOlxuIgorIlxuIgorIiAgZ2l0IHN3aXRjaCAtXG4iCisiXG4iCisiRMOpc2FjdGl2ZXogY2UgY29uc2VpbCBlbiByZW5zZWlnbmFudCBsYSB2YXJpYWJsZSBkZSBjb25maWd1cmF0aW9uIGFkdmljZS4iCisiZGV0YWNoZWRIZWFkIMOgIGZhbHNlXG4iCiAiXG4iCiAKLSM6IGFwcGx5LmM6NTkKKyM6IGFsaWFzLmM6NTAKK21zZ2lkICJjbWRsaW5lIGVuZHMgd2l0aCBcXCIKK21zZ3N0ciAiY21kbGluZSBzZSB0ZXJtaW5lIHBhciBcXCIKKworIzogYWxpYXMuYzo1MQorbXNnaWQgInVuY2xvc2VkIHF1b3RlIgorbXNnc3RyICJjaXRhdGlvbiBub24gZmVybcOpZSIKKworIzogYXBwbHkuYzo2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgd2hpdGVzcGFjZSBvcHRpb24gJyVzJyIKIG1zZ3N0ciAib3B0aW9uIGQnZXNwYWNlIG5vbiByZWNvbm51ZSAnJXMnIgogCi0jOiBhcHBseS5jOjc1CisjOiBhcHBseS5jOjg1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCB3aGl0ZXNwYWNlIGlnbm9yZSBvcHRpb24gJyVzJyIKIG1zZ3N0ciAib3B0aW9uIGQnaWdub3JhbmNlIGQnZXNwYWNlIG5vbiByZWNvbm51ZSAnJXMnIgogCi0jOiBhcHBseS5jOjEyNQorIzogYXBwbHkuYzoxMzUKIG1zZ2lkICItLXJlamVjdCBhbmQgLS0zd2F5IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyLiIKIG1zZ3N0ciAiLS1yZWplY3QgZXQgLS0zd2F5IG5lIHBldXZlbnQgcGFzIMOqdHJlIHV0aWxpc8OpcyBlbnNlbWJsZS4iCiAKLSM6IGFwcGx5LmM6MTI3CisjOiBhcHBseS5jOjEzNwogbXNnaWQgIi0tY2FjaGVkIGFuZCAtLTN3YXkgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuIgogbXNnc3RyICItLWNhY2hlZCBldCAtLTN3YXkgbmUgcGV1dmVudCBwYXMgw6p0cmUgdXRpbGlzw6lzIGVuc2VtYmxlLiIKIAotIzogYXBwbHkuYzoxMzAKKyM6IGFwcGx5LmM6MTQwCiBtc2dpZCAiLS0zd2F5IG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICItLTN3YXkgaG9ycyBkJ3VuIGTDqXDDtHQiCiAKLSM6IGFwcGx5LmM6MTQxCisjOiBhcHBseS5jOjE1MQogbXNnaWQgIi0taW5kZXggb3V0c2lkZSBhIHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0taW5kZXggaG9ycyBkJ3VuIGTDqXDDtHQiCiAKLSM6IGFwcGx5LmM6MTQ0CisjOiBhcHBseS5jOjE1NAogbXNnaWQgIi0tY2FjaGVkIG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICItLWNhY2hlZCBob3JzIGQndW4gZMOpcMO0dCIKIAotIzogYXBwbHkuYzo4MjYKKyM6IGFwcGx5LmM6ODAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBwcmVwYXJlIHRpbWVzdGFtcCByZWdleHAgJXMiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgcHLDqXBhcmVyIGxhIHJlZ2V4cCBkJ2hvcm9kYXRhZ2UgJXMiCiAKLSM6IGFwcGx5LmM6ODM1CisjOiBhcHBseS5jOjgxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWdleGVjIHJldHVybmVkICVkIGZvciBpbnB1dDogJXMiCiBtc2dzdHIgInJlZ2V4ZWMgYSByZXRvdXJuw6kgJWQgcG91ciBsJ2VudHLDqWUgOiAlcyIKIAotIzogYXBwbHkuYzo5MDkKKyM6IGFwcGx5LmM6ODg0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBmaW5kIGZpbGVuYW1lIGluIHBhdGNoIGF0IGxpbmUgJWQiCiBtc2dzdHIgIm5vbSBkZSBmaWNoaWVyIGR1IHBhdGNoIGludHJvdXZhYmxlIMOgIGxhIGxpZ25lICVkIgogCi0jOiBhcHBseS5jOjk0NworIzogYXBwbHkuYzo5MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwsIGdvdCAlcyBvbiBsaW5lICVkIgogbXNnc3RyICIiCiAiZ2l0IGFwcGx5IDogbWF1dmFpcyBmb3JtYXQgZGUgZ2l0LWRpZmYgLSAvZGV2L251bGwgYXR0ZW5kdSwgJXMgdHJvdXbDqSDDoCBsYSAiCiAibGlnbmUgJWQiCiAKLSM6IGFwcGx5LmM6OTUzCisjOiBhcHBseS5jOjkyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGluY29uc2lzdGVudCBuZXcgZmlsZW5hbWUgb24gbGluZSAlZCIKIG1zZ3N0ciAiIgogImdpdCBhcHBseSA6IG1hdXZhaXMgZm9ybWF0IGRlIGdpdC1kaWZmIC0gbm91dmVhdSBub20gZGUgZmljaGllciBpbmNvbnNpc3RhbnQgIgogIsOgIGxhIGxpZ25lICVkIgogCi0jOiBhcHBseS5jOjk1NAorIzogYXBwbHkuYzo5MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBpbmNvbnNpc3RlbnQgb2xkIGZpbGVuYW1lIG9uIGxpbmUgJWQiCiBtc2dzdHIgIiIKICJnaXQgYXBwbHkgOiBtYXV2YWlzIGZvcm1hdCBkZSBnaXQtZGlmZiAtIGFuY2llbiBub20gZGUgZmljaGllciBpbmNvbnNpc3RhbnQgIgogIsOgIGxhIGxpZ25lICVkIgogCi0jOiBhcHBseS5jOjk1OQorIzogYXBwbHkuYzo5MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwgb24gbGluZSAlZCIKIG1zZ3N0ciAiIgogImdpdCBhcHBseSA6IG1hdXZhaXMgZm9ybWF0IGRlIGdpdC1kaWZmIC0gL2Rldi9udWxsIGF0dGVuZHUgw6AgbGEgbGlnbmUgJWQiCiAKLSM6IGFwcGx5LmM6OTg4CisjOiBhcHBseS5jOjk2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG1vZGUgb24gbGluZSAlZDogJXMiCiBtc2dzdHIgIm1vZGUgaW52YWxpZGUgZGFucyBsYSBsaWduZSAlZMKgOiAlcyIKIAotIzogYXBwbHkuYzoxMzA3CisjOiBhcHBseS5jOjEyODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5jb25zaXN0ZW50IGhlYWRlciBsaW5lcyAlZCBhbmQgJWQiCiBtc2dzdHIgImxpZ25lcyBkJ2VudMOqdGUgaW5jb25zaXN0YW50ZXMgJWQgZXQgJWQiCiAKLSM6IGFwcGx5LmM6MTQ3OQotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWNvdW50OiB1bmV4cGVjdGVkIGxpbmU6ICUuKnMiCi1tc2dzdHIgInJlY29tcHRhZ2UgOiBsaWduZSBpbmF0dGVuZHVlIDogJS4qcyIKLQotIzogYXBwbHkuYzoxNTQ4Ci0jLCBjLWZvcm1hdAotbXNnaWQgInBhdGNoIGZyYWdtZW50IHdpdGhvdXQgaGVhZGVyIGF0IGxpbmUgJWQ6ICUuKnMiCi1tc2dzdHIgImZyYWdtZW50IGRlIHBhdGNoIHNhbnMgZW4tdMOqdGUgw6AgbGEgbGlnbmUgJWQgOiAlLipzIgotCi0jOiBhcHBseS5jOjE1NjgKKyM6IGFwcGx5LmM6MTM3MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIHdoZW4gcmVtb3ZpbmcgJWQgbGVhZGluZyBwYXRobmFtZSAiCkBAIC0yNzcsODMgKzk4Myw5MyBAQAogImluZm9ybWF0aW9uIGRlIG5vbSBkZSBmaWNoaWVyIG1hbnF1YW50ZSBkYW5zIGwnZW4tdMOqdGUgZGUgZ2l0IGRpZmYgbG9ycyBkZSAiCiAibGEgc3VwcHJlc3Npb24gZGUgJWQgY29tcG9zYW50cyBkZSBwcsOpZml4ZSBkZSBjaGVtaW4gKGxpZ25lICVkKSIKIAotIzogYXBwbHkuYzoxNTgxCisjOiBhcHBseS5jOjEzODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIChsaW5lICVkKSIKIG1zZ3N0ciAiIgogImluZm9ybWF0aW9uIGRlIG5vbSBkZSBmaWNoaWVyIG1hbnF1YW50ZSBkYW5zIGwnZW4tdMOqdGUgZGUgZ2l0IGRpZmYgKGxpZ25lICVkKSIKIAotIzogYXBwbHkuYzoxNzY5CisjOiBhcHBseS5jOjE0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVjb3VudDogdW5leHBlY3RlZCBsaW5lOiAlLipzIgorbXNnc3RyICJyZWNvbXB0YWdlIDogbGlnbmUgaW5hdHRlbmR1ZSA6ICUuKnMiCisKKyM6IGFwcGx5LmM6MTU1MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRjaCBmcmFnbWVudCB3aXRob3V0IGhlYWRlciBhdCBsaW5lICVkOiAlLipzIgorbXNnc3RyICJmcmFnbWVudCBkZSBwYXRjaCBzYW5zIGVuLXTDqnRlIMOgIGxhIGxpZ25lICVkIDogJS4qcyIKKworIzogYXBwbHkuYzoxNzUzCiBtc2dpZCAibmV3IGZpbGUgZGVwZW5kcyBvbiBvbGQgY29udGVudHMiCiBtc2dzdHIgImxlIG5vdXZlYXUgZmljaGllciBkw6lwZW5kIGRlIGNvbnRlbnVzIGFuY2llbnMiCiAKLSM6IGFwcGx5LmM6MTc3MQorIzogYXBwbHkuYzoxNzU1CiBtc2dpZCAiZGVsZXRlZCBmaWxlIHN0aWxsIGhhcyBjb250ZW50cyIKIG1zZ3N0ciAibGUgZmljaGllciBzdXBwcmltw6kgYSBlbmNvcmUgZHUgY29udGVudSIKIAotIzogYXBwbHkuYzoxODA1CisjOiBhcHBseS5jOjE3ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBwYXRjaCBhdCBsaW5lICVkIgogbXNnc3RyICJwYXRjaCBjb3Jyb21wdSDDoCBsYSBsaWduZSAlZCIKIAotIzogYXBwbHkuYzoxODQyCisjOiBhcHBseS5jOjE4MjYKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IGZpbGUgJXMgZGVwZW5kcyBvbiBvbGQgY29udGVudHMiCiBtc2dzdHIgImxlIG5vdXZlYXUgZmljaGllciAlcyBkw6lwZW5kIGRlIGNvbnRlbnVzIGFuY2llbnMiCiAKLSM6IGFwcGx5LmM6MTg0NAorIzogYXBwbHkuYzoxODI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbGV0ZWQgZmlsZSAlcyBzdGlsbCBoYXMgY29udGVudHMiCiBtc2dzdHIgImxlIGZpY2hpZXIgc3VwcHJpbcOpICVzIGEgZW5jb3JlIGR1IGNvbnRlbnUiCiAKLSM6IGFwcGx5LmM6MTg0NworIzogYXBwbHkuYzoxODMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIioqIHdhcm5pbmc6IGZpbGUgJXMgYmVjb21lcyBlbXB0eSBidXQgaXMgbm90IGRlbGV0ZWQiCiBtc2dzdHIgIioqIGF0dGVudGlvbiA6IGxlIGZpY2hpZXIgJXMgZGV2aWVudCB2aWRlIG1haXMgbidlc3QgcGFzIHN1cHByaW3DqSIKIAotIzogYXBwbHkuYzoxOTk0CisjOiBhcHBseS5jOjE5NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZDogJS4qcyIKIG1zZ3N0ciAicGF0Y2ggYmluYWlyZSBjb3Jyb21wdSDDoCBsYSBsaWduZSAlZCA6ICUuKnMiCiAKLSM6IGFwcGx5LmM6MjAzMQorIzogYXBwbHkuYzoyMDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZCIKIG1zZ3N0ciAicGF0Y2ggYmluYWlyZSBub24gcmVjb25udSDDoCBsYSBsaWduZSAlZCIKIAotIzogYXBwbHkuYzoyMTkzCisjOiBhcHBseS5jOjIxNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0Y2ggd2l0aCBvbmx5IGdhcmJhZ2UgYXQgbGluZSAlZCIKIG1zZ3N0ciAicGF0Y2ggdG90YWxlbWVudCBpbmNvbXByw6loZW5zaWJsZSDDoCBsYSBsaWduZSAlZCIKIAotIzogYXBwbHkuYzoyMjc5CisjOiBhcHBseS5jOjIyNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgc3ltbGluayAlcyIKIG1zZ3N0ciAibGVjdHVyZSBkdSBsaWVuIHN5bWJvbGlxdWUgJXMgaW1wb3NzaWJsZSIKIAotIzogYXBwbHkuYzoyMjgzCisjOiBhcHBseS5jOjIyNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gb3IgcmVhZCAlcyIKIG1zZ3N0ciAib3V2ZXJ0dXJlIG91IGxlY3R1cmUgZGUgJXMgaW1wb3NzaWJsZSIKIAotIzogYXBwbHkuYzoyOTQyCisjOiBhcHBseS5jOjI5MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzdGFydCBvZiBsaW5lOiAnJWMnIgogbXNnc3RyICJkw6lidXQgZGUgbGlnbmUgaW52YWxpZGUgOiAnJWMnIgogCi0jOiBhcHBseS5jOjMwNjMKKyM6IGFwcGx5LmM6MzA1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJIdW5rICMlZCBzdWNjZWVkZWQgYXQgJWQgKG9mZnNldCAlZCBsaW5lKS4iCiBtc2dpZF9wbHVyYWwgIkh1bmsgIyVkIHN1Y2NlZWRlZCBhdCAlZCAob2Zmc2V0ICVkIGxpbmVzKS4iCiBtc2dzdHJbMF0gIkxhIHNlY3Rpb24gbsKwJWQgYSByw6l1c3NpIMOgIGxhIGxpZ25lICVkIChvZmZzZXQgJWQgbGlnbmUpLiIKIG1zZ3N0clsxXSAiTGEgc2VjdGlvbiBuwrAlZCBhIHLDqXVzc2kgw6AgbGEgbGlnbmUgJWQgKG9mZnNldCAlZCBsaWduZXMpLiIKIAotIzogYXBwbHkuYzozMDc1CisjOiBhcHBseS5jOjMwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29udGV4dCByZWR1Y2VkIHRvICglbGQvJWxkKSB0byBhcHBseSBmcmFnbWVudCBhdCAlZCIKIG1zZ3N0ciAiQ29udGV4dGUgcsOpZHVpdCDDoCAoJWxkLyVsZCkgcG91ciBhcHBsaXF1ZXIgbGUgZnJhZ21lbnQgw6AgbGEgbGlnbmUgJWQiCiAKLSM6IGFwcGx5LmM6MzA4MQorIzogYXBwbHkuYzozMDc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ3aGlsZSBzZWFyY2hpbmcgZm9yOlxuIgpAQCAtMzYyLDQ2MyArMTA3OCw0NDkgQEAKICJwZW5kYW50IGxhIHJlY2hlcmNoZSBkZSA6XG4iCiAiJS4qcyIKIAotIzogYXBwbHkuYzozMTAzCisjOiBhcHBseS5jOjMwOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBiaW5hcnkgcGF0Y2ggZGF0YSBmb3IgJyVzJyIKIG1zZ3N0ciAiZG9ubsOpZXMgZGUgcGF0Y2ggYmluYWlyZSBtYW5xdWFudGVzIHBvdXIgJyVzJyIKIAotIzogYXBwbHkuYzozMTExCisjOiBhcHBseS5jOjMxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJldmVyc2UtYXBwbHkgYSBiaW5hcnkgcGF0Y2ggd2l0aG91dCB0aGUgcmV2ZXJzZSBodW5rIHRvICclcyciCiBtc2dzdHIgIiIKICJpbXBvc3NpYmxlIGQnYXBwbGlxdWVyIGwnaW52ZXJzZSBkJ3VuIHBhdGNoIGJpbmFpcmUgw6AgJyVzJyBzYW5zIGxhIHNlY3Rpb24gIgogImludmVyc2UiCiAKLSM6IGFwcGx5LmM6MzE1OAorIzogYXBwbHkuYzozMTUyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBhcHBseSBiaW5hcnkgcGF0Y2ggdG8gJyVzJyB3aXRob3V0IGZ1bGwgaW5kZXggbGluZSIKIG1zZ3N0ciAiIgogImltcG9zc2libGUgZCdhcHBsaXF1ZXIgdW4gcGF0Y2ggYmluYWlyZSDDoCAnJXMnIHNhbnMgbGEgbGlnbmUgY29tcGzDqHRlIGQnaW5kZXgiCiAKLSM6IGFwcGx5LmM6MzE2OAorIzogYXBwbHkuYzozMTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ0aGUgcGF0Y2ggYXBwbGllcyB0byAnJXMnICglcyksIHdoaWNoIGRvZXMgbm90IG1hdGNoIHRoZSBjdXJyZW50IGNvbnRlbnRzLiIKIG1zZ3N0ciAiIgogImxlIHBhdGNoIHMnYXBwbGlxdWUgw6AgJyVzJyAoJXMpLCBjZSBxdWkgbmUgY29ycmVzcG9uZCBwYXMgYXUgY29udGVudSBhY3R1ZWwuIgogCi0jOiBhcHBseS5jOjMxNzYKKyM6IGFwcGx5LmM6MzE3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgcGF0Y2ggYXBwbGllcyB0byBhbiBlbXB0eSAnJXMnIGJ1dCBpdCBpcyBub3QgZW1wdHkiCiBtc2dzdHIgImxlIHBhdGNoIHMnYXBwbGlxdWUgw6AgdW4gJyVzJyB2aWRlIG1haXMgY2Ugbidlc3QgcGFzIHZpZGUiCiAKLSM6IGFwcGx5LmM6MzE5NAorIzogYXBwbHkuYzozMTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSBuZWNlc3NhcnkgcG9zdGltYWdlICVzIGZvciAnJXMnIGNhbm5vdCBiZSByZWFkIgogbXNnc3RyICJsJ2ltYWdlIHBvc3TDqXJpZXVyZSBuw6ljZXNzYWlyZSAlcyBwb3VyICclcycgbmUgcGV1dCBwYXMgw6p0cmUgbHVlIgogCi0jOiBhcHBseS5jOjMyMDcKKyM6IGFwcGx5LmM6MzIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJiaW5hcnkgcGF0Y2ggZG9lcyBub3QgYXBwbHkgdG8gJyVzJyIKIG1zZ3N0ciAibGUgcGF0Y2ggYmluYWlyZSBuZSBzJ2FwcGxpcXVlIHBhciBjb3JyZWN0ZW1lbnQgw6AgJyVzJyIKIAotIzogYXBwbHkuYzozMjEzCisjOiBhcHBseS5jOjMyMDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmluYXJ5IHBhdGNoIHRvICclcycgY3JlYXRlcyBpbmNvcnJlY3QgcmVzdWx0IChleHBlY3RpbmcgJXMsIGdvdCAlcykiCiBtc2dzdHIgIiIKICJsZSBwYXRjaCBiaW5haXJlIHN1ciAnJXMnIGNyw6llIHVuIHLDqXN1bHRhdCBpbmNvcnJlY3QgKCVzIGF0dGVuZHUsIG1haXMgJXMgIgogInRyb3V2w6kpIgogCi0jOiBhcHBseS5jOjMyMzQKKyM6IGFwcGx5LmM6MzIzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRjaCBmYWlsZWQ6ICVzOiVsZCIKIG1zZ3N0ciAibGUgcGF0Y2ggYSDDqWNob3XDqSA6ICVzOiVsZCIKIAotIzogYXBwbHkuYzozMzU2CisjOiBhcHBseS5jOjMzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoZWNrb3V0ICVzIgogbXNnc3RyICJleHRyYWN0aW9uIGRlICVzIGltcG9zc2libGUiCiAKLSM6IGFwcGx5LmM6MzQwOCBhcHBseS5jOjM0MTkgYXBwbHkuYzozNDY1IG1pZHguYzo1OCBzZXR1cC5jOjI3OAorIzogYXBwbHkuYzozNDA1IGFwcGx5LmM6MzQxNiBhcHBseS5jOjM0NjIgbWlkeC5jOjYxIHNldHVwLmM6Mjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWFkICVzIgogbXNnc3RyICLDqWNoZWMgZGUgbGEgbGVjdHVyZSBkZSAlcyIKIAotIzogYXBwbHkuYzozNDE2CisjOiBhcHBseS5jOjM0MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZGluZyBmcm9tICclcycgYmV5b25kIGEgc3ltYm9saWMgbGluayIKIG1zZ3N0ciAibGVjdHVyZSBkZXB1aXMgJyVzJyBhdS1kZWzDoCBkJ3VuIGxpZW4gc3ltYm9saXF1ZSIKIAotIzogYXBwbHkuYzozNDQ1IGFwcGx5LmM6MzY4OAorIzogYXBwbHkuYzozNDQyIGFwcGx5LmM6MzY4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICVzIGhhcyBiZWVuIHJlbmFtZWQvZGVsZXRlZCIKIG1zZ3N0ciAibGUgY2hlbWluICVzIGEgw6l0w6kgcmVub21tw6kvc3VwcHJpbcOpIgogCi0jOiBhcHBseS5jOjM1MzEgYXBwbHkuYzozNzAzCisjOiBhcHBseS5jOjM1MjggYXBwbHkuYzozNzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBkb2VzIG5vdCBleGlzdCBpbiBpbmRleCIKIG1zZ3N0ciAiJXMgOiBuJ2V4aXN0ZSBwYXMgZGFucyBsJ2luZGV4IgogCi0jOiBhcHBseS5jOjM1NDAgYXBwbHkuYzozNzExCisjOiBhcHBseS5jOjM1MzcgYXBwbHkuYzozNzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBkb2VzIG5vdCBtYXRjaCBpbmRleCIKIG1zZ3N0ciAiJXMgOiBuZSBjb3JyZXNwb25kIHBhcyDDoCBsJ2luZGV4IgogCi0jOiBhcHBseS5jOjM1NzUKKyM6IGFwcGx5LmM6MzU3MgogbXNnaWQgInJlcG9zaXRvcnkgbGFja3MgdGhlIG5lY2Vzc2FyeSBibG9iIHRvIGZhbGwgYmFjayBvbiAzLXdheSBtZXJnZS4iCiBtc2dzdHIgIiIKICJsZSBkw6lww7R0IG4nYSBwYXMgbGVzIGJsb2JzIG7DqWNlc3NhaXJlcyBwb3VyIHVuIHJldG91ciDDoCB1bmUgZnVzaW9uIMOgIDMgIgogInBvaW50cy4iCiAKLSM6IGFwcGx5LmM6MzU3OAorIzogYXBwbHkuYzozNTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhbGxpbmcgYmFjayB0byB0aHJlZS13YXkgbWVyZ2UuLi5cbiIKIG1zZ3N0ciAiUmV0b3VyIMOgIHVuZSBmdXNpb24gw6AgMyBwb2ludHPigKZcbiIKIAotIzogYXBwbHkuYzozNTk0IGFwcGx5LmM6MzU5OAorIzogYXBwbHkuYzozNTkxIGFwcGx5LmM6MzU5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCB0aGUgY3VycmVudCBjb250ZW50cyBvZiAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGUgY29udGVudSBhY3R1ZWwgZGUgJyVzJyIKIAotIzogYXBwbHkuYzozNjEwCisjOiBhcHBseS5jOjM2MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGZhbGwgYmFjayBvbiB0aHJlZS13YXkgbWVyZ2UuLi5cbiIKLW1zZ3N0ciAiRWNoZWMgZHUgcmV0b3VyIMOgIHVuZSBmdXNpb24gw6AgMyBwb2ludHPigKZcbiIKK21zZ3N0ciAiw4ljaGVjIGR1IHJldG91ciDDoCB1bmUgZnVzaW9uIMOgIDMgcG9pbnRz4oCmXG4iCiAKLSM6IGFwcGx5LmM6MzYyNAorIzogYXBwbHkuYzozNjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyB3aXRoIGNvbmZsaWN0cy5cbiIKIG1zZ3N0ciAiUGF0Y2ggJXMgYXBwbGlxdcOpIGF2ZWMgZGVzIGNvbmZsaXRzLlxuIgogCi0jOiBhcHBseS5jOjM2MjkKKyM6IGFwcGx5LmM6MzYyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBsaWVkIHBhdGNoIHRvICclcycgY2xlYW5seS5cbiIKIG1zZ3N0ciAiUGF0Y2ggJXMgYXBwbGlxdcOpIHByb3ByZW1lbnQuXG4iCiAKLSM6IGFwcGx5LmM6MzY1NQorIzogYXBwbHkuYzozNjUyCiBtc2dpZCAicmVtb3ZhbCBwYXRjaCBsZWF2ZXMgZmlsZSBjb250ZW50cyIKIG1zZ3N0ciAibGUgcGF0Y2ggZGUgc3VwcHJlc3Npb24gbGFpc3NlIHVuIGNvbnRlbnUgZGFucyBsZSBmaWNoaWVyIgogCi0jOiBhcHBseS5jOjM3MjgKKyM6IGFwcGx5LmM6MzcyNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogd3JvbmcgdHlwZSIKIG1zZ3N0ciAiJXMgOiB0eXBlIGVycm9uw6kiCiAKLSM6IGFwcGx5LmM6MzczMAorIzogYXBwbHkuYzozNzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGhhcyB0eXBlICVvLCBleHBlY3RlZCAlbyIKIG1zZ3N0ciAiJXMgZXN0IGRlIHR5cGUgJW8sIG1haXMgJW8gYXR0ZW5kdSIKIAotIzogYXBwbHkuYzozODgxIGFwcGx5LmM6Mzg4MworIzogYXBwbHkuYzozODc4IGFwcGx5LmM6Mzg4MCByZWFkLWNhY2hlLmM6ODMwIHJlYWQtY2FjaGUuYzo4NTYKKyM6IHJlYWQtY2FjaGUuYzoxMzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgcGF0aCAnJXMnIgogbXNnc3RyICJjaGVtaW4gaW52YWxpZGUgJyVzJyIKIAotIzogYXBwbHkuYzozOTM5CisjOiBhcHBseS5jOjM5MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGFscmVhZHkgZXhpc3RzIGluIGluZGV4IgogbXNnc3RyICIlcyA6IGV4aXN0ZSBkw6lqw6AgZGFucyBsJ2luZGV4IgogCi0jOiBhcHBseS5jOjM5NDIKKyM6IGFwcGx5LmM6MzkzOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogYWxyZWFkeSBleGlzdHMgaW4gd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIiVzIDogZXhpc3RlIGTDqWrDoCBkYW5zIGxhIGNvcGllIGRlIHRyYXZhaWwiCiAKLSM6IGFwcGx5LmM6Mzk2MgorIzogYXBwbHkuYzozOTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSIKIG1zZ3N0ciAibGUgbm91dmVhdSBtb2RlICglbykgZGUgJXMgbmUgY29ycmVzcG9uZCBwYXMgw6AgbCdhbmNpZW4gbW9kZSAoJW8pIgogCi0jOiBhcHBseS5jOjM5NjcKKyM6IGFwcGx5LmM6Mzk2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgbW9kZSAoJW8pIG9mICVzIGRvZXMgbm90IG1hdGNoIG9sZCBtb2RlICglbykgb2YgJXMiCiBtc2dzdHIgIiIKICJsZSBub3V2ZWF1IG1vZGUgKCVvKSBkZSAlcyBuZSBjb3JyZXNwb25kIHBhcyDDoCBsJ2FuY2llbiBtb2RlICglbykgZGUgJXMiCiAKLSM6IGFwcGx5LmM6Mzk4NworIzogYXBwbHkuYzozOTg0CiAjLCBjLWZvcm1hdAogbXNnaWQgImFmZmVjdGVkIGZpbGUgJyVzJyBpcyBiZXlvbmQgYSBzeW1ib2xpYyBsaW5rIgogbXNnc3RyICJsZSBmaWNoaWVyIGFmZmVjdMOpICclcycgZXN0IGF1LWRlbMOgIGQndW4gbGllbiBzeW1ib2xpcXVlIgogCi0jOiBhcHBseS5jOjM5OTEKKyM6IGFwcGx5LmM6Mzk4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogcGF0Y2ggZG9lcyBub3QgYXBwbHkiCiBtc2dzdHIgIiVzIDogbGUgcGF0Y2ggbmUgcydhcHBsaXF1ZSBwYXMiCiAKLSM6IGFwcGx5LmM6NDAwNgorIzogYXBwbHkuYzo0MDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoZWNraW5nIHBhdGNoICVzLi4uIgogbXNnc3RyICJWw6lyaWZpY2F0aW9uIGR1IHBhdGNoICVzLi4uIgogCi0jOiBhcHBseS5jOjQwOTgKKyM6IGFwcGx5LmM6NDA5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJzaGExIGluZm9ybWF0aW9uIGlzIGxhY2tpbmcgb3IgdXNlbGVzcyBmb3Igc3VibW9kdWxlICVzIgogbXNnc3RyICIiCiAibCdpbmZvcm1hdGlvbiBzaGExIGVzdCBtYW5xdWFudGUgb3UgaW51dGlsaXNhYmxlIHBvdXIgbGUgc291cy1tb2R1bGUgJXMiCiAKLSM6IGFwcGx5LmM6NDEwNQorIzogYXBwbHkuYzo0MTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1vZGUgY2hhbmdlIGZvciAlcywgd2hpY2ggaXMgbm90IGluIGN1cnJlbnQgSEVBRCIKIG1zZ3N0ciAibGUgbW9kZSBjaGFuZ2UgcG91ciAlcywgcXVpIG4nZXN0IHBhcyBkYW5zIGxhIEhFQUQgYWN0dWVsbGUiCiAKLSM6IGFwcGx5LmM6NDEwOAorIzogYXBwbHkuYzo0MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzICglcykuIgogbXNnc3RyICJsJ2luZm9ybWF0aW9uIGRlIHNoYTEgZXN0IG1hbnF1YW50ZSBvdSBpbnV0aWxpc2FibGUgKCVzKS4iCiAKLSM6IGFwcGx5LmM6NDExMyBidWlsdGluL2NoZWNrb3V0LmM6MjQ0IGJ1aWx0aW4vcmVzZXQuYzoxNDIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibWFrZV9jYWNoZV9lbnRyeSBmYWlsZWQgZm9yIHBhdGggJyVzJyIKLW1zZ3N0ciAiw6ljaGVjIGRlIG1ha2VfY2FjaGVfZW50cnkgcG91ciBsZSBjaGVtaW4gJyVzJyIKLQotIzogYXBwbHkuYzo0MTE3CisjOiBhcHBseS5jOjQxMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGFkZCAlcyB0byB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgImltcG9zc2libGUgZCdham91dGVyICVzIMOgIGwnaW5kZXggdGVtcG9yYWlyZSIKIAotIzogYXBwbHkuYzo0MTI3CisjOiBhcHBseS5jOjQxMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIHRlbXBvcmFyeSBpbmRleCB0byAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgbCdpbmRleCB0ZW1wb3JhaXJlIGRhbnMgJXMiCiAKLSM6IGFwcGx5LmM6NDI2NQorIzogYXBwbHkuYzo0MjYyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXMgZnJvbSBpbmRleCIKIG1zZ3N0ciAic3VwcHJlc3Npb24gZGUgJXMgZGFucyBsJ2luZGV4IGltcG9zc2libGUiCiAKLSM6IGFwcGx5LmM6NDI5OQorIzogYXBwbHkuYzo0Mjk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgcGF0Y2ggZm9yIHN1Ym1vZHVsZSAlcyIKIG1zZ3N0ciAicGF0Y2ggY29ycm9tcHUgcG91ciBsZSBzb3VzLW1vZHVsZSAlcyIKIAotIzogYXBwbHkuYzo0MzA1CisjOiBhcHBseS5jOjQzMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3bHkgY3JlYXRlZCBmaWxlICclcyciCiBtc2dzdHIgInN0YXQgZHUgZmljaGllciBub3V2ZWxsZW1lbnQgY3LDqcOpICclcycgaW1wb3NzaWJsZSIKIAotIzogYXBwbHkuYzo0MzEzCisjOiBhcHBseS5jOjQzMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBiYWNraW5nIHN0b3JlIGZvciBuZXdseSBjcmVhdGVkIGZpbGUgJXMiCiBtc2dzdHIgIiIKICJjcsOpYXRpb24gZHUgbWFnYXNpbiBkZSBzdG9ja2FnZSBwb3VyIGxlIGZpY2hpZXIgbm91dmVsbGVtZW50IGNyw6nDqSAlcyAiCiAiaW1wb3NzaWJsZSIKIAotIzogYXBwbHkuYzo0MzE5IGFwcGx5LmM6NDQ2NAorIzogYXBwbHkuYzo0MzE2IGFwcGx5LmM6NDQ2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIGNhY2hlIGVudHJ5IGZvciAlcyIKIG1zZ3N0ciAiYWpvdXQgZGUgbCfDqWzDqW1lbnQgZGUgY2FjaGUgJXMgaW1wb3NzaWJsZSIKIAotIzogYXBwbHkuYzo0MzYyCisjOiBhcHBseS5jOjQzNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvICclcyciCiBtc2dzdHIgIsOpY2hlYyBkZSBsJ8OpY3JpdHVyZSBkYW5zICclcyciCiAKLSM6IGFwcGx5LmM6NDM2NgorIzogYXBwbHkuYzo0MzYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNsb3NpbmcgZmlsZSAnJXMnIgogbXNnc3RyICJmZXJtZXR1cmUgZHUgZmljaGllciAnJXMnIgogCi0jOiBhcHBseS5jOjQ0MzYKKyM6IGFwcGx5LmM6NDQzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIG1vZGUgJW8iCiBtc2dzdHIgIsOpY3JpdHVyZSBkdSBmaWNoaWVyICclcycgbW9kZSAlbyBpbXBvc3NpYmxlIgogCi0jOiBhcHBseS5jOjQ1MzQKKyM6IGFwcGx5LmM6NDUzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBsaWVkIHBhdGNoICVzIGNsZWFubHkuIgogbXNnc3RyICJQYXRjaCAlcyBhcHBsaXF1w6kgcHJvcHJlbWVudC4iCiAKLSM6IGFwcGx5LmM6NDU0MgorIzogYXBwbHkuYzo0NTM5CiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IiCiBtc2dzdHIgImVycmV1ciBpbnRlcm5lIgogCi0jOiBhcHBseS5jOjQ1NDUKKyM6IGFwcGx5LmM6NDU0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBseWluZyBwYXRjaCAlJXMgd2l0aCAlZCByZWplY3QuLi4iCiBtc2dpZF9wbHVyYWwgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdHMuLi4iCiBtc2dzdHJbMF0gIkFwcGxpY2F0aW9uIGR1IHBhdGNoICUlcyBhdmVjICVkIHJlamV0Li4uIgogbXNnc3RyWzFdICJBcHBsaWNhdGlvbiBkdSBwYXRjaCAlJXMgYXZlYyAlZCByZWpldHMuLi4iCiAKLSM6IGFwcGx5LmM6NDU1NgorIzogYXBwbHkuYzo0NTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgInRydW5jYXRpbmcgLnJlaiBmaWxlbmFtZSB0byAlLipzLnJlaiIKIG1zZ3N0ciAidHJvbmNhdHVyZSBkdSBub20gZGUgZmljaGllciAucmVqIGVuICUuKnMucmVqIgogCi0jOiBhcHBseS5jOjQ1NjQgYnVpbHRpbi9mZXRjaC5jOjg0MyBidWlsdGluL2ZldGNoLmM6MTEyMgorIzogYXBwbHkuYzo0NTYxIGJ1aWx0aW4vZmV0Y2guYzo5MDEgYnVpbHRpbi9mZXRjaC5jOjEyMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG9wZW4gJXMiCiBtc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgJXMiCiAKLSM6IGFwcGx5LmM6NDU3OAorIzogYXBwbHkuYzo0NTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkh1bmsgIyVkIGFwcGxpZWQgY2xlYW5seS4iCiBtc2dzdHIgIlNlY3Rpb24gbsKwJWQgYXBwbGlxdcOpZSBwcm9wcmVtZW50LiIKIAotIzogYXBwbHkuYzo0NTgyCisjOiBhcHBseS5jOjQ1NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVqZWN0ZWQgaHVuayAjJWQuIgogbXNnc3RyICJTZWN0aW9uIG7CsCVkIHJlamV0w6llLiIKIAotIzogYXBwbHkuYzo0NjkyCisjOiBhcHBseS5jOjQ2OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBlZCBwYXRjaCAnJXMnLiIKIG1zZ3N0ciAiQ2hlbWluICclcycgbm9uIHRyYWl0w6kuIgogCi0jOiBhcHBseS5jOjQ3MDAKKyM6IGFwcGx5LmM6NDcwNgogbXNnaWQgInVucmVjb2duaXplZCBpbnB1dCIKIG1zZ3N0ciAiZW50csOpZSBub24gcmVjb25udWUiCiAKLSM6IGFwcGx5LmM6NDcxOQorIzogYXBwbHkuYzo0NzI2CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgaW5kZXggZmlsZSIKIG1zZ3N0ciAibGVjdHVyZSBkdSBmaWNoaWVyIGQnaW5kZXggaW1wb3NzaWJsZSIKIAotIzogYXBwbHkuYzo0ODc0CisjOiBhcHBseS5jOjQ4ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgb3BlbiBwYXRjaCAnJXMnOiAlcyIKIG1zZ3N0ciAib3V2ZXJ0dXJlIGltcG9zc2libGUgZHUgcGF0Y2ggJyVzJ8KgOiVzIgogCi0jOiBhcHBseS5jOjQ5MDEKKyM6IGFwcGx5LmM6NDkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJzcXVlbGNoZWQgJWQgd2hpdGVzcGFjZSBlcnJvciIKIG1zZ2lkX3BsdXJhbCAic3F1ZWxjaGVkICVkIHdoaXRlc3BhY2UgZXJyb3JzIgogbXNnc3RyWzBdICIlZCBlcnJldXIgZCdlc3BhY2UgaWdub3LDqWUiCiBtc2dzdHJbMV0gIiVkIGVycmV1cnMgZCdlc3BhY2UgaWdub3LDqWVzIgogCi0jOiBhcHBseS5jOjQ5MDcgYXBwbHkuYzo0OTIyCisjOiBhcHBseS5jOjQ5MTYgYXBwbHkuYzo0OTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVkIGxpbmUgYWRkcyB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dpZF9wbHVyYWwgIiVkIGxpbmVzIGFkZCB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dzdHJbMF0gIiVkIGxpZ25lIGEgYWpvdXTDqSBkZXMgZXJyZXVycyBkJ2VzcGFjZS4iCiBtc2dzdHJbMV0gIiVkIGxpZ25lcyBvbnQgYWpvdXTDqSBkZXMgZXJyZXVycyBkJ2VzcGFjZS4iCiAKLSM6IGFwcGx5LmM6NDkxNQorIzogYXBwbHkuYzo0OTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVkIGxpbmUgYXBwbGllZCBhZnRlciBmaXhpbmcgd2hpdGVzcGFjZSBlcnJvcnMuIgogbXNnaWRfcGx1cmFsICIlZCBsaW5lcyBhcHBsaWVkIGFmdGVyIGZpeGluZyB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dzdHJbMF0gIiVkIGxpZ25lIGFqb3V0w6llIGFwcsOocyBjb3JyZWN0aW9uIGRlcyBlcnJldXJzIGQnZXNwYWNlLiIKIG1zZ3N0clsxXSAiJWQgbGlnbmVzIGFqb3V0w6llcyBhcHLDqHMgY29ycmVjdGlvbiBkZXMgZXJyZXVycyBkJ2VzcGFjZS4iCiAKLSM6IGFwcGx5LmM6NDkzMSBidWlsdGluL2FkZC5jOjUzOCBidWlsdGluL212LmM6MzAwIGJ1aWx0aW4vcm0uYzozODkKKyM6IGFwcGx5LmM6NDk0MCBidWlsdGluL2FkZC5jOjYxMiBidWlsdGluL212LmM6MzAxIGJ1aWx0aW4vcm0uYzo0MDYKIG1zZ2lkICJVbmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCiBtc2dzdHIgIkltcG9zc2libGUgZCfDqWNyaXJlIGxlIG5vdXZlYXUgZmljaGllciBkJ2luZGV4IgogCi0jOiBhcHBseS5jOjQ5NTggYXBwbHkuYzo0OTYxIGJ1aWx0aW4vYW0uYzoyMjA5IGJ1aWx0aW4vYW0uYzoyMjEyCi0jOiBidWlsdGluL2Nsb25lLmM6MTIxIGJ1aWx0aW4vZmV0Y2guYzoxMTggYnVpbHRpbi9tZXJnZS5jOjI2MgotIzogYnVpbHRpbi9wdWxsLmM6MTk5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MDYKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzYyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY1Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0NiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0OQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwODggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJwYXRoIgotbXNnc3RyICJjaGVtaW4iCi0KLSM6IGFwcGx5LmM6NDk1OQorIzogYXBwbHkuYzo0OTY4CiBtc2dpZCAiZG9uJ3QgYXBwbHkgY2hhbmdlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCIKIG1zZ3N0ciAibmUgcGFzIGFwcGxpcXVlciBsZXMgbW9kaWZpY2F0aW9ucyBxdWkgY29ycmVzcG9uZGVudCBhdSBjaGVtaW4gZG9ubsOpIgogCi0jOiBhcHBseS5jOjQ5NjIKKyM6IGFwcGx5LmM6NDk3MQogbXNnaWQgImFwcGx5IGNoYW5nZXMgbWF0Y2hpbmcgdGhlIGdpdmVuIHBhdGgiCiBtc2dzdHIgImFwcGxpcXVlciBsZXMgbW9kaWZpY2F0aW9ucyBxdWkgY29ycmVzcG9uZGVudCBhdSBjaGVtaW4gZG9ubsOpIgogCi0jOiBhcHBseS5jOjQ5NjQgYnVpbHRpbi9hbS5jOjIyMTgKKyM6IGFwcGx5LmM6NDk3MyBidWlsdGluL2FtLmM6MjI2MAogbXNnaWQgIm51bSIKIG1zZ3N0ciAibnVtIgogCi0jOiBhcHBseS5jOjQ5NjUKKyM6IGFwcGx5LmM6NDk3NAogbXNnaWQgInJlbW92ZSA8bnVtPiBsZWFkaW5nIHNsYXNoZXMgZnJvbSB0cmFkaXRpb25hbCBkaWZmIHBhdGhzIgogbXNnc3RyICJzdXBwcmltZXIgPG51bT4gYmFycmVzIG9ibGlxdWVzIGRlcyBjaGVtaW5zIHRyYWRpdGlvbm5lbHMgZGUgZGlmZiIKIAotIzogYXBwbHkuYzo0OTY4CisjOiBhcHBseS5jOjQ5NzcKIG1zZ2lkICJpZ25vcmUgYWRkaXRpb25zIG1hZGUgYnkgdGhlIHBhdGNoIgogbXNnc3RyICJpZ25vcmVyIGxlcyBhZGRpdGlvbnMgcsOpYWxpc8OpZXMgcGFyIGxlIHBhdGNoIgogCi0jOiBhcHBseS5jOjQ5NzAKKyM6IGFwcGx5LmM6NDk3OQogbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBvdXRwdXQgZGlmZnN0YXQgZm9yIHRoZSBpbnB1dCIKIG1zZ3N0ciAiYXUgbGlldSBkJ2FwcGxpcXVlciBsZSBwYXRjaCwgYWZmaWNoZXIgbGUgZGlmZnN0YXQgZGUgbCdlbnRyw6llIgogCi0jOiBhcHBseS5jOjQ5NzQKKyM6IGFwcGx5LmM6NDk4MwogbXNnaWQgInNob3cgbnVtYmVyIG9mIGFkZGVkIGFuZCBkZWxldGVkIGxpbmVzIGluIGRlY2ltYWwgbm90YXRpb24iCiBtc2dzdHIgIiIKICJhZmZpY2hlciBsZSBub21icmUgZGUgbGlnbmVzIGFqb3V0w6llcyBldCBzdXBwcmltw6llcyBlbiBub3RhdGlvbiBkw6ljaW1hbGUiCiAKLSM6IGFwcGx5LmM6NDk3NgorIzogYXBwbHkuYzo0OTg1CiBtc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIG91dHB1dCBhIHN1bW1hcnkgZm9yIHRoZSBpbnB1dCIKIG1zZ3N0ciAiYXUgbGlldSBkJ2FwcGxpcXVlciBsZSBwYXRjaCwgYWZmaWNoZXIgdW4gcsOpc3Vtw6kgZGUgbCdlbnRyw6llIgogCi0jOiBhcHBseS5jOjQ5NzgKKyM6IGFwcGx5LmM6NDk4NwogbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBzZWUgaWYgdGhlIHBhdGNoIGlzIGFwcGxpY2FibGUiCiBtc2dzdHIgImF1IGxpZXUgZCdhcHBsaXF1ZXIgbGUgcGF0Y2gsIHZvaXIgc2kgbGUgcGF0Y2ggZXN0IGFwcGxpY2FibGUiCiAKLSM6IGFwcGx5LmM6NDk4MAorIzogYXBwbHkuYzo0OTg5CiBtc2dpZCAibWFrZSBzdXJlIHRoZSBwYXRjaCBpcyBhcHBsaWNhYmxlIHRvIHRoZSBjdXJyZW50IGluZGV4IgogbXNnc3RyICJzJ2Fzc3VyZXIgcXVlIGxlIHBhdGNoIGVzdCBhcHBsaWNhYmxlIHN1ciBsJ2luZGV4IGFjdHVlbCIKIAotIzogYXBwbHkuYzo0OTgyCisjOiBhcHBseS5jOjQ5OTEKIG1zZ2lkICJtYXJrIG5ldyBmaWxlcyB3aXRoIGBnaXQgYWRkIC0taW50ZW50LXRvLWFkZGAiCiBtc2dzdHIgIm1hcnF1ZXIgbGVzIG5vdXZlYXV4IGZpY2hpZXJzIGBnaXQgYWRkIC0taW50ZW50LXRvLWFkZGAiCiAKLSM6IGFwcGx5LmM6NDk4NAorIzogYXBwbHkuYzo0OTkzCiBtc2dpZCAiYXBwbHkgYSBwYXRjaCB3aXRob3V0IHRvdWNoaW5nIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgImFwcGxpcXVlciBsZXMgcGF0Y2ggc2FucyB0b3VjaGVyIMOgIGxhIGNvcGllIGRlIHRyYXZhaWwiCiAKLSM6IGFwcGx5LmM6NDk4NgorIzogYXBwbHkuYzo0OTk1CiBtc2dpZCAiYWNjZXB0IGEgcGF0Y2ggdGhhdCB0b3VjaGVzIG91dHNpZGUgdGhlIHdvcmtpbmcgYXJlYSIKIG1zZ3N0ciAiYWNjZXB0ZXIgdW4gcGF0Y2ggcXVpIHRvdWNoZSBob3JzIGRlIGxhIGNvcGllIGRlIHRyYXZhaWwiCiAKLSM6IGFwcGx5LmM6NDk4OQorIzogYXBwbHkuYzo0OTk4CiBtc2dpZCAiYWxzbyBhcHBseSB0aGUgcGF0Y2ggKHVzZSB3aXRoIC0tc3RhdC8tLXN1bW1hcnkvLS1jaGVjaykiCi1tc2dzdHIgImFwcGxpcXVlciBhdXNzaSBsZSBwYXRjaCAow6AgdXRpbGlzZXIgYXZlYyAtLS1zdGF0Ly0tc3VtbWFyeS8tLWNoZWNrKSIKK21zZ3N0ciAiYXBwbGlxdWVyIGF1c3NpIGxlIHBhdGNoICjDoCB1dGlsaXNlciBhdmVjIC0tc3RhdC8tLXN1bW1hcnkvLS1jaGVjaykiCiAKLSM6IGFwcGx5LmM6NDk5MQorIzogYXBwbHkuYzo1MDAwCiBtc2dpZCAiYXR0ZW1wdCB0aHJlZS13YXkgbWVyZ2UgaWYgYSBwYXRjaCBkb2VzIG5vdCBhcHBseSIKIG1zZ3N0ciAidGVudGVyIHVuZSBmdXNpb24gw6AgMyBwb2ludHMgc2kgbGUgcGF0Y2ggbmUgcydhcHBsaXF1ZSBwYXMgcHJvcHJlbWVudCIKIAotIzogYXBwbHkuYzo0OTkzCisjOiBhcHBseS5jOjUwMDIKIG1zZ2lkICJidWlsZCBhIHRlbXBvcmFyeSBpbmRleCBiYXNlZCBvbiBlbWJlZGRlZCBpbmRleCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiIgogImNvbnN0cnVpcmUgdW4gaW5kZXggdGVtcG9yYWlyZSBmb25kw6kgc3VyIGwnaW5mb3JtYXRpb24gZGUgbCdpbmRleCBlbWJhcnF1w6kiCiAKLSM6IGFwcGx5LmM6NDk5NiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjMKKyM6IGFwcGx5LmM6NTAwNSBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTczIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjQKIG1zZ2lkICJwYXRocyBhcmUgc2VwYXJhdGVkIHdpdGggTlVMIGNoYXJhY3RlciIKIG1zZ3N0ciAibGVzIGNoZW1pbnMgc29udCBzw6lwYXLDqXMgcGFyIHVuIGNhcmFjdMOocmUgTlVMIgogCi0jOiBhcHBseS5jOjQ5OTgKKyM6IGFwcGx5LmM6NTAwNwogbXNnaWQgImVuc3VyZSBhdCBsZWFzdCA8bj4gbGluZXMgb2YgY29udGV4dCBtYXRjaCIKIG1zZ3N0ciAicydhc3N1cmVyIGQnYXUgbW9pbnMgPG4+IGxpZ25lcyBkZSBjb3JyZXNwb25kYW5jZSBkZSBjb250ZXh0ZSIKIAotIzogYXBwbHkuYzo0OTk5IGJ1aWx0aW4vYW0uYzoyMTk3IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTcKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTkgYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDEKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxMiBidWlsdGluL3JlYmFzZS5jOjg1NworIzogYXBwbHkuYzo1MDA4IGJ1aWx0aW4vYW0uYzoyMjM5IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTgKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAwIGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTcgYnVpbHRpbi9yZWJhc2UuYzoxNTA4CiBtc2dpZCAiYWN0aW9uIgogbXNnc3RyICJhY3Rpb24iCiAKLSM6IGFwcGx5LmM6NTAwMAorIzogYXBwbHkuYzo1MDA5CiBtc2dpZCAiZGV0ZWN0IG5ldyBvciBtb2RpZmllZCBsaW5lcyB0aGF0IGhhdmUgd2hpdGVzcGFjZSBlcnJvcnMiCiBtc2dzdHIgIiIKICJkw6l0ZWN0ZXIgZGVzIGxpZ25lcyBub3V2ZWxsZXMgb3UgbW9kaWZpw6llcyBxdWkgY29udGllbm5lbnQgZGVzIGVycmV1cnMgIgogImQnZXNwYWNlIgogCi0jOiBhcHBseS5jOjUwMDMgYXBwbHkuYzo1MDA2CisjOiBhcHBseS5jOjUwMTIgYXBwbHkuYzo1MDE1CiBtc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSB3aGVuIGZpbmRpbmcgY29udGV4dCIKIG1zZ3N0ciAiaWdub3JlciBkZXMgbW9kaWZpY2F0aW9ucyBkJ2VzcGFjZSBsb3JzIGRlIGxhIHJlY2hlcmNoZSBkZSBjb250ZXh0ZSIKIAotIzogYXBwbHkuYzo1MDA5CisjOiBhcHBseS5jOjUwMTgKIG1zZ2lkICJhcHBseSB0aGUgcGF0Y2ggaW4gcmV2ZXJzZSIKIG1zZ3N0ciAiYXBwbGlxdWVyIGxlIHBhdGNoIGVuIHNlbnMgaW52ZXJzZSIKIAotIzogYXBwbHkuYzo1MDExCisjOiBhcHBseS5jOjUwMjAKIG1zZ2lkICJkb24ndCBleHBlY3QgYXQgbGVhc3Qgb25lIGxpbmUgb2YgY29udGV4dCIKIG1zZ3N0ciAibmUgcGFzIHMnYXR0ZW5kcmUgw6AgYXUgbW9pbnMgdW5lIGxpZ25lIGRlIGNvbnRleHRlIgogCi0jOiBhcHBseS5jOjUwMTMKKyM6IGFwcGx5LmM6NTAyMgogbXNnaWQgImxlYXZlIHRoZSByZWplY3RlZCBodW5rcyBpbiBjb3JyZXNwb25kaW5nICoucmVqIGZpbGVzIgogbXNnc3RyICJsYWlzc2VyIGxlcyBzZWN0aW9ucyByZWpldMOpZXMgZGFucyBsZXMgZmljaGllcnMgKi5yZWogY29ycmVzcG9uZGFudHMiCiAKLSM6IGFwcGx5LmM6NTAxNQorIzogYXBwbHkuYzo1MDI0CiBtc2dpZCAiYWxsb3cgb3ZlcmxhcHBpbmcgaHVua3MiCiBtc2dzdHIgImFjY2VwdGVyIGxlcyByZWNvdXZyZW1lbnRzIGRlIHNlY3Rpb25zIgogCi0jOiBhcHBseS5jOjUwMTYgYnVpbHRpbi9hZGQuYzoyOTAgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyMQotIzogYnVpbHRpbi9jb21taXQuYzoxMzA5IGJ1aWx0aW4vY291bnQtb2JqZWN0cy5jOjk4IGJ1aWx0aW4vZnNjay5jOjY5OAotIzogYnVpbHRpbi9sb2cuYzoyMDIzIGJ1aWx0aW4vbXYuYzoxMjIgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjcKLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1NworIzogYXBwbHkuYzo1MDI1IGJ1aWx0aW4vYWRkLmM6MzIzIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MCBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5OCBidWlsdGluL2ZzY2suYzo3NzQKKyM6IGJ1aWx0aW4vbG9nLmM6MjE2NiBidWlsdGluL212LmM6MTIzIGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI4CiBtc2dpZCAiYmUgdmVyYm9zZSIKIG1zZ3N0ciAibW9kZSB2ZXJiZXV4IgogCi0jOiBhcHBseS5jOjUwMTgKKyM6IGFwcGx5LmM6NTAyNwogbXNnaWQgInRvbGVyYXRlIGluY29ycmVjdGx5IGRldGVjdGVkIG1pc3NpbmcgbmV3LWxpbmUgYXQgdGhlIGVuZCBvZiBmaWxlIgogbXNnc3RyICIiCiAidG9sw6lyZXIgZGVzIGVycmV1cnMgZGUgZMOpdGVjdGlvbiBkZSByZXRvdXJzIGNoYXJpb3QgbWFucXVhbnRzIGVuIGZpbiBkZSAiCiAiZmljaGllciIKIAotIzogYXBwbHkuYzo1MDIxCisjOiBhcHBseS5jOjUwMzAKIG1zZ2lkICJkbyBub3QgdHJ1c3QgdGhlIGxpbmUgY291bnRzIGluIHRoZSBodW5rIGhlYWRlcnMiCiBtc2dzdHIgIm5lIHBhcyBzZSBmaWVyIGF1IGNvbXB0ZSBkZSBsaWduZXMgZGFucyBsZXMgZW4tdMOqdGVzIGRlIHNlY3Rpb24iCiAKLSM6IGFwcGx5LmM6NTAyMyBidWlsdGluL2FtLmM6MjIwNgorIzogYXBwbHkuYzo1MDMyIGJ1aWx0aW4vYW0uYzoyMjQ4CiBtc2dpZCAicm9vdCIKIG1zZ3N0ciAicmFjaW5lIgogCi0jOiBhcHBseS5jOjUwMjQKKyM6IGFwcGx5LmM6NTAzMwogbXNnaWQgInByZXBlbmQgPHJvb3Q+IHRvIGFsbCBmaWxlbmFtZXMiCiBtc2dzdHIgInByw6lmaXhlciB0b3VzIGxlcyBub21zIGRlIGZpY2hpZXIgYXZlYyA8cm9vdD4iCiAKQEAgLTg0MSwxNDggKzE1NDMsMTY4IEBACiBtc2dpZCAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPHJlcG8+IFstLWV4ZWMgPGNtZD5dIC0tbGlzdCIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPGTDqXDDtHQ+IFstLWV4ZWMgPGNvbW1hbmRlPl0gLS1saXN0IgogCi0jOiBhcmNoaXZlLmM6MzcwIGJ1aWx0aW4vYWRkLmM6MTc2IGJ1aWx0aW4vYWRkLmM6NTE0IGJ1aWx0aW4vcm0uYzoyOTgKKyM6IGFyY2hpdmUuYzozNzIgYnVpbHRpbi9hZGQuYzoxODEgYnVpbHRpbi9hZGQuYzo1ODggYnVpbHRpbi9ybS5jOjMxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGRpZCBub3QgbWF0Y2ggYW55IGZpbGVzIgogbXNnc3RyICJsZSBjaGVtaW4gJyVzJyBuZSBjb3JyZXNwb25kIMOgIGF1Y3VuIGZpY2hpZXIiCiAKLSM6IGFyY2hpdmUuYzo0NTMKKyM6IGFyY2hpdmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCByZWY6ICUuKnMiCittc2dzdHIgInLDqWbDqXJlbmNlIGluZXhpc3RhbnRlwqA6ICUuKnMiCisKKyM6IGFyY2hpdmUuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0IG5hbWU6ICVzIgorbXNnc3RyICJub20gZCdvYmpldCBpbnZhbGlkZSA6ICVzIgorCisjOiBhcmNoaXZlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHRyZWUgb2JqZWN0OiAlcyIKK21zZ3N0ciAib2JqZXQgYXJicmUgaW52YWxpZGXCoDogJXMiCisKKyM6IGFyY2hpdmUuYzo0MjYKK21zZ2lkICJjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IGlzIHVudHJhY2tlZCIKK21zZ3N0ciAibCdhcmJyZSBkZSB0cmF2YWlsIGFjdHVlbCBlc3Qgbm9uLXN1aXZpIgorCisjOiBhcmNoaXZlLmM6NDU3CiBtc2dpZCAiZm10IgogbXNnc3RyICJmbXQiCiAKLSM6IGFyY2hpdmUuYzo0NTMKKyM6IGFyY2hpdmUuYzo0NTcKIG1zZ2lkICJhcmNoaXZlIGZvcm1hdCIKIG1zZ3N0ciAiZm9ybWF0IGQnYXJjaGl2ZSIKIAotIzogYXJjaGl2ZS5jOjQ1NCBidWlsdGluL2xvZy5jOjE1MzYKKyM6IGFyY2hpdmUuYzo0NTggYnVpbHRpbi9sb2cuYzoxNjUzCiBtc2dpZCAicHJlZml4IgogbXNnc3RyICJwcsOpZml4ZSIKIAotIzogYXJjaGl2ZS5jOjQ1NQorIzogYXJjaGl2ZS5jOjQ1OQogbXNnaWQgInByZXBlbmQgcHJlZml4IHRvIGVhY2ggcGF0aG5hbWUgaW4gdGhlIGFyY2hpdmUiCiBtc2dzdHIgInByw6lmaXhlciBjaGFxdWUgY2hlbWluIGRlIGZpY2hpZXIgZGFucyBsJ2FyY2hpdmUiCiAKLSM6IGFyY2hpdmUuYzo0NTYgYnVpbHRpbi9ibGFtZS5jOjgyMCBidWlsdGluL2JsYW1lLmM6ODIxIGJ1aWx0aW4vY29uZmlnLmM6MTI5Ci0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNSBidWlsdGluL2dyZXAuYzo4ODQKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDQgYnVpbHRpbi9scy1maWxlcy5jOjU1OSBidWlsdGluL2xzLWZpbGVzLmM6NTYyCi0jOiBidWlsdGluL25vdGVzLmM6NDEyIGJ1aWx0aW4vbm90ZXMuYzo1NzUgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjIKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNjIKKyM6IGFyY2hpdmUuYzo0NjAgYnVpbHRpbi9ibGFtZS5jOjg2MSBidWlsdGluL2JsYW1lLmM6ODY1IGJ1aWx0aW4vYmxhbWUuYzo4NjYKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTcgYnVpbHRpbi9jb25maWcuYzoxMzAgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY0IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY4IGJ1aWx0aW4vZ3JlcC5jOjg4NworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNSBidWlsdGluL2xzLWZpbGVzLmM6NTYwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTIgYnVpbHRpbi9ub3Rlcy5jOjU3OCBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogcGFyc2Utb3B0aW9ucy5oOjE5MAogbXNnaWQgImZpbGUiCiBtc2dzdHIgImZpY2hpZXIiCiAKLSM6IGFyY2hpdmUuYzo0NTcgYnVpbHRpbi9hcmNoaXZlLmM6ODkKKyM6IGFyY2hpdmUuYzo0NjEgYnVpbHRpbi9hcmNoaXZlLmM6OTAKIG1zZ2lkICJ3cml0ZSB0aGUgYXJjaGl2ZSB0byB0aGlzIGZpbGUiCiBtc2dzdHIgIsOpY3JpcmUgbCdhcmNoaXZlIGRhbnMgY2UgZmljaGllciIKIAotIzogYXJjaGl2ZS5jOjQ1OQorIzogYXJjaGl2ZS5jOjQ2MwogbXNnaWQgInJlYWQgLmdpdGF0dHJpYnV0ZXMgaW4gd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgImxpcmUgLmdpdGF0dHJpYnV0ZXMgZGFucyBsZSByw6lwZXJ0b2lyZSBkZSB0cmF2YWlsIgogCi0jOiBhcmNoaXZlLmM6NDYwCisjOiBhcmNoaXZlLmM6NDY0CiBtc2dpZCAicmVwb3J0IGFyY2hpdmVkIGZpbGVzIG9uIHN0ZGVyciIKIG1zZ3N0ciAiYWZmaWNoZXIgbGVzIGZpY2hpZXJzIGFyY2hpdsOpcyBzdXIgc3RkZXJyIgogCi0jOiBhcmNoaXZlLmM6NDYxCisjOiBhcmNoaXZlLmM6NDY1CiBtc2dpZCAic3RvcmUgb25seSIKIG1zZ3N0ciAic3RvY2thZ2Ugc2V1bGVtZW50IgogCi0jOiBhcmNoaXZlLmM6NDYyCisjOiBhcmNoaXZlLmM6NDY2CiBtc2dpZCAiY29tcHJlc3MgZmFzdGVyIgogbXNnc3RyICJjb21wcmVzc2lvbiByYXBpZGUiCiAKLSM6IGFyY2hpdmUuYzo0NzAKKyM6IGFyY2hpdmUuYzo0NzQKIG1zZ2lkICJjb21wcmVzcyBiZXR0ZXIiCiBtc2dzdHIgImNvbXByZXNzaW9uIGVmZmljYWNlIgogCi0jOiBhcmNoaXZlLmM6NDczCisjOiBhcmNoaXZlLmM6NDc3CiBtc2dpZCAibGlzdCBzdXBwb3J0ZWQgYXJjaGl2ZSBmb3JtYXRzIgogbXNnc3RyICJhZmZpY2hlciBsZXMgZm9ybWF0cyBkJ2FyY2hpdmUgc3VwcG9ydMOpcyIKIAotIzogYXJjaGl2ZS5jOjQ3NSBidWlsdGluL2FyY2hpdmUuYzo5MCBidWlsdGluL2Nsb25lLmM6MTExIGJ1aWx0aW4vY2xvbmUuYzoxMTQKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU1CisjOiBhcmNoaXZlLmM6NDc5IGJ1aWx0aW4vYXJjaGl2ZS5jOjkxIGJ1aWx0aW4vY2xvbmUuYzoxMTMgYnVpbHRpbi9jbG9uZS5jOjExNgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTEKIG1zZ2lkICJyZXBvIgogbXNnc3RyICJkw6lww7R0IgogCi0jOiBhcmNoaXZlLmM6NDc2IGJ1aWx0aW4vYXJjaGl2ZS5jOjkxCisjOiBhcmNoaXZlLmM6NDgwIGJ1aWx0aW4vYXJjaGl2ZS5jOjkyCiBtc2dpZCAicmV0cmlldmUgdGhlIGFyY2hpdmUgZnJvbSByZW1vdGUgcmVwb3NpdG9yeSA8cmVwbz4iCiBtc2dzdHIgInLDqWN1cMOpcmVyIGwnYXJjaGl2ZSBkZXB1aXMgbGUgZMOpcMO0dCBkaXN0YW50IDxkw6lww7R0PiIKIAotIzogYXJjaGl2ZS5jOjQ3NyBidWlsdGluL2FyY2hpdmUuYzo5MiBidWlsdGluL2RpZmZ0b29sLmM6NzE0Ci0jOiBidWlsdGluL25vdGVzLmM6NDk2CisjOiBhcmNoaXZlLmM6NDgxIGJ1aWx0aW4vYXJjaGl2ZS5jOjkzIGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTgKIG1zZ2lkICJjb21tYW5kIgogbXNnc3RyICJjb21tYW5kZSIKIAotIzogYXJjaGl2ZS5jOjQ3OCBidWlsdGluL2FyY2hpdmUuYzo5MworIzogYXJjaGl2ZS5jOjQ4MiBidWlsdGluL2FyY2hpdmUuYzo5NAogbXNnaWQgInBhdGggdG8gdGhlIHJlbW90ZSBnaXQtdXBsb2FkLWFyY2hpdmUgY29tbWFuZCIKIG1zZ3N0ciAiY2hlbWluIHZlcnMgbGEgY29tbWFuZGUgZGlzdGFudGUgZ2l0LXVwbG9hZC1hcmNoaXZlIgogCi0jOiBhcmNoaXZlLmM6NDg1CisjOiBhcmNoaXZlLmM6NDg5CiBtc2dpZCAiVW5leHBlY3RlZCBvcHRpb24gLS1yZW1vdGUiCiBtc2dzdHIgIk9wdGlvbiAtLXJlbW90ZSBpbmF0dGVuZHVlIgogCi0jOiBhcmNoaXZlLmM6NDg3CisjOiBhcmNoaXZlLmM6NDkxCiBtc2dpZCAiT3B0aW9uIC0tZXhlYyBjYW4gb25seSBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggLS1yZW1vdGUiCiBtc2dzdHIgIkwnb3B0aW9uIC0tZXhlYyBuZSBwZXV0IMOqdHJlIHV0aWxpc8OpZSBxdSdlbiBjb21wbMOpbWVudCBkZSAtLXJlbW90ZSIKIAotIzogYXJjaGl2ZS5jOjQ4OQorIzogYXJjaGl2ZS5jOjQ5MwogbXNnaWQgIlVuZXhwZWN0ZWQgb3B0aW9uIC0tb3V0cHV0IgogbXNnc3RyICJPcHRpb24gLS1vdXRwdXQgaW5hdHRlbmR1ZSIKIAotIzogYXJjaGl2ZS5jOjUxMQorIzogYXJjaGl2ZS5jOjUxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmtub3duIGFyY2hpdmUgZm9ybWF0ICclcyciCiBtc2dzdHIgIkZvcm1hdCBkJ2FyY2hpdmUgaW5jb25udSAnJXMnIgogCi0jOiBhcmNoaXZlLmM6NTE4CisjOiBhcmNoaXZlLmM6NTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFyZ3VtZW50IG5vdCBzdXBwb3J0ZWQgZm9yIGZvcm1hdCAnJXMnOiAtJWQiCiBtc2dzdHIgIkFyZ3VtZW50IG5vbiBzdXBwb3J0w6kgcG91ciBsZSBmb3JtYXQgJyVzJ8KgOiAtJWQiCiAKLSM6IGFyY2hpdmUtdGFyLmM6MTI1IGFyY2hpdmUtemlwLmM6MzQ1CisjOiBhcmNoaXZlLXRhci5jOjEyNSBhcmNoaXZlLXppcC5jOjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RyZWFtIGJsb2IgJXMiCiBtc2dzdHIgImltcG9zc2libGUgZGUgdHJhbnNtZXR0cmUgbGUgYmxvYiAlcyBlbiBmbHV4IgogCi0jOiBhcmNoaXZlLXRhci5jOjI2MCBhcmNoaXZlLXppcC5jOjM2MworIzogYXJjaGl2ZS10YXIuYzoyNjYgYXJjaGl2ZS16aXAuYzozNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5zdXBwb3J0ZWQgZmlsZSBtb2RlOiAwJW8gKFNIQTE6ICVzKSIKIG1zZ3N0ciAibW9kZSBkZSBmaWNoaWVyIG5vbiBzdXBwb3J0w6nCoDowJW8gKFNIQTE6ICVzKSIKIAotIzogYXJjaGl2ZS10YXIuYzoyODcgYXJjaGl2ZS16aXAuYzozNTMKKyM6IGFyY2hpdmUtdGFyLmM6MjkzIGFyY2hpdmUtemlwLmM6MzU5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgJXMiCiAKLSM6IGFyY2hpdmUtdGFyLmM6NDU4CisjOiBhcmNoaXZlLXRhci5jOjQ2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gc3RhcnQgJyVzJyBmaWx0ZXIiCiBtc2dzdHIgImltcG9zc2libGUgZGUgZMOpbWFycmVyIGxlIGZpbHRyZSAnJXMnIgogCi0jOiBhcmNoaXZlLXRhci5jOjQ2MQorIzogYXJjaGl2ZS10YXIuYzo0NjgKIG1zZ2lkICJ1bmFibGUgdG8gcmVkaXJlY3QgZGVzY3JpcHRvciIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByZWRpcmlnZXIgdW4gZGVzY3JpcHRldXIiCiAKLSM6IGFyY2hpdmUtdGFyLmM6NDY4CisjOiBhcmNoaXZlLXRhci5jOjQ3NQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGZpbHRlciByZXBvcnRlZCBlcnJvciIKIG1zZ3N0ciAibGUgZmlsdHJlICclcycgYSByZXRvdXJuw6kgdW5lIGVycmV1ciIKIAotIzogYXJjaGl2ZS16aXAuYzozMTQKKyM6IGFyY2hpdmUtemlwLmM6MzE5CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggaXMgbm90IHZhbGlkIFVURi04OiAlcyIKIG1zZ3N0ciAibGUgY2hlbWluIG4nZXN0IHBhcyBjb2TDqSBlbiBVVEYtOCB2YWxpZGXCoDogJXMiCiAKLSM6IGFyY2hpdmUtemlwLmM6MzE4CisjOiBhcmNoaXZlLXppcC5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoIHRvbyBsb25nICglZCBjaGFycywgU0hBMTogJXMpOiAlcyIKIG1zZ3N0ciAibGUgY2hlbWluIGVzdCB0cm9wIGxvbmcgKCVkIGNhcmFjdMOocmVzLCBTSEExwqA6ICVzKcKgOiAlcyIKIAotIzogYXJjaGl2ZS16aXAuYzo0NzQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjcKKyM6IGFyY2hpdmUtemlwLmM6NDgwIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjMxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlZmxhdGUgZXJyb3IgKCVkKSIKIG1zZ3N0ciAiZXJyZXVyIGRlIGNvbXByZXNzaW9uICglZCkiCiAKLSM6IGFyY2hpdmUtemlwLmM6NjA5CisjOiBhcmNoaXZlLXppcC5jOjYxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aW1lc3RhbXAgdG9vIGxhcmdlIGZvciB0aGlzIHN5c3RlbTogJTxQUkl1TUFYPiIKIG1zZ3N0ciAibCdob3JvZGF0YWdlIGVzdCB0cm9wIGdyYW5kIHBvdXIgY2Ugc3lzdMOobWXCoDogJTxQUkl1TUFYPiIKQEAgLTk5Miw2ICsxNzE0LDExIEBACiBtc2dpZCAiJS4qcyBpcyBub3QgYSB2YWxpZCBhdHRyaWJ1dGUgbmFtZSIKIG1zZ3N0ciAiJS4qcyBuJ2VzdCBwYXMgdW4gbm9tIHZhbGlkZSBkJ2F0dHJpYnV0IgogCisjOiBhdHRyLmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIG5vdCBhbGxvd2VkOiAlczolZCIKK21zZ3N0ciAiJXMgbm9uIHBlcm1pcyA6ICVzIDogJWQiCisKICM6IGF0dHIuYzo0MDkKIG1zZ2lkICIiCiAiTmVnYXRpdmUgcGF0dGVybnMgYXJlIGlnbm9yZWQgaW4gZ2l0IGF0dHJpYnV0ZXNcbiIKQEAgLTEwMDUsMTcgKzE3MzIsMTcgQEAKIG1zZ2lkICJCYWRseSBxdW90ZWQgY29udGVudCBpbiBmaWxlICclcyc6ICVzIgogbXNnc3RyICJDb250ZW51IG1hbCBjaXTDqSBkYW5zIGxlIGZpY2hpZXIgJyVzJ8KgOiAlcyIKIAotIzogYmlzZWN0LmM6Njc2CisjOiBiaXNlY3QuYzo2NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiV2UgY2Fubm90IGJpc2VjdCBtb3JlIVxuIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHBvdXNzZXIgbGEgYmlzc2VjdGlvbiBwbHVzIGxvaW7CoCFcbiIKIAotIzogYmlzZWN0LmM6NzMwCisjOiBiaXNlY3QuYzo3NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgY29tbWl0IG5hbWUgJXMiCiBtc2dzdHIgIiVzIG4nZXN0IHBhcyB1biBub20gZGUgY29tbWl0IHZhbGlkZSIKIAotIzogYmlzZWN0LmM6NzU0CisjOiBiaXNlY3QuYzo3NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBtZXJnZSBiYXNlICVzIGlzIGJhZC5cbiIKQEAgLTEwMjQsNyArMTc1MSw3IEBACiAiTGEgYmFzZSBkZSBmdXNpb24gJXMgZXN0IG1hdXZhaXNlLlxuIgogIkNlbGEgc2lnbmlmaWUgcXVlIGxlIGJvZ3VlIMOpdMOpIGNvcnJpZ8OpIGVudHJlICVzIGV0IFslc10uXG4iCiAKLSM6IGJpc2VjdC5jOjc1OQorIzogYmlzZWN0LmM6Nzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgbWVyZ2UgYmFzZSAlcyBpcyBuZXcuXG4iCkBAIC0xMDMzLDcgKzE3NjAsNyBAQAogIkxhIGJhc2UgZGUgZnVzaW9uICVzIGVzdCBub3V2ZWxsZS5cbiIKICJMYSBwcm9wcmnDqXTDqSBhIGNoYW5nw6kgZW50cmUgJXMgZXQgWyVzXS5cbiIKIAotIzogYmlzZWN0LmM6NzY0CisjOiBiaXNlY3QuYzo3ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBtZXJnZSBiYXNlICVzIGlzICVzLlxuIgpAQCAtMTA0Miw3ICsxNzY5LDcgQEAKICJMYSBiYXNlIGRlIGZ1c2lvbiAlcyBlc3QgJXMuXG4iCiAiQ2VjaSBzaWduaWZpZSBxdWUgbGUgcHJlbWllciBjb21taXQgJyVzJyBlc3QgZW50cmUgJXMgZXQgWyVzXS5cbiIKIAotIzogYmlzZWN0LmM6NzcyCisjOiBiaXNlY3QuYzo3ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlNvbWUgJXMgcmV2cyBhcmUgbm90IGFuY2VzdG9ycyBvZiB0aGUgJXMgcmV2LlxuIgpAQCAtMTA1Myw3ICsxNzgwLDcgQEAKICJnaXQgYmlzZWN0IG5lIHBldXQgcGFzIGZvbmN0aW9ubmVyIGNvcnJlY3RlbWVudCBkYW5zIGNlIGNhcy5cbiIKICJQZXV0LcOqdHJlIGxlcyByw6l2aXNpb25zICVzIGV0ICVzIG5lIHNvbnQtZWxsZXMgcGFzIGxlcyBib25uZXPCoD9cbiIKIAotIzogYmlzZWN0LmM6Nzg1CisjOiBiaXNlY3QuYzo4MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInRoZSBtZXJnZSBiYXNlIGJldHdlZW4gJXMgYW5kIFslc10gbXVzdCBiZSBza2lwcGVkLlxuIgpAQCAtMTA2NSwzNiArMTc5MiwzNiBAQAogImV0ICVzLlxuIgogIk9uIGNvbnRpbnVlIHRvdXQgZGUgbcOqbWUuIgogCi0jOiBiaXNlY3QuYzo4MTgKKyM6IGJpc2VjdC5jOjg0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJCaXNlY3Rpbmc6IGEgbWVyZ2UgYmFzZSBtdXN0IGJlIHRlc3RlZFxuIgogbXNnc3RyICJCaXNzZWN0aW9uwqA6IHVuZSBiYXNlIGRlIGZ1c2lvbiBkb2l0IMOqdHJlIHRlc3TDqWVcbiIKIAotIzogYmlzZWN0LmM6ODU4CisjOiBiaXNlY3QuYzo4OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSAlcyByZXZpc2lvbiBpcyBuZWVkZWQiCiBtc2dzdHIgInVuZSByw6l2aXNpb24gJXMgZXN0IG7DqWNlc3NhaXJlIgogCi0jOiBiaXNlY3QuYzo4NzcgYnVpbHRpbi9ub3Rlcy5jOjE3NyBidWlsdGluL3RhZy5jOjIzNworIzogYmlzZWN0LmM6OTIwIGJ1aWx0aW4vbm90ZXMuYzoxNzcgYnVpbHRpbi90YWcuYzoyNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBmaWxlICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIGxlIGZpY2hpZXIgJyVzJyIKIAotIzogYmlzZWN0LmM6OTI4IGJ1aWx0aW4vbWVyZ2UuYzoxMzgKKyM6IGJpc2VjdC5jOjk2NiBidWlsdGluL21lcmdlLmM6MTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGZpbGUgJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGxlIGZpY2hpZXIgJyVzJyIKIAotIzogYmlzZWN0LmM6OTU4CisjOiBiaXNlY3QuYzo5OTcKIG1zZ2lkICJyZWFkaW5nIGJpc2VjdCByZWZzIGZhaWxlZCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGxlcyByw6lmw6lyZW5jZXMgZGUgYmlzc2VjdGlvbiIKIAotIzogYmlzZWN0LmM6OTc3CisjOiBiaXNlY3QuYzoxMDE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHdhcyBib3RoICVzIGFuZCAlc1xuIgogbXNnc3RyICIlcyDDqXRhaXQgw6AgbGEgZm9pcyAlcyBldCAlc1xuIgogCi0jOiBiaXNlY3QuYzo5ODUKKyM6IGJpc2VjdC5jOjEwMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vIHRlc3RhYmxlIGNvbW1pdCBmb3VuZC5cbiIKQEAgLTExMDMsNyArMTgzMCw3IEBACiAiQXVjdW4gY29tbWl0IHRlc3RhYmxlIG4nYSDDqXTDqSB0cm91dsOpXG4iCiAiUGV1dC3DqnRyZSBhdmV6LXZvdXMgZMOpbWFycsOpIGF2ZWMgdW4gbWF1dmFpcyBwYXJhbcOodHJlIGRlIGNoZW1pbsKgP1xuIgogCi0jOiBiaXNlY3QuYzoxMDA0CisjOiBiaXNlY3QuYzoxMDU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIihyb3VnaGx5ICVkIHN0ZXApIgogbXNnaWRfcGx1cmFsICIocm91Z2hseSAlZCBzdGVwcykiCkBAIC0xMTEzLDUzICsxODQwLDUzIEBACiAjLiBUUkFOU0xBVE9SUzogdGhlIGxhc3QgJXMgd2lsbCBiZSByZXBsYWNlZCB3aXRoICIocm91Z2hseSAlZAogIy4gc3RlcHMpIiB0cmFuc2xhdGlvbi4KICMuCi0jOiBiaXNlY3QuYzoxMDEwCisjOiBiaXNlY3QuYzoxMDYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJpc2VjdGluZzogJWQgcmV2aXNpb24gbGVmdCB0byB0ZXN0IGFmdGVyIHRoaXMgJXNcbiIKIG1zZ2lkX3BsdXJhbCAiQmlzZWN0aW5nOiAlZCByZXZpc2lvbnMgbGVmdCB0byB0ZXN0IGFmdGVyIHRoaXMgJXNcbiIKIG1zZ3N0clswXSAiQmlzc2VjdGlvbsKgOiAlZCByw6l2aXNpb24gw6AgdGVzdGVyIGFwcsOocyBjZWNpICVzXG4iCiBtc2dzdHJbMV0gIkJpc3NlY3Rpb27CoDogJWQgcsOpdmlzaW9ucyDDoCB0ZXN0ZXIgYXByw6hzIGNlY2kgJXNcbiIKIAotIzogYmxhbWUuYzoxNzg3CisjOiBibGFtZS5jOjI3MDAKIG1zZ2lkICItLWNvbnRlbnRzIGFuZCAtLXJldmVyc2UgZG8gbm90IGJsZW5kIHdlbGwuIgogbXNnc3RyICItLWNvbnRlbnRzIGV0IC0tcmV2ZXJzZSBuZSBmb250IHBhcyBib24gbcOpbmFnZS4iCiAKLSM6IGJsYW1lLmM6MTgwMQorIzogYmxhbWUuYzoyNzE0CiBtc2dpZCAiY2Fubm90IHVzZSAtLWNvbnRlbnRzIHdpdGggZmluYWwgY29tbWl0IG9iamVjdCBuYW1lIgogbXNnc3RyICJvbiBuZSBwZXV0IHBhcyB1dGlsaXNlciAtLWNvbnRlbnRzIGF2ZWMgdW4gbm9tIGQnb2JqZXQgY29tbWl0IGZpbmFsIgogCi0jOiBibGFtZS5jOjE4MjIKKyM6IGJsYW1lLmM6MjczNQogbXNnaWQgIi0tcmV2ZXJzZSBhbmQgLS1maXJzdC1wYXJlbnQgdG9nZXRoZXIgcmVxdWlyZSBzcGVjaWZpZWQgbGF0ZXN0IGNvbW1pdCIKIG1zZ3N0ciAiIgogIi0tcmV2ZXJzZSBldCAtLWZpcnN0LXBhcmVudCBlbnNlbWJsZSBuw6ljZXNzaXRlbnQgbGEgc3DDqWNpZmljYXRpb24gZCd1biAiCiAiZGVybmllciBjb21taXQiCiAKLSM6IGJsYW1lLmM6MTgzMSBidW5kbGUuYzoxNjIgcmVmLWZpbHRlci5jOjIwNDYgc2VxdWVuY2VyLmM6MTk2MwotIzogc2VxdWVuY2VyLmM6NDAwMiBidWlsdGluL2NvbW1pdC5jOjEwMDEgYnVpbHRpbi9sb2cuYzozNzcgYnVpbHRpbi9sb2cuYzo5MzIKLSM6IGJ1aWx0aW4vbG9nLmM6MTQwNyBidWlsdGluL2xvZy5jOjE3ODMgYnVpbHRpbi9sb2cuYzoyMDcyIGJ1aWx0aW4vbWVyZ2UuYzo0MDYKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzNyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNTIKKyM6IGJsYW1lLmM6Mjc0NCBidW5kbGUuYzoxNjcgcmVmLWZpbHRlci5jOjIyMDMgcmVtb3RlLmM6MTk0MiBzZXF1ZW5jZXIuYzoyMDA2CisjOiBzZXF1ZW5jZXIuYzo0MzU4IHN1Ym1vZHVsZS5jOjg0NyBidWlsdGluL2NvbW1pdC5jOjEwNDUgYnVpbHRpbi9sb2cuYzozODgKKyM6IGJ1aWx0aW4vbG9nLmM6OTkxIGJ1aWx0aW4vbG9nLmM6MTUyMCBidWlsdGluL2xvZy5jOjE5MjUgYnVpbHRpbi9sb2cuYzoyMjE1CisjOiBidWlsdGluL21lcmdlLmM6NDEyIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTAKICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxOTIKIG1zZ2lkICJyZXZpc2lvbiB3YWxrIHNldHVwIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGRlIGxhIHByw6lwYXJhdGlvbiBkdSBwYXJjb3VycyBkZXMgcsOpdmlzaW9ucyIKIAotIzogYmxhbWUuYzoxODQ5CisjOiBibGFtZS5jOjI3NjIKIG1zZ2lkICIiCiAiLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IHRvZ2V0aGVyIHJlcXVpcmUgcmFuZ2UgYWxvbmcgZmlyc3QtcGFyZW50IGNoYWluIgogbXNnc3RyICIiCiAiLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IGVuc2VtYmxlIG7DqWNlc3NpdGVudCB1bmUgcG9ydMOpZSBhdmVjIGxhIGNoYcOubmUgZGUgIgogInByZW1pZXIgcGFyZW50IgogCi0jOiBibGFtZS5jOjE4NjAKKyM6IGJsYW1lLmM6Mjc3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIHBhdGggJXMgaW4gJXMiCiBtc2dzdHIgInBhcyBkZSBjaGVtaW4gJXMgZGFucyAlcyIKIAotIzogYmxhbWUuYzoxODcxCisjOiBibGFtZS5jOjI3ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgYmxvYiAlcyBmb3IgcGF0aCAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGxlIGJsb2IgJXMgIHBvdXIgbGUgY2hlbWluICVzIgogCi0jOiBicmFuY2guYzo1MgorIzogYnJhbmNoLmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTE3MCw5OSArMTg5Nyw5OSBAQAogIlxuIgogIkFwcsOocyBjb3JyZWN0aW9uIGRlIGxhIGNhdXNlIGRlIGwnZXJyZXVyLCB2b3VzIHBvdXZleiBlc3NheWVyIGRlIGNvcnJpZ2VyXG4iCiAibCdpbmZvcm1hdGlvbiBkZSBzdWl2aSBkaXN0YW50IGVuIGludm9xdWFudFxuIgotIlwiZ2l0IGJyYW5jaCAtLXNldHVwLXVwc3RyZWFtLXRvPSVzJXMlc1wiLiIKKyJcImdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMlcyVzXCIuIgogCi0jOiBicmFuY2guYzo2NgorIzogYnJhbmNoLmM6NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IHNldHRpbmcgYnJhbmNoICVzIGFzIGl0cyBvd24gdXBzdHJlYW0uIgogbXNnc3RyICJMYSBicmFuY2hlICVzIG5lIHBldXQgcGFzIMOqdHJlIHNhIHByb3ByZSBicmFuY2hlIGFtb250LiIKIAotIzogYnJhbmNoLmM6OTIKKyM6IGJyYW5jaC5jOjkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgYnJhbmNoICclcycgZnJvbSAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAiIgogIkxhIGJyYW5jaGUgJyVzJyBlc3QgcGFyYW3DqXRyw6llIHBvdXIgc3VpdnJlIGxhIGJyYW5jaGUgZGlzdGFudGUgJyVzJyBkZSAnJXMnICIKICJlbiByZWJhc2FudC4iCiAKLSM6IGJyYW5jaC5jOjkzCisjOiBicmFuY2guYzo5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIGJyYW5jaCAnJXMnIGZyb20gJyVzJy4iCiBtc2dzdHIgIiIKICJMYSBicmFuY2hlICclcycgZXN0IHBhcmFtw6l0csOpZSBwb3VyIHN1aXZyZSBsYSBicmFuY2hlIGRpc3RhbnRlICclcycgZGVwdWlzICIKICInJXMnLiIKIAotIzogYnJhbmNoLmM6OTcKKyM6IGJyYW5jaC5jOjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCBicmFuY2ggJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgIiIKICJMYSBicmFuY2hlICclcycgZXN0IHBhcmFtw6l0csOpZSBwb3VyIHN1aXZyZSBsYSBicmFuY2hlIGxvY2FsZSAnJSdzIGVuICIKICJyZWJhc2FudC4iCiAKLSM6IGJyYW5jaC5jOjk4CisjOiBicmFuY2guYzo5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycuIgogbXNnc3RyICJMYSBicmFuY2hlICclcycgZXN0IHBhcmFtw6l0csOpZSBwb3VyIHN1aXZyZSBsYSBicmFuY2hlIGxvY2FsZSAnJXMnLiIKIAotIzogYnJhbmNoLmM6MTAzCisjOiBicmFuY2guYzoxMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIHJlbW90ZSByZWYgJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgIiIKICJMYSBicmFuY2hlICclcycgZXN0IHBhcmFtw6l0csOpZSBwb3VyIHN1aXZyZSBsYSByw6lmw6lyZW5jZSBkaXN0YW50ZSAnJXMnIGVuICIKICJyZWJhc2FudC4iCiAKLSM6IGJyYW5jaC5jOjEwNAorIzogYnJhbmNoLmM6MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgcmVmICclcycuIgogbXNnc3RyICJMYSBicmFuY2hlICclcycgZXN0IHBhcmFtw6l0csOpZSBwb3VyIHN1aXZyZSBsYSByw6lmw6lyZW5jZSBkaXN0YW50ZSAnJXMnLiIKIAotIzogYnJhbmNoLmM6MTA4CisjOiBicmFuY2guYzoxMDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIHJlZiAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAiIgogIkxhIGJyYW5jaGUgJyVzJyBlc3QgcGFyYW3DqXRyw6llIHBvdXIgc3VpdnJlIGxhIHLDqWbDqXJlbmNlIGxvY2FsZSAnJXMnIGVuICIKICJyZWJhc2FudC4iCiAKLSM6IGJyYW5jaC5jOjEwOQorIzogYnJhbmNoLmM6MTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCByZWYgJyVzJy4iCiBtc2dzdHIgIkxhIGJyYW5jaGUgJyVzJyBlc3QgcGFyYW3DqXRyw6llIHBvdXIgc3VpdnJlIGxhIHLDqWbDqXJlbmNlIGxvY2FsZSAnJXMnLiIKIAotIzogYnJhbmNoLmM6MTE4CisjOiBicmFuY2guYzoxMTkKIG1zZ2lkICJVbmFibGUgdG8gd3JpdGUgdXBzdHJlYW0gYnJhbmNoIGNvbmZpZ3VyYXRpb24iCiBtc2dzdHIgIsOJY2hlYyBkZSBsJ8OpY3JpdHVyZSBkZSBsYSBjb25maWd1cmF0aW9uIGRlIGJyYW5jaGUgYW1vbnQiCiAKLSM6IGJyYW5jaC5jOjE1NQorIzogYnJhbmNoLmM6MTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCB0cmFja2luZzogYW1iaWd1b3VzIGluZm9ybWF0aW9uIGZvciByZWYgJXMiCiBtc2dzdHIgIlBhcyBkZSBzdWl2aSA6IGluZm9ybWF0aW9uIGFtYmlndcOrIHBvdXIgbGEgcsOpZsOpcmVuY2UgJXMiCiAKLSM6IGJyYW5jaC5jOjE4OAorIzogYnJhbmNoLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgYnJhbmNoIG5hbWUuIgogbXNnc3RyICInJXMnIG4nZXN0IHBhcyB1biBub20gZGUgYnJhbmNoZSB2YWxpZGUuIgogCi0jOiBicmFuY2guYzoyMDcKKyM6IGJyYW5jaC5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJBIGJyYW5jaCBuYW1lZCAnJXMnIGFscmVhZHkgZXhpc3RzLiIKIG1zZ3N0ciAiVW5lIGJyYW5jaGUgbm9tbcOpZSAnJXMnIGV4aXN0ZSBkw6lqw6AuIgogCi0jOiBicmFuY2guYzoyMTIKKyM6IGJyYW5jaC5jOjIxMwogbXNnaWQgIkNhbm5vdCBmb3JjZSB1cGRhdGUgdGhlIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBmb3JjZXIgbGEgbWlzZSDDoCBqb3VyIGRlIGxhIGJyYW5jaGUgY291cmFudGUuIgogCi0jOiBicmFuY2guYzoyMzIKKyM6IGJyYW5jaC5jOjIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgc2V0dXAgdHJhY2tpbmcgaW5mb3JtYXRpb247IHN0YXJ0aW5nIHBvaW50ICclcycgaXMgbm90IGEgYnJhbmNoLiIKIG1zZ3N0ciAiIgogIkltcG9zc2libGUgZGUgcGFyYW3DqXRyZXIgbGUgc3VpdmkgZGUgYnJhbmNoZSA7IGxlIHBvaW50IGRlIGTDqXBhcnQgJyVzJyBuJ2VzdCAiCiAicGFzIHVuZSBicmFuY2hlLiIKIAotIzogYnJhbmNoLmM6MjM0CisjOiBicmFuY2guYzoyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlIHJlcXVlc3RlZCB1cHN0cmVhbSBicmFuY2ggJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAibGEgYnJhbmNoZSBhbW9udCBkZW1hbmTDqWUgJyVzJyBuJ2V4aXN0ZSBwYXMiCiAKLSM6IGJyYW5jaC5jOjIzNgorIzogYnJhbmNoLmM6MjM3CiBtc2dpZCAiIgogIlxuIgogIklmIHlvdSBhcmUgcGxhbm5pbmcgb24gYmFzaW5nIHlvdXIgd29yayBvbiBhbiB1cHN0cmVhbVxuIgpAQCAtMTI4MiwyNyArMjAwOSwyNyBAQAogInNhIGp1bWVsbGUgZGlzdGFudGUsIHZvdXMgcG91dmV6IHV0aWxpc2VyIFwiZ2l0IHB1c2ggLXVcIlxuIgogInBvdXIgcGFyYW3DqXRyZXIgbGUgc3VpdmkgZGlzdGFudCBlbiBtw6ptZSB0ZW1wcyBxdWUgdm91cyBwb3Vzc2V6LiIKIAotIzogYnJhbmNoLmM6Mjc5CisjOiBicmFuY2guYzoyODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgb2JqZWN0IG5hbWU6ICclcycuIgogbXNnc3RyICJOb20gZCdvYmpldCBpbnZhbGlkZSA6ICclcycuIgogCi0jOiBicmFuY2guYzoyOTkKKyM6IGJyYW5jaC5jOjMwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJBbWJpZ3VvdXMgb2JqZWN0IG5hbWU6ICclcycuIgogbXNnc3RyICJOb20gZCdvYmpldCBhbWJpZ3UgOiAnJXMnLiIKIAotIzogYnJhbmNoLmM6MzA0CisjOiBicmFuY2guYzozMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgYnJhbmNoIHBvaW50OiAnJXMnLiIKIG1zZ3N0ciAiUG9pbnQgZCdlbWJyYW5jaGVtZW50IGludmFsaWRlIDogJyVzJy4iCiAKLSM6IGJyYW5jaC5jOjM1OAorIzogYnJhbmNoLmM6MzY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxyZWFkeSBjaGVja2VkIG91dCBhdCAnJXMnIgogbXNnc3RyICInJXMnIGVzdCBkw6lqw6AgZXh0cmFpdCBkYW5zICclcyciCiAKLSM6IGJyYW5jaC5jOjM4MQorIzogYnJhbmNoLmM6Mzg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkhFQUQgb2Ygd29ya2luZyB0cmVlICVzIGlzIG5vdCB1cGRhdGVkIgogbXNnc3RyICJsYSBIRUFEIGRlIGxhIGNvcGllIGRlIHRyYXZhaWwgJXMgbidlc3QgcGFzIG1pc2Ugw6Agam91ciIKQEAgLTEzMTcsODYgKzIwNDQsODkgQEAKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaGVhZGVyOiAlcyVzICglZCkiCiBtc2dzdHIgImVuLXTDqnRlIG5vbiByZWNvbm51IDogJXMlcyAoJWQpIgogCi0jOiBidW5kbGUuYzo5MCByZXJlcmUuYzo0ODAgcmVyZXJlLmM6NjkwIHNlcXVlbmNlci5jOjIxODIgc2VxdWVuY2VyLmM6MjcyMgotIzogYnVpbHRpbi9jb21taXQuYzo3NzQKKyM6IGJ1bmRsZS5jOjkwIHJlcmVyZS5jOjQ4MCByZXJlcmUuYzo2OTAgc2VxdWVuY2VyLmM6MjI1OCBzZXF1ZW5jZXIuYzozMDE2CisjOiBidWlsdGluL2NvbW1pdC5jOjgxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyICclcyciCiAKLSM6IGJ1bmRsZS5jOjE0MQorIzogYnVuZGxlLmM6MTQzCiBtc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyB0aGVzZSBwcmVyZXF1aXNpdGUgY29tbWl0czoiCiBtc2dzdHIgIkxlIGTDqXDDtHQgbmUgZGlzcG9zZSBwYXMgZGVzIGNvbW1pdHMgcHLDqXJlcXVpcyBzdWl2YW50cyA6IgogCi0jOiBidW5kbGUuYzoxOTIKKyM6IGJ1bmRsZS5jOjE0NgorbXNnaWQgIm5lZWQgYSByZXBvc2l0b3J5IHRvIHZlcmlmeSBhIGJ1bmRsZSIKK21zZ3N0ciAibGEgdsOpcmlmaWNhdGlvbiBkJ3VuIGNvbGlzIHJlcXVpZXJ0IHVuIGTDqXDDtHQiCisKKyM6IGJ1bmRsZS5jOjE5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgYnVuZGxlIGNvbnRhaW5zIHRoaXMgcmVmOiIKIG1zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSBjb250YWlucyB0aGVzZSAlZCByZWZzOiIKIG1zZ3N0clswXSAiTGUgY29saXMgY29udGllbnQgY2V0dGUgcsOpZsOpcmVuY2UgOiIKIG1zZ3N0clsxXSAiTGUgY29saXMgY29udGllbnQgY2VzICVkIHLDqWbDqXJlbmNlcyA6IgogCi0jOiBidW5kbGUuYzoxOTkKKyM6IGJ1bmRsZS5jOjIwNAogbXNnaWQgIlRoZSBidW5kbGUgcmVjb3JkcyBhIGNvbXBsZXRlIGhpc3RvcnkuIgogbXNnc3RyICJMZSBjb2xpcyBlbnJlZ2lzdHJlIGwnaGlzdG9yaXF1ZSBjb21wbGV0LiIKIAotIzogYnVuZGxlLmM6MjAxCisjOiBidW5kbGUuYzoyMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIGJ1bmRsZSByZXF1aXJlcyB0aGlzIHJlZjoiCiBtc2dpZF9wbHVyYWwgIlRoZSBidW5kbGUgcmVxdWlyZXMgdGhlc2UgJWQgcmVmczoiCiBtc2dzdHJbMF0gIkxlIGNvbGlzIGV4aWdlIGNldHRlIHLDqWbDqXJlbmNlIDoiCiBtc2dzdHJbMV0gIkxlIGNvbGlzIGV4aWdlIGNlcyAlZCByw6lmw6lyZW5jZXMgOiIKIAotIzogYnVuZGxlLmM6MjY3CisjOiBidW5kbGUuYzoyNzMKIG1zZ2lkICJ1bmFibGUgdG8gZHVwIGJ1bmRsZSBkZXNjcmlwdG9yIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGR1cGxpcXVlciBsZSBkZXNjcmlwdGV1ciBkZSBsaWFzc2UiCiAKLSM6IGJ1bmRsZS5jOjI3NAorIzogYnVuZGxlLmM6MjgwCiBtc2dpZCAiQ291bGQgbm90IHNwYXduIHBhY2stb2JqZWN0cyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBjcsOpZXIgZGVzIG9iamV0cyBncm91cMOpcyIKIAotIzogYnVuZGxlLmM6Mjg1CisjOiBidW5kbGUuYzoyOTEKIG1zZ2lkICJwYWNrLW9iamVjdHMgZGllZCIKIG1zZ3N0ciAibGVzIG9iamV0cyBncm91cMOpcyBvbnQgZGlzcGFydSIKIAotIzogYnVuZGxlLmM6MzI3CisjOiBidW5kbGUuYzozMzMKIG1zZ2lkICJyZXYtbGlzdCBkaWVkIgogbXNnc3RyICJyZXYtbGlzdCBhIGRpc3BhcnUiCiAKLSM6IGJ1bmRsZS5jOjM3NgorIzogYnVuZGxlLmM6MzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZiAnJXMnIGlzIGV4Y2x1ZGVkIGJ5IHRoZSByZXYtbGlzdCBvcHRpb25zIgogbXNnc3RyICJsYSByw6lmw6lyZW5jZSAnJXMnIGVzdCBleGNsdWUgcGFyIGxlcyBvcHRpb25zIGRlIHJldi1saXN0IgogCi0jOiBidW5kbGUuYzo0NTYgYnVpbHRpbi9sb2cuYzoxOTIgYnVpbHRpbi9sb2cuYzoxNjg4IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDQKKyM6IGJ1bmRsZS5jOjQ2MSBidWlsdGluL2xvZy5jOjIwMyBidWlsdGluL2xvZy5jOjE4MTQgYnVpbHRpbi9zaG9ydGxvZy5jOjMwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJhcmd1bWVudCBub24gcmVjb25udSA6ICVzIgogCi0jOiBidW5kbGUuYzo0NjQKKyM6IGJ1bmRsZS5jOjQ2OQogbXNnaWQgIlJlZnVzaW5nIHRvIGNyZWF0ZSBlbXB0eSBidW5kbGUuIgogbXNnc3RyICJSZWZ1cyBkZSBjcsOpZXIgdW4gY29saXMgdmlkZS4iCiAKLSM6IGJ1bmRsZS5jOjQ3NAorIzogYnVuZGxlLmM6NDc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjcmVhdGUgJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgJyVzJyIKIAotIzogYnVuZGxlLmM6NDk4CisjOiBidW5kbGUuYzo1MDQKIG1zZ2lkICJpbmRleC1wYWNrIGRpZWQiCiBtc2dzdHIgImwnaW5kZXggZGUgZ3JvdXBlIGEgZGlzcGFydSIKIAotIzogY29sb3IuYzoyOTYKKyM6IGNvbG9yLmM6MzI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29sb3IgdmFsdWU6ICUuKnMiCiBtc2dzdHIgIlZhbGV1ciBpbnZhbGlkZSBkZSBjb3VsZXVyIDogJS4qcyIKIAotIzogY29tbWl0LmM6NTAgc2VxdWVuY2VyLmM6MjUyOCBidWlsdGluL2FtLmM6MzcwIGJ1aWx0aW4vYW0uYzo0MTQKLSM6IGJ1aWx0aW4vYW0uYzoxMzkwIGJ1aWx0aW4vYW0uYzoyMDI1IGJ1aWx0aW4vcmVwbGFjZS5jOjM3NgotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDQ4CisjOiBjb21taXQuYzo1MSBzZXF1ZW5jZXIuYzoyNzE5IGJ1aWx0aW4vYW0uYzozNTkgYnVpbHRpbi9hbS5jOjQwMworIzogYnVpbHRpbi9hbS5jOjEzNzEgYnVpbHRpbi9hbS5jOjIwMTQgYnVpbHRpbi9yZXBsYWNlLmM6NDU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyICVzIgogCi0jOiBjb21taXQuYzo1MgorIzogY29tbWl0LmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgJXMgaXMgbm90IGEgY29tbWl0ISIKIG1zZ3N0ciAiJXMgJXMgbidlc3QgcGFzIHVuIGNvbW1pdCAhIgpAQCAtMTQyMSwyNyArMjE1MSwyNyBAQAogIlN1cHByaW1leiBjZSBtZXNzYWdlIGVuIGxhbsOnYW50XG4iCiAiXCJnaXQgY29uZmlnIGFkdmljZS5ncmFmdEZpbGVEZXByZWNhdGVkIGZhbHNlXCIiCiAKLSM6IGNvbW1pdC5jOjExMTUKKyM6IGNvbW1pdC5jOjExNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29tbWl0ICVzIGhhcyBhbiB1bnRydXN0ZWQgR1BHIHNpZ25hdHVyZSwgYWxsZWdlZGx5IGJ5ICVzLiIKIG1zZ3N0ciAiTGEgdmFsaWRhdGlvbiAlcyBhIHVuZSBzaWduYXR1cmUgR1BHIG5vbiBmaWFibGUsIHByw6l0ZW5kdW1lbnQgcGFyICVzLiIKIAotIzogY29tbWl0LmM6MTExOAorIzogY29tbWl0LmM6MTE1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaGFzIGEgYmFkIEdQRyBzaWduYXR1cmUgYWxsZWdlZGx5IGJ5ICVzLiIKIG1zZ3N0ciAiTGEgdmFsaWRhdGlvbiAlcyBhIHVuZSBtYXV2YWlzZSBzaWduYXR1cmUgR1BHIHByw6l0ZW5kdW1lbnQgcGFyICVzLiIKIAotIzogY29tbWl0LmM6MTEyMQorIzogY29tbWl0LmM6MTE2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgZG9lcyBub3QgaGF2ZSBhIEdQRyBzaWduYXR1cmUuIgogbXNnc3RyICJMYSB2YWxpZGF0aW9uICVzIG4nYSBwYXMgZGUgc2lnbmF0dXJlIEdQRy4iCiAKLSM6IGNvbW1pdC5jOjExMjQKKyM6IGNvbW1pdC5jOjExNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29tbWl0ICVzIGhhcyBhIGdvb2QgR1BHIHNpZ25hdHVyZSBieSAlc1xuIgogbXNnc3RyICJMYSB2YWxpZGF0aW9uICVzIGEgdW5lIHNpZ25hdHVyZSBHUEcgY29ycmVjdGUgcGFyICVzXG4iCiAKLSM6IGNvbW1pdC5jOjEzNzgKKyM6IGNvbW1pdC5jOjE0MTcKIG1zZ2lkICIiCiAiV2FybmluZzogY29tbWl0IG1lc3NhZ2UgZGlkIG5vdCBjb25mb3JtIHRvIFVURi04LlxuIgogIllvdSBtYXkgd2FudCB0byBhbWVuZCBpdCBhZnRlciBmaXhpbmcgdGhlIG1lc3NhZ2UsIG9yIHNldCB0aGUgY29uZmlnXG4iCkBAIC0xNDUzLDk3ICsyMTgzLDI4NyBAQAogInZhcmlhYmxlIGRlIGNvbmZpZ3VyYXRpb24gaTE4bi5jb21taXRlbmNvZGluZyDDoCBsJ2VuY29kYWdlIHV0aWxpc8OpIHBhciB2b3RyZSAiCiAicHJvamV0LlxuIgogCi0jOiBjb21taXQtZ3JhcGguYzoxMDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ3JhcGggZmlsZSAlcyBpcyB0b28gc21hbGwiCi1tc2dzdHIgImxlIGZpY2hpZXIgZGUgZ3JhcGhlICVzIGVzdCB0cm9wIHBldGl0IgotCi0jOiBjb21taXQtZ3JhcGguYzoxMTUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ3JhcGggc2lnbmF0dXJlICVYIGRvZXMgbm90IG1hdGNoIHNpZ25hdHVyZSAlWCIKLW1zZ3N0ciAibGEgc2lnbmF0dXJlIGRlIGdyYXBoZSAlWCBuZSBjb3JyZXNwb25kIHBhcyDDoCBsYSBzaWduYXR1cmUgJVgiCi0KICM6IGNvbW1pdC1ncmFwaC5jOjEyMgotIywgYy1mb3JtYXQKLW1zZ2lkICJncmFwaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCi1tc2dzdHIgImxhIHZlcnNpb24gJVggZHUgZ3JhcGhlIG5lIGNvcnJlc3BvbmQgcGFzIMOgIGxhIHZlcnNpb24gJVgiCi0KLSM6IGNvbW1pdC1ncmFwaC5jOjEyOQotIywgYy1mb3JtYXQKLW1zZ2lkICJoYXNoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKLW1zZ3N0ciAibGEgdmVyc2lvbiAlWCBkdSBjb25kZW5zw6kgbmUgY29ycmVzcG9uZCBwYXMgw6AgbGEgdmVyc2lvbiAlWCIKLQotIzogY29tbWl0LWdyYXBoLmM6MTUzCi0jLCBjLWZvcm1hdAotbXNnaWQgImltcHJvcGVyIGNodW5rIG9mZnNldCAlMDh4JTA4eCIKLW1zZ3N0ciAiZMOpY2FsYWdlIGRlIGJsb2MgJTA4eCUwOHggaW5hZMOpcXVhdCIKK21zZ2lkICJjb21taXQtZ3JhcGggZmlsZSBpcyB0b28gc21hbGwiCittc2dzdHIgImxlIGdyYXBoZSBkZSBjb21taXQgZXN0IHRyb3AgcGV0aXQiCiAKICM6IGNvbW1pdC1ncmFwaC5jOjE4OQogIywgYy1mb3JtYXQKLW1zZ2lkICJjaHVuayBpZCAlMDh4IGFwcGVhcnMgbXVsdGlwbGUgdGltZXMiCi1tc2dzdHIgImwnaWQgZGUgYmxvYyAlMDh4IGFwcGFyYcOudCBkZXMgbXVsdGlwbGVzIGZvaXMiCittc2dpZCAiY29tbWl0LWdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCittc2dzdHIgIiIKKyJsYSBzaWduYXR1cmUgZHUgZ3JhcGhlIGRlIGNvbW1pdCAlWCBuZSBjb3JyZXNwb25kIHBhcyDDoCBsYSBzaWduYXR1cmUgJVgiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjMwOAorIzogY29tbWl0LWdyYXBoLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCittc2dzdHIgImxhIHZlcnNpb24gJVggZHUgZ3JhcGhlIGRlIGNvbW1pdCBuZSBjb3JyZXNwb25kIHBhcyDDoCBsYSB2ZXJzaW9uICVYIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGhhc2ggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgorbXNnc3RyICIiCisibCdlbXByZWludGUgZGUgbGEgdmVyc2lvbiAlWCBkdSBncmFwaGUgZGUgY29tbWl0IG5lIGNvcnJlc3BvbmQgcGFzIMOgIGxhICIKKyJ2ZXJzaW9uICVYIgorCisjOiBjb21taXQtZ3JhcGguYzoyMjYKK21zZ2lkICJjb21taXQtZ3JhcGggY2h1bmsgbG9va3VwIHRhYmxlIGVudHJ5IG1pc3Npbmc7IGZpbGUgbWF5IGJlIGluY29tcGxldGUiCittc2dzdHIgIiIKKyJlbnRyw6llIGRlIHRhYmxlIGRlIGNvbnN1bHRhdGlvbiBkZSBtb3JjZWF1eCBkZSBncmFwaGUgZGUgY29tbWl0ZSBtYW5xdWFudGXCoDsgIgorImxlIGZpY2hpZXIgZXN0IHBldXQgw6p0cmUgaW5jb21wbGV0IgorCisjOiBjb21taXQtZ3JhcGguYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGltcHJvcGVyIGNodW5rIG9mZnNldCAlMDh4JTA4eCIKK21zZ3N0ciAiZMOpY2FsYWdlIGRlIGJsb2MgJTA4eCUwOHggZHUgZ3JhcGhlIGRlIGNvbW1pdCBpbmFkw6lxdWF0IgorCisjOiBjb21taXQtZ3JhcGguYzoyODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGNodW5rIGlkICUwOHggYXBwZWFycyBtdWx0aXBsZSB0aW1lcyIKK21zZ3N0ciAibCdpZCBkZSBibG9jIGRlIGdyYXBoZSBkZSBjb21taXQgJTA4eCBhcHBhcmHDrnQgZGVzIG11bHRpcGxlcyBmb2lzIgorCisjOiBjb21taXQtZ3JhcGguYzozNDMKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzIG5vIGJhc2UgZ3JhcGhzIGNodW5rIgorbXNnc3RyICJsZSBncmFwaGUgZGUgY29tbWl0IG4nYSBwYXMgZGUgc2VjdGlvbiBkZSBncmFwaGVzIGRlIGJhc2UiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjM1MworbXNnaWQgImNvbW1pdC1ncmFwaCBjaGFpbiBkb2VzIG5vdCBtYXRjaCIKK21zZ3N0ciAibGEgY2hhw65uZSBkZSBncmFwaGUgZGUgY29tbWl0IG5lIGNvcnJlc3BvbmQgcGFzIgorCisjOiBjb21taXQtZ3JhcGguYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21taXQtZ3JhcGggY2hhaW46IGxpbmUgJyVzJyBub3QgYSBoYXNoIgorbXNnc3RyICIiCisiY2hhw65uZSBkZSBncmFwaGUgZGUgY29tbWl0IGludmFsaWRlwqA6IGxhIGxpZ25lICclcycgbidlc3QgcGFzIHVuZSBlbXByZWludGUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjQyNQorbXNnaWQgInVuYWJsZSB0byBmaW5kIGFsbCBjb21taXQtZ3JhcGggZmlsZXMiCittc2dzdHIgImltcG9zc2libGUgZGUgdHJvdXZlciB0b3VzIGxlcyBmaWNoaWVycyBkdSBncmFwaGUgZGUgY29tbWl0IgorCisjOiBjb21taXQtZ3JhcGguYzo1NTggY29tbWl0LWdyYXBoLmM6NjE4Cittc2dpZCAiaW52YWxpZCBjb21taXQgcG9zaXRpb24uIGNvbW1pdC1ncmFwaCBpcyBsaWtlbHkgY29ycnVwdCIKK21zZ3N0ciAiIgorInBvc2l0aW9uIGRlIGNvbW1pdCBpbnZhbGlkZS4gTGUgZ3JhcGhlIGRlIGNvbW1pdCBlc3QgdnJhaXNlbWJsYWJsZW1lbnQgIgorImNvcnJvbXB1IgorCisjOiBjb21taXQtZ3JhcGguYzo1NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGZpbmQgY29tbWl0ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHRyb3V2ZXIgbGUgY29tbWl0ICVzIgogCi0jOiBjb21taXQtZ3JhcGguYzo2MTcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjUyCisjOiBjb21taXQtZ3JhcGguYzo4NTIgYnVpbHRpbi9hbS5jOjEyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbW1pdCAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGxlIGNvbW1pdCAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTAxMSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdldCB0eXBlIG9mIG9iamVjdCAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ29idGVuaXIgbGUgdHlwZSBkZSBsJ29iamV0ICVzIgogCi0jOiBjb21taXQtZ3JhcGguYzo2NTEKLW1zZ2lkICJBbm5vdGF0aW5nIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgotbXNnc3RyICJBbm5vdGF0aW9uIGRlcyBjb21taXRzIGRhbnMgdW4gZ3JhcGhlIGRlIGNvbW1pdCIKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNDMKK21zZ2lkICJMb2FkaW5nIGtub3duIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJMZWN0dXJlIGRlcyBjb21taXRzIGNvbm51cyBkYW5zIHVuIGdyYXBoZSBkZSBjb21taXQiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjY5MQorIzogY29tbWl0LWdyYXBoLmM6MTA2MAorbXNnaWQgIkV4cGFuZGluZyByZWFjaGFibGUgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIkV4cGFuc2lvbiBkZXMgY29tbWl0cyBqb2lnbmFibGVzIGRhbnMgdW4gZ3JhcGhlIGRlIGNvbW1pdCIKKworIzogY29tbWl0LWdyYXBoLmM6MTA3OQorbXNnaWQgIkNsZWFyaW5nIGNvbW1pdCBtYXJrcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIlN1cHByZXNzaW9uIGxlcyBtYXJxdWVzIGRlIGNvbW1pdCBkYW5zIGxlIGdyYXBoZSBkZSBjb21taXRzIgorCisjOiBjb21taXQtZ3JhcGguYzoxMDk4CiBtc2dpZCAiQ29tcHV0aW5nIGNvbW1pdCBncmFwaCBnZW5lcmF0aW9uIG51bWJlcnMiCiBtc2dzdHIgIkNhbGN1bCBkZXMgY2hpZmZyZXMgZGUgZ8OpbsOpcmF0aW9uIGR1IGdyYXBoZSBkZSBjb21taXRzIgogCi0jOiBjb21taXQtZ3JhcGguYzo4MDMgY29tbWl0LWdyYXBoLmM6ODI2IGNvbW1pdC1ncmFwaC5jOjg1MgotbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIgotbXNnc3RyICJSZWNoZXJjaGUgZGUgY29tbWl0cyBwb3VyIHVuIGdyYXBoZSBkZSBjb21taXRzIgorIzogY29tbWl0LWdyYXBoLmM6MTE3MworIywgYy1mb3JtYXQKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrIgorbXNnaWRfcGx1cmFsICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrcyIKK21zZ3N0clswXSAiUmVjaGVyY2hlIGRlIGNvbW1pdHMgcG91ciB1biBncmFwaGUgZGUgY29tbWl0cyBkYW5zICVkIHBhcXVldCIKK21zZ3N0clsxXSAiUmVjaGVyY2hlIGRlIGNvbW1pdHMgcG91ciB1biBncmFwaGUgZGUgY29tbWl0cyBkYW5zICVkIHBhcXVldHMiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgxMgorIzogY29tbWl0LWdyYXBoLmM6MTE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBhZGRpbmcgcGFjayAlcyIKIG1zZ3N0ciAiZXJyZXVyIMOgIGwnYWpvdXQgZHUgcGFja2V0ICVzIgogCi0jOiBjb21taXQtZ3JhcGguYzo4MTQKKyM6IGNvbW1pdC1ncmFwaC5jOjExOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3Igb3BlbmluZyBpbmRleCBmb3IgJXMiCiBtc2dzdHIgImVycmV1ciDDoCBsJ291dmVydHVyZSBkZSBsJ2luZGV4IHBvdXIgJXMiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjg2OAorIzogY29tbWl0LWdyYXBoLmM6MTIxNAogIywgYy1mb3JtYXQKLW1zZ2lkICJ0aGUgY29tbWl0IGdyYXBoIGZvcm1hdCBjYW5ub3Qgd3JpdGUgJWQgY29tbWl0cyIKLW1zZ3N0ciAibGUgZ3JhcGhlIGRlIGNvbW1pdHMgbmUgcGV1dCBwYXMgw6ljcmlyZSAlZCBjb21taXRzIgorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGZyb20gJWQgcmVmIgorbXNnaWRfcGx1cmFsICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBmcm9tICVkIHJlZnMiCittc2dzdHJbMF0gIlJlY2hlcmNoZSBkZSBjb21taXRzIHBvdXIgdW4gZ3JhcGhlIGRlIGNvbW1pdHMgZGVwdWlzICVkIHLDqWYiCittc2dzdHJbMV0gIlJlY2hlcmNoZSBkZSBjb21taXRzIHBvdXIgdW4gZ3JhcGhlIGRlIGNvbW1pdHMgZGVwdWlzICVkIHLDqWZzIgogCi0jOiBjb21taXQtZ3JhcGguYzo4OTUKLW1zZ2lkICJ0b28gbWFueSBjb21taXRzIHRvIHdyaXRlIGdyYXBoIgotbXNnc3RyICJ0cm9wIGRlIGNvbW1pdHMgcG91ciDDqWNyaXJlIHVuIGdyYXBoZSIKKyM6IGNvbW1pdC1ncmFwaC5jOjEyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21taXQgb2JqZWN0IGlkOiAlcyIKK21zZ3N0ciAiaWRlbnRpZmlhbnQgZCdvYmpldCBjb21taXQgaW52YWxpZGUgOiAlcyIKIAotIzogY29tbWl0LWdyYXBoLmM6OTAyIG1pZHguYzo3NjkKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNDkKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBhbW9uZyBwYWNrZWQgb2JqZWN0cyIKK21zZ3N0ciAiIgorIlJlY2hlcmNoZSBkZSBjb21taXRzIHBvdXIgdW4gZ3JhcGhlIGRlIGNvbW1pdHMgcGFybWkgbGVzIG9iamV0cyBlbXBhcXVldMOpcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTI2NAorbXNnaWQgIkNvdW50aW5nIGRpc3RpbmN0IGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJDb21wdGFnZSBkZXMgY29tbWl0cyBkaXN0aW5jdHMgZGFucyB1biBncmFwaGUgZGUgY29tbWl0IgorCisjOiBjb21taXQtZ3JhcGguYzoxMjk0Cittc2dpZCAiRmluZGluZyBleHRyYSBlZGdlcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIlJlY2hlcmNoZSBkJ2Fyw6p0ZXMgc3VwcGzDqW1lbnRhaXJlcyBkYW5zIHVuIGdyYXBoZSBkZSBjb21taXRzIgorCisjOiBjb21taXQtZ3JhcGguYzoxMzQwCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGNvcnJlY3QgbnVtYmVyIG9mIGJhc2UgZ3JhcGggaWRzIgorbXNnc3RyICLDqWNoZWMgw6AgbCfDqWNyaXR1cmUgbGUgbm9tYnJlIGNvcnJlY3QgZCdpZCBkZSBiYXNlIGRlIGZ1c2lvbiIKKworIzogY29tbWl0LWdyYXBoLmM6MTM3MyBtaWR4LmM6ODE0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbGVhZGluZyBkaXJlY3RvcmllcyBvZiAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgbGVzIHLDqXBlcnRvaXJlcyBkZSBwcmVtaWVyIG5pdmVhdSBkZSAlcyIKIAotIzogY29tbWl0LWdyYXBoLmM6MTAwMgorIzogY29tbWl0LWdyYXBoLmM6MTM4NSBidWlsdGluL2luZGV4LXBhY2suYzozMDYgYnVpbHRpbi9yZXBhY2suYzoyNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciAnJXMnIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIldyaXRpbmcgb3V0IGNvbW1pdCBncmFwaCBpbiAlZCBwYXNzIgorbXNnaWRfcGx1cmFsICJXcml0aW5nIG91dCBjb21taXQgZ3JhcGggaW4gJWQgcGFzc2VzIgorbXNnc3RyWzBdICLDiWNyaXR1cmUgbGUgZ3JhcGhlIGRlIGNvbW1pdHMgZW4gJWQgcGFzc2UiCittc2dzdHJbMV0gIsOJY3JpdHVyZSBsZSBncmFwaGUgZGUgY29tbWl0cyBlbiAlZCBwYXNzZXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0ODYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjb21taXQtZ3JhcGggY2hhaW4gZmlsZSIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSBmaWNoaWVyIGRlIGdyYXBoZSBkZSBjb21taXQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0OTgKK21zZ2lkICJmYWlsZWQgdG8gcmVuYW1lIGJhc2UgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgIsOpY2hlYyBkdSByZW5vbW1hZ2UgZHUgZmljaGllciBkZSBncmFwaGUgZGUgY29tbWl0cyIKKworIzogY29tbWl0LWdyYXBoLmM6MTUxOAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgdGVtcG9yYXJ5IGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHJlbm9tbWVyIGxlIGZpY2hpZXIgdGVtcG9yYWlyZSBkZSBncmFwaGUgZGUgY29tbWl0cyIKKworIzogY29tbWl0LWdyYXBoLmM6MTYzMQorbXNnaWQgIlNjYW5uaW5nIG1lcmdlZCBjb21taXRzIgorbXNnc3RyICJBbmFseXNlIGRlcyBjb21taXRzIGRlIGZ1c2lvbiIKKworIzogY29tbWl0LWdyYXBoLmM6MTY0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGR1cGxpY2F0ZSBjb21taXQgaWQgJXMiCittc2dzdHIgImlkIGRlIGNvbW1pdCAlcyBkdXBsaXF1w6kgaW5hdHRlbmR1IgorCisjOiBjb21taXQtZ3JhcGguYzoxNjY1Cittc2dpZCAiTWVyZ2luZyBjb21taXQtZ3JhcGgiCittc2dzdHIgImZ1c2lvbiBkdSBncmFwaGUgZGUgY29tbWl0cyIKKworIzogY29tbWl0LWdyYXBoLmM6MTg0NAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGUgY29tbWl0IGdyYXBoIGZvcm1hdCBjYW5ub3Qgd3JpdGUgJWQgY29tbWl0cyIKK21zZ3N0ciAibGUgZ3JhcGhlIGRlIGNvbW1pdHMgbmUgcGV1dCBwYXMgw6ljcmlyZSAlZCBjb21taXRzIgorCisjOiBjb21taXQtZ3JhcGguYzoxODU1Cittc2dpZCAidG9vIG1hbnkgY29tbWl0cyB0byB3cml0ZSBncmFwaCIKK21zZ3N0ciAidHJvcCBkZSBjb21taXRzIHBvdXIgw6ljcmlyZSB1biBncmFwaGUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NDQKIG1zZ2lkICJ0aGUgY29tbWl0LWdyYXBoIGZpbGUgaGFzIGluY29ycmVjdCBjaGVja3N1bSBhbmQgaXMgbGlrZWx5IGNvcnJ1cHQiCiBtc2dzdHIgIiIKICJsZSBncmFwaGUgZGUgY29tbWl0IGEgdW5lIHNvbW1lIGRlIGNvbnRyw7RsZSBpbmNvcnJlY3RlIGV0IGVzdCAiCiAidnJhaXNlbWJsYWJsZW1lbnQgY29ycm9tcHUiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjEwNDYKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGhhcyBpbmNvcnJlY3QgT0lEIG9yZGVyOiAlcyB0aGVuICVzIgorbXNnc3RyICJsZSBncmFwaGUgZGUgY29tbWl0IGEgdW4gb3JkcmUgZCdPSUQgaW5jb3JyZWN0wqA6ICVzIHB1aXMgJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NjQgY29tbWl0LWdyYXBoLmM6MTk3OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzIGluY29ycmVjdCBmYW5vdXQgdmFsdWU6IGZhbm91dFslZF0gPSAldSAhPSAldSIKK21zZ3N0ciAiIgorImxlIGdyYXBoZSBkZSBjb21taXQgYSB1bmUgdmFsZXVyIGRlIGRpc3BlcnNpb24gaW5jb3JyZWN0ZSA6IGRpc3BlcnNpb25bJWRdID0gIgorIiV1ICE9ICV1IgorCisjOiBjb21taXQtZ3JhcGguYzoxOTcxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSBjb21taXQgJXMgZnJvbSBjb21taXQtZ3JhcGgiCittc2dzdHIgIsOpY2hlYyBkZSBsJ2FuYWx5c2UgbGUgY29tbWl0ICVzIGRlcHVpcyBsZSBncmFwaGUgZGUgY29tbWl0cyIKKworIzogY29tbWl0LWdyYXBoLmM6MTk4OQogbXNnaWQgIlZlcmlmeWluZyBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKIG1zZ3N0ciAiVmVyaWZpY2F0aW9uIGRlcyBjb21taXRzIGRhbnMgbGUgZ3JhcGhlIGRlIGNvbW1pdHMiCiAKLSM6IGNvbXBhdC9vYnN0YWNrLmM6NDA1IGNvbXBhdC9vYnN0YWNrLmM6NDA3CisjOiBjb21taXQtZ3JhcGguYzoyMDAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSBjb21taXQgJXMgZnJvbSBvYmplY3QgZGF0YWJhc2UgZm9yIGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAiIgorIsOpY2hlYyBkZSBsJ2FuYWx5c2UgZHUgY29tbWl0ICVzIGRlcHVpcyBsYSBiYXNlIGRlIGRvbm7DqWVzIGQnb2JqZXRzIHBvdXIgbGUgIgorImdyYXBoZSBkZSBjb21taXQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicm9vdCB0cmVlIE9JRCBmb3IgY29tbWl0ICVzIGluIGNvbW1pdC1ncmFwaCBpcyAlcyAhPSAlcyIKK21zZ3N0ciAiIgorImwnT0lEIGRlIGwnYXJicmUgcmFjaW5lIHBvdXIgbGUgY29tbWl0ICVzIGRhbnMgbGUgZ3JhcGhlIGRlIGNvbW1pdCBlc3QgJXMgIT0gIgorIiVzIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDIwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgbGlzdCBmb3IgY29tbWl0ICVzIGlzIHRvbyBsb25nIgorbXNnc3RyICIiCisibGEgbGlzdGUgZGVzIHBhcmVudHMgZHUgZ3JhcGhlIGRlIGNvbW1pdCBwb3VyIGxlIGNvbW1pdCAlcyBlc3QgdHJvcCBsb25ndWUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBmb3IgJXMgaXMgJXMgIT0gJXMiCittc2dzdHIgImxlIHBhcmVudCBkdSBncmFwaGUgZGUgY29tbWl0IHBvdXIgJXMgZXN0ICVzICE9ICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgbGlzdCBmb3IgY29tbWl0ICVzIHRlcm1pbmF0ZXMgZWFybHkiCittc2dzdHIgIiIKKyJsYSBsaXN0ZSBkZSBwYXJlbnRzIGR1IGdyYXBoZSBkZSBjb21taXQgcG91ciBsZSBjb21taXQgJXMgc2UgdGVybWluZSB0cm9wIHTDtHQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbW1pdC1ncmFwaCBoYXMgZ2VuZXJhdGlvbiBudW1iZXIgemVybyBmb3IgY29tbWl0ICVzLCBidXQgbm9uLXplcm8gZWxzZXdoZXJlIgorbXNnc3RyICIiCisibGUgZ3JhcGhlIGRlIGNvbW1pdCBhIHVuIG51bcOpcm8gZGUgZ8OpbsOpcmF0aW9uIG51bCBwb3VyIGxlIGNvbW1pdCAlcywgbWFpcyAiCisibm9uLW51bCBhaWxsZXVycyIKKworIzogY29tbWl0LWdyYXBoLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29tbWl0LWdyYXBoIGhhcyBub24temVybyBnZW5lcmF0aW9uIG51bWJlciBmb3IgY29tbWl0ICVzLCBidXQgemVybyBlbHNld2hlcmUiCittc2dzdHIgIiIKKyJsZSBncmFwaGUgZGUgY29tbWl0IGEgdW4gbnVtw6lybyBkZSBnw6luw6lyYXRpb24gbm9uLW51bCBwb3VyIGxlIGNvbW1pdCAlcywgIgorIm1haXMgbnVsIGFpbGxldXJzIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBnZW5lcmF0aW9uIGZvciBjb21taXQgJXMgaXMgJXUgIT0gJXUiCittc2dzdHIgImxhIGfDqW7DqXJhdGlvbiBkdSBncmFwaGUgZGUgY29tbWl0IHBvdXIgbGUgY29tbWl0ICVzIGVzdCAldSAhPSAldSIKKworIzogY29tbWl0LWdyYXBoLmM6MjA3MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgZGF0ZSBmb3IgY29tbWl0ICVzIGluIGNvbW1pdC1ncmFwaCBpcyAlPFBSSXVNQVg+ICE9ICU8UFJJdU1BWD4iCittc2dzdHIgIiIKKyJsYSBkYXRlIGRlIHZhbGlkYXRpb24gcG91ciBsZSBjb21taXQgJXMgZGFucyBsZSBncmFwaGUgZGUgY29tbWl0IGVzdCAiCisiJTxQUkl1TUFYPiAhPSAlPFBSSXVNQVg+IgorCisjOiBjb21wYXQvb2JzdGFjay5jOjQwNiBjb21wYXQvb2JzdGFjay5jOjQwOAogbXNnaWQgIm1lbW9yeSBleGhhdXN0ZWQiCiBtc2dzdHIgInBsdXMgZGUgbcOpbW9pcmUiCiAKLSM6IGNvbmZpZy5jOjEyMworIzogY29uZmlnLmM6MTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleGNlZWRlZCBtYXhpbXVtIGluY2x1ZGUgZGVwdGggKCVkKSB3aGlsZSBpbmNsdWRpbmdcbiIKQEAgLTE1NTgsMzEzICsyNDc4LDMwNiBAQAogIlx0JXNcbiIKICJwb3NzaWJpbGl0w6kgZCdpbmNsdXNpb25zIG11bHRpcGxlcy4iCiAKLSM6IGNvbmZpZy5jOjEzOQorIzogY29uZmlnLmM6MTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBleHBhbmQgaW5jbHVkZSBwYXRoICclcyciCiBtc2dzdHIgImV4cGFuc2lvbiBpbXBvc3NpYmxlIGR1IGNoZW1pbiBkJ2luY2x1c2lvbiAnJXMnIgogCi0jOiBjb25maWcuYzoxNTAKKyM6IGNvbmZpZy5jOjE1MQogbXNnaWQgInJlbGF0aXZlIGNvbmZpZyBpbmNsdWRlcyBtdXN0IGNvbWUgZnJvbSBmaWxlcyIKIG1zZ3N0ciAibGVzIGluY2x1c2lvbnMgZGUgY29uZmlndXJhdGlvbiByZWxhdGl2ZXMgZG9pdmVudCB2ZW5pciBkZSBmaWNoaWVycyIKIAotIzogY29uZmlnLmM6MTkwCisjOiBjb25maWcuYzoxOTcKIG1zZ2lkICJyZWxhdGl2ZSBjb25maWcgaW5jbHVkZSBjb25kaXRpb25hbHMgbXVzdCBjb21lIGZyb20gZmlsZXMiCiBtc2dzdHIgIiIKICJsZXMgY29uZGl0aW9ucyBkJ2luY2x1c2lvbiBkZSBjb25maWd1cmF0aW9uIHJlbGF0aXZlIGRvaXZlbnQgdmVuaXIgZGUgIgogImZpY2hpZXJzIgogCi0jOiBjb25maWcuYzozNDgKKyM6IGNvbmZpZy5jOjM3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJrZXkgZG9lcyBub3QgY29udGFpbiBhIHNlY3Rpb246ICVzIgogbXNnc3RyICJsYSBjbMOpIG5lIGNvbnRpZW50IHBhcyBkZSBzZWN0aW9uOiAlcyIKIAotIzogY29uZmlnLmM6MzU0CisjOiBjb25maWcuYzozODIKICMsIGMtZm9ybWF0CiBtc2dpZCAia2V5IGRvZXMgbm90IGNvbnRhaW4gdmFyaWFibGUgbmFtZTogJXMiCiBtc2dzdHIgImxhIGNsw6kgbmUgY29udGllbnQgcGFzIGRlIG5vbSBkZSB2YXJpYWJsZcKgOiAlcyIKIAotIzogY29uZmlnLmM6Mzc4IHNlcXVlbmNlci5jOjIyOTYKKyM6IGNvbmZpZy5jOjQwNiBzZXF1ZW5jZXIuYzoyNDQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQga2V5OiAlcyIKIG1zZ3N0ciAiY2zDqSBpbnZhbGlkZcKgOiAlcyIKIAotIzogY29uZmlnLmM6Mzg0CisjOiBjb25maWcuYzo0MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBrZXkgKG5ld2xpbmUpOiAlcyIKIG1zZ3N0ciAiY2zDqSBpbnZhbGlkZSAocmV0b3VyIGNoYXJpb3QpwqA6ICVzIgogCi0jOiBjb25maWcuYzo0MjAgY29uZmlnLmM6NDMyCisjOiBjb25maWcuYzo0NDggY29uZmlnLmM6NDYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJvZ3VzIGNvbmZpZyBwYXJhbWV0ZXI6ICVzIgogbXNnc3RyICJwYXJhbcOodHJlIGRlIGNvbmZpZ3VyYXRpb24gbWFsIGZvcm3DqTogJXMiCiAKLSM6IGNvbmZpZy5jOjQ2NworIzogY29uZmlnLmM6NDk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImJvZ3VzIGZvcm1hdCBpbiAlcyIKIG1zZ3N0ciAiZm9ybWF0YWdlIG1hbCBmb3Jtw6kgZGFucyAlcyIKIAotIzogY29uZmlnLmM6NzkzCisjOiBjb25maWcuYzo4MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGJsb2IgJXMiCiBtc2dzdHIgImxpZ25lICVkIGRlIGNvbmZpZyBpbmNvcnJlY3RlIGRhbnMgbGUgYmxvYiAlcyIKIAotIzogY29uZmlnLmM6Nzk3CisjOiBjb25maWcuYzo4MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGZpbGUgJXMiCiBtc2dzdHIgImxpZ25lICVkIGRlIGNvbmZpZyBpbmNvcnJlY3RlIGRhbnMgbGUgZmljaGllciAlcyIKIAotIzogY29uZmlnLmM6ODAxCisjOiBjb25maWcuYzo4MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJsaWduZSAlZCBkZSBjb25maWcgaW5jb3JyZWN0ZSBkYW5zIGwnZW50csOpZSBzdGFuZGFyZCIKIAotIzogY29uZmlnLmM6ODA1CisjOiBjb25maWcuYzo4MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIHN1Ym1vZHVsZS1ibG9iICVzIgogbXNnc3RyICJsaWduZSAlZCBkZSBjb25maWcgaW5jb3JyZWN0ZSBkYW5zIGxlIGJsb2IgZGUgc291cy1tb2R1bGUgJXMiCiAKLSM6IGNvbmZpZy5jOjgwOQorIzogY29uZmlnLmM6ODM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBjb21tYW5kIGxpbmUgJXMiCiBtc2dzdHIgImxpZ25lICVkIGRlIGNvbmZpZyBpbmNvcnJlY3RlIGRhbnMgbGEgbGlnbmUgZGUgY29tbWFuZGUgJXMiCiAKLSM6IGNvbmZpZy5jOjgxMworIzogY29uZmlnLmM6ODQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiAlcyIKIG1zZ3N0ciAibGlnbmUgJWQgZGUgY29uZmlnIGluY29ycmVjdGUgZGFucyAlcyIKIAotIzogY29uZmlnLmM6OTUyCisjOiBjb25maWcuYzo5NzgKIG1zZ2lkICJvdXQgb2YgcmFuZ2UiCiBtc2dzdHIgImhvcnMgcGxhZ2UiCiAKLSM6IGNvbmZpZy5jOjk1MgorIzogY29uZmlnLmM6OTc4CiBtc2dpZCAiaW52YWxpZCB1bml0IgogbXNnc3RyICJ1bml0w6kgaW52YWxpZGUiCiAKLSM6IGNvbmZpZy5jOjk1OAorIzogY29uZmlnLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnOiAlcyIKIG1zZ3N0ciAidmFsZXVyIG51bcOpcmlxdWUgZGUgY29uZmlndXJhdGlvbiBpbnZhbGlkZSAnJXMnIHBvdXIgJyVzJ8KgOiAlcyIKIAotIzogY29uZmlnLmM6OTYzCisjOiBjb25maWcuYzo5OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gYmxvYiAlczogJXMiCiBtc2dzdHIgIiIKICJ2YWxldXIgbnVtw6lyaXF1ZSBkZSBjb25maWd1cmF0aW9uIGluY29ycmVjdGUgJyVzJyBwb3VyICclcycgZGFucyBsZSBibG9iICIKICIlc8KgOiAlcyIKIAotIzogY29uZmlnLmM6OTY2CisjOiBjb25maWcuYzoxMDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIGZpbGUgJXM6ICVzIgogbXNnc3RyICIiCiAidmFsZXVyIG51bcOpcmlxdWUgZGUgY29uZmlndXJhdGlvbiBpbmNvcnJlY3RlICclcycgcG91ciAnJXMnIGRhbnMgbGUgZmljaGllciAiCiAiJXPCoDogJXMiCiAKLSM6IGNvbmZpZy5jOjk2OQorIzogY29uZmlnLmM6MTAwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBzdGFuZGFyZCBpbnB1dDogJXMiCiBtc2dzdHIgIiIKICJ2YWxldXIgbnVtw6lyaXF1ZSBkZSBjb25maWd1cmF0aW9uIGluY29ycmVjdGUgJyVzJyBwb3VyICclcycgZGFucyBsJ2VudHLDqWUgIgogInN0YW5kYXJkwqA6ICVzIgogCi0jOiBjb25maWcuYzo5NzIKKyM6IGNvbmZpZy5jOjEwMDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gc3VibW9kdWxlLWJsb2IgJXM6ICVzIgogbXNnc3RyICIiCiAidmFsZXVyIG51bcOpcmlxdWUgZGUgY29uZmlndXJhdGlvbiBpbmNvcnJlY3RlICclcycgcG91ciAnJXMnIGRhbnMgbGUgYmxvYiBkZSAiCiAic291cy1tb2R1bGUgJXPCoDogJXMiCiAKLSM6IGNvbmZpZy5jOjk3NQorIzogY29uZmlnLmM6MTAxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBjb21tYW5kIGxpbmUgJXM6ICVzIgogbXNnc3RyICIiCiAidmFsZXVyIG51bcOpcmlxdWUgZGUgY29uZmlndXJhdGlvbiBpbmNvcnJlY3RlICclcycgcG91ciAnJXMnIGRhbnMgbGEgbGlnbmUgZGUgIgogImNvbW1hbmRlICVzwqA6ICVzIgogCi0jOiBjb25maWcuYzo5NzgKKyM6IGNvbmZpZy5jOjEwMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gJXM6ICVzIgogbXNnc3RyICIiCiAidmFsZXVyIG51bcOpcmlxdWUgZGUgY29uZmlndXJhdGlvbiBpbmNvcnJlY3RlICclcycgcG91ciAnJXMnIGRhbnMgJXPCoDogJXMiCiAKLSM6IGNvbmZpZy5jOjEwNzMKKyM6IGNvbmZpZy5jOjExMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGV4cGFuZCB1c2VyIGRpciBpbjogJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpdGVuZHJlIGxlIHLDqXBlcnRvaXJlIHV0aWxpc2F0ZXVyIGRhbnMgOiAnJXMnIgogCi0jOiBjb25maWcuYzoxMDgyCisjOiBjb25maWcuYzoxMTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZm9yICclcycgaXMgbm90IGEgdmFsaWQgdGltZXN0YW1wIgogbXNnc3RyICInJXMnIHBvdXIgJyVzJyBuJ2VzdCBwYXMgdW4gaG9yb2RhdGFnZSB2YWxpZGUiCiAKLSM6IGNvbmZpZy5jOjExNzMKKyM6IGNvbmZpZy5jOjEyMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWJicmV2IGxlbmd0aCBvdXQgb2YgcmFuZ2U6ICVkIgogbXNnc3RyICJsb25ndWV1ciBkJ2FiYnJldiBob3JzIHBsYWdlwqA6ICVkIgogCi0jOiBjb25maWcuYzoxMTg3IGNvbmZpZy5jOjExOTgKKyM6IGNvbmZpZy5jOjEyMjIgY29uZmlnLmM6MTIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgemxpYiBjb21wcmVzc2lvbiBsZXZlbCAlZCIKIG1zZ3N0ciAibml2ZWF1IGRlIGNvbXByZXNzaW9uIHpsaWIgaW5jb3JyZWN0ICVkIgogCi0jOiBjb25maWcuYzoxMjkwCisjOiBjb25maWcuYzoxMzI1CiBtc2dpZCAiY29yZS5jb21tZW50Q2hhciBzaG91bGQgb25seSBiZSBvbmUgY2hhcmFjdGVyIgogbXNnc3RyICJjb3JlLmNvbW1lbnRDaGFyIG5lIGRldnJhaXQgw6p0cmUgcXUndW4gdW5pcXVlIGNhcmFjdMOocmUiCiAKLSM6IGNvbmZpZy5jOjEzMjMKKyM6IGNvbmZpZy5jOjEzNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBtb2RlIGZvciBvYmplY3QgY3JlYXRpb246ICVzIgogbXNnc3RyICJtb2RlIGludmFsaWRlIHBvdXIgbGEgY3LDqWF0aW9uIGQnb2JqZXQgOiAlcyIKIAotIzogY29uZmlnLmM6MTM5NQorIzogY29uZmlnLmM6MTQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgdmFsdWUgZm9yICVzIgogbXNnc3RyICJ2YWxldXIgbWFsIGZvcm3DqWUgcG91ciAlcyIKIAotIzogY29uZmlnLmM6MTQyMQorIzogY29uZmlnLmM6MTQ1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgdmFsdWUgZm9yICVzOiAlcyIKIG1zZ3N0ciAidmFsZXVyIG1hbCBmb3Jtw6llIHBvdXIgJXPCoDogJXMiCiAKLSM6IGNvbmZpZy5jOjE0MjIKKyM6IGNvbmZpZy5jOjE0NTcKIG1zZ2lkICJtdXN0IGJlIG9uZSBvZiBub3RoaW5nLCBtYXRjaGluZywgc2ltcGxlLCB1cHN0cmVhbSBvciBjdXJyZW50IgogbXNnc3RyICJkb2l0IMOqdHJlIHBhcm1pIG5vdGhpbmcsIG1hdGNoaW5nLCBzaW1wbGUsIHVwc3RyZWFtIG91IGN1cnJlbnQiCiAKLSM6IGNvbmZpZy5jOjE0ODEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzkxCisjOiBjb25maWcuYzoxNTE4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFjayBjb21wcmVzc2lvbiBsZXZlbCAlZCIKIG1zZ3N0ciAibml2ZWF1IGRlIGNvbXByZXNzaW9uIGR1IHBhcXVldCAlZCIKIAotIzogY29uZmlnLmM6MTYwMgorIzogY29uZmlnLmM6MTYzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbG9hZCBjb25maWcgYmxvYiBvYmplY3QgJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjaGFyZ2VyIGwnb2JqZXQgYmxvYiBkZSBjb25maWcgJyVzJyIKIAotIzogY29uZmlnLmM6MTYwNQorIzogY29uZmlnLmM6MTY0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgJyVzJyBkb2VzIG5vdCBwb2ludCB0byBhIGJsb2IiCiBtc2dzdHIgImxhIHLDqWbDqXJlbmNlICclcycgbmUgcG9pbnRlIHBhcyBzdXIgdW4gYmxvYiIKIAotIzogY29uZmlnLmM6MTYyMgorIzogY29uZmlnLmM6MTY1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBjb25maWcgYmxvYiAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHLDqXNvdWRyZSBsZSBibG9iIGRlIGNvbmZpZyAnJXMnIgogCi0jOiBjb25maWcuYzoxNjUyCisjOiBjb25maWcuYzoxNjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwYXJzZSAlcyIKIG1zZ3N0ciAiw6ljaGVjIGRlIGwnYW5hbHlzZSBkZSAlcyIKIAotIzogY29uZmlnLmM6MTcwNQorIzogY29uZmlnLmM6MTc0MwogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21tYW5kLWxpbmUgY29uZmlnIgogbXNnc3RyICJsZWN0dXJlIGRlIGxhIGNvbmZpZ3VyYXRpb24gZGUgbGlnbmUgZGUgY29tbWFuZGUgaW1wb3NzaWJsZSIKIAotIzogY29uZmlnLmM6MjAzNworIzogY29uZmlnLmM6MjA5NwogbXNnaWQgInVua25vd24gZXJyb3Igb2NjdXJyZWQgd2hpbGUgcmVhZGluZyB0aGUgY29uZmlndXJhdGlvbiBmaWxlcyIKIG1zZ3N0ciAiZXJyZXVyIGluY29ubnVlIHBlbmRhbnQgbGEgbGVjdHVyZSBkZXMgZmljaGllcnMgZGUgY29uZmlndXJhdGlvbiIKIAotIzogY29uZmlnLmM6MjIwNworIzogY29uZmlnLmM6MjI2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkICVzOiAnJXMnIgogbXNnc3RyICIlcyBpbnZhbGlkZSA6ICclcyciCiAKLSM6IGNvbmZpZy5jOjIyNTAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5rbm93biBjb3JlLnVudHJhY2tlZENhY2hlIHZhbHVlICclcyc7IHVzaW5nICdrZWVwJyBkZWZhdWx0IHZhbHVlIgotbXNnc3RyICIiCi0idmFsZXVyICclcycgZGUgY29yZS51bnRyYWNrZWRDYWNoZSBpbmNvbm51ZcKgOyB1dGlsaXNhdGlvbiBkZSAna2VlcCcgcGFyICIKLSJkw6lmYXV0IgotCi0jOiBjb25maWcuYzoyMjc2CisjOiBjb25maWcuYzoyMzEyCiAjLCBjLWZvcm1hdAogbXNnaWQgInNwbGl0SW5kZXgubWF4UGVyY2VudENoYW5nZSB2YWx1ZSAnJWQnIHNob3VsZCBiZSBiZXR3ZWVuIDAgYW5kIDEwMCIKIG1zZ3N0ciAiIgogImxhIHZhbGV1ciAnJWQnIGRlIHNwbGl0SW5kZXgubWF4UGVyY2VudENoYW5nZSBkZXZyYWl0IHNlIHNpdHVlciBlbnRyZSAwIGV0ICIKICIxMDAiCiAKLSM6IGNvbmZpZy5jOjIzMjIKKyM6IGNvbmZpZy5jOjIzNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICclcycgZnJvbSBjb21tYW5kLWxpbmUgY29uZmlnIgogbXNnc3RyICIiCiAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyICclcycgZGVwdWlzIGxlIGNvbmZpZ3VyYXRpb24gZW4gbGlnbmUgZGUgY29tbWFuZGUiCiAKLSM6IGNvbmZpZy5jOjIzMjQKKyM6IGNvbmZpZy5jOjIzNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyB2YXJpYWJsZSAnJXMnIGluIGZpbGUgJyVzJyBhdCBsaW5lICVkIgogbXNnc3RyICIiCiAidmFyaWFibGUgZGUgY29uZmlndXJhdGlvbiAnJXMnIGluY29ycmVjdGUgZGFucyBsZSBmaWNoaWVyICclcycgw6AgbGEgbGlnbmUgJWQiCiAKLSM6IGNvbmZpZy5jOjI0MDUKKyM6IGNvbmZpZy5jOjI0NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzZWN0aW9uIG5hbWUgJyVzJyIKIG1zZ3N0ciAibm9tIGRlIHNlY3Rpb24gaW52YWxpZGUgJyVzJyIKIAotIzogY29uZmlnLmM6MjQzNworIzogY29uZmlnLmM6MjQ3MwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBoYXMgbXVsdGlwbGUgdmFsdWVzIgogbXNnc3RyICIlcyBhIGRlcyB2YWxldXJzIG11bHRpcGxlcyIKIAotIzogY29uZmlnLmM6MjQ2NgorIzogY29uZmlnLmM6MjUwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgbmV3IGNvbmZpZ3VyYXRpb24gZmlsZSAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgbGUgZmljaGllciBkZSBjb25maWd1cmF0aW9uICVzIgogCi0jOiBjb25maWcuYzoyNzE3IGNvbmZpZy5jOjMwNDEKKyM6IGNvbmZpZy5jOjI3NTQgY29uZmlnLmM6MzA3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9jayBjb25maWcgZmlsZSAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSB2ZXJyb3VpbGxlciBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gJXMiCiAKLSM6IGNvbmZpZy5jOjI3MjgKKyM6IGNvbmZpZy5jOjI3NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAib3BlbmluZyAlcyIKIG1zZ3N0ciAib3V2ZXJ0dXJlIGRlICVzIgogCi0jOiBjb25maWcuYzoyNzYzIGJ1aWx0aW4vY29uZmlnLmM6MzI3CisjOiBjb25maWcuYzoyODAwIGJ1aWx0aW4vY29uZmlnLmM6MzQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgcGF0dGVybjogJXMiCiBtc2dzdHIgIm1vdGlmIGludmFsaWRlIDogJXMiCiAKLSM6IGNvbmZpZy5jOjI3ODgKKyM6IGNvbmZpZy5jOjI4MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb25maWcgZmlsZSAlcyIKIG1zZ3N0ciAiZmljaGllciBkZSBjb25maWd1cmF0aW9uIGludmFsaWRlICVzIgogCi0jOiBjb25maWcuYzoyODAxIGNvbmZpZy5jOjMwNTQKKyM6IGNvbmZpZy5jOjI4MzggY29uZmlnLmM6MzA5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmc3RhdCBvbiAlcyBmYWlsZWQiCiBtc2dzdHIgIsOpY2hlYyBkZSBmc3RhdCBzdXIgJXMiCiAKLSM6IGNvbmZpZy5jOjI4MTIKKyM6IGNvbmZpZy5jOjI4NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG1tYXAgJyVzJyIKLW1zZ3N0ciAiaW1wb3NzaWJsZSBkIHLDqWFsaXNlciB1biBtYXAgZGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSByw6lhbGlzZXIgdW4gbWFwIGRlICclcyciCiAKLSM6IGNvbmZpZy5jOjI4MjEgY29uZmlnLmM6MzA1OQorIzogY29uZmlnLmM6Mjg1OCBjb25maWcuYzozMDk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNobW9kIG9uICVzIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGRlIGNobW9kIHN1ciAlcyIKIAotIzogY29uZmlnLmM6MjkwNiBjb25maWcuYzozMTU2CisjOiBjb25maWcuYzoyOTQzIGNvbmZpZy5jOjMxOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIGNvbmZpZyBmaWxlICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gJXMiCiAKLSM6IGNvbmZpZy5jOjI5NDAKKyM6IGNvbmZpZy5jOjI5NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHNldCAnJXMnIHRvICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgcsOpZ2xlciAnJXMnIMOgICclcyciCiAKLSM6IGNvbmZpZy5jOjI5NDIgYnVpbHRpbi9yZW1vdGUuYzo3ODIKKyM6IGNvbmZpZy5jOjI5NzkgYnVpbHRpbi9yZW1vdGUuYzo2NTUgYnVpbHRpbi9yZW1vdGUuYzo4NDkgYnVpbHRpbi9yZW1vdGUuYzo4NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHVuc2V0ICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgZMOpc2luaXRpYWxpc2VyICclcyciCiAKLSM6IGNvbmZpZy5jOjMwMzIKKyM6IGNvbmZpZy5jOjMwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzZWN0aW9uIG5hbWU6ICVzIgogbXNnc3RyICJub20gZGUgc2VjdGlvbiBpbnZhbGlkZcKgOiAlcyIKIAotIzogY29uZmlnLmM6MzE5OQorIzogY29uZmlnLmM6MzIzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIHZhbHVlIGZvciAnJXMnIgogbXNnc3RyICJ2YWxldXIgbWFucXVhbnRlIHBvdXIgJyVzJyIKQEAgLTE5MTcsNTAgKzI4MzAsNDUgQEAKIG1zZ2lkICJyZXBvc2l0b3J5IG9uIHRoZSBvdGhlciBlbmQgY2Fubm90IGJlIHNoYWxsb3ciCiBtc2dzdHIgImxlIGTDqXDDtHQgZGlzdGFudCBuZSBwZXV0IHBhcyDDqnRyZSBzdXBlcmZpY2llbCIKIAotIzogY29ubmVjdC5jOjMxMCBmZXRjaC1wYWNrLmM6MTgyIGJ1aWx0aW4vYXJjaGl2ZS5jOjYzCi0jLCBjLWZvcm1hdAotbXNnaWQgInJlbW90ZSBlcnJvcjogJXMiCi1tc2dzdHIgImVycmV1ciBkaXN0YW50ZSA6ICVzIgotCi0jOiBjb25uZWN0LmM6MzE2CisjOiBjb25uZWN0LmM6MzEzCiBtc2dpZCAiaW52YWxpZCBwYWNrZXQiCiBtc2dzdHIgInBhcXVldCBpbnZhbGlkZSIKIAotIzogY29ubmVjdC5jOjMzNgorIzogY29ubmVjdC5jOjMzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogdW5leHBlY3RlZCAnJXMnIgogbXNnc3RyICJlcnJldXIgZGUgcHJvdG9jb2xlwqA6ICclcycgYXR0ZW5kdSIKIAotIzogY29ubmVjdC5jOjQ0NAorIzogY29ubmVjdC5jOjQ0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGxzLXJlZnMgcmVzcG9uc2U6ICVzIgogbXNnc3RyICJyw6lwb25zZSDDoCBscy1yZWYgaW52YWxpZGUgOiAlcyIKIAotIzogY29ubmVjdC5jOjQ0OAorIzogY29ubmVjdC5jOjQ0NQogbXNnaWQgImV4cGVjdGVkIGZsdXNoIGFmdGVyIHJlZiBsaXN0aW5nIgogbXNnc3RyICJ2aWRhZ2UgYXR0ZW5kdSBhcHLDqHMgbGUgbGlzdGFnZSBkZSByw6lmw6lyZW5jZXMiCiAKLSM6IGNvbm5lY3QuYzo1NDcKKyM6IGNvbm5lY3QuYzo1NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgJyVzJyBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJsZSBwcm90b2NvbGUgJyVzJyBuJ2VzdCBwYXMgc3VwcG9ydMOpIgogCi0jOiBjb25uZWN0LmM6NTk4CisjOiBjb25uZWN0LmM6NTk1CiBtc2dpZCAidW5hYmxlIHRvIHNldCBTT19LRUVQQUxJVkUgb24gc29ja2V0IgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHBvc2l0aW9ubmVyIFNPX0tFRVBBTElWRSBzdXIgbGEgc29ja2V0IgogCi0jOiBjb25uZWN0LmM6NjM4IGNvbm5lY3QuYzo3MDEKKyM6IGNvbm5lY3QuYzo2MzUgY29ubmVjdC5jOjY5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJMb29raW5nIHVwICVzIC4uLiAiCiBtc2dzdHIgIlJlY2hlcmNoZSBkZSAlc+KApiAiCiAKLSM6IGNvbm5lY3QuYzo2NDIKKyM6IGNvbm5lY3QuYzo2MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGxvb2sgdXAgJXMgKHBvcnQgJXMpICglcykiCiBtc2dzdHIgImltcG9zc2libGUgZGUgcmVjaGVyY2hlciAlcyAocG9ydCAlcykgKCVzKSIKIAogIy4gVFJBTlNMQVRPUlM6IHRoaXMgaXMgdGhlIGVuZCBvZiAiTG9va2luZyB1cCAlcyAuLi4gIgotIzogY29ubmVjdC5jOjY0NiBjb25uZWN0LmM6NzE3CisjOiBjb25uZWN0LmM6NjQzIGNvbm5lY3QuYzo3MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImRvbmUuXG4iCkBAIC0xOTY5LDcgKzI4NzcsNyBAQAogImZhaXQuXG4iCiAiQ29ubmV4aW9uIMOgICVzIChwb3J0ICVzKeKApiAiCiAKLSM6IGNvbm5lY3QuYzo2NjggY29ubmVjdC5jOjc0NQorIzogY29ubmVjdC5jOjY2NSBjb25uZWN0LmM6NzQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ1bmFibGUgdG8gY29ubmVjdCB0byAlczpcbiIKQEAgLTE5NzksNzUgKzI4ODcsNzUgQEAKICIlcyIKIAogIy4gVFJBTlNMQVRPUlM6IHRoaXMgaXMgdGhlIGVuZCBvZiAiQ29ubmVjdGluZyB0byAlcyAocG9ydCAlcykgLi4uICIKLSM6IGNvbm5lY3QuYzo2NzQgY29ubmVjdC5jOjc1MQorIzogY29ubmVjdC5jOjY3MSBjb25uZWN0LmM6NzQ4CiBtc2dpZCAiZG9uZS4iCiBtc2dzdHIgImZhaXQuIgogCi0jOiBjb25uZWN0LmM6NzA1CisjOiBjb25uZWN0LmM6NzAyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzICglcykiCiBtc2dzdHIgImltcG9zc2libGUgZGUgcmVjaGVyY2hlciAlcyAoJXMpIgogCi0jOiBjb25uZWN0LmM6NzExCisjOiBjb25uZWN0LmM6NzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gcG9ydCAlcyIKIG1zZ3N0ciAicG9ydCBpbmNvbm51ICVzIgogCi0jOiBjb25uZWN0LmM6ODQ4IGNvbm5lY3QuYzoxMTc0CisjOiBjb25uZWN0LmM6ODQ1IGNvbm5lY3QuYzoxMTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgInN0cmFuZ2UgaG9zdG5hbWUgJyVzJyBibG9ja2VkIgogbXNnc3RyICJub20gZCdow7R0ZSDDqXRyYW5nZSAnJXMnIGJsb3F1w6kiCiAKLSM6IGNvbm5lY3QuYzo4NTAKKyM6IGNvbm5lY3QuYzo4NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBwb3J0ICclcycgYmxvY2tlZCIKIG1zZ3N0ciAicG9ydCDDqXRyYW5nZSAnJXMnIGJsb3F1w6kiCiAKLSM6IGNvbm5lY3QuYzo4NjAKKyM6IGNvbm5lY3QuYzo4NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0YXJ0IHByb3h5ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGTDqW1hcnJlciB1biBwcm94eSAlcyIKIAotIzogY29ubmVjdC5jOjkyNworIzogY29ubmVjdC5jOjkyOAogbXNnaWQgIm5vIHBhdGggc3BlY2lmaWVkOyBzZWUgJ2dpdCBoZWxwIHB1bGwnIGZvciB2YWxpZCB1cmwgc3ludGF4IgogbXNnc3RyICIiCiAiYXVjdW4gY2hlbWluIHNww6ljaWZpw6nCoDsgcsOpZsOpcmV6LXZvdXMgw6AgJ2dpdCBoZWxwIHB1bGwnIHBvdXIgdW5lIHN5bnRheGUgIgogImQnVVJMIHZhbGlkZSIKIAotIzogY29ubmVjdC5jOjExMjIKKyM6IGNvbm5lY3QuYzoxMTIzCiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNCIKIG1zZ3N0ciAibGEgdmFyaWFudGUgc3NoICdzaW1wbGUnIG5lIHN1cHBvcnRlIHBhcyAtNCIKIAotIzogY29ubmVjdC5jOjExMzQKKyM6IGNvbm5lY3QuYzoxMTM1CiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNiIKIG1zZ3N0ciAibGEgdmFyaWFudGUgc3NoICdzaW1wbGUnIG5lIHN1cHBvcnRlIHBhcyAtNiIKIAotIzogY29ubmVjdC5jOjExNTEKKyM6IGNvbm5lY3QuYzoxMTUyCiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCBzZXR0aW5nIHBvcnQiCiBtc2dzdHIgImxhIHZhcmlhbnRlIHNzaCAnc2ltcGxlJyBuZSBzdXBwb3J0ZSBwYXMgZGUgc3DDqWNpZmllciBsZSBwb3J0IgogCi0jOiBjb25uZWN0LmM6MTI2MgorIzogY29ubmVjdC5jOjEyNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBwYXRobmFtZSAnJXMnIGJsb2NrZWQiCiBtc2dzdHIgImNoZW1pbiDDqXRyYW5nZSAnJXMnIGJsb3F1w6kiCiAKLSM6IGNvbm5lY3QuYzoxMzA3CisjOiBjb25uZWN0LmM6MTMxMQogbXNnaWQgInVuYWJsZSB0byBmb3JrIgogbXNnc3RyICJmb3JrIGltcG9zc2libGUiCiAKLSM6IGNvbm5lY3RlZC5jOjY4IGJ1aWx0aW4vZnNjay5jOjIwMiBidWlsdGluL3BydW5lLmM6MTQ3CisjOiBjb25uZWN0ZWQuYzo5OCBidWlsdGluL2ZzY2suYzoyMDggYnVpbHRpbi9wcnVuZS5jOjQzCiBtc2dpZCAiQ2hlY2tpbmcgY29ubmVjdGl2aXR5IgogbXNnc3RyICJWw6lyaWZpY2F0aW9uIGRlIGxhIGNvbm5lY3Rpdml0w6kiCiAKLSM6IGNvbm5lY3RlZC5jOjgwCisjOiBjb25uZWN0ZWQuYzoxMTAKIG1zZ2lkICJDb3VsZCBub3QgcnVuICdnaXQgcmV2LWxpc3QnIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIGxhbmNlciAnZ2l0IHJldi1saXN0JyIKIAotIzogY29ubmVjdGVkLmM6MTAwCisjOiBjb25uZWN0ZWQuYzoxMzAKIG1zZ2lkICJmYWlsZWQgd3JpdGUgdG8gcmV2LWxpc3QiCiBtc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlIGRhbnMgbGEgcmV2LWxpc3QiCiAKLSM6IGNvbm5lY3RlZC5jOjEwNworIzogY29ubmVjdGVkLmM6MTM3CiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHJldi1saXN0J3Mgc3RkaW4iCiBtc2dzdHIgImltcG9zc2libGUgZGUgZmVybWVyIGwnZW50csOpZSBzdGFuZGFyZCBkdSByZXYtbGlzdCIKIApAQCAtMjA4NCwyNiArMjk5MiwyNiBAQAogIkxlcyBMRiBzZXJvbnQgcmVtcGxhY8OpcyBwYXIgZGVzIENSTEYgZGFucyAlcy5cbiIKICJMZSBmaWNoaWVyIGNvbnNlcnZlcmEgc2VzIGZpbnMgZGUgbGlnbmUgZCdvcmlnaW5lIGRhbnMgdm90cmUgY29waWUgZGUgdHJhdmFpbCIKIAotIzogY29udmVydC5jOjI4MAorIzogY29udmVydC5jOjI4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJCT00gaXMgcHJvaGliaXRlZCBpbiAnJXMnIGlmIGVuY29kZWQgYXMgJXMiCiBtc2dzdHIgIkF1Y3VuIEJPTSBuJ2VzdCBwZXJtaXMgZGFucyAnJXMnIHMnaWwgZXN0IGVuY29kw6kgY29tbWUgJXMiCiAKLSM6IGNvbnZlcnQuYzoyODcKKyM6IGNvbnZlcnQuYzoyOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgotIlRoZSBmaWxlICclcycgY29udGFpbnMgYSBieXRlIG9yZGVyIG1hcmsgKEJPTSkuIFBsZWFzZSB1c2UgVVRGLSVzIGFzIHdvcmtpbmctIgotInRyZWUtZW5jb2RpbmcuIgorIlRoZSBmaWxlICclcycgY29udGFpbnMgYSBieXRlIG9yZGVyIG1hcmsgKEJPTSkuIFBsZWFzZSB1c2UgVVRGLSUuKnMgYXMgIgorIndvcmtpbmctdHJlZS1lbmNvZGluZy4iCiBtc2dzdHIgIiIKICJMZSBmaWNoaWVyICclcycgY29udGllbnQgdW4gbWFycXVldXIgZCdvcmRyZSBkJ29jdGV0cyAoQk9NKS4gVmV1aWxsZXogIgotInV0aWxpc2VyIFVURi0lcyBjb21tZSBlbmNvZGFnZSBkJ2FyYnJlIGRlIHRyYXZhaWwuIgorInV0aWxpc2VyIFVURi0lLipzIGNvbW1lIGVuY29kYWdlIGQnYXJicmUgZGUgdHJhdmFpbC4iCiAKLSM6IGNvbnZlcnQuYzozMDUKKyM6IGNvbnZlcnQuYzozMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQk9NIGlzIHJlcXVpcmVkIGluICclcycgaWYgZW5jb2RlZCBhcyAlcyIKIG1zZ3N0ciAiVW4gQk9NIGVzdCBvYmxpZ2F0b2lyZSBkYW5zICclcycgcydpbCBlc3QgZW5jb2TDqSBjb21tZSAlcyIKIAotIzogY29udmVydC5jOjMwNworIzogY29udmVydC5jOjMwNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZpbGUgJyVzJyBpcyBtaXNzaW5nIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lc0JFIG9yIFVURi0iCkBAIC0yMTEzLDUyICszMDIxLDUyIEBACiAidXRpbGlzZXIgVVRGLSVzQkUgb3UgVVRGLSVzTEUgKHNlbG9uIGwnb3JkcmUgZMOpc2lyw6kpIGNvbW1lIGVuY29kYWdlIGQnYXJicmUgIgogImRlIHRyYXZhaWwuIgogCi0jOiBjb252ZXJ0LmM6NDI1IGNvbnZlcnQuYzo0OTYKKyM6IGNvbnZlcnQuYzo0MTkgY29udmVydC5jOjQ5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZW5jb2RlICclcycgZnJvbSAlcyB0byAlcyIKIG1zZ3N0ciAiw6ljaGVjIGRlIGwnZW5jb2RhZ2UgZGUgJyVzJyBkZSAlcyB2ZXJzICVzIgogCi0jOiBjb252ZXJ0LmM6NDY4CisjOiBjb252ZXJ0LmM6NDYyCiAjLCBjLWZvcm1hdAogbXNnaWQgImVuY29kaW5nICclcycgZnJvbSAlcyB0byAlcyBhbmQgYmFjayBpcyBub3QgdGhlIHNhbWUiCiBtc2dzdHIgIiIKICJlbmNvZGVyICclcycgZGVwdWlzICVzIHZlcnMgJXMgcHVpcyBpbnZlcnNlbWVudCBuZSBwcm9kdWl0IHBhcyBsZSBtw6ptZSAiCiAiY29udGVudSIKIAotIzogY29udmVydC5jOjY3NAorIzogY29udmVydC5jOjY2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZm9yayB0byBydW4gZXh0ZXJuYWwgZmlsdGVyICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgZm9ya2VyIHBvdXIgbGFuY2VyIGxlIGZpbHRyZSBleHRlcm5lICclcyciCiAKLSM6IGNvbnZlcnQuYzo2OTQKKyM6IGNvbnZlcnQuYzo2ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZlZWQgdGhlIGlucHV0IHRvIGV4dGVybmFsIGZpbHRlciAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGZvdXJuaXIgbCdlbnRyw6llIGF1IGZpbHRyZSBleHRlcm5lICclcyciCiAKLSM6IGNvbnZlcnQuYzo3MDEKKyM6IGNvbnZlcnQuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkICVkIgogbXNnc3RyICJsZSBmaWx0cmUgZXh0ZXJuZSAnJXMnIGEgw6ljaG91w6kgJWQiCiAKLSM6IGNvbnZlcnQuYzo3MzYgY29udmVydC5jOjczOQorIzogY29udmVydC5jOjczMCBjb252ZXJ0LmM6NzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYWQgZnJvbSBleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQiCiBtc2dzdHIgImxhIGxlY3R1cmUgZGVwdWlzIGxlIGZpbHRyZSBleHRlcm5lICclcycgYSDDqWNob3XDqSIKIAotIzogY29udmVydC5jOjc0MiBjb252ZXJ0LmM6Nzk2CisjOiBjb252ZXJ0LmM6NzM2IGNvbnZlcnQuYzo3OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkIgogbXNnc3RyICJsZSBmaWx0cmUgZXh0ZXJuZSAnJXMnIGEgw6ljaG91w6kiCiAKLSM6IGNvbnZlcnQuYzo4NDQKKyM6IGNvbnZlcnQuYzo4MzkKIG1zZ2lkICJ1bmV4cGVjdGVkIGZpbHRlciB0eXBlIgogbXNnc3RyICJ0eXBlIGRlIGZpbHRyZSBpbmF0dGVuZHUiCiAKLSM6IGNvbnZlcnQuYzo4NTUKKyM6IGNvbnZlcnQuYzo4NTAKIG1zZ2lkICJwYXRoIG5hbWUgdG9vIGxvbmcgZm9yIGV4dGVybmFsIGZpbHRlciIKIG1zZ3N0ciAibm9tIGRlIGNoZW1pbiB0cm9wIGxvbmcgcG91ciB1biBmaWx0cmUgZXh0ZXJuZSIKIAotIzogY29udmVydC5jOjkyOQorIzogY29udmVydC5jOjkyNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXh0ZXJuYWwgZmlsdGVyICclcycgaXMgbm90IGF2YWlsYWJsZSBhbnltb3JlIGFsdGhvdWdoIG5vdCBhbGwgcGF0aHMgaGF2ZSAiCkBAIC0yMTY3LDY3ICszMDc1LDY3IEBACiAibGUgZmlsdHJlIGV4dGVybmUgJyVzJyBuJ2VzdCBwbHVzIGRpc3BvbmlibGUgYmllbiBxdWUgdG91cyBsZXMgY2hlbWlucyAiCiAibidhaWVudCBwYXMgw6l0w6kgZmlsdHLDqXMiCiAKLSM6IGNvbnZlcnQuYzoxMjI4CisjOiBjb252ZXJ0LmM6MTIyMwogbXNnaWQgInRydWUvZmFsc2UgYXJlIG5vIHZhbGlkIHdvcmtpbmctdHJlZS1lbmNvZGluZ3MiCiBtc2dzdHIgInRydWUvZmFsc2UgbmUgc29udCBwYXMgZGVzIGVuY29kYWdlcyBkJ2FyYnJlIGRlIHRyYXZhaWwgdmFsaWRlcyIKIAotIzogY29udmVydC5jOjEzOTggY29udmVydC5jOjE0MzIKKyM6IGNvbnZlcnQuYzoxNDExIGNvbnZlcnQuYzoxNDQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjbGVhbiBmaWx0ZXIgJyVzJyBmYWlsZWQiCiBtc2dzdHIgIiVzwqA6IGxlIGZpbHRyZSBjbGVhbiAnJXMnIGEgw6ljaG91w6kiCiAKLSM6IGNvbnZlcnQuYzoxNDc2CisjOiBjb252ZXJ0LmM6MTQ4OQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogc211ZGdlIGZpbHRlciAlcyBmYWlsZWQiCiBtc2dzdHIgIiVzwqA6IGxlIGZpbHRyZSBzbXVkZ2UgJyVzJyBhIMOpY2hvdcOpIgogCi0jOiBkYXRlLmM6MTE2CisjOiBkYXRlLmM6MTM4CiBtc2dpZCAiaW4gdGhlIGZ1dHVyZSIKIG1zZ3N0ciAiZGFucyBsZSBmdXR1ciIKIAotIzogZGF0ZS5jOjEyMgorIzogZGF0ZS5jOjE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHNlY29uZCBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gc2Vjb25kcyBhZ28iCiBtc2dzdHJbMF0gImlsIHkgYSAlPFBSSXVNQVg+IHNlY29uZGUiCiBtc2dzdHJbMV0gImlsIHkgYSAlPFBSSXVNQVg+IHNlY29uZGVzIgogCi0jOiBkYXRlLmM6MTI5CisjOiBkYXRlLmM6MTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gbWludXRlIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtaW51dGVzIGFnbyIKIG1zZ3N0clswXSAiaWwgeSBhICU8UFJJdU1BWD4gbWludXRlIgogbXNnc3RyWzFdICJpbCB5IGEgJTxQUkl1TUFYPiBtaW51dGVzIgogCi0jOiBkYXRlLmM6MTM2CisjOiBkYXRlLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gaG91ciBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gaG91cnMgYWdvIgogbXNnc3RyWzBdICJpbCB5IGEgJTxQUkl1TUFYPiBoZXVyZSIKIG1zZ3N0clsxXSAiaWwgeSBhICU8UFJJdU1BWD4gaGV1cmVzIgogCi0jOiBkYXRlLmM6MTQzCisjOiBkYXRlLmM6MTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gZGF5IGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBkYXlzIGFnbyIKIG1zZ3N0clswXSAiaWwgeSBhICU8UFJJdU1BWD4gam91ciIKIG1zZ3N0clsxXSAiaWwgeSBhICU8UFJJdU1BWD4gam91cnMiCiAKLSM6IGRhdGUuYzoxNDkKKyM6IGRhdGUuYzoxNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiB3ZWVrIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiB3ZWVrcyBhZ28iCiBtc2dzdHJbMF0gImlsIHkgYSAlPFBSSXVNQVg+IHNlbWFpbmUiCiBtc2dzdHJbMV0gImlsIHkgYSAlPFBSSXVNQVg+IHNlbWFpbmVzIgogCi0jOiBkYXRlLmM6MTU2CisjOiBkYXRlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gbW9udGggYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IG1vbnRocyBhZ28iCiBtc2dzdHJbMF0gImlsIHkgYSAlPFBSSXVNQVg+IG1vaXMiCiBtc2dzdHJbMV0gImlsIHkgYSAlPFBSSXVNQVg+IG1vaXMiCiAKLSM6IGRhdGUuYzoxNjcKKyM6IGRhdGUuYzoxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiB5ZWFyIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHllYXJzIgpAQCAtMjIzNSw0MiArMzE0Myw0MiBAQAogbXNnc3RyWzFdICIlPFBSSXVNQVg+IGFucyIKIAogIy4gVFJBTlNMQVRPUlM6ICIlcyIgaXMgIjxuPiB5ZWFycyIKLSM6IGRhdGUuYzoxNzAKKyM6IGRhdGUuYzoxOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMsICU8UFJJdU1BWD4gbW9udGggYWdvIgogbXNnaWRfcGx1cmFsICIlcywgJTxQUkl1TUFYPiBtb250aHMgYWdvIgogbXNnc3RyWzBdICJpbCB5IGEgJXMgZXQgJTxQUkl1TUFYPiBtb2lzIgogbXNnc3RyWzFdICJpbCB5IGEgJXMgZXQgJTxQUkl1TUFYPiBtb2lzIgogCi0jOiBkYXRlLmM6MTc1IGRhdGUuYzoxODAKKyM6IGRhdGUuYzoxOTcgZGF0ZS5jOjIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHllYXIgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHllYXJzIGFnbyIKIG1zZ3N0clswXSAiaWwgeSBhICU8UFJJdU1BWD4gYW4iCiBtc2dzdHJbMV0gImlsIHkgYSAlPFBSSXVNQVg+IGFucyIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjI2OAorIzogZGVsdGEtaXNsYW5kcy5jOjI3MgogbXNnaWQgIlByb3BhZ2F0aW5nIGlzbGFuZCBtYXJrcyIKIG1zZ3N0ciAiUHJvcGFnYXRpb24gZGVzIG1hcnF1ZXMgZCfDrmxvdHMiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzoyODYKKyM6IGRlbHRhLWlzbGFuZHMuYzoyOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHRyZWUgb2JqZWN0ICVzIgogbXNnc3RyICJvYmpldCBhcmJyZSBpbnZhbGlkZSAlcyIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjMzMAorIzogZGVsdGEtaXNsYW5kcy5jOjMzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBpc2xhbmQgcmVnZXggZm9yICclcyc6ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNoYXJnZXIgbGEgcmVnZXggw65sZSBwb3VyICclcyfCoDogJXMiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzozODYKKyM6IGRlbHRhLWlzbGFuZHMuYzozOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaXNsYW5kIHJlZ2V4IGZyb20gY29uZmlnIGhhcyB0b28gbWFueSBjYXB0dXJlIGdyb3VwcyAobWF4PSVkKSIKIG1zZ3N0ciAiIgogImwnZXhwcmVzc2lvbiByYXRpb25uZWxsZSBkZXB1aXMgbGEgY29uZmlndXJhdGlvbiBhIHRyb3AgZGUgZ3JvdXBlcyBkZSAiCiAiY2FwdHVyZSAobWF4PSVkKSIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjQ2MgorIzogZGVsdGEtaXNsYW5kcy5jOjQ2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJNYXJrZWQgJWQgaXNsYW5kcywgZG9uZS5cbiIKIG1zZ3N0ciAiTWFycXVhZ2UgZGUgJWQgw65sb3RzLCBmYWl0LlxuIgpAQCAtMjI4MCwyNyArMzE4OCwzNCBAQAogbXNnaWQgImZhaWxlZCB0byByZWFkIG9yZGVyZmlsZSAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGUgZmljaGllciBkZSBjb21tYW5kZSAnJXMnIgogCi0jOiBkaWZmY29yZS1yZW5hbWUuYzo1NDQKKyM6IGRpZmZjb3JlLXJlbmFtZS5jOjU0MwogbXNnaWQgIlBlcmZvcm1pbmcgaW5leGFjdCByZW5hbWUgZGV0ZWN0aW9uIgogbXNnc3RyICJEw6l0ZWN0aW9uIGRlIHJlbm9tbWFnZSBpbmV4YWN0IGVuIGNvdXJzIgogCi0jOiBkaWZmLmM6MTA4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIm9wdGlvbiAnJXMnIHJlcXVpcmVzIGEgdmFsdWUiCi1tc2dzdHIgImxlIGNvbW11dGF0ZXVyICclcycgYSBiZXNvaW4gZCd1bmUgdmFsZXVyIgorIzogZGlmZi1uby1pbmRleC5jOjIzOAorbXNnaWQgImdpdCBkaWZmIC0tbm8taW5kZXggWzxvcHRpb25zPl0gPHBhdGg+IDxwYXRoPiIKK21zZ3N0ciAiZ2l0IGRpZmYgLS1uby1pbmRleCBbPG9wdGlvbnM+XSA8Y2hlbWluPiA8Y2hlbWluPiIKIAotIzogZGlmZi5jOjE1OAorIzogZGlmZi1uby1pbmRleC5jOjI2MworbXNnaWQgIiIKKyJOb3QgYSBnaXQgcmVwb3NpdG9yeS4gVXNlIC0tbm8taW5kZXggdG8gY29tcGFyZSB0d28gcGF0aHMgb3V0c2lkZSBhIHdvcmtpbmcgIgorInRyZWUiCittc2dzdHIgIiIKKyJQYXMgdW4gZMOpcMO0dCBnaXQuIFV0aWxpc2V6IC0tbm8taW5kZXggcG91ciBjb21wYXJlciBkZXV4IGNoZW1pbnMgaG9ycyBkJ3VuICIKKyJhcmJyZSBkZSB0cmF2YWlsIgorCisjOiBkaWZmLmM6MTU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgRmFpbGVkIHRvIHBhcnNlIGRpcnN0YXQgY3V0LW9mZiBwZXJjZW50YWdlICclcydcbiIKIG1zZ3N0ciAiIgogIiAgSW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGxlIHBvdXJjZW50YWdlIGRlIG1vZGlmaWNhdGlvbiBkZSBkaXJzdGF0ICclcydcbiIKIAotIzogZGlmZi5jOjE2MworIzogZGlmZi5jOjE2MAogIywgYy1mb3JtYXQKIG1zZ2lkICIgIFVua25vd24gZGlyc3RhdCBwYXJhbWV0ZXIgJyVzJ1xuIgogbXNnc3RyICIgIFBhcmFtw6h0cmUgZGlyc3RhdCBpbmNvbm51ICclcydcbiIKIAotIzogZGlmZi5jOjI5MQorIzogZGlmZi5jOjI5NgogbXNnaWQgIiIKICJjb2xvciBtb3ZlZCBzZXR0aW5nIG11c3QgYmUgb25lIG9mICdubycsICdkZWZhdWx0JywgJ2Jsb2NrcycsICd6ZWJyYScsICIKICInZGltbWVkLXplYnJhJywgJ3BsYWluJyIKQEAgLTIzMDgsMjYgKzMyMjMsMzEgQEAKICJsZSBwYXJhbcOodHJlIGRlIGNvdWxldXIgZGUgZMOpcGxhY2VtZW50IGRvaXQgw6p0cmUgcGFybWkgJ25vJywgJ2RlZmF1bHQnLCAiCiAiJ2Jsb2NrcycsICd6ZWJyYScsICdkaW1tZWRfemVicmEnIG91ICdwbGFpbiciCiAKLSM6IGRpZmYuYzozMTYKKyM6IGRpZmYuYzozMjQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiaWdub3JpbmcgdW5rbm93biBjb2xvci1tb3ZlZC13cyBtb2RlICclcyciCi1tc2dzdHIgIm1vZGUgY29sb3ItbW92ZWQtd3MgaW5jb25udSAnJXMnIGlnbm9yw6kiCi0KLSM6IGRpZmYuYzozMjMKIG1zZ2lkICIiCi0iY29sb3ItbW92ZWQtd3M6IGFsbG93LWluZGVudGF0aW9uLWNoYW5nZSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB3aGl0ZSAiCi0ic3BhY2UgbW9kZXMiCisidW5rbm93biBjb2xvci1tb3ZlZC13cyBtb2RlICclcycsIHBvc3NpYmxlIHZhbHVlcyBhcmUgJ2lnbm9yZS1zcGFjZS1jaGFuZ2UnLCAiCisiJ2lnbm9yZS1zcGFjZS1hdC1lb2wnLCAnaWdub3JlLWFsbC1zcGFjZScsICdhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UnIgorbXNnc3RyICIiCisibW9kZSB1bmtub3duIGNvbG9yLW1vdmVkLXdzIGluY29ubnUgJyVzJywgbGVzIHZhbGV1cnMgcG9zc2libGVzIHNvbnQgJ2lnbm9yZS0iCisic3BhY2UtY2hhbmdlJywgJ2lnbm9yZS1zcGFjZS1hdC1lb2wnLCAnaWdub3JlLWFsbC1zcGFjZScsICdhbGxvdy1pbmRlbnRhdGlvbi0iCisiY2hhbmdlJyIKKworIzogZGlmZi5jOjMzMgorbXNnaWQgIiIKKyJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyICIKKyJ3aGl0ZXNwYWNlIG1vZGVzIgogbXNnc3RyICIiCiAiY29sb3ItbW92ZWQtd3PCoDogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIG5lIHBldXQgcGFzIMOqdHJlIGNvbWJpbsOpIGF2ZWMgIgogImQnYXV0cmVzIG1vZGVzIGQnZXNwYWNlIgogCi0jOiBkaWZmLmM6Mzk0CisjOiBkaWZmLmM6NDA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gdmFsdWUgZm9yICdkaWZmLnN1Ym1vZHVsZScgY29uZmlnIHZhcmlhYmxlOiAnJXMnIgogbXNnc3RyICIiCiAiVmFsZXVyIGluY29ubnVlIHBvdXIgbGEgdmFyaWFibGUgZGUgY29uZmlndXJhdGlvbiAnZGlmZi5zdWJtb2R1bGUnIDogJyVzJyIKIAotIzogZGlmZi5jOjQ1NAorIzogZGlmZi5jOjQ2NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiRm91bmQgZXJyb3JzIGluICdkaWZmLmRpcnN0YXQnIGNvbmZpZyB2YXJpYWJsZTpcbiIKQEAgLTIzMzYsMjQgKzMyNTYsMzUgQEAKICJFcnJldXJzIGRhbnMgbGEgdmFyaWFibGUgZGUgY29uZmlndXJhdGlvbiAnZGlmZi5kaXJzdGF0JyA6XG4iCiAiJXMiCiAKLSM6IGRpZmYuYzo0MTQwCisjOiBkaWZmLmM6NDIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBkaWZmIGRpZWQsIHN0b3BwaW5nIGF0ICVzIgogbXNnc3RyICJsJ2FwcGxpY2F0aW9uIGRlIGRpZmYgZXh0ZXJuZSBhIGRpc3BhcnUsIGFycsOqdCDDoCAlcyIKIAotIzogZGlmZi5jOjQ0ODIKKyM6IGRpZmYuYzo0NTQ3CiBtc2dpZCAiLS1uYW1lLW9ubHksIC0tbmFtZS1zdGF0dXMsIC0tY2hlY2sgYW5kIC1zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi0tbmFtZS1vbmx5LCAtLW5hbWUtc3RhdHVzLCAtLWNoZWNrIGV0IC1zIHNvbnQgbXV0dWVsbGVtZW50IGV4Y2x1c2lmcyIKIAotIzogZGlmZi5jOjQ0ODUKKyM6IGRpZmYuYzo0NTUwCiBtc2dpZCAiLUcsIC1TIGFuZCAtLWZpbmQtb2JqZWN0IGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi1HLCAtUyBldCAtLWZpbmQtb2JqZWN0IHNvbnQgbXV0dWVsbGVtZW50IGV4Y2x1c2lmcyIKIAotIzogZGlmZi5jOjQ1NjMKKyM6IGRpZmYuYzo0NjI4CiBtc2dpZCAiLS1mb2xsb3cgcmVxdWlyZXMgZXhhY3RseSBvbmUgcGF0aHNwZWMiCiBtc2dzdHIgIi0tZm9sbG93IGEgYmVzb2luIGQndW5lIHNww6ljaWZpY2F0aW9uIGRlIGNoZW1pbiB1bmlxdWUiCiAKLSM6IGRpZmYuYzo0NzI5CisjOiBkaWZmLmM6NDY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIC0tc3RhdCB2YWx1ZTogJXMiCittc2dzdHIgInZhbGV1ciBpbnZhbGlkZSBkZSAtLXN0YXTCoDogJXMiCisKKyM6IGRpZmYuYzo0NjgxIGRpZmYuYzo0Njg2IGRpZmYuYzo0NjkxIGRpZmYuYzo0Njk2IGRpZmYuYzo1MjA5CisjOiBwYXJzZS1vcHRpb25zLmM6MTk3IHBhcnNlLW9wdGlvbnMuYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKK21zZ3N0ciAiJXMgYXR0ZW5kIHVuZSB2YWxldXIgbnVtw6lyaXF1ZSIKKworIzogZGlmZi5jOjQ3MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkZhaWxlZCB0byBwYXJzZSAtLWRpcnN0YXQvLVggb3B0aW9uIHBhcmFtZXRlcjpcbiIKQEAgLTIzNjIsMjQgKzMyOTMsNTMzIEBACiAiSW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGxlIHBhcmFtw6h0cmUgZGUgbCdvcHRpb24gLS1kaXJzdGF0Ly1YIDpcbiIKICIlcyIKIAotIzogZGlmZi5jOjQ3NDMKKyM6IGRpZmYuYzo0Nzk4CiAjLCBjLWZvcm1hdAotbXNnaWQgIkZhaWxlZCB0byBwYXJzZSAtLXN1Ym1vZHVsZSBvcHRpb24gcGFyYW1ldGVyOiAnJXMnIgotbXNnc3RyICJJbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGUgcGFyYW3DqHRyZSBkZSBsJ29wdGlvbiAtLXN1Ym1vZHVsZSA6ICclcyciCittc2dpZCAidW5rbm93biBjaGFuZ2UgY2xhc3MgJyVjJyBpbiAtLWRpZmYtZmlsdGVyPSVzIgorbXNnc3RyICJjbGFzc2UgZGUgbW9kaWZpY2F0aW9uIGluY29ubnVlICclYycgZGFucyAtLWRpZmYtZmlsZXRlcj0lcyIKIAotIzogZGlmZi5jOjU4MjMKKyM6IGRpZmYuYzo0ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdmFsdWUgYWZ0ZXIgd3MtZXJyb3ItaGlnaGxpZ2h0PSUuKnMiCittc2dzdHIgInZhbGV1ciBpbmNvbm51ZSBhcHLDqHMgd3MtZXJyb3ItaGlnaGxpZ2h0PSUuKnMiCisKKyM6IGRpZmYuYzo0ODM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXNvbHZlICclcyciCittc2dzdHIgImltcG9zc2libGUgZGUgcsOpc291ZHJlICclcyciCisKKyM6IGRpZmYuYzo0ODg2IGRpZmYuYzo0ODkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgPG4+LzxtPiBmb3JtIgorbXNnc3RyICJmb3JtZSA8bj4vPG0+IGF0dGVuZHVlIHBhciAlcyIKKworIzogZGlmZi5jOjQ5MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIGNoYXJhY3RlciwgZ290ICclcyciCittc2dzdHIgImNhcmFjdMOocmUgYXR0ZW5kdSBwYXIgJXMsICclcycgdHJvdXbDqSIKKworIzogZGlmZi5jOjQ5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIC0tY29sb3ItbW92ZWQgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJtYXV2YWlzIGFyZ3VtZW50IC0tY29sb3ItbW92ZWTCoDogJXMiCisKKyM6IGRpZmYuYzo0OTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgbW9kZSAnJXMnIGluIC0tY29sb3ItbW92ZWQtd3MiCittc2dzdHIgIm1vZGUgaW52YWxpZGUgJyVzJyBkYW5zIC0tY29sb3ItbW92ZWQtd3MiCisKKyM6IGRpZmYuYzo0OTg0Cittc2dpZCAiIgorIm9wdGlvbiBkaWZmLWFsZ29yaXRobSBhY2NlcHRzIFwibXllcnNcIiwgXCJtaW5pbWFsXCIsIFwicGF0aWVuY2VcIiBhbmQgIgorIlwiaGlzdG9ncmFtXCIiCittc2dzdHIgIiIKKyJsJ29wdGlvbiBkaWZmLWFsZ29yaXRobSBhY2NlcHQgXCJteWVyc1wiLCBcIm1pbmltYWxcIiwgXCJwYXRpZW5jZVwiIGV0ICIKKyJcImhpc3RvZ3JhbVwiIgorCisjOiBkaWZmLmM6NTAyMCBkaWZmLmM6NTA0MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGFyZ3VtZW50IHRvICVzIgorbXNnc3RyICJhcmd1bWVudCBpbnZhbGlkZSBwb3VyICVzIgorCisjOiBkaWZmLmM6NTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgLS1zdWJtb2R1bGUgb3B0aW9uIHBhcmFtZXRlcjogJyVzJyIKK21zZ3N0ciAiw6ljaGVjIGRlIGwnYW5hbHlzZSBkdSBwYXJhbcOodHJlIGRlIGwnb3B0aW9uIC0tc3VibW9kdWxlIDogJyVzJyIKKworIzogZGlmZi5jOjUyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIC0td29yZC1kaWZmIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAibWF1dmFpcyBhcmd1bWVudCBwb3VyIC0td29yZC1kaWZmwqA6ICVzIgorCisjOiBkaWZmLmM6NTI1NworbXNnaWQgIkRpZmYgb3V0cHV0IGZvcm1hdCBvcHRpb25zIgorbXNnc3RyICJPcHRpb25zIGRlIGZvcm1hdCBkZSBzb3J0aWUgZGUgZGlmZiIKKworIzogZGlmZi5jOjUyNTkgZGlmZi5jOjUyNjUKK21zZ2lkICJnZW5lcmF0ZSBwYXRjaCIKK21zZ3N0ciAiZ8OpbsOpcmVyIGxhIHJ1c3RpbmUiCisKKyM6IGRpZmYuYzo1MjYyIGJ1aWx0aW4vbG9nLmM6MTczCittc2dpZCAic3VwcHJlc3MgZGlmZiBvdXRwdXQiCittc2dzdHIgInN1cHByaW1lciBsYSBzb3J0aWUgZGVzIGRpZmbDqXJlbmNlcyIKKworIzogZGlmZi5jOjUyNjcgZGlmZi5jOjUzODEgZGlmZi5jOjUzODgKK21zZ2lkICI8bj4iCittc2dzdHIgIjxuPiIKKworIzogZGlmZi5jOjUyNjggZGlmZi5jOjUyNzEKK21zZ2lkICJnZW5lcmF0ZSBkaWZmcyB3aXRoIDxuPiBsaW5lcyBjb250ZXh0IgorbXNnc3RyICJnw6luw6lyZXIgbGVzIGRpZmZzIGF2ZWMgPG4+IGxpZ25lcyBkZSBjb250ZXh0ZSIKKworIzogZGlmZi5jOjUyNzMKK21zZ2lkICJnZW5lcmF0ZSB0aGUgZGlmZiBpbiByYXcgZm9ybWF0IgorbXNnc3RyICJnw6luw6lyZXIgbGUgZGlmZiBlbiBmb3JtYXQgYnJ1dCIKKworIzogZGlmZi5jOjUyNzYKK21zZ2lkICJzeW5vbnltIGZvciAnLXAgLS1yYXcnIgorbXNnc3RyICJzeW5vbnltZSBkZSAnLXAgLS1yYXcnIgorCisjOiBkaWZmLmM6NTI4MAorbXNnaWQgInN5bm9ueW0gZm9yICctcCAtLXN0YXQnIgorbXNnc3RyICJzeW5vbnltZSBkZSAnLXAgLS1zdGF0JyIKKworIzogZGlmZi5jOjUyODQKK21zZ2lkICJtYWNoaW5lIGZyaWVuZGx5IC0tc3RhdCIKK21zZ3N0ciAiLS1zdGF0IHBvdXIgdHJhaXRlbWVudCBhdXRvbWF0aXF1ZSIKKworIzogZGlmZi5jOjUyODcKK21zZ2lkICJvdXRwdXQgb25seSB0aGUgbGFzdCBsaW5lIG9mIC0tc3RhdCIKK21zZ3N0ciAiYWZmaWNoZXIgc2V1bGVtZW50IGxhIGRlcm5pw6hyZSBsaWduZSBkZSAtLXN0YXQiCisKKyM6IGRpZmYuYzo1Mjg5IGRpZmYuYzo1Mjk3Cittc2dpZCAiPHBhcmFtMSxwYXJhbTI+Li4uIgorbXNnc3RyICI8cGFyYW0xLHBhcmFtMj4uLi4iCisKKyM6IGRpZmYuYzo1MjkwCittc2dpZCAiIgorIm91dHB1dCB0aGUgZGlzdHJpYnV0aW9uIG9mIHJlbGF0aXZlIGFtb3VudCBvZiBjaGFuZ2VzIGZvciBlYWNoIHN1Yi1kaXJlY3RvcnkiCittc2dzdHIgIiIKKyJhZmZpY2hlciBsYSBkaXN0cmlidXRpb24gZGVzIHF1YW50aXTDqXMgZGUgbW9kaWZpY2F0aW9ucyByZWxhdGl2ZXMgcG91ciAiCisiY2hhcXVlIHNvdXMtcsOpcGVydG9pcmUiCisKKyM6IGRpZmYuYzo1Mjk0Cittc2dpZCAic3lub255bSBmb3IgLS1kaXJzdGF0PWN1bXVsYXRpdmUiCittc2dzdHIgInN5bm9ueW1lIHBvdXIgLS1kaXJzdGF0PWN1bXVsYXRpdmUiCisKKyM6IGRpZmYuYzo1Mjk4Cittc2dpZCAic3lub255bSBmb3IgLS1kaXJzdGF0PWZpbGVzLHBhcmFtMSxwYXJhbTIuLi4iCittc2dzdHIgInN5bm9ueW1lIHBvdXIgLS1kaXJzdGF0PWZpbGVzLHBhcmFtMSxwYXJhbTIuLi4iCisKKyM6IGRpZmYuYzo1MzAyCittc2dpZCAid2FybiBpZiBjaGFuZ2VzIGludHJvZHVjZSBjb25mbGljdCBtYXJrZXJzIG9yIHdoaXRlc3BhY2UgZXJyb3JzIgorbXNnc3RyICIiCisiYXZlcnRpciBzaSBsZXMgbW9kaWZpY2F0aW9ucyBpbnRyb2R1aXNlbnQgZGVzIG1hcnF1ZXVycyBkZSBjb25mbGl0IG91IGRlcyAiCisiZXJyZXVycyBkJ2VzcGFjZSIKKworIzogZGlmZi5jOjUzMDUKK21zZ2lkICJjb25kZW5zZWQgc3VtbWFyeSBzdWNoIGFzIGNyZWF0aW9ucywgcmVuYW1lcyBhbmQgbW9kZSBjaGFuZ2VzIgorbXNnc3RyICIiCisicsOpc3Vtw6kgc3VjY2luY3QgdGVsIHF1ZSBsZXMgY3LDqWF0aW9ucywgbGVzIHJlbm9tbWFnZXMgZXQgbGVzIG1vZGlmaWNhdGlvbnMgIgorImRlIG1vZGUiCisKKyM6IGRpZmYuYzo1MzA4Cittc2dpZCAic2hvdyBvbmx5IG5hbWVzIG9mIGNoYW5nZWQgZmlsZXMiCittc2dzdHIgIm4nYWZmaWNoZXIgcXVlIGxlcyBub21zIGRlIGZpY2hpZXJzIG1vZGlmacOpcyIKKworIzogZGlmZi5jOjUzMTEKK21zZ2lkICJzaG93IG9ubHkgbmFtZXMgYW5kIHN0YXR1cyBvZiBjaGFuZ2VkIGZpbGVzIgorbXNnc3RyICJuJ2FmZmljaGVyIHF1ZSBsZXMgbm9tcyBldCBsZXMgc3RhdHVzIGRlcyBmaWNoaWVycyBtb2RpZmnDqXMiCisKKyM6IGRpZmYuYzo1MzEzCittc2dpZCAiPHdpZHRoPlssPG5hbWUtd2lkdGg+Wyw8Y291bnQ+XV0iCittc2dzdHIgIjxsYXJnZXVyPlssPGxhcmdldXItZGUtbm9tPlssPGNvbXB0ZT5dXSIKKworIzogZGlmZi5jOjUzMTQKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCIKK21zZ3N0ciAiZ8OpbsOpcmVyIHVuIGRpZmZzdGF0IgorCisjOiBkaWZmLmM6NTMxNiBkaWZmLmM6NTMxOSBkaWZmLmM6NTMyMgorbXNnaWQgIjx3aWR0aD4iCittc2dzdHIgIjxsYXJnZXVyPiIKKworIzogZGlmZi5jOjUzMTcKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGEgZ2l2ZW4gd2lkdGgiCittc2dzdHIgImfDqW7DqXJlciB1biBkaWZmc3RhdCBhdmVjIGxhIGxhcmdldXIgaW5kaXF1w6llIgorCisjOiBkaWZmLmM6NTMyMAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBuYW1lIHdpZHRoIgorbXNnc3RyICJnw6luZXJlciB1biBkaWZmc3RhdCBhdmVjIGxhIGxhcmdldXIgZGUgbm9tIGluZGlxdcOpZSIKKworIzogZGlmZi5jOjUzMjMKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGEgZ2l2ZW4gZ3JhcGggd2lkdGgiCittc2dzdHIgImfDqW5lcmVyIHVuIGRpZmZzdGF0IGF2ZWMgbGEgbGFyZ2V1ciBkZSBncmFwaGUgaW5kaXF1w6llIgorCisjOiBkaWZmLmM6NTMyNQorbXNnaWQgIjxjb3VudD4iCittc2dzdHIgIjxjb21wdGU+IgorCisjOiBkaWZmLmM6NTMyNgorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggbGltaXRlZCBsaW5lcyIKK21zZ3N0ciAiZ8OpbsOpcmVyIHVuIGRpZmZzdGF0IGF2ZWMgZGVzIGxpZ25lcyBsaW1pdMOpZXMiCisKKyM6IGRpZmYuYzo1MzI5Cittc2dpZCAiZ2VuZXJhdGUgY29tcGFjdCBzdW1tYXJ5IGluIGRpZmZzdGF0IgorbXNnc3RyICJnw6luw6lyZXIgdW5lIHLDqXN1bcOpIGNvbXBhY3QgZGFucyBsZSBkaWZmc3RhdCIKKworIzogZGlmZi5jOjUzMzIKK21zZ2lkICJvdXRwdXQgYSBiaW5hcnkgZGlmZiB0aGF0IGNhbiBiZSBhcHBsaWVkIgorbXNnc3RyICJwcm9kdWlyZSB1biBkaWZmIGJpbmFpcmUgcXVpIHBldXQgw6p0cmUgYXBwbGlxdcOpIgorCisjOiBkaWZmLmM6NTMzNQorbXNnaWQgInNob3cgZnVsbCBwcmUtIGFuZCBwb3N0LWltYWdlIG9iamVjdCBuYW1lcyBvbiB0aGUgXCJpbmRleFwiIGxpbmVzIgorbXNnc3RyICIiCisiYWZmaWNoZXIgbGVzIG5vbXMgY29tcGxldHMgZGVzIG9iamV0cyBwcmUtIGV0IHBvc3QtaW1hZ2Ugc3VyIGxlcyBsaWduZXMgIgorIlwiaW5kZXhcIiIKKworIzogZGlmZi5jOjUzMzcKK21zZ2lkICJzaG93IGNvbG9yZWQgZGlmZiIKK21zZ3N0ciAiYWZmaWNoZXIgdW4gZGlmZiBjb2xvcsOpIgorCisjOiBkaWZmLmM6NTMzOAorbXNnaWQgIjxraW5kPiIKK21zZ3N0ciAiPHNvcnRlPiIKKworIzogZGlmZi5jOjUzMzkKK21zZ2lkICIiCisiaGlnaGxpZ2h0IHdoaXRlc3BhY2UgZXJyb3JzIGluIHRoZSAnY29udGV4dCcsICdvbGQnIG9yICduZXcnIGxpbmVzIGluIHRoZSAiCisiZGlmZiIKK21zZ3N0ciAiIgorInN1cmxpZ25lciBsZXMgZXJyZXVycyBkJ2VzcGFjZSBkYW5zIGxlcyBsaWduZXMgJ2NvbnRleHRlJywgJ2FuY2llbicsICIKKyInbm91dmVhdScgZGFucyBsZSBkaWZmIgorCisjOiBkaWZmLmM6NTM0MgorbXNnaWQgIiIKKyJkbyBub3QgbXVuZ2UgcGF0aG5hbWVzIGFuZCB1c2UgTlVMcyBhcyBvdXRwdXQgZmllbGQgdGVybWluYXRvcnMgaW4gLS1yYXcgb3IgIgorIi0tbnVtc3RhdCIKK21zZ3N0ciAiIgorIm5lIHBhcyBjb21wcmVzc2VyIGxlcyBjaGVtaW5zIGV0IHV0aWxpc2VyIGRlcyBOVUxzIGNvbW1lIHRlcm1pbmF0ZXVycyBkZSAiCisiY2hhbXBzIGRhbnMgLS1yYXcgb3UgLS1udW1zdGF0IgorCisjOiBkaWZmLmM6NTM0NSBkaWZmLmM6NTM0OCBkaWZmLmM6NTM1MSBkaWZmLmM6NTQ1NworbXNnaWQgIjxwcmVmaXg+IgorbXNnc3RyICI8cHLDqWZpeGU+IgorCisjOiBkaWZmLmM6NTM0NgorbXNnaWQgInNob3cgdGhlIGdpdmVuIHNvdXJjZSBwcmVmaXggaW5zdGVhZCBvZiBcImEvXCIiCittc2dzdHIgImFmZmljaGVyIGxlIHByw6lmaXhlIGRlIHNvdXJjZSBpbmRpcXXDqSBhdSBsaWV1IGRlIFwiYS9cIiIKKworIzogZGlmZi5jOjUzNDkKK21zZ2lkICJzaG93IHRoZSBnaXZlbiBkZXN0aW5hdGlvbiBwcmVmaXggaW5zdGVhZCBvZiBcImIvXCIiCittc2dzdHIgImFmZmljaGVyIGxlIHByw6lmaXhlIGRlIGRlc3RpbmF0aW9uIGluZGlxdcOpIGF1IGxpZXUgZGUgXCJiL1wiIgorCisjOiBkaWZmLmM6NTM1MgorbXNnaWQgInByZXBlbmQgYW4gYWRkaXRpb25hbCBwcmVmaXggdG8gZXZlcnkgbGluZSBvZiBvdXRwdXQiCittc2dzdHIgInByw6lmaXhlciB0b3V0ZXMgbGVzIGxpZ25lcyBlbiBzb3J0aWUgYXZlYyBsYSBjaGHDrm5lIGluZGlxdcOpZSIKKworIzogZGlmZi5jOjUzNTUKK21zZ2lkICJkbyBub3Qgc2hvdyBhbnkgc291cmNlIG9yIGRlc3RpbmF0aW9uIHByZWZpeCIKK21zZ3N0ciAibidhZmZpY2hlciBhdWN1biBwcsOpZml4ZSwgbmkgZGUgc291cmNlLCBuaSBkZSBkZXN0aW5hdGlvbiIKKworIzogZGlmZi5jOjUzNTgKK21zZ2lkICJzaG93IGNvbnRleHQgYmV0d2VlbiBkaWZmIGh1bmtzIHVwIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGxpbmVzIgorbXNnc3RyICIiCisiYWZmaWNoZXIgbGUgY29udGV4dGUgZW50cmUgbGVzIHNlY3Rpb25zIMOgIGNvbmN1cnJlbmNlIGR1IG5vbWJyZSBkZSBsaWduZSAiCisiaW5kaXF1w6kiCisKKyM6IGRpZmYuYzo1MzYyIGRpZmYuYzo1MzY3IGRpZmYuYzo1MzcyCittc2dpZCAiPGNoYXI+IgorbXNnc3RyICI8Y2FyYWN0w6hyZT4iCisKKyM6IGRpZmYuYzo1MzYzCittc2dpZCAic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGEgbmV3IGxpbmUgaW5zdGVhZCBvZiAnKyciCittc2dzdHIgInNww6ljaWZpZXIgbGUgY2FyYWN0w6hyZSBwb3VyIGluZGlxdWVyIHVuZSBub3V2ZWxsZSBsaWduZSBhdSBsaWV1IGRlICcrJyIKKworIzogZGlmZi5jOjUzNjgKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYW4gb2xkIGxpbmUgaW5zdGVhZCBvZiAnLSciCittc2dzdHIgInNww6ljaWZpZXIgbGUgY2FyYWN0w6hyZSBwb3VyIGluZGlxdWVyIHVuZSBhbmNpZW5uZSBsaWduZSBhdSBsaWV1IGRlICctJyIKKworIzogZGlmZi5jOjUzNzMKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBjb250ZXh0IGluc3RlYWQgb2YgJyAnIgorbXNnc3RyICIiCisic3DDqWNpZmllciBsZSBjYXJhY3TDqHJlIHBvdXIgaW5kaXF1ZXIgdW5lIGxpZ25lIGRlIGNvbnRleHRlIGF1IGxpZXUgZGUgJyAnIgorCisjOiBkaWZmLmM6NTM3NgorbXNnaWQgIkRpZmYgcmVuYW1lIG9wdGlvbnMiCittc2dzdHIgIk9wdGlvbnMgZGUgcmVub21tYWdlIGRlIGRpZmYiCisKKyM6IGRpZmYuYzo1Mzc3Cittc2dpZCAiPG4+Wy88bT5dIgorbXNnc3RyICI8bj5bLzxtPl0iCisKKyM6IGRpZmYuYzo1Mzc4Cittc2dpZCAiYnJlYWsgY29tcGxldGUgcmV3cml0ZSBjaGFuZ2VzIGludG8gcGFpcnMgb2YgZGVsZXRlIGFuZCBjcmVhdGUiCittc2dzdHIgIiIKKyJjYXNzZXIgbGVzIG1vZGlmaWNhdGlvbnMgZCd1bmUgcsOpw6ljcmlyZSBjb21wbMOodGUgZW4gcGFpcmVzIGRlIHN1cHByZXNzaW9uIGV0ICIKKyJjcsOpYXRpb24iCisKKyM6IGRpZmYuYzo1MzgyCittc2dpZCAiZGV0ZWN0IHJlbmFtZXMiCittc2dzdHIgImTDqXRlY3RlciBsZXMgcmVub21tYWdlcyIKKworIzogZGlmZi5jOjUzODYKK21zZ2lkICJvbWl0IHRoZSBwcmVpbWFnZSBmb3IgZGVsZXRlcyIKK21zZ3N0ciAic3VwcHJpbWVyIGxhIHByw6ktaW1hZ2UgcG91ciBsZXMgc3VwcHJlc3Npb25zIgorCisjOiBkaWZmLmM6NTM4OQorbXNnaWQgImRldGVjdCBjb3BpZXMiCittc2dzdHIgImTDqXRlY3RlciBsZXMgY29waWVzIgorCisjOiBkaWZmLmM6NTM5MworbXNnaWQgInVzZSB1bm1vZGlmaWVkIGZpbGVzIGFzIHNvdXJjZSB0byBmaW5kIGNvcGllcyIKK21zZ3N0ciAiIgorInV0aWxpc2VyIGxlcyBmaWNoaWVycyBub24tbW9kaWZpw6lzIGNvbW1lIHNvdXJjZXMgcG91ciB0cm91dmVyIGRlcyBjb3BpZXMiCisKKyM6IGRpZmYuYzo1Mzk1Cittc2dpZCAiZGlzYWJsZSByZW5hbWUgZGV0ZWN0aW9uIgorbXNnc3RyICJkw6lzYWN0aXZlciBsYSBkw6l0ZWN0aW9uIGRlIHJlbm9tbWFnZSIKKworIzogZGlmZi5jOjUzOTgKK21zZ2lkICJ1c2UgZW1wdHkgYmxvYnMgYXMgcmVuYW1lIHNvdXJjZSIKK21zZ3N0ciAidXRpbGlzZXIgZGVzIGJsb2JzIHZpZGVzIGNvbW1lIHNvdXJjZSBkZSByZW5vbW1hZ2UiCisKKyM6IGRpZmYuYzo1NDAwCittc2dpZCAiY29udGludWUgbGlzdGluZyB0aGUgaGlzdG9yeSBvZiBhIGZpbGUgYmV5b25kIHJlbmFtZXMiCittc2dzdHIgImNvbnRpbnVlciDDoCBhZmZpY2hlciBsJ2hpc3RvcmlxdWUgZCd1biBmaWNoaWVyIGF1IGRlbMOgIGRlcyByZW5vbW1hZ2VzIgorCisjOiBkaWZmLmM6NTQwMworbXNnaWQgIiIKKyJwcmV2ZW50IHJlbmFtZS9jb3B5IGRldGVjdGlvbiBpZiB0aGUgbnVtYmVyIG9mIHJlbmFtZS9jb3B5IHRhcmdldHMgZXhjZWVkcyAiCisiZ2l2ZW4gbGltaXQiCittc2dzdHIgIiIKKyJlbXDDqmNoZXIgbGEgZMOpdGVjdGlvbiBkZSByZW5vbW1hZ2UvY29waWUgc2kgbGUgbm9tYnJlIGRlIGNpYmxlcyBkZSByZW5vbW1hZ2UvIgorImNvcGllIGV4Y8OoZGUgbGEgbGltaXRlIGluZGlxdcOpZSIKKworIzogZGlmZi5jOjU0MDUKK21zZ2lkICJEaWZmIGFsZ29yaXRobSBvcHRpb25zIgorbXNnc3RyICJPcHRpb25zIGRlIGwnYWxnb3JpdGhtZSBkZSBkaWZmIgorCisjOiBkaWZmLmM6NTQwNworbXNnaWQgInByb2R1Y2UgdGhlIHNtYWxsZXN0IHBvc3NpYmxlIGRpZmYiCittc2dzdHIgInByb2R1aXJlIGxlIGRpZmYgbGUgcGx1cyBwZXRpdCBwb3NzaWJsZSIKKworIzogZGlmZi5jOjU0MTAKK21zZ2lkICJpZ25vcmUgd2hpdGVzcGFjZSB3aGVuIGNvbXBhcmluZyBsaW5lcyIKK21zZ3N0ciAiaWdub3JlciBsZXMgZXNwYWNlcyBsb3JzIGRlIGxhIGNvbXBhcmFpc29uIGRlIGxpZ25lIgorCisjOiBkaWZmLmM6NTQxMworbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIGFtb3VudCBvZiB3aGl0ZXNwYWNlIgorbXNnc3RyICJpZ25vcmVyIGRlcyBtb2RpZmljYXRpb25zIGR1IG5vbWJyZSBkJ2VzcGFjZXMiCisKKyM6IGRpZmYuYzo1NDE2Cittc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSBhdCBFT0wiCittc2dzdHIgImlnbm9yZXIgZGVzIG1vZGlmaWNhdGlvbnMgZCdlc3BhY2UgZW4gZmluIGRlIGxpZ25lIgorCisjOiBkaWZmLmM6NTQxOQorbXNnaWQgImlnbm9yZSBjYXJyaWVyLXJldHVybiBhdCB0aGUgZW5kIG9mIGxpbmUiCittc2dzdHIgImlnbm9yZSBsZSByZXRvdXIgY2hhcmlvdCBlbiBmaW4gZGUgbGlnbmUiCisKKyM6IGRpZmYuYzo1NDIyCittc2dpZCAiaWdub3JlIGNoYW5nZXMgd2hvc2UgbGluZXMgYXJlIGFsbCBibGFuayIKK21zZ3N0ciAiaWdub3JlciBsZXMgbW9kaWZpY2F0aW9ucyBkb250IGxlcyBsaWduZXMgc29udCB2aWRlcyIKKworIzogZGlmZi5jOjU0MjUKK21zZ2lkICJoZXVyaXN0aWMgdG8gc2hpZnQgZGlmZiBodW5rIGJvdW5kYXJpZXMgZm9yIGVhc3kgcmVhZGluZyIKK21zZ3N0ciAiIgorImhldXJpc3RpcXVlIHF1aSBkw6lwbGFjZSBsZXMgbGltaXRlcyBkZSBzZWN0aW9ucyBkZSBkaWZmIHBvdXIgZmFjaWxpdGVyIGxhICIKKyJsZWN0dXJlIgorCisjOiBkaWZmLmM6NTQyOAorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwicGF0aWVuY2UgZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAiZ8OpbsOpcmVyIHVuIGRpZmYgZW4gdXRpbGlzYW50IGwnYWxnb3JpdGhtZSBkZSBkaWZmw6lyZW5jZSBcInBhdGllbmNlXCIiCisKKyM6IGRpZmYuYzo1NDMyCittc2dpZCAiZ2VuZXJhdGUgZGlmZiB1c2luZyB0aGUgXCJoaXN0b2dyYW0gZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAiIgorImfDqW7DqXJlciB1biBkaWZmIGVuIHV0aWxpc2FudCBsJ2FsZ29yaXRobWUgZGUgZGlmZsOpcmVuY2UgXCJoaXN0b2dyYW1tZVwiIgorCisjOiBkaWZmLmM6NTQzNAorbXNnaWQgIjxhbGdvcml0aG0+IgorbXNnc3RyICI8YWxnb3JpdGhtZT4iCisKKyM6IGRpZmYuYzo1NDM1Cittc2dpZCAiY2hvb3NlIGEgZGlmZiBhbGdvcml0aG0iCittc2dzdHIgImNob2lzaXIgdW4gYWxnb3JpdGhtZSBkZSBkaWZmw6lyZW5jZSIKKworIzogZGlmZi5jOjU0MzcKK21zZ2lkICI8dGV4dD4iCittc2dzdHIgIjx0ZXh0ZT4iCisKKyM6IGRpZmYuYzo1NDM4Cittc2dpZCAiZ2VuZXJhdGUgZGlmZiB1c2luZyB0aGUgXCJhbmNob3JlZCBkaWZmXCIgYWxnb3JpdGhtIgorbXNnc3RyICJnw6luw6lyZXIgdW4gZGlmZiBlbiB1dGlsaXNhbnQgbCdhbGdvcml0aG1lIGRlIGRpZmbDqXJlbmNlIFwiYW5jcsOpXCIiCisKKyM6IGRpZmYuYzo1NDQwIGRpZmYuYzo1NDQ5IGRpZmYuYzo1NDUyCittc2dpZCAiPG1vZGU+IgorbXNnc3RyICI8bW9kZT4iCisKKyM6IGRpZmYuYzo1NDQxCittc2dpZCAic2hvdyB3b3JkIGRpZmYsIHVzaW5nIDxtb2RlPiB0byBkZWxpbWl0IGNoYW5nZWQgd29yZHMiCittc2dzdHIgIiIKKyJhZmZpY2hlciBkZXMgZGlmZsOpcmVuY2VzIHBhciBtb3QsIGVuIHV0aWxpc2FudCA8bW9kZT4gcG91ciBkw6lsaW1pdGVyIGxlcyAiCisibW90cyBtb2RpZmnDqXMiCisKKyM6IGRpZmYuYzo1NDQzIGRpZmYuYzo1NDQ2IGRpZmYuYzo1NDkxCittc2dpZCAiPHJlZ2V4PiIKK21zZ3N0ciAiPHJlZ2V4PiIKKworIzogZGlmZi5jOjU0NDQKK21zZ2lkICJ1c2UgPHJlZ2V4PiB0byBkZWNpZGUgd2hhdCBhIHdvcmQgaXMiCittc2dzdHIgInV0aWxpc2VyIDxyZWdleD4gcG91ciBkw6ljaWRlciBjZSBxdSdlc3QgdW4gbW90IgorCisjOiBkaWZmLmM6NTQ0NworbXNnaWQgImVxdWl2YWxlbnQgdG8gLS13b3JkLWRpZmY9Y29sb3IgLS13b3JkLWRpZmYtcmVnZXg9PHJlZ2V4PiIKK21zZ3N0ciAiw6lxdWl2YWxlbnQgw6AgLS13b3JkLWRpZmY9Y29sb3IgLS13b3JkLWRpZmYtcmVnZXg9PHJlZ2V4PiIKKworIzogZGlmZi5jOjU0NTAKK21zZ2lkICJtb3ZlZCBsaW5lcyBvZiBjb2RlIGFyZSBjb2xvcmVkIGRpZmZlcmVudGx5IgorbXNnc3RyICJsZXMgbGlnbmVzIGTDqXBsYWPDqWVzIHNvbnQgY29sb3LDqWVzIGRpZmbDqXJlbW1lbnQiCisKKyM6IGRpZmYuYzo1NDUzCittc2dpZCAiaG93IHdoaXRlIHNwYWNlcyBhcmUgaWdub3JlZCBpbiAtLWNvbG9yLW1vdmVkIgorbXNnc3RyICJjb21tZW50IGxlcyBlc3BhY2VzIHNvbnQgaWdub3LDqXMgZGFucyAtLWNvbG9yLW1vdmVkIgorCisjOiBkaWZmLmM6NTQ1NgorbXNnaWQgIk90aGVyIGRpZmYgb3B0aW9ucyIKK21zZ3N0ciAiQXV0cmVzIG9wdGlvbnMgZGlmZiIKKworIzogZGlmZi5jOjU0NTgKK21zZ2lkICJ3aGVuIHJ1biBmcm9tIHN1YmRpciwgZXhjbHVkZSBjaGFuZ2VzIG91dHNpZGUgYW5kIHNob3cgcmVsYXRpdmUgcGF0aHMiCittc2dzdHIgIiIKKyJsYW5jw6kgZGVwdWlzIHVuIHNvdXMtcsOpcGVydG9pcmUsIGV4Y2x1cmUgbGVzIG1vZGlmaWNhdGlvbnMgZW4gZGVob3JzIGV0ICIKKyJhZmZpY2hlciBsZXMgY2hlbWlucyByZWxhdGlmcyIKKworIzogZGlmZi5jOjU0NjIKK21zZ2lkICJ0cmVhdCBhbGwgZmlsZXMgYXMgdGV4dCIKK21zZ3N0ciAidHJhaXRlciBsZXMgZmljaGllcnMgY29tbWUgdGV4dGUiCisKKyM6IGRpZmYuYzo1NDY0Cittc2dpZCAic3dhcCB0d28gaW5wdXRzLCByZXZlcnNlIHRoZSBkaWZmIgorbXNnc3RyICLDqWNoYW5nZXIgbGVzIGVudHLDqWVzLCBpbnZlcnNlciBsZSBkaWZmIgorCisjOiBkaWZmLmM6NTQ2NgorbXNnaWQgImV4aXQgd2l0aCAxIGlmIHRoZXJlIHdlcmUgZGlmZmVyZW5jZXMsIDAgb3RoZXJ3aXNlIgorbXNnc3RyICJzb3J0aXIgdW4gY29kZSBkJ2VycmV1ciAxIHMnaWwgeSBhdmFpdCBkZSBkaWZmw6lyZW5jZXMsIDAgc2lub24iCisKKyM6IGRpZmYuYzo1NDY4Cittc2dpZCAiZGlzYWJsZSBhbGwgb3V0cHV0IG9mIHRoZSBwcm9ncmFtIgorbXNnc3RyICJkw6lzYWN0aXZlciB0b3VzIGxlcyBhZmZpY2hhZ2VzIGR1IHByb2dyYW1tZSIKKworIzogZGlmZi5jOjU0NzAKK21zZ2lkICJhbGxvdyBhbiBleHRlcm5hbCBkaWZmIGhlbHBlciB0byBiZSBleGVjdXRlZCIKK21zZ3N0ciAiYXV0b3Jpc2VyIGwnZXjDqWN1dGlvbiBkJ3VuIGFzc2lzdGFudCBleHRlcm5lIGRlIGRpZmYiCisKKyM6IGRpZmYuYzo1NDcyCittc2dpZCAicnVuIGV4dGVybmFsIHRleHQgY29udmVyc2lvbiBmaWx0ZXJzIHdoZW4gY29tcGFyaW5nIGJpbmFyeSBmaWxlcyIKK21zZ3N0ciAiIgorImxhbmNlciBsZXMgZmlsdHJlcyBleHRlcm5lcyBkZSBjb252ZXJzaW9uIGVuIHRleHRlIGxvcnMgZGUgbGEgY29tcGFyYWlzb24gZGUgIgorImZpY2hpZXJzIGJpbmFpcmVzIgorCisjOiBkaWZmLmM6NTQ3NAorbXNnaWQgIjx3aGVuPiIKK21zZ3N0ciAiPHF1YW5kPiIKKworIzogZGlmZi5jOjU0NzUKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyB0byBzdWJtb2R1bGVzIGluIHRoZSBkaWZmIGdlbmVyYXRpb24iCittc2dzdHIgIiIKKyJpZ25vcmVyIGxlcyBtb2RpZmljYXRpb25zIGRhbnMgbGVzIHNvdXMtbW9kdWxlcyBsb3JzIGRlIGxhIGfDqW7DqXJhdGlvbiBkZSBkaWZmIgorCisjOiBkaWZmLmM6NTQ3OAorbXNnaWQgIjxmb3JtYXQ+IgorbXNnc3RyICI8Zm9ybWF0PiIKKworIzogZGlmZi5jOjU0NzkKK21zZ2lkICJzcGVjaWZ5IGhvdyBkaWZmZXJlbmNlcyBpbiBzdWJtb2R1bGVzIGFyZSBzaG93biIKK21zZ3N0ciAic3DDqWNpZmllciBjb21tZW50IGxlcyBkaWZmw6lyZW5jZXMgZGFucyBsZXMgc291cy1tb2R1bGVzIHNvbnQgYWZmaWNow6llcyIKKworIzogZGlmZi5jOjU0ODMKK21zZ2lkICJoaWRlICdnaXQgYWRkIC1OJyBlbnRyaWVzIGZyb20gdGhlIGluZGV4IgorbXNnc3RyICJtYXNxdWVyIGxlcyBlbnRyw6llcyAnZ2l0IGFkZCAtTicgZGUgbCdpbmRleCIKKworIzogZGlmZi5jOjU0ODYKK21zZ2lkICJ0cmVhdCAnZ2l0IGFkZCAtTicgZW50cmllcyBhcyByZWFsIGluIHRoZSBpbmRleCIKK21zZ3N0ciAidHJhaXRlciBsZXMgZW50csOpZXMgJ2dpdCBhZGQgLU4nIGNvbW1lIHLDqWVsbGVzIGRhbnMgbCdpbmRleCIKKworIzogZGlmZi5jOjU0ODgKK21zZ2lkICI8c3RyaW5nPiIKK21zZ3N0ciAiPGNoYcOubmU+IgorCisjOiBkaWZmLmM6NTQ4OQorbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorInN0cmluZyIKK21zZ3N0ciAiIgorInJlY2hlcmNoZXIgbGVzIGRpZmbDqXJlbmNlcyBxdWkgbW9kaWZpZW50IGxlIG5vbWJyZSBkJ29jY3VycmVuY2VzIGRlIGxhICIKKyJjaGHDrm5lIHNww6ljaWZpw6llIgorCisjOiBkaWZmLmM6NTQ5MgorbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorInJlZ2V4IgorbXNnc3RyICIiCisicmVjaGVyY2hlciBsZXMgZGlmZsOpcmVuY2VzIHF1aSBtb2RpZmllbnQgbGUgbm9tYnJlIGQnb2NjdXJyZW5jZXMgZGUgbGEgcmVnZXggIgorInNww6ljaWZpw6llIgorCisjOiBkaWZmLmM6NTQ5NQorbXNnaWQgInNob3cgYWxsIGNoYW5nZXMgaW4gdGhlIGNoYW5nZXNldCB3aXRoIC1TIG9yIC1HIgorbXNnc3RyICIiCisiYWZmaWNoZXIgdG91dGVzIGxlcyBtb2RpZmljYXRpb25zIGRhbnMgbCdlbnNlbWJsZSBkZSBtb2RpZmljYXRpb25zIGF2ZWMgLVMgIgorIm91IC1HIgorCisjOiBkaWZmLmM6NTQ5OAorbXNnaWQgInRyZWF0IDxzdHJpbmc+IGluIC1TIGFzIGV4dGVuZGVkIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiIgorInRyYWl0ZXIgPGNoYcOubmU+IGRhbnMgLVMgY29tbWUgdW5lIGV4cHJlc3Npb24gcmF0aW9ubmVsbGUgUE9TSVggw6l0ZW5kdWUiCisKKyM6IGRpZmYuYzo1NTAxCittc2dpZCAiY29udHJvbCB0aGUgb3JkZXIgaW4gd2hpY2ggZmlsZXMgYXBwZWFyIGluIHRoZSBvdXRwdXQiCittc2dzdHIgImNvbnRyw7RsZXIgbCdvcmRyZSBkYW5zIGxlcXVlbCBsZXMgZmljaGllcnMgYXBwYXJhaXNzZW50IGRhbnMgbGEgc29ydGllIgorCisjOiBkaWZmLmM6NTUwMgorbXNnaWQgIjxvYmplY3QtaWQ+IgorbXNnc3RyICI8aWQtb2JqZXQ+IgorCisjOiBkaWZmLmM6NTUwMworbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorIm9iamVjdCIKK21zZ3N0ciAiIgorInJlY2hlcmNoZXIgbGVzIGRpZmbDqXJlbmNlcyBxdWkgbW9kaWZpZW50IGxlIG5vbWJyZSBkJ29jY3VycmVuY2VzIGRlIGwnb2JqZXQgIgorImluZGlxdcOpIgorCisjOiBkaWZmLmM6NTUwNQorbXNnaWQgIlsoQXxDfER8TXxSfFR8VXxYfEIpLi4uWypdXSIKK21zZ3N0ciAiWyhBfEN8RHxNfFJ8VHxVfFh8QikuLi5bKl1dIgorCisjOiBkaWZmLmM6NTUwNgorbXNnaWQgInNlbGVjdCBmaWxlcyBieSBkaWZmIHR5cGUiCittc2dzdHIgInPDqWxlY3Rpb25uZXIgbGVzIGZpY2hpZXJzIHBhciB0eXBlcyBkZSBkaWZmIgorCisjOiBkaWZmLmM6NTUwOAorbXNnaWQgIjxmaWxlPiIKK21zZ3N0ciAiPGZpY2hpZXI+IgorCisjOiBkaWZmLmM6NTUwOQorbXNnaWQgIk91dHB1dCB0byBhIHNwZWNpZmljIGZpbGUiCittc2dzdHIgIlNvcnRpZSB2ZXJzIHVuIGZpY2hpZXIgc3DDqWNpZmnDqSIKKworIzogZGlmZi5jOjYxNjQKIG1zZ2lkICJpbmV4YWN0IHJlbmFtZSBkZXRlY3Rpb24gd2FzIHNraXBwZWQgZHVlIHRvIHRvbyBtYW55IGZpbGVzLiIKIG1zZ3N0ciAiIgogImTDqXRlY3Rpb24gZGUgcmVub21tYWdlIGluZXhhY3QgYW5udWzDqWUgw6AgY2F1c2UgZCd1biB0cm9wIGdyYW5kIG5vbWJyZSBkZSAiCiAiZmljaGllcnMuIgogCi0jOiBkaWZmLmM6NTgyNgorIzogZGlmZi5jOjYxNjcKIG1zZ2lkICJvbmx5IGZvdW5kIGNvcGllcyBmcm9tIG1vZGlmaWVkIHBhdGhzIGR1ZSB0byB0b28gbWFueSBmaWxlcy4iCiBtc2dzdHIgIiIKICJyZWNoZXJjaGUgdW5pcXVlbWVudCBkZXMgY29waWVzIHBhciBtb2RpZmljYXRpb24gZGUgY2hlbWluIMOgIGNhdXNlIGQndW4gdHJvcCAiCiAiZ3JhbmQgbm9tYnJlIGRlIGZpY2hpZXJzLiIKIAotIzogZGlmZi5jOjU4MjkKKyM6IGRpZmYuYzo2MTcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ5b3UgbWF5IHdhbnQgdG8gc2V0IHlvdXIgJXMgdmFyaWFibGUgdG8gYXQgbGVhc3QgJWQgYW5kIHJldHJ5IHRoZSBjb21tYW5kLiIKQEAgLTIzODcsNDEgKzM4MjcsNjIgQEAKICJ2b3VzIHNvdWhhaXRleiBwZXV0LcOqdHJlIHLDqWdsZXIgbGEgdmFyaWFibGUgJXMgw6AgYXUgbW9pbnMgJWQgZXQgcsOpZXNzYXllciBsZSAiCiAiY29tbWFuZGUuIgogCi0jOiBkaXIuYzo1NzYKKyM6IGRpci5jOjU1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGRpZCBub3QgbWF0Y2ggYW55IGZpbGUocykga25vd24gdG8gZ2l0IgogbXNnc3RyICIiCiAibGUgc3DDqWNpZmljYXRldXIgZGUgY2hlbWluICclcycgbmUgY29ycmVzcG9uZCDDoCBhdWN1biBmaWNoaWVyIGNvbm51IGRlIGdpdCIKIAotIzogZGlyLmM6OTY1CisjOiBkaXIuYzo2OTUgZGlyLmM6NzI0IGRpci5jOjczNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgcGF0dGVybjogJyVzJyIKK21zZ3N0ciAibW90aWYgbm9uIHJlY29ubnXCoDogJyVzJyIKKworIzogZGlyLmM6NzU0IGRpci5jOjc2OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgbmVnYXRpdmUgcGF0dGVybjogJyVzJyIKK21zZ3N0ciAibW90aWYgbsOpZ2F0aWYgbm9uIHJlY29ubnXCoDogJyVzJyIKKworIzogZGlyLmM6Nzg2CisjLCBjLWZvcm1hdAorbXNnaWQgInlvdXIgc3BhcnNlLWNoZWNrb3V0IGZpbGUgbWF5IGhhdmUgaXNzdWVzOiBwYXR0ZXJuICclcycgaXMgcmVwZWF0ZWQiCittc2dzdHIgIiIKKyJ2b3RyZSBmaWNoaWVyIGQnZXh0cmFjdGlvbiBwYXJ0aWVsbGUgcG91cnJhaXQgcHLDqXNlbnRlciBkZXMgcHJvYmzDqG1lc8KgOiBsZSAiCisibW90aWYgJyVzJyBlc3QgcsOpcMOpdMOpIgorCisjOiBkaXIuYzo3OTYKK21zZ2lkICJkaXNhYmxpbmcgY29uZSBwYXR0ZXJuIG1hdGNoaW5nIgorbXNnc3RyICJkw6lzYWN0aXZhdGlvbiBkZSBsYSBjb3JyZXNwb25kYW5jZSBkZSBtb3RpZiBkZSBjb25lIgorCisjOiBkaXIuYzoxMTczCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCB1c2UgJXMgYXMgYW4gZXhjbHVkZSBmaWxlIgogbXNnc3RyICJpbXBvc3NpYmxlIGQndXRpbGlzZXIgJXMgY29tbWUgZmljaGllciBkJ2V4Y2x1c2lvbiIKIAotIzogZGlyLmM6MTg4MAorIzogZGlyLmM6MjE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSByw6lwZXJ0b2lyZSAnJXMnIgogCi0jOiBkaXIuYzoyMTIyCisjOiBkaXIuYzoyNDc5CiBtc2dpZCAiZmFpbGVkIHRvIGdldCBrZXJuZWwgbmFtZSBhbmQgaW5mb3JtYXRpb24iCiBtc2dzdHIgImVjaGVjIGRlIGwnb2J0ZW50aW9uIGQnaW5mb3JtYXRpb24gZGUga2VybmVsIgogCi0jOiBkaXIuYzoyMjQ2CisjOiBkaXIuYzoyNjAzCiBtc2dpZCAidW50cmFja2VkIGNhY2hlIGlzIGRpc2FibGVkIG9uIHRoaXMgc3lzdGVtIG9yIGxvY2F0aW9uIgogbXNnc3RyICJMZSBjYWNoZSBub24gc3VpdmkgZXN0IGTDqXNhY3RpdsOpIHN1ciBjZSBzeXN0w6htZSBvdSBzdXIgY2V0IGVuZHJvaXQiCiAKLSM6IGRpci5jOjMwNDcKKyM6IGRpci5jOjM0MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IGluIHJlcG8gJXMiCiBtc2dzdHIgImZpY2hpZXIgZCdpbmRleCBjb3Jyb21wdSBkYW5zIGxlIGTDqXDDtHQgJXMiCiAKLSM6IGRpci5jOjMwOTIgZGlyLmM6MzA5NworIzogZGlyLmM6MzQ1MiBkaXIuYzozNDU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3JpZXMgZm9yICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciBsZXMgcsOpcGVydG9pcmVzIHBvdXIgJXMiCiAKLSM6IGRpci5jOjMxMjYKKyM6IGRpci5jOjM0ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG1pZ3JhdGUgZ2l0IGRpcmVjdG9yeSBmcm9tICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBtaWdyZXIgbGUgcsOpcGVydG9pcmUgZ2l0IGRlICclcycgdmVycyAnJXMnIgpAQCAtMjQzNywyOTcgKzM4OTgsMjkwIEBACiBtc2dpZCAiRmlsdGVyaW5nIGNvbnRlbnQiCiBtc2dzdHIgIkZpbHRyYWdlIGR1IGNvbnRlbnUiCiAKLSM6IGVudHJ5LmM6NDY1CisjOiBlbnRyeS5jOjQ3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc3RhdCBmaWxlICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgc3RhdCBsZSBmaWNoaWVyICclcyciCiAKLSM6IGVudmlyb25tZW50LmM6MTUwCisjOiBlbnZpcm9ubWVudC5jOjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgZ2l0IG5hbWVzcGFjZSBwYXRoIFwiJXNcIiIKIG1zZ3N0ciAiRXNwYWNlcyBkZSBub20gZGUgR2l0IFwiJXNcIiIKIAotIzogZW52aXJvbm1lbnQuYzozMzIKKyM6IGVudmlyb25tZW50LmM6MzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzZXQgR0lUX0RJUiB0byAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHLDqWdsZXIgR0lUX0RJUiDDoCAnJXMnIgogCi0jOiBleGVjLWNtZC5jOjM2MQorIzogZXhlYy1jbWQuYzozNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidG9vIG1hbnkgYXJncyB0byBydW4gJXMiCiBtc2dzdHIgInRyb3AgZCdhcmd1bWVudHMgcG91ciBsYW5jZXIgJXMiCiAKLSM6IGZldGNoLW9iamVjdC5jOjE3Ci1tc2dpZCAiUmVtb3RlIHdpdGggbm8gVVJMIgotbXNnc3RyICJEw6lww7R0IGRpc3RhbnQgc2FucyBVUkwiCi0KLSM6IGZldGNoLXBhY2suYzoxNTEKKyM6IGZldGNoLXBhY2suYzoxNTAKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgc2hhbGxvdyBsaXN0IgotbXNnc3RyICJnaXQgZmV0Y2gtcGFjayA6IGxpc3QgY291cnRlIGF0dGVuZHVlIgorbXNnc3RyICJnaXQgZmV0Y2gtcGFjayA6IGxpc3RlIHN1cGVyZmljaWVsbGUgYXR0ZW5kdWUiCiAKLSM6IGZldGNoLXBhY2suYzoxNjMKKyM6IGZldGNoLXBhY2suYzoxNTMKK21zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgYSBmbHVzaCBwYWNrZXQgYWZ0ZXIgc2hhbGxvdyBsaXN0IgorbXNnc3RyICIiCisiZ2l0IGZldGNoLXBhY2sgOiBwYXF1ZXQgZGUgdmlkYWdlIGF0dGVuZHUgYXByw6hzIHVuZSBsaXN0ZSBzdXBlcmZpY2llbGxlIgorCisjOiBmZXRjaC1wYWNrLmM6MTY0CiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCBhIGZsdXNoIHBhY2tldCIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2sgOiBBQ0svTkFDSyBhdHRlbmR1LCBwYXF1ZXQgZGUgbmV0dG95YWdlIHJlw6d1IgogCi0jOiBmZXRjaC1wYWNrLmM6MTgzCisjOiBmZXRjaC1wYWNrLmM6MTg0CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgJyVzJyIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2sgOiBBQ0svTkFDSyBhdHRlbmR1LCAnJXMnIHJlw6d1IgogCi0jOiBmZXRjaC1wYWNrLmM6MjUzCisjOiBmZXRjaC1wYWNrLmM6MTk1Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHJlbW90ZSIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgc3VyIHVuIGRpc3RhbnQiCisKKyM6IGZldGNoLXBhY2suYzoyNTcKIG1zZ2lkICItLXN0YXRlbGVzcy1ycGMgcmVxdWlyZXMgbXVsdGlfYWNrX2RldGFpbGVkIgogbXNnc3RyICItLXN0YXRlbGVzcy1ycGMgbsOpY2Vzc2l0ZSBtdWx0aV9hY2tfZGV0YWlsZWQiCiAKLSM6IGZldGNoLXBhY2suYzozNDcgZmV0Y2gtcGFjay5jOjEyNzcKKyM6IGZldGNoLXBhY2suYzozNTYgZmV0Y2gtcGFjay5jOjEzNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzaGFsbG93IGxpbmU6ICVzIgogbXNnc3RyICJsaWduZSBkZSBzdXBlcmZpY2llbCBpbnZhbGlkZcKgOiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM1MyBmZXRjaC1wYWNrLmM6MTI4MworIzogZmV0Y2gtcGFjay5jOjM2MiBmZXRjaC1wYWNrLmM6MTM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHVuc2hhbGxvdyBsaW5lOiAlcyIKIG1zZ3N0ciAibGlnbmUgZGUgZmluIGRlIHN1cGVyZmljaWVsIGludmFsaWRlIDogJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNTUgZmV0Y2gtcGFjay5jOjEyODUKKyM6IGZldGNoLXBhY2suYzozNjQgZmV0Y2gtcGFjay5jOjEzNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IG5vdCBmb3VuZDogJXMiCiBtc2dzdHIgIm9iamV0IG5vbiB0cm91dsOpwqA6ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzU4IGZldGNoLXBhY2suYzoxMjg4CisjOiBmZXRjaC1wYWNrLmM6MzY3IGZldGNoLXBhY2suYzoxMzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIGluIG9iamVjdDogJXMiCiBtc2dzdHIgIkVycmV1ciBkYW5zIGwnb2JqZXTCoDogJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNjAgZmV0Y2gtcGFjay5jOjEyOTAKKyM6IGZldGNoLXBhY2suYzozNjkgZmV0Y2gtcGFjay5jOjEzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc2hhbGxvdyBmb3VuZDogJXMiCiBtc2dzdHIgIlBhcyBkZSBzdXBlcmZpY2llbCB0cm91dsOpwqA6ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzYzIGZldGNoLXBhY2suYzoxMjkzCisjOiBmZXRjaC1wYWNrLmM6MzcyIGZldGNoLXBhY2suYzoxMzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIHNoYWxsb3cvdW5zaGFsbG93LCBnb3QgJXMiCiBtc2dzdHIgInN1cGVyZmljaWVsL25vbiBzdXBlcmZpY2llbCBhdHRlbmR1LCAlcyB0cm91dsOpIgogCi0jOiBmZXRjaC1wYWNrLmM6NDA0CisjOiBmZXRjaC1wYWNrLmM6NDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgImdvdCAlcyAlZCAlcyIKIG1zZ3N0ciAicsOpcG9uc2UgJXMgJWQgJXMiCiAKLSM6IGZldGNoLXBhY2suYzo0MjEKKyM6IGZldGNoLXBhY2suYzo0MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb21taXQgJXMiCiBtc2dzdHIgImNvbW1pdCBpbnZhbGlkZSAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjQ1MgorIzogZmV0Y2gtcGFjay5jOjQ2MgogbXNnaWQgImdpdmluZyB1cCIKIG1zZ3N0ciAiYWJhbmRvbiIKIAotIzogZmV0Y2gtcGFjay5jOjQ2NCBwcm9ncmVzcy5jOjIyOQorIzogZmV0Y2gtcGFjay5jOjQ3NSBwcm9ncmVzcy5jOjMyMwogbXNnaWQgImRvbmUiCiBtc2dzdHIgImZhaXQiCiAKLSM6IGZldGNoLXBhY2suYzo0NzYKKyM6IGZldGNoLXBhY2suYzo0ODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ290ICVzICglZCkgJXMiCiBtc2dzdHIgIiVzIHRyb3V2w6kgKCVkKSAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjUyMgorIzogZmV0Y2gtcGFjay5jOjUzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJNYXJraW5nICVzIGFzIGNvbXBsZXRlIgogbXNnc3RyICJNYXJxdWFnZSBkZSAlcyBjb21tZSB0ZXJtaW7DqSIKIAotIzogZmV0Y2gtcGFjay5jOjc2NAorIzogZmV0Y2gtcGFjay5jOjc1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJhbHJlYWR5IGhhdmUgJXMgKCVzKSIKIG1zZ3N0ciAiJXMgZMOpasOgIHBvc3PDqWTDqSAoJXMpIgogCi0jOiBmZXRjaC1wYWNrLmM6ODAzCisjOiBmZXRjaC1wYWNrLmM6ODE4CiBtc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiBtc2dzdHIgImZldGNoLXBhY2vCoDogaW1wb3NzaWJsZSBkZSBkdXBsaXF1ZXIgbGUgZMOpbXVsdGlwbGV4ZXVyIGxhdMOpcmFsIgogCi0jOiBmZXRjaC1wYWNrLmM6ODExCisjOiBmZXRjaC1wYWNrLmM6ODI2CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBwYWNrIGhlYWRlciIKIG1zZ3N0ciAiZXJyZXVyIGRlIHByb3RvY29sZcKgOiBtYXV2YWlzIGVudMOqdGUgZGUgcGFxdWV0IgogCi0jOiBmZXRjaC1wYWNrLmM6ODc5CisjOiBmZXRjaC1wYWNrLmM6OTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZldGNoLXBhY2s6IHVuYWJsZSB0byBmb3JrIG9mZiAlcyIKIG1zZ3N0ciAiZmV0Y2gtcGFjayA6IGltcG9zc2libGUgZGUgZHVwbGlxdWVyICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6ODk1CisjOiBmZXRjaC1wYWNrLmM6OTE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGRlICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6ODk3CisjOiBmZXRjaC1wYWNrLmM6OTE4CiBtc2dpZCAiZXJyb3IgaW4gc2lkZWJhbmQgZGVtdWx0aXBsZXhlciIKIG1zZ3N0ciAiZXJyZXVyIGRhbnMgbGUgZMOpbXVsdGlwbGV4ZXIgbGF0w6lyYWwiCiAKLSM6IGZldGNoLXBhY2suYzo5MjYKLW1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IGNsaWVudHMiCi1tc2dzdHIgIkxlIHNlcnZldXIgbmUgc3VwcG9ydGUgbGVzIGNsaWVudHMgc3VwZXJmaWNpZWxzIgotCi0jOiBmZXRjaC1wYWNrLmM6OTMwCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIG11bHRpX2Fja19kZXRhaWxlZCIKLW1zZ3N0ciAiTGUgc2VydmV1ciBzdXBwb3J0ZSBtdWx0aV9hY2tfZGV0YWlsZWQiCi0KLSM6IGZldGNoLXBhY2suYzo5MzMKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgbm8tZG9uZSIKLW1zZ3N0ciAiTGUgc2VydmV1ciBzdXBwb3J0IG5vLWRvbmUiCi0KLSM6IGZldGNoLXBhY2suYzo5MzkKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgbXVsdGlfYWNrIgotbXNnc3RyICJMZSBzZXJ2ZXVyIHN1cHBvcnRlIG11bHRpX2FjayIKLQotIzogZmV0Y2gtcGFjay5jOjk0MwotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQtNjRrIgotbXNnc3RyICJMZSBzZXJ2ZXVyIHN1cHBvcnRlIHNpZGUtYmFuZC02NGsiCi0KLSM6IGZldGNoLXBhY2suYzo5NDcKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgc2lkZS1iYW5kIgotbXNnc3RyICJMZSBzZXJ2ZXJ1IHN1cHBvcnRlIHNpZGUtYmFuZCIKLQotIzogZmV0Y2gtcGFjay5jOjk1MQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBhbGxvdy10aXAtc2hhMS1pbi13YW50IgotbXNnc3RyICJMZSBzZXJ2ZXVyIHN1cHBvcnRlIGFsbG93LXRpcC1zaGExLWluLXdhbnQiCi0KLSM6IGZldGNoLXBhY2suYzo5NTUKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgYWxsb3ctcmVhY2hhYmxlLXNoYTEtaW4td2FudCIKLW1zZ3N0ciAiTGUgc2VydmV1ciBzdXBwb3J0ZSBhbGxvdy1yZWFjaGFibGUtc2hhMS1pbi13YW50IgotCiAjOiBmZXRjaC1wYWNrLmM6OTY1Ci1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIG9mcy1kZWx0YSIKLW1zZ3N0ciAiTGUgc2VydmV1ciBzdXBwb3J0ZSBvZnMtZGVsdGEiCi0KLSM6IGZldGNoLXBhY2suYzo5NzEgZmV0Y2gtcGFjay5jOjExNTgKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgZmlsdGVyIgotbXNnc3RyICJMZSBzZXJ2ZXVyIHN1cHBvcnRlIGZpbHRlciIKLQotIzogZmV0Y2gtcGFjay5jOjk3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZXJ2ZXIgdmVyc2lvbiBpcyAlLipzIgogbXNnc3RyICJMYSB2ZXJzaW9uIGR1IHNlcnZldXIgZXN0ICUuKnMiCiAKLSM6IGZldGNoLXBhY2suYzo5ODUKKyM6IGZldGNoLXBhY2suYzo5NzAgZmV0Y2gtcGFjay5jOjk3NiBmZXRjaC1wYWNrLmM6OTc5IGZldGNoLXBhY2suYzo5ODUKKyM6IGZldGNoLXBhY2suYzo5ODkgZmV0Y2gtcGFjay5jOjk5MyBmZXRjaC1wYWNrLmM6OTk3IGZldGNoLXBhY2suYzoxMDAxCisjOiBmZXRjaC1wYWNrLmM6MTAwNSBmZXRjaC1wYWNrLmM6MTAwOSBmZXRjaC1wYWNrLmM6MTAxMyBmZXRjaC1wYWNrLmM6MTAxNworIzogZmV0Y2gtcGFjay5jOjEwMjMgZmV0Y2gtcGFjay5jOjEwMjkgZmV0Y2gtcGFjay5jOjEwMzQgZmV0Y2gtcGFjay5jOjEwMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2VydmVyIHN1cHBvcnRzICVzIgorbXNnc3RyICJMZSBzZXJ2ZXVyIHN1cHBvcnRlICVzIgorCisjOiBmZXRjaC1wYWNrLmM6OTcyCittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjbGllbnRzIgorbXNnc3RyICJMZSBzZXJ2ZXVyIG5lIHN1cHBvcnRlIGxlcyBjbGllbnRzIHN1cGVyZmljaWVscyIKKworIzogZmV0Y2gtcGFjay5jOjEwMzIKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLXNoYWxsb3ctc2luY2UiCiBtc2dzdHIgIkxlIHJlY2V2ZXVyIG5lIGfDqHJlIHBhcyAtLXNoYWxsb3ctc2luY2UiCiAKLSM6IGZldGNoLXBhY2suYzo5ODkKKyM6IGZldGNoLXBhY2suYzoxMDM3CiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1zaGFsbG93LWV4Y2x1ZGUiCiBtc2dzdHIgIkxlIHJlY2V2ZXVyIG5lIGfDqHJlIHBhcyAtLXNoYWxsb3ctZXhjbHVkZSIKIAotIzogZmV0Y2gtcGFjay5jOjk5MQorIzogZmV0Y2gtcGFjay5jOjEwNDEKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLWRlZXBlbiIKIG1zZ3N0ciAiTGUgcmVjZXZldXIgbmUgZ8OocmUgcGFzIC0tZGVlcGVuIgogCi0jOiBmZXRjaC1wYWNrLmM6MTAwOAorIzogZmV0Y2gtcGFjay5jOjEwNTgKIG1zZ2lkICJubyBjb21tb24gY29tbWl0cyIKIG1zZ3N0ciAicGFzIGRlIGNvbW1pdCBjb21tdW4iCiAKLSM6IGZldGNoLXBhY2suYzoxMDIwIGZldGNoLXBhY2suYzoxNDE4CisjOiBmZXRjaC1wYWNrLmM6MTA3MCBmZXRjaC1wYWNrLmM6MTUzNgogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBmZXRjaCBmYWlsZWQuIgogbXNnc3RyICJnaXQgZmV0Y2gtcGFja8KgOiDDqWNoZWMgZGUgbGUgcsOpY3Vww6lyYXRpb24uIgogCi0jOiBmZXRjaC1wYWNrLmM6MTE1MworIzogZmV0Y2gtcGFjay5jOjEyMDkKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IHJlcXVlc3RzIgogbXNnc3RyICJMZSBzZXJ2ZXVyIG5lIHN1cHBvcnRlIGxlcyByZXF1w6p0ZXMgc3VwZXJmaWNpZWxsZXMiCiAKLSM6IGZldGNoLXBhY2suYzoxMTk5CisjOiBmZXRjaC1wYWNrLmM6MTIxNgorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBmaWx0ZXIiCittc2dzdHIgIkxlIHNlcnZldXIgc3VwcG9ydGUgZmlsdGVyIgorCisjOiBmZXRjaC1wYWNrLmM6MTIzOQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSByZXF1ZXN0IHRvIHJlbW90ZSIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgbGEgcmVxdcOqdGUgc3VyIGxlIGRpc3RhbnQiCisKKyM6IGZldGNoLXBhY2suYzoxMjU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHJlYWRpbmcgc2VjdGlvbiBoZWFkZXIgJyVzJyIKIG1zZ3N0ciAiZXJyZXVyIMOgIGxhIGxlY3R1cmUgZGUgbCdlbnTDqnRlIGRlIHNlY3Rpb24gJyVzJyIKIAotIzogZmV0Y2gtcGFjay5jOjEyMDUKKyM6IGZldGNoLXBhY2suYzoxMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkICclcycsIHJlY2VpdmVkICclcyciCiBtc2dzdHIgIiclcycgYXR0ZW5kdSwgJyVzJyByZcOndSIKIAotIzogZmV0Y2gtcGFjay5jOjEyNDQKKyM6IGZldGNoLXBhY2suYzoxMzAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgYWNrbm93bGVkZ21lbnQgbGluZTogJyVzJyIKIG1zZ3N0ciAibGlnbmUgZCdhY3F1aXR0ZW1lbnQgaW5hdHRlbmR1ZcKgOiAnJXMnIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI0OQorIzogZmV0Y2gtcGFjay5jOjEzMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBhY2tzOiAlZCIKIG1zZ3N0ciAiZXJyZXVyIGxvcnMgZHUgdHJhaXRlbWVudCBkZXMgYWNxdWl0dGVtZW50c8KgOiAlZCIKIAotIzogZmV0Y2gtcGFjay5jOjEyNTkKKyM6IGZldGNoLXBhY2suYzoxMzE4CiBtc2dpZCAiZXhwZWN0ZWQgcGFja2ZpbGUgdG8gYmUgc2VudCBhZnRlciAncmVhZHknIgogbXNnc3RyICJmaWNoaWVyIHBhcXVldCBhdHRlbmR1IMOgIGVudm95ZXIgYXByw6hzICdyZWFkeSciCiAKLSM6IGZldGNoLXBhY2suYzoxMjYxCisjOiBmZXRjaC1wYWNrLmM6MTMyMAogbXNnaWQgImV4cGVjdGVkIG5vIG90aGVyIHNlY3Rpb25zIHRvIGJlIHNlbnQgYWZ0ZXIgbm8gJ3JlYWR5JyIKIG1zZ3N0ciAiYXVjdW5lIGF1dHJlIHNlY3Rpb24gYXR0ZW5kdWUgw6AgZW52b3llciBhcHLDqHMgYWJzZW5jZSBkZSAncmVhZHknIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI5OAorIzogZmV0Y2gtcGFjay5jOjEzNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBzaGFsbG93IGluZm86ICVkIgogbXNnc3RyICJlcnJldXIgbG9ycyBkdSB0cmFpdGVtZW50IGRlIGwnaW5mb3JtYXRpb24gZGUgc3VwZXJmaWNpYWxpdMOpwqA6ICVkIgogCi0jOiBmZXRjaC1wYWNrLmM6MTMxNAorIzogZmV0Y2gtcGFjay5jOjE0MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgd2FudGVkLXJlZiwgZ290ICclcyciCiBtc2dzdHIgIndhbnRlZC1yZWYgYXR0ZW5kdSwgJyVzJyB0cm91dsOpIgogCi0jOiBmZXRjaC1wYWNrLmM6MTMyNAorIzogZmV0Y2gtcGFjay5jOjE0MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCB3YW50ZWQtcmVmOiAnJXMnIgogbXNnc3RyICJ3YW50ZWQtcmVmIGluYXR0ZW5kdcKgOiAnJXMnIgogCi0jOiBmZXRjaC1wYWNrLmM6MTMyOAorIzogZmV0Y2gtcGFjay5jOjE0MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyB3YW50ZWQgcmVmczogJWQiCiBtc2dzdHIgImVycmV1ciBsb3JzIGR1IHRyYWl0ZW1lbnQgZGVzIHLDqWbDqXJlbmNlcyB2b3VsdWVzwqA6ICVkIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY0MgorIzogZmV0Y2gtcGFjay5jOjE3NjIKIG1zZ2lkICJubyBtYXRjaGluZyByZW1vdGUgaGVhZCIKIG1zZ3N0ciAicGFzIGRlIEhFQUQgZGlzdGFudGUgY29ycmVzcG9uZGFudGUiCiAKLSM6IGZldGNoLXBhY2suYzoxNjYwIGJ1aWx0aW4vY2xvbmUuYzo2NjQKKyM6IGZldGNoLXBhY2suYzoxNzg1IGJ1aWx0aW4vY2xvbmUuYzo2ODkKIG1zZ2lkICJyZW1vdGUgZGlkIG5vdCBzZW5kIGFsbCBuZWNlc3Nhcnkgb2JqZWN0cyIKIG1zZ3N0ciAibGUgc2VydmV1ciBkaXN0YW50IG4nYSBwYXMgZW52b3nDqSB0b3VzIGxlcyBvYmpldHMgbsOpY2Vzc2FpcmVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY4NgorIzogZmV0Y2gtcGFjay5jOjE4MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCByZW1vdGUgcmVmICVzIgogbXNnc3RyICJyw6lmw6lyZW5jZSBkaXN0YW50ZSBpbmNvbm51ZSAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjE2ODkKKyM6IGZldGNoLXBhY2suYzoxODE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBhbGxvdyByZXF1ZXN0IGZvciB1bmFkdmVydGlzZWQgb2JqZWN0ICVzIgogbXNnc3RyICJMZSBzZXJ2ZXVyIG4nYXV0b3Jpc2UgcGFzIGRlIHJlcXXDqnRlIHBvdXIgbCdvYmpldCAlcyBub24gYW5ub25jw6kiCiAKLSM6IGdwZy1pbnRlcmZhY2UuYzozMTgKKyM6IGdwZy1pbnRlcmZhY2UuYzo0MDgKIG1zZ2lkICJncGcgZmFpbGVkIHRvIHNpZ24gdGhlIGRhdGEiCiBtc2dzdHIgImdwZyBuJ2EgcGFzIHB1IHNpZ25lciBsZXMgZG9ubsOpZXMiCiAKLSM6IGdwZy1pbnRlcmZhY2UuYzozNDQKKyM6IGdwZy1pbnRlcmZhY2UuYzo0MzQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSBmaWxlIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciB1biBmaWNoaWVyIHRlbXBvcmFpcmUiCiAKLSM6IGdwZy1pbnRlcmZhY2UuYzozNDcKKyM6IGdwZy1pbnRlcmZhY2UuYzo0MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHdyaXRpbmcgZGV0YWNoZWQgc2lnbmF0dXJlIHRvICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlIGxhIHNpZ25hdHVyZSBkw6l0YWNow6llIGRhbnMgJyVzJyIKIAotIzogZ3JhcGguYzo5NworIzogZ3JhcGguYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmUgaW52YWxpZCBjb2xvciAnJS4qcycgaW4gbG9nLmdyYXBoQ29sb3JzIgogbXNnc3RyICJjb3VsZXVyIGludmFsaWRlICclLipzJyBpZ25vcsOpZSBkYW5zIGxvZy5ncmFwaENvbG9ycyIKIAotIzogZ3JlcC5jOjIxMTMKKyM6IGdyZXAuYzo2NjgKK21zZ2lkICIiCisiZ2l2ZW4gcGF0dGVybiBjb250YWlucyBOVUxMIGJ5dGUgKHZpYSAtZiA8ZmlsZT4pLiBUaGlzIGlzIG9ubHkgc3VwcG9ydGVkICIKKyJ3aXRoIC1QIHVuZGVyIFBDUkUgdjIiCittc2dzdHIgIiIKKyJsZSBtb3RpZiBmb3VybmkgY29udGllbnQgZGVzIG9jdGV0cyBOVUwgKHZpYSAtZiA8ZmljaGllcj4pLiBDZSBuJ2VzdCAiCisic3VwcG9ydMOpIHF1J2F2ZWMgLVAgYXZlYyBQQ1JFIHYyIgorCisjOiBncmVwLmM6MjEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiB1bmFibGUgdG8gcmVhZCAlcyIKIG1zZ3N0ciAiJyVzJyA6IGxlY3R1cmUgZGUgJXMgaW1wb3NzaWJsZSIKIAotIzogZ3JlcC5jOjIxMzAgc2V0dXAuYzoxNjQgYnVpbHRpbi9jbG9uZS5jOjQxMCBidWlsdGluL2RpZmYuYzo4MQotIzogYnVpbHRpbi9ybS5jOjEzNAorIzogZ3JlcC5jOjIxNDUgc2V0dXAuYzoxNjYgYnVpbHRpbi9jbG9uZS5jOjQxMSBidWlsdGluL2RpZmYuYzo4MgorIzogYnVpbHRpbi9ybS5jOjEzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJXMnIgogbXNnc3RyICLDqWNoZWMgZHUgc3RhdCBkZSAnJXMnIgogCi0jOiBncmVwLmM6MjE0MQorIzogZ3JlcC5jOjIxNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogc2hvcnQgcmVhZCIKIG1zZ3N0ciAiJyVzJyA6IGxlY3R1cmUgdHJvbnF1w6llIgpAQCAtMjc3OCw1MCArNDIzMiw1MCBAQAogbXNnc3RyICJDb21tYW5kZXMgYmFzIG5pdmVhdSAvIEludGVycm9nYXRldXJzIgogCiAjOiBoZWxwLmM6MzcKLW1zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBTeW5jaGluZyBSZXBvc2l0b3JpZXMiCittc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gU3luY2luZyBSZXBvc2l0b3JpZXMiCiBtc2dzdHIgIkNvbW1hbmRlcyBiYXMgbml2ZWF1IC8gU3luY2hyb25pc2F0aW9uIGRlIGTDqXDDtHRzIgogCiAjOiBoZWxwLmM6MzgKIG1zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBJbnRlcm5hbCBIZWxwZXJzIgogbXNnc3RyICJDb21tYW5kZXMgYmFzIG5pdmVhdSAvIEFzc2lzdGFudHMgaW50ZXJuZXMiCiAKLSM6IGhlbHAuYzoyOTYKKyM6IGhlbHAuYzoyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYXZhaWxhYmxlIGdpdCBjb21tYW5kcyBpbiAnJXMnIgogbXNnc3RyICJjb21tYW5kZXMgZ2l0IGRpc3BvbmlibGVzIGRhbnMgJyVzJyIKIAotIzogaGVscC5jOjMwMworIzogaGVscC5jOjMwNQogbXNnaWQgImdpdCBjb21tYW5kcyBhdmFpbGFibGUgZnJvbSBlbHNld2hlcmUgb24geW91ciAkUEFUSCIKIG1zZ3N0ciAiY29tbWFuZGVzIGdpdCBkaXNwb25pYmxlcyBkZXB1aXMgdW4gYXV0cmUgZW5kcm9pdCBkZSB2b3RyZSAkUEFUSCIKIAotIzogaGVscC5jOjMxMgorIzogaGVscC5jOjMxNAogbXNnaWQgIlRoZXNlIGFyZSBjb21tb24gR2l0IGNvbW1hbmRzIHVzZWQgaW4gdmFyaW91cyBzaXR1YXRpb25zOiIKIG1zZ3N0ciAiQ2ktZGVzc291cyBsZXMgY29tbWFuZGVzIEdpdCBoYWJpdHVlbGxlcyBkYW5zIGRpdmVyc2VzIHNpdHVhdGlvbnPCoDoiCiAKLSM6IGhlbHAuYzozNjEgZ2l0LmM6OTAKKyM6IGhlbHAuYzozNjMgZ2l0LmM6OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5zdXBwb3J0ZWQgY29tbWFuZCBsaXN0aW5nIHR5cGUgJyVzJyIKIG1zZ3N0ciAidHlwZSBkZSBsaXN0ZSBkZSBjb21tYW5kZXMgbm9uIHN1cHBvcnTDqSAnJXMnIgogCi0jOiBoZWxwLmM6NDA4CisjOiBoZWxwLmM6NDAzCiBtc2dpZCAiVGhlIGNvbW1vbiBHaXQgZ3VpZGVzIGFyZToiCiBtc2dzdHIgIkxlcyBndWlkZXMgR2l0IHBvcHVsYWlyZXMgc29udCA6IgogCi0jOiBoZWxwLmM6NTE3CisjOiBoZWxwLmM6NTEyCiBtc2dpZCAiU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIHRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIgogbXNnc3RyICIiCiAiUsOpZsOpcmV6LXZvdXMgw6AgJ2dpdCBoZWxwIDxjb21tYW5kZT4nIHBvdXIgZGVzIGluZm9ybWF0aW9ucyBzdXIgdW5lIHNvdXMtIgogImNvbW1hbmRlIHNww6ljaWZpcXVlIgogCi0jOiBoZWxwLmM6NTIyCisjOiBoZWxwLmM6NTE3CiBtc2dpZCAiRXh0ZXJuYWwgY29tbWFuZHMiCiBtc2dzdHIgIkNvbW1hbmRlcyBleHRlcm5lcyIKIAotIzogaGVscC5jOjUzMAorIzogaGVscC5jOjUzMgogbXNnaWQgIkNvbW1hbmQgYWxpYXNlcyIKIG1zZ3N0ciAiQWxpYXMgZGUgY29tbWFuZGUiCiAKLSM6IGhlbHAuYzo1OTQKKyM6IGhlbHAuYzo1OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcycgYXBwZWFycyB0byBiZSBhIGdpdCBjb21tYW5kLCBidXQgd2Ugd2VyZSBub3RcbiIKQEAgLTI4MzAsMzMgKzQyODQsMzMgQEAKICInJXMnIHNlbWJsZSDDqnRyZSB1bmUgY29tbWFuZGUgZ2l0LCBtYWlzIGVsbGUgbidhIHBhcyBwdVxuIgogIsOqdHJlIGV4w6ljdXTDqWUuIFBldXQtw6p0cmUgZ2l0LSVzIGVzdC1lbGxlIGNhc3PDqWUgPyIKIAotIzogaGVscC5jOjY1MworIzogaGVscC5jOjY1NQogbXNnaWQgIlVoIG9oLiBZb3VyIHN5c3RlbSByZXBvcnRzIG5vIEdpdCBjb21tYW5kcyBhdCBhbGwuIgogbXNnc3RyICJBaGVtLiBWb3RyZSBzeXN0w6htZSBuJ2luZGlxdWUgYXVjdW5lIGNvbW1hbmRlIEdpdC4iCiAKLSM6IGhlbHAuYzo2NzUKKyM6IGhlbHAuYzo2NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiV0FSTklORzogWW91IGNhbGxlZCBhIEdpdCBjb21tYW5kIG5hbWVkICclcycsIHdoaWNoIGRvZXMgbm90IGV4aXN0LiIKIG1zZ3N0ciAiIgogIkFUVEVOVElPTiA6IHZvdXMgYXZleiBpbnZvcXXDqSB1bmUgY29tbWFuZGUgR2l0IG5vbW3DqWUgJyVzJyBxdWkgbidleGlzdGUgcGFzLiIKIAotIzogaGVscC5jOjY4MAorIzogaGVscC5jOjY4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb250aW51aW5nIHVuZGVyIHRoZSBhc3N1bXB0aW9uIHRoYXQgeW91IG1lYW50ICclcycuIgogbXNnc3RyICJDb250aW51b25zIGVuIHN1cHBvc2FudCBxdWUgdm91cyBhdmV6IHZvdWx1IGRpcmUgJyVzJy4iCiAKLSM6IGhlbHAuYzo2ODUKKyM6IGhlbHAuYzo2ODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29udGludWluZyBpbiAlMC4xZiBzZWNvbmRzLCBhc3N1bWluZyB0aGF0IHlvdSBtZWFudCAnJXMnLiIKIG1zZ3N0ciAiIgogIkNvbnRpbnVvbnMgZGFucyAlMC4xZiBzZWNvbmRlcyBlbiBzdXBwb3NhbnQgcXVlIHZvdXMgYXZleiB2b3VsdSBkaXJlICclcycuIgogCi0jOiBoZWxwLmM6NjkzCisjOiBoZWxwLmM6Njk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdDogJyVzJyBpcyBub3QgYSBnaXQgY29tbWFuZC4gU2VlICdnaXQgLS1oZWxwJy4iCiBtc2dzdHIgImdpdCA6ICclcycgbidlc3QgcGFzIHVuZSBjb21tYW5kZSBnaXQuIFZvaXIgJ2dpdCAtLWhlbHAnLiIKIAotIzogaGVscC5jOjY5NworIzogaGVscC5jOjY5OQogbXNnaWQgIiIKICJcbiIKICJUaGUgbW9zdCBzaW1pbGFyIGNvbW1hbmQgaXMiCkBAIC0yODcwLDE2ICs0MzI0LDE2IEBACiAiXG4iCiAiTGVzIGNvbW1hbmRlcyBsZXMgcGx1cyByZXNzZW1ibGFudGVzIHNvbnQiCiAKLSM6IGhlbHAuYzo3MTIKKyM6IGhlbHAuYzo3MTQKIG1zZ2lkICJnaXQgdmVyc2lvbiBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IHZlcnNpb24gWzxvcHRpb25zPl0iCiAKLSM6IGhlbHAuYzo3ODAKKyM6IGhlbHAuYzo3ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6ICVzIC0gJXMiCiBtc2dzdHIgIiVzOiAlcyAtICVzIgogCi0jOiBoZWxwLmM6Nzg0CisjOiBoZWxwLmM6Nzg3CiBtc2dpZCAiIgogIlxuIgogIkRpZCB5b3UgbWVhbiB0aGlzPyIKQEAgLTI4OTMsNyArNDM0Nyw3IEBACiAiXG4iCiAiVm91bGllei12b3VzIGRpcmUgdW4gZGUgY2V1eC1sw6AgPyIKIAotIzogaWRlbnQuYzozNDUKKyM6IGlkZW50LmM6MzQ5CiBtc2dpZCAiIgogIlxuIgogIioqKiBQbGVhc2UgdGVsbCBtZSB3aG8geW91IGFyZS5cbiIKQEAgLTI5MTksNTAgKzQzNzMsOTIgQEAKICLDiWxpbWluZXogLS1nbG9iYWwgcG91ciBuZSBmYWlyZSBsZXMgcsOpZ2xhZ2VzIHF1ZSBkYW5zIGNlIGTDqXDDtHQuXG4iCiAiXG4iCiAKLSM6IGlkZW50LmM6MzY5CisjOiBpZGVudC5jOjM3OQogbXNnaWQgIm5vIGVtYWlsIHdhcyBnaXZlbiBhbmQgYXV0by1kZXRlY3Rpb24gaXMgZGlzYWJsZWQiCiBtc2dzdHIgImF1Y3VuIGNvdXJyaWVsIGZvdXJuaSBldCBsJ2F1dG8tZMOpdGVjdGlvbiBlc3QgZMOpc2FjdGl2w6llIgogCi0jOiBpZGVudC5jOjM3NAorIzogaWRlbnQuYzozODQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGF1dG8tZGV0ZWN0IGVtYWlsIGFkZHJlc3MgKGdvdCAnJXMnKSIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBkw6l0ZWN0ZXIgYXV0b21hdGlxdWVtZW50IGwnYWRyZXNzZSAoJyVzJyB0cm91dsOpKSIKIAotIzogaWRlbnQuYzozODQKKyM6IGlkZW50LmM6NDAxCiBtc2dpZCAibm8gbmFtZSB3YXMgZ2l2ZW4gYW5kIGF1dG8tZGV0ZWN0aW9uIGlzIGRpc2FibGVkIgogbXNnc3RyICJhdWN1biBub20gZm91cm5pIGV0IGwnYXV0by1kw6l0ZWN0aW9uIGVzdCBkw6lzYWN0aXbDqWUiCiAKLSM6IGlkZW50LmM6MzkwCisjOiBpZGVudC5jOjQwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYXV0by1kZXRlY3QgbmFtZSAoZ290ICclcycpIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGTDqXRlY3RlciBhdXRvbWF0aXF1ZW1lbnQgbGUgbm9tICgnJXMnIHRyb3V2w6kpIgogCi0jOiBpZGVudC5jOjM5OAorIzogaWRlbnQuYzo0MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZW1wdHkgaWRlbnQgbmFtZSAoZm9yIDwlcz4pIG5vdCBhbGxvd2VkIgogbXNnc3RyICJub20gZCdpZGVudGlmaWFudCB2aWRlIChwb3VyIDwlcz4pIG5vbiBwZXJtaXMiCiAKLSM6IGlkZW50LmM6NDA0CisjOiBpZGVudC5jOjQyMQogIywgYy1mb3JtYXQKIG1zZ2lkICJuYW1lIGNvbnNpc3RzIG9ubHkgb2YgZGlzYWxsb3dlZCBjaGFyYWN0ZXJzOiAlcyIKIG1zZ3N0ciAibGUgbm9tIG4nZXN0IGNvbnN0aXR1w6kgcXVlIGRlIGNhcmFjdMOocmVzIGludGVyZGl0c8KgOiAlcyIKIAotIzogaWRlbnQuYzo0MTkgYnVpbHRpbi9jb21taXQuYzo2MDYKKyM6IGlkZW50LmM6NDM2IGJ1aWx0aW4vY29tbWl0LmM6NjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZGF0ZSBmb3JtYXQ6ICVzIgogbXNnc3RyICJmb3JtYXQgZGUgZGF0ZSBpbnZhbGlkZSA6ICVzIgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzozNQotbXNnaWQgIm11bHRpcGxlIGZpbHRlci1zcGVjcyBjYW5ub3QgYmUgY29tYmluZWQiCi1tc2dzdHIgImltcG9zc2libGUgZGUgY29tYmluZXIgZGVzIHNww6ljaWZpY2F0ZXVycyBtdWx0aXBsZXMgZGUgZmlsdHJlIgorIzogbGlzdC1vYmplY3RzLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImVudHJ5ICclcycgaW4gdHJlZSAlcyBoYXMgdHJlZSBtb2RlLCBidXQgaXMgbm90IGEgdHJlZSIKK21zZ3N0ciAiIgorImwnZW50csOpZSAnJXMnIGRhbnMgbCdhcmJyZSAlcyBhIHVuIG1vZGUgZCdhcmJyZSwgbWFpcyBuJ2VzdCBwYXMgdW4gYXJicmUiCisKKyM6IGxpc3Qtb2JqZWN0cy5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJlbnRyeSAnJXMnIGluIHRyZWUgJXMgaGFzIGJsb2IgbW9kZSwgYnV0IGlzIG5vdCBhIGJsb2IiCittc2dzdHIgIiIKKyJsJ2VudHLDqWUgJyVzJyBkYW5zIGwnYXJicmUgJXMgYSB1biBtb2RlIGRlIGJsb2IsIG1haXMgbidlc3QgcGFzIHVuIGJsb2IiCisKKyM6IGxpc3Qtb2JqZWN0cy5jOjM3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbG9hZCByb290IHRyZWUgZm9yIGNvbW1pdCAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjaGFyZ2VyIGwnYXJicmUgcmFjaW5lIHBvdXIgbGUgY29tbWl0ICVzIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLmM6NDkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3Mgc3BhcnNlIGJsb2IgaW4gJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FjY8OpZGVyIGF1IGJsb2IgY2xhaXJzZW3DqSBkYW5zICclcyciCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXIuYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIHNwYXJzZSBmaWx0ZXIgZGF0YSBpbiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGxhIGRvbm7DqWUgZGUgZmlsdHJlIGNsYWlyc2Vtw6kgZGFucyAlcyIKIAogIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6NTgKLW1zZ2lkICJvbmx5ICd0cmVlOjAnIGlzIHN1cHBvcnRlZCIKLW1zZ3N0ciAic2V1bCAndHJlZTowJyBlc3Qgc3VwcG9ydMOpIgorbXNnaWQgImV4cGVjdGVkICd0cmVlOjxkZXB0aD4nIgorbXNnc3RyICJhdHRlbmR1wqA6ICd0cmVlOjxwcm9mb25kZXVyPiciCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjEzNwotbXNnaWQgImNhbm5vdCBjaGFuZ2UgcGFydGlhbCBjbG9uZSBwcm9taXNvciByZW1vdGUiCi1tc2dzdHIgImltcG9zc2libGUgZGUgbW9kaWZpZXIgbGUgcHJvbWV0dGV1ciBkaXN0YW50IGRlIGNsb25lIHBhcnRpZWwiCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo3MworbXNnaWQgInNwYXJzZTpwYXRoIGZpbHRlcnMgc3VwcG9ydCBoYXMgYmVlbiBkcm9wcGVkIgorbXNnc3RyICJzcGFyc2XCoDogbGUgc3VwcG9ydCBkZXMgZmlsdHJlcyBkZSBjaGVtaW4gYSDDqXTDqSBhYmFuZG9ubsOpIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGZpbHRlci1zcGVjICclcyciCittc2dzdHIgInNww6ljaWZpY2F0ZXVyIGRlIGZpbHRyZSBpbnZhbGlkZSAnJXMnIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVzdCBlc2NhcGUgY2hhciBpbiBzdWItZmlsdGVyLXNwZWM6ICclYyciCittc2dzdHIgIiIKKyJsZSBjYXJhY3TDqHJlIGRvaXQgw6p0cmUgw6ljaGFwcMOpIGRhbnMgbGUgc3DDqWNpZmljYXRldXIgZGUgc291cy1maWx0cmXCoDogJyVjJyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTQ0Cittc2dpZCAiZXhwZWN0ZWQgc29tZXRoaW5nIGFmdGVyIGNvbWJpbmU6IgorbXNnc3RyICJxdWVscXVlIGNob3NlIGF0dGVuZHUgYXByw6hzIGNvbWJpbmXCoDoiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjIyNgorbXNnaWQgIm11bHRpcGxlIGZpbHRlci1zcGVjcyBjYW5ub3QgYmUgY29tYmluZWQiCittc2dzdHIgImltcG9zc2libGUgZGUgY29tYmluZXIgZGVzIHNww6ljaWZpY2F0ZXVycyBtdWx0aXBsZXMgZGUgZmlsdHJlIgogCiAjOiBsb2NrZmlsZS5jOjE1MQogIywgYy1mb3JtYXQKQEAgLTI5NzksNyArNDQ3NSw3IEBACiAiXG4iCiAiSWwgc2VtYmxlIHF1J3VuIGF1dHJlIHByb2Nlc3N1cyBnaXQgZXN0IGTDqWrDoCBsYW5jw6kgZGFucyBjZSBkw6lww7R0LFxuIgogInBhciBleGVtcGxlIHVuIMOpZGl0ZXVyIG91dmVydCBwYXIgJ2dpdCBjb21taXQnLiBWZXVpbGxleiB2b3VzIGFzc3VyZXJcbiIKLSJxdWUgdG91cyBsZXMgcHJvY2Vzc3VzIHNvbnQgdGVybWluw6lzIGV0IHLDqWVzc2F5ZXouIFNpIGwnZWNoZWMgcGVyc2lzdGUsXG4iCisicXVlIHRvdXMgbGVzIHByb2Nlc3N1cyBzb250IHRlcm1pbsOpcyBldCByw6llc3NheWV6LiBTaSBsJ8OpY2hlYyBwZXJzaXN0ZSxcbiIKICJ1biBwcm9jZXNzdXMgZ2l0IHBldXQgYXZvaXIgcGxhbnTDqcKgOlxuIgogInN1cHByaW1leiBsZSBmaWNoaWVyIG1hbnVlbGxlbWVudCBwb3VyIHBvdXJzdWl2cmUuIgogCkBAIC0yOTkyLDExNiArNDQ4OCwxMTMgQEAKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCB0aGUgY2FjaGUiCiBtc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSBsZSBjYWNoZSIKIAotIzogbWVyZ2UuYzoxMDcgcmVyZXJlLmM6NzIwIGJ1aWx0aW4vYW0uYzoxODk5IGJ1aWx0aW4vYW0uYzoxOTMzCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Mzg3IGJ1aWx0aW4vY2hlY2tvdXQuYzo3MDggYnVpbHRpbi9jbG9uZS5jOjc2NAorIzogbWVyZ2UuYzoxMDcgcmVyZXJlLmM6NzIwIGJ1aWx0aW4vYW0uYzoxODc5IGJ1aWx0aW4vYW0uYzoxOTEzCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTQxIGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDAgYnVpbHRpbi9jbG9uZS5jOjgxMAorIzogYnVpbHRpbi9zdGFzaC5jOjI2NQogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgbGUgbm91dmVhdSBmaWNoaWVyIGQnaW5kZXgiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzU2CiBtc2dpZCAiKGJhZCBjb21taXQpXG4iCiBtc2dzdHIgIihtYXV2YWlzIGNvbW1pdClcbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQ1CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkX2NhY2hlaW5mbyBmYWlsZWQgZm9yIHBhdGggJyVzJzsgbWVyZ2UgYWJvcnRpbmcuIgogbXNnc3RyICLDqWNoZWMgZGUgYWRkaW5mb19jYWNoZSBwb3VyIGxlIGNoZW1pbiAnJXMnwqA7IGFiYW5kb24gZGUgbGEgZnVzaW9uLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkX2NhY2hlaW5mbyBmYWlsZWQgdG8gcmVmcmVzaCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCiBtc2dzdHIgIsOpY2hlYyBkZSBhZGRpbmZvX2NhY2hlIHBvdXIgbGUgY2hlbWluICclcyfCoDsgYWJhbmRvbiBkZSBsYSBmdXNpb24uIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo0MzUKLW1zZ2lkICJlcnJvciBidWlsZGluZyB0cmVlcyIKLW1zZ3N0ciAiZXJyZXVyIGRlIGNvbnN0cnVjdGlvbiBkZXMgYXJicmVzIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5MDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBhdGggJyVzJyVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciBsZSBjaGVtaW4gJyVzJyAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTE3CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo4ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3ZpbmcgJXMgdG8gbWFrZSByb29tIGZvciBzdWJkaXJlY3RvcnlcbiIKIG1zZ3N0ciAiU3VwcHJlc3Npb24gZGUgJXMgcG91ciBmYWlyZSBkZSBsYSBwbGFjZSBwb3VyIGxlIHNvdXMtcsOpcGVydG9pcmVcbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTMxIG1lcmdlLXJlY3Vyc2l2ZS5jOjk1MAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6ODk5IG1lcmdlLXJlY3Vyc2l2ZS5jOjkxOAogbXNnaWQgIjogcGVyaGFwcyBhIEQvRiBjb25mbGljdD8iCiBtc2dzdHIgIjogcGV1dC3DqnRyZSB1biBjb25mbGl0IEQvRiA/IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5NDAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICclcyciCiBtc2dzdHIgInJlZnVzIGRlIHBlcmRyZSBsZSBmaWNoaWVyIG5vbiBzdWl2aSAnJXMnIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5ODIgYnVpbHRpbi9jYXQtZmlsZS5jOjM5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NDkgYnVpbHRpbi9jYXQtZmlsZS5jOjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCAlcyAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbCdvYmpldCAlcyAnJXMnIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5ODQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJibG9iIGV4cGVjdGVkIGZvciAlcyAnJXMnIgogbXNnc3RyICJibG9iIGF0dGVuZHUgcG91ciAlcyAnJXMnIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDA4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJzogJXMiCiBtc2dzdHIgIsOpY2hlYyDDoCBsJ291dmVydHVyZSBkZSAnJXMnwqA6ICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDE5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN5bWxpbmsgJyVzJzogJXMiCiBtc2dzdHIgIsOpY2hlYyDDoCBsYSBjcsOpYXRpb24gZHUgbGllbiBzeW1ib2xpcXVlICclcyfCoDogJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEwMjQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJkbyBub3Qga25vdyB3aGF0IHRvIGRvIHdpdGggJTA2byAlcyAnJXMnIgogbXNnc3RyICJuZSBzYWl0IHBhcyB0cmFpdGVyICUwNm8gJXMgJyVzJyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxMgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTE5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChub3QgY2hlY2tlZCBvdXQpIgogbXNnc3RyICLDiWNoZWMgZGUgbGEgZnVzaW9uIGR1IHNvdXMtbW9kdWxlICVzIChub24gZXh0cmFpdCkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjExOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAoY29tbWl0cyBub3QgcHJlc2VudCkiCiBtc2dzdHIgIsOJY2hlYyBkZSBmdXNpb24gZHUgc291cy1tb2R1bGUgJXMgKGNvbW1pdHMgbm9uIHByw6lzZW50cykiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMjYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAoY29tbWl0cyBkb24ndCBmb2xsb3cgbWVyZ2UtYmFzZSkiCiBtc2dzdHIgIiIKICLDiWNoZWMgZGUgbGEgZnVzaW9uIGR1IHNvdXMtbW9kdWxlICVzIChsZXMgY29tbWl0cyBuZSBkZXNjZW5kZW50IHBhcyBkZSBsYSAiCiAiYmFzZSBkZSBmdXNpb24pIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjM0IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTMgbWVyZ2UtcmVjdXJzaXZlLmM6MTIyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIHRvIHRoZSBmb2xsb3dpbmcgY29tbWl0OiIKIG1zZ3N0ciAiQXZhbmNlIHJhcGlkZSBkdSBzb3VzLW1vZHVsZSAlcyBhdSBjb21taXQgc3VpdmFudMKgOiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIzNyBtZXJnZS1yZWN1cnNpdmUuYzoxMjQ5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjE2IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFzdC1mb3J3YXJkaW5nIHN1Ym1vZHVsZSAlcyIKIG1zZ3N0ciAiQXZhbmNlIHJhcGlkZSBkdSBzb3VzLW1vZHVsZSAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3MQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChtZXJnZSBmb2xsb3dpbmcgY29tbWl0cyBub3QgZm91bmQpIgogbXNnc3RyICIiCiAiw4ljaGVjIGRlIGZ1c2lvbiBkdSBzb3VzLW1vZHVsZSAlcyAoZnVzaW9uIHN1aXZhbnQgbGVzIGNvbW1pdHMgbm9uIHRyb3V2w6llKSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChub3QgZmFzdC1mb3J3YXJkKSIKIG1zZ3N0ciAiw4ljaGVjIGRlIGZ1c2lvbiBkdSBzb3VzLW1vZHVsZSAlcyAocGFzIGVuIGF2YW5jZSByYXBpZGUpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjc2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU2CiBtc2dpZCAiRm91bmQgYSBwb3NzaWJsZSBtZXJnZSByZXNvbHV0aW9uIGZvciB0aGUgc3VibW9kdWxlOlxuIgogbXNnc3RyICJSw6lzb2x1dGlvbiBwb3NzaWJsZSBkZSBmdXNpb24gdHJvdXbDqWUgcG91ciBsZSBzb3VzLW1vZHVsZcKgOlxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjc5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJZiB0aGlzIGlzIGNvcnJlY3Qgc2ltcGx5IGFkZCBpdCB0byB0aGUgaW5kZXggZm9yIGV4YW1wbGVcbiIKQEAgLTMxMTgsMzMgKzQ2MTEsMzMgQEAKICJcbiIKICJxdWkgYWNjZXB0ZXJhIGNldHRlIHN1Z2dlc3Rpb24uXG4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyODgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobXVsdGlwbGUgbWVyZ2VzIGZvdW5kKSIKIG1zZ3N0ciAiw4ljaGVjIGRlIGZ1c2lvbiBkdSBzb3VzLW1vZHVsZSAlcyAocGx1c2lldXJzIGZ1c2lvbnMgdHJvdXbDqWVzKSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM1OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM0MQogbXNnaWQgIkZhaWxlZCB0byBleGVjdXRlIGludGVybmFsIG1lcmdlIgogbXNnc3RyICLDiWNoZWMgw6AgbCdleMOpY3V0aW9uIGRlIGxhIGZ1c2lvbiBpbnRlcm5lIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzYzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBhZGQgJXMgdG8gZGF0YWJhc2UiCiBtc2dzdHIgIkltcG9zc2libGUgZCdham91dGVyICVzIMOgIGxhIGJhc2UgZGUgZG9ubsOpZXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzOTUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0by1tZXJnaW5nICVzIgogbXNnc3RyICJGdXNpb24gYXV0b21hdGlxdWUgZGUgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0MTYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXJyb3I6IFJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXM7IHdyaXRpbmcgdG8gJXMgaW5zdGVhZC4iCiBtc2dzdHIgIiIKICJFcnJldXLCoDogcmVmdXMgZGUgcGVyZHJlIGxlIGZpY2hpZXIgbm9uIHN1aXZpICVzwqA7IMOpY3JpdHVyZSBkYW5zICVzIMOgIGxhICIKICJwbGFjZS4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0ODMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0ICIKQEAgLTMxNTMsNyArNDY0Niw3IEBACiAiQ09ORkxJVCAoJXMvc3VwcHJlc3Npb24pIDogJXMgc3VwcHJpbcOpIGRhbnMgJXMgZXQgJXMgZGFucyAlcy4gVmVyc2lvbiAlcyBkZSAiCiAiJXMgbGFpc3PDqWUgZGFucyBsJ2FyYnJlLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ4OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ3OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIHRvICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzICIKQEAgLTMxNjIsNyArNDY1NSw3IEBACiAiQ09ORkxJVCAoJXMvc3VwcHJlc3Npb24pIDogJXMgc3VwcHJpbcOpIGRhbnMgJXMgZXQgJXMgw6AgJXMgZGFucyAlcy4gVmVyc2lvbiAiCiAiJXMgZGUgJXMgbGFpc3PDqWUgZGFucyBsJ2FyYnJlLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ5NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzIGxlZnQgIgpAQCAtMzE3MSw3ICs0NjY0LDcgQEAKICJDT05GTElUICglcy9zdXBwcmVzc2lvbikgOiAlcyBzdXBwcmltw6kgZGFucyAlcyBldCAlcyBkYW5zICVzLiBWZXJzaW9uICVzIGRlICIKICIlcyBsYWlzc8OpZSBkYW5zIGwnYXJicmUgZGFucyBsZSBmaWNoaWVyICVzLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUwMAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ5MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIHRvICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzICIKQEAgLTMxODAsMzEgKzQ2NzMsNDEgQEAKICJDT05GTElUICglcy9zdXBwcmVzc2lvbikgOiAlcyBzdXBwcmltw6kgZGFucyAlcyBldCAlcyDDoCAlcyBkYW5zICVzLiBWZXJzaW9uICIKICIlcyBkZSAlcyBsYWlzc8OpZSBkYW5zIGwnYXJicmUgZGFucyBsZSBmaWNoaWVyICVzLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUzNAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUyNgogbXNnaWQgInJlbmFtZSIKIG1zZ3N0ciAicmVub21tYWdlIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTM0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTI2CiBtc2dpZCAicmVuYW1lZCIKIG1zZ3N0ciAicmVub21tw6kiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1ODggbWVyZ2UtcmVjdXJzaXZlLmM6MTczNyBtZXJnZS1yZWN1cnNpdmUuYzoyMzY5Ci0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMTI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTc3IG1lcmdlLXJlY3Vyc2l2ZS5jOjI0NzIgbWVyZ2UtcmVjdXJzaXZlLmM6MzExNwogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgJXMiCiBtc2dzdHIgIlJlZnVzIGRlIHBlcmRyZSBsZSBmaWNoaWVyIG1vZGlmacOpICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjAyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXMsIGV2ZW4gdGhvdWdoIGl0J3MgaW4gdGhlIHdheS4iCittc2dzdHIgIlJlZnVzIGRlIHBlcmRyZSBsZSBmaWNoaWVyIG5vbiBzdWl2aSAlcywgbcOqbWUgcydpbCBnw6puZS4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9hZGQpOiBSZW5hbWUgJXMtPiVzIGluICVzLiAgQWRkZWQgJXMgaW4gJXMiCittc2dzdHIgIiIKKyJDT05GTElUIChyZW5vbW1hZ2UvYWpvdXQpIDogUmVub21tYWdlIGRlICVzLT4lcyBkYW5zICVzLiAlcyBham91dMOpIGRhbnMgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgYSBkaXJlY3RvcnkgaW4gJXMgYWRkaW5nIGFzICVzIGluc3RlYWQiCiBtc2dzdHIgIiVzIGVzdCB1biByw6lwZXJ0b2lyZSBkYW5zICVzIGFqb3V0w6kgcGx1dMO0dCBjb21tZSAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTYwNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTY4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzOyBhZGRpbmcgYXMgJXMgaW5zdGVhZCIKIG1zZ3N0ciAiUmVmdXMgZGUgcGVyZHJlIGxlIGZpY2hpZXIgbm9uIHN1aXZpICVzIDsgYWpvdXQgY29tbWUgJXMgw6AgbGEgcGxhY2UiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MzMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIFwiJXNcIi0+XCIlc1wiIGluIGJyYW5jaCBcIiVzXCIgcmVuYW1lIFwiJXMiCkBAIC0zMjEzLDI4ICs0NzE2LDE4IEBACiAiQ09ORkxJVCAocmVub21tYWdlL3Jlbm9tbWFnZSkgOiBSZW5vbW1hZ2UgZGUgXCIlc1wiLT5cIiVzXCIgZGFucyBsYSBicmFuY2hlICIKICJcIiVzXCIgZXQgcmVub21tYWdlIFwiJXNcIi0+XCIlc1wiIGRhbnMgXCIlc1wiJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MzgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MTMKIG1zZ2lkICIgKGxlZnQgdW5yZXNvbHZlZCkiCiBtc2dzdHIgIiAobGFpc3PDqSBub24gcsOpc29sdSkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2OTkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiBSZW5hbWUgJXMtPiVzIGluICVzLiBSZW5hbWUgJXMtPiVzIGluICVzIgogbXNnc3RyICIiCiAiQ09ORkxJVCAocmVub21tYWdlL3Jlbm9tbWFnZSkgOiByZW5vbW1hZ2UgJyVzJy0+JyVzJyBkYW5zICVzLiBSZW5vbW1hZ2UgJyVzJy0iCiAiPiclcycgZGFucyAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTczNAotIywgYy1mb3JtYXQKLW1zZ2lkICJSZW5hbWluZyAlcyB0byAlcyBhbmQgJXMgdG8gJXMgaW5zdGVhZCIKLW1zZ3N0ciAiUmVub21tYWdlIGRlICVzIGVuICVzIGV0IGRlICVzIGVuICVzIMOgIGxhIHBsYWNlIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzQ2Ci0jLCBjLWZvcm1hdAotbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXMsIGV2ZW4gdGhvdWdoIGl0J3MgaW4gdGhlIHdheS4iCi1tc2dzdHIgIlJlZnVzIGRlIHBlcmRyZSBsZSBmaWNoaWVyIG5vbiBzdWl2aSAlcywgbcOqbWUgcydpbCBnw6puZS4iCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5NTIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChkaXJlY3RvcnkgcmVuYW1lIHNwbGl0KTogVW5jbGVhciB3aGVyZSB0byBwbGFjZSAlcyBiZWNhdXNlICIKQEAgLTMyNDUsNyArNDczOCw3IEBACiAicGFyY2UgcXVlIGxlIHLDqXBlcnRvaXJlICVzIGEgw6l0w6kgcmVub21tw6kgZW4gcGx1c2lldXJzIGF1dHJlcyByw6lwZXJ0b2lyZXMsICIKICJzYW5zIGF1Y3VuZSBkZXN0aW5hdGlvbiByw6ljdXDDqXJhbnQgbGEgbWFqb3JpdMOpIGRlcyBmaWNoaWVycy4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5ODQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogRXhpc3RpbmcgZmlsZS9kaXIgYXQgJXMgaW4gdGhlIHdheSBvZiAiCkBAIC0zMjU0LDcgKzQ3NDcsNyBAQAogIkNPTkZMSVQgKHJlbm9tbWFnZSBpbXBsaWNpdGUgZGUgcsOpcGVydG9pcmUpwqA6IGxlIHLDqXBlcnRvaXJlL2ZpY2hpZXIgJXMgZ8OqbmUgIgogImRlcyByZW5vbW1hZ2VzIGltcGxpY2l0ZXMgZGUgcsOpcGVydG9pcmUgZMOpcGxhw6dhbnQgbGVzIGNoZW1pbnMgc3VpdmFudHPCoDogJXMuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxOTk0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoaW1wbGljaXQgZGlyIHJlbmFtZSk6IENhbm5vdCBtYXAgbW9yZSB0aGFuIG9uZSBwYXRoIHRvICVzOyAiCkBAIC0zMjYzLDcgKzQ3NTYsNyBAQAogIkNPTkZMSVQgKHJlbm9tbWFnZSBpbXBsaWNpdGUgZGUgcsOpcGVydG9pcmUpwqA6IGltcG9zc2libGUgZGUgdHJhbnNmb3JtZXIgIgogInBsdXNpZXVycyBjaGVtaW5zIHN1ciAlc8KgOyBsZXMgY2hlbWlucyBjb25jZXJuw6lzIHNvbnTCoDogJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwODYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIxOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIGRpcmVjdG9yeSAlcy0+JXMgaW4gJXMuIFJlbmFtZSBkaXJlY3RvcnkgJXMtIgpAQCAtMzI3Miw3ICs0NzY1LDcgQEAKICJDT05GTElUIChyZW5vbW1hZ2UvcmVub21tYWdlKSA6IHJlbm9tbWFnZSBkdSByw6lwZXJ0b2lyZSAlcy0+JXMgZGFucyAlcy4gIgogIlJlbm9tbWFnZSBkZSByw6lwZXJ0b2lyZSAlcy0+JXMgZGFucyAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjMzMQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjQzNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiV0FSTklORzogQXZvaWRpbmcgYXBwbHlpbmcgJXMgLT4gJXMgcmVuYW1lIHRvICVzLCBiZWNhdXNlICVzIGl0c2VsZiB3YXMgIgpAQCAtMzI4MSw4NyArNDc3NCwxNDMgQEAKICJBVkVSVElTU0VNRU5UwqA6IG5lIHJlbm9tbWUgcGFzICVzLT4lcyBkYW5zICVzLCBwYXJjZSBxdWUgJXMgbHVpLW3Dqm1lIGEgw6l0w6kgIgogInJlbm9tbcOpLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjczNwotIywgYy1mb3JtYXQKLW1zZ2lkICJDT05GTElDVCAocmVuYW1lL2FkZCk6IFJlbmFtZSAlcy0+JXMgaW4gJXMuICVzIGFkZGVkIGluICVzIgotbXNnc3RyICIiCi0iQ09ORkxJVCAocmVub21tYWdlL2Fqb3V0KSA6IFJlbm9tbWFnZSBkZSAlcy0+JXMgZGFucyAlcy4gJXMgYWpvdXTDqSBkYW5zICVzIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyNzYzCi0jLCBjLWZvcm1hdAotbXNnaWQgIkFkZGluZyBtZXJnZWQgJXMiCi1tc2dzdHIgIkFqb3V0IGRlICVzIGZ1c2lvbm7DqSIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjc3MCBtZXJnZS1yZWN1cnNpdmUuYzozMTI3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkFkZGluZyBhcyAlcyBpbnN0ZWFkIgotbXNnc3RyICJBam91dCBwbHV0w7R0IGNvbW1lICVzIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyOTM0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyOTYxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGwnb2JqZXQgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5MzcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGlzIG5vdCBhIGJsb2IiCiBtc2dzdHIgImwnb2JqZXQgJXMgbidlc3QgcGFzIHVuIGJsb2IiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjgKIG1zZ2lkICJtb2RpZnkiCiBtc2dzdHIgIm1vZGlmaWNhdGlvbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAwNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAyOAogbXNnaWQgIm1vZGlmaWVkIgogbXNnc3RyICJtb2RpZmnDqSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAxNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA0MAogbXNnaWQgImNvbnRlbnQiCiBtc2dzdHIgImNvbnRlbnUiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDQKIG1zZ2lkICJhZGQvYWRkIgogbXNnc3RyICJham91dC9ham91dCIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA3MQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGVkICVzIChtZXJnZWQgc2FtZSBhcyBleGlzdGluZykiCiBtc2dzdHIgIiVzIHNhdXTDqSAoZnVzaW9uIGlkZW50aXF1ZSDDoCBsJ2V4aXN0YW50KSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA5MyBnaXQtc3VibW9kdWxlLnNoOjg1OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA4OSBnaXQtc3VibW9kdWxlLnNoOjEwMDMKIG1zZ2lkICJzdWJtb2R1bGUiCiBtc2dzdHIgInNvdXMtbW9kdWxlIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDk0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUICglcyk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgogbXNnc3RyICJDT05GTElUICglcykgOiBDb25mbGl0IGRlIGZ1c2lvbiBkYW5zICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjE2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyBhcyAlcyBpbnN0ZWFkIgorbXNnc3RyICJBam91dCBwbHV0w7R0IGNvbW1lICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYXRoIHVwZGF0ZWQ6ICVzIGFkZGVkIGluICVzIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkIGluICVzOyAiCisibW92aW5nIGl0IHRvICVzLiIKK21zZ3N0ciAiIgorIkNoZW1pbiBtaXMgw6Agam91csKgOiAlcyBham91dMOpIGRhbnMgJXMgZGFucyB1biByw6lwZXJ0b2lyZSBxdWkgYSDDqXTDqSByZW5vbW3DqSAiCisiZW4gJXPCoDsgZMOpcGxhY8OpIGRhbnMgJXMuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoZmlsZSBsb2NhdGlvbik6ICVzIGFkZGVkIGluICVzIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkICIKKyJpbiAlcywgc3VnZ2VzdGluZyBpdCBzaG91bGQgcGVyaGFwcyBiZSBtb3ZlZCB0byAlcy4iCittc2dzdHIgIiIKKyJDT05GTElUIChsb2NhbGlzYXRpb24gZGUgZmljaGllcinCoDogJXMgYWpvdXTDqSBkYW5zICVzIGRhbnMgdW4gcsOpcGVydG9pcmUgcXVpICIKKyJhIMOpdMOpIHJlbm9tbcOpIGRhbnMgJXMsIGNlIHF1aSBzdWdnw6hyZSBxdSdpbCBkZXZyYWl0IHBldXQtw6p0cmUgw6p0cmUgZMOpcGxhY8OpICIKKyJ2ZXJzICVzLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIxMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGF0aCB1cGRhdGVkOiAlcyByZW5hbWVkIHRvICVzIGluICVzLCBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCBpbiAiCisiJXM7IG1vdmluZyBpdCB0byAlcy4iCittc2dzdHIgIiIKKyJDaGVtaW4gbWlzIMOgIGpvdXLCoDogJXMgcmVub21tw6kgZW4gJXMgZGFucyAlcywgZGFucyB1biByw6lwZXJ0b2lyZSBxdWkgYSDDqXTDqSAiCisicmVub21tw6kgZW4gJXPCoDsgZMOpcGxhY8OpIGRhbnMgJXMuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoZmlsZSBsb2NhdGlvbik6ICVzIHJlbmFtZWQgdG8gJXMgaW4gJXMsIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0ICIKKyJ3YXMgcmVuYW1lZCBpbiAlcywgc3VnZ2VzdGluZyBpdCBzaG91bGQgcGVyaGFwcyBiZSBtb3ZlZCB0byAlcy4iCittc2dzdHIgIiIKKyJDT05GTElUIChsb2NhbGlzYXRpb24gZGUgZmljaGllcinCoDogJXMgcmVub21tw6kgZW4gJXMgZGFucyAlcywgZGFucyB1biAiCisicsOpcGVydG9pcmUgcXVpIGEgw6l0w6kgcmVub21tw6kgZGFucyAlcywgY2UgcXVpIHN1Z2fDqHJlIHF1J2lsIGRldnJhaXQgcGV1dC3DqnRyZSAiCisiw6p0cmUgZMOpcGxhY8OpIHZlcnMgJXMuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzIgogbXNnc3RyICJTdXBwcmVzc2lvbiBkZSAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI0MgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM1MAogbXNnaWQgImZpbGUvZGlyZWN0b3J5IgogbXNnc3RyICJmaWNoaWVyL3LDqXBlcnRvaXJlIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjQ4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzU1CiBtc2dpZCAiZGlyZWN0b3J5L2ZpbGUiCiBtc2dzdHIgInLDqXBlcnRvaXJlL2ZpY2hpZXIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNTUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ09ORkxJQ1QgKCVzKTogVGhlcmUgaXMgYSBkaXJlY3Rvcnkgd2l0aCBuYW1lICVzIGluICVzLiBBZGRpbmcgJXMgYXMgJXMiCiBtc2dzdHIgIiIKICJDT05GTElUICglcykgOiBJbCB5IGEgdW4gcsOpcGVydG9pcmUgbm9tbcOpICVzIGRhbnMgJXMuIEFqb3V0IGRlICVzIGNvbW1lICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjY0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFkZGluZyAlcyIKIG1zZ3N0ciAiQWpvdXQgZGUgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMDAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKGFkZC9hZGQpOiBNZXJnZSBjb25mbGljdCBpbiAlcyIKK21zZ3N0ciAiQ09ORkxJVCAoYWpvdXQvYWpvdXQpwqA6IENvbmZsaXQgZGUgZnVzaW9uIGRhbnMgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MjQKK21zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUhIgorbXNnc3RyICJEw6lqw6Agw6Agam91ciAhIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNDMzCisjLCBjLWZvcm1hdAorbXNnaWQgIm1lcmdpbmcgb2YgdHJlZXMgJXMgYW5kICVzIGZhaWxlZCIKK21zZ3N0ciAiw6ljaGVjIGRlIGZ1c2lvbiBkZXMgYXJicmVzICVzIGV0ICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNTM3Cittc2dpZCAiTWVyZ2luZzoiCittc2dzdHIgIkZ1c2lvbiA6IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNTUwCisjLCBjLWZvcm1hdAorbXNnaWQgImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcjoiCittc2dpZF9wbHVyYWwgImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcnM6IgorbXNnc3RyWzBdICIldSBhbmPDqnRyZSBjb21tdW4gdHJvdXbDqSA6IgorbXNnc3RyWzFdICIldSBhbmPDqnRyZXMgY29tbXVucyB0cm91dsOpcyA6IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjAwCittc2dpZCAibWVyZ2UgcmV0dXJuZWQgbm8gY29tbWl0IgorbXNnc3RyICJsYSBmdXNpb24gbidhIHBhcyByZXRvdXJuw6kgZGUgY29tbWl0IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTMzNzEsMTI4ICs0OTIwLDEyMSBAQAogImZ1c2lvbsKgOlxuIgogIiAgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMTEKLW1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUhIgotbXNnc3RyICJEw6lqw6Agw6Agam91ciAhIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMzIwCi0jLCBjLWZvcm1hdAotbXNnaWQgIm1lcmdpbmcgb2YgdHJlZXMgJXMgYW5kICVzIGZhaWxlZCIKLW1zZ3N0ciAiw6ljaGVjIGRlIGZ1c2lvbiBkZXMgYXJicmVzICVzIGV0ICVzIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDE5Ci1tc2dpZCAiTWVyZ2luZzoiCi1tc2dzdHIgIkZ1c2lvbiA6IgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDMyCi0jLCBjLWZvcm1hdAotbXNnaWQgImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcjoiCi1tc2dpZF9wbHVyYWwgImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcnM6IgotbXNnc3RyWzBdICIldSBhbmPDqnRyZSBjb21tdW4gdHJvdXbDqSA6IgotbXNnc3RyWzFdICIldSBhbmPDqnRyZXMgY29tbXVucyB0cm91dsOpcyA6IgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDcxCi1tc2dpZCAibWVyZ2UgcmV0dXJuZWQgbm8gY29tbWl0IgotbXNnc3RyICJsYSBmdXNpb24gbidhIHBhcyByZXRvdXJuw6kgZGUgY29tbWl0IgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNTM3CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNzU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGwnb2JqZXQgJyVzJyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzU1MyBidWlsdGluL21lcmdlLmM6NjkxIGJ1aWx0aW4vbWVyZ2UuYzo4NDkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3NzQgYnVpbHRpbi9tZXJnZS5jOjY5NyBidWlsdGluL21lcmdlLmM6ODc3CiBtc2dpZCAiVW5hYmxlIHRvIHdyaXRlIGluZGV4LiIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkJ8OpY3JpcmUgbCdpbmRleC4iCiAKLSM6IG1pZHguYzo2NQorIzogbWlkeC5jOjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggZmlsZSAlcyBpcyB0b28gc21hbGwiCiBtc2dzdHIgImxlIGZpY2hpZXIgZCdpbmRleCBtdWx0aS1wYXF1ZXQgJXMgZXN0IHRyb3AgcGV0aXQiCiAKLSM6IG1pZHguYzo4MQorIzogbWlkeC5jOjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggc2lnbmF0dXJlIDB4JTA4eCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgMHglMDh4IgogbXNnc3RyICIiCi0ibGEgc2lnbmF0dXJlIGRlIGQnaW5kZXggbXVsdGktcGFxdWV0IDB4JTA4eCBuZSBjb3JyZXNwb25kIHBhcyDDoCBsYSBzaWduYXR1cmUgIgorImxhIHNpZ25hdHVyZSBkZSBsJ2luZGV4IG11bHRpLXBhcXVldCAweCUwOHggbmUgY29ycmVzcG9uZCBwYXMgw6AgbGEgc2lnbmF0dXJlICIKICIweCUwOHgiCiAKLSM6IG1pZHguYzo4NgorIzogbWlkeC5jOjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggdmVyc2lvbiAlZCBub3QgcmVjb2duaXplZCIKIG1zZ3N0ciAibGEgdmVyc2lvbiBkJ2luZGV4IG11bHRpLXBhcXVldCAlZCBuJ2VzdCBwYXMgcmVjb25udWUiCiAKLSM6IG1pZHguYzo5MQorIzogbWlkeC5jOjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImhhc2ggdmVyc2lvbiAldSBkb2VzIG5vdCBtYXRjaCIKIG1zZ3N0ciAibGEgdmVyc2lvbiAldSBkdSBjb25kZW5zw6kgbmUgY29ycmVzcG9uZCBwYXMiCiAKLSM6IG1pZHguYzoxMDUKKyM6IG1pZHguYzoxMDgKIG1zZ2lkICJpbnZhbGlkIGNodW5rIG9mZnNldCAodG9vIGxhcmdlKSIKIG1zZ3N0ciAiZMOpY2FsYWdlIGRlIHNlY3Rpb24gaW52YWxpZGUgKHRyb3AgZ3JhbmQpIgogCi0jOiBtaWR4LmM6MTI5CisjOiBtaWR4LmM6MTMyCiBtc2dpZCAidGVybWluYXRpbmcgbXVsdGktcGFjay1pbmRleCBjaHVuayBpZCBhcHBlYXJzIGVhcmxpZXIgdGhhbiBleHBlY3RlZCIKIG1zZ3N0ciAiIgogImlkZW50aWZpYW50IGRlIHRlcm1pbmFpc29uIGRlIHRyb27Dp29uIGQnaW5kZXggbXVsdGktcGFxdWV0IHRlcm1pbmFudCAiCiAiYXBwYXJhw650IHBsdXMgdMO0dCBxdSdhdHRlbmR1IgogCi0jOiBtaWR4LmM6MTQyCisjOiBtaWR4LmM6MTQ1CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIHBhY2stbmFtZSBjaHVuayIKIG1zZ3N0ciAiaW5kZXggbXVsdGktcGFxdWV0IG1hbnF1ZSBkZSB0cm9uw6dvbiBkZSBub20gZGUgcGFxdWV0IgogCi0jOiBtaWR4LmM6MTQ0CisjOiBtaWR4LmM6MTQ3CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIE9JRCBmYW5vdXQgY2h1bmsiCiBtc2dzdHIgImluZGV4IG11bHRpLXBhcXVldCBtYW5xdWUgZGUgdHJvbsOnb24gZGUgZCfDqXRhbGVtZW50IE9JRCByZXF1aXMiCiAKLSM6IG1pZHguYzoxNDYKKyM6IG1pZHguYzoxNDkKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgT0lEIGxvb2t1cCBjaHVuayIKIG1zZ3N0ciAiaW5kZXggbXVsdGktcGFxdWV0IG1hbnF1ZSBkZSB0cm9uw6dvbiBkZSByZWNoZXJjaGUgT0lEIgogCi0jOiBtaWR4LmM6MTQ4CisjOiBtaWR4LmM6MTUxCiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIG9iamVjdCBvZmZzZXRzIGNodW5rIgogbXNnc3RyICJpbmRleCBtdWx0aS1wYXF1ZXQgbWFucXVlIGRlIHRyb27Dp29uIGRlIGTDqWNhbGFnZSBkJ29iamV0IgogCi0jOiBtaWR4LmM6MTYyCisjOiBtaWR4LmM6MTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggcGFjayBuYW1lcyBvdXQgb2Ygb3JkZXI6ICclcycgYmVmb3JlICclcyciCiBtc2dzdHIgIiIKICJpbmRleCBtdWx0aS1wYXF1ZXQgbGVzIG5vbXMgZGUgcGFxdWV0cyBzb250IGVuIGTDqXNvcmRyZcKgOiAnJXMnIGF2YW50ICclcyciCiAKLSM6IG1pZHguYzoyMDUKKyM6IG1pZHguYzoyMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2staW50LWlkOiAldSAoJXUgdG90YWwgcGFja3MpIgogbXNnc3RyICJtYXV2YWlzIHBhY2staW50LWlkwqA6ICV1ICgldSBwYXF1ZXRzIGF1IHRvdGFsKSIKIAotIzogbWlkeC5jOjI0NgorIzogbWlkeC5jOjI2MAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggc3RvcmVzIGEgNjQtYml0IG9mZnNldCwgYnV0IG9mZl90IGlzIHRvbyBzbWFsbCIKIG1zZ3N0ciAiIgogIm11bHRpLXBhY2staW5kZXggc3RvY2sgdW4gZMOpY2FsYWdlIGVuIDY0LWJpdCwgbWFpcyBvZmZfdCBlc3QgdHJvcCBwZXRpdCIKIAotIzogbWlkeC5jOjI3MQorIzogbWlkeC5jOjI4OAogbXNnaWQgImVycm9yIHByZXBhcmluZyBwYWNrZmlsZSBmcm9tIG11bHRpLXBhY2staW5kZXgiCiBtc2dzdHIgImVycmV1ciDDoCBsYSBwcsOpcGFyYXRpb24gZHUgZmljaGllciBwYXF1ZXQgZGVwdWlzIHVuIGluZGV4IG11bHRpLXBhcXVldCIKIAotIzogbWlkeC5jOjQwNworIzogbWlkeC5jOjQ3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gYWRkIHBhY2tmaWxlICclcyciCiBtc2dzdHIgIsOpY2hlYyBkZSBsJ2Fqb3V0IGR1IGZpY2hpZXIgcGFxdWV0ICclcyciCiAKLSM6IG1pZHguYzo0MTMKKyM6IG1pZHguYzo0NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFjay1pbmRleCAnJXMnIgogbXNnc3RyICLDqWNoZWMgw6AgbCdvdXZlcnR1cmUgZHUgZmljaGllciBwYXF1ZXQgJyVzJyIKIAotIzogbWlkeC5jOjUwNworIzogbWlkeC5jOjUzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9jYXRlIG9iamVjdCAlZCBpbiBwYWNrZmlsZSIKIG1zZ3N0ciAiw6ljaGVjIGRlIGxvY2FsaXNhdGlvbiBkZSBsJ29iamV0ICVkIGRhbnMgbGUgZmljaGllciBwYXF1ZXQiCiAKLSM6IG1pZHguYzo5NDMKKyM6IG1pZHguYzo4NDIKK21zZ2lkICJBZGRpbmcgcGFja2ZpbGVzIHRvIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIkFqb3V0IGRlIGZpY2hpZXJzIHBhcXVldCDDoCB1biBpbmRleCBtdWx0aS1wYXF1ZXQiCisKKyM6IG1pZHguYzo4NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIG5vdCBzZWUgcGFjay1maWxlICVzIHRvIGRyb3AiCittc2dzdHIgImZpY2hpZXIgcGFxdWV0IMOgIMOpbGltaW5lciAlcyBub24gdHJvdXbDqSIKKworIzogbWlkeC5jOjk3MworbXNnaWQgIldyaXRpbmcgY2h1bmtzIHRvIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIsOJY3JpdHVyZSBkZXMgc2VjdGlvbnMgZGFucyBsJ2luZGV4IG11bHRpLXBhcXVldCIKKworIzogbWlkeC5jOjEwNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNsZWFyIG11bHRpLXBhY2staW5kZXggYXQgJXMiCiBtc2dzdHIgIsOpY2hlYyBkdSBuZXR0b3lhZ2UgZGUgbCdpbmRleCBkZSBtdWx0aS1wYXF1ZXQgw6AgJXMiCiAKLSM6IG1pZHguYzo5ODEKKyM6IG1pZHguYzoxMTA4Cittc2dpZCAiTG9va2luZyBmb3IgcmVmZXJlbmNlZCBwYWNrZmlsZXMiCittc2dzdHIgIlJlY2hlcmNoZSBkZSBmaWNoaWVycyBwYXF1ZXRzIHLDqWbDqXJlbmPDqXMiCisKKyM6IG1pZHguYzoxMTIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJvaWQgZmFub3V0IG91dCBvZiBvcmRlcjogZmFub3V0WyVkXSA9ICU8UFJJeDMyPiA+ICU8UFJJeDMyPiA9IGZhbm91dFslZF0iCkBAIC0zNTAwLDQ2ICs1MDQyLDcwIEBACiAiw6l0YWxlbWVudCBvaWQgZW4gZMOpc29yZHJlwqA6IMOpdGFsZW1lbnRbJWRdID0gJTxQUkl4MzI+ID4gJTxQUkl4MzI+ID0gIgogIsOpdGFsZW1lbnRbJWRdIgogCi0jOiBtaWR4LmM6OTkyCisjOiBtaWR4LmM6MTEyOAorbXNnaWQgIlZlcmlmeWluZyBPSUQgb3JkZXIgaW4gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAiVsOpcmlmaWNhdGlvbiBkZSBsJ29yZHJlIGRlcyBPSUQgZGFucyBsJ2luZGV4IG11bHRpLXBhcXVldCIKKworIzogbWlkeC5jOjExMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAib2lkIGxvb2t1cCBvdXQgb2Ygb3JkZXI6IG9pZFslZF0gPSAlcyA+PSAlcyA9IG9pZFslZF0iCiBtc2dzdHIgInJlY2hlcmNoZSBkJ29pZCBlbiBkw6lzb3JkcmXCoDogb2lkWyVkXSA9ICVzID49ICVzID0gb2lkWyVkXSIKIAotIzogbWlkeC5jOjk5NgorIzogbWlkeC5jOjExNTcKK21zZ2lkICJTb3J0aW5nIG9iamVjdHMgYnkgcGFja2ZpbGUiCittc2dzdHIgIkNsYXNzZW1lbnQgZGVzIG9iamV0cyBwYXIgZmljaGllciBwYXF1ZXQiCisKKyM6IG1pZHguYzoxMTY0CiBtc2dpZCAiVmVyaWZ5aW5nIG9iamVjdCBvZmZzZXRzIgogbXNnc3RyICJWw6lyaWZpY2F0aW9uIGRlcyBkw6ljYWxhZ2VzIGRlcyBvYmpldHMiCiAKLSM6IG1pZHguYzoxMDA0CisjOiBtaWR4LmM6MTE4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBwYWNrIGVudHJ5IGZvciBvaWRbJWRdID0gJXMiCiBtc2dzdHIgIsOpY2hlYyBkZSBsYSBsZWN0dXJlIGRlIGwnw6lsw6ltZW50IGRlIGNhY2hlIHBvdXIgb2lkWyVkXSA9ICVzIgogCi0jOiBtaWR4LmM6MTAxMAorIzogbWlkeC5jOjExODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvYWQgcGFjay1pbmRleCBmb3IgcGFja2ZpbGUgJXMiCiBtc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSBsZSBmaWNoaWVyIHBhcXVldCAlcyIKIAotIzogbWlkeC5jOjEwMTkKKyM6IG1pZHguYzoxMTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImluY29ycmVjdCBvYmplY3Qgb2Zmc2V0IGZvciBvaWRbJWRdID0gJXM6ICU8UFJJeDY0PiAhPSAlPFBSSXg2ND4iCi1tc2dzdHIgImTDqWNhbGFnZSBkJ29iamV0IGluY29ycmVjdGUgcG91ciBvaWRbJWRdID0gJXPCoDogJTxQUkl4NjQ+ICE9ICU8UFJJeDY0PiIKK21zZ3N0ciAiZMOpY2FsYWdlIGQnb2JqZXQgaW5jb3JyZWN0IHBvdXIgb2lkWyVkXSA9ICVzwqA6ICU8UFJJeDY0PiAhPSAlPFBSSXg2ND4iCiAKLSM6IG5hbWUtaGFzaC5jOjUzMgorIzogbWlkeC5jOjEyMjAKK21zZ2lkICJDb3VudGluZyByZWZlcmVuY2VkIG9iamVjdHMiCittc2dzdHIgIkNvbXB0YWdlIGRlcyBvYmpldHMgcsOpZsOpcmVuY8OpcyIKKworIzogbWlkeC5jOjEyMzAKK21zZ2lkICJGaW5kaW5nIGFuZCBkZWxldGluZyB1bnJlZmVyZW5jZWQgcGFja2ZpbGVzIgorbXNnc3RyICJSZWNoZXJjaGUgZXQgZWZmYWNlbWVudCBkZXMgZmljaGllcnMgcGFxdWV0cyBub24tcsOpZsOpcmVuY8OpcyIKKworIzogbWlkeC5jOjEzODgKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgcGFjay1vYmplY3RzIgorbXNnc3RyICJJbXBvc3NpYmxlIGRlIGTDqW1hcnJlciBsZSBncm91cGVtZW50IGQnb2JqZXRzIgorCisjOiBtaWR4LmM6MTQwNworbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggcGFjay1vYmplY3RzIgorbXNnc3RyICJJbXBvc3NpYmxlIGRlIGZpbmlyIGxlIGdyb3VwZW1lbnQgZCdvYmpldHMiCisKKyM6IG5hbWUtaGFzaC5jOjUzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxhenlfZGlyIHRocmVhZDogJXMiCiBtc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIGxlIGZpbCBsYXp5X2RpciA6ICVzIgogCi0jOiBuYW1lLWhhc2guYzo1NTQKKyM6IG5hbWUtaGFzaC5jOjU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciBsZSBmaWwgbGF6eV9uYW1lIDogJXMiCiAKLSM6IG5hbWUtaGFzaC5jOjU2MAorIzogbmFtZS1oYXNoLmM6NTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBqb2luIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGpvaW5kcmUgbGUgZmlsIGxhenlfbmFtZSA6ICVzIgogCi0jOiBub3Rlcy1tZXJnZS5jOjI3NQorIzogbm90ZXMtbWVyZ2UuYzoyNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBwcmV2aW91cyBub3RlcyBtZXJnZSAoJXMgZXhpc3RzKS5cbiIKQEAgLTM1NTAsMjEgKzUxMTYsMjEgQEAKICJWZXVpbGxleiB1dGlsaXNlciAnZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0JyBvdSAnZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQnICIKICJwb3VyIHZhbGlkZXIvYWJhbmRvbm5lciBsYSBmdXNpb24gZW4gY291cnMgYXZhbnQgZCdlbiBkw6ltYXJyZXIgdW5lIG5vdXZlbGxlLiIKIAotIzogbm90ZXMtbWVyZ2UuYzoyODIKKyM6IG5vdGVzLW1lcmdlLmM6Mjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBub3RlcyBtZXJnZSAoJXMgZXhpc3RzKS4iCiBtc2dzdHIgIlZvdXMgbidhdmV6IHBhcyB0ZXJtaW7DqSB2b3RyZSBmdXNpb24gZGUgbm90ZXMgKCVzIGV4aXN0ZSkuIgogCi0jOiBub3Rlcy11dGlscy5jOjQ1CisjOiBub3Rlcy11dGlscy5jOjQ2CiBtc2dpZCAiQ2Fubm90IGNvbW1pdCB1bmluaXRpYWxpemVkL3VucmVmZXJlbmNlZCBub3RlcyB0cmVlIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHZhbGlkZXIgdW4gYXJicmUgZGUgbm90ZXMgbm9uIGluaXRpYWxpc8OpL3LDqWbDqXJlbmPDqSIKIAotIzogbm90ZXMtdXRpbHMuYzoxMDQKKyM6IG5vdGVzLXV0aWxzLmM6MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCBub3Rlcy5yZXdyaXRlTW9kZSB2YWx1ZTogJyVzJyIKIG1zZ3N0ciAiTWF1dmFpc2UgdmFsZXVyIGRlIG5vdGVzLnJld3JpdGVNb2RlIDogJyVzJyIKIAotIzogbm90ZXMtdXRpbHMuYzoxMTQKKyM6IG5vdGVzLXV0aWxzLmM6MTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIHJld3JpdGUgbm90ZXMgaW4gJXMgKG91dHNpZGUgb2YgcmVmcy9ub3Rlcy8pIgogbXNnc3RyICJSZWZ1cyBkZSByw6nDqWNyaXJlIGRlcyBub3RlcyBkYW5zICVzIChob3JzIGRlIHJlZnMvbm90ZXMvKSIKQEAgLTM1NzMsMTIgKzUxMzksMTIgQEAKICMuIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSwgdGhlIHNlY29uZCAlcyBpcwogIy4gaXRzIHZhbHVlLgogIy4KLSM6IG5vdGVzLXV0aWxzLmM6MTQ0CisjOiBub3Rlcy11dGlscy5jOjE0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgJXMgdmFsdWU6ICclcyciCiBtc2dzdHIgIk1hdXZhaXNlIHZhbGV1ciBkZSAlcyA6ICclcyciCiAKLSM6IG9iamVjdC5jOjU0CisjOiBvYmplY3QuYzo1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9iamVjdCB0eXBlIFwiJXNcIiIKIG1zZ3N0ciAidHlwZSBkJ29iamV0IGludmFsaWRlIFwiJXNcIiIKQEAgLTM1OTgsMzEgKzUxNjQsOTEgQEAKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2Ugb2JqZWN0OiAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGwnb2JqZXQgOiAlcyIKIAotIzogb2JqZWN0LmM6MjY2IG9iamVjdC5jOjI3NworIzogb2JqZWN0LmM6MjY2IG9iamVjdC5jOjI3OAogIywgYy1mb3JtYXQKLW1zZ2lkICJzaGExIG1pc21hdGNoICVzIgotbXNnc3RyICJpbmNvaMOpcmVuY2UgZGUgc2hhMSAlcyIKK21zZ2lkICJoYXNoIG1pc21hdGNoICVzIgorbXNnc3RyICJpbmNvaMOpcmVuY2UgZGUgaGFjaGFnZSAlcyIKIAotIzogcGFja2ZpbGUuYzo2MDcKKyM6IHBhY2tmaWxlLmM6NjI5CiBtc2dpZCAib2Zmc2V0IGJlZm9yZSBlbmQgb2YgcGFja2ZpbGUgKGJyb2tlbiAuaWR4PykiCiBtc2dzdHIgIm9mZnNldCBhdmFudCBsYSBmaW4gZHUgZmljaGllciBwYXF1ZXQgKC5pZHggY2Fzc8OpwqA/KSIKIAotIzogcGFja2ZpbGUuYzoxODY0CisjOiBwYWNrZmlsZS5jOjE4OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAib2Zmc2V0IGJlZm9yZSBzdGFydCBvZiBwYWNrIGluZGV4IGZvciAlcyAoY29ycnVwdCBpbmRleD8pIgogbXNnc3RyICJvZmZzZXQgYXZhbnQgbGUgZMOpYnV0IGRlIGwnaW5kZXggZGUgcGFxdWV0IHBvdXIgJXMgKGluZGV4IGNvcnJvbXB1wqA/KSIKIAotIzogcGFja2ZpbGUuYzoxODY4CisjOiBwYWNrZmlsZS5jOjE5MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAib2Zmc2V0IGJleW9uZCBlbmQgb2YgcGFjayBpbmRleCBmb3IgJXMgKHRydW5jYXRlZCBpbmRleD8pIgogbXNnc3RyICIiCiAib2Zmc2V0IGF1IGRlbMOgIGRlIGxhIGZpbiBkZSBsJ2luZGV4IGRlIHBhcXVldCBwb3VyICVzIChpbmRleCB0cm9ucXXDqcKgPykiCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo2NzIKKyM6IHBhY2stYml0bWFwLmM6ODAwIHBhY2stYml0bWFwLmM6ODA2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IHNpemUgb2YgJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgcsOpY3Vww6lyZXIgbGEgdGFpbGxlIGRlICVzIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVxdWlyZXMgYSB2YWx1ZSIKK21zZ3N0ciAiJXMgYSBiZXNvaW4gZCd1bmUgdmFsZXVyIgorCisjOiBwYXJzZS1vcHRpb25zLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgaW5jb21wYXRpYmxlIHdpdGggJXMiCittc2dzdHIgIiVzIGVzdCBpbmNvbXBhdGlibGUgYXZlYyAlcyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIDogaW5jb21wYXRpYmxlIHdpdGggc29tZXRoaW5nIGVsc2UiCittc2dzdHIgIiVzIGVzdCBpbmNvbXBhdGlibGUgYXZlYyB0b3V0ZSBhdXRyZSBvcHRpb24iCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MiBwYXJzZS1vcHRpb25zLmM6OTYgcGFyc2Utb3B0aW9ucy5jOjMxNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0YWtlcyBubyB2YWx1ZSIKK21zZ3N0ciAiJXMgbidhY2NlcHRlIGF1Y3VuZSB2YWxldXIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpc24ndCBhdmFpbGFibGUiCittc2dzdHIgIiVzIG4nZXN0IHBhcyBkaXNwb25pYmxlIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MjE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBub24tbmVnYXRpdmUgaW50ZWdlciB2YWx1ZSB3aXRoIGFuIG9wdGlvbmFsIGsvbS9nIHN1ZmZpeCIKK21zZ3N0ciAiJXMgYXR0ZW5kIHVuZSB2YWxldXIgZW50acOocmUgbm9uIG7DqWdhdGl2ZSBhdmVjIHVuZSBzdWZmaXhlIGsvbS9nIgorCisjOiBwYXJzZS1vcHRpb25zLmM6Mzg2CisjLCBjLWZvcm1hdAorbXNnaWQgImFtYmlndW91cyBvcHRpb246ICVzIChjb3VsZCBiZSAtLSVzJXMgb3IgLS0lcyVzKSIKK21zZ3N0ciAib3B0aW9uIGFtYmlnw7xlwqA6ICVzIChkZXZyYWl0IMOqdHJlIC0tJXMlcyBvdSAtLSVzJXMpIgorCisjOiBwYXJzZS1vcHRpb25zLmM6NDIwIHBhcnNlLW9wdGlvbnMuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIHlvdSBtZWFuIGAtLSVzYCAod2l0aCB0d28gZGFzaGVzKT8iCittc2dzdHIgInZvdWxpZXotdm91cyBkaXJlIGAtLSVzYCAoYXZlYyBkZXV4IHNpZ25lcyBtb2lucyk/IgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgIm9wdGlvbiBpbmNvbm51ZSDCq8KgJXPCoMK7IgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODU5CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gc3dpdGNoIGAlYyciCittc2dzdHIgImJhc2N1bGUgaW5jb25udWUgwqvCoCVjwqDCuyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG5vbi1hc2NpaSBvcHRpb24gaW4gc3RyaW5nOiBgJXMnIgorbXNnc3RyICJvcHRpb24gbm9uLWFzY2lpIGluY29ubnVlIGRhbnMgbGEgY2hhw65uZcKgOiAnJXMnIgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODg1CiBtc2dpZCAiLi4uIgogbXNnc3RyICIuLi4iCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo2OTEKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidXNhZ2U6ICVzIgogbXNnc3RyICJ1c2FnZSA6ICVzIgpAQCAtMzYzMCw2MSArNTI1Niw3NiBAQAogIy4gVFJBTlNMQVRPUlM6IHRoZSBjb2xvbiBoZXJlIHNob3VsZCBhbGlnbiB3aXRoIHRoZQogIy4gb25lIGluICJ1c2FnZTogJXMiIHRyYW5zbGF0aW9uLgogIy4KLSM6IHBhcnNlLW9wdGlvbnMuYzo2OTcKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgb3I6ICVzIgogbXNnc3RyICIgICBvdSA6ICVzIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzAwCisjOiBwYXJzZS1vcHRpb25zLmM6OTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlcyIKIG1zZ3N0ciAiICAgICVzIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzM5CisjOiBwYXJzZS1vcHRpb25zLmM6OTUyCiBtc2dpZCAiLU5VTSIKIG1zZ3N0ciAiLU5VTSIKIAotIzogcGFyc2Utb3B0aW9ucy1jYi5jOjM3CisjOiBwYXJzZS1vcHRpb25zLmM6OTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImFsaWFzIG9mIC0tJXMiCittc2dzdHIgImFsaWFzIHBvdXIgLS0lcyIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjIwIHBhcnNlLW9wdGlvbnMtY2IuYzoyNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICJsJ29wdGlvbiAnJXMnIGF0dGVuZCB1bmUgdmFsZXVyIG51bcOpcmlxdWUiCisKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzo0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgZXhwaXJhdGlvbiBkYXRlICclcyciCiBtc2dzdHIgImRhdGUgZCdleHBpcmF0aW9uIG1hbGZvcm3DqWXCoDogJyVzJyIKIAotIzogcGFyc2Utb3B0aW9ucy1jYi5jOjEwOQorIzogcGFyc2Utb3B0aW9ucy1jYi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGV4cGVjdHMgXCJhbHdheXNcIiwgXCJhdXRvXCIsIG9yIFwibmV2ZXJcIiIKK21zZ3N0ciAibCdvcHRpb24gJyVzJyBhdHRlbmQgXCJhbHdheXNcIiwgXCJhdXRvXCIgb3UgXCJuZXZlclwiIgorCisjOiBwYXJzZS1vcHRpb25zLWNiLmM6MTMwIHBhcnNlLW9wdGlvbnMtY2IuYzoxNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG9iamVjdCBuYW1lICclcyciCiBtc2dzdHIgIm5vbSBkJ29iamV0IG1hbGZvcm3DqSAnJXMnIgogCi0jOiBwYXRoLmM6ODk0CisjOiBwYXRoLmM6OTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBtYWtlICVzIHdyaXRhYmxlIGJ5IGdyb3VwIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHJlbmRyZSAlcyBpbnNjcmlwdGlibGUgcG91ciBsZSBncm91cGUiCiAKLSM6IHBhdGhzcGVjLmM6MTI5CisjOiBwYXRoc3BlYy5jOjEzMAogbXNnaWQgIkVzY2FwZSBjaGFyYWN0ZXIgJ1xcJyBub3QgYWxsb3dlZCBhcyBsYXN0IGNoYXJhY3RlciBpbiBhdHRyIHZhbHVlIgogbXNnc3RyICIiCiAiTGUgY2FyYWN0w6hyZSBkJ8OpY2hhcHBlbWVudCAnXFxcXCcgaW50ZXJkaXQgY29tbWUgZGVybmllciBjYXJhY3TDqHJlIGRhbnMgdW5lICIKICJ2YWxldXIgZCdhdHRyaWJ1dCIKIAotIzogcGF0aHNwZWMuYzoxNDcKKyM6IHBhdGhzcGVjLmM6MTQ4CiBtc2dpZCAiT25seSBvbmUgJ2F0dHI6JyBzcGVjaWZpY2F0aW9uIGlzIGFsbG93ZWQuIgogbXNnc3RyICJVbmUgc2V1bGUgc3DDqWNpZmljYXRpb24gJ2F0dHI6JyBlc3QgYXV0b3Jpc8OpZS4iCiAKLSM6IHBhdGhzcGVjLmM6MTUwCisjOiBwYXRoc3BlYy5jOjE1MQogbXNnaWQgImF0dHIgc3BlYyBtdXN0IG5vdCBiZSBlbXB0eSIKIG1zZ3N0ciAidW4gc3DDqWNpZmljYXRldXIgZCdhdHRyaWJ1dCBuZSBwZXV0IHBhcyDDqnRyZSB2aWRlIgogCi0jOiBwYXRoc3BlYy5jOjE5MworIzogcGF0aHNwZWMuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBhdHRyaWJ1dGUgbmFtZSAlcyIKIG1zZ3N0ciAibm9tIGQnYXR0cmlidXQgaW52YWxpZGUgJXMiCiAKLSM6IHBhdGhzcGVjLmM6MjU4CisjOiBwYXRoc3BlYy5jOjI1OQogbXNnaWQgImdsb2JhbCAnZ2xvYicgYW5kICdub2dsb2InIHBhdGhzcGVjIHNldHRpbmdzIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIiIKICJsZXMgcsOpZ2xhZ2VzIGRlIHNww6ljaWZpY2F0ZXVycyBkZSBjaGVtaW4gZ8OpbsOpcmF1eCAnZ2xvYicgZXQgJ25vZ2xvYicgc29udCAiCiAiaW5jb21wYXRpYmxlcyIKIAotIzogcGF0aHNwZWMuYzoyNjUKKyM6IHBhdGhzcGVjLmM6MjY2CiBtc2dpZCAiIgogImdsb2JhbCAnbGl0ZXJhbCcgcGF0aHNwZWMgc2V0dGluZyBpcyBpbmNvbXBhdGlibGUgd2l0aCBhbGwgb3RoZXIgZ2xvYmFsICIKICJwYXRoc3BlYyBzZXR0aW5ncyIKQEAgLTM2OTIsMTMyICs1MzMzLDIwNSBAQAogImxlIHLDqWdsYWdlIGdsb2JhbCBkZSBzcMOpY2lmaWNhdGV1ciBkZSBjaGVtaW4gJ2xpdGVyYWwnIGVzdCBpbmNvbXBhdGlibGUgYXZlYyAiCiAidG91cyBsZXMgYXV0cmVzIHLDqWdsYWdlcyBnbG9iYXV4IGRlIHNww6ljaWZpY2F0ZXVyIGRlIGNoZW1pbiIKIAotIzogcGF0aHNwZWMuYzozMDUKKyM6IHBhdGhzcGVjLmM6MzA2CiBtc2dpZCAiaW52YWxpZCBwYXJhbWV0ZXIgZm9yIHBhdGhzcGVjIG1hZ2ljICdwcmVmaXgnIgogbXNnc3RyICJwYXJhbcOodHJlIGludmFsaWRlIHBvdXIgbGUgc3DDqWNpZmljYXRldXIgbWFnaXF1ZSBkZSBjaGVtaW4gJ3ByZWZpeCciCiAKLSM6IHBhdGhzcGVjLmM6MzI2CisjOiBwYXRoc3BlYy5jOjMyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHBhdGhzcGVjIG1hZ2ljICclLipzJyBpbiAnJXMnIgogbXNnc3RyICJMYSBzcMOpY2lmaWNhdGlvbiBtYWdpcXVlIGRlIGNoZW1pbiAnJS4qcycgZXN0IGludmFsaWRlIGRhbnMgJyVzJyIKIAotIzogcGF0aHNwZWMuYzozMzEKKyM6IHBhdGhzcGVjLmM6MzMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1pc3NpbmcgJyknIGF0IHRoZSBlbmQgb2YgcGF0aHNwZWMgbWFnaWMgaW4gJyVzJyIKIG1zZ3N0ciAiJyknIG1hbnF1YW50ZSDDoCBsYSBmaW4gZHUgc3DDqWNpZmljYXRldXIgbWFnaXF1ZSBkZSBjaGVtaW4gZGFucyAnJXMnIgogCi0jOiBwYXRoc3BlYy5jOjM2OQorIzogcGF0aHNwZWMuYzozNzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5pbXBsZW1lbnRlZCBwYXRoc3BlYyBtYWdpYyAnJWMnIGluICclcyciCiBtc2dzdHIgIlNww6ljaWZpY2F0ZXVyIG1hZ2lxdWUgJyVjJyBub24gaW1wbMOpbWVudMOpIGRhbnMgJyVzJyIKIAotIzogcGF0aHNwZWMuYzo0MjgKKyM6IHBhdGhzcGVjLmM6NDI5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAnbGl0ZXJhbCcgYW5kICdnbG9iJyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICIlcyA6ICdsaXRlcmFsJyBldCAnZ2xvYicgc29udCBpbmNvbXBhdGlibGVzIgogCi0jOiBwYXRoc3BlYy5jOjQ0MQorIzogcGF0aHNwZWMuYzo0NDIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJXM6ICclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IgotbXNnc3RyICIlcyA6ICclcycgZXN0IGhvcnMgZHUgZMOpcMO0dCIKK21zZ2lkICIlczogJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkgYXQgJyVzJyIKK21zZ3N0ciAiJXMgOiAnJXMnIGVzdCBob3JzIGR1IGTDqXDDtHQgw6AgJyVzJyIKIAotIzogcGF0aHNwZWMuYzo1MTUKKyM6IHBhdGhzcGVjLmM6NTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgKG1uZW1vbmljOiAnJWMnKSIKIG1zZ3N0ciAiJyVzJyAobW7DqW1vbmlxdWXCoDogJyVjJykiCiAKLSM6IHBhdGhzcGVjLmM6NTI1CisjOiBwYXRoc3BlYy5jOjUyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogcGF0aHNwZWMgbWFnaWMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvbW1hbmQ6ICVzIgogbXNnc3RyICIiCiAiJXMgOiBsZSBzcMOpY2lmaWNhdGV1ciBtYWdpcXVlIGRlIGNoZW1pbiBuJ2VzdCBwYXMgc3VwcG9ydMOpIHBhciBjZXR0ZSAiCiAiY29tbWFuZGUgOiAlcyIKIAotIzogcGF0aHNwZWMuYzo1OTIKKyM6IHBhdGhzcGVjLmM6NTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGhzcGVjICclcycgaXMgYmV5b25kIGEgc3ltYm9saWMgbGluayIKIG1zZ3N0ciAibGUgY2hlbWluICclcycgZXN0IGF1LWRlbMOgIGQndW4gbGllbiBzeW1ib2xpcXVlIgogCi0jOiBwa3QtbGluZS5jOjEwNAorIzogcGF0aHNwZWMuYzo2MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBpcyBiYWRseSBxdW90ZWQ6ICVzIgorbXNnc3RyICJsYSBsaWduZSBlc3QgbWFsIGNpdMOpZcKgOiAlcyIKKworIzogcGt0LWxpbmUuYzo5MgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmbHVzaCBwYWNrZXQiCittc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlIGxlIHBhcXVldCBkZSB2aWRhZ2UiCisKKyM6IHBrdC1saW5lLmM6OTkKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZGVsaW0gcGFja2V0IgorbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBwYXF1ZXQgZGUgZMOpbGltaXRhdGlvbiIKKworIzogcGt0LWxpbmUuYzoxMDYKIG1zZ2lkICJmbHVzaCBwYWNrZXQgd3JpdGUgZmFpbGVkIgogbXNnc3RyICLDqWNoZWMgZGUgbCfDqWNyaXR1cmUgZHUgdmlkYWdlIGRlIHBhcXVldCIKIAotIzogcGt0LWxpbmUuYzoxNDIgcGt0LWxpbmUuYzoyMjgKKyM6IHBrdC1saW5lLmM6MTQ2IHBrdC1saW5lLmM6MjMyCiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGltcG9zc2libHkgbG9uZyBsaW5lIgogbXNnc3RyICJlcnJldXIgZGUgcHJvdG9jb2xlwqA6IGxpZ25lIGltcG9zc2libGVtZW50IHRyb3AgbG9uZ3VlIgogCi0jOiBwa3QtbGluZS5jOjE1OCBwa3QtbGluZS5jOjE2MAorIzogcGt0LWxpbmUuYzoxNjIgcGt0LWxpbmUuYzoxNjQKIG1zZ2lkICJwYWNrZXQgd3JpdGUgd2l0aCBmb3JtYXQgZmFpbGVkIgogbXNnc3RyICLDqWNoZWMgZGUgbCfDqWNyaXR1cmUgZCd1biBwYXF1ZXQgYXZlYyBmb3JtYXQiCiAKLSM6IHBrdC1saW5lLmM6MTkyCisjOiBwa3QtbGluZS5jOjE5NgogbXNnaWQgInBhY2tldCB3cml0ZSBmYWlsZWQgLSBkYXRhIGV4Y2VlZHMgbWF4IHBhY2tldCBzaXplIgogbXNnc3RyICIiCiAiw6ljaGVjIGRlIGwnw6ljcml0dXJlIGQndW4gcGFxdWV0wqDigJEgbGVzIGRvbm7DqWVzIGTDqXBhc3NlbnQgbGEgdGFpbGxlIG1heGltYWxlICIKICJkJ3VuIHBhcXVldCIKIAotIzogcGt0LWxpbmUuYzoxOTkgcGt0LWxpbmUuYzoyMDYKKyM6IHBrdC1saW5lLmM6MjAzIHBrdC1saW5lLmM6MjEwCiBtc2dpZCAicGFja2V0IHdyaXRlIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGRlIGwnw6ljcml0dXJlIGQndW4gcGFxdWV0IgogCi0jOiBwa3QtbGluZS5jOjI5MQorIzogcGt0LWxpbmUuYzoyOTUKIG1zZ2lkICJyZWFkIGVycm9yIgogbXNnc3RyICJlcnJldXIgZGUgbGVjdHVyZSIKIAotIzogcGt0LWxpbmUuYzoyOTkKKyM6IHBrdC1saW5lLmM6MzAzCiBtc2dpZCAidGhlIHJlbW90ZSBlbmQgaHVuZyB1cCB1bmV4cGVjdGVkbHkiCiBtc2dzdHIgIkwnaMO0dGUgZGlzdGFudCBhIGZlcm3DqSBsYSBjb25uZXhpb24gZGUgbWFuacOocmUgaW5hdHRlbmR1ZSIKIAotIzogcGt0LWxpbmUuYzozMjcKKyM6IHBrdC1saW5lLmM6MzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sIGVycm9yOiBiYWQgbGluZSBsZW5ndGggY2hhcmFjdGVyOiAlLjRzIgogbXNnc3RyICJlcnJldXIgZGUgcHJvdG9jb2xlwqA6IG1hdXZhaXMgY2FyYWN0w6hyZSBkZSBsb25ndWV1ciBkZSBsaWduZcKgOiAlLjRzIgogCi0jOiBwa3QtbGluZS5jOjMzNyBwa3QtbGluZS5jOjM0MgorIzogcGt0LWxpbmUuYzozNDEgcGt0LWxpbmUuYzozNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBsaW5lIGxlbmd0aCAlZCIKIG1zZ3N0ciAiZXJyZXVyIGRlIHByb3RvY29sZcKgOiBtYXV2YWlzZSBsb25ndWV1ciBkZSBsaWduZSAlZCIKIAotIzogcHJlbG9hZC1pbmRleC5jOjExOAorIzogcGt0LWxpbmUuYzozNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlIGVycm9yOiAlcyIKK21zZ3N0ciAiZXJyZXVyIGRpc3RhbnRlIDogJXMiCisKKyM6IHByZWxvYWQtaW5kZXguYzoxMTkKIG1zZ2lkICJSZWZyZXNoaW5nIGluZGV4IgogbXNnc3RyICJSYWZyYcOuY2hpc3NlbWVudCBkZSBsJ2luZGV4IgogCi0jOiBwcmVsb2FkLWluZGV4LmM6MTM3CisjOiBwcmVsb2FkLWluZGV4LmM6MTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGhyZWFkZWQgbHN0YXQ6ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciBsZSBsc3RhdCBlbiBmaWwgOiAlcyIKIAotIzogcHJldHR5LmM6OTYyCisjOiBwcmV0dHkuYzo5ODEKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgLS1wcmV0dHkgZm9ybWF0IgogbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGUgZm9ybWF0IC0tcHJldHR5IgogCi0jOiByYW5nZS1kaWZmLmM6NTYKKyM6IHByb21pc29yLXJlbW90ZS5jOjIzCittc2dpZCAiUmVtb3RlIHdpdGggbm8gVVJMIgorbXNnc3RyICJEw6lww7R0IGRpc3RhbnQgc2FucyBVUkwiCisKKyM6IHByb21pc29yLXJlbW90ZS5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInByb21pc29yIHJlbW90ZSBuYW1lIGNhbm5vdCBiZWdpbiB3aXRoICcvJzogJXMiCittc2dzdHIgInVuIG5vbSBkZSBwcm9tZXR0ZXVyIGRpc3RhbnQgbmUgcGV1dCBwYXMgY29tbWVuY2VyIHBhciAnLyfCoDogJXMiCisKKyM6IHJhbmdlLWRpZmYuYzo3NQogbXNnaWQgImNvdWxkIG5vdCBzdGFydCBgbG9nYCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBkw6ltYXJyZXIgYGxvZ2AiCiAKLSM6IHJhbmdlLWRpZmYuYzo1OQorIzogcmFuZ2UtZGlmZi5jOjc3CiBtc2dpZCAiY291bGQgbm90IHJlYWQgYGxvZ2Agb3V0cHV0IgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGEgc29ydGllIGRlIGBsb2dgIgogCi0jOiByYW5nZS1kaWZmLmM6NzQgc2VxdWVuY2VyLmM6NDc2NAorIzogcmFuZ2UtZGlmZi5jOjk2IHNlcXVlbmNlci5jOjUwMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbW1pdCAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGUgY29tbWl0ICclcyciCiAKLSM6IHJhbmdlLWRpZmYuYzoyMjQKKyM6IHJhbmdlLWRpZmYuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGdpdCBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbCdlbnTDqnRlIGdpdCAnJS4qcyciCisKKyM6IHJhbmdlLWRpZmYuYzoyODUKIG1zZ2lkICJmYWlsZWQgdG8gZ2VuZXJhdGUgZGlmZiIKIG1zZ3N0ciAiw6ljaGVjIGRlIGxhIGfDqW7DqXJhdGlvbiBkZSBkaWZmIgogCi0jOiByYW5nZS1kaWZmLmM6NDU1IHJhbmdlLWRpZmYuYzo0NTcKKyM6IHJhbmdlLWRpZmYuYzo1MTggcmFuZ2UtZGlmZi5jOjUyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgbG9nIGZvciAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGUgam91cm5hbCBwb3VyICclcyciCiAKLSM6IHJlYWQtY2FjaGUuYzoxNDkwCisjOiByZWFkLWNhY2hlLmM6NjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIndpbGwgbm90IGFkZCBmaWxlIGFsaWFzICclcycgKCclcycgYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgpIgorbXNnc3RyICJwYXMgZCdham91dCBkJ2FsaWFzIGRlIGZpY2hpZXIgJyVzJyjCq8KgJXPCoMK7IGV4aXN0ZSBkw6lqw6AgZGFucyBsJ2luZGV4KSIKKworIzogcmVhZC1jYWNoZS5jOjY5NgorbXNnaWQgImNhbm5vdCBjcmVhdGUgYW4gZW1wdHkgYmxvYiBpbiB0aGUgb2JqZWN0IGRhdGFiYXNlIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciB1biBibG9iIHZpZGUgZGFucyBsYSBiYXNlIGRlIGRvbm7DqWUgZCdvYmpldHMiCisKKyM6IHJlYWQtY2FjaGUuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbiBvbmx5IGFkZCByZWd1bGFyIGZpbGVzLCBzeW1ib2xpYyBsaW5rcyBvciBnaXQtZGlyZWN0b3JpZXMiCittc2dzdHIgIiIKKyIlc8KgOiBuZSBwZXV0IGFqb3V0ZXIgcXVlIGRlcyBmaWNoaWVycyBub3JtYXV4LCBkZXMgbGllbnMgc3ltYm9saXF1ZXMgb3UgZGVzICIKKyJyw6lwZXJ0b2lyZXMgZ2l0IgorCisjOiByZWFkLWNhY2hlLmM6NzIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgaGF2ZSBhIGNvbW1pdCBjaGVja2VkIG91dCIKK21zZ3N0ciAiJyVzJyBuJ2EgcGFzIGRlIGNvbW1pdCBleHRyYWl0IgorCisjOiByZWFkLWNhY2hlLmM6Nzc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbmRleCBmaWxlICclcyciCittc2dzdHIgImluZGV4YXRpb24gZHUgZmljaGllciAnJXMnIGltcG9zc2libGUiCisKKyM6IHJlYWQtY2FjaGUuYzo3OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFkZCAnJXMnIHRvIGluZGV4IgorbXNnc3RyICJpbXBvc3NpYmxlIGQnYWpvdXRlciAnJXMnIMOgIGwnaW5kZXgiCisKKyM6IHJlYWQtY2FjaGUuYzo4MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJyVzJyIKK21zZ3N0ciAiZnN0YXQgZGUgJyVzJyBpbXBvc3NpYmxlIgorCisjOiByZWFkLWNhY2hlLmM6MTMzMAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGFwcGVhcnMgYXMgYm90aCBhIGZpbGUgYW5kIGFzIGEgZGlyZWN0b3J5IgorbXNnc3RyICInJXMnIGV4aXN0ZSDDoCBsYSBmb2lzIGNvbW1lIHVuIGZpY2hpZXIgZXQgdW4gcsOpcGVydG9pcmUiCisKKyM6IHJlYWQtY2FjaGUuYzoxNTM2CiBtc2dpZCAiUmVmcmVzaCBpbmRleCIKIG1zZ3N0ciAiUmFmcmHDrmNoaXIgbCdpbmRleCIKIAotIzogcmVhZC1jYWNoZS5jOjE2MDQKKyM6IHJlYWQtY2FjaGUuYzoxNjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJpbmRleC52ZXJzaW9uIHNldCwgYnV0IHRoZSB2YWx1ZSBpcyBpbnZhbGlkLlxuIgpAQCAtMzgyNiw3ICs1NTQwLDcgQEAKICJ2ZXJzaW9uIGQnaW5kZXggcmVuc2VpZ27DqWUsIG1haXMgbGEgdmFsZXVyIGVzdCBpbnZhbGlkZS5cbiIKICJVdGlsaXNhdGlvbiBkZSBsYSB2ZXJzaW9uICVpIgogCi0jOiByZWFkLWNhY2hlLmM6MTYxNAorIzogcmVhZC1jYWNoZS5jOjE2NjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkdJVF9JTkRFWF9WRVJTSU9OIHNldCwgYnV0IHRoZSB2YWx1ZSBpcyBpbnZhbGlkLlxuIgpAQCAtMzgzNSw2MCArNTU0OSwxNjEgQEAKICJHSVRfSU5ERVhfVkVSU0lPTiBlc3QgcmVuc2VpZ27DqSwgbWFpcyBsYSB2YWxldXIgZXN0IGludmFsaWRlLlxuIgogIlV0aWxpc2F0aW9uIGRlIGxhIHZlcnNpb24gJWkiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNzkyCisjOiByZWFkLWNhY2hlLmM6MTcxNworIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgc2lnbmF0dXJlIDB4JTA4eCIKK21zZ3N0ciAic2lnbmF0dXJlIGluY29ycmVjdGUgMHglMDh4IgorCisjOiByZWFkLWNhY2hlLmM6MTcyMAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgaW5kZXggdmVyc2lvbiAlZCIKK21zZ3N0ciAibWF1dmFpc2UgdmVyc2lvbiBkJ2luZGV4ICVkIgorCisjOiByZWFkLWNhY2hlLmM6MTcyOQorbXNnaWQgImJhZCBpbmRleCBmaWxlIHNoYTEgc2lnbmF0dXJlIgorbXNnc3RyICJtYXV2YWlzZSBzaWduYXR1cmUgc2hhMSBkJ2luZGV4IgorCisjOiByZWFkLWNhY2hlLmM6MTc1OQorIywgYy1mb3JtYXQKK21zZ2lkICJpbmRleCB1c2VzICUuNHMgZXh0ZW5zaW9uLCB3aGljaCB3ZSBkbyBub3QgdW5kZXJzdGFuZCIKK21zZ3N0ciAibCdpbmRleCB1dGlsaXNlIGwnZXh0ZW5zaW9uICUuNHMgcXVpIG4nZXN0IHBhcyBjb21wcmlzZSIKKworIzogcmVhZC1jYWNoZS5jOjE3NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJS40cyBleHRlbnNpb24iCittc2dzdHIgImV4dGVuc2lvbiAlLjRzIGlnbm9yw6llIgorCisjOiByZWFkLWNhY2hlLmM6MTc5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGluZGV4IGVudHJ5IGZvcm1hdCAweCUwOHgiCittc2dzdHIgImZvcm1hdCBkJ2VudHLDqWUgZCdpbmRleCBpbmNvbm51IDB4JTA4eCIKKworIzogcmVhZC1jYWNoZS5jOjE4MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG5hbWUgZmllbGQgaW4gdGhlIGluZGV4LCBuZWFyIHBhdGggJyVzJyIKIG1zZ3N0ciAiY2hhbXAgZGUgbm9tIG1hbGZvcm3DqSBkYW5zIGwnaW5kZXgsIHByw6hzIGR1IGNoZW1pbiAnJXMnIgogCi0jOiByZWFkLWNhY2hlLmM6MTk2MCByZXJlcmUuYzo1NjUgcmVyZXJlLmM6NTk5IHJlcmVyZS5jOjExMTEgYnVpbHRpbi9hZGQuYzo0NTgKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTc3IGJ1aWx0aW4vY2hlY2tvdXQuYzoyODkgYnVpbHRpbi9jaGVja291dC5jOjU4NQotIzogYnVpbHRpbi9jaGVja291dC5jOjk1MyBidWlsdGluL2NsZWFuLmM6OTU0IGJ1aWx0aW4vY29tbWl0LmM6MzQzCi0jOiBidWlsdGluL2RpZmYtdHJlZS5jOjExNSBidWlsdGluL2dyZXAuYzo0ODkgYnVpbHRpbi9tdi5jOjE0NAotIzogYnVpbHRpbi9yZXNldC5jOjI0NCBidWlsdGluL3JtLmM6MjcwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzozMjkKKyM6IHJlYWQtY2FjaGUuYzoxODcxCittc2dpZCAidW5vcmRlcmVkIHN0YWdlIGVudHJpZXMgaW4gaW5kZXgiCittc2dzdHIgImVudHLDqWVzIGRlIHByw6lwYXJhdGlvbiBub24gb3Jkb25uw6llcyBkYW5zIGwnaW5kZXgiCisKKyM6IHJlYWQtY2FjaGUuYzoxODc0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YWdlIGVudHJpZXMgZm9yIG1lcmdlZCBmaWxlICclcyciCittc2dzdHIgImVudHLDqWVzIG11bHRpcGxlcyBkZSBwcsOpcGFyYXRpb24gcG91ciBsZSBmaWNoaWVyIGZ1c2lvbm7DqSAnJXMnIgorCisjOiByZWFkLWNhY2hlLmM6MTg3NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBmb3IgJyVzJyIKK21zZ3N0ciAiZW50csOpZXMgZGUgcHLDqXBhcmF0aW9uIG5vbiBvcmRvbm7DqWVzIHBvdXIgJyVzJyIKKworIzogcmVhZC1jYWNoZS5jOjE5ODMgcmVhZC1jYWNoZS5jOjIyNzEgcmVyZXJlLmM6NTY1IHJlcmVyZS5jOjU5OSByZXJlcmUuYzoxMTExCisjOiBzdWJtb2R1bGUuYzoxNjE5IGJ1aWx0aW4vYWRkLmM6NTMyIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTgxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDcwIGJ1aWx0aW4vY2hlY2tvdXQuYzo2NTYgYnVpbHRpbi9jbGVhbi5jOjk2NworIzogYnVpbHRpbi9jb21taXQuYzozNjcgYnVpbHRpbi9kaWZmLXRyZWUuYzoxMjAgYnVpbHRpbi9ncmVwLmM6NDg1CisjOiBidWlsdGluL212LmM6MTQ1IGJ1aWx0aW4vcmVzZXQuYzoyNDYgYnVpbHRpbi9ybS5jOjI5MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjMzMgogbXNnaWQgImluZGV4IGZpbGUgY29ycnVwdCIKIG1zZ3N0ciAiZmljaGllciBkJ2luZGV4IGNvcnJvbXB1IgogCi0jOiByZWFkLWNhY2hlLmM6MjEwMQorIzogcmVhZC1jYWNoZS5jOjIxMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsb2FkX2NhY2hlX2VudHJpZXMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgbGUgZmlsIGxvYWRfY2FjaGVfZW50cmllcyA6ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6MjExNAorIzogcmVhZC1jYWNoZS5jOjIxMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGpvaW4gbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCiBtc2dzdHIgImltcG9zc2libGUgZGUgam9pbmRyZSBsZSBmaWwgbG9hZF9jYWNoX2VudHJpZXMgOiAlcyIKIAotIzogcmVhZC1jYWNoZS5jOjIyMDEKKyM6IHJlYWQtY2FjaGUuYzoyMTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbmRleCBmaWxlIG9wZW4gZmFpbGVkIgorbXNnc3RyICIlc8KgOiBsJ291dmVydHVyZSBkdSBmaWNoaWVyIGQnaW5kZXggYSDDqWNob3XDqSIKKworIzogcmVhZC1jYWNoZS5jOjIxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbm5vdCBzdGF0IHRoZSBvcGVuIGluZGV4IgorbXNnc3RyICIlc8KgOiBpbXBvc3NpYmxlIGRlIGZhaXJlIHVuIHN0YXQgc3VyIGwnaW5kZXggb3V2ZXJ0IgorCisjOiByZWFkLWNhY2hlLmM6MjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW5kZXggZmlsZSBzbWFsbGVyIHRoYW4gZXhwZWN0ZWQiCittc2dzdHIgIiVzwqA6IGZpY2hpZXIgZCdpbmRleCBwbHVzIHBldGl0IHF1J2F0dGVuZHUiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gbWFwIGluZGV4IGZpbGUiCittc2dzdHIgIiVzwqA6IGltcG9zc2libGUgZGUgbWFwcGVyIGxlIGZpY2hpZXIgZCdpbmRleCIKKworIzogcmVhZC1jYWNoZS5jOjIyMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsb2FkX2luZGV4X2V4dGVuc2lvbnMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgbGUgZmlsIGxvYWRfaW5kZXhfZXh0ZW5zaW9ucyA6ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6MjIyOAorIzogcmVhZC1jYWNoZS5jOjIyNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGpvaW4gbG9hZF9pbmRleF9leHRlbnNpb25zIHRocmVhZDogJXMiCiBtc2dzdHIgImltcG9zc2libGUgZGUgam9pbmRyZSBsZSBmaWwgbG9hZF9pbmRleF9leHRlbnNpb25zIDogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzoyOTgyIHNlcXVlbmNlci5jOjQ3Mjcgd3JhcHBlci5jOjY1OCBidWlsdGluL21lcmdlLmM6MTA4NgorIzogcmVhZC1jYWNoZS5jOjIyODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZyZXNoZW4gc2hhcmVkIGluZGV4ICclcyciCittc2dzdHIgImltcG9zc2libGUgZGUgcmFmcmHDrmNoaXIgbCdpbmRleCBwYXJ0YWfDqSAnJXMnIgorCisjOiByZWFkLWNhY2hlLmM6MjMzMAorIywgYy1mb3JtYXQKK21zZ2lkICJicm9rZW4gaW5kZXgsIGV4cGVjdCAlcyBpbiAlcywgZ290ICVzIgorbXNnc3RyICJpbmRleCBjYXNzw6ksICVzIGF0dGVuZHUgZGFucyAlcywgJXMgb2J0ZW51IgorCisjOiByZWFkLWNhY2hlLmM6MzAyNiBzdHJidWYuYzoxMTYwIHdyYXBwZXIuYzo2MjIgYnVpbHRpbi9tZXJnZS5jOjExMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNsb3NlICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgZmVybWVyICclcyciCiAKLSM6IHJlYWQtY2FjaGUuYzozMDU1IHNlcXVlbmNlci5jOjIyMDMgc2VxdWVuY2VyLmM6MzU5MgorIzogcmVhZC1jYWNoZS5jOjMxMjkgc2VxdWVuY2VyLmM6MjM0MyBzZXF1ZW5jZXIuYzozOTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0ICclcyciCiBtc2dzdHIgInN0YXQgaW1wb3NzaWJsZSBkZSAnJXMnIgogCi0jOiByZWFkLWNhY2hlLmM6MzA2OAorIzogcmVhZC1jYWNoZS5jOjMxNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZ2l0IGRpcjogJXMiCiBtc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgbGUgcsOpcGVydG9pcmUgZ2l0wqA6ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6MzA4MAorIzogcmVhZC1jYWNoZS5jOjMxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVubGluazogJXMiCiBtc2dzdHIgIsOpY2hlYyBsb3JzIGRlIGwndW5saW5rwqA6ICVzIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMAorIzogcmVhZC1jYWNoZS5jOjMxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpeCBwZXJtaXNzaW9uIGJpdHMgb24gJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSByw6lnbGVyIGxlcyBiaXRzIGRlIGRyb2l0IGRlICclcyciCisKKyM6IHJlYWQtY2FjaGUuYzozMzI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW5ub3QgZHJvcCB0byBzdGFnZSAjMCIKK21zZ3N0ciAiJXMgOiBpbXBvc3NpYmxlIGRlIHJldmVuaXIgw6AgbCfDqXRhcGUgMCIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTEKK21zZ2lkICIiCisiWW91IGNhbiBmaXggdGhpcyB3aXRoICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyBhbmQgdGhlbiBydW4gJ2dpdCByZWJhc2UgLS0iCisiY29udGludWUnLlxuIgorIk9yIHlvdSBjYW4gYWJvcnQgdGhlIHJlYmFzZSB3aXRoICdnaXQgcmViYXNlIC0tYWJvcnQnLlxuIgorbXNnc3RyICIiCisiVm91cyBwb3V2ZXogY29ycmlnZXIgY2VjaSBhdmVjICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyBwdWlzIGxhbmNleiAnZ2l0ICIKKyJyZWJhc2UgLS1jb250aW51ZScuXG4iCisiT3Ugdm91cyBwb3V2ZXogYWJhbmRvbm5lciBsZSByZWJhc2FnZSBhdmVjICdnaXQgcmViYXNlIC0tYWJvcnQnLlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzozMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5yZWNvZ25pemVkIHNldHRpbmcgJXMgZm9yIG9wdGlvbiByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4gSWdub3JpbmcuIgorbXNnc3RyICIiCisicGFyYW3DqHRyZSBub24gcmVjb25udSAlcyBwb3VyIGwnb3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcsOpLiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NDIKIG1zZ2lkICIiCiAiXG4iCiAiQ29tbWFuZHM6XG4iCkBAIC0zOTE5LDcgKzU3MzQsNyBAQAogIiBmLCBmaXh1cCA8Y29tbWl0PiA9IGNvbW1lIFwic3F1YXNoXCIsIG1haXMgZW4gw6lsaW1pbmFudCBzb24gbWVzc2FnZVxuIgogIiB4LCBleGVjIDxjb21taXQ+ID0gbGFuY2VyIGxhIGNvbW1hbmRlIChyZXN0ZSBkZSBsYSBsaWduZSkgZGFucyB1biBzaGVsbFxuIgogIiBiLCBicmVhayA9IHMnYXJyw6p0ZXIgaWNpIChvbiBwZXV0IGNvbnRpbnVlciBlbnN1aXRlIGF2ZWMgJ2dpdCByZWJhc2UgLS0iCi0iY29udGluZScpXG4iCisiY29udGludWUnKVxuIgogIiBkLCBkcm9wIDxjb21taXQ+ID0gc3VwcHJpbWVyIGxlIGNvbW1pdFxuIgogIiBsLCBsYWJlbCA8bGFiZWw+ID0gw6l0aXF1ZXRlciBsYSBIRUFEIGNvdXJhbnRlIGF2ZWMgdW4gbm9tXG4iCiAiIHQsIHJlc2V0IDxsYWJlbD4gPSByw6lpbml0aWFsaXNlciBIRUFEIMOgIGxhYmVsXG4iCkBAIC0zOTMwLDcgKzU3NDUsMTQgQEAKICJcbiIKICJWb3VzIHBvdXZleiByw6lvcmRvbm5lciBjZXMgbGlnbmVzwqA7IGVsbGVzIHNvbnQgZXjDqWN1dMOpZXMgZGUgaGF1dCBlbiBiYXMuXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjMxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNzMKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kKSIKK21zZ2lkX3BsdXJhbCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmRzKSIKK21zZ3N0clswXSAiUmViYXNhZ2UgZGUgJXMgc3VyICVzICglZCBjb21tYW5kZSkiCittc2dzdHJbMV0gIlJlYmFzYWdlIGRlICVzIHN1ciAlcyAoJWQgY29tbWFuZGVzKSIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NzIgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIyOAogbXNnaWQgIiIKICJcbiIKICJEbyBub3QgcmVtb3ZlIGFueSBsaW5lLiBVc2UgJ2Ryb3AnIGV4cGxpY2l0bHkgdG8gcmVtb3ZlIGEgY29tbWl0LlxuIgpAQCAtMzkzOSw3ICs1NzYxLDcgQEAKICJOZSBzdXBwcmltZXogYXVjdW5lIGxpZ25lLiBVdGlsaXNleiAnZHJvcCcgZXhwbGljaXRlbWVudCBwb3VyIHN1cHByaW1lciB1biAiCiAiY29tbWl0LlxuIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzozNCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTc3CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3NSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjMyCiBtc2dpZCAiIgogIlxuIgogIklmIHlvdSByZW1vdmUgYSBsaW5lIGhlcmUgVEhBVCBDT01NSVQgV0lMTCBCRSBMT1NULlxuIgpAQCAtMzk0Nyw3ICs1NzY5LDcgQEAKICJcbiIKICJTaSB2b3VzIMOpbGltaW5leiB1bmUgbGlnbmUgaWNpLCBMRSBDT01NSVQgQ09SUkVTUE9OREFOVCBTRVJBIFBFUkRVLlxuIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo0MCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODE2CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo4MSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODcxCiBtc2dpZCAiIgogIlxuIgogIllvdSBhcmUgZWRpdGluZyB0aGUgdG9kbyBmaWxlIG9mIGFuIG9uZ29pbmcgaW50ZXJhY3RpdmUgcmViYXNlLlxuIgpAQCAtMzk2Miw3ICs1Nzg0LDcgQEAKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAiXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQ1IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4OTMKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjg2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDgKIG1zZ2lkICIiCiAiXG4iCiAiSG93ZXZlciwgaWYgeW91IHJlbW92ZSBldmVyeXRoaW5nLCB0aGUgcmViYXNlIHdpbGwgYmUgYWJvcnRlZC5cbiIKQEAgLTM5NzIsMTI1ICs1Nzk0LDE2MSBAQAogIkNlcGVuZGFudCwgc2kgdm91cyBlZmZhY2V6IHRvdXQsIGxlIHJlYmFzYWdlIHNlcmEgYW5udWzDqS5cbiIKICJcbiIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6NTEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwMAotbXNnaWQgIk5vdGUgdGhhdCBlbXB0eSBjb21taXRzIGFyZSBjb21tZW50ZWQgb3V0IgotbXNnc3RyICJWZXVpbGxleiBub3RlciBxdWUgbGVzIGNvbW1pdHMgdmlkZXMgc29udCBlbiBjb21tZW50YWlyZSIKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjExMCByZXJlcmUuYzo0ODUgcmVyZXJlLmM6NjkyIHNlcXVlbmNlci5jOjM0NDQKKyM6IHNlcXVlbmNlci5jOjM0NzAgc2VxdWVuY2VyLmM6NTEyNSBidWlsdGluL2ZzY2suYzozNDYgYnVpbHRpbi9yZWJhc2UuYzoyNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHdyaXRlICclcyciCittc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlICclcyciCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjYyIHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjc1IHNlcXVlbmNlci5jOjIxODYKLSM6IHNlcXVlbmNlci5jOjQ1MDUgc2VxdWVuY2VyLmM6NDU2MSBzZXF1ZW5jZXIuYzo0ODM2CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMTYgYnVpbHRpbi9yZWJhc2UuYzoxODQgYnVpbHRpbi9yZWJhc2UuYzoyMTAKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnLiIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgJyVzJy4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCisiRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCittc2dzdHIgIiIKKyJBdHRlbnRpb27CoDogY2VydGFpbnMgY29tbWl0cyBvbnQgcHUgw6p0cmUgYWNjaWRlbnRlbGxlbWVudCBzdXBwcmltw6lzLlxuIgorIkNvbW1pdHMgc3VwcHJpbcOpcyAoZHUgcGx1cyBqZXVuZSBhdSBwbHVzIHZpZXV4KcKgOlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRvIGF2b2lkIHRoaXMgbWVzc2FnZSwgdXNlIFwiZHJvcFwiIHRvIGV4cGxpY2l0bHkgcmVtb3ZlIGEgY29tbWl0LlxuIgorIlxuIgorIlVzZSAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgdG8gY2hhbmdlIHRoZSBsZXZlbCBvZiAiCisid2FybmluZ3MuXG4iCisiVGhlIHBvc3NpYmxlIGJlaGF2aW91cnMgYXJlOiBpZ25vcmUsIHdhcm4sIGVycm9yLlxuIgorIlxuIgorbXNnc3RyICIiCisiUG91ciDDqXZpdGVyIGNlIG1lc3NhZ2UsIHV0aWxpc2V6IFwiZHJvcFwiIHBvdXIgc3VwcHJpbWVyIGV4cGxpY2l0ZW1lbnQgdW4gIgorImNvbW1pdC5cbiIKKyJcbiIKKyJVdGlsaXNleiAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgcG91ciBjaGFuZ2VyIGxlIG5pdmVhdSAiCisiZCdhdmVydGlzc2VtZW50cy5cbiIKKyJMZXMgY29tcG9ydGVtZW50cyBkaXNwb25pYmxlcyBzb250wqA6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCisiXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjIzMyByZWJhc2UtaW50ZXJhY3RpdmUuYzoyMzggc2VxdWVuY2VyLmM6MjI2MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNzAgYnVpbHRpbi9yZWJhc2UuYzoxOTUgYnVpbHRpbi9yZWJhc2UuYzoyMjEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkICclcycuIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgJyVzJy4iCiAKLSM6IHJlZnMuYzoxOTIKKyM6IHJlZnMuYzoyNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBvYmplY3QhIgogbXNnc3RyICIlcyBuZSBwb2ludGUgcGFzIHN1ciB1biBvYmpldCB2YWxpZGUhIgogCi0jOiByZWZzLmM6NTgzCisjOiByZWZzLmM6NjY3CiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIGRhbmdsaW5nIHN5bXJlZiAlcyIKIG1zZ3N0ciAic3ltcmVmIHBlbmRhbnQgJXMgaWdub3LDqSIKIAotIzogcmVmcy5jOjU4NSByZWYtZmlsdGVyLmM6MTk1MQorIzogcmVmcy5jOjY2OSByZWYtZmlsdGVyLmM6MjA5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyBicm9rZW4gcmVmICVzIgogbXNnc3RyICJyw6lmIGNhc3PDqSAlcyBpZ25vcsOpIgogCi0jOiByZWZzLmM6NzExCisjOiByZWZzLmM6ODA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmc6ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyICclcycgZW4gw6ljcml0dXJlwqA6ICVzIgogCi0jOiByZWZzLmM6NzIxIHJlZnMuYzo3NzIKKyM6IHJlZnMuYzo4MTQgcmVmcy5jOjg2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCByZWYgJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGxhIHLDqWYgJyVzJyIKIAotIzogcmVmcy5jOjcyNworIzogcmVmcy5jOjgyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWYgJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAibGEgcsOpZsOpcmVuY2UgJyVzJyBleGlzdGUgZMOpasOgIgogCi0jOiByZWZzLmM6NzMyCisjOiByZWZzLmM6ODI1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgb2JqZWN0IElEIHdoZW4gd3JpdGluZyAnJXMnIgogbXNnc3RyICJpZCBkJ29iamV0IGluYXR0ZW5kdSBwZW5kYW50IGwnw6ljcml0dXJlIGRlICclcyciCiAKLSM6IHJlZnMuYzo3NDAgc2VxdWVuY2VyLmM6Mzk0IHNlcXVlbmNlci5jOjI1MTAgc2VxdWVuY2VyLmM6MjYzNgotIzogc2VxdWVuY2VyLmM6MjY1MCBzZXF1ZW5jZXIuYzoyODc3IHNlcXVlbmNlci5jOjQ3MjUgc2VxdWVuY2VyLmM6NDc4OAotIzogd3JhcHBlci5jOjY1NgorIzogcmVmcy5jOjgzMyBzZXF1ZW5jZXIuYzo0MDcgc2VxdWVuY2VyLmM6MjcwMSBzZXF1ZW5jZXIuYzoyOTA1CisjOiBzZXF1ZW5jZXIuYzoyOTE5IHNlcXVlbmNlci5jOjMxNzcgc2VxdWVuY2VyLmM6NTAzNiBzdHJidWYuYzoxMTU3CisjOiB3cmFwcGVyLmM6NjIwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSB0byAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBkYW5zICclcyciCiAKLSM6IHJlZnMuYzo3Njcgc2VxdWVuY2VyLmM6NDcyMyBzZXF1ZW5jZXIuYzo0NzgyIHdyYXBwZXIuYzoyMjUgd3JhcHBlci5jOjM5NQotIzogYnVpbHRpbi9hbS5jOjcyOAorIzogcmVmcy5jOjg2MCBzdHJidWYuYzoxMTU1IHdyYXBwZXIuYzoxODggd3JhcHBlci5jOjM1OCBidWlsdGluL2FtLmM6NzE5CisjOiBidWlsdGluL3JlYmFzZS5jOjEwMjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciAnJXMnIGVuIMOpY3JpdHVyZSIKIAotIzogcmVmcy5jOjc3NAorIzogcmVmcy5jOjg2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG9iamVjdCBJRCB3aGVuIGRlbGV0aW5nICclcyciCiBtc2dzdHIgImlkIGQnb2JqZXQgaW5hdHRlbmR1IHBlbmRhbnQgbGEgc3VwcHJlc3Npb24gZGUgJyVzJyIKIAotIzogcmVmcy5jOjkwNQorIzogcmVmcy5jOjk5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2cgZm9yIHJlZiAlcyBoYXMgZ2FwIGFmdGVyICVzIgogbXNnc3RyICJsZSBqb3VybmFsIHBvdXIgbGEgcsOpZiAlcyBjb250aWVudCB1biB0cm91IGFwcsOocyAlcyIKIAotIzogcmVmcy5jOjkxMQorIzogcmVmcy5jOjEwMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9nIGZvciByZWYgJXMgdW5leHBlY3RlZGx5IGVuZGVkIG9uICVzIgogbXNnc3RyICJsZSBqb3VybmFsIHBvdXIgbGEgcsOpZiAlcyBzJ2FycsOqdGUgZGUgbWFuacOocmUgaW5hdHRlbmR1ZSBzdXIgJXMiCiAKLSM6IHJlZnMuYzo5NjkKKyM6IHJlZnMuYzoxMDYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImxvZyBmb3IgJXMgaXMgZW1wdHkiCiBtc2dzdHIgImxlIGpvdXJuYWwgcG91ciBsYSByw6lmICVzIGVzdCB2aWRlIgogCi0jOiByZWZzLmM6MTA2MQorIzogcmVmcy5jOjExNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmdXNpbmcgdG8gdXBkYXRlIHJlZiB3aXRoIGJhZCBuYW1lICclcyciCiBtc2dzdHIgInJlZnVzIGRlIG1ldHRyZSDDoCBqb3VyIHVuZSByw6lmIGF2ZWMgdW4gbm9tIGNhc3PDqSAnJXMnIgogCi0jOiByZWZzLmM6MTEzNworIzogcmVmcy5jOjEyMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidXBkYXRlX3JlZiBmYWlsZWQgZm9yIHJlZiAnJXMnOiAlcyIKIG1zZ3N0ciAiw6ljaGVjIGRlIHVwZGF0ZV9yZWYgcG91ciBsYSByw6lmICclcyfCoDogJXMiCiAKLSM6IHJlZnMuYzoxOTExCisjOiByZWZzLmM6MjAyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJtdWx0aXBsZSB1cGRhdGVzIGZvciByZWYgJyVzJyBub3QgYWxsb3dlZCIKIG1zZ3N0ciAibWlzZXMgw6Agam91ciBtdWx0aXBsZXMgcG91ciBsYSByw6lmICclcycgbm9uIHBlcm1pc2VzIgogCi0jOiByZWZzLmM6MTk0MworIzogcmVmcy5jOjIwNTUKIG1zZ2lkICJyZWYgdXBkYXRlcyBmb3JiaWRkZW4gaW5zaWRlIHF1YXJhbnRpbmUgZW52aXJvbm1lbnQiCiBtc2dzdHIgIm1pc2VzIMOgIGpvdXIgZGVzIHLDqWbDqXJlbmNlcyBpbnRlcmRpdGVzIGVuIGVudmlyb25uZW1lbnQgZGUgcXVhcmFudGFpbmUiCiAKLSM6IHJlZnMuYzoyMDM5IHJlZnMuYzoyMDY5CisjOiByZWZzLmM6MjE1MSByZWZzLmM6MjE4MQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGV4aXN0czsgY2Fubm90IGNyZWF0ZSAnJXMnIgogbXNnc3RyICInJXMnIGV4aXN0ZcKgOyBpbXBvc3NpYmxlIGRlIGNyw6llciAnJXMnIgogCi0jOiByZWZzLmM6MjA0NSByZWZzLmM6MjA4MAorIzogcmVmcy5jOjIxNTcgcmVmcy5jOjIxOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHByb2Nlc3MgJyVzJyBhbmQgJyVzJyBhdCB0aGUgc2FtZSB0aW1lIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHRyYWl0ZXIgJyVzJyBldCAnJXMnIGVuIG3Dqm1lIHRlbXBzIgogCi0jOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjI4CisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgcmVmZXJlbmNlICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN1cHByaW1lciBsYSByw6lmw6lyZW5jZSAlcyIKIAotIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI0MiByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTUzMgotIzogcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NDIKKyM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDcgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NDEKKyM6IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgcmVmZXJlbmNlICVzOiAlcyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgbGEgcsOpZsOpcmVuY2UgJXPCoDogJXMiCiAKLSM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDUgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NDUKKyM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNTAgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGRlbGV0ZSByZWZlcmVuY2VzOiAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgbGVzIHLDqWbDqXJlbmNlc8KgOiAlcyIKQEAgLTQxMDEsMzUyICs1OTU5LDQ5MiBAQAogbXNnc3RyICJzcMOpY2lmaWNhdGV1ciBkZSByw6lmZXJlbmNlIGludmFsaWRlwqA6ICclcyciCiAKICMgw6AgcHJpb3JpIG9uIHBhcmxlIGQndW5lIGJyYW5jaGUgaWNpCi0jOiByZWYtZmlsdGVyLmM6Mzkgd3Qtc3RhdHVzLmM6MTg1NQorIzogcmVmLWZpbHRlci5jOjQyIHd0LXN0YXR1cy5jOjE5MzgKIG1zZ2lkICJnb25lIgogbXNnc3RyICJkaXNwYXJ1ZSIKIAotIzogcmVmLWZpbHRlci5jOjQwCisjOiByZWYtZmlsdGVyLmM6NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWhlYWQgJWQiCiBtc2dzdHIgImVuIGF2YW5jZSBkZSAlZCIKIAotIzogcmVmLWZpbHRlci5jOjQxCisjOiByZWYtZmlsdGVyLmM6NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmVoaW5kICVkIgogbXNnc3RyICJlbiByZXRhcmQgZGUgJWQiCiAKLSM6IHJlZi1maWx0ZXIuYzo0MgorIzogcmVmLWZpbHRlci5jOjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImFoZWFkICVkLCBiZWhpbmQgJWQiCiBtc2dzdHIgImVuIGF2YW5jZSBkZSAlZCwgZW4gcmV0YXJkIGRlICVkIgogCi0jOiByZWYtZmlsdGVyLmM6MTM4CisjOiByZWYtZmlsdGVyLmM6MTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIGZvcm1hdDogJSUoY29sb3I6PGNvbG9yPikiCiBtc2dzdHIgImZvcm1hdCBhdHRlbmR1wqA6ICUlKGNvbG9yOjxjb3VsZXVyPikiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDAKKyM6IHJlZi1maWx0ZXIuYzoxNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIGNvbG9yOiAlJShjb2xvcjolcykiCiBtc2dzdHIgImNvdWxldXIgbm9uIHJlY29ubnVlIDogJSUoY29sb3I6JXMpIgogCi0jOiByZWYtZmlsdGVyLmM6MTYyCisjOiByZWYtZmlsdGVyLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludGVnZXIgdmFsdWUgZXhwZWN0ZWQgcmVmbmFtZTpsc3RyaXA9JXMiCiBtc2dzdHIgIlZhbGV1ciBlbnRpw6hyZSBhdHRlbmR1ZSByZWZuYW1lOmxzdHJpcD0lcyIKIAotIzogcmVmLWZpbHRlci5jOjE2NgorIzogcmVmLWZpbHRlci5jOjE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6cnN0cmlwPSVzIgogbXNnc3RyICJWYWxldXIgZW50acOocmUgYXR0ZW5kdWUgcmVmbmFtZTpyc3RyaXA9JXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNjgKKyM6IHJlZi1maWx0ZXIuYzoxOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKCVzKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgImFyZ3VtZW50ICUlKCVzKSBub24gcmVjb25udcKgOiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjIyMworIzogcmVmLWZpbHRlci5jOjI1MAogIywgYy1mb3JtYXQKIG1zZ2lkICIlJShvYmplY3R0eXBlKSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKIG1zZ3N0ciAiJSUob2JqZWN0dHlwZSkgbidhY2NlcHRlIHBhcyBkJ2FyZ3VtZW50IgogCi0jOiByZWYtZmlsdGVyLmM6MjM1CisjOiByZWYtZmlsdGVyLmM6MjcyCiAjLCBjLWZvcm1hdAotbXNnaWQgIiUlKG9iamVjdHNpemUpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgotbXNnc3RyICIlJShvYmplY3RzaXplKSBuJ2FjY2VwdGUgcGFzIGQnYXJndW1lbnQiCittc2dpZCAidW5yZWNvZ25pemVkICUlKG9iamVjdHNpemUpIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiYXJndW1lbnQgJSUob2JqZWN0c2l6ZSkgbm9uIHJlY29ubnUgOiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjI0NworIzogcmVmLWZpbHRlci5jOjI4MAorIywgYy1mb3JtYXQKK21zZ2lkICIlJShkZWx0YWJhc2UpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnc3RyICIlJShkZWx0YWJhc2UpIG4nYWNjZXB0ZSBwYXMgZCdhcmd1bWVudCIKKworIzogcmVmLWZpbHRlci5jOjI5MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlJShib2R5KSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKIG1zZ3N0ciAiJSUoYm9keSkgbidhY2NlcHRlIHBhcyBkJ2FyZ3VtZW50IgogCi0jOiByZWYtZmlsdGVyLmM6MjU2CisjOiByZWYtZmlsdGVyLmM6MzAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiUlKHN1YmplY3QpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgogbXNnc3RyICIlJShzdWJqZWN0KSBuJ2FjY2VwdGUgcGFzIGQnYXJndW1lbnQiCiAKLSM6IHJlZi1maWx0ZXIuYzoyNzgKKyM6IHJlZi1maWx0ZXIuYzozMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biAlJSh0cmFpbGVycykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJhcmd1bWVudCAlJSh0cmFpbGVycykgaW5jb25udcKgOiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjMwNworIzogcmVmLWZpbHRlci5jOjM1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJwb3NpdGl2ZSB2YWx1ZSBleHBlY3RlZCBjb250ZW50czpsaW5lcz0lcyIKIG1zZ3N0ciAidmFsZXVyIHBvc2l0aXZlIGF0dGVuZHVlIGNvbnRlbnRzOmxpbmVzPSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzA5CisjOiByZWYtZmlsdGVyLmM6MzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShjb250ZW50cykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJhcmd1bWVudCAlJShjb250ZW50cykgbm9uIHJlY29ubnUgOiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjMyNAorIzogcmVmLWZpbHRlci5jOjM2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJwb3NpdGl2ZSB2YWx1ZSBleHBlY3RlZCBvYmplY3RuYW1lOnNob3J0PSVzIgogbXNnc3RyICJ2YWxldXIgcG9zaXRpdmUgYXR0ZW5kdWUgb2JqZWN0bmFtZTpzaG9ydD0lcyIKIAotIzogcmVmLWZpbHRlci5jOjMyOAorIzogcmVmLWZpbHRlci5jOjM3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUob2JqZWN0bmFtZSkgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJhcmd1bWVudCAlJShvYmplY3RuYW1lKSBub24gcmVjb25udSA6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzU4CisjOiByZWYtZmlsdGVyLmM6NDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIGZvcm1hdDogJSUoYWxpZ246PHdpZHRoPiw8cG9zaXRpb24+KSIKIG1zZ3N0ciAiZm9ybWF0IGF0dGVuZHXCoDogJSUoYWxpZ246PGxhcmdldXI+LDxwb3NpdGlvbj4pIgogCi0jOiByZWYtZmlsdGVyLmM6MzcwCisjOiByZWYtZmlsdGVyLmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBwb3NpdGlvbjolcyIKIG1zZ3N0ciAicG9zaXRpb24gbm9uIHJlY29ubnVlwqA6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6Mzc3CisjOiByZWYtZmlsdGVyLmM6NDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCB3aWR0aDolcyIKIG1zZ3N0ciAibGFyZ2V1ciBub24gcmVjb25udWXCoDogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozODYKKyM6IHJlZi1maWx0ZXIuYzo0MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKGFsaWduKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgImFyZ3VtZW50ICUlKGFsaWduKSBub24gcmVjb25udSA6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6Mzk0CisjOiByZWYtZmlsdGVyLmM6NDM5CiAjLCBjLWZvcm1hdAogbXNnaWQgInBvc2l0aXZlIHdpZHRoIGV4cGVjdGVkIHdpdGggdGhlICUlKGFsaWduKSBhdG9tIgogbXNnc3RyICJ2YWxldXIgcG9zaXRpdmUgYXR0ZW5kdWUgYXZlYyBsJ2F0b21lICUlKGFsaWduKSIKIAotIzogcmVmLWZpbHRlci5jOjQxMgorIzogcmVmLWZpbHRlci5jOjQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUoaWYpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAiYXJndW1lbnQgJSUoaWYpIG5vbiByZWNvbm51wqA6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6NTA4CisjOiByZWYtZmlsdGVyLmM6NTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBmaWVsZCBuYW1lOiAlLipzIgogbXNnc3RyICJub20gZGUgY2hhbXAgbWFsZm9ybcOpICUuKnMiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MzUKKyM6IHJlZi1maWx0ZXIuYzo1ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBmaWVsZCBuYW1lOiAlLipzIgogbXNnc3RyICJub20gZGUgY2hhbXAgaW5jb25udSA6ICUuKnMiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MzkKKyM6IHJlZi1maWx0ZXIuYzo1OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdCBhIGdpdCByZXBvc2l0b3J5LCBidXQgdGhlIGZpZWxkICclLipzJyByZXF1aXJlcyBhY2Nlc3MgdG8gb2JqZWN0IGRhdGEiCiBtc2dzdHIgIiIKLSJwYXMgdW4gZMOpcMO0dCBnaXQsIG1haXMgbGUgY2hhbXAgJyUuKnMnIG7DqWNlc3NpdGUgbCdhY2PDqHMgYXUgZG9ubsOpZXMgZCdvYmpldCIKKyJwYXMgdW4gZMOpcMO0dCBnaXQsIG1haXMgbGUgY2hhbXAgJyUuKnMnIG7DqWNlc3NpdGUgbCdhY2PDqHMgYXV4IGRvbm7DqWVzIGQnb2JqZXQiCiAKLSM6IHJlZi1maWx0ZXIuYzo2NjMKKyM6IHJlZi1maWx0ZXIuYzo3MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShpZikgYXRvbSB1c2VkIHdpdGhvdXQgYSAlJSh0aGVuKSBhdG9tIgogbXNnc3RyICJmb3JtYXTCoDogYXRvbWUgJSUoaWYpIHV0aWxpc8OpIHNhbnMgdW4gYXRvbWUgJSUodGhlbikiCiAKLSM6IHJlZi1maWx0ZXIuYzo3MjYKKyM6IHJlZi1maWx0ZXIuYzo3NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgd2l0aG91dCBhbiAlJShpZikgYXRvbSIKIG1zZ3N0ciAiZm9ybWF0wqA6IGF0b21lICUlKHRoZW4pIHV0aWxpc8OpIHNhbnMgdW4gYXRvbWUgJSUoaWYpIgogCi0jOiByZWYtZmlsdGVyLmM6NzI4CisjOiByZWYtZmlsdGVyLmM6Nzc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgogbXNnc3RyICJmb3JtYXTCoDogYXRvbWUgJSUodGhlbikgdXRpbGlzw6kgcGx1cyBkJ3VuZSBmb2lzIgogCi0jOiByZWYtZmlsdGVyLmM6NzMwCisjOiByZWYtZmlsdGVyLmM6NzgxCiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIGFmdGVyICUlKGVsc2UpIgogbXNnc3RyICJmb3JtYXQ6IGF0b21lICUlKHRoZW4pIHV0aWxpc8OpIGFwcsOocyAlJShlbHNlKSIKIAotIzogcmVmLWZpbHRlci5jOjc1OAorIzogcmVmLWZpbHRlci5jOjgwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCB3aXRob3V0IGFuICUlKGlmKSBhdG9tIgogbXNnc3RyICJmb3JtYXTCoDogYXRvbWUgJSUoZWxzZSkgdXRpbGlzw6kgc2FucyB1biBhdG9tZSAlJShpZikiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NjAKKyM6IHJlZi1maWx0ZXIuYzo4MTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgd2l0aG91dCBhICUlKHRoZW4pIGF0b20iCiBtc2dzdHIgImZvcm1hdMKgOiBhdG9tZSAlJShlbHNlKSB1dGlsaXPDqSBzYW5zIHVuIGF0b21lICUlKHRoZW4pIgogCi0jOiByZWYtZmlsdGVyLmM6NzYyCisjOiByZWYtZmlsdGVyLmM6ODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgogbXNnc3RyICJmb3JtYXTCoDogYXRvbWUgJSUoZWxzZSkgdXRpbGlzw6kgcGx1cyBkJ3VuZSBmb2lzIgogCi0jOiByZWYtZmlsdGVyLmM6Nzc3CisjOiByZWYtZmlsdGVyLmM6ODI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZW5kKSBhdG9tIHVzZWQgd2l0aG91dCBjb3JyZXNwb25kaW5nIGF0b20iCiBtc2dzdHIgImZvcm1hdMKgOiBhdG9tZSAlJShlbmQpIHV0aWxpc8OpIHNhbnMgYXRvbWUgY29ycmVzcG9uZGFudCIKIAotIzogcmVmLWZpbHRlci5jOjgzNAorIzogcmVmLWZpbHRlci5jOjg4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgZm9ybWF0IHN0cmluZyAlcyIKIG1zZ3N0ciAiQ2hhw65uZSBkZSBmb3JtYXRhZ2UgbWFsIGZvcm3DqWUgJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDI0CisjOiByZWYtZmlsdGVyLmM6MTQ4OAogIywgYy1mb3JtYXQKLW1zZ2lkICIobm8gYnJhbmNoLCByZWJhc2luZyAlcykiCi1tc2dzdHIgIihhdWN1bmUgYnJhbmNoZSwgcmViYXNhZ2UgZGUgJXMpIgorbXNnaWQgIm5vIGJyYW5jaCwgcmViYXNpbmcgJXMiCittc2dzdHIgImF1Y3VuZSBicmFuY2hlLCByZWJhc2FnZSBkZSAlcyIKIAotIzogcmVmLWZpbHRlci5jOjE0MjcKKyM6IHJlZi1maWx0ZXIuYzoxNDkxCiAjLCBjLWZvcm1hdAotbXNnaWQgIihubyBicmFuY2gsIHJlYmFzaW5nIGRldGFjaGVkIEhFQUQgJXMpIgotbXNnc3RyICIoYXVjdW5lIGJyYW5jaGUsIHJlYmFzYWdlIGRlIGxhIEhFQUQgZMOpdGFjaMOpZSAlcykiCittc2dpZCAibm8gYnJhbmNoLCByZWJhc2luZyBkZXRhY2hlZCBIRUFEICVzIgorbXNnc3RyICJhdWN1bmUgYnJhbmNoZSwgcmViYXNhZ2UgZGUgbGEgSEVBRCBkw6l0YWNow6llICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTQzMAorIzogcmVmLWZpbHRlci5jOjE0OTQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiKG5vIGJyYW5jaCwgYmlzZWN0IHN0YXJ0ZWQgb24gJXMpIgotbXNnc3RyICIoYXVjdW5lIGJyYW5jaGUsIGJpc2VjdCBhIGTDqW1hcnLDqSBzdXIgJXMpIgorbXNnaWQgIm5vIGJyYW5jaCwgYmlzZWN0IHN0YXJ0ZWQgb24gJXMiCittc2dzdHIgImF1Y3VuZSBicmFuY2hlLCBiaXNlY3QgYSBkw6ltYXJyw6kgc3VyICVzIgogCi0jLiBUUkFOU0xBVE9SUzogbWFrZSBzdXJlIHRoaXMgbWF0Y2hlcyAiSEVBRAotIy4gZGV0YWNoZWQgYXQgIiBpbiB3dC1zdGF0dXMuYwotIy4KLSM6IHJlZi1maWx0ZXIuYzoxNDM4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIihIRUFEIGRldGFjaGVkIGF0ICVzKSIKLW1zZ3N0ciAiKEhFQUQgZMOpdGFjaMOpZSBzdXIgJXMpIgorIzogcmVmLWZpbHRlci5jOjE1MDQKK21zZ2lkICJubyBicmFuY2giCittc2dzdHIgImF1Y3VuZSBicmFuY2hlIgogCi0jLiBUUkFOU0xBVE9SUzogbWFrZSBzdXJlIHRoaXMgbWF0Y2hlcyAiSEVBRAotIy4gZGV0YWNoZWQgZnJvbSAiIGluIHd0LXN0YXR1cy5jCi0jLgotIzogcmVmLWZpbHRlci5jOjE0NDUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiKEhFQUQgZGV0YWNoZWQgZnJvbSAlcykiCi1tc2dzdHIgIihIRUFEIGTDqXRhY2jDqWUgZGVwdWlzICVzKSIKLQotIzogcmVmLWZpbHRlci5jOjE0NDkKLW1zZ2lkICIobm8gYnJhbmNoKSIKLW1zZ3N0ciAiKGF1Y3VuZSBicmFuY2hlKSIKLQotIzogcmVmLWZpbHRlci5jOjE0ODMgcmVmLWZpbHRlci5jOjE2MzgKKyM6IHJlZi1maWx0ZXIuYzoxNTQwIHJlZi1maWx0ZXIuYzoxNzQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3Npbmcgb2JqZWN0ICVzIGZvciAlcyIKIG1zZ3N0ciAib2JqZXQgbWFucXVhbnQgJXMgcG91ciAlcyIKIAotIzogcmVmLWZpbHRlci5jOjE0OTEKKyM6IHJlZi1maWx0ZXIuYzoxNTUwCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhcnNlX29iamVjdF9idWZmZXIgZmFpbGVkIG9uICVzIGZvciAlcyIKLW1zZ3N0ciAiZWNoZWMgZGUgcGFyc2Vfb2JqZWN0X2J1ZmZlciBzdXIgJXMgcG91ciAlcyIKK21zZ3N0ciAiw6ljaGVjIGRlIHBhcnNlX29iamVjdF9idWZmZXIgc3VyICVzIHBvdXIgJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxODU3CisjOiByZWYtZmlsdGVyLmM6MjAwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IGF0ICclcyciCiBtc2dzdHIgIm9iamV0IG1hbGZvcm3DqSDDoCAnJXMnIgogCi0jOiByZWYtZmlsdGVyLmM6MTk0NgorIzogcmVmLWZpbHRlci5jOjIwOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgcmVmIHdpdGggYnJva2VuIG5hbWUgJXMiCiBtc2dzdHIgInLDqWYgYXZlYyB1biBub20gY2Fzc8OpICVzIGlnbm9yw6kiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMjMyCisjOiByZWYtZmlsdGVyLmM6MjM4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVuZCkgYXRvbSBtaXNzaW5nIgogbXNnc3RyICJmb3JtYXQ6IGF0b21lICUlKGVuZCkgbWFucXVhbnQiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMzM4CisjOiByZWYtZmlsdGVyLmM6MjQ4OQorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW1lcmdlZCIKK21zZ3N0ciAibCdvcHRpb24gwqvCoCVzwqDCuyBlc3QgaW5jb21wYXRpYmxlIGF2ZWMgLS1tZXJnZWQiCisKKyM6IHJlZi1maWx0ZXIuYzoyNDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8tbWVyZ2VkIgorbXNnc3RyICJsJ29wdGlvbiDCq8KgJXPCoMK7IGVzdCBpbmNvbXBhdGlibGUgYXZlYyAtLW5vLW1lcmdlZCIKKworIzogcmVmLWZpbHRlci5jOjI1MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG9iamVjdCBuYW1lICVzIgogbXNnc3RyICJub20gZCdvYmpldCBtYWxmb3Jtw6kgJXMiCiAKLSM6IHJlbW90ZS5jOjYwNworIzogcmVmLWZpbHRlci5jOjI1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgbXVzdCBwb2ludCB0byBhIGNvbW1pdCIKK21zZ3N0ciAibCdvcHRpb24gJyVzJyBkb2l0IHBvaW50ZXIgc3VyIHVuIGNvbW1pdCIKKworIzogcmVtb3RlLmM6MzY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZyByZW1vdGUgc2hvcnRoYW5kIGNhbm5vdCBiZWdpbiB3aXRoICcvJzogJXMiCittc2dzdHIgIiIKKyJ1biByYWNjb3VyY2kgZGUgY29uZmlndXJhdGlvbiBkZSBkaXN0YW50IG5lIHBldXQgcGFzIGNvbW1lbmNlciBwYXIgJy8nwqA6ICVzIgorCisjOiByZW1vdGUuYzo0MTQKK21zZ2lkICJtb3JlIHRoYW4gb25lIHJlY2VpdmVwYWNrIGdpdmVuLCB1c2luZyB0aGUgZmlyc3QiCittc2dzdHIgInBsdXMgZCd1biByZWNlaXZlcGFjayBmb3VybmlzLCB1dGlsaXNhdGlvbiBkdSBwcmVtaWVyIgorCisjOiByZW1vdGUuYzo0MjIKK21zZ2lkICJtb3JlIHRoYW4gb25lIHVwbG9hZHBhY2sgZ2l2ZW4sIHVzaW5nIHRoZSBmaXJzdCIKK21zZ3N0ciAicGx1cyBkJ3VuIHVwbG9hZHBhY2sgZm91cm5pcywgdXRpbGlzYXRpb24gZHUgcHJlbWllciIKKworIzogcmVtb3RlLmM6NjEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBmZXRjaCBib3RoICVzIGFuZCAlcyB0byAlcyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSByw6ljdXDDqXJlciDDoCBsYSBmb2lzICVzIGV0ICVzIHBvdXIgJXMiCiAKLSM6IHJlbW90ZS5jOjYxMQorIzogcmVtb3RlLmM6NjE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHVzdWFsbHkgdHJhY2tzICVzLCBub3QgJXMiCiBtc2dzdHIgIiVzIHN1aXQgaGFiaXR1ZWxsZW1lbnQgJXMsIHBhcyAlcyIKIAotIzogcmVtb3RlLmM6NjE1CisjOiByZW1vdGUuYzo2MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdHJhY2tzIGJvdGggJXMgYW5kICVzIgogbXNnc3RyICIlcyBzdWl0IMOgIGxhIGZvaXMgJXMgZXQgJXMiCiAKLSM6IHJlbW90ZS5jOjYyMwotbXNnaWQgIkludGVybmFsIGVycm9yIgotbXNnc3RyICJFcnJldXIgaW50ZXJuZSIKKyM6IHJlbW90ZS5jOjY4OAorIywgYy1mb3JtYXQKK21zZ2lkICJrZXkgJyVzJyBvZiBwYXR0ZXJuIGhhZCBubyAnKiciCittc2dzdHIgImxhIGNsw6kgJyVzJyBkdSBtb2TDqGxlIG4nYSBwYXMgZGUgJyonIgogCi0jOiByZW1vdGUuYzoxNTY5IHJlbW90ZS5jOjE2NzAKKyM6IHJlbW90ZS5jOjY5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSAnJXMnIG9mIHBhdHRlcm4gaGFzIG5vICcqJyIKK21zZ3N0ciAibGEgdmFsZXVyICclcycgZHUgbW9kw6hsZSBuJ2EgcGFzIGRlICcqJyIKKworIzogcmVtb3RlLmM6MTAwNAorIywgYy1mb3JtYXQKK21zZ2lkICJzcmMgcmVmc3BlYyAlcyBkb2VzIG5vdCBtYXRjaCBhbnkiCittc2dzdHIgIiIKKyJsZSBzcMOpY2lmaWNhdGV1ciBkZSByw6lmw6lyZW5jZSBzb3VyY2UgJXMgbmUgY29ycmVzcG9uZCDDoCBhdWN1bmUgcsOpZsOpcmVuY2UiCisKKyM6IHJlbW90ZS5jOjEwMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgbWF0Y2hlcyBtb3JlIHRoYW4gb25lIgorbXNnc3RyICIiCisibGUgc3DDqWNpZmljYXRldXIgZGUgcsOpZsOpcmVuY2Ugc291cmNlICVzIGNvcnJlc3BvbmQgw6AgcGx1cyBkJ3VuZSByw6lmw6lyZW5jZSIKKworIy4gVFJBTlNMQVRPUlM6ICJtYXRjaGVzICclcyclIiBpcyB0aGUgPGRzdD4gcGFydCBvZiAiZ2l0IHB1c2gKKyMuIDxyZW1vdGU+IDxzcmM+Ojxkc3Q+IiBwdXNoLCBhbmQgImJlaW5nIHB1c2hlZCAoJyVzJykiIGlzCisjLiB0aGUgPHNyYz4uCisjLgorIzogcmVtb3RlLmM6MTAyNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGRlc3RpbmF0aW9uIHlvdSBwcm92aWRlZCBpcyBub3QgYSBmdWxsIHJlZm5hbWUgKGkuZS4sXG4iCisic3RhcnRpbmcgd2l0aCBcInJlZnMvXCIpLiBXZSB0cmllZCB0byBndWVzcyB3aGF0IHlvdSBtZWFudCBieTpcbiIKKyJcbiIKKyItIExvb2tpbmcgZm9yIGEgcmVmIHRoYXQgbWF0Y2hlcyAnJXMnIG9uIHRoZSByZW1vdGUgc2lkZS5cbiIKKyItIENoZWNraW5nIGlmIHRoZSA8c3JjPiBiZWluZyBwdXNoZWQgKCclcycpXG4iCisiICBpcyBhIHJlZiBpbiBcInJlZnMve2hlYWRzLHRhZ3N9L1wiLiBJZiBzbyB3ZSBhZGQgYSBjb3JyZXNwb25kaW5nXG4iCisiICByZWZzL3toZWFkcyx0YWdzfS8gcHJlZml4IG9uIHRoZSByZW1vdGUgc2lkZS5cbiIKKyJcbiIKKyJOZWl0aGVyIHdvcmtlZCwgc28gd2UgZ2F2ZSB1cC4gWW91IG11c3QgZnVsbHkgcXVhbGlmeSB0aGUgcmVmLiIKK21zZ3N0ciAiIgorIkxhIGRlc3RpbmF0aW9uIHF1ZSB2b3VzIGF2ZXogZm91cm5pZSBuJ2VzdCBwYXMgdW4gbm9tIGRlIHLDqWbDqXJlbmNlIGNvbXBsw6h0ZVxuIgorIihjJ2VzdC3DoC1kaXJlIGNvbW1lbsOnYW50IHBhciBcInJlZi9cIikuIEVzc2FpIGQnYXBwcm94aW1hdGlvbiBwYXLCoDpcbiIKKyJcbiIKKyItIFJlY2hlcmNoZSBkJ3VuZSByw6lmw6lyZW5jZSBxdWkgY29ycmVzcG9uZCDDoCAnJXMnIHN1ciBsZSBzZXJ2ZXVyIGRpc3RhbnQuXG4iCisiLSBWw6lyaWZpY2F0aW9uIHNpIGxhIDxzb3VyY2U+IGVuIGNvdXJzIGRlIHBvdXNzw6llICgnJXMnKVxuIgorIiAgZXN0IHVuZSByw6lmw6lyZW5jZSBkYW5zIFwicmVmcy97aGVhZHMsdGFnc30vXCIuIFNpIG91aSwgYWpvdXQgZHUgcHLDqWZpeGVcbiIKKyIgIHJlZnMve2hlYWRzLHRhZ3N9LyBjb3JyZXNwb25kYW50IGR1IGPDtHTDqSBkaXN0YW50LlxuIgorIlxuIgorIkF1Y3VuZSBuJ2EgZm9uY3Rpb25uw6ksIGRvbmMgYWJhbmRvbi4gVmV1aWxsZXogc3DDqWNpZmllciB1bmUgcsOpZsOpcmVuY2UgIgorInRvdGFsZW1lbnQgcXVhbGlmacOpZS4iCisKKyM6IHJlbW90ZS5jOjEwNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgY29tbWl0IG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gY3JlYXRlIGEgbmV3IGJyYW5jaCBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvaGVhZHMvJXMnPyIKK21zZ3N0ciAiIgorImxhIHBhcnRpZSA8c291cmNlPiBkdSBzcMOpY2lmaWNhdGV1ciBkZSByw6lmw6lyZW5jZSBlc3QgdW4gb2JqZXQgY29tbWl0LlxuIgorIlNvdWhhaXRpZXotdm91cyBjcsOpZXIgdW5lIG5vdXZlbGxlIGJyYW5jaGUgZW4gcG91c3NhbnQgc3VyXG4iCisiJyVzOnJlZnMvaGVhZHMvJXMnwqA/IgorCisjOiByZW1vdGUuYzoxMDQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIHRhZyBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIGNyZWF0ZSBhIG5ldyB0YWcgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorImxhIHBhcnRpZSA8c291cmNlPiBkdSBzcMOpY2lmaWNhdGV1ciBkZSByw6lmw6lyZW5jZSBlc3QgdW4gb2JqZXQgw6l0aXF1ZXR0ZS5cbiIKKyJTb3VoYWl0aWV6LXZvdXMgY3LDqWVyIHVuZSBub3V2ZWxsZSDDqXRpcXVldHRlIGVuIHBvdXNzYW50IHN1clxuIgorIiclczpyZWZzL3RhZ3MvJXMnwqA/IgorCisjOiByZW1vdGUuYzoxMDU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIHRyZWUgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byB0YWcgYSBuZXcgdHJlZSBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisibGEgcGFydGllIDxzb3VyY2U+IGR1IHNww6ljaWZpY2F0ZXVyIGRlIHLDqWbDqXJlbmNlIGVzdCB1biBvYmpldCBhcmJyZS5cbiIKKyJTb3VoYWl0aWV6LXZvdXMgY3LDqWVyIHVuIG5vdXZlbCBhcmJyZSBlbiBwb3Vzc2FudCBzdXJcbiIKKyInJXM6cmVmcy90YWdzLyVzJ8KgPyIKKworIzogcmVtb3RlLmM6MTA1OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSBibG9iIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gdGFnIGEgbmV3IGJsb2IgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorImxhIHBhcnRpZSA8c291cmNlPiBkdSBzcMOpY2lmaWNhdGV1ciBkZSByw6lmw6lyZW5jZSBlc3QgdW4gb2JqZXQgYmxvYi5cbiIKKyJTb3VoYWl0aWV6LXZvdXMgY3LDqWVyIHVuIG5vdXZlYXUgYmxvYiBlbiBwb3Vzc2FudCBzdXJcbiIKKyInJXM6cmVmcy90YWdzLyVzJ8KgPyIKKworIzogcmVtb3RlLmM6MTA5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYnJhbmNoIgorbXNnc3RyICInJXMnIG5lIHBldXQgcGFzIMOqdHJlIHLDqXNvbHVlIGNvbW1lIHVuZSBicmFuY2hlIgorCisjOiByZW1vdGUuYzoxMTA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgJyVzJzogcmVtb3RlIHJlZiBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAic3VwcHJlc3Npb24gZCAnJXMnIGltcG9zc2libGXCoDogbGEgcsOpZsOpcmVuY2UgZGlzdGFudGUgbidleGlzdGUgcGFzIgorCisjOiByZW1vdGUuYzoxMTE4CisjLCBjLWZvcm1hdAorbXNnaWQgImRzdCByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAiIgorImxlIHNww6ljaWZpY2F0ZXVyIGRlIHLDqWbDqXJlbmNlIGRzdCAlcyBjb3JyZXNwb25kIMOgIHBsdXMgZCd1biBzcMOpY2lmaWNhdGV1ciBkZSAiCisicsOpZsOpcmVuY2VzIgorCisjOiByZW1vdGUuYzoxMTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRzdCByZWYgJXMgcmVjZWl2ZXMgZnJvbSBtb3JlIHRoYW4gb25lIHNyYyIKK21zZ3N0ciAibGUgc3DDqWNpZmljYXRldXIgZGUgcsOpZsOpcmVuY2UgZHN0ICVzIHJlw6dvaXQgZGVwdWlzIHBsdXMgZCd1bmUgc291cmNlIgorCisjOiByZW1vdGUuYzoxNjI4IHJlbW90ZS5jOjE3MjkKIG1zZ2lkICJIRUFEIGRvZXMgbm90IHBvaW50IHRvIGEgYnJhbmNoIgogbXNnc3RyICJIRUFEIG5lIHBvaW50ZSBwYXMgc3VyIHVuZSBicmFuY2hlIgogCi0jOiByZW1vdGUuYzoxNTc4CisjOiByZW1vdGUuYzoxNjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggYnJhbmNoOiAnJXMnIgogbXNnc3RyICJwYXMgZGUgYnJhbmNoZSAnJXMnIgogCi0jOiByZW1vdGUuYzoxNTgxCisjOiByZW1vdGUuYzoxNjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHVwc3RyZWFtIGNvbmZpZ3VyZWQgZm9yIGJyYW5jaCAnJXMnIgogbXNnc3RyICJhdWN1bmUgYnJhbmNoZSBhbW9udCBjb25maWd1csOpZSBwb3VyIGxhIGJyYW5jaGUgJyVzJyIKIAotIzogcmVtb3RlLmM6MTU4NworIzogcmVtb3RlLmM6MTY0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1cHN0cmVhbSBicmFuY2ggJyVzJyBub3Qgc3RvcmVkIGFzIGEgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKIG1zZ3N0ciAibGEgYnJhbmNoZSBhbW9udCAnJXMnIG4nZXN0IHBhcyBzdG9ja8OpZSBjb21tZSBicmFuY2hlIGRlIHN1aXZpIgogCi0jOiByZW1vdGUuYzoxNjAyCisjOiByZW1vdGUuYzoxNjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgInB1c2ggZGVzdGluYXRpb24gJyVzJyBvbiByZW1vdGUgJyVzJyBoYXMgbm8gbG9jYWwgdHJhY2tpbmcgYnJhbmNoIgogbXNnc3RyICIiCiAibGEgZGVzdGluYXRpb24gZGUgcG91c3PDqWUgJyVzJyBzdXIgbGUgc2VydmV1ciBkaXN0YW50ICclcycgbidhIHBhcyBkZSAiCiAiYnJhbmNoZSBsb2NhbGUgZGUgc3VpdmkiCiAKLSM6IHJlbW90ZS5jOjE2MTQKKyM6IHJlbW90ZS5jOjE2NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYnJhbmNoICclcycgaGFzIG5vIHJlbW90ZSBmb3IgcHVzaGluZyIKIG1zZ3N0ciAibGEgYnJhbmNoZSAnJXMnIG4nYSBhdWN1bmUgYnJhbmNoZSBkaXN0YW50ZSBkZSBwb3Vzc8OpZSIKIAotIzogcmVtb3RlLmM6MTYyNAorIzogcmVtb3RlLmM6MTY4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJwdXNoIHJlZnNwZWNzIGZvciAnJXMnIGRvIG5vdCBpbmNsdWRlICclcyciCiBtc2dzdHIgImxlcyByw6lmw6lyZW5jZXMgZGUgc3BlYyBwb3VyICclcycgbidpbmNsdWVudCBwYXMgJyVzJyIKIAotIzogcmVtb3RlLmM6MTYzNworIzogcmVtb3RlLmM6MTY5NgogbXNnaWQgInB1c2ggaGFzIG5vIGRlc3RpbmF0aW9uIChwdXNoLmRlZmF1bHQgaXMgJ25vdGhpbmcnKSIKIG1zZ3N0ciAibGEgcG91c3PDqWUgbidhIHBhcyBkZSBkZXN0aW5hdGlvbiAocHVzaC5kZWZhdWx0IHZhdXQgJ25vdGhpbmcnKSIKIAotIzogcmVtb3RlLmM6MTY1OQorIzogcmVtb3RlLmM6MTcxOAogbXNnaWQgImNhbm5vdCByZXNvbHZlICdzaW1wbGUnIHB1c2ggdG8gYSBzaW5nbGUgZGVzdGluYXRpb24iCiBtc2dzdHIgIiIKICJpbXBvc3NpYmxlIGRlIHLDqXNvdWRyZSB1bmUgcG91c3PDqWUgJ3NpbXBsZScgcG91ciB1bmUgZGVzdGluYXRpb24gdW5pcXVlIgogCi0jOiByZW1vdGUuYzoxOTM1CisjOiByZW1vdGUuYzoxODQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSB0cm91dmVyIGxhIHLDqWbDqXJlbmNlIGRpc3RhbnRlICVzIgorCisjOiByZW1vdGUuYzoxODU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiogSWdub3JpbmcgZnVubnkgcmVmICclcycgbG9jYWxseSIKK21zZ3N0ciAiKiBSw6lmw6lyZW5jZSBiaXphcnJlICclcycgaWdub3LDqWUgbG9jYWxlbWVudCIKKworIzogcmVtb3RlLmM6MjAyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBpcyBiYXNlZCBvbiAnJXMnLCBidXQgdGhlIHVwc3RyZWFtIGlzIGdvbmUuXG4iCiBtc2dzdHIgIlZvdHJlIGJyYW5jaGUgZXN0IGJhc8OpZSBzdXIgJyVzJywgbWFpcyBsYSBicmFuY2hlIGFtb250IGEgZGlzcGFydS5cbiIKIAotIzogcmVtb3RlLmM6MTkzOQorIzogcmVtb3RlLmM6MjAyNAogbXNnaWQgIiAgKHVzZSBcImdpdCBicmFuY2ggLS11bnNldC11cHN0cmVhbVwiIHRvIGZpeHVwKVxuIgogbXNnc3RyICIgICh1dGlsaXNleiBcImdpdCBicmFuY2ggLS11bnNldC11cHN0cmVhbVwiIHBvdXIgY29ycmlnZXIpXG4iCiAKLSM6IHJlbW90ZS5jOjE5NDIKKyM6IHJlbW90ZS5jOjIwMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgdXAgdG8gZGF0ZSB3aXRoICclcycuXG4iCiBtc2dzdHIgIlZvdHJlIGJyYW5jaGUgZXN0IMOgIGpvdXIgYXZlYyAnJXMnLlxuIgogCi0jOiByZW1vdGUuYzoxOTQ2CisjOiByZW1vdGUuYzoyMDMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGFuZCAnJXMnIHJlZmVyIHRvIGRpZmZlcmVudCBjb21taXRzLlxuIgogbXNnc3RyICJWb3RyZSBicmFuY2hlIGV0ICclcycgZm9udCByw6lmw6lyZW5jZSDDoCBkZXMgY29tbWl0cyBkaWZmw6lyZW50cy5cbiIKIAotIzogcmVtb3RlLmM6MTk0OQorIzogcmVtb3RlLmM6MjAzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICh1c2UgXCIlc1wiIGZvciBkZXRhaWxzKVxuIgogbXNnc3RyICIgICh1dGlsaXNleiBcIiVzXCIgcG91ciBwbHVzIGRlIGTDqXRhaWxzKVxuIgogCi0jOiByZW1vdGUuYzoxOTUzCisjOiByZW1vdGUuYzoyMDM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIGFoZWFkIG9mICclcycgYnkgJWQgY29tbWl0LlxuIgogbXNnaWRfcGx1cmFsICJZb3VyIGJyYW5jaCBpcyBhaGVhZCBvZiAnJXMnIGJ5ICVkIGNvbW1pdHMuXG4iCiBtc2dzdHJbMF0gIlZvdHJlIGJyYW5jaGUgZXN0IGVuIGF2YW5jZSBzdXIgJyVzJyBkZSAlZCBjb21taXQuXG4iCiBtc2dzdHJbMV0gIlZvdHJlIGJyYW5jaGUgZXN0IGVuIGF2YW5jZSBzdXIgJyVzJyBkZSAlZCBjb21taXRzLlxuIgogCi0jOiByZW1vdGUuYzoxOTU5CisjOiByZW1vdGUuYzoyMDQ0CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1c2hcIiB0byBwdWJsaXNoIHlvdXIgbG9jYWwgY29tbWl0cylcbiIKIG1zZ3N0ciAiICAodXRpbGlzZXogXCJnaXQgcHVzaFwiIHBvdXIgcHVibGllciB2b3MgY29tbWl0cyBsb2NhdXgpXG4iCiAKLSM6IHJlbW90ZS5jOjE5NjIKKyM6IHJlbW90ZS5jOjIwNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgYmVoaW5kICclcycgYnkgJWQgY29tbWl0LCBhbmQgY2FuIGJlIGZhc3QtZm9yd2FyZGVkLlxuIgogbXNnaWRfcGx1cmFsICIiCkBAIC00NDU4LDExICs2NDU2LDExIEBACiAiVm90cmUgYnJhbmNoZSBlc3QgZW4gcmV0YXJkIHN1ciAnJXMnIGRlICVkIGNvbW1pdHMsIGV0IHBldXQgw6p0cmUgbWlzZSDDoCBqb3VyICIKICJlbiBhdmFuY2UgcmFwaWRlLlxuIgogCi0jOiByZW1vdGUuYzoxOTcwCisjOiByZW1vdGUuYzoyMDU1CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1bGxcIiB0byB1cGRhdGUgeW91ciBsb2NhbCBicmFuY2gpXG4iCiBtc2dzdHIgIiAgKHV0aWxpc2V6IFwiZ2l0IHB1bGxcIiBwb3VyIG1ldHRyZSDDoCBqb3VyIHZvdHJlIGJyYW5jaGUgbG9jYWxlKVxuIgogCi0jOiByZW1vdGUuYzoxOTczCisjOiByZW1vdGUuYzoyMDU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGJyYW5jaCBhbmQgJyVzJyBoYXZlIGRpdmVyZ2VkLFxuIgpAQCAtNDQ3NywxMSArNjQ3NSwxNiBAQAogIlZvdHJlIGJyYW5jaGUgZXQgJyVzJyBvbnQgZGl2ZXJnw6ksXG4iCiAiZXQgb250ICVkIGV0ICVkIGNvbW1pdHMgZGlmZsOpcmVudHMgY2hhY3VuZSByZXNwZWN0aXZlbWVudC5cbiIKIAotIzogcmVtb3RlLmM6MTk4MworIzogcmVtb3RlLmM6MjA2OAogbXNnaWQgIiAgKHVzZSBcImdpdCBwdWxsXCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycylcbiIKIG1zZ3N0ciAiIgogIiAgKHV0aWxpc2V6IFwiZ2l0IHB1bGxcIiBwb3VyIGZ1c2lvbm5lciBsYSBicmFuY2hlIGRpc3RhbnRlIGRhbnMgbGEgdsO0dHJlKVxuIgogCisjOiByZW1vdGUuYzoyMjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBwYXJzZSBleHBlY3RlZCBvYmplY3QgbmFtZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGUgbm9tIGF0dGVuZHUgZCdvYmpldCAnJXMnIgorCiAjOiByZXBsYWNlLW9iamVjdC5jOjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCByZXBsYWNlIHJlZiBuYW1lOiAlcyIKQEAgLTQ0OTIsNyArNjQ5NSw3IEBACiBtc2dpZCAiZHVwbGljYXRlIHJlcGxhY2UgcmVmOiAlcyIKIG1zZ3N0ciAicsOpZsOpcmVuY2UgZGUgcmVtcGxhY2VtZW50IGR1cGxpcXXDqWXCoDogJXMiCiAKLSM6IHJlcGxhY2Utb2JqZWN0LmM6NzMKKyM6IHJlcGxhY2Utb2JqZWN0LmM6ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZSBkZXB0aCB0b28gaGlnaCBmb3Igb2JqZWN0ICVzIgogbXNnc3RyICJwcm9mb25kZXVyIGRlIHJlbXBsYWNlbWVudCB0cm9wIGdyYW5kZSBwb3VyIGwnb2JqZXQgJXMiCkBAIC00NTA1LDExICs2NTA4LDYgQEAKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcmVyZXJlIHJlY29yZCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgbCdlbnJlZ2lzdHJlbWVudCByZXJlcmUiCiAKLSM6IHJlcmVyZS5jOjQ4NSByZXJlcmUuYzo2OTIgc2VxdWVuY2VyLmM6MzEzNiBzZXF1ZW5jZXIuYzozMTYyCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnIgotbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSAnJXMnIgotCiAjOiByZXJlcmUuYzo0OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlcmUgd2VyZSBlcnJvcnMgd2hpbGUgd3JpdGluZyAnJXMnICglcykiCkBAIC00NTYwLDggKzY1NTgsOCBAQAogbXNnaWQgIlJlY29yZGVkIHByZWltYWdlIGZvciAnJXMnIgogbXNnc3RyICJQcsOpLWltYWdlIGVucmVnaXN0csOpZSBwb3VyICclcyciCiAKLSM6IHJlcmVyZS5jOjg4MSBzdWJtb2R1bGUuYzoxNzYzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDEzCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQyMworIzogcmVyZXJlLmM6ODgxIHN1Ym1vZHVsZS5jOjIwNzggYnVpbHRpbi9sb2cuYzoxODcxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ1NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ2NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciBsZSByw6lwZXJ0b2lyZSAnJXMnIgpAQCAtNDU5NSwyOSArNjU5MywzMyBAQAogbXNnaWQgInVuYWJsZSB0byBvcGVuIHJyLWNhY2hlIGRpcmVjdG9yeSIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSByw6lwZXJ0b2lyZSByci1jYWNoZSIKIAotIzogcmV2aXNpb24uYzoyMzI0CisjOiByZXZpc2lvbi5jOjI0OTcKIG1zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoIGFwcGVhcnMgdG8gYmUgYnJva2VuIgogbXNnc3RyICJ2b3RyZSBicmFuY2hlIGFjdHVlbGxlIHNlbWJsZSBjYXNzw6llIgogCi0jOiByZXZpc2lvbi5jOjIzMjcKKyM6IHJldmlzaW9uLmM6MjUwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoICclcycgZG9lcyBub3QgaGF2ZSBhbnkgY29tbWl0cyB5ZXQiCiBtc2dzdHIgInZvdHJlIGJyYW5jaGUgYWN0dWVsbGUgJyVzJyBuZSBjb250aWVudCBlbmNvcmUgYXVjdW4gY29tbWl0IgogCi0jOiByZXZpc2lvbi5jOjI1MjMKKyM6IHJldmlzaW9uLmM6MjcwOAogbXNnaWQgIi0tZmlyc3QtcGFyZW50IGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYmlzZWN0IgogbXNnc3RyICItLWZpcnN0LXBhcmVudCBlc3QgaW5jb21wYXRpYmxlIGF2ZWMgLS1iaXNlY3QiCiAKLSM6IHJ1bi1jb21tYW5kLmM6NzQwCisjOiByZXZpc2lvbi5jOjI3MTIKK21zZ2lkICItTCBkb2VzIG5vdCB5ZXQgc3VwcG9ydCBkaWZmIGZvcm1hdHMgYmVzaWRlcyAtcCBhbmQgLXMiCittc2dzdHIgIi1MIG5lIHN1cHBvcnRlIHBhcyBlbmNvcmUgbGVzIGZvcm1hdHMgZGUgZGlmZiBhdXRyZXMgcXVlIC1wIGV0IC1zIgorCisjOiBydW4tY29tbWFuZC5jOjc2MwogbXNnaWQgIm9wZW4gL2Rldi9udWxsIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGRlIGwnb3V2ZXJ0dXJlIGRlIC9kZXYvbnVsbCIKIAotIzogcnVuLWNvbW1hbmQuYzoxMjI5CisjOiBydW4tY29tbWFuZC5jOjEyNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNyZWF0ZSBhc3luYyB0aHJlYWQ6ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciB1biBmaWwgYXN5bmNocm9uZSA6ICVzIgogCi0jOiBydW4tY29tbWFuZC5jOjEyOTMKKyM6IHJ1bi1jb21tYW5kLmM6MTMzMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlICclcycgaG9vayB3YXMgaWdub3JlZCBiZWNhdXNlIGl0J3Mgbm90IHNldCBhcyBleGVjdXRhYmxlLlxuIgpAQCAtNDYyNywzMSArNjYyOSwzMSBAQAogIlZvdXMgcG91dmV6IGTDqXNhY3RpdmVyIGNldCBhdmVydGlzc2VtZW50IGF2ZWMgYGdpdCBjb25maWcgYWR2aWNlLmlnbm9yZWRIb29rICIKICJmYWxzZWAuIgogCi0jOiBzZW5kLXBhY2suYzoxNDIKKyM6IHNlbmQtcGFjay5jOjE0NAogbXNnaWQgInVuZXhwZWN0ZWQgZmx1c2ggcGFja2V0IHdoaWxlIHJlYWRpbmcgcmVtb3RlIHVucGFjayBzdGF0dXMiCiBtc2dzdHIgIiIKICJwYXF1ZXQgZGUgbmV0dG95YWdlIGluYXR0ZW5kdSBwZW5kYW50IGxhIGxlY3R1cmUgZGUgbCfDqXRhdCBkZSBkw6lwYXF1ZXRhZ2UgIgogImRpc3RhbnQiCiAKLSM6IHNlbmQtcGFjay5jOjE0NAorIzogc2VuZC1wYWNrLmM6MTQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSByZW1vdGUgdW5wYWNrIHN0YXR1czogJXMiCiBtc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBsJ8OpdGF0IGRlIGTDqXBhcXVldGFnZSBkaXN0YW50wqA6ICVzIgogCi0jOiBzZW5kLXBhY2suYzoxNDYKKyM6IHNlbmQtcGFjay5jOjE0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZW1vdGUgdW5wYWNrIGZhaWxlZDogJXMiCiBtc2dzdHIgImxlIGTDqXBhcXVldGFnZSBhIMOpY2hvdcOpwqA6ICVzIgogCi0jOiBzZW5kLXBhY2suYzozMDgKKyM6IHNlbmQtcGFjay5jOjMwOQogbXNnaWQgImZhaWxlZCB0byBzaWduIHRoZSBwdXNoIGNlcnRpZmljYXRlIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHNpZ25lciBsZSBjZXJ0aWZpY2F0IGRlIHBvdXNzw6llIgogCi0jOiBzZW5kLXBhY2suYzo0MjEKKyM6IHNlbmQtcGFjay5jOjQyMwogbXNnaWQgInRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS1zaWduZWQgcHVzaCIKIG1zZ3N0ciAiTGUgcmVjZXZldXIgbmUgZ8OocmUgcGFzIGxlcyBwb3Vzc8OpZXMgYXZlYyAtLXNpZ25lZCIKIAotIzogc2VuZC1wYWNrLmM6NDIzCisjOiBzZW5kLXBhY2suYzo0MjUKIG1zZ2lkICIiCiAibm90IHNlbmRpbmcgYSBwdXNoIGNlcnRpZmljYXRlIHNpbmNlIHRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS0iCiAic2lnbmVkIHB1c2giCkBAIC00NjU5LDQyICs2NjYxLDQ3IEBACiAicGFzIGQnZW52b2kgZGUgY2VydGlmaWNhdCBkZSBwb3Vzc8OpZSBjYXIgbGUgcmVjZXZldXIgbmUgZ8OocmUgcGFzIGxlcyAiCiAicG91c3PDqWVzIGF2ZWMgLS1zaWduZWQiCiAKLSM6IHNlbmQtcGFjay5jOjQzNQorIzogc2VuZC1wYWNrLmM6NDM3CiBtc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCAtLWF0b21pYyBwdXNoIgogbXNnc3RyICJMZSByZWNldmV1ciBuZSBnw6hyZSBwYXMgbGVzIHBvdXNzw6llcyBhdmVjIC0tYXRvbWljIgogCi0jOiBzZW5kLXBhY2suYzo0NDAKKyM6IHNlbmQtcGFjay5jOjQ0MgogbXNnaWQgInRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgcHVzaCBvcHRpb25zIgogbXNnc3RyICJMZSByZWNldmV1ciBuZSBnw6hyZSBwYXMgbGVzIG9wdGlvbnMgZGUgcG91c3PDqWVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxODMKKyM6IHNlcXVlbmNlci5jOjE5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbW1pdCBtZXNzYWdlIGNsZWFudXAgbW9kZSAnJXMnIgogbXNnc3RyICJtb2RlIGRlIG5ldHRveWFnZSBpbnZhbGlkZSBkZSBtZXNzYWdlIGRlIHZhbGlkYXRpb24gJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6Mjg3CisjOiBzZXF1ZW5jZXIuYzoyOTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGRlbGV0ZSAnJXMnIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHN1cHByaW1lciAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzozMTMKKyM6IHNlcXVlbmNlci5jOjMxNSBidWlsdGluL3JlYmFzZS5jOjc4NSBidWlsdGluL3JlYmFzZS5jOjE3NTAgYnVpbHRpbi9ybS5jOjM4NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVtb3ZlICclcyciCittc2dzdHIgImltcG9zc2libGUgZGUgc3VwcHJpbWVyICclcyciCisKKyM6IHNlcXVlbmNlci5jOjMyNQogbXNnaWQgInJldmVydCIKIG1zZ3N0ciAicmV2ZXJ0IgogCi0jOiBzZXF1ZW5jZXIuYzozMTUKKyM6IHNlcXVlbmNlci5jOjMyNwogbXNnaWQgImNoZXJyeS1waWNrIgogbXNnc3RyICJjaGVycnktcGljayIKIAotIzogc2VxdWVuY2VyLmM6MzE3Ci1tc2dpZCAicmViYXNlIC1pIgotbXNnc3RyICJyZWJhc2UgLWkiCisjOiBzZXF1ZW5jZXIuYzozMjkKK21zZ2lkICJyZWJhc2UiCittc2dzdHIgInJlYmFzZSIKIAotIzogc2VxdWVuY2VyLmM6MzE5CisjOiBzZXF1ZW5jZXIuYzozMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBhY3Rpb246ICVkIgogbXNnc3RyICJhY3Rpb24gaW5jb25udWXCoDogJWQiCiAKLSM6IHNlcXVlbmNlci5jOjM3NgorIzogc2VxdWVuY2VyLmM6Mzg5CiBtc2dpZCAiIgogImFmdGVyIHJlc29sdmluZyB0aGUgY29uZmxpY3RzLCBtYXJrIHRoZSBjb3JyZWN0ZWQgcGF0aHNcbiIKICJ3aXRoICdnaXQgYWRkIDxwYXRocz4nIG9yICdnaXQgcm0gPHBhdGhzPiciCkBAIC00NzAyLDcgKzY3MDksNyBAQAogImFwcsOocyByw6lzb2x1dGlvbiBkZXMgY29uZmxpdHMsIG1hcnF1ZXogbGVzIGNoZW1pbnMgY29ycmlnw6lzXG4iCiAiYXZlYyAnZ2l0IGFkZCA8Y2hlbWlucz4nIG91ICdnaXQgcm0gPGNoZW1pbnM+JyIKIAotIzogc2VxdWVuY2VyLmM6Mzc5CisjOiBzZXF1ZW5jZXIuYzozOTIKIG1zZ2lkICIiCiAiYWZ0ZXIgcmVzb2x2aW5nIHRoZSBjb25mbGljdHMsIG1hcmsgdGhlIGNvcnJlY3RlZCBwYXRoc1xuIgogIndpdGggJ2dpdCBhZGQgPHBhdGhzPicgb3IgJ2dpdCBybSA8cGF0aHM+J1xuIgpAQCAtNDcxMiwxMTAgKzY3MTksMTEwIEBACiAiYXZlYyAnZ2l0IGFkZCA8Y2hlbWlucz4nIG91ICdnaXQgcm0gPGNoZW1pbnM+J1xuIgogInB1aXMgdmFsaWRleiBsZSByw6lzdWx0YXQgYXZlYyAnZ2l0IGNvbW1pdCciCiAKLSM6IHNlcXVlbmNlci5jOjM5MiBzZXF1ZW5jZXIuYzoyNjMyCisjOiBzZXF1ZW5jZXIuYzo0MDUgc2VxdWVuY2VyLmM6MjkwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9jayAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHZlcnJvdWlsbGVyICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjM5OQorIzogc2VxdWVuY2VyLmM6NDEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBlb2wgdG8gJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgbGEgZmluIGRlIGxpZ25lIGRhbnMgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6NDA0IHNlcXVlbmNlci5jOjI1MTUgc2VxdWVuY2VyLmM6MjYzOCBzZXF1ZW5jZXIuYzoyNjUyCi0jOiBzZXF1ZW5jZXIuYzoyODg1CisjOiBzZXF1ZW5jZXIuYzo0MTcgc2VxdWVuY2VyLmM6MjcwNiBzZXF1ZW5jZXIuYzoyOTA3IHNlcXVlbmNlci5jOjI5MjEKKyM6IHNlcXVlbmNlci5jOjMxODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplICclcyciCiBtc2dzdHIgIsOpY2hlYyBsb3JzIGRlIGxhIGZpbmFsaXNhdGlvbiBkZSAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzo0Mjcgc2VxdWVuY2VyLmM6OTIxIHNlcXVlbmNlci5jOjE1OTQgc2VxdWVuY2VyLmM6MjUzNQotIzogc2VxdWVuY2VyLmM6Mjg2NyBzZXF1ZW5jZXIuYzoyOTc0IGJ1aWx0aW4vYW0uYzoyNjAgYnVpbHRpbi9jb21taXQuYzo3NDYKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDg0IGJ1aWx0aW4vcmViYXNlLmM6MTUyCisjOiBzZXF1ZW5jZXIuYzo0NDAgc2VxdWVuY2VyLmM6MTYxMyBzZXF1ZW5jZXIuYzoyNzI2IHNlcXVlbmNlci5jOjMxNjcKKyM6IHNlcXVlbmNlci5jOjMyNzYgYnVpbHRpbi9hbS5jOjI0OSBidWlsdGluL2NvbW1pdC5jOjc4NyBidWlsdGluL21lcmdlLmM6MTEyMAorIzogYnVpbHRpbi9yZWJhc2UuYzo1OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjQ1MworIzogc2VxdWVuY2VyLmM6NDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgInlvdXIgbG9jYWwgY2hhbmdlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlcy4iCiBtc2dzdHIgInZvcyBtb2RpZmljYXRpb25zIGxvY2FsZXMgc2VyYWllbnQgw6ljcmFzw6llcyBwYXIgJXMuIgogCi0jOiBzZXF1ZW5jZXIuYzo0NTcKKyM6IHNlcXVlbmNlci5jOjQ3MAogbXNnaWQgImNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSB0byBwcm9jZWVkLiIKIG1zZ3N0ciAidmFsaWRleiB2b3MgbW9kaWZpY2F0aW9ucyBvdSBsZXMgcmVtaXNlciBwb3VyIGNvbnRpbnVlci4iCiAKLSM6IHNlcXVlbmNlci5jOjQ4NgorIzogc2VxdWVuY2VyLmM6NTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBmYXN0LWZvcndhcmQiCiBtc2dzdHIgIiVzwqA6IGF2YW5jZSByYXBpZGUiCiAKKyM6IHNlcXVlbmNlci5jOjU0MSBidWlsdGluL3RhZy5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGNsZWFudXAgbW9kZSAlcyIKK21zZ3N0ciAiTW9kZSBkZSBuZXR0b3lhZ2UgaW52YWxpZGUgJXMiCisKICMuIFRSQU5TTEFUT1JTOiAlcyB3aWxsIGJlICJyZXZlcnQiLCAiY2hlcnJ5LXBpY2siIG9yCi0jLiAicmViYXNlIC1pIi4KKyMuICJyZWJhc2UiLgogIy4KLSM6IHNlcXVlbmNlci5jOjU3NQorIzogc2VxdWVuY2VyLmM6NjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBVbmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCiBtc2dzdHIgIiVzOiBJbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBub3V2ZWF1IGZpY2hpZXIgaW5kZXgiCiAKLSM6IHNlcXVlbmNlci5jOjU5MQorIzogc2VxdWVuY2VyLmM6NjUyCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBjYWNoZSB0cmVlIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIG1ldHRyZSDDoCBqb3VyIGwnYXJicmUgZGUgY2FjaGUiCiAKLSM6IHNlcXVlbmNlci5jOjYwNAorIzogc2VxdWVuY2VyLmM6NjY2CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgSEVBRCBjb21taXQiCiBtc2dzdHIgImltcG9zc2libGUgZGUgcsOpc291ZHJlIGxlIGNvbW1pdCBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzo2ODQKKyM6IHNlcXVlbmNlci5jOjc0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBrZXkgcHJlc2VudCBpbiAnJS4qcyciCiBtc2dzdHIgImF1Y3VuZSBjbMOpIHByw6lzZW50ZSBkYW5zICclLipzJyIKIAotIzogc2VxdWVuY2VyLmM6Njk1CisjOiBzZXF1ZW5jZXIuYzo3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlcXVvdGUgdmFsdWUgb2YgJyVzJyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBkw6ljb3RlciBsYSB2YWxldXIgZGUgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6NzMyIHdyYXBwZXIuYzoyMjcgd3JhcHBlci5jOjM5NyBidWlsdGluL2FtLmM6NzE5Ci0jOiBidWlsdGluL2FtLmM6ODExIGJ1aWx0aW4vbWVyZ2UuYzoxMDgxCisjOiBzZXF1ZW5jZXIuYzo3OTQgd3JhcHBlci5jOjE5MCB3cmFwcGVyLmM6MzYwIGJ1aWx0aW4vYW0uYzo3MTAKKyM6IGJ1aWx0aW4vYW0uYzo4MDIgYnVpbHRpbi9tZXJnZS5jOjExMTcgYnVpbHRpbi9yZWJhc2UuYzoxMDcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHJlYWRpbmciCiBtc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgJyVzJyBlbiBsZWN0dXJlIgogCi0jOiBzZXF1ZW5jZXIuYzo3NDIKKyM6IHNlcXVlbmNlci5jOjgwNAogbXNnaWQgIidHSVRfQVVUSE9SX05BTUUnIGFscmVhZHkgZ2l2ZW4iCiBtc2dzdHIgIidHSVRfQVVUSE9SX05BTUUnIGTDqWrDoCBmb3VybmkiCiAKLSM6IHNlcXVlbmNlci5jOjc0NworIzogc2VxdWVuY2VyLmM6ODA5CiBtc2dpZCAiJ0dJVF9BVVRIT1JfRU1BSUwnIGFscmVhZHkgZ2l2ZW4iCiBtc2dzdHIgIidHSVRfQVVUSE9SX0VNQUlMJyBkw6lqw6AgZm91cm5pIgogCi0jOiBzZXF1ZW5jZXIuYzo3NTIKKyM6IHNlcXVlbmNlci5jOjgxNAogbXNnaWQgIidHSVRfQVVUSE9SX0RBVEUnIGFscmVhZHkgZ2l2ZW4iCiBtc2dzdHIgIidHSVRfQVVUSE9SX0RBVEUnIGTDqWrDoCBmb3VybmkiCiAKLSM6IHNlcXVlbmNlci5jOjc1NgorIzogc2VxdWVuY2VyLmM6ODE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gdmFyaWFibGUgJyVzJyIKIG1zZ3N0ciAidmFyaWFibGUgaW5jb25udWUgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6NzYxCisjOiBzZXF1ZW5jZXIuYzo4MjMKIG1zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX05BTUUnIgogbXNnc3RyICInR0lUX0FVVEhPUl9OQU1FJyBtYW5xdWFudCIKIAotIzogc2VxdWVuY2VyLmM6NzYzCisjOiBzZXF1ZW5jZXIuYzo4MjUKIG1zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX0VNQUlMJyIKIG1zZ3N0ciAiJ0dJVF9BVVRIT1JfRU1BSUwnIG1hbnF1YW50IgogCi0jOiBzZXF1ZW5jZXIuYzo3NjUKKyM6IHNlcXVlbmNlci5jOjgyNwogbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfREFURSciCiBtc2dzdHIgIidHSVRfQVVUSE9SX0RBVEUnIG1hbnF1YW50IgogCi0jOiBzZXF1ZW5jZXIuYzo4MjUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBkYXRlIGZvcm1hdCAnJXMnIGluICclcyciCi1tc2dzdHIgImZvcm1hdCBkZSBkYXRlIGludmFsaWRlICclcycgZGFucyAnJXMnIgotCi0jOiBzZXF1ZW5jZXIuYzo4NDIKKyM6IHNlcXVlbmNlci5jOjg3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAieW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWVcbiIKQEAgLTQ4NDQsMTUgKzY4NTEsMTEgQEAKICJcbiIKICIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogCi0jOiBzZXF1ZW5jZXIuYzo5MzUKLW1zZ2lkICJ3cml0aW5nIHJvb3QgY29tbWl0IgotbXNnc3RyICLDqWNyaXR1cmUgZHUgY29tbWl0IHJhY2luZSIKLQotIzogc2VxdWVuY2VyLmM6MTE0MgorIzogc2VxdWVuY2VyLmM6MTE0OAogbXNnaWQgIidwcmVwYXJlLWNvbW1pdC1tc2cnIGhvb2sgZmFpbGVkIgogbXNnc3RyICLDqWNoZWMgZHUgY3JvY2hldCAncHJlcGFyZS1jb21taXQtbXNnJyIKIAotIzogc2VxdWVuY2VyLmM6MTE0OQorIzogc2VxdWVuY2VyLmM6MTE1NAogbXNnaWQgIiIKICJZb3VyIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgd2VyZSBjb25maWd1cmVkIGF1dG9tYXRpY2FsbHkgYmFzZWRcbiIKICJvbiB5b3VyIHVzZXJuYW1lIGFuZCBob3N0bmFtZS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhleSBhcmUgYWNjdXJhdGUuXG4iCkBAIC00ODcxLDcgKzY4NzQsOCBAQAogImZvbmRhbnQgc3VyIHZvdHJlIG5vbSBkJ3V0aWxpc2F0ZXVyIGV0IGxlIG5vbSBkZSB2b3RyZSBtYWNoaW5lLiBWZXVpbGxleiBcbiIKICJ2w6lyaWZpZXIgcXUnaWxzIHNvbnQgY29ycmVjdHMuIFZvdXMgcG91dmV6IHN1cHByaW1lciBjZSBtZXNzYWdlIGVuIGxlcyBcbiIKICJwYXJhbcOpdHJhbnQgZXhwbGljaXRlbWVudC4gTGFuY2V6IGxlcyBjb21tYW5kZXMgc3VpdmFudGVzIGV0IHN1aXZleiBsZXNcbiIKLSJpbnN0cnVjdGlvbiBkYW5zIHZvdHJlIMOpZGl0ZXVyIHBvdXIgw6lkaXRlciB2b3RyZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb27CoDpcbiIKKyJpbnN0cnVjdGlvbnMgZGFucyB2b3RyZSDDqWRpdGV1ciBwb3VyIMOpZGl0ZXIgdm90cmUgZmljaGllciBkZSAiCisiY29uZmlndXJhdGlvbsKgOlxuIgogIlxuIgogIiAgICBnaXQgY29uZmlnIC0tZ2xvYmFsIC0tZWRpdFxuIgogIlxuIgpAQCAtNDg4MCw3ICs2ODg0LDcgQEAKICJcbiIKICIgICAgZ2l0IGNvbW1pdCAtLWFtZW5kIC0tcmVzZXQtYXV0aG9yXG4iCiAKLSM6IHNlcXVlbmNlci5jOjExNjIKKyM6IHNlcXVlbmNlci5jOjExNjcKIG1zZ2lkICIiCiAiWW91ciBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIHdlcmUgY29uZmlndXJlZCBhdXRvbWF0aWNhbGx5IGJhc2VkXG4iCiAib24geW91ciB1c2VybmFtZSBhbmQgaG9zdG5hbWUuIFBsZWFzZSBjaGVjayB0aGF0IHRoZXkgYXJlIGFjY3VyYXRlLlxuIgpAQCAtNDkwNiwzMDIgKzY5MTAsMzQ4IEBACiAiXG4iCiAiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjAyCisjOiBzZXF1ZW5jZXIuYzoxMjA5CiBtc2dpZCAiY291bGRuJ3QgbG9vayB1cCBuZXdseSBjcmVhdGVkIGNvbW1pdCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByZXRyb3V2ZXIgbGUgY29tbWl0IG5vdXZlbGxlbWVudCBjcsOpw6kiCiAKLSM6IHNlcXVlbmNlci5jOjEyMDQKKyM6IHNlcXVlbmNlci5jOjEyMTEKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgbmV3bHkgY3JlYXRlZCBjb21taXQiCiBtc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBsZSBjb21taXQgbm91dmVsbGVtZW50IGNyw6nDqSIKIAotIzogc2VxdWVuY2VyLmM6MTI1MAorIzogc2VxdWVuY2VyLmM6MTI1NwogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIEhFQUQgYWZ0ZXIgY3JlYXRpbmcgY29tbWl0IgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHLDqXNvdWRyZSBIRUFEIGFwcsOocyBjcsOpYXRpb24gZHUgY29tbWl0IgogCi0jOiBzZXF1ZW5jZXIuYzoxMjUyCisjOiBzZXF1ZW5jZXIuYzoxMjU5CiBtc2dpZCAiZGV0YWNoZWQgSEVBRCIKIG1zZ3N0ciAiSEVBRCBkw6l0YWNow6llIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjU2CisjOiBzZXF1ZW5jZXIuYzoxMjYzCiBtc2dpZCAiIChyb290LWNvbW1pdCkiCiBtc2dzdHIgIiAoY29tbWl0IHJhY2luZSkiCiAKLSM6IHNlcXVlbmNlci5jOjEyNzcKKyM6IHNlcXVlbmNlci5jOjEyODQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgSEVBRCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjEyNzkKKyM6IHNlcXVlbmNlci5jOjEyODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiSEVBRCAlcyBpcyBub3QgYSBjb21taXQhIgogbXNnc3RyICJIRUFEICVzIG4nZXN0IHBhcyB1biBjb21taXQgISIKIAotIzogc2VxdWVuY2VyLmM6MTI4MyBidWlsdGluL2NvbW1pdC5jOjE1NDMKKyM6IHNlcXVlbmNlci5jOjEyOTAgc2VxdWVuY2VyLmM6MTM2NCBidWlsdGluL2NvbW1pdC5jOjE1NzQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgSEVBRCBjb21taXQiCiBtc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBsZSBjb21taXQgSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6MTMzNCBzZXF1ZW5jZXIuYzoxOTM0CisjOiBzZXF1ZW5jZXIuYzoxMzQyIHNlcXVlbmNlci5jOjE5NjgKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0IGF1dGhvciIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGwnYXV0ZXVyIGR1IGNvbW1pdCIKIAotIzogc2VxdWVuY2VyLmM6MTM0NCBidWlsdGluL2FtLmM6MTU4NSBidWlsdGluL21lcmdlLmM6Njc3CisjOiBzZXF1ZW5jZXIuYzoxMzUzIGJ1aWx0aW4vYW0uYzoxNTY2IGJ1aWx0aW4vbWVyZ2UuYzo2ODcKIG1zZ2lkICJnaXQgd3JpdGUtdHJlZSBmYWlsZWQgdG8gd3JpdGUgYSB0cmVlIgogbXNnc3RyICJnaXQgd3JpdGUtdHJlZSBhIMOpY2hvdcOpIMOgIMOpY3JpcmUgdW4gYXJicmUiCiAKLSM6IHNlcXVlbmNlci5jOjEzNjEgc2VxdWVuY2VyLmM6MTQxNgorIzogc2VxdWVuY2VyLmM6MTM4NiBzZXF1ZW5jZXIuYzoxNDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIGNvbW1pdCBtZXNzYWdlIGZyb20gJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGxlIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiBkZSAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzoxMzgzIGJ1aWx0aW4vYW0uYzoxNjA2IGJ1aWx0aW4vY29tbWl0LmM6MTY0NiBidWlsdGluL21lcmdlLmM6ODU4Ci0jOiBidWlsdGluL21lcmdlLmM6ODgzCisjOiBzZXF1ZW5jZXIuYzoxNDEzIGJ1aWx0aW4vYW0uYzoxNTg4IGJ1aWx0aW4vY29tbWl0LmM6MTY3MyBidWlsdGluL21lcmdlLmM6ODg2CisjOiBidWlsdGluL21lcmdlLmM6OTExCiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGNvbW1pdCBvYmplY3QiCiBtc2dzdHIgIsOpY2hlYyBkZSBsJ8OpY3JpdHVyZSBkZSBsJ29iamV0IGNvbW1pdCIKIAotIzogc2VxdWVuY2VyLmM6MTQ0MworIzogc2VxdWVuY2VyLmM6MTQ3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGUgY29tbWl0ICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxNDQ4CisjOiBzZXF1ZW5jZXIuYzoxNDc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBwYXJlbnQgY29tbWl0ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGUgY29tbWl0IHBhcmVudCAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTU0NiBzZXF1ZW5jZXIuYzoxNjU0CisjOiBzZXF1ZW5jZXIuYzoxNTYyIHNlcXVlbmNlci5jOjE2NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBjb21tYW5kOiAlZCIKIG1zZ3N0ciAiY29tbWFuZGUgaW5jb25udWXCoDogJWQiCiAKLSM6IHNlcXVlbmNlci5jOjE2MDEgc2VxdWVuY2VyLmM6MTYyNgorIzogc2VxdWVuY2VyLmM6MTYyMCBzZXF1ZW5jZXIuYzoxNjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAlZCBjb21taXRzLiIKIG1zZ3N0ciAiQ2VjaSBlc3QgbGEgY29tYmluYWlzb24gZGUgJWQgY29tbWl0cy4iCiAKLSM6IHNlcXVlbmNlci5jOjE2MTEgc2VxdWVuY2VyLmM6NDc0NAorIzogc2VxdWVuY2VyLmM6MTYzMAogbXNnaWQgIm5lZWQgYSBIRUFEIHRvIGZpeHVwIgogbXNnc3RyICJ1bmUgSEVBRCBlc3QgbsOpY2Vzc2FpcmUgw6AgbGEgY29ycmVjdGlvbiIKIAotIzogc2VxdWVuY2VyLmM6MTYxMyBzZXF1ZW5jZXIuYzoyOTEyCisjOiBzZXF1ZW5jZXIuYzoxNjMyIHNlcXVlbmNlci5jOjMyMTIKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBIRUFEIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIGxpcmUgSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6MTYxNQorIzogc2VxdWVuY2VyLmM6MTYzNAogbXNnaWQgImNvdWxkIG5vdCByZWFkIEhFQUQncyBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGxlIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiBkZSBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjIxCisjOiBzZXF1ZW5jZXIuYzoxNjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCB3cml0ZSAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjI4IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NDEKKyM6IHNlcXVlbmNlci5jOjE2NDcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5NgogbXNnaWQgIlRoaXMgaXMgdGhlIDFzdCBjb21taXQgbWVzc2FnZToiCiBtc2dzdHIgIkNlY2kgZXN0IGxlIHByZW1pZXIgbWVzc2FnZSBkZSB2YWxpZGF0aW9uwqA6IgogCi0jOiBzZXF1ZW5jZXIuYzoxNjM2CisjOiBzZXF1ZW5jZXIuYzoxNjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGNvbW1pdCBtZXNzYWdlIG9mICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uIGRlICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjQzCisjOiBzZXF1ZW5jZXIuYzoxNjYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgdGhlIGNvbW1pdCBtZXNzYWdlICMlZDoiCiBtc2dzdHIgIkNlY2kgZXN0IGxlIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiBudW3DqXJvICVkwqA6IgogCi0jOiBzZXF1ZW5jZXIuYzoxNjQ5CisjOiBzZXF1ZW5jZXIuYzoxNjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBjb21taXQgbWVzc2FnZSAjJWQgd2lsbCBiZSBza2lwcGVkOiIKIG1zZ3N0ciAiTGUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uICVkIHNlcmEgaWdub3LDqcKgOiIKIAotIzogc2VxdWVuY2VyLmM6MTczMgorIzogc2VxdWVuY2VyLmM6MTc1NgogbXNnaWQgInlvdXIgaW5kZXggZmlsZSBpcyB1bm1lcmdlZC4iCiBtc2dzdHIgInZvdHJlIGZpY2hpZXIgZCdpbmRleCBuJ2VzdCBwYXMgZnVzaW9ubsOpLiIKIAotIzogc2VxdWVuY2VyLmM6MTczOQorIzogc2VxdWVuY2VyLmM6MTc2MwogbXNnaWQgImNhbm5vdCBmaXh1cCByb290IGNvbW1pdCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByw6lwYXJlciBsZSBjb21taXQgcmFjaW5lIgogCi0jOiBzZXF1ZW5jZXIuYzoxNzU4CisjOiBzZXF1ZW5jZXIuYzoxNzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbW1pdCAlcyBpcyBhIG1lcmdlIGJ1dCBubyAtbSBvcHRpb24gd2FzIGdpdmVuLiIKIG1zZ3N0ciAibGUgY29tbWl0ICVzIGVzdCB1bmUgZnVzaW9uIG1haXMgbCdvcHRpb24gLW0gbidhIHBhcyDDqXTDqSBzcMOpY2lmacOpZS4iCiAKLSM6IHNlcXVlbmNlci5jOjE3NjYKKyM6IHNlcXVlbmNlci5jOjE3OTAgc2VxdWVuY2VyLmM6MTc5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJXMgZG9lcyBub3QgaGF2ZSBwYXJlbnQgJWQiCiBtc2dzdHIgImxlIGNvbW1pdCAlcyBuJ2EgcGFzIGRlIHBhcmVudCAlZCIKIAotIzogc2VxdWVuY2VyLmM6MTc3MAotIywgYy1mb3JtYXQKLW1zZ2lkICJtYWlubGluZSB3YXMgc3BlY2lmaWVkIGJ1dCBjb21taXQgJXMgaXMgbm90IGEgbWVyZ2UuIgotbXNnc3RyICIiCi0idW5lIGJyYW5jaGUgcHJpbmNpcGFsZSBhIMOpdMOpIHNww6ljaWZpw6llIG1haXMgbGUgY29tbWl0ICVzIG4nZXN0IHBhcyB1bmUgIgotImZ1c2lvbi4iCi0KLSM6IHNlcXVlbmNlci5jOjE3NzYKKyM6IHNlcXVlbmNlci5jOjE4MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGdldCBjb21taXQgbWVzc2FnZSBmb3IgJXMiCiBtc2dzdHIgImltcG9zc2libGUgZCdvYnRlbmlyIHVuIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiBwb3VyICVzIgogCiAjLiBUUkFOU0xBVE9SUzogVGhlIGZpcnN0ICVzIHdpbGwgYmUgYSAidG9kbyIgY29tbWFuZCBsaWtlCiAjLiAicmV2ZXJ0IiBvciAicGljayIsIHRoZSBzZWNvbmQgJXMgYSBTSEExLgotIzogc2VxdWVuY2VyLmM6MTc5NQorIzogc2VxdWVuY2VyLmM6MTgyMwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogY2Fubm90IHBhcnNlIHBhcmVudCBjb21taXQgJXMiCiBtc2dzdHIgIiVzIDogaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGxlIGNvbW1pdCBwYXJlbnQgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjE4NjAKKyM6IHNlcXVlbmNlci5jOjE4ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlbmFtZSAnJXMnIHRvICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgcmVub21tZXIgJyVzJyBlbiAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzoxOTE1CisjOiBzZXF1ZW5jZXIuYzoxOTQzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZXZlcnQgJXMuLi4gJXMiCiBtc2dzdHIgImltcG9zc2libGUgZCdhbm51bGVyICVzLi4uICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxOTE2CisjOiBzZXF1ZW5jZXIuYzoxOTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBhcHBseSAlcy4uLiAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FwcGxpcXVlciAlcy4uLiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTk3NAorIzogc2VxdWVuY2VyLmM6MTk2MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcm9wcGluZyAlcyAlcyAtLSBwYXRjaCBjb250ZW50cyBhbHJlYWR5IHVwc3RyZWFtXG4iCittc2dzdHIgImFiYW5kb24gZGUgJXMgJXMgLS0gbGUgY29udGVudSBkZSBsYSBydXN0aW5lIGTDqWrDoCBlbiBhbW9udFxuIgorCisjOiBzZXF1ZW5jZXIuYzoyMDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCAlczogZmFpbGVkIHRvIHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICJnaXQgJXMgOiDDqWNoZWMgw6AgbGEgbGVjdHVyZSBkZSBsJ2luZGV4IgogCi0jOiBzZXF1ZW5jZXIuYzoxOTgxCisjOiBzZXF1ZW5jZXIuYzoyMDI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCAlczogZmFpbGVkIHRvIHJlZnJlc2ggdGhlIGluZGV4IgogbXNnc3RyICJnaXQgJXMgOiDDqWNoZWMgZHUgcmFmcmHDrmNoaXNzZW1lbnQgZGUgbCdpbmRleCIKIAotIzogc2VxdWVuY2VyLmM6MjA2MgorIzogc2VxdWVuY2VyLmM6MjEwMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBkb2VzIG5vdCBhY2NlcHQgYXJndW1lbnRzOiAnJXMnIgogbXNnc3RyICIlcyBuJ2FjY2VwdGUgcGFzIGQnYXJndW1lbnTCoDogJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MjA3MQorIzogc2VxdWVuY2VyLmM6MjExMQogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIGFyZ3VtZW50cyBmb3IgJXMiCiBtc2dzdHIgImFyZ3VtZW50IG1hbnF1YW50IHBvdXIgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjIxMzAKKyM6IHNlcXVlbmNlci5jOjIxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlICclcyciCittc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzoyMjAzCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbGluZSAlZDogJS4qcyIKIG1zZ3N0ciAibGlnbmUgJWQgaW52YWxpZGXCoDogJS4qcyIKIAotIzogc2VxdWVuY2VyLmM6MjEzOAorIzogc2VxdWVuY2VyLmM6MjIxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgJyVzJyB3aXRob3V0IGEgcHJldmlvdXMgY29tbWl0IgogbXNnc3RyICInJXMnIGltcG9zc2libGUgYXZlYyBsZSBjb21taXQgcHLDqWPDqWRlbnQiCiAKLSM6IHNlcXVlbmNlci5jOjIyMDkKKyM6IHNlcXVlbmNlci5jOjIyOTgKK21zZ2lkICJjYW5jZWxsaW5nIGEgY2hlcnJ5IHBpY2tpbmcgaW4gcHJvZ3Jlc3MiCittc2dzdHIgImFubnVsYXRpb24gZCd1biBwaWNvcmFnZSBlbiBjb3VycyIKKworIzogc2VxdWVuY2VyLmM6MjMwNQorbXNnaWQgImNhbmNlbGxpbmcgYSByZXZlcnQgaW4gcHJvZ3Jlc3MiCittc2dzdHIgImFubnVsYXRpb24gZCd1biByZXRvdXIgZW4gY291cnMiCisKKyM6IHNlcXVlbmNlci5jOjIzNDkKIG1zZ2lkICJwbGVhc2UgZml4IHRoaXMgdXNpbmcgJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nLiIKIG1zZ3N0ciAidmV1aWxsZXogY29ycmlnZXIgY2VjaSBlbiB1dGlsaXNhbnQgJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nLiIKIAotIzogc2VxdWVuY2VyLmM6MjIxMQorIzogc2VxdWVuY2VyLmM6MjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnVzYWJsZSBpbnN0cnVjdGlvbiBzaGVldDogJyVzJyIKIG1zZ3N0ciAiZmV1aWxsZSBkJ2luc3RydWN0aW9uIGludXRpbGlzYWJsZcKgOiAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjE2CisjOiBzZXF1ZW5jZXIuYzoyMzU2CiBtc2dpZCAibm8gY29tbWl0cyBwYXJzZWQuIgogbXNnc3RyICJhdWN1biBjb21taXQgYW5hbHlzw6kuIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjI3CisjOiBzZXF1ZW5jZXIuYzoyMzY3CiBtc2dpZCAiY2Fubm90IGNoZXJyeS1waWNrIGR1cmluZyBhIHJldmVydC4iCiBtc2dzdHIgImltcG9zc2libGUgZGUgcGljb3JlciBwZW5kYW50IGwnYW5udWxhdGlvbiBkJ3VuIGNvbW1pdC4iCiAKLSM6IHNlcXVlbmNlci5jOjIyMjkKKyM6IHNlcXVlbmNlci5jOjIzNjkKIG1zZ2lkICJjYW5ub3QgcmV2ZXJ0IGR1cmluZyBhIGNoZXJyeS1waWNrLiIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FubnVsZXIgdW4gY29tbWl0IHBlbmRhbnQgdW4gcGljb3JhZ2UuIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjk5CisjOiBzZXF1ZW5jZXIuYzoyNDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yICVzOiAlcyIKIG1zZ3N0ciAidmFsZXVyIGludmFsaWRlIHBvdXIgJXPCoDogJXMiCiAKLSM6IHNlcXVlbmNlci5jOjIzODAKKyM6IHNlcXVlbmNlci5jOjI1NDAKIG1zZ2lkICJ1bnVzYWJsZSBzcXVhc2gtb250byIKIG1zZ3N0ciAiXCLDqWNyYXNlLXN1clwiIGludXRpbGlzYWJsZSIKIAotIzogc2VxdWVuY2VyLmM6MjM5NgorIzogc2VxdWVuY2VyLmM6MjU1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgb3B0aW9ucyBzaGVldDogJyVzJyIKIG1zZ3N0ciAiZmV1aWxsZSBkJ29wdGlvbnMgbWFsZm9ybcOpZcKgOiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MjQ3OSBzZXF1ZW5jZXIuYzo0MDA1CisjOiBzZXF1ZW5jZXIuYzoyNjQ0IHNlcXVlbmNlci5jOjQzNjEKIG1zZ2lkICJlbXB0eSBjb21taXQgc2V0IHBhc3NlZCIKIG1zZ3N0ciAibCdlbnNlbWJsZSBkZSBjb21taXRzIHNww6ljaWZpw6kgZXN0IHZpZGUiCiAKLSM6IHNlcXVlbmNlci5jOjI0ODcKLW1zZ2lkICJhIGNoZXJyeS1waWNrIG9yIHJldmVydCBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgotbXNnc3RyICJ1biBwaWNvcmFnZSBvdSB1biByZXRvdXIgZXN0IGTDqWrDoCBlbiBjb3VycyIKKyM6IHNlcXVlbmNlci5jOjI2NjAKK21zZ2lkICJyZXZlcnQgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIKK21zZ3N0ciAidW4gcmV0b3VyIGVzdCBkw6lqw6AgZW4gY291cnMiCiAKLSM6IHNlcXVlbmNlci5jOjI0ODgKLW1zZ2lkICJ0cnkgXCJnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAtLXF1aXQgfCAtLWFib3J0KVwiIgotbXNnc3RyICJlc3NheWV6IFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlfC0tcXVpdHwtLSBhYm9ydClcIiIKKyM6IHNlcXVlbmNlci5jOjI2NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5IFwiZ2l0IHJldmVydCAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKK21zZ3N0ciAiZXNzYXlleiBcImdpdCByZXZlcnQgKC0tY29udGludWUgfCAlcy0tYWJvcnQgfCAtLXF1aXQpXCIiCiAKLSM6IHNlcXVlbmNlci5jOjI0OTEKKyM6IHNlcXVlbmNlci5jOjI2NjUKK21zZ2lkICJjaGVycnktcGljayBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgorbXNnc3RyICJ1biBwaWNvcmFnZSBlc3QgZMOpasOgIGVuIGNvdXJzIgorCisjOiBzZXF1ZW5jZXIuYzoyNjY3CisjLCBjLWZvcm1hdAorbXNnaWQgInRyeSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKK21zZ3N0ciAiZXNzYXlleiBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKKworIzogc2VxdWVuY2VyLmM6MjY4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHNlcXVlbmNlciBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgbGUgcsOpcGVydG9pcmUgZGUgc8OpcXVlbmNldXIgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MjUwNQorIzogc2VxdWVuY2VyLmM6MjY5NgogbXNnaWQgImNvdWxkIG5vdCBsb2NrIEhFQUQiCiBtc2dzdHIgImltcG9zc2libGUgZGUgdmVycm91aWxsZXIgSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6MjU2MCBzZXF1ZW5jZXIuYzozNzYxCisjOiBzZXF1ZW5jZXIuYzoyNzU2IHNlcXVlbmNlci5jOjQwOTkKIG1zZ2lkICJubyBjaGVycnktcGljayBvciByZXZlcnQgaW4gcHJvZ3Jlc3MiCiBtc2dzdHIgImF1Y3VuIHBpY29yYWdlIG91IHJldG91ciBlbiBjb3VycyIKIAotIzogc2VxdWVuY2VyLmM6MjU2MgorIzogc2VxdWVuY2VyLmM6Mjc1OCBzZXF1ZW5jZXIuYzoyNzY5CiBtc2dpZCAiY2Fubm90IHJlc29sdmUgSEVBRCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByw6lzb3VkcmUgSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6MjU2NCBzZXF1ZW5jZXIuYzoyNTk5CisjOiBzZXF1ZW5jZXIuYzoyNzYwIHNlcXVlbmNlci5jOjI4MDQKIG1zZ2lkICJjYW5ub3QgYWJvcnQgZnJvbSBhIGJyYW5jaCB5ZXQgdG8gYmUgYm9ybiIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FiYW5kb25uZXIgZGVwdWlzIHVuZSBicmFuY2hlIG5vbiBlbmNvcmUgY3LDqcOpZSIKIAotIzogc2VxdWVuY2VyLmM6MjU4NSBidWlsdGluL2dyZXAuYzo3MjEKKyM6IHNlcXVlbmNlci5jOjI3OTAgYnVpbHRpbi9ncmVwLmM6NzI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MjU4NworIzogc2VxdWVuY2VyLmM6Mjc5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCAnJXMnOiAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlICclcyfCoDogJXMiCiAKLSM6IHNlcXVlbmNlci5jOjI1ODgKKyM6IHNlcXVlbmNlci5jOjI3OTMKIG1zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIgogbXNnc3RyICJmaW4gZGUgZmljaGllciBpbmF0dGVuZHVlIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTk0CisjOiBzZXF1ZW5jZXIuYzoyNzk5CiAjLCBjLWZvcm1hdAogbXNnaWQgInN0b3JlZCBwcmUtY2hlcnJ5LXBpY2sgSEVBRCBmaWxlICclcycgaXMgY29ycnVwdCIKIG1zZ3N0ciAibGUgZmljaGllciBIRUFEIGRlIHByw6lwYXJhdGlvbiBkZSBwaWNvcmFnZSAnJXMnIGVzdCBjb3Jyb21wdSIKIAotIzogc2VxdWVuY2VyLmM6MjYwNQorIzogc2VxdWVuY2VyLmM6MjgxMAogbXNnaWQgIllvdSBzZWVtIHRvIGhhdmUgbW92ZWQgSEVBRC4gTm90IHJld2luZGluZywgY2hlY2sgeW91ciBIRUFEISIKIG1zZ3N0ciAiIgogIlZvdXMgc2VtYmxleiBhdm9pciBkw6lwbGFjw6kgbGEgSEVBRC4gUGFzIGRlIHJlbWJvYmluYWdlLCB2w6lyaWZpZXogdm90cmUgSEVBRMKgISIKIAotIzogc2VxdWVuY2VyLmM6MjcwOSBzZXF1ZW5jZXIuYzozNjc5CisjOiBzZXF1ZW5jZXIuYzoyODUxCittc2dpZCAibm8gcmV2ZXJ0IGluIHByb2dyZXNzIgorbXNnc3RyICJQYXMgZGUgcmV0b3VyIGVuIGNvdXJzID8iCisKKyM6IHNlcXVlbmNlci5jOjI4NTkKK21zZ2lkICJubyBjaGVycnktcGljayBpbiBwcm9ncmVzcyIKK21zZ3N0ciAiYXVjdW4gcGljb3JhZ2UgZW4gY291cnMiCisKKyM6IHNlcXVlbmNlci5jOjI4NjkKK21zZ2lkICJmYWlsZWQgdG8gc2tpcCB0aGUgY29tbWl0IgorbXNnc3RyICLDqWNoZWMgZHUgc2F1dCBkZSBjb21taXQiCisKKyM6IHNlcXVlbmNlci5jOjI4NzYKK21zZ2lkICJ0aGVyZSBpcyBub3RoaW5nIHRvIHNraXAiCittc2dzdHIgImlsIG4neSBhIHJpZW4gw6Agc2F1dGVyIgorCisjOiBzZXF1ZW5jZXIuYzoyODc5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJoYXZlIHlvdSBjb21taXR0ZWQgYWxyZWFkeT9cbiIKKyJ0cnkgXCJnaXQgJXMgLS1jb250aW51ZVwiIgorbXNnc3RyICIiCisiQXZlei12b3VzIGTDqWrDoCB2YWxpZMOpwqA/XG4iCisiZXNzYXlleiBcImdpdCAlcyAtY29udGludWVcIiIKKworIzogc2VxdWVuY2VyLmM6MzAwMyBzZXF1ZW5jZXIuYzo0MDExCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB1cGRhdGUgJXMiCiBtc2dzdHIgImltcG9zc2libGUgZGUgbWV0dHJlIMOgIGpvdXIgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjI3NDcgc2VxdWVuY2VyLmM6MzY1OQorIzogc2VxdWVuY2VyLmM6MzA0MiBzZXF1ZW5jZXIuYzozOTkxCiBtc2dpZCAiY2Fubm90IHJlYWQgSEVBRCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjI3NjIKKyM6IHNlcXVlbmNlci5jOjMwNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNvcHkgJyVzJyB0byAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNvcGllciAnJXMnIHZlcnMgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6Mjc3MAorIzogc2VxdWVuY2VyLmM6MzA2NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGNhbiBhbWVuZCB0aGUgY29tbWl0IG5vdywgd2l0aFxuIgpAQCAtNTIyMCwyNyArNzI3MCwyMiBAQAogIlxuIgogIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI3ODAKKyM6IHNlcXVlbmNlci5jOjMwNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICVzLi4uICUuKnMiCiBtc2dzdHIgImltcG9zc2libGUgZCdhcHBsaXF1ZXIgJXMuLi4gJS4qcyIKIAotIzogc2VxdWVuY2VyLmM6Mjc4NworIzogc2VxdWVuY2VyLmM6MzA4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgbWVyZ2UgJS4qcyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBmdXNpb25uZXIgJS4qcyIKIAotIzogc2VxdWVuY2VyLmM6Mjc5OCBzZXF1ZW5jZXIuYzoyODAyIGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDAKKyM6IHNlcXVlbmNlci5jOjMwOTggc2VxdWVuY2VyLmM6MzEwMiBidWlsdGluL2RpZmZ0b29sLmM6NjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjb3B5ICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjb3BpZXIgJyVzJyB2ZXJzICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjI4MjQgc2VxdWVuY2VyLmM6MzI0MiBidWlsdGluL3JlYmFzZS5jOjU4MCBidWlsdGluL3JlYmFzZS5jOjEwMTkKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTM3MiBidWlsdGluL3JlYmFzZS5jOjE0MjYKLW1zZ2lkICJjb3VsZCBub3QgcmVhZCBpbmRleCIKLW1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGwnaW5kZXgiCi0KLSM6IHNlcXVlbmNlci5jOjI4MjkKKyM6IHNlcXVlbmNlci5jOjMxMjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4ZWN1dGlvbiBmYWlsZWQ6ICVzXG4iCkBAIC01MjU1LDExICs3MzAwLDExIEBACiAiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAiXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI4MzUKKyM6IHNlcXVlbmNlci5jOjMxMzUKIG1zZ2lkICJhbmQgbWFkZSBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZVxuIgogbXNnc3RyICJldCBhIG1pcyDDoCBqb3VyIGwnaW5kZXggb3UgbCdhcmJyZSBkZSB0cmF2YWlsXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI4NDEKKyM6IHNlcXVlbmNlci5jOjMxNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4ZWN1dGlvbiBzdWNjZWVkZWQ6ICVzXG4iCkBAIC01Mjc2LDc3ICs3MzIxLDczIEBACiAiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKICJcbiIKIAotIzogc2VxdWVuY2VyLmM6MjkwMgorIzogc2VxdWVuY2VyLmM6MzIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbGxlZ2FsIGxhYmVsIG5hbWU6ICclLipzJyIKIG1zZ3N0ciAibm9tIGRlIGxhYmVsIGlsbMOpZ2FsICclLipzJyIKIAotIzogc2VxdWVuY2VyLmM6Mjk1NAorIzogc2VxdWVuY2VyLmM6MzI1NgogbXNnaWQgIndyaXRpbmcgZmFrZSByb290IGNvbW1pdCIKIG1zZ3N0ciAiw6ljcml0dXJlIGQndW4gY29tbWl0IHJhY2luZSBiaWRvbiIKIAotIzogc2VxdWVuY2VyLmM6Mjk1OQorIzogc2VxdWVuY2VyLmM6MzI2MQogbXNnaWQgIndyaXRpbmcgc3F1YXNoLW9udG8iCiBtc2dzdHIgIsOpY3JpdHVyZSBkZSAnw6ljcmFzZXItc3VyJyIKIAotIzogc2VxdWVuY2VyLmM6Mjk5NyBidWlsdGluL3JlYmFzZS5jOjU4NSBidWlsdGluL3JlYmFzZS5jOjU5MQorIzogc2VxdWVuY2VyLmM6MzI5OSBidWlsdGluL3JlYmFzZS5jOjg4MCBidWlsdGluL3JlYmFzZS5jOjg4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHRyb3V2ZXIgbCdhcmJyZSBkZSAlcyIKIAotIzogc2VxdWVuY2VyLmM6MzAxNSBidWlsdGluL3JlYmFzZS5jOjYwNAotbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBpbmRleCIKLW1zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgbCdpbmRleCIKLQotIzogc2VxdWVuY2VyLmM6MzA0MgorIzogc2VxdWVuY2VyLmM6MzM0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHLDqXNvdWRyZSAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzozMDY4CisjOiBzZXF1ZW5jZXIuYzozMzc1CiBtc2dpZCAiY2Fubm90IG1lcmdlIHdpdGhvdXQgYSBjdXJyZW50IHJldmlzaW9uIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGZ1c2lvbm5lciBhdmVjIHVuZSByw6l2aXNpb24gY291cmFudGUiCiAKLSM6IHNlcXVlbmNlci5jOjMwOTAKKyM6IHNlcXVlbmNlci5jOjMzOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICclLipzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyICclLipzJyIKIAotIzogc2VxdWVuY2VyLmM6MzA5OQorIzogc2VxdWVuY2VyLmM6MzQwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIG1lcmdlOiAnJS4qcyciCiBtc2dzdHIgInJpZW4gw6AgZnVzaW9ubmVywqA6ICclLipzJyIKIAotIzogc2VxdWVuY2VyLmM6MzExMQorIzogc2VxdWVuY2VyLmM6MzQxOAogbXNnaWQgIm9jdG9wdXMgbWVyZ2UgY2Fubm90IGJlIGV4ZWN1dGVkIG9uIHRvcCBvZiBhIFtuZXcgcm9vdF0iCiBtc2dzdHIgIiIKICJ1bmUgZnVzaW9uIG9jdG9wdXMgbmUgcGV1dCBwYXMgw6p0cmUgZXjDqWN1dMOpZSBwYXIgZGVzc3VzIHVuZSBub3V2ZWxsZSByYWNpbmUiCiAKLSM6IHNlcXVlbmNlci5jOjMxMjYKKyM6IHNlcXVlbmNlci5jOjM0MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCBjb21taXQgbWVzc2FnZSBvZiAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uIGRlICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjMyNzQKKyM6IHNlcXVlbmNlci5jOjM1OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGV2ZW4gYXR0ZW1wdCB0byBtZXJnZSAnJS4qcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgc2V1bGVtZW50IGVzc2F5ZXIgZGUgZnVzaW9ubmVyICclLipzJyIKIAotIzogc2VxdWVuY2VyLmM6MzI5MAorIzogc2VxdWVuY2VyLmM6MzYxMAogbXNnaWQgIm1lcmdlOiBVbmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCiBtc2dzdHIgImZ1c2lvbsKgOiBJbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBub3V2ZWF1IGZpY2hpZXIgaW5kZXgiCiAKLSM6IHNlcXVlbmNlci5jOjMzNTggYnVpbHRpbi9yZWJhc2UuYzoyNjgKKyM6IHNlcXVlbmNlci5jOjM2NzkgYnVpbHRpbi9yZWJhc2UuYzo3MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guXG4iCiBtc2dzdHIgIkF1dG9yZW1pc2FnZSBhcHBsaXF1w6kuXG4iCiAKLSM6IHNlcXVlbmNlci5jOjMzNzAKKyM6IHNlcXVlbmNlci5jOjM2OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0b3JlICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN0b2NrZXIgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjMzNzMgYnVpbHRpbi9yZWJhc2UuYzoyODQKKyM6IHNlcXVlbmNlci5jOjM2OTQgYnVpbHRpbi9yZWJhc2UuYzo3NTMgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjExMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQXBwbHlpbmcgYXV0b3N0YXNoIHJlc3VsdGVkIGluIGNvbmZsaWN0cy5cbiIKQEAgLTUzNTcsMzEgKzczOTgsMjYgQEAKICJWb3MgIG1vZGlmaWNhdGlvbnMgc29udCDDoCBsJ2FicmkgZGFucyBsYSByZW1pc2UuXG4iCiAiVm91cyBwb3V2ZXogbGFuY2VyIFwiZ2l0IHN0YXNoIHBvcFwiIG91IFwiZ2l0IHN0YXNoIGRyb3BcIiDDoCB0b3V0IG1vbWVudC5cbiIKIAotIzogc2VxdWVuY2VyLmM6MzQyNwotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY2hlY2tvdXQgJXMiCi1tc2dzdHIgImV4dHJhY3Rpb24gZGUgJXMgaW1wb3NzaWJsZSIKLQotIzogc2VxdWVuY2VyLmM6MzQ0MQorIzogc2VxdWVuY2VyLmM6Mzc1NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogbm90IGEgdmFsaWQgT0lEIgogbXNnc3RyICIlcyBuJ2VzdCBwYXMgdW4gT0lEIHZhbGlkZSIKIAotIzogc2VxdWVuY2VyLmM6MzQ0NiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzI0CisjOiBzZXF1ZW5jZXIuYzozNzYwIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NzkKIG1zZ2lkICJjb3VsZCBub3QgZGV0YWNoIEhFQUQiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgZMOpdGFjaGVyIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjM0NjEKKyM6IHNlcXVlbmNlci5jOjM3NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCBIRUFEXG4iCiBtc2dzdHIgImFycsOqdCDDoCBIRUFEXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM0NjMKKyM6IHNlcXVlbmNlci5jOjM3NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAlc1xuIgogbXNnc3RyICJBcnLDqnTDqSDDoCAlc1xuIgogCi0jOiBzZXF1ZW5jZXIuYzozNDcxCisjOiBzZXF1ZW5jZXIuYzozNzg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDb3VsZCBub3QgZXhlY3V0ZSB0aGUgdG9kbyBjb21tYW5kXG4iCkBAIC01NDAyLDQ4ICs3NDM4LDQ4IEBACiAiICAgIGdpdCByZWJhc2UgLS1lZGl0LXRvZG9cbiIKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM1NDMKKyM6IHNlcXVlbmNlci5jOjM4NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAlcy4uLiAgJS4qc1xuIgogbXNnc3RyICJhcnLDqnQgw6AgJXMuLi4gJS4qc1xuIgogCi0jOiBzZXF1ZW5jZXIuYzozNjIyCisjOiBzZXF1ZW5jZXIuYzozOTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gY29tbWFuZCAlZCIKIG1zZ3N0ciAiY29tbWFuZGUgaW5jb25udWUgJWQiCiAKLSM6IHNlcXVlbmNlci5jOjM2NjcKKyM6IHNlcXVlbmNlci5jOjM5OTkKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBvcmlnLWhlYWQiCiBtc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSBvcmlnLWhlYWQiCiAKLSM6IHNlcXVlbmNlci5jOjM2NzIgc2VxdWVuY2VyLmM6NDc0MQorIzogc2VxdWVuY2VyLmM6NDAwNAogbXNnaWQgImNvdWxkIG5vdCByZWFkICdvbnRvJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlICdvbnRvJyIKIAotIzogc2VxdWVuY2VyLmM6MzY4NgorIzogc2VxdWVuY2VyLmM6NDAxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgdXBkYXRlIEhFQUQgdG8gJXMiCiBtc2dzdHIgImltcG9zc2libGUgZGUgbWV0dHJlIMOgIGpvdXIgSEVBRCBzdXIgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjM3NzIKKyM6IHNlcXVlbmNlci5jOjQxMTEKIG1zZ2lkICJjYW5ub3QgcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByZWJhc2VywqA6IHZvdXMgYXZleiBkZXMgbW9kaWZpY2F0aW9ucyBub24gaW5kZXjDqWVzLiIKIAotIzogc2VxdWVuY2VyLmM6Mzc4MQorIzogc2VxdWVuY2VyLmM6NDEyMAogbXNnaWQgImNhbm5vdCBhbWVuZCBub24tZXhpc3RpbmcgY29tbWl0IgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNvcnJpZ2VyIHVuIGNvbW1pdCBub24tZXhpc3RhbnQiCiAKLSM6IHNlcXVlbmNlci5jOjM3ODMKKyM6IHNlcXVlbmNlci5jOjQxMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBmaWxlOiAnJXMnIgogbXNnc3RyICJmaWNoaWVyIGludmFsaWRlwqA6ICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjM3ODUKKyM6IHNlcXVlbmNlci5jOjQxMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb250ZW50czogJyVzJyIKIG1zZ3N0ciAiY29udGVudSBpbnZhbGlkZSA6ICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjM3ODgKKyM6IHNlcXVlbmNlci5jOjQxMjcKIG1zZ2lkICIiCiAiXG4iCiAiWW91IGhhdmUgdW5jb21taXR0ZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS4gUGxlYXNlLCBjb21taXQgdGhlbVxuIgpAQCAtNTQ1MywxMjUgKzc0ODksNTkgQEAKICJWb3VzIGF2ZXogZGVzIG1vZGlmaWNhdGlvbnMgbm9uIHZhbGlkw6llcyBkYW5zIHZvdHJlIGNvcGllIGRlIHRyYXZhaWwuXG4iCiAiVmV1aWxsZXogbGVzIHZhbGlkZXIgZCdhYm9yZCwgcHVpcyByZWxhbmNlciAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJy4iCiAKLSM6IHNlcXVlbmNlci5jOjM4MjQgc2VxdWVuY2VyLmM6Mzg2MgorIzogc2VxdWVuY2VyLmM6NDE2MyBzZXF1ZW5jZXIuYzo0MjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBmaWxlOiAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBmaWNoaWVywqA6ICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjM4NzcKKyM6IHNlcXVlbmNlci5jOjQyMTcKIG1zZ2lkICJjb3VsZCBub3QgcmVtb3ZlIENIRVJSWV9QSUNLX0hFQUQiCiBtc2dzdHIgImltcG9zc2libGUgZGUgc3VwcHJpbWVyIENIRVJSWV9QSUNLX0hFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjM4ODQKKyM6IHNlcXVlbmNlci5jOjQyMjQKIG1zZ2lkICJjb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSB2YWxpZGVyIGxlcyBtb2RpZmljYXRpb25zIGluZGV4w6llcy4iCiAKLSM6IHNlcXVlbmNlci5jOjM5ODIKKyM6IHNlcXVlbmNlci5jOjQzMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGNhbid0IGNoZXJyeS1waWNrIGEgJXMiCiBtc2dzdHIgIiVzIDogaW1wb3NzaWJsZSBkZSBwaWNvcmVyIHVuICVzIgogCi0jOiBzZXF1ZW5jZXIuYzozOTg2CisjOiBzZXF1ZW5jZXIuYzo0MzQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBiYWQgcmV2aXNpb24iCiBtc2dzdHIgIiVzIDogbWF1dmFpc2UgcsOpdmlzaW9uIgogCi0jOiBzZXF1ZW5jZXIuYzo0MDIxCisjOiBzZXF1ZW5jZXIuYzo0Mzc3CiBtc2dpZCAiY2FuJ3QgcmV2ZXJ0IGFzIGluaXRpYWwgY29tbWl0IgogbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5udWxlciBlbiB0YW50IHF1ZSBjb21taXQgaW5pdGlhbCIKIAotIzogc2VxdWVuY2VyLmM6NDQ2NgorIzogc2VxdWVuY2VyLmM6NDg0NgogbXNnaWQgIm1ha2Vfc2NyaXB0OiB1bmhhbmRsZWQgb3B0aW9ucyIKIG1zZ3N0ciAibWFrZV9zY3JpcHTCoDogb3B0aW9ucyBub24gZ8OpcsOpZXMiCiAKLSM6IHNlcXVlbmNlci5jOjQ0NjkKKyM6IHNlcXVlbmNlci5jOjQ4NDkKIG1zZ2lkICJtYWtlX3NjcmlwdDogZXJyb3IgcHJlcGFyaW5nIHJldmlzaW9ucyIKIG1zZ3N0ciAibWFrZV9zY3JpcHTCoDogZXJyZXVyIGxvcnMgZGUgbGEgcHLDqXBhcmF0aW9uIGRlcyByw6l2aXNpb25zIgogCi0jOiBzZXF1ZW5jZXIuYzo0NTA5IHNlcXVlbmNlci5jOjQ1NjUgc2VxdWVuY2VyLmM6NDg0MAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bnVzYWJsZSB0b2RvIGxpc3Q6ICclcyciCi1tc2dzdHIgImxpc3RlIMOgIGZhaXJlIGludXRpbGlzYWJsZcKgOiAnJXMnIgotCi0jOiBzZXF1ZW5jZXIuYzo0NjIwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJ1bnJlY29nbml6ZWQgc2V0dGluZyAlcyBmb3Igb3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmluZy4iCi1tc2dzdHIgIiIKLSJwYXJhbcOodHJlIG5vbiByZWNvbm51ICVzIHBvdXIgbCdvcHRpb24gcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2suIElnbm9yw6kuIgotCi0jOiBzZXF1ZW5jZXIuYzo0NjkwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJXYXJuaW5nOiBzb21lIGNvbW1pdHMgbWF5IGhhdmUgYmVlbiBkcm9wcGVkIGFjY2lkZW50YWxseS5cbiIKLSJEcm9wcGVkIGNvbW1pdHMgKG5ld2VyIHRvIG9sZGVyKTpcbiIKLW1zZ3N0ciAiIgotIkF0dGVudGlvbsKgOiBjZXJ0YWlucyBjb21taXRzIG9udCBwdSDDqnRyZSBhY2NpZGVudGVsbGVtZW50IHN1cHByaW3DqXMuXG4iCi0iQ29tbWl0cyBzdXBwcmltw6lzIChkdSBwbHVzIGpldW5lIGF1IHBsdXMgdmlldXgpwqA6XG4iCi0KLSM6IHNlcXVlbmNlci5jOjQ2OTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotIlRvIGF2b2lkIHRoaXMgbWVzc2FnZSwgdXNlIFwiZHJvcFwiIHRvIGV4cGxpY2l0bHkgcmVtb3ZlIGEgY29tbWl0LlxuIgotIlxuIgotIlVzZSAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgdG8gY2hhbmdlIHRoZSBsZXZlbCBvZiAiCi0id2FybmluZ3MuXG4iCi0iVGhlIHBvc3NpYmxlIGJlaGF2aW91cnMgYXJlOiBpZ25vcmUsIHdhcm4sIGVycm9yLlxuIgotIlxuIgotbXNnc3RyICIiCi0iUG91ciDDqXZpdGVyIGNlIG1lc3NhZ2UsIHV0aWxpc2V6IFwiZHJvcFwiIHBvdXIgc3VwcHJpbWVyIGV4cGxpY2l0ZW1lbnQgdW4gIgotImNvbW1pdC5cbiIKLSJcbiIKLSJVdGlsaXNleiAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgcG91ciBjaGFuZ2VyIGxlIG5pdmVhdSAiCi0iZCdhdmVydGlzc2VtZW50cy5cbiIKLSJMZXMgY29tcG9ydGVtZW50cyBkaXNwb25pYmxlcyBzb250wqA6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCi0iXG4iCi0KLSM6IHNlcXVlbmNlci5jOjQ3MTAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBjYW4gZml4IHRoaXMgd2l0aCAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tIgotImNvbnRpbnVlJy5cbiIKLSJPciB5b3UgY2FuIGFib3J0IHRoZSByZWJhc2Ugd2l0aCAnZ2l0IHJlYmFzZSAtLWFib3J0Jy5cbiIKLW1zZ3N0ciAiIgotIlZvdXMgcG91dmV6IGNvcnJpZ2VyIGNlY2kgYXZlYyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycgcHVpcyBsYW5jZXogJ2dpdCAiCi0icmViYXNlIC0tY29udGludWUnLlxuIgotIk91IHZvdXMgcG91dmV6IGFiYW5kb25uZXIgbGUgcmViYXNhZ2UgYXZlYyAnZ2l0IHJlYmFzZSAtLWFib3J0Jy5cbiIKLQotIzogc2VxdWVuY2VyLmM6NDg0OCBzZXF1ZW5jZXIuYzo0ODg2CisjOiBzZXF1ZW5jZXIuYzo1MDgzIHNlcXVlbmNlci5jOjUxMDAKIG1zZ2lkICJub3RoaW5nIHRvIGRvIgogbXNnc3RyICJyaWVuIMOgIGZhaXJlIgogCi0jOiBzZXF1ZW5jZXIuYzo0ODUyCi0jLCBjLWZvcm1hdAotbXNnaWQgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kKSIKLW1zZ2lkX3BsdXJhbCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmRzKSIKLW1zZ3N0clswXSAiUmViYXNhZ2UgZGUgJXMgc3VyICVzICglZCBjb21tYW5kZSkiCi1tc2dzdHJbMV0gIlJlYmFzYWdlIGRlICVzIHN1ciAlcyAoJWQgY29tbWFuZGVzKSIKLQotIzogc2VxdWVuY2VyLmM6NDg2NAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcycuIgotbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNvcGllciAnJXMnIHZlcnMgJyVzJy4iCi0KLSM6IHNlcXVlbmNlci5jOjQ4Njggc2VxdWVuY2VyLmM6NDg5NwotbXNnaWQgImNvdWxkIG5vdCB0cmFuc2Zvcm0gdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBnw6luw6lyZXIgbGEgbGlzdGUgw6AtZmFpcmUiCi0KLSM6IHNlcXVlbmNlci5jOjQ5MDAKKyM6IHNlcXVlbmNlci5jOjUxMTkKIG1zZ2lkICJjb3VsZCBub3Qgc2tpcCB1bm5lY2Vzc2FyeSBwaWNrIGNvbW1hbmRzIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnw6l2aXRlciBsZXMgY29tbWFuZGVzIGRlIHBpY29yYWdlIG5vbiBuw6ljZXNzYWlyZXMiCiAKLSM6IHNlcXVlbmNlci5jOjQ5ODMKKyM6IHNlcXVlbmNlci5jOjUyMTMKIG1zZ2lkICJ0aGUgc2NyaXB0IHdhcyBhbHJlYWR5IHJlYXJyYW5nZWQuIgogbXNnc3RyICJsZSBzY3JpcHQgYSBkw6lqw6Agw6l0w6kgcsOpYXJyYW5nw6kuIgogCi0jOiBzZXR1cC5jOjEyMworIzogc2V0dXAuYzoxMjQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkiCi1tc2dzdHIgIiclcycgZXN0IGhvcnMgZHUgZMOpcMO0dCIKK21zZ2lkICInJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSBhdCAnJXMnIgorbXNnc3RyICInJXMnIGVzdCBob3JzIGR1IGTDqXDDtHQgw6AgJyVzJyIKIAotIzogc2V0dXAuYzoxNzIKKyM6IHNldHVwLmM6MTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIlczogbm8gc3VjaCBwYXRoIGluIHRoZSB3b3JraW5nIHRyZWUuXG4iCkBAIC01NTgxLDcgKzc1NTEsNyBAQAogIlV0aWxpc2V6ICdnaXQgPGNvbW1hbmRlPiAtLSA8Y2hlbWluPi4uLicgcG91ciBzcMOpY2lmaWVyIGRlcyBjaGVtaW5zIHF1aSAiCiAibidleGlzdGVudCBwYXMgbG9jYWxlbWVudC4iCiAKLSM6IHNldHVwLmM6MTg1CisjOiBzZXR1cC5jOjE4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IHVua25vd24gcmV2aXNpb24gb3IgcGF0aCBub3QgaW4gdGhlIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTU1OTIsMTQgKzc1NjIsMTQgQEAKICJVdGlsaXNleiAnLS0nIHBvdXIgc8OpcGFyZXIgbGVzIGNoZW1pbnMgZGVzIHLDqXZpc2lvbnMsIGNvbW1lIGNlY2nCoDpcbiIKICInZ2l0IDxjb21tYW5kZT4gWzxyw6l2aXNpb24+Li4uXSAtLSBbPGNoZW1pbj4uLi5dJyIKIAotIzogc2V0dXAuYzoyMzQKKyM6IHNldHVwLmM6MjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9wdGlvbiAnJXMnIG11c3QgY29tZSBiZWZvcmUgbm9uLW9wdGlvbiBhcmd1bWVudHMiCiBtc2dzdHIgIiIKICJsJ29wdGlvbiAnJXMnIGRvaXQgw6p0cmUgcHLDqXNlbnRlIGF2YW50IGxlcyBhcmd1bWVudHMgcXVpIG5lIHNvbnQgcGFzIGRlcyAiCiAib3B0aW9ucyIKIAotIzogc2V0dXAuYzoyNTMKKyM6IHNldHVwLmM6MjczCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJhbWJpZ3VvdXMgYXJndW1lbnQgJyVzJzogYm90aCByZXZpc2lvbiBhbmQgZmlsZW5hbWVcbiIKQEAgLTU2MTAsOTQgKzc1ODAsOTQgQEAKICJVdGlsaXNleiAnLS0nIHBvdXIgc8OpcGFyZXIgbGVzIGNoZW1pbnMgZGVzIHLDqXZpc2lvbnMsIGNvbW1lIGNlY2nCoDpcbiIKICInZ2l0IDxjb21tYW5kZT4gWzxyw6l2aXNpb24+Li4uXSAtLSBbPGNoZW1pbj4uLi5dJyIKIAotIzogc2V0dXAuYzozODkKKyM6IHNldHVwLmM6NDA5CiBtc2dpZCAidW5hYmxlIHRvIHNldCB1cCB3b3JrIHRyZWUgdXNpbmcgaW52YWxpZCBjb25maWciCiBtc2dzdHIgIiIKICJpbXBvc3NpYmxlIGRlIG1ldHRyZSBlbiBwbGFjZSBsZSByw6lwZXJ0b2lyZSBkZSB0cmF2YWlsIGVuIHV0aWxpc2FudCB1bmUgIgogImNvbmZpZ3VyYXRpb24gaW52YWxpZGUiCiAKLSM6IHNldHVwLmM6MzkzCisjOiBzZXR1cC5jOjQxMwogbXNnaWQgInRoaXMgb3BlcmF0aW9uIG11c3QgYmUgcnVuIGluIGEgd29yayB0cmVlIgogbXNnc3RyICJDZXR0ZSBvcMOpcmF0aW9uIGRvaXQgw6p0cmUgZWZmZWN0dcOpZSBkYW5zIHVuIGFyYnJlIGRlIHRyYXZhaWwiCiAKLSM6IHNldHVwLmM6NTI3CisjOiBzZXR1cC5jOjU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJFeHBlY3RlZCBnaXQgcmVwbyB2ZXJzaW9uIDw9ICVkLCBmb3VuZCAlZCIKIG1zZ3N0ciAiVmVyc2lvbiBhdHRlbmR1ZSBkdSBkw6lww7R0IGdpdCA8PSAlZCwgJWQgdHJvdXbDqWUiCiAKLSM6IHNldHVwLmM6NTM1CisjOiBzZXR1cC5jOjU2NwogbXNnaWQgInVua25vd24gcmVwb3NpdG9yeSBleHRlbnNpb25zIGZvdW5kOiIKIG1zZ3N0ciAiZXh0ZW5zaW9ucyBkZSBkw6lww7R0IGluY29ubnVlcyB0cm91dsOpZXPCoDoiCiAKLSM6IHNldHVwLmM6NTU0CisjOiBzZXR1cC5jOjU4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBvcGVuaW5nICclcyciCiBtc2dzdHIgImVycmV1ciDDoCBsJ291dmVydHVyZSBkZSAnJXMnIgogCi0jOiBzZXR1cC5jOjU1NgorIzogc2V0dXAuYzo1ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAidG9vIGxhcmdlIHRvIGJlIGEgLmdpdCBmaWxlOiAnJXMnIgogbXNnc3RyICJ0cm9wIGdyb3MgcG91ciDDqnRyZSB1bmUgZmljaGllciAuZ2l0wqA6ICclcyciCiAKLSM6IHNldHVwLmM6NTU4CisjOiBzZXR1cC5jOjU5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciByZWFkaW5nICVzIgogbXNnc3RyICJlcnJldXIgw6AgbGEgbGVjdHVyZSBkZSAlcyIKIAotIzogc2V0dXAuYzo1NjAKKyM6IHNldHVwLmM6NTkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZ2l0ZmlsZSBmb3JtYXQ6ICVzIgogbXNnc3RyICJmb3JtYXQgZGUgZmljaGllciBnaXQgaW52YWxpZGUgOiAlcyIKIAotIzogc2V0dXAuYzo1NjIKKyM6IHNldHVwLmM6NTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHBhdGggaW4gZ2l0ZmlsZTogJXMiCiBtc2dzdHIgImF1Y3VuIGNoZW1pbiBkYW5zIGxlIGZpY2hpZXIgZ2l0wqA6ICVzIgogCi0jOiBzZXR1cC5jOjU2NAorIzogc2V0dXAuYzo1OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnk6ICVzIgogbXNnc3RyICJjZSBuJ2VzdCBwYXMgdW4gZMOpcMO0dCBnaXTCoDogJXMiCiAKLSM6IHNldHVwLmM6NjYzCisjOiBzZXR1cC5jOjY5NQogIywgYy1mb3JtYXQKIG1zZ2lkICInJCVzJyB0b28gYmlnIgogbXNnc3RyICInJCVzJyB0cm9wIGdyb3MiCiAKLSM6IHNldHVwLmM6Njc3CisjOiBzZXR1cC5jOjcwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeTogJyVzJyIKIG1zZ3N0ciAiY2Ugbidlc3QgcGFzIHVuIGTDqXDDtHQgZ2l0IDogJyVzJyIKIAotIzogc2V0dXAuYzo3MDYgc2V0dXAuYzo3MDggc2V0dXAuYzo3MzkKKyM6IHNldHVwLmM6NzM4IHNldHVwLmM6NzQwIHNldHVwLmM6NzcxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGRpciB0byAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHNlIGTDqXBsYWNlciB2ZXJzIGxlIHLDqXBlcnRvaXJlIChjaGRpcikgJyVzJyIKIAotIzogc2V0dXAuYzo3MTEgc2V0dXAuYzo3Njcgc2V0dXAuYzo3Nzcgc2V0dXAuYzo4MTYgc2V0dXAuYzo4MjQgc2V0dXAuYzo4MzkKKyM6IHNldHVwLmM6NzQzIHNldHVwLmM6Nzk5IHNldHVwLmM6ODA5IHNldHVwLmM6ODQ4IHNldHVwLmM6ODU2CiBtc2dpZCAiY2Fubm90IGNvbWUgYmFjayB0byBjd2QiCiBtc2dzdHIgImltcG9zc2libGUgZGUgcmV2ZW5pciBhdSByw6lwZXJ0b2lyZSBkZSB0cmF2YWlsIGNvdXJhbnQiCiAKLSM6IHNldHVwLmM6ODM3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgb2YgdGhlIHBhcmVudCBkaXJlY3Rvcmllcyk6ICVzIgotbXNnc3RyICJuaSBjZWNpIG5pIGF1Y3VuIGRlIHNlcyByw6lwZXJ0b2lyZXMgcGFyZW50cyBuJ2VzdCB1biBkw6lww7R0IGdpdMKgOiAlcyIKLQotIzogc2V0dXAuYzo4NDgKKyM6IHNldHVwLmM6ODcwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBzdGF0ICclKnMlcyVzJyIKIG1zZ3N0ciAiw6ljaGVjIGR1IHN0YXQgZGUgJyUqcyVzJXMnIgogCi0jOiBzZXR1cC5jOjEwNzgKKyM6IHNldHVwLmM6MTEwOAogbXNnaWQgIlVuYWJsZSB0byByZWFkIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIkltcG9zc2libGUgZCdhY2PDqWRlciBhdSByw6lwZXJ0b2lyZSBkZSB0cmF2YWlsIGNvdXJhbnQiCiAKLSM6IHNldHVwLmM6MTA5MCBzZXR1cC5jOjEwOTYKKyM6IHNldHVwLmM6MTExNyBzZXR1cC5jOjExMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoYW5nZSB0byAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIG1vZGlmaWVyIGVuICclcyciCiAKLSM6IHNldHVwLmM6MTEwOQorIzogc2V0dXAuYzoxMTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgb2YgdGhlIHBhcmVudCBkaXJlY3Rvcmllcyk6ICVzIgorbXNnc3RyICJuaSBjZWNpIG5pIGF1Y3VuIGRlIHNlcyByw6lwZXJ0b2lyZXMgcGFyZW50cyBuJ2VzdCB1biBkw6lww7R0IGdpdMKgOiAlcyIKKworIzogc2V0dXAuYzoxMTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJub3QgYSBnaXQgcmVwb3NpdG9yeSAob3IgYW55IHBhcmVudCB1cCB0byBtb3VudCBwb2ludCAlcylcbiIKQEAgLTU3MDgsNyArNzY3OCw3IEBACiAiQXJyw6p0IMOgIGxhIGxpbWl0ZSBkdSBzeXN0w6htZSBkZSBmaWNoaWVycyAoR0lUX0RJU0NPVkVSWV9BQ1JPU1NfRklMRVNZU1RFTSAiCiAibidlc3QgcGFzIGTDqWZpbmkpLiIKIAotIzogc2V0dXAuYzoxMTkyCisjOiBzZXR1cC5jOjEyNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInByb2JsZW0gd2l0aCBjb3JlLnNoYXJlZFJlcG9zaXRvcnkgZmlsZW1vZGUgdmFsdWUgKDAlLjNvKS5cbiIKQEAgLTU3MTgsMjk4ICs3Njg4LDMwMiBAQAogIkxlIHByb3ByacOpdGFpcmUgZGVzIGZpY2hpZXJzIGRvaXQgdG91am91cnMgYXZvaXIgbGVzIGRyb2l0cyBlbiBsZWN0dXJlIGV0ICIKICLDqWNyaXR1cmUuIgogCi0jOiBzZXR1cC5jOjEyMzUKKyM6IHNldHVwLmM6MTI4OQogbXNnaWQgIm9wZW4gL2Rldi9udWxsIG9yIGR1cCBmYWlsZWQiCiBtc2dzdHIgIsOpY2hlYyBkZSBsJ291dmVydHVyZSBvdSBhdSBkdXAgZGUgL2Rldi9udWxsIgogCi0jOiBzZXR1cC5jOjEyNTAKKyM6IHNldHVwLmM6MTMwNAogbXNnaWQgImZvcmsgZmFpbGVkIgogbXNnc3RyICLDqWNoZWMgZGUgbGEgYmlmdXJjYXRpb24iCiAKLSM6IHNldHVwLmM6MTI1NQorIzogc2V0dXAuYzoxMzA5CiBtc2dpZCAic2V0c2lkIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGR1IHNldHNpZCIKIAotIzogc2hhMS1maWxlLmM6MzgxCisjOiBzaGExLWZpbGUuYzo0NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IGRpcmVjdG9yeSAlcyBkb2VzIG5vdCBleGlzdDsgY2hlY2sgLmdpdC9vYmplY3RzL2luZm8vYWx0ZXJuYXRlcyIKIG1zZ3N0ciAiIgogImxlIHLDqXBlcnRvaXJlIG9iamV0ICVzIG4nZXhpc3RlIHBhc8KgOyB2w6lyaWZpZXogLmdpdC9vYmplY3RzL2luZm8vYWx0ZXJuYXRlcyIKIAotIzogc2hhMS1maWxlLmM6NDMyCisjOiBzaGExLWZpbGUuYzo1MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG5vcm1hbGl6ZSBhbHRlcm5hdGUgb2JqZWN0IHBhdGg6ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIG5vcm1hbGlzZXIgbGUgY2hlbWluIGQnb2JqZXQgYWx0ZXJuYXRpZsKgOiAlcyIKIAotIzogc2hhMS1maWxlLmM6NTAzCisjOiBzaGExLWZpbGUuYzo1NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGlnbm9yaW5nIGFsdGVybmF0ZSBvYmplY3Qgc3RvcmVzLCBuZXN0aW5nIHRvbyBkZWVwIgogbXNnc3RyICIlc8KgOiBtYWdhc2lucyBkJ29iamV0cyBhbHRlcm5hdGlmcyBpZ25vcsOpcywgcsOpY3Vyc2lvbiB0cm9wIHByb2ZvbmRlIgogCi0jOiBzaGExLWZpbGUuYzo1MTAKKyM6IHNoYTEtZmlsZS5jOjU4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbm9ybWFsaXplIG9iamVjdCBkaXJlY3Rvcnk6ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIG5vcm1hbGlzZXIgbGUgcsOpcGVydG9pcmUgZCdvYmpldMKgOiAlcyIKIAotIzogc2hhMS1maWxlLmM6NTY1CisjOiBzaGExLWZpbGUuYzo2MjUKIG1zZ2lkICJ1bmFibGUgdG8gZmRvcGVuIGFsdGVybmF0ZXMgbG9ja2ZpbGUiCiBtc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgKGZkb3BlbikgbGUgZmljaGllciB2ZXJyb3UgZGVzIGFsdGVybmF0aXZlcyIKIAotIzogc2hhMS1maWxlLmM6NTgzCisjOiBzaGExLWZpbGUuYzo2NDMKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBhbHRlcm5hdGVzIGZpbGUiCiBtc2dzdHIgImxlY3R1cmUgZHUgZmljaGllciBkJ2FsdGVybmF0aXZlcyBpbXBvc3NpYmxlIgogCi0jOiBzaGExLWZpbGUuYzo1OTAKKyM6IHNoYTEtZmlsZS5jOjY1MAogbXNnaWQgInVuYWJsZSB0byBtb3ZlIG5ldyBhbHRlcm5hdGVzIGZpbGUgaW50byBwbGFjZSIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBkw6lwbGFjZXIgbGUgbm91dmVhdSBmaWNoaWVyIGQnYWx0ZXJuYXRpdmUiCiAKLSM6IHNoYTEtZmlsZS5jOjYyNQorIzogc2hhMS1maWxlLmM6Njg1CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAibGUgY2hlbWluICclcycgbidleGlzdGUgcGFzIgogCi0jOiBzaGExLWZpbGUuYzo2NTEKKyM6IHNoYTEtZmlsZS5jOjcxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGFzIGEgbGlua2VkIGNoZWNrb3V0IGlzIG5vdCBzdXBwb3J0ZWQgeWV0LiIKIG1zZ3N0ciAiIgogImV4dHJhaXJlIGxlIGTDqXDDtHQgZGUgcsOpZsOpcmVuY2UgJyVzJyBjb21tZSB1bmUgZXh0cmFjdGlvbiBsacOpZSBuJ2VzdCBwYXMgIgogImVuY29yZSBzdXBwb3J0w6kuIgogCi0jOiBzaGExLWZpbGUuYzo2NTcKKyM6IHNoYTEtZmlsZS5jOjcxNwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIG5vdCBhIGxvY2FsIHJlcG9zaXRvcnkuIgogbXNnc3RyICJsZSBkw6lww7R0IGRlIHLDqWbDqXJlbmNlICclcycgbidlc3QgcGFzIHVuIGTDqXDDtHQgbG9jYWwuIgogCi0jOiBzaGExLWZpbGUuYzo2NjMKKyM6IHNoYTEtZmlsZS5jOjcyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIHNoYWxsb3ciCiBtc2dzdHIgImxlIGTDqXDDtHQgZGUgcsOpZsOpcmVuY2UgJyVzJyBlc3Qgc3VwZXJmaWNpZWwiCiAKLSM6IHNoYTEtZmlsZS5jOjY3MQorIzogc2hhMS1maWxlLmM6NzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgZ3JhZnRlZCIKIG1zZ3N0ciAibGUgZMOpcMO0dCBkZSByw6lmw6lyZW5jZSAnJXMnIGVzdCBncmVmZsOpIgogCi0jOiBzaGExLWZpbGUuYzo3ODEKKyM6IHNoYTEtZmlsZS5jOjc5MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGxpbmUgd2hpbGUgcGFyc2luZyBhbHRlcm5hdGUgcmVmczogJXMiCittc2dzdHIgImxpZ25lIGludmFsaWRlIHBlbmRhbnQgbCdhbmFseXNlIGRlcyByZWZzIGFsdGVybmF0aXZlc8KgOiAlcyIKKworIzogc2hhMS1maWxlLmM6OTQzCiAjLCBjLWZvcm1hdAogbXNnaWQgImF0dGVtcHRpbmcgdG8gbW1hcCAlPFBSSXVNQVg+IG92ZXIgbGltaXQgJTxQUkl1TUFYPiIKIG1zZ3N0ciAiZXNzYWkgZGUgbW1hcCAlPFBSSXVNQVg+IGF1IGRlbMOgIGRlIGxhIGxpbWl0ZSAlPFBSSXVNQVg+IgogCi0jOiBzaGExLWZpbGUuYzo4MDYKKyM6IHNoYTEtZmlsZS5jOjk2NAogbXNnaWQgIm1tYXAgZmFpbGVkIgogbXNnc3RyICLDqWNoZWMgZGUgbW1hcCIKIAotIzogc2hhMS1maWxlLmM6OTczCisjOiBzaGExLWZpbGUuYzoxMTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCBmaWxlICVzIGlzIGVtcHR5IgogbXNnc3RyICJsZSBmaWNoaWVyIG9iamV0ICVzIGVzdCB2aWRlIgogCi0jOiBzaGExLWZpbGUuYzoxMDkzIHNoYTEtZmlsZS5jOjIyMTUKKyM6IHNoYTEtZmlsZS5jOjEyNjMgc2hhMS1maWxlLmM6MjQ0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IGxvb3NlIG9iamVjdCAnJXMnIgogbXNnc3RyICJvYmpldCBsaWJyZSBjb3Jyb21wdSAnJXMnIgogCi0jOiBzaGExLWZpbGUuYzoxMDk1IHNoYTEtZmlsZS5jOjIyMTkKKyM6IHNoYTEtZmlsZS5jOjEyNjUgc2hhMS1maWxlLmM6MjQ0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJnYXJiYWdlIGF0IGVuZCBvZiBsb29zZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAiZG9ubsOpZXMgaW5jb3JyZWN0ZXMgw6AgbGEgZmluIGRlIGwnb2JqZXQgbGlicmUgJyVzJyIKIAotIzogc2hhMS1maWxlLmM6MTEzNworIzogc2hhMS1maWxlLmM6MTMwNwogbXNnaWQgImludmFsaWQgb2JqZWN0IHR5cGUiCiBtc2dzdHIgInR5cGUgZCdvYmpldCBpbnZhbGlkZSIKIAotIzogc2hhMS1maWxlLmM6MTIxOQorIzogc2hhMS1maWxlLmM6MTM5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5wYWNrICVzIGhlYWRlciB3aXRoIC0tYWxsb3ctdW5rbm93bi10eXBlIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGTDqXBhcXVldGVyIGwnZW50w6p0ZSAlcyBhdmVjIC0tYWxsb3ctdW5rbm93LXR5cGUiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMjIKKyM6IHNoYTEtZmlsZS5jOjEzOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayAlcyBoZWFkZXIiCiBtc2dzdHIgImltcG9zc2libGUgZGUgZMOpcGFxdWV0ZXIgbCdlbnTDqnRlICVzIgogCi0jOiBzaGExLWZpbGUuYzoxMjI4CisjOiBzaGExLWZpbGUuYzoxNDAwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGwnZW50w6p0ZSAlcyBhdmVjIC0tYWxsb3ctdW5rbm93LXR5cGUiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMzEKKyM6IHNoYTEtZmlsZS5jOjE0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGwnZW50w6p0ZSAlcyIKIAotIzogc2hhMS1maWxlLmM6MTQyMgorIzogc2hhMS1maWxlLmM6MTYyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBvYmplY3QgJXMiCiBtc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSBsJ29iamV0ICVzIgogCi0jOiBzaGExLWZpbGUuYzoxNDI2CisjOiBzaGExLWZpbGUuYzoxNjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2VtZW50ICVzIG5vdCBmb3VuZCBmb3IgJXMiCiBtc2dzdHIgInJlbXBsYWNlbWVudCAlcyBub24gdHJvdXbDqSBwb3VyICVzIgogCi0jOiBzaGExLWZpbGUuYzoxNDMwCisjOiBzaGExLWZpbGUuYzoxNjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvb3NlIG9iamVjdCAlcyAoc3RvcmVkIGluICVzKSBpcyBjb3JydXB0IgogbXNnc3RyICJsJ29iamV0IGxpYnJlICVzIChzdG9ja8OpIGRhbnMgJXMpIGVzdCBjb3Jyb21wdSIKIAotIzogc2hhMS1maWxlLmM6MTQzNAorIzogc2hhMS1maWxlLmM6MTY0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrZWQgb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCiBtc2dzdHIgImwnb2JqZXQgZW1wYXF1ZXTDqSAlcyAoc3RvY2vDqSBkYW5zICVzKSBlc3QgY29ycm9tcHUiCiAKLSM6IHNoYTEtZmlsZS5jOjE1MzYKKyM6IHNoYTEtZmlsZS5jOjE3NDYKICMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIHdyaXRlIHNoYTEgZmlsZW5hbWUgJXMiCi1tc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlIGxlIGZpY2hpZXIgc2hhMSAlcyIKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgbGUgZmljaGllciAlcyIKIAotIzogc2hhMS1maWxlLmM6MTU0MworIzogc2hhMS1maWxlLmM6MTc1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gc2V0IHBlcm1pc3Npb24gdG8gJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByw6lnbGVyIGxlcyBkcm9pdHMgZGUgJyVzJyIKIAotIzogc2hhMS1maWxlLmM6MTU1MAorIzogc2hhMS1maWxlLmM6MTc2MAogbXNnaWQgImZpbGUgd3JpdGUgZXJyb3IiCiBtc2dzdHIgImVycmV1ciBkJ8OpY3JpdHVyZSBkJ3VuIGZpY2hpZXIiCiAKLSM6IHNoYTEtZmlsZS5jOjE1NjkKLW1zZ2lkICJlcnJvciB3aGVuIGNsb3Npbmcgc2hhMSBmaWxlIgotbXNnc3RyICJlcnJldXIgZW4gZmVybWV0dXJlIGR1IGZpY2hpZXIgc2hhMSIKKyM6IHNoYTEtZmlsZS5jOjE3ODAKK21zZ2lkICJlcnJvciB3aGVuIGNsb3NpbmcgbG9vc2Ugb2JqZWN0IGZpbGUiCittc2dzdHIgImVycmV1ciBlbiBmZXJtZXR1cmUgZHUgZmljaGllciBkJ29iamV0IGVzc2V1bMOpIgogCi0jOiBzaGExLWZpbGUuYzoxNjM1CisjOiBzaGExLWZpbGUuYzoxODQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImluc3VmZmljaWVudCBwZXJtaXNzaW9uIGZvciBhZGRpbmcgYW4gb2JqZWN0IHRvIHJlcG9zaXRvcnkgZGF0YWJhc2UgJXMiCiBtc2dzdHIgIiIKICJkcm9pdHMgaW5zdWZmaXNhbnRzIHBvdXIgYWpvdXRlciB1biBvYmpldCDDoCBsYSBiYXNlIGRlIGRvbm7DqWVzICVzIGR1IGTDqXDDtHQiCiAKLSM6IHNoYTEtZmlsZS5jOjE2MzcKKyM6IHNoYTEtZmlsZS5jOjE4NDcKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBmaWxlIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciB1biBmaWNoaWVyIHRlbXBvcmFpcmUiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NjEKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgc2hhMSBmaWxlIgotbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBmaWNoaWVyIHNoYTEiCisjOiBzaGExLWZpbGUuYzoxODcxCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGxvb3NlIG9iamVjdCBmaWxlIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBmaWNoaWVyIGQnb2JqZXQgZXNzZXVsw6kiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NjcKKyM6IHNoYTEtZmlsZS5jOjE4NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgbmV3IG9iamVjdCAlcyAoJWQpIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNvbXByZXNzZXIgbGUgbm91dmVsIG9iamV0ICVzICglZCkiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NzEKKyM6IHNoYTEtZmlsZS5jOjE4ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVmbGF0ZUVuZCBvbiBvYmplY3QgJXMgZmFpbGVkICglZCkiCiBtc2dzdHIgIsOpY2hlYyBkZSBkZWZsYXRlRW5kIHN1ciBsJ29iamV0ICVzICglZCkiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NzUKKyM6IHNoYTEtZmlsZS5jOjE4ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29uZnVzZWQgYnkgdW5zdGFibGUgb2JqZWN0IHNvdXJjZSBkYXRhIGZvciAlcyIKIG1zZ3N0ciAiZG9ubsOpZXMgZGUgc291cmNlIGQnb2JqZXQgaW5zdGFibGUgcG91ciAlcyIKIAotIzogc2hhMS1maWxlLmM6MTY4NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjkxOAorIzogc2hhMS1maWxlLmM6MTg5NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjEwNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHV0aW1lKCkgb24gJXMiCiBtc2dzdHIgIsOpY2hlYyBkZSB1dGltZSgpIHN1ciAlcyIKIAotIzogc2hhMS1maWxlLmM6MTc2MAorIzogc2hhMS1maWxlLmM6MTk3MgogIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3QgcmVhZCBzaGExX2ZpbGUgZm9yICVzIgotbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGUgZmljaGllciBzaGExIHBvdXIgJXMiCittc2dpZCAiY2Fubm90IHJlYWQgb2JqZWN0IGZvciAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGwnb2JqZXQgcG91ciAlcyIKIAotIzogc2hhMS1maWxlLmM6MTgwNQorIzogc2hhMS1maWxlLmM6MjAxMQogbXNnaWQgImNvcnJ1cHQgY29tbWl0IgogbXNnc3RyICJjb21taXQgY29ycm9tcHUiCiAKLSM6IHNoYTEtZmlsZS5jOjE4MTMKKyM6IHNoYTEtZmlsZS5jOjIwMTkKIG1zZ2lkICJjb3JydXB0IHRhZyIKIG1zZ3N0ciAiw6l0aXF1ZXR0ZSBjb3Jyb21wdWUiCiAKLSM6IHNoYTEtZmlsZS5jOjE5MTIKKyM6IHNoYTEtZmlsZS5jOjIxMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZCBlcnJvciB3aGlsZSBpbmRleGluZyAlcyIKIG1zZ3N0ciAiZXJyZXVyIGRlIGxlY3R1cmUgw6AgbCdpbmRleGF0aW9uIGRlICVzIgogCi0jOiBzaGExLWZpbGUuYzoxOTE1CisjOiBzaGExLWZpbGUuYzoyMTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgInNob3J0IHJlYWQgd2hpbGUgaW5kZXhpbmcgJXMiCiBtc2dzdHIgImxlY3R1cmUgdHJvbnF1w6llIHBlbmRhbnQgbCdpbmRleGF0aW9uIGRlICVzIgogCi0jOiBzaGExLWZpbGUuYzoxOTg4IHNoYTEtZmlsZS5jOjE5OTcKKyM6IHNoYTEtZmlsZS5jOjIxOTUgc2hhMS1maWxlLmM6MjIwNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZmFpbGVkIHRvIGluc2VydCBpbnRvIGRhdGFiYXNlIgogbXNnc3RyICIlc8KgOiDDqWNoZWMgZGUgbCdpbnNlcnRpb24gZGFucyBsYSBiYXNlIGRlIGRvbm7DqWVzIgogCi0jOiBzaGExLWZpbGUuYzoyMDAzCisjOiBzaGExLWZpbGUuYzoyMjExCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiB1bnN1cHBvcnRlZCBmaWxlIHR5cGUiCiBtc2dzdHIgIiVzwqA6IHR5cGUgZGUgZmljaGllciBub24gc3VwcG9ydMOpIgogCi0jOiBzaGExLWZpbGUuYzoyMDI3CisjOiBzaGExLWZpbGUuYzoyMjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIG9iamVjdCIKIG1zZ3N0ciAiJXMgbidlc3QgcGFzIHVuIG9iamV0IHZhbGlkZSIKIAotIzogc2hhMS1maWxlLmM6MjAyOQorIzogc2hhMS1maWxlLmM6MjIzNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCAnJXMnIG9iamVjdCIKIG1zZ3N0ciAiJXMgbidlc3QgcGFzIHVuIG9iamV0ICclcycgdmFsaWRlIgogCi0jOiBzaGExLWZpbGUuYzoyMDU2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NAorIzogc2hhMS1maWxlLmM6MjI2NCBidWlsdGluL2luZGV4LXBhY2suYzoxNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMiCiBtc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjIyMjYgc2hhMS1maWxlLmM6MjI3OAorIzogc2hhMS1maWxlLmM6MjQ1NCBzaGExLWZpbGUuYzoyNTA3CiAjLCBjLWZvcm1hdAotbXNnaWQgInNoYTEgbWlzbWF0Y2ggZm9yICVzIChleHBlY3RlZCAlcykiCi1tc2dzdHIgImluY29ow6lyZW5jZSBkZSBzaGExIHBvdXIgJXMgKCVzIGF0dGVuZHUpIgorbXNnaWQgImhhc2ggbWlzbWF0Y2ggZm9yICVzIChleHBlY3RlZCAlcykiCittc2dzdHIgImluY29ow6lyZW5jZSBkZSBoYWNoYWdlIHBvdXIgJXMgKCVzIGF0dGVuZHUpIgogCi0jOiBzaGExLWZpbGUuYzoyMjUwCisjOiBzaGExLWZpbGUuYzoyNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtbWFwICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIG1tYXAgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjIyNTUKKyM6IHNoYTEtZmlsZS5jOjI0ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayBoZWFkZXIgb2YgJXMiCiBtc2dzdHIgImltcG9zc2libGUgZGUgZMOpcGFxdWV0ZXIgbCdlbnTDqnRlIGRlICVzIgogCi0jOiBzaGExLWZpbGUuYzoyMjYxCisjOiBzaGExLWZpbGUuYzoyNDg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBoZWFkZXIgb2YgJXMiCiBtc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBsJ2VudMOqdGUgZGUgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjIyNzIKKyM6IHNoYTEtZmlsZS5jOjI1MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayBjb250ZW50cyBvZiAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBkw6lwYXF1ZXRlciBsZSBjb250ZW51IGRlICVzIgogCi0jOiBzaGExLW5hbWUuYzo0NzYKKyM6IHNoYTEtbmFtZS5jOjQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJzaG9ydCBTSEExICVzIGlzIGFtYmlndW91cyIKIG1zZ3N0ciAibGUgU0hBMSBjb3VydCAlcyBlc3QgYW1iaWd1IgogCi0jOiBzaGExLW5hbWUuYzo0ODcKKyM6IHNoYTEtbmFtZS5jOjQ5NwogbXNnaWQgIlRoZSBjYW5kaWRhdGVzIGFyZToiCiBtc2dzdHIgIkxlcyBjYW5kaWRhdHMgc29udMKgOiIKIAotIzogc2hhMS1uYW1lLmM6NzcwCisjOiBzaGExLW5hbWUuYzo3OTYKIG1zZ2lkICIiCiAiR2l0IG5vcm1hbGx5IG5ldmVyIGNyZWF0ZXMgYSByZWYgdGhhdCBlbmRzIHdpdGggNDAgaGV4IGNoYXJhY3RlcnNcbiIKICJiZWNhdXNlIGl0IHdpbGwgYmUgaWdub3JlZCB3aGVuIHlvdSBqdXN0IHNwZWNpZnkgNDAtaGV4LiBUaGVzZSByZWZzXG4iCiAibWF5IGJlIGNyZWF0ZWQgYnkgbWlzdGFrZS4gRm9yIGV4YW1wbGUsXG4iCiAiXG4iCi0iICBnaXQgY2hlY2tvdXQgLWIgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCisiICBnaXQgc3dpdGNoIC1jICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgogIlxuIgogIndoZXJlIFwiJGJyXCIgaXMgc29tZWhvdyBlbXB0eSBhbmQgYSA0MC1oZXggcmVmIGlzIGNyZWF0ZWQuIFBsZWFzZVxuIgogImV4YW1pbmUgdGhlc2UgcmVmcyBhbmQgbWF5YmUgZGVsZXRlIHRoZW0uIFR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieVxuIgogInJ1bm5pbmcgXCJnaXQgY29uZmlnIGFkdmljZS5vYmplY3ROYW1lV2FybmluZyBmYWxzZVwiIgogbXNnc3RyICIiCi0iR2l0IG5lIGNyw6llIG5vcm1hbGVtZW50IGphbWFpcyBkZSByw6lmw6lyZW5jZSBxdWkgc2UgdGVybWluZSBwYXIgNDAgY2FyYWN0w6hyZXMgIgotImhleGFcbiIKLSJjYXIgZWxsZSBzZXJhaXQgaWdub3LDqWUgc2kgdm91cyBzcMOpY2lmaWlleiA0MC1oZXhhLiBDZXMgcsOpZsOpcmVuY2VzXG4iCi0icGV1dmVudCDDqnRyZSBjcsOpw6llcyBwYXIgZXJyZXVyLiBQYXIgZXhlbXBsZSxcbiIKKyJHaXQgbmUgY3LDqWUgbm9ybWFsZW1lbnQgamFtYWlzIGRlIHLDqWbDqXJlbmNlIHF1aSBzZSB0ZXJtaW5lIHBhciA0MFxuIgorImNhcmFjdMOocmVzIGhleGEgY2FyIGVsbGUgc2VyYWl0IGlnbm9yw6llIHNpIHZvdXMgc3DDqWNpZmlleiBqdXN0ZVxuIgorIjQwLWhleGEuIENlcyByw6lmw6lyZW5jZXMgcGV1dmVudCDDqnRyZSBjcsOpw6llcyBwYXIgZXJyZXVyLiBQYXIgZXhlbXBsZSxcbiIKICJcbiIKLSIgIGdpdCBjaGVja291dCAtYiAkYnIgJChnaXQgcmV2LXBhcnNlIC4uLilcbiIKKyIgIGdpdCBzd2l0Y2ggLWMgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCiAiXG4iCiAib8O5IFwiJGJyXCIgZXN0IGQndW5lIG1hbmnDqHJlIG91IGQndW5lIGF1dHJlIHZpZGUgZXQgdW5lIHLDqWbDqXJlbmNlIDQwLWhleGEgIgogImVzdCBjcsOpw6llLlxuIgpAQCAtNjAxNyw3MiArNzk5MSwyODUgQEAKICJtZXNzYWdlXG4iCiAiZW4gbGFuw6dhbnQgXCJnaXQgY29uZmlnIGFkdmljZS5vYmplY3ROYW1lV2FybmluZyBmYWxzZVwiIgogCi0jOiBzdWJtb2R1bGUuYzoxMTYgc3VibW9kdWxlLmM6MTQ1CisjOiBzaGExLW5hbWUuYzo5MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciAnJS4qcycgb25seSBnb2VzIGJhY2sgdG8gJXMiCittc2dzdHIgImxlIGpvdXJuYWwgZGUgJyUuKnMnIG5lIHJlbW9udGUgcXUnw6AgJXMiCisKKyM6IHNoYTEtbmFtZS5jOjkyNAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2cgZm9yICclLipzJyBvbmx5IGhhcyAlZCBlbnRyaWVzIgorbXNnc3RyICJsZSBqb3VybmFsIGRlICclLipzJyBuJ2EgcXVlICVkIGVudHLDqWVzIgorCisjOiBzaGExLW5hbWUuYzoxNjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBleGlzdHMgb24gZGlzaywgYnV0IG5vdCBpbiAnJS4qcyciCittc2dzdHIgImxlIGNoZW1pbiAnJXMnIGV4aXN0ZSBzdXIgbGUgZGlzcXVlLCBtYWlzIHBhcyBkYW5zICclLipzJyIKKworIzogc2hhMS1uYW1lLmM6MTY5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGV4aXN0cywgYnV0IG5vdCAnJXMnXG4iCisiaGludDogRGlkIHlvdSBtZWFuICclLipzOiVzJyBha2EgJyUuKnM6Li8lcyc/IgorbXNnc3RyICIiCisibGUgY2hlbWluICclcycgZXhpc3RlLCBtYWlzIHBhcyAnJXMnXG4iCisiY29uc2VpbMKgOiBwZXV0LcOqdHJlIHZvdWxpZXotdm91cyBkaXJlICclLipzOiVzJywgc29pdCAnJS4qczouLyVzJyIKKworIzogc2hhMS1uYW1lLmM6MTcwNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZG9lcyBub3QgZXhpc3QgaW4gJyUuKnMnIgorbXNnc3RyICJsZSBjaGVtaW4gJyVzJyBuJ2V4aXN0ZSBwYXMgZG5hcyAnJS4qcyciCisKKyM6IHNoYTEtbmFtZS5jOjE3MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBpcyBpbiB0aGUgaW5kZXgsIGJ1dCBub3QgYXQgc3RhZ2UgJWRcbiIKKyJoaW50OiBEaWQgeW91IG1lYW4gJzolZDolcyc/IgorbXNnc3RyICIiCisibGUgY2hlbWluICclcycgZXN0IGRhbnMgbCdpbmRleCwgbWFpcyBwYXMgw6AgbCfDqXRhcGUgJWRcbiIKKyJjb25zZWlswqA6IHZvdXMgdm91bGlleiBwZXV0LcOqdHJlIGRpcmUgJzolZDolcyfCoD8iCisKKyM6IHNoYTEtbmFtZS5jOjE3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBpcyBpbiB0aGUgaW5kZXgsIGJ1dCBub3QgJyVzJ1xuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnOiVkOiVzJyBha2EgJzolZDouLyVzJz8iCittc2dzdHIgIiIKKyJsZSBjaGVtaW4gJyVzJyBlc3QgZGFucyBsJ2luZGV4LCBtYWlzIHBhcyAnJXMnXG4iCisiY29uc2VpbMKgOiBwZXV0LcOqdHJlIHZvdWxpZXotdm91cyBkaXJlICc6JWQ6JXMnLCBzb2l0ICclZDouLyVzJyIKKworIzogc2hhMS1uYW1lLmM6MTc1NgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gdGhlIGluZGV4IgorbXNnc3RyICJsZSBjaGVtaW4gJyVzJyBleGlzdGUgc3VyIGxlIGRpc3F1ZSwgbWFpcyBwYXMgZGFucyBsJ2luZGV4IgorCisjOiBzaGExLW5hbWUuYzoxNzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCAobmVpdGhlciBvbiBkaXNrIG5vciBpbiB0aGUgaW5kZXgpIgorbXNnc3RyICJsZSBjaGVtaW4gJyVzJyBuJ2V4aXN0ZSBwYXMgKG5pIHN1ciBsZSBkaXNxdWUsIG5pIGRhbnMgbCdpbmRleCkiCisKKyM6IHNoYTEtbmFtZS5jOjE3NzEKK21zZ2lkICJyZWxhdGl2ZSBwYXRoIHN5bnRheCBjYW4ndCBiZSB1c2VkIG91dHNpZGUgd29ya2luZyB0cmVlIgorbXNnc3RyICIiCisibGEgc3ludGF4ZSBkZSBjaGVtaW4gcmVsYXRpZiBuZSBwZXV0IHBhcyDDqnRyZSB1dGlsaXPDqWUgaG9ycyBkZSBsJ2FyYnJlIGRlICIKKyJ0cmF2YWlsIgorCisjOiBzaGExLW5hbWUuYzoxOTA5CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgb2JqZWN0IG5hbWUgJyUuKnMnLiIKK21zZ3N0ciAibm9tIGQnb2JqZXQgaW52YWxpZGUgOiAnJS4qcycuIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggZ2liaWJ5dGUKKyM6IHN0cmJ1Zi5jOjgzNworIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBHaUIiCittc2dzdHIgIiV1LiUyLjJ1IEdpbyIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGdpYmlieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEdpQi9zIgorbXNnc3RyICIldS4lMi4ydSBHaW8vcyIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IG1lYmlieXRlCisjOiBzdHJidWYuYzo4NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgTWlCIgorbXNnc3RyICIldS4lMi4ydSBNaW8iCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBtZWJpYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjg0OQorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBNaUIvcyIKK21zZ3N0ciAiJXUuJTIuMnUgTWlvL3MiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBraWJpYnl0ZQorIzogc3RyYnVmLmM6ODU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEtpQiIKK21zZ3N0ciAiJXUuJTIuMnUgS2lvIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDgga2liaWJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgS2lCL3MiCittc2dzdHIgIiV1LiUyLjJ1IEtpby9zIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggYnl0ZQorIzogc3RyYnVmLmM6ODY0CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1IGJ5dGUiCittc2dpZF9wbHVyYWwgIiV1IGJ5dGVzIgorbXNnc3RyWzBdICIldSBvY3RldCIKK21zZ3N0clsxXSAiJXUgb2N0ZXRzIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjg2NgorIywgYy1mb3JtYXQKK21zZ2lkICIldSBieXRlL3MiCittc2dpZF9wbHVyYWwgIiV1IGJ5dGVzL3MiCittc2dzdHJbMF0gIiV1IG9jdGV0L3MiCittc2dzdHJbMV0gIiV1IG9jdGV0cy9zIgorCisjOiBzdHJidWYuYzoxMTY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBlZGl0ICclcyciCittc2dzdHIgImltcG9zc2libGUgZCfDqWRpdGVyICclcyciCisKKyM6IHN1Ym1vZHVsZS5jOjExNCBzdWJtb2R1bGUuYzoxNDMKIG1zZ2lkICJDYW5ub3QgY2hhbmdlIHVubWVyZ2VkIC5naXRtb2R1bGVzLCByZXNvbHZlIG1lcmdlIGNvbmZsaWN0cyBmaXJzdCIKIG1zZ3N0ciAiIgogIk1vZGlmaWNhdGlvbiBpbXBvc3NpYmxlIGRlIC5naXRtb2R1bGVzIG5vbiBmdXNpb25uw6ksIHLDqXNvbHZleiBsZXMgY29uZmxpdHMgIgogImQnYWJvcmQiCiAKLSM6IHN1Ym1vZHVsZS5jOjEyMCBzdWJtb2R1bGUuYzoxNDkKKyM6IHN1Ym1vZHVsZS5jOjExOCBzdWJtb2R1bGUuYzoxNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZpbmQgc2VjdGlvbiBpbiAuZ2l0bW9kdWxlcyB3aGVyZSBwYXRoPSVzIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgdW5lIHNlY3Rpb24gb8O5IHBhdGg9JXMgZGFucyAuZ2l0bW9kdWxlcyIKIAogIyBpY2kgJXMgZXN0IHVuIGNoZW1pbgotIzogc3VibW9kdWxlLmM6MTU2CisjOiBzdWJtb2R1bGUuYzoxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSAuZ2l0bW9kdWxlcyBlbnRyeSBmb3IgJXMiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgc3VwcHJpbWVyIGwnw6lsw6ltZW50IGRlIC5naXRtb2R1bGVzIHBvdXIgJXMiCiAKLSM6IHN1Ym1vZHVsZS5jOjE2NworIzogc3VibW9kdWxlLmM6MTY1CiBtc2dpZCAic3RhZ2luZyB1cGRhdGVkIC5naXRtb2R1bGVzIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGRlIGxhIG1pc2UgZW4gaW5kZXggZHUgLmdpdG1vZHVsZXMgbWlzIMOgIGpvdXIiCiAKLSM6IHN1Ym1vZHVsZS5jOjMyOQorIzogc3VibW9kdWxlLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgImluIHVucG9wdWxhdGVkIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJkYW5zIGxlIHNvdXMtbW9kdWxlICclcycgbm9uIHBvcHVsw6kiCiAKLSM6IHN1Ym1vZHVsZS5jOjM2MAorIzogc3VibW9kdWxlLmM6MzU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlBhdGhzcGVjICclcycgaXMgaW4gc3VibW9kdWxlICclLipzJyIKIG1zZ3N0ciAiTGUgY2hlbWluICclcycgZXN0IGRhbnMgbGUgc291cy1tb2R1bGUgJyUuKnMnIgogCi0jOiBzdWJtb2R1bGUuYzo4NTcKKyM6IHN1Ym1vZHVsZS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS1pZ25vcmUtc3VibW9kdWxlcyBhcmd1bWVudDogJXMiCittc2dzdHIgIm1hdXZhaXMgYXJndW1lbnQgLS1pZ25vcmUtc3VibW9kdWxlc8KgOiAlcyIKKworIzogc3VibW9kdWxlLmM6ODE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTdWJtb2R1bGUgaW4gY29tbWl0ICVzIGF0IHBhdGg6ICclcycgY29sbGlkZXMgd2l0aCBhIHN1Ym1vZHVsZSBuYW1lZCB0aGUgIgorInNhbWUuIFNraXBwaW5nIGl0LiIKK21zZ3N0ciAiIgorIkxlIHNvdXMtbW9kdWxlIGRhbnMgbGUgY29tbWl0ICVzIGF1IGNoZW1pbsKgOiAnJXMnIGVudHJlIGVuIGNvbGxpc2lvbiBhdmVjIHVuICIKKyJzb3VzLW1vZHVsZSBkdSBtw6ptZSBub20uIElnbm9yw6kuIgorCisjOiBzdWJtb2R1bGUuYzo5MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAic3VibW9kdWxlIGVudHJ5ICclcycgKCVzKSBpcyBhICVzLCBub3QgYSBjb21taXQiCiBtc2dzdHIgImwnZW50csOpZSBkZSBzb3VzLW1vZHVsZSAnJXMnICglcykgZXN0IHVuICVzLCBwYXMgdW4gY29tbWl0IgogCi0jOiBzdWJtb2R1bGUuYzoxMDk3IGJ1aWx0aW4vYnJhbmNoLmM6NjU2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTg1CisjOiBzdWJtb2R1bGUuYzo5OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvdWxkIG5vdCBydW4gJ2dpdCByZXYtbGlzdCA8Y29tbWl0cz4gLS1ub3QgLS1yZW1vdGVzIC1uIDEnIGNvbW1hbmQgaW4gIgorInN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiIgorIkltcG9zc2libGUgZGUgbGFuY2VyIGxhIGNvbW1hbmRlICdnaXQgcmV2LWxpc3QgPGNvbW1pdHM+IC0tbm90IC0tcmVtb3RlcyAtbiAiCisiMScgZGFucyBsZSBzb3VzLW1vZHVsZSAlcyIKKworIzogc3VibW9kdWxlLmM6MTExOAorIywgYy1mb3JtYXQKK21zZ2lkICJwcm9jZXNzIGZvciBzdWJtb2R1bGUgJyVzJyBmYWlsZWQiCittc2dzdHIgImxlIHByb2Nlc3N1cyBwb3VyIGxlIHNvdXMtbW9kdWxlICclcycgYSDDqWNob3XDqSIKKworIzogc3VibW9kdWxlLmM6MTE0NyBidWlsdGluL2JyYW5jaC5jOjY4MCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA0NQogbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlIEhFQUQgYXMgYSB2YWxpZCByZWYuIgogbXNnc3RyICLDiWNoZWMgZGUgcsOpc29sdXRpb24gZGUgSEVBRCBjb21tZSByw6lmw6lyZW5jZSB2YWxpZGUuIgogCi0jOiBzdWJtb2R1bGUuYzoxNDA0CisjOiBzdWJtb2R1bGUuYzoxMTU4CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1c2hpbmcgc3VibW9kdWxlICclcydcbiIKK21zZ3N0ciAiUG91c3PDqWUgZHUgc291cy1tb2R1bGUgJyVzJ1xuIgorCisjOiBzdWJtb2R1bGUuYzoxMTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBwdXNoIHN1Ym1vZHVsZSAnJXMnXG4iCittc2dzdHIgIkltcG9zc2libGUgZGUgcG91c3NlciBsZSBzb3VzLW1vZHVsZSAnJXMnXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjE0NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmV0Y2hpbmcgc3VibW9kdWxlICVzJXNcbiIKK21zZ3N0ciAiUsOpY3Vww6lyYXRpb24gZHUgc291cy1tb2R1bGUgJXMlc1xuIgorCisjOiBzdWJtb2R1bGUuYzoxNDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBhY2Nlc3Mgc3VibW9kdWxlICclcydcbiIKK21zZ3N0ciAiSW1wb3NzaWJsZSBkJ2FjY8OpZGVyIGF1IHNvdXMtbW9kdWxlICclcydcbiIKKworIzogc3VibW9kdWxlLmM6MTYzNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXJyb3JzIGR1cmluZyBzdWJtb2R1bGUgZmV0Y2g6XG4iCisiJXMiCittc2dzdHIgIiIKKyJFcnJldXJzIHBlbmRhbnQgbGEgcsOpY3Vww6lyYXRpb24gZHUgc291cy1tb2R1bGXCoDpcbiIKKyIlcyIKKworIzogc3VibW9kdWxlLmM6MTY2MgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIG5vdCByZWNvZ25pemVkIGFzIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIiclcycgbidlc3QgcGFzIHJlY29ubnUgY29tbWUgZMOpcMO0dCBnaXQiCiAKLSM6IHN1Ym1vZHVsZS5jOjE1NDIKKyM6IHN1Ym1vZHVsZS5jOjE2NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHJ1biAnZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbj0yJyBpbiBzdWJtb2R1bGUgJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgbGFuY2VyICdnaXQgc3RhdHVzIC0tcG9yY2VsYWluPTInIGRhbnMgbGUgc291cy1tb2R1bGUgJXMiCisKKyM6IHN1Ym1vZHVsZS5jOjE3MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgZmFpbGVkIGluIHN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgYSDDqWNob3XDqSBkYW5zIGxlIHNvdXMtbW9kdWxlICVzIgorCisjOiBzdWJtb2R1bGUuYzoxODAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGFydCAnZ2l0IHN0YXR1cycgaW4gc3VibW9kdWxlICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgZMOpbWFycmVyICdnaXQgc3RhdHVzJyBkYW5zIGxlIHNvdXMtbW9kdWxlICclcyciCiAKLSM6IHN1Ym1vZHVsZS5jOjE1NTUKKyM6IHN1Ym1vZHVsZS5jOjE4MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJ1biAnZ2l0IHN0YXR1cycgaW4gc3VibW9kdWxlICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgbGFuY2VyICdnaXQgc3RhdHVzJyBkYW5zIGxlIHNvdXMtbW9kdWxlICclcyciCiAKLSM6IHN1Ym1vZHVsZS5jOjE2NDgKKyM6IHN1Ym1vZHVsZS5jOjE4MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHVuc2V0IGNvcmUud29ya3RyZWUgc2V0dGluZyBpbiBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiSW1wb3NzaWJsZSBkZSBkw6lzYWN0aXZlciBjb3JlLndvcmt0cmVlIGRhbnMgbGUgc291cy1tb2R1bGUgJyVzJyIKKworIzogc3VibW9kdWxlLmM6MTg1NSBzdWJtb2R1bGUuYzoyMTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWN1cnNlIGludG8gc3VibW9kdWxlICclcyciCittc2dzdHIgInLDqWN1cnNpb24gaW1wb3NzaWJsZSBkYW5zIGxlIHNvdXMtbW9kdWxlICclcyciCisKKyM6IHN1Ym1vZHVsZS5jOjE4NzYKK21zZ2lkICJjb3VsZCBub3QgcmVzZXQgc3VibW9kdWxlIGluZGV4IgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHLDqWluaXRpYWxpc2VyIGwnaW5kZXggZHUgc291cy1tb2R1bGUiCisKKyM6IHN1Ym1vZHVsZS5jOjE5MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAic3VibW9kdWxlICclcycgaGFzIGRpcnR5IGluZGV4IgogbXNnc3RyICJsZSBzb3VzLW1vZHVsZSAnJXMnIGEgdW4gaW5kZXggc2FsZSIKIAotIzogc3VibW9kdWxlLmM6MTcwMAorIzogc3VibW9kdWxlLmM6MTk3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyBjb3VsZCBub3QgYmUgdXBkYXRlZC4iCiBtc2dzdHIgImxlIHNvdXMtbW9kdWxlICclcycgbidhIHBhcyBwdSDDqnRyZSBtaXMgw6Agam91ci4iCiAKLSM6IHN1Ym1vZHVsZS5jOjE3NDcKKyM6IHN1Ym1vZHVsZS5jOjIwMzgKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VibW9kdWxlIGdpdCBkaXIgJyVzJyBpcyBpbnNpZGUgZ2l0IGRpciAnJS4qcyciCittc2dzdHIgIiIKKyJsZSByw6lwZXJ0b2lyZSBnaXQgZHUgc291cy1tb2R1bGUgJyVzJyBlc3Qgw6AgbCdpbnTDqXJpZXVyIGR1IHLDqXBlcnRvaXJlIGdpdCAiCisiJyUuKnMnIgorCisjOiBzdWJtb2R1bGUuYzoyMDU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJyZWxvY2F0ZV9naXRkaXIgZm9yIHN1Ym1vZHVsZSAnJXMnIHdpdGggbW9yZSB0aGFuIG9uZSB3b3JrdHJlZSBub3Qgc3VwcG9ydGVkIgpAQCAtNjA5MCwxMiArODI3NywxNyBAQAogInJlbG9jYXRlX2dpdGRpciBwb3VyIGxlIHNvdXMtbW9kdWxlICclcycgYXZlYyBwbHVzIGQndW4gYXJicmUgZGUgdHJhdmFpbCAiCiAibidlc3QgcGFzIHN1cHBvcnTDqSIKIAotIzogc3VibW9kdWxlLmM6MTc1OSBzdWJtb2R1bGUuYzoxODE1CisjOiBzdWJtb2R1bGUuYzoyMDcxIHN1Ym1vZHVsZS5jOjIxMzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvb2t1cCBuYW1lIGZvciBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSB0cm91dmUgbGUgbm9tIHBvdXIgbGUgc291cy1tb2R1bGUgJyVzJyIKIAotIzogc3VibW9kdWxlLmM6MTc2NgorIzogc3VibW9kdWxlLmM6MjA3NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBtb3ZlICclcycgaW50byBhbiBleGlzdGluZyBnaXQgZGlyIgorbXNnc3RyICJyZWZ1cyBkZSBkw6lwbGFjZXIgJyVzJyBkYW5zIHVuZSByw6lwZXJ0b2lyZSBnaXQgZXhpc3RhbnQiCisKKyM6IHN1Ym1vZHVsZS5jOjIwODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk1pZ3JhdGluZyBnaXQgZGlyZWN0b3J5IG9mICclcyVzJyBmcm9tXG4iCkBAIC02MTA2LDQyICs4Mjk4LDM3IEBACiAiJyVzJyBzdXJcbiIKICInJXMnXG4iCiAKLSM6IHN1Ym1vZHVsZS5jOjE4NTAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKLW1zZ3N0ciAicsOpY3Vyc2lvbiBpbXBvc3NpYmxlIGRhbnMgbGUgc291cy1tb2R1bGUgJyVzJyIKLQotIzogc3VibW9kdWxlLmM6MTg5NAorIzogc3VibW9kdWxlLmM6MjIwOQogbXNnaWQgImNvdWxkIG5vdCBzdGFydCBscy1maWxlcyBpbiAuLiIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBkw6ltYXJyZXIgbHMtZmlsZXMgZGFucyAuLiIKIAotIzogc3VibW9kdWxlLmM6MTkzMworIzogc3VibW9kdWxlLmM6MjI0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJscy10cmVlIHJldHVybmVkIHVuZXhwZWN0ZWQgcmV0dXJuIGNvZGUgJWQiCiBtc2dzdHIgImxzLXRyZWUgYSByZW52b3nDqSB1biBjb2RlIGRlIHJldG91ciBpbmF0dGVuZHUgJWQiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzIKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3Jpbmcgc3VzcGljaW91cyBzdWJtb2R1bGUgbmFtZTogJXMiCiBtc2dzdHIgIm5vbSBkZSBzb3VzLW1vZHVsZSBzdXNwaWNpZXV4ICVzIGlnbm9yw6kiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzoyOTYKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzozMDMKIG1zZ2lkICJuZWdhdGl2ZSB2YWx1ZXMgbm90IGFsbG93ZWQgZm9yIHN1Ym1vZHVsZS5mZXRjaGpvYnMiCiBtc2dzdHIgImxlcyB2YWxldXJzIG7DqWdhdGl2ZXMgbmUgc29udCBwYXMgcGVybWlzZXMgcG91ciBzdWJtb2R1bGUuZmV0Y2hKb2JzIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6MzkwCisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nICclcycgd2hpY2ggbWF5IGJlIGludGVycHJldGVkIGFzIGEgY29tbWFuZC1saW5lIG9wdGlvbjogJXMiCiBtc2dzdHIgIiIKICInJXMnIGlnbm9yw6kgZXQgcXVpIHBldXQgw6p0cmUgaW50ZXJwcsOpdMOpIGNvbW1lIHVuZSBvcHRpb24gZGUgbGlnbmUgZGUgIgogImNvbW1hbmRlwqA6ICVzIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6NDc5CisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yICVzIgogbXNnc3RyICJWYWxldXIgaW52YWxpZGUgcG91ciAlcyIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjc1NAorIzogc3VibW9kdWxlLWNvbmZpZy5jOjc2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgdXBkYXRlIC5naXRtb2R1bGVzIGVudHJ5ICVzIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIG1ldHRyZSDDoCBqb3VyIGwnw6lsw6ltZW50ICVzIGRlIC5naXRtb2R1bGVzIgpAQCAtNjE1Nyw3ICs4MzQ0LDcgQEAKIG1zZ2lkICJ1bmtub3duIHZhbHVlICclcycgZm9yIGtleSAnJXMnIgogbXNnc3RyICJ2YWxldXIgaW5jb25udWUgJyVzJyBwb3VyIGxhIGNsw6kgJyVzJyIKIAotIzogdHJhaWxlci5jOjUzOSB0cmFpbGVyLmM6NTQ0IGJ1aWx0aW4vcmVtb3RlLmM6Mjk1CisjOiB0cmFpbGVyLmM6NTM5IHRyYWlsZXIuYzo1NDQgYnVpbHRpbi9yZW1vdGUuYzoyOTggYnVpbHRpbi9yZW1vdGUuYzozMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9yZSB0aGFuIG9uZSAlcyIKIG1zZ3N0ciAicGx1cyBkJ3VuICVzIgpAQCAtNjE3Niw3ICs4MzYzLDcgQEAKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBmcm9tIHN0ZGluIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIGxpcmUgZGVwdWlzIGwnZW50csOpZSBzdGFuZGFyZCIKIAotIzogdHJhaWxlci5jOjEwMTEgYnVpbHRpbi9hbS5jOjQ3CisjOiB0cmFpbGVyLmM6MTAxMSB3cmFwcGVyLmM6NjY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0ICVzIgogbXNnc3RyICJzdGF0IGltcG9zc2libGUgZGUgJXMiCkBAIC02MjA1LDQ4ICs4MzkyLDU2IEBACiBtc2dpZCAiV291bGQgc2V0IHVwc3RyZWFtIG9mICclcycgdG8gJyVzJyBvZiAnJXMnXG4iCiBtc2dzdHIgIlBvc2l0aW9ubmVyYWl0IGxhIGJyYW5jaGUgYW1vbnQgZGUgJyVzJyBzdXIgJyVzJyBkZSAnJXMnXG4iCiAKLSM6IHRyYW5zcG9ydC5jOjE0MgorIzogdHJhbnNwb3J0LmM6MTQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGJ1bmRsZSAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGEgbGlhc3NlICclcyciCiAKLSM6IHRyYW5zcG9ydC5jOjIwOAorIzogdHJhbnNwb3J0LmM6MjE0CiAjLCBjLWZvcm1hdAogbXNnaWQgInRyYW5zcG9ydDogaW52YWxpZCBkZXB0aCBvcHRpb24gJyVzJyIKIG1zZ3N0ciAidHJhbnNwb3J0wqA6IG9wdGlvbiBkZSBwcm9mb25kZXVyIGludmFsaWRlICclcyciCiAKLSM6IHRyYW5zcG9ydC5jOjYxNgorIzogdHJhbnNwb3J0LmM6MjY2Cittc2dpZCAic2VlIHByb3RvY29sLnZlcnNpb24gaW4gJ2dpdCBoZWxwIGNvbmZpZycgZm9yIG1vcmUgZGV0YWlscyIKK21zZ3N0ciAidm9pciBwcm90b2NvbC52ZXJzaW9uIGRhbnMgJ2dpdCBoZWxwIGNvbmZpZycgcG91ciBwbHVzIGQnaW5mb3JtYXRpb24iCisKKyM6IHRyYW5zcG9ydC5jOjI2NworbXNnaWQgInNlcnZlciBvcHRpb25zIHJlcXVpcmUgcHJvdG9jb2wgdmVyc2lvbiAyIG9yIGxhdGVyIgorbXNnc3RyICJsZXMgb3B0aW9ucyBkZSBzZXJ2ZXVyIGV4aWdlbnQgdW5lIHZlcnNpb24gMiBvdSBzdXDDqXJpZXVyZSIKKworIzogdHJhbnNwb3J0LmM6NjMyCiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHRyYW5zcG9ydC5jb2xvci4qIGNvbmZpZyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGxhIGNvbmZpZ3VyYXRpb24gdHJhbnNwb3J0LmNvbG9yLioiCiAKLSM6IHRyYW5zcG9ydC5jOjY4OQorIzogdHJhbnNwb3J0LmM6NzA1CiBtc2dpZCAic3VwcG9ydCBmb3IgcHJvdG9jb2wgdjIgbm90IGltcGxlbWVudGVkIHlldCIKIG1zZ3N0ciAibGUgc3VwcG9ydCBkdSBwcm90b2NvbGUgdjIgbidlc3QgcGFzIGVuY29yZSBpbXBsYW50w6kiCiAKLSM6IHRyYW5zcG9ydC5jOjgxNgorIzogdHJhbnNwb3J0LmM6ODMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gdmFsdWUgZm9yIGNvbmZpZyAnJXMnOiAlcyIKIG1zZ3N0ciAidmFsZXVyIGluY29ubnVlIHBvdXIgbGEgY29uZmlnICclcyfCoDogJXMiCiAKLSM6IHRyYW5zcG9ydC5jOjg4MgorIzogdHJhbnNwb3J0LmM6ODk3CiAjLCBjLWZvcm1hdAogbXNnaWQgInRyYW5zcG9ydCAnJXMnIG5vdCBhbGxvd2VkIgogbXNnc3RyICJ0cmFuc3BvcnQgJyVzJyBub24gcGVybWlzIgogCi0jOiB0cmFuc3BvcnQuYzo5MzYKKyM6IHRyYW5zcG9ydC5jOjk0OQogbXNnaWQgImdpdC1vdmVyLXJzeW5jIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQiCiBtc2dzdHIgImdpdC1vdmVyLXJzeW5jIG4nZXN0IHBsdXMgc3VwcG9ydMOpIgogCi0jOiB0cmFuc3BvcnQuYzoxMDMxCisjOiB0cmFuc3BvcnQuYzoxMDQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHN1Ym1vZHVsZSBwYXRocyBjb250YWluIGNoYW5nZXMgdGhhdCBjYW5cbiIKICJub3QgYmUgZm91bmQgb24gYW55IHJlbW90ZTpcbiIKIG1zZ3N0ciAiIgotIkxlcyBjaGVtaW5zIHN1aXZhbnQgZGUgc291cy1tb2R1bGUgY29udGllbm5lbnQgZGVzIG1vZGlmaWNhdGlvbnNcbiIKKyJMZXMgY2hlbWlucyBzdWl2YW50cyBkZSBzb3VzLW1vZHVsZSBjb250aWVubmVudCBkZXMgbW9kaWZpY2F0aW9uc1xuIgogInF1aSBuZSBwZXV2ZW50IMOqdHJlIHRyb3V2w6llcyBzdXIgYXVjdW4gZGlzdGFudMKgOlxuIgogCi0jOiB0cmFuc3BvcnQuYzoxMDM1CisjOiB0cmFuc3BvcnQuYzoxMDQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTYyNzMsMzggKzg0NjgsMzMgQEAKICJwb3VyIGxlcyBwb3Vzc2VyIHZlcnMgdW4gc2VydmV1ciBkaXN0YW50LlxuIgogIlxuIgogCi0jOiB0cmFuc3BvcnQuYzoxMDQzCisjOiB0cmFuc3BvcnQuYzoxMDU2CiBtc2dpZCAiQWJvcnRpbmcuIgogbXNnc3RyICJBYmFuZG9uLiIKIAotIzogdHJhbnNwb3J0LmM6MTE4MgorIzogdHJhbnNwb3J0LmM6MTIwMQogbXNnaWQgImZhaWxlZCB0byBwdXNoIGFsbCBuZWVkZWQgc3VibW9kdWxlcyIKLW1zZ3N0ciAiZWNoZWMgZGUgbGEgcG91c3PDqWUgZGUgdG91dCBsZXMgc291cy1tb2R1bGVzIG7DqWNlc3NhaXJlcyIKK21zZ3N0ciAiw6ljaGVjIGRlIGxhIHBvdXNzw6llIGRlIHRvdXMgbGVzIHNvdXMtbW9kdWxlcyBuw6ljZXNzYWlyZXMiCiAKLSM6IHRyYW5zcG9ydC5jOjEzMTUgdHJhbnNwb3J0LWhlbHBlci5jOjY0MworIzogdHJhbnNwb3J0LmM6MTM0NSB0cmFuc3BvcnQtaGVscGVyLmM6NjU3CiBtc2dpZCAib3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCiBtc2dzdHIgIm9wdGlvbiBub24gc3VwcG9ydMOpZSBwYXIgbGUgcHJvdG9jb2xlIgogCi0jOiB0cmFuc3BvcnQuYzoxNDE5Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgbGluZSB3aGlsZSBwYXJzaW5nIGFsdGVybmF0ZSByZWZzOiAlcyIKLW1zZ3N0ciAibGlnbmUgaW52YWxpZGUgcGVuZGFudCBsJ2FuYWx5c2UgZGVzIHJlZnMgYWx0ZXJuYXRpdmVzwqA6ICVzIgotCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTEgdHJhbnNwb3J0LWhlbHBlci5jOjgwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjEgdHJhbnNwb3J0LWhlbHBlci5jOjkwCiBtc2dpZCAiZnVsbCB3cml0ZSB0byByZW1vdGUgaGVscGVyIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGRlIGwnw6ljcml0dXJlIHRvdGFsZSBzdXIgbCdhc3Npc3RhbnQgZGlzdGFudCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZmluZCByZW1vdGUgaGVscGVyIGZvciAnJXMnIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgdW4gYXNzaXN0YW50IGRpc3RhbnQgcG91ciAnJXMnIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQ4IHRyYW5zcG9ydC1oZWxwZXIuYzo1NTcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNjAgdHJhbnNwb3J0LWhlbHBlci5jOjU3MQogbXNnaWQgImNhbid0IGR1cCBoZWxwZXIgb3V0cHV0IGZkIgogbXNnc3RyICIiCiAiaW1wb3NzaWJsZSBkZSBkdXBsaXF1ZXIgbGUgZGVzY3JpcHRldXIgZGUgZmx1eCBkZSBzb3J0aWUgZGUgbCdhc3Npc3RhbnQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxOTkKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInVua25vd24gbWFuZGF0b3J5IGNhcGFiaWxpdHkgJXM7IHRoaXMgcmVtb3RlIGhlbHBlciBwcm9iYWJseSBuZWVkcyBuZXdlciAiCkBAIC02MzEzLDEwMyArODUwMywxMDggQEAKICJjYXBhY2l0w6kgb2JsaWdhdG9pcmUgaW5jb25udWUgJXPCoDsgY2V0IGFzc2lzdGFudCBkaXN0YW50IHJlcXVpZXJ0ICIKICJwcm9iYWJsZW1lbnQgdW5lIHVuZSBub3V2ZWxsZSB2ZXJzaW9uIGRlIEdpdCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjIwNQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxNwogbXNnaWQgInRoaXMgcmVtb3RlIGhlbHBlciBzaG91bGQgaW1wbGVtZW50IHJlZnNwZWMgY2FwYWJpbGl0eSIKIG1zZ3N0ciAiY2V0IGFzc2lzdGFudCBkaXN0YW50IGRldnJhaXQgc3VwcG9ydGVyIGxhIGNhcGFjaXTDqSByZWZzcGVjIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MjcyIHRyYW5zcG9ydC1oZWxwZXIuYzo0MTIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyODQgdHJhbnNwb3J0LWhlbHBlci5jOjQyNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB1bmV4cGVjdGVkbHkgc2FpZDogJyVzJyIKIG1zZ3N0ciAiJXMgYSBkaXQgZGUgbWFuacOocmUgaW5hdHRlbmR1ZcKgOiAnJXMnIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NDAxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGFsc28gbG9ja2VkICVzIgogbXNnc3RyICIlcyBhIGF1c3NpIHZlcnJvdWlsbMOpICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NDc5CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NDkzCiBtc2dpZCAiY291bGRuJ3QgcnVuIGZhc3QtaW1wb3J0IgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxhbmNlciBmYXN0LWltcG9ydCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjUwMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjUxNgogbXNnaWQgImVycm9yIHdoaWxlIHJ1bm5pbmcgZmFzdC1pbXBvcnQiCiBtc2dzdHIgImVycmV1ciBhdSBsYW5jZW1lbnQgZGUgZmFzdC1pbXBvcnQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MzEgdHJhbnNwb3J0LWhlbHBlci5jOjEwOTEKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1NDUgdHJhbnNwb3J0LWhlbHBlci5jOjExMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgcmVmICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGEgcsOpZiAlcyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjU3NgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjU5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHJlc3BvbnNlIHRvIGNvbm5lY3Q6ICVzIgogbXNnc3RyICJyw6lwb25zZSBpbmNvbm51ZSDDoCBjb25uZWN0wqA6ICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTk4CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjEyCiBtc2dpZCAic2V0dGluZyByZW1vdGUgc2VydmljZSBwYXRoIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCiBtc2dzdHIgIiIKICJsYSBzcMOpY2lmaWNhdGlvbiBkdSBjaGVtaW4gZGUgc2VydmljZSBkaXN0YW50IG4nZXN0IHBhcyBzdXBwb3J0w6llIHBhciBsZSAiCiAicHJvdG9jb2xlIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NjAwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjE0CiBtc2dpZCAiaW52YWxpZCByZW1vdGUgc2VydmljZSBwYXRoIgogbXNnc3RyICJjaGVtaW4gZGUgc2VydmljZSBkaXN0YW50IGludmFsaWRlIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NjQ2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IGNvbm5lY3QgdG8gc3Vic2VydmljZSAlcyIKLW1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBzZSBjb25uZWN0ZXIgYXMgc291cy1zZXJ2aWNlICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHNlIGNvbm5lY3RlciBhdSBzb3VzLXNlcnZpY2UgJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo3MTMKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo3MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgb2svZXJyb3IsIGhlbHBlciBzYWlkICclcyciCiBtc2dzdHIgIm9rL2Vycm9yIGF0dGVuZHUsIGwnYXNzaXN0YW50IGEgZGl0ICclcyciCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo3NjYKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo3ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyIHJlcG9ydGVkIHVuZXhwZWN0ZWQgc3RhdHVzIG9mICVzIgogbXNnc3RyICJsJ2Fzc2lzdGFudCBhIHJlbnZvecOpIHVuIHN0YXR1dCBkZSByZXRvdXIgaW5hdHRlbmR1ICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODI3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODUwCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IGRyeS1ydW4iCiBtc2dzdHIgImwnYXNzaXN0YW50ICVzIG5lIGfDqHJlIHBhcyBkcnktcnVuIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODMwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIgogbXNnc3RyICJsJ2Fzc2lzdGFudCAlcyBuZSBnw6hyZSBwYXMgLS1zaWduZWQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4MzMKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgLS1zaWduZWQ9aWYtYXNrZWQiCiBtc2dzdHIgImwnYXNzaXN0YW50ICVzIG5lIGfDqHJlIHBhcyAtLXNpZ25lZD1pZi1hc2tlZCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjg0MAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjg2MQorIywgYy1mb3JtYXQKK21zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAtLWF0b21pYyIKK21zZ3N0ciAibCdhc3Npc3RhbnQgJXMgbmUgZ8OocmUgcGFzIC0tYXRvbWljIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODY3CiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0ICdwdXNoLW9wdGlvbiciCiBtc2dzdHIgImwnYXNzaXN0YW50ICVzIG5lIGfDqHJlIHBhcyAncHVzaC1vcHRpb24nIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTMyCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6OTY1CiBtc2dpZCAicmVtb3RlLWhlbHBlciBkb2Vzbid0IHN1cHBvcnQgcHVzaDsgcmVmc3BlYyBuZWVkZWQiCiBtc2dzdHIgIiIKICJsJ2Fzc2lzdGFudCAlcyBuZSBnw6hyZSBwYXMgcHVzaMKgOyB1biBzcMOpY2lmaWNhdGV1ciBkZSByw6lmw6lyZW5jZSBlc3QgIgogIm7DqWNlc3NhaXJlIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTM3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6OTcwCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0ICdmb3JjZSciCiBtc2dzdHIgImwnYXNzaXN0YW50ICVzIG5lIGfDqHJlIHBhcyAnZm9yY2UnIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTg0CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTAxNwogbXNnaWQgImNvdWxkbid0IHJ1biBmYXN0LWV4cG9ydCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsYW5jZXIgZmFzdC1leHBvcnQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5ODkKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDIyCiBtc2dpZCAiZXJyb3Igd2hpbGUgcnVubmluZyBmYXN0LWV4cG9ydCIKIG1zZ3N0ciAiZXJyZXVyIGF1IGxhbmNlbWVudCBkZSBmYXN0LWV4cG9ydCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMTQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyByZWZzIGluIGNvbW1vbiBhbmQgbm9uZSBzcGVjaWZpZWQ7IGRvaW5nIG5vdGhpbmcuXG4iCkBAIC02NDE4LDY3ICs4NjEzLDY3IEBACiAiQXVjdW5lIHLDqWbDqXJlbmNlIGVuIGNvbW11biBldCBhdWN1bmUgc3DDqWNmacOpZcKgOyByaWVuIMOgIGZhaXJlLlxuIgogIlZvdXMgZGV2cmlleiBwZXV0LcOqdHJlIHNww6ljaWZpZXIgdW5lIGJyYW5jaGUgdGVsbGUgcXVlICdtYXN0ZXInLlxuIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTA3NworIzogdHJhbnNwb3J0LWhlbHBlci5jOjExMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIHJlc3BvbnNlIGluIHJlZiBsaXN0OiAlcyIKIG1zZ3N0ciAicsOpcG9uc2UgbWFsZm9ybcOpZSBkYW5zIGxlIGxpc3RlIGRlIHLDqWZzwqA6ICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTIzMQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZCglcykgZmFpbGVkIgogbXNnc3RyICLDqWNoZWMgZGUgcmVhZCglcykiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjU4CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cml0ZSglcykgZmFpbGVkIgogbXNnc3RyICLDqWNoZWMgZGUgd3JpdGUoJXMpIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMwNworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdGhyZWFkIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGR1IGZpbCBkJ2V4w6ljdXRpb24gJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzExCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM1MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB0aHJlYWQgZmFpbGVkIHRvIGpvaW46ICVzIgogbXNnc3RyICLDqWNoZWMgZGUgam9uY3Rpb24gZHUgZmlsIGQnZXjDqWN1dGlvbiAlc8KgOiAlcyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMzAgdHJhbnNwb3J0LWhlbHBlci5jOjEzMzQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzcxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IHN0YXJ0IHRocmVhZCBmb3IgY29weWluZyBkYXRhOiAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBkw6ltYXJyZXIgbGUgZmlsIGQnZXjDqWN1dGlvbiBwb3VyIGNvcGllciBsZXMgZG9ubsOpZXPCoDogJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzcxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQxMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBwcm9jZXNzIGZhaWxlZCB0byB3YWl0IgogbXNnc3RyICLDqWNoZWMgZHUgcHJvY2Vzc3VzICVzIHBvdXIgbCdhdHRlbnRlIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM3NQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcHJvY2VzcyBmYWlsZWQiCiBtc2dzdHIgIsOpY2hlYyBkdSBwcm9jZXNzdXMgJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzkzIHRyYW5zcG9ydC1oZWxwZXIuYzoxNDAyCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQzNCB0cmFuc3BvcnQtaGVscGVyLmM6MTQ0MwogbXNnaWQgImNhbid0IHN0YXJ0IHRocmVhZCBmb3IgY29weWluZyBkYXRhIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGTDqW1hcnJlciBsZSBmaWwgZCdleMOpY3V0aW9uIHBvdXIgY29waWVyIGxlcyBkb25uw6llcyIKIAotIzogdHJlZS13YWxrLmM6MzMKKyM6IHRyZWUtd2Fsay5jOjMyCiBtc2dpZCAidG9vLXNob3J0IHRyZWUgb2JqZWN0IgogbXNnc3RyICJvYmpldCBhcmJyZSB0cm9wIGNvdXJ0IgogCi0jOiB0cmVlLXdhbGsuYzozOQorIzogdHJlZS13YWxrLmM6MzgKIG1zZ2lkICJtYWxmb3JtZWQgbW9kZSBpbiB0cmVlIGVudHJ5IgogbXNnc3RyICJtb2RlIGludmFsaWRlIGRhbnMgbCdlbnRyw6llIGQnYXJicmUiCiAKLSM6IHRyZWUtd2Fsay5jOjQzCisjOiB0cmVlLXdhbGsuYzo0MgogbXNnaWQgImVtcHR5IGZpbGVuYW1lIGluIHRyZWUgZW50cnkiCiBtc2dzdHIgIm5vbSBkZSBmaWNoaWVyIHZpZGUgZGFucyB1bmUgZW50csOpZSBkZSBsJ2FyYnJlIgogCi0jOiB0cmVlLXdhbGsuYzoxMTUKKyM6IHRyZWUtd2Fsay5jOjExNwogbXNnaWQgInRvby1zaG9ydCB0cmVlIGZpbGUiCiBtc2dzdHIgImZpY2hpZXIgYXJicmUgdHJvcCBjb3VydCIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTEyCisjOiB1bnBhY2stdHJlZXMuYzoxMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IGNoZWNrb3V0OlxuIgpAQCAtNjQ4OSw3ICs4Njg0LDcgQEAKICIlJXNWZXVpbGxleiB2YWxpZGVyIG91IHJlbWlzZXIgdm9zIG1vZGlmaWNhdGlvbnMgYXZhbnQgZGUgYmFzY3VsZXIgZGUgIgogImJyYW5jaGUuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTQKKyM6IHVucGFjay10cmVlcy5jOjExMgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCkBAIC02NDk5LDcgKzg2OTQsNyBAQAogImwnZXh0cmFjdGlvbsKgOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTE3CisjOiB1bnBhY2stdHJlZXMuYzoxMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtNjUwOSw3ICs4NzA0LDcgQEAKICJmdXNpb27CoDpcbiIKICIlJXNWZXVpbGxleiB2YWxpZGVyIG91IHJlbWlzZXIgdm9zIG1vZGlmaWNhdGlvbnMgYXZhbnQgbGEgZnVzaW9uLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTE5CisjOiB1bnBhY2stdHJlZXMuYzoxMTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtNjUxOSw3ICs4NzE0LDcgQEAKICJmdXNpb27CoDpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjEyMgorIzogdW5wYWNrLXRyZWVzLmM6MTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKQEAgLTY1MjgsNyArODcyMyw3IEBACiAiVm9zIG1vZGlmaWNhdGlvbnMgbG9jYWxlcyBhdXggZmljaGllcnMgc3VpdmFudHMgc2VyYWllbnQgw6ljcmFzw6llcyBwYXIgJXPCoDpcbiIKICIlJXNWZXVpbGxleiB2YWxpZGVyIG91IHJlbWlzZXIgdm9zIG1vZGlmaWNhdGlvbnMgYXZhbnQgJXMuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMjQKKyM6IHVucGFjay10cmVlcy5jOjEyMgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCkBAIC02NTM3LDcgKzg3MzIsNyBAQAogIlZvcyBtb2RpZmljYXRpb25zIGxvY2FsZXMgYXV4IGZpY2hpZXJzIHN1aXZhbnRzIHNlcmFpZW50IMOpY3Jhc8OpZXMgcGFyICVzwqA6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMjkKKyM6IHVucGFjay10cmVlcy5jOjEyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVXBkYXRpbmcgdGhlIGZvbGxvd2luZyBkaXJlY3RvcmllcyB3b3VsZCBsb3NlIHVudHJhY2tlZCBmaWxlcyBpbiB0aGVtOlxuIgpAQCAtNjU0Nyw3ICs4NzQyLDcgQEAKICJjb250ZW51c8KgOlxuIgogIiVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMzMKKyM6IHVucGFjay10cmVlcy5jOjEzMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgY2hlY2tvdXQ6XG4iCkBAIC02NTU3LDcgKzg3NTIsNyBAQAogImwnZXh0cmFjdGlvbsKgOlxuIgogIiUlc1ZldWlsbGV6IHJlbm9tbWVyIG91IGVmZmFjZXIgY2VzIGZpY2hpZXJzIGF2YW50IGRlIGJhc2N1bGVyIGRlIGJyYW5jaGUuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMzUKKyM6IHVucGFjay10cmVlcy5jOjEzMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgY2hlY2tvdXQ6XG4iCkBAIC02NTY2LDcgKzg3NjEsNyBAQAogIkxlcyBmaWNoaWVycyBzdWl2YW50cyBub24gc3VpdmlzIHNlcmFpZW50IGVmZmFjw6lzIHBhciBsJ2V4dHJhY3Rpb27CoDpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjEzOAorIzogdW5wYWNrLXRyZWVzLmM6MTM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBtZXJnZTpcbiIKQEAgLTY1NzYsNyArODc3MSw3IEBACiAibGEgZnVzaW9uwqA6XG4iCiAiJSVzVmV1aWxsZXogcmVub21tZXIgb3UgZWZmYWNlciBjZXMgZmljaGllcnMgYXZhbnQgbGEgZnVzaW9uLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTQwCisjOiB1bnBhY2stdHJlZXMuYzoxMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgpAQCAtNjU4NSw3ICs4NzgwLDcgQEAKICJMZXMgZmljaGllcnMgc3VpdmFudHMgbm9uIHN1aXZpcyBzZXJhaWVudCBlZmZhY8OpcyBwYXIgbGEgZnVzaW9uwqA6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNDMKKyM6IHVucGFjay10cmVlcy5jOjE0MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgJXM6XG4iCkBAIC02NTk1LDcgKzg3OTAsNyBAQAogIiVzwqA6XG4iCiAiJSVzVmV1aWxsZXogcmVub21tZXIgb3UgZWZmYWNlciBjZXMgZmljaGllcnMgYXZhbnQgJXMuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNDUKKyM6IHVucGFjay10cmVlcy5jOjE0MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgJXM6XG4iCkBAIC02NjA0LDcgKzg3OTksNyBAQAogIkxlcyBmaWNoaWVycyBzdWl2YW50cyBub24gc3VpdmlzIHNlcmFpZW50IGVmZmFjw6lzIHBhciAlc8KgOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTUxCisjOiB1bnBhY2stdHJlZXMuYzoxNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCkBAIC02NjE1LDcgKzg4MTAsNyBAQAogImwnZXh0cmFjdGlvbsKgOlxuIgogIiUlc1ZldWlsbGV6IHJlbm9tbWVyIG91IGVmZmFjZXIgY2VzIGZpY2hpZXJzIGF2YW50IGRlIGJhc2N1bGVyIGRlIGJyYW5jaGUuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNTMKKyM6IHVucGFjay10cmVlcy5jOjE1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICIKQEAgLTY2MjUsNyArODgyMCw3IEBACiAiTGVzIGZpY2hpZXJzIHN1aXZhbnRzIG5vbiBzdWl2aXMgc2VyYWllbnQgw6ljcmFzw6lzIHBhciBsJ2V4dHJhY3Rpb27CoDpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE1NgorIzogdW5wYWNrLXRyZWVzLmM6MTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCkBAIC02NjM1LDcgKzg4MzAsNyBAQAogImxhIGZ1c2lvbsKgOlxuIgogIiUlc1ZldWlsbGV6IHJlbm9tbWVyIG91IGVmZmFjZXIgY2VzIGZpY2hpZXJzIGF2YW50IGxhIGZ1c2lvbi4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE1OAorIzogdW5wYWNrLXRyZWVzLmM6MTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCkBAIC02NjQ0LDcgKzg4MzksNyBAQAogIkxlcyBmaWNoaWVycyBzdWl2YW50cyBub24gc3VpdmlzIHNlcmFpZW50IMOpY3Jhc8OpcyBwYXIgbGEgZnVzaW9uwqA6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNjEKKyM6IHVucGFjay10cmVlcy5jOjE1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjY1NCw3ICs4ODQ5LDcgQEAKICIlc8KgOlxuIgogIiUlc1ZldWlsbGV6IHJlbm9tbWVyIG91IGVmZmFjZXIgY2VzIGZpY2hpZXJzIGF2YW50ICVzLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTYzCisjOiB1bnBhY2stdHJlZXMuYzoxNjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKQEAgLTY2NjMsMTIgKzg4NTgsMTIgQEAKICJMZXMgZmljaGllcnMgc3VpdmFudHMgbm9uIHN1aXZpcyBzZXJhaWVudCDDqWNyYXPDqXMgcGFyICVzwqA6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNzEKKyM6IHVucGFjay10cmVlcy5jOjE2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJFbnRyeSAnJXMnIG92ZXJsYXBzIHdpdGggJyVzJy4gIENhbm5vdCBiaW5kLiIKIG1zZ3N0ciAiTCdlbnRyw6llICclcycgc3VyY2hhcmdlIGF2ZWMgJyVzJy4gQWZmZWN0YXRpb24gaW1wb3NzaWJsZS4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE3NAorIzogdW5wYWNrLXRyZWVzLmM6MTcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgdXBkYXRlIHNwYXJzZSBjaGVja291dDogdGhlIGZvbGxvd2luZyBlbnRyaWVzIGFyZSBub3QgdXAgdG8gZGF0ZTpcbiIKQEAgLTY2NzgsNyArODg3Myw3IEBACiAicGFzIMOgIGpvdXLCoDpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTc2CisjOiB1bnBhY2stdHJlZXMuYzoxNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IHNwYXJzZSBjaGVja291dCAiCkBAIC02Njg5LDcgKzg4ODQsNyBAQAogImpvdXIgcGFyIGwnZXh0cmFjdGlvbiBjcmV1c2XCoDpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTc4CisjOiB1bnBhY2stdHJlZXMuYzoxNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgc3BhcnNlIGNoZWNrb3V0ICIKQEAgLTY3MDAsNyArODg5NSw3IEBACiAiw6Agam91ciBwYXIgZXh0cmFjdGlvbiBjcmV1c2XCoDpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTgwCisjOiB1bnBhY2stdHJlZXMuYzoxNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNhbm5vdCB1cGRhdGUgc3VibW9kdWxlOlxuIgpAQCAtNjcwOSwxNiArODkwNCwxNiBAQAogIk1pc2Ugw6Agam91ciBpbXBvc3NpYmxlIHBvdXIgbGUgc291cy1tb2R1bGXCoDpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MjU0CisjOiB1bnBhY2stdHJlZXMuYzoyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmdcbiIKIG1zZ3N0ciAiQWJhbmRvblxuIgogCi0jOiB1bnBhY2stdHJlZXMuYzozMzYKLW1zZ2lkICJDaGVja2luZyBvdXQgZmlsZXMiCi1tc2dzdHIgIkV4dHJhY3Rpb24gZGVzIGZpY2hpZXJzIgorIzogdW5wYWNrLXRyZWVzLmM6MzE3Cittc2dpZCAiVXBkYXRpbmcgZmlsZXMiCittc2dzdHIgIk1pc2Ugw6Agam91ciBkZXMgZmljaGllcnMiCiAKLSM6IHVucGFjay10cmVlcy5jOjM2OAorIzogdW5wYWNrLXRyZWVzLmM6MzQ5CiBtc2dpZCAiIgogInRoZSBmb2xsb3dpbmcgcGF0aHMgaGF2ZSBjb2xsaWRlZCAoZS5nLiBjYXNlLXNlbnNpdGl2ZSBwYXRoc1xuIgogIm9uIGEgY2FzZS1pbnNlbnNpdGl2ZSBmaWxlc3lzdGVtKSBhbmQgb25seSBvbmUgZnJvbSB0aGUgc2FtZVxuIgpAQCAtNjcyOCw2ICs4OTIzLDEwIEBACiAic2Vuc2libGVzIMOgIGxhIGNhc3NlIGRhbnMgdW5lIHN5c3TDqG1lIGRlIGZpY2hpZXIgaW5zZW5zaWJsZSkgZXQgdW5cbiIKICJzZXVsIGR1IGdyb3VwZSBlbiBjb2xsaXNpb24gZXN0IGRhbnMgbCdhcmJyZSBkZSB0cmF2YWlswqA6XG4iCiAKKyM6IHVucGFjay10cmVlcy5jOjE0NDUKK21zZ2lkICJVcGRhdGluZyBpbmRleCBmbGFncyIKK21zZ3N0ciAiTWlzZSDDoCBqb3VyIGRlcyBkcmFwZWF1eCBkZSBsJ2luZGV4IgorCiAjOiB1cmxtYXRjaC5jOjE2MwogbXNnaWQgImludmFsaWQgVVJMIHNjaGVtZSBuYW1lIG9yIG1pc3NpbmcgJzovLycgc3VmZml4IgogbXNnc3RyICJub20gZGUgc2Now6ltYSBkJ1VSTCBpbnZhbGlkZSBvdSBzdWZmaXhlICc6Ly8nIG1hbnF1YW50IgpAQCAtNjc1NywyMDUgKzg5NTYsMjE1IEBACiBtc2dpZCAiaW52YWxpZCAnLi4nIHBhdGggc2VnbWVudCIKIG1zZ3N0ciAic2VnbWVudCBkZSBjaGVtaW4gJy4uJyBpbnZhbGlkZSIKIAotIzogd29ya3RyZWUuYzoyNDkgYnVpbHRpbi9hbS5jOjIxMDAKKyM6IHdhbGtlci5jOjE3MAorbXNnaWQgIkZldGNoaW5nIG9iamVjdHMiCittc2dzdHIgIlLDqWN1cMOpcmF0aW9uIGRlcyBvYmpldHMiCisKKyM6IHdvcmt0cmVlLmM6MjU5IGJ1aWx0aW4vYW0uYzoyMDk5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWFkICclcyciCiBtc2dzdHIgIsOpY2hlYyBkZSBsYSBsZWN0dXJlIGRlICclcyciCiAKLSM6IHdvcmt0cmVlLmM6Mjk1CisjOiB3b3JrdHJlZS5jOjMwNQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGF0IG1haW4gd29ya2luZyB0cmVlIGlzIG5vdCB0aGUgcmVwb3NpdG9yeSBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKICInJXMnIGRhbnMgbCdhcmJyZSBkZSB0cmF2YWlsIHByaW5jaXBhbCBuJ2VzdCBwYXMgbGUgcsOpcGVydG9pcmUgZGUgZMOpcMO0dCIKIAotIzogd29ya3RyZWUuYzozMDYKKyM6IHdvcmt0cmVlLmM6MzE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZmlsZSBkb2VzIG5vdCBjb250YWluIGFic29sdXRlIHBhdGggdG8gdGhlIHdvcmtpbmcgdHJlZSBsb2NhdGlvbiIKIG1zZ3N0ciAiIgogImxlIGZpY2hpZXIgJyVzJyBuZSBjb250aWVudCBwYXMgZGUgY2hlbWluIGFic29sdSDDoCBsJ2VtcGxhY2VtZW50IGRlIGwnYXJicmUgIgogImRlIHRyYXZhaWwiCiAKLSM6IHdvcmt0cmVlLmM6MzE4CisjOiB3b3JrdHJlZS5jOjMyOAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICInJXMnIG4nZXhpc3RlIHBhcyIKIAotIzogd29ya3RyZWUuYzozMjQKKyM6IHdvcmt0cmVlLmM6MzM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgLmdpdCBmaWxlLCBlcnJvciBjb2RlICVkIgogbXNnc3RyICInJXMnIG4nZXN0IHBhcyB1biBmaWNoaWVyIC5naXQsIGNvZGUgZCdlcnJldXIgJWQiCiAKLSM6IHdvcmt0cmVlLmM6MzMyCisjOiB3b3JrdHJlZS5jOjM0MgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGRvZXMgbm90IHBvaW50IGJhY2sgdG8gJyVzJyIKIG1zZ3N0ciAiJyVzJyBuZSBwb2ludGUgcGFzIGVuIHJldG91ciBzdXIgJyVzJyIKIAotIzogd3JhcHBlci5jOjIyMyB3cmFwcGVyLmM6MzkzCisjOiB3cmFwcGVyLmM6MTg2IHdyYXBwZXIuYzozNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3IgcmVhZGluZyBhbmQgd3JpdGluZyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciAnJXMnIGVuIGxlY3R1cmUvw6ljcml0dXJlIgogCi0jOiB3cmFwcGVyLmM6NDI0IHdyYXBwZXIuYzo2MjQKKyM6IHdyYXBwZXIuYzozODcgd3JhcHBlci5jOjU4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYWNjZXNzICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZCdhY2PDqWRlciDDoCAnJXMnIgogCi0jOiB3cmFwcGVyLmM6NjMyCisjOiB3cmFwcGVyLmM6NTk2CiBtc2dpZCAidW5hYmxlIHRvIGdldCBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICJpbXBvc3NpYmxlIGQnYWNjw6lkZXIgYXUgcsOpcGVydG9pcmUgZGUgdHJhdmFpbCBjb3VyYW50IgogCi0jOiB3dC1zdGF0dXMuYzoxNTQKKyM6IHd0LXN0YXR1cy5jOjE1OAogbXNnaWQgIlVubWVyZ2VkIHBhdGhzOiIKIG1zZ3N0ciAiQ2hlbWlucyBub24gZnVzaW9ubsOpcyA6IgogCi0jOiB3dC1zdGF0dXMuYzoxODEgd3Qtc3RhdHVzLmM6MjA4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiAgKHVzZSBcImdpdCByZXNldCAlcyA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKLW1zZ3N0ciAiICAodXRpbGlzZXogXCJnaXQgcmVzZXQgJXMgPGZpY2hpZXI+Li4uXCIgcG91ciBkw6lzaW5kZXhlcikiCisjOiB3dC1zdGF0dXMuYzoxODcgd3Qtc3RhdHVzLmM6MjE5Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiAgKHV0aWxpc2V6IFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpY2hpZXI+Li4uXCIgcG91ciBkw6lzaW5kZXhlcikiCiAKLSM6IHd0LXN0YXR1cy5jOjE4MyB3dC1zdGF0dXMuYzoyMTAKKyM6IHd0LXN0YXR1cy5jOjE5MCB3dC1zdGF0dXMuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zb3VyY2U9JXMgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiIKKyIgICh1dGlsaXNleiBcImdpdCByZXN0b3JlIC0tc291cmNlPSVzIC0tc3RhZ2VkIDxmaWNoaWVyPi4uLlwiIHBvdXIgIgorImTDqXNpbmRleGVyKSIKKworIzogd3Qtc3RhdHVzLmM6MTkzIHd0LXN0YXR1cy5jOjIyNQogbXNnaWQgIiAgKHVzZSBcImdpdCBybSAtLWNhY2hlZCA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKIG1zZ3N0ciAiICAodXRpbGlzZXogXCJnaXQgcm0gLS1jYWNoZWQgPGZpY2hpZXI+Li4uXCIgcG91ciBkw6lzaW5kZXhlcikiCiAKLSM6IHd0LXN0YXR1cy5jOjE4NworIzogd3Qtc3RhdHVzLmM6MTk3CiBtc2dpZCAiICAodXNlIFwiZ2l0IGFkZCA8ZmlsZT4uLi5cIiB0byBtYXJrIHJlc29sdXRpb24pIgogbXNnc3RyICIgICh1dGlsaXNleiBcImdpdCBhZGQgPGZpY2hpZXI+Li4uXCIgcG91ciBtYXJxdWVyIGNvbW1lIHLDqXNvbHUpIgogCi0jOiB3dC1zdGF0dXMuYzoxODkgd3Qtc3RhdHVzLmM6MTkzCisjOiB3dC1zdGF0dXMuYzoxOTkgd3Qtc3RhdHVzLmM6MjAzCiBtc2dpZCAiICAodXNlIFwiZ2l0IGFkZC9ybSA8ZmlsZT4uLi5cIiBhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24pIgogbXNnc3RyICIiCiAiICAodXRpbGlzZXogXCJnaXQgYWRkL3JtIDxmaWNoaWVyPi4uLlwiIHNpIG7DqWNlc3NhaXJlIHBvdXIgbWFycXVlciBjb21tZSAiCiAicsOpc29sdSkiCiAKLSM6IHd0LXN0YXR1cy5jOjE5MQorIzogd3Qtc3RhdHVzLmM6MjAxCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJtIDxmaWxlPi4uLlwiIHRvIG1hcmsgcmVzb2x1dGlvbikiCiBtc2dzdHIgIiAgKHV0aWxpc2V6IFwiZ2l0IHJtIDxmaWNoaWVyPi4uLlwiIHBvdXIgbWFycXVlciBjb21tZSByw6lzb2x1KSIKIAotIzogd3Qtc3RhdHVzLmM6MjAyIHd0LXN0YXR1cy5jOjEwNDIKKyM6IHd0LXN0YXR1cy5jOjIxMSB3dC1zdGF0dXMuYzoxMDc0CiBtc2dpZCAiQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6IgogbXNnc3RyICJNb2RpZmljYXRpb25zIHF1aSBzZXJvbnQgdmFsaWTDqWVzIDoiCiAKLSM6IHd0LXN0YXR1cy5jOjIyMCB3dC1zdGF0dXMuYzoxMDUxCisjOiB3dC1zdGF0dXMuYzoyMzQgd3Qtc3RhdHVzLmM6MTA4MwogbXNnaWQgIkNoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OiIKIG1zZ3N0ciAiTW9kaWZpY2F0aW9ucyBxdWkgbmUgc2Vyb250IHBhcyB2YWxpZMOpZXMgOiIKIAotIzogd3Qtc3RhdHVzLmM6MjI0CisjOiB3dC1zdGF0dXMuYzoyMzgKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiIgogIiAgKHV0aWxpc2V6IFwiZ2l0IGFkZCA8ZmljaGllcj4uLi5cIiBwb3VyIG1ldHRyZSDDoCBqb3VyIGNlIHF1aSBzZXJhIHZhbGlkw6kpIgogCi0jOiB3dC1zdGF0dXMuYzoyMjYKKyM6IHd0LXN0YXR1cy5jOjI0MAogbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQvcm0gPGZpbGU+Li4uXCIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIgogbXNnc3RyICIiCiAiICAodXRpbGlzZXogXCJnaXQgYWRkL3JtIDxmaWNoaWVyPi4uLlwiIHBvdXIgbWV0dHJlIMOgIGpvdXIgY2UgcXVpIHNlcmEgIgogInZhbGlkw6kpIgogCi0jOiB3dC1zdGF0dXMuYzoyMjcKKyM6IHd0LXN0YXR1cy5jOjI0MQogbXNnaWQgIiIKLSIgICh1c2UgXCJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uXCIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KSIKKyIgICh1c2UgXCJnaXQgcmVzdG9yZSA8ZmlsZT4uLi5cIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpIgogbXNnc3RyICIiCi0iICAodXRpbGlzZXogXCJnaXQgY2hlY2tvdXQgLS0gPGZpY2hpZXI+Li4uXCIgcG91ciBhbm51bGVyIGxlcyBtb2RpZmljYXRpb25zICIKLSJkYW5zIGxhIGNvcGllIGRlIHRyYXZhaWwpIgorIiAgKHV0aWxpc2V6IFwiZ2l0IHJlc3RvcmUgPGZpY2hpZXI+Li4uXCIgcG91ciBhbm51bGVyIGxlcyBtb2RpZmljYXRpb25zIGRhbnMgIgorImxlIHLDqXBlcnRvaXJlIGRlIHRyYXZhaWwpIgogCi0jOiB3dC1zdGF0dXMuYzoyMjkKKyM6IHd0LXN0YXR1cy5jOjI0MwogbXNnaWQgIiAgKGNvbW1pdCBvciBkaXNjYXJkIHRoZSB1bnRyYWNrZWQgb3IgbW9kaWZpZWQgY29udGVudCBpbiBzdWJtb2R1bGVzKSIKIG1zZ3N0ciAiIgogIiAgKHZhbGlkZXIgb3UgYW5udWxlciBsZSBjb250ZW51IG5vbiBzdWl2aSBvdSBtb2RpZmnDqSBkYW5zIGxlcyBzb3VzLW1vZHVsZXMpIgogCi0jOiB3dC1zdGF0dXMuYzoyNDEKKyM6IHd0LXN0YXR1cy5jOjI1NAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICh1c2UgXCJnaXQgJXMgPGZpbGU+Li4uXCIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiIgogIiAgKHV0aWxpc2V6IFwiZ2l0ICVzIDxmaWNoaWVyPi4uLlwiIHBvdXIgaW5jbHVyZSBkYW5zIGNlIHF1aSBzZXJhIHZhbGlkw6kpIgogCi0jOiB3dC1zdGF0dXMuYzoyNTYKKyM6IHd0LXN0YXR1cy5jOjI2OAogbXNnaWQgImJvdGggZGVsZXRlZDoiCiBtc2dzdHIgInN1cHByaW3DqSBkZXMgZGV1eCBjw7R0w6lzIDoiCiAKLSM6IHd0LXN0YXR1cy5jOjI1OAorIzogd3Qtc3RhdHVzLmM6MjcwCiBtc2dpZCAiYWRkZWQgYnkgdXM6IgogbXNnc3RyICJham91dMOpIHBhciBub3VzIDoiCiAKLSM6IHd0LXN0YXR1cy5jOjI2MAorIzogd3Qtc3RhdHVzLmM6MjcyCiBtc2dpZCAiZGVsZXRlZCBieSB0aGVtOiIKIG1zZ3N0ciAic3VwcHJpbcOpIHBhciBldXggOiIKIAotIzogd3Qtc3RhdHVzLmM6MjYyCisjOiB3dC1zdGF0dXMuYzoyNzQKIG1zZ2lkICJhZGRlZCBieSB0aGVtOiIKIG1zZ3N0ciAiYWpvdXTDqSBwYXIgZXV4IDoiCiAKLSM6IHd0LXN0YXR1cy5jOjI2NAorIzogd3Qtc3RhdHVzLmM6Mjc2CiBtc2dpZCAiZGVsZXRlZCBieSB1czoiCiBtc2dzdHIgInN1cHByaW3DqSBwYXIgbm91cyA6IgogCi0jOiB3dC1zdGF0dXMuYzoyNjYKKyM6IHd0LXN0YXR1cy5jOjI3OAogbXNnaWQgImJvdGggYWRkZWQ6IgogbXNnc3RyICJham91dMOpIGRlIGRldXggY8O0dMOpcyA6IgogCi0jOiB3dC1zdGF0dXMuYzoyNjgKKyM6IHd0LXN0YXR1cy5jOjI4MAogbXNnaWQgImJvdGggbW9kaWZpZWQ6IgogbXNnc3RyICJtb2RpZmnDqSBkZXMgZGV1eCBjw7R0w6lzIDoiCiAKLSM6IHd0LXN0YXR1cy5jOjI3OAorIzogd3Qtc3RhdHVzLmM6MjkwCiBtc2dpZCAibmV3IGZpbGU6IgogbXNnc3RyICJub3V2ZWF1IGZpY2hpZXLCoDoiCiAKLSM6IHd0LXN0YXR1cy5jOjI4MAorIzogd3Qtc3RhdHVzLmM6MjkyCiBtc2dpZCAiY29waWVkOiIKIG1zZ3N0ciAiY29wacOpwqA6IgogCi0jOiB3dC1zdGF0dXMuYzoyODIKKyM6IHd0LXN0YXR1cy5jOjI5NAogbXNnaWQgImRlbGV0ZWQ6IgogbXNnc3RyICJzdXBwcmltw6nCoDoiCiAKLSM6IHd0LXN0YXR1cy5jOjI4NAorIzogd3Qtc3RhdHVzLmM6Mjk2CiBtc2dpZCAibW9kaWZpZWQ6IgogbXNnc3RyICJtb2RpZmnDqcKgOiIKIAotIzogd3Qtc3RhdHVzLmM6Mjg2CisjOiB3dC1zdGF0dXMuYzoyOTgKIG1zZ2lkICJyZW5hbWVkOiIKIG1zZ3N0ciAicmVub21tw6nCoDoiCiAKLSM6IHd0LXN0YXR1cy5jOjI4OAorIzogd3Qtc3RhdHVzLmM6MzAwCiBtc2dpZCAidHlwZWNoYW5nZToiCiBtc2dzdHIgIm1vZGlmLiB0eXBlwqA6IgogCi0jOiB3dC1zdGF0dXMuYzoyOTAKKyM6IHd0LXN0YXR1cy5jOjMwMgogbXNnaWQgInVua25vd246IgogbXNnc3RyICJpbmNvbm51wqA6IgogCi0jOiB3dC1zdGF0dXMuYzoyOTIKKyM6IHd0LXN0YXR1cy5jOjMwNAogbXNnaWQgInVubWVyZ2VkOiIKIG1zZ3N0ciAibm9uIGZ1c2lvbm7DqcKgOiIKIAotIzogd3Qtc3RhdHVzLmM6MzcyCisjOiB3dC1zdGF0dXMuYzozODQKIG1zZ2lkICJuZXcgY29tbWl0cywgIgogbXNnc3RyICJub3V2ZWF1eCBjb21taXRzLCAiCiAKLSM6IHd0LXN0YXR1cy5jOjM3NAorIzogd3Qtc3RhdHVzLmM6Mzg2CiBtc2dpZCAibW9kaWZpZWQgY29udGVudCwgIgogbXNnc3RyICJjb250ZW51IG1vZGlmacOpLCAiCiAKLSM6IHd0LXN0YXR1cy5jOjM3NgorIzogd3Qtc3RhdHVzLmM6Mzg4CiBtc2dpZCAidW50cmFja2VkIGNvbnRlbnQsICIKIG1zZ3N0ciAiY29udGVudSBub24gc3VpdmksICIKIAotIzogd3Qtc3RhdHVzLmM6ODgwCisjOiB3dC1zdGF0dXMuYzo5MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBzdGFzaCBjdXJyZW50bHkgaGFzICVkIGVudHJ5IgogbXNnaWRfcGx1cmFsICJZb3VyIHN0YXNoIGN1cnJlbnRseSBoYXMgJWQgZW50cmllcyIKIG1zZ3N0clswXSAiVm90cmUgcmVtaXNhZ2UgY29udGllbnQgYWN0dWVsbGVtZW50ICVkIGVudHLDqWUiCiBtc2dzdHJbMV0gIlZvdHJlIHJlbWlzYWdlIGNvbnRpZW50IGFjdHVlbGxlbWVudCAlZCBlbnRyw6llcyIKIAotIzogd3Qtc3RhdHVzLmM6OTEyCisjOiB3dC1zdGF0dXMuYzo5MzgKIG1zZ2lkICJTdWJtb2R1bGVzIGNoYW5nZWQgYnV0IG5vdCB1cGRhdGVkOiIKIG1zZ3N0ciAiU291cy1tb2R1bGVzIG1vZGlmacOpcyBtYWlzIG5vbiBtaXMgw6Agam91ciA6IgogCi0jOiB3dC1zdGF0dXMuYzo5MTQKKyM6IHd0LXN0YXR1cy5jOjk0MAogbXNnaWQgIlN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCiBtc2dzdHIgIkNoYW5nZW1lbnRzIGR1IHNvdXMtbW9kdWxlIMOgIHZhbGlkZXIgOiIKIAotIzogd3Qtc3RhdHVzLmM6OTk2CisjOiB3dC1zdGF0dXMuYzoxMDIyCiBtc2dpZCAiIgogIkRvIG5vdCBtb2RpZnkgb3IgcmVtb3ZlIHRoZSBsaW5lIGFib3ZlLlxuIgogIkV2ZXJ5dGhpbmcgYmVsb3cgaXQgd2lsbCBiZSBpZ25vcmVkLiIKQEAgLTY5NjMsMTA3ICs5MTcyLDExOSBAQAogIk5lIHRvdWNoZXogcGFzIMOgIGxhIGxpZ25lIGNpLWRlc3N1cy5cbiIKICJUb3V0IGNlIHF1aSBzdWl0IHNlcmEgw6lsaW1pbsOpLiIKIAotIzogd3Qtc3RhdHVzLmM6MTA5NworIzogd3Qtc3RhdHVzLmM6MTExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gY29tcHV0ZSB0aGUgYnJhbmNoIGFoZWFkL2JlaGluZCB2YWx1ZXMuXG4iCisiWW91IGNhbiB1c2UgJy0tbm8tYWhlYWQtYmVoaW5kJyB0byBhdm9pZCB0aGlzLlxuIgorbXNnc3RyICIiCisiXG4iCisiJS4yZiBzZWNvbmRlcyBvbnQgw6l0w6kgbsOpY2Vzc2FpcmVzIHBvdXIgY2FsY3VsZXIgbGVzIHZhbGV1cnMgZCdhdmFuY2UvcmV0YXJkICIKKyJkZSBsYSBicmFuY2hlLlxuIgorIlZvdXMgcG91dmV6IHV0aWxpc2VyICctLW5vLWFoZWFkLWJlaGluZCcgcG91ciDDqXZpdGVyIGNlY2kuXG4iCisKKyM6IHd0LXN0YXR1cy5jOjExNDQKIG1zZ2lkICJZb3UgaGF2ZSB1bm1lcmdlZCBwYXRocy4iCiBtc2dzdHIgIlZvdXMgYXZleiBkZXMgY2hlbWlucyBub24gZnVzaW9ubsOpcy4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMDAKKyM6IHd0LXN0YXR1cy5jOjExNDcKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgY29tbWl0XCIpIgogbXNnc3RyICIgIChyw6lnbGV6IGxlcyBjb25mbGl0cyBwdWlzIGxhbmNleiBcImdpdCBjb21taXRcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjExMDIKKyM6IHd0LXN0YXR1cy5jOjExNDkKIG1zZ2lkICIgICh1c2UgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIHRvIGFib3J0IHRoZSBtZXJnZSkiCiBtc2dzdHIgIiAgKHV0aWxpc2V6IFwiZ2l0IG1lcmdlIC0tYWJvcnRcIiBwb3VyIGFubnVsZXIgbGEgZnVzaW9uKSIKIAotIzogd3Qtc3RhdHVzLmM6MTEwNgorIzogd3Qtc3RhdHVzLmM6MTE1MwogbXNnaWQgIkFsbCBjb25mbGljdHMgZml4ZWQgYnV0IHlvdSBhcmUgc3RpbGwgbWVyZ2luZy4iCiBtc2dzdHIgIlRvdXMgbGVzIGNvbmZsaXRzIHNvbnQgcsOpZ2zDqXMgbWFpcyBsYSBmdXNpb24gbidlc3QgcGFzIHRlcm1pbsOpZS4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMDkKKyM6IHd0LXN0YXR1cy5jOjExNTYKIG1zZ2lkICIgICh1c2UgXCJnaXQgY29tbWl0XCIgdG8gY29uY2x1ZGUgbWVyZ2UpIgogbXNnc3RyICIgICh1dGlsaXNleiBcImdpdCBjb21taXRcIiBwb3VyIHRlcm1pbmVyIGxhIGZ1c2lvbikiCiAKLSM6IHd0LXN0YXR1cy5jOjExMTgKKyM6IHd0LXN0YXR1cy5jOjExNjUKIG1zZ2lkICJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYW4gYW0gc2Vzc2lvbi4iCiBtc2dzdHIgIlZvdXMgw6p0ZXMgYXUgbWlsaWV1IGQndW5lIHNlc3Npb24gYW0uIgogCi0jOiB3dC1zdGF0dXMuYzoxMTIxCisjOiB3dC1zdGF0dXMuYzoxMTY4CiBtc2dpZCAiVGhlIGN1cnJlbnQgcGF0Y2ggaXMgZW1wdHkuIgogbXNnc3RyICJMZSBwYXRjaCBhY3R1ZWwgZXN0IHZpZGUuIgogCi0jOiB3dC1zdGF0dXMuYzoxMTI1CisjOiB3dC1zdGF0dXMuYzoxMTcyCiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBydW4gXCJnaXQgYW0gLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiICAocsOpZ2xleiBsZXMgY29uZmxpdHMgcHVpcyBsYW5jZXogXCJnaXQgYW0gLS1jb250aW51ZVwiKSIKIAotIzogd3Qtc3RhdHVzLmM6MTEyNworIzogd3Qtc3RhdHVzLmM6MTE3NAogbXNnaWQgIiAgKHVzZSBcImdpdCBhbSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgogbXNnc3RyICIgICh1dGlsaXNleiBcImdpdCBhbSAtLXNraXBcIiBwb3VyIHNhdXRlciBjZSBwYXRjaCkiCiAKLSM6IHd0LXN0YXR1cy5jOjExMjkKKyM6IHd0LXN0YXR1cy5jOjExNzYKIG1zZ2lkICIgICh1c2UgXCJnaXQgYW0gLS1hYm9ydFwiIHRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCkiCiBtc2dzdHIgIiAgKHV0aWxpc2V6IFwiZ2l0IGFtIC0tYWJvcnRcIiBwb3VyIHJlc3RhdXJlciBsYSBicmFuY2hlIGQnb3JpZ2luZSkiCiAKLSM6IHd0LXN0YXR1cy5jOjEyNjAKKyM6IHd0LXN0YXR1cy5jOjEzMDkKIG1zZ2lkICJnaXQtcmViYXNlLXRvZG8gaXMgbWlzc2luZy4iCiBtc2dzdHIgImdpdC1yZWJhc2UtdG9kbyBlc3QgbWFucXVhbnQuIgogCi0jOiB3dC1zdGF0dXMuYzoxMjYyCisjOiB3dC1zdGF0dXMuYzoxMzExCiBtc2dpZCAiTm8gY29tbWFuZHMgZG9uZS4iCiBtc2dzdHIgIkF1Y3VuZSBjb21tYW5kZSByw6lhbGlzw6llLiIKIAotIzogd3Qtc3RhdHVzLmM6MTI2NQorIzogd3Qtc3RhdHVzLmM6MTMxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJMYXN0IGNvbW1hbmQgZG9uZSAoJWQgY29tbWFuZCBkb25lKToiCiBtc2dpZF9wbHVyYWwgIkxhc3QgY29tbWFuZHMgZG9uZSAoJWQgY29tbWFuZHMgZG9uZSk6IgogbXNnc3RyWzBdICJEZXJuacOocmUgY29tbWFuZGUgZWZmZWN0dcOpZSAoJWQgY29tbWFuZGUgZWZmZWN0dcOpZSnCoDoiCiBtc2dzdHJbMV0gIkRlcm5pw6hyZXMgY29tbWFuZGVzIGVmZmVjdHXDqWVzICglZCBjb21tYW5kZXMgZWZmZWN0dcOpZXMpwqA6IgogCi0jOiB3dC1zdGF0dXMuYzoxMjc2CisjOiB3dC1zdGF0dXMuYzoxMzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgKHNlZSBtb3JlIGluIGZpbGUgJXMpIgogbXNnc3RyICIgICh2b2lyIHBsdXMgZGFucyBsZSBmaWNoaWVyICVzKSIKIAotIzogd3Qtc3RhdHVzLmM6MTI4MQorIzogd3Qtc3RhdHVzLmM6MTMzMAogbXNnaWQgIk5vIGNvbW1hbmRzIHJlbWFpbmluZy4iCiBtc2dzdHIgIkF1Y3VuZSBjb21tYW5kZSByZXN0YW50ZS4iCiAKLSM6IHd0LXN0YXR1cy5jOjEyODQKKyM6IHd0LXN0YXR1cy5jOjEzMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiTmV4dCBjb21tYW5kIHRvIGRvICglZCByZW1haW5pbmcgY29tbWFuZCk6IgogbXNnaWRfcGx1cmFsICJOZXh0IGNvbW1hbmRzIHRvIGRvICglZCByZW1haW5pbmcgY29tbWFuZHMpOiIKIG1zZ3N0clswXSAiUHJvY2hhaW5lIGNvbW1hbmRlIMOgIGVmZmVjdHVlciAoJWQgY29tbWFuZGUgcmVzdGFudGUpwqA6IgogbXNnc3RyWzFdICJQcm9jaGFpbmVzIGNvbW1hbmRlcyDDoCBlZmZlY3R1ZXIgKCVkIGNvbW1hbmRlcyByZXN0YW50ZXMpwqA6IgogCi0jOiB3dC1zdGF0dXMuYzoxMjkyCisjOiB3dC1zdGF0dXMuYzoxMzQxCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb1wiIHRvIHZpZXcgYW5kIGVkaXQpIgogbXNnc3RyICIgICh1dGlsaXNleiBcImdpdCByZWJhc2UgLS1lZGl0LXRvZG9cIiBwb3VyIHZvaXIgZXQgw6lkaXRlcikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMDQKKyM6IHd0LXN0YXR1cy5jOjEzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmViYXNpbmcgYnJhbmNoICclcycgb24gJyVzJy4iCiBtc2dzdHIgIlZvdXMgw6p0ZXMgZW4gdHJhaW4gZGUgcmViYXNlciBsYSBicmFuY2hlICclcycgc3VyICclcycuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzA5CisjOiB3dC1zdGF0dXMuYzoxMzU4CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmViYXNpbmcuIgogbXNnc3RyICJWb3VzIMOqdGVzIGVuIHRyYWluIGRlIHJlYmFzZXIuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzIyCisjOiB3dC1zdGF0dXMuYzoxMzcxCiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKHLDqWdsZXogbGVzIGNvbmZsaXRzIHB1aXMgbGFuY2V6IFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzI0CisjOiB3dC1zdGF0dXMuYzoxMzczCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgogbXNnc3RyICIgICh1dGlsaXNleiBcImdpdCByZWJhc2UgLS1za2lwXCIgcG91ciBzYXV0ZXIgY2UgcGF0Y2gpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzI2CisjOiB3dC1zdGF0dXMuYzoxMzc1CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWFib3J0XCIgdG8gY2hlY2sgb3V0IHRoZSBvcmlnaW5hbCBicmFuY2gpIgogbXNnc3RyICIgICh1dGlsaXNleiBcImdpdCByZWJhc2UgLS1hYm9ydFwiIHBvdXIgZXh0cmFpcmUgbGEgYnJhbmNoZSBkJ29yaWdpbmUpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzMzCisjOiB3dC1zdGF0dXMuYzoxMzgyCiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgICh0b3VzIGxlcyBjb25mbGl0cyBzb250IHLDqWdsw6lzIDogbGFuY2V6IFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzM3CisjOiB3dC1zdGF0dXMuYzoxMzg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXJlIGN1cnJlbnRseSBzcGxpdHRpbmcgYSBjb21taXQgd2hpbGUgcmViYXNpbmcgYnJhbmNoICclcycgb24gJyVzJy4iCkBAIC03MDcxLDEyOCArOTI5MiwxNDQgQEAKICJWb3VzIMOqdGVzIGFjdHVlbGxlbWVudCBlbiB0cmFpbiBkZSBmcmFjdGlvbm5lciB1biBjb21taXQgcGVuZGFudCB1biByZWJhc2FnZSAiCiAiZGUgbGEgYnJhbmNoZSAnJXMnIHN1ciAnJXMnLiIKIAotIzogd3Qtc3RhdHVzLmM6MTM0MgorIzogd3Qtc3RhdHVzLmM6MTM5MQogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHNwbGl0dGluZyBhIGNvbW1pdCBkdXJpbmcgYSByZWJhc2UuIgogbXNnc3RyICIiCiAiVm91cyDDqnRlcyBhY3R1ZWxsZW1lbnQgZW4gdHJhaW4gZGUgZnJhY3Rpb25uZXIgdW4gY29tbWl0IHBlbmRhbnQgdW4gcmViYXNhZ2UuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzQ1CisjOiB3dC1zdGF0dXMuYzoxMzk0CiBtc2dpZCAiICAoT25jZSB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IGlzIGNsZWFuLCBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiIKICIgIChVbmUgZm9pcyBsYSBjb3BpZSBkZSB0cmF2YWlsIG5ldHRvecOpZSwgbGFuY2V6IFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzQ5CisjOiB3dC1zdGF0dXMuYzoxMzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGVkaXRpbmcgYSBjb21taXQgd2hpbGUgcmViYXNpbmcgYnJhbmNoICclcycgb24gJyVzJy4iCiBtc2dzdHIgIiIKICJWb3VzIMOqdGVzIGFjdHVlbGxlbWVudCBlbiB0cmFpbiBkJ8OpZGl0ZXIgdW4gY29tbWl0IHBlbmRhbnQgdW4gcmViYXNhZ2UgZGUgbGEgIgogImJyYW5jaGUgJyVzJyBzdXIgJyVzJy4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTQKKyM6IHd0LXN0YXR1cy5jOjE0MDMKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBlZGl0aW5nIGEgY29tbWl0IGR1cmluZyBhIHJlYmFzZS4iCiBtc2dzdHIgIiIKICJWb3VzIMOqdGVzIGFjdHVlbGxlbWVudCBlbiB0cmFpbiBkJ8OpZGl0ZXIgdW4gY29tbWl0IHBlbmRhbnQgdW4gcmViYXNhZ2UuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzU3CisjOiB3dC1zdGF0dXMuYzoxNDA2CiBtc2dpZCAiICAodXNlIFwiZ2l0IGNvbW1pdCAtLWFtZW5kXCIgdG8gYW1lbmQgdGhlIGN1cnJlbnQgY29tbWl0KSIKIG1zZ3N0ciAiICAodXRpbGlzZXogXCJnaXQgY29tbWl0IC0tYW1lbmRcIiBwb3VyIGNvcnJpZ2VyIGxlIGNvbW1pdCBhY3R1ZWwpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzU5CisjOiB3dC1zdGF0dXMuYzoxNDA4CiBtc2dpZCAiIgogIiAgKHVzZSBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiIG9uY2UgeW91IGFyZSBzYXRpc2ZpZWQgd2l0aCB5b3VyIGNoYW5nZXMpIgogbXNnc3RyICIiCiAiICAodXRpbGlzZXogXCJnaXQgcmViYXNlIC0tY29udGludWVcIiBxdWFuZCB2b3VzIGF2ZXogZWZmZWN0dcOpIHRvdXRlcyB2b3MgIgogIm1vZGlmaWNhdGlvbnMpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzY4CisjOiB3dC1zdGF0dXMuYzoxNDE5Cittc2dpZCAiQ2hlcnJ5LXBpY2sgY3VycmVudGx5IGluIHByb2dyZXNzLiIKK21zZ3N0ciAiUGljb3JhZ2UgZW4gY291cnMuIgorCisjOiB3dC1zdGF0dXMuYzoxNDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGNoZXJyeS1waWNraW5nIGNvbW1pdCAlcy4iCiBtc2dzdHIgIlZvdXMgw6p0ZXMgYWN0dWVsbGVtZW50IGVuIHRyYWluIGRlIHBpY29yZXIgbGUgY29tbWl0ICVzLiIKIAotIzogd3Qtc3RhdHVzLmM6MTM3MworIzogd3Qtc3RhdHVzLmM6MTQyOQogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgIChyw6lnbGV6IGxlcyBjb25mbGl0cyBwdWlzIGxhbmNleiBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzc2CisjOiB3dC1zdGF0dXMuYzoxNDMyCittc2dpZCAiICAocnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB0byBjb250aW51ZSkiCittc2dzdHIgIiAgKGxhbmNleiBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgcG91ciBjb250aW51ZXIpIgorCisjOiB3dC1zdGF0dXMuYzoxNDM1CiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCiBtc2dzdHIgIiIKICIgICh0b3VzIGxlcyBjb25mbGl0cyBzb250IHLDqWdsw6lzIDogbGFuY2V6IFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNzgKKyM6IHd0LXN0YXR1cy5jOjE0MzcKK21zZ2lkICIgICh1c2UgXCJnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKK21zZ3N0ciAiICAodXRpbGlzZXogXCJnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXCIgcG91ciBzYXV0ZXIgY2UgcGF0Y2gpIgorCisjOiB3dC1zdGF0dXMuYzoxNDM5CiBtc2dpZCAiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnRcIiB0byBjYW5jZWwgdGhlIGNoZXJyeS1waWNrIG9wZXJhdGlvbikiCiBtc2dzdHIgIiAgKHV0aWxpc2V6IFwiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnRcIiBwb3VyIGFubnVsZXIgbGUgcGljb3JhZ2UpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzg2CisjOiB3dC1zdGF0dXMuYzoxNDQ5Cittc2dpZCAiUmV2ZXJ0IGN1cnJlbnRseSBpbiBwcm9ncmVzcy4iCittc2dzdHIgIlLDqXRhYmxpc3NlbWVudCBlbiBjb3Vycy4iCisKKyM6IHd0LXN0YXR1cy5jOjE0NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmV2ZXJ0aW5nIGNvbW1pdCAlcy4iCiBtc2dzdHIgIlZvdXMgw6p0ZXMgYWN0dWVsbGVtZW50IGVuIHRyYWluIGRlIHLDqXRhYmxpciBsZSBjb21taXQgJXMuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzkxCisjOiB3dC1zdGF0dXMuYzoxNDU4CiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgIChyw6lnbGV6IGxlcyBjb25mbGl0cyBwdWlzIGxhbmNleiBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM5NAorIzogd3Qtc3RhdHVzLmM6MTQ2MQorbXNnaWQgIiAgKHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiIHRvIGNvbnRpbnVlKSIKK21zZ3N0ciAiICAobGFuY2V6IFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIgcG91ciBjb250aW51ZXIpIgorCisjOiB3dC1zdGF0dXMuYzoxNDY0CiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgICh0b3VzIGxlcyBjb25mbGl0cyBzb250IHLDqWdsw6lzIDogbGFuY2V6IFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzk2CisjOiB3dC1zdGF0dXMuYzoxNDY2Cittc2dpZCAiICAodXNlIFwiZ2l0IHJldmVydCAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgorbXNnc3RyICIgICh1dGlsaXNleiBcImdpdCByZXZlcnQgLS1za2lwXCIgcG91ciBzYXV0ZXIgY2UgcGF0Y2gpIgorCisjOiB3dC1zdGF0dXMuYzoxNDY4CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJldmVydCAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSByZXZlcnQgb3BlcmF0aW9uKSIKIG1zZ3N0ciAiICAodXRpbGlzZXogXCJnaXQgcmV2ZXJ0IC0tYWJvcnRcIiBwb3VyIGFubnVsZXIgbGUgcsOpdGFibGlzc2VtZW50KSIKIAotIzogd3Qtc3RhdHVzLmM6MTQwNgorIzogd3Qtc3RhdHVzLmM6MTQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcsIHN0YXJ0ZWQgZnJvbSBicmFuY2ggJyVzJy4iCiBtc2dzdHIgIlZvdXMgw6p0ZXMgZW4gY291cnMgZGUgYmlzc2VjdGlvbiwgZGVwdWlzIGxhIGJyYW5jaGUgJyVzJy4iCiAKLSM6IHd0LXN0YXR1cy5jOjE0MTAKKyM6IHd0LXN0YXR1cy5jOjE0ODIKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcuIgogbXNnc3RyICJWb3VzIMOqdGVzIGVuIGNvdXJzIGRlIGJpc3NlY3Rpb24uIgogCi0jOiB3dC1zdGF0dXMuYzoxNDEzCisjOiB3dC1zdGF0dXMuYzoxNDg1CiBtc2dpZCAiICAodXNlIFwiZ2l0IGJpc2VjdCByZXNldFwiIHRvIGdldCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBicmFuY2gpIgogbXNnc3RyICIgICh1dGlsaXNleiBcImdpdCBiaXNlY3QgcmVzZXRcIiBwb3VyIHJldmVuaXIgw6AgbGEgYnJhbmNoZSBkJ29yaWdpbmUpIgogCi0jOiB3dC1zdGF0dXMuYzoxNjExCisjOiB3dC1zdGF0dXMuYzoxNjk0CiBtc2dpZCAiT24gYnJhbmNoICIKIG1zZ3N0ciAiU3VyIGxhIGJyYW5jaGUgIgogCi0jOiB3dC1zdGF0dXMuYzoxNjE4CisjOiB3dC1zdGF0dXMuYzoxNzAxCiBtc2dpZCAiaW50ZXJhY3RpdmUgcmViYXNlIGluIHByb2dyZXNzOyBvbnRvICIKIG1zZ3N0ciAicmViYXNhZ2UgaW50ZXJhY3RpZiBlbiBjb3VycyA7IHN1ciAiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MjAKKyM6IHd0LXN0YXR1cy5jOjE3MDMKIG1zZ2lkICJyZWJhc2UgaW4gcHJvZ3Jlc3M7IG9udG8gIgogbXNnc3RyICJyZWJhc2FnZSBlbiBjb3VycyA7IHN1ciAiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MjUKLW1zZ2lkICJIRUFEIGRldGFjaGVkIGF0ICIKLW1zZ3N0ciAiSEVBRCBkw6l0YWNow6llIHN1ciAiCi0KLSM6IHd0LXN0YXR1cy5jOjE2MjcKLW1zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgotbXNnc3RyICJIRUFEIGTDqXRhY2jDqWUgZGVwdWlzICIKLQotIzogd3Qtc3RhdHVzLmM6MTYzMAorIzogd3Qtc3RhdHVzLmM6MTcxMwogbXNnaWQgIk5vdCBjdXJyZW50bHkgb24gYW55IGJyYW5jaC4iCiBtc2dzdHIgIkFjdHVlbGxlbWVudCBzdXIgYXVjdW4gYnJhbmNoZS4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2NDcKKyM6IHd0LXN0YXR1cy5jOjE3MzAKIG1zZ2lkICJJbml0aWFsIGNvbW1pdCIKIG1zZ3N0ciAiVmFsaWRhdGlvbiBpbml0aWFsZSIKIAotIzogd3Qtc3RhdHVzLmM6MTY0OAorIzogd3Qtc3RhdHVzLmM6MTczMQogbXNnaWQgIk5vIGNvbW1pdHMgeWV0IgogbXNnc3RyICJBdWN1biBjb21taXQiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjIKKyM6IHd0LXN0YXR1cy5jOjE3NDUKIG1zZ2lkICJVbnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgIkZpY2hpZXJzIG5vbiBzdWl2aXMiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjQKKyM6IHd0LXN0YXR1cy5jOjE3NDcKIG1zZ2lkICJJZ25vcmVkIGZpbGVzIgogbXNnc3RyICJGaWNoaWVycyBpZ25vcsOpcyIKIAotIzogd3Qtc3RhdHVzLmM6MTY2OAorIzogd3Qtc3RhdHVzLmM6MTc1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gZW51bWVyYXRlIHVudHJhY2tlZCBmaWxlcy4gJ3N0YXR1cyAtdW5vJ1xuIgpAQCAtNzIwNCwzMiArOTQ0MSwzMiBAQAogIm91YmxpZXIgZCdham91dGVyIGxlcyBub3V2ZWF1eCBmaWNoaWVycyBwYXIgdm91cy1tw6ptZSAodm9pciAnZ2l0IGhlbHAgIgogInN0YXR1cycpLiIKIAotIzogd3Qtc3RhdHVzLmM6MTY3NAorIzogd3Qtc3RhdHVzLmM6MTc1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJVbnRyYWNrZWQgZmlsZXMgbm90IGxpc3RlZCVzIgogbXNnc3RyICJGaWNoaWVycyBub24gc3VpdmlzIG5vbiBhZmZpY2jDqXMlcyIKIAotIzogd3Qtc3RhdHVzLmM6MTY3NgorIzogd3Qtc3RhdHVzLmM6MTc1OQogbXNnaWQgIiAodXNlIC11IG9wdGlvbiB0byBzaG93IHVudHJhY2tlZCBmaWxlcykiCiBtc2dzdHIgIiAodXRpbGlzZXogLXUgcG91ciBhZmZpY2hlciBsZXMgZmljaGllcnMgbm9uIHN1aXZpcykiCiAKLSM6IHd0LXN0YXR1cy5jOjE2ODIKKyM6IHd0LXN0YXR1cy5jOjE3NjUKIG1zZ2lkICJObyBjaGFuZ2VzIgogbXNnc3RyICJBdWN1bmUgbW9kaWZpY2F0aW9uIgogCi0jOiB3dC1zdGF0dXMuYzoxNjg3CisjOiB3dC1zdGF0dXMuYzoxNzcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGNoYW5nZXMgYWRkZWQgdG8gY29tbWl0ICh1c2UgXCJnaXQgYWRkXCIgYW5kL29yIFwiZ2l0IGNvbW1pdCAtYVwiKVxuIgogbXNnc3RyICIiCiAiYXVjdW5lIG1vZGlmaWNhdGlvbiBuJ2Egw6l0w6kgYWpvdXTDqWUgw6AgbGEgdmFsaWRhdGlvbiAodXRpbGlzZXogXCJnaXQgYWRkXCIgb3UgIgogIlwiZ2l0IGNvbW1pdCAtYVwiKVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjkwCisjOiB3dC1zdGF0dXMuYzoxNzczCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGNoYW5nZXMgYWRkZWQgdG8gY29tbWl0XG4iCiBtc2dzdHIgImF1Y3VuZSBtb2RpZmljYXRpb24gYWpvdXTDqWUgw6AgbGEgdmFsaWRhdGlvblxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjkzCisjOiB3dC1zdGF0dXMuYzoxNzc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJub3RoaW5nIGFkZGVkIHRvIGNvbW1pdCBidXQgdW50cmFja2VkIGZpbGVzIHByZXNlbnQgKHVzZSBcImdpdCBhZGRcIiB0byAiCkBAIC03MjM4LDE5NSArOTQ3NSwyMDQgQEAKICJhdWN1bmUgbW9kaWZpY2F0aW9uIGFqb3V0w6llIMOgIGxhIHZhbGlkYXRpb24gbWFpcyBkZXMgZmljaGllcnMgbm9uIHN1aXZpcyAiCiAic29udCBwcsOpc2VudHMgKHV0aWxpc2V6IFwiZ2l0IGFkZFwiIHBvdXIgbGVzIHN1aXZyZSlcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTY5NgorIzogd3Qtc3RhdHVzLmM6MTc3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIGFkZGVkIHRvIGNvbW1pdCBidXQgdW50cmFja2VkIGZpbGVzIHByZXNlbnRcbiIKIG1zZ3N0ciAiIgogImF1Y3VuZSBtb2RpZmljYXRpb24gYWpvdXTDqWUgw6AgbGEgdmFsaWRhdGlvbiBtYWlzIGRlcyBmaWNoaWVycyBub24gc3VpdmlzICIKICJzb250IHByw6lzZW50c1xuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjk5CisjOiB3dC1zdGF0dXMuYzoxNzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0IChjcmVhdGUvY29weSBmaWxlcyBhbmQgdXNlIFwiZ2l0IGFkZFwiIHRvIHRyYWNrKVxuIgogbXNnc3RyICIiCiAicmllbiDDoCB2YWxpZGVyIChjcsOpZXovY29waWV6IGRlcyBmaWNoaWVycyBldCB1dGlsaXNleiBcImdpdCBhZGRcIiBwb3VyIGxlcyAiCiAic3VpdnJlKVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNzAyIHd0LXN0YXR1cy5jOjE3MDcKKyM6IHd0LXN0YXR1cy5jOjE3ODUgd3Qtc3RhdHVzLmM6MTc5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIGNvbW1pdFxuIgogbXNnc3RyICJyaWVuIMOgIHZhbGlkZXJcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTcwNQorIzogd3Qtc3RhdHVzLmM6MTc4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIGNvbW1pdCAodXNlIC11IHRvIHNob3cgdW50cmFja2VkIGZpbGVzKVxuIgogbXNnc3RyICJyaWVuIMOgIHZhbGlkZXIgKHV0aWxpc2V6IC11IHBvdXIgYWZmaWNoZXIgbGVzIGZpY2hpZXJzIG5vbiBzdWl2aXMpXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE3MDkKKyM6IHd0LXN0YXR1cy5jOjE3OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXQsIHdvcmtpbmcgdHJlZSBjbGVhblxuIgogbXNnc3RyICJyaWVuIMOgIHZhbGlkZXIsIGxhIGNvcGllIGRlIHRyYXZhaWwgZXN0IHByb3ByZVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxODIyCisjOiB3dC1zdGF0dXMuYzoxOTA1CiBtc2dpZCAiTm8gY29tbWl0cyB5ZXQgb24gIgogbXNnc3RyICJFbmNvcmUgYXVjdW4gY29tbWl0IHN1ciAiCiAKLSM6IHd0LXN0YXR1cy5jOjE4MjYKKyM6IHd0LXN0YXR1cy5jOjE5MDkKIG1zZ2lkICJIRUFEIChubyBicmFuY2gpIgogbXNnc3RyICJIRUFEIChhdWN1bmUgYnJhbmNoZSkiCiAKLSM6IHd0LXN0YXR1cy5jOjE4NTcKKyM6IHd0LXN0YXR1cy5jOjE5NDAKIG1zZ2lkICJkaWZmZXJlbnQiCiBtc2dzdHIgImRpZmbDqXJlbnQiCiAKLSM6IHd0LXN0YXR1cy5jOjE4NTkgd3Qtc3RhdHVzLmM6MTg2NworIzogd3Qtc3RhdHVzLmM6MTk0MiB3dC1zdGF0dXMuYzoxOTUwCiBtc2dpZCAiYmVoaW5kICIKIG1zZ3N0ciAiZGVycmnDqHJlICIKIAotIzogd3Qtc3RhdHVzLmM6MTg2MiB3dC1zdGF0dXMuYzoxODY1CisjOiB3dC1zdGF0dXMuYzoxOTQ1IHd0LXN0YXR1cy5jOjE5NDgKIG1zZ2lkICJhaGVhZCAiCiBtc2dzdHIgImRldmFudCAiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGUgYWN0aW9uIGlzIGUuZy4gInB1bGwgd2l0aCByZWJhc2UiCi0jOiB3dC1zdGF0dXMuYzoyMzc0CisjOiB3dC1zdGF0dXMuYzoyNDcwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIkltcG9zc2libGUgZGUgJXPCoDogdm91cyBhdmV6IGRlcyBtb2RpZmljYXRpb25zIG5vbiBpbmRleMOpZXMuIgogCi0jOiB3dC1zdGF0dXMuYzoyMzgwCisjOiB3dC1zdGF0dXMuYzoyNDc2CiBtc2dpZCAiYWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICJkZSBwbHVzLCB2b3RyZSBpbmRleCBjb250aWVudCBkZXMgbW9kaWZpY2F0aW9ucyBub24gdmFsaWTDqWVzLiIKIAotIzogd3Qtc3RhdHVzLmM6MjM4MgorIzogd3Qtc3RhdHVzLmM6MjQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgJXM6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiVzIGltcG9zc2libGXCoDogdm90cmUgaW5kZXggY29udGllbnQgZGVzIG1vZGlmaWNhdGlvbnMgbm9uIHZhbGlkw6llcy4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQKKyM6IGNvbXBhdC9wcmVjb21wb3NlX3V0ZjguYzo1OCBidWlsdGluL2Nsb25lLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgJyVzJyIKK21zZ3N0ciAiw6ljaGVjIHBvdXIgZMOpbGllciAnJXMnIgorCisjOiBidWlsdGluL2FkZC5jOjI2CiBtc2dpZCAiZ2l0IGFkZCBbPG9wdGlvbnM+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCiBtc2dzdHIgImdpdCBhZGQgWzxvcHRpb25zPl0gWy0tXSA8Y2hlbWluPi4uLiIKIAotIzogYnVpbHRpbi9hZGQuYzo4MworIzogYnVpbHRpbi9hZGQuYzo4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIGRpZmYgc3RhdHVzICVjIgogbXNnc3RyICLDqXRhdCBkZSBkaWZmIGluYXR0ZW5kdSAlYyIKIAotIzogYnVpbHRpbi9hZGQuYzo4OCBidWlsdGluL2NvbW1pdC5jOjI4NAorIzogYnVpbHRpbi9hZGQuYzo5MyBidWlsdGluL2NvbW1pdC5jOjI4OAogbXNnaWQgInVwZGF0aW5nIGZpbGVzIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGRlIGxhIG1pc2Ugw6Agam91ciBkZXMgZmljaGllcnMiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6OTgKKyM6IGJ1aWx0aW4vYWRkLmM6MTAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW92ZSAnJXMnXG4iCiBtc2dzdHIgInN1cHByZXNzaW9uIGRlICclcydcbiIKIAotIzogYnVpbHRpbi9hZGQuYzoxNzMKKyM6IGJ1aWx0aW4vYWRkLmM6MTc4CiBtc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZWZyZXNoaW5nIHRoZSBpbmRleDoiCiBtc2dzdHIgIk1vZGlmaWNhdGlvbnMgbm9uIGluZGV4w6llcyBhcHLDqHMgcmFmcmHDrmNoaXNzZW1lbnQgZGUgbCdpbmRleCA6IgogCi0jOiBidWlsdGluL2FkZC5jOjIzMyBidWlsdGluL3Jldi1wYXJzZS5jOjg5NQorIzogYnVpbHRpbi9hZGQuYzoyNjYgYnVpbHRpbi9yZXYtcGFyc2UuYzo4OTkKIG1zZ2lkICJDb3VsZCBub3QgcmVhZCB0aGUgaW5kZXgiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgbGlyZSBsJ2luZGV4IgogCi0jOiBidWlsdGluL2FkZC5jOjI0NAorIzogYnVpbHRpbi9hZGQuYzoyNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZy4iCiBtc2dzdHIgIkltcG9zc2libGUgZCdvdXZyaXIgJyVzJyBlbiDDqWNyaXR1cmUuIgogCi0jOiBidWlsdGluL2FkZC5jOjI0OAorIzogYnVpbHRpbi9hZGQuYzoyODEKIG1zZ2lkICJDb3VsZCBub3Qgd3JpdGUgcGF0Y2giCiBtc2dzdHIgIkltcG9zc2libGUgZCfDqWNyaXJlIGxlIHBhdGNoIgogCi0jOiBidWlsdGluL2FkZC5jOjI1MQorIzogYnVpbHRpbi9hZGQuYzoyODQKIG1zZ2lkICJlZGl0aW5nIHBhdGNoIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGRlIGwnw6lkaXRpb24gZHUgcGF0Y2giCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjU0CisjOiBidWlsdGluL2FkZC5jOjI4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc3RhdCAnJXMnIgogbXNnc3RyICJTdGF0IGRlICclcycgaW1wb3NzaWJsZSIKIAotIzogYnVpbHRpbi9hZGQuYzoyNTYKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg5CiBtc2dpZCAiRW1wdHkgcGF0Y2guIEFib3J0ZWQuIgogbXNnc3RyICJQYXRjaCB2aWRlLiBBYmFuZG9uLiIKIAotIzogYnVpbHRpbi9hZGQuYzoyNjEKKyM6IGJ1aWx0aW4vYWRkLmM6Mjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBhcHBseSAnJXMnIgogbXNnc3RyICJJbXBvc3NpYmxlIGQnYXBwbGlxdWVyICclcyciCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjY5CisjOiBidWlsdGluL2FkZC5jOjMwMgogbXNnaWQgIlRoZSBmb2xsb3dpbmcgcGF0aHMgYXJlIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczpcbiIKIG1zZ3N0ciAiIgogIkxlcyBjaGVtaW5zIHN1aXZhbnRzIHNvbnQgaWdub3LDqXMgcGFyIHVuIGRlIHZvcyBmaWNoaWVycyAuZ2l0aWdub3JlIDpcbiIKIAotIzogYnVpbHRpbi9hZGQuYzoyODkgYnVpbHRpbi9jbGVhbi5jOjkwNyBidWlsdGluL2ZldGNoLmM6MTM3IGJ1aWx0aW4vbXYuYzoxMjMKLSM6IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTYgYnVpbHRpbi9wdWxsLmM6MjEzIGJ1aWx0aW4vcHVzaC5jOjU1NwotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzQ1IGJ1aWx0aW4vcm0uYzoyNDAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjUKKyM6IGJ1aWx0aW4vYWRkLmM6MzIyIGJ1aWx0aW4vY2xlYW4uYzo5MTAgYnVpbHRpbi9mZXRjaC5jOjE2MyBidWlsdGluL212LmM6MTI0CisjOiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU2IGJ1aWx0aW4vcHVsbC5jOjIwMyBidWlsdGluL3B1c2guYzo1NDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQyMSBidWlsdGluL3JtLmM6MjQyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY1CiBtc2dpZCAiZHJ5IHJ1biIKIG1zZ3N0ciAic2ltdWxlciBsJ2FjdGlvbiIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTIKKyM6IGJ1aWx0aW4vYWRkLmM6MzI1CiBtc2dpZCAiaW50ZXJhY3RpdmUgcGlja2luZyIKIG1zZ3N0ciAic8OpbGVjdGlvbiBpbnRlcmFjdGl2ZSIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTMgYnVpbHRpbi9jaGVja291dC5jOjEyNTggYnVpbHRpbi9yZXNldC5jOjMwNQorIzogYnVpbHRpbi9hZGQuYzozMjYgYnVpbHRpbi9jaGVja291dC5jOjE1MTEgYnVpbHRpbi9yZXNldC5jOjMwNwogbXNnaWQgInNlbGVjdCBodW5rcyBpbnRlcmFjdGl2ZWx5IgogbXNnc3RyICJzw6lsZWN0aW9uIGludGVyYWN0aXZlIGRlcyBzZWN0aW9ucyIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTQKKyM6IGJ1aWx0aW4vYWRkLmM6MzI3CiBtc2dpZCAiZWRpdCBjdXJyZW50IGRpZmYgYW5kIGFwcGx5IgogbXNnc3RyICLDqWRpdGlvbiBkdSBkaWZmIGFjdHVlbCBldCBhcHBsaWNhdGlvbiIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTUKKyM6IGJ1aWx0aW4vYWRkLmM6MzI4CiBtc2dpZCAiYWxsb3cgYWRkaW5nIG90aGVyd2lzZSBpZ25vcmVkIGZpbGVzIgogbXNnc3RyICJwZXJtZXR0cmUgbCdham91dCBkZSBmaWNoaWVycyBpZ25vcsOpcyIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTYKKyM6IGJ1aWx0aW4vYWRkLmM6MzI5CiBtc2dpZCAidXBkYXRlIHRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgIm1ldHRyZSDDoCBqb3VyIGxlcyBmaWNoaWVycyBzdWl2aXMiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk3CisjOiBidWlsdGluL2FkZC5jOjMzMAogbXNnaWQgInJlbm9ybWFsaXplIEVPTCBvZiB0cmFja2VkIGZpbGVzIChpbXBsaWVzIC11KSIKIG1zZ3N0ciAiIgogInJlbm9ybWFsaXNlciBsZXMgZmlucyBkZSBsaWduZXMgKEVPTCkgZGVzIGZpY2hpZXJzIHN1aXZpcyAoaW1wbGlxdWUgLXUpIgogCi0jOiBidWlsdGluL2FkZC5jOjI5OAorIzogYnVpbHRpbi9hZGQuYzozMzEKIG1zZ2lkICJyZWNvcmQgb25seSB0aGUgZmFjdCB0aGF0IHRoZSBwYXRoIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCiBtc2dzdHIgImVucmVnaXN0cmVyIHNldWxlbWVudCBsZSBmYWl0IHF1ZSBsZSBjaGVtaW4gc2VyYSBham91dMOpIHBsdXMgdGFyZCIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTkKKyM6IGJ1aWx0aW4vYWRkLmM6MzMyCiBtc2dpZCAiYWRkIGNoYW5nZXMgZnJvbSBhbGwgdHJhY2tlZCBhbmQgdW50cmFja2VkIGZpbGVzIgogbXNnc3RyICJham91dGVyIGxlcyBtb2RpZmljYXRpb25zIGRlIHRvdXMgbGVzIGZpY2hpZXJzIHN1aXZpcyBldCBub24gc3VpdmlzIgogCi0jOiBidWlsdGluL2FkZC5jOjMwMgorIzogYnVpbHRpbi9hZGQuYzozMzUKIG1zZ2lkICJpZ25vcmUgcGF0aHMgcmVtb3ZlZCBpbiB0aGUgd29ya2luZyB0cmVlIChzYW1lIGFzIC0tbm8tYWxsKSIKIG1zZ3N0ciAiIgogImlnbm9yZXIgbGVzIGNoZW1pbnMgZWZmYWPDqXMgZGFucyBsYSBjb3BpZSBkZSB0cmF2YWlsIChpZGVudGlxdWUgw6AgLS1uby1hbGwpIgogCi0jOiBidWlsdGluL2FkZC5jOjMwNAorIzogYnVpbHRpbi9hZGQuYzozMzcKIG1zZ2lkICJkb24ndCBhZGQsIG9ubHkgcmVmcmVzaCB0aGUgaW5kZXgiCiBtc2dzdHIgIm5lIHBhcyBham91dGVyLCBqdXN0ZSByYWZyYcOuY2hpciBsJ2luZGV4IgogCi0jOiBidWlsdGluL2FkZC5jOjMwNQorIzogYnVpbHRpbi9hZGQuYzozMzgKIG1zZ2lkICJqdXN0IHNraXAgZmlsZXMgd2hpY2ggY2Fubm90IGJlIGFkZGVkIGJlY2F1c2Ugb2YgZXJyb3JzIgogbXNnc3RyICIiCiAic2F1dGVyIHNldWxlbWVudCBsZXMgZmljaGllcnMgcXVpIG5lIHBldXZlbnQgcGFzIMOqdHJlIGFqb3V0w6lzIGR1IGZhaXQgIgogImQnZXJyZXVycyIKIAotIzogYnVpbHRpbi9hZGQuYzozMDYKKyM6IGJ1aWx0aW4vYWRkLmM6MzM5CiBtc2dpZCAiY2hlY2sgaWYgLSBldmVuIG1pc3NpbmcgLSBmaWxlcyBhcmUgaWdub3JlZCBpbiBkcnkgcnVuIgogbXNnc3RyICJ2w6lyaWZpZXIgc2kgZGVzIGZpY2hpZXJzIC0gbcOqbWUgbWFucXVhbnRzIC0gc29udCBpZ25vcsOpcywgw6AgdmlkZSIKIAotIzogYnVpbHRpbi9hZGQuYzozMDggYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTAKKyM6IGJ1aWx0aW4vYWRkLmM6MzQxIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwNAogbXNnaWQgIm92ZXJyaWRlIHRoZSBleGVjdXRhYmxlIGJpdCBvZiB0aGUgbGlzdGVkIGZpbGVzIgogbXNnc3RyICJvdXRyZXBhc3NlciBsZSBiaXQgZXjDqWN1dGFibGUgcG91ciBsZXMgZmljaGllcnMgbGlzdMOpcyIKIAotIzogYnVpbHRpbi9hZGQuYzozMTAKKyM6IGJ1aWx0aW4vYWRkLmM6MzQzCiBtc2dpZCAid2FybiB3aGVuIGFkZGluZyBhbiBlbWJlZGRlZCByZXBvc2l0b3J5IgogbXNnc3RyICJhdmVydGlyIGxvcnMgZGUgbCdham91dCBkJ3VuIGTDqXDDtHQgZW1iYXJxdcOpIgogCi0jOiBidWlsdGluL2FkZC5jOjMyNQorIzogYnVpbHRpbi9hZGQuYzozNDUKK21zZ2lkICJiYWNrZW5kIGZvciBgZ2l0IHN0YXNoIC1wYCIKK21zZ3N0ciAiYmFja2VuZCBwb3VyIGBnaXQgc3Rhc2ggLXBgIgorCisjOiBidWlsdGluL2FkZC5jOjM2MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91J3ZlIGFkZGVkIGFub3RoZXIgZ2l0IHJlcG9zaXRvcnkgaW5zaWRlIHlvdXIgY3VycmVudCByZXBvc2l0b3J5LlxuIgpAQCAtNzQ1NywxNTQgKzk3MDMsMTc4IEBACiAiXG4iCiAiUsOpZsOpcmV6LXZvdXMgw6AgXCJnaXQgaGVscCBzdWJtb2R1bGVcIiBwb3VyIHBsdXMgZCdpbmZvcm1hdGlvbi4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzUzCisjOiBidWlsdGluL2FkZC5jOjM5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJhZGRpbmcgZW1iZWRkZWQgZ2l0IHJlcG9zaXRvcnk6ICVzIgogbXNnc3RyICJkw6lww7R0IGdpdCBlbWJhcnF1w6kgYWpvdXTDqcKgOiAlcyIKIAotIzogYnVpbHRpbi9hZGQuYzozNzEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgdGhlbS5cbiIKLW1zZ3N0ciAiVXRpbGlzZXogLWYgc2kgdm91cyB2b3VsZXogcsOpZWxsZW1lbnQgbGVzIGFqb3V0ZXIuXG4iCisjOiBidWlsdGluL2FkZC5jOjQxMAorbXNnaWQgIiIKKyJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCB0aGVtLlxuIgorIlR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieSBydW5uaW5nXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRJZ25vcmVkRmlsZSBmYWxzZVwiIgorbXNnc3RyICIiCisiVXRpbGlzZXogLWYgc2kgdm91cyB2b3VsZXogdnJhaW1lbnQgbGVzIGFqb3V0ZXIuXG4iCisiw4lsaW1pbmV6IGNlIG1lc3NhZ2UgZW4gbGFuw6dhbnRcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZElnbm9yZWRGaWxlIGZhbHNlXCIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mzc5CisjOiBidWlsdGluL2FkZC5jOjQxOQogbXNnaWQgImFkZGluZyBmaWxlcyBmYWlsZWQiCiBtc2dzdHIgIsOpY2hlYyBkZSBsJ2Fqb3V0IGRlIGZpY2hpZXJzIgogCi0jOiBidWlsdGluL2FkZC5jOjQxNworIzogYnVpbHRpbi9hZGQuYzo0NDcgYnVpbHRpbi9jb21taXQuYzozNDgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWludGVyYWN0aXZlLy0tcGF0Y2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGVzdCBpbmNvbXBhdGlibGUgYXZlYyAtLWludGVyYWN0aXZlLy0tcGF0Y2giCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDY0Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1lZGl0IgorbXNnc3RyICItLXBhdGhzcGVjLWZyb20tZmlsZSBlc3QgaW5jb21wYXRpYmxlIGF2ZWMgLS1lZGl0IgorCisjOiBidWlsdGluL2FkZC5jOjQ3NgogbXNnaWQgIi1BIGFuZCAtdSBhcmUgbXV0dWFsbHkgaW5jb21wYXRpYmxlIgogbXNnc3RyICItQSBldCAtdSBzb250IG11dHVlbGxlbWVudCBpbmNvbXBhdGlibGVzIgogCi0jOiBidWlsdGluL2FkZC5jOjQyNAorIzogYnVpbHRpbi9hZGQuYzo0NzkKIG1zZ2lkICJPcHRpb24gLS1pZ25vcmUtbWlzc2luZyBjYW4gb25seSBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggLS1kcnktcnVuIgogbXNnc3RyICIiCiAiTCdvcHRpb24gLS1pZ25vcmUtbWlzc2luZyBuZSBwZXV0IMOqdHJlIHV0aWxpc8OpZSBxdSdlbiBjb21wbMOpbWVudCBkZSAtLWRyeS1ydW4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDI4CisjOiBidWlsdGluL2FkZC5jOjQ4MwogIywgYy1mb3JtYXQKIG1zZ2lkICItLWNobW9kIHBhcmFtICclcycgbXVzdCBiZSBlaXRoZXIgLXggb3IgK3giCiBtc2dzdHIgIkxlIHBhcmFtw6h0cmUgJyVzJyBkZSAtLWNobW9kIGRvaXQgw6p0cmUgc29pdCAteCBzb2l0ICt4IgogCi0jOiBidWlsdGluL2FkZC5jOjQ0MworIzogYnVpbHRpbi9hZGQuYzo1MDEgYnVpbHRpbi9jaGVja291dC5jOjE2NzUgYnVpbHRpbi9jb21taXQuYzozNTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMjcgYnVpbHRpbi9ybS5jOjI3MiBidWlsdGluL3N0YXNoLmM6MTUwOQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgZXN0IGluY29tcGF0aWJsZSBhdmVjIHBhdGhzcGVjIGFyZ3VtZW50cyIKKworIzogYnVpbHRpbi9hZGQuYzo1MDggYnVpbHRpbi9jaGVja291dC5jOjE2ODcgYnVpbHRpbi9jb21taXQuYzozNjAKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMzMgYnVpbHRpbi9ybS5jOjI3OCBidWlsdGluL3N0YXNoLmM6MTUxNQorbXNnaWQgIi0tcGF0aHNwZWMtZmlsZS1udWwgcmVxdWlyZXMgLS1wYXRoc3BlYy1mcm9tLWZpbGUiCittc2dzdHIgIi0tcGF0aHNwZWMtZmlsZS1udWwgbsOpY2Vzc2l0ZSAtLXBhdGhzcGVjLWZyb20tZmlsZSIKKworIzogYnVpbHRpbi9hZGQuYzo1MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90aGluZyBzcGVjaWZpZWQsIG5vdGhpbmcgYWRkZWQuXG4iCiBtc2dzdHIgIlJpZW4gZGUgc3DDqWNpZmnDqSwgcmllbiBuJ2Egw6l0w6kgYWpvdXTDqS5cbiIKIAotIzogYnVpbHRpbi9hZGQuYzo0NDQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiTWF5YmUgeW91IHdhbnRlZCB0byBzYXkgJ2dpdCBhZGQgLic/XG4iCi1tc2dzdHIgIlZvdXMgdm91bGlleiBzw7tyZW1lbnQgZGlyZSAnZ2l0IGFkZCAuJyA/XG4iCisjOiBidWlsdGluL2FkZC5jOjUxNAorbXNnaWQgIiIKKyJNYXliZSB5b3Ugd2FudGVkIHRvIHNheSAnZ2l0IGFkZCAuJz9cbiIKKyJUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnkgcnVubmluZ1xuIgorIlwiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkRW1wdHlQYXRoc3BlYyBmYWxzZVwiIgorbXNnc3RyICIiCisiUGV1dC3DqnRyZSBhdmV6LXZvdXMgdm91bHUgZGlyZSAnZ2l0IGFkZCAuJ8KgP1xuIgorIsOJbGltaW5leiBjZSBtZXNzYWdlIGVuIGxhbsOnYW50XG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRFbXB0eVBhdGhzcGVjIGZhbHNlXCIiCiAKLSM6IGJ1aWx0aW4vYW0uYzozNjMKKyM6IGJ1aWx0aW4vYW0uYzozNTIKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgYXV0aG9yIHNjcmlwdCIKLW1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGxlIHNjcmlwdCBhdXRob3IiCittc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBsJ2F1dGV1ciBkdSBzY3JpcHQiCiAKLSM6IGJ1aWx0aW4vYW0uYzo0NDcKKyM6IGJ1aWx0aW4vYW0uYzo0MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyB3YXMgZGVsZXRlZCBieSB0aGUgYXBwbHlwYXRjaC1tc2cgaG9vayIKIG1zZ3N0ciAiJyVzJyBhIMOpdMOpIGVmZmFjw6kgcGFyIGxlIGNyb2NoZXQgYXBwbHlwYXRjaC1tc2ciCiAKLSM6IGJ1aWx0aW4vYW0uYzo0ODgKKyM6IGJ1aWx0aW4vYW0uYzo0NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWFsZm9ybWVkIGlucHV0IGxpbmU6ICclcycuIgogbXNnc3RyICJMaWduZSBlbiBlbnRyw6llIG1hbGZvcm3DqWUgOiAnJXMnLiIKIAotIzogYnVpbHRpbi9hbS5jOjUyNQorIzogYnVpbHRpbi9hbS5jOjUxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY29weSBub3RlcyBmcm9tICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBjb3BpZXIgbGVzIG5vdGVzIGRlICclcycgdmVycyAnJXMnIgogCi0jOiBidWlsdGluL2FtLmM6NTUxCisjOiBidWlsdGluL2FtLmM6NTQyCiBtc2dpZCAiZnNlZWsgZmFpbGVkIgogbXNnc3RyICLDqWNoZWMgZGUgZnNlZWsiCiAKLSM6IGJ1aWx0aW4vYW0uYzo3MzkKKyM6IGJ1aWx0aW4vYW0uYzo3MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHBhdGNoICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBsZSBwYXRjaCAnJXMnIgogCi0jOiBidWlsdGluL2FtLmM6ODA0CisjOiBidWlsdGluL2FtLmM6Nzk1CiBtc2dpZCAiT25seSBvbmUgU3RHSVQgcGF0Y2ggc2VyaWVzIGNhbiBiZSBhcHBsaWVkIGF0IG9uY2UiCiBtc2dzdHIgIlNldWxlbWVudCB1bmUgc8OpcmllIGRlIHBhdGNocyBTdEdJVCBwZXV0IMOqdHJlIGFwcGxpcXXDqWUgw6AgbGEgZm9pcyIKIAotIzogYnVpbHRpbi9hbS5jOjg1MgorIzogYnVpbHRpbi9hbS5jOjg0MwogbXNnaWQgImludmFsaWQgdGltZXN0YW1wIgogbXNnc3RyICJob3JvZGF0YWdlIGludmFsaWRlIgogCi0jOiBidWlsdGluL2FtLmM6ODU3IGJ1aWx0aW4vYW0uYzo4NjkKKyM6IGJ1aWx0aW4vYW0uYzo4NDggYnVpbHRpbi9hbS5jOjg2MAogbXNnaWQgImludmFsaWQgRGF0ZSBsaW5lIgogbXNnc3RyICJsaWduZSBkZSBEYXRlIGludmFsaWRlIgogCi0jOiBidWlsdGluL2FtLmM6ODY0CisjOiBidWlsdGluL2FtLmM6ODU1CiBtc2dpZCAiaW52YWxpZCB0aW1lem9uZSBvZmZzZXQiCiBtc2dzdHIgImTDqWNhbGFnZSBob3JhaXJlIGludmFsaWRlIgogCi0jOiBidWlsdGluL2FtLmM6OTU3CisjOiBidWlsdGluL2FtLmM6OTQ4CiBtc2dpZCAiUGF0Y2ggZm9ybWF0IGRldGVjdGlvbiBmYWlsZWQuIgogbXNnc3RyICLDiWNoZWMgZGUgZMOpdGVjdGlvbiBkdSBmb3JtYXQgZHUgcGF0Y2guIgogCi0jOiBidWlsdGluL2FtLmM6OTYyIGJ1aWx0aW4vY2xvbmUuYzo0MDgKKyM6IGJ1aWx0aW4vYW0uYzo5NTMgYnVpbHRpbi9jbG9uZS5jOjQwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgogbXNnc3RyICLDqWNoZWMgZGUgbGEgY3LDqWF0aW9uIGR1IHLDqXBlcnRvaXJlICclcyciCiAKLSM6IGJ1aWx0aW4vYW0uYzo5NjcKKyM6IGJ1aWx0aW4vYW0uYzo5NTgKIG1zZ2lkICJGYWlsZWQgdG8gc3BsaXQgcGF0Y2hlcy4iCiBtc2dzdHIgIsOJY2hlYyBkZSBkw6ljb3VwYWdlIGRlcyBwYXRjaHMuIgogCi0jOiBidWlsdGluL2FtLmM6MTA5NyBidWlsdGluL2NvbW1pdC5jOjM2OQotbXNnaWQgInVuYWJsZSB0byB3cml0ZSBpbmRleCBmaWxlIgotbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBmaWNoaWVyIGQnaW5kZXgiCi0KLSM6IGJ1aWx0aW4vYW0uYzoxMTExCisjOiBidWlsdGluL2FtLmM6MTA4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJXaGVuIHlvdSBoYXZlIHJlc29sdmVkIHRoaXMgcHJvYmxlbSwgcnVuIFwiJXMgLS1jb250aW51ZVwiLiIKIG1zZ3N0ciAiUXVhbmQgdm91cyBhdmV6IHLDqXNvbHUgY2UgcHJvYmzDqG1lLCBsYW5jZXogXCIlcyAtLWNvbnRpbnVlXCIuIgogCi0jOiBidWlsdGluL2FtLmM6MTExMgorIzogYnVpbHRpbi9hbS5jOjEwOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiSWYgeW91IHByZWZlciB0byBza2lwIHRoaXMgcGF0Y2gsIHJ1biBcIiVzIC0tc2tpcFwiIGluc3RlYWQuIgogbXNnc3RyICJTaSB2b3VzIHByw6lmw6lyZXogcGx1dMO0dCBzYXV0ZXIgY2UgcGF0Y2gsIGxhbmNleiBcIiVzIC0tc2tpcFwiLiIKIAotIzogYnVpbHRpbi9hbS5jOjExMTMKKyM6IGJ1aWx0aW4vYW0uYzoxMDkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgc3RvcCBwYXRjaGluZywgcnVuIFwiJXMgLS1hYm9ydFwiLiIKIG1zZ3N0ciAiIgogIlBvdXIgcmVzdGF1cmVyIGxhIGJyYW5jaGUgb3JpZ2luYWxlIGV0IGFycsOqdGVyIGRlIHBhdGNoZXIsIGxhbmNleiBcIiVzIC0tIgogImFib3J0XCIuIgogCi0jOiBidWlsdGluL2FtLmM6MTE5NgorIzogYnVpbHRpbi9hbS5jOjExNzQKIG1zZ2lkICJQYXRjaCBzZW50IHdpdGggZm9ybWF0PWZsb3dlZDsgc3BhY2UgYXQgdGhlIGVuZCBvZiBsaW5lcyBtaWdodCBiZSBsb3N0LiIKIG1zZ3N0ciAiIgogIlJ1c3RpbmUgZW52b3nDqWUgYXZlYyBmb3JtYXQ9Zmxvd2VkwqA7IGxlcyBlc3BhY2VzIGVuIGZpbiBkZSBsaWduZSBwZXV2ZW50ICIKICLDqnRyZSBwZXJkdXMuIgogCi0jOiBidWlsdGluL2FtLmM6MTIyNAorIzogYnVpbHRpbi9hbS5jOjEyMDIKIG1zZ2lkICJQYXRjaCBpcyBlbXB0eS4iCiBtc2dzdHIgIkxlIHBhdGNoIGFjdHVlbCBlc3QgdmlkZS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMjkwCisjOiBidWlsdGluL2FtLmM6MTI2NworIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGF1dGhvciBsaW5lIGluIGNvbW1pdCAlcyIKK21zZ3N0ciAibGlnbmUgZCdhdXRldXIgbWFucXVhbnRlIGRhbnMgbGUgY29tbWl0ICVzIgorCisjOiBidWlsdGluL2FtLmM6MTI3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGlkZW50IGxpbmU6ICUuKnMiCiBtc2dzdHIgImxpZ25lIGQnaWRlbnRpZmljYXRpb24gaW52YWxpZGUgOiAlLipzIgogCi0jOiBidWlsdGluL2FtLmM6MTMxMgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0ICVzIgotbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGUgY29tbWl0ICVzIgotCi0jOiBidWlsdGluL2FtLmM6MTUwOAorIzogYnVpbHRpbi9hbS5jOjE0ODkKIG1zZ2lkICJSZXBvc2l0b3J5IGxhY2tzIG5lY2Vzc2FyeSBibG9icyB0byBmYWxsIGJhY2sgb24gMy13YXkgbWVyZ2UuIgogbXNnc3RyICIiCiAiTGUgZMOpcMO0dCBuJ2EgcGFzIGxlcyBibG9icyBuw6ljZXNzYWlyZXMgcG91ciB1biByZXRvdXIgw6AgdW5lIGZ1c2lvbiDDoCAzICIKICJwb2ludHMuIgogCi0jOiBidWlsdGluL2FtLmM6MTUxMAorIzogYnVpbHRpbi9hbS5jOjE0OTEKIG1zZ2lkICJVc2luZyBpbmRleCBpbmZvIHRvIHJlY29uc3RydWN0IGEgYmFzZSB0cmVlLi4uIgogbXNnc3RyICIiCiAiVXRpbGlzYXRpb24gZGUgbCdpbmZvcm1hdGlvbiBkZSBsJ2luZGV4IHBvdXIgcmVjb25zdHJ1aXJlIHVuIGFyYnJlIGRlIGJhc2UuLi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTI5CisjOiBidWlsdGluL2FtLmM6MTUxMAogbXNnaWQgIiIKICJEaWQgeW91IGhhbmQgZWRpdCB5b3VyIHBhdGNoP1xuIgogIkl0IGRvZXMgbm90IGFwcGx5IHRvIGJsb2JzIHJlY29yZGVkIGluIGl0cyBpbmRleC4iCkBAIC03NjEyLDI5ICs5ODgyLDI0IEBACiAiQXZlei12b3VzIMOpZGl0w6kgbGUgcGF0Y2ggw6AgbGEgbWFpbiA/XG4iCiAiSWwgbmUgcydhcHBsaXF1ZSBwYXMgYXV4IGJsb2JzIGVucmVnaXN0csOpcyBkYW5zIHNvbiBpbmRleC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTM1CisjOiBidWlsdGluL2FtLmM6MTUxNgogbXNnaWQgIkZhbGxpbmcgYmFjayB0byBwYXRjaGluZyBiYXNlIGFuZCAzLXdheSBtZXJnZS4uLiIKIG1zZ3N0ciAiUmV0b3VyIMOgIHVuIHBhdGNoIGRlIGxhIGJhc2UgZXQgZnVzaW9uIMOgIDMgcG9pbnRzLi4uIgogCi0jOiBidWlsdGluL2FtLmM6MTU2MQorIzogYnVpbHRpbi9hbS5jOjE1NDIKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2UgaW4gdGhlIGNoYW5nZXMuIgogbXNnc3RyICLDiWNoZWMgZCdpbnTDqWdyYXRpb24gZGVzIG1vZGlmaWNhdGlvbnMuIgogCi0jOiBidWlsdGluL2FtLmM6MTU5MworIzogYnVpbHRpbi9hbS5jOjE1NzQKIG1zZ2lkICJhcHBseWluZyB0byBhbiBlbXB0eSBoaXN0b3J5IgogbXNnc3RyICJhcHBsaWNhdGlvbiDDoCB1biBoaXN0b3JpcXVlIHZpZGUiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNjM5IGJ1aWx0aW4vYW0uYzoxNjQzCisjOiBidWlsdGluL2FtLmM6MTYyMSBidWlsdGluL2FtLmM6MTYyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVzdW1lOiAlcyBkb2VzIG5vdCBleGlzdC4iCiBtc2dzdHIgImltcG9zc2libGUgZGUgY29udGludWVyIDogJXMgbidleGlzdGUgcGFzLiIKIAotIzogYnVpbHRpbi9hbS5jOjE2NTkKLW1zZ2lkICJjYW5ub3QgYmUgaW50ZXJhY3RpdmUgd2l0aG91dCBzdGRpbiBjb25uZWN0ZWQgdG8gYSB0ZXJtaW5hbC4iCi1tc2dzdHIgIiIKLSJpbXBvc3NpYmxlIGQnw6p0cmUgaW50ZXJhY3RpZiBzYW5zIGVudHLDqWUgc3RhbmRhcmQgY29ubmVjdMOpZSDDoCB1biB0ZXJtaW5hbC4iCi0KLSM6IGJ1aWx0aW4vYW0uYzoxNjY0CisjOiBidWlsdGluL2FtLmM6MTY0MwogbXNnaWQgIkNvbW1pdCBCb2R5IGlzOiIKIG1zZ3N0ciAiTGUgY29ycHMgZGUgbGEgdmFsaWRhdGlvbiBlc3QgOiIKIApAQCAtNzY0MiwzNSArOTkwNywzOSBAQAogIy4gaW4geW91ciB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoCiAjLiBpbnB1dCBhdCB0aGlzIHBvaW50LgogIy4KLSM6IGJ1aWx0aW4vYW0uYzoxNjc0CisjOiBidWlsdGluL2FtLmM6MTY1MworIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBseT8gW3ldZXMvW25dby9bZV1kaXQvW3ZdaWV3IHBhdGNoL1thXWNjZXB0IGFsbDogIgogbXNnc3RyICJBcHBsaXF1ZXIgPyBbeV1lcy9bbl1vL1tlXWRpdC9bdl1pZXcgcGF0Y2gvW2FdY2NlcHQgYWxswqA6ICIKIAotIzogYnVpbHRpbi9hbS5jOjE3MjQKKyM6IGJ1aWx0aW4vYW0uYzoxNzAwIGJ1aWx0aW4vY29tbWl0LmM6Mzk4Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGluZGV4IGZpbGUiCittc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlIGxlIGZpY2hpZXIgZCdpbmRleCIKKworIzogYnVpbHRpbi9hbS5jOjE3MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGlydHkgaW5kZXg6IGNhbm5vdCBhcHBseSBwYXRjaGVzIChkaXJ0eTogJXMpIgogbXNnc3RyICJJbmRleCBzYWxlIDogaW1wb3NzaWJsZSBkJ2FwcGxpcXVlciBkZXMgcGF0Y2hzIChzYWxlcyA6ICVzKSIKIAotIzogYnVpbHRpbi9hbS5jOjE3NjQgYnVpbHRpbi9hbS5jOjE4MzIKKyM6IGJ1aWx0aW4vYW0uYzoxNzQ0IGJ1aWx0aW4vYW0uYzoxODEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGx5aW5nOiAlLipzIgogbXNnc3RyICJBcHBsaWNhdGlvbiBkZSAgJS4qcyIKIAotIzogYnVpbHRpbi9hbS5jOjE3ODEKKyM6IGJ1aWx0aW4vYW0uYzoxNzYxCiBtc2dpZCAiTm8gY2hhbmdlcyAtLSBQYXRjaCBhbHJlYWR5IGFwcGxpZWQuIgogbXNnc3RyICJQYXMgZGUgY2hhbmdlbWVudCAtLSBQYXRjaCBkw6lqw6AgYXBwbGlxdcOpLiIKIAotIzogYnVpbHRpbi9hbS5jOjE3ODcKKyM6IGJ1aWx0aW4vYW0uYzoxNzY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlBhdGNoIGZhaWxlZCBhdCAlcyAlLipzIgogbXNnc3RyICJsZSBwYXRjaCBhIMOpY2hvdcOpIMOgICVzICUuKnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzkxCi1tc2dpZCAiVXNlICdnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2gnIHRvIHNlZSB0aGUgZmFpbGVkIHBhdGNoIgotbXNnc3RyICIiCi0iVXRpbGlzZXogJ2dpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaCcgcG91ciB2aXN1YWxpc2VyIGxlIHBhdGNoIGVuIMOpY2hlYyIKKyM6IGJ1aWx0aW4vYW0uYzoxNzcxCittc2dpZCAiVXNlICdnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2g9ZGlmZicgdG8gc2VlIHRoZSBmYWlsZWQgcGF0Y2giCittc2dzdHIgIlV0aWxpc2V6ICdnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2g9ZGlmZicgcG91ciB2aXN1YWxpc2VyIGxlIHBhdGNoIGVuIMOpY2hlYyIKIAotIzogYnVpbHRpbi9hbS5jOjE4MzUKKyM6IGJ1aWx0aW4vYW0uYzoxODE1CiBtc2dpZCAiIgogIk5vIGNoYW5nZXMgLSBkaWQgeW91IGZvcmdldCB0byB1c2UgJ2dpdCBhZGQnP1xuIgogIklmIHRoZXJlIGlzIG5vdGhpbmcgbGVmdCB0byBzdGFnZSwgY2hhbmNlcyBhcmUgdGhhdCBzb21ldGhpbmcgZWxzZVxuIgpAQCAtNzY4MSw3ICs5OTUwLDcgQEAKICJpbnRyb2R1aXQgbGVzIG3Dqm1lcyBjaGFuZ2VtZW50cyA7IHZvdXMgcG91cnJpZXogYXZvaXIgZW52aWUgZGUgc2F1dGVyIGNlICIKICJwYXRjaC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxODQyCisjOiBidWlsdGluL2FtLmM6MTgyMgogbXNnaWQgIiIKICJZb3Ugc3RpbGwgaGF2ZSB1bm1lcmdlZCBwYXRocyBpbiB5b3VyIGluZGV4LlxuIgogIllvdSBzaG91bGQgJ2dpdCBhZGQnIGVhY2ggZmlsZSB3aXRoIHJlc29sdmVkIGNvbmZsaWN0cyB0byBtYXJrIHRoZW0gYXMgIgpAQCAtNzY5NCwxNyArOTk2MywxNyBAQAogIlZvdXMgcG91dmV6IGxhbmNlciAnZ2l0IHJtJyBzdXIgdW4gZmljaGllciBcInN1cHByaW3DqSBwYXIgZXV4XCIgcG91ciAiCiAiYWNjZXB0ZXIgc29uIMOpdGF0LiIKIAotIzogYnVpbHRpbi9hbS5jOjE5NDkgYnVpbHRpbi9hbS5jOjE5NTMgYnVpbHRpbi9hbS5jOjE5NjUgYnVpbHRpbi9yZXNldC5jOjMyOAotIzogYnVpbHRpbi9yZXNldC5jOjMzNgorIzogYnVpbHRpbi9hbS5jOjE5MjkgYnVpbHRpbi9hbS5jOjE5MzMgYnVpbHRpbi9hbS5jOjE5NDUgYnVpbHRpbi9yZXNldC5jOjM0NgorIzogYnVpbHRpbi9yZXNldC5jOjM1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcycuIgogbXNnc3RyICJJbXBvc3NpYmxlIGQnYW5hbHlzZXIgbCdvYmpldCAnJXMnLiIKIAotIzogYnVpbHRpbi9hbS5jOjIwMDEKKyM6IGJ1aWx0aW4vYW0uYzoxOTgxCiBtc2dpZCAiZmFpbGVkIHRvIGNsZWFuIGluZGV4IgogbXNnc3RyICLDqWNoZWMgZHUgbmV0dG95YWdlIGRlIGwnaW5kZXgiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMDM2CisjOiBidWlsdGluL2FtLmM6MjAyNQogbXNnaWQgIiIKICJZb3Ugc2VlbSB0byBoYXZlIG1vdmVkIEhFQUQgc2luY2UgdGhlIGxhc3QgJ2FtJyBmYWlsdXJlLlxuIgogIk5vdCByZXdpbmRpbmcgdG8gT1JJR19IRUFEIgpAQCAtNzcxMiwxNDUgKzk5ODEsMTU1IEBACiAiVm91cyBzZW1ibGV6IGF2b2lyIGTDqXBsYWPDqSBsYSBIRUFEIGRlcHVpcyBsZSBkZXJuaWVyIMOpY2hlYyBkZSAnYW0nLlxuIgogIlBhcyBkZSByZXRvdXIgw6AgT1JJR19IRUFEIgogCi0jOiBidWlsdGluL2FtLmM6MjEyOQorIzogYnVpbHRpbi9hbS5jOjIxMzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgLS1wYXRjaC1mb3JtYXQ6ICVzIgogbXNnc3RyICJWYWxldXIgaW52YWxpZGUgcG91ciAtLXBhdGNoLWZvcm1hdCA6ICVzIgogCi0jOiBidWlsdGluL2FtLmM6MjE2NQorIzogYnVpbHRpbi9hbS5jOjIxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgLS1zaG93LWN1cnJlbnQtcGF0Y2g6ICVzIgorbXNnc3RyICJWYWxldXIgaW52YWxpZGUgcG91ciAtLXNob3ctY3VycmVudC1wYXRjaCA6ICVzIgorCisjOiBidWlsdGluL2FtLmM6MjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLXNob3ctY3VycmVudC1wYXRjaD0lcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLXNob3ctY3VycmVudC1wYXRjaD0lcyIKK21zZ3N0ciAiLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMgZXN0IGluY29tcGF0aWJsZSBhdmVjIC0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIgorCisjOiBidWlsdGluL2FtLmM6MjIwNwogbXNnaWQgImdpdCBhbSBbPG9wdGlvbnM+XSBbKDxtYm94PiB8IDxNYWlsZGlyPikuLi5dIgogbXNnc3RyICJnaXQgYW0gWzxvcHRpb25zPl0gWyg8bWJveD4gfCA8TWFpbGRpcj4pLi4uXSIKIAotIzogYnVpbHRpbi9hbS5jOjIxNjYKKyM6IGJ1aWx0aW4vYW0uYzoyMjA4CiBtc2dpZCAiZ2l0IGFtIFs8b3B0aW9ucz5dICgtLWNvbnRpbnVlIHwgLS1za2lwIHwgLS1hYm9ydCkiCi1tc2dzdHIgImdpdCBhbSBbPG9wdGlvbnM+XSAoLS1jb250aW51ZSB8IC0tcXVpdCB8IC0tYWJvcnQpIgorbXNnc3RyICJnaXQgYW0gWzxvcHRpb25zPl0gKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0KSIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzIKKyM6IGJ1aWx0aW4vYW0uYzoyMjE0CiBtc2dpZCAicnVuIGludGVyYWN0aXZlbHkiCiBtc2dzdHIgImV4w6ljdXRpb24gaW50ZXJhY3RpdmUiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc0CisjOiBidWlsdGluL2FtLmM6MjIxNgogbXNnaWQgImhpc3RvcmljYWwgb3B0aW9uIC0tIG5vLW9wIgogbXNnc3RyICJvcHRpb24gaGlzdG9yaXF1ZSAtLSBuby1vcCIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzYKKyM6IGJ1aWx0aW4vYW0uYzoyMjE4CiBtc2dpZCAiYWxsb3cgZmFsbCBiYWNrIG9uIDN3YXkgbWVyZ2luZyBpZiBuZWVkZWQiCiBtc2dzdHIgInBlcm1ldHRyZSBkZSByZXZlbmlyIMOgIHVuZSBmdXNpb24gw6AgMyBwb2ludHMgc2kgbsOpY2Vzc2FpcmUiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc3IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU4Ci0jOiBidWlsdGluL3JlcGFjay5jOjMwNgorIzogYnVpbHRpbi9hbS5jOjIyMTkgYnVpbHRpbi9pbml0LWRiLmM6NDk0IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA0IGJ1aWx0aW4vc3Rhc2guYzo4MTIKIG1zZ2lkICJiZSBxdWlldCIKIG1zZ3N0ciAiw6p0cmUgc2lsZW5jaWV1eCIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzkKKyM6IGJ1aWx0aW4vYW0uYzoyMjIxCiBtc2dpZCAiYWRkIGEgU2lnbmVkLW9mZi1ieSBsaW5lIHRvIHRoZSBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAiYWpvdXRlciB1bmUgbGlnbmUgU2lnbmVkLW9mZi1ieSBhdSBtZXNzYWdlIGRlIHZhbGlkYXRpb24iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTgyCisjOiBidWlsdGluL2FtLmM6MjIyNAogbXNnaWQgInJlY29kZSBpbnRvIHV0ZjggKGRlZmF1bHQpIgogbXNnc3RyICJyZWNvZGVyIGVuIHV0Zi04IChwYXIgZMOpZmF1dCkiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTg0CisjOiBidWlsdGluL2FtLmM6MjIyNgogbXNnaWQgInBhc3MgLWsgZmxhZyB0byBnaXQtbWFpbGluZm8iCiBtc2dzdHIgInBhc3NlciBsJ29wdGlvbiAtayDDoCBnaXQtbWFpbGluZm8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTg2CisjOiBidWlsdGluL2FtLmM6MjIyOAogbXNnaWQgInBhc3MgLWIgZmxhZyB0byBnaXQtbWFpbGluZm8iCiBtc2dzdHIgInBhc3NlciBsJ29wdGlvbiAtYiDDoCBnaXQtbWFpbGluZm8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTg4CisjOiBidWlsdGluL2FtLmM6MjIzMAogbXNnaWQgInBhc3MgLW0gZmxhZyB0byBnaXQtbWFpbGluZm8iCiBtc2dzdHIgInBhc3NlciBsJ29wdGlvbiAtbSDDoCBnaXQtbWFpbGluZm8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTkwCisjOiBidWlsdGluL2FtLmM6MjIzMgogbXNnaWQgInBhc3MgLS1rZWVwLWNyIGZsYWcgdG8gZ2l0LW1haWxzcGxpdCBmb3IgbWJveCBmb3JtYXQiCiBtc2dzdHIgInBhc3NlciBsJ29wdGlvbiAtLWtlZXAtY3Igw6AgZ2l0LW1haWxzcGxpdCBmcG91ciBsZSBmb3JtYXQgbWJveCIKIAotIzogYnVpbHRpbi9hbS5jOjIxOTMKKyM6IGJ1aWx0aW4vYW0uYzoyMjM1CiBtc2dpZCAiZG8gbm90IHBhc3MgLS1rZWVwLWNyIGZsYWcgdG8gZ2l0LW1haWxzcGxpdCBpbmRlcGVuZGVudCBvZiBhbS5rZWVwY3IiCiBtc2dzdHIgIiIKICJuZSBwYXMgcGFzc2VyIGwnb3B0aW9uIC0ta2VlcC1jciDDoCBnaXQtbWFpbHNwbGl0IGluZMOpcGVuZGFtbWVudCBkZSBhbS5rZWVwY3IiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTk2CisjOiBidWlsdGluL2FtLmM6MjIzOAogbXNnaWQgInN0cmlwIGV2ZXJ5dGhpbmcgYmVmb3JlIGEgc2Npc3NvcnMgbGluZSIKIG1zZ3N0ciAicmV0aXJlciB0b3V0IGxlIGNvbnRlbnUgYXZhbnQgbGEgbGlnbmUgZGVzIGNpc2VhdXgiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTk4IGJ1aWx0aW4vYW0uYzoyMjAxIGJ1aWx0aW4vYW0uYzoyMjA0IGJ1aWx0aW4vYW0uYzoyMjA3Ci0jOiBidWlsdGluL2FtLmM6MjIxMCBidWlsdGluL2FtLmM6MjIxMyBidWlsdGluL2FtLmM6MjIxNiBidWlsdGluL2FtLmM6MjIxOQotIzogYnVpbHRpbi9hbS5jOjIyMjUKKyM6IGJ1aWx0aW4vYW0uYzoyMjQwIGJ1aWx0aW4vYW0uYzoyMjQzIGJ1aWx0aW4vYW0uYzoyMjQ2IGJ1aWx0aW4vYW0uYzoyMjQ5CisjOiBidWlsdGluL2FtLmM6MjI1MiBidWlsdGluL2FtLmM6MjI1NSBidWlsdGluL2FtLmM6MjI1OCBidWlsdGluL2FtLmM6MjI2MQorIzogYnVpbHRpbi9hbS5jOjIyNjcKIG1zZ2lkICJwYXNzIGl0IHRocm91Z2ggZ2l0LWFwcGx5IgogbXNnc3RyICJsZSBwYXNzZXIganVzcXUnw6AgZ2l0LWFwcGx5IgogCi0jOiBidWlsdGluL2FtLmM6MjIxNSBidWlsdGluL2NvbW1pdC5jOjEzNDAgYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcxCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzQgYnVpbHRpbi9ncmVwLmM6ODY4IGJ1aWx0aW4vbWVyZ2UuYzoyMzkKLSM6IGJ1aWx0aW4vcHVsbC5jOjE1MSBidWlsdGluL3B1bGwuYzoyMDkgYnVpbHRpbi9yZWJhc2UuYzo4NTQKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE3IGJ1aWx0aW4vcmVwYWNrLmM6MzIxIGJ1aWx0aW4vcmVwYWNrLmM6MzIzCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUxIGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzEgYnVpbHRpbi90YWcuYzozODYKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNDQgcGFyc2Utb3B0aW9ucy5oOjE0NiBwYXJzZS1vcHRpb25zLmg6MjY4CisjOiBidWlsdGluL2FtLmM6MjI1NyBidWlsdGluL2NvbW1pdC5jOjEzOTEgYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcwCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzMgYnVpbHRpbi9ncmVwLmM6ODcxIGJ1aWx0aW4vbWVyZ2UuYzoyNTAKKyM6IGJ1aWx0aW4vcHVsbC5jOjE0MCBidWlsdGluL3B1bGwuYzoxOTkgYnVpbHRpbi9yZWJhc2UuYzoxNTA1CisjOiBidWlsdGluL3JlcGFjay5jOjMxNSBidWlsdGluL3JlcGFjay5jOjMxOSBidWlsdGluL3JlcGFjay5jOjMyMQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MCBidWlsdGluL3Nob3ctcmVmLmM6MTcyIGJ1aWx0aW4vdGFnLmM6NDAzCisjOiBwYXJzZS1vcHRpb25zLmg6MTU0IHBhcnNlLW9wdGlvbnMuaDoxNzUgcGFyc2Utb3B0aW9ucy5oOjMxNgogbXNnaWQgIm4iCiBtc2dzdHIgIm4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjIxIGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0NCBidWlsdGluL3RhZy5jOjQyMiBidWlsdGluL3ZlcmlmeS10YWcuYzozOQorIzogYnVpbHRpbi9hbS5jOjIyNjMgYnVpbHRpbi9icmFuY2guYzo2NjEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU2IGJ1aWx0aW4vdGFnLmM6NDM3IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM4CiBtc2dpZCAiZm9ybWF0IgogbXNnc3RyICJmb3JtYXQiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjIyCisjOiBidWlsdGluL2FtLmM6MjI2NAogbXNnaWQgImZvcm1hdCB0aGUgcGF0Y2goZXMpIGFyZSBpbiIKIG1zZ3N0ciAiZm9ybWF0IGRlIHByw6lzZW50YXRpb24gZGVzIHBhdGNocyIKIAotIzogYnVpbHRpbi9hbS5jOjIyMjgKKyM6IGJ1aWx0aW4vYW0uYzoyMjcwCiBtc2dpZCAib3ZlcnJpZGUgZXJyb3IgbWVzc2FnZSB3aGVuIHBhdGNoIGZhaWx1cmUgb2NjdXJzIgogbXNnc3RyICJzdXJjaGFyZ2VyIGxlIG1lc3NhZ2UgZCdlcnJldXIgbG9ycyBkJ3VuIMOpY2hlYyBkJ2FwcGxpY2F0aW9uIGRlIHBhdGNoIgogCi0jOiBidWlsdGluL2FtLmM6MjIzMAorIzogYnVpbHRpbi9hbS5jOjIyNzIKIG1zZ2lkICJjb250aW51ZSBhcHBseWluZyBwYXRjaGVzIGFmdGVyIHJlc29sdmluZyBhIGNvbmZsaWN0IgogbXNnc3RyICJjb250aW51ZXIgw6AgYXBwbGlxdWVyIGxlcyBwYXRjaHMgYXByw6hzIHLDqXNvbHV0aW9uIGQndW4gY29uZmxpdCIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzMKKyM6IGJ1aWx0aW4vYW0uYzoyMjc1CiBtc2dpZCAic3lub255bXMgZm9yIC0tY29udGludWUiCiBtc2dzdHIgInN5bm9ueW1lcyBkZSAtLWNvbnRpbnVlIgogCi0jOiBidWlsdGluL2FtLmM6MjIzNgorIzogYnVpbHRpbi9hbS5jOjIyNzgKIG1zZ2lkICJza2lwIHRoZSBjdXJyZW50IHBhdGNoIgogbXNnc3RyICJzYXV0ZXIgbGUgcGF0Y2ggY291cmFudCIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzkKKyM6IGJ1aWx0aW4vYW0uYzoyMjgxCiBtc2dpZCAicmVzdG9yZSB0aGUgb3JpZ2luYWwgYnJhbmNoIGFuZCBhYm9ydCB0aGUgcGF0Y2hpbmcgb3BlcmF0aW9uLiIKIG1zZ3N0ciAiIgogInJlc3RhdXJlciBsYSBicmFuY2hlIG9yaWdpbmFsZSBldCBhYmFuZG9ubmVyIGxlcyBhcHBsaWNhdGlvbnMgZGUgcGF0Y2guIgogCi0jOiBidWlsdGluL2FtLmM6MjI0MgorIzogYnVpbHRpbi9hbS5jOjIyODQKIG1zZ2lkICJhYm9ydCB0aGUgcGF0Y2hpbmcgb3BlcmF0aW9uIGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMuIgogbXNnc3RyICJhYmFuZG9ubmUgbCdvcMOpcmF0aW9uIGRlIHBhdGNoIG1haXMgZ2FyZGUgSEVBRCBvw7kgaWwgZXN0LiIKIAotIzogYnVpbHRpbi9hbS5jOjIyNDUKLW1zZ2lkICJzaG93IHRoZSBwYXRjaCBiZWluZyBhcHBsaWVkLiIKLW1zZ3N0ciAiYWZmaWNoZXIgbGUgcGF0Y2ggZW4gY291cnMgZCdhcHBsaWNhdGlvbi4iCisjOiBidWlsdGluL2FtLmM6MjI4OAorbXNnaWQgInNob3cgdGhlIHBhdGNoIGJlaW5nIGFwcGxpZWQiCittc2dzdHIgImFmZmljaGVyIGxlIHBhdGNoIGVuIGNvdXJzIGQnYXBwbGljYXRpb24iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjQ5CisjOiBidWlsdGluL2FtLmM6MjI5MwogbXNnaWQgImxpZSBhYm91dCBjb21taXR0ZXIgZGF0ZSIKIG1zZ3N0ciAibWVudGlyIHN1ciBsYSBkYXRlIGRlIHZhbGlkYXRpb24iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjUxCisjOiBidWlsdGluL2FtLmM6MjI5NQogbXNnaWQgInVzZSBjdXJyZW50IHRpbWVzdGFtcCBmb3IgYXV0aG9yIGRhdGUiCiBtc2dzdHIgInV0aWxpc2VyIGwnaG9yb2RhdGFnZSBhY3R1ZWwgcG91ciBsYSBkYXRlIGQnYXV0ZXVyIgogCi0jOiBidWlsdGluL2FtLmM6MjI1MyBidWlsdGluL2NvbW1pdC5jOjE0ODMgYnVpbHRpbi9tZXJnZS5jOjI3MwotIzogYnVpbHRpbi9wdWxsLmM6MTg0IGJ1aWx0aW4vcmViYXNlLmM6ODk4IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MwotIzogYnVpbHRpbi9yZXZlcnQuYzoxMTMgYnVpbHRpbi90YWcuYzo0MDIKKyM6IGJ1aWx0aW4vYW0uYzoyMjk3IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMjAgYnVpbHRpbi9jb21taXQuYzoxNTEyCisjOiBidWlsdGluL21lcmdlLmM6Mjg3IGJ1aWx0aW4vcHVsbC5jOjE3NCBidWlsdGluL3JlYmFzZS5jOjUxNworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTU2IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE3IGJ1aWx0aW4vdGFnLmM6NDE4CiBtc2dpZCAia2V5LWlkIgogbXNnc3RyICJpZC1jbMOpIgogCi0jOiBidWlsdGluL2FtLmM6MjI1NCBidWlsdGluL3JlYmFzZS5jOjg5OSBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODQKKyM6IGJ1aWx0aW4vYW0uYzoyMjk4IGJ1aWx0aW4vcmViYXNlLmM6NTE4IGJ1aWx0aW4vcmViYXNlLmM6MTU1NwogbXNnaWQgIkdQRy1zaWduIGNvbW1pdHMiCiBtc2dzdHIgInNpZ25lciBsZXMgY29tbWl0cyBhdmVjIEdQRyIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTcKKyM6IGJ1aWx0aW4vYW0uYzoyMzAxCiBtc2dpZCAiKGludGVybmFsIHVzZSBmb3IgZ2l0LXJlYmFzZSkiCiBtc2dzdHIgIih1dGlsaXNhdGlvbiBpbnRlcm5lIHBvdXIgZ2l0LXJlYmFzZSkiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjc1CisjOiBidWlsdGluL2FtLmM6MjMxOQogbXNnaWQgIiIKICJUaGUgLWIvLS1iaW5hcnkgb3B0aW9uIGhhcyBiZWVuIGEgbm8tb3AgZm9yIGxvbmcgdGltZSwgYW5kXG4iCiAiaXQgd2lsbCBiZSByZW1vdmVkLiBQbGVhc2UgZG8gbm90IHVzZSBpdCBhbnltb3JlLiIKQEAgLTc4NTgsMTcgKzEwMTM3LDE3IEBACiAiTCdvcHRpb24gLWIvLS1iaW5hcnkgbmUgZmFpdCBwbHVzIHJpZW4gZGVwdWlzIGxvbmd0ZW1wcyxcbiIKICJldCBlbGxlIHNlcmEgc3VwcHJpbcOpZS4gVmV1aWxsZXogbmUgcGx1cyBsJ3V0aWxpc2VyLiIKIAotIzogYnVpbHRpbi9hbS5jOjIyODIKKyM6IGJ1aWx0aW4vYW0uYzoyMzI2CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICLDqWNoZWMgw6AgbGEgbGVjdHVyZSBkZSBsJ2luZGV4IgogCi0jOiBidWlsdGluL2FtLmM6MjI5NworIzogYnVpbHRpbi9hbS5jOjIzNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJldmlvdXMgcmViYXNlIGRpcmVjdG9yeSAlcyBzdGlsbCBleGlzdHMgYnV0IG1ib3ggZ2l2ZW4uIgogbXNnc3RyICIiCiAibGUgcsOpcGVydG9pcmUgcHLDqWPDqWRlbnQgZGUgcmViYXNhZ2UgJXMgZXhpc3RlIHRvdWpvdXJzIG1haXMgbWJveCBkb25uw6llLiIKIAotIzogYnVpbHRpbi9hbS5jOjIzMjEKKyM6IGJ1aWx0aW4vYW0uYzoyMzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdHJheSAlcyBkaXJlY3RvcnkgZm91bmQuXG4iCkBAIC03ODc3LDEyICsxMDE1NiwxNiBAQAogIlLDqXBlcnRvaXJlIGFiYW5kb25uw6kgJXMgdHJvdXbDqS5cbiIKICJVdGlsaXNleiBcImdpdCBhbSAtLWFib3J0XCIgcG91ciBsZSBzdXBwcmltZXIuIgogCi0jOiBidWlsdGluL2FtLmM6MjMyNworIzogYnVpbHRpbi9hbS5jOjIzNzEKIG1zZ2lkICJSZXNvbHZlIG9wZXJhdGlvbiBub3QgaW4gcHJvZ3Jlc3MsIHdlIGFyZSBub3QgcmVzdW1pbmcuIgogbXNnc3RyICIiCiAiUGFzIGRlIHLDqXNvbHV0aW9uIGRlIGwnb3DDqXJhdGlvbiBlbiBjb3Vycywgbm91cyBuZSBzb21tZXMgcGFzIGRhbnMgdW5lICIKICJyZXByaXNlLiIKIAorIzogYnVpbHRpbi9hbS5jOjIzODEKK21zZ2lkICJpbnRlcmFjdGl2ZSBtb2RlIHJlcXVpcmVzIHBhdGNoZXMgb24gdGhlIGNvbW1hbmQgbGluZSIKK21zZ3N0ciAibGUgbW9kZSBpbnRlcmFjdGlmIHJlcXVpZXJ0IGRlcyBydXN0aW5lcyBzdXIgbGEgbGlnbmUgZGUgY29tbWFuZGUiCisKICM6IGJ1aWx0aW4vYXBwbHkuYzo4CiBtc2dpZCAiZ2l0IGFwcGx5IFs8b3B0aW9ucz5dIFs8cGF0Y2g+Li4uXSIKIG1zZ3N0ciAiZ2l0IGFwcGx5IFs8b3B0aW9ucz5dIFs8cGF0Y2g+Li4uXSIKQEAgLTc5MDAsODYgKzEwMTgzLDMwMyBAQAogbXNnaWQgImdpdCBhcmNoaXZlOiBSZW1vdGUgd2l0aCBubyBVUkwiCiBtc2dzdHIgImdpdCBhcmNoaXZlIDogRMOpcMO0dCBkaXN0YW50IHNhbnMgVVJMIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo1OAorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjEKIG1zZ2lkICJnaXQgYXJjaGl2ZTogZXhwZWN0ZWQgQUNLL05BSywgZ290IGEgZmx1c2ggcGFja2V0IgogbXNnc3RyICJnaXQgYXJjaGl2ZSA6IEFDSy9OQUNLIGF0dGVuZHUsIHBhcXVldCBkZSBuZXR0b3lhZ2UgcmXDp3UiCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjYxCisjOiBidWlsdGluL2FyY2hpdmUuYzo2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXJjaGl2ZTogTkFDSyAlcyIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmUgOiBOQUNLICVzIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2NAorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjUKIG1zZ2lkICJnaXQgYXJjaGl2ZTogcHJvdG9jb2wgZXJyb3IiCiBtc2dzdHIgImdpdCBhcmNoaXZlIDogZXJyZXVyIGRlIHByb3RvY29sZSIKIAotIzogYnVpbHRpbi9hcmNoaXZlLmM6NjgKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY5CiBtc2dpZCAiZ2l0IGFyY2hpdmU6IGV4cGVjdGVkIGEgZmx1c2giCiBtc2dzdHIgImdpdCBhcmNoaXZlIDogdmlkYWdlIGF0dGVuZHUiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyCiBtc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tbmV4dC1hbGwgWy0tbm8tY2hlY2tvdXRdIgogbXNnc3RyICJnaXQgYmlzZWN0IC0taGVscGVyIC0tbmV4dC1hbGwgWy0tbm8tY2hlY2tvdXRdIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTMKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMwogbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDxiYWRfdGVybT4gPGdvb2RfdGVybT4iCiBtc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDx0ZXJtZS1wb3VyLW1hdXZhaXM+IDx0ZXJtZS1wb3VyLWJvbj4iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI0CiBtc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNsZWFuLXN0YXRlIgogbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2xlYW4tc3RhdGUiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo0NgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI1Cittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXJlc2V0IFs8Y29tbWl0Pl0iCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1yZXNldCBbPGNvbW1pdD5dIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjYKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPHN0YXRlPiA8cmV2aXNpb24+IDxnb29kX3Rlcm0+ICIKKyI8YmFkX3Rlcm0+IgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPMOpdGF0PiA8csOpdmlzaW9uPiA8dGVybWUtcG91ci0iCisiYm9uPiA8dGVybWUtcG91ci1tYXV2YWlzPiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI3Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDxjb21tYW5kPiA8Z29vZF90ZXJtPiAiCisiPGJhZF90ZXJtPiIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDxjb21tYW5kZT4gPHRlcm1lLXBvdXItYm9uPiAiCisiPHRlcm1lLXBvdXItbWF1dmFpcz4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOAorbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrIDxnb29kX3Rlcm0+IDxiYWRfdGVybT4gWzx0ZXJtPl0iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtbmV4dC1jaGVjayA8dGVybWUtcG91ci1ib24+IDx0ZXJtZS1wb3VyLW1hdXZhaXM+ICIKKyJbPHRlcm0+XSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI5Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC10ZXJtcyBbLS10ZXJtLWdvb2QgfCAtLXRlcm0tb2xkIHwgLS10ZXJtLWJhZCB8IC0tIgorInRlcm0tbmV3XSIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC10ZXJtcyBbLS10ZXJtLWdvb2QgfCAtLXRlcm0tb2xkIHwgLS10ZXJtLWJhZCB8IC0tIgorInRlcm0tbmV3XSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMwCittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1zdGFydCBbLS10ZXJtLXtvbGQsZ29vZH09PHRlcm0+IC0tdGVybS17bmV3LGJhZH0iCisiPTx0ZXJtPl1bLS1uby1jaGVja291dF0gWzxiYWQ+IFs8Z29vZD4uLi5dXSBbLS1dIFs8cGF0aHM+Li4uXSIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1zdGFydCBbLS10ZXJtLXtvbGQsZ29vZH09PHRlcm1lPiAtLXRlcm0te25ldyxiYWR9IgorIj08dGVybWU+XVstLW5vLWNoZWNrb3V0XSBbPG1hdXZhaXM+IFs8Ym9uPi4uLl1dIFstLV0gWzxjaGVtaW5zPi4uLl0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo4NgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRlcm0iCiBtc2dzdHIgIiclcycgbidlc3QgcGFzIHVuIHRlcm1lIHZhbGlkZSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUwCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3QgdXNlIHRoZSBidWlsdGluIGNvbW1hbmQgJyVzJyBhcyBhIHRlcm0iCiBtc2dzdHIgImltcG9zc2libGUgZCd1dGlsaXNlciBsYSBjb21tYW5kZSBpbmNsdXNlICclcycgY29tbWUgdGVybWUiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCBjaGFuZ2UgdGhlIG1lYW5pbmcgb2YgdGhlIHRlcm0gJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBtb2RpZmllciBsYSBzaWduaWZpY2F0aW9uIGR1IHRlcm1lICclcyciCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3MQorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjExMQogbXNnaWQgInBsZWFzZSB1c2UgdHdvIGRpZmZlcmVudCB0ZXJtcyIKIG1zZ3N0ciAidmV1aWxsZXogdXRpbGlzZXIgZGV1eCB0ZXJtZXMgZGlmZsOpcmVudHMiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3OAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjExOAogbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBmaWxlIEJJU0VDVF9URVJNUyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSBmaWNoaWVyIEJJU0VDVF9URVJNUyIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyMAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJXZSBhcmUgbm90IGJpc2VjdGluZy5cbiIKK21zZ3N0ciAiUGFzIGRlIGJpc3NlY3Rpb24gZW4gY291cnMuXG4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBjb21taXQiCittc2dzdHIgIiclcycgbidlc3QgcGFzIHVuIGNvbW1pdCB2YWxpZGUiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvdWxkIG5vdCBjaGVjayBvdXQgb3JpZ2luYWwgSEVBRCAnJXMnLiBUcnkgJ2dpdCBiaXNlY3QgcmVzZXQgPGNvbW1pdD4nLiIKK21zZ3N0ciAiIgorIsOJY2hlYyBkJ2V4dHJhY3Rpb24gZGUgbGEgSEVBRCBkJ29yaWdpbmUgJyVzJy4gRXNzYXlleiAnZ2l0IGJpc2VjdCByZXNldCAiCisiPGNvbW1pdD4nLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiTWF1dmFpcyBhcmd1bWVudCBwb3VyIGJpc2VjdF93cml0ZcKgOiAlcyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBnZXQgdGhlIG9pZCBvZiB0aGUgcmV2ICclcyciCittc2dzdHIgImltcG9zc2libGUgZCdvYnRlbmlyIGwnb2lkIGRlIGxhIHLDqXZpc2lvbiAnJXMnIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gdGhlIGZpbGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSBmaWNoaWVyICclcyciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBjb21tYW5kOiB5b3UncmUgY3VycmVudGx5IGluIGEgJXMvJXMgYmlzZWN0IgorbXNnc3RyICJDb21tYW5kZSBpbnZhbGlkZcKgOiB2b3VzIMOqdGVzIGFjdHVlbGxlbWVudCBkYW5zIHVuZSBiaXNzZWN0aW9uICVzLyVzIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgbmVlZCB0byBnaXZlIG1lIGF0IGxlYXN0IG9uZSAlcyBhbmQgJXMgcmV2aXNpb24uXG4iCisiWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICVzXCIgYW5kIFwiZ2l0IGJpc2VjdCAlc1wiIGZvciB0aGF0LiIKK21zZ3N0ciAiIgorIlZvdXMgZGV2ZXogbWUgZG9ubmVyIGF1IG1vaW5zIHVuZSByw6l2aXNpb24gJXMgZXQgdW5lIHLDqXZpc2lvbiAlcy5cbiIKKyJWb3VzIHBvdXZleiB1dGlsaXNlciBcImdpdCBiaXNlY3QgJXNcIiBldCBcImdpdCBiaXNlY3QgJXNcIiBwb3VyIGNlbGEuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKKyJZb3UgdGhlbiBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICVzIGFuZCAlcyByZXZpc2lvbi5cbiIKKyJZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJXNcIiBhbmQgXCJnaXQgYmlzZWN0ICVzXCIgZm9yIHRoYXQuIgorbXNnc3RyICIiCisiVm91cyBkZXZleiBkw6ltYXJyZXIgYXZlYyBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKKyJQdWlzIHZvdXMgZGV2ZXogbWUgZG9ubmVyIGF1IG1vaW5zIHVuZSByw6l2aXNpb24gJXMgZXQgdW5lIHLDqXZpc2lvbiAlcy5cbiIKKyJWb3VzIHBvdXZleiB1dGlsaXNlciBcImdpdCBiaXNlY3QgJXNcIiBldCBcImdpdCBiaXNlY3QgJXNcIiBwb3VyIGNlbGEuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgImJpc2VjdGluZyBvbmx5IHdpdGggYSAlcyBjb21taXQiCittc2dzdHIgIkF0dGVudGlvbiA6IGJpc3NlY3Rpb24gYXZlYyBzZXVsZW1lbnQgdW5lIHZhbGlkYXRpb24gJXMiCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbWV0gYW5kIFtuXSBpbiB5b3VyCisjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIy4KKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMTgKK21zZ2lkICJBcmUgeW91IHN1cmUgW1kvbl0/ICIKK21zZ3N0ciAiQ29uZmlybWV6LXZvdXMgW1kvbl0gPyAiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozNzkKK21zZ2lkICJubyB0ZXJtcyBkZWZpbmVkIgorbXNnc3RyICJhdWN1biB0ZXJtZSBkw6lmaW5pIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGN1cnJlbnQgdGVybXMgYXJlICVzIGZvciB0aGUgb2xkIHN0YXRlXG4iCisiYW5kICVzIGZvciB0aGUgbmV3IHN0YXRlLlxuIgorbXNnc3RyICIiCisiVm9zIHRlcm1lcyBhY3R1ZWxzIHNvbnQgJXMgcG91ciBsJ8OpdGF0IGFuY2llblxuIgorImV0ICVzIHBvdXIgbGUgbm91dmVsIMOpdGF0LlxuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIGFyZ3VtZW50ICVzIGZvciAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCisiU3VwcG9ydGVkIG9wdGlvbnMgYXJlOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGFuZCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgorbXNnc3RyICIiCisiYXJndW1lbnQgaW52YWxpZGUgJXMgcG91ciAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCisiTGVzIG9wdGlvbnMgc3VwcG9ydMOpZXMgc29udMKgOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGV0IC0tdGVybS1iYWR8LS10ZXJtLSIKKyJuZXcuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDc4CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBvcHRpb246ICclcyciCittc2dzdHIgIm9wdGlvbiBub24gcmVjb25udWXCoDogJXMiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYSB2YWxpZCByZXZpc2lvbiIKK21zZ3N0ciAiJyVzJyBuZSBzZW1ibGUgw6p0cmUgdW5lIHLDqXZpc2lvbiB2YWxpZGUiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MTQKK21zZ2lkICJiYWQgSEVBRCAtIEkgbmVlZCBhIEhFQUQiCittc2dzdHIgIm1hdXZhaXNlIEhFQUQgLSBqJ2FpIGJlc29pbiBkJ3VuZSBIRUFEIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTI5CisjLCBjLWZvcm1hdAorbXNnaWQgImNoZWNraW5nIG91dCAnJXMnIGZhaWxlZC4gVHJ5ICdnaXQgYmlzZWN0IHN0YXJ0IDx2YWxpZC1icmFuY2g+Jy4iCittc2dzdHIgIiIKKyJMJ2V4dHJhY3Rpb24gZGUgJyVzJyBhIMOpY2hvdcOpLiBFc3NheWV6ICdnaXQgYmlzZWN0IHN0YXJ0IDxicmFuY2hlLXZhbGlkZT4nLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU1MAorbXNnaWQgIndvbid0IGJpc2VjdCBvbiBjZy1zZWVrJ2VkIHRyZWUiCittc2dzdHIgInJlZnVzIGRlIGJpc3NlY3RlciBzdXIgdW4gYXJicmUgJ2NnLXNlZWtlZCciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NTMKK21zZ2lkICJiYWQgSEVBRCAtIHN0cmFuZ2Ugc3ltYm9saWMgcmVmIgorbXNnc3RyICJtYXV2YWlzZSBIRUFEIC0gcsOpZsOpcmVuY2Ugc3ltYm9saXF1ZSBkb3V0ZXVzZSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU3NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZjogJyVzJyIKK21zZ3N0ciAicsOpZmVyZW5jZSBpbnZhbGlkZcKgOiAnJXMnIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjMzCiBtc2dpZCAicGVyZm9ybSAnZ2l0IGJpc2VjdCBuZXh0JyIKIG1zZ3N0ciAiZWZmZWN0dWVyICdnaXQgYmlzZWN0IG5leHQnIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTIyCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjM1CiBtc2dpZCAid3JpdGUgdGhlIHRlcm1zIHRvIC5naXQvQklTRUNUX1RFUk1TIgogbXNnc3RyICLDqWNyaXJlIGxlcyB0ZXJtZXMgZGFucyAuZ2l0L0JJU0VDVF9URVJNUyIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyNAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzNwogbXNnaWQgImNsZWFudXAgdGhlIGJpc2VjdGlvbiBzdGF0ZSIKIG1zZ3N0ciAidsOpcmlmaWVyIGwnw6l0YXQgZGUgbGEgYmlzc2VjdGlvbiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyNgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzOQogbXNnaWQgImNoZWNrIGZvciBleHBlY3RlZCByZXZzIgogbXNnc3RyICJ2w6lyaWZpZXIgc2kgZGVzIHLDqXZpc2lvbnMgc29udCBhdHRlbmR1ZXMiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjgKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDEKK21zZ2lkICJyZXNldCB0aGUgYmlzZWN0aW9uIHN0YXRlIgorbXNnc3RyICJyw6lpbml0aWFsaXNlciBsJ8OpdGF0IGRlIGxhIGJpc3NlY3Rpb24iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDMKK21zZ2lkICJ3cml0ZSBvdXQgdGhlIGJpc2VjdGlvbiBzdGF0ZSBpbiBCSVNFQ1RfTE9HIgorbXNnc3RyICLDqWNyaXJlIGwnw6l0YXQgZGUgbGEgYmlzc2VjdGlvbiBkYW5zIEJJU0VDVF9MT0ciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDUKK21zZ2lkICJjaGVjayBhbmQgc2V0IHRlcm1zIGluIGEgYmlzZWN0aW9uIHN0YXRlIgorbXNnc3RyICJ2w6lyaWZpZXIgZXQgcsOpZ2xlciBsZXMgdGVybWVzIGRhbnMgdW4gw6l0YXQgZGUgbGEgYmlzc2VjdGlvbiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0NworbXNnaWQgImNoZWNrIHdoZXRoZXIgYmFkIG9yIGdvb2QgdGVybXMgZXhpc3QiCittc2dzdHIgInbDqXJpZmllciBzaSBsZXMgdGVybWVzIGJvbnMgb3UgbWF1dmFpcyBleGlzdGVudCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0OQorbXNnaWQgInByaW50IG91dCB0aGUgYmlzZWN0IHRlcm1zIgorbXNnc3RyICJhZmZpY2hlciBsZXMgdGVybWVzIGRlIGJpc3NlY3Rpb24iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NTEKK21zZ2lkICJzdGFydCB0aGUgYmlzZWN0IHNlc3Npb24iCittc2dzdHIgImTDqW1hcnJlciB1bmUgc2Vzc2lvbiBkZSBiaXNzZWN0aW9uIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUzCiBtc2dpZCAidXBkYXRlIEJJU0VDVF9IRUFEIGluc3RlYWQgb2YgY2hlY2tpbmcgb3V0IHRoZSBjdXJyZW50IGNvbW1pdCIKIG1zZ3N0ciAibWV0dHJlIMOgIGpvdXIgQklTRUNUX0hFQUQgYXUgbGlldSBkJ2V4dHJhaXJlIGxlIGNvbW1pdCBhY3R1ZWwiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNDMKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NTUKK21zZ2lkICJubyBsb2cgZm9yIEJJU0VDVF9XUklURSIKK21zZ3N0ciAicGFzIGRlIGpvdXJuYWwgcG91ciBCSVNFQ1RfV1JJVEUiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NzMKIG1zZ2lkICItLXdyaXRlLXRlcm1zIHJlcXVpcmVzIHR3byBhcmd1bWVudHMiCiBtc2dzdHIgIi0td3JpdGUtdGVybXMgZXhpZ2UgZGV1eCBhcmd1bWVudHMiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNDcKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NzcKIG1zZ2lkICItLWJpc2VjdC1jbGVhbi1zdGF0ZSByZXF1aXJlcyBubyBhcmd1bWVudHMiCiBtc2dzdHIgIi0tYmlzZWN0LWNsZWFuLXN0YXRlIG5lIHN1cHBvcnRlIGF1Y3VuIGFyZ3VtZW50IgogCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njg0Cittc2dpZCAiLS1iaXNlY3QtcmVzZXQgcmVxdWlyZXMgZWl0aGVyIG5vIGFyZ3VtZW50IG9yIGEgY29tbWl0IgorbXNnc3RyICItLWJpc2VjdC1yZXNldCBzdXBwb3J0ZSBzb2l0IGF1Y3VuIGFyZ3VtZW50LCBzb2l0IHVuIGNvbW1pdCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY4OAorbXNnaWQgIi0tYmlzZWN0LXdyaXRlIHJlcXVpcmVzIGVpdGhlciA0IG9yIDUgYXJndW1lbnRzIgorbXNnc3RyICItLWJpc2VjdC13cml0ZSBzdXBwb3J0ZSBzb2l0IDQgYXJndW1lbnRzLCBzb2l0IDUgYXJndW1lbnRzIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njk0Cittc2dpZCAiLS1jaGVjay1hbmQtc2V0LXRlcm1zIHJlcXVpcmVzIDMgYXJndW1lbnRzIgorbXNnc3RyICItLWNoZWNrLWFuZC1zZXQtdGVybXMgZXhpZ2UgMyBhcmd1bWVudHMiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3MDAKK21zZ2lkICItLWJpc2VjdC1uZXh0LWNoZWNrIHJlcXVpcmVzIDIgb3IgMyBhcmd1bWVudHMiCittc2dzdHIgIi0tYmlzZWN0LW5leHQtY2hlY2sgZXhpZ2UgMiBvdSAzIGFyZ3VtZW50cyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjcwNgorbXNnaWQgIi0tYmlzZWN0LXRlcm1zIHJlcXVpcmVzIDAgb3IgMSBhcmd1bWVudCIKK21zZ3N0ciAiLS1iaXNlY3QtdGVybXMgZXhpZ2UgMCBvdSAxIGFyZ3VtZW50IgorCiAjOiBidWlsdGluL2JsYW1lLmM6MzEKIG1zZ2lkICJnaXQgYmxhbWUgWzxvcHRpb25zPl0gWzxyZXYtb3B0cz5dIFs8cmV2Pl0gWy0tXSA8ZmlsZT4iCiBtc2dzdHIgImdpdCBibGFtZSBbPG9wdGlvbnM+XSBbPHJldi1vcHRzPl0gWzxyZXY+XSBbLS1dIDxmaWNoaWVyPiIKQEAgLTc5ODgsMTQwICsxMDQ4OCwxNTMgQEAKIG1zZ2lkICI8cmV2LW9wdHM+IGFyZSBkb2N1bWVudGVkIGluIGdpdC1yZXYtbGlzdCgxKSIKIG1zZ3N0ciAiPG9wdGlvbnMtZGUtcsOpdmlzaW9uPiBzb250IGRvY3VtZW50w6lzIGRhbnMgZ2l0LXJldi1saXN0KDEpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NDA2CisjOiBidWlsdGluL2JsYW1lLmM6NDA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGluZyBhIGNvbG9yOiAlcyIKIG1zZ3N0ciAiY291bGV1ciBhdHRlbmR1ZcKgOiAlcyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjQxMworIzogYnVpbHRpbi9ibGFtZS5jOjQxNgogbXNnaWQgIm11c3QgZW5kIHdpdGggYSBjb2xvciIKIG1zZ3N0ciAiZG9pdCBmaW5pciBhdmVjIHVuZSBjb3VsZXVyIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzAwCisjOiBidWlsdGluL2JsYW1lLmM6NzI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29sb3IgJyVzJyBpbiBjb2xvci5ibGFtZS5yZXBlYXRlZExpbmVzIgogbXNnc3RyICJjb3VsZXVyIGludmFsaWRlICclcycgZGFucyBjb2xvci5ibGFtZS5yZXBlYXRlZGxpbmVzIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzE4CisjOiBidWlsdGluL2JsYW1lLmM6NzQ3CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgYmxhbWUuY29sb3JpbmciCiBtc2dzdHIgInZhbGV1ciBpbnZhbGlkZSBwb3VyIGJsYW1lLmNvbG9yaW5nIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzkzCisjOiBidWlsdGluL2JsYW1lLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmaW5kIHJldmlzaW9uICVzIHRvIGlnbm9yZSIKK21zZ3N0ciAicsOpZsOpcmVuY2Ugw6AgaWdub3JlciAlcyBpbnRyb3V2YWJsZSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg0NAogbXNnaWQgIlNob3cgYmxhbWUgZW50cmllcyBhcyB3ZSBmaW5kIHRoZW0sIGluY3JlbWVudGFsbHkiCiBtc2dzdHIgIiIKICJNb250cmVyIGxlcyDDqWzDqW1lbnRzIGRlIGJsw6JtZSBhdSBmdXIgZXQgw6AgbWVzdXJlIGRlIGxldXIgZMOpY291dmVydGUsIGRlICIKICJtYW5pw6hyZSBpbmNyw6ltZW50YWxlIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk0CisjOiBidWlsdGluL2JsYW1lLmM6ODQ1CiBtc2dpZCAiU2hvdyBibGFuayBTSEEtMSBmb3IgYm91bmRhcnkgY29tbWl0cyAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiTW9udHJlciB1biBTSEEtMSBibGFuYyBwb3VyIGxlcyBjb21taXRzIGRlIGxpbWl0ZSAoRMOpZmF1dCA6IGTDqXNhY3RpdsOpKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5NQorIzogYnVpbHRpbi9ibGFtZS5jOjg0NgogbXNnaWQgIkRvIG5vdCB0cmVhdCByb290IGNvbW1pdHMgYXMgYm91bmRhcmllcyAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiIgogIk5lIHBhcyB0cmFpdGVyIGxlcyBjb21taXRzIHJhY2luZSBjb21tZSBkZXMgbGltaXRlcyAoRMOpZmF1dCA6IGTDqXNhY3RpdsOpKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5NgorIzogYnVpbHRpbi9ibGFtZS5jOjg0NwogbXNnaWQgIlNob3cgd29yayBjb3N0IHN0YXRpc3RpY3MiCiBtc2dzdHIgIk1vbnRyZXIgbGVzIHN0YXRpc3RpcXVlcyBkZSBjb8O7dCBkJ2FjdGl2aXTDqSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5NworIzogYnVpbHRpbi9ibGFtZS5jOjg0OAogbXNnaWQgIkZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKIG1zZ3N0ciAiRm9yY2VyIGwnYWZmaWNoYWdlIGRlIGwnw6l0YXQgZCdhdmFuY2VtZW50IgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk4CisjOiBidWlsdGluL2JsYW1lLmM6ODQ5CiBtc2dpZCAiU2hvdyBvdXRwdXQgc2NvcmUgZm9yIGJsYW1lIGVudHJpZXMiCiBtc2dzdHIgIk1vbnRyZXIgbGUgc2NvcmUgZGUgc29ydGllIHBvdXIgbGVzIMOpbMOpbWVudHMgZGUgYmzDom1lIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk5CisjOiBidWlsdGluL2JsYW1lLmM6ODUwCiBtc2dpZCAiU2hvdyBvcmlnaW5hbCBmaWxlbmFtZSAoRGVmYXVsdDogYXV0bykiCiBtc2dzdHIgIk1vbnRyZXIgbGVzIG5vbXMgZGUgZmljaGllciBvcmlnaW5hdXggKETDqWZhdXQgOiBhdXRvKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwMAorIzogYnVpbHRpbi9ibGFtZS5jOjg1MQogbXNnaWQgIlNob3cgb3JpZ2luYWwgbGluZW51bWJlciAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiTW9udHJlciBsZXMgbnVtw6lyb3MgZGUgbGlnbmVzIG9yaWdpbmF1eCAoRMOpZmF1dCA6IGTDqXNhY3RpdsOpKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwMQorIzogYnVpbHRpbi9ibGFtZS5jOjg1MgogbXNnaWQgIlNob3cgaW4gYSBmb3JtYXQgZGVzaWduZWQgZm9yIG1hY2hpbmUgY29uc3VtcHRpb24iCiBtc2dzdHIgIkFmZmljaGVyIGRhbnMgdW4gZm9ybWF0IHByb3BpY2Ugw6AgbGEgY29uc29tbWF0aW9uIHBhciBtYWNoaW5lIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAyCisjOiBidWlsdGluL2JsYW1lLmM6ODUzCiBtc2dpZCAiU2hvdyBwb3JjZWxhaW4gZm9ybWF0IHdpdGggcGVyLWxpbmUgY29tbWl0IGluZm9ybWF0aW9uIgogbXNnc3RyICJBZmZpY2hlciBlbiBmb3JtYXQgcG9yY2VsYWluZSBhdmVjIGwnaW5mb3JtYXRpb24gZGUgY29tbWl0IHBhciBsaWduZSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwMworIzogYnVpbHRpbi9ibGFtZS5jOjg1NAogbXNnaWQgIlVzZSB0aGUgc2FtZSBvdXRwdXQgbW9kZSBhcyBnaXQtYW5ub3RhdGUgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIlV0aWxpc2VyIGxlIG3Dqm1lIG1vZGUgZGUgc29ydGllIHF1ZSBnaXQtYW5ub3RhdGUgKETDqWZhdXQgOiBkw6lzYWN0aXbDqSkiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDQKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTUKIG1zZ2lkICJTaG93IHJhdyB0aW1lc3RhbXAgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIkFmZmljaGVyIGxlcyBob3JvZGF0YWdlcyBicnV0cyAoRMOpZmF1dCA6IGTDqXNhY3RpdsOpKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwNQorIzogYnVpbHRpbi9ibGFtZS5jOjg1NgogbXNnaWQgIlNob3cgbG9uZyBjb21taXQgU0hBMSAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiQWZmaWNoZXIgbGVzIGxvbmdzIFNIQTEgZGUgY29tbWl0cyAoRMOpZmF1dCA6IGTDqXNhY3RpdsOpKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwNgorIzogYnVpbHRpbi9ibGFtZS5jOjg1NwogbXNnaWQgIlN1cHByZXNzIGF1dGhvciBuYW1lIGFuZCB0aW1lc3RhbXAgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIlN1cHByaW1lciBsZSBub20gZGUgbCdhdXRldXIgZXQgbCdob3JvZGF0YWdlIChEw6lmYXV0IDogZMOpc2FjdGl2w6kpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA3CisjOiBidWlsdGluL2JsYW1lLmM6ODU4CiBtc2dpZCAiU2hvdyBhdXRob3IgZW1haWwgaW5zdGVhZCBvZiBuYW1lIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICJBZmZpY2hlciBsZSBjb3VycmllbCBkZSBsJ2F1dGV1ciBhdSBsaWV1IGR1IG5vbSAoRMOpZmF1dCA6IGTDqXNhY3RpdsOpKSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwOAorIzogYnVpbHRpbi9ibGFtZS5jOjg1OQogbXNnaWQgIklnbm9yZSB3aGl0ZXNwYWNlIGRpZmZlcmVuY2VzIgogbXNnc3RyICJJZ25vcmVyIGxlcyBkaWZmw6lyZW5jZXMgZCdlc3BhY2UiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDkKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjAgYnVpbHRpbi9sb2cuYzoxNzAyCittc2dpZCAicmV2IgorbXNnc3RyICJyw6l2IgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYwCittc2dpZCAiSWdub3JlIDxyZXY+IHdoZW4gYmxhbWluZyIKK21zZ3N0ciAiaWdub3JlIDxyZXY+IHBlbmRhbnQgbGUgYmzDom1lIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYxCittc2dpZCAiSWdub3JlIHJldmlzaW9ucyBmcm9tIDxmaWxlPiIKK21zZ3N0ciAiaWdub3JlciBsZXMgcsOpdmlzaW9ucyBsaXN0w6llcyBkYW5zIDxmaWNoaWVyPiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MgogbXNnaWQgImNvbG9yIHJlZHVuZGFudCBtZXRhZGF0YSBmcm9tIHByZXZpb3VzIGxpbmUgZGlmZmVyZW50bHkiCiBtc2dzdHIgIiIKICJjb2xvcmVyIGRpZmbDqXJlbW1lbnQgbGVzIG3DqXRhZG9ubsOpZXMgcmVkb25kYW50ZXMgYXZlYyBsYSBsaWduZSBwcsOpY8OpZGVudGUiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MTAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjMKIG1zZ2lkICJjb2xvciBsaW5lcyBieSBhZ2UiCiBtc2dzdHIgImNvbG9yaWVyIGxlcyBsaWduZXMgcGFyIMOiZ2UiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MTcKLW1zZ2lkICJVc2UgYW4gZXhwZXJpbWVudGFsIGhldXJpc3RpYyB0byBpbXByb3ZlIGRpZmZzIgotbXNnc3RyICJVdGlsaXNlciB1bmUgaGV1cmlzdGlxdWUgZXhww6lyaW1lbnRhbGUgcG91ciBhbcOpbGlvcmVyIGxlcyBkaWZmcyIKLQotIzogYnVpbHRpbi9ibGFtZS5jOjgxOQorIzogYnVpbHRpbi9ibGFtZS5jOjg2NAogbXNnaWQgIlNwZW5kIGV4dHJhIGN5Y2xlcyB0byBmaW5kIGJldHRlciBtYXRjaCIKIG1zZ3N0ciAiIgogIkTDqXBlbnNlciBkZXMgY3ljbGVzIHN1cHBsw6ltZW50YWlyZXMgcG91ciB0cm91dmVyIHVuZSBtZWlsbGV1cmUgY29ycmVzcG9uZGFuY2UiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjUKIG1zZ2lkICJVc2UgcmV2aXNpb25zIGZyb20gPGZpbGU+IGluc3RlYWQgb2YgY2FsbGluZyBnaXQtcmV2LWxpc3QiCiBtc2dzdHIgIiIKICJVdGlsaXNlciBsZXMgcsOpdmlzaW9ucyBkdSBmaWNoaWVyIDxmaWNoaWVyPiBhdSBsaWV1IGQnYXBwZWxlciBnaXQtcmV2LWxpc3QiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjEKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjYKIG1zZ2lkICJVc2UgPGZpbGU+J3MgY29udGVudHMgYXMgdGhlIGZpbmFsIGltYWdlIgogbXNnc3RyICJVdGlsaXNlciBsZSBjb250ZW51IGRlIDxmaWNoaWVyPiBjb21tZSBpbWFnZSBmaW5hbGUiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIgYnVpbHRpbi9ibGFtZS5jOjgyMworIzogYnVpbHRpbi9ibGFtZS5jOjg2NyBidWlsdGluL2JsYW1lLmM6ODY4CiBtc2dpZCAic2NvcmUiCiBtc2dzdHIgInNjb3JlIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIyCisjOiBidWlsdGluL2JsYW1lLmM6ODY3CiBtc2dpZCAiRmluZCBsaW5lIGNvcGllcyB3aXRoaW4gYW5kIGFjcm9zcyBmaWxlcyIKIG1zZ3N0ciAiVHJvdXZlciBsZXMgY29waWVzIGRlIGxpZ25lIGRhbnMgZXQgZW50cmUgbGVzIGZpY2hpZXJzIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIzCisjOiBidWlsdGluL2JsYW1lLmM6ODY4CiBtc2dpZCAiRmluZCBsaW5lIG1vdmVtZW50cyB3aXRoaW4gYW5kIGFjcm9zcyBmaWxlcyIKIG1zZ3N0ciAiVHJvdXZlciBsZXMgbW91dmVtZW50cyBkZSBsaWduZSBkYW5zIGV0IGVudHJlIGxlcyBmaWNoaWVycyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyNAorIzogYnVpbHRpbi9ibGFtZS5jOjg2OQogbXNnaWQgIm4sbSIKIG1zZ3N0ciAibixtIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODI0CisjOiBidWlsdGluL2JsYW1lLmM6ODY5CiBtc2dpZCAiUHJvY2VzcyBvbmx5IGxpbmUgcmFuZ2UgbixtLCBjb3VudGluZyBmcm9tIDEiCiBtc2dzdHIgIiIKICJUcmFpdGVyIHNldWxlbWVudCBsJ2ludGVydmFsbGUgZGUgbGlnbmUgbixtIGVuIGNvbW1lbsOnYW50IGxlIGNvbXB0ZSDDoCAxIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODczCisjOiBidWlsdGluL2JsYW1lLmM6OTIxCiBtc2dpZCAiLS1wcm9ncmVzcyBjYW4ndCBiZSB1c2VkIHdpdGggLS1pbmNyZW1lbnRhbCBvciBwb3JjZWxhaW4gZm9ybWF0cyIKIG1zZ3N0ciAiIgogIi0tcHJvZ3Jlc3MgbmUgcGV1dCBwYXMgw6p0cmUgdXRpbGlzw6kgYXZlYyAtLWluY3JlbWVudGFsIG91IGxlcyBmb3JtYXRzICIKQEAgLTgxMzUsMTggKzEwNjQ4LDE4IEBACiAjLiB5b3VyIGxhbmd1YWdlIG1heSBuZWVkIG1vcmUgb3IgZmV3ZXIgZGlzcGxheQogIy4gY29sdW1ucy4KICMuCi0jOiBidWlsdGluL2JsYW1lLmM6OTI0CisjOiBidWlsdGluL2JsYW1lLmM6OTcyCiBtc2dpZCAiNCB5ZWFycywgMTEgbW9udGhzIGFnbyIKIG1zZ3N0ciAiaWwgeSBhIDEwIGFucyBldCAxMSBtb2lzIgogCi0jOiBidWlsdGluL2JsYW1lLmM6MTAxMQorIzogYnVpbHRpbi9ibGFtZS5jOjEwNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmlsZSAlcyBoYXMgb25seSAlbHUgbGluZSIKIG1zZ2lkX3BsdXJhbCAiZmlsZSAlcyBoYXMgb25seSAlbHUgbGluZXMiCiBtc2dzdHJbMF0gImxlIGZpY2hpZXIgJXMgbidhIHF1JyVsdSBsaWduZSIKIG1zZ3N0clsxXSAibGUgZmljaGllciAlcyBuJ2EgcXVlICVsdSBsaWduZXMiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzoxMDU3CisjOiBidWlsdGluL2JsYW1lLmM6MTEyNQogbXNnaWQgIkJsYW1pbmcgbGluZXMiCiBtc2dzdHIgIkFzc2lnbmF0aW9uIGRlIGJsw6JtZSBhdXggbGlnbmVzIgogCkBAIC04MTgwLDcgKzEwNjkzLDcgQEAKIG1zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstciB8IC1hXSBbLS1mb3JtYXRdIgogbXNnc3RyICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstciB8IC1hXSBbLS1mb3JtYXRdIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE1MQorIzogYnVpbHRpbi9icmFuY2guYzoxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImRlbGV0aW5nIGJyYW5jaCAnJXMnIHRoYXQgaGFzIGJlZW4gbWVyZ2VkIHRvXG4iCkBAIC04MTg5LDcgKzEwNzAyLDcgQEAKICJzdXBwcmVzc2lvbiBkZSBsYSBicmFuY2hlICclcycgcXVpIGEgw6l0w6kgZnVzaW9ubsOpZSBkYW5zXG4iCiAiICAgICAgICAgJyVzJywgbWFpcyBwYXMgZGFucyBIRUFELiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxNTUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJub3QgZGVsZXRpbmcgYnJhbmNoICclcycgdGhhdCBpcyBub3QgeWV0IG1lcmdlZCB0b1xuIgpAQCAtODE5OCwxMiArMTA3MTEsMTIgQEAKICJicmFuY2hlICclcycgbm9uIHN1cHByaW3DqWUgY2FyIGVsbGUgbidhIHBhcyDDqXTDqSBmdXNpb25uw6llIGRhbnNcbiIKICIgICAgICAgICAnJXMnLCBtw6ptZSBzaSBlbGxlIGVzdCBmdXNpb25uw6llIGRhbnMgSEVBRC4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTY5CisjOiBidWlsdGluL2JyYW5jaC5jOjE3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZG4ndCBsb29rIHVwIGNvbW1pdCBvYmplY3QgZm9yICclcyciCiBtc2dzdHIgIkltcG9zc2libGUgZGUgcmVjaGVyY2hlciBsJ29iamV0IGNvbW1pdCBwb3VyICclcyciCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTczCisjOiBidWlsdGluL2JyYW5jaC5jOjE3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGJyYW5jaCAnJXMnIGlzIG5vdCBmdWxseSBtZXJnZWQuXG4iCkBAIC04MjEyLDExNiArMTA3MjUsMTI1IEBACiAiTGEgYnJhbmNoZSAnJXMnIG4nZXN0IHBhcyB0b3RhbGVtZW50IGZ1c2lvbm7DqWUuXG4iCiAiU2kgdm91cyBzb3VoYWl0ZXogcsOpZWxsZW1lbnQgbGEgc3VwcHJpbWVyLCBsYW5jZXogJ2dpdCBicmFuY2ggLUQgJXMnLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxODYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTg5CiBtc2dpZCAiVXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKIG1zZ3N0ciAiw4ljaGVjIGRlIGxhIG1pc2Ugw6Agam91ciBkdSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjE3CisjOiBidWlsdGluL2JyYW5jaC5jOjIyMAogbXNnaWQgImNhbm5vdCB1c2UgLWEgd2l0aCAtZCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ3V0aWxpc2VyIC1hIGF2ZWMgLWQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjIzCisjOiBidWlsdGluL2JyYW5jaC5jOjIyNgogbXNnaWQgIkNvdWxkbid0IGxvb2sgdXAgY29tbWl0IG9iamVjdCBmb3IgSEVBRCIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSByZWNoZXJjaGVyIGwnb2JqZXQgY29tbWl0IHBvdXIgSEVBRCIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBkZWxldGUgYnJhbmNoICclcycgY2hlY2tlZCBvdXQgYXQgJyVzJyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgbGEgYnJhbmNoZSAnJXMnIGV4dHJhaXRlIGRhbnMgJyVzJyIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZS10cmFja2luZyBicmFuY2ggJyVzJyBub3QgZm91bmQuIgogbXNnc3RyICJicmFuY2hlIGRlIHN1aXZpICclcycgbm9uIHRyb3V2w6llLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNTMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjU2CiAjLCBjLWZvcm1hdAogbXNnaWQgImJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCiBtc2dzdHIgImJyYW5jaGUgJyVzJyBub24gdHJvdXbDqWUuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI2OAorIzogYnVpbHRpbi9icmFuY2guYzoyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXJyb3IgZGVsZXRpbmcgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCAnJXMnIgogbXNnc3RyICJFcnJldXIgbG9ycyBkZSBsYSBzdXBwcmVzc2lvbiBkZSBsYSBicmFuY2hlIGRlIHN1aXZpICclcyciCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjY5CisjOiBidWlsdGluL2JyYW5jaC5jOjI3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJFcnJvciBkZWxldGluZyBicmFuY2ggJyVzJyIKIG1zZ3N0ciAiRXJyZXVyIGxvcnMgZGUgbGEgc3VwcHJlc3Npb24gZGUgbGEgYnJhbmNoZSAnJXMnIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI3NgorIzogYnVpbHRpbi9icmFuY2guYzoyNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICVzICh3YXMgJXMpLlxuIgogbXNnc3RyICJCcmFuY2hlIGRlIHN1aXZpICVzIHN1cHByaW3DqWUgKHByw6ljw6lkZW1tZW50ICVzKS5cbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgYnJhbmNoICVzICh3YXMgJXMpLlxuIgogbXNnc3RyICJCcmFuY2hlICVzIHN1cHByaW3DqWUgKHByw6ljw6lkZW1tZW50ICVzKS5cbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0MjEgYnVpbHRpbi90YWcuYzo1OQorIzogYnVpbHRpbi9icmFuY2guYzo0MjkgYnVpbHRpbi90YWcuYzo2MQogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBmb3JtYXQgc3RyaW5nIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGEgY2hhw65uZSBkZSBmb3JtYXQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDU4CisjOiBidWlsdGluL2JyYW5jaC5jOjQ2MAorbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlIEhFQUQiCittc2dzdHIgImltcG9zc2libGUgZGUgcsOpc291ZHJlIEhFQUQiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDY2CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgKCVzKSBwb2ludHMgb3V0c2lkZSBvZiByZWZzL2hlYWRzLyIKK21zZ3N0ciAiSEVBRCAoJXMpIHBvaW50ZSBob3JzIGRlIHJlZnMvaGVhZHMvIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJXMgaXMgYmVpbmcgcmViYXNlZCBhdCAlcyIKIG1zZ3N0ciAiTGEgYnJhbmNoZSAlcyBlc3QgZW4gY291cnMgZGUgcmViYXNhZ2Ugc3VyICVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ2MgorIzogYnVpbHRpbi9icmFuY2guYzo0ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICVzIGlzIGJlaW5nIGJpc2VjdGVkIGF0ICVzIgogbXNnc3RyICJMYSBicmFuY2hlICVzIGVzdCBlbiBjb3VycyBkZSBiaXNzZWN0aW9uIHN1ciAlcyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0NzkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTAyCiBtc2dpZCAiY2Fubm90IGNvcHkgdGhlIGN1cnJlbnQgYnJhbmNoIHdoaWxlIG5vdCBvbiBhbnkuIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNvcGllciBsYSBicmFuY2hlIGFjdHVlbGxlLCBpbCBuJ3kgZW4gYSBwYXMuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ4MQorIzogYnVpbHRpbi9icmFuY2guYzo1MDQKIG1zZ2lkICJjYW5ub3QgcmVuYW1lIHRoZSBjdXJyZW50IGJyYW5jaCB3aGlsZSBub3Qgb24gYW55LiIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByZW5vbW1lciBsYSBicmFuY2hlIGFjdHVlbGxlLCBpbCBuJ3kgZW4gYSBwYXMuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ5MgorIzogYnVpbHRpbi9icmFuY2guYzo1MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBicmFuY2ggbmFtZTogJyVzJyIKIG1zZ3N0ciAiTm9tIGRlIGJyYW5jaGUgaW52YWxpZGUgOiAnJXMnIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUxOQorIzogYnVpbHRpbi9icmFuY2guYzo1NDIKIG1zZ2lkICJCcmFuY2ggcmVuYW1lIGZhaWxlZCIKIG1zZ3N0ciAiw4ljaGVjIGRlIHJlbm9tbWFnZSBkZSBsYSBicmFuY2hlIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyMQorIzogYnVpbHRpbi9icmFuY2guYzo1NDQKIG1zZ2lkICJCcmFuY2ggY29weSBmYWlsZWQiCiBtc2dzdHIgIsOJY2hlYyBkZSBjb3BpZSBkZSBsYSBicmFuY2hlIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyNQorIzogYnVpbHRpbi9icmFuY2guYzo1NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3JlYXRlZCBhIGNvcHkgb2YgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyIKIG1zZ3N0ciAiQ3LDqWF0aW9uIGQndW5lIGNvcGllIGQndW5lIGJyYW5jaGUgbWFsIG5vbW3DqWUgJyVzJyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MjgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbmFtZWQgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyBhd2F5IgogbXNnc3RyICJSZW5vbW1hZ2UgZCd1bmUgYnJhbmNoZSBtYWwgbm9tbcOpZSAnJXMnIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUzNAorIzogYnVpbHRpbi9icmFuY2guYzo1NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoIHJlbmFtZWQgdG8gJXMsIGJ1dCBIRUFEIGlzIG5vdCB1cGRhdGVkISIKIG1zZ3N0ciAiTGEgYnJhbmNoZSBhIMOpdMOpIHJlbm9tbcOpZSBlbiAlcywgbWFpcyBIRUFEIG4nZXN0IHBhcyBtaXNlIMOgIGpvdXIgISIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1NDMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTY2CiBtc2dpZCAiQnJhbmNoIGlzIHJlbmFtZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICIiCiAiTGEgYnJhbmNoZSBlc3QgcmVub21tw6llLCBtYWlzIGxhIG1pc2Ugw6Agam91ciBkdSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gYSAiCiAiw6ljaG91w6kiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQ1CisjOiBidWlsdGluL2JyYW5jaC5jOjU2OAogbXNnaWQgIkJyYW5jaCBpcyBjb3BpZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICIiCiAiTGEgYnJhbmNoZSBlc3QgY29wacOpZSwgbWFpcyBsYSBtaXNlIMOgIGpvdXIgZHUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIGEgIgogIsOpY2hvdcOpIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU2MQorIzogYnVpbHRpbi9icmFuY2guYzo1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlBsZWFzZSBlZGl0IHRoZSBkZXNjcmlwdGlvbiBmb3IgdGhlIGJyYW5jaFxuIgpAQCAtODMzMiwxODYgKzEwODU0LDE4MCBAQAogIiAgJXNcbiIKICJMZXMgbGlnbmVzIGNvbW1lbsOnYW50IHBhciAnJWMnIHNlcm9udCBpZ25vcsOpZXMuXG4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTk0CisjOiBidWlsdGluL2JyYW5jaC5jOjYxOAogbXNnaWQgIkdlbmVyaWMgb3B0aW9ucyIKIG1zZ3N0ciAiT3B0aW9ucyBnw6luw6lyaXF1ZXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTk2CisjOiBidWlsdGluL2JyYW5jaC5jOjYyMAogbXNnaWQgInNob3cgaGFzaCBhbmQgc3ViamVjdCwgZ2l2ZSB0d2ljZSBmb3IgdXBzdHJlYW0gYnJhbmNoIgogbXNnc3RyICJhZmZpY2hlciBsZSBoYWNoYWdlIGV0IGxlIHN1amV0LCBkb3VibMOpIHBvdXIgbGEgYnJhbmNoZSBhbW9udCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIxCiBtc2dpZCAic3VwcHJlc3MgaW5mb3JtYXRpb25hbCBtZXNzYWdlcyIKIG1zZ3N0ciAic3VwcHJpbWVyIGxlcyBtZXNzYWdlcyBkJ2luZm9ybWF0aW9uIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5OAorIzogYnVpbHRpbi9icmFuY2guYzo2MjIKIG1zZ2lkICJzZXQgdXAgdHJhY2tpbmcgbW9kZSAoc2VlIGdpdC1wdWxsKDEpKSIKIG1zZ3N0ciAicsOpZ2xlciBsZSBtb2RlIGRlIHN1aXZpICh2b2lyIGdpdC1wdWxsKDEpKSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI0CiBtc2dpZCAiZG8gbm90IHVzZSIKIG1zZ3N0ciAibmUgcGFzIHV0aWxpc2VyIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI2IGJ1aWx0aW4vcmViYXNlLmM6NTEzCiBtc2dpZCAidXBzdHJlYW0iCiBtc2dzdHIgImFtb250IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMgorIzogYnVpbHRpbi9icmFuY2guYzo2MjYKIG1zZ2lkICJjaGFuZ2UgdGhlIHVwc3RyZWFtIGluZm8iCiBtc2dzdHIgIm1vZGlmaWVyIGwnaW5mb3JtYXRpb24gYW1vbnQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjAzCi1tc2dpZCAiVW5zZXQgdGhlIHVwc3RyZWFtIGluZm8iCi1tc2dzdHIgIkTDqXNhY3RpdmVyIGwnaW5mb3JtYXRpb24gYW1vbnQiCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNworbXNnaWQgInVuc2V0IHRoZSB1cHN0cmVhbSBpbmZvIgorbXNnc3RyICJkw6lzYWN0aXZlciBsJ2luZm9ybWF0aW9uIGFtb250IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwNAorIzogYnVpbHRpbi9icmFuY2guYzo2MjgKIG1zZ2lkICJ1c2UgY29sb3JlZCBvdXRwdXQiCiBtc2dzdHIgInV0aWxpc2VyIGxhIGNvbG9yYXRpb24gZGFucyBsYSBzb3J0aWUiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA1CisjOiBidWlsdGluL2JyYW5jaC5jOjYyOQogbXNnaWQgImFjdCBvbiByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMiCiBtc2dzdHIgImFnaXIgc3VyIGxlcyBicmFuY2hlcyBkZSBzdWl2aSBkaXN0YW50ZXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA3IGJ1aWx0aW4vYnJhbmNoLmM6NjA5CisjOiBidWlsdGluL2JyYW5jaC5jOjYzMSBidWlsdGluL2JyYW5jaC5jOjYzMwogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgImFmZmljaGVyIHNldWxlbWVudCBsZXMgYnJhbmNoZXMgcXVpIGNvbnRpZW5uZW50IGxlIGNvbW1pdCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDggYnVpbHRpbi9icmFuY2guYzo2MTAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMyIGJ1aWx0aW4vYnJhbmNoLmM6NjM0CiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAiYWZmaWNoZXIgc2V1bGVtZW50IGxlcyBicmFuY2hlcyBxdWkgbmUgY29udGllbm5lbnQgcGFzIGxlIGNvbW1pdCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM3CiBtc2dpZCAiU3BlY2lmaWMgZ2l0LWJyYW5jaCBhY3Rpb25zOiIKIG1zZ3N0ciAiQWN0aW9ucyBzcMOpY2lmaXF1ZXMgw6AgZ2l0LWJyYW5jaCA6IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxNAorIzogYnVpbHRpbi9icmFuY2guYzo2MzgKIG1zZ2lkICJsaXN0IGJvdGggcmVtb3RlLXRyYWNraW5nIGFuZCBsb2NhbCBicmFuY2hlcyIKIG1zZ3N0ciAiYWZmaWNoZXIgw6AgbGEgZm9pcyBsZXMgYnJhbmNoZXMgZGUgc3VpdmkgZXQgbGVzIGJyYW5jaGVzIGxvY2FsZXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE2CisjOiBidWlsdGluL2JyYW5jaC5jOjY0MAogbXNnaWQgImRlbGV0ZSBmdWxseSBtZXJnZWQgYnJhbmNoIgogbXNnc3RyICJzdXBwcmltZXIgdW5lIGJyYW5jaGUgdG90YWxlbWVudCBmdXNpb25uw6llIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxNworIzogYnVpbHRpbi9icmFuY2guYzo2NDEKIG1zZ2lkICJkZWxldGUgYnJhbmNoIChldmVuIGlmIG5vdCBtZXJnZWQpIgogbXNnc3RyICJzdXBwcmltZXIgdW5lIGJyYW5jaGUgKG3Dqm1lIG5vbiBmdXNpb25uw6llKSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQyCiBtc2dpZCAibW92ZS9yZW5hbWUgYSBicmFuY2ggYW5kIGl0cyByZWZsb2ciCiBtc2dzdHIgImTDqXBsYWNlci9yZW5vbW1lciB1bmUgYnJhbmNoZSBldCBzb24gcmVmbG9nIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxOQorIzogYnVpbHRpbi9icmFuY2guYzo2NDMKIG1zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCwgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgogbXNnc3RyICJkw6lwbGFjZXIvcmVub21tZXIgdW5lIGJyYW5jaGUsIG3Dqm1lIHNpIGxhIGNpYmxlIGV4aXN0ZSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ0CiBtc2dpZCAiY29weSBhIGJyYW5jaCBhbmQgaXRzIHJlZmxvZyIKIG1zZ3N0ciAiY29waWVyIHVuZSBicmFuY2hlIGV0IHNvbiByZWZsb2ciCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIxCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NQogbXNnaWQgImNvcHkgYSBicmFuY2gsIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAiY29waWVyIHVuZSBicmFuY2hlLCBtw6ptZSBzaSBsYSBjaWJsZSBleGlzdGUiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIyCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NgogbXNnaWQgImxpc3QgYnJhbmNoIG5hbWVzIgogbXNnc3RyICJhZmZpY2hlciBsZXMgbm9tcyBkZXMgYnJhbmNoZXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIzCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NworbXNnaWQgInNob3cgY3VycmVudCBicmFuY2ggbmFtZSIKK21zZ3N0ciAiYWZmaWNoZXIgbGUgbm9tIGRlIGxhIGJyYW5jaGUgY291cmFudGUiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ4CiBtc2dpZCAiY3JlYXRlIHRoZSBicmFuY2gncyByZWZsb2ciCiBtc2dzdHIgImNyw6llciBsZSByZWZsb2cgZGUgbGEgYnJhbmNoZSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUwCiBtc2dpZCAiZWRpdCB0aGUgZGVzY3JpcHRpb24gZm9yIHRoZSBicmFuY2giCiBtc2dzdHIgIsOpZGl0ZXIgbGEgZGVzY3JpcHRpb24gZGUgbGEgYnJhbmNoZSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUxCiBtc2dpZCAiZm9yY2UgY3JlYXRpb24sIG1vdmUvcmVuYW1lLCBkZWxldGlvbiIKIG1zZ3N0ciAiZm9yY2VyIGxhIGNyw6lhdGlvbiwgbGUgZMOpcGxhY2VtZW50L3Jlbm9tbWFnZSwgb3UgbGEgc3VwcHJlc3Npb24iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI3CisjOiBidWlsdGluL2JyYW5jaC5jOjY1MgogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBhcmUgbWVyZ2VkIgogbXNnc3RyICJhZmZpY2hlciBzZXVsZW1lbnQgbGVzIGJyYW5jaGVzIHF1aSBzb250IGZ1c2lvbm7DqWVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyOAorIzogYnVpbHRpbi9icmFuY2guYzo2NTMKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCiBtc2dzdHIgImFmZmljaGVyIHNldWxlbWVudCBsZXMgYnJhbmNoZXMgcXVpIG5lIHNvbnQgcGFzIGZ1c2lvbm7DqWVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyOQorIzogYnVpbHRpbi9icmFuY2guYzo2NTQKIG1zZ2lkICJsaXN0IGJyYW5jaGVzIGluIGNvbHVtbnMiCiBtc2dzdHIgImFmZmljaGVyIGxlcyBicmFuY2hlcyBlbiBjb2xvbm5lcyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MzAgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MCBidWlsdGluL2xzLXJlbW90ZS5jOjcwCi0jOiBidWlsdGluL3RhZy5jOjQxNQotbXNnaWQgImtleSIKLW1zZ3N0ciAiY2zDqSIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MzEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MSBidWlsdGluL2xzLXJlbW90ZS5jOjcxCi0jOiBidWlsdGluL3RhZy5jOjQxNgotbXNnaWQgImZpZWxkIG5hbWUgdG8gc29ydCBvbiIKLW1zZ3N0ciAibm9tIGR1IGNoYW1wIHNlcnZhbnQgw6AgdHJpZXIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMzIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDMgYnVpbHRpbi9ub3Rlcy5jOjQxNQotIzogYnVpbHRpbi9ub3Rlcy5jOjQxOCBidWlsdGluL25vdGVzLmM6NTc4IGJ1aWx0aW4vbm90ZXMuYzo1ODEKLSM6IGJ1aWx0aW4vdGFnLmM6NDE4CisjOiBidWlsdGluL2JyYW5jaC5jOjY1NyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQyIGJ1aWx0aW4vbm90ZXMuYzo0MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTggYnVpbHRpbi9ub3Rlcy5jOjU4MSBidWlsdGluL25vdGVzLmM6NTg0CisjOiBidWlsdGluL3RhZy5jOjQzMwogbXNnaWQgIm9iamVjdCIKIG1zZ3N0ciAib2JqZXQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM0CisjOiBidWlsdGluL2JyYW5jaC5jOjY1OAogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgb2YgdGhlIG9iamVjdCIKIG1zZ3N0ciAiYWZmaWNoZXIgc2V1bGVtZW50IGxlcyBicmFuY2hlcyBkZSBsJ29iamV0IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzNiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ5IGJ1aWx0aW4vdGFnLmM6NDI1CisjOiBidWlsdGluL2JyYW5jaC5jOjY2MCBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ4IGJ1aWx0aW4vdGFnLmM6NDQwCiBtc2dpZCAic29ydGluZyBhbmQgZmlsdGVyaW5nIGFyZSBjYXNlIGluc2Vuc2l0aXZlIgogbXNnc3RyICJsZSB0cmkgZXQgbGUgZmlsdHJhZ2Ugc29udCBub24tc2Vuc2libGVzIMOgIGxhIGNhc3NlIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzNyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4IGJ1aWx0aW4vdGFnLmM6NDIzCi0jOiBidWlsdGluL3ZlcmlmeS10YWcuYzozOQorIzogYnVpbHRpbi9icmFuY2guYzo2NjEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOCBidWlsdGluL3RhZy5jOjQzOAorIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzgKIG1zZ2lkICJmb3JtYXQgdG8gdXNlIGZvciB0aGUgb3V0cHV0IgogbXNnc3RyICJmb3JtYXQgw6AgdXRpbGlzZXIgcG91ciBsYSBzb3J0aWUiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjYwIGJ1aWx0aW4vY2xvbmUuYzo3MzkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Njg0IGJ1aWx0aW4vY2xvbmUuYzo3ODUKIG1zZ2lkICJIRUFEIG5vdCBmb3VuZCBiZWxvdyByZWZzL2hlYWRzISIKIG1zZ3N0ciAiSEVBRCBub24gdHJvdXbDqWUgc291cyByZWZzL2hlYWRzICEiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjgzCisjOiBidWlsdGluL2JyYW5jaC5jOjcwOAogbXNnaWQgIi0tY29sdW1uIGFuZCAtLXZlcmJvc2UgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1jb2x1bW4gZXQgLS12ZXJib3NlIHNvbnQgaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2OTggYnVpbHRpbi9icmFuY2guYzo3NDkgYnVpbHRpbi9icmFuY2guYzo3NTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzIzIGJ1aWx0aW4vYnJhbmNoLmM6Nzc3IGJ1aWx0aW4vYnJhbmNoLmM6Nzg2CiBtc2dpZCAiYnJhbmNoIG5hbWUgcmVxdWlyZWQiCiBtc2dzdHIgImxlIG5vbSBkZSBicmFuY2hlIGVzdCByZXF1aXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzI1CisjOiBidWlsdGluL2JyYW5jaC5jOjc1MwogbXNnaWQgIkNhbm5vdCBnaXZlIGRlc2NyaXB0aW9uIHRvIGRldGFjaGVkIEhFQUQiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgZMOpY3JpcmUgdW5lIEhFQUQgZMOpdGFjaMOpZSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MzAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzU4CiBtc2dpZCAiY2Fubm90IGVkaXQgZGVzY3JpcHRpb24gb2YgbW9yZSB0aGFuIG9uZSBicmFuY2giCiBtc2dzdHIgImltcG9zc2libGUgZCfDqWRpdGVyIGxhIGRlc2NyaXB0aW9uIGRlIHBsdXMgZCd1bmUgYnJhbmNoZSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIGNvbW1pdCBvbiBicmFuY2ggJyVzJyB5ZXQuIgogbXNnc3RyICJBdWN1biBjb21taXQgc3VyIGxhIGJyYW5jaGUgJyVzJy4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzQwCisjOiBidWlsdGluL2JyYW5jaC5jOjc2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBicmFuY2ggbmFtZWQgJyVzJy4iCiBtc2dzdHIgIkF1Y3VuZSBicmFuY2hlIG5vbW3DqWUgJyVzJy4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzU1CisjOiBidWlsdGluL2JyYW5jaC5jOjc4MwogbXNnaWQgInRvbyBtYW55IGJyYW5jaGVzIGZvciBhIGNvcHkgb3BlcmF0aW9uIgogbXNnc3RyICJ0cm9wIGRlIGJyYW5jaGVzIHBvdXIgdW5lIG9ww6lyYXRpb24gZGUgY29waWUiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzY0CisjOiBidWlsdGluL2JyYW5jaC5jOjc5MgogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyBmb3IgYSByZW5hbWUgb3BlcmF0aW9uIgogbXNnc3RyICJ0cm9wIGQnYXJndW1lbnRzIHBvdXIgdW5lIG9ww6lyYXRpb24gZGUgcmVub21tYWdlIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc2OQorIzogYnVpbHRpbi9icmFuY2guYzo3OTcKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgdG8gc2V0IG5ldyB1cHN0cmVhbSIKIG1zZ3N0ciAidHJvcCBkJ2FyZ3VtZW50cyBwb3VyIHNww6ljaWZpZXIgdW5lIGJyYW5jaGUgYW1vbnQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzczCisjOiBidWlsdGluL2JyYW5jaC5jOjgwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY291bGQgbm90IHNldCB1cHN0cmVhbSBvZiBIRUFEIHRvICVzIHdoZW4gaXQgZG9lcyBub3QgcG9pbnQgdG8gYW55IGJyYW5jaC4iCkBAIC04NTE5LDM3ICsxMTAzNSw0MSBAQAogImltcG9zc2libGUgZGUgc3DDqWNpZmllciB1bmUgYnJhbmNoZSBhbW9udCBkZSBIRUFEIHBhciAlcyBxdWkgbmUgcG9pbnRlIHN1ciAiCiAiYXVjdW5lIGJyYW5jaGUuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc3NiBidWlsdGluL2JyYW5jaC5jOjc5OAorIzogYnVpbHRpbi9icmFuY2guYzo4MDQgYnVpbHRpbi9icmFuY2guYzo4MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBicmFuY2ggJyVzJyIKIG1zZ3N0ciAicGFzIGRlIGJyYW5jaGUgJyVzJyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3ODAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJsYSBicmFuY2hlICclcycgbidleGlzdGUgcGFzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc5MgorIzogYnVpbHRpbi9icmFuY2guYzo4MjEKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgdG8gdW5zZXQgdXBzdHJlYW0iCiBtc2dzdHIgInRyb3AgZCdhcmd1bWVudHMgcG91ciBkw6lzYWN0aXZlciB1biBhbW9udCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3OTYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODI1CiBtc2dpZCAiY291bGQgbm90IHVuc2V0IHVwc3RyZWFtIG9mIEhFQUQgd2hlbiBpdCBkb2VzIG5vdCBwb2ludCB0byBhbnkgYnJhbmNoLiIKIG1zZ3N0ciAiIgogImltcG9zc2libGUgZGUgZMOpc2FjdGl2ZXIgdW5lIGJyYW5jaGUgYW1vbnQgZGUgSEVBRCBxdWFuZCBlbGxlIG5lIHBvaW50ZSBzdXIgIgogImF1Y3VuZSBicmFuY2hlLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MDIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIGhhcyBubyB1cHN0cmVhbSBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiTGEgYnJhbmNoZSAnJXMnIG4nYSBhdWN1bmUgaW5mb3JtYXRpb24gZGUgYnJhbmNoZSBhbW9udCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MTIKLW1zZ2lkICItYSBhbmQgLXIgb3B0aW9ucyB0byAnZ2l0IGJyYW5jaCcgZG8gbm90IG1ha2Ugc2Vuc2Ugd2l0aCBhIGJyYW5jaCBuYW1lIgorIzogYnVpbHRpbi9icmFuY2guYzo4NDEKK21zZ2lkICIiCisiVGhlIC1hLCBhbmQgLXIsIG9wdGlvbnMgdG8gJ2dpdCBicmFuY2gnIGRvIG5vdCB0YWtlIGEgYnJhbmNoIG5hbWUuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHVzZTogLWF8LXIgLS1saXN0IDxwYXR0ZXJuPj8iCiBtc2dzdHIgIiIKLSJsZXMgb3B0aW9ucyAtYSBldCAtciBkZSAnZ2l0IGJyYW5jaCcgbidvbnQgcGFzIGRlIHNlbnMgYXZlYyB1biBub20gZGUgYnJhbmNoZSIKKyJMZXMgb3B0aW9ucyAtYSBldCAtciBkZSAnZ2l0IGJyYW5jaCcgbidvbnQgcGFzIGRlIHNlbnMgYXZlYyB1biBub20gZGUgIgorImJyYW5jaGUuXG4iCisiVm91bGllei12b3VzIHBsdXTDtHQgZGlyZSAtYXwtciAtLWxpc3QgPG1vdGlmPsKgPyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MTUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODQ1CiBtc2dpZCAiIgogInRoZSAnLS1zZXQtdXBzdHJlYW0nIG9wdGlvbiBpcyBubyBsb25nZXIgc3VwcG9ydGVkLiBQbGVhc2UgdXNlICctLXRyYWNrJyBvciAiCiAiJy0tc2V0LXVwc3RyZWFtLXRvJyBpbnN0ZWFkLiIKQEAgLTg1NTcsMjAgKzExMDc3LDY1IEBACiAibCdvcHRpb24gJy0tc2V0LXVwc3RyZWFtJyBlc3Qgb2Jzb2zDqHRlLiBVdGlsaXNleiAnLS10cmFjaycgb3UgJy0tc2V0LSIKICJ1cHN0cmVhbS10bycgw6AgbGEgcGxhY2UuIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjQ1CisjOiBidWlsdGluL2J1bmRsZS5jOjE1IGJ1aWx0aW4vYnVuZGxlLmM6MjMKK21zZ2lkICJnaXQgYnVuZGxlIGNyZWF0ZSBbPG9wdGlvbnM+XSA8ZmlsZT4gPGdpdC1yZXYtbGlzdCBhcmdzPiIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSBjcmVhdGUgWzxvcHRpb25zPl0gPGZpY2hpZXI+IDxhcmdzIGdpdC1yZXYtbGlzdD4iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTYgYnVpbHRpbi9idW5kbGUuYzoyOAorbXNnaWQgImdpdCBidW5kbGUgdmVyaWZ5IFs8b3B0aW9ucz5dIDxmaWxlPiIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSB2ZXJpZnkgWzxvcHRpb25zPl0gPGZpY2hpZXI+IgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE3IGJ1aWx0aW4vYnVuZGxlLmM6MzMKK21zZ2lkICJnaXQgYnVuZGxlIGxpc3QtaGVhZHMgPGZpbGU+IFs8cmVmbmFtZT4uLi5dIgorbXNnc3RyICJnaXQgYnVuZGxlIGxpc3QtaGVhZHMgPGZpY2hpZXI+IFs8bm9tLWRlLXJlZj4uLi5dIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE4IGJ1aWx0aW4vYnVuZGxlLmM6MzgKK21zZ2lkICJnaXQgYnVuZGxlIHVuYnVuZGxlIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSB1bmJ1bmRsZSA8ZmljaGllcj4gWzxub20tZGUtcmVmPi4uLl0iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NjYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzc1Cittc2dpZCAiZG8gbm90IHNob3cgcHJvZ3Jlc3MgbWV0ZXIiCittc2dzdHIgIm5lIHBhcyBhZmZpY2hlciBsYSBiYXJyZSBkZSBwcm9ncmVzc2lvbiIKKworIzogYnVpbHRpbi9idW5kbGUuYzo2OCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzcKK21zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIgorbXNnc3RyICJhZmZpY2hlciBsYSBiYXJyZSBkZSBwcm9ncmVzc2lvbiIKKworIzogYnVpbHRpbi9idW5kbGUuYzo3MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzkKK21zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKK21zZ3N0ciAiYWZmaWNoZXIgbGEgYmFycmUgZGUgcHJvZ3Jlc3Npb24gZHVyYW50IGxhIHBoYXNlIGQnw6ljcml0ZSBkZXMgb2JqZXRzIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjczIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4MgorbXNnaWQgInNpbWlsYXIgdG8gLS1hbGwtcHJvZ3Jlc3Mgd2hlbiBwcm9ncmVzcyBtZXRlciBpcyBzaG93biIKK21zZ3N0ciAic2ltaWxhaXJlIMOgIC0tYWxsLXByb2dyZXNzIHF1YW5kIGxhIGJhcnJlIGRlIHByb2dyZXNzaW9uIGVzdCBhZmZpY2jDqWUiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6OTMKK21zZ2lkICJOZWVkIGEgcmVwb3NpdG9yeSB0byBjcmVhdGUgYSBidW5kbGUuIgorbXNnc3RyICJMYSBjcsOpYXRpb24gZCd1biBjb2xpcyByZXF1aWVydCB1biBkw6lww7R0LiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxMDQKK21zZ2lkICJkbyBub3Qgc2hvdyBidW5kbGUgZGV0YWlscyIKK21zZ3N0ciAibmUgcGFzIGFmZmljaGVyIGxlcyBkw6l0YWlscyBkdSBjb2xpcyIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgb2theVxuIgogbXNnc3RyICIlcyBlc3QgY29ycmVjdFxuIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjU4Ci1tc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKLW1zZ3N0ciAiTGEgY3LDqWF0aW9uIGQndW4gY29saXMgcmVxdWllcnQgdW4gZMOpcMO0dC4iCi0KLSM6IGJ1aWx0aW4vYnVuZGxlLmM6NjIKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTYwCiBtc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gdW5idW5kbGUuIgogbXNnc3RyICJMZSBkw6lwYXF1ZXRhZ2UgZCd1biBjb2xpcyByZXF1aWVydCB1biBkw6lww7R0LiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU4NworIzogYnVpbHRpbi9idW5kbGUuYzoxNjggYnVpbHRpbi9yZW1vdGUuYzoxNjg2Cittc2dpZCAiYmUgdmVyYm9zZTsgbXVzdCBiZSBwbGFjZWQgYmVmb3JlIGEgc3ViY29tbWFuZCIKK21zZ3N0ciAiw6p0cmUgdmVyYmV1eCA6IGRvaXQgw6p0cmUgcGxhY8OpIGF2YW50IHVuZSBzb3VzLWNvbW1hbmRlIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE5MCBidWlsdGluL3JlbW90ZS5jOjE3MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5rbm93biBzdWJjb21tYW5kOiAlcyIKK21zZ3N0ciAiU291cy1jb21tYW5kZSBpbmNvbm51ZSA6ICVzIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NTk1CiBtc2dpZCAiIgogImdpdCBjYXQtZmlsZSAoLXQgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1zIFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtZSB8IC0iCiAicCB8IDx0eXBlPiB8IC0tdGV4dGNvbnYgfCAtLWZpbHRlcnMpIFstLXBhdGg9PHBhdGg+XSA8b2JqZWN0PiIKQEAgLTg1NzgsNyArMTExNDMsNyBAQAogImdpdCBjYXQtZmlsZSAoLXQgWy0tYWxsb3ctdW5rbm93LXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93LXR5cGVdIHwgLWUgfCAtcCAiCiAifCA8dHlwZT4gfCAtLXRleHRjb252IHwgLS1maWx0ZXJzKSBbLS1wYXRoPTxjaGVtaW4+XSA8b2JqZXQ+IgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NTg4CisjOiBidWlsdGluL2NhdC1maWxlLmM6NTk2CiBtc2dpZCAiIgogImdpdCBjYXQtZmlsZSAoLS1iYXRjaCB8IC0tYmF0Y2gtY2hlY2spIFstLWZvbGxvdy1zeW1saW5rc10gWy0tdGV4dGNvbnYgfCAtLSIKICJmaWx0ZXJzXSIKQEAgLTg1ODYsMTM2ICsxMTE1MSwxMzYgQEAKICJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCiAiZmlsdGVyc10iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MDkKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MTcKIG1zZ2lkICJvbmx5IG9uZSBiYXRjaCBvcHRpb24gbWF5IGJlIHNwZWNpZmllZCIKIG1zZ3N0ciAidW5lIHNldWxlIG9wdGlvbiBkZSB0cmFpdGVtZW50IG5lIHBldXQgw6p0cmUgc3DDqWNpZmnDqWUgw6AgbGEgZm9pcyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYyNworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNQogbXNnaWQgIjx0eXBlPiBjYW4gYmUgb25lIG9mOiBibG9iLCB0cmVlLCBjb21taXQsIHRhZyIKIG1zZ3N0ciAiPHR5cGU+IHBldXQgw6p0cmUgOiBibG9iLCB0cmVlLCBjb21taXQgb3UgdGFnIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjI4CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM2CiBtc2dpZCAic2hvdyBvYmplY3QgdHlwZSIKIG1zZ3N0ciAiYWZmaWNoZXIgbGUgdHlwZSBkZSBsJ29iamV0IgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjI5CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM3CiBtc2dpZCAic2hvdyBvYmplY3Qgc2l6ZSIKIG1zZ3N0ciAiYWZmaWNoZXIgbGEgdGFpbGxlIGRlIGwnb2JqZXQiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzEKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzkKIG1zZ2lkICJleGl0IHdpdGggemVybyB3aGVuIHRoZXJlJ3Mgbm8gZXJyb3IiCiBtc2dzdHIgInNvcnRpciBhdmVjIHVuIGNvZGUgZCdlcnJldXIgbnVsIHF1YW5kIGlsIG4neSBhIGF1Y3VuZSBlcnJldXIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzIKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDAKIG1zZ2lkICJwcmV0dHktcHJpbnQgb2JqZWN0J3MgY29udGVudCIKIG1zZ3N0ciAiYWZmaWNoZXIgYXZlYyBtaXNlIGVuIGZvcm1lIGxlIGNvbnRlbnUgZGUgbCdvYmpldCIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MgogbXNnaWQgImZvciBibG9iIG9iamVjdHMsIHJ1biB0ZXh0Y29udiBvbiBvYmplY3QncyBjb250ZW50IgogbXNnc3RyICJwb3VyIGxlcyBvYmpldHMgYmxvYiwgbGFuY2VyIHRleHRjb252IHN1ciBsZSBjb250ZW51IGRlIGwnb2JqZXQiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzYKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDQKIG1zZ2lkICJmb3IgYmxvYiBvYmplY3RzLCBydW4gZmlsdGVycyBvbiBvYmplY3QncyBjb250ZW50IgogbXNnc3RyICJwb3VyIGxlcyBvYmpldHMgYmxvYiwgbGFuY2VyIGxlcyBmaWx0cmVzIHN1ciBsZSBjb250ZW51IGRlIGwnb2JqZXQiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzcgZ2l0LXN1Ym1vZHVsZS5zaDo4NTcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDUgZ2l0LXN1Ym1vZHVsZS5zaDoxMDAyCiBtc2dpZCAiYmxvYiIKIG1zZ3N0ciAiYmxvYiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzOAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NgogbXNnaWQgInVzZSBhIHNwZWNpZmljIHBhdGggZm9yIC0tdGV4dGNvbnYvLS1maWx0ZXJzIgogbXNnc3RyICJ1dGlsaXNlciB1biBjaGVtaW4gc3DDqWNpZmlxdWUgcG91ciAtLXRleHRjb252Ly0tZmlsdGVycyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0OAogbXNnaWQgImFsbG93IC1zIGFuZCAtdCB0byB3b3JrIHdpdGggYnJva2VuL2NvcnJ1cHQgb2JqZWN0cyIKIG1zZ3N0ciAiYXV0b3Jpc2VyIC1zIGV0IC10IMOgIHRyYXZhaWxsZXIgc3VyIGRlcyBvYmpldHMgY2Fzc8Opcy9jb3Jyb21wdXMiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDEKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDkKIG1zZ2lkICJidWZmZXIgLS1iYXRjaCBvdXRwdXQiCiBtc2dzdHIgImJ1ZmZlcmlzZXIgbGEgc29ydGllIGRlIC0tYmF0Y2giCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDMKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTEKIG1zZ2lkICJzaG93IGluZm8gYW5kIGNvbnRlbnQgb2Ygb2JqZWN0cyBmZWQgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgIiIKICJhZmZpY2hlciBsJ2luZm9ybWF0aW9uIGV0IGxlIGNvbnRlbnUgZGVzIG9iamV0cyBwYXNzw6lzIGVuIGVudHLDqWUgc3RhbmRhcmQiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTUKIG1zZ2lkICJzaG93IGluZm8gYWJvdXQgb2JqZWN0cyBmZWQgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgImFmZmljaGVyIGwnaW5mb3JtYXRpb24gZGVzIG9iamV0cyBwYXNzw6lzIGVuIGVudHLDqWUgc3RhbmRhcmQiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTEKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTkKIG1zZ2lkICJmb2xsb3cgaW4tdHJlZSBzeW1saW5rcyAodXNlZCB3aXRoIC0tYmF0Y2ggb3IgLS1iYXRjaC1jaGVjaykiCiBtc2dzdHIgIiIKICJzdWl2cmUgbGVzIGxpZW5zIHN5bWJvbGlxdWUgaW50ZXJuZXMgw6AgbGEgY29waWUgZGUgdHJhdmFpbCAodXRpbGlzw6kgYXZlYyAtLSIKICJiYXRjaCBvdSAtLWJhdGNoLWNoZWNrKSIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1MworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY2MQogbXNnaWQgInNob3cgYWxsIG9iamVjdHMgd2l0aCAtLWJhdGNoIG9yIC0tYmF0Y2gtY2hlY2siCiBtc2dzdHIgIm1vbnRyZXIgdG91cyBsZXMgb2JqZXRzIGF2ZWMgLS1iYXRjaCBvdSAtLWJhdGNoLWNoZWNrIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjU1CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjYzCiBtc2dpZCAiZG8gbm90IG9yZGVyIC0tYmF0Y2gtYWxsLW9iamVjdHMgb3V0cHV0IgogbXNnc3RyICJuZSBwYXMgb3Jkb25uZXIgbGEgc29ydGllIGRlIC0tYmF0Y2gtYWxsLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjEyCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxMwogbXNnaWQgImdpdCBjaGVjay1hdHRyIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSBbLS1dIDxwYXRobmFtZT4uLi4iCiBtc2dzdHIgImdpdCBjaGVjay1hdHRyIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSBbLS1dIDxjaGVtaW4+Li4uIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxMworIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTQKIG1zZ2lkICJnaXQgY2hlY2stYXR0ciAtLXN0ZGluIFstel0gWy1hIHwgLS1hbGwgfCA8YXR0cj4uLi5dIgogbXNnc3RyICJnaXQgY2hlY2stYXR0ciAtLXN0ZGluIFstel0gWy1hIHwgLS1hbGwgfCA8YXR0cj4uLi5dIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMAorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjEKIG1zZ2lkICJyZXBvcnQgYWxsIGF0dHJpYnV0ZXMgc2V0IG9uIGZpbGUiCiBtc2dzdHIgImFmZmljaGVyIHRvdXMgbGVzIGF0dHJpYnV0cyBhc3NvY2nDqXMgYXUgZmljaGllciIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjEKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIyCiBtc2dpZCAidXNlIC5naXRhdHRyaWJ1dGVzIG9ubHkgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgInV0aWxpc2VyIC5naXRhdHRyaWJ1dGVzIHNldWxlbWVudCBkZXB1aXMgbCdpbmRleCIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNCBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAxCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMyBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI1IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKIG1zZ2lkICJyZWFkIGZpbGUgbmFtZXMgZnJvbSBzdGRpbiIKIG1zZ3N0ciAibGlyZSBsZXMgbm9tcyBkZSBmaWNoaWVyIGRlcHVpcyBsJ2VudHLDqWUgc3RhbmRhcmQiCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjI0IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjYKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjI1IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjcKIG1zZ2lkICJ0ZXJtaW5hdGUgaW5wdXQgYW5kIG91dHB1dCByZWNvcmRzIGJ5IGEgTlVMIGNoYXJhY3RlciIKIG1zZ3N0ciAiIgogInRlcm1pbmVyIGxlcyBlbnJlZ2lzdHJlbWVudHMgZW4gZW50csOpZSBldCBlbiBzb3J0aWUgcGFyIHVuIGNhcmFjdMOocmUgTlVMIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjIwIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM0IGJ1aWx0aW4vZ2MuYzo1MTcKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTUKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjEgYnVpbHRpbi9jaGVja291dC5jOjE0NjQgYnVpbHRpbi9nYy5jOjUzNworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5OQogbXNnaWQgInN1cHByZXNzIHByb2dyZXNzIHJlcG9ydGluZyIKIG1zZ3N0ciAic3VwcHJpbWVyIGwnw6l0YXQgZCdhdmFuY2VtZW50IgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI4CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI5CiBtc2dpZCAic2hvdyBub24tbWF0Y2hpbmcgaW5wdXQgcGF0aHMiCiBtc2dzdHIgImFmZmljaGVyIGxlcyBjaGVtaW5zIGVuIGVudHLDqWUgcXVpIG5lIGNvcnJlc3BvbmRlbnQgcGFzIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjMwCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjMxCiBtc2dpZCAiaWdub3JlIGluZGV4IHdoZW4gY2hlY2tpbmciCiBtc2dzdHIgImlnbm9yZXIgbCdpbmRleCBwZW5kYW50IGxhIHbDqXJpZmljYXRpb24iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTU5CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2MwogbXNnaWQgImNhbm5vdCBzcGVjaWZ5IHBhdGhuYW1lcyB3aXRoIC0tc3RkaW4iCiBtc2dzdHIgImltcG9zc2libGUgZGUgc3DDqWNpZmllciBsZXMgY2hlbWlucyBhdmVjIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTYyCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2NgogbXNnaWQgIi16IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLXN0ZGluIgogbXNnc3RyICIteiBuJ2EgZGUgc2VucyBxdSdhdmVjIGwnb3B0aW9uIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY0CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2OAogbXNnaWQgIm5vIHBhdGggc3BlY2lmaWVkIgogbXNnc3RyICJhdWN1biBjaGVtaW4gc3DDqWNpZmnDqSIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjgKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTcyCiBtc2dpZCAiLS1xdWlldCBpcyBvbmx5IHZhbGlkIHdpdGggYSBzaW5nbGUgcGF0aG5hbWUiCiBtc2dzdHIgIi0tcXVpZXQgbidlc3QgdmFsaWRlIHF1J2F2ZWMgdW4gc2V1bCBjaGVtaW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTcwCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3NAogbXNnaWQgImNhbm5vdCBoYXZlIGJvdGggLS1xdWlldCBhbmQgLS12ZXJib3NlIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnYXZvaXIgLS1xdWlldCBldCAtLXZlcmJvc2UiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTczCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3NwogbXNnaWQgIi0tbm9uLW1hdGNoaW5nIGlzIG9ubHkgdmFsaWQgd2l0aCAtLXZlcmJvc2UiCiBtc2dzdHIgIi0tbm9uLW1hdGNoaW5nIG4nZXN0IHZhbGlkZSBxdSdhdmVjIC0tdmVyYm9zZSIKIApAQCAtODczNiw1NiArMTEzMDEsNTYgQEAKIG1zZ2lkICJubyBjb250YWN0cyBzcGVjaWZpZWQiCiBtc2dzdHIgImF1Y3VuIGNvbnRhY3Qgc3DDqWNpZmnDqSIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjEyOAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjEzMQogbXNnaWQgImdpdCBjaGVja291dC1pbmRleCBbPG9wdGlvbnM+XSBbLS1dIFs8ZmlsZT4uLi5dIgogbXNnc3RyICJnaXQgY2hlY2tvdXQtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpY2hpZXI+Li4uXSIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE0NQorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE0OAogbXNnaWQgInN0YWdlIHNob3VsZCBiZSBiZXR3ZWVuIDEgYW5kIDMgb3IgYWxsIgogbXNnc3RyICJzdGFnZSBkb2l0IHZhbG9pciBlbnRyZSAxIGV0IDMsIG91IGFsbCIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2MQorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NAogbXNnaWQgImNoZWNrIG91dCBhbGwgZmlsZXMgaW4gdGhlIGluZGV4IgogbXNnc3RyICJleHRyYWlyZSB0b3VzIGxlcyBmaWNoaWVycyBwcsOpc2VudHMgZGFucyBsJ2luZGV4IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTYyCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY1CiBtc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGV4aXN0aW5nIGZpbGVzIgogbXNnc3RyICJmb3JjZXIgbCfDqWNyYXNlbWVudCBkZXMgZmljaGllcnMgZXhpc3RhbnRzIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY0CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY3CiBtc2dpZCAibm8gd2FybmluZyBmb3IgZXhpc3RpbmcgZmlsZXMgYW5kIGZpbGVzIG5vdCBpbiBpbmRleCIKIG1zZ3N0ciAiIgogInBhcyBkJ2F2ZXJ0aXNzZW1lbnQgcG91ciBsZXMgZmljaGllcnMgZXhpc3RhbnRzIGV0IGxlcyBmaWNoaWVycyBhYnNlbnRzIGRlICIKICJsJ2luZGV4IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY2CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY5CiBtc2dpZCAiZG9uJ3QgY2hlY2tvdXQgbmV3IGZpbGVzIgogbXNnc3RyICJuZSBwYXMgZXh0cmFpcmUgbGVzIG5vdXZlYXV4IGZpY2hpZXJzIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcxCiBtc2dpZCAidXBkYXRlIHN0YXQgaW5mb3JtYXRpb24gaW4gdGhlIGluZGV4IGZpbGUiCiBtc2dzdHIgIm1ldHRyZSDDoCBqb3VyIGwnaW5mb3JtYXRpb24gZGUgc3RhdCBkYW5zIGxlIGZpY2hpZXIgZCdpbmRleCIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3MgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NQogbXNnaWQgInJlYWQgbGlzdCBvZiBwYXRocyBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAibGlyZSBsYSBsaXN0ZSBkZXMgY2hlbWlucyBkZXB1aXMgbCdlbnRyw6llIHN0YW5kYXJkIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc0CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc3CiBtc2dpZCAid3JpdGUgdGhlIGNvbnRlbnQgdG8gdGVtcG9yYXJ5IGZpbGVzIgogbXNnc3RyICLDqWNyaXJlIGxlIGNvbnRlbnUgZGFucyBkZXMgZmljaGllcnMgdGVtcG9yYWlyZXMiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzUgYnVpbHRpbi9jb2x1bW4uYzozMQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzEKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODUzCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjY4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc4IGJ1aWx0aW4vY29sdW1uLmM6MzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxMSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY3MgogbXNnaWQgInN0cmluZyIKIG1zZ3N0ciAiY2hhw65uZSIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3OQogbXNnaWQgIndoZW4gY3JlYXRpbmcgZmlsZXMsIHByZXBlbmQgPHN0cmluZz4iCiBtc2dzdHIgImxvcnMgZGUgbGEgY3LDqWF0aW9uIGRlIGZpY2hpZXJzLCBwcsOpZml4ZXIgcGFyIDxjaGHDrm5lPiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3OAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE4MQogbXNnaWQgImNvcHkgb3V0IHRoZSBmaWxlcyBmcm9tIG5hbWVkIHN0YWdlIgogbXNnc3RyICJjb3BpZXIgbGVzIGZpY2hpZXJzIGRlcHVpcyBsJ2luZGV4IG5vbW3DqSIKIApAQCAtODc5NywxMDcgKzExMzYyLDE2MSBAQAogbXNnaWQgImdpdCBjaGVja291dCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIC0tIDxmaWxlPi4uLiIKIG1zZ3N0ciAiZ2l0IGNoZWNrb3V0IFs8b3B0aW9ucz5dIFs8YnJhbmNoZT5dIC0tIDxmaWNoaWVyPi4uLiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjE0NCBidWlsdGluL2NoZWNrb3V0LmM6MTc3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzcKK21zZ2lkICJnaXQgc3dpdGNoIFs8b3B0aW9ucz5dIFs8YnJhbmNoPl0iCittc2dzdHIgImdpdCBzd2l0Y2ggWzxvcHRpb25zPl0gPGJyYW5jaGU+IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDIKK21zZ2lkICJnaXQgcmVzdG9yZSBbPG9wdGlvbnM+XSBbLS1zb3VyY2U9PGJyYW5jaD5dIDxmaWxlPi4uLiIKK21zZ3N0ciAiZ2l0IHJlc3RvcmUgWzxvcHRpb25zPl0gWy0tc291cmNlPTxicmFuY2hlPl0gPGZpY2hpZXI+Li4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc1IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgb3VyIHZlcnNpb24iCiBtc2dzdHIgImxlIGNoZW1pbiAnJXMnIG4nYSBwYXMgbm90cmUgdmVyc2lvbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjE0NiBidWlsdGluL2NoZWNrb3V0LmM6MTc5CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgdGhlaXIgdmVyc2lvbiIKIG1zZ3N0ciAibGUgY2hlbWluICclcycgbidhIHBhcyBsZXVyIHZlcnNpb24iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgYWxsIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKIG1zZ3N0ciAibGUgY2hlbWluICclcycgbidhIGF1Y3VuZSBkZXMgdmVyc2lvbnMgbsOpY2Vzc2FpcmVzIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjA2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjQzCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKIG1zZ3N0ciAibGUgY2hlbWluICclcycgbidhIHBhcyBsZXMgdmVyc2lvbnMgbsOpY2Vzc2FpcmVzIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjI0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJzogY2Fubm90IG1lcmdlIgogbXNnc3RyICJjaGVtaW4gJyVzJyA6IGltcG9zc2libGUgZGUgZnVzaW9ubmVyIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjQwCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBhZGQgbWVyZ2UgcmVzdWx0IGZvciAnJXMnIgogbXNnc3RyICJJbXBvc3NpYmxlIGQnYWpvdXRlciBsZSByw6lzdWx0YXQgZGUgZnVzaW9uIHBvdXIgJyVzJyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjI2MiBidWlsdGluL2NoZWNrb3V0LmM6MjY1IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNjgKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0IgorbXNnaWRfcGx1cmFsICJSZWNyZWF0ZWQgJWQgbWVyZ2UgY29uZmxpY3RzIgorbXNnc3RyWzBdICIlZCBjb25mbGl0IGR1IGZ1c2lvbiByZWNyw6nDqSIKK21zZ3N0clsxXSAiJWQgY29uZmxpdHMgZHUgZnVzaW9uIHJlY3LDqcOpcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4MgorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSAlcyIKK21zZ2lkX3BsdXJhbCAiVXBkYXRlZCAlZCBwYXRocyBmcm9tICVzIgorbXNnc3RyWzBdICIlZCBjaGVtaW4gbWlzIMOgIGpvdXIgZGVwdWlzICVzIgorbXNnc3RyWzFdICIlZCBjaGVtaW5zIG1pcyDDoCBqb3VyIGRlcHVpcyAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4OQorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSB0aGUgaW5kZXgiCittc2dpZF9wbHVyYWwgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSB0aGUgaW5kZXgiCittc2dzdHJbMF0gIiVkIGNoZW1pbiBtaXMgw6Agam91ciBkZXB1aXMgbCdpbmRleCIKK21zZ3N0clsxXSAiJWQgY2hlbWlucyBtaXMgw6Agam91ciBkZXB1aXMgbCdpbmRleCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQxMiBidWlsdGluL2NoZWNrb3V0LmM6NDE1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHVwZGF0aW5nIHBhdGhzIgogbXNnc3RyICInJXMnIG5lIHBldXQgcGFzIMOqdHJlIHV0aWxpc8OpIGF2ZWMgZGVzIG1pc2VzIMOgIGpvdXIgZGUgY2hlbWlucyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjI3NCBidWlsdGluL2NoZWNrb3V0LmM6Mjc3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDI1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgogbXNnc3RyICInJXMnIG5lIHBldXQgcGFzIMOqdHJlIHV0aWxpc8OpIGF2ZWMgJXMiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyODAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHVwZGF0ZSBwYXRocyBhbmQgc3dpdGNoIHRvIGJyYW5jaCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUuIgogbXNnc3RyICIiCiAiSW1wb3NzaWJsZSBkZSBtZXR0cmUgw6Agam91ciBsZXMgY2hlbWlucyBldCBiYXNjdWxlciBzdXIgbGEgYnJhbmNoZSAnJXMnIGVuICIKICJtw6ptZSB0ZW1wcy4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNDkgYnVpbHRpbi9jaGVja291dC5jOjM1NgorIzogYnVpbHRpbi9jaGVja291dC5jOjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICJuZWl0aGVyICclcycgb3IgJyVzJyBpcyBzcGVjaWZpZWQiCittc2dzdHIgIm5pICclcycsIG5pICclcycgc3DDqWNpZmnDqSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQ0MAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG11c3QgYmUgdXNlZCB3aGVuICclcycgaXMgbm90IHNwZWNpZmllZCIKK21zZ3N0ciAiJyVzJyBuZSBwZXV0IHBhcyDDqnRyZSB1dGlsaXPDqSBxdWFuZCAnJXMnIG4nZXN0IHBhcyBzcMOpY2lmacOpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDQ1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBvciAnJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiCittc2dzdHIgIiclcycgb3UgJyVzJyBuZSBwZXV0IHBhcyDDqnRyZSB1dGlsaXPDqSBhdmVjICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTA5IGJ1aWx0aW4vY2hlY2tvdXQuYzo1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGlzIHVubWVyZ2VkIgogbXNnc3RyICJsZSBjaGVtaW4gJyVzJyBuJ2VzdCBwYXMgZnVzaW9ubsOpIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NjA4CisjOiBidWlsdGluL2NoZWNrb3V0LmM6Njg0IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MTA2CiBtc2dpZCAieW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiCiBtc2dzdHIgInZvdXMgZGV2ZXogZCdhYm9yZCByw6lzb3VkcmUgdm90cmUgaW5kZXggY291cmFudCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc0NQorIzogYnVpbHRpbi9jaGVja291dC5jOjczNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY2Fubm90IGNvbnRpbnVlIHdpdGggc3RhZ2VkIGNoYW5nZXMgaW4gdGhlIGZvbGxvd2luZyBmaWxlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgY29udGludWVyIGF2ZWMgZGVzIG1vZGlmaWNhdGlvbnMgaW5kZXjDqWVzIGRhbnMgbGVzIGZpY2hpZXJzICIKKyJzdWl2YW50cyA6XG4iCisiJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2FuIG5vdCBkbyByZWZsb2cgZm9yICclcyc6ICVzXG4iCiBtc2dzdHIgIkltcG9zc2libGUgZGUgZmFpcmUgdW4gcmVmbG9nIHBvdXIgJyVzJ8KgOiAlc1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Nzg2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODc5CiBtc2dpZCAiSEVBRCBpcyBub3cgYXQiCiBtc2dzdHIgIkhFQUQgZXN0IG1haW50ZW5hbnQgc3VyIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NzkwIGJ1aWx0aW4vY2xvbmUuYzo2OTIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODMgYnVpbHRpbi9jbG9uZS5jOjcxNwogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgSEVBRCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBtZXR0cmUgw6Agam91ciBIRUFEIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Nzk0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlc2V0IGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIlJlbWlzZSDDoCB6w6lybyBkZSBsYSBicmFuY2hlICclcydcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc5NworIzogYnVpbHRpbi9jaGVja291dC5jOjg5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJBbHJlYWR5IG9uICclcydcbiIKIG1zZ3N0ciAiRMOpasOgIHN1ciAnJXMnXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3dpdGNoZWQgdG8gYW5kIHJlc2V0IGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIkJhc2N1bGVtZW50IGV0IHJlbWlzZSDDoCB6w6lybyBkZSBsYSBicmFuY2hlICclcydcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjgwMyBidWlsdGluL2NoZWNrb3V0LmM6MTE2NgorIzogYnVpbHRpbi9jaGVja291dC5jOjg5NiBidWlsdGluL2NoZWNrb3V0LmM6MTMyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJTd2l0Y2hlZCB0byBhIG5ldyBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICJCYXNjdWxlbWVudCBzdXIgbGEgbm91dmVsbGUgYnJhbmNoZSAnJXMnXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3dpdGNoZWQgdG8gYnJhbmNoICclcydcbiIKIG1zZ3N0ciAiQmFzY3VsZW1lbnQgc3VyIGxhIGJyYW5jaGUgJyVzJ1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODU2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAuLi4gYW5kICVkIG1vcmUuXG4iCiBtc2dzdHIgIiAuLi4gZXQgJWQgZW4gcGx1cy5cbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjg2MgorIzogYnVpbHRpbi9jaGVja291dC5jOjk1NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiV2FybmluZzogeW91IGFyZSBsZWF2aW5nICVkIGNvbW1pdCBiZWhpbmQsIG5vdCBjb25uZWN0ZWQgdG9cbiIKQEAgLTg5MjAsNyArMTE1MzksNyBAQAogIlxuIgogIiVzXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3YW50IHRvIGtlZXAgaXQgYnkgY3JlYXRpbmcgYSBuZXcgYnJhbmNoLCB0aGlzIG1heSBiZSBhIGdvb2QgdGltZVxuIgpAQCAtODk0OSwxNzYgKzExNTY4LDI5IEBACiAiZ2l0IGJyYW5jaCA8bm91dmVsbGUtYnJhbmNoZT4gJXNcbiIKICJcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjkxMworIzogYnVpbHRpbi9jaGVja291dC5jOjEwMDkKIG1zZ2lkICJpbnRlcm5hbCBlcnJvciBpbiByZXZpc2lvbiB3YWxrIgogbXNnc3RyICJlcnJldXIgaW50ZXJuZSBsb3JzIGR1IHBhcmNvdXJzIGRlcyByw6l2aXNpb25zIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTE3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTAxMwogbXNnaWQgIlByZXZpb3VzIEhFQUQgcG9zaXRpb24gd2FzIgogbXNnc3RyICJMYSBwb3NpdGlvbiBwcsOpY8OpZGVudGUgZGUgSEVBRCDDqXRhaXQgc3VyIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTQ1IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTYxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTA1MyBidWlsdGluL2NoZWNrb3V0LmM6MTMxNQogbXNnaWQgIllvdSBhcmUgb24gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iCiBtc2dzdHIgIlZvdXMgw6p0ZXMgc3VyIHVuZSBicmFuY2hlIHF1aSBkb2l0IGVuY29yZSBuYcOudHJlIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTA2NgotIywgYy1mb3JtYXQKLW1zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQsICVkIGdpdmVuLiIKLW1zZ3N0ciAidW5lIHNldWxlIHLDqWbDqXJlbmNlIGF0dGVuZHVlLCAlZCBmb3Vybmllcy4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTA3IGJ1aWx0aW4vd29ya3RyZWUuYzoyODkgYnVpbHRpbi93b3JrdHJlZS5jOjQ0NAotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIHJlZmVyZW5jZTogJXMiCi1tc2dzdHIgInLDqWbDqXJlbmNlIGludmFsaWRlIDogJXMiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTM2Ci0jLCBjLWZvcm1hdAotbXNnaWQgInJlZmVyZW5jZSBpcyBub3QgYSB0cmVlOiAlcyIKLW1zZ3N0ciAibGEgcsOpZsOpcmVuY2Ugbidlc3QgcGFzIHVuIGFyYnJlIDogJXMiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTc1Ci1tc2dpZCAicGF0aHMgY2Fubm90IGJlIHVzZWQgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMiCi1tc2dzdHIgImltcG9zc2libGUgZCd1dGlsaXNlciBkZXMgY2hlbWlucyBhdmVjIHVuIGJhc2N1bGVtZW50IGRlIGJyYW5jaGVzIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE3OCBidWlsdGluL2NoZWNrb3V0LmM6MTE4MgotIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgotbXNnc3RyICInJXMnIG5lIHBldXQgcGFzIMOqdHJlIHV0aWxpc8OpIGF2ZWMgdW4gYmFzY3VsZW1lbnQgZGUgYnJhbmNoZXMiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTg2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTg5IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTk0Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE5NwotIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJyVzJyIKLW1zZ3N0ciAiJyVzJyBuZSBwZXV0IHBhcyDDqnRyZSB1dGlsaXPDqSBhdmVjICclcyciCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjAyCi0jLCBjLWZvcm1hdAotbXNnaWQgIkNhbm5vdCBzd2l0Y2ggYnJhbmNoIHRvIGEgbm9uLWNvbW1pdCAnJXMnIgotbXNnc3RyICJJbXBvc3NpYmxlIGRlIGJhc2N1bGVyIGRlIGJyYW5jaGUgdmVycyAnJXMnIHF1aSBuJ2VzdCBwYXMgdW4gY29tbWl0IgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIzNSBidWlsdGluL2NoZWNrb3V0LmM6MTIzNyBidWlsdGluL2Nsb25lLmM6MTE5Ci0jOiBidWlsdGluL3JlbW90ZS5jOjE2OSBidWlsdGluL3JlbW90ZS5jOjE3MSBidWlsdGluL3dvcmt0cmVlLmM6NDg4Ci0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDkwCi1tc2dpZCAiYnJhbmNoIgotbXNnc3RyICJicmFuY2hlIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIzNgotbXNnaWQgImNyZWF0ZSBhbmQgY2hlY2tvdXQgYSBuZXcgYnJhbmNoIgotbXNnc3RyICJjcsOpZXIgZXQgZXh0cmFpcmUgdW5lIG5vdXZlbGxlIGJyYW5jaGUiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM4Ci1tc2dpZCAiY3JlYXRlL3Jlc2V0IGFuZCBjaGVja291dCBhIGJyYW5jaCIKLW1zZ3N0ciAiY3LDqWVyL3LDqWluaXRpYWxpc2VyIGV0IGV4dHJhaXJlIHVuZSBicmFuY2hlIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIzOQotbXNnaWQgImNyZWF0ZSByZWZsb2cgZm9yIG5ldyBicmFuY2giCi1tc2dzdHIgImNyw6llciB1biByZWZsb2cgcG91ciB1bmUgbm91dmVsbGUgYnJhbmNoZSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDAgYnVpbHRpbi93b3JrdHJlZS5jOjQ5MgotbXNnaWQgImRldGFjaCBIRUFEIGF0IG5hbWVkIGNvbW1pdCIKLW1zZ3N0ciAiZMOpdGFjaGVyIGxhIEhFQUQgYXUgY29tbWl0IG5vbW3DqSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDEKLW1zZ2lkICJzZXQgdXBzdHJlYW0gaW5mbyBmb3IgbmV3IGJyYW5jaCIKLW1zZ3N0ciAicGFyYW3DqXRyZXIgbGVzIGNvb3Jkb25uw6llcyBkZSBicmFuY2hlIGFtb250IHBvdXIgdW5lIG5vdXZlbGxlIGJyYW5jaGUiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQzCi1tc2dpZCAibmV3LWJyYW5jaCIKLW1zZ3N0ciAibm91dmVsbGUgYnJhbmNoZSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDMKLW1zZ2lkICJuZXcgdW5wYXJlbnRlZCBicmFuY2giCi1tc2dzdHIgIm5vdXZlbGxlIGJyYW5jaGUgc2FucyBwYXJlbnQiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQ1Ci1tc2dpZCAiY2hlY2tvdXQgb3VyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgotbXNnc3RyICJleHRyYWlyZSBub3RyZSB2ZXJzaW9uIHBvdXIgbGVzIGZpY2hpZXJzIG5vbiBmdXNpb25uw6lzIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0OAotbXNnaWQgImNoZWNrb3V0IHRoZWlyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgotbXNnc3RyICJleHRyYWlyZSBsZXVyIHZlcnNpb24gcG91ciBsZXMgZmljaGllcnMgbm9uIGZ1c2lvbm7DqXMiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjUwCi1tc2dpZCAiZm9yY2UgY2hlY2tvdXQgKHRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucykiCi1tc2dzdHIgImZvcmNlciBsJ2V4dHJhY3Rpb24gKGxhaXNzZXIgdG9tYmVyIGxlcyBtb2RpZmljYXRpb25zIGxvY2FsZXMpIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1MgotbXNnaWQgInBlcmZvcm0gYSAzLXdheSBtZXJnZSB3aXRoIHRoZSBuZXcgYnJhbmNoIgotbXNnc3RyICJlZmZlY3R1ZXIgdW5lIGZ1c2lvbiDDoCAzIHBvaW50cyBhdmVjIGxhIG5vdXZlbGxlIGJyYW5jaGUiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU0IGJ1aWx0aW4vbWVyZ2UuYzoyNzUKLW1zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCi1tc2dzdHIgIm1ldHRyZSDDoCBqb3VyIGxlcyBmaWNoaWVycyBpZ25vcsOpcyAocGFyIGTDqWZhdXQpIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1NiBidWlsdGluL2xvZy5jOjE1NzMgcGFyc2Utb3B0aW9ucy5oOjI3NAotbXNnaWQgInN0eWxlIgotbXNnc3RyICJzdHlsZSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTcKLW1zZ2lkICJjb25mbGljdCBzdHlsZSAobWVyZ2Ugb3IgZGlmZjMpIgotbXNnc3RyICJzdHlsZSBkZSBjb25mbGl0IChtZXJnZSAoZnVzaW9uKSBvdSBkaWZmMykiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjYwCi1tc2dpZCAiZG8gbm90IGxpbWl0IHBhdGhzcGVjcyB0byBzcGFyc2UgZW50cmllcyBvbmx5IgotbXNnc3RyICJuZSBwYXMgbGltaXRlciBsZXMgc3DDqWNpZmljYXRldXJzIGRlIGNoZW1pbnMgYXV4IHNldWxzIMOpbMOpbWVudHMgY3JldXgiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjYyCi1tc2dpZCAic2Vjb25kIGd1ZXNzICdnaXQgY2hlY2tvdXQgPG5vLXN1Y2gtYnJhbmNoPiciCi1tc2dzdHIgInLDqWVzc2F5ZXIgZCdpbnRlcnByw6l0ZXIgJ2dpdCBjaGVja291dCA8YnJhbmNoZS1pbmV4aXN0YW50ZT4nIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI2NAotbXNnaWQgImRvIG5vdCBjaGVjayBpZiBhbm90aGVyIHdvcmt0cmVlIGlzIGhvbGRpbmcgdGhlIGdpdmVuIHJlZiIKLW1zZ3N0ciAiIgotIm5lIHBhcyB2w6lyaWZpZXIgc2kgdW5lIGF1dHJlIGNvcGllIGRlIHRyYXZhaWwgY29udGllbnQgbGUgcsOpZsOpcmVuY2UgZm91cm5pZSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNjggYnVpbHRpbi9jbG9uZS5jOjg2IGJ1aWx0aW4vZmV0Y2guYzoxNDEKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzIgYnVpbHRpbi9wdWxsLmM6MTI5IGJ1aWx0aW4vcHVzaC5jOjU3MgotIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzQKLW1zZ2lkICJmb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCi1tc2dzdHIgImZvcmNlciBsJ2FmZmljaGFnZSBkZSBsJ8OpdGF0IGQnYXZhbmNlbWVudCIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyOTgKLW1zZ2lkICItYiwgLUIgYW5kIC0tb3JwaGFuIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCi1tc2dzdHIgIi1iLCAtQiBldCAtLW9ycGhhbiBzb250IG11dHVlbGxlbWVudCBleGNsdXNpZnMiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzE1Ci1tc2dpZCAiLS10cmFjayBuZWVkcyBhIGJyYW5jaCBuYW1lIgotbXNnc3RyICItLXRyYWNrIHJlcXVpZXJ0IHVuIG5vbSBkZSBicmFuY2hlIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTMyMAotbXNnaWQgIm1pc3NpbmcgYnJhbmNoIG5hbWU7IHRyeSAtYiIKLW1zZ3N0ciAibm9tIGRlIGJyYW5jaGUgbWFucXVhbnQgOyBlc3NheWV6IC1iIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTM1NwotbXNnaWQgImludmFsaWQgcGF0aCBzcGVjaWZpY2F0aW9uIgotbXNnc3RyICJzcMOpY2lmaWNhdGlvbiBkZSBjaGVtaW4gaW52YWxpZGUiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY0Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiclcycgaXMgbm90IGEgY29tbWl0IGFuZCBhIGJyYW5jaCAnJXMnIGNhbm5vdCBiZSBjcmVhdGVkIGZyb20gaXQiCi1tc2dzdHIgIiIKLSInJXMnIG4nZXN0IHBhcyB1biBjb21taXQgZXQgdW5lIGJyYW5jaGUgJyVzJyBuZSBwZXV0IHBhcyBlbiDDqnRyZSBjcsOpw6llIGRlcHVpcyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCAnJXMnIgotbXNnc3RyICJnaXQgY2hlY2tvdXQ6IC0tZGV0YWNoIG4nYWNjZXB0ZSBwYXMgdW4gYXJndW1lbnQgZGUgY2hlbWluICclcyciCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzcyCi1tc2dpZCAiIgotImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIGFuZCAtLW1lcmdlIGFyZSBpbmNvbXBhdGlibGUgd2hlblxuIgotImNoZWNraW5nIG91dCBvZiB0aGUgaW5kZXguIgotbXNnc3RyICIiCi0iZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgZXQgLS1tZXJnZSBzb250IGluY29tcGF0aWJsZXMgbG9yc1xuIgotImRlIGwnZXh0cmFjdGlvbiBkZSBsJ2luZGV4LiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzOTIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKLSInJXMnIG1hdGNoZWQgbW9yZSB0aGFuIG9uZSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoLlxuIgotIldlIGZvdW5kICVkIHJlbW90ZXMgd2l0aCBhIHJlZmVyZW5jZSB0aGF0IG1hdGNoZWQuIFNvIHdlIGZlbGwgYmFja1xuIgotIm9uIHRyeWluZyB0byByZXNvbHZlIHRoZSBhcmd1bWVudCBhcyBhIHBhdGgsIGJ1dCBmYWlsZWQgdGhlcmUgdG9vIVxuIgotIlxuIgorIiclcycgY291bGQgYmUgYm90aCBhIGxvY2FsIGZpbGUgYW5kIGEgdHJhY2tpbmcgYnJhbmNoLlxuIgorIlBsZWFzZSB1c2UgLS0gKGFuZCBvcHRpb25hbGx5IC0tbm8tZ3Vlc3MpIHRvIGRpc2FtYmlndWF0ZSIKK21zZ3N0ciAiIgorIiclcycgcG91cnJhaXQgw6p0cmUgdW4gZmljaGllciBsb2NhbCBvdSB1biBicmFuY2hlIGRlIHN1aXZpLlxuIgorIlZldWlsbGV6IHV0aWxpc2VyIC0tIChldCAtLW5vLWd1ZXNzIGVuIGZhY3VsdGF0aWYpIHBvdXIgbGVzIGRpc3Rpbmd1ZXIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTM1Cittc2dpZCAiIgogIklmIHlvdSBtZWFudCB0byBjaGVjayBvdXQgYSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoIG9uLCBlLmcuICdvcmlnaW4nLFxuIgogInlvdSBjYW4gZG8gc28gYnkgZnVsbHkgcXVhbGlmeWluZyB0aGUgbmFtZSB3aXRoIHRoZSAtLXRyYWNrIG9wdGlvbjpcbiIKICJcbiIKQEAgLTkxMjgsMTAgKzExNjAwLDYgQEAKICJvbmUgcmVtb3RlLCBlLmcuIHRoZSAnb3JpZ2luJyByZW1vdGUsIGNvbnNpZGVyIHNldHRpbmdcbiIKICJjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbiBpbiB5b3VyIGNvbmZpZy4iCiBtc2dzdHIgIiIKLSInJXMnIGNvcnJlc3BvbmQgw6AgcGx1c2lldXJzIGJyYW5jaGVzIGRlIHN1aXZpIGRpc3RhbnQuIE5vdXMgYXZvbnNcbiIKLSJ0cm91dsOpICVkIGRpc3RhbnRzIGF2ZWMgdW5lIHLDqWbDqXJlbmNlIGNvcnJlc3BvbmRhbnRlLiBOb3VzIGF2b25zIGVzc2F5w6lcbiIKLSJkZSByw6lzb3VkcmUgbCdhcmd1bWVudCBjb21tZSB1biBjaGVtaW4sIHNhbnMgcGx1cyBkZSByw6lzdWx0YXTCoCFcbiIKLSJcbiIKICJTaSB2b3VzIHNvdWhhaXRpZXogZXh0cmFpcmUgdW5lIGJyYW5jaGUgZGUgc3VpdmkgZGlzdGFudCBzdXIgJ29yaWdpbicsXG4iCiAicGFyIGV4ZW1wbGUsIHF1YWxpZmllei1sYSBjb21wbMOodGVtZW50IGF2ZWMgbCdvcHRpb24gLS10cmFja8KgOlxuIgogIlxuIgpAQCAtOTE0MSwzOCArMTE2MDksMzM5IEBACiAiYW1iaWd1LCB2b3VzIHBvdXZleiBwb3NpdGlvbm5lciBjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbiBkYW5zXG4iCiAidm90cmUgY29uZmlnLiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjI3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTE0NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG1hdGNoZWQgbXVsdGlwbGUgKCVkKSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoZXMiCittc2dzdHIgIiclcycgY29ycmVzcG9uZCDDoCBwbHVzaWV1cnMgKCVkKSBicmFuY2hlcyBkZSBzdWl2aSDDoCBkaXN0YW5jZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyMTEKK21zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQiCittc2dzdHIgInVuZSBzZXVsZSByw6lmw6lyZW5jZSBhdHRlbmR1ZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkLCAlZCBnaXZlbi4iCittc2dzdHIgInVuZSBzZXVsZSByw6lmw6lyZW5jZSBhdHRlbmR1ZSwgJWQgZm91cm5pZXMuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTI3NCBidWlsdGluL3dvcmt0cmVlLmM6MjgzIGJ1aWx0aW4vd29ya3RyZWUuYzo0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWZlcmVuY2U6ICVzIgorbXNnc3RyICJyw6lmw6lyZW5jZSBpbnZhbGlkZSA6ICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTI4NyBidWlsdGluL2NoZWNrb3V0LmM6MTY0OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZlcmVuY2UgaXMgbm90IGEgdHJlZTogJXMiCittc2dzdHIgImxhIHLDqWbDqXJlbmNlIG4nZXN0IHBhcyB1biBhcmJyZSA6ICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMzNAorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290IHRhZyAnJXMnIgorbXNnc3RyICJicmFuY2hlIGF0dGVuZHVlLCBtYWlzIMOpdGlxdWV0dGUgJyVzJyByZcOndWUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgcmVtb3RlIGJyYW5jaCAnJXMnIgorbXNnc3RyICJ1bmUgYnJhbmNoZSBlc3QgYXR0ZW5kdWUsIG1haXMgdW5lIGJyYW5jaGUgZGlzdGFudGUgJyVzJyBhIMOpdMOpIHJlw6d1ZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMzcgYnVpbHRpbi9jaGVja291dC5jOjEzNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCAnJXMnIgorbXNnc3RyICJ1bmUgYnJhbmNoZSBlc3QgYXR0ZW5kdWUsIG1haXMgJyVzJyBhIMOpdMOpIHJlw6d1ZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCBjb21taXQgJyVzJyIKK21zZ3N0ciAidW5lIGJyYW5jaGUgZXN0IGF0dGVuZHVlLCBtYWlzIHVuIGNvbW1pdCAnJXMnIGEgw6l0w6kgcmXDp3UiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzU2Cittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIG1lcmdpbmdcbiIKKyJDb25zaWRlciBcImdpdCBtZXJnZSAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGRlIGJhc2N1bGVyIGRlIGJyYW5jaGUgcGVuZGFudCB1bmUgZnVzaW9uXG4iCisiRW52aXNhZ2V6IFwiZ2l0IG1lcmdlIC0tcXVpdFwiIG91IFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjAKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggaW4gdGhlIG1pZGRsZSBvZiBhbiBhbSBzZXNzaW9uXG4iCisiQ29uc2lkZXIgXCJnaXQgYW0gLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkZSBiYXNjdWxlciBkZSBicmFuY2hlIHBlbmRhbnQgdW5lIHNlc3Npb24gYW1cbiIKKyJFbnZpc2FnZXogXCJnaXQgYW0gLS1xdWl0XCIgb3UgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2NAorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSByZWJhc2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IHJlYmFzZSAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGRlIGJhc2N1bGVyIGRlIGJyYW5jaGUgcGVuZGFudCB1biByZWJhc2FnZVxuIgorIkVudmlzYWdleiBcImdpdCByZWJhc2UgLS1xdWl0XCIgb3UgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2OAorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSBjaGVycnktcGlja2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IGNoZXJyeS1waWNrIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgYmFzY3VsZXIgZGUgYnJhbmNoZSBwZW5kYW50IHVuIHBpY29yYWdlXG4iCisiRW52aXNhZ2V6IFwiZ2l0IGNoZXJyeS1waWNrIC0tcXVpdFwiIG91IFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzIKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgcmV2ZXJ0aW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgcmV2ZXJ0IC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgYmFzY3VsZXIgZGUgYnJhbmNoZSBwZW5kYW50IHVuIHJldG91clxuIgorIkVudmlzYWdleiBcImdpdCByZXZlcnQgLS1xdWl0XCIgb3UgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM3NgorbXNnaWQgInlvdSBhcmUgc3dpdGNoaW5nIGJyYW5jaCB3aGlsZSBiaXNlY3RpbmciCittc2dzdHIgIlZvdXMgYmFzY3VsZXogZGUgYnJhbmNoZSBlbiBjb3VycyBkZSBiaXNzZWN0aW9uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM4MworbXNnaWQgInBhdGhzIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGQndXRpbGlzZXIgZGVzIGNoZW1pbnMgYXZlYyB1biBiYXNjdWxlbWVudCBkZSBicmFuY2hlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzODYgYnVpbHRpbi9jaGVja291dC5jOjEzOTAgYnVpbHRpbi9jaGVja291dC5jOjEzOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKK21zZ3N0ciAiJyVzJyBuZSBwZXV0IHBhcyDDqnRyZSB1dGlsaXPDqSBhdmVjIHVuIGJhc2N1bGVtZW50IGRlIGJyYW5jaGVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM5OCBidWlsdGluL2NoZWNrb3V0LmM6MTQwMSBidWlsdGluL2NoZWNrb3V0LmM6MTQwNAorIzogYnVpbHRpbi9jaGVja291dC5jOjE0MDkgYnVpbHRpbi9jaGVja291dC5jOjE0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICclcyciCittc2dzdHIgIiclcycgbmUgcGV1dCBwYXMgw6p0cmUgdXRpbGlzw6kgYXZlYyAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQxMQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCB0YWtlIDxzdGFydC1wb2ludD4iCittc2dzdHIgIiclcycgbidhY2NlcHRlIHBhcyA8cG9pbnQtZGUtZMOpcGFydD4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDE5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBzd2l0Y2ggYnJhbmNoIHRvIGEgbm9uLWNvbW1pdCAnJXMnIgorbXNnc3RyICJJbXBvc3NpYmxlIGRlIGJhc2N1bGVyIGRlIGJyYW5jaGUgdmVycyAnJXMnIHF1aSBuJ2VzdCBwYXMgdW4gY29tbWl0IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQyNgorbXNnaWQgIm1pc3NpbmcgYnJhbmNoIG9yIGNvbW1pdCBhcmd1bWVudCIKK21zZ3N0ciAiYXJndW1lbnQgZGUgYnJhbmNoZSBvdSBkZSBjb21taXQgbWFucXVhbnQiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDY4IGJ1aWx0aW4vY2xvbmUuYzo5MSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjcyCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNSBidWlsdGluL2ZldGNoLmM6MTY3IGJ1aWx0aW4vbWVyZ2UuYzoyODYKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjI3IGJ1aWx0aW4vcHVsbC5jOjExOCBidWlsdGluL3B1c2guYzo1NjMKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc0Cittc2dpZCAiZm9yY2UgcHJvZ3Jlc3MgcmVwb3J0aW5nIgorbXNnc3RyICJmb3JjZXIgbCdhZmZpY2hhZ2UgZGUgbCfDqXRhdCBkJ2F2YW5jZW1lbnQiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDY5Cittc2dpZCAicGVyZm9ybSBhIDMtd2F5IG1lcmdlIHdpdGggdGhlIG5ldyBicmFuY2giCittc2dzdHIgImVmZmVjdHVlciB1bmUgZnVzaW9uIMOgIDMgcG9pbnRzIGF2ZWMgbGEgbm91dmVsbGUgYnJhbmNoZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NzAgYnVpbHRpbi9sb2cuYzoxNjkwIHBhcnNlLW9wdGlvbnMuaDozMjIKK21zZ2lkICJzdHlsZSIKK21zZ3N0ciAic3R5bGUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDcxCittc2dpZCAiY29uZmxpY3Qgc3R5bGUgKG1lcmdlIG9yIGRpZmYzKSIKK21zZ3N0ciAic3R5bGUgZGUgY29uZmxpdCAobWVyZ2UgKGZ1c2lvbikgb3UgZGlmZjMpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4MyBidWlsdGluL3dvcmt0cmVlLmM6NDk2Cittc2dpZCAiZGV0YWNoIEhFQUQgYXQgbmFtZWQgY29tbWl0IgorbXNnc3RyICJkw6l0YWNoZXIgbGEgSEVBRCBhdSBjb21taXQgbm9tbcOpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4NAorbXNnaWQgInNldCB1cHN0cmVhbSBpbmZvIGZvciBuZXcgYnJhbmNoIgorbXNnc3RyICJwYXJhbcOpdHJlciBsZXMgY29vcmRvbm7DqWVzIGRlIGJyYW5jaGUgYW1vbnQgcG91ciB1bmUgbm91dmVsbGUgYnJhbmNoZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODYKK21zZ2lkICJmb3JjZSBjaGVja291dCAodGhyb3cgYXdheSBsb2NhbCBtb2RpZmljYXRpb25zKSIKK21zZ3N0ciAiZm9yY2VyIGwnZXh0cmFjdGlvbiAobGFpc3NlciB0b21iZXIgbGVzIG1vZGlmaWNhdGlvbnMgbG9jYWxlcykiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg4Cittc2dpZCAibmV3LWJyYW5jaCIKK21zZ3N0ciAibm91dmVsbGUgYnJhbmNoZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODgKK21zZ2lkICJuZXcgdW5wYXJlbnRlZCBicmFuY2giCittc2dzdHIgIm5vdXZlbGxlIGJyYW5jaGUgc2FucyBwYXJlbnQiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDkwIGJ1aWx0aW4vbWVyZ2UuYzoyODkKK21zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCittc2dzdHIgIm1ldHRyZSDDoCBqb3VyIGxlcyBmaWNoaWVycyBpZ25vcsOpcyAocGFyIGTDqWZhdXQpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ5MworbXNnaWQgImRvIG5vdCBjaGVjayBpZiBhbm90aGVyIHdvcmt0cmVlIGlzIGhvbGRpbmcgdGhlIGdpdmVuIHJlZiIKK21zZ3N0ciAiIgorIm5lIHBhcyB2w6lyaWZpZXIgc2kgdW5lIGF1dHJlIGNvcGllIGRlIHRyYXZhaWwgY29udGllbnQgbGUgcsOpZsOpcmVuY2UgZm91cm5pZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MDYKK21zZ2lkICJjaGVja291dCBvdXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCittc2dzdHIgImV4dHJhaXJlIG5vdHJlIHZlcnNpb24gcG91ciBsZXMgZmljaGllcnMgbm9uIGZ1c2lvbm7DqXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTA5Cittc2dpZCAiY2hlY2tvdXQgdGhlaXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCittc2dzdHIgImV4dHJhaXJlIGxldXIgdmVyc2lvbiBwb3VyIGxlcyBmaWNoaWVycyBub24gZnVzaW9ubsOpcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MTMKK21zZ2lkICJkbyBub3QgbGltaXQgcGF0aHNwZWNzIHRvIHNwYXJzZSBlbnRyaWVzIG9ubHkiCittc2dzdHIgIm5lIHBhcyBsaW1pdGVyIGxlcyBzcMOpY2lmaWNhdGV1cnMgZGUgY2hlbWlucyBhdXggc2V1bHMgw6lsw6ltZW50cyBjcmV1eCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1NjUKK21zZ2lkICItYiwgLUIgYW5kIC0tb3JwaGFuIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIi1iLCAtQiBldCAtLW9ycGhhbiBzb250IG11dHVlbGxlbWVudCBleGNsdXNpZnMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTY4Cittc2dpZCAiLXAgYW5kIC0tb3ZlcmxheSBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICItcCBldCAtLW92ZXJsYXkgc29udCBtdXR1ZWxsZW1lbnQgZXhjbHVzaWZzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTYwNQorbXNnaWQgIi0tdHJhY2sgbmVlZHMgYSBicmFuY2ggbmFtZSIKK21zZ3N0ciAiLS10cmFjayByZXF1aWVydCB1biBub20gZGUgYnJhbmNoZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2MTAKK21zZ2lkICJtaXNzaW5nIGJyYW5jaCBuYW1lOyB0cnkgLWIiCittc2dzdHIgIm5vbSBkZSBicmFuY2hlIG1hbnF1YW50IDsgZXNzYXlleiAtYiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlc29sdmUgJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgcsOpc291ZHJlICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY1OAorbXNnaWQgImludmFsaWQgcGF0aCBzcGVjaWZpY2F0aW9uIgorbXNnc3RyICJzcMOpY2lmaWNhdGlvbiBkZSBjaGVtaW4gaW52YWxpZGUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgY29tbWl0IGFuZCBhIGJyYW5jaCAnJXMnIGNhbm5vdCBiZSBjcmVhdGVkIGZyb20gaXQiCittc2dzdHIgIiIKKyInJXMnIG4nZXN0IHBhcyB1biBjb21taXQgZXQgdW5lIGJyYW5jaGUgJyVzJyBuZSBwZXV0IHBhcyBlbiDDqnRyZSBjcsOpw6llIGRlcHVpcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCAnJXMnIgorbXNnc3RyICJnaXQgY2hlY2tvdXQ6IC0tZGV0YWNoIG4nYWNjZXB0ZSBwYXMgdW4gYXJndW1lbnQgZGUgY2hlbWluICclcyciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjc4Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1kZXRhY2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGVzdCBpbmNvbXBhdGlibGUgYXZlYyAtLWRldGFjaCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2ODEgYnVpbHRpbi9yZXNldC5jOjMyNCBidWlsdGluL3N0YXNoLmM6MTUwNgorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tcGF0Y2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGVzdCBpbmNvbXBhdGlibGUgYXZlYyAtLXBhdGNoIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY5MgorbXNnaWQgIiIKKyJnaXQgY2hlY2tvdXQ6IC0tb3Vycy8tLXRoZWlycywgLS1mb3JjZSBhbmQgLS1tZXJnZSBhcmUgaW5jb21wYXRpYmxlIHdoZW5cbiIKKyJjaGVja2luZyBvdXQgb2YgdGhlIGluZGV4LiIKK21zZ3N0ciAiIgorImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIGV0IC0tbWVyZ2Ugc29udCBpbmNvbXBhdGlibGVzIGxvcnNcbiIKKyJkZSBsJ2V4dHJhY3Rpb24gZGUgbCdpbmRleC4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjk3Cittc2dpZCAieW91IG11c3Qgc3BlY2lmeSBwYXRoKHMpIHRvIHJlc3RvcmUiCittc2dzdHIgIlZvdXMgZGV2ZXogc3DDqWNpZmllciB1biBvdSBkZXMgY2hlbWlucyDDoCByZXN0YXVyZXIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzIzIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI1IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3NiBidWlsdGluL2Nsb25lLmM6MTIxIGJ1aWx0aW4vcmVtb3RlLmM6MTcwCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MiBidWlsdGluL3dvcmt0cmVlLmM6NDkyIGJ1aWx0aW4vd29ya3RyZWUuYzo0OTQKK21zZ2lkICJicmFuY2giCittc2dzdHIgImJyYW5jaGUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI0Cittc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCittc2dzdHIgImNyw6llciBldCBleHRyYWlyZSB1bmUgbm91dmVsbGUgYnJhbmNoZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjYKK21zZ2lkICJjcmVhdGUvcmVzZXQgYW5kIGNoZWNrb3V0IGEgYnJhbmNoIgorbXNnc3RyICJjcsOpZXIvcsOpaW5pdGlhbGlzZXIgZXQgZXh0cmFpcmUgdW5lIGJyYW5jaGUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI3Cittc2dpZCAiY3JlYXRlIHJlZmxvZyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAiY3LDqWVyIHVuIHJlZmxvZyBwb3VyIHVuZSBub3V2ZWxsZSBicmFuY2hlIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyOQorbXNnaWQgInNlY29uZCBndWVzcyAnZ2l0IGNoZWNrb3V0IDxuby1zdWNoLWJyYW5jaD4nIChkZWZhdWx0KSIKK21zZ3N0ciAiIgorImVzc2F5ZXIgZCdpbnRlcnByw6l0ZXIgJ2dpdCBjaGVja291dCA8YnJhbmNoZS1pbmV4aXN0YW50ZT4nIChwYXIgZMOpZmF1dCkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzMwCittc2dpZCAidXNlIG92ZXJsYXkgbW9kZSAoZGVmYXVsdCkiCittc2dzdHIgInV0aWxpc2VyIGxlIG1vZGUgZGUgc3VwZXJwb3NpdGlvbiAoZMOpZmF1dCkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc1Cittc2dpZCAiY3JlYXRlIGFuZCBzd2l0Y2ggdG8gYSBuZXcgYnJhbmNoIgorbXNnc3RyICJjcsOpZXIgZXQgYmFzY3VsZXIgc3VyIHVuZSBub3V2ZWxsZSBicmFuY2hlIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3NworbXNnaWQgImNyZWF0ZS9yZXNldCBhbmQgc3dpdGNoIHRvIGEgYnJhbmNoIgorbXNnc3RyICJjcsOpZXIvcsOpaW5pdGlhbGlzZXIgZXQgYmFzY3VsZXIgc3VyIHVuZSBicmFuY2hlIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3OQorbXNnaWQgInNlY29uZCBndWVzcyAnZ2l0IHN3aXRjaCA8bm8tc3VjaC1icmFuY2g+JyIKK21zZ3N0ciAiaW50ZXJwcsOpdGVyICdnaXQgc3dpdGNoIDxicmFuY2hlLWluZXhpc3RhbnRlPiciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzgxCittc2dpZCAidGhyb3cgYXdheSBsb2NhbCBtb2RpZmljYXRpb25zIgorbXNnc3RyICJsYWlzc2VyIHRvbWJlciBsZXMgbW9kaWZpY2F0aW9ucyBsb2NhbGVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxMworbXNnaWQgIndoaWNoIHRyZWUtaXNoIHRvIGNoZWNrb3V0IGZyb20iCittc2dzdHIgImRlIHF1ZWwgPGFyYnJlLWVzcXVlPiBmYWlyZSBsJ2V4dHJhY3Rpb24iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODE1Cittc2dpZCAicmVzdG9yZSB0aGUgaW5kZXgiCittc2dzdHIgInJlc3RhdXJlciBsJ2luZGV4IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxNworbXNnaWQgInJlc3RvcmUgdGhlIHdvcmtpbmcgdHJlZSAoZGVmYXVsdCkiCittc2dzdHIgInJlc3RhdXJlciBsJ2FyYnJlIGRlIHRyYXZhaWwgKHBhciBkw6lmYXV0KSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTkKK21zZ2lkICJpZ25vcmUgdW5tZXJnZWQgZW50cmllcyIKK21zZ3N0ciAiaWdub3JlciBsZXMgZW50csOpZXMgbm9uLWZ1c2lvbm7DqWVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgyMAorbXNnaWQgInVzZSBvdmVybGF5IG1vZGUiCittc2dzdHIgInV0aWxpc2VyIGxlIG1vZGUgZGUgc3VwZXJwb3NpdGlvbiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjI4CiBtc2dpZCAiIgogImdpdCBjbGVhbiBbLWRdIFstZl0gWy1pXSBbLW5dIFstcV0gWy1lIDxwYXR0ZXJuPl0gWy14IHwgLVhdIFstLV0gPHBhdGhzPi4uLiIKIG1zZ3N0ciAiIgogImdpdCBjbGVhbiBbLWRdIFstZl0gWy1pXSBbLW5dIFstcV0gWy1lIDxtb3RpZj5dIFsteCB8IC1YXSBbLS1dIDxjaGVtaW5zPi4uLiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjMxCisjOiBidWlsdGluL2NsZWFuLmM6MzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3ZpbmcgJXNcbiIKIG1zZ3N0ciAiU3VwcHJlc3Npb24gZGUgJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjMyCisjOiBidWlsdGluL2NsZWFuLmM6MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiV291bGQgcmVtb3ZlICVzXG4iCiBtc2dzdHIgIlN1cHByaW1lcmFpdCAlc1xuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzMKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNAogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyByZXBvc2l0b3J5ICVzXG4iCiBtc2dzdHIgIklnbm9yZSBsZSBkw6lww7R0ICVzXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozNAorIzogYnVpbHRpbi9jbGVhbi5jOjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIldvdWxkIHNraXAgcmVwb3NpdG9yeSAlc1xuIgogbXNnc3RyICJJZ25vcmVyYWl0IGxlIGTDqXDDtHQgJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjM1CisjOiBidWlsdGluL2NsZWFuLmM6MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAlcyIKIG1zZ3N0ciAiw6ljaGVjIGRlIGxhIHN1cHByZXNzaW9uIGRlICVzIgogCi0jOiBidWlsdGluL2NsZWFuLmM6Mjk4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTc5CisjOiBidWlsdGluL2NsZWFuLmM6MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGxzdGF0ICVzXG4iCittc2dzdHIgImxzdGF0IGRlICVzIGltcG9zc2libGVcbiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjMwMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU5NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUHJvbXB0IGhlbHA6XG4iCkBAIC05MTg1LDcgKzExOTU0LDcgQEAKICJmb28gICAgICAgICAtIHPDqWxlY3Rpb25uZXIgdW4gw6lsw6ltZW50IHBhciB1biBwcsOpZml4ZSB1bmlxdWVcbiIKICIgICAgICAgICAgICAtICh2aWRlKSBuZSByaWVuIHPDqWxlY3Rpb25uZXJcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjMwMiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU4OAorIzogYnVpbHRpbi9jbGVhbi5jOjMwNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYwNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUHJvbXB0IGhlbHA6XG4iCkBAIC05MjA2LDM4ICsxMTk3NSwzMyBAQAogIiogICAgICAgICAgLSBjaG9pc2lyIHRvdXMgbGVzIMOpbMOpbWVudHNcbiIKICIgICAgICAgICAgIC0gKHZpZGUpIHRlcm1pbmVyIGxhIHPDqWxlY3Rpb25cbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjUxOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU1NAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NTkKKyM6IGJ1aWx0aW4vY2xlYW4uYzo1MjEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NzAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTc1CiAjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKIG1zZ2lkICJIdWggKCVzKT9cbiIKIG1zZ3N0ciAiSGVpbiAoJXMpwqA/XG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo2NjAKKyM6IGJ1aWx0aW4vY2xlYW4uYzo2NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW5wdXQgaWdub3JlIHBhdHRlcm5zPj4gIgogbXNnc3RyICJFbnRyZXogbGVzIG1vdGlmcyDDoCBpZ25vcmVyPj4gIgogCi0jOiBidWlsdGluL2NsZWFuLmM6Njk3CisjOiBidWlsdGluL2NsZWFuLmM6NzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIldBUk5JTkc6IENhbm5vdCBmaW5kIGl0ZW1zIG1hdGNoZWQgYnk6ICVzIgogbXNnc3RyICJBVFRFTlRJT04gOiBJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgbGVzIMOpbMOpbWVudHMgY29ycmVzcG9uZGFudCDDoCA6ICVzIgogCi0jOiBidWlsdGluL2NsZWFuLmM6NzE4CisjOiBidWlsdGluL2NsZWFuLmM6NzIxCiBtc2dpZCAiU2VsZWN0IGl0ZW1zIHRvIGRlbGV0ZSIKIG1zZ3N0ciAiU8OpbGVjdGlvbm5lciBsZXMgw6lsw6ltZW50cyDDoCBzdXBwcmltZXIiCiAKICMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8ga2VlcCBbeS9OXSBhcyBpcwotIzogYnVpbHRpbi9jbGVhbi5jOjc1OQorIzogYnVpbHRpbi9jbGVhbi5jOjc2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmUgJXMgW3kvTl0/ICIKIG1zZ3N0ciAiU3VwcHJpbWVyICVzIFt5L05dID8gIgogCi0jOiBidWlsdGluL2NsZWFuLmM6Nzg0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcxNwotIywgYy1mb3JtYXQKLW1zZ2lkICJCeWUuXG4iCi1tc2dzdHIgIkF1IHJldm9pci5cbiIKLQotIzogYnVpbHRpbi9jbGVhbi5jOjc5MgorIzogYnVpbHRpbi9jbGVhbi5jOjc5NQogbXNnaWQgIiIKICJjbGVhbiAgICAgICAgICAgICAgIC0gc3RhcnQgY2xlYW5pbmdcbiIKICJmaWx0ZXIgYnkgcGF0dGVybiAgIC0gZXhjbHVkZSBpdGVtcyBmcm9tIGRlbGV0aW9uXG4iCkBAIC05MjU1LDY0ICsxMjAxOSw1NiBAQAogImhlbHAgICAgICAgICAgICAgICAgLSBjZXQgw6ljcmFuXG4iCiAiPyAgICAgICAgICAgICAgICAgICAtIGFpZGUgcG91ciBsYSBzw6lsZWN0aW9uIGVuIGxpZ25lIgogCi0jOiBidWlsdGluL2NsZWFuLmM6ODE5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MwotbXNnaWQgIioqKiBDb21tYW5kcyAqKioiCi1tc2dzdHIgIioqKiBDb21tYW5kZXMgKioqIgotCi0jOiBidWlsdGluL2NsZWFuLmM6ODIwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MAotbXNnaWQgIldoYXQgbm93IgotbXNnc3RyICJFdCBtYWludGVuYW50ID8iCi0KLSM6IGJ1aWx0aW4vY2xlYW4uYzo4MjgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo4MzEKIG1zZ2lkICJXb3VsZCByZW1vdmUgdGhlIGZvbGxvd2luZyBpdGVtOiIKIG1zZ2lkX3BsdXJhbCAiV291bGQgcmVtb3ZlIHRoZSBmb2xsb3dpbmcgaXRlbXM6IgogbXNnc3RyWzBdICJTdXBwcmltZXJhaXQgbCfDqWzDqW1lbnQgc3VpdmFudCA6IgogbXNnc3RyWzFdICJTdXBwcmltZXJhaXQgbGVzIMOpbMOpbWVudHMgc3VpdmFudHMgOiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjg0NAorIzogYnVpbHRpbi9jbGVhbi5jOjg0NwogbXNnaWQgIk5vIG1vcmUgZmlsZXMgdG8gY2xlYW4sIGV4aXRpbmcuIgogbXNnc3RyICJQbHVzIGRlIGZpY2hpZXIgw6AgbmV0dG95ZXIsIHNvcnRpZS4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MDYKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MDkKIG1zZ2lkICJkbyBub3QgcHJpbnQgbmFtZXMgb2YgZmlsZXMgcmVtb3ZlZCIKIG1zZ3N0ciAibmUgcGFzIGFmZmljaGVyIGxlcyBub21zIGRlcyBmaWNoaWVycyBzdXBwcmltw6lzIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA4CisjOiBidWlsdGluL2NsZWFuLmM6OTExCiBtc2dpZCAiZm9yY2UiCiBtc2dzdHIgImZvcmNlciIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwOQorIzogYnVpbHRpbi9jbGVhbi5jOjkxMgogbXNnaWQgImludGVyYWN0aXZlIGNsZWFuaW5nIgogbXNnc3RyICJuZXR0b3lhZ2UgaW50ZXJhY3RpZiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxMQorIzogYnVpbHRpbi9jbGVhbi5jOjkxNAogbXNnaWQgInJlbW92ZSB3aG9sZSBkaXJlY3RvcmllcyIKIG1zZ3N0ciAic3VwcHJpbWVyIGxlcyByw6lwZXJ0b2lyZXMgZW50aWVycyIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxMiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ1IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDcKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4NiBidWlsdGluL2xvZy5jOjE2NiBidWlsdGluL2xvZy5jOjE2OAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NiBidWlsdGluL25hbWUtcmV2LmM6NDE1IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTcKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTUgYnVpbHRpbi9kZXNjcmliZS5jOjU2MiBidWlsdGluL2Rlc2NyaWJlLmM6NTY0CisjOiBidWlsdGluL2dyZXAuYzo4ODkgYnVpbHRpbi9sb2cuYzoxNzcgYnVpbHRpbi9sb2cuYzoxNzkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTcgYnVpbHRpbi9uYW1lLXJldi5jOjUyNiBidWlsdGluL25hbWUtcmV2LmM6NTI4CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc5CiBtc2dpZCAicGF0dGVybiIKIG1zZ3N0ciAibW90aWYiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTMKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTYKIG1zZ2lkICJhZGQgPHBhdHRlcm4+IHRvIGlnbm9yZSBydWxlcyIKIG1zZ3N0ciAiYWpvdXRlciA8bW90aWY+IGF1eCByw6hnbGVzIGlnbm9yZSIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxNAorIzogYnVpbHRpbi9jbGVhbi5jOjkxNwogbXNnaWQgInJlbW92ZSBpZ25vcmVkIGZpbGVzLCB0b28iCiBtc2dzdHIgInN1cHByaW1lciBsZXMgZmljaGllcnMgaWdub3LDqXMsIGF1c3NpIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTE2CisjOiBidWlsdGluL2NsZWFuLmM6OTE5CiBtc2dpZCAicmVtb3ZlIG9ubHkgaWdub3JlZCBmaWxlcyIKIG1zZ3N0ciAic3VwcHJpbWVyIHNldWxlbWVudCBsZXMgZmljaGllcnMgaWdub3LDqXMiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MzQKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MzcKIG1zZ2lkICIteCBhbmQgLVggY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCiBtc2dzdHIgIi14IGV0IC1YIG5lIHBldXZlbnQgcGFzIMOqdHJlIHV0aWxpc8OpcyBlbnNlbWJsZSIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkzOAorIzogYnVpbHRpbi9jbGVhbi5jOjk0MQogbXNnaWQgIiIKICJjbGVhbi5yZXF1aXJlRm9yY2Ugc2V0IHRvIHRydWUgYW5kIG5laXRoZXIgLWksIC1uLCBub3IgLWYgZ2l2ZW47IHJlZnVzaW5nIHRvICIKICJjbGVhbiIKQEAgLTkzMjAsNyArMTIwNzYsNyBAQAogImNsZWFuLnJlcXVpcmVGb3JjZSBwb3NpdGlvbm7DqSDDoCB0cnVlIGV0IG5pIC1pLCAtbiBvdSAtZiBmb3VybmkgOyByZWZ1cyBkZSAiCiAibmV0dG95ZXIiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5NDEKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5NDQKIG1zZ2lkICIiCiAiY2xlYW4ucmVxdWlyZUZvcmNlIGRlZmF1bHRzIHRvIHRydWUgYW5kIG5laXRoZXIgLWksIC1uLCBub3IgLWYgZ2l2ZW47ICIKICJyZWZ1c2luZyB0byBjbGVhbiIKQEAgLTkzMjgsMTQ5ICsxMjA4NCwxNzEgQEAKICJjbGVhbi5yZXF1aXJlRm9yY2Ugw6AgdHJ1ZSBwYXIgZMOpZmF1dCBldCBuaSAtaSwgLW4gb3UgLWYgZm91cm5pIDsgcmVmdXMgZGUgIgogIm5ldHRveWVyIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDMKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NQogbXNnaWQgImdpdCBjbG9uZSBbPG9wdGlvbnM+XSBbLS1dIDxyZXBvPiBbPGRpcj5dIgogbXNnc3RyICJnaXQgY2xvbmUgWzxvcHRpb25zPl0gWy0tXSA8ZMOpcMO0dD4gWzxyw6lwZXJ0b2lyZT5dIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MwogbXNnaWQgImRvbid0IGNyZWF0ZSBhIGNoZWNrb3V0IgogbXNnc3RyICJuZSBwYXMgY3LDqWVyIGQnZXh0cmFjdGlvbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjg5IGJ1aWx0aW4vY2xvbmUuYzo5MSBidWlsdGluL2luaXQtZGIuYzo0ODEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NCBidWlsdGluL2Nsb25lLmM6OTYgYnVpbHRpbi9pbml0LWRiLmM6NDg5CiBtc2dpZCAiY3JlYXRlIGEgYmFyZSByZXBvc2l0b3J5IgogbXNnc3RyICJjcsOpZXIgdW4gZMOpcMO0dCBudSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkzCisjOiBidWlsdGluL2Nsb25lLmM6OTgKIG1zZ2lkICJjcmVhdGUgYSBtaXJyb3IgcmVwb3NpdG9yeSAoaW1wbGllcyBiYXJlKSIKIG1zZ3N0ciAiY3LDqWVyIHVuIGTDqXDDtHQgbWlyb2lyIChpbXBsaXF1ZSBkw6lww7R0IG51KSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk1CisjOiBidWlsdGluL2Nsb25lLmM6MTAwCiBtc2dpZCAidG8gY2xvbmUgZnJvbSBhIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgInBvdXIgY2xvbmVyIGRlcHVpcyB1biBkw6lww7R0IGxvY2FsIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDIKIG1zZ2lkICJkb24ndCB1c2UgbG9jYWwgaGFyZGxpbmtzLCBhbHdheXMgY29weSIKIG1zZ3N0ciAibmUgcGFzIHV0aWxpc2VyIGRlIGxpZW5zIGR1cnMgbG9jYXV4LCB0b3Vqb3VycyBjb3BpZXIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5OQorIzogYnVpbHRpbi9jbG9uZS5jOjEwNAogbXNnaWQgInNldHVwIGFzIHNoYXJlZCByZXBvc2l0b3J5IgogbXNnc3RyICJyw6lnbGVyIGNvbW1lIGTDqXDDtHQgcGFydGFnw6kiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEgYnVpbHRpbi9jbG9uZS5jOjEwNQorIzogYnVpbHRpbi9jbG9uZS5jOjEwNwogbXNnaWQgInBhdGhzcGVjIgogbXNnc3RyICJzcMOpY2lmaWNhdGV1ciBkZSBjaGVtaW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEgYnVpbHRpbi9jbG9uZS5jOjEwNQorIzogYnVpbHRpbi9jbG9uZS5jOjEwNwogbXNnaWQgImluaXRpYWxpemUgc3VibW9kdWxlcyBpbiB0aGUgY2xvbmUiCiBtc2dzdHIgImluaXRpYWxpc2VyIGxlcyBzb3VzLW1vZHVsZXMgZGFucyBsZSBjbG9uZSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwOAorIzogYnVpbHRpbi9jbG9uZS5jOjExMAogbXNnaWQgIm51bWJlciBvZiBzdWJtb2R1bGVzIGNsb25lZCBpbiBwYXJhbGxlbCIKIG1zZ3N0ciAibm9tYnJlIGRlIHNvdXMtbW9kdWxlcyBjbG9uw6lzIGVuIHBhcmFsbMOobGUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDkgYnVpbHRpbi9pbml0LWRiLmM6NDc4CisjOiBidWlsdGluL2Nsb25lLmM6MTExIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NgogbXNnaWQgInRlbXBsYXRlLWRpcmVjdG9yeSIKIG1zZ3N0ciAicsOpcGVydG9pcmUtbW9kw6hsZSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMCBidWlsdGluL2luaXQtZGIuYzo0NzkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTIgYnVpbHRpbi9pbml0LWRiLmM6NDg3CiBtc2dpZCAiZGlyZWN0b3J5IGZyb20gd2hpY2ggdGVtcGxhdGVzIHdpbGwgYmUgdXNlZCIKIG1zZ3N0ciAicsOpcGVydG9pcmUgZGVwdWlzIGxlcXVlbCBsZXMgbW9kw6hsZXMgdm9udCDDqnRyZSB1dGlsaXPDqXMiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTIgYnVpbHRpbi9jbG9uZS5jOjExNCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTYKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTQgYnVpbHRpbi9jbG9uZS5jOjExNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTIKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiZMOpcMO0dCBkZSByw6lmw6lyZW5jZSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NwotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTE0CiBtc2dpZCAidXNlIC0tcmVmZXJlbmNlIG9ubHkgd2hpbGUgY2xvbmluZyIKIG1zZ3N0ciAidXRpbGlzZXIgc2V1bGVtZW50IC0tcmVmZXJlbmNlIHBvdXIgY2xvbmVyIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE3IGJ1aWx0aW4vY29sdW1uLmM6MjcgYnVpbHRpbi9tZXJnZS1maWxlLmM6NDYKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwMSBidWlsdGluL3JlcGFjay5jOjMyOQorIzogYnVpbHRpbi9jbG9uZS5jOjExOSBidWlsdGluL2NvbHVtbi5jOjI3IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjQ2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDEgYnVpbHRpbi9yZXBhY2suYzozMjcKIG1zZ2lkICJuYW1lIgogbXNnc3RyICJub20iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjAKIG1zZ2lkICJ1c2UgPG5hbWU+IGluc3RlYWQgb2YgJ29yaWdpbicgdG8gdHJhY2sgdXBzdHJlYW0iCiBtc2dzdHIgInV0aWxpc2VyIDxub20+IGF1IGxpZXUgZGUgJ29yaWdpbicgcG91ciBzdWl2cmUgbGEgYnJhbmNoZSBhbW9udCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyMAorIzogYnVpbHRpbi9jbG9uZS5jOjEyMgogbXNnaWQgImNoZWNrb3V0IDxicmFuY2g+IGluc3RlYWQgb2YgdGhlIHJlbW90ZSdzIEhFQUQiCiBtc2dzdHIgImV4dHJhaXJlIDxicmFuY2hlPiBhdSBsaWV1IGRlIGxhIEhFQUQgZHUgcsOpcGVydG9pcmUgZGlzdGFudCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyMgorIzogYnVpbHRpbi9jbG9uZS5jOjEyNAogbXNnaWQgInBhdGggdG8gZ2l0LXVwbG9hZC1wYWNrIG9uIHRoZSByZW1vdGUiCiBtc2dzdHIgImNoZW1pbiB2ZXJzIGdpdC11cGxvYWQtcGFjayBzdXIgbGUgc2VydmV1ciBkaXN0YW50IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTIzIGJ1aWx0aW4vZmV0Y2guYzoxNDIgYnVpbHRpbi9ncmVwLmM6ODI1Ci0jOiBidWlsdGluL3B1bGwuYzoyMTcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjUgYnVpbHRpbi9mZXRjaC5jOjE2OCBidWlsdGluL2dyZXAuYzo4MjgKKyM6IGJ1aWx0aW4vcHVsbC5jOjIwNwogbXNnaWQgImRlcHRoIgogbXNnc3RyICJwcm9mb25kZXVyIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI0CisjOiBidWlsdGluL2Nsb25lLmM6MTI2CiBtc2dpZCAiY3JlYXRlIGEgc2hhbGxvdyBjbG9uZSBvZiB0aGF0IGRlcHRoIgogbXNnc3RyICJjcsOpZXIgdW4gY2xvbmUgc3VwZXJmaWNpZWwgZGUgY2V0dGUgcHJvZm9uZGV1ciIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyNSBidWlsdGluL2ZldGNoLmM6MTQ0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5MgorIzogYnVpbHRpbi9jbG9uZS5jOjEyNyBidWlsdGluL2ZldGNoLmM6MTcwIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQzMAogbXNnaWQgInRpbWUiCiBtc2dzdHIgImhldXJlIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI2CisjOiBidWlsdGluL2Nsb25lLmM6MTI4CiBtc2dpZCAiY3JlYXRlIGEgc2hhbGxvdyBjbG9uZSBzaW5jZSBhIHNwZWNpZmljIHRpbWUiCiBtc2dzdHIgImNyw6llciB1biBjbG9uZSBzdXBlcmZpY2llbCBkZXB1aXMgdW5lIGRhdGUgc3DDqWNpZmlxdWUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjcgYnVpbHRpbi9mZXRjaC5jOjE0NiBidWlsdGluL2ZldGNoLmM6MTY5Ci0jOiBidWlsdGluL3JlYmFzZS5jOjgzMQorIzogYnVpbHRpbi9jbG9uZS5jOjEyOSBidWlsdGluL2ZldGNoLmM6MTcyIGJ1aWx0aW4vZmV0Y2guYzoxOTUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MAogbXNnaWQgInJldmlzaW9uIgogbXNnc3RyICJyw6l2aXNpb24iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjggYnVpbHRpbi9mZXRjaC5jOjE0NworIzogYnVpbHRpbi9jbG9uZS5jOjEzMCBidWlsdGluL2ZldGNoLmM6MTczCiBtc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyBjbG9uZSwgZXhjbHVkaW5nIHJldiIKIG1zZ3N0ciAiIgogImFwcHJvZm9uZGlyIGwnaGlzdG9yaXF1ZSBkJ3VuIGNsb25lIHN1cGVyZmljaWVsIGVuIGV4Y2x1YW50IHVuZSByw6l2aXNpb24iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI4CiBtc2dpZCAiY2xvbmUgb25seSBvbmUgYnJhbmNoLCBIRUFEIG9yIC0tYnJhbmNoIgogbXNnc3RyICJjbG9uZXIgc2V1bGVtZW50IHVuZSBicmFuY2hlLCBIRUFEIG91IC0tYnJhbmNoIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTMyCisjOiBidWlsdGluL2Nsb25lLmM6MTM0CiBtc2dpZCAiZG9uJ3QgY2xvbmUgYW55IHRhZ3MsIGFuZCBtYWtlIGxhdGVyIGZldGNoZXMgbm90IHRvIGZvbGxvdyB0aGVtIgogbXNnc3RyICIiCiAibmUgcGFzIGNsb25lciBsZXMgdGFncyBldCBpbmRpcXVlciBhdXggcsOpY3Vww6lyYXRpb25zIGZ1dHVyZXMgZGUgbmUgcGFzIGxlICIKICJmYWlyZSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNAorIzogYnVpbHRpbi9jbG9uZS5jOjEzNgogbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIGJlIHNoYWxsb3ciCiBtc2dzdHIgInRvdXMgbGVzIHNvdXMtbW9kdWxlcyBjbG9uw6lzIHNlcm9udCBzdXBlcmZpY2llbHMiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzUgYnVpbHRpbi9pbml0LWRiLmM6NDg3CisjOiBidWlsdGluL2Nsb25lLmM6MTM3IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5NQogbXNnaWQgImdpdGRpciIKIG1zZ3N0ciAiZ2l0ZGlyIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM2IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4OAorIzogYnVpbHRpbi9jbG9uZS5jOjEzOCBidWlsdGluL2luaXQtZGIuYzo0OTYKIG1zZ2lkICJzZXBhcmF0ZSBnaXQgZGlyIGZyb20gd29ya2luZyB0cmVlIgogbXNnc3RyICJzw6lwYXJlciBsZSByw6lwZXJ0b2lyZSBnaXQgZGUgbGEgY29waWUgZGUgdHJhdmFpbCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNworIzogYnVpbHRpbi9jbG9uZS5jOjEzOQogbXNnaWQgImtleT12YWx1ZSIKIG1zZ3N0ciAiY2zDqT12YWxldXIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDAKIG1zZ2lkICJzZXQgY29uZmlnIGluc2lkZSB0aGUgbmV3IHJlcG9zaXRvcnkiCiBtc2dzdHIgInLDqWdsZXIgbGEgY29uZmlndXJhdGlvbiBkYW5zIGxlIG5vdXZlYXUgZMOpcMO0dCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzOSBidWlsdGluL2ZldGNoLmM6MTY1IGJ1aWx0aW4vcHVsbC5jOjIzMAotIzogYnVpbHRpbi9wdXNoLmM6NTgzCisjOiBidWlsdGluL2Nsb25lLmM6MTQyIGJ1aWx0aW4vZmV0Y2guYzoxOTAgYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9wdXNoLmM6NTczIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTcyCittc2dpZCAic2VydmVyLXNwZWNpZmljIgorbXNnc3RyICJzcMOpY2lmaXF1ZSBhdSBzZXJ2ZXVyIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQyIGJ1aWx0aW4vZmV0Y2guYzoxOTAgYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9wdXNoLmM6NTczIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTczCittc2dpZCAib3B0aW9uIHRvIHRyYW5zbWl0IgorbXNnc3RyICJvcHRpb24gw6AgdHJhbnNtZXR0cmUiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDMgYnVpbHRpbi9mZXRjaC5jOjE5MSBidWlsdGluL3B1bGwuYzoyMjAKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3NAogbXNnaWQgInVzZSBJUHY0IGFkZHJlc3NlcyBvbmx5IgogbXNnc3RyICJuJ3V0aWxpc2VyIHF1ZSBkZXMgYWRyZXNzZXMgSVB2NCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjE0MSBidWlsdGluL2ZldGNoLmM6MTY3IGJ1aWx0aW4vcHVsbC5jOjIzMwotIzogYnVpbHRpbi9wdXNoLmM6NTg1CisjOiBidWlsdGluL2Nsb25lLmM6MTQ1IGJ1aWx0aW4vZmV0Y2guYzoxOTMgYnVpbHRpbi9wdWxsLmM6MjIzCisjOiBidWlsdGluL3B1c2guYzo1NzYKIG1zZ2lkICJ1c2UgSVB2NiBhZGRyZXNzZXMgb25seSIKIG1zZ3N0ciAibid1dGlsaXNlciBxdWUgZGVzIGFkcmVzc2VzIElQdjYiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoyNzkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDkKK21zZ2lkICJhbnkgY2xvbmVkIHN1Ym1vZHVsZXMgd2lsbCB1c2UgdGhlaXIgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKK21zZ3N0ciAiIgorInRvdXMgbGVzIHNvdXMtbW9kdWxlcyBjbG9uw6lzIHV0aWxpc2Vyb250IGxldXIgYnJhbmNoZSBkZSBzdWl2aSDDoCBkaXN0YW5jZSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE1MQorbXNnaWQgImluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IGZpbGUgdG8gaW5jbHVkZSBvbmx5IGZpbGVzIGF0IHJvb3QiCittc2dzdHIgIiIKKyJpbml0aWFsaXNlciBsZSBmaWNoaWVyIGQnZXh0cmFjdGlvbiBwYXJ0aWVsbGUgcG91ciBuJ2luY2x1cmUgcXVlIGxlcyAiCisiZmljaGllcnMgw6AgbGEgcmFjaW5lIgorCisjOiBidWlsdGluL2Nsb25lLmM6Mjg3CiBtc2dpZCAiIgogIk5vIGRpcmVjdG9yeSBuYW1lIGNvdWxkIGJlIGd1ZXNzZWQuXG4iCiAiUGxlYXNlIHNwZWNpZnkgYSBkaXJlY3Rvcnkgb24gdGhlIGNvbW1hbmQgbGluZSIKQEAgLTk0NzgsMTQ4ICsxMjI1NiwxNDcgQEAKICJBdWN1biBub20gZGUgcsOpcGVydG9pcmUgbidhIHB1IMOqdHJlIGRldmluw6lcbiIKICJWZXVpbGxleiBzcMOpY2lmaWVyIHVuIHLDqXBlcnRvaXJlIGRhbnMgbGEgbGlnbmUgZGUgY29tbWFuZGUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzozMzIKKyM6IGJ1aWx0aW4vY2xvbmUuYzozNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5mbzogQ291bGQgbm90IGFkZCBhbHRlcm5hdGUgZm9yICclcyc6ICVzXG4iCiBtc2dzdHIgImluZm/CoDogaW1wb3NzaWJsZSBkJ2Fqb3V0ZXIgdW5lIGFsdGVybmF0aXZlIHBvdXIgJyVzJ8KgOiAlc1xuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDA0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyciCi1tc2dzdHIgIsOpY2hlYyDDoCBsJ291dmVydHVyZSBkZSAnJXMnIgotCi0jOiBidWlsdGluL2Nsb25lLmM6NDEyCisjOiBidWlsdGluL2Nsb25lLmM6NDEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGV4aXN0cyBhbmQgaXMgbm90IGEgZGlyZWN0b3J5IgogbXNnc3RyICIlcyBleGlzdGUgZXQgbidlc3QgcGFzIHVuIHLDqXBlcnRvaXJlIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDI2CisjOiBidWlsdGluL2Nsb25lLmM6NDMwCiAjLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBzdGF0ICVzXG4iCi1tc2dzdHIgIsOpY2hlYyBkdSBzdGF0IGRlICVzXG4iCittc2dpZCAiZmFpbGVkIHRvIHN0YXJ0IGl0ZXJhdG9yIG92ZXIgJyVzJyIKK21zZ3N0ciAiw6ljaGVjIGR1IGTDqW1hcnJhZ2UgdW4gaXTDqXJhdGV1ciBzdXIgJyVzJyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ0MwotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gdW5saW5rICclcyciCi1tc2dzdHIgIsOpY2hlYyBsb3JzIGRlIGwndW5saW5rIGRlICclcyciCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo0NDgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBsaW5rICclcyciCiBtc2dzdHIgIsOpY2hlYyBkZSBsYSBjcsOpYXRpb24gZHUgbGllbiAnJXMnIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDUyCisjOiBidWlsdGluL2Nsb25lLmM6NDY0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjb3B5IGZpbGUgdG8gJyVzJyIKIG1zZ3N0ciAiw6ljaGVjIGRlIGxhIGNvcGllIHZlcnMgJyVzJyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ3OAorIzogYnVpbHRpbi9jbG9uZS5jOjQ2OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaXRlcmF0ZSBvdmVyICclcyciCittc2dzdHIgIsOpY2hlYyBkZSBsJ2l0w6lyYXRpb24gc3VyICclcyciCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZG9uZS5cbiIKIG1zZ3N0ciAiZmFpdC5cbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ5MgorIzogYnVpbHRpbi9jbG9uZS5jOjUwOAogbXNnaWQgIiIKICJDbG9uZSBzdWNjZWVkZWQsIGJ1dCBjaGVja291dCBmYWlsZWQuXG4iCiAiWW91IGNhbiBpbnNwZWN0IHdoYXQgd2FzIGNoZWNrZWQgb3V0IHdpdGggJ2dpdCBzdGF0dXMnXG4iCi0iYW5kIHJldHJ5IHRoZSBjaGVja291dCB3aXRoICdnaXQgY2hlY2tvdXQgLWYgSEVBRCdcbiIKKyJhbmQgcmV0cnkgd2l0aCAnZ2l0IHJlc3RvcmUgLS1zb3VyY2U9SEVBRCA6LydcbiIKIG1zZ3N0ciAiIgogIkxlIGNsb25lIGEgcsOpdXNzaSwgbWFpcyBsJ2V4dHJhY3Rpb24gYSDDqWNob3XDqS5cbiIKICJWb3VzIHBvdXZleiBpbnNwZWN0ZXIgY2UgcXVpIGEgw6l0w6kgZXh0cmFpdCBhdmVjICdnaXQgc3RhdHVzJ1xuIgotImV0IHLDqWVzc2F5ZXIgbCdleHRyYWN0aW9uIGF2ZWMgJ2dpdCBjaGVja291dCAtZiBIRUFEJ1xuIgorImV0IHLDqWVzc2F5ZXIgYXZlYyAnZ2l0IHJlc3RvcmUgLS1zb3VyY2U9SEVBRCA6LydcbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjU2OQorIzogYnVpbHRpbi9jbG9uZS5jOjU4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCByZW1vdGUgYnJhbmNoICVzIHRvIGNsb25lLiIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSB0cm91dmVyIGxhIGJyYW5jaGUgZGlzdGFudGUgJyVzJyDDoCBjbG9uZXIuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NjgwCisjOiBidWlsdGluL2Nsb25lLmM6NzA1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgJXMiCiBtc2dzdHIgImltcG9zc2libGUgZGUgbWV0dHJlIMOgIGpvdXIgJXMiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo3MzAKKyM6IGJ1aWx0aW4vY2xvbmUuYzo3NTMKK21zZ2lkICJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgIsOpY2hlYyBsb3JzIGRlIGwnaW5pdGlhbGlzYXRpb24gbCdleHRyYWN0aW9uIHBhcnRpZWxsZSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjc3NgogbXNnaWQgInJlbW90ZSBIRUFEIHJlZmVycyB0byBub25leGlzdGVudCByZWYsIHVuYWJsZSB0byBjaGVja291dC5cbiIKIG1zZ3N0ciAiIgogImxhIEhFQUQgZGlzdGFudGUgcsOpZsOocmUgw6AgdW5lIHLDqWbDqXJlbmNlIG5vbiBleGlzdGFudGUsIGltcG9zc2libGUgZGUgIgogImwnZXh0cmFpcmUuXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo3NjEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4MDcKIG1zZ2lkICJ1bmFibGUgdG8gY2hlY2tvdXQgd29ya2luZyB0cmVlIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnZXh0cmFpcmUgbGEgY29waWUgZGUgdHJhdmFpbCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjgwNgorIzogYnVpbHRpbi9jbG9uZS5jOjg2MgogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBwYXJhbWV0ZXJzIHRvIGNvbmZpZyBmaWxlIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBsZXMgcGFyYW3DqHRyZXMgZGFucyBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4NjkKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MjUKIG1zZ2lkICJjYW5ub3QgcmVwYWNrIHRvIGNsZWFuIHVwIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHJlbWJhbGxlciBwb3VyIG5ldHRveWVyIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODcxCisjOiBidWlsdGluL2Nsb25lLmM6OTI3CiBtc2dpZCAiY2Fubm90IHVubGluayB0ZW1wb3JhcnkgYWx0ZXJuYXRlcyBmaWxlIgotbXNnc3RyICJpbXBvc3NpYmxlIGRlIHVubGlua2VyIGxlIGZpY2hpZXIgdGVtcG9yYWlyZSBhbHRlcm5hdGVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGTDqWxpZXIgbGUgZmljaGllciB0ZW1wb3JhaXJlIGFsdGVybmF0ZXMiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MTEgYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTQxCisjOiBidWlsdGluL2Nsb25lLmM6OTY1IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk1MAogbXNnaWQgIlRvbyBtYW55IGFyZ3VtZW50cy4iCiBtc2dzdHIgIlRyb3AgZCdhcmd1bWVudHMuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTE1CisjOiBidWlsdGluL2Nsb25lLmM6OTY5CiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIHJlcG9zaXRvcnkgdG8gY2xvbmUuIgogbXNnc3RyICJWb3VzIGRldmV6IHNww6ljaWZpZXIgdW4gZMOpcMO0dCDDoCBjbG9uZXIuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTI4CisjOiBidWlsdGluL2Nsb25lLmM6OTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIi0tYmFyZSBhbmQgLS1vcmlnaW4gJXMgb3B0aW9ucyBhcmUgaW5jb21wYXRpYmxlLiIKIG1zZ3N0ciAibGVzIG9wdGlvbnMgLS1iYXJlIGV0IC0tb3JpZ2luICVzIHNvbnQgaW5jb21wYXRpYmxlcy4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MzEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5ODUKIG1zZ2lkICItLWJhcmUgYW5kIC0tc2VwYXJhdGUtZ2l0LWRpciBhcmUgaW5jb21wYXRpYmxlLiIKIG1zZ3N0ciAiLS1iYXJlIGV0IC0tc2VwYXJhdGUtZ2l0LWRpciBzb250IGluY29tcGF0aWJsZXMuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTQ0CisjOiBidWlsdGluL2Nsb25lLmM6OTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcG9zaXRvcnkgJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAibGUgZMOpcMO0dCAnJXMnIG4nZXhpc3RlIHBhcyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk1MCBidWlsdGluL2ZldGNoLmM6MTYwNgorIzogYnVpbHRpbi9jbG9uZS5jOjEwMDQgYnVpbHRpbi9mZXRjaC5jOjE3OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVwdGggJXMgaXMgbm90IGEgcG9zaXRpdmUgbnVtYmVyIgogbXNnc3RyICJsYSBwcm9mb25kZXVyICVzIG4nZXN0IHBhcyB1biBlbnRpZXIgcG9zaXRpZiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk2MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzdGluYXRpb24gcGF0aCAnJXMnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYW4gZW1wdHkgZGlyZWN0b3J5LiIKIG1zZ3N0ciAiIgogImxlIGNoZW1pbiBkZSBkZXN0aW5hdGlvbiAnJXMnIGV4aXN0ZSBkw6lqw6AgZXQgbidlc3QgcGFzIHVuIHLDqXBlcnRvaXJlIHZpZGUuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTcwCisjOiBidWlsdGluL2Nsb25lLmM6MTAyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ3b3JraW5nIHRyZWUgJyVzJyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgImxhIGNvcGllIGRlIHRyYXZhaWwgJyVzJyBleGlzdGUgZMOpasOgLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk4NSBidWlsdGluL2Nsb25lLmM6MTAwNiBidWlsdGluL2RpZmZ0b29sLmM6MjcxCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Mjk1IGJ1aWx0aW4vd29ya3RyZWUuYzozMjUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDM5IGJ1aWx0aW4vY2xvbmUuYzoxMDYwIGJ1aWx0aW4vZGlmZnRvb2wuYzoyNzEKKyM6IGJ1aWx0aW4vbG9nLmM6MTg2NiBidWlsdGluL3dvcmt0cmVlLmM6Mjk1IGJ1aWx0aW4vd29ya3RyZWUuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBsZWFkaW5nIGRpcmVjdG9yaWVzIG9mICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIGxlcyByw6lwZXJ0b2lyZXMgZGUgcHJlbWllciBuaXZlYXUgZGFucyAnJXMnIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTkwCisjOiBidWlsdGluL2Nsb25lLmM6MTA0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHdvcmsgdHJlZSBkaXIgJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgbGUgcsOpcGVydG9pcmUgZGUgbGEgY29waWUgZGUgdHJhdmFpbCAnJXMnIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxMAorIzogYnVpbHRpbi9jbG9uZS5jOjEwNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2xvbmluZyBpbnRvIGJhcmUgcmVwb3NpdG9yeSAnJXMnLi4uXG4iCiBtc2dzdHIgIkNsb25hZ2UgZGFucyBsZSBkw6lww7R0IG51ICclcydcbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwMTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNsb25pbmcgaW50byAnJXMnLi4uXG4iCiBtc2dzdHIgIkNsb25hZ2UgZGFucyAnJXMnLi4uXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDM2CisjOiBidWlsdGluL2Nsb25lLmM6MTA5MAogbXNnaWQgIiIKICJjbG9uZSAtLXJlY3Vyc2l2ZSBpcyBub3QgY29tcGF0aWJsZSB3aXRoIGJvdGggLS1yZWZlcmVuY2UgYW5kIC0tcmVmZXJlbmNlLWlmLSIKICJhYmxlIgpAQCAtOTYyNyw0MSArMTI0MDQsNDEgQEAKICJjbG9uZSAtLXJlY3Vyc2l2ZSBuJ2VzdCBwYXMgY29tcGF0aWJsZSBhdmVjIMOgIGxhIGZvaXMgLS1yZWZlcmVuY2UgZXQgLS0iCiAicmVmZXJlbmNlLWlmLWFibGUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDk3CisjOiBidWlsdGluL2Nsb25lLmM6MTE1NAogbXNnaWQgIi0tZGVwdGggaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAiLS1kZXB0aCBlc3QgaWdub3LDqSBkYW5zIGxlcyBjbG9uZXMgbG9jYXV4IDogdXRpbGlzZXogcGx1dMO0dCBcImZpbGU6Ly9cIi4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDk5CisjOiBidWlsdGluL2Nsb25lLmM6MTE1NgogbXNnaWQgIi0tc2hhbGxvdy1zaW5jZSBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCiBtc2dzdHIgIiIKICItLXNoYWxsb3ctc2luY2UgZXN0IGlnbm9yw6kgZGFucyBsZXMgY2xvbmVzIGxvY2F1eCA6IHV0aWxpc2V6IHBsdXTDtHQgXCJmaWxlOi8vIgogIlwiLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMDEKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTU4CiBtc2dpZCAiLS1zaGFsbG93LWV4Y2x1ZGUgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAiLS1zaGFsbG93LWV4Y2x1ZGUgZXN0IGlnbm9yw6kgZGFucyBsZXMgY2xvbmVzIGxvY2F1eCA6IHV0aWxpc2V6IHBsdXTDtHQgIgogIlwiZmlsZTovL1wiLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMDMKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTYwCiBtc2dpZCAiLS1maWx0ZXIgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICItLWZpbHRlciBlc3QgaWdub3LDqSBkYW5zIGxlcyBjbG9uZXMgbG9jYXV4IDsgdXRpbGlzZXogcGx1dMO0dCBmaWxlOi8vIC4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTA2CisjOiBidWlsdGluL2Nsb25lLmM6MTE2MwogbXNnaWQgInNvdXJjZSByZXBvc2l0b3J5IGlzIHNoYWxsb3csIGlnbm9yaW5nIC0tbG9jYWwiCiBtc2dzdHIgImxlIGTDqXDDtHQgc291cmNlIGVzdCBzdXBlcmZpY2llbCwgb3B0aW9uIC0tbG9jYWwgaWdub3LDqWUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTExCisjOiBidWlsdGluL2Nsb25lLmM6MTE2OAogbXNnaWQgIi0tbG9jYWwgaXMgaWdub3JlZCIKIG1zZ3N0ciAiLS1sb2NhbCBlc3QgaWdub3LDqSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExODEgYnVpbHRpbi9jbG9uZS5jOjExODkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjQzIGJ1aWx0aW4vY2xvbmUuYzoxMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW90ZSBicmFuY2ggJXMgbm90IGZvdW5kIGluIHVwc3RyZWFtICVzIgogbXNnc3RyICJMYSBicmFuY2hlIGRpc3RhbnRlICVzIG4nYSBwYXMgw6l0w6kgdHJvdXbDqWUgZGFucyBsZSBkw6lww7R0IGFtb250ICVzIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE5MgorIzogYnVpbHRpbi9jbG9uZS5jOjEyNTQKIG1zZ2lkICJZb3UgYXBwZWFyIHRvIGhhdmUgY2xvbmVkIGFuIGVtcHR5IHJlcG9zaXRvcnkuIgogbXNnc3RyICJWb3VzIHNlbWJsZXogYXZvaXIgY2xvbsOpIHVuIGTDqXDDtHQgdmlkZS4iCiAKQEAgLTk2OTcsMTUgKzEyNDc0LDgzIEBACiBtc2dpZCAiLS1jb21tYW5kIG11c3QgYmUgdGhlIGZpcnN0IGFyZ3VtZW50IgogbXNnc3RyICItLWNvbW1hbmQgZG9pdCDDqnRyZSBsZSBwcmVtaWVyIGFyZ3VtZW50IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQwCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTgKK21zZ2lkICIiCisiZ2l0IGNvbW1pdC10cmVlIFsoLXAgPHBhcmVudD4pLi4uXSBbLVNbPGtleWlkPl1dIFsoLW0gPG1lc3NhZ2U+KS4uLl0gWygtRiAiCisiPGZpbGU+KS4uLl0gPHRyZWU+IgorbXNnc3RyICIiCisiZ2l0IGNvbW1pdC10cmVlIFsoLXAgPHBhcmVudD4pLi4uXSBbLVNbPGlkY2zDqT5dXSBbKC1tIDxtZXNzYWdlPikuLi5dIFsoLUYgIgorIjxmaWNoaWVyPikuLi5dIDxhcmJyZT4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzozMQorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGFyZW50ICVzIGlnbm9yZWQiCittc2dzdHIgImxlIHBhcmVudCBkdXBsaXF1w6kgJXMgZXN0IGlnbm9yw6kiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzo1NiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTM2IGJ1aWx0aW4vbG9nLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lICVzIgorbXNnc3RyICJub20gZCdvYmpldCBpbnZhbGlkZSAlcyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIG9wZW4gJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlwqA6IMOpY2hlYyDDoCBsJ291dmVydHVyZSBkZSAnJXMnIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gcmVhZCAnJXMnIgorbXNnc3RyICJnaXQgY29tbWl0LXRyZWXCoDogw6ljaGVjIGRlIGxhIGxlY3R1cmUgZGUgJyVzJyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk4CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIGNsb3NlICclcyciCittc2dzdHIgImdpdCBjb21taXQtdHJlZcKgOiDDqWNoZWMgZGUgbGEgZmVybWV0dXJlIGRlICclcyciCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTEKK21zZ2lkICJwYXJlbnQiCittc2dzdHIgInBhcmVudCIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExMgorbXNnaWQgImlkIG9mIGEgcGFyZW50IGNvbW1pdCBvYmplY3QiCittc2dzdHIgImlkIGQndW4gb2JqZXQgY29tbWl0IHBhcmVudCIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExNCBidWlsdGluL2NvbW1pdC5jOjE1MDEgYnVpbHRpbi9tZXJnZS5jOjI3MQorIzogYnVpbHRpbi9ub3Rlcy5jOjQwOSBidWlsdGluL25vdGVzLmM6NTc1IGJ1aWx0aW4vc3Rhc2guYzoxNDc3CisjOiBidWlsdGluL3RhZy5jOjQxMgorbXNnaWQgIm1lc3NhZ2UiCittc2dzdHIgIm1lc3NhZ2UiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTUgYnVpbHRpbi9jb21taXQuYzoxNTAxCittc2dpZCAiY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIm1lc3NhZ2UgZGUgdmFsaWRhdGlvbiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExOAorbXNnaWQgInJlYWQgY29tbWl0IGxvZyBtZXNzYWdlIGZyb20gZmlsZSIKK21zZ3N0ciAibGlyZSBsZSBtZXNzYWdlIGRlIHZhbGlkYXRpb24gZGVwdWlzIHVuIGZpY2hpZXIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMjEgYnVpbHRpbi9jb21taXQuYzoxNTEzIGJ1aWx0aW4vbWVyZ2UuYzoyODgKKyM6IGJ1aWx0aW4vcHVsbC5jOjE3NSBidWlsdGluL3JldmVydC5jOjExOAorbXNnaWQgIkdQRyBzaWduIGNvbW1pdCIKK21zZ3N0ciAic2lnbmVyIGxhIHZhbGlkYXRpb24gYXZlYyBHUEciCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMzMKK21zZ2lkICJtdXN0IGdpdmUgZXhhY3RseSBvbmUgdHJlZSIKK21zZ3N0ciAiZXhhY3RlbWVudCB1biBhcmJyZSBvYmxpZ2F0b2lyZSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjE0MAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQiCittc2dzdHIgImdpdCBjb21taXQtdHJlZcKgOiDDqWNoZWMgZGUgbGEgbGVjdHVyZSIKKworIzogYnVpbHRpbi9jb21taXQuYzo0MQogbXNnaWQgImdpdCBjb21taXQgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICJnaXQgY29tbWl0IFs8b3B0aW9ucz5dIFstLV0gPHNww6ljaWZpY2F0aW9uLWRlLWNoZW1pbj4uLi4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDYKIG1zZ2lkICJnaXQgc3RhdHVzIFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKIG1zZ3N0ciAiZ2l0IHN0YXR1cyBbPG9wdGlvbnM+XSBbLS1dIDxzcMOpY2lmaWNhdGlvbi1kZS1jaGVtaW4+Li4uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjUwCisjOiBidWlsdGluL2NvbW1pdC5jOjUxCiBtc2dpZCAiIgogIllvdSBhc2tlZCB0byBhbWVuZCB0aGUgbW9zdCByZWNlbnQgY29tbWl0LCBidXQgZG9pbmcgc28gd291bGQgbWFrZVxuIgogIml0IGVtcHR5LiBZb3UgY2FuIHJlcGVhdCB5b3VyIGNvbW1hbmQgd2l0aCAtLWFsbG93LWVtcHR5LCBvciB5b3UgY2FuXG4iCkBAIC05NzE2LDcgKzEyNTYxLDcgQEAKICJ2aWRlLiBWb3VzIHBvdXZleiByw6lww6l0ZXIgdm90cmUgY29tbWFuZGUgYXZlYyAtLWFsbG93LWVtcHR5LCBvdSB2b3VzIHBvdXZlelxuIgogInN1cHByaW1lciBjb21wbMOodGVtZW50IGxlIGNvbW1pdCBhdmVjIFwiZ2l0IHJlc2V0IEhFQUReXCIuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTYKIG1zZ2lkICIiCiAiVGhlIHByZXZpb3VzIGNoZXJyeS1waWNrIGlzIG5vdyBlbXB0eSwgcG9zc2libHkgZHVlIHRvIGNvbmZsaWN0IHJlc29sdXRpb24uXG4iCiAiSWYgeW91IHdpc2ggdG8gY29tbWl0IGl0IGFueXdheSwgdXNlOlxuIgpAQCAtOTczMSw4MSArMTI1NzYsOTUgQEAKICIgICAgZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5XG4iCiAiXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjIKLW1zZ2lkICJPdGhlcndpc2UsIHBsZWFzZSB1c2UgJ2dpdCByZXNldCdcbiIKLW1zZ3N0ciAiU2lub24sIHZldWlsbGV6IHV0aWxpc2VyICdnaXQgcmVzZXQnXG4iCisjOiBidWlsdGluL2NvbW1pdC5jOjYzCittc2dpZCAiT3RoZXJ3aXNlLCBwbGVhc2UgdXNlICdnaXQgY2hlcnJ5LXBpY2sgLS1za2lwJ1xuIgorbXNnc3RyICJTaW5vbiwgdmV1aWxsZXogdXRpbGlzZXIgJ2dpdCBjaGVycnktcGljayAtLXNraXAnXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjYKIG1zZ2lkICIiCisiYW5kIHRoZW4gdXNlOlxuIgorIlxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVxuIgorIlxuIgorInRvIHJlc3VtZSBjaGVycnktcGlja2luZyB0aGUgcmVtYWluaW5nIGNvbW1pdHMuXG4iCiAiSWYgeW91IHdpc2ggdG8gc2tpcCB0aGlzIGNvbW1pdCwgdXNlOlxuIgogIlxuIgotIiAgICBnaXQgcmVzZXRcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFxuIgogIlxuIgotIlRoZW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIHdpbGwgcmVzdW1lIGNoZXJyeS1waWNraW5nXG4iCi0idGhlIHJlbWFpbmluZyBjb21taXRzLlxuIgogbXNnc3RyICIiCi0iU2kgdm91cyBzb3VoYWl0ZXogc2F1dGVyIGNlIGNvbW1pdCwgdXRpbGlzZXogOlxuIgorInV0aWxpc2V6IGVuc3VpdGXCoDpcbiIKICJcbiIKLSIgICAgZ2l0IHJlc2V0XG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXG4iCiAiXG4iCi0iUHVpcyBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgY29udGludWVyYSBsZSBwaWNvcmFnZSBcbiIKLSJkZXMgY29tbWl0cyByZXN0YW50cy5cbiIKKyJwb3VyIGNvbnRpbnVlciBsZSBwaWNvcmFnZSBkZXMgY29tbWl0cyByZXN0YW50cy5cbiIKKyJTaSB2b3VzIHNvdWhhaXRleiBzYXV0ZXIgY2UgY29tbWl0LCB1dGlsaXNlesKgOlxuIgorIlxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1za2lwcGVkXG4iCisiXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzExCisjOiBidWlsdGluL2NvbW1pdC5jOjMxNQogbXNnaWQgImZhaWxlZCB0byB1bnBhY2sgSEVBRCB0cmVlIG9iamVjdCIKIG1zZ3N0ciAiw6ljaGVjIGR1IGTDqXBhcXVldGFnZSBkZSBsJ29iamV0IGFyYnJlIEhFQUQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzUyCisjOiBidWlsdGluL2NvbW1pdC5jOjM1MQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgYXZlYyBsJ29wdGlvbiAtYSBuJ2EgcGFzIGRlIHNlbnMiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzY0Cittc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgorbXNnc3RyICJBdWN1biBjaGVtaW4gYXZlYyBsZXMgb3B0aW9ucyAtLWluY2x1ZGUvLS1vbmx5IG4nYSBwYXMgZGUgc2Vucy4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzc2CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIGwnaW5kZXggdGVtcG9yYWlyZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzg1CiBtc2dpZCAiaW50ZXJhY3RpdmUgYWRkIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGRlIGwnYWpvdXQgaW50ZXJhY3RpZiIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNzEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDAwCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgImltcG9zc2libGUgZGUgbWV0dHJlIMOgIGpvdXIgbCdpbmRleCB0ZW1wb3JhaXJlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM3MworIzogYnVpbHRpbi9jb21taXQuYzo0MDIKIG1zZ2lkICJGYWlsZWQgdG8gdXBkYXRlIG1haW4gY2FjaGUgdHJlZSIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBtZXR0cmUgw6Agam91ciBsJ2FyYnJlIGRlIGNhY2hlIHByaW5jaXBhbCIKIAotIzogYnVpbHRpbi9jb21taXQuYzozOTggYnVpbHRpbi9jb21taXQuYzo0MjEgYnVpbHRpbi9jb21taXQuYzo0NjcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDI3IGJ1aWx0aW4vY29tbWl0LmM6NDUwIGJ1aWx0aW4vY29tbWl0LmM6NDk2CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ld19pbmRleCBmaWxlIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBmaWNoaWVyIG5ld19pbmRleCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDc5CiBtc2dpZCAiY2Fubm90IGRvIGEgcGFydGlhbCBjb21taXQgZHVyaW5nIGEgbWVyZ2UuIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGZhaXJlIHVuZSB2YWxpZGF0aW9uIHBhcnRpZWxsZSBwZW5kYW50IHVuZSBmdXNpb24uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ1MgorIzogYnVpbHRpbi9jb21taXQuYzo0ODEKIG1zZ2lkICJjYW5ub3QgZG8gYSBwYXJ0aWFsIGNvbW1pdCBkdXJpbmcgYSBjaGVycnktcGljay4iCiBtc2dzdHIgImltcG9zc2libGUgZGUgZmFpcmUgdW5lIHZhbGlkYXRpb24gcGFydGllbGxlIHBlbmRhbnQgdW4gcGljb3JhZ2UuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ2MAorIzogYnVpbHRpbi9jb21taXQuYzo0ODkKIG1zZ2lkICJjYW5ub3QgcmVhZCB0aGUgaW5kZXgiCiBtc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSBsJ2luZGV4IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ3OQorIzogYnVpbHRpbi9jb21taXQuYzo1MDgKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdGVtcG9yYXJ5IGluZGV4IGZpbGUiCiBtc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlIGxlIGZpY2hpZXIgZCdpbmRleCB0ZW1wb3JhaXJlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3NworIzogYnVpbHRpbi9jb21taXQuYzo2MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgbGFja3MgYXV0aG9yIGhlYWRlciIKIG1zZ3N0ciAiZW50w6p0ZSBkJ2F1dGV1ciBtYW5xdWFudCBkYW5zIGxlIGNvbW1pdCAnJXMnIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3OQorIzogYnVpbHRpbi9jb21taXQuYzo2MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgaGFzIG1hbGZvcm1lZCBhdXRob3IgbGluZSIKIG1zZ3N0ciAibGUgY29tbWl0ICclcycgYSB1bmUgbGlnbmUgZCdhdXRldXIgbWFsZm9ybcOpZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzo1OTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjI3CiBtc2dpZCAibWFsZm9ybWVkIC0tYXV0aG9yIHBhcmFtZXRlciIKIG1zZ3N0ciAicGFyYW3DqHRyZSAtLWF1dGhvciBtYWwgZm9ybcOpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY1MAorIzogYnVpbHRpbi9jb21taXQuYzo2ODAKIG1zZ2lkICIiCiAidW5hYmxlIHRvIHNlbGVjdCBhIGNvbW1lbnQgY2hhcmFjdGVyIHRoYXQgaXMgbm90IHVzZWRcbiIKICJpbiB0aGUgY3VycmVudCBjb21taXQgbWVzc2FnZSIKQEAgLTk4MTMsMzggKzEyNjcyLDM4IEBACiAiaW1wb3NzaWJsZSBkZSBzw6lsZWN0aW9ubmVyIHVuIGNhcmFjdMOocmUgZGUgY29tbWVudGFpcmVcbiIKICJxdWkgbidlc3QgcGFzIHV0aWxpc8OpIGRhbnMgbGUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uIGFjdHVlbCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2ODcgYnVpbHRpbi9jb21taXQuYzo3MjAgYnVpbHRpbi9jb21taXQuYzoxMDQ5CisjOiBidWlsdGluL2NvbW1pdC5jOjcxOCBidWlsdGluL2NvbW1pdC5jOjc1MSBidWlsdGluL2NvbW1pdC5jOjEwOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvb2t1cCBjb21taXQgJXMiCiBtc2dzdHIgImltcG9zc2libGUgZGUgcmVjaGVyY2hlciBsZSBjb21taXQgJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Njk5IGJ1aWx0aW4vc2hvcnRsb2cuYzozMTcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzMwIGJ1aWx0aW4vc2hvcnRsb2cuYzozMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiKHJlYWRpbmcgbG9nIG1lc3NhZ2UgZnJvbSBzdGFuZGFyZCBpbnB1dClcbiIKIG1zZ3N0ciAiKGxlY3R1cmUgZHUgbWVzc2FnZSBkZSBqb3VybmFsIGRlcHVpcyBsJ2VudHLDqWUgc3RhbmRhcmQpXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzAxCisjOiBidWlsdGluL2NvbW1pdC5jOjczMgogbXNnaWQgImNvdWxkIG5vdCByZWFkIGxvZyBmcm9tIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGUgam91cm5hbCBkZXB1aXMgbCdlbnRyw6llIHN0YW5kYXJkIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjcwNQorIzogYnVpbHRpbi9jb21taXQuYzo3MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZpbGUgJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGxlIGZpY2hpZXIgZGUgam91cm5hbCAnJXMnIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjczNCBidWlsdGluL2NvbW1pdC5jOjc0MgorIzogYnVpbHRpbi9jb21taXQuYzo3NjcgYnVpbHRpbi9jb21taXQuYzo3ODMKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBTUVVBU0hfTVNHIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgU1FVQVNIX01TRyIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3MzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Nzc0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgTUVSR0VfTVNHIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgTUVSR0VfTVNHIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjc5MworIzogYnVpbHRpbi9jb21taXQuYzo4MzQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29tbWl0IHRlbXBsYXRlIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBtb2TDqGxlIGRlIGNvbW1pdCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTk4NTksNyArMTI3MTgsNyBAQAogIlx0JXNcbiIKICJldCBlc3NheWV6IMOgIG5vdXZlYXUuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODE2CisjOiBidWlsdGluL2NvbW1pdC5jOjg1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC05ODc0LDcgKzEyNzMzLDcgQEAKICJcdCVzXG4iCiAiZXQgZXNzYXlleiDDoCBub3V2ZWF1LlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjgyOQorIzogYnVpbHRpbi9jb21taXQuYzo4NzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlBsZWFzZSBlbnRlciB0aGUgY29tbWl0IG1lc3NhZ2UgZm9yIHlvdXIgY2hhbmdlcy4gTGluZXMgc3RhcnRpbmdcbiIKQEAgLTk4ODQsNyArMTI3NDMsNyBAQAogImNvbW1lbsOnYW50IHBhciAnJWMnIHNlcm9udCBpZ25vcsOpZXMsIGV0IHVuIG1lc3NhZ2UgdmlkZSBhYmFuZG9ubmUgbGEgIgogInZhbGlkYXRpb24uXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODM3CisjOiBidWlsdGluL2NvbW1pdC5jOjg3OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgeW91ciBjaGFuZ2VzLiBMaW5lcyBzdGFydGluZ1xuIgpAQCAtOTg5NSwxNTIgKzEyNzU0LDE0NCBAQAogImNvbW1lbsOnYW50IHBhciAnJWMnIHNlcm9udCBjb25zZXJ2w6llcyA7IHZvdXMgcG91dmV6IGxlcyBzdXBwcmltZXIgdm91cy1tw6ptZVxuIgogInNpIHZvdXMgbGUgc291aGFpdGV6LiBVbiBtZXNzYWdlIHZpZGUgYWJhbmRvbm5lIGxhIHZhbGlkYXRpb24uXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODU0CisjOiBidWlsdGluL2NvbW1pdC5jOjg5NgogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0F1dGhvcjogICAgJS4qcyA8JS4qcz4iCiBtc2dzdHIgIiVzQXV0ZXVyIDogICAgICUuKnMgPCUuKnM+IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjg2MgorIzogYnVpbHRpbi9jb21taXQuYzo5MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXNEYXRlOiAgICAgICVzIgogbXNnc3RyICIlc0RhdGUgOiAgICAgICAlcyIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4NjkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTExCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzQ29tbWl0dGVyOiAlLipzIDwlLipzPiIKIG1zZ3N0ciAiJXNWYWxpZGF0ZXVyIDogJS4qcyA8JS4qcz4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODg3CisjOiBidWlsdGluL2NvbW1pdC5jOjkyOQogbXNnaWQgIkNhbm5vdCByZWFkIGluZGV4IgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIGxpcmUgbCdpbmRleCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo5NTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTk3CiBtc2dpZCAiRXJyb3IgYnVpbGRpbmcgdHJlZXMiCiBtc2dzdHIgIkVycmV1ciBsb3JzIGRlIGxhIGNvbnN0cnVjdGlvbiBkZXMgYXJicmVzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjk2NyBidWlsdGluL3RhZy5jOjI1OAorIzogYnVpbHRpbi9jb21taXQuYzoxMDExIGJ1aWx0aW4vdGFnLmM6Mjc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlBsZWFzZSBzdXBwbHkgdGhlIG1lc3NhZ2UgdXNpbmcgZWl0aGVyIC1tIG9yIC1GIG9wdGlvbi5cbiIKIG1zZ3N0ciAiVmV1aWxsZXogZm91cm5pciBsZSBtZXNzYWdlIGVuIHV0aWxpc2FudCBsJ29wdGlvbiAtbSBvdSAtRi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDExCisjOiBidWlsdGluL2NvbW1pdC5jOjEwNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiLS1hdXRob3IgJyVzJyBpcyBub3QgJ05hbWUgPGVtYWlsPicgYW5kIG1hdGNoZXMgbm8gZXhpc3RpbmcgYXV0aG9yIgogbXNnc3RyICIiCiAiLS1hdXRob3IgJyVzJyBuJ2VzdCBwYXMgZGUgbGEgZm9ybWUgJ05vbSA8ZW1haWw+JyBuaSBuZSBjb3JyZXNwb25kIMOgIGF1Y3VuICIKICJhdXRldXIgZXhpc3RhbnQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAyNQorIzogYnVpbHRpbi9jb21taXQuYzoxMDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgaWdub3JlZCBtb2RlICclcyciCiBtc2dzdHIgIk1vZGUgZGUgZmljaGllciBpZ25vcsOpIGludmFsaWRlICclcyciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAzOSBidWlsdGluL2NvbW1pdC5jOjEyNzYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA4NyBidWlsdGluL2NvbW1pdC5jOjEzMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB1bnRyYWNrZWQgZmlsZXMgbW9kZSAnJXMnIgogbXNnc3RyICJNb2RlIGRlIGZpY2hpZXIgbm9uIHN1aXZpIGludmFsaWRlICclcyciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTA3NworIzogYnVpbHRpbi9jb21taXQuYzoxMTI3CiBtc2dpZCAiLS1sb25nIGFuZCAteiBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWxvbmcgZXQgLXogc29udCBpbmNvbXBhdGlibGVzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE3MQogbXNnaWQgIlVzaW5nIGJvdGggLS1yZXNldC1hdXRob3IgYW5kIC0tYXV0aG9yIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIkwndXRpbGlzYXRpb24gc2ltdWx0YW7DqWUgZGUgLS1yZXNldC1hdXRob3IgZXQgLS1hdXRob3IgbidhIHBhcyBkZSBzZW5zIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMTkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MAogbXNnaWQgIllvdSBoYXZlIG5vdGhpbmcgdG8gYW1lbmQuIgogbXNnc3RyICJJbCBuJ3kgYSByaWVuIMOgIGNvcnJpZ2VyLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTIyCisjOiBidWlsdGluL2NvbW1pdC5jOjExODMKIG1zZ2lkICJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSAtLSBjYW5ub3QgYW1lbmQuIgogbXNnc3RyICJWb3VzIMOqdGVzIGVuIHBsZWluZSBmdXNpb24gLS0gaW1wb3NzaWJsZSBkZSBjb3JyaWdlciAoYW1lbmQpLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTI0CisjOiBidWlsdGluL2NvbW1pdC5jOjExODUKIG1zZ2lkICJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSBjaGVycnktcGljayAtLSBjYW5ub3QgYW1lbmQuIgogbXNnc3RyICJWb3VzIMOqdGVzIGVuIHBsZWluIHBpY29yYWdlIC0tIGltcG9zc2libGUgZGUgY29ycmlnZXIgKGFtZW5kKS4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNworIzogYnVpbHRpbi9jb21taXQuYzoxMTg4CiBtc2dpZCAiT3B0aW9ucyAtLXNxdWFzaCBhbmQgLS1maXh1cCBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAiTGVzIG9wdGlvbnMgLS1zcXVhc2ggZXQgLS1maXh1cCBuZSBwZXV2ZW50IHBhcyDDqnRyZSB1dGlsaXPDqWVzIGVuc2VtYmxlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE5OAogbXNnaWQgIk9ubHkgb25lIG9mIC1jLy1DLy1GLy0tZml4dXAgY2FuIGJlIHVzZWQuIgogbXNnc3RyICJVbmUgc2V1bGUgb3B0aW9uIHBhcm1pIC1jLy1DLy1GLy0tZml4dXAgcGV1dCDDqnRyZSB1dGlsaXPDqWUuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIwMAogbXNnaWQgIk9wdGlvbiAtbSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCAtYy8tQy8tRi4iCiBtc2dzdHIgIkwnb3B0aW9uIC1tIG5lIHBldXQgcGFzIMOqdHJlIGNvbWJpbsOpZSBhdmVjIC1jLy1DLy1GLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTQ3CisjOiBidWlsdGluL2NvbW1pdC5jOjEyMDgKIG1zZ2lkICItLXJlc2V0LWF1dGhvciBjYW4gYmUgdXNlZCBvbmx5IHdpdGggLUMsIC1jIG9yIC0tYW1lbmQuIgogbXNnc3RyICItLXJlc2V0LWF1dGhvciBuZSBwZXV0IMOqdHJlIHV0aWxpc8OpIHF1J2F2ZWMgLUMsIC1jIG91IC0tYW1lbmQuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIyNQogbXNnaWQgIk9ubHkgb25lIG9mIC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIGNhbiBiZSB1c2VkLiIKIG1zZ3N0ciAiIgogIlVuZSBzZXVsZSBvcHRpb24gcGFybWkgLS1pbmNsdWRlLy0tb25seS8tLWFsbC8tLWludGVyYWN0aXZlLy0tcGF0Y2ggcGV1dCAiCiAiw6p0cmUgdXRpbGlzw6llLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTY2Ci1tc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgotbXNnc3RyICJBdWN1biBjaGVtaW4gYXZlYyBsZXMgb3B0aW9ucyAtLWluY2x1ZGUvLS1vbmx5IG4nYSBwYXMgZGUgc2Vucy4iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MCBidWlsdGluL3RhZy5jOjU0NgorIzogYnVpbHRpbi9jb21taXQuYzoxMjMxCiAjLCBjLWZvcm1hdAotbXNnaWQgIkludmFsaWQgY2xlYW51cCBtb2RlICVzIgotbXNnc3RyICJNb2RlIGRlIG5ldHRveWFnZSBpbnZhbGlkZSAlcyIKK21zZ2lkICJwYXRocyAnJXMgLi4uJyB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgImRlcyBjaGVtaW5zICclcyAuLi4nIGF2ZWMgbCdvcHRpb24gLWEgbidhIHBhcyBkZSBzZW5zIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExODUKLW1zZ2lkICJQYXRocyB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgotbXNnc3RyICJTcMOpY2lmaWVyIGRlcyBjaGVtaW5zIGF2ZWMgbCdvcHRpb24gLWEgbidhIHBhcyBkZSBzZW5zLiIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxMzExIGJ1aWx0aW4vY29tbWl0LmM6MTQ5NQorIzogYnVpbHRpbi9jb21taXQuYzoxMzYyIGJ1aWx0aW4vY29tbWl0LmM6MTUyNAogbXNnaWQgInNob3cgc3RhdHVzIGNvbmNpc2VseSIKIG1zZ3N0ciAiYWZmaWNoZXIgbCfDqXRhdCBhdmVjIGNvbmNpc2lvbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzEzIGJ1aWx0aW4vY29tbWl0LmM6MTQ5NworIzogYnVpbHRpbi9jb21taXQuYzoxMzY0IGJ1aWx0aW4vY29tbWl0LmM6MTUyNgogbXNnaWQgInNob3cgYnJhbmNoIGluZm9ybWF0aW9uIgogbXNnc3RyICJhZmZpY2hlciBsJ2luZm9ybWF0aW9uIGRlIGJyYW5jaGUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxNQorIzogYnVpbHRpbi9jb21taXQuYzoxMzY2CiBtc2dpZCAic2hvdyBzdGFzaCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiYWZmaWNoZXIgbCdpbmZvcm1hdGlvbiBkZSByZW1pc2FnZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzE3IGJ1aWx0aW4vY29tbWl0LmM6MTQ5OQorIzogYnVpbHRpbi9jb21taXQuYzoxMzY4IGJ1aWx0aW4vY29tbWl0LmM6MTUyOAogbXNnaWQgImNvbXB1dGUgZnVsbCBhaGVhZC9iZWhpbmQgdmFsdWVzIgogbXNnc3RyICJjYWxjdWxlIGxlcyB2YWxldXJzIGNvbXBsw6h0ZXMgZW4gYXZhbmNlL2VuIHJldGFyZCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzE5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzAKIG1zZ2lkICJ2ZXJzaW9uIgogbXNnc3RyICJ2ZXJzaW9uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTkgYnVpbHRpbi9jb21taXQuYzoxNTAxIGJ1aWx0aW4vcHVzaC5jOjU1OAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjYzOQorIzogYnVpbHRpbi9jb21taXQuYzoxMzcwIGJ1aWx0aW4vY29tbWl0LmM6MTUzMCBidWlsdGluL3B1c2guYzo1NDkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NDMKIG1zZ2lkICJtYWNoaW5lLXJlYWRhYmxlIG91dHB1dCIKIG1zZ3N0ciAic29ydGllIHBvdXIgdHJhaXRlbWVudCBhdXRvbWF0aXF1ZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzIyIGJ1aWx0aW4vY29tbWl0LmM6MTUwMworIzogYnVpbHRpbi9jb21taXQuYzoxMzczIGJ1aWx0aW4vY29tbWl0LmM6MTUzMgogbXNnaWQgInNob3cgc3RhdHVzIGluIGxvbmcgZm9ybWF0IChkZWZhdWx0KSIKIG1zZ3N0ciAiYWZmaWNoZXIgbCfDqXRhdCBlbiBmb3JtYXQgbG9uZyAocGFyIGTDqWZhdXQpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjUgYnVpbHRpbi9jb21taXQuYzoxNTA2CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzYgYnVpbHRpbi9jb21taXQuYzoxNTM1CiBtc2dpZCAidGVybWluYXRlIGVudHJpZXMgd2l0aCBOVUwiCiBtc2dzdHIgInRlcm1pbmVyIGxlcyDDqWzDqW1lbnRzIHBhciBOVUwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNyBidWlsdGluL2NvbW1pdC5jOjEzMzEgYnVpbHRpbi9jb21taXQuYzoxNTA5Ci0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAwNyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMCBidWlsdGluL3JlYmFzZS5jOjkxMAotIzogYnVpbHRpbi90YWcuYzo0MDAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3OCBidWlsdGluL2NvbW1pdC5jOjEzODIgYnVpbHRpbi9jb21taXQuYzoxNTM4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1MyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTkgYnVpbHRpbi9yZWJhc2UuYzoxNTY5IHBhcnNlLW9wdGlvbnMuaDozMzYKIG1zZ2lkICJtb2RlIgogbXNnc3RyICJtb2RlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjggYnVpbHRpbi9jb21taXQuYzoxNTA5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzkgYnVpbHRpbi9jb21taXQuYzoxNTM4CiBtc2dpZCAic2hvdyB1bnRyYWNrZWQgZmlsZXMsIG9wdGlvbmFsIG1vZGVzOiBhbGwsIG5vcm1hbCwgbm8uIChEZWZhdWx0OiBhbGwpIgogbXNnc3RyICIiCiAiYWZmaWNoZXIgbGVzIGZpY2hpZXJzIG5vbiBzdWl2aXMsIFwibW9kZVwiIGZhY3VsdGF0aWYgOiBhbGwgKHRvdXMpLCBub3JtYWwsICIKICJuby4gKETDqWZhdXQgOiBhbGwpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4MwogbXNnaWQgIiIKICJzaG93IGlnbm9yZWQgZmlsZXMsIG9wdGlvbmFsIG1vZGVzOiB0cmFkaXRpb25hbCwgbWF0Y2hpbmcsIG5vLiAoRGVmYXVsdDogIgogInRyYWRpdGlvbmFsKSIKQEAgLTEwMDQ4LDExICsxMjg5OSwxMSBAQAogImFmZmljaGVyIGxlcyBmaWNoaWVycyBpZ25vcsOpcywgXCJtb2RlXCIgZmFjdWx0YXRpZiA6IHRyYWRpdGlvbmFsICIKICIodHJhZGl0aW9ubmVsKSwgbWF0Y2hpbmcgKGNvcnJlc3BvbmRhbnQpLCBuby4gKETDqWZhdXTCoDogdHJhZGl0aW9uYWwpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzQgcGFyc2Utb3B0aW9ucy5oOjE2NAorIzogYnVpbHRpbi9jb21taXQuYzoxMzg1IHBhcnNlLW9wdGlvbnMuaDoxOTIKIG1zZ2lkICJ3aGVuIgogbXNnc3RyICJxdWFuZCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM1CisjOiBidWlsdGluL2NvbW1pdC5jOjEzODYKIG1zZ2lkICIiCiAiaWdub3JlIGNoYW5nZXMgdG8gc3VibW9kdWxlcywgb3B0aW9uYWwgd2hlbjogYWxsLCBkaXJ0eSwgdW50cmFja2VkLiAiCiAiKERlZmF1bHQ6IGFsbCkiCkBAIC0xMDA2MCwyNTUgKzEyOTExLDI1NSBAQAogImlnbm9yZXIgbGVzIG1vZGlmaWNhdGlvbnMgZGFucyBsZXMgc291cy1tb2R1bGVzLCBcInF1YW5kXCIgZmFjdWx0YXRpZiA6IGFsbCAiCiAiKHRvdXMpLCBkaXJ0eSAoc2FsZSksIHVudHJhY2tlZCAobm9uIHN1aXZpKS4gKETDqWZhdXQgOiBhbGwpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4OAogbXNnaWQgImxpc3QgdW50cmFja2VkIGZpbGVzIGluIGNvbHVtbnMiCiBtc2dzdHIgImFmZmljaGVyIGxlcyBmaWNoaWVycyBub24gc3VpdmlzIGVuIGNvbG9ubmVzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4OQogbXNnaWQgImRvIG5vdCBkZXRlY3QgcmVuYW1lcyIKIG1zZ3N0ciAibmUgcGFzIGTDqXRlY3RlciBsZXMgcmVub21tYWdlcyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzQwCisjOiBidWlsdGluL2NvbW1pdC5jOjEzOTEKIG1zZ2lkICJkZXRlY3QgcmVuYW1lcywgb3B0aW9uYWxseSBzZXQgc2ltaWxhcml0eSBpbmRleCIKIG1zZ3N0ciAiIgogImTDqXRlY3RlciBsZXMgcmVub21tYWdlcywgZW4gc3DDqWNpZmlhbnQgb3B0aW9ubmVsbGVtZW50IGxlIGZhY3RldXIgZGUgIgogInNpbWlsYXJpdMOpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzNjAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQxMQogbXNnaWQgIlVuc3VwcG9ydGVkIGNvbWJpbmF0aW9uIG9mIGlnbm9yZWQgYW5kIHVudHJhY2tlZC1maWxlcyBhcmd1bWVudHMiCiBtc2dzdHIgIiIKICJDb21iaW5haXNvbiBub24gc3VwcG9ydMOpZSBkJ2FyZ3VtZW50cyBzdXIgbGVzIGZpY2hpZXJzIGlnbm9yw6lzIGV0IG5vbi1zdWl2aXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2NQorIzogYnVpbHRpbi9jb21taXQuYzoxNDk0CiBtc2dpZCAic3VwcHJlc3Mgc3VtbWFyeSBhZnRlciBzdWNjZXNzZnVsIGNvbW1pdCIKIG1zZ3N0ciAic3VwcHJpbWVyIGxlIHLDqXN1bcOpIGFwcsOocyB1bmUgdmFsaWRhdGlvbiByw6l1c3NpZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDY2CisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTUKIG1zZ2lkICJzaG93IGRpZmYgaW4gY29tbWl0IG1lc3NhZ2UgdGVtcGxhdGUiCiBtc2dzdHIgImFmZmljaGVyIGxlcyBkaWZmIGRhbnMgbGUgbW9kw6hsZSBkZSBtZXNzYWdlIGRlIHZhbGlkYXRpb24iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2OAorIzogYnVpbHRpbi9jb21taXQuYzoxNDk3CiBtc2dpZCAiQ29tbWl0IG1lc3NhZ2Ugb3B0aW9ucyIKIG1zZ3N0ciAiT3B0aW9ucyBkdSBtZXNzYWdlIGRlIHZhbGlkYXRpb24iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2OSBidWlsdGluL21lcmdlLmM6MjYzIGJ1aWx0aW4vdGFnLmM6Mzk3CisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTggYnVpbHRpbi9tZXJnZS5jOjI3NSBidWlsdGluL3RhZy5jOjQxNAogbXNnaWQgInJlYWQgbWVzc2FnZSBmcm9tIGZpbGUiCiBtc2dzdHIgImxpcmUgbGUgbWVzc2FnZSBkZXB1aXMgdW4gZmljaGllciIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcwCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTkKIG1zZ2lkICJhdXRob3IiCiBtc2dzdHIgImF1dGV1ciIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcwCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTkKIG1zZ2lkICJvdmVycmlkZSBhdXRob3IgZm9yIGNvbW1pdCIKIG1zZ3N0ciAicmVtcGxhY2VyIGwnYXV0ZXVyIHBvdXIgbGEgdmFsaWRhdGlvbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcxIGJ1aWx0aW4vZ2MuYzo1MTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMCBidWlsdGluL2djLmM6NTM4CiBtc2dpZCAiZGF0ZSIKIG1zZ3N0ciAiZGF0ZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcxCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDAKIG1zZ2lkICJvdmVycmlkZSBkYXRlIGZvciBjb21taXQiCiBtc2dzdHIgInJlbXBsYWNlciBsYSBkYXRlIHBvdXIgbGEgdmFsaWRhdGlvbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcyIGJ1aWx0aW4vbWVyZ2UuYzoyNTkgYnVpbHRpbi9ub3Rlcy5jOjQwOQotIzogYnVpbHRpbi9ub3Rlcy5jOjU3MiBidWlsdGluL3RhZy5jOjM5NQotbXNnaWQgIm1lc3NhZ2UiCi1tc2dzdHIgIm1lc3NhZ2UiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MgotbXNnaWQgImNvbW1pdCBtZXNzYWdlIgotbXNnc3RyICJtZXNzYWdlIGRlIHZhbGlkYXRpb24iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MyBidWlsdGluL2NvbW1pdC5jOjE0NzQgYnVpbHRpbi9jb21taXQuYzoxNDc1Ci0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzYgcmVmLWZpbHRlci5oOjkyIHBhcnNlLW9wdGlvbnMuaDoyODAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMiBidWlsdGluL2NvbW1pdC5jOjE1MDMgYnVpbHRpbi9jb21taXQuYzoxNTA0CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDUgcGFyc2Utb3B0aW9ucy5oOjMyOCByZWYtZmlsdGVyLmg6OTIKIG1zZ2lkICJjb21taXQiCiBtc2dzdHIgImNvbW1pdCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDczCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDIKIG1zZ2lkICJyZXVzZSBhbmQgZWRpdCBtZXNzYWdlIGZyb20gc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAicsOpdXRpbGlzZXIgZXQgw6lkaXRlciBsZSBtZXNzYWdlIGR1IGNvbW1pdCBzcMOpY2lmacOpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMwogbXNnaWQgInJldXNlIG1lc3NhZ2UgZnJvbSBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICJyw6l1dGlsaXNlciBsZSBtZXNzYWdlIGR1IGNvbW1pdCBzcMOpY2lmacOpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNAogbXNnaWQgInVzZSBhdXRvc3F1YXNoIGZvcm1hdHRlZCBtZXNzYWdlIHRvIGZpeHVwIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgIiIKICJ1dGlsaXNlciB1biBtZXNzYWdlIGF1IGZvcm1hdCBhdXRvc3F1YXNoIHBvdXIgY29ycmlnZXIgbGUgY29tbWl0IHNww6ljaWZpw6kiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NgorIzogYnVpbHRpbi9jb21taXQuYzoxNTA1CiBtc2dpZCAidXNlIGF1dG9zcXVhc2ggZm9ybWF0dGVkIG1lc3NhZ2UgdG8gc3F1YXNoIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgIiIKICJ1dGlsaXNlciB1biBtZXNzYWdlIGF1IGZvcm1hdCBhdXRvc3F1YXNoIHBvdXIgY29tcHJlc3NlciBsZSBjb21taXQgc3DDqWNpZmnDqSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc3CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDYKIG1zZ2lkICJ0aGUgY29tbWl0IGlzIGF1dGhvcmVkIGJ5IG1lIG5vdyAodXNlZCB3aXRoIC1DLy1jLy0tYW1lbmQpIgogbXNnc3RyICIiCiAiw6AgcHLDqXNlbnQgamUgc3VpcyBsJ2F1dGV1ciBkZSBsYSB2YWxpZGF0aW9uICh1dGlsaXPDqSBhdmVjIC1DLy1jLy0tYW1lbmQpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzggYnVpbHRpbi9sb2cuYzoxNTIwIGJ1aWx0aW4vbWVyZ2UuYzoyNzYKLSM6IGJ1aWx0aW4vcHVsbC5jOjE1NSBidWlsdGluL3JldmVydC5jOjEwNgorIzogYnVpbHRpbi9jb21taXQuYzoxNTA3IGJ1aWx0aW4vbG9nLmM6MTYzNCBidWlsdGluL21lcmdlLmM6MjkwCisjOiBidWlsdGluL3B1bGwuYzoxNDQgYnVpbHRpbi9yZXZlcnQuYzoxMTAKIG1zZ2lkICJhZGQgU2lnbmVkLW9mZi1ieToiCiBtc2dzdHIgImFqb3V0ZXIgdW5lIGVudHLDqWUgU2lnbmVkLW9mZi1ieSA6IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwOAogbXNnaWQgInVzZSBzcGVjaWZpZWQgdGVtcGxhdGUgZmlsZSIKIG1zZ3N0ciAidXRpbGlzZXIgbGUgZmljaGllciBkZSBtb2TDqGxlIHNww6ljaWZpw6kiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MAorIzogYnVpbHRpbi9jb21taXQuYzoxNTA5CiBtc2dpZCAiZm9yY2UgZWRpdCBvZiBjb21taXQiCiBtc2dzdHIgImZvcmNlciBsJ8OpZGl0aW9uIGR1IGNvbW1pdCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDgxCi1tc2dpZCAiZGVmYXVsdCIKLW1zZ3N0ciAiZMOpZmF1dCIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDgxIGJ1aWx0aW4vdGFnLmM6NDAxCi1tc2dpZCAiaG93IHRvIHN0cmlwIHNwYWNlcyBhbmQgI2NvbW1lbnRzIGZyb20gbWVzc2FnZSIKLW1zZ3N0ciAiY29tbWVudCDDqWxpbWluZXIgbGVzIGVzcGFjZXMgZXQgbGVzIGNvbW1lbnRhaXJlcyAjIGR1IG1lc3NhZ2UiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MgorIzogYnVpbHRpbi9jb21taXQuYzoxNTExCiBtc2dpZCAiaW5jbHVkZSBzdGF0dXMgaW4gY29tbWl0IG1lc3NhZ2UgdGVtcGxhdGUiCiBtc2dzdHIgImluY2x1cmUgbCfDqXRhdCBkYW5zIGxlIG1vZMOobGUgZGUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODQgYnVpbHRpbi9tZXJnZS5jOjI3NCBidWlsdGluL3B1bGwuYzoxODUKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0Ci1tc2dpZCAiR1BHIHNpZ24gY29tbWl0IgotbXNnc3RyICJzaWduZXIgbGEgdmFsaWRhdGlvbiBhdmVjIEdQRyIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDg3CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTYKIG1zZ2lkICJDb21taXQgY29udGVudHMgb3B0aW9ucyIKIG1zZ3N0ciAiVmFsaWRlciBsZXMgb3B0aW9ucyBkZXMgY29udGVudXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4OAorIzogYnVpbHRpbi9jb21taXQuYzoxNTE3CiBtc2dpZCAiY29tbWl0IGFsbCBjaGFuZ2VkIGZpbGVzIgogbXNnc3RyICJ2YWxpZGVyIHRvdXMgbGVzIGZpY2hpZXJzIG1vZGlmacOpcyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDg5CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTgKIG1zZ2lkICJhZGQgc3BlY2lmaWVkIGZpbGVzIHRvIGluZGV4IGZvciBjb21taXQiCiBtc2dzdHIgImFqb3V0ZXIgbGVzIGZpY2hpZXJzIHNww6ljaWZpw6lzIMOgIGwnaW5kZXggcG91ciBsYSB2YWxpZGF0aW9uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxOQogbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGZpbGVzIgogbXNnc3RyICJham91dGVyIGRlcyBmaWNoaWVycyBlbiBtb2RlIGludGVyYWN0aWYiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MQorIzogYnVpbHRpbi9jb21taXQuYzoxNTIwCiBtc2dpZCAiaW50ZXJhY3RpdmVseSBhZGQgY2hhbmdlcyIKIG1zZ3N0ciAiYWpvdXRlciBsZXMgbW9kaWZpY2F0aW9ucyBlbiBtb2RlIGludGVyYWN0aWYiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MgorIzogYnVpbHRpbi9jb21taXQuYzoxNTIxCiBtc2dpZCAiY29tbWl0IG9ubHkgc3BlY2lmaWVkIGZpbGVzIgogbXNnc3RyICJ2YWxpZGVyIHNldWxlbWVudCBsZXMgZmljaGllcnMgc3DDqWNpZmnDqXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MworIzogYnVpbHRpbi9jb21taXQuYzoxNTIyCiBtc2dpZCAiYnlwYXNzIHByZS1jb21taXQgYW5kIGNvbW1pdC1tc2cgaG9va3MiCiBtc2dzdHIgIsOpdml0ZXIgZCd1dGlsaXNlciBsZXMgY3JvY2hldHMgcHJlLWNvbW1pdCBldCBjb21taXQtbXNnIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMwogbXNnaWQgInNob3cgd2hhdCB3b3VsZCBiZSBjb21taXR0ZWQiCiBtc2dzdHIgImFmZmljaGVyIGNlIHF1aSBzZXJhaXQgdmFsaWTDqSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTA3CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MzYKIG1zZ2lkICJhbWVuZCBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgImNvcnJpZ2VyIGxhIHZhbGlkYXRpb24gcHLDqWPDqWRlbnRlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MDgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUzNwogbXNnaWQgImJ5cGFzcyBwb3N0LXJld3JpdGUgaG9vayIKIG1zZ3N0ciAiw6l2aXRlciBkJ3V0aWxpc2VyIGxlIGNyb2NoZXQgcG9zdC1yZXdyaXRlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTU0NAogbXNnaWQgIm9rIHRvIHJlY29yZCBhbiBlbXB0eSBjaGFuZ2UiCiBtc2dzdHIgImFjY2VwdGVyIGQnZW5yZWdpc3RyZXIgdW5lIG1vZGlmaWNhdGlvbiB2aWRlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTU0NgogbXNnaWQgIm9rIHRvIHJlY29yZCBhIGNoYW5nZSB3aXRoIGFuIGVtcHR5IG1lc3NhZ2UiCiBtc2dzdHIgImFjY2VwdGVyIGQnZW5yZWdpc3RyZXIgdW5lIG1vZGlmaWNhdGlvbiBhdmVjIHVuIG1lc3NhZ2UgdmlkZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE2MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29ycnVwdCBNRVJHRV9IRUFEIGZpbGUgKCVzKSIKIG1zZ3N0ciAiRmljaGllciBNRVJHRV9IRUFEIGNvcnJvbXB1ICglcykiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTU5NQorIzogYnVpbHRpbi9jb21taXQuYzoxNjI2CiBtc2dpZCAiY291bGQgbm90IHJlYWQgTUVSR0VfTU9ERSIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIE1FUkdFX01PREUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTYxNAorIzogYnVpbHRpbi9jb21taXQuYzoxNjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGNvbW1pdCBtZXNzYWdlOiAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGxlIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiA6ICVzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE2MjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJBYm9ydGluZyBjb21taXQgZHVlIHRvIGVtcHR5IGNvbW1pdCBtZXNzYWdlLlxuIgogbXNnc3RyICJBYmFuZG9uIGRlIGxhIHZhbGlkYXRpb24gZMO7IMOgIHVuIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiB2aWRlLlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE2MzAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJBYm9ydGluZyBjb21taXQ7IHlvdSBkaWQgbm90IGVkaXQgdGhlIG1lc3NhZ2UuXG4iCiBtc2dzdHIgIkFiYW5kb24gZGUgbGEgdmFsaWRhdGlvbiA7IHZvdXMgbidhdmV6IHBhcyDDqWRpdMOpIGxlIG1lc3NhZ2VcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjY1CisjOiBidWlsdGluL2NvbW1pdC5jOjE2OTEKIG1zZ2lkICIiCiAicmVwb3NpdG9yeSBoYXMgYmVlbiB1cGRhdGVkLCBidXQgdW5hYmxlIHRvIHdyaXRlXG4iCiAibmV3X2luZGV4IGZpbGUuIENoZWNrIHRoYXQgZGlzayBpcyBub3QgZnVsbCBhbmQgcXVvdGEgaXNcbiIKLSJub3QgZXhjZWVkZWQsIGFuZCB0aGVuIFwiZ2l0IHJlc2V0IEhFQURcIiB0byByZWNvdmVyLiIKKyJub3QgZXhjZWVkZWQsIGFuZCB0aGVuIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgOi9cIiB0byByZWNvdmVyLiIKIG1zZ3N0ciAiIgogImxlIGTDqXDDtHQgYSDDqXTDqSBtaXMgw6Agam91ciwgbWFpcyBpbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBmaWNoaWVyXG4iCiAibmV3X2luZGV4LiBWw6lyaWZpZXogcXVlIGxlIGRpc3F1ZSBuJ2VzdCBwYXMgcGxlaW4gb3UgcXVlIGxlIHF1b3RhXG4iCi0ibidhIHBhcyDDqXTDqSBkw6lwYXNzw6ksIHB1aXMgbGFuY2V6IFwiZ2l0IHJlc2V0IEhFQURcIiBwb3VyIHLDqXBhcmVyLiIKKyJuJ2EgcGFzIMOpdMOpIGTDqXBhc3PDqSwgcHVpcyBsYW5jZXogXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA6L1wiIHBvdXIgcsOpcGFyZXIuIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEwCi1tc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKLW1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKLQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIzCi1tc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCByZWFkIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgotbXNnc3RyICJnaXQgY29tbWl0LWdyYXBoIHJlYWQgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTIgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxOAotbXNnaWQgImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgotbXNnc3RyICJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKLQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMyBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjI4CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjExIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTcKIG1zZ2lkICIiCi0iZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1hcHBlbmRdIFstLXJlYWNoYWJsZXwtLSIKLSJzdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIgorImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPG9iamRpcj5dIFstLXNoYWxsb3ddIFstLVtuby1dcHJvZ3Jlc3NdIgogbXNnc3RyICIiCi0iZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1hcHBlbmRdIFstLXJlYWNoYWJsZXwtLSIKLSJzdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIgorImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPG9iamRpcj5dIFstLXNoYWxsb3ddIFstLVtuby1dcHJvZ3Jlc3NdIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjQ4IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzgKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMyIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTkwIGJ1aWx0aW4vZmV0Y2guYzoxNTMKLSM6IGJ1aWx0aW4vbG9nLmM6MTU0MAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIyCittc2dpZCAiIgorImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tYXBwZW5kfC0tc3BsaXRdIFstLSIKKyJyZWFjaGFibGV8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIFstLVtuby1dcHJvZ3Jlc3NdIDxzcGxpdCBvcHRpb25zPiIKK21zZ3N0ciAiIgorImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8csOpcGVydG9pcmUtZCdvYmpldD5dIFstLWFwcGVuZHwtLSIKKyJzcGxpdF0gWy0tcmVhY2hhYmxlfC0tc3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSBbLS18bm8tXXByb2dyZXNzXSAiCisiPG9wdGlvbnMgZGUgZGl2aXNpb24+IgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5kIG9iamVjdCBkaXJlY3RvcnkgbWF0Y2hpbmcgJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgdHJvdXZlciBsZSByw6lwZXJ0b2lyZSBvYmpldCBjb3JyZXNwb25kYW50IMOgICVzIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjY4IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTI1CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIxMCBidWlsdGluL2ZldGNoLmM6MTc5IGJ1aWx0aW4vbG9nLmM6MTY1NwogbXNnaWQgImRpciIKIG1zZ3N0ciAicsOpcGVydG9pcmUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NDkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3OQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzMgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxOTEKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NjkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjYKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjExCiBtc2dpZCAiVGhlIG9iamVjdCBkaXJlY3RvcnkgdG8gc3RvcmUgdGhlIGdyYXBoIgogbXNnc3RyICJMZSByw6lwZXJ0b2lyZSBkJ29iamV0IG/DuSBzdG9ja2VyIGxlIGdyYXBoZSIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzUKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzEKK21zZ2lkICJpZiB0aGUgY29tbWl0LWdyYXBoIGlzIHNwbGl0LCBvbmx5IHZlcmlmeSB0aGUgdGlwIGZpbGUiCittc2dzdHIgIiIKKyJzaSBsZSBncmFwaGUgZGUgY29tbWl0IGVzdCBkaXZpc8OpLCB2w6lyaWZpZXIgc2V1bGVtZW50IGxlIGZpY2hpZXIgc29tbWV0IgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjk0IHQvaGVscGVyL3Rlc3QtcmVhZC1ncmFwaC5jOjIzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBvcGVuIGNvbW1pdC1ncmFwaCAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGdyYXBoZSBkZSBjb21taXQgJyVzJyIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjgKIG1zZ2lkICJzdGFydCB3YWxrIGF0IGFsbCByZWZzIgogbXNnc3RyICJjb21tZW5jZXIgbGUgcGFyY291cnMgw6AgdG91dGVzIGxlcyByw6lmcyIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzcKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMwCiBtc2dpZCAic2NhbiBwYWNrLWluZGV4ZXMgbGlzdGVkIGJ5IHN0ZGluIGZvciBjb21taXRzIgogbXNnc3RyICJzY2FubmVyIGxlcyBpbmRleCBjb21wYWN0w6lzIGxpc3TDqXMgc3VyIHN0ZGluIMOgIGxhIHJlY2hlcmNoZSBkZSBjb21taXRzIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzOQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzIKIG1zZ2lkICJzdGFydCB3YWxrIGF0IGNvbW1pdHMgbGlzdGVkIGJ5IHN0ZGluIgogbXNnc3RyICJjb21tZW5jZXIgbGUgcGFyY291cnMgYXV4IGNvbW1pdHMgbGlzdMOpcyBzdXIgc3RkaW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTQxCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNAogbXNnaWQgImluY2x1ZGUgYWxsIGNvbW1pdHMgYWxyZWFkeSBpbiB0aGUgY29tbWl0LWdyYXBoIGZpbGUiCiBtc2dzdHIgIiIKICJpbmNsdXJlIHRvdXMgbGVzIGNvbW1pdHMgZMOpasOgIHByw6lzZW50cyBkYW5zIGxlIGZpY2hpZXIgZGUgZ3JhcGhlIGRlIGNvbW1pdHMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTUwCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNworbXNnaWQgImFsbG93IHdyaXRpbmcgYW4gaW5jcmVtZW50YWwgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgInBlcm1ldHRyZSBkJ8OpY3JpcmUgdW4gZmljaGllciBpbmNyw6ltZW50YWwgZGUgZ3JhcGhlIGRlIGNvbW1pdCIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDMKK21zZ2lkICJtYXhpbXVtIG51bWJlciBvZiBjb21taXRzIGluIGEgbm9uLWJhc2Ugc3BsaXQgY29tbWl0LWdyYXBoIgorbXNnc3RyICIiCisibGUgbm9tYnJlIG1heGltdW0gZGUgY29tbWl0cyBkYW5zIHVuIGdyYXBoZSBkZSBjb21taXQgZGl2aXPDqSBwYXMgZGUgYmFzZSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDEKK21zZ2lkICJtYXhpbXVtIHJhdGlvIGJldHdlZW4gdHdvIGxldmVscyBvZiBhIHNwbGl0IGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAicmFwcG9ydCBtYXhpbXVtIGVudHJlIGRldXggbml2ZWF1eCBkJ3VuIGdyYXBoZSBkZSBjb21taXQgZGl2aXPDqSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNTkKIG1zZ2lkICJ1c2UgYXQgbW9zdCBvbmUgb2YgLS1yZWFjaGFibGUsIC0tc3RkaW4tY29tbWl0cywgb3IgLS1zdGRpbi1wYWNrcyIKIG1zZ3N0ciAidXRpbGlzZXogdW4gc2V1bCBwYXJtaSAtLXJlYWNoYWJsZSwgLS1zdGRpbi1jb21taXRzIG91IC0tc3RkaW4tcGFja3MiCiAKQEAgLTEwMzE2LDIwOCArMTMxNjcsMjE0IEBACiBtc2dpZCAiZ2l0IGNvbmZpZyBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IGNvbmZpZyBbPG9wdGlvbnM+XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMDMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTA0IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzoyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgLS10eXBlIGFyZ3VtZW50LCAlcyIKIG1zZ3N0ciAiYXJndW1lbnQgLS10eXBlIG5vbiByZWNvbm51LCAlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMTUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTE2CiBtc2dpZCAib25seSBvbmUgdHlwZSBhdCBhIHRpbWUiCiBtc2dzdHIgInF1J3VuIHNldWwgdHlwZSDDoCBsYSBmb2lzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNAorIzogYnVpbHRpbi9jb25maWcuYzoxMjUKIG1zZ2lkICJDb25maWcgZmlsZSBsb2NhdGlvbiIKIG1zZ3N0ciAiRW1wbGFjZW1lbnQgZHUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNQorIzogYnVpbHRpbi9jb25maWcuYzoxMjYKIG1zZ2lkICJ1c2UgZ2xvYmFsIGNvbmZpZyBmaWxlIgogbXNnc3RyICJ1dGlsaXNlciBsZXMgZmljaGllciBkZSBjb25maWd1cmF0aW9uIGdsb2JhbCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI3CiBtc2dpZCAidXNlIHN5c3RlbSBjb25maWcgZmlsZSIKIG1zZ3N0ciAidXRpbGlzZXIgbGUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIGR1IHN5c3TDqG1lIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNworIzogYnVpbHRpbi9jb25maWcuYzoxMjgKIG1zZ2lkICJ1c2UgcmVwb3NpdG9yeSBjb25maWcgZmlsZSIKIG1zZ3N0ciAidXRpbGlzZXIgbGUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIGR1IGTDqXDDtHQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTI4CisjOiBidWlsdGluL2NvbmZpZy5jOjEyOQogbXNnaWQgInVzZSBwZXItd29ya3RyZWUgY29uZmlnIGZpbGUiCiBtc2dzdHIgInV0aWxpc2VyIHVuIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBwYXIgYXJicmUgZGUgdHJhdmFpbCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMwCiBtc2dpZCAidXNlIGdpdmVuIGNvbmZpZyBmaWxlIgogbXNnc3RyICJ1dGlsaXNlciBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gc3DDqWNpZmnDqSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMxCiBtc2dpZCAiYmxvYi1pZCIKIG1zZ3N0ciAiYmxvYi1pZCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMxCiBtc2dpZCAicmVhZCBjb25maWcgZnJvbSBnaXZlbiBibG9iIG9iamVjdCIKIG1zZ3N0ciAibGlyZSBsYSBjb25maWd1cmF0aW9uIGRlcHVpcyBsJ29iamV0IGJsb2IgZm91cm5pIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMQorIzogYnVpbHRpbi9jb25maWcuYzoxMzIKIG1zZ2lkICJBY3Rpb24iCiBtc2dzdHIgIkFjdGlvbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMzCiBtc2dpZCAiZ2V0IHZhbHVlOiBuYW1lIFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgIm9idGVuaXIgbGEgdmFsZXVyIDogbm9tIFtyZWdleC1kZS12YWxldXJdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMworIzogYnVpbHRpbi9jb25maWcuYzoxMzQKIG1zZ2lkICJnZXQgYWxsIHZhbHVlczoga2V5IFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgIm9idGVuaXIgdG91dGVzIGxlcyB2YWxldXJzIDogY2zDqSBbcmVnZXgtZGUtdmFsZXVyXSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM1CiBtc2dpZCAiZ2V0IHZhbHVlcyBmb3IgcmVnZXhwOiBuYW1lLXJlZ2V4IFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgIm9idGVuaXIgbGVzIHZhbGV1ciBwb3VyIGxhIHJlZ2V4cCA6IHJlZ2V4LWRlLW5vbSBbcmVnZXgtZGUtdmFsZXVyXSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM2CiBtc2dpZCAiZ2V0IHZhbHVlIHNwZWNpZmljIGZvciB0aGUgVVJMOiBzZWN0aW9uWy52YXJdIFVSTCIKIG1zZ3N0ciAib2J0ZW5pciBsYSB2YWxldXIgc3DDqWNpZmlxdWUgcG91ciBsJ1VSTCA6IHNlY3Rpb25bLnZhcl0gVVJMIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNgorIzogYnVpbHRpbi9jb25maWcuYzoxMzcKIG1zZ2lkICJyZXBsYWNlIGFsbCBtYXRjaGluZyB2YXJpYWJsZXM6IG5hbWUgdmFsdWUgW3ZhbHVlX3JlZ2V4XSIKIG1zZ3N0ciAiIgogInJlbXBsYWNlciB0b3V0ZXMgbGVzIHZhcmlhYmxlcyBjb3JyZXNwb25kYW50IDogbm9tIHZhbGV1ciBbcmVnZXgtZGUtdmFsZXVyXSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM4CiBtc2dpZCAiYWRkIGEgbmV3IHZhcmlhYmxlOiBuYW1lIHZhbHVlIgogbXNnc3RyICJham91dGVyIHVuZSBub3V2ZWxsZSB2YXJpYWJsZSA6IG5vbSB2YWxldXIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM4CisjOiBidWlsdGluL2NvbmZpZy5jOjEzOQogbXNnaWQgInJlbW92ZSBhIHZhcmlhYmxlOiBuYW1lIFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgInN1cHByaW1lciB1bmUgdmFyaWFibGUgOiBub20gW3JlZ2V4LWRlLXZhbGV1cl0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM5CisjOiBidWlsdGluL2NvbmZpZy5jOjE0MAogbXNnaWQgInJlbW92ZSBhbGwgbWF0Y2hlczogbmFtZSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICJzdXBwcmltZXIgdG91dGVzIGxlcyBjb3JyZXNwb25kYW5jZXMgbm9tIFtyZWdleC1kZS12YWxldXJdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0MAorIzogYnVpbHRpbi9jb25maWcuYzoxNDEKIG1zZ2lkICJyZW5hbWUgc2VjdGlvbjogb2xkLW5hbWUgbmV3LW5hbWUiCiBtc2dzdHIgInJlbm9tbWVyIHVuZSBzZWN0aW9uIDogYW5jaWVuLW5vbSBub3V2ZWF1LW5vbSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQyCiBtc2dpZCAicmVtb3ZlIGEgc2VjdGlvbjogbmFtZSIKIG1zZ3N0ciAic3VwcHJpbWVyIHVuZSBzZWN0aW9uIDogbm9tIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0MgorIzogYnVpbHRpbi9jb25maWcuYzoxNDMKIG1zZ2lkICJsaXN0IGFsbCIKIG1zZ3N0ciAiYWZmaWNoZXIgdG91dCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ0CiBtc2dpZCAib3BlbiBhbiBlZGl0b3IiCiBtc2dzdHIgIm91dnJpciB1biDDqWRpdGV1ciIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ1CiBtc2dpZCAiZmluZCB0aGUgY29sb3IgY29uZmlndXJlZDogc2xvdCBbZGVmYXVsdF0iCiBtc2dzdHIgInRyb3V2ZXIgbGEgY291bGV1ciBjb25maWd1csOpZSA6IHNsb3QgW3BhciBkw6lmYXV0XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ2CiBtc2dpZCAiZmluZCB0aGUgY29sb3Igc2V0dGluZzogc2xvdCBbc3Rkb3V0LWlzLXR0eV0iCiBtc2dzdHIgInRyb3V2ZXIgbGUgcsOpZ2xhZ2UgZGUgbGEgY291bGV1ciA6IHNsb3QgW3N0ZG91dC1lc3QtdHR5XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ3CiBtc2dpZCAiVHlwZSIKIG1zZ3N0ciAiVHlwZSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ4IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzozOAogbXNnaWQgInZhbHVlIGlzIGdpdmVuIHRoaXMgdHlwZSIKIG1zZ3N0ciAiY2UgdHlwZSBlc3QgYXNzaWduw6kgw6AgbGEgdmFsZXVyIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0OAorIzogYnVpbHRpbi9jb25maWcuYzoxNDkKIG1zZ2lkICJ2YWx1ZSBpcyBcInRydWVcIiBvciBcImZhbHNlXCIiCiBtc2dzdHIgImxhIHZhbGV1ciBlc3QgXCJ0cnVlXCIgKHZyYWkpIG91IFwiZmFsc2VcIiAoZmF1eCkiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ5CisjOiBidWlsdGluL2NvbmZpZy5jOjE1MAogbXNnaWQgInZhbHVlIGlzIGRlY2ltYWwgbnVtYmVyIgogbXNnc3RyICJsYSB2YWxldXIgZXN0IHVuIG5vbWJyZSBkw6ljaW1hbCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUxCiBtc2dpZCAidmFsdWUgaXMgLS1ib29sIG9yIC0taW50IgogbXNnc3RyICJsYSB2YWxldXIgZXN0IC0tYm9vbCBvdSAtLWludCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUyCiBtc2dpZCAidmFsdWUgaXMgYSBwYXRoIChmaWxlIG9yIGRpcmVjdG9yeSBuYW1lKSIKIG1zZ3N0ciAibGEgdmFsZXVyIGVzdCB1biBjaGVtaW4gKHZlcnMgdW4gZmljaGllciBvdSB1biByw6lwZXJ0b2lyZSkiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUyCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MwogbXNnaWQgInZhbHVlIGlzIGFuIGV4cGlyeSBkYXRlIgogbXNnc3RyICJsYSB2YWxldXIgZXN0IHVuZSBkYXRlIGQnZXhwaXJhdGlvbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU0CiBtc2dpZCAiT3RoZXIiCiBtc2dzdHIgIkF1dHJlIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NAorIzogYnVpbHRpbi9jb25maWcuYzoxNTUKIG1zZ2lkICJ0ZXJtaW5hdGUgdmFsdWVzIHdpdGggTlVMIGJ5dGUiCiBtc2dzdHIgInRlcm1pbmVyIGxlcyB2YWxldXJzIGF2ZWMgdW4gY2FyYWN0w6hyZSBOVUwiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU1CisjOiBidWlsdGluL2NvbmZpZy5jOjE1NgogbXNnaWQgInNob3cgdmFyaWFibGUgbmFtZXMgb25seSIKIG1zZ3N0ciAibidhZmZpY2hlciBxdWUgbGVzIG5vbXMgZGUgdmFyaWFibGUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU2CisjOiBidWlsdGluL2NvbmZpZy5jOjE1NwogbXNnaWQgInJlc3BlY3QgaW5jbHVkZSBkaXJlY3RpdmVzIG9uIGxvb2t1cCIKIG1zZ3N0ciAicmVzcGVjdGVyIGxlcyBkaXJlY3RpdmVzIGQnaW5jbHVzaW9uIGxvcnMgZGUgbGEgcmVjaGVyY2hlIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NworIzogYnVpbHRpbi9jb25maWcuYzoxNTgKIG1zZ2lkICJzaG93IG9yaWdpbiBvZiBjb25maWcgKGZpbGUsIHN0YW5kYXJkIGlucHV0LCBibG9iLCBjb21tYW5kIGxpbmUpIgogbXNnc3RyICIiCiAiYWZmaWNoZXIgbCdvcmlnaW5lIGRlIGxhIGNvbmZpZ3VyYXRpb24gKGZpY2hpZXIsIGVudHLDqWUgc3RhbmRhcmQsIGJsb2IsICIKICJsaWduZSBkZSBjb21tYW5kZSkiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU4CisjOiBidWlsdGluL2NvbmZpZy5jOjE1OQorbXNnaWQgInNob3cgc2NvcGUgb2YgY29uZmlnICh3b3JrdHJlZSwgbG9jYWwsIGdsb2JhbCwgc3lzdGVtLCBjb21tYW5kKSIKK21zZ3N0ciAiIgorImFmZmljaGVyIGxhIHBvcnTDqWUgZGUgY29uZmlndXJhdGlvbiAoYXJicmUgZGUgdHJhdmFpbCwgbG9jYWwsIGdsb2JhbCwgIgorInN5c3TDqG1lLCBjb21tYW5kZSkiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTYwIGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MAogbXNnaWQgInZhbHVlIgogbXNnc3RyICJ2YWxldXIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU4CisjOiBidWlsdGluL2NvbmZpZy5jOjE2MAogbXNnaWQgIndpdGggLS1nZXQsIHVzZSBkZWZhdWx0IHZhbHVlIHdoZW4gbWlzc2luZyBlbnRyeSIKIG1zZ3N0ciAiYXZlYyAtLWdldCwgdXRpbGlzZXIgbGUgdmFsZXVyIHBhciBkw6lmYXV0IHF1YW5kIGwnZW50csOpZSBuJ2V4aXN0ZSBwYXMiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTcxCisjOiBidWlsdGluL2NvbmZpZy5jOjE3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgJWQiCiBtc2dzdHIgIm1hdXZhaXMgbm9tYnJlIGQnYXJndW1lbnRzLCBkZXZyYWl0IMOqdHJlICVkIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE3MworIzogYnVpbHRpbi9jb25maWcuYzoxNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAid3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cywgc2hvdWxkIGJlIGZyb20gJWQgdG8gJWQiCiBtc2dzdHIgIm1hdXZhaXMgbm9tYnJlIGQnYXJndW1lbnRzLCBkZXZyYWl0IMOqdHJlIGVudHJlICVkIGV0ICVkIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjMwNworIzogYnVpbHRpbi9jb25maWcuYzozMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBrZXkgcGF0dGVybjogJXMiCiBtc2dzdHIgIm1vdGlmIGRlIGNsw6kgaW52YWxpZGXCoDogJXMiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MzQzCisjOiBidWlsdGluL2NvbmZpZy5jOjM2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZm9ybWF0IGRlZmF1bHQgY29uZmlnIHZhbHVlOiAlcyIKIG1zZ3N0ciAiw6ljaGVjIGR1IGZvcm1hdGFnZSBkZSBsYSB2YWxldXIgZGUgY29uZmlnIHBhciBkw6lmYXV0wqA6ICVzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjQwMAorIzogYnVpbHRpbi9jb25maWcuYzo0MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHBhcnNlIGNvbG9yICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBsYSBjb3VsZXVyICclcyciCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDQyCisjOiBidWlsdGluL2NvbmZpZy5jOjQ1OQogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBkZWZhdWx0IGNvbG9yIHZhbHVlIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGEgdmFsZXVyIGRlIGNvdWxldXIgcGFyIGTDqWZhdXQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDk1IGJ1aWx0aW4vY29uZmlnLmM6NzQxCisjOiBidWlsdGluL2NvbmZpZy5jOjUxMiBidWlsdGluL2NvbmZpZy5jOjc2OAogbXNnaWQgIm5vdCBpbiBhIGdpdCBkaXJlY3RvcnkiCiBtc2dzdHIgInBhcyBkYW5zIHVuIHLDqXBlcnRvaXJlIGdpdCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0OTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTE1CiBtc2dpZCAid3JpdGluZyB0byBzdGRpbiBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJsJ8OpY3JpdHVyZSBzdXIgc3RkaW4gbidlc3QgcGFzIHN1cHBvcnTDqWUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NTAxCisjOiBidWlsdGluL2NvbmZpZy5jOjUxOAogbXNnaWQgIndyaXRpbmcgY29uZmlnIGJsb2JzIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgImwnw6ljcml0dXJlIGRlIGJsb2IgZGUgY29uZmlndXJhdGlvbiBuJ2VzdCBwYXMgc3VwcG9ydMOpZTwiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NTg2CisjOiBidWlsdGluL2NvbmZpZy5jOjYwMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiIyBUaGlzIGlzIEdpdCdzIHBlci11c2VyIGNvbmZpZ3VyYXRpb24gZmlsZS5cbiIKQEAgLTEwNTMyLDIzICsxMzM4OSwyMyBAQAogIiNcdG5hbWUgPSAlc1xuIgogIiNcdGVtYWlsID0gJXNcbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MTAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjI3CiBtc2dpZCAib25seSBvbmUgY29uZmlnIGZpbGUgYXQgYSB0aW1lIgogbXNnc3RyICJ1biBzZXVsIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiDDoCBsYSBmb2lzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYxNQorIzogYnVpbHRpbi9jb25maWcuYzo2MzIKIG1zZ2lkICItLWxvY2FsIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0tbG9jYWwgbmUgcGV1dCDDqnRyZSB1dGlsaXPDqSBxdSfDoCBsJ2ludMOpcmlldXIgZCd1biBkw6lww7R0IGdpdCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjM1CiBtc2dpZCAiLS1ibG9iIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0tYmxvYiBuZSBwZXV0IMOqdHJlIHV0aWxpc8OpIHF1J8OgIGwnaW50w6lyaWV1ciBkJ3VuIGTDqXDDtHQgZ2l0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYzNworIzogYnVpbHRpbi9jb25maWcuYzo2NTUKIG1zZ2lkICIkSE9NRSBub3Qgc2V0IgogbXNnc3RyICIkSE9NRSBuJ2VzdCBwYXMgZMOpZmluaSIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2NTcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6Njc5CiBtc2dpZCAiIgogIi0td29ya3RyZWUgY2Fubm90IGJlIHVzZWQgd2l0aCBtdWx0aXBsZSB3b3JraW5nIHRyZWVzIHVubGVzcyB0aGUgY29uZmlnXG4iCiAiZXh0ZW5zaW9uIHdvcmt0cmVlQ29uZmlnIGlzIGVuYWJsZWQuIFBsZWFzZSByZWFkIFwiQ09ORklHVVJBVElPTiBGSUxFXCJcbiIKQEAgLTEwNTU5LDE5ICsxMzQxNiwxOSBAQAogImxhIHNlY3Rpb24gXCJDT05GSUdVUkFUSU9OIEZJTEVcIiBkZSBcImdpdCBoZWxwIHdvcmt0cmVlXCIgcG91ciBwbHVzIGRlICIKICJkw6l0YWlscyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2ODcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzE0CiBtc2dpZCAiLS1nZXQtY29sb3IgYW5kIHZhcmlhYmxlIHR5cGUgYXJlIGluY29oZXJlbnQiCiBtc2dzdHIgIi0tZ2V0LWNvbG9yIGV0IGxlIHR5cGUgZGUgbGEgdmFyaWFibGUgc29udCBpbmNvaMOpcmVudHMiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjkyCisjOiBidWlsdGluL2NvbmZpZy5jOjcxOQogbXNnaWQgIm9ubHkgb25lIGFjdGlvbiBhdCBhIHRpbWUiCiBtc2dzdHIgInVuZSBzZXVsZSBhY3Rpb24gw6AgbGEgZm9pcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MDUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzMyCiBtc2dpZCAiLS1uYW1lLW9ubHkgaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tbGlzdCBvciAtLWdldC1yZWdleHAiCiBtc2dzdHIgIi0tbmFtZS1vbmx5IG4nZXN0IGFwcGxpY2FibGUgcXUnYXZlYyAtLWxpc3Qgb3UgLS1nZXQtcmVnZXhwIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjcxMQorIzogYnVpbHRpbi9jb25maWcuYzo3MzgKIG1zZ2lkICIiCiAiLS1zaG93LW9yaWdpbiBpcyBvbmx5IGFwcGxpY2FibGUgdG8gLS1nZXQsIC0tZ2V0LWFsbCwgLS1nZXQtcmVnZXhwLCBhbmQgLS0iCiAibGlzdCIKQEAgLTEwNTc5LDMzICsxMzQzNiwzMyBAQAogIi0tc2hvdy1vcmlnaW4gbidlc3QgYXBwbGljYWJsZSBxdSdhdmVjIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCBvdSAtLSIKICJsaXN0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjcxNworIzogYnVpbHRpbi9jb25maWcuYzo3NDQKIG1zZ2lkICItLWRlZmF1bHQgaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tZ2V0IgogbXNnc3RyICItLWRlZmF1bHQgbidlc3QgYXBwbGljYWJsZSBxdSdhdmVjIC0tZ2V0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjczMAorIzogYnVpbHRpbi9jb25maWcuYzo3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgY29uZmlnIGZpbGUgJyVzJyIKIG1zZ3N0ciAibGVjdHVyZSBkdSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gJyVzJyBpbXBvc3NpYmxlIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjczMworIzogYnVpbHRpbi9jb25maWcuYzo3NjAKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIGNvbmZpZyBmaWxlKHMpIgogbXNnc3RyICJlcnJldXIgbG9ycyBkdSB0cmFpdGVtZW50IGRlIGZpY2hpZXIocykgZGUgY29uZmlndXJhdGlvbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3NDMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzcwCiBtc2dpZCAiZWRpdGluZyBzdGRpbiBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJsJ8OpZGl0aW9uIGRlIHN0ZGluIG4nZXN0IHBhcyBzdXBwb3J0w6llIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc0NQorIzogYnVpbHRpbi9jb25maWcuYzo3NzIKIG1zZ2lkICJlZGl0aW5nIGJsb2JzIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgImwnw6lkaXRpb24gZGUgYmxvYnMgbidlc3QgcGFzIHN1cHBvcnTDqWUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzU5CisjOiBidWlsdGluL2NvbmZpZy5jOjc4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY3JlYXRlIGNvbmZpZ3VyYXRpb24gZmlsZSAlcyIKIG1zZ3N0ciAiY3LDqWF0aW9uIGltcG9zc2libGUgZHUgZmljaGllciBkZSBjb25maWd1cmF0aW9uICclcyciCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzcyCisjOiBidWlsdGluL2NvbmZpZy5jOjc5OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY2Fubm90IG92ZXJ3cml0ZSBtdWx0aXBsZSB2YWx1ZXMgd2l0aCBhIHNpbmdsZSB2YWx1ZVxuIgpAQCAtMTA2MTQsNyArMTM0NzEsNyBAQAogImltcG9zc2libGUgZGUgc3VyY2hhcmdlciBkZXMgdmFsZXVycyBtdWx0aXBsZXMgYXZlYyB1bmUgc2V1bGUgdmFsZXVyXG4iCiAiICAgICAgIFV0aWxpc2V6IHVuZSByZWdleHAsIC0tYWRkIG91IC0tcmVwbGFjZS1hbGwgcG91ciBtb2RpZmllciAlcy4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6ODQ2IGJ1aWx0aW4vY29uZmlnLmM6ODU3CisjOiBidWlsdGluL2NvbmZpZy5jOjg3MyBidWlsdGluL2NvbmZpZy5jOjg4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIHNlY3Rpb246ICVzIgogbXNnc3RyICJzZWN0aW9uIGluZXhpc3RhbnRlwqA6ICVzIgpAQCAtMTA2NDcsMzkgKzEzNTA0LDM5IEBACiBtc2dpZCAiYW5ub3RhdGVkIgogbXNnc3RyICJhbm5vdMOpIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MjcyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc1CiAjLCBjLWZvcm1hdAogbXNnaWQgImFubm90YXRlZCB0YWcgJXMgbm90IGF2YWlsYWJsZSIKIG1zZ3N0ciAibCfDqXRpcXVldHRlIGFubm90w6llICVzIG4nZXN0IHBhcyBkaXNwb25pYmxlIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc2CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImFubm90YXRlZCB0YWcgJXMgaGFzIG5vIGVtYmVkZGVkIG5hbWUiCiBtc2dzdHIgImwnw6l0aXF1ZXR0ZSBhbm5vdMOpZSAlcyBuJ2EgcGFzIGRlIG5vbSBlbWJhcnF1w6kiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNzgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyODEKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFnICclcycgaXMgcmVhbGx5ICclcycgaGVyZSIKIG1zZ3N0ciAibCfDqXRpcXVldHRlICclcycgZXN0IGVuIGZhaXQgJyVzJyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyMgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJubyB0YWcgZXhhY3RseSBtYXRjaGVzICclcyciCiBtc2dzdHIgImF1Y3VuZSDDqXRpcXVldHRlIG5lIGNvcnJlc3BvbmQgcGFyZmFpdGVtZW50IMOgICclcyciCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gZXhhY3QgbWF0Y2ggb24gcmVmcyBvciB0YWdzLCBzZWFyY2hpbmcgdG8gZGVzY3JpYmVcbiIKIG1zZ3N0ciAiIgogIlBhcyBkZSBjb3JyZXNwb25kYW5jZSBleGFjdGUgc3VyIGRlcyByw6lmcyBvdSBkZXMgw6l0aXF1ZXR0ZXMsIHJlY2hlcmNoZSBwYXIgIgogImRlc2NyaWJlXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozNzgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmluaXNoZWQgc2VhcmNoIGF0ICVzXG4iCiBtc2dzdHIgInJlY2hlcmNoZSB0ZXJtaW7DqWUgw6AgJXNcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQwNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQyMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gYW5ub3RhdGVkIHRhZ3MgY2FuIGRlc2NyaWJlICclcycuXG4iCkBAIC0xMDY4OCw3ICsxMzU0NSw3IEBACiAiQXVjdW5lIMOpdGlxdWV0dGUgYW5ub3TDqWUgbmUgcGV1dCBkw6ljcmlyZSAnJXMnLlxuIgogIkNlcGVuZGFudCwgaWwgZXhpc3RlIGRlcyDDqXRpcXVldHRlcyBub24tYW5ub3TDqWVzIDogZXNzYXlleiBhdmVjIC0tdGFncy4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MDgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vIHRhZ3MgY2FuIGRlc2NyaWJlICclcycuXG4iCkBAIC0xMDY5NywxMiArMTM1NTQsMTIgQEAKICJBdWN1bmUgw6l0aXF1ZXR0ZSBuZSBwZXV0IGTDqWNyaXJlICclcycuXG4iCiAiRXNzYXlleiAtLWFsd2F5cywgb3UgY3LDqWV6IGRlcyDDqXRpcXVldHRlcy4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MzgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJhdmVyc2VkICVsdSBjb21taXRzXG4iCiBtc2dzdHIgIiVsdSBjb21taXRzIHBhcmNvdXJ1c1xuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDQxCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJtb3JlIHRoYW4gJWkgdGFncyBmb3VuZDsgbGlzdGVkICVpIG1vc3QgcmVjZW50XG4iCkBAIC0xMDcxMiwxMjAgKzEzNTY5LDEyMCBAQAogImFmZmljaMOpZXNcbiIKICJhYmFuZG9uIGRlIGxhIHJlY2hlcmNoZSDDoCAlc1xuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTA5CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTI2CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlc2NyaWJlICVzXG4iCiBtc2dzdHIgImTDqWNyaXJlICVzXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MTIgYnVpbHRpbi9sb2cuYzo1MTMKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgb2JqZWN0IG5hbWUgJXMiCiBtc2dzdHIgIiVzIG4nZXN0IHBhcyB1biBub20gZCdvYmpldCB2YWxpZGUiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MjAKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgbmVpdGhlciBhIGNvbW1pdCBub3IgYmxvYiIKIG1zZ3N0ciAiJXMgbidlc3QgbmkgdW4gY29tbWl0IG5pIHVuIGJsb2IiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTEKIG1zZ2lkICJmaW5kIHRoZSB0YWcgdGhhdCBjb21lcyBhZnRlciB0aGUgY29tbWl0IgogbXNnc3RyICJyZWNoZXJjaGVyIGwnw6l0aXF1ZXR0ZSBxdWkgc3VpdCBsZSBjb21taXQiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzUKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTIKIG1zZ2lkICJkZWJ1ZyBzZWFyY2ggc3RyYXRlZ3kgb24gc3RkZXJyIgogbXNnc3RyICJkw6lib2d1ZXIgbGEgc3RyYXTDqWdpZSBkZSByZWNoZXJjaGUgc3VyIHN0ZGVyciIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzNgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MwogbXNnaWQgInVzZSBhbnkgcmVmIgogbXNnc3RyICJ1dGlsaXNlciBuJ2ltcG9ydGUgcXVlbGxlIHLDqWbDqXJlbmNlIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU0CiBtc2dpZCAidXNlIGFueSB0YWcsIGV2ZW4gdW5hbm5vdGF0ZWQiCiBtc2dzdHIgInV0aWxpc2VyIG4naW1wb3J0ZSBxdWVsbGUgw6l0aXF1ZXR0ZSwgbcOqbWUgbm9uLWFubm90w6llIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU1CiBtc2dpZCAiYWx3YXlzIHVzZSBsb25nIGZvcm1hdCIKIG1zZ3N0ciAidG91am91cnMgdXRpbGlzZXIgbGUgZm9ybWF0IGxvbmciCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzkKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTYKIG1zZ2lkICJvbmx5IGZvbGxvdyBmaXJzdCBwYXJlbnQiCiBtc2dzdHIgIm5lIHN1aXZyZSBxdWUgbGUgcHJlbWllciBwYXJlbnQiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTkKIG1zZ2lkICJvbmx5IG91dHB1dCBleGFjdCBtYXRjaGVzIgogbXNnc3RyICJuJ2FmZmljaGVyIHF1ZSBsZXMgY29ycmVzcG9uZGFuY2VzIGV4YWN0ZXMiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjEKIG1zZ2lkICJjb25zaWRlciA8bj4gbW9zdCByZWNlbnQgdGFncyAoZGVmYXVsdDogMTApIgogbXNnc3RyICIiCiAiY29uc2lkw6lyZXIgdW5pcXVlbWVudCBsZXMgPG4+IMOpdGlxdWV0dGVzIGxlIHBsdXMgcsOpY2VudGVzIChkw6lmYXV0IDogMTApIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ2CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTYzCiBtc2dpZCAib25seSBjb25zaWRlciB0YWdzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKIG1zZ3N0ciAibmUgY29uc2lkw6lyZXIgcXVlIGxlcyDDqXRpcXVldHRlcyBjb3JyZXNwb25kYW50IMOgIDxtb3RpZj4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjUKIG1zZ2lkICJkbyBub3QgY29uc2lkZXIgdGFncyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgIm5lIHBhcyBjb25zaWTDqXJlciBsZXMgw6l0aXF1ZXR0ZXMgY29ycmVzcG9uZGFudCDDoCA8bW90aWY+IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUwIGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjcgYnVpbHRpbi9uYW1lLXJldi5jOjUzNQogbXNnaWQgInNob3cgYWJicmV2aWF0ZWQgY29tbWl0IG9iamVjdCBhcyBmYWxsYmFjayIKIG1zZ3N0ciAiYWZmaWNoZXIgbGVzIG9iamV0cyBjb21taXRzIGFicsOpZ8OpcyBlbiBkZXJuaWVyIHJlY291cnMiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTEgYnVpbHRpbi9kZXNjcmliZS5jOjU1NAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2OCBidWlsdGluL2Rlc2NyaWJlLmM6NTcxCiBtc2dpZCAibWFyayIKIG1zZ3N0ciAibWFycXVlIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTY5CiBtc2dpZCAiYXBwZW5kIDxtYXJrPiBvbiBkaXJ0eSB3b3JraW5nIHRyZWUgKGRlZmF1bHQ6IFwiLWRpcnR5XCIpIgogbXNnc3RyICJham91dGVyIDxtYXJxdWU+IHNpIGxhIGNvcGllIGRlIHRyYXZhaWwgZXN0IHNhbGUgKGTDqWZhdXQgOiBcIi1kaXJ0eVwiKSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU3MgogbXNnaWQgImFwcGVuZCA8bWFyaz4gb24gYnJva2VuIHdvcmtpbmcgdHJlZSAoZGVmYXVsdDogXCItYnJva2VuXCIpIgogbXNnc3RyICIiCiAiYWpvdXRlciA8bWFycXVlPiBzaSBsYSBjb3BpZSBkZSB0cmF2YWlsIGVzdCBjYXNzw6llIChkw6lmYXV0IDogXCItYnJva2VuXCIpIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTczCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTkwCiBtc2dpZCAiLS1sb25nIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWJicmV2PTAiCiBtc2dzdHIgIi0tbG9uZyBldCAtLWFiYnJldj0wIHNvbnQgaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjYwMgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjYxOQogbXNnaWQgIk5vIG5hbWVzIGZvdW5kLCBjYW5ub3QgZGVzY3JpYmUgYW55dGhpbmcuIgogbXNnc3RyICJhdWN1biBub20gdHJvdXbDqSwgaW1wb3NzaWJsZSBkZSBkw6ljcmlyZSBxdW9pIHF1ZSBjZSBzb2l0LiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjY1MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjY3MAogbXNnaWQgIi0tZGlydHkgaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgogbXNnc3RyICItLWRpcnR5IGVzdCBpbmNvbXBhdGlibGUgYXZlYyBsYSBzcMOpY2lmaWNhdGlvbiBkZSBjb21taXRzIG91IGFzc2ltaWzDqXMiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NTQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NzIKIG1zZ2lkICItLWJyb2tlbiBpcyBpbmNvbXBhdGlibGUgd2l0aCBjb21taXQtaXNoZXMiCiBtc2dzdHIgIi0tYnJva2VuIGVzdCBpbmNvbXBhdGlibGUgYXZlYyBsZXMgY29tbWl0cyBvdSBhc3NpbWlsw6lzIgogCi0jOiBidWlsdGluL2RpZmYuYzo4MworIzogYnVpbHRpbi9kaWZmLmM6ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogbm90IGEgcmVndWxhciBmaWxlIG9yIHN5bWxpbmsiCiBtc2dzdHIgIiclcycgOiBuJ2VzdCBwYXMgdW4gZmljaGllciByw6lndWxpZXIgbmkgdW4gbGllbiBzeW1ib2xpcXVlIgogCi0jOiBidWlsdGluL2RpZmYuYzoyMzQKKyM6IGJ1aWx0aW4vZGlmZi5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9wdGlvbjogJXMiCiBtc2dzdHIgIm9wdGlvbiBpbnZhbGlkZSA6ICVzIgogCi0jOiBidWlsdGluL2RpZmYuYzozNjMKKyM6IGJ1aWx0aW4vZGlmZi5jOjM1MAogbXNnaWQgIk5vdCBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICJDZSBuJ2VzdCBwYXMgdW4gZMOpcMO0dCBnaXQgISIKIAotIzogYnVpbHRpbi9kaWZmLmM6NDA3CisjOiBidWlsdGluL2RpZmYuYzozOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvYmplY3QgJyVzJyBnaXZlbi4iCiBtc2dzdHIgIm9iamV0IHNww6ljaWZpw6kgJyVzJyBpbnZhbGlkZS4iCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjQxNgorIzogYnVpbHRpbi9kaWZmLmM6NDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1vcmUgdGhhbiB0d28gYmxvYnMgZ2l2ZW46ICclcyciCiBtc2dzdHIgInBsdXMgZGUgZGV1eCBibG9icyBzcMOpY2lmacOpcyA6ICclcyciCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjQyMQorIzogYnVpbHRpbi9kaWZmLmM6NDA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuaGFuZGxlZCBvYmplY3QgJyVzJyBnaXZlbi4iCiBtc2dzdHIgIm9iamV0IG5vbiBnw6lyw6kgJyVzJyBzcMOpY2lmacOpLiIKQEAgLTEwODYyLDUzICsxMzcxOSw1MyBAQAogImxlcyBmb3JtYXRzIGRlIGRpZmYgY29tYmluw6lzICgnLWMnIGV0ICctLWNjJykgbmUgc29udCBwYXMgc3VwcG9ydMOpc1xuIgogImRhbnMgbGUgbW9kZSBkZSBkaWZmIGRlIHLDqXBlcnRvaXJlICgnLWQnIGV0ICctLWRpci1kaWZmJykuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjMzCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJvdGggZmlsZXMgbW9kaWZpZWQ6ICclcycgYW5kICclcycuIgogbXNnc3RyICJsZXMgZGV1eCBmaWNoaWVycyBzb250IG1vZGlmacOpc8KgOiAnJXMnIGV0ICclcycuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjM1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjM2CiBtc2dpZCAid29ya2luZyB0cmVlIGZpbGUgaGFzIGJlZW4gbGVmdC4iCiBtc2dzdHIgImxlIGZpY2hpZXIgZGFucyBsJ2FyYnJlIGRlIHRyYXZhaWwgYSDDqXTDqSBsYWlzc8OpLiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0NgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0ZW1wb3JhcnkgZmlsZXMgZXhpc3QgaW4gJyVzJy4iCiBtc2dzdHIgImRlcyBmaWNoaWVycyB0ZW1wb3JhaXJlcyBleGlzdGVudCBkYW5zICclcycuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ3CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ4CiBtc2dpZCAieW91IG1heSB3YW50IHRvIGNsZWFudXAgb3IgcmVjb3ZlciB0aGVzZS4iCiBtc2dzdHIgInZvdXMgcG91cnJpZXogc291aGFpdGVyIGxlcyBuZXR0b3llciBvdSBsZXMgcsOpY3Vww6lyZXIuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6Njk2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6Njk3CiBtc2dpZCAidXNlIGBkaWZmLmd1aXRvb2xgIGluc3RlYWQgb2YgYGRpZmYudG9vbGAiCiBtc2dzdHIgInV0aWxpc2VyIGBkaWZmLmd1aXRvb2xgIGF1IGxpZXUgZGUgYGRpZmYudG9vbGAiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTgKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTkKIG1zZ2lkICJwZXJmb3JtIGEgZnVsbC1kaXJlY3RvcnkgZGlmZiIKIG1zZ3N0ciAicsOpYWxpc2UgdW4gZGlmZiBkZSByw6lwZXJ0b2lyZSBjb21wbGV0IgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzAwCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzAxCiBtc2dpZCAiZG8gbm90IHByb21wdCBiZWZvcmUgbGF1bmNoaW5nIGEgZGlmZiB0b29sIgogbXNnc3RyICJuZSBwYXMgY29uZmlybWVyIGF2YW50IGRlIGxhbmNlciBsJ291dGlsIGRlIGRpZmYiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDUKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDYKIG1zZ2lkICJ1c2Ugc3ltbGlua3MgaW4gZGlyLWRpZmYgbW9kZSIKIG1zZ3N0ciAidXRpbGlzZXIgbGVzIGxpZW5zIHN5bWJvbGlxdWVzIGVuIG1vZGUgZGUgZGlmZiBkZSByw6lwZXJ0b2lyZSIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNwogbXNnaWQgInRvb2wiCiBtc2dzdHIgIm91dGlsIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzA3CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzA4CiBtc2dpZCAidXNlIHRoZSBzcGVjaWZpZWQgZGlmZiB0b29sIgogbXNnc3RyICJ1dGlsaXNlciBsJ291dGlsIGRlIGRpZmYgc3DDqWNpZmnDqSIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxMAogbXNnaWQgInByaW50IGEgbGlzdCBvZiBkaWZmIHRvb2xzIHRoYXQgbWF5IGJlIHVzZWQgd2l0aCBgLS10b29sYCIKIG1zZ3N0ciAiYWZmaWNoZXIgdW5lIGxpc3RlIGRlcyBvdXRpbHMgZGUgZGlmZiB1dGlsaXNhYmxlcyBhdmVjIGAtLXRvb2xgIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzEyCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEzCiBtc2dpZCAiIgogIm1ha2UgJ2dpdC1kaWZmdG9vbCcgZXhpdCB3aGVuIGFuIGludm9rZWQgZGlmZiB0b29sIHJldHVybnMgYSBub24gLSB6ZXJvIGV4aXQgIgogImNvZGUiCkBAIC0xMDkxNiwxNjQgKzEzNzczLDI1NiBAQAogInByb3ZvcXVlIGxhIGZpbiBkZSAnZ2l0LWRpZmZ0b29sJyBzaSBsJ291dGlsIGRlIGRpZmYgaW52b3F1w6kgcmVudm9pZSB1biBjb2RlICIKICJub24tbnVsIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzE1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE2CiBtc2dpZCAic3BlY2lmeSBhIGN1c3RvbSBjb21tYW5kIGZvciB2aWV3aW5nIGRpZmZzIgogbXNnc3RyICJzcMOpY2lmaWVyIHVuZSBjb21tYW5kZSBwZXJzb25uYWxpc8OpZSBwb3VyIHZpc3VhbGlzZXIgbGVzIGRpZmbDqXJlbmNlcyIKIAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxNworbXNnaWQgInBhc3NlZCB0byBgZGlmZmAiCittc2dzdHIgInBhc3PDqSDDoCBgZGlmZmAiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzIKK21zZ2lkICJkaWZmdG9vbCByZXF1aXJlcyB3b3JrdHJlZSBvciAtLW5vLWluZGV4IgorbXNnc3RyICJkaWZmdG9vbCBleGlnZSB1biBhcmJyZSBkZSB0cmF2YWlsIG91IC0tbm8taW5kZXgiCisKICM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzkKK21zZ2lkICItLWRpci1kaWZmIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8taW5kZXgiCittc2dzdHIgIi0tZGlyLWRpZmYgZXN0IGluY29tcGF0aWJsZSBhdmVjIC0tbm8taW5kZXgiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDIKK21zZ2lkICItLWd1aSwgLS10b29sIGFuZCAtLWV4dGNtZCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICItLWd1aSwgLS10b29sIGV0IC0tZXh0Y21kIHNvbnQgbXV0dWVsbGVtZW50IGV4Y2x1c2lmcyIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc1MAogbXNnaWQgIm5vIDx0b29sPiBnaXZlbiBmb3IgLS10b29sPTx0b29sPiIKIG1zZ3N0ciAicGFzIGQnPG91dGlsPiBzcMOpY2lmacOpIHBvdXIgLS10b29sPTxvdXRpbD4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDYKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NTcKIG1zZ2lkICJubyA8Y21kPiBnaXZlbiBmb3IgLS1leHRjbWQ9PGNtZD4iCiBtc2dzdHIgInBhcyBkZSA8Y29tbWFuZGU+IHNww6ljaWZpw6kgcG91ciAtLWV4dGNtZD08Y29tbWFuZGU+IgogCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NgorbXNnaWQgImdpdCBlbnYtLWhlbHBlciAtLXR5cGU9W2Jvb2x8dWxvbmddIDxvcHRpb25zPiA8ZW52LXZhcj4iCittc2dzdHIgImdpdCBlbnYtLWhlbHBlciAtLXR5cGU9W2Jvb2x8dWxvbmddIDxvcHRpb25zPiA8dmFyIGQnZW52PiIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjM3IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAorbXNnaWQgInR5cGUiCittc2dzdHIgInR5cGUiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MQorbXNnaWQgImRlZmF1bHQgZm9yIGdpdF9lbnZfKiguLi4pIHRvIGZhbGwgYmFjayBvbiIKK21zZ3N0ciAidmFsZXVyIHBhciBkw6lmYXV0IHBvdXIgZ2l0X2Vudl8qKC4uLikgZW4gY2FzIGQnYWJzZW5jZSIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjQzCittc2dpZCAiYmUgcXVpZXQgb25seSB1c2UgZ2l0X2Vudl8qKCkgdmFsdWUgYXMgZXhpdCBjb2RlIgorbXNnc3RyICIiCisibW9kZSBzaWxlbmNpZXV4IG4ndXRpbGlzYW50IGxhIHZhbGV1ciBkZSBnaXRfZW52XyooKSBxdWUgcG91ciBsZSBjb2RlIGRlICIKKyJzb3J0aWUiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo2MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYC0tZGVmYXVsdCcgZXhwZWN0cyBhIGJvb2xlYW4gdmFsdWUgd2l0aCBgLS10eXBlPWJvb2xgLCBub3QgYCVzYCIKK21zZ3N0ciAiIgorImwnb3B0aW9uIGAtLWRlZmF1bHRgIGF0dGVuZCB1bmUgdmFsZXVyIGJvb2zDqWVubmUgYXZlYyBgLS10eXBlPWJvb2xgLCBwYXMgYCVzYCIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvcHRpb24gYC0tZGVmYXVsdCcgZXhwZWN0cyBhbiB1bnNpZ25lZCBsb25nIHZhbHVlIHdpdGggYC0tdHlwZT11bG9uZ2AsIG5vdCBgIgorIiVzYCIKK21zZ3N0ciAiIgorImwnb3B0aW9uIGAtLWRlZmF1bHRgIGF0dGVuZCB1bmUgdmFsZXVyIGVudGllciBsb25nIG5vbiBzaWduw6kgYXZlYyBgLS0iCisidHlwZT11bG9uZ2AsIHBhcyBgJXNgIgorCiAjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MjkKIG1zZ2lkICJnaXQgZmFzdC1leHBvcnQgW3Jldi1saXN0LW9wdHNdIgogbXNnc3RyICJnaXQgZmFzdC1leHBvcnQgW29wdGlvbnMtZGUtbGlzdGUtZGUtcsOpdmlzaW9uc10iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6ODUzCittc2dpZCAiRXJyb3I6IENhbm5vdCBleHBvcnQgbmVzdGVkIHRhZ3MgdW5sZXNzIC0tbWFyay10YWdzIGlzIHNwZWNpZmllZC4iCittc2dzdHIgIiIKKyJFcnJldXLCoDogaW1wb3NzaWJsZSBkJ2V4cG9ydGVyIGRlcyDDqXRpcXVldHRlcyBpbWJyaXF1w6llcyDDoCBtb2lucyBxdWUgLS1tYXJrLSIKKyJ0YWdzIG5lIHNvaXQgc3DDqWNpZmnDqS4iCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTUyCiBtc2dpZCAic2hvdyBwcm9ncmVzcyBhZnRlciA8bj4gb2JqZWN0cyIKIG1zZ3N0ciAiYWZmaWNoZXIgbGEgcHJvZ3Jlc3Npb24gYXByw6hzIDxuPiBvYmpldHMiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NAogbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiBzaWduZWQgdGFncyIKIG1zZ3N0ciAic8OpbGVjdGlvbm5lciBsYSBnZXN0aW9uIGRlcyDDqXRpcXVldHRlcyBzaWduw6llcyIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTEKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTU3CiBtc2dpZCAic2VsZWN0IGhhbmRsaW5nIG9mIHRhZ3MgdGhhdCB0YWcgZmlsdGVyZWQgb2JqZWN0cyIKIG1zZ3N0ciAiIgogInPDqWxlY3Rpb25uZXIgbGEgZ2VzdGlvbiBkZXMgw6l0aXF1ZXR0ZXMgcXVpIHBvaW50ZW50IHN1ciBkZXMgb2JqZXRzIGZpbHRyw6lzIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjAKK21zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2YgY29tbWl0IG1lc3NhZ2VzIGluIGFuIGFsdGVybmF0ZSBlbmNvZGluZyIKK21zZ3N0ciAiIgorInPDqWxlY3Rpb25uZXIgbGEgZ2VzdGlvbiBkZXMgbWVzc2FnZXMgZGUgdmFsaWRhdGlvbiBkYW5zIHVuIGVuY29kYWdlICIKKyJhbHRlcm5hdGlmIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2MwogbXNnaWQgIkR1bXAgbWFya3MgdG8gdGhpcyBmaWxlIgogbXNnc3RyICJFbnJlZ2lzdHJlciBsZXMgbWFycXVlcyBkYW5zIGNlIGZpY2hpZXIiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDE2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2NQogbXNnaWQgIkltcG9ydCBtYXJrcyBmcm9tIHRoaXMgZmlsZSIKIG1zZ3N0ciAiaW1wb3J0ZXIgbGVzIG1hcnF1ZXMgZGVwdWlzIGNlIGZpY2hpZXIiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDE4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2OQorbXNnaWQgIkltcG9ydCBtYXJrcyBmcm9tIHRoaXMgZmlsZSBpZiBpdCBleGlzdHMiCittc2dzdHIgImltcG9ydGVyIGxlcyBtYXJxdWVzIGRlcHVpcyBjZSBmaWNoaWVyIHMnaWwgZXhpc3RlIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3MQogbXNnaWQgIkZha2UgYSB0YWdnZXIgd2hlbiB0YWdzIGxhY2sgb25lIgogbXNnc3RyICJmYWxzaWZpZXIgdW4gYXV0ZXVyIGQnw6l0aXF1ZXR0ZSBzaSBsJ8OpdGlxdWV0dGUgbidlbiBwcsOpc2VudGUgcGFzIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyMAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzMKIG1zZ2lkICJPdXRwdXQgZnVsbCB0cmVlIGZvciBlYWNoIGNvbW1pdCIKIG1zZ3N0ciAiQWZmaWNoZXIgbCdhcmJyZSBjb21wbGV0IHBvdXIgY2hhcXVlIGNvbW1pdCIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc1CiBtc2dpZCAiVXNlIHRoZSBkb25lIGZlYXR1cmUgdG8gdGVybWluYXRlIHRoZSBzdHJlYW0iCiBtc2dzdHIgIlV0aWxpc2VyIGxhIGZvbmN0aW9uIFwiZG9uZVwiIHBvdXIgdGVybWluZXIgbGUgZmx1eCIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjMKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc2CiBtc2dpZCAiU2tpcCBvdXRwdXQgb2YgYmxvYiBkYXRhIgogbXNnc3RyICJTYXV0ZXIgbCdhZmZpY2hhZ2UgZGUgZG9ubsOpZXMgZGUgYmxvYiIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjQgYnVpbHRpbi9sb2cuYzoxNTg4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NyBidWlsdGluL2xvZy5jOjE3MDUKIG1zZ2lkICJyZWZzcGVjIgogbXNnc3RyICJzcMOpY2lmaWNhdGV1ciBkZSByw6lmw6lyZW5jZSIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjUKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc4CiBtc2dpZCAiQXBwbHkgcmVmc3BlYyB0byBleHBvcnRlZCByZWZzIgogbXNnc3RyICJBcHBsaXF1ZXIgbGUgc3DDqWNpZmljYXRldXIgZGUgcsOpZsOpcmVuY2UgYXV4IHLDqWbDqXJlbmNlcyBleHBvcnTDqWVzIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyNgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzkKIG1zZ2lkICJhbm9ueW1pemUgb3V0cHV0IgogbXNnc3RyICJhbm9ueW1pc2UgbGEgc29ydGllIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MjgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTgxCittc2dpZCAiUmVmZXJlbmNlIHBhcmVudHMgd2hpY2ggYXJlIG5vdCBpbiBmYXN0LWV4cG9ydCBzdHJlYW0gYnkgb2JqZWN0IGlkIgorbXNnc3RyICIiCisibGVzIHBhcmVudHMgcsOpZsOpcmVuY2VzIHF1aSBuZSBzb250IHBhcyBkYW5zIGxlIGZsdXggZCdleHBvcnQgcmFwaWRlIHBhciBpZCAiCisiZCdvYmpldCIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODMKK21zZ2lkICJTaG93IG9yaWdpbmFsIG9iamVjdCBpZHMgb2YgYmxvYnMvY29tbWl0cyIKK21zZ3N0ciAiQWZmaWNoZXIgbGVzIGlkcyBkJ29iamV0IG9yaWdpbmF1eCBkZXMgYmxvYnMvY29tbWl0cyIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODUKK21zZ2lkICJMYWJlbCB0YWdzIHdpdGggbWFyayBpZHMiCittc2dzdHIgIk1hcnF1ZXIgbGVzIMOpdGlxdWV0dGVzIGF2ZWMgZGVzIGlkcyBkZSBtYXJxdWUiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMjIwCittc2dpZCAiQ2Fubm90IHBhc3MgYm90aCAtLWltcG9ydC1tYXJrcyBhbmQgLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzIgorbXNnc3RyICIiCisiSW1wb3NzaWJsZSBkJ3V0aWxpc2VyIMOgIGxhIGZvaXMgLS1pbXBvcnQtbWFya3MgZXQgLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzIgorCisjOiBidWlsdGluL2ZldGNoLmM6MzQKIG1zZ2lkICJnaXQgZmV0Y2ggWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCiBtc2dzdHIgImdpdCBmZXRjaCBbPG9wdGlvbnM+XSBbPGTDqXDDtHQ+IFs8c3DDqWNpZmljYXRpb24tZGUtcsOpZsOpcmVuY2U+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoyOQorIzogYnVpbHRpbi9mZXRjaC5jOjM1CiBtc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIDxncm91cD4iCiBtc2dzdHIgImdpdCBmZXRjaCBbPG9wdGlvbnM+XSA8Z3JvdXBlPiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjMwCisjOiBidWlsdGluL2ZldGNoLmM6MzYKIG1zZ2lkICJnaXQgZmV0Y2ggLS1tdWx0aXBsZSBbPG9wdGlvbnM+XSBbKDxyZXBvc2l0b3J5PiB8IDxncm91cD4pLi4uXSIKIG1zZ3N0ciAiZ2l0IGZldGNoIC0tbXVsdGlwbGUgWzxvcHRpb25zPl0gWyg8ZMOpcMO0dD4gfCA8Z3JvdXBlPikuLi5dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MzEKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNwogbXNnaWQgImdpdCBmZXRjaCAtLWFsbCBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IGZldGNoIC0tYWxsIFs8b3B0aW9ucz5dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTE1IGJ1aWx0aW4vcHVsbC5jOjE5NAorIzogYnVpbHRpbi9mZXRjaC5jOjExNgorbXNnaWQgImZldGNoLnBhcmFsbGVsIGNhbm5vdCBiZSBuZWdhdGl2ZSIKK21zZ3N0ciAiZmV0Y2gucGFyYWxsZWwgbmUgcGV1dCBwYXMgw6p0cmUgbsOpZ2F0aWYiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMzkgYnVpbHRpbi9wdWxsLmM6MTg0CiBtc2dpZCAiZmV0Y2ggZnJvbSBhbGwgcmVtb3RlcyIKIG1zZ3N0ciAicsOpY3Vww6lyZXIgZGVwdWlzIHRvdXMgbGVzIGTDqXDDtHRzIGRpc3RhbnRzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTE3IGJ1aWx0aW4vcHVsbC5jOjE5NworIzogYnVpbHRpbi9mZXRjaC5jOjE0MSBidWlsdGluL3B1bGwuYzoyMjgKK21zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL2ZldGNoIgorbXNnc3RyICJkw6lmaW5pciBsYSBicmFuY2hlIGFtb250IHBvdXIgZ2l0IHB1bGwvZmV0Y2giCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMgYnVpbHRpbi9wdWxsLmM6MTg3CiBtc2dpZCAiYXBwZW5kIHRvIC5naXQvRkVUQ0hfSEVBRCBpbnN0ZWFkIG9mIG92ZXJ3cml0aW5nIgogbXNnc3RyICJham91dGVyIMOgIC5naXQvRkVUQ0hfSEVBRCBhdSBsaWV1IGRlIGwnw6ljcmFzZXIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTkgYnVpbHRpbi9wdWxsLmM6MjAwCisjOiBidWlsdGluL2ZldGNoLmM6MTQ1IGJ1aWx0aW4vcHVsbC5jOjE5MAogbXNnaWQgInBhdGggdG8gdXBsb2FkIHBhY2sgb24gcmVtb3RlIGVuZCIKIG1zZ3N0ciAiY2hlbWluIHZlcnMgbGVxdWVsIHTDqWzDqWNoYXJnZXIgbGUgcGFxdWV0IHN1ciBsZSBwb3N0ZSBkaXN0YW50IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTIwCisjOiBidWlsdGluL2ZldGNoLmM6MTQ2CiBtc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGxvY2FsIHJlZmVyZW5jZSIKIG1zZ3N0ciAiZm9yY2VyIGwnw6ljcmFzZW1lbnQgZGUgbGEgYnJhbmNoZSBsb2NhbGUiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMjIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDgKIG1zZ2lkICJmZXRjaCBmcm9tIG11bHRpcGxlIHJlbW90ZXMiCiBtc2dzdHIgInLDqWN1cMOpcmVyIGRlcHVpcyBwbHVzaWV1cnMgZMOpcMO0dHMgZGlzdGFudHMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMjQgYnVpbHRpbi9wdWxsLmM6MjA0CisjOiBidWlsdGluL2ZldGNoLmM6MTUwIGJ1aWx0aW4vcHVsbC5jOjE5NAogbXNnaWQgImZldGNoIGFsbCB0YWdzIGFuZCBhc3NvY2lhdGVkIG9iamVjdHMiCiBtc2dzdHIgInLDqWN1cMOpcmVyIHRvdXRlcyBsZXMgw6l0aXF1ZXR0ZXMgZXQgbGV1cnMgb2JqZXRzIGFzc29jacOpcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyNgorIzogYnVpbHRpbi9mZXRjaC5jOjE1MgogbXNnaWQgImRvIG5vdCBmZXRjaCBhbGwgdGFncyAoLS1uby10YWdzKSIKIG1zZ3N0ciAibmUgcGFzIHLDqWN1cMOpcmVyIHRvdXRlcyBsZXMgw6l0aXF1ZXR0ZXMgKC0tbm8tdGFncykiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMjgKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQKIG1zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBmZXRjaGVkIGluIHBhcmFsbGVsIgogbXNnc3RyICJub21icmUgZGUgc291cy1tb2R1bGVzIHLDqWN1cMOpcsOpcyBlbiBwYXJhbGzDqGxlIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMwIGJ1aWx0aW4vcHVsbC5jOjIwNworIzogYnVpbHRpbi9mZXRjaC5jOjE1NiBidWlsdGluL3B1bGwuYzoxOTcKIG1zZ2lkICJwcnVuZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMgbm8gbG9uZ2VyIG9uIHJlbW90ZSIKIG1zZ3N0ciAiIgogIsOpbGltaW5lciBsZXMgYnJhbmNoZXMgZGUgc3VpdmkgZGlzdGFudCBzaSBsYSBicmFuY2hlIG4nZXhpc3RlIHBsdXMgZGFucyBsZSAiCiAiZMOpcMO0dCBkaXN0YW50IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMyCisjOiBidWlsdGluL2ZldGNoLmM6MTU4CiBtc2dpZCAicHJ1bmUgbG9jYWwgdGFncyBubyBsb25nZXIgb24gcmVtb3RlIGFuZCBjbG9iYmVyIGNoYW5nZWQgdGFncyIKIG1zZ3N0ciAiIgogIsOpbGltaW5lciBsZXMgw6l0aXF1ZXR0ZXMgbG9jYWxlcyBxdWkgb250IGRpc3BhcnUgZHUgZMOpcMO0dCBkaXN0YW50IGV0IHF1aSAiCiAiZW5jb21icmVudCBsZXMgw6l0aXF1ZXR0ZXMgbW9kaWZpw6llcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzMyBidWlsdGluL2ZldGNoLmM6MTU2IGJ1aWx0aW4vcHVsbC5jOjEzMgorIzogYnVpbHRpbi9mZXRjaC5jOjE1OSBidWlsdGluL2ZldGNoLmM6MTgyIGJ1aWx0aW4vcHVsbC5jOjEyMQogbXNnaWQgIm9uLWRlbWFuZCIKIG1zZ3N0ciAiw6AgbGEgZGVtYW5kZSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzNAorIzogYnVpbHRpbi9mZXRjaC5jOjE2MAogbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMiCiBtc2dzdHIgImNvbnRyw7RsZXIgbGEgcsOpY3Vww6lyYXRpb24gcsOpY3Vyc2l2ZSBkYW5zIGxlcyBzb3VzLW1vZHVsZXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzggYnVpbHRpbi9wdWxsLmM6MjE1CisjOiBidWlsdGluL2ZldGNoLmM6MTY0IGJ1aWx0aW4vcHVsbC5jOjIwNQogbXNnaWQgImtlZXAgZG93bmxvYWRlZCBwYWNrIgogbXNnc3RyICJjb25zZXJ2ZXIgbGUgcGFxdWV0IHTDqWzDqWNoYXJnw6kiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjYKIG1zZ2lkICJhbGxvdyB1cGRhdGluZyBvZiBIRUFEIHJlZiIKIG1zZ3N0ciAicGVybWV0dHJlIGxhIG1pc2Ugw6Agam91ciBkZSBsYSByw6lmw6lyZW5jZSBIRUFEIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQzIGJ1aWx0aW4vZmV0Y2guYzoxNDkgYnVpbHRpbi9wdWxsLmM6MjE4CisjOiBidWlsdGluL2ZldGNoLmM6MTY5IGJ1aWx0aW4vZmV0Y2guYzoxNzUgYnVpbHRpbi9wdWxsLmM6MjA4CiBtc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyBjbG9uZSIKIG1zZ3N0ciAiYXBwcm9mb25kaXIgbCdoaXN0b3JpcXVlIGQndW4gY2xvbmUgc3VwZXJmaWNpZWwiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzEKIG1zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IHJlcG9zaXRvcnkgYmFzZWQgb24gdGltZSIKIG1zZ3N0ciAiYXBwcm9mb25kaXIgbCdoaXN0b3JpcXVlIGQndW4gY2xvbmUgc3VwZXJmaWNpZWwgZW4gZm9uY3Rpb24gZCd1bmUgZGF0ZSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1MSBidWlsdGluL3B1bGwuYzoyMjEKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzcgYnVpbHRpbi9wdWxsLmM6MjExCiBtc2dpZCAiY29udmVydCB0byBhIGNvbXBsZXRlIHJlcG9zaXRvcnkiCiBtc2dzdHIgImNvbnZlcnRpciBlbiB1biBkw6lww7R0IGNvbXBsZXQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODAKIG1zZ2lkICJwcmVwZW5kIHRoaXMgdG8gc3VibW9kdWxlIHBhdGggb3V0cHV0IgogbXNnc3RyICJwcsOpZml4ZXIgY2VjaSDDoCBsYSBzb3J0aWUgZHUgY2hlbWluIGR1IHNvdXMtbW9kdWxlIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU3CisjOiBidWlsdGluL2ZldGNoLmM6MTgzCiBtc2dpZCAiIgogImRlZmF1bHQgZm9yIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIChsb3dlciBwcmlvcml0eSB0aGFuIGNvbmZpZyAiCiAiZmlsZXMpIgpAQCAtMTEwODEsMTA5ICsxNDAzMCwxMzMgQEAKICJwYXIgZMOpZmF1dCBwb3VyIGxhIHLDqWN1cMOpcmF0aW9uIHLDqWN1cnNpdmUgZGUgc291cy1tb2R1bGVzIChwcmlvcml0w6kgcGx1cyAiCiAiYmFzc2UgcXVlIGxlcyBmaWNoaWVycyBkZSBjb25maWcpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYxIGJ1aWx0aW4vcHVsbC5jOjIyNAorIzogYnVpbHRpbi9mZXRjaC5jOjE4NyBidWlsdGluL3B1bGwuYzoyMTQKIG1zZ2lkICJhY2NlcHQgcmVmcyB0aGF0IHVwZGF0ZSAuZ2l0L3NoYWxsb3ciCiBtc2dzdHIgImFjY2VwdGVyIGxlcyByw6lmw6lyZW5jZXMgcXVpIG1ldHRlbnQgw6Agam91ciAuZ2l0L3NoYWxsb3ciCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjIgYnVpbHRpbi9wdWxsLmM6MjI2CisjOiBidWlsdGluL2ZldGNoLmM6MTg4IGJ1aWx0aW4vcHVsbC5jOjIxNgogbXNnaWQgInJlZm1hcCIKIG1zZ3N0ciAiY29ycmVzcG9uZGFuY2UgZGUgcsOpZsOpcmVuY2UiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjMgYnVpbHRpbi9wdWxsLmM6MjI3CisjOiBidWlsdGluL2ZldGNoLmM6MTg5IGJ1aWx0aW4vcHVsbC5jOjIxNwogbXNnaWQgInNwZWNpZnkgZmV0Y2ggcmVmbWFwIgogbXNnc3RyICJzcMOpY2lmaWVyIHVuZSBjb3JyZXNwb25kYW5jZSBkZSByw6lmw6lyZW5jZSBwb3VyIGxhIHLDqWN1cMOpcmF0aW9uIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTY0IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzcgYnVpbHRpbi9wdXNoLmM6NTgyCi0jOiBidWlsdGluL3NlbmQtcGFjay5jOjE3MgotbXNnaWQgInNlcnZlci1zcGVjaWZpYyIKLW1zZ3N0ciAic3DDqWNpZmlxdWUgYXUgc2VydmV1ciIKLQotIzogYnVpbHRpbi9mZXRjaC5jOjE2NCBidWlsdGluL2xzLXJlbW90ZS5jOjc3IGJ1aWx0aW4vcHVzaC5jOjU4MgotIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzMKLW1zZ2lkICJvcHRpb24gdG8gdHJhbnNtaXQiCi1tc2dzdHIgIm9wdGlvbiDDoCB0cmFuc21ldHRyZSIKLQotIzogYnVpbHRpbi9mZXRjaC5jOjE3MAorIzogYnVpbHRpbi9mZXRjaC5jOjE5NgogbXNnaWQgInJlcG9ydCB0aGF0IHdlIGhhdmUgb25seSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHRoaXMgb2JqZWN0IgogbXNnc3RyICJyYXBwb3J0ZSBxdWUgbm91cyBuJ2F2b25zIHF1ZSBkZXMgb2JqZXRzIGpvaWduYWJsZXMgZGVwdWlzIGNldCBvYmpldCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjQ3MAorIzogYnVpbHRpbi9mZXRjaC5jOjE5OQorbXNnaWQgInJ1biAnZ2MgLS1hdXRvJyBhZnRlciBmZXRjaGluZyIKK21zZ3N0ciAibGFuY2VyICdnYyAtLWF1dG8nIGFwcsOocyBsYSByw6ljdXDDqXJhdGlvbiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjIwMSBidWlsdGluL3B1bGwuYzoyMjYKK21zZ2lkICJjaGVjayBmb3IgZm9yY2VkLXVwZGF0ZXMgb24gYWxsIHVwZGF0ZWQgYnJhbmNoZXMiCittc2dzdHIgInbDqXJpZmllciBsZXMgbWlzZXMgw6Agam91ciBmb3Jjw6llcyBzdXIgdG91dGVzIGxlcyBicmFuY2hlcyBtaXNlcyDDoCBqb3VyIgorCisjOiBidWlsdGluL2ZldGNoLmM6MjAzCittc2dpZCAid3JpdGUgdGhlIGNvbW1pdC1ncmFwaCBhZnRlciBmZXRjaGluZyIKK21zZ3N0ciAiw6ljcmlyZSBsZSBncmFwaGUgZGUgY29tbWl0cyBhcHLDqHMgbGUgcmFwYXRyaWVtZW50IgorCisjOiBidWlsdGluL2ZldGNoLmM6NTEzCiBtc2dpZCAiQ291bGRuJ3QgZmluZCByZW1vdGUgcmVmIEhFQUQiCiBtc2dzdHIgImltcG9zc2libGUgZGUgdHJvdXZlciBsYSByw6lmw6lyZW5jZSBIRUFEIGRpc3RhbnRlIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NjA5CisjOiBidWlsdGluL2ZldGNoLmM6NjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbmZpZ3VyYXRpb24gZmV0Y2gub3V0cHV0IGNvbnRhaW5zIGludmFsaWQgdmFsdWUgJXMiCiBtc2dzdHIgIiIKICJsZSBwYXJhbcOodHJlIGRlIGNvbmZpZ3VyYXRpb24gZmV0Y2gub3V0cHV0IGNvbnRpZW50IHVuZSB2YWxldXIgaW52YWxpZGUgJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MDIKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIG5vdCBmb3VuZCIKIG1zZ3N0ciAib2JqZXQgJXMgbm9uIHRyb3V2w6kiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MDYKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTUKIG1zZ2lkICJbdXAgdG8gZGF0ZV0iCiBtc2dzdHIgIlvDoCBqb3VyXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjcxOSBidWlsdGluL2ZldGNoLmM6NzM1IGJ1aWx0aW4vZmV0Y2guYzo4MDcKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NjggYnVpbHRpbi9mZXRjaC5jOjc4NCBidWlsdGluL2ZldGNoLmM6ODU2CiBtc2dpZCAiW3JlamVjdGVkXSIKIG1zZ3N0ciAiW3JlamV0w6ldIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzIwCisjOiBidWlsdGluL2ZldGNoLmM6NzY5CiBtc2dpZCAiY2FuJ3QgZmV0Y2ggaW4gY3VycmVudCBicmFuY2giCiBtc2dzdHIgImltcG9zc2libGUgZGUgcsOpY3Vww6lyZXIgZGFucyBsYSBicmFuY2hlIGFjdHVlbGxlIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzMwCisjOiBidWlsdGluL2ZldGNoLmM6Nzc5CiBtc2dpZCAiW3RhZyB1cGRhdGVdIgogbXNnc3RyICJbbWlzZSDDoCBqb3VyIGRlIGwnw6l0aXF1ZXR0ZV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MzEgYnVpbHRpbi9mZXRjaC5jOjc3MSBidWlsdGluL2ZldGNoLmM6Nzg3Ci0jOiBidWlsdGluL2ZldGNoLmM6ODAyCisjOiBidWlsdGluL2ZldGNoLmM6NzgwIGJ1aWx0aW4vZmV0Y2guYzo4MTcgYnVpbHRpbi9mZXRjaC5jOjgzOQorIzogYnVpbHRpbi9mZXRjaC5jOjg1MQogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgbG9jYWwgcmVmIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIG1ldHRyZSDDoCBqb3VyIGxhIHLDqWbDqXJlbmNlIGxvY2FsZSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjczNQorIzogYnVpbHRpbi9mZXRjaC5jOjc4NAogbXNnaWQgIndvdWxkIGNsb2JiZXIgZXhpc3RpbmcgdGFnIgogbXNnc3RyICLDqWNyYXNlcmFpdCBsJ8OpdGlxdWV0dGUgZXhpc3RhbnRlIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzU3CisjOiBidWlsdGluL2ZldGNoLmM6ODA2CiBtc2dpZCAiW25ldyB0YWddIgogbXNnc3RyICJbbm91dmVsbGUgw6l0aXF1ZXR0ZV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3NjAKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MDkKIG1zZ2lkICJbbmV3IGJyYW5jaF0iCiBtc2dzdHIgIltub3V2ZWxsZSBicmFuY2hlXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjc2MworIzogYnVpbHRpbi9mZXRjaC5jOjgxMgogbXNnaWQgIltuZXcgcmVmXSIKIG1zZ3N0ciAiW25vdXZlbGxlIHLDqWbDqXJlbmNlXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjgwMgorIzogYnVpbHRpbi9mZXRjaC5jOjg1MQogbXNnaWQgImZvcmNlZCB1cGRhdGUiCiBtc2dzdHIgIm1pc2Ugw6Agam91ciBmb3Jjw6llIgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODA3CisjOiBidWlsdGluL2ZldGNoLmM6ODU2CiBtc2dpZCAibm9uLWZhc3QtZm9yd2FyZCIKIG1zZ3N0ciAicGFzIGVuIGF2YW5jZSByYXBpZGUiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4NTMKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NzcKK21zZ2lkICIiCisiRmV0Y2ggbm9ybWFsbHkgaW5kaWNhdGVzIHdoaWNoIGJyYW5jaGVzIGhhZCBhIGZvcmNlZCB1cGRhdGUsXG4iCisiYnV0IHRoYXQgY2hlY2sgaGFzIGJlZW4gZGlzYWJsZWQuIFRvIHJlLWVuYWJsZSwgdXNlICctLXNob3ctZm9yY2VkLXVwZGF0ZXMnXG4iCisiZmxhZyBvciBydW4gJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgdHJ1ZScuIgorbXNnc3RyICIiCisiRmV0Y2ggaW5kaXF1ZSBub3JtYWxlbWVudCBxdWVsbGVzIGJyYW5jaGVzIG9udCBzdWJpIHVuZSBtaXNlIMOgIGpvdXIgZm9yY8OpZSxcbiIKKyJtYWlzIGNlY2kgYSDDqXTDqSBkw6lzYWN0aXbDqS4gUG91ciByw6ktYWN0aXZlciwgdXRpbGlzZXogbGUgZHJhcGVhdVxuIgorIictLXNob3ctZm9yY2VkLXVwZGF0ZScgb3UgbGFuY2V6ICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzIHRydWUnLiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjg4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gY2hlY2sgZm9yY2VkIHVwZGF0ZXMuIFlvdSBjYW4gdXNlXG4iCisiJy0tbm8tc2hvdy1mb3JjZWQtdXBkYXRlcycgb3IgcnVuICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzICIKKyJmYWxzZSdcbiIKKyIgdG8gYXZvaWQgdGhpcyBjaGVjay5cbiIKK21zZ3N0ciAiIgorIiUuMmYgc2Vjb25kZXMgb250IMOpdMOpIG7DqWNlc3NhaXJlcyBwb3VyIHbDqXJpZmllciBsZXMgbWlzZXMgw6Agam91ciBmb3Jjw6llcy5cbiIKKyJWb3VzIHBvdXZleiB1dGlsaXNlciAnLS1uby1zaG93LWZvcmNlZC11cGRhdGUnIG91IGxhbmNlclxuIgorIidnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzIGZhbHNlJyBwb3VyIMOpdml0ZXIgY2VjaS5cbiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjkyMAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBkaWQgbm90IHNlbmQgYWxsIG5lY2Vzc2FyeSBvYmplY3RzXG4iCiBtc2dzdHIgIiVzIG4nYSBwYXMgZW52b3nDqSB0b3VzIGxlcyBvYmpldHMgbsOpY2Vzc2FpcmVzXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4NzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzo5NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVqZWN0ICVzIGJlY2F1c2Ugc2hhbGxvdyByb290cyBhcmUgbm90IGFsbG93ZWQgdG8gYmUgdXBkYXRlZCIKIG1zZ3N0ciAiIgogIiVzIHJlamV0w6kgcGFyY2UgcXVlIGxlcyByYWNpbmVzIHN1cGVyZmljaWVsbGVzIG5lIHNvbnQgcGFzIG1pc2VzIMOgIGpvdXIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo5NjMgYnVpbHRpbi9mZXRjaC5jOjEwODUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMDI2IGJ1aWx0aW4vZmV0Y2guYzoxMTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZyb20gJS4qc1xuIgogbXNnc3RyICJEZXB1aXMgJS4qc1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6OTc0CisjOiBidWlsdGluL2ZldGNoLmM6MTAzNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAic29tZSBsb2NhbCByZWZzIGNvdWxkIG5vdCBiZSB1cGRhdGVkOyB0cnkgcnVubmluZ1xuIgpAQCAtMTExOTIsNTcgKzE0MTY1LDc5IEBACiAiZGVzIHLDqWbDqXJlbmNlcyBsb2NhbGVzIG4nb250IHBhcyBwdSDDqnRyZSBtaXNlcyDDoCBqb3VyIDsgZXNzYXlleiBkZSBsYW5jZXJcbiIKICIgJ2dpdCByZW1vdGUgcHJ1bmUgJXMnIHBvdXIgc3VwcHJpbWVyIGRlcyBicmFuY2hlcyBhbmNpZW5uZXMgZW4gY29uZmxpdCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwNTUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICglcyB3aWxsIGJlY29tZSBkYW5nbGluZykiCiBtc2dzdHIgIiAgICglcyBzZXJhIGVuIHN1c3BlbnMpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA1NgorIzogYnVpbHRpbi9mZXRjaC5jOjExMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgKCVzIGhhcyBiZWNvbWUgZGFuZ2xpbmcpIgogbXNnc3RyICIgICAoJXMgZXN0IGRldmVudSBlbiBzdXNwZW5zKSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwODgKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTY3CiBtc2dpZCAiW2RlbGV0ZWRdIgogbXNnc3RyICJbc3VwcHJpbcOpXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwODkgYnVpbHRpbi9yZW1vdGUuYzoxMDM2CisjOiBidWlsdGluL2ZldGNoLmM6MTE2OCBidWlsdGluL3JlbW90ZS5jOjExMTIKIG1zZ2lkICIobm9uZSkiCiBtc2dzdHIgIihhdWN1bihlKSkiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTEyCisjOiBidWlsdGluL2ZldGNoLmM6MTE5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBmZXRjaCBpbnRvIGN1cnJlbnQgYnJhbmNoICVzIG9mIG5vbi1iYXJlIHJlcG9zaXRvcnkiCiBtc2dzdHIgIlJlZnVzIGRlIHLDqWN1cMOpcmVyIGRhbnMgbGEgYnJhbmNoZSBjb3VyYW50ICVzIGQndW4gZMOpcMO0dCBub24gbnUiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTMxCisjOiBidWlsdGluL2ZldGNoLmM6MTIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJPcHRpb24gXCIlc1wiIHZhbHVlIFwiJXNcIiBpcyBub3QgdmFsaWQgZm9yICVzIgogbXNnc3RyICJMYSB2YWxldXIgXCIlMiRzXCIgZGUgbCdvcHRpb24gXCIlMSRzXCIgZXN0IGludmFsaWRlIHBvdXIgJTMkcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExMzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMjEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9wdGlvbiBcIiVzXCIgaXMgaWdub3JlZCBmb3IgJXNcbiIKIG1zZ3N0ciAiTCdvcHRpb24gXCIlc1wiIGVzdCBpZ25vcsOpZSBwb3VyICVzXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMzCisjOiBidWlsdGluL2ZldGNoLmM6MTQyMQorbXNnaWQgIm11bHRpcGxlIGJyYW5jaGVzIGRldGVjdGVkLCBpbmNvbXBhdGlibGUgd2l0aCAtLXNldC11cHN0cmVhbSIKK21zZ3N0ciAiYnJhbmNoZXMgbXVsdGlwbGVzIGTDqXRlY3TDqWVzLCBpbWNvbXBhdGlibGUgYXZlYyAtLXNldC11cHN0cmVhbSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MzYKK21zZ2lkICJub3Qgc2V0dGluZyB1cHN0cmVhbSBmb3IgYSByZW1vdGUgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKK21zZ3N0ciAiZMOpcMO0dCBhbW9udCBub24gZMOpZmluaSBwb3VyIGxhIGJyYW5jaGUgZGUgc3Vpdmkgw6AgZGlzdGFuY2UiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDM4Cittc2dpZCAibm90IHNldHRpbmcgdXBzdHJlYW0gZm9yIGEgcmVtb3RlIHRhZyIKK21zZ3N0ciAiZMOpcMO0dCBhbW9udCBub24gZMOpZmluaSBwb3VyIGwnw6l0aXF1ZXR0ZSBkaXN0YW50ZSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0NDAKK21zZ2lkICJ1bmtub3duIGJyYW5jaCB0eXBlIgorbXNnc3RyICJ0eXBlIGRlIGJyYW5jaGUgaW5jb25udSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0NDIKK21zZ2lkICIiCisibm8gc291cmNlIGJyYW5jaCBmb3VuZC5cbiIKKyJ5b3UgbmVlZCB0byBzcGVjaWZ5IGV4YWN0bHkgb25lIGJyYW5jaCB3aXRoIHRoZSAtLXNldC11cHN0cmVhbSBvcHRpb24uIgorbXNnc3RyICIiCisiQXVjdW5lIGJyYW5jaGUgc291cmNlIHRyb3V2w6llLlxuIgorIlZvdXMgZGV2ZXogc3DDqWNpZmllciBleGFjdGVtZW50IHVuZSBicmFuY2hlIGF2ZWMgbCdvcHRpb24gLS1zZXQtdXBzdHJlYW0uIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTU2OCBidWlsdGluL2ZldGNoLmM6MTYzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJGZXRjaGluZyAlc1xuIgogbXNnc3RyICJSw6ljdXDDqXJhdGlvbiBkZSAlc1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQzNSBidWlsdGluL3JlbW90ZS5jOjEwMAorIzogYnVpbHRpbi9mZXRjaC5jOjE1NzggYnVpbHRpbi9mZXRjaC5jOjE2MzMgYnVpbHRpbi9yZW1vdGUuYzoxMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZldGNoICVzIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHLDqWN1cMOpcmVyICVzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQ4MSBidWlsdGluL2ZldGNoLmM6MTY0OQotbXNnaWQgIiIKLSItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdpdGggdGhlIHJlbW90ZSBjb25maWd1cmVkIGluIGNvcmUucGFydGlhbENsb25lIgotbXNnc3RyICIiCi0iLS1maWx0ZXIgbmUgcGV1dCDDqnRyZSB1dGlsaXPDqSBxdSdhdmVjIGxlIGTDqXDDtHQgZGlzdGFudCBjb25maWd1csOpIGRhbnMgY29yZS4iCi0icGFydGlhbENsb25lIgorIzogYnVpbHRpbi9mZXRjaC5jOjE1OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZldGNoICclcycgKGV4aXQgY29kZTogJWQpXG4iCittc2dzdHIgImltcG9zc2libGUgZGUgcsOpY3Vww6lyZXIgJyVzJyAoY29kZSBkZSBzb3J0aWXCoDogJWQpXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTA0CisjOiBidWlsdGluL2ZldGNoLmM6MTY5MwogbXNnaWQgIiIKICJObyByZW1vdGUgcmVwb3NpdG9yeSBzcGVjaWZpZWQuICBQbGVhc2UsIHNwZWNpZnkgZWl0aGVyIGEgVVJMIG9yIGFcbiIKICJyZW1vdGUgbmFtZSBmcm9tIHdoaWNoIG5ldyByZXZpc2lvbnMgc2hvdWxkIGJlIGZldGNoZWQuIgpAQCAtMTEyNTAsNjggKzE0MjQ1LDc2IEBACiAiQXVjdW4gZMOpcMO0dCBkaXN0YW50IHNww6ljaWZpw6kuIFZldWlsbGV6IHNww6ljaWZpZXIgdW5lIFVSTCBvdSB1biBub21cbiIKICJkaXN0YW50IGRlcHVpcyBsZXNxdWVscyBsZXMgbm91dmVsbGVzIHLDqXZpc2lvbnMgZGV2cmFpZW50IMOqdHJlIHLDqWN1cMOpcsOpZXMuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU0MQorIzogYnVpbHRpbi9mZXRjaC5jOjE3MzAKIG1zZ2lkICJZb3UgbmVlZCB0byBzcGVjaWZ5IGEgdGFnIG5hbWUuIgogbXNnc3RyICJWb3VzIGRldmV6IHNww6ljaWZpZXIgdW4gbm9tIGQnw6l0aXF1ZXR0ZS4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTkwCisjOiBidWlsdGluL2ZldGNoLmM6MTc4MAogbXNnaWQgIk5lZ2F0aXZlIGRlcHRoIGluIC0tZGVlcGVuIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgIlVuZSBwcm9mb25kZXVyIG7DqWdhdGl2ZSBkYW5zIC0tZGVlcGVuIG4nZXN0IHBhcyBzdXBwb3J0w6llIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU5MgorIzogYnVpbHRpbi9mZXRjaC5jOjE3ODIKIG1zZ2lkICItLWRlZXBlbiBhbmQgLS1kZXB0aCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICItLWRlZXBlbiBldCAtLWRlcHRoIHNvbnQgbXV0dWVsbGVtZW50IGV4Y2x1c2lmcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzg3CiBtc2dpZCAiLS1kZXB0aCBhbmQgLS11bnNoYWxsb3cgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCiBtc2dzdHIgIi0tZGVwdGggZXQgLS11bnNoYWxsb3cgbmUgcGV1dmVudCBwYXMgw6p0cmUgdXRpbGlzw6lzIGVuc2VtYmxlIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU5OQorIzogYnVpbHRpbi9mZXRjaC5jOjE3ODkKIG1zZ2lkICItLXVuc2hhbGxvdyBvbiBhIGNvbXBsZXRlIHJlcG9zaXRvcnkgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS11bnNoYWxsb3cgc3VyIHVuIGTDqXDDtHQgY29tcGxldCBuJ2EgcGFzIGRlIHNlbnMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjE1CisjOiBidWlsdGluL2ZldGNoLmM6MTgwNQogbXNnaWQgImZldGNoIC0tYWxsIGRvZXMgbm90IHRha2UgYSByZXBvc2l0b3J5IGFyZ3VtZW50IgogbXNnc3RyICJmZXRjaCAtLWFsbCBuJ2FjY2VwdGUgcGFzIGQnYXJndW1lbnQgZGUgZMOpcMO0dCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODA3CiBtc2dpZCAiZmV0Y2ggLS1hbGwgZG9lcyBub3QgbWFrZSBzZW5zZSB3aXRoIHJlZnNwZWNzIgogbXNnc3RyICJmZXRjaCAtLWFsbCBuJ2EgcGFzIGRlIHNlbnMgYXZlYyBkZXMgc3DDqWNpZmljYXRpb25zIGRlIHLDqWbDqXJlbmNlIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYyNgorIzogYnVpbHRpbi9mZXRjaC5jOjE4MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZW1vdGUgb3IgcmVtb3RlIGdyb3VwOiAlcyIKIG1zZ3N0ciAiZGlzdGFudCBvdSBncm91cGUgZGlzdGFudCBpbmV4aXN0YW50IDogJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjMzCisjOiBidWlsdGluL2ZldGNoLmM6MTgyMwogbXNnaWQgIkZldGNoaW5nIGEgZ3JvdXAgYW5kIHNwZWNpZnlpbmcgcmVmc3BlY3MgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiIgogIkxhIHLDqWN1cMOpcmF0aW9uIGQndW4gZ3JvdXBlIGV0IGxlcyBzcMOpY2lmaWNhdGlvbnMgZGUgcsOpZsOpcmVuY2UgbidvbnQgcGFzIGRlICIKICJzZW5zIgogCisjOiBidWlsdGluL2ZldGNoLmM6MTg0MQorbXNnaWQgIiIKKyItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdpdGggdGhlIHJlbW90ZSBjb25maWd1cmVkIGluIGV4dGVuc2lvbnMuIgorInBhcnRpYWxjbG9uZSIKK21zZ3N0ciAiIgorIi0tZmlsdGVyIG5lIHBldXQgw6p0cmUgdXRpbGlzw6kgcXUnYXZlYyBsZSBkw6lww7R0IGRpc3RhbnQgY29uZmlndXLDqSBkYW5zICIKKyJleHRlbnNpb25zLnBhcnRpYWxDbG9uZSIKKwogIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6MTgKIG1zZ2lkICIiCiAiZ2l0IGZtdC1tZXJnZS1tc2cgWy1tIDxtZXNzYWdlPl0gWy0tbG9nWz08bj5dIHwgLS1uby1sb2ddIFstLWZpbGUgPGZpbGU+XSIKIG1zZ3N0ciAiIgogImdpdCBmbXQtbWVyZ2UtbXNnIFstbSA8bWVzc2FnZT5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlIDxmaWNoaWVyPl0iCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MgorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcxCiBtc2dpZCAicG9wdWxhdGUgbG9nIHdpdGggYXQgbW9zdCA8bj4gZW50cmllcyBmcm9tIHNob3J0bG9nIgogbXNnc3RyICJwZXVwbGVyIGxlIGpvdXJuYWwgYXZlYyBhdSBwbHVzIDxuPiDDqWzDqW1lbnRzIGRlcHVpcyBsZSBqb3VybmFsIGNvdXJ0IgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzUKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NAogbXNnaWQgImFsaWFzIGZvciAtLWxvZyAoZGVwcmVjYXRlZCkiCiBtc2dzdHIgImFsaWFzIHBvdXIgLS1sb2cgKG9ic29sw6h0ZSkiCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OAorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc3CiBtc2dpZCAidGV4dCIKIG1zZ3N0ciAidGV4dGUiCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc4CiBtc2dpZCAidXNlIDx0ZXh0PiBhcyBzdGFydCBvZiBtZXNzYWdlIgogbXNnc3RyICJ1dGlsaXNlciA8dGV4dGU+IGNvbW1lIGTDqWJ1dCBkZSBtZXNzYWdlIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2ODAKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQogbXNnaWQgImZpbGUgdG8gcmVhZCBmcm9tIgogbXNnc3RyICJmaWNoaWVyIGQnb8O5IGxpcmUiCiAKQEAgLTExMzIxLDcgKzE0MzI0LDcgQEAKIAogIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzoxMQogbXNnaWQgImdpdCBmb3ItZWFjaC1yZWYgWy0tcG9pbnRzLWF0IDxvYmplY3Q+XSIKLW1zZ3N0ciAiZ2l0IGZvci1lYWNoLXJlZiBbLS1wb2ludC1hdCA8b2JqZXQ+XSIKK21zZ3N0ciAiZ2l0IGZvci1lYWNoLXJlZiBbLS1wb2ludHMtYXQgPG9iamV0Pl0iCiAKICM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MTIKIG1zZ2lkICJnaXQgZm9yLWVhY2gtcmVmIFsoLS1tZXJnZWQgfCAtLW5vLW1lcmdlZCkgWzxjb21taXQ+XV0iCkBAIC0xMTM1MSw5MiArMTQzNTQsMjc1IEBACiBtc2dpZCAic2hvdyBvbmx5IDxuPiBtYXRjaGVkIHJlZnMiCiBtc2dzdHIgIm4nYWZmaWNoZXIgcXVlIDxuPiByw6lmw6lyZW5jZXMgY29ycmVzcG9uZGFudCIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOSBidWlsdGluL3RhZy5jOjQyNAorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOSBidWlsdGluL3RhZy5jOjQzOQogbXNnaWQgInJlc3BlY3QgZm9ybWF0IGNvbG9ycyIKIG1zZ3N0ciAicmVzcGVjdGVyIGxlcyBjb3VsZXVycyBkZSBmb3JtYXRhZ2UiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDMKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggcG9pbnRzIGF0IHRoZSBnaXZlbiBvYmplY3QiCiBtc2dzdHIgImFmZmljaGVyIHNldWxlbWVudCBsZXMgcsOpZsOpcmVuY2VzIHBvaW50YW50IHN1ciBsJ29iamV0IgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ1CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ0CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAiYWZmaWNoZXIgc2V1bGVtZW50IGxlcyByw6lmw6lyZW5jZXMgcXVpIHNvbnQgZnVzaW9ubsOpZXMiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDYKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDUKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgdGhhdCBhcmUgbm90IG1lcmdlZCIKIG1zZ3N0ciAiYWZmaWNoZXIgc2V1bGVtZW50IGxlcyByw6lmw6lyZW5jZXMgcXVpIG5lIHNvbnQgcGFzIGZ1c2lvbm7DqWVzIgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ3CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ2CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHdoaWNoIGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAiYWZmaWNoZXIgc2V1bGVtZW50IGxlcyByw6lmw6lyZW5jZXMgcXVpIGNvbnRpZW5uZW50IGxlIGNvbW1pdCIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OAorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NwogbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgImFmZmljaGVyIHNldWxlbWVudCBsZXMgcsOpZsOpcmVuY2VzIHF1aSBuZSBjb250aWVubmVudCBwYXMgbGUgY29tbWl0IgogCi0jOiBidWlsdGluL2ZzY2suYzo1OTgKKyM6IGJ1aWx0aW4vZnNjay5jOjY4IGJ1aWx0aW4vZnNjay5jOjE0NyBidWlsdGluL2ZzY2suYzoxNDgKK21zZ2lkICJ1bmtub3duIgorbXNnc3RyICJpbmNvbm51IgorCisjLiBUUkFOU0xBVE9SUzogZS5nLiBlcnJvciBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMDAgYnVpbHRpbi9mc2NrLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluICVzICVzOiAlcyIKK21zZ3N0ciAiZXJyZXVyIGRhbnMgbCdvYmpldCAlcyAlc8KgOiAlcyIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gd2FybmluZyBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FybmluZyBpbiAlcyAlczogJXMiCittc2dzdHIgImF2ZXJ0aXNzZW1lbnQgZGFucyBsJ29iamV0ICVzICVzwqA6ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzoxNDMgYnVpbHRpbi9mc2NrLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImJyb2tlbiBsaW5rIGZyb20gJTdzICVzIgorbXNnc3RyICJsaWVuIGNhc3PDqSBkYW5zIGwnb2JqZXQgJTdzICVzIgorCisjOiBidWlsdGluL2ZzY2suYzoxNTUKK21zZ2lkICJ3cm9uZyBvYmplY3QgdHlwZSBpbiBsaW5rIgorbXNnc3RyICJ0eXBlIGQnb2JqZXQgaW5jb25udSBkYW5zIGxlIGxpZW4iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE3MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYnJva2VuIGxpbmsgZnJvbSAlN3MgJXNcbiIKKyIgICAgICAgICAgICAgIHRvICU3cyAlcyIKK21zZ3N0ciAiIgorImxpZW4gY2Fzc8OpIGRlcHVpcyAlN3MgJXNcbiIKKyIgICAgICAgICAgICAgdmVycyAlN3MgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjI4MgorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzICVzIgorbXNnc3RyICJvYmpldCAlcyBtYW5xdWFudCAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVhY2hhYmxlICVzICVzIgorbXNnc3RyICJvYmpldCAlcyBpbmF0dGVpZ25hYmxlICVzIgorCisjOiBidWlsdGluL2ZzY2suYzozMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGFuZ2xpbmcgJXMgJXMiCittc2dzdHIgIm9iamV0ICVzIGZhbnTDtG1lICVzIgorCisjOiBidWlsdGluL2ZzY2suYzozMzkKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGxvc3QtZm91bmQiCittc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIGxlIGZpY2hpZXIgbG9zdC1mb3VuZCIKKworIzogYnVpbHRpbi9mc2NrLmM6MzUwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBmaW5pciAnJXMnIgorCisjOiBidWlsdGluL2ZzY2suYzozNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMiCittc2dzdHIgIlbDqXJpZmljYXRpb24gZGUgbCdvYmpldCAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIGNvbm5lY3Rpdml0eSAoJWQgb2JqZWN0cykiCittc2dzdHIgIlbDqXJpZmljYXRpb24gZGUgbGEgY29ubmVjdGl2aXTDqSAoJWQgb2JqZXRzKSIKKworIzogYnVpbHRpbi9mc2NrLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzICVzIgorbXNnc3RyICJWw6lyaWZpY2F0aW9uIGRlIGwnb2JqZXQgJXMgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQyOQorbXNnaWQgImJyb2tlbiBsaW5rcyIKK21zZ3N0ciAibGllbnMgY2Fzc8OpcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgInJvb3QgJXMiCittc2dzdHIgInJhY2luZSAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInRhZ2dlZCAlcyAlcyAoJXMpIGluICVzIgorbXNnc3RyICLDqXRpcXVldGFnZSBkZSBsJ29iamV0ICVzICVzICglcykgZGFucyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgY29ycnVwdCBvciBtaXNzaW5nIgorbXNnc3RyICIlc8KgOiBvYmpldCBjb3Jyb21wdSBvdSBtYW5xdWFudCIKKworIzogYnVpbHRpbi9mc2NrLmM6NTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHJlZmxvZyBlbnRyeSAlcyIKK21zZ3N0ciAiJXPCoDogZW50csOpZSAlcyBkZSBqb3VybmFsIGRlIHLDqWbDqXJlbmNlcyBpbnZhbGlkZSIKKworIzogYnVpbHRpbi9mc2NrLmM6NTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIHJlZmxvZyAlcy0+JXMiCittc2dzdHIgIlbDqXJpZmljYXRpb24gZHUgam91cm5hbCBkZSByw6lmZXJlbmNlcyAlcy0+ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo1NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyICVzIgorbXNnc3RyICIlc8KgOiBwb2ludGV1ciBkZSBzaGExIGludmFsaWRlICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo1NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG5vdCBhIGNvbW1pdCIKK21zZ3N0ciAibCdvYmpldCAlcyBuJ2VzdCBwYXMgdW4gY29tbWl0IgorCisjOiBidWlsdGluL2ZzY2suYzo2MDkKK21zZ2lkICJub3RpY2U6IE5vIGRlZmF1bHQgcmVmZXJlbmNlcyIKK21zZ3N0ciAiTm90ZcKgOiBwYXMgZGUgcsOpZsOpcmVuY2UgcGFyIGTDqWZhdXQiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYyNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvcnJ1cHQgb3IgbWlzc2luZzogJXMiCittc2dzdHIgIiVzwqA6IG9iamV0IGNvcnJvbXB1IG91IG1hbnF1YW50wqA6ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3VsZCBub3QgYmUgcGFyc2VkOiAlcyIKK21zZ3N0ciAiJXPCoDogaW1wb3NzaWJsZSBkJ2FuYWx5c2VywqA6ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo2NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHNoYTEgZmlsZTogJXMiCittc2dzdHIgIm1hdXZhaXMgZmljaGllciBkZSBzaGExwqA6ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo2NzIKK21zZ2lkICJDaGVja2luZyBvYmplY3QgZGlyZWN0b3J5IgorbXNnc3RyICJWw6lyaWZpY2F0aW9uIGR1IHLDqXBlcnRvaXJlIGQnb2JqZXQiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY3NQogbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcmllcyIKIG1zZ3N0ciAiVsOpcmlmaWNhdGlvbiBkZXMgcsOpcGVydG9pcmVzIGQnb2JqZXQiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjY5MworIzogYnVpbHRpbi9mc2NrLmM6NjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzIGxpbmsiCittc2dzdHIgIlbDqXJpZmljYXRpb24gZHUgbGllbiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6Njk1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkICVzIgorbXNnc3RyICIlcyBpbnZhbGlkZSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBvaW50cyB0byBzb21ldGhpbmcgc3RyYW5nZSAoJXMpIgorbXNnc3RyICIlcyBwb2ludGUgc3VyIHF1ZWxxdWUgY2hvc2UgYml6YXJyZSAoJXMpIgorCisjOiBidWlsdGluL2ZzY2suYzo3MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRldGFjaGVkIEhFQUQgcG9pbnRzIGF0IG5vdGhpbmciCittc2dzdHIgIiVzwqA6IGxhIEhFQUQgZMOpdGFjaMOpZSBuZSBwb2ludGUgc3VyIHJpZW4iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJub3RpY2U6ICVzIHBvaW50cyB0byBhbiB1bmJvcm4gYnJhbmNoICglcykiCittc2dzdHIgIm5vdGXCoDogJXMgcG9pbnRlIHN1ciB1bmUgYnJhbmNoZSBub24tbsOpZSAoJXMpIgorCisjOiBidWlsdGluL2ZzY2suYzo3MjQKK21zZ2lkICJDaGVja2luZyBjYWNoZSB0cmVlIgorbXNnc3RyICJWw6lyaWZpY2F0aW9uIGRlIGwnYXJicmUgY2FjaGUiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcyOQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCBzaGExIHBvaW50ZXIgaW4gY2FjaGUtdHJlZSIKK21zZ3N0ciAiJXPCoDogcG9pbnRlciBzaGExIGludmFsaWRlIGRhbnMgbCdhcmJyZSBkZSBjYWNoZSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzM4Cittc2dpZCAibm9uLXRyZWUgaW4gY2FjaGUtdHJlZSIKK21zZ3N0ciAibm9uLWFyYnJlIGRhbnMgbCdhcmJyZSBkZSBjYWNoZSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzY5CiBtc2dpZCAiZ2l0IGZzY2sgWzxvcHRpb25zPl0gWzxvYmplY3Q+Li4uXSIKIG1zZ3N0ciAiZ2l0IGZzY2sgWzxvcHRpb25zPl0gWzxvYmpldD4uLi5dIgogCi0jOiBidWlsdGluL2ZzY2suYzo2OTkKKyM6IGJ1aWx0aW4vZnNjay5jOjc3NQogbXNnaWQgInNob3cgdW5yZWFjaGFibGUgb2JqZWN0cyIKIG1zZ3N0ciAiYWZmaWNoZXIgbGVzIG9iamV0cyBpbmFjY2Vzc2libGVzIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDAKKyM6IGJ1aWx0aW4vZnNjay5jOjc3NgogbXNnaWQgInNob3cgZGFuZ2xpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiYWZmaWNoZXIgbGVzIG9iamV0cyBlbiBzdXNwZW5zIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDEKKyM6IGJ1aWx0aW4vZnNjay5jOjc3NwogbXNnaWQgInJlcG9ydCB0YWdzIgogbXNnc3RyICJhZmZpY2hlciBsZXMgw6l0aXF1ZXR0ZXMiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMgorIzogYnVpbHRpbi9mc2NrLmM6Nzc4CiBtc2dpZCAicmVwb3J0IHJvb3Qgbm9kZXMiCiBtc2dzdHIgInNpZ25hbGVyIGxlcyBuxZN1ZHMgcmFjaW5lcyIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzAzCisjOiBidWlsdGluL2ZzY2suYzo3NzkKIG1zZ2lkICJtYWtlIGluZGV4IG9iamVjdHMgaGVhZCBub2RlcyIKIG1zZ3N0ciAiY29uc2lkw6lyZXIgbGVzIG9iamV0cyBkZSBsJ2luZGV4IGNvbW1lIG7Fk3VkcyB0w6p0ZSIKIAogIyB0cmFuc2xhdGVkIGZyb20gbWFuIHBhZ2UKLSM6IGJ1aWx0aW4vZnNjay5jOjcwNAorIzogYnVpbHRpbi9mc2NrLmM6NzgwCiBtc2dpZCAibWFrZSByZWZsb2dzIGhlYWQgbm9kZXMgKGRlZmF1bHQpIgogbXNnc3RyICJjb25zaWTDqXJlciBsZXMgcmVmbG9ncyBjb21tZSBuxZN1ZHMgdMOqdGUgKHBhciBkw6lmYXV0KSIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzA1CisjOiBidWlsdGluL2ZzY2suYzo3ODEKIG1zZ2lkICJhbHNvIGNvbnNpZGVyIHBhY2tzIGFuZCBhbHRlcm5hdGUgb2JqZWN0cyIKIG1zZ3N0ciAiaW5zcGVjdGVyIGF1c3NpIGxlcyBvYmpldHMgcGFjayBldCBhbHRlcm5hdGlmcyIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzA2CisjOiBidWlsdGluL2ZzY2suYzo3ODIKIG1zZ2lkICJjaGVjayBvbmx5IGNvbm5lY3Rpdml0eSIKIG1zZ3N0ciAibmUgdsOpcmlmaWVyIHF1ZSBsYSBjb25uZWN0aXZpdMOpIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDcKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MwogbXNnaWQgImVuYWJsZSBtb3JlIHN0cmljdCBjaGVja2luZyIKIG1zZ3N0ciAiYWN0aXZlciB1bmUgdsOpcmlmaWNhdGlvbiBwbHVzIHN0cmljdCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzA5CisjOiBidWlsdGluL2ZzY2suYzo3ODUKIG1zZ2lkICJ3cml0ZSBkYW5nbGluZyBvYmplY3RzIGluIC5naXQvbG9zdC1mb3VuZCIKIG1zZ3N0ciAiw6ljcmlyZSBsZXMgb2JqZXRzIGVuIHN1c3BlbnMgZGFucyAuZ2l0L2xvc3QtZm91bmQiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcxMCBidWlsdGluL3BydW5lLmM6MTEwCisjOiBidWlsdGluL2ZzY2suYzo3ODYgYnVpbHRpbi9wcnVuZS5jOjEzMgogbXNnaWQgInNob3cgcHJvZ3Jlc3MiCiBtc2dzdHIgImFmZmljaGVyIGxhIHByb2dyZXNzaW9uIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MTEKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NwogbXNnaWQgInNob3cgdmVyYm9zZSBuYW1lcyBmb3IgcmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgImFmZmljaGVyIGxlcyBub21zIMOpdGVuZHVzIHBvdXIgbGVzIG9iamV0cyBpbmFjY2Vzc2libGVzIgogCi0jOiBidWlsdGluL2ZzY2suYzo3NzYKKyM6IGJ1aWx0aW4vZnNjay5jOjg0NiBidWlsdGluL2luZGV4LXBhY2suYzoyMjUKIG1zZ2lkICJDaGVja2luZyBvYmplY3RzIgogbXNnc3RyICJWw6lyaWZpY2F0aW9uIGRlcyBvYmpldHMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzozNAorIzogYnVpbHRpbi9mc2NrLmM6ODc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgbWlzc2luZyIKK21zZ3N0ciAiJXPCoDogb2JqZXQgbWFucXVhbnQiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjg4NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhcmFtZXRlcjogZXhwZWN0ZWQgc2hhMSwgZ290ICclcyciCittc2dzdHIgInBhcmFtw6h0cmUgaW52YWxpZGXCoDogc2hhLTEgYXR0ZW5kdSwgJyVzJyB0cm91dsOpIgorCisjOiBidWlsdGluL2djLmM6MzUKIG1zZ2lkICJnaXQgZ2MgWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCBnYyBbPG9wdGlvbnM+XSIKIApAQCAtMTE0NDUsMTcgKzE0NjMxLDIyIEBACiBtc2dpZCAiRmFpbGVkIHRvIGZzdGF0ICVzOiAlcyIKIG1zZ3N0ciAiw4ljaGVjIGR1IHN0YXQgZGUgJXPCoDogJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo0NjEgYnVpbHRpbi9pbml0LWRiLmM6NTUKKyM6IGJ1aWx0aW4vZ2MuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlICclcycgdmFsdWUgJyVzJyIKK21zZ3N0ciAiw6ljaGVjIGRlIGwnYW5hbHlzZSBkZSAnJXMnIHZhbGV1ciAnJXMnIgorCisjOiBidWlsdGluL2djLmM6NDc1IGJ1aWx0aW4vaW5pdC1kYi5jOjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGF0ICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgZmFpcmUgdW4gc3RhdCBkZSAnJXMnIgogCi0jOiBidWlsdGluL2djLmM6NDcwIGJ1aWx0aW4vbm90ZXMuYzoyNDAgYnVpbHRpbi90YWcuYzo1MTAKKyM6IGJ1aWx0aW4vZ2MuYzo0ODQgYnVpbHRpbi9ub3Rlcy5jOjI0MCBidWlsdGluL3RhZy5jOjUyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgJyVzJyIKIAotIzogYnVpbHRpbi9nYy5jOjQ3NworIzogYnVpbHRpbi9nYy5jOjQ5MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGxhc3QgZ2MgcnVuIHJlcG9ydGVkIHRoZSBmb2xsb3dpbmcuIFBsZWFzZSBjb3JyZWN0IHRoZSByb290IGNhdXNlXG4iCkBAIC0xMTQ3MSw1NiArMTQ2NjIsNTYgQEAKICJcbiIKICIlcyIKIAotIzogYnVpbHRpbi9nYy5jOjUxOQorIzogYnVpbHRpbi9nYy5jOjUzOQogbXNnaWQgInBydW5lIHVucmVmZXJlbmNlZCBvYmplY3RzIgogbXNnc3RyICLDqWxpbWluZXIgbGVzIG9iamV0cyBub24gcsOpZsOpcmVuY8OpcyIKIAotIzogYnVpbHRpbi9nYy5jOjUyMQorIzogYnVpbHRpbi9nYy5jOjU0MQogbXNnaWQgImJlIG1vcmUgdGhvcm91Z2ggKGluY3JlYXNlZCBydW50aW1lKSIKIG1zZ3N0ciAiw6p0cmUgcGx1cyBjb25zY2llbmNpZXV4IChkdXLDqWUgZGUgdHJhaXRlbWVudCBhbGxvbmfDqWUpIgogCi0jOiBidWlsdGluL2djLmM6NTIyCisjOiBidWlsdGluL2djLmM6NTQyCiBtc2dpZCAiZW5hYmxlIGF1dG8tZ2MgbW9kZSIKIG1zZ3N0ciAiYWN0aXZlciBsZSBtb2RlIGF1dG8tZ2MiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1MjUKKyM6IGJ1aWx0aW4vZ2MuYzo1NDUKIG1zZ2lkICJmb3JjZSBydW5uaW5nIGdjIGV2ZW4gaWYgdGhlcmUgbWF5IGJlIGFub3RoZXIgZ2MgcnVubmluZyIKIG1zZ3N0ciAiIgogImZvcmNlciBsZSBsYW5jZW1lbnQgZHUgcmFtYXNzZS1taWV0dGVzIG3Dqm1lIHNpIHVuIGF1dHJlIHJhbWFzc2UtbWlldHRlcyAiCiAidG91cm5lIGTDqWrDoCIKIAotIzogYnVpbHRpbi9nYy5jOjUyOAorIzogYnVpbHRpbi9nYy5jOjU0OAogbXNnaWQgInJlcGFjayBhbGwgb3RoZXIgcGFja3MgZXhjZXB0IHRoZSBsYXJnZXN0IHBhY2siCiBtc2dzdHIgInJlY29tcGFjdGVyIHRvdXMgbGVzIGF1dHJlcyBwYXF1ZXRzIGV4Y2VwdMOpIGxlIHBsdXMgZ3JvcyBwYXF1ZXQiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NDUKKyM6IGJ1aWx0aW4vZ2MuYzo1NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHBhcnNlIGdjLmxvZ2V4cGlyeSB2YWx1ZSAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGdjLmxvZ2V4cGlyeSAlcyIKIAotIzogYnVpbHRpbi9nYy5jOjU1NgorIzogYnVpbHRpbi9nYy5jOjU3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcGFyc2UgcHJ1bmUgZXhwaXJ5IHZhbHVlICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGEgdmFsZXVyIGQnZXhwaXJhdGlvbiBkJ8OpbGFnYWdlICVzIgogCi0jOiBidWlsdGluL2djLmM6NTc2CisjOiBidWlsdGluL2djLmM6NTk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG8gcGFja2luZyB0aGUgcmVwb3NpdG9yeSBpbiBiYWNrZ3JvdW5kIGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgogbXNnc3RyICIiCiAiQ29tcHJlc3Npb24gYXV0b21hdGlxdWUgZHUgZMOpcMO0dCBlbiB0w6JjaGUgZGUgZm9uZCBwb3VyIG9wdGltaXNlciBsZXMgIgogInBlcmZvcm1hbmNlcy5cbiIKIAotIzogYnVpbHRpbi9nYy5jOjU3OAorIzogYnVpbHRpbi9nYy5jOjU5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvIHBhY2tpbmcgdGhlIHJlcG9zaXRvcnkgZm9yIG9wdGltdW0gcGVyZm9ybWFuY2UuXG4iCiBtc2dzdHIgIkNvbXByZXNzaW9uIGR1IGTDqXDDtHQgcG91ciBvcHRpbWlzZXIgbGVzIHBlcmZvcm1hbmNlcy5cbiIKIAotIzogYnVpbHRpbi9nYy5jOjU3OQorIzogYnVpbHRpbi9nYy5jOjU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZWUgXCJnaXQgaGVscCBnY1wiIGZvciBtYW51YWwgaG91c2VrZWVwaW5nLlxuIgogbXNnc3RyICJWb2lyIFwiZ2l0IGhlbHAgZ2NcIiBwb3VyIHRvdXRlIGluZm9ybWF0aW9uIHN1ciBsZSBuZXR0b3lhZ2UgbWFudWVsLlxuIgogCi0jOiBidWlsdGluL2djLmM6NjE5CisjOiBidWlsdGluL2djLmM6NjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJnYyBpcyBhbHJlYWR5IHJ1bm5pbmcgb24gbWFjaGluZSAnJXMnIHBpZCAlPFBSSXVNQVg+ICh1c2UgLS1mb3JjZSBpZiBub3QpIgpAQCAtMTE1MjgsMjMgKzE0NzE5LDIzIEBACiAidW4gcmFtYXNzZS1taWV0dGVzIGVzdCBkw6lqw6AgZW4gY291cnMgc3VyIGxhIG1hY2hpbmUgJyVzJyBwaWQgJTxQUkl1TUFYPiAiCiAiKHV0aWxpc2V6IC0tZm9yY2Ugc2kgY2Ugbidlc3QgcGFzIGxlIGNhcykiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo2NzAKKyM6IGJ1aWx0aW4vZ2MuYzo2OTQKIG1zZ2lkICIiCiAiVGhlcmUgYXJlIHRvbyBtYW55IHVucmVhY2hhYmxlIGxvb3NlIG9iamVjdHM7IHJ1biAnZ2l0IHBydW5lJyB0byByZW1vdmUgdGhlbS4iCiBtc2dzdHIgIiIKICJJbCB5IGEgdHJvcCBkJ29iamV0cyBzZXVscyBpbmFjY2Vzc2libGVzIDsgbGFuY2V6ICdnaXQgcHJ1bmUnIHBvdXIgbGVzICIKICJzdXBwcmltZXIuIgogCi0jOiBidWlsdGluL2dyZXAuYzoyOAorIzogYnVpbHRpbi9ncmVwLmM6MzAKIG1zZ2lkICJnaXQgZ3JlcCBbPG9wdGlvbnM+XSBbLWVdIDxwYXR0ZXJuPiBbPHJldj4uLi5dIFtbLS1dIDxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBncmVwIFs8b3B0aW9ucz5dIFstZV0gPG1vdGlmPiBbPHLDqXZpc2lvbj4uLi5dIFtbLS1dIDxjaGVtaW4+Li4uXSIKIAotIzogYnVpbHRpbi9ncmVwLmM6MjI0CisjOiBidWlsdGluL2dyZXAuYzoyMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ3JlcDogZmFpbGVkIHRvIGNyZWF0ZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJncmVwIDogw6ljaGVjIGRlIGNyw6lhdGlvbiBkdSBmaWw6ICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzoyNzgKKyM6IGJ1aWx0aW4vZ3JlcC5jOjI3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG51bWJlciBvZiB0aHJlYWRzIHNwZWNpZmllZCAoJWQpIGZvciAlcyIKIG1zZ3N0ciAibm9tYnJlIGRlIGZpbHMgc3DDqWNpZmnDqSBpbnZhbGlkZSAoJWQpIHBvdXIgJXMiCkBAIC0xMTU1MywyNzAgKzE0NzQ0LDI3MCBAQAogIy4gdmFyaWFibGUgZm9yIHR3ZWFraW5nIHRocmVhZHMsIGN1cnJlbnRseQogIy4gZ3JlcC50aHJlYWRzCiAjLgotIzogYnVpbHRpbi9ncmVwLmM6Mjg2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MDYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY5NwotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzE5CisjOiBidWlsdGluL2dyZXAuYzoyODcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzOCBidWlsdGluL2luZGV4LXBhY2suYzoxNzMxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gdGhyZWFkcyBzdXBwb3J0LCBpZ25vcmluZyAlcyIKIG1zZ3N0ciAicGFzIGRlIHN1cHBvcnQgZGVzIGZpbHMsIGlnbm9yZSAlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6NDU4IGJ1aWx0aW4vZ3JlcC5jOjU3OSBidWlsdGluL2dyZXAuYzo2MjAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjQ1MyBidWlsdGluL2dyZXAuYzo1NzggYnVpbHRpbi9ncmVwLmM6NjE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHRyZWUgKCVzKSIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGwnYXJicmUgKCVzKSIKIAotIzogYnVpbHRpbi9ncmVwLmM6NjM1CisjOiBidWlsdGluL2dyZXAuYzo2MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdyZXAgZnJvbSBvYmplY3Qgb2YgdHlwZSAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBmYWlyZSB1biBncmVwIHN1ciB1biBvYmpldCBkZSB0eXBlICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo3MDEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjcwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJzd2l0Y2ggYCVjJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgotbXNnc3RyICJsJ29wdGlvbiAnJWMnIGF0dGVuZCB1biB2YWxldXIgbnVtw6lyaXF1ZSIKK21zZ3N0ciAibCdvcHRpb24gJyVjJyBhdHRlbmQgdW5lIHZhbGV1ciBudW3DqXJpcXVlIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwMwogbXNnaWQgInNlYXJjaCBpbiBpbmRleCBpbnN0ZWFkIG9mIGluIHRoZSB3b3JrIHRyZWUiCiBtc2dzdHIgInJlY2hlcmNoZXIgZGFucyBsJ2luZGV4IHBsdXTDtHQgcXVlIGRhbnMgbGEgY29waWUgZGUgdHJhdmFpbCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODAyCisjOiBidWlsdGluL2dyZXAuYzo4MDUKIG1zZ2lkICJmaW5kIGluIGNvbnRlbnRzIG5vdCBtYW5hZ2VkIGJ5IGdpdCIKIG1zZ3N0ciAicmVjaGVyY2hlciBkYW5zIGxlcyBjb250ZW51cyBub24gZ8OpcsOpcyBwYXIgZ2l0IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwNwogbXNnaWQgInNlYXJjaCBpbiBib3RoIHRyYWNrZWQgYW5kIHVudHJhY2tlZCBmaWxlcyIKIG1zZ3N0ciAicmVjaGVyY2hlciBkYW5zIGxlcyBmaWNoaWVycyBzdWl2aXMgZXQgbm9uLXN1aXZpcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODA2CisjOiBidWlsdGluL2dyZXAuYzo4MDkKIG1zZ2lkICJpZ25vcmUgZmlsZXMgc3BlY2lmaWVkIHZpYSAnLmdpdGlnbm9yZSciCiBtc2dzdHIgImlnbm9yZXIgbGVzIGZpY2hpZXJzIHNww6ljaWZpw6lzIHZpYSAnLmdpdGlnbm9yZSciCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwOAorIzogYnVpbHRpbi9ncmVwLmM6ODExCiBtc2dpZCAicmVjdXJzaXZlbHkgc2VhcmNoIGluIGVhY2ggc3VibW9kdWxlIgogbXNnc3RyICJyZWNoZXJjaGVyIHLDqWN1cnNpdmVtZW50IGRhbnMgY2hhcXVlIHNvdXMtbW9kdWxlIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxNAogbXNnaWQgInNob3cgbm9uLW1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICJhZmZpY2hlciBsZXMgbGlnbmVzIHF1aSBuZSBjb3JyZXNwb25kZW50IHBhcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODEzCisjOiBidWlsdGluL2dyZXAuYzo4MTYKIG1zZ2lkICJjYXNlIGluc2Vuc2l0aXZlIG1hdGNoaW5nIgogbXNnc3RyICJjb3JyZXNwb25kYW5jZSBpbnNlbnNpYmxlIMOgIGxhIGNhc3NlIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxOAogbXNnaWQgIm1hdGNoIHBhdHRlcm5zIG9ubHkgYXQgd29yZCBib3VuZGFyaWVzIgogbXNnc3RyICJyZWNoZXJjaGVyIGxlcyBtb3RpZnMgYXV4IHPDqXBhcmF0ZXVycyBkZSBtb3RzIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyMAogbXNnaWQgInByb2Nlc3MgYmluYXJ5IGZpbGVzIGFzIHRleHQiCiBtc2dzdHIgInRyYWl0ZXIgbGVzIGZpY2hpZXJzIGJpbmFpcmVzIGNvbW1lIHRleHRlIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyMgogbXNnaWQgImRvbid0IG1hdGNoIHBhdHRlcm5zIGluIGJpbmFyeSBmaWxlcyIKIG1zZ3N0ciAibmUgcGFzIGNoZXJjaGVyIGxlcyBtb3RpZnMgZGFucyBsZXMgZmljaGllcnMgYmluYWlyZXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgyMgorIzogYnVpbHRpbi9ncmVwLmM6ODI1CiBtc2dpZCAicHJvY2VzcyBiaW5hcnkgZmlsZXMgd2l0aCB0ZXh0Y29udiBmaWx0ZXJzIgogbXNnc3RyICJ0cmFpdGVyIGxlcyBmaWNoaWVycyBiaW5haXJlcyBhdmVjIGxlcyBmaWx0cmVzIHRleHRjb252IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyNwogbXNnaWQgInNlYXJjaCBpbiBzdWJkaXJlY3RvcmllcyAoZGVmYXVsdCkiCiBtc2dzdHIgInJlY2hlcmNoZXIgZGFucyBsZXMgc291cy1yw6lwZXJ0b2lyZXMgKGTDqWZhdXQpIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MjYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyOQogbXNnaWQgImRlc2NlbmQgYXQgbW9zdCA8ZGVwdGg+IGxldmVscyIKIG1zZ3N0ciAiZGVzY2VuZHJlIGF1IHBsdXMgZGUgPHByb2ZvbmRldXI+IGRhbnMgbCdhcmJvcmVzY2VuY2UiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzMAorIzogYnVpbHRpbi9ncmVwLmM6ODMzCiBtc2dpZCAidXNlIGV4dGVuZGVkIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCiBtc2dzdHIgInV0aWxpc2VyIGRlcyBleHByZXNzaW9ucyByw6lndWxpw6hyZXMgw6l0ZW5kdWVzIFBPU0lYIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MzMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgzNgogbXNnaWQgInVzZSBiYXNpYyBQT1NJWCByZWd1bGFyIGV4cHJlc3Npb25zIChkZWZhdWx0KSIKIG1zZ3N0ciAidXRpbGlzZXIgZGVzIGV4cHJlc3Npb25zIHLDqWd1bGnDqHJlcyBiYXNpcXVlcyBQT1NJWCAocGFyIGTDqWZhdXQpIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MzYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgzOQogbXNnaWQgImludGVycHJldCBwYXR0ZXJucyBhcyBmaXhlZCBzdHJpbmdzIgogbXNnc3RyICJpbnRlcnByw6l0ZXIgbGVzIG1vdGlmcyBjb21tZSBkZSBjaGHDrm5lcyBmaXhlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODM5CisjOiBidWlsdGluL2dyZXAuYzo4NDIKIG1zZ2lkICJ1c2UgUGVybC1jb21wYXRpYmxlIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCiBtc2dzdHIgInV0aWxpc2VyIGRlcyBleHByZXNzaW9ucyByw6lndWxpw6hyZXMgY29tcGF0aWJsZXMgYXZlYyBQZXJsIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NQogbXNnaWQgInNob3cgbGluZSBudW1iZXJzIgogbXNnc3RyICJhZmZpY2hlciBsZXMgbnVtw6lyb3MgZGUgbGlnbmUiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0MworIzogYnVpbHRpbi9ncmVwLmM6ODQ2CiBtc2dpZCAic2hvdyBjb2x1bW4gbnVtYmVyIG9mIGZpcnN0IG1hdGNoIgogbXNnc3RyICJhZmZpY2hlciBsZSBudW3DqXJvIGRlIGNvbG9ubmUgZGUgbGEgcHJlbWnDqHJlIGNvcnJlc3BvbmRhbmNlIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NwogbXNnaWQgImRvbid0IHNob3cgZmlsZW5hbWVzIgogbXNnc3RyICJuZSBwYXMgcGFzIGFmZmljaGVyIGxlcyBub21zIGRlIGZpY2hpZXIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0NQorIzogYnVpbHRpbi9ncmVwLmM6ODQ4CiBtc2dpZCAic2hvdyBmaWxlbmFtZXMiCiBtc2dzdHIgImFmZmljaGVyIGxlcyBub21zIGRlIGZpY2hpZXIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0NworIzogYnVpbHRpbi9ncmVwLmM6ODUwCiBtc2dpZCAic2hvdyBmaWxlbmFtZXMgcmVsYXRpdmUgdG8gdG9wIGRpcmVjdG9yeSIKIG1zZ3N0ciAiYWZmaWNoZXIgbGVzIG5vbXMgZGUgZmljaGllcnMgcmVsYXRpdmVtZW50IGF1IHLDqXBlcnRvaXJlIGRlIGJhc2UiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0OQorIzogYnVpbHRpbi9ncmVwLmM6ODUyCiBtc2dpZCAic2hvdyBvbmx5IGZpbGVuYW1lcyBpbnN0ZWFkIG9mIG1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICJuJ2FmZmljaGVyIHF1ZSBsZXMgbm9tcyBkZSBmaWNoaWVycyBhdSBsaWV1IGRlcyBsaWduZXMgY29ycmVzcG9uZGFudCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODUxCisjOiBidWlsdGluL2dyZXAuYzo4NTQKIG1zZ2lkICJzeW5vbnltIGZvciAtLWZpbGVzLXdpdGgtbWF0Y2hlcyIKIG1zZ3N0ciAic3lub255bWUgcG91ciAtLWZpbGVzLXdpdGgtbWF0Y2hlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODU0CisjOiBidWlsdGluL2dyZXAuYzo4NTcKIG1zZ2lkICJzaG93IG9ubHkgdGhlIG5hbWVzIG9mIGZpbGVzIHdpdGhvdXQgbWF0Y2giCiBtc2dzdHIgIm4nYWZmaWNoZXIgcXVlIGxlcyBub21zIGRlcyBmaWNoaWVycyBzYW5zIGNvcnJlc3BvbmRhbmNlIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NTYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1OQogbXNnaWQgInByaW50IE5VTCBhZnRlciBmaWxlbmFtZXMiCiBtc2dzdHIgImltcHJpbWVyIHVuZSBjYXJhY3TDqHJlIE5VTCBhcHLDqHMgbGUgbm9tcyBkZSBmaWNoaWVyIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NTkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2MgogbXNnaWQgInNob3cgb25seSBtYXRjaGluZyBwYXJ0cyBvZiBhIGxpbmUiCiBtc2dzdHIgIm4nYWZmaWNoZXIgcXVlIGxlcyBwYXJ0aWVzIGNvcnJlc3BvbmRhbnRlcyBkJ3VuZSBsaWduZSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODYxCisjOiBidWlsdGluL2dyZXAuYzo4NjQKIG1zZ2lkICJzaG93IHRoZSBudW1iZXIgb2YgbWF0Y2hlcyBpbnN0ZWFkIG9mIG1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICJhZmZpY2hlciBsZSBub21icmUgZGUgY29ycmVzcG9uZGFuY2VzIGF1IGxpZXUgZGVzIGxpZ25lcyBjb3JyZXNwb25kYW50IgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2NQogbXNnaWQgImhpZ2hsaWdodCBtYXRjaGVzIgogbXNnc3RyICJtZXR0cmUgZW4gw6l2aWRlbmNlIGxlcyBjb3JyZXNwb25kYW5jZXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2NAorIzogYnVpbHRpbi9ncmVwLmM6ODY3CiBtc2dpZCAicHJpbnQgZW1wdHkgbGluZSBiZXR3ZWVuIG1hdGNoZXMgZnJvbSBkaWZmZXJlbnQgZmlsZXMiCiBtc2dzdHIgIiIKICJpbXByaW1lciB1bmUgbGlnbmUgdmlkZSBlbnRyZSBsZXMgY29ycmVzcG9uZGFuY2VzIGRlIGZpY2hpZXJzIGRpZmbDqXJlbnRzIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2OQogbXNnaWQgInNob3cgZmlsZW5hbWUgb25seSBvbmNlIGFib3ZlIG1hdGNoZXMgZnJvbSBzYW1lIGZpbGUiCiBtc2dzdHIgIiIKICJhZmZpY2hlciBsZSBub20gZGUgZmljaGllciB1bmUgZm9pcyBhdSBkZXNzdXMgZGVzIGNvcnJlc3BvbmRhbmNlcyBkdSBtw6ptZSAiCiAiZmljaGllciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODY5CisjOiBidWlsdGluL2dyZXAuYzo4NzIKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGJlZm9yZSBhbmQgYWZ0ZXIgbWF0Y2hlcyIKIG1zZ3N0ciAiYWZmaWNoZXIgPG4+IGxpZ25lcyBkZSBjb250ZXh0ZSBhdmFudCBldCBhcHLDqHMgbGVzIGNvcnJlc3BvbmRhbmNlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODcyCisjOiBidWlsdGluL2dyZXAuYzo4NzUKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGJlZm9yZSBtYXRjaGVzIgogbXNnc3RyICJhZmZpY2hlciA8bj4gbGlnbmVzIGRlIGNvbnRleHRlIGF2YW50IGxlcyBjb3JyZXNwb25kYW5jZXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NAorIzogYnVpbHRpbi9ncmVwLmM6ODc3CiBtc2dpZCAic2hvdyA8bj4gY29udGV4dCBsaW5lcyBhZnRlciBtYXRjaGVzIgogbXNnc3RyICJhZmZpY2hlciA8bj4gbGlnbmVzIGRlIGNvbnRleHRlIGFwcsOocyBsZXMgY29ycmVzcG9uZGFuY2VzIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3OQogbXNnaWQgInVzZSA8bj4gd29ya2VyIHRocmVhZHMiCiBtc2dzdHIgInV0aWxpc2VyIDxuPiBmaWxzIGRlIHRyYXZhaWwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NworIzogYnVpbHRpbi9ncmVwLmM6ODgwCiBtc2dpZCAic2hvcnRjdXQgZm9yIC1DIE5VTSIKIG1zZ3N0ciAicmFjY291cmNpIHBvdXIgLUMgTlVNIgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4MwogbXNnaWQgInNob3cgYSBsaW5lIHdpdGggdGhlIGZ1bmN0aW9uIG5hbWUgYmVmb3JlIG1hdGNoZXMiCiBtc2dzdHIgIiIKICJhZmZpY2hlciB1bmUgbGlnbmUgYXZlYyBsZSBub20gZGUgbGEgZm9uY3Rpb24gYXZhbnQgbGVzIGNvcnJlc3BvbmRhbmNlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODgyCisjOiBidWlsdGluL2dyZXAuYzo4ODUKIG1zZ2lkICJzaG93IHRoZSBzdXJyb3VuZGluZyBmdW5jdGlvbiIKIG1zZ3N0ciAiYWZmaWNoZXIgbGEgZm9uY3Rpb24gY29udGVuYW50ZSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODg1CisjOiBidWlsdGluL2dyZXAuYzo4ODgKIG1zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gZmlsZSIKIG1zZ3N0ciAibGlyZSBsZXMgbW90aWZzIGRlcHVpcyBmaWNoaWVyIgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5MAogbXNnaWQgIm1hdGNoIDxwYXR0ZXJuPiIKIG1zZ3N0ciAicmVjaGVyY2hlciA8bW90aWY+IgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5MgogbXNnaWQgImNvbWJpbmUgcGF0dGVybnMgc3BlY2lmaWVkIHdpdGggLWUiCiBtc2dzdHIgImNvbWJpbmVyIGxlcyBtb3RpZnMgc3DDqWNpZmnDqXMgcGFyIC1lIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwNAogbXNnaWQgImluZGljYXRlIGhpdCB3aXRoIGV4aXQgc3RhdHVzIHdpdGhvdXQgb3V0cHV0IgogbXNnc3RyICIiCiAiaW5kaXF1ZXIgZGVzIGNvcnJlc3BvbmRhbmNlcyBhdmVjIGxlIGNvZGUgZGUgc29ydGllIG1haXMgc2FucyByaWVuIGFmZmljaGVyIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwNgogbXNnaWQgInNob3cgb25seSBtYXRjaGVzIGZyb20gZmlsZXMgdGhhdCBtYXRjaCBhbGwgcGF0dGVybnMiCiBtc2dzdHIgIiIKICJuJ2FmZmljaGVyIHF1ZSBsZXMgY29ycmVzcG9uZGFuY2VzIGRlIGZpY2hpZXJzIHF1aSBjb3JyZXNwb25kZW50IMOgIHRvdXMgbGVzICIKICJtb3RpZnMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwNQorIzogYnVpbHRpbi9ncmVwLmM6OTA4CiBtc2dpZCAic2hvdyBwYXJzZSB0cmVlIGZvciBncmVwIGV4cHJlc3Npb24iCiBtc2dzdHIgImFmZmljaGVyIGwnYXJicmUgZCdhbmFseXNlIHBvdXIgbGUgbW90aWYgZ3JlcCIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTA5CisjOiBidWlsdGluL2dyZXAuYzo5MTIKIG1zZ2lkICJwYWdlciIKIG1zZ3N0ciAicGFnaW5ldXIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwOQorIzogYnVpbHRpbi9ncmVwLmM6OTEyCiBtc2dpZCAic2hvdyBtYXRjaGluZyBmaWxlcyBpbiB0aGUgcGFnZXIiCiBtc2dzdHIgImFmZmljaGVyIGxlcyBmaWNoaWVycyBjb3JyZXNwb25kYW50IGRhbnMgbGUgcGFnaW5ldXIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkxMworIzogYnVpbHRpbi9ncmVwLmM6OTE2CiBtc2dpZCAiYWxsb3cgY2FsbGluZyBvZiBncmVwKDEpIChpZ25vcmVkIGJ5IHRoaXMgYnVpbGQpIgogbXNnc3RyICJwZXJtZXR0cmUgbCdhcHBlbCBkZSBncmVwKDEpIChpZ25vcsOpIHBhciBjZSBidWlsZCkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjk3NworIzogYnVpbHRpbi9ncmVwLmM6OTgzCiBtc2dpZCAibm8gcGF0dGVybiBnaXZlbiIKIG1zZ3N0ciAiYXVjdW4gbW90aWYgZm91cm5pIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDEzCisjOiBidWlsdGluL2dyZXAuYzoxMDE5CiBtc2dpZCAiLS1uby1pbmRleCBvciAtLXVudHJhY2tlZCBjYW5ub3QgYmUgdXNlZCB3aXRoIHJldnMiCiBtc2dzdHIgIiIKICItLW5vLWluZGV4IG91IC0tdW50cmFja2VkIG5lIHBldXZlbnQgcGFzIMOqdHJlIHV0aWxpc8OpcyBhdmVjIGRlcyByw6l2aXNpb25zIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDIwCisjOiBidWlsdGluL2dyZXAuYzoxMDI3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIHJldmlzaW9uOiAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByw6lzb3VkcmUgbGEgcsOpdmlzaW9uwqA6ICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDUxCisjOiBidWlsdGluL2dyZXAuYzoxMDU3Cittc2dpZCAiLS11bnRyYWNrZWQgbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgorbXNnc3RyICItLXVudHJhY2tlZCBub24gc3VwcG9ydMOpZSBhdmVjIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgorCisjOiBidWlsdGluL2dyZXAuYzoxMDYxCiBtc2dpZCAiaW52YWxpZCBvcHRpb24gY29tYmluYXRpb24sIGlnbm9yaW5nIC0tdGhyZWFkcyIKIG1zZ3N0ciAib3B0aW9uIGRlIGNvbWJpbmFpc29uIGludmFsaWRlLCBpZ25vcmUgLS10aHJlYWRzIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDU0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NworIzogYnVpbHRpbi9ncmVwLmM6MTA2NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NDcKIG1zZ2lkICJubyB0aHJlYWRzIHN1cHBvcnQsIGlnbm9yaW5nIC0tdGhyZWFkcyIKIG1zZ3N0ciAicGFzIGRlIHN1cHBvcnQgZGVzIGZpbHMsIGlnbm9yZSAtLXRocmVhZHMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUwMyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MTYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzNSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBudW1iZXIgb2YgdGhyZWFkcyBzcGVjaWZpZWQgKCVkKSIKIG1zZ3N0ciAibm9tYnJlIGRlIGZpbHMgc3DDqWNpZmnDqSBpbnZhbGlkZSAoJWQpIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDgwCisjOiBidWlsdGluL2dyZXAuYzoxMTAxCiBtc2dpZCAiLS1vcGVuLWZpbGVzLWluLXBhZ2VyIG9ubHkgd29ya3Mgb24gdGhlIHdvcmt0cmVlIgogbXNnc3RyICItLW9wZW4tZmlsZXMtaW4tcGFnZXIgbmUgZm9uY3Rpb25uZSBxdWUgc3VyIGxhIGNvcGllIGRlIHRyYXZhaWwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMDMKLW1zZ2lkICJvcHRpb24gbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgotbXNnc3RyICJvcHRpb24gbm9uIHN1cHBvcnTDqWUgYXZlYyAtLXJlY3Vyc2Utc3VibW9kdWxlcyIKLQotIzogYnVpbHRpbi9ncmVwLmM6MTEwOQorIzogYnVpbHRpbi9ncmVwLmM6MTEyNwogbXNnaWQgIi0tY2FjaGVkIG9yIC0tdW50cmFja2VkIGNhbm5vdCBiZSB1c2VkIHdpdGggLS1uby1pbmRleCIKIG1zZ3N0ciAiLS1jYWNoZWQgb3UgLS11bnRyYWNrZWQgbmUgcGV1dmVudCBwYXMgw6p0cmUgdXRpbGlzw6lzIGF2ZWMgLS1uby1pbmRleCIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTExNQorIzogYnVpbHRpbi9ncmVwLmM6MTEzMwogbXNnaWQgIi0tW25vLV1leGNsdWRlLXN0YW5kYXJkIGNhbm5vdCBiZSB1c2VkIGZvciB0cmFja2VkIGNvbnRlbnRzIgogbXNnc3RyICItLVtuby1dZXhjbHVkZS1zdGFuZGFyZCBuZSBwZXV0IHBhcyDDqnRyZSB1dGlsaXPDqSBhdmVjIGR1IGNvbnRlbnUgc3VpdmkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMjMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExNDEKIG1zZ2lkICJib3RoIC0tY2FjaGVkIGFuZCB0cmVlcyBhcmUgZ2l2ZW4iCiBtc2dzdHIgIi0tY2FjaGVkIGV0IGRlcyBhcmJyZXMgc29udCBmb3VybmlzIGVuIG3Dqm1lIHRlbXBzIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODQKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NQogbXNnaWQgIiIKICJnaXQgaGFzaC1vYmplY3QgWy10IDx0eXBlPl0gWy13XSBbLS1wYXRoPTxmaWxlPiB8IC0tbm8tZmlsdGVyc10gWy0tc3RkaW5dICIKICJbLS1dIDxmaWxlPi4uLiIKQEAgLTExODI0LDM4ICsxNTAxNSwzNCBAQAogImdpdCBoYXNoLW9iamVjdCBbLXQgPHR5cGU+XSBbLXddIFstLXBhdGg9PGZpY2hpZXI+IHwgLS1uby1maWx0ZXJzXSBbLS1zdGRpbl0gIgogIlstLV0gPGZpY2hpZXI+Li4uIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODUKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NgogbXNnaWQgImdpdCBoYXNoLW9iamVjdCAgLS1zdGRpbi1wYXRocyIKIG1zZ3N0ciAiZ2l0IGhhc2gtb2JqZWN0ICAtLXN0ZGluLXBhdGhzIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTcKLW1zZ2lkICJ0eXBlIgotbXNnc3RyICJ0eXBlIgotCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTcKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAogbXNnaWQgIm9iamVjdCB0eXBlIgogbXNnc3RyICJ0eXBlIGQnb2JqZXQiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk5CiBtc2dpZCAid3JpdGUgdGhlIG9iamVjdCBpbnRvIHRoZSBvYmplY3QgZGF0YWJhc2UiCiBtc2dzdHIgIsOpY3JpcmUgbCdvYmpldCBkYW5zIGxhIGJhc2UgZGUgZG9ubsOpZSBkJ29iamV0cyIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMQogbXNnaWQgInJlYWQgdGhlIG9iamVjdCBmcm9tIHN0ZGluIgogbXNnc3RyICJsaXJlIGwnb2JqZXQgZGVwdWlzIGwnZW50csOpZSBzdGFuZGFyZCIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMgorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMwogbXNnaWQgInN0b3JlIGZpbGUgYXMgaXMgd2l0aG91dCBmaWx0ZXJzIgogbXNnc3RyICJzdG9ja2VyIGxlIGZpY2hpZXIgdGVsIHF1ZWwgc2FucyBmaWx0cmFnZSIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNAogbXNnaWQgIiIKICJqdXN0IGhhc2ggYW55IHJhbmRvbSBnYXJiYWdlIHRvIGNyZWF0ZSBjb3JydXB0IG9iamVjdHMgZm9yIGRlYnVnZ2luZyBHaXQiCiBtc2dzdHIgIiIKICJqdXN0ZSBoYXNoZXIgbidpbXBvcnRlIHF1ZWwgY29udGVudSBwb3VyIGNyw6llciBkZXMgb2JqZXRzIGNvcnJvbXB1cyBwb3VyICIKICJkZWJ1Z2dlciBHaXQiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDQKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDUKIG1zZ2lkICJwcm9jZXNzIGZpbGUgYXMgaXQgd2VyZSBmcm9tIHRoaXMgcGF0aCIKIG1zZ3N0ciAidHJhaXRlciBsZSBmaWNoaWVyIGNvbW1lIHMnaWwgdmVuYWl0IGRlIGNlIGNoZW1pbiIKIApAQCAtMTE4OTUsMzAgKzE1MDgyLDMwIEBACiBtc2dpZCAiZ2l0IGhlbHAgWy0tYWxsXSBbLS1ndWlkZXNdIFstLW1hbiB8IC0td2ViIHwgLS1pbmZvXSBbPGNvbW1hbmQ+XSIKIG1zZ3N0ciAiZ2l0IGhlbHAgWy0tYWxsXSBbLS1ndWlkZXNdIFstLW1hbiB8IC0td2ViIHwgLS1pbmZvXSBbPGNvbW1hbmRlPl0iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjczCisjOiBidWlsdGluL2hlbHAuYzo3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaGVscCBmb3JtYXQgJyVzJyIKIG1zZ3N0ciAiZm9ybWF0IGQnYWlkZSBub24gcmVjb25udSAnJXMnIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMDAKKyM6IGJ1aWx0aW4vaGVscC5jOjEwNAogbXNnaWQgIkZhaWxlZCB0byBzdGFydCBlbWFjc2NsaWVudC4iCiBtc2dzdHIgIsOpY2hlYyBkZSBkw6ltYXJyYWdlIGQnZW1hY3NjbGllbnQuIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMTMKKyM6IGJ1aWx0aW4vaGVscC5jOjExNwogbXNnaWQgIkZhaWxlZCB0byBwYXJzZSBlbWFjc2NsaWVudCB2ZXJzaW9uLiIKIG1zZ3N0ciAiw6ljaGVjIGQnYW5hbHlzZSBkZSBsYSB2ZXJzaW9uIGQnZW1hY3NjbGllbnQuIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMjEKKyM6IGJ1aWx0aW4vaGVscC5jOjEyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJlbWFjc2NsaWVudCB2ZXJzaW9uICclZCcgdG9vIG9sZCAoPCAyMikuIgogbXNnc3RyICJsYSB2ZXJzaW9uIGQnZW1hY3NjbGllbnQgJyVkJyBlc3QgdHJvcCBhbmNpZW5uZSAoPDIyKS4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjEzOSBidWlsdGluL2hlbHAuYzoxNjEgYnVpbHRpbi9oZWxwLmM6MTcxIGJ1aWx0aW4vaGVscC5jOjE3OQorIzogYnVpbHRpbi9oZWxwLmM6MTQzIGJ1aWx0aW4vaGVscC5jOjE2NSBidWlsdGluL2hlbHAuYzoxNzUgYnVpbHRpbi9oZWxwLmM6MTgzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBleGVjICclcyciCiBtc2dzdHIgIsOpY2hlYyBkZSBsJ2V4w6ljdXRpb24gZGUgJyVzJyIKIAotIzogYnVpbHRpbi9oZWxwLmM6MjE3CisjOiBidWlsdGluL2hlbHAuYzoyMjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcyc6IHBhdGggZm9yIHVuc3VwcG9ydGVkIG1hbiB2aWV3ZXIuXG4iCkBAIC0xMTkyNyw3ICsxNTExNCw3IEBACiAiJyVzJyA6IGNoZW1pbiBwb3VyIGwndXRpbGl0YWlyZSBkZSB2aXN1YWxpc2F0aW9uIGRlIG1hbnVlbCBub24gc3VwcG9ydMOpLlxuIgogIlZldWlsbGV6IHV0aWxpc2VyIHBsdXTDtHQgJ21hbi48b3V0aWw+LmNtZCcuIgogCi0jOiBidWlsdGluL2hlbHAuYzoyMjkKKyM6IGJ1aWx0aW4vaGVscC5jOjIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJzogY21kIGZvciBzdXBwb3J0ZWQgbWFuIHZpZXdlci5cbiIKQEAgLTExOTM2LDMyOCArMTUxMjMsMzE4IEBACiAiJyVzJyA6IGNoZW1pbiBwb3VyIGwndXRpbGl0YWlyZSBkZSB2aXN1YWxpc2F0aW9uIGRlIG1hbnVlbCBzdXBwb3J0w6kuXG4iCiAiVmV1aWxsZXogdXRpbGlzZXIgcGx1dMO0dCAnbWFuLjxvdXRpbD4uY21kJy4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM0NgorIzogYnVpbHRpbi9oZWxwLmM6MzUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IHVua25vd24gbWFuIHZpZXdlci4iCiBtc2dzdHIgIiclcycgOiB2aXN1YWxpc2V1ciBkZSBtYW51ZWwgaW5jb25udS4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM2MworIzogYnVpbHRpbi9oZWxwLmM6MzY3CiBtc2dpZCAibm8gbWFuIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgogbXNnc3RyICJhdWN1biB2aXN1YWxpc2V1ciBkZSBtYW51ZWwgbidhIHByaXMgZW4gY2hhcmdlIGxhIGRlbWFuZGUiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM3MQorIzogYnVpbHRpbi9oZWxwLmM6Mzc1CiBtc2dpZCAibm8gaW5mbyB2aWV3ZXIgaGFuZGxlZCB0aGUgcmVxdWVzdCIKIG1zZ3N0ciAiYXVjdW4gdmlzdWFsaXNldXIgZGUgJ2luZm8nIG4nYSBwcmlzIGVuIGNoYXJnZSBsYSBkZW1hbmRlIgogCi0jOiBidWlsdGluL2hlbHAuYzo0MzAgYnVpbHRpbi9oZWxwLmM6NDQxIGdpdC5jOjMyMgorIzogYnVpbHRpbi9oZWxwLmM6NDM0IGJ1aWx0aW4vaGVscC5jOjQ0NSBnaXQuYzozMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbGlhc2VkIHRvICclcyciCiBtc2dzdHIgIiclcycgZXN0IHVuIGFsaWFzIGRlICclcyciCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQ0NAorIzogYnVpbHRpbi9oZWxwLmM6NDQ4IGdpdC5jOjM2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgYWxpYXMuJXMgc3RyaW5nOiAlcyIKIG1zZ3N0ciAiTWF1dmFpcyBjaGHDrm5lIGFsaWFzLiVzwqA6ICVzIgogCi0jOiBidWlsdGluL2hlbHAuYzo0NzMgYnVpbHRpbi9oZWxwLmM6NTAzCisjOiBidWlsdGluL2hlbHAuYzo0NzcgYnVpbHRpbi9oZWxwLmM6NTA3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVzYWdlOiAlcyVzIgogbXNnc3RyICJ1c2FnZSA6ICVzJXMiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQ4NworIzogYnVpbHRpbi9oZWxwLmM6NDkxCiBtc2dpZCAiJ2dpdCBoZWxwIGNvbmZpZycgZm9yIG1vcmUgaW5mb3JtYXRpb24iCiBtc2dzdHIgIidnaXQgaGVscCBjb25maWcnIHBvdXIgcGx1cyBkJ2luZm9ybWF0aW9uIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxODQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgdHlwZSBtaXNtYXRjaCBhdCAlcyIKIG1zZ3N0ciAidHlwZSBkJ29iamV0IG5vbiBjb3JyZXNwb25kYW50IMOgICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJkaWQgbm90IHJlY2VpdmUgZXhwZWN0ZWQgb2JqZWN0ICVzIgogbXNnc3RyICJvYmpldCBhdHRlbmR1IG5vbiByZcOndSAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzOiBleHBlY3RlZCB0eXBlICVzLCBmb3VuZCAlcyIKIG1zZ3N0ciAib2JqZXQgJXMgOiB0eXBlIGF0dGVuZHUgJXMsIHJlw6d1ICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNDkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmlsbCAlZCBieXRlIgogbXNnaWRfcGx1cmFsICJjYW5ub3QgZmlsbCAlZCBieXRlcyIKIG1zZ3N0clswXSAiaW1wb3NzaWJsZSBkZSByZW1wbGlyICVkIG9jdGV0IgogbXNnc3RyWzFdICJpbXBvc3NpYmxlIGRlIHJlbXBsaXIgJWQgb2N0ZXRzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OAogbXNnaWQgImVhcmx5IEVPRiIKIG1zZ3N0ciAiZmluIGRlIGZpY2hpZXIgcHLDqW1hdHVyw6llIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNjAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OQogbXNnaWQgInJlYWQgZXJyb3Igb24gaW5wdXQiCiBtc2dzdHIgImVycmV1ciBkZSBsZWN0dXJlIHN1ciBsJ2VudHLDqWUiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI3MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjgxCiBtc2dpZCAidXNlZCBtb3JlIGJ5dGVzIHRoYW4gd2VyZSBhdmFpbGFibGUiCiBtc2dzdHIgInBsdXMgZCdvY3RldHMgdXRpbGlzw6lzIHF1ZSBkaXNwb25pYmxlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6Mjc5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTk4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyODggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo2MDYKIG1zZ2lkICJwYWNrIHRvbyBsYXJnZSBmb3IgY3VycmVudCBkZWZpbml0aW9uIG9mIG9mZl90IgogbXNnc3RyICJsZSBwYXF1ZXQgZXN0IHRyb3AgZ3JhbmQgcG91ciBsYSBkw6lmaW5pdGlvbiBhY3R1ZWxsZSBkZSBvZmZfdCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjgyIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo5NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjkxIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo5NQogbXNnaWQgInBhY2sgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgc2l6ZSIKIG1zZ3N0ciAibGUgcGFxdWV0IGTDqXBhc3NlIGxhIHRhaWxsZSBtYXhpbWFsZSBwZXJtaXNlIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyOTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAnJXMnIgotbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciAnJXMnIgotCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozMDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgb3BlbiBwYWNrZmlsZSAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgcGFxdWV0ICclcyciCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMxNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzI2CiBtc2dpZCAicGFjayBzaWduYXR1cmUgbWlzbWF0Y2giCiBtc2dzdHIgImxhIHNpZ25hdHVyZSBkdSBwYXF1ZXQgbmUgY29ycmVzcG9uZCBwYXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMxOQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2sgdmVyc2lvbiAlPFBSSXUzMj4gdW5zdXBwb3J0ZWQiCiBtc2dzdHIgImxhIHZlcnNpb24gZGUgcGFxdWV0ICU8UFJJdTMyPiBub24gc3VwcG9ydMOpZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzM3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzozNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjayBoYXMgYmFkIG9iamVjdCBhdCBvZmZzZXQgJTxQUkl1TUFYPjogJXMiCiBtc2dzdHIgImxlIHBhcXVldCBhIHVuIG1hdXZhaXMgb2JqZXQgw6AgbCdvZmZzZXQgJTxQUkl1TUFYPsKgOiAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NDU3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5mbGF0ZSByZXR1cm5lZCAlZCIKIG1zZ3N0ciAibGEgZMOpY29tcHJlc3Npb24gKGluZmxhdGUpIGEgcmV0b3VybsOpICVkIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1MDYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNQogbXNnaWQgIm9mZnNldCB2YWx1ZSBvdmVyZmxvdyBmb3IgZGVsdGEgYmFzZSBvYmplY3QiCiBtc2dzdHIgImTDqXBhc3NlbWVudCBkZSBsYSB2YWxldXIgZCdvZmZzZXQgcG91ciBsJ29iamV0IGRlbHRhIGRlIGJhc2UiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTIzCiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgaXMgb3V0IG9mIGJvdW5kIgogbXNnc3RyICJsJ29iamV0IGRlbHRhIGRlIGJhc2UgZXN0IGhvcnMgbGltaXRlIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1MjIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG9iamVjdCB0eXBlICVkIgogbXNnc3RyICJ0eXBlIGQnb2JqZXQgaW5jb25udSAlZCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTUzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NjIKIG1zZ2lkICJjYW5ub3QgcHJlYWQgcGFjayBmaWxlIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgKHByZWFkKSBsZSBmaWNoaWVyIHBhcXVldCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTU1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICU8UFJJdU1BWD4gYnl0ZSBtaXNzaW5nIgogbXNnaWRfcGx1cmFsICJwcmVtYXR1cmUgZW5kIG9mIHBhY2sgZmlsZSwgJTxQUkl1TUFYPiBieXRlcyBtaXNzaW5nIgogbXNnc3RyWzBdICJmaW4gcHLDqW1hdHVyw6llIGR1IGZpY2hpZXIgcGFxdWV0LCAlPFBSSXVNQVg+IG9jdGV0IGx1IgogbXNnc3RyWzFdICJmaW4gcHLDqW1hdHVyw6llIGR1IGZpY2hpZXIgcGFxdWV0LCAlPFBSSXVNQVg+IG9jdGV0cyBsdXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU4MQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTkwCiBtc2dpZCAic2VyaW91cyBpbmZsYXRlIGluY29uc2lzdGVuY3kiCiBtc2dzdHIgImdyYXZlIGluY29ow6lyZW5jZSBkYW5zIGxhIGTDqWNvbXByZXNzaW9uIChpbmZsYXRlKSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzI2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjczMiBidWlsdGluL2luZGV4LXBhY2suYzo3NTUKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc5NCBidWlsdGluL2luZGV4LXBhY2suYzo4MDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjczNSBidWlsdGluL2luZGV4LXBhY2suYzo3NDEgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzY1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MDQgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlNIQTEgQ09MTElTSU9OIEZPVU5EIFdJVEggJXMgISIKIG1zZ3N0ciAiQ09MTElTSU9OIFNIQTEgVFJPVVbDiUUgQVZFQyAlcyAhIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3MjkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTEKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjExIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzA1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo3MzggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjE4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc5MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIGV4aXN0aW5nIG9iamVjdCBpbmZvICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbCdpbmZvcm1hdGlvbiBleGlzdGFudGUgZGUgbCdvYmpldCAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgZXhpc3Rpbmcgb2JqZWN0ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbCdvYmpldCBleGlzdGFudCAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODE0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBibG9iIG9iamVjdCAlcyIKIG1zZ3N0ciAib2JqZXQgYmxvYiBpbnZhbGlkZSAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODE3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzNgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODI3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0NgogbXNnaWQgImZzY2sgZXJyb3IgaW4gcGFja2VkIG9iamVjdCIKIG1zZ3N0ciAiZXJyZXVyIGRlIGZzY2sgZGFucyBsJ29iamV0IGVtcGFxdWV0w6kiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzMwotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkICVzIgotbXNnc3RyICIlcyBpbnZhbGlkZSIKLQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODM4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGFsbCBjaGlsZCBvYmplY3RzIG9mICVzIGFyZSByZWFjaGFibGUiCiBtc2dzdHIgIlRvdXMgbGVzIG9iamV0cyBlbmZhbnRzIGRlICVzIG5lIHNvbnQgcGFzIGFjY2Vzc2libGVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo5MTAgYnVpbHRpbi9pbmRleC1wYWNrLmM6OTQxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo5MjAgYnVpbHRpbi9pbmRleC1wYWNrLmM6OTUxCiBtc2dpZCAiZmFpbGVkIHRvIGFwcGx5IGRlbHRhIgogbXNnc3RyICLDqWNoZWMgZCdhcHBsaWNhdGlvbiBkdSBkZWx0YSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEwOQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEyMQogbXNnaWQgIlJlY2VpdmluZyBvYmplY3RzIgogbXNnc3RyICJSw6ljZXB0aW9uIGQnb2JqZXRzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTA5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTIxCiBtc2dpZCAiSW5kZXhpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiSW5kZXhhdGlvbiBkJ29iamV0cyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE0MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE1NQogbXNnaWQgInBhY2sgaXMgY29ycnVwdGVkIChTSEExIG1pc21hdGNoKSIKIG1zZ3N0ciAibGUgcGFxdWV0IGVzdCBjb3Jyb21wdSAoU0hBMSBuZSBjb3JyZXNwb25kIHBhcykiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNDgKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNjAKIG1zZ2lkICJjYW5ub3QgZnN0YXQgcGFja2ZpbGUiCiBtc2dzdHIgImltcG9zc2libGUgZCdvYnRlbmlyIGxlIHN0YXR1dCAoZnN0YXQpIGR1IGZpY2hpZXIgcGFxdWV0IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTUxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYzCiBtc2dpZCAicGFjayBoYXMganVuayBhdCB0aGUgZW5kIgogbXNnc3RyICJsZSBwYXF1ZXQgZXN0IGludmFsaWRlIMOgIGxhIGZpbiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE2MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE3NQogbXNnaWQgImNvbmZ1c2lvbiBiZXlvbmQgaW5zYW5pdHkgaW4gcGFyc2VfcGFja19vYmplY3RzKCkiCiBtc2dzdHIgImNvbmZ1c2lvbiBleHRyw6ptZSBkYW5zIHBhcnNlX3BhY2tfb2JqZWN0cygpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTg2CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTk4CiBtc2dpZCAiUmVzb2x2aW5nIGRlbHRhcyIKIG1zZ3N0ciAiUsOpc29sdXRpb24gZGVzIGRlbHRhcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE5NiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI0OTIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyMDggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgbGUgZmlsIDogJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyMzcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNDkKIG1zZ2lkICJjb25mdXNpb24gYmV5b25kIGluc2FuaXR5IgogbXNnc3RyICJjb25mdXNpb24gZXh0csOqbWUiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tcGxldGVkIHdpdGggJWQgbG9jYWwgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJjb21wbGV0ZWQgd2l0aCAlZCBsb2NhbCBvYmplY3RzIgogbXNnc3RyWzBdICJjb21wbMOpdMOpIGF2ZWMgJWQgb2JqZXQgbG9jYWwiCiBtc2dzdHJbMV0gImNvbXBsw6l0w6kgYXZlYyAlZCBvYmpldHMgbG9jYXV4IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjU1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuZXhwZWN0ZWQgdGFpbCBjaGVja3N1bSBmb3IgJXMgKGRpc2sgY29ycnVwdGlvbj8pIgogbXNnc3RyICIiCiAiU29tbWUgZGUgY29udHLDtGxlIGRlIGZpbiBpbmF0dGVuZHVlIHBvdXIgJXMgKGNvcnJ1cHRpb24gc3VyIGxlIGRpc3F1ZSA/KSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI1OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrIGhhcyAlZCB1bnJlc29sdmVkIGRlbHRhIgogbXNnaWRfcGx1cmFsICJwYWNrIGhhcyAlZCB1bnJlc29sdmVkIGRlbHRhcyIKIG1zZ3N0clswXSAibGUgcGFxdWV0IGEgJWQgZGVsdGEgbm9uIHLDqXNvbHUiCiBtc2dzdHJbMV0gImxlIHBhcXVldCBhICVkIGRlbHRhcyBub24gcsOpc29sdXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyODMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgYXBwZW5kZWQgb2JqZWN0ICglZCkiCiBtc2dzdHIgImltcG9zc2libGUgZGUgY29tcHJlc3NlciBsJ29iamV0IGFqb3V0w6kgKCVkKSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM2MAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2NhbCBvYmplY3QgJXMgaXMgY29ycnVwdCIKIG1zZ3N0ciAibCdvYmpldCBsb2NhbCAlcyBlc3QgY29ycm9tcHUiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzNzQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFja2ZpbGUgbmFtZSAnJXMnIGRvZXMgbm90IGVuZCB3aXRoICcucGFjayciCiBtc2dzdHIgImxlIG5vbSBkZSBmaWNoaWVyIHBhcXVldCAnJXMnIG5lIHNlIHRlcm1pbmUgcGFzIHBhciAnLnBhY2snIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzk5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCB3cml0ZSAlcyBmaWxlICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlIGxlIGZpY2hpZXIgJXMgJyVzJyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQwNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY2xvc2Ugd3JpdHRlbiAlcyBmaWxlICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgZmVybWVyIGxlIGZpY2hpZXIgJXMgw6ljcml0ICclcyciCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0NjMKIG1zZ2lkICJlcnJvciB3aGlsZSBjbG9zaW5nIHBhY2sgZmlsZSIKIG1zZ3N0ciAiZXJyZXVyIGVuIGZlcm1ldHVyZSBkdSBmaWNoaWVyIHBhcXVldCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ0NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ3NwogbXNnaWQgImNhbm5vdCBzdG9yZSBwYWNrIGZpbGUiCiBtc2dzdHIgImltcG9zc2libGUgZGUgc3RvY2tlciBsZSBmaWNoaWVyIHBhcXVldCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ1MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ4NQogbXNnaWQgImNhbm5vdCBzdG9yZSBpbmRleCBmaWxlIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN0b2NrZXIgbGUgZmljaGllciBkJ2luZGV4IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDk3IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcyNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUyOSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2suaW5kZXh2ZXJzaW9uPSU8UFJJdTMyPiIKIG1zZ3N0ciAibWF1dmFpcyBwYWNrLmluZGV4dmVyc2lvbj0lPFBSSXUzMj4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NjUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IG9wZW4gZXhpc3RpbmcgcGFjayBmaWxlICclcyciCiBtc2dzdHIgIkltcG9zc2libGUgZCdvdXZyaXIgbGUgZmljaGllciBwYXF1ZXQgZXhpc3RhbnQgJyVzJyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU2NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgb3BlbiBleGlzdGluZyBwYWNrIGlkeCBmaWxlIGZvciAnJXMnIgogbXNnc3RyICJJbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgcGFxdWV0IGQnaW5kZXggZXhpc3RhbnQgcG91ciAnJXMnIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjE1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vbiBkZWx0YTogJWQgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJub24gZGVsdGE6ICVkIG9iamVjdHMiCiBtc2dzdHJbMF0gInBhcyB1biBkZWx0YSA6ICVkIG9iamV0IgogbXNnc3RyWzFdICJwYXMgdW4gZGVsdGEgOiAlZCBvYmpldHMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2MjIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2hhaW4gbGVuZ3RoID0gJWQ6ICVsdSBvYmplY3QiCiBtc2dpZF9wbHVyYWwgImNoYWluIGxlbmd0aCA9ICVkOiAlbHUgb2JqZWN0cyIKIG1zZ3N0clswXSAibG9uZ3VldXIgY2hhw65uw6llID0gJWQgOiAlbHUgb2JqZXQiCiBtc2dzdHJbMV0gImxvbmd1ZXVyIGNoYcOubsOpZSA9ICVkIDogJWx1IG9iamV0cyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY1OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY5MwogbXNnaWQgIkNhbm5vdCBjb21lIGJhY2sgdG8gY3dkIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHJldmVuaXIgYXUgcsOpcGVydG9pcmUgZGUgdHJhdmFpbCBjb3VyYW50IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzA4IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MTEKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MjcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTczMQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0MiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQ1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzYxIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkICVzIgogbXNnc3RyICJtYXV2YWlzICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQ3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzgxCiBtc2dpZCAiLS1maXgtdGhpbiBjYW5ub3QgYmUgdXNlZCB3aXRob3V0IC0tc3RkaW4iCiBtc2dzdHIgIi0tZml4LXRoaW4gbmUgcGV1dCBwYXMgw6p0cmUgdXRpbGlzw6kgc2FucyAtLXN0ZGluIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQ5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzgzCiBtc2dpZCAiLS1zdGRpbiByZXF1aXJlcyBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICItLXN0ZGluIHJlcXVpZXJ0IHVuIGTDqXDDtHQgZ2l0IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzU1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzg5CiBtc2dpZCAiLS12ZXJpZnkgd2l0aCBubyBwYWNrZmlsZSBuYW1lIGdpdmVuIgogbXNnc3RyICItLXZlcmlmeSBzYW5zIG5vbSBkZSBmaWNoaWVyIHBhcXVldCBkb25uw6kiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4MDMgYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjU4MAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTgzNyBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTgyCiBtc2dpZCAiZnNjayBlcnJvciBpbiBwYWNrIG9iamVjdHMiCiBtc2dzdHIgImVycmV1ciBkZSBmc2NrIGRhbnMgbGVzIG9iamV0cyBwYXF1ZXRzIgogCkBAIC0xMjI2OSwxMiArMTU0NDYsMTIgQEAKICM6IGJ1aWx0aW4vaW5pdC1kYi5jOjY2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuZGlyICclcyciCi1tc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgKG9wZW5kaXIpICclcyciCittc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgbGUgcsOpcGVydG9pcmUgJyVzJyIKIAogIzogYnVpbHRpbi9pbml0LWRiLmM6NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWRsaW5rICclcyciCi1tc2dzdHIgImltcG9zc2libGUgZGUgcmVhZGxpbmsgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGxlIGxpZW4gJyVzJyIKIAogIzogYnVpbHRpbi9pbml0LWRiLmM6ODAKICMsIGMtZm9ybWF0CkBAIC0xMjMwMSw0MiArMTU0NzgsNDIgQEAKIG1zZ2lkICJub3QgY29weWluZyB0ZW1wbGF0ZXMgZnJvbSAnJXMnOiAlcyIKIG1zZ3N0ciAicGFzIGRlIGNvcGllIGRlcyBtb2TDqGxlcyBkZXB1aXMgJyVzJ8KgOiAlcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6MzI5CisjOiBidWlsdGluL2luaXQtZGIuYzozMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGhhbmRsZSBmaWxlIHR5cGUgJWQiCiBtc2dzdHIgImltcG9zc2libGUgZGUgdHJhaXRlciBsZSBmaWNoaWVyIGRlIHR5cGUgJWQiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMzMgorIzogYnVpbHRpbi9pbml0LWRiLmM6MzM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtb3ZlICVzIHRvICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGTDqXBsYWNlciAlcyB2ZXJzICVzIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzozNDkgYnVpbHRpbi9pbml0LWRiLmM6MzUyCisjOiBidWlsdGluL2luaXQtZGIuYzozNTQgYnVpbHRpbi9pbml0LWRiLmM6MzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICIlcyBleGlzdGUgZMOpasOgIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MDUKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWluaXRpYWxpemVkIGV4aXN0aW5nIHNoYXJlZCBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgIkTDqXDDtHQgR2l0IGV4aXN0YW50IHBhcnRhZ8OpIHLDqWluaXRpYWxpc8OpIGRhbnMgJXMlc1xuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MDYKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWluaXRpYWxpemVkIGV4aXN0aW5nIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAiRMOpcMO0dCBHaXQgZXhpc3RhbnQgcsOpaW5pdGlhbGlzw6kgZGFucyAlcyVzXG4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMAorIzogYnVpbHRpbi9pbml0LWRiLmM6NDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkluaXRpYWxpemVkIGVtcHR5IHNoYXJlZCBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgIkTDqXDDtHQgR2l0IHZpZGUgcGFydGFnw6kgaW5pdGlhbGlzw6kgZGFucyAlcyVzXG4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMQorIzogYnVpbHRpbi9pbml0LWRiLmM6NDE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkluaXRpYWxpemVkIGVtcHR5IEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAiRMOpcMO0dCBHaXQgdmlkZSBpbml0aWFsaXPDqSBkYW5zICVzJXNcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDYwCisjOiBidWlsdGluL2luaXQtZGIuYzo0NjgKIG1zZ2lkICIiCiAiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU9PHRlbXBsYXRlLWRpcmVjdG9yeT5dIFstLSIKICJzaGFyZWRbPTxwZXJtaXNzaW9ucz5dXSBbPGRpcmVjdG9yeT5dIgpAQCAtMTIzNDQsMjUgKzE1NTIxLDI1IEBACiAiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU9PHLDqXBlcnRvaXJlLW1vZMOobGU+XSBbLS0iCiAic2hhcmVkWz08cGVybWlzc2lvbnM+XV0gWzxyw6lwZXJ0b2lyZT5dIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0ODMKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MQogbXNnaWQgInBlcm1pc3Npb25zIgogbXNnc3RyICJwZXJtaXNzaW9ucyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDg0CisjOiBidWlsdGluL2luaXQtZGIuYzo0OTIKIG1zZ2lkICJzcGVjaWZ5IHRoYXQgdGhlIGdpdCByZXBvc2l0b3J5IGlzIHRvIGJlIHNoYXJlZCBhbW9uZ3N0IHNldmVyYWwgdXNlcnMiCiBtc2dzdHIgInNww6ljaWZpZXIgcXVlIGxlIGTDqXDDtHQgZ2l0IHNlcmEgcGFydGFnw6kgZW50cmUgcGx1c2lldXJzIHV0aWxpc2F0ZXVycyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTE4IGJ1aWx0aW4vaW5pdC1kYi5jOjUyMworIzogYnVpbHRpbi9pbml0LWRiLmM6NTI5IGJ1aWx0aW4vaW5pdC1kYi5jOjUzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgbWtkaXIgJXMiCiBtc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIGxlIHLDqXBlcnRvaXJlIChta2RpcikgJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUyNworIzogYnVpbHRpbi9pbml0LWRiLmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGRpciB0byAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBzZSBkw6lwbGFjZXIgdmVycyBsZSByw6lwZXJ0b2lyZSAoY2hkaXIpICVzIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo1NDgKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJXMgKG9yIC0td29yay10cmVlPTxkaXJlY3Rvcnk+KSBub3QgYWxsb3dlZCB3aXRob3V0IHNwZWNpZnlpbmcgJXMgKG9yIC0tZ2l0LSIKQEAgLTEyMzcxLDEyICsxNTU0OCwxMiBAQAogIiVzIChvdSAtLXdvcmstdHJlZT08csOpcGVydG9pcmU+KSBuJ2VzdCBwYXMgYXV0b3Jpc8OpIHNhbnMgc3DDqWNpZmllciAlcyAob3UgLS0iCiAiZ2l0LWRpcj08csOpcGVydG9pcmU+KSIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTc2CisjOiBidWlsdGluL2luaXQtZGIuYzo1ODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGFjY2VzcyB3b3JrIHRyZWUgJyVzJyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkJ2FjY8OpZGVyIMOgIGwnYXJicmUgZGUgdHJhdmFpbCAnJXMnIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjE1CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjE2CiBtc2dpZCAiIgogImdpdCBpbnRlcnByZXQtdHJhaWxlcnMgWy0taW4tcGxhY2VdIFstLXRyaW0tZW1wdHldIFsoLS10cmFpbGVyICIKICI8dG9rZW4+Wyg9fDopPHZhbHVlPl0pLi4uXSBbPGZpbGU+Li4uXSIKQEAgLTEyMzg0LDQ2OCArMTU1NjEsNDc1IEBACiAiZ2l0IGludGVycHJldC10cmFpbGVycyBbLS1pbi1wbGFjZV0gWy0tdHJpbS1lbXB0eV0gWygtLXRyYWlsZXIgIgogIjxzeW1ib2xlPlsoPXw6KTx2YWxldXI+XSkuLi5dIFs8ZmljaGllcj4uLi5dIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk0CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk1CiBtc2dpZCAiZWRpdCBmaWxlcyBpbiBwbGFjZSIKIG1zZ3N0ciAiw6lkaXRlciBsZXMgZmljaGllcnMgc3VyIHBsYWNlIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk1CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk2CiBtc2dpZCAidHJpbSBlbXB0eSB0cmFpbGVycyIKIG1zZ3N0ciAiw6lsaW1pbmVyIGxlcyBsaWduZXMgZGUgZmluIHZpZGVzIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk4CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk5CiBtc2dpZCAid2hlcmUgdG8gcGxhY2UgdGhlIG5ldyB0cmFpbGVyIgogbXNnc3RyICJvw7kgcGxhY2VyIGxlcyBub3V2ZWxsZXMgbGlnbmVzIHRlcm1pbmFsZXMiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMQogbXNnaWQgImFjdGlvbiBpZiB0cmFpbGVyIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICJhY3Rpb24gc2kgbGVzIGxpZ25lcyB0ZXJtaW5hbGVzIGV4aXN0ZW50IGTDqWrDoCIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDIKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAzCiBtc2dpZCAiYWN0aW9uIGlmIHRyYWlsZXIgaXMgbWlzc2luZyIKIG1zZ3N0ciAiYWN0aW9uIHNpIGxlcyBsaWduZXMgdGVybWluYWxlcyBtYW5xdWVudCIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDQKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA1CiBtc2dpZCAib3V0cHV0IG9ubHkgdGhlIHRyYWlsZXJzIgogbXNnc3RyICLDqWxpbWluZXIgbGVzIGxpZ25lcyB0ZXJtaW5hbGVzIHZpZGVzIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDYKIG1zZ2lkICJkbyBub3QgYXBwbHkgY29uZmlnIHJ1bGVzIgogbXNnc3RyICJuZSBwYXMgYXBwbGlxdWVyIGxlcyByw6hnbGVzIGRlIGxhIGNvbmZpZ3VyYXRpb24iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA2CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNwogbXNnaWQgImpvaW4gd2hpdGVzcGFjZS1jb250aW51ZWQgdmFsdWVzIgogbXNnc3RyICJqb2luZHJlIGxlcyB2YWxldXJzIGNvbnRpbnXDqWVzIGF2ZWMgZGVzIGNhcmFjdMOocmVzIGJsYW5jcyIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDcKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA4CiBtc2dpZCAic2V0IHBhcnNpbmcgb3B0aW9ucyIKIG1zZ3N0ciAicGFyYW3DqHRyZXMgZCdhbmFseXNlIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwOQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTAKIG1zZ2lkICJkbyBub3QgdHJlYXQgLS0tIHNwZWNpYWxseSIKIG1zZ3N0ciAibmUgcGFzIHRyYWl0ZXIgc3DDqWNpYWxlbWVudCAtLS0iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMQogbXNnaWQgInRyYWlsZXIiCiBtc2dzdHIgImxpZ25lIGRlIGZpbiIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTEKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEyCiBtc2dpZCAidHJhaWxlcihzKSB0byBhZGQiCiBtc2dzdHIgImxpZ25lKHMpIGRlIGZpbiDDoCBham91dGVyIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEyMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMjMKIG1zZ2lkICItLXRyYWlsZXIgd2l0aCAtLW9ubHktaW5wdXQgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS10cmFpbGVyIG4nYSBhdWN1bmUgc2lnbmlmaWNhdGlvbiBhdmVjIC0tb25seS1pbnB1dCIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMzAKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTMzCiBtc2dpZCAibm8gaW5wdXQgZmlsZSBnaXZlbiBmb3IgaW4tcGxhY2UgZWRpdGluZyIKIG1zZ3N0ciAiYXVjdW4gZmljaGllciBlbiBlbnRyw6llIHBvdXIgbCfDqWRpdG9uIHN1ciBwbGFjZSIKIAotIzogYnVpbHRpbi9sb2cuYzo1NAorIzogYnVpbHRpbi9sb2cuYzo1NgogbXNnaWQgImdpdCBsb2cgWzxvcHRpb25zPl0gWzxyZXZpc2lvbi1yYW5nZT5dIFtbLS1dIDxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBsb2cgWzxvcHRpb25zPl0gWzxwbGFnZSBkZSByw6l2aXNpb25zPl0gW1stLV0gPGNoZW1pbj4uLi5dIgogCi0jOiBidWlsdGluL2xvZy5jOjU1CisjOiBidWlsdGluL2xvZy5jOjU3CiBtc2dpZCAiZ2l0IHNob3cgWzxvcHRpb25zPl0gPG9iamVjdD4uLi4iCiBtc2dzdHIgImdpdCBzaG93IFs8b3B0aW9ucz5dIDxvYmpldD4uLi4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6OTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgLS1kZWNvcmF0ZSBvcHRpb246ICVzIgogbXNnc3RyICJvcHRpb24gLS1kZWNvcmF0ZSBpbnZhbGlkZSA6ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjE2MgotbXNnaWQgInN1cHByZXNzIGRpZmYgb3V0cHV0IgotbXNnc3RyICJzdXBwcmltZXIgbGEgc29ydGllIGRlcyBkaWZmw6lyZW5jZXMiCi0KLSM6IGJ1aWx0aW4vbG9nLmM6MTYzCisjOiBidWlsdGluL2xvZy5jOjE3NAogbXNnaWQgInNob3cgc291cmNlIgogbXNnc3RyICJhZmZpY2hlciBsYSBzb3VyY2UiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY0CisjOiBidWlsdGluL2xvZy5jOjE3NQogbXNnaWQgIlVzZSBtYWlsIG1hcCBmaWxlIgogbXNnc3RyICJVdGlsaXNlciBsZSBmaWNoaWVyIGRlIGNvcnJlc3BvbmRhbmNlIGRlIG1haWwiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY2CisjOiBidWlsdGluL2xvZy5jOjE3NwogbXNnaWQgIm9ubHkgZGVjb3JhdGUgcmVmcyB0aGF0IG1hdGNoIDxwYXR0ZXJuPiIKIG1zZ3N0ciAiZMOpY29yZXIgc2V1bGVtZW50IGxlcyByw6lmw6lyZW5jZXMgY29ycmVzcG9uZGFudCDDoCA8bW90aWY+IgogCi0jOiBidWlsdGluL2xvZy5jOjE2OAorIzogYnVpbHRpbi9sb2cuYzoxNzkKIG1zZ2lkICJkbyBub3QgZGVjb3JhdGUgcmVmcyB0aGF0IG1hdGNoIDxwYXR0ZXJuPiIKIG1zZ3N0ciAibmUgcGFzIGTDqWNvcmVyIGxlcyByw6lmw6lyZW5jZXMgY29ycmVzcG9uZGFudCDDoCA8bW90aWY+IgogCi0jOiBidWlsdGluL2xvZy5jOjE2OQorIzogYnVpbHRpbi9sb2cuYzoxODAKIG1zZ2lkICJkZWNvcmF0ZSBvcHRpb25zIgogbXNnc3RyICJkw6ljb3JlciBsZXMgb3B0aW9ucyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNzIKKyM6IGJ1aWx0aW4vbG9nLmM6MTgzCiBtc2dpZCAiUHJvY2VzcyBsaW5lIHJhbmdlIG4sbSBpbiBmaWxlLCBjb3VudGluZyBmcm9tIDEiCiBtc2dzdHIgIiIKICJUcmFpdGVyIHNldWxlbWVudCBsJ2ludGVydmFsbGUgZGUgbGlnbmVzIG4sbSBkdSBmaWNoaWVyIGVuIGNvbW1lbsOnYW50IGxlICIKICJjb21wdGUgw6AgMSIKIAotIzogYnVpbHRpbi9sb2cuYzoyNzAKKyM6IGJ1aWx0aW4vbG9nLmM6MjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZpbmFsIG91dHB1dDogJWQgJXNcbiIKIG1zZ3N0ciAiU29ydGllIGZpbmFsZSA6ICVkICVzXG4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTIyCisjOiBidWlsdGluL2xvZy5jOjUzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgc2hvdyAlczogYmFkIGZpbGUiCiBtc2dzdHIgImdpdCBzaG93ICVzIDogZmljaGllciBpbmNvcnJlY3QiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTM3IGJ1aWx0aW4vbG9nLmM6NjMxCisjOiBidWlsdGluL2xvZy5jOjU1MCBidWlsdGluL2xvZy5jOjY0NQogIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgcmVhZCBvYmplY3QgJXMiCi1tc2dzdHIgIkltcG9zc2libGUgZGUgbGlyZSBsJ29iamV0ICVzIgorbXNnaWQgImNvdWxkIG5vdCByZWFkIG9iamVjdCAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGwnb2JqZXQgJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NjU1CisjOiBidWlsdGluL2xvZy5jOjY3MAogIywgYy1mb3JtYXQKLW1zZ2lkICJVbmtub3duIHR5cGU6ICVkIgotbXNnc3RyICJUeXBlIGluY29ubnUgOiAlZCIKK21zZ2lkICJ1bmtub3duIHR5cGU6ICVkIgorbXNnc3RyICJ0eXBlIGluY29ubnUgOiAlZCIKIAotIzogYnVpbHRpbi9sb2cuYzo3NzYKKyM6IGJ1aWx0aW4vbG9nLmM6ODE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIGNvdmVyIGZyb20gZGVzY3JpcHRpb24gbW9kZSIKK21zZ3N0ciAiJXPCoDogY291dmVydHVyZSBpbnZhbGlkZSBwb3VyIGxlIG1vZGUgZGUgZGVzY3JpcHRpb24iCisKKyM6IGJ1aWx0aW4vbG9nLmM6ODIxCiBtc2dpZCAiZm9ybWF0LmhlYWRlcnMgd2l0aG91dCB2YWx1ZSIKIG1zZ3N0ciAiZm9ybWF0LmhlYWRlcnMgc2FucyB2YWxldXIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6ODc3CisjOiBidWlsdGluL2xvZy5jOjkzNgogbXNnaWQgIm5hbWUgb2Ygb3V0cHV0IGRpcmVjdG9yeSBpcyB0b28gbG9uZyIKIG1zZ3N0ciAibGUgbm9tIGR1IHLDqXBlcnRvaXJlIGRlIHNvcnRpZSBlc3QgdHJvcCBsb25nIgogCi0jOiBidWlsdGluL2xvZy5jOjg5MworIzogYnVpbHRpbi9sb2cuYzo5NTIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ2Fubm90IG9wZW4gcGF0Y2ggZmlsZSAlcyIKLW1zZ3N0ciAiSW1wb3NzaWJsZSBkJ291dnJpciBsZSBmaWNoaWVyIGNvcnJlY3RpZiAlcyIKK21zZ2lkICJjYW5ub3Qgb3BlbiBwYXRjaCBmaWxlICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgY29ycmVjdGlmICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjkxMAotbXNnaWQgIk5lZWQgZXhhY3RseSBvbmUgcmFuZ2UuIgotbXNnc3RyICJFeGFjdGVtZW50IHVuZSBwbGFnZSBuw6ljZXNzYWlyZS4iCisjOiBidWlsdGluL2xvZy5jOjk2OQorbXNnaWQgIm5lZWQgZXhhY3RseSBvbmUgcmFuZ2UiCittc2dzdHIgImV4YWN0ZW1lbnQgdW5lIHBsYWdlIG7DqWNlc3NhaXJlIgogCi0jOiBidWlsdGluL2xvZy5jOjkyMAotbXNnaWQgIk5vdCBhIHJhbmdlLiIKLW1zZ3N0ciAiQ2VjaSBuJ2VzdCBwYXMgdW5lIHBsYWdlLiIKKyM6IGJ1aWx0aW4vbG9nLmM6OTc5Cittc2dpZCAibm90IGEgcmFuZ2UiCittc2dzdHIgImNlY2kgbidlc3QgcGFzIHVuZSBwbGFnZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxMDQzCi1tc2dpZCAiQ292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKLW1zZ3N0ciAiTGEgbGV0dHJlIGRlIG1vdGl2YXRpb24gZG9pdCDDqnRyZSBhdSBmb3JtYXQgY291cnJpZWwiCisjOiBidWlsdGluL2xvZy5jOjExNDMKK21zZ2lkICJjb3ZlciBsZXR0ZXIgbmVlZHMgZW1haWwgZm9ybWF0IgorbXNnc3RyICJsYSBsZXR0cmUgZGUgbW90aXZhdGlvbiBkb2l0IMOqdHJlIGF1IGZvcm1hdCBjb3VycmllbCIKIAotIzogYnVpbHRpbi9sb2cuYzoxMTE5CisjOiBidWlsdGluL2xvZy5jOjExNDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGNvdmVyLWxldHRlciBmaWxlIgorbXNnc3RyICLDqWNoZWMgZGUgY3LDqWF0aW9uIGR1IGZpY2hpZXIgZGUgbGV0dHJlIGRlIG1vdGl2YXRpb24iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnNhbmUgaW4tcmVwbHktdG86ICVzIgogbXNnc3RyICJpbi1yZXBseS10byBhYmVycmFudCA6ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjExNDYKKyM6IGJ1aWx0aW4vbG9nLmM6MTI1NQogbXNnaWQgImdpdCBmb3JtYXQtcGF0Y2ggWzxvcHRpb25zPl0gWzxzaW5jZT4gfCA8cmV2aXNpb24tcmFuZ2U+XSIKIG1zZ3N0ciAiZ2l0IGZvcm1hdC1wYXRjaCBbPG9wdGlvbnM+XSBbPGRlcHVpcz4gfCA8cGxhZ2UgZGUgcsOpdmlzaW9ucz5dIgogCi0jOiBidWlsdGluL2xvZy5jOjEyMDQKLW1zZ2lkICJUd28gb3V0cHV0IGRpcmVjdG9yaWVzPyIKLW1zZ3N0ciAiRGV1eCByw6lwZXJ0b2lyZXMgZGUgc29ydGllID8iCisjOiBidWlsdGluL2xvZy5jOjEzMTMKK21zZ2lkICJ0d28gb3V0cHV0IGRpcmVjdG9yaWVzPyIKK21zZ3N0ciAiZGV1eCByw6lwZXJ0b2lyZXMgZGUgc29ydGllwqA/IgogCi0jOiBidWlsdGluL2xvZy5jOjEzMTEgYnVpbHRpbi9sb2cuYzoyMDU0IGJ1aWx0aW4vbG9nLmM6MjA1NiBidWlsdGluL2xvZy5jOjIwNjgKKyM6IGJ1aWx0aW4vbG9nLmM6MTQyNCBidWlsdGluL2xvZy5jOjIxOTcgYnVpbHRpbi9sb2cuYzoyMTk5IGJ1aWx0aW4vbG9nLmM6MjIxMQogIywgYy1mb3JtYXQKLW1zZ2lkICJVbmtub3duIGNvbW1pdCAlcyIKLW1zZ3N0ciAiQ29tbWl0IGluY29ubnUgJXMiCittc2dpZCAidW5rbm93biBjb21taXQgJXMiCittc2dzdHIgImNvbW1pdCBpbmNvbm51ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMjEgYnVpbHRpbi9ub3Rlcy5jOjg5NCBidWlsdGluL3RhZy5jOjUyNgorIzogYnVpbHRpbi9sb2cuYzoxNDM0IGJ1aWx0aW4vcmVwbGFjZS5jOjU4IGJ1aWx0aW4vcmVwbGFjZS5jOjIwNworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjEwCiAjLCBjLWZvcm1hdAotbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgotbXNnc3RyICJJbXBvc3NpYmxlIGRlIHLDqXNvdWRyZSAnJXMnIGNvbW1lIHVuZSByw6lmw6lyZW5jZSB2YWxpZGUuIgorbXNnaWQgImZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYiCittc2dzdHIgIsOpY2hlYyDDoCByw6lzb3VkcmUgJyVzJyBjb21tZSB1bmUgcsOpZsOpcmVuY2UgdmFsaWRlIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMjYKLW1zZ2lkICJDb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlLiIKLW1zZ3N0ciAiSW1wb3NzaWJsZSBkZSB0cm91dmVyIGxhIGJhc2UgZGUgZnVzaW9uIGV4YWN0ZS4iCisjOiBidWlsdGluL2xvZy5jOjE0MzkKK21zZ2lkICJjb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHRyb3V2ZXIgbGEgYmFzZSBkZSBmdXNpb24gZXhhY3RlIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ0MwogbXNnaWQgIiIKLSJGYWlsZWQgdG8gZ2V0IHVwc3RyZWFtLCBpZiB5b3Ugd2FudCB0byByZWNvcmQgYmFzZSBjb21taXQgYXV0b21hdGljYWxseSxcbiIKKyJmYWlsZWQgdG8gZ2V0IHVwc3RyZWFtLCBpZiB5b3Ugd2FudCB0byByZWNvcmQgYmFzZSBjb21taXQgYXV0b21hdGljYWxseSxcbiIKICJwbGVhc2UgdXNlIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG8gdG8gdHJhY2sgYSByZW1vdGUgYnJhbmNoLlxuIgotIk9yIHlvdSBjb3VsZCBzcGVjaWZ5IGJhc2UgY29tbWl0IGJ5IC0tYmFzZT08YmFzZS1jb21taXQtaWQ+IG1hbnVhbGx5LiIKKyJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseSIKIG1zZ3N0ciAiIgotIkltcG9zc2libGUgZGUgcsOpY3Vww6lyZXIgbCdhbW9udCwgc2kgdm91cyB2b3VsZXogZW5yZWdpc3RyZXIgbGUgY29tbWl0IGRlICIKKyJpbXBvc3NpYmxlIGRlIHLDqWN1cMOpcmVyIGwnYW1vbnQsIHNpIHZvdXMgdm91bGV6IGVucmVnaXN0cmVyIGxlIGNvbW1pdCBkZSAiCiAiYmFzZSBhdXRvbWF0aXF1ZW1lbnQsXG4iCiAidmV1aWxsZXogdXRpbGlzZXIgZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10byBwb3VyIHN1aXZyZSB1bmUgYnJhbmNoZSAiCi0iZGlzdGFudGVcbiIKLSJvdSB2b3VzIHBvdXZleiBzcMOpY2lmaWVyIGxlIGNvbW1pdCBkZSBiYXNlIHBhciAtLWJhc2U9PGlkLWR1LWNvbW1pdC1kZS1iYXNlPiAiCi0ibWFudWVsbGVtZW50LiIKKyJkaXN0YW50ZS5cbiIKKyJPdSB2b3VzIHBvdXZleiBzcMOpY2lmaWVyIGxlIGNvbW1pdCBkZSBiYXNlIHBhciAtLWJhc2U9PGlkLWR1LWNvbW1pdC1kZS1iYXNlPiAiCisibWFudWVsbGVtZW50IgogCi0jOiBidWlsdGluL2xvZy5jOjEzNTAKLW1zZ2lkICJGYWlsZWQgdG8gZmluZCBleGFjdCBtZXJnZSBiYXNlIgotbXNnc3RyICJJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgbGEgYmFzZSBkZSBmdXNpb24gZXhhY3RlIgorIzogYnVpbHRpbi9sb2cuYzoxNDYzCittc2dpZCAiZmFpbGVkIHRvIGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKK21zZ3N0ciAiw6ljaGVjIMOgIHRyb3V2ZXIgbGEgYmFzZSBkZSBmdXNpb24gZXhhY3RlIgogCi0jOiBidWlsdGluL2xvZy5jOjEzNjEKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ3NAogbXNnaWQgImJhc2UgY29tbWl0IHNob3VsZCBiZSB0aGUgYW5jZXN0b3Igb2YgcmV2aXNpb24gbGlzdCIKIG1zZ3N0ciAibGUgY29tbWl0IGRlIGJhc2UgZGV2cmFpdCDDqnRyZSBsJ2FuY8OqdHJlIGRlIGxhIGxpc3RlIGRlIHLDqXZpc2lvbnMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTM2NQorIzogYnVpbHRpbi9sb2cuYzoxNDc4CiBtc2dpZCAiYmFzZSBjb21taXQgc2hvdWxkbid0IGJlIGluIHJldmlzaW9uIGxpc3QiCiBtc2dzdHIgImxlIGNvbW1pdCBkZSBiYXNlIG5lIGRldnJhaXQgcGFzIGZhaXJlIHBhcnRpZSBkZSBsYSBsaXN0ZSBkZSByw6l2aXNpb25zIgogCi0jOiBidWlsdGluL2xvZy5jOjE0MTgKKyM6IGJ1aWx0aW4vbG9nLmM6MTUzMQogbXNnaWQgImNhbm5vdCBnZXQgcGF0Y2ggaWQiCiBtc2dzdHIgImltcG9zc2libGUgZCdvYnRlbmlyIGwnaWQgZHUgcGF0Y2giCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTQ3MAorIzogYnVpbHRpbi9sb2cuYzoxNTgzCiBtc2dpZCAiZmFpbGVkIHRvIGluZmVyIHJhbmdlLWRpZmYgcmFuZ2VzIgogbXNnc3RyICLDqWNoZWMgZCdpbmbDqXJlbmNlIGQnaW50ZXJ2YWxsZXMgZGUgZGlmZsOpcmVuY2UgZCdpbnRlcnZhbGxlcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTE1CisjOiBidWlsdGluL2xvZy5jOjE2MjkKIG1zZ2lkICJ1c2UgW1BBVENIIG4vbV0gZXZlbiB3aXRoIGEgc2luZ2xlIHBhdGNoIgogbXNnc3RyICJ1dGlsaXNlciBbUEFUQ0ggbi9tXSBtw6ptZSBhdmVjIHVuIHBhdGNoIHVuaXF1ZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTE4CisjOiBidWlsdGluL2xvZy5jOjE2MzIKIG1zZ2lkICJ1c2UgW1BBVENIXSBldmVuIHdpdGggbXVsdGlwbGUgcGF0Y2hlcyIKIG1zZ3N0ciAidXRpbGlzZXIgW1BBVENIXSBtw6ptZSBhdmVjIGRlcyBwYXRjaHMgbXVsdGlwbGVzIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MjIKKyM6IGJ1aWx0aW4vbG9nLmM6MTYzNgogbXNnaWQgInByaW50IHBhdGNoZXMgdG8gc3RhbmRhcmQgb3V0IgogbXNnc3RyICJhZmZpY2hlciBsZXMgcGF0Y2hzIHN1ciBsYSBzb3J0aWUgc3RhbmRhcmQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyNAorIzogYnVpbHRpbi9sb2cuYzoxNjM4CiBtc2dpZCAiZ2VuZXJhdGUgYSBjb3ZlciBsZXR0ZXIiCiBtc2dzdHIgImfDqW7DqXJlciB1bmUgbGV0dHJlIGRlIG1vdGl2YXRpb24iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyNgorIzogYnVpbHRpbi9sb2cuYzoxNjQwCiBtc2dpZCAidXNlIHNpbXBsZSBudW1iZXIgc2VxdWVuY2UgZm9yIG91dHB1dCBmaWxlIG5hbWVzIgogbXNnc3RyICIiCiAidXRpbGlzZXIgdW5lIHPDqXF1ZW5jZSBzaW1wbGUgZGUgbm9tYnJlcyBwb3VyIGxlcyBub20gZGVzIGZpY2hpZXJzIGRlIHNvcnRpZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI3CisjOiBidWlsdGluL2xvZy5jOjE2NDEKIG1zZ2lkICJzZngiCiBtc2dzdHIgInNmeCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI4CisjOiBidWlsdGluL2xvZy5jOjE2NDIKIG1zZ2lkICJ1c2UgPHNmeD4gaW5zdGVhZCBvZiAnLnBhdGNoJyIKIG1zZ3N0ciAidXRpbGlzZXIgPHNmeD4gYXUgbGlldSBkZSAnLnBhdGNoJyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTMwCisjOiBidWlsdGluL2xvZy5jOjE2NDQKIG1zZ2lkICJzdGFydCBudW1iZXJpbmcgcGF0Y2hlcyBhdCA8bj4gaW5zdGVhZCBvZiAxIgogbXNnc3RyICJkw6ltYXJyZXIgbGEgbnVtw6lyb3RhdGlvbiBkZXMgcGF0Y2hzIMOgIDxuPiBhdSBsaWV1IGRlIDEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzMgorIzogYnVpbHRpbi9sb2cuYzoxNjQ2CiBtc2dpZCAibWFyayB0aGUgc2VyaWVzIGFzIE50aCByZS1yb2xsIgogbXNnc3RyICJtYXJxdWVyIGxhIHPDqXJpZSBjb21tZSB1bmUgTmnDqG1lIHLDqcOpZGl0aW9uIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzQKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0OAogbXNnaWQgIlVzZSBbUkZDIFBBVENIXSBpbnN0ZWFkIG9mIFtQQVRDSF0iCiBtc2dzdHIgInV0aWxpc2VyIFtSRkMgUEFUQ0hdIGF1IGxpZXUgZGUgW1BBVENIXSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTM3CisjOiBidWlsdGluL2xvZy5jOjE2NTEKK21zZ2lkICJjb3Zlci1mcm9tLWRlc2NyaXB0aW9uLW1vZGUiCittc2dzdHIgImNvdmVyLWZyb20tZGVzY3JpcHRpb24tbW9kZSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjUyCittc2dpZCAiZ2VuZXJhdGUgcGFydHMgb2YgYSBjb3ZlciBsZXR0ZXIgYmFzZWQgb24gYSBicmFuY2gncyBkZXNjcmlwdGlvbiIKK21zZ3N0ciAiIgorImfDqW7DqXJlciBkZXMgcGFydGllcyBkZSBsYSBsZXR0cmUgZCdpbnRyb2R1Y3Rpb24gw6AgcGFydGlyIGRlIGxhIGRlc2NyaXB0aW9uICIKKyJkZSBsYSBicmFuY2hlIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTQKIG1zZ2lkICJVc2UgWzxwcmVmaXg+XSBpbnN0ZWFkIG9mIFtQQVRDSF0iCiBtc2dzdHIgInV0aWxpc2VyIFs8cHLDqWZpeGU+XSBhdSBsaWV1IGRlIFtQQVRDSF0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU0MAorIzogYnVpbHRpbi9sb2cuYzoxNjU3CiBtc2dpZCAic3RvcmUgcmVzdWx0aW5nIGZpbGVzIGluIDxkaXI+IgogbXNnc3RyICJzdG9ja2VyIGxlcyBmaWNoaWVycyByw6lzdWx0YXRzIGRhbnMgPHLDqXBlcnRvaXJlPiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTQzCisjOiBidWlsdGluL2xvZy5jOjE2NjAKIG1zZ2lkICJkb24ndCBzdHJpcC9hZGQgW1BBVENIXSIKIG1zZ3N0ciAibmUgcGFzIHJldGlyZXIvYWpvdXRlciBbUEFUQ0hdIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDYKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2MwogbXNnaWQgImRvbid0IG91dHB1dCBiaW5hcnkgZGlmZnMiCiBtc2dzdHIgIm5lIHBhcyBpbXByaW1lciBsZXMgZGlmZnMgYmluYWlyZXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU0OAorIzogYnVpbHRpbi9sb2cuYzoxNjY1CiBtc2dpZCAib3V0cHV0IGFsbC16ZXJvIGhhc2ggaW4gRnJvbSBoZWFkZXIiCiBtc2dzdHIgIsOpY3JpcmUgdW5lIGVtcHJlaW50ZSDDoCB6w6lybyBkYW5zIGwnZW50w6p0ZSBGcm9tIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2NwogbXNnaWQgImRvbid0IGluY2x1ZGUgYSBwYXRjaCBtYXRjaGluZyBhIGNvbW1pdCB1cHN0cmVhbSIKIG1zZ3N0ciAibmUgcGFzIGluY2x1cmUgdW4gcGF0Y2ggY29ycmVzcG9uZGFudCDDoCB1biBjb21taXQgYW1vbnQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1MgorIzogYnVpbHRpbi9sb2cuYzoxNjY5CiBtc2dpZCAic2hvdyBwYXRjaCBmb3JtYXQgaW5zdGVhZCBvZiBkZWZhdWx0IChwYXRjaCArIHN0YXQpIgogbXNnc3RyICJhZmZpY2hlciBsZSBmb3JtYXQgZHUgcGF0Y2ggYXUgbGlldSBkdSBkw6lmYXV0IChwYXRjaCArIHN0YXQpIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTQKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MQogbXNnaWQgIk1lc3NhZ2luZyIKIG1zZ3N0ciAiQ29tbXVuaWNhdGlvbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU1CisjOiBidWlsdGluL2xvZy5jOjE2NzIKIG1zZ2lkICJoZWFkZXIiCiBtc2dzdHIgImVuLXTDqnRlIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTYKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MwogbXNnaWQgImFkZCBlbWFpbCBoZWFkZXIiCiBtc2dzdHIgImFqb3V0ZXIgbCdlbi10w6p0ZSBkZSBjb3VycmllbCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU3IGJ1aWx0aW4vbG9nLmM6MTU1OQorIzogYnVpbHRpbi9sb2cuYzoxNjc0IGJ1aWx0aW4vbG9nLmM6MTY3NgogbXNnaWQgImVtYWlsIgogbXNnc3RyICJjb3VycmllbCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU3CisjOiBidWlsdGluL2xvZy5jOjE2NzQKIG1zZ2lkICJhZGQgVG86IGhlYWRlciIKIG1zZ3N0ciAiYWpvdXRlciBsJ2VuLXTDqnRlIFwiVG86XCIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1OQorIzogYnVpbHRpbi9sb2cuYzoxNjc2CiBtc2dpZCAiYWRkIENjOiBoZWFkZXIiCiBtc2dzdHIgImFqb3V0ZXIgbCdlbi10w6p0ZSBcIkNjOlwiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjEKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3OAogbXNnaWQgImlkZW50IgogbXNnc3RyICJpZGVudCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTYyCisjOiBidWlsdGluL2xvZy5jOjE2NzkKIG1zZ2lkICJzZXQgRnJvbSBhZGRyZXNzIHRvIDxpZGVudD4gKG9yIGNvbW1pdHRlciBpZGVudCBpZiBhYnNlbnQpIgogbXNnc3RyICIiCiAicmVuc2VpZ25lciBsJ2FkcmVzc2UgRnJvbSDDoCA8aWRlbnQ+IChvdSDDoCBsJ2lkZW50IGR1IHZhbGlkYXRldXIgc2kgYWJzZW50KSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTY0CisjOiBidWlsdGluL2xvZy5jOjE2ODEKIG1zZ2lkICJtZXNzYWdlLWlkIgogbXNnc3RyICJpZC1tZXNzYWdlIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjUKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4MgogbXNnaWQgIm1ha2UgZmlyc3QgbWFpbCBhIHJlcGx5IHRvIDxtZXNzYWdlLWlkPiIKIG1zZ3N0ciAicsOpcG9uZHJlIGRhbnMgbGUgcHJlbWllciBtZXNzYWdlIMOgIDxpZC1tZXNzYWdlPiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTY2IGJ1aWx0aW4vbG9nLmM6MTU2OQorIzogYnVpbHRpbi9sb2cuYzoxNjgzIGJ1aWx0aW4vbG9nLmM6MTY4NgogbXNnaWQgImJvdW5kYXJ5IgogbXNnc3RyICJsaW1pdGUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NworIzogYnVpbHRpbi9sb2cuYzoxNjg0CiBtc2dpZCAiYXR0YWNoIHRoZSBwYXRjaCIKIG1zZ3N0ciAiYXR0YWNoZXIgbGUgcGF0Y2giCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3MAorIzogYnVpbHRpbi9sb2cuYzoxNjg3CiBtc2dpZCAiaW5saW5lIHRoZSBwYXRjaCIKIG1zZ3N0ciAicGF0Y2ggw6AgbCdpbnTDqXJpZXVyIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzQKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5MQogbXNnaWQgImVuYWJsZSBtZXNzYWdlIHRocmVhZGluZywgc3R5bGVzOiBzaGFsbG93LCBkZWVwIgogbXNnc3RyICIiCiAiYWN0aXZlciBsJ2VuZmlsYWdlIGRlIG1lc3NhZ2UsIHN0eWxlcyA6IHNoYWxsb3cgKHN1cGVyZmljaWVsKSwgZGVlcCAocHJvZm9uZCkiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3NgorIzogYnVpbHRpbi9sb2cuYzoxNjkzCiBtc2dpZCAic2lnbmF0dXJlIgogbXNnc3RyICJzaWduYXR1cmUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3NworIzogYnVpbHRpbi9sb2cuYzoxNjk0CiBtc2dpZCAiYWRkIGEgc2lnbmF0dXJlIgogbXNnc3RyICJham91dGVyIHVuZSBzaWduYXR1cmUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3OAorIzogYnVpbHRpbi9sb2cuYzoxNjk1CiBtc2dpZCAiYmFzZS1jb21taXQiCiBtc2dzdHIgImNvbW1pdC1kZS1iYXNlIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5NgogbXNnaWQgImFkZCBwcmVyZXF1aXNpdGUgdHJlZSBpbmZvIHRvIHRoZSBwYXRjaCBzZXJpZXMiCiBtc2dzdHIgIkFqb3V0ZXIgdW4gYXJicmUgcHLDqXJlcXVpcyDDoCBsYSBzw6lyaWUgZGUgcGF0Y2hzIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODEKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5OAogbXNnaWQgImFkZCBhIHNpZ25hdHVyZSBmcm9tIGEgZmlsZSIKIG1zZ3N0ciAiYWpvdXRlciB1bmUgc2lnbmF0dXJlIGRlcHVpcyB1biBmaWNoaWVyIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODIKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5OQogbXNnaWQgImRvbid0IHByaW50IHRoZSBwYXRjaCBmaWxlbmFtZXMiCiBtc2dzdHIgIm5lIHBhcyBhZmZpY2hlciBsZXMgbm9tcyBkZSBmaWNoaWVycyBkZXMgcGF0Y2hzIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODQKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMQogbXNnaWQgInNob3cgcHJvZ3Jlc3Mgd2hpbGUgZ2VuZXJhdGluZyBwYXRjaGVzIgogbXNnc3RyICIiCiAiYWZmaWNoZXIgbGEgYmFycmUgZGUgcHJvZ3Jlc3Npb24gZHVyYW50IGxhIHBoYXNlIGRlIGfDqW7DqXJhdGlvbiBkZXMgcGF0Y2hzIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODUKLW1zZ2lkICJyZXYiCi1tc2dzdHIgInLDqXYiCi0KLSM6IGJ1aWx0aW4vbG9nLmM6MTU4NgorIzogYnVpbHRpbi9sb2cuYzoxNzAzCiBtc2dpZCAic2hvdyBjaGFuZ2VzIGFnYWluc3QgPHJldj4gaW4gY292ZXIgbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAiIgogImFmZmljaGVyIGxlcyBtb2RpZmljYXRpb25zIHBhciByYXBwb3J0IMOgIDxyw6l2PiBkYW5zIGxhIHByZW1pw6hyZSBwYWdlIG91IHVuZSAiCiAicnVzdGluZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTg5CisjOiBidWlsdGluL2xvZy5jOjE3MDYKIG1zZ2lkICJzaG93IGNoYW5nZXMgYWdhaW5zdCA8cmVmc3BlYz4gaW4gY292ZXIgbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAiIgogImFmZmljaGVyIGxlcyBtb2RpZmljYXRpb25zIHBhciByYXBwb3J0IMOgIDxyZWZzcGVjPiBkYW5zIGxhIHByZW1pw6hyZSBwYWdlIG91ICIKICJ1bmUgcnVzdGluZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTkxCisjOiBidWlsdGluL2xvZy5jOjE3MDgKIG1zZ2lkICJwZXJjZW50YWdlIGJ5IHdoaWNoIGNyZWF0aW9uIGlzIHdlaWdodGVkIgogbXNnc3RyICJwb3VyY2VudGFnZSBwYXIgbGVxdWVsIGxhIGNyw6lhdGlvbiBlc3QgcG9uZMOpcsOpZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjY2CisjOiBidWlsdGluL2xvZy5jOjE3OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBpZGVudCBsaW5lOiAlcyIKIG1zZ3N0ciAibGlnbmUgZCdpZGVudGlmaWNhdGlvbiBpbnZhbGlkZSA6ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjE2ODEKKyM6IGJ1aWx0aW4vbG9nLmM6MTgwNwogbXNnaWQgIi1uIGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICItbiBldCAtayBzb250IG11dHVlbGxlbWVudCBleGNsdXNpZnMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY4MworIzogYnVpbHRpbi9sb2cuYzoxODA5CiBtc2dpZCAiLS1zdWJqZWN0LXByZWZpeC8tLXJmYyBhbmQgLWsgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLS1zdWJqZWN0LXByZWZpeC8tLXJmYyBldCAtayBzb250IG11dHVlbGxlbWVudCBleGNsdXNpZnMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5MQorIzogYnVpbHRpbi9sb2cuYzoxODE3CiBtc2dpZCAiLS1uYW1lLW9ubHkgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS1uYW1lLW9ubHkgbidhIHBhcyBkZSBzZW5zIgogCi0jOiBidWlsdGluL2xvZy5jOjE2OTMKKyM6IGJ1aWx0aW4vbG9nLmM6MTgxOQogbXNnaWQgIi0tbmFtZS1zdGF0dXMgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS1uYW1lLXN0YXR1cyBuJ2EgcGFzIGRlIHNlbnMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5NQorIzogYnVpbHRpbi9sb2cuYzoxODIxCiBtc2dpZCAiLS1jaGVjayBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLWNoZWNrIG4nYSBwYXMgZGUgc2VucyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNzI3CisjOiBidWlsdGluL2xvZy5jOjE4NTQKIG1zZ2lkICJzdGFuZGFyZCBvdXRwdXQsIG9yIGRpcmVjdG9yeSwgd2hpY2ggb25lPyIKIG1zZ3N0ciAic29ydGllIHN0YW5kYXJkLCBvdSByw6lwZXJ0b2lyZSwgbGVxdWVsID8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTcyOQotIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgotbXNnc3RyICJJbXBvc3NpYmxlIGRlIGNyw6llciBsZSByw6lwZXJ0b2lyZSAnJXMnIgotCi0jOiBidWlsdGluL2xvZy5jOjE4MTYKKyM6IGJ1aWx0aW4vbG9nLmM6MTk1OAogbXNnaWQgIi0taW50ZXJkaWZmIHJlcXVpcmVzIC0tY292ZXItbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAiLS1pbnRlcmRpZmYgcmVxdWllcnQgLS1jb3Zlci1sZXR0ZXIgb3UgdW5lIHJ1c3RpbmUgdW5pcXVlIgogCi0jOiBidWlsdGluL2xvZy5jOjE4MjAKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2MgogbXNnaWQgIkludGVyZGlmZjoiCiBtc2dzdHIgIkludGVyZGlmZsKgOiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODIxCisjOiBidWlsdGluL2xvZy5jOjE5NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW50ZXJkaWZmIGFnYWluc3QgdiVkOiIKIG1zZ3N0ciAiSW50ZXJkaWZmIGNvbnRyZSB2JWTCoDoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgyNworIzogYnVpbHRpbi9sb2cuYzoxOTY5CiBtc2dpZCAiLS1jcmVhdGlvbi1mYWN0b3IgcmVxdWlyZXMgLS1yYW5nZS1kaWZmIgogbXNnc3RyICItLWNyZWF0aW9uLWZhY3RvciByZXF1aWVydCAtLXJhbmdlLWRpZmYiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgzMQorIzogYnVpbHRpbi9sb2cuYzoxOTczCiBtc2dpZCAiLS1yYW5nZS1kaWZmIHJlcXVpcmVzIC0tY292ZXItbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAiLS1yYW5nZS1kaWZmIHJlcXVpZXJ0IC0tY292ZXItbGV0dGVyIG91IHVuZSBydXN0aW5lIHVuaXF1ZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxODM5CisjOiBidWlsdGluL2xvZy5jOjE5ODEKIG1zZ2lkICJSYW5nZS1kaWZmOiIKIG1zZ3N0ciAiRGlmZi1pbnRlcnZhbGxlwqA6IgogCi0jOiBidWlsdGluL2xvZy5jOjE4NDAKKyM6IGJ1aWx0aW4vbG9nLmM6MTk4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJSYW5nZS1kaWZmIGFnYWluc3QgdiVkOiIKIG1zZ3N0ciAiRGlmZi1pbnRlcnZhbGxlIGNvbnRyZSB2JWTCoDoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg1MQorIzogYnVpbHRpbi9sb2cuYzoxOTkzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHNpZ25hdHVyZSBmaWxlICclcyciCiBtc2dzdHIgImxlY3R1cmUgZHUgZmljaGllciBkZSBzaWduYXR1cmUgJyVzJyBpbXBvc3NpYmxlIgogCi0jOiBidWlsdGluL2xvZy5jOjE4ODcKKyM6IGJ1aWx0aW4vbG9nLmM6MjAyOQogbXNnaWQgIkdlbmVyYXRpbmcgcGF0Y2hlcyIKIG1zZ3N0ciAiR8OpbsOpcmF0aW9uIGRlcyBwYXRjaHMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTkzMQotbXNnaWQgIkZhaWxlZCB0byBjcmVhdGUgb3V0cHV0IGZpbGVzIgotbXNnc3RyICLDiWNoZWMgZGUgY3LDqWF0aW9uIGRlcyBmaWNoaWVycyBlbiBzb3J0aWUiCisjOiBidWlsdGluL2xvZy5jOjIwNzMKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIG91dHB1dCBmaWxlcyIKK21zZ3N0ciAiw6ljaGVjIGRlIGNyw6lhdGlvbiBkZXMgZmljaGllcnMgZW4gc29ydGllIgogCi0jOiBidWlsdGluL2xvZy5jOjE5ODkKKyM6IGJ1aWx0aW4vbG9nLmM6MjEzMgogbXNnaWQgImdpdCBjaGVycnkgWy12XSBbPHVwc3RyZWFtPiBbPGhlYWQ+IFs8bGltaXQ+XV1dIgogbXNnc3RyICJnaXQgY2hlcnJ5IFstdl0gWzxicmFuY2hlX2Ftb250PiBbPGhlYWQ+IFs8bGltaXRlPl1dXSIKIAotIzogYnVpbHRpbi9sb2cuYzoyMDQzCisjOiBidWlsdGluL2xvZy5jOjIxODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNvdWxkIG5vdCBmaW5kIGEgdHJhY2tlZCByZW1vdGUgYnJhbmNoLCBwbGVhc2Ugc3BlY2lmeSA8dXBzdHJlYW0+IG1hbnVhbGx5LlxuIgpAQCAtMTI4NTMsMTEwICsxNjAzNywxMTAgQEAKICJJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgdW5lIGJyYW5jaGUgZGlzdGFudGUgc3VpdmllLCBtZXJjaSBkZSBzcMOpY2lmaWVyICIKICI8YnJhbmNoZV9hbW9udD4gbWFudWVsbGVtZW50LlxuIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NDY5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NDcwCiBtc2dpZCAiZ2l0IGxzLWZpbGVzIFs8b3B0aW9ucz5dIFs8ZmlsZT4uLi5dIgogbXNnc3RyICJnaXQgbHMtZmlsZXMgWzxvcHRpb25zPl0gWzxmaWNoaWVyPi4uLl0iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjYKIG1zZ2lkICJpZGVudGlmeSB0aGUgZmlsZSBzdGF0dXMgd2l0aCB0YWdzIgogbXNnc3RyICJpZGVudGlmaWVyIGwnw6l0YXQgZGUgZmljaGllciBhdmVjIGxlcyDDqXRpcXVldHRlcyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUyNworIzogYnVpbHRpbi9scy1maWxlcy5jOjUyOAogbXNnaWQgInVzZSBsb3dlcmNhc2UgbGV0dGVycyBmb3IgJ2Fzc3VtZSB1bmNoYW5nZWQnIGZpbGVzIgogbXNnc3RyICJ1dGlsaXNlciBkZXMgbWludXNjdWxlcyBwb3VyIGxlcyBmaWNoaWVycyAnYXNzdW3DqXMgaW5jaGFuZ8OpcyciCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzAKIG1zZ2lkICJ1c2UgbG93ZXJjYXNlIGxldHRlcnMgZm9yICdmc21vbml0b3IgY2xlYW4nIGZpbGVzIgogbXNnc3RyICJ1dGlsaXNlciBkZXMgbWludXNjdWxlcyBwb3VyIGxlcyBmaWNoaWVycyAnZnNtb25pdG9yIGNsZWFuJyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMgogbXNnaWQgInNob3cgY2FjaGVkIGZpbGVzIGluIHRoZSBvdXRwdXQgKGRlZmF1bHQpIgogbXNnc3RyICJhZmZpY2hlciBsZXMgZmljaGllcnMgbWlzIGVuIGNhY2hlIGRhbnMgbGEgc29ydGllIChkw6lmYXV0KSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNAogbXNnaWQgInNob3cgZGVsZXRlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJhZmZpY2hlciBsZXMgZmljaGllcnMgc3VwcHJpbcOpcyBkYW5zIGxhIHNvcnRpZSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNgogbXNnaWQgInNob3cgbW9kaWZpZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAiYWZmaWNoZXIgbGVzIGZpY2hpZXJzIG1vZGlmacOpcyBkYW5zIGxhIHNvcnRpZSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOAogbXNnaWQgInNob3cgb3RoZXIgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAiYWZmaWNoZXIgbGVzIGF1dHJlcyBmaWNoaWVycyBkYW5zIGxhIHNvcnRpZSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MAogbXNnaWQgInNob3cgaWdub3JlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJhZmZpY2hlciBsZXMgZmljaGllcnMgaWdub3LDqXMgZGFucyBsYSBzb3J0aWUiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDIKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDMKIG1zZ2lkICJzaG93IHN0YWdlZCBjb250ZW50cycgb2JqZWN0IG5hbWUgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAiYWZmaWNoZXIgbGVzIG5vbSBkZXMgb2JqZXRzIGluZGV4w6lzIGRhbnMgbGEgc29ydGllIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ0CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ1CiBtc2dpZCAic2hvdyBmaWxlcyBvbiB0aGUgZmlsZXN5c3RlbSB0aGF0IG5lZWQgdG8gYmUgcmVtb3ZlZCIKIG1zZ3N0ciAiIgogImFmZmljaGVyIGxlcyBmaWNoaWVycyBkdSBzeXN0w6htZSBkZSBmaWNoaWVycyBxdWkgb250IGJlc29pbiBkJ8OqdHJlIHN1cHByaW3DqXMiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDYKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDcKIG1zZ2lkICJzaG93ICdvdGhlcicgZGlyZWN0b3JpZXMnIG5hbWVzIG9ubHkiCiBtc2dzdHIgImFmZmljaGVyIHNldWxlbWVudCBsZXMgbm9tcyBkZXMgcsOpcGVydG9pcmVzICdvdGhlciciCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDgKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDkKIG1zZ2lkICJzaG93IGxpbmUgZW5kaW5ncyBvZiBmaWxlcyIKIG1zZ3N0ciAiYWZmaWNoZXIgbGVzIGZpbnMgZGUgbGlnbmVzIGRlcyBmaWNoaWVycyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1MAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1MQogbXNnaWQgImRvbid0IHNob3cgZW1wdHkgZGlyZWN0b3JpZXMiCiBtc2dzdHIgIm5lIHBhcyBhZmZpY2hlciBsZXMgcsOpcGVydG9pcmVzIHZpZGVzIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTUzCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU0CiBtc2dpZCAic2hvdyB1bm1lcmdlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJhZmZpY2hlciBsZXMgZmljaGllcnMgbm9uIGZ1c2lvbm7DqXMgZGFucyBsYSBzb3J0aWUiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTYKIG1zZ2lkICJzaG93IHJlc29sdmUtdW5kbyBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiYWZmaWNoZXIgbCdpbmZvcm1hdGlvbiByZXNvbHYtdW5kbyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1OAogbXNnaWQgInNraXAgZmlsZXMgbWF0Y2hpbmcgcGF0dGVybiIKIG1zZ3N0ciAic2F1dGVyIGxlcyBmaWNoaWVycyBjb3JyZXNwb25kYW50IGF1IG1vdGlmIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTYwCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTYxCiBtc2dpZCAiZXhjbHVkZSBwYXR0ZXJucyBhcmUgcmVhZCBmcm9tIDxmaWxlPiIKIG1zZ3N0ciAibGVzIG1vdGlmcyBkJ2V4Y2x1c2lvbiBzb250IGx1cyBkZXB1aXMgPGZpY2hpZXI+IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTYzCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTY0CiBtc2dpZCAicmVhZCBhZGRpdGlvbmFsIHBlci1kaXJlY3RvcnkgZXhjbHVkZSBwYXR0ZXJucyBpbiA8ZmlsZT4iCiBtc2dzdHIgImxpcmUgZGVzIG1vdGlmcyBkJ2V4Y2x1c2lvbiBhZGRpdGlvbm5lbHMgcGFyIHLDqXBlcnRvaXJlIGRhbnMgPGZpY2hpZXI+IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTY1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTY2CiBtc2dpZCAiYWRkIHRoZSBzdGFuZGFyZCBnaXQgZXhjbHVzaW9ucyIKIG1zZ3N0ciAiYWpvdXRlciBsZXMgZXhjbHVzaW9ucyBnaXQgc3RhbmRhcmQiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzAKIG1zZ2lkICJtYWtlIHRoZSBvdXRwdXQgcmVsYXRpdmUgdG8gdGhlIHByb2plY3QgdG9wIGRpcmVjdG9yeSIKIG1zZ3N0ciAiYWZmaWNoZXIgZW4gcmVsYXRpZiBwYXIgcmFwcG9ydCBhdSByw6lwZXJ0b2lyZSByYWNpbmUgZHUgcHJvamV0IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTcyCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTczCiBtc2dpZCAicmVjdXJzZSB0aHJvdWdoIHN1Ym1vZHVsZXMiCiBtc2dzdHIgInBhcmNvdXJpciByw6ljdXJzaXZlbWVudCBsZXMgc291cy1tb2R1bGVzIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTc0CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc1CiBtc2dpZCAiaWYgYW55IDxmaWxlPiBpcyBub3QgaW4gdGhlIGluZGV4LCB0cmVhdCB0aGlzIGFzIGFuIGVycm9yIgogbXNnc3RyICJzaSB1biA8ZmljaGllcj4gbidlc3QgcGFzIGRhbnMgbCdpbmRleCwgdHJhaXRlciBjZWxhIGNvbW1lIHVuZSBlcnJldXIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzYKIG1zZ2lkICJ0cmVlLWlzaCIKIG1zZ3N0ciAiYXJicmUgb3UgYXBwYXJlbnTDqSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NwogbXNnaWQgInByZXRlbmQgdGhhdCBwYXRocyByZW1vdmVkIHNpbmNlIDx0cmVlLWlzaD4gYXJlIHN0aWxsIHByZXNlbnQiCiBtc2dzdHIgIiIKICJjb25zaWTDqXJlciBxdWUgbGVzIGNoZW1pbnMgc3VwcHJpbcOpcyBkZXB1aXMgPGFyYnJlIG91IGFwcGFyZW50w6k+IHNvbnQgIgogInRvdWpvdXJzIHByw6lzZW50cyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3OAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3OQogbXNnaWQgInNob3cgZGVidWdnaW5nIGRhdGEiCiBtc2dzdHIgImFmZmljaGVyIGxlcyBkb25uw6llcyBkZSBkw6lib2dhZ2UiCiAKQEAgLTEyOTc0LDcgKzE2MTU4LDcgQEAKIG1zZ2lkICJkbyBub3QgcHJpbnQgcmVtb3RlIFVSTCIKIG1zZ3N0ciAibmUgcGFzIGFmZmljaGVyIGxlcyBVUkwgZGlzdGFudGVzIgogCi0jOiBidWlsdGluL2xzLXJlbW90ZS5jOjYwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjIgYnVpbHRpbi9yZWJhc2UuYzo5MDMKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjAgYnVpbHRpbi9scy1yZW1vdGUuYzo2MiBidWlsdGluL3JlYmFzZS5jOjE1NjEKIG1zZ2lkICJleGVjIgogbXNnc3RyICJleMOpY3V0YWJsZSIKIApAQCAtMTI5OTgsMTMgKzE2MTgyLDEzIEBACiBtc2dpZCAidGFrZSB1cmwuPGJhc2U+Lmluc3RlYWRPZiBpbnRvIGFjY291bnQiCiBtc2dzdHIgInByZW5kcmUgZW4gY29tcHRlIHVybC48YmFzZT4uaW5zdGVhZE9mIgogCi0jOiBidWlsdGluL2xzLXJlbW90ZS5jOjczCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjcyCiBtc2dpZCAiZXhpdCB3aXRoIGV4aXQgY29kZSAyIGlmIG5vIG1hdGNoaW5nIHJlZnMgYXJlIGZvdW5kIgogbXNnc3RyICIiCiAic29ydGlyIGF2ZWMgdW4gY29kZSBkJ2VycmV1ciAyIHNpIGF1Y3VuZSBjb3JyZXNwb25kYW5jZSBkZSByw6lmw6lyZW5jZSBuJ2VzdCAiCiAidHJvdXbDqWUiCiAKLSM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzYKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzUKIG1zZ2lkICJzaG93IHVuZGVybHlpbmcgcmVmIGluIGFkZGl0aW9uIHRvIHRoZSBvYmplY3QgcG9pbnRlZCBieSBpdCIKIG1zZ3N0ciAiYWZmaWNoZXIgbGEgcsOpZiBzb3VzLWphY2VudGUgZW4gcGx1cyBkZSBsJ29iamV0IHBvaW50w6kgcGFyIGVsbGUiCiAKQEAgLTEzMDUxLDI2NSArMTYyMzUsMjg2IEBACiBtc2dpZCAiZW1wdHkgbWJveDogJyVzJyIKIG1zZ3N0ciAibWJveCB2aWRlwqA6ICclcyciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1MgorIzogYnVpbHRpbi9tZXJnZS5jOjU1CiBtc2dpZCAiZ2l0IG1lcmdlIFs8b3B0aW9ucz5dIFs8Y29tbWl0Pi4uLl0iCiBtc2dzdHIgImdpdCBtZXJnZSBbPG9wdGlvbnM+XSBbPGNvbW1pdD4uLi5dIgogCi0jOiBidWlsdGluL21lcmdlLmM6NTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1NgogbXNnaWQgImdpdCBtZXJnZSAtLWFib3J0IgogbXNnc3RyICJnaXQgbWVyZ2UgLS1hYm9ydCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjU0CisjOiBidWlsdGluL21lcmdlLmM6NTcKIG1zZ2lkICJnaXQgbWVyZ2UgLS1jb250aW51ZSIKIG1zZ3N0ciAiZ2l0IG1lcmdlIC0tY29udGludWUiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTkKIG1zZ2lkICJzd2l0Y2ggYG0nIHJlcXVpcmVzIGEgdmFsdWUiCiBtc2dzdHIgImxlIGNvbW11dGF0ZXVyIGBtJyBhIGJlc29pbiBkJ3VuZSB2YWxldXIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNzcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgcmVxdWlyZXMgYSB2YWx1ZSIKK21zZ3N0ciAibGUgY29tbXV0YXRldXIgJyVzJyBhIGJlc29pbiBkJ3VuZSB2YWxldXIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZpbmQgbWVyZ2Ugc3RyYXRlZ3kgJyVzJy5cbiIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSB0cm91dmVyIGxhIHN0cmF0w6lnaWUgZGUgZnVzaW9uICclcycuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNzgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXZhaWxhYmxlIHN0cmF0ZWdpZXMgYXJlOiIKIG1zZ3N0ciAiTGVzIHN0cmF0w6lnaWVzIGRpc3BvbmlibGVzIHNvbnQgOiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE4MworIzogYnVpbHRpbi9tZXJnZS5jOjE5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJBdmFpbGFibGUgY3VzdG9tIHN0cmF0ZWdpZXMgYXJlOiIKIG1zZ3N0ciAiTGVzIHN0cmF0w6lnaWVzIHBlcnNvbm5hbGlzw6llcyBzb250IDoiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzQgYnVpbHRpbi9wdWxsLmM6MTQzCisjOiBidWlsdGluL21lcmdlLmM6MjQ1IGJ1aWx0aW4vcHVsbC5jOjEzMgogbXNnaWQgImRvIG5vdCBzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCiBtc2dzdHIgIm5lIHBhcyBhZmZpY2hlciB1biBkaWZmc3RhdCDDoCBsYSBmaW4gZGUgbGEgZnVzaW9uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjM3IGJ1aWx0aW4vcHVsbC5jOjE0NgorIzogYnVpbHRpbi9tZXJnZS5jOjI0OCBidWlsdGluL3B1bGwuYzoxMzUKIG1zZ2lkICJzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCiBtc2dzdHIgImFmZmljaGVyIHVuIGRpZmZzdGF0IMOgIGxhIGZpbiBkZSBsYSBmdXNpb24iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzggYnVpbHRpbi9wdWxsLmM6MTQ5CisjOiBidWlsdGluL21lcmdlLmM6MjQ5IGJ1aWx0aW4vcHVsbC5jOjEzOAogbXNnaWQgIihzeW5vbnltIHRvIC0tc3RhdCkiCiBtc2dzdHIgIihzeW5vbnltZSBkZSAtLXN0YXQpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQwIGJ1aWx0aW4vcHVsbC5jOjE1MgorIzogYnVpbHRpbi9tZXJnZS5jOjI1MSBidWlsdGluL3B1bGwuYzoxNDEKIG1zZ2lkICJhZGQgKGF0IG1vc3QgPG4+KSBlbnRyaWVzIGZyb20gc2hvcnRsb2cgdG8gbWVyZ2UgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgIiIKICJham91dGVyIChhdSBwbHVzIDxuPikgw6lsw6ltZW50cyBkdSBqb3VybmFsIGNvdXJ0IGF1IG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiBkZSAiCiAibGEgZnVzaW9uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQzIGJ1aWx0aW4vcHVsbC5jOjE1OAorIzogYnVpbHRpbi9tZXJnZS5jOjI1NCBidWlsdGluL3B1bGwuYzoxNDcKIG1zZ2lkICJjcmVhdGUgYSBzaW5nbGUgY29tbWl0IGluc3RlYWQgb2YgZG9pbmcgYSBtZXJnZSIKIG1zZ3N0ciAiY3LDqWVyIHVuZSB2YWxpZGF0aW9uIHVuaXF1ZSBhdSBsaWV1IGRlIGZhaXJlIHVuZSBmdXNpb24iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDUgYnVpbHRpbi9wdWxsLmM6MTYxCisjOiBidWlsdGluL21lcmdlLmM6MjU2IGJ1aWx0aW4vcHVsbC5jOjE1MAogbXNnaWQgInBlcmZvcm0gYSBjb21taXQgaWYgdGhlIG1lcmdlIHN1Y2NlZWRzIChkZWZhdWx0KSIKIG1zZ3N0ciAiZWZmZWN0dWVyIHVuZSB2YWxpZGF0aW9uIHNpIGxhIGZ1c2lvbiByw6l1c3NpdCAoZMOpZmF1dCkiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDcgYnVpbHRpbi9wdWxsLmM6MTY0CisjOiBidWlsdGluL21lcmdlLmM6MjU4IGJ1aWx0aW4vcHVsbC5jOjE1MwogbXNnaWQgImVkaXQgbWVzc2FnZSBiZWZvcmUgY29tbWl0dGluZyIKIG1zZ3N0ciAiw6lkaXRlciBsZSBtZXNzYWdlIGF2YW50IGxhIHZhbGlkYXRpb24iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjAKIG1zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQgKGRlZmF1bHQpIgogbXNnc3RyICJhdXRvcmlzZXIgbCdhdmFuY2UgcmFwaWRlIChkw6lmYXV0KSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1MCBidWlsdGluL3B1bGwuYzoxNzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjIgYnVpbHRpbi9wdWxsLmM6MTYwCiBtc2dpZCAiYWJvcnQgaWYgZmFzdC1mb3J3YXJkIGlzIG5vdCBwb3NzaWJsZSIKIG1zZ3N0ciAiYWJhbmRvbm5lciBzaSBsJ2F2YW5jZSByYXBpZGUgbidlc3QgcGFzIHBvc3NpYmxlIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU0IGJ1aWx0aW4vcHVsbC5jOjE3MworIzogYnVpbHRpbi9tZXJnZS5jOjI2NiBidWlsdGluL3B1bGwuYzoxNjMKIG1zZ2lkICJ2ZXJpZnkgdGhhdCB0aGUgbmFtZWQgY29tbWl0IGhhcyBhIHZhbGlkIEdQRyBzaWduYXR1cmUiCiBtc2dzdHIgInbDqXJpZmllciBxdWUgbGUgY29tbWl0IG5vbW3DqSBhIHVuZSBzaWduYXR1cmUgR1BHIHZhbGlkZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NSBidWlsdGluL25vdGVzLmM6Nzg0IGJ1aWx0aW4vcHVsbC5jOjE3NwotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTYgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg2IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCisjOiBidWlsdGluL21lcmdlLmM6MjY3IGJ1aWx0aW4vbm90ZXMuYzo3ODcgYnVpbHRpbi9wdWxsLmM6MTY3CisjOiBidWlsdGluL3JlYmFzZS5jOjUyMCBidWlsdGluL3JlYmFzZS5jOjE1NzUgYnVpbHRpbi9yZXZlcnQuYzoxMTQKIG1zZ2lkICJzdHJhdGVneSIKIG1zZ3N0ciAic3RyYXTDqWdpZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NiBidWlsdGluL3B1bGwuYzoxNzgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjggYnVpbHRpbi9wdWxsLmM6MTY4CiBtc2dpZCAibWVyZ2Ugc3RyYXRlZ3kgdG8gdXNlIgogbXNnc3RyICJzdHJhdMOpZ2llIGRlIGZ1c2lvbiDDoCB1dGlsaXNlciIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NyBidWlsdGluL3B1bGwuYzoxODEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjkgYnVpbHRpbi9wdWxsLmM6MTcxCiBtc2dpZCAib3B0aW9uPXZhbHVlIgogbXNnc3RyICJvcHRpb249dmFsZXVyIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU4IGJ1aWx0aW4vcHVsbC5jOjE4MgorIzogYnVpbHRpbi9tZXJnZS5jOjI3MCBidWlsdGluL3B1bGwuYzoxNzIKIG1zZ2lkICJvcHRpb24gZm9yIHNlbGVjdGVkIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICJvcHRpb24gcG91ciBsYSBzdHJhdMOpZ2llIGRlIGZ1c2lvbiBzw6lsZWN0aW9ubsOpZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI2MAorIzogYnVpbHRpbi9tZXJnZS5jOjI3MgogbXNnaWQgIm1lcmdlIGNvbW1pdCBtZXNzYWdlIChmb3IgYSBub24tZmFzdC1mb3J3YXJkIG1lcmdlKSIKIG1zZ3N0ciAiIgogIm1lc3NhZ2UgZGUgdmFsaWRhdGlvbiBkZSBsYSBmdXNpb24gKHBvdXIgdW5lIGZ1c2lvbiBzYW5zIGF2YW5jZSByYXBpZGUpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjY3CisjOiBidWlsdGluL21lcmdlLmM6Mjc5CiBtc2dpZCAiYWJvcnQgdGhlIGN1cnJlbnQgaW4tcHJvZ3Jlc3MgbWVyZ2UiCiBtc2dzdHIgImFiYW5kb25uZXIgbGEgZnVzaW9uIGVuIGNvdXJzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjY5CisjOiBidWlsdGluL21lcmdlLmM6MjgxCittc2dpZCAiLS1hYm9ydCBidXQgbGVhdmUgaW5kZXggYW5kIHdvcmtpbmcgdHJlZSBhbG9uZSIKK21zZ3N0ciAiLS1hYm9ydCBtYWlzIGxhaXNzZXIgbCdpbmRleCBldCBsJ2FyYnJlIGRlIHRyYXZhaWwgaW5jaGFuZ8OpcyIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI4MwogbXNnaWQgImNvbnRpbnVlIHRoZSBjdXJyZW50IGluLXByb2dyZXNzIG1lcmdlIgogbXNnc3RyICJjb250aW51ZXIgbGEgZnVzaW9uIGVuIGNvdXJzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjcxIGJ1aWx0aW4vcHVsbC5jOjE4OQorIzogYnVpbHRpbi9tZXJnZS5jOjI4NSBidWlsdGluL3B1bGwuYzoxNzkKIG1zZ2lkICJhbGxvdyBtZXJnaW5nIHVucmVsYXRlZCBoaXN0b3JpZXMiCiBtc2dzdHIgInBlcm1ldHRyZSBsYSBmdXNpb24gZCdoaXN0b3JpcXVlcyBzYW5zIHJhcHBvcnQiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzcKLW1zZ2lkICJ2ZXJpZnkgY29tbWl0LW1zZyBob29rIgotbXNnc3RyICJ2w6lyaWZpZXIgbGUgY3JvY2hldCBjb21taXQtbXNnIgorIzogYnVpbHRpbi9tZXJnZS5jOjI5MQorbXNnaWQgImJ5cGFzcyBwcmUtbWVyZ2UtY29tbWl0IGFuZCBjb21taXQtbXNnIGhvb2tzIgorbXNnc3RyICJuZSBwYXMgdXRpbGlzZXIgbGVzIGNyb2NoZXRzIHByZS1tZXJnZS1jb21taXQgZXQgY29tbWl0LW1zZyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMwMgorIzogYnVpbHRpbi9tZXJnZS5jOjMwOAogbXNnaWQgImNvdWxkIG5vdCBydW4gc3Rhc2guIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxhbmNlciBsZSByZW1pc2FnZS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozMDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMTMKIG1zZ2lkICJzdGFzaCBmYWlsZWQiCiBtc2dzdHIgIsOpY2hlYyBkdSByZW1pc2FnZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMxMgorIzogYnVpbHRpbi9tZXJnZS5jOjMxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSB2YWxpZCBvYmplY3Q6ICVzIgogbXNnc3RyICJwYXMgdW4gb2JqZXQgdmFsaWRlIDogJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozMzQgYnVpbHRpbi9tZXJnZS5jOjM1MQorIzogYnVpbHRpbi9tZXJnZS5jOjM0MCBidWlsdGluL21lcmdlLmM6MzU3CiBtc2dpZCAicmVhZC10cmVlIGZhaWxlZCIKIG1zZ3N0ciAicmVhZC10cmVlIGEgw6ljaG91w6kiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozODEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozODcKIG1zZ2lkICIgKG5vdGhpbmcgdG8gc3F1YXNoKSIKIG1zZ3N0ciAiIChyaWVuIMOgIGNvbXByZXNzZXIpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzkyCisjOiBidWlsdGluL21lcmdlLmM6Mzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNxdWFzaCBjb21taXQgLS0gbm90IHVwZGF0aW5nIEhFQURcbiIKIG1zZ3N0ciAiVmFsaWRhdGlvbiBjb21wcmVzc8OpZSAtLSBIRUFEIG5vbiBtaXNlIMOgIGpvdXJcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjQ0MgorIzogYnVpbHRpbi9tZXJnZS5jOjQ0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBtZXJnZSBtZXNzYWdlIC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCiBtc2dzdHIgIlBhcyBkZSBtZXNzYWdlIGRlIGZ1c2lvbiAtLSBwYXMgZGUgbWlzZSDDoCBqb3VyIGRlIEhFQURcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjQ5MworIzogYnVpbHRpbi9tZXJnZS5jOjQ5OQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgY29tbWl0IgogbXNnc3RyICInJXMnIG5lIHBvaW50ZSBwYXMgc3VyIHVuIGNvbW1pdCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjU4MAorIzogYnVpbHRpbi9tZXJnZS5jOjU4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgYnJhbmNoLiVzLm1lcmdlb3B0aW9ucyBzdHJpbmc6ICVzIgogbXNnc3RyICJNYXV2YWlzZSBjaGHDrm5lIGJyYW5jaC4lcy5tZXJnZW9wdGlvbnMgOiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjcwMQorIzogYnVpbHRpbi9tZXJnZS5jOjcwOAogbXNnaWQgIk5vdCBoYW5kbGluZyBhbnl0aGluZyBvdGhlciB0aGFuIHR3byBoZWFkcyBtZXJnZS4iCiBtc2dzdHIgIkltcG9zc2libGUgZGUgZ8OpcmVyIGF1dHJlIGNob3NlIHF1ZSBsYSBmdXNpb24gZGUgZGV1eCB0w6p0ZXMuIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzE1CisjOiBidWlsdGluL21lcmdlLmM6NzIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gb3B0aW9uIGZvciBtZXJnZS1yZWN1cnNpdmU6IC1YJXMiCiBtc2dzdHIgIk9wdGlvbnMgaW5jb25udWUgcG91ciBtZXJnZS1yZWN1cnNpdmUgOiAtWCVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzMwCisjOiBidWlsdGluL21lcmdlLmM6NzM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3ODIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlYWQgZnJvbSAnJXMnIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIGxpcmUgZGVwdWlzICclcyciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGNvbW1pdHRpbmcgbWVyZ2U7IHVzZSAnZ2l0IGNvbW1pdCcgdG8gY29tcGxldGUgdGhlIG1lcmdlLlxuIgogbXNnc3RyICIiCiAiUGFzIGRlIHZhbGlkYXRpb24gZGUgbGEgZnVzaW9uIDsgdXRpbGlzZXogJ2dpdCBjb21taXQnIHBvdXIgdGVybWluZXIgbGEgIgogImZ1c2lvbi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjc5NwotIywgYy1mb3JtYXQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4MDQKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIGEgY29tbWl0IG1lc3NhZ2UgdG8gZXhwbGFpbiB3aHkgdGhpcyBtZXJnZSBpcyBuZWNlc3NhcnksXG4iCiAiZXNwZWNpYWxseSBpZiBpdCBtZXJnZXMgYW4gdXBkYXRlZCB1cHN0cmVhbSBpbnRvIGEgdG9waWMgYnJhbmNoLlxuIgogIlxuIgotIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQsIGFuZCBhbiBlbXB0eSBtZXNzYWdlIGFib3J0c1xuIgotInRoZSBjb21taXQuXG4iCiBtc2dzdHIgIiIKICJWZXVpbGxleiBlbnRyZXIgdW4gbWVzc2FnZSBkZSB2YWxpZGF0aW9uIHBvdXIgZXhwbGlxdWVyIGVuIHF1b2kgY2V0dGUgZnVzaW9uICIKICJlc3RcbiIKICJuw6ljZXNzYWlyZSwgc3VydG91dCBzaSBjZWxhIGZ1c2lvbm5lIHVuZSBicmFuY2hlIGFtb250IG1pc2Ugw6Agam91ciBkYW5zIHVuZSAiCiAiYnJhbmNoZSBkZSBzdWpldC5cbiIKICJcbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjgwOQorbXNnaWQgIkFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCittc2dzdHIgIlVuIG1lc3NhZ2UgdmlkZSBhYmFuZG9ubmUgbGEgdmFsaWRhdGlvbi5cbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjgxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTGluZXMgc3RhcnRpbmcgd2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzXG4iCisidGhlIGNvbW1pdC5cbiIKK21zZ3N0ciAiIgogIkxlcyBsaWduZXMgY29tbWVuw6dhbnQgcGFyICclYycgc2Vyb250IGlnbm9yw6llcywgZXQgdW4gbWVzc2FnZSB2aWRlXG4iCiAiYWJhbmRvbm5lIGxhIHZhbGlkYXRpb24uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4MzMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4NjUKIG1zZ2lkICJFbXB0eSBjb21taXQgbWVzc2FnZS4iCiBtc2dzdHIgIk1lc3NhZ2UgZGUgdmFsaWRhdGlvbiB2aWRlLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjg1MgorIzogYnVpbHRpbi9tZXJnZS5jOjg4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJXb25kZXJmdWwuXG4iCiBtc2dzdHIgIk1lcnZlaWxsZXV4LlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTA1CisjOiBidWlsdGluL21lcmdlLmM6OTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG9tYXRpYyBtZXJnZSBmYWlsZWQ7IGZpeCBjb25mbGljdHMgYW5kIHRoZW4gY29tbWl0IHRoZSByZXN1bHQuXG4iCiBtc2dzdHIgIiIKICJMYSBmdXNpb24gYXV0b21hdGlxdWUgYSDDqWNob3XDqSA7IHLDqWdsZXogbGVzIGNvbmZsaXRzIGV0IHZhbGlkZXogbGUgIgogInLDqXN1bHRhdC5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjk0NAorIzogYnVpbHRpbi9tZXJnZS5jOjk4MAogbXNnaWQgIk5vIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAiUGFzIGRlIGJyYW5jaGUgY291cmFudGUuIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ2CisjOiBidWlsdGluL21lcmdlLmM6OTgyCiBtc2dpZCAiTm8gcmVtb3RlIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJQYXMgZGUgYnJhbmNoZSBkaXN0YW50ZSBwb3VyIGxhIGJyYW5jaGUgY291cmFudGUuIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ4CisjOiBidWlsdGluL21lcmdlLmM6OTg0CiBtc2dpZCAiTm8gZGVmYXVsdCB1cHN0cmVhbSBkZWZpbmVkIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJQYXMgZGUgYnJhbmNoZSBhbW9udCBwYXIgZMOpZmF1dCBkw6lmaW5pZSBwb3VyIGxhIGJyYW5jaGUgY291cmFudGUuIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTUzCisjOiBidWlsdGluL21lcmdlLmM6OTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHJlbW90ZS10cmFja2luZyBicmFuY2ggZm9yICVzIGZyb20gJXMiCiBtc2dzdHIgIlBhcyBkZSBicmFuY2hlIGRlIHN1aXZpIHBvdXIgJXMgZGVwdWlzICVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTAxMAorIzogYnVpbHRpbi9tZXJnZS5jOjEwNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkIHZhbHVlICclcycgaW4gZW52aXJvbm1lbnQgJyVzJyIKIG1zZ3N0ciAiTWF1dmFpc2UgdmFsZXVyICclcycgZGFucyBsJ2Vudmlyb25uZW1lbnQgJyVzJyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjExMTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIGluICVzOiAlcyIKIG1zZ3N0ciAicGFzIHBvc3NpYmxlIGRlIGZ1c2lvbm5lciBjZWNpIGRhbnMgJXPCoDogJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTQ3CisjOiBidWlsdGluL21lcmdlLmM6MTE4MwogbXNnaWQgIm5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgogbXNnc3RyICJwYXMgcG9zc2libGUgZGUgZnVzaW9ubmVyIGNlY2kiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjUwCisjOiBidWlsdGluL21lcmdlLmM6MTI4NgogbXNnaWQgIi0tYWJvcnQgZXhwZWN0cyBubyBhcmd1bWVudHMiCiBtc2dzdHIgIi0tYWJvcnQgbidhY2NlcHRlIHBhcyBkJ2FyZ3VtZW50IgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI1NAorIzogYnVpbHRpbi9tZXJnZS5jOjEyOTAKIG1zZ2lkICJUaGVyZSBpcyBubyBtZXJnZSB0byBhYm9ydCAoTUVSR0VfSEVBRCBtaXNzaW5nKS4iCiBtc2dzdHIgIklsIG4neSBhIHBhcyBkZSBmdXNpb24gw6AgYWJhbmRvbm5lciAoTUVSR0VfSEVBRCBtYW5xdWFudCkuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI2NgorIzogYnVpbHRpbi9tZXJnZS5jOjEyOTkKK21zZ2lkICItLXF1aXQgZXhwZWN0cyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tcXVpdCBuJ2FjY2VwdGUgcGFzIGQnYXJndW1lbnQiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzEyCiBtc2dpZCAiLS1jb250aW51ZSBleHBlY3RzIG5vIGFyZ3VtZW50cyIKIG1zZ3N0ciAiLS1jb250aW51ZSBuZSBzdXBwb3J0ZSBhdWN1biBhcmd1bWVudCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzE2CiBtc2dpZCAiVGhlcmUgaXMgbm8gbWVyZ2UgaW4gcHJvZ3Jlc3MgKE1FUkdFX0hFQUQgbWlzc2luZykuIgogbXNnc3RyICJJbCBuJ3kgYSBwYXMgZGUgZnVzaW9uIGVuIGNvdXJzIChNRVJHRV9IRUFEIG1hbnF1YW50KS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjg2CisjOiBidWlsdGluL21lcmdlLmM6MTMzMgogbXNnaWQgIiIKICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS5cbiIKICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIHlvdSBtZXJnZS4iCkBAIC0xMzMxNyw3ICsxNjUyMiw3IEBACiAiVm91cyBuJ2F2ZXogcGFzIHRlcm1pbsOpIHZvdHJlIGZ1c2lvbiAoTUVSR0VfSEVBRCBleGlzdGUpLlxuIgogIlZldWlsbGV6IHZhbGlkZXIgdm9zIG1vZGlmaWNhdGlvbnMgYXZhbnQgZGUgcG91dm9pciBmdXNpb25uZXIuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI5MworIzogYnVpbHRpbi9tZXJnZS5jOjEzMzkKIG1zZ2lkICIiCiAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIGNoZXJyeS1waWNrIChDSEVSUllfUElDS19IRUFEIGV4aXN0cykuXG4iCiAiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSB5b3UgbWVyZ2UuIgpAQCAtMTMzMjUsOTQgKzE2NTMwLDk4IEBACiAiVm91cyBuJ2F2ZXogcGFzIHRlcm1pbsOpIHZvdHJlIHBpY29yYWdlIChDSEVSUllfUElDS19IRUFEIGV4aXN0ZSkuXG4iCiAiVmV1aWxsZXogdmFsaWRlciB2b3MgbW9kaWZpY2F0aW9ucyBhdmFudCBkZSBwb3V2b2lyIGZ1c2lvbm5lci4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjk2CisjOiBidWlsdGluL21lcmdlLmM6MTM0MgogbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdHMpLiIKIG1zZ3N0ciAiVm91cyBuJ2F2ZXogcGFzIHRlcm1pbsOpIHZvdHJlIHBpY29yYWdlIChDSEVSUllfUElDS19IRUFEIGV4aXN0ZSkuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMwNQorIzogYnVpbHRpbi9tZXJnZS5jOjEzNTYKIG1zZ2lkICJZb3UgY2Fubm90IGNvbWJpbmUgLS1zcXVhc2ggd2l0aCAtLW5vLWZmLiIKIG1zZ3N0ciAiVm91cyBuZSBwb3V2ZXogcGFzIGNvbWJpbmVyIC0tc3F1YXNoIGF2ZWMgLS1uby1mZi4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzEzCisjOiBidWlsdGluL21lcmdlLmM6MTM1OAorbXNnaWQgIllvdSBjYW5ub3QgY29tYmluZSAtLXNxdWFzaCB3aXRoIC0tY29tbWl0LiIKK21zZ3N0ciAiVm91cyBuZSBwb3V2ZXogcGFzIGNvbWJpbmVyIC0tc3F1YXNoIGF2ZWMgLS1jb21taXQuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTM3NAogbXNnaWQgIk5vIGNvbW1pdCBzcGVjaWZpZWQgYW5kIG1lcmdlLmRlZmF1bHRUb1Vwc3RyZWFtIG5vdCBzZXQuIgogbXNnc3RyICIiCiAiUGFzIGRlIHZhbGlkYXRpb24gc3DDqWNpZmnDqWUgZXQgbWVyZ2UuZGVmYXVsdFRvVXBzdHJlYW0gbidlc3QgcGFzIGTDqWZpbmkuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMzMAorIzogYnVpbHRpbi9tZXJnZS5jOjEzOTEKIG1zZ2lkICJTcXVhc2ggY29tbWl0IGludG8gZW1wdHkgaGVhZCBub3Qgc3VwcG9ydGVkIHlldCIKIG1zZ3N0ciAiTGEgdmFsaWRhdGlvbiBjb21wcmVzc8OpZSB2ZXJzIHVuZSB0w6p0ZSB2aWRlIG4nZXN0IHBhcyBlbmNvcmUgc3VwcG9ydMOpZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzkzCiBtc2dpZCAiTm9uLWZhc3QtZm9yd2FyZCBjb21taXQgZG9lcyBub3QgbWFrZSBzZW5zZSBpbnRvIGFuIGVtcHR5IGhlYWQiCiBtc2dzdHIgIlVuZSB2YWxpZGF0aW9uIHNhbnMgYXZhbmNlIHJhcGlkZSBuJ2EgcGFzIGRlIHNlbnMgZGFucyB1bmUgdMOqdGUgdmlkZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIC0gbm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UiCiBtc2dzdHIgIiVzIC0gcGFzIHBvc3NpYmxlIGRlIGZ1c2lvbm5lciBjZWNpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMzOQorIzogYnVpbHRpbi9tZXJnZS5jOjE0MDAKIG1zZ2lkICJDYW4gbWVyZ2Ugb25seSBleGFjdGx5IG9uZSBjb21taXQgaW50byBlbXB0eSBoZWFkIgogbXNnc3RyICIiCiAiUG9zc2libGUgZGUgZnVzaW9ubmVyIGV4YWN0ZW1lbnQgdW5lIHNldWxlIHZhbGlkYXRpb24gZGFucyB1bmUgdMOqdGUgdmlkZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0MjEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDgxCiBtc2dpZCAicmVmdXNpbmcgdG8gbWVyZ2UgdW5yZWxhdGVkIGhpc3RvcmllcyIKIG1zZ3N0ciAicmVmdXMgZGUgZnVzaW9ubmVyIGRlcyBoaXN0b3JpcXVlcyBzYW5zIHJlbGF0aW9uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQzMAorIzogYnVpbHRpbi9tZXJnZS5jOjE0OTAKIG1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIgogbXNnc3RyICJEw6lqw6Agw6Agam91ci4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDQwCisjOiBidWlsdGluL21lcmdlLmM6MTUwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJVcGRhdGluZyAlcy4uJXNcbiIKIG1zZ3N0ciAiTWlzZSDDoCBqb3VyICVzLi4lc1xuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQ4MgorIzogYnVpbHRpbi9tZXJnZS5jOjE1NDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiVHJ5aW5nIHJlYWxseSB0cml2aWFsIGluLWluZGV4IG1lcmdlLi4uXG4iCiBtc2dzdHIgIkVzc2FpIGRlIGZ1c2lvbiB2cmFpbWVudCB0cml2aWFsZSBkYW5zIGwnaW5kZXguLi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0ODkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vcGUuXG4iCiBtc2dzdHIgIk5vbi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1MTQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTc0CiBtc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlLiBZZWVhaCEiCiBtc2dzdHIgIkTDqWrDoCDDoCBqb3VyLiBPdWFpc8KgISIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1MjAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTgwCiBtc2dpZCAiTm90IHBvc3NpYmxlIHRvIGZhc3QtZm9yd2FyZCwgYWJvcnRpbmcuIgogbXNnc3RyICJQYXMgcG9zc2libGUgZCdhdmFuY2VyIHJhcGlkZW1lbnQsIGFiYW5kb24uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTU0MyBidWlsdGluL21lcmdlLmM6MTYyMgorIzogYnVpbHRpbi9tZXJnZS5jOjE2MDMgYnVpbHRpbi9tZXJnZS5jOjE2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmV3aW5kaW5nIHRoZSB0cmVlIHRvIHByaXN0aW5lLi4uXG4iCiBtc2dzdHIgIlJldG91ciBkZSBsJ2FyYnJlIMOgIGwnb3JpZ2luYWwuLi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1NDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjA3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRyeWluZyBtZXJnZSBzdHJhdGVneSAlcy4uLlxuIgogbXNnc3RyICJFc3NhaSBkZSBsYSBzdHJhdMOpZ2llIGRlIGZ1c2lvbiAlcy4uLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYxMworIzogYnVpbHRpbi9tZXJnZS5jOjE2NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gbWVyZ2Ugc3RyYXRlZ3kgaGFuZGxlZCB0aGUgbWVyZ2UuXG4iCiBtc2dzdHIgIkF1Y3VuZSBzdHJhdMOpZ2llIGRlIGZ1c2lvbiBuJ2EgcHJpcyBlbiBjaGFyZ2UgbGEgZnVzaW9uLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYxNQorIzogYnVpbHRpbi9tZXJnZS5jOjE2NjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWVyZ2Ugd2l0aCBzdHJhdGVneSAlcyBmYWlsZWQuXG4iCiBtc2dzdHIgIkxhIGZ1c2lvbiBhdmVjIGxhIHN0cmF0w6lnaWUgJXMgYSDDqWNob3XDqS5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MjQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVzaW5nIHRoZSAlcyB0byBwcmVwYXJlIHJlc29sdmluZyBieSBoYW5kLlxuIgogbXNnc3RyICJVdGlsaXNhdGlvbiBkZSAlcyBwb3VyIHByw6lwYXJlciBsYSByw6lzb2x1dGlvbiDDoCBsYSBtYWluLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYzNgorIzogYnVpbHRpbi9tZXJnZS5jOjE2ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0b21hdGljIG1lcmdlIHdlbnQgd2VsbDsgc3RvcHBlZCBiZWZvcmUgY29tbWl0dGluZyBhcyByZXF1ZXN0ZWRcbiIKIG1zZ3N0ciAiIgpAQCAtMTM0OTgsMzMgKzE2NzA3LDMzIEBACiBtc2dpZCAic2V0IGxhYmVscyBmb3IgZmlsZTEvb3JpZy1maWxlL2ZpbGUyIgogbXNnc3RyICJkw6lmaW5pciBsZXMgbGFiZWxzIHBvdXIgZmljaGllcjEvZmljaGllci1vcmlnL2ZpY2hpZXIyIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjQ1CisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gb3B0aW9uICVzIgogbXNnc3RyICJvcHRpb24gaW5jb25udWUgJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTEKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnIgogbXNnc3RyICJJbXBvc3NpYmxlIGQnYW5hbHlzZXIgbCdvYmpldCAnJXMnIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjU1CisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIGJhc2UuIElnbm9yaW5nICVzLiIKIG1zZ2lkX3BsdXJhbCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgYmFzZXMuIElnbm9yaW5nICVzLiIKIG1zZ3N0clswXSAiaW1wb3NzaWJsZSBkZSBnw6lyZXIgcGx1cyBkZSAlZCBiYXNlLiAlcyBpZ25vcsOpLiIKIG1zZ3N0clsxXSAiaW1wb3NzaWJsZSBkZSBnw6lyZXIgcGx1cyBkZSAlZCBiYXNlcy4gJXMgaWdub3LDqS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjMKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjUKIG1zZ2lkICJub3QgaGFuZGxpbmcgYW55dGhpbmcgb3RoZXIgdGhhbiB0d28gaGVhZHMgbWVyZ2UuIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGfDqXJlciBhdXRyZSBjaG9zZSBxdWUgbGEgZnVzaW9uIGRlIGRldXggdMOqdGVzLiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo2OSBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjcxCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjc0IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgcmVmICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgcsOpc291ZHJlIGxhIHLDqWbDqXJlbmNlICclcyciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzcKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWVyZ2luZyAlcyB3aXRoICVzXG4iCiBtc2dzdHIgIkZ1c2lvbiBkZSAlcyBhdmVjICVzXG4iCkBAIC0xMzUzNyw3ICsxNjc0Niw3IEBACiBtc2dpZCAiaW5wdXQgaXMgTlVMIHRlcm1pbmF0ZWQiCiBtc2dzdHIgImwnZW50csOpZSBzZSB0ZXJtaW5lIHBhciBOVUwiCiAKLSM6IGJ1aWx0aW4vbWt0cmVlLmM6MTU1IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI1CisjOiBidWlsdGluL21rdHJlZS5jOjE1NSBidWlsdGluL3dyaXRlLXRyZWUuYzoyNgogbXNnaWQgImFsbG93IG1pc3Npbmcgb2JqZWN0cyIKIG1zZ3N0ciAiYXV0b3Jpc2VyIGxlcyBvYmpldHMgbWFucXVhbnRzIgogCkBAIC0xMzU0NSwxNjEgKzE2NzU0LDE3NyBAQAogbXNnaWQgImFsbG93IGNyZWF0aW9uIG9mIG1vcmUgdGhhbiBvbmUgdHJlZSIKIG1zZ3N0ciAiYXV0b3Jpc2VyIGxhIGNyw6lhdGlvbiBkZSBwbHVzIGQndW4gYXJicmUiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjgKLW1zZ2lkICJnaXQgbXVsdGktcGFjay1pbmRleCBbLS1vYmplY3QtZGlyPTxkaXI+XSAod3JpdGV8dmVyaWZ5KSIKLW1zZ3N0ciAiZ2l0IG11bHRpLXBhY2staW5kZXggWy0tb2JqZWN0LWRpcj08ZGlyPl0gKHdyaXRlfHZlcmlmeSkiCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo5Cittc2dpZCAiIgorImdpdCBtdWx0aS1wYWNrLWluZGV4IFs8b3B0aW9ucz5dICh3cml0ZXx2ZXJpZnl8ZXhwaXJlfHJlcGFjayAtLWJhdGNoLSIKKyJzaXplPTxzaXplPikiCittc2dzdHIgIiIKKyJnaXQgbXVsdGktcGFjay1pbmRleCBbPG9wdGlvbnM+XSAod3JpdGV8dmVyaWZ5fGV4cGlyZXxyZXBhY2sgLS1iYXRjaC0iCisic2l6ZT08dGFpbGxlPikiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjIxCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyNgogbXNnaWQgIm9iamVjdCBkaXJlY3RvcnkgY29udGFpbmluZyBzZXQgb2YgcGFja2ZpbGUgYW5kIHBhY2staW5kZXggcGFpcnMiCiBtc2dzdHIgIiIKICJyw6lwZXJ0b2lyZSBvYmpldCBjb250ZW5hbnQgdW4gZW5zZW1ibGUgZGUgcGFpcmVzIGRlIGZpY2hpZXJzIHBhcXVldCBldCAiCiAiZCdpbmRleCBkZSBwYXF1ZXQiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjM5CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyOQorbXNnaWQgIiIKKyJkdXJpbmcgcmVwYWNrLCBjb2xsZWN0IHBhY2stZmlsZXMgb2Ygc21hbGxlciBzaXplIGludG8gYSBiYXRjaCB0aGF0IGlzICIKKyJsYXJnZXIgdGhhbiB0aGlzIHNpemUiCittc2dzdHIgIiIKKyJwZW5kYW50IGxlIHJlcGFxdWV0YWdlLCBjb2xsZWN0ZXIgbGVzIGZpY2hpZXJzIHBhcXVldCBkZSBwbHVzIHBldGl0ZSB0YWlsbGUgIgorImRhbnMgdW4gbG90IHBsdXMgZ3JhbmQgcXVlIGNldHRlIHRhaWxsZSIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NTAgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo2NwogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyIKIG1zZ3N0ciAidHJvcCBkJ2FyZ3VtZW50cyIKIAotIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5yZWNvZ25pemVkIHZlcmI6ICVzIgotbXNnc3RyICJ2ZXJiZSBub24gcmVjb25udSA6ICVzIgorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NjAKK21zZ2lkICItLWJhdGNoLXNpemUgb3B0aW9uIGlzIG9ubHkgZm9yICdyZXBhY2snIHN1YmNvbW1hbmQiCittc2dzdHIgImwnb3B0aW9uIC0tYmF0Y2gtc2l6ZSBuZSBzZXJ0IHF1ZSBwb3VyIGxhIHNvdXMtY29tbWFuZGUgJ3JlcGFjayciCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIHN1YmNvbW1hbmQ6ICVzIgorbXNnc3RyICJzb3VzLWNvbW1hbmRlIG5vbiByZWNvbm51ZSA6ICVzIgorCisjOiBidWlsdGluL212LmM6MTgKIG1zZ2lkICJnaXQgbXYgWzxvcHRpb25zPl0gPHNvdXJjZT4uLi4gPGRlc3RpbmF0aW9uPiIKIG1zZ3N0ciAiZ2l0IG12IFs8b3B0aW9ucz5dIDxzb3VyY2U+Li4uIDxkZXN0aW5hdGlvbj4iCiAKLSM6IGJ1aWx0aW4vbXYuYzo4MgorIzogYnVpbHRpbi9tdi5jOjgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkRpcmVjdG9yeSAlcyBpcyBpbiBpbmRleCBhbmQgbm8gc3VibW9kdWxlPyIKIG1zZ3N0ciAiTGUgcsOpcGVydG9pcmUgJXMgZXN0IGRhbnMgbCdpbmRleCBldCBwb3VydGFudCBhdWN1biBzb3VzLW1vZHVsZSA/IgogCi0jOiBidWlsdGluL212LmM6ODQKKyM6IGJ1aWx0aW4vbXYuYzo4NQogbXNnaWQgIlBsZWFzZSBzdGFnZSB5b3VyIGNoYW5nZXMgdG8gLmdpdG1vZHVsZXMgb3Igc3Rhc2ggdGhlbSB0byBwcm9jZWVkIgogbXNnc3RyICIiCiAiVmV1aWxsZXogaW5kZXhlciB2b3MgbW9kaWZpY2F0aW9ucyBkZSAuZ2l0bW9kdWxlcyBvdSBsZXMgcmVtaXNlciBwb3VyICIKICJjb250aW51ZXIiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxMDIKKyM6IGJ1aWx0aW4vbXYuYzoxMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJS4qcyBpcyBpbiBpbmRleCIKIG1zZ3N0ciAiJS4qcyBlc3QgZGFucyBsJ2luZGV4IgogCi0jOiBidWlsdGluL212LmM6MTI0CisjOiBidWlsdGluL212LmM6MTI1CiBtc2dpZCAiZm9yY2UgbW92ZS9yZW5hbWUgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgogbXNnc3RyICJmb3JjZXIgbGUgZMOpcGxhY2VtZW50L3Jlbm9tbWFnZSBtw6ptZSBzaSBsYSBjaWJsZSBleGlzdGUiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxMjYKKyM6IGJ1aWx0aW4vbXYuYzoxMjcKIG1zZ2lkICJza2lwIG1vdmUvcmVuYW1lIGVycm9ycyIKIG1zZ3N0ciAic2F1dGVyIGxlcyBlcnJldXJzIGRlIGTDqXBsYWNlbWVudC9yZW5vbW1hZ2UiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNjgKKyM6IGJ1aWx0aW4vbXYuYzoxNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzdGluYXRpb24gJyVzJyBpcyBub3QgYSBkaXJlY3RvcnkiCiBtc2dzdHIgImxhIGRlc3RpbmF0aW9uICclcycgbidlc3QgcGFzIHVuIHLDqXBlcnRvaXJlIgogCi0jOiBidWlsdGluL212LmM6MTc5CisjOiBidWlsdGluL212LmM6MTgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoZWNraW5nIHJlbmFtZSBvZiAnJXMnIHRvICclcydcbiIKIG1zZ3N0ciAiVsOpcmlmaWNhdGlvbiBkdSByZW5vbW1hZ2UgZGUgJyVzJyBlbiAnJXMnXG4iCiAKLSM6IGJ1aWx0aW4vbXYuYzoxODMKKyM6IGJ1aWx0aW4vbXYuYzoxODQKIG1zZ2lkICJiYWQgc291cmNlIgogbXNnc3RyICJtYXV2YWlzZSBzb3VyY2UiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxODYKKyM6IGJ1aWx0aW4vbXYuYzoxODcKIG1zZ2lkICJjYW4gbm90IG1vdmUgZGlyZWN0b3J5IGludG8gaXRzZWxmIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGTDqXBsYWNlciB1biByw6lwZXJ0b2lyZSBkYW5zIGx1aS1tw6ptZSIKIAotIzogYnVpbHRpbi9tdi5jOjE4OQorIzogYnVpbHRpbi9tdi5jOjE5MAogbXNnaWQgImNhbm5vdCBtb3ZlIGRpcmVjdG9yeSBvdmVyIGZpbGUiCiBtc2dzdHIgImltcG9zc2libGUgZGUgZMOpcGxhY2VyIHVuIHLDqXBlcnRvaXJlIHN1ciB1biBmaWNoaWVyIgogCi0jOiBidWlsdGluL212LmM6MTk4CisjOiBidWlsdGluL212LmM6MTk5CiBtc2dpZCAic291cmNlIGRpcmVjdG9yeSBpcyBlbXB0eSIKIG1zZ3N0ciAibGUgcsOpcGVydG9pcmUgc291cmNlIGVzdCB2aWRlIgogCi0jOiBidWlsdGluL212LmM6MjIzCisjOiBidWlsdGluL212LmM6MjI0CiBtc2dpZCAibm90IHVuZGVyIHZlcnNpb24gY29udHJvbCIKIG1zZ3N0ciAicGFzIHNvdXMgbGUgY29udHLDtGxlIGRlIHZlcnNpb24iCiAKLSM6IGJ1aWx0aW4vbXYuYzoyMjYKKyM6IGJ1aWx0aW4vbXYuYzoyMjcKIG1zZ2lkICJkZXN0aW5hdGlvbiBleGlzdHMiCiBtc2dzdHIgImxhIGRlc3RpbmF0aW9uIGV4aXN0ZSIKIAotIzogYnVpbHRpbi9tdi5jOjIzNAorIzogYnVpbHRpbi9tdi5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJvdmVyd3JpdGluZyAnJXMnIgogbXNnc3RyICLDqWNyYXNlbWVudCBkZSAnJXMnIgogCi0jOiBidWlsdGluL212LmM6MjM3CisjOiBidWlsdGluL212LmM6MjM4CiBtc2dpZCAiQ2Fubm90IG92ZXJ3cml0ZSIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkJ8OpY3Jhc2VyIgogCi0jOiBidWlsdGluL212LmM6MjQwCisjOiBidWlsdGluL212LmM6MjQxCiBtc2dpZCAibXVsdGlwbGUgc291cmNlcyBmb3IgdGhlIHNhbWUgdGFyZ2V0IgogbXNnc3RyICJtdWx0aXBsZXMgc291cmNlcyBwb3VyIGxhIG3Dqm1lIGRlc3RpbmF0aW9uIgogCi0jOiBidWlsdGluL212LmM6MjQyCisjOiBidWlsdGluL212LmM6MjQzCiBtc2dpZCAiZGVzdGluYXRpb24gZGlyZWN0b3J5IGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJsZSByw6lwZXJ0b2lyZSBkZSBkZXN0aW5hdGlvbiBuJ2V4aXN0ZSBwYXMiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNDkKKyM6IGJ1aWx0aW4vbXYuYzoyNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMsIHNvdXJjZT0lcywgZGVzdGluYXRpb249JXMiCiBtc2dzdHIgIiVzLCBzb3VyY2U9JXMsIGRlc3RpbmF0aW9uPSVzIgogCi0jOiBidWlsdGluL212LmM6MjcwCisjOiBidWlsdGluL212LmM6MjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbmFtaW5nICVzIHRvICVzXG4iCiBtc2dzdHIgIlJlbm9tbWFnZSBkZSAlcyBlbiAlc1xuIgogCi0jOiBidWlsdGluL212LmM6Mjc2IGJ1aWx0aW4vcmVtb3RlLmM6NzE3IGJ1aWx0aW4vcmVwYWNrLmM6NTExCisjOiBidWlsdGluL212LmM6Mjc3IGJ1aWx0aW4vcmVtb3RlLmM6NzgxIGJ1aWx0aW4vcmVwYWNrLmM6NTE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbmFtaW5nICclcycgZmFpbGVkIgogbXNnc3RyICJsZSByZW5vbW1hZ2UgZGUgJyVzJyBhIMOpY2hvdcOpIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6MzU1CisjOiBidWlsdGluL25hbWUtcmV2LmM6NDY1CiBtc2dpZCAiZ2l0IG5hbWUtcmV2IFs8b3B0aW9ucz5dIDxjb21taXQ+Li4uIgogbXNnc3RyICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gPHZhbGlkYXRpb24+Li4uIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6MzU2CisjOiBidWlsdGluL25hbWUtcmV2LmM6NDY2CiBtc2dpZCAiZ2l0IG5hbWUtcmV2IFs8b3B0aW9ucz5dIC0tYWxsIgogbXNnc3RyICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gLS1hbGwiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzozNTcKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0NjcKIG1zZ2lkICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gLS1zdGRpbiIKIG1zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs8b3B0aW9ucz5dIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTMKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjQKIG1zZ2lkICJwcmludCBvbmx5IG5hbWVzIChubyBTSEEtMSkiCiBtc2dzdHIgImFmZmljaGVyIHNldWxlbWVudCBsZXMgbm9tcyAocGFzIGRlIFNIQS0xKSIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxNAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUyNQogbXNnaWQgIm9ubHkgdXNlIHRhZ3MgdG8gbmFtZSB0aGUgY29tbWl0cyIKIG1zZ3N0ciAidXRpbGlzZXIgc2V1bGVtZW50IGxlcyDDqXRpcXVldHRlcyBwb3VyIG5vbW1lciBsZXMgdmFsaWRhdGlvbnMiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTYKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjcKIG1zZ2lkICJvbmx5IHVzZSByZWZzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKIG1zZ3N0ciAidXRpbGlzZXIgc2V1bGVtZW50IGxlcyByw6lmw6lyZW5jZXMgY29ycmVzcG9uZGFudCDDoCA8bW90aWY+IgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE4CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI5CiBtc2dpZCAiaWdub3JlIHJlZnMgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICJpZ25vcmVyIGxlcyByw6lmw6lyZW5jZXMgY29ycmVzcG9uZGFudCDDoCA8bW90aWY+IgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIwCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMxCiBtc2dpZCAibGlzdCBhbGwgY29tbWl0cyByZWFjaGFibGUgZnJvbSBhbGwgcmVmcyIKIG1zZ3N0ciAiIgogImFmZmljaGVyIHRvdXRlcyBsZXMgdmFsaWRhdGlvbnMgYWNjZXNzaWJsZXMgZGVwdWlzIHRvdXRlcyBsZXMgcsOpZsOpcmVuY2VzIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIxCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMyCiBtc2dpZCAicmVhZCBmcm9tIHN0ZGluIgogbXNnc3RyICJsaXJlIGRlcHVpcyBsJ2VudHLDqWUgc3RhbmRhcmQiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjIKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzMKIG1zZ2lkICJhbGxvdyB0byBwcmludCBgdW5kZWZpbmVkYCBuYW1lcyAoZGVmYXVsdCkiCiBtc2dzdHIgImF1dG9yaXNlciBsJ2FmZmljaGFnZSBkZXMgbm9tcyBgbm9uIGTDqWZpbmlzYCAocGFyIGTDqWZhdXQpIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDI4CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTM5CiBtc2dpZCAiZGVyZWZlcmVuY2UgdGFncyBpbiB0aGUgaW5wdXQgKGludGVybmFsIHVzZSkiCiBtc2dzdHIgImTDqXLDqWbDqXJlbmNlciBsZXMgw6l0aXF1ZXR0ZXMgZW4gZW50csOpZSAodXNhZ2UgaW50ZXJuZSkiCiAKQEAgLTEzODQ2LDE0ICsxNzA3MSwxNCBAQAogbXNnaWQgInRoZSBub3RlIGNvbnRlbnRzIGhhdmUgYmVlbiBsZWZ0IGluICVzIgogbXNnc3RyICJsZSBjb250ZW51IGRlIGxhIG5vdGUgYSDDqXTDqSBsYWlzc8OpIGRhbnMgJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzoyNDIgYnVpbHRpbi90YWcuYzo1MTMKKyM6IGJ1aWx0aW4vbm90ZXMuYzoyNDIgYnVpbHRpbi90YWcuYzo1MzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gb3IgcmVhZCAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIG91IGxpcmUgJyVzJyIKIAogIzogYnVpbHRpbi9ub3Rlcy5jOjI2MyBidWlsdGluL25vdGVzLmM6MzEzIGJ1aWx0aW4vbm90ZXMuYzozMTUKLSM6IGJ1aWx0aW4vbm90ZXMuYzozODMgYnVpbHRpbi9ub3Rlcy5jOjQzOCBidWlsdGluL25vdGVzLmM6NTI0Ci0jOiBidWlsdGluL25vdGVzLmM6NTI5IGJ1aWx0aW4vbm90ZXMuYzo2MDcgYnVpbHRpbi9ub3Rlcy5jOjY2OQorIzogYnVpbHRpbi9ub3Rlcy5jOjM4MyBidWlsdGluL25vdGVzLmM6NDM4IGJ1aWx0aW4vbm90ZXMuYzo1MjYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MzEgYnVpbHRpbi9ub3Rlcy5jOjYxMCBidWlsdGluL25vdGVzLmM6NjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHLDqXNvdWRyZSAnJXMnIGNvbW1lIHVuZSByw6lmw6lyZW5jZSB2YWxpZGUuIgpAQCAtMTM4ODYsMzggKzE3MTExLDM4IEBACiBtc2dpZCAicmVmdXNpbmcgdG8gJXMgbm90ZXMgaW4gJXMgKG91dHNpZGUgb2YgcmVmcy9ub3Rlcy8pIgogbXNnc3RyICJSZWZ1cyBkZSBmYWlyZSAlcyBzdXIgZGVzIG5vdGVzIGRhbnMgJXMgKGhvcnMgZGUgcmVmcy9ub3Rlcy8pIgogCi0jOiBidWlsdGluL25vdGVzLmM6Mzc2IGJ1aWx0aW4vbm90ZXMuYzo0MzEgYnVpbHRpbi9ub3Rlcy5jOjUwNwotIzogYnVpbHRpbi9ub3Rlcy5jOjUxOSBidWlsdGluL25vdGVzLmM6NTk1IGJ1aWx0aW4vbm90ZXMuYzo2NjIKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4MTIgYnVpbHRpbi9ub3Rlcy5jOjk1OSBidWlsdGluL25vdGVzLmM6OTgwCisjOiBidWlsdGluL25vdGVzLmM6Mzc2IGJ1aWx0aW4vbm90ZXMuYzo0MzEgYnVpbHRpbi9ub3Rlcy5jOjUwOQorIzogYnVpbHRpbi9ub3Rlcy5jOjUyMSBidWlsdGluL25vdGVzLmM6NTk4IGJ1aWx0aW4vbm90ZXMuYzo2NjUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MTUgYnVpbHRpbi9ub3Rlcy5jOjk2MyBidWlsdGluL25vdGVzLmM6OTg1CiBtc2dpZCAidG9vIG1hbnkgcGFyYW1ldGVycyIKIG1zZ3N0ciAidHJvcCBkZSBwYXJhbcOodHJlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjM4OSBidWlsdGluL25vdGVzLmM6Njc1CisjOiBidWlsdGluL25vdGVzLmM6Mzg5IGJ1aWx0aW4vbm90ZXMuYzo2NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gbm90ZSBmb3VuZCBmb3Igb2JqZWN0ICVzLiIKIG1zZ3N0ciAicGFzIGRlIG5vdGUgdHJvdXbDqWUgcG91ciBsJ29iamV0ICVzLiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxMCBidWlsdGluL25vdGVzLmM6NTczCisjOiBidWlsdGluL25vdGVzLmM6NDEwIGJ1aWx0aW4vbm90ZXMuYzo1NzYKIG1zZ2lkICJub3RlIGNvbnRlbnRzIGFzIGEgc3RyaW5nIgogbXNnc3RyICJjb250ZW51IGRlIGxhIG5vdGUgc291cyBmb3JtZSBkZSBjaGHDrm5lIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDEzIGJ1aWx0aW4vbm90ZXMuYzo1NzYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTMgYnVpbHRpbi9ub3Rlcy5jOjU3OQogbXNnaWQgIm5vdGUgY29udGVudHMgaW4gYSBmaWxlIgogbXNnc3RyICJjb250ZW51IGRlIGxhIG5vdGUgZGFucyB1biBmaWNoaWVyIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDE2IGJ1aWx0aW4vbm90ZXMuYzo1NzkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTYgYnVpbHRpbi9ub3Rlcy5jOjU4MgogbXNnaWQgInJldXNlIGFuZCBlZGl0IHNwZWNpZmllZCBub3RlIG9iamVjdCIKIG1zZ3N0ciAicsOpdXRpbGlzZXIgZXQgw6lkaXRlciBsJ29iamV0IGRlIG5vdGUgc3DDqWNpZmnDqSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxOSBidWlsdGluL25vdGVzLmM6NTgyCisjOiBidWlsdGluL25vdGVzLmM6NDE5IGJ1aWx0aW4vbm90ZXMuYzo1ODUKIG1zZ2lkICJyZXVzZSBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCiBtc2dzdHIgInLDqXV0aWxpc2VyIGwnb2JqZXQgZGUgbm90ZSBzcMOpY2lmacOpIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDIyIGJ1aWx0aW4vbm90ZXMuYzo1ODUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MjIgYnVpbHRpbi9ub3Rlcy5jOjU4OAogbXNnaWQgImFsbG93IHN0b3JpbmcgZW1wdHkgbm90ZSIKIG1zZ3N0ciAicGVybWV0dHJlIGRlIHN0b2NrZXIgdW5lIG5vdGUgdmlkZSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQyMyBidWlsdGluL25vdGVzLmM6NDk0CisjOiBidWlsdGluL25vdGVzLmM6NDIzIGJ1aWx0aW4vbm90ZXMuYzo0OTYKIG1zZ2lkICJyZXBsYWNlIGV4aXN0aW5nIG5vdGVzIgogbXNnc3RyICJyZW1wbGFjZXIgbGVzIG5vdGVzIGV4aXN0YW50ZXMiCiAKQEAgLTEzOTMwLDMwICsxNzE1NSwzMCBAQAogIkltcG9zc2libGUgZCdham91dGVyIGRlcyBub3Rlcy4gRGVzIG5vdGVzIG9udCDDqXTDqSB0cm91dsOpZXMgcG91ciBsJ29iamV0ICVzLiAiCiAiVXRpbGlzZXogJy1mJyBwb3VyIMOpY3Jhc2VyIGxlcyBub3RlcyBleGlzdGFudGVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDYzIGJ1aWx0aW4vbm90ZXMuYzo1NDIKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NjMgYnVpbHRpbi9ub3Rlcy5jOjU0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJPdmVyd3JpdGluZyBleGlzdGluZyBub3RlcyBmb3Igb2JqZWN0ICVzXG4iCiBtc2dzdHIgIsOJY3Jhc2VtZW50IGRlcyBub3RlcyBleGlzdGFudGVzIHBvdXIgbCdvYmpldCAlc1xuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDc0IGJ1aWx0aW4vbm90ZXMuYzo2MzQgYnVpbHRpbi9ub3Rlcy5jOjg5OQorIzogYnVpbHRpbi9ub3Rlcy5jOjQ3NSBidWlsdGluL25vdGVzLmM6NjM3IGJ1aWx0aW4vbm90ZXMuYzo5MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3Zpbmcgbm90ZSBmb3Igb2JqZWN0ICVzXG4iCiBtc2dzdHIgIlN1cHByZXNzaW9uIGRlIGxhIG5vdGUgcG91ciBsJ29iamV0ICVzXG4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0OTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTcKIG1zZ2lkICJyZWFkIG9iamVjdHMgZnJvbSBzdGRpbiIKIG1zZ3N0ciAibGlyZSBsZXMgb2JqZXRzIGRlcHVpcyBsJ2VudHLDqWUgc3RhbmRhcmQiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0OTcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTkKIG1zZ2lkICJsb2FkIHJld3JpdGluZyBjb25maWcgZm9yIDxjb21tYW5kPiAoaW1wbGllcyAtLXN0ZGluKSIKIG1zZ3N0ciAiIgogImNoYXJnZXIgbGEgY29uZmlndXJhdGlvbiBkZSByw6nDqWNyaXR1cmUgcG91ciA8Y29tbWFuZGU+IChpbXBsaXF1ZSAtLXN0ZGluKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjUxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjUxNwogbXNnaWQgInRvbyBmZXcgcGFyYW1ldGVycyIKIG1zZ3N0ciAicGFzIGFzc2V6IGRlIHBhcmFtw6h0cmVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTM2CisjOiBidWlsdGluL25vdGVzLmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgY29weSBub3Rlcy4gRm91bmQgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlcy4gVXNlICctZicgdG8gb3ZlcndyaXRlICIKQEAgLTEzOTYyLDEyICsxNzE4NywxMiBAQAogIkltcG9zc2libGUgZGUgY29waWVyIGRlcyBub3Rlcy4gRGVzIG5vdGVzIG9udCDDqXTDqSB0cm91dsOpZXMgcG91ciBsJ29iamV0ICVzLiAiCiAiVXRpbGlzZXogJy1mJyBwb3VyIMOpY3Jhc2VyIGxlcyBub3RlcyBleGlzdGFudGVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTQ4CisjOiBidWlsdGluL25vdGVzLmM6NTUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3Npbmcgbm90ZXMgb24gc291cmNlIG9iamVjdCAlcy4gQ2Fubm90IGNvcHkuIgogbXNnc3RyICJub3RlcyBtYW5xdWFudGVzIHN1ciBsJ29iamV0IHNvdXJjZSAlcy4gSW1wb3NzaWJsZSBkZSBjb3BpZXIuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NjAwCisjOiBidWlsdGluL25vdGVzLmM6NjAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgLW0vLUYvLWMvLUMgb3B0aW9ucyBoYXZlIGJlZW4gZGVwcmVjYXRlZCBmb3IgdGhlICdlZGl0JyBzdWJjb21tYW5kLlxuIgpAQCAtMTM5NzYsNTIgKzE3MjAxLDUyIEBACiAiTGVzIG9wdGlvbnMgLW0vLUYvLWMvLUMgc29udCBvYnNvbMOodGVzIHBvdXIgbGEgc291cy1jb21tYW5kZSAnZWRpdCcuXG4iCiAiVmV1aWxsZXogdXRpbGlzZXIgJ2dpdCBub3RlcyBhZGQgLWYgLW0vLUYvLWMvLUMnIMOgIGxhIHBsYWNlLlxuIgogCi0jOiBidWlsdGluL25vdGVzLmM6Njk1CisjOiBidWlsdGluL25vdGVzLmM6Njk4CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKIG1zZ3N0ciAiw6ljaGVjIGRlIGxhIHN1cHByZXNzaW9uIGRlIGxhIHLDqWbDqXJlbmNlIE5PVEVTX01FUkdFX1BBUlRJQUwiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2OTcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDAKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIHJlZiBOT1RFU19NRVJHRV9SRUYiCiBtc2dzdHIgIsOpY2hlYyBkZSBsYSBzdXBwcmVzc2lvbiBkZSBsYSByw6lmw6lyZW5jZSBOT1RFU19NRVJHRV9SRUYiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2OTkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDIKIG1zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICdnaXQgbm90ZXMgbWVyZ2UnIHdvcmt0cmVlIgogbXNnc3RyICLDqWNoZWMgZGUgbGEgc3VwcHJlc3Npb24gZGUgbGEgY29waWUgZGUgdHJhdmFpbCAnZ2l0IG5vdGVzIG1lcmdlJyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjcxOQorIzogYnVpbHRpbi9ub3Rlcy5jOjcyMgogbXNnaWQgImZhaWxlZCB0byByZWFkIHJlZiBOT1RFU19NRVJHRV9QQVJUSUFMIgogbXNnc3RyICLDqWNoZWMgZGUgbGEgbGVjdHVyZSBkZSBsYSByw6lmw6lyZW5jZSBOT1RFU19NRVJHRV9QQVJUSUFMIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzIxCisjOiBidWlsdGluL25vdGVzLmM6NzI0CiBtc2dpZCAiY291bGQgbm90IGZpbmQgY29tbWl0IGZyb20gTk9URVNfTUVSR0VfUEFSVElBTC4iCiBtc2dzdHIgImltcG9zc2libGUgZGUgdHJvdXZlciBsZSBjb21taXQgZGUgTk9URVNfTUVSR0VfUEFSVElBTC4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjYKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0IGZyb20gTk9URVNfTUVSR0VfUEFSVElBTC4iCiBtc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBsZSBjb21taXQgZGUgTk9URVNfTUVSR0VfUEFSVElBTC4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MzYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MzkKIG1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSBOT1RFU19NRVJHRV9SRUYiCiBtc2dzdHIgIsOpY2hlYyBkZSBsYSByw6lzb2x1dGlvbiBkZSBOT1RFU19NRVJHRV9SRUYiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MzkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NDIKIG1zZ2lkICJmYWlsZWQgdG8gZmluYWxpemUgbm90ZXMgbWVyZ2UiCiBtc2dzdHIgImltcG9zc2libGUgZGUgZmluYWxpc2VyIGxhIGZ1c2lvbiBkZSBub3RlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc2NQorIzogYnVpbHRpbi9ub3Rlcy5jOjc2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG5vdGVzIG1lcmdlIHN0cmF0ZWd5ICVzIgogbXNnc3RyICJzdHJhdMOpZ2llIGRlIGZ1c2lvbiBkZSBub3RlcyBpbmNvbm51ZSAlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4MQorIzogYnVpbHRpbi9ub3Rlcy5jOjc4NAogbXNnaWQgIkdlbmVyYWwgb3B0aW9ucyIKIG1zZ3N0ciAiT3B0aW9ucyBnw6luw6lyYWxlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4MworIzogYnVpbHRpbi9ub3Rlcy5jOjc4NgogbXNnaWQgIk1lcmdlIG9wdGlvbnMiCiBtc2dzdHIgIk9wdGlvbnMgZGUgZnVzaW9uIgogCi0jOiBidWlsdGluL25vdGVzLmM6Nzg1CisjOiBidWlsdGluL25vdGVzLmM6Nzg4CiBtc2dpZCAiIgogInJlc29sdmUgbm90ZXMgY29uZmxpY3RzIHVzaW5nIHRoZSBnaXZlbiBzdHJhdGVneSAobWFudWFsL291cnMvdGhlaXJzL3VuaW9uLyIKICJjYXRfc29ydF91bmlxKSIKQEAgLTE0MDI5LDQ3ICsxNzI1NCw0NyBAQAogInLDqXNvdWRyZSBsZXMgY29uZmxpdHMgZGUgbm90ZXMgZW4gdXRpbGlzYW50IGxhIHN0cmF0w6lnaWUgZG9ubsOpZSAobWFudWFsL291cnMvIgogInRoZWlycy91bmlvbi9jYXRfc29ydF91bmlxKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4NworIzogYnVpbHRpbi9ub3Rlcy5jOjc5MAogbXNnaWQgIkNvbW1pdHRpbmcgdW5tZXJnZWQgbm90ZXMiCiBtc2dzdHIgIlZhbGlkYXRpb24gZGVzIG5vdGVzIG5vbiBmdXNpb25uw6llcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4OQorIzogYnVpbHRpbi9ub3Rlcy5jOjc5MgogbXNnaWQgImZpbmFsaXplIG5vdGVzIG1lcmdlIGJ5IGNvbW1pdHRpbmcgdW5tZXJnZWQgbm90ZXMiCiBtc2dzdHIgImZpbmFsaXNlciBsYSBmdXNpb24gZGUgbm90ZXMgZW4gdmFsaWRhbnQgbGVzIG5vdGVzIG5vbiBmdXNpb25uw6llcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc5MQorIzogYnVpbHRpbi9ub3Rlcy5jOjc5NAogbXNnaWQgIkFib3J0aW5nIG5vdGVzIG1lcmdlIHJlc29sdXRpb24iCiBtc2dzdHIgIkFiYW5kb24gZGUgbGEgcsOpc29sdXRpb24gZGUgZnVzaW9uIGRlcyBub3RlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc5MworIzogYnVpbHRpbi9ub3Rlcy5jOjc5NgogbXNnaWQgImFib3J0IG5vdGVzIG1lcmdlIgogbXNnc3RyICJhYmFuZG9ubmVyIGxhIGZ1c2lvbiBkZSBub3RlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjgwNAorIzogYnVpbHRpbi9ub3Rlcy5jOjgwNwogbXNnaWQgImNhbm5vdCBtaXggLS1jb21taXQsIC0tYWJvcnQgb3IgLXMvLS1zdHJhdGVneSIKIG1zZ3N0ciAiLS1jb21taXQsIC0tYWJvcnQgZXQgLXMvLS1zdHJhdGVneSBzb250IG11dHVlbGxlbWVudCBpbmNvbXBhdGlibGVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODA5CisjOiBidWlsdGluL25vdGVzLmM6ODEyCiBtc2dpZCAibXVzdCBzcGVjaWZ5IGEgbm90ZXMgcmVmIHRvIG1lcmdlIgogbXNnc3RyICJ2b3VzIGRldmV6IHNww6ljaWZpZXIgdW5lIHLDqWbDqXJlbmNlIGRlIG5vdGVzIMOgIGZ1c2lvbm5lciIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjgzMworIzogYnVpbHRpbi9ub3Rlcy5jOjgzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIC1zLy0tc3RyYXRlZ3k6ICVzIgogbXNnc3RyICItcy8tLXN0cmF0ZWd5IGluY29ubnXCoDogJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSBub3RlcyBtZXJnZSBpbnRvICVzIGlzIGFscmVhZHkgaW4tcHJvZ3Jlc3MgYXQgJXMiCiBtc2dzdHIgInVuZSBmdXNpb24gZGUgbm90ZXMgZGFucyAlcyBlc3QgZMOpasOgIGVuIGNvdXJzIGF2ZWMgJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0b3JlIGxpbmsgdG8gY3VycmVudCBub3RlcyByZWYgKCVzKSIKIG1zZ3N0ciAiIgogImltcG9zc2libGUgZGUgc3RvY2tlciBsZSBsaWVuIHZlcnMgbGEgcsOpZsOpcmVuY2UgYWN0dWVsbGUgYXV4IG5vdGVzICglcykiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkF1dG9tYXRpYyBub3RlcyBtZXJnZSBmYWlsZWQuIEZpeCBjb25mbGljdHMgaW4gJXMgYW5kIGNvbW1pdCB0aGUgcmVzdWx0IHdpdGggIgpAQCAtMTQwNzcsMTgxICsxNzMwMiwxNjMgQEAKICJhYm9ydCcuXG4iCiBtc2dzdHIgIiIKICJMYSBmdXNpb24gYXV0b21hdGlxdWUgZGVzIG5vdGVzIGEgw6ljaG91w6kuIENvcnJpZ2V6IGxlcyBjb25mbGl0cyBkYW5zICVzIGV0ICIKLSJ2YWxpZGUgbGUgcsOpc3VsdGF0IGF2ZWMgJ2dpdCBub3RlcyBtZXJnZXMgLS1jb21taXQnLCBvdSBhYmFuZG9ubmV6IGxhIGZ1c2lvbiAiCi0iYXZlYyAnZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQnLlxuIgorInZhbGlkZXogbGUgcsOpc3VsdGF0IGF2ZWMgJ2dpdCBub3RlcyBtZXJnZXMgLS1jb21taXQnLCBvdSBhYmFuZG9ubmV6IGxhICIKKyJmdXNpb24gYXZlYyAnZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQnLlxuIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODk3CisjOiBidWlsdGluL25vdGVzLmM6ODk3IGJ1aWx0aW4vdGFnLmM6NTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgorbXNnc3RyICJJbXBvc3NpYmxlIGRlIHLDqXNvdWRyZSAnJXMnIGNvbW1lIHVuZSByw6lmw6lyZW5jZSB2YWxpZGUuIgorCisjOiBidWlsdGluL25vdGVzLmM6OTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9iamVjdCAlcyBoYXMgbm8gbm90ZVxuIgogbXNnc3RyICJMJ29iamV0ICVzIG4nYSBwYXMgZGUgbm90ZVxuIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTA5CisjOiBidWlsdGluL25vdGVzLmM6OTEyCiBtc2dpZCAiYXR0ZW1wdCB0byByZW1vdmUgbm9uLWV4aXN0ZW50IG5vdGUgaXMgbm90IGFuIGVycm9yIgogbXNnc3RyICIiCiAibGEgdGVudGF0aXZlIGRlIHN1cHByZXNzaW9uIGQndW5lIG5vdGUgbm9uIGV4aXN0YW50ZSBuJ2VzdCBwYXMgdW5lIGVycmV1ciIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjkxMgorIzogYnVpbHRpbi9ub3Rlcy5jOjkxNQogbXNnaWQgInJlYWQgb2JqZWN0IG5hbWVzIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJsaXJlIGxlcyBub21zIGQnb2JqZXQgZGVwdWlzIGwnZW50csOpZSBzdGFuZGFyZCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk1MCBidWlsdGluL3BydW5lLmM6MTA4IGJ1aWx0aW4vd29ya3RyZWUuYzoxNjQKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NTQgYnVpbHRpbi9wcnVuZS5jOjEzMCBidWlsdGluL3dvcmt0cmVlLmM6MTY0CiBtc2dpZCAiZG8gbm90IHJlbW92ZSwgc2hvdyBvbmx5IgogbXNnc3RyICJuZSBwYXMgc3VwcHJpbWVyLCBhZmZpY2hlciBzZXVsZW1lbnQiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5NTEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NTUKIG1zZ2lkICJyZXBvcnQgcHJ1bmVkIG5vdGVzIgogbXNnc3RyICJhZmZpY2hlciBsZXMgbm90ZXMgw6lsaW1pbsOpZXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5OTMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5OTgKIG1zZ2lkICJub3Rlcy1yZWYiCiBtc2dzdHIgInLDqWbDqXJlbmNlcy1ub3RlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk5NAorIzogYnVpbHRpbi9ub3Rlcy5jOjk5OQogbXNnaWQgInVzZSBub3RlcyBmcm9tIDxub3Rlcy1yZWY+IgogbXNnc3RyICJ1dGlsaXNlciBsZXMgbm90ZXMgZGVwdWlzIDxyw6lmw6lyZW5jZXMtbm90ZXM+IgogCi0jOiBidWlsdGluL25vdGVzLmM6MTAyOQorIzogYnVpbHRpbi9ub3Rlcy5jOjEwMzQgYnVpbHRpbi9zdGFzaC5jOjE2NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBzdWJjb21tYW5kOiAlcyIKIG1zZ3N0ciAic291cy1jb21tYW5kZSBpbmNvbm51ZSA6ICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUyCiBtc2dpZCAiIgogImdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgWzxvcHRpb25zPi4uLl0gWzwgPHJlZi1saXN0PiB8IDwgPG9iamVjdC1saXN0Pl0iCiBtc2dzdHIgIiIKICJnaXQgcGFjay1vYmplY3RzIC0tc3Rkb3V0IFtvcHRpb25zLi4uXSBbPCA8bGlzdGUtcsOpZsOpcmVuY2VzPiB8IDwgPGxpc3RlLSIKICJvYmpldHM+XSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1MgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1MwogbXNnaWQgIiIKICJnaXQgcGFjay1vYmplY3RzIFs8b3B0aW9ucz4uLi5dIDxiYXNlLW5hbWU+IFs8IDxyZWYtbGlzdD4gfCA8IDxvYmplY3QtbGlzdD5dIgogbXNnc3RyICIiCiAiZ2l0IHBhY2stb2JqZWN0cyBbb3B0aW9ucy4uLl0gYmFzZS1uYW1lIFs8IDxsaXN0ZS1yw6lmw6lyZW5jZXM+IHwgPCA8bGlzdGUtIgogIm9iamV0cz5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQyMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2tlZCBvYmplY3QgQ1JDIGZvciAlcyIKIG1zZ3N0ciAibWF1dmFpcyBDUkMgZCdvYmpldCBlbXBhcXVldMOpIHBvdXIgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDMzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQ0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IHBhY2tlZCBvYmplY3QgZm9yICVzIgogbXNnc3RyICJvYmpldCBlbXBhcXVldMOpIGNvcnJvbXB1IHBvdXIgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTY0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjU3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWN1cnNpdmUgZGVsdGEgZGV0ZWN0ZWQgZm9yIG9iamVjdCAlcyIKIG1zZ3N0ciAiZGVsdGEgcsOpY3Vyc2lmIGTDqXRlY3TDqSBwb3VyIGwnb2JqZXQgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzc1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJvcmRlcmVkICV1IG9iamVjdHMsIGV4cGVjdGVkICU8UFJJdTMyPiIKIG1zZ3N0ciAiJXUgb2JqZXRzIGNvbW1hbmTDqXMsICU8UFJJdTMyPiBhdHRlbmR1cyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3ODgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGFja2ZpbGUgaXMgaW52YWxpZDogJXMiCi1tc2dzdHIgImxlIGZpY2hpZXIgcGFja2V0IGVzdCBpbnZhbGlkZcKgOiAlcyIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3OTIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIG9wZW4gcGFja2ZpbGUgZm9yIHJldXNlOiAlcyIKLW1zZ3N0ciAib3V2ZXJ0dXJlIGR1IGZpY2hpZXIgcGFxdWV0IHBvdXIgcsOpdXRpbGlzYXRpb24gaW1wb3NzaWJsZcKgOiAlcyIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3OTYKLW1zZ2lkICJ1bmFibGUgdG8gc2VlayBpbiByZXVzZWQgcGFja2ZpbGUiCi1tc2dzdHIgImltcG9zc2libGUgZGUgcmVjaGVyY2hlciAoc2VlaykgZGFucyBsZSBmaWNoaWVyIHBhcXVldCByw6l1dGlsaXPDqSIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4MDcKLW1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmcm9tIHJldXNlZCBwYWNrZmlsZSIKLW1zZ3N0ciAibGVjdHVyZSBkdSBmaWNoaWVyIGRlIHBhcXVldCByw6l1dGlsaXPDqSBpbXBvc3NpYmxlIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjgzNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5NzIKIG1zZ2lkICJkaXNhYmxpbmcgYml0bWFwIHdyaXRpbmcsIHBhY2tzIGFyZSBzcGxpdCBkdWUgdG8gcGFjay5wYWNrU2l6ZUxpbWl0IgogbXNnc3RyICIiCiAiZMOpc2FjdGl2YXRpb24gZGUgbCfDqWNyaXR1cmUgZW4gYml0bWFwLCBsZXMgZmljaGllcnMgcGFxdWV0cyBzb250IHNjaW5kw6lzIMOgICIKICJjYXVzZSBkZSBwYWNrLnBhY2tTaXplTGltaXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODQ4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk4NQogbXNnaWQgIldyaXRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiw4ljcml0dXJlIGRlcyBvYmpldHMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTEwIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6ODgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA0NiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBzdGF0ICVzIgogbXNnc3RyICLDqWNoZWMgZHUgc3RhdCBkZSAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5NjMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm90ZSAlPFBSSXUzMj4gb2JqZWN0cyB3aGlsZSBleHBlY3RpbmcgJTxQUkl1MzI+IgogbXNnc3RyICIlPFBSSXUzMj4gb2JqZXRzIMOpY3JpdHMsICU8UFJJdTMyPiBhdHRlbmR1cyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMTU3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjEyOTcKIG1zZ2lkICJkaXNhYmxpbmcgYml0bWFwIHdyaXRpbmcsIGFzIHNvbWUgb2JqZWN0cyBhcmUgbm90IGJlaW5nIHBhY2tlZCIKIG1zZ3N0ciAiIgogImTDqXNhY3RpdmF0aW9uIGRlIGwnw6ljcml0dXJlIGVuIGJpdG1hcCBjYXIgY2VydGFpbnMgb2JqZXRzIG5lIHNvbnQgcGFzICIKICJjb21wcmVzc8OpcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTg1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE3MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgb3ZlcmZsb3cgaW4gcGFjayBmb3IgJXMiCiBtc2dzdHIgImTDqXBhc3NlbWVudCBkZSBkw6ljYWxhZ2UgZGUgYmFzZSBkZSBkZWx0YSBwb3VyICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE1OTQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTczMwogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWx0YSBiYXNlIG9mZnNldCBvdXQgb2YgYm91bmQgZm9yICVzIgogbXNnc3RyICJkw6ljYWxhZ2UgZGUgYmFzZSBkZSBkZWx0YSBlc3QgaG9ycyBsaW1pdGUgcG91ciAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxODYzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwMDQKIG1zZ2lkICJDb3VudGluZyBvYmplY3RzIgogbXNnc3RyICJEw6ljb21wdGUgZGVzIG9iamV0cyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxOTk4Ci0jLCBjLWZvcm1hdAotbXNnaWQgInVuYWJsZSB0byBnZXQgc2l6ZSBvZiAlcyIKLW1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByw6ljdXDDqXJlciBsYSB0YWlsbGUgZGUgJXMiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjAxMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBvYmplY3QgaGVhZGVyIG9mICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbCdlbnTDqnRlIGQnb2JqZXQgZGUgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA4MyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwOTkKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEwOQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjE5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIzNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBjYW5ub3QgYmUgcmVhZCIKIG1zZ3N0ciAibCdvYmpldCAlcyBuZSBwZXV0IMOqdHJlIGx1IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwODYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTEzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyMjIgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBpbmNvbnNpc3RlbnQgb2JqZWN0IGxlbmd0aCAoJTxQUkl1TUFYPiB2cyAlPFBSSXVNQVg+KSIKIG1zZ3N0ciAiIgogIm9iamV0ICVzIGxvbmd1ZXVyIGRlIGwnb2JqZXQgaW5jb25zaXN0YW50ZSAoJTxQUkl1TUFYPiBjb250cmUgJTxQUkl1TUFYPikiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEyMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjU5CiBtc2dpZCAic3Vib3B0aW1hbCBwYWNrIC0gb3V0IG9mIG1lbW9yeSIKIG1zZ3N0ciAicGFxdWV0IHNvdXMtb3B0aW1hbCAtIG3DqW1vaXJlIGluc3VmZmlzYW50ZSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNDUxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI1NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsdGEgY29tcHJlc3Npb24gdXNpbmcgdXAgdG8gJWQgdGhyZWFkcyIKIG1zZ3N0ciAiQ29tcHJlc3Npb24gcGFyIGRlbHRhIGVuIHV0aWxpc2FudCBqdXNxdSfDoCAlZCBmaWxzIGQnZXjDqWN1dGlvbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNTgzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhY2sgb2JqZWN0cyByZWFjaGFibGUgZnJvbSB0YWcgJXMiCiBtc2dzdHIgImltcG9zc2libGUgZCdlbXBhcXVldGVyIGxlcyBvYmpldHMgam9pZ25hYmxlcyBkZXB1aXMgbCfDqXRpcXVldHRlICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2NzAKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjgwMQogbXNnaWQgIkNvbXByZXNzaW5nIG9iamVjdHMiCiBtc2dzdHIgIkNvbXByZXNzaW9uIGRlcyBvYmpldHMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjY3NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODA3CiBtc2dpZCAiaW5jb25zaXN0ZW5jeSB3aXRoIGRlbHRhIGNvdW50IgogbXNnc3RyICJpbmNvbnNpc3RhbmNlIGRhbnMgbGUgY29tcHRlIGRlIGRlbHRhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3NTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhwZWN0ZWQgZWRnZSBvYmplY3QgSUQsIGdvdCBnYXJiYWdlOlxuIgpAQCAtMTQyNjAsNyArMTc0NjcsNyBAQAogIklEIGQnb2JqZXQgZGUgYm9yZCBhdHRlbmR1LCByZcOndSBkZXMgZG9ubsOpZXMgaWxsaXNpYmxlc8KgOlxuIgogIiVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3NTkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg5NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhwZWN0ZWQgb2JqZWN0IElELCBnb3QgZ2FyYmFnZTpcbiIKQEAgLTE0MjY5LDI1OCArMTc0NzYsMjUzIEBACiAiSUQgZCdvYmpldCBhdHRlbmR1LCByZcOndSBkZXMgZG9ubsOpZXMgaWxsaXNpYmxlc8KgOlxuIgogIiVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjk5MgogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yIC0tbWlzc2luZyIKIG1zZ3N0ciAidmFsZXVyIGludmFsaWRlIHBvdXIgLS1taXNzaW5nIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5MTYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDI0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwNTEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTU5CiBtc2dpZCAiY2Fubm90IG9wZW4gcGFjayBpbmRleCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsJ2luZGV4IGRlIHBhcXVldCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTQ3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwODIKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9vc2Ugb2JqZWN0IGF0ICVzIGNvdWxkIG5vdCBiZSBleGFtaW5lZCIKIG1zZ3N0ciAibCdvYmpldCBsaWJyZSDDoCAlcyBuJ2EgcGFzIHB1IMOqdHJlIGV4YW1pbsOpIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwMzIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE2NwogbXNnaWQgInVuYWJsZSB0byBmb3JjZSBsb29zZSBvYmplY3QiCiBtc2dzdHIgImltcG9zc2libGUgZGUgZm9yY2VyIGwnb2JqZXQgbGlicmUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEyMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjYwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHJldiAnJXMnIgogbXNnc3RyICInJXMnIG4nZXN0IHBhcyB1bmUgcsOpdmlzaW9uIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMjUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcmV2aXNpb24gJyVzJyIKIG1zZ3N0ciAibWF1dmFpc2UgcsOpdmlzaW9uICclcyciCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE1MAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg4CiBtc2dpZCAidW5hYmxlIHRvIGFkZCByZWNlbnQgb2JqZWN0cyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2Fqb3V0ZXIgbGVzIG9iamV0cyByw6ljZW50cyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjAzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5zdXBwb3J0ZWQgaW5kZXggdmVyc2lvbiAlcyIKIG1zZ3N0ciAidmVyc2lvbiBkJ2luZGV4IG5vbiBzdXBwb3J0w6llICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMDcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgaW5kZXggdmVyc2lvbiAnJXMnIgogbXNnc3RyICJtYXV2YWlzZSB2ZXJzaW9uIGQnaW5kZXggJyVzJyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjM3Ci1tc2dpZCAiZG8gbm90IHNob3cgcHJvZ3Jlc3MgbWV0ZXIiCi1tc2dzdHIgIm5lIHBhcyBhZmZpY2hlciBsYSBiYXJyZSBkZSBwcm9ncmVzc2lvbiIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjM5Ci1tc2dpZCAic2hvdyBwcm9ncmVzcyBtZXRlciIKLW1zZ3N0ciAiYWZmaWNoZXIgbGEgYmFycmUgZGUgcHJvZ3Jlc3Npb24iCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0MQotbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIgZHVyaW5nIG9iamVjdCB3cml0aW5nIHBoYXNlIgotbXNnc3RyICJhZmZpY2hlciBsYSBiYXJyZSBkZSBwcm9ncmVzc2lvbiBkdXJhbnQgbGEgcGhhc2UgZCfDqWNyaXRlIGRlcyBvYmpldHMiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0NAotbXNnaWQgInNpbWlsYXIgdG8gLS1hbGwtcHJvZ3Jlc3Mgd2hlbiBwcm9ncmVzcyBtZXRlciBpcyBzaG93biIKLW1zZ3N0ciAic2ltaWxhaXJlIMOgIC0tYWxsLXByb2dyZXNzIHF1YW5kIGxhIGJhcnJlIGRlIHByb2dyZXNzaW9uIGVzdCBhZmZpY2jDqWUiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzgzCiBtc2dpZCAiPHZlcnNpb24+Wyw8b2Zmc2V0Pl0iCiBtc2dzdHIgIjx2ZXJzaW9uPlssPGTDqWNhbGFnZT5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4NAogbXNnaWQgIndyaXRlIHRoZSBwYWNrIGluZGV4IGZpbGUgaW4gdGhlIHNwZWNpZmllZCBpZHggZm9ybWF0IHZlcnNpb24iCiBtc2dzdHIgIiIKICLDqWNyaXJlIGxlIGZpY2hpZXIgZCdpbmRleCBkdSBwYXF1ZXQgZGFucyBsZSBmb3JtYXQgZCdpbmRleCBkZSB2ZXJzaW9uICIKICJzcMOpY2lmacOpIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4NwogbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIG91dHB1dCBwYWNrIGZpbGUiCiBtc2dzdHIgInRhaWxsZSBtYXhpbXVtIGRlIGNoYXF1ZSBmaWNoaWVyIHBhcXVldCBlbiBzb3J0aWUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzg5CiBtc2dpZCAiaWdub3JlIGJvcnJvd2VkIG9iamVjdHMgZnJvbSBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlIgogbXNnc3RyICJpZ25vcmVyIGxlcyBvYmpldHMgZW1wcnVudMOpcyDDoCB1biBhdXRyZSBtYWdhc2luIGQnb2JqZXRzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5MQogbXNnaWQgImlnbm9yZSBwYWNrZWQgb2JqZWN0cyIKIG1zZ3N0ciAiaWdub3JlciBsZXMgb2JqZXRzIGVtcGFxdWV0w6lzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5MwogbXNnaWQgImxpbWl0IHBhY2sgd2luZG93IGJ5IG9iamVjdHMiCiBtc2dzdHIgImxpbWl0ZXIgbGEgZmVuw6p0cmUgZCdlbXBhcXVldGFnZSBwYXIgb2JqZXRzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NQogbXNnaWQgImxpbWl0IHBhY2sgd2luZG93IGJ5IG1lbW9yeSBpbiBhZGRpdGlvbiB0byBvYmplY3QgbGltaXQiCiBtc2dzdHIgIiIKICJsaW1pdGVyIGxhIGZlbsOqdHJlIGQnZW1wYXF1ZXRhZ2UgcGFyIG3DqW1vaXJlIGVuIHBsdXMgZGUgbGEgbGltaXRlIGQnb2JqZXRzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NwogbXNnaWQgIm1heGltdW0gbGVuZ3RoIG9mIGRlbHRhIGNoYWluIGFsbG93ZWQgaW4gdGhlIHJlc3VsdGluZyBwYWNrIgogbXNnc3RyICIiCiAibG9uZ3VldXIgbWF4aW11bSBkZSBsYSBjaGHDrm5lIGRlIGRlbHRhIGF1dG9yaXPDqWUgZGFucyBsZSBwYXF1ZXQgcsOpc3VsdGFudCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjYxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTkKIG1zZ2lkICJyZXVzZSBleGlzdGluZyBkZWx0YXMiCiBtc2dzdHIgInLDqXV0aWxpc2VyIGxlcyBkZWx0YXMgZXhpc3RhbnRzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMQogbXNnaWQgInJldXNlIGV4aXN0aW5nIG9iamVjdHMiCiBtc2dzdHIgInLDqXV0aWxpc2VyIGxlcyBvYmpldHMgZXhpc3RhbnRzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMwogbXNnaWQgInVzZSBPRlNfREVMVEEgb2JqZWN0cyIKIG1zZ3N0ciAidXRpbGlzZXIgbGVzIG9iamV0cyBPRlNfREVMVEEiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA1CiBtc2dpZCAidXNlIHRocmVhZHMgd2hlbiBzZWFyY2hpbmcgZm9yIGJlc3QgZGVsdGEgbWF0Y2hlcyIKIG1zZ3N0ciAiIgotInV0aWxpc2VyIGRlcyBmaWxzIGxvcnMgZGUgbGEgcmVjaGVyY2hlIHBvdXIgdW5lIG1laWxsZXVycyBjb3JyZXNwb25kYW5jZSBkZXMgIgorInV0aWxpc2VyIGRlcyBmaWxzIGxvcnMgZGUgbGEgcmVjaGVyY2hlIHBvdXIgdW5lIG1laWxsZXVyZSBjb3JyZXNwb25kYW5jZSBkZXMgIgogImRlbHRhcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjY5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDcKIG1zZ2lkICJkbyBub3QgY3JlYXRlIGFuIGVtcHR5IHBhY2sgb3V0cHV0IgogbXNnc3RyICJuZSBwYXMgY3LDqWVyIHVuIHBhcXVldCB2aWRlIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwOQogbXNnaWQgInJlYWQgcmV2aXNpb24gYXJndW1lbnRzIGZyb20gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgImxpcmUgbGVzIHBhcmFtw6h0cmVzIGRlIHLDqXZpc2lvbiBkZXB1aXMgbCdlbnRyw6llIHN0YW5kYXJkIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxMQogbXNnaWQgImxpbWl0IHRoZSBvYmplY3RzIHRvIHRob3NlIHRoYXQgYXJlIG5vdCB5ZXQgcGFja2VkIgogbXNnc3RyICJsaW1pdGVyIGxlcyBvYmpldHMgw6AgY2V1eCBxdWkgbmUgc29udCBwYXMgZW5jb3JlIGVtcGFxdWV0w6lzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNAogbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWFjaGFibGUgZnJvbSBhbnkgcmVmZXJlbmNlIgogbXNnc3RyICJpbmNsdXJlIGxlcyBvYmpldHMgYWNjZXNzaWJsZXMgZGVwdWlzIHRvdXRlIHLDqWbDqXJlbmNlIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNwogbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWZlcnJlZCBieSByZWZsb2cgZW50cmllcyIKIG1zZ3N0ciAiaW5jbHVyZSBsZXMgb2JqZXRzIHLDqWbDqXJlbmPDqXMgcGFyIGxlcyDDqWzDqW1lbnRzIGRlIHJlZmxvZyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjgyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjAKIG1zZ2lkICJpbmNsdWRlIG9iamVjdHMgcmVmZXJyZWQgdG8gYnkgdGhlIGluZGV4IgogbXNnc3RyICJpbmNsdXJlIGxlcyBvYmpldHMgcsOpZsOpcmVuY8OpcyBwYXIgbCdpbmRleCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjMKIG1zZ2lkICJvdXRwdXQgcGFjayB0byBzdGRvdXQiCiBtc2dzdHIgImFmZmljaGVyIGwnZW1wYXF1ZXRhZ2Ugc3VyIGxhIHNvcnRpZSBzdGFuZGFyZCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjUKIG1zZ2lkICJpbmNsdWRlIHRhZyBvYmplY3RzIHRoYXQgcmVmZXIgdG8gb2JqZWN0cyB0byBiZSBwYWNrZWQiCiBtc2dzdHIgImluY2x1cmUgbGVzIG9iamV0cyBkJ8OpdGlxdWV0dGVzIHF1aSByw6lmw6hyZW50IMOgIGRlcyBvYmpldHMgw6AgZW1wYXF1ZXRlciIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjcKIG1zZ2lkICJrZWVwIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgImdhcmRlciBsZXMgb2JqZXRzIGluYWNjZXNzaWJsZXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDI5CiBtc2dpZCAicGFjayBsb29zZSB1bnJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICJlbXBhcXVldGVyIGxlcyBvYmpldHMgaW5hY2Nlc3NpYmxlcyBkw6l0YWNow6lzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQzMQogbXNnaWQgInVucGFjayB1bnJlYWNoYWJsZSBvYmplY3RzIG5ld2VyIHRoYW4gPHRpbWU+IgogbXNnc3RyICJkw6lwYXF1ZXRlciBsZXMgb2JqZXRzIGluYWNjZXNzaWJsZXMgcGx1cyByw6ljZW50cyBxdWUgPGhldXJlPiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzQKK21zZ2lkICJ1c2UgdGhlIHNwYXJzZSByZWFjaGFiaWxpdHkgYWxnb3JpdGhtIgorbXNnc3RyICJ1dGlsaXNlciBsJ2FsZ29yaXRobWUgZGUgam9pZ25hYmlsaXTDqSBjcmV1c2UiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQzNgogbXNnaWQgImNyZWF0ZSB0aGluIHBhY2tzIgogbXNnc3RyICJjcsOpZXIgZGVzIHBhcXVldHMgbMOpZ2VycyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzgKIG1zZ2lkICJjcmVhdGUgcGFja3Mgc3VpdGFibGUgZm9yIHNoYWxsb3cgZmV0Y2hlcyIKIG1zZ3N0ciAiY3LDqWVyIGRlcyBwYXF1ZXRzIHBlcm1ldHRhbnQgZGVzIHLDqWN1cMOpcmF0aW9ucyBzdXBlcmZpY2llbGxlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDAKIG1zZ2lkICJpZ25vcmUgcGFja3MgdGhhdCBoYXZlIGNvbXBhbmlvbiAua2VlcCBmaWxlIgogbXNnc3RyICJpZ25vcmVyIGxlcyBwYXF1ZXRzIHF1aSBvbnQgdW4gZmljaGllciAua2VlcCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDIKIG1zZ2lkICJpZ25vcmUgdGhpcyBwYWNrIgogbXNnc3RyICJpZ25vcmVyIGNlIHBhcXVldCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzA0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDQKIG1zZ2lkICJwYWNrIGNvbXByZXNzaW9uIGxldmVsIgogbXNnc3RyICJuaXZlYXUgZGUgY29tcHJlc3Npb24gZHUgcGFxdWV0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0NgogbXNnaWQgImRvIG5vdCBoaWRlIGNvbW1pdHMgYnkgZ3JhZnRzIgogbXNnc3RyICJuZSBwYXMgY2FjaGVyIGxlcyB2YWxpZGF0aW9ucyBwYXIgZ3JlZmZlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzA4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDgKIG1zZ2lkICJ1c2UgYSBiaXRtYXAgaW5kZXggaWYgYXZhaWxhYmxlIHRvIHNwZWVkIHVwIGNvdW50aW5nIG9iamVjdHMiCiBtc2dzdHIgIiIKICJ1dGlsaXNlciB1biBpbmRleCBlbiBiaXRtYXAgc2kgZGlzcG9uaWJsZSBwb3VyIGFjY8OpbGVyZXIgbGUgZMOpY29tcHRlIGRlcyAiCiAib2JqZXRzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTAKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ1MAogbXNnaWQgIndyaXRlIGEgYml0bWFwIGluZGV4IHRvZ2V0aGVyIHdpdGggdGhlIHBhY2sgaW5kZXgiCiBtc2dzdHIgIsOpY3JpcmUgdW4gaW5kZXggZW4gYml0bWFwIGFzc29jacOpIMOgIGwnaW5kZXggZGUgcGFxdWV0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ1NAorbXNnaWQgIndyaXRlIGEgYml0bWFwIGluZGV4IGlmIHBvc3NpYmxlIgorbXNnc3RyICLDqWNyaXJlIHVuIGluZGV4IGRlIGJpdG1hcCBzaSBwb3NzaWJsZSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU4CiBtc2dpZCAiaGFuZGxpbmcgZm9yIG1pc3Npbmcgb2JqZWN0cyIKIG1zZ3N0ciAiZ2VzdGlvbiBkZXMgb2JqZXRzIG1hbnF1YW50cyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzE2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NjEKIG1zZ2lkICJkbyBub3QgcGFjayBvYmplY3RzIGluIHByb21pc29yIHBhY2tmaWxlcyIKIG1zZ3N0ciAibmUgcGFzIGVtcGFxdWV0ZXIgbGVzIG9iamV0cyBkYW5zIGxlcyBmaWNoaWVycyBwYXF1ZXRzIHByb21ldHRldXJzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ2MwogbXNnaWQgInJlc3BlY3QgaXNsYW5kcyBkdXJpbmcgZGVsdGEgY29tcHJlc3Npb24iCiBtc2dzdHIgInJlc3BlY3RlciBsZXMgw65sb3RzIHBlbmRhbnQgbGEgY29tcHJlc3Npb24gZGVzIGRlbHRhcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsdGEgY2hhaW4gZGVwdGggJWQgaXMgdG9vIGRlZXAsIGZvcmNpbmcgJWQiCiBtc2dzdHIgImxhIHByb2ZvbmRldXIgJWQgZGUgY2hhw65uZSBkZSBkZWx0YSBlc3QgdHJvcCBncmFuZGUsIGZvcmPDqWUgw6AgJWQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDk3CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2suZGVsdGFDYWNoZUxpbWl0IGlzIHRvbyBoaWdoLCBmb3JjaW5nICVkIgogbXNnc3RyICJwYWNrLmRlbHRhQ2FjaGVMaW1pdCBlc3QgdHJvcCBncmFuZCwgZm9yY8OpIMOgICVkIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1MQogbXNnaWQgIi0tbWF4LXBhY2stc2l6ZSBjYW5ub3QgYmUgdXNlZCB0byBidWlsZCBhIHBhY2sgZm9yIHRyYW5zZmVyIgogbXNnc3RyICIiCiAiLS1tYXgtcGFjay1zaXplIG5lIHBldXQgcGFzIMOqdHJlIHV0aWxpc8OpIHBvdXIgY29uc3RydWlyZSB1biBwYXF1ZXQgw6AgIgogInRyYW5zZsOpcmVyIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1MwogbXNnaWQgIm1pbmltdW0gcGFjayBzaXplIGxpbWl0IGlzIDEgTWlCIgogbXNnc3RyICJsYSB0YWlsbGUgbGltaXRlIG1pbmltYWxlIGQndW4gcGFxdWV0IGVzdCAxIE1pQiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NTgKIG1zZ2lkICItLXRoaW4gY2Fubm90IGJlIHVzZWQgdG8gYnVpbGQgYW4gaW5kZXhhYmxlIHBhY2siCiBtc2dzdHIgIi0tdGhpbiBuZSBwZXV0IHBhcyDDqnRyZSB1dGlsaXPDqSBwb3VyIGNvbnN0cnVpcmUgdW4gcGFxdWV0IGluZGV4YWJsZSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDExCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NjEKIG1zZ2lkICItLWtlZXAtdW5yZWFjaGFibGUgYW5kIC0tdW5wYWNrLXVucmVhY2hhYmxlIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0ta2VlcC11bnJlYWNoYWJsZSBldCAtLXVucGFjay11bnJlYWNoYWJsZSBzb250IGluY29tcGF0aWJsZXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTY3CiBtc2dpZCAiY2Fubm90IHVzZSAtLWZpbHRlciB3aXRob3V0IC0tc3Rkb3V0IgogbXNnc3RyICJpbXBvc3NpYmxlIGQndXRpbGlzZXIgLS1maWx0ZXIgc2FucyAtLXN0ZG91dCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDc2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM2MjcKIG1zZ2lkICJFbnVtZXJhdGluZyBvYmplY3RzIgogbXNnc3RyICLDiW51bcOpcmF0aW9uIGRlcyBvYmpldHMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ5NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNjU3CiAjLCBjLWZvcm1hdAotbXNnaWQgIlRvdGFsICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcmV1c2VkICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSIKK21zZ2lkICIiCisiVG90YWwgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCByZXVzZWQgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCBwYWNrLSIKKyJyZXVzZWQgJTxQUkl1MzI+IgogbXNnc3RyICIiCi0iVG90YWwgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCByw6l1dGlsaXPDqXMgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pIgorIlRvdGFsICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcsOpdXRpbGlzw6lzICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgIgorInLDqXV0aWxpc8OpcyBkdSBwYWNrICU8UFJJdTMyPiIKIAotIzogYnVpbHRpbi9wYWNrLXJlZnMuYzo3CisjOiBidWlsdGluL3BhY2stcmVmcy5jOjgKIG1zZ2lkICJnaXQgcGFjay1yZWZzIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgcGFjay1yZWZzIFs8b3B0aW9ucz5dIgogCi0jOiBidWlsdGluL3BhY2stcmVmcy5jOjE1CisjOiBidWlsdGluL3BhY2stcmVmcy5jOjE2CiBtc2dpZCAicGFjayBldmVyeXRoaW5nIgogbXNnc3RyICJlbXBhcXVldGVyIHRvdXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTcKIG1zZ2lkICJwcnVuZSBsb29zZSByZWZzIChkZWZhdWx0KSIKIG1zZ3N0ciAiw6lsaW1pbmVyIGxlcyByw6lmw6lyZW5jZXMgcGVyZHVlcyAoZMOpZmF1dCkiCiAKQEAgLTE0NTM2LDY5ICsxNzczOCw2OSBAQAogbXNnaWQgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGltZT5dIFstLV0gWzxoZWFkPi4uLl0iCiBtc2dzdHIgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8aGV1cmU+XSBbLS1dIFs8aGVhZD7igKZdIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTA5CisjOiBidWlsdGluL3BydW5lLmM6MTMxCiBtc2dpZCAicmVwb3J0IHBydW5lZCBvYmplY3RzIgogbXNnc3RyICJhZmZpY2hlciBsZXMgb2JqZXRzIMOpbGltaW7DqXMiCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMTIKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMzQKIG1zZ2lkICJleHBpcmUgb2JqZWN0cyBvbGRlciB0aGFuIDx0aW1lPiIKIG1zZ3N0ciAiZmFpcmUgZXhwaXJlciBsZXMgb2JqZXRzIHBsdXMgdmlldXggcXVlIDxoZXVyZT4iCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMTQKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMzYKIG1zZ2lkICJsaW1pdCB0cmF2ZXJzYWwgdG8gb2JqZWN0cyBvdXRzaWRlIHByb21pc29yIHBhY2tmaWxlcyIKIG1zZ3N0ciAibGltaXRlciBsYSB0cmF2ZXJzw6llIGF1eCBvYmpldHMgaG9ycyBkZXMgZmljaGllcnMgcGFxdWV0cyBwcm9tZXR0ZXVycyIKIAotIzogYnVpbHRpbi9wcnVuZS5jOjEyOQorIzogYnVpbHRpbi9wcnVuZS5jOjE1MAogbXNnaWQgImNhbm5vdCBwcnVuZSBpbiBhIHByZWNpb3VzLW9iamVjdHMgcmVwbyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBuZXR0b3llciBkYW5zIHVuIGTDqXDDtHQgZCdvYmpldHMgcHLDqWNpZXV4IgogCi0jOiBidWlsdGluL3B1bGwuYzo2MCBidWlsdGluL3B1bGwuYzo2MgorIzogYnVpbHRpbi9wdWxsLmM6NDUgYnVpbHRpbi9wdWxsLmM6NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICJWYWxldXIgaW52YWxpZGUgcG91ciAlcyA6ICVzIgogCi0jOiBidWlsdGluL3B1bGwuYzo4MgorIzogYnVpbHRpbi9wdWxsLmM6NjcKIG1zZ2lkICJnaXQgcHVsbCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKIG1zZ3N0ciAiZ2l0IHB1bGwgWzxvcHRpb25zPl0gWzxkw6lww7R0PiBbPHNww6ljaWZpY2F0aW9uLWRlLXLDqWbDqXJlbmNlPi4uLl1dIgogCi0jOiBidWlsdGluL3B1bGwuYzoxMzMKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyMgogbXNnaWQgImNvbnRyb2wgZm9yIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIgogbXNnc3RyICJjb250csO0bGVyIGxhIHLDqWN1cMOpcmF0aW9uIHLDqWN1cnNpdmUgZGFucyBsZXMgc291cy1tb2R1bGVzIgogCi0jOiBidWlsdGluL3B1bGwuYzoxMzcKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyNgogbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBtZXJnaW5nIgogbXNnc3RyICJPcHRpb25zIHJlbGF0aXZlcyDDoCBsYSBmdXNpb24iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE0MAorIzogYnVpbHRpbi9wdWxsLmM6MTI5CiBtc2dpZCAiaW5jb3Jwb3JhdGUgY2hhbmdlcyBieSByZWJhc2luZyByYXRoZXIgdGhhbiBtZXJnaW5nIgogbXNnc3RyICJpbmNvcnBvcmVyIGxlcyBtb2RpZmljYXRpb25zIGVuIHJlYmFzYW50IHBsdXTDtHQgcXUnZW4gZnVzaW9ubmFudCIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTY3IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE0NyBidWlsdGluL3JldmVydC5jOjEyMgorIzogYnVpbHRpbi9wdWxsLmM6MTU3IGJ1aWx0aW4vcmViYXNlLmM6NDcxIGJ1aWx0aW4vcmV2ZXJ0LmM6MTI2CiBtc2dpZCAiYWxsb3cgZmFzdC1mb3J3YXJkIgogbXNnc3RyICJhdXRvcmlzZXIgbCdhdmFuY2UgcmFwaWRlIgogCi0jOiBidWlsdGluL3B1bGwuYzoxNzYKKyM6IGJ1aWx0aW4vcHVsbC5jOjE2NgogbXNnaWQgImF1dG9tYXRpY2FsbHkgc3Rhc2gvc3Rhc2ggcG9wIGJlZm9yZSBhbmQgYWZ0ZXIgcmViYXNlIgogbXNnc3RyICJyZW1pc2VyIGF2YW50IGV0IHLDqWFwcGxpcXVlciBhcHLDqHMgbGUgcmViYXNhZ2UgYXV0b21hdGlxdWVtZW50IgogCi0jOiBidWlsdGluL3B1bGwuYzoxOTIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE4MgogbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBmZXRjaGluZyIKIG1zZ3N0ciAiT3B0aW9ucyByZWxhdGl2ZXMgYXUgcmFwYXRyaWVtZW50IgogCi0jOiBidWlsdGluL3B1bGwuYzoyMDIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE5MgogbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBsb2NhbCBicmFuY2giCiBtc2dzdHIgImZvcmNlciBsJ8OpY3Jhc2VtZW50IGRlIGxhIGJyYW5jaGUgbG9jYWxlIgogCi0jOiBidWlsdGluL3B1bGwuYzoyMTAKKyM6IGJ1aWx0aW4vcHVsbC5jOjIwMAogbXNnaWQgIm51bWJlciBvZiBzdWJtb2R1bGVzIHB1bGxlZCBpbiBwYXJhbGxlbCIKIG1zZ3N0ciAibm9tYnJlIGRlIHNvdXMtbW9kdWxlcyB0aXLDqXMgZW4gcGFyYWxsw6hsZSIKIAotIzogYnVpbHRpbi9wdWxsLmM6MzA1CisjOiBidWlsdGluL3B1bGwuYzozMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgcHVsbC5mZjogJXMiCiBtc2dzdHIgIlZhbGV1ciBpbnZhbGlkZSBwb3VyIHB1bGwuZmYgOiAlcyIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDIxCisjOiBidWlsdGluL3B1bGwuYzo0MjYKIG1zZ2lkICIiCiAiVGhlcmUgaXMgbm8gY2FuZGlkYXRlIGZvciByZWJhc2luZyBhZ2FpbnN0IGFtb25nIHRoZSByZWZzIHRoYXQgeW91IGp1c3QgIgogImZldGNoZWQuIgpAQCAtMTQ2MDYsMTQgKzE3ODA4LDE0IEBACiAiSWwgbid5IGEgcGFzIGRlIGNhbmRpZGF0ZSBzdXIgbGFxdWVsbGUgcmViYXNlciBwYXJtaSBsZXMgcsOpZsOpcmVuY2VzIHF1ZSB2b3VzICIKICJ2ZW5leiBkZSByw6ljdXDDqXJlci4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyMworIzogYnVpbHRpbi9wdWxsLmM6NDI4CiBtc2dpZCAiIgogIlRoZXJlIGFyZSBubyBjYW5kaWRhdGVzIGZvciBtZXJnaW5nIGFtb25nIHRoZSByZWZzIHRoYXQgeW91IGp1c3QgZmV0Y2hlZC4iCiBtc2dzdHIgIiIKICJJbCBuJ3kgYSBwYXMgZGUgY2FuZGlkYXRlIGF2ZWMgbGFxdWVsbGUgZnVzaW9ubmVyIHBhcm1pIGxlcyByw6lmw6lyZW5jZXMgcXVlICIKICJ2b3VzIHZlbmV6IGRlIHLDqWN1cMOpcmVyLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDI0CisjOiBidWlsdGluL3B1bGwuYzo0MjkKIG1zZ2lkICIiCiAiR2VuZXJhbGx5IHRoaXMgbWVhbnMgdGhhdCB5b3UgcHJvdmlkZWQgYSB3aWxkY2FyZCByZWZzcGVjIHdoaWNoIGhhZCBub1xuIgogIm1hdGNoZXMgb24gdGhlIHJlbW90ZSBlbmQuIgpAQCAtMTQ2MjEsNyArMTc4MjMsNyBAQAogIkfDqW7DqXJhbGVtZW50LCBjZWxhIHNpZ25pZmllIHF1ZSB2b3VzIGF2ZXogaW5kaXF1w6kgdW4gc3DDqWNpZmljYXRldXJcbiIKICJkZSByw6lmw6lyZW5jZSBqb2tlciBxdWkgbidhIHBhcyBldSBkZSBjb3JyZXNwb25kYW5jZSBzdXIgbGUgc2VydmV1ciBkaXN0YW50LiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDI3CisjOiBidWlsdGluL3B1bGwuYzo0MzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBhc2tlZCB0byBwdWxsIGZyb20gdGhlIHJlbW90ZSAnJXMnLCBidXQgZGlkIG5vdCBzcGVjaWZ5XG4iCkBAIC0xNDYzMyw0NCArMTc4MzUsNDQgQEAKICJjb25maWd1cmF0aW9uXG4iCiAicG91ciBsYSBicmFuY2hlIGFjdHVlbGxlLCB2b3VzIGRldmV6IHNww6ljaWZpZXIgbGEgYnJhbmNoZSBhdmVjIGxhIGNvbW1hbmRlLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDMyIGJ1aWx0aW4vcmViYXNlLmM6NzYxIGdpdC1wYXJzZS1yZW1vdGUuc2g6NzMKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzNyBidWlsdGluL3JlYmFzZS5jOjE0MDkgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3MwogbXNnaWQgIllvdSBhcmUgbm90IGN1cnJlbnRseSBvbiBhIGJyYW5jaC4iCiBtc2dzdHIgIlZvdXMgbifDqnRlcyBhY3R1ZWxsZW1lbnQgc3VyIGF1Y3VuZSBicmFuY2hlLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM0IGJ1aWx0aW4vcHVsbC5jOjQ0OSBnaXQtcGFyc2UtcmVtb3RlLnNoOjc5CisjOiBidWlsdGluL3B1bGwuYzo0MzkgYnVpbHRpbi9wdWxsLmM6NDU0IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzkKIG1zZ2lkICJQbGVhc2Ugc3BlY2lmeSB3aGljaCBicmFuY2ggeW91IHdhbnQgdG8gcmViYXNlIGFnYWluc3QuIgogbXNnc3RyICJWZXVpbGxleiBzcMOpY2lmaWVyIHN1ciBxdWVsbGUgYnJhbmNoZSB2b3VzIHNvdWhhaXRlciByZWJhc2VyLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM2IGJ1aWx0aW4vcHVsbC5jOjQ1MSBnaXQtcGFyc2UtcmVtb3RlLnNoOjgyCisjOiBidWlsdGluL3B1bGwuYzo0NDEgYnVpbHRpbi9wdWxsLmM6NDU2IGdpdC1wYXJzZS1yZW1vdGUuc2g6ODIKIG1zZ2lkICJQbGVhc2Ugc3BlY2lmeSB3aGljaCBicmFuY2ggeW91IHdhbnQgdG8gbWVyZ2Ugd2l0aC4iCiBtc2dzdHIgIlZldWlsbGV6IHNww6ljaWZpZXIgdW5lIGJyYW5jaGUgYXZlYyBsYXF1ZWxsZSBmdXNpb25uZXIuIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzcgYnVpbHRpbi9wdWxsLmM6NDUyCisjOiBidWlsdGluL3B1bGwuYzo0NDIgYnVpbHRpbi9wdWxsLmM6NDU3CiBtc2dpZCAiU2VlIGdpdC1wdWxsKDEpIGZvciBkZXRhaWxzLiIKIG1zZ3N0ciAiUsOpZsOpcmV6LXZvdXMgw6AgZ2l0LXB1bGwoMSkgcG91ciBkZSBwbHVzIGFtcGxlcyBkw6l0YWlscy4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NDUgYnVpbHRpbi9wdWxsLmM6NDU0Ci0jOiBidWlsdGluL3JlYmFzZS5jOjc2NyBnaXQtcGFyc2UtcmVtb3RlLnNoOjY0CisjOiBidWlsdGluL3B1bGwuYzo0NDQgYnVpbHRpbi9wdWxsLmM6NDUwIGJ1aWx0aW4vcHVsbC5jOjQ1OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE1IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjQKIG1zZ2lkICI8cmVtb3RlPiIKIG1zZ3N0ciAiPGRpc3RhbnQ+IgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzkgYnVpbHRpbi9wdWxsLmM6NDU0IGJ1aWx0aW4vcHVsbC5jOjQ1OQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTU2IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjUKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0NCBidWlsdGluL3B1bGwuYzo0NTkgYnVpbHRpbi9wdWxsLmM6NDY0CisjOiBnaXQtcGFyc2UtcmVtb3RlLnNoOjY1CiBtc2dpZCAiPGJyYW5jaD4iCiBtc2dzdHIgIjxicmFuY2hlPiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDQ3IGJ1aWx0aW4vcmViYXNlLmM6NzU5IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzUKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ1MiBidWlsdGluL3JlYmFzZS5jOjE0MDcgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3NQogbXNnaWQgIlRoZXJlIGlzIG5vIHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJQYXMgZCdpbmZvcm1hdGlvbiBkZSBzdWl2aSBkaXN0YW50IHBvdXIgbGEgYnJhbmNoZSBhY3R1ZWxsZS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ1NiBnaXQtcGFyc2UtcmVtb3RlLnNoOjk1CisjOiBidWlsdGluL3B1bGwuYzo0NjEgZ2l0LXBhcnNlLXJlbW90ZS5zaDo5NQogbXNnaWQgIiIKICJJZiB5b3Ugd2lzaCB0byBzZXQgdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoaXMgYnJhbmNoIHlvdSBjYW4gZG8gc28gd2l0aDoiCiBtc2dzdHIgIiIKICJTaSB2b3VzIHNvdWhhaXRleiBpbmRpcXVlciBsJ2luZm9ybWF0aW9uIGRlIHN1aXZpIGRpc3RhbnQgcG91ciBjZXR0ZSAiCiAiYnJhbmNoZSwgdm91cyBwb3V2ZXogbGUgZmFpcmUgYXZlY8KgOiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDYxCisjOiBidWlsdGluL3B1bGwuYzo0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgY29uZmlndXJhdGlvbiBzcGVjaWZpZXMgdG8gbWVyZ2Ugd2l0aCB0aGUgcmVmICclcydcbiIKQEAgLTE0NjgwLDM0ICsxNzg4MiwzNCBAQAogIiclcydcbiIKICJkdSBzZXJ2ZXVyIGRpc3RhbnQsIG1haXMgY2V0dGUgcsOpZsOpcmVuY2UgbidhIHBhcyDDqXTDqSByw6ljdXDDqXLDqWUuIgogCi0jOiBidWlsdGluL3B1bGwuYzo1NjUKKyM6IGJ1aWx0aW4vcHVsbC5jOjU3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGNvbW1pdCAlcyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FjY8OpZGVyIGxlIGNvbW1pdCAlcyIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODQzCisjOiBidWlsdGluL3B1bGwuYzo4NTcKIG1zZ2lkICJpZ25vcmluZyAtLXZlcmlmeS1zaWduYXR1cmVzIGZvciByZWJhc2UiCiBtc2dzdHIgIi0tdmVyaWZ5LXNpZ25hdHVyZXMgZXN0IGlnbm9yw6kgcG91ciB1biByZWJhc2FnZSIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODkxCisjOiBidWlsdGluL3B1bGwuYzo5MTIKIG1zZ2lkICItLVtuby1dYXV0b3N0YXNoIG9wdGlvbiBpcyBvbmx5IHZhbGlkIHdpdGggLS1yZWJhc2UuIgogbXNnc3RyICJsJ29wdGlvbiAtLVtuby1dYXV0b3N0YXNoIG4nZXN0IHZhbGlkZSBxdSdhdmVjIC0tcmViYXNlLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODk5CisjOiBidWlsdGluL3B1bGwuYzo5MjAKIG1zZ2lkICJVcGRhdGluZyBhbiB1bmJvcm4gYnJhbmNoIHdpdGggY2hhbmdlcyBhZGRlZCB0byB0aGUgaW5kZXguIgogbXNnc3RyICIiCiAiTWlzZSDDoCBqb3VyIGQndW5lIGJyYW5jaGUgbm9uIGVuY29yZSBjcsOpw6llIGF2ZWMgbGVzIGNoYW5nZW1lbnRzIGFqb3V0w6lzIGRhbnMgIgogImwnaW5kZXguIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MDIKKyM6IGJ1aWx0aW4vcHVsbC5jOjkyNAogbXNnaWQgInB1bGwgd2l0aCByZWJhc2UiCiBtc2dzdHIgInRpcmVyIGF2ZWMgdW4gcmViYXNhZ2UiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjkwMworIzogYnVpbHRpbi9wdWxsLmM6OTI1CiBtc2dpZCAicGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKIG1zZ3N0ciAidmV1aWxsZXogbGVzIHZhbGlkZXIgb3UgbGVzIHJlbWlzZXIuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MjgKKyM6IGJ1aWx0aW4vcHVsbC5jOjk1MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZmV0Y2ggdXBkYXRlZCB0aGUgY3VycmVudCBicmFuY2ggaGVhZC5cbiIKQEAgLTE0NzE4LDcgKzE3OTIwLDcgQEAKICJhdmFuY2UgcmFwaWRlIGRlIHZvdHJlIGNvcGllIGRlIHRyYXZhaWxcbiIKICJkZXB1aXMgbGUgY29tbWl0ICVzLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTM0CisjOiBidWlsdGluL3B1bGwuYzo5NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNhbm5vdCBmYXN0LWZvcndhcmQgeW91ciB3b3JraW5nIHRyZWUuXG4iCkBAIC0xNDczNSwxNSArMTc5MzcsMTUgQEAKICIkIGdpdCByZXNldCAtLWhhcmRcbiIKICJwb3VyIHLDqWfDqW7DqXJlci4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjk0OQorIzogYnVpbHRpbi9wdWxsLmM6OTcxCiBtc2dpZCAiQ2Fubm90IG1lcmdlIG11bHRpcGxlIGJyYW5jaGVzIGludG8gZW1wdHkgaGVhZC4iCiBtc2dzdHIgIkltcG9zc2libGUgZGUgZnVzaW9ubmVyIGRlIG11bHRpcGxlcyBicmFuY2hlcyBzdXIgdW5lIHTDqnRlIHZpZGUuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5NTMKKyM6IGJ1aWx0aW4vcHVsbC5jOjk3NQogbXNnaWQgIkNhbm5vdCByZWJhc2Ugb250byBtdWx0aXBsZSBicmFuY2hlcy4iCiBtc2dzdHIgIkltcG9zc2libGUgZGUgcmViYXNlciBzdXIgZGUgbXVsdGlwbGVzIGJyYW5jaGVzLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTYwCisjOiBidWlsdGluL3B1bGwuYzo5ODIKIG1zZ2lkICJjYW5ub3QgcmViYXNlIHdpdGggbG9jYWxseSByZWNvcmRlZCBzdWJtb2R1bGUgbW9kaWZpY2F0aW9ucyIKIG1zZ3N0ciAiIgogImltcG9zc2libGUgZGUgcmViYXNlciBhdmVjIGRlcyBtb2RpZmljYXRpb25zIGRlIHNvdXMtbW9kdWxlcyBlbnJlZ2lzdHLDqWVzICIKQEAgLTE0NzUzLDE1ICsxNzk1NSwxNSBAQAogbXNnaWQgImdpdCBwdXNoIFs8b3B0aW9ucz5dIFs8cmVwb3NpdG9yeT4gWzxyZWZzcGVjPi4uLl1dIgogbXNnc3RyICJnaXQgcHVzaCBbPG9wdGlvbnM+XSBbPGTDqXDDtHQ+IFs8c3DDqWNpZmljYXRpb24tZGUtcsOpZsOpcmVuY2U+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjExMQorIzogYnVpbHRpbi9wdXNoLmM6MTEyCiBtc2dpZCAidGFnIHNob3J0aGFuZCB3aXRob3V0IDx0YWc+IgogbXNnc3RyICJyYWNjb3VyY2kgZCfDqXRpcXVldHRlIHNhbnMgPMOpdGlxdWV0dGU+IgogCi0jOiBidWlsdGluL3B1c2guYzoxMjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjEyMgogbXNnaWQgIi0tZGVsZXRlIG9ubHkgYWNjZXB0cyBwbGFpbiB0YXJnZXQgcmVmIG5hbWVzIgogbXNnc3RyICItLWRlbGV0ZSBhY2NlcHRlIHNldWxlbWVudCBkZXMgbm9tcyBlbnRpZXJzIGRlIHLDqWbDqXJlbmNlcyBjaWJsZXMiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE2NQorIzogYnVpbHRpbi9wdXNoLmM6MTY4CiBtc2dpZCAiIgogIlxuIgogIlRvIGNob29zZSBlaXRoZXIgb3B0aW9uIHBlcm1hbmVudGx5LCBzZWUgcHVzaC5kZWZhdWx0IGluICdnaXQgaGVscCBjb25maWcnLiIKQEAgLTE0NzcwLDcgKzE3OTcyLDcgQEAKICJQb3VyIGNob2lzaXIgbCdvcHRpb24gZGUgbWFuacOocmUgcGVybWFuZW50ZSwgdm9pciBwdXNoLmRlZmF1bHQgZGFucyAnZ2l0ICIKICJoZWxwIGNvbmZpZycuIgogCi0jOiBidWlsdGluL3B1c2guYzoxNjgKKyM6IGJ1aWx0aW4vcHVzaC5jOjE3MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIHVwc3RyZWFtIGJyYW5jaCBvZiB5b3VyIGN1cnJlbnQgYnJhbmNoIGRvZXMgbm90IG1hdGNoXG4iCkBAIC0xNDc5NSw3ICsxNzk5Nyw3IEBACiAiICAgIGdpdCBwdXNoICVzIEhFQURcbiIKICIlcyIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTgzCisjOiBidWlsdGluL3B1c2guYzoxODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBhcmUgbm90IGN1cnJlbnRseSBvbiBhIGJyYW5jaC5cbiIKQEAgLTE0ODEwLDcgKzE4MDEyLDcgQEAKICJcbiIKICIgICAgZ2l0IHB1c2ggJXMgSEVBRDo8bm9tLWRlLWxhLWJyYW5jaGUtYW1vbnQ+XG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE5NworIzogYnVpbHRpbi9wdXNoLmM6MjAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgY3VycmVudCBicmFuY2ggJXMgaGFzIG5vIHVwc3RyZWFtIGJyYW5jaC5cbiIKQEAgLTE0ODI0LDEzICsxODAyNiwxMyBAQAogIlxuIgogIiAgICBnaXQgcHVzaCAtLXNldC11cHN0cmVhbSAlcyAlc1xuIgogCi0jOiBidWlsdGluL3B1c2guYzoyMDUKKyM6IGJ1aWx0aW4vcHVzaC5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgY3VycmVudCBicmFuY2ggJXMgaGFzIG11bHRpcGxlIHVwc3RyZWFtIGJyYW5jaGVzLCByZWZ1c2luZyB0byBwdXNoLiIKIG1zZ3N0ciAiIgogIkxhIGJyYW5jaGUgY291cmFudGUgJXMgYSBkZSBtdWx0aXBsZXMgYnJhbmNoZXMgYW1vbnQsIGltcG9zc2libGUgZGUgcG91c3Nlci4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjIwOAorIzogYnVpbHRpbi9wdXNoLmM6MjExCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXJlIHB1c2hpbmcgdG8gcmVtb3RlICclcycsIHdoaWNoIGlzIG5vdCB0aGUgdXBzdHJlYW0gb2ZcbiIKQEAgLTE0ODQxLDE0ICsxODA0MywxNCBAQAogInBhcyB1bmUgYnJhbmNoZSBhbW9udCBkZSB2b3RyZSBicmFuY2hlIGNvdXJhbnRlICclcycsIHNhbnMgbWUgZGlyZVxuIgogInF1b2kgcG91c3NlciBwb3VyIG1ldHRyZSDDoCBqb3VyIHF1ZWxsZSBicmFuY2hlIGFtb250LiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjY3CisjOiBidWlsdGluL3B1c2guYzoyNzAKIG1zZ2lkICIiCiAiWW91IGRpZG4ndCBzcGVjaWZ5IGFueSByZWZzcGVjcyB0byBwdXNoLCBhbmQgcHVzaC5kZWZhdWx0IGlzIFwibm90aGluZ1wiLiIKIG1zZ3N0ciAiIgogIlZvdXMgbidhdmV6IHBhcyBzcMOpY2lmacOpIGRlIHNww6ljaWZpY2F0aW9ucyBkZSByw6lmw6lyZW5jZSDDoCBwb3Vzc2VyLCBldCBwdXNoLiIKICJkZWZhdWx0IGVzdCBcIm5vdGhpbmdcIi4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI3NAorIzogYnVpbHRpbi9wdXNoLmM6Mjc3CiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSB0aXAgb2YgeW91ciBjdXJyZW50IGJyYW5jaCBpcyBiZWhpbmRcbiIKICJpdHMgcmVtb3RlIGNvdW50ZXJwYXJ0LiBJbnRlZ3JhdGUgdGhlIHJlbW90ZSBjaGFuZ2VzIChlLmcuXG4iCkBAIC0xNDg2Myw3ICsxODA2NSw3IEBACiAiVm9pciBsYSAnTm90ZSDDoCBwcm9wb3MgZGVzIGF2YW5jZXMgcmFwaWRlcycgZGFucyAnZ2l0IHB1c2ggLS1oZWxwJyBwb3VyIHBsdXMgIgogImQnaW5mb3JtYXRpb24uIgogCi0jOiBidWlsdGluL3B1c2guYzoyODAKKyM6IGJ1aWx0aW4vcHVzaC5jOjI4MwogbXNnaWQgIiIKICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSBhIHB1c2hlZCBicmFuY2ggdGlwIGlzIGJlaGluZCBpdHMgcmVtb3RlXG4iCiAiY291bnRlcnBhcnQuIENoZWNrIG91dCB0aGlzIGJyYW5jaCBhbmQgaW50ZWdyYXRlIHRoZSByZW1vdGUgY2hhbmdlc1xuIgpAQCAtMTQ4NzgsNyArMTgwODAsNyBAQAogIlZvaXIgbGEgJ05vdGUgw6AgcHJvcG9zIGRlcyBhdmFuY2VzIHJhcGlkZXMnIGRhbnMgJ2dpdCBwdXNoIC0taGVscCcgcG91ciBwbHVzICIKICJkJ2luZm9ybWF0aW9uLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mjg2CisjOiBidWlsdGluL3B1c2guYzoyODkKIG1zZ2lkICIiCiAiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHJlbW90ZSBjb250YWlucyB3b3JrIHRoYXQgeW91IGRvXG4iCiAibm90IGhhdmUgbG9jYWxseS4gVGhpcyBpcyB1c3VhbGx5IGNhdXNlZCBieSBhbm90aGVyIHJlcG9zaXRvcnkgcHVzaGluZ1xuIgpAQCAtMTQ4OTYsMTMgKzE4MDk4LDEzIEBACiAiVm9pciBsYSAnTm90ZSDDoCBwcm9wb3MgZGVzIGF2YW5jZXMgcmFwaWRlcycgZGFucyAnZ2l0IHB1c2ggLS1oZWxwJyBwb3VyIHBsdXMgIgogImQnaW5mb3JtYXRpb24uIgogCi0jOiBidWlsdGluL3B1c2guYzoyOTMKKyM6IGJ1aWx0aW4vcHVzaC5jOjI5NgogbXNnaWQgIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSB0YWcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIHJlbW90ZS4iCiBtc2dzdHIgIiIKICJMZXMgbWlzZXMgw6Agam91ciBvbnQgw6l0w6kgcmVqZXTDqWVzIGNhciBsJ8OpdGlxdWV0dGUgZXhpc3RlIGTDqWrDoCBkYW5zIGxhICIKICJicmFuY2hlIGRpc3RhbnRlLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mjk2CisjOiBidWlsdGluL3B1c2guYzoyOTkKIG1zZ2lkICIiCiAiWW91IGNhbm5vdCB1cGRhdGUgYSByZW1vdGUgcmVmIHRoYXQgcG9pbnRzIGF0IGEgbm9uLWNvbW1pdCBvYmplY3QsXG4iCiAib3IgdXBkYXRlIGEgcmVtb3RlIHJlZiB0byBtYWtlIGl0IHBvaW50IGF0IGEgbm9uLWNvbW1pdCBvYmplY3QsXG4iCkBAIC0xNDkxNCwyMiArMTgxMTYsMTAwIEBACiAicG9pbnRlclxuIgogInZlcnMgdW4gb2JqZXQgcXVpIG4nZXN0IHBhcyB1biBjb21taXQsIHNhbnMgdXRpbGlzZXIgbCdvcHRpb24gJy0tZm9yY2UnLlxuIgogCi0jOiBidWlsdGluL3B1c2guYzozNTcKKyM6IGJ1aWx0aW4vcHVzaC5jOjM2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJQdXNoaW5nIHRvICVzXG4iCiBtc2dzdHIgIlBvdXNzw6llIHZlcnMgJXNcbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MzYxCisjOiBidWlsdGluL3B1c2guYzozNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHB1c2ggc29tZSByZWZzIHRvICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgcG91c3NlciBkZXMgcsOpZsOpcmVuY2VzIHZlcnMgJyVzJyIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mzk1CisjOiBidWlsdGluL3B1c2guYzo1NDIKK21zZ2lkICJyZXBvc2l0b3J5IgorbXNnc3RyICJkw6lww7R0IgorCisjOiBidWlsdGluL3B1c2guYzo1NDMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjQKK21zZ2lkICJwdXNoIGFsbCByZWZzIgorbXNnc3RyICJwb3Vzc2VyIHRvdXRlcyBsZXMgcsOpZsOpcmVuY2VzIgorCisjOiBidWlsdGluL3B1c2guYzo1NDQgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjYKK21zZ2lkICJtaXJyb3IgYWxsIHJlZnMiCittc2dzdHIgInJlZmzDqXRlciB0b3V0ZXMgbGVzIHLDqWbDqXJlbmNlcyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ2Cittc2dpZCAiZGVsZXRlIHJlZnMiCittc2dzdHIgInN1cHByaW1lciBsZXMgcsOpZsOpcmVuY2VzIgorCisjOiBidWlsdGluL3B1c2guYzo1NDcKK21zZ2lkICJwdXNoIHRhZ3MgKGNhbid0IGJlIHVzZWQgd2l0aCAtLWFsbCBvciAtLW1pcnJvcikiCittc2dzdHIgIiIKKyJwb3Vzc2VyIGxlcyDDqXRpcXVldHRlcyAobmUgcGV1dCBwYXMgw6p0cmUgdXRpbGlzw6kgYXZlYyAtLWFsbCBvdSAtLW1pcnJvcikiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1MCBidWlsdGluL3NlbmQtcGFjay5jOjE2NworbXNnaWQgImZvcmNlIHVwZGF0ZXMiCittc2dzdHIgImZvcmNlciBsZXMgbWlzZXMgw6Agam91ciIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgxCittc2dpZCAiPHJlZm5hbWU+OjxleHBlY3Q+IgorbXNnc3RyICI8bm9tLWRlLXJlZj46PGF0dGVuZHU+IgorCisjOiBidWlsdGluL3B1c2guYzo1NTMgYnVpbHRpbi9zZW5kLXBhY2suYzoxODIKK21zZ2lkICJyZXF1aXJlIG9sZCB2YWx1ZSBvZiByZWYgdG8gYmUgYXQgdGhpcyB2YWx1ZSIKK21zZ3N0ciAiZXhpZ2VyIHF1ZSBsJ2FuY2llbm5lIHZhbGV1ciBkZSBsYSByw6lmw6lyZW5jZSBzb2l0IMOgIGNldHRlIHZhbGV1ciIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU2Cittc2dpZCAiY29udHJvbCByZWN1cnNpdmUgcHVzaGluZyBvZiBzdWJtb2R1bGVzIgorbXNnc3RyICJjb250csO0bGVyIGxhIHBvdXNzw6llIHLDqWN1cnNpdmUgZGVzIHNvdXMtbW9kdWxlcyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU4IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc1Cittc2dpZCAidXNlIHRoaW4gcGFjayIKK21zZ3N0ciAidXRpbGlzZXIgdW4gZW1wYXF1ZXRhZ2UgbMOpZ2VyIgorCisjOiBidWlsdGluL3B1c2guYzo1NTkgYnVpbHRpbi9wdXNoLmM6NTYwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYxCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE2MgorbXNnaWQgInJlY2VpdmUgcGFjayBwcm9ncmFtIgorbXNnc3RyICJyZWNldm9pciBsZSBwcm9ncmFtbWUgZCdlbXBhcXVldGFnZSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTYxCittc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9zdGF0dXMiCittc2dzdHIgImTDqWZpbmlyIGxhIGJyYW5jaGUgYW1vbnQgcG91ciBnaXQgcHVsbC9zdGF0dXMiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2NAorbXNnaWQgInBydW5lIGxvY2FsbHkgcmVtb3ZlZCByZWZzIgorbXNnc3RyICLDqWxpbWluZXIgbGVzIHLDqWbDqXJlbmNlcyBsb2NhbGVzIHN1cHByaW3DqWVzIgorCisjOiBidWlsdGluL3B1c2guYzo1NjYKK21zZ2lkICJieXBhc3MgcHJlLXB1c2ggaG9vayIKK21zZ3N0ciAiw6l2aXRlciBkJ3V0aWxpc2VyIGxlIGNyb2NoZXQgcHJlLXB1c2giCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2NworbXNnaWQgInB1c2ggbWlzc2luZyBidXQgcmVsZXZhbnQgdGFncyIKK21zZ3N0ciAicG91c3NlciBsZXMgw6l0aXF1ZXR0ZXMgbWFucXVhbnRlcyBtYWlzIHBlcnRpbmVudGVzIgorCisjOiBidWlsdGluL3B1c2guYzo1NzAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjkKK21zZ2lkICJHUEcgc2lnbiB0aGUgcHVzaCIKK21zZ3N0ciAic2lnbmVyIGxhIHBvdXNzw6llIGF2ZWMgR1BHIgorCisjOiBidWlsdGluL3B1c2guYzo1NzIgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzYKK21zZ2lkICJyZXF1ZXN0IGF0b21pYyB0cmFuc2FjdGlvbiBvbiByZW1vdGUgc2lkZSIKK21zZ3N0ciAiZGVtYW5kZSB1bmUgdHJhbnNhY3Rpb24gYXRvbWlxdWUgc3VyIGxlIHNlcnZldXIgZGlzdGFudCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTkwCittc2dpZCAiLS1kZWxldGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tbWlycm9yIGFuZCAtLXRhZ3MiCittc2dzdHIgIi0tZGVsZXRlIGVzdCBpbmNvbXBhdGlibGUgYXZlYyAtLWFsbCwgLS1taXJyb3IgZXQgLS10YWdzIgorCisjOiBidWlsdGluL3B1c2guYzo1OTIKK21zZ2lkICItLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2Ugd2l0aG91dCBhbnkgcmVmcyIKK21zZ3N0ciAiLS1kZWxldGUgbidhIHBhcyBkZSBzZW5zIHNhbnMgYXVjdW5lIHLDqWbDqXJlbmNlIgorCisjOiBidWlsdGluL3B1c2guYzo2MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJlcG9zaXRvcnkgJyVzJyIKIG1zZ3N0ciAibWF1dmFpcyBkw6lww7R0ICclcyciCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM5NgorIzogYnVpbHRpbi9wdXNoLmM6NjEzCiBtc2dpZCAiIgogIk5vIGNvbmZpZ3VyZWQgcHVzaCBkZXN0aW5hdGlvbi5cbiIKICJFaXRoZXIgc3BlY2lmeSB0aGUgVVJMIGZyb20gdGhlIGNvbW1hbmQtbGluZSBvciBjb25maWd1cmUgYSByZW1vdGUgIgpAQCAtMTQ5NTEsMTA1ICsxODIzMSwyNyBAQAogIlxuIgogIiAgICBnaXQgcHVzaCA8bm9tPlxuIgogCi0jOiBidWlsdGluL3B1c2guYzo1NTEKLW1zZ2lkICJyZXBvc2l0b3J5IgotbXNnc3RyICJkw6lww7R0IgotCi0jOiBidWlsdGluL3B1c2guYzo1NTIgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjQKLW1zZ2lkICJwdXNoIGFsbCByZWZzIgotbXNnc3RyICJwb3Vzc2VyIHRvdXRlcyBsZXMgcsOpZsOpcmVuY2VzIgotCi0jOiBidWlsdGluL3B1c2guYzo1NTMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjYKLW1zZ2lkICJtaXJyb3IgYWxsIHJlZnMiCi1tc2dzdHIgInJlZmzDqXRlciB0b3V0ZXMgbGVzIHLDqWbDqXJlbmNlcyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTU1Ci1tc2dpZCAiZGVsZXRlIHJlZnMiCi1tc2dzdHIgInN1cHByaW1lciBsZXMgcsOpZsOpcmVuY2VzIgotCi0jOiBidWlsdGluL3B1c2guYzo1NTYKLW1zZ2lkICJwdXNoIHRhZ3MgKGNhbid0IGJlIHVzZWQgd2l0aCAtLWFsbCBvciAtLW1pcnJvcikiCi1tc2dzdHIgIiIKLSJwb3Vzc2VyIGxlcyDDqXRpcXVldHRlcyAobmUgcGV1dCBwYXMgw6p0cmUgdXRpbGlzw6kgYXZlYyAtLWFsbCBvdSAtLW1pcnJvcikiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1OSBidWlsdGluL3NlbmQtcGFjay5jOjE2NwotbXNnaWQgImZvcmNlIHVwZGF0ZXMiCi1tc2dzdHIgImZvcmNlciBsZXMgbWlzZXMgw6Agam91ciIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTYxIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgxCi1tc2dpZCAiPHJlZm5hbWU+OjxleHBlY3Q+IgotbXNnc3RyICI8bm9tLWRlLXJlZj46PGF0dGVuZHU+IgotCi0jOiBidWlsdGluL3B1c2guYzo1NjIgYnVpbHRpbi9zZW5kLXBhY2suYzoxODIKLW1zZ2lkICJyZXF1aXJlIG9sZCB2YWx1ZSBvZiByZWYgdG8gYmUgYXQgdGhpcyB2YWx1ZSIKLW1zZ3N0ciAiZXhpZ2VyIHF1ZSBsJ2FuY2llbm5lIHZhbGV1ciBkZSBsYSByw6lmw6lyZW5jZSBzb2l0IMOgIGNldHRlIHZhbGV1ciIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTY1Ci1tc2dpZCAiY29udHJvbCByZWN1cnNpdmUgcHVzaGluZyBvZiBzdWJtb2R1bGVzIgotbXNnc3RyICJjb250csO0bGVyIGxhIHBvdXNzw6llIHLDqWN1cnNpdmUgZGVzIHNvdXMtbW9kdWxlcyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTY3IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc1Ci1tc2dpZCAidXNlIHRoaW4gcGFjayIKLW1zZ3N0ciAidXRpbGlzZXIgdW4gZW1wYXF1ZXRhZ2UgbMOpZ2VyIgotCi0jOiBidWlsdGluL3B1c2guYzo1NjggYnVpbHRpbi9wdXNoLmM6NTY5IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYxCi0jOiBidWlsdGluL3NlbmQtcGFjay5jOjE2MgotbXNnaWQgInJlY2VpdmUgcGFjayBwcm9ncmFtIgotbXNnc3RyICJyZWNldm9pciBsZSBwcm9ncmFtbWUgZCdlbXBhcXVldGFnZSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTcwCi1tc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9zdGF0dXMiCi1tc2dzdHIgImTDqWZpbmlyIGxhIGJyYW5jaGUgYW1vbnQgcG91ciBnaXQgcHVsbC9zdGF0dXMiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3MwotbXNnaWQgInBydW5lIGxvY2FsbHkgcmVtb3ZlZCByZWZzIgotbXNnc3RyICLDqWxpbWluZXIgbGVzIHLDqWbDqXJlbmNlcyBsb2NhbGVzIHN1cHByaW3DqWVzIgotCi0jOiBidWlsdGluL3B1c2guYzo1NzUKLW1zZ2lkICJieXBhc3MgcHJlLXB1c2ggaG9vayIKLW1zZ3N0ciAiw6l2aXRlciBkJ3V0aWxpc2VyIGxlIGNyb2NoZXQgcHJlLXB1c2giCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3NgotbXNnaWQgInB1c2ggbWlzc2luZyBidXQgcmVsZXZhbnQgdGFncyIKLW1zZ3N0ciAicG91c3NlciBsZXMgw6l0aXF1ZXR0ZXMgbWFucXVhbnRlcyBtYWlzIHBlcnRpbmVudGVzIgotCi0jOiBidWlsdGluL3B1c2guYzo1NzkgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjkKLW1zZ2lkICJHUEcgc2lnbiB0aGUgcHVzaCIKLW1zZ3N0ciAic2lnbmVyIGxhIHBvdXNzw6llIGF2ZWMgR1BHIgotCi0jOiBidWlsdGluL3B1c2guYzo1ODEgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzYKLW1zZ2lkICJyZXF1ZXN0IGF0b21pYyB0cmFuc2FjdGlvbiBvbiByZW1vdGUgc2lkZSIKLW1zZ3N0ciAiZGVtYW5kZSB1bmUgdHJhbnNhY3Rpb24gYXRvbWlxdWUgc3VyIGxlIHNlcnZldXIgZGlzdGFudCIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTk5Ci1tc2dpZCAiLS1kZWxldGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tbWlycm9yIGFuZCAtLXRhZ3MiCi1tc2dzdHIgIi0tZGVsZXRlIGVzdCBpbmNvbXBhdGlibGUgYXZlYyAtLWFsbCwgLS1taXJyb3IgZXQgLS10YWdzIgotCi0jOiBidWlsdGluL3B1c2guYzo2MDEKLW1zZ2lkICItLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2Ugd2l0aG91dCBhbnkgcmVmcyIKLW1zZ3N0ciAiLS1kZWxldGUgbidhIHBhcyBkZSBzZW5zIHNhbnMgYXVjdW5lIHLDqWbDqXJlbmNlIgotCi0jOiBidWlsdGluL3B1c2guYzo2MDQKKyM6IGJ1aWx0aW4vcHVzaC5jOjYyOAogbXNnaWQgIi0tYWxsIGFuZCAtLXRhZ3MgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1hbGwgZXQgLS10YWdzIHNvbnQgaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjA2CisjOiBidWlsdGluL3B1c2guYzo2MzAKIG1zZ2lkICItLWFsbCBjYW4ndCBiZSBjb21iaW5lZCB3aXRoIHJlZnNwZWNzIgogbXNnc3RyICItLWFsbCBuZSBwZXV0IHBhcyDDqnRyZSBjb21iaW7DqSBhdmVjIGRlcyBzcMOpY2lmaWNhdGlvbnMgZGUgcsOpZsOpcmVuY2UiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYxMAorIzogYnVpbHRpbi9wdXNoLmM6NjM0CiBtc2dpZCAiLS1taXJyb3IgYW5kIC0tdGFncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLW1pcnJvciBldCAtLXRhZ3Mgc29udCBpbmNvbXBhdGlibGVzIgogCi0jOiBidWlsdGluL3B1c2guYzo2MTIKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzNgogbXNnaWQgIi0tbWlycm9yIGNhbid0IGJlIGNvbWJpbmVkIHdpdGggcmVmc3BlY3MiCiBtc2dzdHIgIi0tbWlycm9yIG5lIHBldXQgcGFzIMOqdHJlIGNvbWJpbsOpIGF2ZWMgZGVzIHNww6ljaWZpY2F0aW9ucyBkZSByw6lmw6lyZW5jZSIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjE1CisjOiBidWlsdGluL3B1c2guYzo2MzkKIG1zZ2lkICItLWFsbCBhbmQgLS1taXJyb3IgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1hbGwgZXQgLS1taXJyb3Igc29udCBpbmNvbXBhdGlibGVzIgogCi0jOiBidWlsdGluL3B1c2guYzo2MzQKKyM6IGJ1aWx0aW4vcHVzaC5jOjY0MwogbXNnaWQgInB1c2ggb3B0aW9ucyBtdXN0IG5vdCBoYXZlIG5ldyBsaW5lIGNoYXJhY3RlcnMiCiBtc2dzdHIgIiIKICJsZXMgb3B0aW9ucyBkZSBwb3Vzc8OpZSBuZSBwZXV2ZW50IHBhcyBjb250ZW5pciBkZSBjYXJhY3TDqHJlcyBkZSBub3V2ZWxsZSAiCkBAIC0xNTA2OSwyOCArMTgyNzEsMzYgQEAKIG1zZ2lkICJnaXQgcmFuZ2UtZGlmZiBbPG9wdGlvbnM+XSA8YmFzZT4gPG9sZC10aXA+IDxuZXctdGlwPiIKIG1zZ3N0ciAiZ2l0IHJhbmdlLWRpZmYgWzxvcHRpb25zPl0gPGJhc2U+IDxhbmNpZW4tc29tbWV0PiA8bm91dmVhdS1zb21tZXQ+IgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyMQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjIKIG1zZ2lkICJQZXJjZW50YWdlIGJ5IHdoaWNoIGNyZWF0aW9uIGlzIHdlaWdodGVkIgogbXNnc3RyICJQb3VyY2VudGFnZSBwYXIgbGVxdWVsIGxhIGNyw6lhdGlvbiBlc3QgcG9uZMOpcsOpZSIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjMKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI0CiBtc2dpZCAidXNlIHNpbXBsZSBkaWZmIGNvbG9ycyIKIG1zZ3N0ciAidXRpbGlzZXIgZGVzIGNvdWxldXJzIGRlIGRpZmYgc2ltcGxlcyIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjEgYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjUKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI2Cittc2dpZCAibm90ZXMiCittc2dzdHIgIm5vdGVzIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyNgorbXNnaWQgInBhc3NlZCB0byAnZ2l0IGxvZyciCittc2dzdHIgInBhc3PDqSDDoCAnZ2l0IGxvZyciCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjUwIGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIC4uIGluIHJhbmdlOiAnJXMnIgogbXNnc3RyICJwYXMgZGUgLi4gZGFucyBsYSBwbGFnZcKgOiAnJXMnIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo3NQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjQKIG1zZ2lkICJzaW5nbGUgYXJnIGZvcm1hdCBtdXN0IGJlIHN5bW1ldHJpYyByYW5nZSIKIG1zZ3N0ciAidW4gZm9ybWF0IGQnYXJndW1lbnQgdW5pcXVlIGRvaXQgw6p0cmUgdW5lIHBsYWdlIHN5bcOpdHJpcXVlIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo5MAorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NzkKIG1zZ2lkICJuZWVkIHR3byBjb21taXQgcmFuZ2VzIgogbXNnc3RyICJwbGFnZSBlbnRyZSBkZXV4IGNvbW1pdHMgcmVxdWlzZSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzo0MAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzo0MQogbXNnaWQgIiIKICJnaXQgcmVhZC10cmVlIFsoLW0gWy0tdHJpdmlhbF0gWy0tYWdncmVzc2l2ZV0gfCAtLXJlc2V0IHwgLS1wcmVmaXg9PHByZWZpeD4pICIKICJbLXUgWy0tZXhjbHVkZS1wZXItZGlyZWN0b3J5PTxnaXRpZ25vcmU+XSB8IC1pXV0gWy0tbm8tc3BhcnNlLWNoZWNrb3V0XSBbLS0iCkBAIC0xNTEwMSwxMjAgKzE4MzExLDI5OCBAQAogInNwYXJzZS1jaGVja291dF0gWy0taW5kZXgtb3V0cHV0PTxmaWNoaWVyPl0gKC0tZW1wdHkgfCA8YXJicmUgb3UgYXBwYXJlbnTDqSAiCiAiMT4gWzxhcmJyZSBvdSBhcHBhcmVudMOpIDI+IFs8YXJicmUgb3UgYXBwYXJlbnTDqSAzPl1dKSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjMKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI0CiBtc2dpZCAid3JpdGUgcmVzdWx0aW5nIGluZGV4IHRvIDxmaWxlPiIKIG1zZ3N0ciAiw6ljcmlyZSBsJ2luZGV4IHLDqXN1bHRhbnQgZGFucyA8ZmljaGllcj4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI2CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNwogbXNnaWQgIm9ubHkgZW1wdHkgdGhlIGluZGV4IgogbXNnc3RyICJqdXN0ZSB2aWRlciBsJ2luZGV4IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyOAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjkKIG1zZ2lkICJNZXJnaW5nIgogbXNnc3RyICJGdXNpb24iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMwCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMQogbXNnaWQgInBlcmZvcm0gYSBtZXJnZSBpbiBhZGRpdGlvbiB0byBhIHJlYWQiCiBtc2dzdHIgImVmZmVjdHVlciB1bmUgZnVzaW9uIGVuIHBsdXMgZCd1bmUgbGVjdHVyZSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzIKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMzCiBtc2dpZCAiMy13YXkgbWVyZ2UgaWYgbm8gZmlsZSBsZXZlbCBtZXJnaW5nIHJlcXVpcmVkIgogbXNnc3RyICJmdXNpb24gw6AgMyBwb2ludHMgc2kgYXVjdW5lIGZ1c2lvbiBkZSBuaXZlYXUgZmljaGllciBuJ2VzdCByZXF1aXNlIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzUKIG1zZ2lkICIzLXdheSBtZXJnZSBpbiBwcmVzZW5jZSBvZiBhZGRzIGFuZCByZW1vdmVzIgogbXNnc3RyICJmdXNpb24gw6AgMyBwb2ludHMgZW4gcHLDqXNlbmNlIGQnYWpvdXRzIGV0IHN1cHByZXNzaW9ucyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzYKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM3CiBtc2dpZCAic2FtZSBhcyAtbSwgYnV0IGRpc2NhcmQgdW5tZXJnZWQgZW50cmllcyIKIG1zZ3N0ciAiY29tbWUgLW0sIG1haXMgYW5udWxlIGxlcyDDqWzDqW1lbnRzIG5vbiBmdXNpb25uw6lzIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzgKIG1zZ2lkICI8c3ViZGlyZWN0b3J5Pi8iCiBtc2dzdHIgIjxzb3VzLXLDqXBlcnRvaXJlPi8iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM4CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzOQogbXNnaWQgInJlYWQgdGhlIHRyZWUgaW50byB0aGUgaW5kZXggdW5kZXIgPHN1YmRpcmVjdG9yeT4vIgogbXNnc3RyICJsaXJlIGwnYXJicmUgZGFucyBsJ2luZGV4IGRhbnMgPHNvdXMtcsOpcGVydG9pcmU+LyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDEKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQyCiBtc2dpZCAidXBkYXRlIHdvcmtpbmcgdHJlZSB3aXRoIG1lcmdlIHJlc3VsdCIKIG1zZ3N0ciAibWV0dHJlIMOgIGpvdXIgbGEgY29waWUgZGUgdHJhdmFpbCBhdmVjIGxlIHLDqXN1bHRhdCBkZSBsYSBmdXNpb24iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQzCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NAogbXNnaWQgImdpdGlnbm9yZSIKIG1zZ3N0ciAiZ2l0aWdub3JlIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDUKIG1zZ2lkICJhbGxvdyBleHBsaWNpdGx5IGlnbm9yZWQgZmlsZXMgdG8gYmUgb3ZlcndyaXR0ZW4iCiBtc2dzdHIgImF1dG9yaXNlciBleHBsaWNpdGVtZW50IGxlcyBmaWNoaWVycyBpZ25vcsOpcyDDoCDDqnRyZSDDqWNyYXPDqXMiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ3CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0OAogbXNnaWQgImRvbid0IGNoZWNrIHRoZSB3b3JraW5nIHRyZWUgYWZ0ZXIgbWVyZ2luZyIKIG1zZ3N0ciAibmUgcGFzIHbDqXJpZmllciBsYSBjb3BpZSBkZSB0cmF2YWlsIGFwcsOocyBsYSBmdXNpb24iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ4CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0OQogbXNnaWQgImRvbid0IHVwZGF0ZSB0aGUgaW5kZXggb3IgdGhlIHdvcmsgdHJlZSIKIG1zZ3N0ciAibmUgcGFzIG1ldHRyZSDDoCBqb3VyIGwnaW5kZXggb3UgbGEgY29waWUgZGUgdHJhdmFpbCIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTAKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUxCiBtc2dpZCAic2tpcCBhcHBseWluZyBzcGFyc2UgY2hlY2tvdXQgZmlsdGVyIgogbXNnc3RyICJzYXV0ZXIgbCdhcHBsaWNhdGlvbiBkdSBmaWx0cmUgZCdleHRyYWN0aW9uIGNyZXVzZSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTIKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUzCiBtc2dpZCAiZGVidWcgdW5wYWNrLXRyZWVzIgogbXNnc3RyICJkw6lib2d1ZXIgdW5wYWNrLXRyZWVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjI5Ci1tc2dpZCAiIgotImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dIFs8dXBzdHJlYW0+XSAiCi0iWzxicmFuY2g+XSIKLW1zZ3N0ciAiIgotImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bm91dmVsbGUtYmFzZT5dIFs8YW1vbnQ+XSAiCi0iWzxicmFuY2hlPl0iCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1NworbXNnaWQgInN1cHByZXNzIGZlZWRiYWNrIG1lc3NhZ2VzIgorbXNnc3RyICJzdXBwcmltZXIgbGVzIG1lc3NhZ2VzIGQnaW5mb3JtYXRpb24gZGUgc3VpdmkiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MzEKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTg4Cittc2dpZCAiWW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiCittc2dzdHIgIlZvdXMgZGV2ZXogZCdhYm9yZCByw6lzb3VkcmUgdm90cmUgaW5kZXggY291cmFudCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozMgorbXNnaWQgIiIKKyJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+IHwgLS1rZWVwLWJhc2VdICIKKyJbPHVwc3RyZWFtPiBbPGJyYW5jaD5dXSIKK21zZ3N0ciAiIgorImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bm91dmVsbGUtYmFzZT4gfCAtLWtlZXAtIgorImJhc2VdIFs8YW1vbnQ+IFs8YnJhbmNoZT5dXSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozNAogbXNnaWQgIiIKICJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+XSAtLXJvb3QgWzxicmFuY2g+XSIKIG1zZ3N0ciAiIgogImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bm91dmVsbGUtYmFzZT5dIC0tcm9vdCAiCiAiWzxicmFuY2hlPl0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MzMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzYKIG1zZ2lkICJnaXQgcmViYXNlIC0tY29udGludWUgfCAtLWFib3J0IHwgLS1za2lwIHwgLS1lZGl0LXRvZG8iCiBtc2dzdHIgImdpdCByZWJhc2UgLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXAgfCAtLWVkaXQtdG9kbyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTc1IGJ1aWx0aW4vcmViYXNlLmM6MTk5IGJ1aWx0aW4vcmViYXNlLmM6MjI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIKK21zZ3N0ciAibGlzdGUgw6AgZmFpcmUgaW51dGlsaXNhYmxlwqA6ICclcyciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5ICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciB1biBmaWNoaWVyIHRlbXBvcmFpcmUgJXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6Mjk4Cittc2dpZCAiY291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCittc2dzdHIgImltcG9zc2libGUgZGUgbWFycXVlciBjb21tZSBpbnRlcmFjdGlmIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM1MgorbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSB0b2RvIGxpc3QiCittc2dzdHIgImltcG9zc2libGUgZGUgZ8OpbsOpcmVyIGxhIGxpc3RlIMOgLWZhaXJlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM5MQorbXNnaWQgImEgYmFzZSBjb21taXQgbXVzdCBiZSBwcm92aWRlZCB3aXRoIC0tdXBzdHJlYW0gb3IgLS1vbnRvIgorbXNnc3RyICJ1biBjb21taXQgZGUgYmFzZSBkb2l0IMOqdHJlIGZvdXJuaSBhdmVjIC0tdXBzdHJlYW0gb3UgLS1vbnRvIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ2MQorbXNnaWQgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPG9wdGlvbnM+XSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NzQgYnVpbHRpbi9yZWJhc2UuYzoxNTUwCittc2dpZCAiKERFUFJFQ0FURUQpIGtlZXAgZW1wdHkgY29tbWl0cyIKK21zZ3N0ciAiKE9CU09Mw4hURSkgZ2FyZGVyIGxlcyB2YWxpZGF0aW9ucyB2aWRlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NzggYnVpbHRpbi9yZXZlcnQuYzoxMjgKK21zZ2lkICJhbGxvdyBjb21taXRzIHdpdGggZW1wdHkgbWVzc2FnZXMiCittc2dzdHIgImF1dG9yaXNlciBsZXMgdmFsaWRhdGlvbnMgYXZlYyBkZXMgbWVzc2FnZXMgdmlkZXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDgwCittc2dpZCAicmViYXNlIG1lcmdlIGNvbW1pdHMiCittc2dzdHIgInJlYmFzZXIgbGVzIGNvbW1pdHMgZGUgZnVzaW9uIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4MgorbXNnaWQgImtlZXAgb3JpZ2luYWwgYnJhbmNoIHBvaW50cyBvZiBjb3VzaW5zIgorbXNnc3RyICJjb25zZXJ2ZXIgbGVzIHBvaW50cyBkZSBicmFuY2hlbWVudCBkZSBjb3VzaW5zIG9yaWdpbmF1eCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODQKK21zZ2lkICJtb3ZlIGNvbW1pdHMgdGhhdCBiZWdpbiB3aXRoIHNxdWFzaCEvZml4dXAhIgorbXNnc3RyICJkw6lwbGFjZXIgbGVzIGNvbW1pdHMgcXVpIGNvbW1lbmNlbnQgcGFyIHNxdWFzaCEvZml4dXAhIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4NQorbXNnaWQgInNpZ24gY29tbWl0cyIKK21zZ3N0ciAic2lnbmVyIGxlcyBjb21taXRzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4NyBidWlsdGluL3JlYmFzZS5jOjE0OTAKK21zZ2lkICJkaXNwbGF5IGEgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtIgorbXNnc3RyICJhZmZpY2hlciB1biBkaWZmc3RhdCBkZSBjZSBxdWkgYSBjaGFuZ8OpIGVuIGFtb250IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4OQorbXNnaWQgImNvbnRpbnVlIHJlYmFzZSIKK21zZ3N0ciAiY29udGludWVyIGxlIHJlYmFzYWdlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5MQorbXNnaWQgInNraXAgY29tbWl0IgorbXNnc3RyICJzYXV0ZXIgbGUgY29tbWl0IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5MgorbXNnaWQgImVkaXQgdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAiw6lkaXRlciBsYSBsaXN0ZSDDoC1mYWlyZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTQKK21zZ2lkICJzaG93IHRoZSBjdXJyZW50IHBhdGNoIgorbXNnc3RyICJhZmZpY2hlciBsZSBwYXRjaCBjb3VyYW50IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5NworbXNnaWQgInNob3J0ZW4gY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICJyYWNjb3VyY2lyIGxlcyBpZGVudGlmaWFudHMgZGUgY29tbWl0cyBkYW5zIGxhIGxpc3RlIMOgLWZhaXJlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5OQorbXNnaWQgImV4cGFuZCBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCittc2dzdHIgIsOpdGVuZHJlIGxlcyBpZGVudGlmaWFudHMgZGUgY29tbWl0IGRhbnMgbGEgbGlzdGUgw6AtZmFpcmUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAxCittc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAidsOpcmlmaWVyIGxhIGxpc3RlIMOgLWZhaXJlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwMworbXNnaWQgInJlYXJyYW5nZSBmaXh1cC9zcXVhc2ggbGluZXMiCittc2dzdHIgInLDqWFycmFuZ2VyIGxlcyBsaWduZXMgZml4dXAvc3F1YXNoIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwNQorbXNnaWQgImluc2VydCBleGVjIGNvbW1hbmRzIGluIHRvZG8gbGlzdCIKK21zZ3N0ciAiaW5zw6lyZXIgbGVzIGNvbW1hbmRlcyBleGVjIGRhbnMgbGEgbGlzdGUgw6AtZmFpcmUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTA2Cittc2dpZCAib250byIKK21zZ3N0ciAic3VyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwOQorbXNnaWQgInJlc3RyaWN0LXJldmlzaW9uIgorbXNnc3RyICJyZXN0cmljdC1yZXZpc2lvbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDkKK21zZ2lkICJyZXN0cmljdCByZXZpc2lvbiIKK21zZ3N0ciAicmVzdHJlaW5kcmUgbGEgcsOpdmlzaW9uIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxMQorbXNnaWQgInNxdWFzaC1vbnRvIgorbXNnc3RyICLDqWNyYXNlci1zdXIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTEyCittc2dpZCAic3F1YXNoIG9udG8iCittc2dzdHIgIsOpY3Jhc2VyIHN1ciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTQKK21zZ2lkICJ0aGUgdXBzdHJlYW0gY29tbWl0IgorbXNnc3RyICJsZSBjb21taXQgYW1vbnQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTE2Cittc2dpZCAiaGVhZC1uYW1lIgorbXNnc3RyICJub20gZHUgaGVhZCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTYKK21zZ2lkICJoZWFkIG5hbWUiCittc2dzdHIgIm5vbSBkdSBoZWFkIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyMQorbXNnaWQgInJlYmFzZSBzdHJhdGVneSIKK21zZ3N0ciAic3RyYXTDqWdpZSBkZSByZWJhc2FnZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjIKK21zZ2lkICJzdHJhdGVneS1vcHRzIgorbXNnc3RyICJvcHRpb25zIGRlIHN0cmF0w6lnaWUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTIzCittc2dpZCAic3RyYXRlZ3kgb3B0aW9ucyIKK21zZ3N0ciAib3B0aW9ucyBkZSBzdHJhdMOpZ2llIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNAorbXNnaWQgInN3aXRjaC10byIKK21zZ3N0ciAic3dpdGNoLXRvIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNQorbXNnaWQgInRoZSBicmFuY2ggb3IgY29tbWl0IHRvIGNoZWNrb3V0IgorbXNnc3RyICJsYSBicmFuY2hlIG91IGxlIGNvbW1pdCDDoCBleHRyYWlyZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjYKK21zZ2lkICJvbnRvLW5hbWUiCittc2dzdHIgInN1ci1sZS1ub20iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI2Cittc2dpZCAib250byBuYW1lIgorbXNnc3RyICJzdXIgbGUgbm9tIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNworbXNnaWQgImNtZCIKK21zZ3N0ciAiY21kIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNworbXNnaWQgInRoZSBjb21tYW5kIHRvIHJ1biIKK21zZ3N0ciAibGEgY29tbWFuZGUgw6AgbGFuY2VyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUzMCBidWlsdGluL3JlYmFzZS5jOjE1ODQKK21zZ2lkICJhdXRvbWF0aWNhbGx5IHJlLXNjaGVkdWxlIGFueSBgZXhlY2AgdGhhdCBmYWlscyIKK21zZ3N0ciAicmUtcGxhbmlmaWVyIGF1dG9tYXRpcXVlbWVudCB0b3V0IGBleGVjYCBxdWkgw6ljaG91ZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1NDYKK21zZ2lkICItLVtuby1dcmViYXNlLWNvdXNpbnMgaGFzIG5vIGVmZmVjdCB3aXRob3V0IC0tcmViYXNlLW1lcmdlcyIKK21zZ3N0ciAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIG4nYSBhdWN1biBlZmZldCBzYW5zIC0tcmViYXNlLW1lcmdlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcmVxdWlyZXMgYW4gaW50ZXJhY3RpdmUgcmViYXNlIgogbXNnc3RyICIlcyByZXF1aWVydCB1biByZWJhc2FnZSBpbnRlcmFjdGlmIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE3MQorIzogYnVpbHRpbi9yZWJhc2UuYzo2MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCAnb250byc6ICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZCdhY2PDqWRlciAnb250bycgOiAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE4NgorIzogYnVpbHRpbi9yZWJhc2UuYzo2MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvcmlnLWhlYWQ6ICclcyciCiBtc2dzdHIgIm9yaWctaGVhZCBpbnZhbGlkZcKgOiAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjIxNAorIzogYnVpbHRpbi9yZWJhc2UuYzo2NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgaW52YWxpZCBhbGxvd19yZXJlcmVfYXV0b3VwZGF0ZTogJyVzJyIKIG1zZ3N0ciAiYWxsb3dfcmVyZXJlX2F1dG91cGRhdGUgaW52YWxpZGUgaWdub3LDqcKgOiAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjI1OQorIzogYnVpbHRpbi9yZWJhc2UuYzo3MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlYWQgJyVzJyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBsaXJlICclcyciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6Mjc3CisjOiBidWlsdGluL3JlYmFzZS5jOjc0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgc3RvcmUgJXMiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgc3RvY2tlciAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzozMzcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6ODUzCittc2dpZCAiY291bGQgbm90IGRldGVybWluZSBIRUFEIHJldmlzaW9uIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGTDqXRlcm1pbmVyIGxhIHLDqXZpc2lvbiBIRUFEIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjk3NiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODEKIG1zZ2lkICIiCiAiUmVzb2x2ZSBhbGwgY29uZmxpY3RzIG1hbnVhbGx5LCBtYXJrIHRoZW0gYXMgcmVzb2x2ZWQgd2l0aFxuIgogIlwiZ2l0IGFkZC9ybSA8Y29uZmxpY3RlZF9maWxlcz5cIiwgdGhlbiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIi5cbiIKQEAgLTE1MjI4LDExICsxODYxNiwzNSBAQAogImFycsOqdGVyXG4iCiAiZXQgcmV2ZW5pciDDoCBsJ8OpdGF0IGFudMOpcmlldXIgw6AgbGEgY29tbWFuZGUsIGxhbmNleiBcImdpdCByZWJhc2UgLS1hYm9ydFwiLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo1NjEKLW1zZ2lkICJjb3VsZCBub3QgZGV0ZXJtaW5lIEhFQUQgcmV2aXNpb24iCi1tc2dzdHIgImltcG9zc2libGUgZGUgZMOpdGVybWluZXIgbGEgcsOpdmlzaW9uIEhFQUQiCisjOiBidWlsdGluL3JlYmFzZS5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorImdpdCBlbmNvdW50ZXJlZCBhbiBlcnJvciB3aGlsZSBwcmVwYXJpbmcgdGhlIHBhdGNoZXMgdG8gcmVwbGF5XG4iCisidGhlc2UgcmV2aXNpb25zOlxuIgorIlxuIgorIiAgICAlc1xuIgorIlxuIgorIkFzIGEgcmVzdWx0LCBnaXQgY2Fubm90IHJlYmFzZSB0aGVtLiIKK21zZ3N0ciAiIgorIlxuIgorImdpdCBhIHJlbmNvbnRyw6kgdW5lIGVycmV1ciBsb3JzIGRlIGxhIHByw6lwYXJhdGlvbiBkZXMgY29ycmVjdGlmc1xuIgorInBvdXIgcmVqb3VlciBjZXMgcsOpdmlzaW9uc8KgOiBcbiIKKyJcbiIKKyIgICAgJXNcbiIKKyJcbiIKKyJSw6lzdWx0YXQsIGdpdCBuZSBwZXV0IHBhcyBsZXMgcmViYXNlci4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6NzUzCisjOiBidWlsdGluL3JlYmFzZS5jOjEzODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVucmVjb2duaXplZCBlbXB0eSB0eXBlICclcyc7IHZhbGlkIHZhbHVlcyBhcmUgXCJkcm9wXCIsIFwia2VlcFwiLCBhbmQgXCJhc2siCisiXCIuIgorbXNnc3RyICIiCisidHlwZSB2aWRlIG5vbiBjb25udSAnJXMnwqA7IGxlcyB2YWxldXJzIHZhbGlkZXMgc29udCBcImRyb3BcIiAoYWJhbmRvbm5lciksICIKKyJcImtlZXBcIiAoZ2FyZGVyKSBldCBcImFza1wiIChkZW1hbmRlcikuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiVzXG4iCkBAIC0xNTI0OSw3ICsxODY2MSw3IEBACiAiICAgIGdpdCByZWJhc2UgJzxicmFuY2hlPidcbiIKICJcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo3NjkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSWYgeW91IHdpc2ggdG8gc2V0IHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGlzIGJyYW5jaCB5b3UgY2FuIGRvIHNvIHdpdGg6XG4iCkBAIC0xNTI2MywxNTAgKzE4Njc1LDE3NyBAQAogIiAgICBnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvPSVzLzxicmFuY2hlPiAlc1xuIgogIlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjgzMgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDQ3Cittc2dpZCAiZXhlYyBjb21tYW5kcyBjYW5ub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAibGVzIGNvbW1hbmRlcyBleGVjIG5lIHBldXQgcGFzIGNvbnRlbmlyIGRlIHJldG91ciDDoCBsYSBsaWduZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDUxCittc2dpZCAiZW1wdHkgZXhlYyBjb21tYW5kIgorbXNnc3RyICJjb21tYW5kZSBleGVjIHZpZGUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MQogbXNnaWQgInJlYmFzZSBvbnRvIGdpdmVuIGJyYW5jaCBpbnN0ZWFkIG9mIHVwc3RyZWFtIgogbXNnc3RyICJyZWJhc2VyIHN1ciBsYSBicmFuY2hlICVzIGF1IGxpZXUgZGUgbGEgYnJhbmNoZSBhbW9udCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MworbXNnaWQgInVzZSB0aGUgbWVyZ2UtYmFzZSBvZiB1cHN0cmVhbSBhbmQgYnJhbmNoIGFzIHRoZSBjdXJyZW50IGJhc2UiCittc2dzdHIgIiIKKyJ1dGlsaXNlciBsYSBiYXNlIGRlIGZ1c2lvbiBkZSBsJ2Ftb250IGV0IGxhIGJyYW5jaGUgY29tbWUgYmFzZSBhY3R1ZWxsZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDg1CiBtc2dpZCAiYWxsb3cgcHJlLXJlYmFzZSBob29rIHRvIHJ1biIKIG1zZ3N0ciAicGVybWV0dHJlIGxlIGxhbmNlbWVudCBkdSBjcm9jaGV0IHByZS1yZWJhc2UiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODM2CisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODcKIG1zZ2lkICJiZSBxdWlldC4gaW1wbGllcyAtLW5vLXN0YXQiCiBtc2dzdHIgIsOqdHJlIHNpbGVuY2lldXguIGltcGxpcXVlIC0tbm8tc3RhdCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzkKLW1zZ2lkICJkaXNwbGF5IGEgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtIgotbXNnc3RyICJhZmZpY2hlciB1biBkaWZmc3RhdCBkZSBjZSBxdWkgYSBjaGFuZ8OpIGVuIGFtb250IgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjg0MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDkzCiBtc2dpZCAiZG8gbm90IHNob3cgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtIgogbXNnc3RyICJuZSBwYXMgYWZmaWNoZXIgdW4gZGlmZnN0YXQgZGUgY2UgcXVpIGEgY2hhbmfDqSBlbiBhbW9udCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NDUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5NgogbXNnaWQgImFkZCBhIFNpZ25lZC1vZmYtYnk6IGxpbmUgdG8gZWFjaCBjb21taXQiCiBtc2dzdHIgImFqb3V0ZXIgdW5lIGxpZ25lIFNpZ25lZC1vZmYtYnkgw6AgY2hhcXVlIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NDcgYnVpbHRpbi9yZWJhc2UuYzo4NTEgYnVpbHRpbi9yZWJhc2UuYzo4NTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5OCBidWlsdGluL3JlYmFzZS5jOjE1MDIgYnVpbHRpbi9yZWJhc2UuYzoxNTA0CiBtc2dpZCAicGFzc2VkIHRvICdnaXQgYW0nIgotbXNnc3RyICJwYXNzw6kgw6AgJ2dpdCBhbSciCittc2dzdHIgInBhc3PDqSBqdXNxdSfDoCAnZ2l0IGFtJyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NTUgYnVpbHRpbi9yZWJhc2UuYzo4NTcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUwNiBidWlsdGluL3JlYmFzZS5jOjE1MDgKIG1zZ2lkICJwYXNzZWQgdG8gJ2dpdCBhcHBseSciCiBtc2dzdHIgInBhc3PDqSBqdXNxdSfDoCBnaXQtYXBwbHkiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODU5IGJ1aWx0aW4vcmViYXNlLmM6ODYyCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MTAgYnVpbHRpbi9yZWJhc2UuYzoxNTEzCiBtc2dpZCAiY2hlcnJ5LXBpY2sgYWxsIGNvbW1pdHMsIGV2ZW4gaWYgdW5jaGFuZ2VkIgogbXNnc3RyICJwaWNvcmVyIHRvdXMgbGVzIGNvbW1pdHMsIG3Dqm1lIHNhbnMgbW9kaWZpYW50IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg2NAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTE1CiBtc2dpZCAiY29udGludWUiCiBtc2dzdHIgImNvbnRpbnVlciIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NjcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxOAogbXNnaWQgInNraXAgY3VycmVudCBwYXRjaCBhbmQgY29udGludWUiCiBtc2dzdHIgInNhdXRlciBsZSBwYXRjaCBjb3VyYW50IGV0IGNvbnRpbnVlciIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NjkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyMAogbXNnaWQgImFib3J0IGFuZCBjaGVjayBvdXQgdGhlIG9yaWdpbmFsIGJyYW5jaCIKIG1zZ3N0ciAiYWJhbmRvbm5lciBldCBleHRyYWlyZSBsYSBicmFuY2hlIGQnb3JpZ2luZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyMwogbXNnaWQgImFib3J0IGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMiCiBtc2dzdHIgImFiYW5kb25uZSBtYWlzIGdhcmRlIEhFQUQgb8O5IGlsIGVzdCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyNAogbXNnaWQgImVkaXQgdGhlIHRvZG8gbGlzdCBkdXJpbmcgYW4gaW50ZXJhY3RpdmUgcmViYXNlIgogbXNnc3RyICLDqWRpdGVyIGxhIGxpc3RlIMOgIGZhaXJlIGxvcnMgZCd1biByZWJhc2FnZSBpbnRlcmFjdGlmIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3NgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTI3CiBtc2dpZCAic2hvdyB0aGUgcGF0Y2ggZmlsZSBiZWluZyBhcHBsaWVkIG9yIG1lcmdlZCIKIG1zZ3N0ciAiYWZmaWNoZXIgbGUgcGF0Y2ggZW4gY291cnMgZCdhcHBsaWNhdGlvbiBvdSBkZSBmdXNpb24iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODc5CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzAKK21zZ2lkICJ1c2UgYXBwbHkgc3RyYXRlZ2llcyB0byByZWJhc2UiCittc2dzdHIgInV0aWxpc2VyIGRlcyBzdHJhdMOpZ2llcyBkJ2FwcGxpY2F0aW9uIHBvdXIgcmViYXNlciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTM0CiBtc2dpZCAidXNlIG1lcmdpbmcgc3RyYXRlZ2llcyB0byByZWJhc2UiCiBtc2dzdHIgInV0aWxpc2VyIGRlcyBzdHJhdMOpZ2llcyBkZSBmdXNpb24gcG91ciByZWJhc2VyIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg4MworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTM4CiBtc2dpZCAibGV0IHRoZSB1c2VyIGVkaXQgdGhlIGxpc3Qgb2YgY29tbWl0cyB0byByZWJhc2UiCiBtc2dzdHIgImxhaXNzZXIgbCd1dGlsaXNhdGV1ciDDqWRpdGVyIGxhIGxpc3RlIGRlcyBjb21taXRzIMOgIHJlYmFzZXIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODg3Ci1tc2dpZCAidHJ5IHRvIHJlY3JlYXRlIG1lcmdlcyBpbnN0ZWFkIG9mIGlnbm9yaW5nIHRoZW0iCi1tc2dzdHIgImVzc2F5ZXIgZGUgcmVjcsOpZXIgbGVzIGZ1c2lvbnMgYXUgbGlldSBkZSBsZXMgaWdub3JlciIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU0MgorbXNnaWQgIihERVBSRUNBVEVEKSB0cnkgdG8gcmVjcmVhdGUgbWVyZ2VzIGluc3RlYWQgb2YgaWdub3JpbmcgdGhlbSIKK21zZ3N0ciAiKETDiUNPTlNFSUxMw4kpIGVzc2F5ZXIgZGUgcmVjcsOpZXIgbGVzIGZ1c2lvbnMgYXUgbGlldSBkZSBsZXMgaWdub3JlciIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4OTEKLW1zZ2lkICJhbGxvdyByZXJlcmUgdG8gdXBkYXRlIGluZGV4IHdpdGggcmVzb2x2ZWQgY29uZmxpY3QiCi1tc2dzdHIgInBlcm1ldHRyZSDDoCByZXJlcmUgw6AgbWV0dHJlIMOgIGpvdXIgbCdpbmRleCBhdmVjIGRlcyBjb25mbGl0cyByw6lzb2x1cyIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU0NworbXNnaWQgImhvdyB0byBoYW5kbGUgY29tbWl0cyB0aGF0IGJlY29tZSBlbXB0eSIKK21zZ3N0ciAiY29tbWVudCBnw6lyZXIgbGVzIGNvbW1pdHMgcXVpIGRldmllbm5lbnQgdmlkZXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODk0Ci1tc2dpZCAicHJlc2VydmUgZW1wdHkgY29tbWl0cyBkdXJpbmcgcmViYXNlIgotbXNnc3RyICJwcsOpc2VydmVyIGxlcyB2YWxpZGF0aW9ucyB2aWRlcyBwZW5kYW50IGxlIHJlYmFzYWdlIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjg5NgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTU0CiBtc2dpZCAibW92ZSBjb21taXRzIHRoYXQgYmVnaW4gd2l0aCBzcXVhc2ghL2ZpeHVwISB1bmRlciAtaSIKIG1zZ3N0ciAiZMOpcGxhY2UgbGVzIGNvbW1pdHMgcXVpIGNvbW1lbmNlbnQgcGFyIHNxdWFzaCEvZml4dXAhIHNvdXMgLWkiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTAyCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjAKIG1zZ2lkICJhdXRvbWF0aWNhbGx5IHN0YXNoL3N0YXNoIHBvcCBiZWZvcmUgYW5kIGFmdGVyIgogbXNnc3RyICJyZW1pc2VyIGV0IHLDqWFwcGxpcXVlciBhdXRvbWF0aXF1ZW1lbnQgYXZhbnQgZXQgYXByw6hzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkwNAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTYyCiBtc2dpZCAiYWRkIGV4ZWMgbGluZXMgYWZ0ZXIgZWFjaCBjb21taXQgb2YgdGhlIGVkaXRhYmxlIGxpc3QiCiBtc2dzdHIgImFqb3V0ZXIgbGVzIGxpZ25lcyBleGVjIGFwcsOocyBjaGFxdWUgY29tbWl0IGRlIGxhIGxpc3RlIMOpZGl0YWJsZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU2NgogbXNnaWQgImFsbG93IHJlYmFzaW5nIGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKIG1zZ3N0ciAiYXV0b3Jpc2VyIGxlcyBjb21taXRzIGRlIHJlYmFzYWdlIGF2ZWMgZGVzIG1lc3NhZ2VzIHZpZGVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxMQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTcwCiBtc2dpZCAidHJ5IHRvIHJlYmFzZSBtZXJnZXMgaW5zdGVhZCBvZiBza2lwcGluZyB0aGVtIgogbXNnc3RyICJlc3NheWVyIGRlIHJlYmFzZXIgbGVzIGZ1c2lvbnMgYXUgbGlldSBkZSBsZXMgZ2FyZGVyIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxNAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTczCiBtc2dpZCAidXNlICdtZXJnZS1iYXNlIC0tZm9yay1wb2ludCcgdG8gcmVmaW5lIHVwc3RyZWFtIgogbXNnc3RyICJ1dGlsaXNlciAnbWVyZ2UtYmFzZSAtLWZvcmstcG9pbnQnIHBvdXIgcmFmZmluZXIgbCdhbW9udCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3NQogbXNnaWQgInVzZSB0aGUgZ2l2ZW4gbWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgInV0aWxpc2VyIGxhIHN0cmF0w6lnaWUgZGUgZnVzaW9uIGluZGlxdcOpZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTggYnVpbHRpbi9yZXZlcnQuYzoxMTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3NyBidWlsdGluL3JldmVydC5jOjExNQogbXNnaWQgIm9wdGlvbiIKIG1zZ3N0ciAib3B0aW9uIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxOQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTc4CiBtc2dpZCAicGFzcyB0aGUgYXJndW1lbnQgdGhyb3VnaCB0byB0aGUgbWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgInBhc3NlciBsZXMgYXJndW1lbnRzIGp1c3F1J8OgIGxhIHN0cmF0w6lnaWUgZGUgZnVzaW9uIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkyMgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTgxCiBtc2dpZCAicmViYXNlIGFsbCByZWFjaGFibGUgY29tbWl0cyB1cCB0byB0aGUgcm9vdChzKSIKIG1zZ3N0ciAicmViYXNlciB0b3VzIGxlcyBvYmpldHMgaW5hdHRlaWduYWJsZXMgZGVwdWlzIGxlcyByYWNpbmVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkzOAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgZXhlYyAlcyIKLW1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2V4w6ljdXRlciAlcyIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU5OAorbXNnaWQgIiIKKyJ0aGUgcmViYXNlLnVzZUJ1aWx0aW4gc3VwcG9ydCBoYXMgYmVlbiByZW1vdmVkIVxuIgorIlNlZSBpdHMgZW50cnkgaW4gJ2dpdCBoZWxwIGNvbmZpZycgZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisibGVzIHN1cHBvcnQgZGUgcmViYXNlLnVzZUJ1aWx0aW4gYSDDqXTDqSBzdXBwcmltw6kgIVxuIgorIlZvaXIgc29uIGVudHLDqWUgZGFucyAnZ2l0IGhlbHAgY29uZmlnJyBwb3VyIHBsdXMgZGUgZMOpdGFpbHMuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjk1NiBnaXQtbGVnYWN5LXJlYmFzZS5zaDoyMTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTYwNAogbXNnaWQgIkl0IGxvb2tzIGxpa2UgJ2dpdCBhbScgaXMgaW4gcHJvZ3Jlc3MuIENhbm5vdCByZWJhc2UuIgogbXNnc3RyICJJbCBzZW1ibGUgcXVlICdnaXQtYW0nIHNvaXQgZW4gY291cnMuIEltcG9zc2libGUgZGUgcmViYXNlci4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTk3IGdpdC1sZWdhY3ktcmViYXNlLnNoOjM5NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjQ1Cittc2dpZCAiIgorImdpdCByZWJhc2UgLS1wcmVzZXJ2ZS1tZXJnZXMgaXMgZGVwcmVjYXRlZC4gVXNlIC0tcmViYXNlLW1lcmdlcyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorImdpdCByZWJhc2UgLS1wcmVzZXJ2ZS1tZXJnZXMgZXN0IGTDqWNvbnNlaWxsw6kuIFV0aWxpc2V6IC0tcmViYXNlLW1lcmdlcyDDoCBsYSAiCisicGxhY2UuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NTAKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1rZWVwLWJhc2UnIHdpdGggJy0tb250byciCittc2dzdHIgImltcG9zc2libGUgZGUgY29tYmluZXIgJy0ta2VlcC1iYXNlJyBhdmVjICctLW9udG8nIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NTIKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1rZWVwLWJhc2UnIHdpdGggJy0tcm9vdCciCittc2dzdHIgImltcG9zc2libGUgZGUgY29tYmluZXIgJy0ta2VlcC1iYXNlJyBhdmVjICctLXJvb3QnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NTYKIG1zZ2lkICJObyByZWJhc2UgaW4gcHJvZ3Jlc3M/IgogbXNnc3RyICJQYXMgZGUgcmViYXNhZ2UgZW4gY291cnMgPyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDAxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjQwNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjYwCiBtc2dpZCAiVGhlIC0tZWRpdC10b2RvIGFjdGlvbiBjYW4gb25seSBiZSB1c2VkIGR1cmluZyBpbnRlcmFjdGl2ZSByZWJhc2UuIgogbXNnc3RyICIiCiAiTCdhY3Rpb24gLS1lZGl0LXRvZG8gcGV1dCBzZXVsZW1lbnQgw6p0cmUgdXRpbGlzw6llIGxvcnMgZCd1biByZWJhc2FnZSAiCiAiaW50ZXJhY3RpZi4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTAxNSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY4MwogbXNnaWQgIkNhbm5vdCByZWFkIEhFQUQiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgbGlyZSBIRUFEIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwMjggZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDE2CisjOiBidWlsdGluL3JlYmFzZS5jOjE2OTUKIG1zZ2lkICIiCiAiWW91IG11c3QgZWRpdCBhbGwgbWVyZ2UgY29uZmxpY3RzIGFuZCB0aGVuXG4iCiAibWFyayB0aGVtIGFzIHJlc29sdmVkIHVzaW5nIGdpdCBhZGQiCkBAIC0xNTQxNCwyMSArMTg4NTMsMTYgQEAKICJWb3VzIGRldmV6IMOpZGl0ZXIgdG91cyBsZXMgY29uZmxpdHMgZGUgZnVzaW9uIGV0XG4iCiAibGVzIG1hcnF1ZXIgY29tbWUgcsOpc29sdXMgYXZlYyBnaXQgYWRkIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwNDcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTcxNAogbXNnaWQgImNvdWxkIG5vdCBkaXNjYXJkIHdvcmt0cmVlIGNoYW5nZXMiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgc3VwcHJpbWVyIGxlcyBjaGFuZ2VtZW50cyBkZSBsJ2FyYnJlIGRlIHRyYXZhaWwiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTA2NgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBtb3ZlIGJhY2sgdG8gJXMiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgcmV2ZW5pciDDoCAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDc3IGJ1aWx0aW4vcm0uYzozNjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IHJlbW92ZSAnJXMnIgotbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN1cHByaW1lciAnJXMnIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjExMDMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTc3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSXQgc2VlbXMgdGhhdCB0aGVyZSBpcyBhbHJlYWR5IGEgJXMgZGlyZWN0b3J5LCBhbmRcbiIKQEAgLTE1NDUwLDM0NiArMTg4ODQsMTY4IEBACiAiY2hvc2VcbiIKICJkJ2ltcG9ydGFudCBpY2kuXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTEyNAorIzogYnVpbHRpbi9yZWJhc2UuYzoxODA2CiBtc2dpZCAic3dpdGNoIGBDJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgogbXNnc3RyICJsJ29wdGlvbiBgQycgYXR0ZW5kIHVuIHZhbGV1ciBudW3DqXJpcXVlIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExNjEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmtub3duIG1vZGU6ICVzIgogbXNnc3RyICJtb2RlIGluY29ubnXCoDogJXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTE4MworIzogYnVpbHRpbi9yZWJhc2UuYzoxODY5CiBtc2dpZCAiLS1zdHJhdGVneSByZXF1aXJlcyAtLW1lcmdlIG9yIC0taW50ZXJhY3RpdmUiCi1tc2dzdHIgIi0tc3RyYXTDqWdpZSByZXF1aWVydCAtLW1lcmdlIG91IC0taW50ZXJhY3RpdmUiCittc2dzdHIgIi0tc3RyYXRlZ3kgcmVxdWllcnQgLS1tZXJnZSBvdSAtLWludGVyYWN0aXZlIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyMjYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg5OQorbXNnaWQgImNhbm5vdCBjb21iaW5lIGFwcGx5IG9wdGlvbnMgd2l0aCBtZXJnZSBvcHRpb25zIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkZSBjb21iaW5lciBsZXMgb3B0aW9ucyBkJ2FwcGxpY2F0aW9uIGF2ZWMgbGVzIG9wdGlvbnMgZGUgZnVzaW9uIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5MTIKICMsIGMtZm9ybWF0Cittc2dpZCAiVW5rbm93biByZWJhc2UgYmFja2VuZDogJXMiCittc2dzdHIgImJhY2tlbmQgZGUgcmViYXNhZ2UgaW5jb25udSA6ICVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5MzcKK21zZ2lkICItLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWMgcmVxdWlyZXMgLS1leGVjIG9yIC0taW50ZXJhY3RpdmUiCittc2dzdHIgIi0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyByZXF1aWVydCAtLWV4ZWMgb3UgLS1pbnRlcmFjdGl2ZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTU3Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmUtbWVyZ2VzJyB3aXRoICctLXJlYmFzZS1tZXJnZXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNvbWJpbmVyICctLXByZXNlcnZlLW1lcmdlcycgYXZlYyAnLS1yZWJhc2UtbWVyZ2VzJyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTYxCiBtc2dpZCAiIgotImVycm9yOiBjYW5ub3QgY29tYmluZSBpbnRlcmFjdGl2ZSBvcHRpb25zICgtLWludGVyYWN0aXZlLCAtLWV4ZWMsIC0tcmViYXNlLSIKLSJtZXJnZXMsIC0tcHJlc2VydmUtbWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250bykgd2l0aCBhbSBvcHRpb25zICIKLSIoJXMpIgorImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyciCiBtc2dzdHIgIiIKLSJlcnJldXI6IGltcG9zc2libGUgZGUgY29tYmluZXIgZGVzIG9wdGlvbnMgaW50ZXJhY3RpdmUgKC0taW50ZXJhY3RpdmUsIC0tIgotImV4ZWMsIC0tcmViYXNlLW1lcmdlcywgLS1wcmVzZXJ2ZS1tZXJnZXMsIC0ta2VlcC1lbXB0eSwgLS1yb290ICsgLS1vbnRvKSAiCi0iYXZlYyBsZXMgb3B0aW9ucyBhbSAoJXMpIgorImVycmV1csKgOiBpbXBvc3NpYmxlIGRlIGNvbWJpbmVyICctLXByZXNlcnZlLW1lcmdlcycgYXZlYyAnLS1yZXNjaGVkdWxlLSIKKyJmYWlsZWQtZXhlYyciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTIzMQotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iZXJyb3I6IGNhbm5vdCBjb21iaW5lIG1lcmdlIG9wdGlvbnMgKC0tbWVyZ2UsIC0tc3RyYXRlZ3ksIC0tc3RyYXRlZ3ktb3B0aW9uKSAiCi0id2l0aCBhbSBvcHRpb25zICglcykiCi1tc2dzdHIgIiIKLSJlcnJldXLCoDogaW1wb3NzaWJsZSBkZSBjb21iaW5lciBsZXMgb3B0aW9ucyBkZSBmdXNpb24gKC0tbWVyZ2UsIC0tc3RyYXRlZ3ksICIKLSItLXN0cmF0ZWd5LW9wdGlvbikgYXZlYyBsZXMgb3B0aW9ucyBhbSAoJXMpIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyNTEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTM2Ci1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXByZXNlcnZlLW1lcmdlcycgd2l0aCAnLS1yZWJhc2UtbWVyZ2VzJyIKLW1zZ3N0ciAiIgotImVycmV1csKgOiBpbXBvc3NpYmxlIGRlIGNvbWJpbmVyICctLXByZXNlcnZlLW1lcmdlcycgYXZlYyAnLS1yZWJhc2UtbWVyZ2VzJyIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjU2IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU0MgotbXNnaWQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1yZWJhc2UtbWVyZ2VzJyB3aXRoICctLXN0cmF0ZWd5LW9wdGlvbiciCi1tc2dzdHIgIiIKLSJlcnJldXLCoDogaW1wb3NzaWJsZSBkZSBjb21iaW5lciAnLS1yZWJhc2UtbWVyZ2VzJyBhdmVjICctLXN0cmF0ZWd5LW9wdGlvbiciCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI1OSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1NDQKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneSciCi1tc2dzdHIgImVycmV1csKgOiBpbXBvc3NpYmxlIGRlIGNvbWJpbmVyICctLXJlYmFzZS1tZXJnZXMnIGF2ZWMgJy0tc3RyYXRlZ3knIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyODMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICclcyciCiBtc2dzdHIgImFtb250IGludmFsaWRlICclcyciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI4OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxOTkxCiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBuZXcgcm9vdCBjb21taXQiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgY3LDqWVyIHVuIG5vdXZlYXUgY29tbWl0IHJhY2luZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzA3CisjOiBidWlsdGluL3JlYmFzZS5jOjIwMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJzogbmVlZCBleGFjdGx5IG9uZSBtZXJnZSBiYXNlIHdpdGggYnJhbmNoIgorbXNnc3RyICInJXMnOiBleGFjdGVtZW50IHVuZSBiYXNlIGRlIGZ1c2lvbiBuw6ljZXNzYWlyZSBhdmVjIHVuZSBicmFuY2hlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogbmVlZCBleGFjdGx5IG9uZSBtZXJnZSBiYXNlIgogbXNnc3RyICInJXMnOiBleGFjdGVtZW50IHVuZSBiYXNlIGRlIGZ1c2lvbiBuw6ljZXNzYWlyZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzE0CisjOiBidWlsdGluL3JlYmFzZS5jOjIwMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBjb21taXQgJyVzJyIKIG1zZ3N0ciAibmUgcG9pbnRlIHBhcyBzdXIgdW5lIHZhbGlkYXRpb24gdmFsaWRlIDogJyVzJyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzM5CisjOiBidWlsdGluL3JlYmFzZS5jOjIwNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmF0YWw6IG5vIHN1Y2ggYnJhbmNoL2NvbW1pdCAnJXMnIgogbXNnc3RyICJmYXRhbCA6IHBhcyBkZSBicmFuY2hlIG91IGNvbW1pdCAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzNDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjM3Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkzMAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMDYyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZWY6ICVzIgogbXNnc3RyICJSw6lmw6lyZW5jZSBpbmV4aXN0YW50ZcKgOiAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzU5CisjOiBidWlsdGluL3JlYmFzZS5jOjIwNzMKIG1zZ2lkICJDb3VsZCBub3QgcmVzb2x2ZSBIRUFEIHRvIGEgcmV2aXNpb24iCiBtc2dzdHIgIkltcG9zc2libGUgZGUgcsOpc291ZHJlIGxlIGNvbW1pdCBIRUFEIHZlcnMgdW4gcsOpdmlzaW9uIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzOTkgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjY1CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMTEKIG1zZ2lkICJDYW5ub3QgYXV0b3N0YXNoIgogbXNnc3RyICJBdXRvcmVtaXNhZ2UgaW1wb3NzaWJsZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDAyCisjOiBidWlsdGluL3JlYmFzZS5jOjIxMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5leHBlY3RlZCBzdGFzaCByZXNwb25zZTogJyVzJyIKIG1zZ3N0ciAicsOpcG9uc2UgZGUgcmVtaXNhZ2UgaW5hdHRlbmR1ZcKgOiAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBmb3IgJyVzJyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBjcsOpZXIgbGUgcsOpcGVydG9pcmUgcG91ciAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJXNcbiIKIG1zZ3N0ciAiQXV0b3JlbWlzYWdlIGNyw6nDqSA6ICVzXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxNAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTI2CiBtc2dpZCAiY291bGQgbm90IHJlc2V0IC0taGFyZCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByw6lpbml0aWFsaXNlciAtLWhhcmQiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxNSBidWlsdGluL3Jlc2V0LmM6MTEzCi0jLCBjLWZvcm1hdAotbXNnaWQgIkhFQUQgaXMgbm93IGF0ICVzIgotbXNnc3RyICJIRUFEIGVzdCBtYWludGVuYW50IMOgICVzIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MzEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6Njc0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMzUKIG1zZ2lkICJQbGVhc2UgY29tbWl0IG9yIHN0YXNoIHRoZW0uIgogbXNnc3RyICJWZXVpbGxleiBsZXMgdmFsaWRlciBvdSBsZXMgcmVtaXNlci4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ1OAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyIKLW1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyICclcyciCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ3MAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzd2l0Y2ggdG8gJXMiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgYmFzY3VsZXIgdmVycyAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjY5NwotIywgc2gtZm9ybWF0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxODAKIG1zZ2lkICJIRUFEIGlzIHVwIHRvIGRhdGUuIgogbXNnc3RyICJIRUFEIGVzdCDDoCBqb3VyLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgzCisjOiBidWlsdGluL3JlYmFzZS5jOjIxODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3VycmVudCBicmFuY2ggJXMgaXMgdXAgdG8gZGF0ZS5cbiIKIG1zZ3N0ciAiTGEgYnJhbmNoZSBjb3VyYW50ZSAlcyBlc3Qgw6Agam91ci5cbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDkxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjcwNwotIywgc2gtZm9ybWF0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxOTAKIG1zZ2lkICJIRUFEIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgogbXNnc3RyICJIRUFEIGVzdCDDoCBqb3VyLCByZWJhc2FnZSBmb3Jjw6kuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0OTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDdXJyZW50IGJyYW5jaCAlcyBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLlxuIgogbXNnc3RyICJMYSBicmFuY2hlIGNvdXJhbnRlICVzIGVzdCDDoCBqb3VyLCByZWJhc2FnZSBmb3Jjw6kuXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTUwMSBnaXQtbGVnYWN5LXJlYmFzZS5zaDoyMDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIwMAogbXNnaWQgIlRoZSBwcmUtcmViYXNlIGhvb2sgcmVmdXNlZCB0byByZWJhc2UuIgogbXNnc3RyICJMZSBjcm9jaGV0IHByZS1yZWJhc2UgYSByZWZ1c8OpIGRlIHJlYmFzZXIuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJDaGFuZ2VzIHRvICVzOlxuIgogbXNnc3RyICJDaGFuZ2VtZW50cyB2ZXJzICVzIDpcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTExCisjOiBidWlsdGluL3JlYmFzZS5jOjIyMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2hhbmdlcyBmcm9tICVzIHRvICVzOlxuIgogbXNnc3RyICJDaGFuZ2VtZW50cyBkZSAlcyBzdXIgJXMgOlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MzYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJGaXJzdCwgcmV3aW5kaW5nIGhlYWQgdG8gcmVwbGF5IHlvdXIgd29yayBvbiB0b3Agb2YgaXQuLi5cbiIKIG1zZ3N0ciAiIgogIlJlbWJvYmluYWdlIHByw6lhbGFibGUgZGUgaGVhZCBwb3VyIHBvdXZvaXIgcmVqb3VlciB2b3RyZSB0cmF2YWlsIHBhci0iCiAiZGVzc3VzLi4uXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTU0MworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjQ0CiBtc2dpZCAiQ291bGQgbm90IGRldGFjaCBIRUFEIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIGTDqXRhY2hlciBIRUFEIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1NTIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjI1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRlZCAlcyB0byAlcy5cbiIKIG1zZ3N0ciAiQXZhbmNlIHJhcGlkZSBkZSAlcyBzdXIgJXMuXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjI0Ci1tc2dpZCAibm8gSEVBRD8iCi1tc2dzdHIgInBhcyBkZSBIRUFEwqA/IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzo1MQotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAlcyIKLW1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgdW4gZmljaGllciB0ZW1wb3JhaXJlICVzIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzo1NwotbXNnaWQgImNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgotbXNnc3RyICJpbXBvc3NpYmxlIGRlIG1hcnF1ZXIgY29tbWUgaW50ZXJhY3RpZiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTAxCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBvcGVuICVzIgotbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyICVzIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxMTQKLW1zZ2lkICJjb3VsZCBub3QgZ2VuZXJhdGUgdG9kbyBsaXN0IgotbXNnc3RyICJpbXBvc3NpYmxlIGRlIGfDqW7DqXJlciBsYSBsaXN0ZSDDoC1mYWlyZSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTI5Ci1tc2dpZCAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxvcHRpb25zPl0iCi1tc2dzdHIgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFs8b3B0aW9ucz5dIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNDgKLW1zZ2lkICJrZWVwIGVtcHR5IGNvbW1pdHMiCi1tc2dzdHIgImdhcmRlciBsZXMgdmFsaWRhdGlvbnMgdmlkZXMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1MCBidWlsdGluL3JldmVydC5jOjEyNAotbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKLW1zZ3N0ciAiYXV0b3Jpc2VyIGxlcyB2YWxpZGF0aW9ucyBhdmVjIGRlcyBtZXNzYWdlcyB2aWRlcyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTUxCi1tc2dpZCAicmViYXNlIG1lcmdlIGNvbW1pdHMiCi1tc2dzdHIgInJlYmFzZXIgbGVzIGNvbW1pdHMgZGUgZnVzaW9uIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTMKLW1zZ2lkICJrZWVwIG9yaWdpbmFsIGJyYW5jaCBwb2ludHMgb2YgY291c2lucyIKLW1zZ3N0ciAiY29uc2VydmVyIGxlcyBwb2ludHMgZGUgYnJhbmNoZW1lbnQgZGUgY291c2lucyBvcmlnaW5hdXgiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1NQotbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEiCi1tc2dzdHIgImTDqXBsYWNlciBsZXMgY29tbWl0cyBxdWkgY29tbWVuY2VudCBwYXIgc3F1YXNoIS9maXh1cCEiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1NgotbXNnaWQgInNpZ24gY29tbWl0cyIKLW1zZ3N0ciAic2lnbmVyIGxlcyBjb21taXRzIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTgKLW1zZ2lkICJjb250aW51ZSByZWJhc2UiCi1tc2dzdHIgImNvbnRpbnVlciBsZSByZWJhc2FnZSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYwCi1tc2dpZCAic2tpcCBjb21taXQiCi1tc2dzdHIgInNhdXRlciBsZSBjb21taXQiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2MQotbXNnaWQgImVkaXQgdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAiw6lkaXRlciBsYSBsaXN0ZSDDoC1mYWlyZSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYzCi1tc2dpZCAic2hvdyB0aGUgY3VycmVudCBwYXRjaCIKLW1zZ3N0ciAiYWZmaWNoZXIgbGUgcGF0Y2ggY291cmFudCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTY2Ci1tc2dpZCAic2hvcnRlbiBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgInJhY2NvdXJjaXIgbGVzIGlkZW50aWZpYW50cyBkZSBjb21taXRzIGRhbnMgbGEgbGlzdGUgw6AtZmFpcmUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2OAotbXNnaWQgImV4cGFuZCBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgIsOpdGVuZHJlIGxlcyBpZGVudGlmaWFudHMgZGUgY29tbWl0IGRhbnMgbGEgbGlzdGUgw6AtZmFpcmUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3MAotbXNnaWQgImNoZWNrIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgInbDqXJpZmllciBsYSBsaXN0ZSDDoC1mYWlyZSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTcyCi1tc2dpZCAicmVhcnJhbmdlIGZpeHVwL3NxdWFzaCBsaW5lcyIKLW1zZ3N0ciAicsOpYXJyYW5nZXIgbGVzIGxpZ25lcyBmaXh1cC9zcXVhc2giCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NAotbXNnaWQgImluc2VydCBleGVjIGNvbW1hbmRzIGluIHRvZG8gbGlzdCIKLW1zZ3N0ciAiaW5zw6lyZXIgbGVzIGNvbW1hbmRlcyBleGVjIGRhbnMgbGEgbGlzdGUgw6AtZmFpcmUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NQotbXNnaWQgIm9udG8iCi1tc2dzdHIgInN1ciIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc3Ci1tc2dpZCAicmVzdHJpY3QtcmV2aXNpb24iCi1tc2dzdHIgInJlc3RyaWN0LXJldmlzaW9uIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzcKLW1zZ2lkICJyZXN0cmljdCByZXZpc2lvbiIKLW1zZ3N0ciAicmVzdHJlaW5kcmUgbGEgcsOpdmlzaW9uIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzgKLW1zZ2lkICJzcXVhc2gtb250byIKLW1zZ3N0ciAiw6ljcmFzZXItc3VyIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzkKLW1zZ2lkICJzcXVhc2ggb250byIKLW1zZ3N0ciAiw6ljcmFzZXIgc3VyIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODEKLW1zZ2lkICJ0aGUgdXBzdHJlYW0gY29tbWl0IgotbXNnc3RyICJsZSBjb21taXQgYW1vbnQiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MgotbXNnaWQgImhlYWQtbmFtZSIKLW1zZ3N0ciAibm9tIGR1IGhlYWQiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MgotbXNnaWQgImhlYWQgbmFtZSIKLW1zZ3N0ciAibm9tIGR1IGhlYWQiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4NwotbXNnaWQgInJlYmFzZSBzdHJhdGVneSIKLW1zZ3N0ciAic3RyYXTDqWdpZSBkZSByZWJhc2FnZSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg4Ci1tc2dpZCAic3RyYXRlZ3ktb3B0cyIKLW1zZ3N0ciAib3B0aW9ucyBkZSBzdHJhdMOpZ2llIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODkKLW1zZ2lkICJzdHJhdGVneSBvcHRpb25zIgotbXNnc3RyICJvcHRpb25zIGRlIHN0cmF0w6lnaWUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MAotbXNnaWQgInN3aXRjaC10byIKLW1zZ3N0ciAic3dpdGNoLXRvIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTEKLW1zZ2lkICJ0aGUgYnJhbmNoIG9yIGNvbW1pdCB0byBjaGVja291dCIKLW1zZ3N0ciAibGEgYnJhbmNoZSBvdSBsZSBjb21taXQgw6AgZXh0cmFpcmUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MgotbXNnaWQgIm9udG8tbmFtZSIKLW1zZ3N0ciAic3VyLWxlLW5vbSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkyCi1tc2dpZCAib250byBuYW1lIgotbXNnc3RyICJzdXIgbGUgbm9tIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTMKLW1zZ2lkICJjbWQiCi1tc2dzdHIgImNtZCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkzCi1tc2dpZCAidGhlIGNvbW1hbmQgdG8gcnVuIgotbXNnc3RyICJsYSBjb21tYW5kZSDDoCBsYW5jZXIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjIyMAotbXNnaWQgIi0tW25vLV1yZWJhc2UtY291c2lucyBoYXMgbm8gZWZmZWN0IHdpdGhvdXQgLS1yZWJhc2UtbWVyZ2VzIgotbXNnc3RyICItLVtuby1dcmViYXNlLWNvdXNpbnMgbidhIGF1Y3VuIGVmZmV0IHNhbnMgLS1yZWJhc2UtbWVyZ2VzIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoyMjYKLW1zZ2lkICJhIGJhc2UgY29tbWl0IG11c3QgYmUgcHJvdmlkZWQgd2l0aCAtLXVwc3RyZWFtIG9yIC0tb250byIKLW1zZ3N0ciAidW4gY29tbWl0IGRlIGJhc2UgZG9pdCDDqnRyZSBmb3VybmkgYXZlYyAtLXVwc3RyZWFtIG91IC0tb250byIKLQogIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzozMwogbXNnaWQgImdpdCByZWNlaXZlLXBhY2sgPGdpdC1kaXI+IgogbXNnc3RyICJnaXQgcmVjZWl2ZS1wYWNrIDxyw6lwZXJ0b2lyZS1naXQ+IgogCi0jOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjgzMAorIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzo4MjEKIG1zZ2lkICIiCiAiQnkgZGVmYXVsdCwgdXBkYXRpbmcgdGhlIGN1cnJlbnQgYnJhbmNoIGluIGEgbm9uLWJhcmUgcmVwb3NpdG9yeVxuIgogImlzIGRlbmllZCwgYmVjYXVzZSBpdCB3aWxsIG1ha2UgdGhlIGluZGV4IGFuZCB3b3JrIHRyZWUgaW5jb25zaXN0ZW50XG4iCkBAIC0xNTgxOSw3ICsxOTA3NSw3IEBACiAiUG91ciDDqWxpbWluZXIgY2UgbWVzc2FnZSBldCBjb25zZXJ2ZXIgbGUgY29tcG9ydGVtZW50IHBhciBkw6lmYXV0LFxuIgogInLDqWdsZXogwqvCoHJlY2VpdmUuZGVueUN1cnJlbnRCcmFuY2jCoMK7IMOgICdyZWZ1c2UnLiIKIAotIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzo4NTAKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODQxCiBtc2dpZCAiIgogIkJ5IGRlZmF1bHQsIGRlbGV0aW5nIHRoZSBjdXJyZW50IGJyYW5jaCBpcyBkZW5pZWQsIGJlY2F1c2UgdGhlIG5leHRcbiIKICInZ2l0IGNsb25lJyB3b24ndCByZXN1bHQgaW4gYW55IGZpbGUgY2hlY2tlZCBvdXQsIGNhdXNpbmcgY29uZnVzaW9uLlxuIgpAQCAtMTU4MzksMjQgKzE5MDk1LDc5IEBACiAiXG4iCiAiUG91ciDDqWxpbWluZXIgY2UgbWVzc2FnZSwgcsOpZ2xlei1sZSDDoCAncmVmdXNlJy4iCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTkyOQorIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTM4CiBtc2dpZCAicXVpZXQiCiBtc2dzdHIgInF1aWV0IgogCi0jOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NDMKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk1MgogbXNnaWQgIllvdSBtdXN0IHNwZWNpZnkgYSBkaXJlY3RvcnkuIgogbXNnc3RyICJWb3VzIGRldmV6IHNww6ljaWZpZXIgdW4gcsOpcGVydG9pcmUuIgogCi0jOiBidWlsdGluL3JlZmxvZy5jOjU2MyBidWlsdGluL3JlZmxvZy5jOjU2OAorIzogYnVpbHRpbi9yZWZsb2cuYzoxNworbXNnaWQgIiIKKyJnaXQgcmVmbG9nIGV4cGlyZSBbLS1leHBpcmU9PHRpbWU+XSBbLS1leHBpcmUtdW5yZWFjaGFibGU9PHRpbWU+XSBbLS0iCisicmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1zdGFsZS1maXhdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gWy0tYWxsXSAiCisiPHJlZnM+Li4uIgorbXNnc3RyICIiCisiZ2l0IHJlZmxvZyBleHBpcmUgWy0tZXhwaXJlPTxkYXRlPl0gWy0tZXhwaXJlLXVucmVhY2hhYmxlPTxkYXRlPl0gWy0tIgorInJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tc3RhbGUtZml4XSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdIFstLWFsbF0gIgorIjxyw6lmZXJlbmNlcz4uLi4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MjIKK21zZ2lkICIiCisiZ2l0IHJlZmxvZyBkZWxldGUgWy0tcmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdICIKKyI8cmVmcz4uLi4iCittc2dzdHIgIiIKKyJnaXQgcmVmbG9nIGRlbGV0ZSBbLS1yZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gIgorIjxyw6lmw6lyZW5jZXM+Li4uIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjI1Cittc2dpZCAiZ2l0IHJlZmxvZyBleGlzdHMgPHJlZj4iCittc2dzdHIgImdpdCByZWZsb2cgZXhpc3RzIDxyw6lmw6lyZW5jZT4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NTY4IGJ1aWx0aW4vcmVmbG9nLmM6NTczCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgdGltZXN0YW1wIgogbXNnc3RyICInJXMnIG4nZXN0IHBhcyB1biBob3JvZGF0YWdlIHZhbGlkZSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNgorIzogYnVpbHRpbi9yZWZsb2cuYzo2MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWFya2luZyByZWFjaGFibGUgb2JqZWN0cy4uLiIKK21zZ3N0ciAiTWFycXVhZ2UgZGVzIG9iamV0cyBpbmFjY2Vzc2libGVzLi4uIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwb2ludHMgbm93aGVyZSEiCittc2dzdHIgIiVzIG5lIHBvaW50ZSBudWxsZSBwYXJ0wqAhIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY5NgorbXNnaWQgIm5vIHJlZmxvZyBzcGVjaWZpZWQgdG8gZGVsZXRlIgorbXNnc3RyICJwYXMgZGUgam91cm5hbCBkZSByw6lmw6lyZW5jZXMgw6Agc3VwcHJpbWVyIHNww6ljaWZpw6kiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHJlZmxvZzogJXMiCittc2dzdHIgIiclcycgbidlc3QgcGFzIHVuIGpvdXJuYWwgZGUgcsOpZsOpcmVuY2VzIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjcxMAorIywgYy1mb3JtYXQKK21zZ2lkICJubyByZWZsb2cgZm9yICclcyciCittc2dzdHIgInBhcyBkZSBqb3VybmFsIGRlIHLDqWbDqXJlbmNlcyBwb3VyICclcyciCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzU2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmIGZvcm1hdDogJXMiCittc2dzdHIgImZvcm1hdCBkZSByw6lmw6lyZW5jZSBpbnZhbGlkZcKgOiAlcyIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3NjUKK21zZ2lkICJnaXQgcmVmbG9nIFsgc2hvdyB8IGV4cGlyZSB8IGRlbGV0ZSB8IGV4aXN0cyBdIgorbXNnc3RyICJnaXQgcmVmbG9nIFsgc2hvdyB8IGV4cGlyZSB8IGRlbGV0ZSB8IGV4aXN0cyBdIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE3CiBtc2dpZCAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIgogbXNnc3RyICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTgKIG1zZ2lkICIiCiAiZ2l0IHJlbW90ZSBhZGQgWy10IDxicmFuY2g+XSBbLW0gPG1hc3Rlcj5dIFstZl0gWy0tdGFncyB8IC0tbm8tdGFnc10gWy0tIgogIm1pcnJvcj08ZmV0Y2h8cHVzaD5dIDxuYW1lPiA8dXJsPiIKQEAgLTE1ODY0LDgzICsxOTE3NSw4MyBAQAogImdpdCByZW1vdGUgYWRkIFstdCA8YnJhbmNoZT5dIFstbSA8bWFzdGVyPl0gWy1mXSBbLS10YWdzIHwgLS1uby10YWdzXSBbLS0iCiAibWlycm9yPTxmZXRjaHxwdXNoPl0gPG5vbT4gPHVybD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTggYnVpbHRpbi9yZW1vdGUuYzozOAorIzogYnVpbHRpbi9yZW1vdGUuYzoxOSBidWlsdGluL3JlbW90ZS5jOjM5CiBtc2dpZCAiZ2l0IHJlbW90ZSByZW5hbWUgPG9sZD4gPG5ldz4iCiBtc2dzdHIgImdpdCByZW1vdGUgcmVuYW1lIDxhbmNpZW5uZT4gPG5vdXZlbGxlPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOSBidWlsdGluL3JlbW90ZS5jOjQzCisjOiBidWlsdGluL3JlbW90ZS5jOjIwIGJ1aWx0aW4vcmVtb3RlLmM6NDQKIG1zZ2lkICJnaXQgcmVtb3RlIHJlbW92ZSA8bmFtZT4iCiBtc2dzdHIgImdpdCByZW1vdGUgcmVtb3ZlIDxub20+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIwIGJ1aWx0aW4vcmVtb3RlLmM6NDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjEgYnVpbHRpbi9yZW1vdGUuYzo0OQogbXNnaWQgImdpdCByZW1vdGUgc2V0LWhlYWQgPG5hbWU+ICgtYSB8IC0tYXV0byB8IC1kIHwgLS1kZWxldGUgfCA8YnJhbmNoPikiCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWhlYWQgPG5vbT4gKC1hIHwgLS1hdXRvIHwgLWQgfCAtLWRlbGV0ZSB8IDxicmFuY2hlPikiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjIKIG1zZ2lkICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gc2hvdyBbLW5dIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHNob3cgWy1uXSA8bm9tPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMgorIzogYnVpbHRpbi9yZW1vdGUuYzoyMwogbXNnaWQgImdpdCByZW1vdGUgcHJ1bmUgWy1uIHwgLS1kcnktcnVuXSA8bmFtZT4iCiBtc2dzdHIgImdpdCByZW1vdGUgcHJ1bmUgWy1uIHwgLS1kcnktcnVuXSA8bm9tPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMworIzogYnVpbHRpbi9yZW1vdGUuYzoyNAogbXNnaWQgIiIKICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gdXBkYXRlIFstcCB8IC0tcHJ1bmVdIFsoPGdyb3VwPiB8IDxyZW1vdGU+KS4uLl0iCiBtc2dzdHIgIiIKICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gdXBkYXRlIFstcCB8IC0tcHJ1bmVdIFsoPGdyb3VwZT4gfCAiCiAiPGRpc3RhbnRlPikuLi5dIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI0CisjOiBidWlsdGluL3JlbW90ZS5jOjI1CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgWy0tYWRkXSA8bmFtZT4gPGJyYW5jaD4uLi4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIFstLWFkZF0gPG5vbT4gPGJyYW5jaGU+Li4uIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI1IGJ1aWx0aW4vcmVtb3RlLmM6NzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjYgYnVpbHRpbi9yZW1vdGUuYzo3NQogbXNnaWQgImdpdCByZW1vdGUgZ2V0LXVybCBbLS1wdXNoXSBbLS1hbGxdIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBnZXQtdXJsIFstLXB1c2hdIFstLWFsbF0gPG5vbT4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjYgYnVpbHRpbi9yZW1vdGUuYzo3OQorIzogYnVpbHRpbi9yZW1vdGUuYzoyNyBidWlsdGluL3JlbW90ZS5jOjgwCiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIFstLXB1c2hdIDxuYW1lPiA8bmV3dXJsPiBbPG9sZHVybD5dIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgWy0tcHVzaF0gPG5vbT4gPG5vdXZlbGxlLVVSTD4gWzxhbmNpZW5uZS1VUkw+XSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNyBidWlsdGluL3JlbW90ZS5jOjgwCisjOiBidWlsdGluL3JlbW90ZS5jOjI4IGJ1aWx0aW4vcmVtb3RlLmM6ODEKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC11cmwgLS1hZGQgPG5hbWU+IDxuZXd1cmw+IgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgLS1hZGQgPG5vbT4gPG5vdXZlbGxlLVVSTD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjggYnVpbHRpbi9yZW1vdGUuYzo4MQorIzogYnVpbHRpbi9yZW1vdGUuYzoyOSBidWlsdGluL3JlbW90ZS5jOjgyCiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDxuYW1lPiA8dXJsPiIKLW1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDxub20+IDxVUkw+IgorbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgLS1kZWxldGUgPG5vbT4gPHVybD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MzMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MzQKIG1zZ2lkICJnaXQgcmVtb3RlIGFkZCBbPG9wdGlvbnM+XSA8bmFtZT4gPHVybD4iCiBtc2dzdHIgImdpdCByZW1vdGUgYWRkIFs8b3B0aW9ucz5dIDxub20+IDxVUkw+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjUzCisjOiBidWlsdGluL3JlbW90ZS5jOjU0CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgPG5hbWU+IDxicmFuY2g+Li4uIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyA8bm9tPiA8YnJhbmNoZT4uLi4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NTUKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyAtLWFkZCA8bmFtZT4gPGJyYW5jaD4uLi4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIC0tYWRkIDxub20+IDxicmFuY2hlPi4uLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo1OQorIzogYnVpbHRpbi9yZW1vdGUuYzo2MAogbXNnaWQgImdpdCByZW1vdGUgc2hvdyBbPG9wdGlvbnM+XSA8bmFtZT4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2hvdyBbPG9wdGlvbnM+XSA8bm9tPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NAorIzogYnVpbHRpbi9yZW1vdGUuYzo2NQogbXNnaWQgImdpdCByZW1vdGUgcHJ1bmUgWzxvcHRpb25zPl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHBydW5lIFs8b3B0aW9ucz5dIDxub20+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjY5CisjOiBidWlsdGluL3JlbW90ZS5jOjcwCiBtc2dpZCAiZ2l0IHJlbW90ZSB1cGRhdGUgWzxvcHRpb25zPl0gWzxncm91cD4gfCA8cmVtb3RlPl0uLi4iCiBtc2dzdHIgImdpdCByZW1vdGUgdXBkYXRlIFs8b3B0aW9ucz5dIFs8Z3JvdXBlPiB8IDxkaXN0YW50ZT5dLi4uIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk4CisjOiBidWlsdGluL3JlbW90ZS5jOjk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVwZGF0aW5nICVzIgogbXNnc3RyICJNaXNlIMOgIGpvdXIgZGUgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMwCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMQogbXNnaWQgIiIKICItLW1pcnJvciBpcyBkYW5nZXJvdXMgYW5kIGRlcHJlY2F0ZWQ7IHBsZWFzZVxuIgogIlx0IHVzZSAtLW1pcnJvcj1mZXRjaCBvciAtLW1pcnJvcj1wdXNoIGluc3RlYWQiCkBAIC0xNTk0OCw4OCArMTkyNTksMTA0IEBACiAiLS1taXJyb3IgZXN0IGRhbmdlcmV1eCBldCBvYnNvbMOodGUgOyBtZXJjaVxuIgogIlx0IGQndXRpbGlzZXIgLS1taXJyb3I9ZmV0Y2ggb3UgLS1taXJyb3I9cHVzaCDDoCBsYSBwbGFjZSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gbWlycm9yIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAiYXJndW1lbnQgbWlyb2lyIGluY29ubnUgOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY0CiBtc2dpZCAiZmV0Y2ggdGhlIHJlbW90ZSBicmFuY2hlcyIKIG1zZ3N0ciAicmFwYXRyaWVyIGxlcyBicmFuY2hlcyBkaXN0YW50ZXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY1CisjOiBidWlsdGluL3JlbW90ZS5jOjE2NgogbXNnaWQgImltcG9ydCBhbGwgdGFncyBhbmQgYXNzb2NpYXRlZCBvYmplY3RzIHdoZW4gZmV0Y2hpbmciCiBtc2dzdHIgIiIKICJpbXBvcnRlciB0b3V0ZXMgbGVzIMOpdGlxdWV0dGVzIGV0IGxlcyBvYmpldHMgYXNzb2Npw6lzIGxvcnMgZHUgcmFwYXRyaWVtZW50IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjkKIG1zZ2lkICJvciBkbyBub3QgZmV0Y2ggYW55IHRhZyBhdCBhbGwgKC0tbm8tdGFncykiCiBtc2dzdHIgIm91IG5lIHJhcGF0cmllciBhdWN1bmUgw6l0aXF1ZXR0ZSAoLS1uby10YWdzKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcxCiBtc2dpZCAiYnJhbmNoKGVzKSB0byB0cmFjayIKIG1zZ3N0ciAiYnJhbmNoZShzKSDDoCBzdWl2cmUiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcxCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MgogbXNnaWQgIm1hc3RlciBicmFuY2giCiBtc2dzdHIgImJyYW5jaGUgbWHDrnRyZXNzZSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTc0CiBtc2dpZCAic2V0IHVwIHJlbW90ZSBhcyBhIG1pcnJvciB0byBwdXNoIHRvIG9yIGZldGNoIGZyb20iCiBtc2dzdHIgIiIKICJwYXJhbcOpdHJlciBsYSBkaXN0YW50ZSBjb21tZSBtaXJvaXIgcG91ciBwb3Vzc2VyIG91IHBvdXIgcmFwYXRyaWVyIGRlcHVpcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxODUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg2CiBtc2dpZCAic3BlY2lmeWluZyBhIG1hc3RlciBicmFuY2ggbWFrZXMgbm8gc2Vuc2Ugd2l0aCAtLW1pcnJvciIKIG1zZ3N0ciAic3DDqWNpZmllciB1bmUgYnJhbmNoZSBtYcOudHJlc3NlIG4nYSBwYXMgZGUgc2VucyBhdmVjIC0tbWlycm9yIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE4NworIzogYnVpbHRpbi9yZW1vdGUuYzoxODgKIG1zZ2lkICJzcGVjaWZ5aW5nIGJyYW5jaGVzIHRvIHRyYWNrIG1ha2VzIHNlbnNlIG9ubHkgd2l0aCBmZXRjaCBtaXJyb3JzIgogbXNnc3RyICIiCiAic3DDqWNpZmllciBsZXMgYnJhbmNoZXMgw6Agc3VpdnJlIG4nYSBkZSBzZW5zIHF1J2F2ZWMgZGVzIG1pcm9pcnMgZGUgIgogInJhcGF0cmllbWVudCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOTQgYnVpbHRpbi9yZW1vdGUuYzo2MzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk1IGJ1aWx0aW4vcmVtb3RlLmM6Njk2CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZSAlcyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgImxhIGRpc3RhbnRlICVzIGV4aXN0ZSBkw6lqw6AuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE5OCBidWlsdGluL3JlbW90ZS5jOjY0MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxOTkgYnVpbHRpbi9yZW1vdGUuYzo3MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZW1vdGUgbmFtZSIKIG1zZ3N0ciAiJyVzJyBuJ2VzdCBwYXMgdW4gbm9tIHZhbGlkZSBkZSBkaXN0YW50ZSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMzgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzZXR1cCBtYXN0ZXIgJyVzJyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBwYXJhbcOpdHJlciBsYSBtYcOudHJlc3NlICclcyciCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MzQ0CisjOiBidWlsdGluL3JlbW90ZS5jOjM1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZ2V0IGZldGNoIG1hcCBmb3IgcmVmc3BlYyAlcyIKIG1zZ3N0ciAiIgogIkltcG9zc2libGUgZCdvYnRlbmlyIHVuZSBjb3JyZXNwb25kYW5jZSBkaXN0YW50ZSBwb3VyIGxhIHNww6ljaWZpY2F0aW9uIGRlICIKICJyw6lmw6lyZW5jZSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo0NDMgYnVpbHRpbi9yZW1vdGUuYzo0NTEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NDUzIGJ1aWx0aW4vcmVtb3RlLmM6NDYxCiBtc2dpZCAiKG1hdGNoaW5nKSIKIG1zZ3N0ciAiKGNvcnJlc3BvbmQpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjQ1NQorIzogYnVpbHRpbi9yZW1vdGUuYzo0NjUKIG1zZ2lkICIoZGVsZXRlKSIKIG1zZ3N0ciAiKHN1cHByaW1lcikiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NjI5IGJ1aWx0aW4vcmVtb3RlLmM6NzY1IGJ1aWx0aW4vcmVtb3RlLmM6ODY0CisjOiBidWlsdGluL3JlbW90ZS5jOjY1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc2V0ICclcyciCittc2dzdHIgImltcG9zc2libGUgZCdhc3NpZ25lciAnJXMnIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjY1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlICVzIGNvbmZpZ3VyYXRpb24gcmVtb3RlLnB1c2hEZWZhdWx0IGluOlxuIgorIlx0JXM6JWRcbiIKKyJub3cgbmFtZXMgdGhlIG5vbi1leGlzdGVudCByZW1vdGUgJyVzJyIKK21zZ3N0ciAiIgorIkxhIGNvbmZpZ3VyYXRpb24gJXMgcmVtb3RlLnB1c2hEZWZhdWx0IGRhbnPCoDpcbiIKKyJcdCVzJWRcbiIKKyJub21tZSDDoCBwcsOpc2VudCBsZSBkaXN0YW50IGluZXhpc3RhbnQgJyVzJyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo2ODkgYnVpbHRpbi9yZW1vdGUuYzo4MzIgYnVpbHRpbi9yZW1vdGUuYzo5NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZW1vdGU6ICclcyciCiBtc2dzdHIgIlBhcyBkZSBzZXJ2ZXVyIHJlbW90ZcKgOiAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjY0NgorIzogYnVpbHRpbi9yZW1vdGUuYzo3MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbmFtZSBjb25maWcgc2VjdGlvbiAnJXMnIHRvICclcyciCiBtc2dzdHIgIkltcG9zc2libGUgZGUgcmVub21tZXIgbGEgc2VjdGlvbiBkZSBjb25maWd1cmF0aW9uICclcycgZW4gJyVzJyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NjYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJOb3QgdXBkYXRpbmcgbm9uLWRlZmF1bHQgZmV0Y2ggcmVmc3BlY1xuIgpAQCAtMTYwNDAsMTcgKzE5MzY3LDE3IEBACiAiXHQlc1xuIgogIlx0VmV1aWxsZXogbWV0dHJlIMOgIGpvdXIgbGEgY29uZmlndXJhdGlvbiBtYW51ZWxsZW1lbnQgc2kgbsOpY2Vzc2FpcmUuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjcwMgorIzogYnVpbHRpbi9yZW1vdGUuYzo3NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsZXRpbmcgJyVzJyBmYWlsZWQiCiBtc2dzdHIgIsOpY2hlYyBkZSBzdXBwcmVzc2lvbiBkZSAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjczNgorIzogYnVpbHRpbi9yZW1vdGUuYzo4MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY3JlYXRpbmcgJyVzJyBmYWlsZWQiCiBtc2dzdHIgIsOpY2hlYyBkZSBjcsOpYXRpb24gZGUgJyVzJyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo4MDIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6ODc2CiBtc2dpZCAiIgogIk5vdGU6IEEgYnJhbmNoIG91dHNpZGUgdGhlIHJlZnMvcmVtb3Rlcy8gaGllcmFyY2h5IHdhcyBub3QgcmVtb3ZlZDtcbiIKICJ0byBkZWxldGUgaXQsIHVzZToiCkBAIC0xNjA2NSwxMTggKzE5MzkyLDExOCBAQAogInN1cHByaW3DqWVzIDtcbiIKICJwb3VyIGxlcyBzdXBwcmltZXIsIHV0aWxpc2V6IDoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6ODE2CisjOiBidWlsdGluL3JlbW90ZS5jOjg5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIGNvbmZpZyBzZWN0aW9uICclcyciCiBtc2dzdHIgIkltcG9zc2libGUgZGUgc3VwcHJpbWVyIGxhIHNlY3Rpb24gZGUgY29uZmlndXJhdGlvbiAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkxNworIzogYnVpbHRpbi9yZW1vdGUuYzo5OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIG5ldyAobmV4dCBmZXRjaCB3aWxsIHN0b3JlIGluIHJlbW90ZXMvJXMpIgogbXNnc3RyICIgbm91dmVhdSAobGUgcHJvY2hhaW4gcmFwYXRyaWVtZW50IChmZXRjaCkgc3RvY2tlcmEgZGFucyByZW1vdGVzLyVzKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTk2CiBtc2dpZCAiIHRyYWNrZWQiCiBtc2dzdHIgIiBzdWl2aSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MjIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTk4CiBtc2dpZCAiIHN0YWxlICh1c2UgJ2dpdCByZW1vdGUgcHJ1bmUnIHRvIHJlbW92ZSkiCiBtc2dzdHIgIiBkw6lwYXNzw6kgKHV0aWxpc2V6ICdnaXQgcmVtb3RlIHBydW5lJyBwb3VyIHN1cHByaW1lcikiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTI0CisjOiBidWlsdGluL3JlbW90ZS5jOjEwMDAKIG1zZ2lkICIgPz8/IgogbXNnc3RyICIgPz8/IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk2NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgYnJhbmNoLiVzLm1lcmdlOyBjYW5ub3QgcmViYXNlIG9udG8gPiAxIGJyYW5jaCIKIG1zZ3N0ciAiYnJhbmNoLiVzLm1lcmdlIGludmFsaWRlIDsgbmUgcGV1dCBwYXMgcmViYXNlciBzdXIgcGx1cyBkJ3VuZSBicmFuY2hlIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk3NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDUwCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYmFzZXMgaW50ZXJhY3RpdmVseSBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAicmViYXNlIGRlIG1hbmnDqHJlIGludGVyYWN0aXZlIHN1ciBsYSBkaXN0YW50ZSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgKHdpdGggbWVyZ2VzKSBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAicmViYXNlIGRlIG1hbmnDqHJlIGludGVyYWN0aXZlIChhdmVjIGZ1c2lvbnMpIHN1ciBsYSBkaXN0YW50ZSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWJhc2VzIG9udG8gcmVtb3RlICVzIgogbXNnc3RyICJyZWJhc2Ugc3VyIGxhIGRpc3RhbnRlICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk4MworIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiBtZXJnZXMgd2l0aCByZW1vdGUgJXMiCiBtc2dzdHIgIiBmdXNpb25uZSBhdmVjIGxhIGRpc3RhbnRlICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk4NgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1lcmdlcyB3aXRoIHJlbW90ZSAlcyIKIG1zZ3N0ciAiZnVzaW9ubmUgYXZlYyBsYSBkaXN0YW50ZSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5ODkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA2NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlLSpzICAgIGFuZCB3aXRoIHJlbW90ZSAlc1xuIgogbXNnc3RyICIlLSpzICAgIGV0IGF2ZWMgbGEgZGlzdGFudGUgJXNcbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDMyCisjOiBidWlsdGluL3JlbW90ZS5jOjExMDgKIG1zZ2lkICJjcmVhdGUiCiBtc2dzdHIgImNyw6llciIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDM1CisjOiBidWlsdGluL3JlbW90ZS5jOjExMTEKIG1zZ2lkICJkZWxldGUiCiBtc2dzdHIgInN1cHByaW1lciIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDM5CisjOiBidWlsdGluL3JlbW90ZS5jOjExMTUKIG1zZ2lkICJ1cCB0byBkYXRlIgogbXNnc3RyICLDoCBqb3VyIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNDIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExOAogbXNnaWQgImZhc3QtZm9yd2FyZGFibGUiCiBtc2dzdHIgInBldXQgw6p0cmUgbWlzIMOgIGpvdXIgZW4gYXZhbmNlIHJhcGlkZSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQ1CisjOiBidWlsdGluL3JlbW90ZS5jOjExMjEKIG1zZ2lkICJsb2NhbCBvdXQgb2YgZGF0ZSIKIG1zZ3N0ciAibGUgbG9jYWwgbidlc3QgcGFzIMOgIGpvdXIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIGZvcmNlcyB0byAlLSpzICglcykiCiBtc2dzdHIgIiAgICAlLSpzIGZvcmNlIHZlcnMgJS0qcyAoJXMpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNTUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzMQogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBwdXNoZXMgdG8gJS0qcyAoJXMpIgogbXNnc3RyICIgICAgJS0qcyBwb3Vzc2UgdmVycyAlLSpzICglcykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIGZvcmNlcyB0byAlcyIKIG1zZ3N0ciAiICAgICUtKnMgZm9yY2UgdmVycyAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDYyCisjOiBidWlsdGluL3JlbW90ZS5jOjExMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICUtKnMgcHVzaGVzIHRvICVzIgogbXNnc3RyICIgICAgJS0qcyBwb3Vzc2UgdmVycyAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTMwCisjOiBidWlsdGluL3JlbW90ZS5jOjEyMDYKIG1zZ2lkICJkbyBub3QgcXVlcnkgcmVtb3RlcyIKIG1zZ3N0ciAibmUgcGFzIGludGVycm9nZXIgbGVzIGRpc3RhbnRlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU3CisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiKiByZW1vdGUgJXMiCiBtc2dzdHIgIiogZGlzdGFudGUgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgRmV0Y2ggVVJMOiAlcyIKIG1zZ3N0ciAiICBVUkwgZGUgcmFwYXRyaWVtZW50IDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1OSBidWlsdGluL3JlbW90ZS5jOjExNzUgYnVpbHRpbi9yZW1vdGUuYzoxMzE0CisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzUgYnVpbHRpbi9yZW1vdGUuYzoxMjUxIGJ1aWx0aW4vcmVtb3RlLmM6MTM5MAogbXNnaWQgIihubyBVUkwpIgogbXNnc3RyICIocGFzIGQnVVJMKSIKIApAQCAtMTYxODQsMjUgKzE5NTExLDI1IEBACiAjLiB3aXRoIHRoZSBvbmUgaW4gIiBGZXRjaCBVUkw6ICVzIgogIy4gdHJhbnNsYXRpb24uCiAjLgotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTczIGJ1aWx0aW4vcmVtb3RlLmM6MTE3NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjQ5IGJ1aWx0aW4vcmVtb3RlLmM6MTI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIgIFB1c2ggIFVSTDogJXMiCiBtc2dzdHIgIiAgVVJMIHB1c2ggOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTc3IGJ1aWx0aW4vcmVtb3RlLmM6MTE3OSBidWlsdGluL3JlbW90ZS5jOjExODEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1MyBidWlsdGluL3JlbW90ZS5jOjEyNTUgYnVpbHRpbi9yZW1vdGUuYzoxMjU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgSEVBRCBicmFuY2g6ICVzIgogbXNnc3RyICIgIEJyYW5jaGUgSEVBRCA6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1MwogbXNnaWQgIihub3QgcXVlcmllZCkiCiBtc2dzdHIgIihub24gZGVtYW5kw6kpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1NQogbXNnaWQgIih1bmtub3duKSIKIG1zZ3N0ciAiKGluY29ubnUpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExODMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiICBIRUFEIGJyYW5jaCAocmVtb3RlIEhFQUQgaXMgYW1iaWd1b3VzLCBtYXkgYmUgb25lIG9mIHRoZSBmb2xsb3dpbmcpOlxuIgpAQCAtMTYyMTAsMTcxICsxOTUzNywxNjIgQEAKICIgIEJyYW5jaGUgSEVBRCAobGEgSEVBRCBkaXN0YW50ZSBlc3QgYW1iaWd1w6ssIHBldXQgw6p0cmUgbCd1bmUgZGVzICIKICJzdWl2YW50ZXMpIDpcbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTk1CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBSZW1vdGUgYnJhbmNoOiVzIgogbXNnaWRfcGx1cmFsICIgIFJlbW90ZSBicmFuY2hlczolcyIKIG1zZ3N0clswXSAiICBCcmFuY2hlIGRpc3RhbnRlIDolcyIKIG1zZ3N0clsxXSAiICBCcmFuY2hlcyBkaXN0YW50ZXMgOiVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExOTggYnVpbHRpbi9yZW1vdGUuYzoxMjI0CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNzQgYnVpbHRpbi9yZW1vdGUuYzoxMzAwCiBtc2dpZCAiIChzdGF0dXMgbm90IHF1ZXJpZWQpIgogbXNnc3RyICIgKMOpdGF0IG5vbiBkZW1hbmTDqSkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIwNworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjgzCiBtc2dpZCAiICBMb2NhbCBicmFuY2ggY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dpZF9wbHVyYWwgIiAgTG9jYWwgYnJhbmNoZXMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dzdHJbMF0gIiAgQnJhbmNoZSBsb2NhbGUgY29uZmlndXLDqWUgcG91ciAnZ2l0IHB1bGwnIDoiCiBtc2dzdHJbMV0gIiAgQnJhbmNoZXMgbG9jYWxlcyBjb25maWd1csOpZXMgcG91ciAnZ2l0IHB1bGwnIDoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIxNQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjkxCiBtc2dpZCAiICBMb2NhbCByZWZzIHdpbGwgYmUgbWlycm9yZWQgYnkgJ2dpdCBwdXNoJyIKIG1zZ3N0ciAiICBMZXMgcsOpZsOpcmVuY2VzIGxvY2FsZXMgc2Vyb250IHJlZmzDqXTDqWVzIHBhciAnZ2l0IHB1c2gnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyMjEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5NwogIywgYy1mb3JtYXQKIG1zZ2lkICIgIExvY2FsIHJlZiBjb25maWd1cmVkIGZvciAnZ2l0IHB1c2gnJXM6IgogbXNnaWRfcGx1cmFsICIgIExvY2FsIHJlZnMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdXNoJyVzOiIKIG1zZ3N0clswXSAiICBSw6lmw6lyZW5jZSBsb2NhbGUgY29uZmlndXLDqWUgcG91ciAnZ2l0IHB1c2gnJXMgOiIKIG1zZ3N0clsxXSAiICBSw6lmw6lyZW5jZXMgbG9jYWxlcyBjb25maWd1csOpZXMgcG91ciAnZ2l0IHB1c2gnJXMgOiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjQyCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMTgKIG1zZ2lkICJzZXQgcmVmcy9yZW1vdGVzLzxuYW1lPi9IRUFEIGFjY29yZGluZyB0byByZW1vdGUiCiBtc2dzdHIgImTDqWZpbmlyIHJlZnMvcmVtb3Rlcy88bm9tPi9IRUFEIHNlbG9uIGxhIGRpc3RhbnRlIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNDQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMyMAogbXNnaWQgImRlbGV0ZSByZWZzL3JlbW90ZXMvPG5hbWU+L0hFQUQiCiBtc2dzdHIgInN1cHByaW1lciByZWZzL3JlbW90ZXMvPG5vbT4vSEVBRCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjU5CisjOiBidWlsdGluL3JlbW90ZS5jOjEzMzUKIG1zZ2lkICJDYW5ub3QgZGV0ZXJtaW5lIHJlbW90ZSBIRUFEIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIGTDqXRlcm1pbmVyIGxhIEhFQUQgZGlzdGFudGUiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI2MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzM3CiBtc2dpZCAiTXVsdGlwbGUgcmVtb3RlIEhFQUQgYnJhbmNoZXMuIFBsZWFzZSBjaG9vc2Ugb25lIGV4cGxpY2l0bHkgd2l0aDoiCiBtc2dzdHIgIiIKICJJbCB5IGEgZGUgbXVsdGlwbGVzIGJyYW5jaGVzIEhFQUQgZGlzdGFudGVzLiBWZXVpbGxleiBlbiBjaG9pc2lyIHVuZSAiCiAiZXhwbGljaXRlbWVudCBhdmVjIDoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBkZWxldGUgJXMiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgc3VwcHJpbWVyICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCByZWY6ICVzIgogbXNnc3RyICJSw6lmw6lyZW5jZSBub24gdmFsaWRlIDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI4MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzZXR1cCAlcyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBwYXJhbcOpdHJlciAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjk5CisjOiBidWlsdGluL3JlbW90ZS5jOjEzNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICVzIHdpbGwgYmVjb21lIGRhbmdsaW5nISIKIG1zZ3N0ciAiICVzIHNlIHJldHJvdXZlcmEgZW4gc3VzcGVucyAhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMDAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIgJXMgaGFzIGJlY29tZSBkYW5nbGluZyEiCiBtc2dzdHIgIiAlcyBzZSByZXRyb3V2ZSBlbiBzdXNwZW5zICEiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlBydW5pbmcgJXMiCiBtc2dzdHIgIsOJbGltaW5hdGlvbiBkZSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzExCisjOiBidWlsdGluL3JlbW90ZS5jOjEzODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVVJMOiAlcyIKIG1zZ3N0ciAiVVJMIDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMyNworIzogYnVpbHRpbi9yZW1vdGUuYzoxNDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAqIFt3b3VsZCBwcnVuZV0gJXMiCiBtc2dzdHIgIiAqIFtzZXJhaXQgw6lsaW1pbsOpXSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzMwCisjOiBidWlsdGluL3JlbW90ZS5jOjE0MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiICogW3BydW5lZF0gJXMiCiBtc2dzdHIgIiAqIFvDqWxpbWluw6ldICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzNzUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ1MQogbXNnaWQgInBydW5lIHJlbW90ZXMgYWZ0ZXIgZmV0Y2hpbmciCiBtc2dzdHIgIsOpbGltaW5lciBsZXMgZGlzdGFudHMgYXByw6hzIGxlIHJhcGF0cmllbWVudCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDM4IGJ1aWx0aW4vcmVtb3RlLmM6MTQ5MiBidWlsdGluL3JlbW90ZS5jOjE1NjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUxNCBidWlsdGluL3JlbW90ZS5jOjE1NjggYnVpbHRpbi9yZW1vdGUuYzoxNjM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVtb3RlICclcyciCiBtc2dzdHIgIlBhcyBkZSBzZXJ2ZXVyIHJlbW90ZSAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0NTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzMAogbXNnaWQgImFkZCBicmFuY2giCiBtc2dzdHIgImFqb3V0ZXIgdW5lIGJyYW5jaGUiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ2MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM3CiBtc2dpZCAibm8gcmVtb3RlIHNwZWNpZmllZCIKIG1zZ3N0ciAicGFzIGRlIHNlcnZldXIgZGlzdGFudCBzcMOpY2lmacOpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0NzgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU1NAogbXNnaWQgInF1ZXJ5IHB1c2ggVVJMcyByYXRoZXIgdGhhbiBmZXRjaCBVUkxzIgogbXNnc3RyICJpbnRlcnJvZ2VyIGxlcyBVUkxzIGRlIHBvdXNzw6llIHBsdXTDtHQgcXVlIGxlcyBVUkxzIGRlIHLDqWN1cMOpcmF0aW9uIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0ODAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU1NgogbXNnaWQgInJldHVybiBhbGwgVVJMcyIKIG1zZ3N0ciAicmV0b3VybmVyIHRvdXRlcyBsZXMgVVJMcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTA4CisjOiBidWlsdGluL3JlbW90ZS5jOjE1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gVVJMcyBjb25maWd1cmVkIGZvciByZW1vdGUgJyVzJyIKIG1zZ3N0ciAiYXVjdW5lIFVSTCBjb25maWd1csOpZSBwb3VyIGxlIGTDqXDDtHQgZGlzdGFudCAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1MzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYxMAogbXNnaWQgIm1hbmlwdWxhdGUgcHVzaCBVUkxzIgogbXNnc3RyICJtYW5pcHVsZXIgbGVzIFVSTHMgcHVzaCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM2CisjOiBidWlsdGluL3JlbW90ZS5jOjE2MTIKIG1zZ2lkICJhZGQgVVJMIgogbXNnc3RyICJham91dGVyIHVuZSBVUkwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzOAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjE0CiBtc2dpZCAiZGVsZXRlIFVSTHMiCiBtc2dzdHIgInN1cHByaW1lciBkZXMgVVJMcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTQ1CisjOiBidWlsdGluL3JlbW90ZS5jOjE2MjEKIG1zZ2lkICItLWFkZCAtLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tYWRkIC0tZGVsZXRlIG4nYSBhdWN1biBzZW5zIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1ODQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIG9sZCBVUkwgcGF0dGVybjogJXMiCiBtc2dzdHIgIk1vdGlmIGQnVVJMIGFuY2llbiBpbnZhbGlkZSA6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1OTIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIFVSTCBmb3VuZDogJXMiCiBtc2dzdHIgIlBhcyBkJ1VSTCB0cm91dsOpZSA6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1OTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY3MAogbXNnaWQgIldpbGwgbm90IGRlbGV0ZSBhbGwgbm9uLXB1c2ggVVJMcyIKIG1zZ3N0ciAiUGFzIGRlIHN1cHByZXNzaW9uIGRlIHRvdXRlcyBsZXMgVVJMcyBub24tcHVzaCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEwCi1tc2dpZCAiYmUgdmVyYm9zZTsgbXVzdCBiZSBwbGFjZWQgYmVmb3JlIGEgc3ViY29tbWFuZCIKLW1zZ3N0ciAiw6p0cmUgdmVyYmV1eCA6IGRvaXQgw6p0cmUgcGxhY8OpIGF2YW50IHVuZSBzb3VzLWNvbW1hbmRlIgotCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2NDEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVW5rbm93biBzdWJjb21tYW5kOiAlcyIKLW1zZ3N0ciAiU291cy1jb21tYW5kZSBpbmNvbm51ZSA6ICVzIgotCi0jOiBidWlsdGluL3JlcGFjay5jOjIyCisjOiBidWlsdGluL3JlcGFjay5jOjIzCiBtc2dpZCAiZ2l0IHJlcGFjayBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IHJlcGFjayBbPG9wdGlvbnM+XSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyNworIzogYnVpbHRpbi9yZXBhY2suYzoyOAogbXNnaWQgIiIKICJJbmNyZW1lbnRhbCByZXBhY2tzIGFyZSBpbmNvbXBhdGlibGUgd2l0aCBiaXRtYXAgaW5kZXhlcy4gIFVzZVxuIgogIi0tbm8td3JpdGUtYml0bWFwLWluZGV4IG9yIGRpc2FibGUgdGhlIHBhY2sud3JpdGViaXRtYXBzIGNvbmZpZ3VyYXRpb24uIgpAQCAtMTYzODMsOTYgKzE5NzAxLDEzNiBAQAogIlV0aWxpc2V6XG4iCiAiLS1uby13cml0ZS1iaXRtYXAtaW5kZXggb3UgZMOpc2FjdGl2ZXogbGUgcGFyYW3DqHRyZSBwYWNrLndyaXRlYml0bWFwcy4iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk0CisjOiBidWlsdGluL3JlcGFjay5jOjE5MQorbXNnaWQgImNvdWxkIG5vdCBzdGFydCBwYWNrLW9iamVjdHMgdG8gcmVwYWNrIHByb21pc29yIG9iamVjdHMiCittc2dzdHIgIiIKKyJuZSBwYXMgZMOpbWFycmVyIHBhY2stb2JqZWN0cyBwb3VyIHLDqS1lbXBhcXVldGVyIGxlcyBvYmplY3RzIGRlIHByb21ldHRldXIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjMwIGJ1aWx0aW4vcmVwYWNrLmM6NDE2Cittc2dpZCAicmVwYWNrOiBFeHBlY3RpbmcgZnVsbCBoZXggb2JqZWN0IElEIGxpbmVzIG9ubHkgZnJvbSBwYWNrLW9iamVjdHMuIgorbXNnc3RyICIiCisicmVwYWNrwqA6IGF0dGVudGUgZGUgbGlnbmVzIGQnSWQgZCdvYmpldHMgZW4gaGV4YSBjb21wbGV0IHNldWxlbWVudCBkZXB1aXMgIgorImxlcyBvYmplY3RzIGRlIHBhcXVldC4iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjU0Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCBwYWNrLW9iamVjdHMgdG8gcmVwYWNrIHByb21pc29yIG9iamVjdHMiCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGRlIHRlcm1pbmVyIHBhY2stb2JqZWN0cyAgcG91ciByw6ktZW1wYXF1ZXRlciBsZXMgb2JqZXRzIGRlICIKKyJwcm9tZXR0ZXVyIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI5MgogbXNnaWQgInBhY2sgZXZlcnl0aGluZyBpbiBhIHNpbmdsZSBwYWNrIgogbXNnc3RyICJlbXBhcXVldGVyIHRvdXQgZGFucyB1biBzZXVsIHBhcXVldCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyOTYKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk0CiBtc2dpZCAic2FtZSBhcyAtYSwgYW5kIHR1cm4gdW5yZWFjaGFibGUgb2JqZWN0cyBsb29zZSIKIG1zZ3N0ciAiaWRlbnRpcXVlIMOgIC1hIGV0IHRyYW5zZm9ybWVyIGxlcyBvYmpldHMgaW5hY2Nlc3NpYmxlcyBlbiBzdXNwZW5zIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5OQorIzogYnVpbHRpbi9yZXBhY2suYzoyOTcKIG1zZ2lkICJyZW1vdmUgcmVkdW5kYW50IHBhY2tzLCBhbmQgcnVuIGdpdC1wcnVuZS1wYWNrZWQiCiBtc2dzdHIgInN1cHByaW1lciBsZXMgcGFxdWV0cyByZWRvbmRhbnRzIGV0IGxhbmNlciBnaXQtcHJ1bmUtcGFja2VkIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMwMQorIzogYnVpbHRpbi9yZXBhY2suYzoyOTkKIG1zZ2lkICJwYXNzIC0tbm8tcmV1c2UtZGVsdGEgdG8gZ2l0LXBhY2stb2JqZWN0cyIKIG1zZ3N0ciAicGFzc2VyIC0tbm8tcmV1c2UtZGVsdGEgw6AgZ2l0LXBhY2stb2JqZWN0cyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDMKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCiBtc2dpZCAicGFzcyAtLW5vLXJldXNlLW9iamVjdCB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICJwYXNzZXIgLS1uby1yZXVzZS1vYmplY3Qgw6AgZ2l0LXBhY2stb2JqZWN0cyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDUKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAzCiBtc2dpZCAiZG8gbm90IHJ1biBnaXQtdXBkYXRlLXNlcnZlci1pbmZvIgogbXNnc3RyICJuZSBwYXMgbGFuY2VyIGdpdCB1cGRhdGUtc2VydmVyLWluZm8iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA4CisjOiBidWlsdGluL3JlcGFjay5jOjMwNgogbXNnaWQgInBhc3MgLS1sb2NhbCB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICJwYXNzZXIgLS1sb2NhbCDDoCBnaXQtcGFjay1vYmplY3RzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxMAorIzogYnVpbHRpbi9yZXBhY2suYzozMDgKIG1zZ2lkICJ3cml0ZSBiaXRtYXAgaW5kZXgiCiBtc2dzdHIgIsOpY3JpcmUgdW4gaW5kZXggZW4gYml0bWFwIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxMgorIzogYnVpbHRpbi9yZXBhY2suYzozMTAKIG1zZ2lkICJwYXNzIC0tZGVsdGEtaXNsYW5kcyB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICJwYXNzZXIgLS1kZWx0YS1pc2xhbmRzIMOgIGdpdC1wYWNrLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEzCisjOiBidWlsdGluL3JlcGFjay5jOjMxMQogbXNnaWQgImFwcHJveGlkYXRlIgogbXNnc3RyICJkYXRlIGFwcHJveGltYXRpdmUiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE0CisjOiBidWlsdGluL3JlcGFjay5jOjMxMgogbXNnaWQgIndpdGggLUEsIGRvIG5vdCBsb29zZW4gb2JqZWN0cyBvbGRlciB0aGFuIHRoaXMiCiBtc2dzdHIgImF2ZWMgLUEsIG5lIHBhcyBzdXNwZW5kcmUgbGVzIG9iamV0cyBwbHVzIHZpZXV4IHF1ZSBjZWx1aS1jaSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTYKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE0CiBtc2dpZCAid2l0aCAtYSwgcmVwYWNrIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgImF2ZWMgLWEsIHJlcGFxdcOpdGlzZXIgbGVzIG9iamV0cyBpbmFjY2Vzc2libGVzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxOAorIzogYnVpbHRpbi9yZXBhY2suYzozMTYKIG1zZ2lkICJzaXplIG9mIHRoZSB3aW5kb3cgdXNlZCBmb3IgZGVsdGEgY29tcHJlc3Npb24iCiBtc2dzdHIgInRhaWxsZSBkZSBsYSBmZW7DqnRyZSB1dGlsaXPDqWUgcG91ciBsYSBjb21wcmVzc2lvbiBkZXMgZGVsdGFzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxOSBidWlsdGluL3JlcGFjay5jOjMyNQorIzogYnVpbHRpbi9yZXBhY2suYzozMTcgYnVpbHRpbi9yZXBhY2suYzozMjMKIG1zZ2lkICJieXRlcyIKIG1zZ3N0ciAib2N0ZXRzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyMAorIzogYnVpbHRpbi9yZXBhY2suYzozMTgKIG1zZ2lkICJzYW1lIGFzIHRoZSBhYm92ZSwgYnV0IGxpbWl0IG1lbW9yeSBzaXplIGluc3RlYWQgb2YgZW50cmllcyBjb3VudCIKIG1zZ3N0ciAiIgogImlkZW0gY2ktZGVzc3VzLCBtYWlzIGxpbWl0ZXIgbGEgdGFpbGxlIG3DqW1vaXJlIGF1IGxpZXUgZHUgbm9tYnJlIGQnw6lsw6ltZW50cyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMjIKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIwCiBtc2dpZCAibGltaXRzIHRoZSBtYXhpbXVtIGRlbHRhIGRlcHRoIgogbXNnc3RyICJsaW1pdGUgbGEgcHJvZm9uZGV1ciBtYXhpbWFsZSBkZXMgZGVsdGFzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyNAorIzogYnVpbHRpbi9yZXBhY2suYzozMjIKIG1zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gbnVtYmVyIG9mIHRocmVhZHMiCiBtc2dzdHIgImxpbWl0ZSBsZSBub21icmUgbWF4aW1hbCBkZSBmaWxzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyNgorIzogYnVpbHRpbi9yZXBhY2suYzozMjQKIG1zZ2lkICJtYXhpbXVtIHNpemUgb2YgZWFjaCBwYWNrZmlsZSIKIG1zZ3N0ciAidGFpbGxlIG1heGltdW0gZGUgY2hhcXVlIGZpY2hpZXIgcGFxdWV0IgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyOAorIzogYnVpbHRpbi9yZXBhY2suYzozMjYKIG1zZ2lkICJyZXBhY2sgb2JqZWN0cyBpbiBwYWNrcyBtYXJrZWQgd2l0aCAua2VlcCIKIG1zZ3N0ciAicsOpZW1wYXF1ZXRlciBsZXMgb2JqZXRzIGRhbnMgZGVzIHBhcXVldHMgbWFycXXDqXMgYXZlYyAua2VlcCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMzAKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI4CiBtc2dpZCAiZG8gbm90IHJlcGFjayB0aGlzIHBhY2siCiBtc2dzdHIgIm5lIHBhcyByZW1wYXF1ZXRlciBjZSBwYXF1ZXQiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQwCisjOiBidWlsdGluL3JlcGFjay5jOjMzOAogbXNnaWQgImNhbm5vdCBkZWxldGUgcGFja3MgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCiBtc2dzdHIgImltcG9zc2libGUgZGUgc3VwcHJpbWVyIGxlcyBwYXF1ZXRzIGRhbnMgdW4gZMOpcMO0dCBkJ29iamV0cyBwcsOpY2lldXgiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQ0CisjOiBidWlsdGluL3JlcGFjay5jOjM0MgogbXNnaWQgIi0ta2VlcC11bnJlYWNoYWJsZSBhbmQgLUEgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1rZWVwLXVucmVhY2hhYmxlIGV0IC1BIHNvbnQgaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzo1MjcKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NDI1Cittc2dpZCAiTm90aGluZyBuZXcgdG8gcGFjay4iCittc2dzdHIgIlJpZW4gZGUgbmV1ZiDDoCBlbXBhcXVldGVyLiIKKworIzogYnVpbHRpbi9yZXBhY2suYzo0ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldBUk5JTkc6IFNvbWUgcGFja3MgaW4gdXNlIGhhdmUgYmVlbiByZW5hbWVkIGJ5XG4iCisiV0FSTklORzogcHJlZml4aW5nIG9sZC0gdG8gdGhlaXIgbmFtZSwgaW4gb3JkZXIgdG9cbiIKKyJXQVJOSU5HOiByZXBsYWNlIHRoZW0gd2l0aCB0aGUgbmV3IHZlcnNpb24gb2YgdGhlXG4iCisiV0FSTklORzogZmlsZS4gIEJ1dCB0aGUgb3BlcmF0aW9uIGZhaWxlZCwgYW5kIHRoZVxuIgorIldBUk5JTkc6IGF0dGVtcHQgdG8gcmVuYW1lIHRoZW0gYmFjayB0byB0aGVpclxuIgorIldBUk5JTkc6IG9yaWdpbmFsIG5hbWVzIGFsc28gZmFpbGVkLlxuIgorIldBUk5JTkc6IFBsZWFzZSByZW5hbWUgdGhlbSBpbiAlcyBtYW51YWxseTpcbiIKK21zZ3N0ciAiIgorIkFMRVJURcKgOiBjZXJ0YWlucyBwYXF1ZXRzIHV0aWxpc8OpcyBvbnQgw6l0w6kgcmVub21tw6lzXG4iCisiQUxFUlRFwqA6IGVuIGxlcyBwcsOpZml4YW50IHBhciBvbGQtLCBkZSBtYW5pw6hyZSDDoFxuIgorIkFMRVJURcKgOiBsZXMgcmVtcGxhY2VyIHBhciB1bmUgbm91dmVsbGUgdmVyc2lvbiBkZVxuIgorIkFMRVJURcKgOiBmaWNoaWVyLiBNYWlzIGwnb3DDqXJhdGlvbiBhIMOpY2hvdcOpIGV0IGxhXG4iCisiQUxFUlRFwqA6IHRlbnRhdGl2ZSBkZSByZW5vbW1hZ2UgZW4gc2VucyBpbnZlcnNlIGFcbiIKKyJBTEVSVEXCoDogYXVzc2kgw6ljaG91w6kuXG4iCisiQUxFUlRFwqA6IFZldWlsbGV6IGxlcyByZW5vbW1lciBtYW51ZWxsZW1lbnQgZGFucyAlcyA6XG4iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZW1vdmUgJyVzJyIKIG1zZ3N0ciAiw6ljaGVjIGRlIGxhIHN1cHByZXNzaW9uIGRlICclcyciCkBAIC0xNjUwMSwxMiArMTk4NTksNyBAQAogbXNnaWQgImdpdCByZXBsYWNlIFstLWZvcm1hdD08Zm9ybWF0Pl0gWy1sIFs8cGF0dGVybj5dXSIKIG1zZ3N0ciAiZ2l0IHJlcGxhY2UgWy0tZm9ybWF0PTxmb3JtYXQ+XSBbLWwgWzxtb3RpZj5dXSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTggYnVpbHRpbi9yZXBsYWNlLmM6MjAzIGJ1aWx0aW4vcmVwbGFjZS5jOjIwNgotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmIgotbXNnc3RyICLDqWNoZWMgw6AgcsOpc291ZHJlICclcycgY29tbWUgdW5lIHLDqWbDqXJlbmNlIHZhbGlkZSIKLQotIzogYnVpbHRpbi9yZXBsYWNlLmM6ODYKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJpbnZhbGlkIHJlcGxhY2UgZm9ybWF0ICclcydcbiIKQEAgLTE2NTE1LDI3ICsxOTg2OCwyNyBAQAogImZvcm1hdCBkZSByZW1wbGFjZW1lbnQgaW52YWxpZGUgJyVzJ1xuIgogImxlcyBmb3JtYXRzIHZhbGlkZXMgc29udCAnc2hvcnQnLCAnbWVkaXVtJyBldCAnbG9uZyciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjEyMQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTI1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2UgcmVmICclcycgbm90IGZvdW5kIgogbXNnc3RyICJyw6lmIGRlIHJlbXBsYWNlbWVudCAnJXMnIG5vbiB0cm91dsOpZSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTM3CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCByZXBsYWNlIHJlZiAnJXMnIgogbXNnc3RyICJSw6lmw6lyZW5jZSBkZSByZW1wbGFjZW1lbnQgJyVzJyBzdXBwcmltw6llIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoxNDkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE1MwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHJlZiBuYW1lIgogbXNnc3RyICInJXMnIG4nZXN0IHBhcyB1biBub20gdmFsaWRlIGRlIHLDqWbDqXJlbmNlIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoxNTQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBsYWNlIHJlZiAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICJsYSByw6lmw6lyZW5jZSBkZSByZW1wbGFjZW1lbnQgJyVzJyBleGlzdGUgZMOpasOgIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoxNzQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiT2JqZWN0cyBtdXN0IGJlIG9mIHRoZSBzYW1lIHR5cGUuXG4iCkBAIC0xNjU0Niw3NiArMTk4OTksODEgQEAKICInJXMnIHBvaW50ZSBzdXIgdW4gb2JqZXQgcmVtcGxhY8OpIGRlIHR5cGUgJyVzJyB0YW5kaXMgcXVlXG4iCiAiJyVzJyBwb2ludGUgc3VyIHVuIG9iamV0IHJlbXBsYcOnYW50IGRlIHR5cGUgJyVzJy4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjIyNQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MjI5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciB3cml0aW5nIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyICVzIGVuIMOpY3JpdHVyZSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjM4CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNDIKIG1zZ2lkICJjYXQtZmlsZSByZXBvcnRlZCBmYWlsdXJlIgogbXNnc3RyICJjYXQtZmlsZSBhIHJldG91cm7DqSB1biDDqWNoZWMiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI1NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MjU4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciByZWFkaW5nIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyICVzIGVuIMOpY3JpdHVyZSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjY4CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNzIKIG1zZ2lkICJ1bmFibGUgdG8gc3Bhd24gbWt0cmVlIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbCdhcmJyZSAoJXMpIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyNzIKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3NgogbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gbWt0cmVlIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgZGVwdWkgbWt0cmVlIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyODEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4NQogbXNnaWQgIm1rdHJlZSByZXBvcnRlZCBmYWlsdXJlIgogbXNnc3RyICJta3RyZWUgYSDDqWNob3XDqSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg1CisjOiBidWlsdGluL3JlcGxhY2UuYzoyODkKIG1zZ2lkICJta3RyZWUgZGlkIG5vdCByZXR1cm4gYW4gb2JqZWN0IG5hbWUiCiBtc2dzdHIgIm1rdHJlZSBuJ2EgcGFzIHJldG91cm7DqSBkZSBub20gZCdvYmpldCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjk0CisjOiBidWlsdGluL3JlcGxhY2UuYzoyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZzdGF0ICVzIgogbXNnc3RyICJmc3RhdCBkZSAlcyBpbXBvc3NpYmxlIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyOTkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMwMwogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBvYmplY3QgdG8gZGF0YWJhc2UiCiBtc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlIGwnb2JqZXQgZGFucyBsYSBiYXNlIGRlIGRvbm7DqWVzIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozMTggYnVpbHRpbi9yZXBsYWNlLmM6MzcxIGJ1aWx0aW4vcmVwbGFjZS5jOjQxNQotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDQ1CisjOiBidWlsdGluL3JlcGxhY2UuYzozMjIgYnVpbHRpbi9yZXBsYWNlLmM6Mzc4IGJ1aWx0aW4vcmVwbGFjZS5jOjQyNAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnIgogbXNnc3RyICJub20gZCdvYmpldCBpbnZhbGlkZSA6ICclcyciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyMgorIzogYnVpbHRpbi9yZXBsYWNlLmM6MzI2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBnZXQgb2JqZWN0IHR5cGUgZm9yICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnb2J0ZW5pciBsZSB0eXBlIGRlIGwnb2JqZXQgcG91ciAlcyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzM4CisjOiBidWlsdGluL3JlcGxhY2UuYzozNDIKIG1zZ2lkICJlZGl0aW5nIG9iamVjdCBmaWxlIGZhaWxlZCIKIG1zZ3N0ciAiw6ljaGVjIGRlIGwnw6lkaXRpb24gZHUgZmljaGllciBkJ29iamV0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozNDcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgb2JqZWN0IGlzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lOiAnJXMnIgogbXNnc3RyICJsZSBub3V2ZWwgb2JqZXQgZXN0IGlkZW50aXF1ZSDDoCBsJ2FuY2llbsKgOiAnJXMnIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MDcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjM4NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJXMgYXMgYSBjb21taXQiCittc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciAlcyBjb21tZSBjb21taXQiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbWVyZ2V0YWcgaW4gY29tbWl0ICclcyciCiBtc2dzdHIgIm1hdXZhaXNlIMOpdGlxdWV0dGUgZGUgZnVzaW9uIGRhbnMgbGUgY29tbWl0ICclcyciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQwOQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBtZXJnZXRhZyBpbiBjb21taXQgJyVzJyIKIG1zZ3N0ciAiw6l0aXF1ZXR0ZSBkZSBmdXNpb24gbWFsZm9ybcOpZSBkYW5zIGxlIGNvbW1pdCAnJXMnIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MjEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAib3JpZ2luYWwgY29tbWl0ICclcycgY29udGFpbnMgbWVyZ2V0YWcgJyVzJyB0aGF0IGlzIGRpc2NhcmRlZDsgdXNlIC0tZWRpdCAiCkBAIC0xNjYyNCwzMSArMTk5ODIsMzEgQEAKICJsZSBjb21taXQgb3JpZ2luYWwgJyVzJyBjb250aWVudCBsJ8OpdGlxdWV0dGUgZGUgZnVzaW9uICclcycgcXVpIGEgZGlzcGFydSA7ICIKICJ1dGlsaXNleiAtLWVkaXQgYXUgbGlldSBkZSAtLWdyYWZ0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NjAKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgb3JpZ2luYWwgY29tbWl0ICclcycgaGFzIGEgZ3BnIHNpZ25hdHVyZSIKIG1zZ3N0ciAibGUgY29tbWl0IG9yaWdpbmFsICclcycgY29udGllbnQgdW5lIHNpZ25hdHVyZSBHUEciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ2MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDcwCiBtc2dpZCAidGhlIHNpZ25hdHVyZSB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIHJlcGxhY2VtZW50IGNvbW1pdCEiCiBtc2dzdHIgImxhIHNpZ25hdHVyZSBzZXJhIMOpbGltaW7DqWUgZGFucyBsYSB2YWxpZGF0aW9uIGRlIHJlbXBsYWNlbWVudCAhIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NzEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgcmVwbGFjZW1lbnQgY29tbWl0IGZvcjogJyVzJyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkJ8OpY3JpcmUgbGUgY29tbWl0IGRlIHJlbXBsYWNlbWVudCBwb3VyICclcyciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDg4CiAjLCBjLWZvcm1hdAogbXNnaWQgImdyYWZ0IGZvciAnJXMnIHVubmVjZXNzYXJ5IgogbXNnc3RyICJncmFmdCBwb3VyICclcycgbm9uIG7DqWNlc3NhaXJlIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0ODIKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgY29tbWl0IGlzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lOiAnJXMnIgogbXNnc3RyICJsZSBub3V2ZWF1IGNvbW1pdCBlc3QgaWRlbnRpcXVlIMOgIGwnYW5jaWVuwqA6ICclcyciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUxNQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjb3VsZCBub3QgY29udmVydCB0aGUgZm9sbG93aW5nIGdyYWZ0KHMpOlxuIgpAQCAtMTY2NTcsNzEgKzIwMDE1LDcxIEBACiAiaW1wb3NzaWJsZSBkZSBjb252ZXJ0aXIgbGEobGVzKSBncmVmZmUocykgc3VpdmFudGUocykgOlxuIgogIiVzIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1MzYKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0OAogbXNnaWQgImxpc3QgcmVwbGFjZSByZWZzIgogbXNnc3RyICJhZmZpY2hlciBsZXMgcsOpZsOpcmVuY2VzIGRlIHJlbXBsYWNlbWVudCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM3CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NDkKIG1zZ2lkICJkZWxldGUgcmVwbGFjZSByZWZzIgogbXNnc3RyICJzdXBwcmltZXIgbGVzIHLDqWbDqXJlbmNlcyBkZSByZW1wbGFjZW1lbnQiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUwCiBtc2dpZCAiZWRpdCBleGlzdGluZyBvYmplY3QiCiBtc2dzdHIgIsOpZGl0ZXIgbCdvYmpldCBleGlzdGFudCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM5CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTEKIG1zZ2lkICJjaGFuZ2UgYSBjb21taXQncyBwYXJlbnRzIgogbXNnc3RyICJNb2RpZmllciBsZXMgcGFyZW50cyBkJ3VuIGNvbW1pdCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQwCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTIKIG1zZ2lkICJjb252ZXJ0IGV4aXN0aW5nIGdyYWZ0IGZpbGUiCiBtc2dzdHIgImNvbnZlcnRpciBsZSBmaWNoaWVyIGRlIGdyZWZmZSBleGlzdGFudCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQxCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTMKIG1zZ2lkICJyZXBsYWNlIHRoZSByZWYgaWYgaXQgZXhpc3RzIgogbXNnc3RyICJyZW1wbGFjZXIgbGEgcsOpZsOpcmVuY2Ugc2kgZWxsZSBleGlzdGUiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0MworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU1CiBtc2dpZCAiZG8gbm90IHByZXR0eS1wcmludCBjb250ZW50cyBmb3IgLS1lZGl0IgogbXNnc3RyICJhZmZpY2hlciBzYW5zIG1pc2UgZW4gZm9ybWUgcG91ciAtLWVkaXQiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU2CiBtc2dpZCAidXNlIHRoaXMgZm9ybWF0IgogbXNnc3RyICJ1dGlsaXNlciBjZSBmb3JtYXQiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY5CiBtc2dpZCAiLS1mb3JtYXQgY2Fubm90IGJlIHVzZWQgd2hlbiBub3QgbGlzdGluZyIKIG1zZ3N0ciAiLS1mb3JtYXQgbmUgcGV1dCBwYXMgw6p0cmUgdXRpbGlzw6kgc2FucyBsaXN0ZXIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU2NQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTc3CiBtc2dpZCAiLWYgb25seSBtYWtlcyBzZW5zZSB3aGVuIHdyaXRpbmcgYSByZXBsYWNlbWVudCIKIG1zZ3N0ciAiLWYgbidhIGRlIHNlbnMgcXUnZW4gw6ljcml2YW50IHVuIHJlbXBsYWNlbWVudCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY5CisjOiBidWlsdGluL3JlcGxhY2UuYzo1ODEKIG1zZ2lkICItLXJhdyBvbmx5IG1ha2VzIHNlbnNlIHdpdGggLS1lZGl0IgogbXNnc3RyICItLXJhdyBuJ2EgZGUgc2VucyBxdSdhdmVjIGwnb3B0aW9uIC0tZWRpdCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTc1CisjOiBidWlsdGluL3JlcGxhY2UuYzo1ODcKIG1zZ2lkICItZCBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQiCiBtc2dzdHIgIi1kIHJlcXVpZXJ0IGF1IG1vaW5zIHVuIGFyZ3VtZW50IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1ODEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5MwogbXNnaWQgImJhZCBudW1iZXIgb2YgYXJndW1lbnRzIgogbXNnc3RyICJtYXV2YWlzIG5vbWJyZSBkJ2FyZ3VtZW50cyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTg3CisjOiBidWlsdGluL3JlcGxhY2UuYzo1OTkKIG1zZ2lkICItZSBuZWVkcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKIG1zZ3N0ciAiLWUgcmVxdWllcnQgdW4gc2V1bCBhcmd1bWVudCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTkzCisjOiBidWlsdGluL3JlcGxhY2UuYzo2MDUKIG1zZ2lkICItZyBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQiCiBtc2dzdHIgIi1nIHJlcXVpZXJ0IGF1IG1vaW5zIHVuIGFyZ3VtZW50IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1OTkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYxMQogbXNnaWQgIi0tY29udmVydC1ncmFmdC1maWxlIHRha2VzIG5vIGFyZ3VtZW50IgogbXNnc3RyICItLWNvbnZlcnQtZ3JhZnQtZmlsZSBuZSBzdXBwb3J0ZSBhdWN1biBhcmd1bWVudCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA1CisjOiBidWlsdGluL3JlcGxhY2UuYzo2MTcKIG1zZ2lkICJvbmx5IG9uZSBwYXR0ZXJuIGNhbiBiZSBnaXZlbiB3aXRoIC1sIgogbXNnc3RyICItbCBuJ2FjY2VwdGUgcXUndW4gbW90aWZzIgogCkBAIC0xNjczOCwxMjggKzIwMDk2LDE0MSBAQAogbXNnaWQgIidnaXQgcmVyZXJlIGZvcmdldCcgd2l0aG91dCBwYXRocyBpcyBkZXByZWNhdGVkIgogbXNnc3RyICInZ2l0IHJlcmVyZSBmb3JnZXQnIHNhbnMgY2hlbWluIGVzdCBvYnNvbMOodGUiCiAKLSM6IGJ1aWx0aW4vcmVyZXJlLmM6MTExCisjOiBidWlsdGluL3JlcmVyZS5jOjExMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ2VuZXJhdGUgZGlmZiBmb3IgJyVzJyIKIG1zZ3N0ciAiw6ljaGVjIGRlIGxhIGfDqW7DqXJhdGlvbiBkZSBkaWZmIHBvdXIgJyVzJyIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMxCisjOiBidWlsdGluL3Jlc2V0LmM6MzIKIG1zZ2lkICIiCiAiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPGNvbW1pdD5dIgogbXNnc3RyICIiCiAiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPGNvbW1pdD5dIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzIKLW1zZ2lkICJnaXQgcmVzZXQgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHM+Li4uIgotbXNnc3RyICJnaXQgcmVzZXQgWy1xXSBbPGFyYnJlIG91IGFwcGFyZW50w6k+XSBbLS1dIDxjaGVtaW5zPi4uLiIKLQogIzogYnVpbHRpbi9yZXNldC5jOjMzCi1tc2dpZCAiZ2l0IHJlc2V0IC0tcGF0Y2ggWzx0cmVlLWlzaD5dIFstLV0gWzxwYXRocz4uLi5dIgotbXNnc3RyICJnaXQgcmVzZXQgLS1wYXRjaCBbPGFyYnJlIG91IGFwcGFyZW50w6k+XSBbLS1dIFs8Y2hlbWlucz4uLi5dIgorbXNnaWQgImdpdCByZXNldCBbLXFdIFs8dHJlZS1pc2g+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCittc2dzdHIgIiIKKyJnaXQgcmVzZXQgWy1xXSBbPGFyYnJlIG91IGFwcGFyZW50w6k+XSBbLS1dIDxzcMOpY2lmaWNhdGV1ci1kZS1jaGVtaW4+Li4uIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNAorbXNnaWQgIiIKKyJnaXQgcmVzZXQgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGUgWy0tcGF0aHNwZWMtZmlsZS1udWxdXSBbPHRyZWUtaXNoPl0iCittc2dzdHIgIiIKKyJnaXQgcmVzZXQgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGUgWy0tcGF0aHNwZWMtZmlsZS1udWxdXSBbPGFyYnJlLWVzcXVlPl0iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNQorbXNnaWQgImdpdCByZXNldCAtLXBhdGNoIFs8dHJlZS1pc2g+XSBbLS1dIFs8cGF0aHNwZWM+Li4uXSIKK21zZ3N0ciAiZ2l0IHJlc2V0IC0tcGF0Y2ggWzxhcmJyZS1lc3F1ZT5dIFstLV0gWzxzcMOpYy4tZGUtY2hlbWluPi4uLl0iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgIm1peGVkIgogbXNnc3RyICJtaXhlZCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJzb2Z0IgogbXNnc3RyICJzb2Z0IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgImhhcmQiCiBtc2dzdHIgImhhcmQiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAibWVyZ2UiCiBtc2dzdHIgIm1lcmdlIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgImtlZXAiCiBtc2dzdHIgImtlZXAiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo4MAorIzogYnVpbHRpbi9yZXNldC5jOjgyCiBtc2dpZCAiWW91IGRvIG5vdCBoYXZlIGEgdmFsaWQgSEVBRC4iCiBtc2dzdHIgIlZvdXMgbidhdmV6IHBhcyB1bmUgSEVBRCB2YWxpZGUuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6ODIKKyM6IGJ1aWx0aW4vcmVzZXQuYzo4NAogbXNnaWQgIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgSEVBRC4iCiBtc2dzdHIgIkltcG9zc2libGUgZGUgdHJvdXZlciBsJ2FyYnJlIHBvdXIgSEVBRC4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo4OAorIzogYnVpbHRpbi9yZXNldC5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgJXMuIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgbCdhcmJyZSBwb3VyICVzLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjE5MgorIzogYnVpbHRpbi9yZXNldC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKK21zZ3N0ciAiSEVBRCBlc3QgbWFpbnRlbmFudCDDoCAlcyIKKworIzogYnVpbHRpbi9yZXNldC5jOjE5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZG8gYSAlcyByZXNldCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UuIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIGZhaXJlIHVuIFwicmVzZXQgJXNcIiBhdSBtaWxpZXUgZCd1bmUgZnVzaW9uLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI5MgorIzogYnVpbHRpbi9yZXNldC5jOjI5NCBidWlsdGluL3N0YXNoLmM6NTIwIGJ1aWx0aW4vc3Rhc2guYzo1OTUKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2MTkKIG1zZ2lkICJiZSBxdWlldCwgb25seSByZXBvcnQgZXJyb3JzIgogbXNnc3RyICLDqnRyZSBzaWxlbmNpZXV4LCBhZmZpY2hlciBzZXVsZW1lbnQgbGVzIGVycmV1cnMiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTYKIG1zZ2lkICJyZXNldCBIRUFEIGFuZCBpbmRleCIKIG1zZ3N0ciAicsOpaW5pdGlhbGlzZXIgSEVBRCBldCBsJ2luZGV4IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mjk1CisjOiBidWlsdGluL3Jlc2V0LmM6Mjk3CiBtc2dpZCAicmVzZXQgb25seSBIRUFEIgogbXNnc3RyICJyw6lpbml0aWFsaXNlciBzZXVsZW1lbnQgSEVBRCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI5NyBidWlsdGluL3Jlc2V0LmM6Mjk5CisjOiBidWlsdGluL3Jlc2V0LmM6Mjk5IGJ1aWx0aW4vcmVzZXQuYzozMDEKIG1zZ2lkICJyZXNldCBIRUFELCBpbmRleCBhbmQgd29ya2luZyB0cmVlIgogbXNnc3RyICJyw6lpbml0aWFsaXNlciBIRUFELCBsJ2luZGV4IGV0IGxhIGNvcGllIGRlIHRyYXZhaWwiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMDEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMDMKIG1zZ2lkICJyZXNldCBIRUFEIGJ1dCBrZWVwIGxvY2FsIGNoYW5nZXMiCiBtc2dzdHIgInLDqWluaXRpYWxpc2VyIEhFQUQgbWFpcyBnYXJkZXIgbGVzIGNoYW5nZW1lbnRzIGxvY2F1eCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMwNworIzogYnVpbHRpbi9yZXNldC5jOjMwOQogbXNnaWQgInJlY29yZCBvbmx5IHRoZSBmYWN0IHRoYXQgcmVtb3ZlZCBwYXRocyB3aWxsIGJlIGFkZGVkIGxhdGVyIgogbXNnc3RyICIiCiAiZW5yZWdpc3RyZXIgc2V1bGVtZW50IGxlIGZhaXQgcXVlIGxlcyBjaGVtaW5zIGVmZmFjw6lzIHNlcm9udCBham91dMOpcyBwbHVzICIKICJ0YXJkIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzI1CisjOiBidWlsdGluL3Jlc2V0LmM6MzQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZXZpc2lvbi4iCiBtc2dzdHIgIsOJY2hlYyBkZSByw6lzb2x1dGlvbiBkZSAnJXMnIGNvbW1lIHVuZSByw6l2aXNpb24gdmFsaWRlLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMzMworIzogYnVpbHRpbi9yZXNldC5jOjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgdHJlZS4iCiBtc2dzdHIgIsOJY2hlYyBkZSByw6lzb2x1dGlvbiBkZSAnJXMnIGNvbW1lIHVuIGFyYnJlIHZhbGlkZS4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNDIKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNjAKIG1zZ2lkICItLXBhdGNoIGlzIGluY29tcGF0aWJsZSB3aXRoIC0te2hhcmQsbWl4ZWQsc29mdH0iCiBtc2dzdHIgIi0tcGF0Y2ggZXN0IGluY29tcGF0aWJsZSBhdmVjIC0te2hhcmQsbWl4ZWQsc29mdH0iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNTEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNzAKIG1zZ2lkICItLW1peGVkIHdpdGggcGF0aHMgaXMgZGVwcmVjYXRlZDsgdXNlICdnaXQgcmVzZXQgLS0gPHBhdGhzPicgaW5zdGVhZC4iCiBtc2dzdHIgIiIKICItLW1peGVkIGF2ZWMgZGVzIGNoZW1pbnMgZXN0IG9ic29sw6h0ZSA7IHV0aWxpc2V6ICdnaXQgcmVzZXQgLS0gPHBhdGhzPicgw6AgbGEgIgogInBsYWNlLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM1MworIzogYnVpbHRpbi9yZXNldC5jOjM3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZG8gJXMgcmVzZXQgd2l0aCBwYXRocy4iCiBtc2dzdHIgIkltcG9zc2libGUgZGUgZmFpcmUgdW4gXCIlcyByZXNldFwiIGF2ZWMgZGVzIGNoZW1pbnMuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzYzCisjOiBidWlsdGluL3Jlc2V0LmM6Mzg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHJlc2V0IGlzIG5vdCBhbGxvd2VkIGluIGEgYmFyZSByZXBvc2l0b3J5IgogbXNnc3RyICJMZSBcIiVzIHJlc2V0XCIgbidlc3QgcGFzIHBlcm1pcyBkYW5zIHVuIGTDqXDDtHQgbnUiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNjcKKyM6IGJ1aWx0aW4vcmVzZXQuYzozOTEKIG1zZ2lkICItTiBjYW4gb25seSBiZSB1c2VkIHdpdGggLS1taXhlZCIKIG1zZ3N0ciAiLU4gbmUgcGV1dCDDqnRyZSB1dGlsaXPDqSBxdSdhdmVjIC0tbWl4ZWQiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozODcKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MTIKIG1zZ2lkICJVbnN0YWdlZCBjaGFuZ2VzIGFmdGVyIHJlc2V0OiIKIG1zZ3N0ciAiTW9kaWZpY2F0aW9ucyBub24gaW5kZXjDqWVzIGFwcsOocyByZXNldCA6IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkwCisjOiBidWlsdGluL3Jlc2V0LmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTE2ODY4LDU5ICsyMDIzOSw1NCBAQAogInRvIG1ha2UgdGhpcyB0aGUgZGVmYXVsdC5cbiIKIG1zZ3N0ciAiIgogIlxuIgotIkxlcyBtb2RpZmljYXRpb25zIG5vbi1pbmRleMOpZXMgb24gcHJpcyAlLjJmIHNlY29uZGVzIMOgIMOpbnVtZXJlciBhcHLDqHMgIgorIkxlcyBtb2RpZmljYXRpb25zIG5vbi1pbmRleMOpZXMgb250IHByaXMgJS4yZiBzZWNvbmRlcyDDoCDDqW51bcOpcmVyIGFwcsOocyAiCiAicmVzZXQuXG4iCiAiVm91cyBwb3V2ZXogdXRpbGlzZXIgJy0tcXVpZXQnIHBvdXIgw6l2aXRlciBjZSBtZXNzYWdlLiBSw6lnbGV6IGxlIHBhcmFtw6h0cmUgIgogImRlXG4iCiAiY29uZmlnIHJlc2V0LnF1aWV0IMOgIHRydWUgcG91ciBhdm9pciBjZSBjb21wb3J0ZW1lbnQgZW4gcGVybWFuZW5jZS5cbiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjQwMAorIzogYnVpbHRpbi9yZXNldC5jOjQyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVzZXQgaW5kZXggZmlsZSB0byByZXZpc2lvbiAnJXMnLiIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSByw6lpbml0aWFsaXNlciBsZSBmaWNoaWVyIGQnaW5kZXggw6AgbGEgcsOpdmlzaW9uICclcycuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6NDA0CisjOiBidWlsdGluL3Jlc2V0LmM6NDI5CiBtc2dpZCAiQ291bGQgbm90IHdyaXRlIG5ldyBpbmRleCBmaWxlLiIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkJ8OpY3JpcmUgbGUgbm91dmVhdSBmaWNoaWVyIGQnaW5kZXguIgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NDAzCisjOiBidWlsdGluL3Jldi1saXN0LmM6NDk5CiBtc2dpZCAiY2Fubm90IGNvbWJpbmUgLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgYW5kIC0tbWlzc2luZyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjb21iaW5lciAtLWV4Y2x1ZGUtcHJvbWlzb3Itb2JqZWN0cyBldCAtLW1pc3NpbmciCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0NjEKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1NjAKIG1zZ2lkICJvYmplY3QgZmlsdGVyaW5nIHJlcXVpcmVzIC0tb2JqZWN0cyIKIG1zZ3N0ciAibGUgZmlsdHJhZ2UgZCdvYmpldCBleGlnZSAtLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0NjQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBzcGFyc2UgdmFsdWUgJyVzJyIKLW1zZ3N0ciAidmFsZXVyIGludmFsaWRlIGRlICdzcGFyc2UnICclcyciCi0KLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1MDUKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo2MTAKIG1zZ2lkICJyZXYtbGlzdCBkb2VzIG5vdCBzdXBwb3J0IGRpc3BsYXkgb2Ygbm90ZXMiCiBtc2dzdHIgInJldi1saXN0IG5lIHN1cHBvcnRlIGwnYWZmaWNoYWdlIGRlcyBub3RlcyIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjUwOAotbXNnaWQgImNhbm5vdCBjb21iaW5lIC0tdXNlLWJpdG1hcC1pbmRleCB3aXRoIG9iamVjdCBmaWx0ZXJpbmciCi1tc2dzdHIgImltcG9zc2libGUgZGUgY29tYmluZXIgLS11c2UtYml0bWFwLWluZGV4IGF2ZWMgbGUgZmlsdHJhZ2UgZCdvYmpldCIKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo2MTUKK21zZ2lkICJtYXJrZWQgY291bnRpbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1vYmplY3RzIgorbXNnc3RyICJsZSBjb21wdGFnZSBtYXJxdcOpIGVzdCBpbmNvbXBhdGlibGUgYXZlYyAtLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDA3CisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQwOAogbXNnaWQgImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPG9wdGlvbnM+XSAtLSBbPGFyZ3M+Li4uXSIKIG1zZ3N0ciAiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IFs8b3B0aW9ucz5dIC0tIFs8YXJndW1lbnRzPi4uLl0iCiAKLSM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDEyCisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxMwogbXNnaWQgImtlZXAgdGhlIGAtLWAgcGFzc2VkIGFzIGFuIGFyZyIKIG1zZ3N0ciAiZ2FyZGVyIGxlIGAtLWAgcGFzc8OpIGVuIGFyZ3VtZW50IgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxNAorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTUKIG1zZ2lkICJzdG9wIHBhcnNpbmcgYWZ0ZXIgdGhlIGZpcnN0IG5vbi1vcHRpb24gYXJndW1lbnQiCiBtc2dzdHIgImFycsOqdCBkZSBsJ2FuYWx5c2UgYXByw6hzIGxlIHByZW1pZXIgYXJndW1lbnQgcXVpIG4nZXN0IHBhcyB1bmUgb3B0aW9uIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxNworIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTgKIG1zZ2lkICJvdXRwdXQgaW4gc3R1Y2sgbG9uZyBmb3JtIgogbXNnc3RyICJzb3J0aWUgZW4gZm9ybWUgbG9uZ3VlIGZpeMOpZSIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo1NTAKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NTUxCiBtc2dpZCAiIgogImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPG9wdGlvbnM+XSAtLSBbPGFyZ3M+Li4uXVxuIgogIiAgIG9yOiBnaXQgcmV2LXBhcnNlIC0tc3EtcXVvdGUgWzxhcmc+Li4uXVxuIgpAQCAtMTY5NTEsNzIgKzIwMzE3LDgxIEBACiBtc2dpZCAiZ2l0IGNoZXJyeS1waWNrIDxzdWJjb21tYW5kPiIKIG1zZ3N0ciAiZ2l0IGNoZXJyeS1waWNrIDxzb3VzLWNvbW1hbmRlPiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzo5MQorIzogYnVpbHRpbi9yZXZlcnQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiB6ZXJvIgorbXNnc3RyICJsJ29wdGlvbiAnJXMnIGF0dGVuZCB1biBub21icmUgc3Vww6lyaWV1ciDDoCB6w6lybyIKKworIzogYnVpbHRpbi9yZXZlcnQuYzo5MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogJXMgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKIG1zZ3N0ciAiJXMgOiAlcyBuZSBwZXV0IHBhcyDDqnRyZSB1dGlsaXPDqSBhdmVjICVzIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwMAorIzogYnVpbHRpbi9yZXZlcnQuYzoxMDIKIG1zZ2lkICJlbmQgcmV2ZXJ0IG9yIGNoZXJyeS1waWNrIHNlcXVlbmNlIgogbXNnc3RyICJtZXR0cmUgZmluIGF1IHJldG91ciBvdSBwaWNvcmFnZSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCiBtc2dpZCAicmVzdW1lIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAicmVwcmVuZHJlIGxlIHJldG91ciBvdSBwaWNvcmFnZSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDIKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA0CiBtc2dpZCAiY2FuY2VsIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAiYW5udWxlciBsZSByZXRvdXIgb3UgcGljb3JhZ2UiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCisjOiBidWlsdGluL3JldmVydC5jOjEwNQorbXNnaWQgInNraXAgY3VycmVudCBjb21taXQgYW5kIGNvbnRpbnVlIgorbXNnc3RyICJzYXV0ZXIgbGUgY29tbWl0IGNvdXJhbnQgZXQgY29udGludWVyIgorCisjOiBidWlsdGluL3JldmVydC5jOjEwNwogbXNnaWQgImRvbid0IGF1dG9tYXRpY2FsbHkgY29tbWl0IgogbXNnc3RyICJuZSBwYXMgdmFsaWRlciBhdXRvbWF0aXF1ZW1lbnQiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA0CisjOiBidWlsdGluL3JldmVydC5jOjEwOAogbXNnaWQgImVkaXQgdGhlIGNvbW1pdCBtZXNzYWdlIgogbXNnc3RyICLDqWRpdGVyIGxlIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDcKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTExCiBtc2dpZCAicGFyZW50LW51bWJlciIKIG1zZ3N0ciAibnVtw6lyby1kZS1wYXJlbnQiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA4CisjOiBidWlsdGluL3JldmVydC5jOjExMgogbXNnaWQgInNlbGVjdCBtYWlubGluZSBwYXJlbnQiCiBtc2dzdHIgInPDqWxlY3Rpb25uZXIgbGUgcGFyZW50IHByaW5jaXBhbCIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMTAKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0CiBtc2dpZCAibWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgInN0cmF0w6lnaWUgZGUgZnVzaW9uIgogCi0jOiBidWlsdGluL3JldmVydC5jOjExMgorIzogYnVpbHRpbi9yZXZlcnQuYzoxMTYKIG1zZ2lkICJvcHRpb24gZm9yIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICJvcHRpb24gcG91ciBsYSBzdHJhdMOpZ2llIGRlIGZ1c2lvbiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMjEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI1CiBtc2dpZCAiYXBwZW5kIGNvbW1pdCBuYW1lIgogbXNnc3RyICJham91dGVyIGxlIG5vbSBkZSB2YWxpZGF0aW9uIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEyMworIzogYnVpbHRpbi9yZXZlcnQuYzoxMjcKIG1zZ2lkICJwcmVzZXJ2ZSBpbml0aWFsbHkgZW1wdHkgY29tbWl0cyIKIG1zZ3N0ciAicHLDqXNlcnZlciBsZXMgdmFsaWRhdGlvbnMgdmlkZXMgaW5pdGlhbGVtZW50IgogCi0jOiBidWlsdGluL3JldmVydC5jOjEyNQorIzogYnVpbHRpbi9yZXZlcnQuYzoxMjkKIG1zZ2lkICJrZWVwIHJlZHVuZGFudCwgZW1wdHkgY29tbWl0cyIKIG1zZ3N0ciAiZ2FyZGVyIGxlcyB2YWxpZGF0aW9ucyByZWRvbmRhbnRlcywgdmlkZXMiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjE5CisjOiBidWlsdGluL3JldmVydC5jOjIzMgogbXNnaWQgInJldmVydCBmYWlsZWQiCiBtc2dzdHIgInJldmVydCBhIMOpY2hvdcOpIgogCi0jOiBidWlsdGluL3JldmVydC5jOjIzMgorIzogYnVpbHRpbi9yZXZlcnQuYzoyNDUKIG1zZ2lkICJjaGVycnktcGljayBmYWlsZWQiCiBtc2dzdHIgImxlIHBpY29yYWdlIGEgw6ljaG91w6kiCiAKLSM6IGJ1aWx0aW4vcm0uYzoxOAorIzogYnVpbHRpbi9ybS5jOjE5CiBtc2dpZCAiZ2l0IHJtIFs8b3B0aW9ucz5dIFstLV0gPGZpbGU+Li4uIgogbXNnc3RyICJnaXQgcm0gWzxvcHRpb25zPl0gWy0tXSA8ZmljaGllcj4uLi4iCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMDYKKyM6IGJ1aWx0aW4vcm0uYzoyMDcKIG1zZ2lkICIiCiAidGhlIGZvbGxvd2luZyBmaWxlIGhhcyBzdGFnZWQgY29udGVudCBkaWZmZXJlbnQgZnJvbSBib3RoIHRoZVxuIgogImZpbGUgYW5kIHRoZSBIRUFEOiIKQEAgLTE3MDMwLDcgKzIwNDA1LDcgQEAKICJsZXMgZmljaGllcnMgc3VpdmFudHMgb250IGR1IGNvbnRlbnUgaW5kZXjDqSBkaWZmw6lyZW50XG4iCiAiZHUgZmljaGllciBldCBkZSBIRUFEIDoiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMTEKKyM6IGJ1aWx0aW4vcm0uYzoyMTIKIG1zZ2lkICIiCiAiXG4iCiAiKHVzZSAtZiB0byBmb3JjZSByZW1vdmFsKSIKQEAgLTE3MDM4LDEzICsyMDQxMywxMyBAQAogIlxuIgogIih1dGlsaXNleiAtZiBwb3VyIGZvcmNlciBsYSBzdXBwcmVzc2lvbikiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMTUKKyM6IGJ1aWx0aW4vcm0uYzoyMTYKIG1zZ2lkICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIGNoYW5nZXMgc3RhZ2VkIGluIHRoZSBpbmRleDoiCiBtc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBjaGFuZ2VzIHN0YWdlZCBpbiB0aGUgaW5kZXg6IgogbXNnc3RyWzBdICJsZSBmaWNoaWVyIHN1aXZhbnQgYSBkZXMgY2hhbmdlbWVudHMgaW5kZXjDqXMgOiIKIG1zZ3N0clsxXSAibGVzIGZpY2hpZXJzIHN1aXZhbnRzIG9udCBkZXMgY2hhbmdlbWVudHMgaW5kZXjDqXMgOiIKIAotIzogYnVpbHRpbi9ybS5jOjIxOSBidWlsdGluL3JtLmM6MjI4CisjOiBidWlsdGluL3JtLmM6MjIwIGJ1aWx0aW4vcm0uYzoyMjkKIG1zZ2lkICIiCiAiXG4iCiAiKHVzZSAtLWNhY2hlZCB0byBrZWVwIHRoZSBmaWxlLCBvciAtZiB0byBmb3JjZSByZW1vdmFsKSIKQEAgLTE3MDUyLDQ0ICsyMDQyNyw0OCBAQAogIlxuIgogIih1dGlsaXNleiAtLWNhY2hlZCBwb3VyIGdhcmRlciBsZSBmaWNoaWVyLCBvdSAtZiBwb3VyIGZvcmNlciBsYSBzdXBwcmVzc2lvbikiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMjUKKyM6IGJ1aWx0aW4vcm0uYzoyMjYKIG1zZ2lkICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIGxvY2FsIG1vZGlmaWNhdGlvbnM6IgogbXNnaWRfcGx1cmFsICJ0aGUgZm9sbG93aW5nIGZpbGVzIGhhdmUgbG9jYWwgbW9kaWZpY2F0aW9uczoiCiBtc2dzdHJbMF0gImxlIGZpY2hpZXIgc3VpdmFudCBhIGRlcyBtb2RpZmljYXRpb25zIGxvY2FsZXMgOiIKIG1zZ3N0clsxXSAibGVzIGZpY2hpZXJzIHN1aXZhbnRzIG9udCBkZXMgbW9kaWZpY2F0aW9ucyBsb2NhbGVzIDoiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDEKKyM6IGJ1aWx0aW4vcm0uYzoyNDMKIG1zZ2lkICJkbyBub3QgbGlzdCByZW1vdmVkIGZpbGVzIgogbXNnc3RyICJuZSBwYXMgYWZmaWNoZXIgbGVzIGZpY2hpZXJzIHN1cHByaW3DqXMiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDIKKyM6IGJ1aWx0aW4vcm0uYzoyNDQKIG1zZ2lkICJvbmx5IHJlbW92ZSBmcm9tIHRoZSBpbmRleCIKIG1zZ3N0ciAic3VwcHJpbWVyIHNldWxlbWVudCBkZSBsJ2luZGV4IgogCi0jOiBidWlsdGluL3JtLmM6MjQzCisjOiBidWlsdGluL3JtLmM6MjQ1CiBtc2dpZCAib3ZlcnJpZGUgdGhlIHVwLXRvLWRhdGUgY2hlY2siCiBtc2dzdHIgIm91dHJlcGFzc2VyIGxhIHbDqXJpZmljYXRpb24gZGVzIGZpY2hpZXJzIMOgIGpvdXIiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDQKKyM6IGJ1aWx0aW4vcm0uYzoyNDYKIG1zZ2lkICJhbGxvdyByZWN1cnNpdmUgcmVtb3ZhbCIKIG1zZ3N0ciAiYXV0b3Jpc2VyIGxhIHN1cHByZXNzaW9uIHLDqWN1cnNpdmUiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDYKKyM6IGJ1aWx0aW4vcm0uYzoyNDgKIG1zZ2lkICJleGl0IHdpdGggYSB6ZXJvIHN0YXR1cyBldmVuIGlmIG5vdGhpbmcgbWF0Y2hlZCIKIG1zZ3N0ciAic29ydGlyIGF2ZWMgdW4gw6l0YXQgesOpcm8gbcOqbWUgc2kgcmllbiBuZSBjb3JyZXNwb25kYWl0IgogCi0jOiBidWlsdGluL3JtLmM6Mjg4CisjOiBidWlsdGluL3JtLmM6MjgyCittc2dpZCAiTm8gcGF0aHNwZWMgd2FzIGdpdmVuLiBXaGljaCBmaWxlcyBzaG91bGQgSSByZW1vdmU/IgorbXNnc3RyICJBdWN1biBzcMOpY2lmaWNhdGV1ciBkZSBjaGVtaW4gZm91cm5pLiBRdWVsIGZpY2hpZXIgZG9pdCDDqnRyZSBzdXBwcmltw6nCoD8iCisKKyM6IGJ1aWx0aW4vcm0uYzozMDUKIG1zZ2lkICJwbGVhc2Ugc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKIG1zZ3N0ciAiIgogInZldWlsbGV6IGluZGV4ZXIgdm9zIG1vZGlmaWNhdGlvbnMgZGUgLmdpdG1vZHVsZXMgb3UgbGVzIHJlbWlzZXIgcG91ciAiCiAiY29udGludWVyIgogCi0jOiBidWlsdGluL3JtLmM6MzA2CisjOiBidWlsdGluL3JtLmM6MzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCByZW1vdmluZyAnJXMnIHJlY3Vyc2l2ZWx5IHdpdGhvdXQgLXIiCiBtc2dzdHIgInBhcyBkZSBzdXBwcmVzc2lvbiByw6ljdXJzaXZlIGRlICclcycgc2FucyAtciIKIAotIzogYnVpbHRpbi9ybS5jOjM0NQorIzogYnVpbHRpbi9ybS5jOjM2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgcm06IHVuYWJsZSB0byByZW1vdmUgJXMiCiBtc2dzdHIgImdpdCBybSA6IGltcG9zc2libGUgZGUgc3VwcHJpbWVyICVzIgpAQCAtMTcxMjMsMTggKzIwNTAyLDYgQEAKIG1zZ2lkICJwcmludCBzdGF0dXMgZnJvbSByZW1vdGUgaGVscGVyIgogbXNnc3RyICJhZmZpY2hlciBsZXMgbWVzc2FnZXMgZHUgZ3JlZmZvbiBkZSBwcm90b2NvbGUgZGlzdGFudCIKIAotIzogYnVpbHRpbi9zZXJ2ZS5jOjcKLW1zZ2lkICJnaXQgc2VydmUgWzxvcHRpb25zPl0iCi1tc2dzdHIgImdpdCBzZXJ2ZSBbPG9wdGlvbnM+XSIKLQotIzogYnVpbHRpbi9zZXJ2ZS5jOjE3IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyMwotbXNnaWQgInF1aXQgYWZ0ZXIgYSBzaW5nbGUgcmVxdWVzdC9yZXNwb25zZSBleGNoYW5nZSIKLW1zZ3N0ciAicXVpdHRlciBhcHLDqHMgdW4gdW5pcXVlIMOpY2hhbmdlIHJlcXXDqnRlL3LDqXBvbnNlIgotCi0jOiBidWlsdGluL3NlcnZlLmM6MTkKLW1zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGFkdmVydGlzaW5nIGNhcGFiaWxpdGllcyIKLW1zZ3N0ciAic29ydGlyIGltbcOpZGlhdGVtZW50IGFwcsOocyBsJ2Fubm9uY2UgZGVzIGNhcGFjaXTDqXMiCi0KICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxNAogbXNnaWQgImdpdCBzaG9ydGxvZyBbPG9wdGlvbnM+XSBbPHJldmlzaW9uLXJhbmdlPl0gW1stLV0gPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IHNob3J0bG9nIFs8b3B0aW9ucz5dIFs8aW50ZXJ2YWxsZS1yw6l2aXNpb25zPl0gW1stLV0gPGNoZW1pbj4uLi5dIgpAQCAtMTcxNjksNyArMjA1MzYsNyBAQAogbXNnaWQgIkxpbmV3cmFwIG91dHB1dCIKIG1zZ3N0ciAiQ291cGVyIGxlcyBsaWduZXMiCiAKLSM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoyOTkKKyM6IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDEKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgZ2l2ZW4gb3V0c2lkZSByZXBvc2l0b3J5IgogbXNnc3RyICJ0cm9wIGQnYXJndW1lbnRzIGZvdXJuaXMgaG9ycyBkJ3VuIGTDqXDDtHQiCiAKQEAgLTE3MTk2LDEyMiArMjA1NjMsMTIyIEBACiBtc2dzdHJbMF0gIiVzIGlnbm9yw6k7IGltcG9zc2libGUgZGUgZ8OpcmVyIHBsdXMgZGUgJWQgcsOpZsOpcmVuY2UiCiBtc2dzdHJbMV0gIiVzIGlnbm9yw6k7IGltcG9zc2libGUgZGUgZ8OpcmVyIHBsdXMgZGUgJWQgcsOpZsOpcmVuY2VzIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NTQ5CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIG1hdGNoaW5nIHJlZnMgd2l0aCAlcyIKIG1zZ3N0ciAiYXVjdW5lIHLDqWbDqXJlbmNlIGNvcnJlc3BvbmQgw6AgJXMiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDUKIG1zZ2lkICJzaG93IHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCiBtc2dzdHIgImFmZmljaGVyIGxlcyBicmFuY2hlcyBkZSBzdWl2aSBkaXN0YW50ZXMgZXQgbGVzIGJyYW5jaGVzIGxvY2FsZXMiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDgKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDcKIG1zZ2lkICJzaG93IHJlbW90ZS10cmFja2luZyBicmFuY2hlcyIKIG1zZ3N0ciAiYWZmaWNoZXIgbGVzIGJyYW5jaGVzIGRlIHN1aXZpIGRpc3RhbnRlcyIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0OQogbXNnaWQgImNvbG9yICcqISstJyBjb3JyZXNwb25kaW5nIHRvIHRoZSBicmFuY2giCiBtc2dzdHIgImNvdWxldXIgJyohKy0nIGNvcnJlc3BvbmRhbnQgw6AgbGEgYnJhbmNoZSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MQogbXNnaWQgInNob3cgPG4+IG1vcmUgY29tbWl0cyBhZnRlciB0aGUgY29tbW9uIGFuY2VzdG9yIgogbXNnc3RyICJhZmZpY2hlciA8bj4gdmFsaWRhdGlvbnMgZGUgcGx1cyBhcHLDqHMgbCdhbmPDqnRyZSBjb21tdW4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTMKIG1zZ2lkICJzeW5vbnltIHRvIG1vcmU9LTEiCiBtc2dzdHIgInN5bm9ueW1lIGRlIG1vcmU9LTEiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKIG1zZ2lkICJzdXBwcmVzcyBuYW1pbmcgc3RyaW5ncyIKIG1zZ3N0ciAic3VwcHJpbWVyIGxlcyBjaGHDrm5lcyBkZSBub21tYWdlIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU3CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU2CiBtc2dpZCAiaW5jbHVkZSB0aGUgY3VycmVudCBicmFuY2giCiBtc2dzdHIgImluY2x1cmUgbGEgYnJhbmNoZSBjb3VyYW50ZSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1OQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1OAogbXNnaWQgIm5hbWUgY29tbWl0cyB3aXRoIHRoZWlyIG9iamVjdCBuYW1lcyIKIG1zZ3N0ciAibm9tbWVyIGxlcyB2YWxpZGF0aW9ucyBhdmVjIGxldXJzIG5vbXMgZCdvYmpldCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MAogbXNnaWQgInNob3cgcG9zc2libGUgbWVyZ2UgYmFzZXMiCiBtc2dzdHIgImFmZmljaGVyIGxlcyBiYXNlcyBwb3NzaWJsZXMgZGUgZnVzaW9uIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYzCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYyCiBtc2dpZCAic2hvdyByZWZzIHVucmVhY2hhYmxlIGZyb20gYW55IG90aGVyIHJlZiIKIG1zZ3N0ciAiYWZmaWNoZXIgbGVzIHLDqWbDqXJlbmNlcyBpbmFjY2Vzc2libGVzIGRlcHVpcyB0b3V0ZSBhdXRyZSByw6lmw6lyZW5jZSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NAogbXNnaWQgInNob3cgY29tbWl0cyBpbiB0b3BvbG9naWNhbCBvcmRlciIKIG1zZ3N0ciAiYWZmaWNoZXIgbGVzIHZhbGlkYXRpb25zIGRhbnMgbCdvcmRyZSB0b3BvbG9naXF1ZSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2OAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NwogbXNnaWQgInNob3cgb25seSBjb21taXRzIG5vdCBvbiB0aGUgZmlyc3QgYnJhbmNoIgogbXNnc3RyICIiCiAiYWZmaWNoZXIgc2V1bGVtZW50IGxlcyB2YWxpZGF0aW9ucyBxdWkgbmUgc29udCBwYXMgc3VyIGxhIHByZW1pw6hyZSBicmFuY2hlIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjcwCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY5CiBtc2dpZCAic2hvdyBtZXJnZXMgcmVhY2hhYmxlIGZyb20gb25seSBvbmUgdGlwIgogbXNnc3RyICJhZmZpY2hlciBsZXMgZnVzaW9ucyBhY2Nlc3NpYmxlcyBkZXB1aXMgdW5lIHNldWxlIHBvaW50ZSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MQogbXNnaWQgInRvcG9sb2dpY2FsbHkgc29ydCwgbWFpbnRhaW5pbmcgZGF0ZSBvcmRlciB3aGVyZSBwb3NzaWJsZSIKIG1zZ3N0ciAidHJpIHRvcG9sb2dpcXVlLCBtYWludGVuYW50IGwnb3JkcmUgcGFyIGRhdGUgc2kgcG9zc2libGUiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzQKIG1zZ2lkICI8bj5bLDxiYXNlPl0iCiBtc2dzdHIgIjxuPlssPGJhc2U+XSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NQogbXNnaWQgInNob3cgPG4+IG1vc3QgcmVjZW50IHJlZi1sb2cgZW50cmllcyBzdGFydGluZyBhdCBiYXNlIgogbXNnc3RyICIiCiAiYWZmaWNoZXIgbGVzIDxuPiBwbHVzIHLDqWNlbnRzIMOpbMOpbWVudHMgZGUgcmVmLWxvZyBlbiBjb21tZW7Dp2FudCDDoCBsYSBiYXNlIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzEyCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzExCiBtc2dpZCAiIgogIi0tcmVmbG9nIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWxsLCAtLXJlbW90ZXMsIC0taW5kZXBlbmRlbnQgb3IgLS1tZXJnZS1iYXNlIgogbXNnc3RyICIiCiAiLS1yZWZsb2cgZXN0IGluY29tcGF0aWJsZSBhdmVjIC0tYWxsLCAtLXJlbW90ZXMsIC0taW5kZXBlbmRhbnQgZXQgLS1tZXJnZS0iCiAiYmFzZSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczNgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczNQogbXNnaWQgIm5vIGJyYW5jaGVzIGdpdmVuLCBhbmQgSEVBRCBpcyBub3QgdmFsaWQiCiBtc2dzdHIgImF1Y3VuZSBicmFuY2hlIHNww6ljaWZpw6llLCBldCBIRUFEIGVzdCBpbnZhbGlkZSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczOQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczOAogbXNnaWQgIi0tcmVmbG9nIG9wdGlvbiBuZWVkcyBvbmUgYnJhbmNoIG5hbWUiCiBtc2dzdHIgIi0tcmVmbG9nIHJlcXVpZXJ0IHVuIG5vbSBkZSBicmFuY2hlIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQyCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9ubHkgJWQgZW50cnkgY2FuIGJlIHNob3duIGF0IG9uZSB0aW1lLiIKIG1zZ2lkX3BsdXJhbCAib25seSAlZCBlbnRyaWVzIGNhbiBiZSBzaG93biBhdCBvbmUgdGltZS4iCiBtc2dzdHJbMF0gIiVkIGVudHLDqWUgc2V1bGVtZW50IG5lIHBldXQgw6p0cmUgbW9udHLDqWUgZW4gbcOqbWUgdGVtcHMuIgogbXNnc3RyWzFdICIlZCBlbnRyw6llcyBzZXVsZW1lbnQgbmUgcGV1dmVudCDDqnRyZSBtb250csOpZSBlbiBtw6ptZSB0ZW1wcy4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCByZWYgJXMiCiBtc2dzdHIgInLDqWbDqXJlbmNlIGluZXhpc3RhbnRlICVzIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODMwCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJldi4iCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJldnMuIgogbXNnc3RyWzBdICJpbXBvc3NpYmxlIGRlIGfDqXJlciBwbHVzIGRlICVkIHLDqXZpc2lvbi4iCiBtc2dzdHJbMV0gImltcG9zc2libGUgZGUgZ8OpcmVyIHBsdXMgZGUgJWQgcsOpdmlzaW9ucy4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzQKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZWYuIgogbXNnc3RyICInJXMnIG4nZXN0IHBhcyB1bmUgcsOpZsOpcmVuY2UgdmFsaWRlLiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzNworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmluZCBjb21taXQgJXMgKCVzKSIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSB0cm91dmVyIGxlIGNvbW1pdCAlcyAoJXMpIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTEKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxMgogbXNnaWQgIiIKICJnaXQgc2hvdy1yZWYgWy1xIHwgLS1xdWlldF0gWy0tdmVyaWZ5XSBbLS1oZWFkXSBbLWQgfCAtLWRlcmVmZXJlbmNlXSBbLXMgfCAtLSIKICJoYXNoWz08bj5dXSBbLS1hYmJyZXZbPTxuPl1dIFstLXRhZ3NdIFstLWhlYWRzXSBbLS1dIFs8cGF0dGVybj4uLi5dIgpAQCAtMTczMTksNDcgKzIwNjg2LDM1NyBAQAogImdpdCBzaG93LXJlZiBbLXEgfCAtLXF1aWV0XSBbLS12ZXJpZnldIFstLWhlYWRdIFstZCB8IC0tZGVyZWZlcmVuY2VdIFstcyB8IC0tIgogImhhc2hbPTxuPl1dIFstLWFiYnJldls9PG4+XV0gWy0tdGFnc10gWy0taGVhZHNdIFstLV0gWzxtb3RpZj4uLi5dIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTIKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxMwogbXNnaWQgImdpdCBzaG93LXJlZiAtLWV4Y2x1ZGUtZXhpc3RpbmdbPTxwYXR0ZXJuPl0iCiBtc2dzdHIgImdpdCBzaG93LXJlZiAtLWV4Y2x1ZGUtZXhpc3RpbmdbPTxtb3RpZj5dIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTYxCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYyCiBtc2dpZCAib25seSBzaG93IHRhZ3MgKGNhbiBiZSBjb21iaW5lZCB3aXRoIGhlYWRzKSIKIG1zZ3N0ciAiYWZmaWNoZXIgc2V1bGVtZW50IGxlcyDDqXRpcXVldHRlcyAocGV1dCDDqnRyZSBjb21iaW7DqSBhdmVjIGhlYWRzKSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2MgorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2MwogbXNnaWQgIm9ubHkgc2hvdyBoZWFkcyAoY2FuIGJlIGNvbWJpbmVkIHdpdGggdGFncykiCiBtc2dzdHIgImFmZmljaGVyIHNldWxlbWVudCBsZXMgdMOqdGVzIChwZXV0IMOqdHJlIGNvbWJpbsOpIGF2ZWMgdGFncykiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjMKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjQKIG1zZ2lkICJzdHJpY3RlciByZWZlcmVuY2UgY2hlY2tpbmcsIHJlcXVpcmVzIGV4YWN0IHJlZiBwYXRoIgogbXNnc3RyICIiCiAidsOpcmlmaWNhdGlvbiBkZSByw6lmw6lyZW5jZSBwbHVzIHN0cmljdGUsIG7DqWNlc3NpdGUgdW4gY2hlbWluIGRlIHLDqWbDqXJlbmNlICIKICJleGFjdCIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2NiBidWlsdGluL3Nob3ctcmVmLmM6MTY4CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTY3IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjkKIG1zZ2lkICJzaG93IHRoZSBIRUFEIHJlZmVyZW5jZSwgZXZlbiBpZiBpdCB3b3VsZCBiZSBmaWx0ZXJlZCBvdXQiCiBtc2dzdHIgImFmZmljaGVyIGxhIHLDqWbDqXJlbmNlIEhFQUQsIG3Dqm1lIHNpIGVsbGUgc2VyYWl0IGZpbHRyw6llIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTcwCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTcxCiBtc2dpZCAiZGVyZWZlcmVuY2UgdGFncyBpbnRvIG9iamVjdCBJRHMiCiBtc2dzdHIgImTDqXLDqWbDqXJlbmNlciBsZXMgw6l0aXF1ZXR0ZXMgZW4gSURzIGQnb2JqZXQiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzIKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzMKIG1zZ2lkICJvbmx5IHNob3cgU0hBMSBoYXNoIHVzaW5nIDxuPiBkaWdpdHMiCiBtc2dzdHIgImFmZmljaGVyIHNldWxlbWVudCBsZSBoYWNoYWdlIFNIQTEgZW4gdXRpbGlzYW50IDxuPiBjaGlmZnJlcyIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3NgorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3NwogbXNnaWQgImRvIG5vdCBwcmludCByZXN1bHRzIHRvIHN0ZG91dCAodXNlZnVsIHdpdGggLS12ZXJpZnkpIgogbXNnc3RyICIiCiAibmUgcGFzIGFmZmljaGVyIGxlcyByw6lzdWx0YXRzIHN1ciBsYSBzb3J0aWUgc3RhbmRhcmQgKHByYXRpcXVlIGF2ZWMgLS12ZXJpZnkpIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTc4CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc5CiBtc2dpZCAic2hvdyByZWZzIGZyb20gc3RkaW4gdGhhdCBhcmVuJ3QgaW4gbG9jYWwgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogImFmZmljaGVyIGxlcyByw6lmw6lyZW5jZXMgZGUgbCdlbnRyw6llIHN0YW5kYXJkIHF1aSBuZSBzb250IHBhcyBkYW5zIGxlIGTDqXDDtHQgIgogImxvY2FsIgogCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjIxCittc2dpZCAiZ2l0IHNwYXJzZS1jaGVja291dCAoaW5pdHxsaXN0fHNldHxhZGR8ZGlzYWJsZSkgPG9wdGlvbnM+IgorbXNnc3RyICJnaXQgc3BhcnNlLWNoZWNrb3V0IChpbml0fGxpc3R8c2V0fGFkZHxkaXNhYmxlKSA8b3B0aW9ucz4iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NjQKK21zZ2lkICJ0aGlzIHdvcmt0cmVlIGlzIG5vdCBzcGFyc2UgKHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBub3QgZXhpc3QpIgorbXNnc3RyICIiCisiY2V0IGFyYnJlIGRlIHRyYXZhaWwgbidlc3QgcGFzIHBhcnRpZWwgKGxlIGZpY2hpZXIgc3BhcnNlLWNoZWNrb3V0IHBvdXJyYWl0ICIKKyJuZSBwYXMgZXhpc3RlcikiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjI1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgZm9yIHNwYXJzZS1jaGVja291dCBmaWxlIgorbXNnc3RyICIiCisiw6ljaGVjIGRlIGxhIGNyw6lhdGlvbiBkdSByw6lwZXJ0b2lyZSBwb3VyIGxlIGZpY2hpZXIgZCdleHRyYWN0aW9uIHBhcnRpZWxsZSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gc2V0IGV4dGVuc2lvbnMud29ya3RyZWVDb25maWcgc2V0dGluZyIKK21zZ3N0ciAiw6ljaGVjIGRlIHBhcmFtw6l0cmFnZSBleHRlbnNpb25zLndvcmt0cmVlQ29uZmlnIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjI4MworbXNnaWQgImdpdCBzcGFyc2UtY2hlY2tvdXQgaW5pdCBbLS1jb25lXSIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCBpbml0IFstLWNvbmVdIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjMwMgorbXNnaWQgImluaXRpYWxpemUgdGhlIHNwYXJzZS1jaGVja291dCBpbiBjb25lIG1vZGUiCittc2dzdHIgImluaXRpYWxpc2VyIGwnZXh0cmFjdGlvbiBwYXJ0aWVsbGUgZW4gbW9kZSBjb25lIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjMwOAorbXNnaWQgImluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJpbml0aWFsaXNlciBsJ2V4dHJhY3Rpb24gcGFydGllbGxlIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIgorbXNnc3RyICLDqWNoZWMgw6AgbCdvdXZlcnR1cmUgZGUgJyVzJyIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzozOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG5vcm1hbGl6ZSBwYXRoICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIG5vcm1hbGlzZXIgbGUgY2hlbWluICclcyciCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDEwCittc2dpZCAiZ2l0IHNwYXJzZS1jaGVja291dCAoc2V0fGFkZCkgKC0tc3RkaW4gfCA8cGF0dGVybnM+KSIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCAoc2V0fGFkZCkgKC0tc3RkaW4gfCA8bW90aWZzPikiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bnF1b3RlIEMtc3R5bGUgc3RyaW5nICclcyciCittc2dzdHIgIkltcG9zc2libGUgZGUgZMOpY290ZXIgbGEgY2hhw65uZSBlbiBzdHlsZSBDICclcyciCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDg5IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTEzCittc2dpZCAidW5hYmxlIHRvIGxvYWQgZXhpc3Rpbmcgc3BhcnNlLWNoZWNrb3V0IHBhdHRlcm5zIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNoYXJnZXIgbGVzIG1vdGlmcyBkZSBsJ2V4dHJhY3Rpb24gcGFydGllbGxlIGV4aXN0YW50cyIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1NTgKK21zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gc3RhbmRhcmQgaW4iCittc2dzdHIgImxpcmUgbGVzIG1vdGlmcyBkZXB1aXMgbCdlbnRyw6llIHN0YW5kYXJkIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjU2NAorbXNnaWQgInNldCBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMiCittc2dzdHIgImluZGlxdWVyIGxlcyBtb3RpZnMgZGUgbCdleHRyYWN0aW9uIHBhcnRpZWxsZSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1ODEKK21zZ2lkICJkaXNhYmxlIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAiZMOpc2FjdGl2ZXIgZCdleHRyYWN0aW9uIHBhcnRpZWxsZSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1OTMKK21zZ2lkICJlcnJvciB3aGlsZSByZWZyZXNoaW5nIHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICJlcnJldXIgbG9ycyBkdSByYWZyYcOuY2hpc3NlbWVudCBkdSByw6lwZXJ0b2lyZSBkZSB0cmF2YWlsIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjIgYnVpbHRpbi9zdGFzaC5jOjM4Cittc2dpZCAiZ2l0IHN0YXNoIGxpc3QgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCBzdGFzaCBsaXN0IFs8b3B0aW9ucz5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjMgYnVpbHRpbi9zdGFzaC5jOjQzCittc2dpZCAiZ2l0IHN0YXNoIHNob3cgWzxvcHRpb25zPl0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggc2hvdyBbPG9wdGlvbnM+XSBbPHJlbWlzZT5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjQgYnVpbHRpbi9zdGFzaC5jOjQ4Cittc2dpZCAiZ2l0IHN0YXNoIGRyb3AgWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGRyb3AgWy1xfC0tcXVpZXRdIFs8cmVtaXNlPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNQorbXNnaWQgImdpdCBzdGFzaCAoIHBvcCB8IGFwcGx5ICkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCAoIHBvcCB8IGFwcGx5ICkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHJlbWlzZT5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjYgYnVpbHRpbi9zdGFzaC5jOjYzCittc2dpZCAiZ2l0IHN0YXNoIGJyYW5jaCA8YnJhbmNobmFtZT4gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggYnJhbmNoIDxub20tZGUtYnJhbmNoZT4gWzxyZW1pc2U+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI3IGJ1aWx0aW4vc3Rhc2guYzo2OAorbXNnaWQgImdpdCBzdGFzaCBjbGVhciIKK21zZ3N0ciAiZ2l0IHN0YXNoIGNsZWFyIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjgKK21zZ2lkICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl1cbiIKKyIgICAgICAgICAgWy0tcGF0aHNwZWMtZnJvbS1maWxlPTxmaWxlPiBbLS1wYXRoc3BlYy1maWxlLW51bF1dXG4iCisiICAgICAgICAgIFstLV0gWzxwYXRoc3BlYz4uLi5dXSIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dXG4iCisiICAgICAgICAgIFstLXBhdGhzcGVjLWZyb20tZmlsZT08ZmljaGllcj4gWy0tcGF0aHNwZWMtZmlsZS1udWxdXVxuIgorIiAgICAgICAgICBbLS1dIFs8c3DDqWNpZmljYXRldXItZGUtY2hlbWluPi4uLl1dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MzIgYnVpbHRpbi9zdGFzaC5jOjg1Cittc2dpZCAiIgorImdpdCBzdGFzaCBzYXZlIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbPG1lc3NhZ2U+XSIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBzYXZlIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbPG1lc3NhZ2U+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjUzCittc2dpZCAiZ2l0IHN0YXNoIHBvcCBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIHBvcCBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8cmVtaXNlPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1OAorbXNnaWQgImdpdCBzdGFzaCBhcHBseSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGFwcGx5IFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxyZW1pc2U+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjczCittc2dpZCAiZ2l0IHN0YXNoIHN0b3JlIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XSBbLXF8LS1xdWlldF0gPGNvbW1pdD4iCittc2dzdHIgImdpdCBzdGFzaCBzdG9yZSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl0gWy1xfC0tcXVpZXRdIDxyZW1pc2U+IgorCisjOiBidWlsdGluL3N0YXNoLmM6NzgKK21zZ2lkICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl1cbiIKKyIgICAgICAgICAgWy0tXSBbPHNww6ljaWZpY2F0ZXVyLWRlLWNoZW1pbj4uLi5dXSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHN0YXNoLWxpa2UgY29tbWl0IgorbXNnc3RyICInJXMnIG4nZXN0IHBhcyB1bmUgdmFsaWRhdGlvbiBkZSB0eXBlIHJlbWlzYWdlIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIlRvbyBtYW55IHJldmlzaW9ucyBzcGVjaWZpZWQ6JXMiCittc2dzdHIgIlRyb3AgZGUgcsOpdmlzaW9ucyBzcMOpY2lmacOpZXMgOiAlcyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE2MiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU0OQorbXNnaWQgIk5vIHN0YXNoIGVudHJpZXMgZm91bmQuIgorbXNnc3RyICJBdWN1bmUgZW50csOpZSBkZSByZW1pc2FnZSB0cm91dsOpZS4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgcmVmZXJlbmNlIgorbXNnc3RyICIlcyBuJ2VzdCBwYXMgdW5lIHLDqWbDqXJlbmNlIHZhbGlkZSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjIyNSBnaXQtbGVnYWN5LXN0YXNoLnNoOjc1Cittc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIHdpdGggcGFyYW1ldGVycyBpcyB1bmltcGxlbWVudGVkIgorbXNnc3RyICJnaXQgc3Rhc2ggY2xlYXIgYXZlYyBkZXMgcGFyYW3DqHRyZXMgbidlc3QgcGFzIGltcGzDqW1lbnTDqSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQwNAorbXNnaWQgImNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FwcGxpcXVlciB1biByZW1pc2FnZSBlbiBjb3VycyBkZSBmdXNpb24iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIGRpZmYgJXNeIS4iCittc2dzdHIgImltcG9zc2libGUgZGUgZ8OpbsOpcmVyICVzXiEuIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDIyCittc2dpZCAiY29uZmxpY3RzIGluIGluZGV4LlRyeSB3aXRob3V0IC0taW5kZXguIgorbXNnc3RyICJjb25mbGl0cyBkYW5zIGwnaW5kZXguIEVzc2F5ZXogc2FucyAtLWluZGV4LiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQyOAorbXNnaWQgImNvdWxkIG5vdCBzYXZlIGluZGV4IHRyZWUiCittc2dzdHIgImltcG9zc2libGUgZGUgc2F1dmVnYXJkZXIgbCdhcmJyZSBkJ2luZGV4IgorCisjOiBidWlsdGluL3N0YXNoLmM6NDM3Cittc2dpZCAiY291bGQgbm90IHJlc3RvcmUgdW50cmFja2VkIGZpbGVzIGZyb20gc3Rhc2giCittc2dzdHIgImltcG9zc2libGUgZGUgcmVzdGF1cmVyIGxlcyBmaWNoaWVycyBub24tc3VpdmlzIGRlcHVpcyBsZSByZW1pc2FnZSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQ1MQorIywgYy1mb3JtYXQKK21zZ2lkICJNZXJnaW5nICVzIHdpdGggJXMiCittc2dzdHIgIkZ1c2lvbiBkZSAlcyBhdmVjICVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDYxIGdpdC1sZWdhY3ktc3Rhc2guc2g6NjgxCittc2dpZCAiSW5kZXggd2FzIG5vdCB1bnN0YXNoZWQuIgorbXNnc3RyICJMJ2luZGV4IG4nYSBwYXMgw6l0w6kgc29ydGkgZGUgcmVtaXNlLiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjUyMiBidWlsdGluL3N0YXNoLmM6NjIxCittc2dpZCAiYXR0ZW1wdCB0byByZWNyZWF0ZSB0aGUgaW5kZXgiCittc2dzdHIgInRlbnRhdGl2ZSBkZSByZWNyw6llciBsJ2luZGV4IgorCisjOiBidWlsdGluL3N0YXNoLmM6NTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRyb3BwZWQgJXMgKCVzKSIKK21zZ3N0ciAiJXMgc3VwcHJpbcOpICglcykiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IENvdWxkIG5vdCBkcm9wIHN0YXNoIGVudHJ5IgorbXNnc3RyICIlc8KgOiBJbXBvc3NpYmxlIGRlIHN1cHByaW1lciBsJ8OpbMOpbWVudCBkZSBzdGFzaCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU4MworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHN0YXNoIHJlZmVyZW5jZSIKK21zZ3N0ciAiJyVzJyBuJ2VzdCBwYXMgdW5lIHLDqWbDqXJlbmNlIGRlIHJlbWlzYWdlIgorCisjOiBidWlsdGluL3N0YXNoLmM6NjMzIGdpdC1sZWdhY3ktc3Rhc2guc2g6Njk1Cittc2dpZCAiVGhlIHN0YXNoIGVudHJ5IGlzIGtlcHQgaW4gY2FzZSB5b3UgbmVlZCBpdCBhZ2Fpbi4iCittc2dzdHIgIiIKKyJMJ2VudHLDqWUgZGUgcmVtaXNhZ2UgZXN0IGNvbnNlcnbDqWUgYXUgY2FzIG/DuSB2b3VzIGVuIGF1cmlleiBlbmNvcmUgYmVzb2luLiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjY1NiBnaXQtbGVnYWN5LXN0YXNoLnNoOjcxMworbXNnaWQgIk5vIGJyYW5jaCBuYW1lIHNwZWNpZmllZCIKK21zZ3N0ciAiQXVjdW5lIGJyYW5jaGUgc3DDqWNpZmnDqWUiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo3OTYgYnVpbHRpbi9zdGFzaC5jOjgzMworIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgdXBkYXRlICVzIHdpdGggJXMiCittc2dzdHIgIkltcG9zc2libGUgZGUgbWV0dHJlIMOgIGpvdXIgJXMgYXZlYyAlcyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjgxNCBidWlsdGluL3N0YXNoLmM6MTQ3OCBidWlsdGluL3N0YXNoLmM6MTU0MworbXNnaWQgInN0YXNoIG1lc3NhZ2UiCittc2dzdHIgIm1lc3NhZ2UgcG91ciBsZSByZW1pc2FnZSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjgyNAorbXNnaWQgIlwiZ2l0IHN0YXNoIHN0b3JlXCIgcmVxdWlyZXMgb25lIDxjb21taXQ+IGFyZ3VtZW50IgorbXNnc3RyICJcImdpdCBzdGFzaCBzdG9yZVwiIGV4aWdlIHVuIGFyZ3VtZW50IDxjb21taXQ+IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTA0OSBnaXQtbGVnYWN5LXN0YXNoLnNoOjIxOAorbXNnaWQgIk5vIGNoYW5nZXMgc2VsZWN0ZWQiCittc2dzdHIgIkF1Y3VuIGNoYW5nZW1lbnQgc8OpbGVjdGlvbm7DqSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExNDkgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxNTAKK21zZ2lkICJZb3UgZG8gbm90IGhhdmUgdGhlIGluaXRpYWwgY29tbWl0IHlldCIKK21zZ3N0ciAiVm91cyBuJ2F2ZXogcGFzIGVuY29yZSBsYSB2YWxpZGF0aW9uIGluaXRpYWxlIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE3NiBnaXQtbGVnYWN5LXN0YXNoLnNoOjE2NQorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IGluZGV4IHN0YXRlIgorbXNnc3RyICJJbXBvc3NpYmxlIGRlIHNhdXZlciBsJ8OpdGF0IGNvdXJhbnQgZGUgbCdpbmRleCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExODUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxODAKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgdW50cmFja2VkIGZpbGVzIgorbXNnc3RyICJJbXBvc3NpYmxlIGRlIHNhdXZlciBsZXMgZmljaGllcnMgbm9uLXN1aXZpcyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExOTYgYnVpbHRpbi9zdGFzaC5jOjEyMDUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMDEKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjE0Cittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgd29ya3RyZWUgc3RhdGUiCittc2dzdHIgIkltcG9zc2libGUgZGUgc2F1dmVyIGwnw6l0YXQgY291cmFudCBkZSBsYSBjb3BpZSBkZSB0cmF2YWlsIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTIzMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjIzNAorbXNnaWQgIkNhbm5vdCByZWNvcmQgd29ya2luZyB0cmVlIHN0YXRlIgorbXNnc3RyICJJbXBvc3NpYmxlIGQnZW5yZWdpc3RyZXIgbCfDqXRhdCBkZSBsYSBjb3BpZSBkZSB0cmF2YWlsIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI4MiBnaXQtbGVnYWN5LXN0YXNoLnNoOjMzOAorbXNnaWQgIkNhbid0IHVzZSAtLXBhdGNoIGFuZCAtLWluY2x1ZGUtdW50cmFja2VkIG9yIC0tYWxsIGF0IHRoZSBzYW1lIHRpbWUiCittc2dzdHIgIiIKKyJJbXBvc3NpYmxlIGQndXRpbGlzZXIgLS1wYXRjaCBldCAtLWluY2x1ZGUtdW50cmFja2VkIG91IC0tYWxsIGVuIG3Dqm1lIHRlbXBzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI5OAorbXNnaWQgIkRpZCB5b3UgZm9yZ2V0IHRvICdnaXQgYWRkJz8iCittc2dzdHIgIlZvdXMgYXZleiBzw7tyZW1lbnQgb3VibGnDqSAnZ2l0IGFkZCcgPyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMTMgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNDYKK21zZ2lkICJObyBsb2NhbCBjaGFuZ2VzIHRvIHNhdmUiCittc2dzdHIgIlBhcyBkZSBtb2RpZmljYXRpb25zIGxvY2FsZXMgw6Agc2F1dmVyIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTMyMCBnaXQtbGVnYWN5LXN0YXNoLnNoOjM1MQorbXNnaWQgIkNhbm5vdCBpbml0aWFsaXplIHN0YXNoIgorbXNnc3RyICJJbXBvc3NpYmxlIGQnaW5pdGlhbGlzZXIgbGUgcmVtaXNhZ2UiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzM1IGdpdC1sZWdhY3ktc3Rhc2guc2g6MzU1Cittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgc3RhdHVzIgorbXNnc3RyICJJbXBvc3NpYmxlIGRlIHNhdXZlciBsJ8OpdGF0IGNvdXJhbnQiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzQwCisjLCBjLWZvcm1hdAorbXNnaWQgIlNhdmVkIHdvcmtpbmcgZGlyZWN0b3J5IGFuZCBpbmRleCBzdGF0ZSAlcyIKK21zZ3N0ciAiQXJicmUgZGUgdHJhdmFpbCBldCDDqXRhdCBkZSBsJ2luZGV4IHNhdXZlZ2FyZMOpcyBkYW5zICVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQzMCBnaXQtbGVnYWN5LXN0YXNoLnNoOjM4NQorbXNnaWQgIkNhbm5vdCByZW1vdmUgd29ya3RyZWUgY2hhbmdlcyIKK21zZ3N0ciAiSW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgbGVzIGNoYW5nZW1lbnRzIGRlIGxhIGNvcGllIGRlIHRyYXZhaWwiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDY5IGJ1aWx0aW4vc3Rhc2guYzoxNTM0Cittc2dpZCAia2VlcCBpbmRleCIKK21zZ3N0ciAiY29uc2VydmVyIGwnaW5kZXgiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDcxIGJ1aWx0aW4vc3Rhc2guYzoxNTM2Cittc2dpZCAic3Rhc2ggaW4gcGF0Y2ggbW9kZSIKK21zZ3N0ciAicmVtaXNlciB1bmUgbW9kZSBydXN0aW5lIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3MiBidWlsdGluL3N0YXNoLmM6MTUzNworbXNnaWQgInF1aWV0IG1vZGUiCittc2dzdHIgIm1vZGUgc2lsZW5jaWV1eCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NzQgYnVpbHRpbi9zdGFzaC5jOjE1MzkKK21zZ2lkICJpbmNsdWRlIHVudHJhY2tlZCBmaWxlcyBpbiBzdGFzaCIKK21zZ3N0ciAiaW5jbHVyZSBsZXMgZmljaGllcnMgbm9uIHN1aXZpcyBkYW5zIGxhIHJlbWlzZSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NzYgYnVpbHRpbi9zdGFzaC5jOjE1NDEKK21zZ2lkICJpbmNsdWRlIGlnbm9yZSBmaWxlcyIKK21zZ3N0ciAiaW5jbHVyZSBsZXMgZmljaGllcnMgaWdub3LDqXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNjAwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBleGVjICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnZXjDqWN1dGVyICVzIgorCiAjOiBidWlsdGluL3N0cmlwc3BhY2UuYzoxOAogbXNnaWQgImdpdCBzdHJpcHNwYWNlIFstcyB8IC0tc3RyaXAtY29tbWVudHNdIgogbXNnc3RyICJnaXQgc3RyaXBzcGFjZSBbLXMgfCAtLXN0cmlwLWNvbW1lbnRzXSIKQEAgLTE3MzY4LDUwICsyMTA0NSw1MCBAQAogbXNnaWQgImdpdCBzdHJpcHNwYWNlIFstYyB8IC0tY29tbWVudC1saW5lc10iCiBtc2dzdHIgImdpdCBzdHJpcHNwYWNlIFstYyB8IC0tY29tbWVudC1saW5lc10iCiAKLSM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM2CisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzozNwogbXNnaWQgInNraXAgYW5kIHJlbW92ZSBhbGwgbGluZXMgc3RhcnRpbmcgd2l0aCBjb21tZW50IGNoYXJhY3RlciIKIG1zZ3N0ciAiIgogInNhdXRlciBldCBzdXBwcmltZXIgdG91dGVzIGxlcyBsaWduZXMgY29tbWVuw6dhbnQgcGFyIGxlIGNhcmFjdMOocmUgZGUgIgogImNvbW1lbnRhaXJlIgogCi0jOiBidWlsdGluL3N0cmlwc3BhY2UuYzozOQorIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6NDAKIG1zZ2lkICJwcmVwZW5kIGNvbW1lbnQgY2hhcmFjdGVyIGFuZCBzcGFjZSB0byBlYWNoIGxpbmUiCiBtc2dzdHIgImFqb3V0ZXIgZGV2YW50IGNoYXF1ZSBsaWduZSBsZSBjYXJhY3TDqHJlIGRlIGNvbW1lbnRhaXJlIGV0IHVuIGVzcGFjZSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTM5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXhwZWN0aW5nIGEgZnVsbCByZWYgbmFtZSwgZ290ICVzIgogbXNnc3RyICJOb20gZGUgcsOpZsOpcmVuY2UgY29tcGxldCBhdHRlbmR1LCAlcyBvYnRlbnUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY0CiBtc2dpZCAic3VibW9kdWxlLS1oZWxwZXIgcHJpbnQtZGVmYXVsdC1yZW1vdGUgdGFrZXMgbm8gYXJndW1lbnRzIgogbXNnc3RyICJzdWJtb2R1bGUtLWhlbHBlciAgcHJpbnQtZGVmYXVsdC1yZW1vdGUgbidhY2NlcHRlIGF1Y3VuIGFyZ3VtZW50IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0cmlwIG9uZSBjb21wb25lbnQgb2ZmIHVybCAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN1cHByaW1lciB1biBjb21wb3NhbnQgZGUgbCdVUkwgJyVzJyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwNyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxMCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NQogbXNnaWQgImFsdGVybmF0aXZlIGFuY2hvciBmb3IgcmVsYXRpdmUgcGF0aHMiCiBtc2dzdHIgImFuY3JlIGFsdGVybmF0aXZlIHBvdXIgbGVzIGNoZW1pbnMgcmVsYXRpZnMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MTIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MTUKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbGlzdCBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGxpc3QgWy0tcHJlZml4PTxjaGVtaW4+XSBbPGNoZW1pbj4uLi5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDY5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2MjYKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NDkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYzMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJObyB1cmwgZm91bmQgZm9yIHN1Ym1vZHVsZSBwYXRoICclcycgaW4gLmdpdG1vZHVsZXMiCiBtc2dzdHIgIlVSTCBub24gdHJvdXbDqWUgcG91ciBsZSBjaGVtaW4gZGUgc291cy1tb2R1bGUgJyVzJyBkYW5zIC5naXRtb2R1bGVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTIxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkVudGVyaW5nICclcydcbiIKIG1zZ3N0ciAiRW50csOpZSBkYW5zICclcydcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyNAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicnVuX2NvbW1hbmQgcmV0dXJuZWQgbm9uLXplcm8gc3RhdHVzIGZvciAlc1xuIgpAQCAtMTc0MjAsNyArMjEwOTcsNyBAQAogInJ1bl9jb21tYW5kIGEgcmV0b3VybsOpIHVuIHN0YXR1dCBub24tbnVsIHBvdXIgJXNcbiIKICIuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTQ1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJydW5fY29tbWFuZCByZXR1cm5lZCBub24temVybyBzdGF0dXMgd2hpbGUgcmVjdXJzaW5nIGluIHRoZSBuZXN0ZWQgIgpAQCAtMTc0MzEsMjAgKzIxMTA4LDIwIEBACiAibW9kdWxlcyBpbmNsdXMgZGUgJXNcbiIKICIuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTYxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY1CiBtc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IG9mIGVudGVyaW5nIGVhY2ggc3VibW9kdWxlIGNvbW1hbmQiCiBtc2dzdHIgIiIKICJTdXBwcmltZXIgbGEgc29ydGllIGxvcnMgZGUgbCdlbnRyw6llIGRhbnMgY2hhcXVlIGNvbW1hbmRlIGRlIHNvdXMtbW9kdWxlIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTYzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDQ4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDYzCiBtc2dpZCAiUmVjdXJzZSBpbnRvIG5lc3RlZCBzdWJtb2R1bGVzIgogbXNnc3RyICJQYXJjb3VyaXIgcsOpY3Vyc2l2ZW1lbnQgbGVzIHNvdXMtbW9kdWxlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2OAotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIDxjb21tYW5kPiIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGZvcmVhY2ggWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gPGNoZW1pbj4iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTcyCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGZvcmVhY2ggWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWy0tXSA8Y29tbWFuZD4iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFstLV0gPGNvbW1hbmRlPiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU5NQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY291bGQgbm90IGxvb2sgdXAgY29uZmlndXJhdGlvbiAnJXMnLiBBc3N1bWluZyB0aGlzIHJlcG9zaXRvcnkgaXMgaXRzIG93biAiCkBAIC0xNzQ1Myw2MCArMjExMzAsNjAgQEAKICJpbXBvc3NpYmxlIGRlIHRyb3V2ZXIgbGEgY29uZmlndXJhdGlvbiAnJXMnLiBDZSBkw6lww7R0IGVzdCBjb25zaWTDqXLDqSBjb21tZSAiCiAic29uIHByb3ByZSBhbW9udCBkJ2F1dG9yaXTDqS4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NjMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHVybCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAiw4ljaGVjIGQnZW5yZWdpc3RyZW1lbnQgZGUgbCdVUkwgcG91ciBsZSBjaGVtaW4gZGUgc291cy1tb2R1bGUgJyVzJyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY2NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyAoJXMpIHJlZ2lzdGVyZWQgZm9yIHBhdGggJyVzJ1xuIgogbXNnc3RyICJTb3VzLW1vZHVsZSAnJXMnICglcykgZW5yZWdpc3Ryw6kgcG91ciBsZSBjaGVtaW4gJyVzJ1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njc3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGNvbW1hbmQgdXBkYXRlIG1vZGUgc3VnZ2VzdGVkIGZvciBzdWJtb2R1bGUgJyVzJ1xuIgogbXNnc3RyICIiCiAiYXR0ZW50aW9uwqA6IG5vdXMgdm91cyBzdWdnw6lyb25zIGRlIHNww6ljaWZpZXIgdW5lIGNvbW1hbmRlIGRlIG1vZGUgZGUgbWlzZSDDoCAiCiAiam91ciBwb3VyIGxlIHNvdXMtbW9kdWxlICclcydcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY4NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVnaXN0ZXIgdXBkYXRlIG1vZGUgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgIiIKICLDiWNoZWMgZCdlbnJlZ2lzdHJlbWVudCBkdSBtb2RlIGRlIG1pc2Ugw6Agam91ciBwb3VyIGxlIGNoZW1pbiBkZSBzb3VzLW1vZHVsZSAiCiAiJyVzJyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcwNgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcxMAogbXNnaWQgIlN1cHByZXNzIG91dHB1dCBmb3IgaW5pdGlhbGl6aW5nIGEgc3VibW9kdWxlIgogbXNnc3RyICJTdXBwcmltZXIgbGEgc29ydGllIGxvcnMgZGUgbCdpbml0aWFsaXNhdGlvbiBkJ3VuIHNvdXMtbW9kdWxlIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzExCi1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxwYXRoPl0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8Y2hlbWluPl0iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzE1Cittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxvcHRpb25zPl0gWzxwYXRoPl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8b3B0aW9ucz5dIFs8Y2hlbWluPl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3ODMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjc4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Ym1vZHVsZSBtYXBwaW5nIGZvdW5kIGluIC5naXRtb2R1bGVzIGZvciBwYXRoICclcyciCiBtc2dzdHIgIiIKICJQYXMgZGUgbWlzZSBlbiBjb3JyZXNwb25kYW5jZSBkdSBzb3VzLW1vZHVsZSB0cm91dsOpIGRhbnMgLmdpdG1vZHVsZXMgcG91ciBsZSAiCiAiY2hlbWluICclcyciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4MjIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgSEVBRCByZWYgaW5zaWRlIHRoZSBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByw6lzb3VkcmUgSEVBRCBkYW5zIGxlIHNvdXMtbW9kdWxlICclcyciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NDkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMTgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NjQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAicsOpY3Vyc2lvbiBpbXBvc3NpYmxlIGRhbnMgbGUgc291cy1tb2R1bGUgJyVzJyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg3MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg4OCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE5OQogbXNnaWQgIlN1cHByZXNzIHN1Ym1vZHVsZSBzdGF0dXMgb3V0cHV0IgogbXNnc3RyICJzdXBwcmltZXIgbGEgc29ydGllIGQnw6l0YXQgZHUgc291cy1tb2R1bGUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODkKIG1zZ2lkICIiCiAiVXNlIGNvbW1pdCBzdG9yZWQgaW4gdGhlIGluZGV4IGluc3RlYWQgb2YgdGhlIG9uZSBzdG9yZWQgaW4gdGhlIHN1Ym1vZHVsZSAiCiAiSEVBRCIKQEAgLTE3NTE0LDQ4ICsyMTE5MSw0OCBAQAogIlV0aWxpc2VyIGxlIGNvbW1pdCBzdG9ja8OpIGRhbnMgbCdpbmRleCBhdSBsaWV1IGRlIGNlbHVpIHN0b2Nrw6kgZGFucyBsYSBIRUFEICIKICJkdSBzb3VzLW1vZHVsZSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg3NQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg5MAogbXNnaWQgInJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKIG1zZ3N0ciAicGFyY291cmlyIHLDqWN1cnNpdmVtZW50IGxlcyBzb3VzLW1vZHVsZXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4OTUKIG1zZ2lkICJnaXQgc3VibW9kdWxlIHN0YXR1cyBbLS1xdWlldF0gWy0tY2FjaGVkXSBbLS1yZWN1cnNpdmVdIFs8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgc3VibW9kdWxlIHN0YXR1cyBbLS1xdWlldF0gWy0tY2FjaGVkXSBbLS1yZWN1cnNpdmVdIFs8Y2hlbWluPi4uLl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5MDQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5MTkKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbmFtZSA8cGF0aD4iCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciA8bm9tPiA8Y2hlbWluPiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk2OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJTeW5jaHJvbml6aW5nIHN1Ym1vZHVsZSB1cmwgZm9yICclcydcbiIKIG1zZ3N0ciAiU3luY2hyb25pc2F0aW9uIGRlIGwnVVJMIHNvdXMtbW9kdWxlIHBvdXIgJyVzJ1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTc0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWdpc3RlciB1cmwgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgIsOpY2hlYyBkJ2VucmVnaXN0cmVtZW50IGRlIGwnVVJMIHBvdXIgbGUgY2hlbWluIGRlIHNvdXMtbW9kdWxlICclcyciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5ODgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBnZXQgdGhlIGRlZmF1bHQgcmVtb3RlIGZvciBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiw6ljaGVjIGQnb2J0ZW50aW9uIGR1IGTDqXDDtHQgZGlzdGFudCBwYXIgZMOpZmF1dCBwb3VyIGxlIHNvdXMtbW9kdWxlICclcyciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5OTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byB1cGRhdGUgcmVtb3RlIGZvciBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiw6ljaGVjIGRlIG1pc2Ugw6Agam91ciBkdSBkw6lww7R0IGRpc3RhbnQgcG91ciBsZSBzb3VzLW1vZHVsZSAnJXMnIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA0NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNjEKIG1zZ2lkICJTdXBwcmVzcyBvdXRwdXQgb2Ygc3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIgogbXNnc3RyICIiCiAiU3VwcHJpbWVyIGxhIHNvcnRpZSBsb3JzIGRlIGxhIHN5bmNocm9uaXNhdGlvbiBkZSBsJ1VSTCBkJ3VuIHNvdXMtbW9kdWxlIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA1MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNjgKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgc3luYyBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbPHBhdGg+XSIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHN5bmMgWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWzxjaGVtaW4+XSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMDcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgd29yayB0cmVlICclcycgY29udGFpbnMgYSAuZ2l0IGRpcmVjdG9yeSAodXNlICdybSAtcmYnIGlmIHlvdSAiCkBAIC0xNzU2NSw3ICsyMTI0Miw3IEBACiAiJ3JtIC1yZicgc2kgdm91cyB2b3VsZXogdnJhaW1lbnQgbGUgc3VwcHJpbWVyIGVuIGluY2x1YW50IHRvdXQgc29uICIKICJoaXN0b3JpcXVlKSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgd29yayB0cmVlICclcycgY29udGFpbnMgbG9jYWwgbW9kaWZpY2F0aW9uczsgdXNlICctZicgdG8gZGlzY2FyZCAiCkBAIC0xNzU3NCwxNzkgKzIxMjUxLDIwOCBAQAogIkwnYXJicmUgZGUgdHJhdmFpbCBkdSBzb3VzLW1vZHVsZSAnJXMnIGNvbnRpZW50IGRlcyBtb2RpZmljYXRpb25zIGxvY2FsZXMgOyAiCiAidXRpbGlzZXogJy1mJyBwb3VyIGxlcyBhbm51bGVyIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2xlYXJlZCBkaXJlY3RvcnkgJyVzJ1xuIgogbXNnc3RyICJSw6lwZXJ0b2lyZSAnJXMnIG5ldHRvecOpXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTI5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIHN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJ1xuIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHN1cHByaW1lciBsJ2FyYnJlIGRlIHRyYXZhaWwgZHUgc291cy1tb2R1bGUgJyVzJ1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEzOAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBlbXB0eSBzdWJtb2R1bGUgZGlyZWN0b3J5ICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciBsZSByw6lwZXJ0b2lyZSB2aWRlIGR1IHNvdXMtbW9kdWxlICVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE1NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlICclcycgKCVzKSB1bnJlZ2lzdGVyZWQgZm9yIHBhdGggJyVzJ1xuIgogbXNnc3RyICJTb3VzLW1vZHVsZSAnJXMnICglcykgbm9uIGVucmVnaXN0csOpIHBvdXIgbGUgY2hlbWluICclcydcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjAwCiBtc2dpZCAiUmVtb3ZlIHN1Ym1vZHVsZSB3b3JraW5nIHRyZWVzIGV2ZW4gaWYgdGhleSBjb250YWluIGxvY2FsIGNoYW5nZXMiCiBtc2dzdHIgIiIKICLDiWxpbWluZXIgbGVzIGFyYnJlcyBkZSB0cmF2YWlsIGRlcyBzb3VzLW1vZHVsZXMgbcOqbWUgcydpbHMgY29udGllbm5lbnQgZGVzICIKICJtb2RpZmljYXRpb25zIGxvY2FsZXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTg0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIwMQogbXNnaWQgIlVucmVnaXN0ZXIgYWxsIHN1Ym1vZHVsZXMiCiBtc2dzdHIgIkTDqXNlbnJlZ2lzdHJlciB0b3VzIGxlcyBzb3VzLW1vZHVsZXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTg5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIwNgogbXNnaWQgIiIKICJnaXQgc3VibW9kdWxlIGRlaW5pdCBbLS1xdWlldF0gWy1mIHwgLS1mb3JjZV0gWy0tYWxsIHwgWy0tXSBbPHBhdGg+Li4uXV0iCiBtc2dzdHIgIiIKICJnaXQgc3VibW9kdWxlIGRlaW5pdCBbLS1xdWlldF0gWy1mIHwgLS1mb3JjZV0gWy0tYWxsIHwgWy0tXSBbPGNoZW1pbj4uLi5dXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjIwCiBtc2dpZCAiVXNlICctLWFsbCcgaWYgeW91IHJlYWxseSB3YW50IHRvIGRlaW5pdGlhbGl6ZSBhbGwgc3VibW9kdWxlcyIKIG1zZ3N0ciAiIgogIlV0aWxpc2V6ICctLWFsbCcgc2kgdm91cyB2b3VsZXogdnJhaW1lbnQgcsOpaW5pdGlhbGlzZXIgdG91cyBsZXMgc291cy1tb2R1bGVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTI5NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMwMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyODkKK21zZ2lkICIiCisiQW4gYWx0ZXJuYXRlIGNvbXB1dGVkIGZyb20gYSBzdXBlcnByb2plY3QncyBhbHRlcm5hdGUgaXMgaW52YWxpZC5cbiIKKyJUbyBhbGxvdyBHaXQgdG8gY2xvbmUgd2l0aG91dCBhbiBhbHRlcm5hdGUgaW4gc3VjaCBhIGNhc2UsIHNldFxuIgorInN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IHRvICdpbmZvJyBvciwgZXF1aXZhbGVudGx5LCBjbG9uZSB3aXRoXG4iCisiJy0tcmVmZXJlbmNlLWlmLWFibGUnIGluc3RlYWQgb2YgJy0tcmVmZXJlbmNlJy4iCittc2dzdHIgIiIKKyJVbmUgYWx0ZXJuYXRpdmUgY2FsY3Vsw6llIGRlcHVpcyBsJ2FsdGVybmF0aXZlIGR1IHN1cGVyLXByb2pldCBlc3QgaW52YWxpZGUuXG4iCisiUG91ciBwZXJtZXR0cmUgw6AgR2l0IGRlIGNsb25lciBzYW5zIGFsdGVybmF0aXZlIGRhbnMgdW4gdGVsIGNhcywgcsOpZ2xlelxuIgorInN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IMOgICdpbmZvJywgb3UgZGUgbWFuacOocmUgw6lxdWl2YWxlbnRlLFxuIgorImNsb25leiBhdmVjICctLXJlZmVyZW5jZS1pZi1hYmxlJyBhdSBsaWV1IGRlICctLXJlZmVyZW5jZScuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMyOCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgJyVzJyBjYW5ub3QgYWRkIGFsdGVybmF0ZTogJXMiCiBtc2dzdHIgImxlIHNvdXMtbW9kdWxlICclcycgbmUgcGV1dCBwYXMgYWpvdXRlciBkJ2FsdGVybmF0aXZlwqA6ICVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMzNgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVmFsdWUgJyVzJyBmb3Igc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgaXMgbm90IHJlY29nbml6ZWQiCiBtc2dzdHIgIiIKICJMYSB2YWxldXIgJyVzJyBwb3VyIHN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IG4nZXN0IHBhcyByZWNvbm51ZSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNDMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlZhbHVlICclcycgZm9yIHN1Ym1vZHVsZS5hbHRlcm5hdGVMb2NhdGlvbiBpcyBub3QgcmVjb2duaXplZCIKIG1zZ3N0ciAiTGEgdmFsZXVyICclcycgcG91ciBzdWJtb2R1bGUuYWx0ZXJuYXRlTG9jYXRpb24gbidlc3QgcGFzIHJlY29ubnVlIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzOTgKIG1zZ2lkICJ3aGVyZSB0aGUgbmV3IHN1Ym1vZHVsZSB3aWxsIGJlIGNsb25lZCB0byIKIG1zZ3N0ciAiZW1wbGFjZW1lbnQgb8O5IGxlIHNvdXMtbW9kdWxlIHNlcmEgY2xvbsOpIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDEKIG1zZ2lkICJuYW1lIG9mIHRoZSBuZXcgc3VibW9kdWxlIgogbXNnc3RyICJub20gZHUgbm91dmVhdSBzb3VzLW1vZHVsZSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA0CiBtc2dpZCAidXJsIHdoZXJlIHRvIGNsb25lIHRoZSBzdWJtb2R1bGUgZnJvbSIKIG1zZ3N0ciAiVVJMIGRlcHVpcyBsYXF1ZWxsZSBjbG9uZXIgbGUgc291cy1tb2R1bGUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzgwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxMgogbXNnaWQgImRlcHRoIGZvciBzaGFsbG93IGNsb25lcyIKIG1zZ3N0ciAicHJvZm9uZGV1ciBkZSBsJ2hpc3RvcmlxdWUgZGVzIGNsb25lcyBzdXBlcmZpY2llbHMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzgzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxNSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyNAogbXNnaWQgImZvcmNlIGNsb25pbmcgcHJvZ3Jlc3MiCiBtc2dzdHIgImZvcmNlciBsJ2FmZmljaGFnZSBkZSBsYSBwcm9ncmVzc2lvbiBkdSBjbG9uYWdlIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjYKK21zZ2lkICJkaXNhbGxvdyBjbG9uaW5nIGludG8gbm9uLWVtcHR5IGRpcmVjdG9yeSIKK21zZ3N0ciAiaW50ZXJkaXJlIGRlIGNsb25lciBkYW5zIHVuIHLDqXBlcnRvaXJlIG5vbi12aWRlIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQyNAogbXNnaWQgIiIKICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY2xvbmUgWy0tcHJlZml4PTxwYXRoPl0gWy0tcXVpZXRdIFstLXJlZmVyZW5jZSAiCi0iPHJlcG9zaXRvcnk+XSBbLS1uYW1lIDxuYW1lPl0gWy0tZGVwdGggPGRlcHRoPl0gLS11cmwgPHVybD4gLS1wYXRoIDxwYXRoPiIKKyI8cmVwb3NpdG9yeT5dIFstLW5hbWUgPG5hbWU+XSBbLS1kZXB0aCA8ZGVwdGg+XSBbLS1zaW5nbGUtYnJhbmNoXSAtLXVybCAiCisiPHVybD4gLS1wYXRoIDxwYXRoPiIKIG1zZ3N0ciAiIgogImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg9PGNoZW1pbj5dIFstLXF1aWV0XSBbLS1yZWZlcmVuY2UgIgotIjxkw6lww7R0Pl0gWy0tbmFtZSA8bm9tPl0gWy0tZGVwdGggPHByb2ZvbmRldXI+XSAgLS11cmwgPHVybD4gLS1wYXRoIDxjaGVtaW4+IgorIjxkw6lww7R0Pl0gWy0tbmFtZSA8bm9tPl0gWy0tZGVwdGggPHByb2ZvbmRldXI+XSBbLS1zaW5nbGUtYnJhbmNoXSAtLXVybCA8dXJsPiAiCisiLS1wYXRoIDxjaGVtaW4+IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmdXNpbmcgdG8gY3JlYXRlL3VzZSAnJXMnIGluIGFub3RoZXIgc3VibW9kdWxlJ3MgZ2l0IGRpciIKK21zZ3N0ciAiIgorInJlZnVzIGRlIGNyw6llci91dGlsaXNlciAnJXMnIGRhbnMgdW4gcsOpcGVydG9pcmUgZ2l0IGQndW4gYXV0cmUgc291cy1tb2R1bGUiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNsb25lIG9mICclcycgaW50byBzdWJtb2R1bGUgcGF0aCAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiTGUgY2xvbmFnZSBkZSAnJXMnIGRhbnMgbGUgY2hlbWluIGRlIHNvdXMtbW9kdWxlICclcycgYSDDqWNob3XDqSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MzMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDY0CisjLCBjLWZvcm1hdAorbXNnaWQgImRpcmVjdG9yeSBub3QgZW1wdHk6ICclcyciCittc2dzdHIgImxlIHLDqXBlcnRvaXJlIG4nZXN0IHBhcyB2aWRlIDogJyVzJyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCBzdWJtb2R1bGUgZGlyZWN0b3J5IGZvciAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciBsZSByw6lwZXJ0b2lyZSBkZSBzb3VzLW1vZHVsZSBwb3VyICclcyciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTUxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHVwZGF0ZSBtb2RlICclcycgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgIm1vZGUgZGUgbWlzZSDDoCBqb3VyICclcycgaW52YWxpZGUgcG91ciBsZSBjaGVtaW4gZGUgc291cy1tb2R1bGUgJyVzJyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NzMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBjb25maWd1cmVkIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICIiCiAiTW9kZSBkZSBtaXNlIMOgIGpvdXIgJyVzJ2ludmFsaWRlIGNvbmZpZ3Vyw6kgcG91ciBsZSBjaGVtaW4gZGUgc291cy1tb2R1bGUgJyVzJyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1NjYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICclcycgbm90IGluaXRpYWxpemVkIgogbXNnc3RyICJMZSBjaGVtaW4gZGUgc291cy1tb2R1bGUgJyVzJyBuJ2VzdCBwYXMgaW5pdGlhbGlzw6kiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTcwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYyMQogbXNnaWQgIk1heWJlIHlvdSB3YW50IHRvIHVzZSAndXBkYXRlIC0taW5pdCc/IgogbXNnc3RyICJWb3VzIHZvdWRyaWV6IHPDu3JlbWVudCB1dGlsaXNlciAndXBkYXRlIC0taW5pdCfCoD8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjAwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTY1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyB1bm1lcmdlZCBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIlNvdXMtbW9kdWxlIG5vbiBmdXNpb25uw6kgJXMgbm9uIHRyYWl0w6kiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjI5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTY4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiU291cy1tb2R1bGUgJyVzJyBub24gdHJhaXTDqSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3NzMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBjbG9uZSAnJXMnLiBSZXRyeSBzY2hlZHVsZWQiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgY2xvbmVyICclcycuIFLDqWVzc2FpIHByw6l2dSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3ODQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBjbG9uZSAnJXMnIGEgc2Vjb25kIHRpbWUsIGFib3J0aW5nIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIGNsb25lciAnJXMnIHBvdXIgbGEgc2Vjb25kZSBmb2lzLCBhYmFuZG9uIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA4OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNDkKIG1zZ2lkICJwYXRoIGludG8gdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiY2hlbWluIGRhbnMgbGEgY29waWUgZGUgdHJhdmFpbCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTA2CiBtc2dpZCAicGF0aCBpbnRvIHRoZSB3b3JraW5nIHRyZWUsIGFjcm9zcyBuZXN0ZWQgc3VibW9kdWxlIGJvdW5kYXJpZXMiCiBtc2dzdHIgIiIKICJjaGVtaW4gZGFucyBsYSBjb3BpZSBkZSB0cmF2YWlsLCB0cmF2ZXJzYW50IGxlcyBmcm9udGnDqHJlcyBkZSBzb3VzLW1vZHVsZXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxMAogbXNnaWQgInJlYmFzZSwgbWVyZ2UsIGNoZWNrb3V0IG9yIG5vbmUiCiBtc2dzdHIgInZhbGV1cnMgcG9zc2libGVzwqA6IHJlYmFzZSwgbWVyZ2UsIGNoZWNrb3V0IG91IG5vbmUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODYwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxNgogbXNnaWQgIkNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgdHJ1bmNhdGVkIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHJldmlzaW9ucyIKIG1zZ3N0ciAiQ3LDqWVyIHVuIGNsb25lIHN1cGVyZmljaWVsIHRyb25xdcOpIGF1IG5vbWJyZSBkZSByw6l2aXNpb25zIHNww6ljaWZpw6kiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODYzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxOQogbXNnaWQgInBhcmFsbGVsIGpvYnMiCiBtc2dzdHIgImpvYnMgcGFyYWxsw6hsZXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyMQogbXNnaWQgIndoZXRoZXIgdGhlIGluaXRpYWwgY2xvbmUgc2hvdWxkIGZvbGxvdyB0aGUgc2hhbGxvdyByZWNvbW1lbmRhdGlvbiIKIG1zZ3N0ciAic3DDqWNpZmllIHNpIGxlIGNsb25hZ2UgaW5pdGlhbCBkb2l0IMOqdHJlIGF1c3NpIHN1cGVyZmljaWVsIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjIKIG1zZ2lkICJkb24ndCBwcmludCBjbG9uaW5nIHByb2dyZXNzIgogbXNnc3RyICJuZSBwYXMgYWZmaWNoZXIgbGEgcHJvZ3Jlc3Npb24gZHUgY2xvbmFnZSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NzMKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgdXBkYXRlX2Nsb25lIFstLXByZWZpeD08cGF0aD5dIFs8cGF0aD4uLi5dIgotbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgdXBkYXRlX2Nsb25lIFstLXByZWZpeD08Y2hlbWluPl0gWzxjaGVtaW4+Li4uXSIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTMzCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PGNoZW1pbj5dIFs8Y2hlbWluPi4uLl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODg2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk0NgogbXNnaWQgImJhZCB2YWx1ZSBmb3IgdXBkYXRlIHBhcmFtZXRlciIKIG1zZ3N0ciAidmFsZXVyIGludmFsaWRlIHBvdXIgbGEgbWlzZSDDoCBqb3VyIGR1IHBhcmFtw6h0cmUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTM0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk5NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiU3VibW9kdWxlICglcykgYnJhbmNoIGNvbmZpZ3VyZWQgdG8gaW5oZXJpdCBicmFuY2ggZnJvbSBzdXBlcnByb2plY3QsIGJ1dCAiCkBAIC0xNzc1NSw0MyArMjE0NjEsNTEgQEAKICJsYSBicmFuY2hlIGR1IHNvdXMtbW9kdWxlICVzIGVzdCBjb25maWd1csOpZSBwb3VyIGjDqXJpdGVyIGRlIGxhIGJyYW5jaGUgZHUgIgogInN1cGVycHJvamV0LCBtYWlzIGxlIHN1cGVycHJvamV0IG4nZXN0IHN1ciBhdWN1bmUgYnJhbmNoZSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwNTcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBnZXQgYSByZXBvc2l0b3J5IGhhbmRsZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgdHJvdXZlciB1bmUgcG9pZ27DqWUgZGUgZMOpcMO0dCBwb3VyIGxlIHNvdXMtbW9kdWxlICclcyciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDkwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1MAogbXNnaWQgInJlY3Vyc2UgaW50byBzdWJtb2R1bGVzIgogbXNnc3RyICJwYXJjb3VyaXIgcsOpY3Vyc2l2ZW1lbnQgbGVzIHNvdXMtbW9kdWxlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwOTYKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZW1iZWQtZ2l0LWRpciBbPHBhdGg+Li4uXSIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGVtYmVkLWdpdC1kaXIgWzxjaGVtaW4+Li4uXSIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTU2Cittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGFic29yYi1naXQtZGlycyBbPG9wdGlvbnM+XSBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGVtYmVkLWdpdC1kaXIgWzxvcHRpb25zPl0gWzxjaGVtaW4+Li4uXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjEyCiBtc2dpZCAiY2hlY2sgaWYgaXQgaXMgc2FmZSB0byB3cml0ZSB0byB0aGUgLmdpdG1vZHVsZXMgZmlsZSIKIG1zZ3N0ciAidsOpcmlmaWVyIHNpIMOpY3JpcmUgZGFucyBsZSBmaWNoaWVyIC5naXRtb2R1bGVzIGVzdCBzdXIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTU3Ci1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyBuYW1lIFt2YWx1ZV0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgbmFtZSBbdmFsZXVyXSIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjE1Cittc2dpZCAidW5zZXQgdGhlIGNvbmZpZyBpbiB0aGUgLmdpdG1vZHVsZXMgZmlsZSIKK21zZ3N0ciAiZMOpc2FjdGl2ZXIgbGEgY29uZmlndXJhdGlvbiBkYW5zIGxlIGZpY2hpZXIgLmdpdG1vZHVsZXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTU4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyMAorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgPG5hbWU+IFs8dmFsdWU+XSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyBuYW1lIFs8dmFsZXVyPl0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjIxCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLXVuc2V0IDxuYW1lPiIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLXVuc2V0IDxub20+IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyMgogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS1jaGVjay13cml0ZWFibGUiCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS1jaGVjay13cml0ZWFibGUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTc1IGdpdC1zdWJtb2R1bGUuc2g6MTY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI0MSBnaXQtc3VibW9kdWxlLnNoOjE3NAogIywgc2gtZm9ybWF0CiBtc2dpZCAicGxlYXNlIG1ha2Ugc3VyZSB0aGF0IHRoZSAuZ2l0bW9kdWxlcyBmaWxlIGlzIGluIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKLSJ2ZXVpbGxleiB2b3VzIGFzc3VyZXIgcXVlIGxlIGZpY2hpZXIgLmdpdG1vZHVsZXMgZGFucyBsJ2FyYnJlIGRlIHRyYXZhaWwiCisidmV1aWxsZXogdm91cyBhc3N1cmVyIHF1ZSBsZSBmaWNoaWVyIC5naXRtb2R1bGVzIGVzdCBkYW5zIGwnYXJicmUgZGUgdHJhdmFpbCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjkxIGdpdC5jOjQzMyBnaXQuYzo2ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lc24ndCBzdXBwb3J0IC0tc3VwZXItcHJlZml4IgogbXNnc3RyICIlcyBuZSBnw6hyZSBwYXMgLS1zdXBlci1wcmVmaXgiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjMxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI5NwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHN1Ym1vZHVsZS0taGVscGVyIHN1YmNvbW1hbmQiCiBtc2dzdHIgIiclcycgbidlc3QgcGFzIHVuZSBzb3VzLWNvbW1hbmRlIHZhbGlkZSBkZSBzdWJtb2R1bGUtLWhlbHBlciIKQEAgLTE3ODI3LDE3ICsyMTU0MSwxNyBAQAogCiAjOiBidWlsdGluL3RhZy5jOjI1CiBtc2dpZCAiIgotImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8a2V5LWlkPl0gWy1mXSBbLW0gPG1zZz4gfCAtRiA8ZmlsZT5dIDx0YWduYW1lPiAiCi0iWzxoZWFkPl0iCisiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA8bXNnPiB8IC1GIDxmaWxlPl1cbiIKKyJcdFx0PHRhZ25hbWU+IFs8aGVhZD5dIgogbXNnc3RyICIiCi0iZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxpZC1jbMOpPl0gWy1mXSBbLW0gPG1lc3NhZ2U+IHwgLUYgPGZpbGU+XSA8bm9tLSIKLSLDqXRpcXVldHRlPiBbPGhlYWQ+XSIKKyJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPGlkLWNsw6k+XSBbLWZdIFstbSA8bWVzc2FnZT4gfCAtRiA8ZmljaGllcj5dXG4iCisiXHRcdDxub20tw6l0aXF1ZXR0ZT4gWzxoZWFkPl0iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjYKKyM6IGJ1aWx0aW4vdGFnLmM6MjcKIG1zZ2lkICJnaXQgdGFnIC1kIDx0YWduYW1lPi4uLiIKIG1zZ3N0ciAiZ2l0IHRhZyAtZCA8bm9tw6l0aXF1ZXR0ZT4uLi4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjcKKyM6IGJ1aWx0aW4vdGFnLmM6MjgKIG1zZ2lkICIiCiAiZ2l0IHRhZyAtbCBbLW5bPG51bT5dXSBbLS1jb250YWlucyA8Y29tbWl0Pl0gWy0tbm8tY29udGFpbnMgPGNvbW1pdD5dIFstLSIKICJwb2ludHMtYXQgPG9iamVjdD5dXG4iCkBAIC0xNzg0NywyMSArMjE1NjEsMjEgQEAKICJwb2ludHMtYXQgPG9iamV0Pl1cbiIKICJcdFx0Wy0tZm9ybWF0PTxmb3JtYXQ+XSBbLS1bbm8tXW1lcmdlZCBbPGNvbW1pdD5dXSBbPG1vdGlmPi4uLl0iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjkKKyM6IGJ1aWx0aW4vdGFnLmM6MzAKIG1zZ2lkICJnaXQgdGFnIC12IFstLWZvcm1hdD08Zm9ybWF0Pl0gPHRhZ25hbWU+Li4uIgogbXNnc3RyICJnaXQgdGFnIC12IFstLWZvcm1hdD08Zm9ybWF0Pl0gPG5vbcOpdGlxdWV0dGU+Li4uIgogCi0jOiBidWlsdGluL3RhZy5jOjg3CisjOiBidWlsdGluL3RhZy5jOjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIG5vdCBmb3VuZC4iCiBtc2dzdHIgIsOpdGlxdWV0dGUgJyVzJyBub24gdHJvdXbDqWUuIgogCi0jOiBidWlsdGluL3RhZy5jOjEwMworIzogYnVpbHRpbi90YWcuYzoxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCB0YWcgJyVzJyAod2FzICVzKVxuIgogbXNnc3RyICLDiXRpcXVldHRlICclcycgc3VwcHJpbcOpZSAoZWxsZSDDqXRhaXQgc3VyICVzKVxuIgogCi0jOiBidWlsdGluL3RhZy5jOjEzMworIzogYnVpbHRpbi90YWcuYzoxMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTc4NzQsNyArMjE1ODgsNyBAQAogIiAgJXNcbiIKICJMZXMgbGlnbmVzIGNvbW1lbsOnYW50IHBhciAnJWMnIHNlcm9udCBpZ25vcsOpZXMuXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTM3CisjOiBidWlsdGluL3RhZy5jOjEzOQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC0xNzg4OSwzNTkgKzIxNjAzLDM3OCBAQAogIkxlcyBsaWduZXMgY29tbWVuw6dhbnQgcGFyICclYycgc2Vyb250IGdhcmTDqWVzIDsgdm91cyBwb3V2ZXogbGVzIHJldGlyZXIgdm91cy0iCiAibcOqbWUgc2kgdm91cyBsZSBzb3VoYWl0ZXouXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTkxCisjOiBidWlsdGluL3RhZy5jOjE5OAogbXNnaWQgInVuYWJsZSB0byBzaWduIHRoZSB0YWciCiBtc2dzdHIgImltcG9zc2libGUgZGUgc2lnbmVyIGwnw6l0aXF1ZXR0ZSIKIAotIzogYnVpbHRpbi90YWcuYzoxOTMKKyM6IGJ1aWx0aW4vdGFnLmM6MjAwCiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRhZyBmaWxlIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBmaWNoaWVyIGQnw6l0aXF1ZXR0ZXMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjE4CisjOiBidWlsdGluL3RhZy5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGhhdmUgY3JlYXRlZCBhIG5lc3RlZCB0YWcuIFRoZSBvYmplY3QgcmVmZXJyZWQgdG8gYnkgeW91ciBuZXcgdGFnIGlzXG4iCisiYWxyZWFkeSBhIHRhZy4gSWYgeW91IG1lYW50IHRvIHRhZyB0aGUgb2JqZWN0IHRoYXQgaXQgcG9pbnRzIHRvLCB1c2U6XG4iCisiXG4iCisiXHRnaXQgdGFnIC1mICVzICVzXnt9IgorbXNnc3RyICIiCisiVm91cyBhdmV6IGNyw6nDqSB1bmUgw6l0aXF1ZXR0ZSBuaWNow6llLiBMJ29iamV0IHBvaW50w6kgcGFyIHZvdHJlIG5vdXZlbGxlICIKKyLDqXRpcXVldHRlXG4iCisiZXN0IGTDqWrDoCB1bmUgw6l0aXF1ZXR0ZS4gU2kgdm91cyB2b3VsaWV6IMOpdGlxdWV0ZXIgbCdvYmpldCBwb2ludMOpLCAiCisidXRpbGlzZXrCoDpcbiIKKyJcbiIKKyJcdGdpdCB0YWcgLWYgJXMgJXNee30iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjMyCiBtc2dpZCAiYmFkIG9iamVjdCB0eXBlLiIKIG1zZ3N0ciAibWF1dmFpcyB0eXBlIGQnb2JqZXQuIgogCi0jOiBidWlsdGluL3RhZy5jOjI2NworIzogYnVpbHRpbi90YWcuYzoyODQKIG1zZ2lkICJubyB0YWcgbWVzc2FnZT8iCiBtc2dzdHIgInBhcyBkZSBtZXNzYWdlIHBvdXIgbCfDqXRpcXVldHRlID8iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mjc0CisjOiBidWlsdGluL3RhZy5jOjI5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgdGFnIG1lc3NhZ2UgaGFzIGJlZW4gbGVmdCBpbiAlc1xuIgogbXNnc3RyICJMZSBtZXNzYWdlIHBvdXIgbCfDqXRpcXVldHRlIGEgw6l0w6kgbGFpc3PDqSBkYW5zICVzXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzg1CisjOiBidWlsdGluL3RhZy5jOjQwMgogbXNnaWQgImxpc3QgdGFnIG5hbWVzIgogbXNnc3RyICJhZmZpY2hlciBsZXMgbm9tcyBkZXMgw6l0aXF1ZXR0ZXMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzg3CisjOiBidWlsdGluL3RhZy5jOjQwNAogbXNnaWQgInByaW50IDxuPiBsaW5lcyBvZiBlYWNoIHRhZyBtZXNzYWdlIgogbXNnc3RyICJhZmZpY2hlIDxuPiBsaWduZXMgZGUgY2hhcXVlIG1lc3NhZ2UgZCfDqXRpcXVldHRlIgogCi0jOiBidWlsdGluL3RhZy5jOjM4OQorIzogYnVpbHRpbi90YWcuYzo0MDYKIG1zZ2lkICJkZWxldGUgdGFncyIKIG1zZ3N0ciAic3VwcHJpbWVyIGRlcyDDqXRpcXVldHRlcyIKIAotIzogYnVpbHRpbi90YWcuYzozOTAKKyM6IGJ1aWx0aW4vdGFnLmM6NDA3CiBtc2dpZCAidmVyaWZ5IHRhZ3MiCiBtc2dzdHIgInbDqXJpZmllciBkZXMgw6l0aXF1ZXR0ZXMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MzkyCisjOiBidWlsdGluL3RhZy5jOjQwOQogbXNnaWQgIlRhZyBjcmVhdGlvbiBvcHRpb25zIgogbXNnc3RyICJPcHRpb25zIGRlIGNyw6lhdGlvbiBkZSBsJ8OpdGlxdWV0dGUiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzk0CisjOiBidWlsdGluL3RhZy5jOjQxMQogbXNnaWQgImFubm90YXRlZCB0YWcsIG5lZWRzIGEgbWVzc2FnZSIKIG1zZ3N0ciAiw6l0aXF1ZXR0ZSBhbm5vdMOpZSwgbsOpY2Vzc2l0ZSB1biBtZXNzYWdlIgogCi0jOiBidWlsdGluL3RhZy5jOjM5NgorIzogYnVpbHRpbi90YWcuYzo0MTMKIG1zZ2lkICJ0YWcgbWVzc2FnZSIKIG1zZ3N0ciAibWVzc2FnZSBwb3VyIGwnw6l0aXF1ZXR0ZSIKIAotIzogYnVpbHRpbi90YWcuYzozOTgKKyM6IGJ1aWx0aW4vdGFnLmM6NDE1CiBtc2dpZCAiZm9yY2UgZWRpdCBvZiB0YWcgbWVzc2FnZSIKIG1zZ3N0ciAiZm9yY2VyIGwnw6lkaXRpb24gZHUgbWVzc2FnZSBkJ8OpdGlxdWV0YWdlIgogCi0jOiBidWlsdGluL3RhZy5jOjM5OQorIzogYnVpbHRpbi90YWcuYzo0MTYKIG1zZ2lkICJhbm5vdGF0ZWQgYW5kIEdQRy1zaWduZWQgdGFnIgogbXNnc3RyICLDqXRpcXVldHRlIGFubm90w6llIGV0IHNpZ27DqWUgYXZlYyBHUEciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDAzCisjOiBidWlsdGluL3RhZy5jOjQxOQogbXNnaWQgInVzZSBhbm90aGVyIGtleSB0byBzaWduIHRoZSB0YWciCiBtc2dzdHIgInV0aWxpc2VyIHVuZSBhdXRyZSBjbMOpIHBvdXIgc2lnbmVyIGwnw6l0aXF1ZXR0ZSIKIAotIzogYnVpbHRpbi90YWcuYzo0MDQKKyM6IGJ1aWx0aW4vdGFnLmM6NDIwCiBtc2dpZCAicmVwbGFjZSB0aGUgdGFnIGlmIGV4aXN0cyIKIG1zZ3N0ciAicmVtcGxhY2VyIGwnw6l0aXF1ZXR0ZSBzaSBlbGxlIGV4aXN0ZSIKIAotIzogYnVpbHRpbi90YWcuYzo0MDUgYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY5CisjOiBidWlsdGluL3RhZy5jOjQyMSBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjkKIG1zZ2lkICJjcmVhdGUgYSByZWZsb2ciCiBtc2dzdHIgImNyw6llciB1biByZWZsb2ciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA3CisjOiBidWlsdGluL3RhZy5jOjQyMwogbXNnaWQgIlRhZyBsaXN0aW5nIG9wdGlvbnMiCiBtc2dzdHIgIk9wdGlvbnMgZCdhZmZpY2hhZ2UgZGVzIMOpdGlxdWV0dGVzIgogCi0jOiBidWlsdGluL3RhZy5jOjQwOAorIzogYnVpbHRpbi90YWcuYzo0MjQKIG1zZ2lkICJzaG93IHRhZyBsaXN0IGluIGNvbHVtbnMiCiBtc2dzdHIgImFmZmljaGVyIGxhIGxpc3RlIGRlcyDDqXRpcXVldHRlcyBzb3VzIGZvcm1lIGRlIGNvbG9ubmVzIgogCi0jOiBidWlsdGluL3RhZy5jOjQwOSBidWlsdGluL3RhZy5jOjQxMQorIzogYnVpbHRpbi90YWcuYzo0MjUgYnVpbHRpbi90YWcuYzo0MjcKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgImFmZmljaGVyIHNldWxlbWVudCBsZXMgw6l0aXF1ZXR0ZXMgcXVpIGNvbnRpZW5uZW50IGxhIHZhbGlkYXRpb24iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDEwIGJ1aWx0aW4vdGFnLmM6NDEyCisjOiBidWlsdGluL3RhZy5jOjQyNiBidWlsdGluL3RhZy5jOjQyOAogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAiYWZmaWNoZXIgc2V1bGVtZW50IGxlcyDDqXRpcXVldHRlcyBxdWkgbmUgY29udGllbm5lbnQgcGFzIGxhIHZhbGlkYXRpb24iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDEzCisjOiBidWlsdGluL3RhZy5jOjQyOQogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGFyZSBtZXJnZWQiCiBtc2dzdHIgImFmZmljaGVyIHNldWxlbWVudCBsZXMgw6l0aXF1ZXR0ZXMgcXVpIHNvbnQgZnVzaW9ubsOpZXMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDE0CisjOiBidWlsdGluL3RhZy5jOjQzMAogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGFyZSBub3QgbWVyZ2VkIgogbXNnc3RyICJhZmZpY2hlciBzZXVsZW1lbnQgbGVzIMOpdGlxdWV0dGVzIHF1aSBuZSBzb250IHBhcyBmdXNpb25uw6llcyIKIAotIzogYnVpbHRpbi90YWcuYzo0MTkKKyM6IGJ1aWx0aW4vdGFnLmM6NDM0CiBtc2dpZCAicHJpbnQgb25seSB0YWdzIG9mIHRoZSBvYmplY3QiCiBtc2dzdHIgImFmZmljaGVyIHNldWxlbWVudCBsZXMgw6l0aXF1ZXR0ZXMgZGUgbCdvYmpldCIKIAotIzogYnVpbHRpbi90YWcuYzo0NjMKKyM6IGJ1aWx0aW4vdGFnLmM6NDgyCiBtc2dpZCAiLS1jb2x1bW4gYW5kIC1uIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0tY29sdW1uIGV0IC1uIHNvbnQgaW5jb21wYXRpYmxlcyIKIAotIzogYnVpbHRpbi90YWcuYzo0ODUKKyM6IGJ1aWx0aW4vdGFnLmM6NTA0CiBtc2dpZCAiLW4gb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgImwnb3B0aW9uIC1uIGVzdCBhdXRvcmlzw6llIHNldWxlbWVudCBlbiBtb2RlIGRlIGxpc3RlIgogCi0jOiBidWlsdGluL3RhZy5jOjQ4NworIzogYnVpbHRpbi90YWcuYzo1MDYKIG1zZ2lkICItLWNvbnRhaW5zIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICJsJ29wdGlvbiAtLWNvbnRhaW5zIGVzdCBhdXRvcmlzw6llIHNldWxlbWVudCBlbiBtb2RlIGRlIGxpc3RlIgogCi0jOiBidWlsdGluL3RhZy5jOjQ4OQorIzogYnVpbHRpbi90YWcuYzo1MDgKIG1zZ2lkICItLW5vLWNvbnRhaW5zIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICJsJ29wdGlvbiAtLWNvbnRhaW5zIGVzdCBhdXRvcmlzw6llIHNldWxlbWVudCBlbiBtb2RlIGxpc3RlIgogCi0jOiBidWlsdGluL3RhZy5jOjQ5MQorIzogYnVpbHRpbi90YWcuYzo1MTAKIG1zZ2lkICItLXBvaW50cy1hdCBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAibCdvcHRpb24gLS1wb2ludHMtYXQgZXN0IGF1dG9yaXPDqWUgc2V1bGVtZW50IGVuIG1vZGUgbGlzdGUiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDkzCisjOiBidWlsdGluL3RhZy5jOjUxMgogbXNnaWQgIi0tbWVyZ2VkIGFuZCAtLW5vLW1lcmdlZCBvcHRpb25zIGFyZSBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICIiCiAibGVzIG9wdGlvbnMgLS1tZXJnZWQgZXQgLS1uby1tZXJnZWQgbmUgc29udCBhdXRvcmlzw6llcyBxdSdlbiBtb2RlIGxpc3RlIgogCi0jOiBidWlsdGluL3RhZy5jOjUwNAorIzogYnVpbHRpbi90YWcuYzo1MjMKIG1zZ2lkICJvbmx5IG9uZSAtRiBvciAtbSBvcHRpb24gaXMgYWxsb3dlZC4iCiBtc2dzdHIgInVuZSBzZXVsZSBvcHRpb24gLUYgb3UgLW0gZXN0IGF1dG9yaXPDqWUuIgogCi0jOiBidWlsdGluL3RhZy5jOjUyMworIzogYnVpbHRpbi90YWcuYzo1NDIKIG1zZ2lkICJ0b28gbWFueSBwYXJhbXMiCiBtc2dzdHIgInRyb3AgZGUgcGFyYW3DqHRyZXMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTI5CisjOiBidWlsdGluL3RhZy5jOjU0OAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRhZyBuYW1lLiIKIG1zZ3N0ciAiJyVzJyBuJ2VzdCBwYXMgdW4gbm9tIGQnw6l0aXF1ZXR0ZSB2YWxpZGUuIgogCi0jOiBidWlsdGluL3RhZy5jOjUzNAorIzogYnVpbHRpbi90YWcuYzo1NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFnICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgImwnw6l0aXF1ZXR0ZSAnJXMnIGV4aXN0ZSBkw6lqw6AiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTY1CisjOiBidWlsdGluL3RhZy5jOjU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJVcGRhdGVkIHRhZyAnJXMnICh3YXMgJXMpXG4iCiBtc2dzdHIgIsOJdGlxdWV0dGUgJyVzJyBtaXNlIMOgIGpvdXIgKGVsbGUgw6l0YWl0IHN1ciAlcylcbiIKIAotIzogYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjUwMAorIzogYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjUwMgogbXNnaWQgIlVucGFja2luZyBvYmplY3RzIgogbXNnc3RyICJEw6lwYXF1ZXRhZ2UgZGVzIG9iamV0cyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAlcyIKIG1zZ3N0ciAiw6ljaGVjIGRlIGxhIGNyw6lhdGlvbiBkdSByw6lwZXJ0b2lyZSAlcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBmaWxlICVzIgogbXNnc3RyICLDqWNoZWMgZGUgbGEgY3LDqWF0aW9uIGR1IGZpY2hpZXIgJXMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIGZpbGUgJXMiCiBtc2dzdHIgIsOpY2hlYyBkZSBsYSBzdXBwcmVzc2lvbiBkdSBmaWNoaWVyICVzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExMyBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxOQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTUgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSBkaXJlY3RvcnkgJXMiCiBtc2dzdHIgIsOpY2hlYyBkZSBsYSBzdXBwcmVzc2lvbiBkdSByw6lwZXJ0b2lyZSAlcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMzgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRlc3RpbmcgbXRpbWUgaW4gJyVzJyAiCiBtc2dzdHIgIlRlc3QgZHUgbXRpbWUgZGFucyAnJXMnICIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNTIKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTU0CiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgYWRkaW5nIGEgbmV3IGZpbGUiCiBtc2dzdHIgIiIKICJsJ2luZm9ybWF0aW9uIGRlIHN0YXQgZHUgcsOpcGVydG9pcmUgbmUgY2hhbmdlIHBhcyBhcHLDqHMgYWpvdXQgZCd1biBmaWNoaWVyIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE2NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNjcKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBhZGRpbmcgYSBuZXcgZGlyZWN0b3J5IgogbXNnc3RyICIiCiAibCdpbmZvcm1hdGlvbiBkZSBzdGF0IGR1IHLDqXBlcnRvaXJlIG5lIGNoYW5nZSBwYXMgYXByw6hzIGFqb3V0IGQndW4gcsOpcGVydG9pcmUiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTc4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE4MAogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gY2hhbmdlcyBhZnRlciB1cGRhdGluZyBhIGZpbGUiCiBtc2dzdHIgIiIKICJsJ2luZm9ybWF0aW9uIGRlIHN0YXQgZHUgcsOpcGVydG9pcmUgY2hhbmdlIGFwcsOocyBtaXNlIMOgIGpvdXIgZCd1biBmaWNoaWVyIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE4OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxOTEKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGNoYW5nZXMgYWZ0ZXIgYWRkaW5nIGEgZmlsZSBpbnNpZGUgc3ViZGlyZWN0b3J5IgogbXNnc3RyICIiCiAibCdpbmZvcm1hdGlvbiBkZSBzdGF0IGR1IHLDqXBlcnRvaXJlIGNoYW5nZSBhcHLDqHMgbCdham91dCBkJ3VuIGZpY2hpZXIgZGFucyAiCiAidW4gc291cy1yw6lwZXJ0b2lyZSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMDAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjAyCiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgZGVsZXRpbmcgYSBmaWxlIgogbXNnc3RyICIiCiAibCdpbmZvcm1hdGlvbiBkZSBzdGF0IGR1IHLDqXBlcnRvaXJlIG5lIGNoYW5nZSBwYXMgYXByw6hzIGxhIHN1cHByZXNzaW9uIGQndW4gIgogImZpY2hpZXI8IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxMworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTUKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogImwnaW5mb3JtYXRpb24gZGUgc3RhdCBkdSByw6lwZXJ0b2lyZSBuZSBjaGFuZ2UgcGFzIGFwcsOocyBsYSBzdXBwcmVzc2lvbiBkJ3VuICIKICJyw6lwZXJ0b2lyZSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMjAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIyCiBtc2dpZCAiIE9LIgogbXNnc3RyICIgT0siCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6NTg4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjU5MQogbXNnaWQgImdpdCB1cGRhdGUtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKIG1zZ3N0ciAiZ2l0IHVwZGF0ZS1pbmRleCBbPG9wdGlvbnM+XSBbLS1dIFs8ZmljaGllcj4uLi5dIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzQKIG1zZ2lkICJjb250aW51ZSByZWZyZXNoIGV2ZW4gd2hlbiBpbmRleCBuZWVkcyB1cGRhdGUiCiBtc2dzdHIgImNvbnRpbnVlciBkZSByYWZyYcOuY2hpciBtw6ptZSBzaSBsJ2luZGV4IGEgYmVzb2luIGQndW5lIG1pc2Ugw6Agam91ciIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NjQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTc3CiBtc2dpZCAicmVmcmVzaDogaWdub3JlIHN1Ym1vZHVsZXMiCiBtc2dzdHIgInJhZnJhw65jaGlyIDogaWdub3JlciBsZXMgc291cy1tb2R1bGVzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODAKIG1zZ2lkICJkbyBub3QgaWdub3JlIG5ldyBmaWxlcyIKIG1zZ3N0ciAibmUgcGFzIGlnbm9yZXIgbGVzIG5vdXZlYXV4IGZpY2hpZXJzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODIKIG1zZ2lkICJsZXQgZmlsZXMgcmVwbGFjZSBkaXJlY3RvcmllcyBhbmQgdmljZS12ZXJzYSIKIG1zZ3N0ciAibGFpc3NlciBsZXMgZmljaGllcnMgcmVtcGxhY2VyIGRlcyByw6lwZXJ0b2lyZXMgZXQgdmljZS12ZXJzYSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg0CiBtc2dpZCAibm90aWNlIGZpbGVzIG1pc3NpbmcgZnJvbSB3b3JrdHJlZSIKIG1zZ3N0ciAiYXZpc2VyIGRlcyBmaWNoaWVycyBtYW5xdWFudHMgZGFucyBsYSBjb3BpZSBkZSB0cmF2YWlsIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODYKIG1zZ2lkICJyZWZyZXNoIGV2ZW4gaWYgaW5kZXggY29udGFpbnMgdW5tZXJnZWQgZW50cmllcyIKIG1zZ3N0ciAicmFmcmHDrmNoaXIgbcOqbWUgc2kgbCdpbmRleCBjb250aWVudCBkZXMgw6lsw6ltZW50cyBub24gZnVzaW9ubsOpcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg5CiBtc2dpZCAicmVmcmVzaCBzdGF0IGluZm9ybWF0aW9uIgogbXNnc3RyICJyYWZyYcOuY2hpciBsJ2luZm9ybWF0aW9uIGRlIHN0YXQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5MwogbXNnaWQgImxpa2UgLS1yZWZyZXNoLCBidXQgaWdub3JlIGFzc3VtZS11bmNoYW5nZWQgc2V0dGluZyIKIG1zZ3N0ciAiY29tbWUgLS1yZWZyZXNoLCBtYWlzIGVuIGlnbm9yYW50IGwnb3B0aW9uIGFzc3VtZS11bmNoYW5nZWQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NwogbXNnaWQgIjxtb2RlPiw8b2JqZWN0Piw8cGF0aD4iCiBtc2dzdHIgIjxtb2RlPiwgPG9iamV0PiwgPGNoZW1pbj4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5OAogbXNnaWQgImFkZCB0aGUgc3BlY2lmaWVkIGVudHJ5IHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiYWpvdXRlciBsJ8OpbMOpbWVudCBzcMOpY2lmacOpIGRhbnMgbCdpbmRleCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwOAogbXNnaWQgIm1hcmsgZmlsZXMgYXMgXCJub3QgY2hhbmdpbmdcIiIKIG1zZ3N0ciAibWFycXVlciBsZXMgZmljaGllcnMgY29tbWUgXCJub24gY2hhbmdlYW50c1wiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDExCiBtc2dpZCAiY2xlYXIgYXNzdW1lZC11bmNoYW5nZWQgYml0IgogbXNnc3RyICJtZXR0cmUgw6AgesOpcm8gbGUgYml0IHN1cHBvc8OpLW5vbi1tb2RpZmnDqSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTQKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIFwiaW5kZXgtb25seVwiIgogbXNnc3RyICJtYXJxdWVyIGxlcyBmaWNoaWVycyBjb21tZSBcImluZGV4IHNldWxlbWVudFwiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNwogbXNnaWQgImNsZWFyIHNraXAtd29ya3RyZWUgYml0IgogbXNnc3RyICJtZXR0cmUgw6AgesOpcm8gbGUgYml0IHNhdXRlci1sYS1jb3BpZS1kZSB0cmF2YWlsIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyMAorbXNnaWQgImRvIG5vdCB0b3VjaCBpbmRleC1vbmx5IGVudHJpZXMiCittc2dzdHIgIm5lIHBhcyB0b3VjaGVyIGF1eCBlbnRyw6llcyByZXN0cmVpbnRlcyDDoCBsJ2luZGV4IgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjIKIG1zZ2lkICJhZGQgdG8gaW5kZXggb25seTsgZG8gbm90IGFkZCBjb250ZW50IHRvIG9iamVjdCBkYXRhYmFzZSIKIG1zZ3N0ciAiIgogImFqb3V0ZXIgc2V1bGVtZW50IMOgIGwnaW5kZXggOyBuZSBwYXMgYWpvdXRlciBsZSBjb250ZW51IGRhbnMgbGEgYmFzZSBkZSAiCiAiZG9ubsOpZXMgZGVzIG9iamV0cyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjQKIG1zZ2lkICJyZW1vdmUgbmFtZWQgcGF0aHMgZXZlbiBpZiBwcmVzZW50IGluIHdvcmt0cmVlIgogbXNnc3RyICIiCiAic3VwcHJpbWVyIGxlcyBjaGVtaW5zIG5vbW3DqXMgbcOqbWUgcydpbHMgc29udCBwcsOpc2VudHMgZGFucyBsYSBjb3BpZSBkZSAiCiAidHJhdmFpbCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDEwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjYKIG1zZ2lkICJ3aXRoIC0tc3RkaW46IGlucHV0IGxpbmVzIGFyZSB0ZXJtaW5hdGVkIGJ5IG51bGwgYnl0ZXMiCiBtc2dzdHIgImF2ZWMgLS1zdGRpbiA6IGxlcyBsaWduZXMgZW4gZW50csOpZSBzb250IHRlcm1pbsOpZXMgcGFyIGRlcyBvY3RldHMgbnVscyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDEyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjgKIG1zZ2lkICJyZWFkIGxpc3Qgb2YgcGF0aHMgdG8gYmUgdXBkYXRlZCBmcm9tIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJsaXJlIGxhIGxpc3RlIGRlcyBjaGVtaW5zIMOgIG1ldHRyZSDDoCBqb3VyIGRlcHVpcyBsJ2VudHLDqWUgc3RhbmRhcmQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDMyCiBtc2dpZCAiYWRkIGVudHJpZXMgZnJvbSBzdGFuZGFyZCBpbnB1dCB0byB0aGUgaW5kZXgiCiBtc2dzdHIgImFqb3V0ZXIgbGVzIMOpbMOpbWVudHMgZGVwdWlzIGwnZW50csOpZSBzdGFuZGFyZCDDoCBsJ2luZGV4IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzNgogbXNnaWQgInJlcG9wdWxhdGUgc3RhZ2VzICMyIGFuZCAjMyBmb3IgdGhlIGxpc3RlZCBwYXRocyIKIG1zZ3N0ciAicmVwZXVwbGVyIGxlcyDDqXRhcGVzIG7CsDIgZXQgbsKwMyBwb3VyIGxlcyBjaGVtaW5zIGxpc3TDqXMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQwCiBtc2dpZCAib25seSB1cGRhdGUgZW50cmllcyB0aGF0IGRpZmZlciBmcm9tIEhFQUQiCiBtc2dzdHIgIm1ldHRyZSDDoCBqb3VyIHNldWxlbWVudCBsZXMgw6lsw6ltZW50cyBxdWkgZGlmZsOocmVudCBkZSBIRUFEIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NAogbXNnaWQgImlnbm9yZSBmaWxlcyBtaXNzaW5nIGZyb20gd29ya3RyZWUiCiBtc2dzdHIgImlnbm9yZXIgbGVzIGZpY2hpZXJzIG1hbnF1YW50cyBkYW5zIGxhIGNvcGllIGRlIHRyYXZhaWwiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzMQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ3CiBtc2dpZCAicmVwb3J0IGFjdGlvbnMgdG8gc3RhbmRhcmQgb3V0cHV0IgogbXNnc3RyICJhZmZpY2hlciBsZXMgYWN0aW9ucyBzdXIgbGEgc29ydGllIHN0YW5kYXJkIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0OQogbXNnaWQgIihmb3IgcG9yY2VsYWlucykgZm9yZ2V0IHNhdmVkIHVucmVzb2x2ZWQgY29uZmxpY3RzIgogbXNnc3RyICIocG91ciBwb3JjZWxhaW5lcykgb3VibGllciBsZXMgY29uZmxpdHMgc2F1dsOpcyBldCBub24gcsOpc29sdXMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzNworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDUzCiBtc2dpZCAid3JpdGUgaW5kZXggaW4gdGhpcyBmb3JtYXQiCiBtc2dzdHIgIsOpY3JpcmUgbCdpbmRleCBkYW5zIGNlIGZvcm1hdCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDM5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTUKIG1zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBzcGxpdCBpbmRleCIKIG1zZ3N0ciAiYWN0aXZlciBvdSBkw6lzYWN0aXZlciBsJ2luZGV4IGRpdmlzw6kiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDU3CiBtc2dpZCAiZW5hYmxlL2Rpc2FibGUgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICJhY3RpdmVyIG91IGTDqXNhY3RpdmVyIGxlIGNhY2hlIGRlIG5vbi1zdWl2aXMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDU5CiBtc2dpZCAidGVzdCBpZiB0aGUgZmlsZXN5c3RlbSBzdXBwb3J0cyB1bnRyYWNrZWQgY2FjaGUiCiBtc2dzdHIgInRlc3RlciBzaSBsZSBzeXN0w6htZSBkZSBmaWNoaWVyIHN1cHBvcnRlIGxlIGNhY2hlIGRlIG5vbi1zdWl2aXMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDYxCiBtc2dpZCAiZW5hYmxlIHVudHJhY2tlZCBjYWNoZSB3aXRob3V0IHRlc3RpbmcgdGhlIGZpbGVzeXN0ZW0iCiBtc2dzdHIgImFjdGl2ZXIgbGUgY2FjaGUgZGUgbm9uLXN1aXZpcyBzYW5zIHRlc3RlciBsZSBzeXN0w6htZSBkZSBmaWNoaWVyIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2MwogbXNnaWQgIndyaXRlIG91dCB0aGUgaW5kZXggZXZlbiBpZiBpcyBub3QgZmxhZ2dlZCBhcyBjaGFuZ2VkIgogbXNnc3RyICLDqWNyaXJlIGwnaW5kZXggbcOqbWUgcydpbCBuJ2VzdCBwYXMgbWFycXXDqSBjb21tZSBtb2RpZmnDqSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjUKIG1zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBmaWxlIHN5c3RlbSBtb25pdG9yIgogbXNnc3RyICIiCiAiYWN0aXZlciBvdSBkw6lzYWN0aXZlciBsYSBzdXJ2ZWlsbGFuY2UgZHUgc3lzdMOobWUgZGUgZmljaGllciAoZnNtb25pdG9yKSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDUxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjcKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIGZzbW9uaXRvciB2YWxpZCIKIG1zZ3N0ciAibWFycXVlciBsZXMgZmljaGllcnMgY29tbWUgdmFsaWRlcyBwb3VyIGZzbW9uaXRvciIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDU0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNzAKIG1zZ2lkICJjbGVhciBmc21vbml0b3IgdmFsaWQgYml0IgogbXNnc3RyICJlZmZhY2VyIGxlIGJpdCBkZSB2YWxpZGl0w6kgZnNtb25pdG9yIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNTMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MwogbXNnaWQgIiIKICJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgogImVuYWJsZSBzcGxpdCBpbmRleCIKQEAgLTE4MjQ5LDcgKzIxOTgyLDcgQEAKICJjb3JlLnNwbGl0SW5kZXggZXN0IHLDqWdsw6kgw6AgZmFsc2XCoDsgc3VwcHJpbWV6LWxlIG91IGNoYW5nZXotbGUgc2kgdm91cyAiCiAic291aGFpdGV6IHZyYWltZW50IGFjdGl2ZXIgbCdpbmRleCBjb3Vww6kiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE2MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTgyCiBtc2dpZCAiIgogImNvcmUuc3BsaXRJbmRleCBpcyBzZXQgdG8gdHJ1ZTsgcmVtb3ZlIG9yIGNoYW5nZSBpdCwgaWYgeW91IHJlYWxseSB3YW50IHRvICIKICJkaXNhYmxlIHNwbGl0IGluZGV4IgpAQCAtMTgyNTcsNyArMjE5OTAsNyBAQAogImNvcmUuc3BsaXRJbmRleCBlc3QgcsOpZ2zDqSDDoCB2cmFpwqA7IHN1cHByaW1lei1sZSBvdSBjaGFuZ2V6LWxlIHNpIHZvdXMgIgogInNvdWhhaXRleiB2cmFpbWVudCBkw6lzYWN0aXZlciBsJ2luZGV4IGNvdXDDqSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTczCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExOTQKIG1zZ2lkICIiCiAiY29yZS51bnRyYWNrZWRDYWNoZSBpcyBzZXQgdG8gdHJ1ZTsgcmVtb3ZlIG9yIGNoYW5nZSBpdCwgaWYgeW91IHJlYWxseSB3YW50ICIKICJ0byBkaXNhYmxlIHRoZSB1bnRyYWNrZWQgY2FjaGUiCkBAIC0xODI2NSwxMSArMjE5OTgsMTEgQEAKICJjb3JlLnVudHJhY2tlZENhY2hlIGVzdCByw6lnbMOpIMOgIHRydWXCoDsgc3VwcHJpbWV6LWxlIG91IGNoYW5nZXotbGUgc2kgdm91cyAiCiAic291aGFpdGV6IHZyYWltZW50IGTDqXNhY3RpdmVyIGxlIGNhY2hlIGRlcyBmaWNoaWVycyBub24tc3VpdmlzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNzcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE5OAogbXNnaWQgIlVudHJhY2tlZCBjYWNoZSBkaXNhYmxlZCIKIG1zZ3N0ciAiTGUgY2FjaGUgbm9uIHN1aXZpIGVzdCBkw6lzYWN0aXbDqSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTg1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDYKIG1zZ2lkICIiCiAiY29yZS51bnRyYWNrZWRDYWNoZSBpcyBzZXQgdG8gZmFsc2U7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCiAidG8gZW5hYmxlIHRoZSB1bnRyYWNrZWQgY2FjaGUiCkBAIC0xODI3NywyOSArMjIwMTAsMjkgQEAKICJjb3JlLnVudHJhY2tlZENhY2hlIGVzdCByw6lnbMOpIMOgIGZhbHNlwqA7IHN1cHByaW1lei1sZSBvdSBjaGFuZ2V6LWxlIHNpIHZvdXMgIgogInNvdWhhaXRleiB2cmFpbWVudCBhY3RpdmVyIGxlIGNhY2hlIGRlcyBmaWNoaWVycyBub24tc3VpdmlzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExODkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJVbnRyYWNrZWQgY2FjaGUgZW5hYmxlZCBmb3IgJyVzJyIKIG1zZ3N0ciAiTGUgY2FjaGUgbm9uIHN1aXZpIGVzdCBhY3RpdsOpIHBvdXIgJyVzJyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTk3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMTgKIG1zZ2lkICJjb3JlLmZzbW9uaXRvciBpcyB1bnNldDsgc2V0IGl0IGlmIHlvdSByZWFsbHkgd2FudCB0byBlbmFibGUgZnNtb25pdG9yIgogbXNnc3RyICIiCiAiY29yZS5mc21vbml0b3IgZXN0IHLDqWdsw6kgw6AgZmFsc2XCoDsgY2hhbmdlei1sZSBzaSB2b3VzIHNvdWhhaXRleiB2cmFpbWVudCAiCiAiYWN0aXZlciBsYSBzdXJ2ZWlsbGFuY2UgZHUgc3lzdMOobWUgZGUgZmljaGllcnMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwMQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjIyCiBtc2dpZCAiZnNtb25pdG9yIGVuYWJsZWQiCiBtc2dzdHIgImZzbW9uaXRvciBhY3RpdsOpIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyNQogbXNnaWQgIiIKICJjb3JlLmZzbW9uaXRvciBpcyBzZXQ7IHJlbW92ZSBpdCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZGlzYWJsZSBmc21vbml0b3IiCiBtc2dzdHIgIiIKICJjb3JlLmZzbW9uaXRvciBlc3QgcsOpZ2zDqSDDoCB0cnVlwqA7IHN1cHByaW1lei1sZSBvdSBjaGFuZ2V6LWxlIHNpIHZvdXMgIgogInNvdWhhaXRleiB2cmFpbWVudCBkw6lzYWN0aXZlciBsYSBzdXJ2ZWlsbGFuY2UgZHUgc3lzdMOobWUgZGUgZmljaGllcnMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwOAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjI5CiBtc2dpZCAiZnNtb25pdG9yIGRpc2FibGVkIgogbXNnc3RyICJmc21vbml0b3IgZMOpc2FjdGl2w6kiCiAKQEAgLTE4MzQ1LDYgKzIyMDc4LDEwIEBACiBtc2dpZCAiZ2l0IHVwbG9hZC1wYWNrIFs8b3B0aW9ucz5dIDxkaXI+IgogbXNnc3RyICJnaXQgdXBsb2FkLXBhY2sgWzxvcHRpb25zPl0gPHLDqXBlcnRvaXJlPiIKIAorIzogYnVpbHRpbi91cGxvYWQtcGFjay5jOjIzIHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzoxNworbXNnaWQgInF1aXQgYWZ0ZXIgYSBzaW5nbGUgcmVxdWVzdC9yZXNwb25zZSBleGNoYW5nZSIKK21zZ3N0ciAicXVpdHRlciBhcHLDqHMgdW4gdW5pcXVlIMOpY2hhbmdlIHJlcXXDqnRlL3LDqXBvbnNlIgorCiAjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjUKIG1zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGluaXRpYWwgcmVmIGFkdmVydGlzZW1lbnQiCiBtc2dzdHIgIlNvcnRpciBpbW3DqWRpYXRlbWVudCBhcHLDqHMgbCdhbm5vbmNlIGluaXRpYWxlIGRlcyByw6lmw6lyZW5jZXMiCkBAIC0xODM1OSwxNSArMjIwOTYsMTUgQEAKIG1zZ2lkICJpbnRlcnJ1cHQgdHJhbnNmZXIgYWZ0ZXIgPG4+IHNlY29uZHMgb2YgaW5hY3Rpdml0eSIKIG1zZ3N0ciAiaW50ZXJyb21wcmUgbGUgdHJhbnNmZXJ0IGFwcsOocyA8bj4gc2Vjb25kZXMgZCdpbmFjdGl2aXTDqSIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6MjAKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjE5CiBtc2dpZCAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA8Y29tbWl0Pi4uLiIKIG1zZ3N0ciAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA8Y29tbWl0Pi4uLiIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NzYKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjY4CiBtc2dpZCAicHJpbnQgY29tbWl0IGNvbnRlbnRzIgogbXNnc3RyICJhZmZpY2hlciBsZSBjb250ZW51IGR1IGNvbW1pdCIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NzcgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzgKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjY5IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM3CiBtc2dpZCAicHJpbnQgcmF3IGdwZyBzdGF0dXMgb3V0cHV0IgogbXNnc3RyICJhZmZpY2hlciBsZXMgbWVzc2FnZXMgYnJ1dHMgZGUgZ3BnIgogCkBAIC0xODM4MywxMSArMjIxMjAsMTEgQEAKIG1zZ2lkICJzaG93IHN0YXRpc3RpY3Mgb25seSIKIG1zZ3N0ciAiYWZmaWNoZXIgc2V1bGVtZW50IGxlcyBzdGF0aXN0aXF1ZXMiCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjE5CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzoxOAogbXNnaWQgImdpdCB2ZXJpZnktdGFnIFstdiB8IC0tdmVyYm9zZV0gWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnPi4uLiIKIG1zZ3N0ciAiZ2l0IHZlcmlmeS10YWcgWy12IHwgLS12ZXJib3NlXSBbLS1mb3JtYXQ9PGZvcm1hdD5dIDzDqXRpcXVldHRlPi4uLiIKIAotIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzcKKyM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM2CiBtc2dpZCAicHJpbnQgdGFnIGNvbnRlbnRzIgogbXNnc3RyICJhZmZpY2hlciBsZSBjb250ZW51IGRlIGwnw6l0aXF1ZXR0ZSIKIApAQCAtMTg0MTksNyArMjIxNTYsNyBAQAogbXNnaWQgImdpdCB3b3JrdHJlZSB1bmxvY2sgPHBhdGg+IgogbXNnc3RyICJnaXQgd29ya3RyZWUgdW5sb2NrIDxjaGVtaW4+IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjAgYnVpbHRpbi93b3JrdHJlZS5jOjg3MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjYwIGJ1aWx0aW4vd29ya3RyZWUuYzo4OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSAnJXMnIgogbXNnc3RyICLDqWNoZWMgZGUgbGEgc3VwcHJlc3Npb24gZGUgJyVzJyIKQEAgLTE4NDM4LDcgKzIyMTc1LDcgQEAKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiB1bmFibGUgdG8gcmVhZCBnaXRkaXIgZmlsZSAoJXMpIgogbXNnc3RyICIiCi0iU3VwcHJlc3Npb24gZGUgd29ya3RyZWVzLyVzwqA6IGVjaGVjIGRlIGxhIGxlY3R1cmUgZHUgZmljaGllciBnaXRkaXIgKCVzKSIKKyJTdXBwcmVzc2lvbiBkZSB3b3JrdHJlZXMvJXPCoDogw6ljaGVjIGRlIGxhIGxlY3R1cmUgZHUgZmljaGllciBnaXRkaXIgKCVzKSIKIAogIzogYnVpbHRpbi93b3JrdHJlZS5jOjEwOQogIywgYy1mb3JtYXQKQEAgLTE4NDc0LDEyICsyMjIxMSwxMiBAQAogbXNnaWQgIiclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIiclcycgZXhpc3RlIGTDqWrDoCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjI0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmUtYWRkIHdvcmt0cmVlICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgcsOpLWFqb3V0ZXIgbCdhcmJyZSBkZSB0cmF2YWlsICclcyciCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTYKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcycgaXMgYSBtaXNzaW5nIGJ1dCBsb2NrZWQgd29ya3RyZWU7XG4iCkBAIC0xODQ4OSw3ICsyMjIyNiw3IEBACiAidXRpbGlzZXogJ2FkZCAtZiAtZicgcG91ciBwYXNzZXIgb3V0cmUsIG91ICd1bmxvY2snIGV0ICdwcnVuZScgb3UgJ3JlbW92ZScgIgogInBvdXIgY29ycmlnZXIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcycgaXMgYSBtaXNzaW5nIGJ1dCBhbHJlYWR5IHJlZ2lzdGVyZWQgd29ya3RyZWU7XG4iCkBAIC0xODQ5OCwxMjkgKzIyMjM1LDEyOSBAQAogIiclcycgZXN0IHVuIGFyYnJlIGRlIHRyYXZhaWwgbWFucXVhbnQgbWFpcyBkw6lqw6AgZW5yZWdpc3Ryw6nCoDtcbiIKICJ1dGlsaXNleiAnYWRkIC1mJyBwb3VyIHBhc3NlciBvdXRyZSwgb3UgJ3BydW5lJyBvdSAncmVtb3ZlJyBwb3VyIGNvcnJpZ2VyIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6MzA5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6MzAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5IG9mICclcyciCiBtc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIGxlIHLDqXBlcnRvaXJlIGRlICclcyciCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MjggYnVpbHRpbi93b3JrdHJlZS5jOjQzNAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMiBidWlsdGluL3dvcmt0cmVlLmM6NDM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAobmV3IGJyYW5jaCAnJXMnKSIKIG1zZ3N0ciAiUHLDqXBhcmF0aW9uIGRlIGwnYXJicmUgZGUgdHJhdmFpbCAobm91dmVsbGUgYnJhbmNoZSAnJXMnKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKHJlc2V0dGluZyBicmFuY2ggJyVzJzsgd2FzIGF0ICVzKSIKIG1zZ3N0ciAiIgogIlByw6lwYXJhdGlvbiBkZSBsJ2FyYnJlIGRlIHRyYXZhaWwgKHLDqWluaXRpYWxpc2F0aW9uIGRlIGxhIGJyYW5jaGUgJyVzJ8KgOyAiCiAicHLDqWPDqWRlbW1lbnQgc3VyICVzKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKGNoZWNraW5nIG91dCAnJXMnKSIKIG1zZ3N0ciAiUHLDqXBhcmF0aW9uIGRlIGwnYXJicmUgZGUgdHJhdmFpbCAoZXh0cmFjdGlvbiBkZSAnJXMnKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKGRldGFjaGVkIEhFQUQgJXMpIgogbXNnc3RyICJQcsOpcGFyYXRpb24gZGUgbCdhcmJyZSBkZSB0cmF2YWlsIChIRUFEIGTDqXRhY2jDqWUgJXMpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDg2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDkwCiBtc2dpZCAiY2hlY2tvdXQgPGJyYW5jaD4gZXZlbiBpZiBhbHJlYWR5IGNoZWNrZWQgb3V0IGluIG90aGVyIHdvcmt0cmVlIgogbXNnc3RyICIiCiAiZXh0cmFpcmUgbGEgPGJyYW5jaGU+IG3Dqm1lIHNpIGVsbGUgZXN0IGTDqWrDoCBleHRyYWl0ZSBkYW5zIHVuZSBhdXRyZSBjb3BpZSBkZSAiCiAidHJhdmFpbCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ4OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MwogbXNnaWQgImNyZWF0ZSBhIG5ldyBicmFuY2giCiBtc2dzdHIgImNyw6llciB1bmUgbm91dmVsbGUgYnJhbmNoZSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NQogbXNnaWQgImNyZWF0ZSBvciByZXNldCBhIGJyYW5jaCIKIG1zZ3N0ciAiY3LDqWVyIG91IHLDqWluaXRpYWxpc2VyIHVuZSBicmFuY2hlIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDkzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk3CiBtc2dpZCAicG9wdWxhdGUgdGhlIG5ldyB3b3JraW5nIHRyZWUiCiBtc2dzdHIgInJlbXBsaXNzYWdlIGRlIGxhIG5vdXZlbGxlIGNvcGllIGRlIHRyYXZhaWwiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTQKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTgKIG1zZ2lkICJrZWVwIHRoZSBuZXcgd29ya2luZyB0cmVlIGxvY2tlZCIKIG1zZ3N0ciAiY29uc2VydmVyIGxlIHZlcnJvdSBzdXIgbGUgbm91dmVsIGFyYnJlIGRlIHRyYXZhaWwiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTcKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDEKIG1zZ2lkICJzZXQgdXAgdHJhY2tpbmcgbW9kZSAoc2VlIGdpdC1icmFuY2goMSkpIgogbXNnc3RyICJyw6lnbGVyIGxlIG1vZGUgZGUgc3VpdmkgKHZvaXIgZ2l0LWJyYW5jaCgxKSkiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDAKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDQKIG1zZ2lkICJ0cnkgdG8gbWF0Y2ggdGhlIG5ldyBicmFuY2ggbmFtZSB3aXRoIGEgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKIG1zZ3N0ciAiZXNzYXllciBkZSBub21tZXIgbGEgbm91dmVsbGUgYnJhbmNoZSBjb21tZSBsYSBicmFuY2hlIGFtb250IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NTA4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTEyCiBtc2dpZCAiLWIsIC1CLCBhbmQgLS1kZXRhY2ggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLWIsIC1CIGV0IC0tZGV0YWNoIHNvbnQgbXV0dWVsbGVtZW50IGV4Y2x1c2lmcyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjU2OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjU3MwogbXNnaWQgIi0tW25vLV10cmFjayBjYW4gb25seSBiZSB1c2VkIGlmIGEgbmV3IGJyYW5jaCBpcyBjcmVhdGVkIgogbXNnc3RyICIiCiAiLS1bbm8tXXRyYWNrIG5lIHBldXQgw6p0cmUgdXRpbGlzw6kgcXUnw6AgbGEgY3LDqWF0aW9uIGQndW5lIG5vdXZlbGxlIGJyYW5jaGUiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NjkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NzMKIG1zZ2lkICJyZWFzb24gZm9yIGxvY2tpbmciCiBtc2dzdHIgInJhaXNvbiBkdSB2ZXJyb3VpbGxhZ2UiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODEgYnVpbHRpbi93b3JrdHJlZS5jOjcxNCBidWlsdGluL3dvcmt0cmVlLmM6NzcyCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODk5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njg1IGJ1aWx0aW4vd29ya3RyZWUuYzo3MTggYnVpbHRpbi93b3JrdHJlZS5jOjc5MgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkxOQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiJyVzJyBuJ2VzdCBwYXMgdW5lIGNvcGllIGRlIHRyYXZhaWwiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODMgYnVpbHRpbi93b3JrdHJlZS5jOjcxNgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4NyBidWlsdGluL3dvcmt0cmVlLmM6NzIwCiBtc2dpZCAiVGhlIG1haW4gd29ya2luZyB0cmVlIGNhbm5vdCBiZSBsb2NrZWQgb3IgdW5sb2NrZWQiCiBtc2dzdHIgIiIKICJMYSBjb3BpZSBkZSB0cmF2YWlsIHByaW5jaXBhbGUgbmUgcGV1dCBwYXMgw6p0cmUgdmVycm91aWxsw6llIG91IGTDqXZlcnJvdWlsbMOpZSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5MgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFscmVhZHkgbG9ja2VkLCByZWFzb246ICVzIgogbXNnc3RyICInJXMnIGVzdCBkw6lqw6AgdmVycm91aWxsw6ksIGNhciAnJXMnIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjkwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxyZWFkeSBsb2NrZWQiCiBtc2dzdHIgIiclcycgZXN0IGTDqWrDoCB2ZXJyb3VpbGzDqSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjcxOAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjcyMgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBsb2NrZWQiCiBtc2dzdHIgIiclcycgbidlc3QgcGFzIHZlcnJvdWlsbMOpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzQzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzYzCiBtc2dpZCAid29ya2luZyB0cmVlcyBjb250YWluaW5nIHN1Ym1vZHVsZXMgY2Fubm90IGJlIG1vdmVkIG9yIHJlbW92ZWQiCiBtc2dzdHIgIiIKICJsZXMgYXJicmVzIGRlIHRyYXZhaWwgY29udGVuYW50IGRlcyBzb3VzLW1vZHVsZXMgbmUgcGV1dmVudCBwYXMgw6p0cmUgIgogImTDqXBsYWPDqXMgb3Ugc3VwcHJpbcOpcyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc1MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3MQogbXNnaWQgImZvcmNlIG1vdmUgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCiBtc2dzdHIgIiIKICJmb3JjZXIgbGUgZMOpcGxhY2VtZW50IG3Dqm1lIHNpIGwnYXJicmUgZGUgdHJhdmFpbCBlc3Qgc2FsZSBvdSB2ZXJyb3VpbGzDqSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3NCBidWlsdGluL3dvcmt0cmVlLmM6OTAxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Nzk0IGJ1aWx0aW4vd29ya3RyZWUuYzo5MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhIG1haW4gd29ya2luZyB0cmVlIgogbXNnc3RyICInJXMnIGVzdCB1biBhcmJyZSBkZSB0cmF2YWlsIHByaW5jaXBhbCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZmlndXJlIG91dCBkZXN0aW5hdGlvbiBuYW1lIGZyb20gJyVzJyIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSB0cm91dmVyIGxlIG5vbSBkZSBsYSBkZXN0aW5hdGlvbiDDoCBwYXJ0aXIgZGUgJyVzJyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc4NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0YXJnZXQgJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAibGEgY2libGUgJyVzJyBleGlzdGUgZMOpasOgIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzkzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjYW5ub3QgbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlc1xuIgpAQCAtMTg2MzAsNyArMjIzNjcsNyBAQAogInZlcnJvdWlsbGFnZcKgOiAlc1xuIgogInV0aWxpc2V6ICdtb3ZlIC1mIC1mJyBwb3VyIG91dHJlcGFzc2VyIG91IGTDqXZlcnJvdWlsbGVyIGF2YW50IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzk1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODE1CiBtc2dpZCAiIgogImNhbm5vdCBtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZTtcbiIKICJ1c2UgJ21vdmUgLWYgLWYnIHRvIG92ZXJyaWRlIG9yIHVubG9jayBmaXJzdCIKQEAgLTE4NjM4LDM3ICsyMjM3NSwzOSBAQAogImltcG9zc2libGUgZGUgZMOpcGxhY2VyIHVuIGFyYnJlIGRlIHRyYXZhaWwgdmVycm91aWxsw6k7XG4iCiAidXRpbGlzZXogJ21vdmUgLWYgLWYnIHBvdXIgb3V0cmVwYXNzZXIgb3UgZMOpdmVycm91aWxsZXIgYXZhbnQiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidmFsaWRhdGlvbiBmYWlsZWQsIGNhbm5vdCBtb3ZlIHdvcmtpbmcgdHJlZTogJXMiCiBtc2dzdHIgImxhIHZhbGlkYXRpb24gYSDDqWNob3XDqSwgaW1wb3NzaWJsZSBkZSBkw6lwbGFjZXIgbCdhcmJyZSBkZSB0cmF2YWlswqA6ICVzIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODAzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODIzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBtb3ZlICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiw6ljaGVjIGF1IGTDqXBsYWNlbWVudCBkZSAnJXMnIHZlcnMgJyVzJyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg1MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcnVuICdnaXQgc3RhdHVzJyBvbiAnJXMnIgogbXNnc3RyICLDqWNoZWMgZHUgbGFuY2VtZW50IGRlICdnaXQgc3RhdHVzJyBzdXIgJyVzJyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg1NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg3NQogIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGlzIGRpcnR5LCB1c2UgLS1mb3JjZSB0byBkZWxldGUgaXQiCi1tc2dzdHIgIiclcycgZXN0IHNhbGUsIHV0aWxpc2V6IC0tZm9yY2UgcG91ciBsZSBzdXBwcmltZXIiCittc2dpZCAiJyVzJyBjb250YWlucyBtb2RpZmllZCBvciB1bnRyYWNrZWQgZmlsZXMsIHVzZSAtLWZvcmNlIHRvIGRlbGV0ZSBpdCIKK21zZ3N0ciAiIgorIiclcycgY29udGllbnQgZGVzIGZpY2hpZXJzIG1vZGlmacOpcyBvdSBub24tc3VpdmlzLCB1dGlsaXNleiAtLWZvcmNlIHBvdXIgbGUgIgorInN1cHByaW1lciIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg2MAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcnVuICdnaXQgc3RhdHVzJyBvbiAnJXMnLCBjb2RlICVkIgogbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxhbmNlciAnZ2l0IHN0YXR1cycgc3VyICclcycsIGNvZGUgJWQiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4ODMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MDMKIG1zZ2lkICJmb3JjZSByZW1vdmFsIGV2ZW4gaWYgd29ya3RyZWUgaXMgZGlydHkgb3IgbG9ja2VkIgogbXNnc3RyICIiCiAiZm9yY2VyIGxhIHN1cHByZXNzaW9uIG3Dqm1lIHNpIGwnYXJicmUgZGUgdHJhdmFpbCBlc3Qgc2FsZSBvdSB2ZXJyb3VpbGzDqSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwNgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlc1xuIgpAQCAtMTg2NzgsNyArMjI0MTcsNyBAQAogInZlcnJvdWlsbGFnZcKgOiAlc1xuIgogInV0aWxpc2V6ICdtb3ZlIC1mIC1mJyBwb3VyIG91dHJlcGFzc2VyIG91IGTDqXZlcnJvdWlsbGVyIGF2YW50IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6OTA4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTI4CiBtc2dpZCAiIgogImNhbm5vdCByZW1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlO1xuIgogInVzZSAncmVtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCkBAIC0xODY4NiwyOSArMjI0MjUsNDUgQEAKICJpbXBvc3NpYmxlIGRlIHN1cHByaW1lciB1biBhcmJyZSBkZSB0cmF2YWlsIHZlcnJvdWlsbMOpO1xuIgogInV0aWxpc2V6ICdtb3ZlIC1mIC1mJyBwb3VyIG91dHJlcGFzc2VyIG91IGTDqXZlcnJvdWlsbGVyIGF2YW50IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6OTExCisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInZhbGlkYXRpb24gZmFpbGVkLCBjYW5ub3QgcmVtb3ZlIHdvcmtpbmcgdHJlZTogJXMiCiBtc2dzdHIgIiIKICJsYSB2YWxpZGF0aW9uIGEgw6ljaG91w6ksIGltcG9zc2libGUgZGUgc3VwcHJpbWVyIGwnYXJicmUgZGUgdHJhdmFpbMKgOiAlcyIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MTQKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjE1CiBtc2dpZCAiZ2l0IHdyaXRlLXRyZWUgWy0tbWlzc2luZy1va10gWy0tcHJlZml4PTxwcmVmaXg+L10iCiBtc2dzdHIgImdpdCB3cml0ZS10cmVlIFstLW1pc3Npbmctb2tdIFstLXByZWZpeD08cHLDqWZpeGU+L10iCiAKLSM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI3CisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyOAogbXNnaWQgIjxwcmVmaXg+LyIKIG1zZ3N0ciAiPHByw6lmaXhlPi8iCiAKLSM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI4CisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyOQogbXNnaWQgIndyaXRlIHRyZWUgb2JqZWN0IGZvciBhIHN1YmRpcmVjdG9yeSA8cHJlZml4PiIKIG1zZ3N0ciAiw6ljcmlyZSBsJ29iamV0IGFyYnJlIHBvdXIgdW4gc291cy1yw6lwZXJ0b2lyZSA8cHLDqWZpeGU+IgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzozMAorIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MzEKIG1zZ2lkICJvbmx5IHVzZWZ1bCBmb3IgZGVidWdnaW5nIgogbXNnc3RyICJzZXVsZW1lbnQgdXRpbGUgcG91ciBsZSBkw6lib2dhZ2UiCiAKLSM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjIyMgorIzogZmFzdC1pbXBvcnQuYzozMTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkV4cGVjdGVkICdtYXJrJyBjb21tYW5kLCBnb3QgJXMiCittc2dzdHIgImNvbW1hbmRlICdtYXJrJyBhdHRlbmR1ZSwgJXMgdHJvdXbDqSIKKworIzogZmFzdC1pbXBvcnQuYzozMTMwCisjLCBjLWZvcm1hdAorbXNnaWQgIkV4cGVjdGVkICd0bycgY29tbWFuZCwgZ290ICVzIgorbXNnc3RyICJjb21tYW5kZSAndG8nIGF0dGVuZHVlLCAlcyB0cm91dsOpIgorCisjOiBmYXN0LWltcG9ydC5jOjMyNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmVhdHVyZSAnJXMnIGZvcmJpZGRlbiBpbiBpbnB1dCB3aXRob3V0IC0tYWxsb3ctdW5zYWZlLWZlYXR1cmVzIgorbXNnc3RyICIiCisibGEgZm9uY3Rpb25uYWxpdMOpICclcycgZXN0IGludGVyZGl0ZSBlbiBlbnRyw6llIHNhbnMgLS1hbGxvdy11bnNhZmUtZmVhdHVyZXMiCisKKyM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjIyMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIHBlcm1pc3Npb25zIG9uIHlvdXIgc29ja2V0IGRpcmVjdG9yeSBhcmUgdG9vIGxvb3NlOyBvdGhlclxuIgpAQCAtMTg3MjEsNyArMjI0NzYsNyBAQAogIlxuIgogIiAgICBjaG1vZCAwNzAwICVzIgogCi0jOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyNzEKKyM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjI3MgogbXNnaWQgInByaW50IGRlYnVnZ2luZyBtZXNzYWdlcyB0byBzdGRlcnIiCiBtc2dzdHIgImFmZmljaGVyIGxlcyBtZXNzYWdlcyBkZSBkZWJ1ZyBzdXIgc3RkZXJyIgogCkBAIC0xODczNCw2ICsyMjQ4OSwxNCBAQAogbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgbWFya2VkIHJlYWNoYWJsZSIKIG1zZ3N0ciAidHJvcCBkZSBjb21taXRzIG1hcnF1w6lzIGpvaWduYWJsZXMiCiAKKyM6IHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzo3Cittc2dpZCAidGVzdC10b29sIHNlcnZlLXYyIFs8b3B0aW9ucz5dIgorbXNnc3RyICJ0ZXN0LXRvb2wgc2VydmUtdjIgWzxvcHRpb25zPl0iCisKKyM6IHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzoxOQorbXNnaWQgImV4aXQgaW1tZWRpYXRlbHkgYWZ0ZXIgYWR2ZXJ0aXNpbmcgY2FwYWJpbGl0aWVzIgorbXNnc3RyICJzb3J0aXIgaW1tw6lkaWF0ZW1lbnQgYXByw6hzIGwnYW5ub25jZSBkZXMgY2FwYWNpdMOpcyIKKwogIzogZ2l0LmM6MjcKIG1zZ2lkICIiCiAiZ2l0IFstLXZlcnNpb25dIFstLWhlbHBdIFstQyA8cGF0aD5dIFstYyA8bmFtZT49PHZhbHVlPl1cbiIKQEAgLTE4NzU1LDEwMyArMjI1MTgsMTU1IEBACiBtc2dpZCAiIgogIidnaXQgaGVscCAtYScgYW5kICdnaXQgaGVscCAtZycgbGlzdCBhdmFpbGFibGUgc3ViY29tbWFuZHMgYW5kIHNvbWVcbiIKICJjb25jZXB0IGd1aWRlcy4gU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIG9yICdnaXQgaGVscCA8Y29uY2VwdD4nXG4iCi0idG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC4iCisidG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC5cbiIKKyJTZWUgJ2dpdCBoZWxwIGdpdCcgZm9yIGFuIG92ZXJ2aWV3IG9mIHRoZSBzeXN0ZW0uIgogbXNnc3RyICIiCiAiJ2dpdCBoZWxwIC1hJyBldCAnZ2l0IGhlbHAgLWcnIGxpc3RlbnQgbGVzIHNvdXMtY29tbWFuZGVzIGRpc3BvbmlibGVzIGV0XG4iCiAicXVlbHF1ZXMgY29uY2VwdHMuIFZvaXIgJ2dpdCBoZWxwIDxjb21tYW5kZT4nIG91ICdnaXQgaGVscCA8Y29uY2VwdD4nXG4iCi0icG91ciBlbiBsaXJlIHBsdXMgw6AgcHJvcG9zIGQndW5lIGNvbW1hbmRlIHNww6ljaWZpcXVlIG91IGQndW4gY29uY2VwdC4iCisicG91ciBlbiBsaXJlIHBsdXMgw6AgcHJvcG9zIGQndW5lIGNvbW1hbmRlIHNww6ljaWZpcXVlIG91IGQndW4gY29uY2VwdC5cbiIKKyJWb2lyICdnaXQgaGVscCBnaXQnIHBvdXIgdW4gc3Vydm9sIGR1IHN5c3TDqG1lLiIKIAotIzogZ2l0LmM6MTczCisjOiBnaXQuYzoxODYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtLWdpdC1kaXJcbiIKIG1zZ3N0ciAiYXVjdW4gcsOpcGVydG9pcmUgZm91cm5pIHBvdXIgLS1naXQtZGlyXG4iCiAKLSM6IGdpdC5jOjE4NworIzogZ2l0LmM6MjAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIG5hbWVzcGFjZSBnaXZlbiBmb3IgLS1uYW1lc3BhY2VcbiIKIG1zZ3N0ciAiYXVjdW4gZXNwYWNlIGRlIG5vbSBmb3Vybml0IHBvdXIgLS1uYW1lc3BhY2VcbiIKIAotIzogZ2l0LmM6MjAxCisjOiBnaXQuYzoyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtLXdvcmstdHJlZVxuIgogbXNnc3RyICJhdWN1biByw6lwZXJ0b2lyZSBmb3VybmkgcG91ciAtLXdvcmstdHJlZVxuIgogCi0jOiBnaXQuYzoyMTUKKyM6IGdpdC5jOjIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBwcmVmaXggZ2l2ZW4gZm9yIC0tc3VwZXItcHJlZml4XG4iCiBtc2dzdHIgImF1Y3VuIHByw6lmaXhlIGZvdXJuaSBwb3VyIC0tc3VwZXItcHJlZml4XG4iCiAKLSM6IGdpdC5jOjIzNworIzogZ2l0LmM6MjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIi1jIGV4cGVjdHMgYSBjb25maWd1cmF0aW9uIHN0cmluZ1xuIgogbXNnc3RyICItYyByZXF1aWVydCB1bmUgY2hhw65uZSBkZSBjb25maWd1cmF0aW9uXG4iCiAKLSM6IGdpdC5jOjI3NQorIzogZ2l0LmM6Mjg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLUNcbiIKIG1zZ3N0ciAiYXVjdW4gcsOpcGVydG9pcmUgZm91cm5pIHBvdXIgLUNcbiIKIAotIzogZ2l0LmM6MzAwCisjOiBnaXQuYzozMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvcHRpb246ICVzXG4iCiBtc2dzdHIgIm9wdGlvbiBpbmNvbm51ZcKgOiAlc1xuIgogCi0jOiBnaXQuYzo3MTkKKyM6IGdpdC5jOjM2MAorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSBleHBhbmRpbmcgYWxpYXMgJyVzJzogJyVzJyIKK21zZ3N0ciAibG9ycyBkZSBsJ2V4cGFuc2lvbiBkZSBsJ2FsaWFzICclcyfCoDogJyVzJyIKKworIzogZ2l0LmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbGlhcyAnJXMnIGNoYW5nZXMgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIllvdSBjYW4gdXNlICchZ2l0JyBpbiB0aGUgYWxpYXMgdG8gZG8gdGhpcyIKK21zZ3N0ciAiIgorImwnYWxpYXMgJyVzJyBtb2RpZmllIGxlcyB2YXJpYWJsZXMgZCdlbnZpcm9ubmVtZW50LlxuIgorIlZvdXMgcG91dmV6IHV0aWxpc2VyICchZ2l0JyBkYW5zIGwnYWxpYXMgcG91ciBsZSBmYWlyZSIKKworIzogZ2l0LmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGFsaWFzIGZvciAlcyIKK21zZ3N0ciAiYWxpYXMgdmlkZSBwb3VyICVzIgorCisjOiBnaXQuYzozNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVjdXJzaXZlIGFsaWFzOiAlcyIKK21zZ3N0ciAiYWxpYXMgcmVjdXJzaWbCoDogJXMiCisKKyM6IGdpdC5jOjQ1OQorbXNnaWQgIndyaXRlIGZhaWx1cmUgb24gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICLDqWNoZWMgZCfDqWNyaXR1cmUgc3VyIGxhIHNvcnRpZSBzdGFuZGFyZCIKKworIzogZ2l0LmM6NDYxCittc2dpZCAidW5rbm93biB3cml0ZSBmYWlsdXJlIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiw6ljaGVjIGluY29ubnUgZCfDqWNyaXR1cmUgc3VyIGxhIHNvcnRpZSBzdGFuZGFyZCIKKworIzogZ2l0LmM6NDYzCittc2dpZCAiY2xvc2UgZmFpbGVkIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiw6ljaGVjIGRlIGZlcm1ldHVyZSBkZSBsYSBzb3J0aWUgc3RhbmRhcmQiCisKKyM6IGdpdC5jOjc5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhbGlhcyBsb29wIGRldGVjdGVkOiBleHBhbnNpb24gb2YgJyVzJyBkb2VzIG5vdCB0ZXJtaW5hdGU6JXMiCiBtc2dzdHIgImJvdWNsZSBkJ2FsaWFzIGTDqXRlY3TDqWXCoDogbCdleHBhbnNpb24gZGUgJyVzJyBuZSBmaW5pdCBqYW1haXPCoDogJXMiCiAKLSM6IGdpdC5jOjgwMgorIzogZ2l0LmM6ODQzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBoYW5kbGUgJXMgYXMgYSBidWlsdGluIgorbXNnc3RyICJpbXBvc3NpYmxlIGQndXRpbGlzZXIgJXMgY29tbWUgdW5lIGZvbmN0aW9uIGludMOpZ3LDqWUiCisKKyM6IGdpdC5jOjg1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXNhZ2U6ICVzXG4iCisiXG4iCittc2dzdHIgIiIKKyJ1c2FnZSA6ICVzXG4iCisiXG4iCisKKyM6IGdpdC5jOjg3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBhbnNpb24gb2YgYWxpYXMgJyVzJyBmYWlsZWQ7ICclcycgaXMgbm90IGEgZ2l0IGNvbW1hbmRcbiIKIG1zZ3N0ciAiIgogImwnZXhwYW5zaW9uIGRlIGwnYWxpYXMgJyVzJyBhIMOpY2hvdcOpwqA6ICclcycgbidlc3QgcGFzIHVuZSBjb21tYW5kZSBnaXRcbiIKIAotIzogZ2l0LmM6ODE0CisjOiBnaXQuYzo4ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJ1biBjb21tYW5kICclcyc6ICVzXG4iCiBtc2dzdHIgIsOpY2hlYyBhdSBsYW5jZW1lbnQgZGUgbGEgY29tbWFuZGUgJyVzJ8KgOiAlc1xuIgogCi0jOiBodHRwLmM6Mzc0CisjOiBodHRwLmM6Mzc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5lZ2F0aXZlIHZhbHVlIGZvciBodHRwLnBvc3RidWZmZXI7IGRlZmF1bHRpbmcgdG8gJWQiCiBtc2dzdHIgIiIKICJ2YWxldXIgbsOpZ2F0aXZlIHBvdXIgaHR0cC5wb3N0YnVmZmVyIDsgdXRpbGlzYXRpb24gZGUgbGEgdmFsZXVyIHBhciBkw6lmYXV0ICVkIgogCi0jOiBodHRwLmM6Mzk1CisjOiBodHRwLmM6Mzk5CiBtc2dpZCAiRGVsZWdhdGlvbiBjb250cm9sIGlzIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy4yMi4wIgogbXNnc3RyICJMYSBkw6lsw6lnYXRpb24gZGUgY29tbWFuZGUgbidlc3QgcGFzIHN1cHBvcnTDqSBhdmVjIGN1UkwgPCA3LjIyLjAiCiAKLSM6IGh0dHAuYzo0MDQKKyM6IGh0dHAuYzo0MDgKIG1zZ2lkICJQdWJsaWMga2V5IHBpbm5pbmcgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjQ0LjAiCiBtc2dzdHIgIkwnw6lwaW5nbGFnZSBkZSBjbMOpIHB1YmxpcXVlIG4nZXN0IHBhcyBzdXBwb3J0w6kgYXZlYyBjdVJMIDwgNy40NC4wIgogCi0jOiBodHRwLmM6ODM3CisjOiBodHRwLmM6ODc2CiBtc2dpZCAiQ1VSTFNTTE9QVF9OT19SRVZPS0Ugbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjQ0LjAiCiBtc2dzdHIgIkNVUkxTU0xPUFRfTk9fUkVNT1ZFIG4nZXN0IHBhcyBzdXBwb3J0w6kgYXZlYyBjdVJMIDwgNy40NC4wIgogCi0jOiBodHRwLmM6OTEwCisjOiBodHRwLmM6OTQ5CiBtc2dpZCAiUHJvdG9jb2wgcmVzdHJpY3Rpb25zIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy4xOS40IgogbXNnc3RyICJMZXMgcmVzdHJpY3Rpb25zIGRlIHByb3RvY29sZSBuZSBzb250IHBhcyBzdXBwb3J0w6lzIGF2ZWMgY3VSTCA8IDcuMTkuNCIKIAotIzogaHR0cC5jOjEwNDYKKyM6IGh0dHAuYzoxMDg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuc3VwcG9ydGVkIFNTTCBiYWNrZW5kICclcycuIFN1cHBvcnRlZCBTU0wgYmFja2VuZHM6IgogbXNnc3RyICJEb3JzYWxlIFNTTCAnJXMnIG5vbiBzdXBwb3J0w6llLiBEb3JzYWxlcyBTU0wgc3VwcG9ydMOpZXPCoDoiCiAKLSM6IGh0dHAuYzoxMDUzCisjOiBodHRwLmM6MTA5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc2V0IFNTTCBiYWNrZW5kIHRvICclcyc6IGNVUkwgd2FzIGJ1aWx0IHdpdGhvdXQgU1NMIGJhY2tlbmRzIgogbXNnc3RyICIiCiAiSW1wb3NzaWJsZSBkZSByw6lnbGVyIGxhIGRvcnNhbGUgU1NMIMOgICclcyfCoDogY1VSTCBhIMOpdMOpIGNvbnN0cnVpdCBzYW5zICIKICJkb3JzYWxlIFNTTCIKIAotIzogaHR0cC5jOjEwNTcKKyM6IGh0dHAuYzoxMDk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzZXQgU1NMIGJhY2tlbmQgdG8gJyVzJzogYWxyZWFkeSBzZXQiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgc3DDqWNpZmllciBsZSBkb3JzYWwgU1NMIMOgICclcyfCoDogZMOpasOgIHNww6ljaWZpw6kiCiAKLSM6IGh0dHAuYzoxOTIxCisjOiBodHRwLmM6MTk2NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5hYmxlIHRvIHVwZGF0ZSB1cmwgYmFzZSBmcm9tIHJlZGlyZWN0aW9uOlxuIgpAQCAtMTg4NjIsMzkgKzIyNjc3LDE4MSBAQAogIiAgICAgIGRlbWFuZMOpwqA6ICVzXG4iCiAiICByZWRpcmVjdGlvbsKgOiAlcyIKIAotIzogcmVtb3RlLWN1cmwuYzo0MDEKKyM6IHJlbW90ZS1jdXJsLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcXVvdGluZyBpbiBwdXNoLW9wdGlvbiB2YWx1ZTogJyVzJyIKK21zZ3N0ciAiY2l0YXRpb24gaW52YWxpZGUgZGFucyBsYSB2YWxldXIgcHVzaC1vcHRpb27CoDogJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXNpbmZvL3JlZnMgbm90IHZhbGlkOiBpcyB0aGlzIGEgZ2l0IHJlcG9zaXRvcnk/IgorbXNnc3RyICIlc2luZm8vcmVmcyBuJ2VzdCBwYXMgdmFsaWRlIDogZXN0LWNlIGJpZW4gdW4gZMOpcMO0dCBnaXTCoD8iCisKKyM6IHJlbW90ZS1jdXJsLmM6MzY0Cittc2dpZCAiaW52YWxpZCBzZXJ2ZXIgcmVzcG9uc2U7IGV4cGVjdGVkIHNlcnZpY2UsIGdvdCBmbHVzaCBwYWNrZXQiCittc2dzdHIgInLDqXBvbnNlIGR1IHNlcnZldXIgaW52YWxpZGXCoDsgc2VydmljZSBhdHRlbmR1LCBwYXF1ZXQgZGUgdmlkYWdlIHJlw6d1IgorCisjOiByZW1vdGUtY3VybC5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZ290ICclcyciCittc2dzdHIgInLDqXBvbnNlIGR1IHNlcnZldXIgaW52YWxpZGXCoDsgJyVzJyByZcOndSIKKworIzogcmVtb3RlLWN1cmwuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVwb3NpdG9yeSAnJXMnIG5vdCBmb3VuZCIKK21zZ3N0ciAiZMOpcMO0dCAnJXMnIG5vbiB0cm91dsOpIgorCisjOiByZW1vdGUtY3VybC5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGlvbiBmYWlsZWQgZm9yICclcyciCittc2dzdHIgIsOJY2hlYyBkJ2F1dGhlbnRpZmljYXRpb24gcG91ciAnJXMnIgorCisjOiByZW1vdGUtY3VybC5jOjQ2MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzICclcyc6ICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnYWNjw6lkZXIgw6AgJyVzJ8KgOiAlcyIKKworIzogcmVtb3RlLWN1cmwuYzo0NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVkaXJlY3RpbmcgdG8gJXMiCiBtc2dzdHIgInJlZGlyZWN0aW9uIHZlcnMgJXMiCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjYwCisjOiByZW1vdGUtY3VybC5jOjU5MworbXNnaWQgInNob3VsZG4ndCBoYXZlIEVPRiB3aGVuIG5vdCBnZW50bGUgb24gRU9GIgorbXNnc3RyICJuZSBkZXZyYWl0IHBhcyByZWNldm9pciBPRUYgcXVhbmQgb24gbidlc3QgcGFzIGdlbnRpbCBzdXIgRU9GIgorCisjOiByZW1vdGUtY3VybC5jOjY3MworbXNnaWQgInVuYWJsZSB0byByZXdpbmQgcnBjIHBvc3QgZGF0YSAtIHRyeSBpbmNyZWFzaW5nIGh0dHAucG9zdEJ1ZmZlciIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgcmVtYm9iaW5lciBsZSBkb25uw6llcyBwb3N0IHJwYyAtIGVzc2F5ZXIgZCdhdWdtZW50ZXIgaHR0cC4iCisicG9zdEJ1ZmZlciIKKworIzogcmVtb3RlLWN1cmwuYzo3MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUlBDIGZhaWxlZDsgJXMiCittc2dzdHIgIsOpY2hlYyBSUEPCoDsgJXMiCisKKyM6IHJlbW90ZS1jdXJsLmM6NzczCittc2dpZCAiY2Fubm90IGhhbmRsZSBwdXNoZXMgdGhpcyBiaWciCittc2dzdHIgImltcG9zc2libGUgZGUgZ8OpcmVyIGRlcyBwb3Vzc8OpZXMgYXVzc2kgZ3Jvc3NlcyIKKworIzogcmVtb3RlLWN1cmwuYzo4ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRlZmxhdGUgcmVxdWVzdDsgemxpYiBkZWZsYXRlIGVycm9yICVkIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNvbXByZXNzZXIgbGEgcmVxdcOqdGXCoDsgZXJyZXVyIGRlIGNvbXByZXNzaW9uIHpsaWIgJWQiCisKKyM6IHJlbW90ZS1jdXJsLmM6ODkyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkZWZsYXRlIHJlcXVlc3Q7IHpsaWIgZW5kIGVycm9yICVkIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNvbXByZXNzZXIgbGEgcmVxdcOqdGXCoDsgZXJyZXVyIGRlIGZpbiB6bGliICVkIgorCisjOiByZW1vdGUtY3VybC5jOjEwMjMKK21zZ2lkICJkdW1iIGh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjYXBhYmlsaXRpZXMiCittc2dzdHIgImxlIHByb3RvY29sZSBodHRwIGlkaW90IG5lIHN1cHBvcnRlIGxhIGNhcGFjaXTDqSBzdXBlcmZpY2llbGxlIgorCisjOiByZW1vdGUtY3VybC5jOjEwMzgKK21zZ2lkICJmZXRjaCBmYWlsZWQuIgorbXNnc3RyICLDqWNoZWMgZHUgcsOpY3Vww6lyYXRpb24uIgorCisjOiByZW1vdGUtY3VybC5jOjEwODYKK21zZ2lkICJjYW5ub3QgZmV0Y2ggYnkgc2hhMSBvdmVyIHNtYXJ0IGh0dHAiCittc2dzdHIgImltcG9zc2libGUgZGUgcsOpY3Vww6lyZXIgcGFyIHNoYTEgc3VyIGh0dHAgaW50ZWxsaWdlbnQiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTEzMCByZW1vdGUtY3VybC5jOjExMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvdG9jb2wgZXJyb3I6IGV4cGVjdGVkIHNoYS9yZWYsIGdvdCAnJXMnIgorbXNnc3RyICJlcnJldXIgZGUgcHJvdG9jb2xlwqA6IHNoYS9yZWYgYXR0ZW5kdSwgJyVzJyB0cm91dsOpIgorCisjOiByZW1vdGUtY3VybC5jOjExNDggcmVtb3RlLWN1cmwuYzoxMjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgJXMiCittc2dzdHIgImxlIHRyYW5zcG9ydCBodHRwIG5lIHN1cHBvcnRlIHBhcyAlcyIKKworIzogcmVtb3RlLWN1cmwuYzoxMTg0Cittc2dpZCAiZ2l0LWh0dHAtcHVzaCBmYWlsZWQiCittc2dzdHIgIsOpY2hlYyBkZSBnaXQtaHR0cC1wdXNoIgorCisjOiByZW1vdGUtY3VybC5jOjEzNjkKK21zZ2lkICJyZW1vdGUtY3VybDogdXNhZ2U6IGdpdCByZW1vdGUtY3VybCA8cmVtb3RlPiBbPHVybD5dIgorbXNnc3RyICJyZW1vdGUtY3VybDogdXNhZ2U6IGdpdCByZW1vdGUtY3VybCA8ZGlzdGFudD4gWzx1cmw+XSIKKworIzogcmVtb3RlLWN1cmwuYzoxNDAxCittc2dpZCAicmVtb3RlLWN1cmw6IGVycm9yIHJlYWRpbmcgY29tbWFuZCBzdHJlYW0gZnJvbSBnaXQiCittc2dzdHIgInJlbW90ZS1jdXJswqA6IGVycmV1ciBkZSBsZWN0dXJlIGR1IGZsdXggZGUgY29tbWFuZGUgZGVwdWlzIGdpdCIKKworIzogcmVtb3RlLWN1cmwuYzoxNDA4Cittc2dpZCAicmVtb3RlLWN1cmw6IGZldGNoIGF0dGVtcHRlZCB3aXRob3V0IGEgbG9jYWwgcmVwbyIKK21zZ3N0ciAicmVtb3RlLWN1cmzCoDogcsOpY3Vww6lyYXRpb24gdGVudMOpZSBzYW5zIGTDqXDDtHQgbG9jYWwiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdGUtY3VybDogdW5rbm93biBjb21tYW5kICclcycgZnJvbSBnaXQiCittc2dzdHIgInJlbW90ZS1jdXJswqA6IGNvbW1hbmRlIGluY29ubnVlICclcycgZGVwdWlzIGdpdCIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6ODUKIG1zZ2lkICJhcmdzIgogbXNnc3RyICJhcmdzIgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo2MQorIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6ODYKIG1zZ2lkICJvYmplY3QgZmlsdGVyaW5nIgogbXNnc3RyICJmaWx0cmFnZSBkJ29iamV0IgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MTU0CisjOiBwYXJzZS1vcHRpb25zLmg6MTgzCiBtc2dpZCAiZXhwaXJ5LWRhdGUiCiBtc2dzdHIgImRhdGUtZCdleHBpcmF0aW9uIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MTY5CisjOiBwYXJzZS1vcHRpb25zLmg6MTk3CiBtc2dpZCAibm8tb3AgKGJhY2t3YXJkIGNvbXBhdGliaWxpdHkpIgogbXNnc3RyICJzYW5zIGFjdGlvbiAocsOpdHJvY29tcGF0aWJpbGl0w6kpIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MjYxCisjOiBwYXJzZS1vcHRpb25zLmg6MzA5CiBtc2dpZCAiYmUgbW9yZSB2ZXJib3NlIgogbXNnc3RyICLDqnRyZSBwbHVzIHZlcmJldXgiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoyNjMKKyM6IHBhcnNlLW9wdGlvbnMuaDozMTEKIG1zZ2lkICJiZSBtb3JlIHF1aWV0IgogbXNnc3RyICLDqnRyZSBwbHVzIHNpbGVuY2lldXgiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoyNjkKKyM6IHBhcnNlLW9wdGlvbnMuaDozMTcKIG1zZ2lkICJ1c2UgPG4+IGRpZ2l0cyB0byBkaXNwbGF5IFNIQS0xcyIKIG1zZ3N0ciAidXRpbGlzZXIgPG4+IGNoaWZmcmVzIHBvdXIgYWZmaWNoZXIgbGVzIFNIQS0xcyIKIAorIzogcGFyc2Utb3B0aW9ucy5oOjMzNgorbXNnaWQgImhvdyB0byBzdHJpcCBzcGFjZXMgYW5kICNjb21tZW50cyBmcm9tIG1lc3NhZ2UiCittc2dzdHIgImNvbW1lbnQgw6lsaW1pbmVyIGxlcyBlc3BhY2VzIGV0IGxlcyBjb21tZW50YWlyZXMgIyBkdSBtZXNzYWdlIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzM3Cittc2dpZCAicmVhZCBwYXRoc3BlYyBmcm9tIGZpbGUiCittc2dzdHIgImxpcmUgbGVzIHNww6ljaWZpY2F0ZXVycyBkZSBmaWNoaWVyIGRlcHVpcyBmaWNoaWVyIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzM4Cittc2dpZCAiIgorIndpdGggLS1wYXRoc3BlYy1mcm9tLWZpbGUsIHBhdGhzcGVjIGVsZW1lbnRzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgorbXNnc3RyICIiCisiYXZlYyAtLXBhdGhzcGVjLWZyb20tZmlsZSwgbGVzIHNww6ljaWZpY2F0ZXVycyBkZSBjaGVtaW4gc29udCBzw6lwYXLDqXMgcGFyIHVuICIKKyJjYXJhY3TDqHJlIE5VTCIKKworIzogcmVmLWZpbHRlci5oOjEwMQorbXNnaWQgImtleSIKK21zZ3N0ciAiY2zDqSIKKworIzogcmVmLWZpbHRlci5oOjEwMQorbXNnaWQgImZpZWxkIG5hbWUgdG8gc29ydCBvbiIKK21zZ3N0ciAibm9tIGR1IGNoYW1wIHNlcnZhbnQgw6AgdHJpZXIiCisKKyM6IHJlcmVyZS5oOjQ0Cittc2dpZCAidXBkYXRlIHRoZSBpbmRleCB3aXRoIHJldXNlZCBjb25mbGljdCByZXNvbHV0aW9uIGlmIHBvc3NpYmxlIgorbXNnc3RyICIiCisibWV0IMOgIGpvdXIgbCdpbmRleCBhdmVjIGxlcyByw6lzb2x1dGlvbnMgZGUgY29uZmxpdCByw6l1dGlsaXPDqWVzIHNpIHBvc3NpYmxlIgorCisjOiB3dC1zdGF0dXMuaDo2NworbXNnaWQgIkhFQUQgZGV0YWNoZWQgYXQgIgorbXNnc3RyICJIRUFEIGTDqXRhY2jDqWUgc3VyICIKKworIzogd3Qtc3RhdHVzLmg6NjgKK21zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgorbXNnc3RyICJIRUFEIGTDqXRhY2jDqWUgZGVwdWlzICIKKwogIzogY29tbWFuZC1saXN0Lmg6NTAKIG1zZ2lkICJBZGQgZmlsZSBjb250ZW50cyB0byB0aGUgaW5kZXgiCiBtc2dzdHIgIkFqb3V0ZXIgbGUgY29udGVudSBkZSBmaWNoaWVycyBkYW5zIGwnaW5kZXgiCkBAIC0xOTE2MCw5ICsyMzExNyw5IEBACiBtc2dzdHIgIk5hdmlndWVyIGluc3RhbnRhbsOpbWVudCB2b3RyZSBkw6lww7R0IGRlIHRyYXZhaWwgZGFucyBnaXR3ZWIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjExMwotbXNnaWQgImFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKK21zZ2lkICJBZGQgb3IgcGFyc2Ugc3RydWN0dXJlZCBpbmZvcm1hdGlvbiBpbiBjb21taXQgbWVzc2FnZXMiCiBtc2dzdHIgIiIKLSJham91dGVyIG91IGFuYWx5c2VyIGwnaW5mb3JtYXRpb24gc3RydWN0dXLDqWUgZGFucyBsZXMgbWVzc2FnZXMgZGUgdmFsaWRhdGlvbiIKKyJBam91dGVyIG91IGFuYWx5c2VyIGwnaW5mb3JtYXRpb24gc3RydWN0dXLDqWUgZGFucyBsZXMgbWVzc2FnZXMgZGUgdmFsaWRhdGlvbiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTE0CiBtc2dpZCAiVGhlIEdpdCByZXBvc2l0b3J5IGJyb3dzZXIiCkBAIC0xOTM0MiwyMjYgKzIzMjk5LDIzNyBAQAogbXNnc3RyICJSw6lpbml0aWFsaXNlciBsYSBIRUFEIGNvdXJhbnRlIMOgIGwnw6l0YXQgc3DDqWNpZmnDqSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTU2Cittc2dpZCAiUmVzdG9yZSB3b3JraW5nIHRyZWUgZmlsZXMiCittc2dzdHIgInJlc3RhdXJlciBsZXMgZmljaGllcnMgbCdhcmJyZSBkZSB0cmF2YWlsIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTcKIG1zZ2lkICJSZXZlcnQgc29tZSBleGlzdGluZyBjb21taXRzIgogbXNnc3RyICJJbnZlcnNlciBkZXMgY29tbWl0cyBleGlzdGFudHMiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE1NworIzogY29tbWFuZC1saXN0Lmg6MTU4CiBtc2dpZCAiTGlzdHMgY29tbWl0IG9iamVjdHMgaW4gcmV2ZXJzZSBjaHJvbm9sb2dpY2FsIG9yZGVyIgogbXNnc3RyICJBZmZpY2hlciBsZXMgb2JqZXRzIGNvbW1pdCBkYW5zIGwnb3JkcmUgY2hyb25vbG9naXF1ZSBpbnZlcnNlIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNTgKKyM6IGNvbW1hbmQtbGlzdC5oOjE1OQogbXNnaWQgIlBpY2sgb3V0IGFuZCBtYXNzYWdlIHBhcmFtZXRlcnMiCiBtc2dzdHIgIkFuYWx5c2VyIGV0IHByw6lwYXJlciBsZXMgcGFyYW3DqHRyZXMiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE1OQorIzogY29tbWFuZC1saXN0Lmg6MTYwCiBtc2dpZCAiUmVtb3ZlIGZpbGVzIGZyb20gdGhlIHdvcmtpbmcgdHJlZSBhbmQgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgIlN1cHByaW1lciBkZXMgZmljaGllcnMgZGUgbGEgY29waWUgZGUgdHJhdmFpbCBldCBkZSBsJ2luZGV4IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjAKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MQogbXNnaWQgIlNlbmQgYSBjb2xsZWN0aW9uIG9mIHBhdGNoZXMgYXMgZW1haWxzIgogbXNnc3RyICJFbnZveWVyIHVuIGVuc2VtYmxlIGRlIHBhdGNocyBjb21tZSBjb3VycmllbHMiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2MQorIzogY29tbWFuZC1saXN0Lmg6MTYyCiBtc2dpZCAiUHVzaCBvYmplY3RzIG92ZXIgR2l0IHByb3RvY29sIHRvIGFub3RoZXIgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiUG91c3NlciBsZXMgb2JqZXRzIHN1ciB1biBhdXRyZSBkw6lww7R0IHZpYSBsZSBwcm90b2NvbGUgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjIKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MwogbXNnaWQgIlJlc3RyaWN0ZWQgbG9naW4gc2hlbGwgZm9yIEdpdC1vbmx5IFNTSCBhY2Nlc3MiCiBtc2dzdHIgInNoZWxsIGRlIGxvZ2luIHJlc3RyZWludCBwb3VyIHVuIGFjY8OocyBTU0ggdmVycyBHaXQgc2V1bGVtZW50IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjMKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NAogbXNnaWQgIlN1bW1hcml6ZSAnZ2l0IGxvZycgb3V0cHV0IgogbXNnc3RyICJSw6lzdW1lciBsYSBzb3J0aWUgZGUgJ2dpdCBsb2cnIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjQKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NQogbXNnaWQgIlNob3cgdmFyaW91cyB0eXBlcyBvZiBvYmplY3RzIgogbXNnc3RyICJBZmZpY2hlciBkaWZmw6lyZW50cyB0eXBlcyBkJ29iamV0cyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTY1CisjOiBjb21tYW5kLWxpc3QuaDoxNjYKIG1zZ2lkICJTaG93IGJyYW5jaGVzIGFuZCB0aGVpciBjb21taXRzIgogbXNnc3RyICJBZmZpY2hlciBsZXMgYnJhbmNoZXMgZXQgbGV1cnMgY29tbWl0cyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTY2CisjOiBjb21tYW5kLWxpc3QuaDoxNjcKIG1zZ2lkICJTaG93IHBhY2tlZCBhcmNoaXZlIGluZGV4IgogbXNnc3RyICJBZmZpY2hlciBsJ2luZGV4IGRlIGwnYXJjaGl2ZSBlbXBhcXVldMOpZSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTY3CisjOiBjb21tYW5kLWxpc3QuaDoxNjgKIG1zZ2lkICJMaXN0IHJlZmVyZW5jZXMgaW4gYSBsb2NhbCByZXBvc2l0b3J5IgogbXNnc3RyICJMaXN0ZXIgbGVzIHLDqWbDqXJlbmNlcyBkdSBkw6lww7R0IGxvY2FsIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjgKKyM6IGNvbW1hbmQtbGlzdC5oOjE2OQogbXNnaWQgIkdpdCdzIGkxOG4gc2V0dXAgY29kZSBmb3Igc2hlbGwgc2NyaXB0cyIKIG1zZ3N0ciAiTGUgY29kZSBkJ2luaXRpYWxpc2F0aW9uIGkxOG4gcG91ciBsZXMgc2NyaXB0cyBzaGVsbCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTY5CisjOiBjb21tYW5kLWxpc3QuaDoxNzAKIG1zZ2lkICJDb21tb24gR2l0IHNoZWxsIHNjcmlwdCBzZXR1cCBjb2RlIgogbXNnc3RyICJMZSBjb2RlIGQnaW5pdGlhbGlzYXRpb24gY29tbXVuIGF1eCBzY3JpcHRzIHNoZWxsIEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTcwCisjOiBjb21tYW5kLWxpc3QuaDoxNzEKK21zZ2lkICJJbml0aWFsaXplIGFuZCBtb2RpZnkgdGhlIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAiSW5pdGlhbGlzZXIgZXQgbW9kaWZpZXIgbCdleHRyYWN0aW9uIHBhcnRpZWxsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTcyCiBtc2dpZCAiU3Rhc2ggdGhlIGNoYW5nZXMgaW4gYSBkaXJ0eSB3b3JraW5nIGRpcmVjdG9yeSBhd2F5IgogbXNnc3RyICJSZW1pc2VyIGxlcyBtb2RpZmljYXRpb25zIGQndW4gcsOpcGVydG9pcmUgZGUgdHJhdmFpbCBzYWxlIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzEKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MwogbXNnaWQgIkFkZCBmaWxlIGNvbnRlbnRzIHRvIHRoZSBzdGFnaW5nIGFyZWEiCiBtc2dzdHIgIkFqb3V0ZXIgbGUgY29udGVudSBkZSBmaWNoaWVycyDDoCBsJ2luZGV4IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzIKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NAogbXNnaWQgIlNob3cgdGhlIHdvcmtpbmcgdHJlZSBzdGF0dXMiCiBtc2dzdHIgIkFmZmljaGVyIGwnw6l0YXQgZGUgbGEgY29waWUgZGUgdHJhdmFpbCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTczCisjOiBjb21tYW5kLWxpc3QuaDoxNzUKIG1zZ2lkICJSZW1vdmUgdW5uZWNlc3Nhcnkgd2hpdGVzcGFjZSIKIG1zZ3N0ciAiUmV0aXJlciBsZXMgZXNwYWNlcyBpbnV0aWxlcyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc0CisjOiBjb21tYW5kLWxpc3QuaDoxNzYKIG1zZ2lkICJJbml0aWFsaXplLCB1cGRhdGUgb3IgaW5zcGVjdCBzdWJtb2R1bGVzIgogbXNnc3RyICJJbml0aWFsaXNlciwgbWV0dHJlIMOgIGpvdXIgZXQgaW5zcGVjdGVyIGxlcyBzb3VzLW1vZHVsZXMiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3NQorIzogY29tbWFuZC1saXN0Lmg6MTc3CiBtc2dpZCAiQmlkaXJlY3Rpb25hbCBvcGVyYXRpb24gYmV0d2VlbiBhIFN1YnZlcnNpb24gcmVwb3NpdG9yeSBhbmQgR2l0IgogbXNnc3RyICJPcMOpcmF0aW9uIEJpZGlyZWN0aW9ubmVsbGVzIGVudHJlIHVuIGTDqXDDtHQgU3VidmVyc2lvbiBldCBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3NgorIzogY29tbWFuZC1saXN0Lmg6MTc4Cittc2dpZCAiU3dpdGNoIGJyYW5jaGVzIgorbXNnc3RyICJCYXNjdWxlciBkZSBicmFuY2hlIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzkKIG1zZ2lkICJSZWFkLCBtb2RpZnkgYW5kIGRlbGV0ZSBzeW1ib2xpYyByZWZzIgogbXNnc3RyICJMaXJlLCBtb2RpZmllciBldCBzdXBwcmltZXIgbGVzIHLDqWbDqXJlbmNlcyBzeW1ib2xpcXVlcyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc3CisjOiBjb21tYW5kLWxpc3QuaDoxODAKIG1zZ2lkICJDcmVhdGUsIGxpc3QsIGRlbGV0ZSBvciB2ZXJpZnkgYSB0YWcgb2JqZWN0IHNpZ25lZCB3aXRoIEdQRyIKIG1zZ3N0ciAiIgogIkNyw6llciwgbGlzdGVyLCBzdXBwcmltZXIgb3UgdsOpcmlmaWVyIHVuIG9iamV0IGQnw6l0aXF1ZXR0ZSBzaWduw6kgYXZlYyBHUEciCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3OAorIzogY29tbWFuZC1saXN0Lmg6MTgxCiBtc2dpZCAiQ3JlYXRlcyBhIHRlbXBvcmFyeSBmaWxlIHdpdGggYSBibG9iJ3MgY29udGVudHMiCiBtc2dzdHIgIkNyw6llciB1biBmaWNoaWVyIHRlbXBvcmFpcmUgYXZlYyBsZSBjb250ZW51IGQndW4gYmxvYiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc5CisjOiBjb21tYW5kLWxpc3QuaDoxODIKIG1zZ2lkICJVbnBhY2sgb2JqZWN0cyBmcm9tIGEgcGFja2VkIGFyY2hpdmUiCiBtc2dzdHIgIkTDqXBhcXVldGVyIGxlcyBvYmpldHMgZGVwdWlzIHVuZSBhcmNoaXZlIGVtcGFxdWV0w6llIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODAKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MwogbXNnaWQgIlJlZ2lzdGVyIGZpbGUgY29udGVudHMgaW4gdGhlIHdvcmtpbmcgdHJlZSB0byB0aGUgaW5kZXgiCiBtc2dzdHIgIkVucmVnaXN0cmVyIGxlIGNvbnRlbnUgZCd1biBmaWNoaWVyIGRlIGwnYXJicmUgZGUgdHJhdmFpbCBkYW5zIGwnaW5kZXgiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4MQorIzogY29tbWFuZC1saXN0Lmg6MTg0CiBtc2dpZCAiVXBkYXRlIHRoZSBvYmplY3QgbmFtZSBzdG9yZWQgaW4gYSByZWYgc2FmZWx5IgogbXNnc3RyICIiCiAiTWV0dHJlIMOgIGpvdXIgbGUgbm9tIGQnb2JqZXQgc3RvY2vDqSBkYW5zIHVuZSByw6lmw6lyZW5jZSBlbiB0b3V0ZSBzw6ljdXJpdMOpIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODIKKyM6IGNvbW1hbmQtbGlzdC5oOjE4NQogbXNnaWQgIlVwZGF0ZSBhdXhpbGlhcnkgaW5mbyBmaWxlIHRvIGhlbHAgZHVtYiBzZXJ2ZXJzIgogbXNnc3RyICIiCiAiTWV0dHJlIMOgIGpvdXIgbGUgZmljaGllciBkJ2luZm9ybWF0aW9ucyBhdXhpbGlhaXJlcyBwb3VyIGFpZGVyIGxlcyBzZXJ2ZXVycyAiCiAiaWRpb3RzIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODMKKyM6IGNvbW1hbmQtbGlzdC5oOjE4NgogbXNnaWQgIlNlbmQgYXJjaGl2ZSBiYWNrIHRvIGdpdC1hcmNoaXZlIgogbXNnc3RyICJSZW52b3llciB1bmUgYXJjaGl2ZSBkYW5zIGdpdC1hcmNoaXZlIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODQKKyM6IGNvbW1hbmQtbGlzdC5oOjE4NwogbXNnaWQgIlNlbmQgb2JqZWN0cyBwYWNrZWQgYmFjayB0byBnaXQtZmV0Y2gtcGFjayIKIG1zZ3N0ciAiUmVudm95ZXIgZGVzIG9iamV0cyBlbXBhcXVldMOpcyBkYW5zIGdpdC1mZXRjaC1wYWNrIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODUKKyM6IGNvbW1hbmQtbGlzdC5oOjE4OAogbXNnaWQgIlNob3cgYSBHaXQgbG9naWNhbCB2YXJpYWJsZSIKIG1zZ3N0ciAiQWZmaWNoZXIgdW4gdmFyaWFibGUgbG9naXF1ZSBkZSBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4NgorIzogY29tbWFuZC1saXN0Lmg6MTg5CiBtc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgY29tbWl0cyIKIG1zZ3N0ciAiVsOpcmlmaWVyIGxhIHNpZ25hdHVyZSBHUEcgZGUgY29tbWl0cyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg3CisjOiBjb21tYW5kLWxpc3QuaDoxOTAKIG1zZ2lkICJWYWxpZGF0ZSBwYWNrZWQgR2l0IGFyY2hpdmUgZmlsZXMiCiBtc2dzdHIgIlZhbGlkZXIgZGVzIGZpY2hpZXJzIGQnYXJjaGl2ZSBHaXQgZW1wYXF1ZXTDqXMiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4OAorIzogY29tbWFuZC1saXN0Lmg6MTkxCiBtc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgdGFncyIKIG1zZ3N0ciAiVsOpcmlmaWVyIGxhIHNpZ25hdHVyZSBHUEcgZCfDqXRpcXVldHRlcyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg5CisjOiBjb21tYW5kLWxpc3QuaDoxOTIKIG1zZ2lkICJHaXQgd2ViIGludGVyZmFjZSAod2ViIGZyb250ZW5kIHRvIEdpdCByZXBvc2l0b3JpZXMpIgogbXNnc3RyICJJbnRlcmZhY2Ugd2ViIGRlIEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTkwCisjOiBjb21tYW5kLWxpc3QuaDoxOTMKIG1zZ2lkICJTaG93IGxvZ3Mgd2l0aCBkaWZmZXJlbmNlIGVhY2ggY29tbWl0IGludHJvZHVjZXMiCiBtc2dzdHIgIkFmZmljaGVyIGxlcyBqb3VybmF1eCBhdmVjIGxhIGRpZmbDqXJlbmNlIHF1ZSBjaGFxdWUgY29tbWl0IGludHJvZHVpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTkxCisjOiBjb21tYW5kLWxpc3QuaDoxOTQKIG1zZ2lkICJNYW5hZ2UgbXVsdGlwbGUgd29ya2luZyB0cmVlcyIKIG1zZ3N0ciAiR8OocmUgZGUgYXJicmVzIGRlIHRyYXZhaWwgbXVsdGlwbGVzIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTIKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NQogbXNnaWQgIkNyZWF0ZSBhIHRyZWUgb2JqZWN0IGZyb20gdGhlIGN1cnJlbnQgaW5kZXgiCiBtc2dzdHIgIkNyw6llciB1biBvYmpldCBhcmJyZSBkZXB1aXMgbCdpbmRleCBjb3VyYW50IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTMKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NgogbXNnaWQgIkRlZmluaW5nIGF0dHJpYnV0ZXMgcGVyIHBhdGgiCiBtc2dzdHIgIkTDqWZpbml0aW9uIGRlcyBhdHRyaWJ1dHMgcGFyIGNoZW1pbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk0CisjOiBjb21tYW5kLWxpc3QuaDoxOTcKIG1zZ2lkICJHaXQgY29tbWFuZC1saW5lIGludGVyZmFjZSBhbmQgY29udmVudGlvbnMiCiBtc2dzdHIgImludGVyZmFjZSBlbiBsaWduZSBkZSBjb21tYW5kZSBldCBjb252ZW50aW9ucyBkZSBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5NQorIzogY29tbWFuZC1saXN0Lmg6MTk4CiBtc2dpZCAiQSBHaXQgY29yZSB0dXRvcmlhbCBmb3IgZGV2ZWxvcGVycyIKIG1zZ3N0ciAiVHV0b3JpZWwgZHUgY8WTdXIgZGUgR2l0IHBvdXIgbGVzIGTDqXZlbG9wcGV1cnMiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5NgorIzogY29tbWFuZC1saXN0Lmg6MTk5CiBtc2dpZCAiR2l0IGZvciBDVlMgdXNlcnMiCiBtc2dzdHIgIkdpdCBwb3VyIGxlcyB1dGlsaXNhdGV1cnMgZGUgQ1ZTIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTcKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMAogbXNnaWQgIlR3ZWFraW5nIGRpZmYgb3V0cHV0IgogbXNnc3RyICJCaWRvdWlsbGFnZSBkZSBsYSBzb3J0aWUgZGlmZiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk4CisjOiBjb21tYW5kLWxpc3QuaDoyMDEKIG1zZ2lkICJBIHVzZWZ1bCBtaW5pbXVtIHNldCBvZiBjb21tYW5kcyBmb3IgRXZlcnlkYXkgR2l0IgogbXNnc3RyICJVbiBlbnNlbWJsZSBtaW5pbWFsIHV0aWxlIGRlcyBjb21tYW5kZXMgZGUgR2l0IHBvdXIgdG91cyBsZXMgam91cnMiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5OQorIzogY29tbWFuZC1saXN0Lmg6MjAyCiBtc2dpZCAiQSBHaXQgR2xvc3NhcnkiCiBtc2dzdHIgIlVuIGdsb3NzYWlyZSBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwMAorIzogY29tbWFuZC1saXN0Lmg6MjAzCiBtc2dpZCAiSG9va3MgdXNlZCBieSBHaXQiCiBtc2dzdHIgIkNyb2NoZXRzIHV0aWxpc8OpcyBwYXIgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDEKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNAogbXNnaWQgIlNwZWNpZmllcyBpbnRlbnRpb25hbGx5IHVudHJhY2tlZCBmaWxlcyB0byBpZ25vcmUiCiBtc2dzdHIgIlNww6ljaWZpZSBsZXMgZmljaGllcnMgbm9uLXN1aXZpcyDDoCBpZ25vcmVyIGludGVudGlvbm5lbGxlbWVudCIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAyCisjOiBjb21tYW5kLWxpc3QuaDoyMDUKIG1zZ2lkICJEZWZpbmluZyBzdWJtb2R1bGUgcHJvcGVydGllcyIKIG1zZ3N0ciAiRMOpZmluaXRpb24gZGVzIHByb3ByacOpdMOpcyBkZSBzb3VzLW1vZHVsZSIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAzCisjOiBjb21tYW5kLWxpc3QuaDoyMDYKIG1zZ2lkICJHaXQgbmFtZXNwYWNlcyIKIG1zZ3N0ciAiRXNwYWNlcyBkZSBub20gZGUgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDQKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNwogbXNnaWQgIkdpdCBSZXBvc2l0b3J5IExheW91dCIKIG1zZ3N0ciAiRGlzcG9zaXRpb24gZCd1biBkw6lww7R0IEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MjA1CisjOiBjb21tYW5kLWxpc3QuaDoyMDgKIG1zZ2lkICJTcGVjaWZ5aW5nIHJldmlzaW9ucyBhbmQgcmFuZ2VzIGZvciBHaXQiCiBtc2dzdHIgIlNww6ljaWZpY2F0aW9uIGRlcyByw6l2aXNpb25zIGV0IHBvcnTDqWVzIHBvdXIgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDYKKyM6IGNvbW1hbmQtbGlzdC5oOjIwOQorbXNnaWQgIk1vdW50aW5nIG9uZSByZXBvc2l0b3J5IGluc2lkZSBhbm90aGVyIgorbXNnc3RyICJNb250YWdlIGQndW4gZMOpcMO0dCBkYW5zIHVuIGF1dHJlIGTDqXDDtHQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMAogbXNnaWQgIkEgdHV0b3JpYWwgaW50cm9kdWN0aW9uIHRvIEdpdDogcGFydCB0d28iCiBtc2dzdHIgIlVuZSBpbnRyb2R1Y3Rpb24gcHJhdGlxdWUgw6AgR2l0wqA6IGRldXhpw6htZSBwYXJ0aWUiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwNworIzogY29tbWFuZC1saXN0Lmg6MjExCiBtc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0IgogbXNnc3RyICJVbmUgaW50cm9kdWN0aW9uIHByYXRpcXVlIMOgIEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MjA4CisjOiBjb21tYW5kLWxpc3QuaDoyMTIKIG1zZ2lkICJBbiBvdmVydmlldyBvZiByZWNvbW1lbmRlZCB3b3JrZmxvd3Mgd2l0aCBHaXQiCiBtc2dzdHIgIlVuIGFwZXLDp3UgZGVzIGZsdXggZGUgdHJhdmFpbCByZWNvbW1hbmTDqXMgYXZlYyBHaXQiCiAKLSM6IHJlcmVyZS5oOjQ0Ci1tc2dpZCAidXBkYXRlIHRoZSBpbmRleCB3aXRoIHJldXNlZCBjb25mbGljdCByZXNvbHV0aW9uIGlmIHBvc3NpYmxlIgotbXNnc3RyICIiCi0ibWV0IMOgIGpvdXIgbCdpbmRleCBhdmVjIGxlcyByw6lzb2x1dGlvbnMgZGUgY29uZmxpdCByw6l1dGlsaXPDqWVzIHNpIHBvc3NpYmxlIgotCiAjOiBnaXQtYmlzZWN0LnNoOjU0CiBtc2dpZCAiWW91IG5lZWQgdG8gc3RhcnQgYnkgXCJnaXQgYmlzZWN0IHN0YXJ0XCIiCiBtc2dzdHIgIlZvdXMgZGV2ZXogZMOpbWFycmVyIGF2ZWMgXCJnaXQgYmlzZWN0IHN0YXJ0XCIiCkBAIC0xOTU3MywxMzggKzIzNTQxLDQ5IEBACiBtc2dpZCAiRG8geW91IHdhbnQgbWUgdG8gZG8gaXQgZm9yIHlvdSBbWS9uXT8gIgogbXNnc3RyICJTb3VoYWl0ZXotdm91cyBxdWUgamUgbGUgZmFzc2UgcG91ciB2b3VzIFtZL25dID8gIgogCi0jOiBnaXQtYmlzZWN0LnNoOjEyMQotIywgc2gtZm9ybWF0Ci1tc2dpZCAidW5yZWNvZ25pc2VkIG9wdGlvbjogJyRhcmcnIgotbXNnc3RyICJvcHRpb24gaW5jb25udWUgOiAnJGFyZyciCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTI1Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICInJGFyZycgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGEgdmFsaWQgcmV2aXNpb24iCi1tc2dzdHIgIickYXJnJyBuZSBzZW1ibGUgw6p0cmUgdW5lIHLDqXZpc2lvbiB2YWxpZGUiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTU0Ci1tc2dpZCAiQmFkIEhFQUQgLSBJIG5lZWQgYSBIRUFEIgotbXNnc3RyICJNYXV2YWlzZSBIRUFEIC0gaidhaSBiZXNvaW4gZCd1bmUgSEVBRCIKLQotIzogZ2l0LWJpc2VjdC5zaDoxNjcKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJDaGVja2luZyBvdXQgJyRzdGFydF9oZWFkJyBmYWlsZWQuIFRyeSAnZ2l0IGJpc2VjdCByZXNldCA8dmFsaWQtYnJhbmNoPicuIgotbXNnc3RyICIiCi0iTCdleHRyYWN0aW9uIGRlICckc3RhcnRfaGVhZCcgYSDDqWNob3XDqS4gRXNzYXlleiAnZ2l0IGJpc2VjdCByZXNldCA8YnJhbmNoZS0iCi0idmFsaWRlPicuIgotCi0jOiBnaXQtYmlzZWN0LnNoOjE3NwotbXNnaWQgIndvbid0IGJpc2VjdCBvbiBjZy1zZWVrJ2VkIHRyZWUiCi1tc2dzdHIgInJlZnVzIGRlIGJpc3NlY3RlciBzdXIgdW4gYXJicmUgJ2NnLXNlZWtlZCciCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTgxCi1tc2dpZCAiQmFkIEhFQUQgLSBzdHJhbmdlIHN5bWJvbGljIHJlZiIKLW1zZ3N0ciAiTWF1dmFpc2UgSEVBRCAtIHLDqWbDqXJlbmNlIHN5bWJvbGlxdWUgZG91dGV1c2UiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MjMzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiAkc3RhdGUiCi1tc2dzdHIgIk1hdXZhaXMgYXJndW1lbnQgcG91ciBiaXNlY3Rfd3JpdGUgOiAkc3RhdGUiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MjQ2CisjOiBnaXQtYmlzZWN0LnNoOjEwMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQmFkIHJldiBpbnB1dDogJGFyZyIKIG1zZ3N0ciAiTWF1dmFpc2UgcsOpdmlzaW9uIGVuIGVudHLDqWUgOiAkYXJnIgogCi0jOiBnaXQtYmlzZWN0LnNoOjI2NQorIzogZ2l0LWJpc2VjdC5zaDoxMjEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRiaXNlY3RlZF9oZWFkIgogbXNnc3RyICJNYXV2YWlzZSByw6l2aXNpb24gZW4gZW50csOpZSA6ICRiaXNlY3RlZF9oZWFkIgogCi0jOiBnaXQtYmlzZWN0LnNoOjI3NAorIzogZ2l0LWJpc2VjdC5zaDoxMzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRyZXYiCiBtc2dzdHIgIk1hdXZhaXNlIHLDqXZpc2lvbiBlbiBlbnRyw6llIDogJHJldiIKIAotIzogZ2l0LWJpc2VjdC5zaDoyODMKKyM6IGdpdC1iaXNlY3Quc2g6MTM5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInZ2l0IGJpc2VjdCAkVEVSTV9CQUQnIGNhbiB0YWtlIG9ubHkgb25lIGFyZ3VtZW50LiIKIG1zZ3N0ciAiJ2dpdCBiaXNlY3QgJFRFUk1fQkFEJyBuJ2FjY2VwdGUgcXUndW4gc2V1bCBhcmd1bWVudC4iCiAKLSM6IGdpdC1iaXNlY3Quc2g6MzA2Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJXYXJuaW5nOiBiaXNlY3Rpbmcgb25seSB3aXRoIGEgJFRFUk1fQkFEIGNvbW1pdC4iCi1tc2dzdHIgIkF0dGVudGlvbiA6IGJpc3NlY3Rpb24gYXZlYyBzZXVsZW1lbnQgdW5lIHZhbGlkYXRpb24gJFRFUk1fQkFELiIKLQotIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtZXSBhbmQgW25dIGluIHlvdXIKLSMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKLSMuIGF0IHRoaXMgcG9pbnQuCi0jOiBnaXQtYmlzZWN0LnNoOjMxMgotbXNnaWQgIkFyZSB5b3Ugc3VyZSBbWS9uXT8gIgotbXNnc3RyICJDb25maXJtZXotdm91cyBbWS9uXSA/ICIKLQotIzogZ2l0LWJpc2VjdC5zaDozMjQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJZb3UgbmVlZCB0byBnaXZlIG1lIGF0IGxlYXN0IG9uZSAkYmFkX3N5biBhbmQgb25lICRnb29kX3N5biByZXZpc2lvbi5cbiIKLSIoWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICRiYWRfc3luXCIgYW5kIFwiZ2l0IGJpc2VjdCAkZ29vZF9zeW5cIiBmb3IgdGhhdC4pIgotbXNnc3RyICIiCi0iVm91cyBkZXZleiBtZSBkb25uZXIgYXUgbW9pbnMgdW5lIHLDqXZpc2lvbiAkYmFkX3N5biBldCB1bmUgcsOpdmlzaW9uICIKLSIkZ29vZF9zeW4uXG4iCi0iKFZvdXMgcG91dmV6IHV0aWxpc2VyIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGV0IFwiZ2l0IGJpc2VjdCAkZ29vZF9zeW5cIiAiCi0icG91ciBjZWxhLikiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MzI3Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iWW91IG5lZWQgdG8gc3RhcnQgYnkgXCJnaXQgYmlzZWN0IHN0YXJ0XCIuXG4iCi0iWW91IHRoZW4gbmVlZCB0byBnaXZlIG1lIGF0IGxlYXN0IG9uZSAkZ29vZF9zeW4gYW5kIG9uZSAkYmFkX3N5biByZXZpc2lvbi5cbiIKLSIoWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICRiYWRfc3luXCIgYW5kIFwiZ2l0IGJpc2VjdCAkZ29vZF9zeW5cIiBmb3IgdGhhdC4pIgotbXNnc3RyICIiCi0iVm91cyBkZXZleiBkw6ltYXJyZXIgYXZlYyBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKLSJQdWlzIHZvdXMgZGV2ZXogbWUgZG9ubmVyIGF1IG1vaW5zIHVuZSByw6l2aXNpb24gJGdvb2Rfc3luIGV0IHVuZSByw6l2aXNpb24gIgotIiRiYWRfc3luLlxuIgotIihWb3VzIHBvdXZleiB1dGlsaXNlciBcImdpdCBiaXNlY3QgJGJhZF9zeW5cIiBldCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgIgotInBvdXIgY2VsYS4pIgotCi0jOiBnaXQtYmlzZWN0LnNoOjM5OCBnaXQtYmlzZWN0LnNoOjUxMgotbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLiIKLW1zZ3N0ciAiUGFzIGRlIGJpc3NlY3Rpb24gZW4gY291cnMuIgotCi0jOiBnaXQtYmlzZWN0LnNoOjQwNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJyRpbnZhbGlkJyBpcyBub3QgYSB2YWxpZCBjb21taXQiCi1tc2dzdHIgIickaW52YWxpZCcgbidlc3QgcGFzIHVuZSB2YWxpZGF0aW9uIHZhbGlkZSIKLQotIzogZ2l0LWJpc2VjdC5zaDo0MTQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJDb3VsZCBub3QgY2hlY2sgb3V0IG9yaWdpbmFsIEhFQUQgJyRicmFuY2gnLlxuIgotIlRyeSAnZ2l0IGJpc2VjdCByZXNldCA8Y29tbWl0PicuIgotbXNnc3RyICIiCi0iw4ljaGVjIGQnZXh0cmFjdGlvbiBkZSBsYSBIRUFEIGQnb3JpZ2luZSAnJGJyYW5jaCcuXG4iCi0iRXNzYXlleiAnZ2l0IGJpc2VjdCByZXNldCA8Y29tbWl0PicuIgotCi0jOiBnaXQtYmlzZWN0LnNoOjQyMgorIzogZ2l0LWJpc2VjdC5zaDoyMDkKIG1zZ2lkICJObyBsb2dmaWxlIGdpdmVuIgogbXNnc3RyICJQYXMgZGUgZmljaGllciBkZSBsb2cgZG9ubsOpIgogCi0jOiBnaXQtYmlzZWN0LnNoOjQyMworIzogZ2l0LWJpc2VjdC5zaDoyMTAKICMsIHNoLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICRmaWxlIGZvciByZXBsYXlpbmciCiBtc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSAkZmlsZSBwb3VyIHJlam91ZXIiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDQ0CisjOiBnaXQtYmlzZWN0LnNoOjIzMgogbXNnaWQgIj8/IHdoYXQgYXJlIHlvdSB0YWxraW5nIGFib3V0PyIKIG1zZ3N0ciAiPz8gZGUgcXVvaSBwYXJsZXotdm91cyA/IgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ1MworIzogZ2l0LWJpc2VjdC5zaDoyNDEKIG1zZ2lkICJiaXNlY3QgcnVuIGZhaWxlZDogbm8gY29tbWFuZCBwcm92aWRlZC4iCiBtc2dzdHIgImxhIGJpc3NlY3Rpb24gYSDDqWNob3XDqcKgOiBhdWN1bmUgY29tbWFuZGUgZm91cm5pZS4iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDU4CisjOiBnaXQtYmlzZWN0LnNoOjI0NgogIywgc2gtZm9ybWF0CiBtc2dpZCAicnVubmluZyAkY29tbWFuZCIKIG1zZ3N0ciAibGFuY2VtZW50IGRlICRjb21tYW5kIgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ2NQorIzogZ2l0LWJpc2VjdC5zaDoyNTMKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJiaXNlY3QgcnVuIGZhaWxlZDpcbiIKQEAgLTE5NzEzLDExICsyMzU5MiwxMSBAQAogImxhIGJpc3NlY3Rpb24gYSDDqWNob3XDqSA6XG4iCiAibGUgY29kZSByZXRvdXIgJHJlcyBkZSAnJGNvbW1hbmQnIGVzdCA8IDAgb3UgPj0gMTI4IgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ5MQorIzogZ2l0LWJpc2VjdC5zaDoyNzkKIG1zZ2lkICJiaXNlY3QgcnVuIGNhbm5vdCBjb250aW51ZSBhbnkgbW9yZSIKIG1zZ3N0ciAibGEgYmlzc2VjdGlvbiBuZSBwZXV0IHBsdXMgY29udGludWVyIgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ5NworIzogZ2l0LWJpc2VjdC5zaDoyODUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJiaXNlY3QgcnVuIGZhaWxlZDpcbiIKQEAgLTE5NzI2LDMwICsyMzYwNSwxMyBAQAogImxhIGJpc3NlY3Rpb24gYSDDqWNob3XDqSA6XG4iCiAiJ2Jpc2VjdF9zdGF0ZSAkc3RhdGUnIGEgcmV0b3VybsOpIGxlIGNvZGUgZXJyZXVyICRyZXMiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NTA0CisjOiBnaXQtYmlzZWN0LnNoOjI5MgogbXNnaWQgImJpc2VjdCBydW4gc3VjY2VzcyIKIG1zZ3N0ciAic3VjY8OocyBkZSBsYSBiaXNzZWN0aW9uIgogCi0jOiBnaXQtYmlzZWN0LnNoOjUzMwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiSW52YWxpZCBjb21tYW5kOiB5b3UncmUgY3VycmVudGx5IGluIGEgJFRFUk1fQkFELyRURVJNX0dPT0QgYmlzZWN0LiIKLW1zZ3N0ciAiIgotIkNvbW1hbmRlIGludmFsaWRlwqA6IHZvdXMgw6p0ZXMgYWN0dWVsbGVtZW50IGRhbnMgdW5lIGJpc3NlY3Rpb24gJFRFUk1fQkFELyIKLSIkVEVSTV9HT09ELiIKLQotIzogZ2l0LWJpc2VjdC5zaDo1NjcKLW1zZ2lkICJubyB0ZXJtcyBkZWZpbmVkIgotbXNnc3RyICJhdWN1biB0ZXJtZSBkw6lmaW5pIgotCi0jOiBnaXQtYmlzZWN0LnNoOjU4NAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotImludmFsaWQgYXJndW1lbnQgJGFyZyBmb3IgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgotIlN1cHBvcnRlZCBvcHRpb25zIGFyZTogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCBhbmQgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKLW1zZ3N0ciAiIgotImFyZ3VtZW50IGludmFsaWRlICRhcmcgcG91ciAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCi0iTGVzIG9wdGlvbnMgc3VwcG9ydMOpZXMgc29udMKgOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGV0IC0tdGVybS1iYWR8LS10ZXJtLSIKLSJuZXcuIgorIzogZ2l0LWJpc2VjdC5zaDozMDAKK21zZ2lkICJXZSBhcmUgbm90IGJpc2VjdGluZy4iCittc2dzdHIgIlBhcyBkZSBiaXNzZWN0aW9uIGVuIGNvdXJzLiIKIAogIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6NDYKIG1zZ2lkICIiCkBAIC0xOTc5MSwyOTcgKzIzNjUzLDEzMyBAQAogbXNnaWQgIlNpbXBsZSBtZXJnZSBkaWQgbm90IHdvcmssIHRyeWluZyBhdXRvbWF0aWMgbWVyZ2UuIgogbXNnc3RyICJMYSBmdXNpb24gc2ltcGxlIGEgw6ljaG91w6ksIGVzc2FpIGF2ZWMgbGEgZnVzaW9uIGF1dG9tYXRpcXVlLiIKIAotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDM0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgbW92ZSBiYWNrIHRvICRoZWFkX25hbWUiCi1tc2dzdHIgIkltcG9zc2libGUgZGUgcmV2ZW5pciDDoCAkaGVhZF9uYW1lIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0NjAKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJJdCBzZWVtcyB0aGF0IHRoZXJlIGlzIGFscmVhZHkgYSAkc3RhdGVfZGlyX2Jhc2UgZGlyZWN0b3J5LCBhbmRcbiIKLSJJIHdvbmRlciBpZiB5b3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciByZWJhc2UuICBJZiB0aGF0IGlzIHRoZVxuIgotImNhc2UsIHBsZWFzZSB0cnlcbiIKLSJcdCRjbWRfbGl2ZV9yZWJhc2VcbiIKLSJJZiB0aGF0IGlzIG5vdCB0aGUgY2FzZSwgcGxlYXNlXG4iCi0iXHQkY21kX2NsZWFyX3N0YWxlX3JlYmFzZVxuIgotImFuZCBydW4gbWUgYWdhaW4uICBJIGFtIHN0b3BwaW5nIGluIGNhc2UgeW91IHN0aWxsIGhhdmUgc29tZXRoaW5nXG4iCi0idmFsdWFibGUgdGhlcmUuIgotbXNnc3RyICIiCi0iSWwgc2VtYmxlIHF1J2lsIHkgYWl0IGTDqWrDoCB1biByw6lwZXJ0b2lyZSAkc3RhdGVfZGlyX2Jhc2UsIGV0IGplIG1lIGRlbWFuZGVcbiIKLSJzaSB1biBhdXRyZSByZWJhc2FnZSBuJ2VzdCBwYXMgZMOpasOgIGVuIGNvdXJzLiBTaSBjJ2VzdCBsZSBjYXMsXG4iCi0iZXNzYXllelxuIgotIlx0JGNtZF9saXZlX3JlYmFzZVxuIgotIlNpbm9uLCBlc3NheWV6XG4iCi0iXHQkY21kX2NsZWFyX3N0YWxlX3JlYmFzZVxuIgotInB1aXMgcmVsYW5jZXotbW9pIMOgIG5vdXZlYXUuICBKZSBtJ2FycsOqdGUgYXUgY2FzIG/DuSB2b3VzIGF1cmlleiBxdWVscXVlICIKLSJjaG9zZVxuIgotImQnaW1wb3J0YW50IGljaS4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjUyNQotbXNnaWQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1zaWdub2ZmJyB3aXRoICctLXByZXNlcnZlLW1lcmdlcyciCi1tc2dzdHIgImVycmV1csKgOiAnLS1zaWdub2ZmJyBldCAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHNvbnQgaW5jb21wYXRpYmxlcyIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTcwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICckdXBzdHJlYW1fbmFtZSciCi1tc2dzdHIgImludmFsaWRlICckdXBzdHJlYW1fbmFtZScgZW4gYW1vbnQiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU5NAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJG9udG9fbmFtZTogdGhlcmUgYXJlIG1vcmUgdGhhbiBvbmUgbWVyZ2UgYmFzZXMiCi1tc2dzdHIgIiRvbnRvX25hbWUgOiBpbCB5IGEgcGx1cyBkJ3VuZSBiYXNlIGRlIGZ1c2lvbiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTk3IGdpdC1sZWdhY3ktcmViYXNlLnNoOjYwMQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJG9udG9fbmFtZTogdGhlcmUgaXMgbm8gbWVyZ2UgYmFzZSIKLW1zZ3N0ciAiJG9udG9fbmFtZSA6IGlsIG4neSBhIHBhcyBkZSBiYXNlIGRlIGZ1c2lvbiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjA2Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJEb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIGNvbW1pdDogJG9udG9fbmFtZSIKLW1zZ3N0ciAiTmUgcG9pbnRlIHBhcyBzdXIgdW5lIHZhbGlkYXRpb24gdmFsaWRlIDogJG9udG9fbmFtZSIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjMyCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICckYnJhbmNoX25hbWUnIgotbXNnc3RyICJmYXRhbCA6IHBhcyBkZSBicmFuY2hlIG91IGNvbW1pdCAnJGJyYW5jaF9uYW1lJyIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjcwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJHN0YXNoX2FiYnJldiIKLW1zZ3N0ciAiQXV0b3JlbWlzYWdlIGNyw6nDqSA6ICRzdGFzaF9hYmJyZXYiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjY5OQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUuIgotbXNnc3RyICJMYSBicmFuY2hlIGNvdXJhbnRlICRicmFuY2hfbmFtZSBlc3Qgw6Agam91ci4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjcwOQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgotbXNnc3RyICJMYSBicmFuY2hlIGNvdXJhbnRlICRicmFuY2hfbmFtZSBlc3Qgw6Agam91ciwgcmViYXNhZ2UgZm9yY8OpLiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzIzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDaGFuZ2VzIHRvICRvbnRvOiIKLW1zZ3N0ciAiQ2hhbmdlbWVudHMgc3VyICRvbnRvIDoiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjcyNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ2hhbmdlcyBmcm9tICRtYiB0byAkb250bzoiCi1tc2dzdHIgIkNoYW5nZW1lbnRzIGRlICRtYiBzdXIgJG9udG8gOiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzM2Ci1tc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uIgotbXNnc3RyICIiCi0iUmVtYm9iaW5hZ2UgcHLDqWFsYWJsZSBkZSBoZWFkIHBvdXIgcG91dm9pciByZWpvdWVyIHZvdHJlIHRyYXZhaWwgcGFyLSIKLSJkZXNzdXMuLi4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjc0NgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRmFzdC1mb3J3YXJkZWQgJGJyYW5jaF9uYW1lIHRvICRvbnRvX25hbWUuIgotbXNnc3RyICIkYnJhbmNoX25hbWUgbWlzZSDDoCBqb3VyIGVuIGF2YW5jZSByYXBpZGUgc3VyICRvbnRvX25hbWUuIgotCi0jOiBnaXQtc3Rhc2guc2g6NjEKLW1zZ2lkICJnaXQgc3Rhc2ggY2xlYXIgd2l0aCBwYXJhbWV0ZXJzIGlzIHVuaW1wbGVtZW50ZWQiCi1tc2dzdHIgImdpdCBzdGFzaCBjbGVhciBhdmVjIGRlcyBwYXJhbcOodHJlcyBuJ2VzdCBwYXMgaW1wbMOpbWVudMOpIgotCi0jOiBnaXQtc3Rhc2guc2g6MTA4Ci1tc2dpZCAiWW91IGRvIG5vdCBoYXZlIHRoZSBpbml0aWFsIGNvbW1pdCB5ZXQiCi1tc2dzdHIgIlZvdXMgbidhdmV6IHBhcyBlbmNvcmUgbGEgdmFsaWRhdGlvbiBpbml0aWFsZSIKLQotIzogZ2l0LXN0YXNoLnNoOjEyMwotbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IGluZGV4IHN0YXRlIgotbXNnc3RyICJJbXBvc3NpYmxlIGRlIHNhdXZlciBsJ8OpdGF0IGNvdXJhbnQgZGUgbCdpbmRleCIKLQotIzogZ2l0LXN0YXNoLnNoOjEzOAotbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSB1bnRyYWNrZWQgZmlsZXMiCi1tc2dzdHIgIkltcG9zc2libGUgZGUgc2F1dmVyIGxlcyBmaWNoaWVycyBub24tc3VpdmlzIgotCi0jOiBnaXQtc3Rhc2guc2g6MTU4IGdpdC1zdGFzaC5zaDoxNzEKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCB3b3JrdHJlZSBzdGF0ZSIKLW1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBzYXV2ZXIgbCfDqXRhdCBjb3VyYW50IGRlIGxhIGNvcGllIGRlIHRyYXZhaWwiCi0KLSM6IGdpdC1zdGFzaC5zaDoxNzUKLW1zZ2lkICJObyBjaGFuZ2VzIHNlbGVjdGVkIgotbXNnc3RyICJBdWN1biBjaGFuZ2VtZW50IHPDqWxlY3Rpb25uw6kiCi0KLSM6IGdpdC1zdGFzaC5zaDoxNzgKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjIxCiBtc2dpZCAiQ2Fubm90IHJlbW92ZSB0ZW1wb3JhcnkgaW5kZXggKGNhbid0IGhhcHBlbikiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgc3VwcHJpbWVyIGwnaW5kZXggdGVtcG9yYWlyZSAobmUgcGV1dCBwYXMgc2UgcHJvZHVpcmUpIgogCi0jOiBnaXQtc3Rhc2guc2g6MTkxCi1tc2dpZCAiQ2Fubm90IHJlY29yZCB3b3JraW5nIHRyZWUgc3RhdGUiCi1tc2dzdHIgIkltcG9zc2libGUgZCdlbnJlZ2lzdHJlciBsJ8OpdGF0IGRlIGxhIGNvcGllIGRlIHRyYXZhaWwiCi0KLSM6IGdpdC1zdGFzaC5zaDoyMjkKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjcyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgdXBkYXRlICRyZWZfc3Rhc2ggd2l0aCAkd19jb21taXQiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgbWV0dHJlIMOgIGpvdXIgJHJlZl9zdGFzaCBhdmVjICR3X2NvbW1pdCIKIAotIzogZ2l0LXN0YXNoLnNoOjI4MQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMjQKICMsIHNoLWZvcm1hdAogbXNnaWQgImVycm9yOiB1bmtub3duIG9wdGlvbiBmb3IgJ3N0YXNoIHB1c2gnOiAkb3B0aW9uIgogbXNnc3RyICJlcnJldXLCoDogb3B0aW9uIGluY29ubnVlIHBvdXIgJ3N0YXNoIHB1c2gnwqA6ICRvcHRpb24iCiAKLSM6IGdpdC1zdGFzaC5zaDoyOTUKLW1zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgotbXNnc3RyICIiCi0iSW1wb3NzaWJsZSBkJ3V0aWxpc2VyIC0tcGF0Y2ggZXQgLS1pbmNsdWRlLXVudHJhY2tlZCBvdSAtLWFsbCBlbiBtw6ptZSB0ZW1wcyIKLQotIzogZ2l0LXN0YXNoLnNoOjMwMwotbXNnaWQgIk5vIGxvY2FsIGNoYW5nZXMgdG8gc2F2ZSIKLW1zZ3N0ciAiUGFzIGRlIG1vZGlmaWNhdGlvbnMgbG9jYWxlcyDDoCBzYXV2ZXIiCi0KLSM6IGdpdC1zdGFzaC5zaDozMDgKLW1zZ2lkICJDYW5ub3QgaW5pdGlhbGl6ZSBzdGFzaCIKLW1zZ3N0ciAiSW1wb3NzaWJsZSBkJ2luaXRpYWxpc2VyIGxlIHJlbWlzYWdlIgotCi0jOiBnaXQtc3Rhc2guc2g6MzEyCi1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgc3RhdHVzIgotbXNnc3RyICJJbXBvc3NpYmxlIGRlIHNhdXZlciBsJ8OpdGF0IGNvdXJhbnQiCi0KLSM6IGdpdC1zdGFzaC5zaDozMTMKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MzU2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTYXZlZCB3b3JraW5nIGRpcmVjdG9yeSBhbmQgaW5kZXggc3RhdGUgJHN0YXNoX21zZyIKIG1zZ3N0ciAiQ29waWUgZGUgdHJhdmFpbCBldCDDqXRhdCBkZSBsJ2luZGV4IHNhdXZlZ2FyZMOpcyBkYW5zICRzdGFzaF9tc2ciCiAKLSM6IGdpdC1zdGFzaC5zaDozNDIKLW1zZ2lkICJDYW5ub3QgcmVtb3ZlIHdvcmt0cmVlIGNoYW5nZXMiCi1tc2dzdHIgIkltcG9zc2libGUgZGUgc3VwcHJpbWVyIGxlcyBjaGFuZ2VtZW50cyBkZSBsYSBjb3BpZSBkZSB0cmF2YWlsIgotCi0jOiBnaXQtc3Rhc2guc2g6NDkwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjUzNgogIywgc2gtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvcHRpb246ICRvcHQiCiBtc2dzdHIgIm9wdGlvbiBpbmNvbm51ZcKgOiAkb3B0IgogCi0jOiBnaXQtc3Rhc2guc2g6NTAzCi1tc2dpZCAiTm8gc3Rhc2ggZW50cmllcyBmb3VuZC4iCi1tc2dzdHIgIkF1Y3VuZSBlbnRyw6llIGRlIHJlbWlzYWdlIHRyb3V2w6llLiIKLQotIzogZ2l0LXN0YXNoLnNoOjUxMAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NTYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlRvbyBtYW55IHJldmlzaW9ucyBzcGVjaWZpZWQ6ICRSRVYiCiBtc2dzdHIgIlRyb3AgZGUgcsOpdmlzaW9ucyBzcMOpY2lmacOpZXMgOiAkUkVWIgogCi0jOiBnaXQtc3Rhc2guc2g6NTI1CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU3MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJHJlZmVyZW5jZSBpcyBub3QgYSB2YWxpZCByZWZlcmVuY2UiCiBtc2dzdHIgIiRyZWZlcmVuY2Ugbidlc3QgcGFzIHVuZSByw6lmw6lyZW5jZSB2YWxpZGUiCiAKLSM6IGdpdC1zdGFzaC5zaDo1NTMKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NTk5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJGFyZ3MnIGlzIG5vdCBhIHN0YXNoLWxpa2UgY29tbWl0IgogbXNnc3RyICInJGFyZ3MnIG4nZXN0IHBhcyB1bmUgdmFsaWRhdGlvbiBkZSB0eXBlIHJlbWlzYWdlIgogCi0jOiBnaXQtc3Rhc2guc2g6NTY0CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYxMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRhcmdzJyBpcyBub3QgYSBzdGFzaCByZWZlcmVuY2UiCiBtc2dzdHIgIickYXJncycgbidlc3QgcGFzIHVuZSByw6lmw6lyZW5jZSBkZSByZW1pc2FnZSIKIAotIzogZ2l0LXN0YXNoLnNoOjU3MgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MTgKIG1zZ2lkICJ1bmFibGUgdG8gcmVmcmVzaCBpbmRleCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByYWZyYcOuY2hpciBsJ2luZGV4IgogCi0jOiBnaXQtc3Rhc2guc2g6NTc2CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYyMgogbXNnaWQgIkNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkJ2FwcGxpcXVlciB1biByZW1pc2FnZSBlbiBjb3VycyBkZSBmdXNpb24iCiAKLSM6IGdpdC1zdGFzaC5zaDo1ODQKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjMwCiBtc2dpZCAiQ29uZmxpY3RzIGluIGluZGV4LiBUcnkgd2l0aG91dCAtLWluZGV4LiIKIG1zZ3N0ciAiQ29uZmxpdHMgZGFucyBsJ2luZGV4LiBFc3NheWV6IHNhbnMgLS1pbmRleC4iCiAKLSM6IGdpdC1zdGFzaC5zaDo1ODYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjMyCiBtc2dpZCAiQ291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBzYXV2ZWdhcmRlciBsJ2FyYnJlIGQnaW5kZXgiCiAKLSM6IGdpdC1zdGFzaC5zaDo1OTUKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjQxCiBtc2dpZCAiQ291bGQgbm90IHJlc3RvcmUgdW50cmFja2VkIGZpbGVzIGZyb20gc3Rhc2ggZW50cnkiCiBtc2dzdHIgIiIKICJJbXBvc3NpYmxlIGRlIHJlc3RhdXJlciBsZXMgZmljaGllcnMgbm9uLXN1aXZpcyBkZXB1aXMgbCdlbnRyw6llIGRlIHJlbWlzYWdlIgogCi0jOiBnaXQtc3Rhc2guc2g6NjIwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjY2NgogbXNnaWQgIkNhbm5vdCB1bnN0YWdlIG1vZGlmaWVkIGZpbGVzIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIGTDqXNpbmRleGVyIGxlcyBmaWNoaWVycyBtb2RpZmnDqXMiCiAKLSM6IGdpdC1zdGFzaC5zaDo2MzUKLW1zZ2lkICJJbmRleCB3YXMgbm90IHVuc3Rhc2hlZC4iCi1tc2dzdHIgIkwnaW5kZXggbidhIHBhcyDDqXTDqSBzb3J0aSBkZSByZW1pc2UuIgotCi0jOiBnaXQtc3Rhc2guc2g6NjQ5Ci1tc2dpZCAiVGhlIHN0YXNoIGVudHJ5IGlzIGtlcHQgaW4gY2FzZSB5b3UgbmVlZCBpdCBhZ2Fpbi4iCi1tc2dzdHIgIiIKLSJMJ2VudHLDqWUgZGUgcmVtaXNhZ2UgZXN0IGNvbnNlcnbDqWUgYXUgY2FzIG/DuSB2b3VzIGVuIGF1cmlleiBlbmNvcmUgYmVzb2luLiIKLQotIzogZ2l0LXN0YXNoLnNoOjY1OAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDQKICMsIHNoLWZvcm1hdAogbXNnaWQgIkRyb3BwZWQgJHtSRVZ9ICgkcykiCiBtc2dzdHIgIiR7UkVWfSBzdXBwcmltw6kgKCRzKSIKIAotIzogZ2l0LXN0YXNoLnNoOjY1OQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiR7UkVWfTogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCi1tc2dzdHIgIiR7UkVWfTogSW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgbCfDqWzDqW1lbnQgZGUgc3Rhc2giCittc2dzdHIgIiR7UkVWfTogSW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgbCdlbnRyw6llIGRlIHN0YXNoIgogCi0jOiBnaXQtc3Rhc2guc2g6NjY3Ci1tc2dpZCAiTm8gYnJhbmNoIG5hbWUgc3BlY2lmaWVkIgotbXNnc3RyICJBdWN1bmUgYnJhbmNoZSBzcMOpY2lmacOpZSIKLQotIzogZ2l0LXN0YXNoLnNoOjc0NgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3OTIKIG1zZ2lkICIoVG8gcmVzdG9yZSB0aGVtIHR5cGUgXCJnaXQgc3Rhc2ggYXBwbHlcIikiCiBtc2dzdHIgIihQb3VyIGxlcyByZXN0YXVyZXIgdGFwZXogXCJnaXQgc3Rhc2ggYXBwbHlcIikiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MTk4CisjOiBnaXQtc3VibW9kdWxlLnNoOjIwMwogbXNnaWQgIlJlbGF0aXZlIHBhdGggY2FuIG9ubHkgYmUgdXNlZCBmcm9tIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICIiCiAiVW4gY2hlbWluIHJlbGF0aWYgbmUgcGV1dCDDqnRyZSB1dGlsaXPDqSBxdWUgZGVwdWlzIGxhIHJhY2luZSBkZSBsYSBjb3BpZSBkZSAiCiAidHJhdmFpbCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMDgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjEzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJyZXBvIFVSTDogJyRyZXBvJyBtdXN0IGJlIGFic29sdXRlIG9yIGJlZ2luIHdpdGggLi98Li4vIgogbXNnc3RyICJMJ1VSTCBkZSBkw6lww7R0ICckcmVwbycgZG9pdCDDqnRyZSBhYnNvbHUgb3UgY29tbWVuY2VyIHBhciAuL3wuLi8iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjI3CisjOiBnaXQtc3VibW9kdWxlLnNoOjIzMgogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXgiCiBtc2dzdHIgIickc21fcGF0aCcgZXhpc3RlIGTDqWrDoCBkYW5zIGwnaW5kZXgiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjMwCisjOiBnaXQtc3VibW9kdWxlLnNoOjIzNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXggYW5kIGlzIG5vdCBhIHN1Ym1vZHVsZSIKIG1zZ3N0ciAiJyRzbV9wYXRoJyBleGlzdGUgZMOpasOgIGRhbnMgbCdpbmRleCBldCBuJ2VzdCBwYXMgdW4gc291cy1tb2R1bGUiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjM2CisjOiBnaXQtc3VibW9kdWxlLnNoOjI0MgogIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIlRoZSBmb2xsb3dpbmcgcGF0aCBpcyBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCi0iJHNtX3BhdGhcbiIKLSJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCBpdC4iCi1tc2dzdHIgIiIKLSJMZSBjaGVtaW4gc3VpdmFudCBlc3QgaWdub3LDqSBwYXIgdW4gZGUgdm9zIGZpY2hpZXJzIC5naXRpZ25vcmUgOlxuIgotIiRzbV9wYXRoXG4iCi0iVXRpbGlzZXogLWYgc2kgdm91cyB2b3VsZXogdnJhaW1lbnQgbCdham91dGVyLiIKK21zZ2lkICInJHNtX3BhdGgnIGRvZXMgbm90IGhhdmUgYSBjb21taXQgY2hlY2tlZCBvdXQiCittc2dzdHIgIickc21fcGF0aCcgbidhIHBhcyBkZSBjb21taXQgZXh0cmFpdCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNTkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjczCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJBZGRpbmcgZXhpc3RpbmcgcmVwbyBhdCAnJHNtX3BhdGgnIHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiQWpvdXQgZHUgZMOpcMO0dCBleGlzdGFudCDDoCAnJHNtX3BhdGgnIGRhbnMgbCdpbmRleCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNjEKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjc1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYSB2YWxpZCBnaXQgcmVwbyIKIG1zZ3N0ciAiJyRzbV9wYXRoJyBleGlzdGUgZMOpasOgIGV0IG4nZXN0IHBhcyB1biBkw6lww7R0IGdpdCB2YWxpZGUiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjY5CisjOiBnaXQtc3VibW9kdWxlLnNoOjI4MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiQSBnaXQgZGlyZWN0b3J5IGZvciAnJHNtX25hbWUnIGlzIGZvdW5kIGxvY2FsbHkgd2l0aCByZW1vdGUocyk6IgogbXNnc3RyICIiCiAiVW4gcsOpcGVydG9pcmUgZ2l0IHBvdXIgJyRzbV9uYW1lJyBlc3QgdHJvdXbDqSBlbiBsb2NhbCBhdmVjIGxlKHMpIHNlcnZldXIocykgIgogImRpc3RhbnQocykgOiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzEKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjg1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiSWYgeW91IHdhbnQgdG8gcmV1c2UgdGhpcyBsb2NhbCBnaXQgZGlyZWN0b3J5IGluc3RlYWQgb2YgY2xvbmluZyBhZ2FpbiBmcm9tXG4iCkBAIC0yMDA5OCwzOSArMjM3OTYsMzkgQEAKICJjb3JyZWN0XG4iCiAib3Ugc2kgY2VjaSBuJ2VzdCBwYXMgY2xhaXIsIGNob2lzaXNzZXogdW4gYXV0cmUgbm9tIGF2ZWMgbCdvcHRpb24gJy0tbmFtZScuIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI3NworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYWN0aXZhdGluZyBsb2NhbCBnaXQgZGlyZWN0b3J5IGZvciBzdWJtb2R1bGUgJyRzbV9uYW1lJy4iCiBtc2dzdHIgIlLDqWFjdGl2YXRpb24gZHUgcsOpcGVydG9pcmUgZ2l0IGxvY2FsIHBvdXIgbGUgc291cy1tb2R1bGUgJyRzbV9uYW1lJy4iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6Mjg5CisjOiBnaXQtc3VibW9kdWxlLnNoOjMwMwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGNoZWNrb3V0IHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICJJbXBvc3NpYmxlIGQnZXh0cmFpcmUgbGUgc291cy1tb2R1bGUgJyRzbV9wYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTQKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MzA4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gYWRkIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICLDiWNoZWMgZCdham91dCBkdSBzb3VzLW1vZHVsZSAnJHNtX3BhdGgnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjMwMworIzogZ2l0LXN1Ym1vZHVsZS5zaDozMTcKICMsIHNoLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAiw4ljaGVjIGQnZW5yZWdpc3RyZW1lbnQgZHUgc291cy1tb2R1bGUgJyRzbV9wYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NjMKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NTkwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gZmluZCBjdXJyZW50IHJldmlzaW9uIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICIiCiAiSW1wb3NzaWJsZSBkZSB0cm91dmVyIGxhIHLDqXZpc2lvbiBjb3VyYW50ZSBkYW5zIGxlIGNoZW1pbiBkZSBzb3VzLW1vZHVsZSAiCiAiJyRkaXNwbGF5cGF0aCciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTczCisjOiBnaXQtc3VibW9kdWxlLnNoOjYwMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGZldGNoIGluIHN1Ym1vZHVsZSBwYXRoICckc21fcGF0aCciCiBtc2dzdHIgIkltcG9zc2libGUgZGUgcmFwYXRyaWVyIGRhbnMgbGUgY2hlbWluIGRlIHNvdXMtbW9kdWxlICckc21fcGF0aCciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTc4CisjOiBnaXQtc3VibW9kdWxlLnNoOjYwNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIlVuYWJsZSB0byBmaW5kIGN1cnJlbnQgJHtyZW1vdGVfbmFtZX0vJHticmFuY2h9IHJldmlzaW9uIGluIHN1Ym1vZHVsZSBwYXRoICIKQEAgLTIwMTM5LDEyICsyMzgzNywxNiBAQAogIkltcG9zc2libGUgZGUgdHJvdXZlciBsYSByw6l2aXNpb24gY291cmFudGUgJHtyZW1vdGVfbmFtZX0vJHticmFuY2h9IGRhbnMgbGUgIgogImNoZW1pbiBkZSBzb3VzLW1vZHVsZSAnJHNtX3BhdGgnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU5NgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjMKICMsIHNoLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKLW1zZ3N0ciAiSW1wb3NzaWJsZSBkZSByYXBhdHJpZXIgZGFucyBsZSBjaGVtaW4gZGUgc291cy1tb2R1bGUgJyRkaXNwbGF5cGF0aCciCittc2dpZCAiIgorIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzsgdHJ5aW5nIHRvIGRpcmVjdGx5IGZldGNoICIKKyIkc2hhMToiCittc2dzdHIgIiIKKyJJbXBvc3NpYmxlIGRlIHJhcGF0cmllciBkYW5zIGxlIGNoZW1pbiBkZSBzb3VzLW1vZHVsZSAnJGRpc3BsYXlwYXRoJ8KgOyBlc3NhaSAiCisiZGUgcmFwYXRyaWVtZW50IGRpcmVjdCBkZSAkc2hhMcKgOiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDIKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjI5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiRmV0Y2hlZCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJywgYnV0IGl0IGRpZCBub3QgY29udGFpbiAkc2hhMS4gIgpAQCAtMjAxNTMsNzYgKzIzODU1LDc2IEBACiAiQ2hlbWluIGRlIHNvdXMtbW9kdWxlICckZGlzcGxheXBhdGgnIHLDqWN1cMOpcsOpLCBtYWlzIGlsIG5lIGNvbnRlbmFpdCBwYXMgIgogIiRzaGExLiBMYSByw6ljdXDDqXJhdGlvbiBkaXJlY3RlIGRlIGNlIGNvbW1pdCBhIMOpY2hvdcOpLiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjM2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gY2hlY2tvdXQgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiIgogIkltcG9zc2libGUgZCdleHRyYWlyZSAnJHNoYTEnIGRhbnMgbGUgY2hlbWluIGRlIHNvdXMtbW9kdWxlICckZGlzcGxheXBhdGgnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYxMAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MzcKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiBjaGVja2VkIG91dCAnJHNoYTEnIgogbXNnc3RyICJDaGVtaW4gZGUgc291cy1tb2R1bGUgJyRkaXNwbGF5cGF0aCcgOiAnJHNoYTEnIGV4dHJhaXQiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjE0CisjOiBnaXQtc3VibW9kdWxlLnNoOjY0MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIHJlYmFzZSAnJHNoYTEnIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICIiCiAiSW1wb3NzaWJsZSBkZSByZWJhc2VyICckc2hhMScgZGFucyBsZSBjaGVtaW4gZGUgc291cy1tb2R1bGUgJyRkaXNwbGF5cGF0aCciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjE1CisjOiBnaXQtc3VibW9kdWxlLnNoOjY0MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IHJlYmFzZWQgaW50byAnJHNoYTEnIgogbXNnc3RyICJDaGVtaW4gZGUgc291cy1tb2R1bGUgJyRkaXNwbGF5cGF0aCcgOiByZWJhc8OpIGRhbnMgJyRzaGExJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjAKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQ3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gbWVyZ2UgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiIgogIkltcG9zc2libGUgZGUgZnVzaW9ubmVyICckc2hhMScgZGFucyBsZSBjaGVtaW4gZGUgc291cy1tb2R1bGUgJyRkaXNwbGF5cGF0aCciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjIxCisjOiBnaXQtc3VibW9kdWxlLnNoOjY0OAogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IG1lcmdlZCBpbiAnJHNoYTEnIgogbXNnc3RyICJDaGVtaW4gZGUgc291cy1tb2R1bGUgJyRkaXNwbGF5cGF0aCcgOiBmdXNpb25uw6kgZGFucyAnJHNoYTEnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYyNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NTMKICMsIHNoLWZvcm1hdAogbXNnaWQgIkV4ZWN1dGlvbiBvZiAnJGNvbW1hbmQgJHNoYTEnIGZhaWxlZCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiIgogIkwnZXjDqWN1dGlvbiBkZSAnJGNvbW1hbmQgJHNoYTEnIGEgw6ljaG91w6kgZGFucyBsZSBjaGVtaW4gZGUgc291cy1tb2R1bGUgIgogIickZGlzcGxheXBhdGgnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYyNworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NTQKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiAnJGNvbW1hbmQgJHNoYTEnIgogbXNnc3RyICJDaGVtaW4gZGUgc291cy1tb2R1bGUgJyRkaXNwbGF5cGF0aCcgOiAnJGNvbW1hbmQgJHNoYTEnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjY1OAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2ODUKICMsIHNoLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZWN1cnNlIGludG8gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIsOJY2hlYyBkZSBwYXJjb3VycyBkYW5zIGxlIGNoZW1pbiBkdSBzb3VzLW1vZHVsZSAnJGRpc3BsYXlwYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo3NTQKKyM6IGdpdC1zdWJtb2R1bGUuc2g6ODk2CiBtc2dpZCAiVGhlIC0tY2FjaGVkIG9wdGlvbiBjYW5ub3QgYmUgdXNlZCB3aXRoIHRoZSAtLWZpbGVzIG9wdGlvbiIKIG1zZ3N0ciAiTCdvcHRpb24gLS1jYWNoZWQgbmUgcGV1dCBwYXMgw6p0cmUgdXRpbGlzw6llIGF2ZWMgbCdvcHRpb24gLS1maWxlcyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MDYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTQ4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG1vZGUgJG1vZF9kc3QiCiBtc2dzdHIgIm1vZGUgJG1vZF9kc3QgaW5hdHRlbmR1IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjgyNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NjgKICMsIHNoLWZvcm1hdAogbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX3NyYyIKIG1zZ3N0ciAiICBBdHRlbnRpb24gOiAkZGlzcGxheV9uYW1lIG5lIGNvbnRpZW50IHBhcyBsYSB2YWxpZGF0aW9uICRzaGExX3NyYyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MjkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTcxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdCAkc2hhMV9kc3QiCiBtc2dzdHIgIiAgQXR0ZW50aW9uIDogJGRpc3BsYXlfbmFtZSBuZSBjb250aWVudCBwYXMgbGEgdmFsaWRhdGlvbiAkc2hhMV9kc3QiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODMyCisjOiBnaXQtc3VibW9kdWxlLnNoOjk3NAogIywgc2gtZm9ybWF0CiBtc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXRzICRzaGExX3NyYyBhbmQgJHNoYTFfZHN0IgogbXNnc3RyICIiCkBAIC0yMDIzNCwxMiArMjM5MzYsMjEgQEAKIG1zZ2lkICJTZWUgZ2l0LSR7Y21kfSgxKSBmb3IgZGV0YWlscy4iCiBtc2dzdHIgIlLDqWbDqXJlei12b3VzIMOgIGdpdC0ke2NtZH0oMSkgcG91ciBkZSBwbHVzIGFtcGxlcyBkw6l0YWlscy4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxMzYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxMDkKK21zZ2lkICJBcHBsaWVkIGF1dG9zdGFzaC4iCittc2dzdHIgIkF1dG9yZW1pc2FnZSBhcHBsaXF1w6kuIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTEyCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3Qgc3RvcmUgJHN0YXNoX3NoYTEiCittc2dzdHIgIkltcG9zc2libGUgZGUgc3RvY2tlciAkc3Rhc2hfc2hhMSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE5MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiUmViYXNpbmcgKCRuZXdfY291bnQvJHRvdGFsKSIKIG1zZ3N0ciAiUmViYXNhZ2UgKCRuZXdfY291bnQvJHRvdGFsKSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE1MgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIwNwogbXNnaWQgIiIKICJcbiIKICJDb21tYW5kczpcbiIKQEAgLTIwMjc4LDcgKzIzOTg5LDcgQEAKICJcbiIKICJWb3VzIHBvdXZleiByw6lvcmRvbm5lciBjZXMgbGlnbmVzwqA7IGVsbGVzIHNvbnQgZXjDqWN1dMOpZXMgZGUgaGF1dCBlbiBiYXMuXG4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMTUKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyNzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgY2FuIGFtZW5kIHRoZSBjb21taXQgbm93LCB3aXRoXG4iCkBAIC0yMDI5Nyw4MyArMjQwMDgsODMgQEAKICJcbiIKICJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI0MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI5NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJHNoYTE6IG5vdCBhIGNvbW1pdCB0aGF0IGNhbiBiZSBwaWNrZWQiCiBtc2dzdHIgIiRzaGExIG4nZXN0IHBhcyB1biBjb21taXQgcXVpIHBldXQgw6p0cmUgcGljb3JlciIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI3OQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjMzNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBjb21taXQgbmFtZTogJHNoYTEiCiBtc2dzdHIgIk5vbSBkZSBjb21taXQgaW52YWxpZGXCoDogJHNoYTEiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozMDkKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNjQKIG1zZ2lkICJDYW5ub3Qgd3JpdGUgY3VycmVudCBjb21taXQncyByZXBsYWNlbWVudCBzaGExIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHNhdXZlciBsZSBzaGExIGR1IHJlbXBsYcOnYW50IGR1IGNvbW1pdCBlbiBjb3VycyIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFzdC1mb3J3YXJkIHRvICRzaGExIgogbXNnc3RyICJBdmFuY2UgcmFwaWRlIHN1ciAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2MgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGZhc3QtZm9yd2FyZCB0byAkc2hhMSIKIG1zZ3N0ciAiQXZhbmNlIHJhcGlkZSBpbXBvc3NpYmxlIHN1ciAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM3MQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQyNgogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IG1vdmUgSEVBRCB0byAkZmlyc3RfcGFyZW50IgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIGTDqXBsYWNlciBIRUFEIHN1ciAkZmlyc3RfcGFyZW50IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mzc2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDMxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBzcXVhc2ggYSBtZXJnZTogJHNoYTEiCiBtc2dzdHIgIlJlZnVzIGQnw6ljcmFzZXIgdW4gY29tbWl0IGRlIGZ1c2lvbjogJHNoYTEiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozOTQKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NDkKICMsIHNoLWZvcm1hdAogbXNnaWQgIkVycm9yIHJlZG9pbmcgbWVyZ2UgJHNoYTEiCiBtc2dzdHIgIkVycmV1ciBsb3JzIGRlIGxhIHLDqWFwcGxpY2F0aW9uIGRlIGxhIGZ1c2lvbiAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQwMworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ1OAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHBpY2sgJHNoYTEiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgcGljb3JlciAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxMgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ2NwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyB0aGUgY29tbWl0IG1lc3NhZ2UgIyR7bn06IgogbXNnc3RyICJDZWNpIGVzdCBsZSAke259acOobWUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uwqA6IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDE3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDcyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJUaGUgY29tbWl0IG1lc3NhZ2UgIyR7bn0gd2lsbCBiZSBza2lwcGVkOiIKIG1zZ3N0ciAiTGUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uICR7bn0gc2VyYSBpZ25vcsOpwqA6IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDI4CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDgzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJGNvdW50IGNvbW1pdC4iCiBtc2dpZF9wbHVyYWwgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAkY291bnQgY29tbWl0cy4iCiBtc2dzdHJbMF0gIkNlY2kgZXN0IGxhIGNvbWJpbmFpc29uIGRlICRjb3VudCBjb21taXQuIgogbXNnc3RyWzFdICJDZWNpIGVzdCBsYSBjb21iaW5haXNvbiBkZSAkY291bnQgY29tbWl0cy4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MzcKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0OTIKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCB3cml0ZSAkZml4dXBfbXNnIgogbXNnc3RyICJJbXBvc3NpYmxlIGQnw6ljcmlyZSAkZml4dXBfbXNnIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDk1CiBtc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mIDIgY29tbWl0cy4iCiBtc2dzdHIgIkNlY2kgZXN0IGxhIGNvbWJpbmFpc29uIGRlIDIgY29tbWl0cy4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0ODEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUyNAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUyNworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUzNiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTc5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTgyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgYXBwbHkgJHNoYTEuLi4gJHJlc3QiCiBtc2dzdHIgIkltcG9zc2libGUgZCdhcHBsaXF1ZXIgJHNoYTEuLi4gJHJlc3QiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1NTYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJDb3VsZCBub3QgYW1lbmQgY29tbWl0IGFmdGVyIHN1Y2Nlc3NmdWxseSBwaWNraW5nICRzaGExLi4uICRyZXN0XG4iCkBAIC0yMDM5MCwzMSArMjQxMDEsMzEgQEAKICJsZVxuIgogInByb2Jsw6htZSBhdmFudCBkZSBwb3V2b2lyIHJlZm9ybXVsZXIgbGUgbWVzc2FnZSBkdSBjb21taXQuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTcxCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjI2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdG9wcGVkIGF0ICRzaGExX2FiYnJldi4uLiAkcmVzdCIKIG1zZ3N0ciAiQXJyw6p0w6kgw6AgJHNoYTFfYWJicmV2Li4uICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTg2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJyRzcXVhc2hfc3R5bGUnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgIickc3F1YXNoX3N0eWxlJyBpbXBvc3NpYmxlIGF2ZWMgbGUgY29tbWl0IHByw6ljw6lkZW50IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjI4CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjgzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJFeGVjdXRpbmc6ICRyZXN0IgogbXNnc3RyICJFeMOpY3V0aW9uwqA6ICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjM2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJFeGVjdXRpb24gZmFpbGVkOiAkcmVzdCIKIG1zZ3N0ciAiTCdleMOpY3V0aW9uIGEgw6ljaG91w6nCoDogJHJlc3QiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MzgKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTMKIG1zZ2lkICJhbmQgbWFkZSBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiZXQgYSBtaXMgw6Agam91ciBsJ2luZGV4IG91IGxhIGNvcGllIGRlIHRyYXZhaWwiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NDAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTUKIG1zZ2lkICIiCiAiWW91IGNhbiBmaXggdGhlIHByb2JsZW0sIGFuZCB0aGVuIHJ1blxuIgogIlxuIgpAQCAtMjA0MjUsNyArMjQxMzYsNyBAQAogImdpdCByZWJhc2UgLS1jb250aW51ZSIKIAogIy4gVFJBTlNMQVRPUlM6IGFmdGVyIHRoZXNlIGxpbmVzIGlzIGEgY29tbWFuZCB0byBiZSBpc3N1ZWQgYnkgdGhlIHVzZXIKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NTMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MDgKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJFeGVjdXRpb24gc3VjY2VlZGVkOiAkcmVzdFxuIgpAQCAtMjA0NDAsMjUgKzI0MTUxLDI1IEBACiAiXG4iCiAiXHRnaXQgcmViYXNlIC0tY29udGludWUiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NjQKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MTkKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVua25vd24gY29tbWFuZDogJGNvbW1hbmQgJHNoYTEgJHJlc3QiCiBtc2dzdHIgIkNvbW1hbmRlIGluY29ubnVlwqA6ICRjb21tYW5kICRzaGExICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjY1CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzIwCiBtc2dpZCAiUGxlYXNlIGZpeCB0aGlzIHVzaW5nICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJy4iCiBtc2dzdHIgIlZldWlsbGV6IGNvcnJpZ2VyIGNlY2kgZW4gdXRpbGlzYW50ICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJy4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MDAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NTUKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Y2Nlc3NmdWxseSByZWJhc2VkIGFuZCB1cGRhdGVkICRoZWFkX25hbWUuIgogbXNnc3RyICJSZWJhc2FnZSBldCBtaXNlIMOgIGpvdXIgZGUgJGhlYWRfbmFtZSBhdmVjIHN1Y2PDqHMuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzU3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODEyCiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHN1cHByaW1lciBDSEVSUllfUElDS19IRUFEIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzYyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODE3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuXG4iCkBAIC0yMDQ4OSwxMiArMjQyMDAsMTIgQEAKICJcbiIKICIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzc5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODM0CiBtc2dpZCAiRXJyb3IgdHJ5aW5nIHRvIGZpbmQgdGhlIGF1dGhvciBpZGVudGl0eSB0byBhbWVuZCBjb21taXQiCiBtc2dzdHIgIiIKICJFcnJldXIgbG9ycyBkZSBsYSByZWNoZXJjaGUgZGUgbCdpZGVudGl0w6kgZGUgbCdhdXRldXIgcG91ciBjb3JyaWdlciBsZSBjb21taXQiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3ODQKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MzkKIG1zZ2lkICIiCiAiWW91IGhhdmUgdW5jb21taXR0ZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS4gUGxlYXNlIGNvbW1pdCB0aGVtXG4iCiAiZmlyc3QgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tY29udGludWUnIGFnYWluLiIKQEAgLTIwNTAyLDQwICsyNDIxMyw0NCBAQAogIlZvdXMgYXZleiBkZXMgbW9kaWZpY2F0aW9ucyBub24gdmFsaWTDqWVzIGRhbnMgdm90cmUgY29waWUgZGUgdHJhdmFpbC5cbiIKICJWZXVpbGxleiBsZXMgdmFsaWRlciBkJ2Fib3JkLCBwdWlzIHJlbGFuY2VyICdnaXQgcmViYXNlIC0tY29udGludWUnLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc4OSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzkzCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NDgKIG1zZ2lkICJDb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSB2YWxpZGVyIGxlcyBtb2RpZmljYXRpb25zIGluZGV4w6llcy4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MjQgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkxMAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg3OSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTY1CiBtc2dpZCAiQ291bGQgbm90IGV4ZWN1dGUgZWRpdG9yIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIGxhbmNlciBsJ8OpZGl0ZXVyIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ1CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTAwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgY2hlY2tvdXQgJHN3aXRjaF90byIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkJ2V4dHJhaXJlICRzd2l0Y2hfdG8iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NTIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDcKIG1zZ2lkICJObyBIRUFEPyIKIG1zZ3N0ciAiUGFzIGRlIEhFQUTCoD8iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NTMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDgKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5ICRzdGF0ZV9kaXIiCiBtc2dzdHIgIkltcG9zc2libGUgZGUgY3LDqWVyIHVuIHLDqXBlcnRvaXJlIHRlbXBvcmFpcmUgJHN0YXRlX2RpciIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1NgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkxMQogbXNnaWQgIkNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIG1hcnF1ZXIgY29tbWUgaW50ZXJhY3RpZiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg4OAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiUmViYXNlICRzaG9ydHJldmlzaW9ucyBvbnRvICRzaG9ydG9udG8gKCR0b2RvY291bnQgY29tbWFuZCkiCiBtc2dpZF9wbHVyYWwgIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgb250byAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmRzKSIKIG1zZ3N0clswXSAiUmViYXNhZ2UgZGUgJHNob3J0cmV2aXNpb25zIHN1ciAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmRlKSIKIG1zZ3N0clsxXSAiUmViYXNhZ2UgZGUgJHNob3J0cmV2aXNpb25zIHN1ciAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmRlcykiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDIgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0NworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk1NQorbXNnaWQgIk5vdGUgdGhhdCBlbXB0eSBjb21taXRzIGFyZSBjb21tZW50ZWQgb3V0IgorbXNnc3RyICJWZXVpbGxleiBub3RlciBxdWUgbGVzIGNvbW1pdHMgdmlkZXMgc29udCBlbiBjb21tZW50YWlyZSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk5NyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTAwMgogbXNnaWQgIkNvdWxkIG5vdCBpbml0IHJld3JpdHRlbiBjb21taXRzIgogbXNnc3RyICJJbXBvc3NpYmxlIGQnaW5pdGlhbGlzZXIgbGVzIGNvbW1pdHMgcsOpw6ljcml0cyIKIApAQCAtMjA1NDQsMTQ0ICsyNDI1OSw4MiBAQAogbXNnaWQgInVzYWdlOiAkZGFzaGxlc3MgJFVTQUdFIgogbXNnc3RyICJ1c2FnZcKgOiAkZGFzaGxlc3MgJFVTQUdFIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MTkwCisjOiBnaXQtc2gtc2V0dXAuc2g6MTkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgY2hkaXIgdG8gJGNkdXAsIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICIiCiAiSW1wb3NzaWJsZSBkZSBzZSBwbGFjZXIgZGFucyBsZSByw6lwZXJ0b2lyZSAkY2R1cCwgbGEgcmFjaW5lIGRlIGxhIGNvcGllIGRlICIKICJ0cmF2YWlsIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MTk5IGdpdC1zaC1zZXR1cC5zaDoyMDYKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMDAgZ2l0LXNoLXNldHVwLnNoOjIwNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiZmF0YWw6ICRwcm9ncmFtX25hbWUgY2Fubm90IGJlIHVzZWQgd2l0aG91dCBhIHdvcmtpbmcgdHJlZS4iCiBtc2dzdHIgImZhdGFswqA6ICRwcm9ncmFtX25hbWUgbmUgcGV1dCBwYXMgw6p0cmUgdXRpbGlzw6kgc2FucyBjb3BpZSBkZSB0cmF2YWlsLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjIyMAorIzogZ2l0LXNoLXNldHVwLnNoOjIyMQogbXNnaWQgIkNhbm5vdCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICJJbXBvc3NpYmxlIGRlIHJlYmFzZXLCoDogdm91cyBhdmV6IGRlcyBtb2RpZmljYXRpb25zIG5vbiBpbmRleMOpZXMuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjIzCisjOiBnaXQtc2gtc2V0dXAuc2g6MjI0CiBtc2dpZCAiQ2Fubm90IHJld3JpdGUgYnJhbmNoZXM6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAiSW1wb3NzaWJsZSBkZSByw6nDqWNyaXJlIGxlcyBicmFuY2hlc8KgOiB2b3VzIGF2ZXogZGVzIG1vZGlmaWNhdGlvbnMgbm9uICIKICJpbmRleMOpZXMuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjI2CisjOiBnaXQtc2gtc2V0dXAuc2g6MjI3CiBtc2dpZCAiQ2Fubm90IHB1bGwgd2l0aCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAiaW1wb3NzaWJsZSBkZSB0aXJlciBhdmVjIHJlYmFzYWdlLiBWb3VzIGF2ZXogZGVzIG1vZGlmaWNhdGlvbnMgbm9uIGluZGV4w6llcy4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjkKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCAkYWN0aW9uOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiJGFjdGlvbiBlc3QgaW1wb3NzaWJsZcKgOiB2b3VzIGF2ZXogZGVzIG1vZGlmaWNhdGlvbnMgbm9uIGluZGV4w6llcy4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyNDIKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNDMKIG1zZ2lkICJDYW5ub3QgcmViYXNlOiBZb3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAiSW1wb3NzaWJsZSBkZSByZWJhc2VywqA6IHZvdHJlIGluZGV4IGNvbnRpZW50IGRlcyBtb2RpZmljYXRpb25zIG5vbiB2YWxpZMOpZXMuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQ1CisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ2CiBtc2dpZCAiQ2Fubm90IHB1bGwgd2l0aCByZWJhc2U6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICJpbXBvc3NpYmxlIGRlIHRpcmVyIGF2ZWMgcmViYXNhZ2XCoDogdm90cmUgaW5kZXggY29udGllbnQgZGVzIG1vZGlmaWNhdGlvbnMgIgogIm5vbiB2YWxpZMOpZXMuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQ4CisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJGFjdGlvbjogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogIiRhY3Rpb24gZXN0IGltcG9zc2libGXCoDogdm90cmUgaW5kZXggY29udGllbnQgZGVzIG1vZGlmaWNhdGlvbnMgbm9uIHZhbGlkw6llcy4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyNTIKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNTMKIG1zZ2lkICJBZGRpdGlvbmFsbHksIHlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIkRlIHBsdXMsIHZvdHJlIGluZGV4IGNvbnRpZW50IGRlcyBtb2RpZmljYXRpb25zIG5vbiB2YWxpZMOpZXMuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MzcyCisjOiBnaXQtc2gtc2V0dXAuc2g6MzczCiBtc2dpZCAiWW91IG5lZWQgdG8gcnVuIHRoaXMgY29tbWFuZCBmcm9tIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlLiIKIG1zZ3N0ciAiIgogIlZvdXMgZGV2ZXogbGFuY2VyIGNldHRlIGNvbW1hbmRlIGRlcHVpcyBsYSByYWNpbmUgZGUgdm90cmUgY29waWUgZGUgdHJhdmFpbC4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDozNzcKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzgKIG1zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIGFic29sdXRlIHBhdGggb2YgZ2l0IGRpcmVjdG9yeSIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBkw6l0ZXJtaW5lciBsZSBjaGVtaW4gYWJzb2x1IGR1IHLDqXBlcnRvaXJlIGdpdCIKIAogIy4gVFJBTlNMQVRPUlM6IHlvdSBjYW4gYWRqdXN0IHRoaXMgdG8gYWxpZ24gImdpdCBhZGQgLWkiIHN0YXR1cyBtZW51Ci0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTIKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiJTEycyAlMTJzICVzIgogbXNnc3RyICIlMTJzICVzMTJzICVzIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NwotbXNnaWQgInN0YWdlZCIKLW1zZ3N0ciAiaW5kZXjDqSIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJ1bnN0YWdlZCIKLW1zZ3N0ciAibm9uLWluZGV4w6kiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjUzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjc4Ci1tc2dpZCAiYmluYXJ5IgotbXNnc3RyICJiaW5haXJlIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxNgotbXNnaWQgIm5vdGhpbmciCi1tc2dzdHIgInJpZW4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjk4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzEzCi1tc2dpZCAidW5jaGFuZ2VkIgotbXNnc3RyICJpbmNoYW5nw6kiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjA5Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgImFkZGVkICVkIHBhdGhcbiIKLW1zZ2lkX3BsdXJhbCAiYWRkZWQgJWQgcGF0aHNcbiIKLW1zZ3N0clswXSAiJWQgY2hlbWluIGFqb3V0w6lcbiIKLW1zZ3N0clsxXSAiJWQgY2hlbWlucyBham91dMOpc1xuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYxMgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJ1cGRhdGVkICVkIHBhdGhcbiIKLW1zZ2lkX3BsdXJhbCAidXBkYXRlZCAlZCBwYXRoc1xuIgotbXNnc3RyWzBdICIlZCBjaGVtaW4gbWlzIMOgIGpvdXJcbiIKLW1zZ3N0clsxXSAiJWQgY2hlbWlucyBtaXMgw6Agam91clxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYxNQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJyZXZlcnRlZCAlZCBwYXRoXG4iCi1tc2dpZF9wbHVyYWwgInJldmVydGVkICVkIHBhdGhzXG4iCi1tc2dzdHJbMF0gIiVkIGNoZW1pbiBpbnZlcnPDqVxuIgotbXNnc3RyWzFdICIlZCBjaGVtaW5zIGludmVyc8Opc1xuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYxOAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MzQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAidG91Y2hlZCAlZCBwYXRoXG4iCiBtc2dpZF9wbHVyYWwgInRvdWNoZWQgJWQgcGF0aHNcbiIKIG1zZ3N0clswXSAiJWQgY2hlbWluIHRvdWNow6lcbiIKIG1zZ3N0clsxXSAiJWQgY2hlbWlucyB0b3VjaMOpc1xuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyNwotbXNnaWQgIlVwZGF0ZSIKLW1zZ3N0ciAiTWlzZSDDoCBqb3VyIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzOQotbXNnaWQgIlJldmVydCIKLW1zZ3N0ciAiSW52ZXJzZXIiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjYyCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIm5vdGU6ICVzIGlzIHVudHJhY2tlZCBub3cuXG4iCi1tc2dzdHIgIm5vdGXCoDogJXMgbidlc3QgcGx1cyBzdWl2aSDDoCBwcsOpc2VudC5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NzMKLW1zZ2lkICJBZGQgdW50cmFja2VkIgotbXNnc3RyICJBam91dGVyIHVuIGZpY2hpZXIgbm9uLXN1aXZpIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3OQotbXNnaWQgIk5vIHVudHJhY2tlZCBmaWxlcy5cbiIKLW1zZ3N0ciAiQXVjdW4gRmljaGllciBub24gc3VpdmkuXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTAzMworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDUzCiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBzdGFnaW5nLiIKQEAgLTIwNjg5LDcgKzI0MzQyLDcgQEAKICJTaSBsZSBwYXRjaCBzJ2FwcGxpcXVlIHByb3ByZW1lbnQsIGxhIHNlY3Rpb24gw6lkaXTDqWUgc2VyYVxuIgogImltbcOpZGlhdGVtZW50IG1hcnF1w6llIGNvbW1lIGluZGV4w6llLiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDM2CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTYKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHN0YXNoaW5nLiIKQEAgLTIwNjk3LDcgKzI0MzUwLDcgQEAKICJTaSBsZSBwYXRjaCBzJ2FwcGxpcXVlIHByb3ByZW1lbnQsIGxhIHNlY3Rpb24gw6lkaXTDqWUgc2VyYVxuIgogImltbcOpZGlhdGVtZW50IG1hcnF1w6llIGNvbW1lIHJlbWlzw6llLiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDM5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTkKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHVuc3RhZ2luZy4iCkBAIC0yMDcwNSw3ICsyNDM1OCw4IEBACiAiU2kgbGUgcGF0Y2ggcydhcHBsaXF1ZSBwcm9wcmVtZW50LCBsYSBzZWN0aW9uIMOpZGl0w6llIHNlcmFcbiIKICJpbW3DqWRpYXRlbWVudCBtYXJxdcOpZSBjb21tZSBkZXNpbmRleMOpZS4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA0MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTEKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNzEKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA3NwogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3IgYXBwbHlpbmcuIgpAQCAtMjA3MTMsNyArMjQzNjcsOCBAQAogIlNpIGxlIHBhdGNoIHMnYXBwbGlxdWUgcHJvcHJlbWVudCwgbGEgc2VjdGlvbiDDqWRpdMOpZSBzZXJhXG4iCiAiaW1tw6lkaWF0ZW1lbnQgbWFycXXDqWUgY29tbWUgYXBwbGlxdcOpZS4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA0NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNDgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA2NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNjgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA3NAogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3IgZGlzY2FyZGluZy4iCkBAIC0yMDcyMSwxNyArMjQzNzYsMTIgQEAKICJTaSBsZSBwYXRjaCBzJ2FwcGxpcXVlIHByb3ByZW1lbnQsIGxhIHNlY3Rpb24gw6lkaXTDqWUgc2VyYVxuIgogImltbcOpZGlhdGVtZW50IG1hcnF1w6llIGNvbW1lIMOpbGltaW7DqWUuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwODUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExMQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3Igd3JpdGluZzogJXMiCiBtc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgbGUgZmljaGllciBkJ8OpZGl0aW9uIGRlIHNlY3Rpb24gZW4gw6ljcml0dXJlwqA6ICVzIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwODYKLW1zZ2lkICJNYW51YWwgaHVuayBlZGl0IG1vZGUgLS0gc2VlIGJvdHRvbSBmb3IgYSBxdWljayBndWlkZS5cbiIKLW1zZ3N0ciAiIgotIk1vZGUgZCfDqWRpdGlvbiBtYW51ZWxsZSBkZSBzZWN0aW9uIC0tIHZvaXIgY2ktZGVzc291cyBwb3VyIHVuIGd1aWRlIHJhcGlkZS5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDkyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogIi0tLVxuIgpAQCAtMjA3NDQsMzYgKzI0Mzk0LDEyIEBACiAiUG91ciDDqWxpbWluZXIgbGVzIGxpZ25lcyAnJXMnLCBlZmZhY2V6LWxlcy5cbiIKICJMZXMgbGlnbmVzIGNvbW1lbsOnYW50IHBhciAlcyBzZXJvbnQgw6lsaW1pbsOpZXMuXG4iCiAKLSMuIFRSQU5TTEFUT1JTOiAnaXQnIHJlZmVycyB0byB0aGUgcGF0Y2ggbWVudGlvbmVkIGluIHRoZSBwcmV2aW91cyBtZXNzYWdlcy4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTEwMAotbXNnaWQgIiIKLSJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSBnaXZlbiBhbiBvcHBvcnR1bml0eSB0b1xuIgotImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlIHJlbW92ZWQsIHRoZW4gdGhlIGVkaXQgaXNcbiIKLSJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIKLW1zZ3N0ciAiIgotIlNpIMOnYSBuZSBzJ2FwcGxpcXVlIHBhcyBwcm9wcmVtZW50LCB2b3VzIGF1cmV6IGxhIHBvc3NpYmlsaXTDqSBkZVxuIgotImwnw6lkaXRlciDDoCBub3V2ZWF1LiBTaSB0b3V0ZXMgbGVzIGxpZ25lcyBkZSBsYSBzZWN0aW9uIHNvbnQgc3VwcHJpbcOpZXMsXG4iCi0iYWxvcnMgbCfDqWRpdGlvbiBzZXJhIGFiYW5kb25uw6llIGV0IGxhIHNlY3Rpb24gY29uc2VydsOpZS5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTE0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExNDAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gaHVuayBlZGl0IGZpbGUgZm9yIHJlYWRpbmc6ICVzIgogbXNnc3RyICLDqWNoZWMgZGUgbCdvdXZlcnR1cmUgZHUgZmljaGllciBkJ8OpZGl0aW9uIGRlIHNlY3Rpb24gZW4gbGVjdHVyZcKgOiAlcyIKIAotIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KLSMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dAotIy4gYXQgdGhpcyBwb2ludC4KLSMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCi0jLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgotIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMTMKLW1zZ2lkICIiCi0iWW91ciBlZGl0ZWQgaHVuayBkb2VzIG5vdCBhcHBseS4gRWRpdCBhZ2FpbiAoc2F5aW5nIFwibm9cIiBkaXNjYXJkcyEpIFt5L25dPyAiCi1tc2dzdHIgIiIKLSJWb3RyZSBzZWN0aW9uIMOpZGl0w6llIG5lIHMnYXBwbGlxdWUgcGFzLiBMJ8OpZGl0ZXIgw6Agbm91dmVhdSAoXCJub1wiICIKLSJsJ8OpbGltaW5lwqAhKSBbeXxuXcKgPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIyMgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjQ4CiBtc2dpZCAiIgogInkgLSBzdGFnZSB0aGlzIGh1bmtcbiIKICJuIC0gZG8gbm90IHN0YWdlIHRoaXMgaHVua1xuIgpAQCAtMjA3ODcsNyArMjQ0MTMsNyBAQAogImEgLSBpbmRleGVyIGNldHRlIHNlY3Rpb24gZXQgdG91dGVzIGxlcyBzdWl2YW50ZXMgZGUgY2UgZmljaGllclxuIgogImQgLSBuZSBwYXMgaW5kZXhlciBjZXR0ZSBzZWN0aW9uIG5pIGxlcyBzdWl2YW50ZXMgZGUgY2UgZmljaGllciIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjI4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNTQKIG1zZ2lkICIiCiAieSAtIHN0YXNoIHRoaXMgaHVua1xuIgogIm4gLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rXG4iCkBAIC0yMDgwMSw3ICsyNDQyNyw3IEBACiAiYSAtIHJlbWlzZXIgY2V0dGUgc2VjdGlvbiBldCB0b3V0ZXMgbGVzIHN1aXZhbnRlcyBkZSBjZSBmaWNoaWVyXG4iCiAiZCAtIG5lIHBhcyByZW1pc2VyIGNldHRlIHNlY3Rpb24gbmkgbGVzIHN1aXZhbnRlcyBkZSBjZSBmaWNoaWVyIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMzQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI2MAogbXNnaWQgIiIKICJ5IC0gdW5zdGFnZSB0aGlzIGh1bmtcbiIKICJuIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rXG4iCkBAIC0yMDgxNSw3ICsyNDQ0MSw3IEBACiAiYSAtIGTDqXNpbmRleGVyIGNldHRlIHNlY3Rpb24gZXQgdG91dGVzIGxlcyBzdWl2YW50ZXMgZGUgY2UgZmljaGllclxuIgogImQgLSBuZSBwYXMgZMOpc2luZGV4ZXIgY2V0dGUgc2VjdGlvbiBuaSBsZXMgc3VpdmFudGVzIGRlIGNlIGZpY2hpZXIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjY2CiBtc2dpZCAiIgogInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKICJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgpAQCAtMjA4MjksNyArMjQ0NTUsNyBAQAogImEgLSBhcHBsaXF1ZXIgY2V0dGUgc2VjdGlvbiBldCB0b3V0ZXMgbGVzIHN1aXZhbnRlcyBkZSBjZSBmaWNoaWVyXG4iCiAiZCAtIG5lIHBhcyBhcHBsaXF1ZXIgY2V0dGUgc2VjdGlvbiBuaSBsZXMgc3VpdmFudGVzIGRlIGNlIGZpY2hpZXIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0NgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5MAogbXNnaWQgIiIKICJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgogIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgpAQCAtMjA4NDMsNyArMjQ0NjksNyBAQAogImEgLSBzdXBwcmltZXIgY2V0dGUgc2VjdGlvbiBldCB0b3V0ZXMgbGVzIHN1aXZhbnRlcyBkZSBjZSBmaWNoaWVyXG4iCiAiZCAtIG5lIHBhcyBzdXBwcmltZXIgY2V0dGUgc2VjdGlvbiBuaSBsZXMgc3VpdmFudGVzIGRlIGNlIGZpY2hpZXIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI1MgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjc4CiBtc2dpZCAiIgogInkgLSBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgogIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKQEAgLTIwODU3LDcgKzI0NDgzLDcgQEAKICJhIC0gw6lsaW1pbmVyIGNldHRlIHNlY3Rpb24gZXQgdG91dGVzIGxlcyBzdWl2YW50ZXMgZGUgY2UgZmljaGllclxuIgogImQgLSBuZSBwYXMgw6lsaW1pbmVyIGNldHRlIHNlY3Rpb24gbmkgbGVzIHN1aXZhbnRlcyBkZSBjZSBmaWNoaWVyIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNTgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI4NAogbXNnaWQgIiIKICJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgogIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgpAQCAtMjA4NzEsNyArMjQ0OTcsMjEgQEAKICJhIC0gYXBwbGlxdWVyIGNldHRlIHNlY3Rpb24gZXQgdG91dGVzIGxlcyBzdWl2YW50ZXMgZGUgY2UgZmljaGllclxuIgogImQgLSBuZSBwYXMgYXBwbGlxdWVyIGNldHRlIHNlY3Rpb24gbmkgbGVzIHN1aXZhbnRlcyBkZSBjZSBmaWNoaWVyIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNzMKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5NgorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSBhcHBsaXF1ZXIgY2V0dGUgc2VjdGlvbiDDoCBsJ2FyYnJlIGRlIHRyYXZhaWxcbiIKKyJuIC0gbmUgcGFzIGFwcGxpcXVlciBjZXR0ZSBzZWN0aW9uXG4iCisicSAtIHF1aXR0ZXLCoDsgbmUgcGFzIGFwcGxpcXVlciBjZXR0ZSBzZWN0aW9uIG5pIGxlcyBhdXRyZXMgcmVzdGFudGVzXG4iCisiYSAtIGFwcGxpcXVlciBjZXR0ZSBzZWN0aW9uIGV0IHRvdXRlcyBsZXMgc3VpdmFudGVzIGRlIGNlIGZpY2hpZXJcbiIKKyJkIC0gbmUgcGFzIGFwcGxpcXVlciBjZXR0ZSBzZWN0aW9uIG5pIGxlcyBzdWl2YW50ZXMgZGUgY2UgZmljaGllciIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzExCiBtc2dpZCAiIgogImcgLSBzZWxlY3QgYSBodW5rIHRvIGdvIHRvXG4iCiAiLyAtIHNlYXJjaCBmb3IgYSBodW5rIG1hdGNoaW5nIHRoZSBnaXZlbiByZWdleFxuIgpAQCAtMjA4OTMsMjE4ICsyNDUzMyw4NiBAQAogImUgLSDDqWRpdGVyIG1hbnVlbGxlbWVudCBsYSBzZWN0aW9uIGFjdHVlbGxlXG4iCiAiPyAtIGFmZmljaGVyIGwnYWlkZVxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMDQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM0MgogbXNnaWQgIlRoZSBzZWxlY3RlZCBodW5rcyBkbyBub3QgYXBwbHkgdG8gdGhlIGluZGV4IVxuIgogbXNnc3RyICJMZXMgc2VjdGlvbnMgc8OpbGVjdGlvbm7DqWVzIG5lIHMnYXBwbGlxdWUgcGFzIMOgIGwnaW5kZXjCoCFcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzA1Ci1tc2dpZCAiQXBwbHkgdGhlbSB0byB0aGUgd29ya3RyZWUgYW55d2F5PyAiCi1tc2dzdHIgIkxlcyBhcHBsaXF1ZXIgcXVhbmQgbcOqbWUgw6AgbCdhcmJyZSBkZSB0cmF2YWlswqA/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzA4Ci1tc2dpZCAiTm90aGluZyB3YXMgYXBwbGllZC5cbiIKLW1zZ3N0ciAiUmllbiBuJ2Egw6l0w6kgYXBwbGlxdcOpLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMTkKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM1NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyB1bm1lcmdlZDogJXNcbiIKIG1zZ3N0ciAiZmljaGllciBub24tZnVzaW9ubsOpIGlnbm9yw6nCoDogJXNcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzI4Ci1tc2dpZCAiT25seSBiaW5hcnkgZmlsZXMgY2hhbmdlZC5cbiIKLW1zZ3N0ciAiU2V1bHMgZGVzIGZpY2hpZXJzIGJpbmFpcmVzIG9udCBjaGFuZ8OpLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMzAKLW1zZ2lkICJObyBjaGFuZ2VzLlxuIgotbXNnc3RyICJBdWN1bmUgbW9kaWZpY2F0aW9uLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMzgKLW1zZ2lkICJQYXRjaCB1cGRhdGUiCi1tc2dzdHIgIk1pc2Ugw6Agam91ciBwYXIgcGF0Y2giCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY4CiAjLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YWdlIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJJbmRleGVyIGxlIGNoYW5nZW1lbnQgZGUgbW9kZSBbeSxuLHEsYSxkJXMsP13CoD8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTEKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkluZGV4ZXIgbGEgc3VwcHJlc3Npb24gW3ksbixxLGEsZCVzLD9dwqA/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkyCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiSW5kZXhlciBjZXR0ZSBzZWN0aW9uIFt5LG4scSxhLGQlcyw/XcKgPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5NQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJTdGFzaCBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiUmVtaXNlciBsZSBjaGFuZ2VtZW50IGRlIG1vZGUgW3ksbixxLGEsZCVzLD9dwqA/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzk2Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YXNoIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJSZW1pc2VyIGxhIHN1cHByZXNzaW9uIFt5LG4scSxhLGQlcyw/XcKgPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5NwotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJTdGFzaCB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIlJlbWlzZXIgY2V0dGUgc2VjdGlvbiBbeSxuLHEsYSxkJXMsP13CoD8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDAKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiVW5zdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiRMOpc2luZGV4ZXIgbGUgY2hhbmdlbWVudCBkZSBtb2RlIFt5LG4scSxhLGQlcyw/XcKgPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwMQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJVbnN0YWdlIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJEw6lzaW5kZXhlciBsYSBzdXBwcmVzc2lvbiBbeSxuLHEsYSxkJXMsP13CoD8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiVW5zdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkTDqXNpbmRleGVyIGNldHRlIHNlY3Rpb24gW3ksbixxLGEsZCVzLD9dwqA/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDA1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJBcHBsaXF1ZXIgbGUgY2hhbmdlbWVudCBkZSBtb2RlIMOgIGwnaW5kZXggW3ksbixxLGEsZCVzLD9dwqA/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDA2Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJBcHBsaXF1ZXIgbGEgc3VwcHJlc3Npb24gw6AgbCdpbmRleCBbeSxuLHEsYSxkJXMsP13CoD8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDcKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJBcHBsaXF1ZXIgY2V0dGUgc2VjdGlvbiDDoCBsJ2luZGV4IFt5LG4scSxhLGQlcyw/XcKgPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxMAotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkFiYW5kb25uZXIgbGUgY2hhbmdlbWVudCBkZSBtb2RlIGRhbnMgbCdhcmJyZSBbeSxuLHEsYSxkJXMsP13CoD8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTEKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCBkZWxldGlvbiBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJBYmFuZG9ubmVyIGxhIHN1cHByZXNzaW9uIGRhbnMgbCdhcmJyZSBbeSxuLHEsYSxkJXMsP13CoD8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiQWJhbmRvbm5lciBjZXR0ZSBzZWN0aW9uIGRhbnMgbCdhcmJyZSBbeSxuLHEsYSxkJXMsP13CoD8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTUKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKIG1zZ3N0ciAiIgotIkFiYW5kb25uZXIgbGUgY2hhbmdlbWVudCBkZSBtb2RlIGRhbnMgbCdpbmRleCBldCBsJ2FyYnJlIFt5LG4scSxhLGQlcyw/XcKgPyAiCisiQXBwbGlxdWVyIGxlIGNoYW5nZW1lbnQgZGUgbW9kZSBkYW5zIGwnYXJicmUgZGUgdHJhdmFpbCBbeSxuLHEsYSxkJXMsP13CoD8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTYKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2OQogIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJBYmFuZG9ubmVyIGxhIHN1cHByZXNzaW9uIGRlIGwnaW5kZXggZXQgZGUgbCdhcmJyZSBbeSxuLHEsYSxkJXMsP13CoD8gIgorbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJBcHBsaXF1ZXIgbGEgc3VwcHJlc3Npb24gZGFucyBsJ2FyYnJlIGRlIHRyYXZhaWwgW3ksbixxLGEsZCVzLD9dwqA/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE3CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NzAKICMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLSJTdXBwcmltZXIgbGEgc2VjdGlvbiBkYW5zIGwnaW5kZXggZXQgbCdhcmJyZSBkZSB0cmF2YWlsIFt5LG4scSxhLGQlcyw/XcKgPyAiCittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJBcHBsaXF1ZXIgbGEgc2VjdGlvbiDDoCBsJ2FyYnJlIGRlIHRyYXZhaWwgW3ksbixxLGEsZCVzLD9dwqA/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDIwCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiIgotIkFwcGxpcXVlciBsZSBjaGFuZ2VtZW50IGRlIG1vZGUgZGFucyBsJ2luZGV4IGV0IGwnYXJicmUgZGUgdHJhdmFpbCBbeSxuLHEsYSxkIgotIiVzLD9dwqA/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDIxCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiIgotIkFwcGxpcXVlciBsYSBzdXBwcmVzc2lvbiBkYW5zIGwnaW5kZXggZXQgbCdhcmJyZSBkZSB0cmF2YWlsIFt5LG4scSxhLGQiCi0iJXMsP13CoD8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiIgotIkFwcGxpcXVlciBsYSBzZWN0aW9uIMOgIGwnaW5kZXggZXQgbCdhcmJyZSBkZSB0cmF2YWlsIFt5LG4scSxhLGQlcyw/XcKgPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTUyMgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTcwCiBtc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gZ290b1xuIgogbXNnc3RyICJBdWN1bmUgYXV0cmUgc2VjdGlvbiDDoCBhdHRlaW5kcmVcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTI5Ci1tc2dpZCAiZ28gdG8gd2hpY2ggaHVuayAoPHJldD4gdG8gc2VlIG1vcmUpPyAiCi1tc2dzdHIgImFsbGVyIMOgIHF1ZWxsZSBzZWN0aW9uICg8cmV0PiBwb3VyIHZvaXIgcGx1cynCoD8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MzEKLW1zZ2lkICJnbyB0byB3aGljaCBodW5rPyAiCi1tc2dzdHIgImFsbGVyIMOgIHF1ZWxsZSBzZWN0aW9uwqA/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1ODgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBudW1iZXI6ICclcydcbiIKIG1zZ3N0ciAiTm9tYnJlIGludmFsaWRlIDogJyVzJ1xuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NDUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU5MwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTb3JyeSwgb25seSAlZCBodW5rIGF2YWlsYWJsZS5cbiIKIG1zZ2lkX3BsdXJhbCAiU29ycnksIG9ubHkgJWQgaHVua3MgYXZhaWxhYmxlLlxuIgogbXNnc3RyWzBdICJEw6lzb2zDqSwgJWQgc2V1bGUgc2VjdGlvbiBkaXNwb25pYmxlLlxuIgogbXNnc3RyWzFdICJEw6lzb2zDqSwgU2V1bGVtZW50ICVkIHNlY3Rpb25zIGRpc3BvbmlibGVzLlxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzEKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxOQogbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIHNlYXJjaFxuIgogbXNnc3RyICJhdWN1bmUgYXV0cmUgc2VjdGlvbiDDoCByZWNoZXJjaGVyXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3NQotbXNnaWQgInNlYXJjaCBmb3IgcmVnZXg/ICIKLW1zZ3N0ciAicmVjaGVyY2hlciBsYSByZWdleMKgPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU4OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjM2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIk1hbGZvcm1lZCBzZWFyY2ggcmVnZXhwICVzOiAlc1xuIgogbXNnc3RyICJSZWdleCBkZSByZWNoZXJjaGUgbWFsZm9ybcOpZSAlc8KgOiAlc1xuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1OTgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY0NgogbXNnaWQgIk5vIGh1bmsgbWF0Y2hlcyB0aGUgZ2l2ZW4gcGF0dGVyblxuIgogbXNnc3RyICJBdWN1bmUgc2VjdGlvbiBuZSBjb3JyZXNwb25kIGF1IG1vdGlmIGRvbm7DqVxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MTAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjMyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjgwCiBtc2dpZCAiTm8gcHJldmlvdXMgaHVua1xuIgogbXNnc3RyICJQYXMgZGUgc2VjdGlvbiBwcsOpY8OpZGVudGVcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjE5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYzOAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjY3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY4NgogbXNnaWQgIk5vIG5leHQgaHVua1xuIgogbXNnc3RyICJQYXMgZGUgc2VjdGlvbiBzdWl2YW50ZVxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NDQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY5MgogbXNnaWQgIlNvcnJ5LCBjYW5ub3Qgc3BsaXQgdGhpcyBodW5rXG4iCiBtc2dzdHIgIkTDqXNvbMOpLCBpbXBvc3NpYmxlIGRlIGTDqWNvdXBlciBjZXR0ZSBzZWN0aW9uXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY1MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjk4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNwbGl0IGludG8gJWQgaHVuay5cbiIKIG1zZ2lkX3BsdXJhbCAiU3BsaXQgaW50byAlZCBodW5rcy5cbiIKIG1zZ3N0clswXSAiRMOpY291cMOpZSBlbiAlZCBzZWN0aW9uLlxuIgogbXNnc3RyWzFdICJEw6ljb3Vww6llIGVuICVkIHNlY3Rpb25zLlxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NjAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcwOAogbXNnaWQgIlNvcnJ5LCBjYW5ub3QgZWRpdCB0aGlzIGh1bmtcbiIKIG1zZ3N0ciAiRMOpc29sw6ksIGltcG9zc2libGUgZCfDqWRpdGVyIGNldHRlIHNlY3Rpb25cbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzA2Ci1tc2dpZCAiUmV2aWV3IGRpZmYiCi1tc2dzdHIgIlLDqXZpc2VyIGxhIGRpZmbDqXJlbmNlIgotCiAjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGRvIG5vdCB0cmFuc2xhdGUgdGhlIGNvbW1hbmQgbmFtZXMKICMuICdzdGF0dXMnLCAndXBkYXRlJywgJ3JldmVydCcsIGV0Yy4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcyNQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzczCiBtc2dpZCAiIgogInN0YXR1cyAgICAgICAgLSBzaG93IHBhdGhzIHdpdGggY2hhbmdlc1xuIgogInVwZGF0ZSAgICAgICAgLSBhZGQgd29ya2luZyB0cmVlIHN0YXRlIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXNcbiIKQEAgLTIxMTIyLDE4ICsyNDYzMCwxOSBAQAogImRpZmYgICAgICAgICAgLSB2aXN1YWxpc2VyIGxlcyBkaWZmIGVudHJlIEhFQUQgZXQgbCdpbmRleFxuIgogImFkZCB1bnRyYWNrZWQgLSBham91dGVyIGxlcyBmaWNoaWVycyBub24tc3VpdmlzIGF1eCBtb2RpZmljYXRpb25zIMOgIGluZGV4ZXJcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzQyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc0NwotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzUwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1NwotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzYxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2NworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzkwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5NQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzk4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgwNQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODA4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgxNQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODE5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyNQogbXNnaWQgIm1pc3NpbmcgLS0iCiBtc2dzdHIgIi0tIG1hbnF1YW50IgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjMKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyMQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIC0tcGF0Y2ggbW9kZTogJXMiCiBtc2dzdHIgIm1vZGUgZGUgLS1wYXRjaCBpbmNvbm51wqA6ICVzIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzc1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MjcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODMzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImludmFsaWQgYXJndW1lbnQgJXMsIGV4cGVjdGluZyAtLSIKIG1zZ3N0ciAiYXJndW1lbnQgaW52YWxpZGUgJXMsIC0tIGF0dGVuZHUiCkBAIC0yMTE0NywzMSArMjQ2NTYsMzEgQEAKIG1zZ2lkICJsb2NhbCB0aW1lIG9mZnNldCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMjQgaG91cnNcbiIKIG1zZ3N0ciAibGUgZMOpY2FsYWdlIGRlIHRlbXBzIGxvY2FsIGVzdCBwbHVzIGdyYW5kIG91IMOpZ2FsIMOgIDI0IGhldXJlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjIxOSBnaXQtc2VuZC1lbWFpbC5wZXJsOjIyNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoyMjMgZ2l0LXNlbmQtZW1haWwucGVybDoyMjkKIG1zZ2lkICJ0aGUgZWRpdG9yIGV4aXRlZCB1bmNsZWFubHksIGFib3J0aW5nIGV2ZXJ5dGhpbmciCiBtc2dzdHIgImwnw6lkaXRldXIgZXN0IHNvcnRpIGVuIGVycmV1ciwgYWJhbmRvbiB0b3RhbCIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzEwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGNvbnRhaW5zIGFuIGludGVybWVkaWF0ZSB2ZXJzaW9uIG9mIHRoZSBlbWFpbCB5b3Ugd2VyZSBjb21wb3NpbmcuXG4iCiBtc2dzdHIgIiIKICInJXMnIGNvbnRpZW50IHVuZSB2ZXJzaW9uIGludGVybcOpZGlhaXJlIGR1IGNvdXJyaWVsIHF1ZSB2b3VzIGNvbXBvc2llei5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMDcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzE1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiclcy5maW5hbCcgY29udGFpbnMgdGhlIGNvbXBvc2VkIGVtYWlsLlxuIgogbXNnc3RyICInJXMuZmluYWwnIGNvbnRpZW50IGxlIGNvdXJyaWVsIGNvbXBvc8OpLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMyNgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo0MDgKIG1zZ2lkICItLWR1bXAtYWxpYXNlcyBpbmNvbXBhdGlibGUgd2l0aCBvdGhlciBvcHRpb25zXG4iCiBtc2dzdHIgIi0tZHVtcC1hbGlhc2VzIGVzdCBpbmNvbXBhdGlibGUgYXZlYyBkJ2F1dHJlcyBvcHRpb25zXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Mzk1IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjUwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ4MSBnaXQtc2VuZC1lbWFpbC5wZXJsOjY4MwogbXNnaWQgIkNhbm5vdCBydW4gZ2l0IGZvcm1hdC1wYXRjaCBmcm9tIG91dHNpZGUgYSByZXBvc2l0b3J5XG4iCiBtc2dzdHIgIkxhbmNlbWVudCBkZSBnaXQgZm9ybWF0LXBhdGNoIGltcG9zc2libGUgw6AgbCdleHTDqXJpZXVyIGQndW4gZMOpcMO0dFxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjM5OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo0ODQKIG1zZ2lkICIiCiAiYGJhdGNoLXNpemVgIGFuZCBgcmVsb2dpbmAgbXVzdCBiZSBzcGVjaWZpZWQgdG9nZXRoZXIgKHZpYSBjb21tYW5kLWxpbmUgb3IgIgogImNvbmZpZ3VyYXRpb24gb3B0aW9uKVxuIgpAQCAtMjExNzksMzkgKzI0Njg4LDM5IEBACiAiYGJhdGNoLXNpemVgIGV0IGByZWxvZ2luYCBkb2l2ZW50IMOqdHJlIHNww6ljaWZpw6lzIGVuc2VtYmxlcyAodmlhIGxhIGxpZ25lIGRlICIKICJjb21tYW5kZSBvdSBkZXMgb3B0aW9ucyBkZSBjb25maWd1cmF0aW9uKVxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ2OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo0OTcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiVW5rbm93biAtLXN1cHByZXNzLWNjIGZpZWxkOiAnJXMnXG4iCiBtc2dzdHIgIkNoYW1wIGRlIC0tc3VwcHJlc3MtY2MgaW5jb25udcKgOiAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDk3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJVbmtub3duIC0tY29uZmlybSBzZXR0aW5nOiAnJXMnXG4iCiBtc2dzdHIgIlBhcmFtw6h0cmUgZGUgLS1jb25maXJtIGluY29ubnXCoDogJyVzJ1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NTYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogc2VuZG1haWwgYWxpYXMgd2l0aCBxdW90ZXMgaXMgbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAiIgogImF0dGVudGlvbsKgOiBsZXMgZ3VpbGxlbWV0cyBuZSBzb250IHBhcyBzdXBwb3J0w6lzIGRhbnMgYWxpYXMgc2VuZG1haWzCoDogJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTU4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGA6aW5jbHVkZTpgIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCiBtc2dzdHIgImF0dGVudGlvbsKgOiBgOmluY2x1ZGU6YCBuJ2VzdCBwYXMgc3VwcG9ydMOpwqA6ICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTI5CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU2MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ3YXJuaW5nOiBgL2ZpbGVgIG9yIGB8cGlwZWAgcmVkaXJlY3Rpb24gbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAiIgogImF0dGVudGlvbsKgOiBsZXMgcmVkaXJlY3Rpb25zIGAvZmlsZWAgb3UgYHxwaXBlYCBuZSBzb250IHBhcyBzdXBwb3J0w6llc8KgOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUzNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NjUKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogc2VuZG1haWwgbGluZSBpcyBub3QgcmVjb2duaXplZDogJXNcbiIKIG1zZ3N0ciAiYXR0ZW50aW9uwqA6IGxpZ25lIHNlbmRtYWlsIG5vbiByZWNvbm51ZcKgOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjYxNgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NDkKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogIkZpbGUgJyVzJyBleGlzdHMgYnV0IGl0IGNvdWxkIGFsc28gYmUgdGhlIHJhbmdlIG9mIGNvbW1pdHNcbiIKQEAgLTIxMjI2LDEyICsyNDczNSwxMiBAQAogIiAgICAqIGVuIGluZGlxdWFudCBcIi4vJXNcIiBzaSB2b3VzIGTDqXNpZ25leiB1biBmaWNoaWVyLCBvdVxuIgogIiAgICAqIGVuIGZvdXJuaXNzYW50IGwnb3B0aW9uIC0tZm9ybWF0LXBhdGNoIHBvdXIgdW5lIHBsYWdlLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjYzNworIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NzAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW5kaXIgJXM6ICVzIgogbXNnc3RyICLDiWNoZWMgw6AgbCdvdXZlcnR1cmUgZHUgcsOpcGVydG9pcmUgJXPCoDogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjYxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY5NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiZmF0YWw6ICVzOiAlc1xuIgpAQCAtMjEyNDAsNyArMjQ3NDksNyBAQAogImZhdGFswqA6ICVzwqA6ICVzXG4iCiAiYXR0ZW50aW9uwqA6IGF1Y3VuIHBhdGNoIGVudm95w6lcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NzIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzA1CiBtc2dpZCAiIgogIlxuIgogIk5vIHBhdGNoIGZpbGVzIHNwZWNpZmllZCFcbiIKQEAgLTIxMjUwLDE3ICsyNDc1OSwxNyBAQAogIkF1Y3VuIGZpY2hpZXIgcGF0Y2ggc3DDqWNpZmnDqcKgIVxuIgogIlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY4NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiTm8gc3ViamVjdCBsaW5lIGluICVzPyIKIG1zZ3N0ciAiTGlnbmUgZGUgc3VqZXQgbm9uIHRyb3V2w6llIGRhbnMgJXMgPyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2OTUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzI4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBvcGVuIGZvciB3cml0aW5nICVzOiAlcyIKIG1zZ3N0ciAiSW1wb3NzaWJsZSBkJ291dnJpciAlcyBlbiDDqWNyaXR1cmXCoDogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzA2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjczOQogbXNnaWQgIiIKICJMaW5lcyBiZWdpbm5pbmcgaW4gXCJHSVQ6XCIgd2lsbCBiZSByZW1vdmVkLlxuIgogIkNvbnNpZGVyIGluY2x1ZGluZyBhbiBvdmVyYWxsIGRpZmZzdGF0IG9yIHRhYmxlIG9mIGNvbnRlbnRzXG4iCkBAIC0yMTI3NCwyNyArMjQ3ODMsMjcgQEAKICJcbiIKICJFZmZhY2V6IGxlIGNvcnBzIHNpIHZvdXMgbmUgc291aGFpdGV6IHBhcyBlbnZveWVyIHVuIHLDqXN1bcOpLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjczMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo3NjMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW4gJXM6ICVzIgogbXNnc3RyICLDiWNoZWMgw6AgbCdvdXZlcnR1cmUgZGUgJXPCoDogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzQ3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc4MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiAlcy5maW5hbDogJXMiCiBtc2dzdHIgIsOJY2hlYyDDoCBsJ291dmVydHVyZSBkZSAlcy5maW5hbMKgOiAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo3OTAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODIzCiBtc2dpZCAiU3VtbWFyeSBlbWFpbCBpcyBlbXB0eSwgc2tpcHBpbmcgaXRcbiIKLW1zZ3N0ciAiTGUgY291cnJpZWwgZGUgcsOpc3Vtw6kgZXRhbnQgdmlkZSwgaWwgYSDDqXTDqSBpZ25vcsOpXG4iCittc2dzdHIgIkxlIGNvdXJyaWVsIGRlIHLDqXN1bcOpIMOpdGFudCB2aWRlLCBpbCBhIMOpdMOpIGlnbm9yw6lcbiIKIAogIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBrZWVwIFt5L05dIGFzIGlzLgotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4MjUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODU4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byB1c2UgPCVzPiBbeS9OXT8gIgogbXNnc3RyICLDinRlcy12b3VzIHN1ciBkZSB2b3Vsb2lyIHV0aWxpc2VyIDwlcz4gW3kvTl3CoD8gIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjg4MAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MTMKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyBmaWxlcyBhcmUgOGJpdCwgYnV0IGRvIG5vdCBkZWNsYXJlIGEgQ29udGVudC1UcmFuc2Zlci0iCiAiRW5jb2RpbmcuXG4iCkBAIC0yMTMwMiwxMSArMjQ4MTEsMTEgQEAKICJMZXMgZmljaGllcnMgc3VpdmFudHMgc29udCA4Yml0IG1haXMgbmUgZMOpY2xhcmVudCBwYXMgZGUgY2hhbXBzIENvbnRlbnQtIgogIlRyYW5zZmVyLUVuY29kaW5nLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjg4NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MTgKIG1zZ2lkICJXaGljaCA4Yml0IGVuY29kaW5nIHNob3VsZCBJIGRlY2xhcmUgW1VURi04XT8gIgogbXNnc3RyICJRdWVsIGVuY29kYWdlIDhiaXQgZG9pdCDDqnRyZSBkw6ljbGFyw6kgW1VURjhdwqA/ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4OTMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTI2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICJSZWZ1c2luZyB0byBzZW5kIGJlY2F1c2UgdGhlIHBhdGNoXG4iCkBAIC0yMTMxOSwyMiArMjQ4MjgsMjIgQEAKICJhIHVuIHN1amV0IG1vZMOobGUgJyoqKiBTVUJKRUNUIEhFUkUgKioqJy4gUGFzc2V6IC0tZm9yY2UgaXMgdm91cyBzb3VoYWl0ZXogIgogInZyYWltZW50IGVudm95ZXIuXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTEyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjk0NQogbXNnaWQgIlRvIHdob20gc2hvdWxkIHRoZSBlbWFpbHMgYmUgc2VudCAoaWYgYW55b25lKT8iCiBtc2dzdHIgIsOAIHF1aSBsZXMgY291cnJpZWxzIGRvaXZlbnQtaWxzIMOqdHJlIGVudm95w6lzIChzJ2lsIHkgZW4gYSnCoD8iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTMwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjk2MwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJmYXRhbDogYWxpYXMgJyVzJyBleHBhbmRzIHRvIGl0c2VsZlxuIgogbXNnc3RyICJmYXRhbMKgOiBsJ2FsaWFzICclcycgc2UgZMOpdmVsb3BwZSBlbiBsdWktbcOqbWVcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTc1CiBtc2dpZCAiTWVzc2FnZS1JRCB0byBiZSB1c2VkIGFzIEluLVJlcGx5LVRvIGZvciB0aGUgZmlyc3QgZW1haWwgKGlmIGFueSk/ICIKIG1zZ3N0ciAiIgogIk1lc3NhZ2UtSUQgw6AgdXRpbGlzZXIgY29tbWUgSW4tUmVwbHktVG8gcG91ciBsZSBwcmVtaWVyIGNvdXJyaWVsIChzJ2lsIHkgZW4gIgogImEpwqA/ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDAwIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAwOAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDMzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTA0MQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJlcnJvcjogdW5hYmxlIHRvIGV4dHJhY3QgYSB2YWxpZCBhZGRyZXNzIGZyb206ICVzXG4iCiBtc2dzdHIgImVycmV1csKgOiBpbXBvc3NpYmxlIGQnZXh0cmFpcmUgdW5lIGFkcmVzc2UgdmFsaWRlIGRlcHVpc8KgOiAlc1xuIgpAQCAtMjEzNDIsMTYgKzI0ODUxLDE2IEBACiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3FdIFtkXSBbZV0gaW4geW91cgogIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAogIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAxMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDQ1CiBtc2dpZCAiV2hhdCB0byBkbyB3aXRoIHRoaXMgYWRkcmVzcz8gKFtxXXVpdHxbZF1yb3B8W2VdZGl0KTogIgogbXNnc3RyICJRdWUgZmFpcmUgZGUgY2V0dGUgYWRyZXNzZSA/IChbcV11aXR0ZXJ8W2Rdw6lsYWlzc2VyfFtlXWRpdGVyKTogIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEzMjkKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTM2MgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJDQSBwYXRoIFwiJXNcIiBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAibGUgY2hlbWluIHZlcnMgbGEgQ0EgXCIlc1wiIG4nZXhpc3RlIHBhcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDEyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NDUKIG1zZ2lkICIiCiAiICAgIFRoZSBDYyBsaXN0IGFib3ZlIGhhcyBiZWVuIGV4cGFuZGVkIGJ5IGFkZGl0aW9uYWxcbiIKICIgICAgYWRkcmVzc2VzIGZvdW5kIGluIHRoZSBwYXRjaCBjb21taXQgbWVzc2FnZS4gQnkgZGVmYXVsdFxuIgpAQCAtMjEzNzgsMTExNyArMjQ4ODcsMTMwIEBACiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3ldIFtuXSBbZV0gW3FdIFthXSBpbiB5b3VyCiAjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CiAjLiBhdCB0aGlzIHBvaW50LgotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDI3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjAKIG1zZ2lkICJTZW5kIHRoaXMgZW1haWw/IChbeV1lc3xbbl1vfFtlXWRpdHxbcV11aXR8W2FdbGwpOiAiCiBtc2dzdHIgIkVudm95ZXIgY2UgY291cnJpZWzCoD8gKFt5XWVzfFtuXW98W2VdZGl0fFtxXXVpdHxbYV1sbCnCoDogIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0MzAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ2MwogbXNnaWQgIlNlbmQgdGhpcyBlbWFpbCByZXBseSByZXF1aXJlZCIKIG1zZ3N0ciAiVW5lIHLDqXBvbnNlIGVzdCBuw6ljZXNzYWlyZSIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDU4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0OTEKIG1zZ2lkICJUaGUgcmVxdWlyZWQgU01UUCBzZXJ2ZXIgaXMgbm90IHByb3Blcmx5IGRlZmluZWQuIgogbXNnc3RyICJMZSBzZXJ2ZXVyIFNNVFAgbsOpY2Vzc2FpcmUgbidlc3QgcGFzIGTDqWZpbmkgY29ycmVjdGVtZW50LiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTA1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MzgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgU1RBUlRUTFMhICVzIgogbXNnc3RyICJMZSBzZXJ2ZXVyIG5lIHN1cHBvcnRlIHBhcyBTVEFSVFRMU8KgISAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTEwIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUxNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTVEFSVFRMUyBmYWlsZWQhICVzIgotbXNnc3RyICJlY2hlYyBkZSBTVEFSVFRMU8KgISAlcyIKK21zZ3N0ciAiw6ljaGVjIGRlIFNUQVJUVExTwqAhICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MjMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU1NgogbXNnaWQgIlVuYWJsZSB0byBpbml0aWFsaXplIFNNVFAgcHJvcGVybHkuIENoZWNrIGNvbmZpZyBhbmQgdXNlIC0tc210cC1kZWJ1Zy4iCiBtc2dzdHIgIiIKICJJbXBvc3NpYmxlIGQnaW5pdGlhbGlzZXIgU01UUC4gVsOpcmlmaWV6IGxhIGNvbmZpZ3VyYXRpb24gZXQgdXRpbGlzZXogLS1zbXRwLSIKICJkZWJ1Zy4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBzZW5kICVzXG4iCiBtc2dzdHIgIsOpY2hlYyBkZSBsJ2Vudm9pIGRlICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkRyeS1TZW50ICVzXG4iCiBtc2dzdHIgIkVudm9pIHNpbXVsw6kgZGUgJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU2VudCAlc1xuIgogbXNnc3RyICIlcyBlbnZvecOpXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CiBtc2dpZCAiRHJ5LU9LLiBMb2cgc2F5czpcbiIKIG1zZ3N0ciAiU2ltdWxhdGlvbiBPSy4gTGUgam91cm5hbCBpbmRpcXVlwqA6XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CiBtc2dpZCAiT0suIExvZyBzYXlzOlxuIgogbXNnc3RyICJPSy4gTGUgam91cm5hbCBpbmRpcXVlwqA6XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU1OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTkxCiBtc2dpZCAiUmVzdWx0OiAiCiBtc2dzdHIgIlLDqXN1bHRhdMKgOiAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU2MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTk0CiBtc2dpZCAiUmVzdWx0OiBPS1xuIgogbXNnc3RyICJSw6lzdWx0YXTCoDogT0tcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MTIKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgb3BlbiBmaWxlICVzIgogbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTYyNiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NDYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY1OSBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NzkKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKG1ib3gpIEFkZGluZyBjYzogJXMgZnJvbSBsaW5lICclcydcbiIKIG1zZ3N0ciAiKG1ib3gpIEFqb3V0IGRlIGNjOiAlcyBkZXB1aXMgbGEgbGlnbmUgJyVzJ1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MzIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY2NQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIobWJveCkgQWRkaW5nIHRvOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIobWJveCkgQWpvdXQgZGUgdG86ICVzIGRlcHVpcyBsYSBsaWduZSAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY4NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzE4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihub24tbWJveCkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIobm9uLW1ib3gpIEFqb3V0IGRlIGNjOiAlcyBkZXB1aXMgbGEgbGlnbmUgJyVzJ1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE3MjAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTc1MwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoYm9keSkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIoY29ycHMpIEFqb3V0IGRlIGNjOiAlcyBkZXB1aXMgbGEgbGlnbmUgJyVzJ1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4MzEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg2NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoJXMpIENvdWxkIG5vdCBleGVjdXRlICclcyciCiBtc2dzdHIgIiglcykgSW1wb3NzaWJsZSBkJ2V4w6ljdXRlciAnJXMnIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4MzgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg3MQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoJXMpIEFkZGluZyAlczogJXMgZnJvbTogJyVzJ1xuIgogbXNnc3RyICIoJXMpIEFqb3V0IGRlICVzwqA6ICVzIGRlcHVpc8KgOiAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg0MgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODc1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiglcykgZmFpbGVkIHRvIGNsb3NlIHBpcGUgdG8gJyVzJyIKIG1zZ3N0ciAiKCVzKSDDqWNoZWMgZGUgbGEgZmVybWV0dXJlIGR1IHBpcGUgdmVycyAnJXMnIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NzIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkwNQogbXNnaWQgImNhbm5vdCBzZW5kIG1lc3NhZ2UgYXMgN2JpdCIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2Vudm95ZXIgdW4gbWVzc2FnZSBjb21tZSA3Yml0IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4ODAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkxMwogbXNnaWQgImludmFsaWQgdHJhbnNmZXIgZW5jb2RpbmciCiBtc2dzdHIgImNvZGFnZSBkZSB0cmFuc2ZlcnQgaW52YWxpZGUiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkyMSBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NzMgZ2l0LXNlbmQtZW1haWwucGVybDoxOTgzCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NTQgZ2l0LXNlbmQtZW1haWwucGVybDoyMDA2IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjAxNgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlczogJXNcbiIKIG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciAlc8KgOiVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkyNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTU3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiVzOiBwYXRjaCBjb250YWlucyBhIGxpbmUgbG9uZ2VyIHRoYW4gOTk4IGNoYXJhY3RlcnMiCiBtc2dzdHIgIiVzwqA6IGxlIHBhdGNoIGNvbnRpZW50IHVuZSBsaWduZSBwbHVzIGxvbmd1ZSBxdWUgOTk4IGNhcmFjdMOocmVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NDEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk3NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyAlcyB3aXRoIGJhY2t1cCBzdWZmaXggJyVzJy5cbiIKIG1zZ3N0ciAiJXMgc2F1dMOpIGF2ZWMgdW4gc3VmZml4IGRlIHNhdXZlZ2FyZGUgJyVzJy5cbiIKIAogIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBrZWVwICJbeXxOXSIgYXMgaXMuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NDUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk3OAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJEbyB5b3UgcmVhbGx5IHdhbnQgdG8gc2VuZCAlcz8gW3l8Tl06ICIKIG1zZ3N0ciAiU291aGFpdGV6LXZvdXMgcsOpZWxsZW1lbnQgZW52b3llciAlc8KgP1t5fE5dwqA6ICIKLQotI34gbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJXMnIChsb29raW5nIGZvciAnJXMnKSIKLSN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyICclcycgKMOgIGxhIHJlY2hlcmNoZSBkZSAnJXMnKSIKLQotI34gbXNnaWQgImJhZCBxdW90aW5nIG9uICVzIHZhbHVlIGluICclcyciCi0jfiBtc2dzdHIgIk1hdXZhaXNlIGNpdGF0aW9uIHN1ciBsYSB2YWxldXIgJXMgZGFucyAnJXMnIgotCi0jfiBtc2dpZCAiQ291bGQgbm90IHVuc2V0IGNvcmUud29ya3RyZWUgc2V0dGluZyBpbiBzdWJtb2R1bGUgJyVzJyIKLSN+IG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBkw6lzYWN0aXZlciBjb3JlLndvcmt0cmVlIGRhbnMgbGUgc291cy1tb2R1bGUgJyVzJyIKLQotI34gbXNnaWQgImRlcHJlY2F0ZWQgc3lub255bSBmb3IgLS1jcmVhdGUtcmVmbG9nIgotI34gbXNnc3RyICJzeW5vbnltZSBkw6ljb25zZWlsbMOpIGRlIC0tY3JlYXRlLXJlZmxvZyIKLQotI34gbXNnaWQgIkNhbid0IHN0YXQgJXMiCi0jfiBtc2dzdHIgImltcG9zc2libGUgZGUgZmFpcmUgdW4gc3RhdCBkZSAlcyIKLQotI34gbXNnaWQgImFib3J0IHJlYmFzZSIKLSN+IG1zZ3N0ciAiYWJhbmRvbm5lciBsZSByZWJhc2FnZSIKLQotI34gbXNnaWQgIm1ha2UgcmViYXNlIHNjcmlwdCIKLSN+IG1zZ3N0ciAiY3LDqWVyIGxlcyBzY3JpcHQgZGUgcmViYXNhZ2UiCi0KLSN+IG1zZ2lkICJObyBzdWNoIHJlbW90ZTogJXMiCi0jfiBtc2dzdHIgIkRpc3RhbnRlIGluY29ubnVlIDogJXMiCi0KLSN+IG1zZ2lkICJjYW5ub3QgbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUiCi0jfiBtc2dzdHIgImltcG9zc2libGUgZGUgZMOpcGxhY2VyIHVuIGFyYnJlIGRlIHRyYXZhaWwgdmVycm91aWxsw6kiCi0KLSN+IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZSIKLSN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgdW4gYXJicmUgZGUgdHJhdmFpbCB2ZXJyb3VpbGzDqSIKLQotI34gbXNnaWQgIkFwcGxpZWQgYXV0b3N0YXNoLiIKLSN+IG1zZ3N0ciAiQXV0b3JlbWlzYWdlIGFwcGxpcXXDqS4iCi0KLSN+IG1zZ2lkICJDYW5ub3Qgc3RvcmUgJHN0YXNoX3NoYTEiCi0jfiBtc2dzdHIgIkltcG9zc2libGUgZGUgc3RvY2tlciAkc3Rhc2hfc2hhMSIKLQotI34gbXNnaWQgIiIKLSN+ICJcbiIKLSN+ICJcdEhvd2V2ZXIsIGlmIHlvdSByZW1vdmUgZXZlcnl0aGluZywgdGhlIHJlYmFzZSB3aWxsIGJlIGFib3J0ZWQuXG4iCi0jfiAiXG4iCi0jfiAiXHQiCi0jfiBtc2dzdHIgIiIKLSN+ICJcbiIKLSN+ICJDZXBlbmRhbnQsIHNpIHZvdXMgZWZmYWNleiB0b3V0LCBsZSByZWJhc2FnZSBzZXJhIGFubnVsw6kuXG4iCi0jfiAiXG4iCi0jfiAiXHQiCi0KLSN+IG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyAobG9va2luZyBmb3IgJyVzJyIKLSN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyICclcycgKMOgIGxhIHJlY2hlcmNoZSBkZSAnJXMnKSIKLQotI34gbXNnaWQgImNvbG9yIGJvdGggZGlmZiBhbmQgZGlmZi1iZXR3ZWVuLWRpZmZzIgotI34gbXNnc3RyICJjb2xvcmVyIMOgIGxhIGZvaXMgbGVzIGRpZmZzIGV0IGxlIGRpZmYtYmV0d2Vlbi1kaWZmcyIKLQotI34gbXNnaWQgInB1c2h8ZmV0Y2giCi0jfiBtc2dzdHIgInB1c2h8ZmV0Y2giCi0KLSN+IG1zZ2lkICJEaXJ0eSBpbmRleDogY2Fubm90IG1lcmdlIChkaXJ0eTogJXMpIgotI34gbXNnc3RyICJJbmRleCBzYWxlIDogZnVzaW9uIGltcG9zc2libGUgKHNhbGVzIDogJXMpIgotCi0jfiBtc2dpZCAiKCsvLSl4IgotI34gbXNnc3RyICIoKy8tKXgiCi0KLSN+IG1zZ2lkICI8Y29tbWFuZD4iCi0jfiBtc2dzdHIgIjxjb21tYW5kZT4iCi0KLSN+IG1zZ2lkICJ3WyxpMVssaTJdXSIKLSN+IG1zZ3N0ciAid1ssaTFbLGkyXV0iCi0KLSN+IG1zZ2lkICJFbnRlcmluZyAnJGRpc3BsYXlwYXRoJyIKLSN+IG1zZ3N0ciAiRW50csOpZSBkYW5zICckZGlzcGxheXBhdGgnIgotCi0jfiBtc2dpZCAiU3RvcHBpbmcgYXQgJyRkaXNwbGF5cGF0aCc7IHNjcmlwdCByZXR1cm5lZCBub24temVybyBzdGF0dXMuIgotI34gbXNnc3RyICJBcnLDqnQgc3VyICckZGlzcGxheXBhdGgnIDsgbGUgc2NyaXB0IGEgcmV0b3VybsOpIHVuIMOpdGF0IG5vbiBudWwuIgotCi0jfiBtc2dpZCAiRXZlcnlkYXkgR2l0IFdpdGggMjAgQ29tbWFuZHMgT3IgU28iCi0jfiBtc2dzdHIgIkdpdCBkZSB0b3VzIGxlcyBqb3VycyBhdmVjIMOgIHBldSBwcsOocyAyMCBjb21tYW5kZXMiCi0KLSN+IG1zZ2lkICJDb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nIgotI34gbXNnc3RyICJJbXBvc3NpYmxlIGQnb3V2cmlyICclcycgZW4gw6ljcml0dXJlIgotCi0jfiBtc2dpZCAiIgotI34gInVuZXhwZWN0ZWQgMXN0IGxpbmUgb2Ygc3F1YXNoIG1lc3NhZ2U6XG4iCi0jfiAiXG4iCi0jfiAiXHQlLipzIgotI34gbXNnc3RyICIiCi0jfiAicHJlbWnDqHJlIGxpZ25lIGRlIG1lc3NhZ2UgZGUgY29tcHJlc3Npb24gaW5hdHRlbmR1ZcKgOlxuIgotI34gIlxuIgotI34gIlx0JS4qcyIKLQotI34gbXNnaWQgIiIKLSN+ICJpbnZhbGlkIDFzdCBsaW5lIG9mIHNxdWFzaCBtZXNzYWdlOlxuIgotI34gIlxuIgotI34gIlx0JS4qcyIKLSN+IG1zZ3N0ciAiIgotI34gInByZW1pw6hyZSBsaWduZSBkZSBtZXNzYWdlIGRlIGNvbXByZXNzaW9uIGludmFsaWRlwqA6XG4iCi0jfiAiXG4iCi0jfiAiXHQlLipzIgotCi0jfiBtc2dpZCAiQlVHOiByZXR1cm5lZCBwYXRoIHN0cmluZyBkb2Vzbid0IG1hdGNoIGN3ZD8iCi0jfiBtc2dzdHIgIkJVR8KgOiBsZSBjaGVtaW4gcmVudm95w6kgbmUgY29ycmVzcG9uZCBwYXMgw6AgY3dkwqA/IgotCi0jfiBtc2dpZCAiRXJyb3IgaW4gb2JqZWN0IgotI34gbXNnc3RyICJFcnJldXIgZGFucyBsJ29iamV0IgotCi0jfiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCBFT0YiCi0jfiBtc2dzdHIgImdpdCBmZXRjaC1wYWNrIDogQUNLL05BQ0sgYXR0ZW5kdSwgRU9GIHJlw6d1IgotCi0jfiBtc2dpZCAiaW52YWxpZCBmaWx0ZXItc3BlYyBleHByZXNzaW9uICclcyciCi0jfiBtc2dzdHIgImV4cHJlc3Npb24gZGUgZmlsdHJlIGludmFsaWRlwqA6ICclcyciCi0KLSN+IG1zZ2lkICJUaGUgY29weSBvZiB0aGUgcGF0Y2ggdGhhdCBmYWlsZWQgaXMgZm91bmQgaW46ICVzIgotI34gbXNnc3RyICJMYSBjb3BpZSBkdSBwYXRjaCBxdWkgYSDDqWNob3XDqSBzZSB0cm91dmUgZGFucyA6ICVzIgotCi0jfiBtc2dpZCAicGF0aHNwZWMgYW5kIC0tYWxsIGFyZSBpbmNvbXBhdGlibGUiCi0jfiBtc2dzdHIgInVuIHNww6ljaWZpY2F0ZXVyIGRlIGNoZW1pbiBldCAtLWFsbCBzb250IGluY29tcGF0aWJsZXMiCi0KLSN+IG1zZ2lkICJTdWJtb2R1bGUgJyRuYW1lJyAoJHVybCkgdW5yZWdpc3RlcmVkIGZvciBwYXRoICckZGlzcGxheXBhdGgnIgotI34gbXNnc3RyICIiCi0jfiAiTGUgc291cy1tb2R1bGUgJyRuYW1lJyAoJHVybCkgbidlc3QgcGFzIGVucmVnaXN0csOpIHBvdXIgbGUgY2hlbWluICIKLSN+ICInJGRpc3BsYXlwYXRoJyIKLQotI34gbXNnaWQgIlRvL0NjL0JjYyBmaWVsZHMgYXJlIG5vdCBpbnRlcnByZXRlZCB5ZXQsIHRoZXkgaGF2ZSBiZWVuIGlnbm9yZWRcbiIKLSN+IG1zZ3N0ciAiIgotI34gIkxlcyBjaGFtcHMgVG8vQ0MvQmNjIG5lIHNvbnQgcGFzIGVuY29yZSBpbnRlcnByw6l0w6lzLCBpbHMgb250IMOpdMOpIGlnbm9yw6lzXG4iCi0KLSN+IG1zZ2lkICIiCi0jfiAiZW1wdHkgc3RyaW5ncyBhcyBwYXRoc3BlY3Mgd2lsbCBiZSBtYWRlIGludmFsaWQgaW4gdXBjb21pbmcgcmVsZWFzZXMuICIKLSN+ICJwbGVhc2UgdXNlIC4gaW5zdGVhZCBpZiB5b3UgbWVhbnQgdG8gbWF0Y2ggYWxsIHBhdGhzIgotI34gbXNnc3RyICIiCi0jfiAibGVzIGNoYWluZXMgZGUgY2FyYWN0w6hyZXMgdmlkZXMgY29tbWUgc3DDqWNpZmljYXRldXJzIGRlIGNoZW1pbiBzZXJvbnQgIgotI34gImludmFsaWRlcyBkYW5zIGxlcyBwcm9jaGFpbmVzIHZlcnNpb25zLiBWZXVpbGxleiB1dGlsaXNlciAuIMOgIGxhIHBsYWNlICIKLSN+ICJwb3VyIGNvcnJlc3BvbmRyZSDDoCB0b3VzIGxlIGNoZW1pbnMiCi0KLSN+IG1zZ2lkICJjb3VsZCBub3QgdHJ1bmNhdGUgJyVzJyIKLSN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSB0cm9ucXVlciAnJXMnIgotCi0jfiBtc2dpZCAiY291bGQgbm90IGZpbmlzaCAnJXMnIgotI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIGZpbmlyICclcyciCi0KLSN+IG1zZ2lkICJjb3VsZCBub3QgY2xvc2UgJXMiCi0jfiBtc2dzdHIgImltcG9zc2libGUgZGUgZmVybWVyICVzIgotCi0jfiBtc2dpZCAiQ29waWVkIGEgbWlzbmFtZWQgYnJhbmNoICclcycgYXdheSIKLSN+IG1zZ3N0ciAiQ29waWUgZCd1bmUgYnJhbmNoZSBtYWwgbm9tbcOpZSAnJXMnIgotCi0jfiBtc2dpZCAiaXQgZG9lcyBub3QgbWFrZSBzZW5zZSB0byBjcmVhdGUgJ0hFQUQnIG1hbnVhbGx5IgotI34gbXNnc3RyICJjcsOpZXIgbWFudWVsbGVtZW50ICdIRUFEJyBuJ2EgcGFzIGRlIHNlbnMiCi0KLSN+IG1zZ2lkICJEb24ndCBrbm93IGhvdyB0byBjbG9uZSAlcyIKLSN+IG1zZ3N0ciAiSmUgbmUgc2FpcyBwYXMgY2xvbmVyICVzIgotCi0jfiBtc2dpZCAic2hvdyBpZ25vcmVkIGZpbGVzIgotI34gbXNnc3RyICJhZmZpY2hlciBsZXMgZmljaGllcnMgaWdub3LDqXMiCi0KLSN+IG1zZ2lkICJEb24ndCBrbm93IGhvdyB0byBmZXRjaCBmcm9tICVzIgotI34gbXNnc3RyICJKZSBuZSBzYWlzIHBhcyByw6ljdXDDqXJlciBkZXB1aXMgJXMiCi0KLSN+IG1zZ2lkICInJHRlcm0nIGlzIG5vdCBhIHZhbGlkIHRlcm0iCi0jfiBtc2dzdHIgIickdGVybScgbidlc3QgcGFzIHVuIHRlcm1lIHZhbGlkZSIKLQotI34gbXNnaWQgIiIKLSN+ICJlcnJvcjogdW5rbm93biBvcHRpb24gZm9yICdzdGFzaCBzYXZlJzogJG9wdGlvblxuIgotI34gIiAgICAgICBUbyBwcm92aWRlIGEgbWVzc2FnZSwgdXNlIGdpdCBzdGFzaCBzYXZlIC0tICckb3B0aW9uJyIKLSN+IG1zZ3N0ciAiIgotI34gImVycmV1cjogb3B0aW9uIGluY29ubnVlIHBvdXIgJ3N0YXNoIHNhdmUnOiAkb3B0aW9uXG4iCi0jfiAiICAgICAgICBQb3VyIGZvdXJuaXIgdW4gbWVzc2FnZSwgdXRpbGlzZXogZ2l0IHN0YXNoIHNhdmUgLS0gJyRvcHRpb24nIgotCi0jfiBtc2dpZCAiRmFpbGVkIHRvIHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgcGF0aCAnJHNtX3BhdGgnIgotI34gbXNnc3RyICLDiWNoZWMgZGUgcGFyY291cnMgZGFucyBsZSBjaGVtaW4gZHUgc291cy1tb2R1bGUgJyRzbV9wYXRoJyIKLQotI34gbXNnaWQgIiUlKHRyYWlsZXJzKSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKLSN+IG1zZ3N0ciAiJSUodHJhaWxlcnMpIG4nYWNjZXB0ZSBwYXMgZCdhcmd1bWVudCIKLQotI34gbXNnaWQgInN1Ym1vZHVsZSB1cGRhdGUgc3RyYXRlZ3kgbm90IHN1cHBvcnRlZCBmb3Igc3VibW9kdWxlICclcyciCi0jfiBtc2dzdHIgIiIKLSN+ICJzdHJhdMOpZ2llIGRlIG1pc2Ugw6Agam91ciBkZSBzb3VzLW1vZHVsZSBub24gc3VwcG9ydMOpZSBwb3VyIGxlIHNvdXMtbW9kdWxlICIKLSN+ICInJXMnIgotCi0jfiBtc2dpZCAiY2hhbmdlIHVwc3RyZWFtIGluZm8iCi0jfiBtc2dzdHIgIm1vZGlmaWVyIGwnaW5mb3JtYXRpb24gYW1vbnQiCi0KLSN+IG1zZ2lkICIiCi0jfiAiXG4iCi0jfiAiSWYgeW91IHdhbnRlZCB0byBtYWtlICclcycgdHJhY2sgJyVzJywgZG8gdGhpczpcbiIKLSN+ICJcbiIKLSN+IG1zZ3N0ciAiIgotI34gIlxuIgotI34gIlNpIHZvdXMgdm91bGlleiBxdWUgJyVzJyBzdWl2ZSAnJXMnLCBmYWl0ZXMgY2VjaSA6XG4iCi0jfiAiXG4iCi0KLSN+IG1zZ2lkICJiYXNlbmFtZSIKLSN+IG1zZ3N0ciAibm9tIGRlIGJhc2UiCi0KLSN+IG1zZ2lkICJwcmVwZW5kIHBhcmVudCBwcm9qZWN0J3MgYmFzZW5hbWUgdG8gb3V0cHV0IgotI34gbXNnc3RyICJwcsOpZml4ZXIgbGUgbm9tIGRlIGJhc2UgZHUgcHJvamV0IHBhcmVudCDDoCBsYSBzb3J0aWUiCi0KLSN+IG1zZ2lkICIiCi0jfiAiV2FybmluZzogdGhlIFNIQS0xIGlzIG1pc3Npbmcgb3IgaXNuJ3QgYSBjb21taXQgaW4gdGhlIGZvbGxvd2luZyBsaW5lOlxuIgotI34gIiAtICRsaW5lIgotI34gbXNnc3RyICIiCi0jfiAiQXR0ZW50aW9uwqA6IGxlIFNIQS0xIG1hbnF1ZSBvdSBuJ2VzdCBwYXMgdW4gY29tbWl0IGRhbnMgbGEgbGlnbmUgIgotI34gInN1aXZhbnRlwqA6XG4iCi0jfiAiIC0gJGxpbmUiCi0KLSN+IG1zZ2lkICIiCi0jfiAiV2FybmluZzogdGhlIGNvbW1hbmQgaXNuJ3QgcmVjb2duaXplZCBpbiB0aGUgZm9sbG93aW5nIGxpbmU6XG4iCi0jfiAiIC0gJGxpbmUiCi0jfiBtc2dzdHIgIiIKLSN+ICJBdHRlbnRpb27CoDogbGEgY29tbWFuZGUgbidlc3QgcGFzIHJlY29ubnVlIGRhbnMgbGUgbGlnbmUgc3VpdmFudGXCoDpcbiIKLSN+ICIgLSAkbGluZSIKLQotI34gbXNnaWQgIk9yIHlvdSBjYW4gYWJvcnQgdGhlIHJlYmFzZSB3aXRoICdnaXQgcmViYXNlIC0tYWJvcnQnLiIKLSN+IG1zZ3N0ciAiIgotI34gIk91IGJpZW4gdm91cyBwb3V2ZXogYWJhbmRvbm5lciBsZSByZWJhc2FnZSBhdmVjICdnaXQgcmViYXNlIC0tYWJvcnQnLiIKLQotI34gbXNnaWQgIkNvdWxkIG5vdCBvcGVuIGZpbGUgJyVzJyIKLSN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSBmaWNoaWVyICclcyciCi0KLSN+IG1zZ2lkICJpbiAlMC4xZiBzZWNvbmRzIGF1dG9tYXRpY2FsbHkuLi4iCi0jfiBtc2dzdHIgImRhbnMgJTAuMWYgc2Vjb25kZXMgYXV0b21hdGlxdWVtZW50Li4uIgotCi0jfiBtc2dpZCAiZHVwMiglZCwlZCkgZmFpbGVkIgotI34gbXNnc3RyICLDqWNoZWMgZGUgZHVwMiglZCwlZCkiCi0KLSN+IG1zZ2lkICJJbml0aWFsIGNvbW1pdCBvbiAiCi0jfiBtc2dzdHIgIlZhbGlkYXRpb24gaW5pdGlhbGUgc3VyICIKLQotI34gbXNnaWQgIlBhdGNoIGlzIGVtcHR5LiBXYXMgaXQgc3BsaXQgd3Jvbmc/IgotI34gbXNnc3RyICJMZSBwYXRjaCBlc3QgdmlkZS4gTGUgZMOpY291cGFnZSDDqXRhaXQtaWwgYm9uwqA/IgotCi0jfiBtc2dpZCAiIgotI34gIllvdSBzdGlsbCBoYXZlIHVubWVyZ2VkIHBhdGhzIGluIHlvdXIgaW5kZXguXG4iCi0jfiAiRGlkIHlvdSBmb3JnZXQgdG8gdXNlICdnaXQgYWRkJz8iCi0jfiBtc2dzdHIgIiIKLSN+ICJWb3VzIGF2ZXogdG91am91cnMgZGVzIGNoZW1pbnMgbm9uIGZ1c2lvbm7DqXMgZGFucyB2b3RyZSBpbmRleFxuIgotI34gIkF1cmllei12b3VzIG91Ymxpw6kgZGUgZmFpcmUgJ2dpdCBhZGQnID8iCi0KLSN+IG1zZ2lkICIiCi0jfiAiQ2Fubm90IHVwZGF0ZSBwYXRocyBhbmQgc3dpdGNoIHRvIGJyYW5jaCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUuXG4iCi0jfiAiRGlkIHlvdSBpbnRlbmQgdG8gY2hlY2tvdXQgJyVzJyB3aGljaCBjYW4gbm90IGJlIHJlc29sdmVkIGFzIGNvbW1pdD8iCi0jfiBtc2dzdHIgIiIKLSN+ICJJbXBvc3NpYmxlIGRlIG1ldHRyZSDDoCBqb3VyIGxlcyBjaGVtaW5zIGV0IGRlIGJhc2N1bGVyIHN1ciBsYSBicmFuY2hlICIKLSN+ICInJXMnIGVuIG3Dqm1lIHRlbXBzLlxuIgotI34gIlNvdWhhaXRpZXotdm91cyBleHRyYWlyZSAnJXMnIHF1aSBuZSBwZXV0IMOqdHJlIHLDqXNvbHUgY29tbWUgY29tbWl0ID8iCi0KLSN+IG1zZ2lkICJFeHBsaWNpdCBwYXRocyBzcGVjaWZpZWQgd2l0aG91dCAtaSBvciAtbzsgYXNzdW1pbmcgLS1vbmx5IHBhdGhzLi4uIgotI34gbXNnc3RyICJDaGVtaW5zIGV4cGxpY2l0ZXMgc3DDqWNpZmnDqXMgc2FucyAtaSBuaSAtbyA7IC0tb25seSBzdXBwb3PDqS4uLiIKLQotI34gbXNnaWQgImRlZmF1bHQgbW9kZSBmb3IgcmVjdXJzaW9uIgotI34gbXNnc3RyICJtb2RlIHBhciBkw6lmYXV0IHBvdXIgbGEgcsOpY3Vyc2lvbiIKLQotI34gbXNnaWQgInN1Ym1vZHVsZS0taGVscGVyIHN1YmNvbW1hbmQgbXVzdCBiZSBjYWxsZWQgd2l0aCBhIHN1YmNvbW1hbmQiCi0jfiBtc2dzdHIgIiIKLSN+ICJsYSBzb3VzLWNvbW1hbmRlIHN1Ym1vZHVsZS0taGVscGVyIGRvaXQgw6p0cmUgYXBwZWzDqWUgYXZlYyB1bmUgc291cy0iCi0jfiAiY29tbWFuZGUiCi0KLSN+IG1zZ2lkICJjb3VsZCBub3Qgc3RhdCAnJXMiCi0jfiBtc2dzdHIgInN0YXQgaW1wb3NzaWJsZSBkZSAnJXMnIgotCi0jfiBtc2dpZCAidGFnOiB0YWdnaW5nICIKLSN+IG1zZ3N0ciAiw6l0aXF1ZXR0ZTogw6l0aXF1ZXRhZ2UgZGUgIgotCi0jfiBtc2dpZCAiY29tbWl0IG9iamVjdCIKLSN+IG1zZ3N0ciAib2JqZXQgY29tbWl0IgotCi0jfiBtc2dpZCAidHJlZSBvYmplY3QiCi0jfiBtc2dzdHIgIm9iamV0IGFyYnJlIgotCi0jfiBtc2dpZCAiYmxvYiBvYmplY3QiCi0jfiBtc2dzdHIgIm9iamV0IGJsb2IiCi0KLSN+IG1zZ2lkICIiCi0jfiAiVGhlcmUgaXMgbm90aGluZyB0byBleGNsdWRlIGZyb20gYnkgOihleGNsdWRlKSBwYXR0ZXJucy5cbiIKLSN+ICJQZXJoYXBzIHlvdSBmb3Jnb3QgdG8gYWRkIGVpdGhlciAnOi8nIG9yICcuJyA/IgotI34gbXNnc3RyICIiCi0jfiAiSWwgbid5IGEgcmllbiBkb250IGlsIGZhdXQgZXhjbHVyZSBwYXIgZGVzIG1vdGlmcyA6KGV4Y2x1cmUpLlxuIgotI34gIlBldXQtw6p0cmUgYXZlei12b3VzIG91Ymxpw6kgZCdham91dGVyICc6Lycgb3UgJy4nID8iCi0KLSN+IG1zZ2lkICJ1bnJlY29nbml6ZWQgZm9ybWF0OiAlJSglcykiCi0jfiBtc2dzdHIgImZvcm1hdCBub24gcmVjb25udSAlJSglcykiCi0KLSN+IG1zZ2lkICI6c3RyaXA9IHJlcXVpcmVzIGEgcG9zaXRpdmUgaW50ZWdlciBhcmd1bWVudCIKLSN+IG1zZ3N0ciAiOnN0cmlwPSByZXF1aWVydCB1biBhcmd1bWVudCBlbnRpZXIgcG9zaXRpZiIKLQotI34gbXNnaWQgInJlZiAnJXMnIGRvZXMgbm90IGhhdmUgJWxkIGNvbXBvbmVudHMgdG8gOnN0cmlwIgotI34gbXNnc3RyICJsYSByw6lmICclcycgbidhIHBhcyAlbGQgY29tcG9zYW50cyDDoCA6c3RyaXAiCi0KLSN+IG1zZ2lkICJ1bmtub3duICUuKnMgZm9ybWF0ICVzIgotI34gbXNnc3RyICJmb3JtYXQgZGUgJS4qcyBpbmNvbm51ICVzIgotCi0jIGbDqW1pbmluIHBvdXIgdW5lIGJyYW5jaGUKLSN+IG1zZ2lkICJbJXM6IGdvbmVdIgotI34gbXNnc3RyICJbJXM6IGRpc3BhcnVlXSIKLQotI34gbXNnaWQgIlslc10iCi0jfiBtc2dzdHIgIlslc10iCi0KLSN+IG1zZ2lkICJbJXM6IGJlaGluZCAlZF0iCi0jfiBtc2dzdHIgIlslczogZW4gcmV0YXJkIGRlICVkXSIKLQotI34gbXNnaWQgIlslczogYWhlYWQgJWRdIgotI34gbXNnc3RyICJbJXMgOiBlbiBhdmFuY2UgZGUgJWRdIgotCi0jfiBtc2dpZCAiWyVzOiBhaGVhZCAlZCwgYmVoaW5kICVkXSIKLSN+IG1zZ3N0ciAiWyVzIDogZW4gYXZhbmNlIGRlICVkLCBlbiByZXRhcmQgZGUgJWRdIgotCi0jfiBtc2dpZCAiICoqKiogaW52YWxpZCByZWYgKioqKiIKLSN+IG1zZ3N0ciAiICoqKiogcsOpZsOpcmVuY2UgaW52YWxpZGUgKioqKiIKLQotI34gbXNnaWQgImluc2FuZWx5IGxvbmcgb2JqZWN0IGRpcmVjdG9yeSAlLipzIgotI34gbXNnc3RyICJvYmpldCByw6lwZXJ0b2lyZSBkw6ltZW50aWVsbGVtZW50IGxvbmcgJS4qcyIKLQotI34gbXNnaWQgImdpdCBtZXJnZSBbPG9wdGlvbnM+XSA8bXNnPiBIRUFEIDxjb21taXQ+IgotI34gbXNnc3RyICJnaXQgbWVyZ2UgWzxvcHRpb25zPl0gPG1lc3NhZ2U+IEhFQUQgPGNvbW1pdD4iCi0KLSN+IG1zZ2lkICJ0YWcgbmFtZSB0b28gbG9uZzogJS4qcy4uLiIKLSN+IG1zZ3N0ciAibm9tIGQnw6l0aXF1ZXR0ZSB0cm9wIGxvbmcgOiAlLipzLi4uIgotCi0jfiBtc2dpZCAidGFnIGhlYWRlciB0b28gYmlnLiIKLSN+IG1zZ3N0ciAiZW4tdMOqdGUgZCfDqXRpcXVldHRlIHRyb3AgZ3Jvcy4iCi0KLSN+IG1zZ2lkICIiCi0jfiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKLSN+ICJtYXJrZWQgZm9yIGRpc2NhcmRpbmciCi0jfiBtc2dzdHIgIiIKLSN+ICJTaSBsZSBwYXRjaCBzJ2FwcGxpcXVlIHByb3ByZW1lbnQsIGxhIHNlY3Rpb24gw6lkaXTDqWUgc2VyYVxuIgotI34gImltbWVkaWF0ZW1lbnQgbWFycXXDqWUgY29tbWUgw6lsaW1pbsOpZSIKLQotI34gbXNnaWQgIlVzZSBhbiBleHBlcmltZW50YWwgYmxhbmstbGluZS1iYXNlZCBoZXVyaXN0aWMgdG8gaW1wcm92ZSBkaWZmcyIKLSN+IG1zZ3N0ciAiIgotI34gIlV0aWxpc2VyIHVuZSBoZXVyaXN0aXF1ZSBleHDDqXJpbWVudGFsZSByZXBvc2FudCBzdXIgbGVzIGxpZ25lcyB2aWRlcyBwb3VyICIKLSN+ICJhbcOpbGlvcmVyIGxlIGRpZmZzIgotCi0jfiBtc2dpZCAiQ2xldmVyLi4uIGFtZW5kaW5nIHRoZSBsYXN0IG9uZSB3aXRoIGRpcnR5IGluZGV4LiIKLSN+IG1zZ3N0ciAiTWFsaW4uLi4gY29ycmVjdGlvbiBkdSBkZXJuaWVyIGF2ZWMgdW4gaW5kZXggc2FsZS4iCi0KLSN+IG1zZ2lkICIiCi0jfiAidGhlIGZvbGxvd2luZyBzdWJtb2R1bGUgKG9yIG9uZSBvZiBpdHMgbmVzdGVkIHN1Ym1vZHVsZXMpXG4iCi0jfiAidXNlcyBhIC5naXQgZGlyZWN0b3J5OiIKLSN+IG1zZ2lkX3BsdXJhbCAiIgotI34gInRoZSBmb2xsb3dpbmcgc3VibW9kdWxlcyAob3Igb25lIG9mIHRoZWlyIG5lc3RlZCBzdWJtb2R1bGVzKVxuIgotI34gInVzZSBhIC5naXQgZGlyZWN0b3J5OiIKLSN+IG1zZ3N0clswXSAiIgotI34gImxlIHNvdXMtbW9kdWxlIHN1aXZhbnQgKG91IHVuIGRlIHNlcyBzb3VzLW1vZHVsZXMgaW1icmlxdcOpcylcbiIKLSN+ICJ1dGlsaXNlIHVuIHLDqXBlcnRvaXJlIC5naXQgOiIKLSN+IG1zZ3N0clsxXSAiIgotI34gImxlcyBzb3VzLW1vZHVsZXMgc3VpdmFudHMgKG91IHVuIGRlIGxldXJzIHNvdXMtbW9kdWxlcyBpbWJyaXF1w6lzKVxuIgotI34gInV0aWxpc2VudCB1biByw6lwZXJ0b2lyZSAuZ2l0IDoiCi0KLSN+IG1zZ2lkICIiCi0jfiAiXG4iCi0jfiAiKHVzZSAncm0gLXJmJyBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gcmVtb3ZlIGl0IGluY2x1ZGluZyBhbGwgb2YgaXRzICIKLSN+ICJoaXN0b3J5KSIKLSN+IG1zZ3N0ciAiIgotI34gIlxuIgotI34gIih1dGlsaXNleiAncm0gLXJmJyBzaSB2b3VzIHZvdWxleiB2cmFpbWVudCBsZSBzdXBwcmltZXIgZW4gaW5jbHVhbnQgdG91dCAiCi0jfiAic29uIGhpc3RvcmlxdWUpIgotCi0jfiBtc2dpZCAiRXJyb3Igd3JhcHBpbmcgdXAgJXMuIgotI34gbXNnc3RyICJFcnJldXIgbG9ycyBkZSBsJ2VtYmFsbGFnZSBkZSAlcy4iCi0KLSN+IG1zZ2lkICJZb3VyIGxvY2FsIGNoYW5nZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlcnJ5LXBpY2suIgotI34gbXNnc3RyICJWb3MgbW9kaWZpY2F0aW9ucyBsb2NhbGVzIHNlcmFpZW50IMOpY3Jhc8OpZXMgcGFyIGNoZXJyeS1waWNrLiIKLQotI34gbXNnaWQgIkNhbm5vdCByZXZlcnQgZHVyaW5nIGFub3RoZXIgcmV2ZXJ0LiIKLSN+IG1zZ3N0ciAiSW1wb3NzaWJsZSBkJ2FubnVsZXIgdW4gY29tbWl0IHBlbmRhbnQgbCdhbm51bGF0aW9uIGQndW4gY29tbWl0LiIKLQotI34gbXNnaWQgIkNhbm5vdCBjaGVycnktcGljayBkdXJpbmcgYW5vdGhlciBjaGVycnktcGljay4iCi0jfiBtc2dzdHIgIkltcG9zc2libGUgZGUgcGljb3JlciBwZW5kYW50IHVuIGF1dHJlIHBpY29yYWdlLiIKLQotI34gbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBsaW5lICVkLiIKLSN+IG1zZ3N0ciAiSW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGxhIGxpZ25lICVkLiIKLQotI34gbXNnaWQgIkNvdWxkIG5vdCBvcGVuICVzIgotI34gbXNnc3RyICJJbXBvc3NpYmxlIGQnb3V2cmlyICVzIgotCi0jfiBtc2dpZCAiQ291bGQgbm90IGZvcm1hdCAlcy4iCi0jfiBtc2dzdHIgIkltcG9zc2libGUgZGUgZm9ybWF0ZXIgJXMuIgotCi0jfiBtc2dpZCAiJXM6ICVzIgotI34gbXNnc3RyICIlcyA6ICVzIgotCi0jfiBtc2dpZCAiY2Fubm90IG9wZW4gJXM6ICVzIgotI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyICVzIDogJXMiCi0KLSN+IG1zZ2lkICJZb3UgbmVlZCB0byBzZXQgeW91ciBjb21taXR0ZXIgaW5mbyBmaXJzdCIKLSN+IG1zZ3N0ciAiVm91cyBkZXZleiBkJ2Fib3JkIGTDqWZpbmlyIHZvcyBpbmZvcm1hdGlvbnMgZGUgdmFsaWRhdGV1ciIKLQotI34gbXNnaWQgIlRoaXMgaXMgdGhlIDJuZCBjb21taXQgbWVzc2FnZToiCi0jfiBtc2dzdHIgIkNlY2kgZXN0IGxlIGRldXhpw6htZSBtZXNzYWdlIGRlIHZhbGlkYXRpb27CoDoiCi0KLSN+IG1zZ2lkICJUaGlzIGlzIHRoZSAzcmQgY29tbWl0IG1lc3NhZ2U6IgotI34gbXNnc3RyICJDZWNpIGVzdCBsZSB0cm9pc2nDqG1lIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbsKgOiIKLQotI34gbXNnaWQgIlRoaXMgaXMgdGhlIDR0aCBjb21taXQgbWVzc2FnZToiCi0jfiBtc2dzdHIgIkNlY2kgZXN0IGxlIHF1YXRyacOobWUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uwqA6IgotCi0jfiBtc2dpZCAiVGhpcyBpcyB0aGUgNXRoIGNvbW1pdCBtZXNzYWdlOiIKLSN+IG1zZ3N0ciAiQ2VjaSBlc3QgbGUgY2lucXVpw6htZSBtZXNzYWdlIGRlIHZhbGlkYXRpb27CoDoiCi0KLSN+IG1zZ2lkICJUaGlzIGlzIHRoZSA2dGggY29tbWl0IG1lc3NhZ2U6IgotI34gbXNnc3RyICJDZWNpIGVzdCBsZSBzaXhpw6htZSBtZXNzYWdlIGRlIHZhbGlkYXRpb27CoDoiCi0KLSN+IG1zZ2lkICJUaGlzIGlzIHRoZSA3dGggY29tbWl0IG1lc3NhZ2U6IgotI34gbXNnc3RyICJDZWNpIGVzdCBsZSBzZXB0acOobWUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uwqA6IgotCi0jfiBtc2dpZCAiVGhpcyBpcyB0aGUgOHRoIGNvbW1pdCBtZXNzYWdlOiIKLSN+IG1zZ3N0ciAiQ2VjaSBlc3QgbGUgaHVpdGnDqG1lIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbsKgOiIKLQotI34gbXNnaWQgIlRoaXMgaXMgdGhlIDl0aCBjb21taXQgbWVzc2FnZToiCi0jfiBtc2dzdHIgIkNlY2kgZXN0IGxlIG5ldXZpw6htZSBtZXNzYWdlIGRlIHZhbGlkYXRpb27CoDoiCi0KLSN+IG1zZ2lkICJUaGlzIGlzIHRoZSAxMHRoIGNvbW1pdCBtZXNzYWdlOiIKLSN+IG1zZ3N0ciAiQ2VjaSBlc3QgbGUgZGl4acOobWUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uwqA6IgotCi0jfiBtc2dpZCAiVGhpcyBpcyB0aGUgJHtufXRoIGNvbW1pdCBtZXNzYWdlOiIKLSN+IG1zZ3N0ciAiQ2VjaSBlc3QgbGUgJHtufWnDqG1lIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbsKgOiIKLQotI34gbXNnaWQgIlRoaXMgaXMgdGhlICR7bn1zdCBjb21taXQgbWVzc2FnZToiCi0jfiBtc2dzdHIgIkNlY2kgZXN0IGxlICR7bn1pw6htZSBtZXNzYWdlIGRlIHZhbGlkYXRpb27CoDoiCi0KLSN+IG1zZ2lkICJUaGlzIGlzIHRoZSAke259bmQgY29tbWl0IG1lc3NhZ2U6IgotI34gbXNnc3RyICJDZWNpIGVzdCBsZSAke259acOobWUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uwqA6IgotCi0jfiBtc2dpZCAiVGhpcyBpcyB0aGUgJHtufXJkIGNvbW1pdCBtZXNzYWdlOiIKLSN+IG1zZ3N0ciAiQ2VjaSBlc3QgbGUgJHtufWnDqG1lIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbsKgOiIKLQotI34gbXNnaWQgIlRoZSAxc3QgY29tbWl0IG1lc3NhZ2Ugd2lsbCBiZSBza2lwcGVkOiIKLSN+IG1zZ3N0ciAiTGUgcHJlbWllciBtZXNzYWdlIGRlIHZhbGlkYXRpb24gc2VyYSBpZ25vcsOpwqA6IgotCi0jfiBtc2dpZCAiVGhlIDJuZCBjb21taXQgbWVzc2FnZSB3aWxsIGJlIHNraXBwZWQ6IgotI34gbXNnc3RyICJMZSBkZXV4acOobWUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uIHNlcmEgaWdub3LDqcKgOiIKLQotI34gbXNnaWQgIlRoZSAzcmQgY29tbWl0IG1lc3NhZ2Ugd2lsbCBiZSBza2lwcGVkOiIKLSN+IG1zZ3N0ciAiTGUgdHJvaXNpw6htZSBtZXNzYWdlIGRlIHZhbGlkYXRpb24gc2VyYSBpZ25vcsOpwqA6IgotCi0jfiBtc2dpZCAiVGhlIDR0aCBjb21taXQgbWVzc2FnZSB3aWxsIGJlIHNraXBwZWQ6IgotI34gbXNnc3RyICJMZSBxdWF0cmnDqG1lIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiBzZXJhIGlnbm9yw6nCoDoiCi0KLSN+IG1zZ2lkICJUaGUgNXRoIGNvbW1pdCBtZXNzYWdlIHdpbGwgYmUgc2tpcHBlZDoiCi0jfiBtc2dzdHIgIkxlIGNpbnF1acOobWUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uIHNlcmEgaWdub3LDqcKgOiIKLQotI34gbXNnaWQgIlRoZSA2dGggY29tbWl0IG1lc3NhZ2Ugd2lsbCBiZSBza2lwcGVkOiIKLSN+IG1zZ3N0ciAiTGUgc2l4acOobWUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uIHNlcmEgaWdub3LDqcKgOiIKLQotI34gbXNnaWQgIlRoZSA3dGggY29tbWl0IG1lc3NhZ2Ugd2lsbCBiZSBza2lwcGVkOiIKLSN+IG1zZ3N0ciAiTGUgc2VwdGnDqG1lIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiBzZXJhIGlnbm9yw6nCoDoiCi0KLSN+IG1zZ2lkICJUaGUgOHRoIGNvbW1pdCBtZXNzYWdlIHdpbGwgYmUgc2tpcHBlZDoiCi0jfiBtc2dzdHIgIkxlIGh1aXRpw6htZSBtZXNzYWdlIGRlIHZhbGlkYXRpb24gc2VyYSBpZ25vcsOpwqA6IgotCi0jfiBtc2dpZCAiVGhlIDl0aCBjb21taXQgbWVzc2FnZSB3aWxsIGJlIHNraXBwZWQ6IgotI34gbXNnc3RyICJMZSBuZXV2acOobWUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uIHNlcmEgaWdub3LDqcKgOiIKLQotI34gbXNnaWQgIlRoZSAxMHRoIGNvbW1pdCBtZXNzYWdlIHdpbGwgYmUgc2tpcHBlZDoiCi0jfiBtc2dzdHIgIkxlIGRpeGnDqG1lIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiBzZXJhIGlnbm9yw6nCoDoiCi0KLSN+IG1zZ2lkICJUaGUgJHtufXRoIGNvbW1pdCBtZXNzYWdlIHdpbGwgYmUgc2tpcHBlZDoiCi0jfiBtc2dzdHIgImxlICR7bn1pw6htZSBtZXNzYWdlIGRlIHZhbGlkYXRpb24gc2VyYSBpZ25vcsOpwqA6IgotCi0jfiBtc2dpZCAiVGhlICR7bn1zdCBjb21taXQgbWVzc2FnZSB3aWxsIGJlIHNraXBwZWQ6IgotI34gbXNnc3RyICJMZSBtZXNzYWdlIGRlIHZhbGlkYXRpb24gJHtufSBzZXJhIGlnbm9yw6nCoDoiCi0KLSN+IG1zZ2lkICJUaGUgJHtufW5kIGNvbW1pdCBtZXNzYWdlIHdpbGwgYmUgc2tpcHBlZDoiCi0jfiBtc2dzdHIgIkxlIG1lc3NhZ2UgZGUgdmFsaWRhdGlvbiAke259IHNlcmEgaWdub3LDqcKgOiIKLQotI34gbXNnaWQgIlRoZSAke259cmQgY29tbWl0IG1lc3NhZ2Ugd2lsbCBiZSBza2lwcGVkOiIKLSN+IG1zZ3N0ciAiTGUgbWVzc2FnZSBkZSB2YWxpZGF0aW9uICR7bn0gc2VyYSBpZ25vcsOpwqA6IgotCi0jfiBtc2dpZCAiY291bGQgbm90IHJ1biBncGcuIgotI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxhbmNlciBncGcuIgotCi0jfiBtc2dpZCAiZ3BnIGRpZCBub3QgYWNjZXB0IHRoZSBkYXRhIgotI34gbXNnc3RyICJncGcgbidhIHBhcyBhY2NlcHTDqSBsZXMgZG9ubsOpZXMiCi0KLSN+IG1zZ2lkICJ1bnN1cHBvcnRlZCBvYmplY3QgdHlwZSBpbiB0aGUgdHJlZSIKLSN+IG1zZ3N0ciAidHlwZSBkJ29iamV0IG5vbiBzdXBwb3J0w6kgZGFucyBsJ2FyYnJlIgotCi0jfiBtc2dpZCAiRmF0YWwgbWVyZ2UgZmFpbHVyZSwgc2hvdWxkbid0IGhhcHBlbi4iCi0jfiBtc2dzdHIgIsOJY2hlYyBmYXRhbCBkZSBmdXNpb24sIHF1aSBuZSBkZXZyYWl0IGphbWFpcyBhcnJpdmVyLiIKLQotI34gbXNnaWQgIlVucHJvY2Vzc2VkIHBhdGg/Pz8gJXMiCi0jfiBtc2dzdHIgIkNoZW1pbiBub24gdHJhaXTDqSA/Pz8gJXMiCi0KLSN+IG1zZ2lkICJDYW5ub3QgJXMgZHVyaW5nIGEgJXMiCi0jfiBtc2dzdHIgIkltcG9zc2libGUgZGUgJXMgcGVuZGFudCB1biAlcyIKLQotI34gbXNnaWQgIkNhbid0IGNoZXJyeS1waWNrIGludG8gZW1wdHkgaGVhZCIKLSN+IG1zZ3N0ciAiSW1wb3NzaWJsZSBkZSBwaWNvcmVyIHZlcnMgdW5lIEhFQUQgdmlkZSIKLQotI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuICVzIGZvciB3cml0aW5nIgotI34gbXNnc3RyICJJbXBvc3NpYmxlIGQnb3V2cmlyICclcycgZW4gw6ljcml0dXJlIgotCi0jfiBtc2dpZCAiYnVnOiB1bmhhbmRsZWQgdW5tZXJnZWQgc3RhdHVzICV4IgotI34gbXNnc3RyICJib2d1ZSA6IMOpdGF0IGRlIG5vbi1mdXNpb24gbm9uIGfDqXLDqSAleCIKLQotI34gbXNnaWQgImJ1ZzogdW5oYW5kbGVkIGRpZmYgc3RhdHVzICVjIgotI34gbXNnc3RyICJib2d1ZSA6IMOpdGF0IGRlIGRpZmYgbm9uIGfDqXLDqSAlYyIKLQotI34gbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBicmFuY2ggZGVzY3JpcHRpb24gdGVtcGxhdGUiCi0jfiBtc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlIGxlIG1vZMOobGUgZGUgZGVzY3JpcHRpb24gZGUgYnJhbmNoZSIKLQotI34gbXNnaWQgImNvcnJ1cHQgaW5kZXggZmlsZSIKLSN+IG1zZ3N0ciAiZmljaGllciBkJ2luZGV4IGNvcnJvbXB1IgotCi0jfiBtc2dpZCAiZGV0YWNoIHRoZSBIRUFEIGF0IG5hbWVkIGNvbW1pdCIKLSN+IG1zZ3N0ciAiZMOpdGFjaGVyIGxhIEhFQUQgw6AgbGEgdmFsaWRhdGlvbiBub21tw6llIgotCi0jfiBtc2dpZCAiQ2hlY2tpbmcgY29ubmVjdGl2aXR5Li4uICIKLSN+IG1zZ3N0ciAiVsOpcmlmaWNhdGlvbiBkZSBsYSBjb25uZWN0aXZpdMOpLi4uICIKLQotI34gbXNnaWQgIiAgKHVuYWJsZSB0byB1cGRhdGUgbG9jYWwgcmVmKSIKLSN+IG1zZ3N0ciAiICAoaW1wb3NzaWJsZSBkZSBtZXR0cmUgw6Agam91ciBsYSByw6lmw6lyZW5jZSBsb2NhbGUpIgotCi0jfiBtc2dpZCAiUmVpbml0aWFsaXplZCBleGlzdGluZyIKLSN+IG1zZ3N0ciAiZXhpc3RhbnQgcsOpaW5pdGlhbGlzw6kiCi0KLSN+IG1zZ2lkICJJbml0aWFsaXplZCBlbXB0eSIKLSN+IG1zZ3N0ciAidmlkZSBpbml0aWFsaXPDqSIKLQotI34gbXNnaWQgIiBzaGFyZWQiCi0jfiBtc2dzdHIgIiBwYXJ0YWfDqSIKLQotI34gbXNnaWQgIlZlcmlmeSB0aGF0IHRoZSBuYW1lZCBjb21taXQgaGFzIGEgdmFsaWQgR1BHIHNpZ25hdHVyZSIKLSN+IG1zZ3N0ciAiVsOpcmlmaWVyIHF1ZSBsYSB2YWxpZGF0aW9uIGEgdW5lIHNpZ25hdHVyZSBHUEcgdmFsaWRlIgotCi0jfiBtc2dpZCAiV3JpdGluZyBTUVVBU0hfTVNHIgotI34gbXNnc3RyICLDiWNyaXR1cmUgZGUgU1FVQVNIX01TRyIKLQotI34gbXNnaWQgIkZpbmlzaGluZyBTUVVBU0hfTVNHIgotI34gbXNnc3RyICJGaW5pdGlvbiBkZSBTUVVBU0hfTVNHIgotCi0jfiBtc2dpZCAiICAgYW5kIHdpdGggcmVtb3RlIgotI34gbXNnc3RyICIgICBldCBhdmVjIGxhIGRpc3RhbnRlIgotCi0jfiBtc2dpZCAicmVtb3ZpbmcgJyVzJyBmYWlsZWQiCi0jfiBtc2dzdHIgImxhIHN1cHByZXNzaW9uIGRlICclcycgYSDDqWNob3XDqSIKLQotI34gbXNnaWQgIlBsZWFzZSBjYWxsICdiaXNlY3Rfc3RhdGUnIHdpdGggYXQgbGVhc3Qgb25lIGFyZ3VtZW50LiIKLSN+IG1zZ3N0ciAiVmV1aWxsZXogYXBwZWxlciAnYmlzZWN0X3N0YXRlJyBhdmVjIGF1IG1vaW5zIHVuIGFyZ3VtZW50LiIKLQotI34gbXNnaWQgIiIKLSN+ICJJZiB5b3Ugd2FudCB0byByZXVzZSB0aGlzIGxvY2FsIGdpdCBkaXJlY3RvcnkgaW5zdGVhZCBvZiBjbG9uaW5nIGFnYWluICIKLSN+ICJmcm9tIgotI34gbXNnc3RyICIiCi0jfiAiU2kgdm91cyB2b3VsZXogcsOpdXRpbGlzZXIgY2UgcsOpcGVydG9pcmUgZ2l0IGxvY2FsIGF1IGxpZXUgZGUgY2xvbmVyIMOgICIKLSN+ICJub3V2ZWF1IGRlcHVpcyIKLQotI34gbXNnaWQgIiIKLSN+ICJ1c2UgdGhlICctLWZvcmNlJyBvcHRpb24uIElmIHRoZSBsb2NhbCBnaXQgZGlyZWN0b3J5IGlzIG5vdCB0aGUgY29ycmVjdCAiCi0jfiAicmVwbyIKLSN+IG1zZ3N0ciAiIgotI34gInV0aWxpc2V6IGwnb3B0aW9uICctLWZvcmNlJy4gU2kgbGUgcsOpcGVydG9pcmUgbG9jYWwgZ2l0IG4nZXN0IHBhcyBsZSAiCi0jfiAiZMOpcMO0dCBjb3JyZWN0IgotCi0jfiBtc2dpZCAiIgotI34gIm9yIHlvdSBhcmUgdW5zdXJlIHdoYXQgdGhpcyBtZWFucyBjaG9vc2UgYW5vdGhlciBuYW1lIHdpdGggdGhlICctLW5hbWUnICIKLSN+ICJvcHRpb24uIgotI34gbXNnc3RyICIiCi0jfiAib3Ugc2kgdm91cyBuZSBzYXZleiBwYXMgY2UgcXVlIGNlbGEgc2lnbmlmaWUsIGNob2lzaXNzZXogdW4gYXV0cmUgbm9tICIKLSN+ICJhdmVjIGwnb3B0aW9uICctLW5hbWUnLiIKLQotI34gbXNnaWQgIlN1Ym1vZHVsZSB3b3JrIHRyZWUgJyRkaXNwbGF5cGF0aCcgY29udGFpbnMgYSAuZ2l0IGRpcmVjdG9yeSIKLSN+IG1zZ3N0ciAiIgotI34gIkxhIGNvcGllIGRlIHRyYXZhaWwgZHUgc291cy1tb2R1bGUgJyRkaXNwbGF5cGF0aCcgY29udGllbnQgdW4gcsOpcGVydG9pcmUgLiIKLSN+ICJnaXQiCi0KLSN+IG1zZ2lkICIiCi0jfiAiKHVzZSAncm0gLXJmJyBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gcmVtb3ZlIGl0IGluY2x1ZGluZyBhbGwgb2YgaXRzICIKLSN+ICJoaXN0b3J5KSIKLSN+IG1zZ3N0ciAiIgotI34gIih1dGlsaXNleiAncm0gLXJmJyBzaSB2b3VzIHZvdWxleiB2cmFpbWVudCBsZSBzdXBwcmltZXIgZW4gaW5jbHVhbnQgdG91dCAiCi0jfiAic29uIGhpc3RvcmlxdWUpIgotCi0jfiBtc2dpZCAiJyVzJzogJXMiCi0jfiBtc2dzdHIgIiclcycgOiAlcyIKLQotI34gbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgJyVzJzogJXMiCi0jfiBtc2dzdHIgImltcG9zc2libGUgZCdhY2PDqWRlciDDoCAnJXMnIDogJXMiCi0KLSN+IG1zZ2lkICIgICAgZ2l0IGJyYW5jaCAtZCAlc1xuIgotI34gbXNnc3RyICIgICAgZ2l0IGJyYW5jaCAtZCAlc1xuIgotCi0jfiBtc2dpZCAiICAgIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG8gJXNcbiIKLSN+IG1zZ3N0ciAiICAgIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG8gJXNcbiIKLQotI34gbXNnaWQgImNhbm5vdCBvcGVuICVzOiAlc1xuIgotI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyICVzIDogJXNcbiIKLQotI34gbXNnaWQgIlBsZWFzZSwgc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKLSN+IG1zZ3N0ciAiIgotI34gIlZldWlsbGV6IGluZGV4ZXIgdm9zIG1vZGlmaWNhdGlvbnMgZGUgLmdpdG1vZHVsZXMgb3UgcmVtaXNlei1sZXMgcG91ciAiCi0jfiAiY29udGludWVyIgotCi0jfiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZTogJXMiCi0jfiBtc2dzdHIgIsOpY2hlYyBkZSBsYSBzdXBwcmVzc2lvbiBkZSAlcyIKLQotI34gbXNnaWQgIlRoZSAtLWV4ZWMgb3B0aW9uIG11c3QgYmUgdXNlZCB3aXRoIHRoZSAtLWludGVyYWN0aXZlIG9wdGlvbiIKLSN+IG1zZ3N0ciAiTCdvcHRpb24gLS1leGVjIGRvaXQgw6p0cmUgdXRpbGlzw6llIGF2ZWMgbCdvcHRpb24gLS1pbnRlcmFjdGl2ZSIKLQotI34gbXNnaWQgIiIKLSN+ICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyBub3QgaW5pdGlhbGl6ZWRcbiIKLSN+ICJNYXliZSB5b3Ugd2FudCB0byB1c2UgJ3VwZGF0ZSAtLWluaXQnPyIKLSN+IG1zZ3N0ciAiIgotI34gIkNoZW1pbiBkZSBzb3VzLW1vZHVsZSAnJGRpc3BsYXlwYXRoJyBub24gaW5pdGlhbGlzw6lcbiIKLSN+ICJQZXV0LcOqdHJlIHNvdWhhaXRlei12b3VzIHV0aWxpc2VyICd1cGRhdGUgLS1pbml0JyA/IgotCi0jfiBtc2dpZCAiRm9yd2FyZC1wb3J0IGxvY2FsIGNvbW1pdHMgdG8gdGhlIHVwZGF0ZWQgdXBzdHJlYW0gaGVhZCIKLSN+IG1zZ3N0ciAiIgotI34gIlJlcG9ydGVyIGxlcyB2YWxpZGF0aW9ucyBsb2NhbGVzIHN1ciBsZSBzb21tZXQgbWlzIMOgIGpvdXIgZCd1bmUgYnJhbmNoZSAiCi0jfiAiYW1vbnQiCi0KLSN+IG1zZ2lkICJpbXByb3BlciBmb3JtYXQgZW50ZXJlZCBhbGlnbjolcyIKLSN+IG1zZ3N0ciAiZm9ybWF0IG5vbiBjb252ZW5hYmxlIGFsaWduOiVzIgotCi0jfiBtc2dpZCAiIgotI34gInB1c2guZGVmYXVsdCBpcyB1bnNldDsgaXRzIGltcGxpY2l0IHZhbHVlIGhhcyBjaGFuZ2VkIGluXG4iCi0jfiAiR2l0IDIuMCBmcm9tICdtYXRjaGluZycgdG8gJ3NpbXBsZScuIFRvIHNxdWVsY2ggdGhpcyBtZXNzYWdlXG4iCi0jfiAiYW5kIG1haW50YWluIHRoZSB0cmFkaXRpb25hbCBiZWhhdmlvciwgdXNlOlxuIgotI34gIlxuIgotI34gIiAgZ2l0IGNvbmZpZyAtLWdsb2JhbCBwdXNoLmRlZmF1bHQgbWF0Y2hpbmdcbiIKLSN+ICJcbiIKLSN+ICJUbyBzcXVlbGNoIHRoaXMgbWVzc2FnZSBhbmQgYWRvcHQgdGhlIG5ldyBiZWhhdmlvciBub3csIHVzZTpcbiIKLSN+ICJcbiIKLSN+ICIgIGdpdCBjb25maWcgLS1nbG9iYWwgcHVzaC5kZWZhdWx0IHNpbXBsZVxuIgotI34gIlxuIgotI34gIldoZW4gcHVzaC5kZWZhdWx0IGlzIHNldCB0byAnbWF0Y2hpbmcnLCBnaXQgd2lsbCBwdXNoIGxvY2FsIGJyYW5jaGVzXG4iCi0jfiAidG8gdGhlIHJlbW90ZSBicmFuY2hlcyB0aGF0IGFscmVhZHkgZXhpc3Qgd2l0aCB0aGUgc2FtZSBuYW1lLlxuIgotI34gIlxuIgotI34gIlNpbmNlIEdpdCAyLjAsIEdpdCBkZWZhdWx0cyB0byB0aGUgbW9yZSBjb25zZXJ2YXRpdmUgJ3NpbXBsZSdcbiIKLSN+ICJiZWhhdmlvciwgd2hpY2ggb25seSBwdXNoZXMgdGhlIGN1cnJlbnQgYnJhbmNoIHRvIHRoZSBjb3JyZXNwb25kaW5nXG4iCi0jfiAicmVtb3RlIGJyYW5jaCB0aGF0ICdnaXQgcHVsbCcgdXNlcyB0byB1cGRhdGUgdGhlIGN1cnJlbnQgYnJhbmNoLlxuIgotI34gIlxuIgotI34gIlNlZSAnZ2l0IGhlbHAgY29uZmlnJyBhbmQgc2VhcmNoIGZvciAncHVzaC5kZWZhdWx0JyBmb3IgZnVydGhlciAiCi0jfiAiaW5mb3JtYXRpb24uXG4iCi0jfiAiKHRoZSAnc2ltcGxlJyBtb2RlIHdhcyBpbnRyb2R1Y2VkIGluIEdpdCAxLjcuMTEuIFVzZSB0aGUgc2ltaWxhciBtb2RlXG4iCi0jfiAiJ2N1cnJlbnQnIGluc3RlYWQgb2YgJ3NpbXBsZScgaWYgeW91IHNvbWV0aW1lcyB1c2Ugb2xkZXIgdmVyc2lvbnMgb2YgR2l0KSIKLSN+IG1zZ3N0ciAiIgotI34gInB1c2guZGVmYXVsdCBuJ2VzdCBwYXMgZMOpZmluaSA7IHNhIHZhbGV1ciBpbXBsaWNpdGUgYSBjaGFuZ8OpIGRhbnMgR2l0ICIKLSN+ICIyLjBcbiIKLSN+ICJkZSAnbWF0Y2hpbmcnIHZlcnMgJ3NpbXBsZScuIFBvdXIgc3VwcHJpbWVyIGNlIG1lc3NhZ2UgZXQgbWFpbnRlbmlyXG4iCi0jfiAibGUgY29tcG9ydGVtZW50IGFjdHVlbCBhcHLDqHMgbGEgbW9kaWZpY2F0aW9uIGRlIGxhIHZhbGV1ciBkZSBkw6lmYXV0LCAiCi0jfiAidXRpbGlzZXogOlxuIgotI34gIlxuIgotI34gIiAgZ2l0IGNvbmZpZyAtLWdsb2JhbCBwdXNoLmRlZmF1bHQgbWF0Y2hpbmdcbiIKLSN+ICJcbiIKLSN+ICJQb3VyIHN1cHByaW1lciBjZSBtZXNzYWdlIGV0IGFkb3B0ZXIgbGUgbm91dmVhdSBjb21wb3J0ZW1lbnQgbWFpbnRlbmFudCwgIgotI34gInV0aWxpc2V6IDpcbiIKLSN+ICJcbiIKLSN+ICIgIGdpdCBjb25maWcgLS1nbG9iYWwgcHVzaC5kZWZhdWx0IHNpbXBsZVxuIgotI34gIlxuIgotI34gIlF1YW5kIHB1c2guZGVmYXVsdCB2YXVkcmEgJ21hdGNoaW5nJywgZ2l0IHBvdXNzZXJhIGxlcyBicmFuY2hlcyBsb2NhbGVzXG4iCi0jfiAic3VyIGxlcyBicmFuY2hlcyBkaXN0YW50ZXMgcXVpIGV4aXN0ZW50IGTDqWrDoCBhdmVjIGxlIG3Dqm1lIG5vbS5cbiIKLSN+ICJcbiIKLSN+ICJEZXB1aXMgR2l0IDIuMCwgR2l0IHV0aWxpc2UgcGFyIGTDqWZhdXQgbGUgY29tcG9ydGVtZW50IHBsdXMgY29uc2VydmF0aWYgIgotI34gIidzaW1wbGUnXG4iCi0jfiAicXVpIG5lIHBvdXNzZSBsYSBicmFuY2hlIGNvdXJhbnRlIHF1ZSB2ZXJzIGxhIGJyYW5jaGUgZGlzdGFudGUgIgotI34gImNvcnJlc3BvbmRhbnRlXG4iCi0jfiAicXVlICdnaXQgcHVsbCcgdXRpbGlzZSBwb3VyIG1ldHRyZSDDoCBqb3VyIGxhIGJyYW5jaGUgY291cmFudGUuXG4iCi0jfiAiIFxuIgotI34gIlZvaXIgJ2dpdCBoZWxwIGNvbmZpZycgZXQgY2hlcmNoZXIgJ3B1c2guZGVmYXVsdCcgcG91ciBwbHVzICIKLSN+ICJkJ2luZm9ybWF0aW9uLlxuIgotI34gIihsZSBtb2RlICdzaW1wbGUnIGEgw6l0w6kgaW50cm9kdWl0IGRhbnMgR2l0IDEuNy4xMS4gVXRpbGlzZXogbGUgbW9kZSAiCi0jfiAic2ltaWxhaXJlXG4iCi0jfiAiJ2N1cnJlbnQnIGF1IGxpZXUgZGUgJ3NpbXBsZScgc2kgdm91cyB1dGlsaXNleiBkZSB0ZW1wcyBlbiB0ZW1wcyAiCi0jfiAiZCdhbmNpZW5uZXMgdmVyc2lvbnMgZGUgR2l0KSIKLQotI34gbXNnaWQgImNoZWNrfG9uLWRlbWFuZHxubyIKLSN+IG1zZ3N0ciAiY2hlY2t8b24tZGVtYW5kfG5vIgotCi0jfiBtc2dpZCAiQ291bGQgbm90IGFwcGVuZCAnJXMnIgotI34gbXNnc3RyICJJbXBvc3NpYmxlIGQnYWpvdXRlciAnJXMnIgotCi0jfiBtc2dpZCAiTWlzc2luZyBhdXRob3I6ICVzIgotI34gbXNnc3RyICJBdXRldXIgbWFucXVhbnQgOiAlcyIKLQotI34gbXNnaWQgIlRlc3RpbmcgIgotI34gbXNnc3RyICJUZXN0IGVuIGNvdXJzICIKLQotI34gbXNnaWQgInVuYWJsZSB0byBsb29rIHVwIGN1cnJlbnQgdXNlciBpbiB0aGUgcGFzc3dkIGZpbGU6ICVzIgotI34gbXNnc3RyICIiCi0jfiAiaW1wb3NzaWJsZSBkZSByZWNoZXJjaGVyIGwndXRpbGlzYXRldXIgYWN0dWVsIGRhbnMgbGUgZmljaGllciBkZSBtb3RzIGRlICIKLSN+ICJwYXNzZSA6ICVzIgotCi0jfiBtc2dpZCAibm8gc3VjaCB1c2VyIgotI34gbXNnc3RyICJ1dGlsaXNhdGV1ciBpbmNvbm51IgotCi0jfiBtc2dpZCAiYnJhbmNoICclcycgZG9lcyBub3QgcG9pbnQgYXQgYSBjb21taXQiCi0jfiBtc2dzdHIgImxhIGJyYW5jaGUgJyVzJyBuZSBwb2ludGUgcGFzIHN1ciB1biBjb21taXQiCi0KLSN+IG1zZ2lkICJwcmludCBvbmx5IG1lcmdlZCBicmFuY2hlcyIKLSN+IG1zZ3N0ciAiYWZmaWNoZXIgc2V1bGVtZW50IGxlcyBicmFuY2hlcyBmdXNpb25uw6llcyIKLQotI34gbXNnaWQgIi0tZGlzc29jaWF0ZSBnaXZlbiwgYnV0IHRoZXJlIGlzIG5vIC0tcmVmZXJlbmNlIgotI34gbXNnc3RyICItLWRpc3NvY2lhdGUgZXN0IHNww6ljaWZpw6ksIG1haXMgLS1yZWZlcmVuY2UgZXN0IGFic2VudCIKLQotI34gbXNnaWQgInNob3cgdXNhZ2UiCi0jfiBtc2dzdHIgImFmZmljaGVyIGwndXNhZ2UiCi0KLSN+IG1zZ2lkICJpbnNhbmVseSBsb25nIHRlbXBsYXRlIG5hbWUgJXMiCi0jfiBtc2dzdHIgIm5vbSBkZSBtb2TDqGxlIGTDqW1lbnRpZWxsZW1lbnQgbG9uZyAlcyIKLQotI34gbXNnaWQgImluc2FuZWx5IGxvbmcgc3ltbGluayAlcyIKLSN+IG1zZ3N0ciAibGllbiBzeW1ib2xpcXVlIGTDqW1lbnRpZWxsZW1lbnQgbG9uZyAlcyIKLQotI34gbXNnaWQgImluc2FuZWx5IGxvbmcgdGVtcGxhdGUgcGF0aCAlcyIKLSN+IG1zZ3N0ciAiY2hlbWluIGRlIG1vZMOobGUgJXMgZMOpbWVudGllbGxlbWVudCBsb25nIgotCi0jfiBtc2dpZCAidW5zdXBwb3J0ZWQgc29ydCBzcGVjaWZpY2F0aW9uICclcyciCi0jfiBtc2dzdHIgInNww6ljaWZpY2F0aW9uIGRlIHRyaSBub24gc3VwcG9ydMOpZSAnJXMnIgotCi0jfiBtc2dpZCAidW5zdXBwb3J0ZWQgc29ydCBzcGVjaWZpY2F0aW9uICclcycgaW4gdmFyaWFibGUgJyVzJyIKLSN+IG1zZ3N0ciAic3DDqWNpZmljYXRpb24gZGUgdHJpIG5vbiBzdXBwb3J0w6llICclcycgZGFucyBsZSB2YXJpYWJsZSAnJXMnIgotCi0jfiBtc2dpZCAic3dpdGNoICdwb2ludHMtYXQnIHJlcXVpcmVzIGFuIG9iamVjdCIKLSN+IG1zZ3N0ciAibGUgY29tbXV0YXRldXIgJ3BvaW50cy1hdCcgYSBiZXNvaW4gZCd1biBvYmpldCIKLQotI34gbXNnaWQgIi0tc29ydCBhbmQgLW4gYXJlIGluY29tcGF0aWJsZSIKLSN+IG1zZ3N0ciAiLS1zb3J0IGV0IC1uIHNvbnQgaW5jb21wYXRpYmxlcyIKLQotI34gbXNnaWQgIkdpdGRpciAnJGEnIGlzIHBhcnQgb2YgdGhlIHN1Ym1vZHVsZSBwYXRoICckYicgb3IgdmljZSB2ZXJzYSIKLSN+IG1zZ3N0ciAiIgotI34gIkxlIHLDqXBlcnRvaXJlIEdpdCAnJGEnIGZhaXQgcGFydGllIGR1IGNoZW1pbiBkZSBzb3VzLW1vZHVsZSAnJGInIG91IHZpY2UtIgotI34gInZlcnNhIgotCi0jfiBtc2dpZCAiZmFsc2V8dHJ1ZXxwcmVzZXJ2ZSIKLSN+IG1zZ3N0ciAiZmFsc2V8dHJ1ZXxwcmVzZXJ2ZSIKLQotI34gbXNnaWQgIkJVRzogcmVvcGVuIGEgbG9ja2ZpbGUgdGhhdCBpcyBzdGlsbCBvcGVuIgotI34gbXNnc3RyICJCVUc6IHLDqW91dmVydHVyZSBkJ3VuIGZpY2hpZXIgdmVycm91IGTDqWrDoCBvdXZlcnQiCi0KLSN+IG1zZ2lkICJCVUc6IHJlb3BlbiBhIGxvY2tmaWxlIHRoYXQgaGFzIGJlZW4gY29tbWl0dGVkIgotI34gbXNnc3RyICJCVUc6IHLDqW91dmVydHVyZSBkJ3VuIGZpY2hpZXIgdmVycm91IHZhbGlkw6kiCi0KLSN+IG1zZ2lkICJvcHRpb24gJXMgZG9lcyBub3QgYWNjZXB0IG5lZ2F0aXZlIGZvcm0iCi0jfiBtc2dzdHIgImwnb3B0aW9uICVzIG4nYWNjZXB0ZSBwYXMgZGUgdmFsZXVyIG7DqWdhdGl2ZSIKLQotI34gbXNnaWQgInVuYWJsZSB0byBwYXJzZSB2YWx1ZSAnJXMnIGZvciBvcHRpb24gJXMiCi0jfiBtc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBsYSB2YWxldXIgJyVzJyBwb3VyIGwnb3B0aW9uICVzIgotCi0jfiBtc2dpZCAiLWIgYW5kIC1CIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCi0jfiBtc2dzdHIgIi1iIGV0IC1CIHNvbnQgbXV0dWVsbGVtZW50IGV4Y2x1c2lmcyIKLQotI34gbXNnaWQgIiIKLSN+ICJXaGVuIHlvdSBoYXZlIHJlc29sdmVkIHRoaXMgcHJvYmxlbSwgcnVuIFwiJGNtZGxpbmUgLS1jb250aW51ZVwiLlxuIgotI34gIklmIHlvdSBwcmVmZXIgdG8gc2tpcCB0aGlzIHBhdGNoLCBydW4gXCIkY21kbGluZSAtLXNraXBcIiBpbnN0ZWFkLlxuIgotI34gIlRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgc3RvcCBwYXRjaGluZywgcnVuIFwiJGNtZGxpbmUgLS1hYm9ydCIKLSN+ICJcIi4iCi0jfiBtc2dzdHIgIiIKLSN+ICJMb3JzcXVlIHZvdXMgYXVyZXogcsOpc29sdSBjZSBwcm9ibMOobWUsIGxhbmNleiBcIiRjbWRsaW5lIC0tY29udGludWVcIi5cbiIKLSN+ICJTaSB2b3VzIHByw6lmw6lyZXogc2F1dGVyIGNlIHBhdGNoLCBsYW5jZXogXCIkY21kbGluZSAtLXNraXBcIiDDoCBsYSBwbGFjZS5cbiIKLSN+ICJQb3VyIHJlc3RhdXJlciBsYSBicmFuY2hlIGQnb3JpZ2luZSBldCBzdG9wcGVyIGxlIHBhdGNoYWdlLCBsYW5jZXogIgotI34gIlwiJGNtZGxpbmUgLS1hYm9ydFwiLiIKLQotI34gbXNnaWQgIlBhdGNoIGZvcm1hdCAkcGF0Y2hfZm9ybWF0IGlzIG5vdCBzdXBwb3J0ZWQuIgotI34gbXNnc3RyICJMZSBmb3JtYXQgZGUgcGF0Y2ggJHBhdGNoX2Zvcm1hdCBuJ2VzdCBwYXMgc3VwcG9ydMOpLiIKLQotI34gbXNnaWQgIlBsZWFzZSBtYWtlIHVwIHlvdXIgbWluZC4gLS1za2lwIG9yIC0tYWJvcnQ/IgotI34gbXNnc3RyICJEw6ljaWRlei12b3VzLiAtLXNraXAgb3UgLS1hYm9ydCA/IgotCi0jfiBtc2dpZCAiIgotI34gIlBhdGNoIGlzIGVtcHR5LiAgV2FzIGl0IHNwbGl0IHdyb25nP1xuIgotI34gIklmIHlvdSB3b3VsZCBwcmVmZXIgdG8gc2tpcCB0aGlzIHBhdGNoLCBpbnN0ZWFkIHJ1biBcIiRjbWRsaW5lIC0tc2tpcFwiLlxuIgotI34gIlRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgc3RvcCBwYXRjaGluZyBydW4gXCIkY21kbGluZSAtLWFib3J0XCIuIgotI34gbXNnc3RyICIiCi0jfiAiTGUgcGF0Y2ggZXN0IHZpZGUuICDDiXRhaXQtaWwgbWFsIGTDqWNvdXDDqSA/XG4iCi0jfiAiU2kgdm91cyBwcsOpZsOpcmV6IHNhdXRlciBjZSBwYXRjaCwgbGFuY2V6IHBsdXTDtHQgXCIkY21kbGluZSAtLXNraXBcIi5cbiIKLSN+ICJQb3VyIHJlc3RhdXJlciBsYSBicmFuY2hlIGQnb3JpZ2luZSBldCBzdG9wcGVyIGxlIHBhdGNoYWdlLCBsYW5jZXogIgotI34gIlwiJGNtZGxpbmUgLS1hYm9ydFwiLiIKLQotI34gbXNnaWQgIlBhdGNoIGRvZXMgbm90IGhhdmUgYSB2YWxpZCBjb3VycmllbCBhZGRyZXNzLiIKLSN+IG1zZ3N0ciAiTGUgcGF0Y2ggbidhIHBhcyBkJ2FkcmVzc2UgY291cnJpZWwgdmFsaWRlLiIKLQotI34gbXNnaWQgIkFwcGx5aW5nOiAkRklSU1RMSU5FIgotI34gbXNnc3RyICJBcHBsaWNhdGlvbiA6ICRGSVJTVExJTkUiCi0KLSN+IG1zZ2lkICJQYXRjaCBmYWlsZWQgYXQgJG1zZ251bSAkRklSU1RMSU5FIgotI34gbXNnc3RyICJMZSBwYXRjaCBhIMOpY2hvdcOpIMOgICRtc2dudW0gJEZJUlNUTElORSIKLQotI34gbXNnaWQgIiIKLSN+ICJQdWxsIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLlxuIgotI34gIlBsZWFzZSwgZml4IHRoZW0gdXAgaW4gdGhlIHdvcmsgdHJlZSwgYW5kIHRoZW4gdXNlICdnaXQgYWRkL3JtIDxmaWxlPidcbiIKLSN+ICJhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24gYW5kIG1ha2UgYSBjb21taXQuIgotI34gbXNnc3RyICIiCi0jfiAiTGUgdGlyYWdlIG4nZXN0IHBhcyBwb3NzaWJsZSBjYXIgdm91cyBhdmV6IGRlcyBmaWNoaWVycyBub24gZnVzaW9ubsOpcy5cbiIKLSN+ICJWZXVpbGxleiBsZXMgY29ycmlnZXIgZGFucyB2b3RyZSBjb3BpZSBkZSB0cmF2YWlsLCB1dGlsaXNlciBhbG9ycyAnZ2l0ICIKLSN+ICJhZGQvcm0gPGZpY2hpZXI+J1xuIgotI34gInNpIG7DqWNlc3NhaXJlIHBvdXIgbWFycXVlciBjb21tZSByw6lzb2x1IGV0IHZhbGlkZXIuIgotCi0jfiBtc2dpZCAibm8gYnJhbmNoIHNwZWNpZmllZCIKLSN+IG1zZ3N0ciAiYXVjdW5lIGJyYW5jaGUgc3DDqWNpZmnDqWUiCi0KLSN+IG1zZ2lkICJwcnVuZSAuZ2l0L3dvcmt0cmVlcyIKLSN+IG1zZ3N0ciAiw6lsaW1pbmVyIC5naXQvd29ya3RyZWVzIgotCi0jfiBtc2dpZCAiVGhlIG1vc3QgY29tbW9ubHkgdXNlZCBnaXQgY29tbWFuZHMgYXJlOiIKLSN+IG1zZ3N0ciAiTGVzIGNvbW1hbmRlcyBnaXQgbGVzIHBsdXMgdXRpbGlzw6llcyBzb250IDoiCi0KLSN+IG1zZ2lkICJObyBzdWNoIGJyYW5jaDogJyVzJyIKLSN+IG1zZ3N0ciAiQnJhbmNoZSBpbmNvbm51ZSA6ICclcyciCi0KLSN+IG1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIGdpdCBsaW5rICVzIgotI34gbXNnc3RyICJJbXBvc3NpYmxlIGRlIGNyw6llciBsZSBsaWVuIGdpdCAlcyIKLQotI34gbXNnaWQgIkludmFsaWQgZ2MucHJ1bmVleHBpcmU6ICclcyciCi0jfiBtc2dzdHIgImdjLnBydW5lZXhwaXJlIGludmFsaWRlwqA6ICclcyciCi0KLSN+IG1zZ2lkICIoZGV0YWNoZWQgZnJvbSAlcykiCi0jfiBtc2dzdHIgIihkw6l0YWNow6kgZGUgJXMpIgotCi0jfiBtc2dpZCAiTm8gZXhpc3RpbmcgYXV0aG9yIGZvdW5kIHdpdGggJyVzJyIKLSN+IG1zZ3N0ciAiQXVjdW4gYXV0ZXVyIGV4aXN0YW50IHRyb3V2w6kgYXZlYyAnJXMnIgotCi0jfiBtc2dpZCAic2VhcmNoIGFsc28gaW4gaWdub3JlZCBmaWxlcyIKLSN+IG1zZ3N0ciAicmVjaGVyY2hlciBhdXNzaSBkYW5zIGxlcyBmaWNoaWVycyBpZ25vcsOpcyIKLQotI34gbXNnaWQgImdpdCByZW1vdGUgc2V0LWhlYWQgPG5hbWU+ICgtYSB8IC0tYXV0byB8IC1kIHwgLS1kZWxldGUgfDxicmFuY2g+KSIKLSN+IG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtaGVhZCA8bm9tPiAoLWEgfCAtLWF1dG8gfCAtZCB8IC0tZGVsZXRlIHw8YnJhbmNoZT4pIgotCi0jfiBtc2dpZCAibm8gZmlsZXMgYWRkZWQiCi0jfiBtc2dzdHIgImF1Y3VuIGZpY2hpZXIgYWpvdXTDqSIKLQotI34gbXNnaWQgInNsb3QiCi0jfiBtc2dzdHIgImVtcGxhY2VtZW50IgotCi0jfiBtc2dpZCAiRmFpbGVkIHRvIGxvY2sgcmVmIGZvciB1cGRhdGUiCi0jfiBtc2dzdHIgIsOJY2hlYyBkdSB2ZXJyb3VpbGxhZ2UgZGUgbGEgcsOpZsOpcmVuY2UgcG91ciBtaXNlIMOgIGpvdXIiCi0KLSN+IG1zZ2lkICJGYWlsZWQgdG8gd3JpdGUgcmVmIgotI34gbXNnc3RyICLDiWNoZWMgZGUgbCfDqWNyaXR1cmUgZGUgbGEgcsOpZsOpcmVuY2UiCi0KLSN+IG1zZ2lkICJGYWlsZWQgdG8gbG9jayBIRUFEIGR1cmluZyBmYXN0X2ZvcndhcmRfdG8iCi0jfiBtc2dzdHIgIsOJY2hlYyBkdSB2ZXJyb3VpbGxhZ2UgZGUgSEVBRCBwZW5kYW50IGwnYXZhbmNlIHJhcGlkZSIKLQotI34gbXNnaWQgImNhbm5vdCBsb2NrIEhFQUQgcmVmIgotI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIHZlcnJvdWlsbGVyIGxhIHLDqWbDqXJlbmNlIEhFQUQiCi0KLSN+IG1zZ2lkICJjYW5ub3QgdXBkYXRlIEhFQUQgcmVmIgotI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIG1ldHRyZSDDoCBqb3VyIGxhIHLDqWbDqXJlbmNlIEhFQUQiCi0KLSN+IG1zZ2lkICIlczogY2Fubm90IGxvY2sgdGhlIHJlZiIKLSN+IG1zZ3N0ciAiJXMgOiBpbXBvc3NpYmxlIGRlIHZlcnJvdWlsbGVyIGxhIHLDqWbDqXJlbmNlIgotCi0jfiBtc2dpZCAiJXM6IGNhbm5vdCB1cGRhdGUgdGhlIHJlZiIKLSN+IG1zZ3N0ciAiJXMgOiBpbXBvc3NpYmxlIGRlIG1ldHRyZSDDoCBqb3VyIGxhIHLDqWbDqXJlbmNlIgotCi0jfiBtc2dpZCAiY29tbWl0IGhhcyBlbXB0eSBtZXNzYWdlIgotI34gbXNnc3RyICJsZSBjb21taXQgYSB1biBtZXNzYWdlIHZpZGUiCi0KLSN+IG1zZ2lkICJGYWlsZWQgdG8gY2hkaXI6ICVzIgotI34gbXNnc3RyICLDiWNoZWMgZGUgY2hkaXI6ICVzIgotCi0jfiBtc2dpZCAiVHJhY2tpbmcgbm90IHNldCB1cDogbmFtZSB0b28gbG9uZzogJXMiCi0jfiBtc2dzdHIgIlN1aXZpIGRlIGJyYW5jaGUgbm9uIHBhcmFtw6l0csOpIDogbGUgbm9tIGVzdCB0cm9wIGxvbmcgOiAlcyIKLQotI34gbXNnaWQgImNvdWxkIG5vdCBmaW5kIC5naXRtb2R1bGVzIGluIGluZGV4IgotI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIHRyb3V2ZXIgLmdpdG1vZHVsZXMgZGFucyBsJ2luZGV4IgotCi0jfiBtc2dpZCAicmVhZGluZyB1cGRhdGVkIC5naXRtb2R1bGVzIGZhaWxlZCIKLSN+IG1zZ3N0ciAiw6ljaGVjIGRlIGxhIGxlY3R1cmUgZHUgLmdpdG1vZHVsZXMgbWlzIMOgIGpvdXIiCi0KLSN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCB1cGRhdGVkIC5naXRtb2R1bGVzIgotI34gbXNnc3RyICLDqWNoZWMgZGUgc3RhdCBkdSAuZ2l0bW9kdWxlcyBtaXMgw6Agam91ciIKLQotI34gbXNnaWQgInVuYWJsZSB0byByZW1vdmUgLmdpdG1vZHVsZXMgZnJvbSBpbmRleCIKLSN+IG1zZ3N0ciAic3VwcHJlc3Npb24gZHUgLmdpdG1vZHVsZXMgZGFucyBsJ2luZGV4IGltcG9zc2libGUiCi0KLSN+IG1zZ2lkICJhZGRpbmcgdXBkYXRlZCAuZ2l0bW9kdWxlcyBmYWlsZWQiCi0jfiBtc2dzdHIgIsOpY2hlYyBkZSBsJ2Fqb3V0IGR1IC5naXRtb2R1bGVzIG1pcyDDoCBqb3VyIgotCi0jfiBtc2dpZCAiYnVnIgotI34gbXNnc3RyICJib2d1ZSIKLQotI34gbXNnaWQgIiwgYmVoaW5kICIKLSN+IG1zZ3N0ciAiLCBkZXJyacOocmUgIgotCi0jfiBtc2dpZCAiIgotI34gIlRoZSBiZWhhdmlvciBvZiAnZ2l0IGFkZCAlcyAob3IgJXMpJyB3aXRoIG5vIHBhdGggYXJndW1lbnQgZnJvbSBhXG4iCi0jfiAic3ViZGlyZWN0b3J5IG9mIHRoZSB0cmVlIHdpbGwgY2hhbmdlIGluIEdpdCAyLjAgYW5kIHNob3VsZCBub3QgYmUgdXNlZCAiCi0jfiAiYW55bW9yZS5cbiIKLSN+ICJUbyBhZGQgY29udGVudCBmb3IgdGhlIHdob2xlIHRyZWUsIHJ1bjpcbiIKLSN+ICJcbiIKLSN+ICIgIGdpdCBhZGQgJXMgOi9cbiIKLSN+ICIgIChvciBnaXQgYWRkICVzIDovKVxuIgotI34gIlxuIgotI34gIlRvIHJlc3RyaWN0IHRoZSBjb21tYW5kIHRvIHRoZSBjdXJyZW50IGRpcmVjdG9yeSwgcnVuOlxuIgotI34gIlxuIgotI34gIiAgZ2l0IGFkZCAlcyAuXG4iCi0jfiAiICAob3IgZ2l0IGFkZCAlcyAuKVxuIgotI34gIlxuIgotI34gIldpdGggdGhlIGN1cnJlbnQgR2l0IHZlcnNpb24sIHRoZSBjb21tYW5kIGlzIHJlc3RyaWN0ZWQgdG8gdGhlIGN1cnJlbnQgIgotI34gImRpcmVjdG9yeS5cbiIKLSN+IG1zZ3N0ciAiIgotI34gIkxlIGNvbXBvcnRlbWVudCBkZSAnZ2l0IGFkZCAlcyAob3UgJXMpJyBzYW5zIGFyZ3VtZW50IGRlIGNoZW1pbiBkZXB1aXMgIgotI34gInVuXG4iCi0jfiAic291cy1yw6lwZXJ0b2lyZSBkdSBwcm9qZXQgdmEgY2hhbmdlciBkYW5zIEdpdCAyLjAgZXQgbmUgZG9pdCBwbHVzIMOqdHJlICIKLSN+ICJ1dGlsaXPDqS5cbiIKLSN+ICJQb3VyIGFqb3V0ZXIgbGUgY29udGVudSBkZSB0b3V0ZSBsJ2FyYm9yZXNjZW5jZSwgbGFuY2V6IDpcbiIKLSN+ICJcbiIKLSN+ICIgIGdpdCBhZGQgJXMgOi9cbiIKLSN+ICIgIChvdSBnaXQgYWRkICVzIDovKVxuIgotI34gIlxuIgotI34gIlBvdXIgcmVzdHJlaW5kcmUgbGEgY29tbWFuZGUgYXUgcsOpcGVydG9pcmUgY291cmFudCwgbGFuY2V6IDpcbiIKLSN+ICJcbiIKLSN+ICIgIGdpdCBhZGQgJXMgLlxuIgotI34gIiAgKG91IGdpdCBhZGQgJXMgLilcbiIKLSN+ICJcbiIKLSN+ICJBdmVjIGxhIHZlcnNpb24gYWN0dWVsbGUgZGUgR2l0LCBsYSBjb21tYW5kZSBlc3QgcmVzdHJlaW50ZSBhdSByw6lwZXJ0b2lyZSAiCi0jfiAiY291cmFudC5cbiIKLQotI34gbXNnaWQgIiIKLSN+ICJZb3UgcmFuICdnaXQgYWRkJyB3aXRoIG5laXRoZXIgJy1BICgtLWFsbCknIG9yICctLWlnbm9yZS1yZW1vdmFsJyxcbiIKLSN+ICJ3aG9zZSBiZWhhdmlvdXIgd2lsbCBjaGFuZ2UgaW4gR2l0IDIuMCB3aXRoIHJlc3BlY3QgdG8gcGF0aHMgeW91ICIKLSN+ICJyZW1vdmVkLlxuIgotI34gIlBhdGhzIGxpa2UgJyVzJyB0aGF0IGFyZVxuIgotI34gInJlbW92ZWQgZnJvbSB5b3VyIHdvcmtpbmcgdHJlZSBhcmUgaWdub3JlZCB3aXRoIHRoaXMgdmVyc2lvbiBvZiBHaXQuXG4iCi0jfiAiXG4iCi0jfiAiKiAnZ2l0IGFkZCAtLWlnbm9yZS1yZW1vdmFsIDxwYXRoc3BlYz4nLCB3aGljaCBpcyB0aGUgY3VycmVudCBkZWZhdWx0LFxuIgotI34gIiAgaWdub3JlcyBwYXRocyB5b3UgcmVtb3ZlZCBmcm9tIHlvdXIgd29ya2luZyB0cmVlLlxuIgotI34gIlxuIgotI34gIiogJ2dpdCBhZGQgLS1hbGwgPHBhdGhzcGVjPicgd2lsbCBsZXQgeW91IGFsc28gcmVjb3JkIHRoZSByZW1vdmFscy5cbiIKLSN+ICJcbiIKLSN+ICJSdW4gJ2dpdCBzdGF0dXMnIHRvIGNoZWNrIHRoZSBwYXRocyB5b3UgcmVtb3ZlZCBmcm9tIHlvdXIgd29ya2luZyB0cmVlLlxuIgotI34gbXNnc3RyICIiCi0jfiAiVm91cyBhdmV6IGxhbmPDqSAnZ2l0IGFkZCcgc2FucyAnLUEgKC0tYWxsKScgbmkgJy0taWdub3JlLXJlbW92YWwnLFxuIgotI34gImRvbnQgbGUgY29tcG9ydGVtZW50IHZhIGNoYW5nZXIgZGFucyBHaXQgMi4wIGF2ZWMgbGUgcmVzcGVjdCBkZXMgY2hlbWlucyAiCi0jfiAicXVlIHZvdXMgc3VwcHJpbWV6LlxuIgotI34gIkxlcyBjaGVtaW5zIHRlbHMgcXVlICclcycgcXVpIG9udCDDqXTDqVxuIgotI34gInJldGlyw6lzIGRlIHZvdHJlIGNvcGllIGRlIHRyYXZhaWwgc29udCBpZ25vcsOpcyBhdmVjIGNldHRlIHZlcnNpb24gZGUgIgotI34gIkdpdC5cbiIKLSN+ICJcbiIKLSN+ICIqICdnaXQgYWRkIC0taWdub3JlLXJlbW92YWwgPGNoZW1pbj4nLCBxdWkgZXN0IGwnb3B0aW9uIHBhciBkw6lmYXV0ICIKLSN+ICJhY3R1ZWxsZSxcbiIKLSN+ICIgIGlnbm9yZSBsZXMgY2hlbWlucyBxdWUgdm91cyBhdmV6IHN1cHByaW3DqXMgZGUgdm90cmUgY29waWUgZGUgdHJhdmFpbC5cbiIKLSN+ICJcbiIKLSN+ICIqICdnaXQgYWRkIC0tYWxsIDxjaGVtaW4+JyBwZXJtZXQgZCdlbnJlZ2lzdHJlciBhdXNzaSBsZXMgc3VwcHJlc3Npb25zLlxuIgotI34gIlxuIgotI34gIkxhbmNleiAnZ2l0IHN0YXR1cycgcG91ciB2w6lyaWZpZXIgbGVzIGNoZW1pbnMgcXVlIHZvdXMgYXZleiBzdXBwcmltw6lzIGRlICIKLSN+ICJ2b3RyZSBjb3BpZSBkZSB0cmF2YWlsLlxuIgotCi0jfiBtc2dpZCAia2V5IGlkIgotI34gbXNnc3RyICJpZGVudGlmaWFudCBkZSBjbMOpIgotCi0jfiBtc2dpZCAiIgotI34gIkF1dG8gcGFja2luZyB0aGUgcmVwb3NpdG9yeSBmb3Igb3B0aW11bSBwZXJmb3JtYW5jZS4gWW91IG1heSBhbHNvXG4iCi0jfiAicnVuIFwiZ2l0IGdjXCIgbWFudWFsbHkuIFNlZSBcImdpdCBoZWxwIGdjXCIgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4iCi0jfiBtc2dzdHIgIiIKLSN+ICJDb21wcmVzc2lvbiBhdXRvbWF0aXF1ZSBkdSBkw6lww7R0IHBvdXIgdW5lIHBlcmZvcm1hbmNlIG9wdGltdW0uIFZvdXMgIgotI34gInBvdXZleiBhdXNzaVxuIgotI34gImxhbmNlciBcImdpdCBnY1wiIG1hbnVlbGxlbWVudC4gVm9pciBcImdpdCBoZWxwIGdjXCIgcG91ciBwbHVzICIKLSN+ICJkJ2luZm9ybWF0aW9uLlxuIgotCi0jfiBtc2dpZCAiIgotI34gIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIGEgcHVzaGVkIGJyYW5jaCB0aXAgaXMgYmVoaW5kIGl0cyByZW1vdGVcbiIKLSN+ICJjb3VudGVycGFydC4gSWYgeW91IGRpZCBub3QgaW50ZW5kIHRvIHB1c2ggdGhhdCBicmFuY2gsIHlvdSBtYXkgd2FudCB0b1xuIgotI34gInNwZWNpZnkgYnJhbmNoZXMgdG8gcHVzaCBvciBzZXQgdGhlICdwdXNoLmRlZmF1bHQnIGNvbmZpZ3VyYXRpb24gIgotI34gInZhcmlhYmxlXG4iCi0jfiAidG8gJ3NpbXBsZScsICdjdXJyZW50JyBvciAndXBzdHJlYW0nIHRvIHB1c2ggb25seSB0aGUgY3VycmVudCBicmFuY2guIgotI34gbXNnc3RyICIiCi0jfiAiTGVzIG1pc2VzIMOgIGpvdXIgb250IMOpdMOpIHJlamV0w6llcyBjYXIgbGEgcG9pbnRlIGRlIGxhIGJyYW5jaGUgcG91c3PDqWUgZXN0ICIKLSN+ICJkZXJyacOocmVcbiIKLSN+ICJzb24gaG9tb2xvZ3VlIGRpc3RhbnQuIFNpIHZvdXMgbmUgdm91bGlleiBwYXMgcG91c3NlciBjZXR0ZSBicmFuY2hlLCB2b3VzICIKLSN+ICJwb3VycmllelxuIgotI34gInZvdWxvaXIgc3DDqWNpZmllciBsZXMgYnJhbmNoZXMgw6AgcG91c3NlciBvdSBkw6lmaW5pciBsYSB2YXJpYWJsZSBkZSAiCi0jfiAiY29uZmlndXJhdGlvblxuIgotI34gIidwdXNoLmRlZmF1bHQnIMOgICdzaW1wbGUnLCAnY3VycmVudCcgb3UgJ3Vwc3RyZWFtJyBwb3VyIHBvdXNzZXIgc2V1bGVtZW50ICIKLSN+ICJsYSBicmFuY2hlIGNvdXJhbnRlLiIKLQotI34gbXNnaWQgImRlbGV0ZWQ6ICAgICVzIgotI34gbXNnc3RyICJzdXBwcmltw6kgOiAgJXMiCi0KLSN+IG1zZ2lkICJtb2RpZmllZDogICAlcyIKLSN+IG1zZ3N0ciAibW9kaWZpw6kgOiAgICVzIgotCi0jfiBtc2dpZCAicmVuYW1lZDogICAgJXMgLT4gJXMiCi0jfiBtc2dzdHIgInJlbm9tbcOpIDogICAlcyAtPiAlcyIKLQotI34gbXNnaWQgInVubWVyZ2VkOiAgICVzIgotI34gbXNnc3RyICJub24gZnVzLiA6ICAlcyIKLQotI34gbXNnaWQgImlucHV0IHBhdGhzIGFyZSB0ZXJtaW5hdGVkIGJ5IGEgbnVsbCBjaGFyYWN0ZXIiCi0jfiBtc2dzdHIgImxlcyBjaGVtaW5zIGVuIGVudHLDqWUgc29udCB0ZXJtaW7DqXMgcGFyIGxlIGNhcmFjdMOocmUgbnVsIgotCi0jfiBtc2dpZCAiIgotI34gIkFib3J0aW5nLiBDb25zaWRlciB1c2luZyBlaXRoZXIgdGhlIC0tZm9yY2Ugb3IgLS1pbmNsdWRlLXVudHJhY2tlZCBvcHRpb24uIgotI34gbXNnc3RyICJBYmFuZG9uLiBVdGlsaXNleiBsJ29wdGlvbiAtLWZvcmNlIG91IC0taW5jbHVkZS11bnRyYWNrZWQuIgpkaWZmIC0tZ2l0IGEvcG8vZ2l0LnBvdCBiL3BvL2dpdC5wb3QKaW5kZXggMTMxM2QyMC4uN2RkMmUyYiAxMDA2NDQKLS0tIGEvcG8vZ2l0LnBvdAorKysgYi9wby9naXQucG90CkBAIC04LDcgKzgsNyBAQAogbXNnc3RyICIiCiAiUHJvamVjdC1JZC1WZXJzaW9uOiBQQUNLQUdFIFZFUlNJT05cbiIKICJSZXBvcnQtTXNnaWQtQnVncy1UbzogR2l0IE1haWxpbmcgTGlzdCA8Z2l0QHZnZXIua2VybmVsLm9yZz5cbiIKLSJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxOC0xMi0wMiAxMDo1NSswODAwXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMjAtMDMtMTEgMTU6MjYrMDgwMFxuIgogIlBPLVJldmlzaW9uLURhdGU6IFlFQVItTU8tREEgSE86TUkrWk9ORVxuIgogIkxhc3QtVHJhbnNsYXRvcjogRlVMTCBOQU1FIDxFTUFJTEBBRERSRVNTPlxuIgogIkxhbmd1YWdlLVRlYW06IExBTkdVQUdFIDxMTEBsaS5vcmc+XG4iCkBAIC0xOCwxNjAgKzE4LDc3MSBAQAogIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKICJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPUlOVEVHRVI7IHBsdXJhbD1FWFBSRVNTSU9OO1xuIgogCi0jOiBhZHZpY2UuYzo5OQorIzogYWRkLWludGVyYWN0aXZlLmM6MzY4CisjLCBjLWZvcm1hdAorbXNnaWQgIkh1aCAoJXMpPyIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo1MjEgYWRkLWludGVyYWN0aXZlLmM6ODIyIHNlcXVlbmNlci5jOjMxMjQKKyM6IHNlcXVlbmNlci5jOjM1NjIgYnVpbHRpbi9yZWJhc2UuYzo4NzUgYnVpbHRpbi9yZWJhc2UuYzoxNjg3CisjOiBidWlsdGluL3JlYmFzZS5jOjIwODYgYnVpbHRpbi9yZWJhc2UuYzoyMTMwCittc2dpZCAiY291bGQgbm90IHJlYWQgaW5kZXgiCittc2dzdHIgIiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NTc2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjY5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI5NAorbXNnaWQgImJpbmFyeSIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2MzQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyNzgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzMyCittc2dpZCAibm90aGluZyIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2MzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMTQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzI5Cittc2dpZCAidW5jaGFuZ2VkIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY3MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY0MworbXNnaWQgIlVwZGF0ZSIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2ODkgYWRkLWludGVyYWN0aXZlLmM6ODc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGFnZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY5NSBhZGQtaW50ZXJhY3RpdmUuYzo4ODQgc2VxdWVuY2VyLmM6MzMxNworIzogYnVpbHRpbi9yZWJhc2UuYzo4OTkKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njk4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjI4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJ1cGRhdGVkICVkIHBhdGhcbiIKK21zZ2lkX3BsdXJhbCAidXBkYXRlZCAlZCBwYXRoc1xuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NzE2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Njc4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJub3RlOiAlcyBpcyB1bnRyYWNrZWQgbm93LlxuIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjcyMSBhcHBseS5jOjQxMTAgYnVpbHRpbi9jaGVja291dC5jOjI4MQorIzogYnVpbHRpbi9yZXNldC5jOjE0NAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWtlX2NhY2hlX2VudHJ5IGZhaWxlZCBmb3IgcGF0aCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjc1MSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY1NQorbXNnaWQgIlJldmVydCIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3NjcKK21zZ2lkICJDb3VsZCBub3QgcGFyc2UgSEVBRF57dHJlZX0iCittc2dzdHIgIiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODA1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjMxCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJyZXZlcnRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInJldmVydGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4NTYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gdW50cmFja2VkIGZpbGVzLlxuIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjg2MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY4OQorbXNnaWQgIkFkZCB1bnRyYWNrZWQiCittc2dzdHIgIiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODg3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjI1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJhZGRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgImFkZGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgdW5tZXJnZWQ6ICVzIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkyOSBhZGQtcGF0Y2guYzoxNjc1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2NgorIywgYy1mb3JtYXQKK21zZ2lkICJPbmx5IGJpbmFyeSBmaWxlcyBjaGFuZ2VkLlxuIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkzMSBhZGQtcGF0Y2guYzoxNjczIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2OAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBjaGFuZ2VzLlxuIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkzNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNzYKK21zZ2lkICJQYXRjaCB1cGRhdGUiCittc2dzdHIgIiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTc0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1NAorbXNnaWQgIlJldmlldyBkaWZmIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDIKK21zZ2lkICJzaG93IHBhdGhzIHdpdGggY2hhbmdlcyIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA0Cittc2dpZCAiYWRkIHdvcmtpbmcgdHJlZSBzdGF0ZSB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDYKK21zZ2lkICJyZXZlcnQgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIGJhY2sgdG8gdGhlIEhFQUQgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA4Cittc2dpZCAicGljayBodW5rcyBhbmQgdXBkYXRlIHNlbGVjdGl2ZWx5IgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMTAKK21zZ2lkICJ2aWV3IGRpZmYgYmV0d2VlbiBIRUFEIGFuZCBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDEyCittc2dpZCAiYWRkIGNvbnRlbnRzIG9mIHVudHJhY2tlZCBmaWxlcyB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjAgYWRkLWludGVyYWN0aXZlLmM6MTA2OQorbXNnaWQgIlByb21wdCBoZWxwOiIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDIyCittc2dpZCAic2VsZWN0IGEgc2luZ2xlIGl0ZW0iCittc2dzdHIgIiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyNAorbXNnaWQgInNlbGVjdCBhIHJhbmdlIG9mIGl0ZW1zIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjYKK21zZ2lkICJzZWxlY3QgbXVsdGlwbGUgcmFuZ2VzIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjggYWRkLWludGVyYWN0aXZlLmM6MTA3MworbXNnaWQgInNlbGVjdCBpdGVtIGJhc2VkIG9uIHVuaXF1ZSBwcmVmaXgiCittc2dzdHIgIiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAzMAorbXNnaWQgInVuc2VsZWN0IHNwZWNpZmllZCBpdGVtcyIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDMyCittc2dpZCAiY2hvb3NlIGFsbCBpdGVtcyIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDM0Cittc2dpZCAiKGVtcHR5KSBmaW5pc2ggc2VsZWN0aW5nIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwNzEKK21zZ2lkICJzZWxlY3QgYSBudW1iZXJlZCBpdGVtIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwNzUKK21zZ2lkICIoZW1wdHkpIHNlbGVjdCBub3RoaW5nIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwODMgYnVpbHRpbi9jbGVhbi5jOjgyMiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4NTEKK21zZ2lkICIqKiogQ29tbWFuZHMgKioqIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwODQgYnVpbHRpbi9jbGVhbi5jOjgyMyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4NDgKK21zZ2lkICJXaGF0IG5vdyIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTM2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEzCittc2dpZCAic3RhZ2VkIgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJ1bnN0YWdlZCIKK21zZ3N0ciAiIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTM2IGFwcGx5LmM6NDk2NyBhcHBseS5jOjQ5NzAgYnVpbHRpbi9hbS5jOjIyNTEKKyM6IGJ1aWx0aW4vYW0uYzoyMjU0IGJ1aWx0aW4vY2xvbmUuYzoxMjMgYnVpbHRpbi9mZXRjaC5jOjE0NAorIzogYnVpbHRpbi9tZXJnZS5jOjI3NCBidWlsdGluL3B1bGwuYzoxODkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzOTQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzOTcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTAyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTA1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE0OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMworbXNnaWQgInBhdGgiCittc2dzdHIgIiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTE0MworbXNnaWQgImNvdWxkIG5vdCByZWZyZXNoIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExNTcgYnVpbHRpbi9jbGVhbi5jOjc4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnllLlxuIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjMzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQyOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MzQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI5CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzozNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzozNworbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJzdGFnaW5nLiIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzo0MAorbXNnaWQgIiIKKyJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHN0YWdlIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjU0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzMworIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3Rhc2ggbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6NTUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzo1NiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YXNoIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzo1OAorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJzdGFzaGluZy4iCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6NjEKK21zZ2lkICIiCisieSAtIHN0YXNoIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFzaCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFzaCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzo3NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6NzggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM5CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjc5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0MAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5zdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6ODEKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisidW5zdGFnaW5nLiIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzo4NAorbXNnaWQgIiIKKyJ5IC0gdW5zdGFnZSB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHVuc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzo5OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDMKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjEwMCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjEwMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxMDMgYWRkLXBhdGNoLmM6MTY4IGFkZC1wYXRjaC5jOjIxMQorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJhcHBseWluZy4iCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MTA2Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MTIxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDYzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MTIyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0OQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MTIzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjEyNSBhZGQtcGF0Y2guYzoxNDcgYWRkLXBhdGNoLmM6MTkwCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorImRpc2NhcmRpbmcuIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjEyOCBhZGQtcGF0Y2guYzoxOTMKK21zZ2lkICIiCisieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gZGlzY2FyZCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjE0MyBhZGQtcGF0Y2guYzoxODYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDUzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjE0NCBhZGQtcGF0Y2guYzoxODcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDU0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjE0NSBhZGQtcGF0Y2guYzoxODggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDU1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxNTAKK21zZ2lkICIiCisieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MTY0IGFkZC1wYXRjaC5jOjIwNyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxNjUgYWRkLXBhdGNoLmM6MjA4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1OQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjE2NiBhZGQtcGF0Y2guYzoyMDkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDYwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjE3MQorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MjE0Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciAnJS4qcyciCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MzM3IGFkZC1wYXRjaC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29sb3JlZCBodW5rIGhlYWRlciAnJS4qcyciCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6Mzk1Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGRpZmYiCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6NDE0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbG9yZWQgZGlmZiIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJ1biAnJXMnIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjU4NworbXNnaWQgIm1pc21hdGNoZWQgb3V0cHV0IGZyb20gaW50ZXJhY3RpdmUuZGlmZkZpbHRlciIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzo1ODgKK21zZ2lkICIiCisiWW91ciBmaWx0ZXIgbXVzdCBtYWludGFpbiBhIG9uZS10by1vbmUgY29ycmVzcG9uZGVuY2VcbiIKKyJiZXR3ZWVuIGl0cyBpbnB1dCBhbmQgb3V0cHV0IGxpbmVzLiIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzo3NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4cGVjdGVkIGNvbnRleHQgbGluZSAjJWQgaW5cbiIKKyIlLipzIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjc3NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaHVua3MgZG8gbm90IG92ZXJsYXA6XG4iCisiJS4qc1xuIgorIlx0ZG9lcyBub3QgZW5kIHdpdGg6XG4iCisiJS4qcyIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxMDUyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExMgorbXNnaWQgIk1hbnVhbCBodW5rIGVkaXQgbW9kZSAtLSBzZWUgYm90dG9tIGZvciBhIHF1aWNrIGd1aWRlLlxuIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjEwNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tLVxuIgorIlRvIHJlbW92ZSAnJWMnIGxpbmVzLCBtYWtlIHRoZW0gJyAnIGxpbmVzIChjb250ZXh0KS5cbiIKKyJUbyByZW1vdmUgJyVjJyBsaW5lcywgZGVsZXRlIHRoZW0uXG4iCisiTGluZXMgc3RhcnRpbmcgd2l0aCAlYyB3aWxsIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6ICdpdCcgcmVmZXJzIHRvIHRoZSBwYXRjaCBtZW50aW9uZWQgaW4gdGhlIHByZXZpb3VzIG1lc3NhZ2VzLgorIzogYWRkLXBhdGNoLmM6MTA3MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMjYKK21zZ2lkICIiCisiSWYgaXQgZG9lcyBub3QgYXBwbHkgY2xlYW5seSwgeW91IHdpbGwgYmUgZ2l2ZW4gYW4gb3Bwb3J0dW5pdHkgdG9cbiIKKyJlZGl0IGFnYWluLiAgSWYgYWxsIGxpbmVzIG9mIHRoZSBodW5rIGFyZSByZW1vdmVkLCB0aGVuIHRoZSBlZGl0IGlzXG4iCisiYWJvcnRlZCBhbmQgdGhlIGh1bmsgaXMgbGVmdCB1bmNoYW5nZWQuXG4iCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MTEwMworbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxMTQ4Cittc2dpZCAiJ2dpdCBhcHBseSAtLWNhY2hlZCcgZmFpbGVkIgorbXNnc3RyICIiCisKKyMuIFRSQU5TTEFUT1JTOiBkbyBub3QgdHJhbnNsYXRlIFt5L25dCisjLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IHRoYXQgaW5wdXQgYXQgdGhpcyBwb2ludC4KKyMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCisjLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgorIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCisjLgorIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KKyMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dAorIy4gYXQgdGhpcyBwb2ludC4KKyMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCisjLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgorIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCisjOiBhZGQtcGF0Y2guYzoxMjE4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIzOQorbXNnaWQgIiIKKyJZb3VyIGVkaXRlZCBodW5rIGRvZXMgbm90IGFwcGx5LiBFZGl0IGFnYWluIChzYXlpbmcgXCJub1wiIGRpc2NhcmRzISkgW3kvbl0/ICIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxMjYxCittc2dpZCAiVGhlIHNlbGVjdGVkIGh1bmtzIGRvIG5vdCBhcHBseSB0byB0aGUgaW5kZXghIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjEyNjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQzCittc2dpZCAiQXBwbHkgdGhlbSB0byB0aGUgd29ya3RyZWUgYW55d2F5PyAiCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MTI2OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDYKK21zZ2lkICJOb3RoaW5nIHdhcyBhcHBsaWVkLlxuIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjEzMjYKK21zZ2lkICIiCisiaiAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBuZXh0IHVuZGVjaWRlZCBodW5rXG4iCisiSiAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBuZXh0IGh1bmtcbiIKKyJrIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIHByZXZpb3VzIHVuZGVjaWRlZCBodW5rXG4iCisiSyAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBwcmV2aW91cyBodW5rXG4iCisiZyAtIHNlbGVjdCBhIGh1bmsgdG8gZ28gdG9cbiIKKyIvIC0gc2VhcmNoIGZvciBhIGh1bmsgbWF0Y2hpbmcgdGhlIGdpdmVuIHJlZ2V4XG4iCisicyAtIHNwbGl0IHRoZSBjdXJyZW50IGh1bmsgaW50byBzbWFsbGVyIGh1bmtzXG4iCisiZSAtIG1hbnVhbGx5IGVkaXQgdGhlIGN1cnJlbnQgaHVua1xuIgorIj8gLSBwcmludCBoZWxwXG4iCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MTQ0NyBhZGQtcGF0Y2guYzoxNDU3Cittc2dpZCAiTm8gcHJldmlvdXMgaHVuayIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxNDUyIGFkZC1wYXRjaC5jOjE0NjIKK21zZ2lkICJObyBuZXh0IGh1bmsiCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MTQ2OAorbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIGdvdG8iCittc2dzdHIgIiIKKworIzogYWRkLXBhdGNoLmM6MTQ3OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzcKK21zZ2lkICJnbyB0byB3aGljaCBodW5rICg8cmV0PiB0byBzZWUgbW9yZSk/ICIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxNDgwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3OQorbXNnaWQgImdvIHRvIHdoaWNoIGh1bms/ICIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxNDkxCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgbnVtYmVyOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjE0OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiU29ycnksIG9ubHkgJWQgaHVuayBhdmFpbGFibGUuIgorbXNnaWRfcGx1cmFsICJTb3JyeSwgb25seSAlZCBodW5rcyBhdmFpbGFibGUuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYWRkLXBhdGNoLmM6MTUwNQorbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIHNlYXJjaCIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxNTExIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYyMworbXNnaWQgInNlYXJjaCBmb3IgcmVnZXg/ICIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxNTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hbGZvcm1lZCBzZWFyY2ggcmVnZXhwICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxNTQzCittc2dpZCAiTm8gaHVuayBtYXRjaGVzIHRoZSBnaXZlbiBwYXR0ZXJuIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjE1NTAKK21zZ2lkICJTb3JyeSwgY2Fubm90IHNwbGl0IHRoaXMgaHVuayIKK21zZ3N0ciAiIgorCisjOiBhZGQtcGF0Y2guYzoxNTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIlNwbGl0IGludG8gJWQgaHVua3MuIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjE1NTgKK21zZ2lkICJTb3JyeSwgY2Fubm90IGVkaXQgdGhpcyBodW5rIgorbXNnc3RyICIiCisKKyM6IGFkZC1wYXRjaC5jOjE2MDkKK21zZ2lkICInZ2l0IGFwcGx5JyBmYWlsZWQiCittc2dzdHIgIiIKKworIzogYWR2aWNlLmM6MTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzaGludDogJS4qcyVzXG4iCiBtc2dzdHIgIiIKIAotIzogYWR2aWNlLmM6MTUyCisjOiBhZHZpY2UuYzoxNjgKIG1zZ2lkICJDaGVycnktcGlja2luZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgIiIKIAotIzogYWR2aWNlLmM6MTU0CisjOiBhZHZpY2UuYzoxNzAKIG1zZ2lkICJDb21taXR0aW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiIgogCi0jOiBhZHZpY2UuYzoxNTYKKyM6IGFkdmljZS5jOjE3MgogbXNnaWQgIk1lcmdpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICIiCiAKLSM6IGFkdmljZS5jOjE1OAorIzogYWR2aWNlLmM6MTc0CiBtc2dpZCAiUHVsbGluZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgIiIKIAotIzogYWR2aWNlLmM6MTYwCisjOiBhZHZpY2UuYzoxNzYKIG1zZ2lkICJSZXZlcnRpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICIiCiAKLSM6IGFkdmljZS5jOjE2MgorIzogYWR2aWNlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkl0IGlzIG5vdCBwb3NzaWJsZSB0byAlcyBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiIgogCi0jOiBhZHZpY2UuYzoxNzAKKyM6IGFkdmljZS5jOjE4NgogbXNnaWQgIiIKICJGaXggdGhlbSB1cCBpbiB0aGUgd29yayB0cmVlLCBhbmQgdGhlbiB1c2UgJ2dpdCBhZGQvcm0gPGZpbGU+J1xuIgogImFzIGFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbiBhbmQgbWFrZSBhIGNvbW1pdC4iCiBtc2dzdHIgIiIKIAotIzogYWR2aWNlLmM6MTc4CisjOiBhZHZpY2UuYzoxOTQKIG1zZ2lkICJFeGl0aW5nIGJlY2F1c2Ugb2YgYW4gdW5yZXNvbHZlZCBjb25mbGljdC4iCiBtc2dzdHIgIiIKIAotIzogYWR2aWNlLmM6MTgzIGJ1aWx0aW4vbWVyZ2UuYzoxMjg5CisjOiBhZHZpY2UuYzoxOTkgYnVpbHRpbi9tZXJnZS5jOjEzMzUKIG1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS4iCiBtc2dzdHIgIiIKIAotIzogYWR2aWNlLmM6MTg1CisjOiBhZHZpY2UuYzoyMDEKIG1zZ2lkICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIG1lcmdpbmcuIgogbXNnc3RyICIiCiAKLSM6IGFkdmljZS5jOjE4NgorIzogYWR2aWNlLmM6MjAyCiBtc2dpZCAiRXhpdGluZyBiZWNhdXNlIG9mIHVuZmluaXNoZWQgbWVyZ2UuIgogbXNnc3RyICIiCiAKLSM6IGFkdmljZS5jOjE5MgorIzogYWR2aWNlLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKLSJOb3RlOiBjaGVja2luZyBvdXQgJyVzJy5cbiIKKyJOb3RlOiBzd2l0Y2hpbmcgdG8gJyVzJy5cbiIKICJcbiIKICJZb3UgYXJlIGluICdkZXRhY2hlZCBIRUFEJyBzdGF0ZS4gWW91IGNhbiBsb29rIGFyb3VuZCwgbWFrZSBleHBlcmltZW50YWxcbiIKICJjaGFuZ2VzIGFuZCBjb21taXQgdGhlbSwgYW5kIHlvdSBjYW4gZGlzY2FyZCBhbnkgY29tbWl0cyB5b3UgbWFrZSBpbiB0aGlzXG4iCi0ic3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHBlcmZvcm1pbmcgYW5vdGhlciBjaGVja291dC5cbiIKKyJzdGF0ZSB3aXRob3V0IGltcGFjdGluZyBhbnkgYnJhbmNoZXMgYnkgc3dpdGNoaW5nIGJhY2sgdG8gYSBicmFuY2guXG4iCiAiXG4iCiAiSWYgeW91IHdhbnQgdG8gY3JlYXRlIGEgbmV3IGJyYW5jaCB0byByZXRhaW4gY29tbWl0cyB5b3UgY3JlYXRlLCB5b3UgbWF5XG4iCi0iZG8gc28gKG5vdyBvciBsYXRlcikgYnkgdXNpbmcgLWIgd2l0aCB0aGUgY2hlY2tvdXQgY29tbWFuZCBhZ2Fpbi4gRXhhbXBsZTpcbiIKKyJkbyBzbyAobm93IG9yIGxhdGVyKSBieSB1c2luZyAtYyB3aXRoIHRoZSBzd2l0Y2ggY29tbWFuZC4gRXhhbXBsZTpcbiIKICJcbiIKLSIgIGdpdCBjaGVja291dCAtYiA8bmV3LWJyYW5jaC1uYW1lPlxuIgorIiAgZ2l0IHN3aXRjaCAtYyA8bmV3LWJyYW5jaC1uYW1lPlxuIgorIlxuIgorIk9yIHVuZG8gdGhpcyBvcGVyYXRpb24gd2l0aDpcbiIKKyJcbiIKKyIgIGdpdCBzd2l0Y2ggLVxuIgorIlxuIgorIlR1cm4gb2ZmIHRoaXMgYWR2aWNlIGJ5IHNldHRpbmcgY29uZmlnIHZhcmlhYmxlIGFkdmljZS5kZXRhY2hlZEhlYWQgdG8gIgorImZhbHNlXG4iCiAiXG4iCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo1OQorIzogYWxpYXMuYzo1MAorbXNnaWQgImNtZGxpbmUgZW5kcyB3aXRoIFxcIgorbXNnc3RyICIiCisKKyM6IGFsaWFzLmM6NTEKK21zZ2lkICJ1bmNsb3NlZCBxdW90ZSIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjY5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCB3aGl0ZXNwYWNlIG9wdGlvbiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NzUKKyM6IGFwcGx5LmM6ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2UgaWdub3JlIG9wdGlvbiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MTI1CisjOiBhcHBseS5jOjEzNQogbXNnaWQgIi0tcmVqZWN0IGFuZCAtLTN3YXkgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MTI3CisjOiBhcHBseS5jOjEzNwogbXNnaWQgIi0tY2FjaGVkIGFuZCAtLTN3YXkgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MTMwCisjOiBhcHBseS5jOjE0MAogbXNnaWQgIi0tM3dheSBvdXRzaWRlIGEgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjE0MQorIzogYXBwbHkuYzoxNTEKIG1zZ2lkICItLWluZGV4IG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MTQ0CisjOiBhcHBseS5jOjE1NAogbXNnaWQgIi0tY2FjaGVkIG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6ODI2CisjOiBhcHBseS5jOjgwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgcHJlcGFyZSB0aW1lc3RhbXAgcmVnZXhwICVzIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6ODM1CisjOiBhcHBseS5jOjgxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWdleGVjIHJldHVybmVkICVkIGZvciBpbnB1dDogJXMiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo5MDkKKyM6IGFwcGx5LmM6ODg0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBmaW5kIGZpbGVuYW1lIGluIHBhdGNoIGF0IGxpbmUgJWQiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo5NDcKKyM6IGFwcGx5LmM6OTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gZXhwZWN0ZWQgL2Rldi9udWxsLCBnb3QgJXMgb24gbGluZSAlZCIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjk1MworIzogYXBwbHkuYzo5MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBpbmNvbnNpc3RlbnQgbmV3IGZpbGVuYW1lIG9uIGxpbmUgJWQiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo5NTQKKyM6IGFwcGx5LmM6OTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gaW5jb25zaXN0ZW50IG9sZCBmaWxlbmFtZSBvbiBsaW5lICVkIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6OTU5CisjOiBhcHBseS5jOjkzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGV4cGVjdGVkIC9kZXYvbnVsbCBvbiBsaW5lICVkIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6OTg4CisjOiBhcHBseS5jOjk2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG1vZGUgb24gbGluZSAlZDogJXMiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzoxMzA3CisjOiBhcHBseS5jOjEyODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5jb25zaXN0ZW50IGhlYWRlciBsaW5lcyAlZCBhbmQgJWQiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzoxNDc5Ci0jLCBjLWZvcm1hdAotbXNnaWQgInJlY291bnQ6IHVuZXhwZWN0ZWQgbGluZTogJS4qcyIKLW1zZ3N0ciAiIgotCi0jOiBhcHBseS5jOjE1NDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGF0Y2ggZnJhZ21lbnQgd2l0aG91dCBoZWFkZXIgYXQgbGluZSAlZDogJS4qcyIKLW1zZ3N0ciAiIgotCi0jOiBhcHBseS5jOjE1NjgKKyM6IGFwcGx5LmM6MTM3MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIHdoZW4gcmVtb3ZpbmcgJWQgbGVhZGluZyBwYXRobmFtZSAiCkBAIC0xODIsNTI3ICs3OTMsNTIzIEBACiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBhcHBseS5jOjE1ODEKKyM6IGFwcGx5LmM6MTM4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gKGxpbmUgJWQpIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MTc2OQorIzogYXBwbHkuYzoxNDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlY291bnQ6IHVuZXhwZWN0ZWQgbGluZTogJS4qcyIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjE1NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0Y2ggZnJhZ21lbnQgd2l0aG91dCBoZWFkZXIgYXQgbGluZSAlZDogJS4qcyIKK21zZ3N0ciAiIgorCisjOiBhcHBseS5jOjE3NTMKIG1zZ2lkICJuZXcgZmlsZSBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjE3NzEKKyM6IGFwcGx5LmM6MTc1NQogbXNnaWQgImRlbGV0ZWQgZmlsZSBzdGlsbCBoYXMgY29udGVudHMiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzoxODA1CisjOiBhcHBseS5jOjE3ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBwYXRjaCBhdCBsaW5lICVkIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MTg0MgorIzogYXBwbHkuYzoxODI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBmaWxlICVzIGRlcGVuZHMgb24gb2xkIGNvbnRlbnRzIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MTg0NAorIzogYXBwbHkuYzoxODI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbGV0ZWQgZmlsZSAlcyBzdGlsbCBoYXMgY29udGVudHMiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzoxODQ3CisjOiBhcHBseS5jOjE4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiKiogd2FybmluZzogZmlsZSAlcyBiZWNvbWVzIGVtcHR5IGJ1dCBpcyBub3QgZGVsZXRlZCIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjE5OTQKKyM6IGFwcGx5LmM6MTk3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IGJpbmFyeSBwYXRjaCBhdCBsaW5lICVkOiAlLipzIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MjAzMQorIzogYXBwbHkuYzoyMDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZCIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjIxOTMKKyM6IGFwcGx5LmM6MjE3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRjaCB3aXRoIG9ubHkgZ2FyYmFnZSBhdCBsaW5lICVkIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MjI3OQorIzogYXBwbHkuYzoyMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHN5bWxpbmsgJXMiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzoyMjgzCisjOiBhcHBseS5jOjIyNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gb3IgcmVhZCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjI5NDIKKyM6IGFwcGx5LmM6MjkzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHN0YXJ0IG9mIGxpbmU6ICclYyciCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozMDYzCisjOiBhcHBseS5jOjMwNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSHVuayAjJWQgc3VjY2VlZGVkIGF0ICVkIChvZmZzZXQgJWQgbGluZSkuIgogbXNnaWRfcGx1cmFsICJIdW5rICMlZCBzdWNjZWVkZWQgYXQgJWQgKG9mZnNldCAlZCBsaW5lcykuIgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogYXBwbHkuYzozMDc1CisjOiBhcHBseS5jOjMwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29udGV4dCByZWR1Y2VkIHRvICglbGQvJWxkKSB0byBhcHBseSBmcmFnbWVudCBhdCAlZCIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjMwODEKKyM6IGFwcGx5LmM6MzA3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAid2hpbGUgc2VhcmNoaW5nIGZvcjpcbiIKICIlLipzIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MzEwMworIzogYXBwbHkuYzozMDk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3NpbmcgYmluYXJ5IHBhdGNoIGRhdGEgZm9yICclcyciCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozMTExCisjOiBhcHBseS5jOjMxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJldmVyc2UtYXBwbHkgYSBiaW5hcnkgcGF0Y2ggd2l0aG91dCB0aGUgcmV2ZXJzZSBodW5rIHRvICclcyciCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozMTU4CisjOiBhcHBseS5jOjMxNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGFwcGx5IGJpbmFyeSBwYXRjaCB0byAnJXMnIHdpdGhvdXQgZnVsbCBpbmRleCBsaW5lIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MzE2OAorIzogYXBwbHkuYzozMTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ0aGUgcGF0Y2ggYXBwbGllcyB0byAnJXMnICglcyksIHdoaWNoIGRvZXMgbm90IG1hdGNoIHRoZSBjdXJyZW50IGNvbnRlbnRzLiIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjMxNzYKKyM6IGFwcGx5LmM6MzE3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgcGF0Y2ggYXBwbGllcyB0byBhbiBlbXB0eSAnJXMnIGJ1dCBpdCBpcyBub3QgZW1wdHkiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozMTk0CisjOiBhcHBseS5jOjMxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlIG5lY2Vzc2FyeSBwb3N0aW1hZ2UgJXMgZm9yICclcycgY2Fubm90IGJlIHJlYWQiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozMjA3CisjOiBhcHBseS5jOjMyMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmluYXJ5IHBhdGNoIGRvZXMgbm90IGFwcGx5IHRvICclcyciCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozMjEzCisjOiBhcHBseS5jOjMyMDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmluYXJ5IHBhdGNoIHRvICclcycgY3JlYXRlcyBpbmNvcnJlY3QgcmVzdWx0IChleHBlY3RpbmcgJXMsIGdvdCAlcykiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozMjM0CisjOiBhcHBseS5jOjMyMzAKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0Y2ggZmFpbGVkOiAlczolbGQiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozMzU2CisjOiBhcHBseS5jOjMzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoZWNrb3V0ICVzIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MzQwOCBhcHBseS5jOjM0MTkgYXBwbHkuYzozNDY1IG1pZHguYzo1OCBzZXR1cC5jOjI3OAorIzogYXBwbHkuYzozNDA1IGFwcGx5LmM6MzQxNiBhcHBseS5jOjM0NjIgbWlkeC5jOjYxIHNldHVwLmM6Mjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWFkICVzIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MzQxNgorIzogYXBwbHkuYzozNDEzCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYWRpbmcgZnJvbSAnJXMnIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozNDQ1IGFwcGx5LmM6MzY4OAorIzogYXBwbHkuYzozNDQyIGFwcGx5LmM6MzY4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICVzIGhhcyBiZWVuIHJlbmFtZWQvZGVsZXRlZCIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjM1MzEgYXBwbHkuYzozNzAzCisjOiBhcHBseS5jOjM1MjggYXBwbHkuYzozNzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBkb2VzIG5vdCBleGlzdCBpbiBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjM1NDAgYXBwbHkuYzozNzExCisjOiBhcHBseS5jOjM1MzcgYXBwbHkuYzozNzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBkb2VzIG5vdCBtYXRjaCBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjM1NzUKKyM6IGFwcGx5LmM6MzU3MgogbXNnaWQgInJlcG9zaXRvcnkgbGFja3MgdGhlIG5lY2Vzc2FyeSBibG9iIHRvIGZhbGwgYmFjayBvbiAzLXdheSBtZXJnZS4iCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozNTc4CisjOiBhcHBseS5jOjM1NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFsbGluZyBiYWNrIHRvIHRocmVlLXdheSBtZXJnZS4uLlxuIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MzU5NCBhcHBseS5jOjM1OTgKKyM6IGFwcGx5LmM6MzU5MSBhcHBseS5jOjM1OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgdGhlIGN1cnJlbnQgY29udGVudHMgb2YgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjM2MTAKKyM6IGFwcGx5LmM6MzYwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gZmFsbCBiYWNrIG9uIHRocmVlLXdheSBtZXJnZS4uLlxuIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6MzYyNAorIzogYXBwbHkuYzozNjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyB3aXRoIGNvbmZsaWN0cy5cbiIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjM2MjkKKyM6IGFwcGx5LmM6MzYyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBsaWVkIHBhdGNoIHRvICclcycgY2xlYW5seS5cbiIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjM2NTUKKyM6IGFwcGx5LmM6MzY1MgogbXNnaWQgInJlbW92YWwgcGF0Y2ggbGVhdmVzIGZpbGUgY29udGVudHMiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozNzI4CisjOiBhcHBseS5jOjM3MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHdyb25nIHR5cGUiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozNzMwCisjOiBhcHBseS5jOjM3MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaGFzIHR5cGUgJW8sIGV4cGVjdGVkICVvIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6Mzg4MSBhcHBseS5jOjM4ODMKKyM6IGFwcGx5LmM6Mzg3OCBhcHBseS5jOjM4ODAgcmVhZC1jYWNoZS5jOjgzMCByZWFkLWNhY2hlLmM6ODU2CisjOiByZWFkLWNhY2hlLmM6MTMyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHBhdGggJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjM5MzkKKyM6IGFwcGx5LmM6MzkzNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozOTQyCisjOiBhcHBseS5jOjM5MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGFscmVhZHkgZXhpc3RzIGluIHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6Mzk2MgorIzogYXBwbHkuYzozOTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjM5NjcKKyM6IGFwcGx5LmM6Mzk2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgbW9kZSAoJW8pIG9mICVzIGRvZXMgbm90IG1hdGNoIG9sZCBtb2RlICglbykgb2YgJXMiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozOTg3CisjOiBhcHBseS5jOjM5ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWZmZWN0ZWQgZmlsZSAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzozOTkxCisjOiBhcHBseS5jOjM5ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHBhdGNoIGRvZXMgbm90IGFwcGx5IgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDAwNgorIzogYXBwbHkuYzo0MDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoZWNraW5nIHBhdGNoICVzLi4uIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDA5OAorIzogYXBwbHkuYzo0MDk1CiAjLCBjLWZvcm1hdAogbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzIGZvciBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0MTA1CisjOiBhcHBseS5jOjQxMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9kZSBjaGFuZ2UgZm9yICVzLCB3aGljaCBpcyBub3QgaW4gY3VycmVudCBIRUFEIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDEwOAorIzogYXBwbHkuYzo0MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzICglcykuIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDExMyBidWlsdGluL2NoZWNrb3V0LmM6MjQ0IGJ1aWx0aW4vcmVzZXQuYzoxNDIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibWFrZV9jYWNoZV9lbnRyeSBmYWlsZWQgZm9yIHBhdGggJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBhcHBseS5jOjQxMTcKKyM6IGFwcGx5LmM6NDExNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgYWRkICVzIHRvIHRlbXBvcmFyeSBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjQxMjcKKyM6IGFwcGx5LmM6NDEyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgdGVtcG9yYXJ5IGluZGV4IHRvICVzIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDI2NQorIzogYXBwbHkuYzo0MjYyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXMgZnJvbSBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjQyOTkKKyM6IGFwcGx5LmM6NDI5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IHBhdGNoIGZvciBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0MzA1CisjOiBhcHBseS5jOjQzMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3bHkgY3JlYXRlZCBmaWxlICclcyciCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0MzEzCisjOiBhcHBseS5jOjQzMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBiYWNraW5nIHN0b3JlIGZvciBuZXdseSBjcmVhdGVkIGZpbGUgJXMiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0MzE5IGFwcGx5LmM6NDQ2NAorIzogYXBwbHkuYzo0MzE2IGFwcGx5LmM6NDQ2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIGNhY2hlIGVudHJ5IGZvciAlcyIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjQzNjIKKyM6IGFwcGx5LmM6NDM1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjQzNjYKKyM6IGFwcGx5LmM6NDM2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjbG9zaW5nIGZpbGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjQ0MzYKKyM6IGFwcGx5LmM6NDQzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIG1vZGUgJW8iCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0NTM0CisjOiBhcHBseS5jOjQ1MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBwYXRjaCAlcyBjbGVhbmx5LiIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjQ1NDIKKyM6IGFwcGx5LmM6NDUzOQogbXNnaWQgImludGVybmFsIGVycm9yIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDU0NQorIzogYXBwbHkuYzo0NTQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdC4uLiIKIG1zZ2lkX3BsdXJhbCAiQXBwbHlpbmcgcGF0Y2ggJSVzIHdpdGggJWQgcmVqZWN0cy4uLiIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGFwcGx5LmM6NDU1NgorIzogYXBwbHkuYzo0NTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgInRydW5jYXRpbmcgLnJlaiBmaWxlbmFtZSB0byAlLipzLnJlaiIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjQ1NjQgYnVpbHRpbi9mZXRjaC5jOjg0MyBidWlsdGluL2ZldGNoLmM6MTEyMgorIzogYXBwbHkuYzo0NTYxIGJ1aWx0aW4vZmV0Y2guYzo5MDEgYnVpbHRpbi9mZXRjaC5jOjEyMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG9wZW4gJXMiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0NTc4CisjOiBhcHBseS5jOjQ1NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiSHVuayAjJWQgYXBwbGllZCBjbGVhbmx5LiIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjQ1ODIKKyM6IGFwcGx5LmM6NDU3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWplY3RlZCBodW5rICMlZC4iCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0NjkyCisjOiBhcHBseS5jOjQ2OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBlZCBwYXRjaCAnJXMnLiIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjQ3MDAKKyM6IGFwcGx5LmM6NDcwNgogbXNnaWQgInVucmVjb2duaXplZCBpbnB1dCIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjQ3MTkKKyM6IGFwcGx5LmM6NDcyNgogbXNnaWQgInVuYWJsZSB0byByZWFkIGluZGV4IGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0ODc0CisjOiBhcHBseS5jOjQ4ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgb3BlbiBwYXRjaCAnJXMnOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjQ5MDEKKyM6IGFwcGx5LmM6NDkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJzcXVlbGNoZWQgJWQgd2hpdGVzcGFjZSBlcnJvciIKIG1zZ2lkX3BsdXJhbCAic3F1ZWxjaGVkICVkIHdoaXRlc3BhY2UgZXJyb3JzIgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogYXBwbHkuYzo0OTA3IGFwcGx5LmM6NDkyMgorIzogYXBwbHkuYzo0OTE2IGFwcGx5LmM6NDkzMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlZCBsaW5lIGFkZHMgd2hpdGVzcGFjZSBlcnJvcnMuIgogbXNnaWRfcGx1cmFsICIlZCBsaW5lcyBhZGQgd2hpdGVzcGFjZSBlcnJvcnMuIgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogYXBwbHkuYzo0OTE1CisjOiBhcHBseS5jOjQ5MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJWQgbGluZSBhcHBsaWVkIGFmdGVyIGZpeGluZyB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dpZF9wbHVyYWwgIiVkIGxpbmVzIGFwcGxpZWQgYWZ0ZXIgZml4aW5nIHdoaXRlc3BhY2UgZXJyb3JzLiIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGFwcGx5LmM6NDkzMSBidWlsdGluL2FkZC5jOjUzOCBidWlsdGluL212LmM6MzAwIGJ1aWx0aW4vcm0uYzozODkKKyM6IGFwcGx5LmM6NDk0MCBidWlsdGluL2FkZC5jOjYxMiBidWlsdGluL212LmM6MzAxIGJ1aWx0aW4vcm0uYzo0MDYKIG1zZ2lkICJVbmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0OTU4IGFwcGx5LmM6NDk2MSBidWlsdGluL2FtLmM6MjIwOSBidWlsdGluL2FtLmM6MjIxMgotIzogYnVpbHRpbi9jbG9uZS5jOjEyMSBidWlsdGluL2ZldGNoLmM6MTE4IGJ1aWx0aW4vbWVyZ2UuYzoyNjIKLSM6IGJ1aWx0aW4vcHVsbC5jOjE5OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA2Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2MiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2NQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NDYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NDkKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDg4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTk3Ci1tc2dpZCAicGF0aCIKLW1zZ3N0ciAiIgotCi0jOiBhcHBseS5jOjQ5NTkKKyM6IGFwcGx5LmM6NDk2OAogbXNnaWQgImRvbid0IGFwcGx5IGNoYW5nZXMgbWF0Y2hpbmcgdGhlIGdpdmVuIHBhdGgiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0OTYyCisjOiBhcHBseS5jOjQ5NzEKIG1zZ2lkICJhcHBseSBjaGFuZ2VzIG1hdGNoaW5nIHRoZSBnaXZlbiBwYXRoIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDk2NCBidWlsdGluL2FtLmM6MjIxOAorIzogYXBwbHkuYzo0OTczIGJ1aWx0aW4vYW0uYzoyMjYwCiBtc2dpZCAibnVtIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDk2NQorIzogYXBwbHkuYzo0OTc0CiBtc2dpZCAicmVtb3ZlIDxudW0+IGxlYWRpbmcgc2xhc2hlcyBmcm9tIHRyYWRpdGlvbmFsIGRpZmYgcGF0aHMiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0OTY4CisjOiBhcHBseS5jOjQ5NzcKIG1zZ2lkICJpZ25vcmUgYWRkaXRpb25zIG1hZGUgYnkgdGhlIHBhdGNoIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDk3MAorIzogYXBwbHkuYzo0OTc5CiBtc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIG91dHB1dCBkaWZmc3RhdCBmb3IgdGhlIGlucHV0IgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDk3NAorIzogYXBwbHkuYzo0OTgzCiBtc2dpZCAic2hvdyBudW1iZXIgb2YgYWRkZWQgYW5kIGRlbGV0ZWQgbGluZXMgaW4gZGVjaW1hbCBub3RhdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjQ5NzYKKyM6IGFwcGx5LmM6NDk4NQogbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBvdXRwdXQgYSBzdW1tYXJ5IGZvciB0aGUgaW5wdXQiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0OTc4CisjOiBhcHBseS5jOjQ5ODcKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgc2VlIGlmIHRoZSBwYXRjaCBpcyBhcHBsaWNhYmxlIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDk4MAorIzogYXBwbHkuYzo0OTg5CiBtc2dpZCAibWFrZSBzdXJlIHRoZSBwYXRjaCBpcyBhcHBsaWNhYmxlIHRvIHRoZSBjdXJyZW50IGluZGV4IgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDk4MgorIzogYXBwbHkuYzo0OTkxCiBtc2dpZCAibWFyayBuZXcgZmlsZXMgd2l0aCBgZ2l0IGFkZCAtLWludGVudC10by1hZGRgIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDk4NAorIzogYXBwbHkuYzo0OTkzCiBtc2dpZCAiYXBwbHkgYSBwYXRjaCB3aXRob3V0IHRvdWNoaW5nIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0OTg2CisjOiBhcHBseS5jOjQ5OTUKIG1zZ2lkICJhY2NlcHQgYSBwYXRjaCB0aGF0IHRvdWNoZXMgb3V0c2lkZSB0aGUgd29ya2luZyBhcmVhIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDk4OQorIzogYXBwbHkuYzo0OTk4CiBtc2dpZCAiYWxzbyBhcHBseSB0aGUgcGF0Y2ggKHVzZSB3aXRoIC0tc3RhdC8tLXN1bW1hcnkvLS1jaGVjaykiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0OTkxCisjOiBhcHBseS5jOjUwMDAKIG1zZ2lkICJhdHRlbXB0IHRocmVlLXdheSBtZXJnZSBpZiBhIHBhdGNoIGRvZXMgbm90IGFwcGx5IgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDk5MworIzogYXBwbHkuYzo1MDAyCiBtc2dpZCAiYnVpbGQgYSB0ZW1wb3JhcnkgaW5kZXggYmFzZWQgb24gZW1iZWRkZWQgaW5kZXggaW5mb3JtYXRpb24iCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo0OTk2IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzAgYnVpbHRpbi9scy1maWxlcy5jOjUyMworIzogYXBwbHkuYzo1MDA1IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzMgYnVpbHRpbi9scy1maWxlcy5jOjUyNAogbXNnaWQgInBhdGhzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDk5OAorIzogYXBwbHkuYzo1MDA3CiBtc2dpZCAiZW5zdXJlIGF0IGxlYXN0IDxuPiBsaW5lcyBvZiBjb250ZXh0IG1hdGNoIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NDk5OSBidWlsdGluL2FtLmM6MjE5NyBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk3Ci0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk5IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAxCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTIgYnVpbHRpbi9yZWJhc2UuYzo4NTcKKyM6IGFwcGx5LmM6NTAwOCBidWlsdGluL2FtLmM6MjIzOSBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk4CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMCBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU3IGJ1aWx0aW4vcmViYXNlLmM6MTUwOAogbXNnaWQgImFjdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjUwMDAKKyM6IGFwcGx5LmM6NTAwOQogbXNnaWQgImRldGVjdCBuZXcgb3IgbW9kaWZpZWQgbGluZXMgdGhhdCBoYXZlIHdoaXRlc3BhY2UgZXJyb3JzIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NTAwMyBhcHBseS5jOjUwMDYKKyM6IGFwcGx5LmM6NTAxMiBhcHBseS5jOjUwMTUKIG1zZ2lkICJpZ25vcmUgY2hhbmdlcyBpbiB3aGl0ZXNwYWNlIHdoZW4gZmluZGluZyBjb250ZXh0IgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NTAwOQorIzogYXBwbHkuYzo1MDE4CiBtc2dpZCAiYXBwbHkgdGhlIHBhdGNoIGluIHJldmVyc2UiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo1MDExCisjOiBhcHBseS5jOjUwMjAKIG1zZ2lkICJkb24ndCBleHBlY3QgYXQgbGVhc3Qgb25lIGxpbmUgb2YgY29udGV4dCIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjUwMTMKKyM6IGFwcGx5LmM6NTAyMgogbXNnaWQgImxlYXZlIHRoZSByZWplY3RlZCBodW5rcyBpbiBjb3JyZXNwb25kaW5nICoucmVqIGZpbGVzIgogbXNnc3RyICIiCiAKLSM6IGFwcGx5LmM6NTAxNQorIzogYXBwbHkuYzo1MDI0CiBtc2dpZCAiYWxsb3cgb3ZlcmxhcHBpbmcgaHVua3MiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo1MDE2IGJ1aWx0aW4vYWRkLmM6MjkwIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjEKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMwOSBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5OCBidWlsdGluL2ZzY2suYzo2OTgKLSM6IGJ1aWx0aW4vbG9nLmM6MjAyMyBidWlsdGluL212LmM6MTIyIGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI3Ci0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTcKKyM6IGFwcGx5LmM6NTAyNSBidWlsdGluL2FkZC5jOjMyMyBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjIyCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjAgYnVpbHRpbi9jb3VudC1vYmplY3RzLmM6OTggYnVpbHRpbi9mc2NrLmM6Nzc0CisjOiBidWlsdGluL2xvZy5jOjIxNjYgYnVpbHRpbi9tdi5jOjEyMyBidWlsdGluL3JlYWQtdHJlZS5jOjEyOAogbXNnaWQgImJlIHZlcmJvc2UiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo1MDE4CisjOiBhcHBseS5jOjUwMjcKIG1zZ2lkICJ0b2xlcmF0ZSBpbmNvcnJlY3RseSBkZXRlY3RlZCBtaXNzaW5nIG5ldy1saW5lIGF0IHRoZSBlbmQgb2YgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjUwMjEKKyM6IGFwcGx5LmM6NTAzMAogbXNnaWQgImRvIG5vdCB0cnVzdCB0aGUgbGluZSBjb3VudHMgaW4gdGhlIGh1bmsgaGVhZGVycyIKIG1zZ3N0ciAiIgogCi0jOiBhcHBseS5jOjUwMjMgYnVpbHRpbi9hbS5jOjIyMDYKKyM6IGFwcGx5LmM6NTAzMiBidWlsdGluL2FtLmM6MjI0OAogbXNnaWQgInJvb3QiCiBtc2dzdHIgIiIKIAotIzogYXBwbHkuYzo1MDI0CisjOiBhcHBseS5jOjUwMzMKIG1zZ2lkICJwcmVwZW5kIDxyb290PiB0byBhbGwgZmlsZW5hbWVzIgogbXNnc3RyICIiCiAKQEAgLTcyMywxNDggKzEzMzAsMTY4IEBACiBtc2dpZCAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPHJlcG8+IFstLWV4ZWMgPGNtZD5dIC0tbGlzdCIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLmM6MzcwIGJ1aWx0aW4vYWRkLmM6MTc2IGJ1aWx0aW4vYWRkLmM6NTE0IGJ1aWx0aW4vcm0uYzoyOTgKKyM6IGFyY2hpdmUuYzozNzIgYnVpbHRpbi9hZGQuYzoxODEgYnVpbHRpbi9hZGQuYzo1ODggYnVpbHRpbi9ybS5jOjMxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGRpZCBub3QgbWF0Y2ggYW55IGZpbGVzIgogbXNnc3RyICIiCiAKLSM6IGFyY2hpdmUuYzo0NTMKKyM6IGFyY2hpdmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCByZWY6ICUuKnMiCittc2dzdHIgIiIKKworIzogYXJjaGl2ZS5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJXMiCittc2dzdHIgIiIKKworIzogYXJjaGl2ZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB0cmVlIG9iamVjdDogJXMiCittc2dzdHIgIiIKKworIzogYXJjaGl2ZS5jOjQyNgorbXNnaWQgImN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkgaXMgdW50cmFja2VkIgorbXNnc3RyICIiCisKKyM6IGFyY2hpdmUuYzo0NTcKIG1zZ2lkICJmbXQiCiBtc2dzdHIgIiIKIAotIzogYXJjaGl2ZS5jOjQ1MworIzogYXJjaGl2ZS5jOjQ1NwogbXNnaWQgImFyY2hpdmUgZm9ybWF0IgogbXNnc3RyICIiCiAKLSM6IGFyY2hpdmUuYzo0NTQgYnVpbHRpbi9sb2cuYzoxNTM2CisjOiBhcmNoaXZlLmM6NDU4IGJ1aWx0aW4vbG9nLmM6MTY1MwogbXNnaWQgInByZWZpeCIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLmM6NDU1CisjOiBhcmNoaXZlLmM6NDU5CiBtc2dpZCAicHJlcGVuZCBwcmVmaXggdG8gZWFjaCBwYXRobmFtZSBpbiB0aGUgYXJjaGl2ZSIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLmM6NDU2IGJ1aWx0aW4vYmxhbWUuYzo4MjAgYnVpbHRpbi9ibGFtZS5jOjgyMSBidWlsdGluL2NvbmZpZy5jOjEyOQotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTMgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTUgYnVpbHRpbi9ncmVwLmM6ODg0Ci0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTkgYnVpbHRpbi9scy1maWxlcy5jOjU2MgotIzogYnVpbHRpbi9ub3Rlcy5jOjQxMiBidWlsdGluL25vdGVzLmM6NTc1IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTIyCi0jOiBwYXJzZS1vcHRpb25zLmg6MTYyCisjOiBhcmNoaXZlLmM6NDYwIGJ1aWx0aW4vYmxhbWUuYzo4NjEgYnVpbHRpbi9ibGFtZS5jOjg2NSBidWlsdGluL2JsYW1lLmM6ODY2CisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE3IGJ1aWx0aW4vY29uZmlnLmM6MTMwIGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTYyCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2NCBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2OCBidWlsdGluL2dyZXAuYzo4ODcKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDUgYnVpbHRpbi9scy1maWxlcy5jOjU2MCBidWlsdGluL2xzLWZpbGVzLmM6NTYzCisjOiBidWlsdGluL25vdGVzLmM6NDEyIGJ1aWx0aW4vbm90ZXMuYzo1NzggYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjMKKyM6IHBhcnNlLW9wdGlvbnMuaDoxOTAKIG1zZ2lkICJmaWxlIgogbXNnc3RyICIiCiAKLSM6IGFyY2hpdmUuYzo0NTcgYnVpbHRpbi9hcmNoaXZlLmM6ODkKKyM6IGFyY2hpdmUuYzo0NjEgYnVpbHRpbi9hcmNoaXZlLmM6OTAKIG1zZ2lkICJ3cml0ZSB0aGUgYXJjaGl2ZSB0byB0aGlzIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYXJjaGl2ZS5jOjQ1OQorIzogYXJjaGl2ZS5jOjQ2MwogbXNnaWQgInJlYWQgLmdpdGF0dHJpYnV0ZXMgaW4gd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKIAotIzogYXJjaGl2ZS5jOjQ2MAorIzogYXJjaGl2ZS5jOjQ2NAogbXNnaWQgInJlcG9ydCBhcmNoaXZlZCBmaWxlcyBvbiBzdGRlcnIiCiBtc2dzdHIgIiIKIAotIzogYXJjaGl2ZS5jOjQ2MQorIzogYXJjaGl2ZS5jOjQ2NQogbXNnaWQgInN0b3JlIG9ubHkiCiBtc2dzdHIgIiIKIAotIzogYXJjaGl2ZS5jOjQ2MgorIzogYXJjaGl2ZS5jOjQ2NgogbXNnaWQgImNvbXByZXNzIGZhc3RlciIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLmM6NDcwCisjOiBhcmNoaXZlLmM6NDc0CiBtc2dpZCAiY29tcHJlc3MgYmV0dGVyIgogbXNnc3RyICIiCiAKLSM6IGFyY2hpdmUuYzo0NzMKKyM6IGFyY2hpdmUuYzo0NzcKIG1zZ2lkICJsaXN0IHN1cHBvcnRlZCBhcmNoaXZlIGZvcm1hdHMiCiBtc2dzdHIgIiIKIAotIzogYXJjaGl2ZS5jOjQ3NSBidWlsdGluL2FyY2hpdmUuYzo5MCBidWlsdGluL2Nsb25lLmM6MTExIGJ1aWx0aW4vY2xvbmUuYzoxMTQKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU1CisjOiBhcmNoaXZlLmM6NDc5IGJ1aWx0aW4vYXJjaGl2ZS5jOjkxIGJ1aWx0aW4vY2xvbmUuYzoxMTMgYnVpbHRpbi9jbG9uZS5jOjExNgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTEKIG1zZ2lkICJyZXBvIgogbXNnc3RyICIiCiAKLSM6IGFyY2hpdmUuYzo0NzYgYnVpbHRpbi9hcmNoaXZlLmM6OTEKKyM6IGFyY2hpdmUuYzo0ODAgYnVpbHRpbi9hcmNoaXZlLmM6OTIKIG1zZ2lkICJyZXRyaWV2ZSB0aGUgYXJjaGl2ZSBmcm9tIHJlbW90ZSByZXBvc2l0b3J5IDxyZXBvPiIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLmM6NDc3IGJ1aWx0aW4vYXJjaGl2ZS5jOjkyIGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTQKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0OTYKKyM6IGFyY2hpdmUuYzo0ODEgYnVpbHRpbi9hcmNoaXZlLmM6OTMgYnVpbHRpbi9kaWZmdG9vbC5jOjcxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQ5OAogbXNnaWQgImNvbW1hbmQiCiBtc2dzdHIgIiIKIAotIzogYXJjaGl2ZS5jOjQ3OCBidWlsdGluL2FyY2hpdmUuYzo5MworIzogYXJjaGl2ZS5jOjQ4MiBidWlsdGluL2FyY2hpdmUuYzo5NAogbXNnaWQgInBhdGggdG8gdGhlIHJlbW90ZSBnaXQtdXBsb2FkLWFyY2hpdmUgY29tbWFuZCIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLmM6NDg1CisjOiBhcmNoaXZlLmM6NDg5CiBtc2dpZCAiVW5leHBlY3RlZCBvcHRpb24gLS1yZW1vdGUiCiBtc2dzdHIgIiIKIAotIzogYXJjaGl2ZS5jOjQ4NworIzogYXJjaGl2ZS5jOjQ5MQogbXNnaWQgIk9wdGlvbiAtLWV4ZWMgY2FuIG9ubHkgYmUgdXNlZCB0b2dldGhlciB3aXRoIC0tcmVtb3RlIgogbXNnc3RyICIiCiAKLSM6IGFyY2hpdmUuYzo0ODkKKyM6IGFyY2hpdmUuYzo0OTMKIG1zZ2lkICJVbmV4cGVjdGVkIG9wdGlvbiAtLW91dHB1dCIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLmM6NTExCisjOiBhcmNoaXZlLmM6NTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gYXJjaGl2ZSBmb3JtYXQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLmM6NTE4CisjOiBhcmNoaXZlLmM6NTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFyZ3VtZW50IG5vdCBzdXBwb3J0ZWQgZm9yIGZvcm1hdCAnJXMnOiAtJWQiCiBtc2dzdHIgIiIKIAotIzogYXJjaGl2ZS10YXIuYzoxMjUgYXJjaGl2ZS16aXAuYzozNDUKKyM6IGFyY2hpdmUtdGFyLmM6MTI1IGFyY2hpdmUtemlwLmM6MzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdHJlYW0gYmxvYiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLXRhci5jOjI2MCBhcmNoaXZlLXppcC5jOjM2MworIzogYXJjaGl2ZS10YXIuYzoyNjYgYXJjaGl2ZS16aXAuYzozNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5zdXBwb3J0ZWQgZmlsZSBtb2RlOiAwJW8gKFNIQTE6ICVzKSIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLXRhci5jOjI4NyBhcmNoaXZlLXppcC5jOjM1MworIzogYXJjaGl2ZS10YXIuYzoyOTMgYXJjaGl2ZS16aXAuYzozNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJXMiCiBtc2dzdHIgIiIKIAotIzogYXJjaGl2ZS10YXIuYzo0NTgKKyM6IGFyY2hpdmUtdGFyLmM6NDY1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBzdGFydCAnJXMnIGZpbHRlciIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLXRhci5jOjQ2MQorIzogYXJjaGl2ZS10YXIuYzo0NjgKIG1zZ2lkICJ1bmFibGUgdG8gcmVkaXJlY3QgZGVzY3JpcHRvciIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLXRhci5jOjQ2OAorIzogYXJjaGl2ZS10YXIuYzo0NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBmaWx0ZXIgcmVwb3J0ZWQgZXJyb3IiCiBtc2dzdHIgIiIKIAotIzogYXJjaGl2ZS16aXAuYzozMTQKKyM6IGFyY2hpdmUtemlwLmM6MzE5CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggaXMgbm90IHZhbGlkIFVURi04OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLXppcC5jOjMxOAorIzogYXJjaGl2ZS16aXAuYzozMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCB0b28gbG9uZyAoJWQgY2hhcnMsIFNIQTE6ICVzKTogJXMiCiBtc2dzdHIgIiIKIAotIzogYXJjaGl2ZS16aXAuYzo0NzQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjcKKyM6IGFyY2hpdmUtemlwLmM6NDgwIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjMxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlZmxhdGUgZXJyb3IgKCVkKSIKIG1zZ3N0ciAiIgogCi0jOiBhcmNoaXZlLXppcC5jOjYwOQorIzogYXJjaGl2ZS16aXAuYzo2MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidGltZXN0YW1wIHRvbyBsYXJnZSBmb3IgdGhpcyBzeXN0ZW06ICU8UFJJdU1BWD4iCiBtc2dzdHIgIiIKQEAgLTg3NCw2ICsxNTAxLDExIEBACiBtc2dpZCAiJS4qcyBpcyBub3QgYSB2YWxpZCBhdHRyaWJ1dGUgbmFtZSIKIG1zZ3N0ciAiIgogCisjOiBhdHRyLmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIG5vdCBhbGxvd2VkOiAlczolZCIKK21zZ3N0ciAiIgorCiAjOiBhdHRyLmM6NDA5CiBtc2dpZCAiIgogIk5lZ2F0aXZlIHBhdHRlcm5zIGFyZSBpZ25vcmVkIGluIGdpdCBhdHRyaWJ1dGVzXG4iCkBAIC04ODUsMzggKzE1MTcsMzggQEAKIG1zZ2lkICJCYWRseSBxdW90ZWQgY29udGVudCBpbiBmaWxlICclcyc6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJpc2VjdC5jOjY3NgorIzogYmlzZWN0LmM6Njc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIldlIGNhbm5vdCBiaXNlY3QgbW9yZSFcbiIKIG1zZ3N0ciAiIgogCi0jOiBiaXNlY3QuYzo3MzAKKyM6IGJpc2VjdC5jOjc0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCBjb21taXQgbmFtZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBiaXNlY3QuYzo3NTQKKyM6IGJpc2VjdC5jOjc3MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIG1lcmdlIGJhc2UgJXMgaXMgYmFkLlxuIgogIlRoaXMgbWVhbnMgdGhlIGJ1ZyBoYXMgYmVlbiBmaXhlZCBiZXR3ZWVuICVzIGFuZCBbJXNdLlxuIgogbXNnc3RyICIiCiAKLSM6IGJpc2VjdC5jOjc1OQorIzogYmlzZWN0LmM6Nzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgbWVyZ2UgYmFzZSAlcyBpcyBuZXcuXG4iCiAiVGhlIHByb3BlcnR5IGhhcyBjaGFuZ2VkIGJldHdlZW4gJXMgYW5kIFslc10uXG4iCiBtc2dzdHIgIiIKIAotIzogYmlzZWN0LmM6NzY0CisjOiBiaXNlY3QuYzo3ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBtZXJnZSBiYXNlICVzIGlzICVzLlxuIgogIlRoaXMgbWVhbnMgdGhlIGZpcnN0ICclcycgY29tbWl0IGlzIGJldHdlZW4gJXMgYW5kIFslc10uXG4iCiBtc2dzdHIgIiIKIAotIzogYmlzZWN0LmM6NzcyCisjOiBiaXNlY3QuYzo3ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlNvbWUgJXMgcmV2cyBhcmUgbm90IGFuY2VzdG9ycyBvZiB0aGUgJXMgcmV2LlxuIgpAQCAtOTI0LDcgKzE1NTYsNyBAQAogIk1heWJlIHlvdSBtaXN0b29rICVzIGFuZCAlcyByZXZzP1xuIgogbXNnc3RyICIiCiAKLSM6IGJpc2VjdC5jOjc4NQorIzogYmlzZWN0LmM6ODAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ0aGUgbWVyZ2UgYmFzZSBiZXR3ZWVuICVzIGFuZCBbJXNdIG11c3QgYmUgc2tpcHBlZC5cbiIKQEAgLTkzMiw0MyArMTU2NCw0MyBAQAogIldlIGNvbnRpbnVlIGFueXdheS4iCiBtc2dzdHIgIiIKIAotIzogYmlzZWN0LmM6ODE4CisjOiBiaXNlY3QuYzo4NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmlzZWN0aW5nOiBhIG1lcmdlIGJhc2UgbXVzdCBiZSB0ZXN0ZWRcbiIKIG1zZ3N0ciAiIgogCi0jOiBiaXNlY3QuYzo4NTgKKyM6IGJpc2VjdC5jOjg5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJhICVzIHJldmlzaW9uIGlzIG5lZWRlZCIKIG1zZ3N0ciAiIgogCi0jOiBiaXNlY3QuYzo4NzcgYnVpbHRpbi9ub3Rlcy5jOjE3NyBidWlsdGluL3RhZy5jOjIzNworIzogYmlzZWN0LmM6OTIwIGJ1aWx0aW4vbm90ZXMuYzoxNzcgYnVpbHRpbi90YWcuYzoyNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBmaWxlICclcyciCiBtc2dzdHIgIiIKIAotIzogYmlzZWN0LmM6OTI4IGJ1aWx0aW4vbWVyZ2UuYzoxMzgKKyM6IGJpc2VjdC5jOjk2NiBidWlsdGluL21lcmdlLmM6MTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGZpbGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBiaXNlY3QuYzo5NTgKKyM6IGJpc2VjdC5jOjk5NwogbXNnaWQgInJlYWRpbmcgYmlzZWN0IHJlZnMgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IGJpc2VjdC5jOjk3NworIzogYmlzZWN0LmM6MTAxOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB3YXMgYm90aCAlcyBhbmQgJXNcbiIKIG1zZ3N0ciAiIgogCi0jOiBiaXNlY3QuYzo5ODUKKyM6IGJpc2VjdC5jOjEwMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vIHRlc3RhYmxlIGNvbW1pdCBmb3VuZC5cbiIKICJNYXliZSB5b3Ugc3RhcnRlZCB3aXRoIGJhZCBwYXRoIHBhcmFtZXRlcnM/XG4iCiBtc2dzdHIgIiIKIAotIzogYmlzZWN0LmM6MTAwNAorIzogYmlzZWN0LmM6MTA1NwogIywgYy1mb3JtYXQKIG1zZ2lkICIocm91Z2hseSAlZCBzdGVwKSIKIG1zZ2lkX3BsdXJhbCAiKHJvdWdobHkgJWQgc3RlcHMpIgpAQCAtOTc4LDQ5ICsxNjEwLDQ5IEBACiAjLiBUUkFOU0xBVE9SUzogdGhlIGxhc3QgJXMgd2lsbCBiZSByZXBsYWNlZCB3aXRoICIocm91Z2hseSAlZAogIy4gc3RlcHMpIiB0cmFuc2xhdGlvbi4KICMuCi0jOiBiaXNlY3QuYzoxMDEwCisjOiBiaXNlY3QuYzoxMDYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJpc2VjdGluZzogJWQgcmV2aXNpb24gbGVmdCB0byB0ZXN0IGFmdGVyIHRoaXMgJXNcbiIKIG1zZ2lkX3BsdXJhbCAiQmlzZWN0aW5nOiAlZCByZXZpc2lvbnMgbGVmdCB0byB0ZXN0IGFmdGVyIHRoaXMgJXNcbiIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGJsYW1lLmM6MTc4NworIzogYmxhbWUuYzoyNzAwCiBtc2dpZCAiLS1jb250ZW50cyBhbmQgLS1yZXZlcnNlIGRvIG5vdCBibGVuZCB3ZWxsLiIKIG1zZ3N0ciAiIgogCi0jOiBibGFtZS5jOjE4MDEKKyM6IGJsYW1lLmM6MjcxNAogbXNnaWQgImNhbm5vdCB1c2UgLS1jb250ZW50cyB3aXRoIGZpbmFsIGNvbW1pdCBvYmplY3QgbmFtZSIKIG1zZ3N0ciAiIgogCi0jOiBibGFtZS5jOjE4MjIKKyM6IGJsYW1lLmM6MjczNQogbXNnaWQgIi0tcmV2ZXJzZSBhbmQgLS1maXJzdC1wYXJlbnQgdG9nZXRoZXIgcmVxdWlyZSBzcGVjaWZpZWQgbGF0ZXN0IGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBibGFtZS5jOjE4MzEgYnVuZGxlLmM6MTYyIHJlZi1maWx0ZXIuYzoyMDQ2IHNlcXVlbmNlci5jOjE5NjMKLSM6IHNlcXVlbmNlci5jOjQwMDIgYnVpbHRpbi9jb21taXQuYzoxMDAxIGJ1aWx0aW4vbG9nLmM6Mzc3IGJ1aWx0aW4vbG9nLmM6OTMyCi0jOiBidWlsdGluL2xvZy5jOjE0MDcgYnVpbHRpbi9sb2cuYzoxNzgzIGJ1aWx0aW4vbG9nLmM6MjA3MiBidWlsdGluL21lcmdlLmM6NDA2Ci0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMzcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTUyCisjOiBibGFtZS5jOjI3NDQgYnVuZGxlLmM6MTY3IHJlZi1maWx0ZXIuYzoyMjAzIHJlbW90ZS5jOjE5NDIgc2VxdWVuY2VyLmM6MjAwNgorIzogc2VxdWVuY2VyLmM6NDM1OCBzdWJtb2R1bGUuYzo4NDcgYnVpbHRpbi9jb21taXQuYzoxMDQ1IGJ1aWx0aW4vbG9nLmM6Mzg4CisjOiBidWlsdGluL2xvZy5jOjk5MSBidWlsdGluL2xvZy5jOjE1MjAgYnVpbHRpbi9sb2cuYzoxOTI1IGJ1aWx0aW4vbG9nLmM6MjIxNQorIzogYnVpbHRpbi9tZXJnZS5jOjQxMiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkwCiAjOiBidWlsdGluL3Nob3J0bG9nLmM6MTkyCiBtc2dpZCAicmV2aXNpb24gd2FsayBzZXR1cCBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogYmxhbWUuYzoxODQ5CisjOiBibGFtZS5jOjI3NjIKIG1zZ2lkICIiCiAiLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IHRvZ2V0aGVyIHJlcXVpcmUgcmFuZ2UgYWxvbmcgZmlyc3QtcGFyZW50IGNoYWluIgogbXNnc3RyICIiCiAKLSM6IGJsYW1lLmM6MTg2MAorIzogYmxhbWUuYzoyNzczCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggcGF0aCAlcyBpbiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBibGFtZS5jOjE4NzEKKyM6IGJsYW1lLmM6Mjc4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBibG9iICVzIGZvciBwYXRoICVzIgogbXNnc3RyICIiCiAKLSM6IGJyYW5jaC5jOjUyCisjOiBicmFuY2guYzo1MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC0xMDI5LDg1ICsxNjYxLDg1IEBACiAiXCJnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvPSVzJXMlc1wiLiIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzo2NgorIzogYnJhbmNoLmM6NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IHNldHRpbmcgYnJhbmNoICVzIGFzIGl0cyBvd24gdXBzdHJlYW0uIgogbXNnc3RyICIiCiAKLSM6IGJyYW5jaC5jOjkyCisjOiBicmFuY2guYzo5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIGJyYW5jaCAnJXMnIGZyb20gJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgIiIKIAotIzogYnJhbmNoLmM6OTMKKyM6IGJyYW5jaC5jOjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgYnJhbmNoICclcycgZnJvbSAnJXMnLiIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzo5NworIzogYnJhbmNoLmM6OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIGJyYW5jaCAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzo5OAorIzogYnJhbmNoLmM6OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIGJyYW5jaCAnJXMnLiIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzoxMDMKKyM6IGJyYW5jaC5jOjEwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIHJlZiAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzoxMDQKKyM6IGJyYW5jaC5jOjEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIHJlZiAnJXMnLiIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzoxMDgKKyM6IGJyYW5jaC5jOjEwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycgYnkgcmViYXNpbmcuIgogbXNnc3RyICIiCiAKLSM6IGJyYW5jaC5jOjEwOQorIzogYnJhbmNoLmM6MTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCByZWYgJyVzJy4iCiBtc2dzdHIgIiIKIAotIzogYnJhbmNoLmM6MTE4CisjOiBicmFuY2guYzoxMTkKIG1zZ2lkICJVbmFibGUgdG8gd3JpdGUgdXBzdHJlYW0gYnJhbmNoIGNvbmZpZ3VyYXRpb24iCiBtc2dzdHIgIiIKIAotIzogYnJhbmNoLmM6MTU1CisjOiBicmFuY2guYzoxNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IHRyYWNraW5nOiBhbWJpZ3VvdXMgaW5mb3JtYXRpb24gZm9yIHJlZiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzoxODgKKyM6IGJyYW5jaC5jOjE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIGJyYW5jaCBuYW1lLiIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzoyMDcKKyM6IGJyYW5jaC5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJBIGJyYW5jaCBuYW1lZCAnJXMnIGFscmVhZHkgZXhpc3RzLiIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzoyMTIKKyM6IGJyYW5jaC5jOjIxMwogbXNnaWQgIkNhbm5vdCBmb3JjZSB1cGRhdGUgdGhlIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzoyMzIKKyM6IGJyYW5jaC5jOjIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgc2V0dXAgdHJhY2tpbmcgaW5mb3JtYXRpb247IHN0YXJ0aW5nIHBvaW50ICclcycgaXMgbm90IGEgYnJhbmNoLiIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzoyMzQKKyM6IGJyYW5jaC5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgcmVxdWVzdGVkIHVwc3RyZWFtIGJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICIiCiAKLSM6IGJyYW5jaC5jOjIzNgorIzogYnJhbmNoLmM6MjM3CiBtc2dpZCAiIgogIlxuIgogIklmIHlvdSBhcmUgcGxhbm5pbmcgb24gYmFzaW5nIHlvdXIgd29yayBvbiBhbiB1cHN0cmVhbVxuIgpAQCAtMTExOSwyNyArMTc1MSwyNyBAQAogIlwiZ2l0IHB1c2ggLXVcIiB0byBzZXQgdGhlIHVwc3RyZWFtIGNvbmZpZyBhcyB5b3UgcHVzaC4iCiBtc2dzdHIgIiIKIAotIzogYnJhbmNoLmM6Mjc5CisjOiBicmFuY2guYzoyODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgb2JqZWN0IG5hbWU6ICclcycuIgogbXNnc3RyICIiCiAKLSM6IGJyYW5jaC5jOjI5OQorIzogYnJhbmNoLmM6MzAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFtYmlndW91cyBvYmplY3QgbmFtZTogJyVzJy4iCiBtc2dzdHIgIiIKIAotIzogYnJhbmNoLmM6MzA0CisjOiBicmFuY2guYzozMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgYnJhbmNoIHBvaW50OiAnJXMnLiIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzozNTgKKyM6IGJyYW5jaC5jOjM2NAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFscmVhZHkgY2hlY2tlZCBvdXQgYXQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBicmFuY2guYzozODEKKyM6IGJyYW5jaC5jOjM4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJIRUFEIG9mIHdvcmtpbmcgdHJlZSAlcyBpcyBub3QgdXBkYXRlZCIKIG1zZ3N0ciAiIgpAQCAtMTE1NCw4NiArMTc4Niw4OSBAQAogbXNnaWQgInVucmVjb2duaXplZCBoZWFkZXI6ICVzJXMgKCVkKSIKIG1zZ3N0ciAiIgogCi0jOiBidW5kbGUuYzo5MCByZXJlcmUuYzo0ODAgcmVyZXJlLmM6NjkwIHNlcXVlbmNlci5jOjIxODIgc2VxdWVuY2VyLmM6MjcyMgotIzogYnVpbHRpbi9jb21taXQuYzo3NzQKKyM6IGJ1bmRsZS5jOjkwIHJlcmVyZS5jOjQ4MCByZXJlcmUuYzo2OTAgc2VxdWVuY2VyLmM6MjI1OCBzZXF1ZW5jZXIuYzozMDE2CisjOiBidWlsdGluL2NvbW1pdC5jOjgxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1bmRsZS5jOjE0MQorIzogYnVuZGxlLmM6MTQzCiBtc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyB0aGVzZSBwcmVyZXF1aXNpdGUgY29tbWl0czoiCiBtc2dzdHIgIiIKIAotIzogYnVuZGxlLmM6MTkyCisjOiBidW5kbGUuYzoxNDYKK21zZ2lkICJuZWVkIGEgcmVwb3NpdG9yeSB0byB2ZXJpZnkgYSBidW5kbGUiCittc2dzdHIgIiIKKworIzogYnVuZGxlLmM6MTk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBidW5kbGUgY29udGFpbnMgdGhpcyByZWY6IgogbXNnaWRfcGx1cmFsICJUaGUgYnVuZGxlIGNvbnRhaW5zIHRoZXNlICVkIHJlZnM6IgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogYnVuZGxlLmM6MTk5CisjOiBidW5kbGUuYzoyMDQKIG1zZ2lkICJUaGUgYnVuZGxlIHJlY29yZHMgYSBjb21wbGV0ZSBoaXN0b3J5LiIKIG1zZ3N0ciAiIgogCi0jOiBidW5kbGUuYzoyMDEKKyM6IGJ1bmRsZS5jOjIwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoaXMgcmVmOiIKIG1zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSByZXF1aXJlcyB0aGVzZSAlZCByZWZzOiIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGJ1bmRsZS5jOjI2NworIzogYnVuZGxlLmM6MjczCiBtc2dpZCAidW5hYmxlIHRvIGR1cCBidW5kbGUgZGVzY3JpcHRvciIKIG1zZ3N0ciAiIgogCi0jOiBidW5kbGUuYzoyNzQKKyM6IGJ1bmRsZS5jOjI4MAogbXNnaWQgIkNvdWxkIG5vdCBzcGF3biBwYWNrLW9iamVjdHMiCiBtc2dzdHIgIiIKIAotIzogYnVuZGxlLmM6Mjg1CisjOiBidW5kbGUuYzoyOTEKIG1zZ2lkICJwYWNrLW9iamVjdHMgZGllZCIKIG1zZ3N0ciAiIgogCi0jOiBidW5kbGUuYzozMjcKKyM6IGJ1bmRsZS5jOjMzMwogbXNnaWQgInJldi1saXN0IGRpZWQiCiBtc2dzdHIgIiIKIAotIzogYnVuZGxlLmM6Mzc2CisjOiBidW5kbGUuYzozODIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmICclcycgaXMgZXhjbHVkZWQgYnkgdGhlIHJldi1saXN0IG9wdGlvbnMiCiBtc2dzdHIgIiIKIAotIzogYnVuZGxlLmM6NDU2IGJ1aWx0aW4vbG9nLmM6MTkyIGJ1aWx0aW4vbG9nLmM6MTY4OCBidWlsdGluL3Nob3J0bG9nLmM6MzA0CisjOiBidW5kbGUuYzo0NjEgYnVpbHRpbi9sb2cuYzoyMDMgYnVpbHRpbi9sb2cuYzoxODE0IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidW5kbGUuYzo0NjQKKyM6IGJ1bmRsZS5jOjQ2OQogbXNnaWQgIlJlZnVzaW5nIHRvIGNyZWF0ZSBlbXB0eSBidW5kbGUuIgogbXNnc3RyICIiCiAKLSM6IGJ1bmRsZS5jOjQ3NAorIzogYnVuZGxlLmM6NDc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjcmVhdGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidW5kbGUuYzo0OTgKKyM6IGJ1bmRsZS5jOjUwNAogbXNnaWQgImluZGV4LXBhY2sgZGllZCIKIG1zZ3N0ciAiIgogCi0jOiBjb2xvci5jOjI5NgorIzogY29sb3IuYzozMjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb2xvciB2YWx1ZTogJS4qcyIKIG1zZ3N0ciAiIgogCi0jOiBjb21taXQuYzo1MCBzZXF1ZW5jZXIuYzoyNTI4IGJ1aWx0aW4vYW0uYzozNzAgYnVpbHRpbi9hbS5jOjQxNAotIzogYnVpbHRpbi9hbS5jOjEzOTAgYnVpbHRpbi9hbS5jOjIwMjUgYnVpbHRpbi9yZXBsYWNlLmM6Mzc2Ci0jOiBidWlsdGluL3JlcGxhY2UuYzo0NDgKKyM6IGNvbW1pdC5jOjUxIHNlcXVlbmNlci5jOjI3MTkgYnVpbHRpbi9hbS5jOjM1OSBidWlsdGluL2FtLmM6NDAzCisjOiBidWlsdGluL2FtLmM6MTM3MSBidWlsdGluL2FtLmM6MjAxNCBidWlsdGluL3JlcGxhY2UuYzo0NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbW1pdC5jOjUyCisjOiBjb21taXQuYzo1MwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyAlcyBpcyBub3QgYSBjb21taXQhIgogbXNnc3RyICIiCkBAIC0xMjUwLDEyMiArMTg4NSwyODkgQEAKICJcImdpdCBjb25maWcgYWR2aWNlLmdyYWZ0RmlsZURlcHJlY2F0ZWQgZmFsc2VcIiIKIG1zZ3N0ciAiIgogCi0jOiBjb21taXQuYzoxMTE1CisjOiBjb21taXQuYzoxMTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBoYXMgYW4gdW50cnVzdGVkIEdQRyBzaWduYXR1cmUsIGFsbGVnZWRseSBieSAlcy4iCiBtc2dzdHIgIiIKIAotIzogY29tbWl0LmM6MTExOAorIzogY29tbWl0LmM6MTE1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaGFzIGEgYmFkIEdQRyBzaWduYXR1cmUgYWxsZWdlZGx5IGJ5ICVzLiIKIG1zZ3N0ciAiIgogCi0jOiBjb21taXQuYzoxMTIxCisjOiBjb21taXQuYzoxMTYwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIGEgR1BHIHNpZ25hdHVyZS4iCiBtc2dzdHIgIiIKIAotIzogY29tbWl0LmM6MTEyNAorIzogY29tbWl0LmM6MTE2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaGFzIGEgZ29vZCBHUEcgc2lnbmF0dXJlIGJ5ICVzXG4iCiBtc2dzdHIgIiIKIAotIzogY29tbWl0LmM6MTM3OAorIzogY29tbWl0LmM6MTQxNwogbXNnaWQgIiIKICJXYXJuaW5nOiBjb21taXQgbWVzc2FnZSBkaWQgbm90IGNvbmZvcm0gdG8gVVRGLTguXG4iCiAiWW91IG1heSB3YW50IHRvIGFtZW5kIGl0IGFmdGVyIGZpeGluZyB0aGUgbWVzc2FnZSwgb3Igc2V0IHRoZSBjb25maWdcbiIKICJ2YXJpYWJsZSBpMThuLmNvbW1pdGVuY29kaW5nIHRvIHRoZSBlbmNvZGluZyB5b3VyIHByb2plY3QgdXNlcy5cbiIKIG1zZ3N0ciAiIgogCi0jOiBjb21taXQtZ3JhcGguYzoxMDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ3JhcGggZmlsZSAlcyBpcyB0b28gc21hbGwiCi1tc2dzdHIgIiIKLQotIzogY29tbWl0LWdyYXBoLmM6MTE1Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCi1tc2dzdHIgIiIKLQogIzogY29tbWl0LWdyYXBoLmM6MTIyCi0jLCBjLWZvcm1hdAotbXNnaWQgImdyYXBoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKLW1zZ3N0ciAiIgotCi0jOiBjb21taXQtZ3JhcGguYzoxMjkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaGFzaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCi1tc2dzdHIgIiIKLQotIzogY29tbWl0LWdyYXBoLmM6MTUzCi0jLCBjLWZvcm1hdAotbXNnaWQgImltcHJvcGVyIGNodW5rIG9mZnNldCAlMDh4JTA4eCIKK21zZ2lkICJjb21taXQtZ3JhcGggZmlsZSBpcyB0b28gc21hbGwiCiBtc2dzdHIgIiIKIAogIzogY29tbWl0LWdyYXBoLmM6MTg5CiAjLCBjLWZvcm1hdAotbXNnaWQgImNodW5rIGlkICUwOHggYXBwZWFycyBtdWx0aXBsZSB0aW1lcyIKK21zZ2lkICJjb21taXQtZ3JhcGggc2lnbmF0dXJlICVYIGRvZXMgbm90IG1hdGNoIHNpZ25hdHVyZSAlWCIKIG1zZ3N0ciAiIgogCi0jOiBjb21taXQtZ3JhcGguYzozMDgKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MjI2Cittc2dpZCAiY29tbWl0LWdyYXBoIGNodW5rIGxvb2t1cCB0YWJsZSBlbnRyeSBtaXNzaW5nOyBmaWxlIG1heSBiZSBpbmNvbXBsZXRlIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaW1wcm9wZXIgY2h1bmsgb2Zmc2V0ICUwOHglMDh4IgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjI4MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggY2h1bmsgaWQgJTA4eCBhcHBlYXJzIG11bHRpcGxlIHRpbWVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjM0MworbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgbm8gYmFzZSBncmFwaHMgY2h1bmsiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MzUzCittc2dpZCAiY29tbWl0LWdyYXBoIGNoYWluIGRvZXMgbm90IG1hdGNoIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdC1ncmFwaCBjaGFpbjogbGluZSAnJXMnIG5vdCBhIGhhc2giCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6NDI1Cittc2dpZCAidW5hYmxlIHRvIGZpbmQgYWxsIGNvbW1pdC1ncmFwaCBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzo1NTggY29tbWl0LWdyYXBoLmM6NjE4Cittc2dpZCAiaW52YWxpZCBjb21taXQgcG9zaXRpb24uIGNvbW1pdC1ncmFwaCBpcyBsaWtlbHkgY29ycnVwdCIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzo1NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGZpbmQgY29tbWl0ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjYxNyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2NTIKKyM6IGNvbW1pdC1ncmFwaC5jOjg1MiBidWlsdGluL2FtLmM6MTI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0ICVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwMTEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBnZXQgdHlwZSBvZiBvYmplY3QgJXMiCiBtc2dzdHIgIiIKIAotIzogY29tbWl0LWdyYXBoLmM6NjUxCi1tc2dpZCAiQW5ub3RhdGluZyBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNDMKK21zZ2lkICJMb2FkaW5nIGtub3duIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgogbXNnc3RyICIiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjY5MQorIzogY29tbWl0LWdyYXBoLmM6MTA2MAorbXNnaWQgIkV4cGFuZGluZyByZWFjaGFibGUgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTA3OQorbXNnaWQgIkNsZWFyaW5nIGNvbW1pdCBtYXJrcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTA5OAogbXNnaWQgIkNvbXB1dGluZyBjb21taXQgZ3JhcGggZ2VuZXJhdGlvbiBudW1iZXJzIgogbXNnc3RyICIiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgwMyBjb21taXQtZ3JhcGguYzo4MjYgY29tbWl0LWdyYXBoLmM6ODUyCi1tc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGgiCi1tc2dzdHIgIiIKKyM6IGNvbW1pdC1ncmFwaC5jOjExNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggaW4gJWQgcGFjayIKK21zZ2lkX3BsdXJhbCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggaW4gJWQgcGFja3MiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgogCi0jOiBjb21taXQtZ3JhcGguYzo4MTIKKyM6IGNvbW1pdC1ncmFwaC5jOjExODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgYWRkaW5nIHBhY2sgJXMiCiBtc2dzdHIgIiIKIAotIzogY29tbWl0LWdyYXBoLmM6ODE0CisjOiBjb21taXQtZ3JhcGguYzoxMTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIG9wZW5pbmcgaW5kZXggZm9yICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjg2OAorIzogY29tbWl0LWdyYXBoLmM6MTIxNAogIywgYy1mb3JtYXQKLW1zZ2lkICJ0aGUgY29tbWl0IGdyYXBoIGZvcm1hdCBjYW5ub3Qgd3JpdGUgJWQgY29tbWl0cyIKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBmcm9tICVkIHJlZiIKK21zZ2lkX3BsdXJhbCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggZnJvbSAlZCByZWZzIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdCBvYmplY3QgaWQ6ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjg5NQotbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgdG8gd3JpdGUgZ3JhcGgiCisjOiBjb21taXQtZ3JhcGguYzoxMjQ5Cittc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggYW1vbmcgcGFja2VkIG9iamVjdHMiCiBtc2dzdHIgIiIKIAotIzogY29tbWl0LWdyYXBoLmM6OTAyIG1pZHguYzo3NjkKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNjQKK21zZ2lkICJDb3VudGluZyBkaXN0aW5jdCBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoxMjk0Cittc2dpZCAiRmluZGluZyBleHRyYSBlZGdlcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTM0MAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBjb3JyZWN0IG51bWJlciBvZiBiYXNlIGdyYXBoIGlkcyIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoxMzczIG1pZHguYzo4MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsZWFkaW5nIGRpcmVjdG9yaWVzIG9mICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjEwMDIKKyM6IGNvbW1pdC1ncmFwaC5jOjEzODUgYnVpbHRpbi9pbmRleC1wYWNrLmM6MzA2IGJ1aWx0aW4vcmVwYWNrLmM6MjQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIldyaXRpbmcgb3V0IGNvbW1pdCBncmFwaCBpbiAlZCBwYXNzIgorbXNnaWRfcGx1cmFsICJXcml0aW5nIG91dCBjb21taXQgZ3JhcGggaW4gJWQgcGFzc2VzIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTQ4NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGNvbW1pdC1ncmFwaCBjaGFpbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0OTgKK21zZ2lkICJmYWlsZWQgdG8gcmVuYW1lIGJhc2UgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTUxOAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgdGVtcG9yYXJ5IGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2MzEKK21zZ2lkICJTY2FubmluZyBtZXJnZWQgY29tbWl0cyIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoxNjQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZHVwbGljYXRlIGNvbW1pdCBpZCAlcyIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoxNjY1Cittc2dpZCAiTWVyZ2luZyBjb21taXQtZ3JhcGgiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTg0NAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGUgY29tbWl0IGdyYXBoIGZvcm1hdCBjYW5ub3Qgd3JpdGUgJWQgY29tbWl0cyIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoxODU1Cittc2dpZCAidG9vIG1hbnkgY29tbWl0cyB0byB3cml0ZSBncmFwaCIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoxOTQ0CiBtc2dpZCAidGhlIGNvbW1pdC1ncmFwaCBmaWxlIGhhcyBpbmNvcnJlY3QgY2hlY2tzdW0gYW5kIGlzIGxpa2VseSBjb3JydXB0IgogbXNnc3RyICIiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjEwNDYKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGhhcyBpbmNvcnJlY3QgT0lEIG9yZGVyOiAlcyB0aGVuICVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NjQgY29tbWl0LWdyYXBoLmM6MTk3OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzIGluY29ycmVjdCBmYW5vdXQgdmFsdWU6IGZhbm91dFslZF0gPSAldSAhPSAldSIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoxOTcxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSBjb21taXQgJXMgZnJvbSBjb21taXQtZ3JhcGgiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MTk4OQogbXNnaWQgIlZlcmlmeWluZyBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKIG1zZ3N0ciAiIgogCi0jOiBjb21wYXQvb2JzdGFjay5jOjQwNSBjb21wYXQvb2JzdGFjay5jOjQwNworIzogY29tbWl0LWdyYXBoLmM6MjAwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgY29tbWl0ICVzIGZyb20gb2JqZWN0IGRhdGFiYXNlIGZvciBjb21taXQtZ3JhcGgiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MjAxMAorIywgYy1mb3JtYXQKK21zZ2lkICJyb290IHRyZWUgT0lEIGZvciBjb21taXQgJXMgaW4gY29tbWl0LWdyYXBoIGlzICVzICE9ICVzIgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBsaXN0IGZvciBjb21taXQgJXMgaXMgdG9vIGxvbmciCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MjAyOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggcGFyZW50IGZvciAlcyBpcyAlcyAhPSAlcyIKK21zZ3N0ciAiIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgbGlzdCBmb3IgY29tbWl0ICVzIHRlcm1pbmF0ZXMgZWFybHkiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29tbWl0LWdyYXBoIGhhcyBnZW5lcmF0aW9uIG51bWJlciB6ZXJvIGZvciBjb21taXQgJXMsIGJ1dCBub24temVybyBlbHNld2hlcmUiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29tbWl0LWdyYXBoIGhhcyBub24temVybyBnZW5lcmF0aW9uIG51bWJlciBmb3IgY29tbWl0ICVzLCBidXQgemVybyBlbHNld2hlcmUiCittc2dzdHIgIiIKKworIzogY29tbWl0LWdyYXBoLmM6MjA2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggZ2VuZXJhdGlvbiBmb3IgY29tbWl0ICVzIGlzICV1ICE9ICV1IgorbXNnc3RyICIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0IGRhdGUgZm9yIGNvbW1pdCAlcyBpbiBjb21taXQtZ3JhcGggaXMgJTxQUkl1TUFYPiAhPSAlPFBSSXVNQVg+IgorbXNnc3RyICIiCisKKyM6IGNvbXBhdC9vYnN0YWNrLmM6NDA2IGNvbXBhdC9vYnN0YWNrLmM6NDA4CiBtc2dpZCAibWVtb3J5IGV4aGF1c3RlZCIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoxMjMKKyM6IGNvbmZpZy5jOjEyNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhjZWVkZWQgbWF4aW11bSBpbmNsdWRlIGRlcHRoICglZCkgd2hpbGUgaW5jbHVkaW5nXG4iCkBAIC0xMzc1LDI5NCArMjE3NywyODkgQEAKICJUaGlzIG1pZ2h0IGJlIGR1ZSB0byBjaXJjdWxhciBpbmNsdWRlcy4iCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MTM5CisjOiBjb25maWcuYzoxNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGV4cGFuZCBpbmNsdWRlIHBhdGggJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoxNTAKKyM6IGNvbmZpZy5jOjE1MQogbXNnaWQgInJlbGF0aXZlIGNvbmZpZyBpbmNsdWRlcyBtdXN0IGNvbWUgZnJvbSBmaWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoxOTAKKyM6IGNvbmZpZy5jOjE5NwogbXNnaWQgInJlbGF0aXZlIGNvbmZpZyBpbmNsdWRlIGNvbmRpdGlvbmFscyBtdXN0IGNvbWUgZnJvbSBmaWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzozNDgKKyM6IGNvbmZpZy5jOjM3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJrZXkgZG9lcyBub3QgY29udGFpbiBhIHNlY3Rpb246ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjM1NAorIzogY29uZmlnLmM6MzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgImtleSBkb2VzIG5vdCBjb250YWluIHZhcmlhYmxlIG5hbWU6ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjM3OCBzZXF1ZW5jZXIuYzoyMjk2CisjOiBjb25maWcuYzo0MDYgc2VxdWVuY2VyLmM6MjQ0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGtleTogJXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6Mzg0CisjOiBjb25maWcuYzo0MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBrZXkgKG5ld2xpbmUpOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzo0MjAgY29uZmlnLmM6NDMyCisjOiBjb25maWcuYzo0NDggY29uZmlnLmM6NDYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJvZ3VzIGNvbmZpZyBwYXJhbWV0ZXI6ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjQ2NworIzogY29uZmlnLmM6NDk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImJvZ3VzIGZvcm1hdCBpbiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzo3OTMKKyM6IGNvbmZpZy5jOjgyMQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gYmxvYiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzo3OTcKKyM6IGNvbmZpZy5jOjgyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gZmlsZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzo4MDEKKyM6IGNvbmZpZy5jOjgyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6ODA1CisjOiBjb25maWcuYzo4MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIHN1Ym1vZHVsZS1ibG9iICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjgwOQorIzogY29uZmlnLmM6ODM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBjb21tYW5kIGxpbmUgJXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6ODEzCisjOiBjb25maWcuYzo4NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjk1MgorIzogY29uZmlnLmM6OTc4CiBtc2dpZCAib3V0IG9mIHJhbmdlIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjk1MgorIzogY29uZmlnLmM6OTc4CiBtc2dpZCAiaW52YWxpZCB1bml0IgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjk1OAorIzogY29uZmlnLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzo5NjMKKyM6IGNvbmZpZy5jOjk5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBibG9iICVzOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzo5NjYKKyM6IGNvbmZpZy5jOjEwMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gZmlsZSAlczogJXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6OTY5CisjOiBjb25maWcuYzoxMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN0YW5kYXJkIGlucHV0OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzo5NzIKKyM6IGNvbmZpZy5jOjEwMDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gc3VibW9kdWxlLWJsb2IgJXM6ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjk3NQorIzogY29uZmlnLmM6MTAxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBjb21tYW5kIGxpbmUgJXM6ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjk3OAorIzogY29uZmlnLmM6MTAxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiAlczogJXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MTA3MworIzogY29uZmlnLmM6MTEwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZXhwYW5kIHVzZXIgZGlyIGluOiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjEwODIKKyM6IGNvbmZpZy5jOjExMTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBmb3IgJyVzJyBpcyBub3QgYSB2YWxpZCB0aW1lc3RhbXAiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MTE3MworIzogY29uZmlnLmM6MTIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJhYmJyZXYgbGVuZ3RoIG91dCBvZiByYW5nZTogJWQiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MTE4NyBjb25maWcuYzoxMTk4CisjOiBjb25maWcuYzoxMjIyIGNvbmZpZy5jOjEyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHpsaWIgY29tcHJlc3Npb24gbGV2ZWwgJWQiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MTI5MAorIzogY29uZmlnLmM6MTMyNQogbXNnaWQgImNvcmUuY29tbWVudENoYXIgc2hvdWxkIG9ubHkgYmUgb25lIGNoYXJhY3RlciIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoxMzIzCisjOiBjb25maWcuYzoxMzU4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbW9kZSBmb3Igb2JqZWN0IGNyZWF0aW9uOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoxMzk1CisjOiBjb25maWcuYzoxNDMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCB2YWx1ZSBmb3IgJXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MTQyMQorIzogY29uZmlnLmM6MTQ1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgdmFsdWUgZm9yICVzOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoxNDIyCisjOiBjb25maWcuYzoxNDU3CiBtc2dpZCAibXVzdCBiZSBvbmUgb2Ygbm90aGluZywgbWF0Y2hpbmcsIHNpbXBsZSwgdXBzdHJlYW0gb3IgY3VycmVudCIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoxNDgxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5MQorIzogY29uZmlnLmM6MTUxOCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2sgY29tcHJlc3Npb24gbGV2ZWwgJWQiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MTYwMgorIzogY29uZmlnLmM6MTYzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbG9hZCBjb25maWcgYmxvYiBvYmplY3QgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoxNjA1CisjOiBjb25maWcuYzoxNjQyCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSAnJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgYmxvYiIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoxNjIyCisjOiBjb25maWcuYzoxNjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIGNvbmZpZyBibG9iICclcyciCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MTY1MgorIzogY29uZmlnLmM6MTY4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcGFyc2UgJXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MTcwNQorIzogY29uZmlnLmM6MTc0MwogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21tYW5kLWxpbmUgY29uZmlnIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjIwMzcKKyM6IGNvbmZpZy5jOjIwOTcKIG1zZ2lkICJ1bmtub3duIGVycm9yIG9jY3VycmVkIHdoaWxlIHJlYWRpbmcgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MjIwNworIzogY29uZmlnLmM6MjI2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkICVzOiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjIyNTAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5rbm93biBjb3JlLnVudHJhY2tlZENhY2hlIHZhbHVlICclcyc7IHVzaW5nICdrZWVwJyBkZWZhdWx0IHZhbHVlIgotbXNnc3RyICIiCi0KLSM6IGNvbmZpZy5jOjIyNzYKKyM6IGNvbmZpZy5jOjIzMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAic3BsaXRJbmRleC5tYXhQZXJjZW50Q2hhbmdlIHZhbHVlICclZCcgc2hvdWxkIGJlIGJldHdlZW4gMCBhbmQgMTAwIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjIzMjIKKyM6IGNvbmZpZy5jOjIzNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICclcycgZnJvbSBjb21tYW5kLWxpbmUgY29uZmlnIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjIzMjQKKyM6IGNvbmZpZy5jOjIzNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyB2YXJpYWJsZSAnJXMnIGluIGZpbGUgJyVzJyBhdCBsaW5lICVkIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjI0MDUKKyM6IGNvbmZpZy5jOjI0NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzZWN0aW9uIG5hbWUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoyNDM3CisjOiBjb25maWcuYzoyNDczCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGhhcyBtdWx0aXBsZSB2YWx1ZXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MjQ2NgorIzogY29uZmlnLmM6MjUwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgbmV3IGNvbmZpZ3VyYXRpb24gZmlsZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoyNzE3IGNvbmZpZy5jOjMwNDEKKyM6IGNvbmZpZy5jOjI3NTQgY29uZmlnLmM6MzA3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9jayBjb25maWcgZmlsZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoyNzI4CisjOiBjb25maWcuYzoyNzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9wZW5pbmcgJXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6Mjc2MyBidWlsdGluL2NvbmZpZy5jOjMyNworIzogY29uZmlnLmM6MjgwMCBidWlsdGluL2NvbmZpZy5jOjM0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHBhdHRlcm46ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjI3ODgKKyM6IGNvbmZpZy5jOjI4MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb25maWcgZmlsZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoyODAxIGNvbmZpZy5jOjMwNTQKKyM6IGNvbmZpZy5jOjI4MzggY29uZmlnLmM6MzA5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmc3RhdCBvbiAlcyBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MjgxMgorIzogY29uZmlnLmM6Mjg0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbW1hcCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjI4MjEgY29uZmlnLmM6MzA1OQorIzogY29uZmlnLmM6Mjg1OCBjb25maWcuYzozMDk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNobW9kIG9uICVzIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoyOTA2IGNvbmZpZy5jOjMxNTYKKyM6IGNvbmZpZy5jOjI5NDMgY29uZmlnLmM6MzE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29uZmlnIGZpbGUgJXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6Mjk0MAorIzogY29uZmlnLmM6Mjk3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc2V0ICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoyOTQyIGJ1aWx0aW4vcmVtb3RlLmM6NzgyCisjOiBjb25maWcuYzoyOTc5IGJ1aWx0aW4vcmVtb3RlLmM6NjU1IGJ1aWx0aW4vcmVtb3RlLmM6ODQ5IGJ1aWx0aW4vcmVtb3RlLmM6ODU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB1bnNldCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjMwMzIKKyM6IGNvbmZpZy5jOjMwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzZWN0aW9uIG5hbWU6ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjMxOTkKKyM6IGNvbmZpZy5jOjMyMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyB2YWx1ZSBmb3IgJyVzJyIKIG1zZ3N0ciAiIgpAQCAtMTcxMSw1NyArMjUwOCw1MiBAQAogbXNnaWQgInJlcG9zaXRvcnkgb24gdGhlIG90aGVyIGVuZCBjYW5ub3QgYmUgc2hhbGxvdyIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6MzEwIGZldGNoLXBhY2suYzoxODIgYnVpbHRpbi9hcmNoaXZlLmM6NjMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicmVtb3RlIGVycm9yOiAlcyIKLW1zZ3N0ciAiIgotCi0jOiBjb25uZWN0LmM6MzE2CisjOiBjb25uZWN0LmM6MzEzCiBtc2dpZCAiaW52YWxpZCBwYWNrZXQiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjMzNgorIzogY29ubmVjdC5jOjMzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogdW5leHBlY3RlZCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGNvbm5lY3QuYzo0NDQKKyM6IGNvbm5lY3QuYzo0NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBscy1yZWZzIHJlc3BvbnNlOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6NDQ4CisjOiBjb25uZWN0LmM6NDQ1CiBtc2dpZCAiZXhwZWN0ZWQgZmx1c2ggYWZ0ZXIgcmVmIGxpc3RpbmciCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjU0NworIzogY29ubmVjdC5jOjU0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCAnJXMnIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjU5OAorIzogY29ubmVjdC5jOjU5NQogbXNnaWQgInVuYWJsZSB0byBzZXQgU09fS0VFUEFMSVZFIG9uIHNvY2tldCIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6NjM4IGNvbm5lY3QuYzo3MDEKKyM6IGNvbm5lY3QuYzo2MzUgY29ubmVjdC5jOjY5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJMb29raW5nIHVwICVzIC4uLiAiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjY0MgorIzogY29ubmVjdC5jOjYzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbG9vayB1cCAlcyAocG9ydCAlcykgKCVzKSIKIG1zZ3N0ciAiIgogCiAjLiBUUkFOU0xBVE9SUzogdGhpcyBpcyB0aGUgZW5kIG9mICJMb29raW5nIHVwICVzIC4uLiAiCi0jOiBjb25uZWN0LmM6NjQ2IGNvbm5lY3QuYzo3MTcKKyM6IGNvbm5lY3QuYzo2NDMgY29ubmVjdC5jOjcxNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZG9uZS5cbiIKICJDb25uZWN0aW5nIHRvICVzIChwb3J0ICVzKSAuLi4gIgogbXNnc3RyICIiCiAKLSM6IGNvbm5lY3QuYzo2NjggY29ubmVjdC5jOjc0NQorIzogY29ubmVjdC5jOjY2NSBjb25uZWN0LmM6NzQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ1bmFibGUgdG8gY29ubmVjdCB0byAlczpcbiIKQEAgLTE3NjksNzMgKzI1NjEsNzMgQEAKIG1zZ3N0ciAiIgogCiAjLiBUUkFOU0xBVE9SUzogdGhpcyBpcyB0aGUgZW5kIG9mICJDb25uZWN0aW5nIHRvICVzIChwb3J0ICVzKSAuLi4gIgotIzogY29ubmVjdC5jOjY3NCBjb25uZWN0LmM6NzUxCisjOiBjb25uZWN0LmM6NjcxIGNvbm5lY3QuYzo3NDgKIG1zZ2lkICJkb25lLiIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6NzA1CisjOiBjb25uZWN0LmM6NzAyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzICglcykiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjcxMQorIzogY29ubmVjdC5jOjcwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHBvcnQgJXMiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjg0OCBjb25uZWN0LmM6MTE3NAorIzogY29ubmVjdC5jOjg0NSBjb25uZWN0LmM6MTE3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJzdHJhbmdlIGhvc3RuYW1lICclcycgYmxvY2tlZCIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6ODUwCisjOiBjb25uZWN0LmM6ODQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInN0cmFuZ2UgcG9ydCAnJXMnIGJsb2NrZWQiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjg2MAorIzogY29ubmVjdC5jOjg1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RhcnQgcHJveHkgJXMiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjkyNworIzogY29ubmVjdC5jOjkyOAogbXNnaWQgIm5vIHBhdGggc3BlY2lmaWVkOyBzZWUgJ2dpdCBoZWxwIHB1bGwnIGZvciB2YWxpZCB1cmwgc3ludGF4IgogbXNnc3RyICIiCiAKLSM6IGNvbm5lY3QuYzoxMTIyCisjOiBjb25uZWN0LmM6MTEyMwogbXNnaWQgInNzaCB2YXJpYW50ICdzaW1wbGUnIGRvZXMgbm90IHN1cHBvcnQgLTQiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjExMzQKKyM6IGNvbm5lY3QuYzoxMTM1CiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNiIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6MTE1MQorIzogY29ubmVjdC5jOjExNTIKIG1zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IHNldHRpbmcgcG9ydCIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6MTI2MgorIzogY29ubmVjdC5jOjEyNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBwYXRobmFtZSAnJXMnIGJsb2NrZWQiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjEzMDcKKyM6IGNvbm5lY3QuYzoxMzExCiBtc2dpZCAidW5hYmxlIHRvIGZvcmsiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdGVkLmM6NjggYnVpbHRpbi9mc2NrLmM6MjAyIGJ1aWx0aW4vcHJ1bmUuYzoxNDcKKyM6IGNvbm5lY3RlZC5jOjk4IGJ1aWx0aW4vZnNjay5jOjIwOCBidWlsdGluL3BydW5lLmM6NDMKIG1zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdGVkLmM6ODAKKyM6IGNvbm5lY3RlZC5jOjExMAogbXNnaWQgIkNvdWxkIG5vdCBydW4gJ2dpdCByZXYtbGlzdCciCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdGVkLmM6MTAwCisjOiBjb25uZWN0ZWQuYzoxMzAKIG1zZ2lkICJmYWlsZWQgd3JpdGUgdG8gcmV2LWxpc3QiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdGVkLmM6MTA3CisjOiBjb25uZWN0ZWQuYzoxMzcKIG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcmV2LWxpc3QncyBzdGRpbiIKIG1zZ3N0ciAiIgogCkBAIC0xODY4LDE0MSArMjY2MCwxNDEgQEAKICJUaGUgZmlsZSB3aWxsIGhhdmUgaXRzIG9yaWdpbmFsIGxpbmUgZW5kaW5ncyBpbiB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICIiCiAKLSM6IGNvbnZlcnQuYzoyODAKKyM6IGNvbnZlcnQuYzoyODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQk9NIGlzIHByb2hpYml0ZWQgaW4gJyVzJyBpZiBlbmNvZGVkIGFzICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbnZlcnQuYzoyODcKKyM6IGNvbnZlcnQuYzoyOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgotIlRoZSBmaWxlICclcycgY29udGFpbnMgYSBieXRlIG9yZGVyIG1hcmsgKEJPTSkuIFBsZWFzZSB1c2UgVVRGLSVzIGFzIHdvcmtpbmctIgotInRyZWUtZW5jb2RpbmcuIgorIlRoZSBmaWxlICclcycgY29udGFpbnMgYSBieXRlIG9yZGVyIG1hcmsgKEJPTSkuIFBsZWFzZSB1c2UgVVRGLSUuKnMgYXMgIgorIndvcmtpbmctdHJlZS1lbmNvZGluZy4iCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjMwNQorIzogY29udmVydC5jOjMwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJCT00gaXMgcmVxdWlyZWQgaW4gJyVzJyBpZiBlbmNvZGVkIGFzICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbnZlcnQuYzozMDcKKyM6IGNvbnZlcnQuYzozMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmaWxlICclcycgaXMgbWlzc2luZyBhIGJ5dGUgb3JkZXIgbWFyayAoQk9NKS4gUGxlYXNlIHVzZSBVVEYtJXNCRSBvciBVVEYtIgogIiVzTEUgKGRlcGVuZGluZyBvbiB0aGUgYnl0ZSBvcmRlcikgYXMgd29ya2luZy10cmVlLWVuY29kaW5nLiIKIG1zZ3N0ciAiIgogCi0jOiBjb252ZXJ0LmM6NDI1IGNvbnZlcnQuYzo0OTYKKyM6IGNvbnZlcnQuYzo0MTkgY29udmVydC5jOjQ5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZW5jb2RlICclcycgZnJvbSAlcyB0byAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb252ZXJ0LmM6NDY4CisjOiBjb252ZXJ0LmM6NDYyCiAjLCBjLWZvcm1hdAogbXNnaWQgImVuY29kaW5nICclcycgZnJvbSAlcyB0byAlcyBhbmQgYmFjayBpcyBub3QgdGhlIHNhbWUiCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjY3NAorIzogY29udmVydC5jOjY2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZm9yayB0byBydW4gZXh0ZXJuYWwgZmlsdGVyICclcyciCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjY5NAorIzogY29udmVydC5jOjY4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmVlZCB0aGUgaW5wdXQgdG8gZXh0ZXJuYWwgZmlsdGVyICclcyciCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjcwMQorIzogY29udmVydC5jOjY5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQgJWQiCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjczNiBjb252ZXJ0LmM6NzM5CisjOiBjb252ZXJ0LmM6NzMwIGNvbnZlcnQuYzo3MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZCBmcm9tIGV4dGVybmFsIGZpbHRlciAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBjb252ZXJ0LmM6NzQyIGNvbnZlcnQuYzo3OTYKKyM6IGNvbnZlcnQuYzo3MzYgY29udmVydC5jOjc5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjg0NAorIzogY29udmVydC5jOjgzOQogbXNnaWQgInVuZXhwZWN0ZWQgZmlsdGVyIHR5cGUiCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjg1NQorIzogY29udmVydC5jOjg1MAogbXNnaWQgInBhdGggbmFtZSB0b28gbG9uZyBmb3IgZXh0ZXJuYWwgZmlsdGVyIgogbXNnc3RyICIiCiAKLSM6IGNvbnZlcnQuYzo5MjkKKyM6IGNvbnZlcnQuYzo5MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4dGVybmFsIGZpbHRlciAnJXMnIGlzIG5vdCBhdmFpbGFibGUgYW55bW9yZSBhbHRob3VnaCBub3QgYWxsIHBhdGhzIGhhdmUgIgogImJlZW4gZmlsdGVyZWQiCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjEyMjgKKyM6IGNvbnZlcnQuYzoxMjIzCiBtc2dpZCAidHJ1ZS9mYWxzZSBhcmUgbm8gdmFsaWQgd29ya2luZy10cmVlLWVuY29kaW5ncyIKIG1zZ3N0ciAiIgogCi0jOiBjb252ZXJ0LmM6MTM5OCBjb252ZXJ0LmM6MTQzMgorIzogY29udmVydC5jOjE0MTEgY29udmVydC5jOjE0NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGNsZWFuIGZpbHRlciAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBjb252ZXJ0LmM6MTQ3NgorIzogY29udmVydC5jOjE0ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHNtdWRnZSBmaWx0ZXIgJXMgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IGRhdGUuYzoxMTYKKyM6IGRhdGUuYzoxMzgKIG1zZ2lkICJpbiB0aGUgZnV0dXJlIgogbXNnc3RyICIiCiAKLSM6IGRhdGUuYzoxMjIKKyM6IGRhdGUuYzoxNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiBzZWNvbmQgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHNlY29uZHMgYWdvIgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogZGF0ZS5jOjEyOQorIzogZGF0ZS5jOjE1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IG1pbnV0ZSBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gbWludXRlcyBhZ28iCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBkYXRlLmM6MTM2CisjOiBkYXRlLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gaG91ciBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gaG91cnMgYWdvIgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogZGF0ZS5jOjE0MworIzogZGF0ZS5jOjE2NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IGRheSBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gZGF5cyBhZ28iCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBkYXRlLmM6MTQ5CisjOiBkYXRlLmM6MTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gd2VlayBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gd2Vla3MgYWdvIgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogZGF0ZS5jOjE1NgorIzogZGF0ZS5jOjE3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IG1vbnRoIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtb250aHMgYWdvIgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogZGF0ZS5jOjE2NworIzogZGF0ZS5jOjE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHllYXIiCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4geWVhcnMiCkBAIC0yMDEwLDQwICsyODAyLDQwIEBACiBtc2dzdHJbMV0gIiIKIAogIy4gVFJBTlNMQVRPUlM6ICIlcyIgaXMgIjxuPiB5ZWFycyIKLSM6IGRhdGUuYzoxNzAKKyM6IGRhdGUuYzoxOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMsICU8UFJJdU1BWD4gbW9udGggYWdvIgogbXNnaWRfcGx1cmFsICIlcywgJTxQUkl1TUFYPiBtb250aHMgYWdvIgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogZGF0ZS5jOjE3NSBkYXRlLmM6MTgwCisjOiBkYXRlLmM6MTk3IGRhdGUuYzoyMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiB5ZWFyIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiB5ZWFycyBhZ28iCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBkZWx0YS1pc2xhbmRzLmM6MjY4CisjOiBkZWx0YS1pc2xhbmRzLmM6MjcyCiBtc2dpZCAiUHJvcGFnYXRpbmcgaXNsYW5kIG1hcmtzIgogbXNnc3RyICIiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzoyODYKKyM6IGRlbHRhLWlzbGFuZHMuYzoyOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHRyZWUgb2JqZWN0ICVzIgogbXNnc3RyICIiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzozMzAKKyM6IGRlbHRhLWlzbGFuZHMuYzozMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvYWQgaXNsYW5kIHJlZ2V4IGZvciAnJXMnOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBkZWx0YS1pc2xhbmRzLmM6Mzg2CisjOiBkZWx0YS1pc2xhbmRzLmM6MzkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImlzbGFuZCByZWdleCBmcm9tIGNvbmZpZyBoYXMgdG9vIG1hbnkgY2FwdHVyZSBncm91cHMgKG1heD0lZCkiCiBtc2dzdHIgIiIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjQ2MgorIzogZGVsdGEtaXNsYW5kcy5jOjQ2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJNYXJrZWQgJWQgaXNsYW5kcywgZG9uZS5cbiIKIG1zZ3N0ciAiIgpAQCAtMjA1MywxMzEgKzI4NDUsNjM2IEBACiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3JkZXJmaWxlICclcyciCiBtc2dzdHIgIiIKIAotIzogZGlmZmNvcmUtcmVuYW1lLmM6NTQ0CisjOiBkaWZmY29yZS1yZW5hbWUuYzo1NDMKIG1zZ2lkICJQZXJmb3JtaW5nIGluZXhhY3QgcmVuYW1lIGRldGVjdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBkaWZmLmM6MTA4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIm9wdGlvbiAnJXMnIHJlcXVpcmVzIGEgdmFsdWUiCisjOiBkaWZmLW5vLWluZGV4LmM6MjM4Cittc2dpZCAiZ2l0IGRpZmYgLS1uby1pbmRleCBbPG9wdGlvbnM+XSA8cGF0aD4gPHBhdGg+IgogbXNnc3RyICIiCiAKLSM6IGRpZmYuYzoxNTgKKyM6IGRpZmYtbm8taW5kZXguYzoyNjMKK21zZ2lkICIiCisiTm90IGEgZ2l0IHJlcG9zaXRvcnkuIFVzZSAtLW5vLWluZGV4IHRvIGNvbXBhcmUgdHdvIHBhdGhzIG91dHNpZGUgYSB3b3JraW5nICIKKyJ0cmVlIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzoxNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBGYWlsZWQgdG8gcGFyc2UgZGlyc3RhdCBjdXQtb2ZmIHBlcmNlbnRhZ2UgJyVzJ1xuIgogbXNnc3RyICIiCiAKLSM6IGRpZmYuYzoxNjMKKyM6IGRpZmYuYzoxNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBVbmtub3duIGRpcnN0YXQgcGFyYW1ldGVyICclcydcbiIKIG1zZ3N0ciAiIgogCi0jOiBkaWZmLmM6MjkxCisjOiBkaWZmLmM6Mjk2CiBtc2dpZCAiIgogImNvbG9yIG1vdmVkIHNldHRpbmcgbXVzdCBiZSBvbmUgb2YgJ25vJywgJ2RlZmF1bHQnLCAnYmxvY2tzJywgJ3plYnJhJywgIgogIidkaW1tZWQtemVicmEnLCAncGxhaW4nIgogbXNnc3RyICIiCiAKLSM6IGRpZmYuYzozMTYKKyM6IGRpZmYuYzozMjQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiaWdub3JpbmcgdW5rbm93biBjb2xvci1tb3ZlZC13cyBtb2RlICclcyciCi1tc2dzdHIgIiIKLQotIzogZGlmZi5jOjMyMwogbXNnaWQgIiIKLSJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHdoaXRlICIKLSJzcGFjZSBtb2RlcyIKKyJ1bmtub3duIGNvbG9yLW1vdmVkLXdzIG1vZGUgJyVzJywgcG9zc2libGUgdmFsdWVzIGFyZSAnaWdub3JlLXNwYWNlLWNoYW5nZScsICIKKyInaWdub3JlLXNwYWNlLWF0LWVvbCcsICdpZ25vcmUtYWxsLXNwYWNlJywgJ2FsbG93LWluZGVudGF0aW9uLWNoYW5nZSciCiBtc2dzdHIgIiIKIAotIzogZGlmZi5jOjM5NAorIzogZGlmZi5jOjMzMgorbXNnaWQgIiIKKyJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyICIKKyJ3aGl0ZXNwYWNlIG1vZGVzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo0MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biB2YWx1ZSBmb3IgJ2RpZmYuc3VibW9kdWxlJyBjb25maWcgdmFyaWFibGU6ICclcyciCiBtc2dzdHIgIiIKIAotIzogZGlmZi5jOjQ1NAorIzogZGlmZi5jOjQ2NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiRm91bmQgZXJyb3JzIGluICdkaWZmLmRpcnN0YXQnIGNvbmZpZyB2YXJpYWJsZTpcbiIKICIlcyIKIG1zZ3N0ciAiIgogCi0jOiBkaWZmLmM6NDE0MAorIzogZGlmZi5jOjQyMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZGlmZiBkaWVkLCBzdG9wcGluZyBhdCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBkaWZmLmM6NDQ4MgorIzogZGlmZi5jOjQ1NDcKIG1zZ2lkICItLW5hbWUtb25seSwgLS1uYW1lLXN0YXR1cywgLS1jaGVjayBhbmQgLXMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiIgogCi0jOiBkaWZmLmM6NDQ4NQorIzogZGlmZi5jOjQ1NTAKIG1zZ2lkICItRywgLVMgYW5kIC0tZmluZC1vYmplY3QgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiIgogCi0jOiBkaWZmLmM6NDU2MworIzogZGlmZi5jOjQ2MjgKIG1zZ2lkICItLWZvbGxvdyByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXRoc3BlYyIKIG1zZ3N0ciAiIgogCi0jOiBkaWZmLmM6NDcyOQorIzogZGlmZi5jOjQ2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAtLXN0YXQgdmFsdWU6ICVzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo0NjgxIGRpZmYuYzo0Njg2IGRpZmYuYzo0NjkxIGRpZmYuYzo0Njk2IGRpZmYuYzo1MjA5CisjOiBwYXJzZS1vcHRpb25zLmM6MTk3IHBhcnNlLW9wdGlvbnMuYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDcxMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiRmFpbGVkIHRvIHBhcnNlIC0tZGlyc3RhdC8tWCBvcHRpb24gcGFyYW1ldGVyOlxuIgogIiVzIgogbXNnc3RyICIiCiAKLSM6IGRpZmYuYzo0NzQzCisjOiBkaWZmLmM6NDc5OAogIywgYy1mb3JtYXQKLW1zZ2lkICJGYWlsZWQgdG8gcGFyc2UgLS1zdWJtb2R1bGUgb3B0aW9uIHBhcmFtZXRlcjogJyVzJyIKK21zZ2lkICJ1bmtub3duIGNoYW5nZSBjbGFzcyAnJWMnIGluIC0tZGlmZi1maWx0ZXI9JXMiCiBtc2dzdHIgIiIKIAotIzogZGlmZi5jOjU4MjMKKyM6IGRpZmYuYzo0ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdmFsdWUgYWZ0ZXIgd3MtZXJyb3ItaGlnaGxpZ2h0PSUuKnMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjQ4MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDg4NiBkaWZmLmM6NDg5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIDxuPi88bT4gZm9ybSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDkwNAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIGEgY2hhcmFjdGVyLCBnb3QgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDkyNQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS1jb2xvci1tb3ZlZCBhcmd1bWVudDogJXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjQ5NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBtb2RlICclcycgaW4gLS1jb2xvci1tb3ZlZC13cyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDk4NAorbXNnaWQgIiIKKyJvcHRpb24gZGlmZi1hbGdvcml0aG0gYWNjZXB0cyBcIm15ZXJzXCIsIFwibWluaW1hbFwiLCBcInBhdGllbmNlXCIgYW5kICIKKyJcImhpc3RvZ3JhbVwiIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MDIwIGRpZmYuYzo1MDQwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgYXJndW1lbnQgdG8gJXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIC0tc3VibW9kdWxlIG9wdGlvbiBwYXJhbWV0ZXI6ICclcyciCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIC0td29yZC1kaWZmIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTI1NworbXNnaWQgIkRpZmYgb3V0cHV0IGZvcm1hdCBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MjU5IGRpZmYuYzo1MjY1Cittc2dpZCAiZ2VuZXJhdGUgcGF0Y2giCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUyNjIgYnVpbHRpbi9sb2cuYzoxNzMKK21zZ2lkICJzdXBwcmVzcyBkaWZmIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTI2NyBkaWZmLmM6NTM4MSBkaWZmLmM6NTM4OAorbXNnaWQgIjxuPiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTI2OCBkaWZmLmM6NTI3MQorbXNnaWQgImdlbmVyYXRlIGRpZmZzIHdpdGggPG4+IGxpbmVzIGNvbnRleHQiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUyNzMKK21zZ2lkICJnZW5lcmF0ZSB0aGUgZGlmZiBpbiByYXcgZm9ybWF0IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1Mjc2Cittc2dpZCAic3lub255bSBmb3IgJy1wIC0tcmF3JyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTI4MAorbXNnaWQgInN5bm9ueW0gZm9yICctcCAtLXN0YXQnIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1Mjg0Cittc2dpZCAibWFjaGluZSBmcmllbmRseSAtLXN0YXQiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUyODcKK21zZ2lkICJvdXRwdXQgb25seSB0aGUgbGFzdCBsaW5lIG9mIC0tc3RhdCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTI4OSBkaWZmLmM6NTI5NworbXNnaWQgIjxwYXJhbTEscGFyYW0yPi4uLiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTI5MAorbXNnaWQgIiIKKyJvdXRwdXQgdGhlIGRpc3RyaWJ1dGlvbiBvZiByZWxhdGl2ZSBhbW91bnQgb2YgY2hhbmdlcyBmb3IgZWFjaCBzdWItZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1Mjk0Cittc2dpZCAic3lub255bSBmb3IgLS1kaXJzdGF0PWN1bXVsYXRpdmUiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUyOTgKK21zZ2lkICJzeW5vbnltIGZvciAtLWRpcnN0YXQ9ZmlsZXMscGFyYW0xLHBhcmFtMi4uLiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMwMgorbXNnaWQgIndhcm4gaWYgY2hhbmdlcyBpbnRyb2R1Y2UgY29uZmxpY3QgbWFya2VycyBvciB3aGl0ZXNwYWNlIGVycm9ycyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMwNQorbXNnaWQgImNvbmRlbnNlZCBzdW1tYXJ5IHN1Y2ggYXMgY3JlYXRpb25zLCByZW5hbWVzIGFuZCBtb2RlIGNoYW5nZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzMDgKK21zZ2lkICJzaG93IG9ubHkgbmFtZXMgb2YgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMxMQorbXNnaWQgInNob3cgb25seSBuYW1lcyBhbmQgc3RhdHVzIG9mIGNoYW5nZWQgZmlsZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzMTMKK21zZ2lkICI8d2lkdGg+Wyw8bmFtZS13aWR0aD5bLDxjb3VudD5dXSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMxNAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzE2IGRpZmYuYzo1MzE5IGRpZmYuYzo1MzIyCittc2dpZCAiPHdpZHRoPiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMxNworbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiB3aWR0aCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMyMAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBuYW1lIHdpZHRoIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzIzCittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBhIGdpdmVuIGdyYXBoIHdpZHRoIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzI1Cittc2dpZCAiPGNvdW50PiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMyNgorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggbGltaXRlZCBsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMyOQorbXNnaWQgImdlbmVyYXRlIGNvbXBhY3Qgc3VtbWFyeSBpbiBkaWZmc3RhdCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMzMgorbXNnaWQgIm91dHB1dCBhIGJpbmFyeSBkaWZmIHRoYXQgY2FuIGJlIGFwcGxpZWQiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzMzUKK21zZ2lkICJzaG93IGZ1bGwgcHJlLSBhbmQgcG9zdC1pbWFnZSBvYmplY3QgbmFtZXMgb24gdGhlIFwiaW5kZXhcIiBsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMzNworbXNnaWQgInNob3cgY29sb3JlZCBkaWZmIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzM4Cittc2dpZCAiPGtpbmQ+IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzM5Cittc2dpZCAiIgorImhpZ2hsaWdodCB3aGl0ZXNwYWNlIGVycm9ycyBpbiB0aGUgJ2NvbnRleHQnLCAnb2xkJyBvciAnbmV3JyBsaW5lcyBpbiB0aGUgIgorImRpZmYiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzNDIKK21zZ2lkICIiCisiZG8gbm90IG11bmdlIHBhdGhuYW1lcyBhbmQgdXNlIE5VTHMgYXMgb3V0cHV0IGZpZWxkIHRlcm1pbmF0b3JzIGluIC0tcmF3IG9yICIKKyItLW51bXN0YXQiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzNDUgZGlmZi5jOjUzNDggZGlmZi5jOjUzNTEgZGlmZi5jOjU0NTcKK21zZ2lkICI8cHJlZml4PiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM0NgorbXNnaWQgInNob3cgdGhlIGdpdmVuIHNvdXJjZSBwcmVmaXggaW5zdGVhZCBvZiBcImEvXCIiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzNDkKK21zZ2lkICJzaG93IHRoZSBnaXZlbiBkZXN0aW5hdGlvbiBwcmVmaXggaW5zdGVhZCBvZiBcImIvXCIiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzNTIKK21zZ2lkICJwcmVwZW5kIGFuIGFkZGl0aW9uYWwgcHJlZml4IHRvIGV2ZXJ5IGxpbmUgb2Ygb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzU1Cittc2dpZCAiZG8gbm90IHNob3cgYW55IHNvdXJjZSBvciBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzNTgKK21zZ2lkICJzaG93IGNvbnRleHQgYmV0d2VlbiBkaWZmIGh1bmtzIHVwIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGxpbmVzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzYyIGRpZmYuYzo1MzY3IGRpZmYuYzo1MzcyCittc2dpZCAiPGNoYXI+IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzYzCittc2dpZCAic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGEgbmV3IGxpbmUgaW5zdGVhZCBvZiAnKyciCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzNjgKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYW4gb2xkIGxpbmUgaW5zdGVhZCBvZiAnLSciCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzNzMKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBjb250ZXh0IGluc3RlYWQgb2YgJyAnIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1Mzc2Cittc2dpZCAiRGlmZiByZW5hbWUgb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM3NworbXNnaWQgIjxuPlsvPG0+XSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM3OAorbXNnaWQgImJyZWFrIGNvbXBsZXRlIHJld3JpdGUgY2hhbmdlcyBpbnRvIHBhaXJzIG9mIGRlbGV0ZSBhbmQgY3JlYXRlIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzgyCittc2dpZCAiZGV0ZWN0IHJlbmFtZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzODYKK21zZ2lkICJvbWl0IHRoZSBwcmVpbWFnZSBmb3IgZGVsZXRlcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM4OQorbXNnaWQgImRldGVjdCBjb3BpZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzOTMKK21zZ2lkICJ1c2UgdW5tb2RpZmllZCBmaWxlcyBhcyBzb3VyY2UgdG8gZmluZCBjb3BpZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzOTUKK21zZ2lkICJkaXNhYmxlIHJlbmFtZSBkZXRlY3Rpb24iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzOTgKK21zZ2lkICJ1c2UgZW1wdHkgYmxvYnMgYXMgcmVuYW1lIHNvdXJjZSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQwMAorbXNnaWQgImNvbnRpbnVlIGxpc3RpbmcgdGhlIGhpc3Rvcnkgb2YgYSBmaWxlIGJleW9uZCByZW5hbWVzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDAzCittc2dpZCAiIgorInByZXZlbnQgcmVuYW1lL2NvcHkgZGV0ZWN0aW9uIGlmIHRoZSBudW1iZXIgb2YgcmVuYW1lL2NvcHkgdGFyZ2V0cyBleGNlZWRzICIKKyJnaXZlbiBsaW1pdCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQwNQorbXNnaWQgIkRpZmYgYWxnb3JpdGhtIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0MDcKK21zZ2lkICJwcm9kdWNlIHRoZSBzbWFsbGVzdCBwb3NzaWJsZSBkaWZmIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDEwCittc2dpZCAiaWdub3JlIHdoaXRlc3BhY2Ugd2hlbiBjb21wYXJpbmcgbGluZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0MTMKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyBpbiBhbW91bnQgb2Ygd2hpdGVzcGFjZSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQxNgorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIHdoaXRlc3BhY2UgYXQgRU9MIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDE5Cittc2dpZCAiaWdub3JlIGNhcnJpZXItcmV0dXJuIGF0IHRoZSBlbmQgb2YgbGluZSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQyMgorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIHdob3NlIGxpbmVzIGFyZSBhbGwgYmxhbmsiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0MjUKK21zZ2lkICJoZXVyaXN0aWMgdG8gc2hpZnQgZGlmZiBodW5rIGJvdW5kYXJpZXMgZm9yIGVhc3kgcmVhZGluZyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQyOAorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwicGF0aWVuY2UgZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQzMgorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwiaGlzdG9ncmFtIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0MzQKK21zZ2lkICI8YWxnb3JpdGhtPiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQzNQorbXNnaWQgImNob29zZSBhIGRpZmYgYWxnb3JpdGhtIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDM3Cittc2dpZCAiPHRleHQ+IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDM4Cittc2dpZCAiZ2VuZXJhdGUgZGlmZiB1c2luZyB0aGUgXCJhbmNob3JlZCBkaWZmXCIgYWxnb3JpdGhtIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDQwIGRpZmYuYzo1NDQ5IGRpZmYuYzo1NDUyCittc2dpZCAiPG1vZGU+IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDQxCittc2dpZCAic2hvdyB3b3JkIGRpZmYsIHVzaW5nIDxtb2RlPiB0byBkZWxpbWl0IGNoYW5nZWQgd29yZHMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NDMgZGlmZi5jOjU0NDYgZGlmZi5jOjU0OTEKK21zZ2lkICI8cmVnZXg+IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDQ0Cittc2dpZCAidXNlIDxyZWdleD4gdG8gZGVjaWRlIHdoYXQgYSB3b3JkIGlzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDQ3Cittc2dpZCAiZXF1aXZhbGVudCB0byAtLXdvcmQtZGlmZj1jb2xvciAtLXdvcmQtZGlmZi1yZWdleD08cmVnZXg+IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDUwCittc2dpZCAibW92ZWQgbGluZXMgb2YgY29kZSBhcmUgY29sb3JlZCBkaWZmZXJlbnRseSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ1MworbXNnaWQgImhvdyB3aGl0ZSBzcGFjZXMgYXJlIGlnbm9yZWQgaW4gLS1jb2xvci1tb3ZlZCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ1NgorbXNnaWQgIk90aGVyIGRpZmYgb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ1OAorbXNnaWQgIndoZW4gcnVuIGZyb20gc3ViZGlyLCBleGNsdWRlIGNoYW5nZXMgb3V0c2lkZSBhbmQgc2hvdyByZWxhdGl2ZSBwYXRocyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ2MgorbXNnaWQgInRyZWF0IGFsbCBmaWxlcyBhcyB0ZXh0IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDY0Cittc2dpZCAic3dhcCB0d28gaW5wdXRzLCByZXZlcnNlIHRoZSBkaWZmIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDY2Cittc2dpZCAiZXhpdCB3aXRoIDEgaWYgdGhlcmUgd2VyZSBkaWZmZXJlbmNlcywgMCBvdGhlcndpc2UiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NjgKK21zZ2lkICJkaXNhYmxlIGFsbCBvdXRwdXQgb2YgdGhlIHByb2dyYW0iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NzAKK21zZ2lkICJhbGxvdyBhbiBleHRlcm5hbCBkaWZmIGhlbHBlciB0byBiZSBleGVjdXRlZCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ3MgorbXNnaWQgInJ1biBleHRlcm5hbCB0ZXh0IGNvbnZlcnNpb24gZmlsdGVycyB3aGVuIGNvbXBhcmluZyBiaW5hcnkgZmlsZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NzQKK21zZ2lkICI8d2hlbj4iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NzUKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyB0byBzdWJtb2R1bGVzIGluIHRoZSBkaWZmIGdlbmVyYXRpb24iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NzgKK21zZ2lkICI8Zm9ybWF0PiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ3OQorbXNnaWQgInNwZWNpZnkgaG93IGRpZmZlcmVuY2VzIGluIHN1Ym1vZHVsZXMgYXJlIHNob3duIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDgzCittc2dpZCAiaGlkZSAnZ2l0IGFkZCAtTicgZW50cmllcyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ4NgorbXNnaWQgInRyZWF0ICdnaXQgYWRkIC1OJyBlbnRyaWVzIGFzIHJlYWwgaW4gdGhlIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDg4Cittc2dpZCAiPHN0cmluZz4iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0ODkKK21zZ2lkICIiCisibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkICIKKyJzdHJpbmciCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0OTIKK21zZ2lkICIiCisibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkICIKKyJyZWdleCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ5NQorbXNnaWQgInNob3cgYWxsIGNoYW5nZXMgaW4gdGhlIGNoYW5nZXNldCB3aXRoIC1TIG9yIC1HIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDk4Cittc2dpZCAidHJlYXQgPHN0cmluZz4gaW4gLVMgYXMgZXh0ZW5kZWQgUE9TSVggcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NTAxCittc2dpZCAiY29udHJvbCB0aGUgb3JkZXIgaW4gd2hpY2ggZmlsZXMgYXBwZWFyIGluIHRoZSBvdXRwdXQiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU1MDIKK21zZ2lkICI8b2JqZWN0LWlkPiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTUwMworbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorIm9iamVjdCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTUwNQorbXNnaWQgIlsoQXxDfER8TXxSfFR8VXxYfEIpLi4uWypdXSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTUwNgorbXNnaWQgInNlbGVjdCBmaWxlcyBieSBkaWZmIHR5cGUiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU1MDgKK21zZ2lkICI8ZmlsZT4iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU1MDkKK21zZ2lkICJPdXRwdXQgdG8gYSBzcGVjaWZpYyBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo2MTY0CiBtc2dpZCAiaW5leGFjdCByZW5hbWUgZGV0ZWN0aW9uIHdhcyBza2lwcGVkIGR1ZSB0byB0b28gbWFueSBmaWxlcy4iCiBtc2dzdHIgIiIKIAotIzogZGlmZi5jOjU4MjYKKyM6IGRpZmYuYzo2MTY3CiBtc2dpZCAib25seSBmb3VuZCBjb3BpZXMgZnJvbSBtb2RpZmllZCBwYXRocyBkdWUgdG8gdG9vIG1hbnkgZmlsZXMuIgogbXNnc3RyICIiCiAKLSM6IGRpZmYuYzo1ODI5CisjOiBkaWZmLmM6NjE3MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAieW91IG1heSB3YW50IHRvIHNldCB5b3VyICVzIHZhcmlhYmxlIHRvIGF0IGxlYXN0ICVkIGFuZCByZXRyeSB0aGUgY29tbWFuZC4iCiBtc2dzdHIgIiIKIAotIzogZGlyLmM6NTc2CisjOiBkaXIuYzo1NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlKHMpIGtub3duIHRvIGdpdCIKIG1zZ3N0ciAiIgogCi0jOiBkaXIuYzo5NjUKKyM6IGRpci5jOjY5NSBkaXIuYzo3MjQgZGlyLmM6NzM3CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBwYXR0ZXJuOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGRpci5jOjc1NCBkaXIuYzo3NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIG5lZ2F0aXZlIHBhdHRlcm46ICclcyciCittc2dzdHIgIiIKKworIzogZGlyLmM6Nzg2CisjLCBjLWZvcm1hdAorbXNnaWQgInlvdXIgc3BhcnNlLWNoZWNrb3V0IGZpbGUgbWF5IGhhdmUgaXNzdWVzOiBwYXR0ZXJuICclcycgaXMgcmVwZWF0ZWQiCittc2dzdHIgIiIKKworIzogZGlyLmM6Nzk2Cittc2dpZCAiZGlzYWJsaW5nIGNvbmUgcGF0dGVybiBtYXRjaGluZyIKK21zZ3N0ciAiIgorCisjOiBkaXIuYzoxMTczCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCB1c2UgJXMgYXMgYW4gZXhjbHVkZSBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGRpci5jOjE4ODAKKyM6IGRpci5jOjIxNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgIiIKIAotIzogZGlyLmM6MjEyMgorIzogZGlyLmM6MjQ3OQogbXNnaWQgImZhaWxlZCB0byBnZXQga2VybmVsIG5hbWUgYW5kIGluZm9ybWF0aW9uIgogbXNnc3RyICIiCiAKLSM6IGRpci5jOjIyNDYKKyM6IGRpci5jOjI2MDMKIG1zZ2lkICJ1bnRyYWNrZWQgY2FjaGUgaXMgZGlzYWJsZWQgb24gdGhpcyBzeXN0ZW0gb3IgbG9jYXRpb24iCiBtc2dzdHIgIiIKIAotIzogZGlyLmM6MzA0NworIzogZGlyLmM6MzQwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbmRleCBmaWxlIGNvcnJ1cHQgaW4gcmVwbyAlcyIKIG1zZ3N0ciAiIgogCi0jOiBkaXIuYzozMDkyIGRpci5jOjMwOTcKKyM6IGRpci5jOjM0NTIgZGlyLmM6MzQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yaWVzIGZvciAlcyIKIG1zZ3N0ciAiIgogCi0jOiBkaXIuYzozMTI2CisjOiBkaXIuYzozNDg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBtaWdyYXRlIGdpdCBkaXJlY3RvcnkgZnJvbSAnJXMnIHRvICclcyciCiBtc2dzdHIgIiIKQEAgLTIxOTEsMjk3ICszNDg4LDI4NyBAQAogbXNnaWQgIkZpbHRlcmluZyBjb250ZW50IgogbXNnc3RyICIiCiAKLSM6IGVudHJ5LmM6NDY1CisjOiBlbnRyeS5jOjQ3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc3RhdCBmaWxlICclcyciCiBtc2dzdHIgIiIKIAotIzogZW52aXJvbm1lbnQuYzoxNTAKKyM6IGVudmlyb25tZW50LmM6MTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBnaXQgbmFtZXNwYWNlIHBhdGggXCIlc1wiIgogbXNnc3RyICIiCiAKLSM6IGVudmlyb25tZW50LmM6MzMyCisjOiBlbnZpcm9ubWVudC5jOjMzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc2V0IEdJVF9ESVIgdG8gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBleGVjLWNtZC5jOjM2MQorIzogZXhlYy1jbWQuYzozNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidG9vIG1hbnkgYXJncyB0byBydW4gJXMiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtb2JqZWN0LmM6MTcKLW1zZ2lkICJSZW1vdGUgd2l0aCBubyBVUkwiCi1tc2dzdHIgIiIKLQotIzogZmV0Y2gtcGFjay5jOjE1MQorIzogZmV0Y2gtcGFjay5jOjE1MAogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBzaGFsbG93IGxpc3QiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjE2MworIzogZmV0Y2gtcGFjay5jOjE1MworbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBhIGZsdXNoIHBhY2tldCBhZnRlciBzaGFsbG93IGxpc3QiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjE2NAogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgYSBmbHVzaCBwYWNrZXQiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjE4MworIzogZmV0Y2gtcGFjay5jOjE4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290ICclcyciCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjI1MworIzogZmV0Y2gtcGFjay5jOjE5NQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byByZW1vdGUiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjI1NwogbXNnaWQgIi0tc3RhdGVsZXNzLXJwYyByZXF1aXJlcyBtdWx0aV9hY2tfZGV0YWlsZWQiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjM0NyBmZXRjaC1wYWNrLmM6MTI3NworIzogZmV0Y2gtcGFjay5jOjM1NiBmZXRjaC1wYWNrLmM6MTM0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHNoYWxsb3cgbGluZTogJXMiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjM1MyBmZXRjaC1wYWNrLmM6MTI4MworIzogZmV0Y2gtcGFjay5jOjM2MiBmZXRjaC1wYWNrLmM6MTM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHVuc2hhbGxvdyBsaW5lOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBmZXRjaC1wYWNrLmM6MzU1IGZldGNoLXBhY2suYzoxMjg1CisjOiBmZXRjaC1wYWNrLmM6MzY0IGZldGNoLXBhY2suYzoxMzQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCBub3QgZm91bmQ6ICVzIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzozNTggZmV0Y2gtcGFjay5jOjEyODgKKyM6IGZldGNoLXBhY2suYzozNjcgZmV0Y2gtcGFjay5jOjEzNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgaW4gb2JqZWN0OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBmZXRjaC1wYWNrLmM6MzYwIGZldGNoLXBhY2suYzoxMjkwCisjOiBmZXRjaC1wYWNrLmM6MzY5IGZldGNoLXBhY2suYzoxMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHNoYWxsb3cgZm91bmQ6ICVzIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzozNjMgZmV0Y2gtcGFjay5jOjEyOTMKKyM6IGZldGNoLXBhY2suYzozNzIgZmV0Y2gtcGFjay5jOjEzNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgc2hhbGxvdy91bnNoYWxsb3csIGdvdCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBmZXRjaC1wYWNrLmM6NDA0CisjOiBmZXRjaC1wYWNrLmM6NDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgImdvdCAlcyAlZCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBmZXRjaC1wYWNrLmM6NDIxCisjOiBmZXRjaC1wYWNrLmM6NDMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29tbWl0ICVzIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzo0NTIKKyM6IGZldGNoLXBhY2suYzo0NjIKIG1zZ2lkICJnaXZpbmcgdXAiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjQ2NCBwcm9ncmVzcy5jOjIyOQorIzogZmV0Y2gtcGFjay5jOjQ3NSBwcm9ncmVzcy5jOjMyMwogbXNnaWQgImRvbmUiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjQ3NgorIzogZmV0Y2gtcGFjay5jOjQ4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJnb3QgJXMgKCVkKSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBmZXRjaC1wYWNrLmM6NTIyCisjOiBmZXRjaC1wYWNrLmM6NTMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1hcmtpbmcgJXMgYXMgY29tcGxldGUiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjc2NAorIzogZmV0Y2gtcGFjay5jOjc1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJhbHJlYWR5IGhhdmUgJXMgKCVzKSIKIG1zZ3N0ciAiIgogCi0jOiBmZXRjaC1wYWNrLmM6ODAzCisjOiBmZXRjaC1wYWNrLmM6ODE4CiBtc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjgxMQorIzogZmV0Y2gtcGFjay5jOjgyNgogbXNnaWQgInByb3RvY29sIGVycm9yOiBiYWQgcGFjayBoZWFkZXIiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjg3OQorIzogZmV0Y2gtcGFjay5jOjkwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJmZXRjaC1wYWNrOiB1bmFibGUgdG8gZm9yayBvZmYgJXMiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjg5NQorIzogZmV0Y2gtcGFjay5jOjkxNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjg5NworIzogZmV0Y2gtcGFjay5jOjkxOAogbXNnaWQgImVycm9yIGluIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjkyNgotbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2xpZW50cyIKLW1zZ3N0ciAiIgotCi0jOiBmZXRjaC1wYWNrLmM6OTMwCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIG11bHRpX2Fja19kZXRhaWxlZCIKLW1zZ3N0ciAiIgotCi0jOiBmZXRjaC1wYWNrLmM6OTMzCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIG5vLWRvbmUiCi1tc2dzdHIgIiIKLQotIzogZmV0Y2gtcGFjay5jOjkzOQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2siCi1tc2dzdHIgIiIKLQotIzogZmV0Y2gtcGFjay5jOjk0MwotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQtNjRrIgotbXNnc3RyICIiCi0KLSM6IGZldGNoLXBhY2suYzo5NDcKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgc2lkZS1iYW5kIgotbXNnc3RyICIiCi0KLSM6IGZldGNoLXBhY2suYzo5NTEKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgYWxsb3ctdGlwLXNoYTEtaW4td2FudCIKLW1zZ3N0ciAiIgotCi0jOiBmZXRjaC1wYWNrLmM6OTU1Ci1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIGFsbG93LXJlYWNoYWJsZS1zaGExLWluLXdhbnQiCi1tc2dzdHIgIiIKLQogIzogZmV0Y2gtcGFjay5jOjk2NQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBvZnMtZGVsdGEiCi1tc2dzdHIgIiIKLQotIzogZmV0Y2gtcGFjay5jOjk3MSBmZXRjaC1wYWNrLmM6MTE1OAotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBmaWx0ZXIiCi1tc2dzdHIgIiIKLQotIzogZmV0Y2gtcGFjay5jOjk3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZXJ2ZXIgdmVyc2lvbiBpcyAlLipzIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzo5ODUKKyM6IGZldGNoLXBhY2suYzo5NzAgZmV0Y2gtcGFjay5jOjk3NiBmZXRjaC1wYWNrLmM6OTc5IGZldGNoLXBhY2suYzo5ODUKKyM6IGZldGNoLXBhY2suYzo5ODkgZmV0Y2gtcGFjay5jOjk5MyBmZXRjaC1wYWNrLmM6OTk3IGZldGNoLXBhY2suYzoxMDAxCisjOiBmZXRjaC1wYWNrLmM6MTAwNSBmZXRjaC1wYWNrLmM6MTAwOSBmZXRjaC1wYWNrLmM6MTAxMyBmZXRjaC1wYWNrLmM6MTAxNworIzogZmV0Y2gtcGFjay5jOjEwMjMgZmV0Y2gtcGFjay5jOjEwMjkgZmV0Y2gtcGFjay5jOjEwMzQgZmV0Y2gtcGFjay5jOjEwMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2VydmVyIHN1cHBvcnRzICVzIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzo5NzIKK21zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IGNsaWVudHMiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjEwMzIKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLXNoYWxsb3ctc2luY2UiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjk4OQorIzogZmV0Y2gtcGFjay5jOjEwMzcKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLXNoYWxsb3ctZXhjbHVkZSIKIG1zZ3N0ciAiIgogCi0jOiBmZXRjaC1wYWNrLmM6OTkxCisjOiBmZXRjaC1wYWNrLmM6MTA0MQogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tZGVlcGVuIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzoxMDA4CisjOiBmZXRjaC1wYWNrLmM6MTA1OAogbXNnaWQgIm5vIGNvbW1vbiBjb21taXRzIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzoxMDIwIGZldGNoLXBhY2suYzoxNDE4CisjOiBmZXRjaC1wYWNrLmM6MTA3MCBmZXRjaC1wYWNrLmM6MTUzNgogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBmZXRjaCBmYWlsZWQuIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzoxMTUzCisjOiBmZXRjaC1wYWNrLmM6MTIwOQogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgcmVxdWVzdHMiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjExOTkKKyM6IGZldGNoLXBhY2suYzoxMjE2Cittc2dpZCAiU2VydmVyIHN1cHBvcnRzIGZpbHRlciIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6MTIzOQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSByZXF1ZXN0IHRvIHJlbW90ZSIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6MTI1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciByZWFkaW5nIHNlY3Rpb24gaGVhZGVyICclcyciCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjEyMDUKKyM6IGZldGNoLXBhY2suYzoxMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkICclcycsIHJlY2VpdmVkICclcyciCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjEyNDQKKyM6IGZldGNoLXBhY2suYzoxMzAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgYWNrbm93bGVkZ21lbnQgbGluZTogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI0OQorIzogZmV0Y2gtcGFjay5jOjEzMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBhY2tzOiAlZCIKIG1zZ3N0ciAiIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI1OQorIzogZmV0Y2gtcGFjay5jOjEzMTgKIG1zZ2lkICJleHBlY3RlZCBwYWNrZmlsZSB0byBiZSBzZW50IGFmdGVyICdyZWFkeSciCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjEyNjEKKyM6IGZldGNoLXBhY2suYzoxMzIwCiBtc2dpZCAiZXhwZWN0ZWQgbm8gb3RoZXIgc2VjdGlvbnMgdG8gYmUgc2VudCBhZnRlciBubyAncmVhZHknIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzoxMjk4CisjOiBmZXRjaC1wYWNrLmM6MTM2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIHNoYWxsb3cgaW5mbzogJWQiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjEzMTQKKyM6IGZldGNoLXBhY2suYzoxNDA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIHdhbnRlZC1yZWYsIGdvdCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzoxMzI0CisjOiBmZXRjaC1wYWNrLmM6MTQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIHdhbnRlZC1yZWY6ICclcyciCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjEzMjgKKyM6IGZldGNoLXBhY2suYzoxNDE5CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHByb2Nlc3Npbmcgd2FudGVkIHJlZnM6ICVkIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzoxNjQyCisjOiBmZXRjaC1wYWNrLmM6MTc2MgogbXNnaWQgIm5vIG1hdGNoaW5nIHJlbW90ZSBoZWFkIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzoxNjYwIGJ1aWx0aW4vY2xvbmUuYzo2NjQKKyM6IGZldGNoLXBhY2suYzoxNzg1IGJ1aWx0aW4vY2xvbmUuYzo2ODkKIG1zZ2lkICJyZW1vdGUgZGlkIG5vdCBzZW5kIGFsbCBuZWNlc3Nhcnkgb2JqZWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY4NgorIzogZmV0Y2gtcGFjay5jOjE4MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCByZW1vdGUgcmVmICVzIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzoxNjg5CisjOiBmZXRjaC1wYWNrLmM6MTgxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3QgYWxsb3cgcmVxdWVzdCBmb3IgdW5hZHZlcnRpc2VkIG9iamVjdCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBncGctaW50ZXJmYWNlLmM6MzE4CisjOiBncGctaW50ZXJmYWNlLmM6NDA4CiBtc2dpZCAiZ3BnIGZhaWxlZCB0byBzaWduIHRoZSBkYXRhIgogbXNnc3RyICIiCiAKLSM6IGdwZy1pbnRlcmZhY2UuYzozNDQKKyM6IGdwZy1pbnRlcmZhY2UuYzo0MzQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGdwZy1pbnRlcmZhY2UuYzozNDcKKyM6IGdwZy1pbnRlcmZhY2UuYzo0MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHdyaXRpbmcgZGV0YWNoZWQgc2lnbmF0dXJlIHRvICclcyciCiBtc2dzdHIgIiIKIAotIzogZ3JhcGguYzo5NworIzogZ3JhcGguYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmUgaW52YWxpZCBjb2xvciAnJS4qcycgaW4gbG9nLmdyYXBoQ29sb3JzIgogbXNnc3RyICIiCiAKLSM6IGdyZXAuYzoyMTEzCisjOiBncmVwLmM6NjY4Cittc2dpZCAiIgorImdpdmVuIHBhdHRlcm4gY29udGFpbnMgTlVMTCBieXRlICh2aWEgLWYgPGZpbGU+KS4gVGhpcyBpcyBvbmx5IHN1cHBvcnRlZCAiCisid2l0aCAtUCB1bmRlciBQQ1JFIHYyIgorbXNnc3RyICIiCisKKyM6IGdyZXAuYzoyMTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IHVuYWJsZSB0byByZWFkICVzIgogbXNnc3RyICIiCiAKLSM6IGdyZXAuYzoyMTMwIHNldHVwLmM6MTY0IGJ1aWx0aW4vY2xvbmUuYzo0MTAgYnVpbHRpbi9kaWZmLmM6ODEKLSM6IGJ1aWx0aW4vcm0uYzoxMzQKKyM6IGdyZXAuYzoyMTQ1IHNldHVwLmM6MTY2IGJ1aWx0aW4vY2xvbmUuYzo0MTEgYnVpbHRpbi9kaWZmLmM6ODIKKyM6IGJ1aWx0aW4vcm0uYzoxMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0YXQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBncmVwLmM6MjE0MQorIzogZ3JlcC5jOjIxNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogc2hvcnQgcmVhZCIKIG1zZ3N0ciAiIgpAQCAtMjUzMSw3OSArMzgxOCw3OSBAQAogbXNnc3RyICIiCiAKICM6IGhlbHAuYzozNwotbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIFN5bmNoaW5nIFJlcG9zaXRvcmllcyIKK21zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBTeW5jaW5nIFJlcG9zaXRvcmllcyIKIG1zZ3N0ciAiIgogCiAjOiBoZWxwLmM6MzgKIG1zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBJbnRlcm5hbCBIZWxwZXJzIgogbXNnc3RyICIiCiAKLSM6IGhlbHAuYzoyOTYKKyM6IGhlbHAuYzoyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYXZhaWxhYmxlIGdpdCBjb21tYW5kcyBpbiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGhlbHAuYzozMDMKKyM6IGhlbHAuYzozMDUKIG1zZ2lkICJnaXQgY29tbWFuZHMgYXZhaWxhYmxlIGZyb20gZWxzZXdoZXJlIG9uIHlvdXIgJFBBVEgiCiBtc2dzdHIgIiIKIAotIzogaGVscC5jOjMxMgorIzogaGVscC5jOjMxNAogbXNnaWQgIlRoZXNlIGFyZSBjb21tb24gR2l0IGNvbW1hbmRzIHVzZWQgaW4gdmFyaW91cyBzaXR1YXRpb25zOiIKIG1zZ3N0ciAiIgogCi0jOiBoZWxwLmM6MzYxIGdpdC5jOjkwCisjOiBoZWxwLmM6MzYzIGdpdC5jOjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuc3VwcG9ydGVkIGNvbW1hbmQgbGlzdGluZyB0eXBlICclcyciCiBtc2dzdHIgIiIKIAotIzogaGVscC5jOjQwOAorIzogaGVscC5jOjQwMwogbXNnaWQgIlRoZSBjb21tb24gR2l0IGd1aWRlcyBhcmU6IgogbXNnc3RyICIiCiAKLSM6IGhlbHAuYzo1MTcKKyM6IGhlbHAuYzo1MTIKIG1zZ2lkICJTZWUgJ2dpdCBoZWxwIDxjb21tYW5kPicgdG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQiCiBtc2dzdHIgIiIKIAotIzogaGVscC5jOjUyMgorIzogaGVscC5jOjUxNwogbXNnaWQgIkV4dGVybmFsIGNvbW1hbmRzIgogbXNnc3RyICIiCiAKLSM6IGhlbHAuYzo1MzAKKyM6IGhlbHAuYzo1MzIKIG1zZ2lkICJDb21tYW5kIGFsaWFzZXMiCiBtc2dzdHIgIiIKIAotIzogaGVscC5jOjU5NAorIzogaGVscC5jOjU5NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBhcHBlYXJzIHRvIGJlIGEgZ2l0IGNvbW1hbmQsIGJ1dCB3ZSB3ZXJlIG5vdFxuIgogImFibGUgdG8gZXhlY3V0ZSBpdC4gTWF5YmUgZ2l0LSVzIGlzIGJyb2tlbj8iCiBtc2dzdHIgIiIKIAotIzogaGVscC5jOjY1MworIzogaGVscC5jOjY1NQogbXNnaWQgIlVoIG9oLiBZb3VyIHN5c3RlbSByZXBvcnRzIG5vIEdpdCBjb21tYW5kcyBhdCBhbGwuIgogbXNnc3RyICIiCiAKLSM6IGhlbHAuYzo2NzUKKyM6IGhlbHAuYzo2NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiV0FSTklORzogWW91IGNhbGxlZCBhIEdpdCBjb21tYW5kIG5hbWVkICclcycsIHdoaWNoIGRvZXMgbm90IGV4aXN0LiIKIG1zZ3N0ciAiIgogCi0jOiBoZWxwLmM6NjgwCisjOiBoZWxwLmM6NjgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbnRpbnVpbmcgdW5kZXIgdGhlIGFzc3VtcHRpb24gdGhhdCB5b3UgbWVhbnQgJyVzJy4iCiBtc2dzdHIgIiIKIAotIzogaGVscC5jOjY4NQorIzogaGVscC5jOjY4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb250aW51aW5nIGluICUwLjFmIHNlY29uZHMsIGFzc3VtaW5nIHRoYXQgeW91IG1lYW50ICclcycuIgogbXNnc3RyICIiCiAKLSM6IGhlbHAuYzo2OTMKKyM6IGhlbHAuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0OiAnJXMnIGlzIG5vdCBhIGdpdCBjb21tYW5kLiBTZWUgJ2dpdCAtLWhlbHAnLiIKIG1zZ3N0ciAiIgogCi0jOiBoZWxwLmM6Njk3CisjOiBoZWxwLmM6Njk5CiBtc2dpZCAiIgogIlxuIgogIlRoZSBtb3N0IHNpbWlsYXIgY29tbWFuZCBpcyIKQEAgLTI2MTMsMTYgKzM5MDAsMTYgQEAKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGhlbHAuYzo3MTIKKyM6IGhlbHAuYzo3MTQKIG1zZ2lkICJnaXQgdmVyc2lvbiBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiIgogCi0jOiBoZWxwLmM6NzgwCisjOiBoZWxwLmM6NzgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAlcyAtICVzIgogbXNnc3RyICIiCiAKLSM6IGhlbHAuYzo3ODQKKyM6IGhlbHAuYzo3ODcKIG1zZ2lkICIiCiAiXG4iCiAiRGlkIHlvdSBtZWFuIHRoaXM/IgpAQCAtMjYzMiw3ICszOTE5LDcgQEAKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGlkZW50LmM6MzQ1CisjOiBpZGVudC5jOjM0OQogbXNnaWQgIiIKICJcbiIKICIqKiogUGxlYXNlIHRlbGwgbWUgd2hvIHlvdSBhcmUuXG4iCkBAIC0yNjQ3LDQ5ICszOTM0LDg4IEBACiAiXG4iCiBtc2dzdHIgIiIKIAotIzogaWRlbnQuYzozNjkKKyM6IGlkZW50LmM6Mzc5CiBtc2dpZCAibm8gZW1haWwgd2FzIGdpdmVuIGFuZCBhdXRvLWRldGVjdGlvbiBpcyBkaXNhYmxlZCIKIG1zZ3N0ciAiIgogCi0jOiBpZGVudC5jOjM3NAorIzogaWRlbnQuYzozODQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGF1dG8tZGV0ZWN0IGVtYWlsIGFkZHJlc3MgKGdvdCAnJXMnKSIKIG1zZ3N0ciAiIgogCi0jOiBpZGVudC5jOjM4NAorIzogaWRlbnQuYzo0MDEKIG1zZ2lkICJubyBuYW1lIHdhcyBnaXZlbiBhbmQgYXV0by1kZXRlY3Rpb24gaXMgZGlzYWJsZWQiCiBtc2dzdHIgIiIKIAotIzogaWRlbnQuYzozOTAKKyM6IGlkZW50LmM6NDA3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhdXRvLWRldGVjdCBuYW1lIChnb3QgJyVzJykiCiBtc2dzdHIgIiIKIAotIzogaWRlbnQuYzozOTgKKyM6IGlkZW50LmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgImVtcHR5IGlkZW50IG5hbWUgKGZvciA8JXM+KSBub3QgYWxsb3dlZCIKIG1zZ3N0ciAiIgogCi0jOiBpZGVudC5jOjQwNAorIzogaWRlbnQuYzo0MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAibmFtZSBjb25zaXN0cyBvbmx5IG9mIGRpc2FsbG93ZWQgY2hhcmFjdGVyczogJXMiCiBtc2dzdHIgIiIKIAotIzogaWRlbnQuYzo0MTkgYnVpbHRpbi9jb21taXQuYzo2MDYKKyM6IGlkZW50LmM6NDM2IGJ1aWx0aW4vY29tbWl0LmM6NjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZGF0ZSBmb3JtYXQ6ICVzIgogbXNnc3RyICIiCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjM1Ci1tc2dpZCAibXVsdGlwbGUgZmlsdGVyLXNwZWNzIGNhbm5vdCBiZSBjb21iaW5lZCIKKyM6IGxpc3Qtb2JqZWN0cy5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICJlbnRyeSAnJXMnIGluIHRyZWUgJXMgaGFzIHRyZWUgbW9kZSwgYnV0IGlzIG5vdCBhIHRyZWUiCittc2dzdHIgIiIKKworIzogbGlzdC1vYmplY3RzLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgImVudHJ5ICclcycgaW4gdHJlZSAlcyBoYXMgYmxvYiBtb2RlLCBidXQgaXMgbm90IGEgYmxvYiIKK21zZ3N0ciAiIgorCisjOiBsaXN0LW9iamVjdHMuYzozNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGxvYWQgcm9vdCB0cmVlIGZvciBjb21taXQgJXMiCittc2dzdHIgIiIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIHNwYXJzZSBibG9iIGluICclcyciCittc2dzdHIgIiIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2Ugc3BhcnNlIGZpbHRlciBkYXRhIGluICVzIgogbXNnc3RyICIiCiAKICM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjU4Ci1tc2dpZCAib25seSAndHJlZTowJyBpcyBzdXBwb3J0ZWQiCittc2dpZCAiZXhwZWN0ZWQgJ3RyZWU6PGRlcHRoPiciCiBtc2dzdHIgIiIKIAotIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTM3Ci1tc2dpZCAiY2Fubm90IGNoYW5nZSBwYXJ0aWFsIGNsb25lIHByb21pc29yIHJlbW90ZSIKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjczCittc2dpZCAic3BhcnNlOnBhdGggZmlsdGVycyBzdXBwb3J0IGhhcyBiZWVuIGRyb3BwZWQiCittc2dzdHIgIiIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBmaWx0ZXItc3BlYyAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJtdXN0IGVzY2FwZSBjaGFyIGluIHN1Yi1maWx0ZXItc3BlYzogJyVjJyIKK21zZ3N0ciAiIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxNDQKK21zZ2lkICJleHBlY3RlZCBzb21ldGhpbmcgYWZ0ZXIgY29tYmluZToiCittc2dzdHIgIiIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MjI2Cittc2dpZCAibXVsdGlwbGUgZmlsdGVyLXNwZWNzIGNhbm5vdCBiZSBjb21iaW5lZCIKIG1zZ3N0ciAiIgogCiAjOiBsb2NrZmlsZS5jOjE1MQpAQCAtMjcxMywxMTMgKzQwMzksMTEwIEBACiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgdGhlIGNhY2hlIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLmM6MTA3IHJlcmVyZS5jOjcyMCBidWlsdGluL2FtLmM6MTg5OSBidWlsdGluL2FtLmM6MTkzMwotIzogYnVpbHRpbi9jaGVja291dC5jOjM4NyBidWlsdGluL2NoZWNrb3V0LmM6NzA4IGJ1aWx0aW4vY2xvbmUuYzo3NjQKKyM6IG1lcmdlLmM6MTA3IHJlcmVyZS5jOjcyMCBidWlsdGluL2FtLmM6MTg3OSBidWlsdGluL2FtLmM6MTkxMworIzogYnVpbHRpbi9jaGVja291dC5jOjU0MSBidWlsdGluL2NoZWNrb3V0LmM6ODAwIGJ1aWx0aW4vY2xvbmUuYzo4MTAKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNjUKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNTYKIG1zZ2lkICIoYmFkIGNvbW1pdClcbiIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJhZGRfY2FjaGVpbmZvIGZhaWxlZCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkX2NhY2hlaW5mbyBmYWlsZWQgdG8gcmVmcmVzaCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6NDM1Ci1tc2dpZCAiZXJyb3IgYnVpbGRpbmcgdHJlZXMiCi1tc2dzdHIgIiIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTA2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo4NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwYXRoICclcyclcyIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5MTcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyAlcyB0byBtYWtlIHJvb20gZm9yIHN1YmRpcmVjdG9yeVxuIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkzMSBtZXJnZS1yZWN1cnNpdmUuYzo5NTAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg5OSBtZXJnZS1yZWN1cnNpdmUuYzo5MTgKIG1zZ2lkICI6IHBlcmhhcHMgYSBEL0YgY29uZmxpY3Q/IgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk0MAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5ODIgYnVpbHRpbi9jYXQtZmlsZS5jOjM5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NDkgYnVpbHRpbi9jYXQtZmlsZS5jOjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCAlcyAnJXMnIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk4NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJsb2IgZXhwZWN0ZWQgZm9yICVzICclcyciCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTAwOAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyc6ICVzIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEwMTkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3ltbGluayAnJXMnOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZG8gbm90IGtub3cgd2hhdCB0byBkbyB3aXRoICUwNm8gJXMgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjEyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMTkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG5vdCBjaGVja2VkIG91dCkiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxOQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTE5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChjb21taXRzIG5vdCBwcmVzZW50KSIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjI2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKGNvbW1pdHMgZG9uJ3QgZm9sbG93IG1lcmdlLWJhc2UpIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMzQgbWVyZ2UtcmVjdXJzaXZlLmM6MTI0NgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxMyBtZXJnZS1yZWN1cnNpdmUuYzoxMjI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMgdG8gdGhlIGZvbGxvd2luZyBjb21taXQ6IgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMzcgbWVyZ2UtcmVjdXJzaXZlLmM6MTI0OQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxNiBtZXJnZS1yZWN1cnNpdmUuYzoxMjI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3MQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChtZXJnZSBmb2xsb3dpbmcgY29tbWl0cyBub3QgZm91bmQpIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobm90IGZhc3QtZm9yd2FyZCkiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3NgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1NgogbXNnaWQgIkZvdW5kIGEgcG9zc2libGUgbWVyZ2UgcmVzb2x1dGlvbiBmb3IgdGhlIHN1Ym1vZHVsZTpcbiIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjc5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJZiB0aGlzIGlzIGNvcnJlY3Qgc2ltcGx5IGFkZCBpdCB0byB0aGUgaW5kZXggZm9yIGV4YW1wbGVcbiIKQEAgLTI4MzAsMTA5ICs0MTUzLDEwOCBAQAogIndoaWNoIHdpbGwgYWNjZXB0IHRoaXMgc3VnZ2VzdGlvbi5cbiIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjg4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG11bHRpcGxlIG1lcmdlcyBmb3VuZCkiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM1OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM0MQogbXNnaWQgIkZhaWxlZCB0byBleGVjdXRlIGludGVybmFsIG1lcmdlIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNjMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGFkZCAlcyB0byBkYXRhYmFzZSIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzk1CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG8tbWVyZ2luZyAlcyIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDE2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkVycm9yOiBSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzOyB3cml0aW5nIHRvICVzIGluc3RlYWQuIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0ODMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0ICIKICJpbiB0cmVlLiIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDg4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgdG8gJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgIgogImxlZnQgaW4gdHJlZS4iCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ5NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzIGxlZnQgIgogImluIHRyZWUgYXQgJXMuIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MDAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyB0byAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyAiCiAibGVmdCBpbiB0cmVlIGF0ICVzLiIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTM0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTI2CiBtc2dpZCAicmVuYW1lIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MzQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MjYKIG1zZ2lkICJyZW5hbWVkIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1ODggbWVyZ2UtcmVjdXJzaXZlLmM6MTczNyBtZXJnZS1yZWN1cnNpdmUuYzoyMzY5Ci0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMTI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTc3IG1lcmdlLXJlY3Vyc2l2ZS5jOjI0NzIgbWVyZ2UtcmVjdXJzaXZlLmM6MzExNwogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgJXMiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTYwMgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTU4NworIywgYy1mb3JtYXQKK21zZ2lkICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzLCBldmVuIHRob3VnaCBpdCdzIGluIHRoZSB3YXkuIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9hZGQpOiBSZW5hbWUgJXMtPiVzIGluICVzLiAgQWRkZWQgJXMgaW4gJXMiCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTY3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBhIGRpcmVjdG9yeSBpbiAlcyBhZGRpbmcgYXMgJXMgaW5zdGVhZCIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjA3CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXM7IGFkZGluZyBhcyAlcyBpbnN0ZWFkIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MzMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIFwiJXNcIi0+XCIlc1wiIGluIGJyYW5jaCBcIiVzXCIgcmVuYW1lIFwiJXMiCiAiXCItPlwiJXNcIiBpbiBcIiVzXCIlcyIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjM4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzEzCiBtc2dpZCAiIChsZWZ0IHVucmVzb2x2ZWQpIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2OTkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiBSZW5hbWUgJXMtPiVzIGluICVzLiBSZW5hbWUgJXMtPiVzIGluICVzIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MzQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiUmVuYW1pbmcgJXMgdG8gJXMgYW5kICVzIHRvICVzIGluc3RlYWQiCi1tc2dzdHIgIiIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTc0NgotIywgYy1mb3JtYXQKLW1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzLCBldmVuIHRob3VnaCBpdCdzIGluIHRoZSB3YXkuIgotbXNnc3RyICIiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5NTIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChkaXJlY3RvcnkgcmVuYW1lIHNwbGl0KTogVW5jbGVhciB3aGVyZSB0byBwbGFjZSAlcyBiZWNhdXNlICIKQEAgLTI5NDAsMjgwICs0MjYyLDM0NCBAQAogImdldHRpbmcgYSBtYWpvcml0eSBvZiB0aGUgZmlsZXMuIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5ODQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogRXhpc3RpbmcgZmlsZS9kaXIgYXQgJXMgaW4gdGhlIHdheSBvZiAiCiAiaW1wbGljaXQgZGlyZWN0b3J5IHJlbmFtZShzKSBwdXR0aW5nIHRoZSBmb2xsb3dpbmcgcGF0aChzKSB0aGVyZTogJXMuIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5OTQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogQ2Fubm90IG1hcCBtb3JlIHRoYW4gb25lIHBhdGggdG8gJXM7ICIKICJpbXBsaWNpdCBkaXJlY3RvcnkgcmVuYW1lcyB0cmllZCB0byBwdXQgdGhlc2UgcGF0aHMgdGhlcmU6ICVzIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwODYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIxOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIGRpcmVjdG9yeSAlcy0+JXMgaW4gJXMuIFJlbmFtZSBkaXJlY3RvcnkgJXMtIgogIj4lcyBpbiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyMzMxCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyNDM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJXQVJOSU5HOiBBdm9pZGluZyBhcHBseWluZyAlcyAtPiAlcyByZW5hbWUgdG8gJXMsIGJlY2F1c2UgJXMgaXRzZWxmIHdhcyAiCiAicmVuYW1lZC4iCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjczNwotIywgYy1mb3JtYXQKLW1zZ2lkICJDT05GTElDVCAocmVuYW1lL2FkZCk6IFJlbmFtZSAlcy0+JXMgaW4gJXMuICVzIGFkZGVkIGluICVzIgotbXNnc3RyICIiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI3NjMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQWRkaW5nIG1lcmdlZCAlcyIKLW1zZ3N0ciAiIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyNzcwIG1lcmdlLXJlY3Vyc2l2ZS5jOjMxMjcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQWRkaW5nIGFzICVzIGluc3RlYWQiCi1tc2dzdHIgIiIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjkzNAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjk2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgJXMiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjkzNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjk2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgJXMgaXMgbm90IGEgYmxvYiIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDA2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDI4CiBtc2dpZCAibW9kaWZ5IgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjgKIG1zZ2lkICJtb2RpZmllZCIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDE3CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDQwCiBtc2dpZCAiY29udGVudCIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDQ0CiBtc2dpZCAiYWRkL2FkZCIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDcxCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwZWQgJXMgKG1lcmdlZCBzYW1lIGFzIGV4aXN0aW5nKSIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkzIGdpdC1zdWJtb2R1bGUuc2g6ODU4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDg5IGdpdC1zdWJtb2R1bGUuc2g6MTAwMwogbXNnaWQgInN1Ym1vZHVsZSIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDk0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUICglcyk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMTYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nIGFzICVzIGluc3RlYWQiCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGF0aCB1cGRhdGVkOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCBpbiAlczsgIgorIm1vdmluZyBpdCB0byAlcy4iCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGZpbGUgbG9jYXRpb24pOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCAiCisiaW4gJXMsIHN1Z2dlc3RpbmcgaXQgc2hvdWxkIHBlcmhhcHMgYmUgbW92ZWQgdG8gJXMuIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhdGggdXBkYXRlZDogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgd2FzIHJlbmFtZWQgaW4gIgorIiVzOyBtb3ZpbmcgaXQgdG8gJXMuIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChmaWxlIGxvY2F0aW9uKTogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgIgorIndhcyByZW5hbWVkIGluICVzLCBzdWdnZXN0aW5nIGl0IHNob3VsZCBwZXJoYXBzIGJlIG1vdmVkIHRvICVzLiIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNDIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNTAKIG1zZ2lkICJmaWxlL2RpcmVjdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjQ4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzU1CiBtc2dpZCAiZGlyZWN0b3J5L2ZpbGUiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI1NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDT05GTElDVCAoJXMpOiBUaGVyZSBpcyBhIGRpcmVjdG9yeSB3aXRoIG5hbWUgJXMgaW4gJXMuIEFkZGluZyAlcyBhcyAlcyIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjY0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFkZGluZyAlcyIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMzAwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzgwCiAjLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKLSIgICVzIgorbXNnaWQgIkNPTkZMSUNUIChhZGQvYWRkKTogTWVyZ2UgY29uZmxpY3QgaW4gJXMiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMxMQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQyNAogbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZSEiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMyMAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJtZXJnaW5nIG9mIHRyZWVzICVzIGFuZCAlcyBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQxOQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzNwogbXNnaWQgIk1lcmdpbmc6IgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MzIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yOiIKIG1zZ2lkX3BsdXJhbCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yczoiCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDcxCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjAwCiBtc2dpZCAibWVyZ2UgcmV0dXJuZWQgbm8gY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1MzcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgorIiAgJXMiCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mzc1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzU1MyBidWlsdGluL21lcmdlLmM6NjkxIGJ1aWx0aW4vbWVyZ2UuYzo4NDkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3NzQgYnVpbHRpbi9tZXJnZS5jOjY5NyBidWlsdGluL21lcmdlLmM6ODc3CiBtc2dpZCAiVW5hYmxlIHRvIHdyaXRlIGluZGV4LiIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6NjUKKyM6IG1pZHguYzo2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IGZpbGUgJXMgaXMgdG9vIHNtYWxsIgogbXNnc3RyICIiCiAKLSM6IG1pZHguYzo4MQorIzogbWlkeC5jOjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggc2lnbmF0dXJlIDB4JTA4eCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgMHglMDh4IgogbXNnc3RyICIiCiAKLSM6IG1pZHguYzo4NgorIzogbWlkeC5jOjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggdmVyc2lvbiAlZCBub3QgcmVjb2duaXplZCIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6OTEKKyM6IG1pZHguYzo5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJoYXNoIHZlcnNpb24gJXUgZG9lcyBub3QgbWF0Y2giCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjEwNQorIzogbWlkeC5jOjEwOAogbXNnaWQgImludmFsaWQgY2h1bmsgb2Zmc2V0ICh0b28gbGFyZ2UpIgogbXNnc3RyICIiCiAKLSM6IG1pZHguYzoxMjkKKyM6IG1pZHguYzoxMzIKIG1zZ2lkICJ0ZXJtaW5hdGluZyBtdWx0aS1wYWNrLWluZGV4IGNodW5rIGlkIGFwcGVhcnMgZWFybGllciB0aGFuIGV4cGVjdGVkIgogbXNnc3RyICIiCiAKLSM6IG1pZHguYzoxNDIKKyM6IG1pZHguYzoxNDUKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgcGFjay1uYW1lIGNodW5rIgogbXNnc3RyICIiCiAKLSM6IG1pZHguYzoxNDQKKyM6IG1pZHguYzoxNDcKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgT0lEIGZhbm91dCBjaHVuayIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6MTQ2CisjOiBtaWR4LmM6MTQ5CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIE9JRCBsb29rdXAgY2h1bmsiCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjE0OAorIzogbWlkeC5jOjE1MQogbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBvYmplY3Qgb2Zmc2V0cyBjaHVuayIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6MTYyCisjOiBtaWR4LmM6MTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggcGFjayBuYW1lcyBvdXQgb2Ygb3JkZXI6ICclcycgYmVmb3JlICclcyciCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjIwNQorIzogbWlkeC5jOjIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFjay1pbnQtaWQ6ICV1ICgldSB0b3RhbCBwYWNrcykiCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjI0NgorIzogbWlkeC5jOjI2MAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggc3RvcmVzIGEgNjQtYml0IG9mZnNldCwgYnV0IG9mZl90IGlzIHRvbyBzbWFsbCIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6MjcxCisjOiBtaWR4LmM6Mjg4CiBtc2dpZCAiZXJyb3IgcHJlcGFyaW5nIHBhY2tmaWxlIGZyb20gbXVsdGktcGFjay1pbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6NDA3CisjOiBtaWR4LmM6NDcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBhZGQgcGFja2ZpbGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6NDEzCisjOiBtaWR4LmM6NDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2staW5kZXggJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6NTA3CisjOiBtaWR4LmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBsb2NhdGUgb2JqZWN0ICVkIGluIHBhY2tmaWxlIgogbXNnc3RyICIiCiAKLSM6IG1pZHguYzo5NDMKKyM6IG1pZHguYzo4NDIKK21zZ2lkICJBZGRpbmcgcGFja2ZpbGVzIHRvIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjg3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaWQgbm90IHNlZSBwYWNrLWZpbGUgJXMgdG8gZHJvcCIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6OTczCittc2dpZCAiV3JpdGluZyBjaHVua3MgdG8gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTA1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY2xlYXIgbXVsdGktcGFjay1pbmRleCBhdCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6OTgxCisjOiBtaWR4LmM6MTEwOAorbXNnaWQgIkxvb2tpbmcgZm9yIHJlZmVyZW5jZWQgcGFja2ZpbGVzIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzoxMTIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJvaWQgZmFub3V0IG91dCBvZiBvcmRlcjogZmFub3V0WyVkXSA9ICU8UFJJeDMyPiA+ICU8UFJJeDMyPiA9IGZhbm91dFslZF0iCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjk5MgorIzogbWlkeC5jOjExMjgKK21zZ2lkICJWZXJpZnlpbmcgT0lEIG9yZGVyIGluIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjExMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAib2lkIGxvb2t1cCBvdXQgb2Ygb3JkZXI6IG9pZFslZF0gPSAlcyA+PSAlcyA9IG9pZFslZF0iCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjk5NgorIzogbWlkeC5jOjExNTcKK21zZ2lkICJTb3J0aW5nIG9iamVjdHMgYnkgcGFja2ZpbGUiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjExNjQKIG1zZ2lkICJWZXJpZnlpbmcgb2JqZWN0IG9mZnNldHMiCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjEwMDQKKyM6IG1pZHguYzoxMTgwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBsb2FkIHBhY2sgZW50cnkgZm9yIG9pZFslZF0gPSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBtaWR4LmM6MTAxMAorIzogbWlkeC5jOjExODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvYWQgcGFjay1pbmRleCBmb3IgcGFja2ZpbGUgJXMiCiBtc2dzdHIgIiIKIAotIzogbWlkeC5jOjEwMTkKKyM6IG1pZHguYzoxMTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImluY29ycmVjdCBvYmplY3Qgb2Zmc2V0IGZvciBvaWRbJWRdID0gJXM6ICU8UFJJeDY0PiAhPSAlPFBSSXg2ND4iCiBtc2dzdHIgIiIKIAotIzogbmFtZS1oYXNoLmM6NTMyCisjOiBtaWR4LmM6MTIyMAorbXNnaWQgIkNvdW50aW5nIHJlZmVyZW5jZWQgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTIzMAorbXNnaWQgIkZpbmRpbmcgYW5kIGRlbGV0aW5nIHVucmVmZXJlbmNlZCBwYWNrZmlsZXMiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjEzODgKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgcGFjay1vYmplY3RzIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzoxNDA3Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCBwYWNrLW9iamVjdHMiCittc2dzdHIgIiIKKworIzogbmFtZS1oYXNoLmM6NTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbGF6eV9kaXIgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBuYW1lLWhhc2guYzo1NTQKKyM6IG5hbWUtaGFzaC5jOjU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgogbXNnc3RyICIiCiAKLSM6IG5hbWUtaGFzaC5jOjU2MAorIzogbmFtZS1oYXNoLmM6NTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBqb2luIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgogbXNnc3RyICIiCiAKLSM6IG5vdGVzLW1lcmdlLmM6Mjc1CisjOiBub3Rlcy1tZXJnZS5jOjI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIHByZXZpb3VzIG5vdGVzIG1lcmdlICglcyBleGlzdHMpLlxuIgpAQCAtMzIyMSwyMSArNDYwNywyMSBAQAogImNvbW1pdC9hYm9ydCB0aGUgcHJldmlvdXMgbWVyZ2UgYmVmb3JlIHlvdSBzdGFydCBhIG5ldyBub3RlcyBtZXJnZS4iCiBtc2dzdHIgIiIKIAotIzogbm90ZXMtbWVyZ2UuYzoyODIKKyM6IG5vdGVzLW1lcmdlLmM6Mjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBub3RlcyBtZXJnZSAoJXMgZXhpc3RzKS4iCiBtc2dzdHIgIiIKIAotIzogbm90ZXMtdXRpbHMuYzo0NQorIzogbm90ZXMtdXRpbHMuYzo0NgogbXNnaWQgIkNhbm5vdCBjb21taXQgdW5pbml0aWFsaXplZC91bnJlZmVyZW5jZWQgbm90ZXMgdHJlZSIKIG1zZ3N0ciAiIgogCi0jOiBub3Rlcy11dGlscy5jOjEwNAorIzogbm90ZXMtdXRpbHMuYzoxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkIG5vdGVzLnJld3JpdGVNb2RlIHZhbHVlOiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IG5vdGVzLXV0aWxzLmM6MTE0CisjOiBub3Rlcy11dGlscy5jOjExNQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byByZXdyaXRlIG5vdGVzIGluICVzIChvdXRzaWRlIG9mIHJlZnMvbm90ZXMvKSIKIG1zZ3N0ciAiIgpAQCAtMzI0NCwxMiArNDYzMCwxMiBAQAogIy4gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlLCB0aGUgc2Vjb25kICVzIGlzCiAjLiBpdHMgdmFsdWUuCiAjLgotIzogbm90ZXMtdXRpbHMuYzoxNDQKKyM6IG5vdGVzLXV0aWxzLmM6MTQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCAlcyB2YWx1ZTogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBvYmplY3QuYzo1NAorIzogb2JqZWN0LmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvYmplY3QgdHlwZSBcIiVzXCIiCiBtc2dzdHIgIiIKQEAgLTMyNjksMzAgKzQ2NTUsOTAgQEAKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2Ugb2JqZWN0OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBvYmplY3QuYzoyNjYgb2JqZWN0LmM6Mjc3CisjOiBvYmplY3QuYzoyNjYgb2JqZWN0LmM6Mjc4CiAjLCBjLWZvcm1hdAotbXNnaWQgInNoYTEgbWlzbWF0Y2ggJXMiCittc2dpZCAiaGFzaCBtaXNtYXRjaCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBwYWNrZmlsZS5jOjYwNworIzogcGFja2ZpbGUuYzo2MjkKIG1zZ2lkICJvZmZzZXQgYmVmb3JlIGVuZCBvZiBwYWNrZmlsZSAoYnJva2VuIC5pZHg/KSIKIG1zZ3N0ciAiIgogCi0jOiBwYWNrZmlsZS5jOjE4NjQKKyM6IHBhY2tmaWxlLmM6MTg5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJvZmZzZXQgYmVmb3JlIHN0YXJ0IG9mIHBhY2sgaW5kZXggZm9yICVzIChjb3JydXB0IGluZGV4PykiCiBtc2dzdHIgIiIKIAotIzogcGFja2ZpbGUuYzoxODY4CisjOiBwYWNrZmlsZS5jOjE5MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAib2Zmc2V0IGJleW9uZCBlbmQgb2YgcGFjayBpbmRleCBmb3IgJXMgKHRydW5jYXRlZCBpbmRleD8pIgogbXNnc3RyICIiCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo2NzIKKyM6IHBhY2stYml0bWFwLmM6ODAwIHBhY2stYml0bWFwLmM6ODA2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IHNpemUgb2YgJXMiCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy5jOjM4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlcXVpcmVzIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIGluY29tcGF0aWJsZSB3aXRoICVzIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyA6IGluY29tcGF0aWJsZSB3aXRoIHNvbWV0aGluZyBlbHNlIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MiBwYXJzZS1vcHRpb25zLmM6OTYgcGFyc2Utb3B0aW9ucy5jOjMxNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0YWtlcyBubyB2YWx1ZSIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXNuJ3QgYXZhaWxhYmxlIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzoyMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIHZhbHVlIHdpdGggYW4gb3B0aW9uYWwgay9tL2cgc3VmZml4IgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzozODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW1iaWd1b3VzIG9wdGlvbjogJXMgKGNvdWxkIGJlIC0tJXMlcyBvciAtLSVzJXMpIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo0MjAgcGFyc2Utb3B0aW9ucy5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJkaWQgeW91IG1lYW4gYC0tJXNgICh3aXRoIHR3byBkYXNoZXMpPyIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHN3aXRjaCBgJWMnIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBub24tYXNjaWkgb3B0aW9uIGluIHN0cmluZzogYCVzJyIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODg1CiBtc2dpZCAiLi4uIgogbXNnc3RyICIiCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo2OTEKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidXNhZ2U6ICVzIgogbXNnc3RyICIiCkBAIC0zMzAwLDI1MSArNDc0Niw0MzQgQEAKICMuIFRSQU5TTEFUT1JTOiB0aGUgY29sb24gaGVyZSBzaG91bGQgYWxpZ24gd2l0aCB0aGUKICMuIG9uZSBpbiAidXNhZ2U6ICVzIiB0cmFuc2xhdGlvbi4KICMuCi0jOiBwYXJzZS1vcHRpb25zLmM6Njk3CisjOiBwYXJzZS1vcHRpb25zLmM6OTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgIG9yOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzAwCisjOiBwYXJzZS1vcHRpb25zLmM6OTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlcyIKIG1zZ3N0ciAiIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzM5CisjOiBwYXJzZS1vcHRpb25zLmM6OTUyCiBtc2dpZCAiLU5VTSIKIG1zZ3N0ciAiIgogCi0jOiBwYXJzZS1vcHRpb25zLWNiLmM6MzcKKyM6IHBhcnNlLW9wdGlvbnMuYzo5NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWxpYXMgb2YgLS0lcyIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLWNiLmM6MjAgcGFyc2Utb3B0aW9ucy1jYi5jOjI0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBleHBpcmF0aW9uIGRhdGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBwYXJzZS1vcHRpb25zLWNiLmM6MTA5CisjOiBwYXJzZS1vcHRpb25zLWNiLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBcImFsd2F5c1wiLCBcImF1dG9cIiwgb3IgXCJuZXZlclwiIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzoxMzAgcGFyc2Utb3B0aW9ucy1jYi5jOjE0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IG5hbWUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBwYXRoLmM6ODk0CisjOiBwYXRoLmM6OTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBtYWtlICVzIHdyaXRhYmxlIGJ5IGdyb3VwIgogbXNnc3RyICIiCiAKLSM6IHBhdGhzcGVjLmM6MTI5CisjOiBwYXRoc3BlYy5jOjEzMAogbXNnaWQgIkVzY2FwZSBjaGFyYWN0ZXIgJ1xcJyBub3QgYWxsb3dlZCBhcyBsYXN0IGNoYXJhY3RlciBpbiBhdHRyIHZhbHVlIgogbXNnc3RyICIiCiAKLSM6IHBhdGhzcGVjLmM6MTQ3CisjOiBwYXRoc3BlYy5jOjE0OAogbXNnaWQgIk9ubHkgb25lICdhdHRyOicgc3BlY2lmaWNhdGlvbiBpcyBhbGxvd2VkLiIKIG1zZ3N0ciAiIgogCi0jOiBwYXRoc3BlYy5jOjE1MAorIzogcGF0aHNwZWMuYzoxNTEKIG1zZ2lkICJhdHRyIHNwZWMgbXVzdCBub3QgYmUgZW1wdHkiCiBtc2dzdHIgIiIKIAotIzogcGF0aHNwZWMuYzoxOTMKKyM6IHBhdGhzcGVjLmM6MTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgYXR0cmlidXRlIG5hbWUgJXMiCiBtc2dzdHIgIiIKIAotIzogcGF0aHNwZWMuYzoyNTgKKyM6IHBhdGhzcGVjLmM6MjU5CiBtc2dpZCAiZ2xvYmFsICdnbG9iJyBhbmQgJ25vZ2xvYicgcGF0aHNwZWMgc2V0dGluZ3MgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiIgogCi0jOiBwYXRoc3BlYy5jOjI2NQorIzogcGF0aHNwZWMuYzoyNjYKIG1zZ2lkICIiCiAiZ2xvYmFsICdsaXRlcmFsJyBwYXRoc3BlYyBzZXR0aW5nIGlzIGluY29tcGF0aWJsZSB3aXRoIGFsbCBvdGhlciBnbG9iYWwgIgogInBhdGhzcGVjIHNldHRpbmdzIgogbXNnc3RyICIiCiAKLSM6IHBhdGhzcGVjLmM6MzA1CisjOiBwYXRoc3BlYy5jOjMwNgogbXNnaWQgImludmFsaWQgcGFyYW1ldGVyIGZvciBwYXRoc3BlYyBtYWdpYyAncHJlZml4JyIKIG1zZ3N0ciAiIgogCi0jOiBwYXRoc3BlYy5jOjMyNgorIzogcGF0aHNwZWMuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBwYXRoc3BlYyBtYWdpYyAnJS4qcycgaW4gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBwYXRoc3BlYy5jOjMzMQorIzogcGF0aHNwZWMuYzozMzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWlzc2luZyAnKScgYXQgdGhlIGVuZCBvZiBwYXRoc3BlYyBtYWdpYyBpbiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHBhdGhzcGVjLmM6MzY5CisjOiBwYXRoc3BlYy5jOjM3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmltcGxlbWVudGVkIHBhdGhzcGVjIG1hZ2ljICclYycgaW4gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBwYXRoc3BlYy5jOjQyOAorIzogcGF0aHNwZWMuYzo0MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6ICdsaXRlcmFsJyBhbmQgJ2dsb2InIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIiIKIAotIzogcGF0aHNwZWMuYzo0NDEKKyM6IHBhdGhzcGVjLmM6NDQyCiAjLCBjLWZvcm1hdAotbXNnaWQgIiVzOiAnJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSIKK21zZ2lkICIlczogJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkgYXQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBwYXRoc3BlYy5jOjUxNQorIzogcGF0aHNwZWMuYzo1MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyAobW5lbW9uaWM6ICclYycpIgogbXNnc3RyICIiCiAKLSM6IHBhdGhzcGVjLmM6NTI1CisjOiBwYXRoc3BlYy5jOjUyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogcGF0aHNwZWMgbWFnaWMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvbW1hbmQ6ICVzIgogbXNnc3RyICIiCiAKLSM6IHBhdGhzcGVjLmM6NTkyCisjOiBwYXRoc3BlYy5jOjU5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCiBtc2dzdHIgIiIKIAotIzogcGt0LWxpbmUuYzoxMDQKKyM6IHBhdGhzcGVjLmM6NjM5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgaXMgYmFkbHkgcXVvdGVkOiAlcyIKK21zZ3N0ciAiIgorCisjOiBwa3QtbGluZS5jOjkyCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZsdXNoIHBhY2tldCIKK21zZ3N0ciAiIgorCisjOiBwa3QtbGluZS5jOjk5Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGRlbGltIHBhY2tldCIKK21zZ3N0ciAiIgorCisjOiBwa3QtbGluZS5jOjEwNgogbXNnaWQgImZsdXNoIHBhY2tldCB3cml0ZSBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogcGt0LWxpbmUuYzoxNDIgcGt0LWxpbmUuYzoyMjgKKyM6IHBrdC1saW5lLmM6MTQ2IHBrdC1saW5lLmM6MjMyCiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGltcG9zc2libHkgbG9uZyBsaW5lIgogbXNnc3RyICIiCiAKLSM6IHBrdC1saW5lLmM6MTU4IHBrdC1saW5lLmM6MTYwCisjOiBwa3QtbGluZS5jOjE2MiBwa3QtbGluZS5jOjE2NAogbXNnaWQgInBhY2tldCB3cml0ZSB3aXRoIGZvcm1hdCBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogcGt0LWxpbmUuYzoxOTIKKyM6IHBrdC1saW5lLmM6MTk2CiBtc2dpZCAicGFja2V0IHdyaXRlIGZhaWxlZCAtIGRhdGEgZXhjZWVkcyBtYXggcGFja2V0IHNpemUiCiBtc2dzdHIgIiIKIAotIzogcGt0LWxpbmUuYzoxOTkgcGt0LWxpbmUuYzoyMDYKKyM6IHBrdC1saW5lLmM6MjAzIHBrdC1saW5lLmM6MjEwCiBtc2dpZCAicGFja2V0IHdyaXRlIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBwa3QtbGluZS5jOjI5MQorIzogcGt0LWxpbmUuYzoyOTUKIG1zZ2lkICJyZWFkIGVycm9yIgogbXNnc3RyICIiCiAKLSM6IHBrdC1saW5lLmM6Mjk5CisjOiBwa3QtbGluZS5jOjMwMwogbXNnaWQgInRoZSByZW1vdGUgZW5kIGh1bmcgdXAgdW5leHBlY3RlZGx5IgogbXNnc3RyICIiCiAKLSM6IHBrdC1saW5lLmM6MzI3CisjOiBwa3QtbGluZS5jOjMzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIGxpbmUgbGVuZ3RoIGNoYXJhY3RlcjogJS40cyIKIG1zZ3N0ciAiIgogCi0jOiBwa3QtbGluZS5jOjMzNyBwa3QtbGluZS5jOjM0MgorIzogcGt0LWxpbmUuYzozNDEgcGt0LWxpbmUuYzozNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBsaW5lIGxlbmd0aCAlZCIKIG1zZ3N0ciAiIgogCi0jOiBwcmVsb2FkLWluZGV4LmM6MTE4CisjOiBwa3QtbGluZS5jOjM2MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdGUgZXJyb3I6ICVzIgorbXNnc3RyICIiCisKKyM6IHByZWxvYWQtaW5kZXguYzoxMTkKIG1zZ2lkICJSZWZyZXNoaW5nIGluZGV4IgogbXNnc3RyICIiCiAKLSM6IHByZWxvYWQtaW5kZXguYzoxMzcKKyM6IHByZWxvYWQtaW5kZXguYzoxMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0aHJlYWRlZCBsc3RhdDogJXMiCiBtc2dzdHIgIiIKIAotIzogcHJldHR5LmM6OTYyCisjOiBwcmV0dHkuYzo5ODEKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgLS1wcmV0dHkgZm9ybWF0IgogbXNnc3RyICIiCiAKLSM6IHJhbmdlLWRpZmYuYzo1NgorIzogcHJvbWlzb3ItcmVtb3RlLmM6MjMKK21zZ2lkICJSZW1vdGUgd2l0aCBubyBVUkwiCittc2dzdHIgIiIKKworIzogcHJvbWlzb3ItcmVtb3RlLmM6NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvbWlzb3IgcmVtb3RlIG5hbWUgY2Fubm90IGJlZ2luIHdpdGggJy8nOiAlcyIKK21zZ3N0ciAiIgorCisjOiByYW5nZS1kaWZmLmM6NzUKIG1zZ2lkICJjb3VsZCBub3Qgc3RhcnQgYGxvZ2AiCiBtc2dzdHIgIiIKIAotIzogcmFuZ2UtZGlmZi5jOjU5CisjOiByYW5nZS1kaWZmLmM6NzcKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBgbG9nYCBvdXRwdXQiCiBtc2dzdHIgIiIKIAotIzogcmFuZ2UtZGlmZi5jOjc0IHNlcXVlbmNlci5jOjQ3NjQKKyM6IHJhbmdlLWRpZmYuYzo5NiBzZXF1ZW5jZXIuYzo1MDIwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiByYW5nZS1kaWZmLmM6MjI0CisjOiByYW5nZS1kaWZmLmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBnaXQgaGVhZGVyICclLipzJyIKK21zZ3N0ciAiIgorCisjOiByYW5nZS1kaWZmLmM6Mjg1CiBtc2dpZCAiZmFpbGVkIHRvIGdlbmVyYXRlIGRpZmYiCiBtc2dzdHIgIiIKIAotIzogcmFuZ2UtZGlmZi5jOjQ1NSByYW5nZS1kaWZmLmM6NDU3CisjOiByYW5nZS1kaWZmLmM6NTE4IHJhbmdlLWRpZmYuYzo1MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGxvZyBmb3IgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiByZWFkLWNhY2hlLmM6MTQ5MAorIzogcmVhZC1jYWNoZS5jOjY4MAorIywgYy1mb3JtYXQKK21zZ2lkICJ3aWxsIG5vdCBhZGQgZmlsZSBhbGlhcyAnJXMnICgnJXMnIGFscmVhZHkgZXhpc3RzIGluIGluZGV4KSIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6Njk2Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBhbiBlbXB0eSBibG9iIGluIHRoZSBvYmplY3QgZGF0YWJhc2UiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2FuIG9ubHkgYWRkIHJlZ3VsYXIgZmlsZXMsIHN5bWJvbGljIGxpbmtzIG9yIGdpdC1kaXJlY3RvcmllcyIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6NzIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgaGF2ZSBhIGNvbW1pdCBjaGVja2VkIG91dCIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6Nzc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbmRleCBmaWxlICclcyciCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjc5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWRkICclcycgdG8gaW5kZXgiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjgwNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxMzMwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgYXBwZWFycyBhcyBib3RoIGEgZmlsZSBhbmQgYXMgYSBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE1MzYKIG1zZ2lkICJSZWZyZXNoIGluZGV4IgogbXNnc3RyICIiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNjA0CisjOiByZWFkLWNhY2hlLmM6MTY1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiaW5kZXgudmVyc2lvbiBzZXQsIGJ1dCB0aGUgdmFsdWUgaXMgaW52YWxpZC5cbiIKICJVc2luZyB2ZXJzaW9uICVpIgogbXNnc3RyICIiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNjE0CisjOiByZWFkLWNhY2hlLmM6MTY2MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiR0lUX0lOREVYX1ZFUlNJT04gc2V0LCBidXQgdGhlIHZhbHVlIGlzIGludmFsaWQuXG4iCiAiVXNpbmcgdmVyc2lvbiAlaSIKIG1zZ3N0ciAiIgogCi0jOiByZWFkLWNhY2hlLmM6MTc5MgorIzogcmVhZC1jYWNoZS5jOjE3MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHNpZ25hdHVyZSAweCUwOHgiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE3MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJWQiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE3MjkKK21zZ2lkICJiYWQgaW5kZXggZmlsZSBzaGExIHNpZ25hdHVyZSIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MTc1OQorIywgYy1mb3JtYXQKK21zZ2lkICJpbmRleCB1c2VzICUuNHMgZXh0ZW5zaW9uLCB3aGljaCB3ZSBkbyBub3QgdW5kZXJzdGFuZCIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MTc2MQorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlLjRzIGV4dGVuc2lvbiIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MTc5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGluZGV4IGVudHJ5IGZvcm1hdCAweCUwOHgiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE4MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG5hbWUgZmllbGQgaW4gdGhlIGluZGV4LCBuZWFyIHBhdGggJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiByZWFkLWNhY2hlLmM6MTk2MCByZXJlcmUuYzo1NjUgcmVyZXJlLmM6NTk5IHJlcmVyZS5jOjExMTEgYnVpbHRpbi9hZGQuYzo0NTgKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTc3IGJ1aWx0aW4vY2hlY2tvdXQuYzoyODkgYnVpbHRpbi9jaGVja291dC5jOjU4NQotIzogYnVpbHRpbi9jaGVja291dC5jOjk1MyBidWlsdGluL2NsZWFuLmM6OTU0IGJ1aWx0aW4vY29tbWl0LmM6MzQzCi0jOiBidWlsdGluL2RpZmYtdHJlZS5jOjExNSBidWlsdGluL2dyZXAuYzo0ODkgYnVpbHRpbi9tdi5jOjE0NAotIzogYnVpbHRpbi9yZXNldC5jOjI0NCBidWlsdGluL3JtLmM6MjcwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzozMjkKKyM6IHJlYWQtY2FjaGUuYzoxODcxCittc2dpZCAidW5vcmRlcmVkIHN0YWdlIGVudHJpZXMgaW4gaW5kZXgiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE4NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgc3RhZ2UgZW50cmllcyBmb3IgbWVyZ2VkIGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MTg3NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MTk4MyByZWFkLWNhY2hlLmM6MjI3MSByZXJlcmUuYzo1NjUgcmVyZXJlLmM6NTk5IHJlcmVyZS5jOjExMTEKKyM6IHN1Ym1vZHVsZS5jOjE2MTkgYnVpbHRpbi9hZGQuYzo1MzIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NzAgYnVpbHRpbi9jaGVja291dC5jOjY1NiBidWlsdGluL2NsZWFuLmM6OTY3CisjOiBidWlsdGluL2NvbW1pdC5jOjM2NyBidWlsdGluL2RpZmYtdHJlZS5jOjEyMCBidWlsdGluL2dyZXAuYzo0ODUKKyM6IGJ1aWx0aW4vbXYuYzoxNDUgYnVpbHRpbi9yZXNldC5jOjI0NiBidWlsdGluL3JtLmM6MjkwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MzMyCiBtc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IgogbXNnc3RyICIiCiAKLSM6IHJlYWQtY2FjaGUuYzoyMTAxCisjOiByZWFkLWNhY2hlLmM6MjEyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxvYWRfY2FjaGVfZW50cmllcyB0aHJlYWQ6ICVzIgogbXNnc3RyICIiCiAKLSM6IHJlYWQtY2FjaGUuYzoyMTE0CisjOiByZWFkLWNhY2hlLmM6MjEzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gam9pbiBsb2FkX2NhY2hlX2VudHJpZXMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZWFkLWNhY2hlLmM6MjIwMQorIzogcmVhZC1jYWNoZS5jOjIxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGluZGV4IGZpbGUgb3BlbiBmYWlsZWQiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbm5vdCBzdGF0IHRoZSBvcGVuIGluZGV4IgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbmRleCBmaWxlIHNtYWxsZXIgdGhhbiBleHBlY3RlZCIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG1hcCBpbmRleCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoyMjI0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9pbmRleF9leHRlbnNpb25zIHRocmVhZDogJXMiCiBtc2dzdHIgIiIKIAotIzogcmVhZC1jYWNoZS5jOjIyMjgKKyM6IHJlYWQtY2FjaGUuYzoyMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBqb2luIGxvYWRfaW5kZXhfZXh0ZW5zaW9ucyB0aHJlYWQ6ICVzIgogbXNnc3RyICIiCiAKLSM6IHJlYWQtY2FjaGUuYzoyOTgyIHNlcXVlbmNlci5jOjQ3Mjcgd3JhcHBlci5jOjY1OCBidWlsdGluL21lcmdlLmM6MTA4NgorIzogcmVhZC1jYWNoZS5jOjIyODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZyZXNoZW4gc2hhcmVkIGluZGV4ICclcyciCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIzMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYnJva2VuIGluZGV4LCBleHBlY3QgJXMgaW4gJXMsIGdvdCAlcyIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MzAyNiBzdHJidWYuYzoxMTYwIHdyYXBwZXIuYzo2MjIgYnVpbHRpbi9tZXJnZS5jOjExMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNsb3NlICclcyciCiBtc2dzdHIgIiIKIAotIzogcmVhZC1jYWNoZS5jOjMwNTUgc2VxdWVuY2VyLmM6MjIwMyBzZXF1ZW5jZXIuYzozNTkyCisjOiByZWFkLWNhY2hlLmM6MzEyOSBzZXF1ZW5jZXIuYzoyMzQzIHNlcXVlbmNlci5jOjM5NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN0YXQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiByZWFkLWNhY2hlLmM6MzA2OAorIzogcmVhZC1jYWNoZS5jOjMxNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZ2l0IGRpcjogJXMiCiBtc2dzdHIgIiIKIAotIzogcmVhZC1jYWNoZS5jOjMwODAKKyM6IHJlYWQtY2FjaGUuYzozMTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bmxpbms6ICVzIgogbXNnc3RyICIiCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjEwCisjOiByZWFkLWNhY2hlLmM6MzE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZml4IHBlcm1pc3Npb24gYml0cyBvbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzozMzI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW5ub3QgZHJvcCB0byBzdGFnZSAjMCIKK21zZ3N0ciAiIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMQorbXNnaWQgIiIKKyJZb3UgY2FuIGZpeCB0aGlzIHdpdGggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLSIKKyJjb250aW51ZScuXG4iCisiT3IgeW91IGNhbiBhYm9ydCB0aGUgcmViYXNlIHdpdGggJ2dpdCByZWJhc2UgLS1hYm9ydCcuXG4iCittc2dzdHIgIiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVucmVjb2duaXplZCBzZXR0aW5nICVzIGZvciBvcHRpb24gcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2suIElnbm9yaW5nLiIKK21zZ3N0ciAiIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo0MgogbXNnaWQgIiIKICJcbiIKICJDb21tYW5kczpcbiIKQEAgLTM1NjYsMTkgKzUxOTUsMjYgQEAKICJUaGVzZSBsaW5lcyBjYW4gYmUgcmUtb3JkZXJlZDsgdGhleSBhcmUgZXhlY3V0ZWQgZnJvbSB0b3AgdG8gYm90dG9tLlxuIgogbXNnc3RyICIiCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjMxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNzMKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kKSIKK21zZ2lkX3BsdXJhbCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmRzKSIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjcyIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMjgKIG1zZ2lkICIiCiAiXG4iCiAiRG8gbm90IHJlbW92ZSBhbnkgbGluZS4gVXNlICdkcm9wJyBleHBsaWNpdGx5IHRvIHJlbW92ZSBhIGNvbW1pdC5cbiIKIG1zZ3N0ciAiIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzozNCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTc3CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3NSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjMyCiBtc2dpZCAiIgogIlxuIgogIklmIHlvdSByZW1vdmUgYSBsaW5lIGhlcmUgVEhBVCBDT01NSVQgV0lMTCBCRSBMT1NULlxuIgogbXNnc3RyICIiCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQwIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MTYKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjgxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NzEKIG1zZ2lkICIiCiAiXG4iCiAiWW91IGFyZSBlZGl0aW5nIHRoZSB0b2RvIGZpbGUgb2YgYW4gb25nb2luZyBpbnRlcmFjdGl2ZSByZWJhc2UuXG4iCkBAIC0zNTg3LDEzMiArNTIyMywxNTkgQEAKICJcbiIKIG1zZ3N0ciAiIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo0NSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODkzCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo4NiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTQ4CiBtc2dpZCAiIgogIlxuIgogIkhvd2V2ZXIsIGlmIHlvdSByZW1vdmUgZXZlcnl0aGluZywgdGhlIHJlYmFzZSB3aWxsIGJlIGFib3J0ZWQuXG4iCiAiXG4iCiBtc2dzdHIgIiIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6NTEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwMAotbXNnaWQgIk5vdGUgdGhhdCBlbXB0eSBjb21taXRzIGFyZSBjb21tZW50ZWQgb3V0IgorIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTEwIHJlcmVyZS5jOjQ4NSByZXJlcmUuYzo2OTIgc2VxdWVuY2VyLmM6MzQ0NAorIzogc2VxdWVuY2VyLmM6MzQ3MCBzZXF1ZW5jZXIuYzo1MTI1IGJ1aWx0aW4vZnNjay5jOjM0NiBidWlsdGluL3JlYmFzZS5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo2MiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3NSBzZXF1ZW5jZXIuYzoyMTg2Ci0jOiBzZXF1ZW5jZXIuYzo0NTA1IHNlcXVlbmNlci5jOjQ1NjEgc2VxdWVuY2VyLmM6NDgzNgorIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTE2IGJ1aWx0aW4vcmViYXNlLmM6MTg0IGJ1aWx0aW4vcmViYXNlLmM6MjEwCisjOiBidWlsdGluL3JlYmFzZS5jOjIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJy4iCittc2dzdHIgIiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXYXJuaW5nOiBzb21lIGNvbW1pdHMgbWF5IGhhdmUgYmVlbiBkcm9wcGVkIGFjY2lkZW50YWxseS5cbiIKKyJEcm9wcGVkIGNvbW1pdHMgKG5ld2VyIHRvIG9sZGVyKTpcbiIKK21zZ3N0ciAiIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRvIGF2b2lkIHRoaXMgbWVzc2FnZSwgdXNlIFwiZHJvcFwiIHRvIGV4cGxpY2l0bHkgcmVtb3ZlIGEgY29tbWl0LlxuIgorIlxuIgorIlVzZSAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgdG8gY2hhbmdlIHRoZSBsZXZlbCBvZiAiCisid2FybmluZ3MuXG4iCisiVGhlIHBvc3NpYmxlIGJlaGF2aW91cnMgYXJlOiBpZ25vcmUsIHdhcm4sIGVycm9yLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjIzMyByZWJhc2UtaW50ZXJhY3RpdmUuYzoyMzggc2VxdWVuY2VyLmM6MjI2MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNzAgYnVpbHRpbi9yZWJhc2UuYzoxOTUgYnVpbHRpbi9yZWJhc2UuYzoyMjEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkICclcycuIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzoxOTIKKyM6IHJlZnMuYzoyNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBvYmplY3QhIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzo1ODMKKyM6IHJlZnMuYzo2NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgZGFuZ2xpbmcgc3ltcmVmICVzIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzo1ODUgcmVmLWZpbHRlci5jOjE5NTEKKyM6IHJlZnMuYzo2NjkgcmVmLWZpbHRlci5jOjIwOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgYnJva2VuIHJlZiAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZWZzLmM6NzExCisjOiByZWZzLmM6ODA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmc6ICVzIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzo3MjEgcmVmcy5jOjc3MgorIzogcmVmcy5jOjgxNCByZWZzLmM6ODY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzo3MjcKKyM6IHJlZnMuYzo4MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIiIKIAotIzogcmVmcy5jOjczMgorIzogcmVmcy5jOjgyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG9iamVjdCBJRCB3aGVuIHdyaXRpbmcgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiByZWZzLmM6NzQwIHNlcXVlbmNlci5jOjM5NCBzZXF1ZW5jZXIuYzoyNTEwIHNlcXVlbmNlci5jOjI2MzYKLSM6IHNlcXVlbmNlci5jOjI2NTAgc2VxdWVuY2VyLmM6Mjg3NyBzZXF1ZW5jZXIuYzo0NzI1IHNlcXVlbmNlci5jOjQ3ODgKLSM6IHdyYXBwZXIuYzo2NTYKKyM6IHJlZnMuYzo4MzMgc2VxdWVuY2VyLmM6NDA3IHNlcXVlbmNlci5jOjI3MDEgc2VxdWVuY2VyLmM6MjkwNQorIzogc2VxdWVuY2VyLmM6MjkxOSBzZXF1ZW5jZXIuYzozMTc3IHNlcXVlbmNlci5jOjUwMzYgc3RyYnVmLmM6MTE1NworIzogd3JhcHBlci5jOjYyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgdG8gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiByZWZzLmM6NzY3IHNlcXVlbmNlci5jOjQ3MjMgc2VxdWVuY2VyLmM6NDc4MiB3cmFwcGVyLmM6MjI1IHdyYXBwZXIuYzozOTUKLSM6IGJ1aWx0aW4vYW0uYzo3MjgKKyM6IHJlZnMuYzo4NjAgc3RyYnVmLmM6MTE1NSB3cmFwcGVyLmM6MTg4IHdyYXBwZXIuYzozNTggYnVpbHRpbi9hbS5jOjcxOQorIzogYnVpbHRpbi9yZWJhc2UuYzoxMDI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmciCiBtc2dzdHIgIiIKIAotIzogcmVmcy5jOjc3NAorIzogcmVmcy5jOjg2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG9iamVjdCBJRCB3aGVuIGRlbGV0aW5nICclcyciCiBtc2dzdHIgIiIKIAotIzogcmVmcy5jOjkwNQorIzogcmVmcy5jOjk5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2cgZm9yIHJlZiAlcyBoYXMgZ2FwIGFmdGVyICVzIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzo5MTEKKyM6IHJlZnMuYzoxMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvZyBmb3IgcmVmICVzIHVuZXhwZWN0ZWRseSBlbmRlZCBvbiAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZWZzLmM6OTY5CisjOiByZWZzLmM6MTA2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2cgZm9yICVzIGlzIGVtcHR5IgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzoxMDYxCisjOiByZWZzLmM6MTE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZ1c2luZyB0byB1cGRhdGUgcmVmIHdpdGggYmFkIG5hbWUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiByZWZzLmM6MTEzNworIzogcmVmcy5jOjEyMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidXBkYXRlX3JlZiBmYWlsZWQgZm9yIHJlZiAnJXMnOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZWZzLmM6MTkxMQorIzogcmVmcy5jOjIwMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGlwbGUgdXBkYXRlcyBmb3IgcmVmICclcycgbm90IGFsbG93ZWQiCiBtc2dzdHIgIiIKIAotIzogcmVmcy5jOjE5NDMKKyM6IHJlZnMuYzoyMDU1CiBtc2dpZCAicmVmIHVwZGF0ZXMgZm9yYmlkZGVuIGluc2lkZSBxdWFyYW50aW5lIGVudmlyb25tZW50IgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzoyMDM5IHJlZnMuYzoyMDY5CisjOiByZWZzLmM6MjE1MSByZWZzLmM6MjE4MQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGV4aXN0czsgY2Fubm90IGNyZWF0ZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzoyMDQ1IHJlZnMuYzoyMDgwCisjOiByZWZzLmM6MjE1NyByZWZzLmM6MjE5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcHJvY2VzcyAnJXMnIGFuZCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUiCiBtc2dzdHIgIiIKIAotIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTIyOAorIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVtb3ZlIHJlZmVyZW5jZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjQyIHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTMyCi0jOiByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU0MgorIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI0NyByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU0MQorIzogcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGRlbGV0ZSByZWZlcmVuY2UgJXM6ICVzIgogbXNnc3RyICIiCiAKLSM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDUgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NDUKKyM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNTAgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGRlbGV0ZSByZWZlcmVuY2VzOiAlcyIKIG1zZ3N0ciAiIgpAQCAtMzcyMiwzNDggKzUzODUsNDYxIEBACiBtc2dpZCAiaW52YWxpZCByZWZzcGVjICclcyciCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjM5IHd0LXN0YXR1cy5jOjE4NTUKKyM6IHJlZi1maWx0ZXIuYzo0MiB3dC1zdGF0dXMuYzoxOTM4CiBtc2dpZCAiZ29uZSIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6NDAKKyM6IHJlZi1maWx0ZXIuYzo0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhaGVhZCAlZCIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6NDEKKyM6IHJlZi1maWx0ZXIuYzo0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJiZWhpbmQgJWQiCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjQyCisjOiByZWYtZmlsdGVyLmM6NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWhlYWQgJWQsIGJlaGluZCAlZCIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6MTM4CisjOiByZWYtZmlsdGVyLmM6MTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIGZvcm1hdDogJSUoY29sb3I6PGNvbG9yPikiCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjE0MAorIzogcmVmLWZpbHRlci5jOjE2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgY29sb3I6ICUlKGNvbG9yOiVzKSIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6MTYyCisjOiByZWYtZmlsdGVyLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludGVnZXIgdmFsdWUgZXhwZWN0ZWQgcmVmbmFtZTpsc3RyaXA9JXMiCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjE2NgorIzogcmVmLWZpbHRlci5jOjE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6cnN0cmlwPSVzIgogbXNnc3RyICIiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNjgKKyM6IHJlZi1maWx0ZXIuYzoxOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKCVzKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjIyMworIzogcmVmLWZpbHRlci5jOjI1MAogIywgYy1mb3JtYXQKIG1zZ2lkICIlJShvYmplY3R0eXBlKSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6MjM1CisjOiByZWYtZmlsdGVyLmM6MjcyCiAjLCBjLWZvcm1hdAotbXNnaWQgIiUlKG9iamVjdHNpemUpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnaWQgInVucmVjb2duaXplZCAlJShvYmplY3RzaXplKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjI0NworIzogcmVmLWZpbHRlci5jOjI4MAorIywgYy1mb3JtYXQKK21zZ2lkICIlJShkZWx0YWJhc2UpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzoyOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJSUoYm9keSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjI1NgorIzogcmVmLWZpbHRlci5jOjMwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlJShzdWJqZWN0KSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6Mjc4CisjOiByZWYtZmlsdGVyLmM6MzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gJSUodHJhaWxlcnMpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6MzA3CisjOiByZWYtZmlsdGVyLmM6MzUyCiAjLCBjLWZvcm1hdAogbXNnaWQgInBvc2l0aXZlIHZhbHVlIGV4cGVjdGVkIGNvbnRlbnRzOmxpbmVzPSVzIgogbXNnc3RyICIiCiAKLSM6IHJlZi1maWx0ZXIuYzozMDkKKyM6IHJlZi1maWx0ZXIuYzozNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKGNvbnRlbnRzKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjMyNAorIzogcmVmLWZpbHRlci5jOjM2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJwb3NpdGl2ZSB2YWx1ZSBleHBlY3RlZCBvYmplY3RuYW1lOnNob3J0PSVzIgogbXNnc3RyICIiCiAKLSM6IHJlZi1maWx0ZXIuYzozMjgKKyM6IHJlZi1maWx0ZXIuYzozNzMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKG9iamVjdG5hbWUpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6MzU4CisjOiByZWYtZmlsdGVyLmM6NDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIGZvcm1hdDogJSUoYWxpZ246PHdpZHRoPiw8cG9zaXRpb24+KSIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6MzcwCisjOiByZWYtZmlsdGVyLmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBwb3NpdGlvbjolcyIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6Mzc3CisjOiByZWYtZmlsdGVyLmM6NDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCB3aWR0aDolcyIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6Mzg2CisjOiByZWYtZmlsdGVyLmM6NDMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShhbGlnbikgYXJndW1lbnQ6ICVzIgogbXNnc3RyICIiCiAKLSM6IHJlZi1maWx0ZXIuYzozOTQKKyM6IHJlZi1maWx0ZXIuYzo0MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAicG9zaXRpdmUgd2lkdGggZXhwZWN0ZWQgd2l0aCB0aGUgJSUoYWxpZ24pIGF0b20iCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjQxMgorIzogcmVmLWZpbHRlci5jOjQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUoaWYpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6NTA4CisjOiByZWYtZmlsdGVyLmM6NTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBmaWVsZCBuYW1lOiAlLipzIgogbXNnc3RyICIiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MzUKKyM6IHJlZi1maWx0ZXIuYzo1ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBmaWVsZCBuYW1lOiAlLipzIgogbXNnc3RyICIiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MzkKKyM6IHJlZi1maWx0ZXIuYzo1OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdCBhIGdpdCByZXBvc2l0b3J5LCBidXQgdGhlIGZpZWxkICclLipzJyByZXF1aXJlcyBhY2Nlc3MgdG8gb2JqZWN0IGRhdGEiCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjY2MworIzogcmVmLWZpbHRlci5jOjcxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGlmKSBhdG9tIHVzZWQgd2l0aG91dCBhICUlKHRoZW4pIGF0b20iCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjcyNgorIzogcmVmLWZpbHRlci5jOjc3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKHRoZW4pIGF0b20gdXNlZCB3aXRob3V0IGFuICUlKGlmKSBhdG9tIgogbXNnc3RyICIiCiAKLSM6IHJlZi1maWx0ZXIuYzo3MjgKKyM6IHJlZi1maWx0ZXIuYzo3NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgbW9yZSB0aGFuIG9uY2UiCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjczMAorIzogcmVmLWZpbHRlci5jOjc4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKHRoZW4pIGF0b20gdXNlZCBhZnRlciAlJShlbHNlKSIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6NzU4CisjOiByZWYtZmlsdGVyLmM6ODA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIHdpdGhvdXQgYW4gJSUoaWYpIGF0b20iCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjc2MAorIzogcmVmLWZpbHRlci5jOjgxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCB3aXRob3V0IGEgJSUodGhlbikgYXRvbSIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6NzYyCisjOiByZWYtZmlsdGVyLmM6ODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgogbXNnc3RyICIiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NzcKKyM6IHJlZi1maWx0ZXIuYzo4MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbmQpIGF0b20gdXNlZCB3aXRob3V0IGNvcnJlc3BvbmRpbmcgYXRvbSIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6ODM0CisjOiByZWYtZmlsdGVyLmM6ODg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBmb3JtYXQgc3RyaW5nICVzIgogbXNnc3RyICIiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDI0CisjOiByZWYtZmlsdGVyLmM6MTQ4OAogIywgYy1mb3JtYXQKLW1zZ2lkICIobm8gYnJhbmNoLCByZWJhc2luZyAlcykiCi1tc2dzdHIgIiIKLQotIzogcmVmLWZpbHRlci5jOjE0MjcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiKG5vIGJyYW5jaCwgcmViYXNpbmcgZGV0YWNoZWQgSEVBRCAlcykiCi1tc2dzdHIgIiIKLQotIzogcmVmLWZpbHRlci5jOjE0MzAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiKG5vIGJyYW5jaCwgYmlzZWN0IHN0YXJ0ZWQgb24gJXMpIgotbXNnc3RyICIiCi0KLSMuIFRSQU5TTEFUT1JTOiBtYWtlIHN1cmUgdGhpcyBtYXRjaGVzICJIRUFECi0jLiBkZXRhY2hlZCBhdCAiIGluIHd0LXN0YXR1cy5jCi0jLgotIzogcmVmLWZpbHRlci5jOjE0MzgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiKEhFQUQgZGV0YWNoZWQgYXQgJXMpIgotbXNnc3RyICIiCi0KLSMuIFRSQU5TTEFUT1JTOiBtYWtlIHN1cmUgdGhpcyBtYXRjaGVzICJIRUFECi0jLiBkZXRhY2hlZCBmcm9tICIgaW4gd3Qtc3RhdHVzLmMKLSMuCi0jOiByZWYtZmlsdGVyLmM6MTQ0NQotIywgYy1mb3JtYXQKLW1zZ2lkICIoSEVBRCBkZXRhY2hlZCBmcm9tICVzKSIKLW1zZ3N0ciAiIgotCi0jOiByZWYtZmlsdGVyLmM6MTQ0OQotbXNnaWQgIihubyBicmFuY2gpIgotbXNnc3RyICIiCi0KLSM6IHJlZi1maWx0ZXIuYzoxNDgzIHJlZi1maWx0ZXIuYzoxNjM4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIm1pc3Npbmcgb2JqZWN0ICVzIGZvciAlcyIKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nICVzIgogbXNnc3RyICIiCiAKICM6IHJlZi1maWx0ZXIuYzoxNDkxCiAjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGJyYW5jaCwgcmViYXNpbmcgZGV0YWNoZWQgSEVBRCAlcyIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MTQ5NAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBicmFuY2gsIGJpc2VjdCBzdGFydGVkIG9uICVzIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzoxNTA0Cittc2dpZCAibm8gYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzoxNTQwIHJlZi1maWx0ZXIuYzoxNzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3Npbmcgb2JqZWN0ICVzIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiByZWYtZmlsdGVyLmM6MTU1MAorIywgYy1mb3JtYXQKIG1zZ2lkICJwYXJzZV9vYmplY3RfYnVmZmVyIGZhaWxlZCBvbiAlcyBmb3IgJXMiCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjE4NTcKKyM6IHJlZi1maWx0ZXIuYzoyMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgYXQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6MTk0NgorIzogcmVmLWZpbHRlci5jOjIwOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgcmVmIHdpdGggYnJva2VuIG5hbWUgJXMiCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjIyMzIKKyM6IHJlZi1maWx0ZXIuYzoyMzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZW5kKSBhdG9tIG1pc3NpbmciCiBtc2dzdHIgIiIKIAotIzogcmVmLWZpbHRlci5jOjIzMzgKKyM6IHJlZi1maWx0ZXIuYzoyNDg5CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbWVyZ2VkIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzoyNDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8tbWVyZ2VkIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzoyNTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZW1vdGUuYzo2MDcKKyM6IHJlZi1maWx0ZXIuYzoyNTA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIG11c3QgcG9pbnQgdG8gYSBjb21taXQiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MzY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZyByZW1vdGUgc2hvcnRoYW5kIGNhbm5vdCBiZWdpbiB3aXRoICcvJzogJXMiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6NDE0Cittc2dpZCAibW9yZSB0aGFuIG9uZSByZWNlaXZlcGFjayBnaXZlbiwgdXNpbmcgdGhlIGZpcnN0IgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjQyMgorbXNnaWQgIm1vcmUgdGhhbiBvbmUgdXBsb2FkcGFjayBnaXZlbiwgdXNpbmcgdGhlIGZpcnN0IgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjYxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZmV0Y2ggYm90aCAlcyBhbmQgJXMgdG8gJXMiCiBtc2dzdHIgIiIKIAotIzogcmVtb3RlLmM6NjExCisjOiByZW1vdGUuYzo2MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdXN1YWxseSB0cmFja3MgJXMsIG5vdCAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZW1vdGUuYzo2MTUKKyM6IHJlbW90ZS5jOjYyMAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB0cmFja3MgYm90aCAlcyBhbmQgJXMiCiBtc2dzdHIgIiIKIAotIzogcmVtb3RlLmM6NjIzCi1tc2dpZCAiSW50ZXJuYWwgZXJyb3IiCisjOiByZW1vdGUuYzo2ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAia2V5ICclcycgb2YgcGF0dGVybiBoYWQgbm8gJyonIgogbXNnc3RyICIiCiAKLSM6IHJlbW90ZS5jOjE1NjkgcmVtb3RlLmM6MTY3MAorIzogcmVtb3RlLmM6Njk4CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlICclcycgb2YgcGF0dGVybiBoYXMgbm8gJyonIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjEwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgZG9lcyBub3QgbWF0Y2ggYW55IgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjEwMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgbWF0Y2hlcyBtb3JlIHRoYW4gb25lIgorbXNnc3RyICIiCisKKyMuIFRSQU5TTEFUT1JTOiAibWF0Y2hlcyAnJXMnJSIgaXMgdGhlIDxkc3Q+IHBhcnQgb2YgImdpdCBwdXNoCisjLiA8cmVtb3RlPiA8c3JjPjo8ZHN0PiIgcHVzaCwgYW5kICJiZWluZyBwdXNoZWQgKCclcycpIiBpcworIy4gdGhlIDxzcmM+LgorIy4KKyM6IHJlbW90ZS5jOjEwMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBkZXN0aW5hdGlvbiB5b3UgcHJvdmlkZWQgaXMgbm90IGEgZnVsbCByZWZuYW1lIChpLmUuLFxuIgorInN0YXJ0aW5nIHdpdGggXCJyZWZzL1wiKS4gV2UgdHJpZWQgdG8gZ3Vlc3Mgd2hhdCB5b3UgbWVhbnQgYnk6XG4iCisiXG4iCisiLSBMb29raW5nIGZvciBhIHJlZiB0aGF0IG1hdGNoZXMgJyVzJyBvbiB0aGUgcmVtb3RlIHNpZGUuXG4iCisiLSBDaGVja2luZyBpZiB0aGUgPHNyYz4gYmVpbmcgcHVzaGVkICgnJXMnKVxuIgorIiAgaXMgYSByZWYgaW4gXCJyZWZzL3toZWFkcyx0YWdzfS9cIi4gSWYgc28gd2UgYWRkIGEgY29ycmVzcG9uZGluZ1xuIgorIiAgcmVmcy97aGVhZHMsdGFnc30vIHByZWZpeCBvbiB0aGUgcmVtb3RlIHNpZGUuXG4iCisiXG4iCisiTmVpdGhlciB3b3JrZWQsIHNvIHdlIGdhdmUgdXAuIFlvdSBtdXN0IGZ1bGx5IHF1YWxpZnkgdGhlIHJlZi4iCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTA0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSBjb21taXQgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byBjcmVhdGUgYSBuZXcgYnJhbmNoIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy9oZWFkcy8lcyc/IgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjEwNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgdGFnIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gY3JlYXRlIGEgbmV3IHRhZyBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjEwNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgdHJlZSBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHRhZyBhIG5ldyB0cmVlIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTA1OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSBibG9iIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gdGFnIGEgbmV3IGJsb2IgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUuYzoxMDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNhbm5vdCBiZSByZXNvbHZlZCB0byBicmFuY2giCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlICclcyc6IHJlbW90ZSByZWYgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTExOAorIywgYy1mb3JtYXQKK21zZ2lkICJkc3QgcmVmc3BlYyAlcyBtYXRjaGVzIG1vcmUgdGhhbiBvbmUiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkc3QgcmVmICVzIHJlY2VpdmVzIGZyb20gbW9yZSB0aGFuIG9uZSBzcmMiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTYyOCByZW1vdGUuYzoxNzI5CiBtc2dpZCAiSEVBRCBkb2VzIG5vdCBwb2ludCB0byBhIGJyYW5jaCIKIG1zZ3N0ciAiIgogCi0jOiByZW1vdGUuYzoxNTc4CisjOiByZW1vdGUuYzoxNjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggYnJhbmNoOiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHJlbW90ZS5jOjE1ODEKKyM6IHJlbW90ZS5jOjE2NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gdXBzdHJlYW0gY29uZmlndXJlZCBmb3IgYnJhbmNoICclcyciCiBtc2dzdHIgIiIKIAotIzogcmVtb3RlLmM6MTU4NworIzogcmVtb3RlLmM6MTY0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1cHN0cmVhbSBicmFuY2ggJyVzJyBub3Qgc3RvcmVkIGFzIGEgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKIG1zZ3N0ciAiIgogCi0jOiByZW1vdGUuYzoxNjAyCisjOiByZW1vdGUuYzoxNjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgInB1c2ggZGVzdGluYXRpb24gJyVzJyBvbiByZW1vdGUgJyVzJyBoYXMgbm8gbG9jYWwgdHJhY2tpbmcgYnJhbmNoIgogbXNnc3RyICIiCiAKLSM6IHJlbW90ZS5jOjE2MTQKKyM6IHJlbW90ZS5jOjE2NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYnJhbmNoICclcycgaGFzIG5vIHJlbW90ZSBmb3IgcHVzaGluZyIKIG1zZ3N0ciAiIgogCi0jOiByZW1vdGUuYzoxNjI0CisjOiByZW1vdGUuYzoxNjgzCiAjLCBjLWZvcm1hdAogbXNnaWQgInB1c2ggcmVmc3BlY3MgZm9yICclcycgZG8gbm90IGluY2x1ZGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiByZW1vdGUuYzoxNjM3CisjOiByZW1vdGUuYzoxNjk2CiBtc2dpZCAicHVzaCBoYXMgbm8gZGVzdGluYXRpb24gKHB1c2guZGVmYXVsdCBpcyAnbm90aGluZycpIgogbXNnc3RyICIiCiAKLSM6IHJlbW90ZS5jOjE2NTkKKyM6IHJlbW90ZS5jOjE3MTgKIG1zZ2lkICJjYW5ub3QgcmVzb2x2ZSAnc2ltcGxlJyBwdXNoIHRvIGEgc2luZ2xlIGRlc3RpbmF0aW9uIgogbXNnc3RyICIiCiAKLSM6IHJlbW90ZS5jOjE5MzUKKyM6IHJlbW90ZS5jOjE4NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgZmluZCByZW1vdGUgcmVmICVzIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjE4NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiKiBJZ25vcmluZyBmdW5ueSByZWYgJyVzJyBsb2NhbGx5IgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjIwMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgYmFzZWQgb24gJyVzJywgYnV0IHRoZSB1cHN0cmVhbSBpcyBnb25lLlxuIgogbXNnc3RyICIiCiAKLSM6IHJlbW90ZS5jOjE5MzkKKyM6IHJlbW90ZS5jOjIwMjQKIG1zZ2lkICIgICh1c2UgXCJnaXQgYnJhbmNoIC0tdW5zZXQtdXBzdHJlYW1cIiB0byBmaXh1cClcbiIKIG1zZ3N0ciAiIgogCi0jOiByZW1vdGUuYzoxOTQyCisjOiByZW1vdGUuYzoyMDI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIHVwIHRvIGRhdGUgd2l0aCAnJXMnLlxuIgogbXNnc3RyICIiCiAKLSM6IHJlbW90ZS5jOjE5NDYKKyM6IHJlbW90ZS5jOjIwMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggYW5kICclcycgcmVmZXIgdG8gZGlmZmVyZW50IGNvbW1pdHMuXG4iCiBtc2dzdHIgIiIKIAotIzogcmVtb3RlLmM6MTk0OQorIzogcmVtb3RlLmM6MjAzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICh1c2UgXCIlc1wiIGZvciBkZXRhaWxzKVxuIgogbXNnc3RyICIiCiAKLSM6IHJlbW90ZS5jOjE5NTMKKyM6IHJlbW90ZS5jOjIwMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgYWhlYWQgb2YgJyVzJyBieSAlZCBjb21taXQuXG4iCiBtc2dpZF9wbHVyYWwgIllvdXIgYnJhbmNoIGlzIGFoZWFkIG9mICclcycgYnkgJWQgY29tbWl0cy5cbiIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IHJlbW90ZS5jOjE5NTkKKyM6IHJlbW90ZS5jOjIwNDQKIG1zZ2lkICIgICh1c2UgXCJnaXQgcHVzaFwiIHRvIHB1Ymxpc2ggeW91ciBsb2NhbCBjb21taXRzKVxuIgogbXNnc3RyICIiCiAKLSM6IHJlbW90ZS5jOjE5NjIKKyM6IHJlbW90ZS5jOjIwNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgYmVoaW5kICclcycgYnkgJWQgY29tbWl0LCBhbmQgY2FuIGJlIGZhc3QtZm9yd2FyZGVkLlxuIgogbXNnaWRfcGx1cmFsICIiCkBAIC00MDcxLDExICs1ODQ3LDExIEBACiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiByZW1vdGUuYzoxOTcwCisjOiByZW1vdGUuYzoyMDU1CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1bGxcIiB0byB1cGRhdGUgeW91ciBsb2NhbCBicmFuY2gpXG4iCiBtc2dzdHIgIiIKIAotIzogcmVtb3RlLmM6MTk3MworIzogcmVtb3RlLmM6MjA1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBicmFuY2ggYW5kICclcycgaGF2ZSBkaXZlcmdlZCxcbiIKQEAgLTQwODYsMTAgKzU4NjIsMTUgQEAKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IHJlbW90ZS5jOjE5ODMKKyM6IHJlbW90ZS5jOjIwNjgKIG1zZ2lkICIgICh1c2UgXCJnaXQgcHVsbFwiIHRvIG1lcmdlIHRoZSByZW1vdGUgYnJhbmNoIGludG8geW91cnMpXG4iCiBtc2dzdHIgIiIKIAorIzogcmVtb3RlLmM6MjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcGFyc2UgZXhwZWN0ZWQgb2JqZWN0IG5hbWUgJyVzJyIKK21zZ3N0ciAiIgorCiAjOiByZXBsYWNlLW9iamVjdC5jOjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCByZXBsYWNlIHJlZiBuYW1lOiAlcyIKQEAgLTQxMDAsNyArNTg4MSw3IEBACiBtc2dpZCAiZHVwbGljYXRlIHJlcGxhY2UgcmVmOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZXBsYWNlLW9iamVjdC5jOjczCisjOiByZXBsYWNlLW9iamVjdC5jOjgyCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2UgZGVwdGggdG9vIGhpZ2ggZm9yIG9iamVjdCAlcyIKIG1zZ3N0ciAiIgpAQCAtNDExMywxMSArNTg5NCw2IEBACiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHJlcmVyZSByZWNvcmQiCiBtc2dzdHIgIiIKIAotIzogcmVyZXJlLmM6NDg1IHJlcmVyZS5jOjY5MiBzZXF1ZW5jZXIuYzozMTM2IHNlcXVlbmNlci5jOjMxNjIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IHdyaXRlICclcyciCi1tc2dzdHIgIiIKLQogIzogcmVyZXJlLmM6NDk1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZXJlIHdlcmUgZXJyb3JzIHdoaWxlIHdyaXRpbmcgJyVzJyAoJXMpIgpAQCAtNDE2OCw4ICs1OTQ0LDggQEAKIG1zZ2lkICJSZWNvcmRlZCBwcmVpbWFnZSBmb3IgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiByZXJlcmUuYzo4ODEgc3VibW9kdWxlLmM6MTc2MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxMwotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MjMKKyM6IHJlcmVyZS5jOjg4MSBzdWJtb2R1bGUuYzoyMDc4IGJ1aWx0aW4vbG9nLmM6MTg3MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NTQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAiIgpAQCAtNDIwMywyMTUgKzU5NzksMjI0IEBACiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gcnItY2FjaGUgZGlyZWN0b3J5IgogbXNnc3RyICIiCiAKLSM6IHJldmlzaW9uLmM6MjMyNAorIzogcmV2aXNpb24uYzoyNDk3CiBtc2dpZCAieW91ciBjdXJyZW50IGJyYW5jaCBhcHBlYXJzIHRvIGJlIGJyb2tlbiIKIG1zZ3N0ciAiIgogCi0jOiByZXZpc2lvbi5jOjIzMjcKKyM6IHJldmlzaW9uLmM6MjUwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoICclcycgZG9lcyBub3QgaGF2ZSBhbnkgY29tbWl0cyB5ZXQiCiBtc2dzdHIgIiIKIAotIzogcmV2aXNpb24uYzoyNTIzCisjOiByZXZpc2lvbi5jOjI3MDgKIG1zZ2lkICItLWZpcnN0LXBhcmVudCBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWJpc2VjdCIKIG1zZ3N0ciAiIgogCi0jOiBydW4tY29tbWFuZC5jOjc0MAorIzogcmV2aXNpb24uYzoyNzEyCittc2dpZCAiLUwgZG9lcyBub3QgeWV0IHN1cHBvcnQgZGlmZiBmb3JtYXRzIGJlc2lkZXMgLXAgYW5kIC1zIgorbXNnc3RyICIiCisKKyM6IHJ1bi1jb21tYW5kLmM6NzYzCiBtc2dpZCAib3BlbiAvZGV2L251bGwgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IHJ1bi1jb21tYW5kLmM6MTIyOQorIzogcnVuLWNvbW1hbmQuYzoxMjY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjcmVhdGUgYXN5bmMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBydW4tY29tbWFuZC5jOjEyOTMKKyM6IHJ1bi1jb21tYW5kLmM6MTMzMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlICclcycgaG9vayB3YXMgaWdub3JlZCBiZWNhdXNlIGl0J3Mgbm90IHNldCBhcyBleGVjdXRhYmxlLlxuIgogIllvdSBjYW4gZGlzYWJsZSB0aGlzIHdhcm5pbmcgd2l0aCBgZ2l0IGNvbmZpZyBhZHZpY2UuaWdub3JlZEhvb2sgZmFsc2VgLiIKIG1zZ3N0ciAiIgogCi0jOiBzZW5kLXBhY2suYzoxNDIKLW1zZ2lkICJ1bmV4cGVjdGVkIGZsdXNoIHBhY2tldCB3aGlsZSByZWFkaW5nIHJlbW90ZSB1bnBhY2sgc3RhdHVzIgotbXNnc3RyICIiCi0KICM6IHNlbmQtcGFjay5jOjE0NAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgcmVtb3RlIHVucGFjayBzdGF0dXM6ICVzIgorbXNnaWQgInVuZXhwZWN0ZWQgZmx1c2ggcGFja2V0IHdoaWxlIHJlYWRpbmcgcmVtb3RlIHVucGFjayBzdGF0dXMiCiBtc2dzdHIgIiIKIAogIzogc2VuZC1wYWNrLmM6MTQ2CiAjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSByZW1vdGUgdW5wYWNrIHN0YXR1czogJXMiCittc2dzdHIgIiIKKworIzogc2VuZC1wYWNrLmM6MTQ4CisjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZSB1bnBhY2sgZmFpbGVkOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzZW5kLXBhY2suYzozMDgKKyM6IHNlbmQtcGFjay5jOjMwOQogbXNnaWQgImZhaWxlZCB0byBzaWduIHRoZSBwdXNoIGNlcnRpZmljYXRlIgogbXNnc3RyICIiCiAKLSM6IHNlbmQtcGFjay5jOjQyMQorIzogc2VuZC1wYWNrLmM6NDIzCiBtc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCAtLXNpZ25lZCBwdXNoIgogbXNnc3RyICIiCiAKLSM6IHNlbmQtcGFjay5jOjQyMworIzogc2VuZC1wYWNrLmM6NDI1CiBtc2dpZCAiIgogIm5vdCBzZW5kaW5nIGEgcHVzaCBjZXJ0aWZpY2F0ZSBzaW5jZSB0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tIgogInNpZ25lZCBwdXNoIgogbXNnc3RyICIiCiAKLSM6IHNlbmQtcGFjay5jOjQzNQorIzogc2VuZC1wYWNrLmM6NDM3CiBtc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCAtLWF0b21pYyBwdXNoIgogbXNnc3RyICIiCiAKLSM6IHNlbmQtcGFjay5jOjQ0MAorIzogc2VuZC1wYWNrLmM6NDQyCiBtc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCBwdXNoIG9wdGlvbnMiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MTgzCisjOiBzZXF1ZW5jZXIuYzoxOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb21taXQgbWVzc2FnZSBjbGVhbnVwIG1vZGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyODcKKyM6IHNlcXVlbmNlci5jOjI5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZGVsZXRlICclcyciCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MzEzCisjOiBzZXF1ZW5jZXIuYzozMTUgYnVpbHRpbi9yZWJhc2UuYzo3ODUgYnVpbHRpbi9yZWJhc2UuYzoxNzUwIGJ1aWx0aW4vcm0uYzozODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlbW92ZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjMyNQogbXNnaWQgInJldmVydCIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozMTUKKyM6IHNlcXVlbmNlci5jOjMyNwogbXNnaWQgImNoZXJyeS1waWNrIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjMxNwotbXNnaWQgInJlYmFzZSAtaSIKKyM6IHNlcXVlbmNlci5jOjMyOQorbXNnaWQgInJlYmFzZSIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozMTkKKyM6IHNlcXVlbmNlci5jOjMzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIGFjdGlvbjogJWQiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6Mzc2CisjOiBzZXF1ZW5jZXIuYzozODkKIG1zZ2lkICIiCiAiYWZ0ZXIgcmVzb2x2aW5nIHRoZSBjb25mbGljdHMsIG1hcmsgdGhlIGNvcnJlY3RlZCBwYXRoc1xuIgogIndpdGggJ2dpdCBhZGQgPHBhdGhzPicgb3IgJ2dpdCBybSA8cGF0aHM+JyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozNzkKKyM6IHNlcXVlbmNlci5jOjM5MgogbXNnaWQgIiIKICJhZnRlciByZXNvbHZpbmcgdGhlIGNvbmZsaWN0cywgbWFyayB0aGUgY29ycmVjdGVkIHBhdGhzXG4iCiAid2l0aCAnZ2l0IGFkZCA8cGF0aHM+JyBvciAnZ2l0IHJtIDxwYXRocz4nXG4iCiAiYW5kIGNvbW1pdCB0aGUgcmVzdWx0IHdpdGggJ2dpdCBjb21taXQnIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjM5MiBzZXF1ZW5jZXIuYzoyNjMyCisjOiBzZXF1ZW5jZXIuYzo0MDUgc2VxdWVuY2VyLmM6MjkwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9jayAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjM5OQorIzogc2VxdWVuY2VyLmM6NDEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBlb2wgdG8gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzo0MDQgc2VxdWVuY2VyLmM6MjUxNSBzZXF1ZW5jZXIuYzoyNjM4IHNlcXVlbmNlci5jOjI2NTIKLSM6IHNlcXVlbmNlci5jOjI4ODUKKyM6IHNlcXVlbmNlci5jOjQxNyBzZXF1ZW5jZXIuYzoyNzA2IHNlcXVlbmNlci5jOjI5MDcgc2VxdWVuY2VyLmM6MjkyMQorIzogc2VxdWVuY2VyLmM6MzE4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZmluYWxpemUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzo0Mjcgc2VxdWVuY2VyLmM6OTIxIHNlcXVlbmNlci5jOjE1OTQgc2VxdWVuY2VyLmM6MjUzNQotIzogc2VxdWVuY2VyLmM6Mjg2NyBzZXF1ZW5jZXIuYzoyOTc0IGJ1aWx0aW4vYW0uYzoyNjAgYnVpbHRpbi9jb21taXQuYzo3NDYKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDg0IGJ1aWx0aW4vcmViYXNlLmM6MTUyCisjOiBzZXF1ZW5jZXIuYzo0NDAgc2VxdWVuY2VyLmM6MTYxMyBzZXF1ZW5jZXIuYzoyNzI2IHNlcXVlbmNlci5jOjMxNjcKKyM6IHNlcXVlbmNlci5jOjMyNzYgYnVpbHRpbi9hbS5jOjI0OSBidWlsdGluL2NvbW1pdC5jOjc4NyBidWlsdGluL21lcmdlLmM6MTEyMAorIzogYnVpbHRpbi9yZWJhc2UuYzo1OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzo0NTMKKyM6IHNlcXVlbmNlci5jOjQ2NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ5b3VyIGxvY2FsIGNoYW5nZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXMuIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjQ1NworIzogc2VxdWVuY2VyLmM6NDcwCiBtc2dpZCAiY29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQuIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjQ4NgorIzogc2VxdWVuY2VyLmM6NTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBmYXN0LWZvcndhcmQiCiBtc2dzdHIgIiIKIAorIzogc2VxdWVuY2VyLmM6NTQxIGJ1aWx0aW4vdGFnLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgY2xlYW51cCBtb2RlICVzIgorbXNnc3RyICIiCisKICMuIFRSQU5TTEFUT1JTOiAlcyB3aWxsIGJlICJyZXZlcnQiLCAiY2hlcnJ5LXBpY2siIG9yCi0jLiAicmViYXNlIC1pIi4KKyMuICJyZWJhc2UiLgogIy4KLSM6IHNlcXVlbmNlci5jOjU3NQorIzogc2VxdWVuY2VyLmM6NjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBVbmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6NTkxCisjOiBzZXF1ZW5jZXIuYzo2NTIKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIGNhY2hlIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6NjA0CisjOiBzZXF1ZW5jZXIuYzo2NjYKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzo2ODQKKyM6IHNlcXVlbmNlci5jOjc0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBrZXkgcHJlc2VudCBpbiAnJS4qcyciCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6Njk1CisjOiBzZXF1ZW5jZXIuYzo3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlcXVvdGUgdmFsdWUgb2YgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzo3MzIgd3JhcHBlci5jOjIyNyB3cmFwcGVyLmM6Mzk3IGJ1aWx0aW4vYW0uYzo3MTkKLSM6IGJ1aWx0aW4vYW0uYzo4MTEgYnVpbHRpbi9tZXJnZS5jOjEwODEKKyM6IHNlcXVlbmNlci5jOjc5NCB3cmFwcGVyLmM6MTkwIHdyYXBwZXIuYzozNjAgYnVpbHRpbi9hbS5jOjcxMAorIzogYnVpbHRpbi9hbS5jOjgwMiBidWlsdGluL21lcmdlLmM6MTExNyBidWlsdGluL3JlYmFzZS5jOjEwNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3IgcmVhZGluZyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzo3NDIKKyM6IHNlcXVlbmNlci5jOjgwNAogbXNnaWQgIidHSVRfQVVUSE9SX05BTUUnIGFscmVhZHkgZ2l2ZW4iCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6NzQ3CisjOiBzZXF1ZW5jZXIuYzo4MDkKIG1zZ2lkICInR0lUX0FVVEhPUl9FTUFJTCcgYWxyZWFkeSBnaXZlbiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzo3NTIKKyM6IHNlcXVlbmNlci5jOjgxNAogbXNnaWQgIidHSVRfQVVUSE9SX0RBVEUnIGFscmVhZHkgZ2l2ZW4iCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6NzU2CisjOiBzZXF1ZW5jZXIuYzo4MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biB2YXJpYWJsZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjc2MQorIzogc2VxdWVuY2VyLmM6ODIzCiBtc2dpZCAibWlzc2luZyAnR0lUX0FVVEhPUl9OQU1FJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzo3NjMKKyM6IHNlcXVlbmNlci5jOjgyNQogbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfRU1BSUwnIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjc2NQorIzogc2VxdWVuY2VyLmM6ODI3CiBtc2dpZCAibWlzc2luZyAnR0lUX0FVVEhPUl9EQVRFJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzo4MjUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBkYXRlIGZvcm1hdCAnJXMnIGluICclcyciCi1tc2dzdHIgIiIKLQotIzogc2VxdWVuY2VyLmM6ODQyCisjOiBzZXF1ZW5jZXIuYzo4NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInlvdSBoYXZlIHN0YWdlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlXG4iCkBAIC00NDI4LDE1ICs2MjEzLDExIEBACiAiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzo5MzUKLW1zZ2lkICJ3cml0aW5nIHJvb3QgY29tbWl0IgotbXNnc3RyICIiCi0KLSM6IHNlcXVlbmNlci5jOjExNDIKKyM6IHNlcXVlbmNlci5jOjExNDgKIG1zZ2lkICIncHJlcGFyZS1jb21taXQtbXNnJyBob29rIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoxMTQ5CisjOiBzZXF1ZW5jZXIuYzoxMTU0CiBtc2dpZCAiIgogIllvdXIgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyB3ZXJlIGNvbmZpZ3VyZWQgYXV0b21hdGljYWxseSBiYXNlZFxuIgogIm9uIHlvdXIgdXNlcm5hbWUgYW5kIGhvc3RuYW1lLiBQbGVhc2UgY2hlY2sgdGhhdCB0aGV5IGFyZSBhY2N1cmF0ZS5cbiIKQEAgLTQ0NTEsNyArNjIzMiw3IEBACiAiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjExNjIKKyM6IHNlcXVlbmNlci5jOjExNjcKIG1zZ2lkICIiCiAiWW91ciBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIHdlcmUgY29uZmlndXJlZCBhdXRvbWF0aWNhbGx5IGJhc2VkXG4iCiAib24geW91ciB1c2VybmFtZSBhbmQgaG9zdG5hbWUuIFBsZWFzZSBjaGVjayB0aGF0IHRoZXkgYXJlIGFjY3VyYXRlLlxuIgpAQCAtNDQ2NSwyOTkgKzYyNDYsMzQ1IEBACiAiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjEyMDIKKyM6IHNlcXVlbmNlci5jOjEyMDkKIG1zZ2lkICJjb3VsZG4ndCBsb29rIHVwIG5ld2x5IGNyZWF0ZWQgY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjEyMDQKKyM6IHNlcXVlbmNlci5jOjEyMTEKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgbmV3bHkgY3JlYXRlZCBjb21taXQiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MTI1MAorIzogc2VxdWVuY2VyLmM6MTI1NwogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIEhFQUQgYWZ0ZXIgY3JlYXRpbmcgY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjEyNTIKKyM6IHNlcXVlbmNlci5jOjEyNTkKIG1zZ2lkICJkZXRhY2hlZCBIRUFEIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjEyNTYKKyM6IHNlcXVlbmNlci5jOjEyNjMKIG1zZ2lkICIgKHJvb3QtY29tbWl0KSIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjc3CisjOiBzZXF1ZW5jZXIuYzoxMjg0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIEhFQUQiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MTI3OQorIzogc2VxdWVuY2VyLmM6MTI4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJIRUFEICVzIGlzIG5vdCBhIGNvbW1pdCEiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MTI4MyBidWlsdGluL2NvbW1pdC5jOjE1NDMKKyM6IHNlcXVlbmNlci5jOjEyOTAgc2VxdWVuY2VyLmM6MTM2NCBidWlsdGluL2NvbW1pdC5jOjE1NzQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgSEVBRCBjb21taXQiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MTMzNCBzZXF1ZW5jZXIuYzoxOTM0CisjOiBzZXF1ZW5jZXIuYzoxMzQyIHNlcXVlbmNlci5jOjE5NjgKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0IGF1dGhvciIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoxMzQ0IGJ1aWx0aW4vYW0uYzoxNTg1IGJ1aWx0aW4vbWVyZ2UuYzo2NzcKKyM6IHNlcXVlbmNlci5jOjEzNTMgYnVpbHRpbi9hbS5jOjE1NjYgYnVpbHRpbi9tZXJnZS5jOjY4NwogbXNnaWQgImdpdCB3cml0ZS10cmVlIGZhaWxlZCB0byB3cml0ZSBhIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MTM2MSBzZXF1ZW5jZXIuYzoxNDE2CisjOiBzZXF1ZW5jZXIuYzoxMzg2IHNlcXVlbmNlci5jOjE0NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgY29tbWl0IG1lc3NhZ2UgZnJvbSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjEzODMgYnVpbHRpbi9hbS5jOjE2MDYgYnVpbHRpbi9jb21taXQuYzoxNjQ2IGJ1aWx0aW4vbWVyZ2UuYzo4NTgKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4ODMKKyM6IHNlcXVlbmNlci5jOjE0MTMgYnVpbHRpbi9hbS5jOjE1ODggYnVpbHRpbi9jb21taXQuYzoxNjczIGJ1aWx0aW4vbWVyZ2UuYzo4ODYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5MTEKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgY29tbWl0IG9iamVjdCIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoxNDQzCisjOiBzZXF1ZW5jZXIuYzoxNDc0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgJXMiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MTQ0OAorIzogc2VxdWVuY2VyLmM6MTQ3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgcGFyZW50IGNvbW1pdCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoxNTQ2IHNlcXVlbmNlci5jOjE2NTQKKyM6IHNlcXVlbmNlci5jOjE1NjIgc2VxdWVuY2VyLmM6MTY3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIGNvbW1hbmQ6ICVkIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjE2MDEgc2VxdWVuY2VyLmM6MTYyNgorIzogc2VxdWVuY2VyLmM6MTYyMCBzZXF1ZW5jZXIuYzoxNjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAlZCBjb21taXRzLiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjExIHNlcXVlbmNlci5jOjQ3NDQKKyM6IHNlcXVlbmNlci5jOjE2MzAKIG1zZ2lkICJuZWVkIGEgSEVBRCB0byBmaXh1cCIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjEzIHNlcXVlbmNlci5jOjI5MTIKKyM6IHNlcXVlbmNlci5jOjE2MzIgc2VxdWVuY2VyLmM6MzIxMgogbXNnaWQgImNvdWxkIG5vdCByZWFkIEhFQUQiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MTYxNQorIzogc2VxdWVuY2VyLmM6MTYzNAogbXNnaWQgImNvdWxkIG5vdCByZWFkIEhFQUQncyBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjIxCisjOiBzZXF1ZW5jZXIuYzoxNjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCB3cml0ZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjE2MjggZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ0MQorIzogc2VxdWVuY2VyLmM6MTY0NyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDk2CiBtc2dpZCAiVGhpcyBpcyB0aGUgMXN0IGNvbW1pdCBtZXNzYWdlOiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjM2CisjOiBzZXF1ZW5jZXIuYzoxNjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGNvbW1pdCBtZXNzYWdlIG9mICVzIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjE2NDMKKyM6IHNlcXVlbmNlci5jOjE2NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyB0aGUgY29tbWl0IG1lc3NhZ2UgIyVkOiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjQ5CisjOiBzZXF1ZW5jZXIuYzoxNjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBjb21taXQgbWVzc2FnZSAjJWQgd2lsbCBiZSBza2lwcGVkOiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoxNzMyCisjOiBzZXF1ZW5jZXIuYzoxNzU2CiBtc2dpZCAieW91ciBpbmRleCBmaWxlIGlzIHVubWVyZ2VkLiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoxNzM5CisjOiBzZXF1ZW5jZXIuYzoxNzYzCiBtc2dpZCAiY2Fubm90IGZpeHVwIHJvb3QgY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjE3NTgKKyM6IHNlcXVlbmNlci5jOjE3ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICVzIGlzIGEgbWVyZ2UgYnV0IG5vIC1tIG9wdGlvbiB3YXMgZ2l2ZW4uIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjE3NjYKKyM6IHNlcXVlbmNlci5jOjE3OTAgc2VxdWVuY2VyLmM6MTc5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJXMgZG9lcyBub3QgaGF2ZSBwYXJlbnQgJWQiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MTc3MAotIywgYy1mb3JtYXQKLW1zZ2lkICJtYWlubGluZSB3YXMgc3BlY2lmaWVkIGJ1dCBjb21taXQgJXMgaXMgbm90IGEgbWVyZ2UuIgotbXNnc3RyICIiCi0KLSM6IHNlcXVlbmNlci5jOjE3NzYKKyM6IHNlcXVlbmNlci5jOjE4MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGdldCBjb21taXQgbWVzc2FnZSBmb3IgJXMiCiBtc2dzdHIgIiIKIAogIy4gVFJBTlNMQVRPUlM6IFRoZSBmaXJzdCAlcyB3aWxsIGJlIGEgInRvZG8iIGNvbW1hbmQgbGlrZQogIy4gInJldmVydCIgb3IgInBpY2siLCB0aGUgc2Vjb25kICVzIGEgU0hBMS4KLSM6IHNlcXVlbmNlci5jOjE3OTUKKyM6IHNlcXVlbmNlci5jOjE4MjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGNhbm5vdCBwYXJzZSBwYXJlbnQgY29tbWl0ICVzIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjE4NjAKKyM6IHNlcXVlbmNlci5jOjE4ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlbmFtZSAnJXMnIHRvICclcyciCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MTkxNQorIzogc2VxdWVuY2VyLmM6MTk0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmV2ZXJ0ICVzLi4uICVzIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjE5MTYKKyM6IHNlcXVlbmNlci5jOjE5NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGFwcGx5ICVzLi4uICVzIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjE5NzQKKyM6IHNlcXVlbmNlci5jOjE5NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHJvcHBpbmcgJXMgJXMgLS0gcGF0Y2ggY29udGVudHMgYWxyZWFkeSB1cHN0cmVhbVxuIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjIwMTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0ICVzOiBmYWlsZWQgdG8gcmVhZCB0aGUgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MTk4MQorIzogc2VxdWVuY2VyLmM6MjAyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWZyZXNoIHRoZSBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyMDYyCisjOiBzZXF1ZW5jZXIuYzoyMTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRvZXMgbm90IGFjY2VwdCBhcmd1bWVudHM6ICclcyciCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjA3MQorIzogc2VxdWVuY2VyLmM6MjExMQogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIGFyZ3VtZW50cyBmb3IgJXMiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjEzMAorIzogc2VxdWVuY2VyLmM6MjE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyMjAzCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbGluZSAlZDogJS4qcyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyMTM4CisjOiBzZXF1ZW5jZXIuYzoyMjE0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAnJXMnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjIwOQorIzogc2VxdWVuY2VyLmM6MjI5OAorbXNnaWQgImNhbmNlbGxpbmcgYSBjaGVycnkgcGlja2luZyBpbiBwcm9ncmVzcyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyMzA1Cittc2dpZCAiY2FuY2VsbGluZyBhIHJldmVydCBpbiBwcm9ncmVzcyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyMzQ5CiBtc2dpZCAicGxlYXNlIGZpeCB0aGlzIHVzaW5nICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJy4iCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjIxMQorIzogc2VxdWVuY2VyLmM6MjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnVzYWJsZSBpbnN0cnVjdGlvbiBzaGVldDogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjE2CisjOiBzZXF1ZW5jZXIuYzoyMzU2CiBtc2dpZCAibm8gY29tbWl0cyBwYXJzZWQuIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjIyMjcKKyM6IHNlcXVlbmNlci5jOjIzNjcKIG1zZ2lkICJjYW5ub3QgY2hlcnJ5LXBpY2sgZHVyaW5nIGEgcmV2ZXJ0LiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjI5CisjOiBzZXF1ZW5jZXIuYzoyMzY5CiBtc2dpZCAiY2Fubm90IHJldmVydCBkdXJpbmcgYSBjaGVycnktcGljay4iCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjI5OQorIzogc2VxdWVuY2VyLmM6MjQ0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciAlczogJXMiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjM4MAorIzogc2VxdWVuY2VyLmM6MjU0MAogbXNnaWQgInVudXNhYmxlIHNxdWFzaC1vbnRvIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjIzOTYKKyM6IHNlcXVlbmNlci5jOjI1NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG9wdGlvbnMgc2hlZXQ6ICclcyciCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjQ3OSBzZXF1ZW5jZXIuYzo0MDA1CisjOiBzZXF1ZW5jZXIuYzoyNjQ0IHNlcXVlbmNlci5jOjQzNjEKIG1zZ2lkICJlbXB0eSBjb21taXQgc2V0IHBhc3NlZCIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyNDg3Ci1tc2dpZCAiYSBjaGVycnktcGljayBvciByZXZlcnQgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIKKyM6IHNlcXVlbmNlci5jOjI2NjAKK21zZ2lkICJyZXZlcnQgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyNDg4Ci1tc2dpZCAidHJ5IFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgLS1xdWl0IHwgLS1hYm9ydClcIiIKKyM6IHNlcXVlbmNlci5jOjI2NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5IFwiZ2l0IHJldmVydCAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyNDkxCisjOiBzZXF1ZW5jZXIuYzoyNjY1Cittc2dpZCAiY2hlcnJ5LXBpY2sgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyNjY3CisjLCBjLWZvcm1hdAorbXNnaWQgInRyeSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyNjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgc2VxdWVuY2VyIGRpcmVjdG9yeSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI1MDUKKyM6IHNlcXVlbmNlci5jOjI2OTYKIG1zZ2lkICJjb3VsZCBub3QgbG9jayBIRUFEIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI1NjAgc2VxdWVuY2VyLmM6Mzc2MQorIzogc2VxdWVuY2VyLmM6Mjc1NiBzZXF1ZW5jZXIuYzo0MDk5CiBtc2dpZCAibm8gY2hlcnJ5LXBpY2sgb3IgcmV2ZXJ0IGluIHByb2dyZXNzIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI1NjIKKyM6IHNlcXVlbmNlci5jOjI3NTggc2VxdWVuY2VyLmM6Mjc2OQogbXNnaWQgImNhbm5vdCByZXNvbHZlIEhFQUQiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjU2NCBzZXF1ZW5jZXIuYzoyNTk5CisjOiBzZXF1ZW5jZXIuYzoyNzYwIHNlcXVlbmNlci5jOjI4MDQKIG1zZ2lkICJjYW5ub3QgYWJvcnQgZnJvbSBhIGJyYW5jaCB5ZXQgdG8gYmUgYm9ybiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTg1IGJ1aWx0aW4vZ3JlcC5jOjcyMQorIzogc2VxdWVuY2VyLmM6Mjc5MCBidWlsdGluL2dyZXAuYzo3MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG9wZW4gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTg3CisjOiBzZXF1ZW5jZXIuYzoyNzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICclcyc6ICVzIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI1ODgKKyM6IHNlcXVlbmNlci5jOjI3OTMKIG1zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI1OTQKKyM6IHNlcXVlbmNlci5jOjI3OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RvcmVkIHByZS1jaGVycnktcGljayBIRUFEIGZpbGUgJyVzJyBpcyBjb3JydXB0IgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI2MDUKKyM6IHNlcXVlbmNlci5jOjI4MTAKIG1zZ2lkICJZb3Ugc2VlbSB0byBoYXZlIG1vdmVkIEhFQUQuIE5vdCByZXdpbmRpbmcsIGNoZWNrIHlvdXIgSEVBRCEiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjcwOSBzZXF1ZW5jZXIuYzozNjc5CisjOiBzZXF1ZW5jZXIuYzoyODUxCittc2dpZCAibm8gcmV2ZXJ0IGluIHByb2dyZXNzIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjI4NTkKK21zZ2lkICJubyBjaGVycnktcGljayBpbiBwcm9ncmVzcyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyODY5Cittc2dpZCAiZmFpbGVkIHRvIHNraXAgdGhlIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzoyODc2Cittc2dpZCAidGhlcmUgaXMgbm90aGluZyB0byBza2lwIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjI4NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImhhdmUgeW91IGNvbW1pdHRlZCBhbHJlYWR5P1xuIgorInRyeSBcImdpdCAlcyAtLWNvbnRpbnVlXCIiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzAwMyBzZXF1ZW5jZXIuYzo0MDExCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB1cGRhdGUgJXMiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6Mjc0NyBzZXF1ZW5jZXIuYzozNjU5CisjOiBzZXF1ZW5jZXIuYzozMDQyIHNlcXVlbmNlci5jOjM5OTEKIG1zZ2lkICJjYW5ub3QgcmVhZCBIRUFEIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI3NjIKKyM6IHNlcXVlbmNlci5jOjMwNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNvcHkgJyVzJyB0byAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI3NzAKKyM6IHNlcXVlbmNlci5jOjMwNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBjYW4gYW1lbmQgdGhlIGNvbW1pdCBub3csIHdpdGhcbiIKQEAgLTQ3NjksMjcgKzY1OTYsMjIgQEAKICIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI3ODAKKyM6IHNlcXVlbmNlci5jOjMwNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICVzLi4uICUuKnMiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6Mjc4NworIzogc2VxdWVuY2VyLmM6MzA4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgbWVyZ2UgJS4qcyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzk4IHNlcXVlbmNlci5jOjI4MDIgYnVpbHRpbi9kaWZmdG9vbC5jOjY0MAorIzogc2VxdWVuY2VyLmM6MzA5OCBzZXF1ZW5jZXIuYzozMTAyIGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNvcHkgJyVzJyB0byAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI4MjQgc2VxdWVuY2VyLmM6MzI0MiBidWlsdGluL3JlYmFzZS5jOjU4MCBidWlsdGluL3JlYmFzZS5jOjEwMTkKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTM3MiBidWlsdGluL3JlYmFzZS5jOjE0MjYKLW1zZ2lkICJjb3VsZCBub3QgcmVhZCBpbmRleCIKLW1zZ3N0ciAiIgotCi0jOiBzZXF1ZW5jZXIuYzoyODI5CisjOiBzZXF1ZW5jZXIuYzozMTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleGVjdXRpb24gZmFpbGVkOiAlc1xuIgpAQCAtNDc5OSwxMSArNjYyMSwxMSBAQAogIlxuIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI4MzUKKyM6IHNlcXVlbmNlci5jOjMxMzUKIG1zZ2lkICJhbmQgbWFkZSBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZVxuIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI4NDEKKyM6IHNlcXVlbmNlci5jOjMxNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4ZWN1dGlvbiBzdWNjZWVkZWQ6ICVzXG4iCkBAIC00ODE0LDc2ICs2NjM2LDcyIEBACiAiXG4iCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjkwMgorIzogc2VxdWVuY2VyLmM6MzIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbGxlZ2FsIGxhYmVsIG5hbWU6ICclLipzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyOTU0CisjOiBzZXF1ZW5jZXIuYzozMjU2CiBtc2dpZCAid3JpdGluZyBmYWtlIHJvb3QgY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI5NTkKKyM6IHNlcXVlbmNlci5jOjMyNjEKIG1zZ2lkICJ3cml0aW5nIHNxdWFzaC1vbnRvIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI5OTcgYnVpbHRpbi9yZWJhc2UuYzo1ODUgYnVpbHRpbi9yZWJhc2UuYzo1OTEKKyM6IHNlcXVlbmNlci5jOjMyOTkgYnVpbHRpbi9yZWJhc2UuYzo4ODAgYnVpbHRpbi9yZWJhc2UuYzo4ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGZpbmQgdHJlZSBvZiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozMDE1IGJ1aWx0aW4vcmViYXNlLmM6NjA0Ci1tc2dpZCAiY291bGQgbm90IHdyaXRlIGluZGV4IgotbXNnc3RyICIiCi0KLSM6IHNlcXVlbmNlci5jOjMwNDIKKyM6IHNlcXVlbmNlci5jOjMzNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozMDY4CisjOiBzZXF1ZW5jZXIuYzozMzc1CiBtc2dpZCAiY2Fubm90IG1lcmdlIHdpdGhvdXQgYSBjdXJyZW50IHJldmlzaW9uIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjMwOTAKKyM6IHNlcXVlbmNlci5jOjMzOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICclLipzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozMDk5CisjOiBzZXF1ZW5jZXIuYzozNDA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gbWVyZ2U6ICclLipzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozMTExCisjOiBzZXF1ZW5jZXIuYzozNDE4CiBtc2dpZCAib2N0b3B1cyBtZXJnZSBjYW5ub3QgYmUgZXhlY3V0ZWQgb24gdG9wIG9mIGEgW25ldyByb290XSIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozMTI2CisjOiBzZXF1ZW5jZXIuYzozNDM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBnZXQgY29tbWl0IG1lc3NhZ2Ugb2YgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozMjc0CisjOiBzZXF1ZW5jZXIuYzozNTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBldmVuIGF0dGVtcHQgdG8gbWVyZ2UgJyUuKnMnIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjMyOTAKKyM6IHNlcXVlbmNlci5jOjM2MTAKIG1zZ2lkICJtZXJnZTogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjMzNTggYnVpbHRpbi9yZWJhc2UuYzoyNjgKKyM6IHNlcXVlbmNlci5jOjM2NzkgYnVpbHRpbi9yZWJhc2UuYzo3MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guXG4iCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MzM3MAorIzogc2VxdWVuY2VyLmM6MzY5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RvcmUgJXMiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MzM3MyBidWlsdGluL3JlYmFzZS5jOjI4NAorIzogc2VxdWVuY2VyLmM6MzY5NCBidWlsdGluL3JlYmFzZS5jOjc1MyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJBcHBseWluZyBhdXRvc3Rhc2ggcmVzdWx0ZWQgaW4gY29uZmxpY3RzLlxuIgpAQCAtNDg5MSwzMSArNjcwOSwyNiBAQAogIllvdSBjYW4gcnVuIFwiZ2l0IHN0YXNoIHBvcFwiIG9yIFwiZ2l0IHN0YXNoIGRyb3BcIiBhdCBhbnkgdGltZS5cbiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozNDI3Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBjaGVja291dCAlcyIKLW1zZ3N0ciAiIgotCi0jOiBzZXF1ZW5jZXIuYzozNDQxCisjOiBzZXF1ZW5jZXIuYzozNzU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBub3QgYSB2YWxpZCBPSUQiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MzQ0NiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzI0CisjOiBzZXF1ZW5jZXIuYzozNzYwIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NzkKIG1zZ2lkICJjb3VsZCBub3QgZGV0YWNoIEhFQUQiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MzQ2MQorIzogc2VxdWVuY2VyLmM6Mzc3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJTdG9wcGVkIGF0IEhFQURcbiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozNDYzCisjOiBzZXF1ZW5jZXIuYzozNzc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN0b3BwZWQgYXQgJXNcbiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozNDcxCisjOiBzZXF1ZW5jZXIuYzozNzg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDb3VsZCBub3QgZXhlY3V0ZSB0aGUgdG9kbyBjb21tYW5kXG4iCkBAIC00OTI4LDE2NyArNjc0MSwxMTQgQEAKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MzU0MworIzogc2VxdWVuY2VyLmM6Mzg2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTdG9wcGVkIGF0ICVzLi4uICAlLipzXG4iCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MzYyMgorIzogc2VxdWVuY2VyLmM6Mzk0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIGNvbW1hbmQgJWQiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MzY2NworIzogc2VxdWVuY2VyLmM6Mzk5OQogbXNnaWQgImNvdWxkIG5vdCByZWFkIG9yaWctaGVhZCIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozNjcyIHNlcXVlbmNlci5jOjQ3NDEKKyM6IHNlcXVlbmNlci5jOjQwMDQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCAnb250byciCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MzY4NgorIzogc2VxdWVuY2VyLmM6NDAxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgdXBkYXRlIEhFQUQgdG8gJXMiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6Mzc3MgorIzogc2VxdWVuY2VyLmM6NDExMQogbXNnaWQgImNhbm5vdCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjM3ODEKKyM6IHNlcXVlbmNlci5jOjQxMjAKIG1zZ2lkICJjYW5ub3QgYW1lbmQgbm9uLWV4aXN0aW5nIGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozNzgzCisjOiBzZXF1ZW5jZXIuYzo0MTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZmlsZTogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozNzg1CisjOiBzZXF1ZW5jZXIuYzo0MTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29udGVudHM6ICclcyciCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6Mzc4OAorIzogc2VxdWVuY2VyLmM6NDEyNwogbXNnaWQgIiIKICJcbiIKICJZb3UgaGF2ZSB1bmNvbW1pdHRlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLiBQbGVhc2UsIGNvbW1pdCB0aGVtXG4iCiAiZmlyc3QgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tY29udGludWUnIGFnYWluLiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozODI0IHNlcXVlbmNlci5jOjM4NjIKKyM6IHNlcXVlbmNlci5jOjQxNjMgc2VxdWVuY2VyLmM6NDIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZmlsZTogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozODc3CisjOiBzZXF1ZW5jZXIuYzo0MjE3CiBtc2dpZCAiY291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjM4ODQKKyM6IHNlcXVlbmNlci5jOjQyMjQKIG1zZ2lkICJjb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozOTgyCisjOiBzZXF1ZW5jZXIuYzo0MzM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjYW4ndCBjaGVycnktcGljayBhICVzIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjM5ODYKKyM6IHNlcXVlbmNlci5jOjQzNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGJhZCByZXZpc2lvbiIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzo0MDIxCisjOiBzZXF1ZW5jZXIuYzo0Mzc3CiBtc2dpZCAiY2FuJ3QgcmV2ZXJ0IGFzIGluaXRpYWwgY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjQ0NjYKKyM6IHNlcXVlbmNlci5jOjQ4NDYKIG1zZ2lkICJtYWtlX3NjcmlwdDogdW5oYW5kbGVkIG9wdGlvbnMiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6NDQ2OQorIzogc2VxdWVuY2VyLmM6NDg0OQogbXNnaWQgIm1ha2Vfc2NyaXB0OiBlcnJvciBwcmVwYXJpbmcgcmV2aXNpb25zIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjQ1MDkgc2VxdWVuY2VyLmM6NDU2NSBzZXF1ZW5jZXIuYzo0ODQwCi0jLCBjLWZvcm1hdAotbXNnaWQgInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBzZXF1ZW5jZXIuYzo0NjIwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJ1bnJlY29nbml6ZWQgc2V0dGluZyAlcyBmb3Igb3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmluZy4iCi1tc2dzdHIgIiIKLQotIzogc2VxdWVuY2VyLmM6NDY5MAotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCi0iRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCi1tc2dzdHIgIiIKLQotIzogc2VxdWVuY2VyLmM6NDY5NwotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iVG8gYXZvaWQgdGhpcyBtZXNzYWdlLCB1c2UgXCJkcm9wXCIgdG8gZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuXG4iCi0iXG4iCi0iVXNlICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyB0byBjaGFuZ2UgdGhlIGxldmVsIG9mICIKLSJ3YXJuaW5ncy5cbiIKLSJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCi0iXG4iCi1tc2dzdHIgIiIKLQotIzogc2VxdWVuY2VyLmM6NDcxMAotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iWW91IGNhbiBmaXggdGhpcyB3aXRoICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyBhbmQgdGhlbiBydW4gJ2dpdCByZWJhc2UgLS0iCi0iY29udGludWUnLlxuIgotIk9yIHlvdSBjYW4gYWJvcnQgdGhlIHJlYmFzZSB3aXRoICdnaXQgcmViYXNlIC0tYWJvcnQnLlxuIgotbXNnc3RyICIiCi0KLSM6IHNlcXVlbmNlci5jOjQ4NDggc2VxdWVuY2VyLmM6NDg4NgorIzogc2VxdWVuY2VyLmM6NTA4MyBzZXF1ZW5jZXIuYzo1MTAwCiBtc2dpZCAibm90aGluZyB0byBkbyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzo0ODUyCi0jLCBjLWZvcm1hdAotbXNnaWQgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kKSIKLW1zZ2lkX3BsdXJhbCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmRzKSIKLW1zZ3N0clswXSAiIgotbXNnc3RyWzFdICIiCi0KLSM6IHNlcXVlbmNlci5jOjQ4NjQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IGNvcHkgJyVzJyB0byAnJXMnLiIKLW1zZ3N0ciAiIgotCi0jOiBzZXF1ZW5jZXIuYzo0ODY4IHNlcXVlbmNlci5jOjQ4OTcKLW1zZ2lkICJjb3VsZCBub3QgdHJhbnNmb3JtIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgIiIKLQotIzogc2VxdWVuY2VyLmM6NDkwMAorIzogc2VxdWVuY2VyLmM6NTExOQogbXNnaWQgImNvdWxkIG5vdCBza2lwIHVubmVjZXNzYXJ5IHBpY2sgY29tbWFuZHMiCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6NDk4MworIzogc2VxdWVuY2VyLmM6NTIxMwogbXNnaWQgInRoZSBzY3JpcHQgd2FzIGFscmVhZHkgcmVhcnJhbmdlZC4iCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzoxMjMKKyM6IHNldHVwLmM6MTI0CiAjLCBjLWZvcm1hdAotbXNnaWQgIiclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IgorbXNnaWQgIiclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IGF0ICclcyciCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzoxNzIKKyM6IHNldHVwLmM6MTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIlczogbm8gc3VjaCBwYXRoIGluIHRoZSB3b3JraW5nIHRyZWUuXG4iCiAiVXNlICdnaXQgPGNvbW1hbmQ+IC0tIDxwYXRoPi4uLicgdG8gc3BlY2lmeSBwYXRocyB0aGF0IGRvIG5vdCBleGlzdCBsb2NhbGx5LiIKIG1zZ3N0ciAiIgogCi0jOiBzZXR1cC5jOjE4NQorIzogc2V0dXAuYzoxODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImFtYmlndW91cyBhcmd1bWVudCAnJXMnOiB1bmtub3duIHJldmlzaW9uIG9yIHBhdGggbm90IGluIHRoZSB3b3JraW5nIHRyZWUuXG4iCkBAIC01MDk2LDEyICs2ODU2LDEyIEBACiAiJ2dpdCA8Y29tbWFuZD4gWzxyZXZpc2lvbj4uLi5dIC0tIFs8ZmlsZT4uLi5dJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXR1cC5jOjIzNAorIzogc2V0dXAuYzoyNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAib3B0aW9uICclcycgbXVzdCBjb21lIGJlZm9yZSBub24tb3B0aW9uIGFyZ3VtZW50cyIKIG1zZ3N0ciAiIgogCi0jOiBzZXR1cC5jOjI1MworIzogc2V0dXAuYzoyNzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImFtYmlndW91cyBhcmd1bWVudCAnJXMnOiBib3RoIHJldmlzaW9uIGFuZCBmaWxlbmFtZVxuIgpAQCAtNTEwOSw0NjIgKzY4NjksNjY5IEBACiAiJ2dpdCA8Y29tbWFuZD4gWzxyZXZpc2lvbj4uLi5dIC0tIFs8ZmlsZT4uLi5dJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXR1cC5jOjM4OQorIzogc2V0dXAuYzo0MDkKIG1zZ2lkICJ1bmFibGUgdG8gc2V0IHVwIHdvcmsgdHJlZSB1c2luZyBpbnZhbGlkIGNvbmZpZyIKIG1zZ3N0ciAiIgogCi0jOiBzZXR1cC5jOjM5MworIzogc2V0dXAuYzo0MTMKIG1zZ2lkICJ0aGlzIG9wZXJhdGlvbiBtdXN0IGJlIHJ1biBpbiBhIHdvcmsgdHJlZSIKIG1zZ3N0ciAiIgogCi0jOiBzZXR1cC5jOjUyNworIzogc2V0dXAuYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXhwZWN0ZWQgZ2l0IHJlcG8gdmVyc2lvbiA8PSAlZCwgZm91bmQgJWQiCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzo1MzUKKyM6IHNldHVwLmM6NTY3CiBtc2dpZCAidW5rbm93biByZXBvc2l0b3J5IGV4dGVuc2lvbnMgZm91bmQ6IgogbXNnc3RyICIiCiAKLSM6IHNldHVwLmM6NTU0CisjOiBzZXR1cC5jOjU4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBvcGVuaW5nICclcyciCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzo1NTYKKyM6IHNldHVwLmM6NTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgInRvbyBsYXJnZSB0byBiZSBhIC5naXQgZmlsZTogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXR1cC5jOjU1OAorIzogc2V0dXAuYzo1OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcmVhZGluZyAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzZXR1cC5jOjU2MAorIzogc2V0dXAuYzo1OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBnaXRmaWxlIGZvcm1hdDogJXMiCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzo1NjIKKyM6IHNldHVwLmM6NTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHBhdGggaW4gZ2l0ZmlsZTogJXMiCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzo1NjQKKyM6IHNldHVwLmM6NTk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzZXR1cC5jOjY2MworIzogc2V0dXAuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyQlcycgdG9vIGJpZyIKIG1zZ3N0ciAiIgogCi0jOiBzZXR1cC5jOjY3NworIzogc2V0dXAuYzo3MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnk6ICclcyciCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzo3MDYgc2V0dXAuYzo3MDggc2V0dXAuYzo3MzkKKyM6IHNldHVwLmM6NzM4IHNldHVwLmM6NzQwIHNldHVwLmM6NzcxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGRpciB0byAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHNldHVwLmM6NzExIHNldHVwLmM6NzY3IHNldHVwLmM6Nzc3IHNldHVwLmM6ODE2IHNldHVwLmM6ODI0IHNldHVwLmM6ODM5CisjOiBzZXR1cC5jOjc0MyBzZXR1cC5jOjc5OSBzZXR1cC5jOjgwOSBzZXR1cC5jOjg0OCBzZXR1cC5jOjg1NgogbXNnaWQgImNhbm5vdCBjb21lIGJhY2sgdG8gY3dkIgogbXNnc3RyICIiCiAKLSM6IHNldHVwLmM6ODM3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgb2YgdGhlIHBhcmVudCBkaXJlY3Rvcmllcyk6ICVzIgotbXNnc3RyICIiCi0KLSM6IHNldHVwLmM6ODQ4CisjOiBzZXR1cC5jOjg3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJSpzJXMlcyciCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzoxMDc4CisjOiBzZXR1cC5jOjExMDgKIG1zZ2lkICJVbmFibGUgdG8gcmVhZCBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICIiCiAKLSM6IHNldHVwLmM6MTA5MCBzZXR1cC5jOjEwOTYKKyM6IHNldHVwLmM6MTExNyBzZXR1cC5jOjExMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoYW5nZSB0byAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHNldHVwLmM6MTEwOQorIzogc2V0dXAuYzoxMTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgb2YgdGhlIHBhcmVudCBkaXJlY3Rvcmllcyk6ICVzIgorbXNnc3RyICIiCisKKyM6IHNldHVwLmM6MTEzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBwYXJlbnQgdXAgdG8gbW91bnQgcG9pbnQgJXMpXG4iCiAiU3RvcHBpbmcgYXQgZmlsZXN5c3RlbSBib3VuZGFyeSAoR0lUX0RJU0NPVkVSWV9BQ1JPU1NfRklMRVNZU1RFTSBub3Qgc2V0KS4iCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzoxMTkyCisjOiBzZXR1cC5jOjEyNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInByb2JsZW0gd2l0aCBjb3JlLnNoYXJlZFJlcG9zaXRvcnkgZmlsZW1vZGUgdmFsdWUgKDAlLjNvKS5cbiIKICJUaGUgb3duZXIgb2YgZmlsZXMgbXVzdCBhbHdheXMgaGF2ZSByZWFkIGFuZCB3cml0ZSBwZXJtaXNzaW9ucy4iCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzoxMjM1CisjOiBzZXR1cC5jOjEyODkKIG1zZ2lkICJvcGVuIC9kZXYvbnVsbCBvciBkdXAgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IHNldHVwLmM6MTI1MAorIzogc2V0dXAuYzoxMzA0CiBtc2dpZCAiZm9yayBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzoxMjU1CisjOiBzZXR1cC5jOjEzMDkKIG1zZ2lkICJzZXRzaWQgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjM4MQorIzogc2hhMS1maWxlLmM6NDUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCBkaXJlY3RvcnkgJXMgZG9lcyBub3QgZXhpc3Q7IGNoZWNrIC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6NDMyCisjOiBzaGExLWZpbGUuYzo1MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG5vcm1hbGl6ZSBhbHRlcm5hdGUgb2JqZWN0IHBhdGg6ICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjUwMworIzogc2hhMS1maWxlLmM6NTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBpZ25vcmluZyBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlcywgbmVzdGluZyB0b28gZGVlcCIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzo1MTAKKyM6IHNoYTEtZmlsZS5jOjU4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbm9ybWFsaXplIG9iamVjdCBkaXJlY3Rvcnk6ICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjU2NQorIzogc2hhMS1maWxlLmM6NjI1CiBtc2dpZCAidW5hYmxlIHRvIGZkb3BlbiBhbHRlcm5hdGVzIGxvY2tmaWxlIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjU4MworIzogc2hhMS1maWxlLmM6NjQzCiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgYWx0ZXJuYXRlcyBmaWxlIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjU5MAorIzogc2hhMS1maWxlLmM6NjUwCiBtc2dpZCAidW5hYmxlIHRvIG1vdmUgbmV3IGFsdGVybmF0ZXMgZmlsZSBpbnRvIHBsYWNlIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjYyNQorIzogc2hhMS1maWxlLmM6Njg1CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzo2NTEKKyM6IHNoYTEtZmlsZS5jOjcxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGFzIGEgbGlua2VkIGNoZWNrb3V0IGlzIG5vdCBzdXBwb3J0ZWQgeWV0LiIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzo2NTcKKyM6IHNoYTEtZmlsZS5jOjcxNwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIG5vdCBhIGxvY2FsIHJlcG9zaXRvcnkuIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjY2MworIzogc2hhMS1maWxlLmM6NzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgc2hhbGxvdyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzo2NzEKKyM6IHNoYTEtZmlsZS5jOjczMQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIGdyYWZ0ZWQiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6NzgxCisjOiBzaGExLWZpbGUuYzo3OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lIHdoaWxlIHBhcnNpbmcgYWx0ZXJuYXRlIHJlZnM6ICVzIgorbXNnc3RyICIiCisKKyM6IHNoYTEtZmlsZS5jOjk0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhdHRlbXB0aW5nIHRvIG1tYXAgJTxQUkl1TUFYPiBvdmVyIGxpbWl0ICU8UFJJdU1BWD4iCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6ODA2CisjOiBzaGExLWZpbGUuYzo5NjQKIG1zZ2lkICJtbWFwIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzo5NzMKKyM6IHNoYTEtZmlsZS5jOjExMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IGZpbGUgJXMgaXMgZW1wdHkiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTA5MyBzaGExLWZpbGUuYzoyMjE1CisjOiBzaGExLWZpbGUuYzoxMjYzIHNoYTEtZmlsZS5jOjI0NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBsb29zZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxMDk1IHNoYTEtZmlsZS5jOjIyMTkKKyM6IHNoYTEtZmlsZS5jOjEyNjUgc2hhMS1maWxlLmM6MjQ0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJnYXJiYWdlIGF0IGVuZCBvZiBsb29zZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxMTM3CisjOiBzaGExLWZpbGUuYzoxMzA3CiBtc2dpZCAiaW52YWxpZCBvYmplY3QgdHlwZSIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxMjE5CisjOiBzaGExLWZpbGUuYzoxMzkxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgJXMgaGVhZGVyIHdpdGggLS1hbGxvdy11bmtub3duLXR5cGUiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTIyMgorIzogc2hhMS1maWxlLmM6MTM5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5wYWNrICVzIGhlYWRlciIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxMjI4CisjOiBzaGExLWZpbGUuYzoxNDAwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxMjMxCisjOiBzaGExLWZpbGUuYzoxNDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAlcyBoZWFkZXIiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTQyMgorIzogc2hhMS1maWxlLmM6MTYyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBvYmplY3QgJXMiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTQyNgorIzogc2hhMS1maWxlLmM6MTYzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBsYWNlbWVudCAlcyBub3QgZm91bmQgZm9yICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE0MzAKKyM6IHNoYTEtZmlsZS5jOjE2MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9vc2Ugb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTQzNAorIzogc2hhMS1maWxlLmM6MTY0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrZWQgb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTUzNgorIzogc2hhMS1maWxlLmM6MTc0NgogIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgc2hhMSBmaWxlbmFtZSAlcyIKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxNTQzCisjOiBzaGExLWZpbGUuYzoxNzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBzZXQgcGVybWlzc2lvbiB0byAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE1NTAKKyM6IHNoYTEtZmlsZS5jOjE3NjAKIG1zZ2lkICJmaWxlIHdyaXRlIGVycm9yIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE1NjkKLW1zZ2lkICJlcnJvciB3aGVuIGNsb3Npbmcgc2hhMSBmaWxlIgorIzogc2hhMS1maWxlLmM6MTc4MAorbXNnaWQgImVycm9yIHdoZW4gY2xvc2luZyBsb29zZSBvYmplY3QgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxNjM1CisjOiBzaGExLWZpbGUuYzoxODQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImluc3VmZmljaWVudCBwZXJtaXNzaW9uIGZvciBhZGRpbmcgYW4gb2JqZWN0IHRvIHJlcG9zaXRvcnkgZGF0YWJhc2UgJXMiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTYzNworIzogc2hhMS1maWxlLmM6MTg0NwogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGZpbGUiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTY2MQotbXNnaWQgInVuYWJsZSB0byB3cml0ZSBzaGExIGZpbGUiCisjOiBzaGExLWZpbGUuYzoxODcxCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGxvb3NlIG9iamVjdCBmaWxlIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NjcKKyM6IHNoYTEtZmlsZS5jOjE4NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgbmV3IG9iamVjdCAlcyAoJWQpIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NzEKKyM6IHNoYTEtZmlsZS5jOjE4ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVmbGF0ZUVuZCBvbiBvYmplY3QgJXMgZmFpbGVkICglZCkiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTY3NQorIzogc2hhMS1maWxlLmM6MTg4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb25mdXNlZCBieSB1bnN0YWJsZSBvYmplY3Qgc291cmNlIGRhdGEgZm9yICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE2ODUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5MTgKKyM6IHNoYTEtZmlsZS5jOjE4OTUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMDU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB1dGltZSgpIG9uICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE3NjAKKyM6IHNoYTEtZmlsZS5jOjE5NzIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiY2Fubm90IHJlYWQgc2hhMV9maWxlIGZvciAlcyIKK21zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgZm9yICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE4MDUKKyM6IHNoYTEtZmlsZS5jOjIwMTEKIG1zZ2lkICJjb3JydXB0IGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxODEzCisjOiBzaGExLWZpbGUuYzoyMDE5CiBtc2dpZCAiY29ycnVwdCB0YWciCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTkxMgorIzogc2hhMS1maWxlLmM6MjExOQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkIGVycm9yIHdoaWxlIGluZGV4aW5nICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE5MTUKKyM6IHNoYTEtZmlsZS5jOjIxMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAic2hvcnQgcmVhZCB3aGlsZSBpbmRleGluZyAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxOTg4IHNoYTEtZmlsZS5jOjE5OTcKKyM6IHNoYTEtZmlsZS5jOjIxOTUgc2hhMS1maWxlLmM6MjIwNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZmFpbGVkIHRvIGluc2VydCBpbnRvIGRhdGFiYXNlIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjIwMDMKKyM6IHNoYTEtZmlsZS5jOjIyMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHVuc3VwcG9ydGVkIGZpbGUgdHlwZSIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoyMDI3CisjOiBzaGExLWZpbGUuYzoyMjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIG9iamVjdCIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoyMDI5CisjOiBzaGExLWZpbGUuYzoyMjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkICclcycgb2JqZWN0IgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjIwNTYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU0CisjOiBzaGExLWZpbGUuYzoyMjY0IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoyMjI2IHNoYTEtZmlsZS5jOjIyNzgKKyM6IHNoYTEtZmlsZS5jOjI0NTQgc2hhMS1maWxlLmM6MjUwNwogIywgYy1mb3JtYXQKLW1zZ2lkICJzaGExIG1pc21hdGNoIGZvciAlcyAoZXhwZWN0ZWQgJXMpIgorbXNnaWQgImhhc2ggbWlzbWF0Y2ggZm9yICVzIChleHBlY3RlZCAlcykiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MjI1MAorIzogc2hhMS1maWxlLmM6MjQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbW1hcCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoyMjU1CisjOiBzaGExLWZpbGUuYzoyNDgzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgaGVhZGVyIG9mICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjIyNjEKKyM6IHNoYTEtZmlsZS5jOjI0ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGhlYWRlciBvZiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoyMjcyCisjOiBzaGExLWZpbGUuYzoyNTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgY29udGVudHMgb2YgJXMiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1uYW1lLmM6NDc2CisjOiBzaGExLW5hbWUuYzo0ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAic2hvcnQgU0hBMSAlcyBpcyBhbWJpZ3VvdXMiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1uYW1lLmM6NDg3CisjOiBzaGExLW5hbWUuYzo0OTcKIG1zZ2lkICJUaGUgY2FuZGlkYXRlcyBhcmU6IgogbXNnc3RyICIiCiAKLSM6IHNoYTEtbmFtZS5jOjc3MAorIzogc2hhMS1uYW1lLmM6Nzk2CiBtc2dpZCAiIgogIkdpdCBub3JtYWxseSBuZXZlciBjcmVhdGVzIGEgcmVmIHRoYXQgZW5kcyB3aXRoIDQwIGhleCBjaGFyYWN0ZXJzXG4iCiAiYmVjYXVzZSBpdCB3aWxsIGJlIGlnbm9yZWQgd2hlbiB5b3UganVzdCBzcGVjaWZ5IDQwLWhleC4gVGhlc2UgcmVmc1xuIgogIm1heSBiZSBjcmVhdGVkIGJ5IG1pc3Rha2UuIEZvciBleGFtcGxlLFxuIgogIlxuIgotIiAgZ2l0IGNoZWNrb3V0IC1iICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgorIiAgZ2l0IHN3aXRjaCAtYyAkYnIgJChnaXQgcmV2LXBhcnNlIC4uLilcbiIKICJcbiIKICJ3aGVyZSBcIiRiclwiIGlzIHNvbWVob3cgZW1wdHkgYW5kIGEgNDAtaGV4IHJlZiBpcyBjcmVhdGVkLiBQbGVhc2VcbiIKICJleGFtaW5lIHRoZXNlIHJlZnMgYW5kIG1heWJlIGRlbGV0ZSB0aGVtLiBUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnlcbiIKICJydW5uaW5nIFwiZ2l0IGNvbmZpZyBhZHZpY2Uub2JqZWN0TmFtZVdhcm5pbmcgZmFsc2VcIiIKIG1zZ3N0ciAiIgogCi0jOiBzdWJtb2R1bGUuYzoxMTYgc3VibW9kdWxlLmM6MTQ1CisjOiBzaGExLW5hbWUuYzo5MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciAnJS4qcycgb25seSBnb2VzIGJhY2sgdG8gJXMiCittc2dzdHIgIiIKKworIzogc2hhMS1uYW1lLmM6OTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImxvZyBmb3IgJyUuKnMnIG9ubHkgaGFzICVkIGVudHJpZXMiCittc2dzdHIgIiIKKworIzogc2hhMS1uYW1lLmM6MTY4OQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gJyUuKnMnIgorbXNnc3RyICIiCisKKyM6IHNoYTEtbmFtZS5jOjE2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBleGlzdHMsIGJ1dCBub3QgJyVzJ1xuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnJS4qczolcycgYWthICclLipzOi4vJXMnPyIKK21zZ3N0ciAiIgorCisjOiBzaGExLW5hbWUuYzoxNzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCBpbiAnJS4qcyciCittc2dzdHIgIiIKKworIzogc2hhMS1uYW1lLmM6MTczMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGlzIGluIHRoZSBpbmRleCwgYnV0IG5vdCBhdCBzdGFnZSAlZFxuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnOiVkOiVzJz8iCittc2dzdHIgIiIKKworIzogc2hhMS1uYW1lLmM6MTc0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGlzIGluIHRoZSBpbmRleCwgYnV0IG5vdCAnJXMnXG4iCisiaGludDogRGlkIHlvdSBtZWFuICc6JWQ6JXMnIGFrYSAnOiVkOi4vJXMnPyIKK21zZ3N0ciAiIgorCisjOiBzaGExLW5hbWUuYzoxNzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBleGlzdHMgb24gZGlzaywgYnV0IG5vdCBpbiB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogc2hhMS1uYW1lLmM6MTc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZG9lcyBub3QgZXhpc3QgKG5laXRoZXIgb24gZGlzayBub3IgaW4gdGhlIGluZGV4KSIKK21zZ3N0ciAiIgorCisjOiBzaGExLW5hbWUuYzoxNzcxCittc2dpZCAicmVsYXRpdmUgcGF0aCBzeW50YXggY2FuJ3QgYmUgdXNlZCBvdXRzaWRlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiIgorCisjOiBzaGExLW5hbWUuYzoxOTA5CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgb2JqZWN0IG5hbWUgJyUuKnMnLiIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggZ2liaWJ5dGUKKyM6IHN0cmJ1Zi5jOjgzNworIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBHaUIiCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGdpYmlieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEdpQi9zIgorbXNnc3RyICIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBtZWJpYnl0ZQorIzogc3RyYnVmLmM6ODQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IE1pQiIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggbWViaWJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgTWlCL3MiCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGtpYmlieXRlCisjOiBzdHJidWYuYzo4NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgS2lCIgorbXNnc3RyICIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBraWJpYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjg1OAorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBLaUIvcyIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggYnl0ZQorIzogc3RyYnVmLmM6ODY0CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1IGJ5dGUiCittc2dpZF9wbHVyYWwgIiV1IGJ5dGVzIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUgYnl0ZS9zIgorbXNnaWRfcGx1cmFsICIldSBieXRlcy9zIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogc3RyYnVmLmM6MTE2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZWRpdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS5jOjExNCBzdWJtb2R1bGUuYzoxNDMKIG1zZ2lkICJDYW5ub3QgY2hhbmdlIHVubWVyZ2VkIC5naXRtb2R1bGVzLCByZXNvbHZlIG1lcmdlIGNvbmZsaWN0cyBmaXJzdCIKIG1zZ3N0ciAiIgogCi0jOiBzdWJtb2R1bGUuYzoxMjAgc3VibW9kdWxlLmM6MTQ5CisjOiBzdWJtb2R1bGUuYzoxMTggc3VibW9kdWxlLmM6MTQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBmaW5kIHNlY3Rpb24gaW4gLmdpdG1vZHVsZXMgd2hlcmUgcGF0aD0lcyIKIG1zZ3N0ciAiIgogCi0jOiBzdWJtb2R1bGUuYzoxNTYKKyM6IHN1Ym1vZHVsZS5jOjE1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIC5naXRtb2R1bGVzIGVudHJ5IGZvciAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzdWJtb2R1bGUuYzoxNjcKKyM6IHN1Ym1vZHVsZS5jOjE2NQogbXNnaWQgInN0YWdpbmcgdXBkYXRlZCAuZ2l0bW9kdWxlcyBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogc3VibW9kdWxlLmM6MzI5CisjOiBzdWJtb2R1bGUuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW4gdW5wb3B1bGF0ZWQgc3VibW9kdWxlICclcyciCiBtc2dzdHIgIiIKIAotIzogc3VibW9kdWxlLmM6MzYwCisjOiBzdWJtb2R1bGUuYzozNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUGF0aHNwZWMgJyVzJyBpcyBpbiBzdWJtb2R1bGUgJyUuKnMnIgogbXNnc3RyICIiCiAKLSM6IHN1Ym1vZHVsZS5jOjg1NworIzogc3VibW9kdWxlLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLWlnbm9yZS1zdWJtb2R1bGVzIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzo4MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlN1Ym1vZHVsZSBpbiBjb21taXQgJXMgYXQgcGF0aDogJyVzJyBjb2xsaWRlcyB3aXRoIGEgc3VibW9kdWxlIG5hbWVkIHRoZSAiCisic2FtZS4gU2tpcHBpbmcgaXQuIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS5jOjkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgZW50cnkgJyVzJyAoJXMpIGlzIGEgJXMsIG5vdCBhIGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBzdWJtb2R1bGUuYzoxMDk3IGJ1aWx0aW4vYnJhbmNoLmM6NjU2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTg1CisjOiBzdWJtb2R1bGUuYzo5OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvdWxkIG5vdCBydW4gJ2dpdCByZXYtbGlzdCA8Y29tbWl0cz4gLS1ub3QgLS1yZW1vdGVzIC1uIDEnIGNvbW1hbmQgaW4gIgorInN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoxMTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInByb2Nlc3MgZm9yIHN1Ym1vZHVsZSAnJXMnIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoxMTQ3IGJ1aWx0aW4vYnJhbmNoLmM6NjgwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDQ1CiBtc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgSEVBRCBhcyBhIHZhbGlkIHJlZi4iCiBtc2dzdHIgIiIKIAotIzogc3VibW9kdWxlLmM6MTQwNAorIzogc3VibW9kdWxlLmM6MTE1OAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXNoaW5nIHN1Ym1vZHVsZSAnJXMnXG4iCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MTE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gcHVzaCBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS5jOjE0NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmV0Y2hpbmcgc3VibW9kdWxlICVzJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoxNDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBhY2Nlc3Mgc3VibW9kdWxlICclcydcbiIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoxNjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFcnJvcnMgZHVyaW5nIHN1Ym1vZHVsZSBmZXRjaDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoxNjYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgbm90IHJlY29nbml6ZWQgYXMgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBzdWJtb2R1bGUuYzoxNTQyCisjOiBzdWJtb2R1bGUuYzoxNjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBydW4gJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgaW4gc3VibW9kdWxlICVzIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS5jOjE3MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgZmFpbGVkIGluIHN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoxODAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGFydCAnZ2l0IHN0YXR1cycgaW4gc3VibW9kdWxlICclcyciCiBtc2dzdHIgIiIKIAotIzogc3VibW9kdWxlLmM6MTU1NQorIzogc3VibW9kdWxlLmM6MTgxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcnVuICdnaXQgc3RhdHVzJyBpbiBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzdWJtb2R1bGUuYzoxNjQ4CisjOiBzdWJtb2R1bGUuYzoxODI4CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCB1bnNldCBjb3JlLndvcmt0cmVlIHNldHRpbmcgaW4gc3VibW9kdWxlICclcyciCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MTg1NSBzdWJtb2R1bGUuYzoyMTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWN1cnNlIGludG8gc3VibW9kdWxlICclcyciCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MTg3NgorbXNnaWQgImNvdWxkIG5vdCByZXNldCBzdWJtb2R1bGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogc3VibW9kdWxlLmM6MTkxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgJyVzJyBoYXMgZGlydHkgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogc3VibW9kdWxlLmM6MTcwMAorIzogc3VibW9kdWxlLmM6MTk3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyBjb3VsZCBub3QgYmUgdXBkYXRlZC4iCiBtc2dzdHIgIiIKIAotIzogc3VibW9kdWxlLmM6MTc0NworIzogc3VibW9kdWxlLmM6MjAzOAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJtb2R1bGUgZ2l0IGRpciAnJXMnIGlzIGluc2lkZSBnaXQgZGlyICclLipzJyIKK21zZ3N0ciAiIgorCisjOiBzdWJtb2R1bGUuYzoyMDU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJyZWxvY2F0ZV9naXRkaXIgZm9yIHN1Ym1vZHVsZSAnJXMnIHdpdGggbW9yZSB0aGFuIG9uZSB3b3JrdHJlZSBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICIiCiAKLSM6IHN1Ym1vZHVsZS5jOjE3NTkgc3VibW9kdWxlLmM6MTgxNQorIzogc3VibW9kdWxlLmM6MjA3MSBzdWJtb2R1bGUuYzoyMTMwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb29rdXAgbmFtZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgIiIKIAotIzogc3VibW9kdWxlLmM6MTc2NgorIzogc3VibW9kdWxlLmM6MjA3NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBtb3ZlICclcycgaW50byBhbiBleGlzdGluZyBnaXQgZGlyIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS5jOjIwODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk1pZ3JhdGluZyBnaXQgZGlyZWN0b3J5IG9mICclcyVzJyBmcm9tXG4iCkBAIC01NTcyLDQwICs3NTM5LDM1IEBACiAiJyVzJ1xuIgogbXNnc3RyICIiCiAKLSM6IHN1Ym1vZHVsZS5jOjE4NTAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBzdWJtb2R1bGUuYzoxODk0CisjOiBzdWJtb2R1bGUuYzoyMjA5CiBtc2dpZCAiY291bGQgbm90IHN0YXJ0IGxzLWZpbGVzIGluIC4uIgogbXNnc3RyICIiCiAKLSM6IHN1Ym1vZHVsZS5jOjE5MzMKKyM6IHN1Ym1vZHVsZS5jOjIyNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAibHMtdHJlZSByZXR1cm5lZCB1bmV4cGVjdGVkIHJldHVybiBjb2RlICVkIgogbXNnc3RyICIiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzIKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3Jpbmcgc3VzcGljaW91cyBzdWJtb2R1bGUgbmFtZTogJXMiCiBtc2dzdHIgIiIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjI5NgorIzogc3VibW9kdWxlLWNvbmZpZy5jOjMwMwogbXNnaWQgIm5lZ2F0aXZlIHZhbHVlcyBub3QgYWxsb3dlZCBmb3Igc3VibW9kdWxlLmZldGNoam9icyIKIG1zZ3N0ciAiIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6MzkwCisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nICclcycgd2hpY2ggbWF5IGJlIGludGVycHJldGVkIGFzIGEgY29tbWFuZC1saW5lIG9wdGlvbjogJXMiCiBtc2dzdHIgIiIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjQ3OQorIzogc3VibW9kdWxlLWNvbmZpZy5jOjQ5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6NzU0CisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCB1cGRhdGUgLmdpdG1vZHVsZXMgZW50cnkgJXMiCiBtc2dzdHIgIiIKQEAgLTU2MjEsNyArNzU4Myw3IEBACiBtc2dpZCAidW5rbm93biB2YWx1ZSAnJXMnIGZvciBrZXkgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiB0cmFpbGVyLmM6NTM5IHRyYWlsZXIuYzo1NDQgYnVpbHRpbi9yZW1vdGUuYzoyOTUKKyM6IHRyYWlsZXIuYzo1MzkgdHJhaWxlci5jOjU0NCBidWlsdGluL3JlbW90ZS5jOjI5OCBidWlsdGluL3JlbW90ZS5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJtb3JlIHRoYW4gb25lICVzIgogbXNnc3RyICIiCkBAIC01NjQwLDcgKzc2MDIsNyBAQAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGZyb20gc3RkaW4iCiBtc2dzdHIgIiIKIAotIzogdHJhaWxlci5jOjEwMTEgYnVpbHRpbi9hbS5jOjQ3CisjOiB0cmFpbGVyLmM6MTAxMSB3cmFwcGVyLmM6NjY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0ICVzIgogbXNnc3RyICIiCkBAIC01NjY5LDQ2ICs3NjMxLDU0IEBACiBtc2dpZCAiV291bGQgc2V0IHVwc3RyZWFtIG9mICclcycgdG8gJyVzJyBvZiAnJXMnXG4iCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LmM6MTQyCisjOiB0cmFuc3BvcnQuYzoxNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgYnVuZGxlICclcyciCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LmM6MjA4CisjOiB0cmFuc3BvcnQuYzoyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJhbnNwb3J0OiBpbnZhbGlkIGRlcHRoIG9wdGlvbiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC5jOjYxNgorIzogdHJhbnNwb3J0LmM6MjY2Cittc2dpZCAic2VlIHByb3RvY29sLnZlcnNpb24gaW4gJ2dpdCBoZWxwIGNvbmZpZycgZm9yIG1vcmUgZGV0YWlscyIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQuYzoyNjcKK21zZ2lkICJzZXJ2ZXIgb3B0aW9ucyByZXF1aXJlIHByb3RvY29sIHZlcnNpb24gMiBvciBsYXRlciIKK21zZ3N0ciAiIgorCisjOiB0cmFuc3BvcnQuYzo2MzIKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgdHJhbnNwb3J0LmNvbG9yLiogY29uZmlnIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC5jOjY4OQorIzogdHJhbnNwb3J0LmM6NzA1CiBtc2dpZCAic3VwcG9ydCBmb3IgcHJvdG9jb2wgdjIgbm90IGltcGxlbWVudGVkIHlldCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQuYzo4MTYKKyM6IHRyYW5zcG9ydC5jOjgzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHZhbHVlIGZvciBjb25maWcgJyVzJzogJXMiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LmM6ODgyCisjOiB0cmFuc3BvcnQuYzo4OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJhbnNwb3J0ICclcycgbm90IGFsbG93ZWQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LmM6OTM2CisjOiB0cmFuc3BvcnQuYzo5NDkKIG1zZ2lkICJnaXQtb3Zlci1yc3luYyBpcyBubyBsb25nZXIgc3VwcG9ydGVkIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC5jOjEwMzEKKyM6IHRyYW5zcG9ydC5jOjEwNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgc3VibW9kdWxlIHBhdGhzIGNvbnRhaW4gY2hhbmdlcyB0aGF0IGNhblxuIgogIm5vdCBiZSBmb3VuZCBvbiBhbnkgcmVtb3RlOlxuIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC5jOjEwMzUKKyM6IHRyYW5zcG9ydC5jOjEwNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtNTcyNCwzNTAgKzc2OTQsMzUwIEBACiAiXG4iCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LmM6MTA0MworIzogdHJhbnNwb3J0LmM6MTA1NgogbXNnaWQgIkFib3J0aW5nLiIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQuYzoxMTgyCisjOiB0cmFuc3BvcnQuYzoxMjAxCiBtc2dpZCAiZmFpbGVkIHRvIHB1c2ggYWxsIG5lZWRlZCBzdWJtb2R1bGVzIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC5jOjEzMTUgdHJhbnNwb3J0LWhlbHBlci5jOjY0MworIzogdHJhbnNwb3J0LmM6MTM0NSB0cmFuc3BvcnQtaGVscGVyLmM6NjU3CiBtc2dpZCAib3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LmM6MTQxOQotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIGxpbmUgd2hpbGUgcGFyc2luZyBhbHRlcm5hdGUgcmVmczogJXMiCi1tc2dzdHIgIiIKLQotIzogdHJhbnNwb3J0LWhlbHBlci5jOjUxIHRyYW5zcG9ydC1oZWxwZXIuYzo4MAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjYxIHRyYW5zcG9ydC1oZWxwZXIuYzo5MAogbXNnaWQgImZ1bGwgd3JpdGUgdG8gcmVtb3RlIGhlbHBlciBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZmluZCByZW1vdGUgaGVscGVyIGZvciAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDggdHJhbnNwb3J0LWhlbHBlci5jOjU1NworIzogdHJhbnNwb3J0LWhlbHBlci5jOjE2MCB0cmFuc3BvcnQtaGVscGVyLmM6NTcxCiBtc2dpZCAiY2FuJ3QgZHVwIGhlbHBlciBvdXRwdXQgZmQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjE5OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5rbm93biBtYW5kYXRvcnkgY2FwYWJpbGl0eSAlczsgdGhpcyByZW1vdGUgaGVscGVyIHByb2JhYmx5IG5lZWRzIG5ld2VyICIKICJ2ZXJzaW9uIG9mIEdpdCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MjA1CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MjE3CiBtc2dpZCAidGhpcyByZW1vdGUgaGVscGVyIHNob3VsZCBpbXBsZW1lbnQgcmVmc3BlYyBjYXBhYmlsaXR5IgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyNzIgdHJhbnNwb3J0LWhlbHBlci5jOjQxMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjI4NCB0cmFuc3BvcnQtaGVscGVyLmM6NDI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHVuZXhwZWN0ZWRseSBzYWlkOiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0MDEKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgYWxzbyBsb2NrZWQgJXMiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjQ3OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjQ5MwogbXNnaWQgImNvdWxkbid0IHJ1biBmYXN0LWltcG9ydCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTAyCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTE2CiBtc2dpZCAiZXJyb3Igd2hpbGUgcnVubmluZyBmYXN0LWltcG9ydCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTMxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMDkxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTQ1IHRyYW5zcG9ydC1oZWxwZXIuYzoxMTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAlcyIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTc2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gcmVzcG9uc2UgdG8gY29ubmVjdDogJXMiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjU5OAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjYxMgogbXNnaWQgInNldHRpbmcgcmVtb3RlIHNlcnZpY2UgcGF0aCBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MDAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MTQKIG1zZ2lkICJpbnZhbGlkIHJlbW90ZSBzZXJ2aWNlIHBhdGgiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjY0NgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjY2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCBjb25uZWN0IHRvIHN1YnNlcnZpY2UgJXMiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjcxMworIzogdHJhbnNwb3J0LWhlbHBlci5jOjczNgogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBvay9lcnJvciwgaGVscGVyIHNhaWQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NzY2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6Nzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciByZXBvcnRlZCB1bmV4cGVjdGVkIHN0YXR1cyBvZiAlcyIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODI3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODUwCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IGRyeS1ydW4iCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjgzMAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjg1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAtLXNpZ25lZCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODMzCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODU2CiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkPWlmLWFza2VkIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NDAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgLS1hdG9taWMiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjg2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAncHVzaC1vcHRpb24nIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5MzIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5NjUKIG1zZ2lkICJyZW1vdGUtaGVscGVyIGRvZXNuJ3Qgc3VwcG9ydCBwdXNoOyByZWZzcGVjIG5lZWRlZCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTM3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6OTcwCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0ICdmb3JjZSciCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjk4NAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMTcKIG1zZ2lkICJjb3VsZG4ndCBydW4gZmFzdC1leHBvcnQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjk4OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMjIKIG1zZ2lkICJlcnJvciB3aGlsZSBydW5uaW5nIGZhc3QtZXhwb3J0IgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDE0CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTA0NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gcmVmcyBpbiBjb21tb24gYW5kIG5vbmUgc3BlY2lmaWVkOyBkb2luZyBub3RoaW5nLlxuIgogIlBlcmhhcHMgeW91IHNob3VsZCBzcGVjaWZ5IGEgYnJhbmNoIHN1Y2ggYXMgJ21hc3RlcicuXG4iCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwNzcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCByZXNwb25zZSBpbiByZWYgbGlzdDogJXMiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyMzEKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYWQoJXMpIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI1OAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyOTkKICMsIGMtZm9ybWF0CiBtc2dpZCAid3JpdGUoJXMpIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMwNworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdGhyZWFkIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMxMQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdGhyZWFkIGZhaWxlZCB0byBqb2luOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMzMCB0cmFuc3BvcnQtaGVscGVyLmM6MTMzNAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNzEgdHJhbnNwb3J0LWhlbHBlci5jOjEzNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgc3RhcnQgdGhyZWFkIGZvciBjb3B5aW5nIGRhdGE6ICVzIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzcxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQxMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBwcm9jZXNzIGZhaWxlZCB0byB3YWl0IgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzc1CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQxNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBwcm9jZXNzIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM5MyB0cmFuc3BvcnQtaGVscGVyLmM6MTQwMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0MzQgdHJhbnNwb3J0LWhlbHBlci5jOjE0NDMKIG1zZ2lkICJjYW4ndCBzdGFydCB0aHJlYWQgZm9yIGNvcHlpbmcgZGF0YSIKIG1zZ3N0ciAiIgogCi0jOiB0cmVlLXdhbGsuYzozMworIzogdHJlZS13YWxrLmM6MzIKIG1zZ2lkICJ0b28tc2hvcnQgdHJlZSBvYmplY3QiCiBtc2dzdHIgIiIKIAotIzogdHJlZS13YWxrLmM6MzkKKyM6IHRyZWUtd2Fsay5jOjM4CiBtc2dpZCAibWFsZm9ybWVkIG1vZGUgaW4gdHJlZSBlbnRyeSIKIG1zZ3N0ciAiIgogCi0jOiB0cmVlLXdhbGsuYzo0MworIzogdHJlZS13YWxrLmM6NDIKIG1zZ2lkICJlbXB0eSBmaWxlbmFtZSBpbiB0cmVlIGVudHJ5IgogbXNnc3RyICIiCiAKLSM6IHRyZWUtd2Fsay5jOjExNQorIzogdHJlZS13YWxrLmM6MTE3CiBtc2dpZCAidG9vLXNob3J0IHRyZWUgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTIKKyM6IHVucGFjay10cmVlcy5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCiAiJSVzUGxlYXNlIGNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSBiZWZvcmUgeW91IHN3aXRjaCBicmFuY2hlcy4iCiBtc2dzdHIgIiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTE0CisjOiB1bnBhY2stdHJlZXMuYzoxMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IGNoZWNrb3V0OlxuIgogIiUlcyIKIG1zZ3N0ciAiIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTcKKyM6IHVucGFjay10cmVlcy5jOjExNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCiAiJSVzUGxlYXNlIGNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSBiZWZvcmUgeW91IG1lcmdlLiIKIG1zZ3N0ciAiIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTkKKyM6IHVucGFjay10cmVlcy5jOjExNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCiAiJSVzIgogbXNnc3RyICIiCiAKLSM6IHVucGFjay10cmVlcy5jOjEyMgorIzogdW5wYWNrLXRyZWVzLmM6MTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKICIlJXNQbGVhc2UgY29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIGJlZm9yZSB5b3UgJXMuIgogbXNnc3RyICIiCiAKLSM6IHVucGFjay10cmVlcy5jOjEyNAorIzogdW5wYWNrLXRyZWVzLmM6MTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKICIlJXMiCiBtc2dzdHIgIiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTI5CisjOiB1bnBhY2stdHJlZXMuYzoxMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlVwZGF0aW5nIHRoZSBmb2xsb3dpbmcgZGlyZWN0b3JpZXMgd291bGQgbG9zZSB1bnRyYWNrZWQgZmlsZXMgaW4gdGhlbTpcbiIKICIlcyIKIG1zZ3N0ciAiIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMzMKKyM6IHVucGFjay10cmVlcy5jOjEzMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgY2hlY2tvdXQ6XG4iCiAiJSVzUGxlYXNlIG1vdmUgb3IgcmVtb3ZlIHRoZW0gYmVmb3JlIHlvdSBzd2l0Y2ggYnJhbmNoZXMuIgogbXNnc3RyICIiCiAKLSM6IHVucGFjay10cmVlcy5jOjEzNQorIzogdW5wYWNrLXRyZWVzLmM6MTMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKICIlJXMiCiBtc2dzdHIgIiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTM4CisjOiB1bnBhY2stdHJlZXMuYzoxMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgogIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3UgbWVyZ2UuIgogbXNnc3RyICIiCiAKLSM6IHVucGFjay10cmVlcy5jOjE0MAorIzogdW5wYWNrLXRyZWVzLmM6MTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBtZXJnZTpcbiIKICIlJXMiCiBtc2dzdHIgIiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTQzCisjOiB1bnBhY2stdHJlZXMuYzoxNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5ICVzOlxuIgogIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3UgJXMuIgogbXNnc3RyICIiCiAKLSM6IHVucGFjay10cmVlcy5jOjE0NQorIzogdW5wYWNrLXRyZWVzLmM6MTQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSAlczpcbiIKICIlJXMiCiBtc2dzdHIgIiIKIAorIzogdW5wYWNrLXRyZWVzLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgIgorImNoZWNrb3V0OlxuIgorIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3Ugc3dpdGNoIGJyYW5jaGVzLiIKK21zZ3N0ciAiIgorCiAjOiB1bnBhY2stdHJlZXMuYzoxNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCiAiY2hlY2tvdXQ6XG4iCi0iJSVzUGxlYXNlIG1vdmUgb3IgcmVtb3ZlIHRoZW0gYmVmb3JlIHlvdSBzd2l0Y2ggYnJhbmNoZXMuIgotbXNnc3RyICIiCi0KLSM6IHVucGFjay10cmVlcy5jOjE1MwotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICIKLSJjaGVja291dDpcbiIKICIlJXMiCiBtc2dzdHIgIiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTU2CisjOiB1bnBhY2stdHJlZXMuYzoxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKICIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91IG1lcmdlLiIKIG1zZ3N0ciAiIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNTgKKyM6IHVucGFjay10cmVlcy5jOjE1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgogIiUlcyIKIG1zZ3N0ciAiIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNjEKKyM6IHVucGFjay10cmVlcy5jOjE1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgogIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3UgJXMuIgogbXNnc3RyICIiCiAKLSM6IHVucGFjay10cmVlcy5jOjE2MworIzogdW5wYWNrLXRyZWVzLmM6MTYxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCiAiJSVzIgogbXNnc3RyICIiCiAKLSM6IHVucGFjay10cmVlcy5jOjE3MQorIzogdW5wYWNrLXRyZWVzLmM6MTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkVudHJ5ICclcycgb3ZlcmxhcHMgd2l0aCAnJXMnLiAgQ2Fubm90IGJpbmQuIgogbXNnc3RyICIiCiAKLSM6IHVucGFjay10cmVlcy5jOjE3NAorIzogdW5wYWNrLXRyZWVzLmM6MTcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgdXBkYXRlIHNwYXJzZSBjaGVja291dDogdGhlIGZvbGxvd2luZyBlbnRyaWVzIGFyZSBub3QgdXAgdG8gZGF0ZTpcbiIKICIlcyIKIG1zZ3N0ciAiIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNzYKKyM6IHVucGFjay10cmVlcy5jOjE3NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgc3BhcnNlIGNoZWNrb3V0ICIKQEAgLTYwNzUsNyArODA0NSw3IEBACiAiJXMiCiBtc2dzdHIgIiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTc4CisjOiB1bnBhY2stdHJlZXMuYzoxNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgc3BhcnNlIGNoZWNrb3V0ICIKQEAgLTYwODMsMjkgKzgwNTMsMzMgQEAKICIlcyIKIG1zZ3N0ciAiIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxODAKKyM6IHVucGFjay10cmVlcy5jOjE3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IHVwZGF0ZSBzdWJtb2R1bGU6XG4iCiAiJXMiCiBtc2dzdHIgIiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MjU0CisjOiB1bnBhY2stdHJlZXMuYzoyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmdcbiIKIG1zZ3N0ciAiIgogCi0jOiB1bnBhY2stdHJlZXMuYzozMzYKLW1zZ2lkICJDaGVja2luZyBvdXQgZmlsZXMiCisjOiB1bnBhY2stdHJlZXMuYzozMTcKK21zZ2lkICJVcGRhdGluZyBmaWxlcyIKIG1zZ3N0ciAiIgogCi0jOiB1bnBhY2stdHJlZXMuYzozNjgKKyM6IHVucGFjay10cmVlcy5jOjM0OQogbXNnaWQgIiIKICJ0aGUgZm9sbG93aW5nIHBhdGhzIGhhdmUgY29sbGlkZWQgKGUuZy4gY2FzZS1zZW5zaXRpdmUgcGF0aHNcbiIKICJvbiBhIGNhc2UtaW5zZW5zaXRpdmUgZmlsZXN5c3RlbSkgYW5kIG9ubHkgb25lIGZyb20gdGhlIHNhbWVcbiIKICJjb2xsaWRpbmcgZ3JvdXAgaXMgaW4gdGhlIHdvcmtpbmcgdHJlZTpcbiIKIG1zZ3N0ciAiIgogCisjOiB1bnBhY2stdHJlZXMuYzoxNDQ1Cittc2dpZCAiVXBkYXRpbmcgaW5kZXggZmxhZ3MiCittc2dzdHIgIiIKKwogIzogdXJsbWF0Y2guYzoxNjMKIG1zZ2lkICJpbnZhbGlkIFVSTCBzY2hlbWUgbmFtZSBvciBtaXNzaW5nICc6Ly8nIHN1ZmZpeCIKIG1zZ3N0ciAiIgpAQCAtNjEzNSw0MTggKzgxMDksNDUwIEBACiBtc2dpZCAiaW52YWxpZCAnLi4nIHBhdGggc2VnbWVudCIKIG1zZ3N0ciAiIgogCi0jOiB3b3JrdHJlZS5jOjI0OSBidWlsdGluL2FtLmM6MjEwMAorIzogd2Fsa2VyLmM6MTcwCittc2dpZCAiRmV0Y2hpbmcgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiB3b3JrdHJlZS5jOjI1OSBidWlsdGluL2FtLmM6MjA5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHdvcmt0cmVlLmM6Mjk1CisjOiB3b3JrdHJlZS5jOjMwNQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGF0IG1haW4gd29ya2luZyB0cmVlIGlzIG5vdCB0aGUgcmVwb3NpdG9yeSBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKIAotIzogd29ya3RyZWUuYzozMDYKKyM6IHdvcmt0cmVlLmM6MzE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZmlsZSBkb2VzIG5vdCBjb250YWluIGFic29sdXRlIHBhdGggdG8gdGhlIHdvcmtpbmcgdHJlZSBsb2NhdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiB3b3JrdHJlZS5jOjMxOAorIzogd29ya3RyZWUuYzozMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAiIgogCi0jOiB3b3JrdHJlZS5jOjMyNAorIzogd29ya3RyZWUuYzozMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSAuZ2l0IGZpbGUsIGVycm9yIGNvZGUgJWQiCiBtc2dzdHIgIiIKIAotIzogd29ya3RyZWUuYzozMzIKKyM6IHdvcmt0cmVlLmM6MzQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZG9lcyBub3QgcG9pbnQgYmFjayB0byAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHdyYXBwZXIuYzoyMjMgd3JhcHBlci5jOjM5MworIzogd3JhcHBlci5jOjE4NiB3cmFwcGVyLmM6MzU2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHJlYWRpbmcgYW5kIHdyaXRpbmciCiBtc2dzdHIgIiIKIAotIzogd3JhcHBlci5jOjQyNCB3cmFwcGVyLmM6NjI0CisjOiB3cmFwcGVyLmM6Mzg3IHdyYXBwZXIuYzo1ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGFjY2VzcyAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHdyYXBwZXIuYzo2MzIKKyM6IHdyYXBwZXIuYzo1OTYKIG1zZ2lkICJ1bmFibGUgdG8gZ2V0IGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTU0CisjOiB3dC1zdGF0dXMuYzoxNTgKIG1zZ2lkICJVbm1lcmdlZCBwYXRoczoiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTgxIHd0LXN0YXR1cy5jOjIwOAotIywgYy1mb3JtYXQKLW1zZ2lkICIgICh1c2UgXCJnaXQgcmVzZXQgJXMgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCisjOiB3dC1zdGF0dXMuYzoxODcgd3Qtc3RhdHVzLmM6MjE5Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTgzIHd0LXN0YXR1cy5jOjIxMAorIzogd3Qtc3RhdHVzLmM6MTkwIHd0LXN0YXR1cy5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIgICh1c2UgXCJnaXQgcmVzdG9yZSAtLXNvdXJjZT0lcyAtLXN0YWdlZCA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKK21zZ3N0ciAiIgorCisjOiB3dC1zdGF0dXMuYzoxOTMgd3Qtc3RhdHVzLmM6MjI1CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJtIC0tY2FjaGVkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjE4NworIzogd3Qtc3RhdHVzLmM6MTk3CiBtc2dpZCAiICAodXNlIFwiZ2l0IGFkZCA8ZmlsZT4uLi5cIiB0byBtYXJrIHJlc29sdXRpb24pIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjE4OSB3dC1zdGF0dXMuYzoxOTMKKyM6IHd0LXN0YXR1cy5jOjE5OSB3dC1zdGF0dXMuYzoyMDMKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIGFzIGFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbikiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTkxCisjOiB3dC1zdGF0dXMuYzoyMDEKIG1zZ2lkICIgICh1c2UgXCJnaXQgcm0gPGZpbGU+Li4uXCIgdG8gbWFyayByZXNvbHV0aW9uKSIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoyMDIgd3Qtc3RhdHVzLmM6MTA0MgorIzogd3Qtc3RhdHVzLmM6MjExIHd0LXN0YXR1cy5jOjEwNzQKIG1zZ2lkICJDaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MjIwIHd0LXN0YXR1cy5jOjEwNTEKKyM6IHd0LXN0YXR1cy5jOjIzNCB3dC1zdGF0dXMuYzoxMDgzCiBtc2dpZCAiQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6IgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjIyNAorIzogd3Qtc3RhdHVzLmM6MjM4CiBtc2dpZCAiICAodXNlIFwiZ2l0IGFkZCA8ZmlsZT4uLi5cIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MjI2CisjOiB3dC1zdGF0dXMuYzoyNDAKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoyMjcKKyM6IHd0LXN0YXR1cy5jOjI0MQogbXNnaWQgIiIKLSIgICh1c2UgXCJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uXCIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KSIKKyIgICh1c2UgXCJnaXQgcmVzdG9yZSA8ZmlsZT4uLi5cIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjIyOQorIzogd3Qtc3RhdHVzLmM6MjQzCiBtc2dpZCAiICAoY29tbWl0IG9yIGRpc2NhcmQgdGhlIHVudHJhY2tlZCBvciBtb2RpZmllZCBjb250ZW50IGluIHN1Ym1vZHVsZXMpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjI0MQorIzogd3Qtc3RhdHVzLmM6MjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgKHVzZSBcImdpdCAlcyA8ZmlsZT4uLi5cIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjI1NgorIzogd3Qtc3RhdHVzLmM6MjY4CiBtc2dpZCAiYm90aCBkZWxldGVkOiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoyNTgKKyM6IHd0LXN0YXR1cy5jOjI3MAogbXNnaWQgImFkZGVkIGJ5IHVzOiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoyNjAKKyM6IHd0LXN0YXR1cy5jOjI3MgogbXNnaWQgImRlbGV0ZWQgYnkgdGhlbToiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MjYyCisjOiB3dC1zdGF0dXMuYzoyNzQKIG1zZ2lkICJhZGRlZCBieSB0aGVtOiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoyNjQKKyM6IHd0LXN0YXR1cy5jOjI3NgogbXNnaWQgImRlbGV0ZWQgYnkgdXM6IgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjI2NgorIzogd3Qtc3RhdHVzLmM6Mjc4CiBtc2dpZCAiYm90aCBhZGRlZDoiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MjY4CisjOiB3dC1zdGF0dXMuYzoyODAKIG1zZ2lkICJib3RoIG1vZGlmaWVkOiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoyNzgKKyM6IHd0LXN0YXR1cy5jOjI5MAogbXNnaWQgIm5ldyBmaWxlOiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoyODAKKyM6IHd0LXN0YXR1cy5jOjI5MgogbXNnaWQgImNvcGllZDoiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MjgyCisjOiB3dC1zdGF0dXMuYzoyOTQKIG1zZ2lkICJkZWxldGVkOiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoyODQKKyM6IHd0LXN0YXR1cy5jOjI5NgogbXNnaWQgIm1vZGlmaWVkOiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoyODYKKyM6IHd0LXN0YXR1cy5jOjI5OAogbXNnaWQgInJlbmFtZWQ6IgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjI4OAorIzogd3Qtc3RhdHVzLmM6MzAwCiBtc2dpZCAidHlwZWNoYW5nZToiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MjkwCisjOiB3dC1zdGF0dXMuYzozMDIKIG1zZ2lkICJ1bmtub3duOiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoyOTIKKyM6IHd0LXN0YXR1cy5jOjMwNAogbXNnaWQgInVubWVyZ2VkOiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzozNzIKKyM6IHd0LXN0YXR1cy5jOjM4NAogbXNnaWQgIm5ldyBjb21taXRzLCAiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6Mzc0CisjOiB3dC1zdGF0dXMuYzozODYKIG1zZ2lkICJtb2RpZmllZCBjb250ZW50LCAiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6Mzc2CisjOiB3dC1zdGF0dXMuYzozODgKIG1zZ2lkICJ1bnRyYWNrZWQgY29udGVudCwgIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjg4MAorIzogd3Qtc3RhdHVzLmM6OTA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgc3Rhc2ggY3VycmVudGx5IGhhcyAlZCBlbnRyeSIKIG1zZ2lkX3BsdXJhbCAiWW91ciBzdGFzaCBjdXJyZW50bHkgaGFzICVkIGVudHJpZXMiCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiB3dC1zdGF0dXMuYzo5MTIKKyM6IHd0LXN0YXR1cy5jOjkzOAogbXNnaWQgIlN1Ym1vZHVsZXMgY2hhbmdlZCBidXQgbm90IHVwZGF0ZWQ6IgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjkxNAorIzogd3Qtc3RhdHVzLmM6OTQwCiBtc2dpZCAiU3VibW9kdWxlIGNoYW5nZXMgdG8gYmUgY29tbWl0dGVkOiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzo5OTYKKyM6IHd0LXN0YXR1cy5jOjEwMjIKIG1zZ2lkICIiCiAiRG8gbm90IG1vZGlmeSBvciByZW1vdmUgdGhlIGxpbmUgYWJvdmUuXG4iCiAiRXZlcnl0aGluZyBiZWxvdyBpdCB3aWxsIGJlIGlnbm9yZWQuIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjEwOTcKKyM6IHd0LXN0YXR1cy5jOjExMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGNvbXB1dGUgdGhlIGJyYW5jaCBhaGVhZC9iZWhpbmQgdmFsdWVzLlxuIgorIllvdSBjYW4gdXNlICctLW5vLWFoZWFkLWJlaGluZCcgdG8gYXZvaWQgdGhpcy5cbiIKK21zZ3N0ciAiIgorCisjOiB3dC1zdGF0dXMuYzoxMTQ0CiBtc2dpZCAiWW91IGhhdmUgdW5tZXJnZWQgcGF0aHMuIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjExMDAKKyM6IHd0LXN0YXR1cy5jOjExNDcKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgY29tbWl0XCIpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjExMDIKKyM6IHd0LXN0YXR1cy5jOjExNDkKIG1zZ2lkICIgICh1c2UgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIHRvIGFib3J0IHRoZSBtZXJnZSkiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTEwNgorIzogd3Qtc3RhdHVzLmM6MTE1MwogbXNnaWQgIkFsbCBjb25mbGljdHMgZml4ZWQgYnV0IHlvdSBhcmUgc3RpbGwgbWVyZ2luZy4iCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTEwOQorIzogd3Qtc3RhdHVzLmM6MTE1NgogbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXRcIiB0byBjb25jbHVkZSBtZXJnZSkiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTExOAorIzogd3Qtc3RhdHVzLmM6MTE2NQogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbiBhbSBzZXNzaW9uLiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxMTIxCisjOiB3dC1zdGF0dXMuYzoxMTY4CiBtc2dpZCAiVGhlIGN1cnJlbnQgcGF0Y2ggaXMgZW1wdHkuIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjExMjUKKyM6IHd0LXN0YXR1cy5jOjExNzIKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCB0aGVuIHJ1biBcImdpdCBhbSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjExMjcKKyM6IHd0LXN0YXR1cy5jOjExNzQKIG1zZ2lkICIgICh1c2UgXCJnaXQgYW0gLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxMTI5CisjOiB3dC1zdGF0dXMuYzoxMTc2CiBtc2dpZCAiICAodXNlIFwiZ2l0IGFtIC0tYWJvcnRcIiB0byByZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2gpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjEyNjAKKyM6IHd0LXN0YXR1cy5jOjEzMDkKIG1zZ2lkICJnaXQtcmViYXNlLXRvZG8gaXMgbWlzc2luZy4iCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTI2MgorIzogd3Qtc3RhdHVzLmM6MTMxMQogbXNnaWQgIk5vIGNvbW1hbmRzIGRvbmUuIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjEyNjUKKyM6IHd0LXN0YXR1cy5jOjEzMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiTGFzdCBjb21tYW5kIGRvbmUgKCVkIGNvbW1hbmQgZG9uZSk6IgogbXNnaWRfcGx1cmFsICJMYXN0IGNvbW1hbmRzIGRvbmUgKCVkIGNvbW1hbmRzIGRvbmUpOiIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IHd0LXN0YXR1cy5jOjEyNzYKKyM6IHd0LXN0YXR1cy5jOjEzMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAoc2VlIG1vcmUgaW4gZmlsZSAlcykiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTI4MQorIzogd3Qtc3RhdHVzLmM6MTMzMAogbXNnaWQgIk5vIGNvbW1hbmRzIHJlbWFpbmluZy4iCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTI4NAorIzogd3Qtc3RhdHVzLmM6MTMzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJOZXh0IGNvbW1hbmQgdG8gZG8gKCVkIHJlbWFpbmluZyBjb21tYW5kKToiCiBtc2dpZF9wbHVyYWwgIk5leHQgY29tbWFuZHMgdG8gZG8gKCVkIHJlbWFpbmluZyBjb21tYW5kcyk6IgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogd3Qtc3RhdHVzLmM6MTI5MgorIzogd3Qtc3RhdHVzLmM6MTM0MQogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1lZGl0LXRvZG9cIiB0byB2aWV3IGFuZCBlZGl0KSIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxMzA0CisjOiB3dC1zdGF0dXMuYzoxMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMDkKKyM6IHd0LXN0YXR1cy5jOjEzNTgKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSByZWJhc2luZy4iCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTMyMgorIzogd3Qtc3RhdHVzLmM6MTM3MQogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHRoZW4gcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMjQKKyM6IHd0LXN0YXR1cy5jOjEzNzMKIG1zZ2lkICIgICh1c2UgXCJnaXQgcmViYXNlIC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTMyNgorIzogd3Qtc3RhdHVzLmM6MTM3NQogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1hYm9ydFwiIHRvIGNoZWNrIG91dCB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxMzMzCisjOiB3dC1zdGF0dXMuYzoxMzgyCiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMzcKKyM6IHd0LXN0YXR1cy5jOjEzODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBhcmUgY3VycmVudGx5IHNwbGl0dGluZyBhIGNvbW1pdCB3aGlsZSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxMzQyCisjOiB3dC1zdGF0dXMuYzoxMzkxCiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgc3BsaXR0aW5nIGEgY29tbWl0IGR1cmluZyBhIHJlYmFzZS4iCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTM0NQorIzogd3Qtc3RhdHVzLmM6MTM5NAogbXNnaWQgIiAgKE9uY2UgeW91ciB3b3JraW5nIGRpcmVjdG9yeSBpcyBjbGVhbiwgcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNDkKKyM6IHd0LXN0YXR1cy5jOjEzOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgZWRpdGluZyBhIGNvbW1pdCB3aGlsZSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxMzU0CisjOiB3dC1zdGF0dXMuYzoxNDAzCiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgZWRpdGluZyBhIGNvbW1pdCBkdXJpbmcgYSByZWJhc2UuIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTcKKyM6IHd0LXN0YXR1cy5jOjE0MDYKIG1zZ2lkICIgICh1c2UgXCJnaXQgY29tbWl0IC0tYW1lbmRcIiB0byBhbWVuZCB0aGUgY3VycmVudCBjb21taXQpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTkKKyM6IHd0LXN0YXR1cy5jOjE0MDgKIG1zZ2lkICIiCiAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIgb25jZSB5b3UgYXJlIHNhdGlzZmllZCB3aXRoIHlvdXIgY2hhbmdlcykiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTM2OAorIzogd3Qtc3RhdHVzLmM6MTQxOQorbXNnaWQgIkNoZXJyeS1waWNrIGN1cnJlbnRseSBpbiBwcm9ncmVzcy4iCittc2dzdHIgIiIKKworIzogd3Qtc3RhdHVzLmM6MTQyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBjaGVycnktcGlja2luZyBjb21taXQgJXMuIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNzMKKyM6IHd0LXN0YXR1cy5jOjE0MjkKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxMzc2CisjOiB3dC1zdGF0dXMuYzoxNDMyCittc2dpZCAiICAocnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB0byBjb250aW51ZSkiCittc2dzdHIgIiIKKworIzogd3Qtc3RhdHVzLmM6MTQzNQogbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNzgKKyM6IHd0LXN0YXR1cy5jOjE0MzcKK21zZ2lkICIgICh1c2UgXCJnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKK21zZ3N0ciAiIgorCisjOiB3dC1zdGF0dXMuYzoxNDM5CiBtc2dpZCAiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnRcIiB0byBjYW5jZWwgdGhlIGNoZXJyeS1waWNrIG9wZXJhdGlvbikiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTM4NgorIzogd3Qtc3RhdHVzLmM6MTQ0OQorbXNnaWQgIlJldmVydCBjdXJyZW50bHkgaW4gcHJvZ3Jlc3MuIgorbXNnc3RyICIiCisKKyM6IHd0LXN0YXR1cy5jOjE0NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmV2ZXJ0aW5nIGNvbW1pdCAlcy4iCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTM5MQorIzogd3Qtc3RhdHVzLmM6MTQ1OAogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxMzk0CisjOiB3dC1zdGF0dXMuYzoxNDYxCittc2dpZCAiICAocnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIgdG8gY29udGludWUpIgorbXNnc3RyICIiCisKKyM6IHd0LXN0YXR1cy5jOjE0NjQKIG1zZ2lkICIgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTM5NgorIzogd3Qtc3RhdHVzLmM6MTQ2NgorbXNnaWQgIiAgKHVzZSBcImdpdCByZXZlcnQgLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKK21zZ3N0ciAiIgorCisjOiB3dC1zdGF0dXMuYzoxNDY4CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJldmVydCAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSByZXZlcnQgb3BlcmF0aW9uKSIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxNDA2CisjOiB3dC1zdGF0dXMuYzoxNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGJpc2VjdGluZywgc3RhcnRlZCBmcm9tIGJyYW5jaCAnJXMnLiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxNDEwCisjOiB3dC1zdGF0dXMuYzoxNDgyCiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgYmlzZWN0aW5nLiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxNDEzCisjOiB3dC1zdGF0dXMuYzoxNDg1CiBtc2dpZCAiICAodXNlIFwiZ2l0IGJpc2VjdCByZXNldFwiIHRvIGdldCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBicmFuY2gpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MTEKKyM6IHd0LXN0YXR1cy5jOjE2OTQKIG1zZ2lkICJPbiBicmFuY2ggIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MTgKKyM6IHd0LXN0YXR1cy5jOjE3MDEKIG1zZ2lkICJpbnRlcmFjdGl2ZSByZWJhc2UgaW4gcHJvZ3Jlc3M7IG9udG8gIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MjAKKyM6IHd0LXN0YXR1cy5jOjE3MDMKIG1zZ2lkICJyZWJhc2UgaW4gcHJvZ3Jlc3M7IG9udG8gIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MjUKLW1zZ2lkICJIRUFEIGRldGFjaGVkIGF0ICIKLW1zZ3N0ciAiIgotCi0jOiB3dC1zdGF0dXMuYzoxNjI3Ci1tc2dpZCAiSEVBRCBkZXRhY2hlZCBmcm9tICIKLW1zZ3N0ciAiIgotCi0jOiB3dC1zdGF0dXMuYzoxNjMwCisjOiB3dC1zdGF0dXMuYzoxNzEzCiBtc2dpZCAiTm90IGN1cnJlbnRseSBvbiBhbnkgYnJhbmNoLiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxNjQ3CisjOiB3dC1zdGF0dXMuYzoxNzMwCiBtc2dpZCAiSW5pdGlhbCBjb21taXQiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTY0OAorIzogd3Qtc3RhdHVzLmM6MTczMQogbXNnaWQgIk5vIGNvbW1pdHMgeWV0IgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjIKKyM6IHd0LXN0YXR1cy5jOjE3NDUKIG1zZ2lkICJVbnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTY2NAorIzogd3Qtc3RhdHVzLmM6MTc0NwogbXNnaWQgIklnbm9yZWQgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTY2OAorIzogd3Qtc3RhdHVzLmM6MTc1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gZW51bWVyYXRlIHVudHJhY2tlZCBmaWxlcy4gJ3N0YXR1cyAtdW5vJ1xuIgpAQCAtNjU1NCwyMTYgKzg1NjAsMjI1IEBACiAibmV3IGZpbGVzIHlvdXJzZWxmIChzZWUgJ2dpdCBoZWxwIHN0YXR1cycpLiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxNjc0CisjOiB3dC1zdGF0dXMuYzoxNzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVudHJhY2tlZCBmaWxlcyBub3QgbGlzdGVkJXMiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTY3NgorIzogd3Qtc3RhdHVzLmM6MTc1OQogbXNnaWQgIiAodXNlIC11IG9wdGlvbiB0byBzaG93IHVudHJhY2tlZCBmaWxlcykiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTY4MgorIzogd3Qtc3RhdHVzLmM6MTc2NQogbXNnaWQgIk5vIGNoYW5nZXMiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTY4NworIzogd3Qtc3RhdHVzLmM6MTc3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdCAodXNlIFwiZ2l0IGFkZFwiIGFuZC9vciBcImdpdCBjb21taXQgLWFcIilcbiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxNjkwCisjOiB3dC1zdGF0dXMuYzoxNzczCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGNoYW5nZXMgYWRkZWQgdG8gY29tbWl0XG4iCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTY5MworIzogd3Qtc3RhdHVzLmM6MTc3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibm90aGluZyBhZGRlZCB0byBjb21taXQgYnV0IHVudHJhY2tlZCBmaWxlcyBwcmVzZW50ICh1c2UgXCJnaXQgYWRkXCIgdG8gIgogInRyYWNrKVxuIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTYKKyM6IHd0LXN0YXR1cy5jOjE3NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyBhZGRlZCB0byBjb21taXQgYnV0IHVudHJhY2tlZCBmaWxlcyBwcmVzZW50XG4iCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTY5OQorIzogd3Qtc3RhdHVzLmM6MTc4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIGNvbW1pdCAoY3JlYXRlL2NvcHkgZmlsZXMgYW5kIHVzZSBcImdpdCBhZGRcIiB0byB0cmFjaylcbiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxNzAyIHd0LXN0YXR1cy5jOjE3MDcKKyM6IHd0LXN0YXR1cy5jOjE3ODUgd3Qtc3RhdHVzLmM6MTc5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIGNvbW1pdFxuIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjE3MDUKKyM6IHd0LXN0YXR1cy5jOjE3ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXQgKHVzZSAtdSB0byBzaG93IHVudHJhY2tlZCBmaWxlcylcbiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxNzA5CisjOiB3dC1zdGF0dXMuYzoxNzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0LCB3b3JraW5nIHRyZWUgY2xlYW5cbiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoxODIyCisjOiB3dC1zdGF0dXMuYzoxOTA1CiBtc2dpZCAiTm8gY29tbWl0cyB5ZXQgb24gIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjE4MjYKKyM6IHd0LXN0YXR1cy5jOjE5MDkKIG1zZ2lkICJIRUFEIChubyBicmFuY2gpIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjE4NTcKKyM6IHd0LXN0YXR1cy5jOjE5NDAKIG1zZ2lkICJkaWZmZXJlbnQiCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MTg1OSB3dC1zdGF0dXMuYzoxODY3CisjOiB3dC1zdGF0dXMuYzoxOTQyIHd0LXN0YXR1cy5jOjE5NTAKIG1zZ2lkICJiZWhpbmQgIgogbXNnc3RyICIiCiAKLSM6IHd0LXN0YXR1cy5jOjE4NjIgd3Qtc3RhdHVzLmM6MTg2NQorIzogd3Qtc3RhdHVzLmM6MTk0NSB3dC1zdGF0dXMuYzoxOTQ4CiBtc2dpZCAiYWhlYWQgIgogbXNnc3RyICIiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGUgYWN0aW9uIGlzIGUuZy4gInB1bGwgd2l0aCByZWJhc2UiCi0jOiB3dC1zdGF0dXMuYzoyMzc0CisjOiB3dC1zdGF0dXMuYzoyNDcwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKIAotIzogd3Qtc3RhdHVzLmM6MjM4MAorIzogd3Qtc3RhdHVzLmM6MjQ3NgogbXNnaWQgImFkZGl0aW9uYWxseSwgeW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogCi0jOiB3dC1zdGF0dXMuYzoyMzgyCisjOiB3dC1zdGF0dXMuYzoyNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAlczogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FkZC5jOjI0CisjOiBjb21wYXQvcHJlY29tcG9zZV91dGY4LmM6NTggYnVpbHRpbi9jbG9uZS5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzoyNgogbXNnaWQgImdpdCBhZGQgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6ODMKKyM6IGJ1aWx0aW4vYWRkLmM6ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBkaWZmIHN0YXR1cyAlYyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FkZC5jOjg4IGJ1aWx0aW4vY29tbWl0LmM6Mjg0CisjOiBidWlsdGluL2FkZC5jOjkzIGJ1aWx0aW4vY29tbWl0LmM6Mjg4CiBtc2dpZCAidXBkYXRpbmcgZmlsZXMgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6OTgKKyM6IGJ1aWx0aW4vYWRkLmM6MTAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW92ZSAnJXMnXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzoxNzMKKyM6IGJ1aWx0aW4vYWRkLmM6MTc4CiBtc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZWZyZXNoaW5nIHRoZSBpbmRleDoiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzoyMzMgYnVpbHRpbi9yZXYtcGFyc2UuYzo4OTUKKyM6IGJ1aWx0aW4vYWRkLmM6MjY2IGJ1aWx0aW4vcmV2LXBhcnNlLmM6ODk5CiBtc2dpZCAiQ291bGQgbm90IHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQ0CisjOiBidWlsdGluL2FkZC5jOjI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FkZC5jOjI0OAorIzogYnVpbHRpbi9hZGQuYzoyODEKIG1zZ2lkICJDb3VsZCBub3Qgd3JpdGUgcGF0Y2giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzoyNTEKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg0CiBtc2dpZCAiZWRpdGluZyBwYXRjaCBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzoyNTQKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzdGF0ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzoyNTYKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg5CiBtc2dpZCAiRW1wdHkgcGF0Y2guIEFib3J0ZWQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjYxCisjOiBidWlsdGluL2FkZC5jOjI5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgYXBwbHkgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FkZC5jOjI2OQorIzogYnVpbHRpbi9hZGQuYzozMDIKIG1zZ2lkICJUaGUgZm9sbG93aW5nIHBhdGhzIGFyZSBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzoyODkgYnVpbHRpbi9jbGVhbi5jOjkwNyBidWlsdGluL2ZldGNoLmM6MTM3IGJ1aWx0aW4vbXYuYzoxMjMKLSM6IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTYgYnVpbHRpbi9wdWxsLmM6MjEzIGJ1aWx0aW4vcHVzaC5jOjU1NwotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzQ1IGJ1aWx0aW4vcm0uYzoyNDAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjUKKyM6IGJ1aWx0aW4vYWRkLmM6MzIyIGJ1aWx0aW4vY2xlYW4uYzo5MTAgYnVpbHRpbi9mZXRjaC5jOjE2MyBidWlsdGluL212LmM6MTI0CisjOiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU2IGJ1aWx0aW4vcHVsbC5jOjIwMyBidWlsdGluL3B1c2guYzo1NDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQyMSBidWlsdGluL3JtLmM6MjQyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY1CiBtc2dpZCAiZHJ5IHJ1biIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FkZC5jOjI5MgorIzogYnVpbHRpbi9hZGQuYzozMjUKIG1zZ2lkICJpbnRlcmFjdGl2ZSBwaWNraW5nIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjkzIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU4IGJ1aWx0aW4vcmVzZXQuYzozMDUKKyM6IGJ1aWx0aW4vYWRkLmM6MzI2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTExIGJ1aWx0aW4vcmVzZXQuYzozMDcKIG1zZ2lkICJzZWxlY3QgaHVua3MgaW50ZXJhY3RpdmVseSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NAorIzogYnVpbHRpbi9hZGQuYzozMjcKIG1zZ2lkICJlZGl0IGN1cnJlbnQgZGlmZiBhbmQgYXBwbHkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTUKKyM6IGJ1aWx0aW4vYWRkLmM6MzI4CiBtc2dpZCAiYWxsb3cgYWRkaW5nIG90aGVyd2lzZSBpZ25vcmVkIGZpbGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk2CisjOiBidWlsdGluL2FkZC5jOjMyOQogbXNnaWQgInVwZGF0ZSB0cmFja2VkIGZpbGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk3CisjOiBidWlsdGluL2FkZC5jOjMzMAogbXNnaWQgInJlbm9ybWFsaXplIEVPTCBvZiB0cmFja2VkIGZpbGVzIChpbXBsaWVzIC11KSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FkZC5jOjI5OAorIzogYnVpbHRpbi9hZGQuYzozMzEKIG1zZ2lkICJyZWNvcmQgb25seSB0aGUgZmFjdCB0aGF0IHRoZSBwYXRoIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTkKKyM6IGJ1aWx0aW4vYWRkLmM6MzMyCiBtc2dpZCAiYWRkIGNoYW5nZXMgZnJvbSBhbGwgdHJhY2tlZCBhbmQgdW50cmFja2VkIGZpbGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzAyCisjOiBidWlsdGluL2FkZC5jOjMzNQogbXNnaWQgImlnbm9yZSBwYXRocyByZW1vdmVkIGluIHRoZSB3b3JraW5nIHRyZWUgKHNhbWUgYXMgLS1uby1hbGwpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzA0CisjOiBidWlsdGluL2FkZC5jOjMzNwogbXNnaWQgImRvbid0IGFkZCwgb25seSByZWZyZXNoIHRoZSBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FkZC5jOjMwNQorIzogYnVpbHRpbi9hZGQuYzozMzgKIG1zZ2lkICJqdXN0IHNraXAgZmlsZXMgd2hpY2ggY2Fubm90IGJlIGFkZGVkIGJlY2F1c2Ugb2YgZXJyb3JzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzA2CisjOiBidWlsdGluL2FkZC5jOjMzOQogbXNnaWQgImNoZWNrIGlmIC0gZXZlbiBtaXNzaW5nIC0gZmlsZXMgYXJlIGlnbm9yZWQgaW4gZHJ5IHJ1biIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FkZC5jOjMwOCBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5MAorIzogYnVpbHRpbi9hZGQuYzozNDEgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA0CiBtc2dpZCAib3ZlcnJpZGUgdGhlIGV4ZWN1dGFibGUgYml0IG9mIHRoZSBsaXN0ZWQgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzozMTAKKyM6IGJ1aWx0aW4vYWRkLmM6MzQzCiBtc2dpZCAid2FybiB3aGVuIGFkZGluZyBhbiBlbWJlZGRlZCByZXBvc2l0b3J5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzI1CisjOiBidWlsdGluL2FkZC5jOjM0NQorbXNnaWQgImJhY2tlbmQgZm9yIGBnaXQgc3Rhc2ggLXBgIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UndmUgYWRkZWQgYW5vdGhlciBnaXQgcmVwb3NpdG9yeSBpbnNpZGUgeW91ciBjdXJyZW50IHJlcG9zaXRvcnkuXG4iCkBAIC02NzgxLDE3MyArODc5NiwxODcgQEAKICJTZWUgXCJnaXQgaGVscCBzdWJtb2R1bGVcIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzozNTMKKyM6IGJ1aWx0aW4vYWRkLmM6MzkxCiAjLCBjLWZvcm1hdAogbXNnaWQgImFkZGluZyBlbWJlZGRlZCBnaXQgcmVwb3NpdG9yeTogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzozNzEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgdGhlbS5cbiIKKyM6IGJ1aWx0aW4vYWRkLmM6NDEwCittc2dpZCAiIgorIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIHRoZW0uXG4iCisiVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5IHJ1bm5pbmdcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZElnbm9yZWRGaWxlIGZhbHNlXCIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzozNzkKKyM6IGJ1aWx0aW4vYWRkLmM6NDE5CiBtc2dpZCAiYWRkaW5nIGZpbGVzIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FkZC5jOjQxNworIzogYnVpbHRpbi9hZGQuYzo0NDcgYnVpbHRpbi9jb21taXQuYzozNDgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWludGVyYWN0aXZlLy0tcGF0Y2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzo0NjQKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWVkaXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzo0NzYKIG1zZ2lkICItQSBhbmQgLXUgYXJlIG11dHVhbGx5IGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FkZC5jOjQyNAorIzogYnVpbHRpbi9hZGQuYzo0NzkKIG1zZ2lkICJPcHRpb24gLS1pZ25vcmUtbWlzc2luZyBjYW4gb25seSBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggLS1kcnktcnVuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDI4CisjOiBidWlsdGluL2FkZC5jOjQ4MwogIywgYy1mb3JtYXQKIG1zZ2lkICItLWNobW9kIHBhcmFtICclcycgbXVzdCBiZSBlaXRoZXIgLXggb3IgK3giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzo0NDMKKyM6IGJ1aWx0aW4vYWRkLmM6NTAxIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjc1IGJ1aWx0aW4vY29tbWl0LmM6MzU0CisjOiBidWlsdGluL3Jlc2V0LmM6MzI3IGJ1aWx0aW4vcm0uYzoyNzIgYnVpbHRpbi9zdGFzaC5jOjE1MDkKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCBwYXRoc3BlYyBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzo1MDggYnVpbHRpbi9jaGVja291dC5jOjE2ODcgYnVpbHRpbi9jb21taXQuYzozNjAKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMzMgYnVpbHRpbi9ybS5jOjI3OCBidWlsdGluL3N0YXNoLmM6MTUxNQorbXNnaWQgIi0tcGF0aHNwZWMtZmlsZS1udWwgcmVxdWlyZXMgLS1wYXRoc3BlYy1mcm9tLWZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hZGQuYzo1MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90aGluZyBzcGVjaWZpZWQsIG5vdGhpbmcgYWRkZWQuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hZGQuYzo0NDQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiTWF5YmUgeW91IHdhbnRlZCB0byBzYXkgJ2dpdCBhZGQgLic/XG4iCisjOiBidWlsdGluL2FkZC5jOjUxNAorbXNnaWQgIiIKKyJNYXliZSB5b3Ugd2FudGVkIHRvIHNheSAnZ2l0IGFkZCAuJz9cbiIKKyJUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnkgcnVubmluZ1xuIgorIlwiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkRW1wdHlQYXRoc3BlYyBmYWxzZVwiIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzozNjMKKyM6IGJ1aWx0aW4vYW0uYzozNTIKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgYXV0aG9yIHNjcmlwdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6NDQ3CisjOiBidWlsdGluL2FtLmM6NDM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgd2FzIGRlbGV0ZWQgYnkgdGhlIGFwcGx5cGF0Y2gtbXNnIGhvb2siCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjQ4OAorIzogYnVpbHRpbi9hbS5jOjQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJNYWxmb3JtZWQgaW5wdXQgbGluZTogJyVzJy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjUyNQorIzogYnVpbHRpbi9hbS5jOjUxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY29weSBub3RlcyBmcm9tICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6NTUxCisjOiBidWlsdGluL2FtLmM6NTQyCiBtc2dpZCAiZnNlZWsgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzo3MzkKKyM6IGJ1aWx0aW4vYW0uYzo3MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHBhdGNoICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjgwNAorIzogYnVpbHRpbi9hbS5jOjc5NQogbXNnaWQgIk9ubHkgb25lIFN0R0lUIHBhdGNoIHNlcmllcyBjYW4gYmUgYXBwbGllZCBhdCBvbmNlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzo4NTIKKyM6IGJ1aWx0aW4vYW0uYzo4NDMKIG1zZ2lkICJpbnZhbGlkIHRpbWVzdGFtcCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6ODU3IGJ1aWx0aW4vYW0uYzo4NjkKKyM6IGJ1aWx0aW4vYW0uYzo4NDggYnVpbHRpbi9hbS5jOjg2MAogbXNnaWQgImludmFsaWQgRGF0ZSBsaW5lIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzo4NjQKKyM6IGJ1aWx0aW4vYW0uYzo4NTUKIG1zZ2lkICJpbnZhbGlkIHRpbWV6b25lIG9mZnNldCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6OTU3CisjOiBidWlsdGluL2FtLmM6OTQ4CiBtc2dpZCAiUGF0Y2ggZm9ybWF0IGRldGVjdGlvbiBmYWlsZWQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzo5NjIgYnVpbHRpbi9jbG9uZS5jOjQwOAorIzogYnVpbHRpbi9hbS5jOjk1MyBidWlsdGluL2Nsb25lLmM6NDA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjk2NworIzogYnVpbHRpbi9hbS5jOjk1OAogbXNnaWQgIkZhaWxlZCB0byBzcGxpdCBwYXRjaGVzLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MTA5NyBidWlsdGluL2NvbW1pdC5jOjM2OQotbXNnaWQgInVuYWJsZSB0byB3cml0ZSBpbmRleCBmaWxlIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYW0uYzoxMTExCisjOiBidWlsdGluL2FtLmM6MTA4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJXaGVuIHlvdSBoYXZlIHJlc29sdmVkIHRoaXMgcHJvYmxlbSwgcnVuIFwiJXMgLS1jb250aW51ZVwiLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MTExMgorIzogYnVpbHRpbi9hbS5jOjEwOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiSWYgeW91IHByZWZlciB0byBza2lwIHRoaXMgcGF0Y2gsIHJ1biBcIiVzIC0tc2tpcFwiIGluc3RlYWQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMTEzCisjOiBidWlsdGluL2FtLmM6MTA5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJUbyByZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIHN0b3AgcGF0Y2hpbmcsIHJ1biBcIiVzIC0tYWJvcnRcIi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjExOTYKKyM6IGJ1aWx0aW4vYW0uYzoxMTc0CiBtc2dpZCAiUGF0Y2ggc2VudCB3aXRoIGZvcm1hdD1mbG93ZWQ7IHNwYWNlIGF0IHRoZSBlbmQgb2YgbGluZXMgbWlnaHQgYmUgbG9zdC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjEyMjQKKyM6IGJ1aWx0aW4vYW0uYzoxMjAyCiBtc2dpZCAiUGF0Y2ggaXMgZW1wdHkuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMjkwCisjOiBidWlsdGluL2FtLmM6MTI2NworIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGF1dGhvciBsaW5lIGluIGNvbW1pdCAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MTI3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGlkZW50IGxpbmU6ICUuKnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjEzMTIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbW1pdCAlcyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2FtLmM6MTUwOAorIzogYnVpbHRpbi9hbS5jOjE0ODkKIG1zZ2lkICJSZXBvc2l0b3J5IGxhY2tzIG5lY2Vzc2FyeSBibG9icyB0byBmYWxsIGJhY2sgb24gMy13YXkgbWVyZ2UuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTEwCisjOiBidWlsdGluL2FtLmM6MTQ5MQogbXNnaWQgIlVzaW5nIGluZGV4IGluZm8gdG8gcmVjb25zdHJ1Y3QgYSBiYXNlIHRyZWUuLi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjE1MjkKKyM6IGJ1aWx0aW4vYW0uYzoxNTEwCiBtc2dpZCAiIgogIkRpZCB5b3UgaGFuZCBlZGl0IHlvdXIgcGF0Y2g/XG4iCiAiSXQgZG9lcyBub3QgYXBwbHkgdG8gYmxvYnMgcmVjb3JkZWQgaW4gaXRzIGluZGV4LiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MTUzNQorIzogYnVpbHRpbi9hbS5jOjE1MTYKIG1zZ2lkICJGYWxsaW5nIGJhY2sgdG8gcGF0Y2hpbmcgYmFzZSBhbmQgMy13YXkgbWVyZ2UuLi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjE1NjEKKyM6IGJ1aWx0aW4vYW0uYzoxNTQyCiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIGluIHRoZSBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MTU5MworIzogYnVpbHRpbi9hbS5jOjE1NzQKIG1zZ2lkICJhcHBseWluZyB0byBhbiBlbXB0eSBoaXN0b3J5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNjM5IGJ1aWx0aW4vYW0uYzoxNjQzCisjOiBidWlsdGluL2FtLmM6MTYyMSBidWlsdGluL2FtLmM6MTYyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVzdW1lOiAlcyBkb2VzIG5vdCBleGlzdC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjE2NTkKLW1zZ2lkICJjYW5ub3QgYmUgaW50ZXJhY3RpdmUgd2l0aG91dCBzdGRpbiBjb25uZWN0ZWQgdG8gYSB0ZXJtaW5hbC4iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9hbS5jOjE2NjQKKyM6IGJ1aWx0aW4vYW0uYzoxNjQzCiBtc2dpZCAiQ29tbWl0IEJvZHkgaXM6IgogbXNnc3RyICIiCiAKQEAgLTY5NTUsNDEgKzg5ODQsNDYgQEAKICMuIGluIHlvdXIgdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaAogIy4gaW5wdXQgYXQgdGhpcyBwb2ludC4KICMuCi0jOiBidWlsdGluL2FtLmM6MTY3NAorIzogYnVpbHRpbi9hbS5jOjE2NTMKKyMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbHk/IFt5XWVzL1tuXW8vW2VdZGl0L1t2XWlldyBwYXRjaC9bYV1jY2VwdCBhbGw6ICIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MTcyNAorIzogYnVpbHRpbi9hbS5jOjE3MDAgYnVpbHRpbi9jb21taXQuYzozOTgKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgaW5kZXggZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MTcwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJEaXJ0eSBpbmRleDogY2Fubm90IGFwcGx5IHBhdGNoZXMgKGRpcnR5OiAlcykiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjE3NjQgYnVpbHRpbi9hbS5jOjE4MzIKKyM6IGJ1aWx0aW4vYW0uYzoxNzQ0IGJ1aWx0aW4vYW0uYzoxODEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGx5aW5nOiAlLipzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzgxCisjOiBidWlsdGluL2FtLmM6MTc2MQogbXNnaWQgIk5vIGNoYW5nZXMgLS0gUGF0Y2ggYWxyZWFkeSBhcHBsaWVkLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MTc4NworIzogYnVpbHRpbi9hbS5jOjE3NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiUGF0Y2ggZmFpbGVkIGF0ICVzICUuKnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjE3OTEKLW1zZ2lkICJVc2UgJ2dpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaCcgdG8gc2VlIHRoZSBmYWlsZWQgcGF0Y2giCisjOiBidWlsdGluL2FtLmM6MTc3MQorbXNnaWQgIlVzZSAnZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoPWRpZmYnIHRvIHNlZSB0aGUgZmFpbGVkIHBhdGNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxODM1CisjOiBidWlsdGluL2FtLmM6MTgxNQogbXNnaWQgIiIKICJObyBjaGFuZ2VzIC0gZGlkIHlvdSBmb3JnZXQgdG8gdXNlICdnaXQgYWRkJz9cbiIKICJJZiB0aGVyZSBpcyBub3RoaW5nIGxlZnQgdG8gc3RhZ2UsIGNoYW5jZXMgYXJlIHRoYXQgc29tZXRoaW5nIGVsc2VcbiIKICJhbHJlYWR5IGludHJvZHVjZWQgdGhlIHNhbWUgY2hhbmdlczsgeW91IG1pZ2h0IHdhbnQgdG8gc2tpcCB0aGlzIHBhdGNoLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MTg0MgorIzogYnVpbHRpbi9hbS5jOjE4MjIKIG1zZ2lkICIiCiAiWW91IHN0aWxsIGhhdmUgdW5tZXJnZWQgcGF0aHMgaW4geW91ciBpbmRleC5cbiIKICJZb3Ugc2hvdWxkICdnaXQgYWRkJyBlYWNoIGZpbGUgd2l0aCByZXNvbHZlZCBjb25mbGljdHMgdG8gbWFyayB0aGVtIGFzICIKQEAgLTY5OTcsMTg0ICs5MDMxLDE5OCBAQAogIllvdSBtaWdodCBydW4gYGdpdCBybWAgb24gYSBmaWxlIHRvIGFjY2VwdCBcImRlbGV0ZWQgYnkgdGhlbVwiIGZvciBpdC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjE5NDkgYnVpbHRpbi9hbS5jOjE5NTMgYnVpbHRpbi9hbS5jOjE5NjUgYnVpbHRpbi9yZXNldC5jOjMyOAotIzogYnVpbHRpbi9yZXNldC5jOjMzNgorIzogYnVpbHRpbi9hbS5jOjE5MjkgYnVpbHRpbi9hbS5jOjE5MzMgYnVpbHRpbi9hbS5jOjE5NDUgYnVpbHRpbi9yZXNldC5jOjM0NgorIzogYnVpbHRpbi9yZXNldC5jOjM1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcycuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMDAxCisjOiBidWlsdGluL2FtLmM6MTk4MQogbXNnaWQgImZhaWxlZCB0byBjbGVhbiBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MjAzNgorIzogYnVpbHRpbi9hbS5jOjIwMjUKIG1zZ2lkICIiCiAiWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFEIHNpbmNlIHRoZSBsYXN0ICdhbScgZmFpbHVyZS5cbiIKICJOb3QgcmV3aW5kaW5nIHRvIE9SSUdfSEVBRCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MjEyOQorIzogYnVpbHRpbi9hbS5jOjIxMzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgLS1wYXRjaC1mb3JtYXQ6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTY1Ci1tc2dpZCAiZ2l0IGFtIFs8b3B0aW9ucz5dIFsoPG1ib3g+IHwgPE1haWxkaXI+KS4uLl0iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9hbS5jOjIxNjYKLW1zZ2lkICJnaXQgYW0gWzxvcHRpb25zPl0gKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0KSIKLW1zZ3N0ciAiIgotCiAjOiBidWlsdGluL2FtLmM6MjE3MgotbXNnaWQgInJ1biBpbnRlcmFjdGl2ZWx5IgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYW0uYzoyMTc0Ci1tc2dpZCAiaGlzdG9yaWNhbCBvcHRpb24gLS0gbm8tb3AiCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yIC0tc2hvdy1jdXJyZW50LXBhdGNoOiAlcyIKIG1zZ3N0ciAiIgogCiAjOiBidWlsdGluL2FtLmM6MjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLXNob3ctY3VycmVudC1wYXRjaD0lcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLXNob3ctY3VycmVudC1wYXRjaD0lcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MjIwNworbXNnaWQgImdpdCBhbSBbPG9wdGlvbnM+XSBbKDxtYm94PiB8IDxNYWlsZGlyPikuLi5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjA4Cittc2dpZCAiZ2l0IGFtIFs8b3B0aW9ucz5dICgtLWNvbnRpbnVlIHwgLS1za2lwIHwgLS1hYm9ydCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjIyMTQKK21zZ2lkICJydW4gaW50ZXJhY3RpdmVseSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2FtLmM6MjIxNgorbXNnaWQgImhpc3RvcmljYWwgb3B0aW9uIC0tIG5vLW9wIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjE4CiBtc2dpZCAiYWxsb3cgZmFsbCBiYWNrIG9uIDN3YXkgbWVyZ2luZyBpZiBuZWVkZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzcgYnVpbHRpbi9pbml0LWRiLmM6NDg2IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTgKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA2CisjOiBidWlsdGluL2FtLmM6MjIxOSBidWlsdGluL2luaXQtZGIuYzo0OTQgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1OAorIzogYnVpbHRpbi9yZXBhY2suYzozMDQgYnVpbHRpbi9zdGFzaC5jOjgxMgogbXNnaWQgImJlIHF1aWV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc5CisjOiBidWlsdGluL2FtLmM6MjIyMQogbXNnaWQgImFkZCBhIFNpZ25lZC1vZmYtYnkgbGluZSB0byB0aGUgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIxODIKKyM6IGJ1aWx0aW4vYW0uYzoyMjI0CiBtc2dpZCAicmVjb2RlIGludG8gdXRmOCAoZGVmYXVsdCkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIxODQKKyM6IGJ1aWx0aW4vYW0uYzoyMjI2CiBtc2dpZCAicGFzcyAtayBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MjE4NgorIzogYnVpbHRpbi9hbS5jOjIyMjgKIG1zZ2lkICJwYXNzIC1iIGZsYWcgdG8gZ2l0LW1haWxpbmZvIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTg4CisjOiBidWlsdGluL2FtLmM6MjIzMAogbXNnaWQgInBhc3MgLW0gZmxhZyB0byBnaXQtbWFpbGluZm8iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIxOTAKKyM6IGJ1aWx0aW4vYW0uYzoyMjMyCiBtc2dpZCAicGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGZvciBtYm94IGZvcm1hdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MjE5MworIzogYnVpbHRpbi9hbS5jOjIyMzUKIG1zZ2lkICJkbyBub3QgcGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGluZGVwZW5kZW50IG9mIGFtLmtlZXBjciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MjE5NgorIzogYnVpbHRpbi9hbS5jOjIyMzgKIG1zZ2lkICJzdHJpcCBldmVyeXRoaW5nIGJlZm9yZSBhIHNjaXNzb3JzIGxpbmUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIxOTggYnVpbHRpbi9hbS5jOjIyMDEgYnVpbHRpbi9hbS5jOjIyMDQgYnVpbHRpbi9hbS5jOjIyMDcKLSM6IGJ1aWx0aW4vYW0uYzoyMjEwIGJ1aWx0aW4vYW0uYzoyMjEzIGJ1aWx0aW4vYW0uYzoyMjE2IGJ1aWx0aW4vYW0uYzoyMjE5Ci0jOiBidWlsdGluL2FtLmM6MjIyNQorIzogYnVpbHRpbi9hbS5jOjIyNDAgYnVpbHRpbi9hbS5jOjIyNDMgYnVpbHRpbi9hbS5jOjIyNDYgYnVpbHRpbi9hbS5jOjIyNDkKKyM6IGJ1aWx0aW4vYW0uYzoyMjUyIGJ1aWx0aW4vYW0uYzoyMjU1IGJ1aWx0aW4vYW0uYzoyMjU4IGJ1aWx0aW4vYW0uYzoyMjYxCisjOiBidWlsdGluL2FtLmM6MjI2NwogbXNnaWQgInBhc3MgaXQgdGhyb3VnaCBnaXQtYXBwbHkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIyMTUgYnVpbHRpbi9jb21taXQuYzoxMzQwIGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MQotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc0IGJ1aWx0aW4vZ3JlcC5jOjg2OCBidWlsdGluL21lcmdlLmM6MjM5Ci0jOiBidWlsdGluL3B1bGwuYzoxNTEgYnVpbHRpbi9wdWxsLmM6MjA5IGJ1aWx0aW4vcmViYXNlLmM6ODU0Ci0jOiBidWlsdGluL3JlcGFjay5jOjMxNyBidWlsdGluL3JlcGFjay5jOjMyMSBidWlsdGluL3JlcGFjay5jOjMyMwotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MSBidWlsdGluL3Nob3ctcmVmLmM6MTcxIGJ1aWx0aW4vdGFnLmM6Mzg2Ci0jOiBwYXJzZS1vcHRpb25zLmg6MTQ0IHBhcnNlLW9wdGlvbnMuaDoxNDYgcGFyc2Utb3B0aW9ucy5oOjI2OAorIzogYnVpbHRpbi9hbS5jOjIyNTcgYnVpbHRpbi9jb21taXQuYzoxMzkxIGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MAorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjczIGJ1aWx0aW4vZ3JlcC5jOjg3MSBidWlsdGluL21lcmdlLmM6MjUwCisjOiBidWlsdGluL3B1bGwuYzoxNDAgYnVpbHRpbi9wdWxsLmM6MTk5IGJ1aWx0aW4vcmViYXNlLmM6MTUwNQorIzogYnVpbHRpbi9yZXBhY2suYzozMTUgYnVpbHRpbi9yZXBhY2suYzozMTkgYnVpbHRpbi9yZXBhY2suYzozMjEKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTAgYnVpbHRpbi9zaG93LXJlZi5jOjE3MiBidWlsdGluL3RhZy5jOjQwMworIzogcGFyc2Utb3B0aW9ucy5oOjE1NCBwYXJzZS1vcHRpb25zLmg6MTc1IHBhcnNlLW9wdGlvbnMuaDozMTYKIG1zZ2lkICJuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjIxIGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0NCBidWlsdGluL3RhZy5jOjQyMiBidWlsdGluL3ZlcmlmeS10YWcuYzozOQorIzogYnVpbHRpbi9hbS5jOjIyNjMgYnVpbHRpbi9icmFuY2guYzo2NjEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU2IGJ1aWx0aW4vdGFnLmM6NDM3IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM4CiBtc2dpZCAiZm9ybWF0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjIyCisjOiBidWlsdGluL2FtLmM6MjI2NAogbXNnaWQgImZvcm1hdCB0aGUgcGF0Y2goZXMpIGFyZSBpbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MjIyOAorIzogYnVpbHRpbi9hbS5jOjIyNzAKIG1zZ2lkICJvdmVycmlkZSBlcnJvciBtZXNzYWdlIHdoZW4gcGF0Y2ggZmFpbHVyZSBvY2N1cnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzAKKyM6IGJ1aWx0aW4vYW0uYzoyMjcyCiBtc2dpZCAiY29udGludWUgYXBwbHlpbmcgcGF0Y2hlcyBhZnRlciByZXNvbHZpbmcgYSBjb25mbGljdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MjIzMworIzogYnVpbHRpbi9hbS5jOjIyNzUKIG1zZ2lkICJzeW5vbnltcyBmb3IgLS1jb250aW51ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MjIzNgorIzogYnVpbHRpbi9hbS5jOjIyNzgKIG1zZ2lkICJza2lwIHRoZSBjdXJyZW50IHBhdGNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjM5CisjOiBidWlsdGluL2FtLmM6MjI4MQogbXNnaWQgInJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgYWJvcnQgdGhlIHBhdGNoaW5nIG9wZXJhdGlvbi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIyNDIKKyM6IGJ1aWx0aW4vYW0uYzoyMjg0CiBtc2dpZCAiYWJvcnQgdGhlIHBhdGNoaW5nIG9wZXJhdGlvbiBidXQga2VlcCBIRUFEIHdoZXJlIGl0IGlzLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MjI0NQotbXNnaWQgInNob3cgdGhlIHBhdGNoIGJlaW5nIGFwcGxpZWQuIgorIzogYnVpbHRpbi9hbS5jOjIyODgKK21zZ2lkICJzaG93IHRoZSBwYXRjaCBiZWluZyBhcHBsaWVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjQ5CisjOiBidWlsdGluL2FtLmM6MjI5MwogbXNnaWQgImxpZSBhYm91dCBjb21taXR0ZXIgZGF0ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MjI1MQorIzogYnVpbHRpbi9hbS5jOjIyOTUKIG1zZ2lkICJ1c2UgY3VycmVudCB0aW1lc3RhbXAgZm9yIGF1dGhvciBkYXRlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjUzIGJ1aWx0aW4vY29tbWl0LmM6MTQ4MyBidWlsdGluL21lcmdlLmM6MjczCi0jOiBidWlsdGluL3B1bGwuYzoxODQgYnVpbHRpbi9yZWJhc2UuYzo4OTggYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgzCi0jOiBidWlsdGluL3JldmVydC5jOjExMyBidWlsdGluL3RhZy5jOjQwMgorIzogYnVpbHRpbi9hbS5jOjIyOTcgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMCBidWlsdGluL2NvbW1pdC5jOjE1MTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODcgYnVpbHRpbi9wdWxsLmM6MTc0IGJ1aWx0aW4vcmViYXNlLmM6NTE3CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NTYgYnVpbHRpbi9yZXZlcnQuYzoxMTcgYnVpbHRpbi90YWcuYzo0MTgKIG1zZ2lkICJrZXktaWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9yZWJhc2UuYzo4OTkgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg0CisjOiBidWlsdGluL2FtLmM6MjI5OCBidWlsdGluL3JlYmFzZS5jOjUxOCBidWlsdGluL3JlYmFzZS5jOjE1NTcKIG1zZ2lkICJHUEctc2lnbiBjb21taXRzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjU3CisjOiBidWlsdGluL2FtLmM6MjMwMQogbXNnaWQgIihpbnRlcm5hbCB1c2UgZm9yIGdpdC1yZWJhc2UpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjc1CisjOiBidWlsdGluL2FtLmM6MjMxOQogbXNnaWQgIiIKICJUaGUgLWIvLS1iaW5hcnkgb3B0aW9uIGhhcyBiZWVuIGEgbm8tb3AgZm9yIGxvbmcgdGltZSwgYW5kXG4iCiAiaXQgd2lsbCBiZSByZW1vdmVkLiBQbGVhc2UgZG8gbm90IHVzZSBpdCBhbnltb3JlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MjI4MgorIzogYnVpbHRpbi9hbS5jOjIzMjYKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCB0aGUgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIyOTcKKyM6IGJ1aWx0aW4vYW0uYzoyMzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInByZXZpb3VzIHJlYmFzZSBkaXJlY3RvcnkgJXMgc3RpbGwgZXhpc3RzIGJ1dCBtYm94IGdpdmVuLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MjMyMQorIzogYnVpbHRpbi9hbS5jOjIzNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN0cmF5ICVzIGRpcmVjdG9yeSBmb3VuZC5cbiIKICJVc2UgXCJnaXQgYW0gLS1hYm9ydFwiIHRvIHJlbW92ZSBpdC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIzMjcKKyM6IGJ1aWx0aW4vYW0uYzoyMzcxCiBtc2dpZCAiUmVzb2x2ZSBvcGVyYXRpb24gbm90IGluIHByb2dyZXNzLCB3ZSBhcmUgbm90IHJlc3VtaW5nLiIKIG1zZ3N0ciAiIgogCisjOiBidWlsdGluL2FtLmM6MjM4MQorbXNnaWQgImludGVyYWN0aXZlIG1vZGUgcmVxdWlyZXMgcGF0Y2hlcyBvbiB0aGUgY29tbWFuZCBsaW5lIgorbXNnc3RyICIiCisKICM6IGJ1aWx0aW4vYXBwbHkuYzo4CiBtc2dpZCAiZ2l0IGFwcGx5IFs8b3B0aW9ucz5dIFs8cGF0Y2g+Li4uXSIKIG1zZ3N0ciAiIgpAQCAtNzE5Miw4NiArOTI0MCwyODAgQEAKIG1zZ2lkICJnaXQgYXJjaGl2ZTogUmVtb3RlIHdpdGggbm8gVVJMIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjU4CisjOiBidWlsdGluL2FyY2hpdmUuYzo2MQogbXNnaWQgImdpdCBhcmNoaXZlOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgYSBmbHVzaCBwYWNrZXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hcmNoaXZlLmM6NjEKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY0CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBhcmNoaXZlOiBOQUNLICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY0CisjOiBidWlsdGluL2FyY2hpdmUuYzo2NQogbXNnaWQgImdpdCBhcmNoaXZlOiBwcm90b2NvbCBlcnJvciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2OAorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjkKIG1zZ2lkICJnaXQgYXJjaGl2ZTogZXhwZWN0ZWQgYSBmbHVzaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTIKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMgogbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLW5leHQtYWxsIFstLW5vLWNoZWNrb3V0XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTMKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMwogbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDxiYWRfdGVybT4gPGdvb2RfdGVybT4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE0CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjQKIG1zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2xlYW4tc3RhdGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ2CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjUKK21zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtcmVzZXQgWzxjb21taXQ+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjYKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPHN0YXRlPiA8cmV2aXNpb24+IDxnb29kX3Rlcm0+ICIKKyI8YmFkX3Rlcm0+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNworbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2hlY2stYW5kLXNldC10ZXJtcyA8Y29tbWFuZD4gPGdvb2RfdGVybT4gIgorIjxiYWRfdGVybT4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI4Cittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LW5leHQtY2hlY2sgPGdvb2RfdGVybT4gPGJhZF90ZXJtPiBbPHRlcm0+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjkKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMAorbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtc3RhcnQgWy0tdGVybS17b2xkLGdvb2R9PTx0ZXJtPiAtLXRlcm0te25ldyxiYWR9IgorIj08dGVybT5dWy0tbm8tY2hlY2tvdXRdIFs8YmFkPiBbPGdvb2Q+Li4uXV0gWy0tXSBbPHBhdGhzPi4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgdGVybSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCB1c2UgdGhlIGJ1aWx0aW4gY29tbWFuZCAnJXMnIGFzIGEgdGVybSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3QgY2hhbmdlIHRoZSBtZWFuaW5nIG9mIHRoZSB0ZXJtICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjcxCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTExCiBtc2dpZCAicGxlYXNlIHVzZSB0d28gZGlmZmVyZW50IHRlcm1zIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3OAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjExOAogbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBmaWxlIEJJU0VDVF9URVJNUyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTIwCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLlxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY291bGQgbm90IGNoZWNrIG91dCBvcmlnaW5hbCBIRUFEICclcycuIFRyeSAnZ2l0IGJpc2VjdCByZXNldCA8Y29tbWl0PicuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmFkIGJpc2VjdF93cml0ZSBhcmd1bWVudDogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBnZXQgdGhlIG9pZCBvZiB0aGUgcmV2ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIHRoZSBmaWxlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGNvbW1hbmQ6IHlvdSdyZSBjdXJyZW50bHkgaW4gYSAlcy8lcyBiaXNlY3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJXMgYW5kICVzIHJldmlzaW9uLlxuIgorIllvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAlc1wiIGFuZCBcImdpdCBiaXNlY3QgJXNcIiBmb3IgdGhhdC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IG5lZWQgdG8gc3RhcnQgYnkgXCJnaXQgYmlzZWN0IHN0YXJ0XCIuXG4iCisiWW91IHRoZW4gbmVlZCB0byBnaXZlIG1lIGF0IGxlYXN0IG9uZSAlcyBhbmQgJXMgcmV2aXNpb24uXG4iCisiWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICVzXCIgYW5kIFwiZ2l0IGJpc2VjdCAlc1wiIGZvciB0aGF0LiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgImJpc2VjdGluZyBvbmx5IHdpdGggYSAlcyBjb21taXQiCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtZXSBhbmQgW25dIGluIHlvdXIKKyMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKKyMuIGF0IHRoaXMgcG9pbnQuCisjLgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMxOAorbXNnaWQgIkFyZSB5b3Ugc3VyZSBbWS9uXT8gIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozNzkKK21zZ2lkICJubyB0ZXJtcyBkZWZpbmVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgY3VycmVudCB0ZXJtcyBhcmUgJXMgZm9yIHRoZSBvbGQgc3RhdGVcbiIKKyJhbmQgJXMgZm9yIHRoZSBuZXcgc3RhdGUuXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBhcmd1bWVudCAlcyBmb3IgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgorIlN1cHBvcnRlZCBvcHRpb25zIGFyZTogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCBhbmQgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDc4CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBvcHRpb246ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IGFwcGVhciB0byBiZSBhIHZhbGlkIHJldmlzaW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MTQKK21zZ2lkICJiYWQgSEVBRCAtIEkgbmVlZCBhIEhFQUQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUyOQorIywgYy1mb3JtYXQKK21zZ2lkICJjaGVja2luZyBvdXQgJyVzJyBmYWlsZWQuIFRyeSAnZ2l0IGJpc2VjdCBzdGFydCA8dmFsaWQtYnJhbmNoPicuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NTAKK21zZ2lkICJ3b24ndCBiaXNlY3Qgb24gY2ctc2VlaydlZCB0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NTMKK21zZ2lkICJiYWQgSEVBRCAtIHN0cmFuZ2Ugc3ltYm9saWMgcmVmIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWY6ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzMwogbXNnaWQgInBlcmZvcm0gJ2dpdCBiaXNlY3QgbmV4dCciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyMgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzNQogbXNnaWQgIndyaXRlIHRoZSB0ZXJtcyB0byAuZ2l0L0JJU0VDVF9URVJNUyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTI0CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjM3CiBtc2dpZCAiY2xlYW51cCB0aGUgYmlzZWN0aW9uIHN0YXRlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjYKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzkKIG1zZ2lkICJjaGVjayBmb3IgZXhwZWN0ZWQgcmV2cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTI4CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQxCittc2dpZCAicmVzZXQgdGhlIGJpc2VjdGlvbiBzdGF0ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQzCittc2dpZCAid3JpdGUgb3V0IHRoZSBiaXNlY3Rpb24gc3RhdGUgaW4gQklTRUNUX0xPRyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ1Cittc2dpZCAiY2hlY2sgYW5kIHNldCB0ZXJtcyBpbiBhIGJpc2VjdGlvbiBzdGF0ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ3Cittc2dpZCAiY2hlY2sgd2hldGhlciBiYWQgb3IgZ29vZCB0ZXJtcyBleGlzdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ5Cittc2dpZCAicHJpbnQgb3V0IHRoZSBiaXNlY3QgdGVybXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY1MQorbXNnaWQgInN0YXJ0IHRoZSBiaXNlY3Qgc2Vzc2lvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUzCiBtc2dpZCAidXBkYXRlIEJJU0VDVF9IRUFEIGluc3RlYWQgb2YgY2hlY2tpbmcgb3V0IHRoZSBjdXJyZW50IGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTQzCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjU1Cittc2dpZCAibm8gbG9nIGZvciBCSVNFQ1RfV1JJVEUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY3MwogbXNnaWQgIi0td3JpdGUtdGVybXMgcmVxdWlyZXMgdHdvIGFyZ3VtZW50cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTQ3CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njc3CiBtc2dpZCAiLS1iaXNlY3QtY2xlYW4tc3RhdGUgcmVxdWlyZXMgbm8gYXJndW1lbnRzIgogbXNnc3RyICIiCiAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2ODQKK21zZ2lkICItLWJpc2VjdC1yZXNldCByZXF1aXJlcyBlaXRoZXIgbm8gYXJndW1lbnQgb3IgYSBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY4OAorbXNnaWQgIi0tYmlzZWN0LXdyaXRlIHJlcXVpcmVzIGVpdGhlciA0IG9yIDUgYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2OTQKK21zZ2lkICItLWNoZWNrLWFuZC1zZXQtdGVybXMgcmVxdWlyZXMgMyBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjcwMAorbXNnaWQgIi0tYmlzZWN0LW5leHQtY2hlY2sgcmVxdWlyZXMgMiBvciAzIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzA2Cittc2dpZCAiLS1iaXNlY3QtdGVybXMgcmVxdWlyZXMgMCBvciAxIGFyZ3VtZW50IgorbXNnc3RyICIiCisKICM6IGJ1aWx0aW4vYmxhbWUuYzozMQogbXNnaWQgImdpdCBibGFtZSBbPG9wdGlvbnM+XSBbPHJldi1vcHRzPl0gWzxyZXY+XSBbLS1dIDxmaWxlPiIKIG1zZ3N0ciAiIgpAQCAtNzI4MCwxMzMgKzk1MjIsMTQ2IEBACiBtc2dpZCAiPHJldi1vcHRzPiBhcmUgZG9jdW1lbnRlZCBpbiBnaXQtcmV2LWxpc3QoMSkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjQwNgorIzogYnVpbHRpbi9ibGFtZS5jOjQwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RpbmcgYSBjb2xvcjogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjQxMworIzogYnVpbHRpbi9ibGFtZS5jOjQxNgogbXNnaWQgIm11c3QgZW5kIHdpdGggYSBjb2xvciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzAwCisjOiBidWlsdGluL2JsYW1lLmM6NzI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29sb3IgJyVzJyBpbiBjb2xvci5ibGFtZS5yZXBlYXRlZExpbmVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3MTgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3NDcKIG1zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciBibGFtZS5jb2xvcmluZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzkzCisjOiBidWlsdGluL2JsYW1lLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmaW5kIHJldmlzaW9uICVzIHRvIGlnbm9yZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ0CiBtc2dpZCAiU2hvdyBibGFtZSBlbnRyaWVzIGFzIHdlIGZpbmQgdGhlbSwgaW5jcmVtZW50YWxseSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk0CisjOiBidWlsdGluL2JsYW1lLmM6ODQ1CiBtc2dpZCAiU2hvdyBibGFuayBTSEEtMSBmb3IgYm91bmRhcnkgY29tbWl0cyAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk1CisjOiBidWlsdGluL2JsYW1lLmM6ODQ2CiBtc2dpZCAiRG8gbm90IHRyZWF0IHJvb3QgY29tbWl0cyBhcyBib3VuZGFyaWVzIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTYKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDcKIG1zZ2lkICJTaG93IHdvcmsgY29zdCBzdGF0aXN0aWNzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTcKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDgKIG1zZ2lkICJGb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5OAorIzogYnVpbHRpbi9ibGFtZS5jOjg0OQogbXNnaWQgIlNob3cgb3V0cHV0IHNjb3JlIGZvciBibGFtZSBlbnRyaWVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTkKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTAKIG1zZ2lkICJTaG93IG9yaWdpbmFsIGZpbGVuYW1lIChEZWZhdWx0OiBhdXRvKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAwCisjOiBidWlsdGluL2JsYW1lLmM6ODUxCiBtc2dpZCAiU2hvdyBvcmlnaW5hbCBsaW5lbnVtYmVyIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDEKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTIKIG1zZ2lkICJTaG93IGluIGEgZm9ybWF0IGRlc2lnbmVkIGZvciBtYWNoaW5lIGNvbnN1bXB0aW9uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDIKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTMKIG1zZ2lkICJTaG93IHBvcmNlbGFpbiBmb3JtYXQgd2l0aCBwZXItbGluZSBjb21taXQgaW5mb3JtYXRpb24iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwMworIzogYnVpbHRpbi9ibGFtZS5jOjg1NAogbXNnaWQgIlVzZSB0aGUgc2FtZSBvdXRwdXQgbW9kZSBhcyBnaXQtYW5ub3RhdGUgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwNAorIzogYnVpbHRpbi9ibGFtZS5jOjg1NQogbXNnaWQgIlNob3cgcmF3IHRpbWVzdGFtcCAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA1CisjOiBidWlsdGluL2JsYW1lLmM6ODU2CiBtc2dpZCAiU2hvdyBsb25nIGNvbW1pdCBTSEExIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDYKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTcKIG1zZ2lkICJTdXBwcmVzcyBhdXRob3IgbmFtZSBhbmQgdGltZXN0YW1wIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDcKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTgKIG1zZ2lkICJTaG93IGF1dGhvciBlbWFpbCBpbnN0ZWFkIG9mIG5hbWUgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwOAorIzogYnVpbHRpbi9ibGFtZS5jOjg1OQogbXNnaWQgIklnbm9yZSB3aGl0ZXNwYWNlIGRpZmZlcmVuY2VzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDkKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjAgYnVpbHRpbi9sb2cuYzoxNzAyCittc2dpZCAicmV2IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjAKK21zZ2lkICJJZ25vcmUgPHJldj4gd2hlbiBibGFtaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjEKK21zZ2lkICJJZ25vcmUgcmV2aXNpb25zIGZyb20gPGZpbGU+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjIKIG1zZ2lkICJjb2xvciByZWR1bmRhbnQgbWV0YWRhdGEgZnJvbSBwcmV2aW91cyBsaW5lIGRpZmZlcmVudGx5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MTAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjMKIG1zZ2lkICJjb2xvciBsaW5lcyBieSBhZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgxNwotbXNnaWQgIlVzZSBhbiBleHBlcmltZW50YWwgaGV1cmlzdGljIHRvIGltcHJvdmUgZGlmZnMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9ibGFtZS5jOjgxOQorIzogYnVpbHRpbi9ibGFtZS5jOjg2NAogbXNnaWQgIlNwZW5kIGV4dHJhIGN5Y2xlcyB0byBmaW5kIGJldHRlciBtYXRjaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIwCisjOiBidWlsdGluL2JsYW1lLmM6ODY1CiBtc2dpZCAiVXNlIHJldmlzaW9ucyBmcm9tIDxmaWxlPiBpbnN0ZWFkIG9mIGNhbGxpbmcgZ2l0LXJldi1saXN0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjEKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjYKIG1zZ2lkICJVc2UgPGZpbGU+J3MgY29udGVudHMgYXMgdGhlIGZpbmFsIGltYWdlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIgYnVpbHRpbi9ibGFtZS5jOjgyMworIzogYnVpbHRpbi9ibGFtZS5jOjg2NyBidWlsdGluL2JsYW1lLmM6ODY4CiBtc2dpZCAic2NvcmUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMgorIzogYnVpbHRpbi9ibGFtZS5jOjg2NwogbXNnaWQgIkZpbmQgbGluZSBjb3BpZXMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMworIzogYnVpbHRpbi9ibGFtZS5jOjg2OAogbXNnaWQgIkZpbmQgbGluZSBtb3ZlbWVudHMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyNAorIzogYnVpbHRpbi9ibGFtZS5jOjg2OQogbXNnaWQgIm4sbSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODI0CisjOiBidWlsdGluL2JsYW1lLmM6ODY5CiBtc2dpZCAiUHJvY2VzcyBvbmx5IGxpbmUgcmFuZ2UgbixtLCBjb3VudGluZyBmcm9tIDEiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjg3MworIzogYnVpbHRpbi9ibGFtZS5jOjkyMQogbXNnaWQgIi0tcHJvZ3Jlc3MgY2FuJ3QgYmUgdXNlZCB3aXRoIC0taW5jcmVtZW50YWwgb3IgcG9yY2VsYWluIGZvcm1hdHMiCiBtc2dzdHIgIiIKIApAQCAtNzQxOCwxOCArOTY3MywxOCBAQAogIy4geW91ciBsYW5ndWFnZSBtYXkgbmVlZCBtb3JlIG9yIGZld2VyIGRpc3BsYXkKICMuIGNvbHVtbnMuCiAjLgotIzogYnVpbHRpbi9ibGFtZS5jOjkyNAorIzogYnVpbHRpbi9ibGFtZS5jOjk3MgogbXNnaWQgIjQgeWVhcnMsIDExIG1vbnRocyBhZ28iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjEwMTEKKyM6IGJ1aWx0aW4vYmxhbWUuYzoxMDc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZpbGUgJXMgaGFzIG9ubHkgJWx1IGxpbmUiCiBtc2dpZF9wbHVyYWwgImZpbGUgJXMgaGFzIG9ubHkgJWx1IGxpbmVzIgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjEwNTcKKyM6IGJ1aWx0aW4vYmxhbWUuYzoxMTI1CiBtc2dpZCAiQmxhbWluZyBsaW5lcyIKIG1zZ3N0ciAiIgogCkBAIC03NDYxLDEzOCArOTcxNiwxNDcgQEAKIG1zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstciB8IC1hXSBbLS1mb3JtYXRdIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTUxCisjOiBidWlsdGluL2JyYW5jaC5jOjE1NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZGVsZXRpbmcgYnJhbmNoICclcycgdGhhdCBoYXMgYmVlbiBtZXJnZWQgdG9cbiIKICIgICAgICAgICAnJXMnLCBidXQgbm90IHlldCBtZXJnZWQgdG8gSEVBRC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxNTUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJub3QgZGVsZXRpbmcgYnJhbmNoICclcycgdGhhdCBpcyBub3QgeWV0IG1lcmdlZCB0b1xuIgogIiAgICAgICAgICclcycsIGV2ZW4gdGhvdWdoIGl0IGlzIG1lcmdlZCB0byBIRUFELiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE2OQorIzogYnVpbHRpbi9icmFuY2guYzoxNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGRuJ3QgbG9vayB1cCBjb21taXQgb2JqZWN0IGZvciAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTczCisjOiBidWlsdGluL2JyYW5jaC5jOjE3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGJyYW5jaCAnJXMnIGlzIG5vdCBmdWxseSBtZXJnZWQuXG4iCiAiSWYgeW91IGFyZSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSBpdCwgcnVuICdnaXQgYnJhbmNoIC1EICVzJy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxODYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTg5CiBtc2dpZCAiVXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjIxNworIzogYnVpbHRpbi9icmFuY2guYzoyMjAKIG1zZ2lkICJjYW5ub3QgdXNlIC1hIHdpdGggLWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMjMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjI2CiBtc2dpZCAiQ291bGRuJ3QgbG9vayB1cCBjb21taXQgb2JqZWN0IGZvciBIRUFEIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjM3CisjOiBidWlsdGluL2JyYW5jaC5jOjI0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZGVsZXRlIGJyYW5jaCAnJXMnIGNoZWNrZWQgb3V0IGF0ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZS10cmFja2luZyBicmFuY2ggJyVzJyBub3QgZm91bmQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjUzCisjOiBidWlsdGluL2JyYW5jaC5jOjI1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJicmFuY2ggJyVzJyBub3QgZm91bmQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjY4CisjOiBidWlsdGluL2JyYW5jaC5jOjI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJFcnJvciBkZWxldGluZyByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkVycm9yIGRlbGV0aW5nIGJyYW5jaCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc2CisjOiBidWlsdGluL2JyYW5jaC5jOjI3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWxldGVkIHJlbW90ZS10cmFja2luZyBicmFuY2ggJXMgKHdhcyAlcykuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgYnJhbmNoICVzICh3YXMgJXMpLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDIxIGJ1aWx0aW4vdGFnLmM6NTkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDI5IGJ1aWx0aW4vdGFnLmM6NjEKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgZm9ybWF0IHN0cmluZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ1OAorIzogYnVpbHRpbi9icmFuY2guYzo0NjAKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDY2CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgKCVzKSBwb2ludHMgb3V0c2lkZSBvZiByZWZzL2hlYWRzLyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJXMgaXMgYmVpbmcgcmViYXNlZCBhdCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ2MgorIzogYnVpbHRpbi9icmFuY2guYzo0ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICVzIGlzIGJlaW5nIGJpc2VjdGVkIGF0ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDc5CisjOiBidWlsdGluL2JyYW5jaC5jOjUwMgogbXNnaWQgImNhbm5vdCBjb3B5IHRoZSBjdXJyZW50IGJyYW5jaCB3aGlsZSBub3Qgb24gYW55LiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ4MQorIzogYnVpbHRpbi9icmFuY2guYzo1MDQKIG1zZ2lkICJjYW5ub3QgcmVuYW1lIHRoZSBjdXJyZW50IGJyYW5jaCB3aGlsZSBub3Qgb24gYW55LiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ5MgorIzogYnVpbHRpbi9icmFuY2guYzo1MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBicmFuY2ggbmFtZTogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUxOQorIzogYnVpbHRpbi9icmFuY2guYzo1NDIKIG1zZ2lkICJCcmFuY2ggcmVuYW1lIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyMQorIzogYnVpbHRpbi9icmFuY2guYzo1NDQKIG1zZ2lkICJCcmFuY2ggY29weSBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MjUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNyZWF0ZWQgYSBjb3B5IG9mIGEgbWlzbmFtZWQgYnJhbmNoICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MjgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbmFtZWQgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyBhd2F5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTM0CisjOiBidWlsdGluL2JyYW5jaC5jOjU1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggcmVuYW1lZCB0byAlcywgYnV0IEhFQUQgaXMgbm90IHVwZGF0ZWQhIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQzCisjOiBidWlsdGluL2JyYW5jaC5jOjU2NgogbXNnaWQgIkJyYW5jaCBpcyByZW5hbWVkLCBidXQgdXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU0NQorIzogYnVpbHRpbi9icmFuY2guYzo1NjgKIG1zZ2lkICJCcmFuY2ggaXMgY29waWVkLCBidXQgdXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU2MQorIzogYnVpbHRpbi9icmFuY2guYzo1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlBsZWFzZSBlZGl0IHRoZSBkZXNjcmlwdGlvbiBmb3IgdGhlIGJyYW5jaFxuIgpAQCAtNzYwMCwzNzUgKzk4NjQsNDE2IEBACiAiTGluZXMgc3RhcnRpbmcgd2l0aCAnJWMnIHdpbGwgYmUgc3RyaXBwZWQuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE4CiBtc2dpZCAiR2VuZXJpYyBvcHRpb25zIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTk2CisjOiBidWlsdGluL2JyYW5jaC5jOjYyMAogbXNnaWQgInNob3cgaGFzaCBhbmQgc3ViamVjdCwgZ2l2ZSB0d2ljZSBmb3IgdXBzdHJlYW0gYnJhbmNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTk3CisjOiBidWlsdGluL2JyYW5jaC5jOjYyMQogbXNnaWQgInN1cHByZXNzIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIyCiBtc2dpZCAic2V0IHVwIHRyYWNraW5nIG1vZGUgKHNlZSBnaXQtcHVsbCgxKSkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI0CiBtc2dpZCAiZG8gbm90IHVzZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI2IGJ1aWx0aW4vcmViYXNlLmM6NTEzCiBtc2dpZCAidXBzdHJlYW0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI2CiBtc2dpZCAiY2hhbmdlIHRoZSB1cHN0cmVhbSBpbmZvIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjAzCi1tc2dpZCAiVW5zZXQgdGhlIHVwc3RyZWFtIGluZm8iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MDQKLW1zZ2lkICJ1c2UgY29sb3JlZCBvdXRwdXQiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MDUKLW1zZ2lkICJhY3Qgb24gcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA3IGJ1aWx0aW4vYnJhbmNoLmM6NjA5Ci1tc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGNvbnRhaW4gdGhlIGNvbW1pdCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwOCBidWlsdGluL2JyYW5jaC5jOjYxMAotbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MTMKLW1zZ2lkICJTcGVjaWZpYyBnaXQtYnJhbmNoIGFjdGlvbnM6IgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE0Ci1tc2dpZCAibGlzdCBib3RoIHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MTYKLW1zZ2lkICJkZWxldGUgZnVsbHkgbWVyZ2VkIGJyYW5jaCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxNwotbXNnaWQgImRlbGV0ZSBicmFuY2ggKGV2ZW4gaWYgbm90IG1lcmdlZCkiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MTgKLW1zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCBhbmQgaXRzIHJlZmxvZyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxOQotbXNnaWQgIm1vdmUvcmVuYW1lIGEgYnJhbmNoLCBldmVuIGlmIHRhcmdldCBleGlzdHMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MjAKLW1zZ2lkICJjb3B5IGEgYnJhbmNoIGFuZCBpdHMgcmVmbG9nIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIxCi1tc2dpZCAiY29weSBhIGJyYW5jaCwgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIyCi1tc2dpZCAibGlzdCBicmFuY2ggbmFtZXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MjMKLW1zZ2lkICJjcmVhdGUgdGhlIGJyYW5jaCdzIHJlZmxvZyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyNQotbXNnaWQgImVkaXQgdGhlIGRlc2NyaXB0aW9uIGZvciB0aGUgYnJhbmNoIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI2Ci1tc2dpZCAiZm9yY2UgY3JlYXRpb24sIG1vdmUvcmVuYW1lLCBkZWxldGlvbiIKLW1zZ3N0ciAiIgotCiAjOiBidWlsdGluL2JyYW5jaC5jOjYyNwotbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBhcmUgbWVyZ2VkIgorbXNnaWQgInVuc2V0IHRoZSB1cHN0cmVhbSBpbmZvIgogbXNnc3RyICIiCiAKICM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI4Ci1tc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGFyZSBub3QgbWVyZ2VkIgorbXNnaWQgInVzZSBjb2xvcmVkIG91dHB1dCIKIG1zZ3N0ciAiIgogCiAjOiBidWlsdGluL2JyYW5jaC5jOjYyOQorbXNnaWQgImFjdCBvbiByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MzEgYnVpbHRpbi9icmFuY2guYzo2MzMKK21zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgY29udGFpbiB0aGUgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMyIGJ1aWx0aW4vYnJhbmNoLmM6NjM0Cittc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYzNworbXNnaWQgIlNwZWNpZmljIGdpdC1icmFuY2ggYWN0aW9uczoiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MzgKK21zZ2lkICJsaXN0IGJvdGggcmVtb3RlLXRyYWNraW5nIGFuZCBsb2NhbCBicmFuY2hlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0MAorbXNnaWQgImRlbGV0ZSBmdWxseSBtZXJnZWQgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQxCittc2dpZCAiZGVsZXRlIGJyYW5jaCAoZXZlbiBpZiBub3QgbWVyZ2VkKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0MgorbXNnaWQgIm1vdmUvcmVuYW1lIGEgYnJhbmNoIGFuZCBpdHMgcmVmbG9nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQzCittc2dpZCAibW92ZS9yZW5hbWUgYSBicmFuY2gsIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NAorbXNnaWQgImNvcHkgYSBicmFuY2ggYW5kIGl0cyByZWZsb2ciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDUKK21zZ2lkICJjb3B5IGEgYnJhbmNoLCBldmVuIGlmIHRhcmdldCBleGlzdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDYKK21zZ2lkICJsaXN0IGJyYW5jaCBuYW1lcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NworbXNnaWQgInNob3cgY3VycmVudCBicmFuY2ggbmFtZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0OAorbXNnaWQgImNyZWF0ZSB0aGUgYnJhbmNoJ3MgcmVmbG9nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUwCittc2dpZCAiZWRpdCB0aGUgZGVzY3JpcHRpb24gZm9yIHRoZSBicmFuY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NTEKK21zZ2lkICJmb3JjZSBjcmVhdGlvbiwgbW92ZS9yZW5hbWUsIGRlbGV0aW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUyCittc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGFyZSBtZXJnZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NTMKK21zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NTQKIG1zZ2lkICJsaXN0IGJyYW5jaGVzIGluIGNvbHVtbnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MzAgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MCBidWlsdGluL2xzLXJlbW90ZS5jOjcwCi0jOiBidWlsdGluL3RhZy5jOjQxNQotbXNnaWQgImtleSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzMSBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQxIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzEKLSM6IGJ1aWx0aW4vdGFnLmM6NDE2Ci1tc2dpZCAiZmllbGQgbmFtZSB0byBzb3J0IG9uIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMzIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDMgYnVpbHRpbi9ub3Rlcy5jOjQxNQotIzogYnVpbHRpbi9ub3Rlcy5jOjQxOCBidWlsdGluL25vdGVzLmM6NTc4IGJ1aWx0aW4vbm90ZXMuYzo1ODEKLSM6IGJ1aWx0aW4vdGFnLmM6NDE4CisjOiBidWlsdGluL2JyYW5jaC5jOjY1NyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQyIGJ1aWx0aW4vbm90ZXMuYzo0MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTggYnVpbHRpbi9ub3Rlcy5jOjU4MSBidWlsdGluL25vdGVzLmM6NTg0CisjOiBidWlsdGluL3RhZy5jOjQzMwogbXNnaWQgIm9iamVjdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzNAorIzogYnVpbHRpbi9icmFuY2guYzo2NTgKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIG9mIHRoZSBvYmplY3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MzYgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OSBidWlsdGluL3RhZy5jOjQyNQorIzogYnVpbHRpbi9icmFuY2guYzo2NjAgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OCBidWlsdGluL3RhZy5jOjQ0MAogbXNnaWQgInNvcnRpbmcgYW5kIGZpbHRlcmluZyBhcmUgY2FzZSBpbnNlbnNpdGl2ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzNyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4IGJ1aWx0aW4vdGFnLmM6NDIzCi0jOiBidWlsdGluL3ZlcmlmeS10YWcuYzozOQorIzogYnVpbHRpbi9icmFuY2guYzo2NjEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOCBidWlsdGluL3RhZy5jOjQzOAorIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzgKIG1zZ2lkICJmb3JtYXQgdG8gdXNlIGZvciB0aGUgb3V0cHV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjYwIGJ1aWx0aW4vY2xvbmUuYzo3MzkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Njg0IGJ1aWx0aW4vY2xvbmUuYzo3ODUKIG1zZ2lkICJIRUFEIG5vdCBmb3VuZCBiZWxvdyByZWZzL2hlYWRzISIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjY4MworIzogYnVpbHRpbi9icmFuY2guYzo3MDgKIG1zZ2lkICItLWNvbHVtbiBhbmQgLS12ZXJib3NlIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2OTggYnVpbHRpbi9icmFuY2guYzo3NDkgYnVpbHRpbi9icmFuY2guYzo3NTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzIzIGJ1aWx0aW4vYnJhbmNoLmM6Nzc3IGJ1aWx0aW4vYnJhbmNoLmM6Nzg2CiBtc2dpZCAiYnJhbmNoIG5hbWUgcmVxdWlyZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MjUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzUzCiBtc2dpZCAiQ2Fubm90IGdpdmUgZGVzY3JpcHRpb24gdG8gZGV0YWNoZWQgSEVBRCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjczMAorIzogYnVpbHRpbi9icmFuY2guYzo3NTgKIG1zZ2lkICJjYW5ub3QgZWRpdCBkZXNjcmlwdGlvbiBvZiBtb3JlIHRoYW4gb25lIGJyYW5jaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjczNworIzogYnVpbHRpbi9icmFuY2guYzo3NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gY29tbWl0IG9uIGJyYW5jaCAnJXMnIHlldC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NDAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIGJyYW5jaCBuYW1lZCAnJXMnLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc1NQorIzogYnVpbHRpbi9icmFuY2guYzo3ODMKIG1zZ2lkICJ0b28gbWFueSBicmFuY2hlcyBmb3IgYSBjb3B5IG9wZXJhdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc2NAorIzogYnVpbHRpbi9icmFuY2guYzo3OTIKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgZm9yIGEgcmVuYW1lIG9wZXJhdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc2OQorIzogYnVpbHRpbi9icmFuY2guYzo3OTcKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgdG8gc2V0IG5ldyB1cHN0cmVhbSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc3MworIzogYnVpbHRpbi9icmFuY2guYzo4MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNvdWxkIG5vdCBzZXQgdXBzdHJlYW0gb2YgSEVBRCB0byAlcyB3aGVuIGl0IGRvZXMgbm90IHBvaW50IHRvIGFueSBicmFuY2guIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzc2IGJ1aWx0aW4vYnJhbmNoLmM6Nzk4CisjOiBidWlsdGluL2JyYW5jaC5jOjgwNCBidWlsdGluL2JyYW5jaC5jOjgyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIGJyYW5jaCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzgwCisjOiBidWlsdGluL2JyYW5jaC5jOjgwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJicmFuY2ggJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc5MgorIzogYnVpbHRpbi9icmFuY2guYzo4MjEKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgdG8gdW5zZXQgdXBzdHJlYW0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3OTYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODI1CiBtc2dpZCAiY291bGQgbm90IHVuc2V0IHVwc3RyZWFtIG9mIEhFQUQgd2hlbiBpdCBkb2VzIG5vdCBwb2ludCB0byBhbnkgYnJhbmNoLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjgwMgorIzogYnVpbHRpbi9icmFuY2guYzo4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgaGFzIG5vIHVwc3RyZWFtIGluZm9ybWF0aW9uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6ODEyCi1tc2dpZCAiLWEgYW5kIC1yIG9wdGlvbnMgdG8gJ2dpdCBicmFuY2gnIGRvIG5vdCBtYWtlIHNlbnNlIHdpdGggYSBicmFuY2ggbmFtZSIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODQxCittc2dpZCAiIgorIlRoZSAtYSwgYW5kIC1yLCBvcHRpb25zIHRvICdnaXQgYnJhbmNoJyBkbyBub3QgdGFrZSBhIGJyYW5jaCBuYW1lLlxuIgorIkRpZCB5b3UgbWVhbiB0byB1c2U6IC1hfC1yIC0tbGlzdCA8cGF0dGVybj4/IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6ODE1CisjOiBidWlsdGluL2JyYW5jaC5jOjg0NQogbXNnaWQgIiIKICJ0aGUgJy0tc2V0LXVwc3RyZWFtJyBvcHRpb24gaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZC4gUGxlYXNlIHVzZSAnLS10cmFjaycgb3IgIgogIictLXNldC11cHN0cmVhbS10bycgaW5zdGVhZC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9idW5kbGUuYzo0NQorIzogYnVpbHRpbi9idW5kbGUuYzoxNSBidWlsdGluL2J1bmRsZS5jOjIzCittc2dpZCAiZ2l0IGJ1bmRsZSBjcmVhdGUgWzxvcHRpb25zPl0gPGZpbGU+IDxnaXQtcmV2LWxpc3QgYXJncz4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxNiBidWlsdGluL2J1bmRsZS5jOjI4Cittc2dpZCAiZ2l0IGJ1bmRsZSB2ZXJpZnkgWzxvcHRpb25zPl0gPGZpbGU+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTcgYnVpbHRpbi9idW5kbGUuYzozMworbXNnaWQgImdpdCBidW5kbGUgbGlzdC1oZWFkcyA8ZmlsZT4gWzxyZWZuYW1lPi4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxOCBidWlsdGluL2J1bmRsZS5jOjM4Cittc2dpZCAiZ2l0IGJ1bmRsZSB1bmJ1bmRsZSA8ZmlsZT4gWzxyZWZuYW1lPi4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9idW5kbGUuYzo2NiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzUKK21zZ2lkICJkbyBub3Qgc2hvdyBwcm9ncmVzcyBtZXRlciIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjY4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM3NworbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9idW5kbGUuYzo3MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzkKK21zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjczIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4MgorbXNnaWQgInNpbWlsYXIgdG8gLS1hbGwtcHJvZ3Jlc3Mgd2hlbiBwcm9ncmVzcyBtZXRlciBpcyBzaG93biIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjkzCittc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjEwNAorbXNnaWQgImRvIG5vdCBzaG93IGJ1bmRsZSBkZXRhaWxzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG9rYXlcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjU4Ci1tc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2J1bmRsZS5jOjYyCisjOiBidWlsdGluL2J1bmRsZS5jOjE2MAogbXNnaWQgIk5lZWQgYSByZXBvc2l0b3J5IHRvIHVuYnVuZGxlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NTg3CisjOiBidWlsdGluL2J1bmRsZS5jOjE2OCBidWlsdGluL3JlbW90ZS5jOjE2ODYKK21zZ2lkICJiZSB2ZXJib3NlOyBtdXN0IGJlIHBsYWNlZCBiZWZvcmUgYSBzdWJjb21tYW5kIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTkwIGJ1aWx0aW4vcmVtb3RlLmM6MTcxNworIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHN1YmNvbW1hbmQ6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1OTUKIG1zZ2lkICIiCiAiZ2l0IGNhdC1maWxlICgtdCBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1lIHwgLSIKICJwIHwgPHR5cGU+IHwgLS10ZXh0Y29udiB8IC0tZmlsdGVycykgWy0tcGF0aD08cGF0aD5dIDxvYmplY3Q+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1ODgKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1OTYKIG1zZ2lkICIiCiAiZ2l0IGNhdC1maWxlICgtLWJhdGNoIHwgLS1iYXRjaC1jaGVjaykgWy0tZm9sbG93LXN5bWxpbmtzXSBbLS10ZXh0Y29udiB8IC0tIgogImZpbHRlcnNdIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MDkKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MTcKIG1zZ2lkICJvbmx5IG9uZSBiYXRjaCBvcHRpb24gbWF5IGJlIHNwZWNpZmllZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjI3CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM1CiBtc2dpZCAiPHR5cGU+IGNhbiBiZSBvbmUgb2Y6IGJsb2IsIHRyZWUsIGNvbW1pdCwgdGFnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MjgKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzYKIG1zZ2lkICJzaG93IG9iamVjdCB0eXBlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MjkKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzcKIG1zZ2lkICJzaG93IG9iamVjdCBzaXplIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzEKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzkKIG1zZ2lkICJleGl0IHdpdGggemVybyB3aGVuIHRoZXJlJ3Mgbm8gZXJyb3IiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzMgorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MAogbXNnaWQgInByZXR0eS1wcmludCBvYmplY3QncyBjb250ZW50IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzQKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDIKIG1zZ2lkICJmb3IgYmxvYiBvYmplY3RzLCBydW4gdGV4dGNvbnYgb24gb2JqZWN0J3MgY29udGVudCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM2CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ0CiBtc2dpZCAiZm9yIGJsb2Igb2JqZWN0cywgcnVuIGZpbHRlcnMgb24gb2JqZWN0J3MgY29udGVudCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM3IGdpdC1zdWJtb2R1bGUuc2g6ODU3CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ1IGdpdC1zdWJtb2R1bGUuc2g6MTAwMgogbXNnaWQgImJsb2IiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzOAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NgogbXNnaWQgInVzZSBhIHNwZWNpZmljIHBhdGggZm9yIC0tdGV4dGNvbnYvLS1maWx0ZXJzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDAKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDgKIG1zZ2lkICJhbGxvdyAtcyBhbmQgLXQgdG8gd29yayB3aXRoIGJyb2tlbi9jb3JydXB0IG9iamVjdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0OQogbXNnaWQgImJ1ZmZlciAtLWJhdGNoIG91dHB1dCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjQzCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjUxCiBtc2dpZCAic2hvdyBpbmZvIGFuZCBjb250ZW50IG9mIG9iamVjdHMgZmVkIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTUKIG1zZ2lkICJzaG93IGluZm8gYWJvdXQgb2JqZWN0cyBmZWQgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1MQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1OQogbXNnaWQgImZvbGxvdyBpbi10cmVlIHN5bWxpbmtzICh1c2VkIHdpdGggLS1iYXRjaCBvciAtLWJhdGNoLWNoZWNrKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjUzCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjYxCiBtc2dpZCAic2hvdyBhbGwgb2JqZWN0cyB3aXRoIC0tYmF0Y2ggb3IgLS1iYXRjaC1jaGVjayIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjU1CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjYzCiBtc2dpZCAiZG8gbm90IG9yZGVyIC0tYmF0Y2gtYWxsLW9iamVjdHMgb3V0cHV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjEyCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxMwogbXNnaWQgImdpdCBjaGVjay1hdHRyIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSBbLS1dIDxwYXRobmFtZT4uLi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTMKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjE0CiBtc2dpZCAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMAorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjEKIG1zZ2lkICJyZXBvcnQgYWxsIGF0dHJpYnV0ZXMgc2V0IG9uIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjEKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIyCiBtc2dpZCAidXNlIC5naXRhdHRyaWJ1dGVzIG9ubHkgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNCBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAxCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMyBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI1IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKIG1zZ2lkICJyZWFkIGZpbGUgbmFtZXMgZnJvbSBzdGRpbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyNCBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI2CisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyNSBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI3CiBtc2dpZCAidGVybWluYXRlIGlucHV0IGFuZCBvdXRwdXQgcmVjb3JkcyBieSBhIE5VTCBjaGFyYWN0ZXIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyMCBidWlsdGluL2NoZWNrb3V0LmM6MTIzNCBidWlsdGluL2djLmM6NTE3Ci0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDk1CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjIxIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDY0IGJ1aWx0aW4vZ2MuYzo1MzcKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTkKIG1zZ2lkICJzdXBwcmVzcyBwcm9ncmVzcyByZXBvcnRpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOQogbXNnaWQgInNob3cgbm9uLW1hdGNoaW5nIGlucHV0IHBhdGhzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzAKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzEKIG1zZ2lkICJpZ25vcmUgaW5kZXggd2hlbiBjaGVja2luZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE1OQorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjMKIG1zZ2lkICJjYW5ub3Qgc3BlY2lmeSBwYXRobmFtZXMgd2l0aCAtLXN0ZGluIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTYyCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2NgogbXNnaWQgIi16IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLXN0ZGluIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY0CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2OAogbXNnaWQgIm5vIHBhdGggc3BlY2lmaWVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY4CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3MgogbXNnaWQgIi0tcXVpZXQgaXMgb25seSB2YWxpZCB3aXRoIGEgc2luZ2xlIHBhdGhuYW1lIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTcwCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3NAogbXNnaWQgImNhbm5vdCBoYXZlIGJvdGggLS1xdWlldCBhbmQgLS12ZXJib3NlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTczCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3NwogbXNnaWQgIi0tbm9uLW1hdGNoaW5nIGlzIG9ubHkgdmFsaWQgd2l0aCAtLXZlcmJvc2UiCiBtc2dzdHIgIiIKIApAQCAtNzk4OSw1NCArMTAyOTQsNTQgQEAKIG1zZ2lkICJubyBjb250YWN0cyBzcGVjaWZpZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjEyOAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjEzMQogbXNnaWQgImdpdCBjaGVja291dC1pbmRleCBbPG9wdGlvbnM+XSBbLS1dIFs8ZmlsZT4uLi5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNDUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNDgKIG1zZ2lkICJzdGFnZSBzaG91bGQgYmUgYmV0d2VlbiAxIGFuZCAzIG9yIGFsbCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTYxCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY0CiBtc2dpZCAiY2hlY2sgb3V0IGFsbCBmaWxlcyBpbiB0aGUgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2MgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NQogbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBleGlzdGluZyBmaWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY0CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY3CiBtc2dpZCAibm8gd2FybmluZyBmb3IgZXhpc3RpbmcgZmlsZXMgYW5kIGZpbGVzIG5vdCBpbiBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY2CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY5CiBtc2dpZCAiZG9uJ3QgY2hlY2tvdXQgbmV3IGZpbGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzEKIG1zZ2lkICJ1cGRhdGUgc3RhdCBpbmZvcm1hdGlvbiBpbiB0aGUgaW5kZXggZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcyCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc1CiBtc2dpZCAicmVhZCBsaXN0IG9mIHBhdGhzIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzcKIG1zZ2lkICJ3cml0ZSB0aGUgY29udGVudCB0byB0ZW1wb3JhcnkgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NSBidWlsdGluL2NvbHVtbi5jOjMxCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2OCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3MQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTMKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NjgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzggYnVpbHRpbi9jb2x1bW4uYzozMQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDExIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTA5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjcyCiBtc2dpZCAic3RyaW5nIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzkKIG1zZ2lkICJ3aGVuIGNyZWF0aW5nIGZpbGVzLCBwcmVwZW5kIDxzdHJpbmc+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxODEKIG1zZ2lkICJjb3B5IG91dCB0aGUgZmlsZXMgZnJvbSBuYW1lZCBzdGFnZSIKIG1zZ3N0ciAiIgogCkBAIC04MDQ4LDEwNSArMTAzNTMsMTU2IEBACiBtc2dpZCAiZ2l0IGNoZWNrb3V0IFs8b3B0aW9ucz5dIFs8YnJhbmNoPl0gLS0gPGZpbGU+Li4uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDQgYnVpbHRpbi9jaGVja291dC5jOjE3NworIzogYnVpbHRpbi9jaGVja291dC5jOjM3Cittc2dpZCAiZ2l0IHN3aXRjaCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MgorbXNnaWQgImdpdCByZXN0b3JlIFs8b3B0aW9ucz5dIFstLXNvdXJjZT08YnJhbmNoPl0gPGZpbGU+Li4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzUgYnVpbHRpbi9jaGVja291dC5jOjIxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSBvdXIgdmVyc2lvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzkKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjIxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSB0aGVpciB2ZXJzaW9uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgYWxsIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjA2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjQzCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjI0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJzogY2Fubm90IG1lcmdlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNDAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGFkZCBtZXJnZSByZXN1bHQgZm9yICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjI2MiBidWlsdGluL2NoZWNrb3V0LmM6MjY1IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNjgKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0IgorbXNnaWRfcGx1cmFsICJSZWNyZWF0ZWQgJWQgbWVyZ2UgY29uZmxpY3RzIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4MgorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSAlcyIKK21zZ2lkX3BsdXJhbCAiVXBkYXRlZCAlZCBwYXRocyBmcm9tICVzIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4OQorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSB0aGUgaW5kZXgiCittc2dpZF9wbHVyYWwgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSB0aGUgaW5kZXgiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDEyIGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTUgYnVpbHRpbi9jaGVja291dC5jOjQxOAorIzogYnVpbHRpbi9jaGVja291dC5jOjQyMgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggdXBkYXRpbmcgcGF0aHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjI3NCBidWlsdGluL2NoZWNrb3V0LmM6Mjc3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDI1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyODAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHVwZGF0ZSBwYXRocyBhbmQgc3dpdGNoIHRvIGJyYW5jaCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNDkgYnVpbHRpbi9jaGVja291dC5jOjM1NgorIzogYnVpbHRpbi9jaGVja291dC5jOjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICJuZWl0aGVyICclcycgb3IgJyVzJyBpcyBzcGVjaWZpZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQ0MAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG11c3QgYmUgdXNlZCB3aGVuICclcycgaXMgbm90IHNwZWNpZmllZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDQ1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBvciAnJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjUwOSBidWlsdGluL2NoZWNrb3V0LmM6NTE2CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBpcyB1bm1lcmdlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NjA4CisjOiBidWlsdGluL2NoZWNrb3V0LmM6Njg0IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MTA2CiBtc2dpZCAieW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc0NQorIzogYnVpbHRpbi9jaGVja291dC5jOjczNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY2Fubm90IGNvbnRpbnVlIHdpdGggc3RhZ2VkIGNoYW5nZXMgaW4gdGhlIGZvbGxvd2luZyBmaWxlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbiBub3QgZG8gcmVmbG9nIGZvciAnJXMnOiAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3ODYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4NzkKIG1zZ2lkICJIRUFEIGlzIG5vdyBhdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NzkwIGJ1aWx0aW4vY2xvbmUuYzo2OTIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODMgYnVpbHRpbi9jbG9uZS5jOjcxNwogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgSEVBRCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Nzk0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlc2V0IGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc5NworIzogYnVpbHRpbi9jaGVja291dC5jOjg5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJBbHJlYWR5IG9uICclcydcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODAxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN3aXRjaGVkIHRvIGFuZCByZXNldCBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDMgYnVpbHRpbi9jaGVja291dC5jOjExNjYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTYgYnVpbHRpbi9jaGVja291dC5jOjEzMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3dpdGNoZWQgdG8gYSBuZXcgYnJhbmNoICclcydcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODA1CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN3aXRjaGVkIHRvIGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjg1NgorIzogYnVpbHRpbi9jaGVja291dC5jOjk0OQogIywgYy1mb3JtYXQKIG1zZ2lkICIgLi4uIGFuZCAlZCBtb3JlLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4NjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIldhcm5pbmc6IHlvdSBhcmUgbGVhdmluZyAlZCBjb21taXQgYmVoaW5kLCBub3QgY29ubmVjdGVkIHRvXG4iCkBAIC04MTYxLDcgKzEwNTE3LDcgQEAKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3YW50IHRvIGtlZXAgaXQgYnkgY3JlYXRpbmcgYSBuZXcgYnJhbmNoLCB0aGlzIG1heSBiZSBhIGdvb2QgdGltZVxuIgpAQCAtODE3OCwxNzIgKzEwNTM0LDI3IEBACiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTEzCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTAwOQogbXNnaWQgImludGVybmFsIGVycm9yIGluIHJldmlzaW9uIHdhbGsiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjkxNworIzogYnVpbHRpbi9jaGVja291dC5jOjEwMTMKIG1zZ2lkICJQcmV2aW91cyBIRUFEIHBvc2l0aW9uIHdhcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTQ1IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTYxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTA1MyBidWlsdGluL2NoZWNrb3V0LmM6MTMxNQogbXNnaWQgIllvdSBhcmUgb24gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEwNjYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkLCAlZCBnaXZlbi4iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExMDcgYnVpbHRpbi93b3JrdHJlZS5jOjI4OSBidWlsdGluL3dvcmt0cmVlLmM6NDQ0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTEzNgotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWZlcmVuY2UgaXMgbm90IGEgdHJlZTogJXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExNzUKLW1zZ2lkICJwYXRocyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE3OCBidWlsdGluL2NoZWNrb3V0LmM6MTE4MgotIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTg2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTg5IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTk0Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE5NwotIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIwMgotIywgYy1mb3JtYXQKLW1zZ2lkICJDYW5ub3Qgc3dpdGNoIGJyYW5jaCB0byBhIG5vbi1jb21taXQgJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIzNSBidWlsdGluL2NoZWNrb3V0LmM6MTIzNyBidWlsdGluL2Nsb25lLmM6MTE5Ci0jOiBidWlsdGluL3JlbW90ZS5jOjE2OSBidWlsdGluL3JlbW90ZS5jOjE3MSBidWlsdGluL3dvcmt0cmVlLmM6NDg4Ci0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDkwCi1tc2dpZCAiYnJhbmNoIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM2Ci1tc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMzgKLW1zZ2lkICJjcmVhdGUvcmVzZXQgYW5kIGNoZWNrb3V0IGEgYnJhbmNoIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM5Ci1tc2dpZCAiY3JlYXRlIHJlZmxvZyBmb3IgbmV3IGJyYW5jaCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MCBidWlsdGluL3dvcmt0cmVlLmM6NDkyCi1tc2dpZCAiZGV0YWNoIEhFQUQgYXQgbmFtZWQgY29tbWl0IgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQxCi1tc2dpZCAic2V0IHVwc3RyZWFtIGluZm8gZm9yIG5ldyBicmFuY2giCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDMKLW1zZ2lkICJuZXctYnJhbmNoIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQzCi1tc2dpZCAibmV3IHVucGFyZW50ZWQgYnJhbmNoIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQ1Ci1tc2dpZCAiY2hlY2tvdXQgb3VyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQ4Ci1tc2dpZCAiY2hlY2tvdXQgdGhlaXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTAKLW1zZ2lkICJmb3JjZSBjaGVja291dCAodGhyb3cgYXdheSBsb2NhbCBtb2RpZmljYXRpb25zKSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1MgotbXNnaWQgInBlcmZvcm0gYSAzLXdheSBtZXJnZSB3aXRoIHRoZSBuZXcgYnJhbmNoIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU0IGJ1aWx0aW4vbWVyZ2UuYzoyNzUKLW1zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTYgYnVpbHRpbi9sb2cuYzoxNTczIHBhcnNlLW9wdGlvbnMuaDoyNzQKLW1zZ2lkICJzdHlsZSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1NwotbXNnaWQgImNvbmZsaWN0IHN0eWxlIChtZXJnZSBvciBkaWZmMykiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNjAKLW1zZ2lkICJkbyBub3QgbGltaXQgcGF0aHNwZWNzIHRvIHNwYXJzZSBlbnRyaWVzIG9ubHkiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNjIKLW1zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBjaGVja291dCA8bm8tc3VjaC1icmFuY2g+JyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI2NAotbXNnaWQgImRvIG5vdCBjaGVjayBpZiBhbm90aGVyIHdvcmt0cmVlIGlzIGhvbGRpbmcgdGhlIGdpdmVuIHJlZiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI2OCBidWlsdGluL2Nsb25lLmM6ODYgYnVpbHRpbi9mZXRjaC5jOjE0MQotIzogYnVpbHRpbi9tZXJnZS5jOjI3MiBidWlsdGluL3B1bGwuYzoxMjkgYnVpbHRpbi9wdXNoLmM6NTcyCi0jOiBidWlsdGluL3NlbmQtcGFjay5jOjE3NAotbXNnaWQgImZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI5OAotbXNnaWQgIi1iLCAtQiBhbmQgLS1vcnBoYW4gYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTMxNQotbXNnaWQgIi0tdHJhY2sgbmVlZHMgYSBicmFuY2ggbmFtZSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTMyMAotbXNnaWQgIm1pc3NpbmcgYnJhbmNoIG5hbWU7IHRyeSAtYiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTM1NwotbXNnaWQgImludmFsaWQgcGF0aCBzcGVjaWZpY2F0aW9uIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY0Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiclcycgaXMgbm90IGEgY29tbWl0IGFuZCBhIGJyYW5jaCAnJXMnIGNhbm5vdCBiZSBjcmVhdGVkIGZyb20gaXQiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCAnJXMnIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzcyCi1tc2dpZCAiIgotImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIGFuZCAtLW1lcmdlIGFyZSBpbmNvbXBhdGlibGUgd2hlblxuIgotImNoZWNraW5nIG91dCBvZiB0aGUgaW5kZXguIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzkyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCi0iJyVzJyBtYXRjaGVkIG1vcmUgdGhhbiBvbmUgcmVtb3RlIHRyYWNraW5nIGJyYW5jaC5cbiIKLSJXZSBmb3VuZCAlZCByZW1vdGVzIHdpdGggYSByZWZlcmVuY2UgdGhhdCBtYXRjaGVkLiBTbyB3ZSBmZWxsIGJhY2tcbiIKLSJvbiB0cnlpbmcgdG8gcmVzb2x2ZSB0aGUgYXJndW1lbnQgYXMgYSBwYXRoLCBidXQgZmFpbGVkIHRoZXJlIHRvbyFcbiIKLSJcbiIKKyInJXMnIGNvdWxkIGJlIGJvdGggYSBsb2NhbCBmaWxlIGFuZCBhIHRyYWNraW5nIGJyYW5jaC5cbiIKKyJQbGVhc2UgdXNlIC0tIChhbmQgb3B0aW9uYWxseSAtLW5vLWd1ZXNzKSB0byBkaXNhbWJpZ3VhdGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjExMzUKK21zZ2lkICIiCiAiSWYgeW91IG1lYW50IHRvIGNoZWNrIG91dCBhIHJlbW90ZSB0cmFja2luZyBicmFuY2ggb24sIGUuZy4gJ29yaWdpbicsXG4iCiAieW91IGNhbiBkbyBzbyBieSBmdWxseSBxdWFsaWZ5aW5nIHRoZSBuYW1lIHdpdGggdGhlIC0tdHJhY2sgb3B0aW9uOlxuIgogIlxuIgpAQCAtODM1NCwzNyArMTA1NjUsMzIzIEBACiAiY2hlY2tvdXQuZGVmYXVsdFJlbW90ZT1vcmlnaW4gaW4geW91ciBjb25maWcuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzoyNworIzogYnVpbHRpbi9jaGVja291dC5jOjExNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBtYXRjaGVkIG11bHRpcGxlICglZCkgcmVtb3RlIHRyYWNraW5nIGJyYW5jaGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjExCittc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9ubHkgb25lIHJlZmVyZW5jZSBleHBlY3RlZCwgJWQgZ2l2ZW4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjc0IGJ1aWx0aW4vd29ya3RyZWUuYzoyODMgYnVpbHRpbi93b3JrdHJlZS5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZmVyZW5jZTogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyODcgYnVpbHRpbi9jaGVja291dC5jOjE2NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIGlzIG5vdCBhIHRyZWU6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM0CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgdGFnICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCByZW1vdGUgYnJhbmNoICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMzcgYnVpbHRpbi9jaGVja291dC5jOjEzNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzQwCisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgY29tbWl0ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNTYKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgbWVyZ2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IG1lcmdlIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2MAorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCBpbiB0aGUgbWlkZGxlIG9mIGFuIGFtIHNlc3Npb25cbiIKKyJDb25zaWRlciBcImdpdCBhbSAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjQKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgcmViYXNpbmdcbiIKKyJDb25zaWRlciBcImdpdCByZWJhc2UgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY4Cittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIGNoZXJyeS1waWNraW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgY2hlcnJ5LXBpY2sgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzcyCittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIHJldmVydGluZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IHJldmVydCAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzYKK21zZ2lkICJ5b3UgYXJlIHN3aXRjaGluZyBicmFuY2ggd2hpbGUgYmlzZWN0aW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzgzCittc2dpZCAicGF0aHMgY2Fubm90IGJlIHVzZWQgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzODYgYnVpbHRpbi9jaGVja291dC5jOjEzOTAgYnVpbHRpbi9jaGVja291dC5jOjEzOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM5OCBidWlsdGluL2NoZWNrb3V0LmM6MTQwMSBidWlsdGluL2NoZWNrb3V0LmM6MTQwNAorIzogYnVpbHRpbi9jaGVja291dC5jOjE0MDkgYnVpbHRpbi9jaGVja291dC5jOjE0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgdGFrZSA8c3RhcnQtcG9pbnQ+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDE5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBzd2l0Y2ggYnJhbmNoIHRvIGEgbm9uLWNvbW1pdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDI2Cittc2dpZCAibWlzc2luZyBicmFuY2ggb3IgY29tbWl0IGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDY4IGJ1aWx0aW4vY2xvbmUuYzo5MSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjcyCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNSBidWlsdGluL2ZldGNoLmM6MTY3IGJ1aWx0aW4vbWVyZ2UuYzoyODYKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjI3IGJ1aWx0aW4vcHVsbC5jOjExOCBidWlsdGluL3B1c2guYzo1NjMKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc0Cittc2dpZCAiZm9yY2UgcHJvZ3Jlc3MgcmVwb3J0aW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDY5Cittc2dpZCAicGVyZm9ybSBhIDMtd2F5IG1lcmdlIHdpdGggdGhlIG5ldyBicmFuY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NzAgYnVpbHRpbi9sb2cuYzoxNjkwIHBhcnNlLW9wdGlvbnMuaDozMjIKK21zZ2lkICJzdHlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ3MQorbXNnaWQgImNvbmZsaWN0IHN0eWxlIChtZXJnZSBvciBkaWZmMykiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODMgYnVpbHRpbi93b3JrdHJlZS5jOjQ5NgorbXNnaWQgImRldGFjaCBIRUFEIGF0IG5hbWVkIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4NAorbXNnaWQgInNldCB1cHN0cmVhbSBpbmZvIGZvciBuZXcgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg2Cittc2dpZCAiZm9yY2UgY2hlY2tvdXQgKHRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucykiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODgKK21zZ2lkICJuZXctYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg4Cittc2dpZCAibmV3IHVucGFyZW50ZWQgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDkwIGJ1aWx0aW4vbWVyZ2UuYzoyODkKK21zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0OTMKK21zZ2lkICJkbyBub3QgY2hlY2sgaWYgYW5vdGhlciB3b3JrdHJlZSBpcyBob2xkaW5nIHRoZSBnaXZlbiByZWYiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MDYKK21zZ2lkICJjaGVja291dCBvdXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MDkKK21zZ2lkICJjaGVja291dCB0aGVpciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTUxMworbXNnaWQgImRvIG5vdCBsaW1pdCBwYXRoc3BlY3MgdG8gc3BhcnNlIGVudHJpZXMgb25seSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTU2NQorbXNnaWQgIi1iLCAtQiBhbmQgLS1vcnBoYW4gYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTU2OAorbXNnaWQgIi1wIGFuZCAtLW92ZXJsYXkgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTYwNQorbXNnaWQgIi0tdHJhY2sgbmVlZHMgYSBicmFuY2ggbmFtZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTYxMAorbXNnaWQgIm1pc3NpbmcgYnJhbmNoIG5hbWU7IHRyeSAtYiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY0MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY1OAorbXNnaWQgImludmFsaWQgcGF0aCBzcGVjaWZpY2F0aW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgY29tbWl0IGFuZCBhIGJyYW5jaCAnJXMnIGNhbm5vdCBiZSBjcmVhdGVkIGZyb20gaXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjc4Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1kZXRhY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2ODEgYnVpbHRpbi9yZXNldC5jOjMyNCBidWlsdGluL3N0YXNoLmM6MTUwNgorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tcGF0Y2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2OTIKK21zZ2lkICIiCisiZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgYW5kIC0tbWVyZ2UgYXJlIGluY29tcGF0aWJsZSB3aGVuXG4iCisiY2hlY2tpbmcgb3V0IG9mIHRoZSBpbmRleC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2OTcKK21zZ2lkICJ5b3UgbXVzdCBzcGVjaWZ5IHBhdGgocykgdG8gcmVzdG9yZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyMyBidWlsdGluL2NoZWNrb3V0LmM6MTcyNSBidWlsdGluL2NoZWNrb3V0LmM6MTc3NAorIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzYgYnVpbHRpbi9jbG9uZS5jOjEyMSBidWlsdGluL3JlbW90ZS5jOjE3MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNzIgYnVpbHRpbi93b3JrdHJlZS5jOjQ5MiBidWlsdGluL3dvcmt0cmVlLmM6NDk0Cittc2dpZCAiYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI0Cittc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjYKK21zZ2lkICJjcmVhdGUvcmVzZXQgYW5kIGNoZWNrb3V0IGEgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI3Cittc2dpZCAiY3JlYXRlIHJlZmxvZyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyOQorbXNnaWQgInNlY29uZCBndWVzcyAnZ2l0IGNoZWNrb3V0IDxuby1zdWNoLWJyYW5jaD4nIChkZWZhdWx0KSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTczMAorbXNnaWQgInVzZSBvdmVybGF5IG1vZGUgKGRlZmF1bHQpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc1Cittc2dpZCAiY3JlYXRlIGFuZCBzd2l0Y2ggdG8gYSBuZXcgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc3Cittc2dpZCAiY3JlYXRlL3Jlc2V0IGFuZCBzd2l0Y2ggdG8gYSBicmFuY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzkKK21zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBzd2l0Y2ggPG5vLXN1Y2gtYnJhbmNoPiciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3ODEKK21zZ2lkICJ0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTMKK21zZ2lkICJ3aGljaCB0cmVlLWlzaCB0byBjaGVja291dCBmcm9tIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODE1Cittc2dpZCAicmVzdG9yZSB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTcKK21zZ2lkICJyZXN0b3JlIHRoZSB3b3JraW5nIHRyZWUgKGRlZmF1bHQpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODE5Cittc2dpZCAiaWdub3JlIHVubWVyZ2VkIGVudHJpZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MjAKK21zZ2lkICJ1c2Ugb3ZlcmxheSBtb2RlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzoyOAogbXNnaWQgIiIKICJnaXQgY2xlYW4gWy1kXSBbLWZdIFstaV0gWy1uXSBbLXFdIFstZSA8cGF0dGVybj5dIFsteCB8IC1YXSBbLS1dIDxwYXRocz4uLi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjMxCisjOiBidWlsdGluL2NsZWFuLmM6MzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3ZpbmcgJXNcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzIKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMwogIywgYy1mb3JtYXQKIG1zZ2lkICJXb3VsZCByZW1vdmUgJXNcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzMKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNAogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyByZXBvc2l0b3J5ICVzXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjM0CisjOiBidWlsdGluL2NsZWFuLmM6MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiV291bGQgc2tpcCByZXBvc2l0b3J5ICVzXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjM1CisjOiBidWlsdGluL2NsZWFuLmM6MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6Mjk4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTc5CisjOiBidWlsdGluL2NsZWFuLmM6MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGxzdGF0ICVzXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjMwMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU5NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUHJvbXB0IGhlbHA6XG4iCkBAIC04MzkzLDcgKzEwODkwLDcgQEAKICIgICAgICAgICAgIC0gKGVtcHR5KSBzZWxlY3Qgbm90aGluZ1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMDIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1ODgKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMDUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlByb21wdCBoZWxwOlxuIgpAQCAtODQwNiwzOCArMTA5MDMsMzMgQEAKICIgICAgICAgICAgIC0gKGVtcHR5KSBmaW5pc2ggc2VsZWN0aW5nXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjUxOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU1NAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NTkKKyM6IGJ1aWx0aW4vY2xlYW4uYzo1MjEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NzAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTc1CiAjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKIG1zZ2lkICJIdWggKCVzKT9cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6NjYwCisjOiBidWlsdGluL2NsZWFuLmM6NjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIklucHV0IGlnbm9yZSBwYXR0ZXJucz4+ICIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6Njk3CisjOiBidWlsdGluL2NsZWFuLmM6NzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIldBUk5JTkc6IENhbm5vdCBmaW5kIGl0ZW1zIG1hdGNoZWQgYnk6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo3MTgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3MjEKIG1zZ2lkICJTZWxlY3QgaXRlbXMgdG8gZGVsZXRlIgogbXNnc3RyICIiCiAKICMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8ga2VlcCBbeS9OXSBhcyBpcwotIzogYnVpbHRpbi9jbGVhbi5jOjc1OQorIzogYnVpbHRpbi9jbGVhbi5jOjc2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmUgJXMgW3kvTl0/ICIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6Nzg0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcxNwotIywgYy1mb3JtYXQKLW1zZ2lkICJCeWUuXG4iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jbGVhbi5jOjc5MgorIzogYnVpbHRpbi9jbGVhbi5jOjc5NQogbXNnaWQgIiIKICJjbGVhbiAgICAgICAgICAgICAgIC0gc3RhcnQgY2xlYW5pbmdcbiIKICJmaWx0ZXIgYnkgcGF0dGVybiAgIC0gZXhjbHVkZSBpdGVtcyBmcm9tIGRlbGV0aW9uXG4iCkBAIC04NDQ4LDM5MSArMTA5NDAsNDAxIEBACiAiPyAgICAgICAgICAgICAgICAgICAtIGhlbHAgZm9yIHByb21wdCBzZWxlY3Rpb24iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjgxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTMKLW1zZ2lkICIqKiogQ29tbWFuZHMgKioqIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2xlYW4uYzo4MjAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzkwCi1tc2dpZCAiV2hhdCBub3ciCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jbGVhbi5jOjgyOAorIzogYnVpbHRpbi9jbGVhbi5jOjgzMQogbXNnaWQgIldvdWxkIHJlbW92ZSB0aGUgZm9sbG93aW5nIGl0ZW06IgogbXNnaWRfcGx1cmFsICJXb3VsZCByZW1vdmUgdGhlIGZvbGxvd2luZyBpdGVtczoiCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6ODQ0CisjOiBidWlsdGluL2NsZWFuLmM6ODQ3CiBtc2dpZCAiTm8gbW9yZSBmaWxlcyB0byBjbGVhbiwgZXhpdGluZy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwNgorIzogYnVpbHRpbi9jbGVhbi5jOjkwOQogbXNnaWQgImRvIG5vdCBwcmludCBuYW1lcyBvZiBmaWxlcyByZW1vdmVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MDgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTEKIG1zZ2lkICJmb3JjZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA5CisjOiBidWlsdGluL2NsZWFuLmM6OTEyCiBtc2dpZCAiaW50ZXJhY3RpdmUgY2xlYW5pbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxMQorIzogYnVpbHRpbi9jbGVhbi5jOjkxNAogbXNnaWQgInJlbW92ZSB3aG9sZSBkaXJlY3RvcmllcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTEyIGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDUgYnVpbHRpbi9kZXNjcmliZS5jOjU0NwotIzogYnVpbHRpbi9ncmVwLmM6ODg2IGJ1aWx0aW4vbG9nLmM6MTY2IGJ1aWx0aW4vbG9nLmM6MTY4Ci0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTU2IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTUgYnVpbHRpbi9uYW1lLXJldi5jOjQxNwotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OAorIzogYnVpbHRpbi9jbGVhbi5jOjkxNSBidWlsdGluL2Rlc2NyaWJlLmM6NTYyIGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4OSBidWlsdGluL2xvZy5jOjE3NyBidWlsdGluL2xvZy5jOjE3OQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NyBidWlsdGluL25hbWUtcmV2LmM6NTI2IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjgKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzkKIG1zZ2lkICJwYXR0ZXJuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTMKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTYKIG1zZ2lkICJhZGQgPHBhdHRlcm4+IHRvIGlnbm9yZSBydWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTE0CisjOiBidWlsdGluL2NsZWFuLmM6OTE3CiBtc2dpZCAicmVtb3ZlIGlnbm9yZWQgZmlsZXMsIHRvbyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTE2CisjOiBidWlsdGluL2NsZWFuLmM6OTE5CiBtc2dpZCAicmVtb3ZlIG9ubHkgaWdub3JlZCBmaWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTM0CisjOiBidWlsdGluL2NsZWFuLmM6OTM3CiBtc2dpZCAiLXggYW5kIC1YIGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MzgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5NDEKIG1zZ2lkICIiCiAiY2xlYW4ucmVxdWlyZUZvcmNlIHNldCB0byB0cnVlIGFuZCBuZWl0aGVyIC1pLCAtbiwgbm9yIC1mIGdpdmVuOyByZWZ1c2luZyB0byAiCiAiY2xlYW4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjk0MQorIzogYnVpbHRpbi9jbGVhbi5jOjk0NAogbXNnaWQgIiIKICJjbGVhbi5yZXF1aXJlRm9yY2UgZGVmYXVsdHMgdG8gdHJ1ZSBhbmQgbmVpdGhlciAtaSwgLW4sIG5vciAtZiBnaXZlbjsgIgogInJlZnVzaW5nIHRvIGNsZWFuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0MworIzogYnVpbHRpbi9jbG9uZS5jOjQ1CiBtc2dpZCAiZ2l0IGNsb25lIFs8b3B0aW9ucz5dIFstLV0gPHJlcG8+IFs8ZGlyPl0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjg4CisjOiBidWlsdGluL2Nsb25lLmM6OTMKIG1zZ2lkICJkb24ndCBjcmVhdGUgYSBjaGVja291dCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODkgYnVpbHRpbi9jbG9uZS5jOjkxIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4MQorIzogYnVpbHRpbi9jbG9uZS5jOjk0IGJ1aWx0aW4vY2xvbmUuYzo5NiBidWlsdGluL2luaXQtZGIuYzo0ODkKIG1zZ2lkICJjcmVhdGUgYSBiYXJlIHJlcG9zaXRvcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkzCisjOiBidWlsdGluL2Nsb25lLmM6OTgKIG1zZ2lkICJjcmVhdGUgYSBtaXJyb3IgcmVwb3NpdG9yeSAoaW1wbGllcyBiYXJlKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDAKIG1zZ2lkICJ0byBjbG9uZSBmcm9tIGEgbG9jYWwgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDIKIG1zZ2lkICJkb24ndCB1c2UgbG9jYWwgaGFyZGxpbmtzLCBhbHdheXMgY29weSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDQKIG1zZ2lkICJzZXR1cCBhcyBzaGFyZWQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxIGJ1aWx0aW4vY2xvbmUuYzoxMDUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDcKIG1zZ2lkICJwYXRoc3BlYyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxIGJ1aWx0aW4vY2xvbmUuYzoxMDUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDcKIG1zZ2lkICJpbml0aWFsaXplIHN1Ym1vZHVsZXMgaW4gdGhlIGNsb25lIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAKIG1zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBjbG9uZWQgaW4gcGFyYWxsZWwiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwOSBidWlsdGluL2luaXQtZGIuYzo0NzgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTEgYnVpbHRpbi9pbml0LWRiLmM6NDg2CiBtc2dpZCAidGVtcGxhdGUtZGlyZWN0b3J5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAgYnVpbHRpbi9pbml0LWRiLmM6NDc5CisjOiBidWlsdGluL2Nsb25lLmM6MTEyIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NwogbXNnaWQgImRpcmVjdG9yeSBmcm9tIHdoaWNoIHRlbXBsYXRlcyB3aWxsIGJlIHVzZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMiBidWlsdGluL2Nsb25lLmM6MTE0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc1Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1NgorIzogYnVpbHRpbi9jbG9uZS5jOjExNCBidWlsdGluL2Nsb25lLmM6MTE2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxMgogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzcKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU4CisjOiBidWlsdGluL2Nsb25lLmM6MTE4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxNAogbXNnaWQgInVzZSAtLXJlZmVyZW5jZSBvbmx5IHdoaWxlIGNsb25pbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExNyBidWlsdGluL2NvbHVtbi5jOjI3IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjQ2Ci0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDEgYnVpbHRpbi9yZXBhY2suYzozMjkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTkgYnVpbHRpbi9jb2x1bW4uYzoyNyBidWlsdGluL21lcmdlLWZpbGUuYzo0NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQxIGJ1aWx0aW4vcmVwYWNrLmM6MzI3CiBtc2dpZCAibmFtZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE4CisjOiBidWlsdGluL2Nsb25lLmM6MTIwCiBtc2dpZCAidXNlIDxuYW1lPiBpbnN0ZWFkIG9mICdvcmlnaW4nIHRvIHRyYWNrIHVwc3RyZWFtIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjIKIG1zZ2lkICJjaGVja291dCA8YnJhbmNoPiBpbnN0ZWFkIG9mIHRoZSByZW1vdGUncyBIRUFEIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjIKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjQKIG1zZ2lkICJwYXRoIHRvIGdpdC11cGxvYWQtcGFjayBvbiB0aGUgcmVtb3RlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjMgYnVpbHRpbi9mZXRjaC5jOjE0MiBidWlsdGluL2dyZXAuYzo4MjUKLSM6IGJ1aWx0aW4vcHVsbC5jOjIxNworIzogYnVpbHRpbi9jbG9uZS5jOjEyNSBidWlsdGluL2ZldGNoLmM6MTY4IGJ1aWx0aW4vZ3JlcC5jOjgyOAorIzogYnVpbHRpbi9wdWxsLmM6MjA3CiBtc2dpZCAiZGVwdGgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyNAorIzogYnVpbHRpbi9jbG9uZS5jOjEyNgogbXNnaWQgImNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgb2YgdGhhdCBkZXB0aCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI1IGJ1aWx0aW4vZmV0Y2guYzoxNDQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkyCisjOiBidWlsdGluL2Nsb25lLmM6MTI3IGJ1aWx0aW4vZmV0Y2guYzoxNzAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDMwCiBtc2dpZCAidGltZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI2CisjOiBidWlsdGluL2Nsb25lLmM6MTI4CiBtc2dpZCAiY3JlYXRlIGEgc2hhbGxvdyBjbG9uZSBzaW5jZSBhIHNwZWNpZmljIHRpbWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyNyBidWlsdGluL2ZldGNoLmM6MTQ2IGJ1aWx0aW4vZmV0Y2guYzoxNjkKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODMxCisjOiBidWlsdGluL2Nsb25lLmM6MTI5IGJ1aWx0aW4vZmV0Y2guYzoxNzIgYnVpbHRpbi9mZXRjaC5jOjE5NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgwCiBtc2dpZCAicmV2aXNpb24iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyOCBidWlsdGluL2ZldGNoLmM6MTQ3CisjOiBidWlsdGluL2Nsb25lLmM6MTMwIGJ1aWx0aW4vZmV0Y2guYzoxNzMKIG1zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IGNsb25lLCBleGNsdWRpbmcgcmV2IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI4CiBtc2dpZCAiY2xvbmUgb25seSBvbmUgYnJhbmNoLCBIRUFEIG9yIC0tYnJhbmNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzIKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzQKIG1zZ2lkICJkb24ndCBjbG9uZSBhbnkgdGFncywgYW5kIG1ha2UgbGF0ZXIgZmV0Y2hlcyBub3QgdG8gZm9sbG93IHRoZW0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNAorIzogYnVpbHRpbi9jbG9uZS5jOjEzNgogbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIGJlIHNoYWxsb3ciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNSBidWlsdGluL2luaXQtZGIuYzo0ODcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzcgYnVpbHRpbi9pbml0LWRiLmM6NDk1CiBtc2dpZCAiZ2l0ZGlyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzYgYnVpbHRpbi9pbml0LWRiLmM6NDg4CisjOiBidWlsdGluL2Nsb25lLmM6MTM4IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5NgogbXNnaWQgInNlcGFyYXRlIGdpdCBkaXIgZnJvbSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNworIzogYnVpbHRpbi9jbG9uZS5jOjEzOQogbXNnaWQgImtleT12YWx1ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM4CisjOiBidWlsdGluL2Nsb25lLmM6MTQwCiBtc2dpZCAic2V0IGNvbmZpZyBpbnNpZGUgdGhlIG5ldyByZXBvc2l0b3J5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzkgYnVpbHRpbi9mZXRjaC5jOjE2NSBidWlsdGluL3B1bGwuYzoyMzAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU4MworIzogYnVpbHRpbi9jbG9uZS5jOjE0MiBidWlsdGluL2ZldGNoLmM6MTkwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzYKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3MyBidWlsdGluL3NlbmQtcGFjay5jOjE3MgorbXNnaWQgInNlcnZlci1zcGVjaWZpYyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQyIGJ1aWx0aW4vZmV0Y2guYzoxOTAgYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9wdXNoLmM6NTczIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTczCittc2dpZCAib3B0aW9uIHRvIHRyYW5zbWl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDMgYnVpbHRpbi9mZXRjaC5jOjE5MSBidWlsdGluL3B1bGwuYzoyMjAKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3NAogbXNnaWQgInVzZSBJUHY0IGFkZHJlc3NlcyBvbmx5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxNDEgYnVpbHRpbi9mZXRjaC5jOjE2NyBidWlsdGluL3B1bGwuYzoyMzMKLSM6IGJ1aWx0aW4vcHVzaC5jOjU4NQorIzogYnVpbHRpbi9jbG9uZS5jOjE0NSBidWlsdGluL2ZldGNoLmM6MTkzIGJ1aWx0aW4vcHVsbC5jOjIyMworIzogYnVpbHRpbi9wdXNoLmM6NTc2CiBtc2dpZCAidXNlIElQdjYgYWRkcmVzc2VzIG9ubHkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjI3OQorIzogYnVpbHRpbi9jbG9uZS5jOjE0OQorbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIHVzZSB0aGVpciByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNTEKK21zZ2lkICJpbml0aWFsaXplIHNwYXJzZS1jaGVja291dCBmaWxlIHRvIGluY2x1ZGUgb25seSBmaWxlcyBhdCByb290IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoyODcKIG1zZ2lkICIiCiAiTm8gZGlyZWN0b3J5IG5hbWUgY291bGQgYmUgZ3Vlc3NlZC5cbiIKICJQbGVhc2Ugc3BlY2lmeSBhIGRpcmVjdG9yeSBvbiB0aGUgY29tbWFuZCBsaW5lIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzozMzIKKyM6IGJ1aWx0aW4vY2xvbmUuYzozNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5mbzogQ291bGQgbm90IGFkZCBhbHRlcm5hdGUgZm9yICclcyc6ICVzXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQwNAotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo0MTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZXhpc3RzIGFuZCBpcyBub3QgYSBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQyNgorIzogYnVpbHRpbi9jbG9uZS5jOjQzMAogIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gc3RhdCAlc1xuIgorbXNnaWQgImZhaWxlZCB0byBzdGFydCBpdGVyYXRvciBvdmVyICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ0MwotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gdW5saW5rICclcyciCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jbG9uZS5jOjQ0OAorIzogYnVpbHRpbi9jbG9uZS5jOjQ2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGxpbmsgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDUyCisjOiBidWlsdGluL2Nsb25lLmM6NDY0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjb3B5IGZpbGUgdG8gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDc4CisjOiBidWlsdGluL2Nsb25lLmM6NDY5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpdGVyYXRlIG92ZXIgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Nsb25lLmM6NDk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImRvbmUuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ5MgorIzogYnVpbHRpbi9jbG9uZS5jOjUwOAogbXNnaWQgIiIKICJDbG9uZSBzdWNjZWVkZWQsIGJ1dCBjaGVja291dCBmYWlsZWQuXG4iCiAiWW91IGNhbiBpbnNwZWN0IHdoYXQgd2FzIGNoZWNrZWQgb3V0IHdpdGggJ2dpdCBzdGF0dXMnXG4iCi0iYW5kIHJldHJ5IHRoZSBjaGVja291dCB3aXRoICdnaXQgY2hlY2tvdXQgLWYgSEVBRCdcbiIKKyJhbmQgcmV0cnkgd2l0aCAnZ2l0IHJlc3RvcmUgLS1zb3VyY2U9SEVBRCA6LydcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NTY5CisjOiBidWlsdGluL2Nsb25lLmM6NTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBmaW5kIHJlbW90ZSBicmFuY2ggJXMgdG8gY2xvbmUuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo2ODAKKyM6IGJ1aWx0aW4vY2xvbmUuYzo3MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NzMwCisjOiBidWlsdGluL2Nsb25lLmM6NzUzCittc2dpZCAiZmFpbGVkIHRvIGluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo3NzYKIG1zZ2lkICJyZW1vdGUgSEVBRCByZWZlcnMgdG8gbm9uZXhpc3RlbnQgcmVmLCB1bmFibGUgdG8gY2hlY2tvdXQuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjc2MQorIzogYnVpbHRpbi9jbG9uZS5jOjgwNwogbXNnaWQgInVuYWJsZSB0byBjaGVja291dCB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjgwNgorIzogYnVpbHRpbi9jbG9uZS5jOjg2MgogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBwYXJhbWV0ZXJzIHRvIGNvbmZpZyBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4NjkKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MjUKIG1zZ2lkICJjYW5ub3QgcmVwYWNrIHRvIGNsZWFuIHVwIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4NzEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MjcKIG1zZ2lkICJjYW5ub3QgdW5saW5rIHRlbXBvcmFyeSBhbHRlcm5hdGVzIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkxMSBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NDEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NjUgYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTUwCiBtc2dpZCAiVG9vIG1hbnkgYXJndW1lbnRzLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTE1CisjOiBidWlsdGluL2Nsb25lLmM6OTY5CiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIHJlcG9zaXRvcnkgdG8gY2xvbmUuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MjgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiLS1iYXJlIGFuZCAtLW9yaWdpbiAlcyBvcHRpb25zIGFyZSBpbmNvbXBhdGlibGUuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MzEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5ODUKIG1zZ2lkICItLWJhcmUgYW5kIC0tc2VwYXJhdGUtZ2l0LWRpciBhcmUgaW5jb21wYXRpYmxlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTQ0CisjOiBidWlsdGluL2Nsb25lLmM6OTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcG9zaXRvcnkgJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTUwIGJ1aWx0aW4vZmV0Y2guYzoxNjA2CisjOiBidWlsdGluL2Nsb25lLmM6MTAwNCBidWlsdGluL2ZldGNoLmM6MTc5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJkZXB0aCAlcyBpcyBub3QgYSBwb3NpdGl2ZSBudW1iZXIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk2MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzdGluYXRpb24gcGF0aCAnJXMnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYW4gZW1wdHkgZGlyZWN0b3J5LiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTcwCisjOiBidWlsdGluL2Nsb25lLmM6MTAyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ3b3JraW5nIHRyZWUgJyVzJyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk4NSBidWlsdGluL2Nsb25lLmM6MTAwNiBidWlsdGluL2RpZmZ0b29sLmM6MjcxCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Mjk1IGJ1aWx0aW4vd29ya3RyZWUuYzozMjUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDM5IGJ1aWx0aW4vY2xvbmUuYzoxMDYwIGJ1aWx0aW4vZGlmZnRvb2wuYzoyNzEKKyM6IGJ1aWx0aW4vbG9nLmM6MTg2NiBidWlsdGluL3dvcmt0cmVlLmM6Mjk1IGJ1aWx0aW4vd29ya3RyZWUuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBsZWFkaW5nIGRpcmVjdG9yaWVzIG9mICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk5MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSB3b3JrIHRyZWUgZGlyICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwMTAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNsb25pbmcgaW50byBiYXJlIHJlcG9zaXRvcnkgJyVzJy4uLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEyCisjOiBidWlsdGluL2Nsb25lLmM6MTA2NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDbG9uaW5nIGludG8gJyVzJy4uLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDM2CisjOiBidWlsdGluL2Nsb25lLmM6MTA5MAogbXNnaWQgIiIKICJjbG9uZSAtLXJlY3Vyc2l2ZSBpcyBub3QgY29tcGF0aWJsZSB3aXRoIGJvdGggLS1yZWZlcmVuY2UgYW5kIC0tcmVmZXJlbmNlLWlmLSIKICJhYmxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDk3CisjOiBidWlsdGluL2Nsb25lLmM6MTE1NAogbXNnaWQgIi0tZGVwdGggaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDk5CisjOiBidWlsdGluL2Nsb25lLmM6MTE1NgogbXNnaWQgIi0tc2hhbGxvdy1zaW5jZSBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMDEKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTU4CiBtc2dpZCAiLS1zaGFsbG93LWV4Y2x1ZGUgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAzCisjOiBidWlsdGluL2Nsb25lLmM6MTE2MAogbXNnaWQgIi0tZmlsdGVyIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTEwNgorIzogYnVpbHRpbi9jbG9uZS5jOjExNjMKIG1zZ2lkICJzb3VyY2UgcmVwb3NpdG9yeSBpcyBzaGFsbG93LCBpZ25vcmluZyAtLWxvY2FsIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTExCisjOiBidWlsdGluL2Nsb25lLmM6MTE2OAogbXNnaWQgIi0tbG9jYWwgaXMgaWdub3JlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE4MSBidWlsdGluL2Nsb25lLmM6MTE4OQorIzogYnVpbHRpbi9jbG9uZS5jOjEyNDMgYnVpbHRpbi9jbG9uZS5jOjEyNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3RlIGJyYW5jaCAlcyBub3QgZm91bmQgaW4gdXBzdHJlYW0gJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExOTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjU0CiBtc2dpZCAiWW91IGFwcGVhciB0byBoYXZlIGNsb25lZCBhbiBlbXB0eSByZXBvc2l0b3J5LiIKIG1zZ3N0ciAiIgogCkBAIC04ODY4LDIyICsxMTM3MCw4OCBAQAogbXNnaWQgIi0tY29tbWFuZCBtdXN0IGJlIHRoZSBmaXJzdCBhcmd1bWVudCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQwCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTgKK21zZ2lkICIiCisiZ2l0IGNvbW1pdC10cmVlIFsoLXAgPHBhcmVudD4pLi4uXSBbLVNbPGtleWlkPl1dIFsoLW0gPG1lc3NhZ2U+KS4uLl0gWygtRiAiCisiPGZpbGU+KS4uLl0gPHRyZWU+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzozMQorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGFyZW50ICVzIGlnbm9yZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjU2IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMzYgYnVpbHRpbi9sb2cuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0IG5hbWUgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIG9wZW4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gcmVhZCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzo5OAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byBjbG9zZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTEKK21zZ2lkICJwYXJlbnQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExMgorbXNnaWQgImlkIG9mIGEgcGFyZW50IGNvbW1pdCBvYmplY3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExNCBidWlsdGluL2NvbW1pdC5jOjE1MDEgYnVpbHRpbi9tZXJnZS5jOjI3MQorIzogYnVpbHRpbi9ub3Rlcy5jOjQwOSBidWlsdGluL25vdGVzLmM6NTc1IGJ1aWx0aW4vc3Rhc2guYzoxNDc3CisjOiBidWlsdGluL3RhZy5jOjQxMgorbXNnaWQgIm1lc3NhZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExNSBidWlsdGluL2NvbW1pdC5jOjE1MDEKK21zZ2lkICJjb21taXQgbWVzc2FnZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE4Cittc2dpZCAicmVhZCBjb21taXQgbG9nIG1lc3NhZ2UgZnJvbSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMjEgYnVpbHRpbi9jb21taXQuYzoxNTEzIGJ1aWx0aW4vbWVyZ2UuYzoyODgKKyM6IGJ1aWx0aW4vcHVsbC5jOjE3NSBidWlsdGluL3JldmVydC5jOjExOAorbXNnaWQgIkdQRyBzaWduIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTMzCittc2dpZCAibXVzdCBnaXZlIGV4YWN0bHkgb25lIHRyZWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjE0MAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQuYzo0MQogbXNnaWQgImdpdCBjb21taXQgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDYKIG1zZ2lkICJnaXQgc3RhdHVzIFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjUwCisjOiBidWlsdGluL2NvbW1pdC5jOjUxCiBtc2dpZCAiIgogIllvdSBhc2tlZCB0byBhbWVuZCB0aGUgbW9zdCByZWNlbnQgY29tbWl0LCBidXQgZG9pbmcgc28gd291bGQgbWFrZVxuIgogIml0IGVtcHR5LiBZb3UgY2FuIHJlcGVhdCB5b3VyIGNvbW1hbmQgd2l0aCAtLWFsbG93LWVtcHR5LCBvciB5b3UgY2FuXG4iCiAicmVtb3ZlIHRoZSBjb21taXQgZW50aXJlbHkgd2l0aCBcImdpdCByZXNldCBIRUFEXlwiLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTYKIG1zZ2lkICIiCiAiVGhlIHByZXZpb3VzIGNoZXJyeS1waWNrIGlzIG5vdyBlbXB0eSwgcG9zc2libHkgZHVlIHRvIGNvbmZsaWN0IHJlc29sdXRpb24uXG4iCiAiSWYgeW91IHdpc2ggdG8gY29tbWl0IGl0IGFueXdheSwgdXNlOlxuIgpAQCAtODg5MiwxMTIgKzExNDYwLDEyMyBAQAogIlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjIKLW1zZ2lkICJPdGhlcndpc2UsIHBsZWFzZSB1c2UgJ2dpdCByZXNldCdcbiIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjMKK21zZ2lkICJPdGhlcndpc2UsIHBsZWFzZSB1c2UgJ2dpdCBjaGVycnktcGljayAtLXNraXAnXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2NQorIzogYnVpbHRpbi9jb21taXQuYzo2NgogbXNnaWQgIiIKKyJhbmQgdGhlbiB1c2U6XG4iCisiXG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXG4iCisiXG4iCisidG8gcmVzdW1lIGNoZXJyeS1waWNraW5nIHRoZSByZW1haW5pbmcgY29tbWl0cy5cbiIKICJJZiB5b3Ugd2lzaCB0byBza2lwIHRoaXMgY29tbWl0LCB1c2U6XG4iCiAiXG4iCi0iICAgIGdpdCByZXNldFxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXG4iCiAiXG4iCi0iVGhlbiBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgd2lsbCByZXN1bWUgY2hlcnJ5LXBpY2tpbmdcbiIKLSJ0aGUgcmVtYWluaW5nIGNvbW1pdHMuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzozMTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzE1CiBtc2dpZCAiZmFpbGVkIHRvIHVucGFjayBIRUFEIHRyZWUgb2JqZWN0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzUyCisjOiBidWlsdGluL2NvbW1pdC5jOjM1MQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjM2NAorbXNnaWQgIk5vIHBhdGhzIHdpdGggLS1pbmNsdWRlLy0tb25seSBkb2VzIG5vdCBtYWtlIHNlbnNlLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjM3NgogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGluZGV4IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzU4CisjOiBidWlsdGluL2NvbW1pdC5jOjM4NQogbXNnaWQgImludGVyYWN0aXZlIGFkZCBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNzEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDAwCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNzMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDAyCiBtc2dpZCAiRmFpbGVkIHRvIHVwZGF0ZSBtYWluIGNhY2hlIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzozOTggYnVpbHRpbi9jb21taXQuYzo0MjEgYnVpbHRpbi9jb21taXQuYzo0NjcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDI3IGJ1aWx0aW4vY29tbWl0LmM6NDUwIGJ1aWx0aW4vY29tbWl0LmM6NDk2CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ld19pbmRleCBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDUwCisjOiBidWlsdGluL2NvbW1pdC5jOjQ3OQogbXNnaWQgImNhbm5vdCBkbyBhIHBhcnRpYWwgY29tbWl0IGR1cmluZyBhIG1lcmdlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ1MgorIzogYnVpbHRpbi9jb21taXQuYzo0ODEKIG1zZ2lkICJjYW5ub3QgZG8gYSBwYXJ0aWFsIGNvbW1pdCBkdXJpbmcgYSBjaGVycnktcGljay4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NjAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDg5CiBtc2dpZCAiY2Fubm90IHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDc5CisjOiBidWlsdGluL2NvbW1pdC5jOjUwOAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0ZW1wb3JhcnkgaW5kZXggZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3NworIzogYnVpbHRpbi9jb21taXQuYzo2MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgbGFja3MgYXV0aG9yIGhlYWRlciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3OQorIzogYnVpbHRpbi9jb21taXQuYzo2MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgaGFzIG1hbGZvcm1lZCBhdXRob3IgbGluZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU5OAorIzogYnVpbHRpbi9jb21taXQuYzo2MjcKIG1zZ2lkICJtYWxmb3JtZWQgLS1hdXRob3IgcGFyYW1ldGVyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjUwCisjOiBidWlsdGluL2NvbW1pdC5jOjY4MAogbXNnaWQgIiIKICJ1bmFibGUgdG8gc2VsZWN0IGEgY29tbWVudCBjaGFyYWN0ZXIgdGhhdCBpcyBub3QgdXNlZFxuIgogImluIHRoZSBjdXJyZW50IGNvbW1pdCBtZXNzYWdlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Njg3IGJ1aWx0aW4vY29tbWl0LmM6NzIwIGJ1aWx0aW4vY29tbWl0LmM6MTA0OQorIzogYnVpbHRpbi9jb21taXQuYzo3MTggYnVpbHRpbi9jb21taXQuYzo3NTEgYnVpbHRpbi9jb21taXQuYzoxMDk3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb29rdXAgY29tbWl0ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Njk5IGJ1aWx0aW4vc2hvcnRsb2cuYzozMTcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzMwIGJ1aWx0aW4vc2hvcnRsb2cuYzozMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiKHJlYWRpbmcgbG9nIG1lc3NhZ2UgZnJvbSBzdGFuZGFyZCBpbnB1dClcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjcwMQorIzogYnVpbHRpbi9jb21taXQuYzo3MzIKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBsb2cgZnJvbSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjcwNQorIzogYnVpbHRpbi9jb21taXQuYzo3MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZpbGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjczNCBidWlsdGluL2NvbW1pdC5jOjc0MgorIzogYnVpbHRpbi9jb21taXQuYzo3NjcgYnVpbHRpbi9jb21taXQuYzo3ODMKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBTUVVBU0hfTVNHIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzM5CisjOiBidWlsdGluL2NvbW1pdC5jOjc3NAogbXNnaWQgImNvdWxkIG5vdCByZWFkIE1FUkdFX01TRyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjc5MworIzogYnVpbHRpbi9jb21taXQuYzo4MzQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29tbWl0IHRlbXBsYXRlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODExCisjOiBidWlsdGluL2NvbW1pdC5jOjg1MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC05MDA3LDcgKzExNTg2LDcgQEAKICJhbmQgdHJ5IGFnYWluLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODE2CisjOiBidWlsdGluL2NvbW1pdC5jOjg1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC05MDE3LDE0ICsxMTU5NiwxNCBAQAogImFuZCB0cnkgYWdhaW4uXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MjkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQbGVhc2UgZW50ZXIgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB5b3VyIGNoYW5nZXMuIExpbmVzIHN0YXJ0aW5nXG4iCiAid2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQbGVhc2UgZW50ZXIgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB5b3VyIGNoYW5nZXMuIExpbmVzIHN0YXJ0aW5nXG4iCkBAIC05MDMyLDM5OCArMTE2MTEsMzg2IEBACiAiQW4gZW1wdHkgbWVzc2FnZSBhYm9ydHMgdGhlIGNvbW1pdC5cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjg1NAorIzogYnVpbHRpbi9jb21taXQuYzo4OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXNBdXRob3I6ICAgICUuKnMgPCUuKnM+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODYyCisjOiBidWlsdGluL2NvbW1pdC5jOjkwNAogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0RhdGU6ICAgICAgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4NjkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTExCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzQ29tbWl0dGVyOiAlLipzIDwlLipzPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjg4NworIzogYnVpbHRpbi9jb21taXQuYzo5MjkKIG1zZ2lkICJDYW5ub3QgcmVhZCBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjk1MworIzogYnVpbHRpbi9jb21taXQuYzo5OTcKIG1zZ2lkICJFcnJvciBidWlsZGluZyB0cmVlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjk2NyBidWlsdGluL3RhZy5jOjI1OAorIzogYnVpbHRpbi9jb21taXQuYzoxMDExIGJ1aWx0aW4vdGFnLmM6Mjc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlBsZWFzZSBzdXBwbHkgdGhlIG1lc3NhZ2UgdXNpbmcgZWl0aGVyIC1tIG9yIC1GIG9wdGlvbi5cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwMTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA1NQogIywgYy1mb3JtYXQKIG1zZ2lkICItLWF1dGhvciAnJXMnIGlzIG5vdCAnTmFtZSA8ZW1haWw+JyBhbmQgbWF0Y2hlcyBubyBleGlzdGluZyBhdXRob3IiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDI1CisjOiBidWlsdGluL2NvbW1pdC5jOjEwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBpZ25vcmVkIG1vZGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwMzkgYnVpbHRpbi9jb21taXQuYzoxMjc2CisjOiBidWlsdGluL2NvbW1pdC5jOjEwODcgYnVpbHRpbi9jb21taXQuYzoxMzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdW50cmFja2VkIGZpbGVzIG1vZGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwNzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNwogbXNnaWQgIi0tbG9uZyBhbmQgLXogYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE3MQogbXNnaWQgIlVzaW5nIGJvdGggLS1yZXNldC1hdXRob3IgYW5kIC0tYXV0aG9yIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTE5CisjOiBidWlsdGluL2NvbW1pdC5jOjExODAKIG1zZ2lkICJZb3UgaGF2ZSBub3RoaW5nIHRvIGFtZW5kLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MwogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIC0tIGNhbm5vdCBhbWVuZC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTI0CisjOiBidWlsdGluL2NvbW1pdC5jOjExODUKIG1zZ2lkICJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSBjaGVycnktcGljayAtLSBjYW5ub3QgYW1lbmQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNworIzogYnVpbHRpbi9jb21taXQuYzoxMTg4CiBtc2dpZCAiT3B0aW9ucyAtLXNxdWFzaCBhbmQgLS1maXh1cCBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE5OAogbXNnaWQgIk9ubHkgb25lIG9mIC1jLy1DLy1GLy0tZml4dXAgY2FuIGJlIHVzZWQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEzOQorIzogYnVpbHRpbi9jb21taXQuYzoxMjAwCiBtc2dpZCAiT3B0aW9uIC1tIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIC1jLy1DLy1GLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNDcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIwOAogbXNnaWQgIi0tcmVzZXQtYXV0aG9yIGNhbiBiZSB1c2VkIG9ubHkgd2l0aCAtQywgLWMgb3IgLS1hbWVuZC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTY0CisjOiBidWlsdGluL2NvbW1pdC5jOjEyMjUKIG1zZ2lkICJPbmx5IG9uZSBvZiAtLWluY2x1ZGUvLS1vbmx5Ly0tYWxsLy0taW50ZXJhY3RpdmUvLS1wYXRjaCBjYW4gYmUgdXNlZC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTY2Ci1tc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MCBidWlsdGluL3RhZy5jOjU0NgorIzogYnVpbHRpbi9jb21taXQuYzoxMjMxCiAjLCBjLWZvcm1hdAotbXNnaWQgIkludmFsaWQgY2xlYW51cCBtb2RlICVzIgorbXNnaWQgInBhdGhzICclcyAuLi4nIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExODUKLW1zZ2lkICJQYXRocyB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxMSBidWlsdGluL2NvbW1pdC5jOjE0OTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MiBidWlsdGluL2NvbW1pdC5jOjE1MjQKIG1zZ2lkICJzaG93IHN0YXR1cyBjb25jaXNlbHkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzEzIGJ1aWx0aW4vY29tbWl0LmM6MTQ5NworIzogYnVpbHRpbi9jb21taXQuYzoxMzY0IGJ1aWx0aW4vY29tbWl0LmM6MTUyNgogbXNnaWQgInNob3cgYnJhbmNoIGluZm9ybWF0aW9uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxNQorIzogYnVpbHRpbi9jb21taXQuYzoxMzY2CiBtc2dpZCAic2hvdyBzdGFzaCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTcgYnVpbHRpbi9jb21taXQuYzoxNDk5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjggYnVpbHRpbi9jb21taXQuYzoxNTI4CiBtc2dpZCAiY29tcHV0ZSBmdWxsIGFoZWFkL2JlaGluZCB2YWx1ZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzE5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzAKIG1zZ2lkICJ2ZXJzaW9uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxOSBidWlsdGluL2NvbW1pdC5jOjE1MDEgYnVpbHRpbi9wdXNoLmM6NTU4Ci0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjM5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzAgYnVpbHRpbi9jb21taXQuYzoxNTMwIGJ1aWx0aW4vcHVzaC5jOjU0OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY0MwogbXNnaWQgIm1hY2hpbmUtcmVhZGFibGUgb3V0cHV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyMiBidWlsdGluL2NvbW1pdC5jOjE1MDMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3MyBidWlsdGluL2NvbW1pdC5jOjE1MzIKIG1zZ2lkICJzaG93IHN0YXR1cyBpbiBsb25nIGZvcm1hdCAoZGVmYXVsdCkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzI1IGJ1aWx0aW4vY29tbWl0LmM6MTUwNgorIzogYnVpbHRpbi9jb21taXQuYzoxMzc2IGJ1aWx0aW4vY29tbWl0LmM6MTUzNQogbXNnaWQgInRlcm1pbmF0ZSBlbnRyaWVzIHdpdGggTlVMIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNyBidWlsdGluL2NvbW1pdC5jOjEzMzEgYnVpbHRpbi9jb21taXQuYzoxNTA5Ci0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAwNyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMCBidWlsdGluL3JlYmFzZS5jOjkxMAotIzogYnVpbHRpbi90YWcuYzo0MDAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3OCBidWlsdGluL2NvbW1pdC5jOjEzODIgYnVpbHRpbi9jb21taXQuYzoxNTM4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1MyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTkgYnVpbHRpbi9yZWJhc2UuYzoxNTY5IHBhcnNlLW9wdGlvbnMuaDozMzYKIG1zZ2lkICJtb2RlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyOCBidWlsdGluL2NvbW1pdC5jOjE1MDkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3OSBidWlsdGluL2NvbW1pdC5jOjE1MzgKIG1zZ2lkICJzaG93IHVudHJhY2tlZCBmaWxlcywgb3B0aW9uYWwgbW9kZXM6IGFsbCwgbm9ybWFsLCBuby4gKERlZmF1bHQ6IGFsbCkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzMyCisjOiBidWlsdGluL2NvbW1pdC5jOjEzODMKIG1zZ2lkICIiCiAic2hvdyBpZ25vcmVkIGZpbGVzLCBvcHRpb25hbCBtb2RlczogdHJhZGl0aW9uYWwsIG1hdGNoaW5nLCBuby4gKERlZmF1bHQ6ICIKICJ0cmFkaXRpb25hbCkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM0IHBhcnNlLW9wdGlvbnMuaDoxNjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4NSBwYXJzZS1vcHRpb25zLmg6MTkyCiBtc2dpZCAid2hlbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4NgogbXNnaWQgIiIKICJpZ25vcmUgY2hhbmdlcyB0byBzdWJtb2R1bGVzLCBvcHRpb25hbCB3aGVuOiBhbGwsIGRpcnR5LCB1bnRyYWNrZWQuICIKICIoRGVmYXVsdDogYWxsKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4OAogbXNnaWQgImxpc3QgdW50cmFja2VkIGZpbGVzIGluIGNvbHVtbnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM4CisjOiBidWlsdGluL2NvbW1pdC5jOjEzODkKIG1zZ2lkICJkbyBub3QgZGV0ZWN0IHJlbmFtZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzQwCisjOiBidWlsdGluL2NvbW1pdC5jOjEzOTEKIG1zZ2lkICJkZXRlY3QgcmVuYW1lcywgb3B0aW9uYWxseSBzZXQgc2ltaWxhcml0eSBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzNjAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQxMQogbXNnaWQgIlVuc3VwcG9ydGVkIGNvbWJpbmF0aW9uIG9mIGlnbm9yZWQgYW5kIHVudHJhY2tlZC1maWxlcyBhcmd1bWVudHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDY1CisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTQKIG1zZ2lkICJzdXBwcmVzcyBzdW1tYXJ5IGFmdGVyIHN1Y2Nlc3NmdWwgY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2NgorIzogYnVpbHRpbi9jb21taXQuYzoxNDk1CiBtc2dpZCAic2hvdyBkaWZmIGluIGNvbW1pdCBtZXNzYWdlIHRlbXBsYXRlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2OAorIzogYnVpbHRpbi9jb21taXQuYzoxNDk3CiBtc2dpZCAiQ29tbWl0IG1lc3NhZ2Ugb3B0aW9ucyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjkgYnVpbHRpbi9tZXJnZS5jOjI2MyBidWlsdGluL3RhZy5jOjM5NworIzogYnVpbHRpbi9jb21taXQuYzoxNDk4IGJ1aWx0aW4vbWVyZ2UuYzoyNzUgYnVpbHRpbi90YWcuYzo0MTQKIG1zZ2lkICJyZWFkIG1lc3NhZ2UgZnJvbSBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MAorIzogYnVpbHRpbi9jb21taXQuYzoxNDk5CiBtc2dpZCAiYXV0aG9yIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MAorIzogYnVpbHRpbi9jb21taXQuYzoxNDk5CiBtc2dpZCAib3ZlcnJpZGUgYXV0aG9yIGZvciBjb21taXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcxIGJ1aWx0aW4vZ2MuYzo1MTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMCBidWlsdGluL2djLmM6NTM4CiBtc2dpZCAiZGF0ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMAogbXNnaWQgIm92ZXJyaWRlIGRhdGUgZm9yIGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzIgYnVpbHRpbi9tZXJnZS5jOjI1OSBidWlsdGluL25vdGVzLmM6NDA5Ci0jOiBidWlsdGluL25vdGVzLmM6NTcyIGJ1aWx0aW4vdGFnLmM6Mzk1Ci1tc2dpZCAibWVzc2FnZSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzIKLW1zZ2lkICJjb21taXQgbWVzc2FnZSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzMgYnVpbHRpbi9jb21taXQuYzoxNDc0IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NQotIzogYnVpbHRpbi9jb21taXQuYzoxNDc2IHJlZi1maWx0ZXIuaDo5MiBwYXJzZS1vcHRpb25zLmg6MjgwCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDIgYnVpbHRpbi9jb21taXQuYzoxNTAzIGJ1aWx0aW4vY29tbWl0LmM6MTUwNAorIzogYnVpbHRpbi9jb21taXQuYzoxNTA1IHBhcnNlLW9wdGlvbnMuaDozMjggcmVmLWZpbHRlci5oOjkyCiBtc2dpZCAiY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MworIzogYnVpbHRpbi9jb21taXQuYzoxNTAyCiBtc2dpZCAicmV1c2UgYW5kIGVkaXQgbWVzc2FnZSBmcm9tIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc0CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDMKIG1zZ2lkICJyZXVzZSBtZXNzYWdlIGZyb20gc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNAogbXNnaWQgInVzZSBhdXRvc3F1YXNoIGZvcm1hdHRlZCBtZXNzYWdlIHRvIGZpeHVwIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc2CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDUKIG1zZ2lkICJ1c2UgYXV0b3NxdWFzaCBmb3JtYXR0ZWQgbWVzc2FnZSB0byBzcXVhc2ggc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNgogbXNnaWQgInRoZSBjb21taXQgaXMgYXV0aG9yZWQgYnkgbWUgbm93ICh1c2VkIHdpdGggLUMvLWMvLS1hbWVuZCkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc4IGJ1aWx0aW4vbG9nLmM6MTUyMCBidWlsdGluL21lcmdlLmM6Mjc2Ci0jOiBidWlsdGluL3B1bGwuYzoxNTUgYnVpbHRpbi9yZXZlcnQuYzoxMDYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNyBidWlsdGluL2xvZy5jOjE2MzQgYnVpbHRpbi9tZXJnZS5jOjI5MAorIzogYnVpbHRpbi9wdWxsLmM6MTQ0IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCiBtc2dpZCAiYWRkIFNpZ25lZC1vZmYtYnk6IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3OQorIzogYnVpbHRpbi9jb21taXQuYzoxNTA4CiBtc2dpZCAidXNlIHNwZWNpZmllZCB0ZW1wbGF0ZSBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MAorIzogYnVpbHRpbi9jb21taXQuYzoxNTA5CiBtc2dpZCAiZm9yY2UgZWRpdCBvZiBjb21taXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDgxCi1tc2dpZCAiZGVmYXVsdCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODEgYnVpbHRpbi90YWcuYzo0MDEKLW1zZ2lkICJob3cgdG8gc3RyaXAgc3BhY2VzIGFuZCAjY29tbWVudHMgZnJvbSBtZXNzYWdlIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MgorIzogYnVpbHRpbi9jb21taXQuYzoxNTExCiBtc2dpZCAiaW5jbHVkZSBzdGF0dXMgaW4gY29tbWl0IG1lc3NhZ2UgdGVtcGxhdGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDg0IGJ1aWx0aW4vbWVyZ2UuYzoyNzQgYnVpbHRpbi9wdWxsLmM6MTg1Ci0jOiBidWlsdGluL3JldmVydC5jOjExNAotbXNnaWQgIkdQRyBzaWduIGNvbW1pdCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNgogbXNnaWQgIkNvbW1pdCBjb250ZW50cyBvcHRpb25zIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4OAorIzogYnVpbHRpbi9jb21taXQuYzoxNTE3CiBtc2dpZCAiY29tbWl0IGFsbCBjaGFuZ2VkIGZpbGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4OQorIzogYnVpbHRpbi9jb21taXQuYzoxNTE4CiBtc2dpZCAiYWRkIHNwZWNpZmllZCBmaWxlcyB0byBpbmRleCBmb3IgY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MAorIzogYnVpbHRpbi9jb21taXQuYzoxNTE5CiBtc2dpZCAiaW50ZXJhY3RpdmVseSBhZGQgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDkxCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjAKIG1zZ2lkICJpbnRlcmFjdGl2ZWx5IGFkZCBjaGFuZ2VzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MgorIzogYnVpbHRpbi9jb21taXQuYzoxNTIxCiBtc2dpZCAiY29tbWl0IG9ubHkgc3BlY2lmaWVkIGZpbGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MworIzogYnVpbHRpbi9jb21taXQuYzoxNTIyCiBtc2dpZCAiYnlwYXNzIHByZS1jb21taXQgYW5kIGNvbW1pdC1tc2cgaG9va3MiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDk0CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjMKIG1zZ2lkICJzaG93IHdoYXQgd291bGQgYmUgY29tbWl0dGVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNworIzogYnVpbHRpbi9jb21taXQuYzoxNTM2CiBtc2dpZCAiYW1lbmQgcHJldmlvdXMgY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwOAorIzogYnVpbHRpbi9jb21taXQuYzoxNTM3CiBtc2dpZCAiYnlwYXNzIHBvc3QtcmV3cml0ZSBob29rIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxMworIzogYnVpbHRpbi9jb21taXQuYzoxNTQ0CiBtc2dpZCAib2sgdG8gcmVjb3JkIGFuIGVtcHR5IGNoYW5nZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTU0NgogbXNnaWQgIm9rIHRvIHJlY29yZCBhIGNoYW5nZSB3aXRoIGFuIGVtcHR5IG1lc3NhZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE2MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29ycnVwdCBNRVJHRV9IRUFEIGZpbGUgKCVzKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1OTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTYyNgogbXNnaWQgImNvdWxkIG5vdCByZWFkIE1FUkdFX01PREUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjE0CisjOiBidWlsdGluL2NvbW1pdC5jOjE2NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgY29tbWl0IG1lc3NhZ2U6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTYyNQorIzogYnVpbHRpbi9jb21taXQuYzoxNjUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFib3J0aW5nIGNvbW1pdCBkdWUgdG8gZW1wdHkgY29tbWl0IG1lc3NhZ2UuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjMwCisjOiBidWlsdGluL2NvbW1pdC5jOjE2NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmcgY29tbWl0OyB5b3UgZGlkIG5vdCBlZGl0IHRoZSBtZXNzYWdlLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTY2NQorIzogYnVpbHRpbi9jb21taXQuYzoxNjkxCiBtc2dpZCAiIgogInJlcG9zaXRvcnkgaGFzIGJlZW4gdXBkYXRlZCwgYnV0IHVuYWJsZSB0byB3cml0ZVxuIgogIm5ld19pbmRleCBmaWxlLiBDaGVjayB0aGF0IGRpc2sgaXMgbm90IGZ1bGwgYW5kIHF1b3RhIGlzXG4iCi0ibm90IGV4Y2VlZGVkLCBhbmQgdGhlbiBcImdpdCByZXNldCBIRUFEXCIgdG8gcmVjb3Zlci4iCisibm90IGV4Y2VlZGVkLCBhbmQgdGhlbiBcImdpdCByZXN0b3JlIC0tc3RhZ2VkIDovXCIgdG8gcmVjb3Zlci4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMAotbXNnaWQgImdpdCBjb21taXQtZ3JhcGggWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIzCi1tc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCByZWFkIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTIgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxOAotbXNnaWQgImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyOAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE3CiBtc2dpZCAiIgotImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tYXBwZW5kXSBbLS1yZWFjaGFibGV8LS0iCi0ic3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSIKKyJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1zaGFsbG93XSBbLS1bbm8tXXByb2dyZXNzXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjQ4IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzgKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMyIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTkwIGJ1aWx0aW4vZmV0Y2guYzoxNTMKLSM6IGJ1aWx0aW4vbG9nLmM6MTU0MAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIyCittc2dpZCAiIgorImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tYXBwZW5kfC0tc3BsaXRdIFstLSIKKyJyZWFjaGFibGV8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIFstLVtuby1dcHJvZ3Jlc3NdIDxzcGxpdCBvcHRpb25zPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5kIG9iamVjdCBkaXJlY3RvcnkgbWF0Y2hpbmcgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo2OCBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyNQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMTAgYnVpbHRpbi9mZXRjaC5jOjE3OSBidWlsdGluL2xvZy5jOjE2NTcKIG1zZ2lkICJkaXIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo0OSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjc5Ci0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzMyBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE5MQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo2OSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyNgorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMTEKIG1zZ2lkICJUaGUgb2JqZWN0IGRpcmVjdG9yeSB0byBzdG9yZSB0aGUgZ3JhcGgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzUKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzEKK21zZ2lkICJpZiB0aGUgY29tbWl0LWdyYXBoIGlzIHNwbGl0LCBvbmx5IHZlcmlmeSB0aGUgdGlwIGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo5NCB0L2hlbHBlci90ZXN0LXJlYWQtZ3JhcGguYzoyMworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgb3BlbiBjb21taXQtZ3JhcGggJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyOAogbXNnaWQgInN0YXJ0IHdhbGsgYXQgYWxsIHJlZnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzcKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMwCiBtc2dpZCAic2NhbiBwYWNrLWluZGV4ZXMgbGlzdGVkIGJ5IHN0ZGluIGZvciBjb21taXRzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM5CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzMgogbXNnaWQgInN0YXJ0IHdhbGsgYXQgY29tbWl0cyBsaXN0ZWQgYnkgc3RkaW4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDEKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM0CiBtc2dpZCAiaW5jbHVkZSBhbGwgY29tbWl0cyBhbHJlYWR5IGluIHRoZSBjb21taXQtZ3JhcGggZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE1MAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzcKK21zZ2lkICJhbGxvdyB3cml0aW5nIGFuIGluY3JlbWVudGFsIGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM5IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTQzCittc2dpZCAibWF4aW11bSBudW1iZXIgb2YgY29tbWl0cyBpbiBhIG5vbi1iYXNlIHNwbGl0IGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0MQorbXNnaWQgIm1heGltdW0gcmF0aW8gYmV0d2VlbiB0d28gbGV2ZWxzIG9mIGEgc3BsaXQgY29tbWl0LWdyYXBoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTU5CiBtc2dpZCAidXNlIGF0IG1vc3Qgb25lIG9mIC0tcmVhY2hhYmxlLCAtLXN0ZGluLWNvbW1pdHMsIG9yIC0tc3RkaW4tcGFja3MiCiBtc2dzdHIgIiIKIApAQCAtOTQzMSwyMDUgKzExOTk4LDIwOSBAQAogbXNnaWQgImdpdCBjb25maWcgWzxvcHRpb25zPl0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMDMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTA0IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzoyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgLS10eXBlIGFyZ3VtZW50LCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjExNQorIzogYnVpbHRpbi9jb25maWcuYzoxMTYKIG1zZ2lkICJvbmx5IG9uZSB0eXBlIGF0IGEgdGltZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNAorIzogYnVpbHRpbi9jb25maWcuYzoxMjUKIG1zZ2lkICJDb25maWcgZmlsZSBsb2NhdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNQorIzogYnVpbHRpbi9jb25maWcuYzoxMjYKIG1zZ2lkICJ1c2UgZ2xvYmFsIGNvbmZpZyBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTI2CisjOiBidWlsdGluL2NvbmZpZy5jOjEyNwogbXNnaWQgInVzZSBzeXN0ZW0gY29uZmlnIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI4CiBtc2dpZCAidXNlIHJlcG9zaXRvcnkgY29uZmlnIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI5CiBtc2dpZCAidXNlIHBlci13b3JrdHJlZSBjb25maWcgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyOQorIzogYnVpbHRpbi9jb25maWcuYzoxMzAKIG1zZ2lkICJ1c2UgZ2l2ZW4gY29uZmlnIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMxCiBtc2dpZCAiYmxvYi1pZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMAorIzogYnVpbHRpbi9jb25maWcuYzoxMzEKIG1zZ2lkICJyZWFkIGNvbmZpZyBmcm9tIGdpdmVuIGJsb2Igb2JqZWN0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTMxCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMgogbXNnaWQgIkFjdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMgorIzogYnVpbHRpbi9jb25maWcuYzoxMzMKIG1zZ2lkICJnZXQgdmFsdWU6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMworIzogYnVpbHRpbi9jb25maWcuYzoxMzQKIG1zZ2lkICJnZXQgYWxsIHZhbHVlczoga2V5IFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM1CiBtc2dpZCAiZ2V0IHZhbHVlcyBmb3IgcmVnZXhwOiBuYW1lLXJlZ2V4IFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM2CiBtc2dpZCAiZ2V0IHZhbHVlIHNwZWNpZmljIGZvciB0aGUgVVJMOiBzZWN0aW9uWy52YXJdIFVSTCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNgorIzogYnVpbHRpbi9jb25maWcuYzoxMzcKIG1zZ2lkICJyZXBsYWNlIGFsbCBtYXRjaGluZyB2YXJpYWJsZXM6IG5hbWUgdmFsdWUgW3ZhbHVlX3JlZ2V4XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNworIzogYnVpbHRpbi9jb25maWcuYzoxMzgKIG1zZ2lkICJhZGQgYSBuZXcgdmFyaWFibGU6IG5hbWUgdmFsdWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM5CiBtc2dpZCAicmVtb3ZlIGEgdmFyaWFibGU6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzOQorIzogYnVpbHRpbi9jb25maWcuYzoxNDAKIG1zZ2lkICJyZW1vdmUgYWxsIG1hdGNoZXM6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0MAorIzogYnVpbHRpbi9jb25maWcuYzoxNDEKIG1zZ2lkICJyZW5hbWUgc2VjdGlvbjogb2xkLW5hbWUgbmV3LW5hbWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQyCiBtc2dpZCAicmVtb3ZlIGEgc2VjdGlvbjogbmFtZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0MgorIzogYnVpbHRpbi9jb25maWcuYzoxNDMKIG1zZ2lkICJsaXN0IGFsbCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0MworIzogYnVpbHRpbi9jb25maWcuYzoxNDQKIG1zZ2lkICJvcGVuIGFuIGVkaXRvciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NAorIzogYnVpbHRpbi9jb25maWcuYzoxNDUKIG1zZ2lkICJmaW5kIHRoZSBjb2xvciBjb25maWd1cmVkOiBzbG90IFtkZWZhdWx0XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NQorIzogYnVpbHRpbi9jb25maWcuYzoxNDYKIG1zZ2lkICJmaW5kIHRoZSBjb2xvciBzZXR0aW5nOiBzbG90IFtzdGRvdXQtaXMtdHR5XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NgorIzogYnVpbHRpbi9jb25maWcuYzoxNDcKIG1zZ2lkICJUeXBlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ3CisjOiBidWlsdGluL2NvbmZpZy5jOjE0OCBidWlsdGluL2Vudi0taGVscGVyLmM6MzgKIG1zZ2lkICJ2YWx1ZSBpcyBnaXZlbiB0aGlzIHR5cGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ5CiBtc2dpZCAidmFsdWUgaXMgXCJ0cnVlXCIgb3IgXCJmYWxzZVwiIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ5CisjOiBidWlsdGluL2NvbmZpZy5jOjE1MAogbXNnaWQgInZhbHVlIGlzIGRlY2ltYWwgbnVtYmVyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUwCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MQogbXNnaWQgInZhbHVlIGlzIC0tYm9vbCBvciAtLWludCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1MQorIzogYnVpbHRpbi9jb25maWcuYzoxNTIKIG1zZ2lkICJ2YWx1ZSBpcyBhIHBhdGggKGZpbGUgb3IgZGlyZWN0b3J5IG5hbWUpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUyCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MwogbXNnaWQgInZhbHVlIGlzIGFuIGV4cGlyeSBkYXRlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUzCisjOiBidWlsdGluL2NvbmZpZy5jOjE1NAogbXNnaWQgIk90aGVyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU0CisjOiBidWlsdGluL2NvbmZpZy5jOjE1NQogbXNnaWQgInRlcm1pbmF0ZSB2YWx1ZXMgd2l0aCBOVUwgYnl0ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NQorIzogYnVpbHRpbi9jb25maWcuYzoxNTYKIG1zZ2lkICJzaG93IHZhcmlhYmxlIG5hbWVzIG9ubHkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU3CiBtc2dpZCAicmVzcGVjdCBpbmNsdWRlIGRpcmVjdGl2ZXMgb24gbG9va3VwIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU3CisjOiBidWlsdGluL2NvbmZpZy5jOjE1OAogbXNnaWQgInNob3cgb3JpZ2luIG9mIGNvbmZpZyAoZmlsZSwgc3RhbmRhcmQgaW5wdXQsIGJsb2IsIGNvbW1hbmQgbGluZSkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU5Cittc2dpZCAic2hvdyBzY29wZSBvZiBjb25maWcgKHdvcmt0cmVlLCBsb2NhbCwgZ2xvYmFsLCBzeXN0ZW0sIGNvbW1hbmQpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTYwIGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MAogbXNnaWQgInZhbHVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU4CisjOiBidWlsdGluL2NvbmZpZy5jOjE2MAogbXNnaWQgIndpdGggLS1nZXQsIHVzZSBkZWZhdWx0IHZhbHVlIHdoZW4gbWlzc2luZyBlbnRyeSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE3MQorIzogYnVpbHRpbi9jb25maWcuYzoxNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAid3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cywgc2hvdWxkIGJlICVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTczCisjOiBidWlsdGluL2NvbmZpZy5jOjE3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgZnJvbSAlZCB0byAlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjMwNworIzogYnVpbHRpbi9jb25maWcuYzozMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBrZXkgcGF0dGVybjogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzozNDMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MzYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBmb3JtYXQgZGVmYXVsdCBjb25maWcgdmFsdWU6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDAwCisjOiBidWlsdGluL2NvbmZpZy5jOjQxNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcGFyc2UgY29sb3IgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjQ0MgorIzogYnVpbHRpbi9jb25maWcuYzo0NTkKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgZGVmYXVsdCBjb2xvciB2YWx1ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjQ5NSBidWlsdGluL2NvbmZpZy5jOjc0MQorIzogYnVpbHRpbi9jb25maWcuYzo1MTIgYnVpbHRpbi9jb25maWcuYzo3NjgKIG1zZ2lkICJub3QgaW4gYSBnaXQgZGlyZWN0b3J5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDk4CisjOiBidWlsdGluL2NvbmZpZy5jOjUxNQogbXNnaWQgIndyaXRpbmcgdG8gc3RkaW4gaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjUwMQorIzogYnVpbHRpbi9jb25maWcuYzo1MTgKIG1zZ2lkICJ3cml0aW5nIGNvbmZpZyBibG9icyBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NTg2CisjOiBidWlsdGluL2NvbmZpZy5jOjYwMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiIyBUaGlzIGlzIEdpdCdzIHBlci11c2VyIGNvbmZpZ3VyYXRpb24gZmlsZS5cbiIKQEAgLTk2MzksODEgKzEyMjEwLDgxIEBACiAiI1x0ZW1haWwgPSAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjEwCisjOiBidWlsdGluL2NvbmZpZy5jOjYyNwogbXNnaWQgIm9ubHkgb25lIGNvbmZpZyBmaWxlIGF0IGEgdGltZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYxNQorIzogYnVpbHRpbi9jb25maWcuYzo2MzIKIG1zZ2lkICItLWxvY2FsIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjM1CiBtc2dpZCAiLS1ibG9iIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MzcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjU1CiBtc2dpZCAiJEhPTUUgbm90IHNldCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjY1NworIzogYnVpbHRpbi9jb25maWcuYzo2NzkKIG1zZ2lkICIiCiAiLS13b3JrdHJlZSBjYW5ub3QgYmUgdXNlZCB3aXRoIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMgdW5sZXNzIHRoZSBjb25maWdcbiIKICJleHRlbnNpb24gd29ya3RyZWVDb25maWcgaXMgZW5hYmxlZC4gUGxlYXNlIHJlYWQgXCJDT05GSUdVUkFUSU9OIEZJTEVcIlxuIgogInNlY3Rpb24gaW4gXCJnaXQgaGVscCB3b3JrdHJlZVwiIGZvciBkZXRhaWxzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6Njg3CisjOiBidWlsdGluL2NvbmZpZy5jOjcxNAogbXNnaWQgIi0tZ2V0LWNvbG9yIGFuZCB2YXJpYWJsZSB0eXBlIGFyZSBpbmNvaGVyZW50IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjkyCisjOiBidWlsdGluL2NvbmZpZy5jOjcxOQogbXNnaWQgIm9ubHkgb25lIGFjdGlvbiBhdCBhIHRpbWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MDUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzMyCiBtc2dpZCAiLS1uYW1lLW9ubHkgaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tbGlzdCBvciAtLWdldC1yZWdleHAiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MTEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzM4CiBtc2dpZCAiIgogIi0tc2hvdy1vcmlnaW4gaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCwgYW5kIC0tIgogImxpc3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MTcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzQ0CiBtc2dpZCAiLS1kZWZhdWx0IGlzIG9ubHkgYXBwbGljYWJsZSB0byAtLWdldCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjczMAorIzogYnVpbHRpbi9jb25maWcuYzo3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgY29uZmlnIGZpbGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjczMworIzogYnVpbHRpbi9jb25maWcuYzo3NjAKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIGNvbmZpZyBmaWxlKHMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzQzCisjOiBidWlsdGluL2NvbmZpZy5jOjc3MAogbXNnaWQgImVkaXRpbmcgc3RkaW4gaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc0NQorIzogYnVpbHRpbi9jb25maWcuYzo3NzIKIG1zZ2lkICJlZGl0aW5nIGJsb2JzIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3NTkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6Nzg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjcmVhdGUgY29uZmlndXJhdGlvbiBmaWxlICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzcyCisjOiBidWlsdGluL2NvbmZpZy5jOjc5OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY2Fubm90IG92ZXJ3cml0ZSBtdWx0aXBsZSB2YWx1ZXMgd2l0aCBhIHNpbmdsZSB2YWx1ZVxuIgogIiAgICAgICBVc2UgYSByZWdleHAsIC0tYWRkIG9yIC0tcmVwbGFjZS1hbGwgdG8gY2hhbmdlICVzLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjg0NiBidWlsdGluL2NvbmZpZy5jOjg1NworIzogYnVpbHRpbi9jb25maWcuYzo4NzMgYnVpbHRpbi9jb25maWcuYzo4ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBzZWN0aW9uOiAlcyIKIG1zZ3N0ciAiIgpAQCAtOTc0NiwxNzQgKzEyMzE3LDE3NCBAQAogbXNnaWQgImFubm90YXRlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MjcyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc1CiAjLCBjLWZvcm1hdAogbXNnaWQgImFubm90YXRlZCB0YWcgJXMgbm90IGF2YWlsYWJsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc2CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImFubm90YXRlZCB0YWcgJXMgaGFzIG5vIGVtYmVkZGVkIG5hbWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3OAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjI4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0YWcgJyVzJyBpcyByZWFsbHkgJyVzJyBoZXJlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gdGFnIGV4YWN0bHkgbWF0Y2hlcyAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gZXhhY3QgbWF0Y2ggb24gcmVmcyBvciB0YWdzLCBzZWFyY2hpbmcgdG8gZGVzY3JpYmVcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mzc4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mzk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZpbmlzaGVkIHNlYXJjaCBhdCAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MDQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vIGFubm90YXRlZCB0YWdzIGNhbiBkZXNjcmliZSAnJXMnLlxuIgogIkhvd2V2ZXIsIHRoZXJlIHdlcmUgdW5hbm5vdGF0ZWQgdGFnczogdHJ5IC0tdGFncy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQwOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQyNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gdGFncyBjYW4gZGVzY3JpYmUgJyVzJy5cbiIKICJUcnkgLS1hbHdheXMsIG9yIGNyZWF0ZSBzb21lIHRhZ3MuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MzgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJhdmVyc2VkICVsdSBjb21taXRzXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQ0MQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQ1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibW9yZSB0aGFuICVpIHRhZ3MgZm91bmQ7IGxpc3RlZCAlaSBtb3N0IHJlY2VudFxuIgogImdhdmUgdXAgc2VhcmNoIGF0ICVzXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUwOQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJkZXNjcmliZSAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MTIgYnVpbHRpbi9sb2cuYzo1MTMKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgb2JqZWN0IG5hbWUgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyMAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBuZWl0aGVyIGEgY29tbWl0IG5vciBibG9iIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTEKIG1zZ2lkICJmaW5kIHRoZSB0YWcgdGhhdCBjb21lcyBhZnRlciB0aGUgY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzUKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTIKIG1zZ2lkICJkZWJ1ZyBzZWFyY2ggc3RyYXRlZ3kgb24gc3RkZXJyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzYKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTMKIG1zZ2lkICJ1c2UgYW55IHJlZiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU0CiBtc2dpZCAidXNlIGFueSB0YWcsIGV2ZW4gdW5hbm5vdGF0ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NQogbXNnaWQgImFsd2F5cyB1c2UgbG9uZyBmb3JtYXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NgogbXNnaWQgIm9ubHkgZm9sbG93IGZpcnN0IHBhcmVudCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU5CiBtc2dpZCAib25seSBvdXRwdXQgZXhhY3QgbWF0Y2hlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTYxCiBtc2dpZCAiY29uc2lkZXIgPG4+IG1vc3QgcmVjZW50IHRhZ3MgKGRlZmF1bHQ6IDEwKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ2CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTYzCiBtc2dpZCAib25seSBjb25zaWRlciB0YWdzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTY1CiBtc2dpZCAiZG8gbm90IGNvbnNpZGVyIHRhZ3MgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTAgYnVpbHRpbi9uYW1lLXJldi5jOjQyNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2NyBidWlsdGluL25hbWUtcmV2LmM6NTM1CiBtc2dpZCAic2hvdyBhYmJyZXZpYXRlZCBjb21taXQgb2JqZWN0IGFzIGZhbGxiYWNrIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTEgYnVpbHRpbi9kZXNjcmliZS5jOjU1NAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2OCBidWlsdGluL2Rlc2NyaWJlLmM6NTcxCiBtc2dpZCAibWFyayIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTY5CiBtc2dpZCAiYXBwZW5kIDxtYXJrPiBvbiBkaXJ0eSB3b3JraW5nIHRyZWUgKGRlZmF1bHQ6IFwiLWRpcnR5XCIpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTUKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NzIKIG1zZ2lkICJhcHBlbmQgPG1hcms+IG9uIGJyb2tlbiB3b3JraW5nIHRyZWUgKGRlZmF1bHQ6IFwiLWJyb2tlblwiKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTczCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTkwCiBtc2dpZCAiLS1sb25nIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWJicmV2PTAiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjYwMgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjYxOQogbXNnaWQgIk5vIG5hbWVzIGZvdW5kLCBjYW5ub3QgZGVzY3JpYmUgYW55dGhpbmcuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NTIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NzAKIG1zZ2lkICItLWRpcnR5IGlzIGluY29tcGF0aWJsZSB3aXRoIGNvbW1pdC1pc2hlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NjU0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjcyCiBtc2dpZCAiLS1icm9rZW4gaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjgzCisjOiBidWlsdGluL2RpZmYuYzo4NAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiBub3QgYSByZWd1bGFyIGZpbGUgb3Igc3ltbGluayIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2RpZmYuYzoyMzQKKyM6IGJ1aWx0aW4vZGlmZi5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9wdGlvbjogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kaWZmLmM6MzYzCisjOiBidWlsdGluL2RpZmYuYzozNTAKIG1zZ2lkICJOb3QgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2RpZmYuYzo0MDcKKyM6IGJ1aWx0aW4vZGlmZi5jOjM5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9iamVjdCAnJXMnIGdpdmVuLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2RpZmYuYzo0MTYKKyM6IGJ1aWx0aW4vZGlmZi5jOjQwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJtb3JlIHRoYW4gdHdvIGJsb2JzIGdpdmVuOiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjQyMQorIzogYnVpbHRpbi9kaWZmLmM6NDA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuaGFuZGxlZCBvYmplY3QgJyVzJyBnaXZlbi4iCiBtc2dzdHIgIiIKQEAgLTk5NDgsNDM2ICsxMjUxOSw1NjIgQEAKICJkaXJlY3RvcnkgZGlmZiBtb2RlKCctZCcgYW5kICctLWRpci1kaWZmJykuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzMKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYm90aCBmaWxlcyBtb2RpZmllZDogJyVzJyBhbmQgJyVzJy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjYzNQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjYzNgogbXNnaWQgIndvcmtpbmcgdHJlZSBmaWxlIGhhcyBiZWVuIGxlZnQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDYKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAidGVtcG9yYXJ5IGZpbGVzIGV4aXN0IGluICclcycuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDcKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDgKIG1zZ2lkICJ5b3UgbWF5IHdhbnQgdG8gY2xlYW51cCBvciByZWNvdmVyIHRoZXNlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6Njk2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6Njk3CiBtc2dpZCAidXNlIGBkaWZmLmd1aXRvb2xgIGluc3RlYWQgb2YgYGRpZmYudG9vbGAiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OQogbXNnaWQgInBlcmZvcm0gYSBmdWxsLWRpcmVjdG9yeSBkaWZmIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDAKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDEKIG1zZ2lkICJkbyBub3QgcHJvbXB0IGJlZm9yZSBsYXVuY2hpbmcgYSBkaWZmIHRvb2wiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNgogbXNnaWQgInVzZSBzeW1saW5rcyBpbiBkaXItZGlmZiBtb2RlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDYKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDcKIG1zZ2lkICJ0b29sIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDcKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDgKIG1zZ2lkICJ1c2UgdGhlIHNwZWNpZmllZCBkaWZmIHRvb2wiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxMAogbXNnaWQgInByaW50IGEgbGlzdCBvZiBkaWZmIHRvb2xzIHRoYXQgbWF5IGJlIHVzZWQgd2l0aCBgLS10b29sYCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzEyCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEzCiBtc2dpZCAiIgogIm1ha2UgJ2dpdC1kaWZmdG9vbCcgZXhpdCB3aGVuIGFuIGludm9rZWQgZGlmZiB0b29sIHJldHVybnMgYSBub24gLSB6ZXJvIGV4aXQgIgogImNvZGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxNQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxNgogbXNnaWQgInNwZWNpZnkgYSBjdXN0b20gY29tbWFuZCBmb3Igdmlld2luZyBkaWZmcyIKIG1zZ3N0ciAiIgogCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE3Cittc2dpZCAicGFzc2VkIHRvIGBkaWZmYCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzMyCittc2dpZCAiZGlmZnRvb2wgcmVxdWlyZXMgd29ya3RyZWUgb3IgLS1uby1pbmRleCIKK21zZ3N0ciAiIgorCiAjOiBidWlsdGluL2RpZmZ0b29sLmM6NzM5Cittc2dpZCAiLS1kaXItZGlmZiBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW5vLWluZGV4IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDIKK21zZ2lkICItLWd1aSwgLS10b29sIGFuZCAtLWV4dGNtZCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NTAKIG1zZ2lkICJubyA8dG9vbD4gZ2l2ZW4gZm9yIC0tdG9vbD08dG9vbD4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc0NgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc1NwogbXNnaWQgIm5vIDxjbWQ+IGdpdmVuIGZvciAtLWV4dGNtZD08Y21kPiIKIG1zZ3N0ciAiIgogCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NgorbXNnaWQgImdpdCBlbnYtLWhlbHBlciAtLXR5cGU9W2Jvb2x8dWxvbmddIDxvcHRpb25zPiA8ZW52LXZhcj4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjM3IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAorbXNnaWQgInR5cGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjQxCittc2dpZCAiZGVmYXVsdCBmb3IgZ2l0X2Vudl8qKC4uLikgdG8gZmFsbCBiYWNrIG9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MworbXNnaWQgImJlIHF1aWV0IG9ubHkgdXNlIGdpdF9lbnZfKigpIHZhbHVlIGFzIGV4aXQgY29kZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAtLWRlZmF1bHQnIGV4cGVjdHMgYSBib29sZWFuIHZhbHVlIHdpdGggYC0tdHlwZT1ib29sYCwgbm90IGAlc2AiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvcHRpb24gYC0tZGVmYXVsdCcgZXhwZWN0cyBhbiB1bnNpZ25lZCBsb25nIHZhbHVlIHdpdGggYC0tdHlwZT11bG9uZ2AsIG5vdCBgIgorIiVzYCIKK21zZ3N0ciAiIgorCiAjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MjkKIG1zZ2lkICJnaXQgZmFzdC1leHBvcnQgW3Jldi1saXN0LW9wdHNdIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6ODUzCittc2dpZCAiRXJyb3I6IENhbm5vdCBleHBvcnQgbmVzdGVkIHRhZ3MgdW5sZXNzIC0tbWFyay10YWdzIGlzIHNwZWNpZmllZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTIKIG1zZ2lkICJzaG93IHByb2dyZXNzIGFmdGVyIDxuPiBvYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NAogbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiBzaWduZWQgdGFncyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMQorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTcKIG1zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2YgdGFncyB0aGF0IHRhZyBmaWx0ZXJlZCBvYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDE0CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2MAorbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiBjb21taXQgbWVzc2FnZXMgaW4gYW4gYWx0ZXJuYXRlIGVuY29kaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTYzCiBtc2dpZCAiRHVtcCBtYXJrcyB0byB0aGlzIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTYKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY1CiBtc2dpZCAiSW1wb3J0IG1hcmtzIGZyb20gdGhpcyBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDE4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2OQorbXNnaWQgIkltcG9ydCBtYXJrcyBmcm9tIHRoaXMgZmlsZSBpZiBpdCBleGlzdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzEKIG1zZ2lkICJGYWtlIGEgdGFnZ2VyIHdoZW4gdGFncyBsYWNrIG9uZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyMAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzMKIG1zZ2lkICJPdXRwdXQgZnVsbCB0cmVlIGZvciBlYWNoIGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyMgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzUKIG1zZ2lkICJVc2UgdGhlIGRvbmUgZmVhdHVyZSB0byB0ZXJtaW5hdGUgdGhlIHN0cmVhbSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyMworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzYKIG1zZ2lkICJTa2lwIG91dHB1dCBvZiBibG9iIGRhdGEiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjQgYnVpbHRpbi9sb2cuYzoxNTg4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NyBidWlsdGluL2xvZy5jOjE3MDUKIG1zZ2lkICJyZWZzcGVjIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDI1CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3OAogbXNnaWQgIkFwcGx5IHJlZnNwZWMgdG8gZXhwb3J0ZWQgcmVmcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyNgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzkKIG1zZ2lkICJhbm9ueW1pemUgb3V0cHV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoyOAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODEKK21zZ2lkICJSZWZlcmVuY2UgcGFyZW50cyB3aGljaCBhcmUgbm90IGluIGZhc3QtZXhwb3J0IHN0cmVhbSBieSBvYmplY3QgaWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODMKK21zZ2lkICJTaG93IG9yaWdpbmFsIG9iamVjdCBpZHMgb2YgYmxvYnMvY29tbWl0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE4NQorbXNnaWQgIkxhYmVsIHRhZ3Mgd2l0aCBtYXJrIGlkcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTIyMAorbXNnaWQgIkNhbm5vdCBwYXNzIGJvdGggLS1pbXBvcnQtbWFya3MgYW5kIC0taW1wb3J0LW1hcmtzLWlmLWV4aXN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MzQKIG1zZ2lkICJnaXQgZmV0Y2ggWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjI5CisjOiBidWlsdGluL2ZldGNoLmM6MzUKIG1zZ2lkICJnaXQgZmV0Y2ggWzxvcHRpb25zPl0gPGdyb3VwPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNgogbXNnaWQgImdpdCBmZXRjaCAtLW11bHRpcGxlIFs8b3B0aW9ucz5dIFsoPHJlcG9zaXRvcnk+IHwgPGdyb3VwPikuLi5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzozMQorIzogYnVpbHRpbi9mZXRjaC5jOjM3CiBtc2dpZCAiZ2l0IGZldGNoIC0tYWxsIFs8b3B0aW9ucz5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTUgYnVpbHRpbi9wdWxsLmM6MTk0CisjOiBidWlsdGluL2ZldGNoLmM6MTE2Cittc2dpZCAiZmV0Y2gucGFyYWxsZWwgY2Fubm90IGJlIG5lZ2F0aXZlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMzkgYnVpbHRpbi9wdWxsLmM6MTg0CiBtc2dpZCAiZmV0Y2ggZnJvbSBhbGwgcmVtb3RlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTE3IGJ1aWx0aW4vcHVsbC5jOjE5NworIzogYnVpbHRpbi9mZXRjaC5jOjE0MSBidWlsdGluL3B1bGwuYzoyMjgKK21zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL2ZldGNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMgYnVpbHRpbi9wdWxsLmM6MTg3CiBtc2dpZCAiYXBwZW5kIHRvIC5naXQvRkVUQ0hfSEVBRCBpbnN0ZWFkIG9mIG92ZXJ3cml0aW5nIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTkgYnVpbHRpbi9wdWxsLmM6MjAwCisjOiBidWlsdGluL2ZldGNoLmM6MTQ1IGJ1aWx0aW4vcHVsbC5jOjE5MAogbXNnaWQgInBhdGggdG8gdXBsb2FkIHBhY2sgb24gcmVtb3RlIGVuZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTIwCisjOiBidWlsdGluL2ZldGNoLmM6MTQ2CiBtc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGxvY2FsIHJlZmVyZW5jZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTIyCisjOiBidWlsdGluL2ZldGNoLmM6MTQ4CiBtc2dpZCAiZmV0Y2ggZnJvbSBtdWx0aXBsZSByZW1vdGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMjQgYnVpbHRpbi9wdWxsLmM6MjA0CisjOiBidWlsdGluL2ZldGNoLmM6MTUwIGJ1aWx0aW4vcHVsbC5jOjE5NAogbXNnaWQgImZldGNoIGFsbCB0YWdzIGFuZCBhc3NvY2lhdGVkIG9iamVjdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyNgorIzogYnVpbHRpbi9mZXRjaC5jOjE1MgogbXNnaWQgImRvIG5vdCBmZXRjaCBhbGwgdGFncyAoLS1uby10YWdzKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI4CisjOiBidWlsdGluL2ZldGNoLmM6MTU0CiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgZmV0Y2hlZCBpbiBwYXJhbGxlbCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMwIGJ1aWx0aW4vcHVsbC5jOjIwNworIzogYnVpbHRpbi9mZXRjaC5jOjE1NiBidWlsdGluL3B1bGwuYzoxOTcKIG1zZ2lkICJwcnVuZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMgbm8gbG9uZ2VyIG9uIHJlbW90ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMyCisjOiBidWlsdGluL2ZldGNoLmM6MTU4CiBtc2dpZCAicHJ1bmUgbG9jYWwgdGFncyBubyBsb25nZXIgb24gcmVtb3RlIGFuZCBjbG9iYmVyIGNoYW5nZWQgdGFncyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMzIGJ1aWx0aW4vZmV0Y2guYzoxNTYgYnVpbHRpbi9wdWxsLmM6MTMyCisjOiBidWlsdGluL2ZldGNoLmM6MTU5IGJ1aWx0aW4vZmV0Y2guYzoxODIgYnVpbHRpbi9wdWxsLmM6MTIxCiBtc2dpZCAib24tZGVtYW5kIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjAKIG1zZ2lkICJjb250cm9sIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzggYnVpbHRpbi9wdWxsLmM6MjE1CisjOiBidWlsdGluL2ZldGNoLmM6MTY0IGJ1aWx0aW4vcHVsbC5jOjIwNQogbXNnaWQgImtlZXAgZG93bmxvYWRlZCBwYWNrIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjYKIG1zZ2lkICJhbGxvdyB1cGRhdGluZyBvZiBIRUFEIHJlZiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQzIGJ1aWx0aW4vZmV0Y2guYzoxNDkgYnVpbHRpbi9wdWxsLmM6MjE4CisjOiBidWlsdGluL2ZldGNoLmM6MTY5IGJ1aWx0aW4vZmV0Y2guYzoxNzUgYnVpbHRpbi9wdWxsLmM6MjA4CiBtc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyBjbG9uZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQ1CisjOiBidWlsdGluL2ZldGNoLmM6MTcxCiBtc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyByZXBvc2l0b3J5IGJhc2VkIG9uIHRpbWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1MSBidWlsdGluL3B1bGwuYzoyMjEKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzcgYnVpbHRpbi9wdWxsLmM6MjExCiBtc2dpZCAiY29udmVydCB0byBhIGNvbXBsZXRlIHJlcG9zaXRvcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1NAorIzogYnVpbHRpbi9mZXRjaC5jOjE4MAogbXNnaWQgInByZXBlbmQgdGhpcyB0byBzdWJtb2R1bGUgcGF0aCBvdXRwdXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1NworIzogYnVpbHRpbi9mZXRjaC5jOjE4MwogbXNnaWQgIiIKICJkZWZhdWx0IGZvciByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyAobG93ZXIgcHJpb3JpdHkgdGhhbiBjb25maWcgIgogImZpbGVzKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYxIGJ1aWx0aW4vcHVsbC5jOjIyNAorIzogYnVpbHRpbi9mZXRjaC5jOjE4NyBidWlsdGluL3B1bGwuYzoyMTQKIG1zZ2lkICJhY2NlcHQgcmVmcyB0aGF0IHVwZGF0ZSAuZ2l0L3NoYWxsb3ciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MiBidWlsdGluL3B1bGwuYzoyMjYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODggYnVpbHRpbi9wdWxsLmM6MjE2CiBtc2dpZCAicmVmbWFwIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjMgYnVpbHRpbi9wdWxsLmM6MjI3CisjOiBidWlsdGluL2ZldGNoLmM6MTg5IGJ1aWx0aW4vcHVsbC5jOjIxNwogbXNnaWQgInNwZWNpZnkgZmV0Y2ggcmVmbWFwIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9scy1yZW1vdGUuYzo3NyBidWlsdGluL3B1c2guYzo1ODIKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTcyCi1tc2dpZCAic2VydmVyLXNwZWNpZmljIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9scy1yZW1vdGUuYzo3NyBidWlsdGluL3B1c2guYzo1ODIKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTczCi1tc2dpZCAib3B0aW9uIHRvIHRyYW5zbWl0IgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxOTYKIG1zZ2lkICJyZXBvcnQgdGhhdCB3ZSBoYXZlIG9ubHkgb2JqZWN0cyByZWFjaGFibGUgZnJvbSB0aGlzIG9iamVjdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NDcwCisjOiBidWlsdGluL2ZldGNoLmM6MTk5Cittc2dpZCAicnVuICdnYyAtLWF1dG8nIGFmdGVyIGZldGNoaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoyMDEgYnVpbHRpbi9wdWxsLmM6MjI2Cittc2dpZCAiY2hlY2sgZm9yIGZvcmNlZC11cGRhdGVzIG9uIGFsbCB1cGRhdGVkIGJyYW5jaGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoyMDMKK21zZ2lkICJ3cml0ZSB0aGUgY29tbWl0LWdyYXBoIGFmdGVyIGZldGNoaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo1MTMKIG1zZ2lkICJDb3VsZG4ndCBmaW5kIHJlbW90ZSByZWYgSEVBRCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NjA5CisjOiBidWlsdGluL2ZldGNoLmM6NjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbmZpZ3VyYXRpb24gZmV0Y2gub3V0cHV0IGNvbnRhaW5zIGludmFsaWQgdmFsdWUgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjcwMgorIzogYnVpbHRpbi9mZXRjaC5jOjc1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgJXMgbm90IGZvdW5kIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MDYKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTUKIG1zZ2lkICJbdXAgdG8gZGF0ZV0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjcxOSBidWlsdGluL2ZldGNoLmM6NzM1IGJ1aWx0aW4vZmV0Y2guYzo4MDcKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NjggYnVpbHRpbi9mZXRjaC5jOjc4NCBidWlsdGluL2ZldGNoLmM6ODU2CiBtc2dpZCAiW3JlamVjdGVkXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzIwCisjOiBidWlsdGluL2ZldGNoLmM6NzY5CiBtc2dpZCAiY2FuJ3QgZmV0Y2ggaW4gY3VycmVudCBicmFuY2giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjczMAorIzogYnVpbHRpbi9mZXRjaC5jOjc3OQogbXNnaWQgIlt0YWcgdXBkYXRlXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzMxIGJ1aWx0aW4vZmV0Y2guYzo3NzEgYnVpbHRpbi9mZXRjaC5jOjc4NwotIzogYnVpbHRpbi9mZXRjaC5jOjgwMgorIzogYnVpbHRpbi9mZXRjaC5jOjc4MCBidWlsdGluL2ZldGNoLmM6ODE3IGJ1aWx0aW4vZmV0Y2guYzo4MzkKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NTEKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIGxvY2FsIHJlZiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzM1CisjOiBidWlsdGluL2ZldGNoLmM6Nzg0CiBtc2dpZCAid291bGQgY2xvYmJlciBleGlzdGluZyB0YWciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjc1NworIzogYnVpbHRpbi9mZXRjaC5jOjgwNgogbXNnaWQgIltuZXcgdGFnXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzYwCisjOiBidWlsdGluL2ZldGNoLmM6ODA5CiBtc2dpZCAiW25ldyBicmFuY2hdIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3NjMKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MTIKIG1zZ2lkICJbbmV3IHJlZl0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjgwMgorIzogYnVpbHRpbi9mZXRjaC5jOjg1MQogbXNnaWQgImZvcmNlZCB1cGRhdGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjgwNworIzogYnVpbHRpbi9mZXRjaC5jOjg1NgogbXNnaWQgIm5vbi1mYXN0LWZvcndhcmQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjg1MworIzogYnVpbHRpbi9mZXRjaC5jOjg3NworbXNnaWQgIiIKKyJGZXRjaCBub3JtYWxseSBpbmRpY2F0ZXMgd2hpY2ggYnJhbmNoZXMgaGFkIGEgZm9yY2VkIHVwZGF0ZSxcbiIKKyJidXQgdGhhdCBjaGVjayBoYXMgYmVlbiBkaXNhYmxlZC4gVG8gcmUtZW5hYmxlLCB1c2UgJy0tc2hvdy1mb3JjZWQtdXBkYXRlcydcbiIKKyJmbGFnIG9yIHJ1biAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyB0cnVlJy4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjg4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gY2hlY2sgZm9yY2VkIHVwZGF0ZXMuIFlvdSBjYW4gdXNlXG4iCisiJy0tbm8tc2hvdy1mb3JjZWQtdXBkYXRlcycgb3IgcnVuICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzICIKKyJmYWxzZSdcbiIKKyIgdG8gYXZvaWQgdGhpcyBjaGVjay5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6OTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRpZCBub3Qgc2VuZCBhbGwgbmVjZXNzYXJ5IG9iamVjdHNcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODc0CisjOiBidWlsdGluL2ZldGNoLmM6OTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlamVjdCAlcyBiZWNhdXNlIHNoYWxsb3cgcm9vdHMgYXJlIG5vdCBhbGxvd2VkIHRvIGJlIHVwZGF0ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjk2MyBidWlsdGluL2ZldGNoLmM6MTA4NQorIzogYnVpbHRpbi9mZXRjaC5jOjEwMjYgYnVpbHRpbi9mZXRjaC5jOjExNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRnJvbSAlLipzXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjk3NAorIzogYnVpbHRpbi9mZXRjaC5jOjEwMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInNvbWUgbG9jYWwgcmVmcyBjb3VsZCBub3QgYmUgdXBkYXRlZDsgdHJ5IHJ1bm5pbmdcbiIKICIgJ2dpdCByZW1vdGUgcHJ1bmUgJXMnIHRvIHJlbW92ZSBhbnkgb2xkLCBjb25mbGljdGluZyBicmFuY2hlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA1NQorIzogYnVpbHRpbi9mZXRjaC5jOjExMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgKCVzIHdpbGwgYmVjb21lIGRhbmdsaW5nKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA1NgorIzogYnVpbHRpbi9mZXRjaC5jOjExMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgKCVzIGhhcyBiZWNvbWUgZGFuZ2xpbmcpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMDg4CisjOiBidWlsdGluL2ZldGNoLmM6MTE2NwogbXNnaWQgIltkZWxldGVkXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA4OSBidWlsdGluL3JlbW90ZS5jOjEwMzYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTY4IGJ1aWx0aW4vcmVtb3RlLmM6MTExMgogbXNnaWQgIihub25lKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTExMgorIzogYnVpbHRpbi9mZXRjaC5jOjExOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gZmV0Y2ggaW50byBjdXJyZW50IGJyYW5jaCAlcyBvZiBub24tYmFyZSByZXBvc2l0b3J5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTMxCisjOiBidWlsdGluL2ZldGNoLmM6MTIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJPcHRpb24gXCIlc1wiIHZhbHVlIFwiJXNcIiBpcyBub3QgdmFsaWQgZm9yICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTM0CisjOiBidWlsdGluL2ZldGNoLmM6MTIxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJPcHRpb24gXCIlc1wiIGlzIGlnbm9yZWQgZm9yICVzXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0MzMKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDIxCittc2dpZCAibXVsdGlwbGUgYnJhbmNoZXMgZGV0ZWN0ZWQsIGluY29tcGF0aWJsZSB3aXRoIC0tc2V0LXVwc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDM2Cittc2dpZCAibm90IHNldHRpbmcgdXBzdHJlYW0gZm9yIGEgcmVtb3RlIHJlbW90ZS10cmFja2luZyBicmFuY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MzgKK21zZ2lkICJub3Qgc2V0dGluZyB1cHN0cmVhbSBmb3IgYSByZW1vdGUgdGFnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDQwCittc2dpZCAidW5rbm93biBicmFuY2ggdHlwZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ0MgorbXNnaWQgIiIKKyJubyBzb3VyY2UgYnJhbmNoIGZvdW5kLlxuIgorInlvdSBuZWVkIHRvIHNwZWNpZnkgZXhhY3RseSBvbmUgYnJhbmNoIHdpdGggdGhlIC0tc2V0LXVwc3RyZWFtIG9wdGlvbi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE1NjggYnVpbHRpbi9mZXRjaC5jOjE2MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmV0Y2hpbmcgJXNcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQzNSBidWlsdGluL3JlbW90ZS5jOjEwMAorIzogYnVpbHRpbi9mZXRjaC5jOjE1NzggYnVpbHRpbi9mZXRjaC5jOjE2MzMgYnVpbHRpbi9yZW1vdGUuYzoxMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZldGNoICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDgxIGJ1aWx0aW4vZmV0Y2guYzoxNjQ5Ci1tc2dpZCAiIgotIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gY29yZS5wYXJ0aWFsQ2xvbmUiCisjOiBidWlsdGluL2ZldGNoLmM6MTU5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZmV0Y2ggJyVzJyAoZXhpdCBjb2RlOiAlZClcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTUwNAorIzogYnVpbHRpbi9mZXRjaC5jOjE2OTMKIG1zZ2lkICIiCiAiTm8gcmVtb3RlIHJlcG9zaXRvcnkgc3BlY2lmaWVkLiAgUGxlYXNlLCBzcGVjaWZ5IGVpdGhlciBhIFVSTCBvciBhXG4iCiAicmVtb3RlIG5hbWUgZnJvbSB3aGljaCBuZXcgcmV2aXNpb25zIHNob3VsZCBiZSBmZXRjaGVkLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU0MQorIzogYnVpbHRpbi9mZXRjaC5jOjE3MzAKIG1zZ2lkICJZb3UgbmVlZCB0byBzcGVjaWZ5IGEgdGFnIG5hbWUuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTkwCisjOiBidWlsdGluL2ZldGNoLmM6MTc4MAogbXNnaWQgIk5lZ2F0aXZlIGRlcHRoIGluIC0tZGVlcGVuIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzgyCiBtc2dpZCAiLS1kZWVwZW4gYW5kIC0tZGVwdGggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU5NworIzogYnVpbHRpbi9mZXRjaC5jOjE3ODcKIG1zZ2lkICItLWRlcHRoIGFuZCAtLXVuc2hhbGxvdyBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU5OQorIzogYnVpbHRpbi9mZXRjaC5jOjE3ODkKIG1zZ2lkICItLXVuc2hhbGxvdyBvbiBhIGNvbXBsZXRlIHJlcG9zaXRvcnkgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYxNQorIzogYnVpbHRpbi9mZXRjaC5jOjE4MDUKIG1zZ2lkICJmZXRjaCAtLWFsbCBkb2VzIG5vdCB0YWtlIGEgcmVwb3NpdG9yeSBhcmd1bWVudCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYxNworIzogYnVpbHRpbi9mZXRjaC5jOjE4MDcKIG1zZ2lkICJmZXRjaCAtLWFsbCBkb2VzIG5vdCBtYWtlIHNlbnNlIHdpdGggcmVmc3BlY3MiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MjYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVtb3RlIG9yIHJlbW90ZSBncm91cDogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MzMKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODIzCiBtc2dpZCAiRmV0Y2hpbmcgYSBncm91cCBhbmQgc3BlY2lmeWluZyByZWZzcGVjcyBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICIiCiAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODQxCittc2dpZCAiIgorIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gZXh0ZW5zaW9ucy4iCisicGFydGlhbGNsb25lIgorbXNnc3RyICIiCisKICM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjE4CiBtc2dpZCAiIgogImdpdCBmbXQtbWVyZ2UtbXNnIFstbSA8bWVzc2FnZT5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlIDxmaWxlPl0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcyCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzEKIG1zZ2lkICJwb3B1bGF0ZSBsb2cgd2l0aCBhdCBtb3N0IDxuPiBlbnRyaWVzIGZyb20gc2hvcnRsb2ciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc1CisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzQKIG1zZ2lkICJhbGlhcyBmb3IgLS1sb2cgKGRlcHJlY2F0ZWQpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OAorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc3CiBtc2dpZCAidGV4dCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzkKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OAogbXNnaWQgInVzZSA8dGV4dD4gYXMgc3RhcnQgb2YgbWVzc2FnZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2ODAKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQogbXNnaWQgImZpbGUgdG8gcmVhZCBmcm9tIgogbXNnc3RyICIiCiAKQEAgLTEwNDE3LDkxICsxMzExNCwyNzIgQEAKIG1zZ2lkICJzaG93IG9ubHkgPG4+IG1hdGNoZWQgcmVmcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM5IGJ1aWx0aW4vdGFnLmM6NDI0CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM5IGJ1aWx0aW4vdGFnLmM6NDM5CiBtc2dpZCAicmVzcGVjdCBmb3JtYXQgY29sb3JzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDMKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggcG9pbnRzIGF0IHRoZSBnaXZlbiBvYmplY3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NQorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NAogbXNnaWQgInByaW50IG9ubHkgcmVmcyB0aGF0IGFyZSBtZXJnZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NgorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NQogbXNnaWQgInByaW50IG9ubHkgcmVmcyB0aGF0IGFyZSBub3QgbWVyZ2VkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDcKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDYKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDgKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDcKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjU5OAorIzogYnVpbHRpbi9mc2NrLmM6NjggYnVpbHRpbi9mc2NrLmM6MTQ3IGJ1aWx0aW4vZnNjay5jOjE0OAorbXNnaWQgInVua25vd24iCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gZXJyb3IgaW4gdHJlZSAwMWJmZGE6IDxtb3JlIGV4cGxhbmF0aW9uPgorIzogYnVpbHRpbi9mc2NrLmM6MTAwIGJ1aWx0aW4vZnNjay5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiAlcyAlczogJXMiCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gd2FybmluZyBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FybmluZyBpbiAlcyAlczogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6MTQzIGJ1aWx0aW4vZnNjay5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJicm9rZW4gbGluayBmcm9tICU3cyAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzoxNTUKK21zZ2lkICJ3cm9uZyBvYmplY3QgdHlwZSBpbiBsaW5rIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE3MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYnJva2VuIGxpbmsgZnJvbSAlN3MgJXNcbiIKKyIgICAgICAgICAgICAgIHRvICU3cyAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzoyODIKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWFjaGFibGUgJXMgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6MzI5CisjLCBjLWZvcm1hdAorbXNnaWQgImRhbmdsaW5nICVzICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjMzOQorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgbG9zdC1mb3VuZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzozNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjM2NworIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo0MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgY29ubmVjdGl2aXR5ICglZCBvYmplY3RzKSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NDI5Cittc2dpZCAiYnJva2VuIGxpbmtzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJyb290ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQ0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ0YWdnZWQgJXMgJXMgKCVzKSBpbiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3NpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHJlZmxvZyBlbnRyeSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo1MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgcmVmbG9nICVzLT4lcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo1NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjU1NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogbm90IGEgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYwOQorbXNnaWQgIm5vdGljZTogTm8gZGVmYXVsdCByZWZlcmVuY2VzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYyNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvcnJ1cHQgb3IgbWlzc2luZzogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgY291bGQgbm90IGJlIHBhcnNlZDogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NjU3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaGExIGZpbGU6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY3MgorbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6Njc1CiBtc2dpZCAiQ2hlY2tpbmcgb2JqZWN0IGRpcmVjdG9yaWVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjY5MwotbXNnaWQgImdpdCBmc2NrIFs8b3B0aW9ucz5dIFs8b2JqZWN0Pi4uLl0iCisjOiBidWlsdGluL2ZzY2suYzo2OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgbGluayIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZzY2suYzo2OTkKLW1zZ2lkICJzaG93IHVucmVhY2hhYmxlIG9iamVjdHMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9mc2NrLmM6NzAwCi1tc2dpZCAic2hvdyBkYW5nbGluZyBvYmplY3RzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vZnNjay5jOjcwMQotbXNnaWQgInJlcG9ydCB0YWdzIgorIzogYnVpbHRpbi9mc2NrLmM6Njk1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkICVzIgogbXNnc3RyICIiCiAKICM6IGJ1aWx0aW4vZnNjay5jOjcwMgotbXNnaWQgInJlcG9ydCByb290IG5vZGVzIgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwb2ludHMgdG8gc29tZXRoaW5nIHN0cmFuZ2UgKCVzKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDMKLW1zZ2lkICJtYWtlIGluZGV4IG9iamVjdHMgaGVhZCBub2RlcyIKKyM6IGJ1aWx0aW4vZnNjay5jOjcwOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGV0YWNoZWQgSEVBRCBwb2ludHMgYXQgbm90aGluZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDQKLW1zZ2lkICJtYWtlIHJlZmxvZ3MgaGVhZCBub2RlcyAoZGVmYXVsdCkiCisjOiBidWlsdGluL2ZzY2suYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aWNlOiAlcyBwb2ludHMgdG8gYW4gdW5ib3JuIGJyYW5jaCAoJXMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwNQotbXNnaWQgImFsc28gY29uc2lkZXIgcGFja3MgYW5kIGFsdGVybmF0ZSBvYmplY3RzIgorIzogYnVpbHRpbi9mc2NrLmM6NzI0Cittc2dpZCAiQ2hlY2tpbmcgY2FjaGUgdHJlZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDYKLW1zZ2lkICJjaGVjayBvbmx5IGNvbm5lY3Rpdml0eSIKKyM6IGJ1aWx0aW4vZnNjay5jOjcyOQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCBzaGExIHBvaW50ZXIgaW4gY2FjaGUtdHJlZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDcKLW1zZ2lkICJlbmFibGUgbW9yZSBzdHJpY3QgY2hlY2tpbmciCisjOiBidWlsdGluL2ZzY2suYzo3MzgKK21zZ2lkICJub24tdHJlZSBpbiBjYWNoZS10cmVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwOQotbXNnaWQgIndyaXRlIGRhbmdsaW5nIG9iamVjdHMgaW4gLmdpdC9sb3N0LWZvdW5kIgorIzogYnVpbHRpbi9mc2NrLmM6NzY5Cittc2dpZCAiZ2l0IGZzY2sgWzxvcHRpb25zPl0gWzxvYmplY3Q+Li4uXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MTAgYnVpbHRpbi9wcnVuZS5jOjExMAotbXNnaWQgInNob3cgcHJvZ3Jlc3MiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9mc2NrLmM6NzExCi1tc2dpZCAic2hvdyB2ZXJib3NlIG5hbWVzIGZvciByZWFjaGFibGUgb2JqZWN0cyIKKyM6IGJ1aWx0aW4vZnNjay5jOjc3NQorbXNnaWQgInNob3cgdW5yZWFjaGFibGUgb2JqZWN0cyIKIG1zZ3N0ciAiIgogCiAjOiBidWlsdGluL2ZzY2suYzo3NzYKK21zZ2lkICJzaG93IGRhbmdsaW5nIG9iamVjdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzc3Cittc2dpZCAicmVwb3J0IHRhZ3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzc4Cittc2dpZCAicmVwb3J0IHJvb3Qgbm9kZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzc5Cittc2dpZCAibWFrZSBpbmRleCBvYmplY3RzIGhlYWQgbm9kZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NzgwCittc2dpZCAibWFrZSByZWZsb2dzIGhlYWQgbm9kZXMgKGRlZmF1bHQpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MQorbXNnaWQgImFsc28gY29uc2lkZXIgcGFja3MgYW5kIGFsdGVybmF0ZSBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MgorbXNnaWQgImNoZWNrIG9ubHkgY29ubmVjdGl2aXR5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MworbXNnaWQgImVuYWJsZSBtb3JlIHN0cmljdCBjaGVja2luZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo3ODUKK21zZ2lkICJ3cml0ZSBkYW5nbGluZyBvYmplY3RzIGluIC5naXQvbG9zdC1mb3VuZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo3ODYgYnVpbHRpbi9wcnVuZS5jOjEzMgorbXNnaWQgInNob3cgcHJvZ3Jlc3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzg3Cittc2dpZCAic2hvdyB2ZXJib3NlIG5hbWVzIGZvciByZWFjaGFibGUgb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo4NDYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MjI1CiBtc2dpZCAiQ2hlY2tpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2djLmM6MzQKKyM6IGJ1aWx0aW4vZnNjay5jOjg3NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IG1pc3NpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6ODg1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFyYW1ldGVyOiBleHBlY3RlZCBzaGExLCBnb3QgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2djLmM6MzUKIG1zZ2lkICJnaXQgZ2MgWzxvcHRpb25zPl0iCiBtc2dzdHIgIiIKIApAQCAtMTA1MTAsMTcgKzEzMzg4LDIyIEBACiBtc2dpZCAiRmFpbGVkIHRvIGZzdGF0ICVzOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2djLmM6NDYxIGJ1aWx0aW4vaW5pdC1kYi5jOjU1CisjOiBidWlsdGluL2djLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSAnJXMnIHZhbHVlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9nYy5jOjQ3NSBidWlsdGluL2luaXQtZGIuYzo1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RhdCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo0NzAgYnVpbHRpbi9ub3Rlcy5jOjI0MCBidWlsdGluL3RhZy5jOjUxMAorIzogYnVpbHRpbi9nYy5jOjQ4NCBidWlsdGluL25vdGVzLmM6MjQwIGJ1aWx0aW4vdGFnLmM6NTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9nYy5jOjQ3NworIzogYnVpbHRpbi9nYy5jOjQ5MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGxhc3QgZ2MgcnVuIHJlcG9ydGVkIHRoZSBmb2xsb3dpbmcuIFBsZWFzZSBjb3JyZWN0IHRoZSByb290IGNhdXNlXG4iCkBAIC0xMDUzMCw3MiArMTM0MTMsNzIgQEAKICIlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2djLmM6NTE5CisjOiBidWlsdGluL2djLmM6NTM5CiBtc2dpZCAicHJ1bmUgdW5yZWZlcmVuY2VkIG9iamVjdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9nYy5jOjUyMQorIzogYnVpbHRpbi9nYy5jOjU0MQogbXNnaWQgImJlIG1vcmUgdGhvcm91Z2ggKGluY3JlYXNlZCBydW50aW1lKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2djLmM6NTIyCisjOiBidWlsdGluL2djLmM6NTQyCiBtc2dpZCAiZW5hYmxlIGF1dG8tZ2MgbW9kZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2djLmM6NTI1CisjOiBidWlsdGluL2djLmM6NTQ1CiBtc2dpZCAiZm9yY2UgcnVubmluZyBnYyBldmVuIGlmIHRoZXJlIG1heSBiZSBhbm90aGVyIGdjIHJ1bm5pbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9nYy5jOjUyOAorIzogYnVpbHRpbi9nYy5jOjU0OAogbXNnaWQgInJlcGFjayBhbGwgb3RoZXIgcGFja3MgZXhjZXB0IHRoZSBsYXJnZXN0IHBhY2siCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9nYy5jOjU0NQorIzogYnVpbHRpbi9nYy5jOjU2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcGFyc2UgZ2MubG9nZXhwaXJ5IHZhbHVlICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NTYKKyM6IGJ1aWx0aW4vZ2MuYzo1NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHBhcnNlIHBydW5lIGV4cGlyeSB2YWx1ZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2djLmM6NTc2CisjOiBidWlsdGluL2djLmM6NTk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG8gcGFja2luZyB0aGUgcmVwb3NpdG9yeSBpbiBiYWNrZ3JvdW5kIGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NzgKKyM6IGJ1aWx0aW4vZ2MuYzo1OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0byBwYWNraW5nIHRoZSByZXBvc2l0b3J5IGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NzkKKyM6IGJ1aWx0aW4vZ2MuYzo1OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2VlIFwiZ2l0IGhlbHAgZ2NcIiBmb3IgbWFudWFsIGhvdXNla2VlcGluZy5cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2djLmM6NjE5CisjOiBidWlsdGluL2djLmM6NjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJnYyBpcyBhbHJlYWR5IHJ1bm5pbmcgb24gbWFjaGluZSAnJXMnIHBpZCAlPFBSSXVNQVg+ICh1c2UgLS1mb3JjZSBpZiBub3QpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo2NzAKKyM6IGJ1aWx0aW4vZ2MuYzo2OTQKIG1zZ2lkICIiCiAiVGhlcmUgYXJlIHRvbyBtYW55IHVucmVhY2hhYmxlIGxvb3NlIG9iamVjdHM7IHJ1biAnZ2l0IHBydW5lJyB0byByZW1vdmUgdGhlbS4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6MjgKKyM6IGJ1aWx0aW4vZ3JlcC5jOjMwCiBtc2dpZCAiZ2l0IGdyZXAgWzxvcHRpb25zPl0gWy1lXSA8cGF0dGVybj4gWzxyZXY+Li4uXSBbWy0tXSA8cGF0aD4uLi5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjIyNAorIzogYnVpbHRpbi9ncmVwLmM6MjI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdyZXA6IGZhaWxlZCB0byBjcmVhdGUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzoyNzgKKyM6IGJ1aWx0aW4vZ3JlcC5jOjI3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG51bWJlciBvZiB0aHJlYWRzIHNwZWNpZmllZCAoJWQpIGZvciAlcyIKIG1zZ3N0ciAiIgpAQCAtMTA2MDQsMjk3ICsxMzQ4NywyOTMgQEAKICMuIHZhcmlhYmxlIGZvciB0d2Vha2luZyB0aHJlYWRzLCBjdXJyZW50bHkKICMuIGdyZXAudGhyZWFkcwogIy4KLSM6IGJ1aWx0aW4vZ3JlcC5jOjI4NiBidWlsdGluL2luZGV4LXBhY2suYzoxNTA2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2OTcKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcxOQorIzogYnVpbHRpbi9ncmVwLmM6Mjg3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MzggYnVpbHRpbi9pbmRleC1wYWNrLmM6MTczMQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHRocmVhZHMgc3VwcG9ydCwgaWdub3JpbmcgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6NDU4IGJ1aWx0aW4vZ3JlcC5jOjU3OSBidWlsdGluL2dyZXAuYzo2MjAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjQ1MyBidWlsdGluL2dyZXAuYzo1NzggYnVpbHRpbi9ncmVwLmM6NjE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHRyZWUgKCVzKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo2MzUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjYzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ3JlcCBmcm9tIG9iamVjdCBvZiB0eXBlICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjcwMQorIzogYnVpbHRpbi9ncmVwLmM6NzA0CiAjLCBjLWZvcm1hdAogbXNnaWQgInN3aXRjaCBgJWMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODAwCisjOiBidWlsdGluL2dyZXAuYzo4MDMKIG1zZ2lkICJzZWFyY2ggaW4gaW5kZXggaW5zdGVhZCBvZiBpbiB0aGUgd29yayB0cmVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwMgorIzogYnVpbHRpbi9ncmVwLmM6ODA1CiBtc2dpZCAiZmluZCBpbiBjb250ZW50cyBub3QgbWFuYWdlZCBieSBnaXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODA0CisjOiBidWlsdGluL2dyZXAuYzo4MDcKIG1zZ2lkICJzZWFyY2ggaW4gYm90aCB0cmFja2VkIGFuZCB1bnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODA2CisjOiBidWlsdGluL2dyZXAuYzo4MDkKIG1zZ2lkICJpZ25vcmUgZmlsZXMgc3BlY2lmaWVkIHZpYSAnLmdpdGlnbm9yZSciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODA4CisjOiBidWlsdGluL2dyZXAuYzo4MTEKIG1zZ2lkICJyZWN1cnNpdmVseSBzZWFyY2ggaW4gZWFjaCBzdWJtb2R1bGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODExCisjOiBidWlsdGluL2dyZXAuYzo4MTQKIG1zZ2lkICJzaG93IG5vbi1tYXRjaGluZyBsaW5lcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxNgogbXNnaWQgImNhc2UgaW5zZW5zaXRpdmUgbWF0Y2hpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODE1CisjOiBidWlsdGluL2dyZXAuYzo4MTgKIG1zZ2lkICJtYXRjaCBwYXR0ZXJucyBvbmx5IGF0IHdvcmQgYm91bmRhcmllcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyMAogbXNnaWQgInByb2Nlc3MgYmluYXJ5IGZpbGVzIGFzIHRleHQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODE5CisjOiBidWlsdGluL2dyZXAuYzo4MjIKIG1zZ2lkICJkb24ndCBtYXRjaCBwYXR0ZXJucyBpbiBiaW5hcnkgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODIyCisjOiBidWlsdGluL2dyZXAuYzo4MjUKIG1zZ2lkICJwcm9jZXNzIGJpbmFyeSBmaWxlcyB3aXRoIHRleHRjb252IGZpbHRlcnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODI0CisjOiBidWlsdGluL2dyZXAuYzo4MjcKIG1zZ2lkICJzZWFyY2ggaW4gc3ViZGlyZWN0b3JpZXMgKGRlZmF1bHQpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgyNgorIzogYnVpbHRpbi9ncmVwLmM6ODI5CiBtc2dpZCAiZGVzY2VuZCBhdCBtb3N0IDxkZXB0aD4gbGV2ZWxzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzMAorIzogYnVpbHRpbi9ncmVwLmM6ODMzCiBtc2dpZCAidXNlIGV4dGVuZGVkIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODMzCisjOiBidWlsdGluL2dyZXAuYzo4MzYKIG1zZ2lkICJ1c2UgYmFzaWMgUE9TSVggcmVndWxhciBleHByZXNzaW9ucyAoZGVmYXVsdCkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODM2CisjOiBidWlsdGluL2dyZXAuYzo4MzkKIG1zZ2lkICJpbnRlcnByZXQgcGF0dGVybnMgYXMgZml4ZWQgc3RyaW5ncyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MzkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0MgogbXNnaWQgInVzZSBQZXJsLWNvbXBhdGlibGUgcmVndWxhciBleHByZXNzaW9ucyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NQogbXNnaWQgInNob3cgbGluZSBudW1iZXJzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0MworIzogYnVpbHRpbi9ncmVwLmM6ODQ2CiBtc2dpZCAic2hvdyBjb2x1bW4gbnVtYmVyIG9mIGZpcnN0IG1hdGNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0NAorIzogYnVpbHRpbi9ncmVwLmM6ODQ3CiBtc2dpZCAiZG9uJ3Qgc2hvdyBmaWxlbmFtZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQ1CisjOiBidWlsdGluL2dyZXAuYzo4NDgKIG1zZ2lkICJzaG93IGZpbGVuYW1lcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1MAogbXNnaWQgInNob3cgZmlsZW5hbWVzIHJlbGF0aXZlIHRvIHRvcCBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQ5CisjOiBidWlsdGluL2dyZXAuYzo4NTIKIG1zZ2lkICJzaG93IG9ubHkgZmlsZW5hbWVzIGluc3RlYWQgb2YgbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODUxCisjOiBidWlsdGluL2dyZXAuYzo4NTQKIG1zZ2lkICJzeW5vbnltIGZvciAtLWZpbGVzLXdpdGgtbWF0Y2hlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NTQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1NwogbXNnaWQgInNob3cgb25seSB0aGUgbmFtZXMgb2YgZmlsZXMgd2l0aG91dCBtYXRjaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NTYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1OQogbXNnaWQgInByaW50IE5VTCBhZnRlciBmaWxlbmFtZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODU5CisjOiBidWlsdGluL2dyZXAuYzo4NjIKIG1zZ2lkICJzaG93IG9ubHkgbWF0Y2hpbmcgcGFydHMgb2YgYSBsaW5lIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2MQorIzogYnVpbHRpbi9ncmVwLmM6ODY0CiBtc2dpZCAic2hvdyB0aGUgbnVtYmVyIG9mIG1hdGNoZXMgaW5zdGVhZCBvZiBtYXRjaGluZyBsaW5lcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2NQogbXNnaWQgImhpZ2hsaWdodCBtYXRjaGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2NAorIzogYnVpbHRpbi9ncmVwLmM6ODY3CiBtc2dpZCAicHJpbnQgZW1wdHkgbGluZSBiZXR3ZWVuIG1hdGNoZXMgZnJvbSBkaWZmZXJlbnQgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODY2CisjOiBidWlsdGluL2dyZXAuYzo4NjkKIG1zZ2lkICJzaG93IGZpbGVuYW1lIG9ubHkgb25jZSBhYm92ZSBtYXRjaGVzIGZyb20gc2FtZSBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2OQorIzogYnVpbHRpbi9ncmVwLmM6ODcyCiBtc2dpZCAic2hvdyA8bj4gY29udGV4dCBsaW5lcyBiZWZvcmUgYW5kIGFmdGVyIG1hdGNoZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODcyCisjOiBidWlsdGluL2dyZXAuYzo4NzUKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGJlZm9yZSBtYXRjaGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NAorIzogYnVpbHRpbi9ncmVwLmM6ODc3CiBtc2dpZCAic2hvdyA8bj4gY29udGV4dCBsaW5lcyBhZnRlciBtYXRjaGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NgorIzogYnVpbHRpbi9ncmVwLmM6ODc5CiBtc2dpZCAidXNlIDxuPiB3b3JrZXIgdGhyZWFkcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4MAogbXNnaWQgInNob3J0Y3V0IGZvciAtQyBOVU0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODgwCisjOiBidWlsdGluL2dyZXAuYzo4ODMKIG1zZ2lkICJzaG93IGEgbGluZSB3aXRoIHRoZSBmdW5jdGlvbiBuYW1lIGJlZm9yZSBtYXRjaGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4MgorIzogYnVpbHRpbi9ncmVwLmM6ODg1CiBtc2dpZCAic2hvdyB0aGUgc3Vycm91bmRpbmcgZnVuY3Rpb24iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODg1CisjOiBidWlsdGluL2dyZXAuYzo4ODgKIG1zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5MAogbXNnaWQgIm1hdGNoIDxwYXR0ZXJuPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5MgogbXNnaWQgImNvbWJpbmUgcGF0dGVybnMgc3BlY2lmaWVkIHdpdGggLWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTAxCisjOiBidWlsdGluL2dyZXAuYzo5MDQKIG1zZ2lkICJpbmRpY2F0ZSBoaXQgd2l0aCBleGl0IHN0YXR1cyB3aXRob3V0IG91dHB1dCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwNgogbXNnaWQgInNob3cgb25seSBtYXRjaGVzIGZyb20gZmlsZXMgdGhhdCBtYXRjaCBhbGwgcGF0dGVybnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTA1CisjOiBidWlsdGluL2dyZXAuYzo5MDgKIG1zZ2lkICJzaG93IHBhcnNlIHRyZWUgZm9yIGdyZXAgZXhwcmVzc2lvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxMgogbXNnaWQgInBhZ2VyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwOQorIzogYnVpbHRpbi9ncmVwLmM6OTEyCiBtc2dpZCAic2hvdyBtYXRjaGluZyBmaWxlcyBpbiB0aGUgcGFnZXIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTEzCisjOiBidWlsdGluL2dyZXAuYzo5MTYKIG1zZ2lkICJhbGxvdyBjYWxsaW5nIG9mIGdyZXAoMSkgKGlnbm9yZWQgYnkgdGhpcyBidWlsZCkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTc3CisjOiBidWlsdGluL2dyZXAuYzo5ODMKIG1zZ2lkICJubyBwYXR0ZXJuIGdpdmVuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwMTMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwMTkKIG1zZ2lkICItLW5vLWluZGV4IG9yIC0tdW50cmFja2VkIGNhbm5vdCBiZSB1c2VkIHdpdGggcmV2cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDIwCisjOiBidWlsdGluL2dyZXAuYzoxMDI3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIHJldmlzaW9uOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDUxCisjOiBidWlsdGluL2dyZXAuYzoxMDU3Cittc2dpZCAiLS11bnRyYWNrZWQgbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjEKIG1zZ2lkICJpbnZhbGlkIG9wdGlvbiBjb21iaW5hdGlvbiwgaWdub3JpbmcgLS10aHJlYWRzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk3CisjOiBidWlsdGluL2dyZXAuYzoxMDY0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU0NwogbXNnaWQgIm5vIHRocmVhZHMgc3VwcG9ydCwgaWdub3JpbmcgLS10aHJlYWRzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUwMyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MTYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzNSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBudW1iZXIgb2YgdGhyZWFkcyBzcGVjaWZpZWQgKCVkKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDgwCisjOiBidWlsdGluL2dyZXAuYzoxMTAxCiBtc2dpZCAiLS1vcGVuLWZpbGVzLWluLXBhZ2VyIG9ubHkgd29ya3Mgb24gdGhlIHdvcmt0cmVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMDMKLW1zZ2lkICJvcHRpb24gbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMDkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExMjcKIG1zZ2lkICItLWNhY2hlZCBvciAtLXVudHJhY2tlZCBjYW5ub3QgYmUgdXNlZCB3aXRoIC0tbm8taW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTExNQorIzogYnVpbHRpbi9ncmVwLmM6MTEzMwogbXNnaWQgIi0tW25vLV1leGNsdWRlLXN0YW5kYXJkIGNhbm5vdCBiZSB1c2VkIGZvciB0cmFja2VkIGNvbnRlbnRzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMjMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExNDEKIG1zZ2lkICJib3RoIC0tY2FjaGVkIGFuZCB0cmVlcyBhcmUgZ2l2ZW4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg0CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODUKIG1zZ2lkICIiCiAiZ2l0IGhhc2gtb2JqZWN0IFstdCA8dHlwZT5dIFstd10gWy0tcGF0aD08ZmlsZT4gfCAtLW5vLWZpbHRlcnNdIFstLXN0ZGluXSAiCiAiWy0tXSA8ZmlsZT4uLi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg1CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODYKIG1zZ2lkICJnaXQgaGFzaC1vYmplY3QgIC0tc3RkaW4tcGF0aHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk3Ci1tc2dpZCAidHlwZSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTcKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAogbXNnaWQgIm9iamVjdCB0eXBlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk5CiBtc2dpZCAid3JpdGUgdGhlIG9iamVjdCBpbnRvIHRoZSBvYmplY3QgZGF0YWJhc2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMQogbXNnaWQgInJlYWQgdGhlIG9iamVjdCBmcm9tIHN0ZGluIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDMKIG1zZ2lkICJzdG9yZSBmaWxlIGFzIGlzIHdpdGhvdXQgZmlsdGVycyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAzCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0CiBtc2dpZCAiIgogImp1c3QgaGFzaCBhbnkgcmFuZG9tIGdhcmJhZ2UgdG8gY3JlYXRlIGNvcnJ1cHQgb2JqZWN0cyBmb3IgZGVidWdnaW5nIEdpdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA1CiBtc2dpZCAicHJvY2VzcyBmaWxlIGFzIGl0IHdlcmUgZnJvbSB0aGlzIHBhdGgiCiBtc2dzdHIgIiIKIApAQCAtMTA5MzQsMzY0ICsxMzgxMywzNTQgQEAKIG1zZ2lkICJnaXQgaGVscCBbLS1hbGxdIFstLWd1aWRlc10gWy0tbWFuIHwgLS13ZWIgfCAtLWluZm9dIFs8Y29tbWFuZD5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjczCisjOiBidWlsdGluL2hlbHAuYzo3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaGVscCBmb3JtYXQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMDAKKyM6IGJ1aWx0aW4vaGVscC5jOjEwNAogbXNnaWQgIkZhaWxlZCB0byBzdGFydCBlbWFjc2NsaWVudC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTEzCisjOiBidWlsdGluL2hlbHAuYzoxMTcKIG1zZ2lkICJGYWlsZWQgdG8gcGFyc2UgZW1hY3NjbGllbnQgdmVyc2lvbi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTIxCisjOiBidWlsdGluL2hlbHAuYzoxMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZW1hY3NjbGllbnQgdmVyc2lvbiAnJWQnIHRvbyBvbGQgKDwgMjIpLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMzkgYnVpbHRpbi9oZWxwLmM6MTYxIGJ1aWx0aW4vaGVscC5jOjE3MSBidWlsdGluL2hlbHAuYzoxNzkKKyM6IGJ1aWx0aW4vaGVscC5jOjE0MyBidWlsdGluL2hlbHAuYzoxNjUgYnVpbHRpbi9oZWxwLmM6MTc1IGJ1aWx0aW4vaGVscC5jOjE4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZXhlYyAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjIxNworIzogYnVpbHRpbi9oZWxwLmM6MjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnOiBwYXRoIGZvciB1bnN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgogIlBsZWFzZSBjb25zaWRlciB1c2luZyAnbWFuLjx0b29sPi5jbWQnIGluc3RlYWQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjIyOQorIzogYnVpbHRpbi9oZWxwLmM6MjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnOiBjbWQgZm9yIHN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgogIlBsZWFzZSBjb25zaWRlciB1c2luZyAnbWFuLjx0b29sPi5wYXRoJyBpbnN0ZWFkLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2hlbHAuYzozNDYKKyM6IGJ1aWx0aW4vaGVscC5jOjM1MAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiB1bmtub3duIG1hbiB2aWV3ZXIuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM2MworIzogYnVpbHRpbi9oZWxwLmM6MzY3CiBtc2dpZCAibm8gbWFuIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM3MQorIzogYnVpbHRpbi9oZWxwLmM6Mzc1CiBtc2dpZCAibm8gaW5mbyB2aWV3ZXIgaGFuZGxlZCB0aGUgcmVxdWVzdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2hlbHAuYzo0MzAgYnVpbHRpbi9oZWxwLmM6NDQxIGdpdC5jOjMyMgorIzogYnVpbHRpbi9oZWxwLmM6NDM0IGJ1aWx0aW4vaGVscC5jOjQ0NSBnaXQuYzozMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbGlhc2VkIHRvICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9oZWxwLmM6NDQ0CisjOiBidWlsdGluL2hlbHAuYzo0NDggZ2l0LmM6MzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBhbGlhcy4lcyBzdHJpbmc6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQ3MyBidWlsdGluL2hlbHAuYzo1MDMKKyM6IGJ1aWx0aW4vaGVscC5jOjQ3NyBidWlsdGluL2hlbHAuYzo1MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAidXNhZ2U6ICVzJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9oZWxwLmM6NDg3CisjOiBidWlsdGluL2hlbHAuYzo0OTEKIG1zZ2lkICInZ2l0IGhlbHAgY29uZmlnJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxODQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgdHlwZSBtaXNtYXRjaCBhdCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJkaWQgbm90IHJlY2VpdmUgZXhwZWN0ZWQgb2JqZWN0ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlczogZXhwZWN0ZWQgdHlwZSAlcywgZm91bmQgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjQ5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZpbGwgJWQgYnl0ZSIKIG1zZ2lkX3BsdXJhbCAiY2Fubm90IGZpbGwgJWQgYnl0ZXMiCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OAogbXNnaWQgImVhcmx5IEVPRiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNjAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OQogbXNnaWQgInJlYWQgZXJyb3Igb24gaW5wdXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjcyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyODEKIG1zZ2lkICJ1c2VkIG1vcmUgYnl0ZXMgdGhhbiB3ZXJlIGF2YWlsYWJsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNzkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1OTgKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI4OCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjYwNgogbXNnaWQgInBhY2sgdG9vIGxhcmdlIGZvciBjdXJyZW50IGRlZmluaXRpb24gb2Ygb2ZmX3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjgyIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo5NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjkxIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo5NQogbXNnaWQgInBhY2sgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgc2l6ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyOTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAnJXMnIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMwMworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuIHBhY2tmaWxlICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzE3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMjYKIG1zZ2lkICJwYWNrIHNpZ25hdHVyZSBtaXNtYXRjaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozMTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrIHZlcnNpb24gJTxQUkl1MzI+IHVuc3VwcG9ydGVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMzNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2sgaGFzIGJhZCBvYmplY3QgYXQgb2Zmc2V0ICU8UFJJdU1BWD46ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjQ1NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgImluZmxhdGUgcmV0dXJuZWQgJWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTA2CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MTUKIG1zZ2lkICJvZmZzZXQgdmFsdWUgb3ZlcmZsb3cgZm9yIGRlbHRhIGJhc2Ugb2JqZWN0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTIzCiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgaXMgb3V0IG9mIGJvdW5kIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUyMgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gb2JqZWN0IHR5cGUgJWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTUzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NjIKIG1zZ2lkICJjYW5ub3QgcHJlYWQgcGFjayBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU1NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgInByZW1hdHVyZSBlbmQgb2YgcGFjayBmaWxlLCAlPFBSSXVNQVg+IGJ5dGUgbWlzc2luZyIKIG1zZ2lkX3BsdXJhbCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICU8UFJJdU1BWD4gYnl0ZXMgbWlzc2luZyIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU4MQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTkwCiBtc2dpZCAic2VyaW91cyBpbmZsYXRlIGluY29uc2lzdGVuY3kiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzI2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjczMiBidWlsdGluL2luZGV4LXBhY2suYzo3NTUKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc5NCBidWlsdGluL2luZGV4LXBhY2suYzo4MDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjczNSBidWlsdGluL2luZGV4LXBhY2suYzo3NDEgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzY1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MDQgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlNIQTEgQ09MTElTSU9OIEZPVU5EIFdJVEggJXMgISIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3MjkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTEKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjExIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzA1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo3MzggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjE4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc5MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIGV4aXN0aW5nIG9iamVjdCBpbmZvICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwMAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODEwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIGV4aXN0aW5nIG9iamVjdCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGJsb2Igb2JqZWN0ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxNyBidWlsdGluL2luZGV4LXBhY2suYzo4MzYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgyNyBidWlsdGluL2luZGV4LXBhY2suYzo4NDYKIG1zZ2lkICJmc2NrIGVycm9yIGluIHBhY2tlZCBvYmplY3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODMzCi0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgJXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODM4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGFsbCBjaGlsZCBvYmplY3RzIG9mICVzIGFyZSByZWFjaGFibGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6OTEwIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjk0MQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6OTIwIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjk1MQogbXNnaWQgImZhaWxlZCB0byBhcHBseSBkZWx0YSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTA5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTIxCiBtc2dpZCAiUmVjZWl2aW5nIG9iamVjdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEwOQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEyMQogbXNnaWQgIkluZGV4aW5nIG9iamVjdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE0MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE1NQogbXNnaWQgInBhY2sgaXMgY29ycnVwdGVkIChTSEExIG1pc21hdGNoKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTQ4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYwCiBtc2dpZCAiY2Fubm90IGZzdGF0IHBhY2tmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNTEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNjMKIG1zZ2lkICJwYWNrIGhhcyBqdW5rIGF0IHRoZSBlbmQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE2MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE3NQogbXNnaWQgImNvbmZ1c2lvbiBiZXlvbmQgaW5zYW5pdHkgaW4gcGFyc2VfcGFja19vYmplY3RzKCkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE4NgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE5OAogbXNnaWQgIlJlc29sdmluZyBkZWx0YXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE5NiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI0OTIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyMDggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjM3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjQ5CiBtc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjQzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbXBsZXRlZCB3aXRoICVkIGxvY2FsIG9iamVjdCIKIG1zZ2lkX3BsdXJhbCAiY29tcGxldGVkIHdpdGggJWQgbG9jYWwgb2JqZWN0cyIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5leHBlY3RlZCB0YWlsIGNoZWNrc3VtIGZvciAlcyAoZGlzayBjb3JydXB0aW9uPykiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI1OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrIGhhcyAlZCB1bnJlc29sdmVkIGRlbHRhIgogbXNnaWRfcGx1cmFsICJwYWNrIGhhcyAlZCB1bnJlc29sdmVkIGRlbHRhcyIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyODMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgYXBwZW5kZWQgb2JqZWN0ICglZCkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM2MAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2NhbCBvYmplY3QgJXMgaXMgY29ycnVwdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzc0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDA2CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2tmaWxlIG5hbWUgJyVzJyBkb2VzIG5vdCBlbmQgd2l0aCAnLnBhY2snIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzOTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHdyaXRlICVzIGZpbGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDA3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDM5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjbG9zZSB3cml0dGVuICVzIGZpbGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDMxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDYzCiBtc2dpZCAiZXJyb3Igd2hpbGUgY2xvc2luZyBwYWNrIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ0NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ3NwogbXNnaWQgImNhbm5vdCBzdG9yZSBwYWNrIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ1MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ4NQogbXNnaWQgImNhbm5vdCBzdG9yZSBpbmRleCBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0OTcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzI3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTI5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFjay5pbmRleHZlcnNpb249JTxQUkl1MzI+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NjUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IG9wZW4gZXhpc3RpbmcgcGFjayBmaWxlICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU2NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgb3BlbiBleGlzdGluZyBwYWNrIGlkeCBmaWxlIGZvciAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2MTUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAibm9uIGRlbHRhOiAlZCBvYmplY3QiCiBtc2dpZF9wbHVyYWwgIm5vbiBkZWx0YTogJWQgb2JqZWN0cyIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2MjIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2hhaW4gbGVuZ3RoID0gJWQ6ICVsdSBvYmplY3QiCiBtc2dpZF9wbHVyYWwgImNoYWluIGxlbmd0aCA9ICVkOiAlbHUgb2JqZWN0cyIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2OTMKIG1zZ2lkICJDYW5ub3QgY29tZSBiYWNrIHRvIGN3ZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzA4IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MTEKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MjcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTczMQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0MiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQ1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzYxIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3ODEKIG1zZ2lkICItLWZpeC10aGluIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgLS1zdGRpbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQ5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzgzCiBtc2dpZCAiLS1zdGRpbiByZXF1aXJlcyBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NTUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3ODkKIG1zZ2lkICItLXZlcmlmeSB3aXRoIG5vIHBhY2tmaWxlIG5hbWUgZ2l2ZW4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTgwMyBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTgwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxODM3IGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1ODIKIG1zZ2lkICJmc2NrIGVycm9yIGluIHBhY2sgb2JqZWN0cyIKIG1zZ3N0ciAiIgogCkBAIC0xMTMzNSw2MzUgKzE0MjA0LDY0MCBAQAogbXNnaWQgIm5vdCBjb3B5aW5nIHRlbXBsYXRlcyBmcm9tICclcyc6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMyOQorIzogYnVpbHRpbi9pbml0LWRiLmM6MzM0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBoYW5kbGUgZmlsZSB0eXBlICVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMzMgorIzogYnVpbHRpbi9pbml0LWRiLmM6MzM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtb3ZlICVzIHRvICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjM0OSBidWlsdGluL2luaXQtZGIuYzozNTIKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjM1NCBidWlsdGluL2luaXQtZGIuYzozNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDA1CisjOiBidWlsdGluL2luaXQtZGIuYzo0MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVpbml0aWFsaXplZCBleGlzdGluZyBzaGFyZWQgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQwNgorIzogYnVpbHRpbi9pbml0LWRiLmM6NDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlaW5pdGlhbGl6ZWQgZXhpc3RpbmcgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMAorIzogYnVpbHRpbi9pbml0LWRiLmM6NDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkluaXRpYWxpemVkIGVtcHR5IHNoYXJlZCBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDExCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW5pdGlhbGl6ZWQgZW1wdHkgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ2MAorIzogYnVpbHRpbi9pbml0LWRiLmM6NDY4CiBtc2dpZCAiIgogImdpdCBpbml0IFstcSB8IC0tcXVpZXRdIFstLWJhcmVdIFstLXRlbXBsYXRlPTx0ZW1wbGF0ZS1kaXJlY3Rvcnk+XSBbLS0iCiAic2hhcmVkWz08cGVybWlzc2lvbnM+XV0gWzxkaXJlY3Rvcnk+XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0ODMKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MQogbXNnaWQgInBlcm1pc3Npb25zIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NAorIzogYnVpbHRpbi9pbml0LWRiLmM6NDkyCiBtc2dpZCAic3BlY2lmeSB0aGF0IHRoZSBnaXQgcmVwb3NpdG9yeSBpcyB0byBiZSBzaGFyZWQgYW1vbmdzdCBzZXZlcmFsIHVzZXJzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUxOCBidWlsdGluL2luaXQtZGIuYzo1MjMKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUyOSBidWlsdGluL2luaXQtZGIuYzo1MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG1rZGlyICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUyNworIzogYnVpbHRpbi9pbml0LWRiLmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGRpciB0byAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo1NDgKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJXMgKG9yIC0td29yay10cmVlPTxkaXJlY3Rvcnk+KSBub3QgYWxsb3dlZCB3aXRob3V0IHNwZWNpZnlpbmcgJXMgKG9yIC0tZ2l0LSIKICJkaXI9PGRpcmVjdG9yeT4pIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU3NgorIzogYnVpbHRpbi9pbml0LWRiLmM6NTg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBhY2Nlc3Mgd29yayB0cmVlICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxNQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxNgogbXNnaWQgIiIKICJnaXQgaW50ZXJwcmV0LXRyYWlsZXJzIFstLWluLXBsYWNlXSBbLS10cmltLWVtcHR5XSBbKC0tdHJhaWxlciAiCiAiPHRva2VuPlsoPXw6KTx2YWx1ZT5dKS4uLl0gWzxmaWxlPi4uLl0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NQogbXNnaWQgImVkaXQgZmlsZXMgaW4gcGxhY2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NgogbXNnaWQgInRyaW0gZW1wdHkgdHJhaWxlcnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5OAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5OQogbXNnaWQgIndoZXJlIHRvIHBsYWNlIHRoZSBuZXcgdHJhaWxlciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDEKIG1zZ2lkICJhY3Rpb24gaWYgdHJhaWxlciBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMgorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDMKIG1zZ2lkICJhY3Rpb24gaWYgdHJhaWxlciBpcyBtaXNzaW5nIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA0CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNQogbXNnaWQgIm91dHB1dCBvbmx5IHRoZSB0cmFpbGVycyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDYKIG1zZ2lkICJkbyBub3QgYXBwbHkgY29uZmlnIHJ1bGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA2CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNwogbXNnaWQgImpvaW4gd2hpdGVzcGFjZS1jb250aW51ZWQgdmFsdWVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA3CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwOAogbXNnaWQgInNldCBwYXJzaW5nIG9wdGlvbnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDkKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEwCiBtc2dpZCAiZG8gbm90IHRyZWF0IC0tLSBzcGVjaWFsbHkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTAKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTExCiBtc2dpZCAidHJhaWxlciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTIKIG1zZ2lkICJ0cmFpbGVyKHMpIHRvIGFkZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEyMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMjMKIG1zZ2lkICItLXRyYWlsZXIgd2l0aCAtLW9ubHktaW5wdXQgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEzMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMzMKIG1zZ2lkICJubyBpbnB1dCBmaWxlIGdpdmVuIGZvciBpbi1wbGFjZSBlZGl0aW5nIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTQKKyM6IGJ1aWx0aW4vbG9nLmM6NTYKIG1zZ2lkICJnaXQgbG9nIFs8b3B0aW9ucz5dIFs8cmV2aXNpb24tcmFuZ2U+XSBbWy0tXSA8cGF0aD4uLi5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTUKKyM6IGJ1aWx0aW4vbG9nLmM6NTcKIG1zZ2lkICJnaXQgc2hvdyBbPG9wdGlvbnM+XSA8b2JqZWN0Pi4uLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjk5CisjOiBidWlsdGluL2xvZy5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIC0tZGVjb3JhdGUgb3B0aW9uOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE2MgotbXNnaWQgInN1cHByZXNzIGRpZmYgb3V0cHV0IgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vbG9nLmM6MTYzCisjOiBidWlsdGluL2xvZy5jOjE3NAogbXNnaWQgInNob3cgc291cmNlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY0CisjOiBidWlsdGluL2xvZy5jOjE3NQogbXNnaWQgIlVzZSBtYWlsIG1hcCBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY2CisjOiBidWlsdGluL2xvZy5jOjE3NwogbXNnaWQgIm9ubHkgZGVjb3JhdGUgcmVmcyB0aGF0IG1hdGNoIDxwYXR0ZXJuPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE2OAorIzogYnVpbHRpbi9sb2cuYzoxNzkKIG1zZ2lkICJkbyBub3QgZGVjb3JhdGUgcmVmcyB0aGF0IG1hdGNoIDxwYXR0ZXJuPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE2OQorIzogYnVpbHRpbi9sb2cuYzoxODAKIG1zZ2lkICJkZWNvcmF0ZSBvcHRpb25zIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTcyCisjOiBidWlsdGluL2xvZy5jOjE4MwogbXNnaWQgIlByb2Nlc3MgbGluZSByYW5nZSBuLG0gaW4gZmlsZSwgY291bnRpbmcgZnJvbSAxIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MjcwCisjOiBidWlsdGluL2xvZy5jOjI4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGaW5hbCBvdXRwdXQ6ICVkICVzXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzo1MjIKKyM6IGJ1aWx0aW4vbG9nLmM6NTM1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBzaG93ICVzOiBiYWQgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjUzNyBidWlsdGluL2xvZy5jOjYzMQorIzogYnVpbHRpbi9sb2cuYzo1NTAgYnVpbHRpbi9sb2cuYzo2NDUKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgorbXNnaWQgImNvdWxkIG5vdCByZWFkIG9iamVjdCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjY1NQorIzogYnVpbHRpbi9sb2cuYzo2NzAKICMsIGMtZm9ybWF0Ci1tc2dpZCAiVW5rbm93biB0eXBlOiAlZCIKK21zZ2lkICJ1bmtub3duIHR5cGU6ICVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6Nzc2CisjOiBidWlsdGluL2xvZy5jOjgxNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCBjb3ZlciBmcm9tIGRlc2NyaXB0aW9uIG1vZGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzo4MjEKIG1zZ2lkICJmb3JtYXQuaGVhZGVycyB3aXRob3V0IHZhbHVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6ODc3CisjOiBidWlsdGluL2xvZy5jOjkzNgogbXNnaWQgIm5hbWUgb2Ygb3V0cHV0IGRpcmVjdG9yeSBpcyB0b28gbG9uZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjg5MworIzogYnVpbHRpbi9sb2cuYzo5NTIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ2Fubm90IG9wZW4gcGF0Y2ggZmlsZSAlcyIKK21zZ2lkICJjYW5ub3Qgb3BlbiBwYXRjaCBmaWxlICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6OTEwCi1tc2dpZCAiTmVlZCBleGFjdGx5IG9uZSByYW5nZS4iCisjOiBidWlsdGluL2xvZy5jOjk2OQorbXNnaWQgIm5lZWQgZXhhY3RseSBvbmUgcmFuZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzo5MjAKLW1zZ2lkICJOb3QgYSByYW5nZS4iCisjOiBidWlsdGluL2xvZy5jOjk3OQorbXNnaWQgIm5vdCBhIHJhbmdlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTA0MwotbXNnaWQgIkNvdmVyIGxldHRlciBuZWVkcyBlbWFpbCBmb3JtYXQiCisjOiBidWlsdGluL2xvZy5jOjExNDMKK21zZ2lkICJjb3ZlciBsZXR0ZXIgbmVlZHMgZW1haWwgZm9ybWF0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTExOQorIzogYnVpbHRpbi9sb2cuYzoxMTQ5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBjb3Zlci1sZXR0ZXIgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjEyMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5zYW5lIGluLXJlcGx5LXRvOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjExNDYKKyM6IGJ1aWx0aW4vbG9nLmM6MTI1NQogbXNnaWQgImdpdCBmb3JtYXQtcGF0Y2ggWzxvcHRpb25zPl0gWzxzaW5jZT4gfCA8cmV2aXNpb24tcmFuZ2U+XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjEyMDQKLW1zZ2lkICJUd28gb3V0cHV0IGRpcmVjdG9yaWVzPyIKKyM6IGJ1aWx0aW4vbG9nLmM6MTMxMworbXNnaWQgInR3byBvdXRwdXQgZGlyZWN0b3JpZXM/IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTMxMSBidWlsdGluL2xvZy5jOjIwNTQgYnVpbHRpbi9sb2cuYzoyMDU2IGJ1aWx0aW4vbG9nLmM6MjA2OAorIzogYnVpbHRpbi9sb2cuYzoxNDI0IGJ1aWx0aW4vbG9nLmM6MjE5NyBidWlsdGluL2xvZy5jOjIxOTkgYnVpbHRpbi9sb2cuYzoyMjExCiAjLCBjLWZvcm1hdAotbXNnaWQgIlVua25vd24gY29tbWl0ICVzIgorbXNnaWQgInVua25vd24gY29tbWl0ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTMyMSBidWlsdGluL25vdGVzLmM6ODk0IGJ1aWx0aW4vdGFnLmM6NTI2CisjOiBidWlsdGluL2xvZy5jOjE0MzQgYnVpbHRpbi9yZXBsYWNlLmM6NTggYnVpbHRpbi9yZXBsYWNlLmM6MjA3CisjOiBidWlsdGluL3JlcGxhY2UuYzoyMTAKICMsIGMtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZi4iCittc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMjYKLW1zZ2lkICJDb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlLiIKKyM6IGJ1aWx0aW4vbG9nLmM6MTQzOQorbXNnaWQgImNvdWxkIG5vdCBmaW5kIGV4YWN0IG1lcmdlIGJhc2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzMwCisjOiBidWlsdGluL2xvZy5jOjE0NDMKIG1zZ2lkICIiCi0iRmFpbGVkIHRvIGdldCB1cHN0cmVhbSwgaWYgeW91IHdhbnQgdG8gcmVjb3JkIGJhc2UgY29tbWl0IGF1dG9tYXRpY2FsbHksXG4iCisiZmFpbGVkIHRvIGdldCB1cHN0cmVhbSwgaWYgeW91IHdhbnQgdG8gcmVjb3JkIGJhc2UgY29tbWl0IGF1dG9tYXRpY2FsbHksXG4iCiAicGxlYXNlIHVzZSBnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvIHRvIHRyYWNrIGEgcmVtb3RlIGJyYW5jaC5cbiIKLSJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseS4iCisiT3IgeW91IGNvdWxkIHNwZWNpZnkgYmFzZSBjb21taXQgYnkgLS1iYXNlPTxiYXNlLWNvbW1pdC1pZD4gbWFudWFsbHkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzUwCi1tc2dpZCAiRmFpbGVkIHRvIGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ2MworbXNnaWQgImZhaWxlZCB0byBmaW5kIGV4YWN0IG1lcmdlIGJhc2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzYxCisjOiBidWlsdGluL2xvZy5jOjE0NzQKIG1zZ2lkICJiYXNlIGNvbW1pdCBzaG91bGQgYmUgdGhlIGFuY2VzdG9yIG9mIHJldmlzaW9uIGxpc3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzY1CisjOiBidWlsdGluL2xvZy5jOjE0NzgKIG1zZ2lkICJiYXNlIGNvbW1pdCBzaG91bGRuJ3QgYmUgaW4gcmV2aXNpb24gbGlzdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE0MTgKKyM6IGJ1aWx0aW4vbG9nLmM6MTUzMQogbXNnaWQgImNhbm5vdCBnZXQgcGF0Y2ggaWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDcwCisjOiBidWlsdGluL2xvZy5jOjE1ODMKIG1zZ2lkICJmYWlsZWQgdG8gaW5mZXIgcmFuZ2UtZGlmZiByYW5nZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTE1CisjOiBidWlsdGluL2xvZy5jOjE2MjkKIG1zZ2lkICJ1c2UgW1BBVENIIG4vbV0gZXZlbiB3aXRoIGEgc2luZ2xlIHBhdGNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUxOAorIzogYnVpbHRpbi9sb2cuYzoxNjMyCiBtc2dpZCAidXNlIFtQQVRDSF0gZXZlbiB3aXRoIG11bHRpcGxlIHBhdGNoZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTIyCisjOiBidWlsdGluL2xvZy5jOjE2MzYKIG1zZ2lkICJwcmludCBwYXRjaGVzIHRvIHN0YW5kYXJkIG91dCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MjQKKyM6IGJ1aWx0aW4vbG9nLmM6MTYzOAogbXNnaWQgImdlbmVyYXRlIGEgY292ZXIgbGV0dGVyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyNgorIzogYnVpbHRpbi9sb2cuYzoxNjQwCiBtc2dpZCAidXNlIHNpbXBsZSBudW1iZXIgc2VxdWVuY2UgZm9yIG91dHB1dCBmaWxlIG5hbWVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyNworIzogYnVpbHRpbi9sb2cuYzoxNjQxCiBtc2dpZCAic2Z4IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyOAorIzogYnVpbHRpbi9sb2cuYzoxNjQyCiBtc2dpZCAidXNlIDxzZng+IGluc3RlYWQgb2YgJy5wYXRjaCciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTMwCisjOiBidWlsdGluL2xvZy5jOjE2NDQKIG1zZ2lkICJzdGFydCBudW1iZXJpbmcgcGF0Y2hlcyBhdCA8bj4gaW5zdGVhZCBvZiAxIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzMgorIzogYnVpbHRpbi9sb2cuYzoxNjQ2CiBtc2dpZCAibWFyayB0aGUgc2VyaWVzIGFzIE50aCByZS1yb2xsIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzNAorIzogYnVpbHRpbi9sb2cuYzoxNjQ4CiBtc2dpZCAiVXNlIFtSRkMgUEFUQ0hdIGluc3RlYWQgb2YgW1BBVENIXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1MQorbXNnaWQgImNvdmVyLWZyb20tZGVzY3JpcHRpb24tbW9kZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTIKK21zZ2lkICJnZW5lcmF0ZSBwYXJ0cyBvZiBhIGNvdmVyIGxldHRlciBiYXNlZCBvbiBhIGJyYW5jaCdzIGRlc2NyaXB0aW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1NAogbXNnaWQgIlVzZSBbPHByZWZpeD5dIGluc3RlYWQgb2YgW1BBVENIXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1NwogbXNnaWQgInN0b3JlIHJlc3VsdGluZyBmaWxlcyBpbiA8ZGlyPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDMKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2MAogbXNnaWQgImRvbid0IHN0cmlwL2FkZCBbUEFUQ0hdIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU0NgorIzogYnVpbHRpbi9sb2cuYzoxNjYzCiBtc2dpZCAiZG9uJ3Qgb3V0cHV0IGJpbmFyeSBkaWZmcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDgKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2NQogbXNnaWQgIm91dHB1dCBhbGwtemVybyBoYXNoIGluIEZyb20gaGVhZGVyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1MAorIzogYnVpbHRpbi9sb2cuYzoxNjY3CiBtc2dpZCAiZG9uJ3QgaW5jbHVkZSBhIHBhdGNoIG1hdGNoaW5nIGEgY29tbWl0IHVwc3RyZWFtIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1MgorIzogYnVpbHRpbi9sb2cuYzoxNjY5CiBtc2dpZCAic2hvdyBwYXRjaCBmb3JtYXQgaW5zdGVhZCBvZiBkZWZhdWx0IChwYXRjaCArIHN0YXQpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NAorIzogYnVpbHRpbi9sb2cuYzoxNjcxCiBtc2dpZCAiTWVzc2FnaW5nIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NQorIzogYnVpbHRpbi9sb2cuYzoxNjcyCiBtc2dpZCAiaGVhZGVyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NgorIzogYnVpbHRpbi9sb2cuYzoxNjczCiBtc2dpZCAiYWRkIGVtYWlsIGhlYWRlciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTcgYnVpbHRpbi9sb2cuYzoxNTU5CisjOiBidWlsdGluL2xvZy5jOjE2NzQgYnVpbHRpbi9sb2cuYzoxNjc2CiBtc2dpZCAiZW1haWwiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU3CisjOiBidWlsdGluL2xvZy5jOjE2NzQKIG1zZ2lkICJhZGQgVG86IGhlYWRlciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3NgogbXNnaWQgImFkZCBDYzogaGVhZGVyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2MQorIzogYnVpbHRpbi9sb2cuYzoxNjc4CiBtc2dpZCAiaWRlbnQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTYyCisjOiBidWlsdGluL2xvZy5jOjE2NzkKIG1zZ2lkICJzZXQgRnJvbSBhZGRyZXNzIHRvIDxpZGVudD4gKG9yIGNvbW1pdHRlciBpZGVudCBpZiBhYnNlbnQpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NAorIzogYnVpbHRpbi9sb2cuYzoxNjgxCiBtc2dpZCAibWVzc2FnZS1pZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjUKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4MgogbXNnaWQgIm1ha2UgZmlyc3QgbWFpbCBhIHJlcGx5IHRvIDxtZXNzYWdlLWlkPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjYgYnVpbHRpbi9sb2cuYzoxNTY5CisjOiBidWlsdGluL2xvZy5jOjE2ODMgYnVpbHRpbi9sb2cuYzoxNjg2CiBtc2dpZCAiYm91bmRhcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTY3CisjOiBidWlsdGluL2xvZy5jOjE2ODQKIG1zZ2lkICJhdHRhY2ggdGhlIHBhdGNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3MAorIzogYnVpbHRpbi9sb2cuYzoxNjg3CiBtc2dpZCAiaW5saW5lIHRoZSBwYXRjaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzQKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5MQogbXNnaWQgImVuYWJsZSBtZXNzYWdlIHRocmVhZGluZywgc3R5bGVzOiBzaGFsbG93LCBkZWVwIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3NgorIzogYnVpbHRpbi9sb2cuYzoxNjkzCiBtc2dpZCAic2lnbmF0dXJlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3NworIzogYnVpbHRpbi9sb2cuYzoxNjk0CiBtc2dpZCAiYWRkIGEgc2lnbmF0dXJlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3OAorIzogYnVpbHRpbi9sb2cuYzoxNjk1CiBtc2dpZCAiYmFzZS1jb21taXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc5CisjOiBidWlsdGluL2xvZy5jOjE2OTYKIG1zZ2lkICJhZGQgcHJlcmVxdWlzaXRlIHRyZWUgaW5mbyB0byB0aGUgcGF0Y2ggc2VyaWVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4MQorIzogYnVpbHRpbi9sb2cuYzoxNjk4CiBtc2dpZCAiYWRkIGEgc2lnbmF0dXJlIGZyb20gYSBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4MgorIzogYnVpbHRpbi9sb2cuYzoxNjk5CiBtc2dpZCAiZG9uJ3QgcHJpbnQgdGhlIHBhdGNoIGZpbGVuYW1lcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODQKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMQogbXNnaWQgInNob3cgcHJvZ3Jlc3Mgd2hpbGUgZ2VuZXJhdGluZyBwYXRjaGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4NQotbXNnaWQgInJldiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2xvZy5jOjE1ODYKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMwogbXNnaWQgInNob3cgY2hhbmdlcyBhZ2FpbnN0IDxyZXY+IGluIGNvdmVyIGxldHRlciBvciBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTg5CisjOiBidWlsdGluL2xvZy5jOjE3MDYKIG1zZ2lkICJzaG93IGNoYW5nZXMgYWdhaW5zdCA8cmVmc3BlYz4gaW4gY292ZXIgbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE1OTEKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwOAogbXNnaWQgInBlcmNlbnRhZ2UgYnkgd2hpY2ggY3JlYXRpb24gaXMgd2VpZ2h0ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjY2CisjOiBidWlsdGluL2xvZy5jOjE3OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBpZGVudCBsaW5lOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE2ODEKKyM6IGJ1aWx0aW4vbG9nLmM6MTgwNwogbXNnaWQgIi1uIGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY4MworIzogYnVpbHRpbi9sb2cuYzoxODA5CiBtc2dpZCAiLS1zdWJqZWN0LXByZWZpeC8tLXJmYyBhbmQgLWsgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE2OTEKKyM6IGJ1aWx0aW4vbG9nLmM6MTgxNwogbXNnaWQgIi0tbmFtZS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjkzCisjOiBidWlsdGluL2xvZy5jOjE4MTkKIG1zZ2lkICItLW5hbWUtc3RhdHVzIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjk1CisjOiBidWlsdGluL2xvZy5jOjE4MjEKIG1zZ2lkICItLWNoZWNrIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNzI3CisjOiBidWlsdGluL2xvZy5jOjE4NTQKIG1zZ2lkICJzdGFuZGFyZCBvdXRwdXQsIG9yIGRpcmVjdG9yeSwgd2hpY2ggb25lPyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE3MjkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2xvZy5jOjE4MTYKKyM6IGJ1aWx0aW4vbG9nLmM6MTk1OAogbXNnaWQgIi0taW50ZXJkaWZmIHJlcXVpcmVzIC0tY292ZXItbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE4MjAKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2MgogbXNnaWQgIkludGVyZGlmZjoiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODIxCisjOiBidWlsdGluL2xvZy5jOjE5NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW50ZXJkaWZmIGFnYWluc3QgdiVkOiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE4MjcKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2OQogbXNnaWQgIi0tY3JlYXRpb24tZmFjdG9yIHJlcXVpcmVzIC0tcmFuZ2UtZGlmZiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE4MzEKKyM6IGJ1aWx0aW4vbG9nLmM6MTk3MwogbXNnaWQgIi0tcmFuZ2UtZGlmZiByZXF1aXJlcyAtLWNvdmVyLWxldHRlciBvciBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODM5CisjOiBidWlsdGluL2xvZy5jOjE5ODEKIG1zZ2lkICJSYW5nZS1kaWZmOiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE4NDAKKyM6IGJ1aWx0aW4vbG9nLmM6MTk4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJSYW5nZS1kaWZmIGFnYWluc3QgdiVkOiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE4NTEKKyM6IGJ1aWx0aW4vbG9nLmM6MTk5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBzaWduYXR1cmUgZmlsZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg4NworIzogYnVpbHRpbi9sb2cuYzoyMDI5CiBtc2dpZCAiR2VuZXJhdGluZyBwYXRjaGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTkzMQotbXNnaWQgIkZhaWxlZCB0byBjcmVhdGUgb3V0cHV0IGZpbGVzIgorIzogYnVpbHRpbi9sb2cuYzoyMDczCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBvdXRwdXQgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxOTg5CisjOiBidWlsdGluL2xvZy5jOjIxMzIKIG1zZ2lkICJnaXQgY2hlcnJ5IFstdl0gWzx1cHN0cmVhbT4gWzxoZWFkPiBbPGxpbWl0Pl1dXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjIwNDMKKyM6IGJ1aWx0aW4vbG9nLmM6MjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IGZpbmQgYSB0cmFja2VkIHJlbW90ZSBicmFuY2gsIHBsZWFzZSBzcGVjaWZ5IDx1cHN0cmVhbT4gbWFudWFsbHkuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjQ2OQorIzogYnVpbHRpbi9scy1maWxlcy5jOjQ3MAogbXNnaWQgImdpdCBscy1maWxlcyBbPG9wdGlvbnM+XSBbPGZpbGU+Li4uXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTI1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTI2CiBtc2dpZCAiaWRlbnRpZnkgdGhlIGZpbGUgc3RhdHVzIHdpdGggdGFncyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTI3CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTI4CiBtc2dpZCAidXNlIGxvd2VyY2FzZSBsZXR0ZXJzIGZvciAnYXNzdW1lIHVuY2hhbmdlZCcgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUyOQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMAogbXNnaWQgInVzZSBsb3dlcmNhc2UgbGV0dGVycyBmb3IgJ2ZzbW9uaXRvciBjbGVhbicgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMgogbXNnaWQgInNob3cgY2FjaGVkIGZpbGVzIGluIHRoZSBvdXRwdXQgKGRlZmF1bHQpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzMKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzQKIG1zZ2lkICJzaG93IGRlbGV0ZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTM1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTM2CiBtc2dpZCAic2hvdyBtb2RpZmllZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzcKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzgKIG1zZ2lkICJzaG93IG90aGVyIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MAogbXNnaWQgInNob3cgaWdub3JlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDIKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDMKIG1zZ2lkICJzaG93IHN0YWdlZCBjb250ZW50cycgb2JqZWN0IG5hbWUgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ0CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ1CiBtc2dpZCAic2hvdyBmaWxlcyBvbiB0aGUgZmlsZXN5c3RlbSB0aGF0IG5lZWQgdG8gYmUgcmVtb3ZlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ2CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ3CiBtc2dpZCAic2hvdyAnb3RoZXInIGRpcmVjdG9yaWVzJyBuYW1lcyBvbmx5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDgKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDkKIG1zZ2lkICJzaG93IGxpbmUgZW5kaW5ncyBvZiBmaWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTUwCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTUxCiBtc2dpZCAiZG9uJ3Qgc2hvdyBlbXB0eSBkaXJlY3RvcmllcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTUzCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU0CiBtc2dpZCAic2hvdyB1bm1lcmdlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTYKIG1zZ2lkICJzaG93IHJlc29sdmUtdW5kbyBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTU3CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU4CiBtc2dpZCAic2tpcCBmaWxlcyBtYXRjaGluZyBwYXR0ZXJuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjAKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjEKIG1zZ2lkICJleGNsdWRlIHBhdHRlcm5zIGFyZSByZWFkIGZyb20gPGZpbGU+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjMKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjQKIG1zZ2lkICJyZWFkIGFkZGl0aW9uYWwgcGVyLWRpcmVjdG9yeSBleGNsdWRlIHBhdHRlcm5zIGluIDxmaWxlPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTY1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTY2CiBtc2dpZCAiYWRkIHRoZSBzdGFuZGFyZCBnaXQgZXhjbHVzaW9ucyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTY5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTcwCiBtc2dpZCAibWFrZSB0aGUgb3V0cHV0IHJlbGF0aXZlIHRvIHRoZSBwcm9qZWN0IHRvcCBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MwogbXNnaWQgInJlY3Vyc2UgdGhyb3VnaCBzdWJtb2R1bGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzQKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzUKIG1zZ2lkICJpZiBhbnkgPGZpbGU+IGlzIG5vdCBpbiB0aGUgaW5kZXgsIHRyZWF0IHRoaXMgYXMgYW4gZXJyb3IiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NgogbXNnaWQgInRyZWUtaXNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzYKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzcKIG1zZ2lkICJwcmV0ZW5kIHRoYXQgcGF0aHMgcmVtb3ZlZCBzaW5jZSA8dHJlZS1pc2g+IGFyZSBzdGlsbCBwcmVzZW50IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzgKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzkKIG1zZ2lkICJzaG93IGRlYnVnZ2luZyBkYXRhIgogbXNnc3RyICIiCiAKQEAgLTExOTc4LDcgKzE0ODUyLDcgQEAKIG1zZ2lkICJkbyBub3QgcHJpbnQgcmVtb3RlIFVSTCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xzLXJlbW90ZS5jOjYwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjIgYnVpbHRpbi9yZWJhc2UuYzo5MDMKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjAgYnVpbHRpbi9scy1yZW1vdGUuYzo2MiBidWlsdGluL3JlYmFzZS5jOjE1NjEKIG1zZ2lkICJleGVjIgogbXNnc3RyICIiCiAKQEAgLTEyMDAyLDExICsxNDg3NiwxMSBAQAogbXNnaWQgInRha2UgdXJsLjxiYXNlPi5pbnN0ZWFkT2YgaW50byBhY2NvdW50IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzMKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzIKIG1zZ2lkICJleGl0IHdpdGggZXhpdCBjb2RlIDIgaWYgbm8gbWF0Y2hpbmcgcmVmcyBhcmUgZm91bmQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NQogbXNnaWQgInNob3cgdW5kZXJseWluZyByZWYgaW4gYWRkaXRpb24gdG8gdGhlIG9iamVjdCBwb2ludGVkIGJ5IGl0IgogbXNnc3RyICIiCiAKQEAgLTEyMDUxLDM0OCArMTQ5MjUsMzczIEBACiBtc2dpZCAiZW1wdHkgbWJveDogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6NTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1NQogbXNnaWQgImdpdCBtZXJnZSBbPG9wdGlvbnM+XSBbPGNvbW1pdD4uLi5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1MworIzogYnVpbHRpbi9tZXJnZS5jOjU2CiBtc2dpZCAiZ2l0IG1lcmdlIC0tYWJvcnQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjU0CisjOiBidWlsdGluL21lcmdlLmM6NTcKIG1zZ2lkICJnaXQgbWVyZ2UgLS1jb250aW51ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTExCisjOiBidWlsdGluL21lcmdlLmM6MTE5CiBtc2dpZCAic3dpdGNoIGBtJyByZXF1aXJlcyBhIHZhbHVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNzcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgcmVxdWlyZXMgYSB2YWx1ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBmaW5kIG1lcmdlIHN0cmF0ZWd5ICclcycuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE3OAorIzogYnVpbHRpbi9tZXJnZS5jOjE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJBdmFpbGFibGUgc3RyYXRlZ2llcyBhcmU6IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxODMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXZhaWxhYmxlIGN1c3RvbSBzdHJhdGVnaWVzIGFyZToiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjIzNCBidWlsdGluL3B1bGwuYzoxNDMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDUgYnVpbHRpbi9wdWxsLmM6MTMyCiBtc2dpZCAiZG8gbm90IHNob3cgYSBkaWZmc3RhdCBhdCB0aGUgZW5kIG9mIHRoZSBtZXJnZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjM3IGJ1aWx0aW4vcHVsbC5jOjE0NgorIzogYnVpbHRpbi9tZXJnZS5jOjI0OCBidWlsdGluL3B1bGwuYzoxMzUKIG1zZ2lkICJzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjIzOCBidWlsdGluL3B1bGwuYzoxNDkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDkgYnVpbHRpbi9wdWxsLmM6MTM4CiBtc2dpZCAiKHN5bm9ueW0gdG8gLS1zdGF0KSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQwIGJ1aWx0aW4vcHVsbC5jOjE1MgorIzogYnVpbHRpbi9tZXJnZS5jOjI1MSBidWlsdGluL3B1bGwuYzoxNDEKIG1zZ2lkICJhZGQgKGF0IG1vc3QgPG4+KSBlbnRyaWVzIGZyb20gc2hvcnRsb2cgdG8gbWVyZ2UgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0MyBidWlsdGluL3B1bGwuYzoxNTgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTQgYnVpbHRpbi9wdWxsLmM6MTQ3CiBtc2dpZCAiY3JlYXRlIGEgc2luZ2xlIGNvbW1pdCBpbnN0ZWFkIG9mIGRvaW5nIGEgbWVyZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0NSBidWlsdGluL3B1bGwuYzoxNjEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTYgYnVpbHRpbi9wdWxsLmM6MTUwCiBtc2dpZCAicGVyZm9ybSBhIGNvbW1pdCBpZiB0aGUgbWVyZ2Ugc3VjY2VlZHMgKGRlZmF1bHQpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDcgYnVpbHRpbi9wdWxsLmM6MTY0CisjOiBidWlsdGluL21lcmdlLmM6MjU4IGJ1aWx0aW4vcHVsbC5jOjE1MwogbXNnaWQgImVkaXQgbWVzc2FnZSBiZWZvcmUgY29tbWl0dGluZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQ4CisjOiBidWlsdGluL21lcmdlLmM6MjYwCiBtc2dpZCAiYWxsb3cgZmFzdC1mb3J3YXJkIChkZWZhdWx0KSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjUwIGJ1aWx0aW4vcHVsbC5jOjE3MAorIzogYnVpbHRpbi9tZXJnZS5jOjI2MiBidWlsdGluL3B1bGwuYzoxNjAKIG1zZ2lkICJhYm9ydCBpZiBmYXN0LWZvcndhcmQgaXMgbm90IHBvc3NpYmxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTQgYnVpbHRpbi9wdWxsLmM6MTczCisjOiBidWlsdGluL21lcmdlLmM6MjY2IGJ1aWx0aW4vcHVsbC5jOjE2MwogbXNnaWQgInZlcmlmeSB0aGF0IHRoZSBuYW1lZCBjb21taXQgaGFzIGEgdmFsaWQgR1BHIHNpZ25hdHVyZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU1IGJ1aWx0aW4vbm90ZXMuYzo3ODQgYnVpbHRpbi9wdWxsLmM6MTc3Ci0jOiBidWlsdGluL3JlYmFzZS5jOjkxNiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODYgYnVpbHRpbi9yZXZlcnQuYzoxMTAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjcgYnVpbHRpbi9ub3Rlcy5jOjc4NyBidWlsdGluL3B1bGwuYzoxNjcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTIwIGJ1aWx0aW4vcmViYXNlLmM6MTU3NSBidWlsdGluL3JldmVydC5jOjExNAogbXNnaWQgInN0cmF0ZWd5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTYgYnVpbHRpbi9wdWxsLmM6MTc4CisjOiBidWlsdGluL21lcmdlLmM6MjY4IGJ1aWx0aW4vcHVsbC5jOjE2OAogbXNnaWQgIm1lcmdlIHN0cmF0ZWd5IHRvIHVzZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU3IGJ1aWx0aW4vcHVsbC5jOjE4MQorIzogYnVpbHRpbi9tZXJnZS5jOjI2OSBidWlsdGluL3B1bGwuYzoxNzEKIG1zZ2lkICJvcHRpb249dmFsdWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1OCBidWlsdGluL3B1bGwuYzoxODIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzAgYnVpbHRpbi9wdWxsLmM6MTcyCiBtc2dpZCAib3B0aW9uIGZvciBzZWxlY3RlZCBtZXJnZSBzdHJhdGVneSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjYwCisjOiBidWlsdGluL21lcmdlLmM6MjcyCiBtc2dpZCAibWVyZ2UgY29tbWl0IG1lc3NhZ2UgKGZvciBhIG5vbi1mYXN0LWZvcndhcmQgbWVyZ2UpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzkKIG1zZ2lkICJhYm9ydCB0aGUgY3VycmVudCBpbi1wcm9ncmVzcyBtZXJnZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjY5CisjOiBidWlsdGluL21lcmdlLmM6MjgxCittc2dpZCAiLS1hYm9ydCBidXQgbGVhdmUgaW5kZXggYW5kIHdvcmtpbmcgdHJlZSBhbG9uZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MjgzCiBtc2dpZCAiY29udGludWUgdGhlIGN1cnJlbnQgaW4tcHJvZ3Jlc3MgbWVyZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI3MSBidWlsdGluL3B1bGwuYzoxODkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODUgYnVpbHRpbi9wdWxsLmM6MTc5CiBtc2dpZCAiYWxsb3cgbWVyZ2luZyB1bnJlbGF0ZWQgaGlzdG9yaWVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzcKLW1zZ2lkICJ2ZXJpZnkgY29tbWl0LW1zZyBob29rIgorIzogYnVpbHRpbi9tZXJnZS5jOjI5MQorbXNnaWQgImJ5cGFzcyBwcmUtbWVyZ2UtY29tbWl0IGFuZCBjb21taXQtbXNnIGhvb2tzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozMDIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMDgKIG1zZ2lkICJjb3VsZCBub3QgcnVuIHN0YXNoLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzA3CisjOiBidWlsdGluL21lcmdlLmM6MzEzCiBtc2dpZCAic3Rhc2ggZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozMTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMTgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzM0IGJ1aWx0aW4vbWVyZ2UuYzozNTEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozNDAgYnVpbHRpbi9tZXJnZS5jOjM1NwogbXNnaWQgInJlYWQtdHJlZSBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjM4MQorIzogYnVpbHRpbi9tZXJnZS5jOjM4NwogbXNnaWQgIiAobm90aGluZyB0byBzcXVhc2gpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozOTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3F1YXNoIGNvbW1pdCAtLSBub3QgdXBkYXRpbmcgSEVBRFxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo0NDIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo0NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gbWVyZ2UgbWVzc2FnZSAtLSBub3QgdXBkYXRpbmcgSEVBRFxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo0OTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo0OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBkb2VzIG5vdCBwb2ludCB0byBhIGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6NTgwCisjOiBidWlsdGluL21lcmdlLmM6NTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCBicmFuY2guJXMubWVyZ2VvcHRpb25zIHN0cmluZzogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjcwMQorIzogYnVpbHRpbi9tZXJnZS5jOjcwOAogbXNnaWQgIk5vdCBoYW5kbGluZyBhbnl0aGluZyBvdGhlciB0aGFuIHR3byBoZWFkcyBtZXJnZS4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjcxNQorIzogYnVpbHRpbi9tZXJnZS5jOjcyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmtub3duIG9wdGlvbiBmb3IgbWVyZ2UtcmVjdXJzaXZlOiAtWCVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3MzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3ODIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlYWQgZnJvbSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGNvbW1pdHRpbmcgbWVyZ2U7IHVzZSAnZ2l0IGNvbW1pdCcgdG8gY29tcGxldGUgdGhlIG1lcmdlLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTcKLSMsIGMtZm9ybWF0CisjOiBidWlsdGluL21lcmdlLmM6ODA0CiBtc2dpZCAiIgogIlBsZWFzZSBlbnRlciBhIGNvbW1pdCBtZXNzYWdlIHRvIGV4cGxhaW4gd2h5IHRoaXMgbWVyZ2UgaXMgbmVjZXNzYXJ5LFxuIgogImVzcGVjaWFsbHkgaWYgaXQgbWVyZ2VzIGFuIHVwZGF0ZWQgdXBzdHJlYW0gaW50byBhIHRvcGljIGJyYW5jaC5cbiIKICJcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6ODA5Cittc2dpZCAiQW4gZW1wdHkgbWVzc2FnZSBhYm9ydHMgdGhlIGNvbW1pdC5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6ODEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKICJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBpZ25vcmVkLCBhbmQgYW4gZW1wdHkgbWVzc2FnZSBhYm9ydHNcbiIKICJ0aGUgY29tbWl0LlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4MzMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4NjUKIG1zZ2lkICJFbXB0eSBjb21taXQgbWVzc2FnZS4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjg1MgorIzogYnVpbHRpbi9tZXJnZS5jOjg4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJXb25kZXJmdWwuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjkwNQorIzogYnVpbHRpbi9tZXJnZS5jOjk0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvbWF0aWMgbWVyZ2UgZmFpbGVkOyBmaXggY29uZmxpY3RzIGFuZCB0aGVuIGNvbW1pdCB0aGUgcmVzdWx0LlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5NDQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODAKIG1zZ2lkICJObyBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjk0NgorIzogYnVpbHRpbi9tZXJnZS5jOjk4MgogbXNnaWQgIk5vIHJlbW90ZSBmb3IgdGhlIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ4CisjOiBidWlsdGluL21lcmdlLmM6OTg0CiBtc2dpZCAiTm8gZGVmYXVsdCB1cHN0cmVhbSBkZWZpbmVkIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5NTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gcmVtb3RlLXRyYWNraW5nIGJyYW5jaCBmb3IgJXMgZnJvbSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTAxMAorIzogYnVpbHRpbi9tZXJnZS5jOjEwNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkIHZhbHVlICclcycgaW4gZW52aXJvbm1lbnQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTExMworIzogYnVpbHRpbi9tZXJnZS5jOjExNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UgaW4gJXM6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTQ3CisjOiBidWlsdGluL21lcmdlLmM6MTE4MwogbXNnaWQgIm5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjUwCisjOiBidWlsdGluL21lcmdlLmM6MTI4NgogbXNnaWQgIi0tYWJvcnQgZXhwZWN0cyBubyBhcmd1bWVudHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNTQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjkwCiBtc2dpZCAiVGhlcmUgaXMgbm8gbWVyZ2UgdG8gYWJvcnQgKE1FUkdFX0hFQUQgbWlzc2luZykuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjY2CisjOiBidWlsdGluL21lcmdlLmM6MTI5OQorbXNnaWQgIi0tcXVpdCBleHBlY3RzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6MTMxMgogbXNnaWQgIi0tY29udGludWUgZXhwZWN0cyBubyBhcmd1bWVudHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzE2CiBtc2dpZCAiVGhlcmUgaXMgbm8gbWVyZ2UgaW4gcHJvZ3Jlc3MgKE1FUkdFX0hFQUQgbWlzc2luZykuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjg2CisjOiBidWlsdGluL21lcmdlLmM6MTMzMgogbXNnaWQgIiIKICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS5cbiIKICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIHlvdSBtZXJnZS4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyOTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzM5CiBtc2dpZCAiIgogIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdHMpLlxuIgogIlBsZWFzZSwgY29tbWl0IHlvdXIgY2hhbmdlcyBiZWZvcmUgeW91IG1lcmdlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI5NgorIzogYnVpbHRpbi9tZXJnZS5jOjEzNDIKIG1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgY2hlcnJ5LXBpY2sgKENIRVJSWV9QSUNLX0hFQUQgZXhpc3RzKS4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMDUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzU2CiBtc2dpZCAiWW91IGNhbm5vdCBjb21iaW5lIC0tc3F1YXNoIHdpdGggLS1uby1mZi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzU4Cittc2dpZCAiWW91IGNhbm5vdCBjb21iaW5lIC0tc3F1YXNoIHdpdGggLS1jb21taXQuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzc0CiBtc2dpZCAiTm8gY29tbWl0IHNwZWNpZmllZCBhbmQgbWVyZ2UuZGVmYXVsdFRvVXBzdHJlYW0gbm90IHNldC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzkxCiBtc2dpZCAiU3F1YXNoIGNvbW1pdCBpbnRvIGVtcHR5IGhlYWQgbm90IHN1cHBvcnRlZCB5ZXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzkzCiBtc2dpZCAiTm9uLWZhc3QtZm9yd2FyZCBjb21taXQgZG9lcyBub3QgbWFrZSBzZW5zZSBpbnRvIGFuIGVtcHR5IGhlYWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIC0gbm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDAwCiBtc2dpZCAiQ2FuIG1lcmdlIG9ubHkgZXhhY3RseSBvbmUgY29tbWl0IGludG8gZW1wdHkgaGVhZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQyMQorIzogYnVpbHRpbi9tZXJnZS5jOjE0ODEKIG1zZ2lkICJyZWZ1c2luZyB0byBtZXJnZSB1bnJlbGF0ZWQgaGlzdG9yaWVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDMwCisjOiBidWlsdGluL21lcmdlLmM6MTQ5MAogbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZS4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0NDAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVwZGF0aW5nICVzLi4lc1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDgyCisjOiBidWlsdGluL21lcmdlLmM6MTU0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJUcnlpbmcgcmVhbGx5IHRyaXZpYWwgaW4taW5kZXggbWVyZ2UuLi5cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQ4OQorIzogYnVpbHRpbi9tZXJnZS5jOjE1NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm9wZS5cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTUxNAorIzogYnVpbHRpbi9tZXJnZS5jOjE1NzQKIG1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIFllZWFoISIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTUyMAorIzogYnVpbHRpbi9tZXJnZS5jOjE1ODAKIG1zZ2lkICJOb3QgcG9zc2libGUgdG8gZmFzdC1mb3J3YXJkLCBhYm9ydGluZy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1NDMgYnVpbHRpbi9tZXJnZS5jOjE2MjIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjAzIGJ1aWx0aW4vbWVyZ2UuYzoxNjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJld2luZGluZyB0aGUgdHJlZSB0byBwcmlzdGluZS4uLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQ3CisjOiBidWlsdGluL21lcmdlLmM6MTYwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJUcnlpbmcgbWVyZ2Ugc3RyYXRlZ3kgJXMuLi5cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYxMworIzogYnVpbHRpbi9tZXJnZS5jOjE2NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gbWVyZ2Ugc3RyYXRlZ3kgaGFuZGxlZCB0aGUgbWVyZ2UuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MTUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1lcmdlIHdpdGggc3RyYXRlZ3kgJXMgZmFpbGVkLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjI0CisjOiBidWlsdGluL21lcmdlLmM6MTY3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJVc2luZyB0aGUgJXMgdG8gcHJlcGFyZSByZXNvbHZpbmcgYnkgaGFuZC5cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYzNgorIzogYnVpbHRpbi9tZXJnZS5jOjE2ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0b21hdGljIG1lcmdlIHdlbnQgd2VsbDsgc3RvcHBlZCBiZWZvcmUgY29tbWl0dGluZyBhcyByZXF1ZXN0ZWRcbiIKIG1zZ3N0ciAiIgpAQCAtMTI0NzUsMzMgKzE1Mzc0LDMzIEBACiBtc2dpZCAic2V0IGxhYmVscyBmb3IgZmlsZTEvb3JpZy1maWxlL2ZpbGUyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NDUKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvcHRpb24gJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1MQorIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1NQorIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCBiYXNlLiBJZ25vcmluZyAlcy4iCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIGJhc2VzLiBJZ25vcmluZyAlcy4iCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjYzCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjY1CiBtc2dpZCAibm90IGhhbmRsaW5nIGFueXRoaW5nIG90aGVyIHRoYW4gdHdvIGhlYWRzIG1lcmdlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjY5IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzEKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzQgYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSByZWYgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjc3CisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1lcmdpbmcgJXMgd2l0aCAlc1xuIgogbXNnc3RyICIiCkBAIC0xMjUxNCw3ICsxNTQxMyw3IEBACiBtc2dpZCAiaW5wdXQgaXMgTlVMIHRlcm1pbmF0ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ta3RyZWUuYzoxNTUgYnVpbHRpbi93cml0ZS10cmVlLmM6MjUKKyM6IGJ1aWx0aW4vbWt0cmVlLmM6MTU1IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI2CiBtc2dpZCAiYWxsb3cgbWlzc2luZyBvYmplY3RzIgogbXNnc3RyICIiCiAKQEAgLTEyNTIyLDE1NiArMTU0MjEsMTY4IEBACiBtc2dpZCAiYWxsb3cgY3JlYXRpb24gb2YgbW9yZSB0aGFuIG9uZSB0cmVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjgKLW1zZ2lkICJnaXQgbXVsdGktcGFjay1pbmRleCBbLS1vYmplY3QtZGlyPTxkaXI+XSAod3JpdGV8dmVyaWZ5KSIKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjkKK21zZ2lkICIiCisiZ2l0IG11bHRpLXBhY2staW5kZXggWzxvcHRpb25zPl0gKHdyaXRlfHZlcmlmeXxleHBpcmV8cmVwYWNrIC0tYmF0Y2gtIgorInNpemU9PHNpemU+KSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyMQorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjYKIG1zZ2lkICJvYmplY3QgZGlyZWN0b3J5IGNvbnRhaW5pbmcgc2V0IG9mIHBhY2tmaWxlIGFuZCBwYWNrLWluZGV4IHBhaXJzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjM5CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyOQorbXNnaWQgIiIKKyJkdXJpbmcgcmVwYWNrLCBjb2xsZWN0IHBhY2stZmlsZXMgb2Ygc21hbGxlciBzaXplIGludG8gYSBiYXRjaCB0aGF0IGlzICIKKyJsYXJnZXIgdGhhbiB0aGlzIHNpemUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NTAgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo2NwogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo0OAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bnJlY29nbml6ZWQgdmVyYjogJXMiCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo2MAorbXNnaWQgIi0tYmF0Y2gtc2l6ZSBvcHRpb24gaXMgb25seSBmb3IgJ3JlcGFjaycgc3ViY29tbWFuZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MTcKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBzdWJjb21tYW5kOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL212LmM6MTgKIG1zZ2lkICJnaXQgbXYgWzxvcHRpb25zPl0gPHNvdXJjZT4uLi4gPGRlc3RpbmF0aW9uPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6ODIKKyM6IGJ1aWx0aW4vbXYuYzo4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJEaXJlY3RvcnkgJXMgaXMgaW4gaW5kZXggYW5kIG5vIHN1Ym1vZHVsZT8iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tdi5jOjg0CisjOiBidWlsdGluL212LmM6ODUKIG1zZ2lkICJQbGVhc2Ugc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MTAyCisjOiBidWlsdGluL212LmM6MTAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiUuKnMgaXMgaW4gaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tdi5jOjEyNAorIzogYnVpbHRpbi9tdi5jOjEyNQogbXNnaWQgImZvcmNlIG1vdmUvcmVuYW1lIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MTI2CisjOiBidWlsdGluL212LmM6MTI3CiBtc2dpZCAic2tpcCBtb3ZlL3JlbmFtZSBlcnJvcnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tdi5jOjE2OAorIzogYnVpbHRpbi9tdi5jOjE2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJkZXN0aW5hdGlvbiAnJXMnIGlzIG5vdCBhIGRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MTc5CisjOiBidWlsdGluL212LmM6MTgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoZWNraW5nIHJlbmFtZSBvZiAnJXMnIHRvICclcydcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MTgzCisjOiBidWlsdGluL212LmM6MTg0CiBtc2dpZCAiYmFkIHNvdXJjZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MTg2CisjOiBidWlsdGluL212LmM6MTg3CiBtc2dpZCAiY2FuIG5vdCBtb3ZlIGRpcmVjdG9yeSBpbnRvIGl0c2VsZiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MTg5CisjOiBidWlsdGluL212LmM6MTkwCiBtc2dpZCAiY2Fubm90IG1vdmUgZGlyZWN0b3J5IG92ZXIgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MTk4CisjOiBidWlsdGluL212LmM6MTk5CiBtc2dpZCAic291cmNlIGRpcmVjdG9yeSBpcyBlbXB0eSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MjIzCisjOiBidWlsdGluL212LmM6MjI0CiBtc2dpZCAibm90IHVuZGVyIHZlcnNpb24gY29udHJvbCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MjI2CisjOiBidWlsdGluL212LmM6MjI3CiBtc2dpZCAiZGVzdGluYXRpb24gZXhpc3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyMzQKKyM6IGJ1aWx0aW4vbXYuYzoyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAib3ZlcndyaXRpbmcgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MjM3CisjOiBidWlsdGluL212LmM6MjM4CiBtc2dpZCAiQ2Fubm90IG92ZXJ3cml0ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MjQwCisjOiBidWlsdGluL212LmM6MjQxCiBtc2dpZCAibXVsdGlwbGUgc291cmNlcyBmb3IgdGhlIHNhbWUgdGFyZ2V0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNDIKKyM6IGJ1aWx0aW4vbXYuYzoyNDMKIG1zZ2lkICJkZXN0aW5hdGlvbiBkaXJlY3RvcnkgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tdi5jOjI0OQorIzogYnVpbHRpbi9tdi5jOjI1MAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcywgc291cmNlPSVzLCBkZXN0aW5hdGlvbj0lcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL212LmM6MjcwCisjOiBidWlsdGluL212LmM6MjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbmFtaW5nICVzIHRvICVzXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tdi5jOjI3NiBidWlsdGluL3JlbW90ZS5jOjcxNyBidWlsdGluL3JlcGFjay5jOjUxMQorIzogYnVpbHRpbi9tdi5jOjI3NyBidWlsdGluL3JlbW90ZS5jOjc4MSBidWlsdGluL3JlcGFjay5jOjUxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZW5hbWluZyAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6MzU1CisjOiBidWlsdGluL25hbWUtcmV2LmM6NDY1CiBtc2dpZCAiZ2l0IG5hbWUtcmV2IFs8b3B0aW9ucz5dIDxjb21taXQ+Li4uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzozNTYKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0NjYKIG1zZ2lkICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gLS1hbGwiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NwogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLXN0ZGluIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTMKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjQKIG1zZ2lkICJwcmludCBvbmx5IG5hbWVzIChubyBTSEEtMSkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxNAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUyNQogbXNnaWQgIm9ubHkgdXNlIHRhZ3MgdG8gbmFtZSB0aGUgY29tbWl0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE2CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI3CiBtc2dpZCAib25seSB1c2UgcmVmcyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxOAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUyOQogbXNnaWQgImlnbm9yZSByZWZzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIwCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMxCiBtc2dpZCAibGlzdCBhbGwgY29tbWl0cyByZWFjaGFibGUgZnJvbSBhbGwgcmVmcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIxCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMyCiBtc2dpZCAicmVhZCBmcm9tIHN0ZGluIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjIKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzMKIG1zZ2lkICJhbGxvdyB0byBwcmludCBgdW5kZWZpbmVkYCBuYW1lcyAoZGVmYXVsdCkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQyOAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzOQogbXNnaWQgImRlcmVmZXJlbmNlIHRhZ3MgaW4gdGhlIGlucHV0IChpbnRlcm5hbCB1c2UpIgogbXNnc3RyICIiCiAKQEAgLTEyODExLDE0ICsxNTcyMiwxNCBAQAogbXNnaWQgInRoZSBub3RlIGNvbnRlbnRzIGhhdmUgYmVlbiBsZWZ0IGluICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzoyNDIgYnVpbHRpbi90YWcuYzo1MTMKKyM6IGJ1aWx0aW4vbm90ZXMuYzoyNDIgYnVpbHRpbi90YWcuYzo1MzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gb3IgcmVhZCAnJXMnIgogbXNnc3RyICIiCiAKICM6IGJ1aWx0aW4vbm90ZXMuYzoyNjMgYnVpbHRpbi9ub3Rlcy5jOjMxMyBidWlsdGluL25vdGVzLmM6MzE1Ci0jOiBidWlsdGluL25vdGVzLmM6MzgzIGJ1aWx0aW4vbm90ZXMuYzo0MzggYnVpbHRpbi9ub3Rlcy5jOjUyNAotIzogYnVpbHRpbi9ub3Rlcy5jOjUyOSBidWlsdGluL25vdGVzLmM6NjA3IGJ1aWx0aW4vbm90ZXMuYzo2NjkKKyM6IGJ1aWx0aW4vbm90ZXMuYzozODMgYnVpbHRpbi9ub3Rlcy5jOjQzOCBidWlsdGluL25vdGVzLmM6NTI2CisjOiBidWlsdGluL25vdGVzLmM6NTMxIGJ1aWx0aW4vbm90ZXMuYzo2MTAgYnVpbHRpbi9ub3Rlcy5jOjY3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKIG1zZ3N0ciAiIgpAQCAtMTI4NTEsMzggKzE1NzYyLDM4IEBACiBtc2dpZCAicmVmdXNpbmcgdG8gJXMgbm90ZXMgaW4gJXMgKG91dHNpZGUgb2YgcmVmcy9ub3Rlcy8pIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzozNzYgYnVpbHRpbi9ub3Rlcy5jOjQzMSBidWlsdGluL25vdGVzLmM6NTA3Ci0jOiBidWlsdGluL25vdGVzLmM6NTE5IGJ1aWx0aW4vbm90ZXMuYzo1OTUgYnVpbHRpbi9ub3Rlcy5jOjY2MgotIzogYnVpbHRpbi9ub3Rlcy5jOjgxMiBidWlsdGluL25vdGVzLmM6OTU5IGJ1aWx0aW4vbm90ZXMuYzo5ODAKKyM6IGJ1aWx0aW4vbm90ZXMuYzozNzYgYnVpbHRpbi9ub3Rlcy5jOjQzMSBidWlsdGluL25vdGVzLmM6NTA5CisjOiBidWlsdGluL25vdGVzLmM6NTIxIGJ1aWx0aW4vbm90ZXMuYzo1OTggYnVpbHRpbi9ub3Rlcy5jOjY2NQorIzogYnVpbHRpbi9ub3Rlcy5jOjgxNSBidWlsdGluL25vdGVzLmM6OTYzIGJ1aWx0aW4vbm90ZXMuYzo5ODUKIG1zZ2lkICJ0b28gbWFueSBwYXJhbWV0ZXJzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzozODkgYnVpbHRpbi9ub3Rlcy5jOjY3NQorIzogYnVpbHRpbi9ub3Rlcy5jOjM4OSBidWlsdGluL25vdGVzLmM6Njc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIG5vdGUgZm91bmQgZm9yIG9iamVjdCAlcy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxMCBidWlsdGluL25vdGVzLmM6NTczCisjOiBidWlsdGluL25vdGVzLmM6NDEwIGJ1aWx0aW4vbm90ZXMuYzo1NzYKIG1zZ2lkICJub3RlIGNvbnRlbnRzIGFzIGEgc3RyaW5nIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0MTMgYnVpbHRpbi9ub3Rlcy5jOjU3NgorIzogYnVpbHRpbi9ub3Rlcy5jOjQxMyBidWlsdGluL25vdGVzLmM6NTc5CiBtc2dpZCAibm90ZSBjb250ZW50cyBpbiBhIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxNiBidWlsdGluL25vdGVzLmM6NTc5CisjOiBidWlsdGluL25vdGVzLmM6NDE2IGJ1aWx0aW4vbm90ZXMuYzo1ODIKIG1zZ2lkICJyZXVzZSBhbmQgZWRpdCBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxOSBidWlsdGluL25vdGVzLmM6NTgyCisjOiBidWlsdGluL25vdGVzLmM6NDE5IGJ1aWx0aW4vbm90ZXMuYzo1ODUKIG1zZ2lkICJyZXVzZSBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQyMiBidWlsdGluL25vdGVzLmM6NTg1CisjOiBidWlsdGluL25vdGVzLmM6NDIyIGJ1aWx0aW4vbm90ZXMuYzo1ODgKIG1zZ2lkICJhbGxvdyBzdG9yaW5nIGVtcHR5IG5vdGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQyMyBidWlsdGluL25vdGVzLmM6NDk0CisjOiBidWlsdGluL25vdGVzLmM6NDIzIGJ1aWx0aW4vbm90ZXMuYzo0OTYKIG1zZ2lkICJyZXBsYWNlIGV4aXN0aW5nIG5vdGVzIgogbXNnc3RyICIiCiAKQEAgLTEyODkzLDEzOCArMTU4MDQsMTM4IEBACiAiZXhpc3Rpbmcgbm90ZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ2MyBidWlsdGluL25vdGVzLmM6NTQyCisjOiBidWlsdGluL25vdGVzLmM6NDYzIGJ1aWx0aW4vbm90ZXMuYzo1NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiT3ZlcndyaXRpbmcgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0NzQgYnVpbHRpbi9ub3Rlcy5jOjYzNCBidWlsdGluL25vdGVzLmM6ODk5CisjOiBidWlsdGluL25vdGVzLmM6NDc1IGJ1aWx0aW4vbm90ZXMuYzo2MzcgYnVpbHRpbi9ub3Rlcy5jOjkwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyBub3RlIGZvciBvYmplY3QgJXNcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDk1CisjOiBidWlsdGluL25vdGVzLmM6NDk3CiBtc2dpZCAicmVhZCBvYmplY3RzIGZyb20gc3RkaW4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ5NworIzogYnVpbHRpbi9ub3Rlcy5jOjQ5OQogbXNnaWQgImxvYWQgcmV3cml0aW5nIGNvbmZpZyBmb3IgPGNvbW1hbmQ+IChpbXBsaWVzIC0tc3RkaW4pIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MTcKIG1zZ2lkICJ0b28gZmV3IHBhcmFtZXRlcnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjUzNgorIzogYnVpbHRpbi9ub3Rlcy5jOjUzOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IGNvcHkgbm90ZXMuIEZvdW5kIGV4aXN0aW5nIG5vdGVzIGZvciBvYmplY3QgJXMuIFVzZSAnLWYnIHRvIG92ZXJ3cml0ZSAiCiAiZXhpc3Rpbmcgbm90ZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjU0OAorIzogYnVpbHRpbi9ub3Rlcy5jOjU1MAogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIG5vdGVzIG9uIHNvdXJjZSBvYmplY3QgJXMuIENhbm5vdCBjb3B5LiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25vdGVzLmM6NjAwCisjOiBidWlsdGluL25vdGVzLmM6NjAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgLW0vLUYvLWMvLUMgb3B0aW9ucyBoYXZlIGJlZW4gZGVwcmVjYXRlZCBmb3IgdGhlICdlZGl0JyBzdWJjb21tYW5kLlxuIgogIlBsZWFzZSB1c2UgJ2dpdCBub3RlcyBhZGQgLWYgLW0vLUYvLWMvLUMnIGluc3RlYWQuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjY5NQorIzogYnVpbHRpbi9ub3Rlcy5jOjY5OAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgcmVmIE5PVEVTX01FUkdFX1BBUlRJQUwiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjY5NworIzogYnVpbHRpbi9ub3Rlcy5jOjcwMAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgcmVmIE5PVEVTX01FUkdFX1JFRiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25vdGVzLmM6Njk5CisjOiBidWlsdGluL25vdGVzLmM6NzAyCiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAnZ2l0IG5vdGVzIG1lcmdlJyB3b3JrdHJlZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzE5CisjOiBidWlsdGluL25vdGVzLmM6NzIyCiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgcmVmIE5PVEVTX01FUkdFX1BBUlRJQUwiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjcyMQorIzogYnVpbHRpbi9ub3Rlcy5jOjcyNAogbXNnaWQgImNvdWxkIG5vdCBmaW5kIGNvbW1pdCBmcm9tIE5PVEVTX01FUkdFX1BBUlRJQUwuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjYKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0IGZyb20gTk9URVNfTUVSR0VfUEFSVElBTC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjczNgorIzogYnVpbHRpbi9ub3Rlcy5jOjczOQogbXNnaWQgImZhaWxlZCB0byByZXNvbHZlIE5PVEVTX01FUkdFX1JFRiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzM5CisjOiBidWlsdGluL25vdGVzLmM6NzQyCiBtc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplIG5vdGVzIG1lcmdlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3NjUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBub3RlcyBtZXJnZSBzdHJhdGVneSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzgxCisjOiBidWlsdGluL25vdGVzLmM6Nzg0CiBtc2dpZCAiR2VuZXJhbCBvcHRpb25zIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3ODYKIG1zZ2lkICJNZXJnZSBvcHRpb25zIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3ODgKIG1zZ2lkICIiCiAicmVzb2x2ZSBub3RlcyBjb25mbGljdHMgdXNpbmcgdGhlIGdpdmVuIHN0cmF0ZWd5IChtYW51YWwvb3Vycy90aGVpcnMvdW5pb24vIgogImNhdF9zb3J0X3VuaXEpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTAKIG1zZ2lkICJDb21taXR0aW5nIHVubWVyZ2VkIG5vdGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTIKIG1zZ2lkICJmaW5hbGl6ZSBub3RlcyBtZXJnZSBieSBjb21taXR0aW5nIHVubWVyZ2VkIG5vdGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3OTEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTQKIG1zZ2lkICJBYm9ydGluZyBub3RlcyBtZXJnZSByZXNvbHV0aW9uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3OTMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTYKIG1zZ2lkICJhYm9ydCBub3RlcyBtZXJnZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODA0CisjOiBidWlsdGluL25vdGVzLmM6ODA3CiBtc2dpZCAiY2Fubm90IG1peCAtLWNvbW1pdCwgLS1hYm9ydCBvciAtcy8tLXN0cmF0ZWd5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4MDkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MTIKIG1zZ2lkICJtdXN0IHNwZWNpZnkgYSBub3RlcyByZWYgdG8gbWVyZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjgzMworIzogYnVpbHRpbi9ub3Rlcy5jOjgzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIC1zLy0tc3RyYXRlZ3k6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSBub3RlcyBtZXJnZSBpbnRvICVzIGlzIGFscmVhZHkgaW4tcHJvZ3Jlc3MgYXQgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg3MworIzogYnVpbHRpbi9ub3Rlcy5jOjg3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RvcmUgbGluayB0byBjdXJyZW50IG5vdGVzIHJlZiAoJXMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkF1dG9tYXRpYyBub3RlcyBtZXJnZSBmYWlsZWQuIEZpeCBjb25mbGljdHMgaW4gJXMgYW5kIGNvbW1pdCB0aGUgcmVzdWx0IHdpdGggIgpAQCAtMTMwMzIsNDIyICsxNTk0MywzOTggQEAKICJhYm9ydCcuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg5NworIzogYnVpbHRpbi9ub3Rlcy5jOjg5NyBidWlsdGluL3RhZy5jOjU0NQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL25vdGVzLmM6OTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9iamVjdCAlcyBoYXMgbm8gbm90ZVxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5MDkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MTIKIG1zZ2lkICJhdHRlbXB0IHRvIHJlbW92ZSBub24tZXhpc3RlbnQgbm90ZSBpcyBub3QgYW4gZXJyb3IiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjkxMgorIzogYnVpbHRpbi9ub3Rlcy5jOjkxNQogbXNnaWQgInJlYWQgb2JqZWN0IG5hbWVzIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5NTAgYnVpbHRpbi9wcnVuZS5jOjEwOCBidWlsdGluL3dvcmt0cmVlLmM6MTY0CisjOiBidWlsdGluL25vdGVzLmM6OTU0IGJ1aWx0aW4vcHJ1bmUuYzoxMzAgYnVpbHRpbi93b3JrdHJlZS5jOjE2NAogbXNnaWQgImRvIG5vdCByZW1vdmUsIHNob3cgb25seSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTUxCisjOiBidWlsdGluL25vdGVzLmM6OTU1CiBtc2dpZCAicmVwb3J0IHBydW5lZCBub3RlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTkzCisjOiBidWlsdGluL25vdGVzLmM6OTk4CiBtc2dpZCAibm90ZXMtcmVmIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5OTQKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5OTkKIG1zZ2lkICJ1c2Ugbm90ZXMgZnJvbSA8bm90ZXMtcmVmPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL25vdGVzLmM6MTAyOQorIzogYnVpbHRpbi9ub3Rlcy5jOjEwMzQgYnVpbHRpbi9zdGFzaC5jOjE2NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBzdWJjb21tYW5kOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUyCiBtc2dpZCAiIgogImdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgWzxvcHRpb25zPi4uLl0gWzwgPHJlZi1saXN0PiB8IDwgPG9iamVjdC1saXN0Pl0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1MgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1MwogbXNnaWQgIiIKICJnaXQgcGFjay1vYmplY3RzIFs8b3B0aW9ucz4uLi5dIDxiYXNlLW5hbWU+IFs8IDxyZWYtbGlzdD4gfCA8IDxvYmplY3QtbGlzdD5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDIyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFja2VkIG9iamVjdCBDUkMgZm9yICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDMzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQ0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IHBhY2tlZCBvYmplY3QgZm9yICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTY0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjU3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWN1cnNpdmUgZGVsdGEgZGV0ZWN0ZWQgZm9yIG9iamVjdCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc3NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAib3JkZXJlZCAldSBvYmplY3RzLCBleHBlY3RlZCAlPFBSSXUzMj4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3ODgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGFja2ZpbGUgaXMgaW52YWxpZDogJXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3OTIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIG9wZW4gcGFja2ZpbGUgZm9yIHJldXNlOiAlcyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc5NgotbXNnaWQgInVuYWJsZSB0byBzZWVrIGluIHJldXNlZCBwYWNrZmlsZSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjgwNwotbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gcmV1c2VkIHBhY2tmaWxlIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODM1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk3MgogbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgcGFja3MgYXJlIHNwbGl0IGR1ZSB0byBwYWNrLnBhY2tTaXplTGltaXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4NDgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTg1CiBtc2dpZCAiV3JpdGluZyBvYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTEwIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6ODgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA0NiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBzdGF0ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTYzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjEwOTkKICMsIGMtZm9ybWF0CiBtc2dpZCAid3JvdGUgJTxQUkl1MzI+IG9iamVjdHMgd2hpbGUgZXhwZWN0aW5nICU8UFJJdTMyPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjExNTcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTI5NwogbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgYXMgc29tZSBvYmplY3RzIGFyZSBub3QgYmVpbmcgcGFja2VkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU4NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNzI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IG92ZXJmbG93IGluIHBhY2sgZm9yICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU5NAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IG91dCBvZiBib3VuZCBmb3IgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxODYzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwMDQKIG1zZ2lkICJDb3VudGluZyBvYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTk5OAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gZ2V0IHNpemUgb2YgJXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDEzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIG9iamVjdCBoZWFkZXIgb2YgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDgzIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA5OQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTA5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyMTkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjM1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGNhbm5vdCBiZSByZWFkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA4NiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIyMiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGluY29uc2lzdGVudCBvYmplY3QgbGVuZ3RoICglPFBSSXVNQVg+IHZzICU8UFJJdU1BWD4pIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEyMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjU5CiBtc2dpZCAic3Vib3B0aW1hbCBwYWNrIC0gb3V0IG9mIG1lbW9yeSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI0NTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjU3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWx0YSBjb21wcmVzc2lvbiB1c2luZyB1cCB0byAlZCB0aHJlYWRzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjU4MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzEzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYWNrIG9iamVjdHMgcmVhY2hhYmxlIGZyb20gdGFnICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjY3MAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODAxCiBtc2dpZCAiQ29tcHJlc3Npbmcgb2JqZWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2NzYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjgwNwogbXNnaWQgImluY29uc2lzdGVuY3kgd2l0aCBkZWx0YSBjb3VudCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3NTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhwZWN0ZWQgZWRnZSBvYmplY3QgSUQsIGdvdCBnYXJiYWdlOlxuIgogIiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3NTkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg5NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhwZWN0ZWQgb2JqZWN0IElELCBnb3QgZ2FyYmFnZTpcbiIKICIgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODU3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5OTIKIG1zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciAtLW1pc3NpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTE2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzAyNAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDUxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE1OQogbXNnaWQgImNhbm5vdCBvcGVuIHBhY2sgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTQ3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwODIKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9vc2Ugb2JqZWN0IGF0ICVzIGNvdWxkIG5vdCBiZSBleGFtaW5lZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwMzIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE2NwogbXNnaWQgInVuYWJsZSB0byBmb3JjZSBsb29zZSBvYmplY3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTIyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgcmV2ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTI1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJldmlzaW9uICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTUwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODgKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIHJlY2VudCBvYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIwMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuc3VwcG9ydGVkIGluZGV4IHZlcnNpb24gJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjA3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMzcKLW1zZ2lkICJkbyBub3Qgc2hvdyBwcm9ncmVzcyBtZXRlciIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMzkKLW1zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0MQotbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIgZHVyaW5nIG9iamVjdCB3cml0aW5nIHBoYXNlIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0NAotbXNnaWQgInNpbWlsYXIgdG8gLS1hbGwtcHJvZ3Jlc3Mgd2hlbiBwcm9ncmVzcyBtZXRlciBpcyBzaG93biIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4MwogbXNnaWQgIjx2ZXJzaW9uPlssPG9mZnNldD5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzg0CiBtc2dpZCAid3JpdGUgdGhlIHBhY2sgaW5kZXggZmlsZSBpbiB0aGUgc3BlY2lmaWVkIGlkeCBmb3JtYXQgdmVyc2lvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4NwogbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIG91dHB1dCBwYWNrIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjUxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODkKIG1zZ2lkICJpZ25vcmUgYm9ycm93ZWQgb2JqZWN0cyBmcm9tIGFsdGVybmF0ZSBvYmplY3Qgc3RvcmUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjUzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTEKIG1zZ2lkICJpZ25vcmUgcGFja2VkIG9iamVjdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjU1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTMKIG1zZ2lkICJsaW1pdCBwYWNrIHdpbmRvdyBieSBvYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk1CiBtc2dpZCAibGltaXQgcGFjayB3aW5kb3cgYnkgbWVtb3J5IGluIGFkZGl0aW9uIHRvIG9iamVjdCBsaW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NwogbXNnaWQgIm1heGltdW0gbGVuZ3RoIG9mIGRlbHRhIGNoYWluIGFsbG93ZWQgaW4gdGhlIHJlc3VsdGluZyBwYWNrIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk5CiBtc2dpZCAicmV1c2UgZXhpc3RpbmcgZGVsdGFzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAxCiBtc2dpZCAicmV1c2UgZXhpc3Rpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMwogbXNnaWQgInVzZSBPRlNfREVMVEEgb2JqZWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwNQogbXNnaWQgInVzZSB0aHJlYWRzIHdoZW4gc2VhcmNoaW5nIGZvciBiZXN0IGRlbHRhIG1hdGNoZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjY5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDcKIG1zZ2lkICJkbyBub3QgY3JlYXRlIGFuIGVtcHR5IHBhY2sgb3V0cHV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA5CiBtc2dpZCAicmVhZCByZXZpc2lvbiBhcmd1bWVudHMgZnJvbSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxMQogbXNnaWQgImxpbWl0IHRoZSBvYmplY3RzIHRvIHRob3NlIHRoYXQgYXJlIG5vdCB5ZXQgcGFja2VkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDE0CiBtc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIGFueSByZWZlcmVuY2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjc5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MTcKIG1zZ2lkICJpbmNsdWRlIG9iamVjdHMgcmVmZXJyZWQgYnkgcmVmbG9nIGVudHJpZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjgyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjAKIG1zZ2lkICJpbmNsdWRlIG9iamVjdHMgcmVmZXJyZWQgdG8gYnkgdGhlIGluZGV4IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDIzCiBtc2dpZCAib3V0cHV0IHBhY2sgdG8gc3Rkb3V0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDI1CiBtc2dpZCAiaW5jbHVkZSB0YWcgb2JqZWN0cyB0aGF0IHJlZmVyIHRvIG9iamVjdHMgdG8gYmUgcGFja2VkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDI3CiBtc2dpZCAia2VlcCB1bnJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDI5CiBtc2dpZCAicGFjayBsb29zZSB1bnJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDMxCiBtc2dpZCAidW5wYWNrIHVucmVhY2hhYmxlIG9iamVjdHMgbmV3ZXIgdGhhbiA8dGltZT4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzQKK21zZ2lkICJ1c2UgdGhlIHNwYXJzZSByZWFjaGFiaWxpdHkgYWxnb3JpdGhtIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQzNgogbXNnaWQgImNyZWF0ZSB0aGluIHBhY2tzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5OAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDM4CiBtc2dpZCAiY3JlYXRlIHBhY2tzIHN1aXRhYmxlIGZvciBzaGFsbG93IGZldGNoZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDAKIG1zZ2lkICJpZ25vcmUgcGFja3MgdGhhdCBoYXZlIGNvbXBhbmlvbiAua2VlcCBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQyCiBtc2dpZCAiaWdub3JlIHRoaXMgcGFjayIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0NAogbXNnaWQgInBhY2sgY29tcHJlc3Npb24gbGV2ZWwiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzA2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDYKIG1zZ2lkICJkbyBub3QgaGlkZSBjb21taXRzIGJ5IGdyYWZ0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0OAogbXNnaWQgInVzZSBhIGJpdG1hcCBpbmRleCBpZiBhdmFpbGFibGUgdG8gc3BlZWQgdXAgY291bnRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTAKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ1MAogbXNnaWQgIndyaXRlIGEgYml0bWFwIGluZGV4IHRvZ2V0aGVyIHdpdGggdGhlIHBhY2sgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzEzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTQKK21zZ2lkICJ3cml0ZSBhIGJpdG1hcCBpbmRleCBpZiBwb3NzaWJsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTgKIG1zZ2lkICJoYW5kbGluZyBmb3IgbWlzc2luZyBvYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxNgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDYxCiBtc2dpZCAiZG8gbm90IHBhY2sgb2JqZWN0cyBpbiBwcm9taXNvciBwYWNrZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzE4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NjMKIG1zZ2lkICJyZXNwZWN0IGlzbGFuZHMgZHVyaW5nIGRlbHRhIGNvbXByZXNzaW9uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0MgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbHRhIGNoYWluIGRlcHRoICVkIGlzIHRvbyBkZWVwLCBmb3JjaW5nICVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDk3CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2suZGVsdGFDYWNoZUxpbWl0IGlzIHRvbyBoaWdoLCBmb3JjaW5nICVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTUxCiBtc2dpZCAiLS1tYXgtcGFjay1zaXplIGNhbm5vdCBiZSB1c2VkIHRvIGJ1aWxkIGEgcGFjayBmb3IgdHJhbnNmZXIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NTMKIG1zZ2lkICJtaW5pbXVtIHBhY2sgc2l6ZSBsaW1pdCBpcyAxIE1pQiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1OAogbXNnaWQgIi0tdGhpbiBjYW5ub3QgYmUgdXNlZCB0byBidWlsZCBhbiBpbmRleGFibGUgcGFjayIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU2MQogbXNnaWQgIi0ta2VlcC11bnJlYWNoYWJsZSBhbmQgLS11bnBhY2stdW5yZWFjaGFibGUgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MTcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU2NwogbXNnaWQgImNhbm5vdCB1c2UgLS1maWx0ZXIgd2l0aG91dCAtLXN0ZG91dCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NzYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzYyNwogbXNnaWQgIkVudW1lcmF0aW5nIG9iamVjdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDk1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM2NTcKICMsIGMtZm9ybWF0Ci1tc2dpZCAiVG90YWwgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCByZXVzZWQgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pIgorbXNnaWQgIiIKKyJUb3RhbCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHJldXNlZCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHBhY2stIgorInJldXNlZCAlPFBSSXUzMj4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLXJlZnMuYzo3CisjOiBidWlsdGluL3BhY2stcmVmcy5jOjgKIG1zZ2lkICJnaXQgcGFjay1yZWZzIFs8b3B0aW9ucz5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTUKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKIG1zZ2lkICJwYWNrIGV2ZXJ5dGhpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNgorIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNwogbXNnaWQgInBydW5lIGxvb3NlIHJlZnMgKGRlZmF1bHQpIgogbXNnc3RyICIiCiAKQEAgLTEzNDYzLDg2ICsxNjM1MCw4NiBAQAogbXNnaWQgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGltZT5dIFstLV0gWzxoZWFkPi4uLl0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wcnVuZS5jOjEwOQorIzogYnVpbHRpbi9wcnVuZS5jOjEzMQogbXNnaWQgInJlcG9ydCBwcnVuZWQgb2JqZWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTEyCisjOiBidWlsdGluL3BydW5lLmM6MTM0CiBtc2dpZCAiZXhwaXJlIG9iamVjdHMgb2xkZXIgdGhhbiA8dGltZT4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wcnVuZS5jOjExNAorIzogYnVpbHRpbi9wcnVuZS5jOjEzNgogbXNnaWQgImxpbWl0IHRyYXZlcnNhbCB0byBvYmplY3RzIG91dHNpZGUgcHJvbWlzb3IgcGFja2ZpbGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMjkKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxNTAKIG1zZ2lkICJjYW5ub3QgcHJ1bmUgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NjAgYnVpbHRpbi9wdWxsLmM6NjIKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ1IGJ1aWx0aW4vcHVsbC5jOjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yICVzOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1bGwuYzo4MgorIzogYnVpbHRpbi9wdWxsLmM6NjcKIG1zZ2lkICJnaXQgcHVsbCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1bGwuYzoxMzMKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyMgogbXNnaWQgImNvbnRyb2wgZm9yIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjEzNworIzogYnVpbHRpbi9wdWxsLmM6MTI2CiBtc2dpZCAiT3B0aW9ucyByZWxhdGVkIHRvIG1lcmdpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTQwCisjOiBidWlsdGluL3B1bGwuYzoxMjkKIG1zZ2lkICJpbmNvcnBvcmF0ZSBjaGFuZ2VzIGJ5IHJlYmFzaW5nIHJhdGhlciB0aGFuIG1lcmdpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTY3IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE0NyBidWlsdGluL3JldmVydC5jOjEyMgorIzogYnVpbHRpbi9wdWxsLmM6MTU3IGJ1aWx0aW4vcmViYXNlLmM6NDcxIGJ1aWx0aW4vcmV2ZXJ0LmM6MTI2CiBtc2dpZCAiYWxsb3cgZmFzdC1mb3J3YXJkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE3NgorIzogYnVpbHRpbi9wdWxsLmM6MTY2CiBtc2dpZCAiYXV0b21hdGljYWxseSBzdGFzaC9zdGFzaCBwb3AgYmVmb3JlIGFuZCBhZnRlciByZWJhc2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTkyCisjOiBidWlsdGluL3B1bGwuYzoxODIKIG1zZ2lkICJPcHRpb25zIHJlbGF0ZWQgdG8gZmV0Y2hpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdWxsLmM6MjAyCisjOiBidWlsdGluL3B1bGwuYzoxOTIKIG1zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgbG9jYWwgYnJhbmNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjIxMAorIzogYnVpbHRpbi9wdWxsLmM6MjAwCiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgcHVsbGVkIGluIHBhcmFsbGVsIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjMwNQorIzogYnVpbHRpbi9wdWxsLmM6MzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yIHB1bGwuZmY6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyMQorIzogYnVpbHRpbi9wdWxsLmM6NDI2CiBtc2dpZCAiIgogIlRoZXJlIGlzIG5vIGNhbmRpZGF0ZSBmb3IgcmViYXNpbmcgYWdhaW5zdCBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0ICIKICJmZXRjaGVkLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MjMKKyM6IGJ1aWx0aW4vcHVsbC5jOjQyOAogbXNnaWQgIiIKICJUaGVyZSBhcmUgbm8gY2FuZGlkYXRlcyBmb3IgbWVyZ2luZyBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0IGZldGNoZWQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyNAorIzogYnVpbHRpbi9wdWxsLmM6NDI5CiBtc2dpZCAiIgogIkdlbmVyYWxseSB0aGlzIG1lYW5zIHRoYXQgeW91IHByb3ZpZGVkIGEgd2lsZGNhcmQgcmVmc3BlYyB3aGljaCBoYWQgbm9cbiIKICJtYXRjaGVzIG9uIHRoZSByZW1vdGUgZW5kLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MjcKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzMgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFza2VkIHRvIHB1bGwgZnJvbSB0aGUgcmVtb3RlICclcycsIGJ1dCBkaWQgbm90IHNwZWNpZnlcbiIKQEAgLTEzNTUwLDc0ICsxNjQzNyw3NCBAQAogImZvciB5b3VyIGN1cnJlbnQgYnJhbmNoLCB5b3UgbXVzdCBzcGVjaWZ5IGEgYnJhbmNoIG9uIHRoZSBjb21tYW5kIGxpbmUuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzMiBidWlsdGluL3JlYmFzZS5jOjc2MSBnaXQtcGFyc2UtcmVtb3RlLnNoOjczCisjOiBidWlsdGluL3B1bGwuYzo0MzcgYnVpbHRpbi9yZWJhc2UuYzoxNDA5IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzMKIG1zZ2lkICJZb3UgYXJlIG5vdCBjdXJyZW50bHkgb24gYSBicmFuY2guIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzNCBidWlsdGluL3B1bGwuYzo0NDkgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3OQorIzogYnVpbHRpbi9wdWxsLmM6NDM5IGJ1aWx0aW4vcHVsbC5jOjQ1NCBnaXQtcGFyc2UtcmVtb3RlLnNoOjc5CiBtc2dpZCAiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIHJlYmFzZSBhZ2FpbnN0LiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzYgYnVpbHRpbi9wdWxsLmM6NDUxIGdpdC1wYXJzZS1yZW1vdGUuc2g6ODIKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0MSBidWlsdGluL3B1bGwuYzo0NTYgZ2l0LXBhcnNlLXJlbW90ZS5zaDo4MgogbXNnaWQgIlBsZWFzZSBzcGVjaWZ5IHdoaWNoIGJyYW5jaCB5b3Ugd2FudCB0byBtZXJnZSB3aXRoLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzcgYnVpbHRpbi9wdWxsLmM6NDUyCisjOiBidWlsdGluL3B1bGwuYzo0NDIgYnVpbHRpbi9wdWxsLmM6NDU3CiBtc2dpZCAiU2VlIGdpdC1wdWxsKDEpIGZvciBkZXRhaWxzLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzkgYnVpbHRpbi9wdWxsLmM6NDQ1IGJ1aWx0aW4vcHVsbC5jOjQ1NAotIzogYnVpbHRpbi9yZWJhc2UuYzo3NjcgZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NAorIzogYnVpbHRpbi9wdWxsLmM6NDQ0IGJ1aWx0aW4vcHVsbC5jOjQ1MCBidWlsdGluL3B1bGwuYzo0NTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxNSBnaXQtcGFyc2UtcmVtb3RlLnNoOjY0CiBtc2dpZCAiPHJlbW90ZT4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM5IGJ1aWx0aW4vcHVsbC5jOjQ1NCBidWlsdGluL3B1bGwuYzo0NTkKLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU1NiBnaXQtcGFyc2UtcmVtb3RlLnNoOjY1CisjOiBidWlsdGluL3B1bGwuYzo0NDQgYnVpbHRpbi9wdWxsLmM6NDU5IGJ1aWx0aW4vcHVsbC5jOjQ2NAorIzogZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NQogbXNnaWQgIjxicmFuY2g+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ0NyBidWlsdGluL3JlYmFzZS5jOjc1OSBnaXQtcGFyc2UtcmVtb3RlLnNoOjc1CisjOiBidWlsdGluL3B1bGwuYzo0NTIgYnVpbHRpbi9yZWJhc2UuYzoxNDA3IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzUKIG1zZ2lkICJUaGVyZSBpcyBubyB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1bGwuYzo0NTYgZ2l0LXBhcnNlLXJlbW90ZS5zaDo5NQorIzogYnVpbHRpbi9wdWxsLmM6NDYxIGdpdC1wYXJzZS1yZW1vdGUuc2g6OTUKIG1zZ2lkICIiCiAiSWYgeW91IHdpc2ggdG8gc2V0IHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGlzIGJyYW5jaCB5b3UgY2FuIGRvIHNvIHdpdGg6IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ2MQorIzogYnVpbHRpbi9wdWxsLmM6NDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGNvbmZpZ3VyYXRpb24gc3BlY2lmaWVzIHRvIG1lcmdlIHdpdGggdGhlIHJlZiAnJXMnXG4iCiAiZnJvbSB0aGUgcmVtb3RlLCBidXQgbm8gc3VjaCByZWYgd2FzIGZldGNoZWQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjU2NQorIzogYnVpbHRpbi9wdWxsLmM6NTc2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgY29tbWl0ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg0MworIzogYnVpbHRpbi9wdWxsLmM6ODU3CiBtc2dpZCAiaWdub3JpbmcgLS12ZXJpZnktc2lnbmF0dXJlcyBmb3IgcmViYXNlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg5MQorIzogYnVpbHRpbi9wdWxsLmM6OTEyCiBtc2dpZCAiLS1bbm8tXWF1dG9zdGFzaCBvcHRpb24gaXMgb25seSB2YWxpZCB3aXRoIC0tcmViYXNlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1bGwuYzo4OTkKKyM6IGJ1aWx0aW4vcHVsbC5jOjkyMAogbXNnaWQgIlVwZGF0aW5nIGFuIHVuYm9ybiBicmFuY2ggd2l0aCBjaGFuZ2VzIGFkZGVkIHRvIHRoZSBpbmRleC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTAyCisjOiBidWlsdGluL3B1bGwuYzo5MjQKIG1zZ2lkICJwdWxsIHdpdGggcmViYXNlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjkwMworIzogYnVpbHRpbi9wdWxsLmM6OTI1CiBtc2dpZCAicGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MjgKKyM6IGJ1aWx0aW4vcHVsbC5jOjk1MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZmV0Y2ggdXBkYXRlZCB0aGUgY3VycmVudCBicmFuY2ggaGVhZC5cbiIKQEAgLTEzNjI1LDcgKzE2NTEyLDcgQEAKICJjb21taXQgJXMuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjkzNAorIzogYnVpbHRpbi9wdWxsLmM6OTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgZmFzdC1mb3J3YXJkIHlvdXIgd29ya2luZyB0cmVlLlxuIgpAQCAtMTM2MzYsMTUgKzE2NTIzLDE1IEBACiAidG8gcmVjb3Zlci4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTQ5CisjOiBidWlsdGluL3B1bGwuYzo5NzEKIG1zZ2lkICJDYW5ub3QgbWVyZ2UgbXVsdGlwbGUgYnJhbmNoZXMgaW50byBlbXB0eSBoZWFkLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1bGwuYzo5NTMKKyM6IGJ1aWx0aW4vcHVsbC5jOjk3NQogbXNnaWQgIkNhbm5vdCByZWJhc2Ugb250byBtdWx0aXBsZSBicmFuY2hlcy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTYwCisjOiBidWlsdGluL3B1bGwuYzo5ODIKIG1zZ2lkICJjYW5ub3QgcmViYXNlIHdpdGggbG9jYWxseSByZWNvcmRlZCBzdWJtb2R1bGUgbW9kaWZpY2F0aW9ucyIKIG1zZ3N0ciAiIgogCkBAIC0xMzY1MiwyMSArMTY1MzksMjEgQEAKIG1zZ2lkICJnaXQgcHVzaCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1c2guYzoxMTEKKyM6IGJ1aWx0aW4vcHVzaC5jOjExMgogbXNnaWQgInRhZyBzaG9ydGhhbmQgd2l0aG91dCA8dGFnPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1c2guYzoxMjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjEyMgogbXNnaWQgIi0tZGVsZXRlIG9ubHkgYWNjZXB0cyBwbGFpbiB0YXJnZXQgcmVmIG5hbWVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE2NQorIzogYnVpbHRpbi9wdXNoLmM6MTY4CiBtc2dpZCAiIgogIlxuIgogIlRvIGNob29zZSBlaXRoZXIgb3B0aW9uIHBlcm1hbmVudGx5LCBzZWUgcHVzaC5kZWZhdWx0IGluICdnaXQgaGVscCBjb25maWcnLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1c2guYzoxNjgKKyM6IGJ1aWx0aW4vcHVzaC5jOjE3MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIHVwc3RyZWFtIGJyYW5jaCBvZiB5b3VyIGN1cnJlbnQgYnJhbmNoIGRvZXMgbm90IG1hdGNoXG4iCkBAIC0xMzY4MSw3ICsxNjU2OCw3IEBACiAiJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTgzCisjOiBidWlsdGluL3B1c2guYzoxODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBhcmUgbm90IGN1cnJlbnRseSBvbiBhIGJyYW5jaC5cbiIKQEAgLTEzNjkxLDcgKzE2NTc4LDcgQEAKICIgICAgZ2l0IHB1c2ggJXMgSEVBRDo8bmFtZS1vZi1yZW1vdGUtYnJhbmNoPlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE5NworIzogYnVpbHRpbi9wdXNoLmM6MjAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgY3VycmVudCBicmFuY2ggJXMgaGFzIG5vIHVwc3RyZWFtIGJyYW5jaC5cbiIKQEAgLTEzNzAwLDEyICsxNjU4NywxMiBAQAogIiAgICBnaXQgcHVzaCAtLXNldC11cHN0cmVhbSAlcyAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjIwNQorIzogYnVpbHRpbi9wdXNoLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBjdXJyZW50IGJyYW5jaCAlcyBoYXMgbXVsdGlwbGUgdXBzdHJlYW0gYnJhbmNoZXMsIHJlZnVzaW5nIHRvIHB1c2guIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjIwOAorIzogYnVpbHRpbi9wdXNoLmM6MjExCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXJlIHB1c2hpbmcgdG8gcmVtb3RlICclcycsIHdoaWNoIGlzIG5vdCB0aGUgdXBzdHJlYW0gb2ZcbiIKQEAgLTEzNzEzLDEyICsxNjYwMCwxMiBAQAogInRvIHVwZGF0ZSB3aGljaCByZW1vdGUgYnJhbmNoLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1c2guYzoyNjcKKyM6IGJ1aWx0aW4vcHVzaC5jOjI3MAogbXNnaWQgIiIKICJZb3UgZGlkbid0IHNwZWNpZnkgYW55IHJlZnNwZWNzIHRvIHB1c2gsIGFuZCBwdXNoLmRlZmF1bHQgaXMgXCJub3RoaW5nXCIuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI3NAorIzogYnVpbHRpbi9wdXNoLmM6Mjc3CiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSB0aXAgb2YgeW91ciBjdXJyZW50IGJyYW5jaCBpcyBiZWhpbmRcbiIKICJpdHMgcmVtb3RlIGNvdW50ZXJwYXJ0LiBJbnRlZ3JhdGUgdGhlIHJlbW90ZSBjaGFuZ2VzIChlLmcuXG4iCkBAIC0xMzcyNiw3ICsxNjYxMyw3IEBACiAiU2VlIHRoZSAnTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzJyBpbiAnZ2l0IHB1c2ggLS1oZWxwJyBmb3IgZGV0YWlscy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjgwCisjOiBidWlsdGluL3B1c2guYzoyODMKIG1zZ2lkICIiCiAiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgYSBwdXNoZWQgYnJhbmNoIHRpcCBpcyBiZWhpbmQgaXRzIHJlbW90ZVxuIgogImNvdW50ZXJwYXJ0LiBDaGVjayBvdXQgdGhpcyBicmFuY2ggYW5kIGludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXNcbiIKQEAgLTEzNzM0LDcgKzE2NjIxLDcgQEAKICJTZWUgdGhlICdOb3RlIGFib3V0IGZhc3QtZm9yd2FyZHMnIGluICdnaXQgcHVzaCAtLWhlbHAnIGZvciBkZXRhaWxzLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1c2guYzoyODYKKyM6IGJ1aWx0aW4vcHVzaC5jOjI4OQogbXNnaWQgIiIKICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgcmVtb3RlIGNvbnRhaW5zIHdvcmsgdGhhdCB5b3UgZG9cbiIKICJub3QgaGF2ZSBsb2NhbGx5LiBUaGlzIGlzIHVzdWFsbHkgY2F1c2VkIGJ5IGFub3RoZXIgcmVwb3NpdG9yeSBwdXNoaW5nXG4iCkBAIC0xMzc0MywzMyArMTY2MzAsMTEwIEBACiAiU2VlIHRoZSAnTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzJyBpbiAnZ2l0IHB1c2ggLS1oZWxwJyBmb3IgZGV0YWlscy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjkzCisjOiBidWlsdGluL3B1c2guYzoyOTYKIG1zZ2lkICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgdGFnIGFscmVhZHkgZXhpc3RzIGluIHRoZSByZW1vdGUuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI5NgorIzogYnVpbHRpbi9wdXNoLmM6Mjk5CiBtc2dpZCAiIgogIllvdSBjYW5ub3QgdXBkYXRlIGEgcmVtb3RlIHJlZiB0aGF0IHBvaW50cyBhdCBhIG5vbi1jb21taXQgb2JqZWN0LFxuIgogIm9yIHVwZGF0ZSBhIHJlbW90ZSByZWYgdG8gbWFrZSBpdCBwb2ludCBhdCBhIG5vbi1jb21taXQgb2JqZWN0LFxuIgogIndpdGhvdXQgdXNpbmcgdGhlICctLWZvcmNlJyBvcHRpb24uXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MzU3CisjOiBidWlsdGluL3B1c2guYzozNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHVzaGluZyB0byAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM2MQorIzogYnVpbHRpbi9wdXNoLmM6MzY3CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwdXNoIHNvbWUgcmVmcyB0byAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM5NQorIzogYnVpbHRpbi9wdXNoLmM6NTQyCittc2dpZCAicmVwb3NpdG9yeSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1c2guYzo1NDMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjQKK21zZ2lkICJwdXNoIGFsbCByZWZzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0NCBidWlsdGluL3NlbmQtcGFjay5jOjE2NgorbXNnaWQgIm1pcnJvciBhbGwgcmVmcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1c2guYzo1NDYKK21zZ2lkICJkZWxldGUgcmVmcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1c2guYzo1NDcKK21zZ2lkICJwdXNoIHRhZ3MgKGNhbid0IGJlIHVzZWQgd2l0aCAtLWFsbCBvciAtLW1pcnJvcikiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY3Cittc2dpZCAiZm9yY2UgdXBkYXRlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1c2guYzo1NTIgYnVpbHRpbi9zZW5kLXBhY2suYzoxODEKK21zZ2lkICI8cmVmbmFtZT46PGV4cGVjdD4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUzIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgyCittc2dpZCAicmVxdWlyZSBvbGQgdmFsdWUgb2YgcmVmIHRvIGJlIGF0IHRoaXMgdmFsdWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU2Cittc2dpZCAiY29udHJvbCByZWN1cnNpdmUgcHVzaGluZyBvZiBzdWJtb2R1bGVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1OCBidWlsdGluL3NlbmQtcGFjay5jOjE3NQorbXNnaWQgInVzZSB0aGluIHBhY2siCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU5IGJ1aWx0aW4vcHVzaC5jOjU2MCBidWlsdGluL3NlbmQtcGFjay5jOjE2MQorIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNjIKK21zZ2lkICJyZWNlaXZlIHBhY2sgcHJvZ3JhbSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1c2guYzo1NjEKK21zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL3N0YXR1cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1c2guYzo1NjQKK21zZ2lkICJwcnVuZSBsb2NhbGx5IHJlbW92ZWQgcmVmcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1c2guYzo1NjYKK21zZ2lkICJieXBhc3MgcHJlLXB1c2ggaG9vayIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3B1c2guYzo1NjcKK21zZ2lkICJwdXNoIG1pc3NpbmcgYnV0IHJlbGV2YW50IHRhZ3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY5Cittc2dpZCAiR1BHIHNpZ24gdGhlIHB1c2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc2Cittc2dpZCAicmVxdWVzdCBhdG9taWMgdHJhbnNhY3Rpb24gb24gcmVtb3RlIHNpZGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTkwCittc2dpZCAiLS1kZWxldGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tbWlycm9yIGFuZCAtLXRhZ3MiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTkyCittc2dpZCAiLS1kZWxldGUgZG9lc24ndCBtYWtlIHNlbnNlIHdpdGhvdXQgYW55IHJlZnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdXNoLmM6NjEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCByZXBvc2l0b3J5ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mzk2CisjOiBidWlsdGluL3B1c2guYzo2MTMKIG1zZ2lkICIiCiAiTm8gY29uZmlndXJlZCBwdXNoIGRlc3RpbmF0aW9uLlxuIgogIkVpdGhlciBzcGVjaWZ5IHRoZSBVUkwgZnJvbSB0aGUgY29tbWFuZC1saW5lIG9yIGNvbmZpZ3VyZSBhIHJlbW90ZSAiCkBAIC0xMzc4MiwxMDQgKzE2NzQ2LDI3IEBACiAiICAgIGdpdCBwdXNoIDxuYW1lPlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU1MQotbXNnaWQgInJlcG9zaXRvcnkiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY0Ci1tc2dpZCAicHVzaCBhbGwgcmVmcyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3B1c2guYzo1NTMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjYKLW1zZ2lkICJtaXJyb3IgYWxsIHJlZnMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTU1Ci1tc2dpZCAiZGVsZXRlIHJlZnMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTU2Ci1tc2dpZCAicHVzaCB0YWdzIChjYW4ndCBiZSB1c2VkIHdpdGggLS1hbGwgb3IgLS1taXJyb3IpIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1OSBidWlsdGluL3NlbmQtcGFjay5jOjE2NwotbXNnaWQgImZvcmNlIHVwZGF0ZXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTYxIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgxCi1tc2dpZCAiPHJlZm5hbWU+OjxleHBlY3Q+IgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2MiBidWlsdGluL3NlbmQtcGFjay5jOjE4MgotbXNnaWQgInJlcXVpcmUgb2xkIHZhbHVlIG9mIHJlZiB0byBiZSBhdCB0aGlzIHZhbHVlIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2NQotbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIHB1c2hpbmcgb2Ygc3VibW9kdWxlcyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3B1c2guYzo1NjcgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzUKLW1zZ2lkICJ1c2UgdGhpbiBwYWNrIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2OCBidWlsdGluL3B1c2guYzo1NjkgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjEKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYyCi1tc2dpZCAicmVjZWl2ZSBwYWNrIHByb2dyYW0iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTcwCi1tc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9zdGF0dXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTczCi1tc2dpZCAicHJ1bmUgbG9jYWxseSByZW1vdmVkIHJlZnMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTc1Ci1tc2dpZCAiYnlwYXNzIHByZS1wdXNoIGhvb2siCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTc2Ci1tc2dpZCAicHVzaCBtaXNzaW5nIGJ1dCByZWxldmFudCB0YWdzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3OSBidWlsdGluL3NlbmQtcGFjay5jOjE2OQotbXNnaWQgIkdQRyBzaWduIHRoZSBwdXNoIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU4MSBidWlsdGluL3NlbmQtcGFjay5jOjE3NgotbXNnaWQgInJlcXVlc3QgYXRvbWljIHRyYW5zYWN0aW9uIG9uIHJlbW90ZSBzaWRlIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU5OQotbXNnaWQgIi0tZGVsZXRlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWxsLCAtLW1pcnJvciBhbmQgLS10YWdzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjYwMQotbXNnaWQgIi0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSB3aXRob3V0IGFueSByZWZzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjYwNAorIzogYnVpbHRpbi9wdXNoLmM6NjI4CiBtc2dpZCAiLS1hbGwgYW5kIC0tdGFncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYwNgorIzogYnVpbHRpbi9wdXNoLmM6NjMwCiBtc2dpZCAiLS1hbGwgY2FuJ3QgYmUgY29tYmluZWQgd2l0aCByZWZzcGVjcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1c2guYzo2MTAKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzNAogbXNnaWQgIi0tbWlycm9yIGFuZCAtLXRhZ3MgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1c2guYzo2MTIKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzNgogbXNnaWQgIi0tbWlycm9yIGNhbid0IGJlIGNvbWJpbmVkIHdpdGggcmVmc3BlY3MiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjE1CisjOiBidWlsdGluL3B1c2guYzo2MzkKIG1zZ2lkICItLWFsbCBhbmQgLS1taXJyb3IgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3B1c2guYzo2MzQKKyM6IGJ1aWx0aW4vcHVzaC5jOjY0MwogbXNnaWQgInB1c2ggb3B0aW9ucyBtdXN0IG5vdCBoYXZlIG5ldyBsaW5lIGNoYXJhY3RlcnMiCiBtc2dzdHIgIiIKIApAQCAtMTM4OTUsMTQ0ICsxNjc4MiwzMzAgQEAKIG1zZ2lkICJnaXQgcmFuZ2UtZGlmZiBbPG9wdGlvbnM+XSA8YmFzZT4gPG9sZC10aXA+IDxuZXctdGlwPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyMQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjIKIG1zZ2lkICJQZXJjZW50YWdlIGJ5IHdoaWNoIGNyZWF0aW9uIGlzIHdlaWdodGVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjIzCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyNAogbXNnaWQgInVzZSBzaW1wbGUgZGlmZiBjb2xvcnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjEgYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjUKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI2Cittc2dpZCAibm90ZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjYKK21zZ2lkICJwYXNzZWQgdG8gJ2dpdCBsb2cnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjUwIGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIC4uIGluIHJhbmdlOiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjc1CisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo2NAogbXNnaWQgInNpbmdsZSBhcmcgZm9ybWF0IG11c3QgYmUgc3ltbWV0cmljIHJhbmdlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjkwCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo3OQogbXNnaWQgIm5lZWQgdHdvIGNvbW1pdCByYW5nZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzo0MAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzo0MQogbXNnaWQgIiIKICJnaXQgcmVhZC10cmVlIFsoLW0gWy0tdHJpdmlhbF0gWy0tYWdncmVzc2l2ZV0gfCAtLXJlc2V0IHwgLS1wcmVmaXg9PHByZWZpeD4pICIKICJbLXUgWy0tZXhjbHVkZS1wZXItZGlyZWN0b3J5PTxnaXRpZ25vcmU+XSB8IC1pXV0gWy0tbm8tc3BhcnNlLWNoZWNrb3V0XSBbLS0iCiAiaW5kZXgtb3V0cHV0PTxmaWxlPl0gKC0tZW1wdHkgfCA8dHJlZS1pc2gxPiBbPHRyZWUtaXNoMj4gWzx0cmVlLWlzaDM+XV0pIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTIzCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNAogbXNnaWQgIndyaXRlIHJlc3VsdGluZyBpbmRleCB0byA8ZmlsZT4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjYKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI3CiBtc2dpZCAib25seSBlbXB0eSB0aGUgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjgKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI5CiBtc2dpZCAiTWVyZ2luZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzEKIG1zZ2lkICJwZXJmb3JtIGEgbWVyZ2UgaW4gYWRkaXRpb24gdG8gYSByZWFkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMyCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMwogbXNnaWQgIjMtd2F5IG1lcmdlIGlmIG5vIGZpbGUgbGV2ZWwgbWVyZ2luZyByZXF1aXJlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzUKIG1zZ2lkICIzLXdheSBtZXJnZSBpbiBwcmVzZW5jZSBvZiBhZGRzIGFuZCByZW1vdmVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM2CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNwogbXNnaWQgInNhbWUgYXMgLW0sIGJ1dCBkaXNjYXJkIHVubWVyZ2VkIGVudHJpZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzcKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM4CiBtc2dpZCAiPHN1YmRpcmVjdG9yeT4vIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM4CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzOQogbXNnaWQgInJlYWQgdGhlIHRyZWUgaW50byB0aGUgaW5kZXggdW5kZXIgPHN1YmRpcmVjdG9yeT4vIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQxCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0MgogbXNnaWQgInVwZGF0ZSB3b3JraW5nIHRyZWUgd2l0aCBtZXJnZSByZXN1bHQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDMKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ0CiBtc2dpZCAiZ2l0aWdub3JlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ0CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NQogbXNnaWQgImFsbG93IGV4cGxpY2l0bHkgaWdub3JlZCBmaWxlcyB0byBiZSBvdmVyd3JpdHRlbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDgKIG1zZ2lkICJkb24ndCBjaGVjayB0aGUgd29ya2luZyB0cmVlIGFmdGVyIG1lcmdpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDgKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ5CiBtc2dpZCAiZG9uJ3QgdXBkYXRlIHRoZSBpbmRleCBvciB0aGUgd29yayB0cmVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUwCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MQogbXNnaWQgInNraXAgYXBwbHlpbmcgc3BhcnNlIGNoZWNrb3V0IGZpbHRlciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MgorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTMKIG1zZ2lkICJkZWJ1ZyB1bnBhY2stdHJlZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyOQotbXNnaWQgIiIKLSJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+XSBbPHVwc3RyZWFtPl0gIgotIls8YnJhbmNoPl0iCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1NworbXNnaWQgInN1cHByZXNzIGZlZWRiYWNrIG1lc3NhZ2VzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MzEKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTg4Cittc2dpZCAiWW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozMgorbXNnaWQgIiIKKyJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+IHwgLS1rZWVwLWJhc2VdICIKKyJbPHVwc3RyZWFtPiBbPGJyYW5jaD5dXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM0CiBtc2dpZCAiIgogImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dIC0tcm9vdCBbPGJyYW5jaD5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MzMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzYKIG1zZ2lkICJnaXQgcmViYXNlIC0tY29udGludWUgfCAtLWFib3J0IHwgLS1za2lwIHwgLS1lZGl0LXRvZG8iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTc1IGJ1aWx0aW4vcmViYXNlLmM6MTk5IGJ1aWx0aW4vcmViYXNlLmM6MjI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjI5OAorbXNnaWQgImNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzUyCittc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIHRvZG8gbGlzdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM5MQorbXNnaWQgImEgYmFzZSBjb21taXQgbXVzdCBiZSBwcm92aWRlZCB3aXRoIC0tdXBzdHJlYW0gb3IgLS1vbnRvIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDYxCittc2dpZCAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxvcHRpb25zPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NzQgYnVpbHRpbi9yZWJhc2UuYzoxNTUwCittc2dpZCAiKERFUFJFQ0FURUQpIGtlZXAgZW1wdHkgY29tbWl0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ3OCBidWlsdGluL3JldmVydC5jOjEyOAorbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4MAorbXNnaWQgInJlYmFzZSBtZXJnZSBjb21taXRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDgyCittc2dpZCAia2VlcCBvcmlnaW5hbCBicmFuY2ggcG9pbnRzIG9mIGNvdXNpbnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODQKK21zZ2lkICJtb3ZlIGNvbW1pdHMgdGhhdCBiZWdpbiB3aXRoIHNxdWFzaCEvZml4dXAhIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg1Cittc2dpZCAic2lnbiBjb21taXRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg3IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MAorbXNnaWQgImRpc3BsYXkgYSBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODkKK21zZ2lkICJjb250aW51ZSByZWJhc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTEKK21zZ2lkICJza2lwIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5MgorbXNnaWQgImVkaXQgdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5NAorbXNnaWQgInNob3cgdGhlIGN1cnJlbnQgcGF0Y2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTcKK21zZ2lkICJzaG9ydGVuIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5OQorbXNnaWQgImV4cGFuZCBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDEKK21zZ2lkICJjaGVjayB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAzCittc2dpZCAicmVhcnJhbmdlIGZpeHVwL3NxdWFzaCBsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwNQorbXNnaWQgImluc2VydCBleGVjIGNvbW1hbmRzIGluIHRvZG8gbGlzdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwNgorbXNnaWQgIm9udG8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDkKK21zZ2lkICJyZXN0cmljdC1yZXZpc2lvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwOQorbXNnaWQgInJlc3RyaWN0IHJldmlzaW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTExCittc2dpZCAic3F1YXNoLW9udG8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTIKK21zZ2lkICJzcXVhc2ggb250byIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxNAorbXNnaWQgInRoZSB1cHN0cmVhbSBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTYKK21zZ2lkICJoZWFkLW5hbWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTYKK21zZ2lkICJoZWFkIG5hbWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjEKK21zZ2lkICJyZWJhc2Ugc3RyYXRlZ3kiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjIKK21zZ2lkICJzdHJhdGVneS1vcHRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTIzCittc2dpZCAic3RyYXRlZ3kgb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNAorbXNnaWQgInN3aXRjaC10byIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNQorbXNnaWQgInRoZSBicmFuY2ggb3IgY29tbWl0IHRvIGNoZWNrb3V0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI2Cittc2dpZCAib250by1uYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI2Cittc2dpZCAib250byBuYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI3Cittc2dpZCAiY21kIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI3Cittc2dpZCAidGhlIGNvbW1hbmQgdG8gcnVuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTMwIGJ1aWx0aW4vcmViYXNlLmM6MTU4NAorbXNnaWQgImF1dG9tYXRpY2FsbHkgcmUtc2NoZWR1bGUgYW55IGBleGVjYCB0aGF0IGZhaWxzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTQ2Cittc2dpZCAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIGhhcyBubyBlZmZlY3Qgd2l0aG91dCAtLXJlYmFzZS1tZXJnZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcmVxdWlyZXMgYW4gaW50ZXJhY3RpdmUgcmViYXNlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTcxCisjOiBidWlsdGluL3JlYmFzZS5jOjYxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0ICdvbnRvJzogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE4NgorIzogYnVpbHRpbi9yZWJhc2UuYzo2MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvcmlnLWhlYWQ6ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyMTQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NjUyCiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIGludmFsaWQgYWxsb3dfcmVyZXJlX2F1dG91cGRhdGU6ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyNTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZWFkICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyNzcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBzdG9yZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjMzNworIzogYnVpbHRpbi9yZWJhc2UuYzo4NTMKK21zZ2lkICJjb3VsZCBub3QgZGV0ZXJtaW5lIEhFQUQgcmV2aXNpb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo5NzYgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgxCiBtc2dpZCAiIgogIlJlc29sdmUgYWxsIGNvbmZsaWN0cyBtYW51YWxseSwgbWFyayB0aGVtIGFzIHJlc29sdmVkIHdpdGhcbiIKICJcImdpdCBhZGQvcm0gPGNvbmZsaWN0ZWRfZmlsZXM+XCIsIHRoZW4gcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIuXG4iCkBAIC0xNDA0MSwxMSArMTcxMTQsMjYgQEAKICJhYm9ydFwiLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjU2MQotbXNnaWQgImNvdWxkIG5vdCBkZXRlcm1pbmUgSEVBRCByZXZpc2lvbiIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiZ2l0IGVuY291bnRlcmVkIGFuIGVycm9yIHdoaWxlIHByZXBhcmluZyB0aGUgcGF0Y2hlcyB0byByZXBsYXlcbiIKKyJ0aGVzZSByZXZpc2lvbnM6XG4iCisiXG4iCisiICAgICVzXG4iCisiXG4iCisiQXMgYSByZXN1bHQsIGdpdCBjYW5ub3QgcmViYXNlIHRoZW0uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6NzUzCisjOiBidWlsdGluL3JlYmFzZS5jOjEzODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVucmVjb2duaXplZCBlbXB0eSB0eXBlICclcyc7IHZhbGlkIHZhbHVlcyBhcmUgXCJkcm9wXCIsIFwia2VlcFwiLCBhbmQgXCJhc2siCisiXCIuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJXNcbiIKQEAgLTE0MDU2LDcgKzE3MTQ0LDcgQEAKICJcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjc2OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJZiB5b3Ugd2lzaCB0byBzZXQgdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoaXMgYnJhbmNoIHlvdSBjYW4gZG8gc28gd2l0aDpcbiIKQEAgLTE0MDY1LDE2OCArMTcxNTMsMTg1IEBACiAiXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0NworbXNnaWQgImV4ZWMgY29tbWFuZHMgY2Fubm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDUxCittc2dpZCAiZW1wdHkgZXhlYyBjb21tYW5kIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MQogbXNnaWQgInJlYmFzZSBvbnRvIGdpdmVuIGJyYW5jaCBpbnN0ZWFkIG9mIHVwc3RyZWFtIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODM0CisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODMKK21zZ2lkICJ1c2UgdGhlIG1lcmdlLWJhc2Ugb2YgdXBzdHJlYW0gYW5kIGJyYW5jaCBhcyB0aGUgY3VycmVudCBiYXNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4NQogbXNnaWQgImFsbG93IHByZS1yZWJhc2UgaG9vayB0byBydW4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4NwogbXNnaWQgImJlIHF1aWV0LiBpbXBsaWVzIC0tbm8tc3RhdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjgzOQotbXNnaWQgImRpc3BsYXkgYSBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzo4NDIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MwogbXNnaWQgImRvIG5vdCBzaG93IGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg0NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDk2CiBtc2dpZCAiYWRkIGEgU2lnbmVkLW9mZi1ieTogbGluZSB0byBlYWNoIGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg0NyBidWlsdGluL3JlYmFzZS5jOjg1MSBidWlsdGluL3JlYmFzZS5jOjg1MworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDk4IGJ1aWx0aW4vcmViYXNlLmM6MTUwMiBidWlsdGluL3JlYmFzZS5jOjE1MDQKIG1zZ2lkICJwYXNzZWQgdG8gJ2dpdCBhbSciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NTUgYnVpbHRpbi9yZWJhc2UuYzo4NTcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUwNiBidWlsdGluL3JlYmFzZS5jOjE1MDgKIG1zZ2lkICJwYXNzZWQgdG8gJ2dpdCBhcHBseSciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NTkgYnVpbHRpbi9yZWJhc2UuYzo4NjIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxMCBidWlsdGluL3JlYmFzZS5jOjE1MTMKIG1zZ2lkICJjaGVycnktcGljayBhbGwgY29tbWl0cywgZXZlbiBpZiB1bmNoYW5nZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NjQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxNQogbXNnaWQgImNvbnRpbnVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODY3CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MTgKIG1zZ2lkICJza2lwIGN1cnJlbnQgcGF0Y2ggYW5kIGNvbnRpbnVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODY5CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjAKIG1zZ2lkICJhYm9ydCBhbmQgY2hlY2sgb3V0IHRoZSBvcmlnaW5hbCBicmFuY2giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyMwogbXNnaWQgImFib3J0IGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyNAogbXNnaWQgImVkaXQgdGhlIHRvZG8gbGlzdCBkdXJpbmcgYW4gaW50ZXJhY3RpdmUgcmViYXNlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODc2CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjcKIG1zZ2lkICJzaG93IHRoZSBwYXRjaCBmaWxlIGJlaW5nIGFwcGxpZWQgb3IgbWVyZ2VkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODc5CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzAKK21zZ2lkICJ1c2UgYXBwbHkgc3RyYXRlZ2llcyB0byByZWJhc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTM0CiBtc2dpZCAidXNlIG1lcmdpbmcgc3RyYXRlZ2llcyB0byByZWJhc2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4ODMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUzOAogbXNnaWQgImxldCB0aGUgdXNlciBlZGl0IHRoZSBsaXN0IG9mIGNvbW1pdHMgdG8gcmViYXNlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODg3Ci1tc2dpZCAidHJ5IHRvIHJlY3JlYXRlIG1lcmdlcyBpbnN0ZWFkIG9mIGlnbm9yaW5nIHRoZW0iCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NDIKK21zZ2lkICIoREVQUkVDQVRFRCkgdHJ5IHRvIHJlY3JlYXRlIG1lcmdlcyBpbnN0ZWFkIG9mIGlnbm9yaW5nIHRoZW0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4OTEKLW1zZ2lkICJhbGxvdyByZXJlcmUgdG8gdXBkYXRlIGluZGV4IHdpdGggcmVzb2x2ZWQgY29uZmxpY3QiCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NDcKK21zZ2lkICJob3cgdG8gaGFuZGxlIGNvbW1pdHMgdGhhdCBiZWNvbWUgZW1wdHkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4OTQKLW1zZ2lkICJwcmVzZXJ2ZSBlbXB0eSBjb21taXRzIGR1cmluZyByZWJhc2UiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzo4OTYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU1NAogbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEgdW5kZXIgLWkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MDIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU2MAogbXNnaWQgImF1dG9tYXRpY2FsbHkgc3Rhc2gvc3Rhc2ggcG9wIGJlZm9yZSBhbmQgYWZ0ZXIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MDQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU2MgogbXNnaWQgImFkZCBleGVjIGxpbmVzIGFmdGVyIGVhY2ggY29tbWl0IG9mIHRoZSBlZGl0YWJsZSBsaXN0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTA4CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjYKIG1zZ2lkICJhbGxvdyByZWJhc2luZyBjb21taXRzIHdpdGggZW1wdHkgbWVzc2FnZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3MAogbXNnaWQgInRyeSB0byByZWJhc2UgbWVyZ2VzIGluc3RlYWQgb2Ygc2tpcHBpbmcgdGhlbSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxNAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTczCiBtc2dpZCAidXNlICdtZXJnZS1iYXNlIC0tZm9yay1wb2ludCcgdG8gcmVmaW5lIHVwc3RyZWFtIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTE2CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzUKIG1zZ2lkICJ1c2UgdGhlIGdpdmVuIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTE4IGJ1aWx0aW4vcmV2ZXJ0LmM6MTExCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzcgYnVpbHRpbi9yZXZlcnQuYzoxMTUKIG1zZ2lkICJvcHRpb24iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3OAogbXNnaWQgInBhc3MgdGhlIGFyZ3VtZW50IHRocm91Z2ggdG8gdGhlIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTIyCisjOiBidWlsdGluL3JlYmFzZS5jOjE1ODEKIG1zZ2lkICJyZWJhc2UgYWxsIHJlYWNoYWJsZSBjb21taXRzIHVwIHRvIHRoZSByb290KHMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTM4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBleGVjICVzIgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTk4Cittc2dpZCAiIgorInRoZSByZWJhc2UudXNlQnVpbHRpbiBzdXBwb3J0IGhhcyBiZWVuIHJlbW92ZWQhXG4iCisiU2VlIGl0cyBlbnRyeSBpbiAnZ2l0IGhlbHAgY29uZmlnJyBmb3IgZGV0YWlscy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5NTYgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6MjEzCisjOiBidWlsdGluL3JlYmFzZS5jOjE2MDQKIG1zZ2lkICJJdCBsb29rcyBsaWtlICdnaXQgYW0nIGlzIGluIHByb2dyZXNzLiBDYW5ub3QgcmViYXNlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjk5NyBnaXQtbGVnYWN5LXJlYmFzZS5zaDozOTUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY0NQorbXNnaWQgIiIKKyJnaXQgcmViYXNlIC0tcHJlc2VydmUtbWVyZ2VzIGlzIGRlcHJlY2F0ZWQuIFVzZSAtLXJlYmFzZS1tZXJnZXMgaW5zdGVhZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjUwCittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0ta2VlcC1iYXNlJyB3aXRoICctLW9udG8nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1MgorbXNnaWQgImNhbm5vdCBjb21iaW5lICctLWtlZXAtYmFzZScgd2l0aCAnLS1yb290JyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NTYKIG1zZ2lkICJObyByZWJhc2UgaW4gcHJvZ3Jlc3M/IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTAwMSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MDYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY2MAogbXNnaWQgIlRoZSAtLWVkaXQtdG9kbyBhY3Rpb24gY2FuIG9ubHkgYmUgdXNlZCBkdXJpbmcgaW50ZXJhY3RpdmUgcmViYXNlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwMTUgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDEzCisjOiBidWlsdGluL3JlYmFzZS5jOjE2ODMKIG1zZ2lkICJDYW5ub3QgcmVhZCBIRUFEIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTAyOCBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MTYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY5NQogbXNnaWQgIiIKICJZb3UgbXVzdCBlZGl0IGFsbCBtZXJnZSBjb25mbGljdHMgYW5kIHRoZW5cbiIKICJtYXJrIHRoZW0gYXMgcmVzb2x2ZWQgdXNpbmcgZ2l0IGFkZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwNDcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTcxNAogbXNnaWQgImNvdWxkIG5vdCBkaXNjYXJkIHdvcmt0cmVlIGNoYW5nZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDY2CisjOiBidWlsdGluL3JlYmFzZS5jOjE3MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG1vdmUgYmFjayB0byAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwNzcgYnVpbHRpbi9ybS5jOjM2OAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgcmVtb3ZlICclcyciCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTAzCisjOiBidWlsdGluL3JlYmFzZS5jOjE3NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkl0IHNlZW1zIHRoYXQgdGhlcmUgaXMgYWxyZWFkeSBhICVzIGRpcmVjdG9yeSwgYW5kXG4iCkBAIC0xNDIzOSwzMzcgKzE3MzQ0LDE2MyBAQAogInZhbHVhYmxlIHRoZXJlLlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTEyNAorIzogYnVpbHRpbi9yZWJhc2UuYzoxODA2CiBtc2dpZCAic3dpdGNoIGBDJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTE2MQorIzogYnVpbHRpbi9yZWJhc2UuYzoxODQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gbW9kZTogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTgzCisjOiBidWlsdGluL3JlYmFzZS5jOjE4NjkKIG1zZ2lkICItLXN0cmF0ZWd5IHJlcXVpcmVzIC0tbWVyZ2Ugb3IgLS1pbnRlcmFjdGl2ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyMjYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg5OQorbXNnaWQgImNhbm5vdCBjb21iaW5lIGFwcGx5IG9wdGlvbnMgd2l0aCBtZXJnZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTkxMgogIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHJlYmFzZSBiYWNrZW5kOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5MzcKK21zZ2lkICItLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWMgcmVxdWlyZXMgLS1leGVjIG9yIC0taW50ZXJhY3RpdmUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTU3Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmUtbWVyZ2VzJyB3aXRoICctLXJlYmFzZS1tZXJnZXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk2MQogbXNnaWQgIiIKLSJlcnJvcjogY2Fubm90IGNvbWJpbmUgaW50ZXJhY3RpdmUgb3B0aW9ucyAoLS1pbnRlcmFjdGl2ZSwgLS1leGVjLCAtLXJlYmFzZS0iCi0ibWVyZ2VzLCAtLXByZXNlcnZlLW1lcmdlcywgLS1rZWVwLWVtcHR5LCAtLXJvb3QgKyAtLW9udG8pIHdpdGggYW0gb3B0aW9ucyAiCi0iKCVzKSIKKyJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmUtbWVyZ2VzJyB3aXRoICctLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTIzMQotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iZXJyb3I6IGNhbm5vdCBjb21iaW5lIG1lcmdlIG9wdGlvbnMgKC0tbWVyZ2UsIC0tc3RyYXRlZ3ksIC0tc3RyYXRlZ3ktb3B0aW9uKSAiCi0id2l0aCBhbSBvcHRpb25zICglcykiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjUxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjUzNgotbXNnaWQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmViYXNlLW1lcmdlcyciCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjU2IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU0MgotbXNnaWQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1yZWJhc2UtbWVyZ2VzJyB3aXRoICctLXN0cmF0ZWd5LW9wdGlvbiciCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjU5IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU0NAotbXNnaWQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1yZWJhc2UtbWVyZ2VzJyB3aXRoICctLXN0cmF0ZWd5JyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyODMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjg5CisjOiBidWlsdGluL3JlYmFzZS5jOjE5OTEKIG1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIG5ldyByb290IGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzMDcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAxNworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnOiBuZWVkIGV4YWN0bHkgb25lIG1lcmdlIGJhc2Ugd2l0aCBicmFuY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IG5lZWQgZXhhY3RseSBvbmUgbWVyZ2UgYmFzZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzMTQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJEb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIGNvbW1pdCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTMzOQorIzogYnVpbHRpbi9yZWJhc2UuYzoyMDU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhdGFsOiBubyBzdWNoIGJyYW5jaC9jb21taXQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzNDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjM3Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkzMAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMDYyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZWY6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTM1OQorIzogYnVpbHRpbi9yZWJhc2UuYzoyMDczCiBtc2dpZCAiQ291bGQgbm90IHJlc29sdmUgSEVBRCB0byBhIHJldmlzaW9uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTM5OSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2NjUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjExMQogbXNnaWQgIkNhbm5vdCBhdXRvc3Rhc2giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDAyCisjOiBidWlsdGluL3JlYmFzZS5jOjIxMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5leHBlY3RlZCBzdGFzaCByZXNwb25zZTogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBmb3IgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJXNcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MTQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyNgogbXNnaWQgImNvdWxkIG5vdCByZXNldCAtLWhhcmQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE1IGJ1aWx0aW4vcmVzZXQuYzoxMTMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiSEVBRCBpcyBub3cgYXQgJXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDMxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjY3NAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTM1CiBtc2dpZCAiUGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0NTgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IHBhcnNlICclcyciCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDcwCisjOiBidWlsdGluL3JlYmFzZS5jOjIxNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN3aXRjaCB0byAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0ODEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6Njk3Ci0jLCBzaC1mb3JtYXQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE4MAogbXNnaWQgIkhFQUQgaXMgdXAgdG8gZGF0ZS4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgzCisjOiBidWlsdGluL3JlYmFzZS5jOjIxODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3VycmVudCBicmFuY2ggJXMgaXMgdXAgdG8gZGF0ZS5cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0OTEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzA3Ci0jLCBzaC1mb3JtYXQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE5MAogbXNnaWQgIkhFQUQgaXMgdXAgdG8gZGF0ZSwgcmViYXNlIGZvcmNlZC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDkzCisjOiBidWlsdGluL3JlYmFzZS5jOjIxOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3VycmVudCBicmFuY2ggJXMgaXMgdXAgdG8gZGF0ZSwgcmViYXNlIGZvcmNlZC5cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MDEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6MjA4CisjOiBidWlsdGluL3JlYmFzZS5jOjIyMDAKIG1zZ2lkICJUaGUgcHJlLXJlYmFzZSBob29rIHJlZnVzZWQgdG8gcmViYXNlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJDaGFuZ2VzIHRvICVzOlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxMQorIzogYnVpbHRpbi9yZWJhc2UuYzoyMjEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoYW5nZXMgZnJvbSAlcyB0byAlczpcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MzYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJGaXJzdCwgcmV3aW5kaW5nIGhlYWQgdG8gcmVwbGF5IHlvdXIgd29yayBvbiB0b3Agb2YgaXQuLi5cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1NDMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjI0NAogbXNnaWQgIkNvdWxkIG5vdCBkZXRhY2ggSEVBRCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1NTIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjI1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRlZCAlcyB0byAlcy5cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoyNAotbXNnaWQgIm5vIEhFQUQ/IgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjUxCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5ICVzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjU3Ci1tc2dpZCAiY291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTAxCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBvcGVuICVzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjExNAotbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSB0b2RvIGxpc3QiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTI5Ci1tc2dpZCAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxvcHRpb25zPl0iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTQ4Ci1tc2dpZCAia2VlcCBlbXB0eSBjb21taXRzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1MCBidWlsdGluL3JldmVydC5jOjEyNAotbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTEKLW1zZ2lkICJyZWJhc2UgbWVyZ2UgY29tbWl0cyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTMKLW1zZ2lkICJrZWVwIG9yaWdpbmFsIGJyYW5jaCBwb2ludHMgb2YgY291c2lucyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTUKLW1zZ2lkICJtb3ZlIGNvbW1pdHMgdGhhdCBiZWdpbiB3aXRoIHNxdWFzaCEvZml4dXAhIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1NgotbXNnaWQgInNpZ24gY29tbWl0cyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTgKLW1zZ2lkICJjb250aW51ZSByZWJhc2UiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYwCi1tc2dpZCAic2tpcCBjb21taXQiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYxCi1tc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2MwotbXNnaWQgInNob3cgdGhlIGN1cnJlbnQgcGF0Y2giCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTY2Ci1tc2dpZCAic2hvcnRlbiBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTY4Ci1tc2dpZCAiZXhwYW5kIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzAKLW1zZ2lkICJjaGVjayB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3MgotbXNnaWQgInJlYXJyYW5nZSBmaXh1cC9zcXVhc2ggbGluZXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc0Ci1tc2dpZCAiaW5zZXJ0IGV4ZWMgY29tbWFuZHMgaW4gdG9kbyBsaXN0IgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NQotbXNnaWQgIm9udG8iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc3Ci1tc2dpZCAicmVzdHJpY3QtcmV2aXNpb24iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc3Ci1tc2dpZCAicmVzdHJpY3QgcmV2aXNpb24iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc4Ci1tc2dpZCAic3F1YXNoLW9udG8iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc5Ci1tc2dpZCAic3F1YXNoIG9udG8iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgxCi1tc2dpZCAidGhlIHVwc3RyZWFtIGNvbW1pdCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODIKLW1zZ2lkICJoZWFkLW5hbWUiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgyCi1tc2dpZCAiaGVhZCBuYW1lIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4NwotbXNnaWQgInJlYmFzZSBzdHJhdGVneSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODgKLW1zZ2lkICJzdHJhdGVneS1vcHRzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4OQotbXNnaWQgInN0cmF0ZWd5IG9wdGlvbnMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkwCi1tc2dpZCAic3dpdGNoLXRvIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MQotbXNnaWQgInRoZSBicmFuY2ggb3IgY29tbWl0IHRvIGNoZWNrb3V0IgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MgotbXNnaWQgIm9udG8tbmFtZSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTIKLW1zZ2lkICJvbnRvIG5hbWUiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkzCi1tc2dpZCAiY21kIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MwotbXNnaWQgInRoZSBjb21tYW5kIHRvIHJ1biIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoyMjAKLW1zZ2lkICItLVtuby1dcmViYXNlLWNvdXNpbnMgaGFzIG5vIGVmZmVjdCB3aXRob3V0IC0tcmViYXNlLW1lcmdlcyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoyMjYKLW1zZ2lkICJhIGJhc2UgY29tbWl0IG11c3QgYmUgcHJvdmlkZWQgd2l0aCAtLXVwc3RyZWFtIG9yIC0tb250byIKLW1zZ3N0ciAiIgotCiAjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjMzCiBtc2dpZCAiZ2l0IHJlY2VpdmUtcGFjayA8Z2l0LWRpcj4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzo4MzAKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODIxCiBtc2dpZCAiIgogIkJ5IGRlZmF1bHQsIHVwZGF0aW5nIHRoZSBjdXJyZW50IGJyYW5jaCBpbiBhIG5vbi1iYXJlIHJlcG9zaXRvcnlcbiIKICJpcyBkZW5pZWQsIGJlY2F1c2UgaXQgd2lsbCBtYWtlIHRoZSBpbmRleCBhbmQgd29yayB0cmVlIGluY29uc2lzdGVudFxuIgpAQCAtMTQ1ODYsNyArMTc1MTcsNyBAQAogIidyZWNlaXZlLmRlbnlDdXJyZW50QnJhbmNoJyBjb25maWd1cmF0aW9uIHZhcmlhYmxlIHRvICdyZWZ1c2UnLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjg1MAorIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzo4NDEKIG1zZ2lkICIiCiAiQnkgZGVmYXVsdCwgZGVsZXRpbmcgdGhlIGN1cnJlbnQgYnJhbmNoIGlzIGRlbmllZCwgYmVjYXVzZSB0aGUgbmV4dFxuIgogIidnaXQgY2xvbmUnIHdvbid0IHJlc3VsdCBpbiBhbnkgZmlsZSBjaGVja2VkIG91dCwgY2F1c2luZyBjb25mdXNpb24uXG4iCkBAIC0xNDU5OCwxODUgKzE3NTI5LDI0OCBAQAogIlRvIHNxdWVsY2ggdGhpcyBtZXNzYWdlLCB5b3UgY2FuIHNldCBpdCB0byAncmVmdXNlJy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTI5CisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5MzgKIG1zZ2lkICJxdWlldCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NDMKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk1MgogbXNnaWQgIllvdSBtdXN0IHNwZWNpZnkgYSBkaXJlY3RvcnkuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVmbG9nLmM6NTYzIGJ1aWx0aW4vcmVmbG9nLmM6NTY4CisjOiBidWlsdGluL3JlZmxvZy5jOjE3Cittc2dpZCAiIgorImdpdCByZWZsb2cgZXhwaXJlIFstLWV4cGlyZT08dGltZT5dIFstLWV4cGlyZS11bnJlYWNoYWJsZT08dGltZT5dIFstLSIKKyJyZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLXN0YWxlLWZpeF0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSBbLS1hbGxdICIKKyI8cmVmcz4uLi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzoyMgorbXNnaWQgIiIKKyJnaXQgcmVmbG9nIGRlbGV0ZSBbLS1yZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gIgorIjxyZWZzPi4uLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjI1Cittc2dpZCAiZ2l0IHJlZmxvZyBleGlzdHMgPHJlZj4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo1NjggYnVpbHRpbi9yZWZsb2cuYzo1NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0aW1lc3RhbXAiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNgotbXNnaWQgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSIKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hcmtpbmcgcmVhY2hhYmxlIG9iamVjdHMuLi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcG9pbnRzIG5vd2hlcmUhIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6Njk2Cittc2dpZCAibm8gcmVmbG9nIHNwZWNpZmllZCB0byBkZWxldGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgcmVmbG9nOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjcxMAorIywgYy1mb3JtYXQKK21zZ2lkICJubyByZWZsb2cgZm9yICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWYgZm9ybWF0OiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc2NQorbXNnaWQgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCiBtc2dzdHIgIiIKIAogIzogYnVpbHRpbi9yZW1vdGUuYzoxNworbXNnaWQgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE4CiBtc2dpZCAiIgogImdpdCByZW1vdGUgYWRkIFstdCA8YnJhbmNoPl0gWy1tIDxtYXN0ZXI+XSBbLWZdIFstLXRhZ3MgfCAtLW5vLXRhZ3NdIFstLSIKICJtaXJyb3I9PGZldGNofHB1c2g+XSA8bmFtZT4gPHVybD4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOCBidWlsdGluL3JlbW90ZS5jOjM4CisjOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6MzkKIG1zZ2lkICJnaXQgcmVtb3RlIHJlbmFtZSA8b2xkPiA8bmV3PiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6NDMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjAgYnVpbHRpbi9yZW1vdGUuYzo0NAogbXNnaWQgImdpdCByZW1vdGUgcmVtb3ZlIDxuYW1lPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIwIGJ1aWx0aW4vcmVtb3RlLmM6NDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjEgYnVpbHRpbi9yZW1vdGUuYzo0OQogbXNnaWQgImdpdCByZW1vdGUgc2V0LWhlYWQgPG5hbWU+ICgtYSB8IC0tYXV0byB8IC1kIHwgLS1kZWxldGUgfCA8YnJhbmNoPikiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMQorIzogYnVpbHRpbi9yZW1vdGUuYzoyMgogbXNnaWQgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSBzaG93IFstbl0gPG5hbWU+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjMKIG1zZ2lkICJnaXQgcmVtb3RlIHBydW5lIFstbiB8IC0tZHJ5LXJ1bl0gPG5hbWU+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjQKIG1zZ2lkICIiCiAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHVwZGF0ZSBbLXAgfCAtLXBydW5lXSBbKDxncm91cD4gfCA8cmVtb3RlPikuLi5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjUKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyBbLS1hZGRdIDxuYW1lPiA8YnJhbmNoPi4uLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI1IGJ1aWx0aW4vcmVtb3RlLmM6NzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjYgYnVpbHRpbi9yZW1vdGUuYzo3NQogbXNnaWQgImdpdCByZW1vdGUgZ2V0LXVybCBbLS1wdXNoXSBbLS1hbGxdIDxuYW1lPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI2IGJ1aWx0aW4vcmVtb3RlLmM6NzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjcgYnVpbHRpbi9yZW1vdGUuYzo4MAogbXNnaWQgImdpdCByZW1vdGUgc2V0LXVybCBbLS1wdXNoXSA8bmFtZT4gPG5ld3VybD4gWzxvbGR1cmw+XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI3IGJ1aWx0aW4vcmVtb3RlLmM6ODAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjggYnVpbHRpbi9yZW1vdGUuYzo4MQogbXNnaWQgImdpdCByZW1vdGUgc2V0LXVybCAtLWFkZCA8bmFtZT4gPG5ld3VybD4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyOCBidWlsdGluL3JlbW90ZS5jOjgxCisjOiBidWlsdGluL3JlbW90ZS5jOjI5IGJ1aWx0aW4vcmVtb3RlLmM6ODIKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC11cmwgLS1kZWxldGUgPG5hbWU+IDx1cmw+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MzMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MzQKIG1zZ2lkICJnaXQgcmVtb3RlIGFkZCBbPG9wdGlvbnM+XSA8bmFtZT4gPHVybD4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo1MworIzogYnVpbHRpbi9yZW1vdGUuYzo1NAogbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIDxuYW1lPiA8YnJhbmNoPi4uLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjU0CisjOiBidWlsdGluL3JlbW90ZS5jOjU1CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgLS1hZGQgPG5hbWU+IDxicmFuY2g+Li4uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjAKIG1zZ2lkICJnaXQgcmVtb3RlIHNob3cgWzxvcHRpb25zPl0gPG5hbWU+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjUKIG1zZ2lkICJnaXQgcmVtb3RlIHBydW5lIFs8b3B0aW9ucz5dIDxuYW1lPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjY5CisjOiBidWlsdGluL3JlbW90ZS5jOjcwCiBtc2dpZCAiZ2l0IHJlbW90ZSB1cGRhdGUgWzxvcHRpb25zPl0gWzxncm91cD4gfCA8cmVtb3RlPl0uLi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5OAorIzogYnVpbHRpbi9yZW1vdGUuYzo5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJVcGRhdGluZyAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzEKIG1zZ2lkICIiCiAiLS1taXJyb3IgaXMgZGFuZ2Vyb3VzIGFuZCBkZXByZWNhdGVkOyBwbGVhc2VcbiIKICJcdCB1c2UgLS1taXJyb3I9ZmV0Y2ggb3IgLS1taXJyb3I9cHVzaCBpbnN0ZWFkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ3CisjOiBidWlsdGluL3JlbW90ZS5jOjE0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG1pcnJvciBhcmd1bWVudDogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY0CiBtc2dpZCAiZmV0Y2ggdGhlIHJlbW90ZSBicmFuY2hlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjYKIG1zZ2lkICJpbXBvcnQgYWxsIHRhZ3MgYW5kIGFzc29jaWF0ZWQgb2JqZWN0cyB3aGVuIGZldGNoaW5nIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY4CisjOiBidWlsdGluL3JlbW90ZS5jOjE2OQogbXNnaWQgIm9yIGRvIG5vdCBmZXRjaCBhbnkgdGFnIGF0IGFsbCAoLS1uby10YWdzKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE3MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNzEKIG1zZ2lkICJicmFuY2goZXMpIHRvIHRyYWNrIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcxCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MgogbXNnaWQgIm1hc3RlciBicmFuY2giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTc0CiBtc2dpZCAic2V0IHVwIHJlbW90ZSBhcyBhIG1pcnJvciB0byBwdXNoIHRvIG9yIGZldGNoIGZyb20iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxODUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg2CiBtc2dpZCAic3BlY2lmeWluZyBhIG1hc3RlciBicmFuY2ggbWFrZXMgbm8gc2Vuc2Ugd2l0aCAtLW1pcnJvciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE4NworIzogYnVpbHRpbi9yZW1vdGUuYzoxODgKIG1zZ2lkICJzcGVjaWZ5aW5nIGJyYW5jaGVzIHRvIHRyYWNrIG1ha2VzIHNlbnNlIG9ubHkgd2l0aCBmZXRjaCBtaXJyb3JzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk0IGJ1aWx0aW4vcmVtb3RlLmM6NjM2CisjOiBidWlsdGluL3JlbW90ZS5jOjE5NSBidWlsdGluL3JlbW90ZS5jOjY5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZW1vdGUgJXMgYWxyZWFkeSBleGlzdHMuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk4IGJ1aWx0aW4vcmVtb3RlLmM6NjQwCisjOiBidWlsdGluL3JlbW90ZS5jOjE5OSBidWlsdGluL3JlbW90ZS5jOjcwMAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHJlbW90ZSBuYW1lIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjM4CisjOiBidWlsdGluL3JlbW90ZS5jOjIzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc2V0dXAgbWFzdGVyICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzozNDQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBnZXQgZmV0Y2ggbWFwIGZvciByZWZzcGVjICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NDQzIGJ1aWx0aW4vcmVtb3RlLmM6NDUxCisjOiBidWlsdGluL3JlbW90ZS5jOjQ1MyBidWlsdGluL3JlbW90ZS5jOjQ2MQogbXNnaWQgIihtYXRjaGluZykiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo0NTUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NDY1CiBtc2dpZCAiKGRlbGV0ZSkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2MjkgYnVpbHRpbi9yZW1vdGUuYzo3NjUgYnVpbHRpbi9yZW1vdGUuYzo4NjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzZXQgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjY1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlICVzIGNvbmZpZ3VyYXRpb24gcmVtb3RlLnB1c2hEZWZhdWx0IGluOlxuIgorIlx0JXM6JWRcbiIKKyJub3cgbmFtZXMgdGhlIG5vbi1leGlzdGVudCByZW1vdGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjY4OSBidWlsdGluL3JlbW90ZS5jOjgzMiBidWlsdGluL3JlbW90ZS5jOjk0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIHJlbW90ZTogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjY0NgorIzogYnVpbHRpbi9yZW1vdGUuYzo3MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbmFtZSBjb25maWcgc2VjdGlvbiAnJXMnIHRvICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NjYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJOb3QgdXBkYXRpbmcgbm9uLWRlZmF1bHQgZmV0Y2ggcmVmc3BlY1xuIgpAQCAtMTQ3ODQsMTcgKzE3Nzc4LDE3IEBACiAiXHRQbGVhc2UgdXBkYXRlIHRoZSBjb25maWd1cmF0aW9uIG1hbnVhbGx5IGlmIG5lY2Vzc2FyeS4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo3MDIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzY2CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbGV0aW5nICclcycgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NzM2CisjOiBidWlsdGluL3JlbW90ZS5jOjgwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjcmVhdGluZyAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjgwMgorIzogYnVpbHRpbi9yZW1vdGUuYzo4NzYKIG1zZ2lkICIiCiAiTm90ZTogQSBicmFuY2ggb3V0c2lkZSB0aGUgcmVmcy9yZW1vdGVzLyBoaWVyYXJjaHkgd2FzIG5vdCByZW1vdmVkO1xuIgogInRvIGRlbGV0ZSBpdCwgdXNlOiIKQEAgLTE0ODA0LDExOCArMTc3OTgsMTE4IEBACiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjgxNgorIzogYnVpbHRpbi9yZW1vdGUuYzo4OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBjb25maWcgc2VjdGlvbiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTE3CisjOiBidWlsdGluL3JlbW90ZS5jOjk5MwogIywgYy1mb3JtYXQKIG1zZ2lkICIgbmV3IChuZXh0IGZldGNoIHdpbGwgc3RvcmUgaW4gcmVtb3Rlcy8lcykiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTk2CiBtc2dpZCAiIHRyYWNrZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MjIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTk4CiBtc2dpZCAiIHN0YWxlICh1c2UgJ2dpdCByZW1vdGUgcHJ1bmUnIHRvIHJlbW92ZSkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAwMAogbXNnaWQgIiA/Pz8iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NjUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGJyYW5jaC4lcy5tZXJnZTsgY2Fubm90IHJlYmFzZSBvbnRvID4gMSBicmFuY2giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgb250byByZW1vdGUgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgKHdpdGggbWVyZ2VzKSBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk3OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYmFzZXMgb250byByZW1vdGUgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5ODMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIgbWVyZ2VzIHdpdGggcmVtb3RlICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg2CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAibWVyZ2VzIHdpdGggcmVtb3RlICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg5CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJS0qcyAgICBhbmQgd2l0aCByZW1vdGUgJXNcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMzIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEwOAogbXNnaWQgImNyZWF0ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMzUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExMQogbXNnaWQgImRlbGV0ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExNQogbXNnaWQgInVwIHRvIGRhdGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQyCisjOiBidWlsdGluL3JlbW90ZS5jOjExMTgKIG1zZ2lkICJmYXN0LWZvcndhcmRhYmxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA0NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTIxCiBtc2dpZCAibG9jYWwgb3V0IG9mIGRhdGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDUyCisjOiBidWlsdGluL3JlbW90ZS5jOjExMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICUtKnMgZm9yY2VzIHRvICUtKnMgKCVzKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNTUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzMQogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBwdXNoZXMgdG8gJS0qcyAoJXMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIGZvcmNlcyB0byAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNjIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzOAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBwdXNoZXMgdG8gJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTMwCisjOiBidWlsdGluL3JlbW90ZS5jOjEyMDYKIG1zZ2lkICJkbyBub3QgcXVlcnkgcmVtb3RlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNTcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICIqIHJlbW90ZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNTgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIgIEZldGNoIFVSTDogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU5IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NSBidWlsdGluL3JlbW90ZS5jOjEzMTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIzNSBidWlsdGluL3JlbW90ZS5jOjEyNTEgYnVpbHRpbi9yZW1vdGUuYzoxMzkwCiBtc2dpZCAiKG5vIFVSTCkiCiBtc2dzdHIgIiIKIApAQCAtMTQ5MjMsMjg3ICsxNzkxNywzMDYgQEAKICMuIHdpdGggdGhlIG9uZSBpbiAiIEZldGNoIFVSTDogJXMiCiAjLiB0cmFuc2xhdGlvbi4KICMuCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzMgYnVpbHRpbi9yZW1vdGUuYzoxMTc1CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNDkgYnVpbHRpbi9yZW1vdGUuYzoxMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgUHVzaCAgVVJMOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzcgYnVpbHRpbi9yZW1vdGUuYzoxMTc5IGJ1aWx0aW4vcmVtb3RlLmM6MTE4MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjUzIGJ1aWx0aW4vcmVtb3RlLmM6MTI1NSBidWlsdGluL3JlbW90ZS5jOjEyNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBIRUFEIGJyYW5jaDogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTc3CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTMKIG1zZ2lkICIobm90IHF1ZXJpZWQpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjU1CiBtc2dpZCAiKHVua25vd24pIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE4MworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIgIEhFQUQgYnJhbmNoIChyZW1vdGUgSEVBRCBpcyBhbWJpZ3VvdXMsIG1heSBiZSBvbmUgb2YgdGhlIGZvbGxvd2luZyk6XG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTk1CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBSZW1vdGUgYnJhbmNoOiVzIgogbXNnaWRfcGx1cmFsICIgIFJlbW90ZSBicmFuY2hlczolcyIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE5OCBidWlsdGluL3JlbW90ZS5jOjEyMjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3NCBidWlsdGluL3JlbW90ZS5jOjEzMDAKIG1zZ2lkICIgKHN0YXR1cyBub3QgcXVlcmllZCkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjA3CisjOiBidWlsdGluL3JlbW90ZS5jOjEyODMKIG1zZ2lkICIgIExvY2FsIGJyYW5jaCBjb25maWd1cmVkIGZvciAnZ2l0IHB1bGwnOiIKIG1zZ2lkX3BsdXJhbCAiICBMb2NhbCBicmFuY2hlcyBjb25maWd1cmVkIGZvciAnZ2l0IHB1bGwnOiIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIxNQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjkxCiBtc2dpZCAiICBMb2NhbCByZWZzIHdpbGwgYmUgbWlycm9yZWQgYnkgJ2dpdCBwdXNoJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyMjEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5NwogIywgYy1mb3JtYXQKIG1zZ2lkICIgIExvY2FsIHJlZiBjb25maWd1cmVkIGZvciAnZ2l0IHB1c2gnJXM6IgogbXNnaWRfcGx1cmFsICIgIExvY2FsIHJlZnMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdXNoJyVzOiIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzE4CiBtc2dpZCAic2V0IHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCBhY2NvcmRpbmcgdG8gcmVtb3RlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzIwCiBtc2dpZCAiZGVsZXRlIHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMzNQogbXNnaWQgIkNhbm5vdCBkZXRlcm1pbmUgcmVtb3RlIEhFQUQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjYxCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMzcKIG1zZ2lkICJNdWx0aXBsZSByZW1vdGUgSEVBRCBicmFuY2hlcy4gUGxlYXNlIGNob29zZSBvbmUgZXhwbGljaXRseSB3aXRoOiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNzEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZGVsZXRlICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIHJlZjogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjgxCisjOiBidWlsdGluL3JlbW90ZS5jOjEzNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldHVwICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAlcyB3aWxsIGJlY29tZSBkYW5nbGluZyEiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzAwCisjOiBidWlsdGluL3JlbW90ZS5jOjEzNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiICVzIGhhcyBiZWNvbWUgZGFuZ2xpbmchIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlBydW5pbmcgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzExCisjOiBidWlsdGluL3JlbW90ZS5jOjEzODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVVJMOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMjcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQwMwogIywgYy1mb3JtYXQKIG1zZ2lkICIgKiBbd291bGQgcHJ1bmVdICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMzMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNDA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAqIFtwcnVuZWRdICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM3NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNDUxCiBtc2dpZCAicHJ1bmUgcmVtb3RlcyBhZnRlciBmZXRjaGluZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0MzggYnVpbHRpbi9yZW1vdGUuYzoxNDkyIGJ1aWx0aW4vcmVtb3RlLmM6MTU2MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTE0IGJ1aWx0aW4vcmVtb3RlLmM6MTU2OCBidWlsdGluL3JlbW90ZS5jOjE2MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZW1vdGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0NTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzMAogbXNnaWQgImFkZCBicmFuY2giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDYxCisjOiBidWlsdGluL3JlbW90ZS5jOjE1MzcKIG1zZ2lkICJubyByZW1vdGUgc3BlY2lmaWVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ3OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTU0CiBtc2dpZCAicXVlcnkgcHVzaCBVUkxzIHJhdGhlciB0aGFuIGZldGNoIFVSTHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDgwCisjOiBidWlsdGluL3JlbW90ZS5jOjE1NTYKIG1zZ2lkICJyZXR1cm4gYWxsIFVSTHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTA4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIm5vIFVSTHMgY29uZmlndXJlZCBmb3IgcmVtb3RlICclcyciCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM0Ci1tc2dpZCAibWFuaXB1bGF0ZSBwdXNoIFVSTHMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM2Ci1tc2dpZCAiYWRkIFVSTCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1MzgKLW1zZ2lkICJkZWxldGUgVVJMcyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1NDUKLW1zZ2lkICItLWFkZCAtLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2UiCi1tc2dzdHIgIiIKLQogIzogYnVpbHRpbi9yZW1vdGUuYzoxNTg0CiAjLCBjLWZvcm1hdAorbXNnaWQgIm5vIFVSTHMgY29uZmlndXJlZCBmb3IgcmVtb3RlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEwCittc2dpZCAibWFuaXB1bGF0ZSBwdXNoIFVSTHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEyCittc2dpZCAiYWRkIFVSTCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE2MTQKK21zZ2lkICJkZWxldGUgVVJMcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE2MjEKK21zZ2lkICItLWFkZCAtLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjYwCisjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgb2xkIFVSTCBwYXR0ZXJuOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1OTIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIFVSTCBmb3VuZDogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTk0CisjOiBidWlsdGluL3JlbW90ZS5jOjE2NzAKIG1zZ2lkICJXaWxsIG5vdCBkZWxldGUgYWxsIG5vbi1wdXNoIFVSTHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEwCi1tc2dpZCAiYmUgdmVyYm9zZTsgbXVzdCBiZSBwbGFjZWQgYmVmb3JlIGEgc3ViY29tbWFuZCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2NDEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVW5rbm93biBzdWJjb21tYW5kOiAlcyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlcGFjay5jOjIyCisjOiBidWlsdGluL3JlcGFjay5jOjIzCiBtc2dpZCAiZ2l0IHJlcGFjayBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI3CisjOiBidWlsdGluL3JlcGFjay5jOjI4CiBtc2dpZCAiIgogIkluY3JlbWVudGFsIHJlcGFja3MgYXJlIGluY29tcGF0aWJsZSB3aXRoIGJpdG1hcCBpbmRleGVzLiAgVXNlXG4iCiAiLS1uby13cml0ZS1iaXRtYXAtaW5kZXggb3IgZGlzYWJsZSB0aGUgcGFjay53cml0ZWJpdG1hcHMgY29uZmlndXJhdGlvbi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyOTQKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MTkxCittc2dpZCAiY291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjIzMCBidWlsdGluL3JlcGFjay5jOjQxNgorbXNnaWQgInJlcGFjazogRXhwZWN0aW5nIGZ1bGwgaGV4IG9iamVjdCBJRCBsaW5lcyBvbmx5IGZyb20gcGFjay1vYmplY3RzLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI1NAorbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjkyCiBtc2dpZCAicGFjayBldmVyeXRoaW5nIGluIGEgc2luZ2xlIHBhY2siCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyOTYKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk0CiBtc2dpZCAic2FtZSBhcyAtYSwgYW5kIHR1cm4gdW5yZWFjaGFibGUgb2JqZWN0cyBsb29zZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5OQorIzogYnVpbHRpbi9yZXBhY2suYzoyOTcKIG1zZ2lkICJyZW1vdmUgcmVkdW5kYW50IHBhY2tzLCBhbmQgcnVuIGdpdC1wcnVuZS1wYWNrZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDEKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk5CiBtc2dpZCAicGFzcyAtLW5vLXJldXNlLWRlbHRhIHRvIGdpdC1wYWNrLW9iamVjdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDMKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCiBtc2dpZCAicGFzcyAtLW5vLXJldXNlLW9iamVjdCB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA1CisjOiBidWlsdGluL3JlcGFjay5jOjMwMwogbXNnaWQgImRvIG5vdCBydW4gZ2l0LXVwZGF0ZS1zZXJ2ZXItaW5mbyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMwOAorIzogYnVpbHRpbi9yZXBhY2suYzozMDYKIG1zZ2lkICJwYXNzIC0tbG9jYWwgdG8gZ2l0LXBhY2stb2JqZWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxMAorIzogYnVpbHRpbi9yZXBhY2suYzozMDgKIG1zZ2lkICJ3cml0ZSBiaXRtYXAgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTIKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEwCiBtc2dpZCAicGFzcyAtLWRlbHRhLWlzbGFuZHMgdG8gZ2l0LXBhY2stb2JqZWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxMworIzogYnVpbHRpbi9yZXBhY2suYzozMTEKIG1zZ2lkICJhcHByb3hpZGF0ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxNAorIzogYnVpbHRpbi9yZXBhY2suYzozMTIKIG1zZ2lkICJ3aXRoIC1BLCBkbyBub3QgbG9vc2VuIG9iamVjdHMgb2xkZXIgdGhhbiB0aGlzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE2CisjOiBidWlsdGluL3JlcGFjay5jOjMxNAogbXNnaWQgIndpdGggLWEsIHJlcGFjayB1bnJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE4CisjOiBidWlsdGluL3JlcGFjay5jOjMxNgogbXNnaWQgInNpemUgb2YgdGhlIHdpbmRvdyB1c2VkIGZvciBkZWx0YSBjb21wcmVzc2lvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxOSBidWlsdGluL3JlcGFjay5jOjMyNQorIzogYnVpbHRpbi9yZXBhY2suYzozMTcgYnVpbHRpbi9yZXBhY2suYzozMjMKIG1zZ2lkICJieXRlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyMAorIzogYnVpbHRpbi9yZXBhY2suYzozMTgKIG1zZ2lkICJzYW1lIGFzIHRoZSBhYm92ZSwgYnV0IGxpbWl0IG1lbW9yeSBzaXplIGluc3RlYWQgb2YgZW50cmllcyBjb3VudCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyMgorIzogYnVpbHRpbi9yZXBhY2suYzozMjAKIG1zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gZGVsdGEgZGVwdGgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMjQKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIyCiBtc2dpZCAibGltaXRzIHRoZSBtYXhpbXVtIG51bWJlciBvZiB0aHJlYWRzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI2CisjOiBidWlsdGluL3JlcGFjay5jOjMyNAogbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIHBhY2tmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI4CisjOiBidWlsdGluL3JlcGFjay5jOjMyNgogbXNnaWQgInJlcGFjayBvYmplY3RzIGluIHBhY2tzIG1hcmtlZCB3aXRoIC5rZWVwIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzMwCisjOiBidWlsdGluL3JlcGFjay5jOjMyOAogbXNnaWQgImRvIG5vdCByZXBhY2sgdGhpcyBwYWNrIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQwCisjOiBidWlsdGluL3JlcGFjay5jOjMzOAogbXNnaWQgImNhbm5vdCBkZWxldGUgcGFja3MgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozNDQKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQyCiBtc2dpZCAiLS1rZWVwLXVucmVhY2hhYmxlIGFuZCAtQSBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6NTI3CisjOiBidWlsdGluL3JlcGFjay5jOjQyNQorbXNnaWQgIk5vdGhpbmcgbmV3IHRvIHBhY2suIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NDg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXQVJOSU5HOiBTb21lIHBhY2tzIGluIHVzZSBoYXZlIGJlZW4gcmVuYW1lZCBieVxuIgorIldBUk5JTkc6IHByZWZpeGluZyBvbGQtIHRvIHRoZWlyIG5hbWUsIGluIG9yZGVyIHRvXG4iCisiV0FSTklORzogcmVwbGFjZSB0aGVtIHdpdGggdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZVxuIgorIldBUk5JTkc6IGZpbGUuICBCdXQgdGhlIG9wZXJhdGlvbiBmYWlsZWQsIGFuZCB0aGVcbiIKKyJXQVJOSU5HOiBhdHRlbXB0IHRvIHJlbmFtZSB0aGVtIGJhY2sgdG8gdGhlaXJcbiIKKyJXQVJOSU5HOiBvcmlnaW5hbCBuYW1lcyBhbHNvIGZhaWxlZC5cbiIKKyJXQVJOSU5HOiBQbGVhc2UgcmVuYW1lIHRoZW0gaW4gJXMgbWFudWFsbHk6XG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzo1MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAnJXMnIgogbXNnc3RyICIiCkBAIC0xNTIzMiwzOSArMTgyNDUsMzQgQEAKIG1zZ2lkICJnaXQgcmVwbGFjZSBbLS1mb3JtYXQ9PGZvcm1hdD5dIFstbCBbPHBhdHRlcm4+XV0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTggYnVpbHRpbi9yZXBsYWNlLmM6MjAzIGJ1aWx0aW4vcmVwbGFjZS5jOjIwNgotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjg2CisjOiBidWlsdGluL3JlcGxhY2UuYzo5MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiaW52YWxpZCByZXBsYWNlIGZvcm1hdCAnJXMnXG4iCiAidmFsaWQgZm9ybWF0cyBhcmUgJ3Nob3J0JywgJ21lZGl1bScgYW5kICdsb25nJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoxMjEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjEyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBsYWNlIHJlZiAnJXMnIG5vdCBmb3VuZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoxMzcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWxldGVkIHJlcGxhY2UgcmVmICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTQ5CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZWYgbmFtZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoxNTQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBsYWNlIHJlZiAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE3NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJPYmplY3RzIG11c3QgYmUgb2YgdGhlIHNhbWUgdHlwZS5cbiIKQEAgLTE1MjcyLDE3OCArMTgyODAsMTgzIEBACiAid2hpbGUgJyVzJyBwb2ludHMgdG8gYSByZXBsYWNlbWVudCBvYmplY3Qgb2YgdHlwZSAnJXMnLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyMjUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjIyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGluZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyMzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI0MgogbXNnaWQgImNhdC1maWxlIHJlcG9ydGVkIGZhaWx1cmUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjU0CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHJlYWRpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjY4CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNzIKIG1zZ2lkICJ1bmFibGUgdG8gc3Bhd24gbWt0cmVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3MgorIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjc2CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZnJvbSBta3RyZWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjgxCisjOiBidWlsdGluL3JlcGxhY2UuYzoyODUKIG1zZ2lkICJta3RyZWUgcmVwb3J0ZWQgZmFpbHVyZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyODUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4OQogbXNnaWQgIm1rdHJlZSBkaWQgbm90IHJldHVybiBhbiBvYmplY3QgbmFtZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyOTQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZnN0YXQgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjk5CisjOiBidWlsdGluL3JlcGxhY2UuYzozMDMKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgb2JqZWN0IHRvIGRhdGFiYXNlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMxOCBidWlsdGluL3JlcGxhY2UuYzozNzEgYnVpbHRpbi9yZXBsYWNlLmM6NDE1Ci0jOiBidWlsdGluL3JlcGxhY2UuYzo0NDUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyMiBidWlsdGluL3JlcGxhY2UuYzozNzggYnVpbHRpbi9yZXBsYWNlLmM6NDI0CisjOiBidWlsdGluL3JlcGxhY2UuYzo0NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0IG5hbWU6ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzIyCisjOiBidWlsdGluL3JlcGxhY2UuYzozMjYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdldCBvYmplY3QgdHlwZSBmb3IgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzM4CisjOiBidWlsdGluL3JlcGxhY2UuYzozNDIKIG1zZ2lkICJlZGl0aW5nIG9iamVjdCBmaWxlIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozNDcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgb2JqZWN0IGlzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lOiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQwNworIzogYnVpbHRpbi9yZXBsYWNlLmM6Mzg0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAlcyBhcyBhIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG1lcmdldGFnIGluIGNvbW1pdCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQwOQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBtZXJnZXRhZyBpbiBjb21taXQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MjEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAib3JpZ2luYWwgY29tbWl0ICclcycgY29udGFpbnMgbWVyZ2V0YWcgJyVzJyB0aGF0IGlzIGRpc2NhcmRlZDsgdXNlIC0tZWRpdCAiCiAiaW5zdGVhZCBvZiAtLWdyYWZ0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ2MAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSBvcmlnaW5hbCBjb21taXQgJyVzJyBoYXMgYSBncGcgc2lnbmF0dXJlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ2MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDcwCiBtc2dpZCAidGhlIHNpZ25hdHVyZSB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIHJlcGxhY2VtZW50IGNvbW1pdCEiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDcxCisjOiBidWlsdGluL3JlcGxhY2UuYzo0ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIHJlcGxhY2VtZW50IGNvbW1pdCBmb3I6ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDc5CisjOiBidWlsdGluL3JlcGxhY2UuYzo0ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ3JhZnQgZm9yICclcycgdW5uZWNlc3NhcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDgyCisjOiBidWlsdGluL3JlcGxhY2UuYzo0OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IGNvbW1pdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1MTUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY291bGQgbm90IGNvbnZlcnQgdGhlIGZvbGxvd2luZyBncmFmdChzKTpcbiIKICIlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1MzYKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0OAogbXNnaWQgImxpc3QgcmVwbGFjZSByZWZzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzNworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ5CiBtc2dpZCAiZGVsZXRlIHJlcGxhY2UgcmVmcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1MzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MAogbXNnaWQgImVkaXQgZXhpc3Rpbmcgb2JqZWN0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzOQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUxCiBtc2dpZCAiY2hhbmdlIGEgY29tbWl0J3MgcGFyZW50cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDAKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MgogbXNnaWQgImNvbnZlcnQgZXhpc3RpbmcgZ3JhZnQgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MwogbXNnaWQgInJlcGxhY2UgdGhlIHJlZiBpZiBpdCBleGlzdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQzCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTUKIG1zZ2lkICJkbyBub3QgcHJldHR5LXByaW50IGNvbnRlbnRzIGZvciAtLWVkaXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ0CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTYKIG1zZ2lkICJ1c2UgdGhpcyBmb3JtYXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU3CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NjkKIG1zZ2lkICItLWZvcm1hdCBjYW5ub3QgYmUgdXNlZCB3aGVuIG5vdCBsaXN0aW5nIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU2NQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTc3CiBtc2dpZCAiLWYgb25seSBtYWtlcyBzZW5zZSB3aGVuIHdyaXRpbmcgYSByZXBsYWNlbWVudCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NjkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4MQogbXNnaWQgIi0tcmF3IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLWVkaXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTc1CisjOiBidWlsdGluL3JlcGxhY2UuYzo1ODcKIG1zZ2lkICItZCBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTgxCisjOiBidWlsdGluL3JlcGxhY2UuYzo1OTMKIG1zZ2lkICJiYWQgbnVtYmVyIG9mIGFyZ3VtZW50cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1ODcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5OQogbXNnaWQgIi1lIG5lZWRzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5MworIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA1CiBtc2dpZCAiLWcgbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NjExCiBtc2dpZCAiLS1jb252ZXJ0LWdyYWZ0LWZpbGUgdGFrZXMgbm8gYXJndW1lbnQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA1CisjOiBidWlsdGluL3JlcGxhY2UuYzo2MTcKIG1zZ2lkICJvbmx5IG9uZSBwYXR0ZXJuIGNhbiBiZSBnaXZlbiB3aXRoIC1sIgogbXNnc3RyICIiCiAKQEAgLTE1NDU5LDEyMyArMTg0NzIsMTM0IEBACiBtc2dpZCAiJ2dpdCByZXJlcmUgZm9yZ2V0JyB3aXRob3V0IHBhdGhzIGlzIGRlcHJlY2F0ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXJlcmUuYzoxMTEKKyM6IGJ1aWx0aW4vcmVyZXJlLmM6MTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBnZW5lcmF0ZSBkaWZmIGZvciAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMQorIzogYnVpbHRpbi9yZXNldC5jOjMyCiBtc2dpZCAiIgogImdpdCByZXNldCBbLS1taXhlZCB8IC0tc29mdCB8IC0taGFyZCB8IC0tbWVyZ2UgfCAtLWtlZXBdIFstcV0gWzxjb21taXQ+XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzIKLW1zZ2lkICJnaXQgcmVzZXQgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHM+Li4uIgotbXNnc3RyICIiCi0KICM6IGJ1aWx0aW4vcmVzZXQuYzozMwotbXNnaWQgImdpdCByZXNldCAtLXBhdGNoIFs8dHJlZS1pc2g+XSBbLS1dIFs8cGF0aHM+Li4uXSIKK21zZ2lkICJnaXQgcmVzZXQgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjM0Cittc2dpZCAiIgorImdpdCByZXNldCBbLXFdIFstLXBhdGhzcGVjLWZyb20tZmlsZSBbLS1wYXRoc3BlYy1maWxlLW51bF1dIFs8dHJlZS1pc2g+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzUKK21zZ2lkICJnaXQgcmVzZXQgLS1wYXRjaCBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzcGVjPi4uLl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAibWl4ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJzb2Z0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAiaGFyZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgIm1lcmdlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAia2VlcCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6ODAKKyM6IGJ1aWx0aW4vcmVzZXQuYzo4MgogbXNnaWQgIllvdSBkbyBub3QgaGF2ZSBhIHZhbGlkIEhFQUQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo4MgorIzogYnVpbHRpbi9yZXNldC5jOjg0CiBtc2dpZCAiRmFpbGVkIHRvIGZpbmQgdHJlZSBvZiBIRUFELiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6ODgKKyM6IGJ1aWx0aW4vcmVzZXQuYzo5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MTkyCisjOiBidWlsdGluL3Jlc2V0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgaXMgbm93IGF0ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGRvIGEgJXMgcmVzZXQgaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MjkyCisjOiBidWlsdGluL3Jlc2V0LmM6Mjk0IGJ1aWx0aW4vc3Rhc2guYzo1MjAgYnVpbHRpbi9zdGFzaC5jOjU5NQorIzogYnVpbHRpbi9zdGFzaC5jOjYxOQogbXNnaWQgImJlIHF1aWV0LCBvbmx5IHJlcG9ydCBlcnJvcnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI5NAorIzogYnVpbHRpbi9yZXNldC5jOjI5NgogbXNnaWQgInJlc2V0IEhFQUQgYW5kIGluZGV4IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTUKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTcKIG1zZ2lkICJyZXNldCBvbmx5IEhFQUQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI5NyBidWlsdGluL3Jlc2V0LmM6Mjk5CisjOiBidWlsdGluL3Jlc2V0LmM6Mjk5IGJ1aWx0aW4vcmVzZXQuYzozMDEKIG1zZ2lkICJyZXNldCBIRUFELCBpbmRleCBhbmQgd29ya2luZyB0cmVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMDEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMDMKIG1zZ2lkICJyZXNldCBIRUFEIGJ1dCBrZWVwIGxvY2FsIGNoYW5nZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMwNworIzogYnVpbHRpbi9yZXNldC5jOjMwOQogbXNnaWQgInJlY29yZCBvbmx5IHRoZSBmYWN0IHRoYXQgcmVtb3ZlZCBwYXRocyB3aWxsIGJlIGFkZGVkIGxhdGVyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMjUKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJldmlzaW9uLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzMzCisjOiBidWlsdGluL3Jlc2V0LmM6MzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCB0cmVlLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzQyCisjOiBidWlsdGluL3Jlc2V0LmM6MzYwCiBtc2dpZCAiLS1wYXRjaCBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLXtoYXJkLG1peGVkLHNvZnR9IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNTEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNzAKIG1zZ2lkICItLW1peGVkIHdpdGggcGF0aHMgaXMgZGVwcmVjYXRlZDsgdXNlICdnaXQgcmVzZXQgLS0gPHBhdGhzPicgaW5zdGVhZC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM1MworIzogYnVpbHRpbi9yZXNldC5jOjM3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZG8gJXMgcmVzZXQgd2l0aCBwYXRocy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM2MworIzogYnVpbHRpbi9yZXNldC5jOjM4NwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyByZXNldCBpcyBub3QgYWxsb3dlZCBpbiBhIGJhcmUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzY3CisjOiBidWlsdGluL3Jlc2V0LmM6MzkxCiBtc2dpZCAiLU4gY2FuIG9ubHkgYmUgdXNlZCB3aXRoIC0tbWl4ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM4NworIzogYnVpbHRpbi9yZXNldC5jOjQxMgogbXNnaWQgIlVuc3RhZ2VkIGNoYW5nZXMgYWZ0ZXIgcmVzZXQ6IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOTAKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTU1ODQsNTMgKzE4NjA4LDQ4IEBACiAidG8gbWFrZSB0aGlzIHRoZSBkZWZhdWx0LlxuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo0MDAKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlc2V0IGluZGV4IGZpbGUgdG8gcmV2aXNpb24gJyVzJy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjQwNAorIzogYnVpbHRpbi9yZXNldC5jOjQyOQogbXNnaWQgIkNvdWxkIG5vdCB3cml0ZSBuZXcgaW5kZXggZmlsZS4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQwMworIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQ5OQogbXNnaWQgImNhbm5vdCBjb21iaW5lIC0tZXhjbHVkZS1wcm9taXNvci1vYmplY3RzIGFuZCAtLW1pc3NpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQ2MQorIzogYnVpbHRpbi9yZXYtbGlzdC5jOjU2MAogbXNnaWQgIm9iamVjdCBmaWx0ZXJpbmcgcmVxdWlyZXMgLS1vYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0NjQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBzcGFyc2UgdmFsdWUgJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NTA1CisjOiBidWlsdGluL3Jldi1saXN0LmM6NjEwCiBtc2dpZCAicmV2LWxpc3QgZG9lcyBub3Qgc3VwcG9ydCBkaXNwbGF5IG9mIG5vdGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1MDgKLW1zZ2lkICJjYW5ub3QgY29tYmluZSAtLXVzZS1iaXRtYXAtaW5kZXggd2l0aCBvYmplY3QgZmlsdGVyaW5nIgorIzogYnVpbHRpbi9yZXYtbGlzdC5jOjYxNQorbXNnaWQgIm1hcmtlZCBjb3VudGluZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW9iamVjdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MDcKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDA4CiBtc2dpZCAiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IFs8b3B0aW9ucz5dIC0tIFs8YXJncz4uLi5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDEyCisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxMwogbXNnaWQgImtlZXAgdGhlIGAtLWAgcGFzc2VkIGFzIGFuIGFyZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxNAorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTUKIG1zZ2lkICJzdG9wIHBhcnNpbmcgYWZ0ZXIgdGhlIGZpcnN0IG5vbi1vcHRpb24gYXJndW1lbnQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTcKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE4CiBtc2dpZCAib3V0cHV0IGluIHN0dWNrIGxvbmcgZm9ybSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjU1MAorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo1NTEKIG1zZ2lkICIiCiAiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IFs8b3B0aW9ucz5dIC0tIFs8YXJncz4uLi5dXG4iCiAiICAgb3I6IGdpdCByZXYtcGFyc2UgLS1zcS1xdW90ZSBbPGFyZz4uLi5dXG4iCkBAIC0xNTY1NSw3MiArMTg2NzQsODEgQEAKIG1zZ2lkICJnaXQgY2hlcnJ5LXBpY2sgPHN1YmNvbW1hbmQ+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6OTEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBhIG51bWJlciBncmVhdGVyIHRoYW4gemVybyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JldmVydC5jOjkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAlcyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAwCisjOiBidWlsdGluL3JldmVydC5jOjEwMgogbXNnaWQgImVuZCByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCiBtc2dpZCAicmVzdW1lIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwMgorIzogYnVpbHRpbi9yZXZlcnQuYzoxMDQKIG1zZ2lkICJjYW5jZWwgcmV2ZXJ0IG9yIGNoZXJyeS1waWNrIHNlcXVlbmNlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCi1tc2dpZCAiZG9uJ3QgYXV0b21hdGljYWxseSBjb21taXQiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDQKLW1zZ2lkICJlZGl0IHRoZSBjb21taXQgbWVzc2FnZSIKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA1Cittc2dpZCAic2tpcCBjdXJyZW50IGNvbW1pdCBhbmQgY29udGludWUiCiBtc2dzdHIgIiIKIAogIzogYnVpbHRpbi9yZXZlcnQuYzoxMDcKLW1zZ2lkICJwYXJlbnQtbnVtYmVyIgorbXNnaWQgImRvbid0IGF1dG9tYXRpY2FsbHkgY29tbWl0IgogbXNnc3RyICIiCiAKICM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA4Ci1tc2dpZCAic2VsZWN0IG1haW5saW5lIHBhcmVudCIKK21zZ2lkICJlZGl0IHRoZSBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JldmVydC5jOjExMAotbXNnaWQgIm1lcmdlIHN0cmF0ZWd5IgorIzogYnVpbHRpbi9yZXZlcnQuYzoxMTEKK21zZ2lkICJwYXJlbnQtbnVtYmVyIgogbXNnc3RyICIiCiAKICM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEyCittc2dpZCAic2VsZWN0IG1haW5saW5lIHBhcmVudCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JldmVydC5jOjExNAorbXNnaWQgIm1lcmdlIHN0cmF0ZWd5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE2CiBtc2dpZCAib3B0aW9uIGZvciBtZXJnZSBzdHJhdGVneSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEyMQorIzogYnVpbHRpbi9yZXZlcnQuYzoxMjUKIG1zZ2lkICJhcHBlbmQgY29tbWl0IG5hbWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMjMKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI3CiBtc2dpZCAicHJlc2VydmUgaW5pdGlhbGx5IGVtcHR5IGNvbW1pdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMjUKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI5CiBtc2dpZCAia2VlcCByZWR1bmRhbnQsIGVtcHR5IGNvbW1pdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoyMTkKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjMyCiBtc2dpZCAicmV2ZXJ0IGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JldmVydC5jOjIzMgorIzogYnVpbHRpbi9yZXZlcnQuYzoyNDUKIG1zZ2lkICJjaGVycnktcGljayBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ybS5jOjE4CisjOiBidWlsdGluL3JtLmM6MTkKIG1zZ2lkICJnaXQgcm0gWzxvcHRpb25zPl0gWy0tXSA8ZmlsZT4uLi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ybS5jOjIwNgorIzogYnVpbHRpbi9ybS5jOjIwNwogbXNnaWQgIiIKICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIHN0YWdlZCBjb250ZW50IGRpZmZlcmVudCBmcm9tIGJvdGggdGhlXG4iCiAiZmlsZSBhbmQgdGhlIEhFQUQ6IgpAQCAtMTU3MzAsNjAgKzE4NzU4LDY0IEBACiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBidWlsdGluL3JtLmM6MjExCisjOiBidWlsdGluL3JtLmM6MjEyCiBtc2dpZCAiIgogIlxuIgogIih1c2UgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ybS5jOjIxNQorIzogYnVpbHRpbi9ybS5jOjIxNgogbXNnaWQgInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgY2hhbmdlcyBzdGFnZWQgaW4gdGhlIGluZGV4OiIKIG1zZ2lkX3BsdXJhbCAidGhlIGZvbGxvd2luZyBmaWxlcyBoYXZlIGNoYW5nZXMgc3RhZ2VkIGluIHRoZSBpbmRleDoiCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBidWlsdGluL3JtLmM6MjE5IGJ1aWx0aW4vcm0uYzoyMjgKKyM6IGJ1aWx0aW4vcm0uYzoyMjAgYnVpbHRpbi9ybS5jOjIyOQogbXNnaWQgIiIKICJcbiIKICIodXNlIC0tY2FjaGVkIHRvIGtlZXAgdGhlIGZpbGUsIG9yIC1mIHRvIGZvcmNlIHJlbW92YWwpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMjUKKyM6IGJ1aWx0aW4vcm0uYzoyMjYKIG1zZ2lkICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIGxvY2FsIG1vZGlmaWNhdGlvbnM6IgogbXNnaWRfcGx1cmFsICJ0aGUgZm9sbG93aW5nIGZpbGVzIGhhdmUgbG9jYWwgbW9kaWZpY2F0aW9uczoiCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBidWlsdGluL3JtLmM6MjQxCisjOiBidWlsdGluL3JtLmM6MjQzCiBtc2dpZCAiZG8gbm90IGxpc3QgcmVtb3ZlZCBmaWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JtLmM6MjQyCisjOiBidWlsdGluL3JtLmM6MjQ0CiBtc2dpZCAib25seSByZW1vdmUgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ybS5jOjI0MworIzogYnVpbHRpbi9ybS5jOjI0NQogbXNnaWQgIm92ZXJyaWRlIHRoZSB1cC10by1kYXRlIGNoZWNrIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDQKKyM6IGJ1aWx0aW4vcm0uYzoyNDYKIG1zZ2lkICJhbGxvdyByZWN1cnNpdmUgcmVtb3ZhbCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JtLmM6MjQ2CisjOiBidWlsdGluL3JtLmM6MjQ4CiBtc2dpZCAiZXhpdCB3aXRoIGEgemVybyBzdGF0dXMgZXZlbiBpZiBub3RoaW5nIG1hdGNoZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ybS5jOjI4OAorIzogYnVpbHRpbi9ybS5jOjI4MgorbXNnaWQgIk5vIHBhdGhzcGVjIHdhcyBnaXZlbi4gV2hpY2ggZmlsZXMgc2hvdWxkIEkgcmVtb3ZlPyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JtLmM6MzA1CiBtc2dpZCAicGxlYXNlIHN0YWdlIHlvdXIgY2hhbmdlcyB0byAuZ2l0bW9kdWxlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ybS5jOjMwNgorIzogYnVpbHRpbi9ybS5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgcmVtb3ZpbmcgJyVzJyByZWN1cnNpdmVseSB3aXRob3V0IC1yIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcm0uYzozNDUKKyM6IGJ1aWx0aW4vcm0uYzozNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IHJtOiB1bmFibGUgdG8gcmVtb3ZlICVzIgogbXNnc3RyICIiCkBAIC0xNTgxMiwxOCArMTg4NDQsNiBAQAogbXNnaWQgInByaW50IHN0YXR1cyBmcm9tIHJlbW90ZSBoZWxwZXIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zZXJ2ZS5jOjcKLW1zZ2lkICJnaXQgc2VydmUgWzxvcHRpb25zPl0iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9zZXJ2ZS5jOjE3IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyMwotbXNnaWQgInF1aXQgYWZ0ZXIgYSBzaW5nbGUgcmVxdWVzdC9yZXNwb25zZSBleGNoYW5nZSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3NlcnZlLmM6MTkKLW1zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGFkdmVydGlzaW5nIGNhcGFiaWxpdGllcyIKLW1zZ3N0ciAiIgotCiAjOiBidWlsdGluL3Nob3J0bG9nLmM6MTQKIG1zZ2lkICJnaXQgc2hvcnRsb2cgWzxvcHRpb25zPl0gWzxyZXZpc2lvbi1yYW5nZT5dIFtbLS1dIDxwYXRoPi4uLl0iCiBtc2dzdHIgIiIKQEAgLTE1ODU2LDcgKzE4ODc2LDcgQEAKIG1zZ2lkICJMaW5ld3JhcCBvdXRwdXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI5OQorIzogYnVpbHRpbi9zaG9ydGxvZy5jOjMwMQogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyBnaXZlbiBvdXRzaWRlIHJlcG9zaXRvcnkiCiBtc2dzdHIgIiIKIApAQCAtMTU4NzksMTU5ICsxODg5OSw0NTUgQEAKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo1NDkKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo1NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gbWF0Y2hpbmcgcmVmcyB3aXRoICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDUKIG1zZ2lkICJzaG93IHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0OAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NwogbXNnaWQgInNob3cgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTAKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDkKIG1zZ2lkICJjb2xvciAnKiErLScgY29ycmVzcG9uZGluZyB0byB0aGUgYnJhbmNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTEKIG1zZ2lkICJzaG93IDxuPiBtb3JlIGNvbW1pdHMgYWZ0ZXIgdGhlIGNvbW1vbiBhbmNlc3RvciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU0CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUzCiBtc2dpZCAic3lub255bSB0byBtb3JlPS0xIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKIG1zZ2lkICJzdXBwcmVzcyBuYW1pbmcgc3RyaW5ncyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU3CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU2CiBtc2dpZCAiaW5jbHVkZSB0aGUgY3VycmVudCBicmFuY2giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1OQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1OAogbXNnaWQgIm5hbWUgY29tbWl0cyB3aXRoIHRoZWlyIG9iamVjdCBuYW1lcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYxCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYwCiBtc2dpZCAic2hvdyBwb3NzaWJsZSBtZXJnZSBiYXNlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYzCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYyCiBtc2dpZCAic2hvdyByZWZzIHVucmVhY2hhYmxlIGZyb20gYW55IG90aGVyIHJlZiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY1CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY0CiBtc2dpZCAic2hvdyBjb21taXRzIGluIHRvcG9sb2dpY2FsIG9yZGVyIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjgKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjcKIG1zZ2lkICJzaG93IG9ubHkgY29tbWl0cyBub3Qgb24gdGhlIGZpcnN0IGJyYW5jaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjcwCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY5CiBtc2dpZCAic2hvdyBtZXJnZXMgcmVhY2hhYmxlIGZyb20gb25seSBvbmUgdGlwIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzEKIG1zZ2lkICJ0b3BvbG9naWNhbGx5IHNvcnQsIG1haW50YWluaW5nIGRhdGUgb3JkZXIgd2hlcmUgcG9zc2libGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NAogbXNnaWQgIjxuPlssPGJhc2U+XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6Njc2CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6Njc1CiBtc2dpZCAic2hvdyA8bj4gbW9zdCByZWNlbnQgcmVmLWxvZyBlbnRyaWVzIHN0YXJ0aW5nIGF0IGJhc2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjcxMgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjcxMQogbXNnaWQgIiIKICItLXJlZmxvZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1yZW1vdGVzLCAtLWluZGVwZW5kZW50IG9yIC0tbWVyZ2UtYmFzZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM2CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM1CiBtc2dpZCAibm8gYnJhbmNoZXMgZ2l2ZW4sIGFuZCBIRUFEIGlzIG5vdCB2YWxpZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM5CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM4CiBtc2dpZCAiLS1yZWZsb2cgb3B0aW9uIG5lZWRzIG9uZSBicmFuY2ggbmFtZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQyCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9ubHkgJWQgZW50cnkgY2FuIGJlIHNob3duIGF0IG9uZSB0aW1lLiIKIG1zZ2lkX3BsdXJhbCAib25seSAlZCBlbnRyaWVzIGNhbiBiZSBzaG93biBhdCBvbmUgdGltZS4iCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQ2CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggcmVmICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzAKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmV2LiIKIG1zZ2lkX3BsdXJhbCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmV2cy4iCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM0CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVmLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM3CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBmaW5kIGNvbW1pdCAlcyAoJXMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxMQorIzogYnVpbHRpbi9zaG93LXJlZi5jOjEyCiBtc2dpZCAiIgogImdpdCBzaG93LXJlZiBbLXEgfCAtLXF1aWV0XSBbLS12ZXJpZnldIFstLWhlYWRdIFstZCB8IC0tZGVyZWZlcmVuY2VdIFstcyB8IC0tIgogImhhc2hbPTxuPl1dIFstLWFiYnJldls9PG4+XV0gWy0tdGFnc10gWy0taGVhZHNdIFstLV0gWzxwYXR0ZXJuPi4uLl0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjEyCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTMKIG1zZ2lkICJnaXQgc2hvdy1yZWYgLS1leGNsdWRlLWV4aXN0aW5nWz08cGF0dGVybj5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjEKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjIKIG1zZ2lkICJvbmx5IHNob3cgdGFncyAoY2FuIGJlIGNvbWJpbmVkIHdpdGggaGVhZHMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjIKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjMKIG1zZ2lkICJvbmx5IHNob3cgaGVhZHMgKGNhbiBiZSBjb21iaW5lZCB3aXRoIHRhZ3MpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjMKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjQKIG1zZ2lkICJzdHJpY3RlciByZWZlcmVuY2UgY2hlY2tpbmcsIHJlcXVpcmVzIGV4YWN0IHJlZiBwYXRoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjYgYnVpbHRpbi9zaG93LXJlZi5jOjE2OAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2NyBidWlsdGluL3Nob3ctcmVmLmM6MTY5CiBtc2dpZCAic2hvdyB0aGUgSEVBRCByZWZlcmVuY2UsIGV2ZW4gaWYgaXQgd291bGQgYmUgZmlsdGVyZWQgb3V0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzAKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzEKIG1zZ2lkICJkZXJlZmVyZW5jZSB0YWdzIGludG8gb2JqZWN0IElEcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTcyCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTczCiBtc2dpZCAib25seSBzaG93IFNIQTEgaGFzaCB1c2luZyA8bj4gZGlnaXRzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzYKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzcKIG1zZ2lkICJkbyBub3QgcHJpbnQgcmVzdWx0cyB0byBzdGRvdXQgKHVzZWZ1bCB3aXRoIC0tdmVyaWZ5KSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTc4CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc5CiBtc2dpZCAic2hvdyByZWZzIGZyb20gc3RkaW4gdGhhdCBhcmVuJ3QgaW4gbG9jYWwgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjIxCittc2dpZCAiZ2l0IHNwYXJzZS1jaGVja291dCAoaW5pdHxsaXN0fHNldHxhZGR8ZGlzYWJsZSkgPG9wdGlvbnM+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NjQKK21zZ2lkICJ0aGlzIHdvcmt0cmVlIGlzIG5vdCBzcGFyc2UgKHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBub3QgZXhpc3QpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjI1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgZm9yIHNwYXJzZS1jaGVja291dCBmaWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHNldCBleHRlbnNpb25zLndvcmt0cmVlQ29uZmlnIHNldHRpbmciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyODMKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IGluaXQgWy0tY29uZV0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzozMDIKK21zZ2lkICJpbml0aWFsaXplIHRoZSBzcGFyc2UtY2hlY2tvdXQgaW4gY29uZSBtb2RlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MzA4Cittc2dpZCAiaW5pdGlhbGl6ZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjM5OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgbm9ybWFsaXplIHBhdGggJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo0MTAKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IChzZXR8YWRkKSAoLS1zdGRpbiB8IDxwYXR0ZXJucz4pIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bnF1b3RlIEMtc3R5bGUgc3RyaW5nICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo0ODkgYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1MTMKK21zZ2lkICJ1bmFibGUgdG8gbG9hZCBleGlzdGluZyBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1NTgKK21zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gc3RhbmRhcmQgaW4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1NjQKK21zZ2lkICJzZXQgc3BhcnNlLWNoZWNrb3V0IHBhdHRlcm5zIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTgxCittc2dpZCAiZGlzYWJsZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1OTMKK21zZ2lkICJlcnJvciB3aGlsZSByZWZyZXNoaW5nIHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMiBidWlsdGluL3N0YXNoLmM6MzgKK21zZ2lkICJnaXQgc3Rhc2ggbGlzdCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjMgYnVpbHRpbi9zdGFzaC5jOjQzCittc2dpZCAiZ2l0IHN0YXNoIHNob3cgWzxvcHRpb25zPl0gWzxzdGFzaD5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNCBidWlsdGluL3N0YXNoLmM6NDgKK21zZ2lkICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNQorbXNnaWQgImdpdCBzdGFzaCAoIHBvcCB8IGFwcGx5ICkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI2IGJ1aWx0aW4vc3Rhc2guYzo2MworbXNnaWQgImdpdCBzdGFzaCBicmFuY2ggPGJyYW5jaG5hbWU+IFs8c3Rhc2g+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjcgYnVpbHRpbi9zdGFzaC5jOjY4Cittc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyOAorbXNnaWQgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XVxuIgorIiAgICAgICAgICBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzozMiBidWlsdGluL3N0YXNoLmM6ODUKK21zZ2lkICIiCisiZ2l0IHN0YXNoIHNhdmUgWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8bWVzc2FnZT5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1MworbXNnaWQgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU4Cittc2dpZCAiZ2l0IHN0YXNoIGFwcGx5IFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo3MworbXNnaWQgImdpdCBzdGFzaCBzdG9yZSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl0gWy1xfC0tcXVpZXRdIDxjb21taXQ+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo3OAorbXNnaWQgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XVxuIgorIiAgICAgICAgICBbLS1dIFs8cGF0aHNwZWM+Li4uXV0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHN0YXNoLWxpa2UgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDolcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTYyIGdpdC1sZWdhY3ktc3Rhc2guc2g6NTQ5Cittc2dpZCAiTm8gc3Rhc2ggZW50cmllcyBmb3VuZC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCByZWZlcmVuY2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjIyNSBnaXQtbGVnYWN5LXN0YXNoLnNoOjc1Cittc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIHdpdGggcGFyYW1ldGVycyBpcyB1bmltcGxlbWVudGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MDQKK21zZ2lkICJjYW5ub3QgYXBwbHkgYSBzdGFzaCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZ2VuZXJhdGUgZGlmZiAlc14hLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDIyCittc2dpZCAiY29uZmxpY3RzIGluIGluZGV4LlRyeSB3aXRob3V0IC0taW5kZXguIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MjgKK21zZ2lkICJjb3VsZCBub3Qgc2F2ZSBpbmRleCB0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MzcKK21zZ2lkICJjb3VsZCBub3QgcmVzdG9yZSB1bnRyYWNrZWQgZmlsZXMgZnJvbSBzdGFzaCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIk1lcmdpbmcgJXMgd2l0aCAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDYxIGdpdC1sZWdhY3ktc3Rhc2guc2g6NjgxCittc2dpZCAiSW5kZXggd2FzIG5vdCB1bnN0YXNoZWQuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1MjIgYnVpbHRpbi9zdGFzaC5jOjYyMQorbXNnaWQgImF0dGVtcHQgdG8gcmVjcmVhdGUgdGhlIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRHJvcHBlZCAlcyAoJXMpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IENvdWxkIG5vdCBkcm9wIHN0YXNoIGVudHJ5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBzdGFzaCByZWZlcmVuY2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjYzMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjY5NQorbXNnaWQgIlRoZSBzdGFzaCBlbnRyeSBpcyBrZXB0IGluIGNhc2UgeW91IG5lZWQgaXQgYWdhaW4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2NTYgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MTMKK21zZ2lkICJObyBicmFuY2ggbmFtZSBzcGVjaWZpZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjc5NiBidWlsdGluL3N0YXNoLmM6ODMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCB1cGRhdGUgJXMgd2l0aCAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6ODE0IGJ1aWx0aW4vc3Rhc2guYzoxNDc4IGJ1aWx0aW4vc3Rhc2guYzoxNTQzCittc2dpZCAic3Rhc2ggbWVzc2FnZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6ODI0Cittc2dpZCAiXCJnaXQgc3Rhc2ggc3RvcmVcIiByZXF1aXJlcyBvbmUgPGNvbW1pdD4gYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEwNDkgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMTgKK21zZ2lkICJObyBjaGFuZ2VzIHNlbGVjdGVkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTQ5IGdpdC1sZWdhY3ktc3Rhc2guc2g6MTUwCittc2dpZCAiWW91IGRvIG5vdCBoYXZlIHRoZSBpbml0aWFsIGNvbW1pdCB5ZXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExNzYgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxNjUKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBpbmRleCBzdGF0ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE4NSBnaXQtbGVnYWN5LXN0YXNoLnNoOjE4MAorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSB1bnRyYWNrZWQgZmlsZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExOTYgYnVpbHRpbi9zdGFzaC5jOjEyMDUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMDEKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjE0Cittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgd29ya3RyZWUgc3RhdGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyMzMgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMzQKK21zZ2lkICJDYW5ub3QgcmVjb3JkIHdvcmtpbmcgdHJlZSBzdGF0ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI4MiBnaXQtbGVnYWN5LXN0YXNoLnNoOjMzOAorbXNnaWQgIkNhbid0IHVzZSAtLXBhdGNoIGFuZCAtLWluY2x1ZGUtdW50cmFja2VkIG9yIC0tYWxsIGF0IHRoZSBzYW1lIHRpbWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyOTgKK21zZ2lkICJEaWQgeW91IGZvcmdldCB0byAnZ2l0IGFkZCc/IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzEzIGdpdC1sZWdhY3ktc3Rhc2guc2g6MzQ2Cittc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzIwIGdpdC1sZWdhY3ktc3Rhc2guc2g6MzUxCittc2dpZCAiQ2Fubm90IGluaXRpYWxpemUgc3Rhc2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMzUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTUKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBzdGF0dXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2F2ZWQgd29ya2luZyBkaXJlY3RvcnkgYW5kIGluZGV4IHN0YXRlICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDMwIGdpdC1sZWdhY3ktc3Rhc2guc2g6Mzg1Cittc2dpZCAiQ2Fubm90IHJlbW92ZSB3b3JrdHJlZSBjaGFuZ2VzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDY5IGJ1aWx0aW4vc3Rhc2guYzoxNTM0Cittc2dpZCAia2VlcCBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3MSBidWlsdGluL3N0YXNoLmM6MTUzNgorbXNnaWQgInN0YXNoIGluIHBhdGNoIG1vZGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NzIgYnVpbHRpbi9zdGFzaC5jOjE1MzcKK21zZ2lkICJxdWlldCBtb2RlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDc0IGJ1aWx0aW4vc3Rhc2guYzoxNTM5Cittc2dpZCAiaW5jbHVkZSB1bnRyYWNrZWQgZmlsZXMgaW4gc3Rhc2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NzYgYnVpbHRpbi9zdGFzaC5jOjE1NDEKK21zZ2lkICJpbmNsdWRlIGlnbm9yZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTYwMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZXhlYyAlcyIKK21zZ3N0ciAiIgorCiAjOiBidWlsdGluL3N0cmlwc3BhY2UuYzoxOAogbXNnaWQgImdpdCBzdHJpcHNwYWNlIFstcyB8IC0tc3RyaXAtY29tbWVudHNdIgogbXNnc3RyICIiCkBAIC0xNjA0MCw1NSArMTkzNTYsNTUgQEAKIG1zZ2lkICJnaXQgc3RyaXBzcGFjZSBbLWMgfCAtLWNvbW1lbnQtbGluZXNdIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM2CisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzozNwogbXNnaWQgInNraXAgYW5kIHJlbW92ZSBhbGwgbGluZXMgc3RhcnRpbmcgd2l0aCBjb21tZW50IGNoYXJhY3RlciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N0cmlwc3BhY2UuYzozOQorIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6NDAKIG1zZ2lkICJwcmVwZW5kIGNvbW1lbnQgY2hhcmFjdGVyIGFuZCBzcGFjZSB0byBlYWNoIGxpbmUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTM5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXhwZWN0aW5nIGEgZnVsbCByZWYgbmFtZSwgZ290ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY0CiBtc2dpZCAic3VibW9kdWxlLS1oZWxwZXIgcHJpbnQtZGVmYXVsdC1yZW1vdGUgdGFrZXMgbm8gYXJndW1lbnRzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RyaXAgb25lIGNvbXBvbmVudCBvZmYgdXJsICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwNyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxMCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NQogbXNnaWQgImFsdGVybmF0aXZlIGFuY2hvciBmb3IgcmVsYXRpdmUgcGF0aHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxMgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxNQogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBsaXN0IFstLXByZWZpeD08cGF0aD5dIFs8cGF0aD4uLi5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NjkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYyNgotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY0OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ3MiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjMwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHVybCBmb3VuZCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyBpbiAuZ2l0bW9kdWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTIxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkVudGVyaW5nICclcydcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTI0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJydW5fY29tbWFuZCByZXR1cm5lZCBub24temVybyBzdGF0dXMgZm9yICVzXG4iCiAiLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTQ1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJydW5fY29tbWFuZCByZXR1cm5lZCBub24temVybyBzdGF0dXMgd2hpbGUgcmVjdXJzaW5nIGluIHRoZSBuZXN0ZWQgIgpAQCAtMTYwOTYsMzM4ICsxOTQxMiwzNjkgQEAKICIuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjUKIG1zZ2lkICJTdXBwcmVzcyBvdXRwdXQgb2YgZW50ZXJpbmcgZWFjaCBzdWJtb2R1bGUgY29tbWFuZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTYzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDQ4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDYzCiBtc2dpZCAiUmVjdXJzZSBpbnRvIG5lc3RlZCBzdWJtb2R1bGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjgKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSA8Y29tbWFuZD4iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTcyCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGZvcmVhY2ggWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWy0tXSA8Y29tbWFuZD4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU5NQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY291bGQgbm90IGxvb2sgdXAgY29uZmlndXJhdGlvbiAnJXMnLiBBc3N1bWluZyB0aGlzIHJlcG9zaXRvcnkgaXMgaXRzIG93biAiCiAiYXV0aG9yaXRhdGl2ZSB1cHN0cmVhbS4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVnaXN0ZXIgdXJsIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NjcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlICclcycgKCVzKSByZWdpc3RlcmVkIGZvciBwYXRoICclcydcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njc3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGNvbW1hbmQgdXBkYXRlIG1vZGUgc3VnZ2VzdGVkIGZvciBzdWJtb2R1bGUgJyVzJ1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2ODQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHVwZGF0ZSBtb2RlIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MDYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MTAKIG1zZ2lkICJTdXBwcmVzcyBvdXRwdXQgZm9yIGluaXRpYWxpemluZyBhIHN1Ym1vZHVsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzExCi1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxwYXRoPl0iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzE1Cittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxvcHRpb25zPl0gWzxwYXRoPl0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjc4MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Nzg5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VibW9kdWxlIG1hcHBpbmcgZm91bmQgaW4gLmdpdG1vZHVsZXMgZm9yIHBhdGggJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODIyCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlIEhFQUQgcmVmIGluc2lkZSB0aGUgc3VibW9kdWxlICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg0OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAxOAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg2NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExOTkKIG1zZ2lkICJTdXBwcmVzcyBzdWJtb2R1bGUgc3RhdHVzIG91dHB1dCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODc0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODg5CiBtc2dpZCAiIgogIlVzZSBjb21taXQgc3RvcmVkIGluIHRoZSBpbmRleCBpbnN0ZWFkIG9mIHRoZSBvbmUgc3RvcmVkIGluIHRoZSBzdWJtb2R1bGUgIgogIkhFQUQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg3NQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg5MAogbXNnaWQgInJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODgwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODk1CiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZSBzdGF0dXMgWy0tcXVpZXRdIFstLWNhY2hlZF0gWy0tcmVjdXJzaXZlXSBbPHBhdGg+Li4uXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTA0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTE5CiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIG5hbWUgPHBhdGg+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5NjgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIGZvciAnJXMnXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk3NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVnaXN0ZXIgdXJsIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5ODgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBnZXQgdGhlIGRlZmF1bHQgcmVtb3RlIGZvciBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTk5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gdXBkYXRlIHJlbW90ZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNDYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDYxCiBtc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IG9mIHN5bmNocm9uaXppbmcgc3VibW9kdWxlIHVybCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA1MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNjgKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgc3luYyBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbPHBhdGg+XSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEwNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJyBjb250YWlucyBhIC5naXQgZGlyZWN0b3J5ICh1c2UgJ3JtIC1yZicgaWYgeW91ICIKICJyZWFsbHkgd2FudCB0byByZW1vdmUgaXQgaW5jbHVkaW5nIGFsbCBvZiBpdHMgaGlzdG9yeSkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgd29yayB0cmVlICclcycgY29udGFpbnMgbG9jYWwgbW9kaWZpY2F0aW9uczsgdXNlICctZicgdG8gZGlzY2FyZCAiCiAidGhlbSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2xlYXJlZCBkaXJlY3RvcnkgJyVzJ1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTI5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIHN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJ1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTM4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGVtcHR5IHN1Ym1vZHVsZSBkaXJlY3RvcnkgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNTQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSAnJXMnICglcykgdW5yZWdpc3RlcmVkIGZvciBwYXRoICclcydcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDAKIG1zZ2lkICJSZW1vdmUgc3VibW9kdWxlIHdvcmtpbmcgdHJlZXMgZXZlbiBpZiB0aGV5IGNvbnRhaW4gbG9jYWwgY2hhbmdlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDEKIG1zZ2lkICJVbnJlZ2lzdGVyIGFsbCBzdWJtb2R1bGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTg5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIwNgogbXNnaWQgIiIKICJnaXQgc3VibW9kdWxlIGRlaW5pdCBbLS1xdWlldF0gWy1mIHwgLS1mb3JjZV0gWy0tYWxsIHwgWy0tXSBbPHBhdGg+Li4uXV0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjIwCiBtc2dpZCAiVXNlICctLWFsbCcgaWYgeW91IHJlYWxseSB3YW50IHRvIGRlaW5pdGlhbGl6ZSBhbGwgc3VibW9kdWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTI5NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMwMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyODkKK21zZ2lkICIiCisiQW4gYWx0ZXJuYXRlIGNvbXB1dGVkIGZyb20gYSBzdXBlcnByb2plY3QncyBhbHRlcm5hdGUgaXMgaW52YWxpZC5cbiIKKyJUbyBhbGxvdyBHaXQgdG8gY2xvbmUgd2l0aG91dCBhbiBhbHRlcm5hdGUgaW4gc3VjaCBhIGNhc2UsIHNldFxuIgorInN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IHRvICdpbmZvJyBvciwgZXF1aXZhbGVudGx5LCBjbG9uZSB3aXRoXG4iCisiJy0tcmVmZXJlbmNlLWlmLWFibGUnIGluc3RlYWQgb2YgJy0tcmVmZXJlbmNlJy4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzMjggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAic3VibW9kdWxlICclcycgY2Fubm90IGFkZCBhbHRlcm5hdGU6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzM2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJWYWx1ZSAnJXMnIGZvciBzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSBpcyBub3QgcmVjb2duaXplZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM0MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiVmFsdWUgJyVzJyBmb3Igc3VibW9kdWxlLmFsdGVybmF0ZUxvY2F0aW9uIGlzIG5vdCByZWNvZ25pemVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5OAogbXNnaWQgIndoZXJlIHRoZSBuZXcgc3VibW9kdWxlIHdpbGwgYmUgY2xvbmVkIHRvIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMQogbXNnaWQgIm5hbWUgb2YgdGhlIG5ldyBzdWJtb2R1bGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA0CiBtc2dpZCAidXJsIHdoZXJlIHRvIGNsb25lIHRoZSBzdWJtb2R1bGUgZnJvbSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTIKIG1zZ2lkICJkZXB0aCBmb3Igc2hhbGxvdyBjbG9uZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzODMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE1IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI0CiBtc2dpZCAiZm9yY2UgY2xvbmluZyBwcm9ncmVzcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4OAotbXNnaWQgIiIKLSJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY2xvbmUgWy0tcHJlZml4PTxwYXRoPl0gWy0tcXVpZXRdIFstLXJlZmVyZW5jZSAiCi0iPHJlcG9zaXRvcnk+XSBbLS1uYW1lIDxuYW1lPl0gWy0tZGVwdGggPGRlcHRoPl0gLS11cmwgPHVybD4gLS1wYXRoIDxwYXRoPiIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI2Cittc2dpZCAiZGlzYWxsb3cgY2xvbmluZyBpbnRvIG5vbi1lbXB0eSBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDI0Cittc2dpZCAiIgorImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbLS1xdWlldF0gWy0tcmVmZXJlbmNlICIKKyI8cmVwb3NpdG9yeT5dIFstLW5hbWUgPG5hbWU+XSBbLS1kZXB0aCA8ZGVwdGg+XSBbLS1zaW5nbGUtYnJhbmNoXSAtLXVybCAiCisiPHVybD4gLS1wYXRoIDxwYXRoPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ0OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBjcmVhdGUvdXNlICclcycgaW4gYW5vdGhlciBzdWJtb2R1bGUncyBnaXQgZGlyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNsb25lIG9mICclcycgaW50byBzdWJtb2R1bGUgcGF0aCAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQzMworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlyZWN0b3J5IG5vdCBlbXB0eTogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0IHN1Ym1vZHVsZSBkaXJlY3RvcnkgZm9yICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ3MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB1cGRhdGUgbW9kZSAnJXMnIGNvbmZpZ3VyZWQgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1NjYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICclcycgbm90IGluaXRpYWxpemVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTcwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYyMQogbXNnaWQgIk1heWJlIHlvdSB3YW50IHRvIHVzZSAndXBkYXRlIC0taW5pdCc/IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjAwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTY1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyB1bm1lcmdlZCBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwaW5nIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzczCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTgzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJy4gUmV0cnkgc2NoZWR1bGVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzg0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJyBhIHNlY29uZCB0aW1lLCBhYm9ydGluZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA4OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNDkKIG1zZ2lkICJwYXRoIGludG8gdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDYKIG1zZ2lkICJwYXRoIGludG8gdGhlIHdvcmtpbmcgdHJlZSwgYWNyb3NzIG5lc3RlZCBzdWJtb2R1bGUgYm91bmRhcmllcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTAKIG1zZ2lkICJyZWJhc2UsIG1lcmdlLCBjaGVja291dCBvciBub25lIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODYwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxNgogbXNnaWQgIkNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgdHJ1bmNhdGVkIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHJldmlzaW9ucyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTkKIG1zZ2lkICJwYXJhbGxlbCBqb2JzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyMQogbXNnaWQgIndoZXRoZXIgdGhlIGluaXRpYWwgY2xvbmUgc2hvdWxkIGZvbGxvdyB0aGUgc2hhbGxvdyByZWNvbW1lbmRhdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjIKIG1zZ2lkICJkb24ndCBwcmludCBjbG9uaW5nIHByb2dyZXNzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODczCi1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZV9jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTMzCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg4NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5NDYKIG1zZ2lkICJiYWQgdmFsdWUgZm9yIHVwZGF0ZSBwYXJhbWV0ZXIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MzQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgKCVzKSBicmFuY2ggY29uZmlndXJlZCB0byBpbmhlcml0IGJyYW5jaCBmcm9tIHN1cGVycHJvamVjdCwgYnV0ICIKICJ0aGUgc3VwZXJwcm9qZWN0IGlzIG5vdCBvbiBhbnkgYnJhbmNoIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDU3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjExNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0IGEgcmVwb3NpdG9yeSBoYW5kbGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDkwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1MAogbXNnaWQgInJlY3Vyc2UgaW50byBzdWJtb2R1bGVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDk2Ci1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGVtYmVkLWdpdC1kaXIgWzxwYXRoPi4uLl0iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1NgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzxvcHRpb25zPl0gWzxwYXRoPi4uLl0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjEyCiBtc2dpZCAiY2hlY2sgaWYgaXQgaXMgc2FmZSB0byB3cml0ZSB0byB0aGUgLmdpdG1vZHVsZXMgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1NwotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgbmFtZSBbdmFsdWVdIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMTUKK21zZ2lkICJ1bnNldCB0aGUgY29uZmlnIGluIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTU4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyMAorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgPG5hbWU+IFs8dmFsdWU+XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyMQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS11bnNldCA8bmFtZT4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjIKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tY2hlY2std3JpdGVhYmxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTc1IGdpdC1zdWJtb2R1bGUuc2g6MTY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI0MSBnaXQtc3VibW9kdWxlLnNoOjE3NAogIywgc2gtZm9ybWF0CiBtc2dpZCAicGxlYXNlIG1ha2Ugc3VyZSB0aGF0IHRoZSAuZ2l0bW9kdWxlcyBmaWxlIGlzIGluIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjkxIGdpdC5jOjQzMyBnaXQuYzo2ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lc24ndCBzdXBwb3J0IC0tc3VwZXItcHJlZml4IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjMxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI5NwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHN1Ym1vZHVsZS0taGVscGVyIHN1YmNvbW1hbmQiCiBtc2dzdHIgIiIKQEAgLTE2NDYyLDM2ICsxOTgwOSwzNiBAQAogCiAjOiBidWlsdGluL3RhZy5jOjI1CiBtc2dpZCAiIgotImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8a2V5LWlkPl0gWy1mXSBbLW0gPG1zZz4gfCAtRiA8ZmlsZT5dIDx0YWduYW1lPiAiCi0iWzxoZWFkPl0iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi90YWcuYzoyNgotbXNnaWQgImdpdCB0YWcgLWQgPHRhZ25hbWU+Li4uIgorImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8a2V5LWlkPl0gWy1mXSBbLW0gPG1zZz4gfCAtRiA8ZmlsZT5dXG4iCisiXHRcdDx0YWduYW1lPiBbPGhlYWQ+XSIKIG1zZ3N0ciAiIgogCiAjOiBidWlsdGluL3RhZy5jOjI3Cittc2dpZCAiZ2l0IHRhZyAtZCA8dGFnbmFtZT4uLi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi90YWcuYzoyOAogbXNnaWQgIiIKICJnaXQgdGFnIC1sIFstbls8bnVtPl1dIFstLWNvbnRhaW5zIDxjb21taXQ+XSBbLS1uby1jb250YWlucyA8Y29tbWl0Pl0gWy0tIgogInBvaW50cy1hdCA8b2JqZWN0Pl1cbiIKICJcdFx0Wy0tZm9ybWF0PTxmb3JtYXQ+XSBbLS1bbm8tXW1lcmdlZCBbPGNvbW1pdD5dXSBbPHBhdHRlcm4+Li4uXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjI5CisjOiBidWlsdGluL3RhZy5jOjMwCiBtc2dpZCAiZ2l0IHRhZyAtdiBbLS1mb3JtYXQ9PGZvcm1hdD5dIDx0YWduYW1lPi4uLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjg3CisjOiBidWlsdGluL3RhZy5jOjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIG5vdCBmb3VuZC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi90YWcuYzoxMDMKKyM6IGJ1aWx0aW4vdGFnLmM6MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgdGFnICclcycgKHdhcyAlcylcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjEzMworIzogYnVpbHRpbi90YWcuYzoxMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTY1MDAsNyArMTk4NDcsNyBAQAogIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQuXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi90YWcuYzoxMzcKKyM6IGJ1aWx0aW4vdGFnLmM6MTM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTE2NTEwLDM5MCArMTk4NTcsNDAzIEBACiAid2FudCB0by5cbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjE5MQorIzogYnVpbHRpbi90YWcuYzoxOTgKIG1zZ2lkICJ1bmFibGUgdG8gc2lnbiB0aGUgdGFnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTkzCisjOiBidWlsdGluL3RhZy5jOjIwMAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0YWcgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjIxOAorIzogYnVpbHRpbi90YWcuYzoyMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBoYXZlIGNyZWF0ZWQgYSBuZXN0ZWQgdGFnLiBUaGUgb2JqZWN0IHJlZmVycmVkIHRvIGJ5IHlvdXIgbmV3IHRhZyBpc1xuIgorImFscmVhZHkgYSB0YWcuIElmIHlvdSBtZWFudCB0byB0YWcgdGhlIG9iamVjdCB0aGF0IGl0IHBvaW50cyB0bywgdXNlOlxuIgorIlxuIgorIlx0Z2l0IHRhZyAtZiAlcyAlc157fSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3RhZy5jOjIzMgogbXNnaWQgImJhZCBvYmplY3QgdHlwZS4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi90YWcuYzoyNjcKKyM6IGJ1aWx0aW4vdGFnLmM6Mjg0CiBtc2dpZCAibm8gdGFnIG1lc3NhZ2U/IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mjc0CisjOiBidWlsdGluL3RhZy5jOjI5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgdGFnIG1lc3NhZ2UgaGFzIGJlZW4gbGVmdCBpbiAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzg1CisjOiBidWlsdGluL3RhZy5jOjQwMgogbXNnaWQgImxpc3QgdGFnIG5hbWVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzg3CisjOiBidWlsdGluL3RhZy5jOjQwNAogbXNnaWQgInByaW50IDxuPiBsaW5lcyBvZiBlYWNoIHRhZyBtZXNzYWdlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzg5CisjOiBidWlsdGluL3RhZy5jOjQwNgogbXNnaWQgImRlbGV0ZSB0YWdzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MzkwCisjOiBidWlsdGluL3RhZy5jOjQwNwogbXNnaWQgInZlcmlmeSB0YWdzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MzkyCisjOiBidWlsdGluL3RhZy5jOjQwOQogbXNnaWQgIlRhZyBjcmVhdGlvbiBvcHRpb25zIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzk0CisjOiBidWlsdGluL3RhZy5jOjQxMQogbXNnaWQgImFubm90YXRlZCB0YWcsIG5lZWRzIGEgbWVzc2FnZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjM5NgorIzogYnVpbHRpbi90YWcuYzo0MTMKIG1zZ2lkICJ0YWcgbWVzc2FnZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjM5OAorIzogYnVpbHRpbi90YWcuYzo0MTUKIG1zZ2lkICJmb3JjZSBlZGl0IG9mIHRhZyBtZXNzYWdlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzk5CisjOiBidWlsdGluL3RhZy5jOjQxNgogbXNnaWQgImFubm90YXRlZCBhbmQgR1BHLXNpZ25lZCB0YWciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi90YWcuYzo0MDMKKyM6IGJ1aWx0aW4vdGFnLmM6NDE5CiBtc2dpZCAidXNlIGFub3RoZXIga2V5IHRvIHNpZ24gdGhlIHRhZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjQwNAorIzogYnVpbHRpbi90YWcuYzo0MjAKIG1zZ2lkICJyZXBsYWNlIHRoZSB0YWcgaWYgZXhpc3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA1IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2OQorIzogYnVpbHRpbi90YWcuYzo0MjEgYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY5CiBtc2dpZCAiY3JlYXRlIGEgcmVmbG9nIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA3CisjOiBidWlsdGluL3RhZy5jOjQyMwogbXNnaWQgIlRhZyBsaXN0aW5nIG9wdGlvbnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi90YWcuYzo0MDgKKyM6IGJ1aWx0aW4vdGFnLmM6NDI0CiBtc2dpZCAic2hvdyB0YWcgbGlzdCBpbiBjb2x1bW5zIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA5IGJ1aWx0aW4vdGFnLmM6NDExCisjOiBidWlsdGluL3RhZy5jOjQyNSBidWlsdGluL3RhZy5jOjQyNwogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjQxMCBidWlsdGluL3RhZy5jOjQxMgorIzogYnVpbHRpbi90YWcuYzo0MjYgYnVpbHRpbi90YWcuYzo0MjgKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi90YWcuYzo0MTMKKyM6IGJ1aWx0aW4vdGFnLmM6NDI5CiBtc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjQxNAorIzogYnVpbHRpbi90YWcuYzo0MzAKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBhcmUgbm90IG1lcmdlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjQxOQorIzogYnVpbHRpbi90YWcuYzo0MzQKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3Mgb2YgdGhlIG9iamVjdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjQ2MworIzogYnVpbHRpbi90YWcuYzo0ODIKIG1zZ2lkICItLWNvbHVtbiBhbmQgLW4gYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjQ4NQorIzogYnVpbHRpbi90YWcuYzo1MDQKIG1zZ2lkICItbiBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjQ4NworIzogYnVpbHRpbi90YWcuYzo1MDYKIG1zZ2lkICItLWNvbnRhaW5zIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDg5CisjOiBidWlsdGluL3RhZy5jOjUwOAogbXNnaWQgIi0tbm8tY29udGFpbnMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi90YWcuYzo0OTEKKyM6IGJ1aWx0aW4vdGFnLmM6NTEwCiBtc2dpZCAiLS1wb2ludHMtYXQgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi90YWcuYzo0OTMKKyM6IGJ1aWx0aW4vdGFnLmM6NTEyCiBtc2dpZCAiLS1tZXJnZWQgYW5kIC0tbm8tbWVyZ2VkIG9wdGlvbnMgYXJlIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi90YWcuYzo1MDQKKyM6IGJ1aWx0aW4vdGFnLmM6NTIzCiBtc2dpZCAib25seSBvbmUgLUYgb3IgLW0gb3B0aW9uIGlzIGFsbG93ZWQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTIzCisjOiBidWlsdGluL3RhZy5jOjU0MgogbXNnaWQgInRvbyBtYW55IHBhcmFtcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3RhZy5jOjUyOQorIzogYnVpbHRpbi90YWcuYzo1NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0YWcgbmFtZS4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi90YWcuYzo1MzQKKyM6IGJ1aWx0aW4vdGFnLmM6NTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTY1CisjOiBidWlsdGluL3RhZy5jOjU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJVcGRhdGVkIHRhZyAnJXMnICh3YXMgJXMpXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjUwMAorIzogYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjUwMgogbXNnaWQgIlVucGFja2luZyBvYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6ODIKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBmaWxlICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIGZpbGUgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTMgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE1IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgZGlyZWN0b3J5ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTM4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJUZXN0aW5nIG10aW1lIGluICclcycgIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTUyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE1NAogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGFkZGluZyBhIG5ldyBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTY1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE2NwogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGFkZGluZyBhIG5ldyBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNzgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTgwCiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBjaGFuZ2VzIGFmdGVyIHVwZGF0aW5nIGEgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE4OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxOTEKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGNoYW5nZXMgYWZ0ZXIgYWRkaW5nIGEgZmlsZSBpbnNpZGUgc3ViZGlyZWN0b3J5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjAwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIwMgogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGRlbGV0aW5nIGEgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxMworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTUKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMjIKIG1zZ2lkICIgT0siCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo1ODgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6NTkxCiBtc2dpZCAiZ2l0IHVwZGF0ZS1pbmRleCBbPG9wdGlvbnM+XSBbLS1dIFs8ZmlsZT4uLi5dIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTYxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3NAogbXNnaWQgImNvbnRpbnVlIHJlZnJlc2ggZXZlbiB3aGVuIGluZGV4IG5lZWRzIHVwZGF0ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2NAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzcKIG1zZ2lkICJyZWZyZXNoOiBpZ25vcmUgc3VibW9kdWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODAKIG1zZ2lkICJkbyBub3QgaWdub3JlIG5ldyBmaWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODIKIG1zZ2lkICJsZXQgZmlsZXMgcmVwbGFjZSBkaXJlY3RvcmllcyBhbmQgdmljZS12ZXJzYSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODQKIG1zZ2lkICJub3RpY2UgZmlsZXMgbWlzc2luZyBmcm9tIHdvcmt0cmVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTczCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NgogbXNnaWQgInJlZnJlc2ggZXZlbiBpZiBpbmRleCBjb250YWlucyB1bm1lcmdlZCBlbnRyaWVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTc2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4OQogbXNnaWQgInJlZnJlc2ggc3RhdCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4MAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTMKIG1zZ2lkICJsaWtlIC0tcmVmcmVzaCwgYnV0IGlnbm9yZSBhc3N1bWUtdW5jaGFuZ2VkIHNldHRpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk3CiBtc2dpZCAiPG1vZGU+LDxvYmplY3Q+LDxwYXRoPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTgKIG1zZ2lkICJhZGQgdGhlIHNwZWNpZmllZCBlbnRyeSB0byB0aGUgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwOAogbXNnaWQgIm1hcmsgZmlsZXMgYXMgXCJub3QgY2hhbmdpbmdcIiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDExCiBtc2dpZCAiY2xlYXIgYXNzdW1lZC11bmNoYW5nZWQgYml0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDE0CiBtc2dpZCAibWFyayBmaWxlcyBhcyBcImluZGV4LW9ubHlcIiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNwogbXNnaWQgImNsZWFyIHNraXAtd29ya3RyZWUgYml0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwNgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDIwCittc2dpZCAiZG8gbm90IHRvdWNoIGluZGV4LW9ubHkgZW50cmllcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjIKIG1zZ2lkICJhZGQgdG8gaW5kZXggb25seTsgZG8gbm90IGFkZCBjb250ZW50IHRvIG9iamVjdCBkYXRhYmFzZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNAogbXNnaWQgInJlbW92ZSBuYW1lZCBwYXRocyBldmVuIGlmIHByZXNlbnQgaW4gd29ya3RyZWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDEwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjYKIG1zZ2lkICJ3aXRoIC0tc3RkaW46IGlucHV0IGxpbmVzIGFyZSB0ZXJtaW5hdGVkIGJ5IG51bGwgYnl0ZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDEyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjgKIG1zZ2lkICJyZWFkIGxpc3Qgb2YgcGF0aHMgdG8gYmUgdXBkYXRlZCBmcm9tIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDMyCiBtc2dpZCAiYWRkIGVudHJpZXMgZnJvbSBzdGFuZGFyZCBpbnB1dCB0byB0aGUgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDIwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzYKIG1zZ2lkICJyZXBvcHVsYXRlIHN0YWdlcyAjMiBhbmQgIzMgZm9yIHRoZSBsaXN0ZWQgcGF0aHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDAKIG1zZ2lkICJvbmx5IHVwZGF0ZSBlbnRyaWVzIHRoYXQgZGlmZmVyIGZyb20gSEVBRCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NAogbXNnaWQgImlnbm9yZSBmaWxlcyBtaXNzaW5nIGZyb20gd29ya3RyZWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDMxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDcKIG1zZ2lkICJyZXBvcnQgYWN0aW9ucyB0byBzdGFuZGFyZCBvdXRwdXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDMzCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDkKIG1zZ2lkICIoZm9yIHBvcmNlbGFpbnMpIGZvcmdldCBzYXZlZCB1bnJlc29sdmVkIGNvbmZsaWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1MwogbXNnaWQgIndyaXRlIGluZGV4IGluIHRoaXMgZm9ybWF0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzOQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDU1CiBtc2dpZCAiZW5hYmxlIG9yIGRpc2FibGUgc3BsaXQgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTcKIG1zZ2lkICJlbmFibGUvZGlzYWJsZSB1bnRyYWNrZWQgY2FjaGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQzCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTkKIG1zZ2lkICJ0ZXN0IGlmIHRoZSBmaWxlc3lzdGVtIHN1cHBvcnRzIHVudHJhY2tlZCBjYWNoZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDUKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2MQogbXNnaWQgImVuYWJsZSB1bnRyYWNrZWQgY2FjaGUgd2l0aG91dCB0ZXN0aW5nIHRoZSBmaWxlc3lzdGVtIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDYzCiBtc2dpZCAid3JpdGUgb3V0IHRoZSBpbmRleCBldmVuIGlmIGlzIG5vdCBmbGFnZ2VkIGFzIGNoYW5nZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjUKIG1zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBmaWxlIHN5c3RlbSBtb25pdG9yIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDY3CiBtc2dpZCAibWFyayBmaWxlcyBhcyBmc21vbml0b3IgdmFsaWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDU0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNzAKIG1zZ2lkICJjbGVhciBmc21vbml0b3IgdmFsaWQgYml0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE1MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTczCiBtc2dpZCAiIgogImNvcmUuc3BsaXRJbmRleCBpcyBzZXQgdG8gZmFsc2U7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCB0byAiCiAiZW5hYmxlIHNwbGl0IGluZGV4IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE2MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTgyCiBtc2dpZCAiIgogImNvcmUuc3BsaXRJbmRleCBpcyBzZXQgdG8gdHJ1ZTsgcmVtb3ZlIG9yIGNoYW5nZSBpdCwgaWYgeW91IHJlYWxseSB3YW50IHRvICIKICJkaXNhYmxlIHNwbGl0IGluZGV4IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTk0CiBtc2dpZCAiIgogImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCiAidG8gZGlzYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTk4CiBtc2dpZCAiVW50cmFja2VkIGNhY2hlIGRpc2FibGVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA2CiBtc2dpZCAiIgogImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgIgogInRvIGVuYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVudHJhY2tlZCBjYWNoZSBlbmFibGVkIGZvciAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE5NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjE4CiBtc2dpZCAiY29yZS5mc21vbml0b3IgaXMgdW5zZXQ7IHNldCBpdCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZW5hYmxlIGZzbW9uaXRvciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyMgogbXNnaWQgImZzbW9uaXRvciBlbmFibGVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwNAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjI1CiBtc2dpZCAiIgogImNvcmUuZnNtb25pdG9yIGlzIHNldDsgcmVtb3ZlIGl0IGlmIHlvdSByZWFsbHkgd2FudCB0byBkaXNhYmxlIGZzbW9uaXRvciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyOQogbXNnaWQgImZzbW9uaXRvciBkaXNhYmxlZCIKIG1zZ3N0ciAiIgogCkBAIC0xNjkzNyw2ICsyMDI5NywxMCBAQAogbXNnaWQgImdpdCB1cGxvYWQtcGFjayBbPG9wdGlvbnM+XSA8ZGlyPiIKIG1zZ3N0ciAiIgogCisjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjMgdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjE3Cittc2dpZCAicXVpdCBhZnRlciBhIHNpbmdsZSByZXF1ZXN0L3Jlc3BvbnNlIGV4Y2hhbmdlIgorbXNnc3RyICIiCisKICM6IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyNQogbXNnaWQgImV4aXQgaW1tZWRpYXRlbHkgYWZ0ZXIgaW5pdGlhbCByZWYgYWR2ZXJ0aXNlbWVudCIKIG1zZ3N0ciAiIgpAQCAtMTY5NDksMTUgKzIwMzEzLDE1IEBACiBtc2dpZCAiaW50ZXJydXB0IHRyYW5zZmVyIGFmdGVyIDxuPiBzZWNvbmRzIG9mIGluYWN0aXZpdHkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6MjAKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjE5CiBtc2dpZCAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA8Y29tbWl0Pi4uLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo3NgorIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NjgKIG1zZ2lkICJwcmludCBjb21taXQgY29udGVudHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NzcgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzgKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjY5IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM3CiBtc2dpZCAicHJpbnQgcmF3IGdwZyBzdGF0dXMgb3V0cHV0IgogbXNnc3RyICIiCiAKQEAgLTE2OTczLDExICsyMDMzNywxMSBAQAogbXNnaWQgInNob3cgc3RhdGlzdGljcyBvbmx5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjE5CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzoxOAogbXNnaWQgImdpdCB2ZXJpZnktdGFnIFstdiB8IC0tdmVyYm9zZV0gWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnPi4uLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3ZlcmlmeS10YWcuYzozNworIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzYKIG1zZ2lkICJwcmludCB0YWcgY29udGVudHMiCiBtc2dzdHIgIiIKIApAQCAtMTcwMDksNyArMjAzNzMsNyBAQAogbXNnaWQgImdpdCB3b3JrdHJlZSB1bmxvY2sgPHBhdGg+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2MCBidWlsdGluL3dvcmt0cmVlLmM6ODcxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjAgYnVpbHRpbi93b3JrdHJlZS5jOjg5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlICclcyciCiBtc2dzdHIgIiIKQEAgLTE3MDU5LDIxNSArMjA0MjMsMjMwIEBACiBtc2dpZCAiJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6MjUxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZS1hZGQgd29ya3RyZWUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6MjU2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGlzIGEgbWlzc2luZyBidXQgbG9ja2VkIHdvcmt0cmVlO1xuIgogInVzZSAnYWRkIC1mIC1mJyB0byBvdmVycmlkZSwgb3IgJ3VubG9jaycgYW5kICdwcnVuZScgb3IgJ3JlbW92ZScgdG8gY2xlYXIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBpcyBhIG1pc3NpbmcgYnV0IGFscmVhZHkgcmVnaXN0ZXJlZCB3b3JrdHJlZTtcbiIKICJ1c2UgJ2FkZCAtZicgdG8gb3ZlcnJpZGUsIG9yICdwcnVuZScgb3IgJ3JlbW92ZScgdG8gY2xlYXIiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjMwOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjMwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBvZiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MjggYnVpbHRpbi93b3JrdHJlZS5jOjQzNAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMiBidWlsdGluL3dvcmt0cmVlLmM6NDM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAobmV3IGJyYW5jaCAnJXMnKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDMwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAocmVzZXR0aW5nIGJyYW5jaCAnJXMnOyB3YXMgYXQgJXMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MzkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChjaGVja2luZyBvdXQgJyVzJykiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKGRldGFjaGVkIEhFQUQgJXMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0ODYKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTAKIG1zZ2lkICJjaGVja291dCA8YnJhbmNoPiBldmVuIGlmIGFscmVhZHkgY2hlY2tlZCBvdXQgaW4gb3RoZXIgd29ya3RyZWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ4OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MwogbXNnaWQgImNyZWF0ZSBhIG5ldyBicmFuY2giCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NQogbXNnaWQgImNyZWF0ZSBvciByZXNldCBhIGJyYW5jaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDkzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk3CiBtc2dpZCAicG9wdWxhdGUgdGhlIG5ldyB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5OAogbXNnaWQgImtlZXAgdGhlIG5ldyB3b3JraW5nIHRyZWUgbG9ja2VkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTcKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDEKIG1zZ2lkICJzZXQgdXAgdHJhY2tpbmcgbW9kZSAoc2VlIGdpdC1icmFuY2goMSkpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDAKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDQKIG1zZ2lkICJ0cnkgdG8gbWF0Y2ggdGhlIG5ldyBicmFuY2ggbmFtZSB3aXRoIGEgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NTA4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTEyCiBtc2dpZCAiLWIsIC1CLCBhbmQgLS1kZXRhY2ggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NTY5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTczCiBtc2dpZCAiLS1bbm8tXXRyYWNrIGNhbiBvbmx5IGJlIHVzZWQgaWYgYSBuZXcgYnJhbmNoIGlzIGNyZWF0ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY2OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY3MwogbXNnaWQgInJlYXNvbiBmb3IgbG9ja2luZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjgxIGJ1aWx0aW4vd29ya3RyZWUuYzo3MTQgYnVpbHRpbi93b3JrdHJlZS5jOjc3MgotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg5OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4NSBidWlsdGluL3dvcmt0cmVlLmM6NzE4IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTIKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4MyBidWlsdGluL3dvcmt0cmVlLmM6NzE2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njg3IGJ1aWx0aW4vd29ya3RyZWUuYzo3MjAKIG1zZ2lkICJUaGUgbWFpbiB3b3JraW5nIHRyZWUgY2Fubm90IGJlIGxvY2tlZCBvciB1bmxvY2tlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Njg4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxyZWFkeSBsb2NrZWQsIHJlYXNvbjogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5MAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5NAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFscmVhZHkgbG9ja2VkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3MTgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgbG9ja2VkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NDMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NjMKIG1zZ2lkICJ3b3JraW5nIHRyZWVzIGNvbnRhaW5pbmcgc3VibW9kdWxlcyBjYW5ub3QgYmUgbW92ZWQgb3IgcmVtb3ZlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzUxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzcxCiBtc2dpZCAiZm9yY2UgbW92ZSBldmVuIGlmIHdvcmt0cmVlIGlzIGRpcnR5IG9yIGxvY2tlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzc0IGJ1aWx0aW4vd29ya3RyZWUuYzo5MDEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTQgYnVpbHRpbi93b3JrdHJlZS5jOjkyMQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGEgbWFpbiB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZmlndXJlIG91dCBkZXN0aW5hdGlvbiBuYW1lIGZyb20gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzg1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODA1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRhcmdldCAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNhbm5vdCBtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZSwgbG9jayByZWFzb246ICVzXG4iCiAidXNlICdtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxNQogbXNnaWQgIiIKICJjYW5ub3QgbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWU7XG4iCiAidXNlICdtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ2YWxpZGF0aW9uIGZhaWxlZCwgY2Fubm90IG1vdmUgd29ya2luZyB0cmVlOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODAzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODIzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBtb3ZlICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODUxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODcxCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBydW4gJ2dpdCBzdGF0dXMnIG9uICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg1NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg3NQogIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGlzIGRpcnR5LCB1c2UgLS1mb3JjZSB0byBkZWxldGUgaXQiCittc2dpZCAiJyVzJyBjb250YWlucyBtb2RpZmllZCBvciB1bnRyYWNrZWQgZmlsZXMsIHVzZSAtLWZvcmNlIHRvIGRlbGV0ZSBpdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODYwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODgwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBydW4gJ2dpdCBzdGF0dXMnIG9uICclcycsIGNvZGUgJWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg4MworIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwMwogbXNnaWQgImZvcmNlIHJlbW92YWwgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwNgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlc1xuIgogInVzZSAncmVtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwOAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyOAogbXNnaWQgIiIKICJjYW5ub3QgcmVtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZTtcbiIKICJ1c2UgJ3JlbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidmFsaWRhdGlvbiBmYWlsZWQsIGNhbm5vdCByZW1vdmUgd29ya2luZyB0cmVlOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzoxNAorIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MTUKIG1zZ2lkICJnaXQgd3JpdGUtdHJlZSBbLS1taXNzaW5nLW9rXSBbLS1wcmVmaXg9PHByZWZpeD4vXSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyNworIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjgKIG1zZ2lkICI8cHJlZml4Pi8iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjgKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI5CiBtc2dpZCAid3JpdGUgdHJlZSBvYmplY3QgZm9yIGEgc3ViZGlyZWN0b3J5IDxwcmVmaXg+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjMwCisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzozMQogbXNnaWQgIm9ubHkgdXNlZnVsIGZvciBkZWJ1Z2dpbmciCiBtc2dzdHIgIiIKIAotIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjIyCisjOiBmYXN0LWltcG9ydC5jOjMxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0ZWQgJ21hcmsnIGNvbW1hbmQsIGdvdCAlcyIKK21zZ3N0ciAiIgorCisjOiBmYXN0LWltcG9ydC5jOjMxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0ZWQgJ3RvJyBjb21tYW5kLCBnb3QgJXMiCittc2dzdHIgIiIKKworIzogZmFzdC1pbXBvcnQuYzozMjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImZlYXR1cmUgJyVzJyBmb3JiaWRkZW4gaW4gaW5wdXQgd2l0aG91dCAtLWFsbG93LXVuc2FmZS1mZWF0dXJlcyIKK21zZ3N0ciAiIgorCisjOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBwZXJtaXNzaW9ucyBvbiB5b3VyIHNvY2tldCBkaXJlY3RvcnkgYXJlIHRvbyBsb29zZTsgb3RoZXJcbiIKQEAgLTE3Mjc2LDcgKzIwNjU1LDcgQEAKICJcdGNobW9kIDA3MDAgJXMiCiBtc2dzdHIgIiIKIAotIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjcxCisjOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyNzIKIG1zZ2lkICJwcmludCBkZWJ1Z2dpbmcgbWVzc2FnZXMgdG8gc3RkZXJyIgogbXNnc3RyICIiCiAKQEAgLTE3Mjg5LDYgKzIwNjY4LDE0IEBACiBtc2dpZCAidG9vIG1hbnkgY29tbWl0cyBtYXJrZWQgcmVhY2hhYmxlIgogbXNnc3RyICIiCiAKKyM6IHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzo3Cittc2dpZCAidGVzdC10b29sIHNlcnZlLXYyIFs8b3B0aW9ucz5dIgorbXNnc3RyICIiCisKKyM6IHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzoxOQorbXNnaWQgImV4aXQgaW1tZWRpYXRlbHkgYWZ0ZXIgYWR2ZXJ0aXNpbmcgY2FwYWJpbGl0aWVzIgorbXNnc3RyICIiCisKICM6IGdpdC5jOjI3CiBtc2dpZCAiIgogImdpdCBbLS12ZXJzaW9uXSBbLS1oZWxwXSBbLUMgPHBhdGg+XSBbLWMgPG5hbWU+PTx2YWx1ZT5dXG4iCkBAIC0xNzMwMyw5NiArMjA2OTAsMTQzIEBACiBtc2dpZCAiIgogIidnaXQgaGVscCAtYScgYW5kICdnaXQgaGVscCAtZycgbGlzdCBhdmFpbGFibGUgc3ViY29tbWFuZHMgYW5kIHNvbWVcbiIKICJjb25jZXB0IGd1aWRlcy4gU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIG9yICdnaXQgaGVscCA8Y29uY2VwdD4nXG4iCi0idG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC4iCisidG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC5cbiIKKyJTZWUgJ2dpdCBoZWxwIGdpdCcgZm9yIGFuIG92ZXJ2aWV3IG9mIHRoZSBzeXN0ZW0uIgogbXNnc3RyICIiCiAKLSM6IGdpdC5jOjE3MworIzogZ2l0LmM6MTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLS1naXQtZGlyXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LmM6MTg3CisjOiBnaXQuYzoyMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gbmFtZXNwYWNlIGdpdmVuIGZvciAtLW5hbWVzcGFjZVxuIgogbXNnc3RyICIiCiAKLSM6IGdpdC5jOjIwMQorIzogZ2l0LmM6MjE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLS13b3JrLXRyZWVcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQuYzoyMTUKKyM6IGdpdC5jOjIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBwcmVmaXggZ2l2ZW4gZm9yIC0tc3VwZXItcHJlZml4XG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LmM6MjM3CisjOiBnaXQuYzoyNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiLWMgZXhwZWN0cyBhIGNvbmZpZ3VyYXRpb24gc3RyaW5nXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LmM6Mjc1CisjOiBnaXQuYzoyODgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtQ1xuIgogbXNnc3RyICIiCiAKLSM6IGdpdC5jOjMwMAorIzogZ2l0LmM6MzE0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gb3B0aW9uOiAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGdpdC5jOjcxOQorIzogZ2l0LmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIGV4cGFuZGluZyBhbGlhcyAnJXMnOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGdpdC5jOjM2OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWxpYXMgJyVzJyBjaGFuZ2VzIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiIKKyJZb3UgY2FuIHVzZSAnIWdpdCcgaW4gdGhlIGFsaWFzIHRvIGRvIHRoaXMiCittc2dzdHIgIiIKKworIzogZ2l0LmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGFsaWFzIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzozNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVjdXJzaXZlIGFsaWFzOiAlcyIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzo0NTkKK21zZ2lkICJ3cml0ZSBmYWlsdXJlIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzo0NjEKK21zZ2lkICJ1bmtub3duIHdyaXRlIGZhaWx1cmUgb24gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGdpdC5jOjQ2MworbXNnaWQgImNsb3NlIGZhaWxlZCBvbiBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgIiIKKworIzogZ2l0LmM6NzkzCiAjLCBjLWZvcm1hdAogbXNnaWQgImFsaWFzIGxvb3AgZGV0ZWN0ZWQ6IGV4cGFuc2lvbiBvZiAnJXMnIGRvZXMgbm90IHRlcm1pbmF0ZTolcyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQuYzo4MDIKKyM6IGdpdC5jOjg0MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgaGFuZGxlICVzIGFzIGEgYnVpbHRpbiIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzo4NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVzYWdlOiAlc1xuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGdpdC5jOjg3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBhbnNpb24gb2YgYWxpYXMgJyVzJyBmYWlsZWQ7ICclcycgaXMgbm90IGEgZ2l0IGNvbW1hbmRcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQuYzo4MTQKKyM6IGdpdC5jOjg4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcnVuIGNvbW1hbmQgJyVzJzogJXNcbiIKIG1zZ3N0ciAiIgogCi0jOiBodHRwLmM6Mzc0CisjOiBodHRwLmM6Mzc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5lZ2F0aXZlIHZhbHVlIGZvciBodHRwLnBvc3RidWZmZXI7IGRlZmF1bHRpbmcgdG8gJWQiCiBtc2dzdHIgIiIKIAotIzogaHR0cC5jOjM5NQorIzogaHR0cC5jOjM5OQogbXNnaWQgIkRlbGVnYXRpb24gY29udHJvbCBpcyBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuMjIuMCIKIG1zZ3N0ciAiIgogCi0jOiBodHRwLmM6NDA0CisjOiBodHRwLmM6NDA4CiBtc2dpZCAiUHVibGljIGtleSBwaW5uaW5nIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy40NC4wIgogbXNnc3RyICIiCiAKLSM6IGh0dHAuYzo4MzcKKyM6IGh0dHAuYzo4NzYKIG1zZ2lkICJDVVJMU1NMT1BUX05PX1JFVk9LRSBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuNDQuMCIKIG1zZ3N0ciAiIgogCi0jOiBodHRwLmM6OTEwCisjOiBodHRwLmM6OTQ5CiBtc2dpZCAiUHJvdG9jb2wgcmVzdHJpY3Rpb25zIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy4xOS40IgogbXNnc3RyICIiCiAKLSM6IGh0dHAuYzoxMDQ2CisjOiBodHRwLmM6MTA4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJVbnN1cHBvcnRlZCBTU0wgYmFja2VuZCAnJXMnLiBTdXBwb3J0ZWQgU1NMIGJhY2tlbmRzOiIKIG1zZ3N0ciAiIgogCi0jOiBodHRwLmM6MTA1MworIzogaHR0cC5jOjEwOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldCBTU0wgYmFja2VuZCB0byAnJXMnOiBjVVJMIHdhcyBidWlsdCB3aXRob3V0IFNTTCBiYWNrZW5kcyIKIG1zZ3N0ciAiIgogCi0jOiBodHRwLmM6MTA1NworIzogaHR0cC5jOjEwOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldCBTU0wgYmFja2VuZCB0byAnJXMnOiBhbHJlYWR5IHNldCIKIG1zZ3N0ciAiIgogCi0jOiBodHRwLmM6MTkyMQorIzogaHR0cC5jOjE5NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInVuYWJsZSB0byB1cGRhdGUgdXJsIGJhc2UgZnJvbSByZWRpcmVjdGlvbjpcbiIKQEAgLTE3NDAwLDM5ICsyMDgzNCwxNzYgQEAKICIgICByZWRpcmVjdDogJXMiCiBtc2dzdHIgIiIKIAotIzogcmVtb3RlLWN1cmwuYzo0MDEKKyM6IHJlbW90ZS1jdXJsLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcXVvdGluZyBpbiBwdXNoLW9wdGlvbiB2YWx1ZTogJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIlc2luZm8vcmVmcyBub3QgdmFsaWQ6IGlzIHRoaXMgYSBnaXQgcmVwb3NpdG9yeT8iCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzozNjQKK21zZ2lkICJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZXhwZWN0ZWQgc2VydmljZSwgZ290IGZsdXNoIHBhY2tldCIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZ290ICclcyciCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVwb3NpdG9yeSAnJXMnIG5vdCBmb3VuZCIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGlvbiBmYWlsZWQgZm9yICclcyciCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzo0NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyAnJXMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjQ2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWRpcmVjdGluZyB0byAlcyIKIG1zZ3N0ciAiIgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo2MAorIzogcmVtb3RlLWN1cmwuYzo1OTMKK21zZ2lkICJzaG91bGRuJ3QgaGF2ZSBFT0Ygd2hlbiBub3QgZ2VudGxlIG9uIEVPRiIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjY3MworbXNnaWQgInVuYWJsZSB0byByZXdpbmQgcnBjIHBvc3QgZGF0YSAtIHRyeSBpbmNyZWFzaW5nIGh0dHAucG9zdEJ1ZmZlciIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjczMworIywgYy1mb3JtYXQKK21zZ2lkICJSUEMgZmFpbGVkOyAlcyIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjc3MworbXNnaWQgImNhbm5vdCBoYW5kbGUgcHVzaGVzIHRoaXMgYmlnIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6ODg4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkZWZsYXRlIHJlcXVlc3Q7IHpsaWIgZGVmbGF0ZSBlcnJvciAlZCIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjg5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGVuZCBlcnJvciAlZCIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjEwMjMKK21zZ2lkICJkdW1iIGh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjYXBhYmlsaXRpZXMiCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzoxMDM4Cittc2dpZCAiZmV0Y2ggZmFpbGVkLiIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjEwODYKK21zZ2lkICJjYW5ub3QgZmV0Y2ggYnkgc2hhMSBvdmVyIHNtYXJ0IGh0dHAiCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzoxMTMwIHJlbW90ZS1jdXJsLmM6MTEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogZXhwZWN0ZWQgc2hhL3JlZiwgZ290ICclcyciCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzoxMTQ4IHJlbW90ZS1jdXJsLmM6MTI2MworIywgYy1mb3JtYXQKK21zZ2lkICJodHRwIHRyYW5zcG9ydCBkb2VzIG5vdCBzdXBwb3J0ICVzIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTE4NAorbXNnaWQgImdpdC1odHRwLXB1c2ggZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTM2OQorbXNnaWQgInJlbW90ZS1jdXJsOiB1c2FnZTogZ2l0IHJlbW90ZS1jdXJsIDxyZW1vdGU+IFs8dXJsPl0iCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzoxNDAxCittc2dpZCAicmVtb3RlLWN1cmw6IGVycm9yIHJlYWRpbmcgY29tbWFuZCBzdHJlYW0gZnJvbSBnaXQiCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzoxNDA4Cittc2dpZCAicmVtb3RlLWN1cmw6IGZldGNoIGF0dGVtcHRlZCB3aXRob3V0IGEgbG9jYWwgcmVwbyIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjE0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlLWN1cmw6IHVua25vd24gY29tbWFuZCAnJXMnIGZyb20gZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjg1CiBtc2dpZCAiYXJncyIKIG1zZ3N0ciAiIgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo2MQorIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6ODYKIG1zZ2lkICJvYmplY3QgZmlsdGVyaW5nIgogbXNnc3RyICIiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNTQKKyM6IHBhcnNlLW9wdGlvbnMuaDoxODMKIG1zZ2lkICJleHBpcnktZGF0ZSIKIG1zZ3N0ciAiIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MTY5CisjOiBwYXJzZS1vcHRpb25zLmg6MTk3CiBtc2dpZCAibm8tb3AgKGJhY2t3YXJkIGNvbXBhdGliaWxpdHkpIgogbXNnc3RyICIiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoyNjEKKyM6IHBhcnNlLW9wdGlvbnMuaDozMDkKIG1zZ2lkICJiZSBtb3JlIHZlcmJvc2UiCiBtc2dzdHIgIiIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjI2MworIzogcGFyc2Utb3B0aW9ucy5oOjMxMQogbXNnaWQgImJlIG1vcmUgcXVpZXQiCiBtc2dzdHIgIiIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjI2OQorIzogcGFyc2Utb3B0aW9ucy5oOjMxNwogbXNnaWQgInVzZSA8bj4gZGlnaXRzIHRvIGRpc3BsYXkgU0hBLTFzIgogbXNnc3RyICIiCiAKKyM6IHBhcnNlLW9wdGlvbnMuaDozMzYKK21zZ2lkICJob3cgdG8gc3RyaXAgc3BhY2VzIGFuZCAjY29tbWVudHMgZnJvbSBtZXNzYWdlIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuaDozMzcKK21zZ2lkICJyZWFkIHBhdGhzcGVjIGZyb20gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzM4Cittc2dpZCAiIgorIndpdGggLS1wYXRoc3BlYy1mcm9tLWZpbGUsIHBhdGhzcGVjIGVsZW1lbnRzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuaDoxMDEKK21zZ2lkICJrZXkiCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5oOjEwMQorbXNnaWQgImZpZWxkIG5hbWUgdG8gc29ydCBvbiIKK21zZ3N0ciAiIgorCisjOiByZXJlcmUuaDo0NAorbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKK21zZ3N0ciAiIgorCisjOiB3dC1zdGF0dXMuaDo2NworbXNnaWQgIkhFQUQgZGV0YWNoZWQgYXQgIgorbXNnc3RyICIiCisKKyM6IHd0LXN0YXR1cy5oOjY4Cittc2dpZCAiSEVBRCBkZXRhY2hlZCBmcm9tICIKK21zZ3N0ciAiIgorCiAjOiBjb21tYW5kLWxpc3QuaDo1MAogbXNnaWQgIkFkZCBmaWxlIGNvbnRlbnRzIHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiIgpAQCAtMTc2ODYsNyArMjEyNTcsNyBAQAogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjExMwotbXNnaWQgImFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKK21zZ2lkICJBZGQgb3IgcGFyc2Ugc3RydWN0dXJlZCBpbmZvcm1hdGlvbiBpbiBjb21taXQgbWVzc2FnZXMiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTE0CkBAIC0xNzg1OCwyMTkgKzIxNDI5LDIzMSBAQAogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE1NgotbXNnaWQgIlJldmVydCBzb21lIGV4aXN0aW5nIGNvbW1pdHMiCittc2dpZCAiUmVzdG9yZSB3b3JraW5nIHRyZWUgZmlsZXMiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTU3Ci1tc2dpZCAiTGlzdHMgY29tbWl0IG9iamVjdHMgaW4gcmV2ZXJzZSBjaHJvbm9sb2dpY2FsIG9yZGVyIgorbXNnaWQgIlJldmVydCBzb21lIGV4aXN0aW5nIGNvbW1pdHMiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTU4Ci1tc2dpZCAiUGljayBvdXQgYW5kIG1hc3NhZ2UgcGFyYW1ldGVycyIKK21zZ2lkICJMaXN0cyBjb21taXQgb2JqZWN0cyBpbiByZXZlcnNlIGNocm9ub2xvZ2ljYWwgb3JkZXIiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTU5Ci1tc2dpZCAiUmVtb3ZlIGZpbGVzIGZyb20gdGhlIHdvcmtpbmcgdHJlZSBhbmQgZnJvbSB0aGUgaW5kZXgiCittc2dpZCAiUGljayBvdXQgYW5kIG1hc3NhZ2UgcGFyYW1ldGVycyIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNjAKLW1zZ2lkICJTZW5kIGEgY29sbGVjdGlvbiBvZiBwYXRjaGVzIGFzIGVtYWlscyIKK21zZ2lkICJSZW1vdmUgZmlsZXMgZnJvbSB0aGUgd29ya2luZyB0cmVlIGFuZCBmcm9tIHRoZSBpbmRleCIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNjEKLW1zZ2lkICJQdXNoIG9iamVjdHMgb3ZlciBHaXQgcHJvdG9jb2wgdG8gYW5vdGhlciByZXBvc2l0b3J5IgorbXNnaWQgIlNlbmQgYSBjb2xsZWN0aW9uIG9mIHBhdGNoZXMgYXMgZW1haWxzIgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE2MgotbXNnaWQgIlJlc3RyaWN0ZWQgbG9naW4gc2hlbGwgZm9yIEdpdC1vbmx5IFNTSCBhY2Nlc3MiCittc2dpZCAiUHVzaCBvYmplY3RzIG92ZXIgR2l0IHByb3RvY29sIHRvIGFub3RoZXIgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNjMKLW1zZ2lkICJTdW1tYXJpemUgJ2dpdCBsb2cnIG91dHB1dCIKK21zZ2lkICJSZXN0cmljdGVkIGxvZ2luIHNoZWxsIGZvciBHaXQtb25seSBTU0ggYWNjZXNzIgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE2NAotbXNnaWQgIlNob3cgdmFyaW91cyB0eXBlcyBvZiBvYmplY3RzIgorbXNnaWQgIlN1bW1hcml6ZSAnZ2l0IGxvZycgb3V0cHV0IgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE2NQotbXNnaWQgIlNob3cgYnJhbmNoZXMgYW5kIHRoZWlyIGNvbW1pdHMiCittc2dpZCAiU2hvdyB2YXJpb3VzIHR5cGVzIG9mIG9iamVjdHMiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTY2Ci1tc2dpZCAiU2hvdyBwYWNrZWQgYXJjaGl2ZSBpbmRleCIKK21zZ2lkICJTaG93IGJyYW5jaGVzIGFuZCB0aGVpciBjb21taXRzIgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE2NwotbXNnaWQgIkxpc3QgcmVmZXJlbmNlcyBpbiBhIGxvY2FsIHJlcG9zaXRvcnkiCittc2dpZCAiU2hvdyBwYWNrZWQgYXJjaGl2ZSBpbmRleCIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNjgKLW1zZ2lkICJHaXQncyBpMThuIHNldHVwIGNvZGUgZm9yIHNoZWxsIHNjcmlwdHMiCittc2dpZCAiTGlzdCByZWZlcmVuY2VzIGluIGEgbG9jYWwgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNjkKLW1zZ2lkICJDb21tb24gR2l0IHNoZWxsIHNjcmlwdCBzZXR1cCBjb2RlIgorbXNnaWQgIkdpdCdzIGkxOG4gc2V0dXAgY29kZSBmb3Igc2hlbGwgc2NyaXB0cyIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNzAKLW1zZ2lkICJTdGFzaCB0aGUgY2hhbmdlcyBpbiBhIGRpcnR5IHdvcmtpbmcgZGlyZWN0b3J5IGF3YXkiCittc2dpZCAiQ29tbW9uIEdpdCBzaGVsbCBzY3JpcHQgc2V0dXAgY29kZSIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNzEKLW1zZ2lkICJBZGQgZmlsZSBjb250ZW50cyB0byB0aGUgc3RhZ2luZyBhcmVhIgorbXNnaWQgIkluaXRpYWxpemUgYW5kIG1vZGlmeSB0aGUgc3BhcnNlLWNoZWNrb3V0IgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE3MgotbXNnaWQgIlNob3cgdGhlIHdvcmtpbmcgdHJlZSBzdGF0dXMiCittc2dpZCAiU3Rhc2ggdGhlIGNoYW5nZXMgaW4gYSBkaXJ0eSB3b3JraW5nIGRpcmVjdG9yeSBhd2F5IgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE3MwotbXNnaWQgIlJlbW92ZSB1bm5lY2Vzc2FyeSB3aGl0ZXNwYWNlIgorbXNnaWQgIkFkZCBmaWxlIGNvbnRlbnRzIHRvIHRoZSBzdGFnaW5nIGFyZWEiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTc0Ci1tc2dpZCAiSW5pdGlhbGl6ZSwgdXBkYXRlIG9yIGluc3BlY3Qgc3VibW9kdWxlcyIKK21zZ2lkICJTaG93IHRoZSB3b3JraW5nIHRyZWUgc3RhdHVzIgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE3NQotbXNnaWQgIkJpZGlyZWN0aW9uYWwgb3BlcmF0aW9uIGJldHdlZW4gYSBTdWJ2ZXJzaW9uIHJlcG9zaXRvcnkgYW5kIEdpdCIKK21zZ2lkICJSZW1vdmUgdW5uZWNlc3Nhcnkgd2hpdGVzcGFjZSIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNzYKLW1zZ2lkICJSZWFkLCBtb2RpZnkgYW5kIGRlbGV0ZSBzeW1ib2xpYyByZWZzIgorbXNnaWQgIkluaXRpYWxpemUsIHVwZGF0ZSBvciBpbnNwZWN0IHN1Ym1vZHVsZXMiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTc3Ci1tc2dpZCAiQ3JlYXRlLCBsaXN0LCBkZWxldGUgb3IgdmVyaWZ5IGEgdGFnIG9iamVjdCBzaWduZWQgd2l0aCBHUEciCittc2dpZCAiQmlkaXJlY3Rpb25hbCBvcGVyYXRpb24gYmV0d2VlbiBhIFN1YnZlcnNpb24gcmVwb3NpdG9yeSBhbmQgR2l0IgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE3OAotbXNnaWQgIkNyZWF0ZXMgYSB0ZW1wb3JhcnkgZmlsZSB3aXRoIGEgYmxvYidzIGNvbnRlbnRzIgorbXNnaWQgIlN3aXRjaCBicmFuY2hlcyIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNzkKLW1zZ2lkICJVbnBhY2sgb2JqZWN0cyBmcm9tIGEgcGFja2VkIGFyY2hpdmUiCittc2dpZCAiUmVhZCwgbW9kaWZ5IGFuZCBkZWxldGUgc3ltYm9saWMgcmVmcyIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxODAKLW1zZ2lkICJSZWdpc3RlciBmaWxlIGNvbnRlbnRzIGluIHRoZSB3b3JraW5nIHRyZWUgdG8gdGhlIGluZGV4IgorbXNnaWQgIkNyZWF0ZSwgbGlzdCwgZGVsZXRlIG9yIHZlcmlmeSBhIHRhZyBvYmplY3Qgc2lnbmVkIHdpdGggR1BHIgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE4MQotbXNnaWQgIlVwZGF0ZSB0aGUgb2JqZWN0IG5hbWUgc3RvcmVkIGluIGEgcmVmIHNhZmVseSIKK21zZ2lkICJDcmVhdGVzIGEgdGVtcG9yYXJ5IGZpbGUgd2l0aCBhIGJsb2IncyBjb250ZW50cyIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxODIKLW1zZ2lkICJVcGRhdGUgYXV4aWxpYXJ5IGluZm8gZmlsZSB0byBoZWxwIGR1bWIgc2VydmVycyIKK21zZ2lkICJVbnBhY2sgb2JqZWN0cyBmcm9tIGEgcGFja2VkIGFyY2hpdmUiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTgzCi1tc2dpZCAiU2VuZCBhcmNoaXZlIGJhY2sgdG8gZ2l0LWFyY2hpdmUiCittc2dpZCAiUmVnaXN0ZXIgZmlsZSBjb250ZW50cyBpbiB0aGUgd29ya2luZyB0cmVlIHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxODQKLW1zZ2lkICJTZW5kIG9iamVjdHMgcGFja2VkIGJhY2sgdG8gZ2l0LWZldGNoLXBhY2siCittc2dpZCAiVXBkYXRlIHRoZSBvYmplY3QgbmFtZSBzdG9yZWQgaW4gYSByZWYgc2FmZWx5IgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE4NQotbXNnaWQgIlNob3cgYSBHaXQgbG9naWNhbCB2YXJpYWJsZSIKK21zZ2lkICJVcGRhdGUgYXV4aWxpYXJ5IGluZm8gZmlsZSB0byBoZWxwIGR1bWIgc2VydmVycyIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxODYKLW1zZ2lkICJDaGVjayB0aGUgR1BHIHNpZ25hdHVyZSBvZiBjb21taXRzIgorbXNnaWQgIlNlbmQgYXJjaGl2ZSBiYWNrIHRvIGdpdC1hcmNoaXZlIgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE4NwotbXNnaWQgIlZhbGlkYXRlIHBhY2tlZCBHaXQgYXJjaGl2ZSBmaWxlcyIKK21zZ2lkICJTZW5kIG9iamVjdHMgcGFja2VkIGJhY2sgdG8gZ2l0LWZldGNoLXBhY2siCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTg4Ci1tc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgdGFncyIKK21zZ2lkICJTaG93IGEgR2l0IGxvZ2ljYWwgdmFyaWFibGUiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTg5Ci1tc2dpZCAiR2l0IHdlYiBpbnRlcmZhY2UgKHdlYiBmcm9udGVuZCB0byBHaXQgcmVwb3NpdG9yaWVzKSIKK21zZ2lkICJDaGVjayB0aGUgR1BHIHNpZ25hdHVyZSBvZiBjb21taXRzIgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE5MAotbXNnaWQgIlNob3cgbG9ncyB3aXRoIGRpZmZlcmVuY2UgZWFjaCBjb21taXQgaW50cm9kdWNlcyIKK21zZ2lkICJWYWxpZGF0ZSBwYWNrZWQgR2l0IGFyY2hpdmUgZmlsZXMiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTkxCi1tc2dpZCAiTWFuYWdlIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMiCittc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgdGFncyIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxOTIKLW1zZ2lkICJDcmVhdGUgYSB0cmVlIG9iamVjdCBmcm9tIHRoZSBjdXJyZW50IGluZGV4IgorbXNnaWQgIkdpdCB3ZWIgaW50ZXJmYWNlICh3ZWIgZnJvbnRlbmQgdG8gR2l0IHJlcG9zaXRvcmllcykiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTkzCi1tc2dpZCAiRGVmaW5pbmcgYXR0cmlidXRlcyBwZXIgcGF0aCIKK21zZ2lkICJTaG93IGxvZ3Mgd2l0aCBkaWZmZXJlbmNlIGVhY2ggY29tbWl0IGludHJvZHVjZXMiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTk0Ci1tc2dpZCAiR2l0IGNvbW1hbmQtbGluZSBpbnRlcmZhY2UgYW5kIGNvbnZlbnRpb25zIgorbXNnaWQgIk1hbmFnZSBtdWx0aXBsZSB3b3JraW5nIHRyZWVzIgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE5NQotbXNnaWQgIkEgR2l0IGNvcmUgdHV0b3JpYWwgZm9yIGRldmVsb3BlcnMiCittc2dpZCAiQ3JlYXRlIGEgdHJlZSBvYmplY3QgZnJvbSB0aGUgY3VycmVudCBpbmRleCIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxOTYKLW1zZ2lkICJHaXQgZm9yIENWUyB1c2VycyIKK21zZ2lkICJEZWZpbmluZyBhdHRyaWJ1dGVzIHBlciBwYXRoIgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE5NwotbXNnaWQgIlR3ZWFraW5nIGRpZmYgb3V0cHV0IgorbXNnaWQgIkdpdCBjb21tYW5kLWxpbmUgaW50ZXJmYWNlIGFuZCBjb252ZW50aW9ucyIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxOTgKLW1zZ2lkICJBIHVzZWZ1bCBtaW5pbXVtIHNldCBvZiBjb21tYW5kcyBmb3IgRXZlcnlkYXkgR2l0IgorbXNnaWQgIkEgR2l0IGNvcmUgdHV0b3JpYWwgZm9yIGRldmVsb3BlcnMiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTk5Ci1tc2dpZCAiQSBHaXQgR2xvc3NhcnkiCittc2dpZCAiR2l0IGZvciBDVlMgdXNlcnMiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MjAwCi1tc2dpZCAiSG9va3MgdXNlZCBieSBHaXQiCittc2dpZCAiVHdlYWtpbmcgZGlmZiBvdXRwdXQiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MjAxCi1tc2dpZCAiU3BlY2lmaWVzIGludGVudGlvbmFsbHkgdW50cmFja2VkIGZpbGVzIHRvIGlnbm9yZSIKK21zZ2lkICJBIHVzZWZ1bCBtaW5pbXVtIHNldCBvZiBjb21tYW5kcyBmb3IgRXZlcnlkYXkgR2l0IgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjIwMgotbXNnaWQgIkRlZmluaW5nIHN1Ym1vZHVsZSBwcm9wZXJ0aWVzIgorbXNnaWQgIkEgR2l0IEdsb3NzYXJ5IgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjIwMwotbXNnaWQgIkdpdCBuYW1lc3BhY2VzIgorbXNnaWQgIkhvb2tzIHVzZWQgYnkgR2l0IgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjIwNAotbXNnaWQgIkdpdCBSZXBvc2l0b3J5IExheW91dCIKK21zZ2lkICJTcGVjaWZpZXMgaW50ZW50aW9uYWxseSB1bnRyYWNrZWQgZmlsZXMgdG8gaWdub3JlIgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjIwNQotbXNnaWQgIlNwZWNpZnlpbmcgcmV2aXNpb25zIGFuZCByYW5nZXMgZm9yIEdpdCIKK21zZ2lkICJEZWZpbmluZyBzdWJtb2R1bGUgcHJvcGVydGllcyIKIG1zZ3N0ciAiIgogCiAjOiBjb21tYW5kLWxpc3QuaDoyMDYKLW1zZ2lkICJBIHR1dG9yaWFsIGludHJvZHVjdGlvbiB0byBHaXQ6IHBhcnQgdHdvIgorbXNnaWQgIkdpdCBuYW1lc3BhY2VzIgogbXNnc3RyICIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjIwNwotbXNnaWQgIkEgdHV0b3JpYWwgaW50cm9kdWN0aW9uIHRvIEdpdCIKK21zZ2lkICJHaXQgUmVwb3NpdG9yeSBMYXlvdXQiCiBtc2dzdHIgIiIKIAogIzogY29tbWFuZC1saXN0Lmg6MjA4Ci1tc2dpZCAiQW4gb3ZlcnZpZXcgb2YgcmVjb21tZW5kZWQgd29ya2Zsb3dzIHdpdGggR2l0IgorbXNnaWQgIlNwZWNpZnlpbmcgcmV2aXNpb25zIGFuZCByYW5nZXMgZm9yIEdpdCIKIG1zZ3N0ciAiIgogCi0jOiByZXJlcmUuaDo0NAotbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKKyM6IGNvbW1hbmQtbGlzdC5oOjIwOQorbXNnaWQgIk1vdW50aW5nIG9uZSByZXBvc2l0b3J5IGluc2lkZSBhbm90aGVyIgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMAorbXNnaWQgIkEgdHV0b3JpYWwgaW50cm9kdWN0aW9uIHRvIEdpdDogcGFydCB0d28iCittc2dzdHIgIiIKKworIzogY29tbWFuZC1saXN0Lmg6MjExCittc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0IgorbXNnc3RyICIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMgorbXNnaWQgIkFuIG92ZXJ2aWV3IG9mIHJlY29tbWVuZGVkIHdvcmtmbG93cyB3aXRoIEdpdCIKIG1zZ3N0ciAiIgogCiAjOiBnaXQtYmlzZWN0LnNoOjU0CkBAIC0xODA4NCwxNjAgKzIxNjY3LDcyIEBACiBtc2dpZCAiRG8geW91IHdhbnQgbWUgdG8gZG8gaXQgZm9yIHlvdSBbWS9uXT8gIgogbXNnc3RyICIiCiAKLSM6IGdpdC1iaXNlY3Quc2g6MTIxCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJ1bnJlY29nbmlzZWQgb3B0aW9uOiAnJGFyZyciCi1tc2dzdHIgIiIKLQotIzogZ2l0LWJpc2VjdC5zaDoxMjUKLSMsIHNoLWZvcm1hdAotbXNnaWQgIickYXJnJyBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYSB2YWxpZCByZXZpc2lvbiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYmlzZWN0LnNoOjE1NAotbXNnaWQgIkJhZCBIRUFEIC0gSSBuZWVkIGEgSEVBRCIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYmlzZWN0LnNoOjE2NwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIkNoZWNraW5nIG91dCAnJHN0YXJ0X2hlYWQnIGZhaWxlZC4gVHJ5ICdnaXQgYmlzZWN0IHJlc2V0IDx2YWxpZC1icmFuY2g+Jy4iCi1tc2dzdHIgIiIKLQotIzogZ2l0LWJpc2VjdC5zaDoxNzcKLW1zZ2lkICJ3b24ndCBiaXNlY3Qgb24gY2ctc2VlaydlZCB0cmVlIgotbXNnc3RyICIiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTgxCi1tc2dpZCAiQmFkIEhFQUQgLSBzdHJhbmdlIHN5bWJvbGljIHJlZiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYmlzZWN0LnNoOjIzMwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQmFkIGJpc2VjdF93cml0ZSBhcmd1bWVudDogJHN0YXRlIgotbXNnc3RyICIiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MjQ2CisjOiBnaXQtYmlzZWN0LnNoOjEwMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQmFkIHJldiBpbnB1dDogJGFyZyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYmlzZWN0LnNoOjI2NQorIzogZ2l0LWJpc2VjdC5zaDoxMjEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRiaXNlY3RlZF9oZWFkIgogbXNnc3RyICIiCiAKLSM6IGdpdC1iaXNlY3Quc2g6Mjc0CisjOiBnaXQtYmlzZWN0LnNoOjEzMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQmFkIHJldiBpbnB1dDogJHJldiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYmlzZWN0LnNoOjI4MworIzogZ2l0LWJpc2VjdC5zaDoxMzkKICMsIHNoLWZvcm1hdAogbXNnaWQgIidnaXQgYmlzZWN0ICRURVJNX0JBRCcgY2FuIHRha2Ugb25seSBvbmUgYXJndW1lbnQuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1iaXNlY3Quc2g6MzA2Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJXYXJuaW5nOiBiaXNlY3Rpbmcgb25seSB3aXRoIGEgJFRFUk1fQkFEIGNvbW1pdC4iCi1tc2dzdHIgIiIKLQotIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtZXSBhbmQgW25dIGluIHlvdXIKLSMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKLSMuIGF0IHRoaXMgcG9pbnQuCi0jOiBnaXQtYmlzZWN0LnNoOjMxMgotbXNnaWQgIkFyZSB5b3Ugc3VyZSBbWS9uXT8gIgotbXNnc3RyICIiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MzI0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iWW91IG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJGJhZF9zeW4gYW5kIG9uZSAkZ29vZF9zeW4gcmV2aXNpb24uXG4iCi0iKFlvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGFuZCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgZm9yIHRoYXQuKSIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYmlzZWN0LnNoOjMyNwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgotIllvdSB0aGVuIG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJGdvb2Rfc3luIGFuZCBvbmUgJGJhZF9zeW4gcmV2aXNpb24uXG4iCi0iKFlvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGFuZCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgZm9yIHRoYXQuKSIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYmlzZWN0LnNoOjM5OCBnaXQtYmlzZWN0LnNoOjUxMgotbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYmlzZWN0LnNoOjQwNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJyRpbnZhbGlkJyBpcyBub3QgYSB2YWxpZCBjb21taXQiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWJpc2VjdC5zaDo0MTQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJDb3VsZCBub3QgY2hlY2sgb3V0IG9yaWdpbmFsIEhFQUQgJyRicmFuY2gnLlxuIgotIlRyeSAnZ2l0IGJpc2VjdCByZXNldCA8Y29tbWl0PicuIgotbXNnc3RyICIiCi0KLSM6IGdpdC1iaXNlY3Quc2g6NDIyCisjOiBnaXQtYmlzZWN0LnNoOjIwOQogbXNnaWQgIk5vIGxvZ2ZpbGUgZ2l2ZW4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWJpc2VjdC5zaDo0MjMKKyM6IGdpdC1iaXNlY3Quc2g6MjEwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCAkZmlsZSBmb3IgcmVwbGF5aW5nIgogbXNnc3RyICIiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDQ0CisjOiBnaXQtYmlzZWN0LnNoOjIzMgogbXNnaWQgIj8/IHdoYXQgYXJlIHlvdSB0YWxraW5nIGFib3V0PyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ1MworIzogZ2l0LWJpc2VjdC5zaDoyNDEKIG1zZ2lkICJiaXNlY3QgcnVuIGZhaWxlZDogbm8gY29tbWFuZCBwcm92aWRlZC4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NTgKKyM6IGdpdC1iaXNlY3Quc2g6MjQ2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJydW5uaW5nICRjb21tYW5kIgogbXNnc3RyICIiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDY1CisjOiBnaXQtYmlzZWN0LnNoOjI1MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogImJpc2VjdCBydW4gZmFpbGVkOlxuIgogImV4aXQgY29kZSAkcmVzIGZyb20gJyRjb21tYW5kJyBpcyA8IDAgb3IgPj0gMTI4IgogbXNnc3RyICIiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDkxCisjOiBnaXQtYmlzZWN0LnNoOjI3OQogbXNnaWQgImJpc2VjdCBydW4gY2Fubm90IGNvbnRpbnVlIGFueSBtb3JlIgogbXNnc3RyICIiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDk3CisjOiBnaXQtYmlzZWN0LnNoOjI4NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogImJpc2VjdCBydW4gZmFpbGVkOlxuIgogIidiaXNlY3Rfc3RhdGUgJHN0YXRlJyBleGl0ZWQgd2l0aCBlcnJvciBjb2RlICRyZXMiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWJpc2VjdC5zaDo1MDQKKyM6IGdpdC1iaXNlY3Quc2g6MjkyCiBtc2dpZCAiYmlzZWN0IHJ1biBzdWNjZXNzIgogbXNnc3RyICIiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NTMzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJJbnZhbGlkIGNvbW1hbmQ6IHlvdSdyZSBjdXJyZW50bHkgaW4gYSAkVEVSTV9CQUQvJFRFUk1fR09PRCBiaXNlY3QuIgotbXNnc3RyICIiCi0KLSM6IGdpdC1iaXNlY3Quc2g6NTY3Ci1tc2dpZCAibm8gdGVybXMgZGVmaW5lZCIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYmlzZWN0LnNoOjU4NAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotImludmFsaWQgYXJndW1lbnQgJGFyZyBmb3IgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgotIlN1cHBvcnRlZCBvcHRpb25zIGFyZTogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCBhbmQgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKKyM6IGdpdC1iaXNlY3Quc2g6MzAwCittc2dpZCAiV2UgYXJlIG5vdCBiaXNlY3RpbmcuIgogbXNnc3RyICIiCiAKICM6IGdpdC1tZXJnZS1vY3RvcHVzLnNoOjQ2CkBAIC0xODI3OCwyNzYgKzIxNzczLDEyOCBAQAogbXNnaWQgIlNpbXBsZSBtZXJnZSBkaWQgbm90IHdvcmssIHRyeWluZyBhdXRvbWF0aWMgbWVyZ2UuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQzNAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IG1vdmUgYmFjayB0byAkaGVhZF9uYW1lIgotbXNnc3RyICIiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQ2MAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIkl0IHNlZW1zIHRoYXQgdGhlcmUgaXMgYWxyZWFkeSBhICRzdGF0ZV9kaXJfYmFzZSBkaXJlY3RvcnksIGFuZFxuIgotIkkgd29uZGVyIGlmIHlvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIHJlYmFzZS4gIElmIHRoYXQgaXMgdGhlXG4iCi0iY2FzZSwgcGxlYXNlIHRyeVxuIgotIlx0JGNtZF9saXZlX3JlYmFzZVxuIgotIklmIHRoYXQgaXMgbm90IHRoZSBjYXNlLCBwbGVhc2VcbiIKLSJcdCRjbWRfY2xlYXJfc3RhbGVfcmViYXNlXG4iCi0iYW5kIHJ1biBtZSBhZ2Fpbi4gIEkgYW0gc3RvcHBpbmcgaW4gY2FzZSB5b3Ugc3RpbGwgaGF2ZSBzb21ldGhpbmdcbiIKLSJ2YWx1YWJsZSB0aGVyZS4iCi1tc2dzdHIgIiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTI1Ci1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXNpZ25vZmYnIHdpdGggJy0tcHJlc2VydmUtbWVyZ2VzJyIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1NzAKLSMsIHNoLWZvcm1hdAotbXNnaWQgImludmFsaWQgdXBzdHJlYW0gJyR1cHN0cmVhbV9uYW1lJyIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1OTQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiRvbnRvX25hbWU6IHRoZXJlIGFyZSBtb3JlIHRoYW4gb25lIG1lcmdlIGJhc2VzIgotbXNnc3RyICIiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU5NyBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2MDEKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiRvbnRvX25hbWU6IHRoZXJlIGlzIG5vIG1lcmdlIGJhc2UiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjA2Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJEb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIGNvbW1pdDogJG9udG9fbmFtZSIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2MzIKLSMsIHNoLWZvcm1hdAotbXNnaWQgImZhdGFsOiBubyBzdWNoIGJyYW5jaC9jb21taXQgJyRicmFuY2hfbmFtZSciCi1tc2dzdHIgIiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjcwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJHN0YXNoX2FiYnJldiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2OTkKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkN1cnJlbnQgYnJhbmNoICRicmFuY2hfbmFtZSBpcyB1cCB0byBkYXRlLiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MDkKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkN1cnJlbnQgYnJhbmNoICRicmFuY2hfbmFtZSBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MjMKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkNoYW5nZXMgdG8gJG9udG86IgotbXNnc3RyICIiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjcyNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ2hhbmdlcyBmcm9tICRtYiB0byAkb250bzoiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzM2Ci1tc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uIgotbXNnc3RyICIiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjc0NgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRmFzdC1mb3J3YXJkZWQgJGJyYW5jaF9uYW1lIHRvICRvbnRvX25hbWUuIgotbXNnc3RyICIiCi0KLSM6IGdpdC1zdGFzaC5zaDo2MQotbXNnaWQgImdpdCBzdGFzaCBjbGVhciB3aXRoIHBhcmFtZXRlcnMgaXMgdW5pbXBsZW1lbnRlZCIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtc3Rhc2guc2g6MTA4Ci1tc2dpZCAiWW91IGRvIG5vdCBoYXZlIHRoZSBpbml0aWFsIGNvbW1pdCB5ZXQiCi1tc2dzdHIgIiIKLQotIzogZ2l0LXN0YXNoLnNoOjEyMwotbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IGluZGV4IHN0YXRlIgotbXNnc3RyICIiCi0KLSM6IGdpdC1zdGFzaC5zaDoxMzgKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgdW50cmFja2VkIGZpbGVzIgotbXNnc3RyICIiCi0KLSM6IGdpdC1zdGFzaC5zaDoxNTggZ2l0LXN0YXNoLnNoOjE3MQotbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHdvcmt0cmVlIHN0YXRlIgotbXNnc3RyICIiCi0KLSM6IGdpdC1zdGFzaC5zaDoxNzUKLW1zZ2lkICJObyBjaGFuZ2VzIHNlbGVjdGVkIgotbXNnc3RyICIiCi0KLSM6IGdpdC1zdGFzaC5zaDoxNzgKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjIxCiBtc2dpZCAiQ2Fubm90IHJlbW92ZSB0ZW1wb3JhcnkgaW5kZXggKGNhbid0IGhhcHBlbikiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN0YXNoLnNoOjE5MQotbXNnaWQgIkNhbm5vdCByZWNvcmQgd29ya2luZyB0cmVlIHN0YXRlIgotbXNnc3RyICIiCi0KLSM6IGdpdC1zdGFzaC5zaDoyMjkKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjcyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgdXBkYXRlICRyZWZfc3Rhc2ggd2l0aCAkd19jb21taXQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN0YXNoLnNoOjI4MQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMjQKICMsIHNoLWZvcm1hdAogbXNnaWQgImVycm9yOiB1bmtub3duIG9wdGlvbiBmb3IgJ3N0YXNoIHB1c2gnOiAkb3B0aW9uIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdGFzaC5zaDoyOTUKLW1zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgotbXNnc3RyICIiCi0KLSM6IGdpdC1zdGFzaC5zaDozMDMKLW1zZ2lkICJObyBsb2NhbCBjaGFuZ2VzIHRvIHNhdmUiCi1tc2dzdHIgIiIKLQotIzogZ2l0LXN0YXNoLnNoOjMwOAotbXNnaWQgIkNhbm5vdCBpbml0aWFsaXplIHN0YXNoIgotbXNnc3RyICIiCi0KLSM6IGdpdC1zdGFzaC5zaDozMTIKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBzdGF0dXMiCi1tc2dzdHIgIiIKLQotIzogZ2l0LXN0YXNoLnNoOjMxMworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlNhdmVkIHdvcmtpbmcgZGlyZWN0b3J5IGFuZCBpbmRleCBzdGF0ZSAkc3Rhc2hfbXNnIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdGFzaC5zaDozNDIKLW1zZ2lkICJDYW5ub3QgcmVtb3ZlIHdvcmt0cmVlIGNoYW5nZXMiCi1tc2dzdHIgIiIKLQotIzogZ2l0LXN0YXNoLnNoOjQ5MAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1MzYKICMsIHNoLWZvcm1hdAogbXNnaWQgInVua25vd24gb3B0aW9uOiAkb3B0IgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdGFzaC5zaDo1MDMKLW1zZ2lkICJObyBzdGFzaCBlbnRyaWVzIGZvdW5kLiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtc3Rhc2guc2g6NTEwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU1NgogIywgc2gtZm9ybWF0CiBtc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDogJFJFViIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc3Rhc2guc2g6NTI1CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU3MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJHJlZmVyZW5jZSBpcyBub3QgYSB2YWxpZCByZWZlcmVuY2UiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN0YXNoLnNoOjU1MworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1OTkKICMsIHNoLWZvcm1hdAogbXNnaWQgIickYXJncycgaXMgbm90IGEgc3Rhc2gtbGlrZSBjb21taXQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN0YXNoLnNoOjU2NAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MTAKICMsIHNoLWZvcm1hdAogbXNnaWQgIickYXJncycgaXMgbm90IGEgc3Rhc2ggcmVmZXJlbmNlIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdGFzaC5zaDo1NzIKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjE4CiBtc2dpZCAidW5hYmxlIHRvIHJlZnJlc2ggaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN0YXNoLnNoOjU3NgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MjIKIG1zZ2lkICJDYW5ub3QgYXBwbHkgYSBzdGFzaCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN0YXNoLnNoOjU4NAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MzAKIG1zZ2lkICJDb25mbGljdHMgaW4gaW5kZXguIFRyeSB3aXRob3V0IC0taW5kZXguIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdGFzaC5zaDo1ODYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjMyCiBtc2dpZCAiQ291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc3Rhc2guc2g6NTk1CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjY0MQogbXNnaWQgIkNvdWxkIG5vdCByZXN0b3JlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHN0YXNoIGVudHJ5IgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdGFzaC5zaDo2MjAKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjY2CiBtc2dpZCAiQ2Fubm90IHVuc3RhZ2UgbW9kaWZpZWQgZmlsZXMiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN0YXNoLnNoOjYzNQotbXNnaWQgIkluZGV4IHdhcyBub3QgdW5zdGFzaGVkLiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtc3Rhc2guc2g6NjQ5Ci1tc2dpZCAiVGhlIHN0YXNoIGVudHJ5IGlzIGtlcHQgaW4gY2FzZSB5b3UgbmVlZCBpdCBhZ2Fpbi4iCi1tc2dzdHIgIiIKLQotIzogZ2l0LXN0YXNoLnNoOjY1OAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDQKICMsIHNoLWZvcm1hdAogbXNnaWQgIkRyb3BwZWQgJHtSRVZ9ICgkcykiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN0YXNoLnNoOjY1OQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiR7UkVWfTogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN0YXNoLnNoOjY2NwotbXNnaWQgIk5vIGJyYW5jaCBuYW1lIHNwZWNpZmllZCIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtc3Rhc2guc2g6NzQ2CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjc5MgogbXNnaWQgIihUbyByZXN0b3JlIHRoZW0gdHlwZSBcImdpdCBzdGFzaCBhcHBseVwiKSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjE5OAorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMDMKIG1zZ2lkICJSZWxhdGl2ZSBwYXRoIGNhbiBvbmx5IGJlIHVzZWQgZnJvbSB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjIwOAorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMTMKICMsIHNoLWZvcm1hdAogbXNnaWQgInJlcG8gVVJMOiAnJHJlcG8nIG11c3QgYmUgYWJzb2x1dGUgb3IgYmVnaW4gd2l0aCAuL3wuLi8iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMjcKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjMyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGluIHRoZSBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjIzMAorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzUKICMsIHNoLWZvcm1hdAogbXNnaWQgIickc21fcGF0aCcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGluZGV4IGFuZCBpcyBub3QgYSBzdWJtb2R1bGUiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjQyCiAjLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iVGhlIGZvbGxvd2luZyBwYXRoIGlzIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczpcbiIKLSIkc21fcGF0aFxuIgotIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIGl0LiIKK21zZ2lkICInJHNtX3BhdGgnIGRvZXMgbm90IGhhdmUgYSBjb21taXQgY2hlY2tlZCBvdXQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNTkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjczCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJBZGRpbmcgZXhpc3RpbmcgcmVwbyBhdCAnJHNtX3BhdGgnIHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI2MQorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzUKICMsIHNoLWZvcm1hdAogbXNnaWQgIickc21fcGF0aCcgYWxyZWFkeSBleGlzdHMgYW5kIGlzIG5vdCBhIHZhbGlkIGdpdCByZXBvIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjY5CisjOiBnaXQtc3VibW9kdWxlLnNoOjI4MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiQSBnaXQgZGlyZWN0b3J5IGZvciAnJHNtX25hbWUnIGlzIGZvdW5kIGxvY2FsbHkgd2l0aCByZW1vdGUocyk6IgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjcxCisjOiBnaXQtc3VibW9kdWxlLnNoOjI4NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3YW50IHRvIHJldXNlIHRoaXMgbG9jYWwgZ2l0IGRpcmVjdG9yeSBpbnN0ZWFkIG9mIGNsb25pbmcgYWdhaW4gZnJvbVxuIgpAQCAtMTg1NTgsMTIwICsyMTkwNSwxMjIgQEAKICJvcHRpb24uIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6Mjc3CisjOiBnaXQtc3VibW9kdWxlLnNoOjI5MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiUmVhY3RpdmF0aW5nIGxvY2FsIGdpdCBkaXJlY3RvcnkgZm9yIHN1Ym1vZHVsZSAnJHNtX25hbWUnLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI4OQorIzogZ2l0LXN1Ym1vZHVsZS5zaDozMDMKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBjaGVja291dCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI5NAorIzogZ2l0LXN1Ym1vZHVsZS5zaDozMDgKICMsIHNoLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBhZGQgc3VibW9kdWxlICckc21fcGF0aCciCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDozMDMKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MzE3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVnaXN0ZXIgc3VibW9kdWxlICckc21fcGF0aCciCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NjMKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NTkwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gZmluZCBjdXJyZW50IHJldmlzaW9uIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTczCisjOiBnaXQtc3VibW9kdWxlLnNoOjYwMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGZldGNoIGluIHN1Ym1vZHVsZSBwYXRoICckc21fcGF0aCciCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NzgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjA1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiVW5hYmxlIHRvIGZpbmQgY3VycmVudCAke3JlbW90ZV9uYW1lfS8ke2JyYW5jaH0gcmV2aXNpb24gaW4gc3VibW9kdWxlIHBhdGggIgogIickc21fcGF0aCciCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1OTYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjIzCiAjLCBzaC1mb3JtYXQKLW1zZ2lkICJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCittc2dpZCAiIgorIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzsgdHJ5aW5nIHRvIGRpcmVjdGx5IGZldGNoICIKKyIkc2hhMToiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDIKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjI5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiRmV0Y2hlZCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJywgYnV0IGl0IGRpZCBub3QgY29udGFpbiAkc2hhMS4gIgogIkRpcmVjdCBmZXRjaGluZyBvZiB0aGF0IGNvbW1pdCBmYWlsZWQuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjA5CisjOiBnaXQtc3VibW9kdWxlLnNoOjYzNgogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGNoZWNrb3V0ICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MTAKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjM3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogY2hlY2tlZCBvdXQgJyRzaGExJyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYxNAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byByZWJhc2UgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYxNQorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDIKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiByZWJhc2VkIGludG8gJyRzaGExJyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYyMAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDcKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBtZXJnZSAnJHNoYTEnIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjIxCisjOiBnaXQtc3VibW9kdWxlLnNoOjY0OAogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IG1lcmdlZCBpbiAnJHNoYTEnIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjI2CisjOiBnaXQtc3VibW9kdWxlLnNoOjY1MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRXhlY3V0aW9uIG9mICckY29tbWFuZCAkc2hhMScgZmFpbGVkIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjI3CisjOiBnaXQtc3VibW9kdWxlLnNoOjY1NAogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6ICckY29tbWFuZCAkc2hhMSciCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NTgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Njg1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NzU0CisjOiBnaXQtc3VibW9kdWxlLnNoOjg5NgogbXNnaWQgIlRoZSAtLWNhY2hlZCBvcHRpb24gY2Fubm90IGJlIHVzZWQgd2l0aCB0aGUgLS1maWxlcyBvcHRpb24iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MDYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTQ4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG1vZGUgJG1vZF9kc3QiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MjYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTY4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdCAkc2hhMV9zcmMiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MjkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTcxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdCAkc2hhMV9kc3QiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MzIKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTc0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdHMgJHNoYTFfc3JjIGFuZCAkc2hhMV9kc3QiCiBtc2dzdHIgIiIKQEAgLTE4NjgxLDEyICsyMjAzMCwyMSBAQAogbXNnaWQgIlNlZSBnaXQtJHtjbWR9KDEpIGZvciBkZXRhaWxzLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTM2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTA5Cittc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guIgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxMTIKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBzdG9yZSAkc3Rhc2hfc2hhMSIKK21zZ3N0ciAiIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJSZWJhc2luZyAoJG5ld19jb3VudC8kdG90YWwpIgogbXNnc3RyICIiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNTIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMDcKIG1zZ2lkICIiCiAiXG4iCiAiQ29tbWFuZHM6XG4iCkBAIC0xODcwNyw3ICsyMjA2NSw3IEBACiAiVGhlc2UgbGluZXMgY2FuIGJlIHJlLW9yZGVyZWQ7IHRoZXkgYXJlIGV4ZWN1dGVkIGZyb20gdG9wIHRvIGJvdHRvbS5cbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjE1CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjcwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGNhbiBhbWVuZCB0aGUgY29tbWl0IG5vdywgd2l0aFxuIgpAQCAtMTg3MTksODMgKzIyMDc3LDgzIEBACiAiXHRnaXQgcmViYXNlIC0tY29udGludWUiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI0MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI5NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJHNoYTE6IG5vdCBhIGNvbW1pdCB0aGF0IGNhbiBiZSBwaWNrZWQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI3OQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjMzNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBjb21taXQgbmFtZTogJHNoYTEiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjMwOQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2NAogbXNnaWQgIkNhbm5vdCB3cml0ZSBjdXJyZW50IGNvbW1pdCdzIHJlcGxhY2VtZW50IHNoYTEiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFzdC1mb3J3YXJkIHRvICRzaGExIgogbXNnc3RyICIiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNjIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MTcKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBmYXN0LWZvcndhcmQgdG8gJHNoYTEiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM3MQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQyNgogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IG1vdmUgSEVBRCB0byAkZmlyc3RfcGFyZW50IgogbXNnc3RyICIiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNzYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MzEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIHNxdWFzaCBhIG1lcmdlOiAkc2hhMSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mzk0CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQ5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJFcnJvciByZWRvaW5nIG1lcmdlICRzaGExIgogbXNnc3RyICIiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MDMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NTgKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBwaWNrICRzaGExIgogbXNnc3RyICIiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MTIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NjcKICMsIHNoLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgdGhlIGNvbW1pdCBtZXNzYWdlICMke259OiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDE3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDcyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJUaGUgY29tbWl0IG1lc3NhZ2UgIyR7bn0gd2lsbCBiZSBza2lwcGVkOiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDI4CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDgzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJGNvdW50IGNvbW1pdC4iCiBtc2dpZF9wbHVyYWwgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAkY291bnQgY29tbWl0cy4iCiBtc2dzdHJbMF0gIiIKIG1zZ3N0clsxXSAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDM3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDkyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgd3JpdGUgJGZpeHVwX21zZyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDk1CiBtc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mIDIgY29tbWl0cy4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ4MSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTI0Ci0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTI3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTM2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1NzkKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1ODIKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBhcHBseSAkc2hhMS4uLiAkcmVzdCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTU2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjExCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IGFtZW5kIGNvbW1pdCBhZnRlciBzdWNjZXNzZnVsbHkgcGlja2luZyAkc2hhMS4uLiAkcmVzdFxuIgpAQCAtMTg4MDUsMzEgKzIyMTYzLDMxIEBACiAieW91IGFyZSBhYmxlIHRvIHJld29yZCB0aGUgY29tbWl0LiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTcxCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjI2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdG9wcGVkIGF0ICRzaGExX2FiYnJldi4uLiAkcmVzdCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTg2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJyRzcXVhc2hfc3R5bGUnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYyOAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY4MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRXhlY3V0aW5nOiAkcmVzdCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjM2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJFeGVjdXRpb24gZmFpbGVkOiAkcmVzdCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjM4CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjkzCiBtc2dpZCAiYW5kIG1hZGUgY2hhbmdlcyB0byB0aGUgaW5kZXggYW5kL29yIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY0MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY5NQogbXNnaWQgIiIKICJZb3UgY2FuIGZpeCB0aGUgcHJvYmxlbSwgYW5kIHRoZW4gcnVuXG4iCiAiXG4iCkBAIC0xODgzNyw3ICsyMjE5NSw3IEBACiBtc2dzdHIgIiIKIAogIy4gVFJBTlNMQVRPUlM6IGFmdGVyIHRoZXNlIGxpbmVzIGlzIGEgY29tbWFuZCB0byBiZSBpc3N1ZWQgYnkgdGhlIHVzZXIKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NTMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MDgKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJFeGVjdXRpb24gc3VjY2VlZGVkOiAkcmVzdFxuIgpAQCAtMTg4NDcsMjUgKzIyMjA1LDI1IEBACiAiXHRnaXQgcmViYXNlIC0tY29udGludWUiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY2NAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcxOQogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5rbm93biBjb21tYW5kOiAkY29tbWFuZCAkc2hhMSAkcmVzdCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjY1CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzIwCiBtc2dpZCAiUGxlYXNlIGZpeCB0aGlzIHVzaW5nICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJy4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcwMAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc1NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VjY2Vzc2Z1bGx5IHJlYmFzZWQgYW5kIHVwZGF0ZWQgJGhlYWRfbmFtZS4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc1NworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgxMgogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgQ0hFUlJZX1BJQ0tfSEVBRCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzYyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODE3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuXG4iCkBAIC0xODg4Myw1MCArMjIyNDEsNTQgQEAKICIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NzkKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MzQKIG1zZ2lkICJFcnJvciB0cnlpbmcgdG8gZmluZCB0aGUgYXV0aG9yIGlkZW50aXR5IHRvIGFtZW5kIGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzg0CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODM5CiBtc2dpZCAiIgogIllvdSBoYXZlIHVuY29tbWl0dGVkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuIFBsZWFzZSBjb21taXQgdGhlbVxuIgogImZpcnN0IGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJyBhZ2Fpbi4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc4OSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzkzCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NDgKIG1zZ2lkICJDb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODI0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MTAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NzkgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk2NQogbXNnaWQgIkNvdWxkIG5vdCBleGVjdXRlIGVkaXRvciIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ1CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTAwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgY2hlY2tvdXQgJHN3aXRjaF90byIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODUyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTA3CiBtc2dpZCAiTm8gSEVBRD8iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1MworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwOAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJHN0YXRlX2RpciIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODU2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTExCiBtc2dpZCAiQ291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg4OAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiUmViYXNlICRzaG9ydHJldmlzaW9ucyBvbnRvICRzaG9ydG9udG8gKCR0b2RvY291bnQgY29tbWFuZCkiCiBtc2dpZF9wbHVyYWwgIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgb250byAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmRzKSIKIG1zZ3N0clswXSAiIgogbXNnc3RyWzFdICIiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDIgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0NworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk1NQorbXNnaWQgIk5vdGUgdGhhdCBlbXB0eSBjb21taXRzIGFyZSBjb21tZW50ZWQgb3V0IgorbXNnc3RyICIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5OTcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEwMDIKIG1zZ2lkICJDb3VsZCBub3QgaW5pdCByZXdyaXR0ZW4gY29tbWl0cyIKIG1zZ3N0ciAiIgogCkBAIC0xODkzNSwxNzMgKzIyMjk3LDEwOSBAQAogbXNnaWQgInVzYWdlOiAkZGFzaGxlc3MgJFVTQUdFIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoxOTAKKyM6IGdpdC1zaC1zZXR1cC5zaDoxOTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBjaGRpciB0byAkY2R1cCwgdGhlIHRvcGxldmVsIG9mIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjE5OSBnaXQtc2gtc2V0dXAuc2g6MjA2CisjOiBnaXQtc2gtc2V0dXAuc2g6MjAwIGdpdC1zaC1zZXR1cC5zaDoyMDcKICMsIHNoLWZvcm1hdAogbXNnaWQgImZhdGFsOiAkcHJvZ3JhbV9uYW1lIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgYSB3b3JraW5nIHRyZWUuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjAKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjEKIG1zZ2lkICJDYW5ub3QgcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjIzCisjOiBnaXQtc2gtc2V0dXAuc2g6MjI0CiBtc2dpZCAiQ2Fubm90IHJld3JpdGUgYnJhbmNoZXM6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjYKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjcKIG1zZ2lkICJDYW5ub3QgcHVsbCB3aXRoIHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjIyOQorIzogZ2l0LXNoLXNldHVwLnNoOjIzMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90ICRhY3Rpb246IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyNDIKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNDMKIG1zZ2lkICJDYW5ub3QgcmViYXNlOiBZb3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyNDUKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNDYKIG1zZ2lkICJDYW5ub3QgcHVsbCB3aXRoIHJlYmFzZTogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQ4CisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJGFjdGlvbjogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjUyCisjOiBnaXQtc2gtc2V0dXAuc2g6MjUzCiBtc2dpZCAiQWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDozNzIKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzMKIG1zZ2lkICJZb3UgbmVlZCB0byBydW4gdGhpcyBjb21tYW5kIGZyb20gdGhlIHRvcGxldmVsIG9mIHRoZSB3b3JraW5nIHRyZWUuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDozNzcKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzgKIG1zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIGFic29sdXRlIHBhdGggb2YgZ2l0IGRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogCiAjLiBUUkFOU0xBVE9SUzogeW91IGNhbiBhZGp1c3QgdGhpcyB0byBhbGlnbiAiZ2l0IGFkZCAtaSIgc3RhdHVzIG1lbnUKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTk2CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIlMTJzICUxMnMgJXMiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJzdGFnZWQiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJ1bnN0YWdlZCIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI1MyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI3OAotbXNnaWQgImJpbmFyeSIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxNgotbXNnaWQgIm5vdGhpbmciCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyOTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMTMKLW1zZ2lkICJ1bmNoYW5nZWQiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MDkKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiYWRkZWQgJWQgcGF0aFxuIgotbXNnaWRfcGx1cmFsICJhZGRlZCAlZCBwYXRoc1xuIgotbXNnc3RyWzBdICIiCi1tc2dzdHJbMV0gIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAidXBkYXRlZCAlZCBwYXRoXG4iCi1tc2dpZF9wbHVyYWwgInVwZGF0ZWQgJWQgcGF0aHNcbiIKLW1zZ3N0clswXSAiIgotbXNnc3RyWzFdICIiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjE1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgInJldmVydGVkICVkIHBhdGhcbiIKLW1zZ2lkX3BsdXJhbCAicmV2ZXJ0ZWQgJWQgcGF0aHNcbiIKLW1zZ3N0clswXSAiIgotbXNnc3RyWzFdICIiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjE4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzNAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ0b3VjaGVkICVkIHBhdGhcbiIKIG1zZ2lkX3BsdXJhbCAidG91Y2hlZCAlZCBwYXRoc1xuIgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MjcKLW1zZ2lkICJVcGRhdGUiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MzkKLW1zZ2lkICJSZXZlcnQiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NjIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAibm90ZTogJXMgaXMgdW50cmFja2VkIG5vdy5cbiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3MwotbXNnaWQgIkFkZCB1bnRyYWNrZWQiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NzkKLW1zZ2lkICJObyB1bnRyYWNrZWQgZmlsZXMuXG4iCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDMzCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTMKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHN0YWdpbmcuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTAzNgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDU2CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBzdGFzaGluZy4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDM5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTkKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHVuc3RhZ2luZy4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDQyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA1MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDYyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA3MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDc3CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBhcHBseWluZy4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDQ1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA0OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDY1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA2OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDc0CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBkaXNjYXJkaW5nLiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwODUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExMQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3Igd3JpdGluZzogJXMiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDg2Ci1tc2dpZCAiTWFudWFsIGh1bmsgZWRpdCBtb2RlIC0tIHNlZSBib3R0b20gZm9yIGEgcXVpY2sgZ3VpZGUuXG4iCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDkyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogIi0tLVxuIgpAQCAtMTkxMTAsMzEgKzIyNDA4LDEyIEBACiAiTGluZXMgc3RhcnRpbmcgd2l0aCAlcyB3aWxsIGJlIHJlbW92ZWQuXG4iCiBtc2dzdHIgIiIKIAotIy4gVFJBTlNMQVRPUlM6ICdpdCcgcmVmZXJzIHRvIHRoZSBwYXRjaCBtZW50aW9uZWQgaW4gdGhlIHByZXZpb3VzIG1lc3NhZ2VzLgotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTAwCi1tc2dpZCAiIgotIklmIGl0IGRvZXMgbm90IGFwcGx5IGNsZWFubHksIHlvdSB3aWxsIGJlIGdpdmVuIGFuIG9wcG9ydHVuaXR5IHRvXG4iCi0iZWRpdCBhZ2Fpbi4gIElmIGFsbCBsaW5lcyBvZiB0aGUgaHVuayBhcmUgcmVtb3ZlZCwgdGhlbiB0aGUgZWRpdCBpc1xuIgotImFib3J0ZWQgYW5kIHRoZSBodW5rIGlzIGxlZnQgdW5jaGFuZ2VkLlxuIgotbXNnc3RyICIiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTQwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuIGh1bmsgZWRpdCBmaWxlIGZvciByZWFkaW5nOiAlcyIKIG1zZ3N0ciAiIgogCi0jLiBUUkFOU0xBVE9SUzogZG8gbm90IHRyYW5zbGF0ZSBbeS9uXQotIy4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCB0aGF0IGlucHV0Ci0jLiBhdCB0aGlzIHBvaW50LgotIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKLSMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCi0jLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIxMwotbXNnaWQgIiIKLSJZb3VyIGVkaXRlZCBodW5rIGRvZXMgbm90IGFwcGx5LiBFZGl0IGFnYWluIChzYXlpbmcgXCJub1wiIGRpc2NhcmRzISkgW3kvbl0/ICIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMjIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0OAogbXNnaWQgIiIKICJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCiAibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKQEAgLTE5MTQzLDcgKzIyNDIyLDcgQEAKICJkIC0gZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIyOAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjU0CiBtc2dpZCAiIgogInkgLSBzdGFzaCB0aGlzIGh1bmtcbiIKICJuIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVua1xuIgpAQCAtMTkxNTIsNyArMjI0MzEsNyBAQAogImQgLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjM0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNjAKIG1zZ2lkICIiCiAieSAtIHVuc3RhZ2UgdGhpcyBodW5rXG4iCiAibiAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVua1xuIgpAQCAtMTkxNjEsNyArMjI0NDAsNyBAQAogImQgLSBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNDAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI2NgogbXNnaWQgIiIKICJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4XG4iCiAibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKQEAgLTE5MTcwLDcgKzIyNDQ5LDcgQEAKICJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0NgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5MAogbXNnaWQgIiIKICJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgogIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgpAQCAtMTkxNzksNyArMjI0NTgsNyBAQAogImQgLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNTIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI3OAogbXNnaWQgIiIKICJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKICJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCkBAIC0xOTE4OCw3ICsyMjQ2Nyw3IEBACiAiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgogbXNnc3RyICIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI1OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjg0CiBtc2dpZCAiIgogInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCiAibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCkBAIC0xOTE5Nyw3ICsyMjQ3NiwxNiBAQAogImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjczCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyOTYKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzExCiBtc2dpZCAiIgogImcgLSBzZWxlY3QgYSBodW5rIHRvIGdvIHRvXG4iCiAiLyAtIHNlYXJjaCBmb3IgYSBodW5rIG1hdGNoaW5nIHRoZSBnaXZlbiByZWdleFxuIgpAQCAtMTkyMTAsMjExICsyMjQ5OCw4NSBAQAogIj8gLSBwcmludCBoZWxwXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzA0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDIKIG1zZ2lkICJUaGUgc2VsZWN0ZWQgaHVua3MgZG8gbm90IGFwcGx5IHRvIHRoZSBpbmRleCFcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMDUKLW1zZ2lkICJBcHBseSB0aGVtIHRvIHRoZSB3b3JrdHJlZSBhbnl3YXk/ICIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMDgKLW1zZ2lkICJOb3RoaW5nIHdhcyBhcHBsaWVkLlxuIgotbXNnc3RyICIiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMxOQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzU3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIHVubWVyZ2VkOiAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMyOAotbXNnaWQgIk9ubHkgYmluYXJ5IGZpbGVzIGNoYW5nZWQuXG4iCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzMwCi1tc2dpZCAiTm8gY2hhbmdlcy5cbiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMzgKLW1zZ2lkICJQYXRjaCB1cGRhdGUiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjgKICMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjkKICMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NzAKICMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTUKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3Rhc2ggbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzk2Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YXNoIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICIiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5NwotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJTdGFzaCB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAwCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlVuc3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAxCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlVuc3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAyCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlVuc3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICIiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwNQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDYKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDA3Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTAKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICIiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxMQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDEyCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE2Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE3Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICIiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQyMAotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDIxCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MjIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3MAogbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIGdvdG9cbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MjkKLW1zZ2lkICJnbyB0byB3aGljaCBodW5rICg8cmV0PiB0byBzZWUgbW9yZSk/ICIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MzEKLW1zZ2lkICJnbyB0byB3aGljaCBodW5rPyAiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1ODgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBudW1iZXI6ICclcydcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NDUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU5MwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTb3JyeSwgb25seSAlZCBodW5rIGF2YWlsYWJsZS5cbiIKIG1zZ2lkX3BsdXJhbCAiU29ycnksIG9ubHkgJWQgaHVua3MgYXZhaWxhYmxlLlxuIgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTcxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MTkKIG1zZ2lkICJObyBvdGhlciBodW5rcyB0byBzZWFyY2hcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzUKLW1zZ2lkICJzZWFyY2ggZm9yIHJlZ2V4PyAiCi1tc2dzdHIgIiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTg4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MzYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiTWFsZm9ybWVkIHNlYXJjaCByZWdleHAgJXM6ICVzXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTk4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NDYKIG1zZ2lkICJObyBodW5rIG1hdGNoZXMgdGhlIGdpdmVuIHBhdHRlcm5cbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MTAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjMyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjgwCiBtc2dpZCAiTm8gcHJldmlvdXMgaHVua1xuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MzgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY2NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2ODYKIG1zZ2lkICJObyBuZXh0IGh1bmtcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NDQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY5MgogbXNnaWQgIlNvcnJ5LCBjYW5ub3Qgc3BsaXQgdGhpcyBodW5rXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjUwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2OTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU3BsaXQgaW50byAlZCBodW5rLlxuIgogbXNnaWRfcGx1cmFsICJTcGxpdCBpbnRvICVkIGh1bmtzLlxuIgogbXNnc3RyWzBdICIiCiBtc2dzdHJbMV0gIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjYwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MDgKIG1zZ2lkICJTb3JyeSwgY2Fubm90IGVkaXQgdGhpcyBodW5rXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzA2Ci1tc2dpZCAiUmV2aWV3IGRpZmYiCi1tc2dzdHIgIiIKLQogIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBkbyBub3QgdHJhbnNsYXRlIHRoZSBjb21tYW5kIG5hbWVzCiAjLiAnc3RhdHVzJywgJ3VwZGF0ZScsICdyZXZlcnQnLCBldGMuCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MjUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc3MwogbXNnaWQgIiIKICJzdGF0dXMgICAgICAgIC0gc2hvdyBwYXRocyB3aXRoIGNoYW5nZXNcbiIKICJ1cGRhdGUgICAgICAgIC0gYWRkIHdvcmtpbmcgdHJlZSBzdGF0ZSB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzXG4iCkBAIC0xOTQyNSwxOCArMjI1ODcsMTkgQEAKICJjaGFuZ2VzXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzQyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc0NwotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzUwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1NwotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzYxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2NworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzkwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5NQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzk4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgwNQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODA4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgxNQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODE5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyNQogbXNnaWQgIm1pc3NpbmcgLS0iCiBtc2dzdHIgIiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzYzCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MjEKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAidW5rbm93biAtLXBhdGNoIG1vZGU6ICVzIgogbXNnc3RyICIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NzUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyNyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MzMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBhcmd1bWVudCAlcywgZXhwZWN0aW5nIC0tIgogbXNnc3RyICIiCkBAIC0xOTQ0OSw2NiArMjI2MTIsNjYgQEAKIG1zZ2lkICJsb2NhbCB0aW1lIG9mZnNldCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMjQgaG91cnNcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjIxOSBnaXQtc2VuZC1lbWFpbC5wZXJsOjIyNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoyMjMgZ2l0LXNlbmQtZW1haWwucGVybDoyMjkKIG1zZ2lkICJ0aGUgZWRpdG9yIGV4aXRlZCB1bmNsZWFubHksIGFib3J0aW5nIGV2ZXJ5dGhpbmciCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzEwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGNvbnRhaW5zIGFuIGludGVybWVkaWF0ZSB2ZXJzaW9uIG9mIHRoZSBlbWFpbCB5b3Ugd2VyZSBjb21wb3NpbmcuXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMDcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzE1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiclcy5maW5hbCcgY29udGFpbnMgdGhlIGNvbXBvc2VkIGVtYWlsLlxuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzI2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQwOAogbXNnaWQgIi0tZHVtcC1hbGlhc2VzIGluY29tcGF0aWJsZSB3aXRoIG90aGVyIG9wdGlvbnNcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjM5NSBnaXQtc2VuZC1lbWFpbC5wZXJsOjY1MAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo0ODEgZ2l0LXNlbmQtZW1haWwucGVybDo2ODMKIG1zZ2lkICJDYW5ub3QgcnVuIGdpdCBmb3JtYXQtcGF0Y2ggZnJvbSBvdXRzaWRlIGEgcmVwb3NpdG9yeVxuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Mzk4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ4NAogbXNnaWQgIiIKICJgYmF0Y2gtc2l6ZWAgYW5kIGByZWxvZ2luYCBtdXN0IGJlIHNwZWNpZmllZCB0b2dldGhlciAodmlhIGNvbW1hbmQtbGluZSBvciAiCiAiY29uZmlndXJhdGlvbiBvcHRpb24pXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo0NjgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDk3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlVua25vd24gLS1zdXBwcmVzcy1jYyBmaWVsZDogJyVzJ1xuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDk3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJVbmtub3duIC0tY29uZmlybSBzZXR0aW5nOiAnJXMnXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTU2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IHNlbmRtYWlsIGFsaWFzIHdpdGggcXVvdGVzIGlzIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTU4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGA6aW5jbHVkZTpgIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjkKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTYwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGAvZmlsZWAgb3IgYHxwaXBlYCByZWRpcmVjdGlvbiBub3Qgc3VwcG9ydGVkOiAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTM0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU2NQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ3YXJuaW5nOiBzZW5kbWFpbCBsaW5lIGlzIG5vdCByZWNvZ25pemVkOiAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjE2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY0OQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiRmlsZSAnJXMnIGV4aXN0cyBidXQgaXQgY291bGQgYWxzbyBiZSB0aGUgcmFuZ2Ugb2YgY29tbWl0c1xuIgpAQCAtMTk1MTgsMzYgKzIyNjgxLDM2IEBACiAiICAgICogR2l2aW5nIC0tZm9ybWF0LXBhdGNoIG9wdGlvbiBpZiB5b3UgbWVhbiBhIHJhbmdlLlxuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjM3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY3MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbmRpciAlczogJXMiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NjEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Njk0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICJmYXRhbDogJXM6ICVzXG4iCiAid2FybmluZzogbm8gcGF0Y2hlcyB3ZXJlIHNlbnRcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY3MgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MDUKIG1zZ2lkICIiCiAiXG4iCiAiTm8gcGF0Y2ggZmlsZXMgc3BlY2lmaWVkIVxuIgogIlxuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Njg1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcxOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJObyBzdWJqZWN0IGxpbmUgaW4gJXM/IgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Njk1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcyOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiBmb3Igd3JpdGluZyAlczogJXMiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MDYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzM5CiBtc2dpZCAiIgogIkxpbmVzIGJlZ2lubmluZyBpbiBcIkdJVDpcIiB3aWxsIGJlIHJlbW92ZWQuXG4iCiAiQ29uc2lkZXIgaW5jbHVkaW5nIGFuIG92ZXJhbGwgZGlmZnN0YXQgb3IgdGFibGUgb2YgY29udGVudHNcbiIKQEAgLTE5NTU2LDM3ICsyMjcxOSwzNyBAQAogIkNsZWFyIHRoZSBib2R5IGNvbnRlbnQgaWYgeW91IGRvbid0IHdpc2ggdG8gc2VuZCBhIHN1bW1hcnkuXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MzAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzYzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBvcGVuICVzOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc0NworIzogZ2l0LXNlbmQtZW1haWwucGVybDo3ODAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW4gJXMuZmluYWw6ICVzIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzkwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjgyMwogbXNnaWQgIlN1bW1hcnkgZW1haWwgaXMgZW1wdHksIHNraXBwaW5nIGl0XG4iCiBtc2dzdHIgIiIKIAogIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBrZWVwIFt5L05dIGFzIGlzLgotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4MjUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODU4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byB1c2UgPCVzPiBbeS9OXT8gIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODgwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkxMwogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIGZpbGVzIGFyZSA4Yml0LCBidXQgZG8gbm90IGRlY2xhcmUgYSBDb250ZW50LVRyYW5zZmVyLSIKICJFbmNvZGluZy5cbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjg4NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MTgKIG1zZ2lkICJXaGljaCA4Yml0IGVuY29kaW5nIHNob3VsZCBJIGRlY2xhcmUgW1VURi04XT8gIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODkzCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkyNgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiUmVmdXNpbmcgdG8gc2VuZCBiZWNhdXNlIHRoZSBwYXRjaFxuIgpAQCAtMTk1OTUsMjAgKzIyNzU4LDIwIEBACiAid2FudCB0byBzZW5kLlxuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTEyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjk0NQogbXNnaWQgIlRvIHdob20gc2hvdWxkIHRoZSBlbWFpbHMgYmUgc2VudCAoaWYgYW55b25lKT8iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MzAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTYzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImZhdGFsOiBhbGlhcyAnJXMnIGV4cGFuZHMgdG8gaXRzZWxmXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTc1CiBtc2dpZCAiTWVzc2FnZS1JRCB0byBiZSB1c2VkIGFzIEluLVJlcGx5LVRvIGZvciB0aGUgZmlyc3QgZW1haWwgKGlmIGFueSk/ICIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMDAgZ2l0LXNlbmQtZW1haWwucGVybDoxMDA4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMzMgZ2l0LXNlbmQtZW1haWwucGVybDoxMDQxCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImVycm9yOiB1bmFibGUgdG8gZXh0cmFjdCBhIHZhbGlkIGFkZHJlc3MgZnJvbTogJXNcbiIKIG1zZ3N0ciAiIgpAQCAtMTk2MTYsMTYgKzIyNzc5LDE2IEBACiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3FdIFtkXSBbZV0gaW4geW91cgogIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAogIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAxMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDQ1CiBtc2dpZCAiV2hhdCB0byBkbyB3aXRoIHRoaXMgYWRkcmVzcz8gKFtxXXVpdHxbZF1yb3B8W2VdZGl0KTogIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTMyOQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMzYyCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkNBIHBhdGggXCIlc1wiIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQxMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDQ1CiBtc2dpZCAiIgogIiAgICBUaGUgQ2MgbGlzdCBhYm92ZSBoYXMgYmVlbiBleHBhbmRlZCBieSBhZGRpdGlvbmFsXG4iCiAiICAgIGFkZHJlc3NlcyBmb3VuZCBpbiB0aGUgcGF0Y2ggY29tbWl0IG1lc3NhZ2UuIEJ5IGRlZmF1bHRcbiIKQEAgLTE5NjQyLDEyOCArMjI4MDUsMTI4IEBACiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3ldIFtuXSBbZV0gW3FdIFthXSBpbiB5b3VyCiAjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CiAjLiBhdCB0aGlzIHBvaW50LgotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDI3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjAKIG1zZ2lkICJTZW5kIHRoaXMgZW1haWw/IChbeV1lc3xbbl1vfFtlXWRpdHxbcV11aXR8W2FdbGwpOiAiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDMwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjMKIG1zZ2lkICJTZW5kIHRoaXMgZW1haWwgcmVwbHkgcmVxdWlyZWQiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDU4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0OTEKIG1zZ2lkICJUaGUgcmVxdWlyZWQgU01UUCBzZXJ2ZXIgaXMgbm90IHByb3Blcmx5IGRlZmluZWQuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUwNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTM4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IFNUQVJUVExTISAlcyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MTAgZ2l0LXNlbmQtZW1haWwucGVybDoxNTE0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDMgZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNUQVJUVExTIGZhaWxlZCEgJXMiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTIzCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NTYKIG1zZ2lkICJVbmFibGUgdG8gaW5pdGlhbGl6ZSBTTVRQIHByb3Blcmx5LiBDaGVjayBjb25maWcgYW5kIHVzZSAtLXNtdHAtZGVidWcuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBzZW5kICVzXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRHJ5LVNlbnQgJXNcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTZW50ICVzXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzkKIG1zZ2lkICJEcnktT0suIExvZyBzYXlzOlxuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CiBtc2dpZCAiT0suIExvZyBzYXlzOlxuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU1OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTkxCiBtc2dpZCAiUmVzdWx0OiAiCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTYxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1OTQKIG1zZ2lkICJSZXN1bHQ6IE9LXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MTIKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgb3BlbiBmaWxlICVzIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTYyNiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NDYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY1OSBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NzkKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKG1ib3gpIEFkZGluZyBjYzogJXMgZnJvbSBsaW5lICclcydcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MzIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY2NQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIobWJveCkgQWRkaW5nIHRvOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY4NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzE4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihub24tbWJveCkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTcyMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzUzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihib2R5KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODMxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NjQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKCVzKSBDb3VsZCBub3QgZXhlY3V0ZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTgzOAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODcxCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiglcykgQWRkaW5nICVzOiAlcyBmcm9tOiAnJXMnXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODQyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NzUKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKCVzKSBmYWlsZWQgdG8gY2xvc2UgcGlwZSB0byAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg3MgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTA1CiBtc2dpZCAiY2Fubm90IHNlbmQgbWVzc2FnZSBhcyA3Yml0IgogbXNnc3RyICIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg4MAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTEzCiBtc2dpZCAiaW52YWxpZCB0cmFuc2ZlciBlbmNvZGluZyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MjEgZ2l0LXNlbmQtZW1haWwucGVybDoxOTczIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk4MworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTU0IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjAwNiBnaXQtc2VuZC1lbWFpbC5wZXJsOjIwMTYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTI0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NTcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiJXM6IHBhdGNoIGNvbnRhaW5zIGEgbGluZSBsb25nZXIgdGhhbiA5OTggY2hhcmFjdGVycyIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NDEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk3NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyAlcyB3aXRoIGJhY2t1cCBzdWZmaXggJyVzJy5cbiIKIG1zZ3N0ciAiIgogCiAjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGtlZXAgIlt5fE5dIiBhcyBpcy4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk0NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTc4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkRvIHlvdSByZWFsbHkgd2FudCB0byBzZW5kICVzPyBbeXxOXTogIgogbXNnc3RyICIiCmRpZmYgLS1naXQgYS9wby9pdC5wbyBiL3BvL2l0LnBvCmluZGV4IDkwODAyMTkuLmU5ZjU5NmIgMTAwNjQ0Ci0tLSBhL3BvL2l0LnBvCisrKyBiL3BvL2l0LnBvCkBAIC0xLDIxNyArMSwzMTk2IEBACiAjIEl0YWxpYW4gdHJhbnNsYXRpb25zIGZvciBHaXQuCiAjIENvcHlyaWdodCAoQykgMjAxMiBNYXJjbyBQYW9sb25lIDxtYXJjb3Bhb2xvbmVAZ21haWwuY29tPgorIyBDb3B5cmlnaHQgwqkgMjAxOC0yMDE5IEFsZXNzYW5kcm8gTWVudGkgPGFsZXNzYW5kcm8ubWVudGlAYWxlc3NhbmRyb21lbnRpLml0PgogIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgR2l0IHBhY2thZ2UuCisjCisjIFRoYW5rcyB0byB0aGUgZm9ybWVyIHRyYW5zbGF0b3JzLCBNYXJjbyBQYW9sb25lIDxtYXJjb3Bhb2xvbmUgQVQgZ21haWwuY29tPgorIyBhbmQgU3RlZmFubyBMYXR0YXJpbmkgPHN0ZWZhbm8ubGF0dGFyaW5pIEFUIGdtYWlsLmNvbT4sIGZvciB0aGVpcgorIyBjb250cmlidXRpb25zLgorIyBBbGVzc2FuZHJvIE1lbnRpIDxhbGVzc2FuZHJvLm1lbnRpQGFsZXNzYW5kcm9tZW50aS5pdD4sIDIwMTksIDIwMjAuCiBtc2dpZCAiIgogbXNnc3RyICIiCiAiUHJvamVjdC1JZC1WZXJzaW9uOiBHaXRcbiIKICJSZXBvcnQtTXNnaWQtQnVncy1UbzogR2l0IE1haWxpbmcgTGlzdCA8Z2l0QHZnZXIua2VybmVsLm9yZz5cbiIKLSJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMi0wNi0wOCAxMDoyMCswODAwXG4iCi0iUE8tUmV2aXNpb24tRGF0ZTogMjAxMi0wNi0xNCAxNDoxMyswMjAwXG4iCi0iTGFzdC1UcmFuc2xhdG9yOiBNYXJjbyBQYW9sb25lIDxtYXJjb3Bhb2xvbmVAZ21haWwuY29tPlxuIgotIkxhbmd1YWdlLVRlYW06IEl0YWxpYW5cbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAyMC0wMy0xMSAxNToyNiswODAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAyMC0wMy0xMiAwNzo1MiswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBBbGVzc2FuZHJvIE1lbnRpIDxhbGVzc2FuZHJvLm1lbnRpQGFsZXNzYW5kcm9tZW50aS5pdD5cbiIKKyJMYW5ndWFnZS1UZWFtOiBJdGFsaWFuIDw+XG4iCiAiTGFuZ3VhZ2U6IGl0XG4iCiAiTUlNRS1WZXJzaW9uOiAxLjBcbiIKICJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKICJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCiAiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9KG4gIT0gMSk7XG4iCisiWC1HZW5lcmF0b3I6IExva2FsaXplIDE5LjEyLjNcbiIKIAotIzogYWR2aWNlLmM6NDAKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjM2OAogIywgYy1mb3JtYXQKLW1zZ2lkICJoaW50OiAlLipzXG4iCi1tc2dzdHIgInN1Z2dlcmltZW50bzogJS4qc1xuIgorbXNnaWQgIkh1aCAoJXMpPyIKK21zZ3N0ciAiRWggKCVzKT8iCiAKLSMuCi0jLiAqIE1lc3NhZ2UgdXNlZCBib3RoIHdoZW4gJ2dpdCBjb21taXQnIGZhaWxzIGFuZCB3aGVuCi0jLiAqIG90aGVyIGNvbW1hbmRzIGRvaW5nIGEgbWVyZ2UgZG8uCi0jLgotIzogYWR2aWNlLmM6NzAKLW1zZ2lkICIiCi0iRml4IHRoZW0gdXAgaW4gdGhlIHdvcmsgdHJlZSxcbiIKLSJhbmQgdGhlbiB1c2UgJ2dpdCBhZGQvcm0gPGZpbGU+JyBhc1xuIgotImFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbiBhbmQgbWFrZSBhIGNvbW1pdCxcbiIKLSJvciB1c2UgJ2dpdCBjb21taXQgLWEnLiIKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjUyMSBhZGQtaW50ZXJhY3RpdmUuYzo4MjIgc2VxdWVuY2VyLmM6MzEyNAorIzogc2VxdWVuY2VyLmM6MzU2MiBidWlsdGluL3JlYmFzZS5jOjg3NSBidWlsdGluL3JlYmFzZS5jOjE2ODcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA4NiBidWlsdGluL3JlYmFzZS5jOjIxMzAKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBpbmRleCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBsJ2luZGljZSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NTc2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjY5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI5NAorbXNnaWQgImJpbmFyeSIKK21zZ3N0ciAiYmluYXJpbyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjM0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjc4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMzMgorbXNnaWQgIm5vdGhpbmciCittc2dzdHIgIm5vbiBmYXJlIG51bGxhIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2MzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMTQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzI5Cittc2dpZCAidW5jaGFuZ2VkIgorbXNnc3RyICJub24gbW9kaWZpY2F0byIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjQzCittc2dpZCAiVXBkYXRlIgorbXNnc3RyICJBZ2dpb3JuYSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njg5IGFkZC1pbnRlcmFjdGl2ZS5jOjg3NworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhZ2UgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYWdnaXVuZ2VyZSAnJXMnIGFsbCdhcmVhIGRpIHN0YWdpbmciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY5NSBhZGQtaW50ZXJhY3RpdmUuYzo4ODQgc2VxdWVuY2VyLmM6MzMxNworIzogYnVpbHRpbi9yZWJhc2UuYzo4OTkKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgaW5kZXgiCittc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGwnaW5kaWNlIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2OTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MjgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgInVwZGF0ZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJ1cGRhdGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gImFnZ2lvcm5hdG8gJWQgcGVyY29yc29cbiIKK21zZ3N0clsxXSAiYWdnaW9ybmF0aSAlZCBwZXJjb3JzaVxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3MTYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NzgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vdGU6ICVzIGlzIHVudHJhY2tlZCBub3cuXG4iCittc2dzdHIgIm5vdGE6ICVzIG9yYSBub24gw6ggdHJhY2NpYXRvLlxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3MjEgYXBwbHkuYzo0MTEwIGJ1aWx0aW4vY2hlY2tvdXQuYzoyODEKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFrZV9jYWNoZV9lbnRyeSBmYWlsZWQgZm9yIHBhdGggJyVzJyIKK21zZ3N0ciAibWFrZV9jYWNoZV9lbnRyeSBub24gcml1c2NpdG8gcGVyIGlsIHBlcmNvcnNvICclcyciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjc1MSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY1NQorbXNnaWQgIlJldmVydCIKK21zZ3N0ciAiRXNlZ3VpIGlsIHJldmVydCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NzY3Cittc2dpZCAiQ291bGQgbm90IHBhcnNlIEhFQURee3RyZWV9IgorbXNnc3RyICJJbXBvc3NpYmlsZSBhbmFsaXp6YXJlIEhFQURee3RyZWV9IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4MDUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MzEKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgInJldmVydGVkICVkIHBhdGhcbiIKK21zZ2lkX3BsdXJhbCAicmV2ZXJ0ZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAicmlwcmlzdGluYXRvICVkIHBlcmNvcnNvXG4iCittc2dzdHJbMV0gInJpcHJpc3RpbmF0aSAlZCBwZXJjb3JzaVxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4NTYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gdW50cmFja2VkIGZpbGVzLlxuIgorbXNnc3RyICJOZXNzdW4gZmlsZSBub24gdHJhY2NpYXRvLlxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4NjAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2ODkKK21zZ2lkICJBZGQgdW50cmFja2VkIgorbXNnc3RyICJBZ2dpdW5naSBmaWxlIG5vbiB0cmFjY2lhdGkiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjg4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyNQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWRkZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJhZGRlZCAlZCBwYXRoc1xuIgorbXNnc3RyWzBdICJhZ2dpdW50byAlZCBwZXJjb3Jzb1xuIgorbXNnc3RyWzFdICJhZ2dpdW50aSAlZCBwZXJjb3JzaVxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgdW5tZXJnZWQ6ICVzIgorbXNnc3RyICJpZ25vcm8gY2nDsiBjaGUgbm9uIMOoIHN0YXRvIHNvdHRvcG9zdG8gYSBtZXJnZTogJXMiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkyOSBhZGQtcGF0Y2guYzoxNjc1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2NgorIywgYy1mb3JtYXQKK21zZ2lkICJPbmx5IGJpbmFyeSBmaWxlcyBjaGFuZ2VkLlxuIgorbXNnc3RyICJTb25vIHN0YXRpIG1vZGlmaWNhdGkgc29sbyBmaWxlIGJpbmFyaS5cbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTMxIGFkZC1wYXRjaC5jOjE2NzMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzY4CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGNoYW5nZXMuXG4iCittc2dzdHIgIk5lc3N1bmEgbW9kaWZpY2EuXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkzNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNzYKK21zZ2lkICJQYXRjaCB1cGRhdGUiCittc2dzdHIgIkFnZ2lvcm5hbWVudG8gcGF0Y2giCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjk3NCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NTQKK21zZ2lkICJSZXZpZXcgZGlmZiIKK21zZ3N0ciAiUml2ZWRpIGRpZmYiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDIKK21zZ2lkICJzaG93IHBhdGhzIHdpdGggY2hhbmdlcyIKK21zZ3N0ciAidmlzdWFsaXp6YSBpIHBlcmNvcnNpIG1vZGlmaWNhdGkiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDQKK21zZ2lkICJhZGQgd29ya2luZyB0cmVlIHN0YXRlIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXMiCiBtc2dzdHIgIiIKKyJhZ2dpdW5naSBsbyBzdGF0byBkYWxsJ2FsYmVybyBkaSBsYXZvcm8gYWxsJ2luc2llbWUgZGVsbGUgbW9kaWZpY2hlICIKKyJuZWxsJ2FyZWEgZGkgc3RhZ2luZyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwNgorbXNnaWQgInJldmVydCBzdGFnZWQgc2V0IG9mIGNoYW5nZXMgYmFjayB0byB0aGUgSEVBRCB2ZXJzaW9uIgorbXNnc3RyICIiCisicmlwcmlzdGluYSBsJ2luc2llbWUgZGVsbGUgbW9kaWZpY2hlIG5lbGwnYXJlYSBkaSBzdGFnaW5nIGFsbGEgdmVyc2lvbmUgSEVBRCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwOAorbXNnaWQgInBpY2sgaHVua3MgYW5kIHVwZGF0ZSBzZWxlY3RpdmVseSIKK21zZ3N0ciAiIgorInNlbGV6aW9uYSBnbGkgaHVuayBpbiBtb2RhbGl0w6AgaW50ZXJhdHRpdmEgZWQgZXNlZ3VpIGwnYWdnaW9ybmFtZW50byBpbiBtb2RvICIKKyJzZWxldHRpdm8iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMTAKK21zZ2lkICJ2aWV3IGRpZmYgYmV0d2VlbiBIRUFEIGFuZCBpbmRleCIKK21zZ3N0ciAidmlzdWFsaXp6YSBpbCBkaWZmIGZyYSBIRUFEIGUgbCdpbmRpY2UiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMTIKK21zZ2lkICJhZGQgY29udGVudHMgb2YgdW50cmFja2VkIGZpbGVzIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXMiCittc2dzdHIgIiIKKyJhZ2dpdW5naSBpIGNvbnRlbnV0aSBkZWkgZmlsZSBub24gdHJhY2NpYXRpIGFsbCdpbnNpZW1lIGRlbGxlIG1vZGlmaWNoZSAiCisibmVsbCdhcmVhIGRpIHN0YWdpbmciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjAgYWRkLWludGVyYWN0aXZlLmM6MTA2OQorbXNnaWQgIlByb21wdCBoZWxwOiIKK21zZ3N0ciAiR3VpZGEgcHJvbXB0OiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyMgorbXNnaWQgInNlbGVjdCBhIHNpbmdsZSBpdGVtIgorbXNnc3RyICJzZWxlemlvbmEgdW4gc2luZ29sbyBlbGVtZW50byIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyNAorbXNnaWQgInNlbGVjdCBhIHJhbmdlIG9mIGl0ZW1zIgorbXNnc3RyICJzZWxlemlvbmEgdW4gaW50ZXJ2YWxsbyBkaSBlbGVtZW50aSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyNgorbXNnaWQgInNlbGVjdCBtdWx0aXBsZSByYW5nZXMiCittc2dzdHIgInNlbGV6aW9uYSBwacO5IGludGVydmFsbGkiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjggYWRkLWludGVyYWN0aXZlLmM6MTA3MworbXNnaWQgInNlbGVjdCBpdGVtIGJhc2VkIG9uIHVuaXF1ZSBwcmVmaXgiCittc2dzdHIgInNlbGV6aW9uYSB1biBlbGVtZW50byBiYXNhbmRvdGkgc3UgdW4gcHJlZmlzc28gdW5pdm9jbyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAzMAorbXNnaWQgInVuc2VsZWN0IHNwZWNpZmllZCBpdGVtcyIKK21zZ3N0ciAiZGVzZWxlemlvbmEgZ2xpIGVsZW1lbnRpIHNwZWNpZmljYXRpIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDMyCittc2dpZCAiY2hvb3NlIGFsbCBpdGVtcyIKK21zZ3N0ciAic2VsZXppb25hIHR1dHRpIGdsaSBlbGVtZW50aSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAzNAorbXNnaWQgIihlbXB0eSkgZmluaXNoIHNlbGVjdGluZyIKK21zZ3N0ciAiKHZ1b3RvKSB0ZXJtaW5hIGxhIHNlbGV6aW9uZSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3MQorbXNnaWQgInNlbGVjdCBhIG51bWJlcmVkIGl0ZW0iCittc2dzdHIgInNlbGV6aW9uYSB1biBlbGVtZW50byBudW1lcmF0byIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3NQorbXNnaWQgIihlbXB0eSkgc2VsZWN0IG5vdGhpbmciCittc2dzdHIgIih2dW90bykgbm9uIHNlbGV6aW9uYXJlIG51bGxhIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDgzIGJ1aWx0aW4vY2xlYW4uYzo4MjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODUxCittc2dpZCAiKioqIENvbW1hbmRzICoqKiIKK21zZ3N0ciAiKioqIENvbWFuZGkgKioqIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDg0IGJ1aWx0aW4vY2xlYW4uYzo4MjMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODQ4Cittc2dpZCAiV2hhdCBub3ciCittc2dzdHIgIkNvc2EgZmFjY2lvIG9yYSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTEzNiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMworbXNnaWQgInN0YWdlZCIKK21zZ3N0ciAibmVsbCdhcmVhIGRpIHN0YWdpbmciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJ1bnN0YWdlZCIKK21zZ3N0ciAicmltb3NzbyBkYWxsJ2FyZWEgZGkgc3RhZ2luZyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTEzNiBhcHBseS5jOjQ5NjcgYXBwbHkuYzo0OTcwIGJ1aWx0aW4vYW0uYzoyMjUxCisjOiBidWlsdGluL2FtLmM6MjI1NCBidWlsdGluL2Nsb25lLmM6MTIzIGJ1aWx0aW4vZmV0Y2guYzoxNDQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzQgYnVpbHRpbi9wdWxsLmM6MTg5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MDkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwMiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwNQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNDggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJwYXRoIgorbXNnc3RyICJwZXJjb3JzbyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTE0MworbXNnaWQgImNvdWxkIG5vdCByZWZyZXNoIGluZGV4IgorbXNnc3RyICJpbXBvc3NpYmlsZSBhZ2dpb3JuYXJlIGwnaW5kaWNlIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTU3IGJ1aWx0aW4vY2xlYW4uYzo3ODcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIkJ5ZS5cbiIKK21zZ3N0ciAiQ2lhby5cbiIKKworIzogYWRkLXBhdGNoLmM6MzMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiTW9kaWZpY2EgbW9kbyBzdGFnZSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI5CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiRWxpbWluYXppb25lIHN0YWdlIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzozNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiRXNlZ3VpcmUgbG8gc3RhZ2UgZGkgcXVlc3QnaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzcKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisic3RhZ2luZy4iCittc2dzdHIgIiIKKyJTZSBsYSBwYXRjaCB2aWVuZSBhcHBsaWNhdGEgc2VuemEgcHJvYmxlbWksIGwnaHVuayBtb2RpZmljYXRvIHNhcsOgICIKKyJjb250cmFzc2VnbmF0byBpbW1lZGlhdGFtZW50ZSBwZXIgbCdhZ2dpdW50YSBhbGwnYXJlYSBkaSBzdGFnaW5nLiIKKworIzogYWRkLXBhdGNoLmM6NDAKK21zZ2lkICIiCisieSAtIHN0YWdlIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFnZSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBhZ2dpdW5naSBxdWVzdCdodW5rIGFsbCdhcmVhIGRpIHN0YWdpbmdcbiIKKyJuIC0gbm9uIGFnZ2l1bmdlcmUgcXVlc3QnaHVuayBhbGwnYXJlYSBkaSBzdGFnaW5nXG4iCisicSAtIGVzY2k7IG5vbiBhZ2dpdW5nZXJlIG7DqSBxdWVzdCdodW5rIG7DqSBxdWVsbGkgcmltYW5lbnRpIGFsbCdhcmVhIGRpICIKKyJzdGFnaW5nXG4iCisiYSAtIGFnZ2l1bmdpIHF1ZXN0J2h1bmsgZSB0dXR0aSBxdWVsbGkgc3VjY2Vzc2l2aSBuZWwgZmlsZSBhbGwnYXJlYSBkaSAiCisic3RhZ2luZ1xuIgorImQgLSBub24gYWdnaXVuZ2VyZSBuw6kgcXVlc3QnaHVuayBuw6kgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGUgYWxsJ2FyZWEgZGkgIgorInN0YWdpbmdcbiIKKworIzogYWRkLXBhdGNoLmM6NTQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDMzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiTW9kaWZpY2EgbW9kbyBzdGFzaCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NTUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiRWxpbWluYXppb25lIHN0YXNoIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo1NiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YXNoIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiRXNlZ3VpcmUgbG8gc3Rhc2ggZGkgcXVlc3QnaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NTgKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisic3Rhc2hpbmcuIgorbXNnc3RyICIiCisiU2UgbGEgcGF0Y2ggdmllbmUgYXBwbGljYXRhIHNlbnphIHByb2JsZW1pLCBsJ2h1bmsgbW9kaWZpY2F0byBzYXLDoCAiCisiY29udHJhc3NlZ25hdG8gaW1tZWRpYXRhbWVudGUgcGVyIGxvIHN0YXNoLiIKKworIzogYWRkLXBhdGNoLmM6NjEKK21zZ2lkICIiCisieSAtIHN0YXNoIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFzaCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFzaCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBlc2VndWkgbG8gc3Rhc2ggZGkgcXVlc3QnaHVua1xuIgorIm4gLSBub24gZXNlZ3VpcmUgbG8gc3Rhc2ggZGkgcXVlc3QnaHVua1xuIgorInEgLSBlc2NpOyBub24gZXNlZ3VpcmUgbG8gc3Rhc2ggZGkgcXVlc3QnaHVuayBuw6kgZGkgcXVlbGxpIHJpbWFuZW50aVxuIgorImEgLSBlc2VndWkgbG8gc3Rhc2ggZGkgcXVlc3QnaHVuayBlIGRpIHR1dHRpIHF1ZWxsaSBzdWNjZXNzaXZpIG5lbCBmaWxlXG4iCisiZCAtIG5vbiBlc2VndWlyZSBsbyBzdGFzaCBuw6kgZGkgcXVlc3QnaHVuayBuw6kgZGkgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGVcbiIKKworIzogYWRkLXBhdGNoLmM6NzcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJSaW1vemlvbmUgbW9kaWZpY2EgbW9kbyBkYWxsJ2FyZWEgZGkgc3RhZ2luZyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NzggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM5CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJSaW1vemlvbmUgZWxpbWluYXppb25lIGRhbGwnYXJlYSBkaSBzdGFnaW5nIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo3OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJSaW11b3ZlcmUgcXVlc3QnaHVuayBkYWxsJ2FyZWEgZGkgc3RhZ2luZyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6ODEKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisidW5zdGFnaW5nLiIKK21zZ3N0ciAiIgorIlNlIGxhIHBhdGNoIHZpZW5lIGFwcGxpY2F0YSBzZW56YSBwcm9ibGVtaSwgbCdodW5rIG1vZGlmaWNhdG8gc2Fyw6AgIgorImNvbnRyYXNzZWduYXRvIGltbWVkaWF0YW1lbnRlIHBlciBsYSByaW1vemlvbmUgZGFsbCdhcmVhIGRpIHN0YWdpbmcuIgorCisjOiBhZGQtcGF0Y2guYzo4NAorbXNnaWQgIiIKKyJ5IC0gdW5zdGFnZSB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHVuc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSByaW11b3ZpIHF1ZXN0J2h1bmsgZGFsbCdhcmVhIGRpIHN0YWdpbmdcbiIKKyJuIC0gbm9uIHJpbXVvdmVyZSBxdWVzdCdodW5rIGRhbGwnYXJlYSBkaSBzdGFnaW5nXG4iCisicSAtIGVzY2k7IG5vbiByaW11b3ZlcmUgbsOpIHF1ZXN0J2h1bmsgbsOpIHF1ZWxsaSByaW1hbmVudGkgZGFsbCdhcmVhIGRpICIKKyJzdGFnaW5nXG4iCisiYSAtIHJpbXVvdmkgcXVlc3QnaHVuayBlIHR1dHRpIHF1ZWxsaSBzdWNjZXNzaXZpIG5lbCBmaWxlIGRhbGwnYXJlYSBkaSAiCisic3RhZ2luZ1xuIgorImQgLSBub24gcmltdW92ZXJlIG7DqSBxdWVzdCdodW5rIG7DqSBxdWVsbGkgc3VjY2Vzc2l2aSBuZWwgZmlsZSBkYWxsJ2FyZWEgZGkgIgorInN0YWdpbmdcbiIKKworIzogYWRkLXBhdGNoLmM6OTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiQXBwbGljYXJlIGxhIG1vZGlmaWNhIG1vZG8gYWxsJ2luZGljZSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0NAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkFwcGxpY2FyZSBsJ2VsaW1pbmF6aW9uZSBhbGwnaW5kaWNlIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMDEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkFwcGxpY2FyZSBxdWVzdCdodW5rIGFsbCdpbmRpY2UgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEwMyBhZGQtcGF0Y2guYzoxNjggYWRkLXBhdGNoLmM6MjExCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorImFwcGx5aW5nLiIKK21zZ3N0ciAiIgorIlNlIGxhIHBhdGNoIHZpZW5lIGFwcGxpY2F0YSBzZW56YSBwcm9ibGVtaSwgbCdodW5rIG1vZGlmaWNhdG8gc2Fyw6AgIgorImNvbnRyYXNzZWduYXRvIGltbWVkaWF0YW1lbnRlIHBlciBsJ2FwcGxpY2F6aW9uZS4iCisKKyM6IGFkZC1wYXRjaC5jOjEwNgorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4XG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIGFwcGxpY2EgcXVlc3QnaHVuayBhbGwnaW5kaWNlXG4iCisibiAtIG5vbiBhcHBsaWNhcmUgcXVlc3QnaHVuayBhbGwnaW5kaWNlXG4iCisicSAtIGVzY2k7IG5vbiBhcHBsaWNhcmUgbsOpIHF1ZXN0J2h1bmsgbsOpIHF1ZWxsaSByaW1hbmVudGlcbiIKKyJhIC0gYXBwbGljYSBxdWVzdCdodW5rIGUgdHV0dGkgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGVcbiIKKyJkIC0gbm9uIGFwcGxpY2FyZSBuw6kgcXVlc3QnaHVuayBuw6kgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGVcbiIKKworIzogYWRkLXBhdGNoLmM6MTIxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDYzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIlNjYXJ0YXJlIGxlIG1vZGlmaWNoZSBtb2RvIGRhbGwnYWxiZXJvIGRpIGxhdm9ybyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTIyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0OQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIlNjYXJ0YXJlIGwnZWxpbWluYXppb25lIGRhbGwnYWxiZXJvIGRpIGxhdm9ybyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTIzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJTY2FydGFyZSBxdWVzdCdodW5rIGRhbGwnYWxiZXJvIGRpIGxhdm9ybyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTI1IGFkZC1wYXRjaC5jOjE0NyBhZGQtcGF0Y2guYzoxOTAKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisiZGlzY2FyZGluZy4iCittc2dzdHIgIiIKKyJTZSBsYSBwYXRjaCB2aWVuZSBhcHBsaWNhdGEgc2VuemEgcHJvYmxlbWksIGwnaHVuayBtb2RpZmljYXRvIHNhcsOgICIKKyJjb250cmFzc2VnbmF0byBpbW1lZGlhdGFtZW50ZSBwZXIgbGEgcmltb3ppb25lLiIKKworIzogYWRkLXBhdGNoLmM6MTI4IGFkZC1wYXRjaC5jOjE5MworbXNnaWQgIiIKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gcmltdW92aSBxdWVzdCdodW5rIGRhbGwnYWxiZXJvIGRpIGxhdm9yb1xuIgorIm4gLSBub24gcmltdW92ZXJlIHF1ZXN0J2h1bmsgZGFsbCdhbGJlcm8gZGkgbGF2b3JvXG4iCisicSAtIGVzY2k7IG5vbiByaW11b3ZlcmUgbsOpIHF1ZXN0J2h1bmsgbsOpIHF1ZWxsaSByaW1hbmVudGlcbiIKKyJhIC0gcmltdW92aSBxdWVzdCdodW5rIGUgdHV0dGkgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGVcbiIKKyJkIC0gbm9uIHJpbXVvdmVyZSBuw6kgcXVlc3QnaHVuayBuw6kgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGVcbiIKKworIzogYWRkLXBhdGNoLmM6MTQzIGFkZC1wYXRjaC5jOjE4NiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTMKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKyJTY2FydGFyZSBsYSBtb2RpZmljYSBtb2RvIGRhbGwnaW5kaWNlIGUgZGFsbCdhbGJlcm8gZGkgbGF2b3JvIFt5LG4scSxhLGQiCisiJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ0IGFkZC1wYXRjaC5jOjE4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIiIKKyJTY2FydGFyZSBsJ2VsaW1pbmF6aW9uZSBkYWxsJ2luZGljZSBlIGRhbGwnYWxiZXJvIGRpIGxhdm9ybyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ1IGFkZC1wYXRjaC5jOjE4OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisiU2NhcnRhcmUgcXVlc3QnaHVuayBkYWxsJ2luZGljZSBlIGRhbGwnYWxiZXJvIGRpIGxhdm9ybyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTUwCittc2dpZCAiIgorInkgLSBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gZGlzY2FyZCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIHJpbXVvdmkgcXVlc3QnaHVuayBkYWxsJ2luZGljZSBlIGRhbGwnYWxiZXJvIGRpIGxhdm9yb1xuIgorIm4gLSBub24gcmltdW92ZXJlIHF1ZXN0J2h1bmsgZGFsbCdpbmRpY2UgZSBkYWxsJ2FsYmVybyBkaSBsYXZvcm9cbiIKKyJxIC0gZXNjaTsgbm9uIHJpbXVvdmVyZSBuw6kgcXVlc3QnaHVuayBuw6kgcXVlbGxpIHJpbWFuZW50aVxuIgorImEgLSByaW11b3ZpIHF1ZXN0J2h1bmsgZSB0dXR0aSBxdWVsbGkgc3VjY2Vzc2l2aSBuZWwgZmlsZVxuIgorImQgLSBub24gcmltdW92ZXJlIG7DqSBxdWVzdCdodW5rIG7DqSBxdWVsbGkgc3VjY2Vzc2l2aSBuZWwgZmlsZVxuIgorCisjOiBhZGQtcGF0Y2guYzoxNjQgYWRkLXBhdGNoLmM6MjA3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1OAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisiQXBwbGljYXJlIGxhIG1vZGlmaWNhIG1vZG8gYWxsJ2luZGljZSBlIGFsbCdhbGJlcm8gZGkgbGF2b3JvIFt5LG4scSxhLGQiCisiJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTY1IGFkZC1wYXRjaC5jOjIwOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTkKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorIkFwcGxpY2FyZSBsJ2VsaW1pbmF6aW9uZSBhbGwnaW5kaWNlIGUgYWxsJ2FsYmVybyBkaSBsYXZvcm8gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE2NiBhZGQtcGF0Y2guYzoyMDkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDYwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisiQXBwbGljYXJlIHF1ZXN0J2h1bmsgYWxsJ2luZGljZSBlIGFsbCdhbGJlcm8gZGkgbGF2b3JvIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNzEKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIGFwcGxpY2EgcXVlc3QnaHVuayBhbGwnaW5kaWNlIGUgYWxsJ2FsYmVybyBkaSBsYXZvcm9cbiIKKyJuIC0gbm9uIGFwcGxpY2FyZSBxdWVzdCdodW5rIGFsbCdpbmRpY2UgZSBhbGwnYWxiZXJvIGRpIGxhdm9yb1xuIgorInEgLSBlc2NpOyBub24gYXBwbGljYXJlIG7DqSBxdWVzdCdodW5rIG7DqSBxdWVsbGkgcmltYW5lbnRpXG4iCisiYSAtIGFwcGxpY2EgcXVlc3QnaHVuayBlIHR1dHRpIHF1ZWxsaSBzdWNjZXNzaXZpIG5lbCBmaWxlXG4iCisiZCAtIG5vbiBhcHBsaWNhcmUgbsOpIHF1ZXN0J2h1bmsgbsOpIHF1ZWxsaSBzdWNjZXNzaXZpIG5lbCBmaWxlXG4iCisKKyM6IGFkZC1wYXRjaC5jOjIxNAorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIGFwcGxpY2EgcXVlc3QnaHVuayBhbGwnYWxiZXJvIGRpIGxhdm9yb1xuIgorIm4gLSBub24gYXBwbGljYXJlIHF1ZXN0J2h1bmsgYWxsJ2FsYmVybyBkaSBsYXZvcm9cbiIKKyJxIC0gZXNjaTsgbm9uIGFwcGxpY2FyZSBuw6kgcXVlc3QnaHVuayBuw6kgcXVlbGxpIHJpbWFuZW50aVxuIgorImEgLSBhcHBsaWNhIHF1ZXN0J2h1bmsgZSB0dXR0aSBxdWVsbGkgc3VjY2Vzc2l2aSBuZWwgZmlsZVxuIgorImQgLSBub24gYXBwbGljYXJlIG7DqSBxdWVzdCdodW5rIG7DqSBxdWVsbGkgc3VjY2Vzc2l2aSBuZWwgZmlsZVxuIgorCisjOiBhZGQtcGF0Y2guYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGh1bmsgaGVhZGVyICclLipzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBsJ2hlYWRlciBodW5rICclLipzJyIKKworIzogYWRkLXBhdGNoLmM6MzM3IGFkZC1wYXRjaC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29sb3JlZCBodW5rIGhlYWRlciAnJS4qcyciCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgbCdoZWFkZXIgaHVuayBjb2xvcmF0byAnJS4qcyciCisKKyM6IGFkZC1wYXRjaC5jOjM5NQorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBkaWZmIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGlsIGRpZmYiCisKKyM6IGFkZC1wYXRjaC5jOjQxNAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb2xvcmVkIGRpZmYiCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgaWwgZGlmZiBjb2xvcmF0byIKKworIzogYWRkLXBhdGNoLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBydW4gJyVzJyIKK21zZ3N0ciAiZXNlY3V6aW9uZSBkaSAnJXMnIG5vbiByaXVzY2l0YSIKKworIzogYWRkLXBhdGNoLmM6NTg3Cittc2dpZCAibWlzbWF0Y2hlZCBvdXRwdXQgZnJvbSBpbnRlcmFjdGl2ZS5kaWZmRmlsdGVyIgorbXNnc3RyICJvdXRwdXQgZGkgaW50ZXJhY3RpdmUuZGlmZkZpbHRlciBub24gY29ycmlzcG9uZGVudGUiCisKKyM6IGFkZC1wYXRjaC5jOjU4OAorbXNnaWQgIiIKKyJZb3VyIGZpbHRlciBtdXN0IG1haW50YWluIGEgb25lLXRvLW9uZSBjb3JyZXNwb25kZW5jZVxuIgorImJldHdlZW4gaXRzIGlucHV0IGFuZCBvdXRwdXQgbGluZXMuIgorbXNnc3RyICIiCisiSWwgZmlsdHJvIGRldmUgbWFudGVuZXJlIHVuYSBjb3JyaXNwb25kZW56YSB1bm8gYSB1bm9cbiIKKyJmcmEgbGUgcmlnaGUgZGkgaW5wdXQgZSBkaSBvdXRwdXQuIgorCisjOiBhZGQtcGF0Y2guYzo3NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4cGVjdGVkIGNvbnRleHQgbGluZSAjJWQgaW5cbiIKKyIlLipzIgorbXNnc3RyICIiCisiYXR0ZXNhIHJpZ2EgY29udGVzdG8gJWQgaW5cbiIKKyIlLipzIgorCisjOiBhZGQtcGF0Y2guYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImh1bmtzIGRvIG5vdCBvdmVybGFwOlxuIgorIiUuKnNcbiIKKyJcdGRvZXMgbm90IGVuZCB3aXRoOlxuIgorIiUuKnMiCittc2dzdHIgIiIKKyJnbGkgaHVuayBub24gc2kgc292cmFwcG9uZ29ubzpcbiIKKyIlLipzXG4iCisiXHRub24gdGVybWluYSBjb246XG4iCisiJS4qcyIKKworIzogYWRkLXBhdGNoLmM6MTA1MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTIKK21zZ2lkICJNYW51YWwgaHVuayBlZGl0IG1vZGUgLS0gc2VlIGJvdHRvbSBmb3IgYSBxdWljayBndWlkZS5cbiIKK21zZ3N0ciAiIgorIk1vZGFsaXTDoCBtYW51YWxlIG1vZGlmaWNhIGh1bnQgLSB2ZWRpIGxhIGZpbmUgZGVsIGZpbGUgcGVyIHVuYSBndWlkYSAiCisidmVsb2NlLlxuIgorCisjOiBhZGQtcGF0Y2guYzoxMDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLS1cbiIKKyJUbyByZW1vdmUgJyVjJyBsaW5lcywgbWFrZSB0aGVtICcgJyBsaW5lcyAoY29udGV4dCkuXG4iCisiVG8gcmVtb3ZlICclYycgbGluZXMsIGRlbGV0ZSB0aGVtLlxuIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggJWMgd2lsbCBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIiCisiLS0tXG4iCisiUGVyIHJpbXVvdmVyZSAnJWMnIHJpZ2hlLCByZW5kaWxlIHJpZ2hlICcgJyAoY29udGVzdG8pLlxuIgorIlBlciByaW11b3ZlcmUgJyVjJyByaWdoZSwgZWxpbWluYWxlLlxuIgorIkxlIHJpZ2hlIGNoZSBpbml6aWFubyBjb24gJWMgc2FyYW5ubyByaW1vc3NlLlxuIgorCisjLiBUUkFOU0xBVE9SUzogJ2l0JyByZWZlcnMgdG8gdGhlIHBhdGNoIG1lbnRpb25lZCBpbiB0aGUgcHJldmlvdXMgbWVzc2FnZXMuCisjOiBhZGQtcGF0Y2guYzoxMDcwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTEyNgorbXNnaWQgIiIKKyJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSBnaXZlbiBhbiBvcHBvcnR1bml0eSB0b1xuIgorImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlIHJlbW92ZWQsIHRoZW4gdGhlIGVkaXQgaXNcbiIKKyJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIKK21zZ3N0ciAiIgorIlNlIG5vbiBwdcOyIGVzc2VyZSBhcHBsaWNhdGEgc2VuemEgcHJvYmxlbWksIHRpIHNhcsOgIGRhdGEgbGEgcG9zc2liaWxpdMOgXG4iCisiZGkgbW9kaWZpY2FybGEgZGkgbnVvdm8uIFNlIHR1dHRlIGxlIHJpZ2hlIGRlbGwnaHVuayBzYXJhbm5vIHN0YXRlXG4iCisicmltb3NzZSwgbGEgbW9kaWZpY2Egc2Fyw6AgaW50ZXJyb3R0YSBlIGwnaHVuayBub24gc2Fyw6AgbW9kaWZpY2F0by5cbiIKKworIzogYWRkLXBhdGNoLmM6MTEwMworbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBsJ2hlYWRlciBodW5rIgorCisjOiBhZGQtcGF0Y2guYzoxMTQ4Cittc2dpZCAiJ2dpdCBhcHBseSAtLWNhY2hlZCcgZmFpbGVkIgorbXNnc3RyICInZ2l0IGFwcGx5IC0tY2FjaGVkJyBub24gcml1c2NpdG8iCisKKyMuIFRSQU5TTEFUT1JTOiBkbyBub3QgdHJhbnNsYXRlIFt5L25dCisjLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IHRoYXQgaW5wdXQgYXQgdGhpcyBwb2ludC4KKyMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCisjLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgorIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCisjLgorIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KKyMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dAorIy4gYXQgdGhpcyBwb2ludC4KKyMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCisjLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgorIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCisjOiBhZGQtcGF0Y2guYzoxMjE4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIzOQorbXNnaWQgIiIKKyJZb3VyIGVkaXRlZCBodW5rIGRvZXMgbm90IGFwcGx5LiBFZGl0IGFnYWluIChzYXlpbmcgXCJub1wiIGRpc2NhcmRzISkgW3kvbl0/ICIKK21zZ3N0ciAiIgorIkwnaHVuayBtb2RpZmljYXRvIG5vbiBwdcOyIGVzc2VyZSBhcHBsaWNhdG8gc2VuemEgcHJvYmxlbWkuIE1vZGlmaWNhcmxvIGRpICIKKyJudW92byAoc2UgcmlzcG9uZGkgXCJub1wiLCBzYXLDoCBlbGltaW5hdG8hKSBbeS9uXT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjYxCittc2dpZCAiVGhlIHNlbGVjdGVkIGh1bmtzIGRvIG5vdCBhcHBseSB0byB0aGUgaW5kZXghIgorbXNnc3RyICJHbGkgaHVuayBzZWxlemlvbmF0aSBub24gc2kgYXBwbGljYW5vIHNlbnphIHByb2JsZW1pIGFsbCdpbmRpY2UhIgorCisjOiBhZGQtcGF0Y2guYzoxMjYyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM0MworbXNnaWQgIkFwcGx5IHRoZW0gdG8gdGhlIHdvcmt0cmVlIGFueXdheT8gIgorbXNnc3RyICJWdW9pIGNvbXVucXVlIGFwcGxpY2FybGkgYWxsJ2FsYmVybyBkaSBsYXZvcm8/ICIKKworIzogYWRkLXBhdGNoLmM6MTI2OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDYKK21zZ2lkICJOb3RoaW5nIHdhcyBhcHBsaWVkLlxuIgorbXNnc3RyICJOb24gw6ggc3RhdG8gYXBwbGljYXRvIG51bGxhLlxuIgorCisjOiBhZGQtcGF0Y2guYzoxMzI2Cittc2dpZCAiIgorImogLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgbmV4dCB1bmRlY2lkZWQgaHVua1xuIgorIkogLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgbmV4dCBodW5rXG4iCisiayAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBwcmV2aW91cyB1bmRlY2lkZWQgaHVua1xuIgorIksgLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgcHJldmlvdXMgaHVua1xuIgorImcgLSBzZWxlY3QgYSBodW5rIHRvIGdvIHRvXG4iCisiLyAtIHNlYXJjaCBmb3IgYSBodW5rIG1hdGNoaW5nIHRoZSBnaXZlbiByZWdleFxuIgorInMgLSBzcGxpdCB0aGUgY3VycmVudCBodW5rIGludG8gc21hbGxlciBodW5rc1xuIgorImUgLSBtYW51YWxseSBlZGl0IHRoZSBjdXJyZW50IGh1bmtcbiIKKyI/IC0gcHJpbnQgaGVscFxuIgorbXNnc3RyICIiCisiaiAtIG5vbiBkZWNpZGVyZSBpbiBtZXJpdG8gYSBxdWVzdCdodW5rLCB2YWkgYWwgc3VjY2Vzc2l2byBodW5rIHBlciBjdWkgbm9uICIKKyLDqCBzdGF0YSBwcmVzYSB1bmEgZGVjaXNpb25lXG4iCisiSiAtIG5vbiBkZWNpZGVyZSBpbiBtZXJpdG8gYSBxdWVzdCdodW5rLCB2YWkgYWxsJ2h1bmsgc3VjY2Vzc2l2b1xuIgorImsgLSBub24gZGVjaWRlcmUgaW4gbWVyaXRvIGEgcXVlc3QnaHVuaywgdmFpIGFsIHByZWNlZGVudGUgaHVuayBwZXIgY3VpIG5vbiAiCisiw6ggc3RhdGEgcHJlc2EgdW5hIGRlY2lzaW9uZVxuIgorIksgLSBub24gZGVjaWRlcmUgaW4gbWVyaXRvIGEgcXVlc3QnaHVuaywgdmFpIGFsbCdodW5rIHByZWNlZGVudGVcbiIKKyJnIC0gc2VsZXppb25hIHVuIGh1bmsgYSBjdWkgYW5kYXJlXG4iCisiLyAtIGNlcmNhIHVuIGh1bmsgY29ycmlzcG9uZGVudGUgYWxsJ2VzcHJlc3Npb25lIHJlZ29sYXJlIGRhdGFcbiIKKyJzIC0gc3VkZGl2aWRpIGwnaHVuayBjb3JyZW50ZSBpbiBodW5rIHBpw7kgcGljY29saVxuIgorImUgLSBtb2RpZmljYSBtYW51YWxtZW50ZSBsJ2h1bmsgY29ycmVudGVcbiIKKyI/IC0gc3RhbXBhIHVuYSBndWlkYVxuIgorCisjOiBhZGQtcGF0Y2guYzoxNDQ3IGFkZC1wYXRjaC5jOjE0NTcKK21zZ2lkICJObyBwcmV2aW91cyBodW5rIgorbXNnc3RyICJOZXNzdW4gaHVuayBwcmVjZWRlbnRlIgorCisjOiBhZGQtcGF0Y2guYzoxNDUyIGFkZC1wYXRjaC5jOjE0NjIKK21zZ2lkICJObyBuZXh0IGh1bmsiCittc2dzdHIgIk5lc3N1biBodW5rIHN1Y2Nlc3Npdm8iCisKKyM6IGFkZC1wYXRjaC5jOjE0NjgKK21zZ2lkICJObyBvdGhlciBodW5rcyB0byBnb3RvIgorbXNnc3RyICJOZXNzdW4gYWx0cm8gaHVuayBhIGN1aSBhbmRhcmUiCisKKyM6IGFkZC1wYXRjaC5jOjE0NzkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTc3Cittc2dpZCAiZ28gdG8gd2hpY2ggaHVuayAoPHJldD4gdG8gc2VlIG1vcmUpPyAiCittc2dzdHIgImEgcXVhbGUgaHVuayBkZXNpZGVyaSBhbmRhcmUgKHByZW1pIDxJbnZpbz4gcGVyIHZlZGVybmUgYWx0cmkpPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE0ODAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTc5Cittc2dpZCAiZ28gdG8gd2hpY2ggaHVuaz8gIgorbXNnc3RyICJhIHF1YWxlIGh1bmsgZGVzaWRlcmkgYW5kYXJlPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE0OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBudW1iZXI6ICclcyciCittc2dzdHIgIk51bWVybyBub24gdmFsaWRvOiAnJXMnIgorCisjOiBhZGQtcGF0Y2guYzoxNDk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlNvcnJ5LCBvbmx5ICVkIGh1bmsgYXZhaWxhYmxlLiIKK21zZ2lkX3BsdXJhbCAiU29ycnksIG9ubHkgJWQgaHVua3MgYXZhaWxhYmxlLiIKK21zZ3N0clswXSAiTWkgZGlzcGlhY2UsIMOoIGRpc3BvbmliaWxlIHNvbG8gJWQgaHVuay4iCittc2dzdHJbMV0gIk1pIGRpc3BpYWNlLCBzb25vIGRpc3BvbmliaWxpIHNvbG8gJWQgaHVuay4iCisKKyM6IGFkZC1wYXRjaC5jOjE1MDUKK21zZ2lkICJObyBvdGhlciBodW5rcyB0byBzZWFyY2giCittc2dzdHIgIk5lc3N1biBhbHRybyBodW5rIGluIGN1aSBlc2VndWlyZSBsYSByaWNlcmNhIgorCisjOiBhZGQtcGF0Y2guYzoxNTExIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYyMworbXNnaWQgInNlYXJjaCBmb3IgcmVnZXg/ICIKK21zZ3N0ciAiY2VyY2FyZSB1bidlc3ByZXNzaW9uZSByZWdvbGFyZT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hbGZvcm1lZCBzZWFyY2ggcmVnZXhwICVzOiAlcyIKK21zZ3N0ciAiRXNwcmVzc2lvbmUgcmVnb2xhcmUgZGkgcmljZXJjYSAlcyBtYWxmb3JtYXRhOiAlcyIKKworIzogYWRkLXBhdGNoLmM6MTU0MworbXNnaWQgIk5vIGh1bmsgbWF0Y2hlcyB0aGUgZ2l2ZW4gcGF0dGVybiIKK21zZ3N0ciAiTmVzc3VuIGh1bmsgY29ycmlzcG9uZGUgYWwgcGF0dGVybiBmb3JuaXRvIgorCisjOiBhZGQtcGF0Y2guYzoxNTUwCittc2dpZCAiU29ycnksIGNhbm5vdCBzcGxpdCB0aGlzIGh1bmsiCittc2dzdHIgIk1pIGRpc3BpYWNlLCBub24gcG9zc28gc3VkZGl2aWRlcmUgcXVlc3QnaHVuayIKKworIzogYWRkLXBhdGNoLmM6MTU1NAorIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdCBpbnRvICVkIGh1bmtzLiIKK21zZ3N0ciAiU3VkZGl2aXNvIGluICVkIGh1bmsuIgorCisjOiBhZGQtcGF0Y2guYzoxNTU4Cittc2dpZCAiU29ycnksIGNhbm5vdCBlZGl0IHRoaXMgaHVuayIKK21zZ3N0ciAiTWkgZGlzcGlhY2UsIG5vbiBwb3NzbyBtb2RpZmljYXJlIHF1ZXN0J2h1bmsiCisKKyM6IGFkZC1wYXRjaC5jOjE2MDkKK21zZ2lkICInZ2l0IGFwcGx5JyBmYWlsZWQiCittc2dzdHIgIidnaXQgYXBwbHknIG5vbiByaXVzY2l0byIKKworIzogYWR2aWNlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzaGludDogJS4qcyVzXG4iCittc2dzdHIgIiVzc3VnZ2VyaW1lbnRvOiAlLipzJXNcbiIKKworIzogYWR2aWNlLmM6MTY4Cittc2dpZCAiQ2hlcnJ5LXBpY2tpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgorbXNnc3RyICIiCisiSWwgY2hlcnJ5IHBpY2tpbmcgbm9uIMOoIHBvc3NpYmlsZSBwZXJjaMOpIGNpIHNvbm8gZmlsZSBkaSBjdWkgbm9uIMOoIHN0YXRvICIKKyJlc2VndWl0byBpbCBtZXJnZS4iCisKKyM6IGFkdmljZS5jOjE3MAorbXNnaWQgIkNvbW1pdHRpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgorbXNnc3RyICIiCisiSWwgY29tbWl0IG5vbiDDqCBwb3NzaWJpbGUgcGVyY2jDqSBjaSBzb25vIGZpbGUgZGkgY3VpIG5vbiDDqCBzdGF0byBlc2VndWl0byBpbCAiCisibWVyZ2UuIgorCisjOiBhZHZpY2UuYzoxNzIKK21zZ2lkICJNZXJnaW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKK21zZ3N0ciAiIgorIklsIG1lcmdlIG5vbiDDqCBwb3NzaWJpbGUgcGVyY2jDqSBjaSBzb25vIGZpbGUgZGkgY3VpIG5vbiDDqCBzdGF0byBlc2VndWl0byBpbCAiCisibWVyZ2UuIgorCisjOiBhZHZpY2UuYzoxNzQKK21zZ2lkICJQdWxsaW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKK21zZ3N0ciAiIgorIklsIHB1bGwgbm9uIMOoIHBvc3NpYmlsZSBwZXJjaMOpIGNpIHNvbm8gZmlsZSBkaSBjdWkgbm9uIMOoIHN0YXRvIGVzZWd1aXRvIGlsICIKKyJtZXJnZS4iCisKKyM6IGFkdmljZS5jOjE3NgorbXNnaWQgIlJldmVydGluZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCittc2dzdHIgIiIKKyJJbCByZXZlcnQgbm9uIMOoIHBvc3NpYmlsZSBwZXJjaMOpIGNpIHNvbm8gZmlsZSBkaSBjdWkgbm9uIMOoIHN0YXRvIGVzZWd1aXRvIGlsICIKKyJtZXJnZS4iCisKKyM6IGFkdmljZS5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJJdCBpcyBub3QgcG9zc2libGUgdG8gJXMgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBlc2VndWlyZSBpbCAlcyBwZXJjaMOpIGNpIHNvbm8gZmlsZSBkaSBjdWkgbm9uIMOoIHN0YXRvIGVzZWd1aXRvICIKKyJpbCBtZXJnZS4iCisKKyM6IGFkdmljZS5jOjE4NgorbXNnaWQgIiIKKyJGaXggdGhlbSB1cCBpbiB0aGUgd29yayB0cmVlLCBhbmQgdGhlbiB1c2UgJ2dpdCBhZGQvcm0gPGZpbGU+J1xuIgorImFzIGFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbiBhbmQgbWFrZSBhIGNvbW1pdC4iCittc2dzdHIgIiIKKyJDb3JyZWdnaWxpIG5lbGwnYWxiZXJvIGRpIGxhdm9ybywgcXVpbmRpIHVzYSAnZ2l0IGFkZC9ybSA8ZmlsZT4uLi4nIGNvbWUgIgorImFwcHJvcHJpYXRvIHBlciByaXNvbHZlcmxpIGVkIGVzZWd1aSB1biBjb21taXQuIgorCisjOiBhZHZpY2UuYzoxOTQKK21zZ2lkICJFeGl0aW5nIGJlY2F1c2Ugb2YgYW4gdW5yZXNvbHZlZCBjb25mbGljdC4iCittc2dzdHIgIkVzY28gYSBjYXVzYSBkaSB1biBjb25mbGl0dG8gbm9uIHJpc29sdG8uIgorCisjOiBhZHZpY2UuYzoxOTkgYnVpbHRpbi9tZXJnZS5jOjEzMzUKK21zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS4iCittc2dzdHIgIklsIG1lcmdlIG5vbiDDqCBzdGF0byBjb25jbHVzbyAoZXNpc3RlIE1FUkdFX0hFQUQpLiIKKworIzogYWR2aWNlLmM6MjAxCittc2dpZCAiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSBtZXJnaW5nLiIKK21zZ3N0ciAiRXNlZ3VpIGlsIGNvbW1pdCBkZWxsZSBtb2RpZmljaGUgcHJpbWEgZGkgZXNlZ3VpcmUgaWwgbWVyZ2UuIgorCisjOiBhZHZpY2UuYzoyMDIKK21zZ2lkICJFeGl0aW5nIGJlY2F1c2Ugb2YgdW5maW5pc2hlZCBtZXJnZS4iCittc2dzdHIgIkVzY28gYSBjYXVzYSBkaSB1biBtZXJnZSBub24gdGVybWluYXRvLiIKKworIzogYWR2aWNlLmM6MjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJOb3RlOiBzd2l0Y2hpbmcgdG8gJyVzJy5cbiIKKyJcbiIKKyJZb3UgYXJlIGluICdkZXRhY2hlZCBIRUFEJyBzdGF0ZS4gWW91IGNhbiBsb29rIGFyb3VuZCwgbWFrZSBleHBlcmltZW50YWxcbiIKKyJjaGFuZ2VzIGFuZCBjb21taXQgdGhlbSwgYW5kIHlvdSBjYW4gZGlzY2FyZCBhbnkgY29tbWl0cyB5b3UgbWFrZSBpbiB0aGlzXG4iCisic3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHN3aXRjaGluZyBiYWNrIHRvIGEgYnJhbmNoLlxuIgorIlxuIgorIklmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIG5ldyBicmFuY2ggdG8gcmV0YWluIGNvbW1pdHMgeW91IGNyZWF0ZSwgeW91IG1heVxuIgorImRvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1jIHdpdGggdGhlIHN3aXRjaCBjb21tYW5kLiBFeGFtcGxlOlxuIgorIlxuIgorIiAgZ2l0IHN3aXRjaCAtYyA8bmV3LWJyYW5jaC1uYW1lPlxuIgorIlxuIgorIk9yIHVuZG8gdGhpcyBvcGVyYXRpb24gd2l0aDpcbiIKKyJcbiIKKyIgIGdpdCBzd2l0Y2ggLVxuIgorIlxuIgorIlR1cm4gb2ZmIHRoaXMgYWR2aWNlIGJ5IHNldHRpbmcgY29uZmlnIHZhcmlhYmxlIGFkdmljZS5kZXRhY2hlZEhlYWQgdG8gIgorImZhbHNlXG4iCisiXG4iCittc2dzdHIgIiIKKyJOb3RhOiBlc2VndW8gaWwgY2hlY2tvdXQgZGkgJyVzJy5cbiIKKyJcbiIKKyJTZWkgbmVsbG8gc3RhdG8gJ0hFQUQgc2NvbGxlZ2F0bycuIFB1b2kgZGFyZSB1bidvY2NoaWF0YSwgYXBwb3J0YXJlICIKKyJtb2RpZmljaGVcbiIKKyJzcGVyaW1lbnRhbGkgZWQgZXNlZ3Vpcm5lIGlsIGNvbW1pdCwgZSBwdW9pIHNjYXJ0YXJlIHF1YWx1bnF1ZSBjb21taXQgIgorImVzZWd1aXRvXG4iCisiaW4gcXVlc3RvIHN0YXRvIHNlbnphIGNoZSBjacOyIGFiYmlhIGFsY3VuYSBpbmZsdWVuemEgc3VnbGkgYWx0cmkgYnJhbmNoICIKKyJ0b3JuYW5kb1xuIgorInN1IHVuIGJyYW5jaC5cbiIKKyJcbiIKKyJTZSB2dW9pIGNyZWFyZSB1biBudW92byBicmFuY2ggcGVyIG1hbnRlbmVyZSBpIGNvbW1pdCBjcmVhdGksIHB1b2kgZmFybG9cbiIKKyIob3JhIG8gaW4gc2VndWl0bykgdXNhbmRvIGwnb3B6aW9uZSAtYyBjb24gaWwgY29tYW5kbyBzd2l0Y2guIEFkIGVzZW1waW86XG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1jIDxub21lIG51b3ZvIGJyYW5jaD5cbiIKKyJcbiIKKyJPcHB1cmUgcHVvaSBhbm51bGxhcmUgcXVlc3Qnb3BlcmF6aW9uZSBjb246XG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1cbiIKKyJcbiIKKyJEaXNhdHRpdmEgcXVlc3RvIGNvbnNpZ2xpbyBpbXBvc3RhbmRvIGxhIHZhcmlhYmlsZSBkaSBjb25maWd1cmF6aW9uZVxuIgorImFkdmljZS5kZXRhY2hlZEhlYWQgYSBmYWxzZVxuIgorIlxuIgorCisjOiBhbGlhcy5jOjUwCittc2dpZCAiY21kbGluZSBlbmRzIHdpdGggXFwiCittc2dzdHIgImxhIHJpZ2EgZGkgY29tYW5kbyB0ZXJtaW5hIGNvbiBcXCIKKworIzogYWxpYXMuYzo1MQorbXNnaWQgInVuY2xvc2VkIHF1b3RlIgorbXNnc3RyICJ2aXJnb2xldHRlIG5vbiBjaGl1c2UiCisKKyM6IGFwcGx5LmM6NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2Ugb3B0aW9uICclcyciCittc2dzdHIgIm9wemlvbmUgc3BhemkgYmlhbmNoaSAnJXMnIG5vbiByaWNvbm9zY2l1dGEiCisKKyM6IGFwcGx5LmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2UgaWdub3JlIG9wdGlvbiAnJXMnIgorbXNnc3RyICJvcHppb25lIGlnbm9yYSBzcGF6aSBiaWFuY2hpICclcycgbm9uIHJpY29ub3NjaXV0YSIKKworIzogYXBwbHkuYzoxMzUKK21zZ2lkICItLXJlamVjdCBhbmQgLS0zd2F5IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyLiIKK21zZ3N0ciAiLS1yZWplY3QgZSAtLTN3YXkgbm9uIHBvc3Nvbm8gZXNzZXJlIHVzYXRpIGluc2llbWUuIgorCisjOiBhcHBseS5jOjEzNworbXNnaWQgIi0tY2FjaGVkIGFuZCAtLTN3YXkgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuIgorbXNnc3RyICItLWNhY2hlZCBlIC0tM3dheSBub24gcG9zc29ubyBlc3NlcmUgdXNhdGkgaW5zaWVtZS4iCisKKyM6IGFwcGx5LmM6MTQwCittc2dpZCAiLS0zd2F5IG91dHNpZGUgYSByZXBvc2l0b3J5IgorbXNnc3RyICItLTN3YXkgYWwgZGkgZnVvcmkgZGkgdW4gcmVwb3NpdG9yeSIKKworIzogYXBwbHkuYzoxNTEKK21zZ2lkICItLWluZGV4IG91dHNpZGUgYSByZXBvc2l0b3J5IgorbXNnc3RyICItLWluZGV4IGFsIGRpIGZ1b3JpIGRpIHVuIHJlcG9zaXRvcnkiCisKKyM6IGFwcGx5LmM6MTU0Cittc2dpZCAiLS1jYWNoZWQgb3V0c2lkZSBhIHJlcG9zaXRvcnkiCittc2dzdHIgIi0tY2FjaGVkIGFsIGRpIGZ1b3JpIGRpIHVuIHJlcG9zaXRvcnkiCisKKyM6IGFwcGx5LmM6ODAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBwcmVwYXJlIHRpbWVzdGFtcCByZWdleHAgJXMiCittc2dzdHIgIkltcG9zc2liaWxlIHByZXBhcmFyZSBsJ2VzcHJlc3Npb25lIHJlZ29sYXJlIHRpbWVzdGFtcCAlcyIKKworIzogYXBwbHkuYzo4MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVnZXhlYyByZXR1cm5lZCAlZCBmb3IgaW5wdXQ6ICVzIgorbXNnc3RyICJyZWdleGVjIGhhIHJlc3RpdHVpdG8gJWQgcGVyIGwnaW5wdXQ6ICVzIgorCisjOiBhcHBseS5jOjg4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmluZCBmaWxlbmFtZSBpbiBwYXRjaCBhdCBsaW5lICVkIgorbXNnc3RyICJpbXBvc3NpYmlsZSB0cm92YXJlIGlsIG5vbWUgZGVsIGZpbGUgbmVsbGEgcGF0Y2ggYWxsYSByaWdhICVkIgorCisjOiBhcHBseS5jOjkyMgorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGV4cGVjdGVkIC9kZXYvbnVsbCwgZ290ICVzIG9uIGxpbmUgJWQiCittc2dzdHIgIiIKKyJnaXQgYXBwbHk6IGdpdC1kaWZmIGVycmF0byAtIGF0dGVzbyAvZGV2L251bGwsIHJpY2V2dXRvICVzIGFsbGEgcmlnYSAlZCIKKworIzogYXBwbHkuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBpbmNvbnNpc3RlbnQgbmV3IGZpbGVuYW1lIG9uIGxpbmUgJWQiCittc2dzdHIgIiIKKyJnaXQgYXBwbHk6IGdpdC1kaWZmIGVycmF0byAtIG51b3ZvIG5vbWUgZGVsIGZpbGUgaW5jb25zaXN0ZW50ZSBhbGxhIHJpZ2EgJWQiCisKKyM6IGFwcGx5LmM6OTI5CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gaW5jb25zaXN0ZW50IG9sZCBmaWxlbmFtZSBvbiBsaW5lICVkIgorbXNnc3RyICIiCisiZ2l0IGFwcGx5OiBnaXQtZGlmZiBlcnJhdG8gLSB2ZWNjaGlvIG5vbWUgZGVsIGZpbGUgaW5jb25zaXN0ZW50ZSBhbGxhIHJpZ2EgJWQiCisKKyM6IGFwcGx5LmM6OTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gZXhwZWN0ZWQgL2Rldi9udWxsIG9uIGxpbmUgJWQiCittc2dzdHIgImdpdCBhcHBseTogZ2l0LWRpZmYgZXJyYXRvIC0gYXR0ZXNvIC9kZXYvbnVsbCBhbGxhIHJpZ2EgJWQiCisKKyM6IGFwcGx5LmM6OTYzCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgbW9kZSBvbiBsaW5lICVkOiAlcyIKK21zZ3N0ciAibW9kbyBub24gdmFsaWRvIGFsbGEgcmlnYSAlZDogJXMiCisKKyM6IGFwcGx5LmM6MTI4MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbmNvbnNpc3RlbnQgaGVhZGVyIGxpbmVzICVkIGFuZCAlZCIKK21zZ3N0ciAicmlnaGUgZGkgaW50ZXN0YXppb25lICVkIGUgJWQgaW5jb25zaXN0ZW50aSIKKworIzogYXBwbHkuYzoxMzcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gd2hlbiByZW1vdmluZyAlZCBsZWFkaW5nIHBhdGhuYW1lICIKKyJjb21wb25lbnQgKGxpbmUgJWQpIgorbXNnaWRfcGx1cmFsICIiCisiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIHdoZW4gcmVtb3ZpbmcgJWQgbGVhZGluZyBwYXRobmFtZSAiCisiY29tcG9uZW50cyAobGluZSAlZCkiCittc2dzdHJbMF0gIiIKKyJsJ2ludGVzdGF6aW9uZSBnaXQgZGlmZiBub24gcmlwb3J0YSBsZSBpbmZvcm1hemlvbmkgc3VsIGZpbGUgdW5hIHZvbHRhICIKKyJyaW1vc3NvICVkIGNvbXBvbmVudGUgaW5pemlhbGUgZGVsIHBlcmNvcnNvIChyaWdhICVkKSIKK21zZ3N0clsxXSAiIgorImwnaW50ZXN0YXppb25lIGdpdCBkaWZmIG5vbiByaXBvcnRhIGxlIGluZm9ybWF6aW9uaSBzdWwgZmlsZSB1bmEgdm9sdGEgIgorInJpbW9zc2kgJWQgY29tcG9uZW50aSBpbml6aWFsaSBkZWwgcGVyY29yc28gKHJpZ2EgJWQpIgorCisjOiBhcHBseS5jOjEzODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIChsaW5lICVkKSIKK21zZ3N0ciAibCdpbnRlc3RhemlvbmUgZ2l0IGRpZmYgbm9uIHJpcG9ydGEgbGUgaW5mb3JtYXppb25pIHN1bCBmaWxlIChyaWdhICVkKSIKKworIzogYXBwbHkuYzoxNDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlY291bnQ6IHVuZXhwZWN0ZWQgbGluZTogJS4qcyIKK21zZ3N0ciAicmVjb3VudDogcmlnYSBpbmF0dGVzYTogJS4qcyIKKworIzogYXBwbHkuYzoxNTUwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGNoIGZyYWdtZW50IHdpdGhvdXQgaGVhZGVyIGF0IGxpbmUgJWQ6ICUuKnMiCittc2dzdHIgImZyYW1tZW50byBkaSBwYXRjaCBzZW56YSBpbnRlc3RhemlvbmUgYWxsYSByaWdhICVkOiAlLipzIgorCisjOiBhcHBseS5jOjE3NTMKK21zZ2lkICJuZXcgZmlsZSBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKK21zZ3N0ciAiaWwgbnVvdm8gZmlsZSBkaXBlbmRlIGRhIHZlY2NoaSBjb250ZW51dGkiCisKKyM6IGFwcGx5LmM6MTc1NQorbXNnaWQgImRlbGV0ZWQgZmlsZSBzdGlsbCBoYXMgY29udGVudHMiCittc2dzdHIgImlsIGZpbGUgZWxpbWluYXRvIGhhIGFuY29yYSBkZWkgY29udGVudXRpIgorCisjOiBhcHBseS5jOjE3ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29ycnVwdCBwYXRjaCBhdCBsaW5lICVkIgorbXNnc3RyICJwYXRjaCBjb3Jyb3R0YSBhbGxhIHJpZ2EgJWQiCisKKyM6IGFwcGx5LmM6MTgyNgorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgZmlsZSAlcyBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKK21zZ3N0ciAiaWwgbnVvdm8gZmlsZSAlcyBkaXBlbmRlIGRhIHZlY2NoaSBjb250ZW51dGkiCisKKyM6IGFwcGx5LmM6MTgyOAorIywgYy1mb3JtYXQKK21zZ2lkICJkZWxldGVkIGZpbGUgJXMgc3RpbGwgaGFzIGNvbnRlbnRzIgorbXNnc3RyICJpbCBmaWxlIGVsaW1pbmF0byAlcyBoYSBhbmNvcmEgZGVpIGNvbnRlbnV0aSIKKworIzogYXBwbHkuYzoxODMxCisjLCBjLWZvcm1hdAorbXNnaWQgIioqIHdhcm5pbmc6IGZpbGUgJXMgYmVjb21lcyBlbXB0eSBidXQgaXMgbm90IGRlbGV0ZWQiCittc2dzdHIgIioqIGF0dGVuemlvbmU6IGlsIGZpbGUgJXMgZGl2ZW50YSB2dW90byBtYSBub24gw6ggZWxpbWluYXRvIgorCisjOiBhcHBseS5jOjE5NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29ycnVwdCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZDogJS4qcyIKK21zZ3N0ciAicGF0Y2ggYmluYXJpYSBjb3Jyb3R0YSBhbGxhIHJpZ2EgJWQ6ICUuKnMiCisKKyM6IGFwcGx5LmM6MjAxNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgYmluYXJ5IHBhdGNoIGF0IGxpbmUgJWQiCittc2dzdHIgInBhdGNoIGJpbmFyaWEgbm9uIHJpY29ub3NjaXV0YSBhbGxhIHJpZ2EgJWQiCisKKyM6IGFwcGx5LmM6MjE3NworIywgYy1mb3JtYXQKK21zZ2lkICJwYXRjaCB3aXRoIG9ubHkgZ2FyYmFnZSBhdCBsaW5lICVkIgorbXNnc3RyICJwYXRjaCBjb24gc29saSBjb250ZW51dGkgZ2FyYmFnZSBhbGxhIHJpZ2EgJWQiCisKKyM6IGFwcGx5LmM6MjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBzeW1saW5rICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGlsIGNvbGxlZ2FtZW50byBzaW1ib2xpY28gJXMiCisKKyM6IGFwcGx5LmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvciByZWFkICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgbyBsZWdnZXJlICVzIgorCisjOiBhcHBseS5jOjI5MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzdGFydCBvZiBsaW5lOiAnJWMnIgorbXNnc3RyICJpbml6aW8gZGVsbGEgcmlnYSBub24gdmFsaWRvOiAnJWMnIgorCisjOiBhcHBseS5jOjMwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiSHVuayAjJWQgc3VjY2VlZGVkIGF0ICVkIChvZmZzZXQgJWQgbGluZSkuIgorbXNnaWRfcGx1cmFsICJIdW5rICMlZCBzdWNjZWVkZWQgYXQgJWQgKG9mZnNldCAlZCBsaW5lcykuIgorbXNnc3RyWzBdICJBcHBsaWNhemlvbmUgZnJhbW1lbnRvICVkIHJpdXNjaXRhIGFsbGEgcmlnYSAlZCAob2Zmc2V0OiAlZCByaWdhKS4iCittc2dzdHJbMV0gIkFwcGxpY2F6aW9uZSBmcmFtbWVudG8gJWQgcml1c2NpdGEgYWxsYSByaWdhICVkIChvZmZzZXQ6ICVkIHJpZ2hlKS4iCisKKyM6IGFwcGx5LmM6MzA2OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb250ZXh0IHJlZHVjZWQgdG8gKCVsZC8lbGQpIHRvIGFwcGx5IGZyYWdtZW50IGF0ICVkIgorbXNnc3RyICJDb250ZXN0byByaWRvdHRvIGEgKCVsZC8lbGQpIHBlciBhcHBsaWNhcmUgaWwgZnJhbW1lbnRvIGFsbGEgcmlnYSAlZCIKKworIzogYXBwbHkuYzozMDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ3aGlsZSBzZWFyY2hpbmcgZm9yOlxuIgorIiUuKnMiCittc2dzdHIgIiIKKyJkdXJhbnRlIGxhIHJpY2VyY2EgZGk6XG4iCisiJS4qcyIKKworIzogYXBwbHkuYzozMDk3CisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgYmluYXJ5IHBhdGNoIGRhdGEgZm9yICclcyciCittc2dzdHIgImRhdGkgZGVsbGEgcGF0Y2ggYmluYXJpYSBtYW5jYW50aSBwZXIgJyVzJyIKKworIzogYXBwbHkuYzozMTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZXZlcnNlLWFwcGx5IGEgYmluYXJ5IHBhdGNoIHdpdGhvdXQgdGhlIHJldmVyc2UgaHVuayB0byAnJXMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgYXBwbGljYXJlIHVuYSBwYXRjaCBiaW5hcmlhIGFsIGNvbnRyYXJpbyBzZW56YSBsJ2h1bmsgY29udHJhcmlvICIKKyJwZXIgJyVzJyIKKworIzogYXBwbHkuYzozMTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBhcHBseSBiaW5hcnkgcGF0Y2ggdG8gJyVzJyB3aXRob3V0IGZ1bGwgaW5kZXggbGluZSIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIGFwcGxpY2FyZSB1bmEgcGF0Y2ggYmluYXJpYSBhICclcycgc2VuemEgbGEgcmlnYSBkJ2luZGljZSAiCisiY29tcGxldGEiCisKKyM6IGFwcGx5LmM6MzE2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisidGhlIHBhdGNoIGFwcGxpZXMgdG8gJyVzJyAoJXMpLCB3aGljaCBkb2VzIG5vdCBtYXRjaCB0aGUgY3VycmVudCBjb250ZW50cy4iCittc2dzdHIgIiIKKyJsYSBwYXRjaCBzaSBhcHBsaWNhIGEgJyVzJyAoJXMpLCBjaGUgbm9uIGNvcnJpc3BvbmRlIGFpIGNvbnRlbnV0aSBjb3JyZW50aSAiCisiZGVsIGZpbGUuIgorCisjOiBhcHBseS5jOjMxNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlIHBhdGNoIGFwcGxpZXMgdG8gYW4gZW1wdHkgJyVzJyBidXQgaXQgaXMgbm90IGVtcHR5IgorbXNnc3RyICJsYSBwYXRjaCBzaSBhcHBsaWNhIGEgdW4gZmlsZSB2dW90byAnJXMnIG1hIGlsIGZpbGUgbm9uIMOoIHZ1b3RvIgorCisjOiBhcHBseS5jOjMxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlIG5lY2Vzc2FyeSBwb3N0aW1hZ2UgJXMgZm9yICclcycgY2Fubm90IGJlIHJlYWQiCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgbGEgcG9zdGltbWFnaW5lICVzIG5lY2Vzc2FyaWEgcGVyICclcyciCisKKyM6IGFwcGx5LmM6MzIwMgorIywgYy1mb3JtYXQKK21zZ2lkICJiaW5hcnkgcGF0Y2ggZG9lcyBub3QgYXBwbHkgdG8gJyVzJyIKK21zZ3N0ciAibGEgcGF0Y2ggYmluYXJpYSBub24gc2kgYXBwbGljYSBjb3JyZXR0YW1lbnRlIGEgJyVzJyIKKworIzogYXBwbHkuYzozMjA5CisjLCBjLWZvcm1hdAorbXNnaWQgImJpbmFyeSBwYXRjaCB0byAnJXMnIGNyZWF0ZXMgaW5jb3JyZWN0IHJlc3VsdCAoZXhwZWN0aW5nICVzLCBnb3QgJXMpIgorbXNnc3RyICIiCisibGEgcGF0Y2ggYmluYXJpYSBzdSAnJXMnIGNyZWEgcmlzdWx0YXRpIG5vbiBjb3JyZXR0aSAoYXR0ZXNvICVzLCByaWNldnV0byAlcykiCisKKyM6IGFwcGx5LmM6MzIzMAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRjaCBmYWlsZWQ6ICVzOiVsZCIKK21zZ3N0ciAicGF0Y2ggbm9uIHJpdXNjaXRhOiAlczolbGQiCisKKyM6IGFwcGx5LmM6MzM1MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY2hlY2tvdXQgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGlsIGNoZWNrb3V0IGRpICclcyciCisKKyM6IGFwcGx5LmM6MzQwNSBhcHBseS5jOjM0MTYgYXBwbHkuYzozNDYyIG1pZHguYzo2MSBzZXR1cC5jOjI5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCAlcyIKK21zZ3N0ciAibGV0dHVyYSBkaSAlcyBub24gcml1c2NpdGEiCisKKyM6IGFwcGx5LmM6MzQxMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkaW5nIGZyb20gJyVzJyBiZXlvbmQgYSBzeW1ib2xpYyBsaW5rIgorbXNnc3RyICJsZXR0dXJhIGRpICclcycgb2x0cmUgdW4gY29sbGVnYW1lbnRvIHNpbWJvbGljbyIKKworIzogYXBwbHkuYzozNDQyIGFwcGx5LmM6MzY4NQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICVzIGhhcyBiZWVuIHJlbmFtZWQvZGVsZXRlZCIKK21zZ3N0ciAiaWwgcGVyY29yc28gJXMgw6ggc3RhdG8gcmlub21pbmF0by9lbGltaW5hdG8iCisKKyM6IGFwcGx5LmM6MzUyOCBhcHBseS5jOjM3MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRvZXMgbm90IGV4aXN0IGluIGluZGV4IgorbXNnc3RyICIlczogbm9uIGVzaXN0ZSBuZWxsJ2luZGljZSIKKworIzogYXBwbHkuYzozNTM3IGFwcGx5LmM6MzcwOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZG9lcyBub3QgbWF0Y2ggaW5kZXgiCittc2dzdHIgIiVzOiBub24gY29ycmlzcG9uZGUgYWxsJ2luZGljZSIKKworIzogYXBwbHkuYzozNTcyCittc2dpZCAicmVwb3NpdG9yeSBsYWNrcyB0aGUgbmVjZXNzYXJ5IGJsb2IgdG8gZmFsbCBiYWNrIG9uIDMtd2F5IG1lcmdlLiIKK21zZ3N0ciAiIgorImRhbCByZXBvc2l0b3J5IG1hbmNhIGlsIGJsb2IgbmVjZXNzYXJpbyBwZXIgcmlwaWVnYXJlIHN1bCBtZXJnZSBhIHRyZSB2aWUuIgorCisjOiBhcHBseS5jOjM1NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFsbGluZyBiYWNrIHRvIHRocmVlLXdheSBtZXJnZS4uLlxuIgorbXNnc3RyICJSaXBpZWdvIHN1bCBtZXJnZSBhIHRyZSB2aWUuLi5cbiIKKworIzogYXBwbHkuYzozNTkxIGFwcGx5LmM6MzU5NQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCB0aGUgY3VycmVudCBjb250ZW50cyBvZiAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGkgY29udGVudXRpIGNvcnJlbnRpIGRpICclcyciCisKKyM6IGFwcGx5LmM6MzYwNworIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gZmFsbCBiYWNrIG9uIHRocmVlLXdheSBtZXJnZS4uLlxuIgorbXNnc3RyICJSaXBpZWdvIHN1bCBtZXJnZSBhIHRyZSB2aWUgbm9uIHJpdXNjaXRvLi4uXG4iCisKKyM6IGFwcGx5LmM6MzYyMQorIywgYy1mb3JtYXQKK21zZ2lkICJBcHBsaWVkIHBhdGNoIHRvICclcycgd2l0aCBjb25mbGljdHMuXG4iCittc2dzdHIgIlBhdGNoIGFwcGxpY2F0YSBhICclcycgY29uIGNvbmZsaXR0aS5cbiIKKworIzogYXBwbHkuYzozNjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyBjbGVhbmx5LlxuIgorbXNnc3RyICJQYXRjaCAnJXMnIGFwcGxpY2F0YSBjb3JyZXR0YW1lbnRlLlxuIgorCisjOiBhcHBseS5jOjM2NTIKK21zZ2lkICJyZW1vdmFsIHBhdGNoIGxlYXZlcyBmaWxlIGNvbnRlbnRzIgorbXNnc3RyICJsYSByaW1vemlvbmUgZGVsbGEgcGF0Y2ggbGFzY2lhIGNvbnRlbnV0aSBkZWwgZmlsZSIKKworIzogYXBwbHkuYzozNzI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3cm9uZyB0eXBlIgorbXNnc3RyICIlczogdGlwbyBlcnJhdG8iCisKKyM6IGFwcGx5LmM6MzcyNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBoYXMgdHlwZSAlbywgZXhwZWN0ZWQgJW8iCittc2dzdHIgIiVzIGhhIGlsIHRpcG8gJW8sIGF0dGVzbyAlbyIKKworIzogYXBwbHkuYzozODc4IGFwcGx5LmM6Mzg4MCByZWFkLWNhY2hlLmM6ODMwIHJlYWQtY2FjaGUuYzo4NTYKKyM6IHJlYWQtY2FjaGUuYzoxMzI1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGF0aCAnJXMnIgorbXNnc3RyICJwZXJjb3JzbyAnJXMnIG5vbiB2YWxpZG8iCisKKyM6IGFwcGx5LmM6MzkzNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgiCittc2dzdHIgIiVzOiBlc2lzdGUgZ2nDoCBuZWxsJ2luZGljZSIKKworIzogYXBwbHkuYzozOTM5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBhbHJlYWR5IGV4aXN0cyBpbiB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAiJXM6IGVzaXN0ZSBnacOgIG5lbGxhIGRpcmVjdG9yeSBkaSBsYXZvcm8iCisKKyM6IGFwcGx5LmM6Mzk1OQorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgbW9kZSAoJW8pIG9mICVzIGRvZXMgbm90IG1hdGNoIG9sZCBtb2RlICglbykiCittc2dzdHIgImlsIG51b3ZvIG1vZG8gKCVvKSBkaSAlcyBub24gY29ycmlzcG9uZGUgYWwgdmVjY2hpbyBtb2RvICglbykiCisKKyM6IGFwcGx5LmM6Mzk2NAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgbW9kZSAoJW8pIG9mICVzIGRvZXMgbm90IG1hdGNoIG9sZCBtb2RlICglbykgb2YgJXMiCittc2dzdHIgImlsIG51b3ZvIG1vZG8gKCVvKSBkaSAlcyBub24gY29ycmlzcG9uZGUgYWwgdmVjY2hpbyBtb2RvICglbykgZGkgJXMiCisKKyM6IGFwcGx5LmM6Mzk4NAorIywgYy1mb3JtYXQKK21zZ2lkICJhZmZlY3RlZCBmaWxlICclcycgaXMgYmV5b25kIGEgc3ltYm9saWMgbGluayIKK21zZ3N0ciAiaWwgZmlsZSBpbnRlcmVzc2F0byAnJXMnIHNpIHRyb3ZhIG9sdHJlIHVuIGNvbGxlZ2FtZW50byBzaW1ib2xpY28iCisKKyM6IGFwcGx5LmM6Mzk4OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogcGF0Y2ggZG9lcyBub3QgYXBwbHkiCittc2dzdHIgIiVzOiBsYSBwYXRjaCBub24gc2kgYXBwbGljYSBjb3JyZXR0YW1lbnRlIgorCisjOiBhcHBseS5jOjQwMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgcGF0Y2ggJXMuLi4iCittc2dzdHIgIkNvbnRyb2xsbyBkZWxsYSBwYXRjaCAlcyBpbiBjb3Jzby4uLiIKKworIzogYXBwbHkuYzo0MDk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzIGZvciBzdWJtb2R1bGUgJXMiCittc2dzdHIgImxlIGluZm9ybWF6aW9uaSBTSEExIHBlciBpbCBzb3R0b21vZHVsbyAlcyBzb25vIG1hbmNhbnRpIG8gaW51dGlsaSIKKworIzogYXBwbHkuYzo0MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm1vZGUgY2hhbmdlIGZvciAlcywgd2hpY2ggaXMgbm90IGluIGN1cnJlbnQgSEVBRCIKK21zZ3N0ciAibW9kaWZpY2EgbW9kbyBwZXIgJXMgY2hlIG5vbiDDqCBuZWxsJ0hFQUQgY29ycmVudGUiCisKKyM6IGFwcGx5LmM6NDEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJzaGExIGluZm9ybWF0aW9uIGlzIGxhY2tpbmcgb3IgdXNlbGVzcyAoJXMpLiIKK21zZ3N0ciAibGUgaW5mb3JtYXppb25pIFNIQTEgc29ubyBtYW5jYW50aSBvIGludXRpbGkgKCVzKS4iCisKKyM6IGFwcGx5LmM6NDExNAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgYWRkICVzIHRvIHRlbXBvcmFyeSBpbmRleCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYWdnaXVuZ2VyZSAlcyBhbGwnaW5kaWNlIHRlbXBvcmFuZW8iCisKKyM6IGFwcGx5LmM6NDEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgdGVtcG9yYXJ5IGluZGV4IHRvICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSBsJ2luZGljZSB0ZW1wb3JhbmVvIGluICVzIgorCisjOiBhcHBseS5jOjQyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlcyBmcm9tIGluZGV4IgorbXNnc3RyICJpbXBvc3NpYmlsZSByaW11b3ZlcmUgJXMgZGFsbCdpbmRpY2UiCisKKyM6IGFwcGx5LmM6NDI5NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3JydXB0IHBhdGNoIGZvciBzdWJtb2R1bGUgJXMiCittc2dzdHIgInBhdGNoIGNvcnJvdHRhIHBlciBpbCBzb3R0b21vZHVsbyAlcyIKKworIzogYXBwbHkuYzo0MzAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ld2x5IGNyZWF0ZWQgZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBsbyBzdGF0IGRlbCBmaWxlIGFwcGVuYSBjcmVhdG8gJyVzJyIKKworIzogYXBwbHkuYzo0MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYmFja2luZyBzdG9yZSBmb3IgbmV3bHkgY3JlYXRlZCBmaWxlICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgbCdhcmNoaXZpbyBkaSBiYWNrdXAgcGVyIGlsIGZpbGUgYXBwZW5hIGNyZWF0byAlcyIKKworIzogYXBwbHkuYzo0MzE2IGFwcGx5LmM6NDQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWRkIGNhY2hlIGVudHJ5IGZvciAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYWdnaXVuZ2VyZSBsYSB2b2NlIGRlbGxhIGNhY2hlIHBlciAlcyIKKworIzogYXBwbHkuYzo0MzU5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byAnJXMnIgorbXNnc3RyICJzY3JpdHR1cmEgaW4gJyVzJyBub24gcml1c2NpdGEiCisKKyM6IGFwcGx5LmM6NDM2MworIywgYy1mb3JtYXQKK21zZ2lkICJjbG9zaW5nIGZpbGUgJyVzJyIKK21zZ3N0ciAiY2hpdXN1cmEgZGVsIGZpbGUgJyVzJyBpbiBjb3JzbyIKKworIzogYXBwbHkuYzo0NDMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcycgbW9kZSAlbyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgaWwgZmlsZSAnJXMnIGNvbiBtb2RvICVvIgorCisjOiBhcHBseS5jOjQ1MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXBwbGllZCBwYXRjaCAlcyBjbGVhbmx5LiIKK21zZ3N0ciAiUGF0Y2ggJXMgYXBwbGljYXRhIGNvcnJldHRhbWVudGUuIgorCisjOiBhcHBseS5jOjQ1MzkKK21zZ2lkICJpbnRlcm5hbCBlcnJvciIKK21zZ3N0ciAiZXJyb3JlIGludGVybm8iCisKKyM6IGFwcGx5LmM6NDU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJBcHBseWluZyBwYXRjaCAlJXMgd2l0aCAlZCByZWplY3QuLi4iCittc2dpZF9wbHVyYWwgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdHMuLi4iCittc2dzdHJbMF0gIkFwcGxpY2F6aW9uZSBkZWxsYSBwYXRjaCAlJXMgY29uICVkIGZyYW1tZW50byByZXNwaW50by4uLiIKK21zZ3N0clsxXSAiQXBwbGljYXppb25lIGRlbGxhIHBhdGNoICUlcyBjb24gJWQgZnJhbW1lbnRpIHJlc3BpbnRpLi4uIgorCisjOiBhcHBseS5jOjQ1NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGluZyAucmVqIGZpbGVuYW1lIHRvICUuKnMucmVqIgorbXNnc3RyICJub21lIGZpbGUgLnJlaiB0cm9uY2F0byBhICUuKnMucmVqIgorCisjOiBhcHBseS5jOjQ1NjEgYnVpbHRpbi9mZXRjaC5jOjkwMSBidWlsdGluL2ZldGNoLmM6MTIwMQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlICVzIgorCisjOiBhcHBseS5jOjQ1NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiSHVuayAjJWQgYXBwbGllZCBjbGVhbmx5LiIKK21zZ3N0ciAiRnJhbW1lbnRvICVkIGFwcGxpY2F0byBjb3JyZXR0YW1lbnRlLiIKKworIzogYXBwbHkuYzo0NTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlamVjdGVkIGh1bmsgIyVkLiIKK21zZ3N0ciAiRnJhbW1lbnRvICVkIHJlc3BpbnRvLiIKKworIzogYXBwbHkuYzo0Njk4CisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXBwZWQgcGF0Y2ggJyVzJy4iCittc2dzdHIgIlBhdGNoICclcycgaWdub3JhdGEuIgorCisjOiBhcHBseS5jOjQ3MDYKK21zZ2lkICJ1bnJlY29nbml6ZWQgaW5wdXQiCittc2dzdHIgImlucHV0IG5vbiByaWNvbm9zY2l1dG8iCisKKyM6IGFwcGx5LmM6NDcyNgorbXNnaWQgInVuYWJsZSB0byByZWFkIGluZGV4IGZpbGUiCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaWwgZmlsZSBpbmRleCIKKworIzogYXBwbHkuYzo0ODgzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG9wZW4gcGF0Y2ggJyVzJzogJXMiCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBsYSBwYXRjaCAnJXMnOiAlcyIKKworIzogYXBwbHkuYzo0OTEwCisjLCBjLWZvcm1hdAorbXNnaWQgInNxdWVsY2hlZCAlZCB3aGl0ZXNwYWNlIGVycm9yIgorbXNnaWRfcGx1cmFsICJzcXVlbGNoZWQgJWQgd2hpdGVzcGFjZSBlcnJvcnMiCittc2dzdHJbMF0gIiVkIGVycm9yZSBkaSBzcGF6aSBiaWFuY2hpIHNvcHByZXNzbyIKK21zZ3N0clsxXSAiJWQgZXJyb3JpIGRpIHNwYXppIGJpYW5jaGkgc29wcHJlc3NpIgorCisjOiBhcHBseS5jOjQ5MTYgYXBwbHkuYzo0OTMxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIGxpbmUgYWRkcyB3aGl0ZXNwYWNlIGVycm9ycy4iCittc2dpZF9wbHVyYWwgIiVkIGxpbmVzIGFkZCB3aGl0ZXNwYWNlIGVycm9ycy4iCittc2dzdHJbMF0gIiVkIHJpZ2EgYWdnaXVuZ2UgZXJyb3JpIGRpIHNwYXppIGJpYW5jaGkuIgorbXNnc3RyWzFdICIlZCByaWdoZSBhZ2dpdW5nb25vIGVycm9yaSBkaSBzcGF6aSBiaWFuY2hpLiIKKworIzogYXBwbHkuYzo0OTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIGxpbmUgYXBwbGllZCBhZnRlciBmaXhpbmcgd2hpdGVzcGFjZSBlcnJvcnMuIgorbXNnaWRfcGx1cmFsICIlZCBsaW5lcyBhcHBsaWVkIGFmdGVyIGZpeGluZyB3aGl0ZXNwYWNlIGVycm9ycy4iCittc2dzdHJbMF0gIiVkIHJpZ2EgYXBwbGljYXRhIGRvcG8gbGEgY29ycmV6aW9uZSBkaSBlcnJvcmkgZGkgc3BhemkgYmlhbmNoaS4iCittc2dzdHJbMV0gIiVkIHJpZ2hlIGFwcGxpY2F0ZSBkb3BvIGxhIGNvcnJlemlvbmUgZGkgZXJyb3JpIGRpIHNwYXppIGJpYW5jaGkuIgorCisjOiBhcHBseS5jOjQ5NDAgYnVpbHRpbi9hZGQuYzo2MTIgYnVpbHRpbi9tdi5jOjMwMSBidWlsdGluL3JtLmM6NDA2Cittc2dpZCAiVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgorbXNnc3RyICJJbXBvc3NpYmlsZSBzY3JpdmVyZSBpbCBudW92byBmaWxlIGluZGV4IgorCisjOiBhcHBseS5jOjQ5NjgKK21zZ2lkICJkb24ndCBhcHBseSBjaGFuZ2VzIG1hdGNoaW5nIHRoZSBnaXZlbiBwYXRoIgorbXNnc3RyICJub24gYXBwbGljYXJlIGxlIG1vZGlmaWNoZSBjb3JyaXNwb25kZW50aSBhbCBwZXJjb3JzbyBzcGVjaWZpY2F0byIKKworIzogYXBwbHkuYzo0OTcxCittc2dpZCAiYXBwbHkgY2hhbmdlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCIKK21zZ3N0ciAiYXBwbGljYSBsZSBtb2RpZmljaGUgY29ycmlzcG9uZGVudGkgYWwgcGVyY29yc28gc3BlY2lmaWNhdG8iCisKKyM6IGFwcGx5LmM6NDk3MyBidWlsdGluL2FtLmM6MjI2MAorbXNnaWQgIm51bSIKK21zZ3N0ciAibnVtIgorCisjOiBhcHBseS5jOjQ5NzQKK21zZ2lkICJyZW1vdmUgPG51bT4gbGVhZGluZyBzbGFzaGVzIGZyb20gdHJhZGl0aW9uYWwgZGlmZiBwYXRocyIKK21zZ3N0ciAicmltdW92aSA8bnVtPiBiYXJyZSBpbml6aWFsaSBkYWkgcGVyY29yc2kgZGlmZiB0cmFkaXppb25hbGkiCisKKyM6IGFwcGx5LmM6NDk3NworbXNnaWQgImlnbm9yZSBhZGRpdGlvbnMgbWFkZSBieSB0aGUgcGF0Y2giCittc2dzdHIgImlnbm9yYSBsZSBhZ2dpdW50ZSBjcmVhdGUgZGFsbGEgcGF0Y2giCisKKyM6IGFwcGx5LmM6NDk3OQorbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBvdXRwdXQgZGlmZnN0YXQgZm9yIHRoZSBpbnB1dCIKK21zZ3N0ciAiIgorImludmVjZSBkaSBhcHBsaWNhcmUgbGEgcGF0Y2gsIHZpc3VhbGl6emEgbCdvdXRwdXQgZGkgZGlmZnN0YXQgcGVyIGwnaW5wdXQiCisKKyM6IGFwcGx5LmM6NDk4MworbXNnaWQgInNob3cgbnVtYmVyIG9mIGFkZGVkIGFuZCBkZWxldGVkIGxpbmVzIGluIGRlY2ltYWwgbm90YXRpb24iCittc2dzdHIgIiIKKyJ2aXN1YWxpenphIGlsIG51bWVybyBkaSByaWdoZSBhZ2dpdW50ZSBlZCBlbGltaW5hdGUgaW4gbm90YXppb25lIGRlY2ltYWxlIgorCisjOiBhcHBseS5jOjQ5ODUKK21zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGEgc3VtbWFyeSBmb3IgdGhlIGlucHV0IgorbXNnc3RyICJpbnZlY2UgZGkgYXBwbGljYXJlIGxhIHBhdGNoLCB2aXN1YWxpenphIHVuIHJpYXNzdW50byBwZXIgbCdpbnB1dCIKKworIzogYXBwbHkuYzo0OTg3Cittc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIHNlZSBpZiB0aGUgcGF0Y2ggaXMgYXBwbGljYWJsZSIKK21zZ3N0ciAiaW52ZWNlIGRpIGFwcGxpY2FyZSBsYSBwYXRjaCwgdmVyaWZpY2Egc2UgcHXDsiBlc3NlcmUgYXBwbGljYXRhIgorCisjOiBhcHBseS5jOjQ5ODkKK21zZ2lkICJtYWtlIHN1cmUgdGhlIHBhdGNoIGlzIGFwcGxpY2FibGUgdG8gdGhlIGN1cnJlbnQgaW5kZXgiCittc2dzdHIgImFzc2ljdXJhIGNoZSBsYSBwYXRjaCBzaWEgYXBwbGljYWJpbGUgYWxsJ2luZGljZSBjb3JyZW50ZSIKKworIzogYXBwbHkuYzo0OTkxCittc2dpZCAibWFyayBuZXcgZmlsZXMgd2l0aCBgZ2l0IGFkZCAtLWludGVudC10by1hZGRgIgorbXNnc3RyICJjb250cmFzc2VnbmEgaSBudW92aSBmaWxlIGNvbiBgZ2l0IGFkZCAtLWludGVudC10by1hZGRgIgorCisjOiBhcHBseS5jOjQ5OTMKK21zZ2lkICJhcHBseSBhIHBhdGNoIHdpdGhvdXQgdG91Y2hpbmcgdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiYXBwbGljYSB1bmEgcGF0Y2ggc2VuemEgbW9kaWZpY2FyZSBsJ2FsYmVybyBkaSBsYXZvcm8iCisKKyM6IGFwcGx5LmM6NDk5NQorbXNnaWQgImFjY2VwdCBhIHBhdGNoIHRoYXQgdG91Y2hlcyBvdXRzaWRlIHRoZSB3b3JraW5nIGFyZWEiCittc2dzdHIgIiIKKyJhY2NldHRhIHVuYSBwYXRjaCBjaGUgYXBwb3J0YSBtb2RpZmljaGUgYWwgZGkgZnVvcmkgZGVsbCdhcmVhIGRpIGxhdm9ybyIKKworIzogYXBwbHkuYzo0OTk4Cittc2dpZCAiYWxzbyBhcHBseSB0aGUgcGF0Y2ggKHVzZSB3aXRoIC0tc3RhdC8tLXN1bW1hcnkvLS1jaGVjaykiCittc2dzdHIgImFwcGxpY2EgYW5jaGUgbGEgcGF0Y2ggKGRhIHVzYXJlIGNvbiAtLXN0YXQvLS1zdW1tYXJ5Ly0tY2hlY2spIgorCisjOiBhcHBseS5jOjUwMDAKK21zZ2lkICJhdHRlbXB0IHRocmVlLXdheSBtZXJnZSBpZiBhIHBhdGNoIGRvZXMgbm90IGFwcGx5IgorbXNnc3RyICJwcm92YSB1biBtZXJnZSBhIHRyZSB2aWUgc2UgbGEgcGF0Y2ggbm9uIHNpIGFwcGxpY2EgY29ycmV0dGFtZW50ZSIKKworIzogYXBwbHkuYzo1MDAyCittc2dpZCAiYnVpbGQgYSB0ZW1wb3JhcnkgaW5kZXggYmFzZWQgb24gZW1iZWRkZWQgaW5kZXggaW5mb3JtYXRpb24iCittc2dzdHIgImNvbXBpbGEgdW4gaW5kZXggdGVtcG9yYW5lbyBiYXNhdG8gc3VsbGUgaW5mb3JtYXppb25pIGluZGljZSBpbmNsdXNlIgorCisjOiBhcHBseS5jOjUwMDUgYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3MyBidWlsdGluL2xzLWZpbGVzLmM6NTI0Cittc2dpZCAicGF0aHMgYXJlIHNlcGFyYXRlZCB3aXRoIE5VTCBjaGFyYWN0ZXIiCittc2dzdHIgImkgcGVyY29yc2kgc29ubyBzZXBhcmF0aSBjb24gdW4gY2FyYXR0ZXJlIE5VTCIKKworIzogYXBwbHkuYzo1MDA3Cittc2dpZCAiZW5zdXJlIGF0IGxlYXN0IDxuPiBsaW5lcyBvZiBjb250ZXh0IG1hdGNoIgorbXNnc3RyICJhc3NpY3VyYSBjaGUgYWxtZW5vIDxuPiByaWdoZSBkaSBjb250ZXN0byBjb3JyaXNwb25kYW5vIgorCisjOiBhcHBseS5jOjUwMDggYnVpbHRpbi9hbS5jOjIyMzkgYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5OAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDAgYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ1NyBidWlsdGluL3JlYmFzZS5jOjE1MDgKK21zZ2lkICJhY3Rpb24iCittc2dzdHIgImF6aW9uZSIKKworIzogYXBwbHkuYzo1MDA5Cittc2dpZCAiZGV0ZWN0IG5ldyBvciBtb2RpZmllZCBsaW5lcyB0aGF0IGhhdmUgd2hpdGVzcGFjZSBlcnJvcnMiCittc2dzdHIgInJpbGV2YSByaWdoZSBudW92ZSBvIG1vZGlmaWNhdGUgY2hlIGhhbm5vIGVycm9yaSBkaSBzcGF6aSBiaWFuY2hpIgorCisjOiBhcHBseS5jOjUwMTIgYXBwbHkuYzo1MDE1Cittc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSB3aGVuIGZpbmRpbmcgY29udGV4dCIKK21zZ3N0ciAiaWdub3JhIG1vZGlmaWNoZSBhZ2xpIHNwYXppIGJpYW5jaGkgZHVyYW50ZSBsYSByaWNlcmNhIGRlaSBjb250ZXN0aSIKKworIzogYXBwbHkuYzo1MDE4Cittc2dpZCAiYXBwbHkgdGhlIHBhdGNoIGluIHJldmVyc2UiCittc2dzdHIgImFwcGxpY2EgbGEgcGF0Y2ggaW4gbWFuaWVyYSBpbnZlcnNhIgorCisjOiBhcHBseS5jOjUwMjAKK21zZ2lkICJkb24ndCBleHBlY3QgYXQgbGVhc3Qgb25lIGxpbmUgb2YgY29udGV4dCIKK21zZ3N0ciAibm9uIGFzcGV0dGFyZSBhbG1lbm8gdW5hIHJpZ2EgZGkgY29udGVzdG8iCisKKyM6IGFwcGx5LmM6NTAyMgorbXNnaWQgImxlYXZlIHRoZSByZWplY3RlZCBodW5rcyBpbiBjb3JyZXNwb25kaW5nICoucmVqIGZpbGVzIgorbXNnc3RyICJsYXNjaWEgaSBmcmFtbWVudGkgcmVzcGludGkgbmVpIGZpbGUgKi5yZWogY29ycmlzcG9uZGVudGkiCisKKyM6IGFwcGx5LmM6NTAyNAorbXNnaWQgImFsbG93IG92ZXJsYXBwaW5nIGh1bmtzIgorbXNnc3RyICJjb25zZW50aSBsYSBzb3ZyYXBwb3NpemlvbmUgZGVpIGZyYW1tZW50aSIKKworIzogYXBwbHkuYzo1MDI1IGJ1aWx0aW4vYWRkLmM6MzIzIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MCBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5OCBidWlsdGluL2ZzY2suYzo3NzQKKyM6IGJ1aWx0aW4vbG9nLmM6MjE2NiBidWlsdGluL212LmM6MTIzIGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI4Cittc2dpZCAiYmUgdmVyYm9zZSIKK21zZ3N0ciAidmlzdWFsaXp6YSB1bHRlcmlvcmkgZGV0dGFnbGkiCisKKyM6IGFwcGx5LmM6NTAyNworbXNnaWQgInRvbGVyYXRlIGluY29ycmVjdGx5IGRldGVjdGVkIG1pc3NpbmcgbmV3LWxpbmUgYXQgdGhlIGVuZCBvZiBmaWxlIgorbXNnc3RyICIiCisidG9sbGVyYSBjYXJhdHRlcmUgZmluZSByaWdhIHJpbGV2YXRvIGVycm9uZWFtZW50ZSBjb21lIG1hbmNhbnRlIGFsbGEgZmluZSAiCisiZGVsIGZpbGUiCisKKyM6IGFwcGx5LmM6NTAzMAorbXNnaWQgImRvIG5vdCB0cnVzdCB0aGUgbGluZSBjb3VudHMgaW4gdGhlIGh1bmsgaGVhZGVycyIKK21zZ3N0ciAiIgorIm5vbiBmYXJlIGFmZmlkYW1lbnRvIHN1bCBudW1lcm8gZGkgcmlnaGUgbmVsbGUgaW50ZXN0YXppb25pIGRlaSBmcmFtbWVudGkiCisKKyM6IGFwcGx5LmM6NTAzMiBidWlsdGluL2FtLmM6MjI0OAorbXNnaWQgInJvb3QiCittc2dzdHIgInJhZGljZSIKKworIzogYXBwbHkuYzo1MDMzCittc2dpZCAicHJlcGVuZCA8cm9vdD4gdG8gYWxsIGZpbGVuYW1lcyIKK21zZ3N0ciAiYW50ZXBvbmkgPHJhZGljZT4gYSB0dXR0aSBpIG5vbWkgZmlsZSIKKworIzogYXJjaGl2ZS5jOjE0Cittc2dpZCAiZ2l0IGFyY2hpdmUgWzxvcHRpb25zPl0gPHRyZWUtaXNoPiBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IGFyY2hpdmUgWzxvcHppb25pPl0gPGFsYmVybz4gWzxwZXJjb3Jzbz4uLi5dIgorCisjOiBhcmNoaXZlLmM6MTUKK21zZ2lkICJnaXQgYXJjaGl2ZSAtLWxpc3QiCittc2dzdHIgImdpdCBhcmNoaXZlIC0tbGlzdCIKKworIzogYXJjaGl2ZS5jOjE2Cittc2dpZCAiIgorImdpdCBhcmNoaXZlIC0tcmVtb3RlIDxyZXBvPiBbLS1leGVjIDxjbWQ+XSBbPG9wdGlvbnM+XSA8dHJlZS1pc2g+IFs8cGF0aD4uLi5dIgorbXNnc3RyICIiCisiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPHJlcG9zaXRvcnk+IFstLWV4ZWMgPGNvbWFuZG8+XSBbPG9wemlvbmk+XSA8YWxiZXJvPiAiCisiWzxwZXJjb3Jzbz4uLi5dIgorCisjOiBhcmNoaXZlLmM6MTcKK21zZ2lkICJnaXQgYXJjaGl2ZSAtLXJlbW90ZSA8cmVwbz4gWy0tZXhlYyA8Y21kPl0gLS1saXN0IgorbXNnc3RyICJnaXQgYXJjaGl2ZSAtLXJlbW90ZSA8cmVwb3NpdG9yeT4gWy0tZXhlYyA8Y29tYW5kbz5dIC0tbGlzdCIKKworIzogYXJjaGl2ZS5jOjM3MiBidWlsdGluL2FkZC5jOjE4MSBidWlsdGluL2FkZC5jOjU4OCBidWlsdGluL3JtLmM6MzE1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGhzcGVjICclcycgZGlkIG5vdCBtYXRjaCBhbnkgZmlsZXMiCittc2dzdHIgImxvIHNwZWNpZmljYXRvcmUgcGVyY29yc28gJyVzJyBub24gY29ycmlzcG9uZGUgYWQgYWxjdW4gZmlsZSIKKworIzogYXJjaGl2ZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBzdWNoIHJlZjogJS4qcyIKK21zZ3N0ciAicmlmZXJpbWVudG8gbm9uIGVzaXN0ZW50ZTogJS4qcyIKKworIzogYXJjaGl2ZS5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJXMiCittc2dzdHIgIiVzIG5vbiDDqCB1biBub21lIG9nZ2V0dG8gdmFsaWRvIgorCisjOiBhcmNoaXZlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHRyZWUgb2JqZWN0OiAlcyIKK21zZ3N0ciAiJXMgbm9uIMOoIHVuIG9nZ2V0dG8gYWxiZXJvIHZhbGlkbyIKKworIzogYXJjaGl2ZS5jOjQyNgorbXNnaWQgImN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkgaXMgdW50cmFja2VkIgorbXNnc3RyICJsYSBkaXJlY3RvcnkgZGkgbGF2b3JvIGNvcnJlbnRlIG5vbiDDqCB0cmFjY2lhdGEiCisKKyM6IGFyY2hpdmUuYzo0NTcKK21zZ2lkICJmbXQiCittc2dzdHIgImZtdCIKKworIzogYXJjaGl2ZS5jOjQ1NworbXNnaWQgImFyY2hpdmUgZm9ybWF0IgorbXNnc3RyICJmb3JtYXRvIGFyY2hpdmlvIgorCisjOiBhcmNoaXZlLmM6NDU4IGJ1aWx0aW4vbG9nLmM6MTY1MworbXNnaWQgInByZWZpeCIKK21zZ3N0ciAicHJlZmlzc28iCisKKyM6IGFyY2hpdmUuYzo0NTkKK21zZ2lkICJwcmVwZW5kIHByZWZpeCB0byBlYWNoIHBhdGhuYW1lIGluIHRoZSBhcmNoaXZlIgorbXNnc3RyICJhbnRlcG9uaSA8cHJlZmlzc28+IGEgb2duaSBub21lIHBlcmNvcnNvIG5lbGwnYXJjaGl2aW8iCisKKyM6IGFyY2hpdmUuYzo0NjAgYnVpbHRpbi9ibGFtZS5jOjg2MSBidWlsdGluL2JsYW1lLmM6ODY1IGJ1aWx0aW4vYmxhbWUuYzo4NjYKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTcgYnVpbHRpbi9jb25maWcuYzoxMzAgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY0IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY4IGJ1aWx0aW4vZ3JlcC5jOjg4NworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNSBidWlsdGluL2xzLWZpbGVzLmM6NTYwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTIgYnVpbHRpbi9ub3Rlcy5jOjU3OCBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogcGFyc2Utb3B0aW9ucy5oOjE5MAorbXNnaWQgImZpbGUiCittc2dzdHIgImZpbGUiCisKKyM6IGFyY2hpdmUuYzo0NjEgYnVpbHRpbi9hcmNoaXZlLmM6OTAKK21zZ2lkICJ3cml0ZSB0aGUgYXJjaGl2ZSB0byB0aGlzIGZpbGUiCittc2dzdHIgInNjcml2aSBsJ2FyY2hpdmlvIGluIHF1ZXN0byBmaWxlIgorCisjOiBhcmNoaXZlLmM6NDYzCittc2dpZCAicmVhZCAuZ2l0YXR0cmlidXRlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAibGVnZ2kgaWwgZmlsZSAuZ2l0YXR0cmlidXRlcyBuZWxsYSBkaXJlY3RvcnkgZGkgbGF2b3JvIgorCisjOiBhcmNoaXZlLmM6NDY0Cittc2dpZCAicmVwb3J0IGFyY2hpdmVkIGZpbGVzIG9uIHN0ZGVyciIKK21zZ3N0ciAiZWxlbmNhIGkgZmlsZSBhcmNoaXZpYXRpIHN1bGxvIHN0YW5kYXJkIGVycm9yIgorCisjOiBhcmNoaXZlLmM6NDY1Cittc2dpZCAic3RvcmUgb25seSIKK21zZ3N0ciAic2FsdmEgc29sYW1lbnRlIgorCisjOiBhcmNoaXZlLmM6NDY2Cittc2dpZCAiY29tcHJlc3MgZmFzdGVyIgorbXNnc3RyICJjb21wcmltaSBwacO5IHZlbG9jZW1lbnRlIgorCisjOiBhcmNoaXZlLmM6NDc0Cittc2dpZCAiY29tcHJlc3MgYmV0dGVyIgorbXNnc3RyICJjb21wcmltaSBtZWdsaW8iCisKKyM6IGFyY2hpdmUuYzo0NzcKK21zZ2lkICJsaXN0IHN1cHBvcnRlZCBhcmNoaXZlIGZvcm1hdHMiCittc2dzdHIgImVsZW5jYSBpIGZvcm1hdGkgYXJjaGl2aW8gc3VwcG9ydGF0aSIKKworIzogYXJjaGl2ZS5jOjQ3OSBidWlsdGluL2FyY2hpdmUuYzo5MSBidWlsdGluL2Nsb25lLmM6MTEzIGJ1aWx0aW4vY2xvbmUuYzoxMTYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTExCittc2dpZCAicmVwbyIKK21zZ3N0ciAicmVwb3NpdG9yeSIKKworIzogYXJjaGl2ZS5jOjQ4MCBidWlsdGluL2FyY2hpdmUuYzo5MgorbXNnaWQgInJldHJpZXZlIHRoZSBhcmNoaXZlIGZyb20gcmVtb3RlIHJlcG9zaXRvcnkgPHJlcG8+IgorbXNnc3RyICJyZWN1cGVyYSBsJ2FyY2hpdmlvIGRhbCByZXBvc2l0b3J5IHJlbW90byA8cmVwb3NpdG9yeT4iCisKKyM6IGFyY2hpdmUuYzo0ODEgYnVpbHRpbi9hcmNoaXZlLmM6OTMgYnVpbHRpbi9kaWZmdG9vbC5jOjcxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQ5OAorbXNnaWQgImNvbW1hbmQiCittc2dzdHIgImNvbWFuZG8iCisKKyM6IGFyY2hpdmUuYzo0ODIgYnVpbHRpbi9hcmNoaXZlLmM6OTQKK21zZ2lkICJwYXRoIHRvIHRoZSByZW1vdGUgZ2l0LXVwbG9hZC1hcmNoaXZlIGNvbW1hbmQiCittc2dzdHIgInBlcmNvcnNvIGFsIGNvbWFuZG8gcmVtb3RvIGdpdC11cGxvYWQtYXJjaGl2ZSIKKworIzogYXJjaGl2ZS5jOjQ4OQorbXNnaWQgIlVuZXhwZWN0ZWQgb3B0aW9uIC0tcmVtb3RlIgorbXNnc3RyICJPcHppb25lIC0tcmVtb3RlIGluYXR0ZXNhIgorCisjOiBhcmNoaXZlLmM6NDkxCittc2dpZCAiT3B0aW9uIC0tZXhlYyBjYW4gb25seSBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggLS1yZW1vdGUiCittc2dzdHIgIkwnb3B6aW9uZSAtLWV4ZWMgcHXDsiBlc3NlcmUgdXNhdGEgc29sbyBjb24gLS1yZW1vdGUiCisKKyM6IGFyY2hpdmUuYzo0OTMKK21zZ2lkICJVbmV4cGVjdGVkIG9wdGlvbiAtLW91dHB1dCIKK21zZ3N0ciAiT3B6aW9uZSAtLW91dHB1dCBpbmF0dGVzYSIKKworIzogYXJjaGl2ZS5jOjUxNQorIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIGFyY2hpdmUgZm9ybWF0ICclcyciCittc2dzdHIgIkZvcm1hdG8gYXJjaGl2aW8gJyVzJyBzY29ub3NjaXV0byIKKworIzogYXJjaGl2ZS5jOjUyMgorIywgYy1mb3JtYXQKK21zZ2lkICJBcmd1bWVudCBub3Qgc3VwcG9ydGVkIGZvciBmb3JtYXQgJyVzJzogLSVkIgorbXNnc3RyICJBcmdvbWVudG8gbm9uIHN1cHBvcnRhdG8gcGVyIGlsIGZvcm1hdG8gJyVzJzogLSVkIgorCisjOiBhcmNoaXZlLXRhci5jOjEyNSBhcmNoaXZlLXppcC5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RyZWFtIGJsb2IgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGxvIHN0cmVhbWluZyBkZWwgYmxvYiAlcyIKKworIzogYXJjaGl2ZS10YXIuYzoyNjYgYXJjaGl2ZS16aXAuYzozNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5zdXBwb3J0ZWQgZmlsZSBtb2RlOiAwJW8gKFNIQTE6ICVzKSIKK21zZ3N0ciAibW9kbyBmaWxlIG5vbiBzdXBwb3J0YXRvOiAwJW8gKFNIQTE6ICVzKSIKKworIzogYXJjaGl2ZS10YXIuYzoyOTMgYXJjaGl2ZS16aXAuYzozNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgJXMiCisKKyM6IGFyY2hpdmUtdGFyLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGFydCAnJXMnIGZpbHRlciIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXZ2aWFyZSBpbCBmaWx0cm8gJyVzJyIKKworIzogYXJjaGl2ZS10YXIuYzo0NjgKK21zZ2lkICJ1bmFibGUgdG8gcmVkaXJlY3QgZGVzY3JpcHRvciIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmlkaXJlemlvbmFyZSBpbCBkZXNjcml0dG9yZSIKKworIzogYXJjaGl2ZS10YXIuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBmaWx0ZXIgcmVwb3J0ZWQgZXJyb3IiCittc2dzdHIgImlsIGZpbHRybyAnJXMnIGhhIHNlZ25hbGF0byB1biBlcnJvcmUiCisKKyM6IGFyY2hpdmUtemlwLmM6MzE5CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggaXMgbm90IHZhbGlkIFVURi04OiAlcyIKK21zZ3N0ciAiaWwgcGVyY29yc28gbm9uIMOoIGNvZGlmaWNhdG8gdmFsaWRhbWVudGUgaW4gVVRGLTg6ICVzIgorCisjOiBhcmNoaXZlLXppcC5jOjMyMworIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoIHRvbyBsb25nICglZCBjaGFycywgU0hBMTogJXMpOiAlcyIKK21zZ3N0ciAicGVyY29yc28gdHJvcHBvIGx1bmdvICglZCBjYXJhdHRlcmksIFNIQTE6ICVzKTogJXMiCisKKyM6IGFyY2hpdmUtemlwLmM6NDgwIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjMxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImRlZmxhdGUgZXJyb3IgKCVkKSIKK21zZ3N0ciAiZXJyb3JlIGRlZmxhdGUgKCVkKSIKKworIzogYXJjaGl2ZS16aXAuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidGltZXN0YW1wIHRvbyBsYXJnZSBmb3IgdGhpcyBzeXN0ZW06ICU8UFJJdU1BWD4iCittc2dzdHIgInRpbWVzdGFtcCB0cm9wcG8gZ3JhbmRlIHBlciBxdWVzdG8gc2lzdGVtYTogJTxQUkl1TUFYPiIKKworIzogYXR0ci5jOjIxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlLipzIGlzIG5vdCBhIHZhbGlkIGF0dHJpYnV0ZSBuYW1lIgorbXNnc3RyICIlLipzIG5vbiDDqCB1biBub21lIGF0dHJpYnV0byB2YWxpZG8iCisKKyM6IGF0dHIuYzozNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgbm90IGFsbG93ZWQ6ICVzOiVkIgorbXNnc3RyICIlcyBub24gY29uc2VudGl0bzogJXM6JWQiCisKKyM6IGF0dHIuYzo0MDkKK21zZ2lkICIiCisiTmVnYXRpdmUgcGF0dGVybnMgYXJlIGlnbm9yZWQgaW4gZ2l0IGF0dHJpYnV0ZXNcbiIKKyJVc2UgJ1xcIScgZm9yIGxpdGVyYWwgbGVhZGluZyBleGNsYW1hdGlvbi4iCittc2dzdHIgIiIKKyJJIHBhdHRlcm4gbmVnYXRpdmkgc29ubyBpZ25vcmF0aSBuZWdsaSBhdHRyaWJ1dGkgZ2l0XG4iCisiVXNhICdcXCEnIHBlciBzcGVjaWZpY2FyZSBsZXR0ZXJhbG1lbnRlIHVuIHB1bnRvIGVzY2xhbWF0aXZvIGluaXppYWxlLiIKKworIzogYmlzZWN0LmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIkJhZGx5IHF1b3RlZCBjb250ZW50IGluIGZpbGUgJyVzJzogJXMiCittc2dzdHIgIkNvbnRlbnV0byBtYWwgcmFjY2hpdXNvIGZyYSB2aXJnb2xldHRlIG5lbCBmaWxlICclcyc6ICVzIgorCisjOiBiaXNlY3QuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2UgY2Fubm90IGJpc2VjdCBtb3JlIVxuIgorbXNnc3RyICJJbXBvc3NpYmlsZSBlc2VndWlyZSB1bid1bHRlcmlvcmUgYmlzZXppb25lIVxuIgorCisjOiBiaXNlY3QuYzo3NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm90IGEgdmFsaWQgY29tbWl0IG5hbWUgJXMiCittc2dzdHIgIiVzIG5vbiDDqCB1biBub21lIGNvbW1pdCB2YWxpZG8iCisKKyM6IGJpc2VjdC5jOjc3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIG1lcmdlIGJhc2UgJXMgaXMgYmFkLlxuIgorIlRoaXMgbWVhbnMgdGhlIGJ1ZyBoYXMgYmVlbiBmaXhlZCBiZXR3ZWVuICVzIGFuZCBbJXNdLlxuIgorbXNnc3RyICIiCisiTGEgYmFzZSBkZWwgbWVyZ2UgJXMgbm9uIGZ1bnppb25hLlxuIgorIkNpw7Igc2lnbmlmaWNhIGNoZSBpbCBidWcgw6ggc3RhdG8gY29ycmV0dG8gZnJhICVzIGUgWyVzXS5cbiIKKworIzogYmlzZWN0LmM6Nzc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgbWVyZ2UgYmFzZSAlcyBpcyBuZXcuXG4iCisiVGhlIHByb3BlcnR5IGhhcyBjaGFuZ2VkIGJldHdlZW4gJXMgYW5kIFslc10uXG4iCittc2dzdHIgIiIKKyJMYSBiYXNlIGRlbCBtZXJnZSAlcyDDqCBudW92YS5cbiIKKyJMYSBwcm9wcmlldMOgIMOoIHN0YXRhIG1vZGlmaWNhdGEgZnJhICVzIGUgWyVzXS5cbiIKKworIzogYmlzZWN0LmM6NzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgbWVyZ2UgYmFzZSAlcyBpcyAlcy5cbiIKKyJUaGlzIG1lYW5zIHRoZSBmaXJzdCAnJXMnIGNvbW1pdCBpcyBiZXR3ZWVuICVzIGFuZCBbJXNdLlxuIgorbXNnc3RyICIiCisiTGEgYmFzZSBkZWwgbWVyZ2UgJXMgw6ggJXMuXG4iCisiQ2nDsiBzaWduaWZpY2EgY2hlIGlsIHByaW1vIGNvbW1pdCAnJXMnIMOoIGZyYSAlcyBlIFslc10uXG4iCisKKyM6IGJpc2VjdC5jOjc4OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU29tZSAlcyByZXZzIGFyZSBub3QgYW5jZXN0b3JzIG9mIHRoZSAlcyByZXYuXG4iCisiZ2l0IGJpc2VjdCBjYW5ub3Qgd29yayBwcm9wZXJseSBpbiB0aGlzIGNhc2UuXG4iCisiTWF5YmUgeW91IG1pc3Rvb2sgJXMgYW5kICVzIHJldnM/XG4iCittc2dzdHIgIiIKKyJBbGN1bmUgcmV2aXNpb25pICVzIG5vbiBzb25vIGFudGVuYXRlIGRlbGxhIHJldmlzaW9uZSAlcy5cbiIKKyJnaXQgYmlzZWN0IG5vbiBwdcOyIGZ1bnppb25hcmUgY29ycmV0dGFtZW50ZSBpbiBxdWVzdG8gY2Fzby5cbiIKKyJGb3JzZSBoYWkgY29uZnVzbyBsZSByZXZpc2lvbmkgJXMgY29uIHF1ZWxsZSAlcz9cbiIKKworIzogYmlzZWN0LmM6ODAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0aGUgbWVyZ2UgYmFzZSBiZXR3ZWVuICVzIGFuZCBbJXNdIG11c3QgYmUgc2tpcHBlZC5cbiIKKyJTbyB3ZSBjYW5ub3QgYmUgc3VyZSB0aGUgZmlyc3QgJXMgY29tbWl0IGlzIGJldHdlZW4gJXMgYW5kICVzLlxuIgorIldlIGNvbnRpbnVlIGFueXdheS4iCittc2dzdHIgIiIKKyJsYSBiYXNlIGRlbCBtZXJnZSBmcmEgJXMgZSBbJXNdIGRldidlc3NlcmUgc2FsdGF0YS5cbiIKKyJOb24gw6ggcG9zc2liaWxlIGVzc2VyZSBzaWN1cmkgY2hlIGlsIHByaW1vIGNvbW1pdCAlcyBzaWEgZnJhICVzIGUgJXMuXG4iCisiQ29udGludW8gY29tdW5xdWUuIgorCisjOiBiaXNlY3QuYzo4NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmlzZWN0aW5nOiBhIG1lcmdlIGJhc2UgbXVzdCBiZSB0ZXN0ZWRcbiIKK21zZ3N0ciAiQmlzZXppb25lOiBkZXYnZXNzZXJlIHRlc3RhdGEgdW5hIGJhc2UgZGVsIG1lcmdlXG4iCisKKyM6IGJpc2VjdC5jOjg5MAorIywgYy1mb3JtYXQKK21zZ2lkICJhICVzIHJldmlzaW9uIGlzIG5lZWRlZCIKK21zZ3N0ciAiw6ggcmljaGllc3RhIHVuYSByZXZpc2lvbmUgJXMiCisKKyM6IGJpc2VjdC5jOjkyMCBidWlsdGluL25vdGVzLmM6MTc3IGJ1aWx0aW4vdGFnLmM6MjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgaWwgZmlsZSAnJXMnIgorCisjOiBiaXNlY3QuYzo5NjYgYnVpbHRpbi9tZXJnZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBmaWxlICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaWwgZmlsZSAnJXMnIgorCisjOiBiaXNlY3QuYzo5OTcKK21zZ2lkICJyZWFkaW5nIGJpc2VjdCByZWZzIGZhaWxlZCIKK21zZ3N0ciAibGV0dHVyYSByaWZlcmltZW50aSBkZWxsYSBiaXNlemlvbmUgbm9uIHJpdXNjaXRhIgorCisjOiBiaXNlY3QuYzoxMDE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHdhcyBib3RoICVzIGFuZCAlc1xuIgorbXNnc3RyICIlcyBlcmEgc2lhICVzIHNpYSAlc1xuIgorCisjOiBiaXNlY3QuYzoxMDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJObyB0ZXN0YWJsZSBjb21taXQgZm91bmQuXG4iCisiTWF5YmUgeW91IHN0YXJ0ZWQgd2l0aCBiYWQgcGF0aCBwYXJhbWV0ZXJzP1xuIgorbXNnc3RyICIiCisiTmVzc3VuIGNvbW1pdCB0ZXN0YWJpbGUgdHJvdmF0by5cbiIKKyJGb3JzZSBoYWkgaW5pemlhdG8gaWwgcHJvY2VkaW1lbnRvIHNwZWNpZmljYW5kbyBwYXJhbWV0cmkgcGVyY29yc28gZXJyYXRpP1xuIgorCisjOiBiaXNlY3QuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgIihyb3VnaGx5ICVkIHN0ZXApIgorbXNnaWRfcGx1cmFsICIocm91Z2hseSAlZCBzdGVwcykiCittc2dzdHJbMF0gIihjaXJjYSAlZCBwYXNzbykiCittc2dzdHJbMV0gIihjaXJjYSAlZCBwYXNzaSkiCisKKyMuIFRSQU5TTEFUT1JTOiB0aGUgbGFzdCAlcyB3aWxsIGJlIHJlcGxhY2VkIHdpdGggIihyb3VnaGx5ICVkCisjLiBzdGVwcykiIHRyYW5zbGF0aW9uLgorIy4KKyM6IGJpc2VjdC5jOjEwNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmlzZWN0aW5nOiAlZCByZXZpc2lvbiBsZWZ0IHRvIHRlc3QgYWZ0ZXIgdGhpcyAlc1xuIgorbXNnaWRfcGx1cmFsICJCaXNlY3Rpbmc6ICVkIHJldmlzaW9ucyBsZWZ0IHRvIHRlc3QgYWZ0ZXIgdGhpcyAlc1xuIgorbXNnc3RyWzBdICIiCisiQmlzZXppb25lIGluIGNvcnNvOiAlZCByZXZpc2lvbmUgcmltYW5lbnRlIGRhIHRlc3RhcmUgZG9wbyBxdWVzdGEgJXNcbiIKK21zZ3N0clsxXSAiIgorIkJpc2V6aW9uZSBpbiBjb3JzbzogJWQgcmV2aXNpb25pIHJpbWFuZW50aSBkYSB0ZXN0YXJlIGRvcG8gcXVlc3RhICVzXG4iCisKKyM6IGJsYW1lLmM6MjcwMAorbXNnaWQgIi0tY29udGVudHMgYW5kIC0tcmV2ZXJzZSBkbyBub3QgYmxlbmQgd2VsbC4iCittc2dzdHIgIi0tY29udGVudHMgZSAtLXJldmVyc2Ugbm9uIHNvbm8gY29tcGF0aWJpbGkuIgorCisjOiBibGFtZS5jOjI3MTQKK21zZ2lkICJjYW5ub3QgdXNlIC0tY29udGVudHMgd2l0aCBmaW5hbCBjb21taXQgb2JqZWN0IG5hbWUiCittc2dzdHIgImltcG9zc2liaWxlIHVzYXJlIC0tY29udGVudHMgY29uIGlsIG5vbWUgb2dnZXR0byBkZWwgY29tbWl0IGZpbmFsZSIKKworIzogYmxhbWUuYzoyNzM1Cittc2dpZCAiLS1yZXZlcnNlIGFuZCAtLWZpcnN0LXBhcmVudCB0b2dldGhlciByZXF1aXJlIHNwZWNpZmllZCBsYXRlc3QgY29tbWl0IgorbXNnc3RyICIiCisibGUgb3B6aW9uaSAtLXJldmVyc2UgZSAtLWZpcnN0LXBhcmVudCBzZSB1c2F0ZSBpbnNpZW1lIHJpY2hpZWRvbm8gY2hlIHNpYSAiCisic3BlY2lmaWNhdG8gbCd1bHRpbW8gY29tbWl0IgorCisjOiBibGFtZS5jOjI3NDQgYnVuZGxlLmM6MTY3IHJlZi1maWx0ZXIuYzoyMjAzIHJlbW90ZS5jOjE5NDIgc2VxdWVuY2VyLmM6MjAwNgorIzogc2VxdWVuY2VyLmM6NDM1OCBzdWJtb2R1bGUuYzo4NDcgYnVpbHRpbi9jb21taXQuYzoxMDQ1IGJ1aWx0aW4vbG9nLmM6Mzg4CisjOiBidWlsdGluL2xvZy5jOjk5MSBidWlsdGluL2xvZy5jOjE1MjAgYnVpbHRpbi9sb2cuYzoxOTI1IGJ1aWx0aW4vbG9nLmM6MjIxNQorIzogYnVpbHRpbi9tZXJnZS5jOjQxMiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkwCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MTkyCittc2dpZCAicmV2aXNpb24gd2FsayBzZXR1cCBmYWlsZWQiCittc2dzdHIgImltcG9zdGF6aW9uZSBwZXJjb3JzbyByZXZpc2lvbmkgbm9uIHJpdXNjaXRhIgorCisjOiBibGFtZS5jOjI3NjIKK21zZ2lkICIiCisiLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IHRvZ2V0aGVyIHJlcXVpcmUgcmFuZ2UgYWxvbmcgZmlyc3QtcGFyZW50IGNoYWluIgorbXNnc3RyICIiCisibGUgb3B6aW9uaSAtLXJldmVyc2UgZSAtLWZpcnN0LXBhcmVudCBzZSB1c2F0ZSBpbnNpZW1lIHJpY2hpZWRvbm8gY2hlIHNpYSAiCisic3BlY2lmaWNhdG8gdW4gaW50ZXJ2YWxsbyBuZWxsYSBjYXRlbmEgZGVsIHByaW1vIGNvbW1pdCBnZW5pdG9yZSIKKworIzogYmxhbWUuYzoyNzczCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggcGF0aCAlcyBpbiAlcyIKK21zZ3N0ciAiaWwgcGVyY29yc28gJXMgaW4gJXMgbm9uIGVzaXN0ZSIKKworIzogYmxhbWUuYzoyNzg0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGJsb2IgJXMgZm9yIHBhdGggJXMiCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaWwgYmxvYiAlcyBwZXIgaWwgcGVyY29yc28gJXMiCisKKyM6IGJyYW5jaC5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJBZnRlciBmaXhpbmcgdGhlIGVycm9yIGNhdXNlIHlvdSBtYXkgdHJ5IHRvIGZpeCB1cFxuIgorInRoZSByZW1vdGUgdHJhY2tpbmcgaW5mb3JtYXRpb24gYnkgaW52b2tpbmdcbiIKKyJcImdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMlcyVzXCIuIgorbXNnc3RyICIiCisiXG4iCisiRG9wbyBhdmVyIGNvcnJldHRvIGwnZXJyb3JlIMOoIHBvc3NpYmlsZSBwcm92YXJlIGEgY29ycmVnZ2VyZVxuIgorImxlIGluZm9ybWF6aW9uaSBkaSB0cmFjY2lhbWVudG8gcmVtb3RvIGVzZWd1ZW5kb1xuIgorIlwiZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10bz0lcyVzJXNcIi4iCisKKyM6IGJyYW5jaC5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdCBzZXR0aW5nIGJyYW5jaCAlcyBhcyBpdHMgb3duIHVwc3RyZWFtLiIKK21zZ3N0ciAiTm9uIGltcG9zdG8gaWwgYnJhbmNoICVzIGNvbWUgdXBzdHJlYW0gZGkgc8OpIHN0ZXNzby4iCisKKyM6IGJyYW5jaC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgYnJhbmNoICclcycgZnJvbSAnJXMnIGJ5IHJlYmFzaW5nLiIKK21zZ3N0ciAiIgorIkJyYW5jaCAnJXMnIGltcG9zdGF0byBwZXIgdHJhY2NpYXJlIGlsIGJyYW5jaCByZW1vdG8gJyVzJyBkYSAnJXMnIHRyYW1pdGUgIgorInJlYmFzZS4iCisKKyM6IGJyYW5jaC5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgYnJhbmNoICclcycgZnJvbSAnJXMnLiIKK21zZ3N0ciAiQnJhbmNoICclcycgaW1wb3N0YXRvIHBlciB0cmFjY2lhcmUgaWwgYnJhbmNoIHJlbW90byAnJXMnIGRhICclcycuIgorCisjOiBicmFuY2guYzo5OAorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycgYnkgcmViYXNpbmcuIgorbXNnc3RyICIiCisiQnJhbmNoICclcycgaW1wb3N0YXRvIHBlciB0cmFjY2lhcmUgaWwgYnJhbmNoIGxvY2FsZSAnJXMnIHRyYW1pdGUgcmViYXNlLiIKKworIzogYnJhbmNoLmM6OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIGJyYW5jaCAnJXMnLiIKK21zZ3N0ciAiQnJhbmNoICclcycgaW1wb3N0YXRvIHBlciB0cmFjY2lhcmUgaWwgYnJhbmNoIGxvY2FsZSAnJXMnLiIKKworIzogYnJhbmNoLmM6MTA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgcmVmICclcycgYnkgcmViYXNpbmcuIgorbXNnc3RyICIiCisiQnJhbmNoICclcycgaW1wb3N0YXRvIHBlciB0cmFjY2lhcmUgaWwgcmlmZXJpbWVudG8gcmVtb3RvICclcycgdHJhbWl0ZSAiCisicmViYXNlLiIKKworIzogYnJhbmNoLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgcmVmICclcycuIgorbXNnc3RyICJCcmFuY2ggJyVzJyBpbXBvc3RhdG8gcGVyIHRyYWNjaWFyZSBpbCByaWZlcmltZW50byByZW1vdG8gJyVzJy4iCisKKyM6IGJyYW5jaC5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycgYnkgcmViYXNpbmcuIgorbXNnc3RyICIiCisiQnJhbmNoICclcycgaW1wb3N0YXRvIHBlciB0cmFjY2lhcmUgaWwgcmlmZXJpbWVudG8gbG9jYWxlICclcycgdHJhbWl0ZSAiCisicmViYXNlLiIKKworIzogYnJhbmNoLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCByZWYgJyVzJy4iCittc2dzdHIgIkJyYW5jaCAnJXMnIGltcG9zdGF0byBwZXIgdHJhY2NpYXJlIGlsIHJpZmVyaW1lbnRvIGxvY2FsZSAnJXMnLiIKKworIzogYnJhbmNoLmM6MTE5Cittc2dpZCAiVW5hYmxlIHRvIHdyaXRlIHVwc3RyZWFtIGJyYW5jaCBjb25maWd1cmF0aW9uIgorbXNnc3RyICJJbXBvc3NpYmlsZSBzY3JpdmVyZSBsYSBjb25maWd1cmF6aW9uZSByZWxhdGl2YSBhbCBicmFuY2ggdXBzdHJlYW0iCisKKyM6IGJyYW5jaC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICJOb3QgdHJhY2tpbmc6IGFtYmlndW91cyBpbmZvcm1hdGlvbiBmb3IgcmVmICVzIgorbXNnc3RyICIiCisiSWwgdHJhY2NpYW1lbnRvIG5vbiBhdnZlcnLDoDogaW5mb3JtYXppb25pIGFtYmlndWUgcGVyIGlsIHJpZmVyaW1lbnRvICVzIgorCisjOiBicmFuY2guYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBicmFuY2ggbmFtZS4iCittc2dzdHIgIiclcycgbm9uIMOoIHVuIG5vbWUgYnJhbmNoIHZhbGlkby4iCisKKyM6IGJyYW5jaC5jOjIwOAorIywgYy1mb3JtYXQKK21zZ2lkICJBIGJyYW5jaCBuYW1lZCAnJXMnIGFscmVhZHkgZXhpc3RzLiIKK21zZ3N0ciAiVW4gYnJhbmNoIGRlbm9taW5hdG8gJyVzJyBlc2lzdGUgZ2nDoC4iCisKKyM6IGJyYW5jaC5jOjIxMworbXNnaWQgIkNhbm5vdCBmb3JjZSB1cGRhdGUgdGhlIGN1cnJlbnQgYnJhbmNoLiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgZXNlZ3VpcmUgdW4gYWdnaW9ybmFtZW50byBmb3J6YXRvIGRlbCBicmFuY2ggY29ycmVudGUuIgorCisjOiBicmFuY2guYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHNldHVwIHRyYWNraW5nIGluZm9ybWF0aW9uOyBzdGFydGluZyBwb2ludCAnJXMnIGlzIG5vdCBhIGJyYW5jaC4iCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBpbXBvc3RhcmUgbGUgaW5mb3JtYXppb25pIGRpIHRyYWNjaWFtZW50bzogaWwgcHVudG8gZGkgcGFydGVuemEgIgorIiclcycgbm9uIMOoIHVuIGJyYW5jaC4iCisKKyM6IGJyYW5jaC5jOjIzNQorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGUgcmVxdWVzdGVkIHVwc3RyZWFtIGJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJpbCBicmFuY2ggdXBzdHJlYW0gcmljaGllc3RvICclcycgbm9uIGVzaXN0ZSIKKworIzogYnJhbmNoLmM6MjM3Cittc2dpZCAiIgorIlxuIgorIklmIHlvdSBhcmUgcGxhbm5pbmcgb24gYmFzaW5nIHlvdXIgd29yayBvbiBhbiB1cHN0cmVhbVxuIgorImJyYW5jaCB0aGF0IGFscmVhZHkgZXhpc3RzIGF0IHRoZSByZW1vdGUsIHlvdSBtYXkgbmVlZCB0b1xuIgorInJ1biBcImdpdCBmZXRjaFwiIHRvIHJldHJpZXZlIGl0LlxuIgorIlxuIgorIklmIHlvdSBhcmUgcGxhbm5pbmcgdG8gcHVzaCBvdXQgYSBuZXcgbG9jYWwgYnJhbmNoIHRoYXRcbiIKKyJ3aWxsIHRyYWNrIGl0cyByZW1vdGUgY291bnRlcnBhcnQsIHlvdSBtYXkgd2FudCB0byB1c2VcbiIKKyJcImdpdCBwdXNoIC11XCIgdG8gc2V0IHRoZSB1cHN0cmVhbSBjb25maWcgYXMgeW91IHB1c2guIgorbXNnc3RyICIiCisiXG4iCisiU2UgcHJldmVkaSBkaSBiYXNhcmUgaWwgdHVvIGxhdm9ybyBzdSB1biBicmFuY2hcbiIKKyJ1cHN0cmVhbSBnacOgIGVzaXN0ZW50ZSwgcG90cmVzdGkgZG92ZXIgZXNlZ3VpcmVcbiIKKyJcImdpdCBmZXRjaFwiIHBlciByZWN1cGVyYXJsby5cbiIKKyJcbiIKKyJTZSBwcmV2ZWRpIGRpIGVzZWd1aXJlIGlsIHB1c2ggZGkgdW4gbnVvdm8gYnJhbmNoIGxvY2FsZVxuIgorImNoZSB0cmFjY2Vyw6AgbGEgc3VhIGNvbnRyb3BhcnRlIHJlbW90YSwgcG90cmVzdGkgdm9sZXJcbiIKKyJ1c2FyZSBcImdpdCBwdXNoIC11XCIgcGVyIGltcG9zdGFyZSBsYSBjb25maWd1cmF6aW9uZSBkZWxcbiIKKyJicmFuY2ggdXBzdHJlYW0gZHVyYW50ZSBpbCBwdXNoLiIKKworIzogYnJhbmNoLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnLiIKK21zZ3N0ciAiTm9tZSBvZ2dldHRvIG5vbiB2YWxpZG86ICclcycuIgorCisjOiBicmFuY2guYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQW1iaWd1b3VzIG9iamVjdCBuYW1lOiAnJXMnLiIKK21zZ3N0ciAiTm9tZSBvZ2dldHRvIGFtYmlndW86ICclcycuIgorCisjOiBicmFuY2guYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm90IGEgdmFsaWQgYnJhbmNoIHBvaW50OiAnJXMnLiIKK21zZ3N0ciAiUHVudG8gZGkgYnJhbmNoIG5vbiB2YWxpZG86ICclcycuIgorCisjOiBicmFuY2guYzozNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBhbHJlYWR5IGNoZWNrZWQgb3V0IGF0ICclcyciCittc2dzdHIgIklsIGNoZWNrb3V0IGRpICclcycgw6ggZ2nDoCBzdGF0byBlc2VndWl0byBpbiAnJXMnIgorCisjOiBicmFuY2guYzozODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiSEVBRCBvZiB3b3JraW5nIHRyZWUgJXMgaXMgbm90IHVwZGF0ZWQiCittc2dzdHIgIkwnSEVBRCBkZWxsJ2FsYmVybyBkaSBsYXZvcm8gJXMgbm9uIMOoIGFnZ2lvcm5hdG8iCiAKICM6IGJ1bmRsZS5jOjM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZG9lcyBub3QgbG9vayBsaWtlIGEgdjIgYnVuZGxlIGZpbGUiCi1tc2dzdHIgIiIKK21zZ3N0ciAiJyVzJyBub24gc2VtYnJhIGVzc2VyZSB1biBmaWxlIGJ1bmRsZSB2MiIKIAotIzogYnVuZGxlLmM6NjMKKyM6IGJ1bmRsZS5jOjY0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBoZWFkZXI6ICVzJXMgKCVkKSIKLW1zZ3N0ciAiaGVhZGVyIG5vbiByaWNvbm9zY2l1dG86ICVzJXMgKCVkKSIKK21zZ3N0ciAiaW50ZXN0YXppb25lIG5vbiByaWNvbm9zY2l1dGE6ICVzJXMgKCVkKSIKIAotIzogYnVuZGxlLmM6ODkgYnVpbHRpbi9jb21taXQuYzo2OTYKKyM6IGJ1bmRsZS5jOjkwIHJlcmVyZS5jOjQ4MCByZXJlcmUuYzo2OTAgc2VxdWVuY2VyLmM6MjI1OCBzZXF1ZW5jZXIuYzozMDE2CisjOiBidWlsdGluL2NvbW1pdC5jOjgxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIgotbXNnc3RyICJub24gw6ggc3RhdG8gcG9zc2liaWxlIGFwcmlyZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgJyVzJyIKIAotIzogYnVuZGxlLmM6MTQwCisjOiBidW5kbGUuYzoxNDMKIG1zZ2lkICJSZXBvc2l0b3J5IGxhY2tzIHRoZXNlIHByZXJlcXVpc2l0ZSBjb21taXRzOiIKLW1zZ3N0ciAiIgorbXNnc3RyICJEYWwgcmVwb3NpdG9yeSBtYW5jYW5vIHF1ZXN0aSBjb21taXQgcmljaGllc3RpIGNvbWUgcHJlcmVxdWlzaXRvOiIKIAotIzogYnVuZGxlLmM6MTY0IHNlcXVlbmNlci5jOjU1MCBzZXF1ZW5jZXIuYzo5ODIgYnVpbHRpbi9sb2cuYzoyODkKLSM6IGJ1aWx0aW4vbG9nLmM6NzIwIGJ1aWx0aW4vbG9nLmM6MTMwOSBidWlsdGluL2xvZy5jOjE1MjggYnVpbHRpbi9tZXJnZS5jOjM0NwotIzogYnVpbHRpbi9zaG9ydGxvZy5jOjE4MQotbXNnaWQgInJldmlzaW9uIHdhbGsgc2V0dXAgZmFpbGVkIgotbXNnc3RyICIiCisjOiBidW5kbGUuYzoxNDYKK21zZ2lkICJuZWVkIGEgcmVwb3NpdG9yeSB0byB2ZXJpZnkgYSBidW5kbGUiCittc2dzdHIgIsOoIG5lY2Vzc2FyaW8gdW4gcmVwb3NpdG9yeSBwZXIgdmVyaWZpY2FyZSB1biBidW5kbGUiCiAKLSM6IGJ1bmRsZS5jOjE4NgorIzogYnVuZGxlLmM6MTk3CiAjLCBjLWZvcm1hdAotbXNnaWQgIlRoZSBidW5kbGUgY29udGFpbnMgJWQgcmVmIgotbXNnaWRfcGx1cmFsICJUaGUgYnVuZGxlIGNvbnRhaW5zICVkIHJlZnMiCi1tc2dzdHJbMF0gIiIKLW1zZ3N0clsxXSAiIgorbXNnaWQgIlRoZSBidW5kbGUgY29udGFpbnMgdGhpcyByZWY6IgorbXNnaWRfcGx1cmFsICJUaGUgYnVuZGxlIGNvbnRhaW5zIHRoZXNlICVkIHJlZnM6IgorbXNnc3RyWzBdICJJbCBidW5kbGUgY29udGllbmUgcXVlc3RvIHJpZmVyaW1lbnRvOiIKK21zZ3N0clsxXSAiSWwgYnVuZGxlIGNvbnRpZW5lIHF1ZXN0aSAlZCByaWZlcmltZW50aToiCiAKLSM6IGJ1bmRsZS5jOjE5MgorIzogYnVuZGxlLmM6MjA0Cittc2dpZCAiVGhlIGJ1bmRsZSByZWNvcmRzIGEgY29tcGxldGUgaGlzdG9yeS4iCittc2dzdHIgIk5lbCBidW5kbGUgw6ggcmVnaXN0cmF0YSB1bmEgY3Jvbm9sb2dpYSBjb21wbGV0YS4iCisKKyM6IGJ1bmRsZS5jOjIwNgogIywgYy1mb3JtYXQKLW1zZ2lkICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoaXMgcmVmIgotbXNnaWRfcGx1cmFsICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoZXNlICVkIHJlZnMiCi1tc2dzdHJbMF0gIiIKLW1zZ3N0clsxXSAiIgorbXNnaWQgIlRoZSBidW5kbGUgcmVxdWlyZXMgdGhpcyByZWY6IgorbXNnaWRfcGx1cmFsICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoZXNlICVkIHJlZnM6IgorbXNnc3RyWzBdICJJbCBidW5kbGUgcmljaGllZGUgcXVlc3RvIHJpZmVyaW1lbnRvOiIKK21zZ3N0clsxXSAiSWwgYnVuZGxlIHJpY2hpZWRlIHF1ZXN0aSAlZCByaWZlcmltZW50aToiCiAKLSM6IGJ1bmRsZS5jOjI5MAorIzogYnVuZGxlLmM6MjczCittc2dpZCAidW5hYmxlIHRvIGR1cCBidW5kbGUgZGVzY3JpcHRvciIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZHVwbGljYXJlIGlsIGRlc2NyaXR0b3JlIGJ1bmRsZSIKKworIzogYnVuZGxlLmM6MjgwCittc2dpZCAiQ291bGQgbm90IHNwYXduIHBhY2stb2JqZWN0cyIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgYXZ2aWFyZSBwYWNrLW9iamVjdHMiCisKKyM6IGJ1bmRsZS5jOjI5MQorbXNnaWQgInBhY2stb2JqZWN0cyBkaWVkIgorbXNnc3RyICJjb21hbmRvIHBhY2stb2JqZWN0cyBtb3J0byIKKworIzogYnVuZGxlLmM6MzMzCiBtc2dpZCAicmV2LWxpc3QgZGllZCIKLW1zZ3N0ciAiIgorbXNnc3RyICJjb21hbmRvIHJldi1saXN0IG1vcnRvIgogCi0jOiBidW5kbGUuYzoyOTYgYnVpbHRpbi9sb2cuYzoxMjA1IGJ1aWx0aW4vc2hvcnRsb2cuYzoyODQKKyM6IGJ1bmRsZS5jOjM4MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWYgJyVzJyBpcyBleGNsdWRlZCBieSB0aGUgcmV2LWxpc3Qgb3B0aW9ucyIKK21zZ3N0ciAiaWwgcmlmZXJpbWVudG8gJyVzJyDDqCBlc2NsdXNvIGRhbGxlIG9wemlvbmkgZGkgcmV2LWxpc3QiCisKKyM6IGJ1bmRsZS5jOjQ2MSBidWlsdGluL2xvZy5jOjIwMyBidWlsdGluL2xvZy5jOjE4MTQgYnVpbHRpbi9zaG9ydGxvZy5jOjMwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJhcmdvbWVudG8gbm9uIHJpY29ub3NjaXV0bzogJXMiCiAKLSM6IGJ1bmRsZS5jOjMzMQotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWYgJyVzJyBpcyBleGNsdWRlZCBieSB0aGUgcmV2LWxpc3Qgb3B0aW9ucyIKLW1zZ3N0ciAiaWwgcmVmICclcycgw6ggZXNjbHVzbyBkYWxsZSBvcHppb25pIGRpIHJldi1saXN0IgotCi0jOiBidW5kbGUuYzozNzYKKyM6IGJ1bmRsZS5jOjQ2OQogbXNnaWQgIlJlZnVzaW5nIHRvIGNyZWF0ZSBlbXB0eSBidW5kbGUuIgotbXNnc3RyICIiCittc2dzdHIgIk1pIHJpZml1dG8gZGkgY3JlYXJlIHVuIGJ1bmRsZSB2dW90by4iCiAKLSM6IGJ1bmRsZS5jOjM5NAotbXNnaWQgIkNvdWxkIG5vdCBzcGF3biBwYWNrLW9iamVjdHMiCi1tc2dzdHIgIiIKLQotIzogYnVuZGxlLmM6NDEyCi1tc2dpZCAicGFjay1vYmplY3RzIGRpZWQiCi1tc2dzdHIgIiIKLQotIzogYnVuZGxlLmM6NDE1CisjOiBidW5kbGUuYzo0NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNyZWF0ZSAnJXMnIgogbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgJyVzJyIKIAotIzogYnVuZGxlLmM6NDM3CisjOiBidW5kbGUuYzo1MDQKIG1zZ2lkICJpbmRleC1wYWNrIGRpZWQiCi1tc2dzdHIgIiIKK21zZ3N0ciAiY29tYW5kbyBpbmRleC1wYWNrIG1vcnRvIgogCi0jOiBjb21taXQuYzo0OAorIzogY29sb3IuYzozMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb2xvciB2YWx1ZTogJS4qcyIKK21zZ3N0ciAidmFsb3JlIGNvbG9yZSBub24gdmFsaWRvOiAlLipzIgorCisjOiBjb21taXQuYzo1MSBzZXF1ZW5jZXIuYzoyNzE5IGJ1aWx0aW4vYW0uYzozNTkgYnVpbHRpbi9hbS5jOjQwMworIzogYnVpbHRpbi9hbS5jOjEzNzEgYnVpbHRpbi9hbS5jOjIwMTQgYnVpbHRpbi9yZXBsYWNlLmM6NDU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAlcyIKLW1zZ3N0ciAibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBhbmFsaXp6YXJlICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlICVzIgogCi0jOiBjb21taXQuYzo1MAorIzogY29tbWl0LmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgJXMgaXMgbm90IGEgY29tbWl0ISIKIG1zZ3N0ciAiJXMgJXMgbm9uIMOoIHVuIGNvbW1pdCEiCiAKKyM6IGNvbW1pdC5jOjE5MworbXNnaWQgIiIKKyJTdXBwb3J0IGZvciA8R0lUX0RJUj4vaW5mby9ncmFmdHMgaXMgZGVwcmVjYXRlZFxuIgorImFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgR2l0IHZlcnNpb24uXG4iCisiXG4iCisiUGxlYXNlIHVzZSBcImdpdCByZXBsYWNlIC0tY29udmVydC1ncmFmdC1maWxlXCJcbiIKKyJ0byBjb252ZXJ0IHRoZSBncmFmdHMgaW50byByZXBsYWNlIHJlZnMuXG4iCisiXG4iCisiVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5IHJ1bm5pbmdcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmdyYWZ0RmlsZURlcHJlY2F0ZWQgZmFsc2VcIiIKK21zZ3N0ciAiIgorIklsIHN1cHBvcnRvIHBlciA8R0lUX0RJUj4vaW5mby9ncmFmdCDDqCBkZXByZWNhdG9cbiIKKyJlIHNhcsOgIHJpbW9zc28gaW4gdW5hIHZlcnNpb25lIGZ1dHVyYSBkaSBHaXQuXG4iCisiXG4iCisiVXNhIFwiZ2l0IHJlcGxhY2UgLS1jb252ZXJ0LWdyYWZ0LWZpbGVcIlxuIgorInBlciBjb252ZXJ0aXJlIGkgZ3JhZnQgaW4gcmVmIHNvc3RpdHV0aXZpLlxuIgorIlxuIgorIlBlciBkaXNhYmlsaXRhcmUgcXVlc3RvIG1lc3NhZ2dpbywgZXNlZ3VpXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5ncmFmdEZpbGVEZXByZWNhdGVkIGZhbHNlXCIiCisKKyM6IGNvbW1pdC5jOjExNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29tbWl0ICVzIGhhcyBhbiB1bnRydXN0ZWQgR1BHIHNpZ25hdHVyZSwgYWxsZWdlZGx5IGJ5ICVzLiIKK21zZ3N0ciAiSWwgY29tbWl0ICVzIGhhIHVuYSBmaXJtYSBHUEcgbm9uIGFmZmlkYWJpbGUsIHByZXN1bWliaWxtZW50ZSBkaSAlcy4iCisKKyM6IGNvbW1pdC5jOjExNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29tbWl0ICVzIGhhcyBhIGJhZCBHUEcgc2lnbmF0dXJlIGFsbGVnZWRseSBieSAlcy4iCittc2dzdHIgIklsIGNvbW1pdCAlcyBoYSB1bmEgZmlybWEgR1BHIG5vbiB2YWxpZGEgcHJlc3VtaWJpbG1lbnRlIGRpICVzLiIKKworIzogY29tbWl0LmM6MTE2MAorIywgYy1mb3JtYXQKK21zZ2lkICJDb21taXQgJXMgZG9lcyBub3QgaGF2ZSBhIEdQRyBzaWduYXR1cmUuIgorbXNnc3RyICJJbCBjb21taXQgJXMgbm9uIGhhIHVuYSBmaXJtYSBHUEcuIgorCisjOiBjb21taXQuYzoxMTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbW1pdCAlcyBoYXMgYSBnb29kIEdQRyBzaWduYXR1cmUgYnkgJXNcbiIKK21zZ3N0ciAiSWwgY29tbWl0ICVzIGhhIHVuYSBmaXJtYSBHUEcgdmFsaWRhIGRpICVzXG4iCisKKyM6IGNvbW1pdC5jOjE0MTcKK21zZ2lkICIiCisiV2FybmluZzogY29tbWl0IG1lc3NhZ2UgZGlkIG5vdCBjb25mb3JtIHRvIFVURi04LlxuIgorIllvdSBtYXkgd2FudCB0byBhbWVuZCBpdCBhZnRlciBmaXhpbmcgdGhlIG1lc3NhZ2UsIG9yIHNldCB0aGUgY29uZmlnXG4iCisidmFyaWFibGUgaTE4bi5jb21taXRlbmNvZGluZyB0byB0aGUgZW5jb2RpbmcgeW91ciBwcm9qZWN0IHVzZXMuXG4iCittc2dzdHIgIiIKKyJBdHRlbnppb25lOiBpbCBtZXNzYWdnaW8gZGkgY29tbWl0IG5vbiDDqCBjb25mb3JtZSBhbGxhIGNvZGlmaWNhIFVURi04LlxuIgorIlBvdHJlc3RpIHZvbGVybG8gbW9kaWZpY2FyZSBkb3BvIGF2ZXIgY29ycmV0dG8gaWwgbWVzc2FnZ2lvLCBvIGltcG9zdGFyZVxuIgorImxhIHZhcmlhYmlsZSBkaSBjb25maWd1cmF6aW9uZSBpMThuLmNvbW1pdGVuY29kaW5nIGFsbGEgY29kaWZpY2EgdXNhdGFcbiIKKyJkYWwgdHVvIHByb2dldHRvLlxuIgorCisjOiBjb21taXQtZ3JhcGguYzoxMjIKK21zZ2lkICJjb21taXQtZ3JhcGggZmlsZSBpcyB0b28gc21hbGwiCittc2dzdHIgImlsIGZpbGUgZ3JhZm8gZGVpIGNvbW1pdCAlcyDDqCB0cm9wcG8gcGljY29sbyIKKworIzogY29tbWl0LWdyYXBoLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBzaWduYXR1cmUgJVggZG9lcyBub3QgbWF0Y2ggc2lnbmF0dXJlICVYIgorbXNnc3RyICJsYSBmaXJtYSBkZWwgZ3JhZm8gZGVpIGNvbW1pdCAlWCBub24gY29ycmlzcG9uZGUgYWxsYSBmaXJtYSAlWCIKKworIzogY29tbWl0LWdyYXBoLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCittc2dzdHIgImxhIHZlcnNpb25lIGRlbCBncmFmbyBkZWkgY29tbWl0ICVYIG5vbiBjb3JyaXNwb25kZSBhbGxhIHZlcnNpb25lICVYIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGhhc2ggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgorbXNnc3RyICIiCisibGEgdmVyc2lvbmUgaGFzaCBkZWwgZ3JhZm8gZGVpIGNvbW1pdCAlWCBub24gY29ycmlzcG9uZGUgYWxsYSB2ZXJzaW9uZSAlWCIKKworIzogY29tbWl0LWdyYXBoLmM6MjI2Cittc2dpZCAiY29tbWl0LWdyYXBoIGNodW5rIGxvb2t1cCB0YWJsZSBlbnRyeSBtaXNzaW5nOyBmaWxlIG1heSBiZSBpbmNvbXBsZXRlIgorbXNnc3RyICIiCisidm9jZSBibG9jY28gZ3JhZm8gZGVpIGNvbW1pdCBtYW5jYW50ZSBuZWxsYSB0YWJlbGxhIGRpIHJpY2VyY2E7IGlsIGZpbGUgIgorInBvdHJlYmJlIG5vbiBlc3NlcmUgY29tcGxldG8iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaW1wcm9wZXIgY2h1bmsgb2Zmc2V0ICUwOHglMDh4IgorbXNnc3RyICJvZmZzZXQgYmxvY2NvIGdyYWZvIGRlaSBjb21taXQgaW1wcm9wcmlvICUwOHglMDh4IgorCisjOiBjb21taXQtZ3JhcGguYzoyODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGNodW5rIGlkICUwOHggYXBwZWFycyBtdWx0aXBsZSB0aW1lcyIKK21zZ3N0ciAibCdJRCBkZWwgYmxvY2NvIGdyYWZvIGRlaSBjb21taXQgJTA4eCBjb21wYXJlIHBpw7kgdm9sdGUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjM0MworbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgbm8gYmFzZSBncmFwaHMgY2h1bmsiCittc2dzdHIgImlsIGdyYWZvIGRlaSBjb21taXQgbm9uIGhhIHVuIGJsb2NjbyBncmFmaSBkaSBiYXNlIgorCisjOiBjb21taXQtZ3JhcGguYzozNTMKK21zZ2lkICJjb21taXQtZ3JhcGggY2hhaW4gZG9lcyBub3QgbWF0Y2giCittc2dzdHIgImxhIGNhdGVuYSBkZWwgZ3JhZm8gZGVpIGNvbW1pdCBub24gY29ycmlzcG9uZGUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdC1ncmFwaCBjaGFpbjogbGluZSAnJXMnIG5vdCBhIGhhc2giCittc2dzdHIgImNhdGVuYSBncmFmbyBkZWkgY29tbWl0IG5vbiB2YWxpZGE6IGxhIHJpZ2EgJyVzJyBub24gw6ggdW4gaGFzaCIKKworIzogY29tbWl0LWdyYXBoLmM6NDI1Cittc2dpZCAidW5hYmxlIHRvIGZpbmQgYWxsIGNvbW1pdC1ncmFwaCBmaWxlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgdHJvdmFyZSB0dXR0aSBpIGZpbGUgZ3JhZm8gZGVpIGNvbW1pdCIKKworIzogY29tbWl0LWdyYXBoLmM6NTU4IGNvbW1pdC1ncmFwaC5jOjYxOAorbXNnaWQgImludmFsaWQgY29tbWl0IHBvc2l0aW9uLiBjb21taXQtZ3JhcGggaXMgbGlrZWx5IGNvcnJ1cHQiCittc2dzdHIgIiIKKyJwb3NpemlvbmUgY29tbWl0IG5vbiB2YWxpZGEuIElsIGdyYWZvIGRlaSBjb21taXQgw6ggcHJvYmFiaWxtZW50ZSBjb3Jyb3R0byIKKworIzogY29tbWl0LWdyYXBoLmM6NTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5kIGNvbW1pdCAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgdHJvdmFyZSBpbCBjb21taXQgJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjg1MiBidWlsdGluL2FtLmM6MTI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGlsIGNvbW1pdCAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTAxMSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGdldCB0eXBlIG9mIG9iamVjdCAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmVjdXBlcmFyZSBpbCB0aXBvIGRlbGwnb2dnZXR0byAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTA0MworbXNnaWQgIkxvYWRpbmcga25vd24gY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIkNhcmljYW1lbnRvIGNvbW1pdCBub3RpIG5lbCBncmFmbyBkZWkgY29tbWl0IGluIGNvcnNvIgorCisjOiBjb21taXQtZ3JhcGguYzoxMDYwCittc2dpZCAiRXhwYW5kaW5nIHJlYWNoYWJsZSBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiRXNwYW5zaW9uZSBkZWkgY29tbWl0IHJhZ2dpdW5naWJpbGkgbmVsIGdyYWZvIGRlaSBjb21taXQgaW4gY29yc28iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNzkKK21zZ2lkICJDbGVhcmluZyBjb21taXQgbWFya3MgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJSaW1vemlvbmUgZGVpIGNvbnRyYXNzZWduaSBjb21taXQgbmVsIGdyYWZvIGRlaSBjb21taXQgaW4gY29yc28iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwOTgKK21zZ2lkICJDb21wdXRpbmcgY29tbWl0IGdyYXBoIGdlbmVyYXRpb24gbnVtYmVycyIKK21zZ3N0ciAiQ2FsY29sbyBudW1lcmkgZ2VuZXJhemlvbmUgZGVsIGdyYWZvIGRlaSBjb21taXQgaW4gY29yc28iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjExNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggaW4gJWQgcGFjayIKK21zZ2lkX3BsdXJhbCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggaW4gJWQgcGFja3MiCittc2dzdHJbMF0gIlJpY2VyY2EgZGVpIGNvbW1pdCBwZXIgaWwgZ3JhZm8gZGVpIGNvbW1pdCBpbiAlZCBwYWNrIGluIGNvcnNvIgorbXNnc3RyWzFdICJSaWNlcmNhIGRlaSBjb21taXQgcGVyIGlsIGdyYWZvIGRlaSBjb21taXQgaW4gJWQgcGFjayBpbiBjb3JzbyIKKworIzogY29tbWl0LWdyYXBoLmM6MTE4NgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBhZGRpbmcgcGFjayAlcyIKK21zZ3N0ciAiZXJyb3JlIGR1cmFudGUgbCdhZ2dpdW50YSBkZWwgcGFjayAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGluZGV4IGZvciAlcyIKK21zZ3N0ciAiZXJyb3JlIGR1cmFudGUgbCdhcGVydHVyYSBkZWxsJ2luZGljZSBwZXIgJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggZnJvbSAlZCByZWYiCittc2dpZF9wbHVyYWwgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGZyb20gJWQgcmVmcyIKK21zZ3N0clswXSAiIgorIlJpY2VyY2EgZGVpIGNvbW1pdCBwZXIgaWwgZ3JhZm8gZGVpIGNvbW1pdCBkYSAlZCByaWZlcmltZW50byBpbiBjb3JzbyIKK21zZ3N0clsxXSAiIgorIlJpY2VyY2EgZGVpIGNvbW1pdCBwZXIgaWwgZ3JhZm8gZGVpIGNvbW1pdCBkYSAlZCByaWZlcmltZW50aSBpbiBjb3JzbyIKKworIzogY29tbWl0LWdyYXBoLmM6MTIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdCBvYmplY3QgaWQ6ICVzIgorbXNnc3RyICJJRCBvZ2dldHRvIGNvbW1pdCBub24gdmFsaWRvOiAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTI0OQorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGFtb25nIHBhY2tlZCBvYmplY3RzIgorbXNnc3RyICIiCisiUmljZXJjYSBkZWkgY29tbWl0IHBlciBpbCBncmFmbyBkZWkgY29tbWl0IGZyYSBnbGkgb2dnZXR0aSBuZWkgcGFjayBpbiBjb3JzbyIKKworIzogY29tbWl0LWdyYXBoLmM6MTI2NAorbXNnaWQgIkNvdW50aW5nIGRpc3RpbmN0IGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJDb250ZWdnaW8gY29tbWl0IGRpc3RpbnRpIG5lbCBncmFmbyBkZWkgY29tbWl0IGluIGNvcnNvIgorCisjOiBjb21taXQtZ3JhcGguYzoxMjk0Cittc2dpZCAiRmluZGluZyBleHRyYSBlZGdlcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIlJpY2VyY2EgZGVnbGkgYXJjaGkgYWdnaXVudGl2aSBuZWwgZ3JhZm8gZGVpIGNvbW1pdCBpbiBjb3JzbyIKKworIzogY29tbWl0LWdyYXBoLmM6MTM0MAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBjb3JyZWN0IG51bWJlciBvZiBiYXNlIGdyYXBoIGlkcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgaWwgbnVtZXJvIGVzYXR0byBkZWdsaSBJRCBncmFmbyBkaSBiYXNlIgorCisjOiBjb21taXQtZ3JhcGguYzoxMzczIG1pZHguYzo4MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsZWFkaW5nIGRpcmVjdG9yaWVzIG9mICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgbGUgcHJpbWUgZGlyZWN0b3J5IGRpICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoxMzg1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMwNiBidWlsdGluL3JlcGFjay5jOjI0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSAnJXMnIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIldyaXRpbmcgb3V0IGNvbW1pdCBncmFwaCBpbiAlZCBwYXNzIgorbXNnaWRfcGx1cmFsICJXcml0aW5nIG91dCBjb21taXQgZ3JhcGggaW4gJWQgcGFzc2VzIgorbXNnc3RyWzBdICJTY3JpdHR1cmEgaW4gJWQgcGFzc2FnZ2lvIGRlbCBncmFmbyBkZWkgY29tbWl0IGluIGNvcnNvIgorbXNnc3RyWzFdICJTY3JpdHR1cmEgaW4gJWQgcGFzc2FnZ2kgZGVsIGdyYWZvIGRlaSBjb21taXQgaW4gY29yc28iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0ODYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjb21taXQtZ3JhcGggY2hhaW4gZmlsZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlIGlsIGZpbGUgY2F0ZW5hIGdyYWZvIGRlaSBjb21taXQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0OTgKK21zZ2lkICJmYWlsZWQgdG8gcmVuYW1lIGJhc2UgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgImltcG9zc2liaWxlIHJpZGVub21pbmFyZSBpbCBmaWxlIGRpIGJhc2UgZ3JhZm8gZGVpIGNvbW1pdCIKKworIzogY29tbWl0LWdyYXBoLmM6MTUxOAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgdGVtcG9yYXJ5IGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaWRlbm9taW5hcmUgaWwgZmlsZSB0ZW1wb3JhbmVvIGdyYWZvIGRlaSBjb21taXQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2MzEKK21zZ2lkICJTY2FubmluZyBtZXJnZWQgY29tbWl0cyIKK21zZ3N0ciAiU2NhbnNpb25lIGRlaSBjb21taXQgc290dG9wb3N0aSBhIG1lcmdlIGluIGNvcnNvIgorCisjOiBjb21taXQtZ3JhcGguYzoxNjQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZHVwbGljYXRlIGNvbW1pdCBpZCAlcyIKK21zZ3N0ciAiSUQgY29tbWl0IGR1cGxpY2F0byBpbmF0dGVzbzogJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2NjUKK21zZ2lkICJNZXJnaW5nIGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAiTWVyZ2UgZGVsIGdyYWZvIGRlaSBjb21taXQgaW4gY29yc28iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE4NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlIGNvbW1pdCBncmFwaCBmb3JtYXQgY2Fubm90IHdyaXRlICVkIGNvbW1pdHMiCittc2dzdHIgIiIKKyJpbCBmb3JtYXRvIGRlbCBncmFmbyBkZWkgY29tbWl0IG5vbiBwdcOyIGVzc2VyZSB1c2F0byBwZXIgc2NyaXZlcmUgJWQgY29tbWl0IgorCisjOiBjb21taXQtZ3JhcGguYzoxODU1Cittc2dpZCAidG9vIG1hbnkgY29tbWl0cyB0byB3cml0ZSBncmFwaCIKK21zZ3N0ciAidHJvcHBpIGNvbW1pdCBkYSBzY3JpdmVyZSBuZWwgZ3JhZm8iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NDQKK21zZ2lkICJ0aGUgY29tbWl0LWdyYXBoIGZpbGUgaGFzIGluY29ycmVjdCBjaGVja3N1bSBhbmQgaXMgbGlrZWx5IGNvcnJ1cHQiCittc2dzdHIgIiIKKyJpbCBmaWxlIGRlbCBncmFmbyBkZWkgY29tbWl0IGhhIHVuIGNoZWNrc3VtIG5vbiBjb3JyZXR0byBlIHByb2JhYmlsbWVudGUgw6ggIgorImNvcnJvdHRvIgorCisjOiBjb21taXQtZ3JhcGguYzoxOTU0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IE9JRCBvcmRlcjogJXMgdGhlbiAlcyIKK21zZ3N0ciAiaWwgZ3JhZm8gZGVpIGNvbW1pdCBoYSB1biBvcmRpbmUgT0lEIG5vbiBjb3JyZXR0bzogJXMgc2VndWl0byBkYSAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTk2NCBjb21taXQtZ3JhcGguYzoxOTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IGZhbm91dCB2YWx1ZTogZmFub3V0WyVkXSA9ICV1ICE9ICV1IgorbXNnc3RyICIiCisiaWwgZ3JhZm8gZGVpIGNvbW1pdCBoYSB1biB2YWxvcmUgZmFub3V0IG5vbiBjb3JyZXR0bzogZmFub3V0WyVkXSA9ICV1ICE9ICV1IgorCisjOiBjb21taXQtZ3JhcGguYzoxOTcxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSBjb21taXQgJXMgZnJvbSBjb21taXQtZ3JhcGgiCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgaWwgY29tbWl0ICVzIG5lbCBncmFmbyBkZWkgY29tbWl0IgorCisjOiBjb21taXQtZ3JhcGguYzoxOTg5Cittc2dpZCAiVmVyaWZ5aW5nIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJWZXJpZmljYSBkZWkgY29tbWl0IG5lbCBncmFmbyBkZWkgY29tbWl0IGluIGNvcnNvIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSBjb21taXQgJXMgZnJvbSBvYmplY3QgZGF0YWJhc2UgZm9yIGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIGFuYWxpenphcmUgaWwgY29tbWl0ICVzIGRhbCBkYXRhYmFzZSBvZ2dldHRpIHBlciBpbCBncmFmbyBkZWkgIgorImNvbW1pdCIKKworIzogY29tbWl0LWdyYXBoLmM6MjAxMAorIywgYy1mb3JtYXQKK21zZ2lkICJyb290IHRyZWUgT0lEIGZvciBjb21taXQgJXMgaW4gY29tbWl0LWdyYXBoIGlzICVzICE9ICVzIgorbXNnc3RyICIiCisibCdPSUQgZGVsbCdhbGJlcm8gcmFkaWNlIHBlciBpbCBjb21taXQgJXMgbmVsIGdyYWZvIGRlaSBjb21taXQgw6ggJXMgIT0gJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBsaXN0IGZvciBjb21taXQgJXMgaXMgdG9vIGxvbmciCittc2dzdHIgImwnZWxlbmNvIGdlbml0b3JpIG5lbCBncmFmbyBkZWkgY29tbWl0IHBlciBpbCBjb21taXQgJXMgw6ggdHJvcHBvIGx1bmdvIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDI5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgZm9yICVzIGlzICVzICE9ICVzIgorbXNnc3RyICJpbCBnZW5pdG9yZSBuZWwgZ3JhZm8gZGVpIGNvbW1pdCBwZXIgJXMgw6ggJXMgIT0gJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBsaXN0IGZvciBjb21taXQgJXMgdGVybWluYXRlcyBlYXJseSIKK21zZ3N0ciAiIgorImwnZWxlbmNvIGdlbml0b3JpIG5lbCBncmFmbyBkZWkgY29tbWl0IHBlciBpbCBjb21taXQgJXMgw6ggZmluaXRvIHByaW1hIGRlbCAiCisicHJldmlzdG8iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbW1pdC1ncmFwaCBoYXMgZ2VuZXJhdGlvbiBudW1iZXIgemVybyBmb3IgY29tbWl0ICVzLCBidXQgbm9uLXplcm8gZWxzZXdoZXJlIgorbXNnc3RyICIiCisiaWwgZ3JhZm8gZGVpIGNvbW1pdCBoYSB1biBudW1lcm8gZ2VuZXJhemlvbmUgemVybyBwZXIgaWwgY29tbWl0ICVzIG1hIG5vbiAiCisicGFyaSBhIHplcm8gcGVyIGdsaSBhbHRyaSIKKworIzogY29tbWl0LWdyYXBoLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29tbWl0LWdyYXBoIGhhcyBub24temVybyBnZW5lcmF0aW9uIG51bWJlciBmb3IgY29tbWl0ICVzLCBidXQgemVybyBlbHNld2hlcmUiCittc2dzdHIgIiIKKyJpbCBncmFmbyBkZWkgY29tbWl0IGhhIHVuIG51bWVybyBnZW5lcmF6aW9uZSBub24gcGFyaSBhIHplcm8gcGVyIGlsIGNvbW1pdCAiCisiJXMgbWEgcGFyaSBhIHplcm8gcGVyIGdsaSBhbHRyaSIKKworIzogY29tbWl0LWdyYXBoLmM6MjA2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggZ2VuZXJhdGlvbiBmb3IgY29tbWl0ICVzIGlzICV1ICE9ICV1IgorbXNnc3RyICJpbCBudW1lcm8gZ2VuZXJhemlvbmUgbmVsIGdyYWZvIGRlaSBjb21taXQgcGVyIGlsIGNvbW1pdCAlcyDDqCAldSAhPSAldSIKKworIzogY29tbWl0LWdyYXBoLmM6MjA3MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgZGF0ZSBmb3IgY29tbWl0ICVzIGluIGNvbW1pdC1ncmFwaCBpcyAlPFBSSXVNQVg+ICE9ICU8UFJJdU1BWD4iCittc2dzdHIgIiIKKyJsYSBkYXRhIHBlciBpbCBjb21taXQgJXMgbmVsIGdyYWZvIGRlaSBjb21taXQgw6ggJTxQUkl1TUFYPiAhPSAlPFBSSXVNQVg+IgorCiAjOiBjb21wYXQvb2JzdGFjay5jOjQwNiBjb21wYXQvb2JzdGFjay5jOjQwOAogbXNnaWQgIm1lbW9yeSBleGhhdXN0ZWQiCiBtc2dzdHIgIm1lbW9yaWEgZXNhdXJpdGEiCiAKLSM6IGNvbm5lY3RlZC5jOjM5Ci1tc2dpZCAiQ291bGQgbm90IHJ1biAnZ2l0IHJldi1saXN0JyIKLW1zZ3N0ciAiTm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBlc2VndWlyZSAnZ2l0LXJldi1saXN0JyIKLQotIzogY29ubmVjdGVkLmM6NDgKKyM6IGNvbmZpZy5jOjEyNAogIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgd3JpdGUgdG8gcmV2LWxpc3Q6ICVzIgotbXNnc3RyICJzY3JpdHR1cmEgbmVsbGEgcmV2LWxpc3Qgbm9uIHJpdXNjaXRhOiAlcyIKLQotIzogY29ubmVjdGVkLmM6NTYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHJldi1saXN0J3Mgc3RkaW46ICVzIgorbXNnaWQgIiIKKyJleGNlZWRlZCBtYXhpbXVtIGluY2x1ZGUgZGVwdGggKCVkKSB3aGlsZSBpbmNsdWRpbmdcbiIKKyJcdCVzXG4iCisiZnJvbVxuIgorIlx0JXNcbiIKKyJUaGlzIG1pZ2h0IGJlIGR1ZSB0byBjaXJjdWxhciBpbmNsdWRlcy4iCiBtc2dzdHIgIiIKKyJwcm9mb25kaXTDoCBtYXNzaW1hIGRpIGluY2x1c2lvbmUgKCVkKSBzdXBlcmF0YSBkdXJhbnRlIGwnaW5jbHVzaW9uZSBkaVxuIgorIlx0JXNcbiIKKyJkYVxuIgorIlx0JXNcbiIKKyJDacOyIHB1w7IgZXNzZXJlIGRvdnV0byBhIGRlbGxlIGluY2x1c2lvbmkgY2lyY29sYXJpLiIKIAotIzogZGF0ZS5jOjk1CisjOiBjb25maWcuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGV4cGFuZCBpbmNsdWRlIHBhdGggJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNwYW5kZXJlIGlsIHBlcmNvcnNvIGRpIGluY2x1c2lvbmUgJyVzJyIKKworIzogY29uZmlnLmM6MTUxCittc2dpZCAicmVsYXRpdmUgY29uZmlnIGluY2x1ZGVzIG11c3QgY29tZSBmcm9tIGZpbGVzIgorbXNnc3RyICJsZSBpbmNsdXNpb25pIGNvbmZpZ3VyYXppb25lIHJlbGF0aXZlIGRldm9ubyBwcm92ZW5pcmUgZGEgZmlsZSIKKworIzogY29uZmlnLmM6MTk3Cittc2dpZCAicmVsYXRpdmUgY29uZmlnIGluY2x1ZGUgY29uZGl0aW9uYWxzIG11c3QgY29tZSBmcm9tIGZpbGVzIgorbXNnc3RyICIiCisiaSBjb25kaXppb25hbGkgZGkgaW5jbHVzaW9uZSBjb25maWd1cmF6aW9uZSByZWxhdGl2aSBkZXZvbm8gcHJvdmVuaXJlIGRhIGZpbGUiCisKKyM6IGNvbmZpZy5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICJrZXkgZG9lcyBub3QgY29udGFpbiBhIHNlY3Rpb246ICVzIgorbXNnc3RyICJsYSBjaGlhdmUgbm9uIGNvbnRpZW5lIHVuYSBzZXppb25lOiAlcyIKKworIzogY29uZmlnLmM6MzgyCisjLCBjLWZvcm1hdAorbXNnaWQgImtleSBkb2VzIG5vdCBjb250YWluIHZhcmlhYmxlIG5hbWU6ICVzIgorbXNnc3RyICJsYSBjaGlhdmUgbm9uIGNvbnRpZW5lIHVuIG5vbWUgdmFyaWFiaWxlOiAlcyIKKworIzogY29uZmlnLmM6NDA2IHNlcXVlbmNlci5jOjI0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBrZXk6ICVzIgorbXNnc3RyICJjaGlhdmUgbm9uIHZhbGlkYTogJXMiCisKKyM6IGNvbmZpZy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGtleSAobmV3bGluZSk6ICVzIgorbXNnc3RyICJjaGlhdmUgbm9uIHZhbGlkYSAobnVvdmEgcmlnYSk6ICVzIgorCisjOiBjb25maWcuYzo0NDggY29uZmlnLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgImJvZ3VzIGNvbmZpZyBwYXJhbWV0ZXI6ICVzIgorbXNnc3RyICJwYXJhbWV0cm8gY29uZmlndXJhemlvbmUgZml0dGl6aW86ICVzIgorCisjOiBjb25maWcuYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYm9ndXMgZm9ybWF0IGluICVzIgorbXNnc3RyICJmb3JtYXRvIGZpdHRpemlvIGluICVzIgorCisjOiBjb25maWcuYzo4MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGJsb2IgJXMiCittc2dzdHIgInJpZ2EgY29uZmlndXJhemlvbmUgJWQgZXJyYXRhIG5lbCBibG9iICVzIgorCisjOiBjb25maWcuYzo4MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGZpbGUgJXMiCittc2dzdHIgInJpZ2EgY29uZmlndXJhemlvbmUgJWQgZXJyYXRhIG5lbCBmaWxlICVzIgorCisjOiBjb25maWcuYzo4MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJyaWdhIGNvbmZpZ3VyYXppb25lICVkIGVycmF0YSBuZWxsbyBzdGFuZGFyZCBpbnB1dCIKKworIzogY29uZmlnLmM6ODMzCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBzdWJtb2R1bGUtYmxvYiAlcyIKK21zZ3N0ciAicmlnYSBjb25maWd1cmF6aW9uZSAlZCBlcnJhdGEgbmVsIGJsb2Igc290dG9tb2R1bG8gJXMiCisKKyM6IGNvbmZpZy5jOjgzNworIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gY29tbWFuZCBsaW5lICVzIgorbXNnc3RyICJyaWdhIGNvbmZpZ3VyYXppb25lICVkIGVycmF0YSBuZWxsYSByaWdhIGRpIGNvbWFuZG8gJXMiCisKKyM6IGNvbmZpZy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gJXMiCittc2dzdHIgInJpZ2EgY29uZmlndXJhemlvbmUgJWQgZXJyYXRhIGluICVzIgorCisjOiBjb25maWcuYzo5NzgKK21zZ2lkICJvdXQgb2YgcmFuZ2UiCittc2dzdHIgImZ1b3JpIGludGVydmFsbG8iCisKKyM6IGNvbmZpZy5jOjk3OAorbXNnaWQgImludmFsaWQgdW5pdCIKK21zZ3N0ciAidW5pdMOgIG5vbiB2YWxpZGEiCisKKyM6IGNvbmZpZy5jOjk3OQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJzogJXMiCittc2dzdHIgInZhbG9yZSBjb25maWd1cmF6aW9uZSBudW1lcmljbyAnJXMnIGVycmF0byBwZXIgJyVzJzogJXMiCisKKyM6IGNvbmZpZy5jOjk5OAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBibG9iICVzOiAlcyIKK21zZ3N0ciAidmFsb3JlIGNvbmZpZ3VyYXppb25lIG51bWVyaWNvICclcycgZXJyYXRvIHBlciAnJXMnIG5lbCBibG9iICVzOiAlcyIKKworIzogY29uZmlnLmM6MTAwMQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBmaWxlICVzOiAlcyIKK21zZ3N0ciAidmFsb3JlIGNvbmZpZ3VyYXppb25lIG51bWVyaWNvICclcycgZXJyYXRvIHBlciAnJXMnIG5lbCBmaWxlICVzOiAlcyIKKworIzogY29uZmlnLmM6MTAwNAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBzdGFuZGFyZCBpbnB1dDogJXMiCittc2dzdHIgIiIKKyJ2YWxvcmUgY29uZmlndXJhemlvbmUgbnVtZXJpY28gJyVzJyBlcnJhdG8gcGVyICclcycgbmVsbG8gc3RhbmRhcmQgaW5wdXQ6ICVzIgorCisjOiBjb25maWcuYzoxMDA3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN1Ym1vZHVsZS1ibG9iICVzOiAlcyIKK21zZ3N0ciAiIgorInZhbG9yZSBjb25maWd1cmF6aW9uZSBudW1lcmljbyAnJXMnIGVycmF0byBwZXIgJyVzJyBuZWwgYmxvYiBzb3R0b21vZHVsbyAlczogIgorIiVzIgorCisjOiBjb25maWcuYzoxMDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIGNvbW1hbmQgbGluZSAlczogJXMiCittc2dzdHIgIiIKKyJ2YWxvcmUgY29uZmlndXJhemlvbmUgbnVtZXJpY28gJyVzJyBlcnJhdG8gcGVyICclcycgbmVsbGEgcmlnYSBkaSBjb21hbmRvICIKKyIlczogJXMiCisKKyM6IGNvbmZpZy5jOjEwMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gJXM6ICVzIgorbXNnc3RyICJ2YWxvcmUgY29uZmlndXJhemlvbmUgbnVtZXJpY28gJyVzJyBlcnJhdG8gcGVyICclcycgaW4gJXM6ICVzIgorCisjOiBjb25maWcuYzoxMTA4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBleHBhbmQgdXNlciBkaXIgaW46ICclcyciCittc2dzdHIgImVzcGFuc2lvbmUgZGlyZWN0b3J5IHV0ZW50ZSBpbiAnJXMnIG5vbiByaXVzY2l0YSIKKworIzogY29uZmlnLmM6MTExNworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGZvciAnJXMnIGlzIG5vdCBhIHZhbGlkIHRpbWVzdGFtcCIKK21zZ3N0ciAiJyVzJyBwZXIgJyVzJyBub24gw6ggdW4gdGltZXN0YW1wIHZhbGlkbyIKKworIzogY29uZmlnLmM6MTIwOAorIywgYy1mb3JtYXQKK21zZ2lkICJhYmJyZXYgbGVuZ3RoIG91dCBvZiByYW5nZTogJWQiCittc2dzdHIgImx1bmdoZXp6YSBhYmJyZXZpYXppb25lIGZ1b3JpIGludGVydmFsbG86ICVkIgorCisjOiBjb25maWcuYzoxMjIyIGNvbmZpZy5jOjEyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHpsaWIgY29tcHJlc3Npb24gbGV2ZWwgJWQiCittc2dzdHIgImxpdmVsbG8gY29tcHJlc3Npb25lIHpsaWIgJWQgbm9uIHZhbGlkbyIKKworIzogY29uZmlnLmM6MTMyNQorbXNnaWQgImNvcmUuY29tbWVudENoYXIgc2hvdWxkIG9ubHkgYmUgb25lIGNoYXJhY3RlciIKK21zZ3N0ciAiY29yZS5jb21tZW50Q2hhciBkb3ZyZWJiZSBlc3NlcmUgY29tcG9zdG8gZGEgdW4gc29sbyBjYXJhdHRlcmUiCisKKyM6IGNvbmZpZy5jOjEzNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBtb2RlIGZvciBvYmplY3QgY3JlYXRpb246ICVzIgorbXNnc3RyICJtb2RhbGl0w6Agbm9uIHZhbGlkYSBwZXIgbGEgY3JlYXppb25lIGRpIHVuIG9nZ2V0dG86ICVzIgorCisjOiBjb25maWcuYzoxNDMwCisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCB2YWx1ZSBmb3IgJXMiCittc2dzdHIgInZhbG9yZSBtYWxmb3JtYXRvIHBlciAlcyIKKworIzogY29uZmlnLmM6MTQ1NgorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgdmFsdWUgZm9yICVzOiAlcyIKK21zZ3N0ciAidmFsb3JlIG1hbGZvcm1hdG8gcGVyICVzOiAlcyIKKworIzogY29uZmlnLmM6MTQ1NworbXNnaWQgIm11c3QgYmUgb25lIG9mIG5vdGhpbmcsIG1hdGNoaW5nLCBzaW1wbGUsIHVwc3RyZWFtIG9yIGN1cnJlbnQiCittc2dzdHIgImRldidlc3NlcmUgbm90aGluZywgbWF0Y2hpbmcsIHNpbXBsZSwgdXBzdHJlYW0gbyBjdXJyZW50IgorCisjOiBjb25maWcuYzoxNTE4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU0MQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgcGFjayBjb21wcmVzc2lvbiBsZXZlbCAlZCIKK21zZ3N0ciAibGl2ZWxsbyBjb21wcmVzc2lvbmUgcGFjayAlZCBub24gdmFsaWRvIgorCisjOiBjb25maWcuYzoxNjM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb2FkIGNvbmZpZyBibG9iIG9iamVjdCAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjYXJpY2FyZSBsJ29nZ2V0dG8gYmxvYiBjb25maWd1cmF6aW9uZSAnJXMnIgorCisjOiBjb25maWcuYzoxNjQyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlZmVyZW5jZSAnJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgYmxvYiIKK21zZ3N0ciAiaWwgcmlmZXJpbWVudG8gJyVzJyBub24gcHVudGEgYWQgdW4gYmxvYiIKKworIzogY29uZmlnLmM6MTY1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBjb25maWcgYmxvYiAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaXNvbHZlcmUgaWwgYmxvYiBjb25maWd1cmF6aW9uZSAnJXMnIgorCisjOiBjb25maWcuYzoxNjg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSAlcyIKK21zZ3N0ciAiYW5hbGlzaSBkaSAlcyBub24gcml1c2NpdGEiCisKKyM6IGNvbmZpZy5jOjE3NDMKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWFuZC1saW5lIGNvbmZpZyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBsYSBjb25maWd1cmF6aW9uZSBhIHJpZ2EgZGkgY29tYW5kbyIKKworIzogY29uZmlnLmM6MjA5NworbXNnaWQgInVua25vd24gZXJyb3Igb2NjdXJyZWQgd2hpbGUgcmVhZGluZyB0aGUgY29uZmlndXJhdGlvbiBmaWxlcyIKK21zZ3N0ciAiIgorInNpIMOoIHZlcmlmaWNhdG8gdW4gZXJyb3JlIGltcHJldmlzdG8gZHVyYW50ZSBsYSBsZXR0dXJhIGRlaSBmaWxlIGRpICIKKyJjb25maWd1cmF6aW9uZSIKKworIzogY29uZmlnLmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkICVzOiAnJXMnIgorbXNnc3RyICIlcyBub24gdmFsaWRvOiAnJXMnIgorCisjOiBjb25maWcuYzoyMzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInNwbGl0SW5kZXgubWF4UGVyY2VudENoYW5nZSB2YWx1ZSAnJWQnIHNob3VsZCBiZSBiZXR3ZWVuIDAgYW5kIDEwMCIKK21zZ3N0ciAiIgorImlsIHZhbG9yZSBzcGxpdEluZGV4Lm1heFBlcmNlbnRDaGFuZ2UgJyVkJyBkb3ZyZWJiZSBlc3NlcmUgY29tcHJlc28gZnJhIDAgZSAiCisiMTAwIgorCisjOiBjb25maWcuYzoyMzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSAnJXMnIGZyb20gY29tbWFuZC1saW5lIGNvbmZpZyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSAnJXMnIGRhbGxhIGNvbmZpZ3VyYXppb25lIGEgcmlnYSBkaSBjb21hbmRvIgorCisjOiBjb25maWcuYzoyMzYwCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBjb25maWcgdmFyaWFibGUgJyVzJyBpbiBmaWxlICclcycgYXQgbGluZSAlZCIKK21zZ3N0ciAidmFyaWFiaWxlIGNvbmZpZ3VyYXppb25lICclcycgZXJyYXRhIG5lbCBmaWxlICclcycgYWxsYSByaWdhICVkIgorCisjOiBjb25maWcuYzoyNDQxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgc2VjdGlvbiBuYW1lICclcyciCittc2dzdHIgIm5vbWUgc2V6aW9uZSAnJXMnIG5vbiB2YWxpZG8iCisKKyM6IGNvbmZpZy5jOjI0NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaGFzIG11bHRpcGxlIHZhbHVlcyIKK21zZ3N0ciAiJXMgaGEgcGnDuSB2YWxvcmkiCisKKyM6IGNvbmZpZy5jOjI1MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIG5ldyBjb25maWd1cmF0aW9uIGZpbGUgJXMiCittc2dzdHIgInNjcml0dHVyYSBkZWwgbnVvdm8gZmlsZSBkaSBjb25maWd1cmF6aW9uZSAlcyBub24gcml1c2NpdGEiCisKKyM6IGNvbmZpZy5jOjI3NTQgY29uZmlnLmM6MzA3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgbG9jayBjb25maWcgZmlsZSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYmxvY2NhcmUgaWwgZmlsZSBkaSBjb25maWd1cmF6aW9uZSAlcyIKKworIzogY29uZmlnLmM6Mjc2NQorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuaW5nICVzIgorbXNnc3RyICJhcGVydHVyYSBkaSAlcyBpbiBjb3JzbyIKKworIzogY29uZmlnLmM6MjgwMCBidWlsdGluL2NvbmZpZy5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhdHRlcm46ICVzIgorbXNnc3RyICJwYXR0ZXJuIG5vbiB2YWxpZG86ICVzIgorCisjOiBjb25maWcuYzoyODI1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29uZmlnIGZpbGUgJXMiCittc2dzdHIgImZpbGUgZGkgY29uZmlndXJhemlvbmUgJXMgbm9uIHZhbGlkbyIKKworIzogY29uZmlnLmM6MjgzOCBjb25maWcuYzozMDkxCisjLCBjLWZvcm1hdAorbXNnaWQgImZzdGF0IG9uICVzIGZhaWxlZCIKK21zZ3N0ciAiZnN0YXQgZGkgJXMgbm9uIHJpdXNjaXRhIgorCisjOiBjb25maWcuYzoyODQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtbWFwICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIG1tYXAgc3UgJyVzJyIKKworIzogY29uZmlnLmM6Mjg1OCBjb25maWcuYzozMDk2CisjLCBjLWZvcm1hdAorbXNnaWQgImNobW9kIG9uICVzIGZhaWxlZCIKK21zZ3N0ciAiZXNlY3V6aW9uZSBjaG1vZCBzdSAlcyBub24gcml1c2NpdGEiCisKKyM6IGNvbmZpZy5jOjI5NDMgY29uZmlnLmM6MzE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29uZmlnIGZpbGUgJXMiCittc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGlsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgJXMiCisKKyM6IGNvbmZpZy5jOjI5NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHNldCAnJXMnIHRvICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGltcG9zdGFyZSAnJXMnIGEgJyVzJyIKKworIzogY29uZmlnLmM6Mjk3OSBidWlsdGluL3JlbW90ZS5jOjY1NSBidWlsdGluL3JlbW90ZS5jOjg0OSBidWlsdGluL3JlbW90ZS5jOjg1NworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgdW5zZXQgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZWxpbWluYXJlIGwnaW1wb3N0YXppb25lIGRpICclcyciCisKKyM6IGNvbmZpZy5jOjMwNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzZWN0aW9uIG5hbWU6ICVzIgorbXNnc3RyICJub21lIHNlemlvbmUgbm9uIHZhbGlkbzogJXMiCisKKyM6IGNvbmZpZy5jOjMyMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyB2YWx1ZSBmb3IgJyVzJyIKK21zZ3N0ciAidmFsb3JlIG1hbmNhbnRlIHBlciAnJXMnIgorCisjOiBjb25uZWN0LmM6NjEKK21zZ2lkICJ0aGUgcmVtb3RlIGVuZCBodW5nIHVwIHVwb24gaW5pdGlhbCBjb250YWN0IgorbXNnc3RyICIiCisibGEgY29udHJvcGFydGUgcmVtb3RhIGhhIGNoaXVzbyBsYSBjb25uZXNzaW9uZSBkdXJhbnRlIGlsIGNvbnRhdHRvIGluaXppYWxlIgorCisjOiBjb25uZWN0LmM6NjMKK21zZ2lkICIiCisiQ291bGQgbm90IHJlYWQgZnJvbSByZW1vdGUgcmVwb3NpdG9yeS5cbiIKKyJcbiIKKyJQbGVhc2UgbWFrZSBzdXJlIHlvdSBoYXZlIHRoZSBjb3JyZWN0IGFjY2VzcyByaWdodHNcbiIKKyJhbmQgdGhlIHJlcG9zaXRvcnkgZXhpc3RzLiIKK21zZ3N0ciAiIgorIkltcG9zc2liaWxlIGxlZ2dlcmUgZGFsIHJlcG9zaXRvcnkgcmVtb3RvLlxuIgorIlxuIgorIkFzc2ljdXJhdGkgZGkgZGlzcG9ycmUgZGVpIHByaXZpbGVnaSBkJ2FjY2Vzc28gY29ycmV0dGlcbiIKKyJlIGNoZSBpbCByZXBvc2l0b3J5IGVzaXN0YS4iCisKKyM6IGNvbm5lY3QuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICJzZXJ2ZXIgZG9lc24ndCBzdXBwb3J0ICclcyciCittc2dzdHIgImlsIHNlcnZlciBub24gc3VwcG9ydGEgJyVzJyIKKworIzogY29ubmVjdC5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJzZXJ2ZXIgZG9lc24ndCBzdXBwb3J0IGZlYXR1cmUgJyVzJyIKK21zZ3N0ciAiaWwgc2VydmVyIG5vbiBzdXBwb3J0YSBsYSBmdW56aW9uYWxpdMOgICclcyciCisKKyM6IGNvbm5lY3QuYzoxMTQKK21zZ2lkICJleHBlY3RlZCBmbHVzaCBhZnRlciBjYXBhYmlsaXRpZXMiCittc2dzdHIgImF0dGVzbyBmbHVzaCBkb3BvIGxldHR1cmEgZnVuemlvbmFsaXTDoCIKKworIzogY29ubmVjdC5jOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBjYXBhYmlsaXRpZXMgYWZ0ZXIgZmlyc3QgbGluZSAnJXMnIgorbXNnc3RyICJpZ25vcm8gbGUgZnVuemlvbmFsaXTDoCBkb3BvIGxhIHByaW1hIHJpZ2EgJyVzJyIKKworIzogY29ubmVjdC5jOjI1MgorbXNnaWQgInByb3RvY29sIGVycm9yOiB1bmV4cGVjdGVkIGNhcGFiaWxpdGllc157fSIKK21zZ3N0ciAiZXJyb3JlIHByb3RvY29sbG86IGNhcGFiaWxpdGllc157fSBub24gYXR0ZXNvIgorCisjOiBjb25uZWN0LmM6MjczCisjLCBjLWZvcm1hdAorbXNnaWQgInByb3RvY29sIGVycm9yOiBleHBlY3RlZCBzaGFsbG93IHNoYS0xLCBnb3QgJyVzJyIKK21zZ3N0ciAiZXJyb3JlIHByb3RvY29sbG86IGF0dGVzbyBTSEExIHNoYWxsb3csIHJpY2V2dXRvICclcyciCisKKyM6IGNvbm5lY3QuYzoyNzUKK21zZ2lkICJyZXBvc2l0b3J5IG9uIHRoZSBvdGhlciBlbmQgY2Fubm90IGJlIHNoYWxsb3ciCittc2dzdHIgImlsIHJlcG9zaXRvcnkgZGVsbGEgY29udHJvcGFydGUgbm9uIHB1w7IgZXNzZXJlIHNoYWxsb3ciCisKKyM6IGNvbm5lY3QuYzozMTMKK21zZ2lkICJpbnZhbGlkIHBhY2tldCIKK21zZ3N0ciAicGFjY2hldHRvIG5vbiB2YWxpZG8iCisKKyM6IGNvbm5lY3QuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvdG9jb2wgZXJyb3I6IHVuZXhwZWN0ZWQgJyVzJyIKK21zZ3N0ciAiZXJyb3JlIHByb3RvY29sbG86ICclcycgbm9uIGF0dGVzbyIKKworIzogY29ubmVjdC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGxzLXJlZnMgcmVzcG9uc2U6ICVzIgorbXNnc3RyICJyaXNwb3N0YSBscy1yZWZzIG5vbiB2YWxpZGE6ICVzIgorCisjOiBjb25uZWN0LmM6NDQ1Cittc2dpZCAiZXhwZWN0ZWQgZmx1c2ggYWZ0ZXIgcmVmIGxpc3RpbmciCittc2dzdHIgImF0dGVzbyBmbHVzaCBkb3BvIGVsZW5jbyByZWYiCisKKyM6IGNvbm5lY3QuYzo1NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvdG9jb2wgJyVzJyBpcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICJpbCBwcm90b2NvbGxvICclcycgbm9uIMOoIHN1cHBvcnRhdG8iCisKKyM6IGNvbm5lY3QuYzo1OTUKK21zZ2lkICJ1bmFibGUgdG8gc2V0IFNPX0tFRVBBTElWRSBvbiBzb2NrZXQiCittc2dzdHIgImltcG9zc2liaWxlIGltcG9zdGFyZSBTT19LRUVQQUxJVkUgc3VsIHNvY2tldCIKKworIzogY29ubmVjdC5jOjYzNSBjb25uZWN0LmM6Njk4CisjLCBjLWZvcm1hdAorbXNnaWQgIkxvb2tpbmcgdXAgJXMgLi4uICIKK21zZ3N0ciAiUmlzb2x1emlvbmUgZGkgJXMgaW4gY29yc28uLi4gIgorCisjOiBjb25uZWN0LmM6NjM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzIChwb3J0ICVzKSAoJXMpIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaXNvbHZlcmUgJXMgKHBvcnRhICVzKSAoJXMpIgorCisjLiBUUkFOU0xBVE9SUzogdGhpcyBpcyB0aGUgZW5kIG9mICJMb29raW5nIHVwICVzIC4uLiAiCisjOiBjb25uZWN0LmM6NjQzIGNvbm5lY3QuYzo3MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRvbmUuXG4iCisiQ29ubmVjdGluZyB0byAlcyAocG9ydCAlcykgLi4uICIKK21zZ3N0ciAiIgorImZhdHRvLlxuIgorIkNvbm5lc3Npb25lIGEgJXMgKHBvcnRhICVzKSBpbiBjb3Jzby4uLiAiCisKKyM6IGNvbm5lY3QuYzo2NjUgY29ubmVjdC5jOjc0MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNvbm5lY3QgdG8gJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBjb2xsZWdhcnNpIGEgJXM6XG4iCisiJXMiCisKKyMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkNvbm5lY3RpbmcgdG8gJXMgKHBvcnQgJXMpIC4uLiAiCisjOiBjb25uZWN0LmM6NjcxIGNvbm5lY3QuYzo3NDgKK21zZ2lkICJkb25lLiIKK21zZ3N0ciAiZmF0dG8uIgorCisjOiBjb25uZWN0LmM6NzAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzICglcykiCittc2dzdHIgImltcG9zc2liaWxlIHJpc29sdmVyZSAlcyAoJXMpIgorCisjOiBjb25uZWN0LmM6NzA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gcG9ydCAlcyIKK21zZ3N0ciAicG9ydGEgJXMgc2Nvbm9zY2l1dGEiCisKKyM6IGNvbm5lY3QuYzo4NDUgY29ubmVjdC5jOjExNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3RyYW5nZSBob3N0bmFtZSAnJXMnIGJsb2NrZWQiCittc2dzdHIgIm5vbWUgaG9zdCBzdHJhbm8gJyVzJyBibG9jY2F0byIKKworIzogY29ubmVjdC5jOjg0NworIywgYy1mb3JtYXQKK21zZ2lkICJzdHJhbmdlIHBvcnQgJyVzJyBibG9ja2VkIgorbXNnc3RyICJwb3J0YSBzdHJhbmEgJyVzJyBibG9jY2F0YSIKKworIzogY29ubmVjdC5jOjg1NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhcnQgcHJveHkgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGF2dmlhcmUgaWwgcHJveHkgJXMiCisKKyM6IGNvbm5lY3QuYzo5MjgKK21zZ2lkICJubyBwYXRoIHNwZWNpZmllZDsgc2VlICdnaXQgaGVscCBwdWxsJyBmb3IgdmFsaWQgdXJsIHN5bnRheCIKK21zZ3N0ciAiIgorIm5lc3N1biBwZXJjb3JzbyBzcGVjaWZpY2F0bzsgdmVkZXJlICdnaXQgaGVscCBwdWxsJyBwZXIgbGUgc2ludGFzc2kgVVJMICIKKyJ2YWxpZGUiCisKKyM6IGNvbm5lY3QuYzoxMTIzCittc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNCIKK21zZ3N0ciAibGEgdmFyaWFudGUgU1NIICdzaW1wbGUnIG5vbiBzdXBwb3J0YSAtNCIKKworIzogY29ubmVjdC5jOjExMzUKK21zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IC02IgorbXNnc3RyICJsYSB2YXJpYW50ZSBTU0ggJ3NpbXBsZScgbm9uIHN1cHBvcnRhIC02IgorCisjOiBjb25uZWN0LmM6MTE1MgorbXNnaWQgInNzaCB2YXJpYW50ICdzaW1wbGUnIGRvZXMgbm90IHN1cHBvcnQgc2V0dGluZyBwb3J0IgorbXNnc3RyICJsYSB2YXJpYW50ZSBTU0ggJ3NpbXBsZScgbm9uIHN1cHBvcnRhIGwnaW1wb3N0YXppb25lIGRlbGxhIHBvcnRhIgorCisjOiBjb25uZWN0LmM6MTI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzdHJhbmdlIHBhdGhuYW1lICclcycgYmxvY2tlZCIKK21zZ3N0ciAicGVyY29yc28gc3RyYW5vICclcycgYmxvY2NhdG8iCisKKyM6IGNvbm5lY3QuYzoxMzExCittc2dpZCAidW5hYmxlIHRvIGZvcmsiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGZvcmsiCisKKyM6IGNvbm5lY3RlZC5jOjk4IGJ1aWx0aW4vZnNjay5jOjIwOCBidWlsdGluL3BydW5lLmM6NDMKK21zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkiCittc2dzdHIgIkNvbnRyb2xsbyBjb25uZXNzaW9uZSBpbiBjb3JzbyIKKworIzogY29ubmVjdGVkLmM6MTEwCittc2dpZCAiQ291bGQgbm90IHJ1biAnZ2l0IHJldi1saXN0JyIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgZXNlZ3VpcmUgJ2dpdC1yZXYtbGlzdCciCisKKyM6IGNvbm5lY3RlZC5jOjEzMAorbXNnaWQgImZhaWxlZCB3cml0ZSB0byByZXYtbGlzdCIKK21zZ3N0ciAic2NyaXR0dXJhIG5lbGxhIHJldi1saXN0IG5vbiByaXVzY2l0YSIKKworIzogY29ubmVjdGVkLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHJldi1saXN0J3Mgc3RkaW4iCittc2dzdHIgImNoaXVzdXJhIHN0YW5kYXJkIGlucHV0IGRlbGxhIHJldi1saXN0IG5vbiByaXVzY2l0YSIKKworIzogY29udmVydC5jOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGNybGZfYWN0aW9uICVkIgorbXNnc3RyICJjcmxmX2FjdGlvbiAlZCBpbGxlY2l0YSIKKworIzogY29udmVydC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICJDUkxGIHdvdWxkIGJlIHJlcGxhY2VkIGJ5IExGIGluICVzIgorbXNnc3RyICJDUkxGIHNhcmViYmUgc29zdGl0dWl0byBkYSBMRiBpbiAlcyIKKworIzogY29udmVydC5jOjIwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ1JMRiB3aWxsIGJlIHJlcGxhY2VkIGJ5IExGIGluICVzLlxuIgorIlRoZSBmaWxlIHdpbGwgaGF2ZSBpdHMgb3JpZ2luYWwgbGluZSBlbmRpbmdzIGluIHlvdXIgd29ya2luZyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKyJDUkxGIHNhcsOgIHNvc3RpdHVpdG8gZGEgTEYgaW4gJXMuXG4iCisiSWwgZmlsZSBhdnLDoCBpIHN1b2kgZmluZSByaWdhIG9yaWdpbmFyaSBuZWxsYSBwcm9wcmlhIGRpcmVjdG9yeSBkaSBsYXZvcm8iCisKKyM6IGNvbnZlcnQuYzoyMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiTEYgd291bGQgYmUgcmVwbGFjZWQgYnkgQ1JMRiBpbiAlcyIKK21zZ3N0ciAiTEYgc2FyZWJiZSBzb3N0aXR1aXRvIGRhIENSTEYgaW4gJXMiCisKKyM6IGNvbnZlcnQuYzoyMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkxGIHdpbGwgYmUgcmVwbGFjZWQgYnkgQ1JMRiBpbiAlcy5cbiIKKyJUaGUgZmlsZSB3aWxsIGhhdmUgaXRzIG9yaWdpbmFsIGxpbmUgZW5kaW5ncyBpbiB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICIiCisiTEYgc2Fyw6Agc29zdGl0dWl0byBkYSBDUkxGIGluICVzLlxuIgorIklsIGZpbGUgYXZyw6AgaSBzdW9pIGZpbmUgcmlnYSBvcmlnaW5hcmkgbmVsbGEgcHJvcHJpYSBkaXJlY3RvcnkgZGkgbGF2b3JvIgorCisjOiBjb252ZXJ0LmM6Mjg0CisjLCBjLWZvcm1hdAorbXNnaWQgIkJPTSBpcyBwcm9oaWJpdGVkIGluICclcycgaWYgZW5jb2RlZCBhcyAlcyIKK21zZ3N0ciAiSWwgQk9NIMOoIHZpZXRhdG8gaW4gJyVzJyBzZSBpbCBmaWxlIMOoIGNvZGlmaWNhdG8gY29tZSAlcyIKKworIzogY29udmVydC5jOjI5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZpbGUgJyVzJyBjb250YWlucyBhIGJ5dGUgb3JkZXIgbWFyayAoQk9NKS4gUGxlYXNlIHVzZSBVVEYtJS4qcyBhcyAiCisid29ya2luZy10cmVlLWVuY29kaW5nLiIKK21zZ3N0ciAiIgorIklsIGZpbGUgJyVzJyBjb250aWVuZSB1biBpbmRpY2F0b3JlIGRlbGwnb3JkaW5lIGRlaSBieXRlIChCT00pLiBVc2FyZSBVVEYtIgorIiUuKnMgY29tZSBjb2RpZmljYSBkZWxsJ2FsYmVybyBkaSBsYXZvcm8uIgorCisjOiBjb252ZXJ0LmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkJPTSBpcyByZXF1aXJlZCBpbiAnJXMnIGlmIGVuY29kZWQgYXMgJXMiCittc2dzdHIgIklsIEJPTSDDqCByaWNoaWVzdG8gaW4gJyVzJyBzZSBpbCBmaWxlIMOoIGNvZGlmaWNhdG8gY29tZSAlcyIKKworIzogY29udmVydC5jOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZpbGUgJyVzJyBpcyBtaXNzaW5nIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lc0JFIG9yIFVURi0iCisiJXNMRSAoZGVwZW5kaW5nIG9uIHRoZSBieXRlIG9yZGVyKSBhcyB3b3JraW5nLXRyZWUtZW5jb2RpbmcuIgorbXNnc3RyICIiCisiTmVsIGZpbGUgJyVzJyBtYW5jYSB1biBpbmRpY2F0b3JlIGRlbGwnb3JkaW5lIGRlaSBieXRlIChCT00pLiBVc2FyZSBVVEYtJXNCRSAiCisibyBVVEYtJXNMRSAoYSBzZWNvbmRhIGRlbGwnb3JkaW5lIGRlaSBieXRlKSBjb21lIGNvZGlmaWNhIGRlbGwnYWxiZXJvIGRpICIKKyJsYXZvcm8uIgorCisjOiBjb252ZXJ0LmM6NDE5IGNvbnZlcnQuYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGVuY29kZSAnJXMnIGZyb20gJXMgdG8gJXMiCittc2dzdHIgImNvbnZlcnNpb25lIGRlbGxhIGNvZGlmaWNhICclcycgZGEgJXMgYSAlcyBub24gcml1c2NpdGEiCisKKyM6IGNvbnZlcnQuYzo0NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW5jb2RpbmcgJyVzJyBmcm9tICVzIHRvICVzIGFuZCBiYWNrIGlzIG5vdCB0aGUgc2FtZSIKK21zZ3N0ciAiIgorImlsIHJpc3VsdGF0byBkZWxsYSBjb2RpZmljYSBkaSAnJXMnIGRhICVzIGEgJXMgZSB2aWNldmVyc2Egbm9uIMOoIGxvIHN0ZXNzbyIKKworIzogY29udmVydC5jOjY2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZm9yayB0byBydW4gZXh0ZXJuYWwgZmlsdGVyICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGZvcmsgcGVyIGVzZWd1aXJlIGlsIGZpbHRybyBlc3Rlcm5vICclcyciCisKKyM6IGNvbnZlcnQuYzo2ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZlZWQgdGhlIGlucHV0IHRvIGV4dGVybmFsIGZpbHRlciAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBmb3JuaXJlIGwnaW5wdXQgYWwgZmlsdHJvIGVzdGVybm8gJyVzJyIKKworIzogY29udmVydC5jOjY5NQorIywgYy1mb3JtYXQKK21zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQgJWQiCittc2dzdHIgImVzZWN1emlvbmUgZGVsIGZpbHRybyBlc3Rlcm5vICclcycgbm9uIHJpdXNjaXRhOiAlZCIKKworIzogY29udmVydC5jOjczMCBjb252ZXJ0LmM6NzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZnJvbSBleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQiCittc2dzdHIgImxldHR1cmEgZGFsIGZpbHRybyBlc3Rlcm5vICclcycgbm9uIHJpdXNjaXRhIgorCisjOiBjb252ZXJ0LmM6NzM2IGNvbnZlcnQuYzo3OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkIgorbXNnc3RyICJlc2VjdXppb25lIGRlbCBmaWx0cm8gZXN0ZXJubyAnJXMnIG5vbiByaXVzY2l0YSIKKworIzogY29udmVydC5jOjgzOQorbXNnaWQgInVuZXhwZWN0ZWQgZmlsdGVyIHR5cGUiCittc2dzdHIgInRpcG8gZmlsdHJvIGluYXR0ZXNvIgorCisjOiBjb252ZXJ0LmM6ODUwCittc2dpZCAicGF0aCBuYW1lIHRvbyBsb25nIGZvciBleHRlcm5hbCBmaWx0ZXIiCittc2dzdHIgIm5vbWUgcGVyY29yc28gdHJvcHBvIGx1bmdvIHBlciBpbCBmaWx0cm8gZXN0ZXJubyIKKworIzogY29udmVydC5jOjkyNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZXh0ZXJuYWwgZmlsdGVyICclcycgaXMgbm90IGF2YWlsYWJsZSBhbnltb3JlIGFsdGhvdWdoIG5vdCBhbGwgcGF0aHMgaGF2ZSAiCisiYmVlbiBmaWx0ZXJlZCIKK21zZ3N0ciAiIgorImlsIGZpbHRybyBlc3Rlcm5vICclcycgbm9uIMOoIHBpw7kgZGlzcG9uaWJpbGUgbm9ub3N0YW50ZSBub24gdHV0dGkgaSBwZXJjb3JzaSAiCisic2lhbm8gc3RhdGkgZmlsdHJhdGkiCisKKyM6IGNvbnZlcnQuYzoxMjIzCittc2dpZCAidHJ1ZS9mYWxzZSBhcmUgbm8gdmFsaWQgd29ya2luZy10cmVlLWVuY29kaW5ncyIKK21zZ3N0ciAidHJ1ZS9mYWxzZSBub24gc29ubyBjb2RpZmljaGUgZGVsbCdhbGJlcm8gZGkgbGF2b3JvIHZhbGlkZSIKKworIzogY29udmVydC5jOjE0MTEgY29udmVydC5jOjE0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNsZWFuIGZpbHRlciAnJXMnIGZhaWxlZCIKK21zZ3N0ciAiJXM6IGVzZWN1emlvbmUgZGVsIGZpbHRybyBjbGVhbiAnJXMnIG5vbiByaXVzY2l0YSIKKworIzogY29udmVydC5jOjE0ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHNtdWRnZSBmaWx0ZXIgJXMgZmFpbGVkIgorbXNnc3RyICIlczogZXNlY3V6aW9uZSBkZWwgZmlsdHJvIHNtdWRnZSAnJXMnIG5vbiByaXVzY2l0YSIKKworIzogZGF0ZS5jOjEzOAogbXNnaWQgImluIHRoZSBmdXR1cmUiCiBtc2dzdHIgImluIGZ1dHVybyIKIAotIzogZGF0ZS5jOjEwMQorIzogZGF0ZS5jOjE0NAogIywgYy1mb3JtYXQKLW1zZ2lkICIlbHUgc2Vjb25kIGFnbyIKLW1zZ2lkX3BsdXJhbCAiJWx1IHNlY29uZHMgYWdvIgotbXNnc3RyWzBdICIlbHUgc2Vjb25kbyBmYSIKLW1zZ3N0clsxXSAiJWx1IHNlY29uZGkgZmEiCittc2dpZCAiJTxQUkl1TUFYPiBzZWNvbmQgYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHNlY29uZHMgYWdvIgorbXNnc3RyWzBdICIlPFBSSXVNQVg+IHNlY29uZG8gZmEiCittc2dzdHJbMV0gIiU8UFJJdU1BWD4gc2Vjb25kaSBmYSIKIAotIzogZGF0ZS5jOjEwOAorIzogZGF0ZS5jOjE1MQogIywgYy1mb3JtYXQKLW1zZ2lkICIlbHUgbWludXRlIGFnbyIKLW1zZ2lkX3BsdXJhbCAiJWx1IG1pbnV0ZXMgYWdvIgotbXNnc3RyWzBdICIlbHUgdW4gbWludXRvIGZhIgotbXNnc3RyWzFdICIlbHUgbWludXRpIGZhIgorbXNnaWQgIiU8UFJJdU1BWD4gbWludXRlIGFnbyIKK21zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtaW51dGVzIGFnbyIKK21zZ3N0clswXSAiJTxQUkl1TUFYPiBtaW51dG8gZmEiCittc2dzdHJbMV0gIiU8UFJJdU1BWD4gbWludXRpIGZhIgogCi0jOiBkYXRlLmM6MTE1CisjOiBkYXRlLmM6MTU4CiAjLCBjLWZvcm1hdAotbXNnaWQgIiVsdSBob3VyIGFnbyIKLW1zZ2lkX3BsdXJhbCAiJWx1IGhvdXJzIGFnbyIKLW1zZ3N0clswXSAiJWx1IG9yYSBmYSIKLW1zZ3N0clsxXSAiJWx1IG9yZSBmYSIKK21zZ2lkICIlPFBSSXVNQVg+IGhvdXIgYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IGhvdXJzIGFnbyIKK21zZ3N0clswXSAiJTxQUkl1TUFYPiBvcmEgZmEiCittc2dzdHJbMV0gIiU8UFJJdU1BWD4gb3JlIGZhIgogCi0jOiBkYXRlLmM6MTIyCisjOiBkYXRlLmM6MTY1CiAjLCBjLWZvcm1hdAotbXNnaWQgIiVsdSBkYXkgYWdvIgotbXNnaWRfcGx1cmFsICIlbHUgZGF5cyBhZ28iCi1tc2dzdHJbMF0gIiVsdSBnaW9ybm8gZmEiCi1tc2dzdHJbMV0gIiVsdSBnaW9ybmkgZmEiCittc2dpZCAiJTxQUkl1TUFYPiBkYXkgYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IGRheXMgYWdvIgorbXNnc3RyWzBdICIlPFBSSXVNQVg+IGdpb3JubyBmYSIKK21zZ3N0clsxXSAiJTxQUkl1TUFYPiBnaW9ybmkgZmEiCiAKLSM6IGRhdGUuYzoxMjgKKyM6IGRhdGUuYzoxNzEKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJWx1IHdlZWsgYWdvIgotbXNnaWRfcGx1cmFsICIlbHUgd2Vla3MgYWdvIgotbXNnc3RyWzBdICIlbHUgc2V0dGltYW5hIGZhIgotbXNnc3RyWzFdICIlbHUgc2V0dGltYW5lIGZhIgorbXNnaWQgIiU8UFJJdU1BWD4gd2VlayBhZ28iCittc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gd2Vla3MgYWdvIgorbXNnc3RyWzBdICIlPFBSSXVNQVg+IHNldHRpbWFuYSBmYSIKK21zZ3N0clsxXSAiJTxQUkl1TUFYPiBzZXR0aW1hbmUgZmEiCiAKLSM6IGRhdGUuYzoxMzUKKyM6IGRhdGUuYzoxNzgKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJWx1IG1vbnRoIGFnbyIKLW1zZ2lkX3BsdXJhbCAiJWx1IG1vbnRocyBhZ28iCi1tc2dzdHJbMF0gIiVsdSBtZXNlIGZhIgotbXNnc3RyWzFdICIlbHUgbWVzaSBmYSIKK21zZ2lkICIlPFBSSXVNQVg+IG1vbnRoIGFnbyIKK21zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtb250aHMgYWdvIgorbXNnc3RyWzBdICIlPFBSSXVNQVg+IG1lc2UgZmEiCittc2dzdHJbMV0gIiU8UFJJdU1BWD4gbWVzaSBmYSIKIAotIzogZGF0ZS5jOjE0NgorIzogZGF0ZS5jOjE4OQogIywgYy1mb3JtYXQKLW1zZ2lkICIlbHUgeWVhciIKLW1zZ2lkX3BsdXJhbCAiJWx1IHllYXJzIgotbXNnc3RyWzBdICIlbHUgYW5ubyIKLW1zZ3N0clsxXSAiJWx1IGFubmkiCittc2dpZCAiJTxQUkl1TUFYPiB5ZWFyIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHllYXJzIgorbXNnc3RyWzBdICIlPFBSSXVNQVg+IGFubm8iCittc2dzdHJbMV0gIiU8UFJJdU1BWD4gYW5uaSIKIAotIzogZGF0ZS5jOjE0OQorIy4gVFJBTlNMQVRPUlM6ICIlcyIgaXMgIjxuPiB5ZWFycyIKKyM6IGRhdGUuYzoxOTIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJXMsICVsdSBtb250aCBhZ28iCi1tc2dpZF9wbHVyYWwgIiVzLCAlbHUgbW9udGhzIGFnbyIKLW1zZ3N0clswXSAiJXMsICVsdSBtZXNlIGZhIgotbXNnc3RyWzFdICIlcywgJWx1IG1lc2kgZmEiCittc2dpZCAiJXMsICU8UFJJdU1BWD4gbW9udGggYWdvIgorbXNnaWRfcGx1cmFsICIlcywgJTxQUkl1TUFYPiBtb250aHMgYWdvIgorbXNnc3RyWzBdICIlcywgJTxQUkl1TUFYPiBtZXNlIGZhIgorbXNnc3RyWzFdICIlcywgJTxQUkl1TUFYPiBtZXNpIGZhIgogCi0jOiBkYXRlLmM6MTU0IGRhdGUuYzoxNTkKKyM6IGRhdGUuYzoxOTcgZGF0ZS5jOjIwMgogIywgYy1mb3JtYXQKLW1zZ2lkICIlbHUgeWVhciBhZ28iCi1tc2dpZF9wbHVyYWwgIiVsdSB5ZWFycyBhZ28iCi1tc2dzdHJbMF0gIiVsdSBhbm5vIGZhIgotbXNnc3RyWzFdICIlbHUgYW5uaSBmYSIKK21zZ2lkICIlPFBSSXVNQVg+IHllYXIgYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHllYXJzIGFnbyIKK21zZ3N0clswXSAiJTxQUkl1TUFYPiBhbm5vIGZhIgorbXNnc3RyWzFdICIlPFBSSXVNQVg+IGFubmkgZmEiCiAKLSM6IGRpZmYuYzoxMDUKKyM6IGRlbHRhLWlzbGFuZHMuYzoyNzIKK21zZ2lkICJQcm9wYWdhdGluZyBpc2xhbmQgbWFya3MiCittc2dzdHIgIlByb3BhZ2F6aW9uZSBjb250cmFzc2VnbmkgaXNvbGUgaW4gY29yc28iCisKKyM6IGRlbHRhLWlzbGFuZHMuYzoyOTAKICMsIGMtZm9ybWF0Ci1tc2dpZCAiICBGYWlsZWQgdG8gcGFyc2UgZGlyc3RhdCBjdXQtb2ZmIHBlcmNlbnRhZ2UgJyUuKnMnXG4iCittc2dpZCAiYmFkIHRyZWUgb2JqZWN0ICVzIgorbXNnc3RyICJvZ2dldHRvIGFsYmVybyAlcyBub24gdmFsaWRvIgorCisjOiBkZWx0YS1pc2xhbmRzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsb2FkIGlzbGFuZCByZWdleCBmb3IgJyVzJzogJXMiCiBtc2dzdHIgIiIKKyJjYXJpY2FtZW50byBkZWxsJ2VzcHJlc3Npb25lIHJlZ29sYXJlIGRlbGwnaXNvbGEgcGVyICclcycgbm9uIHJpdXNjaXRvOiAlcyIKIAotIzogZGlmZi5jOjExMAorIzogZGVsdGEtaXNsYW5kcy5jOjM5MAogIywgYy1mb3JtYXQKLW1zZ2lkICIgIFVua25vd24gZGlyc3RhdCBwYXJhbWV0ZXIgJyUuKnMnXG4iCi1tc2dzdHIgIiAgUGFyYW1ldHJvIGRpcnN0YXQgJyUuKnMnIHNjb25vc2NpdXRvXG4iCittc2dpZCAiaXNsYW5kIHJlZ2V4IGZyb20gY29uZmlnIGhhcyB0b28gbWFueSBjYXB0dXJlIGdyb3VwcyAobWF4PSVkKSIKK21zZ3N0ciAiIgorImwnZXNwcmVzc2lvbmUgcmVnb2xhcmUgZGVsbCdpc29sYSB0cmF0dGEgZGFsbGEgY29uZmlndXJhemlvbmUgaGEgdHJvcHBpICIKKyJncnVwcGkgY2F0dHVyYSAobWFzc2ltbz0lZCkiCiAKLSM6IGRpZmYuYzoyMTAKKyM6IGRlbHRhLWlzbGFuZHMuYzo0NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWFya2VkICVkIGlzbGFuZHMsIGRvbmUuXG4iCittc2dzdHIgIkNvbnRyYXNzZWduYXRlICVkIGlzb2xlLCBmYXR0by5cbiIKKworIzogZGlmZmNvcmUtb3JkZXIuYzoyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcmRlcmZpbGUgJyVzJyIKK21zZ3N0ciAibGV0dHVyYSBkZWxsJ29yZGVyZmlsZSAnJXMnIG5vbiByaXVzY2l0YSIKKworIzogZGlmZmNvcmUtcmVuYW1lLmM6NTQzCittc2dpZCAiUGVyZm9ybWluZyBpbmV4YWN0IHJlbmFtZSBkZXRlY3Rpb24iCittc2dzdHIgIlJpbGV2YW1lbnRvIHJpZGVub21pbmF6aW9uZSBub24gZXNhdHRhIGluIGNvcnNvIgorCisjOiBkaWZmLW5vLWluZGV4LmM6MjM4Cittc2dpZCAiZ2l0IGRpZmYgLS1uby1pbmRleCBbPG9wdGlvbnM+XSA8cGF0aD4gPHBhdGg+IgorbXNnc3RyICJnaXQgZGlmZiAtLW5vLWluZGV4IFs8b3B6aW9uaT5dIDxwZXJjb3Jzbz4gPHBlcmNvcnNvPiIKKworIzogZGlmZi1uby1pbmRleC5jOjI2MworbXNnaWQgIiIKKyJOb3QgYSBnaXQgcmVwb3NpdG9yeS4gVXNlIC0tbm8taW5kZXggdG8gY29tcGFyZSB0d28gcGF0aHMgb3V0c2lkZSBhIHdvcmtpbmcgIgorInRyZWUiCittc2dzdHIgIiIKKyJOb24gw6ggdW4gcmVwb3NpdG9yeSBHaXQuIFVzYSAtLW5vLWluZGV4IHBlciBjb25mcm9udGFyZSBkdWUgcGVyY29yc2kgYWwgZGkgIgorImZ1b3JpIGRpIHVuIGFsYmVybyBkaSBsYXZvcm8iCisKKyM6IGRpZmYuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBGYWlsZWQgdG8gcGFyc2UgZGlyc3RhdCBjdXQtb2ZmIHBlcmNlbnRhZ2UgJyVzJ1xuIgorbXNnc3RyICIiCisiICBBbmFsaXNpIGRlbGxhIHBlcmNlbnR1YWxlIGRpIGN1dG9mZiBzdGF0aXN0aWNoZSBkaXJlY3RvcnkgJyVzJyBub24gIgorInJpdXNjaXRhXG4iCisKKyM6IGRpZmYuYzoxNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBVbmtub3duIGRpcnN0YXQgcGFyYW1ldGVyICclcydcbiIKK21zZ3N0ciAiICBQYXJhbWV0cm8gc3RhdGlzdGljaGUgZGlyZWN0b3J5ICclcycgc2Nvbm9zY2l1dG9cbiIKKworIzogZGlmZi5jOjI5NgorbXNnaWQgIiIKKyJjb2xvciBtb3ZlZCBzZXR0aW5nIG11c3QgYmUgb25lIG9mICdubycsICdkZWZhdWx0JywgJ2Jsb2NrcycsICd6ZWJyYScsICIKKyInZGltbWVkLXplYnJhJywgJ3BsYWluJyIKK21zZ3N0ciAiIgorImwnaW1wb3N0YXppb25lIGNvbG9yZSBwZXIgZmlsZSBzcG9zdGF0aSBkZXZlIGVzc2VyZSAnbm8nLCAnZGVmYXVsdCcsICIKKyInYmxvY2tzJywgJ3plYnJhJywgJ2RpbW1lZC16ZWJyYScsICdwbGFpbiciCisKKyM6IGRpZmYuYzozMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVua25vd24gY29sb3ItbW92ZWQtd3MgbW9kZSAnJXMnLCBwb3NzaWJsZSB2YWx1ZXMgYXJlICdpZ25vcmUtc3BhY2UtY2hhbmdlJywgIgorIidpZ25vcmUtc3BhY2UtYXQtZW9sJywgJ2lnbm9yZS1hbGwtc3BhY2UnLCAnYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlJyIKK21zZ3N0ciAiIgorIm1vZGFsaXTDoCBjb2xvci1tb3ZlZC13cyAnJXMnIHNjb25vc2NpdXRhLCBpIHZhbG9yaSBwb3NzaWJpbGkgc29ubyAnaWdub3JlLSIKKyJzcGFjZS1jaGFuZ2UnLCAnaWdub3JlLXNwYWNlLWF0LWVvbCcsICdpZ25vcmUtYWxsLXNwYWNlJywgJ2FsbG93LWluZGVudGF0aW9uLSIKKyJjaGFuZ2UnIgorCisjOiBkaWZmLmM6MzMyCittc2dpZCAiIgorImNvbG9yLW1vdmVkLXdzOiBhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UgY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgIgorIndoaXRlc3BhY2UgbW9kZXMiCittc2dzdHIgIiIKKyJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIG5vbiBwdcOyIGVzc2VyZSBjb21iaW5hdGEgY29uIGFsdHJlICIKKyJtb2RhbGl0w6Agc3BhemkgYmlhbmNoaSIKKworIzogZGlmZi5jOjQwNQorIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHZhbHVlIGZvciAnZGlmZi5zdWJtb2R1bGUnIGNvbmZpZyB2YXJpYWJsZTogJyVzJyIKK21zZ3N0ciAiIgorIlZhbG9yZSBzY29ub3NjaXV0byBwZXIgbGEgdmFyaWFiaWxlIGRpIGNvbmZpZ3VyYXppb25lICdkaWZmLnN1Ym1vZHVsZSc6ICclcyciCisKKyM6IGRpZmYuYzo0NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkZvdW5kIGVycm9ycyBpbiAnZGlmZi5kaXJzdGF0JyBjb25maWcgdmFyaWFibGU6XG4iCkBAIC0yMjAsMzIgKzMxOTksMzYgQEAKICJUcm92YXRpIGVycm9yaSBuZWxsYSB2YXJpYWJpbGUgZGkgY29uZmlndXJhemlvbmUgJ2RpZmYuZGlyc3RhdCc6XG4iCiAiJXMiCiAKLSM6IGRpZmYuYzoxNDAwCi1tc2dpZCAiIDAgZmlsZXMgY2hhbmdlZFxuIgotbXNnc3RyICIgMCBmaWxlIG1vZGlmaWNhdGlcbiIKLQotIzogZGlmZi5jOjE0MDQKKyM6IGRpZmYuYzo0MjAyCiAjLCBjLWZvcm1hdAotbXNnaWQgIiAlZCBmaWxlIGNoYW5nZWQiCi1tc2dpZF9wbHVyYWwgIiAlZCBmaWxlcyBjaGFuZ2VkIgotbXNnc3RyWzBdICIgJWQgZmlsZSBtb2RpZmljYXRvIgotbXNnc3RyWzFdICIgJWQgZmlsZSBtb2RpZmljYXRpIgorbXNnaWQgImV4dGVybmFsIGRpZmYgZGllZCwgc3RvcHBpbmcgYXQgJXMiCittc2dzdHIgInByb2Nlc3NvIGVzdGVybm8gZGlmZiBtb3J0bywgbWkgZmVybW8gYSAlcyIKIAotIzogZGlmZi5jOjE0MjEKKyM6IGRpZmYuYzo0NTQ3Cittc2dpZCAiLS1uYW1lLW9ubHksIC0tbmFtZS1zdGF0dXMsIC0tY2hlY2sgYW5kIC1zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIiIKKyJsZSBvcHppb25pIC0tbmFtZS1vbmx5LCAtLW5hbWUtc3RhdHVzLCAtLWNoZWNrIGUgLXMgc29ubyBtdXR1YW1lbnRlIGVzY2x1c2l2ZSIKKworIzogZGlmZi5jOjQ1NTAKK21zZ2lkICItRywgLVMgYW5kIC0tZmluZC1vYmplY3QgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAibGUgb3B6aW9uaSAtRywgLVMgZSAtLWZpbmQtb2JqZWN0IHNvbm8gbXV0dWFtZW50ZSBlc2NsdXNpdmUiCisKKyM6IGRpZmYuYzo0NjI4Cittc2dpZCAiLS1mb2xsb3cgcmVxdWlyZXMgZXhhY3RseSBvbmUgcGF0aHNwZWMiCittc2dzdHIgIi0tZm9sbG93IHJpY2hpZWRlIGVzYXR0YW1lbnRlIHVubyBzcGVjaWZpY2F0b3JlIHBlcmNvcnNvIgorCisjOiBkaWZmLmM6NDY3NgogIywgYy1mb3JtYXQKLW1zZ2lkICIsICVkIGluc2VydGlvbigrKSIKLW1zZ2lkX3BsdXJhbCAiLCAlZCBpbnNlcnRpb25zKCspIgotbXNnc3RyWzBdICIsICVkIGluc2VyemlvbmUoKykiCi1tc2dzdHJbMV0gIiwgJWQgaW5zZXJ6aW9uaSgrKSIKK21zZ2lkICJpbnZhbGlkIC0tc3RhdCB2YWx1ZTogJXMiCittc2dzdHIgInZhbG9yZSBub24gdmFsaWRvIHBlciAtLXN0YXQ6ICVzIgogCi0jOiBkaWZmLmM6MTQzMgorIzogZGlmZi5jOjQ2ODEgZGlmZi5jOjQ2ODYgZGlmZi5jOjQ2OTEgZGlmZi5jOjQ2OTYgZGlmZi5jOjUyMDkKKyM6IHBhcnNlLW9wdGlvbnMuYzoxOTcgcGFyc2Utb3B0aW9ucy5jOjIwMQogIywgYy1mb3JtYXQKLW1zZ2lkICIsICVkIGRlbGV0aW9uKC0pIgotbXNnaWRfcGx1cmFsICIsICVkIGRlbGV0aW9ucygtKSIKLW1zZ3N0clswXSAiLiAlZCByaW1vemlvbmUoLSkiCi1tc2dzdHJbMV0gIiwgJWQgcmltb3ppb25pKC0pIgorbXNnaWQgIiVzIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCittc2dzdHIgIiVzIHJpY2hpZWRlIHVuIHZhbG9yZSBudW1lcmljbyIKIAotIzogZGlmZi5jOjM0NzgKKyM6IGRpZmYuYzo0NzEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJGYWlsZWQgdG8gcGFyc2UgLS1kaXJzdGF0Ly1YIG9wdGlvbiBwYXJhbWV0ZXI6XG4iCkBAIC0yNTQsNDMgKzMyMzcsOTc3IEBACiAiQW5hbGlzaSBkZWwgcGFyYW1ldHJvIGRlbGwnb3B6aW9uZSAtLWRpcnN0YXQvLVggbm9uIHJpdXNjaXRhOlxuIgogIiVzIgogCi0jOiBncGctaW50ZXJmYWNlLmM6NTkKLW1zZ2lkICJjb3VsZCBub3QgcnVuIGdwZy4iCi1tc2dzdHIgIm5vbiDDqCBzdGF0byBwb3NzaWJpbGUgZXNlZ3VpcmUgZ3BnLiIKKyM6IGRpZmYuYzo0Nzk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY2hhbmdlIGNsYXNzICclYycgaW4gLS1kaWZmLWZpbHRlcj0lcyIKK21zZ3N0ciAiY2xhc3NlIG1vZGlmaWNhICclYycgc2Nvbm9zY2l1dGEgaW4gLS1kaWZmLWZpbHRlcj0lcyIKIAotIzogZ3BnLWludGVyZmFjZS5jOjcxCi1tc2dpZCAiZ3BnIGRpZCBub3QgYWNjZXB0IHRoZSBkYXRhIgotbXNnc3RyICJncGcgbm9uIGhhIGFjY2V0dGF0byBpIGRhdGkiCisjOiBkaWZmLmM6NDgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHZhbHVlIGFmdGVyIHdzLWVycm9yLWhpZ2hsaWdodD0lLipzIgorbXNnc3RyICJ2YWxvcmUgc2Nvbm9zY2l1dG8gZG9wbyB3cy1lcnJvci1oaWdobGlnaHQ9JS4qcyIKIAotIzogZ3BnLWludGVyZmFjZS5jOjgyCisjOiBkaWZmLmM6NDgzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaXNvbHZlcmUgJyVzJyIKKworIzogZGlmZi5jOjQ4ODYgZGlmZi5jOjQ4OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyA8bj4vPG0+IGZvcm0iCittc2dzdHIgIiVzIHJpY2hpZWRlIGlsIGZvcm1hdG8gPG4+LzxtPiIKKworIzogZGlmZi5jOjQ5MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIGNoYXJhY3RlciwgZ290ICclcyciCittc2dzdHIgIiVzIHJpY2hpZWRlIHVuIGNhcmF0dGVyZSwgcmljZXZ1dG8gJyVzJyIKKworIzogZGlmZi5jOjQ5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIC0tY29sb3ItbW92ZWQgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJhcmdvbWVudG8gLS1jb2xvci1tb3ZlZCBlcnJhdG86ICVzIgorCisjOiBkaWZmLmM6NDk0NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG1vZGUgJyVzJyBpbiAtLWNvbG9yLW1vdmVkLXdzIgorbXNnc3RyICJtb2RvIG5vbiB2YWxpZG8gJyVzJyBpbiAtLWNvbG9yLW1vdmVkLXdzIgorCisjOiBkaWZmLmM6NDk4NAorbXNnaWQgIiIKKyJvcHRpb24gZGlmZi1hbGdvcml0aG0gYWNjZXB0cyBcIm15ZXJzXCIsIFwibWluaW1hbFwiLCBcInBhdGllbmNlXCIgYW5kICIKKyJcImhpc3RvZ3JhbVwiIgorbXNnc3RyICIiCisibCdvcHppb25lIGRpZmYtYWxnb3JpdGhtIGFjY2V0dGEgaSB2YWxvcmkgXCJteWVyc1wiLCBcIm1pbmltYWxcIiwgXCJwYXRpZW5jZSIKKyJcIiBlIFwiaGlzdG9ncmFtXCIiCisKKyM6IGRpZmYuYzo1MDIwIGRpZmYuYzo1MDQwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgYXJndW1lbnQgdG8gJXMiCittc2dzdHIgImFyZ29tZW50byBub24gdmFsaWRvIHBlciAlcyIKKworIzogZGlmZi5jOjUxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIC0tc3VibW9kdWxlIG9wdGlvbiBwYXJhbWV0ZXI6ICclcyciCittc2dzdHIgImFuYWxpc2kgZGVsIHBhcmFtZXRybyBkZWxsJ29wemlvbmUgLS1zdWJtb2R1bGUgbm9uIHJpdXNjaXRhOiAnJXMnIgorCisjOiBkaWZmLmM6NTIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS13b3JkLWRpZmYgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJhcmdvbWVudG8gLS13b3JkLWRpZmYgZXJyYXRvOiAlcyIKKworIzogZGlmZi5jOjUyNTcKK21zZ2lkICJEaWZmIG91dHB1dCBmb3JtYXQgb3B0aW9ucyIKK21zZ3N0ciAiT3B6aW9uaSBmb3JtYXRvIG91dHB1dCBkaWZmIgorCisjOiBkaWZmLmM6NTI1OSBkaWZmLmM6NTI2NQorbXNnaWQgImdlbmVyYXRlIHBhdGNoIgorbXNnc3RyICJnZW5lcmEgcGF0Y2giCisKKyM6IGRpZmYuYzo1MjYyIGJ1aWx0aW4vbG9nLmM6MTczCittc2dpZCAic3VwcHJlc3MgZGlmZiBvdXRwdXQiCittc2dzdHIgIm5vbiB2aXN1YWxpenphcmUgbCdvdXRwdXQgZGVsIGRpZmYiCisKKyM6IGRpZmYuYzo1MjY3IGRpZmYuYzo1MzgxIGRpZmYuYzo1Mzg4Cittc2dpZCAiPG4+IgorbXNnc3RyICI8bj4iCisKKyM6IGRpZmYuYzo1MjY4IGRpZmYuYzo1MjcxCittc2dpZCAiZ2VuZXJhdGUgZGlmZnMgd2l0aCA8bj4gbGluZXMgY29udGV4dCIKK21zZ3N0ciAiZ2VuZXJhIGRpZmYgY29uIDxuPiByaWdoZSBkaSBjb250ZXN0byIKKworIzogZGlmZi5jOjUyNzMKK21zZ2lkICJnZW5lcmF0ZSB0aGUgZGlmZiBpbiByYXcgZm9ybWF0IgorbXNnc3RyICJnZW5lcmEgaWwgZGlmZiBpbiBmb3JtYXRvIGdyZXp6byIKKworIzogZGlmZi5jOjUyNzYKK21zZ2lkICJzeW5vbnltIGZvciAnLXAgLS1yYXcnIgorbXNnc3RyICJzaW5vbmltbyBkaSAnLXAgLS1yYXcnIgorCisjOiBkaWZmLmM6NTI4MAorbXNnaWQgInN5bm9ueW0gZm9yICctcCAtLXN0YXQnIgorbXNnc3RyICJzaW5vbmltbyBkaSAnLXAgLS1zdGF0JyIKKworIzogZGlmZi5jOjUyODQKK21zZ2lkICJtYWNoaW5lIGZyaWVuZGx5IC0tc3RhdCIKK21zZ3N0ciAiLS1zdGF0IGxlZ2dpYmlsZSBkYSB1bmEgbWFjY2hpbmEiCisKKyM6IGRpZmYuYzo1Mjg3Cittc2dpZCAib3V0cHV0IG9ubHkgdGhlIGxhc3QgbGluZSBvZiAtLXN0YXQiCittc2dzdHIgImVtZXR0aSBpbiBvdXRwdXQgc29sbyBsJ3VsdGltYSByaWdhIGRpIC0tc3RhdCIKKworIzogZGlmZi5jOjUyODkgZGlmZi5jOjUyOTcKK21zZ2lkICI8cGFyYW0xLHBhcmFtMj4uLi4iCittc2dzdHIgIjxwYXJhbWV0cm8xLHBhcmFtZXRybzI+Li4uIgorCisjOiBkaWZmLmM6NTI5MAorbXNnaWQgIiIKKyJvdXRwdXQgdGhlIGRpc3RyaWJ1dGlvbiBvZiByZWxhdGl2ZSBhbW91bnQgb2YgY2hhbmdlcyBmb3IgZWFjaCBzdWItZGlyZWN0b3J5IgorbXNnc3RyICIiCisiZW1ldHRpIGluIG91dHB1dCBsYSBkaXN0cmlidXppb25lIGRlbCBudW1lcm8gZGkgbW9kaWZpY2hlIHJlbGF0aXZvIGEgb2duaSAiCisic290dG9kaXJlY3RvcnkiCisKKyM6IGRpZmYuYzo1Mjk0Cittc2dpZCAic3lub255bSBmb3IgLS1kaXJzdGF0PWN1bXVsYXRpdmUiCittc2dzdHIgInNpbm9uaW1vIGRpIC0tZGlyc3RhdD1jdW11bGF0aXZlIgorCisjOiBkaWZmLmM6NTI5OAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1maWxlcyxwYXJhbTEscGFyYW0yLi4uIgorbXNnc3RyICJzaW5vbmltbyBkaSAtLWRpcnN0YXQ9ZmlsZXMscGFyYW1ldHJvMSxwYXJhbWV0cm8yLi4uIgorCisjOiBkaWZmLmM6NTMwMgorbXNnaWQgIndhcm4gaWYgY2hhbmdlcyBpbnRyb2R1Y2UgY29uZmxpY3QgbWFya2VycyBvciB3aGl0ZXNwYWNlIGVycm9ycyIKK21zZ3N0ciAiIgorImF2dmlzYSBzZSBsZSBtb2RpZmljaGUgaW50cm9kdWNvbm8gbWFyY2F0b3JpIGNvbmZsaXR0byBvIGVycm9yaSBzcGF6aSBiaWFuY2hpIgorCisjOiBkaWZmLmM6NTMwNQorbXNnaWQgImNvbmRlbnNlZCBzdW1tYXJ5IHN1Y2ggYXMgY3JlYXRpb25zLCByZW5hbWVzIGFuZCBtb2RlIGNoYW5nZXMiCittc2dzdHIgIiIKKyJyaWFzc3VudG8gY29uY2lzbyAoYWQgZXMuIGVsZW1lbnRpIGNyZWF0aSwgcmlkZW5vbWluYXRpIGUgbW9kaWZpY2hlIG1vZGkpIgorCisjOiBkaWZmLmM6NTMwOAorbXNnaWQgInNob3cgb25seSBuYW1lcyBvZiBjaGFuZ2VkIGZpbGVzIgorbXNnc3RyICJ2aXN1YWxpenphIHNvbG8gaSBub21pIGRlaSBmaWxlIG1vZGlmaWNhdGkiCisKKyM6IGRpZmYuYzo1MzExCittc2dpZCAic2hvdyBvbmx5IG5hbWVzIGFuZCBzdGF0dXMgb2YgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAidmlzdWFsaXp6YSBzb2xvIGkgbm9taSBlIGxvIHN0YXRvIGRlaSBmaWxlIG1vZGlmaWNhdGkiCisKKyM6IGRpZmYuYzo1MzEzCittc2dpZCAiPHdpZHRoPlssPG5hbWUtd2lkdGg+Wyw8Y291bnQ+XV0iCittc2dzdHIgIjxhbXBpZXp6YT5bLDxhbXBpZXp6YSBub21lPlssPG51bWVybz5dXSIKKworIzogZGlmZi5jOjUzMTQKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCIKK21zZ3N0ciAiZ2VuZXJhIGRpZmZzdGF0IgorCisjOiBkaWZmLmM6NTMxNiBkaWZmLmM6NTMxOSBkaWZmLmM6NTMyMgorbXNnaWQgIjx3aWR0aD4iCittc2dzdHIgIjxhbXBpZXp6YT4iCisKKyM6IGRpZmYuYzo1MzE3Cittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBhIGdpdmVuIHdpZHRoIgorbXNnc3RyICJnZW5lcmEgaWwgZGlmZnN0YXQgY29uIHVuJ2FtcGllenphIHNwZWNpZmljYXRhIgorCisjOiBkaWZmLmM6NTMyMAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBuYW1lIHdpZHRoIgorbXNnc3RyICJnZW5lcmEgaWwgZGlmZnN0YXQgY29uIHVuJ2FtcGllenphIG5vbWkgc3BlY2lmaWNhdGEiCisKKyM6IGRpZmYuYzo1MzIzCittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBhIGdpdmVuIGdyYXBoIHdpZHRoIgorbXNnc3RyICJnZW5lcmEgaWwgZGlmZnN0YXQgY29uIHVuJ2FtcGllenphIGdyYWZvIHNwZWNpZmljYXRhIgorCisjOiBkaWZmLmM6NTMyNQorbXNnaWQgIjxjb3VudD4iCittc2dzdHIgIjxudW1lcm8+IgorCisjOiBkaWZmLmM6NTMyNgorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggbGltaXRlZCBsaW5lcyIKK21zZ3N0ciAiZ2VuZXJhIGlsIGRpZmZzdGF0IGNvbiByaWdoZSBsaW1pdGF0ZSIKKworIzogZGlmZi5jOjUzMjkKK21zZ2lkICJnZW5lcmF0ZSBjb21wYWN0IHN1bW1hcnkgaW4gZGlmZnN0YXQiCittc2dzdHIgImdlbmVyYSByaWFzc3VudG8gY29uY2lzbyBuZWwgZGlmZnN0YXQiCisKKyM6IGRpZmYuYzo1MzMyCittc2dpZCAib3V0cHV0IGEgYmluYXJ5IGRpZmYgdGhhdCBjYW4gYmUgYXBwbGllZCIKK21zZ3N0ciAic3RhbXBhIGluIG91dHB1dCB1biBkaWZmIGJpbmFyaW8gY2hlIHB1w7IgZXNzZXJlIGFwcGxpY2F0byIKKworIzogZGlmZi5jOjUzMzUKK21zZ2lkICJzaG93IGZ1bGwgcHJlLSBhbmQgcG9zdC1pbWFnZSBvYmplY3QgbmFtZXMgb24gdGhlIFwiaW5kZXhcIiBsaW5lcyIKK21zZ3N0ciAidmlzdWFsaXp6YSBpIG5vbWkgb2dnZXR0byBwcmUgZSBwb3N0IGltbWFnaW5lIG5lbGxlIHJpZ2hlIFwiaW5kaWNlXCIiCisKKyM6IGRpZmYuYzo1MzM3Cittc2dpZCAic2hvdyBjb2xvcmVkIGRpZmYiCittc2dzdHIgInZpc3VhbGl6emEgZGlmZiBjb2xvcmF0byIKKworIzogZGlmZi5jOjUzMzgKK21zZ2lkICI8a2luZD4iCittc2dzdHIgIjx0aXBvPiIKKworIzogZGlmZi5jOjUzMzkKK21zZ2lkICIiCisiaGlnaGxpZ2h0IHdoaXRlc3BhY2UgZXJyb3JzIGluIHRoZSAnY29udGV4dCcsICdvbGQnIG9yICduZXcnIGxpbmVzIGluIHRoZSAiCisiZGlmZiIKK21zZ3N0ciAiIgorImV2aWRlbnppYSBnbGkgZXJyb3JpIGRpIHNwYXppIGJpYW5jaGkgbmVsbGUgcmlnaGUgJ2NvbnRlc3RvJywgJ3ZlY2NoaWUnIG8gIgorIidudW92ZScgbmVsIGRpZmYiCisKKyM6IGRpZmYuYzo1MzQyCittc2dpZCAiIgorImRvIG5vdCBtdW5nZSBwYXRobmFtZXMgYW5kIHVzZSBOVUxzIGFzIG91dHB1dCBmaWVsZCB0ZXJtaW5hdG9ycyBpbiAtLXJhdyBvciAiCisiLS1udW1zdGF0IgorbXNnc3RyICIiCisibm9uIHJpbXVvdmVyZSBpIG5vbWkgcGVyY29yc28gZSB1c2FyZSBjYXJhdHRlcmkgTlVMIGNvbWUgdGVybWluYXRvcmkgY2FtcG8gIgorImluIC0tcmF3IG8gLS1udW1zdGF0IgorCisjOiBkaWZmLmM6NTM0NSBkaWZmLmM6NTM0OCBkaWZmLmM6NTM1MSBkaWZmLmM6NTQ1NworbXNnaWQgIjxwcmVmaXg+IgorbXNnc3RyICI8cHJlZmlzc28+IgorCisjOiBkaWZmLmM6NTM0NgorbXNnaWQgInNob3cgdGhlIGdpdmVuIHNvdXJjZSBwcmVmaXggaW5zdGVhZCBvZiBcImEvXCIiCittc2dzdHIgInZpc3VhbGl6emEgaWwgcHJlZmlzc28gc29yZ2VudGUgc3BlY2lmaWNhdG8gaW52ZWNlIGRpIFwiYS9cIiIKKworIzogZGlmZi5jOjUzNDkKK21zZ2lkICJzaG93IHRoZSBnaXZlbiBkZXN0aW5hdGlvbiBwcmVmaXggaW5zdGVhZCBvZiBcImIvXCIiCittc2dzdHIgInZpc3VhbGl6emEgaWwgcHJlZmlzc28gZGVzdGluYXppb25lIHNwZWNpZmljYXRvIGludmVjZSBkaSBcImIvXCIiCisKKyM6IGRpZmYuYzo1MzUyCittc2dpZCAicHJlcGVuZCBhbiBhZGRpdGlvbmFsIHByZWZpeCB0byBldmVyeSBsaW5lIG9mIG91dHB1dCIKK21zZ3N0ciAiYW50ZXBvbmkgdW4gcHJlZmlzc28gYWdnaXVudGl2byBhZCBvZ25pIHJpZ2EgZGVsbCdvdXRwdXQiCisKKyM6IGRpZmYuYzo1MzU1Cittc2dpZCAiZG8gbm90IHNob3cgYW55IHNvdXJjZSBvciBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIm5vbiB2aXN1YWxpenphcmUgYWxjdW4gcHJlZmlzc28gc29yZ2VudGUgbyBkZXN0aW5hemlvbmUiCisKKyM6IGRpZmYuYzo1MzU4Cittc2dpZCAic2hvdyBjb250ZXh0IGJldHdlZW4gZGlmZiBodW5rcyB1cCB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiBsaW5lcyIKK21zZ3N0ciAiIgorInZpc3VhbGl6emEgaWwgY29udGVzdG8gdHJhIGdsaSBodW5rIGRlbCBkaWZmIGZpbm8gYWwgbnVtZXJvIGRpIHJpZ2hlICIKKyJzcGVjaWZpY2F0byIKKworIzogZGlmZi5jOjUzNjIgZGlmZi5jOjUzNjcgZGlmZi5jOjUzNzIKK21zZ2lkICI8Y2hhcj4iCittc2dzdHIgIjxjYXJhdHRlcmU+IgorCisjOiBkaWZmLmM6NTM2MworbXNnaWQgInNwZWNpZnkgdGhlIGNoYXJhY3RlciB0byBpbmRpY2F0ZSBhIG5ldyBsaW5lIGluc3RlYWQgb2YgJysnIgorbXNnc3RyICJzcGVjaWZpY2EgaWwgY2FyYXR0ZXJlIGNoZSBpbmRpY2EgdW5hIG51b3ZhIHJpZ2EgYWwgcG9zdG8gZGkgJysnIgorCisjOiBkaWZmLmM6NTM2OAorbXNnaWQgInNwZWNpZnkgdGhlIGNoYXJhY3RlciB0byBpbmRpY2F0ZSBhbiBvbGQgbGluZSBpbnN0ZWFkIG9mICctJyIKK21zZ3N0ciAic3BlY2lmaWNhIGlsIGNhcmF0dGVyZSBjaGUgaW5kaWNhIHVuYSB2ZWNjaGlhIHJpZ2EgYWwgcG9zdG8gZGkgJy0nIgorCisjOiBkaWZmLmM6NTM3MworbXNnaWQgInNwZWNpZnkgdGhlIGNoYXJhY3RlciB0byBpbmRpY2F0ZSBhIGNvbnRleHQgaW5zdGVhZCBvZiAnICciCittc2dzdHIgInNwZWNpZmljYSBpbCBjYXJhdHRlcmUgY2hlIGluZGljYSB1biBjb250ZXN0byBhbCBwb3N0byBkaSAnICciCisKKyM6IGRpZmYuYzo1Mzc2Cittc2dpZCAiRGlmZiByZW5hbWUgb3B0aW9ucyIKK21zZ3N0ciAiT3B6aW9uaSByaW5vbWluYXppb25lIGRpZmYiCisKKyM6IGRpZmYuYzo1Mzc3Cittc2dpZCAiPG4+Wy88bT5dIgorbXNnc3RyICI8bj5bLzxtPl0iCisKKyM6IGRpZmYuYzo1Mzc4Cittc2dpZCAiYnJlYWsgY29tcGxldGUgcmV3cml0ZSBjaGFuZ2VzIGludG8gcGFpcnMgb2YgZGVsZXRlIGFuZCBjcmVhdGUiCittc2dzdHIgIiIKKyJzcGV6emEgbW9kaWZpY2hlIGRpIHJpc2NyaXR0dXJhIGNvbXBsZXRhIGluIGNvcHBpZSBlbGltaW5hemlvbmUvY3JlYXppb25lIgorCisjOiBkaWZmLmM6NTM4MgorbXNnaWQgImRldGVjdCByZW5hbWVzIgorbXNnc3RyICJyaWxldmEgbGUgcmlkZW5vbWluYXppb25pIgorCisjOiBkaWZmLmM6NTM4NgorbXNnaWQgIm9taXQgdGhlIHByZWltYWdlIGZvciBkZWxldGVzIgorbXNnc3RyICJvbWV0dGkgbGEgcHJlaW1tYWdpbmUgcGVyIGxlIGVsaW1pbmF6aW9uaSIKKworIzogZGlmZi5jOjUzODkKK21zZ2lkICJkZXRlY3QgY29waWVzIgorbXNnc3RyICJyaWxldmEgbGUgY29waWUiCisKKyM6IGRpZmYuYzo1MzkzCittc2dpZCAidXNlIHVubW9kaWZpZWQgZmlsZXMgYXMgc291cmNlIHRvIGZpbmQgY29waWVzIgorbXNnc3RyICJ1c2EgZmlsZSBub24gbW9kaWZpY2F0aSBjb21lIHNvcmdlbnRlIHBlciB0cm92YXJlIGNvcGllIgorCisjOiBkaWZmLmM6NTM5NQorbXNnaWQgImRpc2FibGUgcmVuYW1lIGRldGVjdGlvbiIKK21zZ3N0ciAiZGlzYWJpbGl0YSByaWxldmFtZW50byByaWRlbm9taW5hemlvbmUiCisKKyM6IGRpZmYuYzo1Mzk4Cittc2dpZCAidXNlIGVtcHR5IGJsb2JzIGFzIHJlbmFtZSBzb3VyY2UiCittc2dzdHIgInVzYSBibG9iIHZ1b3RpIGNvbWUgc29yZ2VudGUgcmlkZW5vbWluYXppb25lIgorCisjOiBkaWZmLmM6NTQwMAorbXNnaWQgImNvbnRpbnVlIGxpc3RpbmcgdGhlIGhpc3Rvcnkgb2YgYSBmaWxlIGJleW9uZCByZW5hbWVzIgorbXNnc3RyICIiCisiY29udGludWEgYSBlbGVuY2FyZSBsYSBjcm9ub2xvZ2lhIGRpIHVuIGZpbGUgYWwgZGkgbMOgIGRlbGxlIHJpZGVub21pbmF6aW9uaSIKKworIzogZGlmZi5jOjU0MDMKK21zZ2lkICIiCisicHJldmVudCByZW5hbWUvY29weSBkZXRlY3Rpb24gaWYgdGhlIG51bWJlciBvZiByZW5hbWUvY29weSB0YXJnZXRzIGV4Y2VlZHMgIgorImdpdmVuIGxpbWl0IgorbXNnc3RyICIiCisiaW1wZWRpc2NpIGlsIHJpbGV2YW1lbnRvIHJpZGVub21pbmF6aW9uZS9jb3BpYSBzZSBpbCBudW1lcm8gZGVsbGUgIgorImRlc3RpbmF6aW9uaSByaWRlbm9taW5hemlvbmUvY29waWEgZWNjZWRlIGlsIGxpbWl0ZSBzcGVjaWZpY2F0byIKKworIzogZGlmZi5jOjU0MDUKK21zZ2lkICJEaWZmIGFsZ29yaXRobSBvcHRpb25zIgorbXNnc3RyICJPcHppb25pIGFsZ29yaXRtbyBkaWZmIgorCisjOiBkaWZmLmM6NTQwNworbXNnaWQgInByb2R1Y2UgdGhlIHNtYWxsZXN0IHBvc3NpYmxlIGRpZmYiCittc2dzdHIgInByb2R1Y2kgaWwgZGlmZiBwacO5IHBpY2NvbG8gcG9zc2liaWxlIgorCisjOiBkaWZmLmM6NTQxMAorbXNnaWQgImlnbm9yZSB3aGl0ZXNwYWNlIHdoZW4gY29tcGFyaW5nIGxpbmVzIgorbXNnc3RyICJpZ25vcmEgZ2xpIHNwYXppIGJpYW5jaGkgZHVyYW50ZSBpbCBjb25mcm9udG8gZGVsbGUgcmlnaGUiCisKKyM6IGRpZmYuYzo1NDEzCittc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gYW1vdW50IG9mIHdoaXRlc3BhY2UiCittc2dzdHIgImlnbm9yYSBsZSBtb2RpZmljaGUgYWwgbnVtZXJvIGRlZ2xpIHNwYXppIGJpYW5jaGkiCisKKyM6IGRpZmYuYzo1NDE2Cittc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSBhdCBFT0wiCittc2dzdHIgImlnbm9yYSBtb2RpZmljaGUgYWdsaSBzcGF6aSBiaWFuY2hpIGEgZmluZSByaWdhIgorCisjOiBkaWZmLmM6NTQxOQorbXNnaWQgImlnbm9yZSBjYXJyaWVyLXJldHVybiBhdCB0aGUgZW5kIG9mIGxpbmUiCittc2dzdHIgImlnbm9yYSBjYXJhdHRlcmUgcml0b3JubyBhIGNhcG8gYSBmaW5lIHJpZ2EiCisKKyM6IGRpZmYuYzo1NDIyCittc2dpZCAiaWdub3JlIGNoYW5nZXMgd2hvc2UgbGluZXMgYXJlIGFsbCBibGFuayIKK21zZ3N0ciAiaWdub3JhIG1vZGlmaWNoZSBjaGUgcmlndWFyZGFubyBzb2xvIHJpZ2hlIHZ1b3RlIgorCisjOiBkaWZmLmM6NTQyNQorbXNnaWQgImhldXJpc3RpYyB0byBzaGlmdCBkaWZmIGh1bmsgYm91bmRhcmllcyBmb3IgZWFzeSByZWFkaW5nIgorbXNnc3RyICIiCisiZXVyaXN0aWNhIHBlciBzcG9zdGFyZSBpIGxpbWl0aSBkZWdsaSBodW5rIG5lbCBkaWZmIHBlciB1bmEgbGV0dHVyYSBhZ2V2b2xlIgorCisjOiBkaWZmLmM6NTQyOAorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwicGF0aWVuY2UgZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAiZ2VuZXJhIGlsIGRpZmYgdXNhbmRvIGwnYWxnb3JpdG1vIFwicGF0aWVuY2UgZGlmZlwiIgorCisjOiBkaWZmLmM6NTQzMgorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwiaGlzdG9ncmFtIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgImdlbmVyYSBpbCBkaWZmIHVzYW5kbyBsJ2FsZ29yaXRtbyBcImhpc3RvZ3JhbSBkaWZmXCIiCisKKyM6IGRpZmYuYzo1NDM0Cittc2dpZCAiPGFsZ29yaXRobT4iCittc2dzdHIgIjxhbGdvcml0bW8+IgorCisjOiBkaWZmLmM6NTQzNQorbXNnaWQgImNob29zZSBhIGRpZmYgYWxnb3JpdGhtIgorbXNnc3RyICJzZWxlemlvbmEgdW4gYWxnb3JpdG1vIGRpZmYiCisKKyM6IGRpZmYuYzo1NDM3Cittc2dpZCAiPHRleHQ+IgorbXNnc3RyICI8dGVzdG8+IgorCisjOiBkaWZmLmM6NTQzOAorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwiYW5jaG9yZWQgZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAiZ2VuZXJhIGlsIGRpZmYgdXNhbmRvIGwnYWxnb3JpdG1vIFwiYW5jaG9yZWQgZGlmZlwiIgorCisjOiBkaWZmLmM6NTQ0MCBkaWZmLmM6NTQ0OSBkaWZmLmM6NTQ1MgorbXNnaWQgIjxtb2RlPiIKK21zZ3N0ciAiPG1vZGFsaXTDoD4iCisKKyM6IGRpZmYuYzo1NDQxCittc2dpZCAic2hvdyB3b3JkIGRpZmYsIHVzaW5nIDxtb2RlPiB0byBkZWxpbWl0IGNoYW5nZWQgd29yZHMiCittc2dzdHIgIiIKKyJ2aXN1YWxpenphIGlsIGRpZmYgcGFyb2xhIHBlciBwYXJvbGEgdXNhbmRvIDxtb2RhbGl0w6A+IHBlciBkZWxpbWl0YXJlIGxlICIKKyJwYXJvbGUgbW9kaWZpY2F0ZSIKKworIzogZGlmZi5jOjU0NDMgZGlmZi5jOjU0NDYgZGlmZi5jOjU0OTEKK21zZ2lkICI8cmVnZXg+IgorbXNnc3RyICI8ZXNwcmVzc2lvbmUgcmVnb2xhcmU+IgorCisjOiBkaWZmLmM6NTQ0NAorbXNnaWQgInVzZSA8cmVnZXg+IHRvIGRlY2lkZSB3aGF0IGEgd29yZCBpcyIKK21zZ3N0ciAidXNhIDxlc3ByZXNzaW9uZSByZWdvbGFyZT4gcGVyIGRlY2lkZXJlIGNvc2EgY29zdGl0dWlzY2UgdW5hIHBhcm9sYSIKKworIzogZGlmZi5jOjU0NDcKK21zZ2lkICJlcXVpdmFsZW50IHRvIC0td29yZC1kaWZmPWNvbG9yIC0td29yZC1kaWZmLXJlZ2V4PTxyZWdleD4iCittc2dzdHIgIiIKKyJlcXVpdmFsZW50ZSBkaSAtLXdvcmQtZGlmZj1jb2xvciAtLXdvcmQtZGlmZi1yZWdleD08ZXNwcmVzc2lvbmUgcmVnb2xhcmU+IgorCisjOiBkaWZmLmM6NTQ1MAorbXNnaWQgIm1vdmVkIGxpbmVzIG9mIGNvZGUgYXJlIGNvbG9yZWQgZGlmZmVyZW50bHkiCittc2dzdHIgImxlIHJpZ2hlIGRpIGNvZGljZSBzcG9zdGF0ZSBzb25vIGNvbG9yYXRlIGluIG1vZG8gZGl2ZXJzbyIKKworIzogZGlmZi5jOjU0NTMKK21zZ2lkICJob3cgd2hpdGUgc3BhY2VzIGFyZSBpZ25vcmVkIGluIC0tY29sb3ItbW92ZWQiCittc2dzdHIgIm1vZG8gaW4gY3VpIHNvbm8gaWdub3JhdGkgZ2xpIHNwYXppIGJpYW5jaGkgaW4gLS1jb2xvci1tb3ZlZCIKKworIzogZGlmZi5jOjU0NTYKK21zZ2lkICJPdGhlciBkaWZmIG9wdGlvbnMiCittc2dzdHIgIkFsdHJlIG9wemlvbmkgZGlmZiIKKworIzogZGlmZi5jOjU0NTgKK21zZ2lkICJ3aGVuIHJ1biBmcm9tIHN1YmRpciwgZXhjbHVkZSBjaGFuZ2VzIG91dHNpZGUgYW5kIHNob3cgcmVsYXRpdmUgcGF0aHMiCittc2dzdHIgIiIKKyJzZSBlc2VndWl0byBkYSB1bmEgc290dG9kaXJlY3RvcnksIGVzY2x1ZGkgbGUgbW9kaWZpY2hlIGVzdGVybmUgYWQgZXNzYSBlICIKKyJ2aXN1YWxpenphIGkgcGVyY29yc2kgcmVsYXRpdmkiCisKKyM6IGRpZmYuYzo1NDYyCittc2dpZCAidHJlYXQgYWxsIGZpbGVzIGFzIHRleHQiCittc2dzdHIgInRyYXR0YSB0dXR0aSBpIGZpbGUgY29tZSBzZSBmb3NzZXJvIGRpIHRlc3RvIgorCisjOiBkaWZmLmM6NTQ2NAorbXNnaWQgInN3YXAgdHdvIGlucHV0cywgcmV2ZXJzZSB0aGUgZGlmZiIKK21zZ3N0ciAic2NhbWJpYSBpIGR1ZSBpbnB1dCwgZ2VuZXJhIHVuIGRpZmYgYWwgY29udHJhcmlvIgorCisjOiBkaWZmLmM6NTQ2NgorbXNnaWQgImV4aXQgd2l0aCAxIGlmIHRoZXJlIHdlcmUgZGlmZmVyZW5jZXMsIDAgb3RoZXJ3aXNlIgorbXNnc3RyICJlc2NpIGNvbiBjb2RpY2UgMSBzZSBjaSBzb25vIGRpZmZlcmVuemUsIGNvbiAwIGFsdHJpbWVudGkiCisKKyM6IGRpZmYuYzo1NDY4Cittc2dpZCAiZGlzYWJsZSBhbGwgb3V0cHV0IG9mIHRoZSBwcm9ncmFtIgorbXNnc3RyICJkaXNhYmlsaXRhIGwnaW50ZXJvIG91dHB1dCBkZWwgcHJvZ3JhbW1hIgorCisjOiBkaWZmLmM6NTQ3MAorbXNnaWQgImFsbG93IGFuIGV4dGVybmFsIGRpZmYgaGVscGVyIHRvIGJlIGV4ZWN1dGVkIgorbXNnc3RyICJjb25zZW50aSBsJ2VzZWN1emlvbmUgZGkgdW4gaGVscGVyIGRpZmYgZXN0ZXJubyIKKworIzogZGlmZi5jOjU0NzIKK21zZ2lkICJydW4gZXh0ZXJuYWwgdGV4dCBjb252ZXJzaW9uIGZpbHRlcnMgd2hlbiBjb21wYXJpbmcgYmluYXJ5IGZpbGVzIgorbXNnc3RyICIiCisiZXNlZ3VpIGZpbHRyaSBkaSBjb252ZXJzaW9uZSBpbiB0ZXN0byBlc3Rlcm5pIHF1YW5kbyBzaSBjb25mcm9udGFubyBmaWxlICIKKyJiaW5hcmkiCisKKyM6IGRpZmYuYzo1NDc0Cittc2dpZCAiPHdoZW4+IgorbXNnc3RyICI8cXVhbmRvPiIKKworIzogZGlmZi5jOjU0NzUKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyB0byBzdWJtb2R1bGVzIGluIHRoZSBkaWZmIGdlbmVyYXRpb24iCittc2dzdHIgImlnbm9yYSBsZSBtb2RpZmljaGUgYWkgc290dG9tb2R1bGkgZHVyYW50ZSBsYSBnZW5lcmF6aW9uZSBkZWwgZGlmZiIKKworIzogZGlmZi5jOjU0NzgKK21zZ2lkICI8Zm9ybWF0PiIKK21zZ3N0ciAiPGZvcm1hdG8+IgorCisjOiBkaWZmLmM6NTQ3OQorbXNnaWQgInNwZWNpZnkgaG93IGRpZmZlcmVuY2VzIGluIHN1Ym1vZHVsZXMgYXJlIHNob3duIgorbXNnc3RyICJzcGVjaWZpY2EgY29tZSB2ZXJyYW5ubyB2aXN1YWxpenphdGUgbGUgZGlmZmVyZW56ZSBuZWkgc290dG9tb2R1bGkiCisKKyM6IGRpZmYuYzo1NDgzCittc2dpZCAiaGlkZSAnZ2l0IGFkZCAtTicgZW50cmllcyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAibmFzY29uZGkgbGUgdm9jaSAnZ2l0IGFkZCAtTicgbmVsbCdpbmRpY2UiCisKKyM6IGRpZmYuYzo1NDg2Cittc2dpZCAidHJlYXQgJ2dpdCBhZGQgLU4nIGVudHJpZXMgYXMgcmVhbCBpbiB0aGUgaW5kZXgiCittc2dzdHIgInRyYXR0YSBsZSB2b2NpICdnaXQgYWRkIC1OJyBjb21lIHJlYWxpIG5lbGwnaW5kaWNlIgorCisjOiBkaWZmLmM6NTQ4OAorbXNnaWQgIjxzdHJpbmc+IgorbXNnc3RyICI8c3RyaW5nYT4iCisKKyM6IGRpZmYuYzo1NDg5Cittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisic3RyaW5nIgorbXNnc3RyICIiCisiY2VyY2EgZGlmZmVyZW56ZSBjaGUgbW9kaWZpY2FubyBpbCBudW1lcm8gZGkgb2Njb3JyZW56ZSBkZWxsYSBzdHJpbmdhICIKKyJzcGVjaWZpY2F0YSIKKworIzogZGlmZi5jOjU0OTIKK21zZ2lkICIiCisibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkICIKKyJyZWdleCIKK21zZ3N0ciAiIgorImNlcmNhIGRpZmZlcmVuemUgY2hlIG1vZGlmaWNhbm8gaWwgbnVtZXJvIGRpIG9jY29ycmVuemUgZGVsbCdlc3ByZXNzaW9uZSAiCisicmVnb2xhcmUgc3BlY2lmaWNhdGEiCisKKyM6IGRpZmYuYzo1NDk1Cittc2dpZCAic2hvdyBhbGwgY2hhbmdlcyBpbiB0aGUgY2hhbmdlc2V0IHdpdGggLVMgb3IgLUciCittc2dzdHIgInZpc3VhbGl6emEgdHV0dGUgbGUgbW9kaWZpY2hlIG5lbCBjaGFuZ2VzZXQgY29uIC1TIG8gLUciCisKKyM6IGRpZmYuYzo1NDk4Cittc2dpZCAidHJlYXQgPHN0cmluZz4gaW4gLVMgYXMgZXh0ZW5kZWQgUE9TSVggcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICIiCisidHJhdHRhIGxhIDxzdHJpbmdhPiBuZWxsJ29wemlvbmUgLVMgY29tZSB1bidlc3ByZXNzaW9uZSByZWdvbGFyZSBQT1NJWCBlc3Rlc2EiCisKKyM6IGRpZmYuYzo1NTAxCittc2dpZCAiY29udHJvbCB0aGUgb3JkZXIgaW4gd2hpY2ggZmlsZXMgYXBwZWFyIGluIHRoZSBvdXRwdXQiCittc2dzdHIgImNvbnRyb2xsYSBsJ29yZGluZSBjb24gY3VpIGkgZmlsZSBhcHBhcmlyYW5ubyBuZWxsJ291dHB1dCIKKworIzogZGlmZi5jOjU1MDIKK21zZ2lkICI8b2JqZWN0LWlkPiIKK21zZ3N0ciAiPElEIG9nZ2V0dG8+IgorCisjOiBkaWZmLmM6NTUwMworbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorIm9iamVjdCIKK21zZ3N0ciAiIgorImNlcmNhIGRpZmZlcmVuemUgY2hlIG1vZGlmaWNhbm8gaWwgbnVtZXJvIGRpIG9jY29ycmVuemUgZGVsbCdvZ2dldHRvICIKKyJzcGVjaWZpY2F0byIKKworIzogZGlmZi5jOjU1MDUKK21zZ2lkICJbKEF8Q3xEfE18UnxUfFV8WHxCKS4uLlsqXV0iCittc2dzdHIgIlsoQXxDfER8TXxSfFR8VXxYfEIpLi4uWypdXSIKKworIzogZGlmZi5jOjU1MDYKK21zZ2lkICJzZWxlY3QgZmlsZXMgYnkgZGlmZiB0eXBlIgorbXNnc3RyICJzZWxlemlvbmEgZmlsZSBpbiBiYXNlIGFsIHRpcG8gZGlmZiIKKworIzogZGlmZi5jOjU1MDgKK21zZ2lkICI8ZmlsZT4iCittc2dzdHIgIjxmaWxlPiIKKworIzogZGlmZi5jOjU1MDkKK21zZ2lkICJPdXRwdXQgdG8gYSBzcGVjaWZpYyBmaWxlIgorbXNnc3RyICJTYWx2YSBsJ291dHB1dCBpbiB1biBmaWxlIHNwZWNpZmljbyIKKworIzogZGlmZi5jOjYxNjQKK21zZ2lkICJpbmV4YWN0IHJlbmFtZSBkZXRlY3Rpb24gd2FzIHNraXBwZWQgZHVlIHRvIHRvbyBtYW55IGZpbGVzLiIKK21zZ3N0ciAiIgorImlsIHJpbGV2YW1lbnRvIHJpZGVub21pbmF6aW9uZSBub24gZXNhdHRhIMOoIHN0YXRvIG9tZXNzbyBwZXIgbGEgcHJlc2VuemEgZGkgIgorInRyb3BwaSBmaWxlLiIKKworIzogZGlmZi5jOjYxNjcKK21zZ2lkICJvbmx5IGZvdW5kIGNvcGllcyBmcm9tIG1vZGlmaWVkIHBhdGhzIGR1ZSB0byB0b28gbWFueSBmaWxlcy4iCittc2dzdHIgIiIKKyJ0cm92YXRlIHNvbG8gY29waWUgZGFpIHBlcmNvcnNpIG1vZGlmaWNhdGkgcGVyIGxhIHByZXNlbnphIGRpIHRyb3BwaSBmaWxlLiIKKworIzogZGlmZi5jOjYxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInlvdSBtYXkgd2FudCB0byBzZXQgeW91ciAlcyB2YXJpYWJsZSB0byBhdCBsZWFzdCAlZCBhbmQgcmV0cnkgdGhlIGNvbW1hbmQuIgorbXNnc3RyICIiCisicG90cmVzdGkgdm9sZXIgaW1wb3N0YXJlIGxhIHZhcmlhYmlsZSAlcyBhZCBhbG1lbm8gJWQgZSByaXByb3ZhcmUgYWQgIgorImVzZWd1aXJlIGlsIGNvbWFuZG8uIgorCisjOiBkaXIuYzo1NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlKHMpIGtub3duIHRvIGdpdCIKK21zZ3N0ciAiIgorImxvIHNwZWNpZmljYXRvcmUgcGVyY29yc28gJyVzJyBub24gY29ycmlzcG9uZGUgYWQgYWxjdW4gZmlsZSBub3RvIGEgZ2l0IgorCisjOiBkaXIuYzo2OTUgZGlyLmM6NzI0IGRpci5jOjczNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgcGF0dGVybjogJyVzJyIKK21zZ3N0ciAicGF0dGVybiBub24gcmljb25vc2NpdXRvOiAnJXMnIgorCisjOiBkaXIuYzo3NTQgZGlyLmM6NzY4CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBuZWdhdGl2ZSBwYXR0ZXJuOiAnJXMnIgorbXNnc3RyICJwYXR0ZXJuIG5lZ2F0aXZvIG5vbiByaWNvbm9zY2l1dG86ICclcyciCisKKyM6IGRpci5jOjc4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ5b3VyIHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBoYXZlIGlzc3VlczogcGF0dGVybiAnJXMnIGlzIHJlcGVhdGVkIgorbXNnc3RyICIiCisiaWwgZmlsZSBzcGFyc2UtY2hlY2tvdXQgcG90cmViYmUgYXZlcmUgZGVpIHByb2JsZW1pOiBpbCBwYXR0ZXJuICclcycgw6ggIgorInJpcGV0dXRvIgorCisjOiBkaXIuYzo3OTYKK21zZ2lkICJkaXNhYmxpbmcgY29uZSBwYXR0ZXJuIG1hdGNoaW5nIgorbXNnc3RyICJkaXNhYmlsaXRvIGlsIHBhdHRlcm4gbWF0Y2hpbmcgZGkgdGlwbyBjb25lIgorCisjOiBkaXIuYzoxMTczCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCB1c2UgJXMgYXMgYW4gZXhjbHVkZSBmaWxlIgorbXNnc3RyICJpbXBvc3NpYmlsZSB1c2FyZSAlcyBjb21lIGZpbGUgZGkgZXNjbHVzaW9uZSIKKworIzogZGlyLmM6MjE0NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlIGxhIGRpcmVjdG9yeSAnJXMnIgorCisjOiBkaXIuYzoyNDc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBrZXJuZWwgbmFtZSBhbmQgaW5mb3JtYXRpb24iCittc2dzdHIgImltcG9zc2liaWxlIG90dGVuZXJlIGlsIG5vbWUgZSBsZSBpbmZvcm1hemlvbmkgc3VsIGtlcm5lbCIKKworIzogZGlyLmM6MjYwMworbXNnaWQgInVudHJhY2tlZCBjYWNoZSBpcyBkaXNhYmxlZCBvbiB0aGlzIHN5c3RlbSBvciBsb2NhdGlvbiIKK21zZ3N0ciAibGEgY2FjaGUgbm9uIHRyYWNjaWF0YSDDqCBkaXNhYmlsaXRhdGEgc3UgcXVlc3RvIHNpc3RlbWEgbyBwZXJjb3JzbyIKKworIzogZGlyLmM6MzQwNworIywgYy1mb3JtYXQKK21zZ2lkICJpbmRleCBmaWxlIGNvcnJ1cHQgaW4gcmVwbyAlcyIKK21zZ3N0ciAiZmlsZSBpbmRleCBjb3Jyb3R0byBuZWwgcmVwb3NpdG9yeSAlcyIKKworIzogZGlyLmM6MzQ1MiBkaXIuYzozNDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3JpZXMgZm9yICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgbGUgZGlyZWN0b3J5IHBlciAlcyIKKworIzogZGlyLmM6MzQ4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgbWlncmF0ZSBnaXQgZGlyZWN0b3J5IGZyb20gJyVzJyB0byAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBtaWdyYXJlIGxhIGRpcmVjdG9yeSBnaXQgZGEgJyVzJyBhICclcyciCisKKyM6IGVkaXRvci5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImhpbnQ6IFdhaXRpbmcgZm9yIHlvdXIgZWRpdG9yIHRvIGNsb3NlIHRoZSBmaWxlLi4uJWMiCittc2dzdHIgIiIKKyJzdWdnZXJpbWVudG86IEluIGF0dGVzYSBkZWxsYSBjaGl1c3VyYSBkZWwgZmlsZSBkYSBwYXJ0ZSBkZWxsJ2VkaXRvci4uLiVjIgorCisjOiBlbnRyeS5jOjE3OAorbXNnaWQgIkZpbHRlcmluZyBjb250ZW50IgorbXNnc3RyICJGaWx0cmFnZ2lvIGNvbnRlbnV0byBpbiBjb3JzbyIKKworIzogZW50cnkuYzo0NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBzdGF0IHN1bCBmaWxlICclcyciCisKKyM6IGVudmlyb25tZW50LmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBnaXQgbmFtZXNwYWNlIHBhdGggXCIlc1wiIgorbXNnc3RyICJwZXJjb3JzbyBzcGF6aW8gZGVpIG5vbWkgZ2l0IFwiJXNcIiBub24gdmFsaWRvIgorCisjOiBlbnZpcm9ubWVudC5jOjMzMQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc2V0IEdJVF9ESVIgdG8gJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgaW1wb3N0YXJlIEdJVF9ESVIgYSAnJXMnIgorCisjOiBleGVjLWNtZC5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSBhcmdzIHRvIHJ1biAlcyIKK21zZ3N0ciAidHJvcHBpIGFyZ29tZW50aSBwZXIgZXNlZ3VpcmUgJXMiCisKKyM6IGZldGNoLXBhY2suYzoxNTAKK21zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgc2hhbGxvdyBsaXN0IgorbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogYXR0ZXNhIGxpc3RhIHNoYWxsb3ciCisKKyM6IGZldGNoLXBhY2suYzoxNTMKK21zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgYSBmbHVzaCBwYWNrZXQgYWZ0ZXIgc2hhbGxvdyBsaXN0IgorbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogYXR0ZXNvIHBhY2NoZXR0byBmbHVzaCBkb3BvIGxpc3RhIHNoYWxsb3ciCisKKyM6IGZldGNoLXBhY2suYzoxNjQKK21zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290IGEgZmx1c2ggcGFja2V0IgorbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogYXR0ZXNpIEFDSy9OQUssIHJpY2V2dXRvIHBhY2NoZXR0byBmbHVzaCIKKworIzogZmV0Y2gtcGFjay5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290ICclcyciCittc2dzdHIgImdpdCBmZXRjaC1wYWNrOiBhdHRlc2kgQUNLL05BSywgcmljZXZ1dG8gJyVzJyIKKworIzogZmV0Y2gtcGFjay5jOjE5NQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byByZW1vdGUiCittc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIHN1bCByZW1vdG8iCisKKyM6IGZldGNoLXBhY2suYzoyNTcKK21zZ2lkICItLXN0YXRlbGVzcy1ycGMgcmVxdWlyZXMgbXVsdGlfYWNrX2RldGFpbGVkIgorbXNnc3RyICItLXN0YXRlbGVzcy1ycGMgcmljaGllZGUgbXVsdGlfYWNrX2RldGFpbGVkIgorCisjOiBmZXRjaC1wYWNrLmM6MzU2IGZldGNoLXBhY2suYzoxMzQwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgc2hhbGxvdyBsaW5lOiAlcyIKK21zZ3N0ciAicmlnYSBzaGFsbG93IG5vbiB2YWxpZGE6ICclcyciCisKKyM6IGZldGNoLXBhY2suYzozNjIgZmV0Y2gtcGFjay5jOjEzNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB1bnNoYWxsb3cgbGluZTogJXMiCittc2dzdHIgInJpZ2EgdW5zaGFsbG93IG5vbiB2YWxpZGE6ICclcyciCisKKyM6IGZldGNoLXBhY2suYzozNjQgZmV0Y2gtcGFjay5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0IG5vdCBmb3VuZDogJXMiCittc2dzdHIgIm9nZ2V0dG8gbm9uIHRyb3ZhdG86ICVzIgorCisjOiBmZXRjaC1wYWNrLmM6MzY3IGZldGNoLXBhY2suYzoxMzUxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIG9iamVjdDogJXMiCittc2dzdHIgImVycm9yZSBuZWxsJ29nZ2V0dG86ICVzIgorCisjOiBmZXRjaC1wYWNrLmM6MzY5IGZldGNoLXBhY2suYzoxMzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHNoYWxsb3cgZm91bmQ6ICVzIgorbXNnc3RyICJuZXNzdW5vIHNoYWxsb3cgdHJvdmF0bzogJXMiCisKKyM6IGZldGNoLXBhY2suYzozNzIgZmV0Y2gtcGFjay5jOjEzNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgc2hhbGxvdy91bnNoYWxsb3csIGdvdCAlcyIKK21zZ3N0ciAiYXR0ZXNpIHNoYWxsb3cvdW5zaGFsbG93LCByaWNldnV0byAlcyIKKworIzogZmV0Y2gtcGFjay5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJnb3QgJXMgJWQgJXMiCittc2dzdHIgInJpY2V2dXRvICVzICVkICVzIgorCisjOiBmZXRjaC1wYWNrLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tbWl0ICVzIgorbXNnc3RyICJjb21taXQgbm9uIHZhbGlkbzogJXMiCisKKyM6IGZldGNoLXBhY2suYzo0NjIKK21zZ2lkICJnaXZpbmcgdXAiCittc2dzdHIgInNtZXR0byBkaSBwcm92YXJlIgorCisjOiBmZXRjaC1wYWNrLmM6NDc1IHByb2dyZXNzLmM6MzIzCittc2dpZCAiZG9uZSIKK21zZ3N0ciAiZmF0dG8iCisKKyM6IGZldGNoLXBhY2suYzo0ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ290ICVzICglZCkgJXMiCittc2dzdHIgInJpY2V2dXRvICVzICglZCkgJXMiCisKKyM6IGZldGNoLXBhY2suYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWFya2luZyAlcyBhcyBjb21wbGV0ZSIKK21zZ3N0ciAiQ29udHJhc3NlZ25vICVzIGNvbWUgY29tcGxldG8iCisKKyM6IGZldGNoLXBhY2suYzo3NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWxyZWFkeSBoYXZlICVzICglcykiCittc2dzdHIgImhvIGdpw6AgJXMgKCVzKSIKKworIzogZmV0Y2gtcGFjay5jOjgxOAorbXNnaWQgImZldGNoLXBhY2s6IHVuYWJsZSB0byBmb3JrIG9mZiBzaWRlYmFuZCBkZW11bHRpcGxleGVyIgorbXNnc3RyICIiCisiZmV0Y2gtcGFjazogaW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgZm9yayBkZWwgZGVtdWx0aXBsZXhlciBkZWxsYSBiYW5kYSAiCisibGF0ZXJsYWUiCisKKyM6IGZldGNoLXBhY2suYzo4MjYKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIHBhY2sgaGVhZGVyIgorbXNnc3RyICJlcnJvcmUgcHJvdG9jb2xsbzogaW50ZXN0YXppb25lIHBhY2sgbm9uIHZhbGlkYSIKKworIzogZmV0Y2gtcGFjay5jOjkwMAorIywgYy1mb3JtYXQKK21zZ2lkICJmZXRjaC1wYWNrOiB1bmFibGUgdG8gZm9yayBvZmYgJXMiCittc2dzdHIgImZldGNoLXBhY2s6IGltcG9zc2liaWxlIGVzZWd1aXJlIGlsIGZvcmsgZGkgJXMiCisKKyM6IGZldGNoLXBhY2suYzo5MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZmFpbGVkIgorbXNnc3RyICIlcyBub24gcml1c2NpdG8iCisKKyM6IGZldGNoLXBhY2suYzo5MTgKK21zZ2lkICJlcnJvciBpbiBzaWRlYmFuZCBkZW11bHRpcGxleGVyIgorbXNnc3RyICJlcnJvcmUgbmVsIGRlbXVsdGlwbGV4ZXIgZGVsbGEgYmFuZGEgbGF0ZXJhbGUiCisKKyM6IGZldGNoLXBhY2suYzo5NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2VydmVyIHZlcnNpb24gaXMgJS4qcyIKK21zZ3N0ciAiTGEgdmVyc2lvbmUgZGVsIHNlcnZlciDDqCAlLipzIgorCisjOiBmZXRjaC1wYWNrLmM6OTcwIGZldGNoLXBhY2suYzo5NzYgZmV0Y2gtcGFjay5jOjk3OSBmZXRjaC1wYWNrLmM6OTg1CisjOiBmZXRjaC1wYWNrLmM6OTg5IGZldGNoLXBhY2suYzo5OTMgZmV0Y2gtcGFjay5jOjk5NyBmZXRjaC1wYWNrLmM6MTAwMQorIzogZmV0Y2gtcGFjay5jOjEwMDUgZmV0Y2gtcGFjay5jOjEwMDkgZmV0Y2gtcGFjay5jOjEwMTMgZmV0Y2gtcGFjay5jOjEwMTcKKyM6IGZldGNoLXBhY2suYzoxMDIzIGZldGNoLXBhY2suYzoxMDI5IGZldGNoLXBhY2suYzoxMDM0IGZldGNoLXBhY2suYzoxMDM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyAlcyIKK21zZ3N0ciAiSWwgc2VydmVyIHN1cHBvcnRhICVzIgorCisjOiBmZXRjaC1wYWNrLmM6OTcyCittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjbGllbnRzIgorbXNnc3RyICJJbCBzZXJ2ZXIgbm9uIHN1cHBvcnRhIGNsaWVudCBzaGFsbG93IgorCisjOiBmZXRjaC1wYWNrLmM6MTAzMgorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tc2hhbGxvdy1zaW5jZSIKK21zZ3N0ciAiSWwgc2VydmVyIG5vbiBzdXBwb3J0YSAtLXNoYWxsb3ctc2luY2UiCisKKyM6IGZldGNoLXBhY2suYzoxMDM3Cittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1zaGFsbG93LWV4Y2x1ZGUiCittc2dzdHIgIklsIHNlcnZlciBub24gc3VwcG9ydGEgLS1zaGFsbG93LWV4Y2x1ZGUiCisKKyM6IGZldGNoLXBhY2suYzoxMDQxCittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1kZWVwZW4iCittc2dzdHIgIklsIHNlcnZlciBub24gc3VwcG9ydGEgLS1kZWVwZW4iCisKKyM6IGZldGNoLXBhY2suYzoxMDU4Cittc2dpZCAibm8gY29tbW9uIGNvbW1pdHMiCittc2dzdHIgIm5lc3N1biBjb21taXQgaW4gY29tdW5lIgorCisjOiBmZXRjaC1wYWNrLmM6MTA3MCBmZXRjaC1wYWNrLmM6MTUzNgorbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBmZXRjaCBmYWlsZWQuIgorbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogcmVjdXBlcm8gbm9uIHJpdXNjaXRvLiIKKworIzogZmV0Y2gtcGFjay5jOjEyMDkKK21zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IHJlcXVlc3RzIgorbXNnc3RyICJJbCBzZXJ2ZXIgbm9uIHN1cHBvcnRhIGxlIHJpY2hpZXN0ZSBzaGFsbG93IgorCisjOiBmZXRjaC1wYWNrLmM6MTIxNgorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBmaWx0ZXIiCittc2dzdHIgIklsIHNlcnZlciBzdXBwb3J0YSBmaWx0ZXIiCisKKyM6IGZldGNoLXBhY2suYzoxMjM5Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHJlcXVlc3QgdG8gcmVtb3RlIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSBsYSByaWNoaWVzdGEgc3VsIHJlbW90byIKKworIzogZmV0Y2gtcGFjay5jOjEyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBzZWN0aW9uIGhlYWRlciAnJXMnIgorbXNnc3RyICJlcnJvcmUgZHVyYW50ZSBsYSBsZXR0dXJhIGRlbGwnaW50ZXN0YXppb25lIGRpIHNlemlvbmUgJyVzJyIKKworIzogZmV0Y2gtcGFjay5jOjEyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgJyVzJywgcmVjZWl2ZWQgJyVzJyIKK21zZ3N0ciAiYXR0ZXNvICclcycsIHJpY2V2dXRvICclcyciCisKKyM6IGZldGNoLXBhY2suYzoxMzAzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgYWNrbm93bGVkZ21lbnQgbGluZTogJyVzJyIKK21zZ3N0ciAicmlnYSBkaSBjb25mZXJtYSBpbmF0dGVzYTogJyVzJyIKKworIzogZmV0Y2gtcGFjay5jOjEzMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBhY2tzOiAlZCIKK21zZ3N0ciAiZXJyb3JlIGR1cmFudGUgbCdlbGFib3JhemlvbmUgZGVnbGkgYWNrOiAlZCIKKworIzogZmV0Y2gtcGFjay5jOjEzMTgKK21zZ2lkICJleHBlY3RlZCBwYWNrZmlsZSB0byBiZSBzZW50IGFmdGVyICdyZWFkeSciCittc2dzdHIgImNpIHNpIGF0dGVuZGV2YSBjaGUgaWwgcGFja2ZpbGUgZm9zc2UgaW52aWF0byBkb3BvICdyZWFkeSciCisKKyM6IGZldGNoLXBhY2suYzoxMzIwCittc2dpZCAiZXhwZWN0ZWQgbm8gb3RoZXIgc2VjdGlvbnMgdG8gYmUgc2VudCBhZnRlciBubyAncmVhZHknIgorbXNnc3RyICIiCisiY2kgc2kgYXR0ZW5kZXZhIGNoZSBuZXNzdW4nYWx0cmEgc2V6aW9uZSBmb3NzZSBpbnZpYXRhIGluIGFzc2VuemEgZGkgJ3JlYWR5JyIKKworIzogZmV0Y2gtcGFjay5jOjEzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBzaGFsbG93IGluZm86ICVkIgorbXNnc3RyICJlcnJvcmUgZHVyYW50ZSBsJ2VsYWJvcmF6aW9uZSBkZWxsZSBpbmZvcm1hemlvbmkgc2hhbGxvdzogJWQiCisKKyM6IGZldGNoLXBhY2suYzoxNDA5CisjLCBjLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIHdhbnRlZC1yZWYsIGdvdCAnJXMnIgorbXNnc3RyICJhdHRlc28gd2FudGVkLXJlZiwgcmljZXZ1dG8gJyVzJyIKKworIzogZmV0Y2gtcGFjay5jOjE0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCB3YW50ZWQtcmVmOiAnJXMnIgorbXNnc3RyICJ3YW50ZWQtcmVmIGluYXR0ZXNvOiAnJXMnIgorCisjOiBmZXRjaC1wYWNrLmM6MTQxOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBwcm9jZXNzaW5nIHdhbnRlZCByZWZzOiAlZCIKK21zZ3N0ciAiZXJyb3JlIGR1cmFudGUgbCdlbGFib3JhemlvbmUgZGVpIHJpZmVyaW1lbnRpIGRlc2lkZXJhdGk6ICVkIgorCisjOiBmZXRjaC1wYWNrLmM6MTc2MgorbXNnaWQgIm5vIG1hdGNoaW5nIHJlbW90ZSBoZWFkIgorbXNnc3RyICJuZXNzdW4gaGVhZCByZW1vdG8gY29ycmlzcG9uZGVudGUiCisKKyM6IGZldGNoLXBhY2suYzoxNzg1IGJ1aWx0aW4vY2xvbmUuYzo2ODkKK21zZ2lkICJyZW1vdGUgZGlkIG5vdCBzZW5kIGFsbCBuZWNlc3Nhcnkgb2JqZWN0cyIKK21zZ3N0ciAiaWwgcmVtb3RvIG5vbiBoYSBpbnZpYXRvIHR1dHRpIGdsaSBvZ2dldHRpIG5lY2Vzc2FyaSIKKworIzogZmV0Y2gtcGFjay5jOjE4MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCByZW1vdGUgcmVmICVzIgorbXNnc3RyICJyaWZlcmltZW50byByZW1vdG8gbm9uIGVzaXN0ZW50ZTogJXMiCisKKyM6IGZldGNoLXBhY2suYzoxODE1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBhbGxvdyByZXF1ZXN0IGZvciB1bmFkdmVydGlzZWQgb2JqZWN0ICVzIgorbXNnc3RyICJJbCBzZXJ2ZXIgbm9uIGNvbnNlbnRlIHJpY2hpZXN0ZSBwZXIgbCdvZ2dldHRvIG5vbiBwdWJibGljaXp6YXRvICVzIgorCisjOiBncGctaW50ZXJmYWNlLmM6NDA4CiBtc2dpZCAiZ3BnIGZhaWxlZCB0byBzaWduIHRoZSBkYXRhIgogbXNnc3RyICJncGcgbm9uIMOoIHJpdXNjaXRvIGEgZmlybWFyZSBpIGRhdGkiCiAKLSM6IGdyZXAuYzoxMzIwCisjOiBncGctaW50ZXJmYWNlLmM6NDM0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIGlsIGZpbGUgdGVtcG9yYW5lbyIKKworIzogZ3BnLWludGVyZmFjZS5jOjQzNworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgd3JpdGluZyBkZXRhY2hlZCBzaWduYXR1cmUgdG8gJyVzJyIKK21zZ3N0ciAic2NyaXR0dXJhIGRlbGxhIGZpcm1hIHNlcGFyYXRhIGluICclcycgbm9uIHJpdXNjaXRhIgorCisjOiBncmFwaC5jOjk4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yZSBpbnZhbGlkIGNvbG9yICclLipzJyBpbiBsb2cuZ3JhcGhDb2xvcnMiCittc2dzdHIgImlnbm9ybyBpbCBjb2xvcmUgbm9uIHZhbGlkbyAnJS4qcycgaW4gbG9nLmdyYXBoQ29sb3JzIgorCisjOiBncmVwLmM6NjY4Cittc2dpZCAiIgorImdpdmVuIHBhdHRlcm4gY29udGFpbnMgTlVMTCBieXRlICh2aWEgLWYgPGZpbGU+KS4gVGhpcyBpcyBvbmx5IHN1cHBvcnRlZCAiCisid2l0aCAtUCB1bmRlciBQQ1JFIHYyIgorbXNnc3RyICIiCisiaWwgcGF0dGVybiBmb3JuaXRvIChjb24gLWYgPGZpbGU+KSBjb250aWVuZSB1biBieXRlIE5VTEwuIENpw7Igw6ggc3VwcG9ydGF0byAiCisic29sbyBjb24gLVAgdXNhbmRvIFBDUkUgdjIiCisKKyM6IGdyZXAuYzoyMTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IHVuYWJsZSB0byByZWFkICVzIgogbXNnc3RyICInJXMnOiBpbXBvc3NpYmlsZSBsZWdnZXJlICVzIgogCi0jOiBncmVwLmM6MTMzNworIzogZ3JlcC5jOjIxNDUgc2V0dXAuYzoxNjYgYnVpbHRpbi9jbG9uZS5jOjQxMSBidWlsdGluL2RpZmYuYzo4MgorIzogYnVpbHRpbi9ybS5jOjEzNQogIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnOiAlcyIKLW1zZ3N0ciAiJyVzJzogJXMiCittc2dpZCAiZmFpbGVkIHRvIHN0YXQgJyVzJyIKK21zZ3N0ciAic3RhdCBkaSAnJXMnIG5vbiByaXVzY2l0byIKIAotIzogZ3JlcC5jOjEzNDgKKyM6IGdyZXAuYzoyMTU2CiAjLCBjLWZvcm1hdAotbXNnaWQgIiclcyc6IHNob3J0IHJlYWQgJXMiCi1tc2dzdHIgIiIKK21zZ2lkICInJXMnOiBzaG9ydCByZWFkIgorbXNnc3RyICInJXMnOiBsZXR0dXJhIHRyb3BwbyBicmV2ZSIKIAotIzogaGVscC5jOjIwNworIzogaGVscC5jOjIzCittc2dpZCAic3RhcnQgYSB3b3JraW5nIGFyZWEgKHNlZSBhbHNvOiBnaXQgaGVscCB0dXRvcmlhbCkiCittc2dzdHIgImNyZWEgdW4nYXJlYSBkaSBsYXZvcm8gKHZlZGkgYW5jaGU6IGdpdCBoZWxwIHR1dG9yaWFsKSIKKworIzogaGVscC5jOjI0Cittc2dpZCAid29yayBvbiB0aGUgY3VycmVudCBjaGFuZ2UgKHNlZSBhbHNvOiBnaXQgaGVscCBldmVyeWRheSkiCittc2dzdHIgImxhdm9yYSBzdWxsZSBtb2RpZmljaGUgY29ycmVudGkgKHZlZGkgYW5jaGU6IGdpdCBoZWxwIGV2ZXJ5ZGF5KSIKKworIzogaGVscC5jOjI1Cittc2dpZCAiZXhhbWluZSB0aGUgaGlzdG9yeSBhbmQgc3RhdGUgKHNlZSBhbHNvOiBnaXQgaGVscCByZXZpc2lvbnMpIgorbXNnc3RyICJlc2FtaW5hIGxhIGNyb25vbG9naWEgZSBsbyBzdGF0byAodmVkaSBhbmNoZTogZ2l0IGhlbHAgcmV2aXNpb25zKSIKKworIzogaGVscC5jOjI2Cittc2dpZCAiZ3JvdywgbWFyayBhbmQgdHdlYWsgeW91ciBjb21tb24gaGlzdG9yeSIKK21zZ3N0ciAiYXVtZW50YSwgY29udHJhc3NlZ25hIGUgbWV0dGkgYSBwdW50byBsYSBjcm9ub2xvZ2lhIGNvbXVuZSIKKworIzogaGVscC5jOjI3Cittc2dpZCAiY29sbGFib3JhdGUgKHNlZSBhbHNvOiBnaXQgaGVscCB3b3JrZmxvd3MpIgorbXNnc3RyICJjb2xsYWJvcmEgKHZlZGkgYW5jaGU6IGdpdCBoZWxwIHdvcmtmbG93cykiCisKKyM6IGhlbHAuYzozMQorbXNnaWQgIk1haW4gUG9yY2VsYWluIENvbW1hbmRzIgorbXNnc3RyICJDb21hbmRpIHByaW5jaXBhbGkgZGkgYWx0byBsaXZlbGxvIgorCisjOiBoZWxwLmM6MzIKK21zZ2lkICJBbmNpbGxhcnkgQ29tbWFuZHMgLyBNYW5pcHVsYXRvcnMiCittc2dzdHIgIkNvbWFuZGkgLyBvcGVyYXppb25pIGRpIG1hbmlwb2xhemlvbmUgYXVzaWxpYXJpIgorCisjOiBoZWxwLmM6MzMKK21zZ2lkICJBbmNpbGxhcnkgQ29tbWFuZHMgLyBJbnRlcnJvZ2F0b3JzIgorbXNnc3RyICJDb21hbmRpIC8gb3BlcmF6aW9uaSBkaSBpbnRlcnJvZ2F6aW9uZSBhdXNpbGlhcmkiCisKKyM6IGhlbHAuYzozNAorbXNnaWQgIkludGVyYWN0aW5nIHdpdGggT3RoZXJzIgorbXNnc3RyICJJbnRlcmF6aW9uZSBjb24gYWx0cmkiCisKKyM6IGhlbHAuYzozNQorbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIE1hbmlwdWxhdG9ycyIKK21zZ3N0ciAiQ29tYW5kaSAvIG9wZXJhemlvbmkgZGkgbWFuaXBvbGF6aW9uZSBkaSBiYXNzbyBsaXZlbGxvIgorCisjOiBoZWxwLmM6MzYKK21zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBJbnRlcnJvZ2F0b3JzIgorbXNnc3RyICJDb21hbmRpIC8gb3BlcmF6aW9uaSBkaSBpbnRlcnJvZ2F6aW9uZSBkaSBiYXNzbyBsaXZlbGxvIgorCisjOiBoZWxwLmM6MzcKK21zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBTeW5jaW5nIFJlcG9zaXRvcmllcyIKK21zZ3N0ciAiQ29tYW5kaSBkaSBiYXNzbyBsaXZlbGxvIC8gU2luY3Jvbml6emF6aW9uZSByZXBvc2l0b3J5IgorCisjOiBoZWxwLmM6MzgKK21zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBJbnRlcm5hbCBIZWxwZXJzIgorbXNnc3RyICJDb21hbmRpIGRpIGJhc3NvIGxpdmVsbG8gLyBGdW56aW9uaSBoZWxwZXIgaW50ZXJuZSIKKworIzogaGVscC5jOjI5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJhdmFpbGFibGUgZ2l0IGNvbW1hbmRzIGluICclcyciCiBtc2dzdHIgImNvbWFuZGkgZ2l0IGRpc3BvbmliaWxpIGluICclcyciCiAKLSM6IGhlbHAuYzoyMTQKKyM6IGhlbHAuYzozMDUKIG1zZ2lkICJnaXQgY29tbWFuZHMgYXZhaWxhYmxlIGZyb20gZWxzZXdoZXJlIG9uIHlvdXIgJFBBVEgiCiBtc2dzdHIgImNvbWFuZGkgZ2l0IGRpc3BvbmliaWxpIGFsdHJvdmUgbmVsIHR1byAkUEFUSCIKIAotIzogaGVscC5jOjI3MAorIzogaGVscC5jOjMxNAorbXNnaWQgIlRoZXNlIGFyZSBjb21tb24gR2l0IGNvbW1hbmRzIHVzZWQgaW4gdmFyaW91cyBzaXR1YXRpb25zOiIKK21zZ3N0ciAiUXVlc3RpIHNvbm8gaSBjb21hbmRpIEdpdCBjb211bmkgdXNhdGkgaW4gdmFyaWUgc2l0dWF6aW9uaToiCisKKyM6IGhlbHAuYzozNjMgZ2l0LmM6OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5zdXBwb3J0ZWQgY29tbWFuZCBsaXN0aW5nIHR5cGUgJyVzJyIKK21zZ3N0ciAidGlwbyBlbGVuY28gY29tYW5kaSBub24gc3VwcG9ydGF0bzogJyVzJyIKKworIzogaGVscC5jOjQwMworbXNnaWQgIlRoZSBjb21tb24gR2l0IGd1aWRlcyBhcmU6IgorbXNnc3RyICJMZSBndWlkZSBHaXQgY29tdW5pIHNvbm86IgorCisjOiBoZWxwLmM6NTEyCittc2dpZCAiU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIHRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIgorbXNnc3RyICIiCisiVmVkaSAnZ2l0IGhlbHAgPGNvbWFuZG8+JyBwZXIgc2FwZXJuZSBkaSBwacO5IHN1IHVuIHNvdHRvY29tYW5kbyBzcGVjaWZpY28iCisKKyM6IGhlbHAuYzo1MTcKK21zZ2lkICJFeHRlcm5hbCBjb21tYW5kcyIKK21zZ3N0ciAiQ29tYW5kaSBlc3Rlcm5pIgorCisjOiBoZWxwLmM6NTMyCittc2dpZCAiQ29tbWFuZCBhbGlhc2VzIgorbXNnc3RyICJBbGlhcyBjb21hbmRpIgorCisjOiBoZWxwLmM6NTk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGFwcGVhcnMgdG8gYmUgYSBnaXQgY29tbWFuZCwgYnV0IHdlIHdlcmUgbm90XG4iCkBAIC0yOTksMjggKzQyMTYsNTQgQEAKICInJXMnIHNlbWJyYSBlc3NlcmUgdW4gY29tYW5kbyBnaXQsIG1hIG5vbiDDqCBzdGF0b1xuIgogInBvc3NpYmlsZSBlc2VndWlybG8uIEZvcnNlIGdpdC0lcyDDqCBjb3Jyb3R0bz8iCiAKLSM6IGhlbHAuYzozMjcKKyM6IGhlbHAuYzo2NTUKIG1zZ2lkICJVaCBvaC4gWW91ciBzeXN0ZW0gcmVwb3J0cyBubyBHaXQgY29tbWFuZHMgYXQgYWxsLiIKIG1zZ3N0ciAiT2ggb2guIElsIHR1byBzaXN0ZW1hIG5vbiByaXBvcnRhIGFsY3VuIGNvbWFuZG8gR2l0LiIKIAotIzogaGVscC5jOjM0OQorIzogaGVscC5jOjY3NwogIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iV0FSTklORzogWW91IGNhbGxlZCBhIEdpdCBjb21tYW5kIG5hbWVkICclcycsIHdoaWNoIGRvZXMgbm90IGV4aXN0LlxuIgotIkNvbnRpbnVpbmcgdW5kZXIgdGhlIGFzc3VtcHRpb24gdGhhdCB5b3UgbWVhbnQgJyVzJyIKLW1zZ3N0ciAiIgorbXNnaWQgIldBUk5JTkc6IFlvdSBjYWxsZWQgYSBHaXQgY29tbWFuZCBuYW1lZCAnJXMnLCB3aGljaCBkb2VzIG5vdCBleGlzdC4iCittc2dzdHIgIkFUVEVOWklPTkU6IGhhaSBjaGlhbWF0byB1biBjb21hbmRvIEdpdCAnJXMnIGluZXNpc3RlbnRlLiIKIAotIzogaGVscC5jOjM1NAorIzogaGVscC5jOjY4MgogIywgYy1mb3JtYXQKLW1zZ2lkICJpbiAlMC4xZiBzZWNvbmRzIGF1dG9tYXRpY2FsbHkuLi4iCi1tc2dzdHIgImF1dG9tYXRpY2FtZW50ZSB0cmEgJTAuMWYgc2Vjb25kaS4uLiIKK21zZ2lkICJDb250aW51aW5nIHVuZGVyIHRoZSBhc3N1bXB0aW9uIHRoYXQgeW91IG1lYW50ICclcycuIgorbXNnc3RyICJDb250aW51byBhc3N1bWVuZG8gY2hlIGludGVuZGVzc2kgJyVzJy4iCiAKLSM6IGhlbHAuYzozNjEKKyM6IGhlbHAuYzo2ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29udGludWluZyBpbiAlMC4xZiBzZWNvbmRzLCBhc3N1bWluZyB0aGF0IHlvdSBtZWFudCAnJXMnLiIKK21zZ3N0ciAiQ29udGludW8gZnJhICUwLjFmIHNlY29uZGkgYXNzdW1lbmRvIGNoZSBpbnRlbmRlc3NpICclcycuIgorCisjOiBoZWxwLmM6Njk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdDogJyVzJyBpcyBub3QgYSBnaXQgY29tbWFuZC4gU2VlICdnaXQgLS1oZWxwJy4iCiBtc2dzdHIgImdpdDogJyVzJyBub24gw6ggdW4gY29tYW5kbyBnaXQuIFZlZGkgJ2dpdCAtLWhlbHAnLiIKIAotIzogaGVscC5jOjM2NQorIzogaGVscC5jOjY5OQorbXNnaWQgIiIKKyJcbiIKKyJUaGUgbW9zdCBzaW1pbGFyIGNvbW1hbmQgaXMiCittc2dpZF9wbHVyYWwgIiIKKyJcbiIKKyJUaGUgbW9zdCBzaW1pbGFyIGNvbW1hbmRzIGFyZSIKK21zZ3N0clswXSAiIgorIlxuIgorIklsIGNvbWFuZG8gbWFnZ2lvcm1lbnRlIHNpbWlsZSDDqCIKK21zZ3N0clsxXSAiIgorIlxuIgorIkkgY29tYW5kaSBtYWdnaW9ybWVudGUgc2ltaWxpIHNvbm8iCisKKyM6IGhlbHAuYzo3MTQKK21zZ2lkICJnaXQgdmVyc2lvbiBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHZlcnNpb24gWzxvcHppb25pPl0iCisKKyM6IGhlbHAuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6ICVzIC0gJXMiCittc2dzdHIgIiVzOiAlcyAtICVzIgorCisjOiBoZWxwLmM6Nzg3CiBtc2dpZCAiIgogIlxuIgogIkRpZCB5b3UgbWVhbiB0aGlzPyIKQEAgLTMzNCw0MyArNDI3NywyMTM0IEBACiAiXG4iCiAiSW50ZW5kZXZpIHVubyBkaSBxdWVzdGk/IgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NDkzCisjOiBpZGVudC5jOjM0OQorbXNnaWQgIiIKKyJcbiIKKyIqKiogUGxlYXNlIHRlbGwgbWUgd2hvIHlvdSBhcmUuXG4iCisiXG4iCisiUnVuXG4iCisiXG4iCisiICBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIuZW1haWwgXCJ5b3VAZXhhbXBsZS5jb21cIlxuIgorIiAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLm5hbWUgXCJZb3VyIE5hbWVcIlxuIgorIlxuIgorInRvIHNldCB5b3VyIGFjY291bnQncyBkZWZhdWx0IGlkZW50aXR5LlxuIgorIk9taXQgLS1nbG9iYWwgdG8gc2V0IHRoZSBpZGVudGl0eSBvbmx5IGluIHRoaXMgcmVwb3NpdG9yeS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIioqKiBEaW1taSBjaGkgc2VpLlxuIgorIlxuIgorIkVzZWd1aVxuIgorIlxuIgorIiAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLmVtYWlsIFwidHVAZXNlbXBpby5jb21cIlxuIgorIiAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLm5hbWUgXCJJbCB0dW8gbm9tZVwiXG4iCisiXG4iCisicGVyIGltcG9zdGFyZSBsJ2lkZW50aXTDoCBwcmVkZWZpbml0YSBkZWwgdHVvIGFjY291bnQuXG4iCisiT21ldHRpIC0tZ2xvYmFsIHBlciBpbXBvc3RhcmUgbCdpZGVudGl0w6Agc29sbyBpbiBxdWVzdG8gcmVwb3NpdG9yeS5cbiIKKyJcbiIKKworIzogaWRlbnQuYzozNzkKK21zZ2lkICJubyBlbWFpbCB3YXMgZ2l2ZW4gYW5kIGF1dG8tZGV0ZWN0aW9uIGlzIGRpc2FibGVkIgorbXNnc3RyICIiCisibmVzc3VuIGluZGlyaXp6byBlLW1haWwgc3BlY2lmaWNhdG8gZSByaWxldmFtZW50byBhdXRvbWF0aWNvIGRpc2FiaWxpdGF0byIKKworIzogaWRlbnQuYzozODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGF1dG8tZGV0ZWN0IGVtYWlsIGFkZHJlc3MgKGdvdCAnJXMnKSIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIHJpbGV2YXJlIGF1dG9tYXRpY2FtZW50ZSBsJ2luZGlyaXp6byBlLW1haWwgKGhvIHJpY2F2YXRvICclcycpIgorCisjOiBpZGVudC5jOjQwMQorbXNnaWQgIm5vIG5hbWUgd2FzIGdpdmVuIGFuZCBhdXRvLWRldGVjdGlvbiBpcyBkaXNhYmxlZCIKK21zZ3N0ciAibmVzc3VuIG5vbWUgc3BlY2lmaWNhdG8gZSByaWxldmFtZW50byBhdXRvbWF0aWNvIGRpc2FiaWxpdGF0byIKKworIzogaWRlbnQuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGF1dG8tZGV0ZWN0IG5hbWUgKGdvdCAnJXMnKSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmlsZXZhcmUgYXV0b21hdGljYW1lbnRlIGlsIG5vbWUgKGhvIHJpY2F2YXRvICclcycpIgorCisjOiBpZGVudC5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBpZGVudCBuYW1lIChmb3IgPCVzPikgbm90IGFsbG93ZWQiCittc2dzdHIgIm5vbWUgaWRlbnQgdnVvdG8gKHBlciA8JXM+KSBub24gY29uc2VudGl0byIKKworIzogaWRlbnQuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSBjb25zaXN0cyBvbmx5IG9mIGRpc2FsbG93ZWQgY2hhcmFjdGVyczogJXMiCittc2dzdHIgImlsIG5vbWUgw6ggY29tcG9zdG8gc29sbyBkYSBjYXJhdHRlcmkgbm9uIGNvbnNlbnRpdGk6ICVzIgorCisjOiBpZGVudC5jOjQzNiBidWlsdGluL2NvbW1pdC5jOjYzNQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGRhdGUgZm9ybWF0OiAlcyIKK21zZ3N0ciAiZm9ybWF0byBkYXRhIG5vbiB2YWxpZG86ICVzIgorCisjOiBsaXN0LW9iamVjdHMuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW50cnkgJyVzJyBpbiB0cmVlICVzIGhhcyB0cmVlIG1vZGUsIGJ1dCBpcyBub3QgYSB0cmVlIgorbXNnc3RyICJsYSB2b2NlICclcycgbmVsbCdhbGJlcm8gJXMgaGEgbGEgbW9kYWxpdMOgIGFsYmVybywgbWEgbm9uIMOoIHVuIGFsYmVybyIKKworIzogbGlzdC1vYmplY3RzLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgImVudHJ5ICclcycgaW4gdHJlZSAlcyBoYXMgYmxvYiBtb2RlLCBidXQgaXMgbm90IGEgYmxvYiIKK21zZ3N0ciAibGEgdm9jZSAnJXMnIG5lbGwnYWxiZXJvICVzIGhhIGxhIG1vZGFsaXTDoCBibG9iLCBtYSBub24gw6ggdW4gYmxvYiIKKworIzogbGlzdC1vYmplY3RzLmM6Mzc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb2FkIHJvb3QgdHJlZSBmb3IgY29tbWl0ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjYXJpY2FyZSBsJ2FsYmVybyByYWRpY2UgcGVyIGlsIGNvbW1pdCAlcyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIHNwYXJzZSBibG9iIGluICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGFjY2VkZXJlIGFsIGJsb2Igc3BhcnNlIGluICclcyciCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXIuYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIHNwYXJzZSBmaWx0ZXIgZGF0YSBpbiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBpIGRhdGkgZmlsdHJvIHNwYXJzZSBpbiAlcyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6NTgKK21zZ2lkICJleHBlY3RlZCAndHJlZTo8ZGVwdGg+JyIKK21zZ3N0ciAiYXR0ZXNvICd0cmVlOjxwcm9mb25kaXTDoD4nIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo3MworbXNnaWQgInNwYXJzZTpwYXRoIGZpbHRlcnMgc3VwcG9ydCBoYXMgYmVlbiBkcm9wcGVkIgorbXNnc3RyICJpbCBzdXBwb3J0byBwZXIgaSBmaWx0cmkgc3BhcnNlOnBlcmNvcnNvIMOoIHN0YXRvIHJpbW9zc28iCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgZmlsdGVyLXNwZWMgJyVzJyIKK21zZ3N0ciAic3BlY2lmaWNhdG9yZSBmaWx0cm8gJyVzJyBub24gdmFsaWRvIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVzdCBlc2NhcGUgY2hhciBpbiBzdWItZmlsdGVyLXNwZWM6ICclYyciCittc2dzdHIgIiIKKyLDqCBuZWNlc3NhcmlvIGVzZWd1aXJlIGwnZXNjYXBlIGRlbCBjYXJhdHRlcmUgbmVsbG8gc3BlY2lmaWNhdG9yZSBkZWwgIgorInNvdHRvZmlsdHJvOiAnJWMnIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxNDQKK21zZ2lkICJleHBlY3RlZCBzb21ldGhpbmcgYWZ0ZXIgY29tYmluZToiCittc2dzdHIgImF0dGVzbyBxdWFsY29zYSBkb3BvIGxhIHJpY29tYmluYXppb25lOiIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MjI2Cittc2dpZCAibXVsdGlwbGUgZmlsdGVyLXNwZWNzIGNhbm5vdCBiZSBjb21iaW5lZCIKK21zZ3N0ciAibm9uIMOoIHBvc3NpYmlsZSBjb21iaW5hcmUgcGnDuSBzcGVjaWZpY2F0b3JpIGZpbHRybyIKKworIzogbG9ja2ZpbGUuYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVuYWJsZSB0byBjcmVhdGUgJyVzLmxvY2snOiAlcy5cbiIKKyJcbiIKKyJBbm90aGVyIGdpdCBwcm9jZXNzIHNlZW1zIHRvIGJlIHJ1bm5pbmcgaW4gdGhpcyByZXBvc2l0b3J5LCBlLmcuXG4iCisiYW4gZWRpdG9yIG9wZW5lZCBieSAnZ2l0IGNvbW1pdCcuIFBsZWFzZSBtYWtlIHN1cmUgYWxsIHByb2Nlc3Nlc1xuIgorImFyZSB0ZXJtaW5hdGVkIHRoZW4gdHJ5IGFnYWluLiBJZiBpdCBzdGlsbCBmYWlscywgYSBnaXQgcHJvY2Vzc1xuIgorIm1heSBoYXZlIGNyYXNoZWQgaW4gdGhpcyByZXBvc2l0b3J5IGVhcmxpZXI6XG4iCisicmVtb3ZlIHRoZSBmaWxlIG1hbnVhbGx5IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIkltcG9zc2liaWxlIGNyZWFyZSAnJXMubG9jayc6ICVzLlxuIgorIlxuIgorIlNlbWJyYSBjaGUgdW4gYWx0cm8gcHJvY2Vzc28gZ2l0IHNpYSBpbiBlc2VjdXppb25lIGluIHF1ZXN0byByZXBvc2l0b3J5LCBhZCAiCisiZXMuXG4iCisidW4gZWRpdG9yIGFwZXJ0byBkYSAnZ2l0IGNvbW1pdCcuIEFzc2ljdXJhdGkgY2hlIHR1dHRpIGkgcHJvY2Vzc2lcbiIKKyJzaWFubyB0ZXJtaW5hdGksIHF1aW5kaSByaXByb3ZhLiBTZSBsJ29wZXJhemlvbmUgY29udGludWEgYSBub24gcml1c2NpcmUsIMOoXG4iCisicG9zc2liaWxlIGNoZSB1biBwcm9jZXNzbyBnaXQgc2lhIGFuZGF0byBpbiBjcmFzaCBpbiBxdWVzdG8gcmVwb3NpdG9yeVxuIgorImluIHByZWNlZGVuemE6IHJpbXVvdmkgbWFudWFsbWVudGUgaWwgZmlsZSBwZXIgY29udGludWFyZS4iCisKKyM6IGxvY2tmaWxlLmM6MTU5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBjcmVhdGUgJyVzLmxvY2snOiAlcyIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgY3JlYXJlICclcy5sb2NrJzogJXMiCisKKyM6IG1lcmdlLmM6NDEKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCB0aGUgY2FjaGUiCittc2dzdHIgImxldHR1cmEgZGVsbGEgY2FjaGUgbm9uIHJpdXNjaXRhIgorCisjOiBtZXJnZS5jOjEwNyByZXJlcmUuYzo3MjAgYnVpbHRpbi9hbS5jOjE4NzkgYnVpbHRpbi9hbS5jOjE5MTMKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo1NDEgYnVpbHRpbi9jaGVja291dC5jOjgwMCBidWlsdGluL2Nsb25lLmM6ODEwCisjOiBidWlsdGluL3N0YXNoLmM6MjY1Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSBpbCBudW92byBmaWxlIGluZGV4IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNTYKK21zZ2lkICIoYmFkIGNvbW1pdClcbiIKK21zZ3N0ciAiKGNvbW1pdCBub24gdmFsaWRvKVxuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWRkX2NhY2hlaW5mbyBmYWlsZWQgZm9yIHBhdGggJyVzJzsgbWVyZ2UgYWJvcnRpbmcuIgorbXNnc3RyICJhZGRfY2FjaGVpbmZvIG5vbiByaXVzY2l0byBwZXIgaWwgcGVyY29yc28gJyVzJzsgaW50ZXJyb21wbyBpbCBtZXJnZS4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICJhZGRfY2FjaGVpbmZvIGZhaWxlZCB0byByZWZyZXNoIGZvciBwYXRoICclcyc7IG1lcmdlIGFib3J0aW5nLiIKK21zZ3N0ciAiIgorImFnZ2lvcm5hbWVudG8gYWRkX2NhY2hlaW5mbyBub24gcml1c2NpdG8gcGVyIGlsIHBlcmNvcnNvICclcyc7IGludGVycm9tcG8gaWwgIgorIm1lcmdlLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6ODc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGF0aCAnJXMnJXMiCittc2dzdHIgImNyZWF6aW9uZSBkZWwgcGVyY29yc28gJyVzJyBub24gcml1c2NpdGElcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6ODg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIHRvIG1ha2Ugcm9vbSBmb3Igc3ViZGlyZWN0b3J5XG4iCittc2dzdHIgIlJpbXVvdm8gJXMgcGVyIGZhcmUgc3BhemlvIGFsbGEgc290dG9kaXJlY3RvcnlcbiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6ODk5IG1lcmdlLXJlY3Vyc2l2ZS5jOjkxOAorbXNnaWQgIjogcGVyaGFwcyBhIEQvRiBjb25mbGljdD8iCittc2dzdHIgIjogZm9yc2Ugc2kgdHJhdHRhIGRpIHVuIGNvbmZsaXR0byBEL0Y/IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAnJXMnIgorbXNnc3RyICJtaSByaWZpdXRvIGRpIHBlcmRlcmUgdW4gZmlsZSBub24gdHJhY2NpYXRvIGluICclcyciCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk0OSBidWlsdGluL2NhdC1maWxlLmM6NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgb2JqZWN0ICVzICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgbCdvZ2dldHRvICVzICclcyciCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk1NAorIywgYy1mb3JtYXQKK21zZ2lkICJibG9iIGV4cGVjdGVkIGZvciAlcyAnJXMnIgorbXNnc3RyICJhdHRlc28gYmxvYiBwZXIgJXMgJyVzJyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyc6ICVzIgorbXNnc3RyICJhcGVydHVyYSBkaSAnJXMnIG5vbiByaXVzY2l0YTogJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk5MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3ltbGluayAnJXMnOiAlcyIKK21zZ3N0ciAiY3JlYXppb25lIGRlbCBjb2xsZWdhbWVudG8gc2ltYm9saWNvICclcycgbm9uIHJpdXNjaXRhOiAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTk1CisjLCBjLWZvcm1hdAorbXNnaWQgImRvIG5vdCBrbm93IHdoYXQgdG8gZG8gd2l0aCAlMDZvICVzICclcyciCittc2dzdHIgIm5vbiBzbyBjaGUgZmFyZSBjb24gJTA2byAlcyAnJXMnIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMTkxCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG5vdCBjaGVja2VkIG91dCkiCittc2dzdHIgIk1lcmdlIGRlbCBzb3R0b21vZHVsbyAlcyBub24gcml1c2NpdG8gKGNoZWNrb3V0IG5vbiBlc2VndWl0bykiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjExOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAoY29tbWl0cyBub3QgcHJlc2VudCkiCittc2dzdHIgIk1lcmdlIGRlbCBzb3R0b21vZHVsbyAlcyBub24gcml1c2NpdG8gKGNvbW1pdCBub24gcHJlc2VudGkpIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKGNvbW1pdHMgZG9uJ3QgZm9sbG93IG1lcmdlLWJhc2UpIgorbXNnc3RyICIiCisiTWVyZ2UgZGVsIHNvdHRvbW9kdWxvICVzIG5vbiByaXVzY2l0byAoaSBjb21taXQgbm9uIHNlZ3Vvbm8gbGEgYmFzZSBkZWwgIgorIm1lcmdlKSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxMyBtZXJnZS1yZWN1cnNpdmUuYzoxMjI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMgdG8gdGhlIGZvbGxvd2luZyBjb21taXQ6IgorbXNnc3RyICJFc2VndW8gaWwgZmFzdCBmb3J3YXJkIGRlbCBzb3R0b21vZHVsbyAlcyBhbCBzZWd1ZW50ZSBjb21taXQ6IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjE2IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFzdC1mb3J3YXJkaW5nIHN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiRXNlZ3VvIGlsIGZhc3QgZm9yd2FyZCBkZWwgc290dG9tb2R1bG8gJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobWVyZ2UgZm9sbG93aW5nIGNvbW1pdHMgbm90IGZvdW5kKSIKK21zZ3N0ciAiIgorIk1lcmdlIGRlbCBzb3R0b21vZHVsbyAlcyBub24gcml1c2NpdG8gKG1lcmdlIGRvcG8gaSBjb21taXQgbm9uIHRyb3ZhdG8pIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG5vdCBmYXN0LWZvcndhcmQpIgorbXNnc3RyICJNZXJnZSBkZWwgc290dG9tb2R1bG8gJXMgbm9uIHJpdXNjaXRvIChub24gZmFzdCBmb3J3YXJkKSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1NgorbXNnaWQgIkZvdW5kIGEgcG9zc2libGUgbWVyZ2UgcmVzb2x1dGlvbiBmb3IgdGhlIHN1Ym1vZHVsZTpcbiIKK21zZ3N0ciAiVHJvdmF0YSBwb3NzaWJpbGUgcmlzb2x1emlvbmUgbWVyZ2UgcGVyIGlsIHNvdHRvbW9kdWxvOlxuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJJZiB0aGlzIGlzIGNvcnJlY3Qgc2ltcGx5IGFkZCBpdCB0byB0aGUgaW5kZXggZm9yIGV4YW1wbGVcbiIKKyJieSB1c2luZzpcbiIKKyJcbiIKKyIgIGdpdCB1cGRhdGUtaW5kZXggLS1jYWNoZWluZm8gMTYwMDAwICVzIFwiJXNcIlxuIgorIlxuIgorIndoaWNoIHdpbGwgYWNjZXB0IHRoaXMgc3VnZ2VzdGlvbi5cbiIKK21zZ3N0ciAiIgorIlNlIMOoIGNvcnJldHRhIGFnZ2l1bmdpbGEgc2VtcGxpY2VtZW50ZSBhbGwnaW5kaWNlLCBhZCBlc2VtcGlvXG4iCisidXNhbmRvOlxuIgorIlxuIgorIiAgZ2l0IHVwZGF0ZS1pbmRleCAtLWNhY2hlaW5mbyAxNjAwMDAgJXMgXCIlc1wiXG4iCisiXG4iCisicGVyIGFjY2V0dGFyZSBxdWVzdG8gc3VnZ2VyaW1lbnRvLlxuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG11bHRpcGxlIG1lcmdlcyBmb3VuZCkiCittc2dzdHIgIk1lcmdlIGRlbCBzb3R0b21vZHVsbyAlcyBub24gcml1c2NpdG8gKHBpw7kgbWVyZ2UgdHJvdmF0aSkiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNDEKK21zZ2lkICJGYWlsZWQgdG8gZXhlY3V0ZSBpbnRlcm5hbCBtZXJnZSIKK21zZ3N0ciAiRXNlY3V6aW9uZSBkZWwgbWVyZ2UgaW50ZXJubyBub24gcml1c2NpdGEiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGFkZCAlcyB0byBkYXRhYmFzZSIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgYWdnaXVuZ2VyZSAlcyBhbCBkYXRhYmFzZSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM3OAorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRvLW1lcmdpbmcgJXMiCittc2dzdHIgIk1lcmdlIGF1dG9tYXRpY28gZGkgJXMgaW4gY29yc28iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXJyb3I6IFJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXM7IHdyaXRpbmcgdG8gJXMgaW5zdGVhZC4iCittc2dzdHIgIiIKKyJFcnJvcmU6IG1pIHJpZml1dG8gZGkgcGVyZGVyZSBpbCBmaWxlIG5vbiB0cmFjY2lhdG8gJXM7IHNjcml2byBpbnZlY2UgaW4gJXMuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgbGVmdCAiCisiaW4gdHJlZS4iCittc2dzdHIgIiIKKyJDT05GTElUVE8gKCVzL2VsaW1pbmF6aW9uZSk6ICVzIGVsaW1pbmF0byBpbiAlcyBlICVzIGluICVzLiBWZXJzaW9uZSAlcyBkaSAiCisiJXMgbGFzY2lhdGEgbmVsbCdhbGJlcm8uIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDc5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgdG8gJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgIgorImxlZnQgaW4gdHJlZS4iCittc2dzdHIgIiIKKyJDT05GTElUVE8gKCVzL2VsaW1pbmF6aW9uZSk6ICVzIGVsaW1pbmF0byBpbiAlcyBlICVzIGNvbWUgJXMgaW4gJXMuIFZlcnNpb25lICIKKyIlcyBkaSAlcyBsYXNjaWF0YSBuZWxsJ2FsYmVyby4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0ICIKKyJpbiB0cmVlIGF0ICVzLiIKK21zZ3N0ciAiIgorIkNPTkZMSVRUTyAoJXMvZWxpbWluYXppb25lKTogJXMgZWxpbWluYXRvIGluICVzIGUgJXMgaW4gJXMuIFZlcnNpb25lICVzIGRpICIKKyIlcyBsYXNjaWF0YSBuZWxsJ2FsYmVybyBpbiAlcy4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyB0byAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyAiCisibGVmdCBpbiB0cmVlIGF0ICVzLiIKK21zZ3N0ciAiIgorIkNPTkZMSVRUTyAoJXMvZWxpbWluYXppb25lKTogJXMgZWxpbWluYXRvIGluICVzIGUgJXMgY29tZSAlcyBpbiAlcy4gVmVyc2lvbmUgIgorIiVzIGRpICVzIGxhc2NpYXRhIG5lbGwnYWxiZXJvIGluICVzLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUyNgorbXNnaWQgInJlbmFtZSIKK21zZ3N0ciAicmlkZW5vbWluYXppb25lIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTI2Cittc2dpZCAicmVuYW1lZCIKK21zZ3N0ciAicmlub21pbmF0byIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTU3NyBtZXJnZS1yZWN1cnNpdmUuYzoyNDcyIG1lcmdlLXJlY3Vyc2l2ZS5jOjMxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSBkaXJ0eSBmaWxlIGF0ICVzIgorbXNnc3RyICJNaSByaWZpdXRvIGRpIHBlcmRlcmUgdW4gZmlsZSBzcG9yY28gaW4gJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlcywgZXZlbiB0aG91Z2ggaXQncyBpbiB0aGUgd2F5LiIKK21zZ3N0ciAiIgorIk1pIHJpZml1dG8gZGkgcGVyZGVyZSB1biBmaWxlIG5vbiB0cmFjY2lhdG8gaW4gJXMsIGJlbmNow6kgc2lhIGQnb3N0YWNvbG8uIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUIChyZW5hbWUvYWRkKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gIEFkZGVkICVzIGluICVzIgorbXNnc3RyICIiCisiQ09ORkxJVFRPIChyaWRlbm9taW5hemlvbmUvYWdnaXVudGEpOiBlbGVtZW50byByaWRlbm9taW5hdG8gJXMtPiVzIGluICVzLiAlcyAiCisiYWdnaXVudG8gaW4gJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgYSBkaXJlY3RvcnkgaW4gJXMgYWRkaW5nIGFzICVzIGluc3RlYWQiCittc2dzdHIgIiVzIMOoIHVuYSBkaXJlY3RvcnkgaW4gJXM7IGxhIGFnZ2l1bmdvIGNvbWUgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlczsgYWRkaW5nIGFzICVzIGluc3RlYWQiCittc2dzdHIgIk1pIHJpZml1dG8gZGkgcGVyZGVyZSB1biBmaWxlIG5vbiB0cmFjY2lhdG8gaW4gJXM7IGxvIGFnZ2l1bmdvIGNvbWUgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIFwiJXNcIi0+XCIlc1wiIGluIGJyYW5jaCBcIiVzXCIgcmVuYW1lIFwiJXMiCisiXCItPlwiJXNcIiBpbiBcIiVzXCIlcyIKK21zZ3N0ciAiIgorIkNPTkZMSVRUTyAocmlkZW5vbWluYXppb25lL3JpZGVub21pbmF6aW9uZSk6IGZpbGUgcmlkZW5vbWluYXRvIFwiJXNcIi0+XCIlcyIKKyJcIiBuZWwgYnJhbmNoIFwiJXNcIiwgcmlkZW5vbWluYXRvIFwiJXNcIi0+XCIlc1wiIGluIFwiJXNcIiVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzEzCittc2dpZCAiIChsZWZ0IHVucmVzb2x2ZWQpIgorbXNnc3RyICIgKGxhc2NpYXRvIGlycmlzb2x0bykiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiBSZW5hbWUgJXMtPiVzIGluICVzLiBSZW5hbWUgJXMtPiVzIGluICVzIgorbXNnc3RyICIiCisiQ09ORkxJVFRPIChyaWRlbm9taW5hemlvbmUvcmlkZW5vbWluYXppb25lKTogZmlsZSByaWRlbm9taW5hdG8gJXMtPiVzIGluICVzLiAiCisiUmlkZW5vbWluYXRvICVzLT4lcyBpbiAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjA1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGRpcmVjdG9yeSByZW5hbWUgc3BsaXQpOiBVbmNsZWFyIHdoZXJlIHRvIHBsYWNlICVzIGJlY2F1c2UgIgorImRpcmVjdG9yeSAlcyB3YXMgcmVuYW1lZCB0byBtdWx0aXBsZSBvdGhlciBkaXJlY3Rvcmllcywgd2l0aCBubyBkZXN0aW5hdGlvbiAiCisiZ2V0dGluZyBhIG1ham9yaXR5IG9mIHRoZSBmaWxlcy4iCittc2dzdHIgIiIKKyJDT05GTElUVE8gKHNwbGl0IHJpZGVub21pbmF6aW9uZSBkaXJlY3RvcnkpOiBub24gw6ggY2hpYXJvIGRvdmUgY29sbG9jYXJlICVzICIKKyJwZXJjaMOpIGxhIGRpcmVjdG9yeSAlcyDDqCBzdGF0YSByaWRlbm9taW5hdGEgaW4gcGnDuSBkaXJlY3RvcnkgZGl2ZXJzZSBlICIKKyJuZXNzdW5hIGRpcmVjdG9yeSBkaSBkZXN0aW5hemlvbmUgY29udGllbmUgbGEgbWFnZ2lvciBwYXJ0ZSBkZWkgZmlsZS4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogRXhpc3RpbmcgZmlsZS9kaXIgYXQgJXMgaW4gdGhlIHdheSBvZiAiCisiaW1wbGljaXQgZGlyZWN0b3J5IHJlbmFtZShzKSBwdXR0aW5nIHRoZSBmb2xsb3dpbmcgcGF0aChzKSB0aGVyZTogJXMuIgorbXNnc3RyICIiCisiQ09ORkxJVFRPIChyaWRlbm9taW5hemlvbmUgZGlyZWN0b3J5IGltcGxpY2l0YSk6IGlsIGZpbGUvZGlyZWN0b3J5IGVzaXN0ZW50ZSAiCisiJXMgw6ggZCdvc3RhY29sbyBhbGxlIHNlZ3VlbnRpIHJpZGVub21pbmF6aW9uaSBkaXJlY3RvcnkgY2hlIHNwb3N0YW5vIGluIHRhbGUgIgorInBvc2l6aW9uZSBpIHNlZ3VlbnRpIHBlcmNvcnNpOiAlcy4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogQ2Fubm90IG1hcCBtb3JlIHRoYW4gb25lIHBhdGggdG8gJXM7ICIKKyJpbXBsaWNpdCBkaXJlY3RvcnkgcmVuYW1lcyB0cmllZCB0byBwdXQgdGhlc2UgcGF0aHMgdGhlcmU6ICVzIgorbXNnc3RyICIiCisiQ09ORkxJVFRPIChyaWRlbm9taW5hemlvbmUgZGlyZWN0b3J5IGltcGxpY2l0YSk6IGltcG9zc2liaWxlIG1hcHBhcmUgcGnDuSBkaSAiCisidW4gcGVyY29yc28gaW4gJXM7IGRlbGxlIHJpZGVub21pbmF6aW9uaSBkaXJlY3RvcnkgaW1wbGljaXRlIGhhbm5vIHRlbnRhdG8gIgorImRpIHNwb3N0YXJlIGluIHRhbGUgcG9zaXppb25lIGkgc2VndWVudGkgcGVyY29yc2k6ICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAocmVuYW1lL3JlbmFtZSk6IFJlbmFtZSBkaXJlY3RvcnkgJXMtPiVzIGluICVzLiBSZW5hbWUgZGlyZWN0b3J5ICVzLSIKKyI+JXMgaW4gJXMiCittc2dzdHIgIiIKKyJDT05GTElUVE8gKHJpZGVub21pbmF6aW9uZS9yaWRlbm9taW5hemlvbmUpOiBkaXJlY3RvcnkgcmlkZW5vbWluYXRhICVzLT4lcyAiCisiaW4gJXMuIERpcmVjdG9yeSByaWRlbm9taW5hdGEgJXMtPiVzIGluICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyNDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXQVJOSU5HOiBBdm9pZGluZyBhcHBseWluZyAlcyAtPiAlcyByZW5hbWUgdG8gJXMsIGJlY2F1c2UgJXMgaXRzZWxmIHdhcyAiCisicmVuYW1lZC4iCittc2dzdHIgIiIKKyJBVFRFTlpJT05FOiBldml0byBkaSBhcHBsaWNhcmUgbGEgcmlkZW5vbWluYXppb25lICVzIC0+ICVzIGEgJXMgcGVyY2jDqSAlcyAiCisic3Rlc3NvIMOoIHN0YXRvIHJpZGVub21pbmF0by4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgb2JqZWN0ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGwnb2dnZXR0byAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjk2NAorIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgJXMgaXMgbm90IGEgYmxvYiIKK21zZ3N0ciAibCdvZ2dldHRvICVzIG5vbiDDqCB1biBibG9iIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDI4Cittc2dpZCAibW9kaWZ5IgorbXNnc3RyICJtb2RpZmljYSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAyOAorbXNnaWQgIm1vZGlmaWVkIgorbXNnc3RyICJtb2RpZmljYXRvIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDQwCittc2dpZCAiY29udGVudCIKK21zZ3N0ciAiY29udGVudXRvIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDQ0Cittc2dpZCAiYWRkL2FkZCIKK21zZ3N0ciAiYWdnaXVudGEvYWdnaXVudGEiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBlZCAlcyAobWVyZ2VkIHNhbWUgYXMgZXhpc3RpbmcpIgorbXNnc3RyICJPbWVzc28gJXMgKGVsZW1lbnRvIHNvdHRvcG9zdG8gYSBtZXJnZSB1Z3VhbGUgYSBxdWVsbG8gZXNpc3RlbnRlKSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA4OSBnaXQtc3VibW9kdWxlLnNoOjEwMDMKK21zZ2lkICJzdWJtb2R1bGUiCittc2dzdHIgInNvdHRvbW9kdWxvIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUICglcyk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgorbXNnc3RyICJDT05GTElUVE8gKCVzKTogY29uZmxpdHRvIGRpIG1lcmdlIGluICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyBhcyAlcyBpbnN0ZWFkIgorbXNnc3RyICJMbyBhZ2dpdW5nbyBjb21lICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYXRoIHVwZGF0ZWQ6ICVzIGFkZGVkIGluICVzIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkIGluICVzOyAiCisibW92aW5nIGl0IHRvICVzLiIKK21zZ3N0ciAiIgorIlBlcmNvcnNvIGFnZ2lvcm5hdG86ICVzIGFnZ2l1bnRvIGluICVzIGluIHVuYSBkaXJlY3RvcnkgcmlkZW5vbWluYXRhIGluICVzOyAiCisibG8gc3Bvc3RvIGluICVzLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGZpbGUgbG9jYXRpb24pOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCAiCisiaW4gJXMsIHN1Z2dlc3RpbmcgaXQgc2hvdWxkIHBlcmhhcHMgYmUgbW92ZWQgdG8gJXMuIgorbXNnc3RyICIiCisiQ09ORkxJVFRPIChwb3NpemlvbmUgZmlsZSk6ICVzIGFnZ2l1bnRvIGluICVzIGluIHVuYSBkaXJlY3RvcnkgcmlkZW5vbWluYXRhICIKKyJpbiAlcywgaWwgY2hlIHN1Z2dlcmlzY2UgY2hlIGZvcnNlIGRvdnJlYmJlIGVzc2VyZSBzcG9zdGF0byBpbiAlcy4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhdGggdXBkYXRlZDogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgd2FzIHJlbmFtZWQgaW4gIgorIiVzOyBtb3ZpbmcgaXQgdG8gJXMuIgorbXNnc3RyICIiCisiUGVyY29yc28gYWdnaW9ybmF0bzogJXMgcmlkZW5vbWluYXRvIGluICVzIGluICVzIGluIHVuYSBkaXJlY3RvcnkgIgorInJpZGVub21pbmF0YSBpbiAlczsgbG8gc3Bvc3RvIGluICVzLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGZpbGUgbG9jYXRpb24pOiAlcyByZW5hbWVkIHRvICVzIGluICVzLCBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCAiCisid2FzIHJlbmFtZWQgaW4gJXMsIHN1Z2dlc3RpbmcgaXQgc2hvdWxkIHBlcmhhcHMgYmUgbW92ZWQgdG8gJXMuIgorbXNnc3RyICIiCisiQ09ORkxJVFRPIChwb3NpemlvbmUgZmlsZSk6ICVzIHJpZGVub21pbmF0byBpbiAlcyBpbiAlcyBpbiB1bmEgZGlyZWN0b3J5ICIKKyJyaWRlbm9taW5hdGEgaW4gJXMsIGlsIGNoZSBzdWdnZXJpc2NlIGNoZSBmb3JzZSBkb3ZyZWJiZSBlc3NlcmUgc3Bvc3RhdG8gaW4gIgorIiVzLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMyNworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlcyIKK21zZ3N0ciAiUmltb3ppb25lIGRpICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzUwCittc2dpZCAiZmlsZS9kaXJlY3RvcnkiCittc2dzdHIgImZpbGUvZGlyZWN0b3J5IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzU1Cittc2dpZCAiZGlyZWN0b3J5L2ZpbGUiCittc2dzdHIgImRpcmVjdG9yeS9maWxlIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUICglcyk6IFRoZXJlIGlzIGEgZGlyZWN0b3J5IHdpdGggbmFtZSAlcyBpbiAlcy4gQWRkaW5nICVzIGFzICVzIgorbXNnc3RyICIiCisiQ09ORkxJVFRPICglcyk6IHVuYSBkaXJlY3RvcnkgZGVub21pbmF0YSAlcyBlc2lzdGUgZ2nDoCBpbiAlcy4gQWdnaXVuZ28gJXMgIgorImNvbWUgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nICVzIgorbXNnc3RyICJBZ2dpdW50YSAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM4MAorIywgYy1mb3JtYXQKK21zZ2lkICJDT05GTElDVCAoYWRkL2FkZCk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgorbXNnc3RyICJDT05GTElUVE8gKGFnZ2l1bmdpL2FnZ2l1bmdpKTogY29uZmxpdHRvIGRpIG1lcmdlIGluICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNDI0Cittc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlISIKK21zZ3N0ciAiR2nDoCBhZ2dpb3JuYXRvISIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQzMworIywgYy1mb3JtYXQKK21zZ2lkICJtZXJnaW5nIG9mIHRyZWVzICVzIGFuZCAlcyBmYWlsZWQiCittc2dzdHIgIm1lcmdlIGRlZ2xpIGFsYmVyaSAlcyBlICVzIG5vbiByaXVzY2l0byIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzNworbXNnaWQgIk1lcmdpbmc6IgorbXNnc3RyICJNZXJnZSBpbiBjb3JzbzoiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yOiIKK21zZ2lkX3BsdXJhbCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yczoiCittc2dzdHJbMF0gInRyb3ZhdG8gJXUgYW50ZW5hdG8gY29tdW5lOiIKK21zZ3N0clsxXSAidHJvdmF0aSAldSBhbnRlbmF0aSBjb211bmk6IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjAwCittc2dpZCAibWVyZ2UgcmV0dXJuZWQgbm8gY29tbWl0IgorbXNnc3RyICJpbCBtZXJnZSBub24gaGEgcmVzdGl0dWl0byBhbGN1biBjb21taXQiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgorIiAgJXMiCittc2dzdHIgIiIKKyJMZSB0dWUgbW9kaWZpY2hlIGxvY2FsaSBhaSBzZWd1ZW50aSBmaWxlIHNhcmViYmVybyBzb3ZyYXNjcml0dGUgZGFsIG1lcmdlOlxuIgorIiAgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnIgorbXNnc3RyICJJbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGwnb2dnZXR0byAnJXMnIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNzc0IGJ1aWx0aW4vbWVyZ2UuYzo2OTcgYnVpbHRpbi9tZXJnZS5jOjg3NworbXNnaWQgIlVuYWJsZSB0byB3cml0ZSBpbmRleC4iCittc2dzdHIgIkltcG9zc2liaWxlIHNjcml2ZXJlIGwnaW5kaWNlLiIKKworIzogbWlkeC5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpLXBhY2staW5kZXggZmlsZSAlcyBpcyB0b28gc21hbGwiCittc2dzdHIgImlsIGZpbGUgbXVsdGktcGFjay1pbmRleCAlcyDDqCB0cm9wcG8gcGljY29sbyIKKworIzogbWlkeC5jOjg0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpLXBhY2staW5kZXggc2lnbmF0dXJlIDB4JTA4eCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgMHglMDh4IgorbXNnc3RyICJsYSBmaXJtYSBkZWwgbXVsdGktcGFjay1pbmRleCAweCUwOHggbm9uIGNvcnJpc3BvbmRlIGFsbGEgZmlybWEgMHglMDh4IgorCisjOiBtaWR4LmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGktcGFjay1pbmRleCB2ZXJzaW9uICVkIG5vdCByZWNvZ25pemVkIgorbXNnc3RyICJ2ZXJzaW9uZSAlZCBtdWx0aS1wYWNrLWluZGV4IG5vbiByaWNvbm9zY2l1dGEiCisKKyM6IG1pZHguYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICJoYXNoIHZlcnNpb24gJXUgZG9lcyBub3QgbWF0Y2giCittc2dzdHIgImxhIHZlcnNpb25lIGRlbGwnaGFzaCAldSBub24gY29ycmlzcG9uZGUiCisKKyM6IG1pZHguYzoxMDgKK21zZ2lkICJpbnZhbGlkIGNodW5rIG9mZnNldCAodG9vIGxhcmdlKSIKK21zZ3N0ciAib2Zmc2V0IGJsb2NjbyBub24gdmFsaWRvICh0cm9wcG8gZ3JhbmRlKSIKKworIzogbWlkeC5jOjEzMgorbXNnaWQgInRlcm1pbmF0aW5nIG11bHRpLXBhY2staW5kZXggY2h1bmsgaWQgYXBwZWFycyBlYXJsaWVyIHRoYW4gZXhwZWN0ZWQiCittc2dzdHIgImwnSUQgYmxvY2NvIGZpbmFsZSBtdWx0aS1wYWNrLWluZGV4IGNvbXBhcmUgcHJpbWEgZGkgcXVhbnRvIHByZXZpc3RvIgorCisjOiBtaWR4LmM6MTQ1Cittc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIHBhY2stbmFtZSBjaHVuayIKK21zZ3N0ciAiZGFsIG11bHRpLXBhY2staW5kZXggbWFuY2EgaWwgYmxvY2NvIHJpY2hpZXN0byBwYWNrLW5hbWUiCisKKyM6IG1pZHguYzoxNDcKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgT0lEIGZhbm91dCBjaHVuayIKK21zZ3N0ciAiZGFsIG11bHRpLXBhY2staW5kZXggbWFuY2EgaWwgYmxvY2NvIHJpY2hpZXN0byBmYW5vdXQgT0lEIgorCisjOiBtaWR4LmM6MTQ5Cittc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIE9JRCBsb29rdXAgY2h1bmsiCittc2dzdHIgImRhbCBtdWx0aS1wYWNrLWluZGV4IG1hbmNhIGlsIGJsb2NjbyByaWNoaWVzdG8gbG9va3VwIE9JRCIKKworIzogbWlkeC5jOjE1MQorbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBvYmplY3Qgb2Zmc2V0cyBjaHVuayIKK21zZ3N0ciAiZGFsIG11bHRpLXBhY2staW5kZXggbWFuY2EgaWwgYmxvY2NvIHJpY2hpZXN0byBvZmZzZXQgb2dnZXR0aSIKKworIzogbWlkeC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHBhY2sgbmFtZXMgb3V0IG9mIG9yZGVyOiAnJXMnIGJlZm9yZSAnJXMnIgorbXNnc3RyICJub21pIHBhY2sgbXVsdGktcGFjay1pbmRleCBpbiBkaXNvcmRpbmU6ICclcycgYXBwYXJlIHByaW1hIGRpICclcyciCisKKyM6IG1pZHguYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHBhY2staW50LWlkOiAldSAoJXUgdG90YWwgcGFja3MpIgorbXNnc3RyICJwYWNrLWludC1pZCBub24gdmFsaWRvOiAldSAoJXUgcGFjayB0b3RhbGkpIgorCisjOiBtaWR4LmM6MjYwCittc2dpZCAibXVsdGktcGFjay1pbmRleCBzdG9yZXMgYSA2NC1iaXQgb2Zmc2V0LCBidXQgb2ZmX3QgaXMgdG9vIHNtYWxsIgorbXNnc3RyICIiCisibmVsIG11bHRpLXBhY2staW5kZXggw6ggc2FsdmF0byB1biBvZmZzZXQgYSA2NCBiaXQsIG1hIG9mZl90IMOoIHRyb3BwbyBwaWNjb2xvIgorCisjOiBtaWR4LmM6Mjg4Cittc2dpZCAiZXJyb3IgcHJlcGFyaW5nIHBhY2tmaWxlIGZyb20gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAiZXJyb3JlIGR1cmFudGUgbGEgcHJlcGFyYXppb25lIGRlbCBwYWNrZmlsZSBkYWwgbXVsdGktcGFjay1pbmRleCIKKworIzogbWlkeC5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gYWRkIHBhY2tmaWxlICclcyciCittc2dzdHIgImFnZ2l1bnRhIGRlbCBwYWNrZmlsZSAnJXMnIG5vbiByaXVzY2l0YSIKKworIzogbWlkeC5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrLWluZGV4ICclcyciCittc2dzdHIgImFwZXJ0dXJhIGRlbCBwYWNrLWluZGV4ICclcycgbm9uIHJpdXNjaXRhIgorCisjOiBtaWR4LmM6NTM4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsb2NhdGUgb2JqZWN0ICVkIGluIHBhY2tmaWxlIgorbXNnc3RyICJyaWNlcmNhIGRlbGwnb2dnZXR0byAlZCBuZWwgcGFja2ZpbGUgbm9uIHJpdXNjaXRhIgorCisjOiBtaWR4LmM6ODQyCittc2dpZCAiQWRkaW5nIHBhY2tmaWxlcyB0byBtdWx0aS1wYWNrLWluZGV4IgorbXNnc3RyICJBZ2dpdW50YSBkZWkgZmlsZSBwYWNrIGFsIG11bHRpLXBhY2staW5kZXggaW4gY29yc28iCisKKyM6IG1pZHguYzo4NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIG5vdCBzZWUgcGFjay1maWxlICVzIHRvIGRyb3AiCittc2dzdHIgIm5vbiBobyB2aXN0byBpbCBmaWxlIHBhY2sgJXMgZGEgc2NhcnRhcmUiCisKKyM6IG1pZHguYzo5NzMKK21zZ2lkICJXcml0aW5nIGNodW5rcyB0byBtdWx0aS1wYWNrLWluZGV4IgorbXNnc3RyICJTY3JpdHR1cmEgZGVpIGNodW5rIG5lbCBtdWx0aS1wYWNrLWluZGV4IGluIGNvcnNvIgorCisjOiBtaWR4LmM6MTA1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xlYXIgbXVsdGktcGFjay1pbmRleCBhdCAlcyIKK21zZ3N0ciAicHVsaXppYSBkZWwgbXVsdGktcGFjay1pbmRleCAlcyBub24gcml1c2NpdGEiCisKKyM6IG1pZHguYzoxMTA4Cittc2dpZCAiTG9va2luZyBmb3IgcmVmZXJlbmNlZCBwYWNrZmlsZXMiCittc2dzdHIgIlJpY2VyY2EgZGkgZmlsZSBwYWNrIHJlZmVyZW56aWF0aSBpbiBjb3JzbyIKKworIzogbWlkeC5jOjExMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9pZCBmYW5vdXQgb3V0IG9mIG9yZGVyOiBmYW5vdXRbJWRdID0gJTxQUkl4MzI+ID4gJTxQUkl4MzI+ID0gZmFub3V0WyVkXSIKK21zZ3N0ciAiIgorImZhbm91dCBvaWQgaW4gZGlzb3JkaW5lOiBmYW5vdXRbJWRdID0gJTxQUkl4MzI+ID4gJTxQUkl4MzI+ID0gZmFub3V0WyVkXSIKKworIzogbWlkeC5jOjExMjgKK21zZ2lkICJWZXJpZnlpbmcgT0lEIG9yZGVyIGluIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIlZlcmlmaWNhIG9yZGluZSBPSUQgbmVsIG11bHRpLXBhY2staW5kZXggaW4gY29yc28iCisKKyM6IG1pZHguYzoxMTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIm9pZCBsb29rdXAgb3V0IG9mIG9yZGVyOiBvaWRbJWRdID0gJXMgPj0gJXMgPSBvaWRbJWRdIgorbXNnc3RyICJsb29rdXAgb2lkIGluIGRpc29yZGluZTogb2lkWyVkXSA9ICVzID49ICVzID0gb2lkWyVkXSIKKworIzogbWlkeC5jOjExNTcKK21zZ2lkICJTb3J0aW5nIG9iamVjdHMgYnkgcGFja2ZpbGUiCittc2dzdHIgIk9yZGluYW1lbnRvIGRlZ2xpIG9nZ2V0dGkgbmVsIHBhY2tmaWxlIGluIGNvcnNvIgorCisjOiBtaWR4LmM6MTE2NAorbXNnaWQgIlZlcmlmeWluZyBvYmplY3Qgb2Zmc2V0cyIKK21zZ3N0ciAiVmVyaWZpY2Egb2Zmc2V0IG9nZ2V0dGkgaW4gY29yc28iCisKKyM6IG1pZHguYzoxMTgwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsb2FkIHBhY2sgZW50cnkgZm9yIG9pZFslZF0gPSAlcyIKK21zZ3N0ciAiY2FyaWNhbWVudG8gdm9jZSBwYWNrIHBlciBvaWRbJWRdID0gJXMgbm9uIHJpdXNjaXRvIgorCisjOiBtaWR4LmM6MTE4NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbG9hZCBwYWNrLWluZGV4IGZvciBwYWNrZmlsZSAlcyIKK21zZ3N0ciAiY2FyaWNhbWVudG8gcGFjay1pbmRleCBwZXIgaWwgcGFja2ZpbGUgJXMgbm9uIHJpdXNjaXRvIgorCisjOiBtaWR4LmM6MTE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbmNvcnJlY3Qgb2JqZWN0IG9mZnNldCBmb3Igb2lkWyVkXSA9ICVzOiAlPFBSSXg2ND4gIT0gJTxQUkl4NjQ+IgorbXNnc3RyICJvZmZzZXQgb2dnZXR0byBub24gY29ycmV0dG8gcGVyIG9pZFslZF0gPSAlczogJTxQUkl4NjQ+ICE9ICU8UFJJeDY0PiIKKworIzogbWlkeC5jOjEyMjAKK21zZ2lkICJDb3VudGluZyByZWZlcmVuY2VkIG9iamVjdHMiCittc2dzdHIgIkNvbnRlZ2dpbyBkZWdsaSBvZ2dldHRpIHJlZmVyZW56aWF0aSBpbiBjb3JzbyIKKworIzogbWlkeC5jOjEyMzAKK21zZ2lkICJGaW5kaW5nIGFuZCBkZWxldGluZyB1bnJlZmVyZW5jZWQgcGFja2ZpbGVzIgorbXNnc3RyICJSaWNlcmNhIGVkIGVsaW1pbmF6aW9uZSBkZWkgZmlsZSBwYWNrIG5vbiByZWZlcmVuemlhdGkgaW4gY29yc28iCisKKyM6IG1pZHguYzoxMzg4Cittc2dpZCAiY291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXZ2aWFyZSBwYWNrLW9iamVjdHMiCisKKyM6IG1pZHguYzoxNDA3Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCBwYWNrLW9iamVjdHMiCittc2dzdHIgImltcG9zc2liaWxlIGZpbmlyZSBwYWNrLW9iamVjdHMiCisKKyM6IG5hbWUtaGFzaC5jOjUzNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxhenlfZGlyIHRocmVhZDogJXMiCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSBpbCB0aHJlYWQgbGF6eV9kaXI6ICVzIgorCisjOiBuYW1lLWhhc2guYzo1NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsYXp5X25hbWUgdGhyZWFkOiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIGlsIHRocmVhZCBsYXp5X25hbWU6ICVzIgorCisjOiBuYW1lLWhhc2guYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGpvaW4gbGF6eV9uYW1lIHRocmVhZDogJXMiCittc2dzdHIgImltcG9zc2liaWxlIGJsb2NjYXJlIGlsIHRocmVhZCBsYXp5X25hbWU6ICVzIgorCisjOiBub3Rlcy1tZXJnZS5jOjI3NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIHByZXZpb3VzIG5vdGVzIG1lcmdlICglcyBleGlzdHMpLlxuIgorIlBsZWFzZSwgdXNlICdnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXQnIG9yICdnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCcgdG8gIgorImNvbW1pdC9hYm9ydCB0aGUgcHJldmlvdXMgbWVyZ2UgYmVmb3JlIHlvdSBzdGFydCBhIG5ldyBub3RlcyBtZXJnZS4iCittc2dzdHIgIiIKKyJOb24gaGFpIGNvbmNsdXNvIGlsIG1lcmdlIGRlbGxlIG5vdGUgcHJlY2VkZW50ZSAoJXMgZXNpc3RlKS5cbiIKKyJVc2EgJ2dpdCBub3RlcyBtZXJnZSAtLWNvbW1pdCcgbyAnZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQnIHBlciBlc2VndWlyZSBpbCAiCisiY29tbWl0L2ludGVycm9tcGVyZSBpbCBtZXJnZSBwcmVjZWRlbnRlIHByaW1hIGRpIGluaXppYXJlIHVuIG51b3ZvIG1lcmdlICIKKyJkZWxsZSBub3RlLiIKKworIzogbm90ZXMtbWVyZ2UuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG5vdGVzIG1lcmdlICglcyBleGlzdHMpLiIKK21zZ3N0ciAiTm9uIGhhaSBjb25jbHVzbyBpbCBtZXJnZSBkZWxsZSBub3RlICglcyBlc2lzdGUpLiIKKworIzogbm90ZXMtdXRpbHMuYzo0NgorbXNnaWQgIkNhbm5vdCBjb21taXQgdW5pbml0aWFsaXplZC91bnJlZmVyZW5jZWQgbm90ZXMgdHJlZSIKK21zZ3N0ciAiIgorIkltcG9zc2liaWxlIGVzZWd1aXJlIGlsIGNvbW1pdCBkaSB1biBhbGJlcm8gZGVsbGUgbm90ZSBub24gaW5pemlhbGl6emF0by9ub24gIgorInJlZmVyZW56aWF0byIKKworIzogbm90ZXMtdXRpbHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmFkIG5vdGVzLnJld3JpdGVNb2RlIHZhbHVlOiAnJXMnIgorbXNnc3RyICJWYWxvcmUgZGkgbm90ZXMucmV3cml0ZU1vZGUgZXJyYXRvOiAnJXMnIgorCisjOiBub3Rlcy11dGlscy5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJSZWZ1c2luZyB0byByZXdyaXRlIG5vdGVzIGluICVzIChvdXRzaWRlIG9mIHJlZnMvbm90ZXMvKSIKK21zZ3N0ciAiTWkgcmlmaXV0byBkaSByaXNjcml2ZXJlIGxlIG5vdGUgaW4gJXMgKGFsIGRpIGZ1b3JpIGRpIHJlZnMvbm90ZXMvKSIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBmaXJzdCAlcyBpcyB0aGUgbmFtZSBvZgorIy4gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlLCB0aGUgc2Vjb25kICVzIGlzCisjLiBpdHMgdmFsdWUuCisjLgorIzogbm90ZXMtdXRpbHMuYzoxNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmFkICVzIHZhbHVlOiAnJXMnIgorbXNnc3RyICJWYWxvcmUgZGkgJXMgZXJyYXRvOiAnJXMnIgorCisjOiBvYmplY3QuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG9iamVjdCB0eXBlIFwiJXNcIiIKK21zZ3N0ciAidGlwbyBvZ2dldHRvIFwiJXNcIiBub24gdmFsaWRvIgorCisjOiBvYmplY3QuYzoxNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0ICVzIGlzIGEgJXMsIG5vdCBhICVzIgorbXNnc3RyICJsJ29nZ2V0dG8gJXMgw6ggdW4gJXMsIG5vbiB1biAlcyIKKworIzogb2JqZWN0LmM6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCAlcyBoYXMgdW5rbm93biB0eXBlIGlkICVkIgorbXNnc3RyICJsJ29nZ2V0dG8gJXMgaGEgbCdJRCB0aXBvIHNjb25vc2NpdXRvICVkIgorCisjOiBvYmplY3QuYzoyNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIG9iamVjdDogJXMiCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgbCdvZ2dldHRvOiAlcyIKKworIzogb2JqZWN0LmM6MjY2IG9iamVjdC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJoYXNoIG1pc21hdGNoICVzIgorbXNnc3RyICJoYXNoIG5vbiBjb3JyaXNwb25kZW50ZTogJXMiCisKKyM6IHBhY2tmaWxlLmM6NjI5Cittc2dpZCAib2Zmc2V0IGJlZm9yZSBlbmQgb2YgcGFja2ZpbGUgKGJyb2tlbiAuaWR4PykiCittc2dzdHIgIm9mZnNldCBjb2xsb2NhdG8gcHJpbWEgZGVsbGEgZmluZSBkZWwgcGFja2ZpbGUgKC5pZHggY29ycm90dG8/KSIKKworIzogcGFja2ZpbGUuYzoxODk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm9mZnNldCBiZWZvcmUgc3RhcnQgb2YgcGFjayBpbmRleCBmb3IgJXMgKGNvcnJ1cHQgaW5kZXg/KSIKK21zZ3N0ciAiIgorIm9mZnNldCBjb2xsb2NhdG8gcHJpbWEgZGVsbCdpbml6aW8gZGVsbCdpbmRpY2UgcGFjayBwZXIgJXMgKGluZGljZSBjb3Jyb3R0bz8pIgorCisjOiBwYWNrZmlsZS5jOjE5MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Zmc2V0IGJleW9uZCBlbmQgb2YgcGFjayBpbmRleCBmb3IgJXMgKHRydW5jYXRlZCBpbmRleD8pIgorbXNnc3RyICIiCisib2Zmc2V0IGNvbGxvY2F0byBkb3BvIGxhIGZpbmUgZGVsbCdpbmRpY2UgcGFjayBwZXIgJXMgKGluZGljZSB0cm9uY2F0bz8pIgorCisjOiBwYWNrLWJpdG1hcC5jOjgwMCBwYWNrLWJpdG1hcC5jOjgwNiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGdldCBzaXplIG9mICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSByZWN1cGVyYXJlIGxlIGRpbWVuc2lvbmkgZGkgJXMiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzozOAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZXF1aXJlcyBhIHZhbHVlIgorbXNnc3RyICIlcyByaWNoaWVkZSB1biB2YWxvcmUiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAlcyIKK21zZ3N0ciAiJXMgbm9uIMOoIGNvbXBhdGliaWxlIGNvbiAlcyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIDogaW5jb21wYXRpYmxlIHdpdGggc29tZXRoaW5nIGVsc2UiCittc2dzdHIgIiVzIG5vbiDDqCBjb21wYXRpYmlsZSBjb24gcXVhbGNvcydhbHRybyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjkyIHBhcnNlLW9wdGlvbnMuYzo5NiBwYXJzZS1vcHRpb25zLmM6MzE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRha2VzIG5vIHZhbHVlIgorbXNnc3RyICIlcyBub24gcmljaGllZGUgdW4gdmFsb3JlIgorCisjOiBwYXJzZS1vcHRpb25zLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXNuJ3QgYXZhaWxhYmxlIgorbXNnc3RyICIlcyBub24gw6ggZGlzcG9uaWJpbGUiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzoyMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIHZhbHVlIHdpdGggYW4gb3B0aW9uYWwgay9tL2cgc3VmZml4IgorbXNnc3RyICIiCisiJXMgcmljaGllZGUgdW4gdmFsb3JlIGludGVybyBub24gbmVnYXRpdm8gY29uIHVuIHN1ZmZpc3NvIGsvbS9nIGZhY29sdGF0aXZvIgorCisjOiBwYXJzZS1vcHRpb25zLmM6Mzg2CisjLCBjLWZvcm1hdAorbXNnaWQgImFtYmlndW91cyBvcHRpb246ICVzIChjb3VsZCBiZSAtLSVzJXMgb3IgLS0lcyVzKSIKK21zZ3N0ciAib3B6aW9uZSBhbWJpZ3VhOiAlcyAocG90cmViYmUgZXNzZXJlIC0tJXMlcyBvIC0tJXMlcykiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo0MjAgcGFyc2Utb3B0aW9ucy5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJkaWQgeW91IG1lYW4gYC0tJXNgICh3aXRoIHR3byBkYXNoZXMpPyIKK21zZ3N0ciAiZm9yc2UgaW50ZW5kZXZpIGAtLSVzYCAoY29uIGR1ZSB0cmF0dGluaSk/IgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgIm9wemlvbmUgc2Nvbm9zY2l1dGEgYCVzJyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHN3aXRjaCBgJWMnIgorbXNnc3RyICJvcHppb25lIGAlY2Agc2Nvbm9zY2l1dGEiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBub24tYXNjaWkgb3B0aW9uIGluIHN0cmluZzogYCVzJyIKK21zZ3N0ciAib3B6aW9uZSBub24gQVNDSUkgc2Nvbm9zY2l1dGEgcHJlc2VudGUgbmVsbGEgc3RyaW5nYTogYCVzJyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg4NQogbXNnaWQgIi4uLiIKIG1zZ3N0ciAiLi4uIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NTExCisjOiBwYXJzZS1vcHRpb25zLmM6OTA0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVzYWdlOiAlcyIKLW1zZ3N0ciAiICAgdXNvOiAlcyIKK21zZ3N0ciAidXNvOiAlcyIKIAogIy4gVFJBTlNMQVRPUlM6IHRoZSBjb2xvbiBoZXJlIHNob3VsZCBhbGlnbiB3aXRoIHRoZQotIy4gb25lIGluICJ1c2FnZTogJXMiIHRyYW5zbGF0aW9uCi0jOiBwYXJzZS1vcHRpb25zLmM6NTE1CisjLiBvbmUgaW4gInVzYWdlOiAlcyIgdHJhbnNsYXRpb24uCisjLgorIzogcGFyc2Utb3B0aW9ucy5jOjkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICBvcjogJXMiCi1tc2dzdHIgIm9wcHVyZTogJXMiCittc2dzdHIgIiAgb3BwdXJlOiAlcyIKIAotIzogcGFyc2Utb3B0aW9ucy5jOjUxOAorIzogcGFyc2Utb3B0aW9ucy5jOjkxMwogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJXMiCiBtc2dzdHIgIiAgICAlcyIKIAotIzogcmVtb3RlLmM6MTYyOQorIzogcGFyc2Utb3B0aW9ucy5jOjk1MgorbXNnaWQgIi1OVU0iCittc2dzdHIgIi1OVU0iCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo5NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWxpYXMgb2YgLS0lcyIKK21zZ3N0ciAiYWxpYXMgZGkgLS0lcyIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjIwIHBhcnNlLW9wdGlvbnMtY2IuYzoyNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICJsJ29wemlvbmUgYCVzJyByaWNoaWVkZSB1biB2YWxvcmUgbnVtZXJpY28iCisKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzo0MQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgZXhwaXJhdGlvbiBkYXRlICclcyciCittc2dzdHIgImRhdGEgc2NhZGVuemEgJyVzJyBtYWxmb3JtYXRhIgorCisjOiBwYXJzZS1vcHRpb25zLWNiLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBcImFsd2F5c1wiLCBcImF1dG9cIiwgb3IgXCJuZXZlclwiIgorbXNnc3RyICJsJ29wemlvbmUgYCVzJyByaWNoaWVkZSBcImFsd2F5c1wiLCBcImF1dG9cIiBvIFwibmV2ZXJcIiIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjEzMCBwYXJzZS1vcHRpb25zLWNiLmM6MTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAnJXMnIgorbXNnc3RyICJub21lIG9nZ2V0dG8gJyVzJyBtYWxmb3JtYXRvIgorCisjOiBwYXRoLmM6OTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBtYWtlICVzIHdyaXRhYmxlIGJ5IGdyb3VwIgorbXNnc3RyICJJbXBvc3NpYmlsZSByZW5kZXJlICVzIHNjcml2aWJpbGUgZGFsIGdydXBwbyIKKworIzogcGF0aHNwZWMuYzoxMzAKK21zZ2lkICJFc2NhcGUgY2hhcmFjdGVyICdcXCcgbm90IGFsbG93ZWQgYXMgbGFzdCBjaGFyYWN0ZXIgaW4gYXR0ciB2YWx1ZSIKK21zZ3N0ciAiIgorIkNhcmF0dGVyZSBkaSBlc2NhcGUgJ1xcJyBub24gY29uc2VudGl0byBjb21lIHVsdGltbyBjYXJhdHRlcmUgZGVsIHZhbG9yZSAiCisiYXR0cmlidXRvIgorCisjOiBwYXRoc3BlYy5jOjE0OAorbXNnaWQgIk9ubHkgb25lICdhdHRyOicgc3BlY2lmaWNhdGlvbiBpcyBhbGxvd2VkLiIKK21zZ3N0ciAiw4ggY29uc2VudGl0YSBzb2xvIHVuYSBzcGVjaWZpY2EgJ2F0dHI6Jy4iCisKKyM6IHBhdGhzcGVjLmM6MTUxCittc2dpZCAiYXR0ciBzcGVjIG11c3Qgbm90IGJlIGVtcHR5IgorbXNnc3RyICJsYSBzcGVjaWZpY2EgYXR0ciBub24gZGV2ZSBlc3NlcmUgdnVvdGEiCisKKyM6IHBhdGhzcGVjLmM6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgYXR0cmlidXRlIG5hbWUgJXMiCittc2dzdHIgIm5vbWUgYXR0cmlidXRvICVzIG5vbiB2YWxpZG8iCisKKyM6IHBhdGhzcGVjLmM6MjU5Cittc2dpZCAiZ2xvYmFsICdnbG9iJyBhbmQgJ25vZ2xvYicgcGF0aHNwZWMgc2V0dGluZ3MgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiIgorImxlIGltcG9zdGF6aW9uaSBnbG9iYWxpIHNwZWNpZmljYXRvcmUgcGVyY29yc28gJ2dsb2InIGUgJ25vZ2xvYicgbm9uIHNvbm8gIgorImNvbXBhdGliaWxpIgorCisjOiBwYXRoc3BlYy5jOjI2NgorbXNnaWQgIiIKKyJnbG9iYWwgJ2xpdGVyYWwnIHBhdGhzcGVjIHNldHRpbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggYWxsIG90aGVyIGdsb2JhbCAiCisicGF0aHNwZWMgc2V0dGluZ3MiCittc2dzdHIgIiIKKyJsJ2ltcG9zdGF6aW9uZSBnbG9iYWxlIHNwZWNpZmljYXRvcmUgcGVyY29yc28gJ2xpdGVyYWwnIMOoIGluY29tcGF0aWJpbGUgY29uICIKKyJ0dXR0ZSBsZSBhbHRyZSBpbXBvc3RhemlvbmkgZ2xvYmFsaSBzcGVjaWZpY2F0b3JlIHBlcmNvcnNvIgorCisjOiBwYXRoc3BlYy5jOjMwNgorbXNnaWQgImludmFsaWQgcGFyYW1ldGVyIGZvciBwYXRoc3BlYyBtYWdpYyAncHJlZml4JyIKK21zZ3N0ciAicGFyYW1ldHJvIHBlciBpbCBtYWdpYyBzcGVjaWZpY2F0b3JlIHBlcmNvcnNvICdwcmVmaXgnIG5vbiB2YWxpZG8iCisKKyM6IHBhdGhzcGVjLmM6MzI3CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgcGF0aHNwZWMgbWFnaWMgJyUuKnMnIGluICclcyciCittc2dzdHIgIk1hZ2ljIHNwZWNpZmljYXRvcmUgcGVyY29yc28gJyUuKnMnIGluICclcycgbm9uIHZhbGlkbyIKKworIzogcGF0aHNwZWMuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWlzc2luZyAnKScgYXQgdGhlIGVuZCBvZiBwYXRoc3BlYyBtYWdpYyBpbiAnJXMnIgorbXNnc3RyICInKScgbWFuY2FudGUgYWxsYSBmaW5lIGRlbCBtYWdpYyBzcGVjaWZpY2F0b3JlIHBlcmNvcnNvIGluICclcyciCisKKyM6IHBhdGhzcGVjLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgIlVuaW1wbGVtZW50ZWQgcGF0aHNwZWMgbWFnaWMgJyVjJyBpbiAnJXMnIgorbXNnc3RyICJNYWdpYyBzcGVjaWZpY2F0b3JlIHBlcmNvcnNvICclYycgaW4gJyVzJyBub24gaW1wbGVtZW50YXRvIgorCisjOiBwYXRoc3BlYy5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogJ2xpdGVyYWwnIGFuZCAnZ2xvYicgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiJXM6ICdsaXRlcmFsJyBlICdnbG9iJyBub24gc29ubyBjb21wYXRpYmlsaSIKKworIzogcGF0aHNwZWMuYzo0NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6ICclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IGF0ICclcyciCittc2dzdHIgIiVzOiAnJXMnIMOoIGFsIGRpIGZ1b3JpIGRlbCByZXBvc2l0b3J5IGluICclcyciCisKKyM6IHBhdGhzcGVjLmM6NTE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgKG1uZW1vbmljOiAnJWMnKSIKK21zZ3N0ciAiJyVzJyAob3B6aW9uZSBtbmVtb25pY2E6ICclYycpIgorCisjOiBwYXRoc3BlYy5jOjUyNworIywgYy1mb3JtYXQKK21zZ2lkICIlczogcGF0aHNwZWMgbWFnaWMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvbW1hbmQ6ICVzIgorbXNnc3RyICIlczogbWFnaWMgc3BlY2lmaWNhdG9yZSBwZXJjb3JzbyBub24gc3VwcG9ydGF0byBkYSBxdWVzdG8gY29tYW5kbzogJXMiCisKKyM6IHBhdGhzcGVjLmM6NTk0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGhzcGVjICclcycgaXMgYmV5b25kIGEgc3ltYm9saWMgbGluayIKK21zZ3N0ciAiIgorImxvIHNwZWNpZmljYXRvcmUgcGVyY29yc28gJyVzJyBzaSB0cm92YSBvbHRyZSB1biBjb2xsZWdhbWVudG8gc2ltYm9saWNvIgorCisjOiBwYXRoc3BlYy5jOjYzOQorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIGlzIGJhZGx5IHF1b3RlZDogJXMiCittc2dzdHIgImxhIHJpZ2Egbm9uIMOoIGJlbiByYWNjaGl1c2EgdHJhIHZpcmdvbGV0dGU6ICVzIgorCisjOiBwa3QtbGluZS5jOjkyCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZsdXNoIHBhY2tldCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgaWwgcGFjY2hldHRvIGZsdXNoIgorCisjOiBwa3QtbGluZS5jOjk5Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGRlbGltIHBhY2tldCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgaWwgcGFjY2hldHRvIGRlbGltIgorCisjOiBwa3QtbGluZS5jOjEwNgorbXNnaWQgImZsdXNoIHBhY2tldCB3cml0ZSBmYWlsZWQiCittc2dzdHIgInNjcml0dHVyYSBjb24gZmx1c2ggcGFjY2hldHRvIG5vbiByaXVzY2l0YSIKKworIzogcGt0LWxpbmUuYzoxNDYgcGt0LWxpbmUuYzoyMzIKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogaW1wb3NzaWJseSBsb25nIGxpbmUiCittc2dzdHIgImVycm9yZSBwcm90b2NvbGxvOiByaWdhIGltcG9zc2liaWxtZW50ZSBsdW5nYSIKKworIzogcGt0LWxpbmUuYzoxNjIgcGt0LWxpbmUuYzoxNjQKK21zZ2lkICJwYWNrZXQgd3JpdGUgd2l0aCBmb3JtYXQgZmFpbGVkIgorbXNnc3RyICJzY3JpdHR1cmEgcGFjY2hldHRvIGNvbiBmb3JtYXRvIG5vbiByaXVzY2l0YSIKKworIzogcGt0LWxpbmUuYzoxOTYKK21zZ2lkICJwYWNrZXQgd3JpdGUgZmFpbGVkIC0gZGF0YSBleGNlZWRzIG1heCBwYWNrZXQgc2l6ZSIKK21zZ3N0ciAiIgorInNjcml0dHVyYSBwYWNjaGV0dG8gbm9uIHJpdXNjaXRhIC0gaSBkYXRpIHNvbm8gcGnDuSBkZWxsYSBkaW1lbnNpb25lIG1hc3NpbWEgIgorInBhY2NoZXR0byIKKworIzogcGt0LWxpbmUuYzoyMDMgcGt0LWxpbmUuYzoyMTAKK21zZ2lkICJwYWNrZXQgd3JpdGUgZmFpbGVkIgorbXNnc3RyICJzY3JpdHR1cmEgcGFjY2hldHRvIG5vbiByaXVzY2l0YSIKKworIzogcGt0LWxpbmUuYzoyOTUKK21zZ2lkICJyZWFkIGVycm9yIgorbXNnc3RyICJlcnJvcmUgZGkgbGV0dHVyYSIKKworIzogcGt0LWxpbmUuYzozMDMKK21zZ2lkICJ0aGUgcmVtb3RlIGVuZCBodW5nIHVwIHVuZXhwZWN0ZWRseSIKK21zZ3N0ciAibCdpbnRlcmxvY3V0b3JlIHJlbW90byBoYSBjaGl1c28gaW5hc3BldHRhdGFtZW50ZSBsYSBjb25uZXNzaW9uZSIKKworIzogcGt0LWxpbmUuYzozMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBsaW5lIGxlbmd0aCBjaGFyYWN0ZXI6ICUuNHMiCittc2dzdHIgImVycm9yZSBwcm90b2NvbGxvOiBjYXJhdHRlcmUgbHVuZ2hlenphIHJpZ2Egbm9uIHZhbGlkbzogJS40cyIKKworIzogcGt0LWxpbmUuYzozNDEgcGt0LWxpbmUuYzozNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBsaW5lIGxlbmd0aCAlZCIKK21zZ3N0ciAiZXJyb3JlIHByb3RvY29sbG86IGx1bmdoZXp6YSByaWdhIG5vbiB2YWxpZGE6ICVkIgorCisjOiBwa3QtbGluZS5jOjM2MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdGUgZXJyb3I6ICVzIgorbXNnc3RyICJlcnJvcmUgcmVtb3RvOiAlcyIKKworIzogcHJlbG9hZC1pbmRleC5jOjExOQorbXNnaWQgIlJlZnJlc2hpbmcgaW5kZXgiCittc2dzdHIgIkFnZ2lvcm5hbWVudG8gaW5kaWNlIGluIGNvcnNvIgorCisjOiBwcmVsb2FkLWluZGV4LmM6MTM4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGhyZWFkZWQgbHN0YXQ6ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgbHN0YXQgaW4gdmVyc2lvbmUgdGhyZWFkZWQ6ICVzIgorCisjOiBwcmV0dHkuYzo5ODEKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgLS1wcmV0dHkgZm9ybWF0IgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGlsIGZvcm1hdG8gLS1wcmV0dHkiCisKKyM6IHByb21pc29yLXJlbW90ZS5jOjIzCittc2dpZCAiUmVtb3RlIHdpdGggbm8gVVJMIgorbXNnc3RyICJSZW1vdG8gc2VuemEgVVJMIgorCisjOiBwcm9taXNvci1yZW1vdGUuYzo1OAorIywgYy1mb3JtYXQKK21zZ2lkICJwcm9taXNvciByZW1vdGUgbmFtZSBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIgorbXNnc3RyICJpbCBub21lIGRlbCByZW1vdG8gcHJvbWV0dGVudGUgbm9uIHB1w7IgaW5pemlhcmUgY29uICcvJzogJXMiCisKKyM6IHJhbmdlLWRpZmYuYzo3NQorbXNnaWQgImNvdWxkIG5vdCBzdGFydCBgbG9nYCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXZ2aWFyZSBgbG9nYCIKKworIzogcmFuZ2UtZGlmZi5jOjc3Cittc2dpZCAiY291bGQgbm90IHJlYWQgYGxvZ2Agb3V0cHV0IgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGwnb3V0cHV0IGRpIGBsb2dgIgorCisjOiByYW5nZS1kaWZmLmM6OTYgc2VxdWVuY2VyLmM6NTAyMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0ICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgaWwgY29tbWl0ICclcyciCisKKyM6IHJhbmdlLWRpZmYuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGdpdCBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGwnaGVhZGVyIEdpdCAnJS4qcyciCisKKyM6IHJhbmdlLWRpZmYuYzoyODUKK21zZ2lkICJmYWlsZWQgdG8gZ2VuZXJhdGUgZGlmZiIKK21zZ3N0ciAiZ2VuZXJhemlvbmUgZGVsIGRpZmYgbm9uIHJpdXNjaXRhIgorCisjOiByYW5nZS1kaWZmLmM6NTE4IHJhbmdlLWRpZmYuYzo1MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGxvZyBmb3IgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBpbCByZWdpc3RybyBkaSAnJXMnIgorCisjOiByZWFkLWNhY2hlLmM6NjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIndpbGwgbm90IGFkZCBmaWxlIGFsaWFzICclcycgKCclcycgYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgpIgorbXNnc3RyICJub24gYWdnaXVuZ2Vyw7IgbCdhbGlhcyBmaWxlICclcycgKCclcycgZXNpc3RlIGdpw6AgbmVsbCdpbmRpY2UpIgorCisjOiByZWFkLWNhY2hlLmM6Njk2Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBhbiBlbXB0eSBibG9iIGluIHRoZSBvYmplY3QgZGF0YWJhc2UiCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSB1biBibG9iIHZ1b3RvIG5lbCBkYXRhYmFzZSBvZ2dldHRpIgorCisjOiByZWFkLWNhY2hlLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW4gb25seSBhZGQgcmVndWxhciBmaWxlcywgc3ltYm9saWMgbGlua3Mgb3IgZ2l0LWRpcmVjdG9yaWVzIgorbXNnc3RyICIiCisiJXM6IMOoIHBvc3NpYmlsZSBhZ2dpdW5nZXJlIHNvbG8gZmlsZSByZWdvbGFyaSwgY29sbGVnYW1lbnRpIHNpbWJvbGljaSBvICIKKyJkaXJlY3RvcnkgR2l0IgorCisjOiByZWFkLWNhY2hlLmM6NzIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgaGF2ZSBhIGNvbW1pdCBjaGVja2VkIG91dCIKK21zZ3N0ciAiJyVzJyBub24gaGEgdW4gY29tbWl0IGRpIGN1aSDDqCBzdGF0byBlc2VndWl0byBpbCBjaGVja291dCIKKworIzogcmVhZC1jYWNoZS5jOjc3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5kZXggZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBpbmRpY2l6emFyZSBpbCBmaWxlICclcyciCisKKyM6IHJlYWQtY2FjaGUuYzo3OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFkZCAnJXMnIHRvIGluZGV4IgorbXNnc3RyICJpbXBvc3NpYmlsZSBhZ2dpdW5nZXJlICclcycgYWxsJ2luZGljZSIKKworIzogcmVhZC1jYWNoZS5jOjgwNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBzdGF0IHN1ICclcyciCisKKyM6IHJlYWQtY2FjaGUuYzoxMzMwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgYXBwZWFycyBhcyBib3RoIGEgZmlsZSBhbmQgYXMgYSBkaXJlY3RvcnkiCittc2dzdHIgIiclcycgY29tcGFyZSBzaWEgY29tZSBmaWxlIHNpYSBjb21lIGRpcmVjdG9yeSIKKworIzogcmVhZC1jYWNoZS5jOjE1MzYKK21zZ2lkICJSZWZyZXNoIGluZGV4IgorbXNnc3RyICJBZ2dpb3JuYW1lbnRvIGluZGljZSIKKworIzogcmVhZC1jYWNoZS5jOjE2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluZGV4LnZlcnNpb24gc2V0LCBidXQgdGhlIHZhbHVlIGlzIGludmFsaWQuXG4iCisiVXNpbmcgdmVyc2lvbiAlaSIKK21zZ3N0ciAiIgorImluZGV4LnZlcnNpb24gaW1wb3N0YXRvLCBtYSBpbCB2YWxvcmUgbm9uIMOoIHZhbGlkby5cbiIKKyJVc28gbGEgdmVyc2lvbmUgJWkiCisKKyM6IHJlYWQtY2FjaGUuYzoxNjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJHSVRfSU5ERVhfVkVSU0lPTiBzZXQsIGJ1dCB0aGUgdmFsdWUgaXMgaW52YWxpZC5cbiIKKyJVc2luZyB2ZXJzaW9uICVpIgorbXNnc3RyICIiCisiR0lUX0lOREVYX1ZFUlNJT04gaW1wb3N0YXRvLCBtYSBpbCB2YWxvcmUgbm9uIMOoIHZhbGlkby5cbiIKKyJVc28gbGEgdmVyc2lvbmUgJWkiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzE3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaWduYXR1cmUgMHglMDh4IgorbXNnc3RyICJmaXJtYSBub24gdmFsaWRhOiAweCUwOHgiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzIwCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBpbmRleCB2ZXJzaW9uICVkIgorbXNnc3RyICJ2ZXJzaW9uZSBpbmRpY2Ugbm9uIHZhbGlkYTogJWQiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzI5Cittc2dpZCAiYmFkIGluZGV4IGZpbGUgc2hhMSBzaWduYXR1cmUiCittc2dzdHIgImZpcm1hIFNIQTEgZmlsZSBpbmRpY2Ugbm9uIHZhbGlkYSIKKworIzogcmVhZC1jYWNoZS5jOjE3NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5kZXggdXNlcyAlLjRzIGV4dGVuc2lvbiwgd2hpY2ggd2UgZG8gbm90IHVuZGVyc3RhbmQiCittc2dzdHIgImwnaW5kaWNlIHVzYSBsJ2VzdGVuc2lvbmUgJS40cyBjaGUgbm9uIGNvbXByZW5kaWFtbyIKKworIzogcmVhZC1jYWNoZS5jOjE3NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJS40cyBleHRlbnNpb24iCittc2dzdHIgImVzdGVuc2lvbmUgJS40cyBpZ25vcmF0YSIKKworIzogcmVhZC1jYWNoZS5jOjE3OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBpbmRleCBlbnRyeSBmb3JtYXQgMHglMDh4IgorbXNnc3RyICJmb3JtYXRvIHZvY2UgaW5kaWNlIHNjb25vc2NpdXRvOiAweCUwOHgiCisKKyM6IHJlYWQtY2FjaGUuYzoxODE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBuYW1lIGZpZWxkIGluIHRoZSBpbmRleCwgbmVhciBwYXRoICclcyciCittc2dzdHIgImNhbXBvIG5vbWUgbWFsZm9ybWF0byBuZWxsJ2luZGljZSwgdmljaW5vIGFsIHBlcmNvcnNvICclcyciCisKKyM6IHJlYWQtY2FjaGUuYzoxODcxCittc2dpZCAidW5vcmRlcmVkIHN0YWdlIGVudHJpZXMgaW4gaW5kZXgiCittc2dzdHIgInZvY2kgc3RhZ2Ugbm9uIG9yZGluYXRlIG5lbGwnaW5kaWNlIgorCisjOiByZWFkLWNhY2hlLmM6MTg3NAorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGFnZSBlbnRyaWVzIGZvciBtZXJnZWQgZmlsZSAnJXMnIgorbXNnc3RyICJ2b2NpIHN0YWdlIG11bHRpcGxlIHBlciBpbCBmaWxlIHNvdHRvcG9zdG8gYSBtZXJnZSAnJXMnIgorCisjOiByZWFkLWNhY2hlLmM6MTg3NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBmb3IgJyVzJyIKK21zZ3N0ciAidm9jaSBzdGFnZSBub24gb3JkaW5hdGUgcGVyICclcyciCisKKyM6IHJlYWQtY2FjaGUuYzoxOTgzIHJlYWQtY2FjaGUuYzoyMjcxIHJlcmVyZS5jOjU2NSByZXJlcmUuYzo1OTkgcmVyZXJlLmM6MTExMQorIzogc3VibW9kdWxlLmM6MTYxOSBidWlsdGluL2FkZC5jOjUzMiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE4MQorIzogYnVpbHRpbi9jaGVja291dC5jOjQ3MCBidWlsdGluL2NoZWNrb3V0LmM6NjU2IGJ1aWx0aW4vY2xlYW4uYzo5NjcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzY3IGJ1aWx0aW4vZGlmZi10cmVlLmM6MTIwIGJ1aWx0aW4vZ3JlcC5jOjQ4NQorIzogYnVpbHRpbi9tdi5jOjE0NSBidWlsdGluL3Jlc2V0LmM6MjQ2IGJ1aWx0aW4vcm0uYzoyOTAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzozMzIKK21zZ2lkICJpbmRleCBmaWxlIGNvcnJ1cHQiCittc2dzdHIgImZpbGUgaW5kaWNlIGNvcnJvdHRvIgorCisjOiByZWFkLWNhY2hlLmM6MjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxvYWRfY2FjaGVfZW50cmllcyB0aHJlYWQ6ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgaWwgdGhyZWFkIGxvYWRfY2FjaGVfZW50cmllczogJXMiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTM3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBqb2luIGxvYWRfY2FjaGVfZW50cmllcyB0aHJlYWQ6ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBibG9jY2FyZSBpbCB0aHJlYWQgbG9hZF9jYWNoZV9lbnRyaWVzOiAlcyIKKworIzogcmVhZC1jYWNoZS5jOjIxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGluZGV4IGZpbGUgb3BlbiBmYWlsZWQiCittc2dzdHIgIiVzOiBhcGVydHVyYSBkZWwgZmlsZSBpbmRpY2Ugbm9uIHJpdXNjaXRhIgorCisjOiByZWFkLWNhY2hlLmM6MjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2Fubm90IHN0YXQgdGhlIG9wZW4gaW5kZXgiCittc2dzdHIgIiVzOiBpbXBvc3NpYmlsZSBlc2VndWlyZSBzdGF0IHN1bGwnaW5kaWNlIGFwZXJ0byIKKworIzogcmVhZC1jYWNoZS5jOjIxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGluZGV4IGZpbGUgc21hbGxlciB0aGFuIGV4cGVjdGVkIgorbXNnc3RyICIlczogZmlsZSBpbmRpY2UgcGnDuSBwaWNjb2xvIGRlbGxhIGRpbWVuc2lvbmUgYXR0ZXNhIgorCisjOiByZWFkLWNhY2hlLmM6MjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG1hcCBpbmRleCBmaWxlIgorbXNnc3RyICIlczogaW1wb3NzaWJpbGUgbWFwcGFyZSBpbCBmaWxlIGluZGljZSIKKworIzogcmVhZC1jYWNoZS5jOjIyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsb2FkX2luZGV4X2V4dGVuc2lvbnMgdGhyZWFkOiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIGlsIHRocmVhZCBsb2FkX2luZGV4X2V4dGVuc2lvbnM6ICVzIgorCisjOiByZWFkLWNhY2hlLmM6MjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gam9pbiBsb2FkX2luZGV4X2V4dGVuc2lvbnMgdGhyZWFkOiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYmxvY2NhcmUgaWwgdGhyZWFkIGxvYWRfaW5kZXhfZXh0ZW5zaW9uczogJXMiCisKKyM6IHJlYWQtY2FjaGUuYzoyMjgzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmcmVzaGVuIHNoYXJlZCBpbmRleCAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhZ2dpb3JuYXJlIGwnaW5kaWNlIGNvbmRpdmlzbyAnJXMnIgorCisjOiByZWFkLWNhY2hlLmM6MjMzMAorIywgYy1mb3JtYXQKK21zZ2lkICJicm9rZW4gaW5kZXgsIGV4cGVjdCAlcyBpbiAlcywgZ290ICVzIgorbXNnc3RyICJpbmRpY2UgY29ycm90dG8sIGF0dGVzbyAlcyBpbiAlcywgcHJlc2VudGUgJXMiCisKKyM6IHJlYWQtY2FjaGUuYzozMDI2IHN0cmJ1Zi5jOjExNjAgd3JhcHBlci5jOjYyMiBidWlsdGluL21lcmdlLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY2xvc2UgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY2hpdWRlcmUgJyVzJyIKKworIzogcmVhZC1jYWNoZS5jOjMxMjkgc2VxdWVuY2VyLmM6MjM0MyBzZXF1ZW5jZXIuYzozOTU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0ICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGxvIHN0YXQgZGkgJyVzJyIKKworIzogcmVhZC1jYWNoZS5jOjMxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZ2l0IGRpcjogJXMiCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBsYSBkaXJlY3RvcnkgZ2l0OiAlcyIKKworIzogcmVhZC1jYWNoZS5jOjMxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVubGluazogJXMiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIHVubGluazogJXMiCisKKyM6IHJlYWQtY2FjaGUuYzozMTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmaXggcGVybWlzc2lvbiBiaXRzIG9uICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGNvcnJlZ2dlcmUgaSBwZXJtZXNzaSBkaSAnJXMnIgorCisjOiByZWFkLWNhY2hlLmM6MzMyOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2Fubm90IGRyb3AgdG8gc3RhZ2UgIzAiCittc2dzdHIgIiVzOiBpbXBvc3NpYmlsZSByaXBpZWdhcmUgc3VsbG8gc3RhZGlvIDAiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjExCittc2dpZCAiIgorIllvdSBjYW4gZml4IHRoaXMgd2l0aCAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tIgorImNvbnRpbnVlJy5cbiIKKyJPciB5b3UgY2FuIGFib3J0IHRoZSByZWJhc2Ugd2l0aCAnZ2l0IHJlYmFzZSAtLWFib3J0Jy5cbiIKK21zZ3N0ciAiIgorIlB1b2kgY29ycmVnZ2VyZSBxdWVzdGEgc2l0dWF6aW9uZSBjb24gJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIGUgcXVpbmRpICIKKyJlc2VndWlyZSAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJy5cbiIKKyJPcHB1cmUgcHVvaSBpbnRlcnJvbXBlcmUgaWwgcmViYXNlIGNvbiAnZ2l0IHJlYmFzZSAtLWFib3J0Jy5cbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVucmVjb2duaXplZCBzZXR0aW5nICVzIGZvciBvcHRpb24gcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2suIElnbm9yaW5nLiIKK21zZ3N0ciAiIgorImltcG9zdGF6aW9uZSAlcyBub24gcmljb25vc2NpdXRhIHBlciBsJ29wemlvbmUgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2suICIKKyJMYSBpZ25vcm8uIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo0MgorbXNnaWQgIiIKKyJcbiIKKyJDb21tYW5kczpcbiIKKyJwLCBwaWNrIDxjb21taXQ+ID0gdXNlIGNvbW1pdFxuIgorInIsIHJld29yZCA8Y29tbWl0PiA9IHVzZSBjb21taXQsIGJ1dCBlZGl0IHRoZSBjb21taXQgbWVzc2FnZVxuIgorImUsIGVkaXQgPGNvbW1pdD4gPSB1c2UgY29tbWl0LCBidXQgc3RvcCBmb3IgYW1lbmRpbmdcbiIKKyJzLCBzcXVhc2ggPGNvbW1pdD4gPSB1c2UgY29tbWl0LCBidXQgbWVsZCBpbnRvIHByZXZpb3VzIGNvbW1pdFxuIgorImYsIGZpeHVwIDxjb21taXQ+ID0gbGlrZSBcInNxdWFzaFwiLCBidXQgZGlzY2FyZCB0aGlzIGNvbW1pdCdzIGxvZyBtZXNzYWdlXG4iCisieCwgZXhlYyA8Y29tbWFuZD4gPSBydW4gY29tbWFuZCAodGhlIHJlc3Qgb2YgdGhlIGxpbmUpIHVzaW5nIHNoZWxsXG4iCisiYiwgYnJlYWsgPSBzdG9wIGhlcmUgKGNvbnRpbnVlIHJlYmFzZSBsYXRlciB3aXRoICdnaXQgcmViYXNlIC0tY29udGludWUnKVxuIgorImQsIGRyb3AgPGNvbW1pdD4gPSByZW1vdmUgY29tbWl0XG4iCisibCwgbGFiZWwgPGxhYmVsPiA9IGxhYmVsIGN1cnJlbnQgSEVBRCB3aXRoIGEgbmFtZVxuIgorInQsIHJlc2V0IDxsYWJlbD4gPSByZXNldCBIRUFEIHRvIGEgbGFiZWxcbiIKKyJtLCBtZXJnZSBbLUMgPGNvbW1pdD4gfCAtYyA8Y29tbWl0Pl0gPGxhYmVsPiBbIyA8b25lbGluZT5dXG4iCisiLiAgICAgICBjcmVhdGUgYSBtZXJnZSBjb21taXQgdXNpbmcgdGhlIG9yaWdpbmFsIG1lcmdlIGNvbW1pdCdzXG4iCisiLiAgICAgICBtZXNzYWdlIChvciB0aGUgb25lbGluZSwgaWYgbm8gb3JpZ2luYWwgbWVyZ2UgY29tbWl0IHdhc1xuIgorIi4gICAgICAgc3BlY2lmaWVkKS4gVXNlIC1jIDxjb21taXQ+IHRvIHJld29yZCB0aGUgY29tbWl0IG1lc3NhZ2UuXG4iCisiXG4iCisiVGhlc2UgbGluZXMgY2FuIGJlIHJlLW9yZGVyZWQ7IHRoZXkgYXJlIGV4ZWN1dGVkIGZyb20gdG9wIHRvIGJvdHRvbS5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvbWFuZGk6XG4iCisicCwgcGljayA8Y29tbWl0PiA9IHVzYSBpbCBjb21taXRcbiIKKyJyLCByZXdvcmQgPGNvbW1pdD4gPSB1c2EgaWwgY29tbWl0LCBtYSBtb2RpZmljYSBpbCBtZXNzYWdnaW8gZGkgY29tbWl0XG4iCisiZSwgZWRpdCA8Y29tbWl0PiA9IHVzYSBpbCBjb21taXQsIG1hIGZlcm1hdGkgcGVyIG1vZGlmaWNhcmxvXG4iCisicywgc3F1YXNoIDxjb21taXQ+ID0gdXNhIGlsIGNvbW1pdCwgbWEgZm9uZGlsbyBjb24gaWwgY29tbWl0IHByZWNlZGVudGVcbiIKKyJmLCBmaXh1cCA8Y29tbWl0PiA9IGNvbWUgXCJzcXVhc2hcIiwgbWEgc2NhcnRhIGlsIG1lc3NhZ2dpbyBkaSBsb2cgZGkgIgorInF1ZXN0b1xuIgorIiAgICAgICAgICAgICAgICAgICAgY29tbWl0XG4iCisieCwgZXhlYyA8Y29tYW5kbz4gPSBlc2VndWkgaWwgY29tYW5kbyAoaWwgcmVzdG8gZGVsbGEgcmlnYSkgdXNhbmRvIGxhIHNoZWxsXG4iCisiYiwgYnJlYWsgPSBmZXJtYXRpIHF1aSAoY29udGludWEgaWwgcmViYXNlIGluIHVuIHNlY29uZG8gbW9tZW50byBjb24gIgorIidnaXQgICAgICAgICAgIHJlYmFzZSAtLWNvbnRpbnVlJylcbiIKKyJkLCBkcm9wIDxjb21taXQ+ID0gZWxpbWluYSBpbCBjb21taXRcbiIKKyJsLCBsYWJlbCA8ZXRpY2hldHRhPiA9IGV0aWNoZXR0YSBsJ0hFQUQgY29ycmVudGUgY29uIHVuIG5vbWVcbiIKKyJ0LCByZXNldCA8ZXRpY2hldHRhPiA9IHJlaW1wb3N0YSBIRUFEIGEgdW4nZXRpY2hldHRhXG4iCisibSwgbWVyZ2UgWy1DIDxjb21taXQ+IHwgLWMgPGNvbW1pdD5dIDxldGljaGV0dGE+IFsjIDxvbmVsaW5lPl1cbiIKKyIuICAgICAgIGNyZWEgdW4gY29tbWl0IGRpIG1lcmdlIHVzYW5kbyBpbCBtZXNzYWdnaW8gZGVsIGNvbW1pdCBkaSBtZXJnZVxuIgorIi4gICAgICAgb3JpZ2luYWxlIChvIGxhIG9uZWxpbmUgc2Ugbm9uIMOoIHN0YXRvIHNwZWNpZmljYXRvIHVuIGNvbW1pdCBkaSAiCisibWVyZ2VcbiIKKyIuICAgICAgIG9yaWdpbmFsZSkuIFVzYSAtYyA8Y29tbWl0PiBwZXIgcmlmb3JtdWxhcmUgaWwgbWVzc2FnZ2lvIGRpIGNvbW1pdC5cbiIKKyJcbiIKKyJRdWVzdGUgcmlnaGUgcG9zc29ubyBlc3NlcmUgcmlvcmRpbmF0ZTsgc2FyYW5ubyBlc2VndWl0ZSBkYWxsYSBwcmltYSAiCisiYWxsJ3VsdGltYS5cbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmQpIgorbXNnaWRfcGx1cmFsICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZHMpIgorbXNnc3RyWzBdICJSZWJhc2UgZGkgJXMgc3UgJXMgKCVkIGNvbWFuZG8pIgorbXNnc3RyWzFdICJSZWJhc2UgZGkgJXMgc3UgJXMgKCVkIGNvbWFuZGkpIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3MiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjI4Cittc2dpZCAiIgorIlxuIgorIkRvIG5vdCByZW1vdmUgYW55IGxpbmUuIFVzZSAnZHJvcCcgZXhwbGljaXRseSB0byByZW1vdmUgYSBjb21taXQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJOb24gZWxpbWluYXJlIGFsY3VuYSByaWdhLiBVc2EgZXNwbGljaXRhbWVudGUgJ2Ryb3AnIHBlciByaW11b3ZlcmUgdW4gIgorImNvbW1pdC5cbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NzUgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIzMgorbXNnaWQgIiIKKyJcbiIKKyJJZiB5b3UgcmVtb3ZlIGEgbGluZSBoZXJlIFRIQVQgQ09NTUlUIFdJTEwgQkUgTE9TVC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIlJpbXVvdmVuZG8gdW5hIHJpZ2EgZGEgcXVpIElMIENPTU1JVCBDT1JSSVNQT05ERU5URSBBTkRSw4AgUEVSRFVUTy5cbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6ODEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg3MQorbXNnaWQgIiIKKyJcbiIKKyJZb3UgYXJlIGVkaXRpbmcgdGhlIHRvZG8gZmlsZSBvZiBhbiBvbmdvaW5nIGludGVyYWN0aXZlIHJlYmFzZS5cbiIKKyJUbyBjb250aW51ZSByZWJhc2UgYWZ0ZXIgZWRpdGluZywgcnVuOlxuIgorIiAgICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIlN0YWkgbW9kaWZpY2FuZG8gaWwgZmlsZSB0b2RvIGRpIHVuIHJlYmFzZSBpbnRlcmF0dGl2byBpbiBjb3Jzby5cbiIKKyJQZXIgY29udGludWFyZSBpbCByZWJhc2UgZG9wbyBsYSBtb2RpZmljYSwgZXNlZ3VpOlxuIgorIiAgICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKyJcbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6ODYgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0OAorbXNnaWQgIiIKKyJcbiIKKyJIb3dldmVyLCBpZiB5b3UgcmVtb3ZlIGV2ZXJ5dGhpbmcsIHRoZSByZWJhc2Ugd2lsbCBiZSBhYm9ydGVkLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiQ2nDsiBub25vc3RhbnRlLCBzZSByaW11b3ZpIHR1dHRvLCBpbCByZWJhc2Ugc2Fyw6AgYW5udWxsYXRvLlxuIgorIlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMTAgcmVyZXJlLmM6NDg1IHJlcmVyZS5jOjY5MiBzZXF1ZW5jZXIuYzozNDQ0CisjOiBzZXF1ZW5jZXIuYzozNDcwIHNlcXVlbmNlci5jOjUxMjUgYnVpbHRpbi9mc2NrLmM6MzQ2IGJ1aWx0aW4vcmViYXNlLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSAnJXMnIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMTYgYnVpbHRpbi9yZWJhc2UuYzoxODQgYnVpbHRpbi9yZWJhc2UuYzoyMTAKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnLiIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgJyVzJy4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCisiRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCittc2dzdHIgIiIKKyJBdHRlbnppb25lOiDDqCBwb3NzaWJpbGUgY2hlIGFsY3VuaSBjb21taXQgc2lhbm8gc3RhdGkgc2NhcnRhdGkgIgorImFjY2lkZW50YWxtZW50ZS5cbiIKKyJDb21taXQgc2NhcnRhdGkgKGRhbCBwacO5IGFsIG1lbm8gcmVjZW50ZSk6XG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVG8gYXZvaWQgdGhpcyBtZXNzYWdlLCB1c2UgXCJkcm9wXCIgdG8gZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuXG4iCisiXG4iCisiVXNlICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyB0byBjaGFuZ2UgdGhlIGxldmVsIG9mICIKKyJ3YXJuaW5ncy5cbiIKKyJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCisiXG4iCittc2dzdHIgIiIKKyJQZXIgZXZpdGFyZSBxdWVzdG8gbWVzc2FnZ2lvLCB1c2EgXCJkcm9wXCIgcGVyIHJpbXVvdmVyZSB1biBjb21taXRcbiIKKyJlc3BsaWNpdGFtZW50ZS5cbiIKKyJcbiIKKyJVc2EgJ2dpdCBjb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2snIHBlciBtb2RpZmljYXJlIGlsIGxpdmVsbG9cbiIKKyJkZWdsaSBhdnZpc2kuXG4iCisiSSBjb21wb3J0YW1lbnRpIHBvc3NpYmlsaSBzb25vIGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCisiXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjIzMyByZWJhc2UtaW50ZXJhY3RpdmUuYzoyMzggc2VxdWVuY2VyLmM6MjI2MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNzAgYnVpbHRpbi9yZWJhc2UuYzoxOTUgYnVpbHRpbi9yZWJhc2UuYzoyMjEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkICclcycuIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlICclcycuIgorCisjOiByZWZzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRvZXMgbm90IHBvaW50IHRvIGEgdmFsaWQgb2JqZWN0ISIKK21zZ3N0ciAiJXMgbm9uIHB1bnRhIGEgdW4gb2dnZXR0byB2YWxpZG8hIgorCisjOiByZWZzLmM6NjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGRhbmdsaW5nIHN5bXJlZiAlcyIKK21zZ3N0ciAiaWdub3JvIGlsIHJpZmVyaW1lbnRvIHNpbWJvbGljbyBwZW5kZW50ZSAlcyIKKworIzogcmVmcy5jOjY2OSByZWYtZmlsdGVyLmM6MjA5OAorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBicm9rZW4gcmVmICVzIgorbXNnc3RyICJpZ25vcm8gaWwgcmlmZXJpbWVudG8gcm90dG8gJXMiCisKKyM6IHJlZnMuYzo4MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZzogJXMiCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSAnJXMnIGluIHNjcml0dHVyYTogJXMiCisKKyM6IHJlZnMuYzo4MTQgcmVmcy5jOjg2NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCByZWYgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBpbCByaWZlcmltZW50byAnJXMnIgorCisjOiByZWZzLmM6ODIwCisjLCBjLWZvcm1hdAorbXNnaWQgInJlZiAnJXMnIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICJpbCByaWZlcmltZW50byAnJXMnIGVzaXN0ZSBnacOgIgorCisjOiByZWZzLmM6ODI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgb2JqZWN0IElEIHdoZW4gd3JpdGluZyAnJXMnIgorbXNnc3RyICJJRCBvZ2dldHRvIGluYXR0ZXNvIGR1cmFudGUgbGEgc2NyaXR0dXJhIGRpICclcyciCisKKyM6IHJlZnMuYzo4MzMgc2VxdWVuY2VyLmM6NDA3IHNlcXVlbmNlci5jOjI3MDEgc2VxdWVuY2VyLmM6MjkwNQorIzogc2VxdWVuY2VyLmM6MjkxOSBzZXF1ZW5jZXIuYzozMTc3IHNlcXVlbmNlci5jOjUwMzYgc3RyYnVmLmM6MTE1NworIzogd3JhcHBlci5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgdG8gJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgc3UgJyVzJyIKKworIzogcmVmcy5jOjg2MCBzdHJidWYuYzoxMTU1IHdyYXBwZXIuYzoxODggd3JhcHBlci5jOjM1OCBidWlsdGluL2FtLmM6NzE5CisjOiBidWlsdGluL3JlYmFzZS5jOjEwMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlICclcycgaW4gc2NyaXR0dXJhIgorCisjOiByZWZzLmM6ODY3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgb2JqZWN0IElEIHdoZW4gZGVsZXRpbmcgJyVzJyIKK21zZ3N0ciAiSUQgb2dnZXR0byBpbmF0dGVzbyBkdXJhbnRlIGwnZWxpbWluYXppb25lIGRpICclcyciCisKKyM6IHJlZnMuYzo5OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciByZWYgJXMgaGFzIGdhcCBhZnRlciAlcyIKK21zZ3N0ciAiaWwgcmVnaXN0cm8gcGVyIGlsIHJpZmVyaW1lbnRvICVzIGhhIGRlbGxlIHZvY2kgbWFuY2FudGkgZG9wbyAlcyIKKworIzogcmVmcy5jOjEwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciByZWYgJXMgdW5leHBlY3RlZGx5IGVuZGVkIG9uICVzIgorbXNnc3RyICJpbCByZWdpc3RybyBwZXIgaWwgcmlmZXJpbWVudG8gJXMgw6ggdGVybWluYXRvIGluYXNwZXR0YXRhbWVudGUgYSAlcyIKKworIzogcmVmcy5jOjEwNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciAlcyBpcyBlbXB0eSIKK21zZ3N0ciAiaWwgcmVnaXN0cm8gcGVyICVzIMOoIHZ1b3RvIgorCisjOiByZWZzLmM6MTE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byB1cGRhdGUgcmVmIHdpdGggYmFkIG5hbWUgJyVzJyIKK21zZ3N0ciAibWkgcmlmaXV0byBkaSBhZ2dpb3JuYXJlIGlsIHJpZmVyaW1lbnRvIGNvbiBpbCBub21lIG5vbiB2YWxpZG8gJyVzJyIKKworIzogcmVmcy5jOjEyMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidXBkYXRlX3JlZiBmYWlsZWQgZm9yIHJlZiAnJXMnOiAlcyIKK21zZ3N0ciAidXBkYXRlX3JlZiBwZXIgaWwgcmlmZXJpbWVudG8gJyVzJyBub24gcml1c2NpdGE6ICVzIgorCisjOiByZWZzLmM6MjAyMworIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSB1cGRhdGVzIGZvciByZWYgJyVzJyBub3QgYWxsb3dlZCIKK21zZ3N0ciAiYWdnaW9ybmFtZW50aSBtdWx0aXBsaSBwZXIgaWwgcmlmZXJpbWVudG8gJyVzJyBub24gY29uc2VudGl0aSIKKworIzogcmVmcy5jOjIwNTUKK21zZ2lkICJyZWYgdXBkYXRlcyBmb3JiaWRkZW4gaW5zaWRlIHF1YXJhbnRpbmUgZW52aXJvbm1lbnQiCittc2dzdHIgImFnZ2lvcm5hbWVudGkgcmlmZXJpbWVudG8gdmlldGF0aSBuZWxsJ2FtYmllbnRlIHF1YXJhbnRlbmEiCisKKyM6IHJlZnMuYzoyMTUxIHJlZnMuYzoyMTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZXhpc3RzOyBjYW5ub3QgY3JlYXRlICclcyciCittc2dzdHIgIiclcycgZXNpc3RlIGdpw6A7IGltcG9zc2liaWxlIGNyZWFyZSAnJXMnIgorCisjOiByZWZzLmM6MjE1NyByZWZzLmM6MjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcHJvY2VzcyAnJXMnIGFuZCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUiCittc2dzdHIgImltcG9zc2liaWxlIGdlc3RpcmUgJyVzJyBlICclcycgY29udGVtcG9yYW5lYW1lbnRlIgorCisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgcmVmZXJlbmNlICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaW11b3ZlcmUgaWwgcmlmZXJpbWVudG8gJXMiCisKKyM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDcgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NDEKKyM6IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgcmVmZXJlbmNlICVzOiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZWxpbWluYXJlIGlsIHJpZmVyaW1lbnRvICVzOiAlcyIKKworIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI1MCByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU1NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZGVsZXRlIHJlZmVyZW5jZXM6ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlbGltaW5hcmUgaSByaWZlcmltZW50aTogJXMiCisKKyM6IHJlZnNwZWMuYzoxMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWZzcGVjICclcyciCittc2dzdHIgInNwZWNpZmljYXRvcmUgcmlmZXJpbWVudG8gJyVzJyBub24gdmFsaWRvIgorCisjOiByZWYtZmlsdGVyLmM6NDIgd3Qtc3RhdHVzLmM6MTkzOAorbXNnaWQgImdvbmUiCittc2dzdHIgInNwYXJpdG8iCisKKyM6IHJlZi1maWx0ZXIuYzo0MworIywgYy1mb3JtYXQKK21zZ2lkICJhaGVhZCAlZCIKK21zZ3N0ciAiZG9wbyAlZCIKKworIzogcmVmLWZpbHRlci5jOjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImJlaGluZCAlZCIKK21zZ3N0ciAicHJpbWEgZGkgJWQiCisKKyM6IHJlZi1maWx0ZXIuYzo0NQorIywgYy1mb3JtYXQKK21zZ2lkICJhaGVhZCAlZCwgYmVoaW5kICVkIgorbXNnc3RyICJkb3BvICVkLCBwcmltYSBkaSAlZCIKKworIzogcmVmLWZpbHRlci5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBmb3JtYXQ6ICUlKGNvbG9yOjxjb2xvcj4pIgorbXNnc3RyICJmb3JtYXRvIGF0dGVzbzogJSUoY29sb3I6PGNvbG9yZT4pIgorCisjOiByZWYtZmlsdGVyLmM6MTY3CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBjb2xvcjogJSUoY29sb3I6JXMpIgorbXNnc3RyICJjb2xvcmUgbm9uIHJpY29ub3NjaXV0bzogJSUoY29sb3I6JXMpIgorCisjOiByZWYtZmlsdGVyLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgIkludGVnZXIgdmFsdWUgZXhwZWN0ZWQgcmVmbmFtZTpsc3RyaXA9JXMiCittc2dzdHIgIkF0dGVzbyB2YWxvcmUgaW50ZXJvOiByZWZuYW1lOmxzdHJpcD0lcyIKKworIzogcmVmLWZpbHRlci5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6cnN0cmlwPSVzIgorbXNnc3RyICJBdHRlc28gdmFsb3JlIGludGVybzogcmVmbmFtZTpyc3RyaXA9JXMiCisKKyM6IHJlZi1maWx0ZXIuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkICUlKCVzKSBhcmd1bWVudDogJXMiCittc2dzdHIgImFyZ29tZW50byAlJSglcykgbm9uIHJpY29ub3NjaXV0bzogJXMiCisKKyM6IHJlZi1maWx0ZXIuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJSUob2JqZWN0dHlwZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCittc2dzdHIgIiUlKG9iamVjdHR5cGUpIG5vbiBhY2NldHRhIGFyZ29tZW50aSIKKworIzogcmVmLWZpbHRlci5jOjI3MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUob2JqZWN0c2l6ZSkgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJhcmdvbWVudG8gJSUob2JqZWN0c2l6ZSkgbm9uIHJpY29ub3NjaXV0bzogJXMiCisKKyM6IHJlZi1maWx0ZXIuYzoyODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJSUoZGVsdGFiYXNlKSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKK21zZ3N0ciAiJSUoZGVsdGFiYXNlKSBub24gYWNjZXR0YSBhcmdvbWVudGkiCisKKyM6IHJlZi1maWx0ZXIuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJSUoYm9keSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCittc2dzdHIgIiUlKGJvZHkpIG5vbiBhY2NldHRhIGFyZ29tZW50aSIKKworIzogcmVmLWZpbHRlci5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIlJShzdWJqZWN0KSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKK21zZ3N0ciAiJSUoc3ViamVjdCkgbm9uIGFjY2V0dGEgYXJnb21lbnRpIgorCisjOiByZWYtZmlsdGVyLmM6MzIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gJSUodHJhaWxlcnMpIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiYXJnb21lbnRvICUlKHRyYWlsZXJzKSBzY29ub3NjaXV0bzogJXMiCisKKyM6IHJlZi1maWx0ZXIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicG9zaXRpdmUgdmFsdWUgZXhwZWN0ZWQgY29udGVudHM6bGluZXM9JXMiCittc2dzdHIgImF0dGVzbyB2YWxvcmUgcG9zaXRpdm8gaW4gY29udGVudHM6bGluZXM9JXMiCisKKyM6IHJlZi1maWx0ZXIuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkICUlKGNvbnRlbnRzKSBhcmd1bWVudDogJXMiCittc2dzdHIgImFyZ29tZW50byAlJShjb250ZW50cykgbm9uIHJpY29ub3NjaXV0bzogJXMiCisKKyM6IHJlZi1maWx0ZXIuYzozNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAicG9zaXRpdmUgdmFsdWUgZXhwZWN0ZWQgb2JqZWN0bmFtZTpzaG9ydD0lcyIKK21zZ3N0ciAiYXR0ZXNvIHZhbG9yZSBwb3NpdGl2byBpbiBvYmplY3RuYW1lOnNob3J0PSVzIgorCisjOiByZWYtZmlsdGVyLmM6MzczCisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCAlJShvYmplY3RuYW1lKSBhcmd1bWVudDogJXMiCittc2dzdHIgImFyZ29tZW50byAlJShvYmplY3RuYW1lKSBub24gcmljb25vc2NpdXRvOiAlcyIKKworIzogcmVmLWZpbHRlci5jOjQwMworIywgYy1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBmb3JtYXQ6ICUlKGFsaWduOjx3aWR0aD4sPHBvc2l0aW9uPikiCittc2dzdHIgImZvcm1hdG8gYXR0ZXNvOiAlJShhbGlnbjo8YW1waWV6emE+LDxwb3NpemlvbmU+KSIKKworIzogcmVmLWZpbHRlci5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgcG9zaXRpb246JXMiCittc2dzdHIgInZhbG9yZSBub24gcmljb25vc2NpdXRvOiBwb3NpdGlvbjolcyIKKworIzogcmVmLWZpbHRlci5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgd2lkdGg6JXMiCittc2dzdHIgInZhbG9yZSBub24gcmljb25vc2NpdXRvOiB3aWR0aDolcyIKKworIzogcmVmLWZpbHRlci5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUoYWxpZ24pIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiYXJnb21lbnRvICUlKGFsaWduKSBub24gcmljb25vc2NpdXRvOiAlcyIKKworIzogcmVmLWZpbHRlci5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJwb3NpdGl2ZSB3aWR0aCBleHBlY3RlZCB3aXRoIHRoZSAlJShhbGlnbikgYXRvbSIKK21zZ3N0ciAiYXR0ZXNhIGFtcGllenphIHBvc2l0aXZhIGNvbiBsJ2F0b20gJSUoYWxpZ24pIgorCisjOiByZWYtZmlsdGVyLmM6NDU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCAlJShpZikgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJhcmdvbWVudG8gJSUoaWYpIG5vbiByaWNvbm9zY2l1dG86ICVzIgorCisjOiByZWYtZmlsdGVyLmM6NTU5CisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBmaWVsZCBuYW1lOiAlLipzIgorbXNnc3RyICJub21lIGNhbXBvIG1hbGZvcm1hdG86ICUuKnMiCisKKyM6IHJlZi1maWx0ZXIuYzo1ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmaWVsZCBuYW1lOiAlLipzIgorbXNnc3RyICJub21lIGNhbXBvIHNjb25vc2NpdXRvOiAlLipzIgorCisjOiByZWYtZmlsdGVyLmM6NTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJub3QgYSBnaXQgcmVwb3NpdG9yeSwgYnV0IHRoZSBmaWVsZCAnJS4qcycgcmVxdWlyZXMgYWNjZXNzIHRvIG9iamVjdCBkYXRhIgorbXNnc3RyICIiCisibm9uIMOoIHVuIHJlcG9zaXRvcnkgZ2l0LCBtYSBpbCBjYW1wbyAnJS4qcycgcmljaGllZGUgbCdhY2Nlc3NvIGFpIGRhdGkgIgorIm9nZ2V0dG8iCisKKyM6IHJlZi1maWx0ZXIuYzo3MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJShpZikgYXRvbSB1c2VkIHdpdGhvdXQgYSAlJSh0aGVuKSBhdG9tIgorbXNnc3RyICJmb3JtYXRvOiBhdG9tbyAlJShpZikgdXNhdG8gc2VuemEgdW4gYXRvbW8gJSUodGhlbikiCisKKyM6IHJlZi1maWx0ZXIuYzo3NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgd2l0aG91dCBhbiAlJShpZikgYXRvbSIKK21zZ3N0ciAiZm9ybWF0bzogYXRvbW8gJSUodGhlbikgdXNhdG8gc2VuemEgdW4gYXRvbW8gJSUoaWYpIgorCisjOiByZWYtZmlsdGVyLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgorbXNnc3RyICJmb3JtYXRvOiBhdG9tbyAlJSh0aGVuKSB1c2F0byBwacO5IGRpIHVuYSB2b2x0YSIKKworIzogcmVmLWZpbHRlci5jOjc4MQorIywgYy1mb3JtYXQKK21zZ2lkICJmb3JtYXQ6ICUlKHRoZW4pIGF0b20gdXNlZCBhZnRlciAlJShlbHNlKSIKK21zZ3N0ciAiZm9ybWF0bzogYXRvbW8gJSUodGhlbikgdXNhdG8gZG9wbyAlJShlbHNlKSIKKworIzogcmVmLWZpbHRlci5jOjgwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCB3aXRob3V0IGFuICUlKGlmKSBhdG9tIgorbXNnc3RyICJmb3JtYXRvOiBhdG9tbyAlJShlbHNlKSB1c2F0byBzZW56YSB1biBhdG9tbyAlJShpZikiCisKKyM6IHJlZi1maWx0ZXIuYzo4MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgd2l0aG91dCBhICUlKHRoZW4pIGF0b20iCittc2dzdHIgImZvcm1hdG86IGF0b21vICUlKGVsc2UpIHVzYXRvIHNlbnphIHVuIGF0b21vICUlKHRoZW4pIgorCisjOiByZWYtZmlsdGVyLmM6ODEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgorbXNnc3RyICJmb3JtYXRvOiBhdG9tbyAlJShlbHNlKSB1c2F0byBwacO5IGRpIHVuYSB2b2x0YSIKKworIzogcmVmLWZpbHRlci5jOjgyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmb3JtYXQ6ICUlKGVuZCkgYXRvbSB1c2VkIHdpdGhvdXQgY29ycmVzcG9uZGluZyBhdG9tIgorbXNnc3RyICJmb3JtYXRvOiBhdG9tbyAlJShlbmQpIHVzYXRvIHNlbnphIGwnYXRvbW8gY29ycmlzcG9uZGVudGUiCisKKyM6IHJlZi1maWx0ZXIuYzo4ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIGZvcm1hdCBzdHJpbmcgJXMiCittc2dzdHIgInN0cmluZ2EgZGkgZm9ybWF0byAlcyBtYWxmb3JtYXRhIgorCisjOiByZWYtZmlsdGVyLmM6MTQ4OAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nICVzIgorbXNnc3RyICJuZXNzdW4gYnJhbmNoLCBlc2VndW8gaWwgcmViYXNlIGRpICVzIgorCisjOiByZWYtZmlsdGVyLmM6MTQ5MQorIywgYy1mb3JtYXQKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nIGRldGFjaGVkIEhFQUQgJXMiCittc2dzdHIgIm5lc3N1biBicmFuY2gsIGVzZWd1byBpbCByZWJhc2UgZGVsbCdIRUFEIHNjb2xsZWdhdG8gJXMiCisKKyM6IHJlZi1maWx0ZXIuYzoxNDk0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGJyYW5jaCwgYmlzZWN0IHN0YXJ0ZWQgb24gJXMiCittc2dzdHIgIm5lc3N1biBicmFuY2gsIGJpc2V6aW9uZSBhdnZpYXRhIHN1ICVzIgorCisjOiByZWYtZmlsdGVyLmM6MTUwNAorbXNnaWQgIm5vIGJyYW5jaCIKK21zZ3N0ciAibmVzc3VuIGJyYW5jaCIKKworIzogcmVmLWZpbHRlci5jOjE1NDAgcmVmLWZpbHRlci5jOjE3NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyBvYmplY3QgJXMgZm9yICVzIgorbXNnc3RyICJvZ2dldHRvICVzIG1hbmNhbnRlIHBlciAlcyIKKworIzogcmVmLWZpbHRlci5jOjE1NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFyc2Vfb2JqZWN0X2J1ZmZlciBmYWlsZWQgb24gJXMgZm9yICVzIgorbXNnc3RyICJwYXJzZV9vYmplY3RfYnVmZmVyIG5vbiByaXVzY2l0byBzdSAlcyBwZXIgJXMiCisKKyM6IHJlZi1maWx0ZXIuYzoyMDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgYXQgJyVzJyIKK21zZ3N0ciAib2dnZXR0byBtYWxmb3JtYXRvIGluICclcyciCisKKyM6IHJlZi1maWx0ZXIuYzoyMDkzCisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlZiB3aXRoIGJyb2tlbiBuYW1lICVzIgorbXNnc3RyICJpZ25vcm8gaWwgcmlmZXJpbWVudG8gY29uIGlsIG5vbWUgbWFsZm9ybWF0byAlcyIKKworIzogcmVmLWZpbHRlci5jOjIzODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJShlbmQpIGF0b20gbWlzc2luZyIKK21zZ3N0ciAiZm9ybWF0bzogYXRvbW8gJSUoZW5kKSBtYW5jYW50ZSIKKworIzogcmVmLWZpbHRlci5jOjI0ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1tZXJnZWQiCittc2dzdHIgImwnb3B6aW9uZSBgJXMnIG5vbiDDqCBjb21wYXRpYmlsZSBjb24gLS1tZXJnZWQiCisKKyM6IHJlZi1maWx0ZXIuYzoyNDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8tbWVyZ2VkIgorbXNnc3RyICJsJ29wemlvbmUgYCVzJyBub24gw6ggY29tcGF0aWJpbGUgY29uIC0tbm8tbWVyZ2VkIgorCisjOiByZWYtZmlsdGVyLmM6MjUwMgorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IG5hbWUgJXMiCittc2dzdHIgIm5vbWUgZGVsbCdvZ2dldHRvICVzIG1hbGZvcm1hdG8iCisKKyM6IHJlZi1maWx0ZXIuYzoyNTA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIG11c3QgcG9pbnQgdG8gYSBjb21taXQiCittc2dzdHIgImwnb3B6aW9uZSBgJXMnIGRldmUgcHVudGFyZSBhZCB1biBjb21taXQiCisKKyM6IHJlbW90ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25maWcgcmVtb3RlIHNob3J0aGFuZCBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIgorbXNnc3RyICIiCisibGEgZm9ybWEgYnJldmUgZGVsbGEgY29uZmlndXJhemlvbmUgZGVsIHJlbW90byBub24gcHXDsiBpbml6aWFyZSBjb24gJy8nOiAlcyIKKworIzogcmVtb3RlLmM6NDE0Cittc2dpZCAibW9yZSB0aGFuIG9uZSByZWNlaXZlcGFjayBnaXZlbiwgdXNpbmcgdGhlIGZpcnN0IgorbXNnc3RyICLDqCBzdGF0YSBzcGVjaWZpY2F0YSBwacO5IGRpIHVuYSBkaXJldHRpdmEgcmVjZWl2ZXBhY2ssIHVzbyBsYSBwcmltYSIKKworIzogcmVtb3RlLmM6NDIyCittc2dpZCAibW9yZSB0aGFuIG9uZSB1cGxvYWRwYWNrIGdpdmVuLCB1c2luZyB0aGUgZmlyc3QiCittc2dzdHIgIsOoIHN0YXRhIHNwZWNpZmljYXRhIHBpw7kgZGkgdW5hIGRpcmV0dGl2YSB1cGxvYWRwYWNrLCB1c28gbGEgcHJpbWEiCisKKyM6IHJlbW90ZS5jOjYxMgorIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgZmV0Y2ggYm90aCAlcyBhbmQgJXMgdG8gJXMiCittc2dzdHIgIkltcG9zc2liaWxlIHJlY3VwZXJhcmUgc2lhICVzIHNpYSAlcyBpbiAlcyIKKworIzogcmVtb3RlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHVzdWFsbHkgdHJhY2tzICVzLCBub3QgJXMiCittc2dzdHIgIiVzIHNvbGl0YW1lbnRlIHRyYWNjaWEgJXMsIG5vbiAlcyIKKworIzogcmVtb3RlLmM6NjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRyYWNrcyBib3RoICVzIGFuZCAlcyIKK21zZ3N0ciAiJXMgdHJhY2NpYSBzaWEgJXMgc2lhICVzIgorCisjOiByZW1vdGUuYzo2ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAia2V5ICclcycgb2YgcGF0dGVybiBoYWQgbm8gJyonIgorbXNnc3RyICJsYSBjaGlhdmUgJyVzJyBkZWwgcGF0dGVybiBub24gYXZldmEgdW4gJyonIgorCisjOiByZW1vdGUuYzo2OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgJyVzJyBvZiBwYXR0ZXJuIGhhcyBubyAnKiciCittc2dzdHIgImlsIHZhbG9yZSAnJXMnIGRlbCBwYXR0ZXJuIG5vbiBoYSB1biAnKiciCisKKyM6IHJlbW90ZS5jOjEwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgZG9lcyBub3QgbWF0Y2ggYW55IgorbXNnc3RyICJuZXNzdW5hIGNvcnJpc3BvbmRlbnphIHBlciBsbyBzcGVjaWZpY2F0b3JlIHJpZmVyaW1lbnRvIHNvcmdlbnRlICVzIgorCisjOiByZW1vdGUuYzoxMDA5CisjLCBjLWZvcm1hdAorbXNnaWQgInNyYyByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAiIgorInNvbm8gc3RhdGUgdHJvdmF0ZSBwacO5IGNvcnJpc3BvbmRlbnplIHBlciBsbyBzcGVjaWZpY2F0b3JlIHJpZmVyaW1lbnRvICIKKyJzb3JnZW50ZSAlcyIKKworIy4gVFJBTlNMQVRPUlM6ICJtYXRjaGVzICclcyclIiBpcyB0aGUgPGRzdD4gcGFydCBvZiAiZ2l0IHB1c2gKKyMuIDxyZW1vdGU+IDxzcmM+Ojxkc3Q+IiBwdXNoLCBhbmQgImJlaW5nIHB1c2hlZCAoJyVzJykiIGlzCisjLiB0aGUgPHNyYz4uCisjLgorIzogcmVtb3RlLmM6MTAyNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGRlc3RpbmF0aW9uIHlvdSBwcm92aWRlZCBpcyBub3QgYSBmdWxsIHJlZm5hbWUgKGkuZS4sXG4iCisic3RhcnRpbmcgd2l0aCBcInJlZnMvXCIpLiBXZSB0cmllZCB0byBndWVzcyB3aGF0IHlvdSBtZWFudCBieTpcbiIKKyJcbiIKKyItIExvb2tpbmcgZm9yIGEgcmVmIHRoYXQgbWF0Y2hlcyAnJXMnIG9uIHRoZSByZW1vdGUgc2lkZS5cbiIKKyItIENoZWNraW5nIGlmIHRoZSA8c3JjPiBiZWluZyBwdXNoZWQgKCclcycpXG4iCisiICBpcyBhIHJlZiBpbiBcInJlZnMve2hlYWRzLHRhZ3N9L1wiLiBJZiBzbyB3ZSBhZGQgYSBjb3JyZXNwb25kaW5nXG4iCisiICByZWZzL3toZWFkcyx0YWdzfS8gcHJlZml4IG9uIHRoZSByZW1vdGUgc2lkZS5cbiIKKyJcbiIKKyJOZWl0aGVyIHdvcmtlZCwgc28gd2UgZ2F2ZSB1cC4gWW91IG11c3QgZnVsbHkgcXVhbGlmeSB0aGUgcmVmLiIKK21zZ3N0ciAiIgorIkxhIGRlc3RpbmF6aW9uZSBjaGUgaGFpIGZvcm5pdG8gbm9uIMOoIHVuIG5vbWUgcmlmZXJpbWVudG9cbiIKKyJjb21wbGV0byAob3NzaWEgY2hlIGluaXppYSBjb24gXCJyZWZzL1wiKS4gQWJiaWFtbyBwcm92YXRvIGFcbiIKKyJpbmRvdmluYXJlIGNpw7IgY2hlIGludGVuZGV2aSBkaXJlOlxuIgorIlxuIgorIi0gY2VyY2FuZG8gdW4gcmlmZXJpbWVudG8gY29ycmlzcG9uZGVudGUgYSAnJXMnIG5lbCByZW1vdG87XG4iCisiLSBjb250cm9sbGFuZG8gc2UgbGEgPHNvcmdlbnRlPiBzb3R0b3Bvc3RhIGEgcHVzaCAoJyVzJykgZm9zc2UgdW5cbiIKKyIgIHJpZmVyaW1lbnRvIGNvbXByZXNvIGZyYSBxdWVsbGkgaW4gXCJyZWZzL3toZWFkcyx0YWdzfS9cIi4gSW4gdGFsXG4iCisiICBjYXNvIGF2cmVtbW8gYWdnaXVudG8gaWwgcHJlZmlzc28gY29ycmlzcG9uZGVudGVcbiIKKyIgIHJlZnMve2hlYWRzLHRhZ3N9LyBhbCByZW1vdG8uXG4iCisiXG4iCisiTmVzc3VuYSBkZWxsZSBkdWUgb3B6aW9uaSBoYSBmdW56aW9uYXRvLCBxdWluZGkgY2kgc2lhbW8gYXJyZXNpLlxuIgorIkRldmkgc3BlY2lmaWNhcmUgdW4gcmlmZXJpbWVudG8gY29tcGxldGFtZW50ZSBxdWFsaWZpY2F0by4iCisKKyM6IHJlbW90ZS5jOjEwNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgY29tbWl0IG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gY3JlYXRlIGEgbmV3IGJyYW5jaCBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvaGVhZHMvJXMnPyIKK21zZ3N0ciAiIgorIkxhIHBhcnRlIDxzb3JnZW50ZT4gZGVsbG8gc3BlY2lmaWNhdG9yZSByaWZlcmltZW50b1xuIgorIsOoIHVuIG9nZ2V0dG8gdGFnLiBGb3JzZSBpbnRlbmRldmkgY3JlYXJlIHVuIG51b3ZvXG4iCisiYnJhbmNoIGVzZWd1ZW5kbyBpbCBwdXNoIGEgJyVzOnJlZnMvaGVhZHMvJXMnPyIKKworIzogcmVtb3RlLmM6MTA0OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSB0YWcgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byBjcmVhdGUgYSBuZXcgdGFnIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKyJMYSBwYXJ0ZSA8c29yZ2VudGU+IGRlbGxvIHNwZWNpZmljYXRvcmUgcmlmZXJpbWVudG9cbiIKKyLDqCB1biBvZ2dldHRvIHRhZy4gRm9yc2UgaW50ZW5kZXZpIGNyZWFyZSB1biBudW92b1xuIgorImJyYW5jaCBlc2VndWVuZG8gaWwgcHVzaCBhICclczpyZWZzL3RhZ3MvJXMnPyIKKworIzogcmVtb3RlLmM6MTA1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSB0cmVlIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gdGFnIGEgbmV3IHRyZWUgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorIkxhIHBhcnRlIDxzb3JnZW50ZT4gZGVsbG8gc3BlY2lmaWNhdG9yZSByaWZlcmltZW50b1xuIgorIsOoIHVuIG9nZ2V0dG8gYWxiZXJvLiBGb3JzZSBpbnRlbmRldmkgYWdnaXVuZ2VyZSB1blxuIgorInRhZyBhIHVuIG51b3ZvIGFsYmVybyBlc2VndWVuZG8gaWwgcHVzaCBhXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorCisjOiByZW1vdGUuYzoxMDU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIGJsb2Igb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byB0YWcgYSBuZXcgYmxvYiBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisiTGEgcGFydGUgPHNvcmdlbnRlPiBkZWxsbyBzcGVjaWZpY2F0b3JlIHJpZmVyaW1lbnRvXG4iCisiw6ggdW4gb2dnZXR0byBibG9iLiBGb3JzZSBpbnRlbmRldmkgYWdnaXVuZ2VyZSB1blxuIgorInRhZyBhIHVuIG51b3ZvIGJsb2IgZXNlZ3VlbmRvIGlsIHB1c2ggYVxuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKKworIzogcmVtb3RlLmM6MTA5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYnJhbmNoIgorbXNnc3RyICIlcyBub24gcHXDsiBlc3NlcmUgcmlzb2x0byBpbiB1biBicmFuY2giCisKKyM6IHJlbW90ZS5jOjExMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSAnJXMnOiByZW1vdGUgcmVmIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJpbXBvc3NpYmlsZSBlbGltaW5hcmUgJyVzJzogaWwgcmlmZXJpbWVudG8gcmVtb3RvIG5vbiBlc2lzdGUiCisKKyM6IHJlbW90ZS5jOjExMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHN0IHJlZnNwZWMgJXMgbWF0Y2hlcyBtb3JlIHRoYW4gb25lIgorbXNnc3RyICIiCisic29ubyBzdGF0ZSB0cm92YXRlIHBpw7kgY29ycmlzcG9uZGVuemUgcGVyIGxvIHNwZWNpZmljYXRvcmUgcmlmZXJpbWVudG8gIgorImRlc3RpbmF6aW9uZSAlcyIKKworIzogcmVtb3RlLmM6MTEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkc3QgcmVmICVzIHJlY2VpdmVzIGZyb20gbW9yZSB0aGFuIG9uZSBzcmMiCittc2dzdHIgIiIKKyJsbyBzcGVjaWZpY2F0b3JlIHJpZmVyaW1lbnRvIGRlc3RpbmF6aW9uZSAlcyByaWNldmUgZGF0aSBkYSBwacO5IGRpIHVuYSAiCisic29yZ2VudGUiCisKKyM6IHJlbW90ZS5jOjE2MjggcmVtb3RlLmM6MTcyOQorbXNnaWQgIkhFQUQgZG9lcyBub3QgcG9pbnQgdG8gYSBicmFuY2giCittc2dzdHIgIkhFQUQgbm9uIHB1bnRhIGFkIHVuIGJyYW5jaCIKKworIzogcmVtb3RlLmM6MTYzNworIywgYy1mb3JtYXQKK21zZ2lkICJubyBzdWNoIGJyYW5jaDogJyVzJyIKK21zZ3N0ciAiYnJhbmNoICclcycgbm9uIGVzaXN0ZW50ZSIKKworIzogcmVtb3RlLmM6MTY0MAorIywgYy1mb3JtYXQKK21zZ2lkICJubyB1cHN0cmVhbSBjb25maWd1cmVkIGZvciBicmFuY2ggJyVzJyIKK21zZ3N0ciAibmVzc3VuIHVwc3RyZWFtIGNvbmZpZ3VyYXRvIHBlciBpbCBicmFuY2ggJyVzJyIKKworIzogcmVtb3RlLmM6MTY0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1cHN0cmVhbSBicmFuY2ggJyVzJyBub3Qgc3RvcmVkIGFzIGEgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKK21zZ3N0ciAiIgorImJyYW5jaCB1cHN0cmVhbSAnJXMnIG5vbiBtZW1vcml6emF0byBjb21lIGJyYW5jaCBjaGUgbmUgdHJhY2NpYSB1bm8gcmVtb3RvIgorCisjOiByZW1vdGUuYzoxNjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInB1c2ggZGVzdGluYXRpb24gJyVzJyBvbiByZW1vdGUgJyVzJyBoYXMgbm8gbG9jYWwgdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICIiCisibGEgZGVzdGluYXppb25lIGRlbCBwdXNoICclcycgc3VsIHJlbW90byAnJXMnIG5vbiBoYSB1biBicmFuY2ggbG9jYWxlIGNoZSBsYSAiCisidHJhY2NpYSIKKworIzogcmVtb3RlLmM6MTY3MworIywgYy1mb3JtYXQKK21zZ2lkICJicmFuY2ggJyVzJyBoYXMgbm8gcmVtb3RlIGZvciBwdXNoaW5nIgorbXNnc3RyICJpbCBicmFuY2ggJyVzJyBub24gaGEgdW4gcmVtb3RvIHBlciBpbCBwdXNoIgorCisjOiByZW1vdGUuYzoxNjgzCisjLCBjLWZvcm1hdAorbXNnaWQgInB1c2ggcmVmc3BlY3MgZm9yICclcycgZG8gbm90IGluY2x1ZGUgJyVzJyIKK21zZ3N0ciAiZ2xpIHNwZWNpZmljYXRvcmkgcmlmZXJpbWVudG8gcGVyICclcycgbm9uIGluY2x1ZG9ubyAnJXMnIgorCisjOiByZW1vdGUuYzoxNjk2Cittc2dpZCAicHVzaCBoYXMgbm8gZGVzdGluYXRpb24gKHB1c2guZGVmYXVsdCBpcyAnbm90aGluZycpIgorbXNnc3RyICJpbCBwdXNoIG5vbiBoYSB1bmEgZGVzdGluYXppb25lIChwdXNoLmRlZmF1bHQgw6ggJ25vdGhpbmcnKSIKKworIzogcmVtb3RlLmM6MTcxOAorbXNnaWQgImNhbm5vdCByZXNvbHZlICdzaW1wbGUnIHB1c2ggdG8gYSBzaW5nbGUgZGVzdGluYXRpb24iCittc2dzdHIgImltcG9zc2liaWxlIHJpc29sdmVyZSBpbCBwdXNoICdzaW1wbGUnIGEgdW5hIHNpbmdvbGEgZGVzdGluYXppb25lIgorCisjOiByZW1vdGUuYzoxODQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgdHJvdmFyZSBpbCByaWZlcmltZW50byByZW1vdG8gJXMiCisKKyM6IHJlbW90ZS5jOjE4NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiKiBJZ25vcmluZyBmdW5ueSByZWYgJyVzJyBsb2NhbGx5IgorbXNnc3RyICIqIElnbm9ybyBsb2NhbG1lbnRlIGlsIHJpZmVyaW1lbnRvIHN0cmFubyAnJXMnIgorCisjOiByZW1vdGUuYzoyMDIwCisjLCBjLWZvcm1hdAorbXNnaWQgIllvdXIgYnJhbmNoIGlzIGJhc2VkIG9uICclcycsIGJ1dCB0aGUgdXBzdHJlYW0gaXMgZ29uZS5cbiIKK21zZ3N0ciAiSWwgdHVvIGJyYW5jaCDDqCBiYXNhdG8gc3UgJyVzJywgbWEgbCd1cHN0cmVhbSDDqCBzY29tcGFyc28uXG4iCisKKyM6IHJlbW90ZS5jOjIwMjQKK21zZ2lkICIgICh1c2UgXCJnaXQgYnJhbmNoIC0tdW5zZXQtdXBzdHJlYW1cIiB0byBmaXh1cClcbiIKK21zZ3N0ciAiICAodXNhIFwiZ2l0IGJyYW5jaCAtLXVuc2V0LXVwc3RyZWFtXCIgcGVyIGNvcnJlZ2dlcmUgbGEgc2l0dWF6aW9uZSlcbiIKKworIzogcmVtb3RlLmM6MjAyNworIywgYy1mb3JtYXQKK21zZ2lkICJZb3VyIGJyYW5jaCBpcyB1cCB0byBkYXRlIHdpdGggJyVzJy5cbiIKK21zZ3N0ciAiSWwgdHVvIGJyYW5jaCDDqCBhZ2dpb3JuYXRvIHJpc3BldHRvIGEgJyVzJy5cbiIKKworIzogcmVtb3RlLmM6MjAzMQorIywgYy1mb3JtYXQKK21zZ2lkICJZb3VyIGJyYW5jaCBhbmQgJyVzJyByZWZlciB0byBkaWZmZXJlbnQgY29tbWl0cy5cbiIKK21zZ3N0ciAiSWwgdHVvIGJyYW5jaCBlICclcycgZmFubm8gcmlmZXJpbWVudG8gYSBjb21taXQgZGlmZmVyZW50aS5cbiIKKworIzogcmVtb3RlLmM6MjAzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICh1c2UgXCIlc1wiIGZvciBkZXRhaWxzKVxuIgorbXNnc3RyICIgICh1c2EgXCIlc1wiIHBlciB2aXN1YWxpenphcmUgaSBkZXR0YWdsaSlcbiIKKworIzogcmVtb3RlLmM6MjAzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBpcyBhaGVhZCBvZiAnJXMnIGJ5ICVkIGNvbW1pdC5cbiIKIG1zZ2lkX3BsdXJhbCAiWW91ciBicmFuY2ggaXMgYWhlYWQgb2YgJyVzJyBieSAlZCBjb21taXRzLlxuIgogbXNnc3RyWzBdICJJbCB0dW8gYnJhbmNoIMOoIGF2YW50aSByaXNwZXR0byBhICclcycgZGkgJWQgY29tbWl0LlxuIgogbXNnc3RyWzFdICJJbCB0dW8gYnJhbmNoIMOoIGF2YW50aSByaXNwZXR0byBhICclcycgZGkgJWQgY29tbWl0LlxuIgogCi0jOiByZW1vdGUuYzoxNjM1CisjOiByZW1vdGUuYzoyMDQ0Cittc2dpZCAiICAodXNlIFwiZ2l0IHB1c2hcIiB0byBwdWJsaXNoIHlvdXIgbG9jYWwgY29tbWl0cylcbiIKK21zZ3N0ciAiICAodXNhIFwiZ2l0IHB1c2hcIiBwZXIgcHViYmxpY2FyZSBpIHR1b2kgY29tbWl0IGxvY2FsaSlcbiIKKworIzogcmVtb3RlLmM6MjA0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBpcyBiZWhpbmQgJyVzJyBieSAlZCBjb21taXQsIGFuZCBjYW4gYmUgZmFzdC1mb3J3YXJkZWQuXG4iCiBtc2dpZF9wbHVyYWwgIiIKICJZb3VyIGJyYW5jaCBpcyBiZWhpbmQgJyVzJyBieSAlZCBjb21taXRzLCBhbmQgY2FuIGJlIGZhc3QtZm9yd2FyZGVkLlxuIgogbXNnc3RyWzBdICIiCisiSWwgdHVvIGJyYW5jaCwgcmlzcGV0dG8gYSAnJXMnLCDDqCBpbmRpZXRybyBkaSAlZCBjb21taXQgZSBuZSBwb3NzbyBlc2VndWlyZSAiCisiaWwgZmFzdCBmb3J3YXJkLlxuIgogbXNnc3RyWzFdICIiCisiSWwgdHVvIGJyYW5jaCwgcmlzcGV0dG8gYSAnJXMnLCDDqCBpbmRpZXRybyBkaSAlZCBjb21taXQgZSBuZSBwb3NzbyBlc2VndWlyZSAiCisiaWwgZmFzdCBmb3J3YXJkLlxuIgogCi0jOiByZW1vdGUuYzoxNjQzCisjOiByZW1vdGUuYzoyMDU1Cittc2dpZCAiICAodXNlIFwiZ2l0IHB1bGxcIiB0byB1cGRhdGUgeW91ciBsb2NhbCBicmFuY2gpXG4iCittc2dzdHIgIiAgKHVzYSBcImdpdCBwdWxsXCIgcGVyIGFnZ2lvcm5hcmUgaWwgdHVvIGJyYW5jaCBsb2NhbGUpXG4iCisKKyM6IHJlbW90ZS5jOjIwNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgYnJhbmNoIGFuZCAnJXMnIGhhdmUgZGl2ZXJnZWQsXG4iCkBAIC0zNzksMTY4OSArNjQxMyw0MTkgQEAKICJZb3VyIGJyYW5jaCBhbmQgJyVzJyBoYXZlIGRpdmVyZ2VkLFxuIgogImFuZCBoYXZlICVkIGFuZCAlZCBkaWZmZXJlbnQgY29tbWl0cyBlYWNoLCByZXNwZWN0aXZlbHkuXG4iCiBtc2dzdHJbMF0gIiIKKyJJbCB0dW8gYnJhbmNoIGUgJyVzJyBzb25vIGRpdmVudGF0aSBkaXZlcmdlbnRpXG4iCisiZSBoYW5ubyByaXNwZXR0aXZhbWVudGUgJWQgZSAlZCBjb21taXQgZGlmZmVyZW50aS5cbiIKIG1zZ3N0clsxXSAiIgorIklsIHR1byBicmFuY2ggZSAnJXMnIHNvbm8gZGl2ZW50YXRpIGRpdmVyZ2VudGlcbiIKKyJlIGhhbm5vIHJpc3BldHRpdmFtZW50ZSAlZCBlICVkIGNvbW1pdCBkaWZmZXJlbnRpLlxuIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjEgYnVpbHRpbi9tZXJnZS5jOjg2NSBidWlsdGluL21lcmdlLmM6OTc4Ci0jOiBidWlsdGluL21lcmdlLmM6MTA4OCBidWlsdGluL21lcmdlLmM6MTA5OAorIzogcmVtb3RlLmM6MjA2OAorbXNnaWQgIiAgKHVzZSBcImdpdCBwdWxsXCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycylcbiIKK21zZ3N0ciAiICAodXNhIFwiZ2l0IHB1bGxcIiBwZXIgZXNlZ3VpcmUgaWwgbWVyZ2UgZGVsIGJyYW5jaCByZW1vdG8gbmVsIHR1bylcbiIKKworIzogcmVtb3RlLmM6MjI1MQogIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nIgotbXNnc3RyICJOb24gw6ggc3RhdG8gcG9zc2liaWxlIGFwcmlyZSAnJXMnIHBlciBsYSBzY3JpdHR1cmEiCittc2dpZCAiY2Fubm90IHBhcnNlIGV4cGVjdGVkIG9iamVjdCBuYW1lICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgaWwgbm9tZSBvZ2dldHRvIGF0dGVzbyAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjMgYnVpbHRpbi9tZXJnZS5jOjMzMyBidWlsdGluL21lcmdlLmM6ODY4Ci0jOiBidWlsdGluL21lcmdlLmM6MTA5MCBidWlsdGluL21lcmdlLmM6MTEwMworIzogcmVwbGFjZS1vYmplY3QuYzoyMQogIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3Qgd3JpdGUgdG8gJyVzJyIKLW1zZ3N0ciAiTm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBzY3JpdmVyZSBzdSAnJXMnIgorbXNnaWQgImJhZCByZXBsYWNlIHJlZiBuYW1lOiAlcyIKK21zZ3N0ciAibm9tZSByaWZlcmltZW50byBzb3N0aXR1dGl2byBub24gdmFsaWRvOiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTQ0CisjOiByZXBsYWNlLW9iamVjdC5jOjMwCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSByZXBsYWNlIHJlZjogJXMiCittc2dzdHIgInJpZmVyaW1lbnRvIHNvc3RpdHV0aXZvIGR1cGxpY2F0bzogJXMiCisKKyM6IHJlcGxhY2Utb2JqZWN0LmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVwbGFjZSBkZXB0aCB0b28gaGlnaCBmb3Igb2JqZWN0ICVzIgorbXNnc3RyICJwcm9mb25kaXTDoCBzb3N0aXR1emlvbmUgdHJvcHBvIGVsZXZhdGEgcGVyIGwnb2dnZXR0byAlcyIKKworIzogcmVyZXJlLmM6MjE3IHJlcmVyZS5jOjIyNiByZXJlcmUuYzoyMjkKK21zZ2lkICJjb3JydXB0IE1FUkdFX1JSIgorbXNnc3RyICJNRVJHRV9SUiBjb3Jyb3R0YSIKKworIzogcmVyZXJlLmM6MjY0IHJlcmVyZS5jOjI2OQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSByZXJlcmUgcmVjb3JkIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSBpbCByZWNvcmQgcmVyZXJlIgorCisjOiByZXJlcmUuYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlcmUgd2VyZSBlcnJvcnMgd2hpbGUgd3JpdGluZyAnJXMnICglcykiCittc2dzdHIgInNpIHNvbm8gdmVyaWZpY2F0aSBlcnJvcmkgZHVyYW50ZSBsYSBzY3JpdHR1cmEgZGkgJyVzJyAoJXMpIgorCisjOiByZXJlcmUuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICclcyciCittc2dzdHIgImZsdXNoIGRpICclcycgbm9uIHJpdXNjaXRvIgorCisjOiByZXJlcmUuYzo1MDMgcmVyZXJlLmM6MTAzOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29uZmxpY3QgaHVua3MgaW4gJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBnbGkgaHVuayBjb25mbGl0dG8gaW4gJyVzJyIKKworIzogcmVyZXJlLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB1dGltZSgpIG9uICclcyciCittc2dzdHIgInV0aW1lKCkgZGkgJyVzJyBub24gcml1c2NpdGEiCisKKyM6IHJlcmVyZS5jOjY5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ3cml0aW5nICclcycgZmFpbGVkIgorbXNnc3RyICJzY3JpdHR1cmEgZGkgJyVzJyBub24gcml1c2NpdGEiCisKKyM6IHJlcmVyZS5jOjcxNAorIywgYy1mb3JtYXQKK21zZ2lkICJTdGFnZWQgJyVzJyB1c2luZyBwcmV2aW91cyByZXNvbHV0aW9uLiIKK21zZ3N0ciAiJyVzJyBhZ2dpdW50byBhbGwnYXJlYSBkaSBzdGFnaW5nIHVzYW5kbyBsYSByaXNvbHV6aW9uZSBwcmVjZWRlbnRlLiIKKworIzogcmVyZXJlLmM6NzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIHJlc29sdXRpb24gZm9yICclcycuIgorbXNnc3RyICJSaXNvbHV6aW9uZSBwZXIgJyVzJyByZWdpc3RyYXRhLiIKKworIzogcmVyZXJlLmM6Nzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlc29sdmVkICclcycgdXNpbmcgcHJldmlvdXMgcmVzb2x1dGlvbi4iCittc2dzdHIgIlJpc29sdG8gY29uZmxpdHRvIGluICclcycgdXNhbmRvIGxhIHJpc29sdXppb25lIHByZWNlZGVudGUuIgorCisjOiByZXJlcmUuYzo4MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHVubGluayBzdHJheSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBsJ3VubGluayBkZWxsJ29nZ2V0dG8gc21hcnJpdG8gJyVzJyIKKworIzogcmVyZXJlLmM6ODA3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIHByZWltYWdlIGZvciAnJXMnIgorbXNnc3RyICJTYWx2YXRhIHByZWltbWFnaW5lIGRpICclcyciCisKKyM6IHJlcmVyZS5jOjg4MSBzdWJtb2R1bGUuYzoyMDc4IGJ1aWx0aW4vbG9nLmM6MTg3MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NTQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIGxhIGRpcmVjdG9yeSAnJXMnIgorCisjOiByZXJlcmUuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1cGRhdGUgY29uZmxpY3RlZCBzdGF0ZSBpbiAnJXMnIgorbXNnc3RyICJhZ2dpb3JuYW1lbnRvIGRlbGxvIHN0YXRvIGNvbmZsaXR0byBwZXIgJyVzJyBub24gcml1c2NpdG8iCisKKyM6IHJlcmVyZS5jOjEwNjggcmVyZXJlLmM6MTA3NQorIywgYy1mb3JtYXQKK21zZ2lkICJubyByZW1lbWJlcmVkIHJlc29sdXRpb24gZm9yICclcyciCittc2dzdHIgIm5lc3N1bmEgcmlzb2x1emlvbmUgcHJlc2VudGUgaW4gbWVtb3JpYSBwZXIgJyVzJyIKKworIzogcmVyZXJlLmM6MTA3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgdW5saW5rICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGwndW5saW5rIGRpICclcyciCisKKyM6IHJlcmVyZS5jOjEwODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRlZCBwcmVpbWFnZSBmb3IgJyVzJyIKK21zZ3N0ciAiUHJlaW1tYWdpbmUgZGkgJyVzJyBhZ2dpb3JuYXRhIgorCisjOiByZXJlcmUuYzoxMDk2CisjLCBjLWZvcm1hdAorbXNnaWQgIkZvcmdvdCByZXNvbHV0aW9uIGZvciAnJXMnXG4iCittc2dzdHIgIlJpc29sdXppb25lIHBlciAnJXMnIGRpbWVudGljYXRhXG4iCisKKyM6IHJlcmVyZS5jOjExOTkKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiByci1jYWNoZSBkaXJlY3RvcnkiCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBsYSBkaXJlY3RvcnkgY2FjaGUgcnIiCisKKyM6IHJldmlzaW9uLmM6MjQ5NworbXNnaWQgInlvdXIgY3VycmVudCBicmFuY2ggYXBwZWFycyB0byBiZSBicm9rZW4iCittc2dzdHIgInNlbWJyYSBjaGUgaWwgdHVvIGJyYW5jaCBjb3JyZW50ZSBzaWEgcm90dG8iCisKKyM6IHJldmlzaW9uLmM6MjUwMAorIywgYy1mb3JtYXQKK21zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoICclcycgZG9lcyBub3QgaGF2ZSBhbnkgY29tbWl0cyB5ZXQiCittc2dzdHIgImlsIHR1byBicmFuY2ggY29ycmVudGUgJyVzJyBub24gaGEgYW5jb3JhIGNvbW1pdCIKKworIzogcmV2aXNpb24uYzoyNzA4Cittc2dpZCAiLS1maXJzdC1wYXJlbnQgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1iaXNlY3QiCittc2dzdHIgIi0tZmlyc3QtcGFyZW50IG5vbiDDqCBjb21wYXRpYmlsZSBjb24gLS1iaXNlY3QiCisKKyM6IHJldmlzaW9uLmM6MjcxMgorbXNnaWQgIi1MIGRvZXMgbm90IHlldCBzdXBwb3J0IGRpZmYgZm9ybWF0cyBiZXNpZGVzIC1wIGFuZCAtcyIKK21zZ3N0ciAiLUwgbm9uIHN1cHBvcnRhIGFuY29yYSBmb3JtYXRpIGRpZmYgb2x0cmUgYSAtcCBlIC1zIgorCisjOiBydW4tY29tbWFuZC5jOjc2MworbXNnaWQgIm9wZW4gL2Rldi9udWxsIGZhaWxlZCIKK21zZ3N0ciAiYXBlcnR1cmEgZGkgL2Rldi9udWxsIG5vbiByaXVzY2l0YSIKKworIzogcnVuLWNvbW1hbmQuYzoxMjY5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgYXN5bmMgdGhyZWFkOiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIGlsIHRocmVhZCBhc3luYzogJXMiCisKKyM6IHJ1bi1jb21tYW5kLmM6MTMzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlICclcycgaG9vayB3YXMgaWdub3JlZCBiZWNhdXNlIGl0J3Mgbm90IHNldCBhcyBleGVjdXRhYmxlLlxuIgorIllvdSBjYW4gZGlzYWJsZSB0aGlzIHdhcm5pbmcgd2l0aCBgZ2l0IGNvbmZpZyBhZHZpY2UuaWdub3JlZEhvb2sgZmFsc2VgLiIKK21zZ3N0ciAiIgorIkwnaG9vayAnJXMnIMOoIHN0YXRvIGlnbm9yYXRvIHBlcmNow6kgbm9uIMOoIGltcG9zdGF0byBjb21lIGVzZWd1aWJpbGUuXG4iCisiUHVvaSBkaXNhYmlsaXRhcmUgcXVlc3QnYXZ2aXNvIGNvbiBgZ2l0IGNvbmZpZyBhZHZpY2UuaWdub3JlZEhvb2sgZmFsc2VgLiIKKworIzogc2VuZC1wYWNrLmM6MTQ0Cittc2dpZCAidW5leHBlY3RlZCBmbHVzaCBwYWNrZXQgd2hpbGUgcmVhZGluZyByZW1vdGUgdW5wYWNrIHN0YXR1cyIKK21zZ3N0ciAiIgorInBhY2NoZXR0byBmbHVzaCBpbmF0dGVzbyBkdXJhbnRlIGxhIGxldHR1cmEgZGVsbG8gc3RhdG8gZGVjb21wcmVzc2lvbmUgZGVsICIKKyJyZW1vdG8iCisKKyM6IHNlbmQtcGFjay5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgcmVtb3RlIHVucGFjayBzdGF0dXM6ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGxvIHN0YXRvIGRlY29tcHJlc3Npb25lIGRlbCByZW1vdG86ICVzIgorCisjOiBzZW5kLXBhY2suYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlIHVucGFjayBmYWlsZWQ6ICVzIgorbXNnc3RyICJkZWNvbXByZXNzaW9uZSBzdWwgcmVtb3RvIG5vbiByaXVzY2l0YTogJXMiCisKKyM6IHNlbmQtcGFjay5jOjMwOQorbXNnaWQgImZhaWxlZCB0byBzaWduIHRoZSBwdXNoIGNlcnRpZmljYXRlIgorbXNnc3RyICJmaXJtYSBkZWwgY2VydGlmaWNhdG8gcGVyIGlsIHB1c2ggbm9uIHJpdXNjaXRhIgorCisjOiBzZW5kLXBhY2suYzo0MjMKK21zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIHB1c2giCittc2dzdHIgImlsIHJpY2V2ZW50ZSBub24gc3VwcG9ydGEgaSBwdXNoIC0tc2lnbmVkIgorCisjOiBzZW5kLXBhY2suYzo0MjUKK21zZ2lkICIiCisibm90IHNlbmRpbmcgYSBwdXNoIGNlcnRpZmljYXRlIHNpbmNlIHRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS0iCisic2lnbmVkIHB1c2giCittc2dzdHIgIiIKKyJub24gaW52aW8gdW4gY2VydGlmaWNhdG8gcHVzaCBwZXJjaMOpIGlsIHJpY2V2ZW50ZSBub24gc3VwcG9ydGEgaSBwdXNoIC0tIgorInNpZ25lZCIKKworIzogc2VuZC1wYWNrLmM6NDM3Cittc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCAtLWF0b21pYyBwdXNoIgorbXNnc3RyICJpbCByaWNldmVudGUgbm9uIHN1cHBvcnRhIGkgcHVzaCAtLWF0b21pYyIKKworIzogc2VuZC1wYWNrLmM6NDQyCittc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCBwdXNoIG9wdGlvbnMiCittc2dzdHIgImlsIHJpY2V2ZW50ZSBub24gc3VwcG9ydGEgbGUgb3B6aW9uaSBwdXNoIgorCisjOiBzZXF1ZW5jZXIuYzoxOTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21taXQgbWVzc2FnZSBjbGVhbnVwIG1vZGUgJyVzJyIKK21zZ3N0ciAibW9kYWxpdMOgIHB1bGl6aWEgbWVzc2FnZ2lvIGNvbW1pdCBub24gdmFsaWRhOiAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzoyOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGRlbGV0ZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlbGltaW5hcmUgJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MzE1IGJ1aWx0aW4vcmViYXNlLmM6Nzg1IGJ1aWx0aW4vcmViYXNlLmM6MTc1MCBidWlsdGluL3JtLmM6Mzg1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmltdW92ZXJlICclcyciCisKKyM6IHNlcXVlbmNlci5jOjMyNQorbXNnaWQgInJldmVydCIKK21zZ3N0ciAicmV2ZXJ0IgorCisjOiBzZXF1ZW5jZXIuYzozMjcKK21zZ2lkICJjaGVycnktcGljayIKK21zZ3N0ciAiY2hlcnJ5LXBpY2siCisKKyM6IHNlcXVlbmNlci5jOjMyOQorbXNnaWQgInJlYmFzZSIKK21zZ3N0ciAicmViYXNlIgorCisjOiBzZXF1ZW5jZXIuYzozMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhY3Rpb246ICVkIgorbXNnc3RyICJhemlvbmUgc2Nvbm9zY2l1dGE6ICVkIgorCisjOiBzZXF1ZW5jZXIuYzozODkKIG1zZ2lkICIiCiAiYWZ0ZXIgcmVzb2x2aW5nIHRoZSBjb25mbGljdHMsIG1hcmsgdGhlIGNvcnJlY3RlZCBwYXRoc1xuIgogIndpdGggJ2dpdCBhZGQgPHBhdGhzPicgb3IgJ2dpdCBybSA8cGF0aHM+JyIKIG1zZ3N0ciAiIgotImRvcG8gYXZlciByaXNvbHRvIGkgY29uZmxpdHRpLCBzZWduYSBpIHBhdGggY29ycmV0dGlcbiIKKyJkb3BvIGF2ZXIgcmlzb2x0byBpIGNvbmZsaXR0aSwgY29udHJhc3NlZ25hIGkgcGVyY29yc2kgY29ycmV0dGlcbiIKICJjb24gJ2dpdCBhZGQgPHBhdGg+JyBvICdnaXQgcm0gPHBhdGg+JyIKIAotIzogc2VxdWVuY2VyLmM6MTQ3CisjOiBzZXF1ZW5jZXIuYzozOTIKIG1zZ2lkICIiCiAiYWZ0ZXIgcmVzb2x2aW5nIHRoZSBjb25mbGljdHMsIG1hcmsgdGhlIGNvcnJlY3RlZCBwYXRoc1xuIgogIndpdGggJ2dpdCBhZGQgPHBhdGhzPicgb3IgJ2dpdCBybSA8cGF0aHM+J1xuIgogImFuZCBjb21taXQgdGhlIHJlc3VsdCB3aXRoICdnaXQgY29tbWl0JyIKIG1zZ3N0ciAiIgotImRvcG8gYXZlciByaXNvbHRvIGkgY29uZmxpdHRpLCBzZWduYSBpIHBhdGggY29ycmV0dGlcbiIKLSJjb24gJ2dpdCBhZGQgPHBhdGg+JyBvICdnaXQgcm0gPHBhdGg+JyBlZCBlc2VndWlyZVxuIgorImRvcG8gYXZlciByaXNvbHRvIGkgY29uZmxpdHRpLCBjb250cmFzc2VnbmEgaSBwZXJjb3JzaSBjb3JyZXR0aVxuIgorImNvbiAnZ2l0IGFkZCA8cGF0aD4nIG8gJ2dpdCBybSA8cGF0aD4nIGVkIGVzZWd1aVxuIgogImlsIGNvbW1pdCBkZWwgcmlzdWx0YXRvIGNvbiAnZ2l0IGNvbW1pdCciCiAKLSM6IHNlcXVlbmNlci5jOjE2MCBzZXF1ZW5jZXIuYzo3NTggc2VxdWVuY2VyLmM6ODQxCisjOiBzZXF1ZW5jZXIuYzo0MDUgc2VxdWVuY2VyLmM6MjkwMQogIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3Qgd3JpdGUgdG8gJXMiCi1tc2dzdHIgIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgc2NyaXZlcmUgc3UgJXMiCittc2dpZCAiY291bGQgbm90IGxvY2sgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYmxvY2NhcmUgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MTYzCisjOiBzZXF1ZW5jZXIuYzo0MTIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiRXJyb3Igd3JhcHBpbmcgdXAgJXMiCi1tc2dzdHIgIiIKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZW9sIHRvICclcyciCittc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGlsIGNhcmF0dGVyZSBkaSBmaW5lIHJpZ2EgaW4gJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MTc4Ci1tc2dpZCAiWW91ciBsb2NhbCBjaGFuZ2VzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IGNoZXJyeS1waWNrLiIKLW1zZ3N0ciAiTGUgdHVlIG1vZGlmaWNoZSBsb2NhbGkgdmVycmFubm8gc292cmFzY3JpdHRlIGRhIGNoZXJyeS1waWNrIgorIzogc2VxdWVuY2VyLmM6NDE3IHNlcXVlbmNlci5jOjI3MDYgc2VxdWVuY2VyLmM6MjkwNyBzZXF1ZW5jZXIuYzoyOTIxCisjOiBzZXF1ZW5jZXIuYzozMTg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmaW5hbGl6ZSAnJXMnIgorbXNnc3RyICJmaW5hbGl6emF6aW9uZSBkaSAnJXMnIG5vbiByaXVzY2l0YSIKIAotIzogc2VxdWVuY2VyLmM6MTgwCi1tc2dpZCAiWW91ciBsb2NhbCBjaGFuZ2VzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IHJldmVydC4iCi1tc2dzdHIgIkxlIHR1ZSBtb2RpZmljaGUgbG9jYWxpIHZlcnJhbm5vIHNvdnJhc2NyaXR0ZSBkYSByZXZlcnQuIgorIzogc2VxdWVuY2VyLmM6NDQwIHNlcXVlbmNlci5jOjE2MTMgc2VxdWVuY2VyLmM6MjcyNiBzZXF1ZW5jZXIuYzozMTY3CisjOiBzZXF1ZW5jZXIuYzozMjc2IGJ1aWx0aW4vYW0uYzoyNDkgYnVpbHRpbi9jb21taXQuYzo3ODcgYnVpbHRpbi9tZXJnZS5jOjExMjAKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MTgzCi1tc2dpZCAiQ29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQuIgotbXNnc3RyICIiCisjOiBzZXF1ZW5jZXIuYzo0NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAieW91ciBsb2NhbCBjaGFuZ2VzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzLiIKK21zZ3N0ciAibGUgdHVlIG1vZGlmaWNoZSBsb2NhbGkgc2FyZWJiZXJvIHNvdnJhc2NyaXR0ZSBkYSAlcy4iCiAKLSMuIFRSQU5TTEFUT1JTOiAlcyB3aWxsIGJlICJyZXZlcnQiIG9yICJjaGVycnktcGljayIKLSM6IHNlcXVlbmNlci5jOjIzMworIzogc2VxdWVuY2VyLmM6NDcwCittc2dpZCAiY29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQuIgorbXNnc3RyICJlc2VndWkgaWwgY29tbWl0IGRlbGxlIG1vZGlmaWNoZSBvIGxvIHN0YXNoIHBlciBwcm9jZWRlcmUuIgorCisjOiBzZXF1ZW5jZXIuYzo1MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhc3QtZm9yd2FyZCIKK21zZ3N0ciAiJXM6IGZhc3QgZm9yd2FyZCIKKworIzogc2VxdWVuY2VyLmM6NTQxIGJ1aWx0aW4vdGFnLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgY2xlYW51cCBtb2RlICVzIgorbXNnc3RyICJNb2RhbGl0w6AgcHVsaXppYSBub24gdmFsaWRhOiAlcyIKKworIy4gVFJBTlNMQVRPUlM6ICVzIHdpbGwgYmUgInJldmVydCIsICJjaGVycnktcGljayIgb3IKKyMuICJyZWJhc2UiLgorIy4KKyM6IHNlcXVlbmNlci5jOjYzNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgotbXNnc3RyICIlczogaW1wb3NzaWJpbGUgc2NyaXZlcmUgaWwgbnVvdm8gaW5kZXggZmlsZSIKK21zZ3N0ciAiJXM6IGltcG9zc2liaWxlIHNjcml2ZXJlIGlsIG51b3ZvIGZpbGUgaW5kaWNlIgogCi0jOiBzZXF1ZW5jZXIuYzoyNjEKLW1zZ2lkICJDb3VsZCBub3QgcmVzb2x2ZSBIRUFEIGNvbW1pdFxuIgotbXNnc3RyICJOb24gw6ggc3RhdG8gcG9zc2liaWxlIHJpc29sdmVyZSBpbCBjb21taXQgSEVBRFxuIgorIzogc2VxdWVuY2VyLmM6NjUyCittc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBjYWNoZSB0cmVlIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhZ2dpb3JuYXJlIGwnYWxiZXJvIGNhY2hlIgogCi0jOiBzZXF1ZW5jZXIuYzoyODIKLW1zZ2lkICJVbmFibGUgdG8gdXBkYXRlIGNhY2hlIHRyZWVcbiIKLW1zZ3N0ciAiIgorIzogc2VxdWVuY2VyLmM6NjY2Cittc2dpZCAiY291bGQgbm90IHJlc29sdmUgSEVBRCBjb21taXQiCittc2dzdHIgImltcG9zc2liaWxlIHJpc29sdmVyZSBpbCBjb21taXQgSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6MzI0CisjOiBzZXF1ZW5jZXIuYzo3NDYKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IHBhcnNlIGNvbW1pdCAlc1xuIgotbXNnc3RyICJOb24gw6ggc3RhdG8gcG9zc2liaWxlIGFuYWxpenphcmUgaWwgY29tbWl0ICVzXG4iCittc2dpZCAibm8ga2V5IHByZXNlbnQgaW4gJyUuKnMnIgorbXNnc3RyICJuZXNzdW5hIGNoaWF2ZSBwcmVzZW50ZSBpbiAnJS4qcyciCiAKLSM6IHNlcXVlbmNlci5jOjMyOQorIzogc2VxdWVuY2VyLmM6NzU3CiAjLCBjLWZvcm1hdAotbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBwYXJlbnQgY29tbWl0ICVzXG4iCi1tc2dzdHIgIiIKK21zZ2lkICJ1bmFibGUgdG8gZGVxdW90ZSB2YWx1ZSBvZiAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaW11b3ZlcmUgZ2xpIGFwaWNpIGRhbCB2YWxvcmUgZGkgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6Mzk1Ci1tc2dpZCAiWW91ciBpbmRleCBmaWxlIGlzIHVubWVyZ2VkLiIKLW1zZ3N0ciAiIgotCi0jOiBzZXF1ZW5jZXIuYzozOTgKLW1zZ2lkICJZb3UgZG8gbm90IGhhdmUgYSB2YWxpZCBIRUFEIgotbXNnc3RyICJOb24gaGFpIHVuIEhFQUQgdmFsaWRvIgotCi0jOiBzZXF1ZW5jZXIuYzo0MTMKKyM6IHNlcXVlbmNlci5jOjc5NCB3cmFwcGVyLmM6MTkwIHdyYXBwZXIuYzozNjAgYnVpbHRpbi9hbS5jOjcxMAorIzogYnVpbHRpbi9hbS5jOjgwMiBidWlsdGluL21lcmdlLmM6MTExNyBidWlsdGluL3JlYmFzZS5jOjEwNzIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ29tbWl0ICVzIGlzIGEgbWVyZ2UgYnV0IG5vIC1tIG9wdGlvbiB3YXMgZ2l2ZW4uIgotbXNnc3RyICJJbCBjb21taXQgJXMgw6ggdW4gbWVyZ2UgbWEgbm9uIMOoIHN0YXRhIHNwZWNpZmljYXRhIGwnb3B6aW9uZSAtbS4iCittc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlICclcycgaW4gbGV0dHVyYSIKIAotIzogc2VxdWVuY2VyLmM6NDIxCi0jLCBjLWZvcm1hdAotbXNnaWQgIkNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIHBhcmVudCAlZCIKLW1zZ3N0ciAiIgotCi0jOiBzZXF1ZW5jZXIuYzo0MjUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiTWFpbmxpbmUgd2FzIHNwZWNpZmllZCBidXQgY29tbWl0ICVzIGlzIG5vdCBhIG1lcmdlLiIKLW1zZ3N0ciAiIgotCi0jLiBUUkFOU0xBVE9SUzogVGhlIGZpcnN0ICVzIHdpbGwgYmUgInJldmVydCIgb3IKLSMuICJjaGVycnktcGljayIsIHRoZSBzZWNvbmQgJXMgYSBTSEExCi0jOiBzZXF1ZW5jZXIuYzo0MzYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiJXM6IGNhbm5vdCBwYXJzZSBwYXJlbnQgY29tbWl0ICVzIgotbXNnc3RyICIiCi0KLSM6IHNlcXVlbmNlci5jOjQ0MAotIywgYy1mb3JtYXQKLW1zZ2lkICJDYW5ub3QgZ2V0IGNvbW1pdCBtZXNzYWdlIGZvciAlcyIKLW1zZ3N0ciAiSW1wb3NzaWJpbGUgb3R0ZW5lcmUgaWwgbWVzc2FnZ2lvIGRpIGNvbW1pdCBwZXIgJXMiCi0KLSM6IHNlcXVlbmNlci5jOjUyNAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgcmV2ZXJ0ICVzLi4uICVzIgotbXNnc3RyICJub24gw6ggc3RhdG8gcG9zc2liaWxlIGVzZWd1aXJlIGlsIHJldmVydCBkaSAlcy4uLiAlcyIKLQotIzogc2VxdWVuY2VyLmM6NTI1Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBhcHBseSAlcy4uLiAlcyIKLW1zZ3N0ciAibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBhcHBsaWNhcmUgJXMuLi4gJXMiCi0KLSM6IHNlcXVlbmNlci5jOjU1MwotbXNnaWQgImVtcHR5IGNvbW1pdCBzZXQgcGFzc2VkIgotbXNnc3RyICLDqCBzdGF0byBwYXNzYXRvIHVuIHNldCBkaSBjb21taXQgdnVvdG8iCi0KLSM6IHNlcXVlbmNlci5jOjU2MQotIywgYy1mb3JtYXQKLW1zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIKLW1zZ3N0ciAiZ2l0ICVzOiBsZXR0dXJhIGRpIGluZGV4IG5vbiByaXVzY2l0YSIKLQotIzogc2VxdWVuY2VyLmM6NTY2Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdpdCAlczogZmFpbGVkIHRvIHJlZnJlc2ggdGhlIGluZGV4IgotbXNnc3RyICJnaXQgJXM6IGFnZ2lvcm5hbWVudG8gZGkgaW5kZXggbm9uIHJpdXNjaXRvIgotCi0jOiBzZXF1ZW5jZXIuYzo2MjQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ2Fubm90ICVzIGR1cmluZyBhICVzIgotbXNnc3RyICIiCi0KLSM6IHNlcXVlbmNlci5jOjY0NgotIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgcGFyc2UgbGluZSAlZC4iCi1tc2dzdHIgIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgYW5hbGl6emFyZSBsYSByaWdhICVkLiIKLQotIzogc2VxdWVuY2VyLmM6NjUxCi1tc2dpZCAiTm8gY29tbWl0cyBwYXJzZWQuIgotbXNnc3RyICJOZXNzdW4gY29tbWl0IGFuYWxpenphdG8uIgotCi0jOiBzZXF1ZW5jZXIuYzo2NjQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IG9wZW4gJXMiCi1tc2dzdHIgIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgYXByaXJlICVzIgotCi0jOiBzZXF1ZW5jZXIuYzo2NjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IHJlYWQgJXMuIgotbXNnc3RyICJOb24gw6ggc3RhdG8gcG9zc2liaWxlIGxlZ2dlcmUgJXMuIgotCi0jOiBzZXF1ZW5jZXIuYzo2NzUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVW51c2FibGUgaW5zdHJ1Y3Rpb24gc2hlZXQ6ICVzIgotbXNnc3RyICIiCi0KLSM6IHNlcXVlbmNlci5jOjcwMwotIywgYy1mb3JtYXQKLW1zZ2lkICJJbnZhbGlkIGtleTogJXMiCi1tc2dzdHIgIkNoaWF2ZSBub24gdmFsaWRhOiAlcyIKLQotIzogc2VxdWVuY2VyLmM6NzA2Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yICVzOiAlcyIKLW1zZ3N0ciAiVmFsb3JlIG5vbiB2YWxpZG8gcGVyICVzOiAlcyIKLQotIzogc2VxdWVuY2VyLmM6NzE4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIk1hbGZvcm1lZCBvcHRpb25zIHNoZWV0OiAlcyIKLW1zZ3N0ciAiIgotCi0jOiBzZXF1ZW5jZXIuYzo3MzkKLW1zZ2lkICJhIGNoZXJyeS1waWNrIG9yIHJldmVydCBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgotbXNnc3RyICLDqCBnacOgIGluIGNvcnNvIHVuJ29wZXJhemlvbmUgZGkgY2hlcnJ5LXBpY2sgbyBkaSByZXZlcnQiCi0KLSM6IHNlcXVlbmNlci5jOjc0MAotbXNnaWQgInRyeSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8IC0tcXVpdCB8IC0tYWJvcnQpXCIiCi1tc2dzdHIgInByb3ZhIFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgLS1xdWl0IHwgLS0gYWJvcnQpXCIiCi0KLSM6IHNlcXVlbmNlci5jOjc0NAotIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIHNlcXVlbmNlciBkaXJlY3RvcnkgJXMiCi1tc2dzdHIgIiIKLQotIzogc2VxdWVuY2VyLmM6NzYwIHNlcXVlbmNlci5jOjg0NQotIywgYy1mb3JtYXQKLW1zZ2lkICJFcnJvciB3cmFwcGluZyB1cCAlcy4iCi1tc2dzdHIgIiIKLQotIzogc2VxdWVuY2VyLmM6Nzc5IHNlcXVlbmNlci5jOjkxMwotbXNnaWQgIm5vIGNoZXJyeS1waWNrIG9yIHJldmVydCBpbiBwcm9ncmVzcyIKLW1zZ3N0ciAibmVzc3VuYSBvcGVyYXppb25lIGRpIGNoZXJyeS1waWNrIG8gcmV2ZXJ0IGluIGNvcnNvIgotCi0jOiBzZXF1ZW5jZXIuYzo3ODEKLW1zZ2lkICJjYW5ub3QgcmVzb2x2ZSBIRUFEIgotbXNnc3RyICJpbXBvc3NpYmlsZSByaXNvbHZlcmUgSEVBRCIKLQotIzogc2VxdWVuY2VyLmM6NzgzCi1tc2dpZCAiY2Fubm90IGFib3J0IGZyb20gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iCi1tc2dzdHIgIiIKLQotIzogc2VxdWVuY2VyLmM6ODA1IGJ1aWx0aW4vYXBwbHkuYzozNjk3Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNhbm5vdCBvcGVuICVzOiAlcyIKLW1zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlICVzOiAlcyIKLQotIzogc2VxdWVuY2VyLmM6ODA4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNhbm5vdCByZWFkICVzOiAlcyIKLW1zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSAlczogJXMiCisjOiBzZXF1ZW5jZXIuYzo4MDQKK21zZ2lkICInR0lUX0FVVEhPUl9OQU1FJyBhbHJlYWR5IGdpdmVuIgorbXNnc3RyICInR0lUX0FVVEhPUl9OQU1FJyBnacOgIHNwZWNpZmljYXRvIgogCiAjOiBzZXF1ZW5jZXIuYzo4MDkKLW1zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIgotbXNnc3RyICJmaW5lIGRlbCBmaWxlIGluYXR0ZXNhIgorbXNnaWQgIidHSVRfQVVUSE9SX0VNQUlMJyBhbHJlYWR5IGdpdmVuIgorbXNnc3RyICInR0lUX0FVVEhPUl9FTUFJTCcgZ2nDoCBzcGVjaWZpY2F0byIKIAotIzogc2VxdWVuY2VyLmM6ODE1CisjOiBzZXF1ZW5jZXIuYzo4MTQKK21zZ2lkICInR0lUX0FVVEhPUl9EQVRFJyBhbHJlYWR5IGdpdmVuIgorbXNnc3RyICInR0lUX0FVVEhPUl9EQVRFJyBnacOgIHNwZWNpZmljYXRvIgorCisjOiBzZXF1ZW5jZXIuYzo4MTgKICMsIGMtZm9ybWF0Ci1tc2dpZCAic3RvcmVkIHByZS1jaGVycnktcGljayBIRUFEIGZpbGUgJyVzJyBpcyBjb3JydXB0IgotbXNnc3RyICIiCittc2dpZCAidW5rbm93biB2YXJpYWJsZSAnJXMnIgorbXNnc3RyICJ2YXJpYWJpbGUgJyVzJyBzY29ub3NjaXV0YSIKIAotIzogc2VxdWVuY2VyLmM6ODM4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkNvdWxkIG5vdCBmb3JtYXQgJXMuIgotbXNnc3RyICIiCisjOiBzZXF1ZW5jZXIuYzo4MjMKK21zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX05BTUUnIgorbXNnc3RyICInR0lUX0FVVEhPUl9OQU1FJyBtYW5jYW50ZSIKIAotIzogc2VxdWVuY2VyLmM6MTAwMAotbXNnaWQgIkNhbid0IHJldmVydCBhcyBpbml0aWFsIGNvbW1pdCIKLW1zZ3N0ciAiSW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgcmV2ZXJ0IGNvbWUgY29tbWl0IGluaXppYWxlIgorIzogc2VxdWVuY2VyLmM6ODI1Cittc2dpZCAibWlzc2luZyAnR0lUX0FVVEhPUl9FTUFJTCciCittc2dzdHIgIidHSVRfQVVUSE9SX0VNQUlMJyBtYW5jYW50ZSIKIAotIzogc2VxdWVuY2VyLmM6MTAwMQotbXNnaWQgIkNhbid0IGNoZXJyeS1waWNrIGludG8gZW1wdHkgaGVhZCIKLW1zZ3N0ciAiIgorIzogc2VxdWVuY2VyLmM6ODI3Cittc2dpZCAibWlzc2luZyAnR0lUX0FVVEhPUl9EQVRFJyIKK21zZ3N0ciAiJ0dJVF9BVVRIT1JfREFURScgbWFuY2FudGUiCiAKLSM6IHNoYTFfbmFtZS5jOjg2NAotbXNnaWQgIkhFQUQgZG9lcyBub3QgcG9pbnQgdG8gYSBicmFuY2giCi1tc2dzdHIgIkhFQUQgbm9uIHB1bnRhIGFkIHVuIGJyYW5jaCIKLQotIzogc2hhMV9uYW1lLmM6ODY3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIk5vIHN1Y2ggYnJhbmNoOiAnJXMnIgotbXNnc3RyICJOZXNzdW4gYnJhbmNoIGVzaXN0ZW50ZTogJyVzJyIKLQotIzogc2hhMV9uYW1lLmM6ODY5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIk5vIHVwc3RyZWFtIGNvbmZpZ3VyZWQgZm9yIGJyYW5jaCAnJXMnIgotbXNnc3RyICJOZXNzdW4gdXBzdHJlYW0gY29uZmlndXJhdG8gcGVyIGlsIGJyYW5jaCAnJXMnIgotCi0jOiBzaGExX25hbWUuYzo4NzIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVXBzdHJlYW0gYnJhbmNoICclcycgbm90IHN0b3JlZCBhcyBhIHJlbW90ZS10cmFja2luZyBicmFuY2giCi1tc2dzdHIgIiIKLQotIzogd3JhcHBlci5jOjQxMwotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gbG9vayB1cCBjdXJyZW50IHVzZXIgaW4gdGhlIHBhc3N3ZCBmaWxlOiAlcyIKLW1zZ3N0ciAiaW1wb3NzaWJpbGUgdHJvdmFyZSBsJ3V0ZW50ZSBjb3JyZW50ZSBuZWwgZmlsZSBwYXNzd2Q6ICVzIgotCi0jOiB3cmFwcGVyLmM6NDE0Ci1tc2dpZCAibm8gc3VjaCB1c2VyIgotbXNnc3RyICJ1dGVudGUgbm9uIGVzaXN0ZW50ZSIKLQotIzogd3Qtc3RhdHVzLmM6MTM1Ci1tc2dpZCAiVW5tZXJnZWQgcGF0aHM6IgotbXNnc3RyICIiCi0KLSM6IHd0LXN0YXR1cy5jOjE0MSB3dC1zdGF0dXMuYzoxNTgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiICAodXNlIFwiZ2l0IHJlc2V0ICVzIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgotbXNnc3RyICIiCi0KLSM6IHd0LXN0YXR1cy5jOjE0MyB3dC1zdGF0dXMuYzoxNjAKLW1zZ2lkICIgICh1c2UgXCJnaXQgcm0gLS1jYWNoZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCi1tc2dzdHIgIiIKLQotIzogd3Qtc3RhdHVzLmM6MTQ0Ci1tc2dpZCAiICAodXNlIFwiZ2l0IGFkZC9ybSA8ZmlsZT4uLi5cIiBhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24pIgotbXNnc3RyICIgICh1c2EgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIGNvbWUgYXBwcm9wcmlhdG8gcGVyIGxhIHJpc29sdXppb25lKSIKLQotIzogd3Qtc3RhdHVzLmM6MTUyCi1tc2dpZCAiQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6IgotbXNnc3RyICIiCi0KLSM6IHd0LXN0YXR1cy5jOjE3MAotbXNnaWQgIkNoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OiIKLW1zZ3N0ciAiIgotCi0jOiB3dC1zdGF0dXMuYzoxNzQKLW1zZ2lkICIgICh1c2UgXCJnaXQgYWRkIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKLW1zZ3N0ciAiIgotCi0jOiB3dC1zdGF0dXMuYzoxNzYKLW1zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKLW1zZ3N0ciAiIgotCi0jOiB3dC1zdGF0dXMuYzoxNzcKLW1zZ2lkICIiCi0iICAodXNlIFwiZ2l0IGNoZWNrb3V0IC0tIDxmaWxlPi4uLlwiIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkiCi1tc2dzdHIgIiIKLQotIzogd3Qtc3RhdHVzLmM6MTc5Ci1tc2dpZCAiICAoY29tbWl0IG9yIGRpc2NhcmQgdGhlIHVudHJhY2tlZCBvciBtb2RpZmllZCBjb250ZW50IGluIHN1Ym1vZHVsZXMpIgotbXNnc3RyICIiCi0KLSM6IHd0LXN0YXR1cy5jOjE4OAotIywgYy1mb3JtYXQKLW1zZ2lkICIlcyBmaWxlczoiCi1tc2dzdHIgIiVzIGZpbGU6IgotCi0jOiB3dC1zdGF0dXMuYzoxOTEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiICAodXNlIFwiZ2l0ICVzIDxmaWxlPi4uLlwiIHRvIGluY2x1ZGUgaW4gd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCi1tc2dzdHIgIiIKLQotIzogd3Qtc3RhdHVzLmM6MjA4Ci1tc2dpZCAiYnVnIgotbXNnc3RyICJidWciCi0KLSM6IHd0LXN0YXR1cy5jOjIxMwotbXNnaWQgImJvdGggZGVsZXRlZDoiCi1tc2dzdHIgImVudHJhbWJpIGVsaW1pbmF0aToiCi0KLSM6IHd0LXN0YXR1cy5jOjIxNAotbXNnaWQgImFkZGVkIGJ5IHVzOiIKLW1zZ3N0ciAiYWdnaXVudG8gZGEgbm9pOiIKLQotIzogd3Qtc3RhdHVzLmM6MjE1Ci1tc2dpZCAiZGVsZXRlZCBieSB0aGVtOiIKLW1zZ3N0ciAiZWxpbWluYXRvIGRhIGxvcm86IgotCi0jOiB3dC1zdGF0dXMuYzoyMTYKLW1zZ2lkICJhZGRlZCBieSB0aGVtOiIKLW1zZ3N0ciAiYWdnaXVudG8gZGEgbG9ybzoiCi0KLSM6IHd0LXN0YXR1cy5jOjIxNwotbXNnaWQgImRlbGV0ZWQgYnkgdXM6IgotbXNnc3RyICJlbGltaW5hdG8gZGEgbm9pOiIKLQotIzogd3Qtc3RhdHVzLmM6MjE4Ci1tc2dpZCAiYm90aCBhZGRlZDoiCi1tc2dzdHIgImVudHJhbWJpIGFnZ2l1bnRpOiIKLQotIzogd3Qtc3RhdHVzLmM6MjE5Ci1tc2dpZCAiYm90aCBtb2RpZmllZDoiCi1tc2dzdHIgImVudHJhbWJpIG1vZGlmaWNhdGk6IgotCi0jOiB3dC1zdGF0dXMuYzoyNDkKLW1zZ2lkICJuZXcgY29tbWl0cywgIgotbXNnc3RyICJudW92aSBjb21taXQsICIKLQotIzogd3Qtc3RhdHVzLmM6MjUxCi1tc2dpZCAibW9kaWZpZWQgY29udGVudCwgIgotbXNnc3RyICJjb250ZW51dG8gbW9kaWZpY2F0bywgIgotCi0jOiB3dC1zdGF0dXMuYzoyNTMKLW1zZ2lkICJ1bnRyYWNrZWQgY29udGVudCwgIgotbXNnc3RyICIiCi0KLSM6IHd0LXN0YXR1cy5jOjI2NwotIywgYy1mb3JtYXQKLW1zZ2lkICJuZXcgZmlsZTogICAlcyIKLW1zZ3N0ciAibnVvdm8gZmlsZTogICAlcyIKLQotIzogd3Qtc3RhdHVzLmM6MjcwCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvcGllZDogICAgICVzIC0+ICVzIgotbXNnc3RyICJjb3BpYXRvOiAgICAgJXMgLT4gJXMiCi0KLSM6IHd0LXN0YXR1cy5jOjI3MwotIywgYy1mb3JtYXQKLW1zZ2lkICJkZWxldGVkOiAgICAlcyIKLW1zZ3N0ciAiZWxpbWluYXRvOiAgICAlcyIKLQotIzogd3Qtc3RhdHVzLmM6Mjc2Ci0jLCBjLWZvcm1hdAotbXNnaWQgIm1vZGlmaWVkOiAgICVzIgotbXNnc3RyICJtb2RpZmljYXRvOiAgICVzIgotCi0jOiB3dC1zdGF0dXMuYzoyNzkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicmVuYW1lZDogICAgJXMgLT4gJXMiCi1tc2dzdHIgInJpbm9taW5hdG86ICAgICVzIC0+ICVzIgotCi0jOiB3dC1zdGF0dXMuYzoyODIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidHlwZWNoYW5nZTogJXMiCi1tc2dzdHIgIiIKLQotIzogd3Qtc3RhdHVzLmM6Mjg1Ci0jLCBjLWZvcm1hdAotbXNnaWQgInVua25vd246ICAgICVzIgotbXNnc3RyICJzY29ub3NjaXV0bzogICAgJXMiCi0KLSM6IHd0LXN0YXR1cy5jOjI4OAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bm1lcmdlZDogICAlcyIKLW1zZ3N0ciAiIgotCi0jOiB3dC1zdGF0dXMuYzoyOTEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiYnVnOiB1bmhhbmRsZWQgZGlmZiBzdGF0dXMgJWMiCi1tc2dzdHIgIiIKLQotIzogd3Qtc3RhdHVzLmM6NzM3Ci1tc2dpZCAiT24gYnJhbmNoICIKLW1zZ3N0ciAiU3VsIGJyYW5jaCAiCi0KLSM6IHd0LXN0YXR1cy5jOjc0NAotbXNnaWQgIk5vdCBjdXJyZW50bHkgb24gYW55IGJyYW5jaC4iCi1tc2dzdHIgIiIKLQotIzogd3Qtc3RhdHVzLmM6NzU1Ci1tc2dpZCAiSW5pdGlhbCBjb21taXQiCi1tc2dzdHIgIkNvbW1pdCBpbml6aWFsZSIKLQotIzogd3Qtc3RhdHVzLmM6NzY5Ci1tc2dpZCAiVW50cmFja2VkIgotbXNnc3RyICIiCi0KLSM6IHd0LXN0YXR1cy5jOjc3MQotbXNnaWQgIklnbm9yZWQiCi1tc2dzdHIgIklnbm9yYXRvIgotCi0jOiB3dC1zdGF0dXMuYzo3NzMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVW50cmFja2VkIGZpbGVzIG5vdCBsaXN0ZWQlcyIKLW1zZ3N0ciAiIgotCi0jOiB3dC1zdGF0dXMuYzo3NzUKLW1zZ2lkICIgKHVzZSAtdSBvcHRpb24gdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpIgotbXNnc3RyICIiCi0KLSM6IHd0LXN0YXR1cy5jOjc4MQotbXNnaWQgIk5vIGNoYW5nZXMiCi1tc2dzdHIgIk5lc3N1bmEgbW9kaWZpY2EiCi0KLSM6IHd0LXN0YXR1cy5jOjc4NQotIywgYy1mb3JtYXQKLW1zZ2lkICJubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdCVzXG4iCi1tc2dzdHIgIm5lc3N1bmEgbW9kaWZpY2EgYWdnaXVudGEgYWwgY29tbWl0JXNcbiIKLQotIzogd3Qtc3RhdHVzLmM6Nzg3Ci1tc2dpZCAiICh1c2UgXCJnaXQgYWRkXCIgYW5kL29yIFwiZ2l0IGNvbW1pdCAtYVwiKSIKLW1zZ3N0ciAiICh1c2EgXCJnaXQgYWRkXCIgZS9vIFwiZ2l0IGNvbW1pdCAtYVwiKSIKLQotIzogd3Qtc3RhdHVzLmM6Nzg5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIm5vdGhpbmcgYWRkZWQgdG8gY29tbWl0IGJ1dCB1bnRyYWNrZWQgZmlsZXMgcHJlc2VudCVzXG4iCi1tc2dzdHIgIiIKLQotIzogd3Qtc3RhdHVzLmM6NzkxCi1tc2dpZCAiICh1c2UgXCJnaXQgYWRkXCIgdG8gdHJhY2spIgotbXNnc3RyICIiCi0KLSM6IHd0LXN0YXR1cy5jOjc5MyB3dC1zdGF0dXMuYzo3OTYgd3Qtc3RhdHVzLmM6Nzk5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0JXNcbiIKLW1zZ3N0ciAiIgotCi0jOiB3dC1zdGF0dXMuYzo3OTQKLW1zZ2lkICIgKGNyZWF0ZS9jb3B5IGZpbGVzIGFuZCB1c2UgXCJnaXQgYWRkXCIgdG8gdHJhY2spIgotbXNnc3RyICIiCi0KLSM6IHd0LXN0YXR1cy5jOjc5NwotbXNnaWQgIiAodXNlIC11IHRvIHNob3cgdW50cmFja2VkIGZpbGVzKSIKLW1zZ3N0ciAiIgotCi0jOiB3dC1zdGF0dXMuYzo4MDAKLW1zZ2lkICIgKHdvcmtpbmcgZGlyZWN0b3J5IGNsZWFuKSIKLW1zZ3N0ciAiIgotCi0jOiB3dC1zdGF0dXMuYzo5MDgKLW1zZ2lkICJIRUFEIChubyBicmFuY2gpIgotbXNnc3RyICJIRUFEIChuZXNzdW4gYnJhbmNoKSIKLQotIzogd3Qtc3RhdHVzLmM6OTE0Ci1tc2dpZCAiSW5pdGlhbCBjb21taXQgb24gIgotbXNnc3RyICJDb21taXQgaW5pemlhbGUgc3UgIgotCi0jOiB3dC1zdGF0dXMuYzo5MjkKLW1zZ2lkICJiZWhpbmQgIgotbXNnc3RyICJpbmRpZXRybyAiCi0KLSM6IHd0LXN0YXR1cy5jOjkzMiB3dC1zdGF0dXMuYzo5MzUKLW1zZ2lkICJhaGVhZCAiCi1tc2dzdHIgImF2YW50aSAiCi0KLSM6IHd0LXN0YXR1cy5jOjkzNwotbXNnaWQgIiwgYmVoaW5kICIKLW1zZ3N0ciAiLCBpbmRpZXRybyAiCi0KLSM6IGJ1aWx0aW4vYWRkLmM6NjIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5leHBlY3RlZCBkaWZmIHN0YXR1cyAlYyIKLW1zZ3N0ciAic3RhdHVzIGRpZmYgJWMgaW5hdHRlc28iCi0KLSM6IGJ1aWx0aW4vYWRkLmM6NjcgYnVpbHRpbi9jb21taXQuYzoyMjYKLW1zZ2lkICJ1cGRhdGluZyBmaWxlcyBmYWlsZWQiCi1tc2dzdHIgImFnZ2lvcm5hbWVudG8gZGVpIGZpbGUgbm9uIHJpdXNjaXRvIgotCi0jOiBidWlsdGluL2FkZC5jOjc3Ci0jLCBjLWZvcm1hdAotbXNnaWQgInJlbW92ZSAnJXMnXG4iCi1tc2dzdHIgImVsaW1pbmEgJyVzJ1xuIgotCi0jOiBidWlsdGluL2FkZC5jOjE3NgotIywgYy1mb3JtYXQKLW1zZ2lkICJQYXRoICclcycgaXMgaW4gc3VibW9kdWxlICclLipzJyIKLW1zZ3N0ciAiSWwgcGF0aCAnJXMnIMOoIG5lbCBzb3R0b21vZHVsbyAnJS4qcyciCi0KLSM6IGJ1aWx0aW4vYWRkLmM6MTkyCi1tc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZWZyZXNoaW5nIHRoZSBpbmRleDoiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9hZGQuYzoxOTUgYnVpbHRpbi9hZGQuYzo0NTYgYnVpbHRpbi9ybS5jOjE4NgotIywgYy1mb3JtYXQKLW1zZ2lkICJwYXRoc3BlYyAnJXMnIGRpZCBub3QgbWF0Y2ggYW55IGZpbGVzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYWRkLmM6MjA5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiclcycgaXMgYmV5b25kIGEgc3ltYm9saWMgbGluayIKLW1zZ3N0ciAiJyVzJyBzaSB0cm92YSBvbHRyZSB1biBsaW5rIHNpbWJvbGljbyIKLQotIzogYnVpbHRpbi9hZGQuYzoyNzYKLW1zZ2lkICJDb3VsZCBub3QgcmVhZCB0aGUgaW5kZXgiCi1tc2dzdHIgIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgbGVnZ2VyZSBpbmRleCIKLQotIzogYnVpbHRpbi9hZGQuYzoyODYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZy4iCi1tc2dzdHIgIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgYXByaXJlICclcycgcGVyIGxhIHNjcml0dHVyYS4iCi0KLSM6IGJ1aWx0aW4vYWRkLmM6MjkwCi1tc2dpZCAiQ291bGQgbm90IHdyaXRlIHBhdGNoIgotbXNnc3RyICJOb24gw6ggc3RhdG8gcG9zc2liaWxlIHNjcml2ZXJlIGxhIHBhdGNoIgotCi0jOiBidWlsdGluL2FkZC5jOjI5NQotIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3Qgc3RhdCAnJXMnIgotbXNnc3RyICJOb24gw6ggc3RhdG8gcG9zc2liaWxlIGVzZWd1aXJlIGxvIHN0YXQgZGkgJyVzJyIKLQotIzogYnVpbHRpbi9hZGQuYzoyOTcKLW1zZ2lkICJFbXB0eSBwYXRjaC4gQWJvcnRlZC4iCi1tc2dzdHIgIlBhdGNoIHZ1b3RhLiBPcGVyYXppb25lIGludGVycm90dGEuIgotCi0jOiBidWlsdGluL2FkZC5jOjMwMwotIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgYXBwbHkgJyVzJyIKLW1zZ3N0ciAiTm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBhcHBsaWNhcmUgJyVzJyIKLQotIzogYnVpbHRpbi9hZGQuYzozMTIKLW1zZ2lkICJUaGUgZm9sbG93aW5nIHBhdGhzIGFyZSBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCi1tc2dzdHIgIkkgc2VndWVudGkgcGF0aCBzb25vIHN0YXRpIGlnbm9yYXRpIGRhIHVubyBvIHBpw7kgZGVpIHR1b2kgZmlsZSAuZ2l0aWdub3JlOlxuIgotCi0jOiBidWlsdGluL2FkZC5jOjM1MgotIywgYy1mb3JtYXQKLW1zZ2lkICJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCB0aGVtLlxuIgotbXNnc3RyICJVc2EgLWYgc2UgdnVvaSBkYXZ2ZXJvIGFnZ2l1bmdlcmxpLlxuIgotCi0jOiBidWlsdGluL2FkZC5jOjM1MwotbXNnaWQgIm5vIGZpbGVzIGFkZGVkIgotbXNnc3RyICJuZXNzdW4gZmlsZSBhZ2dpdW50byIKLQotIzogYnVpbHRpbi9hZGQuYzozNTkKLW1zZ2lkICJhZGRpbmcgZmlsZXMgZmFpbGVkIgotbXNnc3RyICJhZ2dpdW50YSBkZWkgZmlsZSBub24gcml1c2NpdGEiCi0KLSM6IGJ1aWx0aW4vYWRkLmM6MzkxCi1tc2dpZCAiLUEgYW5kIC11IGFyZSBtdXR1YWxseSBpbmNvbXBhdGlibGUiCi1tc2dzdHIgIi1BIGUgLXUgc29ubyByZWNpcHJvY2FtZW50ZSBpbmNvbXBhdGliaWxpIgotCi0jOiBidWlsdGluL2FkZC5jOjM5MwotbXNnaWQgIk9wdGlvbiAtLWlnbm9yZS1taXNzaW5nIGNhbiBvbmx5IGJlIHVzZWQgdG9nZXRoZXIgd2l0aCAtLWRyeS1ydW4iCi1tc2dzdHIgIkwnb3B6aW9uZSAtLWlnbm9yZS1taXNzaW5nIHB1w7IgZXNzZXJlIHVzYXRhIHNvbG8gY29uIC0tZHJ5LXJ1biIKLQotIzogYnVpbHRpbi9hZGQuYzo0MTMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiTm90aGluZyBzcGVjaWZpZWQsIG5vdGhpbmcgYWRkZWQuXG4iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9hZGQuYzo0MTQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiTWF5YmUgeW91IHdhbnRlZCB0byBzYXkgJ2dpdCBhZGQgLic/XG4iCi1tc2dzdHIgIkZvcnNlIGludGVuZGV2aSBkaXJlICdnaXQgYWRkIC4nP1xuIgotCi0jOiBidWlsdGluL2FkZC5jOjQyMCBidWlsdGluL2NsZWFuLmM6OTUgYnVpbHRpbi9jb21taXQuYzoyODYgYnVpbHRpbi9tdi5jOjgyCi0jOiBidWlsdGluL3JtLmM6MTYyCi1tc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IgotbXNnc3RyICJpbmRleCBmaWxlIGNvcnJvdHRvIgotCi0jOiBidWlsdGluL2FkZC5jOjQ3NiBidWlsdGluL2FwcGx5LmM6NDEwOCBidWlsdGluL212LmM6MjI5IGJ1aWx0aW4vcm0uYzoyNjAKLW1zZ2lkICJVbmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCi1tc2dzdHIgIkltcG9zc2liaWxlIHNjcml2ZXJlIGlsIG51b3ZvIGluZGV4IGZpbGUiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzo1MwotbXNnaWQgImdpdCBhcHBseSBbb3B0aW9uc10gWzxwYXRjaD4uLi5dIgotbXNnc3RyICJnaXQgYXBwbHkgW29wemlvbmldIFs8cGF0Y2g+Li4uXSIKLQotIzogYnVpbHRpbi9hcHBseS5jOjEwNgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bnJlY29nbml6ZWQgd2hpdGVzcGFjZSBvcHRpb24gJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MTIxCi0jLCBjLWZvcm1hdAotbXNnaWQgInVucmVjb2duaXplZCB3aGl0ZXNwYWNlIGlnbm9yZSBvcHRpb24gJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2FwcGx5LmM6ODE1Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkNhbm5vdCBwcmVwYXJlIHRpbWVzdGFtcCByZWdleHAgJXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9hcHBseS5jOjgyNAotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWdleGVjIHJldHVybmVkICVkIGZvciBpbnB1dDogJXMiCi1tc2dzdHIgInJlZ2V4ZWMgaGEgcmVzdGl0dWl0byAlZCBwZXIgbCdpbnB1dDogJXMiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzo5MDUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIGZpbmQgZmlsZW5hbWUgaW4gcGF0Y2ggYXQgbGluZSAlZCIKLW1zZ3N0ciAiaW1wb3NzaWJpbGUgdHJvdmFyZSBpbCBub21lIGRlbCBmaWxlIG5lbGxhIHBhdGNoIGFsbGEgcmlnYSAlZCIKLQotIzogYnVpbHRpbi9hcHBseS5jOjkzNwotIywgYy1mb3JtYXQKLW1zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGV4cGVjdGVkIC9kZXYvbnVsbCwgZ290ICVzIG9uIGxpbmUgJWQiCi1tc2dzdHIgImdpdCBhcHBseTogZ2l0LWRpZmYgZXJyYXRvIC0gYXR0ZXNvIC9kZXYvbnVsbCwgcmljZXZ1dG8gJXMgYWxsYSByaWdhICVkIgotCi0jOiBidWlsdGluL2FwcGx5LmM6OTQxCi0jLCBjLWZvcm1hdAotbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gaW5jb25zaXN0ZW50IG5ldyBmaWxlbmFtZSBvbiBsaW5lICVkIgotbXNnc3RyICJnaXQgYXBwbHk6IGdpdC1kaWZmIGVycmF0byAtIG51b3ZvIG5vbWUgZGVsIGZpbGUgaW5jb25zaXN0ZW50ZSBhbGxhIHJpZ2EgJWQiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzo5NDIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBpbmNvbnNpc3RlbnQgb2xkIGZpbGVuYW1lIG9uIGxpbmUgJWQiCi1tc2dzdHIgImdpdCBhcHBseTogZ2l0LWRpZmYgZXJyYXRvIC0gdmVjY2hpbyBub21lIGRlbCBmaWxlIGluY29uc2lzdGVudGUgYWxsYSByaWdhICVkIgotCi0jOiBidWlsdGluL2FwcGx5LmM6OTQ5Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gZXhwZWN0ZWQgL2Rldi9udWxsIG9uIGxpbmUgJWQiCi1tc2dzdHIgImdpdCBhcHBseTogZ2l0LWRpZmYgZXJyYXRvIC0gYXR0ZXNvIC9kZXYvbnVsbGEgYWxsYSByaWdhICVkIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MTM5NAotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWNvdW50OiB1bmV4cGVjdGVkIGxpbmU6ICUuKnMiCi1tc2dzdHIgInJlY291bnQ6IHJpZ2EgaW5hdHRlc2E6ICUuKnMiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzoxNDUxCi0jLCBjLWZvcm1hdAotbXNnaWQgInBhdGNoIGZyYWdtZW50IHdpdGhvdXQgaGVhZGVyIGF0IGxpbmUgJWQ6ICUuKnMiCi1tc2dzdHIgImZyYW1tZW50byBkaSBwYXRjaCBzZW56YSBpbnRlc3RhemlvbmUgYWxsYSByaWdhICVkOiAlLipzIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MTQ2OAorIzogc2VxdWVuY2VyLmM6ODc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKLSJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gd2hlbiByZW1vdmluZyAlZCBsZWFkaW5nIHBhdGhuYW1lICIKLSJjb21wb25lbnQgKGxpbmUgJWQpIgotbXNnaWRfcGx1cmFsICIiCi0iZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIHdoZW4gcmVtb3ZpbmcgJWQgbGVhZGluZyBwYXRobmFtZSAiCi0iY29tcG9uZW50cyAobGluZSAlZCkiCi1tc2dzdHJbMF0gIiIKLW1zZ3N0clsxXSAiIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MTYyOAotbXNnaWQgIm5ldyBmaWxlIGRlcGVuZHMgb24gb2xkIGNvbnRlbnRzIgotbXNnc3RyICJpbCBudW92byBmaWxlIGRpcGVuZGUgZGEgY29udGVudXRpIHByZWNlZGVudGkiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzoxNjMwCi1tc2dpZCAiZGVsZXRlZCBmaWxlIHN0aWxsIGhhcyBjb250ZW50cyIKLW1zZ3N0ciAiaWwgZmlsZSBlbGltaW5hdG8gaGEgYW5jb3JhIGRlaSBjb250ZW51dGkiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzoxNjU2Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvcnJ1cHQgcGF0Y2ggYXQgbGluZSAlZCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MTY5MgotIywgYy1mb3JtYXQKLW1zZ2lkICJuZXcgZmlsZSAlcyBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKLW1zZ3N0ciAiaWwgbnVvdm8gZmlsZSAlcyBkaXBlbmRlIGRhIGNvbnRlbnV0aSBwcmVjZWRlbnRpIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MTY5NAotIywgYy1mb3JtYXQKLW1zZ2lkICJkZWxldGVkIGZpbGUgJXMgc3RpbGwgaGFzIGNvbnRlbnRzIgotbXNnc3RyICJpbCBmaWxlIGVsaW1pbmF0byAlcyBoYSBhbmNvcmEgZGVpIGNvbnRlbnV0aSIKLQotIzogYnVpbHRpbi9hcHBseS5jOjE2OTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiKiogd2FybmluZzogZmlsZSAlcyBiZWNvbWVzIGVtcHR5IGJ1dCBpcyBub3QgZGVsZXRlZCIKLW1zZ3N0ciAiKiogYXR0ZW56aW9uZTogaWwgZmlsZSAlcyBkaXZlbnRhIHZ1b3RvIG1hIG5vbiDDqCBlbGltaW5hdG8iCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzoxODQzCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvcnJ1cHQgYmluYXJ5IHBhdGNoIGF0IGxpbmUgJWQ6ICUuKnMiCi1tc2dzdHIgInBhdGNoIGJpbmFyaWEgY29ycm90dGEgYWxsYSByaWdhICVkOiAlLipzIgotCi0jLiB0aGVyZSBoYXMgdG8gYmUgb25lIGh1bmsgKGZvcndhcmQgaHVuaykKLSM6IGJ1aWx0aW4vYXBwbHkuYzoxODcyCi0jLCBjLWZvcm1hdAotbXNnaWQgInVucmVjb2duaXplZCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZCIKLW1zZ3N0ciAicGF0Y2ggYmluYXJpYSBub24gcmljb25vc2NpdXRhIGFsbGEgcmlnYSAlZCIKLQotIzogYnVpbHRpbi9hcHBseS5jOjE5NTgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGF0Y2ggd2l0aCBvbmx5IGdhcmJhZ2UgYXQgbGluZSAlZCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MjA0OAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gcmVhZCBzeW1saW5rICVzIgotbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGlsIGxpbmsgc2ltYm9saWNvICVzIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MjA1MgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gb3BlbiBvciByZWFkICVzIgotbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgbyBsZWdnZXJlICVzIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MjEyMwotbXNnaWQgIm9vcHMiCi1tc2dzdHIgIm9vcHMiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzoyNjQ1Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgc3RhcnQgb2YgbGluZTogJyVjJyIKLW1zZ3N0ciAiaW5pemlvIGRlbGxhIHJpZ2Egbm9uIHZhbGlkbzogJyVjJyIKLQotIzogYnVpbHRpbi9hcHBseS5jOjI3NjMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiSHVuayAjJWQgc3VjY2VlZGVkIGF0ICVkIChvZmZzZXQgJWQgbGluZSkuIgotbXNnaWRfcGx1cmFsICJIdW5rICMlZCBzdWNjZWVkZWQgYXQgJWQgKG9mZnNldCAlZCBsaW5lcykuIgotbXNnc3RyWzBdICIiCi1tc2dzdHJbMV0gIiIKLQotIzogYnVpbHRpbi9hcHBseS5jOjI3NzUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ29udGV4dCByZWR1Y2VkIHRvICglbGQvJWxkKSB0byBhcHBseSBmcmFnbWVudCBhdCAlZCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2FwcGx5LmM6Mjc4MQotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0id2hpbGUgc2VhcmNoaW5nIGZvcjpcbiIKLSIlLipzIgotbXNnc3RyICIiCi0iZHVyYW50ZSBsYSByaWNlcmNhIHBlcjpcbiIKLSIlLipzIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MjgwMAotIywgYy1mb3JtYXQKLW1zZ2lkICJtaXNzaW5nIGJpbmFyeSBwYXRjaCBkYXRhIGZvciAnJXMnIgotbXNnc3RyICJkYXRpIGRlbGxhIHBhdGNoIGJpbmFyaWEgbWFuY2FudGkgcGVyICclcyciCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzoyOTAzCi0jLCBjLWZvcm1hdAotbXNnaWQgImJpbmFyeSBwYXRjaCBkb2VzIG5vdCBhcHBseSB0byAnJXMnIgotbXNnc3RyICJsYSBwYXRjaCBiaW5hcmlhIG5vbiBwdcOyIGVzc2VyZSBhcHBsaWNhdGEgYSAnJXMnIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MjkwOQotIywgYy1mb3JtYXQKLW1zZ2lkICJiaW5hcnkgcGF0Y2ggdG8gJyVzJyBjcmVhdGVzIGluY29ycmVjdCByZXN1bHQgKGV4cGVjdGluZyAlcywgZ290ICVzKSIKLW1zZ3N0ciAibGEgcGF0Y2ggYmluYXJpYSBzdSAnJXMnIGNyZWEgcmlzdWx0YXRpIG5vbiBjb3JyZXR0aSAoYXR0ZXNvICVzLCByaWNldnV0byAlcykiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzoyOTMwCi0jLCBjLWZvcm1hdAotbXNnaWQgInBhdGNoIGZhaWxlZDogJXM6JWxkIgotbXNnc3RyICJwYXRjaCBub24gcml1c2NpdGE6ICVzOiVsZCIKLQotIzogYnVpbHRpbi9hcHBseS5jOjMwNDUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGF0Y2ggJXMgaGFzIGJlZW4gcmVuYW1lZC9kZWxldGVkIgotbXNnc3RyICJsYSBwYXRjaCAlcyDDqCBzdGF0YSByaW5vbWluYXRhL2VsaW1pbmF0YSIKLQotIzogYnVpbHRpbi9hcHBseS5jOjMwNTIgYnVpbHRpbi9hcHBseS5jOjMwNjkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicmVhZCBvZiAlcyBmYWlsZWQiCi1tc2dzdHIgImxldHR1cmEgZGkgJXMgbm9uIHJpdXNjaXRhIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MzA4NAotbXNnaWQgInJlbW92YWwgcGF0Y2ggbGVhdmVzIGZpbGUgY29udGVudHMiCi1tc2dzdHIgImxhIHJpbW96aW9uZSBkZWxsYSBwYXRjaCBsYXNjaWEgY29udGVudXRpIGRlbCBmaWxlIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MzEwNQotIywgYy1mb3JtYXQKLW1zZ2lkICIlczogYWxyZWFkeSBleGlzdHMgaW4gd29ya2luZyBkaXJlY3RvcnkiCi1tc2dzdHIgIiVzOiBlc2lzdGUgZ2nDoCBuZWxsYSBkaXJlY3RvcnkgZGkgbGF2b3JvIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MzE0MwotIywgYy1mb3JtYXQKLW1zZ2lkICIlczogaGFzIGJlZW4gZGVsZXRlZC9yZW5hbWVkIgotbXNnc3RyICIlczogw6ggc3RhdGEgZWxpbWluYXRhL3Jpbm9taW5hdGEiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozMTQ4IGJ1aWx0aW4vYXBwbHkuYzozMTc5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiVzOiAlcyIKLW1zZ3N0ciAiJXM6ICVzIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MzE1OQotIywgYy1mb3JtYXQKLW1zZ2lkICIlczogZG9lcyBub3QgZXhpc3QgaW4gaW5kZXgiCi1tc2dzdHIgIiVzOiBub24gZXNpc3RlIGluIGluZGV4IgotCi0jOiBidWlsdGluL2FwcGx5LmM6MzE3MwotIywgYy1mb3JtYXQKLW1zZ2lkICIlczogZG9lcyBub3QgbWF0Y2ggaW5kZXgiCi1tc2dzdHIgIiVzOiBub24gY29ycmlzcG9uZGUgYSBpbmRleCIKLQotIzogYnVpbHRpbi9hcHBseS5jOjMxOTAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiJXM6IHdyb25nIHR5cGUiCi1tc2dzdHIgIiVzOiB0aXBvIGVycmF0byIKLQotIzogYnVpbHRpbi9hcHBseS5jOjMxOTIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiJXMgaGFzIHR5cGUgJW8sIGV4cGVjdGVkICVvIgotbXNnc3RyICIlcyBoYSBpbCB0aXBvICVvLCBhdHRlc28gJW8iCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozMjQ3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiVzOiBhbHJlYWR5IGV4aXN0cyBpbiBpbmRleCIKLW1zZ3N0ciAiJXM6IGVzaXN0ZSBnacOgIGluIGluZGV4IgotCi0jOiBidWlsdGluL2FwcGx5LmM6MzI2NwotIywgYy1mb3JtYXQKLW1zZ2lkICJuZXcgbW9kZSAoJW8pIG9mICVzIGRvZXMgbm90IG1hdGNoIG9sZCBtb2RlICglbykiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9hcHBseS5jOjMyNzIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibmV3IG1vZGUgKCVvKSBvZiAlcyBkb2VzIG5vdCBtYXRjaCBvbGQgbW9kZSAoJW8pIG9mICVzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozMjgwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiVzOiBwYXRjaCBkb2VzIG5vdCBhcHBseSIKLW1zZ3N0ciAiJXM6IGxhIHBhdGNoIG5vbiBwdcOyIGVzc2VyZSBhcHBsaWNhdGEiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozMjkzCi0jLCBjLWZvcm1hdAotbXNnaWQgIkNoZWNraW5nIHBhdGNoICVzLi4uIgotbXNnc3RyICJDb250cm9sbG8gZGVsbGEgcGF0Y2ggJXMuLi4iCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozMzQ4IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMTIgYnVpbHRpbi9yZXNldC5jOjE1OAotIywgYy1mb3JtYXQKLW1zZ2lkICJtYWtlX2NhY2hlX2VudHJ5IGZhaWxlZCBmb3IgcGF0aCAnJXMnIgotbXNnc3RyICJtYWtlX2NhY2hlX2VudHJ5IG5vbiByaXVzY2l0byBwZXIgaWwgcGF0aCAnJXMnIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MzQ5MQotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICVzIGZyb20gaW5kZXgiCi1tc2dzdHIgImltcG9zc2liaWxlIHJpbXVvdmVyZSAlcyBkYSBpbmRleCIKLQotIzogYnVpbHRpbi9hcHBseS5jOjM1MTgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY29ycnVwdCBwYXRjaCBmb3Igc3VicHJvamVjdCAlcyIKLW1zZ3N0ciAicGF0Y2ggY29ycm90dGEgcGVyIGlsIHNvdHRvcHJvZ2V0dG8gJXMiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozNTIyCi0jLCBjLWZvcm1hdAotbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ld2x5IGNyZWF0ZWQgZmlsZSAnJXMnIgotbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBsbyBzdGF0IGRlbCBmaWxlIGFwcGVuYSBjcmVhdG8gJyVzJyIKLQotIzogYnVpbHRpbi9hcHBseS5jOjM1MjcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBiYWNraW5nIHN0b3JlIGZvciBuZXdseSBjcmVhdGVkIGZpbGUgJXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9hcHBseS5jOjM1MzAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIGFkZCBjYWNoZSBlbnRyeSBmb3IgJXMiCi1tc2dzdHIgImltcG9zc2liaWxlIGFnZ2l1bmdlcmUgbGEgdm9jZSBkZWxsYSBjYWNoZSBwZXIgJXMiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozNTYzCi0jLCBjLWZvcm1hdAotbXNnaWQgImNsb3NpbmcgZmlsZSAnJXMnIgotbXNnc3RyICJjaGl1c3VyYSBkZWwgZmlsZSAnJXMnIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MzYxMgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIG1vZGUgJW8iCi1tc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGlsIGZpbGUgJyVzJyBpbiBtb2RhbGl0w6AgJW8iCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozNjY4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkFwcGxpZWQgcGF0Y2ggJXMgY2xlYW5seS4iCi1tc2dzdHIgIlBhdGNoICVzIGFwcGxpY2F0YSBjb3JyZXR0YW1lbnRlLiIKLQotIzogYnVpbHRpbi9hcHBseS5jOjM2NzYKLW1zZ2lkICJpbnRlcm5hbCBlcnJvciIKLW1zZ3N0ciAiZXJyb3JlIGludGVybm8iCi0KLSMuIFNheSB0aGlzIGV2ZW4gd2l0aG91dCAtLXZlcmJvc2UKLSM6IGJ1aWx0aW4vYXBwbHkuYzozNjc5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdC4uLiIKLW1zZ2lkX3BsdXJhbCAiQXBwbHlpbmcgcGF0Y2ggJSVzIHdpdGggJWQgcmVqZWN0cy4uLiIKLW1zZ3N0clswXSAiIgotbXNnc3RyWzFdICIiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozNjg5Ci0jLCBjLWZvcm1hdAotbXNnaWQgInRydW5jYXRpbmcgLnJlaiBmaWxlbmFtZSB0byAlLipzLnJlaiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2FwcGx5LmM6MzcxMAotIywgYy1mb3JtYXQKLW1zZ2lkICJIdW5rICMlZCBhcHBsaWVkIGNsZWFubHkuIgotbXNnc3RyICJGcmFtbWVudG8gIyVkIGFwcGxpY2F0byBjb3JyZXR0YW1lbnRlLiIKLQotIzogYnVpbHRpbi9hcHBseS5jOjM3MTMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiUmVqZWN0ZWQgaHVuayAjJWQuIgotbXNnc3RyICJGcmFtbWVudG8gIyVkIHJlc3BpbnRvLiIKLQotIzogYnVpbHRpbi9hcHBseS5jOjM4NDQKLW1zZ2lkICJ1bnJlY29nbml6ZWQgaW5wdXQiCi1tc2dzdHIgImlucHV0IG5vbiByaWNvbm9zY2l1dG8iCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozODU1Ci1tc2dpZCAidW5hYmxlIHRvIHJlYWQgaW5kZXggZmlsZSIKLW1zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBpbmRleCBmaWxlIgotCi0jOiBidWlsdGluL2FwcGx5LmM6Mzk3MCBidWlsdGluL2FwcGx5LmM6Mzk3MwotbXNnaWQgInBhdGgiCi1tc2dzdHIgInBhdGgiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozOTcxCi1tc2dpZCAiZG9uJ3QgYXBwbHkgY2hhbmdlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCIKLW1zZ3N0ciAibm9uIGFwcGxpY2EgbGUgbW9kaWZpY2hlIGNvcnJpc3BvbmRlbnRpIGFsIHBhdGggc3BlY2lmaWNhdG8iCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozOTc0Ci1tc2dpZCAiYXBwbHkgY2hhbmdlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCIKLW1zZ3N0ciAiYXBwbGljYSBsZSBtb2RpZmljaGUgY29ycmlzcG9uZGVudGkgYWwgcGF0aCBzcGVjaWZpY2F0byIKLQotIzogYnVpbHRpbi9hcHBseS5jOjM5NzYKLW1zZ2lkICJudW0iCi1tc2dzdHIgIm51bSIKLQotIzogYnVpbHRpbi9hcHBseS5jOjM5NzcKLW1zZ2lkICJyZW1vdmUgPG51bT4gbGVhZGluZyBzbGFzaGVzIGZyb20gdHJhZGl0aW9uYWwgZGlmZiBwYXRocyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2FwcGx5LmM6Mzk4MAotbXNnaWQgImlnbm9yZSBhZGRpdGlvbnMgbWFkZSBieSB0aGUgcGF0Y2giCi1tc2dzdHIgImlnbm9yYSBsZSBhZ2dpdW50ZSBjcmVhdGUgZGFsbGEgcGF0Y2giCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozOTgyCi1tc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIG91dHB1dCBkaWZmc3RhdCBmb3IgdGhlIGlucHV0IgotbXNnc3RyICJpbnZlY2UgZGkgYXBwbGljYXJlIGxhIHBhdGNoLCBtb3N0cmEgbCdvdXRwdXQgZGkgZGlmZnN0YXQgcGVyIGwnaW5wdXQiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozOTg2Ci1tc2dpZCAic2hvd3MgbnVtYmVyIG9mIGFkZGVkIGFuZCBkZWxldGVkIGxpbmVzIGluIGRlY2ltYWwgbm90YXRpb24iCi1tc2dzdHIgIm1vc3RyYSBpbCBudW1lcm8gZGkgcmlnaGUgYWdnaXVudGUgZSBlbGltaW5hdGUgaW4gbm90YXppb25lIGRlY2ltYWxlIgotCi0jOiBidWlsdGluL2FwcGx5LmM6Mzk4OAotbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBvdXRwdXQgYSBzdW1tYXJ5IGZvciB0aGUgaW5wdXQiCi1tc2dzdHIgImludmVjZSBkaSBhcHBsaWNhcmUgbGEgcGF0Y2gsIG1vc3RyYSB1biByaWFzc3VudG8gcGVyIGwnaW5wdXQiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzozOTkwCi1tc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIHNlZSBpZiB0aGUgcGF0Y2ggaXMgYXBwbGljYWJsZSIKLW1zZ3N0ciAiaW52ZWNlIGRpIGFwcGxpY2FyZSBsYSBwYXRjaCwgdmVyaWZpY2Egc2UgcHXDsiBlc3NlcmUgYXBwbGljYXRhIgotCi0jOiBidWlsdGluL2FwcGx5LmM6Mzk5MgotbXNnaWQgIm1ha2Ugc3VyZSB0aGUgcGF0Y2ggaXMgYXBwbGljYWJsZSB0byB0aGUgY3VycmVudCBpbmRleCIKLW1zZ3N0ciAiYXNzaWN1cmEgY2hlIGxhIHBhdGNoIHNpYSBhcHBsaWNhYmlsZSBhbGwnYXR0dWFsZSBpbmRleCIKLQotIzogYnVpbHRpbi9hcHBseS5jOjM5OTQKLW1zZ2lkICJhcHBseSBhIHBhdGNoIHdpdGhvdXQgdG91Y2hpbmcgdGhlIHdvcmtpbmcgdHJlZSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2FwcGx5LmM6Mzk5NgotbXNnaWQgImFsc28gYXBwbHkgdGhlIHBhdGNoICh1c2Ugd2l0aCAtLXN0YXQvLS1zdW1tYXJ5Ly0tY2hlY2spIgotbXNnc3RyICJhcHBsaWNhIGFuY2hlIGxhIHBhdGNoIChkYSB1c2FyZSBjb24gLS1zdGF0Ly0tc3VtbWFyeS8tLWNoZWNrKSIKLQotIzogYnVpbHRpbi9hcHBseS5jOjM5OTgKLW1zZ2lkICJidWlsZCBhIHRlbXBvcmFyeSBpbmRleCBiYXNlZCBvbiBlbWJlZGRlZCBpbmRleCBpbmZvcm1hdGlvbiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2FwcGx5LmM6NDAwMAotbXNnaWQgInBhdGhzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgotbXNnc3RyICJpIHBhdGggc29ubyBzZXBhcmF0aSBjb24gdW4gY2FyYXR0ZXJlIE5VTCIKLQotIzogYnVpbHRpbi9hcHBseS5jOjQwMDMKLW1zZ2lkICJlbnN1cmUgYXQgbGVhc3QgPG4+IGxpbmVzIG9mIGNvbnRleHQgbWF0Y2giCi1tc2dzdHIgImFzc2ljdXJhIGFsbWVubyA8bj4gcmlnaGUgZGkgY29udGVzdG8gY29ycmlzcG9uZGVudGUiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzo0MDA0Ci1tc2dpZCAiYWN0aW9uIgotbXNnc3RyICJhemlvbmUiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzo0MDA1Ci1tc2dpZCAiZGV0ZWN0IG5ldyBvciBtb2RpZmllZCBsaW5lcyB0aGF0IGhhdmUgd2hpdGVzcGFjZSBlcnJvcnMiCi1tc2dzdHIgInJpbGV2YSByaWdoZSBudW92ZSBvIG1vZGlmaWNhdGUgY2hlIGhhbm5vIGVycm9yaSBkaSBzcGF6aSBiaWFuY2hpIgotCi0jOiBidWlsdGluL2FwcGx5LmM6NDAwOCBidWlsdGluL2FwcGx5LmM6NDAxMQotbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIHdoaXRlc3BhY2Ugd2hlbiBmaW5kaW5nIGNvbnRleHQiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9hcHBseS5jOjQwMTQKLW1zZ2lkICJhcHBseSB0aGUgcGF0Y2ggaW4gcmV2ZXJzZSIKLW1zZ3N0ciAiYXBwbGljYSBsYSBwYXRjaCBpbiBtYW5pZXJhIGludmVyc2EiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzo0MDE2Ci1tc2dpZCAiZG9uJ3QgZXhwZWN0IGF0IGxlYXN0IG9uZSBsaW5lIG9mIGNvbnRleHQiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9hcHBseS5jOjQwMTgKLW1zZ2lkICJsZWF2ZSB0aGUgcmVqZWN0ZWQgaHVua3MgaW4gY29ycmVzcG9uZGluZyAqLnJlaiBmaWxlcyIKLW1zZ3N0ciAibGFzY2lhIGkgZnJhbW1lbnRpIHJlc3BpbnRpIG5laSBmaWxlIC5yZWogY29ycmlzcG9uZGVudGkiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzo0MDIwCi1tc2dpZCAiYWxsb3cgb3ZlcmxhcHBpbmcgaHVua3MiCi1tc2dzdHIgImNvbnNlbnRlIGxhIHNvdnJhcHBvc2l6aW9uZSBkZWkgZnJhbW1lbnRpIgotCi0jOiBidWlsdGluL2FwcGx5LmM6NDAyMQotbXNnaWQgImJlIHZlcmJvc2UiCi1tc2dzdHIgImRldHRhZ2xpYXRvIgotCi0jOiBidWlsdGluL2FwcGx5LmM6NDAyMwotbXNnaWQgInRvbGVyYXRlIGluY29ycmVjdGx5IGRldGVjdGVkIG1pc3NpbmcgbmV3LWxpbmUgYXQgdGhlIGVuZCBvZiBmaWxlIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzo0MDI2Ci1tc2dpZCAiZG8gbm90IHRydXN0IHRoZSBsaW5lIGNvdW50cyBpbiB0aGUgaHVuayBoZWFkZXJzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzo0MDI4Ci1tc2dpZCAicm9vdCIKLW1zZ3N0ciAicmFkaWNlIgotCi0jOiBidWlsdGluL2FwcGx5LmM6NDAyOQotbXNnaWQgInByZXBlbmQgPHJvb3Q+IHRvIGFsbCBmaWxlbmFtZXMiCi1tc2dzdHIgImFudGVwb25lIDxyb290PiBhIHR1dHRpIGkgbm9taSBmaWxlIgotCi0jOiBidWlsdGluL2FwcGx5LmM6NDA1MAotbXNnaWQgIi0taW5kZXggb3V0c2lkZSBhIHJlcG9zaXRvcnkiCi1tc2dzdHIgIi0taW5kZXggYWwgZGkgZnVvcmkgZGkgdW4gcmVwb3NpdG9yeSIKLQotIzogYnVpbHRpbi9hcHBseS5jOjQwNTMKLW1zZ2lkICItLWNhY2hlZCBvdXRzaWRlIGEgcmVwb3NpdG9yeSIKLW1zZ3N0ciAiLS1jYWNoZWQgYWwgZGkgZnVvcmkgZGkgdW4gcmVwb3NpdG9yeSIKLQotIzogYnVpbHRpbi9hcHBseS5jOjQwNjkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY2FuJ3Qgb3BlbiBwYXRjaCAnJXMnIgotbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgbGEgcGF0Y2ggJyVzJyIKLQotIzogYnVpbHRpbi9hcHBseS5jOjQwODMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAic3F1ZWxjaGVkICVkIHdoaXRlc3BhY2UgZXJyb3IiCi1tc2dpZF9wbHVyYWwgInNxdWVsY2hlZCAlZCB3aGl0ZXNwYWNlIGVycm9ycyIKLW1zZ3N0clswXSAiIgotbXNnc3RyWzFdICIiCi0KLSM6IGJ1aWx0aW4vYXBwbHkuYzo0MDg5IGJ1aWx0aW4vYXBwbHkuYzo0MDk5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiVkIGxpbmUgYWRkcyB3aGl0ZXNwYWNlIGVycm9ycy4iCi1tc2dpZF9wbHVyYWwgIiVkIGxpbmVzIGFkZCB3aGl0ZXNwYWNlIGVycm9ycy4iCi1tc2dzdHJbMF0gIiVkIHJpZ2EgYWdnaXVuZ2UgZXJyb3JpIGRpIHNwYXppIGJpYW5jaGkuIgotbXNnc3RyWzFdICIlZCByaWdoZSBhZ2dpdW5nb25vIGVycm9yaSBkaSBzcGF6aSBiaWFuY2hpLiIKLQotIzogYnVpbHRpbi9hcmNoaXZlLmM6MTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IGNyZWF0ZSBhcmNoaXZlIGZpbGUgJyVzJyIKLW1zZ3N0ciAibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBjcmVhcmUgaWwgZmlsZSBkZWwgcmVwb3NpdG9yeSAnJXMnIgotCi0jOiBidWlsdGluL2FyY2hpdmUuYzoyMAotbXNnaWQgImNvdWxkIG5vdCByZWRpcmVjdCBvdXRwdXQiCi1tc2dzdHIgIm5vbiDDqCBzdGF0byBwb3NzaWJpbGUgcmVkaXJpZ2VyZSBsJ291dHB1dCIKLQotIzogYnVpbHRpbi9hcmNoaXZlLmM6MzcKLW1zZ2lkICJnaXQgYXJjaGl2ZTogUmVtb3RlIHdpdGggbm8gVVJMIgotbXNnc3RyICJnaXQgYXJjaGl2ZTogUmVtb3RlIG5vbiBoYSB1biBVUkwiCi0KLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjU4Ci1tc2dpZCAiZ2l0IGFyY2hpdmU6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCBFT0YiCi1tc2dzdHIgImdpdCBhcmNoaXZlOiBhdHRlc28gQUNLL05BSywgcmljZXZ1dG8gRU9GIgotCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2MwotIywgYy1mb3JtYXQKLW1zZ2lkICJnaXQgYXJjaGl2ZTogTkFDSyAlcyIKLW1zZ3N0ciAiZ2l0IGFyY2hpdmU6IE5BQ0sgJXMiCi0KLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY1Ci0jLCBjLWZvcm1hdAotbXNnaWQgInJlbW90ZSBlcnJvcjogJXMiCi1tc2dzdHIgImVycm9yZSByZW1vdG86ICVzIgotCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2NgotbXNnaWQgImdpdCBhcmNoaXZlOiBwcm90b2NvbCBlcnJvciIKLW1zZ3N0ciAiZ2l0IGFyY2hpdmU6IGVycm9yZSBkZWwgcHJvdG9jb2xsbyIKLQotIzogYnVpbHRpbi9hcmNoaXZlLmM6NzEKLW1zZ2lkICJnaXQgYXJjaGl2ZTogZXhwZWN0ZWQgYSBmbHVzaCIKLW1zZ3N0ciAiZ2l0IGFyY2hpdmU6IGF0dGVzbyB1biBmbHVzaCIKLQotIzogYnVpbHRpbi9icmFuY2guYzoxNDQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotImRlbGV0aW5nIGJyYW5jaCAnJXMnIHRoYXQgaGFzIGJlZW4gbWVyZ2VkIHRvXG4iCi0iICAgICAgICAgJyVzJywgYnV0IG5vdCB5ZXQgbWVyZ2VkIHRvIEhFQUQuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTQ4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJub3QgZGVsZXRpbmcgYnJhbmNoICclcycgdGhhdCBpcyBub3QgeWV0IG1lcmdlZCB0b1xuIgotIiAgICAgICAgICclcycsIGV2ZW4gdGhvdWdoIGl0IGlzIG1lcmdlZCB0byBIRUFELiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjE4MAotbXNnaWQgImNhbm5vdCB1c2UgLWEgd2l0aCAtZCIKLW1zZ3N0ciAiaW1wb3NzaWJpbGUgdXNhcmUgLWEgY29uIC1kIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjE4NgotbXNnaWQgIkNvdWxkbid0IGxvb2sgdXAgY29tbWl0IG9iamVjdCBmb3IgSEVBRCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjE5MQotIywgYy1mb3JtYXQKLW1zZ2lkICJDYW5ub3QgZGVsZXRlIHRoZSBicmFuY2ggJyVzJyB3aGljaCB5b3UgYXJlIGN1cnJlbnRseSBvbi4iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9icmFuY2guYzoyMDIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicmVtb3RlIGJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCi1tc2dzdHIgImlsIGJyYW5jaCByZW1vdG8gJyVzJyBub24gw6ggc3RhdG8gdHJvdmF0by4iCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjAzCi0jLCBjLWZvcm1hdAotbXNnaWQgImJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCi1tc2dzdHIgImJyYW5jaCAnJXMnIG5vbiB0cm92YXRvLiIKLQotIzogYnVpbHRpbi9icmFuY2guYzoyMTAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGRuJ3QgbG9vayB1cCBjb21taXQgb2JqZWN0IGZvciAnJXMnIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjE2Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJUaGUgYnJhbmNoICclcycgaXMgbm90IGZ1bGx5IG1lcmdlZC5cbiIKLSJJZiB5b3UgYXJlIHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIGl0LCBydW4gJ2dpdCBicmFuY2ggLUQgJXMnLiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjIyNQotIywgYy1mb3JtYXQKLW1zZ2lkICJFcnJvciBkZWxldGluZyByZW1vdGUgYnJhbmNoICclcyciCi1tc2dzdHIgIkVycm9yZSBuZWxsYSByaW1vemlvbmUgZGVsIGJyYW5jaCByZW1vdG8gJyVzJyIKLQotIzogYnVpbHRpbi9icmFuY2guYzoyMjYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiRXJyb3IgZGVsZXRpbmcgYnJhbmNoICclcyciCi1tc2dzdHIgIkVycm9yZSBuZWxsYSByaW1vemlvbmUgZGVsIGJyYW5jaCAnJXMnIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjIzMwotIywgYy1mb3JtYXQKLW1zZ2lkICJEZWxldGVkIHJlbW90ZSBicmFuY2ggJXMgKHdhcyAlcykuXG4iCi1tc2dzdHIgIlJhbW8gcmVtb3RvICVzIGVsaW1pbmF0byAoZXJhICVzKS5cbiIKLQotIzogYnVpbHRpbi9icmFuY2guYzoyMzQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiRGVsZXRlZCBicmFuY2ggJXMgKHdhcyAlcykuXG4iCi1tc2dzdHIgIlJhbW8gJXMgZWxpbWluYXRvIChlcmEgJXMpLlxuIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjIzOQotbXNnaWQgIlVwZGF0ZSBvZiBjb25maWctZmlsZSBmYWlsZWQiCi1tc2dzdHIgIkFnZ2lvcm5hbWVudG8gZGVsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgZmFsbGl0byIKLQotIzogYnVpbHRpbi9icmFuY2guYzozMzcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiYnJhbmNoICclcycgZG9lcyBub3QgcG9pbnQgYXQgYSBjb21taXQiCi1tc2dzdHIgImlsIGJyYW5jaCAnJXMnIG5vbiBwdW50YSBhZCB1biBjb21taXQiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDA5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIlslczogYmVoaW5kICVkXSIKLW1zZ3N0ciAiWyVzOiBkaWV0cm8gJWRdIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjQxMQotIywgYy1mb3JtYXQKLW1zZ2lkICJbYmVoaW5kICVkXSIKLW1zZ3N0ciAiW2RpZXRybyAlZF0iCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDE1Ci0jLCBjLWZvcm1hdAotbXNnaWQgIlslczogYWhlYWQgJWRdIgotbXNnc3RyICJbJXM6IGF2YW50aSAlZF0iCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDE3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIlthaGVhZCAlZF0iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9icmFuY2guYzo0MjAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiWyVzOiBhaGVhZCAlZCwgYmVoaW5kICVkXSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjQyMwotIywgYy1mb3JtYXQKLW1zZ2lkICJbYWhlYWQgJWQsIGJlaGluZCAlZF0iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9icmFuY2guYzo1MzUKLW1zZ2lkICIobm8gYnJhbmNoKSIKLW1zZ3N0ciAiKG5lc3N1biBicmFuY2gpIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMAotbXNnaWQgInNvbWUgcmVmcyBjb3VsZCBub3QgYmUgcmVhZCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxMwotbXNnaWQgImNhbm5vdCByZW5hbWUgdGhlIGN1cnJlbnQgYnJhbmNoIHdoaWxlIG5vdCBvbiBhbnkuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIzCi0jLCBjLWZvcm1hdAotbXNnaWQgIkludmFsaWQgYnJhbmNoIG5hbWU6ICclcyciCi1tc2dzdHIgIk5vbWUgZGVsIGJyYW5jaCBub24gdmFsaWRvOiAnJXMnIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzOAotbXNnaWQgIkJyYW5jaCByZW5hbWUgZmFpbGVkIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQyCi0jLCBjLWZvcm1hdAotbXNnaWQgIlJlbmFtZWQgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyBhd2F5IgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ2Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkJyYW5jaCByZW5hbWVkIHRvICVzLCBidXQgSEVBRCBpcyBub3QgdXBkYXRlZCEiCi1tc2dzdHIgIlJhbW8gcmlub21pbmF0byBpbiAlcywgbWEgSEVBRCBub24gw6ggYWdnaW9ybmF0byEiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUzCi1tc2dpZCAiQnJhbmNoIGlzIHJlbmFtZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgotbXNnc3RyICIiCi0iSWwgYnJhbmNoIMOoIHN0YXRvIHJpbm9taW5hdG8sIG1hIGwnYWdnaW9ybmFtZW50byBkZWwgZmlsZSBkaSBjb25maWd1cmF6aW9uZSAiCi0iw6ggZmFsbGl0byIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2NjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibWFsZm9ybWVkIG9iamVjdCBuYW1lICVzIgotbXNnc3RyICJub21lIGRlbGwnb2dnZXR0byAlcyBlcnJhdG8iCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjkyCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBicmFuY2ggZGVzY3JpcHRpb24gdGVtcGxhdGU6ICVzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzgzCi1tc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgSEVBRCBhcyBhIHZhbGlkIHJlZi4iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9icmFuY2guYzo3ODggYnVpbHRpbi9jbG9uZS5jOjU1OAotbXNnaWQgIkhFQUQgbm90IGZvdW5kIGJlbG93IHJlZnMvaGVhZHMhIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6ODA4Ci1tc2dpZCAiLS1jb2x1bW4gYW5kIC0tdmVyYm9zZSBhcmUgaW5jb21wYXRpYmxlIgotbXNnc3RyICItLWNvbHVtbiBlIC0tdmVyYm9zZSBub24gc29ubyBjb21wYXRpYmlsaSIKLQotIzogYnVpbHRpbi9icmFuY2guYzo4NTcKLW1zZ2lkICItYSBhbmQgLXIgb3B0aW9ucyB0byAnZ2l0IGJyYW5jaCcgZG8gbm90IG1ha2Ugc2Vuc2Ugd2l0aCBhIGJyYW5jaCBuYW1lIgotbXNnc3RyICIiCi0ibGUgb3B6aW9uaSAtYSBlIC1yIHBlciAnZ2l0IGJyYW5jaCcgbm9uIGhhbm5vIHNlbnNvIGNvbiBpbCBub21lIGRpIHVuIGJyYW5jaCIKLQotIzogYnVpbHRpbi9idW5kbGUuYzo0NwotIywgYy1mb3JtYXQKLW1zZ2lkICIlcyBpcyBva2F5XG4iCi1tc2dzdHIgIiVzIMOoIGNvcnJldHRvXG4iCi0KLSM6IGJ1aWx0aW4vYnVuZGxlLmM6NTYKLW1zZ2lkICJOZWVkIGEgcmVwb3NpdG9yeSB0byBjcmVhdGUgYSBidW5kbGUuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vYnVuZGxlLmM6NjAKLW1zZ2lkICJOZWVkIGEgcmVwb3NpdG9yeSB0byB1bmJ1bmRsZS4iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExMyBidWlsdGluL2NoZWNrb3V0LmM6MTQ2Ci0jLCBjLWZvcm1hdAotbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG91ciB2ZXJzaW9uIgotbXNnc3RyICJpbCBwYXRoICclcycgbm9uIGhhIGxhIG5vc3RyYSB2ZXJzaW9uZSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExNSBidWlsdGluL2NoZWNrb3V0LmM6MTQ4Ci0jLCBjLWZvcm1hdAotbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIHRoZWlyIHZlcnNpb24iCi1tc2dzdHIgImlsIHBhdGggJyVzJyBub24gaGEgbGEgbG9ybyB2ZXJzaW9uZSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzMQotIywgYy1mb3JtYXQKLW1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSBhbGwgbmVjZXNzYXJ5IHZlcnNpb25zIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgbmVjZXNzYXJ5IHZlcnNpb25zIgotbXNnc3RyICJpbCBwYXRoICclcycgbm9uIGhhIGxlIHZlcnNpb25pIG5lY2Vzc2FyaWUiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxOTIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGF0aCAnJXMnOiBjYW5ub3QgbWVyZ2UiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjIwOQotIywgYy1mb3JtYXQKLW1zZ2lkICJVbmFibGUgdG8gYWRkIG1lcmdlIHJlc3VsdCBmb3IgJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjM0IGJ1aWx0aW4vY2hlY2tvdXQuYzozOTIKLW1zZ2lkICJjb3JydXB0IGluZGV4IGZpbGUiCi1tc2dzdHIgImZpbGUgaW5kZXggY29ycm90dG8iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNjQgYnVpbHRpbi9jaGVja291dC5jOjI3MQotIywgYy1mb3JtYXQKLW1zZ2lkICJwYXRoICclcycgaXMgdW5tZXJnZWQiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjMwMiBidWlsdGluL2NoZWNrb3V0LmM6NDk4IGJ1aWx0aW4vY2xvbmUuYzo1ODMKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4MTIKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCi1tc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGlsIG51b3ZvIGZpbGUgaW5kZXgiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozMTkgYnVpbHRpbi9kaWZmLmM6MzAyIGJ1aWx0aW4vbWVyZ2UuYzo0MDgKLW1zZ2lkICJkaWZmX3NldHVwX2RvbmUgZmFpbGVkIgotbXNnc3RyICJkaWZmX3NldHVwX2RvbmUgbm9uIHJpdXNjaXRvIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NDE0Ci1tc2dpZCAieW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiCi1tc2dzdHIgIsOoIG5lY2Vzc2FyaW8gcmlzb2x2ZXJlIHByaW1hIGwnYXR0dWFsZSBpbmRleCIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjUzMwotIywgYy1mb3JtYXQKLW1zZ2lkICJDYW4gbm90IGRvIHJlZmxvZyBmb3IgJyVzJ1xuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo1NjYKLW1zZ2lkICJIRUFEIGlzIG5vdyBhdCIKLW1zZ3N0ciAiSEVBRCBzaSB0cm92YSBvcmEgYSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjU3MwotIywgYy1mb3JtYXQKLW1zZ2lkICJSZXNldCBicmFuY2ggJyVzJ1xuIgotbXNnc3RyICJSaXByaXN0aW5hIGlsIGJyYW5jaCAnJXMnXG4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo1NzYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQWxyZWFkeSBvbiAnJXMnXG4iCi1tc2dzdHIgIlNpIMOoIGdpw6Agc3UgJyVzJ1xuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NTgwCi0jLCBjLWZvcm1hdAotbXNnaWQgIlN3aXRjaGVkIHRvIGFuZCByZXNldCBicmFuY2ggJyVzJ1xuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo1ODIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiU3dpdGNoZWQgdG8gYSBuZXcgYnJhbmNoICclcydcbiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NTg0Ci0jLCBjLWZvcm1hdAotbXNnaWQgIlN3aXRjaGVkIHRvIGJyYW5jaCAnJXMnXG4iCi1tc2dzdHIgIlNpIMOoIHBhc3NhdGkgYWwgYnJhbmNoICclcydcbiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjY0MAotIywgYy1mb3JtYXQKLW1zZ2lkICIgLi4uIGFuZCAlZCBtb3JlLlxuIgotbXNnc3RyICIgLi4uIGUgJWQgYWx0cmkuXG4iCi0KLSMuIFRoZSBzaW5ndWxhciB2ZXJzaW9uCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NjQ2Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJXYXJuaW5nOiB5b3UgYXJlIGxlYXZpbmcgJWQgY29tbWl0IGJlaGluZCwgbm90IGNvbm5lY3RlZCB0b1xuIgotImFueSBvZiB5b3VyIGJyYW5jaGVzOlxuIgorInlvdSBoYXZlIHN0YWdlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlXG4iCisiSWYgdGhlc2UgY2hhbmdlcyBhcmUgbWVhbnQgdG8gYmUgc3F1YXNoZWQgaW50byB0aGUgcHJldmlvdXMgY29tbWl0LCBydW46XG4iCiAiXG4iCi0iJXNcbiIKLW1zZ2lkX3BsdXJhbCAiIgotIldhcm5pbmc6IHlvdSBhcmUgbGVhdmluZyAlZCBjb21taXRzIGJlaGluZCwgbm90IGNvbm5lY3RlZCB0b1xuIgotImFueSBvZiB5b3VyIGJyYW5jaGVzOlxuIgorIiAgZ2l0IGNvbW1pdCAtLWFtZW5kICVzXG4iCiAiXG4iCi0iJXNcbiIKLW1zZ3N0clswXSAiIgotbXNnc3RyWzFdICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2NjQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotIklmIHlvdSB3YW50IHRvIGtlZXAgdGhlbSBieSBjcmVhdGluZyBhIG5ldyBicmFuY2gsIHRoaXMgbWF5IGJlIGEgZ29vZCB0aW1lXG4iCi0idG8gZG8gc28gd2l0aDpcbiIKKyJJZiB0aGV5IGFyZSBtZWFudCB0byBnbyBpbnRvIGEgbmV3IGNvbW1pdCwgcnVuOlxuIgogIlxuIgotIiBnaXQgYnJhbmNoIG5ld19icmFuY2hfbmFtZSAlc1xuIgorIiAgZ2l0IGNvbW1pdCAlc1xuIgogIlxuIgotbXNnc3RyICIiCi0iU2Ugc2kgdnVvbGUgbWFudGVuZXJsZSBjcmVhbmRvIHVuIG51b3ZvIGJyYW5jaCwgcXVlc3RvIHBvdHJlYmJlIGVzc2VyZVxuIgotInVuIGJ1b24gbW9tZW50byBwZXIgZmFybG8gY29uOlxuIgorIkluIGJvdGggY2FzZXMsIG9uY2UgeW91J3JlIGRvbmUsIGNvbnRpbnVlIHdpdGg6XG4iCiAiXG4iCi0iIGdpdCBicmFuY2ggbnVvdm9fbm9tZV9icmFuY2ggJXNcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorbXNnc3RyICIiCisiaGFpIG1vZGlmaWNoZSBpbiBzdGFnaW5nIG5lbGwnYWxiZXJvIGRpIGxhdm9yb1xuIgorIlNlIHF1ZXN0ZSBtb2RpZmljaGUgZGV2b25vIGVzc2VyZSBzb3R0b3Bvc3RlIGEgc3F1YXNoIG5lbCBjb21taXRcbiIKKyJwcmVjZWRlbnRlLCBlc2VndWk6XG4iCiAiXG4iCisiICBnaXQgY29tbWl0IC0tYW1lbmQgJXNcbiIKKyJcbiIKKyJTZSBkZXZvbm8gZXNzZXJlIGluY2x1c2UgaW4gdW4gbnVvdm8gY29tbWl0LCBlc2VndWk6XG4iCisiXG4iCisiICBnaXQgY29tbWl0ICVzXG4iCisiXG4iCisiSW4gZW50cmFtYmkgaSBjYXNpLCB1bmEgdm9sdGEgZmluaXRvLCBjb250aW51YSBjb246XG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjY5NAotbXNnaWQgImludGVybmFsIGVycm9yIGluIHJldmlzaW9uIHdhbGsiCi1tc2dzdHIgIiIKKyM6IHNlcXVlbmNlci5jOjExNDgKK21zZ2lkICIncHJlcGFyZS1jb21taXQtbXNnJyBob29rIGZhaWxlZCIKK21zZ3N0ciAiaG9vayAncHJlcGFyZS1jb21taXQtbXNnJyBub24gcml1c2NpdG8iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2OTgKLW1zZ2lkICJQcmV2aW91cyBIRUFEIHBvc2l0aW9uIHdhcyIKLW1zZ3N0ciAiTGEgcHJlY2VkZW50ZSBwb3NpemlvbmUgZGkgSEVBRCBlcmEiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3MjQKLW1zZ2lkICJZb3UgYXJlIG9uIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIgotbXNnc3RyICIiCi0KLSMuIGNhc2UgKDEpCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODU1Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKLW1zZ3N0ciAicmlmZXJpbWVudG8gbm9uIHZhbGlkbzogJXMiCi0KLSMuIGNhc2UgKDEpOiB3YW50IGEgdHJlZQotIzogYnVpbHRpbi9jaGVja291dC5jOjg5NAotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWZlcmVuY2UgaXMgbm90IGEgdHJlZTogJXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjk3NAotbXNnaWQgIi1CIGNhbm5vdCBiZSB1c2VkIHdpdGggLWIiCi1tc2dzdHIgIi1CIG5vbiBwdcOyIGVzc2VyZSB1c2F0YSBjb24gLWIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5ODMKLW1zZ2lkICItLXBhdGNoIGlzIGluY29tcGF0aWJsZSB3aXRoIGFsbCBvdGhlciBvcHRpb25zIgotbXNnc3RyICItLXBhdGNoIG5vbiDDqCBjb21wYXRpYmlsZSBjb24gdHV0dGUgbGUgYWx0cmUgb3B6aW9uaSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjk4NgotbXNnaWQgIi0tZGV0YWNoIGNhbm5vdCBiZSB1c2VkIHdpdGggLWIvLUIvLS1vcnBoYW4iCi1tc2dzdHIgIi0tZGV0YWNoIG5vbiBwdcOyIGVzc2VyZSB1c2F0YSBjb24gLWIvLUIvLS1vcnBoYW4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5ODgKLW1zZ2lkICItLWRldGFjaCBjYW5ub3QgYmUgdXNlZCB3aXRoIC10IgotbXNnc3RyICItLWRldGFjaCBub24gcHXDsiBlc3NlcmUgdXNhdGEgY29uIC10IgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTk0Ci1tc2dpZCAiLS10cmFjayBuZWVkcyBhIGJyYW5jaCBuYW1lIgotbXNnc3RyICItLXRyYWNrIG5lY2Vzc2l0YSBkZWwgbm9tZSBkaSB1biBicmFuY2giCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDAxCi1tc2dpZCAiTWlzc2luZyBicmFuY2ggbmFtZTsgdHJ5IC1iIgotbXNnc3RyICJOb21lIGRlbCBicmFuY2ggbWFuY2FudGU7IHByb3ZhIGNvbiAtYiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEwMDcKLW1zZ2lkICItLW9ycGhhbiBhbmQgLWJ8LUIgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTAwOQotbXNnaWQgIi0tb3JwaGFuIGNhbm5vdCBiZSB1c2VkIHdpdGggLXQiCi1tc2dzdHIgIi0tb3JwaGFuIG5vbiBwdcOyIGVzc2VyZSB1c2F0YSBjb24gLXQiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDE5Ci1tc2dpZCAiZ2l0IGNoZWNrb3V0OiAtZiBhbmQgLW0gYXJlIGluY29tcGF0aWJsZSIKLW1zZ3N0ciAiZ2l0IGNoZWNrb3V0OiAtZiBlIC1tIG5vbiBzb25vIGNvbXBhdGliaWxpIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTA1MwotbXNnaWQgImludmFsaWQgcGF0aCBzcGVjaWZpY2F0aW9uIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDYxCi0jLCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6MTE1NAogbXNnaWQgIiIKLSJnaXQgY2hlY2tvdXQ6IHVwZGF0aW5nIHBhdGhzIGlzIGluY29tcGF0aWJsZSB3aXRoIHN3aXRjaGluZyBicmFuY2hlcy5cbiIKLSJEaWQgeW91IGludGVuZCB0byBjaGVja291dCAnJXMnIHdoaWNoIGNhbiBub3QgYmUgcmVzb2x2ZWQgYXMgY29tbWl0PyIKKyJZb3VyIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgd2VyZSBjb25maWd1cmVkIGF1dG9tYXRpY2FsbHkgYmFzZWRcbiIKKyJvbiB5b3VyIHVzZXJuYW1lIGFuZCBob3N0bmFtZS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhleSBhcmUgYWNjdXJhdGUuXG4iCisiWW91IGNhbiBzdXBwcmVzcyB0aGlzIG1lc3NhZ2UgYnkgc2V0dGluZyB0aGVtIGV4cGxpY2l0bHkuIFJ1biB0aGVcbiIKKyJmb2xsb3dpbmcgY29tbWFuZCBhbmQgZm9sbG93IHRoZSBpbnN0cnVjdGlvbnMgaW4geW91ciBlZGl0b3IgdG8gZWRpdFxuIgorInlvdXIgY29uZmlndXJhdGlvbiBmaWxlOlxuIgorIlxuIgorIiAgICBnaXQgY29uZmlnIC0tZ2xvYmFsIC0tZWRpdFxuIgorIlxuIgorIkFmdGVyIGRvaW5nIHRoaXMsIHlvdSBtYXkgZml4IHRoZSBpZGVudGl0eSB1c2VkIGZvciB0aGlzIGNvbW1pdCB3aXRoOlxuIgorIlxuIgorIiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKIG1zZ3N0ciAiIgorIklsIHR1byBub21lIGUgbCdpbmRpcml6em8gZS1tYWlsIHNvbm8gc3RhdGkgY29uZmlndXJhdGkgYXV0b21hdGljYW1lbnRlICIKKyJ1c2FuZG9cbiIKKyJpbCB0dW8gbm9tZSB1dGVudGUgZWQgaWwgbm9tZSBob3N0LiBQZXIgZmF2b3JlLCB2ZXJpZmljYSBjaGUgc2lhbm8gZXNhdHRpLlxuIgorIsOIIHBvc3NpYmlsZSBlbGltaW5hcmUgcXVlc3RvIG1lc3NhZ2dpbyBpbXBvc3RhbmRvbGkgZXNwbGljaXRhbWVudGUuXG4iCisiRXNlZ3VpIGlsIHNlZ3VlbnRlIGNvbWFuZG8gZSBzZWd1aSBsZSBpc3RydXppb25pIGZvcm5pdGUgbmVsIHR1byBlZGl0b3JcbiIKKyJwZXIgbW9kaWZpY2FyZSBpbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lOlxuIgorIlxuIgorIiAgICBnaXQgY29uZmlnIC0tZ2xvYmFsIC0tZWRpdFxuIgorIkRvcG8gcXVlc3RhIG9wZXJhemlvbmUsIHB1b2kgcmlwcmlzdGluYXJlIGwnaWRlbnRpdMOgIHVzYXRhIGluIHF1ZXN0byBjb21taXQgIgorImNvbjpcbiIKKyJcbiIKKyIgICAgZ2l0IGNvbW1pdCAtLWFtZW5kIC0tcmVzZXQtYXV0aG9yXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDYzCi1tc2dpZCAiZ2l0IGNoZWNrb3V0OiB1cGRhdGluZyBwYXRocyBpcyBpbmNvbXBhdGlibGUgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDY4Ci1tc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCIKLW1zZ3N0ciAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBub24gcHJlbmRlIHVuIHBhdGggY29tZSBhcmdvbWVudG8iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDcxCi1tc2dpZCAiIgotImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIGFuZCAtLW1lcmdlIGFyZSBpbmNvbXBhdGlibGUgd2hlblxuIgotImNoZWNraW5nIG91dCBvZiB0aGUgaW5kZXguIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDkwCi1tc2dpZCAiQ2Fubm90IHN3aXRjaCBicmFuY2ggdG8gYSBub24tY29tbWl0LiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTA5MwotbXNnaWQgIi0tb3Vycy8tLXRoZWlycyBpcyBpbmNvbXBhdGlibGUgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMuIgotbXNnc3RyICItLW91cnMvLS10aGVpcnMgbm9uIHNvbm8gY29tcGF0aWJpbGkgY29uIGlsIHBhc3NhZ2dpbyBhaSBicmFuY2guIgotCi0jOiBidWlsdGluL2NsZWFuLmM6NzgKLW1zZ2lkICIteCBhbmQgLVggY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCi1tc2dzdHIgIi14IGUgLVggbm9uIHBvc3Nvbm8gZXNzZXJlIHVzYXRpIGluc2llbWUiCi0KLSM6IGJ1aWx0aW4vY2xlYW4uYzo4MgotbXNnaWQgIiIKLSJjbGVhbi5yZXF1aXJlRm9yY2Ugc2V0IHRvIHRydWUgYW5kIG5laXRoZXIgLW4gbm9yIC1mIGdpdmVuOyByZWZ1c2luZyB0byBjbGVhbiIKLW1zZ3N0ciAiIgotImNsZWFuLnJlcXVpcmVGb3JjZSDDqCBpbXBvc3RhdG8gYSB2ZXJvLCBtYSBuw6kgLW4gbsOpIC1mIHNvbm8gc3RhdGUgc3BlY2lmaWNhdGU7ICIKLSJjbGVhbiBpbnRlcnJvdHRvIgotCi0jOiBidWlsdGluL2NsZWFuLmM6ODUKLW1zZ2lkICIiCi0iY2xlYW4ucmVxdWlyZUZvcmNlIGRlZmF1bHRzIHRvIHRydWUgYW5kIG5laXRoZXIgLW4gbm9yIC1mIGdpdmVuOyByZWZ1c2luZyB0byAiCi0iY2xlYW4iCi1tc2dzdHIgIiIKLSJjbGVhbi5yZXF1aXJlRm9yY2Ugw6ggdmVybyBwZXIgZGVmYXVsdCwgbWEgbsOpIC1uIG7DqSAtZiBzb25vIHN0YXRlIHNwZWNpZmljYXRlOyAiCi0iY2xlYW4gaW50ZXJyb3R0byIKLQotIzogYnVpbHRpbi9jbGVhbi5jOjE1NSBidWlsdGluL2NsZWFuLmM6MTc2Ci0jLCBjLWZvcm1hdAotbXNnaWQgIldvdWxkIHJlbW92ZSAlc1xuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2xlYW4uYzoxNTkgYnVpbHRpbi9jbGVhbi5jOjE3OQotIywgYy1mb3JtYXQKLW1zZ2lkICJSZW1vdmluZyAlc1xuIgotbXNnc3RyICJSaW1vemlvbmUgZGkgJXNcbiIKLQotIzogYnVpbHRpbi9jbGVhbi5jOjE2MiBidWlsdGluL2NsZWFuLmM6MTgyCi0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byByZW1vdmUgJXMiCi1tc2dzdHIgInJpbW96aW9uZSBkaSAlcyBub24gcml1c2NpdGEiCi0KLSM6IGJ1aWx0aW4vY2xlYW4uYzoxNjYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiV291bGQgbm90IHJlbW92ZSAlc1xuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2xlYW4uYzoxNjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiTm90IHJlbW92aW5nICVzXG4iCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jbG9uZS5jOjI0MwotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIG5vdCBhIGxvY2FsIGRpcmVjdG9yeS4iCi1tc2dzdHIgImlsIHJlcG9zaXRvcnkgZGkgcmlmZXJpbWVudG8gJyVzJyBub24gw6ggdW5hIGRpcmVjdG9yeSBsb2NhbGUuIgotCi0jOiBidWlsdGluL2Nsb25lLmM6MzAyCi0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyciCi1tc2dzdHIgImFwZXJ0dXJhIGRpICclcycgbm9uIHJpdXNjaXRhIgotCi0jOiBidWlsdGluL2Nsb25lLmM6MzA2Ci0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5ICclcyciCi1tc2dzdHIgImNyZWF6aW9uZSBkZWxsYSBkaXJlY3RvcnkgJyVzJyBub24gcml1c2NpdGEiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzozMDggYnVpbHRpbi9kaWZmLmM6NzUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIHN0YXQgJyVzJyIKLW1zZ3N0ciAic3RhdCBkaSAnJXMnIG5vbiByaXVzY2l0byIKLQotIzogYnVpbHRpbi9jbG9uZS5jOjMxMAotIywgYy1mb3JtYXQKLW1zZ2lkICIlcyBleGlzdHMgYW5kIGlzIG5vdCBhIGRpcmVjdG9yeSIKLW1zZ3N0ciAiJXMgZXNpc3RlIGUgbm9uIMOoIHVuYSBkaXJlY3RvcnkiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzozMjQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIHN0YXQgJXNcbiIKLW1zZ3N0ciAic3RhdCBkaSAlcyBub24gcml1c2NpdG9cbiIKLQotIzogYnVpbHRpbi9jbG9uZS5jOjM0MQotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gdW5saW5rICclcyciCi1tc2dzdHIgInJpbW96aW9uZSBkZWwgbGluayAnJXMnIG5vbiByaXVzY2l0YSIKLQotIzogYnVpbHRpbi9jbG9uZS5jOjM0NgotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGxpbmsgJyVzJyIKLW1zZ3N0ciAiY3JlYXppb25lIGRlbCBsaW5rICclcycgbm9uIHJpdXNjaXRhIgotCi0jOiBidWlsdGluL2Nsb25lLmM6MzUwCi0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBjb3B5IGZpbGUgdG8gJyVzJyIKLW1zZ3N0ciAiY29waWEgZGVsIGZpbGUgaW4gJyVzJyBub24gcml1c2NpdGEiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzozNzMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZG9uZS5cbiIKLW1zZ3N0ciAiZmF0dG8uXG4iCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo0NDAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IGZpbmQgcmVtb3RlIGJyYW5jaCAlcyB0byBjbG9uZS4iCi1tc2dzdHIgIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgdHJvdmFyZSBpbCBicmFuY2ggcmVtb3RvICVzIGRhIGNsb25hcmUuIgotCi0jOiBidWlsdGluL2Nsb25lLmM6NTQ5Ci1tc2dpZCAicmVtb3RlIEhFQUQgcmVmZXJzIHRvIG5vbmV4aXN0ZW50IHJlZiwgdW5hYmxlIHRvIGNoZWNrb3V0LlxuIgotbXNnc3RyICIiCi0ibCdIRUFEIHJlbW90byBzaSByaWZlcmlzY2UgYWQgdW4gcmVmIGluZXNpc3RlbnRlLCBpbXBvc3NpYmlsZSBlc2VndWlyZSBpbCAiCi0iY2hlY2tvdXQuXG4iCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo2MzkKLW1zZ2lkICJUb28gbWFueSBhcmd1bWVudHMuIgotbXNnc3RyICJUcm9wcGkgYXJnb21lbnRpLiIKLQotIzogYnVpbHRpbi9jbG9uZS5jOjY0MwotbXNnaWQgIllvdSBtdXN0IHNwZWNpZnkgYSByZXBvc2l0b3J5IHRvIGNsb25lLiIKLW1zZ3N0ciAiRGV2aSBzcGVjaWZpY2FyZSB1biByZXBvc2l0b3J5IGRhIGNsb25hcmUuIgotCi0jOiBidWlsdGluL2Nsb25lLmM6NjU0Ci0jLCBjLWZvcm1hdAotbXNnaWQgIi0tYmFyZSBhbmQgLS1vcmlnaW4gJXMgb3B0aW9ucyBhcmUgaW5jb21wYXRpYmxlLiIKLW1zZ3N0ciAibGUgb3B6aW9uaSAtLWJhcmUgZSAtLW9yaWdpbiAlcyBub24gc29ubyBjb21wYXRpYmlsaS4iCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo2NjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicmVwb3NpdG9yeSAnJXMnIGRvZXMgbm90IGV4aXN0IgotbXNnc3RyICJpbCByZXBvc2l0b3J5ICclcycgbm9uIGVzaXN0ZSIKLQotIzogYnVpbHRpbi9jbG9uZS5jOjY3MwotbXNnaWQgIi0tZGVwdGggaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo2ODMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZGVzdGluYXRpb24gcGF0aCAnJXMnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYW4gZW1wdHkgZGlyZWN0b3J5LiIKLW1zZ3N0ciAiIgotImlsIHBhdGggZGkgZGVzdGluYXppb25lICclcycgZXNpc3RlIGdpw6AgZSBub24gw6ggdW5hIGRpcmVjdG9yeSB2dW90YS4iCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo2OTMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAid29ya2luZyB0cmVlICclcycgYWxyZWFkeSBleGlzdHMuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo3MDYgYnVpbHRpbi9jbG9uZS5jOjcyMAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgb2YgJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2Nsb25lLmM6NzA5Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgd29yayB0cmVlIGRpciAnJXMnLiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2Nsb25lLmM6NzI4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkNsb25pbmcgaW50byBiYXJlIHJlcG9zaXRvcnkgJyVzJy4uLlxuIgotbXNnc3RyICJDbG9uZSBuZWwgcmVwb3NpdG9yeSBzcG9nbGlvICclcycuLi5cbiIKLQotIzogYnVpbHRpbi9jbG9uZS5jOjczMAotIywgYy1mb3JtYXQKLW1zZ2lkICJDbG9uaW5nIGludG8gJyVzJy4uLlxuIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo3ODYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiRG9uJ3Qga25vdyBob3cgdG8gY2xvbmUgJXMiCi1tc2dzdHIgIk5vbiBzbyBjb21lIGNsb25hcmUgJXMiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo4MzUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiUmVtb3RlIGJyYW5jaCAlcyBub3QgZm91bmQgaW4gdXBzdHJlYW0gJXMiCi1tc2dzdHIgIklsIGJyYW5jaCByZW1vdG8gJXMgbm9uIMOoIHN0YXRvIHRyb3ZhdG8gaW4gdXBzdHJlYW0gJXMiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo4NDIKLW1zZ2lkICJZb3UgYXBwZWFyIHRvIGhhdmUgY2xvbmVkIGFuIGVtcHR5IHJlcG9zaXRvcnkuIgotbXNnc3RyICJTZW1icmEgY2hlIHR1IGFiYmlhIGNsb25hdG8gdW4gcmVwb3NpdG9yeSB2dW90by4iCi0KLSM6IGJ1aWx0aW4vY29sdW1uLmM6NTEKLW1zZ2lkICItLWNvbW1hbmQgbXVzdCBiZSB0aGUgZmlyc3QgYXJndW1lbnQiCi1tc2dzdHIgIi0tY29tbWFuZCBkZXZlIGVzc2VyZSBpbCBwcmltbyBhcmdvbWVudG8iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDMKKyM6IHNlcXVlbmNlci5jOjExNjcKIG1zZ2lkICIiCiAiWW91ciBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIHdlcmUgY29uZmlndXJlZCBhdXRvbWF0aWNhbGx5IGJhc2VkXG4iCiAib24geW91ciB1c2VybmFtZSBhbmQgaG9zdG5hbWUuIFBsZWFzZSBjaGVjayB0aGF0IHRoZXkgYXJlIGFjY3VyYXRlLlxuIgpAQCAtMjA3NCwxMjEgKzY4MzgsNTg3MiBAQAogIlxuIgogIiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKIG1zZ3N0ciAiIgotIklsIHR1byBub21lIGUgbCdpbmRpcml6em8gZW1haWwgc29ubyBzdGF0aSBjb25maWd1cmF0aSBhdXRvbWF0aWNhbWVudGUgdXNhbmRvXG4iCisiSWwgdHVvIG5vbWUgZSBsJ2luZGlyaXp6byBlLW1haWwgc29ubyBzdGF0aSBjb25maWd1cmF0aSBhdXRvbWF0aWNhbWVudGUgIgorInVzYW5kb1xuIgogImlsIHR1byBub21lIHV0ZW50ZSBlZCBpbCBub21lIGhvc3QuIFBlciBmYXZvcmUsIHZlcmlmaWNhIGNoZSBzaWFubyBlc2F0dGkuXG4iCiAiw4ggcG9zc2liaWxlIGVsaW1pbmFyZSBxdWVzdG8gbWVzc2FnZ2lvIGltcG9zdGFuZG9saSBlc3BsaWNpdGFtZW50ZTpcbiIKICJcbiIKLSIgICAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLm5hbWUgXCJUdW8gTm9tZVwiXG4iCisiICAgIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5uYW1lIFwiSWwgdHVvIG5vbWVcIlxuIgogIiAgICBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIuZW1haWwgdHVAZXNlbXBpby5jb21cbiIKICJcbiIKLSJEb3BvIHF1ZXN0YSBvcGVyYXppb25lLCBwdW9pIHJpcHJpc3RpbmFyZSBsJ2lkZW50aXTDoCB1c2F0YSBpbiBxdWVzdG8gY29tbWl0IGNvbjpcbiIKKyJEb3BvIHF1ZXN0YSBvcGVyYXppb25lLCBwdW9pIHJpcHJpc3RpbmFyZSBsJ2lkZW50aXTDoCB1c2F0YSBpbiBxdWVzdG8gY29tbWl0ICIKKyJjb246XG4iCiAiXG4iCiAiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU1CisjOiBzZXF1ZW5jZXIuYzoxMjA5Cittc2dpZCAiY291bGRuJ3QgbG9vayB1cCBuZXdseSBjcmVhdGVkIGNvbW1pdCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgdHJvdmFyZSBpbCBjb21taXQgYXBwZW5hIGNyZWF0byIKKworIzogc2VxdWVuY2VyLmM6MTIxMQorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBuZXdseSBjcmVhdGVkIGNvbW1pdCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBpbCBjb21taXQgYXBwZW5hIGNyZWF0byIKKworIzogc2VxdWVuY2VyLmM6MTI1NworbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIEhFQUQgYWZ0ZXIgY3JlYXRpbmcgY29tbWl0IgorbXNnc3RyICJpbXBvc3NpYmlsZSByaXNvbHZlcmUgSEVBRCBkb3BvIGxhIGNyZWF6aW9uZSBkZWwgY29tbWl0IgorCisjOiBzZXF1ZW5jZXIuYzoxMjU5Cittc2dpZCAiZGV0YWNoZWQgSEVBRCIKK21zZ3N0ciAiSEVBRCBzY29sbGVnYXRvIgorCisjOiBzZXF1ZW5jZXIuYzoxMjYzCittc2dpZCAiIChyb290LWNvbW1pdCkiCittc2dzdHIgIiAoY29tbWl0IHJhZGljZSkiCisKKyM6IHNlcXVlbmNlci5jOjEyODQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgSEVBRCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBIRUFEIgorCisjOiBzZXF1ZW5jZXIuYzoxMjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgJXMgaXMgbm90IGEgY29tbWl0ISIKK21zZ3N0ciAiTCdIRUFEICVzIG5vbiDDqCB1biBjb21taXQhIgorCisjOiBzZXF1ZW5jZXIuYzoxMjkwIHNlcXVlbmNlci5jOjEzNjQgYnVpbHRpbi9jb21taXQuYzoxNTc0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIEhFQUQgY29tbWl0IgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGlsIGNvbW1pdCBIRUFEIgorCisjOiBzZXF1ZW5jZXIuYzoxMzQyIHNlcXVlbmNlci5jOjE5NjgKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0IGF1dGhvciIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBsJ2F1dG9yZSBkZWwgY29tbWl0IgorCisjOiBzZXF1ZW5jZXIuYzoxMzUzIGJ1aWx0aW4vYW0uYzoxNTY2IGJ1aWx0aW4vbWVyZ2UuYzo2ODcKK21zZ2lkICJnaXQgd3JpdGUtdHJlZSBmYWlsZWQgdG8gd3JpdGUgYSB0cmVlIgorbXNnc3RyICJnaXQgd3JpdGUtdHJlZSBub24gw6ggcml1c2NpdG8gYSBzY3JpdmVyZSB1biBhbGJlcm8iCisKKyM6IHNlcXVlbmNlci5jOjEzODYgc2VxdWVuY2VyLmM6MTQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBjb21taXQgbWVzc2FnZSBmcm9tICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaWwgbWVzc2FnZ2lvIGRpIGNvbW1pdCBkYSAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzoxNDEzIGJ1aWx0aW4vYW0uYzoxNTg4IGJ1aWx0aW4vY29tbWl0LmM6MTY3MyBidWlsdGluL21lcmdlLmM6ODg2CisjOiBidWlsdGluL21lcmdlLmM6OTExCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGNvbW1pdCBvYmplY3QiCittc2dzdHIgInNjcml0dHVyYSBkZWxsJ29nZ2V0dG8gZGVsIGNvbW1pdCBub24gcml1c2NpdGEiCisKKyM6IHNlcXVlbmNlci5jOjE0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbW1pdCAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBpbCBjb21taXQgJXMiCisKKyM6IHNlcXVlbmNlci5jOjE0NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIHBhcmVudCBjb21taXQgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgaWwgY29tbWl0IGdlbml0b3JlICVzIgorCisjOiBzZXF1ZW5jZXIuYzoxNTYyIHNlcXVlbmNlci5jOjE2NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21tYW5kOiAlZCIKK21zZ3N0ciAiY29tYW5kbyBzY29ub3NjaXV0bzogJWQiCisKKyM6IHNlcXVlbmNlci5jOjE2MjAgc2VxdWVuY2VyLmM6MTY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJWQgY29tbWl0cy4iCittc2dzdHIgIlF1ZXN0YSDDqCB1bmEgY29tYmluYXppb25lIGRpICVkIGNvbW1pdC4iCisKKyM6IHNlcXVlbmNlci5jOjE2MzAKK21zZ2lkICJuZWVkIGEgSEVBRCB0byBmaXh1cCIKK21zZ3N0ciAiw6ggbmVjZXNzYXJpYSB1bidIRUFEIHBlciBpbCBmaXh1cCIKKworIzogc2VxdWVuY2VyLmM6MTYzMiBzZXF1ZW5jZXIuYzozMjEyCittc2dpZCAiY291bGQgbm90IHJlYWQgSEVBRCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBsJ0hFQUQiCisKKyM6IHNlcXVlbmNlci5jOjE2MzQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBIRUFEJ3MgY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaWwgbWVzc2FnZ2lvIGRpIGNvbW1pdCBkZWxsJ0hFQUQiCisKKyM6IHNlcXVlbmNlci5jOjE2NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHdyaXRlICclcyciCittc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlICclcyciCisKKyM6IHNlcXVlbmNlci5jOjE2NDcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5NgorbXNnaWQgIlRoaXMgaXMgdGhlIDFzdCBjb21taXQgbWVzc2FnZToiCittc2dzdHIgIlF1ZXN0byDDqCBpbCBwcmltbyBtZXNzYWdnaW8gZGkgY29tbWl0OiIKKworIzogc2VxdWVuY2VyLmM6MTY1NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBjb21taXQgbWVzc2FnZSBvZiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBpbCBtZXNzYWdnaW8gZGkgY29tbWl0IGRpICVzIgorCisjOiBzZXF1ZW5jZXIuYzoxNjYyCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoaXMgaXMgdGhlIGNvbW1pdCBtZXNzYWdlICMlZDoiCittc2dzdHIgIlF1ZXN0byDDqCBpbCBtZXNzYWdnaW8gZGkgY29tbWl0IG51bWVybyAlZDoiCisKKyM6IHNlcXVlbmNlci5jOjE2NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlIGNvbW1pdCBtZXNzYWdlICMlZCB3aWxsIGJlIHNraXBwZWQ6IgorbXNnc3RyICJJbCBtZXNzYWdnaW8gZGkgY29tbWl0IG51bWVybyAlZCBzYXLDoCBzYWx0YXRvOiIKKworIzogc2VxdWVuY2VyLmM6MTc1NgorbXNnaWQgInlvdXIgaW5kZXggZmlsZSBpcyB1bm1lcmdlZC4iCittc2dzdHIgImlsIGZpbGUgaW5kaWNlIG5vbiDDqCBzdGF0byBzb3R0b3Bvc3RvIGEgbWVyZ2UuIgorCisjOiBzZXF1ZW5jZXIuYzoxNzYzCittc2dpZCAiY2Fubm90IGZpeHVwIHJvb3QgY29tbWl0IgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBmaXh1cCBzdWwgY29tbWl0IHJhZGljZSIKKworIzogc2VxdWVuY2VyLmM6MTc4MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgJXMgaXMgYSBtZXJnZSBidXQgbm8gLW0gb3B0aW9uIHdhcyBnaXZlbi4iCittc2dzdHIgImlsIGNvbW1pdCAlcyDDqCB1biBtZXJnZSBtYSBub24gw6ggc3RhdGEgc3BlY2lmaWNhdGEgbCdvcHppb25lIC1tLiIKKworIzogc2VxdWVuY2VyLmM6MTc5MCBzZXF1ZW5jZXIuYzoxNzk4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIHBhcmVudCAlZCIKK21zZ3N0ciAiaWwgY29tbWl0ICVzIG5vbiBoYSBpbCBnZW5pdG9yZSAlZCIKKworIzogc2VxdWVuY2VyLmM6MTgwNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZ2V0IGNvbW1pdCBtZXNzYWdlIGZvciAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgb3R0ZW5lcmUgaWwgbWVzc2FnZ2lvIGRpIGNvbW1pdCBwZXIgJXMiCisKKyMuIFRSQU5TTEFUT1JTOiBUaGUgZmlyc3QgJXMgd2lsbCBiZSBhICJ0b2RvIiBjb21tYW5kIGxpa2UKKyMuICJyZXZlcnQiIG9yICJwaWNrIiwgdGhlIHNlY29uZCAlcyBhIFNIQTEuCisjOiBzZXF1ZW5jZXIuYzoxODIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW5ub3QgcGFyc2UgcGFyZW50IGNvbW1pdCAlcyIKK21zZ3N0ciAiJXM6IGltcG9zc2liaWxlIGFuYWxpenphcmUgaWwgY29tbWl0IGdlbml0b3JlICVzIgorCisjOiBzZXF1ZW5jZXIuYzoxODg4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaWRlbm9taW5hcmUgJyVzJyBpbiAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzoxOTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZXZlcnQgJXMuLi4gJXMiCittc2dzdHIgIm5vbiDDqCBzdGF0byBwb3NzaWJpbGUgZXNlZ3VpcmUgaWwgcmV2ZXJ0IGRpICVzLi4uICVzIgorCisjOiBzZXF1ZW5jZXIuYzoxOTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBhcHBseSAlcy4uLiAlcyIKK21zZ3N0ciAibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBhcHBsaWNhcmUgJXMuLi4gJXMiCisKKyM6IHNlcXVlbmNlci5jOjE5NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHJvcHBpbmcgJXMgJXMgLS0gcGF0Y2ggY29udGVudHMgYWxyZWFkeSB1cHN0cmVhbVxuIgorbXNnc3RyICJzY2FydG8gJXMgJXMgLSBpIGNvbnRlbnV0aSBkZWxsYSBwYXRjaCBzb25vIGdpw6AgdXBzdHJlYW1cbiIKKworIzogc2VxdWVuY2VyLmM6MjAxOAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIKK21zZ3N0ciAiZ2l0ICVzOiBsZXR0dXJhIGRlbGwnaW5kaWNlIG5vbiByaXVzY2l0YSIKKworIzogc2VxdWVuY2VyLmM6MjAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWZyZXNoIHRoZSBpbmRleCIKK21zZ3N0ciAiZ2l0ICVzOiBhZ2dpb3JuYW1lbnRvIGRlbGwnaW5kaWNlIG5vbiByaXVzY2l0byIKKworIzogc2VxdWVuY2VyLmM6MjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkb2VzIG5vdCBhY2NlcHQgYXJndW1lbnRzOiAnJXMnIgorbXNnc3RyICIlcyBub24gYWNjZXR0YSBhcmdvbWVudGk6ICclcyciCisKKyM6IHNlcXVlbmNlci5jOjIxMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyBhcmd1bWVudHMgZm9yICVzIgorbXNnc3RyICJhcmdvbWVudGkgbWFuY2FudGkgcGVyICVzIgorCisjOiBzZXF1ZW5jZXIuYzoyMTQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlICclcyciCisKKyM6IHNlcXVlbmNlci5jOjIyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lICVkOiAlLipzIgorbXNnc3RyICJyaWdhICVkIG5vbiB2YWxpZGE6ICUuKnMiCisKKyM6IHNlcXVlbmNlci5jOjIyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90ICclcycgd2l0aG91dCBhIHByZXZpb3VzIGNvbW1pdCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgJyVzJyBzZW56YSB1biBjb21taXQgcHJlY2VkZW50ZSIKKworIzogc2VxdWVuY2VyLmM6MjI5OAorbXNnaWQgImNhbmNlbGxpbmcgYSBjaGVycnkgcGlja2luZyBpbiBwcm9ncmVzcyIKK21zZ3N0ciAiYW5udWxsbyB1bidvcGVyYXppb25lIGRpIGNoZXJyeS1waWNrIGluIGNvcnNvIgorCisjOiBzZXF1ZW5jZXIuYzoyMzA1Cittc2dpZCAiY2FuY2VsbGluZyBhIHJldmVydCBpbiBwcm9ncmVzcyIKK21zZ3N0ciAiYW5udWxsbyB1bidvcGVyYXppb25lIGRpIHJldmVydCBpbiBjb3JzbyIKKworIzogc2VxdWVuY2VyLmM6MjM0OQorbXNnaWQgInBsZWFzZSBmaXggdGhpcyB1c2luZyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycuIgorbXNnc3RyICJjb3JyZWdnaSBsYSBzaXR1YXppb25lIHVzYW5kbyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycuIgorCisjOiBzZXF1ZW5jZXIuYzoyMzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVudXNhYmxlIGluc3RydWN0aW9uIHNoZWV0OiAnJXMnIgorbXNnc3RyICJmb2dsaW8gaXN0cnV6aW9uaSBpbnV0aWxpenphYmlsZTogJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MjM1NgorbXNnaWQgIm5vIGNvbW1pdHMgcGFyc2VkLiIKK21zZ3N0ciAibmVzc3VuIGNvbW1pdCBhbmFsaXp6YXRvLiIKKworIzogc2VxdWVuY2VyLmM6MjM2NworbXNnaWQgImNhbm5vdCBjaGVycnktcGljayBkdXJpbmcgYSByZXZlcnQuIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSB1biBjaGVycnktcGljayBkdXJhbnRlIHVuIHJldmVydC4iCisKKyM6IHNlcXVlbmNlci5jOjIzNjkKK21zZ2lkICJjYW5ub3QgcmV2ZXJ0IGR1cmluZyBhIGNoZXJyeS1waWNrLiIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgdW4gcmV2ZXJ0IGR1cmFudGUgdW4gY2hlcnJ5LXBpY2suIgorCisjOiBzZXF1ZW5jZXIuYzoyNDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdmFsdWUgZm9yICVzOiAlcyIKK21zZ3N0ciAidmFsb3JlIG5vbiB2YWxpZG8gcGVyICVzOiAlcyIKKworIzogc2VxdWVuY2VyLmM6MjU0MAorbXNnaWQgInVudXNhYmxlIHNxdWFzaC1vbnRvIgorbXNnc3RyICJzcXVhc2gtb250byBpbnV0aWxpenphYmlsZSIKKworIzogc2VxdWVuY2VyLmM6MjU1NgorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgb3B0aW9ucyBzaGVldDogJyVzJyIKK21zZ3N0ciAiZm9nbGlvIG9wemlvbmkgbWFsZm9ybWF0aTogJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MjY0NCBzZXF1ZW5jZXIuYzo0MzYxCittc2dpZCAiZW1wdHkgY29tbWl0IHNldCBwYXNzZWQiCittc2dzdHIgIsOoIHN0YXRvIHBhc3NhdG8gdW4gaW5zaWVtZSBkaSBjb21taXQgdnVvdG8iCisKKyM6IHNlcXVlbmNlci5jOjI2NjAKK21zZ2lkICJyZXZlcnQgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIKK21zZ3N0ciAidW4nb3BlcmF6aW9uZSBkaSByZXZlcnQgw6ggZ2nDoCBpbiBjb3JzbyIKKworIzogc2VxdWVuY2VyLmM6MjY2MgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnkgXCJnaXQgcmV2ZXJ0ICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIgorbXNnc3RyICJwcm92YSBcImdpdCByZXZlcnQgKC0tY29udGludWUgfCAlcy0tYWJvcnQgfCAtLXF1aXQpXCIiCisKKyM6IHNlcXVlbmNlci5jOjI2NjUKK21zZ2lkICJjaGVycnktcGljayBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgorbXNnc3RyICJ1bidvcGVyYXppb25lIGRpIGNoZXJyeS1waWNrIMOoIGdpw6AgaW4gY29yc28iCisKKyM6IHNlcXVlbmNlci5jOjI2NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5IFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIgorbXNnc3RyICJwcm92YSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKKworIzogc2VxdWVuY2VyLmM6MjY4MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHNlcXVlbmNlciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIGxhIGRpcmVjdG9yeSBzZXF1ZW5jZXIgJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MjY5NgorbXNnaWQgImNvdWxkIG5vdCBsb2NrIEhFQUQiCittc2dzdHIgImltcG9zc2liaWxlIGJsb2NjYXJlIEhFQUQiCisKKyM6IHNlcXVlbmNlci5jOjI3NTYgc2VxdWVuY2VyLmM6NDA5OQorbXNnaWQgIm5vIGNoZXJyeS1waWNrIG9yIHJldmVydCBpbiBwcm9ncmVzcyIKK21zZ3N0ciAibmVzc3VuYSBvcGVyYXppb25lIGRpIGNoZXJyeS1waWNrIG8gcmV2ZXJ0IGluIGNvcnNvIgorCisjOiBzZXF1ZW5jZXIuYzoyNzU4IHNlcXVlbmNlci5jOjI3NjkKK21zZ2lkICJjYW5ub3QgcmVzb2x2ZSBIRUFEIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaXNvbHZlcmUgSEVBRCIKKworIzogc2VxdWVuY2VyLmM6Mjc2MCBzZXF1ZW5jZXIuYzoyODA0Cittc2dpZCAiY2Fubm90IGFib3J0IGZyb20gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBpbnRlcnJvbXBlcmUgbCdvcGVyYXppb25lIGRhIHVuIGJyYW5jaCBjaGUgZGV2ZSBlc3NlcmUgYW5jb3JhICIKKyJjcmVhdG8iCisKKyM6IHNlcXVlbmNlci5jOjI3OTAgYnVpbHRpbi9ncmVwLmM6NzI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzoyNzkyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICclcyc6ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlICclcyc6ICVzIgorCisjOiBzZXF1ZW5jZXIuYzoyNzkzCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSIKK21zZ3N0ciAiZmluZSBkZWwgZmlsZSBpbmF0dGVzYSIKKworIzogc2VxdWVuY2VyLmM6Mjc5OQorIywgYy1mb3JtYXQKK21zZ2lkICJzdG9yZWQgcHJlLWNoZXJyeS1waWNrIEhFQUQgZmlsZSAnJXMnIGlzIGNvcnJ1cHQiCittc2dzdHIgIiIKKyJpbCBmaWxlICclcycgaW4gY3VpIMOoIHN0YXRvIHNhbHZhdG8gbCdIRUFEIHByaW1hIGRlbCBjaGVycnkgcGljayDDqCBjb3Jyb3R0byIKKworIzogc2VxdWVuY2VyLmM6MjgxMAorbXNnaWQgIllvdSBzZWVtIHRvIGhhdmUgbW92ZWQgSEVBRC4gTm90IHJld2luZGluZywgY2hlY2sgeW91ciBIRUFEISIKK21zZ3N0ciAiIgorIlNlbWJyYSBjaGUgdHUgYWJiaWEgc3Bvc3RhdG8gbCdIRUFELiBOb24gZXNlZ3VvIGlsIHJld2luZCwgY29udHJvbGxhIGwnSEVBRCEiCisKKyM6IHNlcXVlbmNlci5jOjI4NTEKK21zZ2lkICJubyByZXZlcnQgaW4gcHJvZ3Jlc3MiCittc2dzdHIgIm5lc3N1biByZXZlcnQgaW4gY29yc28iCisKKyM6IHNlcXVlbmNlci5jOjI4NTkKK21zZ2lkICJubyBjaGVycnktcGljayBpbiBwcm9ncmVzcyIKK21zZ3N0ciAibmVzc3VuIGNoZXJyeS1waWNrIGluIGNvcnNvIgorCisjOiBzZXF1ZW5jZXIuYzoyODY5Cittc2dpZCAiZmFpbGVkIHRvIHNraXAgdGhlIGNvbW1pdCIKK21zZ3N0ciAic2FsdG8gZGVsIGNvbW1pdCBub24gcml1c2NpdG8iCisKKyM6IHNlcXVlbmNlci5jOjI4NzYKK21zZ2lkICJ0aGVyZSBpcyBub3RoaW5nIHRvIHNraXAiCittc2dzdHIgIm5vbiBjJ8OoIG51bGxhIGRhIHNhbHRhcmUiCisKKyM6IHNlcXVlbmNlci5jOjI4NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImhhdmUgeW91IGNvbW1pdHRlZCBhbHJlYWR5P1xuIgorInRyeSBcImdpdCAlcyAtLWNvbnRpbnVlXCIiCittc2dzdHIgIiIKKyJoYWkgZ2nDoCBlc2VndWl0byBpbCBjb21taXQ/XG4iCisicHJvdmEgXCJnaXQgJXMgLS1jb250aW51ZVwiIgorCisjOiBzZXF1ZW5jZXIuYzozMDAzIHNlcXVlbmNlci5jOjQwMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHVwZGF0ZSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYWdnaW9ybmFyZSAlcyIKKworIzogc2VxdWVuY2VyLmM6MzA0MiBzZXF1ZW5jZXIuYzozOTkxCittc2dpZCAiY2Fubm90IHJlYWQgSEVBRCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBsJ0hFQUQiCisKKyM6IHNlcXVlbmNlci5jOjMwNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNvcHkgJyVzJyB0byAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjb3BpYXJlICclcycgaW4gJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MzA2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGNhbiBhbWVuZCB0aGUgY29tbWl0IG5vdywgd2l0aFxuIgorIlxuIgorIiAgZ2l0IGNvbW1pdCAtLWFtZW5kICVzXG4iCisiXG4iCisiT25jZSB5b3UgYXJlIHNhdGlzZmllZCB3aXRoIHlvdXIgY2hhbmdlcywgcnVuXG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKK21zZ3N0ciAiIgorIsOIIHBvc3NpYmlsZSBtb2RpZmljYXJlIGlsIGNvbW1pdCBvcmEgY29uXG4iCisiXG4iCisiICBnaXQgY29tbWl0IC0tYW1lbmQgJXNcbiIKKyJcbiIKKyJRdWFuZG8gc2VpIHNvZGRpc2ZhdHRvIGRlbGxlIG1vZGlmaWNoZSwgZXNlZ3VpXG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKworIzogc2VxdWVuY2VyLmM6MzA3NworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgYXBwbHkgJXMuLi4gJS4qcyIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgYXBwbGljYXJlICVzLi4uICUuKnMiCisKKyM6IHNlcXVlbmNlci5jOjMwODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IG1lcmdlICUuKnMiCittc2dzdHIgIkltcG9zc2liaWxlIGVzZWd1aXJlIGlsIG1lcmdlIGRpICUuKnMiCisKKyM6IHNlcXVlbmNlci5jOjMwOTggc2VxdWVuY2VyLmM6MzEwMiBidWlsdGluL2RpZmZ0b29sLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjb3B5ICclcycgdG8gJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY29waWFyZSAnJXMnIGluICclcyciCisKKyM6IHNlcXVlbmNlci5jOjMxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4ZWN1dGlvbiBmYWlsZWQ6ICVzXG4iCisiJXNZb3UgY2FuIGZpeCB0aGUgcHJvYmxlbSwgYW5kIHRoZW4gcnVuXG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKyJcbiIKK21zZ3N0ciAiIgorImVzZWN1emlvbmUgbm9uIHJpdXNjaXRhOiAlc1xuIgorIiVzUHVvaSBjb3JyZWdnZXJlIGlsIHByb2JsZW1hIGUgcXVpbmRpIGVzZWd1aXJlXG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKyJcbiIKKworIzogc2VxdWVuY2VyLmM6MzEzNQorbXNnaWQgImFuZCBtYWRlIGNoYW5nZXMgdG8gdGhlIGluZGV4IGFuZC9vciB0aGUgd29ya2luZyB0cmVlXG4iCittc2dzdHIgImUgc29ubyBzdGF0ZSBhcHBvcnRhdGUgbW9kaWZpY2hlIGFsbCdpbmRpY2UgZS9vIGFsbCdhbGJlcm8gZGkgbGF2b3JvXG4iCisKKyM6IHNlcXVlbmNlci5jOjMxNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4ZWN1dGlvbiBzdWNjZWVkZWQ6ICVzXG4iCisiYnV0IGxlZnQgY2hhbmdlcyB0byB0aGUgaW5kZXggYW5kL29yIHRoZSB3b3JraW5nIHRyZWVcbiIKKyJDb21taXQgb3Igc3Rhc2ggeW91ciBjaGFuZ2VzLCBhbmQgdGhlbiBydW5cbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorIlxuIgorbXNnc3RyICIiCisiZXNlY3V6aW9uZSByaXVzY2l0YTogJXNcbiIKKyJtYSBzb25vIHN0YXRlIG1hbnRlbnV0ZSBtb2RpZmljaGUgYWxsJ2luZGljZSBlL28gYWxsJ2FsYmVybyBkaSBsYXZvcm9cbiIKKyJFc2VndWkgaWwgY29tbWl0IG8gbG8gc3Rhc2ggZGVsbGUgbW9kaWZpY2hlLCBxdWluZGkgZXNlZ3VpXG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKyJcbiIKKworIzogc2VxdWVuY2VyLmM6MzIwMgorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGxhYmVsIG5hbWU6ICclLipzJyIKK21zZ3N0ciAibm9tZSBldGljaGV0dGEgaWxsZWNpdG86ICclLipzJyIKKworIzogc2VxdWVuY2VyLmM6MzI1NgorbXNnaWQgIndyaXRpbmcgZmFrZSByb290IGNvbW1pdCIKK21zZ3N0ciAic2NyaXR0dXJhIGNvbW1pdCByYWRpY2UgZmFsc28gaW4gY29yc28iCisKKyM6IHNlcXVlbmNlci5jOjMyNjEKK21zZ2lkICJ3cml0aW5nIHNxdWFzaC1vbnRvIgorbXNnc3RyICJzY3JpdHR1cmEgc3F1YXNoLW9udG8gaW4gY29yc28iCisKKyM6IHNlcXVlbmNlci5jOjMyOTkgYnVpbHRpbi9yZWJhc2UuYzo4ODAgYnVpbHRpbi9yZWJhc2UuYzo4ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZpbmQgdHJlZSBvZiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgdHJvdmFyZSBsJ2FsYmVybyBkaSAlcyIKKworIzogc2VxdWVuY2VyLmM6MzM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaXNvbHZlcmUgJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MzM3NQorbXNnaWQgImNhbm5vdCBtZXJnZSB3aXRob3V0IGEgY3VycmVudCByZXZpc2lvbiIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgbWVyZ2Ugc2VuemEgdW5hIHJldmlzaW9uZSBjb3JyZW50ZSIKKworIzogc2VxdWVuY2VyLmM6MzM5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJyUuKnMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlICclLipzJyIKKworIzogc2VxdWVuY2VyLmM6MzQwNgorIywgYy1mb3JtYXQKK21zZ2lkICJub3RoaW5nIHRvIG1lcmdlOiAnJS4qcyciCittc2dzdHIgIm5vbiBjJ8OoIG51bGxhIGRpIGN1aSBlc2VndWlyZSBpbCBtZXJnZTogJyUuKnMnIgorCisjOiBzZXF1ZW5jZXIuYzozNDE4Cittc2dpZCAib2N0b3B1cyBtZXJnZSBjYW5ub3QgYmUgZXhlY3V0ZWQgb24gdG9wIG9mIGEgW25ldyByb290XSIKK21zZ3N0ciAiaWwgbWVyZ2Ugb2N0b3B1cyBub24gcHXDsiBlc3NlcmUgZXNlZ3VpdG8gc3UgdW4gW251b3ZvIGNvbW1pdCByYWRpY2VdIgorCisjOiBzZXF1ZW5jZXIuYzozNDM0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZXQgY29tbWl0IG1lc3NhZ2Ugb2YgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgb3R0ZW5lcmUgaWwgbWVzc2FnZ2lvIGRpIGNvbW1pdCBwZXIgJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MzU5NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZXZlbiBhdHRlbXB0IHRvIG1lcmdlICclLipzJyIKK21zZ3N0ciAibm9uIMOoIHN0YXRvIG5lbW1lbm8gcG9zc2liaWxlIHRlbnRhcmUgZGkgZXNlZ3VpcmUgaWwgbWVyZ2UgZGkgJyUuKnMnIgorCisjOiBzZXF1ZW5jZXIuYzozNjEwCittc2dpZCAibWVyZ2U6IFVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKK21zZ3N0ciAibWVyZ2U6IGltcG9zc2liaWxlIHNjcml2ZXJlIGlsIG51b3ZvIGZpbGUgaW5kaWNlIgorCisjOiBzZXF1ZW5jZXIuYzozNjc5IGJ1aWx0aW4vcmViYXNlLmM6NzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIkFwcGxpZWQgYXV0b3N0YXNoLlxuIgorbXNnc3RyICJTdGFzaCBhdXRvbWF0aWNvIGFwcGxpY2F0by5cbiIKKworIzogc2VxdWVuY2VyLmM6MzY5MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RvcmUgJXMiCittc2dzdHIgImltcG9zc2liaWxlIG1lbW9yaXp6YXJlICVzIgorCisjOiBzZXF1ZW5jZXIuYzozNjk0IGJ1aWx0aW4vcmViYXNlLmM6NzUzIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFwcGx5aW5nIGF1dG9zdGFzaCByZXN1bHRlZCBpbiBjb25mbGljdHMuXG4iCisiWW91ciBjaGFuZ2VzIGFyZSBzYWZlIGluIHRoZSBzdGFzaC5cbiIKKyJZb3UgY2FuIHJ1biBcImdpdCBzdGFzaCBwb3BcIiBvciBcImdpdCBzdGFzaCBkcm9wXCIgYXQgYW55IHRpbWUuXG4iCittc2dzdHIgIiIKKyJMJ2FwcGxpY2F6aW9uZSBkZWxsbyBzdGFzaCBhdXRvbWF0aWNvIGhhIGdlbmVyYXRvIGNvbmZsaXR0aS5cbiIKKyJMZSB0dWUgbW9kaWZpY2hlIHNvbm8gYWwgc2ljdXJvIG5lbGxvIHN0YXNoLlxuIgorIlB1b2kgZXNlZ3VpcmUgXCJnaXQgc3Rhc2ggcG9wXCIgbyBcImdpdCBzdGFzaCBkcm9wXCIgaW4gcXVhbHVucXVlIG1vbWVudG8uXG4iCisKKyM6IHNlcXVlbmNlci5jOjM3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG5vdCBhIHZhbGlkIE9JRCIKK21zZ3N0ciAiJXM6IG5vbiDDqCB1biBPSUQgdmFsaWRvIgorCisjOiBzZXF1ZW5jZXIuYzozNzYwIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NzkKK21zZ2lkICJjb3VsZCBub3QgZGV0YWNoIEhFQUQiCittc2dzdHIgImltcG9zc2liaWxlIHNjb2xsZWdhcmUgbCdIRUFEIgorCisjOiBzZXF1ZW5jZXIuYzozNzc1CisjLCBjLWZvcm1hdAorbXNnaWQgIlN0b3BwZWQgYXQgSEVBRFxuIgorbXNnc3RyICJGZXJtYXRvIGEgSEVBRFxuIgorCisjOiBzZXF1ZW5jZXIuYzozNzc3CisjLCBjLWZvcm1hdAorbXNnaWQgIlN0b3BwZWQgYXQgJXNcbiIKK21zZ3N0ciAiRmVybWF0byBhICVzXG4iCisKKyM6IHNlcXVlbmNlci5jOjM3ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvdWxkIG5vdCBleGVjdXRlIHRoZSB0b2RvIGNvbW1hbmRcbiIKKyJcbiIKKyIgICAgJS4qc1xuIgorIkl0IGhhcyBiZWVuIHJlc2NoZWR1bGVkOyBUbyBlZGl0IHRoZSBjb21tYW5kIGJlZm9yZSBjb250aW51aW5nLCBwbGVhc2VcbiIKKyJlZGl0IHRoZSB0b2RvIGxpc3QgZmlyc3Q6XG4iCisiXG4iCisiICAgIGdpdCByZWJhc2UgLS1lZGl0LXRvZG9cbiIKKyIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBjb21hbmRvIHRvZG9cbiIKKyJcbiIKKyIgICAgJS4qc1xuIgorIlxuIgorIklsIGNvbWFuZG8gw6ggc3RhdG8gcGlhbmlmaWNhdG8gbnVvdmFtZW50ZS4gUGVyIG1vZGlmaWNhcmxvIHByaW1hIGRpXG4iCisiY29udGludWFyZSwgbW9kaWZpY2EgcHJpbWEgbGEgbGlzdGEgdG9kbzpcbiIKKyJcbiIKKyIgICAgZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb1xuIgorIiAgICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKworIzogc2VxdWVuY2VyLmM6Mzg2OQorIywgYy1mb3JtYXQKK21zZ2lkICJTdG9wcGVkIGF0ICVzLi4uICAlLipzXG4iCittc2dzdHIgIkZlcm1hdG8gYSAlcy4uLiAlLipzXG4iCisKKyM6IHNlcXVlbmNlci5jOjM5NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21tYW5kICVkIgorbXNnc3RyICJjb21hbmRvICVkIHNjb25vc2NpdXRvIgorCisjOiBzZXF1ZW5jZXIuYzozOTk5Cittc2dpZCAiY291bGQgbm90IHJlYWQgb3JpZy1oZWFkIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIG9yaWctaGVhZCIKKworIzogc2VxdWVuY2VyLmM6NDAwNAorbXNnaWQgImNvdWxkIG5vdCByZWFkICdvbnRvJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSAnb250byciCisKKyM6IHNlcXVlbmNlci5jOjQwMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHVwZGF0ZSBIRUFEIHRvICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhZ2dpb3JuYXJlIGwnSEVBRCBhICVzIgorCisjOiBzZXF1ZW5jZXIuYzo0MTExCittc2dpZCAiY2Fubm90IHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBlc2VndWlyZSBpbCByZWJhc2U6IGNpIHNvbm8gZGVsbGUgbW9kaWZpY2hlIG5vbiBpbiBzdGFnaW5nLiIKKworIzogc2VxdWVuY2VyLmM6NDEyMAorbXNnaWQgImNhbm5vdCBhbWVuZCBub24tZXhpc3RpbmcgY29tbWl0IgorbXNnc3RyICJpbXBvc3NpYmlsZSBtb2RpZmljYXJlIHVuIGNvbW1pdCBpbmVzaXN0ZW50ZSIKKworIzogc2VxdWVuY2VyLmM6NDEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGZpbGU6ICclcyciCittc2dzdHIgImZpbGUgbm9uIHZhbGlkbzogJyVzJyIKKworIzogc2VxdWVuY2VyLmM6NDEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbnRlbnRzOiAnJXMnIgorbXNnc3RyICJjb250ZW51dGkgbm9uIHZhbGlkaTogJyVzJyIKKworIzogc2VxdWVuY2VyLmM6NDEyNworbXNnaWQgIiIKKyJcbiIKKyJZb3UgaGF2ZSB1bmNvbW1pdHRlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLiBQbGVhc2UsIGNvbW1pdCB0aGVtXG4iCisiZmlyc3QgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tY29udGludWUnIGFnYWluLiIKK21zZ3N0ciAiIgorIlxuIgorIkNpIHNvbm8gbW9kaWZpY2hlIGRpIGN1aSBub24gw6ggc3RhdG8gZXNlZ3VpdG8gaWwgY29tbWl0IG5lbCB0dW8gYWxiZXJvXG4iCisiZGkgbGF2b3JvLiBFc2VndWluZSBwcmltYSBpbCBjb21taXQgZSBxdWluZGkgZXNlZ3VpIG51b3ZhbWVudGUgJ2dpdCByZWJhc2VcbiIKKyItLWNvbnRpbnVlJy4iCisKKyM6IHNlcXVlbmNlci5jOjQxNjMgc2VxdWVuY2VyLmM6NDIwMgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZmlsZTogJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgaWwgZmlsZTogJyVzJyIKKworIzogc2VxdWVuY2VyLmM6NDIxNworbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgQ0hFUlJZX1BJQ0tfSEVBRCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmltdW92ZXJlIENIRVJSWV9QSUNLX0hFQUQiCisKKyM6IHNlcXVlbmNlci5jOjQyMjQKK21zZ2lkICJjb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgY29tbWl0IGRlbGxlIG1vZGlmaWNoZSBpbiBzdGFnaW5nLiIKKworIzogc2VxdWVuY2VyLmM6NDMzOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2FuJ3QgY2hlcnJ5LXBpY2sgYSAlcyIKK21zZ3N0ciAiJXM6IGltcG9zc2liaWxlIGVzZWd1aXJlIGlsIGNoZXJyeSBwaWNrIGRpIHVuICVzIgorCisjOiBzZXF1ZW5jZXIuYzo0MzQyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBiYWQgcmV2aXNpb24iCittc2dzdHIgIiVzOiByZXZpc2lvbmUgbm9uIHZhbGlkYSIKKworIzogc2VxdWVuY2VyLmM6NDM3NworbXNnaWQgImNhbid0IHJldmVydCBhcyBpbml0aWFsIGNvbW1pdCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgcmV2ZXJ0IGNvbWUgY29tbWl0IGluaXppYWxlIgorCisjOiBzZXF1ZW5jZXIuYzo0ODQ2Cittc2dpZCAibWFrZV9zY3JpcHQ6IHVuaGFuZGxlZCBvcHRpb25zIgorbXNnc3RyICJtYWtlX3NjcmlwdDogb3B6aW9uaSBub24gZ2VzdGl0ZSIKKworIzogc2VxdWVuY2VyLmM6NDg0OQorbXNnaWQgIm1ha2Vfc2NyaXB0OiBlcnJvciBwcmVwYXJpbmcgcmV2aXNpb25zIgorbXNnc3RyICJtYWtlX3NjcmlwdDogZXJyb3JlIGR1cmFudGUgbGEgcHJlcGFyYXppb25lIGRlbGxlIHJldmlzaW9uaSIKKworIzogc2VxdWVuY2VyLmM6NTA4MyBzZXF1ZW5jZXIuYzo1MTAwCittc2dpZCAibm90aGluZyB0byBkbyIKK21zZ3N0ciAibnVsbGEgZGEgZmFyZSIKKworIzogc2VxdWVuY2VyLmM6NTExOQorbXNnaWQgImNvdWxkIG5vdCBza2lwIHVubmVjZXNzYXJ5IHBpY2sgY29tbWFuZHMiCittc2dzdHIgImltcG9zc2liaWxlIHNhbHRhcmUgaSBjb21hbmRpIHBpY2sgbm9uIG5lY2Vzc2FyaSIKKworIzogc2VxdWVuY2VyLmM6NTIxMworbXNnaWQgInRoZSBzY3JpcHQgd2FzIGFscmVhZHkgcmVhcnJhbmdlZC4iCittc2dzdHIgImxvIHNjcmlwdCDDqCBnacOgIHN0YXRvIHJpb3JkaW5hdG8uIgorCisjOiBzZXR1cC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSBhdCAnJXMnIgorbXNnc3RyICInJXMnIMOoIGFsIGRpIGZ1b3JpIGRlbCByZXBvc2l0b3J5IGluICclcyciCisKKyM6IHNldHVwLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogbm8gc3VjaCBwYXRoIGluIHRoZSB3b3JraW5nIHRyZWUuXG4iCisiVXNlICdnaXQgPGNvbW1hbmQ+IC0tIDxwYXRoPi4uLicgdG8gc3BlY2lmeSBwYXRocyB0aGF0IGRvIG5vdCBleGlzdCBsb2NhbGx5LiIKK21zZ3N0ciAiIgorIiVzOiBwZXJjb3JzbyBub24gZXNpc3RlbnRlIG5lbGwnYWxiZXJvIGRpIGxhdm9yby5cbiIKKyJVc2EgJ2dpdCA8Y29tYW5kbz4gLS0gPHBlcmNvcnNvPi4uLicgcGVyIHNwZWNpZmljYXJlIHBlcmNvcnNpIG5vbiBlc2lzdGVudGkgIgorImxvY2FsbWVudGUuIgorCisjOiBzZXR1cC5jOjE4OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IHVua25vd24gcmV2aXNpb24gb3IgcGF0aCBub3QgaW4gdGhlIHdvcmtpbmcgdHJlZS5cbiIKKyJVc2UgJy0tJyB0byBzZXBhcmF0ZSBwYXRocyBmcm9tIHJldmlzaW9ucywgbGlrZSB0aGlzOlxuIgorIidnaXQgPGNvbW1hbmQ+IFs8cmV2aXNpb24+Li4uXSAtLSBbPGZpbGU+Li4uXSciCittc2dzdHIgIiIKKyJhcmdvbWVudG8gJyVzJyBhbWJpZ3VvOiByZXZpc2lvbmUgc2Nvbm9zY2l1dGEgbyBwZXJjb3JzbyBub24gbmVsbCdhbGJlcm8gZGkgIgorImxhdm9yby5cbiIKKyJVc2EgJy0tJyBwZXIgc2VwYXJhcmUgaSBwZXJjb3JzaSBkYWxsZSByZXZpc2lvbmksIGNvbWUgc2VndWU6XG4iCisiJ2dpdCA8Y29tYW5kbz4gWzxyZXZpc2lvbmU+Li4uXSAtLSBbPGZpbGU+Li4uXSciCisKKyM6IHNldHVwLmM6MjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiAnJXMnIG11c3QgY29tZSBiZWZvcmUgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIiIKKyJsJ29wemlvbmUgJyVzJyBkZXZlIGVzc2VyZSBzcGVjaWZpY2F0YSBwcmltYSBkZWdsaSBhcmdvbWVudGkgY2hlIG5vbiAiCisiY29zdGl0dWlzY29ubyB1bidvcHppb25lIgorCisjOiBzZXR1cC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IGJvdGggcmV2aXNpb24gYW5kIGZpbGVuYW1lXG4iCisiVXNlICctLScgdG8gc2VwYXJhdGUgcGF0aHMgZnJvbSByZXZpc2lvbnMsIGxpa2UgdGhpczpcbiIKKyInZ2l0IDxjb21tYW5kPiBbPHJldmlzaW9uPi4uLl0gLS0gWzxmaWxlPi4uLl0nIgorbXNnc3RyICIiCisiYXJnb21lbnRvICclcycgYW1iaWd1bzogw6ggc2lhIHVuYSByZXZpc2lvbmUgc2lhIHVuIG5vbWUgZmlsZVxuIgorIlVzYSAnLS0nIHBlciBzZXBhcmFyZSBpIHBlcmNvcnNpIGRhbGxlIHJldmlzaW9uaSwgY29tZSBzZWd1ZTpcbiIKKyInZ2l0IDxjb21hbmRvPiBbPHJldmlzaW9uZT4uLi5dIC0tIFs8ZmlsZT4uLi5dJyIKKworIzogc2V0dXAuYzo0MDkKK21zZ2lkICJ1bmFibGUgdG8gc2V0IHVwIHdvcmsgdHJlZSB1c2luZyBpbnZhbGlkIGNvbmZpZyIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIHByZXBhcmFyZSBsJ2FsYmVybyBkaSBsYXZvcm8gdXNhbmRvIHVuYSBjb25maWd1cmF6aW9uZSBub24gdmFsaWRhIgorCisjOiBzZXR1cC5jOjQxMworbXNnaWQgInRoaXMgb3BlcmF0aW9uIG11c3QgYmUgcnVuIGluIGEgd29yayB0cmVlIgorbXNnc3RyICJxdWVzdCdvcGVyYXppb25lIGRldmUgZXNzZXJlIGVzZWd1aXRhIGluIHVuIGFsYmVybyBkaSBsYXZvcm8iCisKKyM6IHNldHVwLmM6NTU5CisjLCBjLWZvcm1hdAorbXNnaWQgIkV4cGVjdGVkIGdpdCByZXBvIHZlcnNpb24gPD0gJWQsIGZvdW5kICVkIgorbXNnc3RyICJBdHRlc2EgdmVyc2lvbmUgcmVwb3NpdG9yeSBHaXQgPD0gJWQsIHRyb3ZhdGEgJWQiCisKKyM6IHNldHVwLmM6NTY3Cittc2dpZCAidW5rbm93biByZXBvc2l0b3J5IGV4dGVuc2lvbnMgZm91bmQ6IgorbXNnc3RyICJ0cm92YXRlIGVzdGVuc2lvbmkgcmVwb3NpdG9yeSBzY29ub3NjaXV0ZToiCisKKyM6IHNldHVwLmM6NTg2CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIG9wZW5pbmcgJyVzJyIKK21zZ3N0ciAiZXJyb3JlIGR1cmFudGUgbCdhcGVydHVyYSBkaSAnJXMnIgorCisjOiBzZXR1cC5jOjU4OAorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gbGFyZ2UgdG8gYmUgYSAuZ2l0IGZpbGU6ICclcyciCittc2dzdHIgIiclcycgdHJvcHBvIGdyYW5kZSBwZXIgZXNzZXJlIHVuIGZpbGUgLmdpdCIKKworIzogc2V0dXAuYzo1OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyIKK21zZ3N0ciAiZXJyb3JlIGR1cmFudGUgbGEgbGV0dHVyYSBkaSAlcyIKKworIzogc2V0dXAuYzo1OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBnaXRmaWxlIGZvcm1hdDogJXMiCittc2dzdHIgImZvcm1hdG8gZmlsZSBHaXQgbm9uIHZhbGlkbzogJXMiCisKKyM6IHNldHVwLmM6NTk0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhdGggaW4gZ2l0ZmlsZTogJXMiCittc2dzdHIgIm5lc3N1biBwZXJjb3JzbyBwcmVzZW50ZSBuZWwgZmlsZSBHaXQ6ICVzIgorCisjOiBzZXR1cC5jOjU5NgorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeTogJXMiCittc2dzdHIgIiVzIG5vbiDDqCB1biByZXBvc2l0b3J5IEdpdCIKKworIzogc2V0dXAuYzo2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyQlcycgdG9vIGJpZyIKK21zZ3N0ciAiJyQlcycgw6ggdHJvcHBvIGdyYW5kZSIKKworIzogc2V0dXAuYzo3MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnk6ICclcyciCittc2dzdHIgIiclcycgbm9uIMOoIHVuIHJlcG9zaXRvcnkgR2l0IgorCisjOiBzZXR1cC5jOjczOCBzZXR1cC5jOjc0MCBzZXR1cC5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY2hkaXIgdG8gJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbW9kaWZpY2FyZSBsYSBkaXJlY3RvcnkgY29ycmVudGUgaW4gJyVzJyIKKworIzogc2V0dXAuYzo3NDMgc2V0dXAuYzo3OTkgc2V0dXAuYzo4MDkgc2V0dXAuYzo4NDggc2V0dXAuYzo4NTYKK21zZ2lkICJjYW5ub3QgY29tZSBiYWNrIHRvIGN3ZCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgdG9ybmFyZSBhbGxhIGRpcmVjdG9yeSBkaSBsYXZvcm8gY29ycmVudGUiCisKKyM6IHNldHVwLmM6ODcwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0ICclKnMlcyVzJyIKK21zZ3N0ciAic3RhdCBkaSAnJSpzJXMlcycgbm9uIHJpdXNjaXRvIgorCisjOiBzZXR1cC5jOjExMDgKK21zZ2lkICJVbmFibGUgdG8gcmVhZCBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICJJbXBvc3NpYmlsZSBsZWdnZXJlIGxhIGRpcmVjdG9yeSBkaSBsYXZvcm8gY29ycmVudGUiCisKKyM6IHNldHVwLmM6MTExNyBzZXR1cC5jOjExMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNoYW5nZSB0byAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlbnRyYXJlIGluICclcyciCisKKyM6IHNldHVwLmM6MTEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeSAob3IgYW55IG9mIHRoZSBwYXJlbnQgZGlyZWN0b3JpZXMpOiAlcyIKK21zZ3N0ciAiJXMgbm9uIMOoIHVuIHJlcG9zaXRvcnkgR2l0IChuw6kgbG8gw6ggYWxjdW5hIGRlbGxlIGRpcmVjdG9yeSBnZW5pdHJpY2kpIgorCisjOiBzZXR1cC5jOjExMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgcGFyZW50IHVwIHRvIG1vdW50IHBvaW50ICVzKVxuIgorIlN0b3BwaW5nIGF0IGZpbGVzeXN0ZW0gYm91bmRhcnkgKEdJVF9ESVNDT1ZFUllfQUNST1NTX0ZJTEVTWVNURU0gbm90IHNldCkuIgorbXNnc3RyICIiCisibm9uIMOoIHVuIHJlcG9zaXRvcnkgR2l0IChuw6kgbG8gw6ggYWxjdW4gZ2VuaXRvcmUgZmlubyBhbCBwdW50byBkaSBtb3VudCAlcylcbiIKKyJNaSBmZXJtbyBhbCBsaW1pdGUgZGVsIGZpbGVzeXN0ZW0gKGwnb3B6aW9uZSBHSVRfRElTQ09WRVJZX0FDUk9TU19GSUxFU1lTVEVNICIKKyJub24gw6ggaW1wb3N0YXRhKS4iCisKKyM6IHNldHVwLmM6MTI0NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicHJvYmxlbSB3aXRoIGNvcmUuc2hhcmVkUmVwb3NpdG9yeSBmaWxlbW9kZSB2YWx1ZSAoMCUuM28pLlxuIgorIlRoZSBvd25lciBvZiBmaWxlcyBtdXN0IGFsd2F5cyBoYXZlIHJlYWQgYW5kIHdyaXRlIHBlcm1pc3Npb25zLiIKK21zZ3N0ciAiIgorInNpIMOoIHZlcmlmaWNhdG8gdW4gcHJvYmxlbWEgY29uIGlsIHZhbG9yZSBtb2RvIGZpbGUgZGkgY29yZS5zaGFyZWRSZXBvc2l0b3J5ICIKKyIoMCUuM28pLlxuIgorIklsIHByb3ByaWV0YXJpbyBkZWkgZmlsZSBkZXZlIGF2ZXJlIHNlbXByZSBpIHBlcm1lc3NpIGRpIGxldHR1cmEgZSBzY3JpdHR1cmEuIgorCisjOiBzZXR1cC5jOjEyODkKK21zZ2lkICJvcGVuIC9kZXYvbnVsbCBvciBkdXAgZmFpbGVkIgorbXNnc3RyICJhcGVydHVyYSBkaSAvZGV2L251bGwgbyBkdXAgbm9uIHJpdXNjaXRhIgorCisjOiBzZXR1cC5jOjEzMDQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiZm9yayBub24gcml1c2NpdGEiCisKKyM6IHNldHVwLmM6MTMwOQorbXNnaWQgInNldHNpZCBmYWlsZWQiCittc2dzdHIgInNldHNpZCBub24gcml1c2NpdGEiCisKKyM6IHNoYTEtZmlsZS5jOjQ1MgorIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgZGlyZWN0b3J5ICVzIGRvZXMgbm90IGV4aXN0OyBjaGVjayAuZ2l0L29iamVjdHMvaW5mby9hbHRlcm5hdGVzIgorbXNnc3RyICIiCisibGEgZGlyZWN0b3J5IG9nZ2V0dGkgJXMgbm9uIGVzaXN0ZTsgY29udHJvbGxhIC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiCisKKyM6IHNoYTEtZmlsZS5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbm9ybWFsaXplIGFsdGVybmF0ZSBvYmplY3QgcGF0aDogJXMiCittc2dzdHIgImltcG9zc2liaWxlIG5vcm1hbGl6emFyZSBpbCBwZXJjb3JzbyBhbHRlcm5hdGl2byBvZ2dldHRvOiAlcyIKKworIzogc2hhMS1maWxlLmM6NTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpZ25vcmluZyBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlcywgbmVzdGluZyB0b28gZGVlcCIKK21zZ3N0ciAiIgorIiVzOiBpZ25vcm8gZ2xpIGFyY2hpdmkgb2dnZXR0byBhbHRlcm5hdGl2aSwgbGEgbmlkaWZpY2F6aW9uZSDDqCB0cm9wcG8gIgorInByb2ZvbmRhIgorCisjOiBzaGExLWZpbGUuYzo1ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG5vcm1hbGl6ZSBvYmplY3QgZGlyZWN0b3J5OiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbm9ybWFsaXp6YXJlIGxhIGRpcmVjdG9yeSBvZ2dldHRpOiAlcyIKKworIzogc2hhMS1maWxlLmM6NjI1Cittc2dpZCAidW5hYmxlIHRvIGZkb3BlbiBhbHRlcm5hdGVzIGxvY2tmaWxlIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBmZG9wZW4gc3VsIGZpbGUgZGkgbG9jayBhbHRlcm5hdGVzIgorCisjOiBzaGExLWZpbGUuYzo2NDMKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBhbHRlcm5hdGVzIGZpbGUiCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaWwgZmlsZSBhbHRlcm5hdGVzIgorCisjOiBzaGExLWZpbGUuYzo2NTAKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBuZXcgYWx0ZXJuYXRlcyBmaWxlIGludG8gcGxhY2UiCittc2dzdHIgImltcG9zc2liaWxlIHNwb3N0YXJlIGlsIG51b3ZvIGZpbGUgYWx0ZXJuYXRlcyBuZWxsYSBwb3NpemlvbmUgY29ycmV0dGEiCisKKyM6IHNoYTEtZmlsZS5jOjY4NQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgImlsIHBlcmNvcnNvICclcycgbm9uIGVzaXN0ZSIKKworIzogc2hhMS1maWxlLmM6NzExCisjLCBjLWZvcm1hdAorbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgYXMgYSBsaW5rZWQgY2hlY2tvdXQgaXMgbm90IHN1cHBvcnRlZCB5ZXQuIgorbXNnc3RyICIiCisibCdhZ2dpdW50YSBkZWwgcmVwb3NpdG9yeSBkaSByaWZlcmltZW50byAnJXMnIGNvbWUgY2hlY2tvdXQgY29sbGVnYXRvIG5vbiDDqCAiCisiYW5jb3JhIHN1cHBvcnRhdGEuIgorCisjOiBzaGExLWZpbGUuYzo3MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBpcyBub3QgYSBsb2NhbCByZXBvc2l0b3J5LiIKK21zZ3N0ciAiaWwgcmVwb3NpdG9yeSBkaSByaWZlcmltZW50byAnJXMnIG5vbiDDqCB1biByZXBvc2l0b3J5IGxvY2FsZS4iCisKKyM6IHNoYTEtZmlsZS5jOjcyMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIHNoYWxsb3ciCittc2dzdHIgImlsIHJlcG9zaXRvcnkgZGkgcmlmZXJpbWVudG8gJyVzJyDDqCBzaGFsbG93IgorCisjOiBzaGExLWZpbGUuYzo3MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBpcyBncmFmdGVkIgorbXNnc3RyICJpbCByZXBvc2l0b3J5IGRpIHJpZmVyaW1lbnRvICclcycgw6ggdW4gZ3JhZnQiCisKKyM6IHNoYTEtZmlsZS5jOjc5MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGxpbmUgd2hpbGUgcGFyc2luZyBhbHRlcm5hdGUgcmVmczogJXMiCittc2dzdHIgInJpZ2Egbm9uIHZhbGlkYSBkdXJhbnRlIGwnYW5hbGlzaSBkZWkgcmlmZXJpbWVudGkgZGVnbGkgYWx0ZXJuYXRpOiAlcyIKKworIzogc2hhMS1maWxlLmM6OTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImF0dGVtcHRpbmcgdG8gbW1hcCAlPFBSSXVNQVg+IG92ZXIgbGltaXQgJTxQUkl1TUFYPiIKK21zZ3N0ciAidGVudG8gZGkgZXNlZ3VpcmUgbW1hcCAlPFBSSXVNQVg+IGFsIGRpIHNvcHJhIGRlbCBsaW1pdGUgJTxQUkl1TUFYPiIKKworIzogc2hhMS1maWxlLmM6OTY0Cittc2dpZCAibW1hcCBmYWlsZWQiCittc2dzdHIgIm1tYXAgbm9uIHJpdXNjaXRhIgorCisjOiBzaGExLWZpbGUuYzoxMTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCBmaWxlICVzIGlzIGVtcHR5IgorbXNnc3RyICJsJ29nZ2V0dG8gJXMgw6ggdnVvdG8iCisKKyM6IHNoYTEtZmlsZS5jOjEyNjMgc2hhMS1maWxlLmM6MjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3JydXB0IGxvb3NlIG9iamVjdCAnJXMnIgorbXNnc3RyICJvZ2dldHRvIHNjaW9sdG8gJyVzJyBjb3Jyb3R0byIKKworIzogc2hhMS1maWxlLmM6MTI2NSBzaGExLWZpbGUuYzoyNDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImdhcmJhZ2UgYXQgZW5kIG9mIGxvb3NlIG9iamVjdCAnJXMnIgorbXNnc3RyICJkYXRpIGludXRpbGl6emFiaWxpIHByZXNlbnRpIGFsbGEgZmluZSBkZWxsJ29nZ2V0dG8gc2Npb2x0byAnJXMnIgorCisjOiBzaGExLWZpbGUuYzoxMzA3Cittc2dpZCAiaW52YWxpZCBvYmplY3QgdHlwZSIKK21zZ3N0ciAidGlwbyBvZ2dldHRvIG5vbiB2YWxpZG8iCisKKyM6IHNoYTEtZmlsZS5jOjEzOTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVucGFjayAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZGVjb21wcmltZXJlIGwnaW50ZXN0YXppb25lICVzIGNvbiAtLWFsbG93LXVua25vd24tdHlwZSIKKworIzogc2hhMS1maWxlLmM6MTM5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdW5wYWNrICVzIGhlYWRlciIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZGVjb21wcmltZXJlIGwnaW50ZXN0YXppb25lICVzIgorCisjOiBzaGExLWZpbGUuYzoxNDAwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBsJ2ludGVzdGF6aW9uZSAlcyBjb24gLS1hbGxvdy11bmtub3duLXR5cGUiCisKKyM6IHNoYTEtZmlsZS5jOjE0MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBsJ2ludGVzdGF6aW9uZSAlcyIKKworIzogc2hhMS1maWxlLmM6MTYyOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvYmplY3QgJXMiCittc2dzdHIgImxldHR1cmEgZGVsbCdvZ2dldHRvICVzIG5vbiByaXVzY2l0YSIKKworIzogc2hhMS1maWxlLmM6MTYzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZXBsYWNlbWVudCAlcyBub3QgZm91bmQgZm9yICVzIgorbXNnc3RyICIlcyBzb3N0aXR1dGl2byBub24gdHJvdmF0byBwZXIgJXMiCisKKyM6IHNoYTEtZmlsZS5jOjE2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9vc2Ugb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCittc2dzdHIgImwnb2dnZXR0byBzY2lvbHRvICVzIChzYWx2YXRvIGluICVzKSDDqCBjb3Jyb3R0byIKKworIzogc2hhMS1maWxlLmM6MTY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrZWQgb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCittc2dzdHIgImwnb2dnZXR0byBhcmNoaXZpYXRvICVzIChzYWx2YXRvIGluICVzKSDDqCBjb3Jyb3R0byIKKworIzogc2hhMS1maWxlLmM6MTc0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgaWwgZmlsZSAlcyIKKworIzogc2hhMS1maWxlLmM6MTc1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IHBlcm1pc3Npb24gdG8gJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgaW1wb3N0YXJlIGkgcGVybWVzc2kgYSAnJXMnIgorCisjOiBzaGExLWZpbGUuYzoxNzYwCittc2dpZCAiZmlsZSB3cml0ZSBlcnJvciIKK21zZ3N0ciAiZXJyb3JlIGRpIHNjcml0dHVyYSBkZWwgZmlsZSIKKworIzogc2hhMS1maWxlLmM6MTc4MAorbXNnaWQgImVycm9yIHdoZW4gY2xvc2luZyBsb29zZSBvYmplY3QgZmlsZSIKK21zZ3N0ciAiZXJyb3JlIGR1cmFudGUgbGEgY2hpdXN1cmEgZGVsIGZpbGUgb2dnZXR0byBzY2lvbHRvIgorCisjOiBzaGExLWZpbGUuYzoxODQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3VmZmljaWVudCBwZXJtaXNzaW9uIGZvciBhZGRpbmcgYW4gb2JqZWN0IHRvIHJlcG9zaXRvcnkgZGF0YWJhc2UgJXMiCittc2dzdHIgIiIKKyJwZXJtZXNzaSBub24gc3VmZmljaWVudGkgcGVyIGwnYWdnaXVudGEgZGkgdW4gb2dnZXR0byBhbCBkYXRhYmFzZSByZXBvc2l0b3J5ICIKKyIlcyIKKworIzogc2hhMS1maWxlLmM6MTg0NworbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGZpbGUiCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSBpbCBmaWxlIHRlbXBvcmFuZW8iCisKKyM6IHNoYTEtZmlsZS5jOjE4NzEKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbG9vc2Ugb2JqZWN0IGZpbGUiCittc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGlsIGZpbGUgb2dnZXR0byBzY2lvbHRvIgorCisjOiBzaGExLWZpbGUuYzoxODc3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWZsYXRlIG5ldyBvYmplY3QgJXMgKCVkKSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY29tcHJpbWVyZSBjb24gZGVmbGF0ZSBpbCBudW92byBvZ2dldHRvICVzICglZCkiCisKKyM6IHNoYTEtZmlsZS5jOjE4ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVmbGF0ZUVuZCBvbiBvYmplY3QgJXMgZmFpbGVkICglZCkiCittc2dzdHIgImRlZmxhdGVFbmQgbm9uIHJpdXNjaXRhIHN1bGwnb2dnZXR0byAlcyAoJWQpIgorCisjOiBzaGExLWZpbGUuYzoxODg1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZ1c2VkIGJ5IHVuc3RhYmxlIG9iamVjdCBzb3VyY2UgZGF0YSBmb3IgJXMiCittc2dzdHIgInNvbm8gY29uZnVzbyBkYWxsJ29yaWdpbmUgZGF0aSBvZ2dldHRvIG5vbiBzdGFiaWxlIHBlciAlcyIKKworIzogc2hhMS1maWxlLmM6MTg5NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjEwNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHV0aW1lKCkgb24gJXMiCittc2dzdHIgInV0aW1lKCkgZGkgJXMgbm9uIHJpdXNjaXRhIgorCisjOiBzaGExLWZpbGUuYzoxOTcyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCBmb3IgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgbCdvZ2dldHRvIHBlciAlcyIKKworIzogc2hhMS1maWxlLmM6MjAxMQorbXNnaWQgImNvcnJ1cHQgY29tbWl0IgorbXNnc3RyICJjb21taXQgY29ycm90dG8iCisKKyM6IHNoYTEtZmlsZS5jOjIwMTkKK21zZ2lkICJjb3JydXB0IHRhZyIKK21zZ3N0ciAidGFnIGNvcnJvdHRvIgorCisjOiBzaGExLWZpbGUuYzoyMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3Igd2hpbGUgaW5kZXhpbmcgJXMiCittc2dzdHIgImVycm9yZSBkaSBsZXR0dXJhIGR1cmFudGUgbCdpbmRpY2l6emF6aW9uZSBkaSAlcyIKKworIzogc2hhMS1maWxlLmM6MjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIHdoaWxlIGluZGV4aW5nICVzIgorbXNnc3RyICJsZXR0dXJhIHRyb3BwbyBicmV2ZSBkdXJhbnRlIGwnaW5kaWNpenphemlvbmUgZGkgJXMiCisKKyM6IHNoYTEtZmlsZS5jOjIxOTUgc2hhMS1maWxlLmM6MjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGluc2VydCBpbnRvIGRhdGFiYXNlIgorbXNnc3RyICIlczogaW5zZXJpbWVudG8gZGVsIHJlY29yZCBuZWwgZGF0YWJhc2Ugbm9uIHJpdXNjaXRvIgorCisjOiBzaGExLWZpbGUuYzoyMjExCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bnN1cHBvcnRlZCBmaWxlIHR5cGUiCittc2dzdHIgIiVzOiB0aXBvIGRpIGZpbGUgbm9uIHN1cHBvcnRhdG8iCisKKyM6IHNoYTEtZmlsZS5jOjIyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgb2JqZWN0IgorbXNnc3RyICIlcyBub24gw6ggdW4gb2dnZXR0byB2YWxpZG8iCisKKyM6IHNoYTEtZmlsZS5jOjIyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgJyVzJyBvYmplY3QiCittc2dzdHIgIiVzIG5vbiDDqCB1biBvZ2dldHRvICclcycgdmFsaWRvIgorCisjOiBzaGExLWZpbGUuYzoyMjY0IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlICVzIgorCisjOiBzaGExLWZpbGUuYzoyNDU0IHNoYTEtZmlsZS5jOjI1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGFzaCBtaXNtYXRjaCBmb3IgJXMgKGV4cGVjdGVkICVzKSIKK21zZ3N0ciAibWFuY2F0YSBjb3JyaXNwb25kZW56YSBwZXIgJXMgKGF0dGVzbyAlcykiCisKKyM6IHNoYTEtZmlsZS5jOjI0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1tYXAgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIG1tYXAgc3UgJXMiCisKKyM6IHNoYTEtZmlsZS5jOjI0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVucGFjayBoZWFkZXIgb2YgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGRlY29tcHJpbWVyZSBsJ2ludGVzdGF6aW9uZSBkaSAlcyIKKworIzogc2hhMS1maWxlLmM6MjQ4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgaGVhZGVyIG9mICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGwnaW50ZXN0YXppb25lIGRpICVzIgorCisjOiBzaGExLWZpbGUuYzoyNTAwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgY29udGVudHMgb2YgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGRlY29tcHJpbWVyZSBpIGNvbnRlbnV0aSBkaSAlcyIKKworIzogc2hhMS1uYW1lLmM6NDg2CisjLCBjLWZvcm1hdAorbXNnaWQgInNob3J0IFNIQTEgJXMgaXMgYW1iaWd1b3VzIgorbXNnc3RyICJsbyBTSEExIGJyZXZlICVzIMOoIGFtYmlndW8iCisKKyM6IHNoYTEtbmFtZS5jOjQ5NworbXNnaWQgIlRoZSBjYW5kaWRhdGVzIGFyZToiCittc2dzdHIgIkkgY2FuZGlkYXRpIHNvbm86IgorCisjOiBzaGExLW5hbWUuYzo3OTYKK21zZ2lkICIiCisiR2l0IG5vcm1hbGx5IG5ldmVyIGNyZWF0ZXMgYSByZWYgdGhhdCBlbmRzIHdpdGggNDAgaGV4IGNoYXJhY3RlcnNcbiIKKyJiZWNhdXNlIGl0IHdpbGwgYmUgaWdub3JlZCB3aGVuIHlvdSBqdXN0IHNwZWNpZnkgNDAtaGV4LiBUaGVzZSByZWZzXG4iCisibWF5IGJlIGNyZWF0ZWQgYnkgbWlzdGFrZS4gRm9yIGV4YW1wbGUsXG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1jICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgorIlxuIgorIndoZXJlIFwiJGJyXCIgaXMgc29tZWhvdyBlbXB0eSBhbmQgYSA0MC1oZXggcmVmIGlzIGNyZWF0ZWQuIFBsZWFzZVxuIgorImV4YW1pbmUgdGhlc2UgcmVmcyBhbmQgbWF5YmUgZGVsZXRlIHRoZW0uIFR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieVxuIgorInJ1bm5pbmcgXCJnaXQgY29uZmlnIGFkdmljZS5vYmplY3ROYW1lV2FybmluZyBmYWxzZVwiIgorbXNnc3RyICIiCisiR2l0IG5vcm1hbG1lbnRlIG5vbiBjcmVhIG1haSB1biByaWZlcmltZW50byBjaGUgdGVybWluYSBjb24gNDBcbiIKKyJjYXJhdHRlcmkgZXNhZGVjaW1hbGkgcGVyY2jDqSBzYXLDoCBpZ25vcmF0byBzZSBzaSBzcGVjaWZpY2Fub1xuIgorInNlbXBsaWNlbWVudGUgNDAgY2FyYXR0ZXJpIGVzYWRlY2ltYWxpLiBRdWVzdGkgcmlmZXJpbWVudGlcbiIKKyJwb3RyZWJiZXJvIGVzc2VyZSBjcmVhdGkgcGVyIGVycm9yZS4gQWQgZXNlbXBpbzpcbiIKKyJcbiIKKyIgIGdpdCBzd2l0Y2ggLWMgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCisiXG4iCisiZG92ZSBcIiRiclwiIMOoIHZ1b3RvIHBlciBxdWFsY2hlIG1vdGl2byBlIHF1aW5kaSB2aWVuZSBjcmVhdG8gdW5cbiIKKyJyaWZlcmltZW50byBjb24gNDAgY2FyYXR0ZXJpIGVzYWRlY2ltYWxpLiBFc2FtaW5hIHRhbGlcbiIKKyJyaWZlcmltZW50aSBlZCBlbGltaW5hbGkgc2UgbmVjZXNzYXJpby4gRGlzYWJpbGl0YSBxdWVzdG9cbiIKKyJtZXNzYWdnaW8gZXNlZ3VlbmRvIFwiZ2l0IGNvbmZpZyBhZHZpY2Uub2JqZWN0TmFtZVdhcm5pbmcgZmFsc2VcIiIKKworIzogc2hhMS1uYW1lLmM6OTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvZyBmb3IgJyUuKnMnIG9ubHkgZ29lcyBiYWNrIHRvICVzIgorbXNnc3RyICJpbCBsb2cgcGVyICclLipzJyDDqCBkaXNwb25pYmlsZSBzb2xvIGZpbm8gYWwgJXMiCisKKyM6IHNoYTEtbmFtZS5jOjkyNAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2cgZm9yICclLipzJyBvbmx5IGhhcyAlZCBlbnRyaWVzIgorbXNnc3RyICJpbCBsb2cgcGVyICclLipzJyBoYSBzb2xvICVkIHZvY2kiCisKKyM6IHNoYTEtbmFtZS5jOjE2ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGV4aXN0cyBvbiBkaXNrLCBidXQgbm90IGluICclLipzJyIKK21zZ3N0ciAiaWwgcGVyY29yc28gJyVzJyBlc2lzdGUgc3UgZGlzY28sIG1hIG5vbiBpbiAnJS4qcyciCisKKyM6IHNoYTEtbmFtZS5jOjE2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBleGlzdHMsIGJ1dCBub3QgJyVzJ1xuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnJS4qczolcycgYWthICclLipzOi4vJXMnPyIKK21zZ3N0ciAiIgorImlsIHBlcmNvcnNvICclcycgZXNpc3RlLCBtYSBub24gJyVzJ1xuIgorInN1Z2dlcmltZW50bzogZm9yc2UgaW50ZW5kZXZpICclLipzOiVzJyBvc3NpYSAnJS4qczouLyVzJz8iCisKKyM6IHNoYTEtbmFtZS5jOjE3MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGV4aXN0IGluICclLipzJyIKK21zZ3N0ciAiaWwgcGVyY29yc28gJyVzJyBub24gZXNpc3RlIGluICclLipzJyIKKworIzogc2hhMS1uYW1lLmM6MTczMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGlzIGluIHRoZSBpbmRleCwgYnV0IG5vdCBhdCBzdGFnZSAlZFxuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnOiVkOiVzJz8iCittc2dzdHIgIiIKKyJpbCBwZXJjb3JzbyAnJXMnIMOoIG5lbGwnaW5kaWNlLCBtYSBub24gbmVsIHBhc3NvICVkXG4iCisic3VnZ2VyaW1lbnRvOiBGb3JzZSBpbnRlbmRldmkgJzolZDolcyc/IgorCisjOiBzaGExLW5hbWUuYzoxNzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXRoICclcycgaXMgaW4gdGhlIGluZGV4LCBidXQgbm90ICclcydcbiIKKyJoaW50OiBEaWQgeW91IG1lYW4gJzolZDolcycgYWthICc6JWQ6Li8lcyc/IgorbXNnc3RyICIiCisiaWwgcGVyY29yc28gJyVzJyDDqCBuZWxsJ2luZGljZSwgbWEgbm9uICclcydcbiIKKyJzdWdnZXJpbWVudG86IEZvcnNlIGludGVuZGV2aSAnOiVkOiVzJyBvc3NpYSAnOiVkOi4vJXMnPyIKKworIzogc2hhMS1uYW1lLmM6MTc1NgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gdGhlIGluZGV4IgorbXNnc3RyICJpbCBwZXJjb3JzbyAnJXMnIGVzaXN0ZSBzdSBkaXNjbywgbWEgbm9uIG5lbGwnaW5kaWNlIgorCisjOiBzaGExLW5hbWUuYzoxNzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCAobmVpdGhlciBvbiBkaXNrIG5vciBpbiB0aGUgaW5kZXgpIgorbXNnc3RyICJpbCBwZXJjb3JzbyAnJXMnIG5vbiBlc2lzdGUgKG7DqSBzdSBkaXNjbyBuw6kgbmVsbCdpbmRpY2UpIgorCisjOiBzaGExLW5hbWUuYzoxNzcxCittc2dpZCAicmVsYXRpdmUgcGF0aCBzeW50YXggY2FuJ3QgYmUgdXNlZCBvdXRzaWRlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiIgorImxhIHNpbnRhc3NpIHBlciBpIHBlcmNvcnNpIHJlbGF0aXZpIG5vbiBwdcOyIGVzc2VyZSB1c2F0YSBhbCBkaSBmdW9yaSAiCisiZGVsbCdhbGJlcm8gZGkgbGF2b3JvIgorCisjOiBzaGExLW5hbWUuYzoxOTA5CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgb2JqZWN0IG5hbWUgJyUuKnMnLiIKK21zZ3N0ciAibm9tZSBvZ2dldHRvIG5vbiB2YWxpZG86ICclLipzJy4iCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBnaWJpYnl0ZQorIzogc3RyYnVmLmM6ODM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEdpQiIKK21zZ3N0ciAiJXUuJTIuMnUgR2lCIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggZ2liaWJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgR2lCL3MiCittc2dzdHIgIiV1LiUyLjJ1IEdpQi9zIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggbWViaWJ5dGUKKyM6IHN0cmJ1Zi5jOjg0NworIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBNaUIiCittc2dzdHIgIiV1LiUyLjJ1IE1pQiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IG1lYmlieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IE1pQi9zIgorbXNnc3RyICIldS4lMi4ydSBNaUIvcyIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGtpYmlieXRlCisjOiBzdHJidWYuYzo4NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgS2lCIgorbXNnc3RyICIldS4lMi4ydSBLaUIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBraWJpYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjg1OAorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBLaUIvcyIKK21zZ3N0ciAiJXUuJTIuMnUgS2lCL3MiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBieXRlCisjOiBzdHJidWYuYzo4NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUgYnl0ZSIKK21zZ2lkX3BsdXJhbCAiJXUgYnl0ZXMiCittc2dzdHJbMF0gIiV1IGJ5dGUiCittc2dzdHJbMV0gIiV1IGJ5dGUiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1IGJ5dGUvcyIKK21zZ2lkX3BsdXJhbCAiJXUgYnl0ZXMvcyIKK21zZ3N0clswXSAiJXUgYnl0ZS9zIgorbXNnc3RyWzFdICIldSBieXRlL3MiCisKKyM6IHN0cmJ1Zi5jOjExNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGVkaXQgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbW9kaWZpY2FyZSAnJXMnIgorCisjOiBzdWJtb2R1bGUuYzoxMTQgc3VibW9kdWxlLmM6MTQzCittc2dpZCAiQ2Fubm90IGNoYW5nZSB1bm1lcmdlZCAuZ2l0bW9kdWxlcywgcmVzb2x2ZSBtZXJnZSBjb25mbGljdHMgZmlyc3QiCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBtb2RpZmljYXJlIGlsIGZpbGUgLmdpdG1vZHVsZXMgbm9uIHNvdHRvcG9zdG8gYSBtZXJnZSwgcmlzb2x2aSAiCisicHJpbWEgaSBjb25mbGl0dGkgZGkgbWVyZ2UiCisKKyM6IHN1Ym1vZHVsZS5jOjExOCBzdWJtb2R1bGUuYzoxNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGZpbmQgc2VjdGlvbiBpbiAuZ2l0bW9kdWxlcyB3aGVyZSBwYXRoPSVzIgorbXNnc3RyICJJbXBvc3NpYmlsZSB0cm92YXJlIHVuYSBzZXppb25lIGluIC5naXRtb2R1bGVzIGRvdmUgcGF0aD0lcyIKKworIzogc3VibW9kdWxlLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgLmdpdG1vZHVsZXMgZW50cnkgZm9yICVzIgorbXNnc3RyICJJbXBvc3NpYmlsZSByaW11b3ZlcmUgbGEgdm9jZSAuZ2l0bW9kdWxlcyBwZXIgJXMiCisKKyM6IHN1Ym1vZHVsZS5jOjE2NQorbXNnaWQgInN0YWdpbmcgdXBkYXRlZCAuZ2l0bW9kdWxlcyBmYWlsZWQiCittc2dzdHIgInN0YWdpbmcgZGVsIGZpbGUgLmdpdG1vZHVsZXMgYWdnaW9ybmF0byBub24gcml1c2NpdG8iCisKKyM6IHN1Ym1vZHVsZS5jOjMyNworIywgYy1mb3JtYXQKK21zZ2lkICJpbiB1bnBvcHVsYXRlZCBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAibmVsIHNvdHRvbW9kdWxvIG5vbiBwb3BvbGF0byAnJXMnIgorCisjOiBzdWJtb2R1bGUuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGF0aHNwZWMgJyVzJyBpcyBpbiBzdWJtb2R1bGUgJyUuKnMnIgorbXNnc3RyICJMbyBzcGVjaWZpY2F0b3JlIHBlcmNvcnNvICclcycgw6ggbmVsIHNvdHRvbW9kdWxvICclLipzJyIKKworIzogc3VibW9kdWxlLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLWlnbm9yZS1zdWJtb2R1bGVzIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiYXJnb21lbnRvIC0taWdub3JlLXN1Ym1vZHVsZXMgZXJyYXRvOiAlcyIKKworIzogc3VibW9kdWxlLmM6ODE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTdWJtb2R1bGUgaW4gY29tbWl0ICVzIGF0IHBhdGg6ICclcycgY29sbGlkZXMgd2l0aCBhIHN1Ym1vZHVsZSBuYW1lZCB0aGUgIgorInNhbWUuIFNraXBwaW5nIGl0LiIKK21zZ3N0ciAiIgorIklsIHNvdHRvbW9kdWxvIG5lbCBjb21taXQgJXMgZSBuZWwgcGVyY29yc28gJyVzJyBjb2xsaWRlIGNvbiB1biBzb3R0b21vZHVsbyAiCisiY29uIGxvIHN0ZXNzbyBub21lLiBMbyBzYWx0by4iCisKKyM6IHN1Ym1vZHVsZS5jOjkxMAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJtb2R1bGUgZW50cnkgJyVzJyAoJXMpIGlzIGEgJXMsIG5vdCBhIGNvbW1pdCIKK21zZ3N0ciAibGEgdm9jZSBzb3R0b21vZHVsbyAnJXMnICglcykgw6ggdW4gJXMsIG5vbiB1biBjb21taXQiCisKKyM6IHN1Ym1vZHVsZS5jOjk5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ291bGQgbm90IHJ1biAnZ2l0IHJldi1saXN0IDxjb21taXRzPiAtLW5vdCAtLXJlbW90ZXMgLW4gMScgY29tbWFuZCBpbiAiCisic3VibW9kdWxlICVzIgorbXNnc3RyICIiCisiSW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgY29tYW5kbyAnZ2l0IHJldi1saXN0IDxjb21taXQ+IC0tbm90IC0tcmVtb3RlcyAtbiAxJyAiCisibmVsIHNvdHRvbW9kdWxvICVzIgorCisjOiBzdWJtb2R1bGUuYzoxMTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInByb2Nlc3MgZm9yIHN1Ym1vZHVsZSAnJXMnIGZhaWxlZCIKK21zZ3N0ciAiaWwgcHJvY2Vzc28gcGVyIGlsIHNvdHRvbW9kdWxvICclcycgbm9uIMOoIHVzY2l0byBjb24gc3VjY2Vzc28iCisKKyM6IHN1Ym1vZHVsZS5jOjExNDcgYnVpbHRpbi9icmFuY2guYzo2ODAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwNDUKK21zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSBIRUFEIGFzIGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgcmlzb2x2ZXJlIEhFQUQgY29tZSByaWZlcmltZW50byB2YWxpZG8uIgorCisjOiBzdWJtb2R1bGUuYzoxMTU4CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1c2hpbmcgc3VibW9kdWxlICclcydcbiIKK21zZ3N0ciAiUHVzaCBkZWwgc290dG9tb2R1bG8gJyVzJyBpbiBjb3Jzb1xuIgorCisjOiBzdWJtb2R1bGUuYzoxMTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBwdXNoIHN1Ym1vZHVsZSAnJXMnXG4iCittc2dzdHIgIkltcG9zc2liaWxlIGVzZWd1aXJlIGlsIHB1c2ggZGVsIHNvdHRvbW9kdWxvICclcydcbiIKKworIzogc3VibW9kdWxlLmM6MTQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJGZXRjaGluZyBzdWJtb2R1bGUgJXMlc1xuIgorbXNnc3RyICJSZWN1cGVybyBkZWwgc290dG9tb2R1bG8gJXMlcyBpbiBjb3Jzb1xuIgorCisjOiBzdWJtb2R1bGUuYzoxNDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBhY2Nlc3Mgc3VibW9kdWxlICclcydcbiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgYWNjZWRlcmUgYWwgc290dG9tb2R1bG8gJyVzJ1xuIgorCisjOiBzdWJtb2R1bGUuYzoxNjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFcnJvcnMgZHVyaW5nIHN1Ym1vZHVsZSBmZXRjaDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIkVycm9yZSBkdXJhbnRlIGlsIHJlY3VwZXJvIGRlbCBzb3R0b21vZHVsbzpcbiIKKyIlcyIKKworIzogc3VibW9kdWxlLmM6MTY2MgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCByZWNvZ25pemVkIGFzIGEgZ2l0IHJlcG9zaXRvcnkiCittc2dzdHIgIiclcycgbm9uIHJpY29ub3NjaXV0byBjb21lIHJlcG9zaXRvcnkgR2l0IgorCisjOiBzdWJtb2R1bGUuYzoxNjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBydW4gJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgaW4gc3VibW9kdWxlICVzIgorbXNnc3RyICJJbXBvc3NpYmlsZSBlc2VndWlyZSAnZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbj0yJyBuZWwgc290dG9tb2R1bG8gJXMiCisKKyM6IHN1Ym1vZHVsZS5jOjE3MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgZmFpbGVkIGluIHN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiIgorIkVzZWN1emlvbmUgZGkgJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49Micgbm9uIHJpdXNjaXRhIG5lbCBzb3R0b21vZHVsbyAlcyIKKworIzogc3VibW9kdWxlLmM6MTgwMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgJ2dpdCBzdGF0dXMnIGluIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhdnZpYXJlICdnaXQgc3RhdHVzJyBuZWwgc290dG9tb2R1bG8gJyVzJyIKKworIzogc3VibW9kdWxlLmM6MTgxMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcnVuICdnaXQgc3RhdHVzJyBpbiBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgJ2dpdCBzdGF0dXMnIG5lbCBzb3R0b21vZHVsbyAnJXMnIgorCisjOiBzdWJtb2R1bGUuYzoxODI4CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCB1bnNldCBjb3JlLndvcmt0cmVlIHNldHRpbmcgaW4gc3VibW9kdWxlICclcyciCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBhbm51bGxhcmUgbCdpbXBvc3RhemlvbmUgZGVsbCdvcHppb25lIGNvcmUud29ya3RyZWUgbmVsICIKKyJzb3R0b21vZHVsbyAnJXMnIgorCisjOiBzdWJtb2R1bGUuYzoxODU1IHN1Ym1vZHVsZS5jOjIxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgbCdhemlvbmUgcmljb3JzaXZhbWVudGUgbmVsIHNvdHRvbW9kdWxvICclcyciCisKKyM6IHN1Ym1vZHVsZS5jOjE4NzYKK21zZ2lkICJjb3VsZCBub3QgcmVzZXQgc3VibW9kdWxlIGluZGV4IgorbXNnc3RyICJpbXBvc3NpYmlsZSByaXByaXN0aW5hcmUgbCdpbmRpY2UgZGVsIHNvdHRvbW9kdWxvIgorCisjOiBzdWJtb2R1bGUuYzoxOTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInN1Ym1vZHVsZSAnJXMnIGhhcyBkaXJ0eSBpbmRleCIKK21zZ3N0ciAiaWwgc290dG9tb2R1bG8gJyVzJyBoYSBsJ2luZGljZSBzcG9yY28iCisKKyM6IHN1Ym1vZHVsZS5jOjE5NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlICclcycgY291bGQgbm90IGJlIHVwZGF0ZWQuIgorbXNnc3RyICJJbXBvc3NpYmlsZSBhZ2dpb3JuYXJlIGlsIHNvdHRvbW9kdWxvICclcycuIgorCisjOiBzdWJtb2R1bGUuYzoyMDM4CisjLCBjLWZvcm1hdAorbXNnaWQgInN1Ym1vZHVsZSBnaXQgZGlyICclcycgaXMgaW5zaWRlIGdpdCBkaXIgJyUuKnMnIgorbXNnc3RyICIiCisibGEgZGlyZWN0b3J5IEdpdCBkZWwgc290dG9tb2R1bG8gJyVzJyDDqCBhbGwnaW50ZXJubyBkZWxsYSBkaXJlY3RvcnkgR2l0ICIKKyInJS4qcyciCisKKyM6IHN1Ym1vZHVsZS5jOjIwNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJlbG9jYXRlX2dpdGRpciBmb3Igc3VibW9kdWxlICclcycgd2l0aCBtb3JlIHRoYW4gb25lIHdvcmt0cmVlIG5vdCBzdXBwb3J0ZWQiCittc2dzdHIgIiIKKyJyZWxvY2F0ZV9naXRkaXIgbm9uIMOoIHN1cHBvcnRhdGEgcGVyIGlsIHNvdHRvbW9kdWxvICclcycgY29uIHBpw7kgZGkgdW4gIgorImFsYmVybyBkaSBsYXZvcm8iCisKKyM6IHN1Ym1vZHVsZS5jOjIwNzEgc3VibW9kdWxlLmM6MjEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgbG9va3VwIG5hbWUgZm9yIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaWNlcmNhcmUgaWwgbm9tZSBwZXIgaWwgc290dG9tb2R1bG8gJyVzJyIKKworIzogc3VibW9kdWxlLmM6MjA3NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBtb3ZlICclcycgaW50byBhbiBleGlzdGluZyBnaXQgZGlyIgorbXNnc3RyICJtaSByaWZpdXRvIGRpIHNwb3N0YXJlICclcycgaW4gdW5hIGRpcmVjdG9yeSBHaXQgZXNpc3RlbnRlIgorCisjOiBzdWJtb2R1bGUuYzoyMDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNaWdyYXRpbmcgZ2l0IGRpcmVjdG9yeSBvZiAnJXMlcycgZnJvbVxuIgorIiclcycgdG9cbiIKKyInJXMnXG4iCittc2dzdHIgIiIKKyJTdG8gbWlncmFuZG8gbGEgZGlyZWN0b3J5IEdpdCBkaSAnJXMlcycgZGFcbiIKKyInJXMnIGFcbiIKKyInJXMnXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjIyMDkKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgbHMtZmlsZXMgaW4gLi4iCittc2dzdHIgImltcG9zc2liaWxlIGF2dmlhcmUgbHMtZmlsZXMgaW4gLi4iCisKKyM6IHN1Ym1vZHVsZS5jOjIyNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibHMtdHJlZSByZXR1cm5lZCB1bmV4cGVjdGVkIHJldHVybiBjb2RlICVkIgorbXNnc3RyICJscy10cmVlIGhhIHJlc3RpdHVpdG8gaWwgdmFsb3JlIGRpIHJpdG9ybm8gaW5hdHRlc28gJWQiCisKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3Jpbmcgc3VzcGljaW91cyBzdWJtb2R1bGUgbmFtZTogJXMiCittc2dzdHIgImlnbm9ybyB1biBub21lIHNvdHRvbW9kdWxvIHNvc3BldHRvOiAlcyIKKworIzogc3VibW9kdWxlLWNvbmZpZy5jOjMwMworbXNnaWQgIm5lZ2F0aXZlIHZhbHVlcyBub3QgYWxsb3dlZCBmb3Igc3VibW9kdWxlLmZldGNoam9icyIKK21zZ3N0ciAiaSB2YWxvcmkgbmVnYXRpdmkgbm9uIHNvbm8gY29uc2VudGl0aSBwZXIgc3VibW9kdWxlLmZldGNoam9icyIKKworIzogc3VibW9kdWxlLWNvbmZpZy5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAnJXMnIHdoaWNoIG1heSBiZSBpbnRlcnByZXRlZCBhcyBhIGNvbW1hbmQtbGluZSBvcHRpb246ICVzIgorbXNnc3RyICIiCisiaWdub3JvICclcycgY2hlIHBvdHJlYmJlIGVzc2VyZSBpbnRlcnByZXRhdG8gY29tZSBhcmdvbWVudG8gZGVsbGEgcmlnYSBkaSAiCisiY29tYW5kbzogJXMiCisKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgJXMiCittc2dzdHIgInZhbG9yZSBub24gdmFsaWRvIHBlciAlcyIKKworIzogc3VibW9kdWxlLWNvbmZpZy5jOjc2NQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgdXBkYXRlIC5naXRtb2R1bGVzIGVudHJ5ICVzIgorbXNnc3RyICJJbXBvc3NpYmlsZSBhZ2dpb3JuYXJlIGxhIHZvY2UgLmdpdG1vZHVsZXMgJXMiCisKKyM6IHRyYWlsZXIuYzoyMzgKKyMsIGMtZm9ybWF0Cittc2dpZCAicnVubmluZyB0cmFpbGVyIGNvbW1hbmQgJyVzJyBmYWlsZWQiCittc2dzdHIgImVzZWN1emlvbmUgZGVsIGNvbWFuZG8gZmluYWxlICclcycgbm9uIHJpdXNjaXRhIgorCisjOiB0cmFpbGVyLmM6NDg1IHRyYWlsZXIuYzo0OTAgdHJhaWxlci5jOjQ5NSB0cmFpbGVyLmM6NTQ5IHRyYWlsZXIuYzo1NTMKKyM6IHRyYWlsZXIuYzo1NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB2YWx1ZSAnJXMnIGZvciBrZXkgJyVzJyIKK21zZ3N0ciAidmFsb3JlICclcycgc2Nvbm9zY2l1dG8gcGVyIGxhIGNoaWF2ZSAnJXMnIgorCisjOiB0cmFpbGVyLmM6NTM5IHRyYWlsZXIuYzo1NDQgYnVpbHRpbi9yZW1vdGUuYzoyOTggYnVpbHRpbi9yZW1vdGUuYzozMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAibW9yZSB0aGFuIG9uZSAlcyIKK21zZ3N0ciAicGnDuSBkaSB1biAlcyIKKworIzogdHJhaWxlci5jOjczMAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB0cmFpbGVyIHRva2VuIGluIHRyYWlsZXIgJyUuKnMnIgorbXNnc3RyICJ0b2tlbiBmaW5hbGUgdnVvdG8gbmVsbGEgc3RyaW5nYSBmaW5hbGUgJyUuKnMnIgorCisjOiB0cmFpbGVyLmM6NzUwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIGlucHV0IGZpbGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBpbCBmaWxlIGRpIGlucHV0ICclcyciCisKKyM6IHRyYWlsZXIuYzo3NTMKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBmcm9tIHN0ZGluIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGRhbGxvIHN0YW5kYXJkIGlucHV0IgorCisjOiB0cmFpbGVyLmM6MTAxMSB3cmFwcGVyLmM6NjY1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBsbyBzdGF0IGRpICclcyciCisKKyM6IHRyYWlsZXIuYzoxMDEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJXMgaXMgbm90IGEgcmVndWxhciBmaWxlIgorbXNnc3RyICJpbCBmaWxlICVzIG5vbiDDqCB1biBmaWxlIHJlZ29sYXJlIgorCisjOiB0cmFpbGVyLmM6MTAxNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlICVzIGlzIG5vdCB3cml0YWJsZSBieSB1c2VyIgorbXNnc3RyICJpbCBmaWxlICVzIG5vbiDDqCBzY3JpdmliaWxlIGRhbGwndXRlbnRlIgorCisjOiB0cmFpbGVyLmM6MTAyNworbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRlbXBvcmFyeSBmaWxlIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgdW4gZmlsZSB0ZW1wb3JhbmVvIgorCisjOiB0cmFpbGVyLmM6MTA2NworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVuYW1lIHRlbXBvcmFyeSBmaWxlIHRvICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaWRlbm9taW5hcmUgaWwgZmlsZSB0ZW1wb3JhbmVvIGluICVzIgorCisjOiB0cmFuc3BvcnQuYzoxMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgc2V0IHVwc3RyZWFtIG9mICclcycgdG8gJyVzJyBvZiAnJXMnXG4iCittc2dzdHIgIkwndXBzdHJlYW0gZGkgJyVzJyBzYXJlYmJlIGltcG9zdGF0byBhICclcycgZGkgJyVzJ1xuIgorCisjOiB0cmFuc3BvcnQuYzoxNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgYnVuZGxlICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaWwgYnVuZGxlICclcyciCisKKyM6IHRyYW5zcG9ydC5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmFuc3BvcnQ6IGludmFsaWQgZGVwdGggb3B0aW9uICclcyciCittc2dzdHIgInRyYXNwb3J0bzogb3B6aW9uZSBwcm9mb25kaXTDoCAnJXMnIG5vbiB2YWxpZGEiCisKKyM6IHRyYW5zcG9ydC5jOjI2NgorbXNnaWQgInNlZSBwcm90b2NvbC52ZXJzaW9uIGluICdnaXQgaGVscCBjb25maWcnIGZvciBtb3JlIGRldGFpbHMiCittc2dzdHIgInZlZGkgcHJvdG9jb2wudmVyc2lvbiBpbiAnZ2l0IGhlbHAgY29uZmlnJyBwZXIgbWFnZ2lvcmkgZGV0dGFnbGkiCisKKyM6IHRyYW5zcG9ydC5jOjI2NworbXNnaWQgInNlcnZlciBvcHRpb25zIHJlcXVpcmUgcHJvdG9jb2wgdmVyc2lvbiAyIG9yIGxhdGVyIgorbXNnc3RyICJsZSBvcHppb25pIHNlcnZlciByaWNoaWVkb25vIGxhIHZlcnNpb25lIDIgbyBzdWNjZXNzaXZhIGRlbCBwcm90b2NvbGxvIgorCisjOiB0cmFuc3BvcnQuYzo2MzIKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgdHJhbnNwb3J0LmNvbG9yLiogY29uZmlnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGxhIGNvbmZpZ3VyYXppb25lIHRyYW5zcG9ydC5jb2xvci4qIgorCisjOiB0cmFuc3BvcnQuYzo3MDUKK21zZ2lkICJzdXBwb3J0IGZvciBwcm90b2NvbCB2MiBub3QgaW1wbGVtZW50ZWQgeWV0IgorbXNnc3RyICJzdXBwb3J0byBhbGxhIHZlcnNpb25lIDIgZGVsIHByb3RvY29sbG8gbm9uIGFuY29yYSBpbXBsZW1lbnRhdG8iCisKKyM6IHRyYW5zcG9ydC5jOjgzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHZhbHVlIGZvciBjb25maWcgJyVzJzogJXMiCittc2dzdHIgInZhbG9yZSBzY29ub3NjaXV0byBwZXIgbGEgY29uZmlndXJhemlvbmUgJyVzJzogJXMiCisKKyM6IHRyYW5zcG9ydC5jOjg5NworIywgYy1mb3JtYXQKK21zZ2lkICJ0cmFuc3BvcnQgJyVzJyBub3QgYWxsb3dlZCIKK21zZ3N0ciAidHJhc3BvcnRvICclcycgbm9uIGNvbnNlbnRpdG8iCisKKyM6IHRyYW5zcG9ydC5jOjk0OQorbXNnaWQgImdpdC1vdmVyLXJzeW5jIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQiCittc2dzdHIgImdpdC1vdmVyLXJzeW5jIG5vbiDDqCBwacO5IHN1cHBvcnRhdG8iCisKKyM6IHRyYW5zcG9ydC5jOjEwNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgc3VibW9kdWxlIHBhdGhzIGNvbnRhaW4gY2hhbmdlcyB0aGF0IGNhblxuIgorIm5vdCBiZSBmb3VuZCBvbiBhbnkgcmVtb3RlOlxuIgorbXNnc3RyICIiCisiSSBzZWd1ZW50aSBwZXJjb3JzaSBzb3R0b21vZHVsbyBjb250ZW5nb25vIG1vZGlmaWNoZVxuIgorIm5vbiB0cm92YXRlIHN1IG5lc3N1biByZW1vdG86XG4iCisKKyM6IHRyYW5zcG9ydC5jOjEwNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlBsZWFzZSB0cnlcbiIKKyJcbiIKKyJcdGdpdCBwdXNoIC0tcmVjdXJzZS1zdWJtb2R1bGVzPW9uLWRlbWFuZFxuIgorIlxuIgorIm9yIGNkIHRvIHRoZSBwYXRoIGFuZCB1c2VcbiIKKyJcbiIKKyJcdGdpdCBwdXNoXG4iCisiXG4iCisidG8gcHVzaCB0aGVtIHRvIGEgcmVtb3RlLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiUHJvdmFcbiIKKyJcbiIKKyJcdGdpdCBwdXNoIC0tcmVjdXJzZS1zdWJtb2R1bGVzPW9uLWRlbWFuZFxuIgorIlxuIgorIm8gZXNlZ3VpIHVuIGNkIGFsIHBlcmNvcnNvIGUgdXNhXG4iCisiXG4iCisiXHRnaXQgcHVzaFxuIgorIlxuIgorInBlciBlc2VndWlybmUgaWwgcHVzaCBhIHVuIHJlbW90by5cbiIKKyJcbiIKKworIzogdHJhbnNwb3J0LmM6MTA1NgorbXNnaWQgIkFib3J0aW5nLiIKK21zZ3N0ciAiSW50ZXJyb21wbyBsJ29wZXJhemlvbmUuIgorCisjOiB0cmFuc3BvcnQuYzoxMjAxCittc2dpZCAiZmFpbGVkIHRvIHB1c2ggYWxsIG5lZWRlZCBzdWJtb2R1bGVzIgorbXNnc3RyICJwdXNoIGRpIHR1dHRpIGkgc290dG9tb2R1bGkgcmljaGllc3RpIG5vbiByaXVzY2l0byIKKworIzogdHJhbnNwb3J0LmM6MTM0NSB0cmFuc3BvcnQtaGVscGVyLmM6NjU3Cittc2dpZCAib3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCittc2dzdHIgIm9wZXJhemlvbmUgbm9uIHN1cHBvcnRhdGEgZGFsIHByb3RvY29sbG8iCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MSB0cmFuc3BvcnQtaGVscGVyLmM6OTAKK21zZ2lkICJmdWxsIHdyaXRlIHRvIHJlbW90ZSBoZWxwZXIgZmFpbGVkIgorbXNnc3RyICJzY3JpdHR1cmEgY29tcGxldGEgdmVyc28gbCdoZWxwZXIgcmVtb3RvIG5vbiByaXVzY2l0YSIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmluZCByZW1vdGUgaGVscGVyIGZvciAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSB0cm92YXJlIGwnaGVscGVyIHJlbW90byBwZXIgJyVzJyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjE2MCB0cmFuc3BvcnQtaGVscGVyLmM6NTcxCittc2dpZCAiY2FuJ3QgZHVwIGhlbHBlciBvdXRwdXQgZmQiCittc2dzdHIgImltcG9zc2liaWxlIGR1cGxpY2FyZSBpbCBkZXNjcml0dG9yZSBmaWxlIGRlbGwnb3V0cHV0IGhlbHBlciIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5rbm93biBtYW5kYXRvcnkgY2FwYWJpbGl0eSAlczsgdGhpcyByZW1vdGUgaGVscGVyIHByb2JhYmx5IG5lZWRzIG5ld2VyICIKKyJ2ZXJzaW9uIG9mIEdpdCIKK21zZ3N0ciAiIgorImNhcGFiaWxpdHkgbmVjZXNzYXJpYSAlcyBzY29ub3NjaXV0YTsgcXVlc3QnaGVscGVyIHJlbW90byBwcm9iYWJpbG1lbnRlICIKKyJyaWNoaWVkZSB1bmEgdmVyc2lvbmUgZGkgR2l0IHBpw7kgcmVjZW50ZSIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxNworbXNnaWQgInRoaXMgcmVtb3RlIGhlbHBlciBzaG91bGQgaW1wbGVtZW50IHJlZnNwZWMgY2FwYWJpbGl0eSIKK21zZ3N0ciAicXVlc3RvIGhlbHBlciByZW1vdG8gZG92cmViYmUgaW1wbGVtZW50YXJlIGxhIGNhcGFiaWxpdHkgcmVmc3BlYyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjI4NCB0cmFuc3BvcnQtaGVscGVyLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHVuZXhwZWN0ZWRseSBzYWlkOiAnJXMnIgorbXNnc3RyICIlcyBoYSBpbnZpYXRvIHVuIG1lc3NhZ2dpbyBpbmF0dGVzbzogJyVzJyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBhbHNvIGxvY2tlZCAlcyIKK21zZ3N0ciAiJXMgaGEgYmxvY2NhdG8gYW5jaGUgJXMiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0OTMKK21zZ2lkICJjb3VsZG4ndCBydW4gZmFzdC1pbXBvcnQiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGZhc3QtaW1wb3J0IgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTE2Cittc2dpZCAiZXJyb3Igd2hpbGUgcnVubmluZyBmYXN0LWltcG9ydCIKK21zZ3N0ciAiZXJyb3JlIGR1cmFudGUgbCdlc2VjdXppb25lIGRpIGZhc3QtaW1wb3J0IgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTQ1IHRyYW5zcG9ydC1oZWxwZXIuYzoxMTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBpbCByaWZlcmltZW50byAlcyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjU5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHJlc3BvbnNlIHRvIGNvbm5lY3Q6ICVzIgorbXNnc3RyICJyaXNwb3N0YSBpbmF0dGVzYSBhIGNvbm5lY3Q6ICVzIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjEyCittc2dpZCAic2V0dGluZyByZW1vdGUgc2VydmljZSBwYXRoIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCittc2dzdHIgIiIKKyJsJ2ltcG9zdGF6aW9uZSBkZWwgcGVyY29yc28gZGVsIHNlcnZpemlvIHJlbW90byBub24gw6ggc3VwcG9ydGF0YSBkYWwgIgorInByb3RvY29sbG8iCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MTQKK21zZ2lkICJpbnZhbGlkIHJlbW90ZSBzZXJ2aWNlIHBhdGgiCittc2dzdHIgInBlcmNvcnNvIHNlcnZpemlvIHJlbW90byBub24gdmFsaWRvIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGNvbm5lY3QgdG8gc3Vic2VydmljZSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY29ubmV0dGVyc2kgYWwgc290dG9zZXJ2aXppbyAlcyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjczNgorIywgYy1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBvay9lcnJvciwgaGVscGVyIHNhaWQgJyVzJyIKK21zZ3N0ciAiYXR0ZXNpIG9rL2Vycm9yLCBsJ2hlbHBlciBoYSBpbnZpYXRvICclcyciCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo3ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGVscGVyIHJlcG9ydGVkIHVuZXhwZWN0ZWQgc3RhdHVzIG9mICVzIgorbXNnc3RyICJsJ2hlbHBlciBoYSBzZWduYWxhdG8gdW5vIHN0YXRvIGluYXR0ZXNvIGRpICVzIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODUwCisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IGRyeS1ydW4iCittc2dzdHIgImwnaGVscGVyICVzIG5vbiBzdXBwb3J0YSBkcnktcnVuIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODUzCisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIgorbXNnc3RyICJsJ2hlbHBlciAlcyBub24gc3VwcG9ydGEgLS1zaWduZWQiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgLS1zaWduZWQ9aWYtYXNrZWQiCittc2dzdHIgImwnaGVscGVyICVzIG5vbiBzdXBwb3J0YSAtLXNpZ25lZD1pZi1hc2tlZCIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjg2MQorIywgYy1mb3JtYXQKK21zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAtLWF0b21pYyIKK21zZ3N0ciAibCdoZWxwZXIgJXMgbm9uIHN1cHBvcnRhIC0tYXRvbWljIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODY3CisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0ICdwdXNoLW9wdGlvbiciCittc2dzdHIgImwnaGVscGVyICVzIG5vbiBzdXBwb3J0YSAncHVzaC1vcHRpb24nIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6OTY1Cittc2dpZCAicmVtb3RlLWhlbHBlciBkb2Vzbid0IHN1cHBvcnQgcHVzaDsgcmVmc3BlYyBuZWVkZWQiCittc2dzdHIgIiIKKyJsJ2hlbHBlciByZW1vdG8gbm9uIHN1cHBvcnRhIGlsIHB1c2g7IMOoIG5lY2Vzc2FyaW8gdW5vIHNwZWNpZmljYXRvcmUgIgorInJpZmVyaW1lbnRvIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6OTcwCisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0ICdmb3JjZSciCittc2dzdHIgImwnaGVscGVyICVzIG5vbiBzdXBwb3J0YSAnZm9yY2UnIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTAxNworbXNnaWQgImNvdWxkbid0IHJ1biBmYXN0LWV4cG9ydCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgZmFzdC1leHBvcnQiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDIyCittc2dpZCAiZXJyb3Igd2hpbGUgcnVubmluZyBmYXN0LWV4cG9ydCIKK21zZ3N0ciAiZXJyb3JlIGR1cmFudGUgbCdlc2VjdXppb25lIGRpIGZhc3QtZXhwb3J0IgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTA0NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTm8gcmVmcyBpbiBjb21tb24gYW5kIG5vbmUgc3BlY2lmaWVkOyBkb2luZyBub3RoaW5nLlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBzcGVjaWZ5IGEgYnJhbmNoIHN1Y2ggYXMgJ21hc3RlcicuXG4iCittc2dzdHIgIiIKKyJOZXNzdW4gcmlmZXJpbWVudG8gaW4gY29tdW5lIGUgbmVzc3VubyBzcGVjaWZpY2F0bzsgbm9uIGVzZWd1byBudWxsYS5cbiIKKyJGb3JzZSBkb3ZyZXN0aSBzcGVjaWZpY2FyZSB1biBicmFuY2ggY29tZSAnbWFzdGVyJy5cbiIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjExMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIHJlc3BvbnNlIGluIHJlZiBsaXN0OiAlcyIKK21zZ3N0ciAicmlzcG9zdGEgbWFsZm9ybWF0YSBuZWxsJ2VsZW5jbyByaWZlcmltZW50aTogJXMiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjcyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQoJXMpIGZhaWxlZCIKK21zZ3N0ciAicmVhZCglcykgbm9uIHJpdXNjaXRhIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ3cml0ZSglcykgZmFpbGVkIgorbXNnc3RyICJ3cml0ZSglcykgbm9uIHJpdXNjaXRhIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0aHJlYWQgZmFpbGVkIgorbXNnc3RyICJ0aHJlYWQgJXMgbm9uIHJpdXNjaXRvIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0aHJlYWQgZmFpbGVkIHRvIGpvaW46ICVzIgorbXNnc3RyICJqb2luIG5vbiByaXVzY2l0YSBwZXIgaWwgdGhyZWFkICVzOiAlcyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNzEgdHJhbnNwb3J0LWhlbHBlci5jOjEzNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhcnQgdGhyZWFkIGZvciBjb3B5aW5nIGRhdGE6ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhdnZpYXJlIGlsIHRocmVhZCBwZXIgbGEgY29waWEgZGVpIGRhdGk6ICVzIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcm9jZXNzIGZhaWxlZCB0byB3YWl0IgorbXNnc3RyICJ3YWl0IG5vbiByaXVzY2l0YSBwZXIgaWwgcHJvY2Vzc28gJXMiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHByb2Nlc3MgZmFpbGVkIgorbXNnc3RyICJwcm9jZXNzbyAlcyBub24gcml1c2NpdG8iCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDM0IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDQzCittc2dpZCAiY2FuJ3Qgc3RhcnQgdGhyZWFkIGZvciBjb3B5aW5nIGRhdGEiCittc2dzdHIgImltcG9zc2liaWxlIGF2dmlhcmUgaWwgdGhyZWFkIHBlciBsYSBjb3BpYSBkZWkgZGF0aSIKKworIzogdHJlZS13YWxrLmM6MzIKK21zZ2lkICJ0b28tc2hvcnQgdHJlZSBvYmplY3QiCittc2dzdHIgIm9nZ2V0dG8gYWxiZXJvIHRyb3BwbyBjb3J0byIKKworIzogdHJlZS13YWxrLmM6MzgKK21zZ2lkICJtYWxmb3JtZWQgbW9kZSBpbiB0cmVlIGVudHJ5IgorbXNnc3RyICJtb2RvIG1hbGZvcm1hdG8gbmVsbGEgdm9jZSBkZWxsJ2FsYmVybyIKKworIzogdHJlZS13YWxrLmM6NDIKK21zZ2lkICJlbXB0eSBmaWxlbmFtZSBpbiB0cmVlIGVudHJ5IgorbXNnc3RyICJub21lIGZpbGUgdnVvdG8gbmVsbGEgdm9jZSBkZWxsJ2FsYmVybyIKKworIzogdHJlZS13YWxrLmM6MTE3Cittc2dpZCAidG9vLXNob3J0IHRyZWUgZmlsZSIKK21zZ3N0ciAiZmlsZSBhbGJlciB0cm9wcG8gY29ydG8iCisKKyM6IHVucGFjay10cmVlcy5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCisiJSVzUGxlYXNlIGNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSBiZWZvcmUgeW91IHN3aXRjaCBicmFuY2hlcy4iCittc2dzdHIgIiIKKyJMZSB0dWUgbW9kaWZpY2hlIGxvY2FsaSBhaSBzZWd1ZW50aSBmaWxlIHNhcmViYmVybyBzb3ZyYXNjcml0dGUgY29uIGlsICIKKyJjaGVja291dDpcbiIKKyIlJXNFc2VndWkgaWwgY29tbWl0IG8gbG8gc3Rhc2ggZGVsbGUgbW9kaWZpY2hlIHByaW1hIGRpIGNhbWJpYXJlIGJyYW5jaC4iCisKKyM6IHVucGFjay10cmVlcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCisiJSVzIgorbXNnc3RyICIiCisiTGUgdHVlIG1vZGlmaWNoZSBsb2NhbGkgYWkgc2VndWVudGkgZmlsZSBzYXJlYmJlcm8gc292cmFzY3JpdHRlIGNvbiBpbCAiCisiY2hlY2tvdXQ6XG4iCisiJSVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgorIiUlc1BsZWFzZSBjb21taXQgeW91ciBjaGFuZ2VzIG9yIHN0YXNoIHRoZW0gYmVmb3JlIHlvdSBtZXJnZS4iCittc2dzdHIgIiIKKyJMZSB0dWUgbW9kaWZpY2hlIGxvY2FsaSBhaSBzZWd1ZW50aSBmaWxlIHNhcmViYmVybyBzb3ZyYXNjcml0dGUgY29uIGlsICIKKyJtZXJnZTpcbiIKKyIlJXNFc2VndWkgaWwgY29tbWl0IG8gbG8gc3Rhc2ggZGVsbGUgbW9kaWZpY2hlIHByaW1hIGRpIGVzZWd1aXJlIGlsIG1lcmdlLiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKKyIlJXMiCittc2dzdHIgIiIKKyJMZSB0dWUgbW9kaWZpY2hlIGxvY2FsaSBhaSBzZWd1ZW50aSBmaWxlIHNhcmViYmVybyBzb3ZyYXNjcml0dGUgY29uIGlsICIKKyJtZXJnZTpcbiIKKyIlJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCisiJSVzUGxlYXNlIGNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSBiZWZvcmUgeW91ICVzLiIKK21zZ3N0ciAiIgorIkxlIHR1ZSBtb2RpZmljaGUgbG9jYWxpIGFpIHNlZ3VlbnRpIGZpbGUgc2FyZWJiZXJvIHNvdnJhc2NyaXR0ZSBjb24gIgorImwnb3BlcmF6aW9uZSBkaSAlczpcbiIKKyIlJXNFc2VndWkgaWwgY29tbWl0IG8gbG8gc3Rhc2ggZGVsbGUgbW9kaWZpY2hlIHByaW1hIGRpIGVzZWd1aXJlICIKKyJsJ29wZXJhemlvbmUgZGkgJXMuIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgorIiUlcyIKK21zZ3N0ciAiIgorIkxlIHR1ZSBtb2RpZmljaGUgbG9jYWxpIGFpIHNlZ3VlbnRpIGZpbGUgc2FyZWJiZXJvIHNvdnJhc2NyaXR0ZSBjb24gIgorImwnb3BlcmF6aW9uZSBkaSAlczpcbiIKKyIlJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXBkYXRpbmcgdGhlIGZvbGxvd2luZyBkaXJlY3RvcmllcyB3b3VsZCBsb3NlIHVudHJhY2tlZCBmaWxlcyBpbiB0aGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiTCdhZ2dpb3JuYW1lbnRvIGRlbGxlIHNlZ3VlbnRpIGRpcmVjdG9yeSBmYXJlYmJlIHPDrCBjaGUgZGVpIGZpbGUgbm9uICIKKyJ0cmFjY2lhdGkgaW4gZXNzZSBjb250ZW51dGkgdmVuZ2FubyBwZXJzaTpcbiIKKyIlcyIKKworIzogdW5wYWNrLXRyZWVzLmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKKyIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91IHN3aXRjaCBicmFuY2hlcy4iCittc2dzdHIgIiIKKyJJIHNlZ3VlbnRpIGZpbGUgbm9uIHRyYWNjaWF0aSBwcmVzZW50aSBuZWxsJ2FsYmVybyBkaSBsYXZvcm8gc2FyZWJiZXJvICIKKyJlbGltaW5hdGkgY29uIGlsIGNoZWNrb3V0OlxuIgorIiUlc1Nwb3N0YWxpIG8gZWxpbWluYWxpIHByaW1hIGRpIGNhbWJpYXJlIGJyYW5jaC4iCisKKyM6IHVucGFjay10cmVlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgY2hlY2tvdXQ6XG4iCisiJSVzIgorbXNnc3RyICIiCisiSSBzZWd1ZW50aSBmaWxlIG5vbiB0cmFjY2lhdGkgcHJlc2VudGkgbmVsbCdhbGJlcm8gZGkgbGF2b3JvIHNhcmViYmVybyAiCisiZWxpbWluYXRpIGNvbiBpbCBjaGVja291dDpcbiIKKyIlJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgbWVyZ2U6XG4iCisiJSVzUGxlYXNlIG1vdmUgb3IgcmVtb3ZlIHRoZW0gYmVmb3JlIHlvdSBtZXJnZS4iCittc2dzdHIgIiIKKyJJIHNlZ3VlbnRpIGZpbGUgbm9uIHRyYWNjaWF0aSBwcmVzZW50aSBuZWxsJ2FsYmVybyBkaSBsYXZvcm8gc2FyZWJiZXJvICIKKyJlbGltaW5hdGkgZGFsIG1lcmdlOlxuIgorIiUlc1Nwb3N0YWxpIG8gZWxpbWluYWxpIHByaW1hIGRpIGVzZWd1aXJlIGlsIG1lcmdlLiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTM4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBtZXJnZTpcbiIKKyIlJXMiCittc2dzdHIgIiIKKyJJIHNlZ3VlbnRpIGZpbGUgbm9uIHRyYWNjaWF0aSBwcmVzZW50aSBuZWxsJ2FsYmVybyBkaSBsYXZvcm8gc2FyZWJiZXJvICIKKyJlbGltaW5hdGkgZGFsIG1lcmdlOlxuIgorIiUlcyIKKworIzogdW5wYWNrLXRyZWVzLmM6MTQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSAlczpcbiIKKyIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91ICVzLiIKK21zZ3N0ciAiIgorIkkgc2VndWVudGkgZmlsZSBub24gdHJhY2NpYXRpIHByZXNlbnRpIG5lbGwnYWxiZXJvIGRpIGxhdm9ybyBzYXJlYmJlcm8gIgorImVsaW1pbmF0aSBjb24gbCdvcGVyYXppb25lIGRpICVzOlxuIgorIiUlc1Nwb3N0YWxpIG8gZWxpbWluYWxpIHByaW1hIGRpIGVzZWd1aXJlIGwnb3BlcmF6aW9uZSBkaSAlcy4iCisKKyM6IHVucGFjay10cmVlcy5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgJXM6XG4iCisiJSVzIgorbXNnc3RyICIiCisiSSBzZWd1ZW50aSBmaWxlIG5vbiB0cmFjY2lhdGkgcHJlc2VudGkgbmVsbCdhbGJlcm8gZGkgbGF2b3JvIHNhcmViYmVybyAiCisiZWxpbWluYXRpIGNvbiBsJ29wZXJhemlvbmUgZGkgJXM6XG4iCisiJSVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCisiY2hlY2tvdXQ6XG4iCisiJSVzUGxlYXNlIG1vdmUgb3IgcmVtb3ZlIHRoZW0gYmVmb3JlIHlvdSBzd2l0Y2ggYnJhbmNoZXMuIgorbXNnc3RyICIiCisiSSBzZWd1ZW50aSBmaWxlIG5vbiB0cmFjY2lhdGkgcHJlc2VudGkgbmVsbCdhbGJlcm8gZGkgbGF2b3JvIHNhcmViYmVybyAiCisic292cmFzY3JpdHRpIGNvbiBpbCBjaGVja291dDpcbiIKKyIlJXNTcG9zdGFsaSBvIGVsaW1pbmFsaSBwcmltYSBkaSBjYW1iaWFyZSBicmFuY2guIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCisiY2hlY2tvdXQ6XG4iCisiJSVzIgorbXNnc3RyICIiCisiSSBzZWd1ZW50aSBmaWxlIG5vbiB0cmFjY2lhdGkgcHJlc2VudGkgbmVsbCdhbGJlcm8gZGkgbGF2b3JvIHNhcmViYmVybyAiCisic292cmFzY3JpdHRpIGNvbiBpbCBjaGVja291dDpcbiIKKyIlJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgorIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3UgbWVyZ2UuIgorbXNnc3RyICIiCisiSSBzZWd1ZW50aSBmaWxlIG5vbiB0cmFjY2lhdGkgcHJlc2VudGkgbmVsbCdhbGJlcm8gZGkgbGF2b3JvIHNhcmViYmVybyAiCisic292cmFzY3JpdHRpIGRhbCBtZXJnZTpcbiIKKyIlJXNTcG9zdGFsaSBvIGVsaW1pbmFsaSBwcmltYSBkaSBlc2VndWlyZSBpbCBtZXJnZS4iCisKKyM6IHVucGFjay10cmVlcy5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgorIiUlcyIKK21zZ3N0ciAiIgorIkkgc2VndWVudGkgZmlsZSBub24gdHJhY2NpYXRpIHByZXNlbnRpIG5lbGwnYWxiZXJvIGRpIGxhdm9ybyBzYXJlYmJlcm8gIgorInNvdnJhc2NyaXR0aSBkYWwgbWVyZ2U6XG4iCisiJSVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKKyIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91ICVzLiIKK21zZ3N0ciAiIgorIkkgc2VndWVudGkgZmlsZSBub24gdHJhY2NpYXRpIHByZXNlbnRpIG5lbGwnYWxiZXJvIGRpIGxhdm9ybyBzYXJlYmJlcm8gIgorInNvdnJhc2NyaXR0aSBjb24gbCdvcGVyYXppb25lIGRpICVzOlxuIgorIiUlc1Nwb3N0YWxpIG8gZWxpbWluYWxpIHByaW1hIGRpIGVzZWd1aXJlIGwnb3BlcmF6aW9uZSBkaSAlcy4iCisKKyM6IHVucGFjay10cmVlcy5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgorIiUlcyIKK21zZ3N0ciAiIgorIkkgc2VndWVudGkgZmlsZSBub24gdHJhY2NpYXRpIHByZXNlbnRpIG5lbGwnYWxiZXJvIGRpIGxhdm9ybyBzYXJlYmJlcm8gIgorInNvdnJhc2NyaXR0aSBjb24gbCdvcGVyYXppb25lIGRpICVzOlxuIgorIiUlcyIKKworIzogdW5wYWNrLXRyZWVzLmM6MTY5CisjLCBjLWZvcm1hdAorbXNnaWQgIkVudHJ5ICclcycgb3ZlcmxhcHMgd2l0aCAnJXMnLiAgQ2Fubm90IGJpbmQuIgorbXNnc3RyICIiCisiTGEgdm9jZSAnJXMnIHNpIHNvdnJhcHBvbmUgYSAnJXMnLiBJbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBjb2xsZWdhbWVudG8uIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNhbm5vdCB1cGRhdGUgc3BhcnNlIGNoZWNrb3V0OiB0aGUgZm9sbG93aW5nIGVudHJpZXMgYXJlIG5vdCB1cCB0byBkYXRlOlxuIgorIiVzIgorbXNnc3RyICIiCisiSW1wb3NzaWJpbGUgYWdnaW9ybmFyZSBpbCBjaGVja291dCBzcGFyc2U6IGxlIHNlZ3VlbnRpIHZvY2kgbm9uIHNvbm8gIgorImFnZ2lvcm5hdGU6XG4iCisiJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgc3BhcnNlIGNoZWNrb3V0ICIKKyJ1cGRhdGU6XG4iCisiJXMiCittc2dzdHIgIiIKKyJJIHNlZ3VlbnRpIGZpbGUgZGVsbCdhbGJlcm8gZGkgbGF2b3JvIHNhcmViYmVybyBzb3ZyYXNjcml0dGkgY29uICIKKyJsJ2FnZ2lvcm5hbWVudG8gZGVsIGNoZWNrb3V0IHNwYXJzZTpcbiIKKyIlcyIKKworIzogdW5wYWNrLXRyZWVzLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IHNwYXJzZSBjaGVja291dCAiCisidXBkYXRlOlxuIgorIiVzIgorbXNnc3RyICIiCisiSSBzZWd1ZW50aSBmaWxlIGRlbGwnYWxiZXJvIGRpIGxhdm9ybyBzYXJlYmJlcm8gZWxpbWluYXRpIGNvbiAiCisibCdhZ2dpb3JuYW1lbnRvIGRlbCBjaGVja291dCBzcGFyc2U6XG4iCisiJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ2Fubm90IHVwZGF0ZSBzdWJtb2R1bGU6XG4iCisiJXMiCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBhZ2dpb3JuYXJlIGlsIHNvdHRvbW9kdWxvOlxuIgorIiVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWJvcnRpbmdcbiIKK21zZ3N0ciAiSW50ZXJyb21wbyBsJ29wZXJhemlvbmVcbiIKKworIzogdW5wYWNrLXRyZWVzLmM6MzE3Cittc2dpZCAiVXBkYXRpbmcgZmlsZXMiCittc2dzdHIgIkFnZ2lvcm5hbWVudG8gZGVpIGZpbGUgaW4gY29yc28iCisKKyM6IHVucGFjay10cmVlcy5jOjM0OQorbXNnaWQgIiIKKyJ0aGUgZm9sbG93aW5nIHBhdGhzIGhhdmUgY29sbGlkZWQgKGUuZy4gY2FzZS1zZW5zaXRpdmUgcGF0aHNcbiIKKyJvbiBhIGNhc2UtaW5zZW5zaXRpdmUgZmlsZXN5c3RlbSkgYW5kIG9ubHkgb25lIGZyb20gdGhlIHNhbWVcbiIKKyJjb2xsaWRpbmcgZ3JvdXAgaXMgaW4gdGhlIHdvcmtpbmcgdHJlZTpcbiIKK21zZ3N0ciAiIgorImkgc2VndWVudGkgcGVyY29yc2kgc29ubyBlbnRyYXRpIGluIGNvbmZsaXR0byAoYWQgZXMuIHNlIGNpXG4iCisic29ubyBwZXJjb3JzaSBjaGUgZGlmZmVyaXNjb25vIHNvbG8gcGVyIGxlIG1haXVzY29sZS9taW51c2NvbGVcbiIKKyJzdSB1biBmaWxlc3lzdGVtIG5vbiBzZW5zaWJpbGUgYSB0YWxlIGRpZmZlcmVuemEpIGUgc29sbyB1bm9cbiIKKyJwZXIgZ3J1cHBvIGluIGNvbmZsaXR0byDDqCBuZWxsJ2FsYmVybyBkaSBsYXZvcm86XG4iCisKKyM6IHVucGFjay10cmVlcy5jOjE0NDUKK21zZ2lkICJVcGRhdGluZyBpbmRleCBmbGFncyIKK21zZ3N0ciAiQWdnaW9ybmFtZW50byBkZWkgY29udHJhc3NlZ25pIGluZGljZSBpbiBjb3JzbyIKKworIzogdXJsbWF0Y2guYzoxNjMKK21zZ2lkICJpbnZhbGlkIFVSTCBzY2hlbWUgbmFtZSBvciBtaXNzaW5nICc6Ly8nIHN1ZmZpeCIKK21zZ3N0ciAibm9tZSBzY2hlbWEgVVJMIG5vbiB2YWxpZG8gbyBzdWZmaXNzbyAnOi8vJyBtYW5jYW50ZSIKKworIzogdXJsbWF0Y2guYzoxODcgdXJsbWF0Y2guYzozNDYgdXJsbWF0Y2guYzo0MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAlWFggZXNjYXBlIHNlcXVlbmNlIgorbXNnc3RyICJzZXF1ZW56YSBkaSBlc2NhcGUgJVhYIG5vbiB2YWxpZGEiCisKKyM6IHVybG1hdGNoLmM6MjE1Cittc2dpZCAibWlzc2luZyBob3N0IGFuZCBzY2hlbWUgaXMgbm90ICdmaWxlOiciCittc2dzdHIgImhvc3QgbWFuY2FudGUgZSBsbyBzY2hlbWEgbm9uIMOoICdmaWxlOiciCisKKyM6IHVybG1hdGNoLmM6MjMyCittc2dpZCAiYSAnZmlsZTonIFVSTCBtYXkgbm90IGhhdmUgYSBwb3J0IG51bWJlciIKK21zZ3N0ciAidW4gVVJMICdmaWxlOicgbm9uIHB1w7IgYXZlcmUgdW4gbnVtZXJvIGRpIHBvcnRhIgorCisjOiB1cmxtYXRjaC5jOjI0NworbXNnaWQgImludmFsaWQgY2hhcmFjdGVycyBpbiBob3N0IG5hbWUiCittc2dzdHIgImNhcmF0dGVyaSBub24gdmFsaWRpIG5lbCBub21lIGhvc3QiCisKKyM6IHVybG1hdGNoLmM6MjkyIHVybG1hdGNoLmM6MzAzCittc2dpZCAiaW52YWxpZCBwb3J0IG51bWJlciIKK21zZ3N0ciAibnVtZXJvIGRpIHBvcnRhIG5vbiB2YWxpZG8iCisKKyM6IHVybG1hdGNoLmM6MzcxCittc2dpZCAiaW52YWxpZCAnLi4nIHBhdGggc2VnbWVudCIKK21zZ3N0ciAicGFydGUgcGVyY29yc28gJy4uJyBub24gdmFsaWRhIgorCisjOiB3YWxrZXIuYzoxNzAKK21zZ2lkICJGZXRjaGluZyBvYmplY3RzIgorbXNnc3RyICJSZWN1cGVybyBvZ2dldHRpIGluIGNvcnNvIgorCisjOiB3b3JrdHJlZS5jOjI1OSBidWlsdGluL2FtLmM6MjA5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCAnJXMnIgorbXNnc3RyICJsZXR0dXJhIGRpICclcycgbm9uIHJpdXNjaXRhIgorCisjOiB3b3JrdHJlZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGF0IG1haW4gd29ya2luZyB0cmVlIGlzIG5vdCB0aGUgcmVwb3NpdG9yeSBkaXJlY3RvcnkiCittc2dzdHIgIiIKKyInJXMnIG5lbGwnYWxiZXJvIGRpIGxhdm9ybyBwcmluY2lwYWxlIG5vbiDDqCBsYSBkaXJlY3RvcnkgZGVsIHJlcG9zaXRvcnkiCisKKyM6IHdvcmt0cmVlLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmlsZSBkb2VzIG5vdCBjb250YWluIGFic29sdXRlIHBhdGggdG8gdGhlIHdvcmtpbmcgdHJlZSBsb2NhdGlvbiIKK21zZ3N0ciAiIgorImlsIGZpbGUgJyVzJyBub24gY29udGllbmUgaWwgcGVyY29yc28gYXNzb2x1dG8gYWxsYSBwb3NpemlvbmUgZGVsbCdhbGJlcm8gZGkgIgorImxhdm9ybyIKKworIzogd29ya3RyZWUuYzozMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiJyVzJyBub24gZXNpc3RlIgorCisjOiB3b3JrdHJlZS5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIC5naXQgZmlsZSwgZXJyb3IgY29kZSAlZCIKK21zZ3N0ciAiJyVzJyBub24gw6ggdW4gZmlsZSAuZ2l0LCBjb2RpY2UgZCdlcnJvcmUgJWQiCisKKyM6IHdvcmt0cmVlLmM6MzQyCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgcG9pbnQgYmFjayB0byAnJXMnIgorbXNnc3RyICInJXMnIG5vbiBwdW50YSBhICclcyciCisKKyM6IHdyYXBwZXIuYzoxODYgd3JhcHBlci5jOjM1NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciByZWFkaW5nIGFuZCB3cml0aW5nIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgJyVzJyBpbiBsZXR0dXJhIGUgc2NyaXR0dXJhIgorCisjOiB3cmFwcGVyLmM6Mzg3IHdyYXBwZXIuYzo1ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhY2NlZGVyZSBhICclcyciCisKKyM6IHdyYXBwZXIuYzo1OTYKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkiCittc2dzdHIgImltcG9zc2liaWxlIG90dGVuZXJlIGxhIGRpcmVjdG9yeSBkaSBsYXZvcm8gY29ycmVudGUiCisKKyM6IHd0LXN0YXR1cy5jOjE1OAorbXNnaWQgIlVubWVyZ2VkIHBhdGhzOiIKK21zZ3N0ciAiUGVyY29yc2kgbm9uIHNvdHRvcG9zdGkgYSBtZXJnZToiCisKKyM6IHd0LXN0YXR1cy5jOjE4NyB3dC1zdGF0dXMuYzoyMTkKK21zZ2lkICIgICh1c2UgXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKK21zZ3N0ciAiIgorIiAgKHVzYSBcImdpdCByZXN0b3JlIC0tc3RhZ2VkIDxmaWxlPi4uLlwiIHBlciByaW11b3ZlcmUgZ2xpIGVsZW1lbnRpICIKKyJkYWxsJ2FyZWEgZGkgc3RhZ2luZykiCisKKyM6IHd0LXN0YXR1cy5jOjE5MCB3dC1zdGF0dXMuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zb3VyY2U9JXMgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiIKKyIgICh1c2EgXCJnaXQgcmVzdG9yZSAtLXNvdXJjZT0lcyAtLXN0YWdlZCA8ZmlsZT4uLi5cIiBwZXIgcmltdW92ZXJlIGdsaSAiCisiZWxlbWVudGkgZGFsbCdhcmVhIGRpIHN0YWdpbmcpIgorCisjOiB3dC1zdGF0dXMuYzoxOTMgd3Qtc3RhdHVzLmM6MjI1Cittc2dpZCAiICAodXNlIFwiZ2l0IHJtIC0tY2FjaGVkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgorbXNnc3RyICIiCisiICAodXNhIFwiZ2l0IHJtIC0tY2FjaGVkIDxmaWxlPi4uLlwiIHBlciByaW11b3ZlcmUgZ2xpIGVsZW1lbnRpIGRhbGwnYXJlYSBkaSAiCisic3RhZ2luZykiCisKKyM6IHd0LXN0YXR1cy5jOjE5NworbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQgPGZpbGU+Li4uXCIgdG8gbWFyayByZXNvbHV0aW9uKSIKK21zZ3N0ciAiIgorIiAgKHVzYSBcImdpdCBhZGQgPGZpbGU+Li4uXCIgcGVyIGNvbnRyYXNzZWduYXJlIGlsIGNvbmZsaXR0byBjb21lIHJpc29sdG8pIgorCisjOiB3dC1zdGF0dXMuYzoxOTkgd3Qtc3RhdHVzLmM6MjAzCittc2dpZCAiICAodXNlIFwiZ2l0IGFkZC9ybSA8ZmlsZT4uLi5cIiBhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24pIgorbXNnc3RyICIiCisiICAodXNhIFwiZ2l0IGFkZC9ybSA8ZmlsZT4uLi5cIiBjb21lIGFwcHJvcHJpYXRvIHBlciBjb250cmFzc2VnbmFyZSBpbCAiCisiY29uZmxpdHRvIGNvbWUgcmlzb2x0bykiCisKKyM6IHd0LXN0YXR1cy5jOjIwMQorbXNnaWQgIiAgKHVzZSBcImdpdCBybSA8ZmlsZT4uLi5cIiB0byBtYXJrIHJlc29sdXRpb24pIgorbXNnc3RyICIiCisiICAodXNhIFwiZ2l0IHJtIDxmaWxlPi4uLlwiIHBlciBjb250cmFzc2VnbmFyZSBpbCBjb25mbGl0dG8gY29tZSByaXNvbHRvKSIKKworIzogd3Qtc3RhdHVzLmM6MjExIHd0LXN0YXR1cy5jOjEwNzQKK21zZ2lkICJDaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCittc2dzdHIgIk1vZGlmaWNoZSBkaSBjdWkgdmVycsOgIGVzZWd1aXRvIGlsIGNvbW1pdDoiCisKKyM6IHd0LXN0YXR1cy5jOjIzNCB3dC1zdGF0dXMuYzoxMDgzCittc2dpZCAiQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6IgorbXNnc3RyICJNb2RpZmljaGUgbm9uIG5lbGwnYXJlYSBkaSBzdGFnaW5nIHBlciBpbCBjb21taXQ6IgorCisjOiB3dC1zdGF0dXMuYzoyMzgKK21zZ2lkICIgICh1c2UgXCJnaXQgYWRkIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKK21zZ3N0ciAiIgorIiAgKHVzYSBcImdpdCBhZGQgPGZpbGU+Li4uXCIgcGVyIGFnZ2lvcm5hcmUgZ2xpIGVsZW1lbnRpIGRpIGN1aSBzYXLDoCAiCisiZXNlZ3VpdG8gaWwgY29tbWl0KSIKKworIzogd3Qtc3RhdHVzLmM6MjQwCittc2dpZCAiICAodXNlIFwiZ2l0IGFkZC9ybSA8ZmlsZT4uLi5cIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCittc2dzdHIgIiIKKyIgICh1c2EgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIHBlciBhZ2dpb3JuYXJlIGdsaSBlbGVtZW50aSBkaSBjdWkgc2Fyw6AgIgorImVzZWd1aXRvIGlsIGNvbW1pdCkiCisKKyM6IHd0LXN0YXR1cy5jOjI0MQorbXNnaWQgIiIKKyIgICh1c2UgXCJnaXQgcmVzdG9yZSA8ZmlsZT4uLi5cIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpIgorbXNnc3RyICIiCisiICAodXNhIFwiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uXCIgcGVyIHNjYXJ0YXJlIGxlIG1vZGlmaWNoZSBuZWxsYSBkaXJlY3RvcnkgIgorImRpIGxhdm9ybykiCisKKyM6IHd0LXN0YXR1cy5jOjI0MworbXNnaWQgIiAgKGNvbW1pdCBvciBkaXNjYXJkIHRoZSB1bnRyYWNrZWQgb3IgbW9kaWZpZWQgY29udGVudCBpbiBzdWJtb2R1bGVzKSIKK21zZ3N0ciAiIgorIiAgKGVzZWd1aSBpbCBjb21taXQgbyBzY2FydGEgaWwgY29udGVudXRvIG5vbiB0cmFjY2lhdG8gbyBtb2RpZmljYXRvIG5laSAiCisic290dG9tb2R1bGkpIgorCisjOiB3dC1zdGF0dXMuYzoyNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAodXNlIFwiZ2l0ICVzIDxmaWxlPi4uLlwiIHRvIGluY2x1ZGUgaW4gd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCittc2dzdHIgIiIKKyIgICh1c2EgXCJnaXQgJXMgPGZpbGU+Li4uXCIgcGVyIGluY2x1ZGVyZSBsJ2VsZW1lbnRvIGZyYSBxdWVsbGkgZGkgY3VpIHZlcnLDoCAiCisiZXNlZ3VpdG8gaWwgY29tbWl0KSIKKworIzogd3Qtc3RhdHVzLmM6MjY4Cittc2dpZCAiYm90aCBkZWxldGVkOiIKK21zZ3N0ciAiZW50cmFtYmkgZWxpbWluYXRpOiIKKworIzogd3Qtc3RhdHVzLmM6MjcwCittc2dpZCAiYWRkZWQgYnkgdXM6IgorbXNnc3RyICJhZ2dpdW50byBkYSBub2k6IgorCisjOiB3dC1zdGF0dXMuYzoyNzIKK21zZ2lkICJkZWxldGVkIGJ5IHRoZW06IgorbXNnc3RyICJlbGltaW5hdG8gZGEgbG9ybzoiCisKKyM6IHd0LXN0YXR1cy5jOjI3NAorbXNnaWQgImFkZGVkIGJ5IHRoZW06IgorbXNnc3RyICJhZ2dpdW50byBkYSBsb3JvOiIKKworIzogd3Qtc3RhdHVzLmM6Mjc2Cittc2dpZCAiZGVsZXRlZCBieSB1czoiCittc2dzdHIgImVsaW1pbmF0byBkYSBub2k6IgorCisjOiB3dC1zdGF0dXMuYzoyNzgKK21zZ2lkICJib3RoIGFkZGVkOiIKK21zZ3N0ciAiZW50cmFtYmkgYWdnaXVudGk6IgorCisjOiB3dC1zdGF0dXMuYzoyODAKK21zZ2lkICJib3RoIG1vZGlmaWVkOiIKK21zZ3N0ciAiZW50cmFtYmkgbW9kaWZpY2F0aToiCisKKyM6IHd0LXN0YXR1cy5jOjI5MAorbXNnaWQgIm5ldyBmaWxlOiIKK21zZ3N0ciAibnVvdm8gZmlsZToiCisKKyM6IHd0LXN0YXR1cy5jOjI5MgorbXNnaWQgImNvcGllZDoiCittc2dzdHIgImNvcGlhdG86IgorCisjOiB3dC1zdGF0dXMuYzoyOTQKK21zZ2lkICJkZWxldGVkOiIKK21zZ3N0ciAiZWxpbWluYXRvOiIKKworIzogd3Qtc3RhdHVzLmM6Mjk2Cittc2dpZCAibW9kaWZpZWQ6IgorbXNnc3RyICJtb2RpZmljYXRvOiIKKworIzogd3Qtc3RhdHVzLmM6Mjk4Cittc2dpZCAicmVuYW1lZDoiCittc2dzdHIgInJpbm9taW5hdG86IgorCisjOiB3dC1zdGF0dXMuYzozMDAKK21zZ2lkICJ0eXBlY2hhbmdlOiIKK21zZ3N0ciAibW9kaWZpY2EgdGlwbzoiCisKKyM6IHd0LXN0YXR1cy5jOjMwMgorbXNnaWQgInVua25vd246IgorbXNnc3RyICJzY29ub3NjaXV0bzoiCisKKyM6IHd0LXN0YXR1cy5jOjMwNAorbXNnaWQgInVubWVyZ2VkOiIKK21zZ3N0ciAibm9uIHNvdHRvcG9zdG8gYSBtZXJnZToiCisKKyM6IHd0LXN0YXR1cy5jOjM4NAorbXNnaWQgIm5ldyBjb21taXRzLCAiCittc2dzdHIgIm51b3ZpIGNvbW1pdCwgIgorCisjOiB3dC1zdGF0dXMuYzozODYKK21zZ2lkICJtb2RpZmllZCBjb250ZW50LCAiCittc2dzdHIgImNvbnRlbnV0byBtb2RpZmljYXRvLCAiCisKKyM6IHd0LXN0YXR1cy5jOjM4OAorbXNnaWQgInVudHJhY2tlZCBjb250ZW50LCAiCittc2dzdHIgImNvbnRlbnV0byBub24gdHJhY2NpYXRvLCAiCisKKyM6IHd0LXN0YXR1cy5jOjkwNgorIywgYy1mb3JtYXQKK21zZ2lkICJZb3VyIHN0YXNoIGN1cnJlbnRseSBoYXMgJWQgZW50cnkiCittc2dpZF9wbHVyYWwgIllvdXIgc3Rhc2ggY3VycmVudGx5IGhhcyAlZCBlbnRyaWVzIgorbXNnc3RyWzBdICJMbyBzdGFzaCBhdHR1YWxtZW50ZSBoYSAlZCB2b2NlIgorbXNnc3RyWzFdICJMbyBzdGFzaCBhdHR1YWxtZW50ZSBoYSAlZCB2b2NpIgorCisjOiB3dC1zdGF0dXMuYzo5MzgKK21zZ2lkICJTdWJtb2R1bGVzIGNoYW5nZWQgYnV0IG5vdCB1cGRhdGVkOiIKK21zZ3N0ciAiU290dG9tb2R1bGkgbW9kaWZpY2F0aSBtYSBub24gYWdnaW9ybmF0aToiCisKKyM6IHd0LXN0YXR1cy5jOjk0MAorbXNnaWQgIlN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCittc2dzdHIgIk1vZGlmaWNoZSBhaSBzb3R0b21vZHVsaSBkaSBjdWkgdmVycsOgIGVzZWd1aXRvIGlsIGNvbW1pdDoiCisKKyM6IHd0LXN0YXR1cy5jOjEwMjIKK21zZ2lkICIiCisiRG8gbm90IG1vZGlmeSBvciByZW1vdmUgdGhlIGxpbmUgYWJvdmUuXG4iCisiRXZlcnl0aGluZyBiZWxvdyBpdCB3aWxsIGJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisiTm9uIG1vZGlmaWNhcmUgbyByaW11b3ZlcmUgbGEgcmlnYSBzb3ByYXN0YW50ZS5cbiIKKyJUdXR0byBjacOyIGNoZSBzaSB0cm92YSBhbCBkaSBzb3R0byBkaSBlc3NhIHNhcsOgIGlnbm9yYXRvLiIKKworIzogd3Qtc3RhdHVzLmM6MTExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gY29tcHV0ZSB0aGUgYnJhbmNoIGFoZWFkL2JlaGluZCB2YWx1ZXMuXG4iCisiWW91IGNhbiB1c2UgJy0tbm8tYWhlYWQtYmVoaW5kJyB0byBhdm9pZCB0aGlzLlxuIgorbXNnc3RyICIiCisiXG4iCisiU29ubyBzdGF0aSBuZWNlc3NhcmkgJS4yZiBzZWNvbmRpIHBlciBjYWxjb2xhcmUgaWwgbnVtZXJvIGRpIGNvbW1pdFxuIgorInByZWNlZGVudGkvc3VjY2Vzc2l2aSBuZWwgYnJhbmNoLlxuIgorIlB1b2kgdXNhcmUgJy0tbm8tYWhlYWQtYmVoaW5kJyBwZXIgZXZpdGFyZSBpbCBjYWxjb2xvLlxuIgorCisjOiB3dC1zdGF0dXMuYzoxMTQ0Cittc2dpZCAiWW91IGhhdmUgdW5tZXJnZWQgcGF0aHMuIgorbXNnc3RyICJIYWkgZGVpIHBlcmNvcnNpIG5vbiBzb3R0b3Bvc3RpIGEgbWVyZ2UuIgorCisjOiB3dC1zdGF0dXMuYzoxMTQ3Cittc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IGNvbW1pdFwiKSIKK21zZ3N0ciAiICAocmlzb2x2aSBpIGNvbmZsaXR0aSBlZCBlc2VndWkgXCJnaXQgY29tbWl0XCIpIgorCisjOiB3dC1zdGF0dXMuYzoxMTQ5Cittc2dpZCAiICAodXNlIFwiZ2l0IG1lcmdlIC0tYWJvcnRcIiB0byBhYm9ydCB0aGUgbWVyZ2UpIgorbXNnc3RyICIgICh1c2EgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIHBlciBpbnRlcnJvbXBlcmUgaWwgbWVyZ2UpIgorCisjOiB3dC1zdGF0dXMuYzoxMTUzCittc2dpZCAiQWxsIGNvbmZsaWN0cyBmaXhlZCBidXQgeW91IGFyZSBzdGlsbCBtZXJnaW5nLiIKK21zZ3N0ciAiVHV0dGkgaSBjb25mbGl0dGkgc29ubyBzdGF0aSByaXNvbHRpIG1hIGlsIG1lcmdlIMOoIGFuY29yYSBpbiBjb3Jzby4iCisKKyM6IHd0LXN0YXR1cy5jOjExNTYKK21zZ2lkICIgICh1c2UgXCJnaXQgY29tbWl0XCIgdG8gY29uY2x1ZGUgbWVyZ2UpIgorbXNnc3RyICIgICh1c2EgXCJnaXQgY29tbWl0XCIgcGVyIHRlcm1pbmFyZSBpbCBtZXJnZSkiCisKKyM6IHd0LXN0YXR1cy5jOjExNjUKK21zZ2lkICJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYW4gYW0gc2Vzc2lvbi4iCittc2dzdHIgIlNlaSBuZWwgYmVsIG1lenpvIGRpIHVuYSBzZXNzaW9uZSBhbS4iCisKKyM6IHd0LXN0YXR1cy5jOjExNjgKK21zZ2lkICJUaGUgY3VycmVudCBwYXRjaCBpcyBlbXB0eS4iCittc2dzdHIgIkxhIHBhdGNoIGNvcnJlbnRlIMOoIHZ1b3RhLiIKKworIzogd3Qtc3RhdHVzLmM6MTE3MgorbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHRoZW4gcnVuIFwiZ2l0IGFtIC0tY29udGludWVcIikiCittc2dzdHIgIiAgKHJpc29sdmkgaSBjb25mbGl0dGkgZSBxdWluZGkgZXNlZ3VpIFwiZ2l0IGFtIC0tY29udGludWVcIikiCisKKyM6IHd0LXN0YXR1cy5jOjExNzQKK21zZ2lkICIgICh1c2UgXCJnaXQgYW0gLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKK21zZ3N0ciAiICAodXNhIFwiZ2l0IGFtIC0tc2tpcFwiIHBlciBzYWx0YXJlIHF1ZXN0YSBwYXRjaCkiCisKKyM6IHd0LXN0YXR1cy5jOjExNzYKK21zZ2lkICIgICh1c2UgXCJnaXQgYW0gLS1hYm9ydFwiIHRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCkiCittc2dzdHIgIiAgKHVzYSBcImdpdCBhbSAtLWFib3J0XCIgcGVyIHJpcHJpc3RpbmFyZSBpbCBicmFuY2ggb3JpZ2luYXJpbykiCisKKyM6IHd0LXN0YXR1cy5jOjEzMDkKK21zZ2lkICJnaXQtcmViYXNlLXRvZG8gaXMgbWlzc2luZy4iCittc2dzdHIgImdpdC1yZWJhc2UtdG9kbyDDqCBtYW5jYW50ZS4iCisKKyM6IHd0LXN0YXR1cy5jOjEzMTEKK21zZ2lkICJObyBjb21tYW5kcyBkb25lLiIKK21zZ3N0ciAiTmVzc3VuIGNvbWFuZG8gZXNlZ3VpdG8uIgorCisjOiB3dC1zdGF0dXMuYzoxMzE0CisjLCBjLWZvcm1hdAorbXNnaWQgIkxhc3QgY29tbWFuZCBkb25lICglZCBjb21tYW5kIGRvbmUpOiIKK21zZ2lkX3BsdXJhbCAiTGFzdCBjb21tYW5kcyBkb25lICglZCBjb21tYW5kcyBkb25lKToiCittc2dzdHJbMF0gIlVsdGltbyBjb21hbmRvIGVzZWd1aXRvICglZCBjb21hbmRvIGVzZWd1aXRvKToiCittc2dzdHJbMV0gIlVsdGltaSBjb21hbmRpIGVzZWd1aXRpICglZCBjb21hbmRpIGVzZWd1aXRpKToiCisKKyM6IHd0LXN0YXR1cy5jOjEzMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAoc2VlIG1vcmUgaW4gZmlsZSAlcykiCittc2dzdHIgIiAgKHZlZGkgZGkgcGnDuSBuZWwgZmlsZSAlcykiCisKKyM6IHd0LXN0YXR1cy5jOjEzMzAKK21zZ2lkICJObyBjb21tYW5kcyByZW1haW5pbmcuIgorbXNnc3RyICJOZXNzdW4gY29tYW5kbyByaW1hbmVudGUuIgorCisjOiB3dC1zdGF0dXMuYzoxMzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIk5leHQgY29tbWFuZCB0byBkbyAoJWQgcmVtYWluaW5nIGNvbW1hbmQpOiIKK21zZ2lkX3BsdXJhbCAiTmV4dCBjb21tYW5kcyB0byBkbyAoJWQgcmVtYWluaW5nIGNvbW1hbmRzKToiCittc2dzdHJbMF0gIlByb3NzaW1vIGNvbWFuZG8gZGEgZXNlZ3VpcmUgKCVkIGNvbWFuZG8gcmltYW5lbnRlKToiCittc2dzdHJbMV0gIlByb3NzaW1pIGNvbWFuZGkgZGEgZXNlZ3VpcmUgKCVkIGNvbWFuZGkgcmltYW5lbnRpKToiCisKKyM6IHd0LXN0YXR1cy5jOjEzNDEKK21zZ2lkICIgICh1c2UgXCJnaXQgcmViYXNlIC0tZWRpdC10b2RvXCIgdG8gdmlldyBhbmQgZWRpdCkiCittc2dzdHIgIiIKKyIgICh1c2EgXCJnaXQgcmViYXNlIC0tZWRpdC10b2RvXCIgcGVyIHZpc3VhbGl6emFyZSBlIG1vZGlmaWNhcmUgbGUgIgorIm9wZXJhemlvbmkpIgorCisjOiB3dC1zdGF0dXMuYzoxMzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgorbXNnc3RyICJBdHR1YWxtZW50ZSBzdGFpIGVzZWd1ZW5kbyBpbCByZWJhc2UgZGVsIGJyYW5jaCAnJXMnIHN1ICclcycuIgorCisjOiB3dC1zdGF0dXMuYzoxMzU4Cittc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmViYXNpbmcuIgorbXNnc3RyICJBdHR1YWxtZW50ZSBzdGFpIGVzZWd1ZW5kbyB1biByZWJhc2UuIgorCisjOiB3dC1zdGF0dXMuYzoxMzcxCittc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCittc2dzdHIgIiAgKHJpc29sdmkgaSBjb25mbGl0dGkgZSBxdWluZGkgZXNlZ3VpIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgorCisjOiB3dC1zdGF0dXMuYzoxMzczCittc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgorbXNnc3RyICIgICh1c2EgXCJnaXQgcmViYXNlIC0tc2tpcFwiIHBlciBzYWx0YXJlIHF1ZXN0YSBwYXRjaCkiCisKKyM6IHd0LXN0YXR1cy5jOjEzNzUKK21zZ2lkICIgICh1c2UgXCJnaXQgcmViYXNlIC0tYWJvcnRcIiB0byBjaGVjayBvdXQgdGhlIG9yaWdpbmFsIGJyYW5jaCkiCittc2dzdHIgIiIKKyIgICh1c2EgXCJnaXQgcmViYXNlIC0tYWJvcnRcIiBwZXIgZXNlZ3VpcmUgaWwgY2hlY2tvdXQgZGVsIGJyYW5jaCBvcmlnaW5hcmlvKSIKKworIzogd3Qtc3RhdHVzLmM6MTM4MgorbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKK21zZ3N0ciAiIgorIiAgKHR1dHRpIGkgY29uZmxpdHRpIHNvbm8gc3RhdGkgcmlzb2x0aTogZXNlZ3VpIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgorCisjOiB3dC1zdGF0dXMuYzoxMzg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgYXJlIGN1cnJlbnRseSBzcGxpdHRpbmcgYSBjb21taXQgd2hpbGUgcmViYXNpbmcgYnJhbmNoICclcycgb24gJyVzJy4iCittc2dzdHIgIiIKKyJBdHR1YWxtZW50ZSBzdGFpIGRpdmlkZW5kbyB1biBjb21taXQgZHVyYW50ZSBpbCByZWJhc2UgZGVsIGJyYW5jaCAnJXMnIHN1ICIKKyInJXMnLiIKKworIzogd3Qtc3RhdHVzLmM6MTM5MQorbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHNwbGl0dGluZyBhIGNvbW1pdCBkdXJpbmcgYSByZWJhc2UuIgorbXNnc3RyICJBdHR1YWxtZW50ZSBzdGFpIGRpdmlkZW5kbyB1biBjb21taXQgZHVyYW50ZSB1biByZWJhc2UuIgorCisjOiB3dC1zdGF0dXMuYzoxMzk0Cittc2dpZCAiICAoT25jZSB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IGlzIGNsZWFuLCBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCittc2dzdHIgIiIKKyIgIChVbmEgdm9sdGEgY2hlIGxhIHR1YSBkaXJlY3RvcnkgZGkgbGF2b3JvIMOoIHB1bGl0YSwgZXNlZ3VpIFwiZ2l0IHJlYmFzZSAtLSIKKyJjb250aW51ZVwiKSIKKworIzogd3Qtc3RhdHVzLmM6MTM5OAorIywgYy1mb3JtYXQKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBlZGl0aW5nIGEgY29tbWl0IHdoaWxlIHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgorbXNnc3RyICIiCisiQXR0dWFsbWVudGUgc3RhaSBtb2RpZmljYW5kbyB1biBjb21taXQgZHVyYW50ZSBpbCByZWJhc2UgZGVsIGJyYW5jaCAnJXMnIHN1ICIKKyInJXMnLiIKKworIzogd3Qtc3RhdHVzLmM6MTQwMworbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGVkaXRpbmcgYSBjb21taXQgZHVyaW5nIGEgcmViYXNlLiIKK21zZ3N0ciAiQXR0dWFsbWVudGUgc3RhaSBtb2RpZmljYW5kbyB1biBjb21taXQgZHVyYW50ZSB1biByZWJhc2UuIgorCisjOiB3dC1zdGF0dXMuYzoxNDA2Cittc2dpZCAiICAodXNlIFwiZ2l0IGNvbW1pdCAtLWFtZW5kXCIgdG8gYW1lbmQgdGhlIGN1cnJlbnQgY29tbWl0KSIKK21zZ3N0ciAiICAodXNhIFwiZ2l0IGNvbW1pdCAtLWFtZW5kXCIgcGVyIGNvcnJlZ2dlcmUgaWwgY29tbWl0IGNvcnJlbnRlKSIKKworIzogd3Qtc3RhdHVzLmM6MTQwOAorbXNnaWQgIiIKKyIgICh1c2UgXCJnaXQgcmViYXNlIC0tY29udGludWVcIiBvbmNlIHlvdSBhcmUgc2F0aXNmaWVkIHdpdGggeW91ciBjaGFuZ2VzKSIKK21zZ3N0ciAiIgorIiAgKHVzYSBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiIHVuYSB2b2x0YSBzb2RkaXNmYXR0byBkZWxsZSB0dWUgbW9kaWZpY2hlKSIKKworIzogd3Qtc3RhdHVzLmM6MTQxOQorbXNnaWQgIkNoZXJyeS1waWNrIGN1cnJlbnRseSBpbiBwcm9ncmVzcy4iCittc2dzdHIgIkNoZXJyeS1waWNrIGluIGNvcnNvLiIKKworIzogd3Qtc3RhdHVzLmM6MTQyMgorIywgYy1mb3JtYXQKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBjaGVycnktcGlja2luZyBjb21taXQgJXMuIgorbXNnc3RyICJBdHR1YWxtZW50ZSBzdGFpIGVzZWd1ZW5kbyBpbCBjaGVycnktcGljayBkZWwgY29tbWl0ICVzLiIKKworIzogd3Qtc3RhdHVzLmM6MTQyOQorbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgorbXNnc3RyICIgIChyaXNvbHZpIGkgY29uZmxpdHRpIGVkIGVzZWd1aSBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgorCisjOiB3dC1zdGF0dXMuYzoxNDMyCittc2dpZCAiICAocnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB0byBjb250aW51ZSkiCittc2dzdHIgIiAgKGVzZWd1aSBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgcGVyIGNvbnRpbnVhcmUpIgorCisjOiB3dC1zdGF0dXMuYzoxNDM1Cittc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCittc2dzdHIgIiIKKyIgICh0dXR0aSBpIGNvbmZsaXR0aSBzb25vIHN0YXRpIHJpc29sdGk6IGVzZWd1aSBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlIgorIlwiKSIKKworIzogd3Qtc3RhdHVzLmM6MTQzNworbXNnaWQgIiAgKHVzZSBcImdpdCBjaGVycnktcGljayAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgorbXNnc3RyICIgICh1c2EgXCJnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXCIgcGVyIHNhbHRhcmUgcXVlc3RhIHBhdGNoKSIKKworIzogd3Qtc3RhdHVzLmM6MTQzOQorbXNnaWQgIiAgKHVzZSBcImdpdCBjaGVycnktcGljayAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSBjaGVycnktcGljayBvcGVyYXRpb24pIgorbXNnc3RyICIiCisiICAodXNhIFwiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnRcIiBwZXIgYW5udWxsYXJlIGwnb3BlcmF6aW9uZSBkaSBjaGVycnktcGljaykiCisKKyM6IHd0LXN0YXR1cy5jOjE0NDkKK21zZ2lkICJSZXZlcnQgY3VycmVudGx5IGluIHByb2dyZXNzLiIKK21zZ3N0ciAiUmV2ZXJ0IGluIGNvcnNvLiIKKworIzogd3Qtc3RhdHVzLmM6MTQ1MgorIywgYy1mb3JtYXQKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSByZXZlcnRpbmcgY29tbWl0ICVzLiIKK21zZ3N0ciAiQXR0dWFsbWVudGUgc3RhaSBlc2VndWVuZG8gaWwgcmV2ZXJ0IGRlbCBjb21taXQgJXMuIgorCisjOiB3dC1zdGF0dXMuYzoxNDU4Cittc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgorbXNnc3RyICIgIChyaXNvbHZpIGkgY29uZmxpdHRpIGVkIGVzZWd1aSBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiKSIKKworIzogd3Qtc3RhdHVzLmM6MTQ2MQorbXNnaWQgIiAgKHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiIHRvIGNvbnRpbnVlKSIKK21zZ3N0ciAiICAoZXNlZ3VpIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIgcGVyIGNvbnRpbnVhcmUpIgorCisjOiB3dC1zdGF0dXMuYzoxNDY0Cittc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgorbXNnc3RyICIiCisiICAodHV0dGkgaSBjb25mbGl0dGkgc29ubyBzdGF0aSByaXNvbHRpOiBlc2VndWkgXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCisKKyM6IHd0LXN0YXR1cy5jOjE0NjYKK21zZ2lkICIgICh1c2UgXCJnaXQgcmV2ZXJ0IC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCittc2dzdHIgIiAgKHVzYSBcImdpdCByZXZlcnQgLS1za2lwXCIgcGVyIHNhbHRhcmUgcXVlc3RhIHBhdGNoKSIKKworIzogd3Qtc3RhdHVzLmM6MTQ2OAorbXNnaWQgIiAgKHVzZSBcImdpdCByZXZlcnQgLS1hYm9ydFwiIHRvIGNhbmNlbCB0aGUgcmV2ZXJ0IG9wZXJhdGlvbikiCittc2dzdHIgIiAgKHVzYSBcImdpdCByZXZlcnQgLS1hYm9ydFwiIHBlciBhbm51bGxhcmUgbCdvcGVyYXppb25lIGRpIHJldmVydCkiCisKKyM6IHd0LXN0YXR1cy5jOjE0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgYmlzZWN0aW5nLCBzdGFydGVkIGZyb20gYnJhbmNoICclcycuIgorbXNnc3RyICJBdHR1YWxtZW50ZSBzdGFpIGVzZWd1ZW5kbyB1bmEgYmlzZXppb25lIHBhcnRlbmRvIGRhbCBicmFuY2ggJyVzJy4iCisKKyM6IHd0LXN0YXR1cy5jOjE0ODIKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcuIgorbXNnc3RyICJBdHR1YWxtZW50ZSBzdGFpIGVzZWd1ZW5kbyB1bmEgYmlzZXppb25lLiIKKworIzogd3Qtc3RhdHVzLmM6MTQ4NQorbXNnaWQgIiAgKHVzZSBcImdpdCBiaXNlY3QgcmVzZXRcIiB0byBnZXQgYmFjayB0byB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKK21zZ3N0ciAiICAodXNhIFwiZ2l0IGJpc2VjdCByZXNldFwiIHBlciB0b3JuYXJlIGFsIGJyYW5jaCBvcmlnaW5hcmlvKSIKKworIzogd3Qtc3RhdHVzLmM6MTY5NAorbXNnaWQgIk9uIGJyYW5jaCAiCittc2dzdHIgIlN1bCBicmFuY2ggIgorCisjOiB3dC1zdGF0dXMuYzoxNzAxCittc2dpZCAiaW50ZXJhY3RpdmUgcmViYXNlIGluIHByb2dyZXNzOyBvbnRvICIKK21zZ3N0ciAicmViYXNlIGludGVyYXR0aXZvIGluIGNvcnNvIHN1ICIKKworIzogd3Qtc3RhdHVzLmM6MTcwMworbXNnaWQgInJlYmFzZSBpbiBwcm9ncmVzczsgb250byAiCittc2dzdHIgInJlYmFzZSBpbiBjb3JzbyBzdSAiCisKKyM6IHd0LXN0YXR1cy5jOjE3MTMKK21zZ2lkICJOb3QgY3VycmVudGx5IG9uIGFueSBicmFuY2guIgorbXNnc3RyICJBdHR1YWxtZW50ZSBub24gc2VpIHN1IGFsY3VuIGJyYW5jaC4iCisKKyM6IHd0LXN0YXR1cy5jOjE3MzAKK21zZ2lkICJJbml0aWFsIGNvbW1pdCIKK21zZ3N0ciAiQ29tbWl0IGluaXppYWxlIgorCisjOiB3dC1zdGF0dXMuYzoxNzMxCittc2dpZCAiTm8gY29tbWl0cyB5ZXQiCittc2dzdHIgIk5vbiBjaSBzb25vIGFuY29yYSBjb21taXQiCisKKyM6IHd0LXN0YXR1cy5jOjE3NDUKK21zZ2lkICJVbnRyYWNrZWQgZmlsZXMiCittc2dzdHIgIkZpbGUgbm9uIHRyYWNjaWF0aSIKKworIzogd3Qtc3RhdHVzLmM6MTc0NworbXNnaWQgIklnbm9yZWQgZmlsZXMiCittc2dzdHIgIkZpbGUgaWdub3JhdGkiCisKKyM6IHd0LXN0YXR1cy5jOjE3NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGVudW1lcmF0ZSB1bnRyYWNrZWQgZmlsZXMuICdzdGF0dXMgLXVubydcbiIKKyJtYXkgc3BlZWQgaXQgdXAsIGJ1dCB5b3UgaGF2ZSB0byBiZSBjYXJlZnVsIG5vdCB0byBmb3JnZXQgdG8gYWRkXG4iCisibmV3IGZpbGVzIHlvdXJzZWxmIChzZWUgJ2dpdCBoZWxwIHN0YXR1cycpLiIKK21zZ3N0ciAiIgorIlNvbm8gc3RhdGkgbmVjZXNzYXJpICUuMmYgc2Vjb25kaSBwZXIgZWxlbmNhcmUgaSBmaWxlIG5vblxuIgorInRyYWNjaWF0aS4gJ3N0YXR1cyAtdW5vJyBwb3RyZWJiZSB2ZWxvY2l6emFyZSB0YWxlIG9wZXJhemlvbmUsXG4iCisibWEgZGV2aSBzdGFyZSBhdHRlbnRvIGEgbm9uIGRpbWVudGljYXJ0aSBkaSBhZ2dpdW5nZXJlXG4iCisiYXV0b25vbWFtZW50ZSBpIGZpbGUgbnVvdmkgKHZlZGkgJ2dpdCBoZWxwIHN0YXR1cycpLiIKKworIzogd3Qtc3RhdHVzLmM6MTc1NworIywgYy1mb3JtYXQKK21zZ2lkICJVbnRyYWNrZWQgZmlsZXMgbm90IGxpc3RlZCVzIgorbXNnc3RyICJGaWxlIG5vbiB0cmFjY2lhdGkgbm9uIGVsZW5jYXRpJXMiCisKKyM6IHd0LXN0YXR1cy5jOjE3NTkKK21zZ2lkICIgKHVzZSAtdSBvcHRpb24gdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpIgorbXNnc3RyICIgKHVzYSBsJ29wemlvbmUgLXUgcGVyIHZpc3VhbGl6emFyZSBpIGZpbGUgbm9uIHRyYWNjaWF0aSkiCisKKyM6IHd0LXN0YXR1cy5jOjE3NjUKK21zZ2lkICJObyBjaGFuZ2VzIgorbXNnc3RyICJOZXNzdW5hIG1vZGlmaWNhIgorCisjOiB3dC1zdGF0dXMuYzoxNzcwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGNoYW5nZXMgYWRkZWQgdG8gY29tbWl0ICh1c2UgXCJnaXQgYWRkXCIgYW5kL29yIFwiZ2l0IGNvbW1pdCAtYVwiKVxuIgorbXNnc3RyICIiCisibmVzc3VuYSBtb2RpZmljYSBhZ2dpdW50YSBhbCBjb21taXQgKHVzYSBcImdpdCBhZGRcIiBlL28gXCJnaXQgY29tbWl0IC1hXCIpXG4iCisKKyM6IHd0LXN0YXR1cy5jOjE3NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXRcbiIKK21zZ3N0ciAibmVzc3VuYSBtb2RpZmljYSBhZ2dpdW50YSBhbCBjb21taXRcbiIKKworIzogd3Qtc3RhdHVzLmM6MTc3NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibm90aGluZyBhZGRlZCB0byBjb21taXQgYnV0IHVudHJhY2tlZCBmaWxlcyBwcmVzZW50ICh1c2UgXCJnaXQgYWRkXCIgdG8gIgorInRyYWNrKVxuIgorbXNnc3RyICIiCisibm9uIMOoIHN0YXRvIGFnZ2l1bnRvIG51bGxhIGFsIGNvbW1pdCBtYSBzb25vIHByZXNlbnRpIGZpbGUgbm9uIHRyYWNjaWF0aSAiCisiKHVzYSBcImdpdCBhZGRcIiBwZXIgdHJhY2NpYXJsaSlcbiIKKworIzogd3Qtc3RhdHVzLmM6MTc3OQorIywgYy1mb3JtYXQKK21zZ2lkICJub3RoaW5nIGFkZGVkIHRvIGNvbW1pdCBidXQgdW50cmFja2VkIGZpbGVzIHByZXNlbnRcbiIKK21zZ3N0ciAiIgorIm5vbiDDqCBzdGF0byBhZ2dpdW50byBudWxsYSBhbCBjb21taXQgbWEgc29ubyBwcmVzZW50aSBmaWxlIG5vbiB0cmFjY2lhdGlcbiIKKworIzogd3Qtc3RhdHVzLmM6MTc4MgorIywgYy1mb3JtYXQKK21zZ2lkICJub3RoaW5nIHRvIGNvbW1pdCAoY3JlYXRlL2NvcHkgZmlsZXMgYW5kIHVzZSBcImdpdCBhZGRcIiB0byB0cmFjaylcbiIKK21zZ3N0ciAiIgorIm5vbiBjJ8OoIG51bGxhIGRpIGN1aSBlc2VndWlyZSBpbCBjb21taXQgKGNyZWEvY29waWEgZGVpIGZpbGUgZSB1c2EgXCJnaXQgYWRkIgorIlwiIHBlciB0cmFjY2lhcmxpKVxuIgorCisjOiB3dC1zdGF0dXMuYzoxNzg1IHd0LXN0YXR1cy5jOjE3OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aGluZyB0byBjb21taXRcbiIKK21zZ3N0ciAibm9uIGMnw6ggbnVsbGEgZGkgY3VpIGVzZWd1aXJlIGlsIGNvbW1pdFxuIgorCisjOiB3dC1zdGF0dXMuYzoxNzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0ICh1c2UgLXUgdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpXG4iCittc2dzdHIgIiIKKyJub24gYyfDqCBudWxsYSBkaSBjdWkgZXNlZ3VpcmUgaWwgY29tbWl0ICh1c2EgLXUgcGVyIHZpc3VhbGl6emFyZSBpIGZpbGUgbm9uICIKKyJ0cmFjY2lhdGkpXG4iCisKKyM6IHd0LXN0YXR1cy5jOjE3OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aGluZyB0byBjb21taXQsIHdvcmtpbmcgdHJlZSBjbGVhblxuIgorbXNnc3RyICJub24gYyfDqCBudWxsYSBkaSBjdWkgZXNlZ3VpcmUgaWwgY29tbWl0LCBsJ2FsYmVybyBkaSBsYXZvcm8gw6ggcHVsaXRvXG4iCisKKyM6IHd0LXN0YXR1cy5jOjE5MDUKK21zZ2lkICJObyBjb21taXRzIHlldCBvbiAiCittc2dzdHIgIk5vbiBjaSBzb25vIGFuY29yYSBjb21taXQgc3UiCisKKyM6IHd0LXN0YXR1cy5jOjE5MDkKK21zZ2lkICJIRUFEIChubyBicmFuY2gpIgorbXNnc3RyICJIRUFEIChuZXNzdW4gYnJhbmNoKSIKKworIzogd3Qtc3RhdHVzLmM6MTk0MAorbXNnaWQgImRpZmZlcmVudCIKK21zZ3N0ciAiZGlmZmVyZW50ZSIKKworIzogd3Qtc3RhdHVzLmM6MTk0MiB3dC1zdGF0dXMuYzoxOTUwCittc2dpZCAiYmVoaW5kICIKK21zZ3N0ciAiaW5kaWV0cm8gIgorCisjOiB3dC1zdGF0dXMuYzoxOTQ1IHd0LXN0YXR1cy5jOjE5NDgKK21zZ2lkICJhaGVhZCAiCittc2dzdHIgImF2YW50aSAiCisKKyMuIFRSQU5TTEFUT1JTOiB0aGUgYWN0aW9uIGlzIGUuZy4gInB1bGwgd2l0aCByZWJhc2UiCisjOiB3dC1zdGF0dXMuYzoyNDcwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCAlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlICVzOiBjaSBzb25vIGRlbGxlIG1vZGlmaWNoZSBub24gaW4gc3RhZ2luZy4iCisKKyM6IHd0LXN0YXR1cy5jOjI0NzYKK21zZ2lkICJhZGRpdGlvbmFsbHksIHlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCittc2dzdHIgIiIKKyJpbm9sdHJlLCBsJ2luZGljZSBjb250aWVuZSBtb2RpZmljaGUgZGkgY3VpIG5vbiDDqCBzdGF0byBlc2VndWl0byBpbCBjb21taXQuIgorCisjOiB3dC1zdGF0dXMuYzoyNDc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCAlczogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIGVzZWd1aXJlICVzOiBsJ2luZGljZSBjb250aWVuZSBtb2RpZmljaGUgZGkgY3VpIG5vbiDDqCBzdGF0byAiCisiZXNlZ3VpdG8gaWwgY29tbWl0LiIKKworIzogY29tcGF0L3ByZWNvbXBvc2VfdXRmOC5jOjU4IGJ1aWx0aW4vY2xvbmUuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHVubGluayAnJXMnIgorbXNnc3RyICJ1bmxpbmsgZGkgJyVzJyBub24gcml1c2NpdG8iCisKKyM6IGJ1aWx0aW4vYWRkLmM6MjYKK21zZ2lkICJnaXQgYWRkIFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKK21zZ3N0ciAiZ2l0IGFkZCBbPG9wemlvbmk+XSBbLS1dIDxzcGVjaWZpY2F0b3JlIHBlcmNvcnNvPi4uLiIKKworIzogYnVpbHRpbi9hZGQuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRpZmYgc3RhdHVzICVjIgorbXNnc3RyICJzdGF0byBkaWZmIGluYXR0ZXNvICVjIgorCisjOiBidWlsdGluL2FkZC5jOjkzIGJ1aWx0aW4vY29tbWl0LmM6Mjg4Cittc2dpZCAidXBkYXRpbmcgZmlsZXMgZmFpbGVkIgorbXNnc3RyICJhZ2dpb3JuYW1lbnRvIGRlaSBmaWxlIG5vbiByaXVzY2l0byIKKworIzogYnVpbHRpbi9hZGQuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZlICclcydcbiIKK21zZ3N0ciAiZWxpbWluYSAnJXMnXG4iCisKKyM6IGJ1aWx0aW4vYWRkLmM6MTc4Cittc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZWZyZXNoaW5nIHRoZSBpbmRleDoiCittc2dzdHIgIk1vZGlmaWNoZSBub24gbmVsbCdhcmVhIGRpIHN0YWdpbmcgZG9wbyBsJ2FnZ2lvcm5hbWVudG8gZGVsbCdpbmRpY2U6IgorCisjOiBidWlsdGluL2FkZC5jOjI2NiBidWlsdGluL3Jldi1wYXJzZS5jOjg5OQorbXNnaWQgIkNvdWxkIG5vdCByZWFkIHRoZSBpbmRleCIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgbGVnZ2VyZSBsJ2luZGljZSIKKworIzogYnVpbHRpbi9hZGQuYzoyNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZy4iCittc2dzdHIgIkltcG9zc2liaWxlIGFwcmlyZSAnJXMnIGluIHNjcml0dHVyYS4iCisKKyM6IGJ1aWx0aW4vYWRkLmM6MjgxCittc2dpZCAiQ291bGQgbm90IHdyaXRlIHBhdGNoIgorbXNnc3RyICJJbXBvc3NpYmlsZSBzY3JpdmVyZSBsYSBwYXRjaCIKKworIzogYnVpbHRpbi9hZGQuYzoyODQKK21zZ2lkICJlZGl0aW5nIHBhdGNoIGZhaWxlZCIKK21zZ3N0ciAibW9kaWZpY2EgZGVsbGEgcGF0Y2ggbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL2FkZC5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgc3RhdCAnJXMnIgorbXNnc3RyICJJbXBvc3NpYmlsZSBlc2VndWlyZSBsbyBzdGF0IGRpICclcyciCisKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg5Cittc2dpZCAiRW1wdHkgcGF0Y2guIEFib3J0ZWQuIgorbXNnc3RyICJQYXRjaCB2dW90YS4gT3BlcmF6aW9uZSBpbnRlcnJvdHRhLiIKKworIzogYnVpbHRpbi9hZGQuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGFwcGx5ICclcyciCittc2dzdHIgIkltcG9zc2liaWxlIGFwcGxpY2FyZSAnJXMnIgorCisjOiBidWlsdGluL2FkZC5jOjMwMgorbXNnaWQgIlRoZSBmb2xsb3dpbmcgcGF0aHMgYXJlIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczpcbiIKK21zZ3N0ciAiSSBzZWd1ZW50aSBwZXJjb3JzaSBzb25vIGlnbm9yYXRpIGRhIHVubyBkZWkgZmlsZSAuZ2l0aWdub3JlOlxuIgorCisjOiBidWlsdGluL2FkZC5jOjMyMiBidWlsdGluL2NsZWFuLmM6OTEwIGJ1aWx0aW4vZmV0Y2guYzoxNjMgYnVpbHRpbi9tdi5jOjEyNAorIzogYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1NiBidWlsdGluL3B1bGwuYzoyMDMgYnVpbHRpbi9wdXNoLmM6NTQ4CisjOiBidWlsdGluL3JlbW90ZS5jOjE0MjEgYnVpbHRpbi9ybS5jOjI0MiBidWlsdGluL3NlbmQtcGFjay5jOjE2NQorbXNnaWQgImRyeSBydW4iCittc2dzdHIgInRlc3QgY29udHJvbGxhdG8iCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzI1Cittc2dpZCAiaW50ZXJhY3RpdmUgcGlja2luZyIKK21zZ3N0ciAic2NlbHRhIGludGVyYXR0aXZhIgorCisjOiBidWlsdGluL2FkZC5jOjMyNiBidWlsdGluL2NoZWNrb3V0LmM6MTUxMSBidWlsdGluL3Jlc2V0LmM6MzA3Cittc2dpZCAic2VsZWN0IGh1bmtzIGludGVyYWN0aXZlbHkiCittc2dzdHIgInNlbGV6aW9uYSBnbGkgaHVuayBpbiBtb2RhbGl0w6AgaW50ZXJhdHRpdmEiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzI3Cittc2dpZCAiZWRpdCBjdXJyZW50IGRpZmYgYW5kIGFwcGx5IgorbXNnc3RyICJtb2RpZmljYSBpbCBkaWZmIGNvcnJlbnRlIGUgYXBwbGljYWxvIgorCisjOiBidWlsdGluL2FkZC5jOjMyOAorbXNnaWQgImFsbG93IGFkZGluZyBvdGhlcndpc2UgaWdub3JlZCBmaWxlcyIKK21zZ3N0ciAiY29uc2VudGkgbCdhZ2dpdW50YSBkaSBmaWxlIGFsdHJpbWVudGkgaWdub3JhdGkiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzI5Cittc2dpZCAidXBkYXRlIHRyYWNrZWQgZmlsZXMiCittc2dzdHIgImFnZ2lvcm5hIGkgZmlsZSB0cmFjY2lhdGkiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzMwCittc2dpZCAicmVub3JtYWxpemUgRU9MIG9mIHRyYWNrZWQgZmlsZXMgKGltcGxpZXMgLXUpIgorbXNnc3RyICJyaW5vcm1hbGl6emEgaSBmaW5lIHJpZ2EgZGVpIGZpbGUgdHJhY2NpYXRpIChpbXBsaWNhIC11KSIKKworIzogYnVpbHRpbi9hZGQuYzozMzEKK21zZ2lkICJyZWNvcmQgb25seSB0aGUgZmFjdCB0aGF0IHRoZSBwYXRoIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCittc2dzdHIgInNhbHZhIHNvbG8gaWwgZmF0dG8gY2hlIGlsIHBlcmNvcnNvIHNhcsOgIGFnZ2l1bnRvIHN1Y2Nlc3NpdmFtZW50ZSIKKworIzogYnVpbHRpbi9hZGQuYzozMzIKK21zZ2lkICJhZGQgY2hhbmdlcyBmcm9tIGFsbCB0cmFja2VkIGFuZCB1bnRyYWNrZWQgZmlsZXMiCittc2dzdHIgImFnZ2l1bmdpIGxlIG1vZGlmaWNoZSBkYSB0dXR0aSBpIGZpbGUgdHJhY2NpYXRpIGUgbm9uIgorCisjOiBidWlsdGluL2FkZC5jOjMzNQorbXNnaWQgImlnbm9yZSBwYXRocyByZW1vdmVkIGluIHRoZSB3b3JraW5nIHRyZWUgKHNhbWUgYXMgLS1uby1hbGwpIgorbXNnc3RyICJpZ25vcmEgaSBwZXJjb3JzaSBlbGltaW5hdGkgbmVsbCdhbGJlcm8gZGkgbGF2b3JvIChjb21lIC0tbm8tYWxsKSIKKworIzogYnVpbHRpbi9hZGQuYzozMzcKK21zZ2lkICJkb24ndCBhZGQsIG9ubHkgcmVmcmVzaCB0aGUgaW5kZXgiCittc2dzdHIgIm5vbiBlc2VndWlyZSBsJ2FnZ2l1bnRhLCBhZ2dpb3JuYSBzb2xvIGwnaW5kaWNlIgorCisjOiBidWlsdGluL2FkZC5jOjMzOAorbXNnaWQgImp1c3Qgc2tpcCBmaWxlcyB3aGljaCBjYW5ub3QgYmUgYWRkZWQgYmVjYXVzZSBvZiBlcnJvcnMiCittc2dzdHIgIiIKKyJzYWx0YSBzZW1wbGljZW1lbnRlIGkgZmlsZSBjaGUgbm9uIHBvc3Nvbm8gZXNzZXJlIGFnZ2l1bnRpIGEgY2F1c2EgZGkgZXJyb3JpIgorCisjOiBidWlsdGluL2FkZC5jOjMzOQorbXNnaWQgImNoZWNrIGlmIC0gZXZlbiBtaXNzaW5nIC0gZmlsZXMgYXJlIGlnbm9yZWQgaW4gZHJ5IHJ1biIKK21zZ3N0ciAiIgorImNvbnRyb2xsYSBzZSBpIGZpbGUgLSBhbmNoZSBxdWVsbGkgbWFuY2FudGkgLSBzb25vIGlnbm9yYXRpIGR1cmFudGUgaWwgdGVzdCAiCisiY29udHJvbGxhdG8iCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzQxIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwNAorbXNnaWQgIm92ZXJyaWRlIHRoZSBleGVjdXRhYmxlIGJpdCBvZiB0aGUgbGlzdGVkIGZpbGVzIgorbXNnc3RyICJlc2VndWkgbCdvdmVycmlkZSBkZWwgYml0IGVzZWd1aWJpbGUgZGVpIGZpbGUgZWxlbmNhdGkiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzQzCittc2dpZCAid2FybiB3aGVuIGFkZGluZyBhbiBlbWJlZGRlZCByZXBvc2l0b3J5IgorbXNnc3RyICJlbWV0dGkgdW4gYXZ2aXNvIHF1YW5kbyBzaSBhZ2dpdW5nZSB1biByZXBvc2l0b3J5IGluY29ycG9yYXRvIgorCisjOiBidWlsdGluL2FkZC5jOjM0NQorbXNnaWQgImJhY2tlbmQgZm9yIGBnaXQgc3Rhc2ggLXBgIgorbXNnc3RyICJiYWNrZW5kIHBlciBgZ2l0IHN0YXNoIC1wYCIKKworIzogYnVpbHRpbi9hZGQuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSd2ZSBhZGRlZCBhbm90aGVyIGdpdCByZXBvc2l0b3J5IGluc2lkZSB5b3VyIGN1cnJlbnQgcmVwb3NpdG9yeS5cbiIKKyJDbG9uZXMgb2YgdGhlIG91dGVyIHJlcG9zaXRvcnkgd2lsbCBub3QgY29udGFpbiB0aGUgY29udGVudHMgb2ZcbiIKKyJ0aGUgZW1iZWRkZWQgcmVwb3NpdG9yeSBhbmQgd2lsbCBub3Qga25vdyBob3cgdG8gb2J0YWluIGl0LlxuIgorIklmIHlvdSBtZWFudCB0byBhZGQgYSBzdWJtb2R1bGUsIHVzZTpcbiIKKyJcbiIKKyJcdGdpdCBzdWJtb2R1bGUgYWRkIDx1cmw+ICVzXG4iCisiXG4iCisiSWYgeW91IGFkZGVkIHRoaXMgcGF0aCBieSBtaXN0YWtlLCB5b3UgY2FuIHJlbW92ZSBpdCBmcm9tIHRoZVxuIgorImluZGV4IHdpdGg6XG4iCisiXG4iCisiXHRnaXQgcm0gLS1jYWNoZWQgJXNcbiIKKyJcbiIKKyJTZWUgXCJnaXQgaGVscCBzdWJtb2R1bGVcIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJIYWkgYWdnaXVudG8gdW4gYWx0cm8gcmVwb3NpdG9yeSBHaXQgYWxsJ2ludGVybm8gZGVsIHJlcG9zaXRvcnlcbiIKKyJjb3JyZW50ZS4gSSBjbG9uaSBkZWwgcmVwb3NpdG9yeSBlc3Rlcm5vIG5vbiBjb250ZXJyYW5ubyBpXG4iCisiY29udGVudXRpIGRlbCByZXBvc2l0b3J5IGluY29ycG9yYXRvIGUgbm9uIHNhcHJhbm5vIGNvbWUgb3R0ZW5lcmxpLlxuIgorIlNlIGludGVuZGV2aSBhZ2dpdW5nZXJlIHVuIHNvdHRvbW9kdWxvLCB1c2E6XG4iCisiXG4iCisiXHRnaXQgc3VibW9kdWxlIGFkZCA8dXJsPiAlc1xuIgorIlxuIgorIlNlIGhhaSBhZ2dpdW50byBxdWVzdG8gcGVyY29yc28gcGVyIGVycm9yZSwgcHVvaSByaW11b3ZlcmxvXG4iCisiZGFsbCdpbmRpY2UgY29uOlxuIgorIlxuIgorIlx0Z2l0IHJtIC0tY2FjaGVkICVzXG4iCisiXG4iCisiVmVkaSBcImdpdCBoZWxwIHN1Ym1vZHVsZVwiIHBlciB1bHRlcmlvcmkgaW5mb3JtYXppb25pLiIKKworIzogYnVpbHRpbi9hZGQuYzozOTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWRkaW5nIGVtYmVkZGVkIGdpdCByZXBvc2l0b3J5OiAlcyIKK21zZ3N0ciAiYWdnaXVudGEgcmVwb3NpdG9yeSBHaXQgaW5jb3Jwb3JhdG8gaW4gY29yc286ICVzIgorCisjOiBidWlsdGluL2FkZC5jOjQxMAorbXNnaWQgIiIKKyJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCB0aGVtLlxuIgorIlR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieSBydW5uaW5nXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRJZ25vcmVkRmlsZSBmYWxzZVwiIgorbXNnc3RyICIiCisiVXNhIC1mIHNlIHZ1b2kgdmVyYW1lbnRlIGFnZ2l1bmdlcmxpLlxuIgorIlBlciBkaXNhYmlsaXRhcmUgcXVlc3RvIG1lc3NhZ2dpbywgZXNlZ3VpXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRJZ25vcmVkRmlsZSBmYWxzZVwiIgorCisjOiBidWlsdGluL2FkZC5jOjQxOQorbXNnaWQgImFkZGluZyBmaWxlcyBmYWlsZWQiCittc2dzdHIgImFnZ2l1bnRhIGRlaSBmaWxlIG5vbiByaXVzY2l0YSIKKworIzogYnVpbHRpbi9hZGQuYzo0NDcgYnVpbHRpbi9jb21taXQuYzozNDgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWludGVyYWN0aXZlLy0tcGF0Y2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIG5vbiDDqCBjb21wYXRpYmlsZSBjb24gLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIgorCisjOiBidWlsdGluL2FkZC5jOjQ2NAorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tZWRpdCIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgbm9uIMOoIGNvbXBhdGliaWxlIGNvbiAtLWVkaXQiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDc2Cittc2dpZCAiLUEgYW5kIC11IGFyZSBtdXR1YWxseSBpbmNvbXBhdGlibGUiCittc2dzdHIgIi1BIGUgLXUgbm9uIHNvbm8gY29tcGF0aWJpbGkgZnJhIGxvcm8iCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDc5Cittc2dpZCAiT3B0aW9uIC0taWdub3JlLW1pc3NpbmcgY2FuIG9ubHkgYmUgdXNlZCB0b2dldGhlciB3aXRoIC0tZHJ5LXJ1biIKK21zZ3N0ciAiTCdvcHppb25lIC0taWdub3JlLW1pc3NpbmcgcHXDsiBlc3NlcmUgdXNhdGEgc29sbyBjb24gLS1kcnktcnVuIgorCisjOiBidWlsdGluL2FkZC5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICItLWNobW9kIHBhcmFtICclcycgbXVzdCBiZSBlaXRoZXIgLXggb3IgK3giCittc2dzdHIgIklsIHBhcmFtZXRybyAtLWNobW9kICclcycgZGV2ZSBlc3NlcmUgLXggbyAreCIKKworIzogYnVpbHRpbi9hZGQuYzo1MDEgYnVpbHRpbi9jaGVja291dC5jOjE2NzUgYnVpbHRpbi9jb21taXQuYzozNTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMjcgYnVpbHRpbi9ybS5jOjI3MiBidWlsdGluL3N0YXNoLmM6MTUwOQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorIi0tcGF0aHNwZWMtZnJvbS1maWxlIG5vbiDDqCBjb21wYXRpYmlsZSBjb24gZ2xpIGFyZ29tZW50aSBzcGVjaWZpY2F0b3JlICIKKyJwZXJjb3JzbyIKKworIzogYnVpbHRpbi9hZGQuYzo1MDggYnVpbHRpbi9jaGVja291dC5jOjE2ODcgYnVpbHRpbi9jb21taXQuYzozNjAKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMzMgYnVpbHRpbi9ybS5jOjI3OCBidWlsdGluL3N0YXNoLmM6MTUxNQorbXNnaWQgIi0tcGF0aHNwZWMtZmlsZS1udWwgcmVxdWlyZXMgLS1wYXRoc3BlYy1mcm9tLWZpbGUiCittc2dzdHIgIi0tcGF0aHNwZWMtZmlsZS1udWwgcmljaGllZGUgLS1wYXRoc3BlYy1mcm9tLWZpbGUiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdGhpbmcgc3BlY2lmaWVkLCBub3RoaW5nIGFkZGVkLlxuIgorbXNnc3RyICJOb24gw6ggc3RhdG8gc3BlY2lmaWNhdG8gbnVsbGEsIG5vbiDDqCBzdGF0byBhZ2dpdW50byBudWxsYS5cbiIKKworIzogYnVpbHRpbi9hZGQuYzo1MTQKK21zZ2lkICIiCisiTWF5YmUgeW91IHdhbnRlZCB0byBzYXkgJ2dpdCBhZGQgLic/XG4iCisiVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5IHJ1bm5pbmdcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZEVtcHR5UGF0aHNwZWMgZmFsc2VcIiIKK21zZ3N0ciAiIgorIkZvcnNlIHZvbGV2aSBkaXJlICdnaXQgYWRkIC4nP1xuIgorIlBlciBkaXNhYmlsaXRhcmUgcXVlc3RvIG1lc3NhZ2dpbywgZXNlZ3VpXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRFbXB0eVBhdGhzcGVjIGZhbHNlXCIiCisKKyM6IGJ1aWx0aW4vYW0uYzozNTIKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgYXV0aG9yIHNjcmlwdCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYW5hbGl6emFyZSBsbyBzY3JpcHQgYXV0aG9yIgorCisjOiBidWlsdGluL2FtLmM6NDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgd2FzIGRlbGV0ZWQgYnkgdGhlIGFwcGx5cGF0Y2gtbXNnIGhvb2siCittc2dzdHIgIiclcycgw6ggc3RhdG8gZWxpbWluYXRvIGRhbGwnaG9vayBhcHBseXBhdGNoLW1zZyIKKworIzogYnVpbHRpbi9hbS5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICJNYWxmb3JtZWQgaW5wdXQgbGluZTogJyVzJy4iCittc2dzdHIgIlJpZ2EgZGkgaW5wdXQgbWFsZm9ybWF0YTogJyVzJy4iCisKKyM6IGJ1aWx0aW4vYW0uYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIGNvcHkgbm90ZXMgZnJvbSAnJXMnIHRvICclcyciCittc2dzdHIgIkNvcGlhIGRlbGxlIG5vdGUgZGEgJyVzJyBhICclcycgbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL2FtLmM6NTQyCittc2dpZCAiZnNlZWsgZmFpbGVkIgorbXNnc3RyICJmc2VlayBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vYW0uYzo3MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIHBhdGNoICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgbGEgcGF0Y2ggJyVzJyIKKworIzogYnVpbHRpbi9hbS5jOjc5NQorbXNnaWQgIk9ubHkgb25lIFN0R0lUIHBhdGNoIHNlcmllcyBjYW4gYmUgYXBwbGllZCBhdCBvbmNlIgorbXNnc3RyICJQdcOyIGVzc2VyZSBhcHBsaWNhdGEgc29sbyB1bmEgc2VyaWUgZGkgcGF0Y2ggU3RHSVQgcGVyIHZvbHRhIgorCisjOiBidWlsdGluL2FtLmM6ODQzCittc2dpZCAiaW52YWxpZCB0aW1lc3RhbXAiCittc2dzdHIgInRpbWVzdGFtcCBub24gdmFsaWRvIgorCisjOiBidWlsdGluL2FtLmM6ODQ4IGJ1aWx0aW4vYW0uYzo4NjAKK21zZ2lkICJpbnZhbGlkIERhdGUgbGluZSIKK21zZ3N0ciAicmlnYSBEYXRlIG5vbiB2YWxpZGEiCisKKyM6IGJ1aWx0aW4vYW0uYzo4NTUKK21zZ2lkICJpbnZhbGlkIHRpbWV6b25lIG9mZnNldCIKK21zZ3N0ciAib2Zmc2V0IGZ1c28gb3JhcmlvIG5vbiB2YWxpZG8iCisKKyM6IGJ1aWx0aW4vYW0uYzo5NDgKK21zZ2lkICJQYXRjaCBmb3JtYXQgZGV0ZWN0aW9uIGZhaWxlZC4iCittc2dzdHIgIlJpbGV2YW1lbnRvIGRlbCBmb3JtYXRvIGRlbGxhIHBhdGNoIG5vbiByaXVzY2l0by4iCisKKyM6IGJ1aWx0aW4vYW0uYzo5NTMgYnVpbHRpbi9jbG9uZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJjcmVhemlvbmUgZGVsbGEgZGlyZWN0b3J5ICclcycgbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL2FtLmM6OTU4Cittc2dpZCAiRmFpbGVkIHRvIHNwbGl0IHBhdGNoZXMuIgorbXNnc3RyICJEaXZpc2lvbmUgZGVsbGUgcGF0Y2ggbm9uIHJpdXNjaXRhLiIKKworIzogYnVpbHRpbi9hbS5jOjEwODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2hlbiB5b3UgaGF2ZSByZXNvbHZlZCB0aGlzIHByb2JsZW0sIHJ1biBcIiVzIC0tY29udGludWVcIi4iCittc2dzdHIgIlVuYSB2b2x0YSByaXNvbHRvIHF1ZXN0byBwcm9ibGVtYSwgZXNlZ3VpIFwiJXMgLS1jb250aW51ZVwiLiIKKworIzogYnVpbHRpbi9hbS5jOjEwOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSWYgeW91IHByZWZlciB0byBza2lwIHRoaXMgcGF0Y2gsIHJ1biBcIiVzIC0tc2tpcFwiIGluc3RlYWQuIgorbXNnc3RyICJTZSBwcmVmZXJpc2NpIHNhbHRhcmUgcXVlc3RhIHBhdGNoLCBlc2VndWkgaW52ZWNlIFwiJXMgLS1za2lwXCIuIgorCisjOiBidWlsdGluL2FtLmM6MTA5MQorIywgYy1mb3JtYXQKK21zZ2lkICJUbyByZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIHN0b3AgcGF0Y2hpbmcsIHJ1biBcIiVzIC0tYWJvcnRcIi4iCittc2dzdHIgIiIKKyJQZXIgcmlwcmlzdGluYXJlIGlsIGJyYW5jaCBvcmlnaW5hcmlvIGUgdGVybWluYXJlIGlsIHBhdGNoaW5nLCBlc2VndWkgXCIlcyAtLSIKKyJhYm9ydFwiLiIKKworIzogYnVpbHRpbi9hbS5jOjExNzQKK21zZ2lkICJQYXRjaCBzZW50IHdpdGggZm9ybWF0PWZsb3dlZDsgc3BhY2UgYXQgdGhlIGVuZCBvZiBsaW5lcyBtaWdodCBiZSBsb3N0LiIKK21zZ3N0ciAiIgorIlBhdGNoIGludmlhdGEgY29uIGZvcm1hdD1mbG93ZWQ7IGdsaSBzcGF6aSBhbCB0ZXJtaW5lIGRlbGxlIHJpZ2hlIHBvdHJlYmJlcm8gIgorImVzc2VyZSBhbmRhdGkgcGVyZHV0aS4iCisKKyM6IGJ1aWx0aW4vYW0uYzoxMjAyCittc2dpZCAiUGF0Y2ggaXMgZW1wdHkuIgorbXNnc3RyICJMYSBwYXRjaCDDqCB2dW90YS4iCisKKyM6IGJ1aWx0aW4vYW0uYzoxMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgYXV0aG9yIGxpbmUgaW4gY29tbWl0ICVzIgorbXNnc3RyICJyaWdhIGF1dG9yZSBtYW5jYW50ZSBuZWwgY29tbWl0ICVzIgorCisjOiBidWlsdGluL2FtLmM6MTI3MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGlkZW50IGxpbmU6ICUuKnMiCittc2dzdHIgInJpZ2EgaWRlbnQgbm9uIHZhbGlkYTogJS4qcyIKKworIzogYnVpbHRpbi9hbS5jOjE0ODkKK21zZ2lkICJSZXBvc2l0b3J5IGxhY2tzIG5lY2Vzc2FyeSBibG9icyB0byBmYWxsIGJhY2sgb24gMy13YXkgbWVyZ2UuIgorbXNnc3RyICIiCisiRGFsIHJlcG9zaXRvcnkgbWFuY2FubyBpIGJsb2IgbmVjZXNzYXJpIHBlciByaXBpZWdhcmUgc3VsIG1lcmdlIGEgdHJlIHZpZS4iCisKKyM6IGJ1aWx0aW4vYW0uYzoxNDkxCittc2dpZCAiVXNpbmcgaW5kZXggaW5mbyB0byByZWNvbnN0cnVjdCBhIGJhc2UgdHJlZS4uLiIKK21zZ3N0ciAiIgorIlV0aWxpenpvIGxlIGluZm9ybWF6aW9uaSBkZWxsJ2luZGljZSBwZXIgcmljb3N0cnVpcmUgdW4gYWxiZXJvIGRpIGJhc2UuLi4iCisKKyM6IGJ1aWx0aW4vYW0uYzoxNTEwCittc2dpZCAiIgorIkRpZCB5b3UgaGFuZCBlZGl0IHlvdXIgcGF0Y2g/XG4iCisiSXQgZG9lcyBub3QgYXBwbHkgdG8gYmxvYnMgcmVjb3JkZWQgaW4gaXRzIGluZGV4LiIKK21zZ3N0ciAiIgorIkhhaSBtb2RpZmljYXRvIG1hbnVhbG1lbnRlIGxhIHBhdGNoP1xuIgorIk5vbiBwdcOyIGVzc2VyZSBhcHBsaWNhdGEgYWkgYmxvYiByZWdpc3RyYXRpIG5lbCBzdW8gaW5kaWNlLiIKKworIzogYnVpbHRpbi9hbS5jOjE1MTYKK21zZ2lkICJGYWxsaW5nIGJhY2sgdG8gcGF0Y2hpbmcgYmFzZSBhbmQgMy13YXkgbWVyZ2UuLi4iCittc2dzdHIgIlJpcGllZ28gc3VsIHBhdGNoaW5nIGRlbGxhIGJhc2UgZSBzdWwgbWVyZ2UgYSB0cmUgdmllLi4uIgorCisjOiBidWlsdGluL2FtLmM6MTU0MgorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBpbiB0aGUgY2hhbmdlcy4iCittc2dzdHIgIk1lcmdlIGRlbGxlIG1vZGlmaWNoZSBub24gcml1c2NpdG8uIgorCisjOiBidWlsdGluL2FtLmM6MTU3NAorbXNnaWQgImFwcGx5aW5nIHRvIGFuIGVtcHR5IGhpc3RvcnkiCittc2dzdHIgImFwcGxpY2F6aW9uZSBhIHVuYSBjcm9ub2xvZ2lhIHZ1b3RhIgorCisjOiBidWlsdGluL2FtLmM6MTYyMSBidWlsdGluL2FtLmM6MTYyNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVzdW1lOiAlcyBkb2VzIG5vdCBleGlzdC4iCittc2dzdHIgImltcG9zc2liaWxlIHJpcHJlbmRlcmUgbCdhdHRpdml0w6A6ICVzIG5vbiBlc2lzdGUuIgorCisjOiBidWlsdGluL2FtLmM6MTY0MworbXNnaWQgIkNvbW1pdCBCb2R5IGlzOiIKK21zZ3N0ciAiSWwgY29ycG8gZGVsIGNvbW1pdCDDqDoiCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbeV0sIFtuXSwgW2VdLCBbdl0gYW5kIFthXQorIy4gaW4geW91ciB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoCisjLiBpbnB1dCBhdCB0aGlzIHBvaW50LgorIy4KKyM6IGJ1aWx0aW4vYW0uYzoxNjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkFwcGx5PyBbeV1lcy9bbl1vL1tlXWRpdC9bdl1pZXcgcGF0Y2gvW2FdY2NlcHQgYWxsOiAiCittc2dzdHIgIiIKKyJBcHBsaWNvPyBTw6wgW3ldL05vIFtuXS9Nb2RpZmljYSBbZV0vW1ZdaXN1YWxpenphIHBhdGNoL1tBXWNjZXR0YSB0dXR0bzoiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNzAwIGJ1aWx0aW4vY29tbWl0LmM6Mzk4Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGluZGV4IGZpbGUiCittc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGlsIGZpbGUgaW5kaWNlIgorCisjOiBidWlsdGluL2FtLmM6MTcwNAorIywgYy1mb3JtYXQKK21zZ2lkICJEaXJ0eSBpbmRleDogY2Fubm90IGFwcGx5IHBhdGNoZXMgKGRpcnR5OiAlcykiCittc2dzdHIgIkluZGljZSBzcG9yY286IGltcG9zc2liaWxlIGFwcGxpY2FyZSBsZSBwYXRjaCAoZWxlbWVudG8gc3BvcmNvOiAlcykiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNzQ0IGJ1aWx0aW4vYW0uYzoxODEyCisjLCBjLWZvcm1hdAorbXNnaWQgIkFwcGx5aW5nOiAlLipzIgorbXNnc3RyICJBcHBsaWNhemlvbmUgaW4gY29yc286ICUuKnMiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNzYxCittc2dpZCAiTm8gY2hhbmdlcyAtLSBQYXRjaCBhbHJlYWR5IGFwcGxpZWQuIgorbXNnc3RyICJOZXNzdW5hIG1vZGlmaWNhIC0tIHBhdGNoIGdpw6AgYXBwbGljYXRhLiIKKworIzogYnVpbHRpbi9hbS5jOjE3NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGF0Y2ggZmFpbGVkIGF0ICVzICUuKnMiCittc2dzdHIgIlBhdGNoIG5vbiByaXVzY2l0YSBhICVzICUuKnMiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNzcxCittc2dpZCAiVXNlICdnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2g9ZGlmZicgdG8gc2VlIHRoZSBmYWlsZWQgcGF0Y2giCittc2dzdHIgIiIKKyJVc2EgJ2dpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaD1kaWZmJyBwZXIgdmlzdWFsaXp6YXJlIGxhIHBhdGNoIG5vbiByaXVzY2l0YSIKKworIzogYnVpbHRpbi9hbS5jOjE4MTUKK21zZ2lkICIiCisiTm8gY2hhbmdlcyAtIGRpZCB5b3UgZm9yZ2V0IHRvIHVzZSAnZ2l0IGFkZCc/XG4iCisiSWYgdGhlcmUgaXMgbm90aGluZyBsZWZ0IHRvIHN0YWdlLCBjaGFuY2VzIGFyZSB0aGF0IHNvbWV0aGluZyBlbHNlXG4iCisiYWxyZWFkeSBpbnRyb2R1Y2VkIHRoZSBzYW1lIGNoYW5nZXM7IHlvdSBtaWdodCB3YW50IHRvIHNraXAgdGhpcyBwYXRjaC4iCittc2dzdHIgIiIKKyJOZXNzdW5hIG1vZGlmaWNhIC0gdGkgc2VpIGRpbWVudGljYXRvIGRpIHVzYXJlICdnaXQgYWRkJz9cbiIKKyJTZSBub24gcmltYW5lIG51bGxhIGRhIGFnZ2l1bmdlcmUgYWxsJ2FyZWEgZGkgc3RhZ2luZywgZm9yc2UgcXVhbGNvcydhbHRyb1xuIgorImhhIGdpw6AgaW50cm9kb3R0byBsZSBzdGVzc2UgbW9kaWZpY2hlOyBwb3RyZXN0aSB2b2xlciBzYWx0YXJlIHF1ZXN0YSBwYXRjaC4iCisKKyM6IGJ1aWx0aW4vYW0uYzoxODIyCittc2dpZCAiIgorIllvdSBzdGlsbCBoYXZlIHVubWVyZ2VkIHBhdGhzIGluIHlvdXIgaW5kZXguXG4iCisiWW91IHNob3VsZCAnZ2l0IGFkZCcgZWFjaCBmaWxlIHdpdGggcmVzb2x2ZWQgY29uZmxpY3RzIHRvIG1hcmsgdGhlbSBhcyAiCisic3VjaC5cbiIKKyJZb3UgbWlnaHQgcnVuIGBnaXQgcm1gIG9uIGEgZmlsZSB0byBhY2NlcHQgXCJkZWxldGVkIGJ5IHRoZW1cIiBmb3IgaXQuIgorbXNnc3RyICIiCisiTmVsbCdpbmRpY2UgaGFpIGFuY29yYSBkZWkgcGVyY29yc2kgZGkgY3VpIG5vbiDDqCBzdGF0byBlc2VndWl0byBpbCBtZXJnZS5cbiIKKyJEb3ZyZXN0aSBlc2VndWlyZSAnZ2l0IGFkZCcgc3Ugb2duaSBmaWxlIGkgY3VpIGNvbmZsaXR0aSBzb25vIHN0YXRpIHJpc29sdGkgIgorInBlciBjb250cmFzc2VnbmFybGkgY29tZSB0YWxpLlxuIgorIlBvdHJlc3RpIGVzZWd1aXJlIGBnaXQgcm1gIHN1IHVuIGZpbGUgcGVyIGFjY2V0dGFybmUgbGEgcmlzb2x1emlvbmUgIgorIlwiZWxpbWluYXRvIGRhIGxvcm9cIi4iCisKKyM6IGJ1aWx0aW4vYW0uYzoxOTI5IGJ1aWx0aW4vYW0uYzoxOTMzIGJ1aWx0aW4vYW0uYzoxOTQ1IGJ1aWx0aW4vcmVzZXQuYzozNDYKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnLiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgYW5hbGl6emFyZSBsJ29nZ2V0dG8gJyVzJy4iCisKKyM6IGJ1aWx0aW4vYW0uYzoxOTgxCittc2dpZCAiZmFpbGVkIHRvIGNsZWFuIGluZGV4IgorbXNnc3RyICJwdWxpemlhIGRlbGwnaW5kaWNlIG5vbiByaXVzY2l0YSIKKworIzogYnVpbHRpbi9hbS5jOjIwMjUKK21zZ2lkICIiCisiWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFEIHNpbmNlIHRoZSBsYXN0ICdhbScgZmFpbHVyZS5cbiIKKyJOb3QgcmV3aW5kaW5nIHRvIE9SSUdfSEVBRCIKK21zZ3N0ciAiIgorIlNlbWJyYSBjaGUgdHUgYWJiaWEgc3Bvc3RhdG8gSEVBRCBkYWxsJ3VsdGltYSBlc2VjdXppb25lIG5vbiByaXVzY2l0YSBkaSAiCisiJ2FtJy5cbiIKKyJOb24gcml0b3JubyBpbmRpZXRybyBhIE9SSUdfSEVBRCIKKworIzogYnVpbHRpbi9hbS5jOjIxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgLS1wYXRjaC1mb3JtYXQ6ICVzIgorbXNnc3RyICJWYWxvcmUgbm9uIHZhbGlkbyBwZXIgLS1wYXRjaC1mb3JtYXQ6ICVzIgorCisjOiBidWlsdGluL2FtLmM6MjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciAtLXNob3ctY3VycmVudC1wYXRjaDogJXMiCittc2dzdHIgIlZhbG9yZSBub24gdmFsaWRvIHBlciAtLXNob3ctY3VycmVudC1wYXRjaDogJXMiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIgorbXNnc3RyICItLXNob3ctY3VycmVudC1wYXRjaD0lcyBub24gw6ggY29tcGF0aWJpbGUgY29uIC0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIgorCisjOiBidWlsdGluL2FtLmM6MjIwNworbXNnaWQgImdpdCBhbSBbPG9wdGlvbnM+XSBbKDxtYm94PiB8IDxNYWlsZGlyPikuLi5dIgorbXNnc3RyICJnaXQgYW0gWzxvcHppb25pPl0gWyg8bWJveD4gfCA8TWFpbGRpcj4pLi4uXSIKKworIzogYnVpbHRpbi9hbS5jOjIyMDgKK21zZ2lkICJnaXQgYW0gWzxvcHRpb25zPl0gKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0KSIKK21zZ3N0ciAiZ2l0IGFtIFs8b3B6aW9uaT5dICgtLWNvbnRpbnVlIHwgLS1za2lwIHwgLS1hYm9ydCkiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjE0Cittc2dpZCAicnVuIGludGVyYWN0aXZlbHkiCittc2dzdHIgImVzZWd1aSBpbiBtb2RhbGl0w6AgaW50ZXJhdHRpdmEiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjE2Cittc2dpZCAiaGlzdG9yaWNhbCBvcHRpb24gLS0gbm8tb3AiCittc2dzdHIgIm9wemlvbmUgc3RvcmljYSAtLSBub24gZXNlZ3VlIG51bGxhIgorCisjOiBidWlsdGluL2FtLmM6MjIxOAorbXNnaWQgImFsbG93IGZhbGwgYmFjayBvbiAzd2F5IG1lcmdpbmcgaWYgbmVlZGVkIgorbXNnc3RyICJjb25zZW50aSBpbCByaXBpZWdvIHN1bCBtZXJnZSBhIHRyZSB2aWUgc2UgbmVjZXNzYXJpbyIKKworIzogYnVpbHRpbi9hbS5jOjIyMTkgYnVpbHRpbi9pbml0LWRiLmM6NDk0IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA0IGJ1aWx0aW4vc3Rhc2guYzo4MTIKK21zZ2lkICJiZSBxdWlldCIKK21zZ3N0ciAibm9uIHZpc3VhbGl6emFyZSBtZXNzYWdnaSIKKworIzogYnVpbHRpbi9hbS5jOjIyMjEKK21zZ2lkICJhZGQgYSBTaWduZWQtb2ZmLWJ5IGxpbmUgdG8gdGhlIGNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICJhZ2dpdW5naSB1bmEgcmlnYSBTaWduZWQtb2ZmLWJ5IGFsIG1lc3NhZ2dpbyBkaSBjb21taXQiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjI0Cittc2dpZCAicmVjb2RlIGludG8gdXRmOCAoZGVmYXVsdCkiCittc2dzdHIgImNvbnZlcnRpIGNvZGlmaWNhIGluIFVURi04IChpbXBvc3RhemlvbmUgcHJlZGVmaW5pdGEpIgorCisjOiBidWlsdGluL2FtLmM6MjIyNgorbXNnaWQgInBhc3MgLWsgZmxhZyB0byBnaXQtbWFpbGluZm8iCittc2dzdHIgImZvcm5pc2NpIGwnYXJnb21lbnRvIC1rIGEgZ2l0LW1haWxpbmZvIgorCisjOiBidWlsdGluL2FtLmM6MjIyOAorbXNnaWQgInBhc3MgLWIgZmxhZyB0byBnaXQtbWFpbGluZm8iCittc2dzdHIgImZvcm5pc2NpIGwnYXJnb21lbnRvIC1iIGEgZ2l0LW1haWxpbmZvIgorCisjOiBidWlsdGluL2FtLmM6MjIzMAorbXNnaWQgInBhc3MgLW0gZmxhZyB0byBnaXQtbWFpbGluZm8iCittc2dzdHIgImZvcm5pc2NpIGwnYXJnb21lbnRvIC1tIGEgZ2l0LW1haWxpbmZvIgorCisjOiBidWlsdGluL2FtLmM6MjIzMgorbXNnaWQgInBhc3MgLS1rZWVwLWNyIGZsYWcgdG8gZ2l0LW1haWxzcGxpdCBmb3IgbWJveCBmb3JtYXQiCittc2dzdHIgImZvcm5pc2NpIGEgZ2l0LW1haWxzcGxpdCBsJ2FyZ29tZW50byAtLWtlZXAtY3IgcGVyIGlsIGZvcm1hdG8gbWJveCIKKworIzogYnVpbHRpbi9hbS5jOjIyMzUKK21zZ2lkICJkbyBub3QgcGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGluZGVwZW5kZW50IG9mIGFtLmtlZXBjciIKK21zZ3N0ciAiIgorIm5vbiBmb3JuaXJlIGwnYXJnb21lbnRvIC0ta2VlcC1jciBhIGdpdC1tYWlsc3BsaXQgaW5kaXBlbmRlbnRlbWVudGUgZGFsICIKKyJ2YWxvcmUgZGkgYW0ua2VlcGNyIgorCisjOiBidWlsdGluL2FtLmM6MjIzOAorbXNnaWQgInN0cmlwIGV2ZXJ5dGhpbmcgYmVmb3JlIGEgc2Npc3NvcnMgbGluZSIKK21zZ3N0ciAicmltdW92aSB0dXR0ZSBsZSByaWdoZSBwcmltYSBkaSB1bmEgcmlnYSBcInRhZ2xpYSBxdWlcIiIKKworIzogYnVpbHRpbi9hbS5jOjIyNDAgYnVpbHRpbi9hbS5jOjIyNDMgYnVpbHRpbi9hbS5jOjIyNDYgYnVpbHRpbi9hbS5jOjIyNDkKKyM6IGJ1aWx0aW4vYW0uYzoyMjUyIGJ1aWx0aW4vYW0uYzoyMjU1IGJ1aWx0aW4vYW0uYzoyMjU4IGJ1aWx0aW4vYW0uYzoyMjYxCisjOiBidWlsdGluL2FtLmM6MjI2NworbXNnaWQgInBhc3MgaXQgdGhyb3VnaCBnaXQtYXBwbHkiCittc2dzdHIgInBhc3NhIGwnYXJnb21lbnRvIGEgZ2l0LWFwcGx5IgorCisjOiBidWlsdGluL2FtLmM6MjI1NyBidWlsdGluL2NvbW1pdC5jOjEzOTEgYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcwCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzMgYnVpbHRpbi9ncmVwLmM6ODcxIGJ1aWx0aW4vbWVyZ2UuYzoyNTAKKyM6IGJ1aWx0aW4vcHVsbC5jOjE0MCBidWlsdGluL3B1bGwuYzoxOTkgYnVpbHRpbi9yZWJhc2UuYzoxNTA1CisjOiBidWlsdGluL3JlcGFjay5jOjMxNSBidWlsdGluL3JlcGFjay5jOjMxOSBidWlsdGluL3JlcGFjay5jOjMyMQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MCBidWlsdGluL3Nob3ctcmVmLmM6MTcyIGJ1aWx0aW4vdGFnLmM6NDAzCisjOiBwYXJzZS1vcHRpb25zLmg6MTU0IHBhcnNlLW9wdGlvbnMuaDoxNzUgcGFyc2Utb3B0aW9ucy5oOjMxNgorbXNnaWQgIm4iCittc2dzdHIgIm4iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjYzIGJ1aWx0aW4vYnJhbmNoLmM6NjYxIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NiBidWlsdGluL3RhZy5jOjQzNyBidWlsdGluL3ZlcmlmeS10YWcuYzozOAorbXNnaWQgImZvcm1hdCIKK21zZ3N0ciAiZm9ybWF0byIKKworIzogYnVpbHRpbi9hbS5jOjIyNjQKK21zZ2lkICJmb3JtYXQgdGhlIHBhdGNoKGVzKSBhcmUgaW4iCittc2dzdHIgImlsIGZvcm1hdG8gZGVsbGUgcGF0Y2giCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjcwCittc2dpZCAib3ZlcnJpZGUgZXJyb3IgbWVzc2FnZSB3aGVuIHBhdGNoIGZhaWx1cmUgb2NjdXJzIgorbXNnc3RyICIiCisiZXNlZ3VpIGwnb3ZlcnJpZGUgZGVsIG1lc3NhZ2dpbyBkJ2Vycm9yZSBxdWFuZG8gc2kgdmVyaWZpY2EgdW4gZXJyb3JlIGxlZ2F0byAiCisiYWxsZSBwYXRjaCIKKworIzogYnVpbHRpbi9hbS5jOjIyNzIKK21zZ2lkICJjb250aW51ZSBhcHBseWluZyBwYXRjaGVzIGFmdGVyIHJlc29sdmluZyBhIGNvbmZsaWN0IgorbXNnc3RyICIiCisiY29udGludWEgbCdhcHBsaWNhemlvbmUgZGVsbGUgcGF0Y2ggZG9wbyBsYSByaXNvbHV6aW9uZSBkaSB1biBjb25mbGl0dG8iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjc1Cittc2dpZCAic3lub255bXMgZm9yIC0tY29udGludWUiCittc2dzdHIgInNpbm9uaW1pIGRpIC0tY29udGludWUiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjc4Cittc2dpZCAic2tpcCB0aGUgY3VycmVudCBwYXRjaCIKK21zZ3N0ciAic2FsdGEgbGEgcGF0Y2ggY29ycmVudGUiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjgxCittc2dpZCAicmVzdG9yZSB0aGUgb3JpZ2luYWwgYnJhbmNoIGFuZCBhYm9ydCB0aGUgcGF0Y2hpbmcgb3BlcmF0aW9uLiIKK21zZ3N0ciAicmlwcmlzdGluYSBpbCBicmFuY2ggb3JpZ2luYXJpbyBlIGludGVycm9tcGkgbCdvcGVyYXppb25lIGRpIHBhdGNoaW5nLiIKKworIzogYnVpbHRpbi9hbS5jOjIyODQKK21zZ2lkICJhYm9ydCB0aGUgcGF0Y2hpbmcgb3BlcmF0aW9uIGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMuIgorbXNnc3RyICJpbnRlcnJvbXBpIGwnb3BlcmF6aW9uZSBkaSBwYXRjaGluZyBtYSBtYW50aWVuaSBIRUFEIGRvdifDqC4iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjg4Cittc2dpZCAic2hvdyB0aGUgcGF0Y2ggYmVpbmcgYXBwbGllZCIKK21zZ3N0ciAidmlzdWFsaXp6YSBsYSBwYXRjaCBpbiBmYXNlIGRpIGFwcGxpY2F6aW9uZSIKKworIzogYnVpbHRpbi9hbS5jOjIyOTMKK21zZ2lkICJsaWUgYWJvdXQgY29tbWl0dGVyIGRhdGUiCittc2dzdHIgIm1lbnRpIHN1bGxhIGRhdGEgZGVsIGNvbW1pdCIKKworIzogYnVpbHRpbi9hbS5jOjIyOTUKK21zZ2lkICJ1c2UgY3VycmVudCB0aW1lc3RhbXAgZm9yIGF1dGhvciBkYXRlIgorbXNnc3RyICJ1c2EgaWwgdGltZXN0YW1wIGNvcnJlbnRlIGNvbWUgZGF0YSBhdXRvcmUiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjk3IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMjAgYnVpbHRpbi9jb21taXQuYzoxNTEyCisjOiBidWlsdGluL21lcmdlLmM6Mjg3IGJ1aWx0aW4vcHVsbC5jOjE3NCBidWlsdGluL3JlYmFzZS5jOjUxNworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTU2IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE3IGJ1aWx0aW4vdGFnLmM6NDE4Cittc2dpZCAia2V5LWlkIgorbXNnc3RyICJJRCBjaGlhdmUiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjk4IGJ1aWx0aW4vcmViYXNlLmM6NTE4IGJ1aWx0aW4vcmViYXNlLmM6MTU1NworbXNnaWQgIkdQRy1zaWduIGNvbW1pdHMiCittc2dzdHIgImZpcm1hIGkgY29tbWl0IGNvbiBHUEciCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzAxCittc2dpZCAiKGludGVybmFsIHVzZSBmb3IgZ2l0LXJlYmFzZSkiCittc2dzdHIgIihhIHVzbyBpbnRlcm5vIHBlciBnaXQtcmViYXNlKSIKKworIzogYnVpbHRpbi9hbS5jOjIzMTkKK21zZ2lkICIiCisiVGhlIC1iLy0tYmluYXJ5IG9wdGlvbiBoYXMgYmVlbiBhIG5vLW9wIGZvciBsb25nIHRpbWUsIGFuZFxuIgorIml0IHdpbGwgYmUgcmVtb3ZlZC4gUGxlYXNlIGRvIG5vdCB1c2UgaXQgYW55bW9yZS4iCittc2dzdHIgIiIKKyJMJ29wemlvbmUgLWIvLS1iaW5hcnkgbm9uIGVzZWd1ZSBudWxsYSBkYSBtb2x0byB0ZW1wbyBlXG4iCisic2Fyw6Agcmltb3NzYS4gTm9uIHVzYXJsYSBwacO5LiIKKworIzogYnVpbHRpbi9hbS5jOjIzMjYKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCB0aGUgaW5kZXgiCittc2dzdHIgImxldHR1cmEgZGVsbCdpbmRpY2Ugbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL2FtLmM6MjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJwcmV2aW91cyByZWJhc2UgZGlyZWN0b3J5ICVzIHN0aWxsIGV4aXN0cyBidXQgbWJveCBnaXZlbi4iCittc2dzdHIgIiIKKyJsYSBkaXJlY3RvcnkgZGkgcmViYXNlIHByZWNlZGVudGUgJXMgZXNpc3RlIGFuY29yYSBtYSDDqCBzdGF0YSBzcGVjaWZpY2F0YSAiCisidW4nbWJveC4iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTdHJheSAlcyBkaXJlY3RvcnkgZm91bmQuXG4iCisiVXNlIFwiZ2l0IGFtIC0tYWJvcnRcIiB0byByZW1vdmUgaXQuIgorbXNnc3RyICIiCisiVHJvdmF0YSBkaXJlY3Rvcnkgc21hcnJpdGEgJXMuXG4iCisiVXNhIFwiZ2l0IGFtIC0tYWJvcnRcIiBwZXIgZWxpbWluYXJsYS4iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzcxCittc2dpZCAiUmVzb2x2ZSBvcGVyYXRpb24gbm90IGluIHByb2dyZXNzLCB3ZSBhcmUgbm90IHJlc3VtaW5nLiIKK21zZ3N0ciAiT3BlcmF6aW9uZSBkaSByaXNvbHV6aW9uZSBub24gaW4gY29yc28sIG5vbiByaXByZW5kaWFtby4iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzgxCittc2dpZCAiaW50ZXJhY3RpdmUgbW9kZSByZXF1aXJlcyBwYXRjaGVzIG9uIHRoZSBjb21tYW5kIGxpbmUiCittc2dzdHIgIiIKKyJsYSBtb2RhbGl0w6AgaW50ZXJhdHRpdmEgcmljaGllZGUgY2hlIGxlIHBhdGNoIHNpYW5vIGZvcm5pdGUgc3VsbGEgcmlnYSBkaSAiCisiY29tYW5kbyIKKworIzogYnVpbHRpbi9hcHBseS5jOjgKK21zZ2lkICJnaXQgYXBwbHkgWzxvcHRpb25zPl0gWzxwYXRjaD4uLi5dIgorbXNnc3RyICJnaXQgYXBwbHkgWzxvcHppb25pPl0gWzxwYXRjaD4uLi5dIgorCisjOiBidWlsdGluL2FyY2hpdmUuYzoxNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGFyY2hpdmUgZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgaWwgZmlsZSBhcmNoaXZpbyAnJXMnIgorCisjOiBidWlsdGluL2FyY2hpdmUuYzoyMAorbXNnaWQgImNvdWxkIG5vdCByZWRpcmVjdCBvdXRwdXQiCittc2dzdHIgImltcG9zc2liaWxlIHJlZGlyaWdlcmUgbCdvdXRwdXQiCisKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjM3Cittc2dpZCAiZ2l0IGFyY2hpdmU6IFJlbW90ZSB3aXRoIG5vIFVSTCIKK21zZ3N0ciAiZ2l0IGFyY2hpdmU6IGlsIHJlbW90byBub24gaGEgdW4gVVJMIgorCisjOiBidWlsdGluL2FyY2hpdmUuYzo2MQorbXNnaWQgImdpdCBhcmNoaXZlOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgYSBmbHVzaCBwYWNrZXQiCittc2dzdHIgImdpdCBhcmNoaXZlOiBhdHRlc2kgQUNLL05BSywgcmljZXZ1dG8gcGFjY2hldHRvIGRpIGZsdXNoIgorCisjOiBidWlsdGluL2FyY2hpdmUuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgYXJjaGl2ZTogTkFDSyAlcyIKK21zZ3N0ciAiZ2l0IGFyY2hpdmU6IE5BQ0sgJXMiCisKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY1Cittc2dpZCAiZ2l0IGFyY2hpdmU6IHByb3RvY29sIGVycm9yIgorbXNnc3RyICJnaXQgYXJjaGl2ZTogZXJyb3JlIGRlbCBwcm90b2NvbGxvIgorCisjOiBidWlsdGluL2FyY2hpdmUuYzo2OQorbXNnaWQgImdpdCBhcmNoaXZlOiBleHBlY3RlZCBhIGZsdXNoIgorbXNnc3RyICJnaXQgYXJjaGl2ZTogYXR0ZXNvIHVuIGZsdXNoIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjIKK21zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCBbLS1uby1jaGVja291dF0iCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLW5leHQtYWxsIFstLW5vLWNoZWNrb3V0XSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIzCittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0td3JpdGUtdGVybXMgPGJhZF90ZXJtPiA8Z29vZF90ZXJtPiIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDx0ZXJtaW5lIHJldmlzaW9uZSBub24gZnVuemlvbmFudGU+ICIKKyI8dGVybWluZSByZXZpc2lvbmUgZnVuemlvbmFudGU+IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjQKK21zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2xlYW4tc3RhdGUiCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jbGVhbi1zdGF0ZSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI1Cittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXJlc2V0IFs8Y29tbWl0Pl0iCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1yZXNldCBbPGNvbW1pdD5dIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjYKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPHN0YXRlPiA8cmV2aXNpb24+IDxnb29kX3Rlcm0+ICIKKyI8YmFkX3Rlcm0+IgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPHN0YXRvPiA8cmV2aXNpb25lPiA8dGVybWluZSAiCisicmV2aXNpb25lIGZ1bnppb25hbnRlPiA8dGVybWluZSByZXZpc2lvbmUgbm9uIGZ1bnppb25hbnRlPiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI3Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDxjb21tYW5kPiA8Z29vZF90ZXJtPiAiCisiPGJhZF90ZXJtPiIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDxjb21hbmRvPiA8dGVybWluZSByZXZpc2lvbmUgIgorImZ1bnppb25hbnRlPiA8dGVybWluZSByZXZpc2lvbmUgbm9uIGZ1bnppb25hbnRlPiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI4Cittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LW5leHQtY2hlY2sgPGdvb2RfdGVybT4gPGJhZF90ZXJtPiBbPHRlcm0+XSIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrIDx0ZXJtaW5lIHJldmlzaW9uZSBmdW56aW9uYW50ZT4gIgorIjx0ZXJtaW5lIHJldmlzaW9uZSBub24gZnVuemlvbmFudGU+IFs8dGVybWluZT5dIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjkKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzAKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT08dGVybT4gLS10ZXJtLXtuZXcsYmFkfSIKKyI9PHRlcm0+XVstLW5vLWNoZWNrb3V0XSBbPGJhZD4gWzxnb29kPi4uLl1dIFstLV0gWzxwYXRocz4uLi5dIgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT08dGVybWluZT4gLS10ZXJtLXtuZXcsIgorImJhZH09PHRlcm1pbmU+XVstLW5vLWNoZWNrb3V0XSBbPG5vbiBmdW56aW9uYW50ZT4gWzxmdW56aW9uYW50ZT4uLi5dXSBbLS1dICIKKyJbPHBlcmNvcnNpPi4uLl0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRlcm0iCittc2dzdHIgIiclcycgbm9uIMOoIHVuIHRlcm1pbmUgdmFsaWRvIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgdXNlIHRoZSBidWlsdGluIGNvbW1hbmQgJyVzJyBhcyBhIHRlcm0iCittc2dzdHIgImltcG9zc2liaWxlIHVzYXJlIGlsIGNvbWFuZG8gbmF0aXZvICclcycgY29tZSB0ZXJtaW5lIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGNoYW5nZSB0aGUgbWVhbmluZyBvZiB0aGUgdGVybSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjYW1iaWFyZSBpbCBzaWduaWZpY2F0byBkZWwgdGVybWluZSAnJXMnIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTExCittc2dpZCAicGxlYXNlIHVzZSB0d28gZGlmZmVyZW50IHRlcm1zIgorbXNnc3RyICJ1c2EgZHVlIHRlcm1pbmkgZGlmZmVyZW50aSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjExOAorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBmaWxlIEJJU0VDVF9URVJNUyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlIGlsIGZpbGUgQklTRUNUX1RFUk1TIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLlxuIgorbXNnc3RyICJOb24gc3RpYW1vIGVzZWd1ZW5kbyB1biBiaXNlY3QuXG4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBjb21taXQiCittc2dzdHIgIiclcycgbm9uIMOoIHVuIGNvbW1pdCB2YWxpZG8iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvdWxkIG5vdCBjaGVjayBvdXQgb3JpZ2luYWwgSEVBRCAnJXMnLiBUcnkgJ2dpdCBiaXNlY3QgcmVzZXQgPGNvbW1pdD4nLiIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIGVzZWd1aXJlIGlsIGNoZWNrb3V0IGRlbGwnSEVBRCBvcmlnaW5hcmlvICclcycuIFByb3ZhIGNvbiAnZ2l0ICIKKyJiaXNlY3QgcmVzZXQgPGNvbW1pdD4nLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiQXJnb21lbnRvIGJpc2VjdF93cml0ZSBlcnJhdG86ICVzIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGdldCB0aGUgb2lkIG9mIHRoZSByZXYgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmVjdXBlcmFyZSBsJ09JRCBkZWxsYSByZXZpc2lvbmUgJyVzJyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIHRoZSBmaWxlICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBpbCBmaWxlICclcyciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBjb21tYW5kOiB5b3UncmUgY3VycmVudGx5IGluIGEgJXMvJXMgYmlzZWN0IgorbXNnc3RyICJDb21hbmRvIG5vbiB2YWxpZG86IGF0dHVhbG1lbnRlIHN0YWkgZXNlZ3VlbmRvIHVuYSBiaXNlemlvbmUgJXMvJXMiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICVzIGFuZCAlcyByZXZpc2lvbi5cbiIKKyJZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJXNcIiBhbmQgXCJnaXQgYmlzZWN0ICVzXCIgZm9yIHRoYXQuIgorbXNnc3RyICIiCisiRGV2aSBzcGVjaWZpY2FyZSBhbG1lbm8gdW5hIHJldmlzaW9uZSAlcyBlZCB1bmEgJXMuXG4iCisiUHVvaSB1c2FyZSBcImdpdCBiaXNlY3QgJXNcIiBlIFwiZ2l0IGJpc2VjdCAlc1wiIHBlciBxdWVzdG8gc2NvcG8uIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKKyJZb3UgdGhlbiBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICVzIGFuZCAlcyByZXZpc2lvbi5cbiIKKyJZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJXNcIiBhbmQgXCJnaXQgYmlzZWN0ICVzXCIgZm9yIHRoYXQuIgorbXNnc3RyICIiCisiRGV2aSBpbml6aWFyZSBjb24gXCJnaXQgYmlzZWN0IHN0YXJ0XCIuXG4iCisiUXVpbmRpIGRldmkgc3BlY2lmaWNhcmUgYWxtZW5vIHVuYSByZXZpc2lvbmUgJXMgZWQgdW5hICVzLlxuIgorIlB1b2kgdXNhcmUgXCJnaXQgYmlzZWN0ICVzXCIgZSBcImdpdCBiaXNlY3QgJXNcIiBhIHF1ZXN0byBzY29wby4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmlzZWN0aW5nIG9ubHkgd2l0aCBhICVzIGNvbW1pdCIKK21zZ3N0ciAiZXNlZ3VvIGxhIGJpc2V6aW9uZSBzb2xvIGNvbiB1biBjb21taXQgJXMiCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbWV0gYW5kIFtuXSBpbiB5b3VyCisjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIy4KKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMTgKK21zZ2lkICJBcmUgeW91IHN1cmUgW1kvbl0/ICIKK21zZ3N0ciAiU2VpIHNpY3Vybz8gW1kvbl0gIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Mzc5Cittc2dpZCAibm8gdGVybXMgZGVmaW5lZCIKK21zZ3N0ciAibmVzc3VuIHRlcm1pbmUgZGVmaW5pdG8iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgY3VycmVudCB0ZXJtcyBhcmUgJXMgZm9yIHRoZSBvbGQgc3RhdGVcbiIKKyJhbmQgJXMgZm9yIHRoZSBuZXcgc3RhdGUuXG4iCittc2dzdHIgIiIKKyJJIHR1b2kgdGVybWluaSBjb3JyZW50aSBzb25vICVzIHBlciBsbyBzdGF0byB2ZWNjaGlvXG4iCisiZSAlcyBwZXIgbG8gc3RhdG8gbnVvdm8uXG4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgYXJndW1lbnQgJXMgZm9yICdnaXQgYmlzZWN0IHRlcm1zJy5cbiIKKyJTdXBwb3J0ZWQgb3B0aW9ucyBhcmU6IC0tdGVybS1nb29kfC0tdGVybS1vbGQgYW5kIC0tdGVybS1iYWR8LS10ZXJtLW5ldy4iCittc2dzdHIgIiIKKyJhcmdvbWVudG8gJXMgbm9uIHZhbGlkbyBwZXIgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgorIkxlIG9wemlvbmkgc3VwcG9ydGF0ZSBzb25vOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGUgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgb3B0aW9uOiAnJXMnIgorbXNnc3RyICJvcHppb25lIG5vbiByaWNvbm9zY2l1dGE6ICclcyciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYSB2YWxpZCByZXZpc2lvbiIKK21zZ3N0ciAic2VtYnJhIGNoZSAnJXMnIG5vbiBzaWEgdW5hIHJldmlzaW9uZSB2YWxpZGEiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MTQKK21zZ2lkICJiYWQgSEVBRCAtIEkgbmVlZCBhIEhFQUQiCittc2dzdHIgIkhFQUQgbm9uIHZhbGlkYSAtIGhvIGJpc29nbm8gZGkgdW4nSEVBRCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUyOQorIywgYy1mb3JtYXQKK21zZ2lkICJjaGVja2luZyBvdXQgJyVzJyBmYWlsZWQuIFRyeSAnZ2l0IGJpc2VjdCBzdGFydCA8dmFsaWQtYnJhbmNoPicuIgorbXNnc3RyICIiCisiY2hlY2tvdXQgZGkgJyVzJyBub24gcml1c2NpdG8uIFByb3ZhIGNvbiAnZ2l0IGJpc2VjdCBzdGFydCA8YnJhbmNoIHZhbGlkbz4nLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU1MAorbXNnaWQgIndvbid0IGJpc2VjdCBvbiBjZy1zZWVrJ2VkIHRyZWUiCittc2dzdHIgIm5vbiBlc2VndWlyw7IgbGEgYmlzZXppb25lIHN1IHVuIGFsYmVybyBzb3R0b3Bvc3RvIGEgY2ctc2VlayIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU1MworbXNnaWQgImJhZCBIRUFEIC0gc3RyYW5nZSBzeW1ib2xpYyByZWYiCittc2dzdHIgImhlYWQgbm9uIHZhbGlkYSAtIHJpZmVyaW1lbnRvIHNpbWJvbGljbyBzdHJhbm8iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWY6ICclcyciCittc2dzdHIgInJpZmVyaW1lbnRvIG5vbiB2YWxpZG86ICclcyciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzMKK21zZ2lkICJwZXJmb3JtICdnaXQgYmlzZWN0IG5leHQnIgorbXNnc3RyICJlc2VndWkgJ2dpdCBiaXNlY3QgbmV4dCciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzUKK21zZ2lkICJ3cml0ZSB0aGUgdGVybXMgdG8gLmdpdC9CSVNFQ1RfVEVSTVMiCittc2dzdHIgInNjcml2aSBpIHRlcm1pbmkgaW4gLmdpdC9CSVNFQ1RfVEVSTVMiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzcKK21zZ2lkICJjbGVhbnVwIHRoZSBiaXNlY3Rpb24gc3RhdGUiCittc2dzdHIgInB1bGlzY2kgbG8gc3RhdG8gYmlzZXppb25lIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjM5Cittc2dpZCAiY2hlY2sgZm9yIGV4cGVjdGVkIHJldnMiCittc2dzdHIgImNvbnRyb2xsYSBzZSBsZSByZXZpc2lvbmkgYXR0ZXNlIHNvbm8gcHJlc2VudGkiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDEKK21zZ2lkICJyZXNldCB0aGUgYmlzZWN0aW9uIHN0YXRlIgorbXNnc3RyICJyZWltcG9zdGEgbG8gc3RhdG8gZGVsbGEgYmlzZXppb25lIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQzCittc2dpZCAid3JpdGUgb3V0IHRoZSBiaXNlY3Rpb24gc3RhdGUgaW4gQklTRUNUX0xPRyIKK21zZ3N0ciAic2NyaXZpIGxvIHN0YXRvIGRlbGxhIGJpc2V6aW9uZSBpbiBCSVNFQ1RfTE9HIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ1Cittc2dpZCAiY2hlY2sgYW5kIHNldCB0ZXJtcyBpbiBhIGJpc2VjdGlvbiBzdGF0ZSIKK21zZ3N0ciAiY29udHJvbGxhIGUgaW1wb3N0YSBpIHRlcm1pbmkgaW4gdW5vIHN0YXRvIGJpc2V6aW9uZSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0NworbXNnaWQgImNoZWNrIHdoZXRoZXIgYmFkIG9yIGdvb2QgdGVybXMgZXhpc3QiCittc2dzdHIgIiIKKyJjb250cm9sbGEgc2UgZXNpc3Rvbm8gdGVybWluaSBwZXIgcmV2aXNpb25pIG5vbiBmdW56aW9uYW50aSBvIGZ1bnppb25hbnRpIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ5Cittc2dpZCAicHJpbnQgb3V0IHRoZSBiaXNlY3QgdGVybXMiCittc2dzdHIgInN0YW1wYSBpIHRlcm1pbmkgZGVsbGEgYmlzZXppb25lIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUxCittc2dpZCAic3RhcnQgdGhlIGJpc2VjdCBzZXNzaW9uIgorbXNnc3RyICJpbml6aWEgbGEgc2Vzc2lvbmUgZGkgYmlzZXppb25lIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUzCittc2dpZCAidXBkYXRlIEJJU0VDVF9IRUFEIGluc3RlYWQgb2YgY2hlY2tpbmcgb3V0IHRoZSBjdXJyZW50IGNvbW1pdCIKK21zZ3N0ciAiYWdnaW9ybmEgQklTRUNUX0hFQUQgYW56aWNow6kgZXNlZ3VpcmUgaWwgY2hlY2tvdXQgZGVsIGNvbW1pdCBjb3JyZW50ZSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY1NQorbXNnaWQgIm5vIGxvZyBmb3IgQklTRUNUX1dSSVRFIgorbXNnc3RyICJub24gcmVnaXN0cmFyZSBsZSBvcGVyYXppb25pIGVzZWd1aXRlIHBlciBCSVNFQ1RfV1JJVEUiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NzMKK21zZ2lkICItLXdyaXRlLXRlcm1zIHJlcXVpcmVzIHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0td3JpdGUtdGVybXMgcmljaGllZGUgZHVlIGFyZ29tZW50aSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY3NworbXNnaWQgIi0tYmlzZWN0LWNsZWFuLXN0YXRlIHJlcXVpcmVzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1iaXNlY3QtY2xlYW4tc3RhdGUgbm9uIHJpY2hpZWRlIGFyZ29tZW50aSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY4NAorbXNnaWQgIi0tYmlzZWN0LXJlc2V0IHJlcXVpcmVzIGVpdGhlciBubyBhcmd1bWVudCBvciBhIGNvbW1pdCIKK21zZ3N0ciAiLS1iaXNlY3QtcmVzZXQgcmljaGllZGUgbyBuZXNzdW4gYXJnb21lbnRvIG8gdW4gY29tbWl0IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njg4Cittc2dpZCAiLS1iaXNlY3Qtd3JpdGUgcmVxdWlyZXMgZWl0aGVyIDQgb3IgNSBhcmd1bWVudHMiCittc2dzdHIgIi0tYmlzZWN0LXdyaXRlIHJpY2hpZWRlIG8gcXVhdHRybyBvIGNpbnF1ZSBhcmdvbWVudGkiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2OTQKK21zZ2lkICItLWNoZWNrLWFuZC1zZXQtdGVybXMgcmVxdWlyZXMgMyBhcmd1bWVudHMiCittc2dzdHIgIi0tY2hlY2stYW5kLXNldC10ZXJtcyByaWNoaWVkZSB0cmUgYXJnb21lbnRpIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzAwCittc2dpZCAiLS1iaXNlY3QtbmV4dC1jaGVjayByZXF1aXJlcyAyIG9yIDMgYXJndW1lbnRzIgorbXNnc3RyICItLWJpc2VjdC1uZXh0LWNoZWNrIHJpY2hpZWRlIGR1ZSBvIHRyZSBhcmdvbWVudGkiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3MDYKK21zZ2lkICItLWJpc2VjdC10ZXJtcyByZXF1aXJlcyAwIG9yIDEgYXJndW1lbnQiCittc2dzdHIgIi0tYmlzZWN0LXRlcm1zIHJpY2hpZWRlIHplcm8gbyB1biBhcmdvbWVudG8iCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzozMQorbXNnaWQgImdpdCBibGFtZSBbPG9wdGlvbnM+XSBbPHJldi1vcHRzPl0gWzxyZXY+XSBbLS1dIDxmaWxlPiIKK21zZ3N0ciAiZ2l0IGJsYW1lIFs8b3B6aW9uaT5dIFs8b3B6aW9uaSByZXZpc2lvbmU+XSBbPHJldmlzaW9uZT5dIFstLV0gPGZpbGU+IgorCisjOiBidWlsdGluL2JsYW1lLmM6MzYKK21zZ2lkICI8cmV2LW9wdHM+IGFyZSBkb2N1bWVudGVkIGluIGdpdC1yZXYtbGlzdCgxKSIKK21zZ3N0ciAibGUgPG9wemlvbmkgcmV2aXNpb25lPiBzb25vIGRvY3VtZW50YXRlIGluIGdpdC1yZXYtbGlzdCgxKSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJleHBlY3RpbmcgYSBjb2xvcjogJXMiCittc2dzdHIgImF0dGVzbyBjb2xvcmU6ICVzIgorCisjOiBidWlsdGluL2JsYW1lLmM6NDE2Cittc2dpZCAibXVzdCBlbmQgd2l0aCBhIGNvbG9yIgorbXNnc3RyICJkZXZlIHRlcm1pbmFyZSBjb24gdW4gY29sb3JlIgorCisjOiBidWlsdGluL2JsYW1lLmM6NzI5CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29sb3IgJyVzJyBpbiBjb2xvci5ibGFtZS5yZXBlYXRlZExpbmVzIgorbXNnc3RyICJjb2xvcmUgJyVzJyBub24gdmFsaWRvIGluIGNvbG9yLmJsYW1lLnJlcGVhdGVkTGluZXMiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3NDcKK21zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciBibGFtZS5jb2xvcmluZyIKK21zZ3N0ciAidmFsb3JlIG5vbiB2YWxpZG8gcGVyIGJsYW1lLmNvbG9yaW5nIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmaW5kIHJldmlzaW9uICVzIHRvIGlnbm9yZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgdHJvdmFyZSBsYSByZXZpc2lvbmUgJXMgZGEgaWdub3JhcmUiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDQKK21zZ2lkICJTaG93IGJsYW1lIGVudHJpZXMgYXMgd2UgZmluZCB0aGVtLCBpbmNyZW1lbnRhbGx5IgorbXNnc3RyICIiCisiVmlzdWFsaXp6YSBsZSB2b2NpIGJsYW1lIGluY3JlbWVudGFsbWVudGUsIGEgbWFubyBhIG1hbm8gY2hlIGxlIHRyb3ZpYW1vIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ1Cittc2dpZCAiU2hvdyBibGFuayBTSEEtMSBmb3IgYm91bmRhcnkgY29tbWl0cyAoRGVmYXVsdDogb2ZmKSIKK21zZ3N0ciAiIgorIlZpc3VhbGl6emEgdW4gaGFzaCBTSEEtMSB2dW90byBwZXIgaSBjb21taXQgbGltaXRlIChpbXBvc3RhemlvbmUgIgorInByZWRlZmluaXRhOiBvZmYpIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ2Cittc2dpZCAiRG8gbm90IHRyZWF0IHJvb3QgY29tbWl0cyBhcyBib3VuZGFyaWVzIChEZWZhdWx0OiBvZmYpIgorbXNnc3RyICIiCisiTm9uIGdlc3RpcmUgaSBjb21taXQgcmFkaWNlIGNvbWUgY29tbWl0IGxpbWl0ZSAoaW1wb3N0YXppb25lIHByZWRlZmluaXRhOiAiCisib2ZmKSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg0NworbXNnaWQgIlNob3cgd29yayBjb3N0IHN0YXRpc3RpY3MiCittc2dzdHIgIlZpc3VhbGl6emEgbGUgc3RhdGlzdGljaGUgc3VsIGNvc3RvIGRlbGwnb3BlcmF6aW9uZSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg0OAorbXNnaWQgIkZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKK21zZ3N0ciAiRm9yemEgbCdpbmRpY2F6aW9uZSBkJ2F2YW56YW1lbnRvIGRlbGwnb3BlcmF6aW9uZSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg0OQorbXNnaWQgIlNob3cgb3V0cHV0IHNjb3JlIGZvciBibGFtZSBlbnRyaWVzIgorbXNnc3RyICJWaXN1YWxpenphIGlsIHB1bnRlZ2dpbyBkaSBvdXRwdXQgcGVyIGxlIHZvY2kgYmxhbWUiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTAKK21zZ2lkICJTaG93IG9yaWdpbmFsIGZpbGVuYW1lIChEZWZhdWx0OiBhdXRvKSIKK21zZ3N0ciAiIgorIlZpc3VhbGl6emEgaWwgbm9tZSBmaWxlIG9yaWdpbmFyaW8gKGltcG9zdGF6aW9uZSBwcmVkZWZpbml0YTogYXV0b21hdGljbykiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTEKK21zZ2lkICJTaG93IG9yaWdpbmFsIGxpbmVudW1iZXIgKERlZmF1bHQ6IG9mZikiCittc2dzdHIgIiIKKyJWaXN1YWxpenphIGlsIG51bWVybyBkaSByaWdhIG9yaWdpbmFyaW8gKGltcG9zdGF6aW9uZSBwcmVkZWZpbml0YTogb2ZmKSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg1MgorbXNnaWQgIlNob3cgaW4gYSBmb3JtYXQgZGVzaWduZWQgZm9yIG1hY2hpbmUgY29uc3VtcHRpb24iCittc2dzdHIgIiIKKyJWaXN1YWxpenphIGwnb3V0cHV0IGluIHVuIGZvcm1hdG8gcHJvZ2V0dGF0byBwZXIgbCd1dGlsaXp6byBkYSBwYXJ0ZSBkaSB1bmEgIgorIm1hY2NoaW5hIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODUzCittc2dpZCAiU2hvdyBwb3JjZWxhaW4gZm9ybWF0IHdpdGggcGVyLWxpbmUgY29tbWl0IGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisiVmlzdWFsaXp6YSBpbCBmb3JtYXRvIHBvcmNlbGFpbiBjb24gbGUgaW5mb3JtYXppb25pIHN1bCBjb21taXQgcGVyIG9nbmkgcmlnYSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg1NAorbXNnaWQgIlVzZSB0aGUgc2FtZSBvdXRwdXQgbW9kZSBhcyBnaXQtYW5ub3RhdGUgKERlZmF1bHQ6IG9mZikiCittc2dzdHIgIiIKKyJVc2EgbGEgc3Rlc3NhIG1vZGFsaXTDoCBkaSBvdXRwdXQgZGkgZ2l0LWFubm90YXRlIChpbXBvc3RhemlvbmUgcHJlZGVmaW5pdGE6ICIKKyJvZmYpIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODU1Cittc2dpZCAiU2hvdyByYXcgdGltZXN0YW1wIChEZWZhdWx0OiBvZmYpIgorbXNnc3RyICJWaXN1YWxpenphIGlsIHRpbWVzdGFtcCBncmV6em8gKGltcG9zdGF6aW9uZSBwcmVkZWZpbml0YTogb2ZmKSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg1NgorbXNnaWQgIlNob3cgbG9uZyBjb21taXQgU0hBMSAoRGVmYXVsdDogb2ZmKSIKK21zZ3N0ciAiIgorIlZpc3VhbGl6emEgbCdoYXNoIFNIQTEgZGVsIGNvbW1pdCBpbiBmb3JtYSBsdW5nYSAoaW1wb3N0YXppb25lIHByZWRlZmluaXRhOiAiCisib2ZmKSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg1NworbXNnaWQgIlN1cHByZXNzIGF1dGhvciBuYW1lIGFuZCB0aW1lc3RhbXAgKERlZmF1bHQ6IG9mZikiCittc2dzdHIgIiIKKyJOb24gdmlzdWFsaXp6YXJlIGlsIG5vbWUgYXV0b3JlIGUgaWwgdGltZXN0YW1wIChpbXBvc3RhemlvbmUgcHJlZGVmaW5pdGE6ICIKKyJvZmYpIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODU4Cittc2dpZCAiU2hvdyBhdXRob3IgZW1haWwgaW5zdGVhZCBvZiBuYW1lIChEZWZhdWx0OiBvZmYpIgorbXNnc3RyICIiCisiVmlzdWFsaXp6YSBsJ2luZGlyaXp6byBlLW1haWwgZGVsbCdhdXRvcmUgaW52ZWNlIGRlbCBub21lIChpbXBvc3RhemlvbmUgIgorInByZWRlZmluaXRhOiBvZmYpIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODU5Cittc2dpZCAiSWdub3JlIHdoaXRlc3BhY2UgZGlmZmVyZW5jZXMiCittc2dzdHIgIklnbm9yYSBsZSBkaWZmZXJlbnplIHJlbGF0aXZlIGFnbGkgc3BhemkgYmlhbmNoaSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MCBidWlsdGluL2xvZy5jOjE3MDIKK21zZ2lkICJyZXYiCittc2dzdHIgInJldmlzaW9uZSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MAorbXNnaWQgIklnbm9yZSA8cmV2PiB3aGVuIGJsYW1pbmciCittc2dzdHIgIklnbm9yYSA8cmV2aXNpb25lPiBkdXJhbnRlIGwnZXNlY3V6aW9uZSBkZWwgYmxhbWUiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjEKK21zZ2lkICJJZ25vcmUgcmV2aXNpb25zIGZyb20gPGZpbGU+IgorbXNnc3RyICJJZ25vcmEgbGUgcmV2aXNpb25pIHNwZWNpZmljYXRlIGluIDxmaWxlPiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MgorbXNnaWQgImNvbG9yIHJlZHVuZGFudCBtZXRhZGF0YSBmcm9tIHByZXZpb3VzIGxpbmUgZGlmZmVyZW50bHkiCittc2dzdHIgImNvbG9yYSBpbiBtb2RvIGRpZmZlcmVudGUgaSBtZXRhZGF0aSByaWRvbmRhbnRpIGRlbGxhIHJpZ2EgcHJlY2VkZW50ZSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MworbXNnaWQgImNvbG9yIGxpbmVzIGJ5IGFnZSIKK21zZ3N0ciAiY29sb3JhIGxlIHJpZ2hlIGluIGJhc2UgYWxsJ2V0w6AiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjQKK21zZ2lkICJTcGVuZCBleHRyYSBjeWNsZXMgdG8gZmluZCBiZXR0ZXIgbWF0Y2giCittc2dzdHIgIlVzYSBjaWNsaSBleHRyYSBwZXIgdHJvdmFyZSB1bmEgY29ycmlzcG9uZGVuemEgbWlnbGlvcmUiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjUKK21zZ2lkICJVc2UgcmV2aXNpb25zIGZyb20gPGZpbGU+IGluc3RlYWQgb2YgY2FsbGluZyBnaXQtcmV2LWxpc3QiCittc2dzdHIgIlVzYSBsZSByZXZpc2lvbmkgc2FsdmF0ZSBpbiA8ZmlsZT4gYW56aWNow6kgcmljaGlhbWFyZSBnaXQtcmV2LWxpc3QiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjYKK21zZ2lkICJVc2UgPGZpbGU+J3MgY29udGVudHMgYXMgdGhlIGZpbmFsIGltYWdlIgorbXNnc3RyICJVc2EgaSBjb250ZW51dGkgZGkgPGZpbGU+IGNvbWUgaW1tYWdpbmUgZmluYWxlIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODY3IGJ1aWx0aW4vYmxhbWUuYzo4NjgKK21zZ2lkICJzY29yZSIKK21zZ3N0ciAicHVudGVnZ2lvIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODY3Cittc2dpZCAiRmluZCBsaW5lIGNvcGllcyB3aXRoaW4gYW5kIGFjcm9zcyBmaWxlcyIKK21zZ3N0ciAiVHJvdmEgY29waWUgZGVsbGUgcmlnaGUgYWxsJ2ludGVybm8gZSBmcmEgZmlsZSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2OAorbXNnaWQgIkZpbmQgbGluZSBtb3ZlbWVudHMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCittc2dzdHIgIlRyb3ZhIHJpZ2hlIHNwb3N0YXRlIGFsbCdpbnRlcm5vIGUgZnJhIGZpbGUiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjkKK21zZ2lkICJuLG0iCittc2dzdHIgIm4sbSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2OQorbXNnaWQgIlByb2Nlc3Mgb25seSBsaW5lIHJhbmdlIG4sbSwgY291bnRpbmcgZnJvbSAxIgorbXNnc3RyICJFbGFib3JhIHNvbG8gbCdpbnRlcnZhbGxvIHJpZ2hlIG4sbSwgY29udGFuZG9sZSBkYSAxIgorCisjOiBidWlsdGluL2JsYW1lLmM6OTIxCittc2dpZCAiLS1wcm9ncmVzcyBjYW4ndCBiZSB1c2VkIHdpdGggLS1pbmNyZW1lbnRhbCBvciBwb3JjZWxhaW4gZm9ybWF0cyIKK21zZ3N0ciAiIgorIi0tcHJvZ3Jlc3Mgbm9uIHB1w7IgZXNzZXJlIHVzYXRvIGNvbiAtLWluY3JlbWVudGFsIG8gY29uIGkgZm9ybWF0aSBwb3JjZWxhaW4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIHN0cmluZyBpcyB1c2VkIHRvIHRlbGwgdXMgdGhlCisjLiBtYXhpbXVtIGRpc3BsYXkgd2lkdGggZm9yIGEgcmVsYXRpdmUgdGltZXN0YW1wIGluCisjLiAiZ2l0IGJsYW1lIiBvdXRwdXQuICBGb3IgQyBsb2NhbGUsICI0IHllYXJzLCAxMQorIy4gbW9udGhzIGFnbyIsIHdoaWNoIHRha2VzIDIyIHBsYWNlcywgaXMgdGhlIGxvbmdlc3QKKyMuIGFtb25nIHZhcmlvdXMgZm9ybXMgb2YgcmVsYXRpdmUgdGltZXN0YW1wcywgYnV0CisjLiB5b3VyIGxhbmd1YWdlIG1heSBuZWVkIG1vcmUgb3IgZmV3ZXIgZGlzcGxheQorIy4gY29sdW1ucy4KKyMuCisjOiBidWlsdGluL2JsYW1lLmM6OTcyCittc2dpZCAiNCB5ZWFycywgMTEgbW9udGhzIGFnbyIKK21zZ3N0ciAiNCBhbm5pLCAxMSBnaW9ybmkgZmEiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzoxMDc5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJXMgaGFzIG9ubHkgJWx1IGxpbmUiCittc2dpZF9wbHVyYWwgImZpbGUgJXMgaGFzIG9ubHkgJWx1IGxpbmVzIgorbXNnc3RyWzBdICJpbCBmaWxlICVzIGhhIHNvbG8gJWx1IHJpZ2EiCittc2dzdHJbMV0gImlsIGZpbGUgJXMgaGEgc29sbyAlbHUgcmlnaGUiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzoxMTI1Cittc2dpZCAiQmxhbWluZyBsaW5lcyIKK21zZ3N0ciAiRXNlZ3VvIGlsIGJsYW1lIHN1bGxlIHJpZ2hlIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjI5Cittc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSBbLXIgfCAtYV0gWy0tbWVyZ2VkIHwgLS1uby1tZXJnZWRdIgorbXNnc3RyICJnaXQgYnJhbmNoIFs8b3B6aW9uaT5dIFstciB8IC1hXSBbLS1tZXJnZWQgfCAtLW5vLW1lcmdlZF0iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MzAKK21zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstbF0gWy1mXSA8YnJhbmNoLW5hbWU+IFs8c3RhcnQtcG9pbnQ+XSIKK21zZ3N0ciAiZ2l0IGJyYW5jaCBbPG9wemlvbmk+XSBbLWxdIFstZl0gPG5vbWUgYnJhbmNoPiBbPHB1bnRvIGRpIHBhcnRlbnphPl0iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MzEKK21zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstcl0gKC1kIHwgLUQpIDxicmFuY2gtbmFtZT4uLi4iCittc2dzdHIgImdpdCBicmFuY2ggWzxvcHppb25pPl0gWy1yXSAoLWQgfCAtRCkgPG5vbWUgYnJhbmNoPi4uLiIKKworIzogYnVpbHRpbi9icmFuY2guYzozMgorbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gKC1tIHwgLU0pIFs8b2xkLWJyYW5jaD5dIDxuZXctYnJhbmNoPiIKK21zZ3N0ciAiZ2l0IGJyYW5jaCBbPG9wemlvbmk+XSAoLW0gfCAtTSkgWzx2ZWNjaGlvIGJyYW5jaD5dIDxudW92byBicmFuY2g+IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjMzCittc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSAoLWMgfCAtQykgWzxvbGQtYnJhbmNoPl0gPG5ldy1icmFuY2g+IgorbXNnc3RyICJnaXQgYnJhbmNoIFs8b3B6aW9uaT5dICgtYyB8IC1DKSBbPHZlY2NoaW8gYnJhbmNoPl0gPG51b3ZvIGJyYW5jaD4iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MzQKK21zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstciB8IC1hXSBbLS1wb2ludHMtYXRdIgorbXNnc3RyICJnaXQgYnJhbmNoIFs8b3B6aW9uaT5dIFstciB8IC1hXSBbLS1wb2ludHMtYXRdIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjM1Cittc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSBbLXIgfCAtYV0gWy0tZm9ybWF0XSIKK21zZ3N0ciAiZ2l0IGJyYW5jaCBbPG9wemlvbmk+XSBbLXIgfCAtYV0gWy0tZm9ybWF0XSIKKworIzogYnVpbHRpbi9icmFuY2guYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRlbGV0aW5nIGJyYW5jaCAnJXMnIHRoYXQgaGFzIGJlZW4gbWVyZ2VkIHRvXG4iCisiICAgICAgICAgJyVzJywgYnV0IG5vdCB5ZXQgbWVyZ2VkIHRvIEhFQUQuIgorbXNnc3RyICIiCisiZWxpbWlubyBpbCBicmFuY2ggJyVzJyBkaSBjdWkgw6ggc3RhdG8gZXNlZ3VpdG8gaWwgbWVyZ2UgaW5cbiIKKyIgICAgICAgICAnJXMnLCBtYSBkaSBjdWkgbm9uIMOoIGFuY29yYSBzdGF0byBlc2VndWl0byBpbCBtZXJnZSBpbiBIRUFELiIKKworIzogYnVpbHRpbi9icmFuY2guYzoxNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm5vdCBkZWxldGluZyBicmFuY2ggJyVzJyB0aGF0IGlzIG5vdCB5ZXQgbWVyZ2VkIHRvXG4iCisiICAgICAgICAgJyVzJywgZXZlbiB0aG91Z2ggaXQgaXMgbWVyZ2VkIHRvIEhFQUQuIgorbXNnc3RyICIiCisibm9uIGVsaW1pbm8gaWwgYnJhbmNoICclcycgZGkgY3VpIG5vbiDDqCBhbmNvcmEgc3RhdG8gZXNlZ3VpdG8gaWwgbWVyZ2UgaW5cbiIKKyIgICAgICAgICAnJXMnLCBiZW5jaMOpIG5lIHNpYSBzdGF0byBlc2VndWl0byBpbCBtZXJnZSBpbiBIRUFELiIKKworIzogYnVpbHRpbi9icmFuY2guYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGRuJ3QgbG9vayB1cCBjb21taXQgb2JqZWN0IGZvciAnJXMnIgorbXNnc3RyICJJbXBvc3NpYmlsZSB0cm92YXJlIGwnb2dnZXR0byBjb21taXQgcGVyICclcyciCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgYnJhbmNoICclcycgaXMgbm90IGZ1bGx5IG1lcmdlZC5cbiIKKyJJZiB5b3UgYXJlIHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIGl0LCBydW4gJ2dpdCBicmFuY2ggLUQgJXMnLiIKK21zZ3N0ciAiIgorIklsIGJyYW5jaCAnJXMnIG5vbiDDqCBzdGF0byBzb3R0b3Bvc3RvIGNvbXBsZXRhbWVudGUgYSB1biBtZXJnZS5cbiIKKyJTZSBzZWkgc2ljdXJvIGRpIHZvbGVybG8gZWxpbWluYXJlLCBlc2VndWkgJ2dpdCBicmFuY2ggLUQgJXMnLiIKKworIzogYnVpbHRpbi9icmFuY2guYzoxODkKK21zZ2lkICJVcGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgorbXNnc3RyICJBZ2dpb3JuYW1lbnRvIGRlbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIG5vbiByaXVzY2l0byIKKworIzogYnVpbHRpbi9icmFuY2guYzoyMjAKK21zZ2lkICJjYW5ub3QgdXNlIC1hIHdpdGggLWQiCittc2dzdHIgImltcG9zc2liaWxlIHVzYXJlIC1hIGNvbiAtZCIKKworIzogYnVpbHRpbi9icmFuY2guYzoyMjYKK21zZ2lkICJDb3VsZG4ndCBsb29rIHVwIGNvbW1pdCBvYmplY3QgZm9yIEhFQUQiCittc2dzdHIgIkltcG9zc2liaWxlIHRyb3ZhcmUgbCdvZ2dldHRvIGNvbW1pdCBwZXIgSEVBRCIKKworIzogYnVpbHRpbi9icmFuY2guYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IGRlbGV0ZSBicmFuY2ggJyVzJyBjaGVja2VkIG91dCBhdCAnJXMnIgorbXNnc3RyICIiCisiSW1wb3NzaWJpbGUgZWxpbWluYXJlIGlsIGJyYW5jaCAnJXMnIGRpIGN1aSDDqCBzdGF0byBlc2VndWl0byBpbCBjaGVja291dCBpbiAiCisiJyVzJyIKKworIzogYnVpbHRpbi9icmFuY2guYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlLXRyYWNraW5nIGJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCittc2dzdHIgImJyYW5jaCByZW1vdG8gdHJhY2NpYXRvICclcycgbm9uIHRyb3ZhdG8uIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJicmFuY2ggJyVzJyBub3QgZm91bmQuIgorbXNnc3RyICJicmFuY2ggJyVzJyBub24gdHJvdmF0by4iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVycm9yIGRlbGV0aW5nIHJlbW90ZS10cmFja2luZyBicmFuY2ggJyVzJyIKK21zZ3N0ciAiRXJyb3JlIGR1cmFudGUgbCdlbGltaW5hemlvbmUgZGVsIGJyYW5jaCByZW1vdG8gdHJhY2NpYXRvICclcyciCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkVycm9yIGRlbGV0aW5nIGJyYW5jaCAnJXMnIgorbXNnc3RyICJFcnJvcmUgZHVyYW50ZSBsJ2VsaW1pbmF6aW9uZSBkZWwgYnJhbmNoICclcyciCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCAlcyAod2FzICVzKS5cbiIKK21zZ3N0ciAiQnJhbmNoIHJlbW90byB0cmFjY2lhdG8gJXMgZWxpbWluYXRvIChlcmEgJXMpLlxuIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjI4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkIGJyYW5jaCAlcyAod2FzICVzKS5cbiIKK21zZ3N0ciAiQnJhbmNoICVzIGVsaW1pbmF0byAoZXJhICVzKS5cbiIKKworIzogYnVpbHRpbi9icmFuY2guYzo0MjkgYnVpbHRpbi90YWcuYzo2MQorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBmb3JtYXQgc3RyaW5nIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGxhIHN0cmluZ2EgZGkgZm9ybWF0byIKKworIzogYnVpbHRpbi9icmFuY2guYzo0NjAKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaXNvbHZlcmUgSEVBRCIKKworIzogYnVpbHRpbi9icmFuY2guYzo0NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiSEVBRCAoJXMpIHBvaW50cyBvdXRzaWRlIG9mIHJlZnMvaGVhZHMvIgorbXNnc3RyICJIRUFEICglcykgcHVudGEgYSB1biBvZ2dldHRvIG5vbiBpbiByZWZzL2hlYWRzLyIKKworIzogYnVpbHRpbi9icmFuY2guYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICVzIGlzIGJlaW5nIHJlYmFzZWQgYXQgJXMiCittc2dzdHIgIlJlYmFzZSBkZWwgYnJhbmNoICVzIGluIGNvcnNvIGluICVzIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ4NQorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJXMgaXMgYmVpbmcgYmlzZWN0ZWQgYXQgJXMiCittc2dzdHIgIkJpc2V6aW9uZSBkZWwgYnJhbmNoICVzIGluIGNvcnNvIGluICVzIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjUwMgorbXNnaWQgImNhbm5vdCBjb3B5IHRoZSBjdXJyZW50IGJyYW5jaCB3aGlsZSBub3Qgb24gYW55LiIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIGNvcGlhcmUgaWwgYnJhbmNoIGNvcnJlbnRlIHF1YW5kbyBub24gc2kgw6ggc3UgYWxjdW4gYnJhbmNoLiIKKworIzogYnVpbHRpbi9icmFuY2guYzo1MDQKK21zZ2lkICJjYW5ub3QgcmVuYW1lIHRoZSBjdXJyZW50IGJyYW5jaCB3aGlsZSBub3Qgb24gYW55LiIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIHJpZGVub21pbmFyZSBpbCBicmFuY2ggY29ycmVudGUgcXVhbmRvIG5vbiBzaSDDqCBzdSBhbGN1biBicmFuY2guIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjUxNQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGJyYW5jaCBuYW1lOiAnJXMnIgorbXNnc3RyICJOb21lIGJyYW5jaCBub24gdmFsaWRvOiAnJXMnIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjU0MgorbXNnaWQgIkJyYW5jaCByZW5hbWUgZmFpbGVkIgorbXNnc3RyICJSaWRlbm9taW5hemlvbmUgZGVsIGJyYW5jaCBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQ0Cittc2dpZCAiQnJhbmNoIGNvcHkgZmFpbGVkIgorbXNnc3RyICJDb3BpYSBkZWwgYnJhbmNoIG5vbiByaXVzY2l0YSIKKworIzogYnVpbHRpbi9icmFuY2guYzo1NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3JlYXRlZCBhIGNvcHkgb2YgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyIKK21zZ3N0ciAiQ3JlYXRhIGNvcGlhIGRlbCBicmFuY2ggbWFsIGRlbm9taW5hdG8gJyVzJyIKKworIzogYnVpbHRpbi9icmFuY2guYzo1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVuYW1lZCBhIG1pc25hbWVkIGJyYW5jaCAnJXMnIGF3YXkiCittc2dzdHIgIkJyYW5jaCBtYWwgZGVub21pbmF0byAnJXMnIHJpbm9taW5hdG8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCByZW5hbWVkIHRvICVzLCBidXQgSEVBRCBpcyBub3QgdXBkYXRlZCEiCittc2dzdHIgIkJyYW5jaCByaW5vbWluYXRvIGluICVzLCBtYSBIRUFEIG5vbiDDqCBhZ2dpb3JuYXRvISIKKworIzogYnVpbHRpbi9icmFuY2guYzo1NjYKK21zZ2lkICJCcmFuY2ggaXMgcmVuYW1lZCwgYnV0IHVwZGF0ZSBvZiBjb25maWctZmlsZSBmYWlsZWQiCittc2dzdHIgIiIKKyJJbCBicmFuY2ggw6ggc3RhdG8gcmlub21pbmF0bywgbWEgbCdhZ2dpb3JuYW1lbnRvIGRlbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lICIKKyJub24gw6ggcml1c2NpdG8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTY4Cittc2dpZCAiQnJhbmNoIGlzIGNvcGllZCwgYnV0IHVwZGF0ZSBvZiBjb25maWctZmlsZSBmYWlsZWQiCittc2dzdHIgIiIKKyJJbCBicmFuY2ggw6ggc3RhdG8gY29waWF0bywgbWEgbCdhZ2dpb3JuYW1lbnRvIGRlbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIG5vbiAiCisiw6ggcml1c2NpdG8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQbGVhc2UgZWRpdCB0aGUgZGVzY3JpcHRpb24gZm9yIHRoZSBicmFuY2hcbiIKKyIgICVzXG4iCisiTGluZXMgc3RhcnRpbmcgd2l0aCAnJWMnIHdpbGwgYmUgc3RyaXBwZWQuXG4iCittc2dzdHIgIiIKKyJNb2RpZmljYSBsYSBkZXNjcml6aW9uZSBkZWwgYnJhbmNoXG4iCisiICAlc1xuIgorIkxlIHJpZ2hlIGNoZSBpbml6aWFubyBjb24gJyVjJyBzYXJhbm5vIG9tZXNzZS5cbiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MTgKK21zZ2lkICJHZW5lcmljIG9wdGlvbnMiCittc2dzdHIgIk9wemlvbmkgZ2VuZXJpY2hlIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyMAorbXNnaWQgInNob3cgaGFzaCBhbmQgc3ViamVjdCwgZ2l2ZSB0d2ljZSBmb3IgdXBzdHJlYW0gYnJhbmNoIgorbXNnc3RyICIiCisidmlzdWFsaXp6YSBsJ2hhc2ggZSBsJ29nZ2V0dG8sIHVzYSBsJ29wemlvbmUgZHVlIHZvbHRlIHBlciBpbCBicmFuY2ggdXBzdHJlYW0iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIxCittc2dpZCAic3VwcHJlc3MgaW5mb3JtYXRpb25hbCBtZXNzYWdlcyIKK21zZ3N0ciAibm9uIHZpc3VhbGl6emFyZSBpIG1lc3NhZ2dpIGluZm9ybWF0aXZpIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyMgorbXNnaWQgInNldCB1cCB0cmFja2luZyBtb2RlIChzZWUgZ2l0LXB1bGwoMSkpIgorbXNnc3RyICJpbXBvc3RhIGxhIG1vZGFsaXTDoCB0cmFja2luZyAodmVkaSBnaXQtcHVsbCgxKSkiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI0Cittc2dpZCAiZG8gbm90IHVzZSIKK21zZ3N0ciAibm9uIHVzYXJlIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNiBidWlsdGluL3JlYmFzZS5jOjUxMworbXNnaWQgInVwc3RyZWFtIgorbXNnc3RyICJ1cHN0cmVhbSIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MjYKK21zZ2lkICJjaGFuZ2UgdGhlIHVwc3RyZWFtIGluZm8iCittc2dzdHIgIm1vZGlmaWNhIGxlIGluZm9ybWF6aW9uaSBzdWxsJ3Vwc3RyZWFtIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNworbXNnaWQgInVuc2V0IHRoZSB1cHN0cmVhbSBpbmZvIgorbXNnc3RyICJyaW11b3ZpIGxlIGluZm9ybWF6aW9uaSBzdWxsJ3Vwc3RyZWFtIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyOAorbXNnaWQgInVzZSBjb2xvcmVkIG91dHB1dCIKK21zZ3N0ciAidXNhIGwnb3V0cHV0IGNvbG9yYXRvIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyOQorbXNnaWQgImFjdCBvbiByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMiCittc2dzdHIgImFnaXNjaSBzdWkgYnJhbmNoIHJlbW90aSB0cmFjY2lhdGkiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMxIGJ1aWx0aW4vYnJhbmNoLmM6NjMzCittc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGNvbnRhaW4gdGhlIGNvbW1pdCIKK21zZ3N0ciAic3RhbXBhIHNvbG8gaSBicmFuY2ggY2hlIGNvbnRlbmdvbm8gaSBjb21taXQiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMyIGJ1aWx0aW4vYnJhbmNoLmM6NjM0Cittc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKK21zZ3N0ciAic3RhbXBhIHNvbG8gaSBicmFuY2ggY2hlIG5vbiBjb250ZW5nb25vIGkgY29tbWl0IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYzNworbXNnaWQgIlNwZWNpZmljIGdpdC1icmFuY2ggYWN0aW9uczoiCittc2dzdHIgIkF6aW9uaSBzcGVjaWZpY2hlIGRpIGdpdC1icmFuY2g6IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYzOAorbXNnaWQgImxpc3QgYm90aCByZW1vdGUtdHJhY2tpbmcgYW5kIGxvY2FsIGJyYW5jaGVzIgorbXNnc3RyICJlbGVuY2Egc2lhIGkgYnJhbmNoIHJlbW90aSB0cmFjY2lhdGkgc2lhIHF1ZWxsaSBsb2NhbGkiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQwCittc2dpZCAiZGVsZXRlIGZ1bGx5IG1lcmdlZCBicmFuY2giCittc2dzdHIgImVsaW1pbmEgaWwgYnJhbmNoIGNvbXBsZXRhbWVudGUgc290dG9wb3N0byBhIG1lcmdlIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0MQorbXNnaWQgImRlbGV0ZSBicmFuY2ggKGV2ZW4gaWYgbm90IG1lcmdlZCkiCittc2dzdHIgImVsaW1pbmEgaWwgYnJhbmNoIChhbmNoZSBzZSBub24gw6ggc3RhdG8gc290dG9wb3N0byBhIG1lcmdlKSIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDIKK21zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCBhbmQgaXRzIHJlZmxvZyIKK21zZ3N0ciAic3Bvc3RhL3Jpbm9taW5hIHVuIGJyYW5jaCBlIGlsIHN1byByZWdpc3RybyBkZWkgcmlmZXJpbWVudGkiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQzCittc2dpZCAibW92ZS9yZW5hbWUgYSBicmFuY2gsIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKK21zZ3N0ciAic3Bvc3RhL3Jpbm9taW5hIHVuIGJyYW5jaCBhbmNoZSBzZSBsYSBkZXN0aW5hemlvbmUgZXNpc3RlIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NAorbXNnaWQgImNvcHkgYSBicmFuY2ggYW5kIGl0cyByZWZsb2ciCittc2dzdHIgImNvcGlhIHVuIGJyYW5jaCBlIGlsIHN1byByZWdpc3RybyBkZWkgcmlmZXJpbWVudGkiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ1Cittc2dpZCAiY29weSBhIGJyYW5jaCwgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgorbXNnc3RyICJjb3BpYSB1biBicmFuY2ggYW5jaGUgc2UgbGEgZGVzdGluYXppb25lIGVzaXN0ZSIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDYKK21zZ2lkICJsaXN0IGJyYW5jaCBuYW1lcyIKK21zZ3N0ciAiZWxlbmNhIGkgbm9taSBkZWkgYnJhbmNoIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NworbXNnaWQgInNob3cgY3VycmVudCBicmFuY2ggbmFtZSIKK21zZ3N0ciAidmlzdWFsaXp6YSBpbCBub21lIGRlbCBicmFuY2ggY29ycmVudGUiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ4Cittc2dpZCAiY3JlYXRlIHRoZSBicmFuY2gncyByZWZsb2ciCittc2dzdHIgImNyZWEgaWwgcmVnaXN0cm8gZGVpIHJpZmVyaW1lbnRpIGRlbCBicmFuY2giCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUwCittc2dpZCAiZWRpdCB0aGUgZGVzY3JpcHRpb24gZm9yIHRoZSBicmFuY2giCittc2dzdHIgIm1vZGlmaWNhIGxhIGRlc2NyaXppb25lIGRlbCBicmFuY2giCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUxCittc2dpZCAiZm9yY2UgY3JlYXRpb24sIG1vdmUvcmVuYW1lLCBkZWxldGlvbiIKK21zZ3N0ciAiZm9yemEgbGEgY3JlYXppb25lLCBzcG9zdGFtZW50by9yaWRlbm9taW5hemlvbmUsIGVsaW1pbmF6aW9uZSIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NTIKK21zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgYXJlIG1lcmdlZCIKK21zZ3N0ciAic3RhbXBhIHNvbG8gaSBicmFuY2ggc290dG9wb3N0aSBhIG1lcmdlIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY1MworbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBhcmUgbm90IG1lcmdlZCIKK21zZ3N0ciAic3RhbXBhIHNvbG8gaSBicmFuY2ggbm9uIHNvdHRvcG9zdGkgYSBtZXJnZSIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NTQKK21zZ2lkICJsaXN0IGJyYW5jaGVzIGluIGNvbHVtbnMiCittc2dzdHIgImVsZW5jYSBpIGJyYW5jaCBpbiBjb2xvbm5lIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY1NyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQyIGJ1aWx0aW4vbm90ZXMuYzo0MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTggYnVpbHRpbi9ub3Rlcy5jOjU4MSBidWlsdGluL25vdGVzLmM6NTg0CisjOiBidWlsdGluL3RhZy5jOjQzMworbXNnaWQgIm9iamVjdCIKK21zZ3N0ciAib2dnZXR0byIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NTgKK21zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIG9mIHRoZSBvYmplY3QiCittc2dzdHIgInN0YW1wYSBzb2xvIGkgYnJhbmNoIGRlbGwnb2dnZXR0byIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NjAgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OCBidWlsdGluL3RhZy5jOjQ0MAorbXNnaWQgInNvcnRpbmcgYW5kIGZpbHRlcmluZyBhcmUgY2FzZSBpbnNlbnNpdGl2ZSIKK21zZ3N0ciAiIgorImwnb3JkaW5hbWVudG8gZSBpbCBmaWx0cmFnZ2lvIG5vbiBmYW5ubyBkaWZmZXJlbnphIHRyYSBtYWl1c2NvbGUgZSBtaW51c2NvbGUiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjYxIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzggYnVpbHRpbi90YWcuYzo0MzgKKyM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM4Cittc2dpZCAiZm9ybWF0IHRvIHVzZSBmb3IgdGhlIG91dHB1dCIKK21zZ3N0ciAiZm9ybWF0byBkYSB1c2FyZSBwZXIgbCdvdXRwdXQiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Njg0IGJ1aWx0aW4vY2xvbmUuYzo3ODUKK21zZ2lkICJIRUFEIG5vdCBmb3VuZCBiZWxvdyByZWZzL2hlYWRzISIKK21zZ3N0ciAiSEVBRCBub24gdHJvdmF0byBmcmEgaSByaWZlcmltZW50aS9oZWFkISIKKworIzogYnVpbHRpbi9icmFuY2guYzo3MDgKK21zZ2lkICItLWNvbHVtbiBhbmQgLS12ZXJib3NlIGFyZSBpbmNvbXBhdGlibGUiCittc2dzdHIgIi0tY29sdW1uIGUgLS12ZXJib3NlIG5vbiBzb25vIGNvbXBhdGliaWxpIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjcyMyBidWlsdGluL2JyYW5jaC5jOjc3NyBidWlsdGluL2JyYW5jaC5jOjc4NgorbXNnaWQgImJyYW5jaCBuYW1lIHJlcXVpcmVkIgorbXNnc3RyICJub21lIGJyYW5jaCByaWNoaWVzdG8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzUzCittc2dpZCAiQ2Fubm90IGdpdmUgZGVzY3JpcHRpb24gdG8gZGV0YWNoZWQgSEVBRCIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgZm9ybmlyZSB1bmEgZGVzY3JpemlvbmUgcGVyIGwnSEVBRCBzY29sbGVnYXRvIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjc1OAorbXNnaWQgImNhbm5vdCBlZGl0IGRlc2NyaXB0aW9uIG9mIG1vcmUgdGhhbiBvbmUgYnJhbmNoIgorbXNnc3RyICJpbXBvc3NpYmlsZSBtb2RpZmljYXJlIGxhIGRlc2NyaXppb25lIHBlciBwacO5IGRpIHVuIGJyYW5jaCIKKworIzogYnVpbHRpbi9icmFuY2guYzo3NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gY29tbWl0IG9uIGJyYW5jaCAnJXMnIHlldC4iCittc2dzdHIgIk5vbiBlc2lzdGUgYW5jb3JhIG5lc3N1biBjb21taXQgc3VsIGJyYW5jaCAnJXMnLiIKKworIzogYnVpbHRpbi9icmFuY2guYzo3NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gYnJhbmNoIG5hbWVkICclcycuIgorbXNnc3RyICJOb24gZXNpc3RlIGFsY3VuIGJyYW5jaCBkZW5vbWluYXRvICclcycuIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjc4MworbXNnaWQgInRvbyBtYW55IGJyYW5jaGVzIGZvciBhIGNvcHkgb3BlcmF0aW9uIgorbXNnc3RyICJzb25vIHByZXNlbnRpIHRyb3BwaSBicmFuY2ggcGVyIGNvbnNlbnRpcmUgdW4nb3BlcmF6aW9uZSBkaSBjb3BpYSIKKworIzogYnVpbHRpbi9icmFuY2guYzo3OTIKK21zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgZm9yIGEgcmVuYW1lIG9wZXJhdGlvbiIKK21zZ3N0ciAiIgorInNvbm8gcHJlc2VudGkgdHJvcHBpIGFyZ29tZW50aSBwZXIgY29uc2VudGlyZSB1bidvcGVyYXppb25lIGRpICIKKyJyaWRlbm9taW5hemlvbmUiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzk3Cittc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIHRvIHNldCBuZXcgdXBzdHJlYW0iCittc2dzdHIgIiIKKyJzb25vIHByZXNlbnRpIHRyb3BwaSBhcmdvbWVudGkgcGVyIGNvbnNlbnRpcmUgbCdpbXBvc3RhemlvbmUgZGVsIG51b3ZvICIKKyJ1cHN0cmVhbSIKKworIzogYnVpbHRpbi9icmFuY2guYzo4MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvdWxkIG5vdCBzZXQgdXBzdHJlYW0gb2YgSEVBRCB0byAlcyB3aGVuIGl0IGRvZXMgbm90IHBvaW50IHRvIGFueSBicmFuY2guIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgaW1wb3N0YXJlIGwndXBzdHJlYW0gZGkgSEVBRCBhICVzIHF1YW5kbyBub24gcHVudGEgYWQgYWxjdW4gIgorImJyYW5jaC4iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODA0IGJ1aWx0aW4vYnJhbmNoLmM6ODI3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggYnJhbmNoICclcyciCittc2dzdHIgImJyYW5jaCAnJXMnIG5vbiBlc2lzdGVudGUiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODA4CisjLCBjLWZvcm1hdAorbXNnaWQgImJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJpbCBicmFuY2ggJyVzJyBub24gZXNpc3RlIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjgyMQorbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyB0byB1bnNldCB1cHN0cmVhbSIKK21zZ3N0ciAiIgorInNvbm8gcHJlc2VudGkgdHJvcHBpIGFyZ29tZW50aSBwZXIgcmltdW92ZXJlIGxlIGluZm9ybWF6aW9uaSBzdWxsJ3Vwc3RyZWFtIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjgyNQorbXNnaWQgImNvdWxkIG5vdCB1bnNldCB1cHN0cmVhbSBvZiBIRUFEIHdoZW4gaXQgZG9lcyBub3QgcG9pbnQgdG8gYW55IGJyYW5jaC4iCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSByaW11b3ZlcmUgbGUgaW5mb3JtYXppb25pIHN1bGwndXBzdHJlYW0gZGkgSEVBRCBxdWFuZG8gbm9uIHB1bnRhICIKKyJhZCBhbGN1biBicmFuY2guIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjgzMQorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJyVzJyBoYXMgbm8gdXBzdHJlYW0gaW5mb3JtYXRpb24iCittc2dzdHIgIklsIGJyYW5jaCAnJXMnIG5vbiBoYSBpbmZvcm1hemlvbmkgc3VsbCd1cHN0cmVhbSIKKworIzogYnVpbHRpbi9icmFuY2guYzo4NDEKK21zZ2lkICIiCisiVGhlIC1hLCBhbmQgLXIsIG9wdGlvbnMgdG8gJ2dpdCBicmFuY2gnIGRvIG5vdCB0YWtlIGEgYnJhbmNoIG5hbWUuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHVzZTogLWF8LXIgLS1saXN0IDxwYXR0ZXJuPj8iCittc2dzdHIgIiIKKyJMZSBvcHppb25pIGRpICdnaXQgYnJhbmNoJyAtYSBlIC1yIG5vbiByaWNoaWVkb25vIHVuIG5vbWUgYnJhbmNoLlxuIgorIkZvcnNlIHZvbGV2aSB1c2FyZTogLWF8LXIgLS1saXN0IDxwYXR0ZXJuPj8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODQ1Cittc2dpZCAiIgorInRoZSAnLS1zZXQtdXBzdHJlYW0nIG9wdGlvbiBpcyBubyBsb25nZXIgc3VwcG9ydGVkLiBQbGVhc2UgdXNlICctLXRyYWNrJyBvciAiCisiJy0tc2V0LXVwc3RyZWFtLXRvJyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorImwnb3B6aW9uZSAnLS1zZXQtdXBzdHJlYW0nIG5vbiDDqCBwacO5IHN1cHBvcnRhdGEuIFVzYSAnLS10cmFjaycgbyAnLS1zZXQtIgorInVwc3RyZWFtLXRvJy4iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTUgYnVpbHRpbi9idW5kbGUuYzoyMworbXNnaWQgImdpdCBidW5kbGUgY3JlYXRlIFs8b3B0aW9ucz5dIDxmaWxlPiA8Z2l0LXJldi1saXN0IGFyZ3M+IgorbXNnc3RyICJnaXQgYnVuZGxlIGNyZWF0ZSBbPG9wemlvbmk+XSA8ZmlsZT4gPGFyZ29tZW50aSBnaXQtcmV2LWxpc3Q+IgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE2IGJ1aWx0aW4vYnVuZGxlLmM6MjgKK21zZ2lkICJnaXQgYnVuZGxlIHZlcmlmeSBbPG9wdGlvbnM+XSA8ZmlsZT4iCittc2dzdHIgImdpdCBidW5kbGUgdmVyaWZ5IFs8b3B6aW9uaT5dIDxmaWxlPiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxNyBidWlsdGluL2J1bmRsZS5jOjMzCittc2dpZCAiZ2l0IGJ1bmRsZSBsaXN0LWhlYWRzIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSBsaXN0LWhlYWRzIDxmaWxlPiBbPG5vbWUgcmlmZXJpbWVudG8+Li4uXSIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxOCBidWlsdGluL2J1bmRsZS5jOjM4Cittc2dpZCAiZ2l0IGJ1bmRsZSB1bmJ1bmRsZSA8ZmlsZT4gWzxyZWZuYW1lPi4uLl0iCittc2dzdHIgImdpdCBidW5kbGUgdW5idW5kbGUgPGZpbGU+IFs8bm9tZSByaWZlcmltZW50bz4uLi5dIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjY2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM3NQorbXNnaWQgImRvIG5vdCBzaG93IHByb2dyZXNzIG1ldGVyIgorbXNnc3RyICJub24gdmlzdWFsaXp6YXJlIGxhIGJhcnJhIGRpIGF2YW56YW1lbnRvIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjY4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM3NworbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIiCittc2dzdHIgInZpc3VhbGl6emEgbGEgYmFycmEgZGkgYXZhbnphbWVudG8iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NzAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzc5Cittc2dpZCAic2hvdyBwcm9ncmVzcyBtZXRlciBkdXJpbmcgb2JqZWN0IHdyaXRpbmcgcGhhc2UiCittc2dzdHIgIiIKKyJ2aXN1YWxpenphIGxhIGJhcnJhIGRpIGF2YW56YW1lbnRvIGR1cmFudGUgbGEgZmFzZSBkaSBzY3JpdHR1cmEgb2dnZXR0aSIKKworIzogYnVpbHRpbi9idW5kbGUuYzo3MyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODIKK21zZ2lkICJzaW1pbGFyIHRvIC0tYWxsLXByb2dyZXNzIHdoZW4gcHJvZ3Jlc3MgbWV0ZXIgaXMgc2hvd24iCittc2dzdHIgInNpbWlsZSBhIC0tYWxsLXByb2dyZXNzIHF1YW5kbyDDqCB2aXN1YWxpenphdGEgbGEgYmFycmEgZGkgYXZhbnphbWVudG8iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6OTMKK21zZ2lkICJOZWVkIGEgcmVwb3NpdG9yeSB0byBjcmVhdGUgYSBidW5kbGUuIgorbXNnc3RyICJQZXIgY3JlYXJlIHVuIGJ1bmRsZSDDqCBuZWNlc3NhcmlvIHVuIHJlcG9zaXRvcnkuIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjEwNAorbXNnaWQgImRvIG5vdCBzaG93IGJ1bmRsZSBkZXRhaWxzIgorbXNnc3RyICJub24gdmlzdWFsaXp6YXJlIGkgZGV0dGFnbGkgc3VsIGJ1bmRsZSIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgb2theVxuIgorbXNnc3RyICIlcyDDqCBjb3JyZXR0b1xuIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE2MAorbXNnaWQgIk5lZWQgYSByZXBvc2l0b3J5IHRvIHVuYnVuZGxlLiIKK21zZ3N0ciAiUGVyIGRlY29tcHJpbWVyZSB1biBidW5kbGUgw6ggbmVjZXNzYXJpbyB1biByZXBvc2l0b3J5LiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxNjggYnVpbHRpbi9yZW1vdGUuYzoxNjg2Cittc2dpZCAiYmUgdmVyYm9zZTsgbXVzdCBiZSBwbGFjZWQgYmVmb3JlIGEgc3ViY29tbWFuZCIKK21zZ3N0ciAiIgorInZpc3VhbGl6emEgdWx0ZXJpb3JpIGRldHRhZ2xpOyBkZXZlIGVzc2VyZSBjb2xsb2NhdG8gcHJpbWEgZGkgdW4gc290dG9jb21hbmRvIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE5MCBidWlsdGluL3JlbW90ZS5jOjE3MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5rbm93biBzdWJjb21tYW5kOiAlcyIKK21zZ3N0ciAiU290dG9jb21hbmRvIHNjb25vc2NpdXRvOiAlcyIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU5NQorbXNnaWQgIiIKKyJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtIgorInAgfCA8dHlwZT4gfCAtLXRleHRjb252IHwgLS1maWx0ZXJzKSBbLS1wYXRoPTxwYXRoPl0gPG9iamVjdD4iCittc2dzdHIgIiIKKyJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtIgorInAgfCA8dGlwbz4gfCAtLXRleHRjb252IHwgLS1maWx0ZXJzKSBbLS1wYXRoPTxwZXJjb3Jzbz5dIDxvZ2dldHRvPiIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU5NgorbXNnaWQgIiIKKyJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCisiZmlsdGVyc10iCittc2dzdHIgIiIKKyJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCisiZmlsdGVyc10iCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MTcKK21zZ2lkICJvbmx5IG9uZSBiYXRjaCBvcHRpb24gbWF5IGJlIHNwZWNpZmllZCIKK21zZ3N0ciAicHXDsiBlc3NlcmUgc3BlY2lmaWNhdGEgc29sbyB1bidvcHppb25lIGJhdGNoIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM1Cittc2dpZCAiPHR5cGU+IGNhbiBiZSBvbmUgb2Y6IGJsb2IsIHRyZWUsIGNvbW1pdCwgdGFnIgorbXNnc3RyICI8dGlwbz4gcHXDsiBlc3NlcmUgdW5vIGZyYSBibG9iLCB0cmVlLCBjb21taXQsIHRhZyIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNgorbXNnaWQgInNob3cgb2JqZWN0IHR5cGUiCittc2dzdHIgInZpc3VhbGl6emEgdGlwbyBvZ2dldHRvIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM3Cittc2dpZCAic2hvdyBvYmplY3Qgc2l6ZSIKK21zZ3N0ciAidmlzdWFsaXp6YSBkaW1lbnNpb25pIG9nZ2V0dG8iCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzkKK21zZ2lkICJleGl0IHdpdGggemVybyB3aGVuIHRoZXJlJ3Mgbm8gZXJyb3IiCittc2dzdHIgImVzY2kgY29uIGNvZGljZSBkJ3VzY2l0YSB6ZXJvIHNlIG5vbiBzaSBzb25vIHZlcmlmaWNhdGkgZXJyb3JpIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQwCittc2dpZCAicHJldHR5LXByaW50IG9iamVjdCdzIGNvbnRlbnQiCittc2dzdHIgInN0YW1wYSBpbCBjb250ZW51dG8gZGVsbCdvZ2dldHRvIGNvbiB1biBmb3JtYXRvIGxlZ2dpYmlsZSIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MgorbXNnaWQgImZvciBibG9iIG9iamVjdHMsIHJ1biB0ZXh0Y29udiBvbiBvYmplY3QncyBjb250ZW50IgorbXNnc3RyICJlc2VndWkgdGV4dGNvbnYgc3VsIGNvbnRlbnV0byBkZWxsJ29nZ2V0dG8gKHBlciBnbGkgb2dnZXR0aSBibG9iKSIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NAorbXNnaWQgImZvciBibG9iIG9iamVjdHMsIHJ1biBmaWx0ZXJzIG9uIG9iamVjdCdzIGNvbnRlbnQiCittc2dzdHIgImVzZWd1aSBpIGZpbHRyaSBzdWwgY29udGVudXRvIGRlbGwnb2dnZXR0byAocGVyIGdsaSBvZ2dldHRpIGJsb2IpIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ1IGdpdC1zdWJtb2R1bGUuc2g6MTAwMgorbXNnaWQgImJsb2IiCittc2dzdHIgImJsb2IiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDYKK21zZ2lkICJ1c2UgYSBzcGVjaWZpYyBwYXRoIGZvciAtLXRleHRjb252Ly0tZmlsdGVycyIKK21zZ3N0ciAidXNhIHVuIHBlcmNvcnNvIHNwZWNpZmljbyBwZXIgLS10ZXh0Y29udi8tLWZpbHRlcnMiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDgKK21zZ2lkICJhbGxvdyAtcyBhbmQgLXQgdG8gd29yayB3aXRoIGJyb2tlbi9jb3JydXB0IG9iamVjdHMiCittc2dzdHIgImNvbnNlbnRpIGEgLXMgZSAtdCBkaSBmdW56aW9uYXJlIGNvbiBvZ2dldHRpIG1hbGZvcm1hdGkvY29ycm90dGkiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDkKK21zZ2lkICJidWZmZXIgLS1iYXRjaCBvdXRwdXQiCittc2dzdHIgImVzZWd1aSBpbCBidWZmZXJpbmcgZGVsbCdvdXRwdXQgZGkgLS1iYXRjaCIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1MQorbXNnaWQgInNob3cgaW5mbyBhbmQgY29udGVudCBvZiBvYmplY3RzIGZlZCBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAiIgorInZpc3VhbGl6emEgbGUgaW5mb3JtYXppb25pIGUgaWwgY29udGVudXRvIGRlZ2xpIG9nZ2V0dGkgZm9ybml0aSBuZWxsbyAiCisic3RhbmRhcmQgaW5wdXQiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTUKK21zZ2lkICJzaG93IGluZm8gYWJvdXQgb2JqZWN0cyBmZWQgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgInZpc3VhbGl6emEgbGUgaW5mb3JtYXppb25pIGRlZ2xpIG9nZ2V0dGkgZm9ybml0aSBuZWxsbyBzdGFuZGFyZCBpbnB1dCIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1OQorbXNnaWQgImZvbGxvdyBpbi10cmVlIHN5bWxpbmtzICh1c2VkIHdpdGggLS1iYXRjaCBvciAtLWJhdGNoLWNoZWNrKSIKK21zZ3N0ciAiIgorInNlZ3VpIGkgY29sbGVnYW1lbnRpIHNpbWJvbGljaSBlbnRybyBsJ2FsYmVybyAodXNhdG8gY29uIC0tYmF0Y2ggbyAtLWJhdGNoLSIKKyJjaGVjaykiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NjEKK21zZ2lkICJzaG93IGFsbCBvYmplY3RzIHdpdGggLS1iYXRjaCBvciAtLWJhdGNoLWNoZWNrIgorbXNnc3RyICJ2aXN1YWxpenphIHR1dHRpIGdsaSBvZ2dldHRpIGNvbiAtLWJhdGNoIG8gLS1iYXRjaC1jaGVjayIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY2MworbXNnaWQgImRvIG5vdCBvcmRlciAtLWJhdGNoLWFsbC1vYmplY3RzIG91dHB1dCIKK21zZ3N0ciAibm9uIG9yZGluYXJlIGwnb3V0cHV0IGRpIC0tYmF0Y2gtYWxsLW9iamVjdHMiCisKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjEzCittc2dpZCAiZ2l0IGNoZWNrLWF0dHIgWy1hIHwgLS1hbGwgfCA8YXR0cj4uLi5dIFstLV0gPHBhdGhuYW1lPi4uLiIKK21zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgWy1hIHwgLS1hbGwgfCA8YXR0cmlidXRvPi4uLl0gWy0tXSA8bm9tZSBwZXJjb3Jzbz4uLi4iCisKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjE0Cittc2dpZCAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSIKK21zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPGF0dHJpYnV0bz4uLi5dIgorCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMQorbXNnaWQgInJlcG9ydCBhbGwgYXR0cmlidXRlcyBzZXQgb24gZmlsZSIKK21zZ3N0ciAiaW5kaWNhIHR1dHRpIGdsaSBhdHRyaWJ1dGkgaW1wb3N0YXRpIHN1bCBmaWxlIgorCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMgorbXNnaWQgInVzZSAuZ2l0YXR0cmlidXRlcyBvbmx5IGZyb20gdGhlIGluZGV4IgorbXNnc3RyICJ1c2Egc29sbyBpbCBmaWxlIC5naXRhdHRyaWJ1dGVzIGRlbGwnaW5kaWNlIgorCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMyBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI1IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKK21zZ2lkICJyZWFkIGZpbGUgbmFtZXMgZnJvbSBzdGRpbiIKK21zZ3N0ciAibGVnZ2kgaSBub21pIGRlaSBmaWxlIGRhbGxvIHN0YW5kYXJkIGlucHV0IgorCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyNSBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI3Cittc2dpZCAidGVybWluYXRlIGlucHV0IGFuZCBvdXRwdXQgcmVjb3JkcyBieSBhIE5VTCBjaGFyYWN0ZXIiCittc2dzdHIgInRlcm1pbmEgaSByZWNvcmQgZGkgaW5wdXQgZSBvdXRwdXQgY29uIHVuIGNhcmF0dGVyZSBOVUwiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjEgYnVpbHRpbi9jaGVja291dC5jOjE0NjQgYnVpbHRpbi9nYy5jOjUzNworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5OQorbXNnaWQgInN1cHByZXNzIHByb2dyZXNzIHJlcG9ydGluZyIKK21zZ3N0ciAibm9uIHZpc3VhbGl6emFyZSBsJ2F2YW56YW1lbnRvIGRlbGwnb3BlcmF6aW9uZSIKKworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOQorbXNnaWQgInNob3cgbm9uLW1hdGNoaW5nIGlucHV0IHBhdGhzIgorbXNnc3RyICJ2aXN1YWxpenphIGkgcGVyY29yc2kgZGkgaW5wdXQgbm9uIGNvcnJpc3BvbmRlbnRpIgorCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjMxCittc2dpZCAiaWdub3JlIGluZGV4IHdoZW4gY2hlY2tpbmciCittc2dzdHIgImlnbm9yYSBsJ2luZGljZSBkdXJhbnRlIGlsIGNvbnRyb2xsbyIKKworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjMKK21zZ2lkICJjYW5ub3Qgc3BlY2lmeSBwYXRobmFtZXMgd2l0aCAtLXN0ZGluIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzcGVjaWZpY2FyZSBpIG5vbWkgcGVyY29yc28gY29uIC0tc3RkaW4iCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY2Cittc2dpZCAiLXogb25seSBtYWtlcyBzZW5zZSB3aXRoIC0tc3RkaW4iCittc2dzdHIgIi16IGhhIHNlbnNvIHNvbG8gY29uIC0tc3RkaW4iCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY4Cittc2dpZCAibm8gcGF0aCBzcGVjaWZpZWQiCittc2dzdHIgIm5lc3N1biBwZXJjb3JzbyBzcGVjaWZpY2F0byIKKworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzIKK21zZ2lkICItLXF1aWV0IGlzIG9ubHkgdmFsaWQgd2l0aCBhIHNpbmdsZSBwYXRobmFtZSIKK21zZ3N0ciAiLS1xdWlldCDDqCB2YWxpZG8gc29sbyBjb24gdW4gbm9tZSBwZXJjb3JzbyBzaW5nb2xvIgorCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3NAorbXNnaWQgImNhbm5vdCBoYXZlIGJvdGggLS1xdWlldCBhbmQgLS12ZXJib3NlIgorbXNnc3RyICJub24gw6ggcG9zc2liaWxlIHVzYXJlIHNpYSAtLXF1aWV0IHNpYSAtLXZlcmJvc2UiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTc3Cittc2dpZCAiLS1ub24tbWF0Y2hpbmcgaXMgb25seSB2YWxpZCB3aXRoIC0tdmVyYm9zZSIKK21zZ3N0ciAiLS1ub24tbWF0Y2hpbmcgw6ggdmFsaWRvIHNvbG8gY29uIC0tdmVyYm9zZSIKKworIzogYnVpbHRpbi9jaGVjay1tYWlsbWFwLmM6OQorbXNnaWQgImdpdCBjaGVjay1tYWlsbWFwIFs8b3B0aW9ucz5dIDxjb250YWN0Pi4uLiIKK21zZ3N0ciAiZ2l0IGNoZWNrLW1haWxtYXAgWzxvcHppb25pPl0gPGNvbnRhdHRvPi4uLiIKKworIzogYnVpbHRpbi9jaGVjay1tYWlsbWFwLmM6MTQKK21zZ2lkICJhbHNvIHJlYWQgY29udGFjdHMgZnJvbSBzdGRpbiIKK21zZ3N0ciAibGVnZ2kgaSBjb250YXR0aSBhbmNoZSBkYWxsbyBzdGFuZGFyZCBpbnB1dCIKKworIzogYnVpbHRpbi9jaGVjay1tYWlsbWFwLmM6MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbnRhY3Q6ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGlsIGNvbnRhdHRvOiAlcyIKKworIzogYnVpbHRpbi9jaGVjay1tYWlsbWFwLmM6NDgKK21zZ2lkICJubyBjb250YWN0cyBzcGVjaWZpZWQiCittc2dzdHIgIm5lc3N1biBjb250YXR0byBzcGVjaWZpY2F0byIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjEzMQorbXNnaWQgImdpdCBjaGVja291dC1pbmRleCBbPG9wdGlvbnM+XSBbLS1dIFs8ZmlsZT4uLi5dIgorbXNnc3RyICJnaXQgY2hlY2tvdXQtaW5kZXggWzxvcHppb25pPl0gWy0tXSBbPGZpbGU+Li4uXSIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE0OAorbXNnaWQgInN0YWdlIHNob3VsZCBiZSBiZXR3ZWVuIDEgYW5kIDMgb3IgYWxsIgorbXNnc3RyICJsYSBmYXNlIGRldidlc3NlcmUgY29tcHJlc2EgZnJhIDEgZSAzIG8gYWxsIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY0Cittc2dpZCAiY2hlY2sgb3V0IGFsbCBmaWxlcyBpbiB0aGUgaW5kZXgiCittc2dzdHIgImVzZWd1aSBpbCBjaGVja291dCBkaSB0dXR0aSBpIGZpbGUgbmVsbCdpbmRpY2UiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjUKK21zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgZXhpc3RpbmcgZmlsZXMiCittc2dzdHIgImZvcnphIGxhIHNvdnJhc2NyaXR0dXJhIGRlaSBmaWxlIGVzaXN0ZW50aSIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NworbXNnaWQgIm5vIHdhcm5pbmcgZm9yIGV4aXN0aW5nIGZpbGVzIGFuZCBmaWxlcyBub3QgaW4gaW5kZXgiCittc2dzdHIgIm5vbiBlbWV0dGVyZSB1biBhdnZpc28gcGVyIGkgZmlsZSBlc2lzdGVudGkgZSBpIGZpbGUgbm9uIG5lbGwnaW5kaWNlIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY5Cittc2dpZCAiZG9uJ3QgY2hlY2tvdXQgbmV3IGZpbGVzIgorbXNnc3RyICJub24gZXNlZ3VpcmUgaWwgY2hlY2tvdXQgZGVpIGZpbGUgbnVvdmkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzEKK21zZ2lkICJ1cGRhdGUgc3RhdCBpbmZvcm1hdGlvbiBpbiB0aGUgaW5kZXggZmlsZSIKK21zZ3N0ciAiYWdnaW9ybmEgbGUgaW5mb3JtYXppb25pIHN0YXQgbmVsIGZpbGUgaW5kaWNlIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc1Cittc2dpZCAicmVhZCBsaXN0IG9mIHBhdGhzIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJsZWdnaSBsJ2VsZW5jbyBkZWkgcGVyY29yc2kgZGFsbG8gc3RhbmRhcmQgaW5wdXQiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzcKK21zZ2lkICJ3cml0ZSB0aGUgY29udGVudCB0byB0ZW1wb3JhcnkgZmlsZXMiCittc2dzdHIgInNjcml2aSBpbCBjb250ZW51dG8gaW4gZmlsZSB0ZW1wb3JhbmVpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc4IGJ1aWx0aW4vY29sdW1uLmM6MzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxMSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY3MgorbXNnaWQgInN0cmluZyIKK21zZ3N0ciAic3RyaW5nYSIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3OQorbXNnaWQgIndoZW4gY3JlYXRpbmcgZmlsZXMsIHByZXBlbmQgPHN0cmluZz4iCittc2dzdHIgImFnZ2l1bmdpIGlsIHByZWZpc3NvIDxzdHJpbmdhPiBkdXJhbnRlIGxhIGNyZWF6aW9uZSBkZWkgZmlsZSIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE4MQorbXNnaWQgImNvcHkgb3V0IHRoZSBmaWxlcyBmcm9tIG5hbWVkIHN0YWdlIgorbXNnc3RyICJjb3BpYSBpIGZpbGUgZGFsbGEgZmFzZSBzcGVjaWZpY2F0YSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjMxCittc2dpZCAiZ2l0IGNoZWNrb3V0IFs8b3B0aW9ucz5dIDxicmFuY2g+IgorbXNnc3RyICJnaXQgY2hlY2tvdXQgWzxvcHppb25pPl0gPGJyYW5jaD4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozMgorbXNnaWQgImdpdCBjaGVja291dCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIC0tIDxmaWxlPi4uLiIKK21zZ3N0ciAiZ2l0IGNoZWNrb3V0IFs8b3B6aW9uaT5dIFs8YnJhbmNoPl0gLS0gPGZpbGU+Li4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzcKK21zZ2lkICJnaXQgc3dpdGNoIFs8b3B0aW9ucz5dIFs8YnJhbmNoPl0iCittc2dzdHIgImdpdCBzd2l0Y2ggWzxvcHppb25pPl0gPGJyYW5jaD4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MgorbXNnaWQgImdpdCByZXN0b3JlIFs8b3B0aW9ucz5dIFstLXNvdXJjZT08YnJhbmNoPl0gPGZpbGU+Li4uIgorbXNnc3RyICJnaXQgcmVzdG9yZSBbPG9wemlvbmk+XSBbLS1zb3VyY2U9PGJyYW5jaD5dIDxmaWxlPi4uLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NSBidWlsdGluL2NoZWNrb3V0LmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG91ciB2ZXJzaW9uIgorbXNnc3RyICJpbCBwZXJjb3JzbyAnJXMnIG5vbiBoYSBsYSBub3N0cmEgdmVyc2lvbmUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSB0aGVpciB2ZXJzaW9uIgorbXNnc3RyICJpbCBwZXJjb3JzbyAnJXMnIG5vbiBoYSBsYSBsb3JvIHZlcnNpb25lIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIGFsbCBuZWNlc3NhcnkgdmVyc2lvbnMiCittc2dzdHIgImlsIHBlcmNvcnNvICclcycgbm9uIGhhIHR1dHRlIGxlIHZlcnNpb25pIG5lY2Vzc2FyaWUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgbmVjZXNzYXJ5IHZlcnNpb25zIgorbXNnc3RyICJpbCBwZXJjb3JzbyAnJXMnIG5vbiBoYSBsZSB2ZXJzaW9uaSBuZWNlc3NhcmllIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJzogY2Fubm90IG1lcmdlIgorbXNnc3RyICJwZXJjb3JzbyAnJXMnOiBpbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBtZXJnZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjI3NworIywgYy1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gYWRkIG1lcmdlIHJlc3VsdCBmb3IgJyVzJyIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgYWdnaXVuZ2VyZSBpbCByaXN1bHRhdG8gZGVsIG1lcmdlIHBlciAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY3JlYXRlZCAlZCBtZXJnZSBjb25mbGljdCIKK21zZ2lkX3BsdXJhbCAiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0cyIKK21zZ3N0clswXSAiUmljcmVhdG8gJWQgY29uZmxpdHRvIGRpIG1lcmdlIgorbXNnc3RyWzFdICJSaWNyZWF0aSAlZCBjb25mbGl0dGkgZGkgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRlZCAlZCBwYXRoIGZyb20gJXMiCittc2dpZF9wbHVyYWwgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSAlcyIKK21zZ3N0clswXSAiQWdnaW9ybmF0byAlZCBwZXJjb3JzbyBkYSAlcyIKK21zZ3N0clsxXSAiQWdnaW9ybmF0aSAlZCBwZXJjb3JzaSBkYSAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4OQorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSB0aGUgaW5kZXgiCittc2dpZF9wbHVyYWwgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSB0aGUgaW5kZXgiCittc2dzdHJbMF0gIkFnZ2lvcm5hdG8gJWQgcGVyY29yc28gZGFsbCdpbmRpY2UiCittc2dzdHJbMV0gIkFnZ2lvcm5hdGkgJWQgcGVyY29yc2kgZGFsbCdpbmRpY2UiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTIgYnVpbHRpbi9jaGVja291dC5jOjQxNSBidWlsdGluL2NoZWNrb3V0LmM6NDE4CisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCB1cGRhdGluZyBwYXRocyIKK21zZ3N0ciAiJyVzJyBub24gcHXDsiBlc3NlcmUgdXNhdG8gY29uIGkgcGVyY29yc2kgaW4gZmFzZSBkaSBhZ2dpb3JuYW1lbnRvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDI1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgorbXNnc3RyICInJXMnIG5vbiBwdcOyIGVzc2VyZSB1c2F0byBjb24gJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHVwZGF0ZSBwYXRocyBhbmQgc3dpdGNoIHRvIGJyYW5jaCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUuIgorbXNnc3RyICIiCisiSW1wb3NzaWJpbGUgYWdnaW9ybmFyZSBkZWkgcGVyY29yc2kgZSBwYXNzYXJlIGFsIGJyYW5jaCAnJXMnICIKKyJjb250ZW1wb3JhbmVhbWVudGUuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5laXRoZXIgJyVzJyBvciAnJXMnIGlzIHNwZWNpZmllZCIKK21zZ3N0ciAibsOpICclcycgbsOpICclcycgc29ubyBzdGF0aSBzcGVjaWZpY2F0aSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQ0MAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG11c3QgYmUgdXNlZCB3aGVuICclcycgaXMgbm90IHNwZWNpZmllZCIKK21zZ3N0ciAiJyVzJyBkZXYnZXNzZXJlIHVzYXRvIHF1YW5kbyAnJXMnIG5vbiDDqCBzcGVjaWZpY2F0byIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQ0NSBidWlsdGluL2NoZWNrb3V0LmM6NDUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgb3IgJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgorbXNnc3RyICInJXMnIG8gJyVzJyBub24gcG9zc29ubyBlc3NlcmUgdXNhdGkgY29uICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTA5IGJ1aWx0aW4vY2hlY2tvdXQuYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGlzIHVubWVyZ2VkIgorbXNnc3RyICJpbCBwZXJjb3JzbyAnJXMnIG5vbiDDqCBzdGF0byBzb3R0b3Bvc3RvIGEgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2ODQgYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoxMDYKK21zZ2lkICJ5b3UgbmVlZCB0byByZXNvbHZlIHlvdXIgY3VycmVudCBpbmRleCBmaXJzdCIKK21zZ3N0ciAicHJpbWEgZGV2aSByaXNvbHZlcmUgbCdpbmRpY2UgY29ycmVudGUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNhbm5vdCBjb250aW51ZSB3aXRoIHN0YWdlZCBjaGFuZ2VzIGluIHRoZSBmb2xsb3dpbmcgZmlsZXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBjb250aW51YXJlIGNvbiBtb2RpZmljaGUgaW4gc3RhZ2UgbmVpIGZpbGUgc2VndWVudGk6XG4iCisiJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FuIG5vdCBkbyByZWZsb2cgZm9yICclcyc6ICVzXG4iCittc2dzdHIgIkltcG9zc2liaWxlIGVzYW1pbmFyZSBpbCByZWdpc3RybyBkZWkgcmlmZXJpbWVudGkgcGVyICclcyc6ICVzXG4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4NzkKK21zZ2lkICJIRUFEIGlzIG5vdyBhdCIKK21zZ3N0ciAiSEVBRCBzaSB0cm92YSBvcmEgYSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjg4MyBidWlsdGluL2Nsb25lLmM6NzE3Cittc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBIRUFEIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhZ2dpb3JuYXJlIEhFQUQiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVzZXQgYnJhbmNoICclcydcbiIKK21zZ3N0ciAiUmlwcmlzdGluYSBpbCBicmFuY2ggJyVzJ1xuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFscmVhZHkgb24gJyVzJ1xuIgorbXNnc3RyICJTaSDDqCBnacOgIHN1ICclcydcbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjg5NAorIywgYy1mb3JtYXQKK21zZ2lkICJTd2l0Y2hlZCB0byBhbmQgcmVzZXQgYnJhbmNoICclcydcbiIKK21zZ3N0ciAiU2kgw6ggcGFzc2F0aSBhbCBicmFuY2ggJyVzJyBlIGxvIHNpIMOoIHJlaW1wb3N0YXRvXG4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTYgYnVpbHRpbi9jaGVja291dC5jOjEzMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3dpdGNoZWQgdG8gYSBuZXcgYnJhbmNoICclcydcbiIKK21zZ3N0ciAiU2kgw6ggcGFzc2F0aSBhIHVuIG51b3ZvIGJyYW5jaCAnJXMnXG4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3dpdGNoZWQgdG8gYnJhbmNoICclcydcbiIKK21zZ3N0ciAiU2kgw6ggcGFzc2F0aSBhbCBicmFuY2ggJyVzJ1xuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAuLi4gYW5kICVkIG1vcmUuXG4iCittc2dzdHIgIiAuLi5lIGFsdHJpICVkLlxuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXYXJuaW5nOiB5b3UgYXJlIGxlYXZpbmcgJWQgY29tbWl0IGJlaGluZCwgbm90IGNvbm5lY3RlZCB0b1xuIgorImFueSBvZiB5b3VyIGJyYW5jaGVzOlxuIgorIlxuIgorIiVzXG4iCittc2dpZF9wbHVyYWwgIiIKKyJXYXJuaW5nOiB5b3UgYXJlIGxlYXZpbmcgJWQgY29tbWl0cyBiZWhpbmQsIG5vdCBjb25uZWN0ZWQgdG9cbiIKKyJhbnkgb2YgeW91ciBicmFuY2hlczpcbiIKKyJcbiIKKyIlc1xuIgorbXNnc3RyWzBdICIiCisiQXR0ZW56aW9uZTogc3RhaSByaW11b3ZlbmRvICVkIGNvbW1pdCBub24gY29sbGVnYXRvIGFkIGFsY3VuXG4iCisiYnJhbmNoOlxuIgorIlxuIgorIiVzXG4iCittc2dzdHJbMV0gIiIKKyJBdHRlbnppb25lOiBzdGFpIHJpbXVvdmVuZG8gJWQgY29tbWl0IG5vbiBjb2xsZWdhdGkgYWQgYWxjdW5cbiIKKyJicmFuY2g6XG4iCisiXG4iCisiJXNcbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjk3NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSWYgeW91IHdhbnQgdG8ga2VlcCBpdCBieSBjcmVhdGluZyBhIG5ldyBicmFuY2gsIHRoaXMgbWF5IGJlIGEgZ29vZCB0aW1lXG4iCisidG8gZG8gc28gd2l0aDpcbiIKKyJcbiIKKyIgZ2l0IGJyYW5jaCA8bmV3LWJyYW5jaC1uYW1lPiAlc1xuIgorIlxuIgorbXNnaWRfcGx1cmFsICIiCisiSWYgeW91IHdhbnQgdG8ga2VlcCB0aGVtIGJ5IGNyZWF0aW5nIGEgbmV3IGJyYW5jaCwgdGhpcyBtYXkgYmUgYSBnb29kIHRpbWVcbiIKKyJ0byBkbyBzbyB3aXRoOlxuIgorIlxuIgorIiBnaXQgYnJhbmNoIDxuZXctYnJhbmNoLW5hbWU+ICVzXG4iCisiXG4iCittc2dzdHJbMF0gIiIKKyJTZSB2dW9pIG1hbnRlbmVybG8gY3JlYW5kbyB1biBudW92byBicmFuY2gsIHF1ZXN0byBwb3RyZWJiZSBlc3NlcmVcbiIKKyJ1biBidW9uIG1vbWVudG8gcGVyIGZhcmxvIGNvbjpcbiIKKyJcbiIKKyIgZ2l0IGJyYW5jaCA8bm9tZSBkZWwgbnVvdm8gYnJhbmNoPiAlc1xuIgorIlxuIgorbXNnc3RyWzFdICIiCisiU2UgdnVvaSBtYW50ZW5lcmxpIGNyZWFuZG8gdW4gbnVvdm8gYnJhbmNoLCBxdWVzdG8gcG90cmViYmUgZXNzZXJlXG4iCisidW4gYnVvbiBtb21lbnRvIHBlciBmYXJsbyBjb246XG4iCisiXG4iCisiIGdpdCBicmFuY2ggPG5vbWUgZGVsIG51b3ZvIGJyYW5jaD4gJXNcbiIKKyJcbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEwMDkKK21zZ2lkICJpbnRlcm5hbCBlcnJvciBpbiByZXZpc2lvbiB3YWxrIgorbXNnc3RyICJlcnJvcmUgaW50ZXJubyBkdXJhbnRlIGxhIHZpc2l0YSBkZWxsZSByZXZpc2lvbmkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDEzCittc2dpZCAiUHJldmlvdXMgSEVBRCBwb3NpdGlvbiB3YXMiCittc2dzdHIgIkxhIHByZWNlZGVudGUgcG9zaXppb25lIGRpIEhFQUQgZXJhIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTA1MyBidWlsdGluL2NoZWNrb3V0LmM6MTMxNQorbXNnaWQgIllvdSBhcmUgb24gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iCittc2dzdHIgIlNlaSBzdSB1biBicmFuY2ggY2hlIGRldmUgYW5jb3JhIGVzc2VyZSBjcmVhdG8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyInJXMnIGNvdWxkIGJlIGJvdGggYSBsb2NhbCBmaWxlIGFuZCBhIHRyYWNraW5nIGJyYW5jaC5cbiIKKyJQbGVhc2UgdXNlIC0tIChhbmQgb3B0aW9uYWxseSAtLW5vLWd1ZXNzKSB0byBkaXNhbWJpZ3VhdGUiCittc2dzdHIgIiIKKyInJXMnIHBvdHJlYmJlIGVzc2VyZSBzaWEgdW4gZmlsZSBsb2NhbGUsIHNpYSB1biBicmFuY2ggZGEgdHJhY2NpYXJlLlxuIgorIlVzYSAtLSAoZSBmYWNvbHRhdGl2YW1lbnRlIC0tbm8tZ3Vlc3MpIHBlciByaW11b3ZlcmUgbCdhbWJpZ3VpdMOgIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTEzNQorbXNnaWQgIiIKKyJJZiB5b3UgbWVhbnQgdG8gY2hlY2sgb3V0IGEgcmVtb3RlIHRyYWNraW5nIGJyYW5jaCBvbiwgZS5nLiAnb3JpZ2luJyxcbiIKKyJ5b3UgY2FuIGRvIHNvIGJ5IGZ1bGx5IHF1YWxpZnlpbmcgdGhlIG5hbWUgd2l0aCB0aGUgLS10cmFjayBvcHRpb246XG4iCisiXG4iCisiICAgIGdpdCBjaGVja291dCAtLXRyYWNrIG9yaWdpbi88bmFtZT5cbiIKKyJcbiIKKyJJZiB5b3UnZCBsaWtlIHRvIGFsd2F5cyBoYXZlIGNoZWNrb3V0cyBvZiBhbiBhbWJpZ3VvdXMgPG5hbWU+IHByZWZlclxuIgorIm9uZSByZW1vdGUsIGUuZy4gdGhlICdvcmlnaW4nIHJlbW90ZSwgY29uc2lkZXIgc2V0dGluZ1xuIgorImNoZWNrb3V0LmRlZmF1bHRSZW1vdGU9b3JpZ2luIGluIHlvdXIgY29uZmlnLiIKK21zZ3N0ciAiIgorIlNlIGludGVuZGV2aSBlc2VndWlyZSBpbCBjaGVja291dCBkaSB1biBicmFuY2ggcmVtb3RvLCBhZCBlcy4gJ29yaWdpbicsXG4iCisicHVvaSBmYXJsbyB1c2FuZG8gbGEgdmVyc2lvbmUgY29tcGxldGFtZW50ZSBxdWFsaWZpY2F0YSBkZWwgbm9tZVxuIgorImNvbiBsJ29wemlvbmUgLS10cmFjazpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZWNrb3V0IC0tdHJhY2sgb3JpZ2luLzxub21lPlxuIgorIlxuIgorIlNlIHByZWZlcmlzY2kgY2hlIGkgY2hlY2tvdXQgZGkgdW4gPG5vbWU+IGFtYmlndW8gc2lhbm8gc2VtcHJlIHJpc29sdGlcbiIKKyJyaXNwZXR0byBhIHVuIHBhcnRpY29sYXJlIHJlbW90bywgYWQgZXMuICdvcmlnaW4nLCBwb3RyZXN0aSB2b2xlclxuIgorImltcG9zdGFyZSBjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbiBuZWwgdHVvIGZpbGUgZGkgY29uZmlndXJhemlvbmUuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTE0NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG1hdGNoZWQgbXVsdGlwbGUgKCVkKSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoZXMiCittc2dzdHIgIiclcycgY29ycmlzcG9uZGUgYSBwacO5ICglZCkgYnJhbmNoIGNoZSBuZSB0cmFjY2lhbm8gdW5vIHJlbW90byIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyMTEKK21zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQiCittc2dzdHIgImF0dGVzbyBzb2xvIHVuIHJpZmVyaW1lbnRvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQsICVkIGdpdmVuLiIKK21zZ3N0ciAiYXR0ZXNvIHNvbG8gdW4gcmlmZXJpbWVudG8sICVkIHNwZWNpZmljYXRpLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyNzQgYnVpbHRpbi93b3JrdHJlZS5jOjI4MyBidWlsdGluL3dvcmt0cmVlLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKK21zZ3N0ciAicmlmZXJpbWVudG8gbm9uIHZhbGlkbzogJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjg3IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZmVyZW5jZSBpcyBub3QgYSB0cmVlOiAlcyIKK21zZ3N0ciAiaWwgcmlmZXJpbWVudG8gbm9uIMOoIHVuIGFsYmVybzogJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM0CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgdGFnICclcyciCittc2dzdHIgImF0dGVzbyBicmFuY2gsIHJpY2V2dXRvIHRhZyAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMzNgorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290IHJlbW90ZSBicmFuY2ggJyVzJyIKK21zZ3N0ciAiYXR0ZXNvIGJyYW5jaCwgcmljZXZ1dG8gYnJhbmNoIHJlbW90byAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMzNyBidWlsdGluL2NoZWNrb3V0LmM6MTM0NQorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290ICclcyciCittc2dzdHIgImF0dGVzbyBicmFuY2gsIHJpY2V2dXRvICclcyciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzQwCisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgY29tbWl0ICclcyciCittc2dzdHIgImF0dGVzbyBicmFuY2gsIHJpY2V2dXRvIGNvbW1pdCAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM1NgorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSBtZXJnaW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgbWVyZ2UgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgY2FtYmlhcmUgYnJhbmNoIGR1cmFudGUgdW4gbWVyZ2VcbiIKKyJDb25zaWRlcmEgbCd1c28gZGkgXCJnaXQgbWVyZ2UgLS1xdWl0XCIgbyBkaSBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzYwCittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIGluIHRoZSBtaWRkbGUgb2YgYW4gYW0gc2Vzc2lvblxuIgorIkNvbnNpZGVyIFwiZ2l0IGFtIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIGNhbWJpYXJlIGJyYW5jaCBuZWwgYmVsIG1lenpvIGRpIHVuYSBzZXNzaW9uZSBhbVxuIgorIkNvbnNpZGVyYSBsJ3VzbyBkaSBcImdpdCBhbSAtLXF1aXRcIiBvIGRpIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjQKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgcmViYXNpbmdcbiIKKyJDb25zaWRlciBcImdpdCByZWJhc2UgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgY2FtYmlhcmUgYnJhbmNoIGR1cmFudGUgdW4gcmViYXNlXG4iCisiQ29uc2lkZXJhIGwndXNvIGRpIFwiZ2l0IHJlYmFzZSAtLXF1aXRcIiBvIGRpIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjgKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgY2hlcnJ5LXBpY2tpbmdcbiIKKyJDb25zaWRlciBcImdpdCBjaGVycnktcGljayAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBjYW1iaWFyZSBicmFuY2ggZHVyYW50ZSB1biBjaGVycnktcGlja1xuIgorIkNvbnNpZGVyYSBsJ3VzbyBkaSBcImdpdCBjaGVycnktcGljayAtLXF1aXRcIiBvIGRpIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzIKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgcmV2ZXJ0aW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgcmV2ZXJ0IC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIGNhbWJpYXJlIGJyYW5jaCBkdXJhbnRlIHVuIHJldmVydFxuIgorIkNvbnNpZGVyYSBsJ3VzbyBkaSBcImdpdCByZXZlcnQgLS1xdWl0XCIgbyBkaSBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzc2Cittc2dpZCAieW91IGFyZSBzd2l0Y2hpbmcgYnJhbmNoIHdoaWxlIGJpc2VjdGluZyIKK21zZ3N0ciAic3RhaSBjYW1iaWFuZG8gYnJhbmNoIGR1cmFudGUgdW5hIGJpc2V6aW9uZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzODMKK21zZ2lkICJwYXRocyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKK21zZ3N0ciAiaSBwZXJjb3JzaSBub24gcG9zc29ubyBlc3NlcmUgdXNhdGkgcGFzc2FuZG8gZGEgdW4gYnJhbmNoIGEgdW4gYWx0cm8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzg2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzkwIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMiCittc2dzdHIgIiclcycgbm9uIHB1w7IgZXNzZXJlIHVzYXRvIHBhc3NhbmRvIGRhIHVuIGJyYW5jaCBhIHVuIGFsdHJvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM5OCBidWlsdGluL2NoZWNrb3V0LmM6MTQwMSBidWlsdGluL2NoZWNrb3V0LmM6MTQwNAorIzogYnVpbHRpbi9jaGVja291dC5jOjE0MDkgYnVpbHRpbi9jaGVja291dC5jOjE0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICclcyciCittc2dzdHIgIiclcycgbm9uIHB1w7IgZXNzZXJlIHVzYXRvIGNvbiAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQxMQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCB0YWtlIDxzdGFydC1wb2ludD4iCittc2dzdHIgIiclcycgbm9uIGFjY2V0dGEgbCdhcmdvbWVudG8gPHB1bnRvIGRpIHBhcnRlbnphPiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN3aXRjaCBicmFuY2ggdG8gYSBub24tY29tbWl0ICclcyciCittc2dzdHIgIkltcG9zc2liaWxlIGNhbWJpYXJlIGJyYW5jaCBwZXIgcGFzc2FyZSBhICclcycgY2hlIG5vbiDDqCB1biBjb21taXQiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDI2Cittc2dpZCAibWlzc2luZyBicmFuY2ggb3IgY29tbWl0IGFyZ3VtZW50IgorbXNnc3RyICJhcmdvbWVudG8gYnJhbmNoIG8gY29tbWl0IG1hbmNhbnRlIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2OCBidWlsdGluL2Nsb25lLmM6OTEgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3MgorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzUgYnVpbHRpbi9mZXRjaC5jOjE2NyBidWlsdGluL21lcmdlLmM6Mjg2CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyNyBidWlsdGluL3B1bGwuYzoxMTggYnVpbHRpbi9wdXNoLmM6NTYzCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE3NAorbXNnaWQgImZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKK21zZ3N0ciAiZm9yemEgbCdpbmRpY2F6aW9uZSBkJ2F2YW56YW1lbnRvIGRlbGwnb3BlcmF6aW9uZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NjkKK21zZ2lkICJwZXJmb3JtIGEgMy13YXkgbWVyZ2Ugd2l0aCB0aGUgbmV3IGJyYW5jaCIKK21zZ3N0ciAiZXNlZ3VpIHVuIG1lcmdlIGEgdHJlIHZpZSBjb24gaWwgbnVvdm8gYnJhbmNoIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ3MCBidWlsdGluL2xvZy5jOjE2OTAgcGFyc2Utb3B0aW9ucy5oOjMyMgorbXNnaWQgInN0eWxlIgorbXNnc3RyICJzdGlsZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NzEKK21zZ2lkICJjb25mbGljdCBzdHlsZSAobWVyZ2Ugb3IgZGlmZjMpIgorbXNnc3RyICJzdGlsZSBjb25mbGl0dGkgKG1lcmdlIG8gZGlmZjMpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4MyBidWlsdGluL3dvcmt0cmVlLmM6NDk2Cittc2dpZCAiZGV0YWNoIEhFQUQgYXQgbmFtZWQgY29tbWl0IgorbXNnc3RyICJzY29sbGVnYSBsJ0hFQUQgYWwgY29tbWl0IHNwZWNpZmljYXRvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4NAorbXNnaWQgInNldCB1cHN0cmVhbSBpbmZvIGZvciBuZXcgYnJhbmNoIgorbXNnc3RyICJpbXBvc3RhIGxlIGluZm9ybWF6aW9uaSBzdWxsJ3Vwc3RyZWFtIHBlciBpbCBudW92byBicmFuY2giCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg2Cittc2dpZCAiZm9yY2UgY2hlY2tvdXQgKHRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucykiCittc2dzdHIgImVzZWd1aSBmb3J6YXRhbWVudGUgaWwgY2hlY2tvdXQgKHNjYXJ0YSBsZSBtb2RpZmljaGUgbG9jYWxpKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODgKK21zZ2lkICJuZXctYnJhbmNoIgorbXNnc3RyICJudW92byBicmFuY2giCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg4Cittc2dpZCAibmV3IHVucGFyZW50ZWQgYnJhbmNoIgorbXNnc3RyICJudW92byBicmFuY2ggc2VuemEgZ2VuaXRvcmUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDkwIGJ1aWx0aW4vbWVyZ2UuYzoyODkKK21zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCittc2dzdHIgImFnZ2lvcm5hIGkgZmlsZSBpZ25vcmF0aSAoaW1wb3N0YXppb25lIHByZWRlZmluaXRhKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0OTMKK21zZ2lkICJkbyBub3QgY2hlY2sgaWYgYW5vdGhlciB3b3JrdHJlZSBpcyBob2xkaW5nIHRoZSBnaXZlbiByZWYiCittc2dzdHIgIiIKKyJub24gY29udHJvbGxhcmUgc2UgdW4gYWx0cm8gYWxiZXJvIGRpIGxhdm9ybyBjb250aWVuZSBpbCByaWZlcmltZW50byAiCisic3BlY2lmaWNhdG8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTA2Cittc2dpZCAiY2hlY2tvdXQgb3VyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgorbXNnc3RyICIiCisiZXNlZ3VpIGlsIGNoZWNrb3V0IGRlbGxhIG5vc3RyYSB2ZXJzaW9uZSBwZXIgaSBmaWxlIG5vbiBzb3R0b3Bvc3RpIGEgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTA5Cittc2dpZCAiY2hlY2tvdXQgdGhlaXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCittc2dzdHIgIiIKKyJlc2VndWkgaWwgY2hlY2tvdXQgZGVsbGEgbG9ybyB2ZXJzaW9uZSBwZXIgaSBmaWxlIG5vbiBzb3R0b3Bvc3RpIGEgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTEzCittc2dpZCAiZG8gbm90IGxpbWl0IHBhdGhzcGVjcyB0byBzcGFyc2UgZW50cmllcyBvbmx5IgorbXNnc3RyICJub24gbGltaXRhcmUgZ2xpIHNwZWNpZmljYXRvcmkgcGVyY29yc28gc29sbyBhbGxlIHZvY2kgc3BhcnNlIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTU2NQorbXNnaWQgIi1iLCAtQiBhbmQgLS1vcnBoYW4gYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAibGUgb3B6aW9uaSAtYiwgLUIgZSAtLW9ycGhhbiBzb25vIG11dHVhbWVudGUgZXNjbHVzaXZlIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTU2OAorbXNnaWQgIi1wIGFuZCAtLW92ZXJsYXkgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAibGUgb3B6aW9uaSAtcCBlIC0tb3ZlcmxheSBzb25vIG11dHVhbG1lbnRlIGVzY2x1c2l2ZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2MDUKK21zZ2lkICItLXRyYWNrIG5lZWRzIGEgYnJhbmNoIG5hbWUiCittc2dzdHIgIi0tdHJhY2sgcmljaGllZGUgaWwgbm9tZSBkaSB1biBicmFuY2giCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjEwCittc2dpZCAibWlzc2luZyBicmFuY2ggbmFtZTsgdHJ5IC1iIgorbXNnc3RyICJub21lIGRlbCBicmFuY2ggbWFuY2FudGU7IHByb3ZhIGNvbiAtYiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlc29sdmUgJXMiCittc2dzdHIgImltcG9zc2liaWxlIHJpc29sdmVyZSAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NTgKK21zZ2lkICJpbnZhbGlkIHBhdGggc3BlY2lmaWNhdGlvbiIKK21zZ3N0ciAic3BlY2lmaWNhdG9yZSBwZXJjb3JzbyBub24gdmFsaWRvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY2NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIGNvbW1pdCBhbmQgYSBicmFuY2ggJyVzJyBjYW5ub3QgYmUgY3JlYXRlZCBmcm9tIGl0IgorbXNnc3RyICIiCisiJyVzJyBub24gw6ggdW4gY29tbWl0IGUgbm9uIHNpIHB1w7IgY3JlYXJlIHVuIGJyYW5jaCAnJXMnIGNoZSBwYXJ0YSBkYSBlc3NvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY2OQorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY2hlY2tvdXQ6IC0tZGV0YWNoIGRvZXMgbm90IHRha2UgYSBwYXRoIGFyZ3VtZW50ICclcyciCittc2dzdHIgImdpdCBjaGVja291dDogLS1kZXRhY2ggbm9uIGFjY2V0dGEgdW4gcGVyY29yc28gJyVzJyBjb21lIGFyZ29tZW50byIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NzgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWRldGFjaCIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgbm9uIMOoIGNvbXBhdGliaWxlIGNvbiAtLWRldGFjaCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2ODEgYnVpbHRpbi9yZXNldC5jOjMyNCBidWlsdGluL3N0YXNoLmM6MTUwNgorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tcGF0Y2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIG5vbiDDqCBjb21wYXRpYmlsZSBjb24gLS1wYXRjaCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2OTIKK21zZ2lkICIiCisiZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgYW5kIC0tbWVyZ2UgYXJlIGluY29tcGF0aWJsZSB3aGVuXG4iCisiY2hlY2tpbmcgb3V0IG9mIHRoZSBpbmRleC4iCittc2dzdHIgIiIKKyJnaXQgY2hlY2tvdXQ6IC0tb3Vycy8tLXRoZWlycywgLS1mb3JjZSBlIC0tbWVyZ2Ugc29ubyBpbmNvbXBhdGliaWxpIHF1YW5kb1xuIgorInNpIGVzZWd1ZSBpbCBjaGVja291dCBkZWxsJ2luZGljZS4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjk3Cittc2dpZCAieW91IG11c3Qgc3BlY2lmeSBwYXRoKHMpIHRvIHJlc3RvcmUiCittc2dzdHIgImRldmkgc3BlY2lmaWNhcmUgaWwgcGVyY29yc28vaSBwZXJjb3JzaSBkYSByaXByaXN0aW5hcmUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzIzIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI1IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3NiBidWlsdGluL2Nsb25lLmM6MTIxIGJ1aWx0aW4vcmVtb3RlLmM6MTcwCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MiBidWlsdGluL3dvcmt0cmVlLmM6NDkyIGJ1aWx0aW4vd29ya3RyZWUuYzo0OTQKK21zZ2lkICJicmFuY2giCittc2dzdHIgImJyYW5jaCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjQKK21zZ2lkICJjcmVhdGUgYW5kIGNoZWNrb3V0IGEgbmV3IGJyYW5jaCIKK21zZ3N0ciAiY3JlYSB1biBudW92byBicmFuY2ggZWQgZXNlZ3VpbmUgaWwgY2hlY2tvdXQiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI2Cittc2dpZCAiY3JlYXRlL3Jlc2V0IGFuZCBjaGVja291dCBhIGJyYW5jaCIKK21zZ3N0ciAiY3JlYS9yZWltcG9zdGEgdW4gYnJhbmNoIGVkIGVzZWd1aW5lIGlsIGNoZWNrb3V0IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyNworbXNnaWQgImNyZWF0ZSByZWZsb2cgZm9yIG5ldyBicmFuY2giCittc2dzdHIgImNyZWEgaWwgcmVnaXN0cm8gZGVpIHJpZmVyaW1lbnRpIHBlciBpbCBudW92byBicmFuY2giCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI5Cittc2dpZCAic2Vjb25kIGd1ZXNzICdnaXQgY2hlY2tvdXQgPG5vLXN1Y2gtYnJhbmNoPicgKGRlZmF1bHQpIgorbXNnc3RyICJwcmV2ZWRpICdnaXQgY2hlY2tvdXQgPGJyYW5jaCBpbmVzaXN0ZW50ZT4nIChpbXBvc3RhemlvbmUgcHJlZGVmaW5pdGEpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTczMAorbXNnaWQgInVzZSBvdmVybGF5IG1vZGUgKGRlZmF1bHQpIgorbXNnc3RyICJ1c2EgbW9kYWxpdMOgIG92ZXJsYXkgKGltcG9zdGF6aW9uZSBwcmVkZWZpbml0YSkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc1Cittc2dpZCAiY3JlYXRlIGFuZCBzd2l0Y2ggdG8gYSBuZXcgYnJhbmNoIgorbXNnc3RyICJjcmVhIHVuIG51b3ZvIGJyYW5jaCBlIHBhc3NhIGEgcXVlc3QndWx0aW1vIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3NworbXNnaWQgImNyZWF0ZS9yZXNldCBhbmQgc3dpdGNoIHRvIGEgYnJhbmNoIgorbXNnc3RyICJjcmVhL3JlaW1wb3N0YSB1biBicmFuY2ggZSBwYXNzYSBhIHF1ZXN0J3VsdGltbyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzkKK21zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBzd2l0Y2ggPG5vLXN1Y2gtYnJhbmNoPiciCittc2dzdHIgInByZXZlZGkgJ2dpdCBzd2l0Y2ggPGJyYW5jaCBpbmVzaXN0ZW50ZT4nIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc4MQorbXNnaWQgInRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucyIKK21zZ3N0ciAic2NhcnRhIGxlIG1vZGlmaWNoZSBsb2NhbGkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODEzCittc2dpZCAid2hpY2ggdHJlZS1pc2ggdG8gY2hlY2tvdXQgZnJvbSIKK21zZ3N0ciAiYWxiZXJvIGRhIGN1aSBlc2VndWlyZSBpbCBjaGVja291dCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTUKK21zZ2lkICJyZXN0b3JlIHRoZSBpbmRleCIKK21zZ3N0ciAicmlwcmlzdGluYSBsJ2luZGljZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTcKK21zZ2lkICJyZXN0b3JlIHRoZSB3b3JraW5nIHRyZWUgKGRlZmF1bHQpIgorbXNnc3RyICJyaXByaXN0aW5hIGwnYWxiZXJvIGRpIGxhdm9ybyAoaW1wb3N0YXppb25lIHByZWRlZmluaXRhKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTkKK21zZ2lkICJpZ25vcmUgdW5tZXJnZWQgZW50cmllcyIKK21zZ3N0ciAiaWdub3JhIHZvY2kgbm9uIHNvdHRvcG9zdGUgYSBtZXJnZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MjAKK21zZ2lkICJ1c2Ugb3ZlcmxheSBtb2RlIgorbXNnc3RyICJ1c2EgbW9kYWxpdMOgIG92ZXJsYXkiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzoyOAorbXNnaWQgIiIKKyJnaXQgY2xlYW4gWy1kXSBbLWZdIFstaV0gWy1uXSBbLXFdIFstZSA8cGF0dGVybj5dIFsteCB8IC1YXSBbLS1dIDxwYXRocz4uLi4iCittc2dzdHIgIiIKKyJnaXQgY2xlYW4gWy1kXSBbLWZdIFstaV0gWy1uXSBbLXFdIFstZSA8cGF0dGVybj5dIFsteCB8IC1YXSBbLS1dICIKKyI8cGVyY29yc2k+Li4uIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXNcbiIKK21zZ3N0ciAiRWxpbWluYXppb25lIGRpICVzIGluIGNvcnNvXG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMworIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgJXNcbiIKK21zZ3N0ciAiRWxpbWluZXJlaSAlc1xuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBpbmcgcmVwb3NpdG9yeSAlc1xuIgorbXNnc3RyICJTYWx0byBpbCByZXBvc2l0b3J5ICVzXG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCBza2lwIHJlcG9zaXRvcnkgJXNcbiIKK21zZ3N0ciAiU2FsdGVyZWkgaWwgcmVwb3NpdG9yeSAlc1xuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAlcyIKK21zZ3N0ciAiZWxpbWluYXppb25lIGRpICVzIG5vbiByaXVzY2l0YSIKKworIzogYnVpbHRpbi9jbGVhbi5jOjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBsc3RhdCAlc1xuIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBsJ2xzdGF0IGRpICVzXG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMDEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlByb21wdCBoZWxwOlxuIgorIjEgICAgICAgICAgLSBzZWxlY3QgYSBudW1iZXJlZCBpdGVtXG4iCisiZm9vICAgICAgICAtIHNlbGVjdCBpdGVtIGJhc2VkIG9uIHVuaXF1ZSBwcmVmaXhcbiIKKyIgICAgICAgICAgIC0gKGVtcHR5KSBzZWxlY3Qgbm90aGluZ1xuIgorbXNnc3RyICIiCisiR3VpZGEgYWwgcHJvbXB0OlxuIgorIjEgICAgICAgICAgLSBzZWxlemlvbmEgdW4gZWxlbWVudG8gbnVtZXJhdG9cbiIKKyJwaXBwbyAgICAgIC0gc2VsZXppb25hIHVuIGVsZW1lbnRvIGJhc2FuZG90aSBzdSB1biBwcmVmaXNzbyB1bml2b2NvXG4iCisiICAgICAgICAgICAtICh2dW90bykgbm9uIHNlbGV6aW9uYXJlIG5pZW50ZVxuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzA1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQcm9tcHQgaGVscDpcbiIKKyIxICAgICAgICAgIC0gc2VsZWN0IGEgc2luZ2xlIGl0ZW1cbiIKKyIzLTUgICAgICAgIC0gc2VsZWN0IGEgcmFuZ2Ugb2YgaXRlbXNcbiIKKyIyLTMsNi05ICAgIC0gc2VsZWN0IG11bHRpcGxlIHJhbmdlc1xuIgorImZvbyAgICAgICAgLSBzZWxlY3QgaXRlbSBiYXNlZCBvbiB1bmlxdWUgcHJlZml4XG4iCisiLS4uLiAgICAgICAtIHVuc2VsZWN0IHNwZWNpZmllZCBpdGVtc1xuIgorIiogICAgICAgICAgLSBjaG9vc2UgYWxsIGl0ZW1zXG4iCisiICAgICAgICAgICAtIChlbXB0eSkgZmluaXNoIHNlbGVjdGluZ1xuIgorbXNnc3RyICIiCisiR3VpZGEgYWwgcHJvbXB0OlxuIgorIjEgICAgICAgICAgLSBzZWxlemlvbmEgdW4gc2luZ29sbyBlbGVtZW50b1xuIgorIjMtNSAgICAgICAgLSBzZWxlemlvbmEgdW4gaW50ZXJ2YWxsbyBkaSBlbGVtZW50aVxuIgorIjItMyw2LTkgICAgLSBzZWxlemlvbmEgaW50ZXJ2YWxsaSBtdWx0aXBsaVxuIgorInBpcHBvICAgICAgLSBzZWxlemlvbmEgdW4gZWxlbWVudG8gYmFzYW5kb3RpIHN1IHVuIHByZWZpc3NvIHVuaXZvY29cbiIKKyItLi4uICAgICAgIC0gZGVzZWxlemlvbmEgZWxlbWVudGkgc3BlY2lmaWNpXG4iCisiKiAgICAgICAgICAtIHNlbGV6aW9uYSB0dXR0aSBnbGkgZWxlbWVudGlcbiIKKyIgICAgICAgICAgIC0gKHZ1b3RvKSB0ZXJtaW5hIGlsIHByb2Nlc3NvIGRpIHNlbGV6aW9uZVxuIgorCisjOiBidWlsdGluL2NsZWFuLmM6NTIxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTcwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiSHVoICglcyk/XG4iCittc2dzdHIgIkVoICglcyk/XG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo2NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5wdXQgaWdub3JlIHBhdHRlcm5zPj4gIgorbXNnc3RyICJJbW1ldHRpIGkgcGF0dGVybiBkYSBpZ25vcmFyZT4+ICIKKworIzogYnVpbHRpbi9jbGVhbi5jOjcwMAorIywgYy1mb3JtYXQKK21zZ2lkICJXQVJOSU5HOiBDYW5ub3QgZmluZCBpdGVtcyBtYXRjaGVkIGJ5OiAlcyIKK21zZ3N0ciAiQVRURU5aSU9ORTogSW1wb3NzaWJpbGUgdHJvdmFyZSBlbGVtZW50aSBjb3JyaXNwb25kZW50aSBhICVzIgorCisjOiBidWlsdGluL2NsZWFuLmM6NzIxCittc2dpZCAiU2VsZWN0IGl0ZW1zIHRvIGRlbGV0ZSIKK21zZ3N0ciAiU2VsZXppb25hIGdsaSBlbGVtZW50aSBkYSBlbGltaW5hcmUiCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8ga2VlcCBbeS9OXSBhcyBpcworIzogYnVpbHRpbi9jbGVhbi5jOjc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmUgJXMgW3kvTl0/ICIKK21zZ3N0ciAiRWxpbWluYXJlICVzIFt5L05dPyAiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3OTUKK21zZ2lkICIiCisiY2xlYW4gICAgICAgICAgICAgICAtIHN0YXJ0IGNsZWFuaW5nXG4iCisiZmlsdGVyIGJ5IHBhdHRlcm4gICAtIGV4Y2x1ZGUgaXRlbXMgZnJvbSBkZWxldGlvblxuIgorInNlbGVjdCBieSBudW1iZXJzICAgLSBzZWxlY3QgaXRlbXMgdG8gYmUgZGVsZXRlZCBieSBudW1iZXJzXG4iCisiYXNrIGVhY2ggICAgICAgICAgICAtIGNvbmZpcm0gZWFjaCBkZWxldGlvbiAobGlrZSBcInJtIC1pXCIpXG4iCisicXVpdCAgICAgICAgICAgICAgICAtIHN0b3AgY2xlYW5pbmdcbiIKKyJoZWxwICAgICAgICAgICAgICAgIC0gdGhpcyBzY3JlZW5cbiIKKyI/ICAgICAgICAgICAgICAgICAgIC0gaGVscCBmb3IgcHJvbXB0IHNlbGVjdGlvbiIKK21zZ3N0ciAiIgorImNsZWFuICAgICAgICAgICAgICAgLSBpbml6aWEgbGEgcHVsaXppYVxuIgorImZpbHRlciBieSBwYXR0ZXJuICAgLSBlc2NsdWRpIGRlZ2xpIGVsZW1lbnRpIGRhbGwnZWxpbWluYXppb25lXG4iCisic2VsZWN0IGJ5IG51bWJlcnMgICAtIHNlbGV6aW9uYSBnbGkgZWxlbWVudGkgZGEgZWxpbWluYXJlIHNwZWNpZmljYW5kb2xpXG4iCisiICAgICAgICAgICAgICAgICAgICAgIGNvbiBkZWkgbnVtZXJpXG4iCisiYXNrIGVhY2ggICAgICAgICAgICAtIGNvbmZlcm1hIG9nbmkgZWxpbWluYXppb25lIChjb21lIFwicm0gLWlcIilcbiIKKyJxdWl0ICAgICAgICAgICAgICAgIC0gdGVybWluYSBsYSBwdWxpemlhXG4iCisiaGVscCAgICAgICAgICAgICAgICAtIHZpc3VhbGl6emEgcXVlc3RhIHNjaGVybWF0YVxuIgorIj8gICAgICAgICAgICAgICAgICAgLSBndWlkYSBhbCBwcm9tcHQgZGkgc2VsZXppb25lIgorCisjOiBidWlsdGluL2NsZWFuLmM6ODMxCittc2dpZCAiV291bGQgcmVtb3ZlIHRoZSBmb2xsb3dpbmcgaXRlbToiCittc2dpZF9wbHVyYWwgIldvdWxkIHJlbW92ZSB0aGUgZm9sbG93aW5nIGl0ZW1zOiIKK21zZ3N0clswXSAiRWxpbWluZXJlaSBpbCBzZWd1ZW50ZSBlbGVtZW50bzoiCittc2dzdHJbMV0gIkVsaW1pbmVyZWkgaSBzZWd1ZW50aSBlbGVtZW50aToiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo4NDcKK21zZ2lkICJObyBtb3JlIGZpbGVzIHRvIGNsZWFuLCBleGl0aW5nLiIKK21zZ3N0ciAiTm9uIGNpIHNvbm8gcGnDuSBmaWxlIGRhIHJpcHVsaXJlLCBlc2NvLiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkwOQorbXNnaWQgImRvIG5vdCBwcmludCBuYW1lcyBvZiBmaWxlcyByZW1vdmVkIgorbXNnc3RyICJub24gc3RhbXBhcmUgaSBub21pIGRlaSBmaWxlIGVsaW1pbmF0aSIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkxMQorbXNnaWQgImZvcmNlIgorbXNnc3RyICJmb3J6YSBsJ29wZXJhemlvbmUiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTIKK21zZ2lkICJpbnRlcmFjdGl2ZSBjbGVhbmluZyIKK21zZ3N0ciAicHVsaXppYSBpbnRlcmF0dGl2YSIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkxNAorbXNnaWQgInJlbW92ZSB3aG9sZSBkaXJlY3RvcmllcyIKK21zZ3N0ciAicmltdW92aSBpbnRlcmUgZGlyZWN0b3J5IgorCisjOiBidWlsdGluL2NsZWFuLmM6OTE1IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjIgYnVpbHRpbi9kZXNjcmliZS5jOjU2NAorIzogYnVpbHRpbi9ncmVwLmM6ODg5IGJ1aWx0aW4vbG9nLmM6MTc3IGJ1aWx0aW4vbG9nLmM6MTc5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU3IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjYgYnVpbHRpbi9uYW1lLXJldi5jOjUyOAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OQorbXNnaWQgInBhdHRlcm4iCittc2dzdHIgInBhdHRlcm4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTYKK21zZ2lkICJhZGQgPHBhdHRlcm4+IHRvIGlnbm9yZSBydWxlcyIKK21zZ3N0ciAiYWdnaXVuZ2kgPHBhdHRlcm4+IGFsbGUgcmVnb2xlIHVzYXRlIHBlciBpZ25vcmFyZSBpIGZpbGUiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTcKK21zZ2lkICJyZW1vdmUgaWdub3JlZCBmaWxlcywgdG9vIgorbXNnc3RyICJlbGltaW5hIGFuY2hlIGkgZmlsZSBpZ25vcmF0aSIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkxOQorbXNnaWQgInJlbW92ZSBvbmx5IGlnbm9yZWQgZmlsZXMiCittc2dzdHIgImVsaW1pbmEgc29sbyBpIGZpbGUgaWdub3JhdGkiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MzcKK21zZ2lkICIteCBhbmQgLVggY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCittc2dzdHIgIi14IGUgLVggbm9uIHBvc3Nvbm8gZXNzZXJlIHVzYXRpIGluc2llbWUiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5NDEKK21zZ2lkICIiCisiY2xlYW4ucmVxdWlyZUZvcmNlIHNldCB0byB0cnVlIGFuZCBuZWl0aGVyIC1pLCAtbiwgbm9yIC1mIGdpdmVuOyByZWZ1c2luZyB0byAiCisiY2xlYW4iCittc2dzdHIgIiIKKyJjbGVhbi5yZXF1aXJlRm9yY2Ugw6ggaW1wb3N0YXRvIGEgdHJ1ZSBlIG7DqSAtaSwgbsOpIC1uLCBuw6kgLWYgc29ubyBzdGF0aSAiCisic3BlY2lmaWNhdGk7IG1pIHJpZml1dG8gZGkgZXNlZ3VpcmUgbGEgcHVsaXppYSIKKworIzogYnVpbHRpbi9jbGVhbi5jOjk0NAorbXNnaWQgIiIKKyJjbGVhbi5yZXF1aXJlRm9yY2UgZGVmYXVsdHMgdG8gdHJ1ZSBhbmQgbmVpdGhlciAtaSwgLW4sIG5vciAtZiBnaXZlbjsgIgorInJlZnVzaW5nIHRvIGNsZWFuIgorbXNnc3RyICIiCisiY2xlYW4ucmVxdWlyZUZvcmNlIMOoIHRydWUgcGVyIGltcG9zdGF6aW9uZSBwcmVkZWZpbml0YSBlIG7DqSAtaSwgbsOpIC1uLCBuw6kgLWYgIgorInNvbm8gc3RhdGkgc3BlY2lmaWNhdGk7IG1pIHJpZml1dG8gZGkgZXNlZ3VpcmUgbGEgcHVsaXppYSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjQ1Cittc2dpZCAiZ2l0IGNsb25lIFs8b3B0aW9ucz5dIFstLV0gPHJlcG8+IFs8ZGlyPl0iCittc2dzdHIgImdpdCBjbG9uZSBbPG9wemlvbmk+XSBbLS1dIDxyZXBvc2l0b3J5PiBbPGRpcmVjdG9yeT5dIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTMKK21zZ2lkICJkb24ndCBjcmVhdGUgYSBjaGVja291dCIKK21zZ3N0ciAibm9uIGNyZWFyZSB1biBjaGVja291dCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk0IGJ1aWx0aW4vY2xvbmUuYzo5NiBidWlsdGluL2luaXQtZGIuYzo0ODkKK21zZ2lkICJjcmVhdGUgYSBiYXJlIHJlcG9zaXRvcnkiCittc2dzdHIgImNyZWEgdW4gcmVwb3NpdG9yeSBzcG9nbGlvIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTgKK21zZ2lkICJjcmVhdGUgYSBtaXJyb3IgcmVwb3NpdG9yeSAoaW1wbGllcyBiYXJlKSIKK21zZ3N0ciAiY3JlYSB1biByZXBvc2l0b3J5IG1pcnJvciAoaW1wbGljYSBjaGUgc2lhIHNwb2dsaW8pIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTAwCittc2dpZCAidG8gY2xvbmUgZnJvbSBhIGxvY2FsIHJlcG9zaXRvcnkiCittc2dzdHIgInBlciBjbG9uYXJlIGRhIHVuIHJlcG9zaXRvcnkgbG9jYWxlIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTAyCittc2dpZCAiZG9uJ3QgdXNlIGxvY2FsIGhhcmRsaW5rcywgYWx3YXlzIGNvcHkiCittc2dzdHIgIm5vbiB1c2FyZSBpIGNvbGxlZ2FtZW50aSByZWFsaSBsb2NhbGksIGNvcGlhIHNlbXByZSBpIGZpbGUiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDQKK21zZ2lkICJzZXR1cCBhcyBzaGFyZWQgcmVwb3NpdG9yeSIKK21zZ3N0ciAiaW1wb3N0YSBpbCByZXBvc2l0b3J5IGNvbWUgY29uZGl2aXNvIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTA3Cittc2dpZCAicGF0aHNwZWMiCittc2dzdHIgInNwZWNpZmljYXRvcmUgcGVyY29yc28iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDcKK21zZ2lkICJpbml0aWFsaXplIHN1Ym1vZHVsZXMgaW4gdGhlIGNsb25lIgorbXNnc3RyICJpbml6aWFsaXp6YSBzb3R0b21vZHVsaSBkdXJhbnRlIGxhIGNsb25hemlvbmUiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAKK21zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBjbG9uZWQgaW4gcGFyYWxsZWwiCittc2dzdHIgIm51bWVybyBkaSBzb3R0b21vZHVsaSBjbG9uYXRpIGluIHBhcmFsbGVsbyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExMSBidWlsdGluL2luaXQtZGIuYzo0ODYKK21zZ2lkICJ0ZW1wbGF0ZS1kaXJlY3RvcnkiCittc2dzdHIgImRpcmVjdG9yeSBtb2RlbGxpIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTEyIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NworbXNnaWQgImRpcmVjdG9yeSBmcm9tIHdoaWNoIHRlbXBsYXRlcyB3aWxsIGJlIHVzZWQiCittc2dzdHIgImRpcmVjdG9yeSBkYSBjdWkgc2FyYW5ubyByZWN1cGVyYXRpIGkgbW9kZWxsaSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExNCBidWlsdGluL2Nsb25lLmM6MTE2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxMgorbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5IgorbXNnc3RyICJyZXBvc2l0b3J5IGRpIHJpZmVyaW1lbnRvIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTE4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxNAorbXNnaWQgInVzZSAtLXJlZmVyZW5jZSBvbmx5IHdoaWxlIGNsb25pbmciCittc2dzdHIgInVzYSAtLXJlZmVyZW5jZSBzb2xvIGR1cmFudGUgbGEgY2xvbmF6aW9uZSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExOSBidWlsdGluL2NvbHVtbi5jOjI3IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjQ2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDEgYnVpbHRpbi9yZXBhY2suYzozMjcKK21zZ2lkICJuYW1lIgorbXNnc3RyICJub21lIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTIwCittc2dpZCAidXNlIDxuYW1lPiBpbnN0ZWFkIG9mICdvcmlnaW4nIHRvIHRyYWNrIHVwc3RyZWFtIgorbXNnc3RyICJ1c2EgPG5vbWU+IGFuemljaMOpICdvcmlnaW4nIHBlciB0cmFjY2lhcmUgbCd1cHN0cmVhbSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEyMgorbXNnaWQgImNoZWNrb3V0IDxicmFuY2g+IGluc3RlYWQgb2YgdGhlIHJlbW90ZSdzIEhFQUQiCittc2dzdHIgImVzZWd1aSBpbCBjaGVja291dCBkaSA8YnJhbmNoPiBhbnppY2jDqSBkZWxsJ0hFQUQgZGVsIHJlbW90byIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEyNAorbXNnaWQgInBhdGggdG8gZ2l0LXVwbG9hZC1wYWNrIG9uIHRoZSByZW1vdGUiCittc2dzdHIgInBlcmNvcnNvIGFsIGNvbWFuZG8gcmVtb3RvIGdpdC11cGxvYWQtcGFjayIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEyNSBidWlsdGluL2ZldGNoLmM6MTY4IGJ1aWx0aW4vZ3JlcC5jOjgyOAorIzogYnVpbHRpbi9wdWxsLmM6MjA3Cittc2dpZCAiZGVwdGgiCittc2dzdHIgInByb2ZvbmRpdMOgIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI2Cittc2dpZCAiY3JlYXRlIGEgc2hhbGxvdyBjbG9uZSBvZiB0aGF0IGRlcHRoIgorbXNnc3RyICJjcmVhIHVuIGNsb25lIHNoYWxsb3cgY29uIHF1ZXN0YSBwcm9mb25kaXTDoCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEyNyBidWlsdGluL2ZldGNoLmM6MTcwIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQzMAorbXNnaWQgInRpbWUiCittc2dzdHIgInRlbXBvIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI4Cittc2dpZCAiY3JlYXRlIGEgc2hhbGxvdyBjbG9uZSBzaW5jZSBhIHNwZWNpZmljIHRpbWUiCittc2dzdHIgImNyZWEgdW4gY2xvbmUgc2hhbGxvdyBhIHBhcnRpcmUgZGFsbCdpc3RhbnRlIHNwZWNpZmljYXRvIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI5IGJ1aWx0aW4vZmV0Y2guYzoxNzIgYnVpbHRpbi9mZXRjaC5jOjE5NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgwCittc2dpZCAicmV2aXNpb24iCittc2dzdHIgInJldmlzaW9uZSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEzMCBidWlsdGluL2ZldGNoLmM6MTczCittc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyBjbG9uZSwgZXhjbHVkaW5nIHJldiIKK21zZ3N0ciAiIgorImF1bWVudGEgbGEgcHJvZm9uZGl0w6AgZGVsbGEgY3Jvbm9sb2dpYSBkZWwgY2xvbmUgc2hhbGxvdyBmaW5vIGFsbGEgcmV2aXNpb25lICIKKyJzcGVjaWZpY2F0YSBlc2NsdXNhIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTMyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyOAorbXNnaWQgImNsb25lIG9ubHkgb25lIGJyYW5jaCwgSEVBRCBvciAtLWJyYW5jaCIKK21zZ3N0ciAiY2xvbmEgc29sbyB1biBicmFuY2gsIEhFQUQgbyBxdWVsbG8gc3BlY2lmaWNhdG8gY29uIC0tYnJhbmNoIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTM0Cittc2dpZCAiZG9uJ3QgY2xvbmUgYW55IHRhZ3MsIGFuZCBtYWtlIGxhdGVyIGZldGNoZXMgbm90IHRvIGZvbGxvdyB0aGVtIgorbXNnc3RyICJub24gY2xvbmFyZSBhbGN1biB0YWcgZSBmYWkgc8OsIGNoZSBpIGZldGNoIHN1Y2Nlc3Npdmkgbm9uIGxpIHNlZ3Vhbm8iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzYKK21zZ2lkICJhbnkgY2xvbmVkIHN1Ym1vZHVsZXMgd2lsbCBiZSBzaGFsbG93IgorbXNnc3RyICJ0dXR0aSBpIHNvdHRvbW9kdWxpIGNsb25hdGkgc2FyYW5ubyBzaGFsbG93IgorCisjOiBidWlsdGluL2Nsb25lLmM6MTM3IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5NQorbXNnaWQgImdpdGRpciIKK21zZ3N0ciAiZGlyZWN0b3J5IEdpdCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEzOCBidWlsdGluL2luaXQtZGIuYzo0OTYKK21zZ2lkICJzZXBhcmF0ZSBnaXQgZGlyIGZyb20gd29ya2luZyB0cmVlIgorbXNnc3RyICJzZXBhcmEgbGEgZGlyZWN0b3J5IEdpdCBkYWxsJ2FsYmVybyBkaSBsYXZvcm8iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzkKK21zZ2lkICJrZXk9dmFsdWUiCittc2dzdHIgImNoaWF2ZT12YWxvcmUiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDAKK21zZ2lkICJzZXQgY29uZmlnIGluc2lkZSB0aGUgbmV3IHJlcG9zaXRvcnkiCittc2dzdHIgImltcG9zdGEgbGEgY29uZmlndXJhemlvbmUgbmVsIG51b3ZvIHJlcG9zaXRvcnkiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDIgYnVpbHRpbi9mZXRjaC5jOjE5MCBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL3B1c2guYzo1NzMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzIKK21zZ2lkICJzZXJ2ZXItc3BlY2lmaWMiCittc2dzdHIgInNwZWNpZmljYSBkZWwgc2VydmVyIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQyIGJ1aWx0aW4vZmV0Y2guYzoxOTAgYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9wdXNoLmM6NTczIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTczCittc2dpZCAib3B0aW9uIHRvIHRyYW5zbWl0IgorbXNnc3RyICJvcHppb25lIGRhIHRyYXNtZXR0ZXJlIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQzIGJ1aWx0aW4vZmV0Y2guYzoxOTEgYnVpbHRpbi9wdWxsLmM6MjIwCisjOiBidWlsdGluL3B1c2guYzo1NzQKK21zZ2lkICJ1c2UgSVB2NCBhZGRyZXNzZXMgb25seSIKK21zZ3N0ciAidXNhIHNvbG8gaW5kaXJpenppIElQdjQiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDUgYnVpbHRpbi9mZXRjaC5jOjE5MyBidWlsdGluL3B1bGwuYzoyMjMKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3NgorbXNnaWQgInVzZSBJUHY2IGFkZHJlc3NlcyBvbmx5IgorbXNnc3RyICJ1c2Egc29sbyBpbmRpcml6emkgSVB2NiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0OQorbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIHVzZSB0aGVpciByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICIiCisidHV0dGkgaSBzb3R0b21vZHVsaSBjbG9uYXRpIHVzZXJhbm5vIGlsIGxvcm8gcmlzcGV0dGl2byBicmFuY2ggcmVtb3RvICIKKyJ0cmFjY2lhdG8iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNTEKK21zZ2lkICJpbml0aWFsaXplIHNwYXJzZS1jaGVja291dCBmaWxlIHRvIGluY2x1ZGUgb25seSBmaWxlcyBhdCByb290IgorbXNnc3RyICIiCisiaW5pemlhbGl6emEgaWwgZmlsZSBzcGFyc2UtY2hlY2tvdXQgcGVyIGluY2x1ZGVyZSBzb2xvIGkgZmlsZSBuZWwgcGVyY29yc28gIgorInJhZGljZSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjI4NworbXNnaWQgIiIKKyJObyBkaXJlY3RvcnkgbmFtZSBjb3VsZCBiZSBndWVzc2VkLlxuIgorIlBsZWFzZSBzcGVjaWZ5IGEgZGlyZWN0b3J5IG9uIHRoZSBjb21tYW5kIGxpbmUiCittc2dzdHIgIiIKKyJOb24gw6ggc3RhdG8gcG9zc2liaWxlIGluZG92aW5hcmUgYWxjdW4gbm9tZSBkaXJlY3RvcnkuXG4iCisiU3BlY2lmaWNhIHVuYSBkaXJlY3RvcnkgdHJhbWl0ZSBsYSByaWdhIGRpIGNvbWFuZG8iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzozNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5mbzogQ291bGQgbm90IGFkZCBhbHRlcm5hdGUgZm9yICclcyc6ICVzXG4iCittc2dzdHIgImluZm9ybWF6aW9uZTogSW1wb3NzaWJpbGUgYWdnaXVuZ2VyZSB1biBhbHRlcm5hdG8gYSAnJXMnOiAlc1xuIgorCisjOiBidWlsdGluL2Nsb25lLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4aXN0cyBhbmQgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICIlcyBlc2lzdGUgZSBub24gw6ggdW5hIGRpcmVjdG9yeSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhcnQgaXRlcmF0b3Igb3ZlciAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhdnZpYXJlIGwnaXRlcmF0b3JlIHN1ICclcyciCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBsaW5rICclcyciCittc2dzdHIgImNyZWF6aW9uZSBkZWwgY29sbGVnYW1lbnRvICclcycgbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL2Nsb25lLmM6NDY0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjb3B5IGZpbGUgdG8gJyVzJyIKK21zZ3N0ciAiY29waWEgZGVsIGZpbGUgaW4gJyVzJyBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGl0ZXJhdGUgb3ZlciAnJXMnIgorbXNnc3RyICJpdGVyYXppb25lIHN1ICclcycgbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL2Nsb25lLmM6NDk0CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmUuXG4iCittc2dzdHIgImZhdHRvLlxuIgorCisjOiBidWlsdGluL2Nsb25lLmM6NTA4Cittc2dpZCAiIgorIkNsb25lIHN1Y2NlZWRlZCwgYnV0IGNoZWNrb3V0IGZhaWxlZC5cbiIKKyJZb3UgY2FuIGluc3BlY3Qgd2hhdCB3YXMgY2hlY2tlZCBvdXQgd2l0aCAnZ2l0IHN0YXR1cydcbiIKKyJhbmQgcmV0cnkgd2l0aCAnZ2l0IHJlc3RvcmUgLS1zb3VyY2U9SEVBRCA6LydcbiIKK21zZ3N0ciAiIgorIkNsb25lIGNvbXBsZXRhdG8gY29uIHN1Y2Nlc3NvLCBtYSBpbCBjaGVja291dCBub24gw6ggcml1c2NpdG8uXG4iCisiUHVvaSBlc2FtaW5hcmUgZ2xpIGVsZW1lbnRpIGRpIGN1aSDDqCBzdGF0byBlc2VndWl0byBpbCBjaGVja291dFxuIgorImNvbiAnZ2l0IHN0YXR1cycgZSByaXByb3ZhcmUgYWQgZXNlZ3VpcmUgaWwgY2hlY2tvdXQgY29uXG4iCisiJ2dpdCByZXN0b3JlIC0tc291cmNlPUhFQUQgOi8nXG4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGZpbmQgcmVtb3RlIGJyYW5jaCAlcyB0byBjbG9uZS4iCittc2dzdHIgIkltcG9zc2liaWxlIHRyb3ZhcmUgaWwgYnJhbmNoIHJlbW90byAlcyBkYSBjbG9uYXJlLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjcwNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdXBkYXRlICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhZ2dpb3JuYXJlICVzIgorCisjOiBidWlsdGluL2Nsb25lLmM6NzUzCittc2dpZCAiZmFpbGVkIHRvIGluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJpbml6aWFsaXp6YXppb25lIGRlbCBmaWxlIHNwYXJzZS1jaGVja291dCBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo3NzYKK21zZ2lkICJyZW1vdGUgSEVBRCByZWZlcnMgdG8gbm9uZXhpc3RlbnQgcmVmLCB1bmFibGUgdG8gY2hlY2tvdXQuXG4iCittc2dzdHIgIiIKKyJsJ0hFQUQgcmVtb3RvIGZhIHJpZmVyaW1lbnRvIGEgdW4gcmlmZXJpbWVudG8gaW5lc2lzdGVudGUsIGltcG9zc2liaWxlICIKKyJlc2VndWlyZSBpbCBjaGVja291dC5cbiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjgwNworbXNnaWQgInVuYWJsZSB0byBjaGVja291dCB3b3JraW5nIHRyZWUiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGlsIGNoZWNrb3V0IGRlbGwnYWxiZXJvIGRpIGxhdm9ybyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjg2MgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBwYXJhbWV0ZXJzIHRvIGNvbmZpZyBmaWxlIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSBpIHBhcmFtZXRyaSBuZWwgZmlsZSBkaSBjb25maWd1cmF6aW9uZSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjkyNQorbXNnaWQgImNhbm5vdCByZXBhY2sgdG8gY2xlYW4gdXAiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGlsIHJlcGFjayBwZXIgcHVsaXJlIGwnYXJlYSBkaSBsYXZvcm8iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MjcKK21zZ2lkICJjYW5ub3QgdW5saW5rIHRlbXBvcmFyeSBhbHRlcm5hdGVzIGZpbGUiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGwndW5saW5rIGRlbCBmaWxlIGFsdGVybmF0ZXMgdGVtcG9yYW5lbyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk2NSBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NTAKK21zZ2lkICJUb28gbWFueSBhcmd1bWVudHMuIgorbXNnc3RyICJUcm9wcGkgYXJnb21lbnRpLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk2OQorbXNnaWQgIllvdSBtdXN0IHNwZWNpZnkgYSByZXBvc2l0b3J5IHRvIGNsb25lLiIKK21zZ3N0ciAiRGV2aSBzcGVjaWZpY2FyZSB1biByZXBvc2l0b3J5IGRhIGNsb25hcmUuIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tYmFyZSBhbmQgLS1vcmlnaW4gJXMgb3B0aW9ucyBhcmUgaW5jb21wYXRpYmxlLiIKK21zZ3N0ciAibGUgb3B6aW9uaSAtLWJhcmUgZSAtLW9yaWdpbiAlcyBub24gc29ubyBjb21wYXRpYmlsaS4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5ODUKK21zZ2lkICItLWJhcmUgYW5kIC0tc2VwYXJhdGUtZ2l0LWRpciBhcmUgaW5jb21wYXRpYmxlLiIKK21zZ3N0ciAibGUgb3B6aW9uaSAtLWJhcmUgZSAtLXNlcGFyYXRlLWdpdC1kaXIgbm9uIHNvbm8gY29tcGF0aWJpbGkuIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlcG9zaXRvcnkgJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiaWwgcmVwb3NpdG9yeSAnJXMnIG5vbiBlc2lzdGUiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDA0IGJ1aWx0aW4vZmV0Y2guYzoxNzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImRlcHRoICVzIGlzIG5vdCBhIHBvc2l0aXZlIG51bWJlciIKK21zZ3N0ciAibGEgcHJvZm9uZGl0w6AgJXMgbm9uIMOoIHVuIG51bWVybyBwb3NpdGl2byIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVzdGluYXRpb24gcGF0aCAnJXMnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYW4gZW1wdHkgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorImlsIHBlcmNvcnNvIGRpIGRlc3RpbmF6aW9uZSAnJXMnIGVzaXN0ZSBnacOgIGUgbm9uIMOoIHVuYSBkaXJlY3RvcnkgdnVvdGEuIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTAyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ3b3JraW5nIHRyZWUgJyVzJyBhbHJlYWR5IGV4aXN0cy4iCittc2dzdHIgImwnYWxiZXJvIGRpIGxhdm9ybyAnJXMnIGVzaXN0ZSBnacOgLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwMzkgYnVpbHRpbi9jbG9uZS5jOjEwNjAgYnVpbHRpbi9kaWZmdG9vbC5jOjI3MQorIzogYnVpbHRpbi9sb2cuYzoxODY2IGJ1aWx0aW4vd29ya3RyZWUuYzoyOTUgYnVpbHRpbi93b3JrdHJlZS5jOjMyNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgb2YgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIGxlIHByaW1lIGRpcmVjdG9yeSBkaSAnJXMnIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTA0NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHdvcmsgdHJlZSBkaXIgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIGxhIGRpcmVjdG9yeSBkZWxsJ2FsYmVybyBkaSBsYXZvcm8gJyVzJyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvbmluZyBpbnRvIGJhcmUgcmVwb3NpdG9yeSAnJXMnLi4uXG4iCittc2dzdHIgIkNsb25lIG5lbCByZXBvc2l0b3J5IHNwb2dsaW8gJyVzJyBpbiBjb3Jzby4uLlxuIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTA2NgorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9uaW5nIGludG8gJyVzJy4uLlxuIgorbXNnc3RyICJDbG9uZSBpbiAnJXMnIGluIGNvcnNvLi4uXG4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDkwCittc2dpZCAiIgorImNsb25lIC0tcmVjdXJzaXZlIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggYm90aCAtLXJlZmVyZW5jZSBhbmQgLS1yZWZlcmVuY2UtaWYtIgorImFibGUiCittc2dzdHIgIiIKKyJpbCBjbG9uZSAtLXJlY3Vyc2l2ZSBub24gw6ggY29tcGF0aWJpbGUgbsOpIGNvbiAtLXJlZmVyZW5jZSBuw6kgY29uIC0tcmVmZXJlbmNlLSIKKyJpZi1hYmxlIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTE1NAorbXNnaWQgIi0tZGVwdGggaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgorbXNnc3RyICJMJ29wemlvbmUgLS1kZXB0aCDDqCBpZ25vcmF0YSBuZWkgY2xvbmkgbG9jYWxpOyB1c2EgZmlsZTovLy4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTU2Cittc2dpZCAiLS1zaGFsbG93LXNpbmNlIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKK21zZ3N0ciAiTCdvcHppb25lIC0tc2hhbGxvdy1zaW5jZSDDqCBpZ25vcmF0YSBuZWkgY2xvbmkgbG9jYWxpOyB1c2EgZmlsZTovLy4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTU4Cittc2dpZCAiLS1zaGFsbG93LWV4Y2x1ZGUgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgorbXNnc3RyICJMJ29wemlvbmUgLS1zaGFsbG93LWV4Y2x1ZGUgw6ggaWdub3JhdGEgbmVpIGNsb25pIGxvY2FsaTsgdXNhIGZpbGU6Ly8uIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTE2MAorbXNnaWQgIi0tZmlsdGVyIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKK21zZ3N0ciAiTCdvcHppb25lIC0tZmlsdGVyIMOoIGlnbm9yYXRhIG5laSBjbG9uaSBsb2NhbGk7IHVzYSBmaWxlOi8vLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExNjMKK21zZ2lkICJzb3VyY2UgcmVwb3NpdG9yeSBpcyBzaGFsbG93LCBpZ25vcmluZyAtLWxvY2FsIgorbXNnc3RyICJpbCByZXBvc2l0b3J5IHNvcmdlbnRlIMOoIHNoYWxsb3csIGlnbm9ybyBsJ29wemlvbmUgLS1sb2NhbCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExNjgKK21zZ2lkICItLWxvY2FsIGlzIGlnbm9yZWQiCittc2dzdHIgImwnb3B6aW9uZSAtLWxvY2FsIMOoIGlnbm9yYXRhIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI0MyBidWlsdGluL2Nsb25lLmM6MTI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdGUgYnJhbmNoICVzIG5vdCBmb3VuZCBpbiB1cHN0cmVhbSAlcyIKK21zZ3N0ciAiSWwgYnJhbmNoIHJlbW90byAlcyBub24gw6ggc3RhdG8gdHJvdmF0byBuZWxsJ3Vwc3RyZWFtICVzIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI1NAorbXNnaWQgIllvdSBhcHBlYXIgdG8gaGF2ZSBjbG9uZWQgYW4gZW1wdHkgcmVwb3NpdG9yeS4iCittc2dzdHIgIlNlbWJyYSBjaGUgdHUgYWJiaWEgY2xvbmF0byB1biByZXBvc2l0b3J5IHZ1b3RvLiIKKworIzogYnVpbHRpbi9jb2x1bW4uYzoxMAorbXNnaWQgImdpdCBjb2x1bW4gWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCBjb2x1bW4gWzxvcHppb25pPl0iCisKKyM6IGJ1aWx0aW4vY29sdW1uLmM6MjcKK21zZ2lkICJsb29rdXAgY29uZmlnIHZhcnMiCittc2dzdHIgInJlY3VwZXJhIGxlIHZhcmlhYmlsaSBkaSBjb25maWd1cmF6aW9uZSBkYSBxdWkiCisKKyM6IGJ1aWx0aW4vY29sdW1uLmM6MjggYnVpbHRpbi9jb2x1bW4uYzoyOQorbXNnaWQgImxheW91dCB0byB1c2UiCittc2dzdHIgImxheW91dCBkYSB1c2FyZSIKKworIzogYnVpbHRpbi9jb2x1bW4uYzozMAorbXNnaWQgIk1heGltdW0gd2lkdGgiCittc2dzdHIgIkxhcmdoZXp6YSBtYXNzaW1hIgorCisjOiBidWlsdGluL2NvbHVtbi5jOjMxCittc2dpZCAiUGFkZGluZyBzcGFjZSBvbiBsZWZ0IGJvcmRlciIKK21zZ3N0ciAiU3BhemkgdnVvdGkgcGVyIGlsIG1hcmdpbmUgc2luaXN0cm8iCisKKyM6IGJ1aWx0aW4vY29sdW1uLmM6MzIKK21zZ2lkICJQYWRkaW5nIHNwYWNlIG9uIHJpZ2h0IGJvcmRlciIKK21zZ3N0ciAiU3BhemkgdnVvdGkgcGVyIGlsIG1hcmdpbmUgZGVzdHJvIgorCisjOiBidWlsdGluL2NvbHVtbi5jOjMzCittc2dpZCAiUGFkZGluZyBzcGFjZSBiZXR3ZWVuIGNvbHVtbnMiCittc2dzdHIgIlNwYXppIHZ1b3RpIGZyYSBsZSBjb2xvbm5lIgorCisjOiBidWlsdGluL2NvbHVtbi5jOjUxCittc2dpZCAiLS1jb21tYW5kIG11c3QgYmUgdGhlIGZpcnN0IGFyZ3VtZW50IgorbXNnc3RyICItLWNvbW1hbmQgZGV2ZSBlc3NlcmUgaWwgcHJpbW8gYXJnb21lbnRvIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTgKK21zZ2lkICIiCisiZ2l0IGNvbW1pdC10cmVlIFsoLXAgPHBhcmVudD4pLi4uXSBbLVNbPGtleWlkPl1dIFsoLW0gPG1lc3NhZ2U+KS4uLl0gWygtRiAiCisiPGZpbGU+KS4uLl0gPHRyZWU+IgorbXNnc3RyICIiCisiZ2l0IGNvbW1pdC10cmVlIFsoLXAgPGdlbml0b3JlPikuLi5dIFstU1s8SUQgY2hpYXZlPl1dIFsoLW0gPG1lc3NhZ2dpbz4pLi4uXSAiCisiWygtRiA8ZmlsZT4pLi4uXSA8YWxiZXJvPiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjMxCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXJlbnQgJXMgaWdub3JlZCIKK21zZ3N0ciAiZ2VuaXRvcmUgZHVwbGljYXRvICVzIGlnbm9yYXRvIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6NTYgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEzNiBidWlsdGluL2xvZy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIKK21zZ3N0ciAiJXMgbm9uIMOoIHVuIG5vbWUgb2dnZXR0byB2YWxpZG8iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byBvcGVuICclcyciCittc2dzdHIgImdpdCBjb21taXQtdHJlZTogYXBlcnR1cmEgZGkgJyVzJyBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzo5NgorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byByZWFkICclcyciCittc2dzdHIgImdpdCBjb21taXQtdHJlZTogbGV0dHVyYSBkaSAnJXMnIG5vbiByaXVzY2l0YSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk4CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIGNsb3NlICclcyciCittc2dzdHIgImdpdCBjb21taXQtdHJlZTogY2hpdXN1cmEgZGkgJyVzJyBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTEKK21zZ2lkICJwYXJlbnQiCittc2dzdHIgImdlbml0b3JlIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTEyCittc2dpZCAiaWQgb2YgYSBwYXJlbnQgY29tbWl0IG9iamVjdCIKK21zZ3N0ciAiSUQgZGkgdW4gb2dnZXR0byBjb21taXQgZ2VuaXRvcmUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTQgYnVpbHRpbi9jb21taXQuYzoxNTAxIGJ1aWx0aW4vbWVyZ2UuYzoyNzEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MDkgYnVpbHRpbi9ub3Rlcy5jOjU3NSBidWlsdGluL3N0YXNoLmM6MTQ3NworIzogYnVpbHRpbi90YWcuYzo0MTIKK21zZ2lkICJtZXNzYWdlIgorbXNnc3RyICJtZXNzYWdnaW8iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTUgYnVpbHRpbi9jb21taXQuYzoxNTAxCittc2dpZCAiY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIm1lc3NhZ2dpbyBkaSBjb21taXQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTgKK21zZ2lkICJyZWFkIGNvbW1pdCBsb2cgbWVzc2FnZSBmcm9tIGZpbGUiCittc2dzdHIgImxlZ2dpIGlsIG1lc3NhZ2dpbyBkaSBsb2cgZGVsIGNvbW1pdCBkYSB1biBmaWxlIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTIxIGJ1aWx0aW4vY29tbWl0LmM6MTUxMyBidWlsdGluL21lcmdlLmM6Mjg4CisjOiBidWlsdGluL3B1bGwuYzoxNzUgYnVpbHRpbi9yZXZlcnQuYzoxMTgKK21zZ2lkICJHUEcgc2lnbiBjb21taXQiCittc2dzdHIgImZpcm1hIGlsIGNvbW1pdCBjb24gR1BHIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTMzCittc2dpZCAibXVzdCBnaXZlIGV4YWN0bHkgb25lIHRyZWUiCittc2dzdHIgIsOoIG5lY2Vzc2FyaW8gZm9ybmlyZSBlc2F0dGFtZW50ZSB1biBhbGJlcm8iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxNDAKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byByZWFkIgorbXNnc3RyICJnaXQgY29tbWl0LXRyZWU6IGxldHR1cmEgbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjQxCittc2dpZCAiZ2l0IGNvbW1pdCBbPG9wdGlvbnM+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCittc2dzdHIgImdpdCBjb21taXQgWzxvcHppb25pPl0gWy0tXSA8c3BlY2lmaWNhdG9yZSBwZXJjb3Jzbz4uLi4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDYKK21zZ2lkICJnaXQgc3RhdHVzIFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKK21zZ3N0ciAiZ2l0IHN0YXR1cyBbPG9wemlvbmk+XSBbLS1dIDxzcGVjaWZpY2F0b3JlIHBlcmNvcnNvPi4uLiIKKworIzogYnVpbHRpbi9jb21taXQuYzo1MQogbXNnaWQgIiIKICJZb3UgYXNrZWQgdG8gYW1lbmQgdGhlIG1vc3QgcmVjZW50IGNvbW1pdCwgYnV0IGRvaW5nIHNvIHdvdWxkIG1ha2VcbiIKICJpdCBlbXB0eS4gWW91IGNhbiByZXBlYXQgeW91ciBjb21tYW5kIHdpdGggLS1hbGxvdy1lbXB0eSwgb3IgeW91IGNhblxuIgogInJlbW92ZSB0aGUgY29tbWl0IGVudGlyZWx5IHdpdGggXCJnaXQgcmVzZXQgSEVBRF5cIi5cbiIKIG1zZ3N0ciAiIgorIkhhaSByaWNoaWVzdG8gZGkgbW9kaWZpY2FyZSBpbCBjb21taXQgcGnDuSByZWNlbnRlLCBtYSBlc2VndWlyZSB0YWxlXG4iCisib3BlcmF6aW9uZSBsbyByZW5kZXJlYmJlIHZ1b3RvLiBQdW9pIHJpcGV0ZXJlIGwnZXNlY3V6aW9uZSBkZWwgY29tYW5kb1xuIgorImNvbiAtLWFsbG93LWVtcHR5IG8gcHVvaSByaW11b3ZlcmUgY29tcGxldGFtZW50ZSBpbCBjb21taXQgY29uXG4iCisiXCJnaXQgcmVzZXQgSEVBRF5cIi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2MAorIzogYnVpbHRpbi9jb21taXQuYzo1NgogbXNnaWQgIiIKICJUaGUgcHJldmlvdXMgY2hlcnJ5LXBpY2sgaXMgbm93IGVtcHR5LCBwb3NzaWJseSBkdWUgdG8gY29uZmxpY3QgcmVzb2x1dGlvbi5cbiIKICJJZiB5b3Ugd2lzaCB0byBjb21taXQgaXQgYW55d2F5LCB1c2U6XG4iCiAiXG4iCiAiICAgIGdpdCBjb21taXQgLS1hbGxvdy1lbXB0eVxuIgogIlxuIgotIk90aGVyd2lzZSwgcGxlYXNlIHVzZSAnZ2l0IHJlc2V0J1xuIgogbXNnc3RyICIiCisiSWwgY2hlcnJ5LXBpY2sgcHJlY2VkZW50ZSBvcmEgw6ggdnVvdG8sIHByb2JhYmlsbWVudGUgYSBjYXVzYSBkaSBhbGN1bmlcbiIKKyJjb25mbGl0dGkgcmlzb2x0aS5cbiIKKyJTZSB2dW9pIGNvbXVucXVlIGVzZWd1aXJuZSBpbCBjb21taXQsIHVzYTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5XG4iCisiXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MjUzCisjOiBidWlsdGluL2NvbW1pdC5jOjYzCittc2dpZCAiT3RoZXJ3aXNlLCBwbGVhc2UgdXNlICdnaXQgY2hlcnJ5LXBpY2sgLS1za2lwJ1xuIgorbXNnc3RyICJBbHRyaW1lbnRpLCB1c2EgJ2dpdCBjaGVycnktcGljayAtLXNraXAnXG4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjYKK21zZ2lkICIiCisiYW5kIHRoZW4gdXNlOlxuIgorIlxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVxuIgorIlxuIgorInRvIHJlc3VtZSBjaGVycnktcGlja2luZyB0aGUgcmVtYWluaW5nIGNvbW1pdHMuXG4iCisiSWYgeW91IHdpc2ggdG8gc2tpcCB0aGlzIGNvbW1pdCwgdXNlOlxuIgorIlxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXG4iCisiXG4iCittc2dzdHIgIiIKKyJlIHF1aW5kaSB1c2E6XG4iCisiXG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXG4iCisiXG4iCisicGVyIHJpcHJlbmRlcmUgbCdlc2VjdXppb25lIGlsIGNoZXJyeS1waWNrIHBlciBpIGNvbW1pdCByaW1hbmVudGkuXG4iCisiU2UgdnVvaSBzYWx0YXJlIHF1ZXN0byBjb21taXQsIHVzYTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFxuIgorIlxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjMxNQogbXNnaWQgImZhaWxlZCB0byB1bnBhY2sgSEVBRCB0cmVlIG9iamVjdCIKLW1zZ3N0ciAiIgorbXNnc3RyICJkZWNvbXByZXNzaW9uZSBkZWxsJ29nZ2V0dG8gSEVBRCBkZWxsJ2FsYmVybyBub24gcml1c2NpdGEiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Mjk1CisjOiBidWlsdGluL2NvbW1pdC5jOjM1MQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAibCdvcHppb25lIC0tcGF0aHNwZWMtZnJvbS1maWxlIG5vbiBoYSBzZW5zbyBjb24gLWEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzY0Cittc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgorbXNnc3RyICIiCisiTm9uIHNwZWNpZmljYXJlIHVuIHBlcmNvcnNvIGNvbiBsZSBvcHppb25pIC0taW5jbHVkZS8tLW9ubHkgbm9uIGhhIHNlbnNvLiIKKworIzogYnVpbHRpbi9jb21taXQuYzozNzYKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBpbmRleCIKLW1zZ3N0ciAiIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgbCdpbmRpY2UgdGVtcG9yYW5lbyIKIAotIzogYnVpbHRpbi9jb21taXQuYzozMDEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzg1CiBtc2dpZCAiaW50ZXJhY3RpdmUgYWRkIGZhaWxlZCIKLW1zZ3N0ciAiYWRkIGludGVyYXR0aXZvIG5vbiByaXVzY2l0byIKK21zZ3N0ciAiYWdnaXVudGEgaW50ZXJhdHRpdmEgbm9uIHJpdXNjaXRhIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjMzNCBidWlsdGluL2NvbW1pdC5jOjM1NSBidWlsdGluL2NvbW1pdC5jOjQwNQorIzogYnVpbHRpbi9jb21taXQuYzo0MDAKK21zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIHRlbXBvcmFyeSBpbmRleCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYWdnaW9ybmFyZSBsJ2luZGljZSB0ZW1wb3JhbmVvIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjQwMgorbXNnaWQgIkZhaWxlZCB0byB1cGRhdGUgbWFpbiBjYWNoZSB0cmVlIgorbXNnc3RyICJJbXBvc3NpYmlsZSBhZ2dpb3JuYXJlIGwnYWxiZXJvIGNhY2hlIHByaW5jaXBhbGUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDI3IGJ1aWx0aW4vY29tbWl0LmM6NDUwIGJ1aWx0aW4vY29tbWl0LmM6NDk2CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ld19pbmRleCBmaWxlIgogbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSBpbCBmaWxlIG5ld19pbmRleCIKIAotIzogYnVpbHRpbi9jb21taXQuYzozODYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDc5CiBtc2dpZCAiY2Fubm90IGRvIGEgcGFydGlhbCBjb21taXQgZHVyaW5nIGEgbWVyZ2UuIgogbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSB1biBjb21taXQgcGFyemlhbGUgZHVyYW50ZSB1biBtZXJnZS4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Mzg4CisjOiBidWlsdGluL2NvbW1pdC5jOjQ4MQogbXNnaWQgImNhbm5vdCBkbyBhIHBhcnRpYWwgY29tbWl0IGR1cmluZyBhIGNoZXJyeS1waWNrLiIKIG1zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgdW4gY29tbWl0IHBhcnppYWxlIGR1cmFudGUgdW4gY2hlcnJ5LXBpY2suIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM5OAorIzogYnVpbHRpbi9jb21taXQuYzo0ODkKIG1zZ2lkICJjYW5ub3QgcmVhZCB0aGUgaW5kZXgiCi1tc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaW5kZXgiCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgbCdpbmRpY2UiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDE4CisjOiBidWlsdGluL2NvbW1pdC5jOjUwOAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0ZW1wb3JhcnkgaW5kZXggZmlsZSIKLW1zZ3N0ciAiIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSBpbCBmaWxlIGluZGljZSB0ZW1wb3JhbmVvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ5MyBidWlsdGluL2NvbW1pdC5jOjQ5OQorIzogYnVpbHRpbi9jb21taXQuYzo2MDYKICMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBjb21taXQ6ICVzIgotbXNnc3RyICJjb21taXQgbm9uIHZhbGlkbzogJXMiCittc2dpZCAiY29tbWl0ICclcycgbGFja3MgYXV0aG9yIGhlYWRlciIKK21zZ3N0ciAiZGFsIGNvbW1pdCAnJXMnIG1hbmNhIGwnaW50ZXN0YXppb25lIGF1dG9yZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzo1MjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdCAnJXMnIGhhcyBtYWxmb3JtZWQgYXV0aG9yIGxpbmUiCittc2dzdHIgImlsIGNvbW1pdCAnJXMnIGhhIHVuYSByaWdhIGF1dG9yZSBtYWxmb3JtYXRhIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjYyNwogbXNnaWQgIm1hbGZvcm1lZCAtLWF1dGhvciBwYXJhbWV0ZXIiCiBtc2dzdHIgInBhcmFtZXRybyAtLWF1dGhvciBtYWxmb3JtYXRvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU4MgotIywgYy1mb3JtYXQKLW1zZ2lkICJNYWxmb3JtZWQgaWRlbnQgc3RyaW5nOiAnJXMnIgorIzogYnVpbHRpbi9jb21taXQuYzo2ODAKK21zZ2lkICIiCisidW5hYmxlIHRvIHNlbGVjdCBhIGNvbW1lbnQgY2hhcmFjdGVyIHRoYXQgaXMgbm90IHVzZWRcbiIKKyJpbiB0aGUgY3VycmVudCBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAiIgorImltcG9zc2liaWxlIHNlbGV6aW9uYXJlIHVuIGNhcmF0dGVyZSBjb21tZW50byBub24gdXNhdG9cbiIKKyJuZWwgbWVzc2FnZ2lvIGRpIGNvbW1pdCBjb3JyZW50ZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2MjAgYnVpbHRpbi9jb21taXQuYzo2NTMgYnVpbHRpbi9jb21taXQuYzo5NjcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzE4IGJ1aWx0aW4vY29tbWl0LmM6NzUxIGJ1aWx0aW4vY29tbWl0LmM6MTA5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9va3VwIGNvbW1pdCAlcyIKLW1zZ3N0ciAibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSB0cm92YXJlIGlsIGNvbW1pdCAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgdHJvdmFyZSBpbCBjb21taXQgJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjMyIGJ1aWx0aW4vc2hvcnRsb2cuYzoyOTYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzMwIGJ1aWx0aW4vc2hvcnRsb2cuYzozMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiKHJlYWRpbmcgbG9nIG1lc3NhZ2UgZnJvbSBzdGFuZGFyZCBpbnB1dClcbiIKIG1zZ3N0ciAiKGxldHR1cmEgZGVsIG1lc3NhZ2dpbyBkaSBsb2cgZGFsbG8gc3RhbmRhcmQgaW5wdXQpXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjM0CisjOiBidWlsdGluL2NvbW1pdC5jOjczMgogbXNnaWQgImNvdWxkIG5vdCByZWFkIGxvZyBmcm9tIHN0YW5kYXJkIGlucHV0IgotbXNnc3RyICJub24gw6ggc3RhdG8gcG9zc2liaWxlIGxlZ2dlcmUgaWwgbG9nIGRhbGxvIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGlsIGxvZyBkYWxsbyBzdGFuZGFyZCBpbnB1dCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2MzgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzM2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGxvZyBmaWxlICclcyciCi1tc2dzdHIgIm5vbiDDqCBzdGF0byBwb3NzaWJpbGUgbGVnZ2VyZSBpbCBmaWxlIGRpIGxvZyAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGlsIGZpbGUgZGkgbG9nICclcyciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjQ0Ci1tc2dpZCAiY29tbWl0IGhhcyBlbXB0eSBtZXNzYWdlIgotbXNnc3RyICJpbCBjb21taXQgaGEgdW4gbWVzc2FnZ2lvIHZ1b3RvIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjY2MAotbXNnaWQgImNvdWxkIG5vdCByZWFkIE1FUkdFX01TRyIKLW1zZ3N0ciAibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBsZWdnZXJlIE1FUkdFX01TRyIKLQotIzogYnVpbHRpbi9jb21taXQuYzo2NjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzY3IGJ1aWx0aW4vY29tbWl0LmM6NzgzCiBtc2dpZCAiY291bGQgbm90IHJlYWQgU1FVQVNIX01TRyIKLW1zZ3N0ciAibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBsZWdnZXJlIFNRVUFTSF9NU0ciCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgU1FVQVNIX01TRyIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2NjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IHJlYWQgJyVzJyIKLW1zZ3N0ciAibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBsZWdnZXJlICclcyciCisjOiBidWlsdGluL2NvbW1pdC5jOjc3NAorbXNnaWQgImNvdWxkIG5vdCByZWFkIE1FUkdFX01TRyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBNRVJHRV9NU0ciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzIwCisjOiBidWlsdGluL2NvbW1pdC5jOjgzNAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBjb21taXQgdGVtcGxhdGUiCi1tc2dzdHIgIm5vbiDDqCBzdGF0byBwb3NzaWJpbGUgc2NyaXZlcmUgaWwgbW9kZWxsbyBkaSBjb21taXQiCittc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGlsIG1vZGVsbG8gZGkgY29tbWl0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjczMQorIzogYnVpbHRpbi9jb21taXQuYzo4NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMjE5OCwxMiArMTI3MTMsMTIgQEAKICJhbmQgdHJ5IGFnYWluLlxuIgogbXNnc3RyICIiCiAiXG4iCi0iU2VtYnJhIGNoZSBzaSBzdGlhIGVzZWd1ZW5kbyBpbCBjb21taXQgZGkgdW4gbWVyZ2UuXG4iCi0iU2UgbCdvcGVyYXppb25lIG5vbiDDqCBjb3JyZXR0YSwgcGVyIGZhdm9yZSBlbGltaW5hIGlsIGZpbGVcbiIKKyJTZW1icmEgY2hlIHR1IHN0aWEgZXNlZ3VlbmRvIGlsIGNvbW1pdCBkaSB1biBtZXJnZS5cbiIKKyJTZSBjacOyIG5vbiDDqCBjb3JyZXR0bywgZWxpbWluYSBpbCBmaWxlXG4iCiAiXHQlc1xuIgogImUgcmlwcm92YS5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3MzYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTIyMTMsNTcxICsxMjcyOCwyMzg4IEBACiAiYW5kIHRyeSBhZ2Fpbi5cbiIKIG1zZ3N0ciAiIgogIlxuIgotIlNlbWJyYSBjaGUgc2kgc3RpYSBlc2VndWVuZG8gaWwgY29tbWl0IGRpIHVuIGNoZXJyeS1waWNrLlxuIgotIlNlIGwnb3BlcmF6aW9uZSBub24gw6ggY29ycmV0dGEsIHBlciBmYXZvcmUgcmltdW92aSBpbCBmaWxlXG4iCisiU2VtYnJhIGNoZSB0dSBzdGlhIGVzZWd1ZW5kbyBpbCBjb21taXQgZGkgdW4gbWVyZ2UuXG4iCisiU2UgY2nDsiBub24gw6ggY29ycmV0dG8sIGVsaW1pbmEgaWwgZmlsZVxuIgogIlx0JXNcbiIKICJlIHJpcHJvdmEuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzQ4CisjOiBidWlsdGluL2NvbW1pdC5jOjg3MQorIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgeW91ciBjaGFuZ2VzLiBMaW5lcyBzdGFydGluZ1xuIgotIndpdGggJyMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCisid2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCiBtc2dzdHIgIiIKLSJQZXIgZmF2b3JlIGluc2VyaXNjaSBpbCBtZXNzYWdnaW8gZGkgY29tbWl0IHBlciBsZSBtb2RpZmljaGUuIExlIHJpZ2hlXG4iCi0iY2hlIGluaXppYW5vIGNvbiAnIycgdmVycmFubm8gaWdub3JhdGUsIGUgdW4gbWVzc2FnZ2lvIHZ1b3RvIGFubnVsbGEgaWwgY29tbWl0LlxuIgorIkltbWV0dGkgaWwgbWVzc2FnZ2lvIGRpIGNvbW1pdCBwZXIgbGUgbW9kaWZpY2hlLiBMZSByaWdoZSBjaGUgaW5pemlhbm9cbiIKKyJjb24gJyVjJyBzYXJhbm5vIGlnbm9yYXRlIGUgdW4gbWVzc2FnZ2lvIHZ1b3RvIGludGVycm9tcGVyw6AgaWwgY29tbWl0LlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjc1MworIzogYnVpbHRpbi9jb21taXQuYzo4NzkKKyMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlBsZWFzZSBlbnRlciB0aGUgY29tbWl0IG1lc3NhZ2UgZm9yIHlvdXIgY2hhbmdlcy4gTGluZXMgc3RhcnRpbmdcbiIKLSJ3aXRoICcjJyB3aWxsIGJlIGtlcHQ7IHlvdSBtYXkgcmVtb3ZlIHRoZW0geW91cnNlbGYgaWYgeW91IHdhbnQgdG8uXG4iCisid2l0aCAnJWMnIHdpbGwgYmUga2VwdDsgeW91IG1heSByZW1vdmUgdGhlbSB5b3Vyc2VsZiBpZiB5b3Ugd2FudCB0by5cbiIKICJBbiBlbXB0eSBtZXNzYWdlIGFib3J0cyB0aGUgY29tbWl0LlxuIgogbXNnc3RyICIiCi0iUGVyIGZhdm9yZSBpbnNlcmlzY2kgaWwgbWVzc2FnZ2lvIGRpIGNvbW1pdCBwZXIgbGUgbW9kaWZpY2hlLiBMZVxuIgotInJpZ2hlIGNoZSBpbml6aWFubyBjb24gJyMnIHZlcnJhbm5vIG1hbnRlbnV0ZTsgcG9zc29ubyBjb211bnF1ZSBlc3NlcmVcbiIKLSJyaW1vc3NlIG1hbnVhbG1lbnRlLiBVbiBtZXNzYWdnaW8gdnVvdG8gYW5udWxsYSBpbCBjb21taXQuXG4iCisiSW1tZXR0aSBpbCBtZXNzYWdnaW8gZGkgY29tbWl0IHBlciBsZSBtb2RpZmljaGUuIExlIHJpZ2hlIGNoZSBpbml6aWFub1xuIgorImNvbiAnJWMnIHNhcmFubm8gbWFudGVudXRlOyBwdW9pIHJpbXVvdmVybGUgYXV0b25vbWFtZW50ZSBzZSBsbyBkZXNpZGVyaS5cbiIKKyJVbiBtZXNzYWdnaW8gdnVvdG8gaW50ZXJyb21wZXLDoCBpbCBjb21taXQuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzY2CisjOiBidWlsdGluL2NvbW1pdC5jOjg5NgogIywgYy1mb3JtYXQKLW1zZ2lkICIlc0F1dGhvcjogICAgJXMiCi1tc2dzdHIgIiVzQXV0b3JlOiAgICAlcyIKK21zZ2lkICIlc0F1dGhvcjogICAgJS4qcyA8JS4qcz4iCittc2dzdHIgIiVzQXV0b3JlOiAgICAgICAgICAgJS4qcyA8JS4qcz4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzczCisjOiBidWlsdGluL2NvbW1pdC5jOjkwNAogIywgYy1mb3JtYXQKLW1zZ2lkICIlc0NvbW1pdHRlcjogJXMiCi1tc2dzdHIgIiVzQ29tbWl0dGVyOiAlcyIKK21zZ2lkICIlc0RhdGU6ICAgICAgJXMiCittc2dzdHIgIiVzRGF0YTogICAgICAgICAgICAgJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzkzCisjOiBidWlsdGluL2NvbW1pdC5jOjkxMQorIywgYy1mb3JtYXQKK21zZ2lkICIlc0NvbW1pdHRlcjogJS4qcyA8JS4qcz4iCittc2dzdHIgIiVzRXNlY3V0b3JlIGNvbW1pdDogJS4qcyA8JS4qcz4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTI5CiBtc2dpZCAiQ2Fubm90IHJlYWQgaW5kZXgiCi1tc2dzdHIgIkltcG9zc2liaWxlIGxlZ2dlcmUgaW5kZXgiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODMwCi1tc2dpZCAiRXJyb3IgYnVpbGRpbmcgdHJlZXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jb21taXQuYzo4NDUgYnVpbHRpbi90YWcuYzozNjEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiUGxlYXNlIHN1cHBseSB0aGUgbWVzc2FnZSB1c2luZyBlaXRoZXIgLW0gb3IgLUYgb3B0aW9uLlxuIgotbXNnc3RyICJQZXIgZmF2b3JlLCBzcGVjaWZpY2EgaWwgbWVzc2FnZ2lvIHVzYW5kbyBsJ29wemlvbmUgLW0gbyAtRi5cbiIKLQotIzogYnVpbHRpbi9jb21taXQuYzo5NDIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiTm8gZXhpc3RpbmcgYXV0aG9yIGZvdW5kIHdpdGggJyVzJyIKLW1zZ3N0ciAiTmVzc3VuIGF1dG9yZSBlc2lzdGVudGUgdHJvdmF0byBjb24gJyVzJyIKLQotIzogYnVpbHRpbi9jb21taXQuYzo5NTcgYnVpbHRpbi9jb21taXQuYzoxMTU3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkludmFsaWQgdW50cmFja2VkIGZpbGVzIG1vZGUgJyVzJyIKLW1zZ3N0ciAiIgorbXNnc3RyICJJbXBvc3NpYmlsZSBsZWdnZXJlIGwnaW5kaWNlIgogCiAjOiBidWlsdGluL2NvbW1pdC5jOjk5NworbXNnaWQgIkVycm9yIGJ1aWxkaW5nIHRyZWVzIgorbXNnc3RyICJFcnJvcmUgZHVyYW50ZSBsYSBjb3N0cnV6aW9uZSBkZWdsaSBhbGJlcmkiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTAxMSBidWlsdGluL3RhZy5jOjI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJQbGVhc2Ugc3VwcGx5IHRoZSBtZXNzYWdlIHVzaW5nIGVpdGhlciAtbSBvciAtRiBvcHRpb24uXG4iCittc2dzdHIgIkZvcm5pc2NpIGlsIG1lc3NhZ2dpbyB1c2FuZG8gbCdvcHppb25lIC1tIG8gLUYuXG4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA1NQorIywgYy1mb3JtYXQKK21zZ2lkICItLWF1dGhvciAnJXMnIGlzIG5vdCAnTmFtZSA8ZW1haWw+JyBhbmQgbWF0Y2hlcyBubyBleGlzdGluZyBhdXRob3IiCittc2dzdHIgIiIKKyItLWF1dGhvciAnJXMnIG5vbiDDqCBuZWwgZm9ybWF0byAnTm9tZSA8ZS1tYWlsPicgZSBub24gY29ycmlzcG9uZGUgYWQgYWxjdW4gIgorImF1dG9yZSBlc2lzdGVudGUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA2OQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGlnbm9yZWQgbW9kZSAnJXMnIgorbXNnc3RyICJNb2RvIG5vbiB2YWxpZG8gaWdub3JhdG86ICclcyciCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA4NyBidWlsdGluL2NvbW1pdC5jOjEzMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB1bnRyYWNrZWQgZmlsZXMgbW9kZSAnJXMnIgorbXNnc3RyICJNb2RvIGZpbGUgbm9uIHRyYWNjaWF0aSBub24gdmFsaWRvOiAnJXMnIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjExMjcKK21zZ2lkICItLWxvbmcgYW5kIC16IGFyZSBpbmNvbXBhdGlibGUiCittc2dzdHIgIi0tbG9uZyBlIC16IG5vbiBzb25vIGNvbXBhdGliaWxpIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjExNzEKIG1zZ2lkICJVc2luZyBib3RoIC0tcmVzZXQtYXV0aG9yIGFuZCAtLWF1dGhvciBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICJMJ3VzbyBkaSBlbnRyYW1iZSBsZSBvcHppb25pIC0tcmVzZXQtYXV0aG9yIGUgLS1hdXRob3Igbm9uIGhhIHNlbnNvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwMDgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MAogbXNnaWQgIllvdSBoYXZlIG5vdGhpbmcgdG8gYW1lbmQuIgotbXNnc3RyICIiCittc2dzdHIgIk5vbiBjJ8OoIG51bGxhIGRhIG1vZGlmaWNhcmUuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwMTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MwogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIC0tIGNhbm5vdCBhbWVuZC4iCi1tc2dzdHIgIiIKK21zZ3N0ciAiU2VpIG5lbCBiZWwgbWV6em8gZGkgdW4gbWVyZ2UgLSBpbXBvc3NpYmlsZSBlc2VndWlyZSBsJ2FtZW5kLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDEzCisjOiBidWlsdGluL2NvbW1pdC5jOjExODUKIG1zZ2lkICJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSBjaGVycnktcGljayAtLSBjYW5ub3QgYW1lbmQuIgotbXNnc3RyICIiCittc2dzdHIgIlNlaSBuZWwgYmVsIG1lenpvIGRpIHVuIGNoZXJyeS1waWNrIC0gaW1wb3NzaWJpbGUgZXNlZ3VpcmUgbCdhbWVuZC4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAxNgorIzogYnVpbHRpbi9jb21taXQuYzoxMTg4CiBtc2dpZCAiT3B0aW9ucyAtLXNxdWFzaCBhbmQgLS1maXh1cCBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAiTGUgb3B6aW9uaSAtLXNxdWFzaCBlIC0tZml4dXAgbm9uIHBvc3Nvbm8gZXNzZXJlIHVzYXRlIGluc2llbWUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAyNgorIzogYnVpbHRpbi9jb21taXQuYzoxMTk4CiBtc2dpZCAiT25seSBvbmUgb2YgLWMvLUMvLUYvLS1maXh1cCBjYW4gYmUgdXNlZC4iCiBtc2dzdHIgIlNvbG8gdW5hIGRlbGxlIG9wemlvbmkgLWMvLUMvLUYvLS1maXh1cCBwdcOyIGVzc2VyZSB1c2F0YS4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAyOAotbXNnaWQgIk9wdGlvbiAtbSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCAtYy8tQy8tRi8tLWZpeHVwLiIKLW1zZ3N0ciAiTCdvcHppb25lIC1tIG5vbiBwdcOyIGVzc2VyZSBjb21iaW5hdGEgY29uIC1jLy1DLy1GLy0tZml4dXAuIgorIzogYnVpbHRpbi9jb21taXQuYzoxMjAwCittc2dpZCAiT3B0aW9uIC1tIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIC1jLy1DLy1GLiIKK21zZ3N0ciAiTCdvcHppb25lIC1tIG5vbiBwdcOyIGVzc2VyZSBjb21iaW5hdGEgY29uIC1jLy1DLy1GLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDM2CisjOiBidWlsdGluL2NvbW1pdC5jOjEyMDgKIG1zZ2lkICItLXJlc2V0LWF1dGhvciBjYW4gYmUgdXNlZCBvbmx5IHdpdGggLUMsIC1jIG9yIC0tYW1lbmQuIgogbXNnc3RyICJMJ29wemlvbmUgLS1yZXNldC1hdXRob3IgcHXDsiBlc3NlcmUgdXNhdGEgc29sbyBjb24gLUMsIC1jIG8gLS1hbWVuZC4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTA1MworIzogYnVpbHRpbi9jb21taXQuYzoxMjI1CiBtc2dpZCAiT25seSBvbmUgb2YgLS1pbmNsdWRlLy0tb25seS8tLWFsbC8tLWludGVyYWN0aXZlLy0tcGF0Y2ggY2FuIGJlIHVzZWQuIgogbXNnc3RyICIiCiAiUHXDsiBlc3NlcmUgdXNhdGEgc29sbyB1bmEgZGVsbGUgb3B6aW9uaSAtLWluY2x1ZGUvLS1vbmx5Ly0tYWxsLy0tIgotImludGVyYWN0aXZlLy0tcGF0Y2ggLiIKKyJpbnRlcmFjdGl2ZS8tLXBhdGNoLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDU1Ci1tc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgotbXNnc3RyICJEZXZpIHNwZWNpZmljYXJlIHVuIHBhdGggc2UgdXNpIC0taW5jbHVkZS8tLW9ubHkuIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwNTcKLW1zZ2lkICJDbGV2ZXIuLi4gYW1lbmRpbmcgdGhlIGxhc3Qgb25lIHdpdGggZGlydHkgaW5kZXguIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTA1OQotbXNnaWQgIkV4cGxpY2l0IHBhdGhzIHNwZWNpZmllZCB3aXRob3V0IC1pIG5vciAtbzsgYXNzdW1pbmcgLS1vbmx5IHBhdGhzLi4uIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTA2OSBidWlsdGluL3RhZy5jOjU3NworIzogYnVpbHRpbi9jb21taXQuYzoxMjMxCiAjLCBjLWZvcm1hdAotbXNnaWQgIkludmFsaWQgY2xlYW51cCBtb2RlICVzIgorbXNnaWQgInBhdGhzICclcyAuLi4nIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiaSBwZXJjb3JzaSAnJXMgLi4uJyBub24gaGFubm8gc2Vuc28gY29uIC1hIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjIgYnVpbHRpbi9jb21taXQuYzoxNTI0Cittc2dpZCAic2hvdyBzdGF0dXMgY29uY2lzZWx5IgorbXNnc3RyICJ2aXN1YWxpenphIGNvbmNpc2FtZW50ZSBsbyBzdGF0byIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzY0IGJ1aWx0aW4vY29tbWl0LmM6MTUyNgorbXNnaWQgInNob3cgYnJhbmNoIGluZm9ybWF0aW9uIgorbXNnc3RyICJ2aXN1YWxpenphIGxlIGluZm9ybWF6aW9uaSBzdWwgYnJhbmNoIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjYKK21zZ2lkICJzaG93IHN0YXNoIGluZm9ybWF0aW9uIgorbXNnc3RyICJ2aXN1YWxpenphIGxlIGluZm9ybWF6aW9uaSBzdWxsbyBzdGFzaCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzY4IGJ1aWx0aW4vY29tbWl0LmM6MTUyOAorbXNnaWQgImNvbXB1dGUgZnVsbCBhaGVhZC9iZWhpbmQgdmFsdWVzIgorbXNnc3RyICJjYWxjb2xhIHR1dHRpIGkgdmFsb3JpIGRvcG8vcHJpbWEgZGkiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3MAorbXNnaWQgInZlcnNpb24iCittc2dzdHIgInZlcnNpb25lIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzAgYnVpbHRpbi9jb21taXQuYzoxNTMwIGJ1aWx0aW4vcHVzaC5jOjU0OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY0MworbXNnaWQgIm1hY2hpbmUtcmVhZGFibGUgb3V0cHV0IgorbXNnc3RyICJvdXRwdXQgbGVnZ2liaWxlIGRhIHVuYSBtYWNjaGluYSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzczIGJ1aWx0aW4vY29tbWl0LmM6MTUzMgorbXNnaWQgInNob3cgc3RhdHVzIGluIGxvbmcgZm9ybWF0IChkZWZhdWx0KSIKK21zZ3N0ciAidmlzdWFsaXp6YSBsbyBzdGF0byBpbiBmb3JtYSBsdW5nYSAoaW1wb3N0YXppb25lIHByZWRlZmluaXRhKSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzc2IGJ1aWx0aW4vY29tbWl0LmM6MTUzNQorbXNnaWQgInRlcm1pbmF0ZSBlbnRyaWVzIHdpdGggTlVMIgorbXNnc3RyICJ0ZXJtaW5hIGxlIHZvY2kgY29uIE5VTCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzc4IGJ1aWx0aW4vY29tbWl0LmM6MTM4MiBidWlsdGluL2NvbW1pdC5jOjE1MzgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTUzIGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTU2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1OSBidWlsdGluL3JlYmFzZS5jOjE1NjkgcGFyc2Utb3B0aW9ucy5oOjMzNgorbXNnaWQgIm1vZGUiCittc2dzdHIgIm1vZG8iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3OSBidWlsdGluL2NvbW1pdC5jOjE1MzgKK21zZ2lkICJzaG93IHVudHJhY2tlZCBmaWxlcywgb3B0aW9uYWwgbW9kZXM6IGFsbCwgbm9ybWFsLCBuby4gKERlZmF1bHQ6IGFsbCkiCiBtc2dzdHIgIiIKKyJ2aXN1YWxpenphIGZpbGUgbm9uIHRyYWNjaWF0aSwgbW9kYWxpdMOgIGZhY29sdGF0aXZlOiBhbGwsIG5vcm1hbCwgbm8uICIKKyIoSW1wb3N0YXppb25lIHByZWRlZmluaXRhOiBhbGwpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwNzQKLW1zZ2lkICJQYXRocyB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgotbXNnc3RyICJJIHBhdGggY29uIC1hIG5vbiBoYW5ubyBzZW5zby4iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTI1NwotbXNnaWQgImNvdWxkbid0IGxvb2sgdXAgbmV3bHkgY3JlYXRlZCBjb21taXQiCi1tc2dzdHIgIm5vbiDDqCBzdGF0byBwb3NzaWJpbGUgdHJvdmFyZSBpbCBjb21taXQgYXBwZW5hIGNyZWF0byIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxMjU5Ci1tc2dpZCAiY291bGQgbm90IHBhcnNlIG5ld2x5IGNyZWF0ZWQgY29tbWl0IgotbXNnc3RyICJub24gw6ggc3RhdG8gcG9zc2liaWxlIGFuYWxpenphcmUgaWwgY29tbWl0IGFwcGVuYSBjcmVhdG8iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMwMAotbXNnaWQgImRldGFjaGVkIEhFQUQiCisjOiBidWlsdGluL2NvbW1pdC5jOjEzODMKK21zZ2lkICIiCisic2hvdyBpZ25vcmVkIGZpbGVzLCBvcHRpb25hbCBtb2RlczogdHJhZGl0aW9uYWwsIG1hdGNoaW5nLCBuby4gKERlZmF1bHQ6ICIKKyJ0cmFkaXRpb25hbCkiCiBtc2dzdHIgIiIKKyJ2aXN1YWxpenphIGZpbGUgaWdub3JhdGksIG1vZGFsaXTDoCBmYWNvbHRhdGl2ZTogdHJhZGl0aW9uYWwsIG1hdGNoaW5nLCBuby4gIgorIihJbXBvc3RhemlvbmUgcHJlZGVmaW5pdGE6IHRyYWRpdGlvbmFsKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzAyCi1tc2dpZCAiIChyb290LWNvbW1pdCkiCi1tc2dzdHIgIiAocm9vdC1jb21taXQpIgorIzogYnVpbHRpbi9jb21taXQuYzoxMzg1IHBhcnNlLW9wdGlvbnMuaDoxOTIKK21zZ2lkICJ3aGVuIgorbXNnc3RyICJxdWFuZG8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ0NgotbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBIRUFEIGNvbW1pdCIKLW1zZ3N0ciAibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBhbmFsaXp6YXJlIGlsIGNvbW1pdCBIRUFEIgorIzogYnVpbHRpbi9jb21taXQuYzoxMzg2Cittc2dpZCAiIgorImlnbm9yZSBjaGFuZ2VzIHRvIHN1Ym1vZHVsZXMsIG9wdGlvbmFsIHdoZW46IGFsbCwgZGlydHksIHVudHJhY2tlZC4gIgorIihEZWZhdWx0OiBhbGwpIgorbXNnc3RyICIiCisiaWdub3JhIG1vZGlmaWNoZSBhaSBzb3R0b21vZHVsaSwgb3B6aW9uZSBmYWNvbHRhdGl2YSBcInF1YW5kb1wiOiBhbGwsIGRpcnR5LCAiCisidW50cmFja2VkLiAoSW1wb3N0YXppb25lIHByZWRlZmluaXRhOiBhbGwpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODQgYnVpbHRpbi9tZXJnZS5jOjUwOQotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciByZWFkaW5nIgotbXNnc3RyICJub24gw6ggc3RhdG8gcG9zc2liaWxlIGFwcmlyZSAnJXMnIHBlciBsYSBsZXR0dXJhIgorIzogYnVpbHRpbi9jb21taXQuYzoxMzg4Cittc2dpZCAibGlzdCB1bnRyYWNrZWQgZmlsZXMgaW4gY29sdW1ucyIKK21zZ3N0ciAiZWxlbmNhIGkgZmlsZSBub24gdHJhY2NpYXRpIGluIGNvbG9ubmUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MQorIzogYnVpbHRpbi9jb21taXQuYzoxMzg5Cittc2dpZCAiZG8gbm90IGRldGVjdCByZW5hbWVzIgorbXNnc3RyICJub24gcmlsZXZhcmUgbGUgcmlkZW5vbWluYXppb25pIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzOTEKK21zZ2lkICJkZXRlY3QgcmVuYW1lcywgb3B0aW9uYWxseSBzZXQgc2ltaWxhcml0eSBpbmRleCIKK21zZ3N0ciAiIgorInJpbGV2YSBsZSByaWRlbm9taW5hemlvbmksIGltcG9zdGEgZmFjb2x0YXRpdmFtZW50ZSBsJ2luZGljZSBkaSBzaW1pbGFyaXTDoCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDExCittc2dpZCAiVW5zdXBwb3J0ZWQgY29tYmluYXRpb24gb2YgaWdub3JlZCBhbmQgdW50cmFja2VkLWZpbGVzIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorIkNvbWJpbmF6aW9uZSBkaSBhcmdvbWVudGkgc3VpIGZpbGUgaWdub3JhdGkgZSBub24gdHJhY2NpYXRpIG5vbiBzdXBwb3J0YXRhIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTQKK21zZ2lkICJzdXBwcmVzcyBzdW1tYXJ5IGFmdGVyIHN1Y2Nlc3NmdWwgY29tbWl0IgorbXNnc3RyICIiCisib21ldHRpIGRpIHZpc3VhbGl6emFyZSBpbCByaWVwaWxvZ28gZG9wbyB1biBjb21taXQgY29tcGxldGF0byBjb24gc3VjY2Vzc28iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NQorbXNnaWQgInNob3cgZGlmZiBpbiBjb21taXQgbWVzc2FnZSB0ZW1wbGF0ZSIKK21zZ3N0ciAidmlzdWFsaXp6YSBpbCBkaWZmIG5lbCBtb2RlbGxvIGRlbCBtZXNzYWdnaW8gZGkgY29tbWl0IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTcKK21zZ2lkICJDb21taXQgbWVzc2FnZSBvcHRpb25zIgorbXNnc3RyICJPcHppb25pIG1lc3NhZ2dpbyBkaSBjb21taXQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5OCBidWlsdGluL21lcmdlLmM6Mjc1IGJ1aWx0aW4vdGFnLmM6NDE0Cittc2dpZCAicmVhZCBtZXNzYWdlIGZyb20gZmlsZSIKK21zZ3N0ciAibGVnZ2kgaWwgbWVzc2FnZ2lvIGRhIHVuIGZpbGUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5OQorbXNnaWQgImF1dGhvciIKK21zZ3N0ciAiYXV0b3JlIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTkKK21zZ2lkICJvdmVycmlkZSBhdXRob3IgZm9yIGNvbW1pdCIKK21zZ3N0ciAic292cmFzY3JpdmkgbCdhdXRvcmUgcGVyIGlsIGNvbW1pdCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTAwIGJ1aWx0aW4vZ2MuYzo1MzgKK21zZ2lkICJkYXRlIgorbXNnc3RyICJkYXRhIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDAKK21zZ2lkICJvdmVycmlkZSBkYXRlIGZvciBjb21taXQiCittc2dzdHIgInNvdnJhc2NyaXZpIGxhIGRhdGEgcGVyIGlsIGNvbW1pdCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTAyIGJ1aWx0aW4vY29tbWl0LmM6MTUwMyBidWlsdGluL2NvbW1pdC5jOjE1MDQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNSBwYXJzZS1vcHRpb25zLmg6MzI4IHJlZi1maWx0ZXIuaDo5MgorbXNnaWQgImNvbW1pdCIKK21zZ3N0ciAiY29tbWl0IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDIKK21zZ2lkICJyZXVzZSBhbmQgZWRpdCBtZXNzYWdlIGZyb20gc3BlY2lmaWVkIGNvbW1pdCIKK21zZ3N0ciAicml1c2EgaWwgbWVzc2FnZ2lvIGRlbCBjb21taXQgc3BlY2lmaWNhdG8gcGVyIHBvaSBtb2RpZmljYXJsbyIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTAzCittc2dpZCAicmV1c2UgbWVzc2FnZSBmcm9tIHNwZWNpZmllZCBjb21taXQiCittc2dzdHIgInJpdXNhIGlsIG1lc3NhZ2dpbyBkZWwgY29tbWl0IHNwZWNpZmljYXRvIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDQKK21zZ2lkICJ1c2UgYXV0b3NxdWFzaCBmb3JtYXR0ZWQgbWVzc2FnZSB0byBmaXh1cCBzcGVjaWZpZWQgY29tbWl0IgorbXNnc3RyICIiCisidXNhIGlsIG1lc3NhZ2dpbyBpbiBmb3JtYXRvIGF1dG9zcXVhc2ggcGVyIGNvcnJlZ2dlcmUgaWwgY29tbWl0IHNwZWNpZmljYXRvIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDUKK21zZ2lkICJ1c2UgYXV0b3NxdWFzaCBmb3JtYXR0ZWQgbWVzc2FnZSB0byBzcXVhc2ggc3BlY2lmaWVkIGNvbW1pdCIKK21zZ3N0ciAiIgorInVzYSBpbCBtZXNzYWdnaW8gaW4gZm9ybWF0byBhdXRvc3F1YXNoIHBlciBlc2VndWlyZSBsbyBzcXVhc2ggZGVsIGNvbW1pdCAiCisic3BlY2lmaWNhdG8iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNgorbXNnaWQgInRoZSBjb21taXQgaXMgYXV0aG9yZWQgYnkgbWUgbm93ICh1c2VkIHdpdGggLUMvLWMvLS1hbWVuZCkiCittc2dzdHIgImlsIGNvbW1pdCBvcmEgaGEgbWUgY29tZSBhdXRvcmUgKG9wemlvbmUgdXNhdGEgY29uIC1DLy1jLy0tYW1lbmQpIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDcgYnVpbHRpbi9sb2cuYzoxNjM0IGJ1aWx0aW4vbWVyZ2UuYzoyOTAKKyM6IGJ1aWx0aW4vcHVsbC5jOjE0NCBidWlsdGluL3JldmVydC5jOjExMAorbXNnaWQgImFkZCBTaWduZWQtb2ZmLWJ5OiIKK21zZ3N0ciAiYWdnaXVuZ2kgU2lnbmVkLW9mZi1ieToiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwOAorbXNnaWQgInVzZSBzcGVjaWZpZWQgdGVtcGxhdGUgZmlsZSIKK21zZ3N0ciAidXNhIGlsIGZpbGUgbW9kZWxsbyBzcGVjaWZpY2F0byIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTA5Cittc2dpZCAiZm9yY2UgZWRpdCBvZiBjb21taXQiCittc2dzdHIgImZvcnphIGxhIG1vZGlmaWNhIGRlbCBjb21taXQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxMQorbXNnaWQgImluY2x1ZGUgc3RhdHVzIGluIGNvbW1pdCBtZXNzYWdlIHRlbXBsYXRlIgorbXNnc3RyICJpbmNsdWRpIGxvIHN0YXRvIG5lbCBtb2RlbGxvIGRlbCBtZXNzYWdnaW8gZGkgY29tbWl0IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTYKK21zZ2lkICJDb21taXQgY29udGVudHMgb3B0aW9ucyIKK21zZ3N0ciAiT3B6aW9uaSBjb250ZW51dG8gY29tbWl0IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTcKK21zZ2lkICJjb21taXQgYWxsIGNoYW5nZWQgZmlsZXMiCittc2dzdHIgImVzZWd1aSBpbCBjb21taXQgZGkgdHV0dGkgaSBmaWxlIG1vZGlmaWNhdGkiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxOAorbXNnaWQgImFkZCBzcGVjaWZpZWQgZmlsZXMgdG8gaW5kZXggZm9yIGNvbW1pdCIKK21zZ3N0ciAiYWdnaXVuZ2kgaSBmaWxlIHNwZWNpZmljYXRpIGFsbCdpbmRpY2UgcGVyIGlsIGNvbW1pdCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTE5Cittc2dpZCAiaW50ZXJhY3RpdmVseSBhZGQgZmlsZXMiCittc2dzdHIgImFnZ2l1bmdpIGkgZmlsZSBpbiBtb2RhbGl0w6AgaW50ZXJhdHRpdmEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMAorbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGNoYW5nZXMiCittc2dzdHIgImFnZ2l1bmdpIGxlIG1vZGlmaWNoZSBpbiBtb2RhbGl0w6AgaW50ZXJhdHRpdmEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMQorbXNnaWQgImNvbW1pdCBvbmx5IHNwZWNpZmllZCBmaWxlcyIKK21zZ3N0ciAiZXNlZ3VpIGlsIGNvbW1pdCBzb2xvIGRlaSBmaWxlIHNwZWNpZmljYXRpIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjIKK21zZ2lkICJieXBhc3MgcHJlLWNvbW1pdCBhbmQgY29tbWl0LW1zZyBob29rcyIKK21zZ3N0ciAiaWdub3JhIGdsaSBob29rIHByZS1jb21taXQgZSBjb21taXQtbXNnIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjMKK21zZ2lkICJzaG93IHdoYXQgd291bGQgYmUgY29tbWl0dGVkIgorbXNnc3RyICJ2aXN1YWxpenphIGdsaSBlbGVtZW50aSBkaSBjdWkgc2FyZWJiZSBlc2VndWl0byBpbCBjb21taXQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUzNgorbXNnaWQgImFtZW5kIHByZXZpb3VzIGNvbW1pdCIKK21zZ3N0ciAibW9kaWZpY2EgaWwgY29tbWl0IHByZWNlZGVudGUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUzNworbXNnaWQgImJ5cGFzcyBwb3N0LXJld3JpdGUgaG9vayIKK21zZ3N0ciAiaWdub3JhIGwnaG9vayBwb3N0LXJld3JpdGUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTU0NAorbXNnaWQgIm9rIHRvIHJlY29yZCBhbiBlbXB0eSBjaGFuZ2UiCittc2dzdHIgImFjY2V0dGEgZGkgcmVnaXN0cmFyZSB1bmEgbW9kaWZpY2EgdnVvdGEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTU0NgorbXNnaWQgIm9rIHRvIHJlY29yZCBhIGNoYW5nZSB3aXRoIGFuIGVtcHR5IG1lc3NhZ2UiCittc2dzdHIgImFjY2V0dGEgZGkgcmVnaXN0cmFyZSB1bmEgbW9kaWZpY2EgY29uIHVuIG1lc3NhZ2dpbyB2dW90byIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNjE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvcnJ1cHQgTUVSR0VfSEVBRCBmaWxlICglcykiCiBtc2dzdHIgIkZpbGUgTUVSR0VfSEVBRCBjb3Jyb3R0byAoJXMpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTYyNgogbXNnaWQgImNvdWxkIG5vdCByZWFkIE1FUkdFX01PREUiCi1tc2dzdHIgIm5vbiDDqCBzdGF0byBwb3NzaWJpbGUgbGVnZ2VyZSBNRVJHRV9NT0RFIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIE1FUkdFX01PREUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNworIzogYnVpbHRpbi9jb21taXQuYzoxNjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGNvbW1pdCBtZXNzYWdlOiAlcyIKLW1zZ3N0ciAibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBsZWdnZXJlIGlsIG1lc3NhZ2dpbyBkaSBjb21taXQ6ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGlsIG1lc3NhZ2dpbyBkaSBjb21taXQ6ICVzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MzEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQWJvcnRpbmcgY29tbWl0OyB5b3UgZGlkIG5vdCBlZGl0IHRoZSBtZXNzYWdlLlxuIgotbXNnc3RyICJDb21taXQgaW50ZXJyb3R0bzsgaWwgbWVzc2FnZ2lvIG5vbiDDqCBzdGF0byBtb2RpZmljYXRvLlxuIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MzYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJBYm9ydGluZyBjb21taXQgZHVlIHRvIGVtcHR5IGNvbW1pdCBtZXNzYWdlLlxuIgotbXNnc3RyICJJbnRlcnJ1emlvbmUgZGVsIGNvbW1pdCBhIGNhdXNhIGRpIHVuIG1lc3NhZ2dpbyBkaSBjb21taXQgdnVvdG8uXG4iCittc2dzdHIgIkludGVycm9tcG8gaWwgY29tbWl0IGEgY2F1c2EgZGkgdW4gbWVzc2FnZ2lvIGRpIGNvbW1pdCB2dW90by5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTUxIGJ1aWx0aW4vbWVyZ2UuYzo5MzYgYnVpbHRpbi9tZXJnZS5jOjk2MQotbXNnaWQgImZhaWxlZCB0byB3cml0ZSBjb21taXQgb2JqZWN0IgotbXNnc3RyICJzY3JpdHR1cmEgZGVsbCdvZ2dldHRvIGRpIGNvbW1pdCBub24gcml1c2NpdGEiCisjOiBidWlsdGluL2NvbW1pdC5jOjE2NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWJvcnRpbmcgY29tbWl0OyB5b3UgZGlkIG5vdCBlZGl0IHRoZSBtZXNzYWdlLlxuIgorbXNnc3RyICJJbnRlcnJvbXBvIGlsIGNvbW1pdDsgbm9uIGhhaSBtb2RpZmljYXRvIGlsIG1lc3NhZ2dpby5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTcyCi1tc2dpZCAiY2Fubm90IGxvY2sgSEVBRCByZWYiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNTc2Ci1tc2dpZCAiY2Fubm90IHVwZGF0ZSBIRUFEIHJlZiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1ODcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY5MQogbXNnaWQgIiIKLSJSZXBvc2l0b3J5IGhhcyBiZWVuIHVwZGF0ZWQsIGJ1dCB1bmFibGUgdG8gd3JpdGVcbiIKLSJuZXdfaW5kZXggZmlsZS4gQ2hlY2sgdGhhdCBkaXNrIGlzIG5vdCBmdWxsIG9yIHF1b3RhIGlzXG4iCi0ibm90IGV4Y2VlZGVkLCBhbmQgdGhlbiBcImdpdCByZXNldCBIRUFEXCIgdG8gcmVjb3Zlci4iCisicmVwb3NpdG9yeSBoYXMgYmVlbiB1cGRhdGVkLCBidXQgdW5hYmxlIHRvIHdyaXRlXG4iCisibmV3X2luZGV4IGZpbGUuIENoZWNrIHRoYXQgZGlzayBpcyBub3QgZnVsbCBhbmQgcXVvdGEgaXNcbiIKKyJub3QgZXhjZWVkZWQsIGFuZCB0aGVuIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgOi9cIiB0byByZWNvdmVyLiIKIG1zZ3N0ciAiIgotIklsIHJlcG9zaXRvcnkgw6ggc3RhdG8gYWdnaW9ybmF0bywgbWEgbm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBzY3JpdmVyZSBpbCBmaWxlXG4iCi0ibmV3X2luZGV4LiBWZXJpZmljYSBjaGUgbCd1bml0w6AgZGlzY28gbm9uIHNpYSBwaWVuYSBvIGNoZSBsYSBxdW90YSBub24gc2lhXG4iCi0ic3RhdGEgc3VwZXJhdGEsIGVkIGVzZWd1aSBcImdpdCByZXNldCBIRUFEXCIgcGVyIGlsIHJpcHJpc3Rpbm8uIgorIklsIHJlcG9zaXRvcnkgw6ggc3RhdG8gYWdnaW9ybmF0bywgbWEgbm9uIMOoIHN0YXRvXG4iCisicG9zc2liaWxlIHNjcml2ZXJlIGlsIGZpbGUgbmV3X2luZGV4LiBWZXJpZmljYSBjaGUgaWxcbiIKKyJkaXNjbyBub24gc2lhIHBpZW5vIGUgY2hlIGxhIHF1b3RhIG5vbiBzaWEgc3RhdGFcbiIKKyJzdXBlcmF0YSwgcXVpbmRpIGVzZWd1aSBcImdpdCByZXN0b3JlIC0tc3RhZ2VkIDovXCIgcGVyXG4iCisicHJvY2VkZXJlIGFsIHJpcHJpc3Rpbm8uIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MjM0CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjExIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTcKK21zZ2lkICIiCisiZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tc2hhbGxvd10gWy0tW25vLV1wcm9ncmVzc10iCittc2dzdHIgIiIKKyJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxkaXJlY3Rvcnkgb2dnZXR0aT5dIFstLXNoYWxsb3ddIFstLSIKKyJbbm8tXXByb2dyZXNzXSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIyCittc2dpZCAiIgorImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tYXBwZW5kfC0tc3BsaXRdIFstLSIKKyJyZWFjaGFibGV8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIFstLVtuby1dcHJvZ3Jlc3NdIDxzcGxpdCBvcHRpb25zPiIKK21zZ3N0ciAiIgorImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8ZGlyZWN0b3J5IG9nZ2V0dGk+XSBbLS1hcHBlbmR8LS1zcGxpdF0gIgorIlstLXJlYWNoYWJsZXwtLXN0ZGluLXBhY2tzfC0tc3RkaW4tY29tbWl0c10gWy0tW25vLV1wcm9ncmVzc10gPG9wemlvbmkgc3BsaXQ+IgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5kIG9iamVjdCBkaXJlY3RvcnkgbWF0Y2hpbmcgJXMiCittc2dzdHIgImltcG9zc2liaWxlIHRyb3ZhcmUgbGEgZGlyZWN0b3J5IG9nZ2V0dGkgY29ycmlzcG9uZGVudGUgYSAlcyIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo2OCBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyNQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMTAgYnVpbHRpbi9mZXRjaC5jOjE3OSBidWlsdGluL2xvZy5jOjE2NTcKK21zZ2lkICJkaXIiCittc2dzdHIgImRpcmVjdG9yeSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo2OSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyNgorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMTEKK21zZ2lkICJUaGUgb2JqZWN0IGRpcmVjdG9yeSB0byBzdG9yZSB0aGUgZ3JhcGgiCittc2dzdHIgIkxhIGRpcmVjdG9yeSBvZ2dldHRpIGluIGN1aSBtZW1vcml6emFyZSBpbCBncmFmbyIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3MQorbXNnaWQgImlmIHRoZSBjb21taXQtZ3JhcGggaXMgc3BsaXQsIG9ubHkgdmVyaWZ5IHRoZSB0aXAgZmlsZSIKK21zZ3N0ciAic2UgaWwgZ3JhZm8gZGVpIGNvbW1pdCDDqCBkaXZpc28sIHZlcmlmaWNhIHNvbG8gbCd1bHRpbW8gZmlsZSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo5NCB0L2hlbHBlci90ZXN0LXJlYWQtZ3JhcGguYzoyMworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgb3BlbiBjb21taXQtZ3JhcGggJyVzJyIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgYXByaXJlIGlsIGdyYWZvIGRlaSBjb21taXQgJyVzJyIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjgKK21zZ2lkICJzdGFydCB3YWxrIGF0IGFsbCByZWZzIgorbXNnc3RyICJpbml6aWEgbGEgdmlzaXRhIGRhIHR1dHRpIGkgcmlmZXJpbWVudGkiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMwCittc2dpZCAic2NhbiBwYWNrLWluZGV4ZXMgbGlzdGVkIGJ5IHN0ZGluIGZvciBjb21taXRzIgorbXNnc3RyICIiCisiZXNhbWluYSBpIHBhY2staW5kZXggZWxlbmNhdGkgc3VsbG8gc3RhbmRhcmQgaW5wdXQgYWxsYSByaWNlcmNhIGRpIGNvbW1pdCIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzIKK21zZ2lkICJzdGFydCB3YWxrIGF0IGNvbW1pdHMgbGlzdGVkIGJ5IHN0ZGluIgorbXNnc3RyICJpbml6aWEgbGEgdmlzaXRhIGFpIGNvbW1pdCBlbGVuY2F0aSBzdWxsbyBzdGFuZGFyZCBpbnB1dCIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzQKK21zZ2lkICJpbmNsdWRlIGFsbCBjb21taXRzIGFscmVhZHkgaW4gdGhlIGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICJpbmNsdWRpIHR1dHRpIGkgY29tbWl0IGdpw6AgcHJlc2VudGkgbmVsIGZpbGUgY29tbWl0LWdyYXBoIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNworbXNnaWQgImFsbG93IHdyaXRpbmcgYW4gaW5jcmVtZW50YWwgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgImNvbnNlbnRpIGxhIHNjcml0dHVyYSBkaSB1biBmaWxlIGdyYWZvIGRlaSBjb21taXQgaW5jcmVtZW50YWxlIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzOSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0MworbXNnaWQgIm1heGltdW0gbnVtYmVyIG9mIGNvbW1pdHMgaW4gYSBub24tYmFzZSBzcGxpdCBjb21taXQtZ3JhcGgiCittc2dzdHIgIm51bWVybyBtYXNzaW1vIGRpIGNvbW1pdCBpbiB1biBncmFmbyBkZWkgY29tbWl0IGRpdmlzbyBub24gZGkgYmFzZSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDEKK21zZ2lkICJtYXhpbXVtIHJhdGlvIGJldHdlZW4gdHdvIGxldmVscyBvZiBhIHNwbGl0IGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAicmFwcG9ydG8gbWFzc2ltbyBmcmEgZHVlIGxpdmVsbGkgZGkgdW4gZ3JhZm8gZGVpIGNvbW1pdCBkaXZpc28iCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTU5Cittc2dpZCAidXNlIGF0IG1vc3Qgb25lIG9mIC0tcmVhY2hhYmxlLCAtLXN0ZGluLWNvbW1pdHMsIG9yIC0tc3RkaW4tcGFja3MiCittc2dzdHIgInVzYSBhbCBwacO5IHVuJ29wemlvbmUgZnJhIC0tcmVhY2hhYmxlLCAtLXN0ZGluLWNvbW1pdHMgbyAtLXN0ZGluLXBhY2tzIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjExCittc2dpZCAiZ2l0IGNvbmZpZyBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IGNvbmZpZyBbPG9wemlvbmk+XSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMDQgYnVpbHRpbi9lbnYtLWhlbHBlci5jOjIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCAtLXR5cGUgYXJndW1lbnQsICVzIgorbXNnc3RyICJhcmdvbWVudG8gLS10eXBlIG5vbiByaWNvbm9zY2l1dG86ICVzIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjExNgorbXNnaWQgIm9ubHkgb25lIHR5cGUgYXQgYSB0aW1lIgorbXNnc3RyICJzb2xvIHVuIHRpcG8gcGVyIHZvbHRhIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEyNQorbXNnaWQgIkNvbmZpZyBmaWxlIGxvY2F0aW9uIgorbXNnc3RyICJQZXJjb3JzbyBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEyNgorbXNnaWQgInVzZSBnbG9iYWwgY29uZmlnIGZpbGUiCittc2dzdHIgInVzYSBpbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIGdsb2JhbGUiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI3Cittc2dpZCAidXNlIHN5c3RlbSBjb25maWcgZmlsZSIKK21zZ3N0ciAidXNhIGlsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgZGkgc2lzdGVtYSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMjgKK21zZ2lkICJ1c2UgcmVwb3NpdG9yeSBjb25maWcgZmlsZSIKK21zZ3N0ciAidXNhIGlsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgZGVsIHJlcG9zaXRvcnkiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI5Cittc2dpZCAidXNlIHBlci13b3JrdHJlZSBjb25maWcgZmlsZSIKK21zZ3N0ciAidXNhIGlsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgcGVyIGFsYmVybyBkaSBsYXZvcm8iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMwCittc2dpZCAidXNlIGdpdmVuIGNvbmZpZyBmaWxlIgorbXNnc3RyICJ1c2EgaWwgZmlsZSBkaSBjb25maWd1cmF6aW9uZSBzcGVjaWZpY2F0byIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMzEKK21zZ2lkICJibG9iLWlkIgorbXNnc3RyICJJRCBibG9iIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMQorbXNnaWQgInJlYWQgY29uZmlnIGZyb20gZ2l2ZW4gYmxvYiBvYmplY3QiCittc2dzdHIgImxlZ2dpIGxhIGNvbmZpZ3VyYXppb25lIGRhbGwnb2dnZXR0byBibG9iIHNwZWNpZmljYXRvIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMgorbXNnaWQgIkFjdGlvbiIKK21zZ3N0ciAiQXppb25lIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMworbXNnaWQgImdldCB2YWx1ZTogbmFtZSBbdmFsdWUtcmVnZXhdIgorbXNnc3RyICJvdHRpZW5pIHZhbG9yZTogbm9tZSBbZXNwcmVzc2lvbmUtcmVnb2xhcmUtdmFsb3JlXSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMzQKK21zZ2lkICJnZXQgYWxsIHZhbHVlczoga2V5IFt2YWx1ZS1yZWdleF0iCittc2dzdHIgIm90dGllbmkgdHV0dGkgaSB2YWxvcmk6IGNoaWF2ZSBbZXNwcmVzc2lvbmUtcmVnb2xhcmUtdmFsb3JlXSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMzUKK21zZ2lkICJnZXQgdmFsdWVzIGZvciByZWdleHA6IG5hbWUtcmVnZXggW3ZhbHVlLXJlZ2V4XSIKK21zZ3N0ciAiIgorIm90dGllbmkgaSB2YWxvcmkgaW4gYmFzZSBhIHVuJ2VzcHJlc3Npb25lIHJlZ29sYXJlOiBlc3ByZXNzaW9uZS1yZWdvbGFyZS0iCisibm9tZSBbZXNwcmVzc2lvbmUtcmVnb2xhcmUtdmFsb3JlXSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMzYKK21zZ2lkICJnZXQgdmFsdWUgc3BlY2lmaWMgZm9yIHRoZSBVUkw6IHNlY3Rpb25bLnZhcl0gVVJMIgorbXNnc3RyICJvdHRpZW5pIGlsIHZhbG9yZSBzcGVjaWZpY28gcGVyIGwnVVJMOiBzZXppb25lWy52YXJpYWJpbGVdIFVSTCIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMzcKK21zZ2lkICJyZXBsYWNlIGFsbCBtYXRjaGluZyB2YXJpYWJsZXM6IG5hbWUgdmFsdWUgW3ZhbHVlX3JlZ2V4XSIKK21zZ3N0ciAiIgorInNvc3RpdHVpc2NpIHR1dHRlIGxlIHZhcmlhYmlsaSBjb3JyaXNwb25kZW50aTogbm9tZS12YWxvcmUgW2VzcHJlc3Npb25lLSIKKyJyZWdvbGFyZS12YWxvcmVdIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzOAorbXNnaWQgImFkZCBhIG5ldyB2YXJpYWJsZTogbmFtZSB2YWx1ZSIKK21zZ3N0ciAiYWdnaXVuZ2kgdW5hIG51b3ZhIHZhcmlhYmlsZTogbm9tZSB2YWxvcmUiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM5Cittc2dpZCAicmVtb3ZlIGEgdmFyaWFibGU6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKK21zZ3N0ciAicmltdW92aSB1bmEgdmFyaWFiaWxlOiBub21lIFtlc3ByZXNzaW9uZS1yZWdvbGFyZS12YWxvcmVdIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0MAorbXNnaWQgInJlbW92ZSBhbGwgbWF0Y2hlczogbmFtZSBbdmFsdWUtcmVnZXhdIgorbXNnc3RyICJyaW11b3ZpIHR1dHRlIGxlIGNvcnJpc3BvbmRlbnplOiBub21lIFtlc3ByZXNzaW9uZS1yZWdvbGFyZS12YWxvcmVdIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0MQorbXNnaWQgInJlbmFtZSBzZWN0aW9uOiBvbGQtbmFtZSBuZXctbmFtZSIKK21zZ3N0ciAicmlub21pbmEgc2V6aW9uZTogdmVjY2hpby1ub21lIG51b3ZvLW5vbWUiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQyCittc2dpZCAicmVtb3ZlIGEgc2VjdGlvbjogbmFtZSIKK21zZ3N0ciAicmltdW92aSB1bmEgc2V6aW9uZTogbm9tZSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNDMKK21zZ2lkICJsaXN0IGFsbCIKK21zZ3N0ciAiZWxlbmNhIHR1dHRpIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0NAorbXNnaWQgIm9wZW4gYW4gZWRpdG9yIgorbXNnc3RyICJhcHJpIHVuIGVkaXRvciIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNDUKK21zZ2lkICJmaW5kIHRoZSBjb2xvciBjb25maWd1cmVkOiBzbG90IFtkZWZhdWx0XSIKK21zZ3N0ciAidHJvdmEgaWwgY29sb3JlIGNvbmZpZ3VyYXRvOiBzbG90IFt2YWxvcmUtcHJlZGVmaW5pdG9dIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0NgorbXNnaWQgImZpbmQgdGhlIGNvbG9yIHNldHRpbmc6IHNsb3QgW3N0ZG91dC1pcy10dHldIgorbXNnc3RyICJ0cm92YSBsJ2ltcG9zdGF6aW9uZSBjb2xvcmU6IHNsb3QgW3N0YW5kYXJkLW91dHB1dC3DqC11bmEtdHR5XSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNDcKK21zZ2lkICJUeXBlIgorbXNnc3RyICJUaXBvIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0OCBidWlsdGluL2Vudi0taGVscGVyLmM6MzgKK21zZ2lkICJ2YWx1ZSBpcyBnaXZlbiB0aGlzIHR5cGUiCittc2dzdHIgImFsIHZhbG9yZSDDqCBhc3NlZ25hdG8gcXVlc3RvIHRpcG8iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ5Cittc2dpZCAidmFsdWUgaXMgXCJ0cnVlXCIgb3IgXCJmYWxzZVwiIgorbXNnc3RyICJpbCB2YWxvcmUgw6ggXCJ0cnVlXCIgbyBcImZhbHNlXCIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUwCittc2dpZCAidmFsdWUgaXMgZGVjaW1hbCBudW1iZXIiCittc2dzdHIgImlsIHZhbG9yZSDDqCB1biBudW1lcm8gZGVjaW1hbGUiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUxCittc2dpZCAidmFsdWUgaXMgLS1ib29sIG9yIC0taW50IgorbXNnc3RyICJpbCB2YWxvcmUgw6ggLS1ib29sIG8gLS1pbnQiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUyCittc2dpZCAidmFsdWUgaXMgYSBwYXRoIChmaWxlIG9yIGRpcmVjdG9yeSBuYW1lKSIKK21zZ3N0ciAiaWwgdmFsb3JlIMOoIHVuIHBlcmNvcnNvIChub21lIGZpbGUgbyBkaXJlY3RvcnkpIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MworbXNnaWQgInZhbHVlIGlzIGFuIGV4cGlyeSBkYXRlIgorbXNnc3RyICJpbCB2YWxvcmUgw6ggdW5hIGRhdGEgZGkgc2NhZGVuemEiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU0Cittc2dpZCAiT3RoZXIiCittc2dzdHIgIkFsdHJvIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1NQorbXNnaWQgInRlcm1pbmF0ZSB2YWx1ZXMgd2l0aCBOVUwgYnl0ZSIKK21zZ3N0ciAidGVybWluYSBpIHZhbG9yaSBjb24gdW4gYnl0ZSBOVUwiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU2Cittc2dpZCAic2hvdyB2YXJpYWJsZSBuYW1lcyBvbmx5IgorbXNnc3RyICJ2aXN1YWxpenphIHNvbG8gaSBub21pIGRlbGxlIHZhcmlhYmlsaSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNTcKK21zZ2lkICJyZXNwZWN0IGluY2x1ZGUgZGlyZWN0aXZlcyBvbiBsb29rdXAiCittc2dzdHIgIiIKKyJyaXNwZXR0YSBsZSBkaXJlY3RvcnkgZGkgaW5jbHVzaW9uZSBkdXJhbnRlIGlsIHJlY3VwZXJvIGRlbGxlIHZhcmlhYmlsaSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNTgKK21zZ2lkICJzaG93IG9yaWdpbiBvZiBjb25maWcgKGZpbGUsIHN0YW5kYXJkIGlucHV0LCBibG9iLCBjb21tYW5kIGxpbmUpIgorbXNnc3RyICIiCisidmlzdWFsaXp6YSBsJ29yaWdpbmUgZGVsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgKGZpbGUsIHN0YW5kYXJkIGlucHV0LCBibG9iLCAiCisicmlnYSBkaSBjb21hbmRvKSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNTkKK21zZ2lkICJzaG93IHNjb3BlIG9mIGNvbmZpZyAod29ya3RyZWUsIGxvY2FsLCBnbG9iYWwsIHN5c3RlbSwgY29tbWFuZCkiCittc2dzdHIgIiIKKyJ2aXN1YWxpenphIGwnYW1iaXRvIGRlbGxhIGNvbmZpZ3VyYXppb25lIChhbGJlcm8gZGkgbGF2b3JvLCBsb2NhbGUsIGdsb2JhbGUsICIKKyJzaXN0ZW1hLCBjb21hbmRvKSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNjAgYnVpbHRpbi9lbnYtLWhlbHBlci5jOjQwCittc2dpZCAidmFsdWUiCittc2dzdHIgInZhbG9yZSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNjAKK21zZ2lkICJ3aXRoIC0tZ2V0LCB1c2UgZGVmYXVsdCB2YWx1ZSB3aGVuIG1pc3NpbmcgZW50cnkiCittc2dzdHIgImNvbiAtLWdldCwgdXNhIGlsIHZhbG9yZSBwcmVkZWZpbml0byBzZSBsYSB2b2NlIMOoIG1hbmNhbnRlIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgJWQiCittc2dzdHIgIm51bWVybyBkaSBhcmdvbWVudGkgZXJyYXRvLCBkb3ZyZWJiZXJvIGVzc2VyZSAlZCIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAid3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cywgc2hvdWxkIGJlIGZyb20gJWQgdG8gJWQiCittc2dzdHIgIm51bWVybyBkaSBhcmdvbWVudGkgZXJyYXRvLCBkb3ZyZWJiZXJvIGVzc2VyZSBkYSAlZCBhICVkIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGtleSBwYXR0ZXJuOiAlcyIKK21zZ3N0ciAicGF0dGVybiBjaGlhdmUgbm9uIHZhbGlkbzogJXMiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmb3JtYXQgZGVmYXVsdCBjb25maWcgdmFsdWU6ICVzIgorbXNnc3RyICJmb3JtYXR0YXppb25lIGRlbCB2YWxvcmUgY29uZmlndXJhemlvbmUgcHJlZGVmaW5pdG8gbm9uIHJpdXNjaXRhOiAlcyIKKworIzogYnVpbHRpbi9jb25maWcuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHBhcnNlIGNvbG9yICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgaWwgY29sb3JlICclcyciCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDU5Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGRlZmF1bHQgY29sb3IgdmFsdWUiCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgaWwgdmFsb3JlIGNvbG9yZSBwcmVkZWZpbml0byIKKworIzogYnVpbHRpbi9jb25maWcuYzo1MTIgYnVpbHRpbi9jb25maWcuYzo3NjgKK21zZ2lkICJub3QgaW4gYSBnaXQgZGlyZWN0b3J5IgorbXNnc3RyICJub24gc2kgw6ggaW4gdW5hIGRpcmVjdG9yeSBnaXQiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTE1Cittc2dpZCAid3JpdGluZyB0byBzdGRpbiBpcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICJsYSBzY3JpdHR1cmEgc3Ugc3RhbmRhcmQgaW5wdXQgbm9uIMOoIHN1cHBvcnRhdGEiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTE4Cittc2dpZCAid3JpdGluZyBjb25maWcgYmxvYnMgaXMgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAibGEgc2NyaXR0dXJhIGRpIGJsb2IgZGkgY29uZmlndXJhemlvbmUgbm9uIMOoIHN1cHBvcnRhdGEiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIjIFRoaXMgaXMgR2l0J3MgcGVyLXVzZXIgY29uZmlndXJhdGlvbiBmaWxlLlxuIgorIlt1c2VyXVxuIgorIiMgUGxlYXNlIGFkYXB0IGFuZCB1bmNvbW1lbnQgdGhlIGZvbGxvd2luZyBsaW5lczpcbiIKKyIjXHRuYW1lID0gJXNcbiIKKyIjXHRlbWFpbCA9ICVzXG4iCittc2dzdHIgIiIKKyIjIFF1ZXN0byDDqCBpbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIHV0ZW50ZSBkaSBHaXQuXG4iCisiW3VzZXJdXG4iCisiIyBBZGF0dGEgZSBkZWNvbW1lbnRhIGxlIHNlZ3VlbnRpIHJpZ2hlOlxuIgorIiNcdG5hbWUgPSAlc1xuIgorIiNcdGVtYWlsID0gJXNcbiIKKworIzogYnVpbHRpbi9jb25maWcuYzo2MjcKK21zZ2lkICJvbmx5IG9uZSBjb25maWcgZmlsZSBhdCBhIHRpbWUiCittc2dzdHIgInNvbG8gdW4gZmlsZSBkaSBjb25maWd1cmF6aW9uZSBwZXIgdm9sdGEiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjMyCittc2dpZCAiLS1sb2NhbCBjYW4gb25seSBiZSB1c2VkIGluc2lkZSBhIGdpdCByZXBvc2l0b3J5IgorbXNnc3RyICItLWxvY2FsIHB1w7IgZXNzZXJlIHVzYXRvIHNvbG8gaW4gdW4gcmVwb3NpdG9yeSBHaXQiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjM1Cittc2dpZCAiLS1ibG9iIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCittc2dzdHIgIi0tYmxvYiBwdcOyIGVzc2VyZSB1c2F0byBzb2xvIGluIHVuIHJlcG9zaXRvcnkgR2l0IgorCisjOiBidWlsdGluL2NvbmZpZy5jOjY1NQorbXNnaWQgIiRIT01FIG5vdCBzZXQiCittc2dzdHIgIiRIT01FIG5vbiBpbXBvc3RhdGEiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6Njc5Cittc2dpZCAiIgorIi0td29ya3RyZWUgY2Fubm90IGJlIHVzZWQgd2l0aCBtdWx0aXBsZSB3b3JraW5nIHRyZWVzIHVubGVzcyB0aGUgY29uZmlnXG4iCisiZXh0ZW5zaW9uIHdvcmt0cmVlQ29uZmlnIGlzIGVuYWJsZWQuIFBsZWFzZSByZWFkIFwiQ09ORklHVVJBVElPTiBGSUxFXCJcbiIKKyJzZWN0aW9uIGluIFwiZ2l0IGhlbHAgd29ya3RyZWVcIiBmb3IgZGV0YWlscyIKK21zZ3N0ciAiIgorIi0td29ya3RyZWUgbm9uIHB1w7IgZXNzZXJlIHVzYXRvIGNvbiBhbGJlcmkgZGkgbGF2b3JvIG11bHRpcGxpIGEgbWVub1xuIgorImNoZSBsJ2VzdGVuc2lvbmUgZGkgY29uZmlndXJhemlvbmUgd29ya3RyZWVDb25maWcgbm9uIHNpYSBhYmlsaXRhdGEuXG4iCisiTGVnZ2kgbGEgc2V6aW9uZSBcIkZJTEUgREkgQ09ORklHVVJBWklPTkVcIiBpbiBcImdpdCBoZWxwIHdvcmt0cmVlXCIgcGVyXG4iCisiaSBkZXR0YWdsaSIKKworIzogYnVpbHRpbi9jb25maWcuYzo3MTQKK21zZ2lkICItLWdldC1jb2xvciBhbmQgdmFyaWFibGUgdHlwZSBhcmUgaW5jb2hlcmVudCIKK21zZ3N0ciAiLS1nZXQtY29sb3IgZSBpbCB0aXBvIGRlbGxhIHZhcmlhYmlsZSBub24gc29ubyBjb2VyZW50aSIKKworIzogYnVpbHRpbi9jb25maWcuYzo3MTkKK21zZ2lkICJvbmx5IG9uZSBhY3Rpb24gYXQgYSB0aW1lIgorbXNnc3RyICJzb2xvIHVuJ2F6aW9uZSBwZXIgdm9sdGEiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzMyCittc2dpZCAiLS1uYW1lLW9ubHkgaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tbGlzdCBvciAtLWdldC1yZWdleHAiCittc2dzdHIgIi0tbmFtZS1vbmx5IMOoIGFwcGxpY2FiaWxlIHNvbG8gYSAtLWxpc3QgbyAtLWdldC1yZWdleHAiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzM4Cittc2dpZCAiIgorIi0tc2hvdy1vcmlnaW4gaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCwgYW5kIC0tIgorImxpc3QiCittc2dzdHIgIiIKKyItLXNob3ctb3JpZ2luIMOoIGFwcGxpY2FiaWxlIHNvbG8gYSAtLWdldCwgLS1nZXQtYWxsLCAtLWdldC1yZWdleHAgZSAtLWxpc3QiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzQ0Cittc2dpZCAiLS1kZWZhdWx0IGlzIG9ubHkgYXBwbGljYWJsZSB0byAtLWdldCIKK21zZ3N0ciAiLS1kZWZhdWx0IMOoIGFwcGxpY2FiaWxlIHNvbG8gYSAtLWdldCIKKworIzogYnVpbHRpbi9jb25maWcuYzo3NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgY29uZmlnIGZpbGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBpbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lICclcyciCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzYwCittc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBjb25maWcgZmlsZShzKSIKK21zZ3N0ciAiZXJyb3JlIGR1cmFudGUgbCdlbGFib3JhemlvbmUgZGVsL2RlaSBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjc3MAorbXNnaWQgImVkaXRpbmcgc3RkaW4gaXMgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAibGEgbW9kaWZpY2EgZGVsbG8gc3RhbmRhcmQgaW5wdXQgbm9uIMOoIHN1cHBvcnRhdGEiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzcyCittc2dpZCAiZWRpdGluZyBibG9icyBpcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICJsYSBtb2RpZmljYSBkZWkgYmxvYiBub24gw6ggc3VwcG9ydGF0YSIKKworIzogYnVpbHRpbi9jb25maWcuYzo3ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBjb25maWd1cmF0aW9uIGZpbGUgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSBpbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lICVzIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjc5OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY2Fubm90IG92ZXJ3cml0ZSBtdWx0aXBsZSB2YWx1ZXMgd2l0aCBhIHNpbmdsZSB2YWx1ZVxuIgorIiAgICAgICBVc2UgYSByZWdleHAsIC0tYWRkIG9yIC0tcmVwbGFjZS1hbGwgdG8gY2hhbmdlICVzLiIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIHNvdnJhc2NyaXZlcmUgdmFsb3JpIG11bHRpcGxpIGNvbiB1biBzaW5nb2xvIHZhbG9yZVxuIgorIiAgICAgICBVc2EgdW4nZXNwcmVzc2lvbmUgcmVnb2xhcmUsIC0tYWRkIG8gLS1yZXBsYWNlLWFsbCBwZXIgbW9kaWZpY2FyZSAlcy4iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6ODczIGJ1aWx0aW4vY29uZmlnLmM6ODg0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggc2VjdGlvbjogJXMiCittc2dzdHIgInNlemlvbmUgJXMgbm9uIGVzaXN0ZW50ZSIKKworIzogYnVpbHRpbi9jb3VudC1vYmplY3RzLmM6OTAKK21zZ2lkICJnaXQgY291bnQtb2JqZWN0cyBbLXZdIFstSCB8IC0taHVtYW4tcmVhZGFibGVdIgorbXNnc3RyICJnaXQgY291bnQtb2JqZWN0cyBbLXZdIFstSCB8IC0taHVtYW4tcmVhZGFibGVdIgorCisjOiBidWlsdGluL2NvdW50LW9iamVjdHMuYzoxMDAKK21zZ2lkICJwcmludCBzaXplcyBpbiBodW1hbiByZWFkYWJsZSBmb3JtYXQiCittc2dzdHIgInN0YW1wYSBsZSBkaW1lbnNpb25pIGluIHVuIGZvcm1hdG8gbGVnZ2liaWxlIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MjYKK21zZ2lkICJnaXQgZGVzY3JpYmUgWzxvcHRpb25zPl0gWzxjb21taXQtaXNoPi4uLl0iCittc2dzdHIgImdpdCBkZXNjcmliZSBbPG9wemlvbmk+XSBbPGVzcHJlc3Npb25lIGNvbW1pdD4uLi5dIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MjcKK21zZ2lkICJnaXQgZGVzY3JpYmUgWzxvcHRpb25zPl0gLS1kaXJ0eSIKK21zZ3N0ciAiZ2l0IGRlc2NyaWJlIFs8b3B6aW9uaT5dIC0tZGlydHkiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MgorbXNnaWQgImhlYWQiCittc2dzdHIgImhlYWQiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MgorbXNnaWQgImxpZ2h0d2VpZ2h0IgorbXNnc3RyICJsZWdnZXJvIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjIKK21zZ2lkICJhbm5vdGF0ZWQiCittc2dzdHIgImFubm90YXRvIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc1CiAjLCBjLWZvcm1hdAogbXNnaWQgImFubm90YXRlZCB0YWcgJXMgbm90IGF2YWlsYWJsZSIKLW1zZ3N0ciAiIgorbXNnc3RyICJpbCB0YWcgYW5ub3RhdG8gJXMgbm9uIMOoIGRpc3BvbmliaWxlIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MjM4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImFubm90YXRlZCB0YWcgJXMgaGFzIG5vIGVtYmVkZGVkIG5hbWUiCi1tc2dzdHIgIiIKK21zZ3N0ciAiaWwgdGFnIGFubm90YXRvICVzIG5vbiBoYSB1biBub21lIGluY29ycG9yYXRvIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MjQwCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIGlzIHJlYWxseSAnJXMnIGhlcmUiCi1tc2dzdHIgImlsIHRhZyAnJXMnIMOoIGRhdnZlcm8gJyVzJyBxdWkiCittc2dzdHIgImlsIHRhZyAnJXMnIGluIHJlYWx0w6AgcXVpIMOoICclcyciCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNjcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiTm90IGEgdmFsaWQgb2JqZWN0IG5hbWUgJXMiCi1tc2dzdHIgIk5vbiDDqCBpbCBub21lIGRpIHVuIG9nZ2V0dG8gdmFsaWRvICVzIgotCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MjcwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkICclcycgb2JqZWN0IgotbXNnc3RyICIlcyBub24gw6ggdW4gb2dnZXR0byAnJXMnIHZhbGlkbyIKLQotIzogYnVpbHRpbi9kZXNjcmliZS5jOjI4NworIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJubyB0YWcgZXhhY3RseSBtYXRjaGVzICclcyciCiBtc2dzdHIgIm5lc3N1biB0YWcgY29ycmlzcG9uZGUgZXNhdHRhbWVudGUgYSAnJXMnIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjg5CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI3CiAjLCBjLWZvcm1hdAotbXNnaWQgInNlYXJjaGluZyB0byBkZXNjcmliZSAlc1xuIgorbXNnaWQgIk5vIGV4YWN0IG1hdGNoIG9uIHJlZnMgb3IgdGFncywgc2VhcmNoaW5nIHRvIGRlc2NyaWJlXG4iCiBtc2dzdHIgIiIKKyJOZXNzdW5hIGNvcnJpc3BvbmRlbnphIGVzYXR0YSBzdWkgcmlmZXJpbWVudGkgbyBzdWkgdGFnLCBzdG8gZXNlZ3VlbmRvIHVuYSAiCisicmljZXJjYSBwZXIgZGVzY3JpdmVyZSBpbCBjb21taXRcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyOQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjM5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmaW5pc2hlZCBzZWFyY2ggYXQgJXNcbiIKLW1zZ3N0ciAiIgorbXNnc3RyICJyaWNlcmNhIHRlcm1pbmF0YSBpbiAlc1xuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MzUzCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyBhbm5vdGF0ZWQgdGFncyBjYW4gZGVzY3JpYmUgJyVzJy5cbiIKICJIb3dldmVyLCB0aGVyZSB3ZXJlIHVuYW5ub3RhdGVkIHRhZ3M6IHRyeSAtLXRhZ3MuIgogbXNnc3RyICIiCisiTmVzc3VuIHRhZyBhbm5vdGF0byBwdcOyIGRlc2NyaXZlcmUgJyVzJy5cbiIKKyJDacOyIG5vbm9zdGFudGUsIGMnZXJhbm8gZGVpIHRhZyBub24gYW5ub3RhdGk6IHByb3ZhIGNvbiAtLXRhZ3MuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MzU3CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyB0YWdzIGNhbiBkZXNjcmliZSAnJXMnLlxuIgogIlRyeSAtLWFsd2F5cywgb3IgY3JlYXRlIHNvbWUgdGFncy4iCiBtc2dzdHIgIiIKICJOZXNzdW4gdGFnIHB1w7IgZGVzY3JpdmVyZSAnJXMnLlxuIgotIlByb3ZhIGNvbiAtLWFsd2F5cywgbyBjcmVhIGRlaSB0YWcuIgorIlByb3ZhIGNvbiAtLWFsd2F5cyBvIGNyZWEgZGVpIHRhZy4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozNzgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJhdmVyc2VkICVsdSBjb21taXRzXG4iCi1tc2dzdHIgIiIKK21zZ3N0ciAiaG8gYXR0cmF2ZXJzYXRvICVsdSBjb21taXRcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjM4MQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQ1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibW9yZSB0aGFuICVpIHRhZ3MgZm91bmQ7IGxpc3RlZCAlaSBtb3N0IHJlY2VudFxuIgogImdhdmUgdXAgc2VhcmNoIGF0ICVzXG4iCiBtc2dzdHIgIiIKKyJ0cm92YXRpIHBpw7kgZGkgJWkgdGFnOyBobyBlbGVuY2F0byBpICVpIHBpw7kgcmVjZW50aVxuIgorImhvIHRlcm1pbmF0byBsYSByaWNlcmNhIGluICVzXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MzYKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVzY3JpYmUgJXNcbiIKK21zZ3N0ciAiZGVzY3JpdmkgJXNcbiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyOQorIywgYy1mb3JtYXQKK21zZ2lkICJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIKK21zZ3N0ciAiJXMgbm9uIMOoIHVuIG5vbWUgb2dnZXR0byB2YWxpZG8iCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbmVpdGhlciBhIGNvbW1pdCBub3IgYmxvYiIKK21zZ3N0ciAiJXMgbm9uIMOoIG7DqSB1biBjb21taXQgbsOpIHVuIGJsb2IiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTEKK21zZ2lkICJmaW5kIHRoZSB0YWcgdGhhdCBjb21lcyBhZnRlciB0aGUgY29tbWl0IgorbXNnc3RyICJ0cm92YSBpbCB0YWcgc3VjY2Vzc2l2byBhbCBjb21taXQiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTIKK21zZ2lkICJkZWJ1ZyBzZWFyY2ggc3RyYXRlZ3kgb24gc3RkZXJyIgorbXNnc3RyICJlc2VndWkgaWwgZGVidWcgZGVsbGEgc3RyYXRlZ2lhIGRpIHJpY2VyY2Egc3VsbG8gc3RhbmRhcmQgZXJyb3IiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTMKK21zZ2lkICJ1c2UgYW55IHJlZiIKK21zZ3N0ciAidXNhIHF1YWx1bnF1ZSByaWZlcmltZW50byIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NAorbXNnaWQgInVzZSBhbnkgdGFnLCBldmVuIHVuYW5ub3RhdGVkIgorbXNnc3RyICJ1c2EgcXVhbHVucXVlIHRhZywgYW5jaGUgcXVlbGxpIG5vbiBhbm5vdGF0aSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NQorbXNnaWQgImFsd2F5cyB1c2UgbG9uZyBmb3JtYXQiCittc2dzdHIgInVzYSBzZW1wcmUgaWwgZm9ybWF0byBsdW5nbyIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NgorbXNnaWQgIm9ubHkgZm9sbG93IGZpcnN0IHBhcmVudCIKK21zZ3N0ciAic2VndWkgc29sbyBpbCBwcmltbyBnZW5pdG9yZSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1OQorbXNnaWQgIm9ubHkgb3V0cHV0IGV4YWN0IG1hdGNoZXMiCittc2dzdHIgInZpc3VhbGl6emEgc29sbyBsZSBjb3JyaXNwb25kZW56ZSBlc2F0dGUiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjEKK21zZ2lkICJjb25zaWRlciA8bj4gbW9zdCByZWNlbnQgdGFncyAoZGVmYXVsdDogMTApIgorbXNnc3RyICJjb25zaWRlcmEgZ2xpIDxuPiB0YWcgcGnDuSByZWNlbnRpIChpbXBvc3RhemlvbmUgcHJlZGVmaW5pdGE6IDEwKSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2MworbXNnaWQgIm9ubHkgY29uc2lkZXIgdGFncyBtYXRjaGluZyA8cGF0dGVybj4iCittc2dzdHIgImNvbnNpZGVyYSBzb2xvIGkgdGFnIGNvcnJpc3BvbmRlbnRpIGFsIDxwYXR0ZXJuPiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2NQorbXNnaWQgImRvIG5vdCBjb25zaWRlciB0YWdzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKK21zZ3N0ciAibm9uIGNvbnNpZGVyYXJlIGkgdGFnIGNvcnJpc3BvbmRlbnRpIGFsIDxwYXR0ZXJuPiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2NyBidWlsdGluL25hbWUtcmV2LmM6NTM1Cittc2dpZCAic2hvdyBhYmJyZXZpYXRlZCBjb21taXQgb2JqZWN0IGFzIGZhbGxiYWNrIgorbXNnc3RyICJ2aXN1YWxpenphIGwnb2dnZXR0byBjb21taXQgYWJicmV2aWF0byBjb21lIGZhbGxiYWNrIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTY4IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NzEKK21zZ2lkICJtYXJrIgorbXNnc3RyICJjb250cmFzc2Vnbm8iCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjkKK21zZ2lkICJhcHBlbmQgPG1hcms+IG9uIGRpcnR5IHdvcmtpbmcgdHJlZSAoZGVmYXVsdDogXCItZGlydHlcIikiCittc2dzdHIgIiIKKyJhZ2dpdW5naSA8Y29udHJhc3NlZ25vPiBhbGwnYWxiZXJvIGRpIGxhdm9ybyBzcG9yY28gKGltcG9zdGF6aW9uZSAiCisicHJlZGVmaW5pdGE6IFwiLWRpcnR5XCIpIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTcyCittc2dpZCAiYXBwZW5kIDxtYXJrPiBvbiBicm9rZW4gd29ya2luZyB0cmVlIChkZWZhdWx0OiBcIi1icm9rZW5cIikiCittc2dzdHIgIiIKKyJhZ2dpdW5naSA8Y29udHJhc3NlZ25vPiBhbGwnYWxiZXJvIGRpIGxhdm9ybyByb3R0byAoaW1wb3N0YXppb25lICIKKyJwcmVkZWZpbml0YTogXCItYnJva2VuXCIpIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTkwCiBtc2dpZCAiLS1sb25nIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWJicmV2PTAiCiBtc2dzdHIgIi0tbG9uZyBub24gw6ggY29tcGF0aWJpbGUgY29uIC0tYWJicmV2PTAiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NjIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MTkKIG1zZ2lkICJObyBuYW1lcyBmb3VuZCwgY2Fubm90IGRlc2NyaWJlIGFueXRoaW5nLiIKLW1zZ3N0ciAiIgorbXNnc3RyICJOZXNzdW4gbm9tZSB0cm92YXRvLCBub24gw6ggcG9zc2liaWxlIGRlc2NyaXZlcmUgbnVsbGEuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDgyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjcwCiBtc2dpZCAiLS1kaXJ0eSBpcyBpbmNvbXBhdGlibGUgd2l0aCBjb21taXQtaXNoZXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAiLS1kaXJ0eSBub24gw6ggY29tcGF0aWJpbGUgY29uIGxlIGVzcHJlc3Npb25pIGNvbW1pdCIKIAotIzogYnVpbHRpbi9kaWZmLmM6NzcKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NzIKK21zZ2lkICItLWJyb2tlbiBpcyBpbmNvbXBhdGlibGUgd2l0aCBjb21taXQtaXNoZXMiCittc2dzdHIgIi0tYnJva2VuIG5vbiDDqCBjb21wYXRpYmlsZSBjb24gbGUgZXNwcmVzc2lvbmkgY29tbWl0IgorCisjOiBidWlsdGluL2RpZmYuYzo4NAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiBub3QgYSByZWd1bGFyIGZpbGUgb3Igc3ltbGluayIKLW1zZ3N0ciAiJyVzJzogbm9uIMOoIHVuIGZpbGUgcmVnb2xhcmUgbyB1biBsaW5rIHNpbWJvbGljbyIKK21zZ3N0ciAiJyVzJzogbm9uIMOoIHVuIGZpbGUgcmVnb2xhcmUgbyB1biBjb2xsZWdhbWVudG8gc2ltYm9saWNvIgogCi0jOiBidWlsdGluL2RpZmYuYzoyMjAKKyM6IGJ1aWx0aW4vZGlmZi5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9wdGlvbjogJXMiCiBtc2dzdHIgIm9wemlvbmUgbm9uIHZhbGlkYTogJXMiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjI5NworIzogYnVpbHRpbi9kaWZmLmM6MzUwCiBtc2dpZCAiTm90IGEgZ2l0IHJlcG9zaXRvcnkiCi1tc2dzdHIgIk5vbiDDqCB1biByZXBvc2l0b3J5IGdpdCIKK21zZ3N0ciAiTm9uIMOoIHVuIHJlcG9zaXRvcnkgR2l0IgogCi0jOiBidWlsdGluL2RpZmYuYzozNDcKKyM6IGJ1aWx0aW4vZGlmZi5jOjM5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9iamVjdCAnJXMnIGdpdmVuLiIKLW1zZ3N0ciAib2dnZXR0byBub24gdmFsaWRvICclcycgc3BlY2lmaWNhdG8uIgorbXNnc3RyICJzcGVjaWZpY2F0byBvZ2dldHRvIG5vbiB2YWxpZG8gJyVzJy4iCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjM1MgotIywgYy1mb3JtYXQKLW1zZ2lkICJtb3JlIHRoYW4gJWQgdHJlZXMgZ2l2ZW46ICclcyciCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9kaWZmLmM6MzYyCisjOiBidWlsdGluL2RpZmYuYzo0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9yZSB0aGFuIHR3byBibG9icyBnaXZlbjogJyVzJyIKIG1zZ3N0ciAicGnDuSBkaSBkdWUgYmxvYiBzcGVjaWZpY2F0aTogJyVzJyIKIAotIzogYnVpbHRpbi9kaWZmLmM6MzcwCisjOiBidWlsdGluL2RpZmYuYzo0MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5oYW5kbGVkIG9iamVjdCAnJXMnIGdpdmVuLiIKLW1zZ3N0ciAib2dnZXR0byBub24gZ2VzdGl0byAnJXMnIHNwZWNpZmljYXRvLiIKK21zZ3N0ciAic3BlY2lmaWNhdG8gb2dnZXR0byBub24gZ2VzdGl0byAnJXMnLiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjIwMAotbXNnaWQgIkNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiBIRUFEIgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjMwCittc2dpZCAiZ2l0IGRpZmZ0b29sIFs8b3B0aW9ucz5dIFs8Y29tbWl0PiBbPGNvbW1pdD5dXSBbLS1dIFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgZGlmZnRvb2wgWzxvcHppb25pPl0gWzxjb21taXQ+IFs8Y29tbWl0Pl1dIFstLV0gWzxwZXJjb3Jzbz4uLi5dIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZDogJWQiCittc2dzdHIgIm5vbiByaXVzY2l0bzogJWQiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzozMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgc3ltbGluayAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBpbCBjb2xsZWdhbWVudG8gc2ltYm9saWNvICVzIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIHN5bWxpbmsgZmlsZSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBpbCBmaWxlIGNvbGxlZ2FtZW50byBzaW1ib2xpY28gJXMiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgb2JqZWN0ICVzIGZvciBzeW1saW5rICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGwnb2dnZXR0byAlcyBwZXIgaWwgY29sbGVnYW1lbnRvIHNpbWJvbGljbyAlcyIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjQxMworbXNnaWQgIiIKKyJjb21iaW5lZCBkaWZmIGZvcm1hdHMoJy1jJyBhbmQgJy0tY2MnKSBhcmUgbm90IHN1cHBvcnRlZCBpblxuIgorImRpcmVjdG9yeSBkaWZmIG1vZGUoJy1kJyBhbmQgJy0tZGlyLWRpZmYnKS4iCiBtc2dzdHIgIiIKKyJpIGZvcm1hdGkgZGlmZiBjb21iaW5hdGkgKCctYycgZSAnLS1jYycpIG5vbiBzb25vIHN1cHBvcnRhdGkgaW5cbiIKKyJtb2RhbGl0w6AgZGlmZiBkaXJlY3RvcnkgKCctZCcgZSAnLS1kaXItZGlmZicpLiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjI1MworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjYzNAorIywgYy1mb3JtYXQKK21zZ2lkICJib3RoIGZpbGVzIG1vZGlmaWVkOiAnJXMnIGFuZCAnJXMnLiIKK21zZ3N0ciAiZW50cmFtYmkgaSBmaWxlIHJpc3VsdGFubyBtb2RpZmljYXRpOiAnJXMnIGUgJyVzJy4iCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzYKK21zZ2lkICJ3b3JraW5nIHRyZWUgZmlsZSBoYXMgYmVlbiBsZWZ0LiIKK21zZ3N0ciAiaWwgZmlsZSBuZWxsJ2FsYmVybyBkaSBsYXZvcm8gw6ggc3RhdG8gbWFudGVudXRvLiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0NworIywgYy1mb3JtYXQKK21zZ2lkICJ0ZW1wb3JhcnkgZmlsZXMgZXhpc3QgaW4gJyVzJy4iCittc2dzdHIgImVzaXN0b25vIGZpbGUgdGVtcG9yYW5laSBpbiAnJXMnLiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0OAorbXNnaWQgInlvdSBtYXkgd2FudCB0byBjbGVhbnVwIG9yIHJlY292ZXIgdGhlc2UuIgorbXNnc3RyICJwb3RyZXN0aSB2b2xlciByaXB1bGlybGkgbyByaXByaXN0aW5hcmxpLiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5NworbXNnaWQgInVzZSBgZGlmZi5ndWl0b29sYCBpbnN0ZWFkIG9mIGBkaWZmLnRvb2xgIgorbXNnc3RyICJ1c2EgYGRpZmYuZ3VpdG9vbGAgYW56aWNow6kgYGRpZmYudG9vbGAiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTkKK21zZ2lkICJwZXJmb3JtIGEgZnVsbC1kaXJlY3RvcnkgZGlmZiIKK21zZ3N0ciAiZXNlZ3VpIHVuIGRpZmYgZGlyZWN0b3J5IGNvbXBsZXRvIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzAxCittc2dpZCAiZG8gbm90IHByb21wdCBiZWZvcmUgbGF1bmNoaW5nIGEgZGlmZiB0b29sIgorbXNnc3RyICJub24gY2hpZWRlcmUgY29uZmVybWEgcHJpbWEgZGkgbGFuY2lhcmUgdW4gdG9vbCBkaWZmIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzA2Cittc2dpZCAidXNlIHN5bWxpbmtzIGluIGRpci1kaWZmIG1vZGUiCittc2dzdHIgInVzYSBjb2xsZWdhbWVudGkgc2ltYm9saWNpIGluIG1vZGFsaXTDoCBkaWZmIGRpcmVjdG9yeSIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNworbXNnaWQgInRvb2wiCittc2dzdHIgInN0cnVtZW50byIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOAorbXNnaWQgInVzZSB0aGUgc3BlY2lmaWVkIGRpZmYgdG9vbCIKK21zZ3N0ciAidXNhIGxvIHN0cnVtZW50byBkaWZmIHNwZWNpZmljYXRvIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEwCittc2dpZCAicHJpbnQgYSBsaXN0IG9mIGRpZmYgdG9vbHMgdGhhdCBtYXkgYmUgdXNlZCB3aXRoIGAtLXRvb2xgIgorbXNnc3RyICIiCisic3RhbXBhIHVuIGVsZW5jbyBkaSBzdHJ1bWVudGkgZGlmZiBjaGUgcG9zc29ubyBlc3NlcmUgdXNhdGkgY29uIGAtLXRvb2xgIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEzCittc2dpZCAiIgorIm1ha2UgJ2dpdC1kaWZmdG9vbCcgZXhpdCB3aGVuIGFuIGludm9rZWQgZGlmZiB0b29sIHJldHVybnMgYSBub24gLSB6ZXJvIGV4aXQgIgorImNvZGUiCittc2dzdHIgIiIKKyJmYWkgc8OsIGNoZSAnZ2l0LWRpZmZ0b29sJyBlc2NhIHF1YW5kbyB1bm8gc3RydW1lbnRvIGRpZmYgaW52b2NhdG8gIgorInJlc3RpdHVpc2NlIHVuIGNvZGljZSBkJ3VzY2l0YSBkaXZlcnNvIGRhIHplcm8iCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTYKK21zZ2lkICJzcGVjaWZ5IGEgY3VzdG9tIGNvbW1hbmQgZm9yIHZpZXdpbmcgZGlmZnMiCittc2dzdHIgInNwZWNpZmljYSB1biBjb21hbmRvIHBlcnNvbmFsaXp6YXRvIHBlciB2aXN1YWxpenphcmUgaSBkaWZmIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE3Cittc2dpZCAicGFzc2VkIHRvIGBkaWZmYCIKK21zZ3N0ciAiZm9ybml0byBhIGBkaWZmYCIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjczMgorbXNnaWQgImRpZmZ0b29sIHJlcXVpcmVzIHdvcmt0cmVlIG9yIC0tbm8taW5kZXgiCittc2dzdHIgImRpZmZ0b29sIHJpY2hpZWRlIHVuIGFsYmVybyBkaSBsYXZvcm8gbyAtLW5vLWluZGV4IgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzM5Cittc2dpZCAiLS1kaXItZGlmZiBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW5vLWluZGV4IgorbXNnc3RyICItLWRpci1kaWZmIG5vbiDDqCBjb21wYXRpYmlsZSBjb24gLS1uby1pbmRleCIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc0MgorbXNnaWQgIi0tZ3VpLCAtLXRvb2wgYW5kIC0tZXh0Y21kIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgImxlIG9wemlvbmkgLS1ndWksIC0tdG9vbCBlZCAtLWV4dGNtZCBzb25vIG11dHVhbG1lbnRlIGVzY2x1c2l2ZSIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc1MAorbXNnaWQgIm5vIDx0b29sPiBnaXZlbiBmb3IgLS10b29sPTx0b29sPiIKK21zZ3N0ciAibmVzc3VubyA8c3RydW1lbnRvPiBzcGVjaWZpY2F0byBwZXIgLS10b29sPTxzdHJ1bWVudG8+IgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzU3Cittc2dpZCAibm8gPGNtZD4gZ2l2ZW4gZm9yIC0tZXh0Y21kPTxjbWQ+IgorbXNnc3RyICJuZXNzdW4gPGNvbWFuZG8+IHNwZWNpZmljYXRvIHBlciAtLWV4dGNtZD08Y29tYW5kbz4iCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo2Cittc2dpZCAiZ2l0IGVudi0taGVscGVyIC0tdHlwZT1bYm9vbHx1bG9uZ10gPG9wdGlvbnM+IDxlbnYtdmFyPiIKK21zZ3N0ciAiZ2l0IGVudi0taGVscGVyIC0tdHlwZT1bYm9vbHx1bG9uZ10gPG9wemlvbmk+IDx2YXJpYWJpbGUgZCdhbWJpZW50ZT4iCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzozNyBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKK21zZ2lkICJ0eXBlIgorbXNnc3RyICJ0aXBvIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NDEKK21zZ2lkICJkZWZhdWx0IGZvciBnaXRfZW52XyooLi4uKSB0byBmYWxsIGJhY2sgb24iCittc2dzdHIgIiIKKyJpbXBvc3RhemlvbmUgcHJlZGVmaW5pdGEgc3UgY3VpIHJpcGllZ2hlcmFubm8gbGUgY2hpYW1hdGUgZ2l0X2Vudl8qKC4uLikiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MworbXNnaWQgImJlIHF1aWV0IG9ubHkgdXNlIGdpdF9lbnZfKigpIHZhbHVlIGFzIGV4aXQgY29kZSIKK21zZ3N0ciAiIgorIm5vbiB2aXN1YWxpenphcmUgbWVzc2FnZ2ksIHVzYSBzb2xvIGlsIHZhbG9yZSBkaSBnaXRfZW52XyooKSBjb21lIGNvZGljZSAiCisiZCd1c2NpdGEiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo2MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYC0tZGVmYXVsdCcgZXhwZWN0cyBhIGJvb2xlYW4gdmFsdWUgd2l0aCBgLS10eXBlPWJvb2xgLCBub3QgYCVzYCIKK21zZ3N0ciAiIgorImwnb3B6aW9uZSBgLS1kZWZhdWx0JyByaWNoaWVkZSB1biB2YWxvcmUgYm9vbGVhbm8gY29uIGAtLXR5cGU9Ym9vbGAsIG5vbiBgJXNgIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9wdGlvbiBgLS1kZWZhdWx0JyBleHBlY3RzIGFuIHVuc2lnbmVkIGxvbmcgdmFsdWUgd2l0aCBgLS10eXBlPXVsb25nYCwgbm90IGAiCisiJXNgIgorbXNnc3RyICIiCisibCdvcHppb25lIGAtLWRlZmF1bHQnIHJpY2hpZWRlIHVuIHZhbG9yZSB1bnNpZ25lZCBsb25nIGNvbiBgLS10eXBlPXVsb25nYCwgIgorIm5vbiBgJXNgIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MjkKK21zZ2lkICJnaXQgZmFzdC1leHBvcnQgW3Jldi1saXN0LW9wdHNdIgorbXNnc3RyICJnaXQgZmFzdC1leHBvcnQgW29wemlvbmktZWxlbmNvLXJldl0iCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzo4NTMKK21zZ2lkICJFcnJvcjogQ2Fubm90IGV4cG9ydCBuZXN0ZWQgdGFncyB1bmxlc3MgLS1tYXJrLXRhZ3MgaXMgc3BlY2lmaWVkLiIKK21zZ3N0ciAiIgorIkVycm9yZTogSW1wb3NzaWJpbGUgZXNwb3J0YXJlIGkgdGFnIG5pZGlmaWNhdGkgYSBtZW5vIGNoZSBub24gc2lhICIKKyJzcGVjaWZpY2F0YSBsJ29wemlvbmUgLS1tYXJrLXRhZ3MuIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1MgorbXNnaWQgInNob3cgcHJvZ3Jlc3MgYWZ0ZXIgPG4+IG9iamVjdHMiCittc2dzdHIgInZpc3VhbGl6emEgbCdhdmFuemFtZW50byBkb3BvIDxuPiBvZ2dldHRpIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NAorbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiBzaWduZWQgdGFncyIKK21zZ3N0ciAic2VsZXppb25hIGxhIGdlc3Rpb25lIGRlaSB0YWcgZmlybWF0aSIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTcKK21zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2YgdGFncyB0aGF0IHRhZyBmaWx0ZXJlZCBvYmplY3RzIgorbXNnc3RyICJzZWxlemlvbmEgbGEgZ2VzdGlvbmUgZGVpIHRhZyBjaGUgY29udHJhc3NlZ25hbm8gb2dnZXR0aSBmaWx0cmF0aSIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjAKK21zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2YgY29tbWl0IG1lc3NhZ2VzIGluIGFuIGFsdGVybmF0ZSBlbmNvZGluZyIKK21zZ3N0ciAiIgorInNlbGV6aW9uYSBsYSBnZXN0aW9uZSBkZWkgbWVzc2FnZ2kgZGkgY29tbWl0IGluIHVuYSBjb2RpZmljYSBhbHRlcm5hdGl2YSIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjMKK21zZ2lkICJEdW1wIG1hcmtzIHRvIHRoaXMgZmlsZSIKK21zZ3N0ciAiRXNlZ3VpIGlsIGR1bXAgZGVpIGNvbnRyYXNzZWduaSBpbiBxdWVzdG8gZmlsZSIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjUKK21zZ2lkICJJbXBvcnQgbWFya3MgZnJvbSB0aGlzIGZpbGUiCittc2dzdHIgIkltcG9ydGEgaSBjb250cmFzc2VnbmkgZGEgcXVlc3RvIGZpbGUiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY5Cittc2dpZCAiSW1wb3J0IG1hcmtzIGZyb20gdGhpcyBmaWxlIGlmIGl0IGV4aXN0cyIKK21zZ3N0ciAiSW1wb3J0YSBpIGNvbnRyYXNzZWduaSBkYSBxdWVzdG8gZmlsZSBzZSBlc2lzdGUiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTcxCittc2dpZCAiRmFrZSBhIHRhZ2dlciB3aGVuIHRhZ3MgbGFjayBvbmUiCittc2dzdHIgIlVzYSB1biB0YWdnZXIgZmFsc28gc2UgaSB0YWcgbm9uIG5lIGhhbm5vIHVubyIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzMKK21zZ2lkICJPdXRwdXQgZnVsbCB0cmVlIGZvciBlYWNoIGNvbW1pdCIKK21zZ3N0ciAiVmlzdWFsaXp6YSBpbiBvdXRwdXQgbCdhbGJlcm8gY29tcGxldG8gcGVyIG9nbmkgY29tbWl0IgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NQorbXNnaWQgIlVzZSB0aGUgZG9uZSBmZWF0dXJlIHRvIHRlcm1pbmF0ZSB0aGUgc3RyZWFtIgorbXNnc3RyICJVc2EgbGEgZnVuemlvbmFsaXTDoCBcImZhdHRvXCIgcGVyIHRlcm1pbmFyZSBpbCBmbHVzc28iCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc2Cittc2dpZCAiU2tpcCBvdXRwdXQgb2YgYmxvYiBkYXRhIgorbXNnc3RyICJPbWV0dGkgbCdvdXRwdXQgZGVpIGRhdGkgZGVpIGJsb2IiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc3IGJ1aWx0aW4vbG9nLmM6MTcwNQorbXNnaWQgInJlZnNwZWMiCittc2dzdHIgInNwZWNpZmljYXRvcmUgcmlmZXJpbWVudG8iCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc4Cittc2dpZCAiQXBwbHkgcmVmc3BlYyB0byBleHBvcnRlZCByZWZzIgorbXNnc3RyICJBcHBsaWNhIGxvIHNwZWNpZmljYXRvcmUgcmlmZXJpbWVudG8gYWkgcmlmZXJpbWVudGkgZXNwb3J0YXRpIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3OQorbXNnaWQgImFub255bWl6ZSBvdXRwdXQiCittc2dzdHIgInJlbmRpIGFub25pbW8gbCdvdXRwdXQiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTgxCittc2dpZCAiUmVmZXJlbmNlIHBhcmVudHMgd2hpY2ggYXJlIG5vdCBpbiBmYXN0LWV4cG9ydCBzdHJlYW0gYnkgb2JqZWN0IGlkIgorbXNnc3RyICIiCisiRmFpIHJpZmVyaW1lbnRvIGFpIGdlbml0b3JpIG5vbiBuZWwgZmx1c3NvIGZhc3QtZXhwb3J0IHRyYW1pdGUgbCdJRCBvZ2dldHRvIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE4MworbXNnaWQgIlNob3cgb3JpZ2luYWwgb2JqZWN0IGlkcyBvZiBibG9icy9jb21taXRzIgorbXNnc3RyICJWaXN1YWxpenphIGdsaSBJRCBvZ2dldHRvIG9yaWdpbmFyaSBkZWkgYmxvYi9jb21taXQiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTg1Cittc2dpZCAiTGFiZWwgdGFncyB3aXRoIG1hcmsgaWRzIgorbXNnc3RyICJFdGljaGV0dGEgaSB0YWcgY29uIElEIGNvbnRyYXNzZWdubyIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEyMjAKK21zZ2lkICJDYW5ub3QgcGFzcyBib3RoIC0taW1wb3J0LW1hcmtzIGFuZCAtLWltcG9ydC1tYXJrcy1pZi1leGlzdHMiCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBmb3JuaXJlIGVudHJhbWJlIGxlIG9wemlvbmkgLS1pbXBvcnQtbWFya3MgZSAtLWltcG9ydC1tYXJrcy1pZi0iCisiZXhpc3RzIgorCisjOiBidWlsdGluL2ZldGNoLmM6MzQKK21zZ2lkICJnaXQgZmV0Y2ggWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCittc2dzdHIgImdpdCBmZXRjaCBbPG9wemlvbmk+XSBbPHJlcG9zaXRvcnk+IFs8c3BlY2lmaWNhdG9yZSByaWZlcmltZW50bz4uLi5dXSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjM1Cittc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIDxncm91cD4iCittc2dzdHIgImdpdCBmZXRjaCBbPG9wemlvbmk+XSA8Z3J1cHBvPiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjM2Cittc2dpZCAiZ2l0IGZldGNoIC0tbXVsdGlwbGUgWzxvcHRpb25zPl0gWyg8cmVwb3NpdG9yeT4gfCA8Z3JvdXA+KS4uLl0iCittc2dzdHIgImdpdCBmZXRjaCAtLW11bHRpcGxlIFs8b3B6aW9uaT5dIFsoPHJlcG9zaXRvcnk+IHwgPGdydXBwbz4pLi4uXSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjM3Cittc2dpZCAiZ2l0IGZldGNoIC0tYWxsIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgZmV0Y2ggLS1hbGwgWzxvcHppb25pPl0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTYKK21zZ2lkICJmZXRjaC5wYXJhbGxlbCBjYW5ub3QgYmUgbmVnYXRpdmUiCittc2dzdHIgImZldGNoLnBhcmFsbGVsIG5vbiBwdcOyIGVzc2VyZSBuZWdhdGl2byIKKworIzogYnVpbHRpbi9mZXRjaC5jOjEzOSBidWlsdGluL3B1bGwuYzoxODQKK21zZ2lkICJmZXRjaCBmcm9tIGFsbCByZW1vdGVzIgorbXNnc3RyICJlc2VndWkgaWwgZmV0Y2ggZGEgdHV0dGkgaSByZW1vdGkiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDEgYnVpbHRpbi9wdWxsLmM6MjI4Cittc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9mZXRjaCIKK21zZ3N0ciAiaW1wb3N0YSBsJ3Vwc3RyZWFtIHBlciBnaXQgcHVsbC9mZXRjaCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MyBidWlsdGluL3B1bGwuYzoxODcKK21zZ2lkICJhcHBlbmQgdG8gLmdpdC9GRVRDSF9IRUFEIGluc3RlYWQgb2Ygb3ZlcndyaXRpbmciCittc2dzdHIgImFnZ2l1bmdpIGkgZGF0aSBhIC5naXQvRkVUQ0hfSEVBRCBhbnppY2jDqSBzb3ZyYXNjcml2ZXJsaSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0NSBidWlsdGluL3B1bGwuYzoxOTAKK21zZ2lkICJwYXRoIHRvIHVwbG9hZCBwYWNrIG9uIHJlbW90ZSBlbmQiCittc2dzdHIgInBlcmNvcnNvIGluIGN1aSBjYXJpY2FyZSBpbCBwYWNrIHN1bCByZW1vdG8iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDYKK21zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgbG9jYWwgcmVmZXJlbmNlIgorbXNnc3RyICJmb3J6YSBsYSBzb3ZyYXNjcml0dHVyYSBkZWwgcmlmZXJpbWVudG8gbG9jYWxlIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ4Cittc2dpZCAiZmV0Y2ggZnJvbSBtdWx0aXBsZSByZW1vdGVzIgorbXNnc3RyICJlc2VndWkgaWwgZmV0Y2ggZGEgcGnDuSByZW1vdGkiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTAgYnVpbHRpbi9wdWxsLmM6MTk0Cittc2dpZCAiZmV0Y2ggYWxsIHRhZ3MgYW5kIGFzc29jaWF0ZWQgb2JqZWN0cyIKK21zZ3N0ciAiZXNlZ3VpIGlsIGZldGNoIGRpIHR1dHRpIGkgdGFnIGUgZGVnbGkgb2dnZXR0aSBhc3NvY2lhdGkiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTIKK21zZ2lkICJkbyBub3QgZmV0Y2ggYWxsIHRhZ3MgKC0tbm8tdGFncykiCittc2dzdHIgIm5vbiBlc2VndWlyZSBpbCBmZXRjaCBkaSBhbGN1biB0YWcgKC0tbm8tdGFncykiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQKK21zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBmZXRjaGVkIGluIHBhcmFsbGVsIgorbXNnc3RyICJudW1lcm8gZGkgc290dG9tb2R1bGkgcmVjdXBlcmF0aSBpbiBwYXJhbGxlbG8iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTYgYnVpbHRpbi9wdWxsLmM6MTk3Cittc2dpZCAicHJ1bmUgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIG5vIGxvbmdlciBvbiByZW1vdGUiCittc2dzdHIgIiIKKyJlbGltaW5hIGkgYnJhbmNoIGNoZSBuZSB0cmFjY2lhbm8gdW5vIHJlbW90byBtYSBub24gcGnDuSBwcmVzZW50aSBzdWwgcmVtb3RvIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTU4Cittc2dpZCAicHJ1bmUgbG9jYWwgdGFncyBubyBsb25nZXIgb24gcmVtb3RlIGFuZCBjbG9iYmVyIGNoYW5nZWQgdGFncyIKK21zZ3N0ciAiIgorImVsaW1pbmEgaSB0YWcgbG9jYWxpIG5vbiBwacO5IHByZXNlbnRpIHN1bCByZW1vdG8gZSBzb3ZyYXNjcml2aSBpIHRhZyAiCisibW9kaWZpY2F0aSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE1OSBidWlsdGluL2ZldGNoLmM6MTgyIGJ1aWx0aW4vcHVsbC5jOjEyMQorbXNnaWQgIm9uLWRlbWFuZCIKK21zZ3N0ciAiYSByaWNoaWVzdGEiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjAKK21zZ2lkICJjb250cm9sIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIgorbXNnc3RyICJjb250cm9sbGEgaWwgcmVjdXBlcm8gcmljb3JzaXZvIGRlaSBzb3R0b21vZHVsaSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE2NCBidWlsdGluL3B1bGwuYzoyMDUKK21zZ2lkICJrZWVwIGRvd25sb2FkZWQgcGFjayIKK21zZ3N0ciAibWFudGllbmkgaWwgcGFjayBzY2FyaWNhdG8iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjYKK21zZ2lkICJhbGxvdyB1cGRhdGluZyBvZiBIRUFEIHJlZiIKK21zZ3N0ciAiY29uc2VudGkgbCdhZ2dpb3JuYW1lbnRvIGRlbCByaWZlcmltZW50byBIRUFEIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTY5IGJ1aWx0aW4vZmV0Y2guYzoxNzUgYnVpbHRpbi9wdWxsLmM6MjA4Cittc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyBjbG9uZSIKK21zZ3N0ciAiYXVtZW50YSBsYSBwcm9mb25kaXTDoCBkZWxsYSBjcm9ub2xvZ2lhIGRpIHVuIGNsb25lIHNoYWxsb3ciCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzEKK21zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IHJlcG9zaXRvcnkgYmFzZWQgb24gdGltZSIKK21zZ3N0ciAiIgorImF1bWVudGEgbGEgcHJvZm9uZGl0w6AgZGVsbGEgY3Jvbm9sb2dpYSBkaSB1biBjbG9uZSBzaGFsbG93IGluIGJhc2UgYWwgdGVtcG8iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzcgYnVpbHRpbi9wdWxsLmM6MjExCittc2dpZCAiY29udmVydCB0byBhIGNvbXBsZXRlIHJlcG9zaXRvcnkiCittc2dzdHIgImNvbnZlcnRpIGluIHVuIHJlcG9zaXRvcnkgY29tcGxldG8iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODAKK21zZ2lkICJwcmVwZW5kIHRoaXMgdG8gc3VibW9kdWxlIHBhdGggb3V0cHV0IgorbXNnc3RyICJhbnRlcG9uaSBxdWVzdG8gcHJlZmlzc28gYWxsJ291dHB1dCBkZWwgcGVyY29yc28gZGVsIHNvdHRvbW9kdWxvIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTgzCittc2dpZCAiIgorImRlZmF1bHQgZm9yIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIChsb3dlciBwcmlvcml0eSB0aGFuIGNvbmZpZyAiCisiZmlsZXMpIgorbXNnc3RyICIiCisiaW1wb3N0YXppb25lIHByZWRlZmluaXRhIHBlciBpbCByZWN1cGVybyByaWNvcnNpdm8gZGVpIHNvdHRvbW9kdWxpIChhICIKKyJwcmlvcml0w6AgbWlub3JlIHJpc3BldHRvIGFpIGZpbGUgZGkgY29uZmlndXJhemlvbmUpIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTg3IGJ1aWx0aW4vcHVsbC5jOjIxNAorbXNnaWQgImFjY2VwdCByZWZzIHRoYXQgdXBkYXRlIC5naXQvc2hhbGxvdyIKK21zZ3N0ciAiYWNjZXR0YSBpIHJpZmVyaW1lbnRpIGNoZSBhZ2dpb3JuYW5vIC5naXQvc2hhbGxvdyIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE4OCBidWlsdGluL3B1bGwuYzoyMTYKK21zZ2lkICJyZWZtYXAiCittc2dzdHIgIm1hcHBhIHJpZmVyaW1lbnRpIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTg5IGJ1aWx0aW4vcHVsbC5jOjIxNworbXNnaWQgInNwZWNpZnkgZmV0Y2ggcmVmbWFwIgorbXNnc3RyICJzcGVjaWZpY2EgbGEgbWFwcGEgZGVpIHJpZmVyaW1lbnRpIHBlciBpbCBmZXRjaCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE5NgorbXNnaWQgInJlcG9ydCB0aGF0IHdlIGhhdmUgb25seSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHRoaXMgb2JqZWN0IgorbXNnc3RyICJzZWduYWxhIGNoZSBhYmJpYW1vIHNvbG8gb2dnZXR0aSByYWdnaXVuZ2liaWxpIGRhIHF1ZXN0J29nZ2V0dG8iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxOTkKK21zZ2lkICJydW4gJ2djIC0tYXV0bycgYWZ0ZXIgZmV0Y2hpbmciCittc2dzdHIgImVzZWd1aSAnZ2MgLS1hdXRvJyBkb3BvIGlsIGZldGNoIgorCisjOiBidWlsdGluL2ZldGNoLmM6MjAxIGJ1aWx0aW4vcHVsbC5jOjIyNgorbXNnaWQgImNoZWNrIGZvciBmb3JjZWQtdXBkYXRlcyBvbiBhbGwgdXBkYXRlZCBicmFuY2hlcyIKK21zZ3N0ciAiY29udHJvbGxhIGFnZ2lvcm5hbWVudGkgZm9yemF0aSBzdSB0dXR0aSBpIGJyYW5jaCBhZ2dpb3JuYXRpIgorCisjOiBidWlsdGluL2ZldGNoLmM6MjAzCittc2dpZCAid3JpdGUgdGhlIGNvbW1pdC1ncmFwaCBhZnRlciBmZXRjaGluZyIKK21zZ3N0ciAic2NyaXZpIGlsIGdyYWZvIGRlaSBjb21taXQgZG9wbyBpbCBmZXRjaCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjUxMworbXNnaWQgIkNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiBIRUFEIgorbXNnc3RyICJJbXBvc3NpYmlsZSB0cm92YXJlIGwnSEVBRCBkZWwgcmlmZXJpbWVudG8gcmVtb3RvIgorCisjOiBidWlsdGluL2ZldGNoLmM6NjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZmV0Y2gub3V0cHV0IGNvbnRhaW5zIGludmFsaWQgdmFsdWUgJXMiCittc2dzdHIgImlsIHZhbG9yZSBkZWxsJ29wemlvbmUgZmV0Y2gub3V0cHV0IGNvbnRpZW5lIGlsIHZhbG9yZSBub24gdmFsaWRvICVzIgorCisjOiBidWlsdGluL2ZldGNoLmM6NzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBub3QgZm91bmQiCiBtc2dzdHIgIm9nZ2V0dG8gJXMgbm9uIHRyb3ZhdG8iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoyNTkKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTUKIG1zZ2lkICJbdXAgdG8gZGF0ZV0iCiBtc2dzdHIgIlthZ2dpb3JuYXRvXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjI3MwotIywgYy1mb3JtYXQKLW1zZ2lkICIhICUtKnMgJS0qcyAtPiAlcyAgKGNhbid0IGZldGNoIGluIGN1cnJlbnQgYnJhbmNoKSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2ZldGNoLmM6Mjc0IGJ1aWx0aW4vZmV0Y2guYzozNjAKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NjggYnVpbHRpbi9mZXRjaC5jOjc4NCBidWlsdGluL2ZldGNoLmM6ODU2CiBtc2dpZCAiW3JlamVjdGVkXSIKLW1zZ3N0ciAiW3Jlc3BpbnRvXSIKK21zZ3N0ciAiW3JpZml1dGF0b10iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoyODUKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NjkKK21zZ2lkICJjYW4ndCBmZXRjaCBpbiBjdXJyZW50IGJyYW5jaCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgZmV0Y2ggbmVsIGJyYW5jaCBjb3JyZW50ZSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjc3OQogbXNnaWQgIlt0YWcgdXBkYXRlXSIKLW1zZ3N0ciAiW3RhZyBhZ2dpb3JuYXRhXSIKK21zZ3N0ciAiW3RhZyBhZ2dpb3JuYXRvXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjI4NyBidWlsdGluL2ZldGNoLmM6MzIyIGJ1aWx0aW4vZmV0Y2guYzozNDAKLW1zZ2lkICIgICh1bmFibGUgdG8gdXBkYXRlIGxvY2FsIHJlZikiCi1tc2dzdHIgIiAgKGltcG9zc2liaWxlIGFnZ2lvcm5hcmUgaWwgcmVmIGxvY2FsZSkiCisjOiBidWlsdGluL2ZldGNoLmM6NzgwIGJ1aWx0aW4vZmV0Y2guYzo4MTcgYnVpbHRpbi9mZXRjaC5jOjgzOQorIzogYnVpbHRpbi9mZXRjaC5jOjg1MQorbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgbG9jYWwgcmVmIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhZ2dpb3JuYXJlIGlsIHJpZmVyaW1lbnRvIGxvY2FsZSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjMwNQorIzogYnVpbHRpbi9mZXRjaC5jOjc4NAorbXNnaWQgIndvdWxkIGNsb2JiZXIgZXhpc3RpbmcgdGFnIgorbXNnc3RyICJzb3ZyYXNjcml2ZXJlYmJlIGlsIHRhZyBlc2lzdGVudGUiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MDYKIG1zZ2lkICJbbmV3IHRhZ10iCi1tc2dzdHIgIltudW92YSB0YWddIgorbXNnc3RyICJbbnVvdm8gdGFnXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjMwOAorIzogYnVpbHRpbi9mZXRjaC5jOjgwOQogbXNnaWQgIltuZXcgYnJhbmNoXSIKIG1zZ3N0ciAiW251b3ZvIGJyYW5jaF0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzozMTEKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MTIKIG1zZ2lkICJbbmV3IHJlZl0iCi1tc2dzdHIgIltudW92byByZWZdIgorbXNnc3RyICJbbnVvdm8gcmlmZXJpbWVudG9dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MzU2Ci1tc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBsb2NhbCByZWYiCi1tc2dzdHIgImltcG9zc2liaWxlIGFnZ2lvcm5hcmUgaWwgcmVmIGxvY2FsZSIKLQotIzogYnVpbHRpbi9mZXRjaC5jOjM1NgorIzogYnVpbHRpbi9mZXRjaC5jOjg1MQogbXNnaWQgImZvcmNlZCB1cGRhdGUiCiBtc2dzdHIgImFnZ2lvcm5hbWVudG8gZm9yemF0byIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjM2MgotbXNnaWQgIihub24tZmFzdC1mb3J3YXJkKSIKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NTYKK21zZ2lkICJub24tZmFzdC1mb3J3YXJkIgorbXNnc3RyICJub24gZmFzdCBmb3J3YXJkIgorCisjOiBidWlsdGluL2ZldGNoLmM6ODc3Cittc2dpZCAiIgorIkZldGNoIG5vcm1hbGx5IGluZGljYXRlcyB3aGljaCBicmFuY2hlcyBoYWQgYSBmb3JjZWQgdXBkYXRlLFxuIgorImJ1dCB0aGF0IGNoZWNrIGhhcyBiZWVuIGRpc2FibGVkLiBUbyByZS1lbmFibGUsIHVzZSAnLS1zaG93LWZvcmNlZC11cGRhdGVzJ1xuIgorImZsYWcgb3IgcnVuICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzIHRydWUnLiIKIG1zZ3N0ciAiIgorIklsIGZldGNoIG5vcm1hbG1lbnRlIGluZGljYSBxdWFsaSBicmFuY2ggc2lhbm8gc3RhdGkgc290dG9wb3N0aSBhZFxuIgorImFnZ2lvcm5hbWVudG8gZm9yemF0bywgbWEgdGFsZSBjb250cm9sbG8gw6ggc3RhdG8gZGlzYWJpbGl0YXRvLiBQZXJcbiIKKyJyaWFiaWxpdGFybG8sIHVzYSBsJ29wemlvbmUgJy0tc2hvdy1mb3JjZWQtdXBkYXRlcycgbyBlc2VndWkgJ2dpdCBjb25maWdcbiIKKyJmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyB0cnVlJy4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzozOTMgYnVpbHRpbi9mZXRjaC5jOjY4NQorIzogYnVpbHRpbi9mZXRjaC5jOjg4MQogIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3Qgb3BlbiAlczogJXNcbiIKLW1zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlICVzOiAlc1xuIgorbXNnaWQgIiIKKyJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBjaGVjayBmb3JjZWQgdXBkYXRlcy4gWW91IGNhbiB1c2VcbiIKKyInLS1uby1zaG93LWZvcmNlZC11cGRhdGVzJyBvciBydW4gJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgIgorImZhbHNlJ1xuIgorIiB0byBhdm9pZCB0aGlzIGNoZWNrLlxuIgorbXNnc3RyICIiCisiU29ubyBzdGF0aSByaWNoaWVzdGkgJS4yZiBzZWNvbmRpIHBlciBjb250cm9sbGFyZSBsYSBwcmVzZW56YSBkaSBldmVudHVhbGlcbiIKKyJhZ2dpb3JuYW1lbnRpIGZvcnphdGkuIFB1b2kgdXNhcmUgJy0tbm8tc2hvdy1mb3JjZWQtdXBkYXRlcycgbyBlc2VndWlyZVxuIgorIidnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzIGZhbHNlJyBwZXIgb21ldHRlcmUgcXVlc3RvIGNvbnRyb2xsby5cbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjQwMgorIzogYnVpbHRpbi9mZXRjaC5jOjkyMAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBkaWQgbm90IHNlbmQgYWxsIG5lY2Vzc2FyeSBvYmplY3RzXG4iCiBtc2dzdHIgIiVzIG5vbiBoYSBpbnZpYXRvIHR1dHRpIGdsaSBvZ2dldHRpIG5lY2Vzc2FyaVxuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NDg4CisjOiBidWlsdGluL2ZldGNoLmM6OTQxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlamVjdCAlcyBiZWNhdXNlIHNoYWxsb3cgcm9vdHMgYXJlIG5vdCBhbGxvd2VkIHRvIGJlIHVwZGF0ZWQiCittc2dzdHIgIiVzIHJpZml1dGF0byBwZXJjaMOpIG5vbiDDqCBjb25zZW50aXRvIGFnZ2lvcm5hcmUgcmFkaWNpIHNoYWxsb3ciCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMDI2IGJ1aWx0aW4vZmV0Y2guYzoxMTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZyb20gJS4qc1xuIgogbXNnc3RyICJEYSAlLipzXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo0OTkKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMDM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJzb21lIGxvY2FsIHJlZnMgY291bGQgbm90IGJlIHVwZGF0ZWQ7IHRyeSBydW5uaW5nXG4iCiAiICdnaXQgcmVtb3RlIHBydW5lICVzJyB0byByZW1vdmUgYW55IG9sZCwgY29uZmxpY3RpbmcgYnJhbmNoZXMiCiBtc2dzdHIgIiIKLSJub24gw6ggc3RhdG8gcG9zc2liaWxlIGFnZ2lvcm5hcmUgYWxjdW5pIHJlZiBsb2NhbGk7IHByb3ZhIGNvblxuIgotIiAnZ2l0IHJlbW90ZSBwcnVuZSAlcycgcGVyIHJpbXVvdmVyZSBvZ25pIGJyYW5jaCBjaGUgdmFkYSBpbiBjb25mbGl0dG8iCisibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBhZ2dpb3JuYXJlIGFsY3VuaSByaWZlcmltZW50aSBsb2NhbGk7IHByb3ZhIGFkICIKKyJlc2VndWlyZVxuIgorIiAnZ2l0IHJlbW90ZSBwcnVuZSAlcycgcGVyIHJpbXVvdmVyZSBvZ25pIGJyYW5jaCB2ZWNjaGlvIGluIGNvbmZsaXR0byIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjU0OQorIzogYnVpbHRpbi9mZXRjaC5jOjExMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgKCVzIHdpbGwgYmVjb21lIGRhbmdsaW5nKSIKLW1zZ3N0ciAiIgorbXNnc3RyICIgICAoJXMgZGl2ZW50ZXLDoCBwZW5kZW50ZSkiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo1NTAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICglcyBoYXMgYmVjb21lIGRhbmdsaW5nKSIKLW1zZ3N0ciAiIgorbXNnc3RyICIgICAoJXMgw6ggZGl2ZW50YXRvIHBlbmRlbnRlKSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjU1NworIzogYnVpbHRpbi9mZXRjaC5jOjExNjcKIG1zZ2lkICJbZGVsZXRlZF0iCiBtc2dzdHIgIltlbGltaW5hdG9dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NTU4IGJ1aWx0aW4vcmVtb3RlLmM6MTA1NQorIzogYnVpbHRpbi9mZXRjaC5jOjExNjggYnVpbHRpbi9yZW1vdGUuYzoxMTEyCiBtc2dpZCAiKG5vbmUpIgogbXNnc3RyICIobmVzc3VubykiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo2NzUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIGZldGNoIGludG8gY3VycmVudCBicmFuY2ggJXMgb2Ygbm9uLWJhcmUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgorIk1pIHJpZml1dG8gZGkgZXNlZ3VpcmUgaWwgZmV0Y2ggbmVsIGJyYW5jaCBjb3JyZW50ZSAlcyBkaSB1biByZXBvc2l0b3J5IG5vbiAiCisiYmFyZSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjcwOQotIywgYy1mb3JtYXQKLW1zZ2lkICJEb24ndCBrbm93IGhvdyB0byBmZXRjaCBmcm9tICVzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vZmV0Y2guYzo3ODYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMjEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9wdGlvbiBcIiVzXCIgdmFsdWUgXCIlc1wiIGlzIG5vdCB2YWxpZCBmb3IgJXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAiTCdvcHppb25lIFwiJXNcIiBjb24gaWwgdmFsb3JlIFwiJXNcIiBub24gw6ggdmFsaWRhIHBlciAlcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjc4OQorIzogYnVpbHRpbi9mZXRjaC5jOjEyMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiT3B0aW9uIFwiJXNcIiBpcyBpZ25vcmVkIGZvciAlc1xuIgogbXNnc3RyICJMJ29wemlvbmUgXCIlc1wiIMOoIGlnbm9yYXRhIHBlciAlc1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODg4CisjOiBidWlsdGluL2ZldGNoLmM6MTQyMQorbXNnaWQgIm11bHRpcGxlIGJyYW5jaGVzIGRldGVjdGVkLCBpbmNvbXBhdGlibGUgd2l0aCAtLXNldC11cHN0cmVhbSIKK21zZ3N0ciAicmlsZXZhdGkgYnJhbmNoIG11bHRpcGxpLCBzdGF0byBpbmNvbXBhdGliaWxlIGNvbiAtLXNldC11cHN0cmVhbSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MzYKK21zZ2lkICJub3Qgc2V0dGluZyB1cHN0cmVhbSBmb3IgYSByZW1vdGUgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKK21zZ3N0ciAibm9uIGltcG9zdG8gbCd1cHN0cmVhbSBwZXIgdW4gYnJhbmNoIHJlbW90byBjaGUgbmUgdHJhY2NpYSB1bm8gcmVtb3RvIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzOAorbXNnaWQgIm5vdCBzZXR0aW5nIHVwc3RyZWFtIGZvciBhIHJlbW90ZSB0YWciCittc2dzdHIgIm5vbiBpbXBvc3RvIGwndXBzdHJlYW0gcGVyIHVuIHRhZyByZW1vdG8iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDQwCittc2dpZCAidW5rbm93biBicmFuY2ggdHlwZSIKK21zZ3N0ciAidGlwbyBicmFuY2ggc2Nvbm9zY2l1dG8iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDQyCittc2dpZCAiIgorIm5vIHNvdXJjZSBicmFuY2ggZm91bmQuXG4iCisieW91IG5lZWQgdG8gc3BlY2lmeSBleGFjdGx5IG9uZSBicmFuY2ggd2l0aCB0aGUgLS1zZXQtdXBzdHJlYW0gb3B0aW9uLiIKK21zZ3N0ciAiIgorIm5lc3N1biBicmFuY2ggc29yZ2VudGUgdHJvdmF0by5cbiIKKyJkZXZpIHNwZWNpZmljYXJlIGVzYXR0YW1lbnRlIHVuIGJyYW5jaCBjb24gbCdvcHppb25lIC0tc2V0LXVwc3RyZWFtLiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE1NjggYnVpbHRpbi9mZXRjaC5jOjE2MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmV0Y2hpbmcgJXNcbiIKLW1zZ3N0ciAiIgorbXNnc3RyICJSZWN1cGVybyBkaSAlcyBpbiBjb3Jzb1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODkwIGJ1aWx0aW4vcmVtb3RlLmM6MTAwCisjOiBidWlsdGluL2ZldGNoLmM6MTU3OCBidWlsdGluL2ZldGNoLmM6MTYzMyBidWlsdGluL3JlbW90ZS5jOjEwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmV0Y2ggJXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgcmVjdXBlcmFyZSAlcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjkwNworIzogYnVpbHRpbi9mZXRjaC5jOjE1OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZldGNoICclcycgKGV4aXQgY29kZTogJWQpXG4iCittc2dzdHIgImltcG9zc2liaWxlIHJlY3VwZXJhcmUgJyVzJyAoY29kaWNlIGRpIHVzY2l0YTogJWQpXG4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjkzCiBtc2dpZCAiIgogIk5vIHJlbW90ZSByZXBvc2l0b3J5IHNwZWNpZmllZC4gIFBsZWFzZSwgc3BlY2lmeSBlaXRoZXIgYSBVUkwgb3IgYVxuIgogInJlbW90ZSBuYW1lIGZyb20gd2hpY2ggbmV3IHJldmlzaW9ucyBzaG91bGQgYmUgZmV0Y2hlZC4iCiBtc2dzdHIgIiIKLSJOZXNzdW4gcmVwb3NpdG9yeSByZW1vdG8gc3BlY2lmaWNhdG8uIFBlciBmYXZvcmUsIHNwZWNpZmljYSB1biBVUkwgb1xuIgotImlsIG5vbWUgZGkgdW4gcmVtb3RlIGRhIGN1aSBwcmVsZXZhcmUgbnVvdmUgcmV2aXNpb25pLiIKKyJOb24gw6ggc3RhdG8gc3BlY2lmaWNhdG8gYWxjdW4gcmVwb3NpdG9yeSByZW1vdG8uIFNwZWNpZmljYSB1biBVUkwgbyBpbFxuIgorIm5vbWUgZGkgdW4gcmVtb3RvIGRhIGN1aSBkb3ZyYW5ubyBlc3NlcmUgcmVjdXBlcmF0ZSBsZSBudW92ZSByZXZpc2lvbmkuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6OTI3CisjOiBidWlsdGluL2ZldGNoLmM6MTczMAogbXNnaWQgIllvdSBuZWVkIHRvIHNwZWNpZnkgYSB0YWcgbmFtZS4iCiBtc2dzdHIgIkRldmkgc3BlY2lmaWNhcmUgaWwgbm9tZSBkaSB1biB0YWcuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6OTc5CisjOiBidWlsdGluL2ZldGNoLmM6MTc4MAorbXNnaWQgIk5lZ2F0aXZlIGRlcHRoIGluIC0tZGVlcGVuIGlzIG5vdCBzdXBwb3J0ZWQiCittc2dzdHIgIkxlIHByb2ZvbmRpdMOgIG5lZ2F0aXZlIGluIC0tZGVlcGVuIG5vbiBzb25vIHN1cHBvcnRhdGUiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzgyCittc2dpZCAiLS1kZWVwZW4gYW5kIC0tZGVwdGggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAibGUgb3B6aW9uaSAtLWRlZXBlbiBlIC0tZGVwdGggc29ubyBtdXR1YWxtZW50ZSBlc2NsdXNpdmUiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzg3Cittc2dpZCAiLS1kZXB0aCBhbmQgLS11bnNoYWxsb3cgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCittc2dzdHIgIi0tZGVwdGggZSAtLXVuc2hhbGxvdyBub24gcG9zc29ubyBlc3NlcmUgdXNhdGkgaW5zaWVtZS4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzg5Cittc2dpZCAiLS11bnNoYWxsb3cgb24gYSBjb21wbGV0ZSByZXBvc2l0b3J5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgIi0tdW5zaGFsbG93IHN1IHVuIHJlcG9zaXRvcnkgY29tcGxldG8gbm9uIGhhIHNlbnNvIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTgwNQogbXNnaWQgImZldGNoIC0tYWxsIGRvZXMgbm90IHRha2UgYSByZXBvc2l0b3J5IGFyZ3VtZW50IgotbXNnc3RyICJmZXRjaCAtLWFsbCBub24gcmljaGllZGUgaWwgcmVwb3NpdG9yeSBjb21lIGFyZ29tZW50byIKK21zZ3N0ciAiZmV0Y2ggLS1hbGwgbm9uIHJpY2hpZWRlIHVuIHJlcG9zaXRvcnkgY29tZSBhcmdvbWVudG8iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo5ODEKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODA3CiBtc2dpZCAiZmV0Y2ggLS1hbGwgZG9lcyBub3QgbWFrZSBzZW5zZSB3aXRoIHJlZnNwZWNzIgotbXNnc3RyICIiCittc2dzdHIgImZldGNoIC0tYWxsIG5vbiBoYSBzZW5zbyBjb24gZGVnbGkgc3BlY2lmaWNhdG9yaSByaWZlcmltZW50byIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjk5MgorIzogYnVpbHRpbi9mZXRjaC5jOjE4MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZW1vdGUgb3IgcmVtb3RlIGdyb3VwOiAlcyIKLW1zZ3N0ciAiIgorbXNnc3RyICJSZW1vdG8gbyBncnVwcG8gcmVtb3RpIG5vbiBlc2lzdGVudGU6ICVzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTAwMAorIzogYnVpbHRpbi9mZXRjaC5jOjE4MjMKIG1zZ2lkICJGZXRjaGluZyBhIGdyb3VwIGFuZCBzcGVjaWZ5aW5nIHJlZnNwZWNzIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIiIKKyJSZWN1cGVyYXJlIHVuIGdydXBwbyBlIHNwZWNpZmljYXJlIGdsaSBzcGVjaWZpY2F0b3JpIHJpZmVyaW1lbnRvIG5vbiBoYSBzZW5zbyIKIAotIzogYnVpbHRpbi9nYy5jOjYzCisjOiBidWlsdGluL2ZldGNoLmM6MTg0MQorbXNnaWQgIiIKKyItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdpdGggdGhlIHJlbW90ZSBjb25maWd1cmVkIGluIGV4dGVuc2lvbnMuIgorInBhcnRpYWxjbG9uZSIKK21zZ3N0ciAiIgorIi0tZmlsdGVyIHB1w7IgZXNzZXJlIHVzYXRvIHNvbG8gY29uIGlsIHJlbW90byBjb25maWd1cmF0byBuZWxsZSBlc3RlbnNpb25pLiIKKyJwYXJ0aWFsY2xvbmUiCisKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjE4Cittc2dpZCAiIgorImdpdCBmbXQtbWVyZ2UtbXNnIFstbSA8bWVzc2FnZT5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlIDxmaWxlPl0iCittc2dzdHIgIiIKKyJnaXQgZm10LW1lcmdlLW1zZyBbLW0gPG1lc3NhZ2dpbz5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlIDxmaWxlPl0iCisKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MQorbXNnaWQgInBvcHVsYXRlIGxvZyB3aXRoIGF0IG1vc3QgPG4+IGVudHJpZXMgZnJvbSBzaG9ydGxvZyIKK21zZ3N0ciAicG9wb2xhIGlsIHJlZ2lzdHJvIGNvbiBhbCBwacO5IDxuPiB2b2NpIGRlbCByZWdpc3RybyBicmV2ZSIKKworIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc0Cittc2dpZCAiYWxpYXMgZm9yIC0tbG9nIChkZXByZWNhdGVkKSIKK21zZ3N0ciAiYWxpYXMgZGkgLS1sb2cgKGRlcHJlY2F0bykiCisKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NworbXNnaWQgInRleHQiCittc2dzdHIgInRlc3RvIgorCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzgKK21zZ2lkICJ1c2UgPHRleHQ+IGFzIHN0YXJ0IG9mIG1lc3NhZ2UiCittc2dzdHIgInVzYSA8dGVzdG8+IGNvbWUgc3RyaW5nYSBpbml6aWFsZSBkZWwgbWVzc2FnZ2lvIgorCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzkKK21zZ2lkICJmaWxlIHRvIHJlYWQgZnJvbSIKK21zZ3N0ciAiZmlsZSBkYSBjdWkgbGVnZ2VyZSIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzoxMAorbXNnaWQgImdpdCBmb3ItZWFjaC1yZWYgWzxvcHRpb25zPl0gWzxwYXR0ZXJuPl0iCittc2dzdHIgImdpdCBmb3ItZWFjaC1yZWYgWzxvcHppb25pPl0gWzxwYXR0ZXJuPl0iCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MTEKK21zZ2lkICJnaXQgZm9yLWVhY2gtcmVmIFstLXBvaW50cy1hdCA8b2JqZWN0Pl0iCittc2dzdHIgImdpdCBmb3ItZWFjaC1yZWYgWy0tcG9pbnRzLWF0IDxvZ2dldHRvPl0iCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MTIKK21zZ2lkICJnaXQgZm9yLWVhY2gtcmVmIFsoLS1tZXJnZWQgfCAtLW5vLW1lcmdlZCkgWzxjb21taXQ+XV0iCittc2dzdHIgImdpdCBmb3ItZWFjaC1yZWYgWygtLW1lcmdlZCB8IC0tbm8tbWVyZ2VkKSBbPGNvbW1pdD5dXSIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzoxMworbXNnaWQgImdpdCBmb3ItZWFjaC1yZWYgWy0tY29udGFpbnMgWzxjb21taXQ+XV0gWy0tbm8tY29udGFpbnMgWzxjb21taXQ+XV0iCittc2dzdHIgImdpdCBmb3ItZWFjaC1yZWYgWy0tY29udGFpbnMgWzxjb21taXQ+XV0gWy0tbm8tY29udGFpbnMgWzxjb21taXQ+XV0iCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MjgKK21zZ2lkICJxdW90ZSBwbGFjZWhvbGRlcnMgc3VpdGFibHkgZm9yIHNoZWxscyIKK21zZ3N0ciAiIgorInJhY2NoaXVkaSBpIHNlZ25hcG9zdG8gZnJhIHZpcmdvbGV0dGUgaW4gbW9kbyBkYSBwb3RlcmxpIHVzYXJlIGluIHVuYSBzaGVsbCIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozMAorbXNnaWQgInF1b3RlIHBsYWNlaG9sZGVycyBzdWl0YWJseSBmb3IgcGVybCIKK21zZ3N0ciAiIgorInJhY2NoaXVkaSBpIHNlZ25hcG9zdG8gZnJhIHZpcmdvbGV0dGUgaW4gbW9kbyBkYSBwb3RlcmxpIHVzYXJlIGNvbiBQZXJsIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjMyCittc2dpZCAicXVvdGUgcGxhY2Vob2xkZXJzIHN1aXRhYmx5IGZvciBweXRob24iCittc2dzdHIgIiIKKyJyYWNjaGl1ZGkgaSBzZWduYXBvc3RvIGZyYSB2aXJnb2xldHRlIGluIG1vZG8gZGEgcG90ZXJsaSB1c2FyZSBjb24gUHl0aG9uIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM0Cittc2dpZCAicXVvdGUgcGxhY2Vob2xkZXJzIHN1aXRhYmx5IGZvciBUY2wiCittc2dzdHIgInJhY2NoaXVkaSBpIHNlZ25hcG9zdG8gZnJhIHZpcmdvbGV0dGUgaW4gbW9kbyBkYSBwb3RlcmxpIHVzYXJlIGNvbiBUY2wiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzcKK21zZ2lkICJzaG93IG9ubHkgPG4+IG1hdGNoZWQgcmVmcyIKK21zZ3N0ciAidmlzdWFsaXp6YSBzb2xvIDxuPiByaWZlcmltZW50aSBjb3JyaXNwb25kZW50aSIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOSBidWlsdGluL3RhZy5jOjQzOQorbXNnaWQgInJlc3BlY3QgZm9ybWF0IGNvbG9ycyIKK21zZ3N0ciAicmlzcGV0dGEgbGUgc3RyaW5naGUgZGkgZm9ybWF0byBwZXIgaSBjb2xvcmkiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIKK21zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggcG9pbnRzIGF0IHRoZSBnaXZlbiBvYmplY3QiCittc2dzdHIgInN0YW1wYSBzb2xvIGkgcmlmZXJpbWVudGkgY2hlIHB1bnRhbm8gYWxsJ29nZ2V0dG8gZGF0byIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NAorbXNnaWQgInByaW50IG9ubHkgcmVmcyB0aGF0IGFyZSBtZXJnZWQiCittc2dzdHIgInN0YW1wYSBzb2xvIGkgcmlmZXJpbWVudGkgc290dG9wb3N0aSBhIG1lcmdlIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ1Cittc2dpZCAicHJpbnQgb25seSByZWZzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCittc2dzdHIgInN0YW1wYSBzb2xvIGkgcmlmZXJpbWVudGkgbm9uIHNvdHRvcG9zdGkgYSBtZXJnZSIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NgorbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBjb250YWluIHRoZSBjb21taXQiCittc2dzdHIgInN0YW1wYSBzb2xvIGkgcmlmZXJpbWVudGkgY29udGVuZW50aSBpbCBjb21taXQiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDcKK21zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgorbXNnc3RyICJzdGFtcGEgc29sbyBpIHJpZmVyaW1lbnRpIGNoZSBub24gY29udGVuZ29ubyBpbCBjb21taXQiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY4IGJ1aWx0aW4vZnNjay5jOjE0NyBidWlsdGluL2ZzY2suYzoxNDgKK21zZ2lkICJ1bmtub3duIgorbXNnc3RyICJzY29ub3NjaXV0byIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gZXJyb3IgaW4gdHJlZSAwMWJmZGE6IDxtb3JlIGV4cGxhbmF0aW9uPgorIzogYnVpbHRpbi9mc2NrLmM6MTAwIGJ1aWx0aW4vZnNjay5jOjEyMAogIywgYy1mb3JtYXQKLW1zZ2lkICJJbnZhbGlkICVzOiAnJXMnIgotbXNnc3RyICIlcyBub24gdmFsaWRvOiAnJXMnIgorbXNnaWQgImVycm9yIGluICVzICVzOiAlcyIKK21zZ3N0ciAiZXJyb3JlIGluICVzICVzOiAlcyIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gd2FybmluZyBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FybmluZyBpbiAlcyAlczogJXMiCittc2dzdHIgImF2dmlzbyBpbiAlcyAlczogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE0MyBidWlsdGluL2ZzY2suYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiYnJva2VuIGxpbmsgZnJvbSAlN3MgJXMiCittc2dzdHIgImNvbGxlZ2FtZW50byByb3R0byBkYSAlN3MgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE1NQorbXNnaWQgIndyb25nIG9iamVjdCB0eXBlIGluIGxpbmsiCittc2dzdHIgInRpcG8gb2dnZXR0byBlcnJhdG8gbmVsIGNvbGxlZ2FtZW50byIKKworIzogYnVpbHRpbi9mc2NrLmM6MTcxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJicm9rZW4gbGluayBmcm9tICU3cyAlc1xuIgorIiAgICAgICAgICAgICAgdG8gJTdzICVzIgorbXNnc3RyICIiCisiY29sbGVnYW1lbnRvIHJvdHRvIGRhICU3cyAlc1xuIgorIiAgICAgICAgICAgICAgICAgICBhICU3cyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMgJXMiCittc2dzdHIgIiVzIG1hbmNhbnRlICVzIgorCisjOiBidWlsdGluL2ZzY2suYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWFjaGFibGUgJXMgJXMiCittc2dzdHIgIiVzIG5vbiByYWdnaXVuZ2liaWxlICVzIgorCisjOiBidWlsdGluL2ZzY2suYzozMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGFuZ2xpbmcgJXMgJXMiCittc2dzdHIgIiVzIHBlbmRlbnRlICVzIgorCisjOiBidWlsdGluL2ZzY2suYzozMzkKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGxvc3QtZm91bmQiCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSBsb3N0LWZvdW5kIgorCisjOiBidWlsdGluL2ZzY2suYzozNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSB0ZXJtaW5hcmUgJyVzJyIKKworIzogYnVpbHRpbi9mc2NrLmM6MzY3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzIgorbXNnc3RyICJDb250cm9sbG8gZGkgJXMgaW4gY29yc28iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQwNQorIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkgKCVkIG9iamVjdHMpIgorbXNnc3RyICJDb250cm9sbG8gY29ubmVzc2lvbmUgaW4gY29yc28gKCVkIG9nZ2V0dGkpIgorCisjOiBidWlsdGluL2ZzY2suYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgJXMiCittc2dzdHIgIkNvbnRyb2xsbyBkaSAlcyBpbiBjb3JzbyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDI5Cittc2dpZCAiYnJva2VuIGxpbmtzIgorbXNnc3RyICJjb2xsZWdhbWVudGkgcm90dGkiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJyb290ICVzIgorbXNnc3RyICJyYWRpY2UgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQ0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ0YWdnZWQgJXMgJXMgKCVzKSBpbiAlcyIKK21zZ3N0ciAiZXNlZ3VpdG8gdGFnIGRpICVzICVzICglcykgaW4gJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvcnJ1cHQgb3IgbWlzc2luZyIKK21zZ3N0ciAiJXM6IG9nZ2V0dG8gY29ycm90dG8gbyBtYW5jYW50ZSIKKworIzogYnVpbHRpbi9mc2NrLmM6NTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHJlZmxvZyBlbnRyeSAlcyIKK21zZ3N0ciAiJXM6IHZvY2UgcmVnaXN0cm8gcmlmZXJpbWVudGkgbm9uIHZhbGlkYTogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjUxNAorIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyByZWZsb2cgJXMtPiVzIgorbXNnc3RyICJDb250cm9sbG8gcmVnaXN0cm8gcmlmZXJpbWVudGkgJXMtPiVzIgorCisjOiBidWlsdGluL2ZzY2suYzo1NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyICVzIgorbXNnc3RyICIlczogcHVudGF0b3JlIFNIQTEgbm9uIHZhbGlkbzogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjU1NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogbm90IGEgY29tbWl0IgorbXNnc3RyICIlczogbm9uIMOoIHVuIGNvbW1pdCIKKworIzogYnVpbHRpbi9mc2NrLmM6NjA5Cittc2dpZCAibm90aWNlOiBObyBkZWZhdWx0IHJlZmVyZW5jZXMiCittc2dzdHIgImF2dmlzbzogbmVzc3VuIHJpZmVyaW1lbnRvIHByZWRlZmluaXRvIgorCisjOiBidWlsdGluL2ZzY2suYzo2MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3Npbmc6ICVzIgorbXNnc3RyICIlczogb2dnZXR0byBjb3Jyb3R0byBvIG1hbmNhbnRlOiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgY291bGQgbm90IGJlIHBhcnNlZDogJXMiCittc2dzdHIgIiVzOiBpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGwnb2dnZXR0bzogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY1NworIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgc2hhMSBmaWxlOiAlcyIKK21zZ3N0ciAiZmlsZSBTSEExIG5vbiB2YWxpZG86ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo2NzIKK21zZ2lkICJDaGVja2luZyBvYmplY3QgZGlyZWN0b3J5IgorbXNnc3RyICJDb250cm9sbG8gZGlyZWN0b3J5IG9nZ2V0dGkgaW4gY29yc28iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY3NQorbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcmllcyIKK21zZ3N0ciAiQ29udHJvbGxvIGRpcmVjdG9yeSBvZ2dldHRpIGluIGNvcnNvIgorCisjOiBidWlsdGluL2ZzY2suYzo2OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgbGluayIKK21zZ3N0ciAiQ29udHJvbGxvIGNvbGxlZ2FtZW50byAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6Njk1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkICVzIgorbXNnc3RyICIlcyBub24gdmFsaWRvIgorCisjOiBidWlsdGluL2ZzY2suYzo3MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcG9pbnRzIHRvIHNvbWV0aGluZyBzdHJhbmdlICglcykiCittc2dzdHIgIiVzIHB1bnRhIGEgcXVhbGNvc2EgZGkgc3RyYW5vICglcykiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcwOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGV0YWNoZWQgSEVBRCBwb2ludHMgYXQgbm90aGluZyIKK21zZ3N0ciAiJXM6IGwnSEVBRCBzY29sbGVnYXRvIG5vbiBwdW50YSBhIG5pZW50ZSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGljZTogJXMgcG9pbnRzIHRvIGFuIHVuYm9ybiBicmFuY2ggKCVzKSIKK21zZ3N0ciAiYXZ2aXNvOiAlcyBwdW50YSBhIHVuIGJyYW5jaCBub24gbmF0byAoJXMpIgorCisjOiBidWlsdGluL2ZzY2suYzo3MjQKK21zZ2lkICJDaGVja2luZyBjYWNoZSB0cmVlIgorbXNnc3RyICJDb250cm9sbG8gY2FjaGUgYWxiZXJvIGluIGNvcnNvIgorCisjOiBidWlsdGluL2ZzY2suYzo3MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyIGluIGNhY2hlLXRyZWUiCittc2dzdHIgIiVzOiBwdW50YXRvcmUgU0hBMSBub24gdmFsaWRvIG5lbGxhIGNhY2hlIGFsYmVyaSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzM4Cittc2dpZCAibm9uLXRyZWUgaW4gY2FjaGUtdHJlZSIKK21zZ3N0ciAib2dnZXR0byBub24gYWxiZXJvIG5lbGxhIGNhY2hlIGFsYmVyaSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzY5Cittc2dpZCAiZ2l0IGZzY2sgWzxvcHRpb25zPl0gWzxvYmplY3Q+Li4uXSIKK21zZ3N0ciAiZ2l0IGZzY2sgWzxvcHppb25pPl0gWzxvZ2dldHRvPi4uLl0iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc3NQorbXNnaWQgInNob3cgdW5yZWFjaGFibGUgb2JqZWN0cyIKK21zZ3N0ciAidmlzdWFsaXp6YSBvZ2dldHRpIG5vbiByYWdnaXVuZ2liaWxpIgorCisjOiBidWlsdGluL2ZzY2suYzo3NzYKK21zZ2lkICJzaG93IGRhbmdsaW5nIG9iamVjdHMiCittc2dzdHIgInZpc3VhbGl6emEgb2dnZXR0aSBwZW5kZW50aSIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzc3Cittc2dpZCAicmVwb3J0IHRhZ3MiCittc2dzdHIgInNlZ25hbGEgaSB0YWciCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc3OAorbXNnaWQgInJlcG9ydCByb290IG5vZGVzIgorbXNnc3RyICJzZWduYWxhIGkgbm9kaSByYWRpY2UiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc3OQorbXNnaWQgIm1ha2UgaW5kZXggb2JqZWN0cyBoZWFkIG5vZGVzIgorbXNnc3RyICJyZW5kaSBnbGkgb2dnZXR0aSBpbmRpY2Ugbm9kaSBoZWFkIgorCisjOiBidWlsdGluL2ZzY2suYzo3ODAKK21zZ2lkICJtYWtlIHJlZmxvZ3MgaGVhZCBub2RlcyAoZGVmYXVsdCkiCittc2dzdHIgInJlbmRpIGkgcmVnaXN0cmkgZGVpIHJpZmVyaW1lbnRpIG5vZGkgaGVhZCAoaW1wb3N0YXppb25lIHByZWRlZmluaXRhKSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzgxCittc2dpZCAiYWxzbyBjb25zaWRlciBwYWNrcyBhbmQgYWx0ZXJuYXRlIG9iamVjdHMiCittc2dzdHIgImNvbnNpZGVyYSBhbmNoZSBpIHBhY2sgZSBnbGkgb2dnZXR0aSBhbHRlcm5hdGl2aSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzgyCittc2dpZCAiY2hlY2sgb25seSBjb25uZWN0aXZpdHkiCittc2dzdHIgImNvbnRyb2xsYSBzb2xvIGxhIGNvbm5lc3Npb25lIgorCisjOiBidWlsdGluL2ZzY2suYzo3ODMKK21zZ2lkICJlbmFibGUgbW9yZSBzdHJpY3QgY2hlY2tpbmciCittc2dzdHIgImFiaWxpdGEgY29udHJvbGxpIHBpw7kgcmVzdHJpdHRpdmkiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NQorbXNnaWQgIndyaXRlIGRhbmdsaW5nIG9iamVjdHMgaW4gLmdpdC9sb3N0LWZvdW5kIgorbXNnc3RyICJzY3Jpdmkgb2dnZXR0aSBwZW5kZW50aSBpbiAuZ2l0L2xvc3QtZm91bmQiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NiBidWlsdGluL3BydW5lLmM6MTMyCittc2dpZCAic2hvdyBwcm9ncmVzcyIKK21zZ3N0ciAidmlzdWFsaXp6YSBsJ2F2YW56YW1lbnRvIgorCisjOiBidWlsdGluL2ZzY2suYzo3ODcKK21zZ2lkICJzaG93IHZlcmJvc2UgbmFtZXMgZm9yIHJlYWNoYWJsZSBvYmplY3RzIgorbXNnc3RyICJ2aXN1YWxpenphIG5vbWkgZGV0dGFnbGlhdGkgcGVyIGdsaSBvZ2dldHRpIHJhZ2dpdW5naWJpbGkiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjg0NiBidWlsdGluL2luZGV4LXBhY2suYzoyMjUKK21zZ2lkICJDaGVja2luZyBvYmplY3RzIgorbXNnc3RyICJDb250cm9sbG8gb2dnZXR0aSBpbiBjb3JzbyIKKworIzogYnVpbHRpbi9mc2NrLmM6ODc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgbWlzc2luZyIKK21zZ3N0ciAiJXM6IG9nZ2V0dG8gbWFuY2FudGUiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjg4NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhcmFtZXRlcjogZXhwZWN0ZWQgc2hhMSwgZ290ICclcyciCittc2dzdHIgInBhcmFtZXRybyBub24gdmFsaWRvOiBhdHRlc28gU0hBMSwgcHJlc2VudGUgJyVzJyIKKworIzogYnVpbHRpbi9nYy5jOjM1Cittc2dpZCAiZ2l0IGdjIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgZ2MgWzxvcHppb25pPl0iCiAKICM6IGJ1aWx0aW4vZ2MuYzo5MAogIywgYy1mb3JtYXQKLW1zZ2lkICJpbnNhbmVseSBsb25nIG9iamVjdCBkaXJlY3RvcnkgJS4qcyIKLW1zZ3N0ciAiIgorbXNnaWQgIkZhaWxlZCB0byBmc3RhdCAlczogJXMiCittc2dzdHIgImZzdGF0IGRpICVzIG5vbiByaXVzY2l0bzogJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzoyMjEKKyM6IGJ1aWx0aW4vZ2MuYzoxMjYKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQXV0byBwYWNraW5nIHRoZSByZXBvc2l0b3J5IGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgotbXNnc3RyICIiCittc2dpZCAiZmFpbGVkIHRvIHBhcnNlICclcycgdmFsdWUgJyVzJyIKK21zZ3N0ciAiYW5hbGlzaSBkZWxsJ29wemlvbmUgJyVzJyBjb24gdmFsb3JlICclcycgbm9uIHJpdXNjaXRhIgogCi0jOiBidWlsdGluL2djLmM6MjI0CisjOiBidWlsdGluL2djLmM6NDc1IGJ1aWx0aW4vaW5pdC1kYi5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0ICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGxvIHN0YXQgZGkgJyVzJyIKKworIzogYnVpbHRpbi9nYy5jOjQ4NCBidWlsdGluL25vdGVzLmM6MjQwIGJ1aWx0aW4vdGFnLmM6NTI5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgJyVzJyIKKworIzogYnVpbHRpbi9nYy5jOjQ5MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCi0iQXV0byBwYWNraW5nIHRoZSByZXBvc2l0b3J5IGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLiBZb3UgbWF5IGFsc29cbiIKLSJydW4gXCJnaXQgZ2NcIiBtYW51YWxseS4gU2VlIFwiZ2l0IGhlbHAgZ2NcIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cbiIKKyJUaGUgbGFzdCBnYyBydW4gcmVwb3J0ZWQgdGhlIGZvbGxvd2luZy4gUGxlYXNlIGNvcnJlY3QgdGhlIHJvb3QgY2F1c2VcbiIKKyJhbmQgcmVtb3ZlICVzLlxuIgorIkF1dG9tYXRpYyBjbGVhbnVwIHdpbGwgbm90IGJlIHBlcmZvcm1lZCB1bnRpbCB0aGUgZmlsZSBpcyByZW1vdmVkLlxuIgorIlxuIgorIiVzIgogbXNnc3RyICIiCisiTCd1bHRpbWEgZXNlY3V6aW9uZSBkaSBnYyBoYSBzZWduYWxhdG8gcXVhbnRvIHNlZ3VlLiBDb3JyZWdnaSBsYSBjYXVzYVxuIgorImFsbGEgcmFkaWNlIGVkIGVsaW1pbmEgJXMuXG4iCisiTCdvcGVyYXppb25lIGRpIHB1bGl6aWEgYXV0b21hdGljYSBub24gc2Fyw6AgZXNlZ3VpdGEgZmlubyBhbGwnZWxpbWluYXppb25lXG4iCisiZGVsIGZpbGUuXG4iCisiXG4iCisiJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzoyNTEKKyM6IGJ1aWx0aW4vZ2MuYzo1MzkKK21zZ2lkICJwcnVuZSB1bnJlZmVyZW5jZWQgb2JqZWN0cyIKK21zZ3N0ciAiZWxpbWluYSBvZ2dldHRpIG5vbiByZWZlcmVuemlhdGkiCisKKyM6IGJ1aWx0aW4vZ2MuYzo1NDEKK21zZ2lkICJiZSBtb3JlIHRob3JvdWdoIChpbmNyZWFzZWQgcnVudGltZSkiCittc2dzdHIgInNpaSBwacO5IGFjY3VyYXRvICh0ZW1waSBkaSBlc2VjdXppb25lIG1hZ2dpb3JpKSIKKworIzogYnVpbHRpbi9nYy5jOjU0MgorbXNnaWQgImVuYWJsZSBhdXRvLWdjIG1vZGUiCittc2dzdHIgImFiaWxpdGEgbW9kYWxpdMOgIGdhcmJhZ2UgY29sbGVjdG9yIGF1dG9tYXRpY2EiCisKKyM6IGJ1aWx0aW4vZ2MuYzo1NDUKK21zZ2lkICJmb3JjZSBydW5uaW5nIGdjIGV2ZW4gaWYgdGhlcmUgbWF5IGJlIGFub3RoZXIgZ2MgcnVubmluZyIKK21zZ3N0ciAiIgorImZvcnphIGwnZXNlY3V6aW9uZSBkZWwgZ2FyYmFnZSBjb2xsZWN0b3IgYW5jaGUgbmVsIGNhc28gaW4gY3VpIHZlIG5lICIKKyJwb3RyZWJiZSBlc3NlcmUgdW4gYWx0cm8gaW4gZXNlY3V6aW9uZSIKKworIzogYnVpbHRpbi9nYy5jOjU0OAorbXNnaWQgInJlcGFjayBhbGwgb3RoZXIgcGFja3MgZXhjZXB0IHRoZSBsYXJnZXN0IHBhY2siCittc2dzdHIgIiIKKyJlc2VndWkgaWwgcmVwYWNrIGRpIHR1dHRpIGdsaSBhbHRyaSBwYWNrIGFkIGVjY2V6aW9uZSBkaSBxdWVsbG8gcGnDuSBncmFuZGUiCisKKyM6IGJ1aWx0aW4vZ2MuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIGdjLmxvZ2V4cGlyeSB2YWx1ZSAlcyIKK21zZ3N0ciAiYW5hbGlzaSBkZWwgdmFsb3JlICVzIGRpIGdjLmxvZ2V4cGlyeSBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vZ2MuYzo1NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIHBydW5lIGV4cGlyeSB2YWx1ZSAlcyIKK21zZ3N0ciAiYW5hbGlzaSBkZWwgdmFsb3JlICVzIHBlciBsYSBzY2FkZW56YSBkZWxsZSBlbGltaW5hemlvbmkgbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL2djLmM6NTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dG8gcGFja2luZyB0aGUgcmVwb3NpdG9yeSBpbiBiYWNrZ3JvdW5kIGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgorbXNnc3RyICIiCisiQ29tcHJpbW8gaWwgcmVwb3NpdG9yeSBpbiBiYWNrZ3JvdW5kIHBlciBvdHRlbmVyZSBsZSBtaWdsaW9yaSBwcmVzdGF6aW9uaS5cbiIKKworIzogYnVpbHRpbi9nYy5jOjU5OAorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRvIHBhY2tpbmcgdGhlIHJlcG9zaXRvcnkgZm9yIG9wdGltdW0gcGVyZm9ybWFuY2UuXG4iCittc2dzdHIgIkNvbXByaW1vIGlsIHJlcG9zaXRvcnkgcGVyIG90dGVuZXJlIGxlIG1pZ2xpb3JpIHByZXN0YXppb25pLlxuIgorCisjOiBidWlsdGluL2djLmM6NTk5CisjLCBjLWZvcm1hdAorbXNnaWQgIlNlZSBcImdpdCBoZWxwIGdjXCIgZm9yIG1hbnVhbCBob3VzZWtlZXBpbmcuXG4iCittc2dzdHIgIlZlZGkgXCJnaXQgaGVscCBnY1wiIHBlciBsZSBvcGVyYXppb25pIGRpIG1hbnV0ZW56aW9uZSBtYW51YWxpLlxuIgorCisjOiBidWlsdGluL2djLmM6NjM5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJnYyBpcyBhbHJlYWR5IHJ1bm5pbmcgb24gbWFjaGluZSAnJXMnIHBpZCAlPFBSSXVNQVg+ICh1c2UgLS1mb3JjZSBpZiBub3QpIgorbXNnc3RyICIiCisiZ2Mgw6ggZ2nDoCBpbiBlc2VjdXppb25lIHN1bCBjb21wdXRlciAnJXMnIGNvbiBQSUQgJTxQUkl1TUFYPiAodXNhIC0tZm9yY2Ugc2UgIgorIm5vbiBsbyDDqCkiCisKKyM6IGJ1aWx0aW4vZ2MuYzo2OTQKIG1zZ2lkICIiCiAiVGhlcmUgYXJlIHRvbyBtYW55IHVucmVhY2hhYmxlIGxvb3NlIG9iamVjdHM7IHJ1biAnZ2l0IHBydW5lJyB0byByZW1vdmUgdGhlbS4iCiBtc2dzdHIgIiIKKyJDaSBzb25vIHRyb3BwaSBvZ2dldHRpIHNwYXJzaSBub24gcmFnZ2l1bmdpYmlsaTsgZXNlZ3VpICdnaXQgcHJ1bmUnIHBlciAiCisiZWxpbWluYXJsaS4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjIxNgorIzogYnVpbHRpbi9ncmVwLmM6MzAKK21zZ2lkICJnaXQgZ3JlcCBbPG9wdGlvbnM+XSBbLWVdIDxwYXR0ZXJuPiBbPHJldj4uLi5dIFtbLS1dIDxwYXRoPi4uLl0iCittc2dzdHIgIiIKKyJnaXQgZ3JlcCBbPG9wemlvbmk+XSBbLWVdIDxwYXR0ZXJuPiBbPHJldmlzaW9uZT4uLi5dIFtbLS1dIDxwZXJjb3Jzbz4uLi5dIgorCisjOiBidWlsdGluL2dyZXAuYzoyMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ3JlcDogZmFpbGVkIHRvIGNyZWF0ZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJncmVwOiBjcmVhemlvbmUgZGVsIHRocmVhZCBub24gcml1c2NpdGE6ICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo0MDIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjI3OQogIywgYy1mb3JtYXQKLW1zZ2lkICJGYWlsZWQgdG8gY2hkaXI6ICVzIgotbXNnc3RyICIiCittc2dpZCAiaW52YWxpZCBudW1iZXIgb2YgdGhyZWFkcyBzcGVjaWZpZWQgKCVkKSBmb3IgJXMiCittc2dzdHIgInNwZWNpZmljYXRvIG51bWVybyBub24gdmFsaWRvIGRpIHRocmVhZCAoJWQpIHBlciAlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6NDc4IGJ1aWx0aW4vZ3JlcC5jOjUxMgorIy4gVFJBTlNMQVRPUlM6ICVzIGlzIHRoZSBjb25maWd1cmF0aW9uCisjLiB2YXJpYWJsZSBmb3IgdHdlYWtpbmcgdGhyZWFkcywgY3VycmVudGx5CisjLiBncmVwLnRocmVhZHMKKyMuCisjOiBidWlsdGluL2dyZXAuYzoyODcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzOCBidWlsdGluL2luZGV4LXBhY2suYzoxNzMxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gdGhyZWFkcyBzdXBwb3J0LCBpZ25vcmluZyAlcyIKK21zZ3N0ciAibm9uIHZpIMOoIHN1cHBvcnRvIHBlciBpIHRocmVhZCwgaWdub3JvICVzIgorCisjOiBidWlsdGluL2dyZXAuYzo0NTMgYnVpbHRpbi9ncmVwLmM6NTc4IGJ1aWx0aW4vZ3JlcC5jOjYxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCB0cmVlICglcykiCiBtc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaWwgdHJlZSAoJXMpIgogCi0jOiBidWlsdGluL2dyZXAuYzo1MjYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjYzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ3JlcCBmcm9tIG9iamVjdCBvZiB0eXBlICVzIgotbXNnc3RyICIiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGdyZXAgc3UgdW4gb2dnZXR0byBkaSB0aXBvICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo1ODQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjcwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJzd2l0Y2ggYCVjJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgogbXNnc3RyICJzd2l0Y2ggJyVjJyByaWNoaWVkZSB1biB2YWxvcmUgbnVtZXJpY28iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjYwMQotIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3Qgb3BlbiAnJXMnIgotbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgJyVzJyIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwMworbXNnaWQgInNlYXJjaCBpbiBpbmRleCBpbnN0ZWFkIG9mIGluIHRoZSB3b3JrIHRyZWUiCittc2dzdHIgImNlcmNhIG5lbGwnaW5kZXggYW56aWNow6kgbmVsbCdhbGJlcm8gZGkgbGF2b3JvIgorCisjOiBidWlsdGluL2dyZXAuYzo4MDUKK21zZ2lkICJmaW5kIGluIGNvbnRlbnRzIG5vdCBtYW5hZ2VkIGJ5IGdpdCIKK21zZ3N0ciAibGEgcmljZXJjYSBuZWkgY29udGVudXRpIG5vbiDDqCBnZXN0aXRhIGRhIEdpdCIKKworIzogYnVpbHRpbi9ncmVwLmM6ODA3Cittc2dpZCAic2VhcmNoIGluIGJvdGggdHJhY2tlZCBhbmQgdW50cmFja2VkIGZpbGVzIgorbXNnc3RyICJjZXJjYSBzaWEgbmVpIGZpbGUgdHJhY2NpYXRpIHNpYSBpbiBxdWVsbGkgbm9uIHRyYWNjaWF0aSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODA5Cittc2dpZCAiaWdub3JlIGZpbGVzIHNwZWNpZmllZCB2aWEgJy5naXRpZ25vcmUnIgorbXNnc3RyICJpZ25vcmEgaSBmaWxlIHNwZWNpZmljYXRpIGluICcuZ2l0aWdub3JlJyIKKworIzogYnVpbHRpbi9ncmVwLmM6ODExCittc2dpZCAicmVjdXJzaXZlbHkgc2VhcmNoIGluIGVhY2ggc3VibW9kdWxlIgorbXNnc3RyICJjZXJjYSByaWNvcnNpdmFtZW50ZSBpbiBvZ25pIHNvdHRvbW9kdWxvIgorCisjOiBidWlsdGluL2dyZXAuYzo4MTQKK21zZ2lkICJzaG93IG5vbi1tYXRjaGluZyBsaW5lcyIKK21zZ3N0ciAidmlzdWFsaXp6YSBsZSByaWdoZSBub24gY29ycmlzcG9uZGVudGkiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxNgorbXNnaWQgImNhc2UgaW5zZW5zaXRpdmUgbWF0Y2hpbmciCittc2dzdHIgInJpY2VyY2EgY29ycmlzcG9uZGVuemUgc2VuemEgZGlmZmVyZW56ZSBtYWl1c2NvbGUvbWludXNjb2xlIgorCisjOiBidWlsdGluL2dyZXAuYzo4MTgKK21zZ2lkICJtYXRjaCBwYXR0ZXJucyBvbmx5IGF0IHdvcmQgYm91bmRhcmllcyIKK21zZ3N0ciAiY2VyY2EgY29ycmlzcG9uZGVuemUgYWkgcGF0dGVybiBzb2xvIGEgaW5pemlvL2ZpbmUgcGFyb2xhIgorCisjOiBidWlsdGluL2dyZXAuYzo4MjAKK21zZ2lkICJwcm9jZXNzIGJpbmFyeSBmaWxlcyBhcyB0ZXh0IgorbXNnc3RyICJlbGFib3JhIGkgZmlsZSBiaW5hcmkgY29tZSB0ZXN0dWFsaSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODIyCittc2dpZCAiZG9uJ3QgbWF0Y2ggcGF0dGVybnMgaW4gYmluYXJ5IGZpbGVzIgorbXNnc3RyICJub24gY2VyY2FyZSBjb3JyaXNwb25kZW56ZSBhaSBwYXR0ZXJuIG5laSBmaWxlIGJpbmFyaSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODI1Cittc2dpZCAicHJvY2VzcyBiaW5hcnkgZmlsZXMgd2l0aCB0ZXh0Y29udiBmaWx0ZXJzIgorbXNnc3RyICJlbGFib3JhIGkgZmlsZSBiaW5hcmkgY29uIGZpbHRyaSBkaSBjb252ZXJzaW9uZSBpbiB0ZXN0byIKKworIzogYnVpbHRpbi9ncmVwLmM6ODI3Cittc2dpZCAic2VhcmNoIGluIHN1YmRpcmVjdG9yaWVzIChkZWZhdWx0KSIKK21zZ3N0ciAiY2VyY2EgbmVsbGUgc290dG9kaXJlY3RvcnkgKGltcG9zdGF6aW9uZSBwcmVkZWZpbml0YSkiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyOQorbXNnaWQgImRlc2NlbmQgYXQgbW9zdCA8ZGVwdGg+IGxldmVscyIKK21zZ3N0ciAic2NlbmRpIGFsIHBpw7kgZGkgPHByb2ZvbmRpdMOgPiBsaXZlbGxpIgorCisjOiBidWlsdGluL2dyZXAuYzo4MzMKK21zZ2lkICJ1c2UgZXh0ZW5kZWQgUE9TSVggcmVndWxhciBleHByZXNzaW9ucyIKK21zZ3N0ciAidXNhIGVzcHJlc3Npb25pIHJlZ29sYXJpIFBPU0lYIGVzdGVzZSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODM2Cittc2dpZCAidXNlIGJhc2ljIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbnMgKGRlZmF1bHQpIgorbXNnc3RyICJ1c2EgZXNwcmVzc2lvbmkgcmVnb2xhcmkgUE9TSVggZGkgYmFzZSAoaW1wb3N0YXppb25lIHByZWRlZmluaXRhKSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODM5Cittc2dpZCAiaW50ZXJwcmV0IHBhdHRlcm5zIGFzIGZpeGVkIHN0cmluZ3MiCittc2dzdHIgImludGVycHJldGEgaSBwYXR0ZXJuIGNvbWUgc3RyaW5naGUgZmlzc2UiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0MgorbXNnaWQgInVzZSBQZXJsLWNvbXBhdGlibGUgcmVndWxhciBleHByZXNzaW9ucyIKK21zZ3N0ciAidXNhIGVzcHJlc3Npb25pIHJlZ29sYXJpIGNvbXBhdGliaWxpIGNvbiBQZXJsIgorCisjOiBidWlsdGluL2dyZXAuYzo4NDUKK21zZ2lkICJzaG93IGxpbmUgbnVtYmVycyIKK21zZ3N0ciAidmlzdWFsaXp6YSBudW1lcmkgZGkgcmlnYSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODQ2Cittc2dpZCAic2hvdyBjb2x1bW4gbnVtYmVyIG9mIGZpcnN0IG1hdGNoIgorbXNnc3RyICJ2aXN1YWxpenphIGlsIG51bWVybyBkaSBjb2xvbm5hIGRlbGxhIHByaW1hIGNvcnJpc3BvbmRlbnphIgorCisjOiBidWlsdGluL2dyZXAuYzo4NDcKK21zZ2lkICJkb24ndCBzaG93IGZpbGVuYW1lcyIKK21zZ3N0ciAibm9uIHZpc3VhbGl6emFyZSBpIG5vbWkgZmlsZSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODQ4Cittc2dpZCAic2hvdyBmaWxlbmFtZXMiCittc2dzdHIgInZpc3VhbGl6emEgaSBub21pIGZpbGUiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1MAorbXNnaWQgInNob3cgZmlsZW5hbWVzIHJlbGF0aXZlIHRvIHRvcCBkaXJlY3RvcnkiCittc2dzdHIgInZpc3VhbGl6emEgaSBub21pIGZpbGUgcmVsYXRpdmkgYWxsYSBkaXJlY3RvcnkgZGkgcHJpbW8gbGl2ZWxsbyIKKworIzogYnVpbHRpbi9ncmVwLmM6ODUyCittc2dpZCAic2hvdyBvbmx5IGZpbGVuYW1lcyBpbnN0ZWFkIG9mIG1hdGNoaW5nIGxpbmVzIgorbXNnc3RyICJ2aXN1YWxpenphIHNvbG8gaSBub21pIGZpbGUgYW56aWNow6kgbGUgcmlnaGUgY29ycmlzcG9uZGVudGkiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1NAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZmlsZXMtd2l0aC1tYXRjaGVzIgorbXNnc3RyICJzaW5vbmltbyBkaSAtLWZpbGVzLXdpdGgtbWF0Y2hlcyIKKworIzogYnVpbHRpbi9ncmVwLmM6ODU3Cittc2dpZCAic2hvdyBvbmx5IHRoZSBuYW1lcyBvZiBmaWxlcyB3aXRob3V0IG1hdGNoIgorbXNnc3RyICJ2aXN1YWxpenphIHNvbG8gaSBub21pIGRlaSBmaWxlIG5vbiBjb3JyaXNwb25kZW50aSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODU5Cittc2dpZCAicHJpbnQgTlVMIGFmdGVyIGZpbGVuYW1lcyIKK21zZ3N0ciAic3RhbXBhIE5VTCBkb3BvIGkgbm9taSBmaWxlIgorCisjOiBidWlsdGluL2dyZXAuYzo4NjIKK21zZ2lkICJzaG93IG9ubHkgbWF0Y2hpbmcgcGFydHMgb2YgYSBsaW5lIgorbXNnc3RyICJ2aXN1YWxpenphIHNvbG8gbGUgcGFydGkgY29ycmlzcG9uZGVudGkgZGkgdW5hIHJpZ2EiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2NAorbXNnaWQgInNob3cgdGhlIG51bWJlciBvZiBtYXRjaGVzIGluc3RlYWQgb2YgbWF0Y2hpbmcgbGluZXMiCittc2dzdHIgInZpc3VhbGl6emEgaWwgbnVtZXJvIGRpIGNvcnJpc3BvbmRlbnplIGFuemljaMOpIGxlIHJpZ2hlIGNvcnJpc3BvbmRlbnRpIgorCisjOiBidWlsdGluL2dyZXAuYzo4NjUKK21zZ2lkICJoaWdobGlnaHQgbWF0Y2hlcyIKK21zZ3N0ciAiZXZpZGVuemlhIGNvcnJpc3BvbmRlbnplIgorCisjOiBidWlsdGluL2dyZXAuYzo4NjcKK21zZ2lkICJwcmludCBlbXB0eSBsaW5lIGJldHdlZW4gbWF0Y2hlcyBmcm9tIGRpZmZlcmVudCBmaWxlcyIKK21zZ3N0ciAic3RhbXBhIHVuYSByaWdhIHZ1b3RhIGZyYSBsZSBjb3JyaXNwb25kZW56ZSBpbiBmaWxlIGRpZmZlcmVudGkiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2OQorbXNnaWQgInNob3cgZmlsZW5hbWUgb25seSBvbmNlIGFib3ZlIG1hdGNoZXMgZnJvbSBzYW1lIGZpbGUiCittc2dzdHIgIiIKKyJ2aXN1YWxpenphIGlsIG5vbWUgZmlsZSBzb2xvIHVuYSB2b2x0YSBwcmltYSBkZWxsZSBjb3JyaXNwb25kZW56ZSBuZWxsbyAiCisic3Rlc3NvIGZpbGUiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3MgorbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYmVmb3JlIGFuZCBhZnRlciBtYXRjaGVzIgorbXNnc3RyICJ2aXN1YWxpenphIDxuPiByaWdoZSBkaSBjb250ZXN0byBwcmltYSBlIGRvcG8gbGUgY29ycmlzcG9uZGVuemUiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3NQorbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYmVmb3JlIG1hdGNoZXMiCittc2dzdHIgInZpc3VhbGl6emEgPG4+IHJpZ2hlIGRpIGNvbnRlc3RvIHByaW1hIGRlbGxlIGNvcnJpc3BvbmRlbnplIgorCisjOiBidWlsdGluL2dyZXAuYzo4NzcKK21zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGFmdGVyIG1hdGNoZXMiCittc2dzdHIgInZpc3VhbGl6emEgPG4+IHJpZ2hlIGRpIGNvbnRlc3RvIGRvcG8gbGUgY29ycmlzcG9uZGVuemUiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3OQorbXNnaWQgInVzZSA8bj4gd29ya2VyIHRocmVhZHMiCittc2dzdHIgInVzYSA8bj4gdGhyZWFkIGRpIGxhdm9ybyIKKworIzogYnVpbHRpbi9ncmVwLmM6ODgwCittc2dpZCAic2hvcnRjdXQgZm9yIC1DIE5VTSIKK21zZ3N0ciAic2NvcmNpYXRvaWEgcGVyIC1DIE5VTSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODgzCittc2dpZCAic2hvdyBhIGxpbmUgd2l0aCB0aGUgZnVuY3Rpb24gbmFtZSBiZWZvcmUgbWF0Y2hlcyIKK21zZ3N0ciAidmlzdWFsaXp6YSB1bmEgcmlnYSBjb24gaWwgbm9tZSBmdW56aW9uZSBwcmltYSBkZWxsZSBjb3JyaXNwb25kZW56ZSIKIAogIzogYnVpbHRpbi9ncmVwLmM6ODg1Ci1tc2dpZCAibm8gcGF0dGVybiBnaXZlbi4iCi1tc2dzdHIgIm5lc3N1biBtb2RlbGxvIHNwZWNpZmljYXRvLiIKK21zZ2lkICJzaG93IHRoZSBzdXJyb3VuZGluZyBmdW5jdGlvbiIKK21zZ3N0ciAidmlzdWFsaXp6YSBsYSBmdW56aW9uZSBjaXJjb3N0YW50ZSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODk5CisjOiBidWlsdGluL2dyZXAuYzo4ODgKK21zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gZmlsZSIKK21zZ3N0ciAibGVnZ2kgbGUgY29ycmlzcG9uZGVuemUgZGEgdW4gZmlsZSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODkwCittc2dpZCAibWF0Y2ggPHBhdHRlcm4+IgorbXNnc3RyICJjZXJjYSBjb3JyaXNwb25kZW56ZSBjb24gPHBhdHRlcm4+IgorCisjOiBidWlsdGluL2dyZXAuYzo4OTIKK21zZ2lkICJjb21iaW5lIHBhdHRlcm5zIHNwZWNpZmllZCB3aXRoIC1lIgorbXNnc3RyICJjb21iaW5hIGkgcGF0dGVybiBzcGVjaWZpY2F0aSBjb24gLWUiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwNAorbXNnaWQgImluZGljYXRlIGhpdCB3aXRoIGV4aXQgc3RhdHVzIHdpdGhvdXQgb3V0cHV0IgorbXNnc3RyICIiCisic2VnbmFsYSB1bmEgY29ycmlzcG9uZGVuemEgY29uIGlsIGNvZGljZSBkaSB1c2NpdGEgc2VuemEgZW1ldHRlcmUgb3V0cHV0IgorCisjOiBidWlsdGluL2dyZXAuYzo5MDYKK21zZ2lkICJzaG93IG9ubHkgbWF0Y2hlcyBmcm9tIGZpbGVzIHRoYXQgbWF0Y2ggYWxsIHBhdHRlcm5zIgorbXNnc3RyICIiCisidmlzdWFsaXp6YSBzb2xvIGxlIGNvcnJpc3BvbmRlbnplIG5laSBmaWxlIGluIGN1aSB2aSBzb25vIGNvcnJpc3BvbmRlbnplIHBlciAiCisidHV0dGkgaSBwYXR0ZXJuIgorCisjOiBidWlsdGluL2dyZXAuYzo5MDgKK21zZ2lkICJzaG93IHBhcnNlIHRyZWUgZm9yIGdyZXAgZXhwcmVzc2lvbiIKK21zZ3N0ciAidmlzdWFsaXp6YSBsJ2FsYmVybyBkaSBhbmFsaXNpIHBlciBsJ2VzcHJlc3Npb25lIGdyZXAiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxMgorbXNnaWQgInBhZ2VyIgorbXNnc3RyICJwYWdlciIKKworIzogYnVpbHRpbi9ncmVwLmM6OTEyCittc2dpZCAic2hvdyBtYXRjaGluZyBmaWxlcyBpbiB0aGUgcGFnZXIiCittc2dzdHIgInZpc3VhbGl6emEgaSBmaWxlIGNvcnJpc3BvbmRlbnRpIG5lbCBwYWdlciIKKworIzogYnVpbHRpbi9ncmVwLmM6OTE2Cittc2dpZCAiYWxsb3cgY2FsbGluZyBvZiBncmVwKDEpIChpZ25vcmVkIGJ5IHRoaXMgYnVpbGQpIgorbXNnc3RyICJjb25zZW50aSIKKworIzogYnVpbHRpbi9ncmVwLmM6OTgzCittc2dpZCAibm8gcGF0dGVybiBnaXZlbiIKK21zZ3N0ciAibmVzc3VuIHBhdHRlcm4gc3BlY2lmaWNhdG8iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwMTkKK21zZ2lkICItLW5vLWluZGV4IG9yIC0tdW50cmFja2VkIGNhbm5vdCBiZSB1c2VkIHdpdGggcmV2cyIKK21zZ3N0ciAiLS1uby1pbmRleCBvIC0tdW50cmFja2VkIG5vbiBwb3Nzb25vIGVzc2VyZSB1c2F0ZSBjb24gbGUgcmV2aXNpb25pIgorCisjOiBidWlsdGluL2dyZXAuYzoxMDI3CiAjLCBjLWZvcm1hdAotbXNnaWQgImJhZCBvYmplY3QgJXMiCi1tc2dzdHIgIm9nZ2V0dG8gJXMgZXJyYXRvIgorbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIHJldmlzaW9uOiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmlzb2x2ZXJlIGxhIHJldmlzaW9uZSAlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTQwCisjOiBidWlsdGluL2dyZXAuYzoxMDU3Cittc2dpZCAiLS11bnRyYWNrZWQgbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgorbXNnc3RyICJsJ29wemlvbmUgLS11bnRyYWNrZWQgbm9uIMOoIHN1cHBvcnRhdGEgY29uIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgorCisjOiBidWlsdGluL2dyZXAuYzoxMDYxCittc2dpZCAiaW52YWxpZCBvcHRpb24gY29tYmluYXRpb24sIGlnbm9yaW5nIC0tdGhyZWFkcyIKK21zZ3N0ciAiY29tYmluYXppb25lIGRpIG9wemlvbmkgbm9uIHZhbGlkYSwgaWdub3JvIC0tdGhyZWFkcyIKKworIzogYnVpbHRpbi9ncmVwLmM6MTA2NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NDcKK21zZ2lkICJubyB0aHJlYWRzIHN1cHBvcnQsIGlnbm9yaW5nIC0tdGhyZWFkcyIKK21zZ3N0ciAibm9uIHZpIMOoIHN1cHBvcnRvIHBlciBpIHRocmVhZCwgaWdub3JvIC0tdGhyZWFkcyIKKworIzogYnVpbHRpbi9ncmVwLmM6MTA2NyBidWlsdGluL2luZGV4LXBhY2suYzoxNTM1IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg1MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG51bWJlciBvZiB0aHJlYWRzIHNwZWNpZmllZCAoJWQpIgorbXNnc3RyICJzcGVjaWZpY2F0byBudW1lcm8gbm9uIHZhbGlkbyBkaSB0aHJlYWQgKCVkKSIKKworIzogYnVpbHRpbi9ncmVwLmM6MTEwMQogbXNnaWQgIi0tb3Blbi1maWxlcy1pbi1wYWdlciBvbmx5IHdvcmtzIG9uIHRoZSB3b3JrdHJlZSIKK21zZ3N0ciAiLS1vcGVuLWZpbGVzLWluLXBhZ2VyIGZ1bnppb25hIHNvbG8gc3VsbCdhbGJlcm8gZGkgbGF2b3JvIgorCisjOiBidWlsdGluL2dyZXAuYzoxMTI3Cittc2dpZCAiLS1jYWNoZWQgb3IgLS11bnRyYWNrZWQgY2Fubm90IGJlIHVzZWQgd2l0aCAtLW5vLWluZGV4IgorbXNnc3RyICItLWNhY2hlZCBvIC0tdW50cmFja2VkIG5vbiBwb3Nzb25vIGVzc2VyZSB1c2F0ZSBjb24gLS1uby1pbmRleCIKKworIzogYnVpbHRpbi9ncmVwLmM6MTEzMworbXNnaWQgIi0tW25vLV1leGNsdWRlLXN0YW5kYXJkIGNhbm5vdCBiZSB1c2VkIGZvciB0cmFja2VkIGNvbnRlbnRzIgorbXNnc3RyICItLVtuby1dZXhjbHVkZS1zdGFuZGFyZCBub24gcHXDsiBlc3NlcmUgdXNhdGEgcGVyIGkgY29udGVudXRpIHRyYWNjaWF0aSIKKworIzogYnVpbHRpbi9ncmVwLmM6MTE0MQorbXNnaWQgImJvdGggLS1jYWNoZWQgYW5kIHRyZWVzIGFyZSBnaXZlbiIKK21zZ3N0ciAic29ubyBzcGVjaWZpY2F0aSBzaWEgLS1jYWNoZWQgc2lhIGRlZ2xpIGFsYmVyaSIKKworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg1Cittc2dpZCAiIgorImdpdCBoYXNoLW9iamVjdCBbLXQgPHR5cGU+XSBbLXddIFstLXBhdGg9PGZpbGU+IHwgLS1uby1maWx0ZXJzXSBbLS1zdGRpbl0gIgorIlstLV0gPGZpbGU+Li4uIgogbXNnc3RyICIiCisiZ2l0IGhhc2gtb2JqZWN0IFstdCA8dGlwbz5dIFstd10gWy0tcGF0aD08ZmlsZT4gfCAtLW5vLWZpbHRlcnNdIFstLXN0ZGluXSAiCisiWy0tXSA8ZmlsZT4uLi4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjk2MwotbXNnaWQgIi0tY2FjaGVkIG9yIC0tdW50cmFja2VkIGNhbm5vdCBiZSB1c2VkIHdpdGggLS1uby1pbmRleC4iCi1tc2dzdHIgIi0tY2FjaGVkIG8gLS11bnRyYWNrZWQgbm9uIHB1w7IgZXNzZXJlIHVzYXRvIGNvbiAtLW5vLWluZGV4LiIKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NgorbXNnaWQgImdpdCBoYXNoLW9iamVjdCAgLS1zdGRpbi1wYXRocyIKK21zZ3N0ciAiZ2l0IGhhc2gtb2JqZWN0ICAtLXN0ZGluLXBhdGhzIgogCi0jOiBidWlsdGluL2dyZXAuYzo5NjgKLW1zZ2lkICItLW5vLWluZGV4IG9yIC0tdW50cmFja2VkIGNhbm5vdCBiZSB1c2VkIHdpdGggcmV2cy4iCi1tc2dzdHIgIi0tbm8taW5kZXggbyAtLXVudHJhY2tlZCBub24gcG9zc29ubyBlc3NlcmUgdXNhdGUgY29uIGxlIHJldmlzaW9uaS4iCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKK21zZ2lkICJvYmplY3QgdHlwZSIKK21zZ3N0ciAidGlwbyBvZ2dldHRvIgogCi0jOiBidWlsdGluL2dyZXAuYzo5NzEKLW1zZ2lkICItLVtuby1dZXhjbHVkZS1zdGFuZGFyZCBjYW5ub3QgYmUgdXNlZCBmb3IgdHJhY2tlZCBjb250ZW50cy4iCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTkKK21zZ2lkICJ3cml0ZSB0aGUgb2JqZWN0IGludG8gdGhlIG9iamVjdCBkYXRhYmFzZSIKK21zZ3N0ciAic2NyaXZpIGwnb2dnZXR0byBuZWwgZGF0YWJhc2Ugb2dnZXR0aSIKKworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMQorbXNnaWQgInJlYWQgdGhlIG9iamVjdCBmcm9tIHN0ZGluIgorbXNnc3RyICJsZWdnaSBsJ29nZ2V0dG8gZGFsbG8gc3RhbmRhcmQgaW5wdXQiCisKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDMKK21zZ2lkICJzdG9yZSBmaWxlIGFzIGlzIHdpdGhvdXQgZmlsdGVycyIKK21zZ3N0ciAic2FsdmEgaWwgZmlsZSBjb3PDrCBjb20nw6ggc2VuemEgZmlsdHJpIgorCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0Cittc2dpZCAiIgorImp1c3QgaGFzaCBhbnkgcmFuZG9tIGdhcmJhZ2UgdG8gY3JlYXRlIGNvcnJ1cHQgb2JqZWN0cyBmb3IgZGVidWdnaW5nIEdpdCIKIG1zZ3N0ciAiIgorImVzZWd1aSBzZW1wbGljZW1lbnRlIGwnaGFzaCBkaSBkYXRpIGludXRpbGkgcGVyIGNyZWFyZSBvZ2dldHRpIGNvcnJvdHRpIGFsICIKKyJmaW5lIGRpIGVzZWd1aXJlIGlsIGRlYnVnIGRpIEdpdCIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTc5Ci1tc2dpZCAiYm90aCAtLWNhY2hlZCBhbmQgdHJlZXMgYXJlIGdpdmVuLiIKLW1zZ3N0ciAiIgorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNQorbXNnaWQgInByb2Nlc3MgZmlsZSBhcyBpdCB3ZXJlIGZyb20gdGhpcyBwYXRoIgorbXNnc3RyICJlbGFib3JhIGkgZmlsZSBjb21lIHNlIGZvc3Nlcm8gaW4gcXVlc3RvIHBlcmNvcnNvIgogCi0jOiBidWlsdGluL2hlbHAuYzo1OQorIzogYnVpbHRpbi9oZWxwLmM6NDYKK21zZ2lkICJwcmludCBhbGwgYXZhaWxhYmxlIGNvbW1hbmRzIgorbXNnc3RyICJzdGFtcGEgdHV0dGkgaSBjb21hbmRpIGRpc3BvbmliaWxpIgorCisjOiBidWlsdGluL2hlbHAuYzo0NworbXNnaWQgImV4Y2x1ZGUgZ3VpZGVzIgorbXNnc3RyICJlc2NsdWRpIGxlIGd1aWRlIgorCisjOiBidWlsdGluL2hlbHAuYzo0OAorbXNnaWQgInByaW50IGxpc3Qgb2YgdXNlZnVsIGd1aWRlcyIKK21zZ3N0ciAic3RhbXBhIHVuIGVsZW5jbyBkaSBndWlkZSB1dGlsaSIKKworIzogYnVpbHRpbi9oZWxwLmM6NDkKK21zZ2lkICJwcmludCBhbGwgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBuYW1lcyIKK21zZ3N0ciAic3RhbXBhIGkgbm9taSBkaSB0dXR0ZSBsZSB2YXJpYWJpbGkgZGkgY29uZmlndXJhemlvbmUiCisKKyM6IGJ1aWx0aW4vaGVscC5jOjUxCittc2dpZCAic2hvdyBtYW4gcGFnZSIKK21zZ3N0ciAidmlzdWFsaXp6YSBsYSBwYWdpbmEgbWFuIgorCisjOiBidWlsdGluL2hlbHAuYzo1MgorbXNnaWQgInNob3cgbWFudWFsIGluIHdlYiBicm93c2VyIgorbXNnc3RyICJ2aXN1YWxpenphIGlsIG1hbnVhbGUgbmVsIGJyb3dzZXIgV2ViIgorCisjOiBidWlsdGluL2hlbHAuYzo1NAorbXNnaWQgInNob3cgaW5mbyBwYWdlIgorbXNnc3RyICJ2aXN1YWxpenphIGxhIHBhZ2luYSBpbmZvIgorCisjOiBidWlsdGluL2hlbHAuYzo1NgorbXNnaWQgInByaW50IGNvbW1hbmQgZGVzY3JpcHRpb24iCittc2dzdHIgInN0YW1wYSBsYSBkZXNjcml6aW9uZSBkZWwgY29tYW5kbyIKKworIzogYnVpbHRpbi9oZWxwLmM6NjEKK21zZ2lkICJnaXQgaGVscCBbLS1hbGxdIFstLWd1aWRlc10gWy0tbWFuIHwgLS13ZWIgfCAtLWluZm9dIFs8Y29tbWFuZD5dIgorbXNnc3RyICJnaXQgaGVscCBbLS1hbGxdIFstLWd1aWRlc10gWy0tbWFuIHwgLS13ZWIgfCAtLWluZm9dIFs8Y29tYW5kbz5dIgorCisjOiBidWlsdGluL2hlbHAuYzo3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaGVscCBmb3JtYXQgJyVzJyIKIG1zZ3N0ciAiZm9ybWF0byBkaSBhaXV0byAnJXMnIG5vbiByaWNvbm9zY2l1dG8iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjg3CisjOiBidWlsdGluL2hlbHAuYzoxMDQKIG1zZ2lkICJGYWlsZWQgdG8gc3RhcnQgZW1hY3NjbGllbnQuIgogbXNnc3RyICJFc2VjdXppb25lIGRpIGVtYWNzY2xpZW50IG5vbiByaXVzY2l0YS4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjEwMAorIzogYnVpbHRpbi9oZWxwLmM6MTE3CiBtc2dpZCAiRmFpbGVkIHRvIHBhcnNlIGVtYWNzY2xpZW50IHZlcnNpb24uIgogbXNnc3RyICJWZXJpZmljYSBkZWxsYSB2ZXJzaW9uZSBkaSBlbWFjc2NsaWVudCBub24gcml1c2NpdGEuIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMDgKKyM6IGJ1aWx0aW4vaGVscC5jOjEyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJlbWFjc2NsaWVudCB2ZXJzaW9uICclZCcgdG9vIG9sZCAoPCAyMikuIgogbXNnc3RyICJsYSB2ZXJzaW9uZSAnJWQnIGRpIGVtYWNzY2xpZW50IMOoIHRyb3BwbyB2ZWNjaGlhICg8MjIpLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTI2IGJ1aWx0aW4vaGVscC5jOjE1NCBidWlsdGluL2hlbHAuYzoxNjMgYnVpbHRpbi9oZWxwLmM6MTcxCisjOiBidWlsdGluL2hlbHAuYzoxNDMgYnVpbHRpbi9oZWxwLmM6MTY1IGJ1aWx0aW4vaGVscC5jOjE3NSBidWlsdGluL2hlbHAuYzoxODMKICMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIGV4ZWMgJyVzJzogJXMiCi1tc2dzdHIgImVzZWN1emlvbmUgZGkgJyVzJyBub24gcml1c2NpdGE6ICVzIgorbXNnaWQgImZhaWxlZCB0byBleGVjICclcyciCittc2dzdHIgImVzZWN1emlvbmUgZGkgJyVzJyBub24gcml1c2NpdGEiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjIxMQorIzogYnVpbHRpbi9oZWxwLmM6MjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnOiBwYXRoIGZvciB1bnN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgpAQCAtMjc4Niw3ICsxNTExOCw3IEBACiAiJyVzJzogcGF0aCBhZCB1biB2aXN1YWxpenphdG9yZSBtYW4gcGFnZXMgbm9uIHN1cHBvcnRhdG8uXG4iCiAiVXNhIGludmVjZSAnbWFuLjx0b29sPi5jbWQnLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MjIzCisjOiBidWlsdGluL2hlbHAuYzoyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcyc6IGNtZCBmb3Igc3VwcG9ydGVkIG1hbiB2aWV3ZXIuXG4iCkBAIC0yNzk1LDM5NiArMTUxMjcsNDIyIEBACiAiJyVzJzogY29tYW5kbyBwZXIgdmlzdWFsaXp6YXRvcmUgbWFuIHBhZ2VzIHN1cHBvcnRhdG8uXG4iCiAiUGVyIGZhdm9yZSB1c2EgJ21hbi48dG9vbD4ucGF0aCcgaW52ZWNlLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6Mjg3Ci1tc2dpZCAiVGhlIG1vc3QgY29tbW9ubHkgdXNlZCBnaXQgY29tbWFuZHMgYXJlOiIKLW1zZ3N0ciAiSSBjb21hbmRpIGdpdCB1c2F0aSBwacO5IGRpIGZyZXF1ZW50ZSBzb25vOiIKLQotIzogYnVpbHRpbi9oZWxwLmM6MzU1CisjOiBidWlsdGluL2hlbHAuYzozNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogdW5rbm93biBtYW4gdmlld2VyLiIKIG1zZ3N0ciAiJyVzJzogdmlzdWFsaXp6YXRvcmUgbWFuIHNjb25vc2NpdXRvLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MzcyCisjOiBidWlsdGluL2hlbHAuYzozNjcKIG1zZ2lkICJubyBtYW4gdmlld2VyIGhhbmRsZWQgdGhlIHJlcXVlc3QiCiBtc2dzdHIgIm5lc3N1biB2aXN1YWxpenphdG9yZSBtYW4gaGEgZ2VzdGl0byBsYSByaWNoaWVzdGEiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM4MAorIzogYnVpbHRpbi9oZWxwLmM6Mzc1CiBtc2dpZCAibm8gaW5mbyB2aWV3ZXIgaGFuZGxlZCB0aGUgcmVxdWVzdCIKIG1zZ3N0ciAibmVzc3VuIHZpc3VhbGl6emF0b3JlIGluZm8gaGEgZ2VzdGl0byBsYSByaWNoaWVzdGEiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM5MQorIzogYnVpbHRpbi9oZWxwLmM6NDM0IGJ1aWx0aW4vaGVscC5jOjQ0NSBnaXQuYzozMzYKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJyVzJzogbm90IGEgZG9jdW1lbnRhdGlvbiBkaXJlY3RvcnkuIgotbXNnc3RyICInJXMnOiBub24gw6ggdW5hIGRpcmVjdG9yeSBkZWxsYSBkb2N1bWVudGF6aW9uZS4iCittc2dpZCAiJyVzJyBpcyBhbGlhc2VkIHRvICclcyciCittc2dzdHIgIiclcycgw6ggdW4gYWxpYXMgZGkgJyVzJyIKIAotIzogYnVpbHRpbi9oZWxwLmM6NDMyIGJ1aWx0aW4vaGVscC5jOjQzOQorIzogYnVpbHRpbi9oZWxwLmM6NDQ4IGdpdC5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgYWxpYXMuJXMgc3RyaW5nOiAlcyIKK21zZ3N0ciAic3RyaW5nYSBhbGlhcy4lcyBub24gdmFsaWRhOiAlcyIKKworIzogYnVpbHRpbi9oZWxwLmM6NDc3IGJ1aWx0aW4vaGVscC5jOjUwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1c2FnZTogJXMlcyIKIG1zZ3N0ciAidXNvOiAlcyVzIgogCi0jOiBidWlsdGluL2hlbHAuYzo0NTMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiYGdpdCAlcycgaXMgYWxpYXNlZCB0byBgJXMnIgotbXNnc3RyICInZ2l0ICVzIMOoIHVuIGFsaWFzIGRpICclcyciCisjOiBidWlsdGluL2hlbHAuYzo0OTEKK21zZ2lkICInZ2l0IGhlbHAgY29uZmlnJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiVmVkaSAnZ2l0IGhlbHAgY29uZmlnJyBwZXIgbWFnZ2lvcmkgaW5mb3JtYXppb25pIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgdHlwZSBtaXNtYXRjaCBhdCAlcyIKLW1zZ3N0ciAiIgorbXNnc3RyICJ0aXBvIG9nZ2V0dG8gbm9uIGNvcnJpc3BvbmRlbnRlIGluICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxODkKLW1zZ2lkICJvYmplY3Qgb2YgdW5leHBlY3RlZCB0eXBlIgotbXNnc3RyICIiCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIG5vdCByZWNlaXZlIGV4cGVjdGVkIG9iamVjdCAlcyIKK21zZ3N0ciAibm9uIHNpIMOoIHJpY2V2dXRvIGwnb2dnZXR0byBhdHRlc28gJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIyNgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCAlczogZXhwZWN0ZWQgdHlwZSAlcywgZm91bmQgJXMiCittc2dzdHIgIm9nZ2V0dG8gJXM6IGF0dGVzbyB0aXBvICVzLCB0cm92YXRvICVzIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZpbGwgJWQgYnl0ZSIKIG1zZ2lkX3BsdXJhbCAiY2Fubm90IGZpbGwgJWQgYnl0ZXMiCi1tc2dzdHJbMF0gIiIKLW1zZ3N0clsxXSAiIgorbXNnc3RyWzBdICJpbXBvc3NpYmlsZSByaWVtcGlyZSAlZCBieXRlIgorbXNnc3RyWzFdICJpbXBvc3NpYmlsZSByaWVtcGlyZSAlZCBieXRlIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyMzYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OAogbXNnaWQgImVhcmx5IEVPRiIKIG1zZ3N0ciAiRU9GIHByZW1hdHVybyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjM3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyNjkKIG1zZ2lkICJyZWFkIGVycm9yIG9uIGlucHV0IgogbXNnc3RyICJlcnJvcmUgZGkgbGV0dHVyYSBpbiBpbnB1dCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjQ5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyODEKIG1zZ2lkICJ1c2VkIG1vcmUgYnl0ZXMgdGhhbiB3ZXJlIGF2YWlsYWJsZSIKIG1zZ3N0ciAidXNhdGkgcGnDuSBieXRlIGRpIHF1ZWxsaSBkaXNwb25pYmlsaSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjU2CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyODggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo2MDYKIG1zZ2lkICJwYWNrIHRvbyBsYXJnZSBmb3IgY3VycmVudCBkZWZpbml0aW9uIG9mIG9mZl90IgogbXNnc3RyICJwYWNrIHRyb3BwbyBsYXJnbyBwZXIgbGEgZGVmaW5pemlvbmUgY29ycmVudGUgZGkgb2ZmX3QiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI3MgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlICclcyciCi1tc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSAnJXMnIgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjkxIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo5NQorbXNnaWQgInBhY2sgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgc2l6ZSIKK21zZ3N0ciAiaWwgcGFjayBzdXBlcmEgbGEgZGltZW5zaW9uZSBtYXNzaW1hIGNvbnNlbnRpdGEiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI3NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuIHBhY2tmaWxlICclcyciCiBtc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBpbCBmaWxlIHBhY2sgJyVzJyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjkxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMjYKIG1zZ2lkICJwYWNrIHNpZ25hdHVyZSBtaXNtYXRjaCIKIG1zZ3N0ciAibGEgZmlybWEgZGVsIHBhY2sgbm9uIGNvaW5jaWRlIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozMTEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMyOAogIywgYy1mb3JtYXQKLW1zZ2lkICJwYWNrIGhhcyBiYWQgb2JqZWN0IGF0IG9mZnNldCAlbHU6ICVzIgotbXNnc3RyICIiCittc2dpZCAicGFjayB2ZXJzaW9uICU8UFJJdTMyPiB1bnN1cHBvcnRlZCIKK21zZ3N0ciAidmVyc2lvbmUgcGFjayAlPFBSSXUzMj4gbm9uIHN1cHBvcnRhdGEiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjQwNQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzQ2CiAjLCBjLWZvcm1hdAotbXNnaWQgImluZmxhdGUgcmV0dXJuZWQgJWQiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NDUwCi1tc2dpZCAib2Zmc2V0IHZhbHVlIG92ZXJmbG93IGZvciBkZWx0YSBiYXNlIG9iamVjdCIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo0NTgKLW1zZ2lkICJkZWx0YSBiYXNlIG9mZnNldCBpcyBvdXQgb2YgYm91bmQiCi1tc2dzdHIgIiIKK21zZ2lkICJwYWNrIGhhcyBiYWQgb2JqZWN0IGF0IG9mZnNldCAlPFBSSXVNQVg+OiAlcyIKK21zZ3N0ciAiaWwgcGFjayBoYSB1biBvZ2dldHRvIGRhbm5lZ2dpYXRvIGFsbCdvZmZzZXQgJTxQUkl1TUFYPjogJXMiCiAKICM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjQ2NgogIywgYy1mb3JtYXQKK21zZ2lkICJpbmZsYXRlIHJldHVybmVkICVkIgorbXNnc3RyICJpbmZsYXRlIGhhIHJlc3RpdHVpdG8gaWwgY29kaWNlICVkIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MTUKK21zZ2lkICJvZmZzZXQgdmFsdWUgb3ZlcmZsb3cgZm9yIGRlbHRhIGJhc2Ugb2JqZWN0IgorbXNnc3RyICJvdmVyZmxvdyBkZWwgdmFsb3JlIGRlbGwnb2Zmc2V0IGJhc2UgZGVsIGRlbHRhIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MjMKK21zZ2lkICJkZWx0YSBiYXNlIG9mZnNldCBpcyBvdXQgb2YgYm91bmQiCittc2dzdHIgImwnb2Zmc2V0IGJhc2UgZGVsIGRlbHRhIMOoIGZ1b3JpIGRhbGwnaW50ZXJ2YWxsbyBjb25zZW50aXRvIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MzEKKyMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvYmplY3QgdHlwZSAlZCIKLW1zZ3N0ciAidGlwbyBkaSBvZ2dldHRvICVkIHNjb25vc2NpdXRvIgorbXNnc3RyICJ0aXBvIG9nZ2V0dG8gJWQgc2Nvbm9zY2l1dG8iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjQ5NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTYyCiBtc2dpZCAiY2Fubm90IHByZWFkIHBhY2sgZmlsZSIKLW1zZ3N0ciAiIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBwcmVhZCBzdWwgZmlsZSBwYWNrIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo0OTcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU2NAogIywgYy1mb3JtYXQKLW1zZ2lkICJwcmVtYXR1cmUgZW5kIG9mIHBhY2sgZmlsZSwgJWx1IGJ5dGUgbWlzc2luZyIKLW1zZ2lkX3BsdXJhbCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICVsdSBieXRlcyBtaXNzaW5nIgotbXNnc3RyWzBdICIiCi1tc2dzdHJbMV0gIiIKK21zZ2lkICJwcmVtYXR1cmUgZW5kIG9mIHBhY2sgZmlsZSwgJTxQUkl1TUFYPiBieXRlIG1pc3NpbmciCittc2dpZF9wbHVyYWwgInByZW1hdHVyZSBlbmQgb2YgcGFjayBmaWxlLCAlPFBSSXVNQVg+IGJ5dGVzIG1pc3NpbmciCittc2dzdHJbMF0gImZpbmUgZGVsIGZpbGUgcGFjayBwcmVtYXR1cmEsICU8UFJJdU1BWD4gYnl0ZSBtYW5jYW50ZSIKK21zZ3N0clsxXSAiZmluZSBkZWwgZmlsZSBwYWNrIHByZW1hdHVyYSwgJTxQUkl1TUFYPiBieXRlIG1hbmNhbnRpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1MTAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU5MAogbXNnaWQgInNlcmlvdXMgaW5mbGF0ZSBpbmNvbnNpc3RlbmN5IgotbXNnc3RyICIiCittc2dzdHIgImluY29uc2lzdGVuemEgZ3JhdmUgZGkgaW5mbGF0ZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTgzCi0jLCBjLWZvcm1hdAotbXNnaWQgImNhbm5vdCByZWFkIGV4aXN0aW5nIG9iamVjdCAlcyIKLW1zZ3N0ciAibm9uIMOoIHBvc3NpYmlsZSBsZWdnZXJlIGwnb2dnZXR0byAlcyBlc2lzdGVudGUiCi0KLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU4NgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzM1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc0MSBidWlsdGluL2luZGV4LXBhY2suYzo3NjUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwNCBidWlsdGluL2luZGV4LXBhY2suYzo4MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiU0hBMSBDT0xMSVNJT04gRk9VTkQgV0lUSCAlcyAhIgogbXNnc3RyICJUUk9WQVRBIENPTExJU0lPTkUgU0hBMSBDT04gJXMgISIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTk4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo3MzggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjE4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlICVzIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgZXhpc3Rpbmcgb2JqZWN0IGluZm8gJXMiCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgbGUgaW5mb3JtYXppb25pIHN1bGwnb2dnZXR0byBlc2lzdGVudGU6ICVzIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgZXhpc3Rpbmcgb2JqZWN0ICVzIgorbXNnc3RyICJub24gw6ggcG9zc2liaWxlIGxlZ2dlcmUgbCdvZ2dldHRvICVzIGVzaXN0ZW50ZSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgYmxvYiBvYmplY3QgJXMiCiBtc2dzdHIgIm9nZ2V0dG8gYmxvYiAlcyBub24gdmFsaWRvIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo2MTAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCAlcyIKLW1zZ3N0ciAiJXMgbm9uIHZhbGlkbyIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgyNyBidWlsdGluL2luZGV4LXBhY2suYzo4NDYKK21zZ2lkICJmc2NrIGVycm9yIGluIHBhY2tlZCBvYmplY3QiCittc2dzdHIgImVycm9yZSBmc2NrIG5lbGwnb2dnZXR0byBzb3R0b3Bvc3RvIGEgcGFjayIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NjEyCi1tc2dpZCAiRXJyb3IgaW4gb2JqZWN0IgotbXNnc3RyICJFcnJvcmUgbmVsbCdvZ2dldHRvIgotCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo2MTQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYWxsIGNoaWxkIG9iamVjdHMgb2YgJXMgYXJlIHJlYWNoYWJsZSIKIG1zZ3N0ciAiTm9uIHR1dHRpIGdsaSBvZ2dldHRpIGZpZ2xpbyBkaSAlcyBzb25vIHJhZ2dpdW5naWJpbGkiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjY4NyBidWlsdGluL2luZGV4LXBhY2suYzo3MTMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjkyMCBidWlsdGluL2luZGV4LXBhY2suYzo5NTEKIG1zZ2lkICJmYWlsZWQgdG8gYXBwbHkgZGVsdGEiCiBtc2dzdHIgImFwcGxpY2F6aW9uZSBkZWwgZGVsdGEgbm9uIHJpdXNjaXRhIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4NTAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMjEKIG1zZ2lkICJSZWNlaXZpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiUmljZXppb25lIGRlZ2xpIG9nZ2V0dGkiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg1MAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEyMQogbXNnaWQgIkluZGV4aW5nIG9iamVjdHMiCiBtc2dzdHIgIkluZGljaXp6YXppb25lIGRlZ2xpIG9nZ2V0dGkiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg3MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE1NQogbXNnaWQgInBhY2sgaXMgY29ycnVwdGVkIChTSEExIG1pc21hdGNoKSIKIG1zZ3N0ciAiaWwgcGFjayDDqCBjb3Jyb3R0byAoU0hBMSBub24gY29ycmlzcG9uZGUpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4NzcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNjAKIG1zZ2lkICJjYW5ub3QgZnN0YXQgcGFja2ZpbGUiCi1tc2dzdHIgIiIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgZnN0YXQgc3VsIGZpbGUgcGFjayIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODgwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYzCiBtc2dpZCAicGFjayBoYXMganVuayBhdCB0aGUgZW5kIgotbXNnc3RyICIiCittc2dzdHIgImlsIHBhY2sgaGEgZGF0aSBpbnV0aWxpIGFsbGEgZmluZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6OTAzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTc1Cittc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSBpbiBwYXJzZV9wYWNrX29iamVjdHMoKSIKK21zZ3N0ciAiY29uZnVzaW9uZSBvbHRyZSBvZ25pIGZvbGxpYSBpbiBwYXJzZV9wYWNrX29iamVjdHMoKSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE5OAogbXNnaWQgIlJlc29sdmluZyBkZWx0YXMiCiBtc2dzdHIgIlJpc29sdXppb25lIGRlaSBkZWx0YSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6OTU0Ci1tc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSIKLW1zZ3N0ciAiY29uZnVzaW9uZSBhbCBkaSBsw6AgZGVsbGEgZm9sbGlhIgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTIwOCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0aHJlYWQ6ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgaWwgdGhyZWFkOiAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6OTczCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjQ5Cittc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSIKK21zZ3N0ciAiY29uZnVzaW9uZSBvbHRyZSBvZ25pIGZvbGxpYSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb21wbGV0ZWQgd2l0aCAlZCBsb2NhbCBvYmplY3QiCittc2dpZF9wbHVyYWwgImNvbXBsZXRlZCB3aXRoICVkIGxvY2FsIG9iamVjdHMiCittc2dzdHJbMF0gImNvbXBsZXRhdG8gY29uICVkIG9nZ2V0dG8gbG9jYWxlIgorbXNnc3RyWzFdICJjb21wbGV0YXRvIGNvbiAlZCBvZ2dldHRpIGxvY2FsaSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI2NworIywgYy1mb3JtYXQKK21zZ2lkICJVbmV4cGVjdGVkIHRhaWwgY2hlY2tzdW0gZm9yICVzIChkaXNrIGNvcnJ1cHRpb24/KSIKK21zZ3N0ciAiQ2hlY2tzdW0gaW4gY29kYSBpbmF0dGVzbyBwZXIgJXMgKGRpc2NvIGNvcnJvdHRvPykiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjayBoYXMgJWQgdW5yZXNvbHZlZCBkZWx0YSIKIG1zZ2lkX3BsdXJhbCAicGFjayBoYXMgJWQgdW5yZXNvbHZlZCBkZWx0YXMiCiBtc2dzdHJbMF0gInBhY2sgaGEgJWQgZGVsdGEgaXJyaXNvbHRvIgogbXNnc3RyWzFdICJwYWNrIGhhICVkIGRlbHRhIGlycmlzb2x0aSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6OTk4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjk1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBkZWZsYXRlIGFwcGVuZGVkIG9iamVjdCAoJWQpIgotbXNnc3RyICIiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGRlZmxhdGUgc3VsbCdvZ2dldHRvIGFnZ2l1bnRvIGFsbGEgZmluZSAoJWQpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMDc3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImxvY2FsIG9iamVjdCAlcyBpcyBjb3JydXB0IgogbXNnc3RyICJsJ29nZ2V0dG8gbG9jYWxlICVzIMOoIGNvcnJvdHRvIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTAxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDA2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2tmaWxlIG5hbWUgJyVzJyBkb2VzIG5vdCBlbmQgd2l0aCAnLnBhY2snIgorbXNnc3RyICJpbCBub21lIGRlbCBmaWxlIHBhY2sgJyVzJyBub24gdGVybWluYSBjb24gJy5wYWNrJyIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgd3JpdGUgJXMgZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSBpbCBmaWxlICVzICclcyciCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNsb3NlIHdyaXR0ZW4gJXMgZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjaGl1ZGVyZSBpbCBmaWxlICVzIHNjcml0dG8gJyVzJyIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ2MwogbXNnaWQgImVycm9yIHdoaWxlIGNsb3NpbmcgcGFjayBmaWxlIgogbXNnc3RyICJlcnJvcmUgbmVsbGEgY2hpdXN1cmEgZGVsIGZpbGUgcGFjayIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTExNAotIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3Qgd3JpdGUga2VlcCBmaWxlICclcyciCi1tc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGlsIGZpbGUga2VlcCAnJXMnIgotCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTIyCi0jLCBjLWZvcm1hdAotbXNnaWQgImNhbm5vdCBjbG9zZSB3cml0dGVuIGtlZXAgZmlsZSAnJXMnIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMzUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0NzcKIG1zZ2lkICJjYW5ub3Qgc3RvcmUgcGFjayBmaWxlIgogbXNnc3RyICJpbXBvc3NpYmlsZSBhcmNoaXZpYXJlIGlsIGZpbGUgcGFjayIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE0NgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ4NQogbXNnaWQgImNhbm5vdCBzdG9yZSBpbmRleCBmaWxlIgogbXNnc3RyICJpbXBvc3NpYmlsZSBhcmNoaXZpYXJlIGluZGV4IGZpbGUiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNDcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MjkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODYyCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBwYWNrLmluZGV4dmVyc2lvbj0lPFBSSXUzMj4iCittc2dzdHIgInBhY2suaW5kZXh2ZXJzaW9uPSU8UFJJdTMyPiBub24gdmFsaWRhIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBvcGVuIGV4aXN0aW5nIHBhY2sgZmlsZSAnJXMnIgogbXNnc3RyICJJbXBvc3NpYmlsZSBhcHJpcmUgaWwgZmlsZSBwYWNrICclcycgZXNpc3RlbnRlIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjQ5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBvcGVuIGV4aXN0aW5nIHBhY2sgaWR4IGZpbGUgZm9yICclcyciCi1tc2dzdHIgIiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgYXByaXJlIGlsIGZpbGUgcGFjayBpZHggZXNpc3RlbnRlIHBlciAnJXMnIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjk2CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vbiBkZWx0YTogJWQgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJub24gZGVsdGE6ICVkIG9iamVjdHMiCiBtc2dzdHJbMF0gIm5vbiBkZWx0YTogJWQgb2dnZXR0byIKIG1zZ3N0clsxXSAibm9uIGRlbHRhOiAlZCBvZ2dldHRpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzAzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNoYWluIGxlbmd0aCA9ICVkOiAlbHUgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJjaGFpbiBsZW5ndGggPSAlZDogJWx1IG9iamVjdHMiCiBtc2dzdHJbMF0gImx1bmdoZXp6YSBkZWxsYSBjYXRlbmEgPSAlZDogJWx1IG9nZ2V0dG8iCiBtc2dzdHJbMV0gImx1bmdoZXp6YSBkZWxsYSBjYXRlbmEgPSAlZDogJWx1IG9nZ2V0dGkiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzMzAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2OTMKIG1zZ2lkICJDYW5ub3QgY29tZSBiYWNrIHRvIGN3ZCIKLW1zZ3N0ciAiIgorbXNnc3RyICJpbXBvc3NpYmlsZSB0b3JuYXJlIGFsbGEgZGlyZWN0b3J5IGRpIGxhdm9ybyBjb3JyZW50ZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM3NCBidWlsdGluL2luZGV4LXBhY2suYzoxMzc3Ci0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzg5IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzOTMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDIgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc2MSBidWlsdGluL2luZGV4LXBhY2suYzoxNzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCAlcyIKIG1zZ3N0ciAiJXMgZXJyYXRvIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDA3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzgxCiBtc2dpZCAiLS1maXgtdGhpbiBjYW5ub3QgYmUgdXNlZCB3aXRob3V0IC0tc3RkaW4iCiBtc2dzdHIgIi0tZml4LXRoaW4gbm9uIHB1w7IgZXNzZXJlIHVzYXRvIHNlbnphIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MTEgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQyMQotIywgYy1mb3JtYXQKLW1zZ2lkICJwYWNrZmlsZSBuYW1lICclcycgZG9lcyBub3QgZW5kIHdpdGggJy5wYWNrJyIKLW1zZ3N0ciAiaWwgbm9tZSBkZWwgZmlsZSBwYWNrICclcycgbm9uIHRlcm1pbmEgY29uICcucGFjayciCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzgzCittc2dpZCAiLS1zdGRpbiByZXF1aXJlcyBhIGdpdCByZXBvc2l0b3J5IgorbXNnc3RyICItLXN0ZGluIHJpY2hpZWRlIHVuIHJlcG9zaXRvcnkgR2l0IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDMwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzg5CiBtc2dpZCAiLS12ZXJpZnkgd2l0aCBubyBwYWNrZmlsZSBuYW1lIGdpdmVuIgogbXNnc3RyICItLXZlcmlmeSBzZW56YSB1biBub21lIGRlbCBmaWxlIHBhY2sgc3BlY2lmaWNhdG8iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjM1Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkNvdWxkIG5vdCBtYWtlICVzIHdyaXRhYmxlIGJ5IGdyb3VwIgotbXNnc3RyICJOb24gw6ggc3RhdG8gcG9zc2libGUgcmVuZGVyZSAlcyBzY3JpdmliaWxlIGRhbCBncnVwcG8iCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxODM3IGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1ODIKK21zZ2lkICJmc2NrIGVycm9yIGluIHBhY2sgb2JqZWN0cyIKK21zZ3N0ciAiZXJyb3JlIGZzY2sgbmVnbGkgb2dnZXR0aSBzb3R0b3Bvc3RpIGEgcGFjayIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NjIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW5zYW5lbHkgbG9uZyB0ZW1wbGF0ZSBuYW1lICVzIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjY3Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNhbm5vdCBzdGF0ICclcyciCi1tc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGxvIHN0YXQgZGkgJyVzJyIKLQotIzogYnVpbHRpbi9pbml0LWRiLmM6NzMKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGF0IHRlbXBsYXRlICclcyciCi1tc2dzdHIgIiIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgc3RhdCBzdWwgbW9kZWxsbyAnJXMnIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbmRpciAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgbGEgZGlyZWN0b3J5ICclcyciCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkbGluayAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGlsIGxpbmsgJyVzJyIKIAogIzogYnVpbHRpbi9pbml0LWRiLmM6ODAKICMsIGMtZm9ybWF0Ci1tc2dpZCAiY2Fubm90IG9wZW5kaXIgJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2luaXQtZGIuYzo5NwotIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3QgcmVhZGxpbmsgJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2luaXQtZGIuYzo5OQotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnNhbmVseSBsb25nIHN5bWxpbmsgJXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9pbml0LWRiLmM6MTAyCi0jLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzeW1saW5rICclcycgJyVzJyIKLW1zZ3N0ciAiIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgaWwgY29sbGVnYW1lbnRvIHNpbWJvbGljbyBkYSAnJXMnIGEgJyVzJyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6MTA2CisjOiBidWlsdGluL2luaXQtZGIuYzo4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY29weSAnJXMnIHRvICclcyciCi1tc2dzdHIgIiIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY29waWFyZSAnJXMnIGluICclcyciCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjExMAorIzogYnVpbHRpbi9pbml0LWRiLmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgdGVtcGxhdGUgJXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAiaWdub3JvIGlsIG1vZGVsbG8gJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjEzMworIzogYnVpbHRpbi9pbml0LWRiLmM6MTIxCiAjLCBjLWZvcm1hdAotbXNnaWQgImluc2FuZWx5IGxvbmcgdGVtcGxhdGUgcGF0aCAlcyIKLW1zZ3N0ciAiIgorbXNnaWQgInRlbXBsYXRlcyBub3QgZm91bmQgaW4gJXMiCittc2dzdHIgIm1vZGVsbGkgbm9uIHRyb3ZhdGkgaW4gJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjE0MQorIzogYnVpbHRpbi9pbml0LWRiLmM6MTM2CiAjLCBjLWZvcm1hdAotbXNnaWQgInRlbXBsYXRlcyBub3QgZm91bmQgJXMiCi1tc2dzdHIgIiIKK21zZ2lkICJub3QgY29weWluZyB0ZW1wbGF0ZXMgZnJvbSAnJXMnOiAlcyIKK21zZ3N0ciAibm9uIGNvcGlvIGkgbW9kZWxsaSBkYSAnJXMnOiAlcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6MTU0Ci0jLCBjLWZvcm1hdAotbXNnaWQgIm5vdCBjb3B5aW5nIHRlbXBsYXRlcyBvZiBhIHdyb25nIGZvcm1hdCB2ZXJzaW9uICVkIGZyb20gJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2luaXQtZGIuYzoxOTIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW5zYW5lIGdpdCBkaXJlY3RvcnkgJXMiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9pbml0LWRiLmM6MzIyIGJ1aWx0aW4vaW5pdC1kYi5jOjMyNQotIywgYy1mb3JtYXQKLW1zZ2lkICIlcyBhbHJlYWR5IGV4aXN0cyIKLW1zZ3N0ciAiJXMgZXNpc3RlIGdpw6AiCi0KLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjM1NAorIzogYnVpbHRpbi9pbml0LWRiLmM6MzM0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBoYW5kbGUgZmlsZSB0eXBlICVkIgogbXNnc3RyICJpbXBvc3NpYmlsZSBnZXN0aXJlIGlsIHRpcG8gZGkgZmlsZSAlZCIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6MzU3CisjOiBidWlsdGluL2luaXQtZGIuYzozMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG1vdmUgJXMgdG8gJXMiCiBtc2dzdHIgImltcG9zc2liaWxlIHNwb3N0YXJlICVzIGluICVzIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzozNjIKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjM1NCBidWlsdGluL2luaXQtZGIuYzozNTcKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBnaXQgbGluayAlcyIKLW1zZ3N0ciAiTm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBjcmVhcmUgaWwgbGluayBnaXQgJXMiCittc2dpZCAiJXMgYWxyZWFkeSBleGlzdHMiCittc2dzdHIgIiVzIGVzaXN0ZSBnacOgIgogCi0jLgotIy4gKiBUUkFOU0xBVE9SUzogVGhlIGZpcnN0ICclcycgaXMgZWl0aGVyICJSZWluaXRpYWxpemVkCi0jLiAqIGV4aXN0aW5nIiBvciAiSW5pdGlhbGl6ZWQgZW1wdHkiLCB0aGUgc2Vjb25kICIgc2hhcmVkIiBvcgotIy4gKiAiIiwgYW5kIHRoZSBsYXN0ICclcyVzJyBpcyB0aGUgdmVyYmF0aW0gZGlyZWN0b3J5IG5hbWUuCi0jLgorIzogYnVpbHRpbi9pbml0LWRiLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlaW5pdGlhbGl6ZWQgZXhpc3Rpbmcgc2hhcmVkIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKK21zZ3N0ciAiUmVpbml6aWFsaXp6YXRvIHJlcG9zaXRvcnkgR2l0IGNvbmRpdmlzbyBlc2lzdGVudGUgaW4gJXMlc1xuIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVpbml0aWFsaXplZCBleGlzdGluZyBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCittc2dzdHIgIlJlaW5pemlhbGl6emF0byByZXBvc2l0b3J5IEdpdCBlc2lzdGVudGUgaW4gJXMlc1xuIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5pdGlhbGl6ZWQgZW1wdHkgc2hhcmVkIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKK21zZ3N0ciAiSW5pemlhbGl6emF0byByZXBvc2l0b3J5IEdpdCBjb25kaXZpc28gdnVvdG8gaW4gJXMlc1xuIgorCiAjOiBidWlsdGluL2luaXQtZGIuYzo0MTkKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJXMlcyBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCi1tc2dzdHIgIiVzJXMgcmVwb3NpdG9yeSBHaXQgaW4gJXMlc1xuIgorbXNnaWQgIkluaXRpYWxpemVkIGVtcHR5IEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKK21zZ3N0ciAiSW5pemlhbGl6emF0byByZXBvc2l0b3J5IEdpdCB2dW90byBpbiAlcyVzXG4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQyMAotbXNnaWQgIlJlaW5pdGlhbGl6ZWQgZXhpc3RpbmciCi1tc2dzdHIgIlJlaW5pemlhbGl6emF0byB1biBlc2lzdGVudGUiCi0KLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQyMAotbXNnaWQgIkluaXRpYWxpemVkIGVtcHR5IgotbXNnc3RyICJJbml6aWFsaXp6YXRvIHVuIgotCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MjEKLW1zZ2lkICIgc2hhcmVkIgotbXNnc3RyICIgY29uZGl2aXNvIgotCi0jOiBidWlsdGluL2luaXQtZGIuYzo0NDAKLW1zZ2lkICJjYW5ub3QgdGVsbCBjd2QiCisjOiBidWlsdGluL2luaXQtZGIuYzo0NjgKK21zZ2lkICIiCisiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU9PHRlbXBsYXRlLWRpcmVjdG9yeT5dIFstLSIKKyJzaGFyZWRbPTxwZXJtaXNzaW9ucz5dXSBbPGRpcmVjdG9yeT5dIgogbXNnc3RyICIiCisiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU9PGRpcmVjdG9yeS1tb2RlbGxvPl0gWy0tIgorInNoYXJlZFs9PHBlcm1lc3NpPl1dIFs8ZGlyZWN0b3J5Pl0iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUyMSBidWlsdGluL2luaXQtZGIuYzo1MjgKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MQorbXNnaWQgInBlcm1pc3Npb25zIgorbXNnc3RyICJwZXJtZXNzaSIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NDkyCittc2dpZCAic3BlY2lmeSB0aGF0IHRoZSBnaXQgcmVwb3NpdG9yeSBpcyB0byBiZSBzaGFyZWQgYW1vbmdzdCBzZXZlcmFsIHVzZXJzIgorbXNnc3RyICJzcGVjaWZpY2EgY2hlIGlsIHJlcG9zaXRvcnkgR2l0IGRldmUgZXNzZXJlIGNvbmRpdmlzbyBjb24gcGnDuSB1dGVudGkiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUyOSBidWlsdGluL2luaXQtZGIuYzo1MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG1rZGlyICVzIgotbXNnc3RyICIiCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSBsYSBkaXJlY3RvcnkgJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUzMgorIzogYnVpbHRpbi9pbml0LWRiLmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGRpciB0byAlcyIKLW1zZ3N0ciAiIgorbXNnc3RyICJpbXBvc3NpYmlsZSBtb2RpZmljYXJlIGxhIGRpcmVjdG9yeSBjb3JyZW50ZSBpbiAlcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTU0CisjOiBidWlsdGluL2luaXQtZGIuYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiVzIChvciAtLXdvcmstdHJlZT08ZGlyZWN0b3J5Pikgbm90IGFsbG93ZWQgd2l0aG91dCBzcGVjaWZ5aW5nICVzIChvciAtLWdpdC0iCkBAIC0zMTkzLDYyNSArMTU1NTEsMjQzMyBAQAogIiVzIChvIC0td29yay10cmVlPTxkaXJlY3Rvcnk+KSBub24gY29uc2VudGl0byBzZW56YSBzcGVjaWZpY2FyZSAlcyAobyAtLWdpdC0iCiAiZGlyPTxkaXJlY3Rvcnk+KSIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTc4Ci1tc2dpZCAiQ2Fubm90IGFjY2VzcyBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IgotbXNnc3RyICJJbXBvc3NpYmlsZSBhY2NlZGVyZSBhbGxhIGRpcmVjdG9yeSBkaSBsYXZvcm8gY29ycmVudGUiCi0KLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU4NQorIzogYnVpbHRpbi9pbml0LWRiLmM6NTg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBhY2Nlc3Mgd29yayB0cmVlICclcyciCi1tc2dzdHIgIiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgYWNjZWRlcmUgYWxsJ2FsYmVybyBkaSBsYXZvcm8gJyVzJyIKIAotIzogYnVpbHRpbi9sb2cuYzoxODgKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTYKK21zZ2lkICIiCisiZ2l0IGludGVycHJldC10cmFpbGVycyBbLS1pbi1wbGFjZV0gWy0tdHJpbS1lbXB0eV0gWygtLXRyYWlsZXIgIgorIjx0b2tlbj5bKD18Oik8dmFsdWU+XSkuLi5dIFs8ZmlsZT4uLi5dIgorbXNnc3RyICIiCisiZ2l0IGludGVycHJldC10cmFpbGVycyBbLS1pbi1wbGFjZV0gWy0tdHJpbS1lbXB0eV0gWygtLXRyYWlsZXIgIgorIjx0b2tlbj5bKD18Oik8dmFsb3JlPl0pLi4uXSBbPGZpbGU+Li4uXSIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NQorbXNnaWQgImVkaXQgZmlsZXMgaW4gcGxhY2UiCittc2dzdHIgIm1vZGlmaWNhIGkgZmlsZSBzdWwgcG9zdG8iCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTYKK21zZ2lkICJ0cmltIGVtcHR5IHRyYWlsZXJzIgorbXNnc3RyICJyaW11b3ZpIHNwYXppIGRhbGxlIHN0cmluZ2hlIGZpbmFsaSB2dW90ZSIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5OQorbXNnaWQgIndoZXJlIHRvIHBsYWNlIHRoZSBuZXcgdHJhaWxlciIKK21zZ3N0ciAiZG92ZSBjb2xsb2NhcmUgbGEgbnVvdmEgc3RyaW5nYSBmaW5hbGUiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAxCittc2dpZCAiYWN0aW9uIGlmIHRyYWlsZXIgYWxyZWFkeSBleGlzdHMiCittc2dzdHIgImF6aW9uZSBkYSBlc2VndWlyZSBzZSBsYSBzdHJpbmdhIGZpbmFsZSBlc2lzdGUgZ2nDoCIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDMKK21zZ2lkICJhY3Rpb24gaWYgdHJhaWxlciBpcyBtaXNzaW5nIgorbXNnc3RyICJhemlvbmUgZGEgZXNlZ3VpcmUgc2UgbGEgc3RyaW5nYSBmaW5hbGUgw6ggbWFuY2FudGUiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA1Cittc2dpZCAib3V0cHV0IG9ubHkgdGhlIHRyYWlsZXJzIgorbXNnc3RyICJlbWV0dGkgaW4gb3V0cHV0IHNvbG8gbGUgc3RyaW5naGUgZmluYWxpIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNgorbXNnaWQgImRvIG5vdCBhcHBseSBjb25maWcgcnVsZXMiCittc2dzdHIgIm5vbiBhcHBsaWNhcmUgbGUgcmVnb2xlIGRpIGNvbmZpZ3VyYXppb25lIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNworbXNnaWQgImpvaW4gd2hpdGVzcGFjZS1jb250aW51ZWQgdmFsdWVzIgorbXNnc3RyICJ1bmlzY2kgaSB2YWxvcmkgcmVzaSBjb250aWd1aSBkYWdsaSBzcGF6aSBiaWFuY2hpIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwOAorbXNnaWQgInNldCBwYXJzaW5nIG9wdGlvbnMiCittc2dzdHIgImltcG9zdGEgbGUgb3B6aW9uaSBkaSBhbmFsaXNpIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMAorbXNnaWQgImRvIG5vdCB0cmVhdCAtLS0gc3BlY2lhbGx5IgorbXNnc3RyICJub24gdHJhdHRhcmUgbGEgc2VxdWVuemEgLS0tIGluIG1vZG8gc3BlY2lhbGUiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTExCittc2dpZCAidHJhaWxlciIKK21zZ3N0ciAic3RyaW5nYSBmaW5hbGUiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEyCittc2dpZCAidHJhaWxlcihzKSB0byBhZGQiCittc2dzdHIgInN0cmluZ2EvZSBmaW5hbGUvaSBkYSBhZ2dpdW5nZXJlIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEyMworbXNnaWQgIi0tdHJhaWxlciB3aXRoIC0tb25seS1pbnB1dCBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICItLXRyYWlsZXIgY29uIC0tb25seS1pbnB1dCBub24gaGEgc2Vuc28iCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTMzCittc2dpZCAibm8gaW5wdXQgZmlsZSBnaXZlbiBmb3IgaW4tcGxhY2UgZWRpdGluZyIKK21zZ3N0ciAibmVzc3VuIGZpbGUgZGkgaW5wdXQgc3BlY2lmaWNhdG8gcGVyIGxhIG1vZGlmaWNhIHN1bCBwb3N0byIKKworIzogYnVpbHRpbi9sb2cuYzo1NgorbXNnaWQgImdpdCBsb2cgWzxvcHRpb25zPl0gWzxyZXZpc2lvbi1yYW5nZT5dIFtbLS1dIDxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBsb2cgWzxvcHppb25pPl0gWzxpbnRlcnZhbGxvLXJldmlzaW9uaT5dIFtbLS1dIDxwZXJjb3Jzbz4uLi5dIgorCisjOiBidWlsdGluL2xvZy5jOjU3Cittc2dpZCAiZ2l0IHNob3cgWzxvcHRpb25zPl0gPG9iamVjdD4uLi4iCittc2dzdHIgImdpdCBzaG93IFs8b3B6aW9uaT5dIDxvZ2dldHRvPi4uLiIKKworIzogYnVpbHRpbi9sb2cuYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAtLWRlY29yYXRlIG9wdGlvbjogJXMiCittc2dzdHIgIm9wemlvbmUgLS1kZWNvcmF0ZSBub24gdmFsaWRhOiAlcyIKKworIzogYnVpbHRpbi9sb2cuYzoxNzQKK21zZ2lkICJzaG93IHNvdXJjZSIKK21zZ3N0ciAidmlzdWFsaXp6YSBzb3JnZW50ZSIKKworIzogYnVpbHRpbi9sb2cuYzoxNzUKK21zZ2lkICJVc2UgbWFpbCBtYXAgZmlsZSIKK21zZ3N0ciAiVXNhIGlsIGZpbGUgbWFwcGF0dXJhIGUtbWFpbCIKKworIzogYnVpbHRpbi9sb2cuYzoxNzcKK21zZ2lkICJvbmx5IGRlY29yYXRlIHJlZnMgdGhhdCBtYXRjaCA8cGF0dGVybj4iCittc2dzdHIgImRlY29yYSBzb2xvIGkgcmlmZXJpbWVudGkgY29ycmlzcG9uZGVudGkgYSA8cGF0dGVybj4iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTc5Cittc2dpZCAiZG8gbm90IGRlY29yYXRlIHJlZnMgdGhhdCBtYXRjaCA8cGF0dGVybj4iCittc2dzdHIgIm5vbiBkZWNvcmFyZSBpIHJpZmVyaW1lbnRpIGNvcnJpc3BvbmRlbnRpIGEgPHBhdHRlcm4+IgorCisjOiBidWlsdGluL2xvZy5jOjE4MAorbXNnaWQgImRlY29yYXRlIG9wdGlvbnMiCittc2dzdHIgIm9wemlvbmkgZGVjb3JhemlvbmUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTgzCittc2dpZCAiUHJvY2VzcyBsaW5lIHJhbmdlIG4sbSBpbiBmaWxlLCBjb3VudGluZyBmcm9tIDEiCittc2dzdHIgIkVsYWJvcmEgbCdpbnRlcnZhbGxvIHJpZ2hlIG4sbSBuZWwgZmlsZSwgY29udGFuZG9sZSBkYSAxIgorCisjOiBidWlsdGluL2xvZy5jOjI4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGaW5hbCBvdXRwdXQ6ICVkICVzXG4iCiBtc2dzdHIgIk91dHB1dCBmaW5hbGU6ICVkICVzXG4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NDAxIGJ1aWx0aW4vbG9nLmM6NDg5CisjOiBidWlsdGluL2xvZy5jOjUzNQogIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgcmVhZCBvYmplY3QgJXMiCi1tc2dzdHIgIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgbGVnZ2VyZSBsJ29nZ2V0dG8gJXMiCittc2dpZCAiZ2l0IHNob3cgJXM6IGJhZCBmaWxlIgorbXNnc3RyICJnaXQgc2hvdyAlczogZmlsZSBub24gdmFsaWRvIgogCi0jOiBidWlsdGluL2xvZy5jOjUxMworIzogYnVpbHRpbi9sb2cuYzo1NTAgYnVpbHRpbi9sb2cuYzo2NDUKICMsIGMtZm9ybWF0Ci1tc2dpZCAiVW5rbm93biB0eXBlOiAlZCIKLW1zZ3N0ciAiVGlwbyBzY29ub3NjaXV0bzogJWQiCittc2dpZCAiY291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGwnb2dnZXR0byAlcyIKIAotIzogYnVpbHRpbi9sb2cuYzo2MDIKKyM6IGJ1aWx0aW4vbG9nLmM6NjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdHlwZTogJWQiCittc2dzdHIgInRpcG8gc2Nvbm9zY2l1dG86ICVkIgorCisjOiBidWlsdGluL2xvZy5jOjgxNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCBjb3ZlciBmcm9tIGRlc2NyaXB0aW9uIG1vZGUiCittc2dzdHIgIiVzOiBtb2RvIGxldHRlcmEgZGEgZGVzY3JpemlvbmUgbm9uIHZhbGlkbyIKKworIzogYnVpbHRpbi9sb2cuYzo4MjEKIG1zZ2lkICJmb3JtYXQuaGVhZGVycyB3aXRob3V0IHZhbHVlIgogbXNnc3RyICJmb3JtYXQuaGVhZGVycyBub24gaGEgYWxjdW4gdmFsb3JlIgogCi0jOiBidWlsdGluL2xvZy5jOjY3NgorIzogYnVpbHRpbi9sb2cuYzo5MzYKIG1zZ2lkICJuYW1lIG9mIG91dHB1dCBkaXJlY3RvcnkgaXMgdG9vIGxvbmciCiBtc2dzdHIgImlsIG5vbWUgZGVsbGEgZGlyZWN0b3J5IGRpIG91dHB1dCDDqCB0cm9wcG8gbHVuZ28iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6Njg3CisjOiBidWlsdGluL2xvZy5jOjk1MgogIywgYy1mb3JtYXQKLW1zZ2lkICJDYW5ub3Qgb3BlbiBwYXRjaCBmaWxlICVzIgotbXNnc3RyICJJbXBvc3NpYmlsZSBhcHJpcmUgaWwgZmlsZSBwYXRjaCAlcyIKK21zZ2lkICJjYW5ub3Qgb3BlbiBwYXRjaCBmaWxlICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgaWwgZmlsZSBwYXRjaCAlcyIKIAotIzogYnVpbHRpbi9sb2cuYzo3MDEKLW1zZ2lkICJOZWVkIGV4YWN0bHkgb25lIHJhbmdlLiIKLW1zZ3N0ciAiIgorIzogYnVpbHRpbi9sb2cuYzo5NjkKK21zZ2lkICJuZWVkIGV4YWN0bHkgb25lIHJhbmdlIgorbXNnc3RyICLDqCBuZWNlc3NhcmlvIHNwZWNpZmljYXJlIGVzYXR0YW1lbnRlIHVuIGludGVydmFsbG8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NzA5Ci1tc2dpZCAiTm90IGEgcmFuZ2UuIgotbXNnc3RyICIiCisjOiBidWlsdGluL2xvZy5jOjk3OQorbXNnaWQgIm5vdCBhIHJhbmdlIgorbXNnc3RyICJpbCB2YWxvcmUgbm9uIMOoIHVuIGludGVydmFsbG8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6Nzg2Ci1tc2dpZCAiQ292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKLW1zZ3N0ciAiIgorIzogYnVpbHRpbi9sb2cuYzoxMTQzCittc2dpZCAiY292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKK21zZ3N0ciAibGEgbGV0dGVyYSBkaSBhY2NvbXBhZ25hbWVudG8gZGV2J2Vzc2VyZSBpbiBmb3JtYXRvIGUtbWFpbCIKIAotIzogYnVpbHRpbi9sb2cuYzo4NTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTE0OQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgY292ZXItbGV0dGVyIGZpbGUiCittc2dzdHIgImNyZWF6aW9uZSBkZWwgZmlsZSBsZXR0ZXJhIGRpIGFjY29tcGFnbmFtZW50byBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnNhbmUgaW4tcmVwbHktdG86ICVzIgotbXNnc3RyICIiCittc2dzdHIgInZhbG9yZSBpbi1yZXBseS10byBmb2xsZTogJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6OTMyCi1tc2dpZCAiVHdvIG91dHB1dCBkaXJlY3Rvcmllcz8iCi1tc2dzdHIgIkR1ZSBkaXJlY3RvcnkgZGkgb3V0cHV0PyIKKyM6IGJ1aWx0aW4vbG9nLmM6MTI1NQorbXNnaWQgImdpdCBmb3JtYXQtcGF0Y2ggWzxvcHRpb25zPl0gWzxzaW5jZT4gfCA8cmV2aXNpb24tcmFuZ2U+XSIKK21zZ3N0ciAiZ2l0IGZvcm1hdC1wYXRjaCBbPG9wemlvbmk+XSBbPGRhPiB8IDxpbnRlcnZhbGxvIHJldmlzaW9uaT5dIgogCi0jOiBidWlsdGluL2xvZy5jOjExNTMKKyM6IGJ1aWx0aW4vbG9nLmM6MTMxMworbXNnaWQgInR3byBvdXRwdXQgZGlyZWN0b3JpZXM/IgorbXNnc3RyICJkdWUgZGlyZWN0b3J5IGRpIG91dHB1dD8iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTQyNCBidWlsdGluL2xvZy5jOjIxOTcgYnVpbHRpbi9sb2cuYzoyMTk5IGJ1aWx0aW4vbG9nLmM6MjIxMQogIywgYy1mb3JtYXQKLW1zZ2lkICJib2d1cyBjb21taXR0ZXIgaW5mbyAlcyIKLW1zZ3N0ciAiIgorbXNnaWQgInVua25vd24gY29tbWl0ICVzIgorbXNnc3RyICJjb21taXQgJXMgc2Nvbm9zY2l1dG8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTE5OAotbXNnaWQgIi1uIGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlLiIKLW1zZ3N0ciAiIgorIzogYnVpbHRpbi9sb2cuYzoxNDM0IGJ1aWx0aW4vcmVwbGFjZS5jOjU4IGJ1aWx0aW4vcmVwbGFjZS5jOjIwNworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjEwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYiCittc2dzdHIgImltcG9zc2liaWxlIHJpc29sdmVyZSAnJXMnIGNvbWUgcmlmZXJpbWVudG8gdmFsaWRvIgogCi0jOiBidWlsdGluL2xvZy5jOjEyMDAKLW1zZ2lkICItLXN1YmplY3QtcHJlZml4IGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlLiIKLW1zZ3N0ciAiIgorIzogYnVpbHRpbi9sb2cuYzoxNDM5Cittc2dpZCAiY291bGQgbm90IGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgdHJvdmFyZSBlc2F0dGFtZW50ZSBsYSBiYXNlIGRlbCBtZXJnZSIKIAotIzogYnVpbHRpbi9sb2cuYzoxMjA4CisjOiBidWlsdGluL2xvZy5jOjE0NDMKK21zZ2lkICIiCisiZmFpbGVkIHRvIGdldCB1cHN0cmVhbSwgaWYgeW91IHdhbnQgdG8gcmVjb3JkIGJhc2UgY29tbWl0IGF1dG9tYXRpY2FsbHksXG4iCisicGxlYXNlIHVzZSBnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvIHRvIHRyYWNrIGEgcmVtb3RlIGJyYW5jaC5cbiIKKyJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseSIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIHJlY3VwZXJhcmUgbCd1cHN0cmVhbSwgc2UgdnVvaSByZWdpc3RyYXJlIGF1dG9tYXRpY2FtZW50ZVxuIgorImlsIGNvbW1pdCBkaSBiYXNlIHVzYSBnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvIHBlciB0cmFjY2lhcmUgdW4gYnJhbmNoXG4iCisicmVtb3RvLlxuIgorIkluIGFsdGVybmF0aXZhIHB1b2kgc3BlY2lmaWNhcmUgbWFudWFsbWVudGUgaWwgY29tbWl0IGRpIGJhc2UgY29uXG4iCisiLS1iYXNlPTxJRCBjb21taXQgZGkgYmFzZT4iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ2MworbXNnaWQgImZhaWxlZCB0byBmaW5kIGV4YWN0IG1lcmdlIGJhc2UiCittc2dzdHIgImltcG9zc2liaWxlIHRyb3ZhcmUgZXNhdHRhbWVudGUgbGEgYmFzZSBkZWwgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ3NAorbXNnaWQgImJhc2UgY29tbWl0IHNob3VsZCBiZSB0aGUgYW5jZXN0b3Igb2YgcmV2aXNpb24gbGlzdCIKK21zZ3N0ciAiaWwgY29tbWl0IGRpIGJhc2UgZG92cmViYmUgZXNzZXJlIGwnYW50ZW5hdG8gZGVsbCdlbGVuY28gcmV2aXNpb25pIgorCisjOiBidWlsdGluL2xvZy5jOjE0NzgKK21zZ2lkICJiYXNlIGNvbW1pdCBzaG91bGRuJ3QgYmUgaW4gcmV2aXNpb24gbGlzdCIKK21zZ3N0ciAiaWwgY29tbWl0IGRpIGJhc2Ugbm9uIGRvdnJlYmJlIGVzc2VyZSBuZWxsJ2VsZW5jbyByZXZpc2lvbmkiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTUzMQorbXNnaWQgImNhbm5vdCBnZXQgcGF0Y2ggaWQiCittc2dzdHIgImltcG9zc2liaWxlIG90dGVuZXJlIGwnSUQgZGVsbGEgcGF0Y2giCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTU4MworbXNnaWQgImZhaWxlZCB0byBpbmZlciByYW5nZS1kaWZmIHJhbmdlcyIKK21zZ3N0ciAiaW5mZXJlbnphIGRlZ2xpIGludGVydmFsbGkgcmFuZ2UtZGlmZiBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTYyOQorbXNnaWQgInVzZSBbUEFUQ0ggbi9tXSBldmVuIHdpdGggYSBzaW5nbGUgcGF0Y2giCittc2dzdHIgInVzYSBbUEFUQ0ggbi9tXSBhbmNoZSBjb24gdW5hIHNpbmdvbGEgcGF0Y2giCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTYzMgorbXNnaWQgInVzZSBbUEFUQ0hdIGV2ZW4gd2l0aCBtdWx0aXBsZSBwYXRjaGVzIgorbXNnc3RyICJ1c2EgW1BBVENIXSBhbmNoZSBjb24gcGnDuSBwYXRjaCIKKworIzogYnVpbHRpbi9sb2cuYzoxNjM2Cittc2dpZCAicHJpbnQgcGF0Y2hlcyB0byBzdGFuZGFyZCBvdXQiCittc2dzdHIgInN0YW1wYSBsZSBwYXRjaCBzdWxsbyBzdGFuZGFyZCBvdXRwdXQiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTYzOAorbXNnaWQgImdlbmVyYXRlIGEgY292ZXIgbGV0dGVyIgorbXNnc3RyICJnZW5lcmEgdW5hIGxldHRlcmEgZGkgYWNjb21wYWduYW1lbnRvIgorCisjOiBidWlsdGluL2xvZy5jOjE2NDAKK21zZ2lkICJ1c2Ugc2ltcGxlIG51bWJlciBzZXF1ZW5jZSBmb3Igb3V0cHV0IGZpbGUgbmFtZXMiCittc2dzdHIgInVzYSB1bmEgc2VxdWVuemEgbnVtZXJpY2Egc2VtcGxpY2UgcGVyIGkgbm9taSBmaWxlIGRpIG91dHB1dCIKKworIzogYnVpbHRpbi9sb2cuYzoxNjQxCittc2dpZCAic2Z4IgorbXNnc3RyICJzdWZmIgorCisjOiBidWlsdGluL2xvZy5jOjE2NDIKK21zZ2lkICJ1c2UgPHNmeD4gaW5zdGVhZCBvZiAnLnBhdGNoJyIKK21zZ3N0ciAidXNhIDxzdWZmPiBhbnppY2jDqSAnLnBhdGNoJyIKKworIzogYnVpbHRpbi9sb2cuYzoxNjQ0Cittc2dpZCAic3RhcnQgbnVtYmVyaW5nIHBhdGNoZXMgYXQgPG4+IGluc3RlYWQgb2YgMSIKK21zZ3N0ciAiaW5pemlhIGEgbnVtZXJhcmUgbGUgcGF0Y2ggZGEgPG4+IGFuemljaMOpIGRhIDEiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0NgorbXNnaWQgIm1hcmsgdGhlIHNlcmllcyBhcyBOdGggcmUtcm9sbCIKK21zZ3N0ciAiY29udHJhc3NlZ25hIGxhIHNlcmllIGNvbWUgbCduLWVzaW1hIHZlcnNpb25lIHJldmlzaW9uYXRhIgorCisjOiBidWlsdGluL2xvZy5jOjE2NDgKK21zZ2lkICJVc2UgW1JGQyBQQVRDSF0gaW5zdGVhZCBvZiBbUEFUQ0hdIgorbXNnc3RyICJVc2EgW1JGQyBQQVRDSF0gYW56aWNow6kgW1BBVENIXSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjUxCittc2dpZCAiY292ZXItZnJvbS1kZXNjcmlwdGlvbi1tb2RlIgorbXNnc3RyICJtb2RvLWxldHRlcmEtZGEtZGVzY3JpemlvbmUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1MgorbXNnaWQgImdlbmVyYXRlIHBhcnRzIG9mIGEgY292ZXIgbGV0dGVyIGJhc2VkIG9uIGEgYnJhbmNoJ3MgZGVzY3JpcHRpb24iCittc2dzdHIgIiIKKyJnZW5lcmEgcGFydGkgZGkgdW5hIGxldHRlcmEgZCdhY2NvbXBhZ25hbWVudG8gYmFzYW5kb3NpIHN1bGxhIGRlc2NyaXppb25lIGRpICIKKyJ1biBicmFuY2giCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1NAorbXNnaWQgIlVzZSBbPHByZWZpeD5dIGluc3RlYWQgb2YgW1BBVENIXSIKK21zZ3N0ciAiVXNhIFs8cHJlZmlzc28+XSBhbnppY2jDqSBbUEFUQ0hdIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTcKK21zZ2lkICJzdG9yZSByZXN1bHRpbmcgZmlsZXMgaW4gPGRpcj4iCittc2dzdHIgInNhbHZhIGkgZmlsZSByaXN1bHRhbnRpIGluIDxkaXI+IgorCisjOiBidWlsdGluL2xvZy5jOjE2NjAKK21zZ2lkICJkb24ndCBzdHJpcC9hZGQgW1BBVENIXSIKK21zZ3N0ciAibm9uIGVsaW1pbmFyZS9hZ2dpdW5nZXJlIFtQQVRDSF0iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2MworbXNnaWQgImRvbid0IG91dHB1dCBiaW5hcnkgZGlmZnMiCittc2dzdHIgIm5vbiBtYW5kYXJlIGluIG91dHB1dCBkaWZmIGJpbmFyaSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjY1Cittc2dpZCAib3V0cHV0IGFsbC16ZXJvIGhhc2ggaW4gRnJvbSBoZWFkZXIiCittc2dzdHIgIm1hbmRhIGluIG91dHB1dCB1biBoYXNoIGNvc3RpdHVpdG8gZGEgc29saSB6ZXJpIG5lbGwnaW50ZXN0YXppb25lIEZyb20iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2NworbXNnaWQgImRvbid0IGluY2x1ZGUgYSBwYXRjaCBtYXRjaGluZyBhIGNvbW1pdCB1cHN0cmVhbSIKK21zZ3N0ciAibm9uIGluY2x1ZGVyZSB1bmEgcGF0Y2ggY29ycmlzcG9uZGVudGUgYSB1biBjb21taXQgdXBzdHJlYW0iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2OQorbXNnaWQgInNob3cgcGF0Y2ggZm9ybWF0IGluc3RlYWQgb2YgZGVmYXVsdCAocGF0Y2ggKyBzdGF0KSIKK21zZ3N0ciAiIgorInZpc3VhbGl6emEgaWwgZm9ybWF0byBkZWxsYSBwYXRjaCBhbnppY2jDqSBsJ2ltcG9zdGF6aW9uZSBwcmVkZWZpbml0YSAocGF0Y2ggIgorIisgc3RhdCkiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MQorbXNnaWQgIk1lc3NhZ2luZyIKK21zZ3N0ciAiTWVzc2FnZ2lzdGljYSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjcyCittc2dpZCAiaGVhZGVyIgorbXNnc3RyICJpbnRlc3RhemlvbmUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MworbXNnaWQgImFkZCBlbWFpbCBoZWFkZXIiCittc2dzdHIgImFnZ2l1bmdpIGludGVzdGF6aW9uZSBlLW1haWwiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3NCBidWlsdGluL2xvZy5jOjE2NzYKK21zZ2lkICJlbWFpbCIKK21zZ3N0ciAiZS1tYWlsIgorCisjOiBidWlsdGluL2xvZy5jOjE2NzQKK21zZ2lkICJhZGQgVG86IGhlYWRlciIKK21zZ3N0ciAiYWdnaXVuZ2kgaW50ZXN0YXppb25lIEE6IgorCisjOiBidWlsdGluL2xvZy5jOjE2NzYKK21zZ2lkICJhZGQgQ2M6IGhlYWRlciIKK21zZ3N0ciAiYWdnaXVuZ2kgaW50ZXN0YXppb25lIENjOiIKKworIzogYnVpbHRpbi9sb2cuYzoxNjc4Cittc2dpZCAiaWRlbnQiCittc2dzdHIgImlkZW50aXTDoCIKKworIzogYnVpbHRpbi9sb2cuYzoxNjc5Cittc2dpZCAic2V0IEZyb20gYWRkcmVzcyB0byA8aWRlbnQ+IChvciBjb21taXR0ZXIgaWRlbnQgaWYgYWJzZW50KSIKK21zZ3N0ciAiIgorImltcG9zdGEgbCdpbmRpcml6em8gRGEgYSA8aWRlbnRpdMOgPiAobyBhbGwnaWRlbnRpdMOgIGRpIGNoaSBoYSBjcmVhdG8gaWwgIgorImNvbW1pdCBzZSBhc3NlbnRlKSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjgxCittc2dpZCAibWVzc2FnZS1pZCIKK21zZ3N0ciAiSUQgbWVzc2FnZ2lvIgorCisjOiBidWlsdGluL2xvZy5jOjE2ODIKK21zZ2lkICJtYWtlIGZpcnN0IG1haWwgYSByZXBseSB0byA8bWVzc2FnZS1pZD4iCittc2dzdHIgInJlbmRpIGxhIHByaW1hIGUtbWFpbCB1bmEgcmlzcG9zdGEgYSA8SUQgbWVzc2FnZ2lvPiIKKworIzogYnVpbHRpbi9sb2cuYzoxNjgzIGJ1aWx0aW4vbG9nLmM6MTY4NgorbXNnaWQgImJvdW5kYXJ5IgorbXNnc3RyICJkZWxpbWl0YXRvcmUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4NAorbXNnaWQgImF0dGFjaCB0aGUgcGF0Y2giCittc2dzdHIgImFsbGVnYSBsYSBwYXRjaCIKKworIzogYnVpbHRpbi9sb2cuYzoxNjg3Cittc2dpZCAiaW5saW5lIHRoZSBwYXRjaCIKK21zZ3N0ciAiaW5jbHVkaSBsYSBwYXRjaCBuZWwgbWVzc2FnZ2lvIgorCisjOiBidWlsdGluL2xvZy5jOjE2OTEKK21zZ2lkICJlbmFibGUgbWVzc2FnZSB0aHJlYWRpbmcsIHN0eWxlczogc2hhbGxvdywgZGVlcCIKK21zZ3N0ciAiIgorImFiaWxpdGEgaWwgcmFnZ3J1cHBhbWVudG8gbWVzc2FnZ2kgcGVyIGNvbnZlcnNhemlvbmUsIHN0aWxpOiBzdXBlcmZpY2lhbGUsICIKKyJwcm9mb25kbyIKKworIzogYnVpbHRpbi9sb2cuYzoxNjkzCittc2dpZCAic2lnbmF0dXJlIgorbXNnc3RyICJmaXJtYSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjk0Cittc2dpZCAiYWRkIGEgc2lnbmF0dXJlIgorbXNnc3RyICJhZ2dpdW5naSB1bmEgZmlybWEiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5NQorbXNnaWQgImJhc2UtY29tbWl0IgorbXNnc3RyICJjb21taXQgZGkgYmFzZSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjk2Cittc2dpZCAiYWRkIHByZXJlcXVpc2l0ZSB0cmVlIGluZm8gdG8gdGhlIHBhdGNoIHNlcmllcyIKK21zZ3N0ciAiIgorImFnZ2l1bmdpIGxlIGluZm9ybWF6aW9uaSBwcmVyZXF1aXNpdG8gcGVyIGwnYWxiZXJvIGFsbGEgc2VyaWUgZGVsbGUgcGF0Y2giCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5OAorbXNnaWQgImFkZCBhIHNpZ25hdHVyZSBmcm9tIGEgZmlsZSIKK21zZ3N0ciAiYWdnaXVuZ2kgdW5hIGZpcm1hIGRhIGZpbGUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5OQorbXNnaWQgImRvbid0IHByaW50IHRoZSBwYXRjaCBmaWxlbmFtZXMiCittc2dzdHIgIm5vbiBzdGFtcGFyZSBpIG5vbWkgZmlsZSBkZWxsZSBwYXRjaCIKKworIzogYnVpbHRpbi9sb2cuYzoxNzAxCittc2dpZCAic2hvdyBwcm9ncmVzcyB3aGlsZSBnZW5lcmF0aW5nIHBhdGNoZXMiCittc2dzdHIgInZpc3VhbGl6emEgbCdhdmFuemFtZW50byBkZWxsJ29wZXJhemlvbmUgZGkgZ2VuZXJhemlvbmUgcGF0Y2giCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMworbXNnaWQgInNob3cgY2hhbmdlcyBhZ2FpbnN0IDxyZXY+IGluIGNvdmVyIGxldHRlciBvciBzaW5nbGUgcGF0Y2giCittc2dzdHIgIiIKKyJ2aXN1YWxpenphIGxlIG1vZGlmaWNoZSByaXNwZXR0byBhIDxyZXZpc2lvbmU+IG5lbGxhIGxldHRlcmEgZGkgIgorImFjY29tcGFnbmFtZW50byBvIGluIHVuYSBwYXRjaCBzaW5nb2xhIgorCisjOiBidWlsdGluL2xvZy5jOjE3MDYKK21zZ2lkICJzaG93IGNoYW5nZXMgYWdhaW5zdCA8cmVmc3BlYz4gaW4gY292ZXIgbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKK21zZ3N0ciAiIgorInZpc3VhbGl6emEgbGUgbW9kaWZpY2hlIHJpc3BldHRvIGEgPHNwZWNpZmljYXRvcmUgcmV2aXNpb25lPiBuZWxsYSBsZXR0ZXJhICIKKyJkaSBhY2NvbXBhZ25hbWVudG8gbyBpbiB1bmEgcGF0Y2ggc2luZ29sYSIKKworIzogYnVpbHRpbi9sb2cuYzoxNzA4Cittc2dpZCAicGVyY2VudGFnZSBieSB3aGljaCBjcmVhdGlvbiBpcyB3ZWlnaHRlZCIKK21zZ3N0ciAicGVyY2VudHVhbGUgaW4gYmFzZSBhIGN1aSB2aWVuZSBwZXNhdGEgbGEgY3JlYXppb25lIgorCisjOiBidWlsdGluL2xvZy5jOjE3OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpZGVudCBsaW5lOiAlcyIKK21zZ3N0ciAicmlnYSBpZGVudCBub24gdmFsaWRhOiAlcyIKKworIzogYnVpbHRpbi9sb2cuYzoxODA3Cittc2dpZCAiLW4gYW5kIC1rIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgImxlIG9wemlvbmkgLW4gZSAtayBzb25vIG11dHVhbWVudGUgZXNjbHVzaXZlIgorCisjOiBidWlsdGluL2xvZy5jOjE4MDkKK21zZ2lkICItLXN1YmplY3QtcHJlZml4Ly0tcmZjIGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICJsZSBvcHppb25pIC0tc3ViamVjdC1wcmVmaXgvLS1yZmMgZSAtayBzb25vIG11dHVhbWVudGUgZXNjbHVzaXZlIgorCisjOiBidWlsdGluL2xvZy5jOjE4MTcKIG1zZ2lkICItLW5hbWUtb25seSBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLW5hbWUtb25seSBub24gaGEgc2Vuc28iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTIxMAorIzogYnVpbHRpbi9sb2cuYzoxODE5CiBtc2dpZCAiLS1uYW1lLXN0YXR1cyBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLW5hbWUtc3RhdHVzIG5vbiBoYSBzZW5zbyIKIAotIzogYnVpbHRpbi9sb2cuYzoxMjEyCisjOiBidWlsdGluL2xvZy5jOjE4MjEKIG1zZ2lkICItLWNoZWNrIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tY2hlY2sgbm9uIGhhIHNlbnNvIgogCi0jOiBidWlsdGluL2xvZy5jOjEyMzUKKyM6IGJ1aWx0aW4vbG9nLmM6MTg1NAogbXNnaWQgInN0YW5kYXJkIG91dHB1dCwgb3IgZGlyZWN0b3J5LCB3aGljaCBvbmU/IgogbXNnc3RyICJzdGFuZGFyZCBvdXRwdXQsIG8gZGlyZWN0b3J5LCBxdWFsZSBkZWkgZHVlPyIKIAotIzogYnVpbHRpbi9sb2cuYzoxMjM3CisjOiBidWlsdGluL2xvZy5jOjE5NTgKK21zZ2lkICItLWludGVyZGlmZiByZXF1aXJlcyAtLWNvdmVyLWxldHRlciBvciBzaW5nbGUgcGF0Y2giCittc2dzdHIgIi0taW50ZXJkaWZmIHJpY2hpZWRlIC0tY292ZXItbGV0dGVyIG8gdW5hIHNpbmdvbGEgcGF0Y2giCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2MgorbXNnaWQgIkludGVyZGlmZjoiCittc2dzdHIgIkludGVyZGlmZjoiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2MwogIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgotbXNnc3RyICJOb24gw6ggc3RhdG8gcG9zc2liaWxlIGNyZWFyZSBsYSBkaXJlY3RvcnkgJyVzJyIKK21zZ2lkICJJbnRlcmRpZmYgYWdhaW5zdCB2JWQ6IgorbXNnc3RyICJJbnRlcmRpZmYgcmlzcGV0dG8gYWxsYSB2ZXJzaW9uZSAlZDoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTM5MAotbXNnaWQgIkZhaWxlZCB0byBjcmVhdGUgb3V0cHV0IGZpbGVzIgotbXNnc3RyICJDcmVhemlvbmUgZGVpIGZpbGUgZGkgb3V0cHV0IG5vbiByaXVzY2l0YSIKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2OQorbXNnaWQgIi0tY3JlYXRpb24tZmFjdG9yIHJlcXVpcmVzIC0tcmFuZ2UtZGlmZiIKK21zZ3N0ciAiLS1jcmVhdGlvbi1mYWN0b3IgcmljaGllZGUgLS1yYW5nZS1kaWZmIgogCi0jOiBidWlsdGluL2xvZy5jOjE0OTQKKyM6IGJ1aWx0aW4vbG9nLmM6MTk3MworbXNnaWQgIi0tcmFuZ2UtZGlmZiByZXF1aXJlcyAtLWNvdmVyLWxldHRlciBvciBzaW5nbGUgcGF0Y2giCittc2dzdHIgIi0tcmFuZ2UtZGlmZiByaWNoaWVkZSAtLWNvdmVyLWxldHRlciBvIHVuYSBzaW5nb2xhIHBhdGNoIgorCisjOiBidWlsdGluL2xvZy5jOjE5ODEKK21zZ2lkICJSYW5nZS1kaWZmOiIKK21zZ3N0ciAiUmFuZ2UtZGlmZjoiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTk4MgorIywgYy1mb3JtYXQKK21zZ2lkICJSYW5nZS1kaWZmIGFnYWluc3QgdiVkOiIKK21zZ3N0ciAiUmFuZ2UtZGlmZiByaXNwZXR0byBhbGxhIHZlcnNpb25lICVkOiIKKworIzogYnVpbHRpbi9sb2cuYzoxOTkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHNpZ25hdHVyZSBmaWxlICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaWwgZmlsZSBmaXJtYSAnJXMnIgorCisjOiBidWlsdGluL2xvZy5jOjIwMjkKK21zZ2lkICJHZW5lcmF0aW5nIHBhdGNoZXMiCittc2dzdHIgIkdlbmVyYXppb25lIGRlbGxlIHBhdGNoIGluIGNvcnNvIgorCisjOiBidWlsdGluL2xvZy5jOjIwNzMKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIG91dHB1dCBmaWxlcyIKK21zZ3N0ciAiY3JlYXppb25lIGRlaSBmaWxlIGRpIG91dHB1dCBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MjEzMgorbXNnaWQgImdpdCBjaGVycnkgWy12XSBbPHVwc3RyZWFtPiBbPGhlYWQ+IFs8bGltaXQ+XV1dIgorbXNnc3RyICJnaXQgY2hlcnJ5IFstdl0gWzx1cHN0cmVhbT4gWzxoZWFkPiBbPGxpbWl0ZT5dXV0iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IGZpbmQgYSB0cmFja2VkIHJlbW90ZSBicmFuY2gsIHBsZWFzZSBzcGVjaWZ5IDx1cHN0cmVhbT4gbWFudWFsbHkuXG4iCiBtc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSB0cm92YXJlIHVuIGJyYW5jaCByZW1vdG8gdHJhY2NpYXRvLCBzcGVjaWZpY2EgPHVwc3RyZWFtPiAiCisibWFudWFsbWVudGUuXG4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUxMCBidWlsdGluL2xvZy5jOjE1MTIgYnVpbHRpbi9sb2cuYzoxNTI0CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NDcwCittc2dpZCAiZ2l0IGxzLWZpbGVzIFs8b3B0aW9ucz5dIFs8ZmlsZT4uLi5dIgorbXNnc3RyICJnaXQgbHMtZmlsZXMgWzxvcHppb25pPl0gWzxmaWxlPi4uLl0iCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjYKK21zZ2lkICJpZGVudGlmeSB0aGUgZmlsZSBzdGF0dXMgd2l0aCB0YWdzIgorbXNnc3RyICJpZGVudGlmaWNhIGxvIHN0YXRvIGRlbCBmaWxlIGNvbiBpIHRhZyIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjUyOAorbXNnaWQgInVzZSBsb3dlcmNhc2UgbGV0dGVycyBmb3IgJ2Fzc3VtZSB1bmNoYW5nZWQnIGZpbGVzIgorbXNnc3RyICJ1c2EgbGV0dGVyZSBtaW51c2NvbGUgcGVyIGkgZmlsZSBjaGUgc2kgJ2Fzc3Vtb25vIG5vbiBtb2RpZmljYXRpJyIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMAorbXNnaWQgInVzZSBsb3dlcmNhc2UgbGV0dGVycyBmb3IgJ2ZzbW9uaXRvciBjbGVhbicgZmlsZXMiCittc2dzdHIgInVzYSBsZXR0ZXJlIG1pbnVzY29sZSBwZXIgaSBmaWxlICdmc21vbml0b3IgY2xlYW4nIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTMyCittc2dpZCAic2hvdyBjYWNoZWQgZmlsZXMgaW4gdGhlIG91dHB1dCAoZGVmYXVsdCkiCittc2dzdHIgInZpc3VhbGl6emEgZmlsZSBpbiBjYWNoZSBuZWxsJ291dHB1dCAoaW1wb3N0YXppb25lIHByZWRlZmluaXRhKSIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNAorbXNnaWQgInNob3cgZGVsZXRlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgorbXNnc3RyICJ2aXN1YWxpenphIGZpbGUgZWxpbWluYXRpIG5lbGwnb3V0cHV0IgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTM2Cittc2dpZCAic2hvdyBtb2RpZmllZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgorbXNnc3RyICJ2aXN1YWxpenphIGZpbGUgbW9kaWZpY2F0aSBuZWxsJ291dHB1dCIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOAorbXNnaWQgInNob3cgb3RoZXIgZmlsZXMgaW4gdGhlIG91dHB1dCIKK21zZ3N0ciAidmlzdWFsaXp6YSBhbHRyaSBmaWxlIG5lbGwnb3V0cHV0IgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQwCittc2dpZCAic2hvdyBpZ25vcmVkIGZpbGVzIGluIHRoZSBvdXRwdXQiCittc2dzdHIgInZpc3VhbGl6emEgZmlsZSBpZ25vcmF0aSBuZWxsJ291dHB1dCIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MworbXNnaWQgInNob3cgc3RhZ2VkIGNvbnRlbnRzJyBvYmplY3QgbmFtZSBpbiB0aGUgb3V0cHV0IgorbXNnc3RyICIiCisidmlzdWFsaXp6YSBpbCBub21lIGRlbGwnb2dnZXR0byBcImNvbnRlbnV0aSBuZWxsJ2FyZWEgZGkgc3RhZ2luZ1wiICIKKyJuZWxsJ291dHB1dCIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU0NQorbXNnaWQgInNob3cgZmlsZXMgb24gdGhlIGZpbGVzeXN0ZW0gdGhhdCBuZWVkIHRvIGJlIHJlbW92ZWQiCittc2dzdHIgInZpc3VhbGl6emEgaSBmaWxlIG5lbCBmaWxlc3lzdGVtIGNoZSBkZXZvbm8gZXNzZXJlIHJpbW9zc2kiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDcKK21zZ2lkICJzaG93ICdvdGhlcicgZGlyZWN0b3JpZXMnIG5hbWVzIG9ubHkiCittc2dzdHIgInZpc3VhbGl6emEgc29sbyBpIG5vbWkgZGVsbGUgZGlyZWN0b3J5ICdhbHRybyciCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDkKK21zZ2lkICJzaG93IGxpbmUgZW5kaW5ncyBvZiBmaWxlcyIKK21zZ3N0ciAidmlzdWFsaXp6YSBpIGZpbmUgcmlnYSBkZWkgZmlsZSIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1MQorbXNnaWQgImRvbid0IHNob3cgZW1wdHkgZGlyZWN0b3JpZXMiCittc2dzdHIgIm5vbiB2aXN1YWxpenphcmUgbGUgZGlyZWN0b3J5IHZ1b3RlIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU0Cittc2dpZCAic2hvdyB1bm1lcmdlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgorbXNnc3RyICJ2aXN1YWxpenphIGZpbGUgbm9uIHNvdHRvcG9zdGkgYSBtZXJnZSBuZWxsJ291dHB1dCIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NgorbXNnaWQgInNob3cgcmVzb2x2ZS11bmRvIGluZm9ybWF0aW9uIgorbXNnc3RyICJ2aXN1YWxpenphIGluZm9ybWF6aW9uaSByZXNvbHZlLXVuZG8iCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTgKK21zZ2lkICJza2lwIGZpbGVzIG1hdGNoaW5nIHBhdHRlcm4iCittc2dzdHIgInNhbHRhIGkgZmlsZSBjb3JyaXNwb25kZW50aSBhIFwiZXNwcmVzc2lvbmUgcmVnb2xhcmVcIiIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU2MQorbXNnaWQgImV4Y2x1ZGUgcGF0dGVybnMgYXJlIHJlYWQgZnJvbSA8ZmlsZT4iCittc2dzdHIgImxlIGVzcHJlc3Npb25pIHJlZ29sYXJpIGRpIGVzY2x1c2lvbmUgc29ubyBsZXR0ZSBkYSA8ZmlsZT4iCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjQKK21zZ2lkICJyZWFkIGFkZGl0aW9uYWwgcGVyLWRpcmVjdG9yeSBleGNsdWRlIHBhdHRlcm5zIGluIDxmaWxlPiIKK21zZ3N0ciAiIgorImxlZ2dpIGVzcHJlc3Npb25pIHJlZ29sYXJpIGRpIGVzY2x1c2lvbmUgYWdnaXVudGl2ZSBzcGVjaWZpY2hlIHBlciBkaXJlY3RvcnkgIgorImRhIDxmaWxlPiIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NgorbXNnaWQgImFkZCB0aGUgc3RhbmRhcmQgZ2l0IGV4Y2x1c2lvbnMiCittc2dzdHIgImFnZ2l1bmdpIGxlIGVzY2x1c2lvbmkgc3RhbmRhcmQgZGkgR2l0IgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTcwCittc2dpZCAibWFrZSB0aGUgb3V0cHV0IHJlbGF0aXZlIHRvIHRoZSBwcm9qZWN0IHRvcCBkaXJlY3RvcnkiCittc2dzdHIgInJlbmRpIGwnb3V0cHV0IHJlbGF0aXZvIGFsbGEgZGlyZWN0b3J5IHJhZGljZSBkZWwgcHJvZ2V0dG8iCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzMKK21zZ2lkICJyZWN1cnNlIHRocm91Z2ggc3VibW9kdWxlcyIKK21zZ3N0ciAiZXNlZ3VpIHJpY29yc2l2YW1lbnRlIHN1aSBzb3R0b21vZHVsaSIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NQorbXNnaWQgImlmIGFueSA8ZmlsZT4gaXMgbm90IGluIHRoZSBpbmRleCwgdHJlYXQgdGhpcyBhcyBhbiBlcnJvciIKK21zZ3N0ciAic2UgZGVpIDxmaWxlPiBub24gc29ubyBuZWxsJ2luZGljZSwgY29uc2lkZXJhbG8gdW4gZXJyb3JlIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc2Cittc2dpZCAidHJlZS1pc2giCittc2dzdHIgImVzcHJlc3Npb25lIGFsYmVybyIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NworbXNnaWQgInByZXRlbmQgdGhhdCBwYXRocyByZW1vdmVkIHNpbmNlIDx0cmVlLWlzaD4gYXJlIHN0aWxsIHByZXNlbnQiCittc2dzdHIgIiIKKyJmaW5naSBjaGUgaSBwZXJjb3JzaSByaW1vc3NpIGRhIDxlc3ByZXNzaW9uZSBhbGJlcm8+IGluIHBvaSBzaWFubyBhbmNvcmEgIgorInByZXNlbnRpIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc5Cittc2dpZCAic2hvdyBkZWJ1Z2dpbmcgZGF0YSIKK21zZ3N0ciAidmlzdWFsaXp6YSBpbmZvcm1hemlvbmkgZGkgZGVidWciCisKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6OQorbXNnaWQgIiIKKyJnaXQgbHMtcmVtb3RlIFstLWhlYWRzXSBbLS10YWdzXSBbLS1yZWZzXSBbLS11cGxvYWQtcGFjaz08ZXhlYz5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgWy1xIHwgLS1xdWlldF0gWy0tZXhpdC1jb2RlXSBbLS1nZXQtdXJsXVxuIgorIiAgICAgICAgICAgICAgICAgICAgIFstLXN5bXJlZl0gWzxyZXBvc2l0b3J5PiBbPHJlZnM+Li4uXV0iCittc2dzdHIgIiIKKyJnaXQgbHMtcmVtb3RlIFstLWhlYWRzXSBbLS10YWdzXSBbLS1yZWZzXSBbLS11cGxvYWQtcGFjaz08ZXNlZ3VpYmlsZT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgWy1xIHwgLS1xdWlldF0gWy0tZXhpdC1jb2RlXSBbLS1nZXQtdXJsXVxuIgorIiAgICAgICAgICAgICAgICAgICAgIFstLXN5bXJlZl0gWzxyZXBvc2l0b3J5PiBbPHJpZmVyaW1lbnRpPi4uLl1dIgorCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjU5Cittc2dpZCAiZG8gbm90IHByaW50IHJlbW90ZSBVUkwiCittc2dzdHIgIm5vbiBzdGFtcGFyZSBsJ1VSTCBkZWwgcmVtb3RvIgorCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjYwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjIgYnVpbHRpbi9yZWJhc2UuYzoxNTYxCittc2dpZCAiZXhlYyIKK21zZ3N0ciAiZXNlZ3VpYmlsZSIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2MSBidWlsdGluL2xzLXJlbW90ZS5jOjYzCittc2dpZCAicGF0aCBvZiBnaXQtdXBsb2FkLXBhY2sgb24gdGhlIHJlbW90ZSBob3N0IgorbXNnc3RyICJwZXJjb3JzbyBkaSBnaXQtdXBsb2FkLXBhY2sgc3VsbCdob3N0IHJlbW90byIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2NQorbXNnaWQgImxpbWl0IHRvIHRhZ3MiCittc2dzdHIgImxpbWl0YXRpIGFpIHRhZyIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2NgorbXNnaWQgImxpbWl0IHRvIGhlYWRzIgorbXNnc3RyICJsaW1pdGF0aSBhbGxlIGhlYWQiCisKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjcKK21zZ2lkICJkbyBub3Qgc2hvdyBwZWVsZWQgdGFncyIKK21zZ3N0ciAibm9uIHZpc3VhbGl6emFyZSBpIHRhZyByaW1vc3NpIgorCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjY5Cittc2dpZCAidGFrZSB1cmwuPGJhc2U+Lmluc3RlYWRPZiBpbnRvIGFjY291bnQiCittc2dzdHIgInRpZW5pIGluIGNvbnNpZGVyYXppb25lIHVybC48YmFzZT4uaW5zdGVhZE9mIgorCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjcyCittc2dpZCAiZXhpdCB3aXRoIGV4aXQgY29kZSAyIGlmIG5vIG1hdGNoaW5nIHJlZnMgYXJlIGZvdW5kIgorbXNnc3RyICIiCisiZXNjaSBjb24gY29kaWNlIGQndXNjaXRhIDIgc2Ugbm9uIHNvbm8gc3RhdGkgdHJvdmF0aSByaWZlcmltZW50aSAiCisiY29ycmlzcG9uZGVudGkiCisKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzUKK21zZ2lkICJzaG93IHVuZGVybHlpbmcgcmVmIGluIGFkZGl0aW9uIHRvIHRoZSBvYmplY3QgcG9pbnRlZCBieSBpdCIKK21zZ3N0ciAidmlzdWFsaXp6YSByaWZlcmltZW50byBzb3R0b3N0YW50ZSBvbHRyZSBhbGwnb2dnZXR0byBhIGN1aSBwdW50YSIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MzAKK21zZ2lkICJnaXQgbHMtdHJlZSBbPG9wdGlvbnM+XSA8dHJlZS1pc2g+IFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgbHMtdHJlZSBbPG9wemlvbmk+XSA8ZXNwcmVzc2lvbmUgYWxiZXJvPiBbPHBlcmNvcnNvPi4uLl0iCisKKyM6IGJ1aWx0aW4vbHMtdHJlZS5jOjEyOAorbXNnaWQgIm9ubHkgc2hvdyB0cmVlcyIKK21zZ3N0ciAidmlzdWFsaXp6YSBzb2xvIGFsYmVyaSIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTMwCittc2dpZCAicmVjdXJzZSBpbnRvIHN1YnRyZWVzIgorbXNnc3RyICJlc2VndWkgcmljb3JzaXZhbWVudGUgbmVpIHNvdHRvYWxiZXJpIgorCisjOiBidWlsdGluL2xzLXRyZWUuYzoxMzIKK21zZ2lkICJzaG93IHRyZWVzIHdoZW4gcmVjdXJzaW5nIgorbXNnc3RyICJ2aXN1YWxpenphIGdsaSBhbGJlcmkgZHVyYW50ZSBsYSByaWNvcnNpb25lIgorCisjOiBidWlsdGluL2xzLXRyZWUuYzoxMzUKK21zZ2lkICJ0ZXJtaW5hdGUgZW50cmllcyB3aXRoIE5VTCBieXRlIgorbXNnc3RyICJ0ZXJtaW5hIGxlIHZvY2kgY29uIHVuIGJ5dGUgTlVMIgorCisjOiBidWlsdGluL2xzLXRyZWUuYzoxMzYKK21zZ2lkICJpbmNsdWRlIG9iamVjdCBzaXplIgorbXNnc3RyICJpbmNsdWRpIGRpbWVuc2lvbmkgb2dnZXR0byIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTM4IGJ1aWx0aW4vbHMtdHJlZS5jOjE0MAorbXNnaWQgImxpc3Qgb25seSBmaWxlbmFtZXMiCittc2dzdHIgImVsZW5jYSBzb2xvIGkgbm9taSBmaWxlIgorCisjOiBidWlsdGluL2xzLXRyZWUuYzoxNDMKK21zZ2lkICJ1c2UgZnVsbCBwYXRoIG5hbWVzIgorbXNnc3RyICJ1c2Egbm9taSBwZXJjb3JzbyBjb21wbGV0aSIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTQ1Cittc2dpZCAibGlzdCBlbnRpcmUgdHJlZTsgbm90IGp1c3QgY3VycmVudCBkaXJlY3RvcnkgKGltcGxpZXMgLS1mdWxsLW5hbWUpIgorbXNnc3RyICIiCisiZWxlbmNhIGwnaW50ZXJvIGFsYmVybzsgbm9uIHNvbG8gbGEgZGlyZWN0b3J5IGNvcnJlbnRlIChpbXBsaWNhIC0tZnVsbC1uYW1lKSIKKworIzogYnVpbHRpbi9tYWlsc3BsaXQuYzoyNDEKICMsIGMtZm9ybWF0Ci1tc2dpZCAiVW5rbm93biBjb21taXQgJXMiCi1tc2dzdHIgIkNvbW1pdCAlcyBzY29ub3NjaXV0byIKK21zZ2lkICJlbXB0eSBtYm94OiAnJXMnIgorbXNnc3RyICJtYm94IHZ1b3RhOiAnJXMnIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1NQorbXNnaWQgImdpdCBtZXJnZSBbPG9wdGlvbnM+XSBbPGNvbW1pdD4uLi5dIgorbXNnc3RyICJnaXQgbWVyZ2UgWzxvcHppb25pPl0gWzxjb21taXQ+Li4uXSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjU2Cittc2dpZCAiZ2l0IG1lcmdlIC0tYWJvcnQiCittc2dzdHIgImdpdCBtZXJnZSAtLWFib3J0IgorCisjOiBidWlsdGluL21lcmdlLmM6NTcKK21zZ2lkICJnaXQgbWVyZ2UgLS1jb250aW51ZSIKK21zZ3N0ciAiZ2l0IG1lcmdlIC0tY29udGludWUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTkKIG1zZ2lkICJzd2l0Y2ggYG0nIHJlcXVpcmVzIGEgdmFsdWUiCiBtc2dzdHIgImxvIHN3aXRjaCAnbScgcmljaGllZGUgdW4gdmFsb3JlIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI3CisjOiBidWlsdGluL21lcmdlLmM6MTQyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIHJlcXVpcmVzIGEgdmFsdWUiCittc2dzdHIgImwnb3B6aW9uZSBgJXMnIHJpY2hpZWRlIHVuIHZhbG9yZSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCBtZXJnZSBzdHJhdGVneSAnJXMnLlxuIgogbXNnc3RyICJOb24gw6ggc3RhdG8gcG9zc2liaWxlIHRyb3ZhcmUgbGEgc3RyYXRlZ2lhIGRpIG1lcmdlICclcycuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXZhaWxhYmxlIHN0cmF0ZWdpZXMgYXJlOiIKIG1zZ3N0ciAiTGUgc3RyYXRlZ2llIGRpc3BvbmliaWxpIHNvbm86IgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMzCisjOiBidWlsdGluL21lcmdlLmM6MTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF2YWlsYWJsZSBjdXN0b20gc3RyYXRlZ2llcyBhcmU6IgogbXNnc3RyICJMZSBzdHJhdGVnaWUgcGVyc29uYWxpenphdGUgZGlzcG9uaWJpbGkgc29ubzoiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDUgYnVpbHRpbi9wdWxsLmM6MTMyCittc2dpZCAiZG8gbm90IHNob3cgYSBkaWZmc3RhdCBhdCB0aGUgZW5kIG9mIHRoZSBtZXJnZSIKK21zZ3N0ciAibm9uIHZpc3VhbGl6emFyZSB1biBkaWZmc3RhdCBhbCB0ZXJtaW5lIGRlbCBtZXJnZSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI0OCBidWlsdGluL3B1bGwuYzoxMzUKK21zZ2lkICJzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCittc2dzdHIgInZpc3VhbGl6emEgdW4gZGlmZnN0YXQgYWwgdGVybWluZSBkZWwgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDkgYnVpbHRpbi9wdWxsLmM6MTM4Cittc2dpZCAiKHN5bm9ueW0gdG8gLS1zdGF0KSIKK21zZ3N0ciAiKHNpbm9uaW1vIGRpIC0tc3RhdCkiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTEgYnVpbHRpbi9wdWxsLmM6MTQxCittc2dpZCAiYWRkIChhdCBtb3N0IDxuPikgZW50cmllcyBmcm9tIHNob3J0bG9nIHRvIG1lcmdlIGNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICIiCisiYWdnaXVuZ2kgKGFsIHBpw7kgPG4+KSB2b2NpIGRhbCByZWdpc3RybyBicmV2ZSBhbCBtZXNzYWdnaW8gZGkgY29tbWl0IGRlbCAiCisibWVyZ2UiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTQgYnVpbHRpbi9wdWxsLmM6MTQ3Cittc2dpZCAiY3JlYXRlIGEgc2luZ2xlIGNvbW1pdCBpbnN0ZWFkIG9mIGRvaW5nIGEgbWVyZ2UiCittc2dzdHIgImNyZWEgdW4gc2luZ29sbyBjb21taXQgYW56aWNow6kgZXNlZ3VpcmUgdW4gbWVyZ2UiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTYgYnVpbHRpbi9wdWxsLmM6MTUwCittc2dpZCAicGVyZm9ybSBhIGNvbW1pdCBpZiB0aGUgbWVyZ2Ugc3VjY2VlZHMgKGRlZmF1bHQpIgorbXNnc3RyICJlc2VndWkgdW4gY29tbWl0IHNlIGlsIG1lcmdlIGhhIHN1Y2Nlc3NvIChpbXBvc3RhemlvbmUgcHJlZGVmaW5pdGEpIgorCisjOiBidWlsdGluL21lcmdlLmM6MjU4IGJ1aWx0aW4vcHVsbC5jOjE1MworbXNnaWQgImVkaXQgbWVzc2FnZSBiZWZvcmUgY29tbWl0dGluZyIKK21zZ3N0ciAibW9kaWZpY2EgaWwgbWVzc2FnZ2lvIHByaW1hIGRpIGVzZWd1aXJlIGlsIGNvbW1pdCIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI2MAorbXNnaWQgImFsbG93IGZhc3QtZm9yd2FyZCAoZGVmYXVsdCkiCittc2dzdHIgImNvbnNlbnRpIGZhc3QgZm9yd2FyZCAoaW1wb3N0YXppb25lIHByZWRlZmluaXRhKSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI2MiBidWlsdGluL3B1bGwuYzoxNjAKK21zZ2lkICJhYm9ydCBpZiBmYXN0LWZvcndhcmQgaXMgbm90IHBvc3NpYmxlIgorbXNnc3RyICJpbnRlcnJvbXBpIHNlIGlsIGZhc3QgZm9yd2FyZCBub24gw6ggcG9zc2liaWxlIgorCisjOiBidWlsdGluL21lcmdlLmM6MjY2IGJ1aWx0aW4vcHVsbC5jOjE2MworbXNnaWQgInZlcmlmeSB0aGF0IHRoZSBuYW1lZCBjb21taXQgaGFzIGEgdmFsaWQgR1BHIHNpZ25hdHVyZSIKK21zZ3N0ciAidmVyaWZpY2EgY2hlIGlsIGNvbW1pdCBzcGVjaWZpY2F0byBhYmJpYSB1bmEgZmlybWEgR1BHIHZhbGlkYSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI2NyBidWlsdGluL25vdGVzLmM6Nzg3IGJ1aWx0aW4vcHVsbC5jOjE2NworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjAgYnVpbHRpbi9yZWJhc2UuYzoxNTc1IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0Cittc2dpZCAic3RyYXRlZ3kiCittc2dzdHIgInN0cmF0ZWdpYSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI2OCBidWlsdGluL3B1bGwuYzoxNjgKK21zZ2lkICJtZXJnZSBzdHJhdGVneSB0byB1c2UiCittc2dzdHIgInN0cmF0ZWdpYSBkaSBtZXJnZSBkYSB1c2FyZSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI2OSBidWlsdGluL3B1bGwuYzoxNzEKK21zZ2lkICJvcHRpb249dmFsdWUiCittc2dzdHIgIm9wemlvbmU9dmFsb3JlIgorCisjOiBidWlsdGluL21lcmdlLmM6MjcwIGJ1aWx0aW4vcHVsbC5jOjE3MgorbXNnaWQgIm9wdGlvbiBmb3Igc2VsZWN0ZWQgbWVyZ2Ugc3RyYXRlZ3kiCittc2dzdHIgIm9wemlvbmUgcGVyIGxhIHN0cmF0ZWdpYSBkaSBtZXJnZSBzZWxlemlvbmF0YSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI3MgorbXNnaWQgIm1lcmdlIGNvbW1pdCBtZXNzYWdlIChmb3IgYSBub24tZmFzdC1mb3J3YXJkIG1lcmdlKSIKK21zZ3N0ciAibWVzc2FnZ2lvIGRpIGNvbW1pdCBkZWwgbWVyZ2UgKHBlciB1biBtZXJnZSBub24gZmFzdCBmb3J3YXJkKSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI3OQorbXNnaWQgImFib3J0IHRoZSBjdXJyZW50IGluLXByb2dyZXNzIG1lcmdlIgorbXNnc3RyICJpbnRlcnJvbXBpIGlsIG1lcmdlIGF0dHVhbG1lbnRlIGluIGNvcnNvIgorCisjOiBidWlsdGluL21lcmdlLmM6MjgxCittc2dpZCAiLS1hYm9ydCBidXQgbGVhdmUgaW5kZXggYW5kIHdvcmtpbmcgdHJlZSBhbG9uZSIKK21zZ3N0ciAiZXNlZ3VpIC0tYWJvcnQgbWEgbWFudGllbmkgaW1tdXRhdGkgbCdpbmRpY2UgZSBsJ2FsYmVybyBkaSBsYXZvcm8iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODMKK21zZ2lkICJjb250aW51ZSB0aGUgY3VycmVudCBpbi1wcm9ncmVzcyBtZXJnZSIKK21zZ3N0ciAiY29udGludWEgaWwgbWVyZ2UgYXR0dWFsbWVudGUgaW4gY29yc28iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODUgYnVpbHRpbi9wdWxsLmM6MTc5Cittc2dpZCAiYWxsb3cgbWVyZ2luZyB1bnJlbGF0ZWQgaGlzdG9yaWVzIgorbXNnc3RyICJjb25zZW50aSBkaSB1bmlyZSBjcm9ub2xvZ2llIG5vbiBjb3JyZWxhdGUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyOTEKK21zZ2lkICJieXBhc3MgcHJlLW1lcmdlLWNvbW1pdCBhbmQgY29tbWl0LW1zZyBob29rcyIKK21zZ3N0ciAiaWdub3JhIGdsaSBob29rIHByZS1tZXJnZS1jb21taXQgZSBjb21taXQtbXNnIgorCisjOiBidWlsdGluL21lcmdlLmM6MzA4CiBtc2dpZCAiY291bGQgbm90IHJ1biBzdGFzaC4iCiBtc2dzdHIgIm5vbiDDqCBzdGF0byBwb3NzaWJpbGUgZXNlZ3VpcmUgc3Rhc2guIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQ1CisjOiBidWlsdGluL21lcmdlLmM6MzEzCiBtc2dpZCAic3Rhc2ggZmFpbGVkIgogbXNnc3RyICJlc2VjdXppb25lIGRpIHN0YXNoIG5vbiByaXVzY2l0YSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1MAorIzogYnVpbHRpbi9tZXJnZS5jOjMxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSB2YWxpZCBvYmplY3Q6ICVzIgogbXNnc3RyICJub24gw6ggdW4gb2dnZXR0byB2YWxpZG86ICVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjY5IGJ1aWx0aW4vbWVyZ2UuYzoyODYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozNDAgYnVpbHRpbi9tZXJnZS5jOjM1NwogbXNnaWQgInJlYWQtdHJlZSBmYWlsZWQiCiBtc2dzdHIgInJlYWQtdHJlZSBub24gcml1c2NpdG8iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozMTYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozODcKIG1zZ2lkICIgKG5vdGhpbmcgdG8gc3F1YXNoKSIKLW1zZ3N0ciAiIgorbXNnc3RyICIgKG51bGxhIGRpIGN1aSBlc2VndWlyZSBsbyBzcXVhc2gpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzI5CisjOiBidWlsdGluL21lcmdlLmM6Mzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNxdWFzaCBjb21taXQgLS0gbm90IHVwZGF0aW5nIEhFQURcbiIKLW1zZ3N0ciAiIgorbXNnc3RyICJDb21taXQgZGkgc3F1YXNoIC0tIG5vbiBhZ2dpb3JubyBIRUFEXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozNjEKLW1zZ2lkICJXcml0aW5nIFNRVUFTSF9NU0ciCi1tc2dzdHIgIlNjcml0dHVyYSBkaSBTUVVBU0hfTVNHIgotCi0jOiBidWlsdGluL21lcmdlLmM6MzYzCi1tc2dpZCAiRmluaXNoaW5nIFNRVUFTSF9NU0ciCi1tc2dzdHIgIkNvbXBsZXRhbWVudG8gZGkgU1FVQVNIX01TRyIKLQotIzogYnVpbHRpbi9tZXJnZS5jOjM4NgorIzogYnVpbHRpbi9tZXJnZS5jOjQ0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBtZXJnZSBtZXNzYWdlIC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCiBtc2dzdHIgIk5lc3N1biBtZXNzYWdnaW8gZGkgbWVyZ2UgLS0gSEVBRCBub24gdmllbmUgYWdnaW9ybmF0b1xuIgogCi0jOiBidWlsdGluL21lcmdlLmM6NDM3CisjOiBidWlsdGluL21lcmdlLmM6NDk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZG9lcyBub3QgcG9pbnQgdG8gYSBjb21taXQiCiBtc2dzdHIgIiclcycgbm9uIHB1bnRhIGFkIHVuIGNvbW1pdCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjUzNgorIzogYnVpbHRpbi9tZXJnZS5jOjU4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgYnJhbmNoLiVzLm1lcmdlb3B0aW9ucyBzdHJpbmc6ICVzIgogbXNnc3RyICJTdHJpbmdhIGJyYW5jaC4lcy5tZXJnZW9wdGlvbnMgZXJyYXRhOiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjYyOQotbXNnaWQgImdpdCB3cml0ZS10cmVlIGZhaWxlZCB0byB3cml0ZSBhIHRyZWUiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9tZXJnZS5jOjY3OQotbXNnaWQgImZhaWxlZCB0byByZWFkIHRoZSBjYWNoZSIKLW1zZ3N0ciAibGV0dHVyYSBkZWxsYSBjYWNoZSBub24gcml1c2NpdGEiCi0KLSM6IGJ1aWx0aW4vbWVyZ2UuYzo2OTcKLW1zZ2lkICJVbmFibGUgdG8gd3JpdGUgaW5kZXguIgotbXNnc3RyICJJbXBvc3NpYmlsZSBzY3JpdmVyZSBpbmRleC4iCi0KLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3MTAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3MDgKIG1zZ2lkICJOb3QgaGFuZGxpbmcgYW55dGhpbmcgb3RoZXIgdGhhbiB0d28gaGVhZHMgbWVyZ2UuIgotbXNnc3RyICIiCittc2dzdHIgIk5vbiBnZXN0aXNjbyBudWxsYSBjaGUgbm9uIHNpYSBpbCBtZXJnZSBkaSBkdWUgaGVhZC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3MjQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biBvcHRpb24gZm9yIG1lcmdlLXJlY3Vyc2l2ZTogLVglcyIKLW1zZ3N0ciAiT3B6aW9uZSBwZXIgbWVyZ2UtcmVjdXJzaXZlIHNjb25vc2NpdXRhOiAtWCVzIgorbXNnc3RyICJPcHppb25lIHNjb25vc2NpdXRhIHBlciBtZXJnZS1yZWN1cnNpdmU6IC1YJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3MzgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlICVzIgotbXNnc3RyICJub24gw6ggcG9zc2liaWxlIHNjcml2ZXJlICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjg3NworIzogYnVpbHRpbi9tZXJnZS5jOjc4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVhZCBmcm9tICclcyciCiBtc2dzdHIgIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgbGVnZ2VyZSBkYSAnJXMnIgogCi0jOiBidWlsdGluL21lcmdlLmM6ODg2CisjOiBidWlsdGluL21lcmdlLmM6Nzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBjb21taXR0aW5nIG1lcmdlOyB1c2UgJ2dpdCBjb21taXQnIHRvIGNvbXBsZXRlIHRoZSBtZXJnZS5cbiIKIG1zZ3N0ciAiIgorIk5vbiBlc2VndW8gaWwgY29tbWl0IGRlbCBtZXJnZTsgdXNhICdnaXQgY29tbWl0JyBwZXIgY29tcGxldGFyZSBpbCBtZXJnZS5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjg5MgorIzogYnVpbHRpbi9tZXJnZS5jOjgwNAogbXNnaWQgIiIKICJQbGVhc2UgZW50ZXIgYSBjb21taXQgbWVzc2FnZSB0byBleHBsYWluIHdoeSB0aGlzIG1lcmdlIGlzIG5lY2Vzc2FyeSxcbiIKICJlc3BlY2lhbGx5IGlmIGl0IG1lcmdlcyBhbiB1cGRhdGVkIHVwc3RyZWFtIGludG8gYSB0b3BpYyBicmFuY2guXG4iCiAiXG4iCi0iTGluZXMgc3RhcnRpbmcgd2l0aCAnIycgd2lsbCBiZSBpZ25vcmVkLCBhbmQgYW4gZW1wdHkgbWVzc2FnZSBhYm9ydHNcbiIKK21zZ3N0ciAiIgorIkluc2VyaXNjaSB1biBtZXNzYWdnaW8gZGkgY29tbWl0IHBlciBzcGllZ2FyZSBwZXJjaMOpIMOoIG5lY2Vzc2FyaW9cbiIKKyJxdWVzdG8gbWVyZ2UsIGluIHBhcnRpY29sYXJlIHNlIHNpIGVzZWd1ZSBpbCBtZXJnZSBkaSB1biB1cHN0cmVhbVxuIgorImFnZ2lvcm5hdG8gaW4gdW4gdG9waWMgYnJhbmNoLlxuIgorIlxuIgorCisjOiBidWlsdGluL21lcmdlLmM6ODA5Cittc2dpZCAiQW4gZW1wdHkgbWVzc2FnZSBhYm9ydHMgdGhlIGNvbW1pdC5cbiIKK21zZ3N0ciAiVW4gbWVzc2FnZ2lvIHZ1b3RvIGludGVycm9tcGVyw6AgaWwgY29tbWl0LlxuIgorCisjOiBidWlsdGluL21lcmdlLmM6ODEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBpZ25vcmVkLCBhbmQgYW4gZW1wdHkgbWVzc2FnZSBhYm9ydHNcbiIKICJ0aGUgY29tbWl0LlxuIgogbXNnc3RyICIiCisiTGUgcmlnaGUgY2hlIGluaXppYW5vIGNvbiAnJWMnIHNhcmFubm8gaWdub3JhdGUgZSB1biBtZXNzYWdnaW8gdnVvdG9cbiIKKyJpbnRlcnJvbXBlcsOgIGlsIGNvbW1pdC5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjkxNgorIzogYnVpbHRpbi9tZXJnZS5jOjg2NQogbXNnaWQgIkVtcHR5IGNvbW1pdCBtZXNzYWdlLiIKIG1zZ3N0ciAiTWVzc2FnZ2lvIGRpIGNvbW1pdCB2dW90by4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5MjgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiV29uZGVyZnVsLlxuIgogbXNnc3RyICJTcGxlbmRpZG8uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5OTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0b21hdGljIG1lcmdlIGZhaWxlZDsgZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBjb21taXQgdGhlIHJlc3VsdC5cbiIKIG1zZ3N0ciAiIgotIk1lcmdlIGF1dG9tYXRpY28gZmFsbGl0bzsgcmlzb2x2aSBpIGNvbmZsaXR0aSBlZCBlc2VndWlyZSBpbCBjb21taXRcbiIKKyJNZXJnZSBhdXRvbWF0aWNvIGZhbGxpdG87IHJpc29sdmkgaSBjb25mbGl0dGkgZWQgZXNlZ3VpIGlsIGNvbW1pdFxuIgogImRlbCByaXN1bHRhdG8uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDA5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiclcycgaXMgbm90IGEgY29tbWl0IgotbXNnc3RyICInJXMnIG5vbiDDqCB1biBjb21taXQiCi0KLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDUwCisjOiBidWlsdGluL21lcmdlLmM6OTgwCiBtc2dpZCAiTm8gY3VycmVudCBicmFuY2guIgogbXNnc3RyICJOZXNzdW4gYnJhbmNoIGNvcnJlbnRlLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEwNTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODIKIG1zZ2lkICJObyByZW1vdGUgZm9yIHRoZSBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgIk5lc3N1biByZW1vdGUgcGVyIGlsIGJyYW5jaCBjb3JyZW50ZS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDU0CisjOiBidWlsdGluL21lcmdlLmM6OTg0CiBtc2dpZCAiTm8gZGVmYXVsdCB1cHN0cmVhbSBkZWZpbmVkIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJOZXNzdW4gdXBzdHJlYW0gZGkgZGVmYXVsdCBkZWZpbml0byBwZXIgaWwgYnJhbmNoIGNvcnJlbnRlLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEwNTkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODkKICMsIGMtZm9ybWF0Ci1tc2dpZCAiTm8gcmVtb3RlIHRyYWNraW5nIGJyYW5jaCBmb3IgJXMgZnJvbSAlcyIKLW1zZ3N0ciAiIgorbXNnaWQgIk5vIHJlbW90ZS10cmFja2luZyBicmFuY2ggZm9yICVzIGZyb20gJXMiCittc2dzdHIgIk5lc3N1biBicmFuY2ggY2hlIHRyYWNjaSB1biByZW1vdG8gcGVyICVzIGRhICVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTE0NiBidWlsdGluL21lcmdlLmM6MTMwMworIzogYnVpbHRpbi9tZXJnZS5jOjEwNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmFkIHZhbHVlICclcycgaW4gZW52aXJvbm1lbnQgJyVzJyIKK21zZ3N0ciAiVmFsb3JlIGVycmF0byAnJXMnIG5lbGwnYW1iaWVudGUgJyVzJyIKKworIzogYnVpbHRpbi9tZXJnZS5jOjExNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UgaW4gJXM6ICVzIgorbXNnc3RyICJub24gw6ggcXVhbGNvc2EgZGkgY3VpIHBvc3NpYW1vIGVzZWd1aXJlIGlsIG1lcmdlIGluICVzOiAlcyIKKworIzogYnVpbHRpbi9tZXJnZS5jOjExODMKK21zZ2lkICJub3Qgc29tZXRoaW5nIHdlIGNhbiBtZXJnZSIKK21zZ3N0ciAibm9uIMOoIHF1YWxjb3NhIGRpIGN1aSBwb3NzaWFtbyBlc2VndWlyZSBpbCBtZXJnZSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEyODYKK21zZ2lkICItLWFib3J0IGV4cGVjdHMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLWFib3J0IG5vbiByaWNoaWVkZSBhcmdvbWVudGkiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjkwCittc2dpZCAiVGhlcmUgaXMgbm8gbWVyZ2UgdG8gYWJvcnQgKE1FUkdFX0hFQUQgbWlzc2luZykuIgorbXNnc3RyICJOb24gYyfDqCBuZXNzdW4gbWVyZ2UgZGEgaW50ZXJyb21wZXJlIChNRVJHRV9IRUFEIG1hbmNhbnRlKS4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjk5Cittc2dpZCAiLS1xdWl0IGV4cGVjdHMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLXF1aXQgbm9uIHJpY2hpZWRlIGFyZ29tZW50aSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzMTIKK21zZ2lkICItLWNvbnRpbnVlIGV4cGVjdHMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLWNvbnRpbnVlIG5vbiByaWNoaWVkZSBhcmdvbWVudGkiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzE2Cittc2dpZCAiVGhlcmUgaXMgbm8gbWVyZ2UgaW4gcHJvZ3Jlc3MgKE1FUkdFX0hFQUQgbWlzc2luZykuIgorbXNnc3RyICJOb24gYyfDqCBuZXNzdW4gbWVyZ2UgaW4gY29yc28gKE1FUkdFX0hFQUQgbWFuY2FudGUpLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzMzIKK21zZ2lkICIiCisiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG1lcmdlIChNRVJHRV9IRUFEIGV4aXN0cykuXG4iCisiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSB5b3UgbWVyZ2UuIgorbXNnc3RyICIiCisiTm9uIGhhaSBjb25jbHVzbyBpbCBtZXJnZSAoTUVSR0VfSEVBRCBlc2lzdGUpLlxuIgorIkVzZWd1aSBpbCBjb21taXQgZGVsbGUgbW9kaWZpY2hlIHByaW1hIGRpIGVzZWd1aXJlIGlsIG1lcmdlLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzMzkKK21zZ2lkICIiCisiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIGNoZXJyeS1waWNrIChDSEVSUllfUElDS19IRUFEIGV4aXN0cykuXG4iCisiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSB5b3UgbWVyZ2UuIgorbXNnc3RyICIiCisiTm9uIGhhaSBjb25jbHVzbyBpbCBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBlc2lzdGUpLlxuIgorIkVzZWd1aSBpbCBjb21taXQgZGVsbGUgbW9kaWZpY2hlIHByaW1hIGRpIGVzZWd1aXJlIGlsIG1lcmdlLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzNDIKK21zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgY2hlcnJ5LXBpY2sgKENIRVJSWV9QSUNLX0hFQUQgZXhpc3RzKS4iCittc2dzdHIgIklsIGNoZXJyeS1waWNrIG5vbiDDqCBzdGF0byBjb25jbHVzbyAoQ0hFUlJZX1BJQ0tfSEVBRCBlc2lzdGUpLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzNTYKK21zZ2lkICJZb3UgY2Fubm90IGNvbWJpbmUgLS1zcXVhc2ggd2l0aCAtLW5vLWZmLiIKK21zZ3N0ciAiTm9uIMOoIHBvc3NpYmlsZSBjb21iaW5hcmUgLS1zcXVhc2ggY29uIC0tbm8tZmYuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTM1OAorbXNnaWQgIllvdSBjYW5ub3QgY29tYmluZSAtLXNxdWFzaCB3aXRoIC0tY29tbWl0LiIKK21zZ3N0ciAiTm9uIMOoIHBvc3NpYmlsZSBjb21iaW5hcmUgLS1zcXVhc2ggY29uIC0tY29tbWl0LiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzNzQKK21zZ2lkICJObyBjb21taXQgc3BlY2lmaWVkIGFuZCBtZXJnZS5kZWZhdWx0VG9VcHN0cmVhbSBub3Qgc2V0LiIKK21zZ3N0ciAiTmVzc3VuIGNvbW1pdCBzcGVjaWZpY2F0byBlIG1lcmdlLmRlZmF1bHRUb1Vwc3RyZWFtIG5vbiBpbXBvc3RhdG8uIgorCisjOiBidWlsdGluL21lcmdlLmM6MTM5MQorbXNnaWQgIlNxdWFzaCBjb21taXQgaW50byBlbXB0eSBoZWFkIG5vdCBzdXBwb3J0ZWQgeWV0IgorbXNnc3RyICJMbyBzcXVhc2ggZGkgdW4gY29tbWl0IGluIHVuJ2hlYWQgdnVvdGEgbm9uIMOoIGFuY29yYSBzdXBwb3J0YXRvIgorCisjOiBidWlsdGluL21lcmdlLmM6MTM5MworbXNnaWQgIk5vbi1mYXN0LWZvcndhcmQgY29tbWl0IGRvZXMgbm90IG1ha2Ugc2Vuc2UgaW50byBhbiBlbXB0eSBoZWFkIgorbXNnc3RyICJVbiBjb21taXQgbm9uIGZhc3QgZm9yd2FyZCBub24gaGEgc2Vuc28gaW4gdW4naGVhZCB2dW90YSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgLSBub3Qgc29tZXRoaW5nIHdlIGNhbiBtZXJnZSIKIG1zZ3N0ciAiJXMgLSBub24gw6ggcXVhbGNvc2EgcGVyIGN1aSBwb3NzaWFtbyBlc2VndWlyZSBpbCBtZXJnZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyMTQKLW1zZ2lkICJUaGVyZSBpcyBubyBtZXJnZSB0byBhYm9ydCAoTUVSR0VfSEVBRCBtaXNzaW5nKS4iCi1tc2dzdHIgIk5vbiBjJ8OoIG5lc3N1biBtZXJnZSBkYSBpbnRlcnJvbXBlcmUgKG1hbmNhIE1FUkdFX0hFQUQpIgotCi0jOiBidWlsdGluL21lcmdlLmM6MTIzMCBnaXQtcHVsbC5zaDozMQotbXNnaWQgIiIKLSJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS5cbiIKLSJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIHlvdSBjYW4gbWVyZ2UuIgotbXNnc3RyICIiCi0iSWwgbWVyZ2Ugbm9uIMOoIHN0YXRvIGNvbmNsdXNvIChlc2lzdGUgTUVSR0VfSEVBRCkuXG4iCi0iUGVyIGZhdm9yZSwgZXNlZ3VpIGlsIGNvbW1pdCBkZWxsZSBtb2RpZmljaGUgcHJpbWEgZGVsIG1lcmdlLiIKLQotIzogYnVpbHRpbi9tZXJnZS5jOjEyMzMgZ2l0LXB1bGwuc2g6MzQKLW1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS4iCi1tc2dzdHIgIklsIG1lcmdlIG5vbiDDqCBzdGF0byBjb25jbHVzbyAoZXNpc3RlIE1FUkdFX0hFQUQpLiIKLQotIzogYnVpbHRpbi9tZXJnZS5jOjEyMzcKLW1zZ2lkICIiCi0iWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIGNoZXJyeS1waWNrIChDSEVSUllfUElDS19IRUFEIGV4aXN0cykuXG4iCi0iUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSB5b3UgY2FuIG1lcmdlLiIKLW1zZ3N0ciAiIgotIklsIGNoZXJyeS1waWNrIG5vbiDDqCBzdGF0byBjb25jbHVzbyAoZXNpc3RlIENIRVJSWV9QSUNLX0hFQUQpLlxuIgotIlBlciBmYXZvcmUsIGVzZWd1aSBpbCBjb21taXQgZGVsbGUgbW9kaWZpY2hlIHByaW1hIGRlbCBtZXJnZS4iCi0KLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjQwCi1tc2dpZCAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIGNoZXJyeS1waWNrIChDSEVSUllfUElDS19IRUFEIGV4aXN0cykuIgotbXNnc3RyICJJbCB0dW8gY2hlcnJ5LXBpY2sgbm9uIMOoIHN0YXRvIGNvbmNsdXNvIChDSEVSUllfUElDS19IRUFEIGVzaXN0ZSkuIgotCi0jOiBidWlsdGluL21lcmdlLmM6MTI0OQotbXNnaWQgIllvdSBjYW5ub3QgY29tYmluZSAtLXNxdWFzaCB3aXRoIC0tbm8tZmYuIgotbXNnc3RyICJJbXBvc3NpYmlsZSBjb21iaW5hcmUgLS1zcXVhc2ggY29uIC0tbm8tb2ZmLiIKLQotIzogYnVpbHRpbi9tZXJnZS5jOjEyNTQKLW1zZ2lkICJZb3UgY2Fubm90IGNvbWJpbmUgLS1uby1mZiB3aXRoIC0tZmYtb25seS4iCi1tc2dzdHIgIkltcG9zc2liaWxlIGNvbWJpbmFyZSAtLW5vLWZmIGNvbiAtLWZmLW9ubHkuIgotCi0jOiBidWlsdGluL21lcmdlLmM6MTI2MQotbXNnaWQgIk5vIGNvbW1pdCBzcGVjaWZpZWQgYW5kIG1lcmdlLmRlZmF1bHRUb1Vwc3RyZWFtIG5vdCBzZXQuIgotbXNnc3RyICJOZXNzdW4gY29tbWl0IHNwZWNpZmljYXRvIGUgbWVyZ2UuZGVmYXVsdFRvVXBzdHJlYW0gbm9uIGRlZmluaXRvLiIKLQotIzogYnVpbHRpbi9tZXJnZS5jOjEyOTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDAwCiBtc2dpZCAiQ2FuIG1lcmdlIG9ubHkgZXhhY3RseSBvbmUgY29tbWl0IGludG8gZW1wdHkgaGVhZCIKLW1zZ3N0ciAiIgorbXNnc3RyICJTaSBwdcOyIGVzZWd1aXJlIHNvbG8gaWwgbWVyZ2UgZGkgdW5vIGUgdW4gc29sbyBjb21taXQgaW4gdW4naGVhZCB2dW90YSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyOTYKLW1zZ2lkICJTcXVhc2ggY29tbWl0IGludG8gZW1wdHkgaGVhZCBub3Qgc3VwcG9ydGVkIHlldCIKLW1zZ3N0ciAiIgorIzogYnVpbHRpbi9tZXJnZS5jOjE0ODEKK21zZ2lkICJyZWZ1c2luZyB0byBtZXJnZSB1bnJlbGF0ZWQgaGlzdG9yaWVzIgorbXNnc3RyICJtaSByaWZpdXRvIGRpIGVzZWd1aXJlIGlsIG1lcmdlIGRpIGNyb25vbG9naWUgbm9uIGNvcnJlbGF0ZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyOTgKLW1zZ2lkICJOb24tZmFzdC1mb3J3YXJkIGNvbW1pdCBkb2VzIG5vdCBtYWtlIHNlbnNlIGludG8gYW4gZW1wdHkgaGVhZCIKLW1zZ3N0ciAiIgorIzogYnVpbHRpbi9tZXJnZS5jOjE0OTAKK21zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIgorbXNnc3RyICJHacOgIGFnZ2lvcm5hdG8uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQxMworIzogYnVpbHRpbi9tZXJnZS5jOjE1MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRpbmcgJXMuLiVzXG4iCiBtc2dzdHIgIkFnZ2lvcm5hbWVudG8gZGkgJXMuLiVzXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDUxCisjOiBidWlsdGluL21lcmdlLmM6MTU0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJUcnlpbmcgcmVhbGx5IHRyaXZpYWwgaW4taW5kZXggbWVyZ2UuLi5cbiIKLW1zZ3N0ciAiIgorbXNnc3RyICJQcm92byBjb24gdW4gbWVyZ2UgdmVyYW1lbnRlIGJhbmFsZSBkZW50cm8gbCdpbmRpY2UuLi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0NTgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vcGUuXG4iCiBtc2dzdHIgIk5vLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQ5MAotbXNnaWQgIk5vdCBwb3NzaWJsZSB0byBmYXN0LWZvcndhcmQsIGFib3J0aW5nLiIKLW1zZ3N0ciAiRmFzdC1mb3J3YXJkIG5vbiBwb3NzaWJpbGUsIHN0b3AuIgorIzogYnVpbHRpbi9tZXJnZS5jOjE1NzQKK21zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIFllZWFoISIKK21zZ3N0ciAiR2nDoCBhZ2dpb3JuYXRvLiBPaCBzw6whIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTUxMyBidWlsdGluL21lcmdlLmM6MTU5MgorIzogYnVpbHRpbi9tZXJnZS5jOjE1ODAKK21zZ2lkICJOb3QgcG9zc2libGUgdG8gZmFzdC1mb3J3YXJkLCBhYm9ydGluZy4iCittc2dzdHIgIkZhc3QgZm9yd2FyZCBub24gcG9zc2liaWxlLCBpbnRlcnJvbXBvIGwnb3BlcmF6aW9uZS4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjAzIGJ1aWx0aW4vbWVyZ2UuYzoxNjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJld2luZGluZyB0aGUgdHJlZSB0byBwcmlzdGluZS4uLlxuIgotbXNnc3RyICIiCittc2dzdHIgIlJpcHJpc3Rpbm8gbCdhbGJlcm8gaW4gdW5vIHN0YXRvIHB1bGl0by4uLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTUxNworIzogYnVpbHRpbi9tZXJnZS5jOjE2MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVHJ5aW5nIG1lcmdlIHN0cmF0ZWd5ICVzLi4uXG4iCiBtc2dzdHIgIlRlbnRhdGl2byBjb24gbGEgc3RyYXRlZ2lhIGRpIG1lcmdlICVzLi4uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTgzCisjOiBidWlsdGluL21lcmdlLmM6MTY1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBtZXJnZSBzdHJhdGVneSBoYW5kbGVkIHRoZSBtZXJnZS5cbiIKIG1zZ3N0ciAiTmVzc3VuYSBzdHJhdGVnaWEgZGkgbWVyZ2UgaGEgZ2VzdGl0byBpbCBtZXJnZS5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1ODUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1lcmdlIHdpdGggc3RyYXRlZ3kgJXMgZmFpbGVkLlxuIgogbXNnc3RyICJNZXJnZSBjb24gbGEgc3RyYXRlZ2lhICVzIGZhbGxpdG8uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTk0CisjOiBidWlsdGluL21lcmdlLmM6MTY3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJVc2luZyB0aGUgJXMgdG8gcHJlcGFyZSByZXNvbHZpbmcgYnkgaGFuZC5cbiIKLW1zZ3N0ciAiIgorbXNnc3RyICJVc28gJXMgcGVyIHByZXBhcmFyZSB1bmEgcmlzb2x1emlvbmUgbWFudWFsZS5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MDYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG9tYXRpYyBtZXJnZSB3ZW50IHdlbGw7IHN0b3BwZWQgYmVmb3JlIGNvbW1pdHRpbmcgYXMgcmVxdWVzdGVkXG4iCiBtc2dzdHIgIiIKICJJbCBtZXJnZSBhdXRvbWF0aWNvIMOoIGFuZGF0byBhIGJ1b24gZmluZTsgZmVybWF0byBwcmltYSBkZWwgY29tbWl0IGNvbWUgIgogInJpY2hpZXN0b1xuIgogCi0jOiBidWlsdGluL212LmM6MTA4CisjOiBidWlsdGluL21lcmdlLWJhc2UuYzozMgorbXNnaWQgImdpdCBtZXJnZS1iYXNlIFstYSB8IC0tYWxsXSA8Y29tbWl0PiA8Y29tbWl0Pi4uLiIKK21zZ3N0ciAiZ2l0IG1lcmdlLWJhc2UgWy1hIHwgLS1hbGxdIDxjb21taXQ+IDxjb21taXQ+Li4uIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzozMworbXNnaWQgImdpdCBtZXJnZS1iYXNlIFstYSB8IC0tYWxsXSAtLW9jdG9wdXMgPGNvbW1pdD4uLi4iCittc2dzdHIgImdpdCBtZXJnZS1iYXNlIFstYSB8IC0tYWxsXSAtLW9jdG9wdXMgPGNvbW1pdD4uLi4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjM0Cittc2dpZCAiZ2l0IG1lcmdlLWJhc2UgLS1pbmRlcGVuZGVudCA8Y29tbWl0Pi4uLiIKK21zZ3N0ciAiZ2l0IG1lcmdlLWJhc2UgLS1pbmRlcGVuZGVudCA8Y29tbWl0Pi4uLiIKKworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MzUKK21zZ2lkICJnaXQgbWVyZ2UtYmFzZSAtLWlzLWFuY2VzdG9yIDxjb21taXQ+IDxjb21taXQ+IgorbXNnc3RyICJnaXQgbWVyZ2UtYmFzZSAtLWlzLWFuY2VzdG9yIDxjb21taXQ+IDxjb21taXQ+IgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzozNgorbXNnaWQgImdpdCBtZXJnZS1iYXNlIC0tZm9yay1wb2ludCA8cmVmPiBbPGNvbW1pdD5dIgorbXNnc3RyICJnaXQgbWVyZ2UtYmFzZSAtLWZvcmstcG9pbnQgPHJpZmVyaW1lbnRvPiBbPGNvbW1pdD5dIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzoxNTMKK21zZ2lkICJvdXRwdXQgYWxsIGNvbW1vbiBhbmNlc3RvcnMiCittc2dzdHIgIm1hbmRhIGluIG91dHB1dCB0dXR0aSBnbGkgYW50ZW5hdGkgY29tdW5pIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzoxNTUKK21zZ2lkICJmaW5kIGFuY2VzdG9ycyBmb3IgYSBzaW5nbGUgbi13YXkgbWVyZ2UiCittc2dzdHIgInRyb3ZhIGdsaSBhbnRlbmF0aSBwZXIgdW4gc2luZ29sbyBtZXJnZSBhIG4gdmllIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzoxNTcKK21zZ2lkICJsaXN0IHJldnMgbm90IHJlYWNoYWJsZSBmcm9tIG90aGVycyIKK21zZ3N0ciAiZWxlbmNhIGxlIHJldmlzaW9uaSBub24gcmFnZ2l1bmdpYmlsaSBkYWxsZSBhbHRyZSIKKworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MTU5Cittc2dpZCAiaXMgdGhlIGZpcnN0IG9uZSBhbmNlc3RvciBvZiB0aGUgb3RoZXI/IgorbXNnc3RyICJpbCBwcmltbyBhcmdvbWVudG8gw6ggYW50ZW5hdG8gZGVsbCdhbHRybz8iCisKKyM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjE2MQorbXNnaWQgImZpbmQgd2hlcmUgPGNvbW1pdD4gZm9ya2VkIGZyb20gcmVmbG9nIG9mIDxyZWY+IgorbXNnc3RyICIiCisidHJvdmEgaWwgcHVudG8gZGkgZm9yayBkaSA8Y29tbWl0PiBkYWwgcmVnaXN0cm8gZGVpIHJpZmVyaW1lbnRpIGRpICIKKyI8cmlmZXJpbWVudG8+IgorCisjOiBidWlsdGluL21lcmdlLWZpbGUuYzo5Cittc2dpZCAiIgorImdpdCBtZXJnZS1maWxlIFs8b3B0aW9ucz5dIFstTCA8bmFtZTE+IFstTCA8b3JpZz4gWy1MIDxuYW1lMj5dXV0gPGZpbGUxPiAiCisiPG9yaWctZmlsZT4gPGZpbGUyPiIKK21zZ3N0ciAiIgorImdpdCBtZXJnZS1maWxlIFs8b3B6aW9uaT5dIFstTCA8bm9tZTE+IFstTCA8b3JpZ2luYWxlPiBbLUwgPG5vbWUyPl1dXSAiCisiPGZpbGUxPiA8ZmlsZSBvcmlnaW5hbGU+IDxmaWxlMj4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjM1Cittc2dpZCAic2VuZCByZXN1bHRzIHRvIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiaW52aWEgaSByaXN1bHRhdGkgYWxsbyBzdGFuZGFyZCBvdXRwdXQiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjM2Cittc2dpZCAidXNlIGEgZGlmZjMgYmFzZWQgbWVyZ2UiCittc2dzdHIgInVzYSB1biBtZXJnZSBiYXNhdG8gc3UgZGlmZjMiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjM3Cittc2dpZCAiZm9yIGNvbmZsaWN0cywgdXNlIG91ciB2ZXJzaW9uIgorbXNnc3RyICJwZXIgaSBjb25mbGl0dGksIHVzYSBsYSBub3N0cmEgdmVyc2lvbmUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjM5Cittc2dpZCAiZm9yIGNvbmZsaWN0cywgdXNlIHRoZWlyIHZlcnNpb24iCittc2dzdHIgInBlciBpIGNvbmZsaXR0aSwgdXNhIGxhIGxvcm8gdmVyc2lvbmUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjQxCittc2dpZCAiZm9yIGNvbmZsaWN0cywgdXNlIGEgdW5pb24gdmVyc2lvbiIKK21zZ3N0ciAicGVyIGkgY29uZmxpdHRpLCB1c2EgdW5hIHZlcnNpb25lIHVuaXRhIgorCisjOiBidWlsdGluL21lcmdlLWZpbGUuYzo0NAorbXNnaWQgImZvciBjb25mbGljdHMsIHVzZSB0aGlzIG1hcmtlciBzaXplIgorbXNnc3RyICJwZXIgaSBjb25mbGl0dGksIHVzYSBxdWVzdGEgZGltZW5zaW9uZSBkZWkgY29udHJhc3NlZ25pIgorCisjOiBidWlsdGluL21lcmdlLWZpbGUuYzo0NQorbXNnaWQgImRvIG5vdCB3YXJuIGFib3V0IGNvbmZsaWN0cyIKK21zZ3N0ciAibm9uIGVtZXR0ZXJlIGF2dmlzaSBpbiBjYXNvIGRpIGNvbmZsaXR0aSIKKworIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6NDcKK21zZ2lkICJzZXQgbGFiZWxzIGZvciBmaWxlMS9vcmlnLWZpbGUvZmlsZTIiCittc2dzdHIgImltcG9zdGEgZXRpY2hldHRlIHBlciBmaWxlMS9maWxlIG9yaWdpbmFsZS9maWxlMiIKKworIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAlcyIKK21zZ3N0ciAib3B6aW9uZSBzY29ub3NjaXV0YSAlcyIKKworIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgbCdvZ2dldHRvICclcyciCisKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgYmFzZS4gSWdub3JpbmcgJXMuIgorbXNnaWRfcGx1cmFsICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCBiYXNlcy4gSWdub3JpbmcgJXMuIgorbXNnc3RyWzBdICJpbXBvc3NpYmlsZSBnZXN0aXJlIHBpw7kgZGkgJWQgYmFzZS4gSWdub3JvICVzLiIKK21zZ3N0clsxXSAiaW1wb3NzaWJpbGUgZ2VzdGlyZSBwacO5IGRpICVkIGJhc2kuIElnbm9ybyAlcy4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjUKK21zZ2lkICJub3QgaGFuZGxpbmcgYW55dGhpbmcgb3RoZXIgdGhhbiB0d28gaGVhZHMgbWVyZ2UuIgorbXNnc3RyICJub24gZ2VzdGlzY28gbnVsbGEgY2hlIG5vbiBzaWEgaWwgbWVyZ2UgZGkgZHVlIGhlYWQuIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjc0IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlc29sdmUgcmVmICclcyciCittc2dzdHIgImltcG9zc2liaWxlIHJpc29sdmVyZSBpbCByaWZlcmltZW50byAnJXMnIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIk1lcmdpbmcgJXMgd2l0aCAlc1xuIgorbXNnc3RyICJNZXJnZSBkaSAlcyBjb24gJXMgaW4gY29yc29cbiIKKworIzogYnVpbHRpbi9ta3RyZWUuYzo2NgorbXNnaWQgImdpdCBta3RyZWUgWy16XSBbLS1taXNzaW5nXSBbLS1iYXRjaF0iCittc2dzdHIgImdpdCBta3RyZWUgWy16XSBbLS1taXNzaW5nXSBbLS1iYXRjaF0iCisKKyM6IGJ1aWx0aW4vbWt0cmVlLmM6MTU0Cittc2dpZCAiaW5wdXQgaXMgTlVMIHRlcm1pbmF0ZWQiCittc2dzdHIgImwnaW5wdXQgw6ggdGVybWluYXRvIGRhIE5VTCIKKworIzogYnVpbHRpbi9ta3RyZWUuYzoxNTUgYnVpbHRpbi93cml0ZS10cmVlLmM6MjYKK21zZ2lkICJhbGxvdyBtaXNzaW5nIG9iamVjdHMiCittc2dzdHIgImNvbnNlbnRpIG9nZ2V0dGkgbWFuY2FudGkiCisKKyM6IGJ1aWx0aW4vbWt0cmVlLmM6MTU2Cittc2dpZCAiYWxsb3cgY3JlYXRpb24gb2YgbW9yZSB0aGFuIG9uZSB0cmVlIgorbXNnc3RyICJjb25zZW50aSBsYSBjcmVhemlvbmUgZGkgcGnDuSBkaSB1biBhbGJlcm8iCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjkKK21zZ2lkICIiCisiZ2l0IG11bHRpLXBhY2staW5kZXggWzxvcHRpb25zPl0gKHdyaXRlfHZlcmlmeXxleHBpcmV8cmVwYWNrIC0tYmF0Y2gtIgorInNpemU9PHNpemU+KSIKK21zZ3N0ciAiIgorImdpdCBtdWx0aS1wYWNrLWluZGV4IFs8b3B6aW9uaT5dICh3cml0ZXx2ZXJpZnl8ZXhwaXJlfHJlcGFjayAtLWJhdGNoLSIKKyJzaXplPTxkaW1lbnNpb25lPikiCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjI2Cittc2dpZCAib2JqZWN0IGRpcmVjdG9yeSBjb250YWluaW5nIHNldCBvZiBwYWNrZmlsZSBhbmQgcGFjay1pbmRleCBwYWlycyIKK21zZ3N0ciAiIgorImRpcmVjdG9yeSBvZ2dldHRpIGNvbnRlbmVudGUgdW4gaW5zaWVtZSBkaSBjb3BwaWUgcGFja2ZpbGUgZSBwYWNrLWluZGV4IgorCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyOQorbXNnaWQgIiIKKyJkdXJpbmcgcmVwYWNrLCBjb2xsZWN0IHBhY2stZmlsZXMgb2Ygc21hbGxlciBzaXplIGludG8gYSBiYXRjaCB0aGF0IGlzICIKKyJsYXJnZXIgdGhhbiB0aGlzIHNpemUiCittc2dzdHIgIiIKKyJkdXJhbnRlIGlsIHJlcGFjaywgcmFjY29nbGkgaSBmaWxlIHBhY2sgZGkgZGltZW5zaW9uaSBwacO5IHBpY2NvbGUgaW4gdW4gIgorImdydXBwbyBwacO5IGdyYW5kZSBkaSBxdWVzdGUgZGltZW5zaW9uaSIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NTAgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo2NworbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAidHJvcHBpIGFyZ29tZW50aSIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NjAKK21zZ2lkICItLWJhdGNoLXNpemUgb3B0aW9uIGlzIG9ubHkgZm9yICdyZXBhY2snIHN1YmNvbW1hbmQiCittc2dzdHIgImwnb3B6aW9uZSAtLWJhdGNoLXNpemUgw6ggY29uc2VudGl0YSBzb2xvIHBlciBpbCBzb3R0b2NvbWFuZG8gJ3JlcGFjayciCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBzdWJjb21tYW5kOiAlcyIKK21zZ3N0ciAic290dG9jb21hbmRvIHNjb25vc2NpdXRvOiAlcyIKKworIzogYnVpbHRpbi9tdi5jOjE4Cittc2dpZCAiZ2l0IG12IFs8b3B0aW9ucz5dIDxzb3VyY2U+Li4uIDxkZXN0aW5hdGlvbj4iCittc2dzdHIgImdpdCBtdiBbPG9wemlvbmk+XSA8c29yZ2VudGU+Li4uIDxkZXN0aW5hemlvbmU+IgorCisjOiBidWlsdGluL212LmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGlyZWN0b3J5ICVzIGlzIGluIGluZGV4IGFuZCBubyBzdWJtb2R1bGU/IgorbXNnc3RyICJMYSBkaXJlY3RvcnkgJXMgw6ggbmVsbCdpbmRpY2UgZSBub24gw6ggc3BlY2lmaWNhdG8gdW4gc290dG9tb2R1bG8/IgorCisjOiBidWlsdGluL212LmM6ODUKK21zZ2lkICJQbGVhc2Ugc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKK21zZ3N0ciAiIgorIkVzZWd1aSBsbyBzdGFnZSBkZWxsZSBtb2RpZmljaGUgYSAuZ2l0bW9kdWxlcyBvIGVzZWd1aW5lIGxvIHN0YXNoIHBlciAiCisicHJvY2VkZXJlIgorCisjOiBidWlsdGluL212LmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiUuKnMgaXMgaW4gaW5kZXgiCittc2dzdHIgIiUuKnMgw6ggbmVsbCdpbmRpY2UiCisKKyM6IGJ1aWx0aW4vbXYuYzoxMjUKK21zZ2lkICJmb3JjZSBtb3ZlL3JlbmFtZSBldmVuIGlmIHRhcmdldCBleGlzdHMiCittc2dzdHIgImZvcnphIHNwb3N0YW1lbnRvL3JpZGVub21pbmF6aW9uZSBhbmNoZSBzZSBsYSBkZXN0aW5hemlvbmUgZXNpc3RlIgorCisjOiBidWlsdGluL212LmM6MTI3Cittc2dpZCAic2tpcCBtb3ZlL3JlbmFtZSBlcnJvcnMiCittc2dzdHIgInNhbHRhIGVycm9yaSBzcG9zdGFtZW50by9yaWRlbm9taW5hemlvbmUiCisKKyM6IGJ1aWx0aW4vbXYuYzoxNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVzdGluYXRpb24gJyVzJyBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgImxhIGRlc3RpbmF6aW9uZSAnJXMnIG5vbiDDqCB1bmEgZGlyZWN0b3J5IgorCisjOiBidWlsdGluL212LmM6MTgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoZWNraW5nIHJlbmFtZSBvZiAnJXMnIHRvICclcydcbiIKLW1zZ3N0ciAiIgorbXNnc3RyICJDb250cm9sbG8gbGEgcmlkZW5vbWluYXppb25lIGRpICclcycgaW4gJyVzJ1xuIgogCi0jOiBidWlsdGluL212LmM6MTEyCisjOiBidWlsdGluL212LmM6MTg0CiBtc2dpZCAiYmFkIHNvdXJjZSIKLW1zZ3N0ciAiIgorbXNnc3RyICJzb3VyZ2VudGUgZXJyYXRhIgogCi0jOiBidWlsdGluL212LmM6MTE1CisjOiBidWlsdGluL212LmM6MTg3CiBtc2dpZCAiY2FuIG5vdCBtb3ZlIGRpcmVjdG9yeSBpbnRvIGl0c2VsZiIKIG1zZ3N0ciAibm9uIMOoIHBvc3NpYmlsZSBzcG9zdGFyZSBsYSBkaXJlY3RvcnkgaW4gc8OpIHN0ZXNzYSIKIAotIzogYnVpbHRpbi9tdi5jOjExOAorIzogYnVpbHRpbi9tdi5jOjE5MAogbXNnaWQgImNhbm5vdCBtb3ZlIGRpcmVjdG9yeSBvdmVyIGZpbGUiCiBtc2dzdHIgIm5vbiDDqCBwb3NzaWJpbGUgc3Bvc3RhcmUgbGEgZGlyZWN0b3J5IHN1IHVuIGZpbGUiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxMjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiSHVoPyAlLipzIGlzIGluIGluZGV4PyIKLW1zZ3N0ciAiRWg/ICUuKnMgc2kgdHJvdmEgaW4gaW5kZXg/IgotCi0jOiBidWlsdGluL212LmM6MTQwCisjOiBidWlsdGluL212LmM6MTk5CiBtc2dpZCAic291cmNlIGRpcmVjdG9yeSBpcyBlbXB0eSIKIG1zZ3N0ciAibGEgZGlyZWN0b3J5IHNvcmdlbnRlIMOoIHZ1b3RhIgogCi0jOiBidWlsdGluL212LmM6MTcxCisjOiBidWlsdGluL212LmM6MjI0CiBtc2dpZCAibm90IHVuZGVyIHZlcnNpb24gY29udHJvbCIKIG1zZ3N0ciAibm9uIMOoIHNvdHRvIGNvbnRyb2xsbyBkaSB2ZXJzaW9uZSIKIAotIzogYnVpbHRpbi9tdi5jOjE3MworIzogYnVpbHRpbi9tdi5jOjIyNwogbXNnaWQgImRlc3RpbmF0aW9uIGV4aXN0cyIKIG1zZ3N0ciAibGEgZGVzdGluYXppb25lIGVzaXN0ZSIKIAotIzogYnVpbHRpbi9tdi5jOjE4MQorIzogYnVpbHRpbi9tdi5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJvdmVyd3JpdGluZyAnJXMnIgogbXNnc3RyICJzb3ZyYXNjcml0dHVyYSBkaSAlcyBpbiBjb3JzbyIKIAotIzogYnVpbHRpbi9tdi5jOjE4NAorIzogYnVpbHRpbi9tdi5jOjIzOAogbXNnaWQgIkNhbm5vdCBvdmVyd3JpdGUiCiBtc2dzdHIgIkltcG9zc2liaWxlIHNvdnJhc2NyaXZlcmUiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxODcKKyM6IGJ1aWx0aW4vbXYuYzoyNDEKIG1zZ2lkICJtdWx0aXBsZSBzb3VyY2VzIGZvciB0aGUgc2FtZSB0YXJnZXQiCiBtc2dzdHIgImZvbnRpIG11bHRpcGxlIHBlciBsYSBzdGVzc2EgZGVzdGluYXppb25lIgogCi0jOiBidWlsdGluL212LmM6MjAyCisjOiBidWlsdGluL212LmM6MjQzCittc2dpZCAiZGVzdGluYXRpb24gZGlyZWN0b3J5IGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJsYSBkaXJlY3RvcnkgZGkgZGVzdGluYXppb25lIG5vbiBlc2lzdGUiCisKKyM6IGJ1aWx0aW4vbXYuYzoyNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMsIHNvdXJjZT0lcywgZGVzdGluYXRpb249JXMiCiBtc2dzdHIgIiVzLCBzb3JnZW50ZT0lcywgZGVzdGluYXppb25lPSVzIgogCi0jOiBidWlsdGluL212LmM6MjEyCisjOiBidWlsdGluL212LmM6MjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbmFtaW5nICVzIHRvICVzXG4iCiBtc2dzdHIgIlJpbm9taW5hemlvbmUgZGkgJXMgaW4gJXMgaW4gY29yc29cbiIKIAotIzogYnVpbHRpbi9tdi5jOjIxNSBidWlsdGluL3JlbW90ZS5jOjczMQorIzogYnVpbHRpbi9tdi5jOjI3NyBidWlsdGluL3JlbW90ZS5jOjc4MSBidWlsdGluL3JlcGFjay5jOjUxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZW5hbWluZyAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAicmlub21pbmEgZGkgJyVzJyBub24gcml1c2NpdGEiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzoxMzkKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0NjUKK21zZ2lkICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gPGNvbW1pdD4uLi4iCittc2dzdHIgImdpdCBuYW1lLXJldiBbPG9wemlvbmk+XSA8Y29tbWl0Pi4uLiIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NgorbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLWFsbCIKK21zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs8b3B6aW9uaT5dIC0tYWxsIgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NDY3Cittc2dpZCAiZ2l0IG5hbWUtcmV2IFs8b3B0aW9ucz5dIC0tc3RkaW4iCittc2dzdHIgImdpdCBuYW1lLXJldiBbPG9wemlvbmk+XSAtLXN0ZGluIgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI0Cittc2dpZCAicHJpbnQgb25seSBuYW1lcyAobm8gU0hBLTEpIgorbXNnc3RyICJzdGFtcGEgc29sbyBpIG5vbWkgKG5vbiBsbyBTSEEtMSkiCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjUKK21zZ2lkICJvbmx5IHVzZSB0YWdzIHRvIG5hbWUgdGhlIGNvbW1pdHMiCittc2dzdHIgInVzYSBzb2xvIHRhZyBwZXIgZGVub21pbmFyZSBpIGNvbW1pdCIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjUyNworbXNnaWQgIm9ubHkgdXNlIHJlZnMgbWF0Y2hpbmcgPHBhdHRlcm4+IgorbXNnc3RyICJ1c2Egc29sbyBpIHJpZmVyaW1lbnRpIGNvcnJpc3BvbmRlbnRpIGEgPHBhdHRlcm4+IgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI5Cittc2dpZCAiaWdub3JlIHJlZnMgbWF0Y2hpbmcgPHBhdHRlcm4+IgorbXNnc3RyICJpZ25vcmEgaSByaWZlcmltZW50aSBjb3JyaXNwb25kZW50aSBhIDxwYXR0ZXJuPiIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzMQorbXNnaWQgImxpc3QgYWxsIGNvbW1pdHMgcmVhY2hhYmxlIGZyb20gYWxsIHJlZnMiCittc2dzdHIgImVsZW5jYSB0dXR0aSBpIGNvbW1pdCByYWdnaXVuZ2liaWxpIGRhIHR1dHRpIGkgcmlmZXJpbWVudGkiCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzIKK21zZ2lkICJyZWFkIGZyb20gc3RkaW4iCittc2dzdHIgImxlZ2dpIGRhbGxvIHN0YW5kYXJkIGlucHV0IgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMzCittc2dpZCAiYWxsb3cgdG8gcHJpbnQgYHVuZGVmaW5lZGAgbmFtZXMgKGRlZmF1bHQpIgorbXNnc3RyICJjb25zZW50aSBkaSBzdGFtcGFyZSBub21pIGBub24gZGVmaW5pdG9gIChpbXBvc3RhemlvbmUgcHJlZGVmaW5pdGEpIgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTM5Cittc2dpZCAiZGVyZWZlcmVuY2UgdGFncyBpbiB0aGUgaW5wdXQgKGludGVybmFsIHVzZSkiCittc2dzdHIgImRlcmVmZXJlbnppYSB0YWcgbmVsbCdpbnB1dCAodXNvIGludGVybm8pIgorCisjOiBidWlsdGluL25vdGVzLmM6MjgKK21zZ2lkICJnaXQgbm90ZXMgWy0tcmVmIDxub3Rlcy1yZWY+XSBbbGlzdCBbPG9iamVjdD5dXSIKK21zZ3N0ciAiZ2l0IG5vdGVzIFstLXJlZiA8cmlmZXJpbWVudG8gbm90ZT5dIFtsaXN0IFs8b2dnZXR0bz5dXSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjI5Cittc2dpZCAiIgorImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIGFkZCBbLWZdIFstLWFsbG93LWVtcHR5XSBbLW0gPG1zZz4gfCAtRiA8ZmlsZT4gIgorInwgKC1jIHwgLUMpIDxvYmplY3Q+XSBbPG9iamVjdD5dIgorbXNnc3RyICIiCisiZ2l0IG5vdGVzIFstLXJlZiA8cmlmZXJpbWVudG8gbm90ZT5dIGFkZCBbLWZdIFstLWFsbG93LWVtcHR5XSBbLW0gIgorIjxtZXNzYWdnaW8+IHwgLUYgPGZpbGU+IHwgKC1jIHwgLUMpIDxvZ2dldHRvPl0gWzxvZ2dldHRvPl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMAorbXNnaWQgImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIGNvcHkgWy1mXSA8ZnJvbS1vYmplY3Q+IDx0by1vYmplY3Q+IgorbXNnc3RyICIiCisiZ2l0IG5vdGVzIFstLXJlZiA8cmlmZXJpbWVudG8gbm90ZT5dIGNvcHkgWy1mXSA8b2dnZXR0byBzb3JnZW50ZT4gPG9nZ2V0dG8gIgorImRlc3RpbmF6aW9uZT4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMQorbXNnaWQgIiIKKyJnaXQgbm90ZXMgWy0tcmVmIDxub3Rlcy1yZWY+XSBhcHBlbmQgWy0tYWxsb3ctZW1wdHldIFstbSA8bXNnPiB8IC1GIDxmaWxlPiB8ICIKKyIoLWMgfCAtQykgPG9iamVjdD5dIFs8b2JqZWN0Pl0iCittc2dzdHIgIiIKKyJnaXQgbm90ZXMgWy0tcmVmIDxyaWZlcmltZW50byBub3RlPl0gYXBwZW5kIFstLWFsbG93LWVtcHR5XSBbLW0gPG1lc3NhZ2dpbz4gIgorInwgLUYgPGZpbGU+IHwgKC1jIHwgLUMpIDxvZ2dldHRvPl0gWzxvZ2dldHRvPl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMgorbXNnaWQgImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIGVkaXQgWy0tYWxsb3ctZW1wdHldIFs8b2JqZWN0Pl0iCittc2dzdHIgImdpdCBub3RlcyBbLS1yZWYgPHJpZmVyaW1lbnRvIG5vdGU+XSBlZGl0IFstLWFsbG93LWVtcHR5XSBbPG9nZ2V0dG8+XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjMzCittc2dpZCAiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gc2hvdyBbPG9iamVjdD5dIgorbXNnc3RyICJnaXQgbm90ZXMgWy0tcmVmIDxyaWZlcmltZW50byBub3RlPl0gc2hvdyBbPG9nZ2V0dG8+XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM0Cittc2dpZCAiIgorImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIG1lcmdlIFstdiB8IC1xXSBbLXMgPHN0cmF0ZWd5Pl0gPG5vdGVzLXJlZj4iCittc2dzdHIgIiIKKyJnaXQgbm90ZXMgWy0tcmVmIDxyaWZlcmltZW50byBub3RlPl0gbWVyZ2UgWy12IHwgLXFdIFstcyA8c3RyYXRlZ2lhPl0gIgorIjxyaWZlcmltZW50byBub3RlPiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM1Cittc2dpZCAiZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0IFstdiB8IC1xXSIKK21zZ3N0ciAiZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0IFstdiB8IC1xXSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM2Cittc2dpZCAiZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQgWy12IHwgLXFdIgorbXNnc3RyICJnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCBbLXYgfCAtcV0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozNworbXNnaWQgImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIHJlbW92ZSBbPG9iamVjdD4uLi5dIgorbXNnc3RyICJnaXQgbm90ZXMgWy0tcmVmIDxyaWZlcmltZW50byBub3RlPl0gcmVtb3ZlIFs8b2dnZXR0bz4uLi5dIgorCisjOiBidWlsdGluL25vdGVzLmM6MzgKK21zZ2lkICJnaXQgbm90ZXMgWy0tcmVmIDxub3Rlcy1yZWY+XSBwcnVuZSBbLW5dIFstdl0iCittc2dzdHIgImdpdCBub3RlcyBbLS1yZWYgPHJpZmVyaW1lbnRvIG5vdGU+XSBwcnVuZSBbLW5dIFstdl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozOQorbXNnaWQgImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIGdldC1yZWYiCittc2dzdHIgImdpdCBub3RlcyBbLS1yZWYgPHJpZmVyaW1lbnRvIG5vdGU+XSBnZXQtcmVmIgorCisjOiBidWlsdGluL25vdGVzLmM6NDQKK21zZ2lkICJnaXQgbm90ZXMgW2xpc3QgWzxvYmplY3Q+XV0iCittc2dzdHIgImdpdCBub3RlcyBbbGlzdCBbPG9nZ2V0dG8+XV0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OQorbXNnaWQgImdpdCBub3RlcyBhZGQgWzxvcHRpb25zPl0gWzxvYmplY3Q+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIGFkZCBbPG9wemlvbmk+XSBbPG9nZ2V0dG8+XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjU0Cittc2dpZCAiZ2l0IG5vdGVzIGNvcHkgWzxvcHRpb25zPl0gPGZyb20tb2JqZWN0PiA8dG8tb2JqZWN0PiIKK21zZ3N0ciAiZ2l0IG5vdGVzIGNvcHkgWzxvZ2dldHRvPl0gPG9nZ2V0dG8gc29yZ2VudGU+IDxvZ2dldHRvIGRlc3RpbmF6aW9uZT4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1NQorbXNnaWQgImdpdCBub3RlcyBjb3B5IC0tc3RkaW4gWzxmcm9tLW9iamVjdD4gPHRvLW9iamVjdD5dLi4uIgorbXNnc3RyICJnaXQgbm90ZXMgY29weSAtLXN0ZGluIFs8b2dnZXR0byBzb3JnZW50ZT4gPG9nZ2V0dG8gZGVzdGluYXppb25lPl0uLi4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2MAorbXNnaWQgImdpdCBub3RlcyBhcHBlbmQgWzxvcHRpb25zPl0gWzxvYmplY3Q+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIGFwcGVuZCBbPG9wemlvbmk+XSBbPG9nZ2V0dG8+XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjY1Cittc2dpZCAiZ2l0IG5vdGVzIGVkaXQgWzxvYmplY3Q+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIGVkaXQgWzxvZ2dldHRvPl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MAorbXNnaWQgImdpdCBub3RlcyBzaG93IFs8b2JqZWN0Pl0iCittc2dzdHIgImdpdCBub3RlcyBzaG93IFs8b2dnZXR0bz5dIgorCisjOiBidWlsdGluL25vdGVzLmM6NzUKK21zZ2lkICJnaXQgbm90ZXMgbWVyZ2UgWzxvcHRpb25zPl0gPG5vdGVzLXJlZj4iCittc2dzdHIgImdpdCBub3RlcyBtZXJnZSBbPG9wemlvbmk+XSA8cmlmZXJpbWVudG8gbm90ZT4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NgorbXNnaWQgImdpdCBub3RlcyBtZXJnZSAtLWNvbW1pdCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0IFs8b3B6aW9uaT5dIgorCisjOiBidWlsdGluL25vdGVzLmM6NzcKK21zZ2lkICJnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQgWzxvcHppb25pPl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MgorbXNnaWQgImdpdCBub3RlcyByZW1vdmUgWzxvYmplY3Q+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIHJlbW92ZSBbPG9nZ2V0dG8+XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjg3Cittc2dpZCAiZ2l0IG5vdGVzIHBydW5lIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgbm90ZXMgcHJ1bmUgWzxvcHppb25pPl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MgorbXNnaWQgImdpdCBub3RlcyBnZXQtcmVmIgorbXNnc3RyICJnaXQgbm90ZXMgZ2V0LXJlZiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjk3Cittc2dpZCAiV3JpdGUvZWRpdCB0aGUgbm90ZXMgZm9yIHRoZSBmb2xsb3dpbmcgb2JqZWN0OiIKK21zZ3N0ciAiU2NyaXZpL21vZGlmaWNhIGxlIG5vdGUgcGVyIGwnb2dnZXR0byBzZWd1ZW50ZToiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoxNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHN0YXJ0ICdzaG93JyBmb3Igb2JqZWN0ICclcyciCiBtc2dzdHIgImltcG9zc2liaWxlIGF2dmlhcmUgJ3Nob3cnIHBlciBsJ29nZ2V0dG8gJyVzJyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjE0NQotbXNnaWQgImNhbid0IGZkb3BlbiAnc2hvdycgb3V0cHV0IGZkIgotbXNnc3RyICIiCisjOiBidWlsdGluL25vdGVzLmM6MTU0Cittc2dpZCAiY291bGQgbm90IHJlYWQgJ3Nob3cnIG91dHB1dCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBsJ291dHB1dCBkaSAnc2hvdyciCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzoxNTUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgdG8gJ3Nob3cnIGZvciBvYmplY3QgJyVzJyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL25vdGVzLmM6MTU4CisjOiBidWlsdGluL25vdGVzLmM6MTYyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBmaW5pc2ggJ3Nob3cnIGZvciBvYmplY3QgJyVzJyIKLW1zZ3N0ciAiIgorbXNnc3RyICJpbXBvc3NpYmlsZSB0ZXJtaW5hcmUgJ3Nob3cnIHBlciBsJ29nZ2V0dG8gJyVzJyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjE3NSBidWlsdGluL3RhZy5jOjM0NwotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGZpbGUgJyVzJyIKLW1zZ3N0ciAibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBjcmVhcmUgaWwgZmlsZSAnJXMnIgorIzogYnVpbHRpbi9ub3Rlcy5jOjE5NworbXNnaWQgInBsZWFzZSBzdXBwbHkgdGhlIG5vdGUgY29udGVudHMgdXNpbmcgZWl0aGVyIC1tIG9yIC1GIG9wdGlvbiIKK21zZ3N0ciAiZm9ybmlzY2kgaSBjb250ZW51dGkgZGVsbGUgbm90ZSB1c2FuZG8gbCdvcHppb25lIC1tIG8gLUYiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzoxODkKLW1zZ2lkICJQbGVhc2Ugc3VwcGx5IHRoZSBub3RlIGNvbnRlbnRzIHVzaW5nIGVpdGhlciAtbSBvciAtRiBvcHRpb24iCi1tc2dzdHIgIlBlciBmYXZvcmUgc3BlY2lmaWNhIGlsIGNvbnRlbnV0byBkZWxsZSBub3RlIHVzYW5kbyBsZSBvcHppb25pIC1tIG8gLUYiCi0KLSM6IGJ1aWx0aW4vbm90ZXMuYzoyMTAgYnVpbHRpbi9ub3Rlcy5jOjk3MwotIywgYy1mb3JtYXQKLW1zZ2lkICJSZW1vdmluZyBub3RlIGZvciBvYmplY3QgJXNcbiIKLW1zZ3N0ciAiUmltb3ppb25lIGRlbGxhIG5vdGEgcGVyIGwnb2dnZXR0byAlc1xuIgotCi0jOiBidWlsdGluL25vdGVzLmM6MjE1CisjOiBidWlsdGluL25vdGVzLmM6MjA2CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5vdGUgb2JqZWN0IgogbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSBsJ29nZ2V0dG8gbm90YSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjIxNworIzogYnVpbHRpbi9ub3Rlcy5jOjIwOAogIywgYy1mb3JtYXQKLW1zZ2lkICJUaGUgbm90ZSBjb250ZW50cyBoYXMgYmVlbiBsZWZ0IGluICVzIgotbXNnc3RyICJJbCBjb250ZW51dG8gZGVsbGEgbm90YSDDqCBzdGF0byBsYXNjaWF0byBpbiAlcyIKK21zZ2lkICJ0aGUgbm90ZSBjb250ZW50cyBoYXZlIGJlZW4gbGVmdCBpbiAlcyIKK21zZ3N0ciAiaSBjb250ZW51dGkgZGVsbGEgbm90YSBzb25vIHN0YXRpIGxhc2NpYXRpIGluICVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6MjUxIGJ1aWx0aW4vdGFnLmM6NTQyCi0jLCBjLWZvcm1hdAotbXNnaWQgImNhbm5vdCByZWFkICclcyciCi1tc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgJyVzJyIKLQotIzogYnVpbHRpbi9ub3Rlcy5jOjI1MyBidWlsdGluL3RhZy5jOjU0NQorIzogYnVpbHRpbi9ub3Rlcy5jOjI0MiBidWlsdGluL3RhZy5jOjUzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBvciByZWFkICclcyciCiBtc2dzdHIgIm5vbiDDqCBzdGF0byBwb3NzaWJpbGUgYXByaXJlIG8gbGVnZ2VyZSAnJXMnIgogCi0jOiBidWlsdGluL25vdGVzLmM6MjcyIGJ1aWx0aW4vbm90ZXMuYzo0NDUgYnVpbHRpbi9ub3Rlcy5jOjQ0NwotIzogYnVpbHRpbi9ub3Rlcy5jOjUwNyBidWlsdGluL25vdGVzLmM6NTYxIGJ1aWx0aW4vbm90ZXMuYzo2NDQKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2NDkgYnVpbHRpbi9ub3Rlcy5jOjcyNCBidWlsdGluL25vdGVzLmM6NzY2Ci0jOiBidWlsdGluL25vdGVzLmM6OTY4IGJ1aWx0aW4vcmVzZXQuYzoyOTMgYnVpbHRpbi90YWcuYzo1NTgKKyM6IGJ1aWx0aW4vbm90ZXMuYzoyNjMgYnVpbHRpbi9ub3Rlcy5jOjMxMyBidWlsdGluL25vdGVzLmM6MzE1CisjOiBidWlsdGluL25vdGVzLmM6MzgzIGJ1aWx0aW4vbm90ZXMuYzo0MzggYnVpbHRpbi9ub3Rlcy5jOjUyNgorIzogYnVpbHRpbi9ub3Rlcy5jOjUzMSBidWlsdGluL25vdGVzLmM6NjEwIGJ1aWx0aW4vbm90ZXMuYzo2NzIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZi4iCittc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZi4iCittc2dzdHIgImltcG9zc2liaWxlIHJpc29sdmVyZSAnJXMnIGNvbWUgcmlmZXJpbWVudG8gdmFsaWRvLiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjI2NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvYmplY3QgJyVzJy4iCittc2dzdHIgImxldHR1cmEgZGVsbCdvZ2dldHRvICclcycgbm9uIHJpdXNjaXRhLiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBub3RlIGRhdGEgZnJvbSBub24tYmxvYiBvYmplY3QgJyVzJy4iCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaSBkYXRpIGRlbGxhIG5vdGEgZGFsbCdvZ2dldHRvIG5vbiBibG9iICclcycuIgorCisjOiBidWlsdGluL25vdGVzLmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBpbnB1dCBsaW5lOiAnJXMnLiIKK21zZ3N0ciAicmlnYSBkaSBpbnB1dCBtYWxmb3JtYXRhOiAnJXMnLiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY29weSBub3RlcyBmcm9tICclcycgdG8gJyVzJyIKK21zZ3N0ciAiY29waWEgZGVsbGUgbm90ZSBkYSAnJXMnIGEgJyVzJyBub24gcml1c2NpdGEiCisKKyMuIFRSQU5TTEFUT1JTOiB0aGUgZmlyc3QgJXMgd2lsbCBiZSByZXBsYWNlZCBieSBhIGdpdAorIy4gbm90ZXMgY29tbWFuZDogJ2FkZCcsICdtZXJnZScsICdyZW1vdmUnLCBldGMuCisjLgorIzogYnVpbHRpbi9ub3Rlcy5jOjM1NgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byAlcyBub3RlcyBpbiAlcyAob3V0c2lkZSBvZiByZWZzL25vdGVzLykiCiBtc2dzdHIgIiIKKyJtaSByaWZpdXRvIGRpIGVzZWd1aXJlICVzIGRlbGxlIG5vdGUgaW4gJXMgKGFsIGRpIGZ1b3JpIGRpIHJlZnMvbm90ZXMvKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjI3NQotIywgYy1mb3JtYXQKLW1zZ2lkICJGYWlsZWQgdG8gcmVhZCBvYmplY3QgJyVzJy4iCi1tc2dzdHIgIkxldHR1cmEgZGVsbCdvZ2dldHRvICclcycgbm9uIHJpdXNjaXRhLiIKLQotIzogYnVpbHRpbi9ub3Rlcy5jOjI5OQotbXNnaWQgIkNhbm5vdCBjb21taXQgdW5pbml0aWFsaXplZC91bnJlZmVyZW5jZWQgbm90ZXMgdHJlZSIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL25vdGVzLmM6MzQwCi0jLCBjLWZvcm1hdAotbXNnaWQgIkJhZCBub3Rlcy5yZXdyaXRlTW9kZSB2YWx1ZTogJyVzJyIKLW1zZ3N0ciAiVmFsb3JlIGRpIG5vdGVzLnJld3JpdGVNb2RlIGVycmF0bzogJyVzJyIKLQotIzogYnVpbHRpbi9ub3Rlcy5jOjM1MAotIywgYy1mb3JtYXQKLW1zZ2lkICJSZWZ1c2luZyB0byByZXdyaXRlIG5vdGVzIGluICVzIChvdXRzaWRlIG9mIHJlZnMvbm90ZXMvKSIKLW1zZ3N0ciAiSW1wb3NzaWJpbGUgcmlzY3JpdmVyZSBsZSBub3RlIGluICVzIChhbCBkaSBmdW9yaSBkaSByZWZzL25vdGVzLykiCi0KLSMuIFRSQU5TTEFUT1JTOiBUaGUgZmlyc3QgJXMgaXMgdGhlIG5hbWUgb2YgdGhlCi0jLiBlbnZpcm9ubWVudCB2YXJpYWJsZSwgdGhlIHNlY29uZCAlcyBpcyBpdHMgdmFsdWUKLSM6IGJ1aWx0aW4vbm90ZXMuYzozNzcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQmFkICVzIHZhbHVlOiAnJXMnIgotbXNnc3RyICJWYWxvcmUgZGkgJXMgZXJyYXRvOiAnJXMnIgotCi0jOiBidWlsdGluL25vdGVzLmM6NDQxCi0jLCBjLWZvcm1hdAotbXNnaWQgIk1hbGZvcm1lZCBpbnB1dCBsaW5lOiAnJXMnLiIKLW1zZ3N0ciAiUmlnYSBkaSBpbnB1dCBtYWxmb3JtYXRhOiAnJXMnLiIKLQotIzogYnVpbHRpbi9ub3Rlcy5jOjQ1NgotIywgYy1mb3JtYXQKLW1zZ2lkICJGYWlsZWQgdG8gY29weSBub3RlcyBmcm9tICclcycgdG8gJyVzJyIKLW1zZ3N0ciAiQ29waWEgZGVsbGUgbm90ZSBkYSAnJXMnIGEgJyVzJyBub24gcml1c2NpdGEiCi0KLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MDAgYnVpbHRpbi9ub3Rlcy5jOjU1NCBidWlsdGluL25vdGVzLmM6NjI3Ci0jOiBidWlsdGluL25vdGVzLmM6NjM5IGJ1aWx0aW4vbm90ZXMuYzo3MTIgYnVpbHRpbi9ub3Rlcy5jOjc1OQotIzogYnVpbHRpbi9ub3Rlcy5jOjEwMzMKKyM6IGJ1aWx0aW4vbm90ZXMuYzozNzYgYnVpbHRpbi9ub3Rlcy5jOjQzMSBidWlsdGluL25vdGVzLmM6NTA5CisjOiBidWlsdGluL25vdGVzLmM6NTIxIGJ1aWx0aW4vbm90ZXMuYzo1OTggYnVpbHRpbi9ub3Rlcy5jOjY2NQorIzogYnVpbHRpbi9ub3Rlcy5jOjgxNSBidWlsdGluL25vdGVzLmM6OTYzIGJ1aWx0aW4vbm90ZXMuYzo5ODUKIG1zZ2lkICJ0b28gbWFueSBwYXJhbWV0ZXJzIgogbXNnc3RyICJ0cm9wcGkgcGFyYW1ldHJpIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTEzIGJ1aWx0aW4vbm90ZXMuYzo3NzIKKyM6IGJ1aWx0aW4vbm90ZXMuYzozODkgYnVpbHRpbi9ub3Rlcy5jOjY3OAogIywgYy1mb3JtYXQKLW1zZ2lkICJObyBub3RlIGZvdW5kIGZvciBvYmplY3QgJXMuIgotbXNnc3RyICJOZXNzdW5hIG5vdGEgdHJvdmF0YSBwZXIgbCdvZ2dldHRvICVzLiIKK21zZ2lkICJubyBub3RlIGZvdW5kIGZvciBvYmplY3QgJXMuIgorbXNnc3RyICJuZXNzdW5hIG5vdGEgdHJvdmF0YSBwZXIgbCdvZ2dldHRvICVzLiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjU4MAorIzogYnVpbHRpbi9ub3Rlcy5jOjQxMCBidWlsdGluL25vdGVzLmM6NTc2Cittc2dpZCAibm90ZSBjb250ZW50cyBhcyBhIHN0cmluZyIKK21zZ3N0ciAiY29udGVudXRpIGRlbGxhIG5vdGEgY29tZSBzdHJpbmdhIgorCisjOiBidWlsdGluL25vdGVzLmM6NDEzIGJ1aWx0aW4vbm90ZXMuYzo1NzkKK21zZ2lkICJub3RlIGNvbnRlbnRzIGluIGEgZmlsZSIKK21zZ3N0ciAiY29udGVudXRpIGRlbGxhIG5vdGEgaW4gdW4gZmlsZSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjQxNiBidWlsdGluL25vdGVzLmM6NTgyCittc2dpZCAicmV1c2UgYW5kIGVkaXQgc3BlY2lmaWVkIG5vdGUgb2JqZWN0IgorbXNnc3RyICJyaXVzYSBsJ29nZ2V0dG8gbm90YSBzcGVjaWZpY2F0byBwZXIgcG9pIG1vZGlmaWNhcmxvIgorCisjOiBidWlsdGluL25vdGVzLmM6NDE5IGJ1aWx0aW4vbm90ZXMuYzo1ODUKK21zZ2lkICJyZXVzZSBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCittc2dzdHIgInJpdXNhIGwnb2dnZXR0byBub3RhIHNwZWNpZmljYXRvIgorCisjOiBidWlsdGluL25vdGVzLmM6NDIyIGJ1aWx0aW4vbm90ZXMuYzo1ODgKK21zZ2lkICJhbGxvdyBzdG9yaW5nIGVtcHR5IG5vdGUiCittc2dzdHIgImNvbnNlbnRpIGlsIHNhbHZhdGFnZ2lvIGRpIHVuYSBub3RhIHZ1b3RhIgorCisjOiBidWlsdGluL25vdGVzLmM6NDIzIGJ1aWx0aW4vbm90ZXMuYzo0OTYKK21zZ2lkICJyZXBsYWNlIGV4aXN0aW5nIG5vdGVzIgorbXNnc3RyICJzb3N0aXR1aXNjaSBsZSBub3RlIGVzaXN0ZW50aSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjQ0OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IGFkZCBub3Rlcy4gRm91bmQgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlcy4gVXNlICctZicgdG8gb3ZlcndyaXRlICIKICJleGlzdGluZyBub3RlcyIKIG1zZ3N0ciAiIgorIkltcG9zc2liaWxlIGFnZ2l1bmdlcmUgbm90ZS4gVHJvdmF0ZSBub3RlIGVzaXN0ZW50aSBwZXIgbCdvZ2dldHRvICVzLiBVc2EgJy0iCisiZicgcGVyIHNvdnJhc2NyaXZlcmUgbGUgbm90ZSBlc2lzdGVudGkiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1ODUgYnVpbHRpbi9ub3Rlcy5jOjY2MgorIzogYnVpbHRpbi9ub3Rlcy5jOjQ2MyBidWlsdGluL25vdGVzLmM6NTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIk92ZXJ3cml0aW5nIGV4aXN0aW5nIG5vdGVzIGZvciBvYmplY3QgJXNcbiIKIG1zZ3N0ciAiU292cmFzY3JpdHR1cmEgZGVsbGUgbm90ZSBlc2lzdGVudGkgcGVyIGwnb2dnZXR0byAlc1xuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NjM1CisjOiBidWlsdGluL25vdGVzLmM6NDc1IGJ1aWx0aW4vbm90ZXMuYzo2MzcgYnVpbHRpbi9ub3Rlcy5jOjkwMgorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyBub3RlIGZvciBvYmplY3QgJXNcbiIKK21zZ3N0ciAiUmltb3ppb25lIGRlbGxhIG5vdGEgcGVyIGwnb2dnZXR0byAlc1xuIgorCisjOiBidWlsdGluL25vdGVzLmM6NDk3Cittc2dpZCAicmVhZCBvYmplY3RzIGZyb20gc3RkaW4iCittc2dzdHIgImxlZ2dpIG9nZ2V0dGkgZGFsbG8gc3RhbmRhcmQgaW5wdXQiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTkKK21zZ2lkICJsb2FkIHJld3JpdGluZyBjb25maWcgZm9yIDxjb21tYW5kPiAoaW1wbGllcyAtLXN0ZGluKSIKK21zZ3N0ciAiIgorImNhcmljYSBsYSBjb25maWd1cmF6aW9uZSBkaSByaXNjcml0dHVyYSBwZXIgPGNvbWFuZG8+IChpbXBsaWNhIC0tc3RkaW4pIgorCisjOiBidWlsdGluL25vdGVzLmM6NTE3CiBtc2dpZCAidG9vIGZldyBwYXJhbWV0ZXJzIgogbXNnc3RyICJ0cm9wcGkgcG9jaGkgcGFyYW1ldHJpIgogCi0jOiBidWlsdGluL25vdGVzLmM6NjU2CisjOiBidWlsdGluL25vdGVzLmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgY29weSBub3Rlcy4gRm91bmQgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlcy4gVXNlICctZicgdG8gb3ZlcndyaXRlICIKICJleGlzdGluZyBub3RlcyIKIG1zZ3N0ciAiIgotIkltcG9zc2liaWxlIGNvcGlhcmUgbGUgbm90ZS4gVHJvdmF0ZSBub3RlIGVzaXN0ZW50aSBwZXIgbCdvZ2dldHRvICVzLiBVc2EgIgotIictZicgcGVyIHNvdnJhc2NyaXZlcmUgbGUgbm90ZSBlc2lzdGVudGkiCisiSW1wb3NzaWJpbGUgY29waWFyZSBsZSBub3RlLiBUcm92YXRlIG5vdGUgZXNpc3RlbnRpIHBlciBsJ29nZ2V0dG8gJXMuIFVzYSAnLSIKKyJmJyBwZXIgc292cmFzY3JpdmVyZSBsZSBub3RlIGVzaXN0ZW50aSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjY2OAorIzogYnVpbHRpbi9ub3Rlcy5jOjU1MAogIywgYy1mb3JtYXQKLW1zZ2lkICJNaXNzaW5nIG5vdGVzIG9uIHNvdXJjZSBvYmplY3QgJXMuIENhbm5vdCBjb3B5LiIKLW1zZ3N0ciAiTm90ZSBtYW5jYW50aSBwZXIgbCdvZ2dldHRvIHNvcmdlbnRlICVzLiBJbXBvc3NpYmlsZSBjb3BpYXJlLiIKK21zZ2lkICJtaXNzaW5nIG5vdGVzIG9uIHNvdXJjZSBvYmplY3QgJXMuIENhbm5vdCBjb3B5LiIKK21zZ3N0ciAibm90ZSBtYW5jYW50aSBwZXIgbCdvZ2dldHRvIHNvcmdlbnRlICVzLiBJbXBvc3NpYmlsZSBjb3BpYXJlLiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjcxNworIzogYnVpbHRpbi9ub3Rlcy5jOjYwMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIC1tLy1GLy1jLy1DIG9wdGlvbnMgaGF2ZSBiZWVuIGRlcHJlY2F0ZWQgZm9yIHRoZSAnZWRpdCcgc3ViY29tbWFuZC5cbiIKICJQbGVhc2UgdXNlICdnaXQgbm90ZXMgYWRkIC1mIC1tLy1GLy1jLy1DJyBpbnN0ZWFkLlxuIgogbXNnc3RyICIiCiAiTGUgb3B6aW9uaSAtbS8tRi8tYy8tQyBwZXIgaWwgc290dG9jb21hbmRvICdlZGl0JyBzb25vIGRlcHJlY2F0ZS5cbiIKLSJQZXIgZmF2b3JlIHVzYSAnZ2l0IG5vdGVzIGFkZCAtZiAtbS8tRi8tYy8tQycgaW52ZWNlLlxuIgorIlVzYSAnZ2l0IG5vdGVzIGFkZCAtZiAtbS8tRi8tYy8tQycgYWwgbG9ybyBwb3N0by5cbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk3MQorIzogYnVpbHRpbi9ub3Rlcy5jOjY5OAorbXNnaWQgImZhaWxlZCB0byBkZWxldGUgcmVmIE5PVEVTX01FUkdFX1BBUlRJQUwiCittc2dzdHIgImVsaW1pbmF6aW9uZSBkZWwgcmlmZXJpbWVudG8gTk9URVNfTUVSR0VfUEFSVElBTCBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDAKK21zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIHJlZiBOT1RFU19NRVJHRV9SRUYiCittc2dzdHIgImVsaW1pbmF6aW9uZSBkZWwgcmlmZXJpbWVudG8gTk9URVNfTUVSR0VfUkVGIG5vbiByaXVzY2l0YSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjcwMgorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgJ2dpdCBub3RlcyBtZXJnZScgd29ya3RyZWUiCittc2dzdHIgInJpbW96aW9uZSBkZWxsJ2FsYmVybyBkaSBsYXZvcm8gZGkgJ2dpdCBub3RlcyBtZXJnZScgbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL25vdGVzLmM6NzIyCittc2dpZCAiZmFpbGVkIHRvIHJlYWQgcmVmIE5PVEVTX01FUkdFX1BBUlRJQUwiCittc2dzdHIgImxldHR1cmEgZGVsIHJpZmVyaW1lbnRvIE5PVEVTX01FUkdFX1BBUlRJQUwgbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL25vdGVzLmM6NzI0Cittc2dpZCAiY291bGQgbm90IGZpbmQgY29tbWl0IGZyb20gTk9URVNfTUVSR0VfUEFSVElBTC4iCittc2dzdHIgImltcG9zc2liaWxlIHRyb3ZhcmUgaWwgY29tbWl0IGRhIE5PVEVTX01FUkdFX1BBUlRJQUwuIgorCisjOiBidWlsdGluL25vdGVzLmM6NzI2Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbW1pdCBmcm9tIE5PVEVTX01FUkdFX1BBUlRJQUwuIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGlsIGNvbW1pdCBkYSBOT1RFU19NRVJHRV9QQVJUSUFMLiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjczOQorbXNnaWQgImZhaWxlZCB0byByZXNvbHZlIE5PVEVTX01FUkdFX1JFRiIKK21zZ3N0ciAicmlzb2x1emlvbmUgZGkgTk9URVNfTUVSR0VfUkVGIG5vbiByaXVzY2l0YSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjc0MgorbXNnaWQgImZhaWxlZCB0byBmaW5hbGl6ZSBub3RlcyBtZXJnZSIKK21zZ3N0ciAiZmluYWxpenphemlvbmUgZGVsIG1lcmdlIGRlbGxlIG5vdGUgbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL25vdGVzLmM6NzY4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gbm90ZXMgbWVyZ2Ugc3RyYXRlZ3kgJXMiCittc2dzdHIgInN0cmF0ZWdpYSBkaSBtZXJnZSBkZWxsZSBub3RlICVzIHNjb25vc2NpdXRhIgorCisjOiBidWlsdGluL25vdGVzLmM6Nzg0Cittc2dpZCAiR2VuZXJhbCBvcHRpb25zIgorbXNnc3RyICJPcHppb25pIGdlbmVyYWxpIgorCisjOiBidWlsdGluL25vdGVzLmM6Nzg2Cittc2dpZCAiTWVyZ2Ugb3B0aW9ucyIKK21zZ3N0ciAiT3B6aW9uaSBtZXJnZSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjc4OAorbXNnaWQgIiIKKyJyZXNvbHZlIG5vdGVzIGNvbmZsaWN0cyB1c2luZyB0aGUgZ2l2ZW4gc3RyYXRlZ3kgKG1hbnVhbC9vdXJzL3RoZWlycy91bmlvbi8iCisiY2F0X3NvcnRfdW5pcSkiCittc2dzdHIgIiIKKyJyaXNvbHZpIGkgY29uZmxpdHRpIGRlbGxlIG5vdGUgdXNhbmRvIGxhIHN0cmF0ZWdpYSBkYXRhIChtYW51YWwvb3Vycy90aGVpcnMvIgorInVuaW9uL2NhdF9zb3J0X3VuaXEpIgorCisjOiBidWlsdGluL25vdGVzLmM6NzkwCittc2dpZCAiQ29tbWl0dGluZyB1bm1lcmdlZCBub3RlcyIKK21zZ3N0ciAiQ29tbWl0IGRlbGxlIG5vdGUgbm9uIHNvdHRvcG9zdGUgYSBtZXJnZSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjc5MgorbXNnaWQgImZpbmFsaXplIG5vdGVzIG1lcmdlIGJ5IGNvbW1pdHRpbmcgdW5tZXJnZWQgbm90ZXMiCittc2dzdHIgIiIKKyJmaW5hbGl6emEgaWwgbWVyZ2UgZGVsbGUgbm90ZSBlc2VndWVuZG8gaWwgY29tbWl0IGRlbGxlIG5vdGUgbm9uIHNvdHRvcG9zdGUgIgorImEgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTQKK21zZ2lkICJBYm9ydGluZyBub3RlcyBtZXJnZSByZXNvbHV0aW9uIgorbXNnc3RyICJJbnRlcnJ1emlvbmUgZGVsbGEgcmlzb2x1emlvbmUgZGVsIG1lcmdlIGRlbGxlIG5vdGUiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTYKK21zZ2lkICJhYm9ydCBub3RlcyBtZXJnZSIKK21zZ3N0ciAiaW50ZXJyb21waSBpbCBtZXJnZSBkZWxsZSBub3RlIgorCisjOiBidWlsdGluL25vdGVzLmM6ODA3Cittc2dpZCAiY2Fubm90IG1peCAtLWNvbW1pdCwgLS1hYm9ydCBvciAtcy8tLXN0cmF0ZWd5IgorbXNnc3RyICJpbXBvc3NpYmlsZSB1c2FyZSBjb250ZW1wb3JhbmVhbWVudGUgLS1jb21taXQsIC0tYWJvcnQgbyAtcy8tLXN0cmF0ZWd5IgorCisjOiBidWlsdGluL25vdGVzLmM6ODEyCittc2dpZCAibXVzdCBzcGVjaWZ5IGEgbm90ZXMgcmVmIHRvIG1lcmdlIgorbXNnc3RyICJkZXZpIHNwZWNpZmljYXJlIHVuIHJpZmVyaW1lbnRvIG5vdGUgZGEgc290dG9wb3JyZSBhIG1lcmdlIgorCisjOiBidWlsdGluL25vdGVzLmM6ODM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gLXMvLS1zdHJhdGVneTogJXMiCittc2dzdHIgIi1zLy0tc3RyYXRlZ3kgc2Nvbm9zY2l1dGE6ICVzIgorCisjOiBidWlsdGluL25vdGVzLmM6ODczCisjLCBjLWZvcm1hdAorbXNnaWQgImEgbm90ZXMgbWVyZ2UgaW50byAlcyBpcyBhbHJlYWR5IGluLXByb2dyZXNzIGF0ICVzIgorbXNnc3RyICLDqCBnacOgIGluIGNvcnNvIHVuJ29wZXJhemlvbmUgZGkgbWVyZ2UgZGVsbGUgbm90ZSBpbiAlcyBhbCBwZXJjb3JzbyAlcyIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjg3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RvcmUgbGluayB0byBjdXJyZW50IG5vdGVzIHJlZiAoJXMpIgorbXNnc3RyICIiCisic2FsdmF0YWdnaW8gZGVsIGNvbGxlZ2FtZW50byBhbCByaWZlcmltZW50byBjb3JyZW50ZSBkZWxsZSBub3RlICglcykgbm9uICIKKyJyaXVzY2l0byIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjg3OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQXV0b21hdGljIG5vdGVzIG1lcmdlIGZhaWxlZC4gRml4IGNvbmZsaWN0cyBpbiAlcyBhbmQgY29tbWl0IHRoZSByZXN1bHQgd2l0aCAiCisiJ2dpdCBub3RlcyBtZXJnZSAtLWNvbW1pdCcsIG9yIGFib3J0IHRoZSBtZXJnZSB3aXRoICdnaXQgbm90ZXMgbWVyZ2UgLS0iCisiYWJvcnQnLlxuIgorbXNnc3RyICIiCisiTWVyZ2UgYXV0b21hdGljbyBkZWxsZSBub3RlIG5vbiByaXVzY2l0by4gUmlzb2x2aSBpIGNvbmZsaXR0aSBpbiAlcyBlZCAiCisiZXNlZ3VpIGlsIGNvbW1pdCBkZWwgcmlzdWx0YXRvIGNvbiAnZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0JyBvIGludGVycm9tcGkgIgorImlsIG1lcmdlIGNvbiAnZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQnLlxuIgorCisjOiBidWlsdGluL25vdGVzLmM6ODk3IGJ1aWx0aW4vdGFnLmM6NTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgorbXNnc3RyICJSaXNvbHV6aW9uZSBkaSAnJXMnIGNvbWUgcmlmZXJpbWVudG8gdmFsaWRvIG5vbiByaXVzY2l0YS4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiT2JqZWN0ICVzIGhhcyBubyBub3RlXG4iCiBtc2dzdHIgIkwnb2dnZXR0byAlcyBub24gaGEgbm90ZS5cbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjExMDMgYnVpbHRpbi9yZW1vdGUuYzoxNTk4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIlVua25vd24gc3ViY29tbWFuZDogJXMiCi1tc2dzdHIgIlNvdHRvY29tYW5kbyBzY29ub3NjaXV0bzogJXMiCisjOiBidWlsdGluL25vdGVzLmM6OTEyCittc2dpZCAiYXR0ZW1wdCB0byByZW1vdmUgbm9uLWV4aXN0ZW50IG5vdGUgaXMgbm90IGFuIGVycm9yIgorbXNnc3RyICJpbCB0ZW50YXRpdm8gZGkgcmltdW92ZXJlIHVuYSBub3RhIGluZXNpc3RlbnRlIG5vbiDDqCB1biBlcnJvcmUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjMzNworIzogYnVpbHRpbi9ub3Rlcy5jOjkxNQorbXNnaWQgInJlYWQgb2JqZWN0IG5hbWVzIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJsZWdnaSBpIG5vbWkgZGVnbGkgb2dnZXR0aSBkYWxsbyBzdGFuZGFyZCBpbnB1dCIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjk1NCBidWlsdGluL3BydW5lLmM6MTMwIGJ1aWx0aW4vd29ya3RyZWUuYzoxNjQKK21zZ2lkICJkbyBub3QgcmVtb3ZlLCBzaG93IG9ubHkiCittc2dzdHIgIm5vbiByaW11b3ZlcmUsIGxpbWl0YXRpIGEgdmlzdWFsaXp6YXJlIgorCisjOiBidWlsdGluL25vdGVzLmM6OTU1Cittc2dpZCAicmVwb3J0IHBydW5lZCBub3RlcyIKK21zZ3N0ciAic2VnbmFsYSBsZSBub3RlIGVsaW1pbmF0ZSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjk5OAorbXNnaWQgIm5vdGVzLXJlZiIKK21zZ3N0ciAicmlmZXJpbWVudG8gbm90ZSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjk5OQorbXNnaWQgInVzZSBub3RlcyBmcm9tIDxub3Rlcy1yZWY+IgorbXNnc3RyICJ1c2EgbGUgbm90ZSBpbiA8cmlmZXJpbWVudG8gbm90ZT4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoxMDM0IGJ1aWx0aW4vc3Rhc2guYzoxNjQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gc3ViY29tbWFuZDogJXMiCittc2dzdHIgInNvdHRvY29tYW5kbyBzY29ub3NjaXV0bzogJXMiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTIKK21zZ2lkICIiCisiZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCBbPG9wdGlvbnM+Li4uXSBbPCA8cmVmLWxpc3Q+IHwgPCA8b2JqZWN0LWxpc3Q+XSIKK21zZ3N0ciAiIgorImdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgWzxvcHppb25pPi4uLl0gWzwgPGVsZW5jbyByaWZlcmltZW50aT4gfCA8IDxlbGVuY28gIgorIm9nZ2V0dGk+XSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1MworbXNnaWQgIiIKKyJnaXQgcGFjay1vYmplY3RzIFs8b3B0aW9ucz4uLi5dIDxiYXNlLW5hbWU+IFs8IDxyZWYtbGlzdD4gfCA8IDxvYmplY3QtbGlzdD5dIgorbXNnc3RyICIiCisiZ2l0IHBhY2stb2JqZWN0cyBbPG9wemlvbmk+Li4uXSA8bm9tZSBiYXNlPiBbPCA8ZWxlbmNvIHJpZmVyaW1lbnRpPiB8IDwgIgorIjxlbGVuY28gb2dnZXR0aT5dIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgcGFja2VkIG9iamVjdCBDUkMgZm9yICVzIgorbXNnc3RyICJDUkMgb2dnZXR0byBzb3R0b3Bvc3RvIGEgcGFjayAlcyBlcnJhdG8iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvcnJ1cHQgcGFja2VkIG9iamVjdCBmb3IgJXMiCittc2dzdHIgIm9nZ2V0dG8gc290dG9wb3N0byBhIHBhY2sgJXMgY29ycm90dG8iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlY3Vyc2l2ZSBkZWx0YSBkZXRlY3RlZCBmb3Igb2JqZWN0ICVzIgorbXNnc3RyICJyaWxldmF0byBkZWx0YSByaWNvcnNpdm8gcGVyIGwnb2dnZXR0byAlcyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAib3JkZXJlZCAldSBvYmplY3RzLCBleHBlY3RlZCAlPFBSSXUzMj4iCittc2dzdHIgIiV1IG9nZ2V0dGkgb3JkaW5hdGksIGF0dGVzaSAlPFBSSXUzMj4iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTcyCittc2dpZCAiZGlzYWJsaW5nIGJpdG1hcCB3cml0aW5nLCBwYWNrcyBhcmUgc3BsaXQgZHVlIHRvIHBhY2sucGFja1NpemVMaW1pdCIKK21zZ3N0ciAiIgorImRpc2FiaWxpdG8gbGEgc2NyaXR0dXJhIGRlbGxlIGJpdG1hcCwgaSBwYWNrIHNvbm8gZGl2aXNpIGEgY2F1c2EgIgorImRlbGwnaW1wb3N0YXppb25lIHBhY2sucGFja1NpemVMaW1pdCIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5ODUKK21zZ2lkICJXcml0aW5nIG9iamVjdHMiCittc2dzdHIgIlNjcml0dHVyYSBkZWdsaSBvZ2dldHRpIGluIGNvcnNvIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjEwNDYgYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAlcyIKK21zZ3N0ciAic3RhdCBkaSAlcyBub24gcml1c2NpdG8iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ3cm90ZSAlPFBSSXUzMj4gb2JqZWN0cyB3aGlsZSBleHBlY3RpbmcgJTxQUkl1MzI+IgorbXNnc3RyICJzY3JpdHRpICU8UFJJdTMyPiBvZ2dldHRpIHF1YW5kbyBtZSBuZSBhdHRlbmRldm8gJTxQUkl1MzI+IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjEyOTcKK21zZ2lkICJkaXNhYmxpbmcgYml0bWFwIHdyaXRpbmcsIGFzIHNvbWUgb2JqZWN0cyBhcmUgbm90IGJlaW5nIHBhY2tlZCIKK21zZ3N0ciAiIgorImRpc2FiaWxpdG8gbGEgc2NyaXR0dXJhIGRlbGxlIGJpdG1hcCBwZXJjaMOpIGFsY3VuaSBvZ2dldHRpIG5vbiBzYXJhbm5vICIKKyJzb3R0b3Bvc3RpIGEgcGFjayIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNzI0CisjLCBjLWZvcm1hdAorbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IG92ZXJmbG93IGluIHBhY2sgZm9yICVzIgorbXNnc3RyICJvdmVyZmxvdyBkZWxsJ29mZnNldCBiYXNlIGRlbCBkZWx0YSBuZWwgcGFjayBwZXIgJXMiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTczMworIywgYy1mb3JtYXQKK21zZ2lkICJkZWx0YSBiYXNlIG9mZnNldCBvdXQgb2YgYm91bmQgZm9yICVzIgorbXNnc3RyICJvZmZzZXQgYmFzZSBkZWwgZGVsdGEgZnVvcmkgZGFsbCdpbnRlcnZhbGxvIGNvbnNlbnRpdG8gcGVyICVzIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwMDQKK21zZ2lkICJDb3VudGluZyBvYmplY3RzIgorbXNnc3RyICJDb250ZWdnaW8gZGVnbGkgb2dnZXR0aSBpbiBjb3JzbyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBvYmplY3QgaGVhZGVyIG9mICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGwnaW50ZXN0YXppb25lIG9nZ2V0dG8gZGkgJXMiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIxOSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyMzUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgJXMgY2Fubm90IGJlIHJlYWQiCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgbCdvZ2dldHRvICVzIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyMjIgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCAlcyBpbmNvbnNpc3RlbnQgb2JqZWN0IGxlbmd0aCAoJTxQUkl1TUFYPiB2cyAlPFBSSXVNQVg+KSIKK21zZ3N0ciAiIgorIm9nZ2V0dG8gJXM6IGx1bmdoZXp6YSBvZ2dldHRvIGluY29uc2lzdGVudGUgKCU8UFJJdU1BWD4gY29udHJvICU8UFJJdU1BWD4pIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNTkKK21zZ2lkICJzdWJvcHRpbWFsIHBhY2sgLSBvdXQgb2YgbWVtb3J5IgorbXNnc3RyICJwYWNrIHN1Ym90dGltbyAtIG1lbW9yaWEgZXNhdXJpdGEiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjU3NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWx0YSBjb21wcmVzc2lvbiB1c2luZyB1cCB0byAlZCB0aHJlYWRzIgorbXNnc3RyICJDb21wcmVzc2lvbmUgZGVsdGEgaW4gY29yc28sIHVzbyBmaW5vIGEgJWQgdGhyZWFkIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhY2sgb2JqZWN0cyByZWFjaGFibGUgZnJvbSB0YWcgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGlsIHBhY2sgZGVnbGkgb2dnZXR0aSByYWdnaXVuZ2liaWxpIGRhbCB0YWcgJXMiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjgwMQorbXNnaWQgIkNvbXByZXNzaW5nIG9iamVjdHMiCittc2dzdHIgIkNvbXByZXNzaW9uZSBvZ2dldHRpIGluIGNvcnNvIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4MDcKK21zZ2lkICJpbmNvbnNpc3RlbmN5IHdpdGggZGVsdGEgY291bnQiCittc2dzdHIgImluY29uc2lzdGVuemEgY29uIGlsIG51bWVybyBkZWkgZGVsdGEiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg4OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZXhwZWN0ZWQgZWRnZSBvYmplY3QgSUQsIGdvdCBnYXJiYWdlOlxuIgorIiAlcyIKK21zZ3N0ciAiIgorImF0dGVzbyBJRCBvZ2dldHRvIGFyY28sIHJpY2V2dXRpIGRhdGkgZXJyYXRpOlxuIgorIiAlcyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJleHBlY3RlZCBvYmplY3QgSUQsIGdvdCBnYXJiYWdlOlxuIgorIiAlcyIKK21zZ3N0ciAiIgorImF0dGVzbyBJRCBvZ2dldHRvLCByaWNldnV0aSBkYXRpIGVycmF0aTpcbiIKKyIgJXMiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjk5MgorbXNnaWQgImludmFsaWQgdmFsdWUgZm9yIC0tbWlzc2luZyIKK21zZ3N0ciAidmFsb3JlIG5vbiB2YWxpZG8gcGVyIC0tbWlzc2luZyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDUxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE1OQorbXNnaWQgImNhbm5vdCBvcGVuIHBhY2sgaW5kZXgiCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBsJ2luZGljZSBwYWNrIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9vc2Ugb2JqZWN0IGF0ICVzIGNvdWxkIG5vdCBiZSBleGFtaW5lZCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNhbWluYXJlIGwnb2dnZXR0byBzY2lvbHRvICVzIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNjcKK21zZ2lkICJ1bmFibGUgdG8gZm9yY2UgbG9vc2Ugb2JqZWN0IgorbXNnc3RyICJpbXBvc3NpYmlsZSBmb3J6YXJlIGwnb2dnZXR0byBzY2lvbHRvIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgcmV2ICclcyciCittc2dzdHIgIiclcycgbm9uIMOoIHVuYSByZXZpc2lvbmUiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MworIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgcmV2aXNpb24gJyVzJyIKK21zZ3N0ciAicmV2aXNpb25lICclcycgZXJyYXRhIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODgKK21zZ2lkICJ1bmFibGUgdG8gYWRkIHJlY2VudCBvYmplY3RzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhZ2dpdW5nZXJlIGdsaSBvZ2dldHRpIHJlY2VudGkiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnN1cHBvcnRlZCBpbmRleCB2ZXJzaW9uICVzIgogbXNnc3RyICJ2ZXJzaW9uZSAlcyBkaSBpbmRleCBub24gc3VwcG9ydGF0YSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMzQxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJyVzJyIKIG1zZ3N0ciAidmVyc2lvbmUgJyVzJyBkaSBpbmRleCBlcnJhdGEiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjM2NAotIywgYy1mb3JtYXQKLW1zZ2lkICJvcHRpb24gJXMgZG9lcyBub3QgYWNjZXB0IG5lZ2F0aXZlIGZvcm0iCi1tc2dzdHIgImwnb3B6aW9uZSAlcyBub24gYWNjZXR0YSBmb3JtZSBuZWdhdGl2ZSIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4MworbXNnaWQgIjx2ZXJzaW9uPlssPG9mZnNldD5dIgorbXNnc3RyICI8dmVyc2lvbmU+Wyw8b2Zmc2V0Pl0iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjM2OAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgdmFsdWUgJyVzJyBmb3Igb3B0aW9uICVzIgotbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGlsIHZhbG9yZSAnJXMnIHBlciBsJ29wemlvbmUgJXMiCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODQKK21zZ2lkICJ3cml0ZSB0aGUgcGFjayBpbmRleCBmaWxlIGluIHRoZSBzcGVjaWZpZWQgaWR4IGZvcm1hdCB2ZXJzaW9uIgorbXNnc3RyICJzY3JpdmkgaWwgZmlsZSBpbmRpY2UgcGFjayB1c2FuZG8gbGEgdmVyc2lvbmUgZm9ybWF0byBpZHggc3BlY2lmaWNhdGEiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjQ1Ci1tc2dpZCAidGFnIHNob3J0aGFuZCB3aXRob3V0IDx0YWc+IgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzg3Cittc2dpZCAibWF4aW11bSBzaXplIG9mIGVhY2ggb3V0cHV0IHBhY2sgZmlsZSIKK21zZ3N0ciAiZGltZW5zaW9uZSBtYXNzaW1hIGRpIG9nbmkgZmlsZSBwYWNrIGluIG91dHB1dCIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzg5Cittc2dpZCAiaWdub3JlIGJvcnJvd2VkIG9iamVjdHMgZnJvbSBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlIgorbXNnc3RyICJpZ25vcmEgZ2xpIG9nZ2V0dGkgcHJlc2kgaW4gcHJlc3RpdG8gZGFsbG8gc3RvcmUgb2dnZXR0aSBhbHRlcm5hdGl2byIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzkxCittc2dpZCAiaWdub3JlIHBhY2tlZCBvYmplY3RzIgorbXNnc3RyICJpZ25vcmEgZ2xpIG9nZ2V0dGkgc290dG9wb3N0aSBhIHBhY2siCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5MworbXNnaWQgImxpbWl0IHBhY2sgd2luZG93IGJ5IG9iamVjdHMiCittc2dzdHIgImxpbWl0YSBsYSBmaW5lc3RyYSBkaSBwYWNrIGFsIG51bWVybyBkaSBvZ2dldHRpIHNwZWNpZmljYXRvIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTUKK21zZ2lkICJsaW1pdCBwYWNrIHdpbmRvdyBieSBtZW1vcnkgaW4gYWRkaXRpb24gdG8gb2JqZWN0IGxpbWl0IgogbXNnc3RyICIiCisibGltaXRhIGxhIGZpbmVzdHJhIGRpIHBhY2sgYWxsYSBtZW1vcmlhIHNwZWNpZmljYXRhIGluIGFnZ2l1bnRhIGFsIGxpbWl0ZSAiCisic3VnbGkgb2dnZXR0aSIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NworbXNnaWQgIm1heGltdW0gbGVuZ3RoIG9mIGRlbHRhIGNoYWluIGFsbG93ZWQgaW4gdGhlIHJlc3VsdGluZyBwYWNrIgorbXNnc3RyICJsdW5naGV6emEgbWFzc2ltYSBkZWxsYSBjYXRlbmEgZGkgZGVsdGEgY29uc2VudGl0YSBuZWwgcGFjayByaXN1bHRhbnRlIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTkKK21zZ2lkICJyZXVzZSBleGlzdGluZyBkZWx0YXMiCittc2dzdHIgInJpdXNhIGkgZGVsdGEgZXNpc3RlbnRpIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDEKK21zZ2lkICJyZXVzZSBleGlzdGluZyBvYmplY3RzIgorbXNnc3RyICJyaXVzYSBnbGkgb2dnZXR0aSBlc2lzdGVudGkiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMworbXNnaWQgInVzZSBPRlNfREVMVEEgb2JqZWN0cyIKK21zZ3N0ciAidXNhIG9nZ2V0dGkgT0ZTX0RFTFRBIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDUKK21zZ2lkICJ1c2UgdGhyZWFkcyB3aGVuIHNlYXJjaGluZyBmb3IgYmVzdCBkZWx0YSBtYXRjaGVzIgorbXNnc3RyICIiCisidXNhIHBpw7kgdGhyZWFkIGR1cmFudGUgbGEgcmljZXJjYSBkZWxsZSBtaWdsaW9yaSBjb3JyaXNwb25kZW56ZSBwZXIgaSBkZWx0YSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA3Cittc2dpZCAiZG8gbm90IGNyZWF0ZSBhbiBlbXB0eSBwYWNrIG91dHB1dCIKK21zZ3N0ciAibm9uIGNyZWFyZSB1biBvdXRwdXQgcGFjayB2dW90byIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA5Cittc2dpZCAicmVhZCByZXZpc2lvbiBhcmd1bWVudHMgZnJvbSBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAibGVnZ2kgZ2xpIGFyZ29tZW50aSByZXZpc2lvbmUgZGFsbG8gc3RhbmRhcmQgaW5wdXQiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxMQorbXNnaWQgImxpbWl0IHRoZSBvYmplY3RzIHRvIHRob3NlIHRoYXQgYXJlIG5vdCB5ZXQgcGFja2VkIgorbXNnc3RyICJsaW1pdGEgZ2xpIG9nZ2V0dGkgYSBxdWVsbGkgbm9uIGFuY29yYSBzb3R0b3Bvc3RpIGEgcGFjayIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDE0Cittc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIGFueSByZWZlcmVuY2UiCittc2dzdHIgImluY2x1ZGkgZ2xpIG9nZ2V0dGkgcmFnZ2l1bmdpYmlsaSBkYSBxdWFsdW5xdWUgcmlmZXJpbWVudG8iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNworbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWZlcnJlZCBieSByZWZsb2cgZW50cmllcyIKK21zZ3N0ciAiaW5jbHVkaSBnbGkgb2dnZXR0aSByZWZlcmVuemlhdGkgZGEgdm9jaSBkZWwgbG9nIHJpZmVyaW1lbnRpIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjAKK21zZ2lkICJpbmNsdWRlIG9iamVjdHMgcmVmZXJyZWQgdG8gYnkgdGhlIGluZGV4IgorbXNnc3RyICJpbmNsdWRpIGdsaSBvZ2dldHRpIHJlZmVyZW56aWF0aSBkYWxsJ2luZGljZSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDIzCittc2dpZCAib3V0cHV0IHBhY2sgdG8gc3Rkb3V0IgorbXNnc3RyICJpbnZpYSBpbCBwYWNrIGluIG91dHB1dCBzdWxsbyBzdGFuZGFyZCBvdXRwdXQiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyNQorbXNnaWQgImluY2x1ZGUgdGFnIG9iamVjdHMgdGhhdCByZWZlciB0byBvYmplY3RzIHRvIGJlIHBhY2tlZCIKK21zZ3N0ciAiIgorImluY2x1ZGkgZ2xpIG9nZ2V0dGkgdGFnIGNoZSBmYW5ubyByaWZlcmltZW50byBhZ2xpIG9nZ2V0dGkgZGEgc290dG9wb3JyZSBhICIKKyJwYWNrIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjcKK21zZ2lkICJrZWVwIHVucmVhY2hhYmxlIG9iamVjdHMiCittc2dzdHIgIm1hbnRpZW5pIGdsaSBvZ2dldHRpIG5vbiByYWdnaXVuZ2liaWxpIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjkKK21zZ2lkICJwYWNrIGxvb3NlIHVucmVhY2hhYmxlIG9iamVjdHMiCittc2dzdHIgImVzZWd1aSBpbCBwYWNrIGRlZ2xpIG9nZ2V0dGkgbm9uIHJhZ2dpdW5naWJpbGkgc2Npb2x0aSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDMxCittc2dpZCAidW5wYWNrIHVucmVhY2hhYmxlIG9iamVjdHMgbmV3ZXIgdGhhbiA8dGltZT4iCittc2dzdHIgImRlY29tcHJpbWkgZ2xpIG9nZ2V0dGkgbm9uIHJhZ2dpdW5naWJpbGkgcGnDuSByZWNlbnRpIGRpIDx0ZW1wbz4iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQzNAorbXNnaWQgInVzZSB0aGUgc3BhcnNlIHJlYWNoYWJpbGl0eSBhbGdvcml0aG0iCittc2dzdHIgInVzYSBsJ2FsZ29yaXRtbyBkaSByYWdnaXVuZ2liaWxpdMOgIHNwYXJzZSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDM2Cittc2dpZCAiY3JlYXRlIHRoaW4gcGFja3MiCittc2dzdHIgImNyZWEgcGFjayB0aGluIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzgKK21zZ2lkICJjcmVhdGUgcGFja3Mgc3VpdGFibGUgZm9yIHNoYWxsb3cgZmV0Y2hlcyIKK21zZ3N0ciAiY3JlYSBwYWNrIGFkYXR0aSBwZXIgZmV0Y2ggc2hhbGxvdyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQwCittc2dpZCAiaWdub3JlIHBhY2tzIHRoYXQgaGF2ZSBjb21wYW5pb24gLmtlZXAgZmlsZSIKK21zZ3N0ciAiaWdub3JhIGkgcGFjayBjaGUgaGFubm8gdW4gZmlsZSAua2VlcCBjaGUgbGkgYWNjb21wYWduYSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQyCittc2dpZCAiaWdub3JlIHRoaXMgcGFjayIKK21zZ3N0ciAiaWdub3JhIHF1ZXN0byBwYWNrIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDQKK21zZ2lkICJwYWNrIGNvbXByZXNzaW9uIGxldmVsIgorbXNnc3RyICJsaXZlbGxvIGNvbXByZXNzaW9uZSBwYWNrIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDYKK21zZ2lkICJkbyBub3QgaGlkZSBjb21taXRzIGJ5IGdyYWZ0cyIKK21zZ3N0ciAibm9uIG5hc2NvbmRlcmUgaSBjb21taXQgaW5uZXN0YXRpIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDgKK21zZ2lkICJ1c2UgYSBiaXRtYXAgaW5kZXggaWYgYXZhaWxhYmxlIHRvIHNwZWVkIHVwIGNvdW50aW5nIG9iamVjdHMiCittc2dzdHIgIiIKKyJ1c2EgdW4gaW5kaWNlIGJpdG1hcCBzZSBkaXNwb25pYmlsZSBwZXIgdmVsb2NpenphcmUgaWwgY29udGVnZ2lvIGRlZ2xpICIKKyJvZ2dldHRpIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTAKK21zZ2lkICJ3cml0ZSBhIGJpdG1hcCBpbmRleCB0b2dldGhlciB3aXRoIHRoZSBwYWNrIGluZGV4IgorbXNnc3RyICJzY3JpdmkgdW4gaW5kaWNlIGJpdG1hcCBpbnNpZW1lIGFsbCdpbmRpY2UgcGFjayIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU0Cittc2dpZCAid3JpdGUgYSBiaXRtYXAgaW5kZXggaWYgcG9zc2libGUiCittc2dzdHIgInNjcml2aSB1biBpbmRpY2UgYml0bWFwIHNlIHBvc3NpYmlsZSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU4Cittc2dpZCAiaGFuZGxpbmcgZm9yIG1pc3Npbmcgb2JqZWN0cyIKK21zZ3N0ciAiYXppb25lIGRhIGVzZWd1aXJlIHN1Z2xpIG9nZ2V0dGkgbWFuY2FudGkiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ2MQorbXNnaWQgImRvIG5vdCBwYWNrIG9iamVjdHMgaW4gcHJvbWlzb3IgcGFja2ZpbGVzIgorbXNnc3RyICJub24gZXNlZ3VpcmUgaWwgcGFjayBkZWdsaSBvZ2dldHRpIG5laSBmaWxlIHBhY2sgcHJvbWV0dGVudGkiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ2MworbXNnaWQgInJlc3BlY3QgaXNsYW5kcyBkdXJpbmcgZGVsdGEgY29tcHJlc3Npb24iCittc2dzdHIgInJpc3BldHRhIGxlIGlzb2xlIGR1cmFudGUgbGEgY29tcHJlc3Npb25lIGRlbHRhIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVsdGEgY2hhaW4gZGVwdGggJWQgaXMgdG9vIGRlZXAsIGZvcmNpbmcgJWQiCittc2dzdHIgImxhIHByb2ZvbmRpdMOgIGRlbGxhIGNhdGVuYSBkZWkgZGVsdGEgKCVkKSDDqCB0cm9wcG8gZWxldmF0YSwgZm9yem8gJWQiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ5NworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrLmRlbHRhQ2FjaGVMaW1pdCBpcyB0b28gaGlnaCwgZm9yY2luZyAlZCIKK21zZ3N0ciAiaWwgdmFsb3JlIHBhY2suZGVsdGFDYWNoZUxpbWl0IMOoIHRyb3BwbyBlbGV2YXRvLCBmb3J6byAlZCIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTUxCittc2dpZCAiLS1tYXgtcGFjay1zaXplIGNhbm5vdCBiZSB1c2VkIHRvIGJ1aWxkIGEgcGFjayBmb3IgdHJhbnNmZXIiCittc2dzdHIgIiIKKyItLW1heC1wYWNrLXNpemUgbm9uIHB1w7IgZXNzZXJlIHVzYXRvIHBlciBnZW5lcmFyZSB1biBwYWNrIGRhIHRyYXNmZXJpcmUiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1MworbXNnaWQgIm1pbmltdW0gcGFjayBzaXplIGxpbWl0IGlzIDEgTWlCIgorbXNnc3RyICJpbCBsaW1pdGUgbWluaW1vIGRlbGxlIGRpbWVuc2lvbmkgZGVpIHBhY2sgw6ggMSBNaUIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1OAorbXNnaWQgIi0tdGhpbiBjYW5ub3QgYmUgdXNlZCB0byBidWlsZCBhbiBpbmRleGFibGUgcGFjayIKK21zZ3N0ciAiLS10aGluIG5vbiBwdcOyIGVzc2VyZSB1c2F0byBwZXIgZ2VuZXJhcmUgdW4gcGFjayBpbmRpY2l6emFiaWxlIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NjEKK21zZ2lkICItLWtlZXAtdW5yZWFjaGFibGUgYW5kIC0tdW5wYWNrLXVucmVhY2hhYmxlIGFyZSBpbmNvbXBhdGlibGUiCittc2dzdHIgIi0ta2VlcC11bnJlYWNoYWJsZSBlIC0tdW5wYWNrLXVucmVhY2hhYmxlIG5vbiBzb25vIGNvbXBhdGliaWxpIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NjcKK21zZ2lkICJjYW5ub3QgdXNlIC0tZmlsdGVyIHdpdGhvdXQgLS1zdGRvdXQiCittc2dzdHIgImltcG9zc2liaWxlIHVzYXJlIC0tZmlsdGVyIHNlbnphIC0tc3Rkb3V0IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM2MjcKK21zZ2lkICJFbnVtZXJhdGluZyBvYmplY3RzIgorbXNnc3RyICJFbnVtZXJhemlvbmUgZGVnbGkgb2dnZXR0aSBpbiBjb3JzbyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUb3RhbCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHJldXNlZCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHBhY2stIgorInJldXNlZCAlPFBSSXUzMj4iCittc2dzdHIgIiIKKyIlPFBSSXUzMj4gb2dnZXR0aSB0b3RhbGkgKCU8UFJJdTMyPiBkZWx0YSksICU8UFJJdTMyPiByaXV0aWxpenphdGkgIgorIiglPFBSSXUzMj4gZGVsdGEpLCAlPFBSSXUzMj4gcml1dGlsaXp6YXRpIG5lbCBmaWxlIHBhY2siCisKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6OAorbXNnaWQgImdpdCBwYWNrLXJlZnMgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCBwYWNrLXJlZnMgWzxvcHppb25pPl0iCisKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKK21zZ2lkICJwYWNrIGV2ZXJ5dGhpbmciCittc2dzdHIgImVzZWd1aSBpbCBwYWNrIGRpIHR1dHRvIgorCisjOiBidWlsdGluL3BhY2stcmVmcy5jOjE3Cittc2dpZCAicHJ1bmUgbG9vc2UgcmVmcyAoZGVmYXVsdCkiCittc2dzdHIgImVsaW1pbmEgaSByaWZlcmltZW50aSBzY2lvbHRpIChpbXBvc3RhemlvbmUgcHJlZGVmaW5pdGEpIgorCisjOiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjkKK21zZ2lkICJnaXQgcHJ1bmUtcGFja2VkIFstbiB8IC0tZHJ5LXJ1bl0gWy1xIHwgLS1xdWlldF0iCittc2dzdHIgImdpdCBwcnVuZS1wYWNrZWQgWy1uIHwgLS1kcnktcnVuXSBbLXEgfCAtLXF1aWV0XSIKKworIzogYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo0MgorbXNnaWQgIlJlbW92aW5nIGR1cGxpY2F0ZSBvYmplY3RzIgorbXNnc3RyICJSaW1vemlvbmUgb2dnZXR0aSBkdXBsaWNhdGkgaW4gY29yc28iCisKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMgorbXNnaWQgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGltZT5dIFstLV0gWzxoZWFkPi4uLl0iCittc2dzdHIgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGVtcG8+XSBbLS1dIFs8aGVhZD4uLi5dIgorCisjOiBidWlsdGluL3BydW5lLmM6MTMxCittc2dpZCAicmVwb3J0IHBydW5lZCBvYmplY3RzIgorbXNnc3RyICJzZWduYWxhIGdsaSBvZ2dldHRpIHJpcHVsaXRpIgorCisjOiBidWlsdGluL3BydW5lLmM6MTM0Cittc2dpZCAiZXhwaXJlIG9iamVjdHMgb2xkZXIgdGhhbiA8dGltZT4iCittc2dzdHIgImZhaSBzY2FkZXJlIG9nZ2V0dGkgcGnDuSB2ZWNjaGkgZGkgPHRlbXBvPiIKKworIzogYnVpbHRpbi9wcnVuZS5jOjEzNgorbXNnaWQgImxpbWl0IHRyYXZlcnNhbCB0byBvYmplY3RzIG91dHNpZGUgcHJvbWlzb3IgcGFja2ZpbGVzIgorbXNnc3RyICJsaW1pdGEgbGEgdmlzaXRhIGFnbGkgb2dnZXR0aSBhbCBkaSBmdW9yaSBkZWkgZmlsZSBwYWNrIHByb21ldHRlbnRpIgorCisjOiBidWlsdGluL3BydW5lLmM6MTUwCittc2dpZCAiY2Fubm90IHBydW5lIGluIGEgcHJlY2lvdXMtb2JqZWN0cyByZXBvIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgbCdlbGltaW5hemlvbmUgaW4gdW4gcmVwb3NpdG9yeSAnb2dnZXR0aSBwcmV6aW9zaSciCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ1IGJ1aWx0aW4vcHVsbC5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yICVzOiAlcyIKK21zZ3N0ciAiVmFsb3JlIG5vbiB2YWxpZG8gcGVyICVzOiAlcyIKKworIzogYnVpbHRpbi9wdWxsLmM6NjcKK21zZ2lkICJnaXQgcHVsbCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKK21zZ3N0ciAiZ2l0IHB1bGwgWzxvcHppb25pPl0gWzxyZXBvc2l0b3J5PiBbPHNwZWNpZmljYXRvcmUgcmlmZXJpbWVudG8+Li4uXV0iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyMgorbXNnaWQgImNvbnRyb2wgZm9yIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIgorbXNnc3RyICJjb250cm9sbGEgaWwgcmVjdXBlcm8gcmljb3JzaXZvIGRlaSBzb3R0b21vZHVsaSIKKworIzogYnVpbHRpbi9wdWxsLmM6MTI2Cittc2dpZCAiT3B0aW9ucyByZWxhdGVkIHRvIG1lcmdpbmciCittc2dzdHIgIk9wemlvbmkgcmVsYXRpdmUgYWwgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyOQorbXNnaWQgImluY29ycG9yYXRlIGNoYW5nZXMgYnkgcmViYXNpbmcgcmF0aGVyIHRoYW4gbWVyZ2luZyIKK21zZ3N0ciAiaW5jb3Jwb3JhIGxlIG1vZGlmaWNoZSBlc2VndWVuZG8gdW4gcmViYXNlIGFuemljaMOpIHVuIG1lcmdlIgorCisjOiBidWlsdGluL3B1bGwuYzoxNTcgYnVpbHRpbi9yZWJhc2UuYzo0NzEgYnVpbHRpbi9yZXZlcnQuYzoxMjYKK21zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQiCittc2dzdHIgImNvbnNlbnRpIGZhc3QgZm9yd2FyZCIKKworIzogYnVpbHRpbi9wdWxsLmM6MTY2Cittc2dpZCAiYXV0b21hdGljYWxseSBzdGFzaC9zdGFzaCBwb3AgYmVmb3JlIGFuZCBhZnRlciByZWJhc2UiCittc2dzdHIgImVzZWd1aSBzdGFzaC9zdGFzaCBwb3AgYXV0b21hdGljYW1lbnRlIHByaW1hIGUgZG9wbyBpbCByZWJhc2UiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjE4MgorbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBmZXRjaGluZyIKK21zZ3N0ciAiT3B6aW9uaSByZWxhdGl2ZSBhbCBmZXRjaCIKKworIzogYnVpbHRpbi9wdWxsLmM6MTkyCittc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGxvY2FsIGJyYW5jaCIKK21zZ3N0ciAiZm9yemEgbGEgc292cmFzY3JpdHR1cmEgZGVsIGJyYW5jaCBsb2NhbGUiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjIwMAorbXNnaWQgIm51bWJlciBvZiBzdWJtb2R1bGVzIHB1bGxlZCBpbiBwYXJhbGxlbCIKK21zZ3N0ciAibnVtZXJvIGRpIHNvdHRvbW9kdWxpIHJlY3VwZXJhdGkgaW4gcGFyYWxsZWxvIgorCisjOiBidWlsdGluL3B1bGwuYzozMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgcHVsbC5mZjogJXMiCittc2dzdHIgIlZhbG9yZSBub24gdmFsaWRvIHBlciBwdWxsLmZmOiAlcyIKKworIzogYnVpbHRpbi9wdWxsLmM6NDI2Cittc2dpZCAiIgorIlRoZXJlIGlzIG5vIGNhbmRpZGF0ZSBmb3IgcmViYXNpbmcgYWdhaW5zdCBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0ICIKKyJmZXRjaGVkLiIKK21zZ3N0ciAiIgorIk5vbiBjaSBzb25vIGNhbmRpZGF0aSBpbiBiYXNlIGFpIHF1YWxpIGVzZWd1aXJlIGlsIHJlYmFzZSBmcmEgaSByaWZlcmltZW50aSAiCisiYXBwZW5hIHJlY3VwZXJhdGkuIgorCisjOiBidWlsdGluL3B1bGwuYzo0MjgKK21zZ2lkICIiCisiVGhlcmUgYXJlIG5vIGNhbmRpZGF0ZXMgZm9yIG1lcmdpbmcgYW1vbmcgdGhlIHJlZnMgdGhhdCB5b3UganVzdCBmZXRjaGVkLiIKK21zZ3N0ciAiIgorIk5vbiBjaSBzb25vIGNhbmRpZGF0aSBpbiBiYXNlIGFpIHF1YWxpIGVzZWd1aXJlIGlsIG1lcmdlIGZyYSBpIHJpZmVyaW1lbnRpICIKKyJhcHBlbmEgcmVjdXBlcmF0aS4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQyOQorbXNnaWQgIiIKKyJHZW5lcmFsbHkgdGhpcyBtZWFucyB0aGF0IHlvdSBwcm92aWRlZCBhIHdpbGRjYXJkIHJlZnNwZWMgd2hpY2ggaGFkIG5vXG4iCisibWF0Y2hlcyBvbiB0aGUgcmVtb3RlIGVuZC4iCittc2dzdHIgIiIKKyJJbiBnZW5lcmFsZSwgcXVlc3RvIHNpZ25pZmljYSBjaGUgaGFpIGZvcm5pdG8gdW5vIHNwZWNpZmljYXRvcmVcbiIKKyJyaWZlcmltZW50byBjaGUgbm9uIGF2ZXZhIGNvcnJpc3BvbmRlbnplIG5lbCByZW1vdG8uIgorCisjOiBidWlsdGluL3B1bGwuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBhc2tlZCB0byBwdWxsIGZyb20gdGhlIHJlbW90ZSAnJXMnLCBidXQgZGlkIG5vdCBzcGVjaWZ5XG4iCisiYSBicmFuY2guIEJlY2F1c2UgdGhpcyBpcyBub3QgdGhlIGRlZmF1bHQgY29uZmlndXJlZCByZW1vdGVcbiIKKyJmb3IgeW91ciBjdXJyZW50IGJyYW5jaCwgeW91IG11c3Qgc3BlY2lmeSBhIGJyYW5jaCBvbiB0aGUgY29tbWFuZCBsaW5lLiIKK21zZ3N0ciAiIgorIkhhaSBjaGllc3RvIGRpIGVzZWd1aXJlIHVuIHB1bGwgZGFsIHJlbW90byAnJXMnIG1hIG5vbiBoYWlcbiIKKyJzcGVjaWZpY2F0byB1biBicmFuY2guIERhbCBtb21lbnRvIGNoZSBxdWVzdG8gbm9uIMOoIGlsIHJlbW90b1xuIgorImNvbmZpZ3VyYXRvIGNvbWUgcHJlZGVmaW5pdG8gcGVyIGlsIGJyYW5jaCBjb3JyZW50ZSwgZGV2aVxuIgorInNwZWNpZmljYXJlIHVuIGJyYW5jaCBzdWxsYSByaWdhIGRpIGNvbWFuZG8uIgorCisjOiBidWlsdGluL3B1bGwuYzo0MzcgYnVpbHRpbi9yZWJhc2UuYzoxNDA5IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzMKK21zZ2lkICJZb3UgYXJlIG5vdCBjdXJyZW50bHkgb24gYSBicmFuY2guIgorbXNnc3RyICJBdHR1YWxtZW50ZSBub24gc2VpIHN1IHVuIGJyYW5jaC4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NTQgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3OQorbXNnaWQgIlBsZWFzZSBzcGVjaWZ5IHdoaWNoIGJyYW5jaCB5b3Ugd2FudCB0byByZWJhc2UgYWdhaW5zdC4iCittc2dzdHIgIlNwZWNpZmljYSBpbCBicmFuY2ggaW4gYmFzZSBhIGN1aSB2dW9pIGVmZmV0dHVhcmUgaWwgcmViYXNlLiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDQxIGJ1aWx0aW4vcHVsbC5jOjQ1NiBnaXQtcGFyc2UtcmVtb3RlLnNoOjgyCittc2dpZCAiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIG1lcmdlIHdpdGguIgorbXNnc3RyICJTcGVjaWZpY2EgaWwgYnJhbmNoIGluIGJhc2UgYSBjdWkgdnVvaSBlZmZldHR1YXJlIGlsIG1lcmdlLiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDQyIGJ1aWx0aW4vcHVsbC5jOjQ1NworbXNnaWQgIlNlZSBnaXQtcHVsbCgxKSBmb3IgZGV0YWlscy4iCittc2dzdHIgIlZlZGkgZ2l0LXB1bGwoMSkgcGVyIHVsdGVyaW9yaSBkZXR0YWdsaS4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0NCBidWlsdGluL3B1bGwuYzo0NTAgYnVpbHRpbi9wdWxsLmM6NDU5CisjOiBidWlsdGluL3JlYmFzZS5jOjE0MTUgZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NAorbXNnaWQgIjxyZW1vdGU+IgorbXNnc3RyICI8cmVtb3RvPiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDQ0IGJ1aWx0aW4vcHVsbC5jOjQ1OSBidWlsdGluL3B1bGwuYzo0NjQKKyM6IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjUKK21zZ2lkICI8YnJhbmNoPiIKK21zZ3N0ciAiPGJyYW5jaD4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ1MiBidWlsdGluL3JlYmFzZS5jOjE0MDcgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3NQorbXNnaWQgIlRoZXJlIGlzIG5vIHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGUgY3VycmVudCBicmFuY2guIgorbXNnc3RyICJOb24gY2kgc29ubyBpbmZvcm1hemlvbmkgZGkgdHJhY2NpYW1lbnRvIHBlciBpbCBicmFuY2ggY29ycmVudGUuIgorCisjOiBidWlsdGluL3B1bGwuYzo0NjEgZ2l0LXBhcnNlLXJlbW90ZS5zaDo5NQorbXNnaWQgIiIKKyJJZiB5b3Ugd2lzaCB0byBzZXQgdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoaXMgYnJhbmNoIHlvdSBjYW4gZG8gc28gd2l0aDoiCittc2dzdHIgIiIKKyJTZSB2dW9pIGltcG9zdGFyZSBsZSBpbmZvcm1hemlvbmkgZGkgdHJhY2NpYW1lbnRvIHBlciBxdWVzdG8gYnJhbmNoIHB1b2kgIgorImZhcmxvIGNvbjoiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBjb25maWd1cmF0aW9uIHNwZWNpZmllcyB0byBtZXJnZSB3aXRoIHRoZSByZWYgJyVzJ1xuIgorImZyb20gdGhlIHJlbW90ZSwgYnV0IG5vIHN1Y2ggcmVmIHdhcyBmZXRjaGVkLiIKK21zZ3N0ciAiIgorIkxhIHR1YSBjb25maWd1cmF6aW9uZSBzcGVjaWZpY2EgY2hlIGRldmUgZXNzZXJlIGVzZWd1aXRvXG4iCisiaWwgbWVyZ2UgY29uIGlsIHJpZmVyaW1lbnRvICclcycgZGVsIHJlbW90bywgbWEgdW4gdGFsZVxuIgorInJpZmVyaW1lbnRvIG5vbiDDqCBzdGF0byByZWN1cGVyYXRvLiIKKworIzogYnVpbHRpbi9wdWxsLmM6NTc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgY29tbWl0ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhY2NlZGVyZSBhbCBjb21taXQgJXMiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjg1NworbXNnaWQgImlnbm9yaW5nIC0tdmVyaWZ5LXNpZ25hdHVyZXMgZm9yIHJlYmFzZSIKK21zZ3N0ciAiaWdub3JvIC0tdmVyaWZ5LXNpZ25hdHVyZSBwZXIgaWwgcmViYXNlIgorCisjOiBidWlsdGluL3B1bGwuYzo5MTIKK21zZ2lkICItLVtuby1dYXV0b3N0YXNoIG9wdGlvbiBpcyBvbmx5IHZhbGlkIHdpdGggLS1yZWJhc2UuIgorbXNnc3RyICJsJ29wemlvbmUgLS1bbm8tXWF1dG9zdGFzaCBvcHRpb24gw6ggdmFsaWRhIHNvbG8gY29uIC0tcmViYXNlLiIKKworIzogYnVpbHRpbi9wdWxsLmM6OTIwCittc2dpZCAiVXBkYXRpbmcgYW4gdW5ib3JuIGJyYW5jaCB3aXRoIGNoYW5nZXMgYWRkZWQgdG8gdGhlIGluZGV4LiIKK21zZ3N0ciAiQWdnaW9ybm8gdW4gYnJhbmNoIG5vbiBuYXRvIGNvbiBsZSBtb2RpZmljaGUgYWdnaXVudGUgYWxsJ2luZGljZS4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjkyNAorbXNnaWQgInB1bGwgd2l0aCByZWJhc2UiCittc2dzdHIgInB1bGwgY29uIHJlYmFzZSIKKworIzogYnVpbHRpbi9wdWxsLmM6OTI1Cittc2dpZCAicGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKK21zZ3N0ciAiZXNlZ3VpbmUgaWwgY29tbWl0IG8gbG8gc3Rhc2guIgorCisjOiBidWlsdGluL3B1bGwuYzo5NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZldGNoIHVwZGF0ZWQgdGhlIGN1cnJlbnQgYnJhbmNoIGhlYWQuXG4iCisiZmFzdC1mb3J3YXJkaW5nIHlvdXIgd29ya2luZyB0cmVlIGZyb21cbiIKKyJjb21taXQgJXMuIgorbXNnc3RyICIiCisiaWwgZmV0Y2ggaGEgYWdnaW9ybmF0byBsJ2hlYWQgZGVsXG4iCisiYnJhbmNoIGNvcnJlbnRlLlxuIgorIkVzZWd1byBpbCBmYXN0IGZvcndhcmQgZGVsbCdhbGJlcm9cbiIKKyJkaSBsYXZvcm8gZGFsIGNvbW1pdCAlcy4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjk1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ2Fubm90IGZhc3QtZm9yd2FyZCB5b3VyIHdvcmtpbmcgdHJlZS5cbiIKKyJBZnRlciBtYWtpbmcgc3VyZSB0aGF0IHlvdSBzYXZlZCBhbnl0aGluZyBwcmVjaW91cyBmcm9tXG4iCisiJCBnaXQgZGlmZiAlc1xuIgorIm91dHB1dCwgcnVuXG4iCisiJCBnaXQgcmVzZXQgLS1oYXJkXG4iCisidG8gcmVjb3Zlci4iCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBmYXN0IGZvcndhcmQgZGVsbCdhbGJlcm9cbiIKKyJkaSBsYXZvcm8uXG4iCisiRG9wbyBlc3NlcnRpIGFzc2ljdXJhdG8gZGkgYXZlciBzYWx2YXRvIHR1dHRvIGNpw7JcbiIKKyJjaGUgw6ggaW1wb3J0YW50ZSBkYWxsJ291dHB1dCBkaVxuIgorIiQgZ2l0IGRpZmYgJXNcbiIKKyJlc2VndWlcbiIKKyIkIGdpdCByZXNldCAtLWhhcmRcbiIKKyJwZXIgZXNlZ3VpcmUgaWwgcmlwcmlzdGluby4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjk3MQorbXNnaWQgIkNhbm5vdCBtZXJnZSBtdWx0aXBsZSBicmFuY2hlcyBpbnRvIGVtcHR5IGhlYWQuIgorbXNnc3RyICJJbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBtZXJnZSBkaSBwacO5IGJyYW5jaCBpbiB1biBoZWFkIHZ1b3RvLiIKKworIzogYnVpbHRpbi9wdWxsLmM6OTc1Cittc2dpZCAiQ2Fubm90IHJlYmFzZSBvbnRvIG11bHRpcGxlIGJyYW5jaGVzLiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgcmViYXNlIHN1IHBpw7kgYnJhbmNoLiIKKworIzogYnVpbHRpbi9wdWxsLmM6OTgyCittc2dpZCAiY2Fubm90IHJlYmFzZSB3aXRoIGxvY2FsbHkgcmVjb3JkZWQgc3VibW9kdWxlIG1vZGlmaWNhdGlvbnMiCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBlc2VndWlyZSBpbCByZWJhc2Ugc2UgY2kgc29ubyBkZWxsZSBtb2RpZmljaGUgcmVnaXN0cmF0ZSAiCisibG9jYWxtZW50ZSBhaSBzb3R0b21vZHVsaSIKKworIzogYnVpbHRpbi9wdXNoLmM6MTkKK21zZ2lkICJnaXQgcHVzaCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKK21zZ3N0ciAiZ2l0IHB1c2ggWzxvcHppb25pPl0gWzxyZXBvc2l0b3J5PiBbPHNwZWNpZmljYXRvcmUgcmlmZXJpbWVudG8+Li4uXV0iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjExMgorbXNnaWQgInRhZyBzaG9ydGhhbmQgd2l0aG91dCA8dGFnPiIKK21zZ3N0ciAiZXNlZ3VpIGlsIHRhZyBkZWxsYSBmb3JtYSBicmV2ZSBzZW56YSA8dGFnPiIKKworIzogYnVpbHRpbi9wdXNoLmM6MTIyCiBtc2dpZCAiLS1kZWxldGUgb25seSBhY2NlcHRzIHBsYWluIHRhcmdldCByZWYgbmFtZXMiCiBtc2dzdHIgIi0tZGVsZXRlIGFjY2V0dGEgc29sbyBub21pIGRlaSByZWYgZGkgZGVzdGluYXppb25lIGluIGNoaWFybyIKIAotIzogYnVpbHRpbi9wdXNoLmM6OTkKKyM6IGJ1aWx0aW4vcHVzaC5jOjE2OAogbXNnaWQgIiIKICJcbiIKICJUbyBjaG9vc2UgZWl0aGVyIG9wdGlvbiBwZXJtYW5lbnRseSwgc2VlIHB1c2guZGVmYXVsdCBpbiAnZ2l0IGhlbHAgY29uZmlnJy4iCiBtc2dzdHIgIiIKKyJcbiIKKyJQZXIgc2NlZ2xpZXJlIHBlcm1hbmVudGVtZW50ZSB1bmEgZGVsbGUgZHVlIG9wemlvbmksIHZlZGkgcHVzaC5kZWZhdWx0IGluICIKKyInZ2l0IGhlbHAgY29uZmlnJy4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjEwMgorIzogYnVpbHRpbi9wdXNoLmM6MTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgdXBzdHJlYW0gYnJhbmNoIG9mIHlvdXIgY3VycmVudCBicmFuY2ggZG9lcyBub3QgbWF0Y2hcbiIKQEAgLTM4MjIsMTEgKzE3OTg4LDIxIEBACiAiXG4iCiAiVG8gcHVzaCB0byB0aGUgYnJhbmNoIG9mIHRoZSBzYW1lIG5hbWUgb24gdGhlIHJlbW90ZSwgdXNlXG4iCiAiXG4iCi0iICAgIGdpdCBwdXNoICVzICVzXG4iCisiICAgIGdpdCBwdXNoICVzIEhFQURcbiIKICIlcyIKIG1zZ3N0ciAiIgorIklsIGJyYW5jaCB1cHN0cmVhbSBkZWwgYnJhbmNoIGF0dHVhbGUgbm9uIGNvcnJpc3BvbmRlIGFsXG4iCisibm9tZSBkZWwgYnJhbmNoIGF0dHVhbGUuIFBlciBlc2VndWlyZSBpbCBwdXNoIGFsIGJyYW5jaCB1cHN0cmVhbVxuIgorImRlbCByZW1vdG8sIHVzYVxuIgorIlxuIgorIiAgICBnaXQgcHVzaCAlcyBIRUFEOiVzXG4iCisiXG4iCisiUGVyIGVzZWd1aXJlIGlsIHB1c2ggYWwgYnJhbmNoIGNvbiBsbyBzdGVzc28gbm9tZSBkZWwgcmVtb3RvLCB1c2FcbiIKKyJcbiIKKyIgICAgZ2l0IHB1c2ggJXMgSEVBRFxuIgorIiVzIgogCi0jOiBidWlsdGluL3B1c2guYzoxMjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLlxuIgpAQCAtMzgzNSw4ICsxODAxMSwxMyBAQAogIlxuIgogIiAgICBnaXQgcHVzaCAlcyBIRUFEOjxuYW1lLW9mLXJlbW90ZS1icmFuY2g+XG4iCiBtc2dzdHIgIiIKKyJBdHR1YWxtZW50ZSBub24gc2VpIHN1IHVuIGJyYW5jaC5cbiIKKyJQZXIgZXNlZ3VpcmUgb3JhIGlsIHB1c2ggZGVsbGEgY3Jvbm9sb2dpYSBjaGUgaGEgY29uZG90dG9cbiIKKyJhbGxvIHN0YXRvIGNvcnJlbnRlIChIRUFEIHNjb2xsZWdhdG8pLCB1c2FcbiIKKyJcbiIKKyIgICAgZ2l0IHB1c2ggJXMgSEVBRDo8bm9tZSBkZWwgYnJhbmNoIHJlbW90bz5cbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTI4CisjOiBidWlsdGluL3B1c2guYzoyMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBjdXJyZW50IGJyYW5jaCAlcyBoYXMgbm8gdXBzdHJlYW0gYnJhbmNoLlxuIgpAQCAtMzg0NSw2OSArMTgwMjYsMTkwIEBACiAiICAgIGdpdCBwdXNoIC0tc2V0LXVwc3RyZWFtICVzICVzXG4iCiBtc2dzdHIgIiIKICJJbCBicmFuY2ggY29ycmVudGUgJXMgbm9uIGhhIGFsY3VuIGJyYW5jaCB1cHN0cmVhbS5cbiIKLSJQZXIgZXNlZ3VpcmUgaWwgcHVzaCBkZWwgYnJhbmNoIGNvcnJlbnRlIGVkIGltcG9zdGFyZSByZW1vdGUgY29tZSB1cHN0cmVhbSwgdXNhXG4iCisiUGVyIGVzZWd1aXJlIGlsIHB1c2ggZGVsIGJyYW5jaCBjb3JyZW50ZSBlZCBpbXBvc3RhcmUgaWwgcmVtb3RvIGNvbWUgIgorInVwc3RyZWFtLCB1c2FcbiIKICJcbiIKICIgICAgZ2l0IHB1c2ggLS1zZXQtdXBzdHJlYW0gJXMgJXNcbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTM2CisjOiBidWlsdGluL3B1c2guYzoyMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIGN1cnJlbnQgYnJhbmNoICVzIGhhcyBtdWx0aXBsZSB1cHN0cmVhbSBicmFuY2hlcywgcmVmdXNpbmcgdG8gcHVzaC4iCi1tc2dzdHIgIklsIGJyYW5jaCBjb3JyZW50ZSAlcyBoYSBicmFuY2ggbXVsdGlwbGkgaW4gdXBzdHJlYW07IHB1c2ggbm9uIGVzZWd1aXRvLiIKK21zZ3N0ciAiIgorIklsIGJyYW5jaCBjb3JyZW50ZSAlcyBoYSBwacO5IGJyYW5jaCB1cHN0cmVhbSwgbWkgcmlmaXV0byBkaSBlc2VndWlyZSBpbCBwdXNoLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTM5CisjOiBidWlsdGluL3B1c2guYzoyMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBhcmUgcHVzaGluZyB0byByZW1vdGUgJyVzJywgd2hpY2ggaXMgbm90IHRoZSB1cHN0cmVhbSBvZlxuIgogInlvdXIgY3VycmVudCBicmFuY2ggJyVzJywgd2l0aG91dCB0ZWxsaW5nIG1lIHdoYXQgdG8gcHVzaFxuIgogInRvIHVwZGF0ZSB3aGljaCByZW1vdGUgYnJhbmNoLiIKIG1zZ3N0ciAiIgorIlN0YWkgZXNlZ3VlbmRvIGlsIHB1c2ggYWwgcmVtb3RvICclcycsIGNoZSBub24gw6ggbCd1cHN0cmVhbSBkZWxcbiIKKyJicmFuY2ggY29ycmVudGUgJyVzJywgc2VuemEgZGlybWkgZGkgY29zYSBkZXZvIGVzZWd1aXJlIGlsIHB1c2hcbiIKKyJwZXIgYWdnaW9ybmFyZSBxdWFsZSBicmFuY2ggcmVtb3RvLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTc0CisjOiBidWlsdGluL3B1c2guYzoyNzAKIG1zZ2lkICIiCiAiWW91IGRpZG4ndCBzcGVjaWZ5IGFueSByZWZzcGVjcyB0byBwdXNoLCBhbmQgcHVzaC5kZWZhdWx0IGlzIFwibm90aGluZ1wiLiIKIG1zZ3N0ciAiIgotIk5vbiDDqCBzdGF0byBzcGVjaWZpY2F0byBhbGN1biByZWZzcGVjIHBlciBpbCBwdXNoLCBlIHB1c2guZGVmYXVsdCDDqCBcIm5vdGhpbmdcIi4iCisiTm9uIMOoIHN0YXRvIHNwZWNpZmljYXRvIGFsY3VuIHJlZnNwZWMgcGVyIGlsIHB1c2gsIGUgcHVzaC5kZWZhdWx0IMOoIFwibm90aGluZyIKKyJcIi4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE4MQorIzogYnVpbHRpbi9wdXNoLmM6Mjc3CiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSB0aXAgb2YgeW91ciBjdXJyZW50IGJyYW5jaCBpcyBiZWhpbmRcbiIKLSJpdHMgcmVtb3RlIGNvdW50ZXJwYXJ0LiBNZXJnZSB0aGUgcmVtb3RlIGNoYW5nZXMgKGUuZy4gJ2dpdCBwdWxsJylcbiIKLSJiZWZvcmUgcHVzaGluZyBhZ2Fpbi5cbiIKKyJpdHMgcmVtb3RlIGNvdW50ZXJwYXJ0LiBJbnRlZ3JhdGUgdGhlIHJlbW90ZSBjaGFuZ2VzIChlLmcuXG4iCisiJ2dpdCBwdWxsIC4uLicpIGJlZm9yZSBwdXNoaW5nIGFnYWluLlxuIgogIlNlZSB0aGUgJ05vdGUgYWJvdXQgZmFzdC1mb3J3YXJkcycgaW4gJ2dpdCBwdXNoIC0taGVscCcgZm9yIGRldGFpbHMuIgogbXNnc3RyICIiCisiR2xpIGFnZ2lvcm5hbWVudGkgc29ubyBzdGF0aSByaWZpdXRhdGkgcGVyY2jDqSBsJ3VsdGltbyBjb21taXQgZGVsIGJyYW5jaFxuIgorImF0dHVhbGUgw6ggcmltYXN0byBpbmRpZXRybyByaXNwZXR0byBhbGxhIHN1YSBjb250cm9wYXJ0ZSByZW1vdGEuXG4iCisiSW50ZWdyYSBsZSBtb2RpZmljaGUgcmVtb3RlIChhZCBlcy4gY29uICdnaXQgcHVsbCAuLi4nKSBwcmltYSBkaVxuIgorImVzZWd1aXJlIG51b3ZhbWVudGUgaWwgcHVzaC5cbiIKKyJWZWRpIGxhICdOb3RhIHN1aSBmYXN0IGZvcndhcmQnIGluICdnaXQgcHVzaCAtLWhlbHAnIHBlciB1bHRlcmlvcmlcbiIKKyJkZXR0YWdsaS4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE4NworIzogYnVpbHRpbi9wdXNoLmM6MjgzCiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIGEgcHVzaGVkIGJyYW5jaCB0aXAgaXMgYmVoaW5kIGl0cyByZW1vdGVcbiIKLSJjb3VudGVycGFydC4gSWYgeW91IGRpZCBub3QgaW50ZW5kIHRvIHB1c2ggdGhhdCBicmFuY2gsIHlvdSBtYXkgd2FudCB0b1xuIgotInNwZWNpZnkgYnJhbmNoZXMgdG8gcHVzaCBvciBzZXQgdGhlICdwdXNoLmRlZmF1bHQnIGNvbmZpZ3VyYXRpb25cbiIKLSJ2YXJpYWJsZSB0byAnY3VycmVudCcgb3IgJ3Vwc3RyZWFtJyB0byBwdXNoIG9ubHkgdGhlIGN1cnJlbnQgYnJhbmNoLiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3B1c2guYzoxOTMKLW1zZ2lkICIiCi0iVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgYSBwdXNoZWQgYnJhbmNoIHRpcCBpcyBiZWhpbmQgaXRzIHJlbW90ZVxuIgotImNvdW50ZXJwYXJ0LiBDaGVjayBvdXQgdGhpcyBicmFuY2ggYW5kIG1lcmdlIHRoZSByZW1vdGUgY2hhbmdlc1xuIgotIihlLmcuICdnaXQgcHVsbCcpIGJlZm9yZSBwdXNoaW5nIGFnYWluLlxuIgorImNvdW50ZXJwYXJ0LiBDaGVjayBvdXQgdGhpcyBicmFuY2ggYW5kIGludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXNcbiIKKyIoZS5nLiAnZ2l0IHB1bGwgLi4uJykgYmVmb3JlIHB1c2hpbmcgYWdhaW4uXG4iCiAiU2VlIHRoZSAnTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzJyBpbiAnZ2l0IHB1c2ggLS1oZWxwJyBmb3IgZGV0YWlscy4iCiBtc2dzdHIgIiIKKyJHbGkgYWdnaW9ybmFtZW50aSBzb25vIHN0YXRpIHJpZml1dGF0aSBwZXJjaMOpIGwndWx0aW1vIGNvbW1pdCBkaSB1blxuIgorImJyYW5jaCBkaSBjdWkgw6ggc3RhdG8gZXNlZ3VpdG8gaWwgcHVzaCDDqCByaW1hc3RvIGluZGlldHJvIHJpc3BldHRvXG4iCisiYWxsYSBzdWEgY29udHJvcGFydGUgcmVtb3RhLiBFc2VndWkgaWwgY2hlY2tvdXQgZGkgcXVlc3RvIGJyYW5jaCBlXG4iCisiaW50ZWdyYSBsZSBtb2RpZmljaGUgcmVtb3RlIChhZCBlcy4gY29uICdnaXQgcHVsbCAuLi4nKSBwcmltYSBkaVxuIgorImVzZWd1aXJlIG51b3ZhbWVudGUgaWwgcHVzaC5cbiIKKyJWZWRpIGxhICdOb3RhIHN1aSBmYXN0IGZvcndhcmQnIGluICdnaXQgcHVzaCAtLWhlbHAnIHBlciB1bHRlcmlvcmlcbiIKKyJkZXR0YWdsaS4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjIzMworIzogYnVpbHRpbi9wdXNoLmM6Mjg5Cittc2dpZCAiIgorIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSByZW1vdGUgY29udGFpbnMgd29yayB0aGF0IHlvdSBkb1xuIgorIm5vdCBoYXZlIGxvY2FsbHkuIFRoaXMgaXMgdXN1YWxseSBjYXVzZWQgYnkgYW5vdGhlciByZXBvc2l0b3J5IHB1c2hpbmdcbiIKKyJ0byB0aGUgc2FtZSByZWYuIFlvdSBtYXkgd2FudCB0byBmaXJzdCBpbnRlZ3JhdGUgdGhlIHJlbW90ZSBjaGFuZ2VzXG4iCisiKGUuZy4sICdnaXQgcHVsbCAuLi4nKSBiZWZvcmUgcHVzaGluZyBhZ2Fpbi5cbiIKKyJTZWUgdGhlICdOb3RlIGFib3V0IGZhc3QtZm9yd2FyZHMnIGluICdnaXQgcHVzaCAtLWhlbHAnIGZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorIkdsaSBhZ2dpb3JuYW1lbnRpIHNvbm8gc3RhdGkgcmlmaXV0YXRpIHBlcmNow6kgaWwgcmVtb3RvIGNvbnRpZW5lIGRlbGxlXG4iCisibW9kaWZpY2hlIGNoZSBub24gaGFpIGxvY2FsbWVudGUuIENpw7Igc29saXRhbWVudGUgw6ggY2F1c2F0byBkYSB1biBwdXNoXG4iCisiZGEgdW4gYWx0cm8gcmVwb3NpdG9yeSBhbGxvIHN0ZXNzbyByaWZlcmltZW50by4gUG90cmVzdGkgdm9sZXIgaW50ZWdyYXJlXG4iCisibGUgbW9kaWZpY2hlIHJlbW90ZSAoYWQgZXMuIGNvbiAnZ2l0IHB1bGwgLi4uJykgcHJpbWEgZGkgZXNlZ3VpcmVcbiIKKyJudW92YW1lbnRlIGlsIHB1c2guXG4iCisiVmVkaSBsYSAnTm90YSBzdWkgZmFzdCBmb3J3YXJkJyBpbiAnZ2l0IHB1c2ggLS1oZWxwJyBwZXIgdWx0ZXJpb3JpXG4iCisiZGV0dGFnbGkuIgorCisjOiBidWlsdGluL3B1c2guYzoyOTYKK21zZ2lkICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgdGFnIGFscmVhZHkgZXhpc3RzIGluIHRoZSByZW1vdGUuIgorbXNnc3RyICIiCisiR2xpIGFnZ2lvcm5hbWVudGkgc29ubyBzdGF0aSByaWZpdXRhdGkgcGVyY2jDqSBpbCB0YWcgZXNpc3RlIGdpw6AgbmVsIHJlbW90by4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjI5OQorbXNnaWQgIiIKKyJZb3UgY2Fubm90IHVwZGF0ZSBhIHJlbW90ZSByZWYgdGhhdCBwb2ludHMgYXQgYSBub24tY29tbWl0IG9iamVjdCxcbiIKKyJvciB1cGRhdGUgYSByZW1vdGUgcmVmIHRvIG1ha2UgaXQgcG9pbnQgYXQgYSBub24tY29tbWl0IG9iamVjdCxcbiIKKyJ3aXRob3V0IHVzaW5nIHRoZSAnLS1mb3JjZScgb3B0aW9uLlxuIgorbXNnc3RyICIiCisiTm9uIHB1b2kgYWdnaW9ybmFyZSB1biByaWZlcmltZW50byByZW1vdG8gY2hlIHB1bnRhIGEgdW4gb2dnZXR0b1xuIgorImRpdmVyc28gZGEgdW4gY29tbWl0IG8gYWdnaW9ybmFyZSB1biByaWZlcmltZW50byByZW1vdG8gcGVyIGZhcmxvXG4iCisicHVudGFyZSBhIHVuIG9nZ2V0dG8gZGl2ZXJzbyBkYSB1biBjb21taXQgc2VuemEgdXNhcmUgbCdvcHppb25lXG4iCisiJy0tZm9yY2UnLlxuIgorCisjOiBidWlsdGluL3B1c2guYzozNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHVzaGluZyB0byAlc1xuIgotbXNnc3RyICIiCittc2dzdHIgIlB1c2ggc3UgJXMgaW4gY29yc29cbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjM3CisjOiBidWlsdGluL3B1c2guYzozNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHB1c2ggc29tZSByZWZzIHRvICclcyciCi1tc2dzdHIgIiIKK21zZ3N0ciAicHVzaCBkaSBhbGN1bmkgcmlmZXJpbWVudGkgc3UgJyVzJyBub24gcml1c2NpdG8iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI2OQorIzogYnVpbHRpbi9wdXNoLmM6NTQyCittc2dpZCAicmVwb3NpdG9yeSIKK21zZ3N0ciAicmVwb3NpdG9yeSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQzIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY0Cittc2dpZCAicHVzaCBhbGwgcmVmcyIKK21zZ3N0ciAiZXNlZ3VpIGlsIHB1c2ggZGkgdHV0dGkgaSByaWZlcmltZW50aSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ0IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY2Cittc2dpZCAibWlycm9yIGFsbCByZWZzIgorbXNnc3RyICJlc2VndWkgaWwgbWlycm9yIGRpIHR1dHRpIGkgcmlmZXJpbWVudGkiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0NgorbXNnaWQgImRlbGV0ZSByZWZzIgorbXNnc3RyICJlbGltaW5hIHJpZmVyaW1lbnRpIgorCisjOiBidWlsdGluL3B1c2guYzo1NDcKK21zZ2lkICJwdXNoIHRhZ3MgKGNhbid0IGJlIHVzZWQgd2l0aCAtLWFsbCBvciAtLW1pcnJvcikiCittc2dzdHIgImVzZWd1aSBpbCBwdXNoIGRlaSB0YWcgKG5vbiBwdcOyIGVzc2VyZSB1c2F0byBjb24gLS1hbGwgbyAtLW1pcnJvcikiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1MCBidWlsdGluL3NlbmQtcGFjay5jOjE2NworbXNnaWQgImZvcmNlIHVwZGF0ZXMiCittc2dzdHIgImZvcnphIGdsaSBhZ2dpb3JuYW1lbnRpIgorCisjOiBidWlsdGluL3B1c2guYzo1NTIgYnVpbHRpbi9zZW5kLXBhY2suYzoxODEKK21zZ2lkICI8cmVmbmFtZT46PGV4cGVjdD4iCittc2dzdHIgIjxub21lIHJpZmVyaW1lbnRvPjo8dmFsb3JlIGF0dGVzbz4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1MyBidWlsdGluL3NlbmQtcGFjay5jOjE4MgorbXNnaWQgInJlcXVpcmUgb2xkIHZhbHVlIG9mIHJlZiB0byBiZSBhdCB0aGlzIHZhbHVlIgorbXNnc3RyICIiCisicmljaGllZGkgY2hlIGlsIHZlY2NoaW8gdmFsb3JlIGRlbCByaWZlcmltZW50byBjb3JyaXNwb25kYSBhIHF1ZXN0byB2YWxvcmUiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1NgorbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIHB1c2hpbmcgb2Ygc3VibW9kdWxlcyIKK21zZ3N0ciAiY29udHJvbGxhIGlsIHB1c2ggcmljb3JzaXZvIGRlaSBzb3R0b21vZHVsaSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU4IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc1Cittc2dpZCAidXNlIHRoaW4gcGFjayIKK21zZ3N0ciAidXNhIHVuIHRoaW4gcGFjayIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU5IGJ1aWx0aW4vcHVzaC5jOjU2MCBidWlsdGluL3NlbmQtcGFjay5jOjE2MQorIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNjIKK21zZ2lkICJyZWNlaXZlIHBhY2sgcHJvZ3JhbSIKK21zZ3N0ciAicHJvZ3JhbW1hIHJpY2V6aW9uZSBwYWNrIgorCisjOiBidWlsdGluL3B1c2guYzo1NjEKK21zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL3N0YXR1cyIKK21zZ3N0ciAiaW1wb3N0YSBsJ3Vwc3RyZWFtIHBlciBnaXQgcHVsbC9zdGF0dXMiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2NAorbXNnaWQgInBydW5lIGxvY2FsbHkgcmVtb3ZlZCByZWZzIgorbXNnc3RyICJlbGltaW5hIGkgcmlmZXJpbWVudGkgcmltb3NzaSBsb2NhbG1lbnRlIgorCisjOiBidWlsdGluL3B1c2guYzo1NjYKK21zZ2lkICJieXBhc3MgcHJlLXB1c2ggaG9vayIKK21zZ3N0ciAiaWdub3JhIGwnaG9vayBwcmUtcHVzaCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTY3Cittc2dpZCAicHVzaCBtaXNzaW5nIGJ1dCByZWxldmFudCB0YWdzIgorbXNnc3RyICJlc2VndWkgaWwgcHVzaCBkZWkgdGFnIG1hbmNhbnRpIG1hIHJpbGV2YW50aSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY5Cittc2dpZCAiR1BHIHNpZ24gdGhlIHB1c2giCittc2dzdHIgImZpcm1hIGlsIHB1c2ggY29uIEdQRyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc2Cittc2dpZCAicmVxdWVzdCBhdG9taWMgdHJhbnNhY3Rpb24gb24gcmVtb3RlIHNpZGUiCittc2dzdHIgInJpY2hpZWRpIGwnYXRvbWljaXTDoCBkZWxsYSB0cmFuc2F6aW9uZSBhbCByZW1vdG8iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU5MAorbXNnaWQgIi0tZGVsZXRlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWxsLCAtLW1pcnJvciBhbmQgLS10YWdzIgorbXNnc3RyICItLWRlbGV0ZSBub24gw6ggY29tcGF0aWJpbGUgY29uIC0tYWxsLCAtLW1pcnJvciBlIC0tdGFncyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTkyCittc2dpZCAiLS1kZWxldGUgZG9lc24ndCBtYWtlIHNlbnNlIHdpdGhvdXQgYW55IHJlZnMiCittc2dzdHIgIi0tZGVsZXRlIG5vbiBoYSBzZW5zbyBzZW56YSBhbGN1biByZWYiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjYxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcmVwb3NpdG9yeSAnJXMnIgogbXNnc3RyICJyZXBvc2l0b3J5ICclcycgZXJyYXRvIgogCi0jOiBidWlsdGluL3B1c2guYzoyNzAKKyM6IGJ1aWx0aW4vcHVzaC5jOjYxMwogbXNnaWQgIiIKICJObyBjb25maWd1cmVkIHB1c2ggZGVzdGluYXRpb24uXG4iCiAiRWl0aGVyIHNwZWNpZnkgdGhlIFVSTCBmcm9tIHRoZSBjb21tYW5kLWxpbmUgb3IgY29uZmlndXJlIGEgcmVtb3RlICIKQEAgLTM5MjksNDAgKzE4MjMxLDEwMzcgQEAKICJcbiIKICIgICAgZ2l0IHB1c2ggPG5vbWU+XG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI4NQorIzogYnVpbHRpbi9wdXNoLmM6NjI4CiBtc2dpZCAiLS1hbGwgYW5kIC0tdGFncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWFsbCBlIC0tdGFncyBub24gc29ubyBjb21wYXRpYmlsaSIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mjg2CisjOiBidWlsdGluL3B1c2guYzo2MzAKIG1zZ2lkICItLWFsbCBjYW4ndCBiZSBjb21iaW5lZCB3aXRoIHJlZnNwZWNzIgotbXNnc3RyICIiCittc2dzdHIgIi0tYWxsIG5vbiBwdcOyIGVzc2VyZSBjb21iaW5hdG8gY29uIGRlZ2xpIHNwZWNpZmljYXRvcmkgcmlmZXJpbWVudG8iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI5MQorIzogYnVpbHRpbi9wdXNoLmM6NjM0CiBtc2dpZCAiLS1taXJyb3IgYW5kIC0tdGFncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLW1pcnJvciBlIC0tdGFncyBub24gc29ubyBjb21wYXRpYmlsaSIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjkyCisjOiBidWlsdGluL3B1c2guYzo2MzYKIG1zZ2lkICItLW1pcnJvciBjYW4ndCBiZSBjb21iaW5lZCB3aXRoIHJlZnNwZWNzIgotbXNnc3RyICIiCittc2dzdHIgIi0tbWlycm9yIG5vbiBwdcOyIGVzc2VyZSBjb21iaW5hdG8gY29uIGRlZ2xpIHNwZWNpZmljYXRvcmkgcmlmZXJpbWVudG8iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI5NworIzogYnVpbHRpbi9wdXNoLmM6NjM5CiBtc2dpZCAiLS1hbGwgYW5kIC0tbWlycm9yIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0tYWxsIGUgLS1taXJyb3Igbm9uIHNvbm8gY29tcGF0aWJpbGkiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM4NQotbXNnaWQgIi0tZGVsZXRlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWxsLCAtLW1pcnJvciBhbmQgLS10YWdzIgotbXNnc3RyICItLWRlbGV0ZSBub24gw6ggY29tcGF0aWJpbGUgY29uIC0tYWxsLCAtLW1pcnJvciBlIC0tdGFncyIKKyM6IGJ1aWx0aW4vcHVzaC5jOjY0MworbXNnaWQgInB1c2ggb3B0aW9ucyBtdXN0IG5vdCBoYXZlIG5ldyBsaW5lIGNoYXJhY3RlcnMiCittc2dzdHIgImxlIG9wemlvbmkgcHVzaCBub24gZGV2b25vIGF2ZXJlIGNhcmF0dGVyaSBkaSBmaW5lIHJpZ2EiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM4NwotbXNnaWQgIi0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSB3aXRob3V0IGFueSByZWZzIgotbXNnc3RyICItLWRlbGV0ZSBub24gaGEgc2Vuc28gc2VuemEgYWxjdW4gcmVmIgorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6OAorbXNnaWQgImdpdCByYW5nZS1kaWZmIFs8b3B0aW9ucz5dIDxvbGQtYmFzZT4uLjxvbGQtdGlwPiA8bmV3LWJhc2U+Li48bmV3LXRpcD4iCittc2dzdHIgIiIKKyJnaXQgcmFuZ2UtZGlmZiBbPG9wemlvbmk+XSA8dmVjY2hpYSBiYXNlPi4uPHZlY2NoaW8gdWx0aW1vIGNvbW1pdD4gPG51b3ZhICIKKyJiYXNlPi4uPG51b3ZvIHVsdGltbyBjb21taXQ+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk4CisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo5Cittc2dpZCAiZ2l0IHJhbmdlLWRpZmYgWzxvcHRpb25zPl0gPG9sZC10aXA+Li4uPG5ldy10aXA+IgorbXNnc3RyICIiCisiZ2l0IHJhbmdlLWRpZmYgWzxvcHppb25pPl0gPHZlY2NoaW8gdWx0aW1vIGNvbW1pdD4uLi48bnVvdm8gdWx0aW1vIGNvbW1pdD4iCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjEwCittc2dpZCAiZ2l0IHJhbmdlLWRpZmYgWzxvcHRpb25zPl0gPGJhc2U+IDxvbGQtdGlwPiA8bmV3LXRpcD4iCittc2dzdHIgIiIKKyJnaXQgcmFuZ2UtZGlmZiBbPG9wemlvbmk+XSA8YmFzZT4gPHZlY2NoaW8gdWx0aW1vIGNvbW1pdD4gPG51b3ZvIHVsdGltbyAiCisiY29tbWl0PiIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjIKK21zZ2lkICJQZXJjZW50YWdlIGJ5IHdoaWNoIGNyZWF0aW9uIGlzIHdlaWdodGVkIgorbXNnc3RyICJQZXJjZW50dWFsZSBpbiBiYXNlIGEgY3VpIHZpZW5lIHBlc2F0YSBsYSBjcmVhemlvbmUiCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI0Cittc2dpZCAidXNlIHNpbXBsZSBkaWZmIGNvbG9ycyIKK21zZ3N0ciAidXNhIGNvbG9yaSBzZW1wbGljaSBwZXIgaWwgZGlmZiIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjYKK21zZ2lkICJub3RlcyIKK21zZ3N0ciAibm90ZSIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjYKK21zZ2lkICJwYXNzZWQgdG8gJ2dpdCBsb2cnIgorbXNnc3RyICJwYXNzYXRvIGEgJ2dpdCBsb2cnIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo1MCBidWlsdGluL3JhbmdlLWRpZmYuYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJubyAuLiBpbiByYW5nZTogJyVzJyIKK21zZ3N0ciAibmVzc3VuIC4uIG5lbGwnaW50ZXJ2YWxsbzogJyVzJyIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjQKK21zZ2lkICJzaW5nbGUgYXJnIGZvcm1hdCBtdXN0IGJlIHN5bW1ldHJpYyByYW5nZSIKK21zZ3N0ciAiaWwgZm9ybWF0byBkZWxsJ3VuaWNvIGFyZ29tZW50byBkZXYnZXNzZXJlIHVuIGludGVydmFsbG8gc2ltbWV0cmljbyIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NzkKK21zZ2lkICJuZWVkIHR3byBjb21taXQgcmFuZ2VzIgorbXNnc3RyICJkZXZvbm8gZXNzZXJlIHNwZWNpZmljYXRpIGR1ZSBpbnRlcnZhbGxpIGNvbW1pdCIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzo0MQorbXNnaWQgIiIKKyJnaXQgcmVhZC10cmVlIFsoLW0gWy0tdHJpdmlhbF0gWy0tYWdncmVzc2l2ZV0gfCAtLXJlc2V0IHwgLS1wcmVmaXg9PHByZWZpeD4pICIKKyJbLXUgWy0tZXhjbHVkZS1wZXItZGlyZWN0b3J5PTxnaXRpZ25vcmU+XSB8IC1pXV0gWy0tbm8tc3BhcnNlLWNoZWNrb3V0XSBbLS0iCisiaW5kZXgtb3V0cHV0PTxmaWxlPl0gKC0tZW1wdHkgfCA8dHJlZS1pc2gxPiBbPHRyZWUtaXNoMj4gWzx0cmVlLWlzaDM+XV0pIgorbXNnc3RyICIiCisiZ2l0IHJlYWQtdHJlZSBbKC1tIFstLXRyaXZpYWxdIFstLWFnZ3Jlc3NpdmVdIHwgLS1yZXNldCB8IC0tIgorInByZWZpeD08cHJlZmlzc28+KSBbLXUgWy0tZXhjbHVkZS1wZXItZGlyZWN0b3J5PTxnaXRpZ25vcmU+XSB8IC1pXV0gWy0tbm8tIgorInNwYXJzZS1jaGVja291dF0gWy0taW5kZXgtb3V0cHV0PTxmaWxlPl0gKC0tZW1wdHkgfCA8ZXNwcmVzc2lvbmUgYWxiZXJvIDE+ICIKKyJbPGVzcHJlc3Npb25lIGFsYmVybyAyPiBbPGVzcHJlc3Npb25lIGFsYmVybyAzPl1dKSIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjQKK21zZ2lkICJ3cml0ZSByZXN1bHRpbmcgaW5kZXggdG8gPGZpbGU+IgorbXNnc3RyICJzY3JpdmkgbCdpbmRpY2UgcmlzdWx0YW50ZSBpbiA8ZmlsZT4iCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI3Cittc2dpZCAib25seSBlbXB0eSB0aGUgaW5kZXgiCittc2dzdHIgInN2dW90YSBzb2xvIGwnaW5kaWNlIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyOQorbXNnaWQgIk1lcmdpbmciCittc2dzdHIgIk1lcmdlIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMQorbXNnaWQgInBlcmZvcm0gYSBtZXJnZSBpbiBhZGRpdGlvbiB0byBhIHJlYWQiCittc2dzdHIgImVzZWd1aSBpbCBtZXJnZSBvbHRyZSBhIHVuYSBsZXR0dXJhIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMworbXNnaWQgIjMtd2F5IG1lcmdlIGlmIG5vIGZpbGUgbGV2ZWwgbWVyZ2luZyByZXF1aXJlZCIKK21zZ3N0ciAibWVyZ2UgYSB0cmUgdmllIHNlIG5vbiBzb25vIHJpY2hpZXN0aSBtZXJnZSBhIGxpdmVsbG8gZGkgZmlsZSIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzUKK21zZ2lkICIzLXdheSBtZXJnZSBpbiBwcmVzZW5jZSBvZiBhZGRzIGFuZCByZW1vdmVzIgorbXNnc3RyICJtZXJnZSBhIHRyZSB2aWUgc2Ugc29ubyBwcmVzZW50aSBhZ2dpdW50ZSBlZCBlbGltaW5hemlvbmkiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM3Cittc2dpZCAic2FtZSBhcyAtbSwgYnV0IGRpc2NhcmQgdW5tZXJnZWQgZW50cmllcyIKK21zZ3N0ciAiY29tZSAtbSwgbWEgc2NhcnRhIGxlIHZvY2kgbm9uIHNvdHRvcG9zdGUgYSBtZXJnZSIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzgKK21zZ2lkICI8c3ViZGlyZWN0b3J5Pi8iCittc2dzdHIgIjxzb3R0b2RpcmVjdG9yeT4vIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzOQorbXNnaWQgInJlYWQgdGhlIHRyZWUgaW50byB0aGUgaW5kZXggdW5kZXIgPHN1YmRpcmVjdG9yeT4vIgorbXNnc3RyICJsZWdnaSBsJ2FsYmVybyBuZWxsJ2luZGljZSBpbiA8c290dG9kaXJlY3Rvcnk+LyIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDIKK21zZ2lkICJ1cGRhdGUgd29ya2luZyB0cmVlIHdpdGggbWVyZ2UgcmVzdWx0IgorbXNnc3RyICJhZ2dpb3JuYSBsJ2FsYmVybyBkaSBsYXZvcm8gY29uIGlsIHJpc3VsdGF0byBkZWwgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ0Cittc2dpZCAiZ2l0aWdub3JlIgorbXNnc3RyICJnaXRpZ25vcmUiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ1Cittc2dpZCAiYWxsb3cgZXhwbGljaXRseSBpZ25vcmVkIGZpbGVzIHRvIGJlIG92ZXJ3cml0dGVuIgorbXNnc3RyICJjb25zZW50aSBsYSBzb3ZyYXNjcml0dHVyYSBkZWkgZmlsZSBpZ25vcmF0aSBlc3BsaWNpdGFtZW50ZSIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDgKK21zZ2lkICJkb24ndCBjaGVjayB0aGUgd29ya2luZyB0cmVlIGFmdGVyIG1lcmdpbmciCittc2dzdHIgIm5vbiBjb250cm9sbGFyZSBsJ2FsYmVybyBkaSBsYXZvcm8gZG9wbyBpbCBtZXJnZSIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDkKK21zZ2lkICJkb24ndCB1cGRhdGUgdGhlIGluZGV4IG9yIHRoZSB3b3JrIHRyZWUiCittc2dzdHIgIm5vbiBhZ2dpb3JuYXJlIGwnaW5kaWNlIG8gbCdhbGJlcm8gZGkgbGF2b3JvIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MQorbXNnaWQgInNraXAgYXBwbHlpbmcgc3BhcnNlIGNoZWNrb3V0IGZpbHRlciIKK21zZ3N0ciAic2FsdGEgbCdhcHBsaWNhemlvbmUgZGVsIGZpbHRybyBjaGVja291dCBzcGFyc2UiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUzCittc2dpZCAiZGVidWcgdW5wYWNrLXRyZWVzIgorbXNnc3RyICJlc2VndWkgaWwgZGVidWcgZGkgdW5wYWNrLXRyZWVzIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1NworbXNnaWQgInN1cHByZXNzIGZlZWRiYWNrIG1lc3NhZ2VzIgorbXNnc3RyICJub24gdmlzdWFsaXp6YXJlIGkgbWVzc2FnZ2kgZGkgZmVlZGJhY2siCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTg4Cittc2dpZCAiWW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiCittc2dzdHIgIlByaW1hIGRldmkgcmlzb2x2ZXJlIGwnaW5kaWNlIGNvcnJlbnRlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjMyCittc2dpZCAiIgorImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT4gfCAtLWtlZXAtYmFzZV0gIgorIls8dXBzdHJlYW0+IFs8YnJhbmNoPl1dIgorbXNnc3RyICIiCisiZ2l0IHJlYmFzZSBbLWldIFtvcHppb25pXSBbLS1leGVjIDxjb21hbmRvPl0gWy0tb250byA8bnVvdmEgYmFzZT4gfCAtLWtlZXAtIgorImJhc2VdIFs8dXBzdHJlYW0+IFs8YnJhbmNoPl1dIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM0Cittc2dpZCAiIgorImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dIC0tcm9vdCBbPGJyYW5jaD5dIgorbXNnc3RyICIiCisiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjb21hbmRvPl0gWy0tb250byA8bnVvdmEgYmFzZT5dIC0tcm9vdCAiCisiWzxicmFuY2g+XSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozNgorbXNnaWQgImdpdCByZWJhc2UgLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXAgfCAtLWVkaXQtdG9kbyIKK21zZ3N0ciAiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIHwgLS1hYm9ydCB8IC0tc2tpcCB8IC0tZWRpdC10b2RvIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE3NSBidWlsdGluL3JlYmFzZS5jOjE5OSBidWlsdGluL3JlYmFzZS5jOjIyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnVzYWJsZSB0b2RvIGxpc3Q6ICclcyciCittc2dzdHIgImVsZW5jbyB0b2RvIGludXRpbGl6emFiaWxlOiAnJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIHVuICVzIHRlbXBvcmFuZW8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6Mjk4Cittc2dpZCAiY291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCittc2dzdHIgImltcG9zc2liaWxlIGNvbnRyYXNzZWduYXJlIGNvbWUgaW50ZXJhdHRpdm8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzUyCittc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIHRvZG8gbGlzdCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZ2VuZXJhcmUgbCdlbGVuY28gdG9kbyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozOTEKK21zZ2lkICJhIGJhc2UgY29tbWl0IG11c3QgYmUgcHJvdmlkZWQgd2l0aCAtLXVwc3RyZWFtIG9yIC0tb250byIKK21zZ3N0ciAiIgorImxlIG9wemlvbmkgLS11cHN0cmVhbSBvIC0tb250byByaWNoaWVkb25vIGNoZSBzaWEgZm9ybml0byB1biBjb21taXQgZGkgYmFzZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NjEKK21zZ2lkICJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHJlYmFzZSAtLWludGVyYWN0aXZlIFs8b3B6aW9uaT5dIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ3NCBidWlsdGluL3JlYmFzZS5jOjE1NTAKK21zZ2lkICIoREVQUkVDQVRFRCkga2VlcCBlbXB0eSBjb21taXRzIgorbXNnc3RyICIoREVQUkVDQVRPKSBtYW50aWVuaSBpIGNvbW1pdCB2dW90aSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NzggYnVpbHRpbi9yZXZlcnQuYzoxMjgKK21zZ2lkICJhbGxvdyBjb21taXRzIHdpdGggZW1wdHkgbWVzc2FnZXMiCittc2dzdHIgImNvbnNlbnRpIGNvbW1pdCBjb24gbWVzc2FnZ2kgdnVvdGkiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDgwCittc2dpZCAicmViYXNlIG1lcmdlIGNvbW1pdHMiCittc2dzdHIgImVzZWd1aSBpbCByZWJhc2UgZGVpIGNvbW1pdCBkaSBtZXJnZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODIKK21zZ2lkICJrZWVwIG9yaWdpbmFsIGJyYW5jaCBwb2ludHMgb2YgY291c2lucyIKK21zZ3N0ciAibWFudGllbmkgaSBwdW50aSBkaSBicmFuY2ggb3JpZ2luYWxpIGRlaSBjdWdpbmkiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg0Cittc2dpZCAibW92ZSBjb21taXRzIHRoYXQgYmVnaW4gd2l0aCBzcXVhc2ghL2ZpeHVwISIKK21zZ3N0ciAic3Bvc3RhIGkgY29tbWl0IGNoZSBpbml6aWFubyBjb24gc3F1YXNoIS9maXh1cCEiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg1Cittc2dpZCAic2lnbiBjb21taXRzIgorbXNnc3RyICJmaXJtYSBpIGNvbW1pdCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODcgYnVpbHRpbi9yZWJhc2UuYzoxNDkwCittc2dpZCAiZGlzcGxheSBhIGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKK21zZ3N0ciAidmlzdWFsaXp6YSB1biBkaWZmc3RhdCBkZWxsZSBtb2RpZmljaGUgdXBzdHJlYW0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg5Cittc2dpZCAiY29udGludWUgcmViYXNlIgorbXNnc3RyICJjb250aW51YSBpbCByZWJhc2UiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDkxCittc2dpZCAic2tpcCBjb21taXQiCittc2dzdHIgInNhbHRhIGlsIGNvbW1pdCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTIKK21zZ2lkICJlZGl0IHRoZSB0b2RvIGxpc3QiCittc2dzdHIgIm1vZGlmaWNhIGwnZWxlbmNvIHRvZG8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk0Cittc2dpZCAic2hvdyB0aGUgY3VycmVudCBwYXRjaCIKK21zZ3N0ciAidmlzdWFsaXp6YSBsYSBwYXRjaCBjb3JyZW50ZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTcKK21zZ2lkICJzaG9ydGVuIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAiYWJicmV2aWEgZ2xpIElEIGRlaSBjb21taXQgbmVsbCdlbGVuY28gdG9kbyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTkKK21zZ2lkICJleHBhbmQgY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICJlc3BhbmRpIGdsaSBJRCBkZWkgY29tbWl0IG5lbGwnZWxlbmNvIHRvZG8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAxCittc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAiY29udHJvbGxhIGwnZWxlbmNvIHRvZG8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAzCittc2dpZCAicmVhcnJhbmdlIGZpeHVwL3NxdWFzaCBsaW5lcyIKK21zZ3N0ciAicmlkaXNwb25pIGxlIHJpZ2hlIGZpeHVwL3NxdWFzaCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDUKK21zZ2lkICJpbnNlcnQgZXhlYyBjb21tYW5kcyBpbiB0b2RvIGxpc3QiCittc2dzdHIgImluc2VyaXNjaSBpIGNvbWFuZGkgZXhlYyBuZWxsJ2VsZW5jbyB0b2RvIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwNgorbXNnaWQgIm9udG8iCittc2dzdHIgInN1IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwOQorbXNnaWQgInJlc3RyaWN0LXJldmlzaW9uIgorbXNnc3RyICJyZXZpc2lvbmktbGltaXRlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwOQorbXNnaWQgInJlc3RyaWN0IHJldmlzaW9uIgorbXNnc3RyICJsaW1pdGEgbGEgcmV2aXNpb25lIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxMQorbXNnaWQgInNxdWFzaC1vbnRvIgorbXNnc3RyICJzcXVhc2gtc3UiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTEyCittc2dpZCAic3F1YXNoIG9udG8iCittc2dzdHIgImVzZWd1aSBsbyBzcXVhc2ggc3UiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTE0Cittc2dpZCAidGhlIHVwc3RyZWFtIGNvbW1pdCIKK21zZ3N0ciAiaWwgY29tbWl0IHVwc3RyZWFtIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxNgorbXNnaWQgImhlYWQtbmFtZSIKK21zZ3N0ciAibm9tZSBoZWFkIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxNgorbXNnaWQgImhlYWQgbmFtZSIKK21zZ3N0ciAibm9tZSBoZWFkIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyMQorbXNnaWQgInJlYmFzZSBzdHJhdGVneSIKK21zZ3N0ciAic3RyYXRlZ2lhIGRpIHJlYmFzZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjIKK21zZ2lkICJzdHJhdGVneS1vcHRzIgorbXNnc3RyICJvcHppb25pIHN0cmF0ZWdpYSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjMKK21zZ2lkICJzdHJhdGVneSBvcHRpb25zIgorbXNnc3RyICJvcHppb25pIHN0cmF0ZWdpYSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjQKK21zZ2lkICJzd2l0Y2gtdG8iCittc2dzdHIgInBhc3NhIGEiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI1Cittc2dpZCAidGhlIGJyYW5jaCBvciBjb21taXQgdG8gY2hlY2tvdXQiCittc2dzdHIgImlsIGJyYW5jaCBvIGlsIGNvbW1pdCBkaSBjdWkgZXNlZ3VpcmUgaWwgY2hlY2tvdXQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI2Cittc2dpZCAib250by1uYW1lIgorbXNnc3RyICJub21lIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNgorbXNnaWQgIm9udG8gbmFtZSIKK21zZ3N0ciAic3VsIG5vbWUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI3Cittc2dpZCAiY21kIgorbXNnc3RyICJjb21hbmRvIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNworbXNnaWQgInRoZSBjb21tYW5kIHRvIHJ1biIKK21zZ3N0ciAiaWwgY29tYW5kbyBkYSBlc2VndWlyZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MzAgYnVpbHRpbi9yZWJhc2UuYzoxNTg0Cittc2dpZCAiYXV0b21hdGljYWxseSByZS1zY2hlZHVsZSBhbnkgYGV4ZWNgIHRoYXQgZmFpbHMiCittc2dzdHIgInNjaGVkdWxhIG51b3ZhbWVudGUgbGUgb3BlcmF6aW9uaSBgZXhlY2Agbm9uIHJpdXNjaXRlIGF1dG9tYXRpY2FtZW50ZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1NDYKK21zZ2lkICItLVtuby1dcmViYXNlLWNvdXNpbnMgaGFzIG5vIGVmZmVjdCB3aXRob3V0IC0tcmViYXNlLW1lcmdlcyIKK21zZ3N0ciAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIG5vbiBoYSBlZmZldHRvIHNlbnphIC0tcmViYXNlLW1lcmdlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVxdWlyZXMgYW4gaW50ZXJhY3RpdmUgcmViYXNlIgorbXNnc3RyICIlcyByaWNoaWVkZSB1biByZWJhc2UgaW50ZXJhdHRpdm8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZXQgJ29udG8nOiAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBvdHRlbmVyZSAnb250byc6ICclcyciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NjI3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgb3JpZy1oZWFkOiAnJXMnIgorbXNnc3RyICJvcmlnLWhlYWQgbm9uIHZhbGlkYTogJyVzJyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgaW52YWxpZCBhbGxvd19yZXJlcmVfYXV0b3VwZGF0ZTogJyVzJyIKK21zZ3N0ciAiaWdub3JvIGlsIHZhbG9yZSBub24gdmFsaWRvIHBlciBhbGxvd19yZXJlcmVfYXV0b3VwZGF0ZTogJyVzJyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo3MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHJlYWQgJyVzJyIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgbGVnZ2VyZSAnJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjc0NgorIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3Qgc3RvcmUgJXMiCittc2dzdHIgIkltcG9zc2liaWxlIG1lbW9yaXp6YXJlICVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjg1MworbXNnaWQgImNvdWxkIG5vdCBkZXRlcm1pbmUgSEVBRCByZXZpc2lvbiIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZGV0ZXJtaW5hcmUgbGEgcmV2aXNpb25lIEhFQUQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6OTc2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MQorbXNnaWQgIiIKKyJSZXNvbHZlIGFsbCBjb25mbGljdHMgbWFudWFsbHksIG1hcmsgdGhlbSBhcyByZXNvbHZlZCB3aXRoXG4iCisiXCJnaXQgYWRkL3JtIDxjb25mbGljdGVkX2ZpbGVzPlwiLCB0aGVuIHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiLlxuIgorIllvdSBjYW4gaW5zdGVhZCBza2lwIHRoaXMgY29tbWl0OiBydW4gXCJnaXQgcmViYXNlIC0tc2tpcFwiLlxuIgorIlRvIGFib3J0IGFuZCBnZXQgYmFjayB0byB0aGUgc3RhdGUgYmVmb3JlIFwiZ2l0IHJlYmFzZVwiLCBydW4gXCJnaXQgcmViYXNlIC0tIgorImFib3J0XCIuIgorbXNnc3RyICIiCisiUmlzb2x2aSBtYW51YWxtZW50ZSB0dXR0aSBpIGNvbmZsaXR0aSwgY29udHJhc3NlZ25hbGkgY29tZVxuIgorInJpc29sdGkgY29uIFwiZ2l0IGFkZC9ybSA8ZmlsZSBpbiBjb25mbGl0dG8+XCIsIHF1aW5kaSBlc2VndWlcbiIKKyJcImdpdCByZWJhc2UgLS1jb250aW51ZVwiLlxuIgorIkluIGFsdGVybmF0aXZhLCBwdW9pIHNhbHRhcmUgcXVlc3RvIGNvbW1pdDogZXNlZ3VpIFwiZ2l0IHJlYmFzZVxuIgorIi0tc2tpcFwiLlxuIgorIlBlciBpbnRlcnJvbXBlcmUgbCdvcGVyYXppb25lIGUgdG9ybmFyZSBhbGxvIHN0YXRvIHByZWNlZGVudGVcbiIKKyJpbCBcImdpdCByZWJhc2VcIiwgZXNlZ3VpIFwiZ2l0IHJlYmFzZSAtLWFib3J0XCIuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorImdpdCBlbmNvdW50ZXJlZCBhbiBlcnJvciB3aGlsZSBwcmVwYXJpbmcgdGhlIHBhdGNoZXMgdG8gcmVwbGF5XG4iCisidGhlc2UgcmV2aXNpb25zOlxuIgorIlxuIgorIiAgICAlc1xuIgorIlxuIgorIkFzIGEgcmVzdWx0LCBnaXQgY2Fubm90IHJlYmFzZSB0aGVtLiIKK21zZ3N0ciAiIgorIlxuIgorIkdpdCBoYSByaXNjb250cmF0byB1biBlcnJvcmUgZHVyYW50ZSBsYSBwcmVwYXJhemlvbmUgZGVsbGUgcGF0Y2hcbiIKKyJwZXIgYXBwbGljYXJlIG51b3ZhbWVudGUgcXVlc3RlIHJldmlzaW9uaTpcbiIKKyJcbiIKKyIgICAgJXNcbiIKKyJcbiIKKyJEaSBjb25zZWd1ZW56YSwgR2l0IG5vbiBwdcOyIGVzZWd1aXJuZSBpbCByZWJhc2UuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEzODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVucmVjb2duaXplZCBlbXB0eSB0eXBlICclcyc7IHZhbGlkIHZhbHVlcyBhcmUgXCJkcm9wXCIsIFwia2VlcFwiLCBhbmQgXCJhc2siCisiXCIuIgorbXNnc3RyICIiCisidGlwbyB2dW90byAnJXMnIG5vbiByaWNvbm9zY2l1dG87IGkgdmFsb3JpIHZhbGlkaSBzb25vIFwiZHJvcFwiLCBcImtlZXBcIiBlICIKKyJcImFza1wiLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlc1xuIgorIlBsZWFzZSBzcGVjaWZ5IHdoaWNoIGJyYW5jaCB5b3Ugd2FudCB0byByZWJhc2UgYWdhaW5zdC5cbiIKKyJTZWUgZ2l0LXJlYmFzZSgxKSBmb3IgZGV0YWlscy5cbiIKKyJcbiIKKyIgICAgZ2l0IHJlYmFzZSAnPGJyYW5jaD4nXG4iCisiXG4iCittc2dzdHIgIiIKKyIlc1xuIgorIlNwZWNpZmljYSBpbCBicmFuY2ggc3UgY3VpIGVmZmV0dHVhcmUgaWwgcmViYXNlLlxuIgorIlZlZGkgZ2l0LXJlYmFzZSgxKSBwZXIgaSBkZXR0YWdsaS5cbiIKKyJcbiIKKyIgICAgZ2l0IHJlYmFzZSAnPGJyYW5jaD4nXG4iCisiXG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSWYgeW91IHdpc2ggdG8gc2V0IHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGlzIGJyYW5jaCB5b3UgY2FuIGRvIHNvIHdpdGg6XG4iCisiXG4iCisiICAgIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMvPGJyYW5jaD4gJXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIlNlIHZ1b2kgaW1wb3N0YXJlIGxlIGluZm9ybWF6aW9uaSBkaSB0cmFjY2lhbWVudG8gcGVyIHF1ZXN0byBicmFuY2ggcHVvaSAiCisiZmFybG8gY29uOlxuIgorIlxuIgorIiAgICBnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvPSVzLzxicmFuY2g+ICVzXG4iCisiXG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0NworbXNnaWQgImV4ZWMgY29tbWFuZHMgY2Fubm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImkgY29tYW5kaSBleGVjIG5vbiBwb3Nzb25vIGNvbnRlbmVyZSBjYXJhdHRlcmkgZGkgZmluZSByaWdhIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NTEKK21zZ2lkICJlbXB0eSBleGVjIGNvbW1hbmQiCittc2dzdHIgImNvbWFuZG8gZXhlYyB2dW90byIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgxCittc2dpZCAicmViYXNlIG9udG8gZ2l2ZW4gYnJhbmNoIGluc3RlYWQgb2YgdXBzdHJlYW0iCittc2dzdHIgImVzZWd1aSBpbCByZWJhc2Ugc3VsIGJyYW5jaCBzcGVjaWZpY2F0byBhbnppY2jDqSBzdSBxdWVsbG8gdXBzdHJlYW0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MworbXNnaWQgInVzZSB0aGUgbWVyZ2UtYmFzZSBvZiB1cHN0cmVhbSBhbmQgYnJhbmNoIGFzIHRoZSBjdXJyZW50IGJhc2UiCittc2dzdHIgInVzYSBsYSBiYXNlIGRlbCBtZXJnZSBkZWxsJ3Vwc3RyZWFtIGUgZGVsIGJyYW5jaCBjb21lIGJhc2UgY29ycmVudGUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4NQorbXNnaWQgImFsbG93IHByZS1yZWJhc2UgaG9vayB0byBydW4iCittc2dzdHIgImNvbnNlbnRpIGwnZXNlY3V6aW9uZSBkZWxsJ2hvb2sgcHJlLXJlYmFzZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDg3Cittc2dpZCAiYmUgcXVpZXQuIGltcGxpZXMgLS1uby1zdGF0IgorbXNnc3RyICJzaWkgc2lsZW56aW9zby4gaW1wbGljYSAtLW5vLXN0YXQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MworbXNnaWQgImRvIG5vdCBzaG93IGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKK21zZ3N0ciAibm9uIHZpc3VhbGl6emFyZSB1biBkaWZmc3RhdCBkZWxsZSBtb2RpZmljaGUgdXBzdHJlYW0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5NgorbXNnaWQgImFkZCBhIFNpZ25lZC1vZmYtYnk6IGxpbmUgdG8gZWFjaCBjb21taXQiCittc2dzdHIgImFnZ2l1bmdpIHVuYSByaWdhIFNpZ25lZC1vZmYtYnk6IGEgb2duaSBjb21taXQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5OCBidWlsdGluL3JlYmFzZS5jOjE1MDIgYnVpbHRpbi9yZWJhc2UuYzoxNTA0Cittc2dpZCAicGFzc2VkIHRvICdnaXQgYW0nIgorbXNnc3RyICJwYXNzYXRvIGEgJ2dpdCBhbSciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUwNiBidWlsdGluL3JlYmFzZS5jOjE1MDgKK21zZ2lkICJwYXNzZWQgdG8gJ2dpdCBhcHBseSciCittc2dzdHIgInBhc3NhdG8gYSAnZ2l0IGFwcGx5JyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTEwIGJ1aWx0aW4vcmViYXNlLmM6MTUxMworbXNnaWQgImNoZXJyeS1waWNrIGFsbCBjb21taXRzLCBldmVuIGlmIHVuY2hhbmdlZCIKK21zZ3N0ciAiZXNlZ3VpIGlsIGNoZXJyeS1waWNrIGRpIHR1dHRpIGkgY29tbWl0LCBhbmNoZSBzZSBub24gbW9kaWZpY2F0aSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTE1Cittc2dpZCAiY29udGludWUiCittc2dzdHIgImNvbnRpbnVhIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MTgKK21zZ2lkICJza2lwIGN1cnJlbnQgcGF0Y2ggYW5kIGNvbnRpbnVlIgorbXNnc3RyICJzYWx0YSBsYSBwYXRjaCBjb3JyZW50ZSBlIGNvbnRpbnVhIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjAKK21zZ2lkICJhYm9ydCBhbmQgY2hlY2sgb3V0IHRoZSBvcmlnaW5hbCBicmFuY2giCittc2dzdHIgImludGVycm9tcGkgZWQgZXNlZ3VpIGlsIGNoZWNrb3V0IGRlbCBicmFuY2ggb3JpZ2luYXJpbyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTIzCittc2dpZCAiYWJvcnQgYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcyIKK21zZ3N0ciAiaW50ZXJyb21waSBtYSBtYW50aWVuaSBsJ0hFQUQgZG92J8OoIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjQKK21zZ2lkICJlZGl0IHRoZSB0b2RvIGxpc3QgZHVyaW5nIGFuIGludGVyYWN0aXZlIHJlYmFzZSIKK21zZ3N0ciAibW9kaWZpY2EgbCdlbGVuY28gdG9kbyBkdXJhbnRlIHVuIHJlYmFzZSBpbnRlcmF0dGl2byIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTI3Cittc2dpZCAic2hvdyB0aGUgcGF0Y2ggZmlsZSBiZWluZyBhcHBsaWVkIG9yIG1lcmdlZCIKK21zZ3N0ciAiIgorInZpc3VhbGl6emEgaWwgZmlsZSBwYXRjaCBjaGUgc3RhIHBlciBlc3NlcmUgYXBwbGljYXRvIG8gc290dG9wb3N0byBhIG1lcmdlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzAKK21zZ2lkICJ1c2UgYXBwbHkgc3RyYXRlZ2llcyB0byByZWJhc2UiCittc2dzdHIgInVzYSBsZSBzdHJhdGVnaWUgZGkgYXBwbHkgcGVyIGVzZWd1aXJlIGlsIHJlYmFzZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTM0Cittc2dpZCAidXNlIG1lcmdpbmcgc3RyYXRlZ2llcyB0byByZWJhc2UiCittc2dzdHIgInVzYSBsZSBzdHJhdGVnaWUgZGkgbWVyZ2UgcGVyIGVzZWd1aXJlIGlsIHJlYmFzZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTM4Cittc2dpZCAibGV0IHRoZSB1c2VyIGVkaXQgdGhlIGxpc3Qgb2YgY29tbWl0cyB0byByZWJhc2UiCittc2dzdHIgIiIKKyJjb25zZW50aSBhbGwndXRlbnRlIGRpIG1vZGlmaWNhcmUgbCdlbGVuY28gZGVpIGNvbW1pdCBkaSBjdWkgZXNlZ3VpcmUgaWwgIgorInJlYmFzZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTQyCittc2dpZCAiKERFUFJFQ0FURUQpIHRyeSB0byByZWNyZWF0ZSBtZXJnZXMgaW5zdGVhZCBvZiBpZ25vcmluZyB0aGVtIgorbXNnc3RyICIoREVQUkVDQVRPKSBwcm92YSBhIHJpY3JlYXJlIGkgbWVyZ2UgYW56aWNow6kgaWdub3JhcmxpIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NDcKK21zZ2lkICJob3cgdG8gaGFuZGxlIGNvbW1pdHMgdGhhdCBiZWNvbWUgZW1wdHkiCittc2dzdHIgImNvbWUgZ2VzdGlyZSBpIGNvbW1pdCBjaGUgZGl2ZW50YW5vIHZ1b3RpIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NTQKK21zZ2lkICJtb3ZlIGNvbW1pdHMgdGhhdCBiZWdpbiB3aXRoIHNxdWFzaCEvZml4dXAhIHVuZGVyIC1pIgorbXNnc3RyICJzcG9zdGEgaSBjb21taXQgY2hlIGluaXppYW5vIGNvbiBzcXVhc2ghL2ZpeHVwISBpbiAtaSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTYwCittc2dpZCAiYXV0b21hdGljYWxseSBzdGFzaC9zdGFzaCBwb3AgYmVmb3JlIGFuZCBhZnRlciIKK21zZ3N0ciAiZXNlZ3VpIHN0YXNoL3N0YXNoIHBvcCBhdXRvbWF0aWNhbWVudGUgcHJpbWEgZSBkb3BvIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjIKK21zZ2lkICJhZGQgZXhlYyBsaW5lcyBhZnRlciBlYWNoIGNvbW1pdCBvZiB0aGUgZWRpdGFibGUgbGlzdCIKK21zZ3N0ciAiYWdnaXVuZ2kgcmlnaGUgZXhlYyBkb3BvIG9nbmkgY29tbWl0IGRlbGxhIGxpc3RhIG1vZGlmaWNhYmlsZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTY2Cittc2dpZCAiYWxsb3cgcmViYXNpbmcgY29tbWl0cyB3aXRoIGVtcHR5IG1lc3NhZ2VzIgorbXNnc3RyICJjb25zZW50aSBpbCByZWJhc2UgZGkgY29tbWl0IGNvbiBtZXNzYWdnaSB2dW90aSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTcwCittc2dpZCAidHJ5IHRvIHJlYmFzZSBtZXJnZXMgaW5zdGVhZCBvZiBza2lwcGluZyB0aGVtIgorbXNnc3RyICJwcm92YSBhZCBlc2VndWlyZSBpbCByZWJhc2UgZGVpIG1lcmdlIGFuemljaMOpIHNhbHRhcmxpIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzMKK21zZ2lkICJ1c2UgJ21lcmdlLWJhc2UgLS1mb3JrLXBvaW50JyB0byByZWZpbmUgdXBzdHJlYW0iCittc2dzdHIgIiIKKyJ1c2EgJ21lcmdlLWJhc2UgLS1mb3JrLXBvaW50JyBwZXIgcmlkZWZpbmlyZSBwacO5IHByZWNpc2FtZW50ZSBsJ3Vwc3RyZWFtIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzUKK21zZ2lkICJ1c2UgdGhlIGdpdmVuIG1lcmdlIHN0cmF0ZWd5IgorbXNnc3RyICJ1c2EgbGEgc3RyYXRlZ2lhIGRpIG1lcmdlIHNwZWNpZmljYXRhIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzcgYnVpbHRpbi9yZXZlcnQuYzoxMTUKK21zZ2lkICJvcHRpb24iCittc2dzdHIgIm9wemlvbmUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3OAorbXNnaWQgInBhc3MgdGhlIGFyZ3VtZW50IHRocm91Z2ggdG8gdGhlIG1lcmdlIHN0cmF0ZWd5IgorbXNnc3RyICJwYXNzYSBsJ2FyZ29tZW50byBhbGxhIHN0cmF0ZWdpYSBkaSBtZXJnZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTgxCittc2dpZCAicmViYXNlIGFsbCByZWFjaGFibGUgY29tbWl0cyB1cCB0byB0aGUgcm9vdChzKSIKK21zZ3N0ciAiZXNlZ3VpIGlsIHJlYmFzZSBkaSB0dXR0aSBpIGNvbW1pdCByYWdnaXVuZ2liaWxpIGZpbm8gYSBxdWVsbGkgcmFkaWNlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1OTgKK21zZ2lkICIiCisidGhlIHJlYmFzZS51c2VCdWlsdGluIHN1cHBvcnQgaGFzIGJlZW4gcmVtb3ZlZCFcbiIKKyJTZWUgaXRzIGVudHJ5IGluICdnaXQgaGVscCBjb25maWcnIGZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorImlsIHN1cHBvcnRvIHBlciByZWJhc2UudXNlQnVpbHRpbiDDqCBzdGF0byByaW1vc3NvIVxuIgorIlZlZGkgbGEgdm9jZSByZWxhdGl2YSBpbiAnZ2l0IGhlbHAgY29uZmlnJyBwZXIgaSBkZXR0YWdsaS4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTYwNAorbXNnaWQgIkl0IGxvb2tzIGxpa2UgJ2dpdCBhbScgaXMgaW4gcHJvZ3Jlc3MuIENhbm5vdCByZWJhc2UuIgorbXNnc3RyICJTZW1icmEgY2hlICdnaXQgYW0nIHNpYSBpbiBjb3Jzby4gSW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgcmViYXNlLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjQ1Cittc2dpZCAiIgorImdpdCByZWJhc2UgLS1wcmVzZXJ2ZS1tZXJnZXMgaXMgZGVwcmVjYXRlZC4gVXNlIC0tcmViYXNlLW1lcmdlcyBpbnN0ZWFkLiIKK21zZ3N0ciAiZ2l0IHJlYmFzZSAtLXByZXNlcnZlLW1lcmdlcyDDqCBkZXByZWNhdG8uIFVzYSAtLXJlYmFzZS1tZXJnZXMuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NTAKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1rZWVwLWJhc2UnIHdpdGggJy0tb250byciCittc2dzdHIgImltcG9zc2liaWxlIGNvbWJpbmFyZSAnLS1rZWVwLWJhc2UnIGNvbiAnLS1vbnRvJyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjUyCittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0ta2VlcC1iYXNlJyB3aXRoICctLXJvb3QnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjb21iaW5hcmUgJy0ta2VlcC1iYXNlJyBjb24gJy0tcm9vdCciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1NgorbXNnaWQgIk5vIHJlYmFzZSBpbiBwcm9ncmVzcz8iCittc2dzdHIgIk5lc3N1biByZWJhc2UgaW4gY29yc28/IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NjAKK21zZ2lkICJUaGUgLS1lZGl0LXRvZG8gYWN0aW9uIGNhbiBvbmx5IGJlIHVzZWQgZHVyaW5nIGludGVyYWN0aXZlIHJlYmFzZS4iCittc2dzdHIgIiIKKyJMJ2F6aW9uZSAtLWVkaXQtdG9kbyBwdcOyIGVzc2VyZSB1c2F0YSBzb2xvIGR1cmFudGUgdW4gcmViYXNlIGludGVyYXR0aXZvLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjgzCittc2dpZCAiQ2Fubm90IHJlYWQgSEVBRCIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgbGVnZ2VyZSBsJ0hFQUQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY5NQorbXNnaWQgIiIKKyJZb3UgbXVzdCBlZGl0IGFsbCBtZXJnZSBjb25mbGljdHMgYW5kIHRoZW5cbiIKKyJtYXJrIHRoZW0gYXMgcmVzb2x2ZWQgdXNpbmcgZ2l0IGFkZCIKK21zZ3N0ciAiIgorIkRldmkgbW9kaWZpY2FyZSB0dXR0aSBpIGNvbmZsaXR0aSBkaSBtZXJnZSBlXG4iCisicXVpbmRpIGNvbnRyYXNzZWduYXJsaSBjb21lIHJpc29sdGkgdXNhbmRvXG4iCisiZ2l0IGFkZCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzE0Cittc2dpZCAiY291bGQgbm90IGRpc2NhcmQgd29ya3RyZWUgY2hhbmdlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NhcnRhcmUgbGUgbW9kaWZpY2hlIGFsbCdhbGJlcm8gZGkgbGF2b3JvIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE3MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG1vdmUgYmFjayB0byAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcml0b3JuYXJlIGEgJXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTc3OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSXQgc2VlbXMgdGhhdCB0aGVyZSBpcyBhbHJlYWR5IGEgJXMgZGlyZWN0b3J5LCBhbmRcbiIKKyJJIHdvbmRlciBpZiB5b3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciByZWJhc2UuICBJZiB0aGF0IGlzIHRoZVxuIgorImNhc2UsIHBsZWFzZSB0cnlcbiIKKyJcdCVzXG4iCisiSWYgdGhhdCBpcyBub3QgdGhlIGNhc2UsIHBsZWFzZVxuIgorIlx0JXNcbiIKKyJhbmQgcnVuIG1lIGFnYWluLiAgSSBhbSBzdG9wcGluZyBpbiBjYXNlIHlvdSBzdGlsbCBoYXZlIHNvbWV0aGluZ1xuIgorInZhbHVhYmxlIHRoZXJlLlxuIgorbXNnc3RyICIiCisiU2VtYnJhIGNoZSBlc2lzdGEgZ2nDoCB1bmEgZGlyZWN0b3J5ICVzIGUgbWkgZG9tYW5kb1xuIgorInNlIHR1IHNpYSBnacOgIG5lbCBiZWwgbWV6em8gZGkgdW4gYWx0cm8gcmViYXNlLiBTZSBxdWVzdG8gw6ggaWwgY2FzbyxcbiIKKyJwcm92YSBjb24gaWwgY29tYW5kb1xuIgorIlx0JXNcbiIKKyJTZSBxdWVzdG8gbm9uIMOoIGlsIGNhc28sIGVzZWd1aVxuIgorIlx0JXNcbiIKKyJlZCBlc2VndWltaSBkaSBudW92by4gTWkgZmVybW8gbmVsIGNhc28gaW4gY3VpIHR1IGFiYmlhIGFuY29yYVxuIgorInNhbHZhdG8gcXVhbGNvc2EgZGkgaW1wb3J0YW50ZSBsw6wuXG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTgwNgorbXNnaWQgInN3aXRjaCBgQycgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKK21zZ3N0ciAibCdvcHppb25lIGBDYCByaWNoaWVkZSB1biB2YWxvcmUgbnVtZXJpY28iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg0NworIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIG1vZGU6ICVzIgorbXNnc3RyICJNb2RvIHNjb25vc2NpdXRvOiAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxODY5Cittc2dpZCAiLS1zdHJhdGVneSByZXF1aXJlcyAtLW1lcmdlIG9yIC0taW50ZXJhY3RpdmUiCittc2dzdHIgIi0tc3RyYXRlZ3kgcmljaGllZGUgLS1tZXJnZSBvIC0taW50ZXJhY3RpdmUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg5OQorbXNnaWQgImNhbm5vdCBjb21iaW5lIGFwcGx5IG9wdGlvbnMgd2l0aCBtZXJnZSBvcHRpb25zIgorbXNnc3RyICJub24gw6ggcG9zc2liaWxlIGNvbWJpbmFyZSBsZSBvcHppb25pIGFwcGx5IGNvbiBxdWVsbGUgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTkxMgorIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHJlYmFzZSBiYWNrZW5kOiAlcyIKK21zZ3N0ciAiQmFja2VuZCBkaSByZWJhc2Ugc2Nvbm9zY2l1dG86ICVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5MzcKK21zZ2lkICItLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWMgcmVxdWlyZXMgLS1leGVjIG9yIC0taW50ZXJhY3RpdmUiCittc2dzdHIgIi0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyByaWNoaWVkZSAtLWV4ZWMgbyAtLWludGVyYWN0aXZlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5NTcKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmViYXNlLW1lcmdlcyciCittc2dzdHIgImltcG9zc2liaWxlIGNvbWJpbmFyZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIGNvbiAnLS1yZWJhc2UtbWVyZ2VzJyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTYxCittc2dpZCAiIgorImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyciCittc2dzdHIgIiIKKyJlcnJvcmU6IGltcG9zc2liaWxlIGNvbWJpbmFyZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIGNvbiAnLS1yZXNjaGVkdWxlLWZhaWxlZC0iCisiZXhlYyciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk4NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICclcyciCittc2dzdHIgInVwc3RyZWFtIG5vbiB2YWxpZG86ICclcyciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk5MQorbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgbmV3IHJvb3QgY29tbWl0IgorbXNnc3RyICJJbXBvc3NpYmlsZSBjcmVhcmUgaWwgbnVvdm8gY29tbWl0IHJhZGljZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IG5lZWQgZXhhY3RseSBvbmUgbWVyZ2UgYmFzZSB3aXRoIGJyYW5jaCIKK21zZ3N0ciAiIgorIiclcyc6IMOoIG5lY2Vzc2FyaW8gc3BlY2lmaWNhcmUgZXNhdHRhbWVudGUgdW5hIGJhc2UgcGVyIGlsIG1lcmdlIGNvbiBpbCAiCisiYnJhbmNoIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJzogbmVlZCBleGFjdGx5IG9uZSBtZXJnZSBiYXNlIgorbXNnc3RyICInJXMnOiDDqCBuZWNlc3NhcmlvIHNwZWNpZmljYXJlIGVzYXR0YW1lbnRlIHVuYSBiYXNlIHBlciBpbCBtZXJnZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRvZXMgbm90IHBvaW50IHRvIGEgdmFsaWQgY29tbWl0ICclcyciCittc2dzdHIgIiclcycgbm9uIHB1bnRhIGEgdW4gY29tbWl0IHZhbGlkbyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDU0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhdGFsOiBubyBzdWNoIGJyYW5jaC9jb21taXQgJyVzJyIKK21zZ3N0ciAiZXJyb3JlIGZhdGFsZTogYnJhbmNoL2NvbW1pdCAnJXMnIGluZXNpc3RlbnRlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwNjIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk5MAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBzdWNoIHJlZjogJXMiCittc2dzdHIgIlJpZmVyaW1lbnRvIG5vbiBlc2lzdGVudGU6ICVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwNzMKK21zZ2lkICJDb3VsZCBub3QgcmVzb2x2ZSBIRUFEIHRvIGEgcmV2aXNpb24iCittc2dzdHIgIkltcG9zc2liaWxlIHJpc29sdmVyZSBIRUFEIGNvbWUgcmV2aXNpb25lIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxMTEKK21zZ2lkICJDYW5ub3QgYXV0b3N0YXNoIgorbXNnc3RyICJJbXBvc3NpYmlsZSBlc2VndWlyZSBsbyBzdGFzaCBhdXRvbWF0aWNvIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5leHBlY3RlZCBzdGFzaCByZXNwb25zZTogJyVzJyIKK21zZ3N0ciAiUmlzcG9zdGEgc3Rhc2ggbm9uIGF0dGVzYTogJyVzJyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5IGZvciAnJXMnIgorbXNnc3RyICJJbXBvc3NpYmlsZSBjcmVhcmUgbGEgZGlyZWN0b3J5ICclcyciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJXNcbiIKK21zZ3N0ciAiU3Rhc2ggYXV0b21hdGljbyBjcmVhdG86ICVzXG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyNgorbXNnaWQgImNvdWxkIG5vdCByZXNldCAtLWhhcmQiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIHJlc2V0IC0taGFyZCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTM1Cittc2dpZCAiUGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKK21zZ3N0ciAiRXNlZ3VpbmUgaWwgY29tbWl0IG8gbG8gc3Rhc2guIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN3aXRjaCB0byAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcGFzc2FyZSBhICVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxODAKK21zZ2lkICJIRUFEIGlzIHVwIHRvIGRhdGUuIgorbXNnc3RyICJIRUFEIMOoIGFnZ2lvcm5hdG8uIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCBicmFuY2ggJXMgaXMgdXAgdG8gZGF0ZS5cbiIKK21zZ3N0ciAiSWwgYnJhbmNoIGNvcnJlbnRlICVzIMOoIGFnZ2lvcm5hdG8uXG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE5MAorbXNnaWQgIkhFQUQgaXMgdXAgdG8gZGF0ZSwgcmViYXNlIGZvcmNlZC4iCittc2dzdHIgIkhFQUQgw6ggYWdnaW9ybmF0bywgZm9yem8gaWwgcmViYXNlLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgYnJhbmNoICVzIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuXG4iCittc2dzdHIgIklsIGJyYW5jaCBjb3JyZW50ZSAlcyDDqCBhZ2dpb3JuYXRvLCBmb3J6byBpbCByZWJhc2UuXG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIwMAorbXNnaWQgIlRoZSBwcmUtcmViYXNlIGhvb2sgcmVmdXNlZCB0byByZWJhc2UuIgorbXNnc3RyICJMJ2hvb2sgcHJlLXJlYmFzZSBoYSByaWZpdXRhdG8gZGkgY29uc2VudGlyZSBpbCByZWJhc2UuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hhbmdlcyB0byAlczpcbiIKK21zZ3N0ciAiTW9kaWZpY2hlIGEgJXM6XG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJDaGFuZ2VzIGZyb20gJXMgdG8gJXM6XG4iCittc2dzdHIgIk1vZGlmaWNoZSBkYSAlcyBhICVzOlxuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uXG4iCittc2dzdHIgIiIKKyJQZXIgcHJpbWEgY29zYSwgcmlwcmlzdGlubyBsJ2hlYWQgcGVyIHJpYXBwbGljYXJlIGxlIHR1ZSBtb2RpZmljaGUgc3UgZGkgIgorImVzc28uLi5cbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjQ0Cittc2dpZCAiQ291bGQgbm90IGRldGFjaCBIRUFEIgorbXNnc3RyICJJbXBvc3NpYmlsZSBzY29sbGVnYXJlIGwnSEVBRCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhc3QtZm9yd2FyZGVkICVzIHRvICVzLlxuIgorbXNnc3RyICJGYXN0IGZvcndhcmQgZGEgJXMgYSAlcyBlc2VndWl0by5cbiIKKworIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzozMworbXNnaWQgImdpdCByZWNlaXZlLXBhY2sgPGdpdC1kaXI+IgorbXNnc3RyICJnaXQgcmVjZWl2ZS1wYWNrIDxkaXJlY3RvcnkgR2l0PiIKKworIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzo4MjEKK21zZ2lkICIiCisiQnkgZGVmYXVsdCwgdXBkYXRpbmcgdGhlIGN1cnJlbnQgYnJhbmNoIGluIGEgbm9uLWJhcmUgcmVwb3NpdG9yeVxuIgorImlzIGRlbmllZCwgYmVjYXVzZSBpdCB3aWxsIG1ha2UgdGhlIGluZGV4IGFuZCB3b3JrIHRyZWUgaW5jb25zaXN0ZW50XG4iCisid2l0aCB3aGF0IHlvdSBwdXNoZWQsIGFuZCB3aWxsIHJlcXVpcmUgJ2dpdCByZXNldCAtLWhhcmQnIHRvIG1hdGNoXG4iCisidGhlIHdvcmsgdHJlZSB0byBIRUFELlxuIgorIlxuIgorIllvdSBjYW4gc2V0IHRoZSAncmVjZWl2ZS5kZW55Q3VycmVudEJyYW5jaCcgY29uZmlndXJhdGlvbiB2YXJpYWJsZVxuIgorInRvICdpZ25vcmUnIG9yICd3YXJuJyBpbiB0aGUgcmVtb3RlIHJlcG9zaXRvcnkgdG8gYWxsb3cgcHVzaGluZyBpbnRvXG4iCisiaXRzIGN1cnJlbnQgYnJhbmNoOyBob3dldmVyLCB0aGlzIGlzIG5vdCByZWNvbW1lbmRlZCB1bmxlc3MgeW91XG4iCisiYXJyYW5nZWQgdG8gdXBkYXRlIGl0cyB3b3JrIHRyZWUgdG8gbWF0Y2ggd2hhdCB5b3UgcHVzaGVkIGluIHNvbWVcbiIKKyJvdGhlciB3YXkuXG4iCisiXG4iCisiVG8gc3F1ZWxjaCB0aGlzIG1lc3NhZ2UgYW5kIHN0aWxsIGtlZXAgdGhlIGRlZmF1bHQgYmVoYXZpb3VyLCBzZXRcbiIKKyIncmVjZWl2ZS5kZW55Q3VycmVudEJyYW5jaCcgY29uZmlndXJhdGlvbiB2YXJpYWJsZSB0byAncmVmdXNlJy4iCittc2dzdHIgIiIKKyJQZXIgaW1wb3N0YXppb25lIHByZWRlZmluaXRhLCBsJ2FnZ2lvcm5hbWVudG8gZGVsIGJyYW5jaCBjb3JyZW50ZVxuIgorImluIHVuIHJlcG9zaXRvcnkgbm9uIHNwb2dsaW8gw6ggbmVnYXRvLCBwZXJjaMOpIHJlbmRlcmViYmUgbCdpbmRpY2VcbiIKKyJlIGwnYWxiZXJvIGRpIGxhdm9ybyBpbmNvbnNpc3RlbnRpIGNvbiBpIGRhdGkgZGkgY3VpIHNpIMOoIGVzZWd1aXRvXG4iCisiaWwgcHVzaCBlIHJpY2hpZWRlcmViYmUgJ2dpdCByZXNldCAtLWhhcmQnIHBlciByaXByaXN0aW5hcmUgbGFcbiIKKyJjb3JyaXNwb25kZW56YSBkZWxsJ2FsYmVybyBkaSBsYXZvcm8gY29uIEhFQUQuXG4iCisiXG4iCisiUHVvaSBpbXBvc3RhcmUgbGEgdmFyaWFiaWxlIGRpIGNvbmZpZ3VyYXppb25lXG4iCisiJ3JlY2VpdmUuZGVueUN1cnJlbnRCcmFuY2gnIGEgJ2lnbm9yZScgbyAnd2FybicgbmVsIHJlcG9zaXRvcnlcbiIKKyJyZW1vdG8gcGVyIGNvbnNlbnRpcmUgaWwgcHVzaCBuZWwgYnJhbmNoIGNvcnJlbnRlOyBjacOyIG5vbm9zdGFudGUsXG4iCisicXVlc3RvIG5vbiDDqCByYWNjb21hbmRhdG8gYSBtZW5vIGNoZSB0dSBub24gcHJvdnZlZGEgYWQgYWdnaW9ybmFyZVxuIgorImlsIHN1byBhbGJlcm8gZGkgbGF2b3JvIGluIG1vZG8gY2hlIGNvcnJpc3BvbmRhIGEgY2nDsiBkaSBjdWkgaGFpXG4iCisiZXNlZ3VpdG8gaWwgcHVzaCBpbiBxdWFsY2hlIGFsdHJvIG1vZG8uXG4iCisiXG4iCisiUGVyIG5vbiB2aXN1YWxpenphcmUgcGnDuSBxdWVzdG8gbWVzc2FnZ2lvIGUgbWFudGVuZXJlIGNvbXVucXVlXG4iCisiaWwgY29tcG9ydGFtZW50byBwcmVkZWZpbml0bywgaW1wb3N0YSBsYSB2YXJpYWJpbGUgZGlcbiIKKyJjb25maWd1cmF6aW9uZSAncmVjZWl2ZS5kZW55Q3VycmVudEJyYW5jaCcgYSAncmVmdXNlJy4iCisKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODQxCittc2dpZCAiIgorIkJ5IGRlZmF1bHQsIGRlbGV0aW5nIHRoZSBjdXJyZW50IGJyYW5jaCBpcyBkZW5pZWQsIGJlY2F1c2UgdGhlIG5leHRcbiIKKyInZ2l0IGNsb25lJyB3b24ndCByZXN1bHQgaW4gYW55IGZpbGUgY2hlY2tlZCBvdXQsIGNhdXNpbmcgY29uZnVzaW9uLlxuIgorIlxuIgorIllvdSBjYW4gc2V0ICdyZWNlaXZlLmRlbnlEZWxldGVDdXJyZW50JyBjb25maWd1cmF0aW9uIHZhcmlhYmxlIHRvXG4iCisiJ3dhcm4nIG9yICdpZ25vcmUnIGluIHRoZSByZW1vdGUgcmVwb3NpdG9yeSB0byBhbGxvdyBkZWxldGluZyB0aGVcbiIKKyJjdXJyZW50IGJyYW5jaCwgd2l0aCBvciB3aXRob3V0IGEgd2FybmluZyBtZXNzYWdlLlxuIgorIlxuIgorIlRvIHNxdWVsY2ggdGhpcyBtZXNzYWdlLCB5b3UgY2FuIHNldCBpdCB0byAncmVmdXNlJy4iCittc2dzdHIgIiIKKyJQZXIgaW1wb3N0YXppb25lIHByZWRlZmluaXRhLCBsJ2VsaW1pbmF6aW9uZSBkZWwgYnJhbmNoIGNvcnJlbnRlXG4iCisiw6ggbmVnYXRhLCBwZXJjaMOpIGlsIHByb3NzaW1vICdnaXQgY2xvbmUnIGZhcmViYmUgc8OsIGNoZSBub24gdmVuZ2FcbiIKKyJlc2VndWl0byBpbCBjaGVja291dCBkaSBuZXNzdW4gZmlsZSwgY2F1c2FuZG8gY29uZnVzaW9uZS5cbiIKKyJcbiIKKyJQdW9pIGltcG9zdGFyZSBsYSB2YXJpYWJpbGUgZGkgY29uZmlndXJhemlvbmVcbiIKKyIncmVjZWl2ZS5kZW55RGVsZXRlQ3VycmVudCcgYSAnd2FybicgbyAnaWdub3JlJyBuZWwgcmVwb3NpdG9yeVxuIgorInJlbW90byBwZXIgY29uc2VudGlyZSBsJ2VsaW1pbmF6aW9uZSBkZWwgYnJhbmNoIGNvcnJlbnRlLCBjb24gb1xuIgorInNlbnphIHVuIG1lc3NhZ2dpbyBkJ2F2dmlzby5cbiIKKyJcbiIKKyJQZXIgbm9uIHZpc3VhbGl6emFyZSBwacO5IHF1ZXN0byBtZXNzYWdnaW8sIHB1b2kgaW1wb3N0YXJsYSBhXG4iCisiJ3JlZnVzZScuIgorCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5MzgKK21zZ2lkICJxdWlldCIKK21zZ3N0ciAibm9uIHZpc3VhbGl6emFyZSBtZXNzYWdnaSIKKworIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTUyCittc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIGRpcmVjdG9yeS4iCittc2dzdHIgIkRldmkgc3BlY2lmaWNhcmUgdW5hIGRpcmVjdG9yeS4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MTcKK21zZ2lkICIiCisiZ2l0IHJlZmxvZyBleHBpcmUgWy0tZXhwaXJlPTx0aW1lPl0gWy0tZXhwaXJlLXVucmVhY2hhYmxlPTx0aW1lPl0gWy0tIgorInJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tc3RhbGUtZml4XSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdIFstLWFsbF0gIgorIjxyZWZzPi4uLiIKK21zZ3N0ciAiIgorImdpdCByZWZsb2cgZXhwaXJlIFstLWV4cGlyZT08dGVtcG8+XSBbLS1leHBpcmUtdW5yZWFjaGFibGU9PHRlbXBvPl0gWy0tIgorInJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tc3RhbGUtZml4XSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdIFstLWFsbF0gIgorIjxyaWZlcmltZW50aT4uLi4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MjIKK21zZ2lkICIiCisiZ2l0IHJlZmxvZyBkZWxldGUgWy0tcmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdICIKKyI8cmVmcz4uLi4iCittc2dzdHIgIiIKKyJnaXQgcmVmbG9nIGRlbGV0ZSBbLS1yZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gIgorIjxyaWZlcmltZW50aT4uLi4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MjUKK21zZ2lkICJnaXQgcmVmbG9nIGV4aXN0cyA8cmVmPiIKK21zZ3N0ciAiZ2l0IHJlZmxvZyBleGlzdHMgPHJpZmVyaW1lbnRvPiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo1NjggYnVpbHRpbi9yZWZsb2cuYzo1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0aW1lc3RhbXAiCittc2dzdHIgIiclcycgbm9uIMOoIHVuIHRpbWVzdGFtcCB2YWxpZG8iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hcmtpbmcgcmVhY2hhYmxlIG9iamVjdHMuLi4iCittc2dzdHIgIkNvbnRyYXNzZWdubyBnbGkgb2dnZXR0aSByYWdnaXVuZ2liaWxpLi4uIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwb2ludHMgbm93aGVyZSEiCittc2dzdHIgIiVzIG5vbiBwdW50YSBhIG5pZW50ZSEiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6Njk2Cittc2dpZCAibm8gcmVmbG9nIHNwZWNpZmllZCB0byBkZWxldGUiCittc2dzdHIgIm5lc3N1biByZWdpc3RybyByaWZlcmltZW50aSBkYSBlbGltaW5hcmUgc3BlY2lmaWNhdG8iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHJlZmxvZzogJXMiCittc2dzdHIgIm5vbiDDqCB1biByZWdpc3RybyByaWZlcmltZW50aTogJXMiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzEwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHJlZmxvZyBmb3IgJyVzJyIKK21zZ3N0ciAibG9nIHJpZmVyaW1lbnRpIG5vbiBlc2lzdGVudGUgcGVyICclcyciCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzU2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmIGZvcm1hdDogJXMiCittc2dzdHIgImZvcm1hdG8gcmlmZXJpbWVudG8gbm9uIHZhbGlkbzogJXMiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzY1Cittc2dpZCAiZ2l0IHJlZmxvZyBbIHNob3cgfCBleHBpcmUgfCBkZWxldGUgfCBleGlzdHMgXSIKK21zZ3N0ciAiZ2l0IHJlZmxvZyBbIHNob3cgfCBleHBpcmUgfCBkZWxldGUgfCBleGlzdHMgXSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNworbXNnaWQgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE4Cittc2dpZCAiIgorImdpdCByZW1vdGUgYWRkIFstdCA8YnJhbmNoPl0gWy1tIDxtYXN0ZXI+XSBbLWZdIFstLXRhZ3MgfCAtLW5vLXRhZ3NdIFstLSIKKyJtaXJyb3I9PGZldGNofHB1c2g+XSA8bmFtZT4gPHVybD4iCittc2dzdHIgIiIKKyJnaXQgcmVtb3RlIGFkZCBbLXQgPGJyYW5jaD5dIFstbSA8bWFzdGVyPl0gWy1mXSBbLS10YWdzIHwgLS1uby10YWdzXSBbLS0iCisibWlycm9yPTxmZXRjaHxwdXNoPl0gPG5vbWU+IDxVUkw+IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6MzkKK21zZ2lkICJnaXQgcmVtb3RlIHJlbmFtZSA8b2xkPiA8bmV3PiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSByZW5hbWUgPHZlY2NoaW8+IDxudW92bz4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjAgYnVpbHRpbi9yZW1vdGUuYzo0NAorbXNnaWQgImdpdCByZW1vdGUgcmVtb3ZlIDxuYW1lPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSByZW1vdmUgPG5vbWU+IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjIxIGJ1aWx0aW4vcmVtb3RlLmM6NDkKK21zZ2lkICJnaXQgcmVtb3RlIHNldC1oZWFkIDxuYW1lPiAoLWEgfCAtLWF1dG8gfCAtZCB8IC0tZGVsZXRlIHwgPGJyYW5jaD4pIgorbXNnc3RyICJnaXQgcmVtb3RlIHNldC1oZWFkIDxub21lPiAoLWEgfCAtLWF1dG8gfCAtZCB8IC0tZGVsZXRlIHwgPGJyYW5jaD4pIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjIyCittc2dpZCAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHNob3cgWy1uXSA8bmFtZT4iCittc2dzdHIgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSBzaG93IFstbl0gPG5vbWU+IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjIzCittc2dpZCAiZ2l0IHJlbW90ZSBwcnVuZSBbLW4gfCAtLWRyeS1ydW5dIDxuYW1lPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBwcnVuZSBbLW4gfCAtLWRyeS1ydW5dIDxub21lPiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyNAorbXNnaWQgIiIKKyJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gdXBkYXRlIFstcCB8IC0tcHJ1bmVdIFsoPGdyb3VwPiB8IDxyZW1vdGU+KS4uLl0iCittc2dzdHIgIiIKKyJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gdXBkYXRlIFstcCB8IC0tcHJ1bmVdIFsoPGdydXBwbz4gfCA8cmVtb3RvPikuLi5dIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjI1Cittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgWy0tYWRkXSA8bmFtZT4gPGJyYW5jaD4uLi4iCittc2dzdHIgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIFstLWFkZF0gPG5vbWU+IDxicmFuY2g+Li4uIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjI2IGJ1aWx0aW4vcmVtb3RlLmM6NzUKK21zZ2lkICJnaXQgcmVtb3RlIGdldC11cmwgWy0tcHVzaF0gWy0tYWxsXSA8bmFtZT4iCittc2dzdHIgImdpdCByZW1vdGUgZ2V0LXVybCBbLS1wdXNoXSBbLS1hbGxdIDxub21lPiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyNyBidWlsdGluL3JlbW90ZS5jOjgwCittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIFstLXB1c2hdIDxuYW1lPiA8bmV3dXJsPiBbPG9sZHVybD5dIgorbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgWy0tcHVzaF0gPG5vbWU+IDxudW92byBVUkw+IFs8dmVjY2hpbyBVUkw+XSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyOCBidWlsdGluL3JlbW90ZS5jOjgxCittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tYWRkIDxuYW1lPiA8bmV3dXJsPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tYWRkIDxub21lPiA8bnVvdm8gVVJMPiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyOSBidWlsdGluL3JlbW90ZS5jOjgyCittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDxuYW1lPiA8dXJsPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDxub21lPiA8VVJMPiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzozNAorbXNnaWQgImdpdCByZW1vdGUgYWRkIFs8b3B0aW9ucz5dIDxuYW1lPiA8dXJsPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBhZGQgWzxvcHppb25pPl0gPG5vbWU+IDxVUkw+IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjU0Cittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgPG5hbWU+IDxicmFuY2g+Li4uIgorbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyA8bm9tZT4gPGJyYW5jaD4uLi4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NTUKK21zZ2lkICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyAtLWFkZCA8bmFtZT4gPGJyYW5jaD4uLi4iCittc2dzdHIgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIC0tYWRkIDxub21lPiA8YnJhbmNoPi4uLiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo2MAorbXNnaWQgImdpdCByZW1vdGUgc2hvdyBbPG9wdGlvbnM+XSA8bmFtZT4iCittc2dzdHIgImdpdCByZW1vdGUgc2hvdyBbPG9wemlvbmk+XSA8bm9tZT4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjUKK21zZ2lkICJnaXQgcmVtb3RlIHBydW5lIFs8b3B0aW9ucz5dIDxuYW1lPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBwcnVuZSBbPG9wemlvbmk+XSA8bm9tZT4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzAKK21zZ2lkICJnaXQgcmVtb3RlIHVwZGF0ZSBbPG9wdGlvbnM+XSBbPGdyb3VwPiB8IDxyZW1vdGU+XS4uLiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSB1cGRhdGUgWzxvcHppb25pPl0gWzxncnVwcG8+IHwgPHJlbW90bz5dLi4uIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVwZGF0aW5nICVzIgogbXNnc3RyICJBZ2dpb3JuYW1lbnRvIGRpICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzEKIG1zZ2lkICIiCiAiLS1taXJyb3IgaXMgZGFuZ2Vyb3VzIGFuZCBkZXByZWNhdGVkOyBwbGVhc2VcbiIKICJcdCB1c2UgLS1taXJyb3I9ZmV0Y2ggb3IgLS1taXJyb3I9cHVzaCBpbnN0ZWFkIgpAQCAtMzk3MCwxMDYgKzE5MjY5LDEyNSBAQAogIi0tbWlycm9yIMOoIHBlcmljb2xvc28gZSBkZXByZWNhdG87IHBlciBmYXZvcmVcbiIKICJcdCB1c2EgaW52ZWNlIC0tbWlycm9yLWZldGNoIG8gLS1taXJyb3ItcHVzaCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gbWlycm9yIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAiYXJnb21lbnRvIGRpIG1pcnJvciBzY29ub3NjaXV0bzogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg1CisjOiBidWlsdGluL3JlbW90ZS5jOjE2NAorbXNnaWQgImZldGNoIHRoZSByZW1vdGUgYnJhbmNoZXMiCittc2dzdHIgInJlY3VwZXJhIGkgYnJhbmNoIHJlbW90aSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjYKK21zZ2lkICJpbXBvcnQgYWxsIHRhZ3MgYW5kIGFzc29jaWF0ZWQgb2JqZWN0cyB3aGVuIGZldGNoaW5nIgorbXNnc3RyICJpbXBvcnRhIHR1dHRpIGkgdGFnIGUgZ2xpIG9nZ2V0dGkgYXNzb2NpYXRpIGR1cmFudGUgaWwgcmVjdXBlcm8iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY5Cittc2dpZCAib3IgZG8gbm90IGZldGNoIGFueSB0YWcgYXQgYWxsICgtLW5vLXRhZ3MpIgorbXNnc3RyICJvIG5vbiByZWN1cGVyYXJlIGFsY3VuIHRhZyAoLS1uby10YWdzKSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNzEKK21zZ2lkICJicmFuY2goZXMpIHRvIHRyYWNrIgorbXNnc3RyICJicmFuY2ggZGEgdHJhY2NpYXJlIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MgorbXNnaWQgIm1hc3RlciBicmFuY2giCittc2dzdHIgImJyYW5jaCBtYXN0ZXIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTc0Cittc2dpZCAic2V0IHVwIHJlbW90ZSBhcyBhIG1pcnJvciB0byBwdXNoIHRvIG9yIGZldGNoIGZyb20iCittc2dzdHIgIiIKKyJpbXBvc3RhIGlsIHJlbW90byBjb21lIG1pcnJvciBzdSBjdWkgZXNlZ3VpcmUgcHVzaCBvIGRhIGN1aSByZWN1cGVyYXJlIGRhdGkiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg2CiBtc2dpZCAic3BlY2lmeWluZyBhIG1hc3RlciBicmFuY2ggbWFrZXMgbm8gc2Vuc2Ugd2l0aCAtLW1pcnJvciIKIG1zZ3N0ciAic3BlY2lmaWNhcmUgdW4gYnJhbmNoIG1hc3RlciBjb24gLS1taXJyb3Igbm9uIGhhIHNlbnNvIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE4NworIzogYnVpbHRpbi9yZW1vdGUuYzoxODgKIG1zZ2lkICJzcGVjaWZ5aW5nIGJyYW5jaGVzIHRvIHRyYWNrIG1ha2VzIHNlbnNlIG9ubHkgd2l0aCBmZXRjaCBtaXJyb3JzIgogbXNnc3RyICIiCisic3BlY2lmaWNhcmUgaSBicmFuY2ggZGEgdHJhY2NpYXJlIGhhIHNlbnNvIHNvbG8gY29uIGkgbWlycm9yIGRhIGN1aSAiCisicmVjdXBlcmFyZSBkYXRpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE5NSBidWlsdGluL3JlbW90ZS5jOjY0NgorIzogYnVpbHRpbi9yZW1vdGUuYzoxOTUgYnVpbHRpbi9yZW1vdGUuYzo2OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3RlICVzIGFscmVhZHkgZXhpc3RzLiIKIG1zZ3N0ciAiaWwgcmVtb3RvICVzIGVzaXN0ZSBnacOgLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOTkgYnVpbHRpbi9yZW1vdGUuYzo2NTAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk5IGJ1aWx0aW4vcmVtb3RlLmM6NzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVtb3RlIG5hbWUiCiBtc2dzdHIgIiclcycgbm9uIMOoIHVuIG5vbWUgZGkgcmVtb3RvIHZhbGlkbyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNDMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzZXR1cCBtYXN0ZXIgJyVzJyIKLW1zZ3N0ciAiTm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBjb25maWd1cmFyZSBpbCBtYXN0ZXIgJyVzJyIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgY29uZmlndXJhcmUgaWwgbWFzdGVyICclcyciCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6Mjk5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIm1vcmUgdGhhbiBvbmUgJXMiCi1tc2dzdHIgInBpw7kgZGkgdW4gJXMiCi0KLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MzM5CisjOiBidWlsdGluL3JlbW90ZS5jOjM1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZ2V0IGZldGNoIG1hcCBmb3IgcmVmc3BlYyAlcyIKIG1zZ3N0ciAiIgorIkltcG9zc2liaWxlIG90dGVuZXJlIGxhIG1hcHBhIGRpIHJlY3VwZXJvIHBlciBsbyBzcGVjaWZpY2F0b3JlIHJpZmVyaW1lbnRvICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjQ0MCBidWlsdGluL3JlbW90ZS5jOjQ0OAorIzogYnVpbHRpbi9yZW1vdGUuYzo0NTMgYnVpbHRpbi9yZW1vdGUuYzo0NjEKIG1zZ2lkICIobWF0Y2hpbmcpIgogbXNnc3RyICIoY29ycmlzcG9uZGVudGUpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjQ1MgorIzogYnVpbHRpbi9yZW1vdGUuYzo0NjUKIG1zZ2lkICIoZGVsZXRlKSIKIG1zZ3N0ciAiKGVsaW1pbmEpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjU5NSBidWlsdGluL3JlbW90ZS5jOjYwMSBidWlsdGluL3JlbW90ZS5jOjYwNworIzogYnVpbHRpbi9yZW1vdGUuYzo2NTMKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IGFwcGVuZCAnJXMnIHRvICclcyciCi1tc2dzdHIgIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgYWdnaXVuZ2VyZSAnJXMnIGEgJyVzJyIKK21zZ2lkICJjb3VsZCBub3Qgc2V0ICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGltcG9zdGFyZSAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjYzOSBidWlsdGluL3JlbW90ZS5jOjc5MiBidWlsdGluL3JlbW90ZS5jOjg5MAorIzogYnVpbHRpbi9yZW1vdGUuYzo2NTgKICMsIGMtZm9ybWF0Ci1tc2dpZCAiTm8gc3VjaCByZW1vdGU6ICVzIgotbXNnc3RyICJSZW1vdGUgbm9uIGVzaXN0ZW50ZTogJXMiCittc2dpZCAiIgorIlRoZSAlcyBjb25maWd1cmF0aW9uIHJlbW90ZS5wdXNoRGVmYXVsdCBpbjpcbiIKKyJcdCVzOiVkXG4iCisibm93IG5hbWVzIHRoZSBub24tZXhpc3RlbnQgcmVtb3RlICclcyciCittc2dzdHIgIiIKKyJMYSBjb25maWd1cmF6aW9uZSByZW1vdGUucHVzaERlZmF1bHQgJXMgaW46XG4iCisiXHQlczolZFxuIgorIm9yYSBkw6AgaWwgbm9tZSBhbCByZW1vdG8gaW5lc2lzdGVudGUgJyVzJyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NTYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6Njg5IGJ1aWx0aW4vcmVtb3RlLmM6ODMyIGJ1aWx0aW4vcmVtb3RlLmM6OTQwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHN1Y2ggcmVtb3RlOiAnJXMnIgorbXNnc3RyICJSZW1vdG8gbm9uIGVzaXN0ZW50ZTogJyVzJyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo3MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbmFtZSBjb25maWcgc2VjdGlvbiAnJXMnIHRvICclcyciCi1tc2dzdHIgIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgcmlub21pbmFyZSBsYSBzZXppb25lIGRpIGNvbmZpZ3VyYXppb25lIGRhICclcycgaW4gJyVzJyIKK21zZ3N0ciAiIgorIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgcmlkZW5vbWluYXJlIGxhIHNlemlvbmUgZGkgY29uZmlndXJhemlvbmUgZGEgJyVzJyBpbiAiCisiJyVzJyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NjIgYnVpbHRpbi9yZW1vdGUuYzo3OTkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IHJlbW92ZSBjb25maWcgc2VjdGlvbiAnJXMnIgotbXNnc3RyICJOb24gw6ggc3RhdG8gcG9zc2liaWxlIHJpbXVvdmVyZSBsYSBzZXppb25lIGRpIGNvbmZpZ3VyYXppb25lICclcyciCi0KLSM6IGJ1aWx0aW4vcmVtb3RlLmM6Njc3CisjOiBidWlsdGluL3JlbW90ZS5jOjcyNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm90IHVwZGF0aW5nIG5vbi1kZWZhdWx0IGZldGNoIHJlZnNwZWNcbiIKICJcdCVzXG4iCiAiXHRQbGVhc2UgdXBkYXRlIHRoZSBjb25maWd1cmF0aW9uIG1hbnVhbGx5IGlmIG5lY2Vzc2FyeS4iCiBtc2dzdHIgIiIKKyJOb24gYWdnaW9ybm8gbG8gc3BlY2lmaWNhdG9yZSByaWZlcmltZW50byBkaSByZWN1cGVybyBub24gcHJlZGVmaW5pdG9cbiIKKyJcdCVzXG4iCisiXHRBZ2dpb3JuYSBsYSBjb25maWd1cmF6aW9uZSBtYW51YWxtZW50ZSBzZSBuZWNlc3NhcmlvLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2ODMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IGFwcGVuZCAnJXMnIgotbXNnc3RyICIiCi0KLSM6IGJ1aWx0aW4vcmVtb3RlLmM6Njk0Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkNvdWxkIG5vdCBzZXQgJyVzJyIKLW1zZ3N0ciAiTm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBpbXBvc3RhcmUgJyVzJyIKLQotIzogYnVpbHRpbi9yZW1vdGUuYzo3MTYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzY2CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbGV0aW5nICclcycgZmFpbGVkIgogbXNnc3RyICJlbGltaW5hemlvbmUgZGkgJyVzJyBub24gcml1c2NpdGEiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NzUwCisjOiBidWlsdGluL3JlbW90ZS5jOjgwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjcmVhdGluZyAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiY3JlYXppb25lIGRpICclcycgbm9uIHJpdXNjaXRhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjc2NAotIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIGJyYW5jaCAlcyIKLW1zZ3N0ciAiTm9uIMOoIHN0YXRvIHBvc3NpYmlsZSByaW11b3ZlcmUgaWwgYnJhbmNoICVzIgotCi0jOiBidWlsdGluL3JlbW90ZS5jOjgzNAorIzogYnVpbHRpbi9yZW1vdGUuYzo4NzYKIG1zZ2lkICIiCiAiTm90ZTogQSBicmFuY2ggb3V0c2lkZSB0aGUgcmVmcy9yZW1vdGVzLyBoaWVyYXJjaHkgd2FzIG5vdCByZW1vdmVkO1xuIgogInRvIGRlbGV0ZSBpdCwgdXNlOiIKQEAgLTQwNzksMTI4NCArMTkzOTcsNjE1OSBAQAogbXNnc3RyWzBdICIiCiAiTm90YTogdW4gYnJhbmNoIGFsIGRpIGZ1b3JpIGRlbGxhIGdlcmFyY2hpYSByZWZzL3JlbW90ZXMvIG5vbiDDqCBzdGF0byAiCiAiZWxpbWluYXRvO1xuIgotInBlciBlbGltaW5hcmxvLCB1c2FyZToiCisicGVyIGVsaW1pbmFybG8sIHVzYToiCiBtc2dzdHJbMV0gIiIKICJOb3RhOiBhbGN1bmkgYnJhbmNoIGFsIGRpIGZ1b3JpIGRlbGxhIGdlcmFyY2hpYSByZWZzL3JlbW90ZXMvIG5vbiBzb25vIHN0YXRpICIKICJlbGltaW5hdGk7XG4iCi0icGVyIGVsaW1pbmFybGksIHVzYXJlOiIKKyJwZXIgZWxpbWluYXJsaSwgdXNhOiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NDMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6ODkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgY29uZmlnIHNlY3Rpb24gJyVzJyIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgcmltdW92ZXJlIGxhIHNlemlvbmUgZGkgY29uZmlndXJhemlvbmUgJyVzJyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo5OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIG5ldyAobmV4dCBmZXRjaCB3aWxsIHN0b3JlIGluIHJlbW90ZXMvJXMpIgotbXNnc3RyICIiCittc2dzdHIgIiBudW92byAoaWwgcHJvc3NpbW8gZmV0Y2ggbG8gc2FsdmVyw6AgaW4gcmVtb3Rlcy8lcykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTQ2CisjOiBidWlsdGluL3JlbW90ZS5jOjk5NgogbXNnaWQgIiB0cmFja2VkIgotbXNnc3RyICIiCittc2dzdHIgIiB0cmFjY2lhdG8iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTQ4CisjOiBidWlsdGluL3JlbW90ZS5jOjk5OAogbXNnaWQgIiBzdGFsZSAodXNlICdnaXQgcmVtb3RlIHBydW5lJyB0byByZW1vdmUpIgotbXNnc3RyICIgdmVjY2hpbyAodXNhcmUgJ2dpdCByZW1vdGUgcHJ1bmUnIHBlciByaW11b3ZlcmxvKSIKK21zZ3N0ciAiIHZlY2NoaW8gKHVzYSAnZ2l0IHJlbW90ZSBwcnVuZScgcGVyIHJpbXVvdmVybG8pIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk1MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDAwCiBtc2dpZCAiID8/PyIKLW1zZ3N0ciAiPz8/IgorbXNnc3RyICIgPz8/IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk5MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgYnJhbmNoLiVzLm1lcmdlOyBjYW5ub3QgcmViYXNlIG9udG8gPiAxIGJyYW5jaCIKIG1zZ3N0ciAiIgotImJyYW5jaC4lcy5tZXJnZSBub24gdmFsaWRvOyBpbXBvc3NpYmlsZSBlc2VndWlyZSBpbCByZWJhc2Ugc3UgPiAxIGJyYW5jaCIKKyJ2YWxvcmUgYnJhbmNoLiVzLm1lcmdlIG5vbiB2YWxpZG87IGltcG9zc2liaWxlIGVzZWd1aXJlIGlsIHJlYmFzZSBzdSBwacO5IGRpICIKKyJ1biBicmFuY2giCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTk4CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicmViYXNlcyBpbnRlcmFjdGl2ZWx5IG9udG8gcmVtb3RlICVzIgorbXNnc3RyICJyZWJhc2UgaW50ZXJhdHRpdm8gc3VsIHJlbW90byAlcyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMDUyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYmFzZXMgaW50ZXJhY3RpdmVseSAod2l0aCBtZXJnZXMpIG9udG8gcmVtb3RlICVzIgorbXNnc3RyICJyZWJhc2UgaW50ZXJhdHRpdm8gKGNvbiBtZXJnZSkgc3VsIHJlbW90byAlcyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYmFzZXMgb250byByZW1vdGUgJXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAicmViYXNlIHN1bCByZW1vdG8gJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAwMQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiBtZXJnZXMgd2l0aCByZW1vdGUgJXMiCiBtc2dzdHIgIiBtZXJnZSBjb24gaWwgcmVtb3RlICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMDIKLW1zZ2lkICIgICAgYW5kIHdpdGggcmVtb3RlIgotbXNnc3RyICIgICAgZSBjb24gaWwgcmVtb3RlIgotCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMDQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJtZXJnZXMgd2l0aCByZW1vdGUgJXMiCiBtc2dzdHIgIm1lcmdlIGNvbiBpbCByZW1vdGUgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAwNQotbXNnaWQgIiAgIGFuZCB3aXRoIHJlbW90ZSIKLW1zZ3N0ciAiIgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgICAgYW5kIHdpdGggcmVtb3RlICVzXG4iCittc2dzdHIgIiUtKnMgICAgZSBjb24gaWwgcmVtb3RvICVzXG4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTA4CiBtc2dpZCAiY3JlYXRlIgogbXNnc3RyICJjcmVhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExMQogbXNnaWQgImRlbGV0ZSIKIG1zZ3N0ciAiZWxpbWluYSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU4CisjOiBidWlsdGluL3JlbW90ZS5jOjExMTUKIG1zZ2lkICJ1cCB0byBkYXRlIgogbXNnc3RyICJhZ2dpb3JuYXRvIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNjEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExOAogbXNnaWQgImZhc3QtZm9yd2FyZGFibGUiCi1tc2dzdHIgIiIKK21zZ3N0ciAiZmFzdCBmb3J3YXJkIHBvc3NpYmlsZSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDY0CisjOiBidWlsdGluL3JlbW90ZS5jOjExMjEKIG1zZ2lkICJsb2NhbCBvdXQgb2YgZGF0ZSIKIG1zZ3N0ciAibG9jYWxlIG5vbiBhZ2dpb3JuYXRvIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNzEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBmb3JjZXMgdG8gJS0qcyAoJXMpIgotbXNnc3RyICIiCittc2dzdHIgIiAgICAlLSpzIGVzZWd1ZSB1biBhZ2dpb3JuYW1lbnRvIGZvcnphdG8gc3UgJS0qcyAoJXMpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzMQogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBwdXNoZXMgdG8gJS0qcyAoJXMpIgotbXNnc3RyICIiCittc2dzdHIgIiAgICAlLSpzIGVzZWd1ZSBpbCBwdXNoIHN1ICUtKnMgKCVzKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDc4CisjOiBidWlsdGluL3JlbW90ZS5jOjExMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICUtKnMgZm9yY2VzIHRvICVzIgotbXNnc3RyICIiCittc2dzdHIgIiAgICAlLSpzIGVzZWd1ZSB1biBhZ2dpb3JuYW1lbnRvIGZvcnphdG8gc3UgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA4MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIHB1c2hlcyB0byAlcyIKIG1zZ3N0ciAiICAgICUtKnMgZXNlZ3VlIGlsIHB1c2ggc3UgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExOAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjA2Cittc2dpZCAiZG8gbm90IHF1ZXJ5IHJlbW90ZXMiCittc2dzdHIgIm5vbiBpbnRlcnJvZ2FyZSBpIHJlbW90aSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiogcmVtb3RlICVzIgotbXNnc3RyICIqIHJlbW90ZSAlcyIKK21zZ3N0ciAiKiByZW1vdG8gJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExOQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgRmV0Y2ggVVJMOiAlcyIKLW1zZ3N0ciAiIgorbXNnc3RyICIgIFVSTCByZWN1cGVybzogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEyMCBidWlsdGluL3JlbW90ZS5jOjEyODUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIzNSBidWlsdGluL3JlbW90ZS5jOjEyNTEgYnVpbHRpbi9yZW1vdGUuYzoxMzkwCiBtc2dpZCAiKG5vIFVSTCkiCiBtc2dzdHIgIihuZXNzdW4gVVJMKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTI5IGJ1aWx0aW4vcmVtb3RlLmM6MTEzMQorIy4gVFJBTlNMQVRPUlM6IHRoZSBjb2xvbiAnOicgc2hvdWxkIGFsaWduCisjLiB3aXRoIHRoZSBvbmUgaW4gIiBGZXRjaCBVUkw6ICVzIgorIy4gdHJhbnNsYXRpb24uCisjLgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjQ5IGJ1aWx0aW4vcmVtb3RlLmM6MTI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIgIFB1c2ggIFVSTDogJXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAiICAgICAgVVJMIHB1c2g6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExMzMgYnVpbHRpbi9yZW1vdGUuYzoxMTM1IGJ1aWx0aW4vcmVtb3RlLmM6MTEzNworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjUzIGJ1aWx0aW4vcmVtb3RlLmM6MTI1NSBidWlsdGluL3JlbW90ZS5jOjEyNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBIRUFEIGJyYW5jaDogJXMiCiBtc2dzdHIgIiAgYnJhbmNoIEhFQUQ6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExMzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1MworbXNnaWQgIihub3QgcXVlcmllZCkiCittc2dzdHIgIihub24gaW50ZXJyb2dhdG8pIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTUKK21zZ2lkICIodW5rbm93bikiCittc2dzdHIgIihzY29ub3NjaXV0bykiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiICBIRUFEIGJyYW5jaCAocmVtb3RlIEhFQUQgaXMgYW1iaWd1b3VzLCBtYXkgYmUgb25lIG9mIHRoZSBmb2xsb3dpbmcpOlxuIgogbXNnc3RyICIiCiAiICBicmFuY2ggSEVBRCAobCdIRUFEIHJlbW90byDDqCBhbWJpZ3VvLCBwb3RyZWJiZSBlc3NlcmUgdW5vIGRlaSBzZWd1ZW50aSk6XG4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgUmVtb3RlIGJyYW5jaDolcyIKIG1zZ2lkX3BsdXJhbCAiICBSZW1vdGUgYnJhbmNoZXM6JXMiCiBtc2dzdHJbMF0gIiAgQnJhbmNoIHJlbW90bzolcyIKIG1zZ3N0clsxXSAiICBCcmFuY2ggcmVtb3RpOiVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNTQgYnVpbHRpbi9yZW1vdGUuYzoxMTgxCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNzQgYnVpbHRpbi9yZW1vdGUuYzoxMzAwCiBtc2dpZCAiIChzdGF0dXMgbm90IHF1ZXJpZWQpIgotbXNnc3RyICIiCittc2dzdHIgIiAoc3RhdG8gbm9uIHJpY2hpZXN0bykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE2MworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjgzCiBtc2dpZCAiICBMb2NhbCBicmFuY2ggY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dpZF9wbHVyYWwgIiAgTG9jYWwgYnJhbmNoZXMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dzdHJbMF0gIiAgQnJhbmNoIGxvY2FsZSBjb25maWd1cmF0byBwZXIgJ2dpdCBwdWxsJzoiCiBtc2dzdHJbMV0gIiAgQnJhbmNoIGxvY2FsaSBjb25maWd1cmF0aSBwZXIgJ2dpdCBwdWxsJzoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjkxCiBtc2dpZCAiICBMb2NhbCByZWZzIHdpbGwgYmUgbWlycm9yZWQgYnkgJ2dpdCBwdXNoJyIKLW1zZ3N0ciAiIgorbXNnc3RyICIgIEkgcmlmZXJpbWVudGkgbG9jYWxpIHNhcmFubm8gY29waWF0aSBkYSAnZ2l0IHB1c2gnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5NwogIywgYy1mb3JtYXQKIG1zZ2lkICIgIExvY2FsIHJlZiBjb25maWd1cmVkIGZvciAnZ2l0IHB1c2gnJXM6IgogbXNnaWRfcGx1cmFsICIgIExvY2FsIHJlZnMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdXNoJyVzOiIKIG1zZ3N0clswXSAiICBSZWYgbG9jYWxlIGNvbmZpZ3VyYXRvIHBlciAnZ2l0IHB1c2gnJXM6IgogbXNnc3RyWzFdICIgIFJlZiBsb2NhbGkgY29uZmlndXJhdGkgcGVyICdnaXQgcHVzaCclczoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIxNgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzE4Cittc2dpZCAic2V0IHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCBhY2NvcmRpbmcgdG8gcmVtb3RlIgorbXNnc3RyICJpbXBvc3RhIHJlZnMvcmVtb3Rlcy88bm9tZT4vSEVBRCBpbiBiYXNlIGFsIHJlbW90byIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzIwCittc2dpZCAiZGVsZXRlIHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCIKK21zZ3N0ciAiZWxpbWluYSByZWZzL3JlbW90ZXMvPG5vbWU+L0hFQUQiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMzNQogbXNnaWQgIkNhbm5vdCBkZXRlcm1pbmUgcmVtb3RlIEhFQUQiCiBtc2dzdHIgIkltcG9zc2liaWxlIGRldGVybWluYXJlIGwnSEVBRCByZW1vdG8iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIxOAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzM3CiBtc2dpZCAiTXVsdGlwbGUgcmVtb3RlIEhFQUQgYnJhbmNoZXMuIFBsZWFzZSBjaG9vc2Ugb25lIGV4cGxpY2l0bHkgd2l0aDoiCi1tc2dzdHIgIiIKK21zZ3N0ciAiQnJhbmNoIEhFQUQgcmVtb3RpIG11bHRpcGxpLiBTY2VnbGluZSB1bm8gZXNwbGljaXRhbWVudGUgY29uOiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjI4CisjOiBidWlsdGluL3JlbW90ZS5jOjEzNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGRlbGV0ZSAlcyIKIG1zZ3N0ciAiTm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBlbGltaW5hcmUgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIzNgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIHJlZjogJXMiCiBtc2dzdHIgIk5vbiDDqCB1biByZWYgdmFsaWRvOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjM4CisjOiBidWlsdGluL3JlbW90ZS5jOjEzNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldHVwICVzIgogbXNnc3RyICJOb24gw6ggc3RhdG8gcG9zc2liaWxlIGNvbmZpZ3VyYXJlICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIgJXMgd2lsbCBiZWNvbWUgZGFuZ2xpbmchIgotbXNnc3RyICIiCittc2dzdHIgIiAlcyBkaXZlbnRlcsOgIHBlbmRlbnRlISIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjc1CisjOiBidWlsdGluL3JlbW90ZS5jOjEzNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiICVzIGhhcyBiZWNvbWUgZGFuZ2xpbmchIgotbXNnc3RyICIiCittc2dzdHIgIiAlcyDDqCBkaXZlbnRhdG8gcGVuZGVudGUhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyODEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJQcnVuaW5nICVzIgotbXNnc3RyICIiCittc2dzdHIgIkVsaW1pbmF6aW9uZSBkaSAlcyBpbiBjb3JzbyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjgyCisjOiBidWlsdGluL3JlbW90ZS5jOjEzODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVVJMOiAlcyIKIG1zZ3N0ciAiVVJMOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjk1CisjOiBidWlsdGluL3JlbW90ZS5jOjE0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiICogW3dvdWxkIHBydW5lXSAlcyIKLW1zZ3N0ciAiIgorbXNnc3RyICIgKiBbc2FyZWJiZSBlbGltaW5hdG9dICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyOTgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQwNgogIywgYy1mb3JtYXQKIG1zZ2lkICIgKiBbcHJ1bmVkXSAlcyIKLW1zZ3N0ciAiIgorbXNnc3RyICIgKiBbZWxpbWluYXRvXSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzg3IGJ1aWx0aW4vcmVtb3RlLmM6MTQ2MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNDUxCittc2dpZCAicHJ1bmUgcmVtb3RlcyBhZnRlciBmZXRjaGluZyIKK21zZ3N0ciAiZWxpbWluYSByZW1vdGkgZG9wbyBpbCBmZXRjaCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTE0IGJ1aWx0aW4vcmVtb3RlLmM6MTU2OCBidWlsdGluL3JlbW90ZS5jOjE2MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZW1vdGUgJyVzJyIKIG1zZ3N0ciAiUmVtb3RlICclcycgbm9uIGVzaXN0ZW50ZSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDE0CisjOiBidWlsdGluL3JlbW90ZS5jOjE1MzAKK21zZ2lkICJhZGQgYnJhbmNoIgorbXNnc3RyICJhZ2dpdW5naSBicmFuY2giCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzNwogbXNnaWQgIm5vIHJlbW90ZSBzcGVjaWZpZWQiCiBtc2dzdHIgIm5lc3N1biByZW1vdGUgc3BlY2lmaWNhdG8iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ0NworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTU0Cittc2dpZCAicXVlcnkgcHVzaCBVUkxzIHJhdGhlciB0aGFuIGZldGNoIFVSTHMiCittc2dzdHIgImludGVycm9nYSBnbGkgVVJMIHBlciBpbCBwdXNoIGFuemljaMOpIGdsaSBVUkwgcGVyIGlsIGZldGNoIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE1NTYKK21zZ2lkICJyZXR1cm4gYWxsIFVSTHMiCittc2dzdHIgInJlc3RpdHVpc2NpIHR1dHRpIGdsaSBVUkwiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU4NAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBVUkxzIGNvbmZpZ3VyZWQgZm9yIHJlbW90ZSAnJXMnIgorbXNnc3RyICJuZXNzdW4gVVJMIGNvbmZpZ3VyYXRvIHBlciBpbCByZW1vdG8gJyVzJyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEwCittc2dpZCAibWFuaXB1bGF0ZSBwdXNoIFVSTHMiCittc2dzdHIgIm1hbmlwb2xhIGdsaSBVUkwgcGVyIGlsIHB1c2giCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYxMgorbXNnaWQgImFkZCBVUkwiCittc2dzdHIgImFnZ2l1bmdpIFVSTCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjE0Cittc2dpZCAiZGVsZXRlIFVSTHMiCittc2dzdHIgImVsaW1pbmEgVVJMIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE2MjEKIG1zZ2lkICItLWFkZCAtLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tYWRkIC0tZGVsZXRlIG5vbiBoYSBzZW5zbyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDg3CisjOiBidWlsdGluL3JlbW90ZS5jOjE2NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBvbGQgVVJMIHBhdHRlcm46ICVzIgotbXNnc3RyICIiCittc2dzdHIgIlBhdHRlcm4gVVJMIHZlY2NoaW8gbm9uIHZhbGlkbzogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ5NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggVVJMIGZvdW5kOiAlcyIKIG1zZ3N0ciAiTmVzc3VuYSBVUkwgdHJvdmF0YTogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ5NworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjcwCiBtc2dpZCAiV2lsbCBub3QgZGVsZXRlIGFsbCBub24tcHVzaCBVUkxzIgorbXNnc3RyICJOb24gZWxpbWluZXLDsiB0dXR0aSBnbGkgVVJMIG5vbiBwdXNoIgorCisjOiBidWlsdGluL3JlcGFjay5jOjIzCittc2dpZCAiZ2l0IHJlcGFjayBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHJlcGFjayBbPG9wemlvbmk+XSIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyOAorbXNnaWQgIiIKKyJJbmNyZW1lbnRhbCByZXBhY2tzIGFyZSBpbmNvbXBhdGlibGUgd2l0aCBiaXRtYXAgaW5kZXhlcy4gIFVzZVxuIgorIi0tbm8td3JpdGUtYml0bWFwLWluZGV4IG9yIGRpc2FibGUgdGhlIHBhY2sud3JpdGViaXRtYXBzIGNvbmZpZ3VyYXRpb24uIgogbXNnc3RyICIiCisiSSByZXBhY2sgaW5jcmVtZW50YWxpIG5vbiBzb25vIGNvbXBhdGliaWxpIGNvbiBnbGkgaW5kaWNpIGJpdG1hcC5cbiIKKyJVc2EgLS1uby13cml0ZS1iaXRtYXAtaW5kZXggbyBkaXNhYmlsaXRhIGwnb3B6aW9uZSBkaSBjb25maWd1cmF6aW9uZVxuIgorInBhY2sud3JpdGViaXRtYXBzLiIKKworIzogYnVpbHRpbi9yZXBhY2suYzoxOTEKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgYXZ2aWFyZSBwYWNrLW9iamVjdHMgcGVyIGVzZWd1aXJlIGlsIHJlcGFjayBkZWdsaSBvZ2dldHRpICIKKyJwcm9tZXR0ZW50aSIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyMzAgYnVpbHRpbi9yZXBhY2suYzo0MTYKK21zZ2lkICJyZXBhY2s6IEV4cGVjdGluZyBmdWxsIGhleCBvYmplY3QgSUQgbGluZXMgb25seSBmcm9tIHBhY2stb2JqZWN0cy4iCittc2dzdHIgIiIKKyJyZXBhY2s6IERhIHBhY2stb2JqZWN0cyBtaSBhdHRlbmRldm8gc29sbyByaWdoZSBjb24gZ2xpIElEIGNvbXBsZXRpICIKKyJlc2FkZWNpbWFsaSBkZWdsaSBvZ2dldHRpLiIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyNTQKK21zZ2lkICJjb3VsZCBub3QgZmluaXNoIHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIHBvcnRhcmUgYSB0ZXJtaW5lIHBhY2stb2JqZWN0cyBwZXIgZXNlZ3VpcmUgaWwgcmVwYWNrIGRlZ2xpICIKKyJvZ2dldHRpIHByb21ldHRlbnRpIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI5MgorbXNnaWQgInBhY2sgZXZlcnl0aGluZyBpbiBhIHNpbmdsZSBwYWNrIgorbXNnc3RyICJlc2VndWkgaWwgcGFjayBkaSB0dXR0byBpbiB1biBzaW5nb2xvIHBhY2siCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk0Cittc2dpZCAic2FtZSBhcyAtYSwgYW5kIHR1cm4gdW5yZWFjaGFibGUgb2JqZWN0cyBsb29zZSIKK21zZ3N0ciAiY29tZSAtYSBlIHJlbmRpIHNjaW9sdGkgZ2xpIG9nZ2V0dGkgbm9uIHJhZ2dpdW5naWJpbGkiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk3Cittc2dpZCAicmVtb3ZlIHJlZHVuZGFudCBwYWNrcywgYW5kIHJ1biBnaXQtcHJ1bmUtcGFja2VkIgorbXNnc3RyICJyaW11b3ZpIGkgcGFjayByaWRvbmRhbnRpIGVkIGVzZWd1aSBnaXQtcHJ1bmUtcGFja2VkIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI5OQorbXNnaWQgInBhc3MgLS1uby1yZXVzZS1kZWx0YSB0byBnaXQtcGFjay1vYmplY3RzIgorbXNnc3RyICJmb3JuaXNjaSBsJ29wemlvbmUgLS1uby1yZXVzZS1kZWx0YSBhIGdpdC1wYWNrLW9iamVjdHMiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCittc2dpZCAicGFzcyAtLW5vLXJldXNlLW9iamVjdCB0byBnaXQtcGFjay1vYmplY3RzIgorbXNnc3RyICJmb3JuaXNjaSBsJ29wemlvbmUgLS1uby1yZXVzZS1vYmplY3QgYSBnaXQtcGFjay1vYmplY3RzIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMwMworbXNnaWQgImRvIG5vdCBydW4gZ2l0LXVwZGF0ZS1zZXJ2ZXItaW5mbyIKK21zZ3N0ciAibm9uIGVzZWd1aXJlIGdpdC11cGRhdGUtc2VydmVyLWluZm8iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA2Cittc2dpZCAicGFzcyAtLWxvY2FsIHRvIGdpdC1wYWNrLW9iamVjdHMiCittc2dzdHIgImZvcm5pc2NpIGwnb3B6aW9uZSAtLWxvY2FsIGEgZ2l0LXBhY2stb2JqZWN0cyIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMDgKK21zZ2lkICJ3cml0ZSBiaXRtYXAgaW5kZXgiCittc2dzdHIgInNjcml2aSBsJ2luZGljZSBiaXRtYXAiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEwCittc2dpZCAicGFzcyAtLWRlbHRhLWlzbGFuZHMgdG8gZ2l0LXBhY2stb2JqZWN0cyIKK21zZ3N0ciAiZm9ybmlzY2kgbCdvcHppb25lIC0tZGVsdGEtaXNsYW5kcyBhIGdpdC1wYWNrLW9iamVjdHMiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzExCittc2dpZCAiYXBwcm94aWRhdGUiCittc2dzdHIgImRhdGEgYXBwcm9zc2ltYXRpdmEiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEyCittc2dpZCAid2l0aCAtQSwgZG8gbm90IGxvb3NlbiBvYmplY3RzIG9sZGVyIHRoYW4gdGhpcyIKK21zZ3N0ciAiY29uIC1BLCBub24gcmVuZGVyZSBzY2lvbHRpIGdsaSBvZ2dldHRpIG1lbm8gcmVjZW50aSBkaSBxdWVzdGEgZGF0YSIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMTQKK21zZ2lkICJ3aXRoIC1hLCByZXBhY2sgdW5yZWFjaGFibGUgb2JqZWN0cyIKK21zZ3N0ciAiY29uIC1hLCBlc2VndWkgaWwgcmVwYWNrIGRlZ2xpIG9nZ2V0dGkgbm9uIHJhZ2dpdW5naWJpbGkiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE2Cittc2dpZCAic2l6ZSBvZiB0aGUgd2luZG93IHVzZWQgZm9yIGRlbHRhIGNvbXByZXNzaW9uIgorbXNnc3RyICJkaW1lbnNpb25lIGRlbGxhIGZpbmVzdHJhIHVzYXRhIHBlciBsYSBjb21wcmVzc2lvbmUgZGVsdGEiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE3IGJ1aWx0aW4vcmVwYWNrLmM6MzIzCittc2dpZCAiYnl0ZXMiCittc2dzdHIgImJ5dGUiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE4Cittc2dpZCAic2FtZSBhcyB0aGUgYWJvdmUsIGJ1dCBsaW1pdCBtZW1vcnkgc2l6ZSBpbnN0ZWFkIG9mIGVudHJpZXMgY291bnQiCittc2dzdHIgIiIKKyJjb21lIHNvcHJhLCBtYSBsaW1pdGEgbGUgZGltZW5zaW9uaSBkZWxsYSBtZW1vcmlhIGludmVjZSBkZWwgbnVtZXJvIGRpIHZvY2kiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIwCittc2dpZCAibGltaXRzIHRoZSBtYXhpbXVtIGRlbHRhIGRlcHRoIgorbXNnc3RyICJsaW1pdGEgbGEgcHJvZm9uZGl0w6AgbWFzc2ltYSBkZWkgZGVsdGEiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIyCittc2dpZCAibGltaXRzIHRoZSBtYXhpbXVtIG51bWJlciBvZiB0aHJlYWRzIgorbXNnc3RyICJsaW1pdGEgaWwgbnVtZXJvIG1hc3NpbW8gZGkgdGhyZWFkIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMyNAorbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIHBhY2tmaWxlIgorbXNnc3RyICJkaW1lbnNpb25lIG1hc3NpbWEgZGkgb2duaSBmaWxlIHBhY2siCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI2Cittc2dpZCAicmVwYWNrIG9iamVjdHMgaW4gcGFja3MgbWFya2VkIHdpdGggLmtlZXAiCittc2dzdHIgImVzZWd1aSBpbCByZXBhY2sgZGVnbGkgb2dnZXR0aSBuZWkgcGFjayBjb250cmFzc2VnbmF0aSBjb24gLmtlZXAiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI4Cittc2dpZCAiZG8gbm90IHJlcGFjayB0aGlzIHBhY2siCittc2dzdHIgIm5vbiBlc2VndWlyZSBpbCByZXBhY2sgZGkgcXVlc3RvIHBhY2siCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzM4Cittc2dpZCAiY2Fubm90IGRlbGV0ZSBwYWNrcyBpbiBhIHByZWNpb3VzLW9iamVjdHMgcmVwbyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZWxpbWluYXJlIGkgcGFjayBpbiB1biByZXBvc2l0b3J5ICdvZ2dldHRpIHByZXppb3NpJyIKKworIzogYnVpbHRpbi9yZXBhY2suYzozNDIKK21zZ2lkICItLWtlZXAtdW5yZWFjaGFibGUgYW5kIC1BIGFyZSBpbmNvbXBhdGlibGUiCittc2dzdHIgIi0ta2VlcC11bnJlYWNoYWJsZSBlIC1BIG5vbiBzb25vIGNvbXBhdGliaWxpIgorCisjOiBidWlsdGluL3JlcGFjay5jOjQyNQorbXNnaWQgIk5vdGhpbmcgbmV3IHRvIHBhY2suIgorbXNnc3RyICJOb24gY2kgc29ubyBvZ2dldHRpIG51b3ZpIGRpIGN1aSBlc2VndWlyZSBpbCBwYWNrLiIKKworIzogYnVpbHRpbi9yZXBhY2suYzo0ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldBUk5JTkc6IFNvbWUgcGFja3MgaW4gdXNlIGhhdmUgYmVlbiByZW5hbWVkIGJ5XG4iCisiV0FSTklORzogcHJlZml4aW5nIG9sZC0gdG8gdGhlaXIgbmFtZSwgaW4gb3JkZXIgdG9cbiIKKyJXQVJOSU5HOiByZXBsYWNlIHRoZW0gd2l0aCB0aGUgbmV3IHZlcnNpb24gb2YgdGhlXG4iCisiV0FSTklORzogZmlsZS4gIEJ1dCB0aGUgb3BlcmF0aW9uIGZhaWxlZCwgYW5kIHRoZVxuIgorIldBUk5JTkc6IGF0dGVtcHQgdG8gcmVuYW1lIHRoZW0gYmFjayB0byB0aGVpclxuIgorIldBUk5JTkc6IG9yaWdpbmFsIG5hbWVzIGFsc28gZmFpbGVkLlxuIgorIldBUk5JTkc6IFBsZWFzZSByZW5hbWUgdGhlbSBpbiAlcyBtYW51YWxseTpcbiIKK21zZ3N0ciAiIgorIkFWVklTTzogQWxjdW5pIHBhY2sgaW4gdXNvIHNvbm8gc3RhdGkgcmlkZW5vbWluYXRpXG4iCisiQVZWSVNPOiBhZ2dpdW5nZW5kbyBpbCBwcmVmaXNzbyBvbGQtIGFsIGxvcm8gbm9tZVxuIgorIkFWVklTTzogcGVyIGNvbnNlbnRpcm5lIGxhIHNvc3RpdHV6aW9uZSBjb24gbGFcbiIKKyJBVlZJU086IG51b3ZhIHZlcnNpb25lIGRlbCBmaWxlLiBNYSBsJ29wZXJhemlvbmVcbiIKKyJBVlZJU086IG5vbiDDqCByaXVzY2l0YSBlIGFuY2hlIGlsIHRlbnRhdGl2byBkaVxuIgorIkFWVklTTzogcmlkZW5vbWluYXJsaSBjb24gaWwgbG9ybyBub21lIG9yaWdpbmFsZVxuIgorIkFWVklTTzogbm9uIMOoIHJpdXNjaXRvLiBSaWRlbm9taW5hbGkgbWFudWFsbWVudGVcbiIKKyJBVlZJU086IGVudHJvICVzOlxuIgorCisjOiBidWlsdGluL3JlcGFjay5jOjUzNAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICclcyciCittc2dzdHIgImVsaW1pbmF6aW9uZSBkaSAnJXMnIG5vbiByaXVzY2l0YSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjIKK21zZ2lkICJnaXQgcmVwbGFjZSBbLWZdIDxvYmplY3Q+IDxyZXBsYWNlbWVudD4iCittc2dzdHIgImdpdCByZXBsYWNlIFstZl0gPG9nZ2V0dG8+IDxvZ2dldHRvIHNvc3RpdHV0aXZvPiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjMKK21zZ2lkICJnaXQgcmVwbGFjZSBbLWZdIC0tZWRpdCA8b2JqZWN0PiIKK21zZ3N0ciAiZ2l0IHJlcGxhY2UgWy1mXSAtLWVkaXQgPG9nZ2V0dG8+IgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNAorbXNnaWQgImdpdCByZXBsYWNlIFstZl0gLS1ncmFmdCA8Y29tbWl0PiBbPHBhcmVudD4uLi5dIgorbXNnc3RyICJnaXQgcmVwbGFjZSBbLWZdIC0tZ3JhZnQgPGNvbW1pdD4gWzxnZW5pdG9yZT4uLi5dIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNQorbXNnaWQgImdpdCByZXBsYWNlIFstZl0gLS1jb252ZXJ0LWdyYWZ0LWZpbGUiCittc2dzdHIgImdpdCByZXBsYWNlIFstZl0gLS1jb252ZXJ0LWdyYWZ0LWZpbGUiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI2Cittc2dpZCAiZ2l0IHJlcGxhY2UgLWQgPG9iamVjdD4uLi4iCittc2dzdHIgImdpdCByZXBsYWNlIC1kIDxvZ2dldHRvPi4uLiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjcKK21zZ2lkICJnaXQgcmVwbGFjZSBbLS1mb3JtYXQ9PGZvcm1hdD5dIFstbCBbPHBhdHRlcm4+XV0iCittc2dzdHIgImdpdCByZXBsYWNlIFstLWZvcm1hdD08Zm9ybWF0bz5dIFstbCBbPHBhdHRlcm4+XV0iCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIHJlcGxhY2UgZm9ybWF0ICclcydcbiIKKyJ2YWxpZCBmb3JtYXRzIGFyZSAnc2hvcnQnLCAnbWVkaXVtJyBhbmQgJ2xvbmcnIgorbXNnc3RyICIiCisiZm9ybWF0byBzb3N0aXR1emlvbmUgbm9uIHZhbGlkbzogJyVzJ1xuIgorImkgZm9ybWF0aSB2YWxpZGkgc29ubyAnc2hvcnQnLCAnbWVkaXVtJyBlICdsb25nJyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInJlcGxhY2UgcmVmICclcycgbm90IGZvdW5kIgorbXNnc3RyICJyaWZlcmltZW50byBzb3N0aXR1dGl2byAnJXMnIG5vbiB0cm92YXRvIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoxNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCByZXBsYWNlIHJlZiAnJXMnIgorbXNnc3RyICJFbGltaW5hdG8gcmlmZXJpbWVudG8gc29zdGl0dXRpdm8gJyVzJyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVmIG5hbWUiCittc2dzdHIgIiclcycgbm9uIMOoIHVuIG5vbWUgcmlmZXJpbWVudG8gdmFsaWRvIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoxNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVwbGFjZSByZWYgJyVzJyBhbHJlYWR5IGV4aXN0cyIKK21zZ3N0ciAiaWwgcmlmZXJpbWVudG8gc29zdGl0dXRpdm8gJyVzJyBlc2lzdGUgZ2nDoCIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPYmplY3RzIG11c3QgYmUgb2YgdGhlIHNhbWUgdHlwZS5cbiIKKyInJXMnIHBvaW50cyB0byBhIHJlcGxhY2VkIG9iamVjdCBvZiB0eXBlICclcydcbiIKKyJ3aGlsZSAnJXMnIHBvaW50cyB0byBhIHJlcGxhY2VtZW50IG9iamVjdCBvZiB0eXBlICclcycuIgorbXNnc3RyICIiCisiR2xpIG9nZ2V0dGkgZGV2b25vIGVzc2VyZSBkZWxsbyBzdGVzc28gdGlwby5cbiIKKyInJXMnIHB1bnRhIGEgdW4gb2dnZXR0byBzb3N0aXR1aXRvIGRpIHRpcG8gJyVzJ1xuIgorIm1lbnRyZSAnJXMnIHB1bnRhIGEgdW4gb2dnZXR0byBzb3N0aXR1dGl2byBkaSB0aXBvICclcycuIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHdyaXRpbmciCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSAnJXMnIGluIHNjcml0dHVyYSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjQyCittc2dpZCAiY2F0LWZpbGUgcmVwb3J0ZWQgZmFpbHVyZSIKK21zZ3N0ciAiY2F0LWZpbGUgaGEgc2VnbmFsYXRvIHVuIGVycm9yZSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciByZWFkaW5nIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgJXMgaW4gbGV0dHVyYSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjcyCittc2dpZCAidW5hYmxlIHRvIHNwYXduIG1rdHJlZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGFuY2lhcmUgbWt0cmVlIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNzYKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmcm9tIG1rdHJlZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBkYSBta3RyZWUiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4NQorbXNnaWQgIm1rdHJlZSByZXBvcnRlZCBmYWlsdXJlIgorbXNnc3RyICJta3RyZWUgaGEgc2VnbmFsYXRvIHVuIGVycm9yZSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg5Cittc2dpZCAibWt0cmVlIGRpZCBub3QgcmV0dXJuIGFuIG9iamVjdCBuYW1lIgorbXNnc3RyICJta3RyZWUgbm9uIGhhIHJlc3RpdHVpdG8gdW4gbm9tZSBvZ2dldHRvIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBmc3RhdCBzdSAlcyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MzAzCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG9iamVjdCB0byBkYXRhYmFzZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgbCdvZ2dldHRvIG5lbCBkYXRhYmFzZSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MzIyIGJ1aWx0aW4vcmVwbGFjZS5jOjM3OCBidWlsdGluL3JlcGxhY2UuYzo0MjQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ1NAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJyVzJyIKK21zZ3N0ciAibm9tZSBvZ2dldHRvIG5vbiB2YWxpZG86ICclcyciCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IG9iamVjdCB0eXBlIGZvciAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmVjdXBlcmFyZSBpbCB0aXBvIGRlbGwnb2dnZXR0byAlcyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MzQyCittc2dpZCAiZWRpdGluZyBvYmplY3QgZmlsZSBmYWlsZWQiCittc2dzdHIgIm1vZGlmaWNhIGRlbCBmaWxlIG9nZ2V0dG8gbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzozNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3IG9iamVjdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKK21zZ3N0ciAiaWwgbnVvdm8gb2dnZXR0byDDqCBsbyBzdGVzc28gZGkgcXVlbGxvIHZlY2NoaW86ICclcyciCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjM4NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJXMgYXMgYSBjb21taXQiCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgJXMgY29tZSBjb21taXQiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgbWVyZ2V0YWcgaW4gY29tbWl0ICclcyciCittc2dzdHIgInRhZyBtZXJnZSBub24gdmFsaWRvIG5lbCBjb21taXQgJyVzJyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBtZXJnZXRhZyBpbiBjb21taXQgJyVzJyIKK21zZ3N0ciAidGFnIG1lcmdlIG1hbGZvcm1hdG8gbmVsIGNvbW1pdCAnJXMnIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9yaWdpbmFsIGNvbW1pdCAnJXMnIGNvbnRhaW5zIG1lcmdldGFnICclcycgdGhhdCBpcyBkaXNjYXJkZWQ7IHVzZSAtLWVkaXQgIgorImluc3RlYWQgb2YgLS1ncmFmdCIKK21zZ3N0ciAiIgorImlsIGNvbW1pdCBvcmlnaW5hcmlvICclcycgY29udGllbmUgaWwgdGFnIG1lcmdlICclcycgY2hlIMOoIHN0YXRvIHNjYXJ0YXRvOyAiCisidXNhIC0tZWRpdCBhbnppY2jDqSAtLWdyYWZ0IgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlIG9yaWdpbmFsIGNvbW1pdCAnJXMnIGhhcyBhIGdwZyBzaWduYXR1cmUiCittc2dzdHIgImlsIGNvbW1pdCBvcmlnaW5hcmlvICclcycgaGEgdW5hIGZpcm1hIEdQRyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDcwCittc2dpZCAidGhlIHNpZ25hdHVyZSB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIHJlcGxhY2VtZW50IGNvbW1pdCEiCittc2dzdHIgImxhIGZpcm1hIHNhcsOgIHJpbW9zc2EgbmVsIGNvbW1pdCBzb3N0aXR1dGl2byEiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgcmVwbGFjZW1lbnQgY29tbWl0IGZvcjogJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgaWwgY29tbWl0IHNvc3RpdHV0aXZvIHBlciAnJXMnIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ3JhZnQgZm9yICclcycgdW5uZWNlc3NhcnkiCittc2dzdHIgImdyYWZ0IHBlciAnJXMnIG5vbiBuZWNlc3NhcmlvIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3IGNvbW1pdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKK21zZ3N0ciAiaWwgbnVvdm8gY29tbWl0IMOoIGxvIHN0ZXNzbyBkaSBxdWVsbG8gdmVjY2hpbzogJyVzJyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb3VsZCBub3QgY29udmVydCB0aGUgZm9sbG93aW5nIGdyYWZ0KHMpOlxuIgorIiVzIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgY29udmVydGlyZSBpIHNlZ3VlbnRpIGdyYWZ0OlxuIgorIiVzIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NDgKK21zZ2lkICJsaXN0IHJlcGxhY2UgcmVmcyIKK21zZ3N0ciAiZWxlbmNhIGkgcmlmZXJpbWVudGkgc29zdGl0dXRpdmkiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0OQorbXNnaWQgImRlbGV0ZSByZXBsYWNlIHJlZnMiCittc2dzdHIgImVsaW1pbmEgaSByaWZlcmltZW50aSBzb3N0aXR1dGl2aSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUwCittc2dpZCAiZWRpdCBleGlzdGluZyBvYmplY3QiCittc2dzdHIgIm1vZGlmaWNhIGwnb2dnZXR0byBlc2lzdGVudGUiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MQorbXNnaWQgImNoYW5nZSBhIGNvbW1pdCdzIHBhcmVudHMiCittc2dzdHIgImNhbWJpYSBpIGdlbml0b3JpIGRpIHVuIGNvbW1pdCIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUyCittc2dpZCAiY29udmVydCBleGlzdGluZyBncmFmdCBmaWxlIgorbXNnc3RyICJjb252ZXJ0aSB1biBmaWxlIGdyYWZ0IGVzaXN0ZW50ZSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUzCittc2dpZCAicmVwbGFjZSB0aGUgcmVmIGlmIGl0IGV4aXN0cyIKK21zZ3N0ciAic29zdGl0dWlzY2kgaWwgcmlmZXJpbWVudG8gc2UgZXNpc3RlIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTUKK21zZ2lkICJkbyBub3QgcHJldHR5LXByaW50IGNvbnRlbnRzIGZvciAtLWVkaXQiCittc2dzdHIgIm5vbiBzdGFtcGFyZSBpIGNvbnRlbnV0aSBpbiB1biBmb3JtYXRvIGxlZ2dpYmlsZSAocGVyIC0tZWRpdCkiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NgorbXNnaWQgInVzZSB0aGlzIGZvcm1hdCIKK21zZ3N0ciAidXNhIHF1ZXN0byBmb3JtYXRvIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NjkKK21zZ2lkICItLWZvcm1hdCBjYW5ub3QgYmUgdXNlZCB3aGVuIG5vdCBsaXN0aW5nIgorbXNnc3RyICItLWZvcm1hdCBub24gcHXDsiBlc3NlcmUgdXNhdG8gcXVhbmRvIG5vbiBzaSBlbGVuY2FubyB2b2NpIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NzcKK21zZ2lkICItZiBvbmx5IG1ha2VzIHNlbnNlIHdoZW4gd3JpdGluZyBhIHJlcGxhY2VtZW50IgorbXNnc3RyICItZiBoYSBzZW5zbyBzb2xvIHNlIHNpIHN0YSBzY3JpdmVuZG8gdW4gb2dnZXR0byBzb3N0aXR1dGl2byIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTgxCittc2dpZCAiLS1yYXcgb25seSBtYWtlcyBzZW5zZSB3aXRoIC0tZWRpdCIKK21zZ3N0ciAiLS1yYXcgaGEgc2Vuc28gc29sbyBjb24gLS1lZGl0IgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1ODcKK21zZ2lkICItZCBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQiCittc2dzdHIgIi1kIHJpY2hpZWRlIGFsbWVubyB1biBhcmdvbWVudG8iCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5MworbXNnaWQgImJhZCBudW1iZXIgb2YgYXJndW1lbnRzIgorbXNnc3RyICJudW1lcm8gZGkgYXJnb21lbnRpIGVycmF0byIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTk5Cittc2dpZCAiLWUgbmVlZHMgZXhhY3RseSBvbmUgYXJndW1lbnQiCittc2dzdHIgIi1lIHJpY2hpZWRlIGVzYXR0YW1lbnRlIHVuIGFyZ29tZW50byIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA1Cittc2dpZCAiLWcgbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IgorbXNnc3RyICItZyByaWNoaWVkZSBhbG1lbm8gdW4gYXJnb21lbnRvIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo2MTEKK21zZ2lkICItLWNvbnZlcnQtZ3JhZnQtZmlsZSB0YWtlcyBubyBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb252ZXJ0LWdyYWZ0LWZpbGUgbm9uIHJpY2hpZWRlIGFyZ29tZW50aSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NjE3Cittc2dpZCAib25seSBvbmUgcGF0dGVybiBjYW4gYmUgZ2l2ZW4gd2l0aCAtbCIKK21zZ3N0ciAiY29uIC1sIHB1w7IgZXNzZXJlIHNwZWNpZmljYXRvIHNvbG8gdW4gcGF0dGVybiIKKworIzogYnVpbHRpbi9yZXJlcmUuYzoxMworbXNnaWQgImdpdCByZXJlcmUgW2NsZWFyIHwgZm9yZ2V0IDxwYXRoPi4uLiB8IHN0YXR1cyB8IHJlbWFpbmluZyB8IGRpZmYgfCBnY10iCittc2dzdHIgIiIKKyJnaXQgcmVyZXJlIFtjbGVhciB8IGZvcmdldCA8cGVyY29yc28+Li4uIHwgc3RhdHVzIHwgcmVtYWluaW5nIHwgZGlmZiB8IGdjXSIKKworIzogYnVpbHRpbi9yZXJlcmUuYzo2MAorbXNnaWQgInJlZ2lzdGVyIGNsZWFuIHJlc29sdXRpb25zIGluIGluZGV4IgorbXNnc3RyICJyZWdpc3RyYSBsZSByaXNvbHV6aW9uaSBwdWxpdGUgbmVsbCdpbmRpY2UiCisKKyM6IGJ1aWx0aW4vcmVyZXJlLmM6NzkKK21zZ2lkICInZ2l0IHJlcmVyZSBmb3JnZXQnIHdpdGhvdXQgcGF0aHMgaXMgZGVwcmVjYXRlZCIKK21zZ3N0ciAiJ2dpdCByZXJlcmUgZm9yZ2V0JyBzZW56YSBwZXJjb3JzaSDDqCBkZXByZWNhdG8iCisKKyM6IGJ1aWx0aW4vcmVyZXJlLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBnZW5lcmF0ZSBkaWZmIGZvciAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBnZW5lcmFyZSBpbCBkaWZmIHBlciAnJXMnIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzIKK21zZ2lkICIiCisiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPGNvbW1pdD5dIgorbXNnc3RyICIiCisiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPGNvbW1pdD5dIgogCiAjOiBidWlsdGluL3Jlc2V0LmM6MzMKK21zZ2lkICJnaXQgcmVzZXQgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgorbXNnc3RyICJnaXQgcmVzZXQgWy1xXSBbPGVzcHJlc3Npb25lIGFsYmVybz5dIFstLV0gPHNwZWNpZmljYXRvcmUgcGVyY29yc28+Li4uIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzQKK21zZ2lkICIiCisiZ2l0IHJlc2V0IFstcV0gWy0tcGF0aHNwZWMtZnJvbS1maWxlIFstLXBhdGhzcGVjLWZpbGUtbnVsXV0gWzx0cmVlLWlzaD5dIgorbXNnc3RyICIiCisiZ2l0IHJlc2V0IFstcV0gWy0tcGF0aHNwZWMtZnJvbS1maWxlIFstLXBhdGhzcGVjLWZpbGUtbnVsXV0gWzxlc3ByZXNzaW9uZSAiCisiYWxiZXJvPl0iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNQorbXNnaWQgImdpdCByZXNldCAtLXBhdGNoIFs8dHJlZS1pc2g+XSBbLS1dIFs8cGF0aHNwZWM+Li4uXSIKK21zZ3N0ciAiIgorImdpdCByZXNldCAtLXBhdGNoIFs8ZXNwcmVzc2lvbmUgYWxiZXJvPl0gWy0tXSBbPHNwZWNpZmljYXRvcmUgcGVyY29yc28+Li4uXSIKKworIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAibWl4ZWQiCi1tc2dzdHIgIiIKK21zZ3N0ciAibWlzdG8iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMworIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAic29mdCIKLW1zZ3N0ciAiIgorbXNnc3RyICJzb2Z0IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzMKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgImhhcmQiCi1tc2dzdHIgIiIKK21zZ3N0ciAiaGFyZCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMzCisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJtZXJnZSIKLW1zZ3N0ciAiIgorbXNnc3RyICJtZXJnZSIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMzCisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJrZWVwIgotbXNnc3RyICIiCittc2dzdHIgImtlZXAiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo3NworIzogYnVpbHRpbi9yZXNldC5jOjgyCiBtc2dpZCAiWW91IGRvIG5vdCBoYXZlIGEgdmFsaWQgSEVBRC4iCi1tc2dzdHIgIiIKK21zZ3N0ciAiTm9uIGhhaSB1biBIRUFEIHZhbGlkby4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo3OQorIzogYnVpbHRpbi9yZXNldC5jOjg0CiBtc2dpZCAiRmFpbGVkIHRvIGZpbmQgdHJlZSBvZiBIRUFELiIKLW1zZ3N0ciAiIgorbXNnc3RyICJJbXBvc3NpYmlsZSB0cm92YXJlIGwnYWxiZXJvIGRpIEhFQUQuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6ODUKKyM6IGJ1aWx0aW4vcmVzZXQuYzo5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzLiIKLW1zZ3N0ciAiIgorbXNnc3RyICJJbXBvc3NpYmlsZSB0cm92YXJlIGwnYWxiZXJvIGRpICVzLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjk2Ci1tc2dpZCAiQ291bGQgbm90IHdyaXRlIG5ldyBpbmRleCBmaWxlLiIKLW1zZ3N0ciAiTm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBzY3JpdmVyZSBpbCBudW92byBpbmRleCBmaWxlLiIKLQotIzogYnVpbHRpbi9yZXNldC5jOjEwNgorIzogYnVpbHRpbi9yZXNldC5jOjExNQogIywgYy1mb3JtYXQKIG1zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKIG1zZ3N0ciAiSEVBRCBvcmEgc2kgdHJvdmEgYSAlcyIKIAotIzogYnVpbHRpbi9yZXNldC5jOjEzMAotbXNnaWQgIkNvdWxkIG5vdCByZWFkIGluZGV4IgotbXNnc3RyICJOb24gw6ggc3RhdG8gcG9zc2liaWxlIGxlZ2dlcmUgaW5kZXgiCi0KLSM6IGJ1aWx0aW4vcmVzZXQuYzoxMzMKLW1zZ2lkICJVbnN0YWdlZCBjaGFuZ2VzIGFmdGVyIHJlc2V0OiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3Jlc2V0LmM6MjIzCisjOiBidWlsdGluL3Jlc2V0LmM6MTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBkbyBhICVzIHJlc2V0IGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZS4iCiBtc2dzdHIgIkltcG9zc2liaWxlIGVzZWd1aXJlIHVuICVzIHJlc2V0IG5lbCBjb3JzbyBkaSB1biBtZXJnZS4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnLiIKLW1zZ3N0ciAiTm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBhbmFsaXp6YXJlIGwnb2dnZXR0byAnJXMnLiIKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQgYnVpbHRpbi9zdGFzaC5jOjUyMCBidWlsdGluL3N0YXNoLmM6NTk1CisjOiBidWlsdGluL3N0YXNoLmM6NjE5Cittc2dpZCAiYmUgcXVpZXQsIG9ubHkgcmVwb3J0IGVycm9ycyIKK21zZ3N0ciAibm9uIHZpc3VhbGl6emFyZSBtZXNzYWdnaSwgc2VnbmFsYSBzb2xvIGdsaSBlcnJvcmkiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMDIKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTYKK21zZ2lkICJyZXNldCBIRUFEIGFuZCBpbmRleCIKK21zZ3N0ciAicmVpbXBvc3RhIGwnSEVBRCBlIGwnaW5kaWNlIgorCisjOiBidWlsdGluL3Jlc2V0LmM6Mjk3Cittc2dpZCAicmVzZXQgb25seSBIRUFEIgorbXNnc3RyICJyZWltcG9zdGEgc29sbyBsJ0hFQUQiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTkgYnVpbHRpbi9yZXNldC5jOjMwMQorbXNnaWQgInJlc2V0IEhFQUQsIGluZGV4IGFuZCB3b3JraW5nIHRyZWUiCittc2dzdHIgInJlaW1wb3N0YSBsJ0hFQUQsIGwnaW5kaWNlIGUgbCdhbGJlcm8gZGkgbGF2b3JvIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzAzCittc2dpZCAicmVzZXQgSEVBRCBidXQga2VlcCBsb2NhbCBjaGFuZ2VzIgorbXNnc3RyICJyZWltcG9zdGEgbCdIRUFEIG1hIG1hbnRpZW5pIGxlIG1vZGlmaWNoZSBsb2NhbGkiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMDkKK21zZ2lkICJyZWNvcmQgb25seSB0aGUgZmFjdCB0aGF0IHJlbW92ZWQgcGF0aHMgd2lsbCBiZSBhZGRlZCBsYXRlciIKK21zZ3N0ciAiIgorInNhbHZhIHNvbG8gaWwgZmF0dG8gY2hlIGkgcGVyY29yc2kgcmltb3NzaSBzYXJhbm5vIGFnZ2l1bnRpIHN1Y2Nlc3NpdmFtZW50ZSIKKworIzogYnVpbHRpbi9yZXNldC5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmV2aXNpb24uIgorbXNnc3RyICJSaXNvbHV6aW9uZSBkaSAnJXMnIGNvbWUgcmV2aXNpb25lIHZhbGlkYSBub24gcml1c2NpdGEuIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCB0cmVlLiIKK21zZ3N0ciAiUmlzb2x1emlvbmUgZGkgJyVzJyBjb21lIGFsYmVybyB2YWxpZG8gbm9uIHJpdXNjaXRhLiIKKworIzogYnVpbHRpbi9yZXNldC5jOjM2MAogbXNnaWQgIi0tcGF0Y2ggaXMgaW5jb21wYXRpYmxlIHdpdGggLS17aGFyZCxtaXhlZCxzb2Z0fSIKIG1zZ3N0ciAiLS1wYXRjaCBub24gw6ggY29tcGF0aWJpbGUgY29uIC0te2hhcmQsbWl4ZWQsc29mdH0iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMTEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNzAKIG1zZ2lkICItLW1peGVkIHdpdGggcGF0aHMgaXMgZGVwcmVjYXRlZDsgdXNlICdnaXQgcmVzZXQgLS0gPHBhdGhzPicgaW5zdGVhZC4iCiBtc2dzdHIgIi0tbWl4ZWQgY29uIGkgcGF0aCDDqCBkZXByZWNhdGE7IHVzYSBpbnZlY2UgJ2dpdCByZXNldCAtLSA8cGF0aD4nLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMxMworIzogYnVpbHRpbi9yZXNldC5jOjM3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZG8gJXMgcmVzZXQgd2l0aCBwYXRocy4iCi1tc2dzdHIgIiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgZXNlZ3VpcmUgdW4gJXMgcmVzZXQgY29uIGRlaSBwZXJjb3JzaS4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMjUKKyM6IGJ1aWx0aW4vcmVzZXQuYzozODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcmVzZXQgaXMgbm90IGFsbG93ZWQgaW4gYSBiYXJlIHJlcG9zaXRvcnkiCiBtc2dzdHIgIiVzIHJlc2V0IG5vbiDDqCBjb25zZW50aXRvIGluIHVuIHJlcG9zaXRvcnkgc3BvZ2xpbyIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM0MQorIzogYnVpbHRpbi9yZXNldC5jOjM5MQorbXNnaWQgIi1OIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCAtLW1peGVkIgorbXNnc3RyICItTiBwdcOyIGVzc2VyZSB1c2F0byBzb2xvIGNvbiAtLW1peGVkIgorCisjOiBidWlsdGluL3Jlc2V0LmM6NDEyCittc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZXNldDoiCittc2dzdHIgIk1vZGlmaWNoZSBub24gbmVsbCdhcmVhIGRpIHN0YWdpbmcgZG9wbyBpbCByZXNldDoiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGVudW1lcmF0ZSB1bnN0YWdlZCBjaGFuZ2VzIGFmdGVyIHJlc2V0LiAgWW91IGNhblxuIgorInVzZSAnLS1xdWlldCcgdG8gYXZvaWQgdGhpcy4gIFNldCB0aGUgY29uZmlnIHNldHRpbmcgcmVzZXQucXVpZXQgdG8gdHJ1ZVxuIgorInRvIG1ha2UgdGhpcyB0aGUgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNpIHNvbm8gdm9sdXRpICUuMmYgc2Vjb25kaSBwZXIgZWxlbmNhcmUgbGUgbW9kaWZpY2hlIG5vbiBuZWxsJ2FyZWEgZGlcbiIKKyJzdGFnaW5nIGRvcG8gaWwgcmVzZXQuIFB1b2kgdXNhcmUgJy0tcXVpZXQnIHBlciBub24gdmlzdWFsaXp6YXJlIHF1ZXN0b1xuIgorIm1lc3NhZ2dpby4gSW1wb3N0YSBsJ29wemlvbmUgZGkgY29uZmlndXJhemlvbmUgcmVzZXQucXVpZXQgYSB0cnVlIHBlclxuIgorInJlbmRlcmUgdGFsZSBjb21wb3J0YW1lbnRvIHF1ZWxsbyBwcmVkZWZpbml0by5cbiIKKworIzogYnVpbHRpbi9yZXNldC5jOjQyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVzZXQgaW5kZXggZmlsZSB0byByZXZpc2lvbiAnJXMnLiIKLW1zZ3N0ciAiIgotIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgcmlwcmlzdGluYXJlIGluZGV4IGZpbGUgIgotImFsbGEgcmV2aXNpb25lICclcycuIgorbXNnc3RyICJJbXBvc3NpYmlsZSByaXByaXN0aW5hcmUgaWwgZmlsZSBpbmRpY2UgYWxsYSByZXZpc2lvbmUgJyVzJy4iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6NzAgYnVpbHRpbi9yZXZlcnQuYzo5MgorIzogYnVpbHRpbi9yZXNldC5jOjQyOQorbXNnaWQgIkNvdWxkIG5vdCB3cml0ZSBuZXcgaW5kZXggZmlsZS4iCittc2dzdHIgIkltcG9zc2liaWxlIHNjcml2ZXJlIGlsIG51b3ZvIGZpbGUgaW5kaWNlLiIKKworIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQ5OQorbXNnaWQgImNhbm5vdCBjb21iaW5lIC0tZXhjbHVkZS1wcm9taXNvci1vYmplY3RzIGFuZCAtLW1pc3NpbmciCittc2dzdHIgImltcG9zc2liaWxlIGNvbWJpbmFyZSAtLWV4Y2x1ZGUtcHJvbWlzb3Itb2JqZWN0cyBlIC0tbWlzc2luZyIKKworIzogYnVpbHRpbi9yZXYtbGlzdC5jOjU2MAorbXNnaWQgIm9iamVjdCBmaWx0ZXJpbmcgcmVxdWlyZXMgLS1vYmplY3RzIgorbXNnc3RyICJpbCBmaWx0cmFnZ2lvIG9nZ2V0dGkgcmljaGllZGUgLS1vYmplY3RzIgorCisjOiBidWlsdGluL3Jldi1saXN0LmM6NjEwCittc2dpZCAicmV2LWxpc3QgZG9lcyBub3Qgc3VwcG9ydCBkaXNwbGF5IG9mIG5vdGVzIgorbXNnc3RyICJyZXYtbGlzdCBub24gc3VwcG9ydGEgbGEgdmlzdWFsaXp6YXppb25lIGRlbGxlIG5vdGUiCisKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo2MTUKK21zZ2lkICJtYXJrZWQgY291bnRpbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1vYmplY3RzIgorbXNnc3RyICJpbCBjb250ZWdnaW8gY29udHJhc3NlZ25hdG8gbm9uIMOoIGNvbXBhdGliaWxlIGNvbiAtLW9iamVjdHMiCisKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDA4Cittc2dpZCAiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IFs8b3B0aW9ucz5dIC0tIFs8YXJncz4uLi5dIgorbXNnc3RyICJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHppb25pPl0gLS0gWzxhcmdvbWVudGk+Li4uXSIKKworIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTMKK21zZ2lkICJrZWVwIHRoZSBgLS1gIHBhc3NlZCBhcyBhbiBhcmciCittc2dzdHIgIm1hbnRpZW5pIGxhIHN0cmluZ2EgcGFzc2F0YSBgLS1gIGNvbWUgYXJnb21lbnRvIgorCisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxNQorbXNnaWQgInN0b3AgcGFyc2luZyBhZnRlciB0aGUgZmlyc3Qgbm9uLW9wdGlvbiBhcmd1bWVudCIKK21zZ3N0ciAiIgorInRlcm1pbmEgbCdhbmFsaXNpIGRvcG8gaWwgcHJpbW8gYXJnb21lbnRvIG5vbiBjb3JyaXNwb25kZW50ZSBhIHVuJ29wemlvbmUiCisKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE4Cittc2dpZCAib3V0cHV0IGluIHN0dWNrIGxvbmcgZm9ybSIKK21zZ3N0ciAiZW1ldHRpIGwnb3V0cHV0IGluIGZvcm1hIFwic3R1Y2sgbG9uZ1wiIgorCisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjU1MQorbXNnaWQgIiIKKyJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHRpb25zPl0gLS0gWzxhcmdzPi4uLl1cbiIKKyIgICBvcjogZ2l0IHJldi1wYXJzZSAtLXNxLXF1b3RlIFs8YXJnPi4uLl1cbiIKKyIgICBvcjogZ2l0IHJldi1wYXJzZSBbPG9wdGlvbnM+XSBbPGFyZz4uLi5dXG4iCisiXG4iCisiUnVuIFwiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IC1oXCIgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhlIGZpcnN0IHVzYWdlLiIKK21zZ3N0ciAiIgorImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPG9wemlvbmk+XSAtLSBbPGFyZ29tZW50aT4uLi5dXG4iCisiICAgbzogZ2l0IHJldi1wYXJzZSAtLXNxLXF1b3RlIFs8YXJnb21lbnRvPi4uLl1cbiIKKyIgICBvOiBnaXQgcmV2LXBhcnNlIFs8b3B6aW9uaT5dIFs8YXJnb21lbnRvPi4uLl1cbiIKKyJcbiIKKyJFc2VndWkgXCJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgLWhcIiBwZXIgdWx0ZXJpb3JpIGluZm9ybWF6aW9uaSBzdWxsYSAiCisicHJpbWFcbiIKKyJtb2RhbGl0w6AgZCd1c28uIgorCisjOiBidWlsdGluL3JldmVydC5jOjI0Cittc2dpZCAiZ2l0IHJldmVydCBbPG9wdGlvbnM+XSA8Y29tbWl0LWlzaD4uLi4iCittc2dzdHIgImdpdCByZXZlcnQgWzxvcHppb25pPl0gPGVzcHJlc3Npb25lIGNvbW1pdD4uLi4iCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjUKK21zZ2lkICJnaXQgcmV2ZXJ0IDxzdWJjb21tYW5kPiIKK21zZ3N0ciAiZ2l0IHJldmVydCA8c290dG9jb21hbmRvPiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzozMAorbXNnaWQgImdpdCBjaGVycnktcGljayBbPG9wdGlvbnM+XSA8Y29tbWl0LWlzaD4uLi4iCittc2dzdHIgImdpdCBjaGVycnktcGljayBbPG9wemlvbmk+XSA8ZXNwcmVzc2lvbmUgY29tbWl0Pi4uLiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzozMQorbXNnaWQgImdpdCBjaGVycnktcGljayA8c3ViY29tbWFuZD4iCittc2dzdHIgImdpdCBjaGVycnktcGljayA8c290dG9jb21hbmRvPiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiB6ZXJvIgorbXNnc3RyICJsJ29wemlvbmUgYCVzJyByaWNoaWVkZSB1biBudW1lcm8gbWFnZ2lvcmUgZGkgemVybyIKKworIzogYnVpbHRpbi9yZXZlcnQuYzo5MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogJXMgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKIG1zZ3N0ciAiJXM6ICVzIG5vbiBwdcOyIGVzc2VyZSB1c2F0YSBjb24gJXMiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTMxCi1tc2dpZCAicHJvZ3JhbSBlcnJvciIKLW1zZ3N0ciAiZXJyb3JlIGRlbCBwcm9ncmFtbWEiCisjOiBidWlsdGluL3JldmVydC5jOjEwMgorbXNnaWQgImVuZCByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCittc2dzdHIgInRlcm1pbmEgbGEgc2VxdWVuemEgcmV2ZXJ0IG8gY2hlcnJ5LXBpY2siCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjIxCisjOiBidWlsdGluL3JldmVydC5jOjEwMworbXNnaWQgInJlc3VtZSByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCittc2dzdHIgInJpcHJlbmRpIGxhIHNlcXVlbnphIHJldmVydCBvIGNoZXJyeS1waWNrIgorCisjOiBidWlsdGluL3JldmVydC5jOjEwNAorbXNnaWQgImNhbmNlbCByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCittc2dzdHIgImFubnVsbGEgbGEgc2VxdWVuemEgcmV2ZXJ0IG8gY2hlcnJ5LXBpY2siCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA1Cittc2dpZCAic2tpcCBjdXJyZW50IGNvbW1pdCBhbmQgY29udGludWUiCittc2dzdHIgInNhbHRhIGlsIGNvbW1pdCBjb3JyZW50ZSBlIGNvbnRpbnVhIgorCisjOiBidWlsdGluL3JldmVydC5jOjEwNworbXNnaWQgImRvbid0IGF1dG9tYXRpY2FsbHkgY29tbWl0IgorbXNnc3RyICJub24gZXNlZ3VpcmUgaWwgY29tbWl0IGF1dG9tYXRpY2FtZW50ZSIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDgKK21zZ2lkICJlZGl0IHRoZSBjb21taXQgbWVzc2FnZSIKK21zZ3N0ciAibW9kaWZpY2EgaWwgbWVzc2FnZ2lvIGRpIGNvbW1pdCIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMTEKK21zZ2lkICJwYXJlbnQtbnVtYmVyIgorbXNnc3RyICJudW1lcm8tZ2VuaXRvcmUiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEyCittc2dpZCAic2VsZWN0IG1haW5saW5lIHBhcmVudCIKK21zZ3N0ciAic2VsZXppb25hIGlsIGdlbml0b3JlIG1haW5saW5lIgorCisjOiBidWlsdGluL3JldmVydC5jOjExNAorbXNnaWQgIm1lcmdlIHN0cmF0ZWd5IgorbXNnc3RyICJzdHJhdGVnaWEgZGkgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE2Cittc2dpZCAib3B0aW9uIGZvciBtZXJnZSBzdHJhdGVneSIKK21zZ3N0ciAib3B6aW9uZSBwZXIgbGEgc3RyYXRlZ2lhIGRpIG1lcmdlIgorCisjOiBidWlsdGluL3JldmVydC5jOjEyNQorbXNnaWQgImFwcGVuZCBjb21taXQgbmFtZSIKK21zZ3N0ciAiYWdnaXVuZ2kgaWwgbm9tZSBkZWwgY29tbWl0IGFsbGEgZmluZSIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMjcKK21zZ2lkICJwcmVzZXJ2ZSBpbml0aWFsbHkgZW1wdHkgY29tbWl0cyIKK21zZ3N0ciAibWFudGllbmkgaSBjb21taXQgaW5pemlhbG1lbnRlIHZ1b3RpIgorCisjOiBidWlsdGluL3JldmVydC5jOjEyOQorbXNnaWQgImtlZXAgcmVkdW5kYW50LCBlbXB0eSBjb21taXRzIgorbXNnc3RyICJtYW50aWVuaSBpIGNvbW1pdCByaWRvbmRhbnRpIGUgdnVvdGkiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjMyCiBtc2dpZCAicmV2ZXJ0IGZhaWxlZCIKIG1zZ3N0ciAicmV2ZXJ0IG5vbiByaXVzY2l0byIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoyMzYKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjQ1CiBtc2dpZCAiY2hlcnJ5LXBpY2sgZmFpbGVkIgogbXNnc3RyICJjaGVycnktcGljayBub24gcml1c2NpdG8iCiAKLSM6IGJ1aWx0aW4vcm0uYzoxMDkKLSMsIGMtZm9ybWF0CisjOiBidWlsdGluL3JtLmM6MTkKK21zZ2lkICJnaXQgcm0gWzxvcHRpb25zPl0gWy0tXSA8ZmlsZT4uLi4iCittc2dzdHIgImdpdCBybSBbPG9wemlvbmk+XSBbLS1dIDxmaWxlPi4uLiIKKworIzogYnVpbHRpbi9ybS5jOjIwNwogbXNnaWQgIiIKLSInJXMnIGhhcyBzdGFnZWQgY29udGVudCBkaWZmZXJlbnQgZnJvbSBib3RoIHRoZSBmaWxlIGFuZCB0aGUgSEVBRFxuIgorInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgc3RhZ2VkIGNvbnRlbnQgZGlmZmVyZW50IGZyb20gYm90aCB0aGVcbiIKKyJmaWxlIGFuZCB0aGUgSEVBRDoiCittc2dpZF9wbHVyYWwgIiIKKyJ0aGUgZm9sbG93aW5nIGZpbGVzIGhhdmUgc3RhZ2VkIGNvbnRlbnQgZGlmZmVyZW50IGZyb20gYm90aCB0aGVcbiIKKyJmaWxlIGFuZCB0aGUgSEVBRDoiCittc2dzdHJbMF0gIiIKKyJpbCBzZWd1ZW50ZSBmaWxlIGhhIGNvbnRlbnV0aSBuZWxsJ2FyZWEgZGkgc3RhZ2luZyBjaGVcbiIKKyJkaWZmZXJpc2Nvbm8gc2lhIHJpc3BldHRvIGEgcXVlbGxpIGRlbCBmaWxlIHNpYSByaXNwZXR0byBhIEhFQUQ6IgorbXNnc3RyWzFdICIiCisiaSBzZWd1ZW50aSBmaWxlIGhhbm5vIGNvbnRlbnV0aSBuZWxsJ2FyZWEgZGkgc3RhZ2luZyBjaGVcbiIKKyJkaWZmZXJpc2Nvbm8gc2lhIHJpc3BldHRvIGEgcXVlbGxpIGRlbCBmaWxlIHNpYSByaXNwZXR0byBhIEhFQUQ6IgorCisjOiBidWlsdGluL3JtLmM6MjEyCittc2dpZCAiIgorIlxuIgogIih1c2UgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCiBtc2dzdHIgIiIKKyJcbiIKKyIodXNhIC1mIHBlciBmb3J6YXJuZSBsYSByaW1vemlvbmUpIgogCi0jOiBidWlsdGluL3JtLmM6MTE1Ci0jLCBjLWZvcm1hdAorIzogYnVpbHRpbi9ybS5jOjIxNgorbXNnaWQgInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgY2hhbmdlcyBzdGFnZWQgaW4gdGhlIGluZGV4OiIKK21zZ2lkX3BsdXJhbCAidGhlIGZvbGxvd2luZyBmaWxlcyBoYXZlIGNoYW5nZXMgc3RhZ2VkIGluIHRoZSBpbmRleDoiCittc2dzdHJbMF0gImlsIHNlZ3VlbnRlIGZpbGUgaGEgZGVsbGUgbW9kaWZpY2hlIGluIHN0YWdpbmcgbmVsbCdpbmRpY2U6IgorbXNnc3RyWzFdICJpIHNlZ3VlbnRpIGZpbGUgaGFubm8gZGVsbGUgbW9kaWZpY2hlIGluIHN0YWdpbmcgbmVsbCdpbmRpY2U6IgorCisjOiBidWlsdGluL3JtLmM6MjIwIGJ1aWx0aW4vcm0uYzoyMjkKIG1zZ2lkICIiCi0iJyVzJyBoYXMgY2hhbmdlcyBzdGFnZWQgaW4gdGhlIGluZGV4XG4iCisiXG4iCiAiKHVzZSAtLWNhY2hlZCB0byBrZWVwIHRoZSBmaWxlLCBvciAtZiB0byBmb3JjZSByZW1vdmFsKSIKIG1zZ3N0ciAiIgorIlxuIgorIih1c2EgLS1jYWNoZWQgcGVyIG1hbnRlbmVyZSBpbCBmaWxlIG8gLWYgcGVyIGZvcnphcm5lIGxhIHJpbW96aW9uZSkiCiAKLSM6IGJ1aWx0aW4vcm0uYzoxMTkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotIiclcycgaGFzIGxvY2FsIG1vZGlmaWNhdGlvbnNcbiIKLSIodXNlIC0tY2FjaGVkIHRvIGtlZXAgdGhlIGZpbGUsIG9yIC1mIHRvIGZvcmNlIHJlbW92YWwpIgorIzogYnVpbHRpbi9ybS5jOjIyNgorbXNnaWQgInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgbG9jYWwgbW9kaWZpY2F0aW9uczoiCittc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBsb2NhbCBtb2RpZmljYXRpb25zOiIKK21zZ3N0clswXSAiaWwgc2VndWVudGUgZmlsZSBoYSBkZWxsZSBtb2RpZmljaGUgbG9jYWxpOiIKK21zZ3N0clsxXSAiaSBzZWd1ZW50aSBmaWxlIGhhbm5vIGRlbGxlIG1vZGlmaWNoZSBsb2NhbGk6IgorCisjOiBidWlsdGluL3JtLmM6MjQzCittc2dpZCAiZG8gbm90IGxpc3QgcmVtb3ZlZCBmaWxlcyIKK21zZ3N0ciAibm9uIGVsZW5jYXJlIGkgZmlsZSByaW1vc3NpIgorCisjOiBidWlsdGluL3JtLmM6MjQ0Cittc2dpZCAib25seSByZW1vdmUgZnJvbSB0aGUgaW5kZXgiCittc2dzdHIgInJpbXVvdmkgc29sbyBkYWxsJ2luZGljZSIKKworIzogYnVpbHRpbi9ybS5jOjI0NQorbXNnaWQgIm92ZXJyaWRlIHRoZSB1cC10by1kYXRlIGNoZWNrIgorbXNnc3RyICJpZ25vcmEgaWwgY29udHJvbGxvIHN1bGxvIHN0YXRvIGRpIGFnZ2lvcm5hbWVudG8iCisKKyM6IGJ1aWx0aW4vcm0uYzoyNDYKK21zZ2lkICJhbGxvdyByZWN1cnNpdmUgcmVtb3ZhbCIKK21zZ3N0ciAiY29uc2VudGkgcmltb3ppb25pIHJpY29yc2l2ZSIKKworIzogYnVpbHRpbi9ybS5jOjI0OAorbXNnaWQgImV4aXQgd2l0aCBhIHplcm8gc3RhdHVzIGV2ZW4gaWYgbm90aGluZyBtYXRjaGVkIgogbXNnc3RyICIiCi0iJyVzJyBjb250aWVuZSBkZWxsZSBtb2RpZmljaGUgbG9jYWxpXG4iCi0iKHVzYSAtLWNhY2hlZCBwZXIgbWFudGVuZXJlIGlsIGZpbGUsIG8gLWYgcGVyIGZvcnphcmUgbGEgcmltb3ppb25lKSIKKyJlc2NpIGNvbiBjb2RpY2UgZCd1c2NpdGEgemVybyBhbmNoZSBuZWwgY2FzbyBpbiBjdWkgbm9uIHZpIHNpYW5vICIKKyJjb3JyaXNwb25kZW56ZSIKIAotIzogYnVpbHRpbi9ybS5jOjE5NAorIzogYnVpbHRpbi9ybS5jOjI4MgorbXNnaWQgIk5vIHBhdGhzcGVjIHdhcyBnaXZlbi4gV2hpY2ggZmlsZXMgc2hvdWxkIEkgcmVtb3ZlPyIKK21zZ3N0ciAiIgorIk5vbiDDqCBzdGF0byBmb3JuaXRvIHVubyBzcGVjaWZpY2F0b3JlIHBlcmNvcnNvLiBRdWFsaSBmaWxlIGRldm8gcmltdW92ZXJlPyIKKworIzogYnVpbHRpbi9ybS5jOjMwNQorbXNnaWQgInBsZWFzZSBzdGFnZSB5b3VyIGNoYW5nZXMgdG8gLmdpdG1vZHVsZXMgb3Igc3Rhc2ggdGhlbSB0byBwcm9jZWVkIgorbXNnc3RyICIiCisiZXNlZ3VpIGxvIHN0YWdlIGRlbGxlIG1vZGlmaWNoZSBhIC5naXRtb2R1bGVzIG8gZXNlZ3VpbmUgbG8gc3Rhc2ggcGVyICIKKyJwcm9jZWRlcmUiCisKKyM6IGJ1aWx0aW4vcm0uYzozMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IHJlbW92aW5nICclcycgcmVjdXJzaXZlbHkgd2l0aG91dCAtciIKLW1zZ3N0ciAiIgorbXNnc3RyICJub24gcmltdW92byAnJXMnIHJpY29yc2l2YW1lbnRlIHNlbnphIC1yIgogCi0jOiBidWlsdGluL3JtLmM6MjMwCisjOiBidWlsdGluL3JtLmM6MzYyCiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBybTogdW5hYmxlIHRvIHJlbW92ZSAlcyIKIG1zZ3N0ciAiZ2l0IHJtOiBub24gw6ggcG9zc2liaWxlIGVsaW1pbmFyZSAlcyIKIAotIzogYnVpbHRpbi9zaG9ydGxvZy5jOjE1NwotIywgYy1mb3JtYXQKLW1zZ2lkICJNaXNzaW5nIGF1dGhvcjogJXMiCi1tc2dzdHIgIkF1dG9yZSBtYW5jYW50ZTogJXMiCi0KLSM6IGJ1aWx0aW4vdGFnLmM6NjAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibWFsZm9ybWVkIG9iamVjdCBhdCAnJXMnIgorIzogYnVpbHRpbi9zZW5kLXBhY2suYzoyMAorbXNnaWQgIiIKKyJnaXQgc2VuZC1wYWNrIFstLWFsbCB8IC0tbWlycm9yXSBbLS1kcnktcnVuXSBbLS1mb3JjZV0gWy0tcmVjZWl2ZS1wYWNrPTxnaXQtIgorInJlY2VpdmUtcGFjaz5dIFstLXZlcmJvc2VdIFstLXRoaW5dIFstLWF0b21pY10gWzxob3N0PjpdPGRpcmVjdG9yeT4gIgorIls8cmVmPi4uLl1cbiIKKyIgIC0tYWxsIGFuZCBleHBsaWNpdCA8cmVmPiBzcGVjaWZpY2F0aW9uIGFyZSBtdXR1YWxseSBleGNsdXNpdmUuIgogbXNnc3RyICIiCisiZ2l0IHNlbmQtcGFjayBbLS1hbGwgfCAtLW1pcnJvcl0gWy0tZHJ5LXJ1bl0gWy0tZm9yY2VdIFstLXJlY2VpdmUtcGFjaz08Z2l0LSIKKyJyZWNlaXZlLXBhY2s+XSBbLS12ZXJib3NlXSBbLS10aGluXSBbLS1hdG9taWNdIFs8aG9zdD46XTxkaXJlY3Rvcnk+ICIKKyJbPHJpZmVyaW1lbnRvPi4uLl1cbiIKKyIgIC0tYWxsIGUgdW5vIHNwZWNpZmljYXRvcmUgPHJpZmVyaW1lbnRvPiBzb25vIG11dHVhbG1lbnRlIGVzY2x1c2l2aS4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjA3CisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE2MworbXNnaWQgInJlbW90ZSBuYW1lIgorbXNnc3RyICJub21lIHJlbW90byIKKworIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzcKK21zZ2lkICJ1c2Ugc3RhdGVsZXNzIFJQQyBwcm90b2NvbCIKK21zZ3N0ciAidXNhIHByb3RvY29sbG8gUlBDIHNlbnphIHN0YXRvIgorCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE3OAorbXNnaWQgInJlYWQgcmVmcyBmcm9tIHN0ZGluIgorbXNnc3RyICJsZWdnaSBpIHJpZmVyaW1lbnRvIGRhbGxvIHN0YW5kYXJkIGlucHV0IgorCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE3OQorbXNnaWQgInByaW50IHN0YXR1cyBmcm9tIHJlbW90ZSBoZWxwZXIiCittc2dzdHIgInN0YW1wYSBsbyBzdGF0byBkZWxsJ2hlbHBlciByZW1vdG8iCisKKyM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxNAorbXNnaWQgImdpdCBzaG9ydGxvZyBbPG9wdGlvbnM+XSBbPHJldmlzaW9uLXJhbmdlPl0gW1stLV0gPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IHNob3J0bG9nIFs8b3B6aW9uaT5dIFs8aW50ZXJ2YWxsbyByZXZpc2lvbmk+XSBbWy0tXSA8cGVyY29yc28+Li4uXSIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjE1Cittc2dpZCAiZ2l0IGxvZyAtLXByZXR0eT1zaG9ydCB8IGdpdCBzaG9ydGxvZyBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IGxvZyAtLXByZXR0eT1zaG9ydCB8IGdpdCBzaG9ydGxvZyBbPG9wemlvbmk+XSIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI2NAorbXNnaWQgIkdyb3VwIGJ5IGNvbW1pdHRlciByYXRoZXIgdGhhbiBhdXRob3IiCittc2dzdHIgIlJhZ2dydXBwYSBwZXIgcGVyc29uYSBjaGUgaGEgZXNlZ3VpdG8gaWwgY29tbWl0IGFuemljaMOpIHBlciBhdXRvcmUiCisKKyM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoyNjYKK21zZ2lkICJzb3J0IG91dHB1dCBhY2NvcmRpbmcgdG8gdGhlIG51bWJlciBvZiBjb21taXRzIHBlciBhdXRob3IiCittc2dzdHIgIm9yZGluYSBsJ291dHB1dCBpbiBiYXNlIGFsIG51bWVybyBkaSBjb21taXQgcGVyIGF1dG9yZSIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI2OAorbXNnaWQgIlN1cHByZXNzIGNvbW1pdCBkZXNjcmlwdGlvbnMsIG9ubHkgcHJvdmlkZXMgY29tbWl0IGNvdW50IgorbXNnc3RyICJPbWV0dGkgbGUgZGVzY3JpemlvbmkgZGVpIGNvbW1pdCwgZm9ybmlzY2kgc29sbyBpbCBudW1lcm8gZGVpIGNvbW1pdCIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI3MAorbXNnaWQgIlNob3cgdGhlIGVtYWlsIGFkZHJlc3Mgb2YgZWFjaCBhdXRob3IiCittc2dzdHIgIlZpc3VhbGl6emEgbCdpbmRpcml6em8gZS1tYWlsIGRpIG9nbmkgYXV0b3JlIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MjcxCittc2dpZCAiPHc+Wyw8aTE+Wyw8aTI+XV0iCittc2dzdHIgIjx3PlssPGkxPlssPGkyPl1dIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MjcyCittc2dpZCAiTGluZXdyYXAgb3V0cHV0IgorbXNnc3RyICJPdXRwdXQgYSBjYXBvIGF1dG9tYXRpY28iCisKKyM6IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDEKK21zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgZ2l2ZW4gb3V0c2lkZSByZXBvc2l0b3J5IgorbXNnc3RyICJ0cm9wcGkgYXJnb21lbnRpIGZvcm5pdGkgb2x0cmUgYWwgcmVwb3NpdG9yeSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjEzCittc2dpZCAiIgorImdpdCBzaG93LWJyYW5jaCBbLWEgfCAtLWFsbF0gWy1yIHwgLS1yZW1vdGVzXSBbLS10b3BvLW9yZGVyIHwgLS1kYXRlLW9yZGVyXVxuIgorIlx0XHRbLS1jdXJyZW50XSBbLS1jb2xvcls9PHdoZW4+XSB8IC0tbm8tY29sb3JdIFstLXNwYXJzZV1cbiIKKyJcdFx0Wy0tbW9yZT08bj4gfCAtLWxpc3QgfCAtLWluZGVwZW5kZW50IHwgLS1tZXJnZS1iYXNlXVxuIgorIlx0XHRbLS1uby1uYW1lIHwgLS1zaGExLW5hbWVdIFstLXRvcGljc10gWyg8cmV2PiB8IDxnbG9iPikuLi5dIgorbXNnc3RyICIiCisiZ2l0IHNob3ctYnJhbmNoIFstYSB8IC0tYWxsXSBbLXIgfCAtLXJlbW90ZXNdIFstLXRvcG8tb3JkZXIgfCAtLWRhdGUtb3JkZXJdXG4iCisiXHRcdFstLWN1cnJlbnRdIFstLWNvbG9yWz08cXVhbmRvPl0gfCAtLW5vLWNvbG9yXSBbLS1zcGFyc2VdXG4iCisiXHRcdFstLW1vcmU9PG4+IHwgLS1saXN0IHwgLS1pbmRlcGVuZGVudCB8IC0tbWVyZ2UtYmFzZV1cbiIKKyJcdFx0Wy0tbm8tbmFtZSB8IC0tc2hhMS1uYW1lXSBbLS10b3BpY3NdIFsoPHJldmlzaW9uZT4gfCA8Z2xvYj4pLi4uXSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjE3Cittc2dpZCAiZ2l0IHNob3ctYnJhbmNoICgtZyB8IC0tcmVmbG9nKVs9PG4+Wyw8YmFzZT5dXSBbLS1saXN0XSBbPHJlZj5dIgorbXNnc3RyICIiCisiZ2l0IHNob3ctYnJhbmNoICgtZyB8IC0tcmVmbG9nKVs9PG4+Wyw8YmFzZT5dXSBbLS1saXN0XSBbPHJpZmVyaW1lbnRvPl0iCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzozOTUKICMsIGMtZm9ybWF0Ci1tc2dpZCAidGFnIG5hbWUgdG9vIGxvbmc6ICUuKnMuLi4iCi1tc2dzdHIgIm5vbWUgdGFnIHRyb3BwbyBsdW5nbzogJS4qcy4uLiIKK21zZ2lkICJpZ25vcmluZyAlczsgY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmVmIgorbXNnaWRfcGx1cmFsICJpZ25vcmluZyAlczsgY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmVmcyIKK21zZ3N0clswXSAiaWdub3JvICVzOyBub24gcG9zc28gZ2VzdGlyZSBwacO5IGRpICVkIHJpZmVyaW1lbnRvIgorbXNnc3RyWzFdICJpZ25vcm8gJXM7IG5vbiBwb3NzbyBnZXN0aXJlIHBpw7kgZGkgJWQgcmlmZXJpbWVudGkiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjEyCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIG1hdGNoaW5nIHJlZnMgd2l0aCAlcyIKK21zZ3N0ciAibmVzc3VuIHJpZmVyaW1lbnRvIGNvcnJpc3BvbmRlbnRlIGEgJXMiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDUKK21zZ2lkICJzaG93IHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCittc2dzdHIgInZpc3VhbGl6emEgaSBicmFuY2ggY2hlIG5lIHRyYWNjaWFubyB1bm8gcmVtb3RvIGUgcXVlbGxpIGxvY2FsaSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NworbXNnaWQgInNob3cgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgorbXNnc3RyICJ2aXN1YWxpenphIGkgYnJhbmNoIGNoZSBuZSB0cmFjY2lhbm8gdW5vIHJlbW90byIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0OQorbXNnaWQgImNvbG9yICcqISstJyBjb3JyZXNwb25kaW5nIHRvIHRoZSBicmFuY2giCittc2dzdHIgImNvbG9yZSAnKiErLScgY29ycmlzcG9uZGVudGUgYWwgYnJhbmNoIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUxCittc2dpZCAic2hvdyA8bj4gbW9yZSBjb21taXRzIGFmdGVyIHRoZSBjb21tb24gYW5jZXN0b3IiCittc2dzdHIgInZpc3VhbGl6emEgPG4+IGNvbW1pdCB1bHRlcmlvcmkgcmlzcGV0dG8gYWxsJ2FudGVuYXRvIGNvbXVuZSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MworbXNnaWQgInN5bm9ueW0gdG8gbW9yZT0tMSIKK21zZ3N0ciAic2lub25pbW8gZGkgbW9yZT0tMSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NAorbXNnaWQgInN1cHByZXNzIG5hbWluZyBzdHJpbmdzIgorbXNnc3RyICJub24gdmlzdWFsaXp6YXJlIGxlIHN0cmluZ2hlIGRpIGRlbm9taW5hemlvbmUiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTYKK21zZ2lkICJpbmNsdWRlIHRoZSBjdXJyZW50IGJyYW5jaCIKK21zZ3N0ciAiaW5jbHVkaSBpbCBicmFuY2ggY29ycmVudGUiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTgKK21zZ2lkICJuYW1lIGNvbW1pdHMgd2l0aCB0aGVpciBvYmplY3QgbmFtZXMiCittc2dzdHIgImRlbm9taW5hIGkgY29tbWl0IGNvbiBpIGxvcm8gbm9taSBvZ2dldHRvIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYwCittc2dpZCAic2hvdyBwb3NzaWJsZSBtZXJnZSBiYXNlcyIKK21zZ3N0ciAidmlzdWFsaXp6YSBsZSBiYXNpIG1lcmdlIHBvc3NpYmlsaSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MgorbXNnaWQgInNob3cgcmVmcyB1bnJlYWNoYWJsZSBmcm9tIGFueSBvdGhlciByZWYiCittc2dzdHIgInZpc3VhbGl6emEgaSByaWZlcmltZW50aSBub24gcmFnZ2l1bmdpYmlsaSBkYSBuZXNzdW4gYWx0cm8iCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjQKK21zZ2lkICJzaG93IGNvbW1pdHMgaW4gdG9wb2xvZ2ljYWwgb3JkZXIiCittc2dzdHIgInZpc3VhbGl6emEgaSBjb21taXQgaW4gb3JkaW5lIHRvcG9sb2dpY28iCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjcKK21zZ2lkICJzaG93IG9ubHkgY29tbWl0cyBub3Qgb24gdGhlIGZpcnN0IGJyYW5jaCIKK21zZ3N0ciAidmlzdWFsaXp6YSBzb2xvIGkgY29tbWl0IG5vbiBzdWwgcHJpbW8gYnJhbmNoIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY5Cittc2dpZCAic2hvdyBtZXJnZXMgcmVhY2hhYmxlIGZyb20gb25seSBvbmUgdGlwIgorbXNnc3RyICJ2aXN1YWxpenphIGkgbWVyZ2UgcmFnZ2l1bmdpYmlsaSBzb2xvIGRhbGwndWx0aW1vIGNvbW1pdCBkaSB1biBicmFuY2giCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzEKK21zZ2lkICJ0b3BvbG9naWNhbGx5IHNvcnQsIG1haW50YWluaW5nIGRhdGUgb3JkZXIgd2hlcmUgcG9zc2libGUiCittc2dzdHIgIiIKKyJlc2VndWkgdW4gb3JkaW5hbWVudG8gdG9wb2xvZ2ljbyBtYW50ZW5lbmRvIGwnb3JkaW5lIGRlbGxlIGRhdGUgb3ZlIHBvc3NpYmlsZSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NAorbXNnaWQgIjxuPlssPGJhc2U+XSIKK21zZ3N0ciAiPG4+Wyw8YmFzZT5dIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6Njc1Cittc2dpZCAic2hvdyA8bj4gbW9zdCByZWNlbnQgcmVmLWxvZyBlbnRyaWVzIHN0YXJ0aW5nIGF0IGJhc2UiCittc2dzdHIgIiIKKyJ2aXN1YWxpenphIGxlIDxuPiB2b2NpIHBpw7kgcmVjZW50aSBkZWwgbG9nIGRlaSByaWZlcmltZW50aSBwYXJ0ZW5kbyBkYSBiYXNlIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzExCittc2dpZCAiIgorIi0tcmVmbG9nIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWxsLCAtLXJlbW90ZXMsIC0taW5kZXBlbmRlbnQgb3IgLS1tZXJnZS1iYXNlIgorbXNnc3RyICIiCisiLS1yZWZsb2cgbm9uIMOoIGNvbXBhdGliaWxlIGNvbiAtLWFsbCwgLS1yZW1vdGVzLCAtLWluZGVwZW5kZW50IG8gLS1tZXJnZS1iYXNlIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM1Cittc2dpZCAibm8gYnJhbmNoZXMgZ2l2ZW4sIGFuZCBIRUFEIGlzIG5vdCB2YWxpZCIKK21zZ3N0ciAibmVzc3VuIGJyYW5jaCBmb3JuaXRvIGUgbCdIRUFEIG5vbiDDqCB2YWxpZG8iCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzgKK21zZ2lkICItLXJlZmxvZyBvcHRpb24gbmVlZHMgb25lIGJyYW5jaCBuYW1lIgorbXNnc3RyICJsJ29wemlvbmUgLS1yZWZsb2cgcmljaGllZGUgaWwgbm9tZSBkaSB1biBicmFuY2giCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAib25seSAlZCBlbnRyeSBjYW4gYmUgc2hvd24gYXQgb25lIHRpbWUuIgorbXNnaWRfcGx1cmFsICJvbmx5ICVkIGVudHJpZXMgY2FuIGJlIHNob3duIGF0IG9uZSB0aW1lLiIKK21zZ3N0clswXSAicHXDsiBlc3NlcmUgdmlzdWFsaXp6YXRhIHNvbG8gJWQgdm9jZSBwZXIgdm9sdGEuIgorbXNnc3RyWzFdICJwb3Nzb25vIGVzc2VyZSB2aXN1YWxpenphdGUgc29sbyAlZCB2b2NpIHBlciB2b2x0YS4iCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCByZWYgJXMiCittc2dzdHIgInJpZmVyaW1lbnRvIG5vbiBlc2lzdGVudGU6ICVzIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODMxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJldi4iCittc2dpZF9wbHVyYWwgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJldnMuIgorbXNnc3RyWzBdICJpbXBvc3NpYmlsZSBnZXN0aXJlIHBpw7kgZGkgJWQgcmV2aXNpb25lLiIKK21zZ3N0clsxXSAiaW1wb3NzaWJpbGUgZ2VzdGlyZSBwacO5IGRpICVkIHJldmlzaW9uaS4iCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZWYuIgorbXNnc3RyICInJXMnIG5vbiDDqCB1biByaWZlcmltZW50byB2YWxpZG8uIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmaW5kIGNvbW1pdCAlcyAoJXMpIgorbXNnc3RyICJpbXBvc3NpYmlsZSB0cm92YXJlIGlsIGNvbW1pdCAlcyAoJXMpIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTIKK21zZ2lkICIiCisiZ2l0IHNob3ctcmVmIFstcSB8IC0tcXVpZXRdIFstLXZlcmlmeV0gWy0taGVhZF0gWy1kIHwgLS1kZXJlZmVyZW5jZV0gWy1zIHwgLS0iCisiaGFzaFs9PG4+XV0gWy0tYWJicmV2Wz08bj5dXSBbLS10YWdzXSBbLS1oZWFkc10gWy0tXSBbPHBhdHRlcm4+Li4uXSIKK21zZ3N0ciAiIgorImdpdCBzaG93LXJlZiBbLXEgfCAtLXF1aWV0XSBbLS12ZXJpZnldIFstLWhlYWRdIFstZCB8IC0tZGVyZWZlcmVuY2VdIFstcyB8IC0tIgorImhhc2hbPTxuPl1dIFstLWFiYnJldls9PG4+XV0gWy0tdGFnc10gWy0taGVhZHNdIFstLV0gWzxwYXR0ZXJuPi4uLl0iCisKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxMworbXNnaWQgImdpdCBzaG93LXJlZiAtLWV4Y2x1ZGUtZXhpc3RpbmdbPTxwYXR0ZXJuPl0iCittc2dzdHIgImdpdCBzaG93LXJlZiAtLWV4Y2x1ZGUtZXhpc3RpbmdbPTxwYXR0ZXJuPl0iCisKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjIKK21zZ2lkICJvbmx5IHNob3cgdGFncyAoY2FuIGJlIGNvbWJpbmVkIHdpdGggaGVhZHMpIgorbXNnc3RyICJ2aXN1YWxpenphIHNvbG8gaSB0YWcgKGwnb3B6aW9uZSBwdcOyIGVzc2VyZSBjb21iaW5hdGEgY29uIGhlYWRzKSIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2MworbXNnaWQgIm9ubHkgc2hvdyBoZWFkcyAoY2FuIGJlIGNvbWJpbmVkIHdpdGggdGFncykiCittc2dzdHIgInZpc3VhbGl6emEgc29sbyBsZSBoZWFkIChsJ29wemlvbmUgcHXDsiBlc3NlcmUgY29tYmluYXRhIGNvbiB0YWdzKSIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2NAorbXNnaWQgInN0cmljdGVyIHJlZmVyZW5jZSBjaGVja2luZywgcmVxdWlyZXMgZXhhY3QgcmVmIHBhdGgiCittc2dzdHIgIiIKKyJjb250cm9sbG8gcGnDuSBzdHJpbmdlbnRlIGRlaSByaWZlcmltZW50aSwgcmljaGllZGUgdW4gcGVyY29yc28gZXNhdHRvIGFsICIKKyJyaWZlcmltZW50byIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2NyBidWlsdGluL3Nob3ctcmVmLmM6MTY5Cittc2dpZCAic2hvdyB0aGUgSEVBRCByZWZlcmVuY2UsIGV2ZW4gaWYgaXQgd291bGQgYmUgZmlsdGVyZWQgb3V0IgorbXNnc3RyICJ2aXN1YWxpenphIGlsIHJpZmVyaW1lbnRvIEhFQUQgYW5jaGUgc2UgZmlsdHJhdG8iCisKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzEKK21zZ2lkICJkZXJlZmVyZW5jZSB0YWdzIGludG8gb2JqZWN0IElEcyIKK21zZ3N0ciAiZGVyZWZlcmVuemlhIGkgdGFnIGluIElEIG9nZ2V0dG8iCisKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzMKK21zZ2lkICJvbmx5IHNob3cgU0hBMSBoYXNoIHVzaW5nIDxuPiBkaWdpdHMiCittc2dzdHIgInZpc3VhbGl6emEgbCdoYXNoIFNIQTEgdXNhbmRvIHNvbG8gPG4+IGNhcmF0dGVyaSIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3NworbXNnaWQgImRvIG5vdCBwcmludCByZXN1bHRzIHRvIHN0ZG91dCAodXNlZnVsIHdpdGggLS12ZXJpZnkpIgorbXNnc3RyICJub24gc3RhbXBhcmUgaSByaXN1bHRhdGkgc3VsbG8gc3RhbmRhcmQgb3V0cHV0ICh1dGlsZSBjb24gLS12ZXJpZnkpIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc5Cittc2dpZCAic2hvdyByZWZzIGZyb20gc3RkaW4gdGhhdCBhcmVuJ3QgaW4gbG9jYWwgcmVwb3NpdG9yeSIKK21zZ3N0ciAiIgorInZpc3VhbGl6emEgaSByaWZlcmltZW50aSBkYXRpIHN1bGxvIHN0YW5kYXJkIGlucHV0IGNoZSBub24gc29ubyBuZWwgIgorInJlcG9zaXRvcnkgbG9jYWxlIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjIxCittc2dpZCAiZ2l0IHNwYXJzZS1jaGVja291dCAoaW5pdHxsaXN0fHNldHxhZGR8ZGlzYWJsZSkgPG9wdGlvbnM+IgorbXNnc3RyICJnaXQgc3BhcnNlLWNoZWNrb3V0IChpbml0fGxpc3R8c2V0fGFkZHxkaXNhYmxlKSA8b3B6aW9uaT4iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NjQKK21zZ2lkICJ0aGlzIHdvcmt0cmVlIGlzIG5vdCBzcGFyc2UgKHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBub3QgZXhpc3QpIgorbXNnc3RyICIiCisicXVlc3RvIGFsYmVybyBkaSBsYXZvcm8gbm9uIMOoIHNwYXJzZSAoaWwgZmlsZSBzcGFyc2UtY2hlY2tvdXQgcG90cmViYmUgbm9uICIKKyJlc2lzdGVyZSkiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjI1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgZm9yIHNwYXJzZS1jaGVja291dCBmaWxlIgorbXNnc3RyICJjcmVhemlvbmUgZGVsbGEgZGlyZWN0b3J5IHBlciBpbCBmaWxlIHNwYXJzZS1jaGVja291dCBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHNldCBleHRlbnNpb25zLndvcmt0cmVlQ29uZmlnIHNldHRpbmciCittc2dzdHIgImltcG9zdGF6aW9uZSBkZWxsJ29wemlvbmUgZXh0ZW5zaW9ucy53b3JrdHJlZUNvbmZpZyBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjgzCittc2dpZCAiZ2l0IHNwYXJzZS1jaGVja291dCBpbml0IFstLWNvbmVdIgorbXNnc3RyICJnaXQgc3BhcnNlLWNoZWNrb3V0IGluaXQgWy0tY29uZV0iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MzAyCittc2dpZCAiaW5pdGlhbGl6ZSB0aGUgc3BhcnNlLWNoZWNrb3V0IGluIGNvbmUgbW9kZSIKK21zZ3N0ciAiaW5pemlhbGl6emEgaWwgY2hlY2tvdXQgc3BhcnNlIGluIG1vZGFsaXTDoCBjb25lIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjMwOAorbXNnaWQgImluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJpbml6aWFsaXp6YSBzcGFyc2UtY2hlY2tvdXQiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyciCittc2dzdHIgImFwZXJ0dXJhIGRpICclcycgbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjM5OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgbm9ybWFsaXplIHBhdGggJXMiCittc2dzdHIgImltcG9zc2liaWxlIG5vcm1hbGl6emFyZSBpbCBwZXJjb3JzbyAnJXMnIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjQxMAorbXNnaWQgImdpdCBzcGFyc2UtY2hlY2tvdXQgKHNldHxhZGQpICgtLXN0ZGluIHwgPHBhdHRlcm5zPikiCittc2dzdHIgImdpdCBzcGFyc2UtY2hlY2tvdXQgKHNldHxhZGQpICgtLXN0ZGluIHwgPHBhdHRlcm4+KSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVucXVvdGUgQy1zdHlsZSBzdHJpbmcgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmltdW92ZXJlIGxlIHZpcmdvbGV0dGUgZGFsbGEgc3RyaW5nYSBpbiBzdGlsZSBDICclcyciCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDg5IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTEzCittc2dpZCAidW5hYmxlIHRvIGxvYWQgZXhpc3Rpbmcgc3BhcnNlLWNoZWNrb3V0IHBhdHRlcm5zIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjYXJpY2FyZSBpIHBhdHRlcm4gc3BhcnNlLWNoZWNrb3V0IGVzaXN0ZW50aSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1NTgKK21zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gc3RhbmRhcmQgaW4iCittc2dzdHIgImxlZ2dpIGkgcGF0dGVybiBkYWxsbyBzdGFuZGFyZCBpbnB1dCIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1NjQKK21zZ2lkICJzZXQgc3BhcnNlLWNoZWNrb3V0IHBhdHRlcm5zIgorbXNnc3RyICJpbXBvc3RhIGkgcGF0dGVybiBzcGFyc2UtY2hlY2tvdXQiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTgxCittc2dpZCAiZGlzYWJsZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgImRpc2FiaWxpdGEgc3BhcnNlLWNoZWNrb3V0IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjU5MworbXNnaWQgImVycm9yIHdoaWxlIHJlZnJlc2hpbmcgd29ya2luZyBkaXJlY3RvcnkiCittc2dzdHIgImVycm9yZSBkdXJhbnRlIGwnYWdnaW9ybmFtZW50byBkZWxsYSBkaXJlY3RvcnkgZGkgbGF2b3JvIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjIgYnVpbHRpbi9zdGFzaC5jOjM4Cittc2dpZCAiZ2l0IHN0YXNoIGxpc3QgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCBzdGFzaCBsaXN0IFs8b3B6aW9uaT5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjMgYnVpbHRpbi9zdGFzaC5jOjQzCittc2dpZCAiZ2l0IHN0YXNoIHNob3cgWzxvcHRpb25zPl0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggc2hvdyBbPG9wemlvbmk+XSBbPHN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNCBidWlsdGluL3N0YXNoLmM6NDgKK21zZ2lkICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjUKK21zZ2lkICJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjYgYnVpbHRpbi9zdGFzaC5jOjYzCittc2dpZCAiZ2l0IHN0YXNoIGJyYW5jaCA8YnJhbmNobmFtZT4gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggYnJhbmNoIDxub21lIGJyYW5jaD4gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjcgYnVpbHRpbi9zdGFzaC5jOjY4Cittc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIgorbXNnc3RyICJnaXQgc3Rhc2ggY2xlYXIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyOAorbXNnaWQgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XVxuIgorIiAgICAgICAgICBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZXNzYWdnaW8+XVxuIgorIiAgICAgICAgICBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV1cbiIKKyIgICAgICAgICAgWy0tXSBbPHNwZWNpZmljYXRvcmUgcGVyY29yc28+Li4uXV0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzozMiBidWlsdGluL3N0YXNoLmM6ODUKK21zZ2lkICIiCisiZ2l0IHN0YXNoIHNhdmUgWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8bWVzc2FnZT5dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIHNhdmUgWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8bWVzc2FnZ2lvPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1MworbXNnaWQgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1OAorbXNnaWQgImdpdCBzdGFzaCBhcHBseSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGFwcGx5IFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NzMKK21zZ2lkICJnaXQgc3Rhc2ggc3RvcmUgWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dIFstcXwtLXF1aWV0XSA8Y29tbWl0PiIKK21zZ3N0ciAiZ2l0IHN0YXNoIHN0b3JlIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2dpbz5dIFstcXwtLXF1aWV0XSA8Y29tbWl0PiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjc4Cittc2dpZCAiIgorImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dXG4iCisiICAgICAgICAgIFstLV0gWzxwYXRoc3BlYz4uLi5dXSIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWy1tfC0tbWVzc2FnZSA8bWVzc2FnZ2lvPl1cbiIKKyIgICAgICAgICAgWy0tXSBbPHNwZWNpZmljYXRvcmUgcGVyY29yc28+Li4uXV0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBzdGFzaC1saWtlIGNvbW1pdCIKK21zZ3N0ciAiJyVzJyBub24gw6ggdW4gY29tbWl0IHNpbWlsZSBhIHVubyBzdGFzaCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJUb28gbWFueSByZXZpc2lvbnMgc3BlY2lmaWVkOiVzIgorbXNnc3RyICJUcm9wcGUgcmV2aXNpb25pIHNwZWNpZmljYXRlOiVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTYyIGdpdC1sZWdhY3ktc3Rhc2guc2g6NTQ5Cittc2dpZCAiTm8gc3Rhc2ggZW50cmllcyBmb3VuZC4iCittc2dzdHIgIk5lc3N1bmEgdm9jZSBkaSBzdGFzaCB0cm92YXRhLiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCByZWZlcmVuY2UiCittc2dzdHIgIiVzIG5vbiDDqCB1biByaWZlcmltZW50byB2YWxpZG8iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMjUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3NQorbXNnaWQgImdpdCBzdGFzaCBjbGVhciB3aXRoIHBhcmFtZXRlcnMgaXMgdW5pbXBsZW1lbnRlZCIKK21zZ3N0ciAiZ2l0IHN0YXNoIGNsZWFyIGNvbiBwYXJhbWV0cmkgbm9uIMOoIGltcGxlbWVudGF0byIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQwNAorbXNnaWQgImNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXBwbGljYXJlIHVubyBzdGFzaCBuZWwgbWV6em8gZGkgdW4gbWVyZ2UiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIGRpZmYgJXNeIS4iCittc2dzdHIgImltcG9zc2liaWxlIGdlbmVyYXJlIGlsIGRpZmYgJXNeISIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQyMgorbXNnaWQgImNvbmZsaWN0cyBpbiBpbmRleC5Ucnkgd2l0aG91dCAtLWluZGV4LiIKK21zZ3N0ciAiY2kgc29ubyBjb25mbGl0dGkgbmVsbCdpbmRpY2UuIFByb3ZhIHNlbnphIC0taW5kZXguIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDI4Cittc2dpZCAiY291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2FsdmFyZSBsJ2FsYmVybyBpbmRpY2UiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MzcKK21zZ2lkICJjb3VsZCBub3QgcmVzdG9yZSB1bnRyYWNrZWQgZmlsZXMgZnJvbSBzdGFzaCIKK21zZ3N0ciAibm9uIMOoIHN0YXRvIHBvc3NpYmlsZSByaXByaXN0aW5hcmUgaSBmaWxlIG5vbiB0cmFjY2lhdGkgZGFsbG8gc3Rhc2giCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWVyZ2luZyAlcyB3aXRoICVzIgorbXNnc3RyICJNZXJnZSBkaSAlcyBjb24gJXMgaW4gY29yc28iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0NjEgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2ODEKK21zZ2lkICJJbmRleCB3YXMgbm90IHVuc3Rhc2hlZC4iCittc2dzdHIgIkwnaW5kaWNlIG5vbiDDqCBzdGF0byByaW1vc3NvIGRhbGxvIHN0YXNoLiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjUyMiBidWlsdGluL3N0YXNoLmM6NjIxCittc2dpZCAiYXR0ZW1wdCB0byByZWNyZWF0ZSB0aGUgaW5kZXgiCittc2dzdHIgInRlbnRhIGRpIHJpY3JlYXJlIGwnaW5kaWNlIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRyb3BwZWQgJXMgKCVzKSIKK21zZ3N0ciAiSG8gc2NhcnRhdG8gJXMgKCVzKSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCittc2dzdHIgIiVzOiBJbXBvc3NpYmlsZSBzY2FydGFyZSBsYSB2b2NlIGRpIHN0YXNoIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgc3Rhc2ggcmVmZXJlbmNlIgorbXNnc3RyICInJXMnIG5vbiDDqCB1biByaWZlcmltZW50byBzdGFzaCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjYzMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjY5NQorbXNnaWQgIlRoZSBzdGFzaCBlbnRyeSBpcyBrZXB0IGluIGNhc2UgeW91IG5lZWQgaXQgYWdhaW4uIgorbXNnc3RyICIiCisiTGEgdm9jZSBkaSBzdGFzaCDDqCBtYW50ZW51dGEgbmVsIGNhc28gaW4gY3VpIHR1IG5lIGFiYmlhIG51b3ZhbWVudGUgYmlzb2duby4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2NTYgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MTMKK21zZ2lkICJObyBicmFuY2ggbmFtZSBzcGVjaWZpZWQiCittc2dzdHIgIk5vbWUgZGVsIGJyYW5jaCBub24gc3BlY2lmaWNhdG8iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo3OTYgYnVpbHRpbi9zdGFzaC5jOjgzMworIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgdXBkYXRlICVzIHdpdGggJXMiCittc2dzdHIgIkltcG9zc2liaWxlIGFnZ2lvcm5hcmUgJXMgY29uICVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6ODE0IGJ1aWx0aW4vc3Rhc2guYzoxNDc4IGJ1aWx0aW4vc3Rhc2guYzoxNTQzCittc2dpZCAic3Rhc2ggbWVzc2FnZSIKK21zZ3N0ciAibWVzc2FnZ2lvIGRpIHN0YXNoIgorCisjOiBidWlsdGluL3N0YXNoLmM6ODI0Cittc2dpZCAiXCJnaXQgc3Rhc2ggc3RvcmVcIiByZXF1aXJlcyBvbmUgPGNvbW1pdD4gYXJndW1lbnQiCittc2dzdHIgIlwiZ2l0IHN0YXNoIHN0b3JlXCIgcmljaGllZGUgdW4gYXJnb21lbnRvIDxjb21taXQ+IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTA0OSBnaXQtbGVnYWN5LXN0YXNoLnNoOjIxOAorbXNnaWQgIk5vIGNoYW5nZXMgc2VsZWN0ZWQiCittc2dzdHIgIk5lc3N1bmEgbW9kaWZpY2Egc2VsZXppb25hdGEiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTQ5IGdpdC1sZWdhY3ktc3Rhc2guc2g6MTUwCittc2dpZCAiWW91IGRvIG5vdCBoYXZlIHRoZSBpbml0aWFsIGNvbW1pdCB5ZXQiCittc2dzdHIgIk5vbiBoYWkgYW5jb3JhIHVuIGNvbW1pdCBpbml6aWFsZSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExNzYgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxNjUKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBpbmRleCBzdGF0ZSIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgc2FsdmFyZSBsbyBzdGF0byBjb3JyZW50ZSBkaSBpbmRleCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExODUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxODAKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgdW50cmFja2VkIGZpbGVzIgorbXNnc3RyICJJbXBvc3NpYmlsZSBzYWx2YXJlIGkgZmlsZSBub24gdHJhY2NpYXRpIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE5NiBidWlsdGluL3N0YXNoLmM6MTIwNSBnaXQtbGVnYWN5LXN0YXNoLnNoOjIwMQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMTQKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCB3b3JrdHJlZSBzdGF0ZSIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgc2FsdmFyZSBsbyBzdGF0byBjb3JyZW50ZSBkZWxsJ2FsYmVybyBkaSBsYXZvcm8iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMjMzIGdpdC1sZWdhY3ktc3Rhc2guc2g6MjM0Cittc2dpZCAiQ2Fubm90IHJlY29yZCB3b3JraW5nIHRyZWUgc3RhdGUiCittc2dzdHIgIkltcG9zc2liaWxlIHJlZ2lzdHJhcmUgbG8gc3RhdG8gZGVsbCdhbGJlcm8gZGkgbGF2b3JvIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI4MiBnaXQtbGVnYWN5LXN0YXNoLnNoOjMzOAorbXNnaWQgIkNhbid0IHVzZSAtLXBhdGNoIGFuZCAtLWluY2x1ZGUtdW50cmFja2VkIG9yIC0tYWxsIGF0IHRoZSBzYW1lIHRpbWUiCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSB1c2FyZSAtLXBhdGNoIGUgLS1pbmNsdWRlLXVudHJhY2tlZCBvIC0tYWxsIGFsbG8gc3Rlc3NvIHRlbXBvIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI5OAorbXNnaWQgIkRpZCB5b3UgZm9yZ2V0IHRvICdnaXQgYWRkJz8iCittc2dzdHIgIlRpIHNlaSBzY29yZGF0byBkaSBlc2VndWlyZSAnZ2l0IGFkZCc/IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTMxMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjM0NgorbXNnaWQgIk5vIGxvY2FsIGNoYW5nZXMgdG8gc2F2ZSIKK21zZ3N0ciAiTmVzc3VuYSBtb2RpZmljYSBsb2NhbGUgZGEgc2FsdmFyZSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMjAgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTEKK21zZ2lkICJDYW5ub3QgaW5pdGlhbGl6ZSBzdGFzaCIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgaW5pemlhbGl6emFyZSBzdGFzaCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMzUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTUKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBzdGF0dXMiCittc2dzdHIgIkltcG9zc2liaWxlIHNhbHZhcmUgbG8gc3RhdG8gYXR0dWFsZSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2F2ZWQgd29ya2luZyBkaXJlY3RvcnkgYW5kIGluZGV4IHN0YXRlICVzIgorbXNnc3RyICJEaXJlY3RvcnkgZGkgbGF2b3JvIGUgc3RhdG8gaW5kaWNlIHNhbHZhdGk6ICVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQzMCBnaXQtbGVnYWN5LXN0YXNoLnNoOjM4NQorbXNnaWQgIkNhbm5vdCByZW1vdmUgd29ya3RyZWUgY2hhbmdlcyIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgcmltdW92ZXJlIGxlIG1vZGlmaWNoZSBhbGwnYWxiZXJvIGRpIGxhdm9ybyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NjkgYnVpbHRpbi9zdGFzaC5jOjE1MzQKK21zZ2lkICJrZWVwIGluZGV4IgorbXNnc3RyICJtYW50aWVuaSBsJ2luZGljZSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NzEgYnVpbHRpbi9zdGFzaC5jOjE1MzYKK21zZ2lkICJzdGFzaCBpbiBwYXRjaCBtb2RlIgorbXNnc3RyICJlc2VndWkgbG8gc3Rhc2ggaW4gbW9kYWxpdMOgIHBhdGNoIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3MiBidWlsdGluL3N0YXNoLmM6MTUzNworbXNnaWQgInF1aWV0IG1vZGUiCittc2dzdHIgIm1vZGFsaXTDoCBzaWxlbnppb3NhIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3NCBidWlsdGluL3N0YXNoLmM6MTUzOQorbXNnaWQgImluY2x1ZGUgdW50cmFja2VkIGZpbGVzIGluIHN0YXNoIgorbXNnc3RyICJpbmNsdWRpIGkgZmlsZSBub24gdHJhY2NpYXRpIG5lbGxvIHN0YXNoIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3NiBidWlsdGluL3N0YXNoLmM6MTU0MQorbXNnaWQgImluY2x1ZGUgaWdub3JlIGZpbGVzIgorbXNnc3RyICJpbmNsdWRpIGkgZmlsZSBpZ25vcmF0aSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE2MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGV4ZWMgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlICVzIgorCisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzoxOAorbXNnaWQgImdpdCBzdHJpcHNwYWNlIFstcyB8IC0tc3RyaXAtY29tbWVudHNdIgorbXNnc3RyICJnaXQgc3RyaXBzcGFjZSBbLXMgfCAtLXN0cmlwLWNvbW1lbnRzXSIKKworIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MTkKK21zZ2lkICJnaXQgc3RyaXBzcGFjZSBbLWMgfCAtLWNvbW1lbnQtbGluZXNdIgorbXNnc3RyICJnaXQgc3RyaXBzcGFjZSBbLWMgfCAtLWNvbW1lbnQtbGluZXNdIgorCisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzozNworbXNnaWQgInNraXAgYW5kIHJlbW92ZSBhbGwgbGluZXMgc3RhcnRpbmcgd2l0aCBjb21tZW50IGNoYXJhY3RlciIKK21zZ3N0ciAic2FsdGEgZSByaW11b3ZpIHR1dHRlIGxlIHJpZ2hlIGNoZSBpbml6aWFubyBjb24gdW4gY2FyYXR0ZXJlIGNvbW1lbnRvIgorCisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzo0MAorbXNnaWQgInByZXBlbmQgY29tbWVudCBjaGFyYWN0ZXIgYW5kIHNwYWNlIHRvIGVhY2ggbGluZSIKK21zZ3N0ciAiYW50ZXBvbmkgaWwgY2FyYXR0ZXJlIGNvbW1lbnRvIGUgdW5vIHNwYXppbyBhIG9nbmkgcmlnYSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTk5CisjLCBjLWZvcm1hdAorbXNnaWQgIkV4cGVjdGluZyBhIGZ1bGwgcmVmIG5hbWUsIGdvdCAlcyIKK21zZ3N0ciAiQXR0ZXNvIG5vbWUgcmlmZXJpbWVudG8gY29tcGxldG8sIHJpY2V2dXRvICVzIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjQKK21zZ2lkICJzdWJtb2R1bGUtLWhlbHBlciBwcmludC1kZWZhdWx0LXJlbW90ZSB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgInN1Ym1vZHVsZS0taGVscGVyIHByaW50LWRlZmF1bHQtcmVtb3RlIG5vbiByaWNoaWVkZSBhcmdvbWVudGkiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0cmlwIG9uZSBjb21wb25lbnQgb2ZmIHVybCAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaW11b3ZlcmUgdW4gY29tcG9uZW50ZSBkYWxsJ1VSTCAnJXMnIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDEwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk1Cittc2dpZCAiYWx0ZXJuYXRpdmUgYW5jaG9yIGZvciByZWxhdGl2ZSBwYXRocyIKK21zZ3N0ciAiYW5jb3JhZ2dpbyBhbHRlcm5hdGl2byBwZXIgaSBwZXJjb3JzaSByZWxhdGl2aSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxNQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBsaXN0IFstLXByZWZpeD08cGF0aD5dIFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbGlzdCBbLS1wcmVmaXg9PHBlcmNvcnNvPl0gWzxwZXJjb3Jzbz4uLi5dIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDcyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2MzAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gdXJsIGZvdW5kIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIGluIC5naXRtb2R1bGVzIgorbXNnc3RyICJOZXNzdW4gVVJMIHRyb3ZhdG8gaW4gLmdpdG1vZHVsZXMgcGVyIGlsIHBlcmNvcnNvIGRlbCBzb3R0b21vZHVsbyAnJXMnIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVudGVyaW5nICclcydcbiIKK21zZ3N0ciAiRW50cm8gaW4gJyVzJ1xuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJydW5fY29tbWFuZCByZXR1cm5lZCBub24temVybyBzdGF0dXMgZm9yICVzXG4iCisiLiIKK21zZ3N0ciAiIgorInJ1bl9jb21tYW5kIGhhIHJlc3RpdHVpdG8gdW4gY29kaWNlIGRpdmVyc28gZGEgemVybyBwZXIgJXNcbiIKKyIuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJydW5fY29tbWFuZCByZXR1cm5lZCBub24temVybyBzdGF0dXMgd2hpbGUgcmVjdXJzaW5nIGluIHRoZSBuZXN0ZWQgIgorInN1Ym1vZHVsZXMgb2YgJXNcbiIKKyIuIgorbXNnc3RyICIiCisicnVuX2NvbW1hbmQgaGEgcmVzdGl0dWl0byB1biBjb2RpY2UgZGl2ZXJzbyBkYSB6ZXJvIGR1cmFudGUgbGEgcmljb3JzaW9uZSAiCisibmVpIHNvdHRvbW9kdWxpIGlubmVzdGF0aSBkaSAlc1xuIgorIi4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjUKK21zZ2lkICJTdXBwcmVzcyBvdXRwdXQgb2YgZW50ZXJpbmcgZWFjaCBzdWJtb2R1bGUgY29tbWFuZCIKK21zZ3N0ciAiTm9uIHZpc3VhbGl6emFyZSBsJ291dHB1dCBkZWkgY29tYW5kaSBlc2VndWl0aSBpbiBvZ25pIHNvdHRvbW9kdWxvIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDYzCittc2dpZCAiUmVjdXJzZSBpbnRvIG5lc3RlZCBzdWJtb2R1bGVzIgorbXNnc3RyICJFc2VndWkgcmljb3JzaXZhbWVudGUgc3VpIHNvdHRvbW9kdWxpIGlubmVzdGF0aSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU3MgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFstLV0gPGNvbW1hbmQ+IgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbLS1dIDxjb21hbmRvPiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU5OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY291bGQgbm90IGxvb2sgdXAgY29uZmlndXJhdGlvbiAnJXMnLiBBc3N1bWluZyB0aGlzIHJlcG9zaXRvcnkgaXMgaXRzIG93biAiCisiYXV0aG9yaXRhdGl2ZSB1cHN0cmVhbS4iCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSB0cm92YXJlIGxhIGNvbmZpZ3VyYXppb25lICclcycuIEFzc3VtbyBjaGUgcXVlc3RvIHJlcG9zaXRvcnkgc2lhICIKKyJpbCBwcm9wcmlvIHJlcG9zaXRvcnkgYXV0b3JpdGF0aXZvIHVwc3RyZWFtLiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY2NworIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVnaXN0ZXIgdXJsIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgorbXNnc3RyICJSZWdpc3RyYXppb25lIGRlbGwnVVJMIHBlciBpbCBwZXJjb3JzbyBzb3R0b21vZHVsbyAnJXMnIG5vbiByaXVzY2l0YSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY3MQorIywgYy1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgJyVzJyAoJXMpIHJlZ2lzdGVyZWQgZm9yIHBhdGggJyVzJ1xuIgorbXNnc3RyICJTb3R0b21vZHVsbyAnJXMnICglcykgcmVnaXN0cmF0byBwZXIgaWwgcGVyY29yc28gJyVzJ1xuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIndhcm5pbmc6IGNvbW1hbmQgdXBkYXRlIG1vZGUgc3VnZ2VzdGVkIGZvciBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICIiCisiYXZ2aXNvOiBzdWdnZXJpdGEgbW9kYWxpdMOgIGNvbWFuZG8gYWdnaW9ybmFtZW50byBwZXIgaWwgc290dG9tb2R1bG8gJyVzJ1xuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njg4CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciB1cGRhdGUgbW9kZSBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKK21zZ3N0ciAiIgorIlJlZ2lzdHJhemlvbmUgZGVsbGEgbW9kYWxpdMOgIGFnZ2lvcm5hbWVudG8gcGVyIGlsIHBlcmNvcnNvIHNvdHRvbW9kdWxvICclcyciCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MTAKK21zZ2lkICJTdXBwcmVzcyBvdXRwdXQgZm9yIGluaXRpYWxpemluZyBhIHN1Ym1vZHVsZSIKK21zZ3N0ciAiTm9uIHZpc3VhbGl6emFyZSBsJ291dHB1dCBkZWxsJ2luaXppYWxpenphemlvbmUgZGVsIHNvdHRvbW9kdWxvIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzE1Cittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxvcHRpb25zPl0gWzxwYXRoPl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8b3B6aW9uaT5dIFs8cGVyY29yc28+XSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjc4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Ym1vZHVsZSBtYXBwaW5nIGZvdW5kIGluIC5naXRtb2R1bGVzIGZvciBwYXRoICclcyciCittc2dzdHIgIm1hcHBpbmcgc290dG9tb2R1bG8gcGVyIGlsIHBlcmNvcnNvICclcycgbm9uIHRyb3ZhdG8gaW4gLmdpdG1vZHVsZXMiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlc29sdmUgSEVBRCByZWYgaW5zaWRlIHRoZSBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmlzb2x2ZXJlIGlsIHJpZmVyaW1lbnRvIEhFQUQgbmVsIHNvdHRvbW9kdWxvICclcyciCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NjQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAicmljb3JzaW9uZSBuZWwgc290dG9tb2R1bG8gJyVzJyBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExOTkKK21zZ2lkICJTdXBwcmVzcyBzdWJtb2R1bGUgc3RhdHVzIG91dHB1dCIKK21zZ3N0ciAiTm9uIHZpc3VhbGl6emFyZSBsJ291dHB1dCBkZWxsbyBzdGF0byBkZWwgc290dG9tb2R1bG8iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODkKK21zZ2lkICIiCisiVXNlIGNvbW1pdCBzdG9yZWQgaW4gdGhlIGluZGV4IGluc3RlYWQgb2YgdGhlIG9uZSBzdG9yZWQgaW4gdGhlIHN1Ym1vZHVsZSAiCisiSEVBRCIKK21zZ3N0ciAiIgorIlVzYSBpbCBjb21taXQgc2FsdmF0byBuZWxsJ2luZGljZSBhbnppY2jDqSBxdWVsbG8gc2FsdmF0byBuZWxsJ0hFQUQgZGVsICIKKyJzb3R0b21vZHVsbyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg5MAorbXNnaWQgInJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKK21zZ3N0ciAiZXNlZ3VpIHJpY29yc2l2YW1lbnRlIHN1aSBzb3R0b21vZHVsaSBpbm5lc3RhdGkiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4OTUKK21zZ2lkICJnaXQgc3VibW9kdWxlIHN0YXR1cyBbLS1xdWlldF0gWy0tY2FjaGVkXSBbLS1yZWN1cnNpdmVdIFs8cGF0aD4uLi5dIgorbXNnc3RyICIiCisiZ2l0IHN1Ym1vZHVsZSBzdGF0dXMgWy0tcXVpZXRdIFstLWNhY2hlZF0gWy0tcmVjdXJzaXZlXSBbPHBlcmNvcnNvPi4uLl0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5MTkKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbmFtZSA8cGF0aD4iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBuYW1lIDxwZXJjb3Jzbz4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIGZvciAnJXMnXG4iCittc2dzdHIgIlNpbmNyb25penphemlvbmUgVVJMIHNvdHRvbW9kdWxvIHBlciAnJXMnIGluIGNvcnNvXG4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlZ2lzdGVyIHVybCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKK21zZ3N0ciAicmVnaXN0cmF6aW9uZSBkZWxsJ1VSTCBwZXIgaWwgcGVyY29yc28gc290dG9tb2R1bG8gJyVzJyBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBnZXQgdGhlIGRlZmF1bHQgcmVtb3RlIGZvciBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAicmVjdXBlcm8gZGVsIHJlbW90byBwcmVkZWZpbml0byBwZXIgaWwgc290dG9tb2R1bG8gJyVzJyBub24gcml1c2NpdG8iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1cGRhdGUgcmVtb3RlIGZvciBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiYWdnaW9ybmFtZW50byBkZWwgcmVtb3RvIHBlciBpbCBzb3R0b21vZHVsbyAnJXMnIG5vbiByaXVzY2l0byIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNjEKK21zZ2lkICJTdXBwcmVzcyBvdXRwdXQgb2Ygc3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIgorbXNnc3RyICIiCisiTm9uIHZpc3VhbGl6emFyZSBsJ291dHB1dCBkZWxsYSBzaW5jcm9uaXp6YXppb25lIGRlbGwnVVJMIGRlbCBzb3R0b21vZHVsbyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNjgKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgc3luYyBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbPHBhdGg+XSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHN5bmMgWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWzxwZXJjb3Jzbz5dIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU3VibW9kdWxlIHdvcmsgdHJlZSAnJXMnIGNvbnRhaW5zIGEgLmdpdCBkaXJlY3RvcnkgKHVzZSAncm0gLXJmJyBpZiB5b3UgIgorInJlYWxseSB3YW50IHRvIHJlbW92ZSBpdCBpbmNsdWRpbmcgYWxsIG9mIGl0cyBoaXN0b3J5KSIKK21zZ3N0ciAiIgorIkwnYWxiZXJvIGRpIGxhdm9ybyBkZWwgc290dG9tb2R1bG8gKCclcycpIGNvbnRpZW5lIHVuYSBkaXJlY3RvcnkgLmdpdCAodXNhICIKKyIncm0gLXJmJyBzZSB2dW9pIHZlcmFtZW50ZSByaW11b3ZlcmxhLCBpbmNsdXNhIGwnaW50ZXJhIHN1YSBjcm9ub2xvZ2lhKSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJyBjb250YWlucyBsb2NhbCBtb2RpZmljYXRpb25zOyB1c2UgJy1mJyB0byBkaXNjYXJkICIKKyJ0aGVtIgorbXNnc3RyICIiCisiTCdhbGJlcm8gZGkgbGF2b3JvIGRlbCBzb3R0b21vZHVsbyAoJyVzJykgY29udGllbmUgbW9kaWZpY2hlIGxvY2FsaTsgdXNhICctIgorImYnIHBlciBzY2FydGFybGUiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTQyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNsZWFyZWQgZGlyZWN0b3J5ICclcydcbiIKK21zZ3N0ciAiRGlyZWN0b3J5ICclcycgcmlwdWxpdGFcbiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHJlbW92ZSBzdWJtb2R1bGUgd29yayB0cmVlICclcydcbiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgcmltdW92ZXJlIGwnYWxiZXJvIGRpIGxhdm9ybyBkZWwgc290dG9tb2R1bG8gJyVzJ1xuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGVtcHR5IHN1Ym1vZHVsZSBkaXJlY3RvcnkgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSBsYSBkaXJlY3RvcnkgdnVvdGEgZGVsIHNvdHRvbW9kdWxvICVzIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE3MQorIywgYy1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgJyVzJyAoJXMpIHVucmVnaXN0ZXJlZCBmb3IgcGF0aCAnJXMnXG4iCittc2dzdHIgIlJpbW9zc2EgcmVnaXN0cmF6aW9uZSBzb3R0b21vZHVsbyAnJXMnICglcykgcGVyIGlsIHBlcmNvcnNvICclcydcbiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDAKK21zZ2lkICJSZW1vdmUgc3VibW9kdWxlIHdvcmtpbmcgdHJlZXMgZXZlbiBpZiB0aGV5IGNvbnRhaW4gbG9jYWwgY2hhbmdlcyIKK21zZ3N0ciAiIgorIlJpbXVvdmkgZ2xpIGFsYmVyaSBkaSBsYXZvcm8gZGVpIHNvdHRvbW9kdWxpIGFuY2hlIHNlIGNvbnRlbmdvbm8gbW9kaWZpY2hlICIKKyJsb2NhbGkiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjAxCittc2dpZCAiVW5yZWdpc3RlciBhbGwgc3VibW9kdWxlcyIKK21zZ3N0ciAiQW5udWxsYSBsYSByZWdpc3RyYXppb25lIGRpIHR1dHRpIGkgc290dG9tb2R1bGkiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjA2Cittc2dpZCAiIgorImdpdCBzdWJtb2R1bGUgZGVpbml0IFstLXF1aWV0XSBbLWYgfCAtLWZvcmNlXSBbLS1hbGwgfCBbLS1dIFs8cGF0aD4uLi5dXSIKK21zZ3N0ciAiIgorImdpdCBzdWJtb2R1bGUgZGVpbml0IFstLXF1aWV0XSBbLWYgfCAtLWZvcmNlXSBbLS1hbGwgfCBbLS1dIFs8cGVyY29yc28+Li4uXV0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjIwCittc2dpZCAiVXNlICctLWFsbCcgaWYgeW91IHJlYWxseSB3YW50IHRvIGRlaW5pdGlhbGl6ZSBhbGwgc3VibW9kdWxlcyIKK21zZ3N0ciAiVXNhICctLWFsbCcgc2UgdnVvaSB2ZXJhbWVudGUgZGVpbml6aWFsaXp6YXJlIHR1dHRpIGkgc290dG9tb2R1bGkiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjg5Cittc2dpZCAiIgorIkFuIGFsdGVybmF0ZSBjb21wdXRlZCBmcm9tIGEgc3VwZXJwcm9qZWN0J3MgYWx0ZXJuYXRlIGlzIGludmFsaWQuXG4iCisiVG8gYWxsb3cgR2l0IHRvIGNsb25lIHdpdGhvdXQgYW4gYWx0ZXJuYXRlIGluIHN1Y2ggYSBjYXNlLCBzZXRcbiIKKyJzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSB0byAnaW5mbycgb3IsIGVxdWl2YWxlbnRseSwgY2xvbmUgd2l0aFxuIgorIictLXJlZmVyZW5jZS1pZi1hYmxlJyBpbnN0ZWFkIG9mICctLXJlZmVyZW5jZScuIgorbXNnc3RyICIiCisiVW4gYWx0ZXJuYXRvIGNhbGNvbGF0byBhIHBhcnRpcmUgZGFsbCdhbHRlcm5hdG8gZGkgdW4gcHJvZ2V0dG8gZGkgbGl2ZWxsb1xuIgorInN1cGVyaW9yZSBub24gw6ggdmFsaWRvLlxuIgorIlBlciBjb25zZW50aXJlIGEgR2l0IGRpIGVzZWd1aXJlIGlsIGNsb25lIHNlbnphIGFsdGVybmF0aSBpbiB0YWwgY2FzbywgIgorImltcG9zdGFcbiIKKyJzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSBhICdpbmZvJyBvLCBlcXVpdmFsZW50ZW1lbnRlLCBlc2VndWkgaWwgIgorImNsb25lXG4iCisiY29uIGwnb3B6aW9uZSAnLS1yZWZlcmVuY2UtaWYtYWJsZScgYW56aWNow6kgJy0tcmVmZXJlbmNlJy4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzI4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzMxCisjLCBjLWZvcm1hdAorbXNnaWQgInN1Ym1vZHVsZSAnJXMnIGNhbm5vdCBhZGQgYWx0ZXJuYXRlOiAlcyIKK21zZ3N0ciAibm9uIMOoIHBvc3NpYmlsZSBhZ2dpdW5nZXJlIHVuIGFsdGVybmF0byBwZXIgaWwgc290dG9tb2R1bG8gJyVzJzogJXMiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZhbHVlICclcycgZm9yIHN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IGlzIG5vdCByZWNvZ25pemVkIgorbXNnc3RyICJWYWxvcmUgJyVzJyBwZXIgc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgbm9uIHJpY29ub3NjaXV0byIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmFsdWUgJyVzJyBmb3Igc3VibW9kdWxlLmFsdGVybmF0ZUxvY2F0aW9uIGlzIG5vdCByZWNvZ25pemVkIgorbXNnc3RyICJWYWxvcmUgJyVzJyBwZXIgc3VibW9kdWxlLmFsdGVybmF0ZUxvY2F0aW9uIG5vbiByaWNvbm9zY2l1dG8iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk4Cittc2dpZCAid2hlcmUgdGhlIG5ldyBzdWJtb2R1bGUgd2lsbCBiZSBjbG9uZWQgdG8iCittc2dzdHIgInBlcmNvcnNvIGluIGN1aSBzYXLDoCBjbG9uYXRvIGlsIG51b3ZvIHNvdHRvbW9kdWxvIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMQorbXNnaWQgIm5hbWUgb2YgdGhlIG5ldyBzdWJtb2R1bGUiCittc2dzdHIgIm5vbWUgZGVsIG51b3ZvIHNvdHRvbW9kdWxvIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwNAorbXNnaWQgInVybCB3aGVyZSB0byBjbG9uZSB0aGUgc3VibW9kdWxlIGZyb20iCittc2dzdHIgIlVSTCBkYSBjdWkgY2xvbmFyZSBpbCBzb3R0b21vZHVsbyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTIKK21zZ2lkICJkZXB0aCBmb3Igc2hhbGxvdyBjbG9uZXMiCittc2dzdHIgInByb2ZvbmRpdMOgIHBlciBpIGNsb25pIHNoYWxsb3ciCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE1IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI0Cittc2dpZCAiZm9yY2UgY2xvbmluZyBwcm9ncmVzcyIKK21zZ3N0ciAiZm9yemEgbCdpbmRpY2F6aW9uZSBkJ2F2YW56YW1lbnRvIGRlbGxhIGNsb25hemlvbmUiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI2Cittc2dpZCAiZGlzYWxsb3cgY2xvbmluZyBpbnRvIG5vbi1lbXB0eSBkaXJlY3RvcnkiCittc2dzdHIgImRpc2FiaWxpdGEgaWwgY2xvbmUgaW4gdW5hIGRpcmVjdG9yeSBub24gdnVvdGEiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDI0Cittc2dpZCAiIgorImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbLS1xdWlldF0gWy0tcmVmZXJlbmNlICIKKyI8cmVwb3NpdG9yeT5dIFstLW5hbWUgPG5hbWU+XSBbLS1kZXB0aCA8ZGVwdGg+XSBbLS1zaW5nbGUtYnJhbmNoXSAtLXVybCAiCisiPHVybD4gLS1wYXRoIDxwYXRoPiIKK21zZ3N0ciAiIgorImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg9PHBlcmNvcnNvPl0gWy0tcXVpZXRdIFstLXJlZmVyZW5jZSAiCisiPHJlcG9zaXRvcnk+XSBbLS1uYW1lIDxub21lPl0gWy0tZGVwdGggPHByb2ZvbmRpdMOgPl0gWy0tc2luZ2xlLWJyYW5jaF0gLS11cmwgIgorIjxVUkw+IC0tcGF0aCA8cGVyY29yc28+IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ0OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBjcmVhdGUvdXNlICclcycgaW4gYW5vdGhlciBzdWJtb2R1bGUncyBnaXQgZGlyIgorbXNnc3RyICIiCisibWkgcmlmaXV0byBkaSBjcmVhcmUvdXNhcmUgJyVzJyBuZWxsYSBkaXJlY3RvcnkgR2l0IGRpIHVuIGFsdHJvIHNvdHRvbW9kdWxvIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICJjbG9uZSBvZiAnJXMnIGludG8gc3VibW9kdWxlIHBhdGggJyVzJyBmYWlsZWQiCittc2dzdHIgImNsb25lIGRpICclcycgbmVsIHBlcmNvcnNvIGRlbCBzb3R0b21vZHVsbyAoJyVzJykgbm9uIHJpdXNjaXRvIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ2NAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXJlY3Rvcnkgbm90IGVtcHR5OiAnJXMnIgorbXNnc3RyICJkaXJlY3Rvcnkgbm9uIHZ1b3RhOiAnJXMnIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ3NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZ2V0IHN1Ym1vZHVsZSBkaXJlY3RvcnkgZm9yICclcyciCittc2dzdHIgImltcG9zc2liaWxlIHJlY3VwZXJhcmUgbGEgZGlyZWN0b3J5IGRlbCBzb3R0b21vZHVsbyBwZXIgJyVzJyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB1cGRhdGUgbW9kZSAnJXMnIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgorbXNnc3RyICIiCisiTW9kYWxpdMOgIGFnZ2lvcm5hbWVudG8gJyVzJyBub24gdmFsaWRhIHBlciBpbCBwZXJjb3JzbyBkZWwgc290dG9tb2R1bG8gKCclcycpIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHVwZGF0ZSBtb2RlICclcycgY29uZmlndXJlZCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKK21zZ3N0ciAiIgorIsOIIHN0YXRhIGNvbmZpZ3VyYXRhIHVuYSBtb2RhbGl0w6AgYWdnaW9ybmFtZW50byAnJXMnIG5vbiB2YWxpZGEgcGVyIGlsICIKKyJwZXJjb3JzbyBkZWwgc290dG9tb2R1bG8gKCclcycpIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYxNworIywgYy1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJXMnIG5vdCBpbml0aWFsaXplZCIKK21zZ3N0ciAiUGVyY29yc28gZGVsIHNvdHRvbW9kdWxvICgnJXMnKSBub24gaW5pemlhbGl6emF0byIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MjEKK21zZ2lkICJNYXliZSB5b3Ugd2FudCB0byB1c2UgJ3VwZGF0ZSAtLWluaXQnPyIKK21zZ3N0ciAiUG90cmVzdGkgdm9sZXIgdXNhcmUgJ3VwZGF0ZSAtLWluaXQnLiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBpbmcgdW5tZXJnZWQgc3VibW9kdWxlICVzIgorbXNnc3RyICJJZ25vcm8gaWwgc290dG9tb2R1bG8gJXMgbm9uIHNvdHRvcG9zdG8gYSBtZXJnZSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBpbmcgc3VibW9kdWxlICclcyciCittc2dzdHIgIklnbm9ybyBpbCBzb3R0b21vZHVsbyAnJXMnIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTgzMAorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJy4gUmV0cnkgc2NoZWR1bGVkIgorbXNnc3RyICJDbG9uZSBkaSAnJXMnIG5vbiByaXVzY2l0by4gTnVvdm8gdGVudGF0aXZvIHByb2dyYW1tYXRvIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJyBhIHNlY29uZCB0aW1lLCBhYm9ydGluZyIKK21zZ3N0ciAiIgorIkNsb25lIGRpICclcycgbm9uIHJpdXNjaXRvIHBlciBsYSBzZWNvbmRhIHZvbHRhLCBpbnRlcnJvbXBvIGwnb3BlcmF6aW9uZSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNDkKK21zZ2lkICJwYXRoIGludG8gdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAicGVyY29yc28gbmVsbCdhbGJlcm8gZGkgbGF2b3JvIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwNgorbXNnaWQgInBhdGggaW50byB0aGUgd29ya2luZyB0cmVlLCBhY3Jvc3MgbmVzdGVkIHN1Ym1vZHVsZSBib3VuZGFyaWVzIgorbXNnc3RyICIiCisicGVyY29yc28gbmVsbCdhbGJlcm8gZGkgbGF2b3JvIGF0dHJhdmVyc28gaSBjb25maW5pIGRlaSBzb3R0b21vZHVsaSBpbm5lc3RhdGkiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTEwCittc2dpZCAicmViYXNlLCBtZXJnZSwgY2hlY2tvdXQgb3Igbm9uZSIKK21zZ3N0ciAicmViYXNlLCBtZXJnZSwgY2hlY2tvdXQgbyBub25lIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxNgorbXNnaWQgIkNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgdHJ1bmNhdGVkIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHJldmlzaW9ucyIKK21zZ3N0ciAiQ3JlYSB1biBjbG9uZSBzaGFsbG93IGxpbWl0YXRvIGFsIG51bWVybyBkaSByZXZpc2lvbmkgc3BlY2lmaWNhdG8iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTE5Cittc2dpZCAicGFyYWxsZWwgam9icyIKK21zZ3N0ciAicHJvY2Vzc2kgZGEgZXNlZ3VpcmUgaW4gcGFyYWxsZWxvIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyMQorbXNnaWQgIndoZXRoZXIgdGhlIGluaXRpYWwgY2xvbmUgc2hvdWxkIGZvbGxvdyB0aGUgc2hhbGxvdyByZWNvbW1lbmRhdGlvbiIKK21zZ3N0ciAiZGV0ZXJtaW5hIHNlIGlsIGNsb25lIGluaXppYWxlIHNhcsOgIHNoYWxsb3cgY29tZSByYWNjb21hbmRhdG8iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTIyCittc2dpZCAiZG9uJ3QgcHJpbnQgY2xvbmluZyBwcm9ncmVzcyIKK21zZ3N0ciAibm9uIHN0YW1wYXJlIGwnaW5kaWNhemlvbmUgZGkgYXZhbnphbWVudG8gZGVsbGEgY2xvbmF6aW9uZSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MzMKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgdXBkYXRlLWNsb25lIFstLXByZWZpeD08cGF0aD5dIFs8cGF0aD4uLi5dIgorbXNnc3RyICIiCisiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PHBlcmNvcnNvPl0gWzxwZXJjb3Jzbz4uLi5dIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk0NgorbXNnaWQgImJhZCB2YWx1ZSBmb3IgdXBkYXRlIHBhcmFtZXRlciIKK21zZ3N0ciAidmFsb3JlIHBhcmFtZXRybyBhZ2dpb3JuYW1lbnRvIGVycmF0byIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlN1Ym1vZHVsZSAoJXMpIGJyYW5jaCBjb25maWd1cmVkIHRvIGluaGVyaXQgYnJhbmNoIGZyb20gc3VwZXJwcm9qZWN0LCBidXQgIgorInRoZSBzdXBlcnByb2plY3QgaXMgbm90IG9uIGFueSBicmFuY2giCittc2dzdHIgIiIKKyJJbCBicmFuY2ggZGVsIHNvdHRvbW9kdWxvICglcykgw6ggY29uZmlndXJhdG8gaW4gbW9kbyBkYSBlcmVkaXRhcmUgaWwgYnJhbmNoICIKKyJkYWwgcHJvZ2V0dG8gYWwgbGl2ZWxsbyBzdXBlcmlvcmUsIG1hIHF1ZXN0byBub24gw6ggc3UgYWxjdW4gYnJhbmNoIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjExNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZ2V0IGEgcmVwb3NpdG9yeSBoYW5kbGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSByZWN1cGVyYXJlIHVuIGhhbmRsZSByZXBvc2l0b3J5IHBlciBpbCBzb3R0b21vZHVsbyAnJXMnIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1MAorbXNnaWQgInJlY3Vyc2UgaW50byBzdWJtb2R1bGVzIgorbXNnc3RyICJlc2VndWkgcmljb3JzaXZhbWVudGUgc3VpIHNvdHRvbW9kdWxpIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1NgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzxvcHRpb25zPl0gWzxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzxvcHppb25pPl0gWzxwZXJjb3Jzbz4uLi5dIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIxMgorbXNnaWQgImNoZWNrIGlmIGl0IGlzIHNhZmUgdG8gd3JpdGUgdG8gdGhlIC5naXRtb2R1bGVzIGZpbGUiCittc2dzdHIgImNvbnRyb2xsYSBzZSDDqCBzaWN1cm8gc2NyaXZlcmUgc3VsIGZpbGUgLmdpdG1vZHVsZXMiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjE1Cittc2dpZCAidW5zZXQgdGhlIGNvbmZpZyBpbiB0aGUgLmdpdG1vZHVsZXMgZmlsZSIKK21zZ3N0ciAicmltdW92aSBsYSBjb25maWd1cmF6aW9uZSBuZWwgZmlsZSAuZ2l0bW9kdWxlcyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjAKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIDxuYW1lPiBbPHZhbHVlPl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgPG5vbWU+IFs8dmFsb3JlPl0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjIxCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLXVuc2V0IDxuYW1lPiIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLXVuc2V0IDxub21lPiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjIKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tY2hlY2std3JpdGVhYmxlIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tY2hlY2std3JpdGVhYmxlIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI0MSBnaXQtc3VibW9kdWxlLnNoOjE3NAorIywgc2gtZm9ybWF0Cittc2dpZCAicGxlYXNlIG1ha2Ugc3VyZSB0aGF0IHRoZSAuZ2l0bW9kdWxlcyBmaWxlIGlzIGluIHRoZSB3b3JraW5nIHRyZWUiCittc2dzdHIgImFzc2ljdXJhdGkgY2hlIGlsIGZpbGUgLmdpdG1vZHVsZXMgc2lhIG5lbGwnYWxiZXJvIGRpIGxhdm9ybyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyOTEgZ2l0LmM6NDMzIGdpdC5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkb2Vzbid0IHN1cHBvcnQgLS1zdXBlci1wcmVmaXgiCittc2dzdHIgIiVzIG5vbiBzdXBwb3J0YSAtLXN1cGVyLXByZWZpeCIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBzdWJtb2R1bGUtLWhlbHBlciBzdWJjb21tYW5kIgorbXNnc3RyICInJXMnIG5vbiDDqCB1biBzb3R0b2NvbWFuZG8gc3VibW9kdWxlLS1oZWxwZXIgdmFsaWRvIgorCisjOiBidWlsdGluL3N5bWJvbGljLXJlZi5jOjgKK21zZ2lkICJnaXQgc3ltYm9saWMtcmVmIFs8b3B0aW9ucz5dIDxuYW1lPiBbPHJlZj5dIgorbXNnc3RyICJnaXQgc3ltYm9saWMtcmVmIFs8b3B6aW9uaT5dIDxub21lPiBbPHJpZmVyaW1lbnRvPl0iCisKKyM6IGJ1aWx0aW4vc3ltYm9saWMtcmVmLmM6OQorbXNnaWQgImdpdCBzeW1ib2xpYy1yZWYgLWQgWy1xXSA8bmFtZT4iCittc2dzdHIgImdpdCBzeW1ib2xpYy1yZWYgLWQgWy1xXSA8bm9tZT4iCisKKyM6IGJ1aWx0aW4vc3ltYm9saWMtcmVmLmM6NDAKK21zZ2lkICJzdXBwcmVzcyBlcnJvciBtZXNzYWdlIGZvciBub24tc3ltYm9saWMgKGRldGFjaGVkKSByZWZzIgorbXNnc3RyICIiCisibm9uIHZpc3VhbGl6emFyZSBtZXNzYWdnaSBkJ2Vycm9yZSBzZSBjaSBzb25vIHJpZmVyaW1lbnRpIG5vbiBzaW1ib2xpY2kgIgorIihzY29sbGVnYXRpKSIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo0MQorbXNnaWQgImRlbGV0ZSBzeW1ib2xpYyByZWYiCittc2dzdHIgImVsaW1pbmEgcmlmZXJpbWVudG8gc2ltYm9saWNvIgorCisjOiBidWlsdGluL3N5bWJvbGljLXJlZi5jOjQyCittc2dpZCAic2hvcnRlbiByZWYgb3V0cHV0IgorbXNnc3RyICJhYmJyZXZpYSBpbCByaWZlcmltZW50byBuZWxsJ291dHB1dCIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo0MyBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjMKK21zZ2lkICJyZWFzb24iCittc2dzdHIgIm1vdGl2byIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo0MyBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjMKK21zZ2lkICJyZWFzb24gb2YgdGhlIHVwZGF0ZSIKK21zZ3N0ciAibW90aXZvIGRlbGwnYWdnaW9ybmFtZW50byIKKworIzogYnVpbHRpbi90YWcuYzoyNQorbXNnaWQgIiIKKyJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPGtleS1pZD5dIFstZl0gWy1tIDxtc2c+IHwgLUYgPGZpbGU+XVxuIgorIlx0XHQ8dGFnbmFtZT4gWzxoZWFkPl0iCittc2dzdHIgIiIKKyJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPElEIGNoaWF2ZT5dIFstZl0gWy1tIDxtZXNzYWdnaW8+IHwgLUYgPGZpbGU+XVxuIgorIlx0XHQ8bm9tZSB0YWc+IFs8aGVhZD5dIgorCisjOiBidWlsdGluL3RhZy5jOjI3Cittc2dpZCAiZ2l0IHRhZyAtZCA8dGFnbmFtZT4uLi4iCittc2dzdHIgImdpdCB0YWcgLWQgPG5vbWUgdGFnPi4uLiIKKworIzogYnVpbHRpbi90YWcuYzoyOAorbXNnaWQgIiIKKyJnaXQgdGFnIC1sIFstbls8bnVtPl1dIFstLWNvbnRhaW5zIDxjb21taXQ+XSBbLS1uby1jb250YWlucyA8Y29tbWl0Pl0gWy0tIgorInBvaW50cy1hdCA8b2JqZWN0Pl1cbiIKKyJcdFx0Wy0tZm9ybWF0PTxmb3JtYXQ+XSBbLS1bbm8tXW1lcmdlZCBbPGNvbW1pdD5dXSBbPHBhdHRlcm4+Li4uXSIKK21zZ3N0ciAiIgorImdpdCB0YWcgLWwgWy1uWzxudW1lcm8+XV0gWy0tY29udGFpbnMgPGNvbW1pdD5dIFstLW5vLWNvbnRhaW5zIDxjb21taXQ+XSBbLS0iCisicG9pbnRzLWF0IDxvZ2dldHRvPl1cbiIKKyJcdFx0Wy0tZm9ybWF0PTxmb3JtYXRvPl0gWy0tW25vLV1tZXJnZWQgWzxjb21taXQ+XV0gWzxwYXR0ZXJuPi4uLl0iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MzAKK21zZ2lkICJnaXQgdGFnIC12IFstLWZvcm1hdD08Zm9ybWF0Pl0gPHRhZ25hbWU+Li4uIgorbXNnc3RyICJnaXQgdGFnIC12IFstLWZvcm1hdD08Zm9ybWF0bz5dIDxub21lIHRhZz4uLi4iCisKKyM6IGJ1aWx0aW4vdGFnLmM6ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFnICclcycgbm90IGZvdW5kLiIKIG1zZ3N0ciAidGFnICclcycgbm9uIHRyb3ZhdG8uIgogCi0jOiBidWlsdGluL3RhZy5jOjIyNworIzogYnVpbHRpbi90YWcuYzoxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCB0YWcgJyVzJyAod2FzICVzKVxuIgogbXNnc3RyICJUYWcgJyVzJyBlbGltaW5hdG8gKGVyYSAlcylcbiIKIAotIzogYnVpbHRpbi90YWcuYzoyMzkKKyM6IGJ1aWx0aW4vdGFnLmM6MTM1CiAjLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCB2ZXJpZnkgdGhlIHRhZyAnJXMnIgotbXNnc3RyICJub24gw6ggc3RhdG8gcG9zc2liaWxlIHZlcmlmaWNhcmUgaWwgdGFnICclcyciCi0KLSM6IGJ1aWx0aW4vdGFnLmM6MjQ5CiBtc2dpZCAiIgogIlxuIgotIiNcbiIKLSIjIFdyaXRlIGEgdGFnIG1lc3NhZ2VcbiIKLSIjIExpbmVzIHN0YXJ0aW5nIHdpdGggJyMnIHdpbGwgYmUgaWdub3JlZC5cbiIKLSIjXG4iCisiV3JpdGUgYSBtZXNzYWdlIGZvciB0YWc6XG4iCisiICAlc1xuIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQuXG4iCiBtc2dzdHIgIiIKICJcbiIKLSIjXG4iCi0iIyBTY3JpdmVyZSB1biBtZXNzYWdnaW8gYXNzb2NpYXRvIGFsIHRhZ1xuIgotIiMgTGUgcmlnaGUgY2hlIGluaXppYW5vIGNvbiAnIycgdmVycmFubm8gaWdub3JhdGUuXG4iCi0iI1xuIgorIlNjcml2aSB1biBtZXNzYWdnaW8gcGVyIGlsIHRhZzpcbiIKKyIgICVzXG4iCisiTGUgcmlnaGUgY2hlIGluaXppYW5vIGNvbiAnJWMnIHNhcmFubm8gaWdub3JhdGUuXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjU2CisjOiBidWlsdGluL3RhZy5jOjEzOQorIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCi0iI1xuIgotIiMgV3JpdGUgYSB0YWcgbWVzc2FnZVxuIgotIiMgTGluZXMgc3RhcnRpbmcgd2l0aCAnIycgd2lsbCBiZSBrZXB0OyB5b3UgbWF5IHJlbW92ZSB0aGVtIHlvdXJzZWxmIGlmIHlvdSAiCisiV3JpdGUgYSBtZXNzYWdlIGZvciB0YWc6XG4iCisiICAlc1xuIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGtlcHQ7IHlvdSBtYXkgcmVtb3ZlIHRoZW0geW91cnNlbGYgaWYgeW91ICIKICJ3YW50IHRvLlxuIgotIiNcbiIKIG1zZ3N0ciAiIgogIlxuIgotIiNcbiIKLSIjIFNjcml2ZXJlIHVuIG1lc3NhZ2dpbyBhc3NvY2lhdG8gYWwgdGFnXG4iCi0iIyBMZSByaWdoZSBjaGUgaW5pemlhbm8gY29uICcjJyB2ZXJyYW5ubyBtYW50ZW51dGU7IHBvc3Nvbm8gZXNzZXJlIGNvbXVucXVlICIKLSJyaW1vc3NlIG1hbnVhbG1lbnRlLlxuIgotIiNcbiIKKyJTY3JpdmkgdW4gbWVzc2FnZ2lvIHBlciBpbCB0YWc6XG4iCisiICAlc1xuIgorIkxlIHJpZ2hlIGNoZSBpbml6aWFubyBjb24gJyVjJyBzYXJhbm5vIG1hbnRlbnV0ZTsgcHVvaSByaW11b3ZlcmxlICIKKyJhdXRvbm9tYW1lbnRlIHNlIGxvIGRlc2lkZXJpLlxuIgogCi0jOiBidWlsdGluL3RhZy5jOjI5OAorIzogYnVpbHRpbi90YWcuYzoxOTgKIG1zZ2lkICJ1bmFibGUgdG8gc2lnbiB0aGUgdGFnIgogbXNnc3RyICJpbXBvc3NpYmlsZSBmaXJtYXJlIGlsIHRhZyIKIAotIzogYnVpbHRpbi90YWcuYzozMDAKKyM6IGJ1aWx0aW4vdGFnLmM6MjAwCiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRhZyBmaWxlIgotbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSBpbCBmaWxlIGRpIHRhZyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgaWwgZmlsZSB0YWciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MzI1CisjOiBidWlsdGluL3RhZy5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGhhdmUgY3JlYXRlZCBhIG5lc3RlZCB0YWcuIFRoZSBvYmplY3QgcmVmZXJyZWQgdG8gYnkgeW91ciBuZXcgdGFnIGlzXG4iCisiYWxyZWFkeSBhIHRhZy4gSWYgeW91IG1lYW50IHRvIHRhZyB0aGUgb2JqZWN0IHRoYXQgaXQgcG9pbnRzIHRvLCB1c2U6XG4iCisiXG4iCisiXHRnaXQgdGFnIC1mICVzICVzXnt9IgorbXNnc3RyICIiCisiSGFpIGNyZWF0byB1biB0YWcgaW5uZXN0YXRvLiBMJ29nZ2V0dG8gYSBjdWkgc2kgcmlmZXJpc2NlIGlsIHR1byBudW92b1xuIgorInRhZyDDqCBnacOgIHVuIHRhZy4gU2UgaW50ZW5kZXZpIGFnZ2l1bmdlcmUgdW4gdGFnIGFsbCdvZ2dldHRvIGEgY3VpXG4iCisicHVudGEsIHVzYTpcbiIKKyJcbiIKKyJcdGdpdCB0YWcgLWYgJXMgJXNee30iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjMyCiBtc2dpZCAiYmFkIG9iamVjdCB0eXBlLiIKLW1zZ3N0ciAidGlwbyBkaSBvZ2dldHRvIGVycmF0by4iCittc2dzdHIgInRpcG8gb2dnZXR0byBlcnJhdG8uIgogCi0jOiBidWlsdGluL3RhZy5jOjMzOAotbXNnaWQgInRhZyBoZWFkZXIgdG9vIGJpZy4iCi1tc2dzdHIgImludGVzdGF6aW9uZSBkZWwgdGFnIHRyb3BwbyBncmFuZGUuIgotCi0jOiBidWlsdGluL3RhZy5jOjM3MAorIzogYnVpbHRpbi90YWcuYzoyODQKIG1zZ2lkICJubyB0YWcgbWVzc2FnZT8iCiBtc2dzdHIgIm5lc3N1biBtZXNzYWdnaW8gcGVyIGlsIHRhZz8iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzc2CisjOiBidWlsdGluL3RhZy5jOjI5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgdGFnIG1lc3NhZ2UgaGFzIGJlZW4gbGVmdCBpbiAlc1xuIgogbXNnc3RyICJJbCBtZXNzYWdnaW8gZGVsIHRhZyDDqCBzdGF0byBsYXNjaWF0byBpbiAlc1xuIgogCi0jOiBidWlsdGluL3RhZy5jOjQyNQotbXNnaWQgInN3aXRjaCAncG9pbnRzLWF0JyByZXF1aXJlcyBhbiBvYmplY3QiCi1tc2dzdHIgImxvIHN3aXRjaCAncG9pbnRzLWF0JyByaWNoaWVkZSB1biBvZ2dldHRvIgorIzogYnVpbHRpbi90YWcuYzo0MDIKK21zZ2lkICJsaXN0IHRhZyBuYW1lcyIKK21zZ3N0ciAiZWxlbmNhIGkgbm9taSBkZWkgdGFnIgogCi0jOiBidWlsdGluL3RhZy5jOjQyNwotIywgYy1mb3JtYXQKLW1zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IG5hbWUgJyVzJyIKLW1zZ3N0ciAibm9tZSBvZ2dldHRvICclcycgbWFsZm9ybWF0byIKKyM6IGJ1aWx0aW4vdGFnLmM6NDA0Cittc2dpZCAicHJpbnQgPG4+IGxpbmVzIG9mIGVhY2ggdGFnIG1lc3NhZ2UiCittc2dzdHIgInN0YW1wYSBsZSBwcmltZSA8bj4gcmlnaGUgZGkgb2duaSBtZXNzYWdnaW8gdGFnIgogCi0jOiBidWlsdGluL3RhZy5jOjUwNgorIzogYnVpbHRpbi90YWcuYzo0MDYKK21zZ2lkICJkZWxldGUgdGFncyIKK21zZ3N0ciAiZWxpbWluYSB0YWciCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDA3Cittc2dpZCAidmVyaWZ5IHRhZ3MiCittc2dzdHIgInZlcmlmaWNhIHRhZyIKKworIzogYnVpbHRpbi90YWcuYzo0MDkKK21zZ2lkICJUYWcgY3JlYXRpb24gb3B0aW9ucyIKK21zZ3N0ciAiT3B6aW9uaSBjcmVhemlvbmUgdGFnIgorCisjOiBidWlsdGluL3RhZy5jOjQxMQorbXNnaWQgImFubm90YXRlZCB0YWcsIG5lZWRzIGEgbWVzc2FnZSIKK21zZ3N0ciAidGFnIGFubm90YXRvLCByaWNoaWVkZSB1biBtZXNzYWdnaW8iCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDEzCittc2dpZCAidGFnIG1lc3NhZ2UiCittc2dzdHIgIm1lc3NhZ2dpbyB0YWciCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDE1Cittc2dpZCAiZm9yY2UgZWRpdCBvZiB0YWcgbWVzc2FnZSIKK21zZ3N0ciAiZm9yemEgbW9kaWZpY2EgZGVsIG1lc3NhZ2dpbyB0YWciCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDE2Cittc2dpZCAiYW5ub3RhdGVkIGFuZCBHUEctc2lnbmVkIHRhZyIKK21zZ3N0ciAidGFnIGFubm90YXRvIGUgZmlybWF0byBjb24gR1BHIgorCisjOiBidWlsdGluL3RhZy5jOjQxOQorbXNnaWQgInVzZSBhbm90aGVyIGtleSB0byBzaWduIHRoZSB0YWciCittc2dzdHIgInVzYSB1bidhbHRyYSBjaGlhdmUgcGVyIGZpcm1hcmUgaWwgdGFnIgorCisjOiBidWlsdGluL3RhZy5jOjQyMAorbXNnaWQgInJlcGxhY2UgdGhlIHRhZyBpZiBleGlzdHMiCittc2dzdHIgInNvc3RpdHVpc2NpIGlsIHRhZyBzZSBlc2lzdGUiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDIxIGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2OQorbXNnaWQgImNyZWF0ZSBhIHJlZmxvZyIKK21zZ3N0ciAiY3JlYSB1biByZWdpc3RybyByaWZlcmltZW50aSIKKworIzogYnVpbHRpbi90YWcuYzo0MjMKK21zZ2lkICJUYWcgbGlzdGluZyBvcHRpb25zIgorbXNnc3RyICJPcHppb25pIGVsZW5jbyB0YWciCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDI0Cittc2dpZCAic2hvdyB0YWcgbGlzdCBpbiBjb2x1bW5zIgorbXNnc3RyICJ2aXN1YWxpenphIGwnZWxlbmNvIGRlaSB0YWcgaW4gY29sb25uZSIKKworIzogYnVpbHRpbi90YWcuYzo0MjUgYnVpbHRpbi90YWcuYzo0MjcKK21zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBjb250YWluIHRoZSBjb21taXQiCittc2dzdHIgInN0YW1wYSBzb2xvIGkgdGFnIGNoZSBjb250ZW5nb25vIGlsIGNvbW1pdCIKKworIzogYnVpbHRpbi90YWcuYzo0MjYgYnVpbHRpbi90YWcuYzo0MjgKK21zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCittc2dzdHIgInN0YW1wYSBzb2xvIGkgdGFnIGNoZSBub24gY29udGVuZ29ubyBpIGNvbW1pdCIKKworIzogYnVpbHRpbi90YWcuYzo0MjkKK21zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBhcmUgbWVyZ2VkIgorbXNnc3RyICJzdGFtcGEgc29sbyBpIHRhZyBzb3R0b3Bvc3RpIGEgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDMwCittc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCittc2dzdHIgInN0YW1wYSBzb2xvIGkgdGFnIG5vbiBzb3R0b3Bvc3RpIGEgbWVyZ2UiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDM0Cittc2dpZCAicHJpbnQgb25seSB0YWdzIG9mIHRoZSBvYmplY3QiCittc2dzdHIgInN0YW1wYSBzb2xvIGkgdGFnIGRlbGwnb2dnZXR0byIKKworIzogYnVpbHRpbi90YWcuYzo0ODIKIG1zZ2lkICItLWNvbHVtbiBhbmQgLW4gYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1jb2x1bW4gZSAtbiBub24gc29ubyBjb21wYXRpYmlsaSIKIAorIzogYnVpbHRpbi90YWcuYzo1MDQKK21zZ2lkICItbiBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKK21zZ3N0ciAibCdvcHppb25lIC1uIMOoIGNvbnNlbnRpdGEgc29sbyBpbiBtb2RhbGl0w6AgZWxlbmNvIgorCisjOiBidWlsdGluL3RhZy5jOjUwNgorbXNnaWQgIi0tY29udGFpbnMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCittc2dzdHIgImwnb3B6aW9uZSAtLWNvbnRhaW5zIMOoIGNvbnNlbnRpdGEgc29sbyBpbiBtb2RhbGl0w6AgZWxlbmNvIgorCisjOiBidWlsdGluL3RhZy5jOjUwOAorbXNnaWQgIi0tbm8tY29udGFpbnMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCittc2dzdHIgImwnb3B6aW9uZSAtLW5vLWNvbnRhaW5zIMOoIGNvbnNlbnRpdGEgc29sbyBpbiBtb2RhbGl0w6AgZWxlbmNvIgorCisjOiBidWlsdGluL3RhZy5jOjUxMAorbXNnaWQgIi0tcG9pbnRzLWF0IG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgorbXNnc3RyICJsJ29wemlvbmUgLS1wb2ludHMtYXQgw6ggY29uc2VudGl0YSBzb2xvIGluIG1vZGFsaXTDoCBlbGVuY28iCisKKyM6IGJ1aWx0aW4vdGFnLmM6NTEyCittc2dpZCAiLS1tZXJnZWQgYW5kIC0tbm8tbWVyZ2VkIG9wdGlvbnMgYXJlIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCittc2dzdHIgIiIKKyJsZSBvcHppb25pIC0tbWVyZ2VkIGUgLS1uby1tZXJnZWQgc29ubyBjb25zZW50aXRlIHNvbG8gaW4gbW9kYWxpdMOgIGVsZW5jbyIKKwogIzogYnVpbHRpbi90YWcuYzo1MjMKLW1zZ2lkICItbiBvcHRpb24gaXMgb25seSBhbGxvd2VkIHdpdGggLWwuIgotbXNnc3RyICJsJ29wemlvbmUgLW4gw6ggY29uc2VudGl0YSBzb2xvIGNvbiAtbC4iCi0KLSM6IGJ1aWx0aW4vdGFnLmM6NTI1Ci1tc2dpZCAiLS1jb250YWlucyBvcHRpb24gaXMgb25seSBhbGxvd2VkIHdpdGggLWwuIgotbXNnc3RyICJsJ29wemlvbmUgLS1jb250YWlucyDDqCBjb25zZW50aXRhIHNvbG8gY29uIC1sLiIKLQotIzogYnVpbHRpbi90YWcuYzo1MjcKLW1zZ2lkICItLXBvaW50cy1hdCBvcHRpb24gaXMgb25seSBhbGxvd2VkIHdpdGggLWwuIgotbXNnc3RyICJsJ29wemlvbmUgLS1wb2ludHMtYXQgw6ggY29uc2VudGl0YSBzb2xvIGNvbiAtbC4iCi0KLSM6IGJ1aWx0aW4vdGFnLmM6NTM1CiBtc2dpZCAib25seSBvbmUgLUYgb3IgLW0gb3B0aW9uIGlzIGFsbG93ZWQuIgogbXNnc3RyICLDqCBjb25zZW50aXRhIHVuYSBzb2xhIG9wemlvbmUgdHJhIC1GIGUgLW0uIgogCi0jOiBidWlsdGluL3RhZy5jOjU1NQorIzogYnVpbHRpbi90YWcuYzo1NDIKIG1zZ2lkICJ0b28gbWFueSBwYXJhbXMiCiBtc2dzdHIgInRyb3BwaSBwYXJhbWV0cmkiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTYxCisjOiBidWlsdGluL3RhZy5jOjU0OAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRhZyBuYW1lLiIKIG1zZ3N0ciAiJyVzJyBub24gw6ggdW4gbm9tZSB0YWcgdmFsaWRvLiIKIAotIzogYnVpbHRpbi90YWcuYzo1NjYKKyM6IGJ1aWx0aW4vdGFnLmM6NTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICJpbCB0YWcgJyVzJyBlc2lzdGUgZ2nDoCIKIAogIzogYnVpbHRpbi90YWcuYzo1ODQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJXM6IGNhbm5vdCBsb2NrIHRoZSByZWYiCi1tc2dzdHIgIiVzOiBpbXBvc3NpYmlsZSByaXNlcnZhcmUgaWwgcmVmIgotCi0jOiBidWlsdGluL3RhZy5jOjU4NgotIywgYy1mb3JtYXQKLW1zZ2lkICIlczogY2Fubm90IHVwZGF0ZSB0aGUgcmVmIgotbXNnc3RyICIlczogaW1wb3NzaWJpbGUgYWdnaW9ybmFyZSBpbCByZWYiCi0KLSM6IGJ1aWx0aW4vdGFnLmM6NTg4Ci0jLCBjLWZvcm1hdAogbXNnaWQgIlVwZGF0ZWQgdGFnICclcycgKHdhcyAlcylcbiIKIG1zZ3N0ciAiVGFnICclcycgYWdnaW9ybmF0byAoZXJhICVzKVxuIgogCi0jOiBnaXQuYzoxNgotbXNnaWQgIlNlZSAnZ2l0IGhlbHAgPGNvbW1hbmQ+JyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBhIHNwZWNpZmljIGNvbW1hbmQuIgorIzogYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjUwMgorbXNnaWQgIlVucGFja2luZyBvYmplY3RzIgorbXNnc3RyICJEZWNvbXByZXNzaW9uZSBkZWdsaSBvZ2dldHRpIGluIGNvcnNvIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjg0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5ICVzIgorbXNnc3RyICJjcmVhemlvbmUgZGVsbGEgZGlyZWN0b3J5ICVzIG5vbiByaXVzY2l0YSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBmaWxlICVzIgorbXNnc3RyICJjcmVhemlvbmUgZGVsIGZpbGUgJXMgbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIGZpbGUgJXMiCittc2dzdHIgImVsaW1pbmF6aW9uZSBkZWwgZmlsZSAlcyBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE1IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkZWxldGUgZGlyZWN0b3J5ICVzIgorbXNnc3RyICJlbGltaW5hemlvbmUgZGVsbGEgZGlyZWN0b3J5ICVzIG5vbiByaXVzY2l0YSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGVzdGluZyBtdGltZSBpbiAnJXMnICIKK21zZ3N0ciAiVGVzdCBkaSBtdGltZSBpbiAnJXMnIGluIGNvcnNvICIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNTQKK21zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBhZGRpbmcgYSBuZXcgZmlsZSIKIG1zZ3N0ciAiIgotIlZlZGkgJ2dpdCBoZWxwIDxjb21hbmRvPiBwZXIgbWFnZ2lvcmkgaW5mb3JtYXppb25pIHN1IHVuIGNvbWFuZG8gIgotInNwZWNpZmljby4iCisibGUgaW5mb3JtYXppb25pIHN0YXQgZGVsbGEgZGlyZWN0b3J5IG5vbiBjYW1iaWFubyBkb3BvIGwnYWdnaXVudGEgZGkgdW4gIgorIm51b3ZvIGZpbGUiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoxMzMgcGFyc2Utb3B0aW9ucy5oOjIzNQotbXNnaWQgIm4iCi1tc2dzdHIgIm4iCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE2NworbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGFkZGluZyBhIG5ldyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKyJsZSBpbmZvcm1hemlvbmkgc3RhdCBkZWxsYSBkaXJlY3Rvcnkgbm9uIGNhbWJpYW5vIGRvcG8gbCdhZ2dpdW50YSBkaSB1bmEgIgorIm51b3ZhIGRpcmVjdG9yeSIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjE0MQotbXNnaWQgInRpbWUiCi1tc2dzdHIgInRlbXBvIgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxODAKK21zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGNoYW5nZXMgYWZ0ZXIgdXBkYXRpbmcgYSBmaWxlIgorbXNnc3RyICIiCisibGUgaW5mb3JtYXppb25pIHN0YXQgZGVsbGEgZGlyZWN0b3J5IGNhbWJpYW5vIGRvcG8gbCdhZ2dpb3JuYW1lbnRvIGRpIHVuIGZpbGUiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNDkKLW1zZ2lkICJmaWxlIgotbXNnc3RyICJmaWxlIgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxOTEKK21zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGNoYW5nZXMgYWZ0ZXIgYWRkaW5nIGEgZmlsZSBpbnNpZGUgc3ViZGlyZWN0b3J5IgorbXNnc3RyICIiCisibGUgaW5mb3JtYXppb25pIHN0YXQgZGVsbGEgZGlyZWN0b3J5IGNhbWJpYW5vIGRvcG8gbCdhZ2dpdW50YSBkaSB1biBmaWxlIGluICIKKyJ1bmEgc290dG9kaXJlY3RvcnkiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNTEKLW1zZ2lkICJ3aGVuIgotbXNnc3RyICJxdWFuZG8iCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIwMgorbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGRlbGV0aW5nIGEgZmlsZSIKK21zZ3N0ciAiIgorImxlIGluZm9ybWF6aW9uaSBzdGF0IGRlbGxhIGRpcmVjdG9yeSBub24gY2FtYmlhbm8gZG9wbyBsJ2VsaW1pbmF6aW9uZSBkaSB1biAiCisiZmlsZSIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjE1NgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTUKK21zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorImxlIGluZm9ybWF6aW9uaSBzdGF0IGRlbGxhIGRpcmVjdG9yeSBub24gY2FtYmlhbm8gZG9wbyBsJ2VsaW1pbmF6aW9uZSBkaSB1bmEgIgorImRpcmVjdG9yeSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMjIKK21zZ2lkICIgT0siCittc2dzdHIgIiBPSyIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo1OTEKK21zZ2lkICJnaXQgdXBkYXRlLWluZGV4IFs8b3B0aW9ucz5dIFstLV0gWzxmaWxlPi4uLl0iCittc2dzdHIgImdpdCB1cGRhdGUtaW5kZXggWzxvcHppb25pPl0gWy0tXSBbPGZpbGU+Li4uXSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzQKK21zZ2lkICJjb250aW51ZSByZWZyZXNoIGV2ZW4gd2hlbiBpbmRleCBuZWVkcyB1cGRhdGUiCittc2dzdHIgIiIKKyJjb250aW51YSBsJ2FnZ2lvcm5hbWVudG8gYW5jaGUgbmVsIGNhc28gaW4gY3VpIGwnaW5kaWNlIHJpY2hpZWRhIGRpIGVzc2VyZSAiCisiYWdnaW9ybmF0byIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzcKK21zZ2lkICJyZWZyZXNoOiBpZ25vcmUgc3VibW9kdWxlcyIKK21zZ3N0ciAiYWdnaW9ybmFtZW50bzogaWdub3JhIGkgc290dG9tb2R1bGkiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgwCittc2dpZCAiZG8gbm90IGlnbm9yZSBuZXcgZmlsZXMiCittc2dzdHIgIm5vbiBpZ25vcmFyZSBpIG51b3ZpIGZpbGUiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgyCittc2dpZCAibGV0IGZpbGVzIHJlcGxhY2UgZGlyZWN0b3JpZXMgYW5kIHZpY2UtdmVyc2EiCittc2dzdHIgImNvbnNlbnRpIGNoZSBkZWkgZmlsZSBzb3N0aXR1aXNjYW5vIGRlbGxlIGRpcmVjdG9yeSBlIHZpY2V2ZXJzYSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODQKK21zZ2lkICJub3RpY2UgZmlsZXMgbWlzc2luZyBmcm9tIHdvcmt0cmVlIgorbXNnc3RyICJub3RhIHNlIGRlaSBmaWxlIG1hbmNhbm8gZGFsbCdhbGJlcm8gZGkgbGF2b3JvIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NgorbXNnaWQgInJlZnJlc2ggZXZlbiBpZiBpbmRleCBjb250YWlucyB1bm1lcmdlZCBlbnRyaWVzIgorbXNnc3RyICIiCisiZXNlZ3VpIGwnYWdnaW9ybmFtZW50byBhbmNoZSBzZSBsJ2luZGljZSBjb250aWVuZSBkZWxsZSB2b2NpIG5vbiBzb3R0b3Bvc3RlICIKKyJhIG1lcmdlIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4OQorbXNnaWQgInJlZnJlc2ggc3RhdCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiYWdnaW9ybmEgbGUgaW5mb3JtYXppb25pIHN0YXQiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTkzCittc2dpZCAibGlrZSAtLXJlZnJlc2gsIGJ1dCBpZ25vcmUgYXNzdW1lLXVuY2hhbmdlZCBzZXR0aW5nIgorbXNnc3RyICJjb21lIC0tcmVmcmVzaCwgbWEgaWdub3JhIGwnaW1wb3N0YXppb25lIGFzc3VtZS11bmNoYW5nZWQiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk3Cittc2dpZCAiPG1vZGU+LDxvYmplY3Q+LDxwYXRoPiIKK21zZ3N0ciAiPG1vZG8+LDxvZ2dldHRvPiw8cGVyY29yc28+IgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5OAorbXNnaWQgImFkZCB0aGUgc3BlY2lmaWVkIGVudHJ5IHRvIHRoZSBpbmRleCIKK21zZ3N0ciAiYWdnaXVuZ2UgbGEgdm9jZSBzcGVjaWZpY2F0YSBhbGwnaW5kaWNlIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDgKK21zZ2lkICJtYXJrIGZpbGVzIGFzIFwibm90IGNoYW5naW5nXCIiCittc2dzdHIgImNvbnRyYXNzZWduYSBpIGZpbGUgY29tZSBcIm5vbiBzYXJhbm5vIG1vZGlmaWNhdGlcIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDExCittc2dpZCAiY2xlYXIgYXNzdW1lZC11bmNoYW5nZWQgYml0IgorbXNnc3RyICJyZWltcG9zdGEgYSB6ZXJvIGlsIGJpdCBcIm5vbiBzYXJhbm5vIG1vZGlmaWNhdGlcIiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDE0Cittc2dpZCAibWFyayBmaWxlcyBhcyBcImluZGV4LW9ubHlcIiIKK21zZ3N0ciAiY29udHJhc3NlZ25hIGkgZmlsZSBjb21lIFwic29sYW1lbnRlIGRhIGluZGljaXp6YXJlXCIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNworbXNnaWQgImNsZWFyIHNraXAtd29ya3RyZWUgYml0IgorbXNnc3RyICJyZWltcG9zdGEgYSB6ZXJvIGlsIGJpdCBcInNvbGFtZW50ZSBkYSBpbmRpY2l6emFyZVwiIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjAKK21zZ2lkICJkbyBub3QgdG91Y2ggaW5kZXgtb25seSBlbnRyaWVzIgorbXNnc3RyICJub24gZXNlZ3VpcmUgaWwgdG91Y2ggZGkgdm9jaSBwcmVzZW50aSBzb2xvIG5lbGwnaW5kaWNlIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjIKK21zZ2lkICJhZGQgdG8gaW5kZXggb25seTsgZG8gbm90IGFkZCBjb250ZW50IHRvIG9iamVjdCBkYXRhYmFzZSIKK21zZ3N0ciAiIgorImFnZ2l1bmdpIHNvbG8gYWxsJ2luZGljZTsgbm9uIGFnZ2l1bmdlcmUgaWwgY29udGVudXRvIGFsIGRhdGFiYXNlIG9nZ2V0dGkiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNAorbXNnaWQgInJlbW92ZSBuYW1lZCBwYXRocyBldmVuIGlmIHByZXNlbnQgaW4gd29ya3RyZWUiCittc2dzdHIgInJpbXVvdmkgaSBwZXJjb3JzaSBzcGVjaWZpY2F0aSBhbmNoZSBzZSBwcmVzZW50aSBuZWxsJ2FsYmVybyBkaSBsYXZvcm8iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNgorbXNnaWQgIndpdGggLS1zdGRpbjogaW5wdXQgbGluZXMgYXJlIHRlcm1pbmF0ZWQgYnkgbnVsbCBieXRlcyIKK21zZ3N0ciAiY29uIC0tc3RkaW46IGxlIHJpZ2hlIGRpIGlucHV0IHNvbm8gdGVybWluYXRlIGRhIGJ5dGUgTlVMTCIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI4Cittc2dpZCAicmVhZCBsaXN0IG9mIHBhdGhzIHRvIGJlIHVwZGF0ZWQgZnJvbSBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAibGVnZ2kgbCdlbGVuY28gZGVpIHBlcmNvcnNpIGRhIGFnZ2lvcm5hcmUgZGFsbG8gc3RhbmRhcmQgaW5wdXQiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzMgorbXNnaWQgImFkZCBlbnRyaWVzIGZyb20gc3RhbmRhcmQgaW5wdXQgdG8gdGhlIGluZGV4IgorbXNnc3RyICJhZ2dpdW5naSBsZSB2b2NpIHNwZWNpZmljYXRlIHN1bGxvIHN0YW5kYXJkIGlucHV0IGFsbCdpbmRpY2UiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzNgorbXNnaWQgInJlcG9wdWxhdGUgc3RhZ2VzICMyIGFuZCAjMyBmb3IgdGhlIGxpc3RlZCBwYXRocyIKK21zZ3N0ciAicmlwb3BvbGEgbGUgZmFzaSAyIGUgMyBwZXIgaSBwZXJjb3JzaSBlbGVuY2F0aSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQwCittc2dpZCAib25seSB1cGRhdGUgZW50cmllcyB0aGF0IGRpZmZlciBmcm9tIEhFQUQiCittc2dzdHIgImFnZ2lvcm5hIHNvbG8gbGUgdm9jaSBkaWZmZXJlbnRpIHJpc3BldHRvIGFsbCdIRUFEIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDQKK21zZ2lkICJpZ25vcmUgZmlsZXMgbWlzc2luZyBmcm9tIHdvcmt0cmVlIgorbXNnc3RyICJpZ25vcmEgaSBmaWxlIG1hbmNhbnRpIG5lbGwnYWxiZXJvIGRpIGxhdm9ybyIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ3Cittc2dpZCAicmVwb3J0IGFjdGlvbnMgdG8gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICJzdGFtcGEgbGUgYXppb25pIHN1bGxvIHN0YW5kYXJkIG91dHB1dCIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ5Cittc2dpZCAiKGZvciBwb3JjZWxhaW5zKSBmb3JnZXQgc2F2ZWQgdW5yZXNvbHZlZCBjb25mbGljdHMiCittc2dzdHIgIiIKKyIocGVyIGkgY29tYW5kaSBhZCBhbHRvIGxpdmVsbG8pIGRpbWVudGljYSBpIGNvbmZsaXR0aSBub24gcmlzb2x0aSBzYWx2YXRpIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTMKK21zZ2lkICJ3cml0ZSBpbmRleCBpbiB0aGlzIGZvcm1hdCIKK21zZ3N0ciAic2NyaXZpIGwnaW5kaWNlIGluIHF1ZXN0byBmb3JtYXRvIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTUKK21zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBzcGxpdCBpbmRleCIKK21zZ3N0ciAiYWJpbGl0YSBvIGRpc2FiaWxpdGEgbCdpbmRpY2Ugc3VkZGl2aXNvIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTcKK21zZ2lkICJlbmFibGUvZGlzYWJsZSB1bnRyYWNrZWQgY2FjaGUiCittc2dzdHIgImFiaWxpdGEvZGlzYWJpbGl0YSBsYSBjYWNoZSBub24gdHJhY2NpYXRhIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTkKK21zZ2lkICJ0ZXN0IGlmIHRoZSBmaWxlc3lzdGVtIHN1cHBvcnRzIHVudHJhY2tlZCBjYWNoZSIKK21zZ3N0ciAidmVyaWZpY2Egc2UgaWwgZmlsZXN5c3RlbSBzdXBwb3J0YSBsYSBjYWNoZSBub24gdHJhY2NpYXRhIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjEKK21zZ2lkICJlbmFibGUgdW50cmFja2VkIGNhY2hlIHdpdGhvdXQgdGVzdGluZyB0aGUgZmlsZXN5c3RlbSIKK21zZ3N0ciAiYWJpbGl0YSBsYSBjYWNoZSBub24gdHJhY2NpYXRhIHNlbnphIHRlc3RhcmUgaWwgZmlsZXN5c3RlbSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDYzCittc2dpZCAid3JpdGUgb3V0IHRoZSBpbmRleCBldmVuIGlmIGlzIG5vdCBmbGFnZ2VkIGFzIGNoYW5nZWQiCittc2dzdHIgInNjcml2aSBsJ2luZGljZSBhbmNoZSBzZSBub24gw6ggc3RhdG8gY29udHJhc3NlZ25hdG8gY29tZSBtb2RpZmljYXRvIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjUKK21zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBmaWxlIHN5c3RlbSBtb25pdG9yIgorbXNnc3RyICJhYmlsaXRhIG8gZGlzYWJpbGl0YSBpbCBtb25pdG9yIGRlbCBmaWxlc3lzdGVtIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjcKK21zZ2lkICJtYXJrIGZpbGVzIGFzIGZzbW9uaXRvciB2YWxpZCIKK21zZ3N0ciAiY29udHJhc3NlZ25hIGkgZmlsZSBjb21lIHZhbGlkaSByaXNwZXR0byBhbCBtb25pdG9yIGRlbCBmaWxlc3lzdGVtIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNzAKK21zZ2lkICJjbGVhciBmc21vbml0b3IgdmFsaWQgYml0IgorbXNnc3RyICIiCisicmVpbXBvc3RhIGEgemVybyBpbCBiaXQgXCJmaWxlIHZhbGlkaSByaXNwZXR0byBhbCBtb25pdG9yIGRlbCBmaWxlc3lzdGVtXCIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MworbXNnaWQgIiIKKyJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgorImVuYWJsZSBzcGxpdCBpbmRleCIKK21zZ3N0ciAiIgorImNvcmUuc3BsaXRJbmRleCDDqCBpbXBvc3RhdG8gYSBmYWxzZTsgcmltdW92aWxvIG8gbW9kaWZpY2FsbyBzZSB2dW9pICIKKyJ2ZXJhbWVudGUgYWJpbGl0YXJlIGwnaW5kaWNlIHN1ZGRpdmlzbyIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTgyCittc2dpZCAiIgorImNvcmUuc3BsaXRJbmRleCBpcyBzZXQgdG8gdHJ1ZTsgcmVtb3ZlIG9yIGNoYW5nZSBpdCwgaWYgeW91IHJlYWxseSB3YW50IHRvICIKKyJkaXNhYmxlIHNwbGl0IGluZGV4IgorbXNnc3RyICIiCisiY29yZS5zcGxpdEluZGV4IMOoIGltcG9zdGF0byBhIHRydWU7IHJpbXVvdmlsbyBvIG1vZGlmaWNhbG8gc2UgdnVvaSB2ZXJhbWVudGUgIgorImRpc2FiaWxpdGFyZSBsJ2luZGljZSBzdWRkaXZpc28iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE5NAorbXNnaWQgIiIKKyJjb3JlLnVudHJhY2tlZENhY2hlIGlzIHNldCB0byB0cnVlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgIgorInRvIGRpc2FibGUgdGhlIHVudHJhY2tlZCBjYWNoZSIKK21zZ3N0ciAiIgorImNvcmUudW50cmFja2VkQ2FjaGUgw6ggaW1wb3N0YXRvIGEgdHJ1ZTsgcmltdW92aWxvIG8gbW9kaWZpY2FsbyBzZSB2dW9pICIKKyJ2ZXJhbWVudGUgZGlzYWJpbGl0YXJlIGxhIGNhY2hlIG5vbiB0cmFjY2lhdGEiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE5OAorbXNnaWQgIlVudHJhY2tlZCBjYWNoZSBkaXNhYmxlZCIKK21zZ3N0ciAiQ2FjaGUgbm9uIHRyYWNjaWF0YSBkaXNhYmlsaXRhdGEiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwNgorbXNnaWQgIiIKKyJjb3JlLnVudHJhY2tlZENhY2hlIGlzIHNldCB0byBmYWxzZTsgcmVtb3ZlIG9yIGNoYW5nZSBpdCwgaWYgeW91IHJlYWxseSB3YW50ICIKKyJ0byBlbmFibGUgdGhlIHVudHJhY2tlZCBjYWNoZSIKK21zZ3N0ciAiIgorImNvcmUudW50cmFja2VkQ2FjaGUgw6ggaW1wb3N0YXRvIGEgZmFsc2U7IHJpbXVvdmlsbyBvIG1vZGlmaWNhbG8gc2UgdnVvaSAiCisidmVyYW1lbnRlIGFiaWxpdGFyZSBsYSBjYWNoZSBub24gdHJhY2NpYXRhIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW50cmFja2VkIGNhY2hlIGVuYWJsZWQgZm9yICclcyciCittc2dzdHIgIkNhY2hlIG5vbiB0cmFjY2lhdGEgYWJpbGl0YXRhIHBlciAnJXMnIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMTgKK21zZ2lkICJjb3JlLmZzbW9uaXRvciBpcyB1bnNldDsgc2V0IGl0IGlmIHlvdSByZWFsbHkgd2FudCB0byBlbmFibGUgZnNtb25pdG9yIgorbXNnc3RyICIiCisiY29yZS5mc21vbml0b3Igbm9uIMOoIGltcG9zdGF0bzsgaW1wb3N0YWxvIHNlIHZ1b2kgdmVyYW1lbnRlIGFiaWxpdGFyZSBpbCAiCisibW9uaXRvciBkZWwgZmlsZXN5c3RlbSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjIyCittc2dpZCAiZnNtb25pdG9yIGVuYWJsZWQiCittc2dzdHIgIm1vbml0b3IgZmlsZXN5c3RlbSBhYmlsaXRhdG8iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyNQorbXNnaWQgIiIKKyJjb3JlLmZzbW9uaXRvciBpcyBzZXQ7IHJlbW92ZSBpdCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZGlzYWJsZSBmc21vbml0b3IiCittc2dzdHIgIiIKKyJjb3JlLmZzbW9uaXRvciDDqCBpbXBvc3RhdG87IHJpbXVvdmkgdGFsZSBpbXBvc3RhemlvbmUgc2UgdnVvaSB2ZXJhbWVudGUgIgorImRpc2FiaWxpdGFyZSBpbCBtb25pdG9yIGRlbCBmaWxlc3lzdGVtIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMjkKK21zZ2lkICJmc21vbml0b3IgZGlzYWJsZWQiCittc2dzdHIgIm1vbml0b3IgZmlsZXN5c3RlbSBkaXNhYmlsaXRhdG8iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjEwCittc2dpZCAiZ2l0IHVwZGF0ZS1yZWYgWzxvcHRpb25zPl0gLWQgPHJlZm5hbWU+IFs8b2xkLXZhbD5dIgorbXNnc3RyICJnaXQgdXBkYXRlLXJlZiBbPG9wemlvbmk+XSAtZCA8bm9tZSByaWZlcmltZW50bz4gWzx2ZWNjaGlvIHZhbG9yZT5dIgorCisjOiBidWlsdGluL3VwZGF0ZS1yZWYuYzoxMQorbXNnaWQgImdpdCB1cGRhdGUtcmVmIFs8b3B0aW9ucz5dICAgIDxyZWZuYW1lPiA8bmV3LXZhbD4gWzxvbGQtdmFsPl0iCittc2dzdHIgIiIKKyJnaXQgdXBkYXRlLXJlZiBbPG9wemlvbmk+XSAgICA8bm9tZSByaWZlcmltZW50bz4gPG51b3ZvIHZhbG9yZT4gWzx2ZWNjaGlvICIKKyJ2YWxvcmU+XSIKKworIzogYnVpbHRpbi91cGRhdGUtcmVmLmM6MTIKK21zZ2lkICJnaXQgdXBkYXRlLXJlZiBbPG9wdGlvbnM+XSAtLXN0ZGluIFstel0iCittc2dzdHIgImdpdCB1cGRhdGUtcmVmIFs8b3B6aW9uaT5dIC0tc3RkaW4gWy16XSIKKworIzogYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY0Cittc2dpZCAiZGVsZXRlIHRoZSByZWZlcmVuY2UiCittc2dzdHIgImVsaW1pbmEgaWwgcmlmZXJpbWVudG8iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2NgorbXNnaWQgInVwZGF0ZSA8cmVmbmFtZT4gbm90IHRoZSBvbmUgaXQgcG9pbnRzIHRvIgorbXNnc3RyICJhZ2dpb3JuYSA8bm9tZSByaWZlcmltZW50bz4sIG5vbiBjacOyIGEgY3VpIHB1bnRhIgorCisjOiBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjcKK21zZ2lkICJzdGRpbiBoYXMgTlVMLXRlcm1pbmF0ZWQgYXJndW1lbnRzIgorbXNnc3RyICJsbyBzdGFuZGFyZCBpbnB1dCBoYSBhcmdvbWVudGkgdGVybWluYXRpIGRhIE5VTCIKKworIzogYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY4Cittc2dpZCAicmVhZCB1cGRhdGVzIGZyb20gc3RkaW4iCittc2dzdHIgImxlZ2dpIGFnZ2lvcm5hbWVudGkgZGFsbG8gc3RhbmRhcmQgaW5wdXQiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXNlcnZlci1pbmZvLmM6NworbXNnaWQgImdpdCB1cGRhdGUtc2VydmVyLWluZm8gWy0tZm9yY2VdIgorbXNnc3RyICJnaXQgdXBkYXRlLXNlcnZlci1pbmZvIFstLWZvcmNlXSIKKworIzogYnVpbHRpbi91cGRhdGUtc2VydmVyLWluZm8uYzoxNQorbXNnaWQgInVwZGF0ZSB0aGUgaW5mbyBmaWxlcyBmcm9tIHNjcmF0Y2giCittc2dzdHIgImFnZ2lvcm5hIGkgZmlsZSBpbmZvcm1hemlvbmkgcGFydGVuZG8gZGEgemVybyIKKworIzogYnVpbHRpbi91cGxvYWQtcGFjay5jOjExCittc2dpZCAiZ2l0IHVwbG9hZC1wYWNrIFs8b3B0aW9ucz5dIDxkaXI+IgorbXNnc3RyICJnaXQgdXBsb2FkLXBhY2sgWzxvcHppb25pPl0gPGRpcmVjdG9yeT4iCisKKyM6IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyMyB0L2hlbHBlci90ZXN0LXNlcnZlLXYyLmM6MTcKK21zZ2lkICJxdWl0IGFmdGVyIGEgc2luZ2xlIHJlcXVlc3QvcmVzcG9uc2UgZXhjaGFuZ2UiCittc2dzdHIgImVzY2kgZG9wbyB1biBzb2xvIHNjYW1iaW8gcmljaGllc3RhL3Jpc3Bvc3RhIgorCisjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjUKK21zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGluaXRpYWwgcmVmIGFkdmVydGlzZW1lbnQiCittc2dzdHIgImVzY2kgc3ViaXRvIGRvcG8gbCdhbm51bmNpbyBpbml6aWFsZSBkZWwgcmlmZXJpbWVudG8iCisKKyM6IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyNworbXNnaWQgImRvIG5vdCB0cnkgPGRpcmVjdG9yeT4vLmdpdC8gaWYgPGRpcmVjdG9yeT4gaXMgbm8gR2l0IGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorIm5vbiBwcm92YXJlIGEgdXRpbGl6emFyZSA8ZGlyZWN0b3J5Pi8uZ2l0LyBzZSA8ZGlyZWN0b3J5PiBub24gw6ggdW5hICIKKyJkaXJlY3RvcnkgR2l0IgorCisjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjkKK21zZ2lkICJpbnRlcnJ1cHQgdHJhbnNmZXIgYWZ0ZXIgPG4+IHNlY29uZHMgb2YgaW5hY3Rpdml0eSIKK21zZ3N0ciAiaW50ZXJyb21waSBpbCB0cmFzZmVyaW1lbnRvIGRvcG8gPG4+IHNlY29uZGkgZGkgaW5hdHRpdml0w6AiCisKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjE5Cittc2dpZCAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA8Y29tbWl0Pi4uLiIKK21zZ3N0ciAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA8Y29tbWl0Pi4uLiIKKworIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NjgKK21zZ2lkICJwcmludCBjb21taXQgY29udGVudHMiCittc2dzdHIgInN0YW1wYSBpIGNvbnRlbnV0aSBkZWwgY29tbWl0IgorCisjOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo2OSBidWlsdGluL3ZlcmlmeS10YWcuYzozNworbXNnaWQgInByaW50IHJhdyBncGcgc3RhdHVzIG91dHB1dCIKK21zZ3N0ciAic3RhbXBhIGwnb3V0cHV0IGdyZXp6byBkZWxsbyBzdGF0byBkaSBHUEciCisKKyM6IGJ1aWx0aW4vdmVyaWZ5LXBhY2suYzo1NQorbXNnaWQgImdpdCB2ZXJpZnktcGFjayBbLXYgfCAtLXZlcmJvc2VdIFstcyB8IC0tc3RhdC1vbmx5XSA8cGFjaz4uLi4iCittc2dzdHIgImdpdCB2ZXJpZnktcGFjayBbLXYgfCAtLXZlcmJvc2VdIFstcyB8IC0tc3RhdC1vbmx5XSA8cGFjaz4uLi4iCisKKyM6IGJ1aWx0aW4vdmVyaWZ5LXBhY2suYzo2NQorbXNnaWQgInZlcmJvc2UiCittc2dzdHIgImRldHRhZ2xpYXRvIgorCisjOiBidWlsdGluL3ZlcmlmeS1wYWNrLmM6NjcKK21zZ2lkICJzaG93IHN0YXRpc3RpY3Mgb25seSIKK21zZ3N0ciAidmlzdWFsaXp6YSBzb2xvIGxlIHN0YXRpc3RpY2hlIgorCisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzoxOAorbXNnaWQgImdpdCB2ZXJpZnktdGFnIFstdiB8IC0tdmVyYm9zZV0gWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnPi4uLiIKK21zZ3N0ciAiZ2l0IHZlcmlmeS10YWcgWy12IHwgLS12ZXJib3NlXSBbLS1mb3JtYXQ9PGZvcm1hdG8+XSA8dGFnPi4uLiIKKworIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzYKK21zZ2lkICJwcmludCB0YWcgY29udGVudHMiCittc2dzdHIgInN0YW1wYSBpIGNvbnRlbnV0aSBkZWwgdGFnIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MTcKK21zZ2lkICJnaXQgd29ya3RyZWUgYWRkIFs8b3B0aW9ucz5dIDxwYXRoPiBbPGNvbW1pdC1pc2g+XSIKK21zZ3N0ciAiZ2l0IHdvcmt0cmVlIGFkZCBbPG9wemlvbmk+XSA8cGVyY29yc28+IFs8ZXNwcmVzc2lvbmUgY29tbWl0Pl0iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxOAorbXNnaWQgImdpdCB3b3JrdHJlZSBsaXN0IFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgd29ya3RyZWUgbGlzdCBbPG9wemlvbmk+XSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjE5Cittc2dpZCAiZ2l0IHdvcmt0cmVlIGxvY2sgWzxvcHRpb25zPl0gPHBhdGg+IgorbXNnc3RyICJnaXQgd29ya3RyZWUgbG9jayBbPG9wemlvbmk+XSA8cGVyY29yc28+IgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjAKK21zZ2lkICJnaXQgd29ya3RyZWUgbW92ZSA8d29ya3RyZWU+IDxuZXctcGF0aD4iCittc2dzdHIgImdpdCB3b3JrdHJlZSBtb3ZlIDxhbGJlcm8gZGkgbGF2b3JvPiA8bnVvdm8gcGVyY29yc28+IgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjEKK21zZ2lkICJnaXQgd29ya3RyZWUgcHJ1bmUgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCB3b3JrdHJlZSBwcnVuZSBbPG9wemlvbmk+XSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjIyCittc2dpZCAiZ2l0IHdvcmt0cmVlIHJlbW92ZSBbPG9wdGlvbnM+XSA8d29ya3RyZWU+IgorbXNnc3RyICJnaXQgd29ya3RyZWUgcmVtb3ZlIFs8b3B6aW9uaT5dIDxhbGJlcm8gZGkgbGF2b3JvPiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjIzCittc2dpZCAiZ2l0IHdvcmt0cmVlIHVubG9jayA8cGF0aD4iCittc2dzdHIgImdpdCB3b3JrdHJlZSB1bmxvY2sgPHBlcmNvcnNvPiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjYwIGJ1aWx0aW4vd29ya3RyZWUuYzo4OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSAnJXMnIgorbXNnc3RyICJlbGltaW5hemlvbmUgZGkgJyVzJyBub24gcml1c2NpdGEiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyB3b3JrdHJlZXMvJXM6IG5vdCBhIHZhbGlkIGRpcmVjdG9yeSIKK21zZ3N0ciAiUmltdW92byB3b3JrdHJlZXMvJXM6IG5vbiDDqCB1bmEgZGlyZWN0b3J5IHZhbGlkYSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nIHdvcmt0cmVlcy8lczogZ2l0ZGlyIGZpbGUgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIlJpbXVvdm8gd29ya3RyZWVzLyVzOiBpbCBmaWxlIGdpdGRpciBub24gZXNpc3RlIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTAgYnVpbHRpbi93b3JrdHJlZS5jOjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nIHdvcmt0cmVlcy8lczogdW5hYmxlIHRvIHJlYWQgZ2l0ZGlyIGZpbGUgKCVzKSIKK21zZ3N0ciAiUmltdW92byB3b3JrdHJlZXMvJXM6IGltcG9zc2liaWxlIGxlZ2dlcmUgaWwgZmlsZSBnaXRkaXIgKCVzKSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiBzaG9ydCByZWFkIChleHBlY3RlZCAlPFBSSXVNQVg+IGJ5dGVzLCByZWFkICIKKyIlPFBSSXVNQVg+KSIKK21zZ3N0ciAiIgorIlJpbXVvdm8gd29ya3RyZWVzLyVzOiBsZXR0aSBtZW5vIGRhdGkgZGVsIHByZXZpc3RvIChhdHRlc2kgJTxQUkl1TUFYPmJ5dGUsICIKKyIlPFBSSXVNQVg+IGxldHRpKSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyB3b3JrdHJlZXMvJXM6IGludmFsaWQgZ2l0ZGlyIGZpbGUiCittc2dzdHIgIlJpbXVvdm8gd29ya3RyZWVzLyVzOiBmaWxlIGdpdGRpciBub24gdmFsaWRvIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nIHdvcmt0cmVlcy8lczogZ2l0ZGlyIGZpbGUgcG9pbnRzIHRvIG5vbi1leGlzdGVudCBsb2NhdGlvbiIKK21zZ3N0ciAiUmltdW92byB3b3JrdHJlZXMvJXM6IGlsIGZpbGUgZ2l0ZGlyIHB1bnRhIGEgdW4gcGVyY29yc28gbm9uIGVzaXN0ZW50ZSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjE2NQorbXNnaWQgInJlcG9ydCBwcnVuZWQgd29ya2luZyB0cmVlcyIKK21zZ3N0ciAic2VnbmFsYSBnbGkgYWxiZXJpIGRpIGxhdm9ybyBlbGltaW5hdGkiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxNjcKK21zZ2lkICJleHBpcmUgd29ya2luZyB0cmVlcyBvbGRlciB0aGFuIDx0aW1lPiIKK21zZ3N0ciAiZmFpIHNjYWRlcmUgZ2xpIGFsYmVyaSBkaSBsYXZvcm8gcGnDuSB2ZWNjaGkgZGkgPHRlbXBvPiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjIzNAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICInJXMnIGVzaXN0ZSBnacOgIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZS1hZGQgd29ya3RyZWUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYWdnaXVuZ2VyZSBudW92YW1lbnRlIGwnYWxiZXJvIGRpIGxhdm9ybyAnJXMnIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyInJXMnIGlzIGEgbWlzc2luZyBidXQgbG9ja2VkIHdvcmt0cmVlO1xuIgorInVzZSAnYWRkIC1mIC1mJyB0byBvdmVycmlkZSwgb3IgJ3VubG9jaycgYW5kICdwcnVuZScgb3IgJ3JlbW92ZScgdG8gY2xlYXIiCittc2dzdHIgIiIKKyInJXMnIMOoIHVuIGFsYmVybyBkaSBsYXZvcm8gbWFuY2FudGUgbWEgYmxvY2NhdG87XG4iCisidXNhICdhZGQgLWYgLWYnIHBlciBlc2VndWlyZSBsJ292ZXJyaWRlLCBvICd1bmxvY2snIGUgJ3BydW5lJyBvICdyZW1vdmUnIHBlciAiCisicmltdW92ZXJsbyIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJyVzJyBpcyBhIG1pc3NpbmcgYnV0IGFscmVhZHkgcmVnaXN0ZXJlZCB3b3JrdHJlZTtcbiIKKyJ1c2UgJ2FkZCAtZicgdG8gb3ZlcnJpZGUsIG9yICdwcnVuZScgb3IgJ3JlbW92ZScgdG8gY2xlYXIiCittc2dzdHIgIiIKKyInJXMnIMOoIHVuIGFsYmVybyBkaSBsYXZvcm8gbWFuY2FudGUgbWEgZ2nDoCByZWdpc3RyYXRvO1xuIgorInVzYSAnYWRkIC1mJyBwZXIgZXNlZ3VpcmUgbCdvdmVycmlkZSwgbyAncHJ1bmUnIG8gJ3JlbW92ZScgcGVyIHJpbXVvdmVybG8iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3Rvcnkgb2YgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIGxhIGRpcmVjdG9yeSBkaSAnJXMnIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDMyIGJ1aWx0aW4vd29ya3RyZWUuYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChuZXcgYnJhbmNoICclcycpIgorbXNnc3RyICJQcmVwYXJhemlvbmUgZGVsbCdhbGJlcm8gZGkgbGF2b3JvIGluIGNvcnNvIChudW92byBicmFuY2ggJyVzJykiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChyZXNldHRpbmcgYnJhbmNoICclcyc7IHdhcyBhdCAlcykiCittc2dzdHIgIiIKKyJQcmVwYXJhemlvbmUgZGVsbCdhbGJlcm8gZGkgbGF2b3JvIGluIGNvcnNvIChyZWltcG9zdG8gaWwgYnJhbmNoICclcyc7IGVyYSBhICIKKyIlcykiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChjaGVja2luZyBvdXQgJyVzJykiCittc2dzdHIgIlByZXBhcmF6aW9uZSBkZWxsJ2FsYmVybyBkaSBsYXZvcm8gaW4gY29yc28gKGNoZWNrb3V0IGRpICclcycpIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAoZGV0YWNoZWQgSEVBRCAlcykiCittc2dzdHIgIlByZXBhcmF6aW9uZSBkZWxsJ2FsYmVybyBkaSBsYXZvcm8gaW4gY29yc28gKEhFQUQgc2NvbGxlZ2F0byAlcykiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTAKK21zZ2lkICJjaGVja291dCA8YnJhbmNoPiBldmVuIGlmIGFscmVhZHkgY2hlY2tlZCBvdXQgaW4gb3RoZXIgd29ya3RyZWUiCittc2dzdHIgIiIKKyJlc2VndWkgaWwgY2hlY2tvdXQgZGkgPGJyYW5jaD4gYW5jaGUgc2UgdGFsZSBvcGVyYXppb25lIMOoIHN0YXRhIGVzZWd1aXRhIGluICIKKyJ1biBhbHRybyBhbGJlcm8gZGkgbGF2b3JvIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDkzCittc2dpZCAiY3JlYXRlIGEgbmV3IGJyYW5jaCIKK21zZ3N0ciAiY3JlYSB1biBudW92byBicmFuY2giCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTUKK21zZ2lkICJjcmVhdGUgb3IgcmVzZXQgYSBicmFuY2giCittc2dzdHIgImNyZWEgbyByZWltcG9zdGEgdW4gYnJhbmNoIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk3Cittc2dpZCAicG9wdWxhdGUgdGhlIG5ldyB3b3JraW5nIHRyZWUiCittc2dzdHIgInBvcG9sYSBpbCBudW92byBhbGJlcm8gZGkgbGF2b3JvIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk4Cittc2dpZCAia2VlcCB0aGUgbmV3IHdvcmtpbmcgdHJlZSBsb2NrZWQiCittc2dzdHIgIm1hbnRpZW5pIGJsb2NjYXRvIGlsIG51b3ZvIGFsYmVybyBkaSBsYXZvcm8iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDEKK21zZ2lkICJzZXQgdXAgdHJhY2tpbmcgbW9kZSAoc2VlIGdpdC1icmFuY2goMSkpIgorbXNnc3RyICJpbXBvc3RhIGxhIG1vZGFsaXTDoCB0cmFja2luZyAodmVkaSBnaXQtYnJhbmNoKDEpKSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwNAorbXNnaWQgInRyeSB0byBtYXRjaCB0aGUgbmV3IGJyYW5jaCBuYW1lIHdpdGggYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICIiCisidGVudGEgZGkgY2VyY2FyZSB1bmEgY29ycmlzcG9uZGVuemEgZnJhIGlsIG5vbWUgZGVsIG51b3ZvIGJyYW5jaCBlIHVuIGJyYW5jaCAiCisicmVtb3RvIGRhIHRyYWNjaWFyZSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjUxMgorbXNnaWQgIi1iLCAtQiwgYW5kIC0tZGV0YWNoIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgImxlIG9wemlvbmkgLWIsIC1CIGUgLS1kZXRhY2ggc29ubyBtdXR1YWxtZW50ZSBlc2NsdXNpdmUiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1NzMKK21zZ2lkICItLVtuby1ddHJhY2sgY2FuIG9ubHkgYmUgdXNlZCBpZiBhIG5ldyBicmFuY2ggaXMgY3JlYXRlZCIKK21zZ3N0ciAiIgorImwnb3B6aW9uZSAtLVtuby1ddHJhY2sgcHXDsiBlc3NlcmUgdXNhdGEgc29sbyBzZSB2aWVuZSBjcmVhdG8gdW4gbnVvdm8gYnJhbmNoIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjczCittc2dpZCAicmVhc29uIGZvciBsb2NraW5nIgorbXNnc3RyICJtb3Rpdm8gZGkgYmxvY2NvIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njg1IGJ1aWx0aW4vd29ya3RyZWUuYzo3MTggYnVpbHRpbi93b3JrdHJlZS5jOjc5MgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkxOQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiJyVzJyBub24gw6ggdW4gYWxiZXJvIGRpIGxhdm9ybyIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4NyBidWlsdGluL3dvcmt0cmVlLmM6NzIwCittc2dpZCAiVGhlIG1haW4gd29ya2luZyB0cmVlIGNhbm5vdCBiZSBsb2NrZWQgb3IgdW5sb2NrZWQiCittc2dzdHIgIk5vbiDDqCBwb3NzaWJpbGUgYmxvY2NhcmUgbyBzYmxvY2NhcmUgbCdhbGJlcm8gZGkgbGF2b3JvIHByaW5jaXBhbGUiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBhbHJlYWR5IGxvY2tlZCwgcmVhc29uOiAlcyIKK21zZ3N0ciAiJyVzJyDDqCBnacOgIGJsb2NjYXRvIHBlciBxdWVzdG8gbW90aXZvOiAlcyIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5NAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIGFscmVhZHkgbG9ja2VkIgorbXNnc3RyICInJXMnIMOoIGdpw6AgYmxvY2NhdG8iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgbG9ja2VkIgorbXNnc3RyICInJXMnIG5vbiDDqCBibG9jY2F0byIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc2MworbXNnaWQgIndvcmtpbmcgdHJlZXMgY29udGFpbmluZyBzdWJtb2R1bGVzIGNhbm5vdCBiZSBtb3ZlZCBvciByZW1vdmVkIgorbXNnc3RyICIiCisiZ2xpIGFsYmVyaSBkaSBsYXZvcm8gY29udGVuZW50aSBzb3R0b21vZHVsaSBub24gcG9zc29ubyBlc3NlcmUgc3Bvc3RhdGkgbyAiCisicmltb3NzaSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3MQorbXNnaWQgImZvcmNlIG1vdmUgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCittc2dzdHIgImZvcnphIGxvIHNwb3N0YW1lbnRvIGFuY2hlIHNlIGwnYWxiZXJvIGRpIGxhdm9ybyDDqCBzcG9yY28gbyBibG9jY2F0byIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5NCBidWlsdGluL3dvcmt0cmVlLmM6OTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgYSBtYWluIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiJyVzJyDDqCB1biBhbGJlcm8gZGkgbGF2b3JvIHByaW5jaXBhbGUiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZpZ3VyZSBvdXQgZGVzdGluYXRpb24gbmFtZSBmcm9tICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGRldGVybWluYXJlIGlsIG5vbWUgZGVzdGluYXppb25lIGRhICclcyciCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFyZ2V0ICclcycgYWxyZWFkeSBleGlzdHMiCittc2dzdHIgImxhIGRlc3RpbmF6aW9uZSAnJXMnIGVzaXN0ZSBnacOgIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjYW5ub3QgbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlc1xuIgorInVzZSAnbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgc3Bvc3RhcmUgdW4gYWxiZXJvIGRpIGxhdm9ybyBibG9jY2F0bywgbW90aXZhemlvbmUgYmxvY2NvOiAlc1xuIgorInVzYSAnbW92ZSAtZiAtZicgcGVyIGVzZWd1aXJuZSBsJ292ZXJyaWRlIG8gc2Jsb2NjYWxvIHByaW1hIGRpIGVzZWd1aXJlICIKKyJsJ29wZXJhemlvbmUiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTUKK21zZ2lkICIiCisiY2Fubm90IG1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlO1xuIgorInVzZSAnbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgc3Bvc3RhcmUgdW4gYWxiZXJvIGRpIGxhdm9ybyBibG9jY2F0bztcbiIKKyJ1c2EgJ21vdmUgLWYgLWYnIHBlciBlc2VndWlybmUgbCdvdmVycmlkZSBvIHNibG9jY2FsbyBwcmltYSBkaSBlc2VndWlyZSAiCisibCdvcGVyYXppb25lIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODE4CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbGlkYXRpb24gZmFpbGVkLCBjYW5ub3QgbW92ZSB3b3JraW5nIHRyZWU6ICVzIgorbXNnc3RyICJ2YWxpZGF6aW9uZSBub24gcml1c2NpdGEsIGltcG9zc2liaWxlIHNwb3N0YXJlIGwnYWxiZXJvIGRpIGxhdm9ybzogJXMiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG1vdmUgJyVzJyB0byAnJXMnIgorbXNnc3RyICJzcG9zdGFtZW50byBkaSAnJXMnIGluICclcycgbm9uIHJpdXNjaXRvIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODcxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBydW4gJ2dpdCBzdGF0dXMnIG9uICclcyciCittc2dzdHIgImVzZWN1emlvbmUgZGkgJ2dpdCBzdGF0dXMnIHN1ICclcycgbm9uIHJpdXNjaXRhIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgbW9kaWZpZWQgb3IgdW50cmFja2VkIGZpbGVzLCB1c2UgLS1mb3JjZSB0byBkZWxldGUgaXQiCittc2dzdHIgIiIKKyInJXMnIGNvbnRpZW5lIGZpbGUgbW9kaWZpY2F0aSBvIG5vbiB0cmFjY2lhdGksIHVzYSAtLWZvcmNlIHBlciBlbGltaW5hcmxvIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODgwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBydW4gJ2dpdCBzdGF0dXMnIG9uICclcycsIGNvZGUgJWQiCittc2dzdHIgImVzZWN1emlvbmUgZGkgJ2dpdCBzdGF0dXMnIHN1ICclcycgbm9uIHJpdXNjaXRhLCBjb2RpY2UgJWQiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MDMKK21zZ2lkICJmb3JjZSByZW1vdmFsIGV2ZW4gaWYgd29ya3RyZWUgaXMgZGlydHkgb3IgbG9ja2VkIgorbXNnc3RyICJmb3J6YSBsYSByaW1vemlvbmUgYW5jaGUgc2UgbCdhbGJlcm8gZGkgbGF2b3JvIMOoIHNwb3JjbyBvIGJsb2NjYXRvIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjYW5ub3QgcmVtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZSwgbG9jayByZWFzb246ICVzXG4iCisidXNlICdyZW1vdmUgLWYgLWYnIHRvIG92ZXJyaWRlIG9yIHVubG9jayBmaXJzdCIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIHJpbXVvdmVyZSB1biBhbGJlcm8gZGkgbGF2b3JvIGJsb2NjYXRvLCBtb3RpdmF6aW9uZSBibG9jY286ICVzXG4iCisidXNhICdyZW1vdmUgLWYgLWYnIHBlciBlc2VndWlybmUgbCdvdmVycmlkZSBvIHNibG9jY2FsbyBwcmltYSBkaSBlc2VndWlyZSAiCisibCdvcGVyYXppb25lIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTI4Cittc2dpZCAiIgorImNhbm5vdCByZW1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlO1xuIgorInVzZSAncmVtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSByaW11b3ZlcmUgdW4gYWxiZXJvIGRpIGxhdm9ybyBibG9jY2F0bztcbiIKKyJ1c2EgJ3JlbW92ZSAtZiAtZicgcGVyIGVzZWd1aXJuZSBsJ292ZXJyaWRlIG8gc2Jsb2NjYWxvIHByaW1hIGRpIGVzZWd1aXJlICIKKyJsJ29wZXJhemlvbmUiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsaWRhdGlvbiBmYWlsZWQsIGNhbm5vdCByZW1vdmUgd29ya2luZyB0cmVlOiAlcyIKK21zZ3N0ciAidmFsaWRhemlvbmUgbm9uIHJpdXNjaXRhLCBpbXBvc3NpYmlsZSByaW11b3ZlcmUgbCdhbGJlcm8gZGkgbGF2b3JvOiAlcyIKKworIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MTUKK21zZ2lkICJnaXQgd3JpdGUtdHJlZSBbLS1taXNzaW5nLW9rXSBbLS1wcmVmaXg9PHByZWZpeD4vXSIKK21zZ3N0ciAiZ2l0IHdyaXRlLXRyZWUgWy0tbWlzc2luZy1va10gWy0tcHJlZml4PTxwcmVmaXNzbz4vXSIKKworIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjgKK21zZ2lkICI8cHJlZml4Pi8iCittc2dzdHIgIjxwcmVmaXNzbz4vIgorCisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyOQorbXNnaWQgIndyaXRlIHRyZWUgb2JqZWN0IGZvciBhIHN1YmRpcmVjdG9yeSA8cHJlZml4PiIKK21zZ3N0ciAic2NyaXZpIGwnb2dnZXR0byBhbGJlcm8gcGVyIHVuYSBzb3R0b2RpcmVjdG9yeSA8cHJlZmlzc28+IgorCisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzozMQorbXNnaWQgIm9ubHkgdXNlZnVsIGZvciBkZWJ1Z2dpbmciCittc2dzdHIgInV0aWxlIHNvbG8gcGVyIGlsIGRlYnVnIgorCisjOiBmYXN0LWltcG9ydC5jOjMxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0ZWQgJ21hcmsnIGNvbW1hbmQsIGdvdCAlcyIKK21zZ3N0ciAiQXR0ZXNvIGNvbWFuZG8gJ21hcmsnLCByaWNldnV0byAlcyIKKworIzogZmFzdC1pbXBvcnQuYzozMTMwCisjLCBjLWZvcm1hdAorbXNnaWQgIkV4cGVjdGVkICd0bycgY29tbWFuZCwgZ290ICVzIgorbXNnc3RyICJBdHRlc28gY29tYW5kbyAndG8nLCByaWNldnV0byAlcyIKKworIzogZmFzdC1pbXBvcnQuYzozMjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImZlYXR1cmUgJyVzJyBmb3JiaWRkZW4gaW4gaW5wdXQgd2l0aG91dCAtLWFsbG93LXVuc2FmZS1mZWF0dXJlcyIKK21zZ3N0ciAiZnVuemlvbmFsaXTDoCAnJXMnIHZpZXRhdGEgbmVsbCdpbnB1dCBzZW56YSAtLWFsbG93LXVuc2FmZS1mZWF0dXJlcyIKKworIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgcGVybWlzc2lvbnMgb24geW91ciBzb2NrZXQgZGlyZWN0b3J5IGFyZSB0b28gbG9vc2U7IG90aGVyXG4iCisidXNlcnMgbWF5IGJlIGFibGUgdG8gcmVhZCB5b3VyIGNhY2hlZCBjcmVkZW50aWFscy4gQ29uc2lkZXIgcnVubmluZzpcbiIKKyJcbiIKKyJcdGNobW9kIDA3MDAgJXMiCittc2dzdHIgIiIKKyJJIHBlcm1lc3NpIHN1bGxhIGRpcmVjdG9yeSBkZWwgc29ja2V0IHNvbm8gdHJvcHBvIGxhc2NoaTsgYWx0cmlcbiIKKyJ1dGVudGkgcG90cmViYmVybyBlc3NlcmUgaW4gZ3JhZG8gZGkgbGVnZ2VyZSBsZSBjcmVkZW56aWFsaSBuZWxsYVxuIgorImNhY2hlLiBWYWx1dGEgZGkgZXNlZ3VpcmU6XG4iCisiXG4iCisiXHRjaG1vZCAwNzAwICVzIgorCisjOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyNzIKK21zZ2lkICJwcmludCBkZWJ1Z2dpbmcgbWVzc2FnZXMgdG8gc3RkZXJyIgorbXNnc3RyICJzdGFtcGEgaSBtZXNzYWdnaSBkaSBkZWJ1ZyBzdWxsbyBzdGFuZGFyZCBlcnJvciIKKworIzogdC9oZWxwZXIvdGVzdC1yZWFjaC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgJXMgaXMgbm90IG1hcmtlZCByZWFjaGFibGUiCittc2dzdHIgImlsIGNvbW1pdCAlcyBub24gw6ggY29udHJhc3NlZ25hdG8gY29tZSByYWdnaXVuZ2liaWxlIgorCisjOiB0L2hlbHBlci90ZXN0LXJlYWNoLmM6MTYyCittc2dpZCAidG9vIG1hbnkgY29tbWl0cyBtYXJrZWQgcmVhY2hhYmxlIgorbXNnc3RyICJ0cm9wcGkgY29tbWl0IGNvbnRyYXNzZWduYXRpIGNvbWUgcmFnZ2l1bmdpYmlsaSIKKworIzogdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjcKK21zZ2lkICJ0ZXN0LXRvb2wgc2VydmUtdjIgWzxvcHRpb25zPl0iCittc2dzdHIgInRlc3QtdG9vbCBzZXJ2ZS12MiBbPG9wemlvbmk+XSIKKworIzogdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjE5Cittc2dpZCAiZXhpdCBpbW1lZGlhdGVseSBhZnRlciBhZHZlcnRpc2luZyBjYXBhYmlsaXRpZXMiCittc2dzdHIgImVzY2kgc3ViaXRvIGRvcG8gYXZlciBhbm51bmNpYXRvIGxlIGZ1bnppb25hbGl0w6AiCisKKyM6IGdpdC5jOjI3Cittc2dpZCAiIgorImdpdCBbLS12ZXJzaW9uXSBbLS1oZWxwXSBbLUMgPHBhdGg+XSBbLWMgPG5hbWU+PTx2YWx1ZT5dXG4iCisiICAgICAgICAgICBbLS1leGVjLXBhdGhbPTxwYXRoPl1dIFstLWh0bWwtcGF0aF0gWy0tbWFuLXBhdGhdIFstLWluZm8tcGF0aF1cbiIKKyIgICAgICAgICAgIFstcCB8IC0tcGFnaW5hdGUgfCAtUCB8IC0tbm8tcGFnZXJdIFstLW5vLXJlcGxhY2Utb2JqZWN0c10gWy0tIgorImJhcmVdXG4iCisiICAgICAgICAgICBbLS1naXQtZGlyPTxwYXRoPl0gWy0td29yay10cmVlPTxwYXRoPl0gWy0tbmFtZXNwYWNlPTxuYW1lPl1cbiIKKyIgICAgICAgICAgIDxjb21tYW5kPiBbPGFyZ3M+XSIKK21zZ3N0ciAiIgorImdpdCBbLS12ZXJzaW9uXSBbLS1oZWxwXSBbLUMgPHBlcmNvcnNvPl0gWy1jIDxub21lPj08dmFsb3JlPl1cbiIKKyIgICAgICAgICAgIFstLWV4ZWMtcGF0aFs9PHBlcmNvcnNvPl1dIFstLWh0bWwtcGF0aF0gWy0tbWFuLXBhdGhdIFstLWluZm8tIgorInBhdGhdXG4iCisiICAgICAgICAgICBbLXAgfCAtLXBhZ2luYXRlIHwgLVAgfCAtLW5vLXBhZ2VyXSBbLS1uby1yZXBsYWNlLW9iamVjdHNdIFstLSIKKyJiYXJlXVxuIgorIiAgICAgICAgICAgWy0tZ2l0LWRpcj08cGVyY29yc28+XSBbLS13b3JrLXRyZWU9PHBlcmNvcnNvPl0gWy0tIgorIm5hbWVzcGFjZT08bm9tZT5dXG4iCisiICAgICAgICAgICA8Y29tYW5kbz4gWzxhcmdvbWVudGk+XSIKKworIzogZ2l0LmM6MzQKK21zZ2lkICIiCisiJ2dpdCBoZWxwIC1hJyBhbmQgJ2dpdCBoZWxwIC1nJyBsaXN0IGF2YWlsYWJsZSBzdWJjb21tYW5kcyBhbmQgc29tZVxuIgorImNvbmNlcHQgZ3VpZGVzLiBTZWUgJ2dpdCBoZWxwIDxjb21tYW5kPicgb3IgJ2dpdCBoZWxwIDxjb25jZXB0PidcbiIKKyJ0byByZWFkIGFib3V0IGEgc3BlY2lmaWMgc3ViY29tbWFuZCBvciBjb25jZXB0LlxuIgorIlNlZSAnZ2l0IGhlbHAgZ2l0JyBmb3IgYW4gb3ZlcnZpZXcgb2YgdGhlIHN5c3RlbS4iCittc2dzdHIgIiIKKyInZ2l0IGhlbHAgLWEnIGUgJ2dpdCBoZWxwIC1nJyBlbGVuY2FubyBpIHNvdHRvY29tYW5kaSBkaXNwb25pYmlsaSBlXG4iCisiYWxjdW5lIGd1aWRlIGNvbmNldHR1YWxpLiBWZWRpICdnaXQgaGVscCA8Y29tYW5kbz4nIG8gJ2dpdCBoZWxwIDxjb25jZXR0bz4nXG4iCisicGVyIGxlZ2dlcmUgdWx0ZXJpb3JpIGluZm9ybWF6aW9uaSBzdSB1biBzb3R0b2NvbWFuZG8gbyBzdSB1biBjb25jZXR0b1xuIgorInNwZWNpZmljaS5cbiIKKyJWZWRpICdnaXQgaGVscCBnaXQnIHBlciB1bmEgcGFub3JhbWljYSBkZWwgc2lzdGVtYS4iCisKKyM6IGdpdC5jOjE4NgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBkaXJlY3RvcnkgZ2l2ZW4gZm9yIC0tZ2l0LWRpclxuIgorbXNnc3RyICJuZXNzdW5hIGRpcmVjdG9yeSBzcGVjaWZpY2F0YSBwZXIgLS1naXQtZGlyXG4iCisKKyM6IGdpdC5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBuYW1lc3BhY2UgZ2l2ZW4gZm9yIC0tbmFtZXNwYWNlXG4iCittc2dzdHIgIm5lc3N1bm8gc3BhemlvIGRlaSBub21pIHNwZWNpZmljYXRvIHBlciAtLW5hbWVzcGFjZVxuIgorCisjOiBnaXQuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtLXdvcmstdHJlZVxuIgorbXNnc3RyICJuZXNzdW5hIGRpcmVjdG9yeSBzcGVjaWZpY2F0YSBwZXIgLS13b3JrLXRyZWVcbiIKKworIzogZ2l0LmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHByZWZpeCBnaXZlbiBmb3IgLS1zdXBlci1wcmVmaXhcbiIKK21zZ3N0ciAibmVzc3VuIHByZWZpc3NvIHNwZWNpZmljYXRvIHBlciAtLXN1cGVyLXByZWZpeFxuIgorCisjOiBnaXQuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLWMgZXhwZWN0cyBhIGNvbmZpZ3VyYXRpb24gc3RyaW5nXG4iCittc2dzdHIgIi1jOiBhdHRlc2Egc3RyaW5nYSBkaSBjb25maWd1cmF6aW9uZVxuIgorCisjOiBnaXQuYzoyODgKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtQ1xuIgorbXNnc3RyICJuZXNzdW5hIGRpcmVjdG9yeSBzcGVjaWZpY2F0YSBwZXIgLUNcbiIKKworIzogZ2l0LmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uOiAlc1xuIgorbXNnc3RyICJvcHppb25lIHNjb25vc2NpdXRhOiAlc1xuIgorCisjOiBnaXQuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgZXhwYW5kaW5nIGFsaWFzICclcyc6ICclcyciCittc2dzdHIgImR1cmFudGUgbCdlc3BhbnNpb25lIGRlbGwnYWxpYXMgJyVzJzogJyVzJyIKKworIzogZ2l0LmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbGlhcyAnJXMnIGNoYW5nZXMgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIllvdSBjYW4gdXNlICchZ2l0JyBpbiB0aGUgYWxpYXMgdG8gZG8gdGhpcyIKK21zZ3N0ciAiIgorImwnYWxpYXMgJyVzJyBtb2RpZmljYSBsZSB2YXJpYWJpbGkgZCdhbWJpZW50ZS5cbiIKKyJQdW9pIHVzYXJlICchZ2l0JyBuZWxsJ2FsaWFzIHBlciBmYXJsbyIKKworIzogZ2l0LmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGFsaWFzIGZvciAlcyIKK21zZ3N0ciAiYWxpYXMgdnVvdG8gcGVyICVzIgorCisjOiBnaXQuYzozNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVjdXJzaXZlIGFsaWFzOiAlcyIKK21zZ3N0ciAiYWxpYXMgcmljb3JzaXZvOiAlcyIKKworIzogZ2l0LmM6NDU5Cittc2dpZCAid3JpdGUgZmFpbHVyZSBvbiBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgImVycm9yZSBkaSBzY3JpdHR1cmEgc3VsbG8gc3RhbmRhcmQgb3V0cHV0IgorCisjOiBnaXQuYzo0NjEKK21zZ2lkICJ1bmtub3duIHdyaXRlIGZhaWx1cmUgb24gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICJlcnJvcmUgZGkgc2NyaXR0dXJhIHNjb25vc2NpdXRvIHN1bGxvIHN0YW5kYXJkIG91dHB1dCIKKworIzogZ2l0LmM6NDYzCittc2dpZCAiY2xvc2UgZmFpbGVkIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiY2hpdXN1cmEgZGVsbG8gc3RhbmRhcmQgb3V0cHV0IG5vbiByaXVzY2l0YSIKKworIzogZ2l0LmM6NzkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsaWFzIGxvb3AgZGV0ZWN0ZWQ6IGV4cGFuc2lvbiBvZiAnJXMnIGRvZXMgbm90IHRlcm1pbmF0ZTolcyIKK21zZ3N0ciAicmlsZXZhdG8gY2ljbG8gYWxpYXM6IGwnZXNwYW5zaW9uZSBkaSAnJXMnIG5vbiB0ZXJtaW5hOiVzIgorCisjOiBnaXQuYzo4NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGhhbmRsZSAlcyBhcyBhIGJ1aWx0aW4iCittc2dzdHIgImltcG9zc2liaWxlIGdlc3RpcmUgJXMgY29tZSBjb21hbmRvIGluY29ycG9yYXRvIgorCisjOiBnaXQuYzo4NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVzYWdlOiAlc1xuIgorIlxuIgorbXNnc3RyICIiCisidXNvOiAlc1xuIgorIlxuIgorCisjOiBnaXQuYzo4NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXhwYW5zaW9uIG9mIGFsaWFzICclcycgZmFpbGVkOyAnJXMnIGlzIG5vdCBhIGdpdCBjb21tYW5kXG4iCittc2dzdHIgImVzcGFuc2lvbmUgZGVsbCdhbGlhcyAnJXMnIG5vbiByaXVzY2l0YTsgJyVzJyBub24gw6ggdW4gY29tYW5kbyBHaXRcbiIKKworIzogZ2l0LmM6ODg4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBydW4gY29tbWFuZCAnJXMnOiAlc1xuIgorbXNnc3RyICJlc2VjdXppb25lIGRlbCBjb21hbmRvICclcycgbm9uIHJpdXNjaXRhOiAlc1xuIgorCisjOiBodHRwLmM6Mzc4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5lZ2F0aXZlIHZhbHVlIGZvciBodHRwLnBvc3RidWZmZXI7IGRlZmF1bHRpbmcgdG8gJWQiCittc2dzdHIgInZhbG9yZSBuZWdhdGl2byBwZXIgaHR0cC5wb3N0YnVmZmVyOyB1c28gbCdpbXBvc3RhemlvbmUgcHJlZGVmaW5pdGEgJWQiCisKKyM6IGh0dHAuYzozOTkKK21zZ2lkICJEZWxlZ2F0aW9uIGNvbnRyb2wgaXMgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjIyLjAiCittc2dzdHIgIklsIGNvbnRyb2xsbyBkZWxlZ2F6aW9uZSBub24gw6ggc3VwcG9ydGF0byBjb24gY1VSTCA8IDcuMjIuMCIKKworIzogaHR0cC5jOjQwOAorbXNnaWQgIlB1YmxpYyBrZXkgcGlubmluZyBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuNDQuMCIKK21zZ3N0ciAiSWwgcGlubmluZyBkZWxsZSBjaGlhdmkgcHViYmxpY2hlIG5vbiDDqCBzdXBwb3J0YXRvIGNvbiBjVVJMIDwgNy40NC4wIgorCisjOiBodHRwLmM6ODc2Cittc2dpZCAiQ1VSTFNTTE9QVF9OT19SRVZPS0Ugbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjQ0LjAiCittc2dzdHIgIkNVUkxTU0xPUFRfTk9fUkVWT0tFIG5vbiDDqCBzdXBwb3J0YXRvIGNvbiBjVVJMIDwgNy40NC4wIgorCisjOiBodHRwLmM6OTQ5Cittc2dpZCAiUHJvdG9jb2wgcmVzdHJpY3Rpb25zIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy4xOS40IgorbXNnc3RyICJMZSByZXN0cml6aW9uaSBwcm90b2NvbGxvIG5vbiBzb25vIHN1cHBvcnRhdGUgY29uIGNVUkwgPCA3LjE5LjQiCisKKyM6IGh0dHAuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgIlVuc3VwcG9ydGVkIFNTTCBiYWNrZW5kICclcycuIFN1cHBvcnRlZCBTU0wgYmFja2VuZHM6IgorbXNnc3RyICJCYWNrZW5kIFNTTCAnJXMnIG5vbiBzdXBwb3J0YXRvLiBCYWNrZW5kIFNTTCBzdXBwb3J0YXRpOiIKKworIzogaHR0cC5jOjEwOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHNldCBTU0wgYmFja2VuZCB0byAnJXMnOiBjVVJMIHdhcyBidWlsdCB3aXRob3V0IFNTTCBiYWNrZW5kcyIKK21zZ3N0ciAiIgorIkltcG9zc2liaWxlIGltcG9zdGFyZSBpbCBiYWNrZW5kIFNTTCBhICclcyc6IGNVUkwgw6ggc3RhdG8gY29tcGlsYXRvIHNlbnphICIKKyJiYWNrZW5kIFNTTCIKKworIzogaHR0cC5jOjEwOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHNldCBTU0wgYmFja2VuZCB0byAnJXMnOiBhbHJlYWR5IHNldCIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgaW1wb3N0YXJlIGlsIGJhY2tlbmQgU1NMIGEgJyVzJzogZ2nDoCBpbXBvc3RhdG8iCisKKyM6IGh0dHAuYzoxOTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gdXBkYXRlIHVybCBiYXNlIGZyb20gcmVkaXJlY3Rpb246XG4iCisiICBhc2tlZCBmb3I6ICVzXG4iCisiICAgcmVkaXJlY3Q6ICVzIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgYWdnaW9ybmFyZSBsJ1VSTCBkaSBiYXNlIGRhbGxhIHJlZGlyZXppb25lOlxuIgorIiAgcmljaGllc3RhOiAlc1xuIgorIiAgIHJlZGlyZWN0OiAlcyIKKworIzogcmVtb3RlLWN1cmwuYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBxdW90aW5nIGluIHB1c2gtb3B0aW9uIHZhbHVlOiAnJXMnIgorbXNnc3RyICJ2aXJnb2xldHRlIG5vbiB2YWxpZGUgbmVsIHZhbG9yZSBwdXNoLW9wdGlvbjogJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXNpbmZvL3JlZnMgbm90IHZhbGlkOiBpcyB0aGlzIGEgZ2l0IHJlcG9zaXRvcnk/IgorbXNnc3RyICIlc2luZm8vcmVmcyBub24gdmFsaWRvOiDDqCB1biByZXBvc2l0b3J5IEdpdD8iCisKKyM6IHJlbW90ZS1jdXJsLmM6MzY0Cittc2dpZCAiaW52YWxpZCBzZXJ2ZXIgcmVzcG9uc2U7IGV4cGVjdGVkIHNlcnZpY2UsIGdvdCBmbHVzaCBwYWNrZXQiCittc2dzdHIgIiIKKyJyaXNwb3N0YSBkZWwgc2VydmVyIG5vbiB2YWxpZGE7IGF0dGVzbyBzZXJ2aXppbywgcmljZXZ1dG8gcGFjY2hldHRvIGZsdXNoIgorCisjOiByZW1vdGUtY3VybC5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZ290ICclcyciCittc2dzdHIgInJpc3Bvc3RhIGRlbCBzZXJ2ZXIgbm9uIHZhbGlkYTsgcmljZXZ1dG8gJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVwb3NpdG9yeSAnJXMnIG5vdCBmb3VuZCIKK21zZ3N0ciAicmVwb3NpdG9yeSAnJXMnIG5vbiB0cm92YXRvIgorCisjOiByZW1vdGUtY3VybC5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGlvbiBmYWlsZWQgZm9yICclcyciCittc2dzdHIgIkF1dGVudGljYXppb25lIG5vbiByaXVzY2l0YSBwZXIgJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzo0NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyAnJXMnOiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYWNjZWRlcmUgYSAnJXMnOiAlcyIKKworIzogcmVtb3RlLWN1cmwuYzo0NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVkaXJlY3RpbmcgdG8gJXMiCittc2dzdHIgInJlZGlyZXppb25lIGEgJXMgaW4gY29yc28iCisKKyM6IHJlbW90ZS1jdXJsLmM6NTkzCittc2dpZCAic2hvdWxkbid0IGhhdmUgRU9GIHdoZW4gbm90IGdlbnRsZSBvbiBFT0YiCittc2dzdHIgIiIKKyJub24gZG92cmViYmUgZXNzZXJjaSB1biBwYWNjaGV0dG8gZmluZSBmaWxlIHNlIG5vbiBzaSDDqCBhY2NvbW9kYW50aSBjb24gIgorInF1ZXN0aSB1bHRpbWkiCisKKyM6IHJlbW90ZS1jdXJsLmM6NjczCittc2dpZCAidW5hYmxlIHRvIHJld2luZCBycGMgcG9zdCBkYXRhIC0gdHJ5IGluY3JlYXNpbmcgaHR0cC5wb3N0QnVmZmVyIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgcml0b3JuYXJlIGEgdW4gcHVudG8gcHJlY2VkZW50ZSBkZWkgZGF0aSBQT1NUIFJQQyAtIHByb3ZhIGFkICIKKyJhdW1lbnRhcmUgaWwgdmFsb3JlIGRpIGh0dHAucG9zdEJ1ZmZlciIKKworIzogcmVtb3RlLWN1cmwuYzo3MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUlBDIGZhaWxlZDsgJXMiCittc2dzdHIgIlJQQyBub24gcml1c2NpdGE7ICVzIgorCisjOiByZW1vdGUtY3VybC5jOjc3MworbXNnaWQgImNhbm5vdCBoYW5kbGUgcHVzaGVzIHRoaXMgYmlnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBnZXN0aXJlIHB1c2ggY29zw6wgZ3JhbmRpIgorCisjOiByZW1vdGUtY3VybC5jOjg4OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGRlZmxhdGUgZXJyb3IgJWQiCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBkZWZsYXRlIGRlbGxhIHJpY2hpZXN0YTsgZXJyb3JlIGRlZmxhdGUgemxpYiAlZCIKKworIzogcmVtb3RlLWN1cmwuYzo4OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRlZmxhdGUgcmVxdWVzdDsgemxpYiBlbmQgZXJyb3IgJWQiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGlsIGRlZmxhdGUgZGVsbGEgcmljaGllc3RhOyBlcnJvcmUgZmluZSB6bGliICVkIgorCisjOiByZW1vdGUtY3VybC5jOjEwMjMKK21zZ2lkICJkdW1iIGh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjYXBhYmlsaXRpZXMiCittc2dzdHIgImlsIHRyYXNwb3J0byBodHRwIHN0dXBpZG8gbm9uIHN1cHBvcnRhIGxlIGZ1bnppb25hbGl0w6Agc2hhbGxvdyIKKworIzogcmVtb3RlLWN1cmwuYzoxMDM4Cittc2dpZCAiZmV0Y2ggZmFpbGVkLiIKK21zZ3N0ciAicmVjdXBlcm8gbm9uIHJpdXNjaXRvLiIKKworIzogcmVtb3RlLWN1cmwuYzoxMDg2Cittc2dpZCAiY2Fubm90IGZldGNoIGJ5IHNoYTEgb3ZlciBzbWFydCBodHRwIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgcmVjdXBlcmFyZSBpIGRhdGkgaW4gYmFzZSBhbGxvIFNIQTEgY29uIGlsIHRyYXNwb3J0byBIVFRQICIKKyJpbnRlbGxpZ2VudGUiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTEzMCByZW1vdGUtY3VybC5jOjExMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvdG9jb2wgZXJyb3I6IGV4cGVjdGVkIHNoYS9yZWYsIGdvdCAnJXMnIgorbXNnc3RyICJlcnJvcmUgcHJvdG9jb2xsbzogYXR0ZXNvIFNIQS9yaWZlcmltZW50bywgcmljZXZ1dG8gJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzoxMTQ4IHJlbW90ZS1jdXJsLmM6MTI2MworIywgYy1mb3JtYXQKK21zZ2lkICJodHRwIHRyYW5zcG9ydCBkb2VzIG5vdCBzdXBwb3J0ICVzIgorbXNnc3RyICJpbCB0cmFzcG9ydG8gSFRUUCBub24gc3VwcG9ydGEgJXMiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTE4NAorbXNnaWQgImdpdC1odHRwLXB1c2ggZmFpbGVkIgorbXNnc3RyICJnaXQtaHR0cC1wdXNoIG5vbiByaXVzY2l0byIKKworIzogcmVtb3RlLWN1cmwuYzoxMzY5Cittc2dpZCAicmVtb3RlLWN1cmw6IHVzYWdlOiBnaXQgcmVtb3RlLWN1cmwgPHJlbW90ZT4gWzx1cmw+XSIKK21zZ3N0ciAicmVtb3RlLWN1cmw6IHVzbzogZ2l0IHJlbW90ZS1jdXJsIDxyZW1vdG8+IFs8VVJMPl0iCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQwMQorbXNnaWQgInJlbW90ZS1jdXJsOiBlcnJvciByZWFkaW5nIGNvbW1hbmQgc3RyZWFtIGZyb20gZ2l0IgorbXNnc3RyICJyZW1vdGUtY3VybDogZXJyb3JlIGR1cmFudGUgbGEgbGV0dHVyYSBkZWwgZmx1c3NvIGRlaSBjb21hbmRpIGRhIEdpdCIKKworIzogcmVtb3RlLWN1cmwuYzoxNDA4Cittc2dpZCAicmVtb3RlLWN1cmw6IGZldGNoIGF0dGVtcHRlZCB3aXRob3V0IGEgbG9jYWwgcmVwbyIKK21zZ3N0ciAicmVtb3RlLWN1cmw6IHRlbnRhdG8gdW4gZmV0Y2ggc2VuemEgdW4gcmVwb3NpdG9yeSBsb2NhbGUiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdGUtY3VybDogdW5rbm93biBjb21tYW5kICclcycgZnJvbSBnaXQiCittc2dzdHIgInJlbW90ZS1jdXJsOiByaWNldnV0byBjb21hbmRvIHNjb25vc2NpdXRvICclcycgZGEgR2l0IgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo4NQorbXNnaWQgImFyZ3MiCittc2dzdHIgImFyZ29tZW50aSIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6ODYKK21zZ2lkICJvYmplY3QgZmlsdGVyaW5nIgorbXNnc3RyICJmaWx0cmFnZ2lvIG9nZ2V0dGkiCisKKyM6IHBhcnNlLW9wdGlvbnMuaDoxODMKK21zZ2lkICJleHBpcnktZGF0ZSIKK21zZ3N0ciAiZGF0YS1zY2FkZW56YSIKKworIzogcGFyc2Utb3B0aW9ucy5oOjE5NwogbXNnaWQgIm5vLW9wIChiYWNrd2FyZCBjb21wYXRpYmlsaXR5KSIKLW1zZ3N0ciAiIgorbXNnc3RyICJuby1vcCAocmV0cm9jb21wYXRpYmlsaXTDoCkiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoyMjgKKyM6IHBhcnNlLW9wdGlvbnMuaDozMDkKIG1zZ2lkICJiZSBtb3JlIHZlcmJvc2UiCi1tc2dzdHIgInBpw7kgZGV0dGFnbGlhdG8iCittc2dzdHIgInZpc3VhbGl6emEgcGnDuSBkZXR0YWdsaSIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjIzMAorIzogcGFyc2Utb3B0aW9ucy5oOjMxMQogbXNnaWQgImJlIG1vcmUgcXVpZXQiCi1tc2dzdHIgIm1lbm8gZGV0dGFnbGlhdG8iCittc2dzdHIgInZpc3VhbGl6emEgbWVubyBkZXR0YWdsaSIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjIzNgorIzogcGFyc2Utb3B0aW9ucy5oOjMxNwogbXNnaWQgInVzZSA8bj4gZGlnaXRzIHRvIGRpc3BsYXkgU0hBLTFzIgotbXNnc3RyICJ1c2FyZSA8bj4gY2lmcmUgcGVyIG1vc3RyYXJlIGdsaSBoYXNoIFNIQS0xIgorbXNnc3RyICJ1c2EgPG4+IGNpZnJlIHBlciBtb3N0cmFyZSBnbGkgaGFzaCBTSEEtMSIKIAotIzogY29tbW9uLWNtZHMuaDo4CisjOiBwYXJzZS1vcHRpb25zLmg6MzM2Cittc2dpZCAiaG93IHRvIHN0cmlwIHNwYWNlcyBhbmQgI2NvbW1lbnRzIGZyb20gbWVzc2FnZSIKK21zZ3N0ciAiY29tZSByaW11b3ZlcmUgZ2xpIHNwYXppIGUgaSAjY29tbWVudGkgZGFsIG1lc3NhZ2dpbyIKKworIzogcGFyc2Utb3B0aW9ucy5oOjMzNworbXNnaWQgInJlYWQgcGF0aHNwZWMgZnJvbSBmaWxlIgorbXNnc3RyICJsZWdnaSBnbGkgc3BlY2lmaWNhdG9yaSBwZXJjb3JzbyBkYSB1biBmaWxlIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzM4Cittc2dpZCAiIgorIndpdGggLS1wYXRoc3BlYy1mcm9tLWZpbGUsIHBhdGhzcGVjIGVsZW1lbnRzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgorbXNnc3RyICIiCisiY29uIC0tcGF0aHNwZWMtZnJvbS1maWxlIGdsaSBlbGVtZW50aSBzcGVjaWZpY2F0b3JpIHBlcmNvcnNvIHNvbm8gc2VwYXJhdGkgIgorImRhIHVuIGNhcmF0dGVyZSBOVUwiCisKKyM6IHJlZi1maWx0ZXIuaDoxMDEKK21zZ2lkICJrZXkiCittc2dzdHIgImNoaWF2ZSIKKworIzogcmVmLWZpbHRlci5oOjEwMQorbXNnaWQgImZpZWxkIG5hbWUgdG8gc29ydCBvbiIKK21zZ3N0ciAibm9tZSBjYW1wbyBpbiBiYXNlIGEgY3VpIG9yZGluYXJlIgorCisjOiByZXJlcmUuaDo0NAorbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKK21zZ3N0ciAiIgorImFnZ2lvcm5hIGwnaW5kaWNlIGNvbiBsYSB0ZWNuaWNhIGRpIHJpc29sdXppb25lIGNvbmZsaXR0aSByaXV0aWxpenphdGEgc2UgIgorInBvc3NpYmlsZSIKKworIzogd3Qtc3RhdHVzLmg6NjcKK21zZ2lkICJIRUFEIGRldGFjaGVkIGF0ICIKK21zZ3N0ciAiSEVBRCBzY29sbGVnYXRvIHN1ICIKKworIzogd3Qtc3RhdHVzLmg6NjgKK21zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgorbXNnc3RyICJIRUFEIHNjb2xsZWdhdG8gZGEgIgorCisjOiBjb21tYW5kLWxpc3QuaDo1MAogbXNnaWQgIkFkZCBmaWxlIGNvbnRlbnRzIHRvIHRoZSBpbmRleCIKLW1zZ3N0ciAiQWdnaXVuZ2UgaWwgY29udGVudXRvIGRlbCBmaWxlIGEgaW5kZXgiCittc2dzdHIgIkFnZ2l1bmdlIGkgY29udGVudXRpIGRlbCBmaWxlIGFsbCdpbmRpY2UiCiAKLSM6IGNvbW1vbi1jbWRzLmg6OQotbXNnaWQgIkZpbmQgYnkgYmluYXJ5IHNlYXJjaCB0aGUgY2hhbmdlIHRoYXQgaW50cm9kdWNlZCBhIGJ1ZyIKLW1zZ3N0ciAiQ2VyY2EgbWVkaWFudGUgcmljZXJjYSBiaW5hcmlhIGxhIG1vZGlmaWNhIGNoZSBoYSBpbnRyb2RvdHRvIHVuIGJ1ZyIKKyM6IGNvbW1hbmQtbGlzdC5oOjUxCittc2dpZCAiQXBwbHkgYSBzZXJpZXMgb2YgcGF0Y2hlcyBmcm9tIGEgbWFpbGJveCIKK21zZ3N0ciAiQXBwbGljYSB1bmEgc2VyaWUgZGkgcGF0Y2ggZGEgdW5hIGNhc2VsbGEgZGkgcG9zdGEiCiAKLSM6IGNvbW1vbi1jbWRzLmg6MTAKKyM6IGNvbW1hbmQtbGlzdC5oOjUyCittc2dpZCAiQW5ub3RhdGUgZmlsZSBsaW5lcyB3aXRoIGNvbW1pdCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiQW5ub3RhIGxlIHJpZ2hlIGRlaSBmaWxlIGNvbiBsZSBpbmZvcm1hemlvbmkgc3VpIGNvbW1pdCIKKworIzogY29tbWFuZC1saXN0Lmg6NTMKK21zZ2lkICJBcHBseSBhIHBhdGNoIHRvIGZpbGVzIGFuZC9vciB0byB0aGUgaW5kZXgiCittc2dzdHIgIkFwcGxpY2EgdW5hIHBhdGNoIGFpIGZpbGUgZS9vIGFsbCdpbmRpY2UiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjU0Cittc2dpZCAiSW1wb3J0IGEgR05VIEFyY2ggcmVwb3NpdG9yeSBpbnRvIEdpdCIKK21zZ3N0ciAiSW1wb3J0YSB1biByZXBvc2l0b3J5IEdOVSBBcmNoIGluIEdpdCIKKworIzogY29tbWFuZC1saXN0Lmg6NTUKK21zZ2lkICJDcmVhdGUgYW4gYXJjaGl2ZSBvZiBmaWxlcyBmcm9tIGEgbmFtZWQgdHJlZSIKK21zZ3N0ciAiQ3JlYSB1biBhcmNoaXZpbyBkaSBmaWxlIGRhIHVuIGFsYmVybyBjb24gbm9tZSIKKworIzogY29tbWFuZC1saXN0Lmg6NTYKK21zZ2lkICJVc2UgYmluYXJ5IHNlYXJjaCB0byBmaW5kIHRoZSBjb21taXQgdGhhdCBpbnRyb2R1Y2VkIGEgYnVnIgorbXNnc3RyICJVc2EgbGEgcmljZXJjYSBiaW5hcmlhIHBlciB0cm92YXJlIGlsIGNvbW1pdCBjaGUgaGEgaW50cm9kb3R0byB1biBidWciCisKKyM6IGNvbW1hbmQtbGlzdC5oOjU3Cittc2dpZCAiU2hvdyB3aGF0IHJldmlzaW9uIGFuZCBhdXRob3IgbGFzdCBtb2RpZmllZCBlYWNoIGxpbmUgb2YgYSBmaWxlIgorbXNnc3RyICIiCisiVmlzdWFsaXp6YSBxdWFsaSByZXZpc2lvbmUgZSBhdXRvcmUgaGFubm8gbW9kaWZpY2F0byBvZ25pIHNpbmdvbGEgcmlnYSBkaSB1biAiCisiZmlsZSBwZXIgdWx0aW1pIgorCisjOiBjb21tYW5kLWxpc3QuaDo1OAogbXNnaWQgIkxpc3QsIGNyZWF0ZSwgb3IgZGVsZXRlIGJyYW5jaGVzIgogbXNnc3RyICJFbGVuY2EsIGNyZWEgbyBlbGltaW5hIGJyYW5jaCIKIAotIzogY29tbW9uLWNtZHMuaDoxMQotbXNnaWQgIkNoZWNrb3V0IGEgYnJhbmNoIG9yIHBhdGhzIHRvIHRoZSB3b3JraW5nIHRyZWUiCi1tc2dzdHIgIiIKKyM6IGNvbW1hbmQtbGlzdC5oOjU5Cittc2dpZCAiTW92ZSBvYmplY3RzIGFuZCByZWZzIGJ5IGFyY2hpdmUiCittc2dzdHIgIlNwb3N0YSBvZ2dldHRpIGUgcmlmZXJpbWVudGkgaW4gYmFzZSBhIHVuIGFyY2hpdmlvIgogCi0jOiBjb21tb24tY21kcy5oOjEyCisjOiBjb21tYW5kLWxpc3QuaDo2MAorbXNnaWQgIlByb3ZpZGUgY29udGVudCBvciB0eXBlIGFuZCBzaXplIGluZm9ybWF0aW9uIGZvciByZXBvc2l0b3J5IG9iamVjdHMiCittc2dzdHIgIiIKKyJGb3JuaXNjaSBpbmZvcm1hemlvbmkgc3VsIGNvbnRlbnV0byBvIHN1bCB0aXBvIGUgc3VsbGUgZGltZW5zaW9uaSBwZXIgZ2xpICIKKyJvZ2dldHRpIGRpIHVuIHJlcG9zaXRvcnkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjYxCittc2dpZCAiRGlzcGxheSBnaXRhdHRyaWJ1dGVzIGluZm9ybWF0aW9uIgorbXNnc3RyICJWaXN1YWxpenphIGxlIGluZm9ybWF6aW9uaSBzdWdsaSBhdHRyaWJ1dGkgR2l0IgorCisjOiBjb21tYW5kLWxpc3QuaDo2MgorbXNnaWQgIkRlYnVnIGdpdGlnbm9yZSAvIGV4Y2x1ZGUgZmlsZXMiCittc2dzdHIgIkVzZWd1aSBpbCBkZWJ1ZyBkZWkgZmlsZSBnaXRpZ25vcmUvZXNjbHVkaSBmaWxlIgorCisjOiBjb21tYW5kLWxpc3QuaDo2MworbXNnaWQgIlNob3cgY2Fub25pY2FsIG5hbWVzIGFuZCBlbWFpbCBhZGRyZXNzZXMgb2YgY29udGFjdHMiCittc2dzdHIgIlZpc3VhbGl6emEgaSBub21pIGNhbm9uaWNpIGUgZ2xpIGluZGlyaXp6aSBlLW1haWwgZGVpIGNvbnRhdHRpIgorCisjOiBjb21tYW5kLWxpc3QuaDo2NAorbXNnaWQgIlN3aXRjaCBicmFuY2hlcyBvciByZXN0b3JlIHdvcmtpbmcgdHJlZSBmaWxlcyIKK21zZ3N0ciAiIgorIlBhc3NhIGRhIHVuIGJyYW5jaCBhIHVuIGFsdHJvIG8gcmlwcmlzdGluYSBpIGZpbGUgbmVsbCdhbGJlcm8gZGkgbGF2b3JvIgorCisjOiBjb21tYW5kLWxpc3QuaDo2NQorbXNnaWQgIkNvcHkgZmlsZXMgZnJvbSB0aGUgaW5kZXggdG8gdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiQ29waWEgZGVpIGZpbGUgZGFsbCdpbmRpY2UgYWxsJ2FsYmVybyBkaSBsYXZvcm8iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjY2Cittc2dpZCAiRW5zdXJlcyB0aGF0IGEgcmVmZXJlbmNlIG5hbWUgaXMgd2VsbCBmb3JtZWQiCittc2dzdHIgIlNpIGFzc2ljdXJhIGNoZSB1biBub21lIHJpZmVyaW1lbnRvIHNpYSBiZW4gZm9ybWF0byIKKworIzogY29tbWFuZC1saXN0Lmg6NjcKK21zZ2lkICJGaW5kIGNvbW1pdHMgeWV0IHRvIGJlIGFwcGxpZWQgdG8gdXBzdHJlYW0iCittc2dzdHIgIlRyb3ZhIGNvbW1pdCBjaGUgZGV2b25vIGVzc2VyZSBhbmNvcmEgYXBwbGljYXRpIHVwc3RyZWFtIgorCisjOiBjb21tYW5kLWxpc3QuaDo2OAorbXNnaWQgIkFwcGx5IHRoZSBjaGFuZ2VzIGludHJvZHVjZWQgYnkgc29tZSBleGlzdGluZyBjb21taXRzIgorbXNnc3RyICJBcHBsaWNhIGxlIG1vZGlmaWNoZSBpbnRyb2RvdHRlIGRhIGFsY3VuaSBjb21taXQgZXNpc3RlbnRpIgorCisjOiBjb21tYW5kLWxpc3QuaDo2OQorbXNnaWQgIkdyYXBoaWNhbCBhbHRlcm5hdGl2ZSB0byBnaXQtY29tbWl0IgorbXNnc3RyICJBbHRlcm5hdGl2YSBncmFmaWNhIGEgZ2l0LWNvbW1pdCIKKworIzogY29tbWFuZC1saXN0Lmg6NzAKK21zZ2lkICJSZW1vdmUgdW50cmFja2VkIGZpbGVzIGZyb20gdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiUmltdW92ZSBpIGZpbGUgbm9uIHRyYWNjaWF0aSBkYWxsJ2FsYmVybyBkaSBsYXZvcm8iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjcxCiBtc2dpZCAiQ2xvbmUgYSByZXBvc2l0b3J5IGludG8gYSBuZXcgZGlyZWN0b3J5IgogbXNnc3RyICJDbG9uYSB1biByZXBvc2l0b3J5IGluIHVuYSBudW92YSBkaXJlY3RvcnkiCiAKLSM6IGNvbW1vbi1jbWRzLmg6MTMKLW1zZ2lkICJSZWNvcmQgY2hhbmdlcyB0byB0aGUgcmVwb3NpdG9yeSIKLW1zZ3N0ciAiUmVnaXN0cmEgbW9kaWZpY2hlIG5lbCByZXBvc2l0b3J5IgorIzogY29tbWFuZC1saXN0Lmg6NzIKK21zZ2lkICJEaXNwbGF5IGRhdGEgaW4gY29sdW1ucyIKK21zZ3N0ciAiVmlzdWFsaXp6YSBpIGRhdGkgaW4gY29sb25uZSIKIAotIzogY29tbW9uLWNtZHMuaDoxNAorIzogY29tbWFuZC1saXN0Lmg6NzMKK21zZ2lkICJSZWNvcmQgY2hhbmdlcyB0byB0aGUgcmVwb3NpdG9yeSIKK21zZ3N0ciAiUmVnaXN0cmEgbW9kaWZpY2hlIGFsIHJlcG9zaXRvcnkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjc0Cittc2dpZCAiV3JpdGUgYW5kIHZlcmlmeSBHaXQgY29tbWl0LWdyYXBoIGZpbGVzIgorbXNnc3RyICJTY3JpdmUgZSB2ZXJpZmljYSBpIGZpbGUgZ3JhZm8gZGVpIGNvbW1pdCBkaSBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjc1Cittc2dpZCAiQ3JlYXRlIGEgbmV3IGNvbW1pdCBvYmplY3QiCittc2dzdHIgIkNyZWEgdW4gbnVvdm8gb2dnZXR0byBjb21taXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjc2Cittc2dpZCAiR2V0IGFuZCBzZXQgcmVwb3NpdG9yeSBvciBnbG9iYWwgb3B0aW9ucyIKK21zZ3N0ciAiT3R0aWVuZSBlIGltcG9zdGEgbGUgb3B6aW9uaSBhIGxpdmVsbG8gZGkgcmVwb3NpdG9yeSBvIGdsb2JhbGkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjc3Cittc2dpZCAiQ291bnQgdW5wYWNrZWQgbnVtYmVyIG9mIG9iamVjdHMgYW5kIHRoZWlyIGRpc2sgY29uc3VtcHRpb24iCittc2dzdHIgIiIKKyJDb250YSBpbCBudW1lcm8gZGkgb2dnZXR0aSBub24gaW4gdW4gcGFjayBlIGxhIGxvcm8gb2NjdXBhemlvbmUgZGkgc3BhemlvIHN1ICIKKyJkaXNjbyIKKworIzogY29tbWFuZC1saXN0Lmg6NzgKK21zZ2lkICJSZXRyaWV2ZSBhbmQgc3RvcmUgdXNlciBjcmVkZW50aWFscyIKK21zZ3N0ciAiUmVjdXBlcmEgZSBzYWx2YSBjcmVkZW56aWFsaSB1dGVudGUiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjc5Cittc2dpZCAiSGVscGVyIHRvIHRlbXBvcmFyaWx5IHN0b3JlIHBhc3N3b3JkcyBpbiBtZW1vcnkiCittc2dzdHIgIkhlbHBlciBwZXIgc2FsdmFyZSB0ZW1wb3JhbmVhbWVudGUgcGFzc3dvcmQgaW4gbWVtb3JpYSIKKworIzogY29tbWFuZC1saXN0Lmg6ODAKK21zZ2lkICJIZWxwZXIgdG8gc3RvcmUgY3JlZGVudGlhbHMgb24gZGlzayIKK21zZ3N0ciAiSGVscGVyIHBlciBzYWx2YXJlIGNyZWRlbnppYWxpIHN1IGRpc2NvIgorCisjOiBjb21tYW5kLWxpc3QuaDo4MQorbXNnaWQgIkV4cG9ydCBhIHNpbmdsZSBjb21taXQgdG8gYSBDVlMgY2hlY2tvdXQiCittc2dzdHIgIkVzcG9ydGEgdW4gc2luZ29sbyBjb21taXQgaW4gdW4gY2hlY2tvdXQgQ1ZTIgorCisjOiBjb21tYW5kLWxpc3QuaDo4MgorbXNnaWQgIlNhbHZhZ2UgeW91ciBkYXRhIG91dCBvZiBhbm90aGVyIFNDTSBwZW9wbGUgbG92ZSB0byBoYXRlIgorbXNnc3RyICIiCisiUmVjdXBlcmEgaSBkYXRpIGRhIHVuIHNpc3RlbWEgZGkgY29udHJvbGxvIGRpIHZlcnNpb25lIGNoZSBsZSBwZXJzb25lICIKKyJhZG9yYW5vIG9kaWFyZSIKKworIzogY29tbWFuZC1saXN0Lmg6ODMKK21zZ2lkICJBIENWUyBzZXJ2ZXIgZW11bGF0b3IgZm9yIEdpdCIKK21zZ3N0ciAiVW4gZW11bGF0b3JlIGRpIHNlcnZlciBDVlMgcGVyIEdpdCIKKworIzogY29tbWFuZC1saXN0Lmg6ODQKK21zZ2lkICJBIHJlYWxseSBzaW1wbGUgc2VydmVyIGZvciBHaXQgcmVwb3NpdG9yaWVzIgorbXNnc3RyICJVbiBzZXJ2ZXIgdmVyYW1lbnRlIHNlbXBsaWNlIHBlciByZXBvc2l0b3J5IEdpdCIKKworIzogY29tbWFuZC1saXN0Lmg6ODUKK21zZ2lkICJHaXZlIGFuIG9iamVjdCBhIGh1bWFuIHJlYWRhYmxlIG5hbWUgYmFzZWQgb24gYW4gYXZhaWxhYmxlIHJlZiIKK21zZ3N0ciAiIgorIkF0dHJpYnVpc2NlIHVuIG5vbWUgbGVnZ2liaWxlIGEgdW4gb2dnZXR0byBiYXNhbmRvc2kgc3UgdW4gcmlmZXJpbWVudG8gIgorImRpc3BvbmliaWxlIgorCisjOiBjb21tYW5kLWxpc3QuaDo4NgogbXNnaWQgIlNob3cgY2hhbmdlcyBiZXR3ZWVuIGNvbW1pdHMsIGNvbW1pdCBhbmQgd29ya2luZyB0cmVlLCBldGMiCiBtc2dzdHIgIiIKKyJWaXN1YWxpenphIGxlIG1vZGlmaWNoZSBmcmEgY29tbWl0LCB1biBjb21taXQgZSBsJ2FsYmVybyBkaSBsYXZvcm8sIGVjYy4iCiAKLSM6IGNvbW1vbi1jbWRzLmg6MTUKKyM6IGNvbW1hbmQtbGlzdC5oOjg3Cittc2dpZCAiQ29tcGFyZXMgZmlsZXMgaW4gdGhlIHdvcmtpbmcgdHJlZSBhbmQgdGhlIGluZGV4IgorbXNnc3RyICJDb25mcm9udGEgZmlsZSBuZWxsJ2FsYmVybyBkaSBsYXZvcm8gZSBuZWxsJ2luZGljZSIKKworIzogY29tbWFuZC1saXN0Lmg6ODgKK21zZ2lkICJDb21wYXJlIGEgdHJlZSB0byB0aGUgd29ya2luZyB0cmVlIG9yIGluZGV4IgorbXNnc3RyICJDb25mcm9udGEgdW4gYWxiZXJvIGNvbiBsJ2FsYmVybyBkaSBsYXZvcm8gbyBsJ2luZGljZSIKKworIzogY29tbWFuZC1saXN0Lmg6ODkKK21zZ2lkICJDb21wYXJlcyB0aGUgY29udGVudCBhbmQgbW9kZSBvZiBibG9icyBmb3VuZCB2aWEgdHdvIHRyZWUgb2JqZWN0cyIKK21zZ3N0ciAiIgorIkNvbmZyb250YSBpbCBjb250ZW51dG8gZSBpIG1vZGUgZGVpIGJsb2IgdHJvdmF0aSB0cmFtaXRlIGR1ZSBvZ2dldHRpIGFsYmVybyIKKworIzogY29tbWFuZC1saXN0Lmg6OTAKK21zZ2lkICJTaG93IGNoYW5nZXMgdXNpbmcgY29tbW9uIGRpZmYgdG9vbHMiCittc2dzdHIgIiIKKyJWaXN1YWxpenphIGxlIG1vZGlmaWNoZSB1c2FuZG8gdG9vbCBjb211bmkgcGVyIGxhIHZpc3VhbGl6emF6aW9uZSBkZWkgZGlmZiIKKworIzogY29tbWFuZC1saXN0Lmg6OTEKK21zZ2lkICJHaXQgZGF0YSBleHBvcnRlciIKK21zZ3N0ciAiRXNwb3J0YXRvcmUgZGkgZGF0aSBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjkyCittc2dpZCAiQmFja2VuZCBmb3IgZmFzdCBHaXQgZGF0YSBpbXBvcnRlcnMiCittc2dzdHIgIkJhY2tlbmQgcGVyIGltcG9ydGF0b3JpIGRpIGRhdGkgR2l0IHZlbG9jaSIKKworIzogY29tbWFuZC1saXN0Lmg6OTMKIG1zZ2lkICJEb3dubG9hZCBvYmplY3RzIGFuZCByZWZzIGZyb20gYW5vdGhlciByZXBvc2l0b3J5IgotbXNnc3RyICJTY2FyaWNhIG9nZ2V0dGkgZSByZWYgZGEgdW4gYWx0cm8gcmVwb3NpdG9yeSIKK21zZ3N0ciAiU2NhcmljYSBvZ2dldHRpIGUgcmlmZXJpbWVudGkgZGEgdW4gYWx0cm8gcmVwb3NpdG9yeSIKIAotIzogY29tbW9uLWNtZHMuaDoxNgorIzogY29tbWFuZC1saXN0Lmg6OTQKK21zZ2lkICJSZWNlaXZlIG1pc3Npbmcgb2JqZWN0cyBmcm9tIGFub3RoZXIgcmVwb3NpdG9yeSIKK21zZ3N0ciAiUmljZXZlIG9nZ2V0dGkgbWFuY2FudGkgZGEgdW4gYWx0cm8gcmVwb3NpdG9yeSIKKworIzogY29tbWFuZC1saXN0Lmg6OTUKK21zZ2lkICJSZXdyaXRlIGJyYW5jaGVzIgorbXNnc3RyICJSaXNjcml2ZSBicmFuY2giCisKKyM6IGNvbW1hbmQtbGlzdC5oOjk2Cittc2dpZCAiUHJvZHVjZSBhIG1lcmdlIGNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICJHZW5lcmEgdW4gbWVzc2FnZ2lvIGRpIGNvbW1pdCBkZWwgbWVyZ2UiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjk3Cittc2dpZCAiT3V0cHV0IGluZm9ybWF0aW9uIG9uIGVhY2ggcmVmIgorbXNnc3RyICJWaXN1YWxpenphIGluIG91dHB1dCBsZSBpbmZvcm1hemlvbmkgc3Ugb2duaSByaWZlcmltZW50byIKKworIzogY29tbWFuZC1saXN0Lmg6OTgKK21zZ2lkICJQcmVwYXJlIHBhdGNoZXMgZm9yIGUtbWFpbCBzdWJtaXNzaW9uIgorbXNnc3RyICJQcmVwYXJhIHBhdGNoIHBlciBpbCBsb3JvIGludmlvIHRyYW1pdGUgZS1tYWlsIgorCisjOiBjb21tYW5kLWxpc3QuaDo5OQorbXNnaWQgIlZlcmlmaWVzIHRoZSBjb25uZWN0aXZpdHkgYW5kIHZhbGlkaXR5IG9mIHRoZSBvYmplY3RzIGluIHRoZSBkYXRhYmFzZSIKK21zZ3N0ciAiVmVyaWZpY2EgbGEgY29ubmVzc2lvbmUgZSBsYSB2YWxpZGl0w6AgZGVnbGkgb2dnZXR0aSBuZWwgZGF0YWJhc2UiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEwMAorbXNnaWQgIkNsZWFudXAgdW5uZWNlc3NhcnkgZmlsZXMgYW5kIG9wdGltaXplIHRoZSBsb2NhbCByZXBvc2l0b3J5IgorbXNnc3RyICJSaXB1bGlzY2UgZmlsZSBub24gbmVjZXNzYXJpIGUgb3R0aW1penphIGlsIHJlcG9zaXRvcnkgbG9jYWxlIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMDEKK21zZ2lkICJFeHRyYWN0IGNvbW1pdCBJRCBmcm9tIGFuIGFyY2hpdmUgY3JlYXRlZCB1c2luZyBnaXQtYXJjaGl2ZSIKK21zZ3N0ciAiRXN0cmFlIGwnSUQgZGVsIGNvbW1pdCBkYSB1biBhcmNoaXZpbyBjcmVhdG8gdXNhbmRvIGdpdC1hcmNoaXZlIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMDIKIG1zZ2lkICJQcmludCBsaW5lcyBtYXRjaGluZyBhIHBhdHRlcm4iCi1tc2dzdHIgIlN0YW1wYSBsZSByaWdoZSBjb3JyaXNwb25kZW50aSBhZCB1biBtb2RlbGxvIgorbXNnc3RyICJTdGFtcGEgbGUgcmlnaGUgY29ycmlzcG9uZGVudGkgYSB1bidlc3ByZXNzaW9uZSByZWdvbGFyZSIKIAotIzogY29tbW9uLWNtZHMuaDoxNwotbXNnaWQgIkNyZWF0ZSBhbiBlbXB0eSBnaXQgcmVwb3NpdG9yeSBvciByZWluaXRpYWxpemUgYW4gZXhpc3Rpbmcgb25lIgotbXNnc3RyICJDcmVhIHVuIHJlcG9zaXRvcnkgZ2l0IHZ1b3RvIG8gcmVpbml6aWFsaXp6YSB1bm8gZXNpc3RlbnRlIgorIzogY29tbWFuZC1saXN0Lmg6MTAzCittc2dpZCAiQSBwb3J0YWJsZSBncmFwaGljYWwgaW50ZXJmYWNlIHRvIEdpdCIKK21zZ3N0ciAiVW4naW50ZXJmYWNjaWEgZ3JhZmljYSBwb3J0YWJpbGUgcGVyIEdpdCIKIAotIzogY29tbW9uLWNtZHMuaDoxOAorIzogY29tbWFuZC1saXN0Lmg6MTA0Cittc2dpZCAiQ29tcHV0ZSBvYmplY3QgSUQgYW5kIG9wdGlvbmFsbHkgY3JlYXRlcyBhIGJsb2IgZnJvbSBhIGZpbGUiCittc2dzdHIgIkNhbGNvbGEgbCdJRCBvZ2dldHRvIGUgY3JlYSBmYWNvbHRhdGl2YW1lbnRlIHVuIGJsb2IgZGEgdW4gZmlsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTA1Cittc2dpZCAiRGlzcGxheSBoZWxwIGluZm9ybWF0aW9uIGFib3V0IEdpdCIKK21zZ3N0ciAiVmlzdWFsaXp6YSB1bmEgZ3VpZGEgYSBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEwNgorbXNnaWQgIlNlcnZlciBzaWRlIGltcGxlbWVudGF0aW9uIG9mIEdpdCBvdmVyIEhUVFAiCittc2dzdHIgIkltcGxlbWVudGF6aW9uZSBsYXRvIHNlcnZlciBkaSBHaXQgc3UgSFRUUCIKKworIzogY29tbWFuZC1saXN0Lmg6MTA3Cittc2dpZCAiRG93bmxvYWQgZnJvbSBhIHJlbW90ZSBHaXQgcmVwb3NpdG9yeSB2aWEgSFRUUCIKK21zZ3N0ciAiU2NhcmljYSBkYXRpIGRhIHVuIHJlcG9zaXRvcnkgR2l0IHJlbW90byB0cmFtaXRlIEhUVFAiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEwOAorbXNnaWQgIlB1c2ggb2JqZWN0cyBvdmVyIEhUVFAvREFWIHRvIGFub3RoZXIgcmVwb3NpdG9yeSIKK21zZ3N0ciAiRXNlZ3VlIGlsIHB1c2ggZGkgb2dnZXR0aSBzdSB1biBhbHRybyByZXBvc2l0b3J5IHRyYW1pdGUgSFRUUC9EQVYiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEwOQorbXNnaWQgIlNlbmQgYSBjb2xsZWN0aW9uIG9mIHBhdGNoZXMgZnJvbSBzdGRpbiB0byBhbiBJTUFQIGZvbGRlciIKK21zZ3N0ciAiSW52aWEgdW4gaW5zaWVtZSBkaSBwYXRjaCBkYWxsbyBzdGFuZGFyZCBpbnB1dCBhIHVuYSBjYXJ0ZWxsYSBJTUFQIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTAKK21zZ2lkICJCdWlsZCBwYWNrIGluZGV4IGZpbGUgZm9yIGFuIGV4aXN0aW5nIHBhY2tlZCBhcmNoaXZlIgorbXNnc3RyICJHZW5lcmEgaWwgZmlsZSBpbmRpY2UgcGFjayBwZXIgdW4gYXJjaGl2aW8gZXNpc3RlbnRlIHNvdHRvcG9zdG8gYSBwYWNrIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTEKK21zZ2lkICJDcmVhdGUgYW4gZW1wdHkgR2l0IHJlcG9zaXRvcnkgb3IgcmVpbml0aWFsaXplIGFuIGV4aXN0aW5nIG9uZSIKK21zZ3N0ciAiQ3JlYSB1biByZXBvc2l0b3J5IEdpdCB2dW90byBvIG5lIHJlaW5pemlhbGl6emEgdW5vIGVzaXN0ZW50ZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTEyCittc2dpZCAiSW5zdGFudGx5IGJyb3dzZSB5b3VyIHdvcmtpbmcgcmVwb3NpdG9yeSBpbiBnaXR3ZWIiCittc2dzdHIgIlNmb2dsaWEgaXN0YW50YW5lYW1lbnRlIGlsIHR1byByZXBvc2l0b3J5IGRpIGxhdm9ybyBzdSBnaXR3ZWIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExMworbXNnaWQgIkFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKK21zZ3N0ciAiQWdnaXVuZ2UgbyBhbmFsaXp6YSBpbmZvcm1hemlvbmkgc3RydXR0dXJhdGUgbmVpIG1lc3NhZ2dpIGRpIGNvbW1pdCIKKworIzogY29tbWFuZC1saXN0Lmg6MTE0Cittc2dpZCAiVGhlIEdpdCByZXBvc2l0b3J5IGJyb3dzZXIiCittc2dzdHIgIklsIGJyb3dzZXIgcGVyIGkgcmVwb3NpdG9yeSBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExNQogbXNnaWQgIlNob3cgY29tbWl0IGxvZ3MiCi1tc2dzdHIgIk1vc3RyYSBsb2cgZGVsIGNvbW1pdCIKK21zZ3N0ciAiVmlzdWFsaXp6YSBpIGxvZyBkZWkgY29tbWl0IgogCi0jOiBjb21tb24tY21kcy5oOjE5CisjOiBjb21tYW5kLWxpc3QuaDoxMTYKK21zZ2lkICJTaG93IGluZm9ybWF0aW9uIGFib3V0IGZpbGVzIGluIHRoZSBpbmRleCBhbmQgdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiVmlzdWFsaXp6YSBpbmZvcm1hemlvbmkgc3VpIGZpbGUgbmVsbCdpbmRpY2UgZSBuZWxsJ2FsYmVybyBkaSBsYXZvcm8iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExNworbXNnaWQgIkxpc3QgcmVmZXJlbmNlcyBpbiBhIHJlbW90ZSByZXBvc2l0b3J5IgorbXNnc3RyICJFbGVuY2EgaSByaWZlcmltZW50aSBpbiB1biByZXBvc2l0b3J5IHJlbW90byIKKworIzogY29tbWFuZC1saXN0Lmg6MTE4Cittc2dpZCAiTGlzdCB0aGUgY29udGVudHMgb2YgYSB0cmVlIG9iamVjdCIKK21zZ3N0ciAiRWxlbmNhIGkgY29udGVudXRpIGRpIHVuIG9nZ2V0dG8gYWxiZXJvIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTkKK21zZ2lkICJFeHRyYWN0cyBwYXRjaCBhbmQgYXV0aG9yc2hpcCBmcm9tIGEgc2luZ2xlIGUtbWFpbCBtZXNzYWdlIgorbXNnc3RyICIiCisiRXN0cmFlIGxhIHBhdGNoIGUgbGUgaW5mb3JtYXppb25pIHN1bGwnYXV0b3JlIGRhIHVuIHNpbmdvbG8gbWVzc2FnZ2lvIGUtbWFpbCIKKworIzogY29tbWFuZC1saXN0Lmg6MTIwCittc2dpZCAiU2ltcGxlIFVOSVggbWJveCBzcGxpdHRlciBwcm9ncmFtIgorbXNnc3RyICJVbiBzZW1wbGljZSBwcm9ncmFtbWEgcGVyIHN1ZGRpdmlkZXJlIGkgZmlsZSBVTklYIG1ib3giCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEyMQogbXNnaWQgIkpvaW4gdHdvIG9yIG1vcmUgZGV2ZWxvcG1lbnQgaGlzdG9yaWVzIHRvZ2V0aGVyIgogbXNnc3RyICJVbmlzY2UgZHVlIG8gcGnDuSBjcm9ub2xvZ2llIGRpIHN2aWx1cHBvIgogCi0jOiBjb21tb24tY21kcy5oOjIwCi1tc2dpZCAiTW92ZSBvciByZW5hbWUgYSBmaWxlLCBhIGRpcmVjdG9yeSwgb3IgYSBzeW1saW5rIgotbXNnc3RyICJTcG9zdGEgbyByaW5vbWluYSB1biBmaWxlLCB1bmEgZGlyZWN0b3J5IG8gdW4gbGluayBzaW1ib2xpY28iCisjOiBjb21tYW5kLWxpc3QuaDoxMjIKK21zZ2lkICJGaW5kIGFzIGdvb2QgY29tbW9uIGFuY2VzdG9ycyBhcyBwb3NzaWJsZSBmb3IgYSBtZXJnZSIKK21zZ3N0ciAiVHJvdmEgaWwgbWFnZ2lvciBudW1lcm8gcG9zc2liaWxlIGRpIGFudGVuYXRpIGNvbXVuaSBwZXIgdW4gbWVyZ2UiCiAKLSM6IGNvbW1vbi1jbWRzLmg6MjEKLW1zZ2lkICJGZXRjaCBmcm9tIGFuZCBtZXJnZSB3aXRoIGFub3RoZXIgcmVwb3NpdG9yeSBvciBhIGxvY2FsIGJyYW5jaCIKLW1zZ3N0ciAiQ29tYmluYSBmZXRjaGUgKyBtZXJnZSBkYSB1biBhbHRybyByZXBvc2l0b3J5IG8gdW4gYnJhbmNoIGxvY2FsZSIKKyM6IGNvbW1hbmQtbGlzdC5oOjEyMworbXNnaWQgIlJ1biBhIHRocmVlLXdheSBmaWxlIG1lcmdlIgorbXNnc3RyICJFc2VndWUgdW4gbWVyZ2UgYSB0cmUgdmllIHN1IGZpbGUiCiAKLSM6IGNvbW1vbi1jbWRzLmg6MjIKLW1zZ2lkICJVcGRhdGUgcmVtb3RlIHJlZnMgYWxvbmcgd2l0aCBhc3NvY2lhdGVkIG9iamVjdHMiCi1tc2dzdHIgIkFnZ2lvcm5hIGkgcmVmIHJlbW90aSBpbnNpZW1lIGFnbGkgb2dnZXR0aSBhc3NvY2lhdGkiCisjOiBjb21tYW5kLWxpc3QuaDoxMjQKK21zZ2lkICJSdW4gYSBtZXJnZSBmb3IgZmlsZXMgbmVlZGluZyBtZXJnaW5nIgorbXNnc3RyICJFc2VndWUgdW4gbWVyZ2UgcGVyIGkgZmlsZSBjaGUgbG8gcmljaGllZG9ubyIKIAotIzogY29tbW9uLWNtZHMuaDoyMwotbXNnaWQgIkZvcndhcmQtcG9ydCBsb2NhbCBjb21taXRzIHRvIHRoZSB1cGRhdGVkIHVwc3RyZWFtIGhlYWQiCisjOiBjb21tYW5kLWxpc3QuaDoxMjUKK21zZ2lkICJUaGUgc3RhbmRhcmQgaGVscGVyIHByb2dyYW0gdG8gdXNlIHdpdGggZ2l0LW1lcmdlLWluZGV4IgorbXNnc3RyICJJbCBwcm9ncmFtbWEgaGVscGVyIHN0YW5kYXJkIGRhIHVzYXJlIGNvbiBnaXQtbWVyZ2UtaW5kZXgiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEyNgorbXNnaWQgIlJ1biBtZXJnZSBjb25mbGljdCByZXNvbHV0aW9uIHRvb2xzIHRvIHJlc29sdmUgbWVyZ2UgY29uZmxpY3RzIgogbXNnc3RyICIiCisiRXNlZ3VlIGdsaSBzdHJ1bWVudGkgZGkgcmlzb2x1emlvbmUgY29uZmxpdHRpIGRpIG1lcmdlIHBlciByaXNvbHZlcmUgaSAiCisiY29uZmxpdHRpIGRpIG1lcmdlIgogCi0jOiBjb21tb24tY21kcy5oOjI0CisjOiBjb21tYW5kLWxpc3QuaDoxMjcKK21zZ2lkICJTaG93IHRocmVlLXdheSBtZXJnZSB3aXRob3V0IHRvdWNoaW5nIGluZGV4IgorbXNnc3RyICJWaXN1YWxpenphIHVuIG1lcmdlIGEgdHJlIHZpZSBzZW56YSBtb2RpZmljYXJlIGwnaW5kaWNlIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMjgKK21zZ2lkICJXcml0ZSBhbmQgdmVyaWZ5IG11bHRpLXBhY2staW5kZXhlcyIKK21zZ3N0ciAiU2NyaXZlIGUgdmVyaWZpY2EgaW5kaWNpIG11bHRpLXBhY2siCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEyOQorbXNnaWQgIkNyZWF0ZXMgYSB0YWcgb2JqZWN0IgorbXNnc3RyICJDcmVhIHVuIG9nZ2V0dG8gdGFnIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzAKK21zZ2lkICJCdWlsZCBhIHRyZWUtb2JqZWN0IGZyb20gbHMtdHJlZSBmb3JtYXR0ZWQgdGV4dCIKK21zZ3N0ciAiR2VuZXJhIHVuIG9nZ2V0dG8gYWxiZXJvIGRhIHRlc3RvIGluIGZvcm1hdG8gbHMtdHJlZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTMxCittc2dpZCAiTW92ZSBvciByZW5hbWUgYSBmaWxlLCBhIGRpcmVjdG9yeSwgb3IgYSBzeW1saW5rIgorbXNnc3RyICJTcG9zdGEgbyByaW5vbWluYSB1biBmaWxlLCB1bmEgZGlyZWN0b3J5IG8gdW4gY29sbGVnYW1lbnRvIHNpbWJvbGljbyIKKworIzogY29tbWFuZC1saXN0Lmg6MTMyCittc2dpZCAiRmluZCBzeW1ib2xpYyBuYW1lcyBmb3IgZ2l2ZW4gcmV2cyIKK21zZ3N0ciAiVHJvdmEgaSBub21pIHNpbWJvbGljaSBwZXIgbGUgcmV2aXNpb25pIGRhdGUiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzMworbXNnaWQgIkFkZCBvciBpbnNwZWN0IG9iamVjdCBub3RlcyIKK21zZ3N0ciAiQWdnaXVuZ2UgbyBlc2FtaW5hIGxlIG5vdGUgYWdsaSBvZ2dldHRpIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzQKK21zZ2lkICJJbXBvcnQgZnJvbSBhbmQgc3VibWl0IHRvIFBlcmZvcmNlIHJlcG9zaXRvcmllcyIKK21zZ3N0ciAiSW1wb3J0YSBkYXRpIGRhLCBvIGludmlhIGRhdGkgYSwgcmVwb3NpdG9yeSBQZXJmb3JjZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTM1Cittc2dpZCAiQ3JlYXRlIGEgcGFja2VkIGFyY2hpdmUgb2Ygb2JqZWN0cyIKK21zZ3N0ciAiQ3JlYSB1biBhcmNoaXZpbyBkaSBvZ2dldHRpIHNvdHRvcG9zdG8gYSBwYWNrIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzYKK21zZ2lkICJGaW5kIHJlZHVuZGFudCBwYWNrIGZpbGVzIgorbXNnc3RyICJUcm92YSBmaWxlIHBhY2sgcmlkb25kYW50aSIKKworIzogY29tbWFuZC1saXN0Lmg6MTM3Cittc2dpZCAiUGFjayBoZWFkcyBhbmQgdGFncyBmb3IgZWZmaWNpZW50IHJlcG9zaXRvcnkgYWNjZXNzIgorbXNnc3RyICJFc2VndWUgaWwgcGFjayBkaSBoZWFkIGUgdGFnIHBlciB1biBhY2Nlc3NvIGVmZmljaWVudGUgYWwgcmVwb3NpdG9yeSIKKworIzogY29tbWFuZC1saXN0Lmg6MTM4Cittc2dpZCAiUm91dGluZXMgdG8gaGVscCBwYXJzaW5nIHJlbW90ZSByZXBvc2l0b3J5IGFjY2VzcyBwYXJhbWV0ZXJzIgorbXNnc3RyICIiCisiUm91dGluZSBjaGUgYWl1dGFubyBhZCBhbmFsaXp6YXJlIGkgcGFyYW1ldHJpIGRpIGFjY2Vzc28gYWkgcmVwb3NpdG9yeSByZW1vdGkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzOQorbXNnaWQgIkNvbXB1dGUgdW5pcXVlIElEIGZvciBhIHBhdGNoIgorbXNnc3RyICJDYWxjb2xhIGwnSUQgdW5pdm9jbyBwZXIgdW5hIHBhdGNoIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDAKK21zZ2lkICJQcnVuZSBhbGwgdW5yZWFjaGFibGUgb2JqZWN0cyBmcm9tIHRoZSBvYmplY3QgZGF0YWJhc2UiCittc2dzdHIgIkVsaW1pbmEgdHV0dGkgZ2xpIG9nZ2V0dGkgbm9uIHJhZ2dpdW5naWJpbGkgZGFsIGRhdGFiYXNlIG9nZ2V0dGkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE0MQorbXNnaWQgIlJlbW92ZSBleHRyYSBvYmplY3RzIHRoYXQgYXJlIGFscmVhZHkgaW4gcGFjayBmaWxlcyIKK21zZ3N0ciAiUmltdW92ZSBnbGkgb2dnZXR0aSBhZ2dpdW50aXZpIGdpw6AgcHJlc2VudGkgbmVpIGZpbGUgcGFjayIKKworIzogY29tbWFuZC1saXN0Lmg6MTQyCittc2dpZCAiRmV0Y2ggZnJvbSBhbmQgaW50ZWdyYXRlIHdpdGggYW5vdGhlciByZXBvc2l0b3J5IG9yIGEgbG9jYWwgYnJhbmNoIgorbXNnc3RyICIiCisiRXNlZ3VlIGlsIGZldGNoIGUgbCdpbnRlZ3JhemlvbmUgY29uIHVuIGFsdHJvIHJlcG9zaXRvcnkgbyB1biBicmFuY2ggbG9jYWxlIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDMKK21zZ2lkICJVcGRhdGUgcmVtb3RlIHJlZnMgYWxvbmcgd2l0aCBhc3NvY2lhdGVkIG9iamVjdHMiCittc2dzdHIgIkFnZ2lvcm5hIGkgcmlmZXJpbWVudGkgcmVtb3RpIGluc2llbWUgYWdsaSBvZ2dldHRpIGFzc29jaWF0aSIKKworIzogY29tbWFuZC1saXN0Lmg6MTQ0Cittc2dpZCAiQXBwbGllcyBhIHF1aWx0IHBhdGNoc2V0IG9udG8gdGhlIGN1cnJlbnQgYnJhbmNoIgorbXNnc3RyICJBcHBsaWNhIHVuIGluc2llbWUgZGkgcGF0Y2ggcXVpbHQgc3VsIGJyYW5jaCBjb3JyZW50ZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTQ1Cittc2dpZCAiQ29tcGFyZSB0d28gY29tbWl0IHJhbmdlcyAoZS5nLiB0d28gdmVyc2lvbnMgb2YgYSBicmFuY2gpIgorbXNnc3RyICJDb21wYXJhIGR1ZSBpbnRlcnZhbGxpIGRpIGNvbW1pdCAoYWQgZXMuIGR1ZSB2ZXJzaW9uaSBkaSB1biBicmFuY2gpIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDYKK21zZ2lkICJSZWFkcyB0cmVlIGluZm9ybWF0aW9uIGludG8gdGhlIGluZGV4IgorbXNnc3RyICJMZWdnZSBsZSBpbmZvcm1hemlvbmkgc3UgdW4gYWxiZXJvIGRhbGwnaW5kaWNlIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDcKK21zZ2lkICJSZWFwcGx5IGNvbW1pdHMgb24gdG9wIG9mIGFub3RoZXIgYmFzZSB0aXAiCittc2dzdHIgIlJpYXBwbGljYSBkZWkgY29tbWl0IGRvcG8gbCd1bHRpbW8gY29tbWl0IGRpIHVuIGJyYW5jaCIKKworIzogY29tbWFuZC1saXN0Lmg6MTQ4Cittc2dpZCAiUmVjZWl2ZSB3aGF0IGlzIHB1c2hlZCBpbnRvIHRoZSByZXBvc2l0b3J5IgorbXNnc3RyICJSaWNldmUgcXVhbnRvIHNvdHRvcG9zdG8gYSBwdXNoIG5lbCByZXBvc2l0b3J5IgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDkKK21zZ2lkICJNYW5hZ2UgcmVmbG9nIGluZm9ybWF0aW9uIgorbXNnc3RyICJHZXN0aXNjZSBsZSBpbmZvcm1hemlvbmkgZGVsIHJlZ2lzdHJvIGRlaSByaWZlcmltZW50aSIKKworIzogY29tbWFuZC1saXN0Lmg6MTUwCittc2dpZCAiTWFuYWdlIHNldCBvZiB0cmFja2VkIHJlcG9zaXRvcmllcyIKK21zZ3N0ciAiR2VzdGlzY2UgbCdpbnNpZW1lIGRlaSByZXBvc2l0b3J5IHRyYWNjaWF0aSIKKworIzogY29tbWFuZC1saXN0Lmg6MTUxCittc2dpZCAiUGFjayB1bnBhY2tlZCBvYmplY3RzIGluIGEgcmVwb3NpdG9yeSIKK21zZ3N0ciAiRXNlZ3VlIGlsIHBhY2sgZGVnbGkgb2dnZXR0aSBub24gc290dG9wb3N0aSBhIHBhY2sgaW4gdW4gcmVwb3NpdG9yeSIKKworIzogY29tbWFuZC1saXN0Lmg6MTUyCittc2dpZCAiQ3JlYXRlLCBsaXN0LCBkZWxldGUgcmVmcyB0byByZXBsYWNlIG9iamVjdHMiCittc2dzdHIgIkNyZWEsIGVsZW5jYSwgZWxpbWluYSBpIHJpZmVyaW1lbnRpIHBlciBzb3N0aXR1aXJlIG9nZ2V0dGkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE1MworbXNnaWQgIkdlbmVyYXRlcyBhIHN1bW1hcnkgb2YgcGVuZGluZyBjaGFuZ2VzIgorbXNnc3RyICJHZW5lcmEgdW4gcmlhc3N1bnRvIGRlbGxlIG1vZGlmaWNoZSBpbiBzb3NwZXNvIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTQKK21zZ2lkICJSZXVzZSByZWNvcmRlZCByZXNvbHV0aW9uIG9mIGNvbmZsaWN0ZWQgbWVyZ2VzIgorbXNnc3RyICJSaXVzYSBsYSByaXNvbHV6aW9uZSByZWdpc3RyYXRhIGRlaSBtZXJnZSBjaGUgaGFubm8gZ2VuZXJhdG8gY29uZmxpdHRpIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTUKIG1zZ2lkICJSZXNldCBjdXJyZW50IEhFQUQgdG8gdGhlIHNwZWNpZmllZCBzdGF0ZSIKIG1zZ3N0ciAiUmlwcmlzdGluYSBsJ0hFQUQgY29ycmVudGUgYWxsbyBzdGF0byBzcGVjaWZpY2F0byIKIAotIzogY29tbW9uLWNtZHMuaDoyNQorIzogY29tbWFuZC1saXN0Lmg6MTU2Cittc2dpZCAiUmVzdG9yZSB3b3JraW5nIHRyZWUgZmlsZXMiCittc2dzdHIgIlJpcHJpc3RpbmEgaSBmaWxlIG5lbGwnYWxiZXJvIGRpIGxhdm9ybyIKKworIzogY29tbWFuZC1saXN0Lmg6MTU3Cittc2dpZCAiUmV2ZXJ0IHNvbWUgZXhpc3RpbmcgY29tbWl0cyIKK21zZ3N0ciAiRXNlZ3VlIGlsIHJldmVydCBkaSBhbGN1bmkgY29tbWl0IGVzaXN0ZW50aSIKKworIzogY29tbWFuZC1saXN0Lmg6MTU4Cittc2dpZCAiTGlzdHMgY29tbWl0IG9iamVjdHMgaW4gcmV2ZXJzZSBjaHJvbm9sb2dpY2FsIG9yZGVyIgorbXNnc3RyICJFbGVuY2EgZ2xpIG9nZ2V0dGkgY29tbWl0IGluIG9yZGluZSBjcm9ub2xvZ2ljbyBpbnZlcnNvIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTkKK21zZ2lkICJQaWNrIG91dCBhbmQgbWFzc2FnZSBwYXJhbWV0ZXJzIgorbXNnc3RyICJTY2VnbGllIGUgYWx0ZXJhIGkgcGFyYW1ldHJpIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjAKIG1zZ2lkICJSZW1vdmUgZmlsZXMgZnJvbSB0aGUgd29ya2luZyB0cmVlIGFuZCBmcm9tIHRoZSBpbmRleCIKLW1zZ3N0ciAiIgorbXNnc3RyICJSaW11b3ZlIGZpbGUgZGFsbCdhbGJlcm8gZGkgbGF2b3JvIGUgZGFsbCdpbmRpY2UiCiAKLSM6IGNvbW1vbi1jbWRzLmg6MjYKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MQorbXNnaWQgIlNlbmQgYSBjb2xsZWN0aW9uIG9mIHBhdGNoZXMgYXMgZW1haWxzIgorbXNnc3RyICJJbnZpYSB1biBpbnNpZW1lIGRpIHBhdGNoIGNvbWUgZS1tYWlsIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjIKK21zZ2lkICJQdXNoIG9iamVjdHMgb3ZlciBHaXQgcHJvdG9jb2wgdG8gYW5vdGhlciByZXBvc2l0b3J5IgorbXNnc3RyICIiCisiRXNlZ3VlIGlsIHB1c2ggZGkgb2dnZXR0aSBzdSB1biBhbHRybyByZXBvc2l0b3J5IHRyYW1pdGUgaWwgcHJvdG9jb2xsbyBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MworbXNnaWQgIlJlc3RyaWN0ZWQgbG9naW4gc2hlbGwgZm9yIEdpdC1vbmx5IFNTSCBhY2Nlc3MiCittc2dzdHIgIlNoZWxsIGRpIGxvZ2luIGxpbWl0YXRhIHBlciBjb25jZWRlcmUgYWNjZXNzbyBTU0ggc29sbyBwZXIgR2l0IgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjQKK21zZ2lkICJTdW1tYXJpemUgJ2dpdCBsb2cnIG91dHB1dCIKK21zZ3N0ciAiUmlhc3N1bWUgbCdvdXRwdXQgZGkgJ2dpdCBsb2cnIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjUKIG1zZ2lkICJTaG93IHZhcmlvdXMgdHlwZXMgb2Ygb2JqZWN0cyIKLW1zZ3N0ciAiTW9zdHJhIHZhcmkgdGlwaSBkaSBvZ2dldHRpIgorbXNnc3RyICJWaXN1YWxpenphIHZhcmkgdGlwaSBkaSBvZ2dldHRpIgogCi0jOiBjb21tb24tY21kcy5oOjI3Ci1tc2dpZCAiU2hvdyB0aGUgd29ya2luZyB0cmVlIHN0YXR1cyIKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NgorbXNnaWQgIlNob3cgYnJhbmNoZXMgYW5kIHRoZWlyIGNvbW1pdHMiCittc2dzdHIgIlZpc3VhbGl6emEgaSBicmFuY2ggZSBpIGxvcm8gY29tbWl0IgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjcKK21zZ2lkICJTaG93IHBhY2tlZCBhcmNoaXZlIGluZGV4IgorbXNnc3RyICJWaXN1YWxpenphIGwnaW5kaWNlIGRpIHVuIGFyY2hpdmlvIHNvdHRvcG9zdG8gYSBwYWNrIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjgKK21zZ2lkICJMaXN0IHJlZmVyZW5jZXMgaW4gYSBsb2NhbCByZXBvc2l0b3J5IgorbXNnc3RyICJFbGVuY2EgaSByaWZlcmltZW50aSBpbiB1biByZXBvc2l0b3J5IGxvY2FsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTY5Cittc2dpZCAiR2l0J3MgaTE4biBzZXR1cCBjb2RlIGZvciBzaGVsbCBzY3JpcHRzIgogbXNnc3RyICIiCisiQ29kaWNlIGRpIGluaXppYWxpenphemlvbmUgZGVsbCdpbnRlcm5hemlvbmFsaXp6YXppb25lIGRpIEdpdCBwZXIgZ2xpIHNjcmlwdCAiCisic2hlbGwiCiAKLSM6IGNvbW1vbi1jbWRzLmg6MjgKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MAorbXNnaWQgIkNvbW1vbiBHaXQgc2hlbGwgc2NyaXB0IHNldHVwIGNvZGUiCittc2dzdHIgIkNvZGljZSBjb211bmUgZGkgaW5pemlhbGl6emF6aW9uZSBkaSBHaXQgcGVyIGdsaSBzY3JpcHQgc2hlbGwiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MQorbXNnaWQgIkluaXRpYWxpemUgYW5kIG1vZGlmeSB0aGUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJJbml6aWFsaXp6YSBlIG1vZGlmaWNhIHNwYXJzZS1jaGVja291dCIKKworIzogY29tbWFuZC1saXN0Lmg6MTcyCittc2dpZCAiU3Rhc2ggdGhlIGNoYW5nZXMgaW4gYSBkaXJ0eSB3b3JraW5nIGRpcmVjdG9yeSBhd2F5IgorbXNnc3RyICJNZXR0ZSBkYSBwYXJ0ZSBsZSBtb2RpZmljaGUgaW4gdW5hIGRpcmVjdG9yeSBkaSBsYXZvcm8gc3BvcmNhIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzMKK21zZ2lkICJBZGQgZmlsZSBjb250ZW50cyB0byB0aGUgc3RhZ2luZyBhcmVhIgorbXNnc3RyICJBZ2dpdW5nZSBpIGNvbnRlbnV0aSBkZWkgZmlsZSBhbGwnYXJlYSBkaSBzdGFnaW5nIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzQKK21zZ2lkICJTaG93IHRoZSB3b3JraW5nIHRyZWUgc3RhdHVzIgorbXNnc3RyICJWaXN1YWxpenphIGxvIHN0YXRvIGRlbGwnYWxiZXJvIGRpIGxhdm9ybyIKKworIzogY29tbWFuZC1saXN0Lmg6MTc1Cittc2dpZCAiUmVtb3ZlIHVubmVjZXNzYXJ5IHdoaXRlc3BhY2UiCittc2dzdHIgIlJpbXVvdmUgc3BhemkgYmlhbmNoaSBub24gbmVjZXNzYXJpIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzYKK21zZ2lkICJJbml0aWFsaXplLCB1cGRhdGUgb3IgaW5zcGVjdCBzdWJtb2R1bGVzIgorbXNnc3RyICJJbml6aWFsaXp6YSwgYWdnaW9ybmEgbyBlc2FtaW5hIHNvdHRvbW9kdWxpIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzcKK21zZ2lkICJCaWRpcmVjdGlvbmFsIG9wZXJhdGlvbiBiZXR3ZWVuIGEgU3VidmVyc2lvbiByZXBvc2l0b3J5IGFuZCBHaXQiCittc2dzdHIgIk9wZXJhdGl2aXTDoCBiaWRpcmV6aW9uYWxlIHRyYSB1biByZXBvc2l0b3J5IFN1YnZlcnNpb24gZSBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3OAorbXNnaWQgIlN3aXRjaCBicmFuY2hlcyIKK21zZ3N0ciAiUGFzc2EgZGEgdW4gYnJhbmNoIGEgdW4gYWx0cm8iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3OQorbXNnaWQgIlJlYWQsIG1vZGlmeSBhbmQgZGVsZXRlIHN5bWJvbGljIHJlZnMiCittc2dzdHIgIkxlZ2dlLCBtb2RpZmljYSBlZCBlbGltaW5hIHJpZmVyaW1lbnRpIHNpbWJvbGljaSIKKworIzogY29tbWFuZC1saXN0Lmg6MTgwCiBtc2dpZCAiQ3JlYXRlLCBsaXN0LCBkZWxldGUgb3IgdmVyaWZ5IGEgdGFnIG9iamVjdCBzaWduZWQgd2l0aCBHUEciCiBtc2dzdHIgIkNyZWEsIGVsZW5jYSwgZWxpbWluYSBvIHZlcmlmaWNhIHVuIG9nZ2V0dG8gdGFnIGZpcm1hdG8gY29uIEdQRyIKIAotIzogZ2l0LWFtLnNoOjUwCi1tc2dpZCAiWW91IG5lZWQgdG8gc2V0IHlvdXIgY29tbWl0dGVyIGluZm8gZmlyc3QiCi1tc2dzdHIgIsOIIG5lY2Vzc2FyaW8gaW1wb3N0YXJlIGxlIGluZm9ybWF6aW9uaSBzdWwgY29tbWl0dGVyIgorIzogY29tbWFuZC1saXN0Lmg6MTgxCittc2dpZCAiQ3JlYXRlcyBhIHRlbXBvcmFyeSBmaWxlIHdpdGggYSBibG9iJ3MgY29udGVudHMiCittc2dzdHIgIkNyZWEgdW4gZmlsZSB0ZW1wb3JhbmVvIGNvbiBpIGNvbnRlbnV0aSBkaSB1biBibG9iIgogCi0jOiBnaXQtYW0uc2g6OTUKLW1zZ2lkICIiCi0iWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFEIHNpbmNlIHRoZSBsYXN0ICdhbScgZmFpbHVyZS5cbiIKLSJOb3QgcmV3aW5kaW5nIHRvIE9SSUdfSEVBRCIKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MgorbXNnaWQgIlVucGFjayBvYmplY3RzIGZyb20gYSBwYWNrZWQgYXJjaGl2ZSIKK21zZ3N0ciAiRGVjb21wcmltZSBnbGkgb2dnZXR0aSBkYSB1biBhcmNoaXZpbyBzb3R0b3Bvc3RvIGEgcGFjayIKKworIzogY29tbWFuZC1saXN0Lmg6MTgzCittc2dpZCAiUmVnaXN0ZXIgZmlsZSBjb250ZW50cyBpbiB0aGUgd29ya2luZyB0cmVlIHRvIHRoZSBpbmRleCIKK21zZ3N0ciAiUmVnaXN0cmEgaSBjb250ZW51dGkgZGVpIGZpbGUgZGVsbCdhbGJlcm8gZGkgbGF2b3JvIG5lbGwnaW5kaWNlIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODQKK21zZ2lkICJVcGRhdGUgdGhlIG9iamVjdCBuYW1lIHN0b3JlZCBpbiBhIHJlZiBzYWZlbHkiCittc2dzdHIgIkFnZ2lvcm5hIGluIG1vZG8gc2ljdXJvIGlsIG5vbWUgb2dnZXR0byBzYWx2YXRvIGluIHVuIHJpZmVyaW1lbnRvIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODUKK21zZ2lkICJVcGRhdGUgYXV4aWxpYXJ5IGluZm8gZmlsZSB0byBoZWxwIGR1bWIgc2VydmVycyIKK21zZ3N0ciAiQWdnaW9ybmEgaWwgZmlsZSBpbmZvcm1hemlvbmkgYWdnaXVudGl2ZSBwZXIgYWl1dGFyZSBpIHNlcnZlciBzdHVwaWRpIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODYKK21zZ2lkICJTZW5kIGFyY2hpdmUgYmFjayB0byBnaXQtYXJjaGl2ZSIKK21zZ3N0ciAiUmVpbnZpYSBsJ2FyY2hpdmlvIGEgZ2l0LWFyY2hpdmUiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE4NworbXNnaWQgIlNlbmQgb2JqZWN0cyBwYWNrZWQgYmFjayB0byBnaXQtZmV0Y2gtcGFjayIKK21zZ3N0ciAiUmVpbnZpYSBnbGkgb2dnZXR0aSBzb3R0b3Bvc3RpIGEgcGFjayBhIGdpdC1mZXRjaC1wYWNrIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODgKK21zZ2lkICJTaG93IGEgR2l0IGxvZ2ljYWwgdmFyaWFibGUiCittc2dzdHIgIlZpc3VhbGl6emEgdW5hIHZhcmlhYmlsZSBsb2dpY2EgZGkgR2l0IgorCisjOiBjb21tYW5kLWxpc3QuaDoxODkKK21zZ2lkICJDaGVjayB0aGUgR1BHIHNpZ25hdHVyZSBvZiBjb21taXRzIgorbXNnc3RyICJWZXJpZmljYSBsYSBmaXJtYSBHUEcgZGVpIGNvbW1pdCIKKworIzogY29tbWFuZC1saXN0Lmg6MTkwCittc2dpZCAiVmFsaWRhdGUgcGFja2VkIEdpdCBhcmNoaXZlIGZpbGVzIgorbXNnc3RyICJDb252YWxpZGEgaSBmaWxlIGFyY2hpdmlvIHNvdHRvcG9zdGkgYSBwYWNrIGRpIEdpdCIKKworIzogY29tbWFuZC1saXN0Lmg6MTkxCittc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgdGFncyIKK21zZ3N0ciAiVmVyaWZpY2EgbGEgZmlybWEgR1BHIGRlaSB0YWciCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5MgorbXNnaWQgIkdpdCB3ZWIgaW50ZXJmYWNlICh3ZWIgZnJvbnRlbmQgdG8gR2l0IHJlcG9zaXRvcmllcykiCittc2dzdHIgIkludGVyZmFjY2lhIFdlYiBwZXIgR2l0IChmcm9udGVuZCBXZWIgYWkgcmVwb3NpdG9yeSBHaXQpIgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTMKK21zZ2lkICJTaG93IGxvZ3Mgd2l0aCBkaWZmZXJlbmNlIGVhY2ggY29tbWl0IGludHJvZHVjZXMiCiBtc2dzdHIgIiIKKyJWaXN1YWxpenphIGkgcmVnaXN0cmkgaW5zaWVtZSBhbGxlIGRpZmZlcmVuemUgaW50cm9kb3R0ZSBkYSBjaWFzY3VuIGNvbW1pdCIKIAotIzogZ2l0LWFtLnNoOjEwNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIldoZW4geW91IGhhdmUgcmVzb2x2ZWQgdGhpcyBwcm9ibGVtIHJ1biBcIiRjbWRsaW5lIC0tcmVzb2x2ZWRcIi5cbiIKLSJJZiB5b3Ugd291bGQgcHJlZmVyIHRvIHNraXAgdGhpcyBwYXRjaCwgaW5zdGVhZCBydW4gXCIkY21kbGluZSAtLXNraXBcIi5cbiIKLSJUbyByZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIHN0b3AgcGF0Y2hpbmcgcnVuIFwiJGNtZGxpbmUgLS1hYm9ydFwiLiIKLW1zZ3N0ciAiIgotIlF1YW5kbyBoYWkgcmlzb2x0byBpbCBwcm9ibGVtYSBlc2VndWkgXCIkY21kbGluZSAtLXJlc29sdmVkXCIuXG4iCi0iU2UgdnVvaSBzYWx0YXJlIHF1ZXN0YSBwYXRjaCwgZXNlZ3VpIGludmVjZSBcIiRjbWRsaW5lIC0tc2tpcFwiLlxuIgotIlBlciByaXByaXN0aW5hcmUgaWwgYnJhbmNoIG9yaWdpbmFsZSBlIGludGVycm9tcGVyZSBsJ2FwcGxpY2F6aW9uZSBkZWxsZSAiCi0icGF0Y2ggZXNlZ3VpIFwiJGNtZGxpbmUgLS1hYm9ydFwiLiIKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NAorbXNnaWQgIk1hbmFnZSBtdWx0aXBsZSB3b3JraW5nIHRyZWVzIgorbXNnc3RyICJHZXN0aXNjZSBhbGJlcmkgZGkgbGF2b3JvIG11bHRpcGxpIgogCi0jOiBnaXQtYW0uc2g6MTIxCi1tc2dpZCAiQ2Fubm90IGZhbGwgYmFjayB0byB0aHJlZS13YXkgbWVyZ2UuIgotbXNnc3RyICIiCisjOiBjb21tYW5kLWxpc3QuaDoxOTUKK21zZ2lkICJDcmVhdGUgYSB0cmVlIG9iamVjdCBmcm9tIHRoZSBjdXJyZW50IGluZGV4IgorbXNnc3RyICJDcmVhIHVuIG9nZ2V0dG8gYWxiZXJvIGRhbGwnaW5kaWNlIGNvcnJlbnRlIgogCi0jOiBnaXQtYW0uc2g6MTM3Ci1tc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyBuZWNlc3NhcnkgYmxvYnMgdG8gZmFsbCBiYWNrIG9uIDMtd2F5IG1lcmdlLiIKLW1zZ3N0ciAiIgorIzogY29tbWFuZC1saXN0Lmg6MTk2Cittc2dpZCAiRGVmaW5pbmcgYXR0cmlidXRlcyBwZXIgcGF0aCIKK21zZ3N0ciAiRGVmaW5pemlvbmUgZGkgYXR0cmlidXRpIHBlciBwZXJjb3JzbyIKIAotIzogZ2l0LWFtLnNoOjE1NAotbXNnaWQgIiIKLSJEaWQgeW91IGhhbmQgZWRpdCB5b3VyIHBhdGNoP1xuIgotIkl0IGRvZXMgbm90IGFwcGx5IHRvIGJsb2JzIHJlY29yZGVkIGluIGl0cyBpbmRleC4iCi1tc2dzdHIgIiIKLSJMYSB0dWEgcGF0Y2ggw6ggc3RhdGEgbW9kaWZpY2F0YSBtYW51YWxtZW50ZT9cbiIKLSJOb24gcHXDsiBlc3NlcmUgYXBwbGljYXRhIGFpIGJsb2IgcmVnaXN0cmF0aSBuZWwgcHJvcHJpbyBpbmRleC4iCisjOiBjb21tYW5kLWxpc3QuaDoxOTcKK21zZ2lkICJHaXQgY29tbWFuZC1saW5lIGludGVyZmFjZSBhbmQgY29udmVudGlvbnMiCittc2dzdHIgIkludGVyZmFjY2lhIGEgcmlnYSBkaSBjb21hbmRvIGRpIEdpdCBlIGNvbnZlbnppb25pIgogCi0jOiBnaXQtYW0uc2g6MTYzCi1tc2dpZCAiRmFsbGluZyBiYWNrIHRvIHBhdGNoaW5nIGJhc2UgYW5kIDMtd2F5IG1lcmdlLi4uIgotbXNnc3RyICIiCisjOiBjb21tYW5kLWxpc3QuaDoxOTgKK21zZ2lkICJBIEdpdCBjb3JlIHR1dG9yaWFsIGZvciBkZXZlbG9wZXJzIgorbXNnc3RyICJVbiB0dXRvcmlhbCBHaXQgZGkgYmFzZSBwZXIgZ2xpIHN2aWx1cHBhdG9yaSIKIAotIzogZ2l0LWFtLnNoOjI3NQotbXNnaWQgIk9ubHkgb25lIFN0R0lUIHBhdGNoIHNlcmllcyBjYW4gYmUgYXBwbGllZCBhdCBvbmNlIgotbXNnc3RyICJQdcOyIGVzc2VyZSBhcHBsaWNhdGEgc29sbyB1bmEgc2VyaWUgZGkgcGF0Y2ggU3RHSVQgcGVyIHZvbHRhIgorIzogY29tbWFuZC1saXN0Lmg6MTk5Cittc2dpZCAiR2l0IGZvciBDVlMgdXNlcnMiCittc2dzdHIgIkdpdCBwZXIgdXRlbnRpIENWUyIKIAotIzogZ2l0LWFtLnNoOjM2MgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiUGF0Y2ggZm9ybWF0ICRwYXRjaF9mb3JtYXQgaXMgbm90IHN1cHBvcnRlZC4iCi1tc2dzdHIgIklsIGZvcm1hdG8gcGF0Y2ggJHBhdGNoX2Zvcm1hdCBub24gw6ggc3VwcG9ydGF0by4iCisjOiBjb21tYW5kLWxpc3QuaDoyMDAKK21zZ2lkICJUd2Vha2luZyBkaWZmIG91dHB1dCIKK21zZ3N0ciAiTWVzc2EgYSBwdW50byBkZWxsJ291dHB1dCBkaSBkaWZmIgogCi0jOiBnaXQtYW0uc2g6MzY0Ci1tc2dpZCAiUGF0Y2ggZm9ybWF0IGRldGVjdGlvbiBmYWlsZWQuIgotbXNnc3RyICJSaWxldmFtZW50byBkZWwgZm9ybWF0byBkZWxsYSBwYXRjaCBub24gcml1c2NpdG8uIgorIzogY29tbWFuZC1saXN0Lmg6MjAxCittc2dpZCAiQSB1c2VmdWwgbWluaW11bSBzZXQgb2YgY29tbWFuZHMgZm9yIEV2ZXJ5ZGF5IEdpdCIKK21zZ3N0ciAiVW4gaW5zaWVtZSBkaSBjb21hbmRpIHV0aWxlIGUgbWluaW1hbGUgcGVyIGwndXNvIHF1b3RpZGlhbm8gZGkgR2l0IgogCi0jOiBnaXQtYW0uc2g6NDE4Ci1tc2dpZCAiLWQgb3B0aW9uIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQuICBEbyBub3QgdXNlLiIKLW1zZ3N0ciAibCdvcHppb25lIC1kIG5vbiDDqCBwacO5IHN1cHBvcnRhdGEuICBOb24gdXRpbGl6emFybGEuIgorIzogY29tbWFuZC1saXN0Lmg6MjAyCittc2dpZCAiQSBHaXQgR2xvc3NhcnkiCittc2dzdHIgIlVuIGdsb3NzYXJpbyBkaSBHaXQiCiAKLSM6IGdpdC1hbS5zaDo0ODEKLSMsIHNoLWZvcm1hdAotbXNnaWQgInByZXZpb3VzIHJlYmFzZSBkaXJlY3RvcnkgJGRvdGVzdCBzdGlsbCBleGlzdHMgYnV0IG1ib3ggZ2l2ZW4uIgotbXNnc3RyICIiCisjOiBjb21tYW5kLWxpc3QuaDoyMDMKK21zZ2lkICJIb29rcyB1c2VkIGJ5IEdpdCIKK21zZ3N0ciAiSG9vayB1c2F0aSBkYSBHaXQiCiAKLSM6IGdpdC1hbS5zaDo0ODYKLW1zZ2lkICJQbGVhc2UgbWFrZSB1cCB5b3VyIG1pbmQuIC0tc2tpcCBvciAtLWFib3J0PyIKLW1zZ3N0ciAiUGVyIGZhdm9yZSwgZGVjaWRpdGkuIC0tc2tpcCBvIC0tYWJvcnQ/IgorIzogY29tbWFuZC1saXN0Lmg6MjA0Cittc2dpZCAiU3BlY2lmaWVzIGludGVudGlvbmFsbHkgdW50cmFja2VkIGZpbGVzIHRvIGlnbm9yZSIKK21zZ3N0ciAiU3BlY2lmaWNhIGkgZmlsZSBpbnRlbnppb25hbG1lbnRlIG5vbiB0cmFjY2lhdGkgZGEgaWdub3JhcmUiCiAKLSM6IGdpdC1hbS5zaDo1MTMKLW1zZ2lkICJSZXNvbHZlIG9wZXJhdGlvbiBub3QgaW4gcHJvZ3Jlc3MsIHdlIGFyZSBub3QgcmVzdW1pbmcuIgotbXNnc3RyICIiCisjOiBjb21tYW5kLWxpc3QuaDoyMDUKK21zZ2lkICJEZWZpbmluZyBzdWJtb2R1bGUgcHJvcGVydGllcyIKK21zZ3N0ciAiRGVmaW5pemlvbmUgcHJvcHJpZXTDoCBzb3R0b21vZHVsbyIKIAotIzogZ2l0LWFtLnNoOjU3OQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRGlydHkgaW5kZXg6IGNhbm5vdCBhcHBseSBwYXRjaGVzIChkaXJ0eTogJGZpbGVzKSIKLW1zZ3N0ciAiIgorIzogY29tbWFuZC1saXN0Lmg6MjA2Cittc2dpZCAiR2l0IG5hbWVzcGFjZXMiCittc2dzdHIgIlNwYXppIGRlaSBub21pIEdpdCIKIAotIzogZ2l0LWFtLnNoOjY3MQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIlBhdGNoIGlzIGVtcHR5LiAgV2FzIGl0IHNwbGl0IHdyb25nP1xuIgotIklmIHlvdSB3b3VsZCBwcmVmZXIgdG8gc2tpcCB0aGlzIHBhdGNoLCBpbnN0ZWFkIHJ1biBcIiRjbWRsaW5lIC0tc2tpcFwiLlxuIgotIlRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgc3RvcCBwYXRjaGluZyBydW4gXCIkY21kbGluZSAtLWFib3J0XCIuIgotbXNnc3RyICIiCisjOiBjb21tYW5kLWxpc3QuaDoyMDcKK21zZ2lkICJHaXQgUmVwb3NpdG9yeSBMYXlvdXQiCittc2dzdHIgIlN0cnV0dHVyYSByZXBvc2l0b3J5IEdpdCIKIAotIzogZ2l0LWFtLnNoOjcwOAotbXNnaWQgIlBhdGNoIGRvZXMgbm90IGhhdmUgYSB2YWxpZCBlLW1haWwgYWRkcmVzcy4iCi1tc2dzdHIgIkxhIHBhdGNoIG5vbiBjb250aWVuZSB1biBpbmRpcml6em8gZW1haWwgdmFsaWRvLiIKKyM6IGNvbW1hbmQtbGlzdC5oOjIwOAorbXNnaWQgIlNwZWNpZnlpbmcgcmV2aXNpb25zIGFuZCByYW5nZXMgZm9yIEdpdCIKK21zZ3N0ciAiQ29tZSBzcGVjaWZpY2FyZSByZXZpc2lvbmkgZSBpbnRlcnZhbGxpIGluIEdpdCIKIAotIzogZ2l0LWFtLnNoOjc1NQotbXNnaWQgImNhbm5vdCBiZSBpbnRlcmFjdGl2ZSB3aXRob3V0IHN0ZGluIGNvbm5lY3RlZCB0byBhIHRlcm1pbmFsLiIKLW1zZ3N0ciAiIgorIzogY29tbWFuZC1saXN0Lmg6MjA5Cittc2dpZCAiTW91bnRpbmcgb25lIHJlcG9zaXRvcnkgaW5zaWRlIGFub3RoZXIiCittc2dzdHIgIk1vbnRvIHVuIHJlcG9zaXRvcnkgZGVudHJvIHVuIGFsdHJvIgogCi0jOiBnaXQtYW0uc2g6NzU5Ci1tc2dpZCAiQ29tbWl0IEJvZHkgaXM6IgotbXNnc3RyICIiCisjOiBjb21tYW5kLWxpc3QuaDoyMTAKK21zZ2lkICJBIHR1dG9yaWFsIGludHJvZHVjdGlvbiB0byBHaXQ6IHBhcnQgdHdvIgorbXNnc3RyICJVbiB0dXRvcmlhbCBpbnRyb2R1dHRpdm8gcGVyIEdpdDogc2Vjb25kYSBwYXJ0ZSIKIAotIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFt5XSwgW25dLCBbZV0sIFt2XSBhbmQgW2FdCi0jLiBpbiB5b3VyIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2gKLSMuIGlucHV0IGF0IHRoaXMgcG9pbnQuCi0jOiBnaXQtYW0uc2g6NzY2Ci1tc2dpZCAiQXBwbHk/IFt5XWVzL1tuXW8vW2VdZGl0L1t2XWlldyBwYXRjaC9bYV1jY2VwdCBhbGwgIgotbXNnc3RyICJBcHBsaWNhcmU/IHPDrFt5XS9ub1tuXS9tb2RpZmljYVtlXS92aXN1YWxpenphIHBhdGNoW3ZdL2FjY2V0dGEgdHV0dG9bYV0gIgorIzogY29tbWFuZC1saXN0Lmg6MjExCittc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0IgorbXNnc3RyICJVbiB0dXRvcmlhbCBpbnRyb2R1dHRpdm8gcGVyIEdpdCIKIAotIzogZ2l0LWFtLnNoOjgwMgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQXBwbHlpbmc6ICRGSVJTVExJTkUiCi1tc2dzdHIgIiIKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMgorbXNnaWQgIkFuIG92ZXJ2aWV3IG9mIHJlY29tbWVuZGVkIHdvcmtmbG93cyB3aXRoIEdpdCIKK21zZ3N0ciAiVW5hIHBhbm9yYW1pY2EgZGVpIGZsdXNzaSBkaSBsYXZvcm8gcmFjY29tYW5kYXRpIGluIEdpdCIKIAotIzogZ2l0LWFtLnNoOjgyMwotbXNnaWQgIiIKLSJObyBjaGFuZ2VzIC0gZGlkIHlvdSBmb3JnZXQgdG8gdXNlICdnaXQgYWRkJz9cbiIKLSJJZiB0aGVyZSBpcyBub3RoaW5nIGxlZnQgdG8gc3RhZ2UsIGNoYW5jZXMgYXJlIHRoYXQgc29tZXRoaW5nIGVsc2VcbiIKLSJhbHJlYWR5IGludHJvZHVjZWQgdGhlIHNhbWUgY2hhbmdlczsgeW91IG1pZ2h0IHdhbnQgdG8gc2tpcCB0aGlzIHBhdGNoLiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYW0uc2g6ODMxCi1tc2dpZCAiIgotIllvdSBzdGlsbCBoYXZlIHVubWVyZ2VkIHBhdGhzIGluIHlvdXIgaW5kZXhcbiIKLSJkaWQgeW91IGZvcmdldCB0byB1c2UgJ2dpdCBhZGQnPyIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYW0uc2g6ODQ3Ci1tc2dpZCAiTm8gY2hhbmdlcyAtLSBQYXRjaCBhbHJlYWR5IGFwcGxpZWQuIgotbXNnc3RyICJOZXNzdW5hIG1vZGlmaWNhIC0tIHBhdGNoIGdpw6AgYXBwbGljYXRhLiIKLQotIzogZ2l0LWFtLnNoOjg1NwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiUGF0Y2ggZmFpbGVkIGF0ICRtc2dudW0gJEZJUlNUTElORSIKLW1zZ3N0ciAiUGF0Y2ggbm9uIHJpdXNjaXRhIGEgJG1zZ251bSAkRklSU1RMSU5FIgotCi0jOiBnaXQtYW0uc2g6ODczCi1tc2dpZCAiYXBwbHlpbmcgdG8gYW4gZW1wdHkgaGlzdG9yeSIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYmlzZWN0LnNoOjQ4CisjOiBnaXQtYmlzZWN0LnNoOjU0CiBtc2dpZCAiWW91IG5lZWQgdG8gc3RhcnQgYnkgXCJnaXQgYmlzZWN0IHN0YXJ0XCIiCiBtc2dzdHIgIkRldmkgaW5pemlhcmUgY29uIFwiZ2l0IGJpc2VjdCBzdGFydFwiIgogCiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW1ldIGFuZCBbbl0gaW4geW91cgogIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAogIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1iaXNlY3Quc2g6NTQKKyM6IGdpdC1iaXNlY3Quc2g6NjAKIG1zZ2lkICJEbyB5b3Ugd2FudCBtZSB0byBkbyBpdCBmb3IgeW91IFtZL25dPyAiCiBtc2dzdHIgIlZ1b2kgY2hlIG1lIG5lIG9jY3VwaSBpbyBbWS9uXT8gIgogCi0jOiBnaXQtYmlzZWN0LnNoOjk1CisjOiBnaXQtYmlzZWN0LnNoOjEwMQogIywgc2gtZm9ybWF0Ci1tc2dpZCAidW5yZWNvZ25pc2VkIG9wdGlvbjogJyRhcmcnIgotbXNnc3RyICJvcHppb25lIG5vbiByaWNvbm9zY2l1dGE6ICckYXJnJyIKK21zZ2lkICJCYWQgcmV2IGlucHV0OiAkYXJnIgorbXNnc3RyICJSZXZpc2lvbmUgZm9ybml0YSBub24gdmFsaWRhOiAkYXJnIgogCi0jOiBnaXQtYmlzZWN0LnNoOjk5CisjOiBnaXQtYmlzZWN0LnNoOjEyMQogIywgc2gtZm9ybWF0Ci1tc2dpZCAiJyRhcmcnIGRvZXMgbm90IGFwcGVhciB0byBiZSBhIHZhbGlkIHJldmlzaW9uIgotbXNnc3RyICInJGFyZycgbm9uIHNlbWJyYSBlc3NlcmUgdW5hIHJldmlzaW9uZSB2YWxpZGEiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTE3Ci1tc2dpZCAiQmFkIEhFQUQgLSBJIG5lZWQgYSBIRUFEIgotbXNnc3RyICIiCittc2dpZCAiQmFkIHJldiBpbnB1dDogJGJpc2VjdGVkX2hlYWQiCittc2dzdHIgIlJldmlzaW9uZSBmb3JuaXRhIG5vbiB2YWxpZGE6ICRiaXNlY3RlZF9oZWFkIgogCiAjOiBnaXQtYmlzZWN0LnNoOjEzMAogIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIkNoZWNraW5nIG91dCAnJHN0YXJ0X2hlYWQnIGZhaWxlZC4gVHJ5ICdnaXQgYmlzZWN0IHJlc2V0IDx2YWxpZGJyYW5jaD4nLiIKLW1zZ3N0ciAiIgotIkNoZWNrb3V0IGRpICckc3RhcnRfaGVhZCcgbm9uIHJpdXNjaXRvLiBQcm92YSAnZ2l0IGJpc2VjdCByZXNldCAiCi0iPGJyYW5jaC12YWxpZG8+Jy4iCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTQwCi1tc2dpZCAid29uJ3QgYmlzZWN0IG9uIHNlZWtlZCB0cmVlIgotbXNnc3RyICIiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTQ0Ci1tc2dpZCAiQmFkIEhFQUQgLSBzdHJhbmdlIHN5bWJvbGljIHJlZiIKLW1zZ3N0ciAiSEVBRCBlcnJhdG8gLSBzdHJhbm8gcmVmIHNpbWJvbGljbyIKLQotIzogZ2l0LWJpc2VjdC5zaDoxODkKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkJhZCBiaXNlY3Rfd3JpdGUgYXJndW1lbnQ6ICRzdGF0ZSIKLW1zZ3N0ciAiQXJnb21lbnRvIGJpc2VjdF93cml0ZSBlcnJhdG86ICRzdGF0ZSIKLQotIzogZ2l0LWJpc2VjdC5zaDoyMTgKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRhcmciCi1tc2dzdHIgIiIKLQotIzogZ2l0LWJpc2VjdC5zaDoyMzIKLW1zZ2lkICJQbGVhc2UgY2FsbCAnYmlzZWN0X3N0YXRlJyB3aXRoIGF0IGxlYXN0IG9uZSBhcmd1bWVudC4iCi1tc2dzdHIgIlBlciBmYXZvcmUsIGNoaWFtYSAnYmlzZWN0X3N0YXRlJyBjb24gYWxtZW5vIHVuIGFyZ29tZW50by4iCi0KLSM6IGdpdC1iaXNlY3Quc2g6MjQ0Ci0jLCBzaC1mb3JtYXQKIG1zZ2lkICJCYWQgcmV2IGlucHV0OiAkcmV2IgotbXNnc3RyICIiCittc2dzdHIgIlJldmlzaW9uZSBmb3JuaXRhIG5vbiB2YWxpZGE6ICRyZXYiCiAKLSM6IGdpdC1iaXNlY3Quc2g6MjUwCi1tc2dpZCAiJ2dpdCBiaXNlY3QgYmFkJyBjYW4gdGFrZSBvbmx5IG9uZSBhcmd1bWVudC4iCi1tc2dzdHIgIidnaXQgYmlzZWN0IGJhZCcgcHXDsiBwcmVuZGVyZSB1biBzb2xvIGFyZ29tZW50by4iCi0KLSMuIGhhdmUgYmFkIGJ1dCBub3QgZ29vZC4gIHdlIGNvdWxkIGJpc2VjdCBhbHRob3VnaAotIy4gdGhpcyBpcyBsZXNzIG9wdGltdW0uCi0jOiBnaXQtYmlzZWN0LnNoOjI3MwotbXNnaWQgIldhcm5pbmc6IGJpc2VjdGluZyBvbmx5IHdpdGggYSBiYWQgY29tbWl0LiIKLW1zZ3N0ciAiIgotCi0jLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW1ldIGFuZCBbbl0gaW4geW91cgotIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAotIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1iaXNlY3Quc2g6Mjc5Ci1tc2dpZCAiQXJlIHlvdSBzdXJlIFtZL25dPyAiCi1tc2dzdHIgIlNlaSBzaWN1cm8/IFtZL25dICIKLQotIzogZ2l0LWJpc2VjdC5zaDoyODkKLW1zZ2lkICIiCi0iWW91IG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgZ29vZCBhbmQgb25lIGJhZCByZXZpc2lvbnMuXG4iCi0iKFlvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCBiYWRcIiBhbmQgXCJnaXQgYmlzZWN0IGdvb2RcIiBmb3IgdGhhdC4pIgotbXNnc3RyICIiCi0iRGV2aSBzcGVjaWZpY2FyZSBhbG1lbm8gdW5hIHJldmlzaW9uZSBjb3JyZXR0YSBlZCB1bmEgZXJyYXRhLlxuIgotIihQdW9pIHVzYXJlIFwiZ2l0IGJpc2VjdCBiYWRcIiBlIFwiZ2l0IGJpc2VjdCBnb29kXCIgcGVyIHF1ZXN0byBzY29wby4pIgotCi0jOiBnaXQtYmlzZWN0LnNoOjI5MgotbXNnaWQgIiIKLSJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKLSJZb3UgdGhlbiBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lIGdvb2QgYW5kIG9uZSBiYWQgcmV2aXNpb25zLlxuIgotIihZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgYmFkXCIgYW5kIFwiZ2l0IGJpc2VjdCBnb29kXCIgZm9yIHRoYXQuKSIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYmlzZWN0LnNoOjM0NyBnaXQtYmlzZWN0LnNoOjQ3NAotbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLiIKLW1zZ3N0ciAiTm9uIHN0aWFtbyBlc2VndWVuZG8gdW4gYmlzZWN0LiIKLQotIzogZ2l0LWJpc2VjdC5zaDozNTQKKyM6IGdpdC1iaXNlY3Quc2g6MTM5CiAjLCBzaC1mb3JtYXQKLW1zZ2lkICInJGludmFsaWQnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIKLW1zZ3N0ciAiJyRpbnZhbGlkJyBub24gw6ggdW4gY29tbWl0IHZhbGlkbyIKK21zZ2lkICInZ2l0IGJpc2VjdCAkVEVSTV9CQUQnIGNhbiB0YWtlIG9ubHkgb25lIGFyZ3VtZW50LiIKK21zZ3N0ciAiJ2dpdCBiaXNlY3QgJFRFUk1fQkFEJyByaWNoaWVkZSB1biBzb2xvIGFyZ29tZW50by4iCiAKLSM6IGdpdC1iaXNlY3Quc2g6MzYzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iQ291bGQgbm90IGNoZWNrIG91dCBvcmlnaW5hbCBIRUFEICckYnJhbmNoJy5cbiIKLSJUcnkgJ2dpdCBiaXNlY3QgcmVzZXQgPGNvbW1pdD4nLiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtYmlzZWN0LnNoOjM5MAorIzogZ2l0LWJpc2VjdC5zaDoyMDkKIG1zZ2lkICJObyBsb2dmaWxlIGdpdmVuIgogbXNnc3RyICJOZXNzdW4gZmlsZSBkaSBsb2cgc3BlY2lmaWNhdG8iCiAKLSM6IGdpdC1iaXNlY3Quc2g6MzkxCisjOiBnaXQtYmlzZWN0LnNoOjIxMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJGZpbGUgZm9yIHJlcGxheWluZyIKLW1zZ3N0ciAiIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlICRmaWxlIHBlciByaWVzZWd1aXJlIGkgY29tYW5kaSBjb250ZW51dGkiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDA4CisjOiBnaXQtYmlzZWN0LnNoOjIzMgogbXNnaWQgIj8/IHdoYXQgYXJlIHlvdSB0YWxraW5nIGFib3V0PyIKLW1zZ3N0ciAiPz8gZGkgY29zYSBzaSBzdGEgcGFybGFuZG8/IgorbXNnc3RyICI/PyBkaSBjb3NhIHN0YWkgcGFybGFuZG8/IgogCi0jOiBnaXQtYmlzZWN0LnNoOjQyMAorIzogZ2l0LWJpc2VjdC5zaDoyNDEKK21zZ2lkICJiaXNlY3QgcnVuIGZhaWxlZDogbm8gY29tbWFuZCBwcm92aWRlZC4iCittc2dzdHIgImVzZWN1emlvbmUgZGkgYmlzZWN0IG5vbiByaXVzY2l0YTogbmVzc3VuIGNvbWFuZG8gZm9ybml0by4iCisKKyM6IGdpdC1iaXNlY3Quc2g6MjQ2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJydW5uaW5nICRjb21tYW5kIgotbXNnc3RyICJzdG8gZXNlZ3VlbmRvICRjb21tYW5kIgorbXNnc3RyICJlc2VjdXppb25lIGRpICRjb21tYW5kIGluIGNvcnNvIgogCi0jOiBnaXQtYmlzZWN0LnNoOjQyNworIzogZ2l0LWJpc2VjdC5zaDoyNTMKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJiaXNlY3QgcnVuIGZhaWxlZDpcbiIKICJleGl0IGNvZGUgJHJlcyBmcm9tICckY29tbWFuZCcgaXMgPCAwIG9yID49IDEyOCIKIG1zZ3N0ciAiIgotImJpc2VjdCBydW4gbm9uIHJpdXNjaXRvOlxuIgorImVzZWN1emlvbmUgZGkgYmlzZWN0IG5vbiByaXVzY2l0YTpcbiIKICJpbCBjb2RpY2UgZGkgdXNjaXRhICRyZXMgZGEgJyRjb21tYW5kJyDDqCA8IDAgb3BwdXJlID49IDEyOCIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NTMKKyM6IGdpdC1iaXNlY3Quc2g6Mjc5CiBtc2dpZCAiYmlzZWN0IHJ1biBjYW5ub3QgY29udGludWUgYW55IG1vcmUiCi1tc2dzdHIgImJpc2VjdCBydW4gbm9uIHB1w7IgcGnDuSBwcm9zZWd1aXJlIgorbXNnc3RyICJsJ2VzZWN1emlvbmUgZGkgYmlzZWN0IG5vbiBwdcOyIHBpw7kgcHJvc2VndWlyZSIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NTkKKyM6IGdpdC1iaXNlY3Quc2g6Mjg1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiYmlzZWN0IHJ1biBmYWlsZWQ6XG4iCiAiJ2Jpc2VjdF9zdGF0ZSAkc3RhdGUnIGV4aXRlZCB3aXRoIGVycm9yIGNvZGUgJHJlcyIKIG1zZ3N0ciAiIgotImJpc2VjdCBydW4gbm9uIHJpdXNjaXRvOlxuIgotImJpc2VjdF9zdGF0ZSAkc3RhdGUgw6ggdXNjaXRvIGNvbiBpbCBjb2RpY2UgZGkgZXJyb3JlICRyZXMiCisiZXNlY3V6aW9uZSBkaSBiaXNlY3Qgbm9uIHJpdXNjaXRhOlxuIgorIidiaXNlY3Rfc3RhdGUgJHN0YXRlJyDDqCB1c2NpdG8gY29uIGlsIGNvZGljZSBkaSBlcnJvcmUgJHJlcyIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NjYKKyM6IGdpdC1iaXNlY3Quc2g6MjkyCiBtc2dpZCAiYmlzZWN0IHJ1biBzdWNjZXNzIgotbXNnc3RyICJiaXNlY3QgcnVuIGVzZWd1aXRvIGNvbiBzdWNjZXNzbyIKK21zZ3N0ciAiZXNlY3V6aW9uZSBkaSBiaXNlY3QgY29tcGxldGF0YSBjb24gc3VjY2Vzc28iCiAKLSM6IGdpdC1wdWxsLnNoOjIxCisjOiBnaXQtYmlzZWN0LnNoOjMwMAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLiIKK21zZ3N0ciAiTm9uIHN0aWFtbyBlc2VndWVuZG8gdW5hIGJpc2V6aW9uZS4iCisKKyM6IGdpdC1tZXJnZS1vY3RvcHVzLnNoOjQ2CiBtc2dpZCAiIgotIlB1bGwgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuXG4iCi0iUGxlYXNlLCBmaXggdGhlbSB1cCBpbiB0aGUgd29yayB0cmVlLCBhbmQgdGhlbiB1c2UgJ2dpdCBhZGQvcm0gPGZpbGU+J1xuIgotImFzIGFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbiwgb3IgdXNlICdnaXQgY29tbWl0IC1hJy4iCisiRXJyb3I6IFlvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICIKKyJtZXJnZSIKIG1zZ3N0ciAiIgorIkVycm9yZTogbGUgdHVlIG1vZGlmaWNoZSBsb2NhbGkgYWkgc2VndWVudGkgZmlsZSBzYXJlYmJlcm8gc292cmFzY3JpdHRlIGRhbCAiCisibWVyZ2UiCiAKLSM6IGdpdC1wdWxsLnNoOjI1Ci1tc2dpZCAiUHVsbCBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCi1tc2dzdHIgIiIKLSJJbCBwdWxsIG5vbiDDqCBwb3NzaWJpbGUgcGVyY2jDqSBjaSBzb25vIGZpbGUgZGkgY3VpIG5vbiDDqCBzdGF0byBlc2VndWl0byBpbCAiCi0ibWVyZ2UuIgorIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6NjEKK21zZ2lkICJBdXRvbWF0ZWQgbWVyZ2UgZGlkIG5vdCB3b3JrLiIKK21zZ3N0ciAiSWwgbWVyZ2UgYXV0b21hdGljbyBub24gaGEgZnVuemlvbmF0by4iCiAKLSM6IGdpdC1wdWxsLnNoOjE5NwotbXNnaWQgInVwZGF0aW5nIGFuIHVuYm9ybiBicmFuY2ggd2l0aCBjaGFuZ2VzIGFkZGVkIHRvIHRoZSBpbmRleCIKLW1zZ3N0ciAiIgorIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6NjIKK21zZ2lkICJTaG91bGQgbm90IGJlIGRvaW5nIGFuIG9jdG9wdXMuIgorbXNnc3RyICJOb24gZG92cmViYmUgZXNzZXJlIGVzZWd1aXRvIHVuIG1lcmdlIG9jdG9wdXMuIgogCi0jLiBUaGUgZmV0Y2ggaW52b2x2ZWQgdXBkYXRpbmcgdGhlIGN1cnJlbnQgYnJhbmNoLgotIy4gVGhlIHdvcmtpbmcgdHJlZSBhbmQgdGhlIGluZGV4IGZpbGUgaXMgc3RpbGwgYmFzZWQgb24gdGhlCi0jLiAkb3JpZ19oZWFkIGNvbW1pdCwgYnV0IHdlIGFyZSBtZXJnaW5nIGludG8gJGN1cnJfaGVhZC4KLSMuIEZpcnN0IHVwZGF0ZSB0aGUgd29ya2luZyB0cmVlIHRvIG1hdGNoICRjdXJyX2hlYWQuCi0jOiBnaXQtcHVsbC5zaDoyMjgKKyM6IGdpdC1tZXJnZS1vY3RvcHVzLnNoOjczCiAjLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iV2FybmluZzogZmV0Y2ggdXBkYXRlZCB0aGUgY3VycmVudCBicmFuY2ggaGVhZC5cbiIKLSJXYXJuaW5nOiBmYXN0LWZvcndhcmRpbmcgeW91ciB3b3JraW5nIHRyZWUgZnJvbVxuIgotIldhcm5pbmc6IGNvbW1pdCAkb3JpZ19oZWFkLiIKLW1zZ3N0ciAiIgorbXNnaWQgIlVuYWJsZSB0byBmaW5kIGNvbW1vbiBjb21taXQgd2l0aCAkcHJldHR5X25hbWUiCittc2dzdHIgIkltcG9zc2liaWxlIHRyb3ZhcmUgdW4gY29tbWl0IGNvbXVuZSBjb24gJHByZXR0eV9uYW1lIgogCi0jOiBnaXQtcHVsbC5zaDoyNTMKLW1zZ2lkICJDYW5ub3QgbWVyZ2UgbXVsdGlwbGUgYnJhbmNoZXMgaW50byBlbXB0eSBoZWFkIgotbXNnc3RyICJJbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBtZXJnZSBkaSBicmFuY2ggbXVsdGlwbGkgaW4gdW4gaGVhZCB2dW90byIKKyM6IGdpdC1tZXJnZS1vY3RvcHVzLnNoOjc3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUgd2l0aCAkcHJldHR5X25hbWUiCittc2dzdHIgIkdpw6AgYWdnaW9ybmF0byByaXNwZXR0byBhICRwcmV0dHlfbmFtZSIKIAotIzogZ2l0LXB1bGwuc2g6MjU3Ci1tc2dpZCAiQ2Fubm90IHJlYmFzZSBvbnRvIG11bHRpcGxlIGJyYW5jaGVzIgotbXNnc3RyICJJbXBvc3NpYmlsZSBlc2VndWlyZSBpbCByZWJhc2Ugc3UgYnJhbmNoIG11bHRpcGxpIgorIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6ODkKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkZhc3QtZm9yd2FyZGluZyB0bzogJHByZXR0eV9uYW1lIgorbXNnc3RyICJFc2VndW8gaWwgZmFzdCBmb3J3YXJkIGE6ICRwcmV0dHlfbmFtZSIKIAotIzogZ2l0LXN0YXNoLnNoOjUxCi1tc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIHdpdGggcGFyYW1ldGVycyBpcyB1bmltcGxlbWVudGVkIgotbXNnc3RyICJnaXQgc3Rhc2ggY2xlYXIgY29uIHBhcmFtZXRyaSBub24gw6ggaW1wbGVtZW50YXRvIgorIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6OTcKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlRyeWluZyBzaW1wbGUgbWVyZ2Ugd2l0aCAkcHJldHR5X25hbWUiCittc2dzdHIgIlByb3ZvIHVuIG1lcmdlIHNlbXBsaWNlIGNvbiAkcHJldHR5X25hbWUiCiAKLSM6IGdpdC1zdGFzaC5zaDo3NAotbXNnaWQgIllvdSBkbyBub3QgaGF2ZSB0aGUgaW5pdGlhbCBjb21taXQgeWV0IgotbXNnc3RyICJOb24gaGFpIGFuY29yYSB1biBjb21taXQgaW5pemlhbGUiCisjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDoxMDIKK21zZ2lkICJTaW1wbGUgbWVyZ2UgZGlkIG5vdCB3b3JrLCB0cnlpbmcgYXV0b21hdGljIG1lcmdlLiIKK21zZ3N0ciAiSWwgbWVyZ2Ugc2VtcGxpY2Ugbm9uIGhhIGZ1bnppb25hdG8sIHByb3ZvIGlsIG1lcmdlIGF1dG9tYXRpY28uIgogCi0jOiBnaXQtc3Rhc2guc2g6ODkKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBpbmRleCBzdGF0ZSIKLW1zZ3N0ciAiSW1wb3NzaWJpbGUgc2FsdmFyZSBsbyBzdGF0byBjb3JyZW50ZSBkaSBpbmRleCIKLQotIzogZ2l0LXN0YXNoLnNoOjEyMyBnaXQtc3Rhc2guc2g6MTM2Ci1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgd29ya3RyZWUgc3RhdGUiCi1tc2dzdHIgIiIKLQotIzogZ2l0LXN0YXNoLnNoOjE0MAotbXNnaWQgIk5vIGNoYW5nZXMgc2VsZWN0ZWQiCi1tc2dzdHIgIk5lc3N1bmEgbW9kaWZpY2Egc2VsZXppb25hdGEiCi0KLSM6IGdpdC1zdGFzaC5zaDoxNDMKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjIxCiBtc2dpZCAiQ2Fubm90IHJlbW92ZSB0ZW1wb3JhcnkgaW5kZXggKGNhbid0IGhhcHBlbikiCi1tc2dzdHIgIiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgcmltdW92ZXJlIGwnaW5kaWNlIHRlbXBvcmFuZW8gKG5vbiBwdcOyIHN1Y2NlZGVyZSkiCiAKLSM6IGdpdC1zdGFzaC5zaDoxNTYKLW1zZ2lkICJDYW5ub3QgcmVjb3JkIHdvcmtpbmcgdHJlZSBzdGF0ZSIKLW1zZ3N0ciAiIgotCi0jLiBUUkFOU0xBVE9SUzogJG9wdGlvbiBpcyBhbiBpbnZhbGlkIG9wdGlvbiwgbGlrZQotIy4gYC0tYmxhaC1ibGFoJy4gVGhlIDcgc3BhY2VzIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlCi0jLiBzZWNvbmQgbGluZSBjb3JyZXNwb25kIHRvICJlcnJvcjogIi4gU28geW91IHNob3VsZCBsaW5lCi0jLiB1cCB0aGUgc2Vjb25kIGxpbmUgd2l0aCBob3dldmVyIG1hbnkgY2hhcmFjdGVycyB0aGUKLSMuIHRyYW5zbGF0aW9uIG9mICJlcnJvcjogIiB0YWtlcyBpbiB5b3VyIGxhbmd1YWdlLiBFLmcuIGluCi0jLiBFbmdsaXNoIHRoaXMgaXM6Ci0jLgotIy4gJCBnaXQgc3Rhc2ggc2F2ZSAtLWJsYWgtYmxhaCAyPiYxIHwgaGVhZCAtbiAyCi0jLiBlcnJvcjogdW5rbm93biBvcHRpb24gZm9yICdzdGFzaCBzYXZlJzogLS1ibGFoLWJsYWgKLSMuIFRvIHByb3ZpZGUgYSBtZXNzYWdlLCB1c2UgZ2l0IHN0YXNoIHNhdmUgLS0gJy0tYmxhaC1ibGFoJwotIzogZ2l0LXN0YXNoLnNoOjIwMgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyNzIKICMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJlcnJvcjogdW5rbm93biBvcHRpb24gZm9yICdzdGFzaCBzYXZlJzogJG9wdGlvblxuIgotIiAgICAgICBUbyBwcm92aWRlIGEgbWVzc2FnZSwgdXNlIGdpdCBzdGFzaCBzYXZlIC0tICckb3B0aW9uJyIKLW1zZ3N0ciAiIgotImVycm9yZTogb3B6aW9uZSBzY29ub3NjaXV0YSBwZXIgJ3N0YXNoIHNhdmUnOiAkb3B0aW9uXG4iCi0iICAgICAgICBQZXIgYWdnaXVuZ2VyZSB1biBtZXNzYWdnaW8sIHVzYXJlIGdpdCBzdGFzaCBzYXZlIC0tICckb3B0aW9uJyIKK21zZ2lkICJDYW5ub3QgdXBkYXRlICRyZWZfc3Rhc2ggd2l0aCAkd19jb21taXQiCittc2dzdHIgIkltcG9zc2liaWxlIGFnZ2lvcm5hcmUgJHJlZl9zdGFzaCBjb24gJHdfY29tbWl0IgogCi0jOiBnaXQtc3Rhc2guc2g6MjIzCi1tc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgotbXNnc3RyICJOZXNzdW5hIG1vZGlmaWNhIGxvY2FsZSBkYSBzYWx2YXJlIgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMjQKKyMsIHNoLWZvcm1hdAorbXNnaWQgImVycm9yOiB1bmtub3duIG9wdGlvbiBmb3IgJ3N0YXNoIHB1c2gnOiAkb3B0aW9uIgorbXNnc3RyICJlcnJvcmU6IG9wemlvbmUgc2Nvbm9zY2l1dGEgcGVyICdzdGFzaCBwdXNoJzogJG9wdGlvbiIKIAotIzogZ2l0LXN0YXNoLnNoOjIyNwotbXNnaWQgIkNhbm5vdCBpbml0aWFsaXplIHN0YXNoIgotbXNnc3RyICJJbXBvc3NpYmlsZSBpbml6aWFsaXp6YXJlIHN0YXNoIgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTYKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlNhdmVkIHdvcmtpbmcgZGlyZWN0b3J5IGFuZCBpbmRleCBzdGF0ZSAkc3Rhc2hfbXNnIgorbXNnc3RyICJEaXJlY3RvcnkgZGkgbGF2b3JvIGUgc3RhdG8gaW5kaWNlIHNhbHZhdGk6ICRzdGFzaF9tc2ciCiAKLSM6IGdpdC1zdGFzaC5zaDoyMzUKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBzdGF0dXMiCi1tc2dzdHIgIkltcG9zc2liaWxlIHNhbHZhcmUgbG8gc3RhdG8gYXR0dWFsZSIKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NTM2CisjLCBzaC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbjogJG9wdCIKK21zZ3N0ciAib3B6aW9uZSBzY29ub3NjaXV0YTogJG9wdCIKIAotIzogZ2l0LXN0YXNoLnNoOjI1MwotbXNnaWQgIkNhbm5vdCByZW1vdmUgd29ya3RyZWUgY2hhbmdlcyIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtc3Rhc2guc2g6MzUyCi1tc2dpZCAiTm8gc3Rhc2ggZm91bmQuIgotbXNnc3RyICJOZXNzdW5vIHN0YXNoIHRyb3ZhdG8uIgotCi0jOiBnaXQtc3Rhc2guc2g6MzU5CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU1NgogIywgc2gtZm9ybWF0CiBtc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDogJFJFViIKIG1zZ3N0ciAiVHJvcHBlIHJldmlzaW9uaSBzcGVjaWZpY2F0ZTogJFJFViIKIAotIzogZ2l0LXN0YXNoLnNoOjM2NQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NzEKICMsIHNoLWZvcm1hdAotbXNnaWQgIiRyZWZlcmVuY2UgaXMgbm90IHZhbGlkIHJlZmVyZW5jZSIKK21zZ2lkICIkcmVmZXJlbmNlIGlzIG5vdCBhIHZhbGlkIHJlZmVyZW5jZSIKIG1zZ3N0ciAiJHJlZmVyZW5jZSBub24gw6ggdW4gcmlmZXJpbWVudG8gdmFsaWRvIgogCi0jOiBnaXQtc3Rhc2guc2g6MzkzCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU5OQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRhcmdzJyBpcyBub3QgYSBzdGFzaC1saWtlIGNvbW1pdCIKIG1zZ3N0ciAiJyRhcmdzJyBub24gw6ggdW4gY29tbWl0IGRpIHRpcG8gc3Rhc2giCiAKLSM6IGdpdC1zdGFzaC5zaDo0MDQKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjEwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJGFyZ3MnIGlzIG5vdCBhIHN0YXNoIHJlZmVyZW5jZSIKLW1zZ3N0ciAiJyRhcmdzJyBub24gw6ggdW4gcmVmZXJpbWVudG8gYSB1bm8gc3Rhc2giCittc2dzdHIgIickYXJncycgbm9uIMOoIHVuIHJpZmVyaW1lbnRvIGEgdW5vIHN0YXNoIgogCi0jOiBnaXQtc3Rhc2guc2g6NDEyCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYxOAogbXNnaWQgInVuYWJsZSB0byByZWZyZXNoIGluZGV4IgotbXNnc3RyICJpbXBvc3NpYmlsZSBhZ2dpb3JuYXJlIGluZGV4IgorbXNnc3RyICJpbXBvc3NpYmlsZSBhZ2dpb3JuYXJlIGwnaW5kaWNlIgogCi0jOiBnaXQtc3Rhc2guc2g6NDE2CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYyMgogbXNnaWQgIkNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKIG1zZ3N0ciAiSW1wb3NzaWJpbGUgYXBwbGljYXJlIHVubyBzdGFzaCBuZWwgbWV6em8gZGkgdW4gbWVyZ2UiCiAKLSM6IGdpdC1zdGFzaC5zaDo0MjQKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjMwCiBtc2dpZCAiQ29uZmxpY3RzIGluIGluZGV4LiBUcnkgd2l0aG91dCAtLWluZGV4LiIKIG1zZ3N0ciAiQ2kgc29ubyBjb25mbGl0dGkgaW4gaW5kZXguIFByb3ZhIHNlbnphIC0taW5kZXguIgogCi0jOiBnaXQtc3Rhc2guc2g6NDI2CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYzMgogbXNnaWQgIkNvdWxkIG5vdCBzYXZlIGluZGV4IHRyZWUiCi1tc2dzdHIgIiIKK21zZ3N0ciAiTm9uIMOoIHN0YXRvIHBvc3NpYmlsZSBzYWx2YXJlIGwnYWxiZXJvIGluZGljZSIKIAotIzogZ2l0LXN0YXNoLnNoOjQ2MAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2NDEKK21zZ2lkICJDb3VsZCBub3QgcmVzdG9yZSB1bnRyYWNrZWQgZmlsZXMgZnJvbSBzdGFzaCBlbnRyeSIKK21zZ3N0ciAiIgorIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgcmlwcmlzdGluYXJlIGkgZmlsZSBub24gdHJhY2NpYXRpIGRhbGxhIHZvY2Ugc3Rhc2giCisKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjY2CiBtc2dpZCAiQ2Fubm90IHVuc3RhZ2UgbW9kaWZpZWQgZmlsZXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAiTm9uIMOoIHN0YXRvIHBvc3NpYmlsZSByaW11b3ZlcmUgaSBmaWxlIG1vZGlmaWNhdGkgZGFsbCdhcmVhIGRpIHN0YWdpbmciCiAKLSM6IGdpdC1zdGFzaC5zaDo0NzQKLW1zZ2lkICJJbmRleCB3YXMgbm90IHVuc3Rhc2hlZC4iCi1tc2dzdHIgIiIKLQotIzogZ2l0LXN0YXNoLnNoOjQ5MQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDQKICMsIHNoLWZvcm1hdAogbXNnaWQgIkRyb3BwZWQgJHtSRVZ9ICgkcykiCiBtc2dzdHIgIiR7UkVWfSBlbGltaW5hdGEgKCRzKSIKIAotIzogZ2l0LXN0YXNoLnNoOjQ5MgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiR7UkVWfTogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCiBtc2dzdHIgIiR7UkVWfTogbm9uIMOoIHN0YXRvIHBvc3NpYmlsZSByaW11b3ZlcmUgbGEgdm9jZSBkaSBzdGFzaCIKIAotIzogZ2l0LXN0YXNoLnNoOjQ5OQotbXNnaWQgIk5vIGJyYW5jaCBuYW1lIHNwZWNpZmllZCIKLW1zZ3N0ciAiTm9tZSBkZWwgYnJhbmNoIG5vbiBzcGVjaWZpY2F0byIKLQotIzogZ2l0LXN0YXNoLnNoOjU3MAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3OTIKIG1zZ2lkICIoVG8gcmVzdG9yZSB0aGVtIHR5cGUgXCJnaXQgc3Rhc2ggYXBwbHlcIikiCiBtc2dzdHIgIihQZXIgcmlwcmlzdGluYXJsaSBkaWdpdGEgXCJnaXQgc3Rhc2ggYXBwbHlcIikiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTYKLSMsIHNoLWZvcm1hdAotbXNnaWQgImNhbm5vdCBzdHJpcCBvbmUgY29tcG9uZW50IG9mZiB1cmwgJyRyZW1vdGV1cmwnIgorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMDMKK21zZ2lkICJSZWxhdGl2ZSBwYXRoIGNhbiBvbmx5IGJlIHVzZWQgZnJvbSB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiIgorIklsIHBlcmNvcnNvIHJlbGF0aXZvIHB1w7IgZXNzZXJlIHVzYXRvIHNvbG8gZGFsIHByaW1vIGxpdmVsbG8gZGVsbCdhbGJlcm8gZGkgIgorImxhdm9ybyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoxMDkKLSMsIHNoLWZvcm1hdAotbXNnaWQgIk5vIHN1Ym1vZHVsZSBtYXBwaW5nIGZvdW5kIGluIC5naXRtb2R1bGVzIGZvciBwYXRoICckc21fcGF0aCciCi1tc2dzdHIgIiIKLQotIzogZ2l0LXN1Ym1vZHVsZS5zaDoxNTAKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkNsb25lIG9mICckdXJsJyBpbnRvIHN1Ym1vZHVsZSBwYXRoICckc21fcGF0aCcgZmFpbGVkIgotbXNnc3RyICIiCi0KLSM6IGdpdC1zdWJtb2R1bGUuc2g6MTYwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJHaXRkaXIgJyRhJyBpcyBwYXJ0IG9mIHRoZSBzdWJtb2R1bGUgcGF0aCAnJGInIG9yIHZpY2UgdmVyc2EiCi1tc2dzdHIgIiIKLQotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNDkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjEzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJyZXBvIFVSTDogJyRyZXBvJyBtdXN0IGJlIGFic29sdXRlIG9yIGJlZ2luIHdpdGggLi98Li4vIgotbXNnc3RyICJyZXBvIFVSTDogJyRyZXBvJyBkZXZlIGVzc2VyZSBhc3NvbHV0byBvIGluaXppYXJlIGNvbiAuL3wuLi8iCittc2dzdHIgIlVSTCByZXBvc2l0b3J5OjogJyRyZXBvJyBkZXZlIGVzc2VyZSBhc3NvbHV0byBvIGluaXppYXJlIGNvbiAuL3wuLi8iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjY2CisjOiBnaXQtc3VibW9kdWxlLnNoOjIzMgogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXgiCi1tc2dzdHIgIickc21fcGF0aCcgZXNpc3RlIGdpw6AgaW4gaW5kZXgiCittc2dzdHIgIickc21fcGF0aCcgZXNpc3RlIGdpw6AgbmVsbCdpbmRpY2UiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjcwCisjOiBnaXQtc3VibW9kdWxlLnNoOjIzNQogIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIlRoZSBmb2xsb3dpbmcgcGF0aCBpcyBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCi0iJHNtX3BhdGhcbiIKLSJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCBpdC4iCi1tc2dzdHIgIiIKLSJJbCBzZWd1ZW50ZSBwYXRoIMOoIGlnbm9yYXRvIGRhIHVubyBkZWkgdHVvaSBmaWxlIC5naXRpZ25vcmU6XG4iCi0iJHNtX3BhdGhcbiIKLSJVc2EgLWYgc2UgdnVvaSBkYXZ2ZXJvIGFnZ2l1bmdlcmxvLiIKK21zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGluIHRoZSBpbmRleCBhbmQgaXMgbm90IGEgc3VibW9kdWxlIgorbXNnc3RyICInJHNtX3BhdGgnIGVzaXN0ZSBnacOgIG5lbGwnaW5kaWNlIGUgbm9uIMOoIHVuIHNvdHRvbW9kdWxvIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI4MQorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNDIKKyMsIHNoLWZvcm1hdAorbXNnaWQgIickc21fcGF0aCcgZG9lcyBub3QgaGF2ZSBhIGNvbW1pdCBjaGVja2VkIG91dCIKK21zZ3N0ciAiJyRzbV9wYXRoJyBub24gaGEgdW4gY29tbWl0IGRpIGN1aSDDqCBzdGF0byBlc2VndWl0byBpbCBjaGVja291dCIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzMKICMsIHNoLWZvcm1hdAogbXNnaWQgIkFkZGluZyBleGlzdGluZyByZXBvIGF0ICckc21fcGF0aCcgdG8gdGhlIGluZGV4IgotbXNnc3RyICIiCittc2dzdHIgIkFnZ2l1bnRhIGRlbCByZXBvc2l0b3J5IGVzaXN0ZW50ZSBpbiAnJHNtX3BhdGgnIGFsbCdpbmRpY2UiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjc1CisjLCBzaC1mb3JtYXQKK21zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYSB2YWxpZCBnaXQgcmVwbyIKK21zZ3N0ciAiJyRzbV9wYXRoJyBlc2lzdGUgZ2nDoCBlIG5vbiDDqCB1biByZXBvc2l0b3J5IEdpdCB2YWxpZG8iCiAKICM6IGdpdC1zdWJtb2R1bGUuc2g6MjgzCiAjLCBzaC1mb3JtYXQKLW1zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYSB2YWxpZCBnaXQgcmVwbyIKLW1zZ3N0ciAiJyRzbV9wYXRoJyBlc2lzdGUgZ2nDoCBlIG5vbiDDqCB1biByZXBvc2l0b3J5IGdpdCB2YWxpZG8iCi0KLSM6IGdpdC1zdWJtb2R1bGUuc2g6Mjk3Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJVbmFibGUgdG8gY2hlY2tvdXQgc3VibW9kdWxlICckc21fcGF0aCciCittc2dpZCAiQSBnaXQgZGlyZWN0b3J5IGZvciAnJHNtX25hbWUnIGlzIGZvdW5kIGxvY2FsbHkgd2l0aCByZW1vdGUocyk6IgogbXNnc3RyICIiCisiw4ggc3RhdGEgdHJvdmF0YSBsb2NhbG1lbnRlIHVuYSBkaXJlY3RvcnkgR2l0IHBlciAnJHNtX25hbWUnIGNvbiBpIHNlZ3VlbnRpICIKKyJyZW1vdGk6IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjMwMgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIGFkZCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtc3VibW9kdWxlLnNoOjMwNwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgotbXNnc3RyICIiCi0KLSM6IGdpdC1zdWJtb2R1bGUuc2g6MzQ5Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJFbnRlcmluZyAnJHByZWZpeCRzbV9wYXRoJyIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtc3VibW9kdWxlLnNoOjM2MwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiU3RvcHBpbmcgYXQgJyRzbV9wYXRoJzsgc2NyaXB0IHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cy4iCi1tc2dzdHIgIiIKLSJJbnRlcnJ1emlvbmUgYSAnJHNtX3BhdGgnOyBsbyBzY3JpcHQgaGEgcmVzdGl0dWl0byB1bm8gc3RhdG8gZGl2ZXJzbyBkYSB6ZXJvLiIKLQotIzogZ2l0LXN1Ym1vZHVsZS5zaDo0MDYKLSMsIHNoLWZvcm1hdAotbXNnaWQgIk5vIHVybCBmb3VuZCBmb3Igc3VibW9kdWxlIHBhdGggJyRzbV9wYXRoJyBpbiAuZ2l0bW9kdWxlcyIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtc3VibW9kdWxlLnNoOjQxNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHVybCBmb3Igc3VibW9kdWxlIHBhdGggJyRzbV9wYXRoJyIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtc3VibW9kdWxlLnNoOjQxNwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiU3VibW9kdWxlICckbmFtZScgKCR1cmwpIHJlZ2lzdGVyZWQgZm9yIHBhdGggJyRzbV9wYXRoJyIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtc3VibW9kdWxlLnNoOjQyNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHVwZGF0ZSBtb2RlIGZvciBzdWJtb2R1bGUgcGF0aCAnJHNtX3BhdGgnIgotbXNnc3RyICIiCi0KLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTI0CisjOiBnaXQtc3VibW9kdWxlLnNoOjI4NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgotIlN1Ym1vZHVsZSBwYXRoICckc21fcGF0aCcgbm90IGluaXRpYWxpemVkXG4iCi0iTWF5YmUgeW91IHdhbnQgdG8gdXNlICd1cGRhdGUgLS1pbml0Jz8iCisiSWYgeW91IHdhbnQgdG8gcmV1c2UgdGhpcyBsb2NhbCBnaXQgZGlyZWN0b3J5IGluc3RlYWQgb2YgY2xvbmluZyBhZ2FpbiBmcm9tXG4iCisiICAkcmVhbHJlcG9cbiIKKyJ1c2UgdGhlICctLWZvcmNlJyBvcHRpb24uIElmIHRoZSBsb2NhbCBnaXQgZGlyZWN0b3J5IGlzIG5vdCB0aGUgY29ycmVjdCAiCisicmVwb1xuIgorIm9yIHlvdSBhcmUgdW5zdXJlIHdoYXQgdGhpcyBtZWFucyBjaG9vc2UgYW5vdGhlciBuYW1lIHdpdGggdGhlICctLW5hbWUnICIKKyJvcHRpb24uIgogbXNnc3RyICIiCisiU2UgdnVvaSByaXVzYXJlIHF1ZXN0YSBkaXJlY3RvcnkgR2l0IGxvY2FsZSBhbnppY2jDqSBjbG9uYXJsYSBudW92YW1lbnRlIGRhXG4iCisiICAkcmVhbHJlcG9cbiIKKyJ1c2EgbCdvcHppb25lICctLWZvcmNlJy4gU2UgbGEgZGlyZWN0b3J5IEdpdCBsb2NhbGUgbm9uIMOoIGlsIHJlcG9zaXRvcnlcbiIKKyJjb3JyZXR0bywgbyBzZSBub24gc2VpIHNpY3VybyBkaSBjacOyIGNoZSBxdWVzdG8gdm9nbGlhIGRpcmUsIHNjZWdsaSB1biAiCisiYWx0cm9cbiIKKyJub21lIGNvbiBsJ29wemlvbmUgJy0tbmFtZScuIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjUzNworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTEKICMsIHNoLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBmaW5kIGN1cnJlbnQgcmV2aXNpb24gaW4gc3VibW9kdWxlIHBhdGggJyRzbV9wYXRoJyIKLW1zZ3N0ciAiIgorbXNnaWQgIlJlYWN0aXZhdGluZyBsb2NhbCBnaXQgZGlyZWN0b3J5IGZvciBzdWJtb2R1bGUgJyRzbV9uYW1lJy4iCittc2dzdHIgIlJpYXR0aXZvIGxhIGRpcmVjdG9yeSBHaXQgbG9jYWxlIHBlciBpbCBzb3R0b21vZHVsbyAnJHNtX25hbWUnLiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NTYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MzAzCisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gY2hlY2tvdXQgc3VibW9kdWxlICckc21fcGF0aCciCittc2dzdHIgIkltcG9zc2liaWxlIGVzZWd1aXJlIGlsIGNoZWNrb3V0IGRlbCBzb3R0b21vZHVsbyAnJHNtX3BhdGgnIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjMwOAorIywgc2gtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIGFkZCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKK21zZ3N0ciAiQWdnaXVudGEgZGVsIHNvdHRvbW9kdWxvICckc21fcGF0aCcgbm9uIHJpdXNjaXRhIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjMxNworIywgc2gtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgorbXNnc3RyICJSZWdpc3RyYXppb25lIGRlbCBzb3R0b21vZHVsbyAnJHNtX3BhdGgnIG5vbiByaXVzY2l0YSIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo1OTAKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBmaW5kIGN1cnJlbnQgcmV2aXNpb24gaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSB0cm92YXJlIGxhIHJldmlzaW9uZSBjb3JyZW50ZSBuZWwgcGVyY29yc28gZGVsIHNvdHRvbW9kdWxvICIKKyInJGRpc3BsYXlwYXRoJyIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDAKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJHNtX3BhdGgnIgotbXNnc3RyICIiCittc2dzdHIgIkltcG9zc2liaWxlIGVzZWd1aXJlIGlsIGZldGNoIG5lbCBwZXJjb3JzbyBkZWwgc290dG9tb2R1bG8gJyRzbV9wYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NzAKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjA1CiAjLCBzaC1mb3JtYXQKLW1zZ2lkICJVbmFibGUgdG8gcmViYXNlICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRzbV9wYXRoJyIKK21zZ2lkICIiCisiVW5hYmxlIHRvIGZpbmQgY3VycmVudCAke3JlbW90ZV9uYW1lfS8ke2JyYW5jaH0gcmV2aXNpb24gaW4gc3VibW9kdWxlIHBhdGggIgorIickc21fcGF0aCciCiBtc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSB0cm92YXJlIGxhIHJldmlzaW9uZSBjb3JyZW50ZSBwZXIgJHtyZW1vdGVfbmFtZX0vJHticmFuY2h9IG5lbCAiCisicGVyY29yc28gZGVsIHNvdHRvbW9kdWxvICckc21fcGF0aCciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTcxCisjOiBnaXQtc3VibW9kdWxlLnNoOjYyMwogIywgc2gtZm9ybWF0Ci1tc2dpZCAiU3VibW9kdWxlIHBhdGggJyRzbV9wYXRoJzogcmViYXNlZCBpbnRvICckc2hhMSciCittc2dpZCAiIgorIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzsgdHJ5aW5nIHRvIGRpcmVjdGx5IGZldGNoICIKKyIkc2hhMToiCiBtc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBmZXRjaCBuZWwgcGVyY29yc28gZGVsIHNvdHRvbW9kdWxvICckZGlzcGxheXBhdGgnOyAiCisicHJvdm8gYSByZWN1cGVyYXJlIGRpcmV0dGFtZW50ZSAkc2hhMToiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTc2CisjOiBnaXQtc3VibW9kdWxlLnNoOjYyOQogIywgc2gtZm9ybWF0Ci1tc2dpZCAiVW5hYmxlIHRvIG1lcmdlICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRzbV9wYXRoJyIKK21zZ2lkICIiCisiRmV0Y2hlZCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJywgYnV0IGl0IGRpZCBub3QgY29udGFpbiAkc2hhMS4gIgorIkRpcmVjdCBmZXRjaGluZyBvZiB0aGF0IGNvbW1pdCBmYWlsZWQuIgogbXNnc3RyICIiCisiRmV0Y2ggZXNlZ3VpdG8gbmVsIHBlcmNvcnNvIGRlbCBzb3R0b21vZHVsbyAnJGRpc3BsYXlwYXRoJywgbWEgbm9uIGNvbnRlbmV2YSAiCisiJHNoYTEuIEZldGNoIGRpcmV0dG8gZGkgdGFsZSBjb21taXQgbm9uIHJpdXNjaXRvLiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NzcKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjM2CiAjLCBzaC1mb3JtYXQKLW1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJHNtX3BhdGgnOiBtZXJnZWQgaW4gJyRzaGExJyIKK21zZ2lkICJVbmFibGUgdG8gY2hlY2tvdXQgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiIgorIkltcG9zc2liaWxlIGVzZWd1aXJlIGlsIGNoZWNrb3V0IGRpICckc2hhMScgbmVsIHBlcmNvcnNvIGRlbCBzb3R0b21vZHVsbyAiCisiJyRkaXNwbGF5cGF0aCciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTgyCisjOiBnaXQtc3VibW9kdWxlLnNoOjYzNwogIywgc2gtZm9ybWF0Ci1tc2dpZCAiVW5hYmxlIHRvIGNoZWNrb3V0ICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRzbV9wYXRoJyIKLW1zZ3N0ciAiIgorbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiBjaGVja2VkIG91dCAnJHNoYTEnIgorbXNnc3RyICJQZXJjb3JzbyBkZWwgc290dG9tb2R1bG8gJyRkaXNwbGF5cGF0aCc6IGVzZWd1aXRvIGNoZWNrb3V0IGRpICckc2hhMSciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTgzCisjOiBnaXQtc3VibW9kdWxlLnNoOjY0MQogIywgc2gtZm9ybWF0Ci1tc2dpZCAiU3VibW9kdWxlIHBhdGggJyRzbV9wYXRoJzogY2hlY2tlZCBvdXQgJyRzaGExJyIKK21zZ2lkICJVbmFibGUgdG8gcmViYXNlICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBlc2VndWlyZSBpbCByZWJhc2UgZGkgJyRzaGExJyBuZWwgcGVyY29yc28gZGVsIHNvdHRvbW9kdWxvICIKKyInJGRpc3BsYXlwYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDUgZ2l0LXN1Ym1vZHVsZS5zaDo5MjgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQyCiAjLCBzaC1mb3JtYXQKLW1zZ2lkICJGYWlsZWQgdG8gcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSBwYXRoICckc21fcGF0aCciCittc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IHJlYmFzZWQgaW50byAnJHNoYTEnIgorbXNnc3RyICJQZXJjb3JzbyBkZWwgc290dG9tb2R1bG8gJyRkaXNwbGF5cGF0aCc6IGVzZWd1aXRvIHJlYmFzZSBzdSAnJHNoYTEnIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjY0NworIywgc2gtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIG1lcmdlICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBtZXJnZSBkaSAnJHNoYTEnIG5lbCBwZXJjb3JzbyBkZWwgc290dG9tb2R1bG8gIgorIickZGlzcGxheXBhdGgnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjcxMwotbXNnaWQgIi0tY2FjaGVkIGNhbm5vdCBiZSB1c2VkIHdpdGggLS1maWxlcyIKLW1zZ3N0ciAiLS1jYWNoZWQgbm9uIHB1w7IgZXNzZXJlIHVzYXRhIGNvbiAtLWZpbGVzIgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDgKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiBtZXJnZWQgaW4gJyRzaGExJyIKK21zZ3N0ciAiUGVyY29yc28gZGVsIHNvdHRvbW9kdWxvICckZGlzcGxheXBhdGgnOiBlc2VndWl0byBtZXJnZSBpbiAnJHNoYTEnIgogCi0jLiB1bmV4cGVjdGVkIHR5cGUKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NzUzCisjOiBnaXQtc3VibW9kdWxlLnNoOjY1MworIywgc2gtZm9ybWF0Cittc2dpZCAiRXhlY3V0aW9uIG9mICckY29tbWFuZCAkc2hhMScgZmFpbGVkIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgorbXNnc3RyICIiCisiRXNlY3V6aW9uZSBkaSAnJGNvbW1hbmQgJHNoYTEnIG5vbiByaXVzY2l0YSBuZWwgcGVyY29yc28gZGVsIHNvdHRvbW9kdWxvICIKKyInJGRpc3BsYXlwYXRoJyIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NTQKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiAnJGNvbW1hbmQgJHNoYTEnIgorbXNnc3RyICJQZXJjb3JzbyBkZWwgc290dG9tb2R1bG8gJyRkaXNwbGF5cGF0aCc6ICckY29tbWFuZCAkc2hhMSciCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Njg1CisjLCBzaC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgorbXNnc3RyICJSaWNvcnNpb25lIG5lbCBwZXJjb3JzbyBkZWwgc290dG9tb2R1bG8gJyRkaXNwbGF5cGF0aCcgbm9uIHJpdXNjaXRhIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjg5NgorbXNnaWQgIlRoZSAtLWNhY2hlZCBvcHRpb24gY2Fubm90IGJlIHVzZWQgd2l0aCB0aGUgLS1maWxlcyBvcHRpb24iCittc2dzdHIgIkwnb3B6aW9uZSAtLWNhY2hlZCBub24gcHXDsiBlc3NlcmUgdXNhdGEgY29uIGwnb3B6aW9uZSAtLWZpbGVzIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjk0OAogIywgc2gtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBtb2RlICRtb2RfZHN0IgogbXNnc3RyICJtb2RhbGl0w6AgJG1vZF9kc3QgaW5hdHRlc2EiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NzcxCisjOiBnaXQtc3VibW9kdWxlLnNoOjk2OAogIywgc2gtZm9ybWF0Ci1tc2dpZCAiICBXYXJuOiAkbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX3NyYyIKLW1zZ3N0ciAiICBBdHRlbnppb25lOiAkbmFtZSBub24gY29udGllbmUgY29tbWl0ICRzaGExX3NyYyIKK21zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdCAkc2hhMV9zcmMiCittc2dzdHIgIiAgQXR0ZW56aW9uZTogJGRpc3BsYXlfbmFtZSBub24gY29udGllbmUgaWwgY29tbWl0ICRzaGExX3NyYyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo3NzQKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTcxCiAjLCBzaC1mb3JtYXQKLW1zZ2lkICIgIFdhcm46ICRuYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXQgJHNoYTFfZHN0IgotbXNnc3RyICIgIEF0dGVuemlvbmU6ICRuYW1lIG5vbiBjb250aWVuZSBjb21taXQgJHNoYTFfZHN0IgotCi0jOiBnaXQtc3VibW9kdWxlLnNoOjc3NwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiICBXYXJuOiAkbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0cyAkc2hhMV9zcmMgYW5kICRzaGExX2RzdCIKLW1zZ3N0ciAiICBBdHRlbnppb25lOiAkbmFtZSBub24gY29udGllbmUgY29tbWl0ICRzaGExX3NyYyBlICRzaGExX2RzdCIKLQotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MDIKLW1zZ2lkICJibG9iIgotbXNnc3RyICJibG9iIgotCi0jOiBnaXQtc3VibW9kdWxlLnNoOjgwMwotbXNnaWQgInN1Ym1vZHVsZSIKLW1zZ3N0ciAic290dG9tb2R1bG8iCi0KLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODQwCi1tc2dpZCAiIyBTdWJtb2R1bGVzIGNoYW5nZWQgYnV0IG5vdCB1cGRhdGVkOiIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtc3VibW9kdWxlLnNoOjg0MgotbXNnaWQgIiMgU3VibW9kdWxlIGNoYW5nZXMgdG8gYmUgY29tbWl0dGVkOiIKLW1zZ3N0ciAiIgorbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX2RzdCIKK21zZ3N0ciAiICBBdHRlbnppb25lOiAkZGlzcGxheV9uYW1lIG5vbiBjb250aWVuZSBpbCBjb21taXQgJHNoYTFfZHN0IgogCiAjOiBnaXQtc3VibW9kdWxlLnNoOjk3NAogIywgc2gtZm9ybWF0Ci1tc2dpZCAiU3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIGZvciAnJG5hbWUnIgorbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0cyAkc2hhMV9zcmMgYW5kICRzaGExX2RzdCIKIG1zZ3N0ciAiIgorIiAgQXR0ZW56aW9uZTogJGRpc3BsYXlfbmFtZSBub24gY29udGllbmUgaSBjb21taXQgJHNoYTFfc3JjIGUgJHNoYTFfZHN0IgorCisjOiBnaXQtcGFyc2UtcmVtb3RlLnNoOjg5CisjLCBzaC1mb3JtYXQKK21zZ2lkICJTZWUgZ2l0LSR7Y21kfSgxKSBmb3IgZGV0YWlscy4iCittc2dzdHIgIlZlZGkgZ2l0LSR7Y21kfSgxKSBwZXIgdWx0ZXJpb3JpIGRldHRhZ2xpLiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEwOQorbXNnaWQgIkFwcGxpZWQgYXV0b3N0YXNoLiIKK21zZ3N0ciAiU3Rhc2ggYXV0b21hdGljbyBhcHBsaWNhdG8uIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTEyCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3Qgc3RvcmUgJHN0YXNoX3NoYTEiCittc2dzdHIgIkltcG9zc2liaWxlIG1lbW9yaXp6YXJlICRzdGFzaF9zaGExIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTkxCisjLCBzaC1mb3JtYXQKK21zZ2lkICJSZWJhc2luZyAoJG5ld19jb3VudC8kdG90YWwpIgorbXNnc3RyICJSZWJhc2UgaW4gY29yc28gKCRuZXdfY291bnQvJHRvdGFsKSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIwNworbXNnaWQgIiIKKyJcbiIKKyJDb21tYW5kczpcbiIKKyJwLCBwaWNrIDxjb21taXQ+ID0gdXNlIGNvbW1pdFxuIgorInIsIHJld29yZCA8Y29tbWl0PiA9IHVzZSBjb21taXQsIGJ1dCBlZGl0IHRoZSBjb21taXQgbWVzc2FnZVxuIgorImUsIGVkaXQgPGNvbW1pdD4gPSB1c2UgY29tbWl0LCBidXQgc3RvcCBmb3IgYW1lbmRpbmdcbiIKKyJzLCBzcXVhc2ggPGNvbW1pdD4gPSB1c2UgY29tbWl0LCBidXQgbWVsZCBpbnRvIHByZXZpb3VzIGNvbW1pdFxuIgorImYsIGZpeHVwIDxjb21taXQ+ID0gbGlrZSBcInNxdWFzaFwiLCBidXQgZGlzY2FyZCB0aGlzIGNvbW1pdCdzIGxvZyBtZXNzYWdlXG4iCisieCwgZXhlYyA8Y29tbWl0PiA9IHJ1biBjb21tYW5kICh0aGUgcmVzdCBvZiB0aGUgbGluZSkgdXNpbmcgc2hlbGxcbiIKKyJkLCBkcm9wIDxjb21taXQ+ID0gcmVtb3ZlIGNvbW1pdFxuIgorImwsIGxhYmVsIDxsYWJlbD4gPSBsYWJlbCBjdXJyZW50IEhFQUQgd2l0aCBhIG5hbWVcbiIKKyJ0LCByZXNldCA8bGFiZWw+ID0gcmVzZXQgSEVBRCB0byBhIGxhYmVsXG4iCisibSwgbWVyZ2UgWy1DIDxjb21taXQ+IHwgLWMgPGNvbW1pdD5dIDxsYWJlbD4gWyMgPG9uZWxpbmU+XVxuIgorIi4gICAgICAgY3JlYXRlIGEgbWVyZ2UgY29tbWl0IHVzaW5nIHRoZSBvcmlnaW5hbCBtZXJnZSBjb21taXQnc1xuIgorIi4gICAgICAgbWVzc2FnZSAob3IgdGhlIG9uZWxpbmUsIGlmIG5vIG9yaWdpbmFsIG1lcmdlIGNvbW1pdCB3YXNcbiIKKyIuICAgICAgIHNwZWNpZmllZCkuIFVzZSAtYyA8Y29tbWl0PiB0byByZXdvcmQgdGhlIGNvbW1pdCBtZXNzYWdlLlxuIgorIlxuIgorIlRoZXNlIGxpbmVzIGNhbiBiZSByZS1vcmRlcmVkOyB0aGV5IGFyZSBleGVjdXRlZCBmcm9tIHRvcCB0byBib3R0b20uXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb21hbmRpOlxuIgorInAsIHBpY2sgPGNvbW1pdD4gPSB1c2EgaWwgY29tbWl0XG4iCisiciwgcmV3b3JkIDxjb21taXQ+ID0gdXNhIGlsIGNvbW1pdCwgbWEgbW9kaWZpY2EgaWwgbWVzc2FnZ2lvIGRpIGNvbW1pdFxuIgorImUsIGVkaXQgPGNvbW1pdD4gPSB1c2EgaWwgY29tbWl0LCBtYSBmZXJtYXRpIHBlciBtb2RpZmljYXJsb1xuIgorInMsIHNxdWFzaCA8Y29tbWl0PiA9IHVzYSBpbCBjb21taXQsIG1hIGZvbmRpbG8gY29uIGlsIGNvbW1pdCBwcmVjZWRlbnRlXG4iCisiZiwgZml4dXAgPGNvbW1pdD4gPSBjb21lIFwic3F1YXNoXCIsIG1hIHNjYXJ0YSBpbCBtZXNzYWdnaW8gZGkgbG9nIGRpICIKKyJxdWVzdG9cbiIKKyIgICAgICAgICAgICAgICAgICAgIGNvbW1pdFxuIgorIngsIGV4ZWMgPGNvbWFuZG8+ID0gZXNlZ3VpIGlsIGNvbWFuZG8gKGlsIHJlc3RvIGRlbGxhIHJpZ2EpIHVzYW5kbyBsYSBzaGVsbFxuIgorImQsIGRyb3AgPGNvbW1pdD4gPSBlbGltaW5hIGlsIGNvbW1pdFxuIgorImwsIGxhYmVsIDxldGljaGV0dGE+ID0gZXRpY2hldHRhIGwnSEVBRCBjb3JyZW50ZSBjb24gdW4gbm9tZVxuIgorInQsIHJlc2V0IDxldGljaGV0dGE+ID0gcmVpbXBvc3RhIEhFQUQgYSB1bidldGljaGV0dGFcbiIKKyJtLCBtZXJnZSBbLUMgPGNvbW1pdD4gfCAtYyA8Y29tbWl0Pl0gPGV0aWNoZXR0YT4gWyMgPG9uZWxpbmU+XVxuIgorIi4gICAgICAgY3JlYSB1biBjb21taXQgZGkgbWVyZ2UgdXNhbmRvIGlsIG1lc3NhZ2dpbyBkZWwgY29tbWl0IGRpIG1lcmdlXG4iCisiLiAgICAgICBvcmlnaW5hbGUgKG8gbGEgb25lbGluZSBzZSBub24gw6ggc3RhdG8gc3BlY2lmaWNhdG8gdW4gY29tbWl0IGRpICIKKyJtZXJnZVxuIgorIi4gICAgICAgb3JpZ2luYWxlKS4gVXNhIC1jIDxjb21taXQ+IHBlciByaWZvcm11bGFyZSBpbCBtZXNzYWdnaW8gZGkgY29tbWl0LlxuIgorIlxuIgorIlF1ZXN0ZSByaWdoZSBwb3Nzb25vIGVzc2VyZSByaW9yZGluYXRlOyBzYXJhbm5vIGVzZWd1aXRlIGRhbGxhIHByaW1hICIKKyJhbGwndWx0aW1hLlxuIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjcwCisjLCBzaC1mb3JtYXQKK21zZ2lkICIiCisiWW91IGNhbiBhbWVuZCB0aGUgY29tbWl0IG5vdywgd2l0aFxuIgorIlxuIgorIlx0Z2l0IGNvbW1pdCAtLWFtZW5kICRncGdfc2lnbl9vcHRfcXVvdGVkXG4iCisiXG4iCisiT25jZSB5b3UgYXJlIHNhdGlzZmllZCB3aXRoIHlvdXIgY2hhbmdlcywgcnVuXG4iCisiXG4iCisiXHRnaXQgcmViYXNlIC0tY29udGludWUiCittc2dzdHIgIiIKKyLDiCBwb3NzaWJpbGUgbW9kaWZpY2FyZSBpbCBjb21taXQgb3JhIGNvblxuIgorIlxuIgorIlx0Z2l0IGNvbW1pdCAtLWFtZW5kICRncGdfc2lnbl9vcHRfcXVvdGVkXG4iCisiXG4iCisiUXVhbmRvIHNlaSBzb2RkaXNmYXR0byBkZWxsZSBtb2RpZmljaGUsIGVzZWd1aVxuIgorIlxuIgorIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mjk1CisjLCBzaC1mb3JtYXQKK21zZ2lkICIkc2hhMTogbm90IGEgY29tbWl0IHRoYXQgY2FuIGJlIHBpY2tlZCIKK21zZ3N0ciAiJHNoYTE6IG5vbiDDqCB1biBjb21taXQgY2hlIHBvc3NhIGVzc2VyZSBzY2VsdG8iCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozMzQKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkludmFsaWQgY29tbWl0IG5hbWU6ICRzaGExIgorbXNnc3RyICJOb21lIGNvbW1pdCBub24gdmFsaWRvOiAkc2hhMSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2NAorbXNnaWQgIkNhbm5vdCB3cml0ZSBjdXJyZW50IGNvbW1pdCdzIHJlcGxhY2VtZW50IHNoYTEiCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBzY3JpdmVyZSBsbyBTSEExIGRlbCBjb21taXQgY2hlIGRvdnJlYmJlIHNvc3RpdHVpcmUgcXVlbGxvICIKKyJjb3JyZW50ZSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNQorIywgc2gtZm9ybWF0Cittc2dpZCAiRmFzdC1mb3J3YXJkIHRvICRzaGExIgorbXNnc3RyICJGYXN0IGZvcndhcmQgYSAkc2hhMSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNworIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90IGZhc3QtZm9yd2FyZCB0byAkc2hhMSIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgZmFzdCBmb3J3YXJkIGEgJHNoYTEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MjYKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBtb3ZlIEhFQUQgdG8gJGZpcnN0X3BhcmVudCIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgc3Bvc3RhcmUgbCdIRUFEIGEgJGZpcnN0X3BhcmVudCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQzMQorIywgc2gtZm9ybWF0Cittc2dpZCAiUmVmdXNpbmcgdG8gc3F1YXNoIGEgbWVyZ2U6ICRzaGExIgorbXNnc3RyICJNaSByaWZpdXRvIGRpIGVzZWd1aXJlIGxvIHNxdWFzaCBkaSB1biBtZXJnZTogJHNoYTEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NDkKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkVycm9yIHJlZG9pbmcgbWVyZ2UgJHNoYTEiCittc2dzdHIgIkVycm9yZSBkdXJhbnRlIGxhIHJpZXNlY3V6aW9uZSBkZWwgbWVyZ2UgZGkgJHNoYTEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NTgKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBwaWNrICRzaGExIgorbXNnc3RyICJJbXBvc3NpYmlsZSBzY2VnbGllcmUgJHNoYTEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NjcKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlRoaXMgaXMgdGhlIGNvbW1pdCBtZXNzYWdlICMke259OiIKK21zZ3N0ciAiUXVlc3RvIMOoIGlsIG1lc3NhZ2dpbyBkaSBjb21taXQgbnVtZXJvICR7bn06IgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDcyCisjLCBzaC1mb3JtYXQKK21zZ2lkICJUaGUgY29tbWl0IG1lc3NhZ2UgIyR7bn0gd2lsbCBiZSBza2lwcGVkOiIKK21zZ3N0ciAiSWwgbWVzc2FnZ2lvIGRpIGNvbW1pdCBudW1lcm8gJHtufSBzYXLDoCBzYWx0YXRvOiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ4MworIywgc2gtZm9ybWF0Cittc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mICRjb3VudCBjb21taXQuIgorbXNnaWRfcGx1cmFsICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJGNvdW50IGNvbW1pdHMuIgorbXNnc3RyWzBdICJRdWVzdGEgw6ggdW5hIGNvbWJpbmF6aW9uZSBkaSAkY291bnQgY29tbWl0LiIKK21zZ3N0clsxXSAiUXVlc3RhIMOoIHVuYSBjb21iaW5hemlvbmUgZGkgJGNvdW50IGNvbW1pdC4iCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0OTIKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCB3cml0ZSAkZml4dXBfbXNnIgorbXNnc3RyICJJbXBvc3NpYmlsZSBzY3JpdmVyZSAkZml4dXBfbXNnIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDk1Cittc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mIDIgY29tbWl0cy4iCittc2dzdHIgIlF1ZXN0YSDDqCB1bmEgY29tYmluYXppb25lIGRpIDIgY29tbWl0LiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjUzNiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTc5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTgyCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgYXBwbHkgJHNoYTEuLi4gJHJlc3QiCittc2dzdHIgIkltcG9zc2liaWxlIGFwcGxpY2FyZSAkc2hhMS4uLiAkcmVzdCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYxMQorIywgc2gtZm9ybWF0Cittc2dpZCAiIgorIkNvdWxkIG5vdCBhbWVuZCBjb21taXQgYWZ0ZXIgc3VjY2Vzc2Z1bGx5IHBpY2tpbmcgJHNoYTEuLi4gJHJlc3RcbiIKKyJUaGlzIGlzIG1vc3QgbGlrZWx5IGR1ZSB0byBhbiBlbXB0eSBjb21taXQgbWVzc2FnZSwgb3IgdGhlIHByZS1jb21taXQgaG9va1xuIgorImZhaWxlZC4gSWYgdGhlIHByZS1jb21taXQgaG9vayBmYWlsZWQsIHlvdSBtYXkgbmVlZCB0byByZXNvbHZlIHRoZSBpc3N1ZSAiCisiYmVmb3JlXG4iCisieW91IGFyZSBhYmxlIHRvIHJld29yZCB0aGUgY29tbWl0LiIKK21zZ3N0ciAiIgorIkltcG9zc2liaWxlIG1vZGlmaWNhcmUgaWwgY29tbWl0IGRvcG8gbGEgc2NlbHRhIGRpICRzaGExLi4uICRyZXN0XG4iCisiTW9sdG8gcHJvYmFiaWxtZW50ZSBxdWVzdG8gw6ggZG92dXRvIGEgdW4gbWVzc2FnZ2lvIGRpIGNvbW1pdCB2dW90bywgb3BwdXJlXG4iCisibCdlc2VjdXppb25lIGRlbGwnaG9vayBkaSBwcmUtY29tbWl0IG5vbiDDqCByaXVzY2l0YS4gSW4gcXVlc3QndWx0aW1vIGNhc28sXG4iCisicG90cmViYmUgZXNzZXJlIG5lY2Vzc2FyaW8gcmlzb2x2ZXJlIGlsIHByb2JsZW1hIGV2aWRlbnppYXRvIHBlciBlc3NlcmUgaW5cbiIKKyJncmFkbyBkaSBtb2RpZmljYXJlIGlsIG1lc3NhZ2dpbyBkaSBjb21taXQuIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjI2CisjLCBzaC1mb3JtYXQKK21zZ2lkICJTdG9wcGVkIGF0ICRzaGExX2FiYnJldi4uLiAkcmVzdCIKK21zZ3N0ciAiRmVybWF0byBhICRzaGExX2FiYnJldi4uLiAkcmVzdCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY0MQorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90ICckc3F1YXNoX3N0eWxlJyB3aXRob3V0IGEgcHJldmlvdXMgY29tbWl0IgorbXNnc3RyICJJbXBvc3NpYmlsZSBlc2VndWlyZSAnJHNxdWFzaF9zdHlsZScgc2VuemEgdW4gY29tbWl0IHByZWNlZGVudGUiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2ODMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkV4ZWN1dGluZzogJHJlc3QiCittc2dzdHIgIkVzZWd1byAkcmVzdCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY5MQorIywgc2gtZm9ybWF0Cittc2dpZCAiRXhlY3V0aW9uIGZhaWxlZDogJHJlc3QiCittc2dzdHIgIkVzZWN1emlvbmUgbm9uIHJpdXNjaXRhOiAkcmVzdCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY5MworbXNnaWQgImFuZCBtYWRlIGNoYW5nZXMgdG8gdGhlIGluZGV4IGFuZC9vciB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICJlIHNvbm8gc3RhdGUgYXBwb3J0YXRlIG1vZGlmaWNoZSBhbGwnaW5kaWNlIGUvbyBhbGwnYWxiZXJvIGRpIGxhdm9ybyIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY5NQorbXNnaWQgIiIKKyJZb3UgY2FuIGZpeCB0aGUgcHJvYmxlbSwgYW5kIHRoZW4gcnVuXG4iCisiXG4iCisiXHRnaXQgcmViYXNlIC0tY29udGludWUiCittc2dzdHIgIiIKKyJQdW9pIGNvcnJlZ2dlcmUgaWwgcHJvYmxlbWEgZSBxdWluZGkgZXNlZ3VpcmVcbiIKKyJcbiIKKyJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKKworIy4gVFJBTlNMQVRPUlM6IGFmdGVyIHRoZXNlIGxpbmVzIGlzIGEgY29tbWFuZCB0byBiZSBpc3N1ZWQgYnkgdGhlIHVzZXIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MDgKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiIKKyJFeGVjdXRpb24gc3VjY2VlZGVkOiAkcmVzdFxuIgorImJ1dCBsZWZ0IGNoYW5nZXMgdG8gdGhlIGluZGV4IGFuZC9vciB0aGUgd29ya2luZyB0cmVlXG4iCisiQ29tbWl0IG9yIHN0YXNoIHlvdXIgY2hhbmdlcywgYW5kIHRoZW4gcnVuXG4iCisiXG4iCisiXHRnaXQgcmViYXNlIC0tY29udGludWUiCittc2dzdHIgIiIKKyJFc2VjdXppb25lIHJpdXNjaXRhOiAkcmVzdFxuIgorIm1hIHNvbm8gc3RhdGUgbWFudGVudXRlIG1vZGlmaWNoZSBhbGwnaW5kaWNlIGUvbyBhbGwnYWxiZXJvIGRpIGxhdm9yb1xuIgorIkVzZWd1aSBpbCBjb21taXQgbyBsbyBzdGFzaCBkZWxsZSBtb2RpZmljaGUsIHF1aW5kaSBlc2VndWlcbiIKKyJcbiIKKyJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcxOQorIywgc2gtZm9ybWF0Cittc2dpZCAiVW5rbm93biBjb21tYW5kOiAkY29tbWFuZCAkc2hhMSAkcmVzdCIKK21zZ3N0ciAiQ29tYW5kbyBzY29ub3NjaXV0bzogJGNvbW1hbmQgJHNoYTEgJHJlc3QiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MjAKK21zZ2lkICJQbGVhc2UgZml4IHRoaXMgdXNpbmcgJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nLiIKK21zZ3N0ciAiQ29ycmVnZ2kgbGEgc2l0dWF6aW9uZSB1c2FuZG8gJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nLiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc1NQorIywgc2gtZm9ybWF0Cittc2dpZCAiU3VjY2Vzc2Z1bGx5IHJlYmFzZWQgYW5kIHVwZGF0ZWQgJGhlYWRfbmFtZS4iCittc2dzdHIgIlJlYmFzZSBlIGFnZ2lvcm5hbWVudG8gZGkgJGhlYWRfbmFtZSBlc2VndWl0aSBjb24gc3VjY2Vzc28uIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODEyCittc2dpZCAiQ291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaW11b3ZlcmUgQ0hFUlJZX1BJQ0tfSEVBRCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgxNworIywgc2gtZm9ybWF0Cittc2dpZCAiIgorIllvdSBoYXZlIHN0YWdlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLlxuIgorIklmIHRoZXNlIGNoYW5nZXMgYXJlIG1lYW50IHRvIGJlXG4iCisic3F1YXNoZWQgaW50byB0aGUgcHJldmlvdXMgY29tbWl0LCBydW46XG4iCisiXG4iCisiICBnaXQgY29tbWl0IC0tYW1lbmQgJGdwZ19zaWduX29wdF9xdW90ZWRcbiIKKyJcbiIKKyJJZiB0aGV5IGFyZSBtZWFudCB0byBnbyBpbnRvIGEgbmV3IGNvbW1pdCwgcnVuOlxuIgorIlxuIgorIiAgZ2l0IGNvbW1pdCAkZ3BnX3NpZ25fb3B0X3F1b3RlZFxuIgorIlxuIgorIkluIGJvdGggY2FzZXMsIG9uY2UgeW91J3JlIGRvbmUsIGNvbnRpbnVlIHdpdGg6XG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKK21zZ3N0ciAiIgorIkhhaSBtb2RpZmljaGUgaW4gc3RhZ2luZyBuZWxsJ2FsYmVybyBkaSBsYXZvcm8uXG4iCisiU2UgcXVlc3RlIG1vZGlmaWNoZSBkZXZvbm8gZXNzZXJlIHNvdHRvcG9zdGUgYSBzcXVhc2ggbmVsIGNvbW1pdFxuIgorInByZWNlZGVudGUsIGVzZWd1aTpcbiIKKyJcbiIKKyIgIGdpdCBjb21taXQgLS1hbWVuZCAkZ3BnX3NpZ25fb3B0X3F1b3RlZFxuIgorIlxuIgorIlNlIGRldm9ubyBlc3NlcmUgaW5jbHVzZSBpbiB1biBudW92byBjb21taXQsIGVzZWd1aTpcbiIKKyJcbiIKKyIgIGdpdCBjb21taXQgJGdwZ19zaWduX29wdF9xdW90ZWRcbiIKKyJcbiIKKyJJbiBlbnRyYW1iaSBpIGNhc2ksIHVuYSB2b2x0YSBmaW5pdG8sIGNvbnRpbnVhIGNvbjpcbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODM0Cittc2dpZCAiRXJyb3IgdHJ5aW5nIHRvIGZpbmQgdGhlIGF1dGhvciBpZGVudGl0eSB0byBhbWVuZCBjb21taXQiCittc2dzdHIgIiIKKyJFcnJvcmUgZHVyYW50ZSBsYSByaWNlcmNhIGRlbGwnaWRlbnRpdMOgIGRlbGwnYXV0b3JlIHBlciBsYSBtb2RpZmljYSBkZWwgIgorImNvbW1pdCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgzOQorbXNnaWQgIiIKKyJZb3UgaGF2ZSB1bmNvbW1pdHRlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLiBQbGVhc2UgY29tbWl0IHRoZW1cbiIKKyJmaXJzdCBhbmQgdGhlbiBydW4gJ2dpdCByZWJhc2UgLS1jb250aW51ZScgYWdhaW4uIgorbXNnc3RyICIiCisiQ2kgc29ubyBtb2RpZmljaGUgZGkgY3VpIG5vbiDDqCBzdGF0byBlc2VndWl0byBpbCBjb21taXQgbmVsIHR1byBhbGJlcm9cbiIKKyJkaSBsYXZvcm8uIEVzZWd1aW5lIHByaW1hIGlsIGNvbW1pdCBlIHF1aW5kaSBlc2VndWkgbnVvdmFtZW50ZSAnZ2l0IHJlYmFzZVxuIgorIi0tY29udGludWUnLiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg0NCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ4Cittc2dpZCAiQ291bGQgbm90IGNvbW1pdCBzdGFnZWQgY2hhbmdlcy4iCittc2dzdHIgIkltcG9zc2liaWxlIGVzZWd1aXJlIGlsIGNvbW1pdCBkZWxsZSBtb2RpZmljaGUgaW4gc3RhZ2luZy4iCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NzkgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk2NQorbXNnaWQgIkNvdWxkIG5vdCBleGVjdXRlIGVkaXRvciIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgZXNlZ3VpcmUgbCdlZGl0b3IiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDAKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBjaGVja291dCAkc3dpdGNoX3RvIgorbXNnc3RyICJJbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBjaGVja291dCBkaSAkc3dpdGNoX3RvIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTA3Cittc2dpZCAiTm8gSEVBRD8iCittc2dzdHIgIk5lc3N1bidIRUFEPyIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwOAorIywgc2gtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJHN0YXRlX2RpciIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgY3JlYXJlIGxhIGRpcmVjdG9yeSB0ZW1wb3JhbmVhICRzdGF0ZV9kaXIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MTEKK21zZ2lkICJDb3VsZCBub3QgbWFyayBhcyBpbnRlcmFjdGl2ZSIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgY29udHJhc3NlZ25hcmUgY29tZSBpbnRlcmF0dGl2byIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0MworIywgc2gtZm9ybWF0Cittc2dpZCAiUmViYXNlICRzaG9ydHJldmlzaW9ucyBvbnRvICRzaG9ydG9udG8gKCR0b2RvY291bnQgY29tbWFuZCkiCittc2dpZF9wbHVyYWwgIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgb250byAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmRzKSIKK21zZ3N0clswXSAiUmViYXNlIGRpICRzaG9ydHJldmlzaW9ucyBzdSAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbWFuZG8pIgorbXNnc3RyWzFdICJSZWJhc2UgZGkgJHNob3J0cmV2aXNpb25zIHN1ICRzaG9ydG9udG8gKCR0b2RvY291bnQgY29tYW5kaSkiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NTUKK21zZ2lkICJOb3RlIHRoYXQgZW1wdHkgY29tbWl0cyBhcmUgY29tbWVudGVkIG91dCIKK21zZ3N0ciAiTm90YSBjaGUgaSBjb21taXQgdnVvdGkgc29ubyBjb21tZW50YXRpIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTk3IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxMDAyCittc2dpZCAiQ291bGQgbm90IGluaXQgcmV3cml0dGVuIGNvbW1pdHMiCittc2dzdHIgIkltcG9zc2liaWxlIGluaXppYWxpenphcmUgaSBjb21taXQgcmlzY3JpdHRpIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6ODkgZ2l0LXNoLXNldHVwLnNoOjk0CisjLCBzaC1mb3JtYXQKK21zZ2lkICJ1c2FnZTogJGRhc2hsZXNzICRVU0FHRSIKK21zZ3N0ciAidXNvOiAkZGFzaGxlc3MgJFVTQUdFIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MTkxCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3QgY2hkaXIgdG8gJGNkdXAsIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICIiCisiSW1wb3NzaWJpbGUgbW9kaWZpY2FyZSBsYSBkaXJlY3RvcnkgY29ycmVudGUgaW4gJGNkdXAsIGlsIHByaW1vIGxpdmVsbG8gIgorImRlbGwnYWxiZXJvIGRpIGxhdm9ybyIKKworIzogZ2l0LXNoLXNldHVwLnNoOjIwMCBnaXQtc2gtc2V0dXAuc2g6MjA3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJmYXRhbDogJHByb2dyYW1fbmFtZSBjYW5ub3QgYmUgdXNlZCB3aXRob3V0IGEgd29ya2luZyB0cmVlLiIKK21zZ3N0ciAiIgorImVycm9yZSBmYXRhbGU6ICRwcm9ncmFtX25hbWUgbm9uIHB1w7IgZXNzZXJlIHVzYXRvIHNlbnphIHVuIGFsYmVybyBkaSBsYXZvcm8uIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MjIxCittc2dpZCAiQ2Fubm90IHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBlc2VndWlyZSBpbCByZWJhc2U6IGNpIHNvbm8gZGVsbGUgbW9kaWZpY2hlIG5vbiBpbiBzdGFnaW5nLiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjIyNAorbXNnaWQgIkNhbm5vdCByZXdyaXRlIGJyYW5jaGVzOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiIgorIkltcG9zc2liaWxlIHJpc2NyaXZlcmUgaSBicmFuY2g6IGNpIHNvbm8gZGVsbGUgbW9kaWZpY2hlIG5vbiBpbiBzdGFnaW5nLiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjIyNworbXNnaWQgIkNhbm5vdCBwdWxsIHdpdGggcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiIgorIkltcG9zc2liaWxlIGVzZWd1aXJlIHVuIHB1bGwgc2VndWl0byBkYSB1biByZWJhc2U6IGNpIHNvbm8gZGVsbGUgbW9kaWZpY2hlICIKKyJub24gaW4gc3RhZ2luZy4iCisKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMzAKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCAkYWN0aW9uOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgZXNlZ3VpcmUgJGFjdGlvbjogY2kgc29ubyBkZWxsZSBtb2RpZmljaGUgbm9uIGluIHN0YWdpbmcuIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MjQzCittc2dpZCAiQ2Fubm90IHJlYmFzZTogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiIgorIkltcG9zc2liaWxlIGVzZWd1aXJlIHVuIHJlYmFzZTo6IGwnaW5kaWNlIGNvbnRpZW5lIG1vZGlmaWNoZSBkaSBjdWkgbm9uIMOoICIKKyJzdGF0byBlc2VndWl0byBpbCBjb21taXQuIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ2Cittc2dpZCAiQ2Fubm90IHB1bGwgd2l0aCByZWJhc2U6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBlc2VndWlyZSB1biBwdWxsIHNlZ3VpdG8gZGEgdW4gcmViYXNlOiBsJ2luZGljZSBjb250aWVuZSAiCisibW9kaWZpY2hlIGRpIGN1aSBub24gw6ggc3RhdG8gZXNlZ3VpdG8gaWwgY29tbWl0LiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjI0OQorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90ICRhY3Rpb246IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCittc2dzdHIgIiIKKyJJbXBvc3NpYmlsZSBlc2VndWlyZSAkYWN0aW9uOiBsJ2luZGljZSBjb250aWVuZSBtb2RpZmljaGUgZGkgY3VpIG5vbiDDqCBzdGF0byAiCisiZXNlZ3VpdG8gaWwgY29tbWl0LiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjI1MworbXNnaWQgIkFkZGl0aW9uYWxseSwgeW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiIgorIklub2x0cmUsIGwnaW5kaWNlIGNvbnRpZW5lIG1vZGlmaWNoZSBkaSBjdWkgbm9uIMOoIHN0YXRvIGVzZWd1aXRvIGlsIGNvbW1pdC4iCisKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzMKK21zZ2lkICJZb3UgbmVlZCB0byBydW4gdGhpcyBjb21tYW5kIGZyb20gdGhlIHRvcGxldmVsIG9mIHRoZSB3b3JraW5nIHRyZWUuIgorbXNnc3RyICJEZXZpIGVzZWd1aXJlIHF1ZXN0byBjb21hbmRvIGRhbCBwcmltbyBsaXZlbGxvIGRlbGwnYWxiZXJvIGRpIGxhdm9yby4iCisKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzgKK21zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIGFic29sdXRlIHBhdGggb2YgZ2l0IGRpcmVjdG9yeSIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgZGV0ZXJtaW5hcmUgaWwgcGVyY29yc28gYXNzb2x1dG8gZGVsbGEgZGlyZWN0b3J5IEdpdCIKKworIy4gVFJBTlNMQVRPUlM6IHlvdSBjYW4gYWRqdXN0IHRoaXMgdG8gYWxpZ24gImdpdCBhZGQgLWkiIHN0YXR1cyBtZW51CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlMTJzICUxMnMgJXMiCittc2dzdHIgIiUyMHMgJTMycyAlcyIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidG91Y2hlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInRvdWNoZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAiZXNlZ3VpdG8gdG91Y2ggc3UgJWQgcGVyY29yc29cbiIKK21zZ3N0clsxXSAiZXNlZ3VpdG8gdG91Y2ggc3UgJWQgcGVyY29yc2lcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDUzCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCisibWFya2VkIGZvciBzdGFnaW5nLiIKK21zZ3N0ciAiIgorIlNlIGxhIHBhdGNoIHZpZW5lIGFwcGxpY2F0YSBzZW56YSBwcm9ibGVtaSwgbCdodW5rIG1vZGlmaWNhdG8gc2Fyw6BcbiIKKyJjb250cmFzc2VnbmF0byBpbW1lZGlhdGFtZW50ZSBwZXIgbCdhZ2dpdW50YSBhbGwnYXJlYSBkaSBzdGFnaW5nLiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDU2Cittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCisibWFya2VkIGZvciBzdGFzaGluZy4iCittc2dzdHIgIiIKKyJTZSBsYSBwYXRjaCB2aWVuZSBhcHBsaWNhdGEgc2VuemEgcHJvYmxlbWksIGwnaHVuayBtb2RpZmljYXRvIHNhcsOgXG4iCisiY29udHJhc3NlZ25hdG8gaW1tZWRpYXRhbWVudGUgcGVyIGxvIHN0YXNoLiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDU5Cittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCisibWFya2VkIGZvciB1bnN0YWdpbmcuIgorbXNnc3RyICIiCisiU2UgbGEgcGF0Y2ggdmllbmUgYXBwbGljYXRhIHNlbnphIHByb2JsZW1pLCBsJ2h1bmsgbW9kaWZpY2F0byBzYXLDoFxuIgorImNvbnRyYXNzZWduYXRvIGltbWVkaWF0YW1lbnRlIHBlciBsYSByaW1vemlvbmUgZGFsbCdhcmVhIGRpIHN0YWdpbmcuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDcxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNzcKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKKyJtYXJrZWQgZm9yIGFwcGx5aW5nLiIKK21zZ3N0ciAiIgorIlNlIGxhIHBhdGNoIHZpZW5lIGFwcGxpY2F0YSBzZW56YSBwcm9ibGVtaSwgbCdodW5rIG1vZGlmaWNhdG8gc2Fyw6BcbiIKKyJjb250cmFzc2VnbmF0byBpbW1lZGlhdGFtZW50ZSBwZXIgbCdhcHBsaWNhemlvbmUuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNjUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDY4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNzQKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKKyJtYXJrZWQgZm9yIGRpc2NhcmRpbmcuIgorbXNnc3RyICIiCisiU2UgbGEgcGF0Y2ggdmllbmUgYXBwbGljYXRhIHNlbnphIHByb2JsZW1pLCBsJ2h1bmsgbW9kaWZpY2F0byBzYXLDoFxuIgorImNvbnRyYXNzZWduYXRvIGltbWVkaWF0YW1lbnRlIHBlciBsYSByaW1vemlvbmUuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gaHVuayBlZGl0IGZpbGUgZm9yIHdyaXRpbmc6ICVzIgorbXNnc3RyICJhcGVydHVyYSBkZWwgZmlsZSBkaSBtb2RpZmljYSBodW5rIGluIHNjcml0dHVyYSBub24gcml1c2NpdGE6ICVzIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIi0tLVxuIgorIlRvIHJlbW92ZSAnJXMnIGxpbmVzLCBtYWtlIHRoZW0gJyAnIGxpbmVzIChjb250ZXh0KS5cbiIKKyJUbyByZW1vdmUgJyVzJyBsaW5lcywgZGVsZXRlIHRoZW0uXG4iCisiTGluZXMgc3RhcnRpbmcgd2l0aCAlcyB3aWxsIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiIKKyItLS1cbiIKKyJQZXIgcmltdW92ZXJlICclcycgcmlnaGUsIHJlbmRpbGUgcmlnaGUgJyAnIChjb250ZXN0bykuXG4iCisiUGVyIHJpbXVvdmVyZSAnJXMnIHJpZ2hlLCBlbGltaW5hbGUuXG4iCisiTGUgcmlnaGUgY2hlIGluaXppYW5vIGNvbiAlcyBzYXJhbm5vIHJpbW9zc2UuXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTE0MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgImFwZXJ0dXJhIGRlbCBmaWxlIGRpIG1vZGlmaWNhIGh1bmsgaW4gbGV0dHVyYSBub24gcml1c2NpdGE6ICVzIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNDgKK21zZ2lkICIiCisieSAtIHN0YWdlIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFnZSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKyJ5IC0gYWdnaXVuZ2kgcXVlc3QnaHVuayBhbGwnYXJlYSBkaSBzdGFnaW5nXG4iCisibiAtIG5vbiBhZ2dpdW5nZXJlIHF1ZXN0J2h1bmsgYWxsJ2FyZWEgZGkgc3RhZ2luZ1xuIgorInEgLSBlc2NpOyBub24gYWdnaXVuZ2VyZSBuw6kgcXVlc3QnaHVuayBuw6kgcXVlbGxpIHJpbWFuZW50aSBhbGwnYXJlYSBkaSAiCisic3RhZ2luZ1xuIgorImEgLSBhZ2dpdW5naSBxdWVzdCdodW5rIGUgdHV0dGkgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGUgYWxsJ2FyZWEgZGkgIgorInN0YWdpbmdcbiIKKyJkIC0gbm9uIGFnZ2l1bmdlcmUgbsOpIHF1ZXN0J2h1bmsgbsOpIHF1ZWxsaSBzdWNjZXNzaXZpIG5lbCBmaWxlIGFsbCdhcmVhIGRpICIKKyJzdGFnaW5nIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNTQKK21zZ2lkICIiCisieSAtIHN0YXNoIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFzaCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFzaCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKyJ5IC0gZXNlZ3VpIGxvIHN0YXNoIGRpIHF1ZXN0J2h1bmtcbiIKKyJuIC0gbm9uIGVzZWd1aXJlIGxvIHN0YXNoIGRpIHF1ZXN0J2h1bmtcbiIKKyJxIC0gZXNjaTsgbm9uIGVzZWd1aXJlIGxvIHN0YXNoIGRpIHF1ZXN0J2h1bmsgbsOpIGRpIHF1ZWxsaSByaW1hbmVudGlcbiIKKyJhIC0gZXNlZ3VpIGxvIHN0YXNoIGRpIHF1ZXN0J2h1bmsgZSBkaSB0dXR0aSBxdWVsbGkgc3VjY2Vzc2l2aSBuZWwgZmlsZVxuIgorImQgLSBub24gZXNlZ3VpcmUgbG8gc3Rhc2ggbsOpIGRpIHF1ZXN0J2h1bmsgbsOpIGRpIHF1ZWxsaSBzdWNjZXNzaXZpIG5lbCBmaWxlIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNjAKK21zZ2lkICIiCisieSAtIHVuc3RhZ2UgdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVua1xuIgorInEgLSBxdWl0OyBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSB1bnN0YWdlIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgorbXNnc3RyICIiCisieSAtIHJpbXVvdmkgcXVlc3QnaHVuayBkYWxsJ2FyZWEgZGkgc3RhZ2luZ1xuIgorIm4gLSBub24gcmltdW92ZXJlIHF1ZXN0J2h1bmsgZGFsbCdhcmVhIGRpIHN0YWdpbmdcbiIKKyJxIC0gZXNjaTsgbm9uIHJpbXVvdmVyZSBuw6kgcXVlc3QnaHVuayBuw6kgcXVlbGxpIHJpbWFuZW50aSBkYWxsJ2FyZWEgZGkgIgorInN0YWdpbmdcbiIKKyJhIC0gcmltdW92aSBxdWVzdCdodW5rIGUgdHV0dGkgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGUgZGFsbCdhcmVhIGRpICIKKyJzdGFnaW5nXG4iCisiZCAtIG5vbiByaW11b3ZlcmUgbsOpIHF1ZXN0J2h1bmsgbsOpIHF1ZWxsaSBzdWNjZXNzaXZpIG5lbCBmaWxlIGRhbGwnYXJlYSBkaSAiCisic3RhZ2luZyIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjY2Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgorbXNnc3RyICIiCisieSAtIGFwcGxpY2EgcXVlc3QnaHVuayBhbGwnaW5kaWNlXG4iCisibiAtIG5vbiBhcHBsaWNhcmUgcXVlc3QnaHVuayBhbGwnaW5kaWNlXG4iCisicSAtIGVzY2k7IG5vbiBhcHBsaWNhcmUgbsOpIHF1ZXN0J2h1bmsgbsOpIHF1ZWxsaSByaW1hbmVudGlcbiIKKyJhIC0gYXBwbGljYSBxdWVzdCdodW5rIGUgdHV0dGkgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGVcbiIKKyJkIC0gbm9uIGFwcGxpY2FyZSBuw6kgcXVlc3QnaHVuayBuw6kgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGUiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI3MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyOTAKK21zZ2lkICIiCisieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gZGlzY2FyZCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSByaW11b3ZpIHF1ZXN0J2h1bmsgZGFsbCdhbGJlcm8gZGkgbGF2b3JvXG4iCisibiAtIG5vbiByaW11b3ZlcmUgcXVlc3QnaHVuayBkYWxsJ2FsYmVybyBkaSBsYXZvcm9cbiIKKyJxIC0gZXNjaTsgbm9uIHJpbXVvdmVyZSBuw6kgcXVlc3QnaHVuayBuw6kgcXVlbGxpIHJpbWFuZW50aVxuIgorImEgLSByaW11b3ZpIHF1ZXN0J2h1bmsgZSB0dXR0aSBxdWVsbGkgc3VjY2Vzc2l2aSBuZWwgZmlsZVxuIgorImQgLSBub24gcmltdW92ZXJlIG7DqSBxdWVzdCdodW5rIG7DqSBxdWVsbGkgc3VjY2Vzc2l2aSBuZWwgZmlsZSIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjc4Cittc2dpZCAiIgorInkgLSBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gZGlzY2FyZCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSByaW11b3ZpIHF1ZXN0J2h1bmsgZGFsbCdpbmRpY2UgZSBkYWxsJ2FsYmVybyBkaSBsYXZvcm9cbiIKKyJuIC0gbm9uIHJpbXVvdmVyZSBxdWVzdCdodW5rIGRhbGwnaW5kaWNlIGUgZGFsbCdhbGJlcm8gZGkgbGF2b3JvXG4iCisicSAtIGVzY2k7IG5vbiByaW11b3ZlcmUgbsOpIHF1ZXN0J2h1bmsgbsOpIHF1ZWxsaSByaW1hbmVudGlcbiIKKyJhIC0gcmltdW92aSBxdWVzdCdodW5rIGUgdHV0dGkgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGVcbiIKKyJkIC0gbm9uIHJpbXVvdmVyZSBuw6kgcXVlc3QnaHVuayBuw6kgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGUiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI4NAorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgorbXNnc3RyICIiCisieSAtIGFwcGxpY2EgcXVlc3QnaHVuayBhbGwnaW5kaWNlIGUgYWxsJ2FsYmVybyBkaSBsYXZvcm9cbiIKKyJuIC0gbm9uIGFwcGxpY2FyZSBxdWVzdCdodW5rIGFsbCdpbmRpY2UgZSBhbGwnYWxiZXJvIGRpIGxhdm9yb1xuIgorInEgLSBlc2NpOyBub24gYXBwbGljYXJlIG7DqSBxdWVzdCdodW5rIG7DqSBxdWVsbGkgcmltYW5lbnRpXG4iCisiYSAtIGFwcGxpY2EgcXVlc3QnaHVuayBlIHR1dHRpIHF1ZWxsaSBzdWNjZXNzaXZpIG5lbCBmaWxlXG4iCisiZCAtIG5vbiBhcHBsaWNhcmUgbsOpIHF1ZXN0J2h1bmsgbsOpIHF1ZWxsaSBzdWNjZXNzaXZpIG5lbCBmaWxlIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyOTYKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKyJ5IC0gYXBwbGljYSBxdWVzdCdodW5rIGFsbCdhbGJlcm8gZGkgbGF2b3JvXG4iCisibiAtIG5vbiBhcHBsaWNhcmUgcXVlc3QnaHVuayBhbGwnYWxiZXJvIGRpIGxhdm9yb1xuIgorInEgLSBlc2NpOyBub24gYXBwbGljYXJlIG7DqSBxdWVzdCdodW5rIG7DqSBxdWVsbGkgcmltYW5lbnRpXG4iCisiYSAtIGFwcGxpY2EgcXVlc3QnaHVuayBlIHR1dHRpIHF1ZWxsaSBzdWNjZXNzaXZpIG5lbCBmaWxlXG4iCisiZCAtIG5vbiBhcHBsaWNhcmUgbsOpIHF1ZXN0J2h1bmsgbsOpIHF1ZWxsaSBzdWNjZXNzaXZpIG5lbCBmaWxlIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMTEKK21zZ2lkICIiCisiZyAtIHNlbGVjdCBhIGh1bmsgdG8gZ28gdG9cbiIKKyIvIC0gc2VhcmNoIGZvciBhIGh1bmsgbWF0Y2hpbmcgdGhlIGdpdmVuIHJlZ2V4XG4iCisiaiAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBuZXh0IHVuZGVjaWRlZCBodW5rXG4iCisiSiAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBuZXh0IGh1bmtcbiIKKyJrIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIHByZXZpb3VzIHVuZGVjaWRlZCBodW5rXG4iCisiSyAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBwcmV2aW91cyBodW5rXG4iCisicyAtIHNwbGl0IHRoZSBjdXJyZW50IGh1bmsgaW50byBzbWFsbGVyIGh1bmtzXG4iCisiZSAtIG1hbnVhbGx5IGVkaXQgdGhlIGN1cnJlbnQgaHVua1xuIgorIj8gLSBwcmludCBoZWxwXG4iCittc2dzdHIgIiIKKyJnIC0gc2VsZXppb25hIHVuIGh1bmsgYSBjdWkgYW5kYXJlXG4iCisiLyAtIGNlcmNhIHVuIGh1bmsgY29ycmlzcG9uZGVudGUgYWxsJ2VzcHJlc3Npb25lIHJlZ29sYXJlIGRhdGFcbiIKKyJqIC0gbm9uIGRlY2lkZXJlIGluIG1lcml0byBhIHF1ZXN0J2h1bmssIHZhaSBhbCBzdWNjZXNzaXZvIGh1bmsgcGVyIGN1aSBub24gIgorIsOoIHN0YXRhIHByZXNhIHVuYSBkZWNpc2lvbmVcbiIKKyJKIC0gbm9uIGRlY2lkZXJlIGluIG1lcml0byBhIHF1ZXN0J2h1bmssIHZhaSBhbGwnaHVuayBzdWNjZXNzaXZvXG4iCisiayAtIG5vbiBkZWNpZGVyZSBpbiBtZXJpdG8gYSBxdWVzdCdodW5rLCB2YWkgYWwgcHJlY2VkZW50ZSBodW5rIHBlciBjdWkgbm9uICIKKyLDqCBzdGF0YSBwcmVzYSB1bmEgZGVjaXNpb25lXG4iCisiSyAtIG5vbiBkZWNpZGVyZSBpbiBtZXJpdG8gYSBxdWVzdCdodW5rLCB2YWkgYWxsJ2h1bmsgcHJlY2VkZW50ZVxuIgorInMgLSBzdWRkaXZpZGkgbCdodW5rIGNvcnJlbnRlIGluIGh1bmsgcGnDuSBwaWNjb2xpXG4iCisiZSAtIG1vZGlmaWNhIG1hbnVhbG1lbnRlIGwnaHVuayBjb3JyZW50ZVxuIgorIj8gLSBzdGFtcGEgdW5hIGd1aWRhXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM0MgorbXNnaWQgIlRoZSBzZWxlY3RlZCBodW5rcyBkbyBub3QgYXBwbHkgdG8gdGhlIGluZGV4IVxuIgorbXNnc3RyICJHbGkgaHVuayBzZWxlemlvbmF0aSBub24gc2kgYXBwbGljYW5vIHNlbnphIHByb2JsZW1pIGFsbCdpbmRpY2UhXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM1NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyB1bm1lcmdlZDogJXNcbiIKK21zZ3N0ciAiaWdub3JvIGNpw7IgY2hlIG5vbiDDqCBzdGF0byBzb3R0b3Bvc3RvIGEgbWVyZ2U6ICVzXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiQXBwbGljYXJlIGxhIG1vZGlmaWNhIG1vZG8gYWxsJ2FsYmVybyBkaSBsYXZvcm8gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBkZWxldGlvbiB0byB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiQXBwbGljYXJlIGwnZWxpbWluYXppb25lIGFsbCdhbGJlcm8gZGkgbGF2b3JvIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJBcHBsaWNhcmUgcXVlc3QnaHVuayBhbGwnYWxiZXJvIGRpIGxhdm9ybyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTcwCittc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gZ290b1xuIgorbXNnc3RyICJOZXNzdW4gYWx0cm8gaHVuayBhIGN1aSBhbmRhcmVcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTg4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkludmFsaWQgbnVtYmVyOiAnJXMnXG4iCittc2dzdHIgIk51bWVybyBub24gdmFsaWRvOiAnJXMnXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJTb3JyeSwgb25seSAlZCBodW5rIGF2YWlsYWJsZS5cbiIKK21zZ2lkX3BsdXJhbCAiU29ycnksIG9ubHkgJWQgaHVua3MgYXZhaWxhYmxlLlxuIgorbXNnc3RyWzBdICJNaSBkaXNwaWFjZSwgw6ggZGlzcG9uaWJpbGUgc29sbyAlZCBodW5rLlxuIgorbXNnc3RyWzFdICJNaSBkaXNwaWFjZSwgc29ubyBkaXNwb25pYmlsaSBzb2xvICVkIGh1bmsuXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxOQorbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIHNlYXJjaFxuIgorbXNnc3RyICJOZXNzdW4gYWx0cm8gaHVuayBpbiBjdWkgcmljZXJjYXJlXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYzNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJNYWxmb3JtZWQgc2VhcmNoIHJlZ2V4cCAlczogJXNcbiIKK21zZ3N0ciAiRXNwcmVzc2lvbmUgcmVnb2xhcmUgZGkgcmljZXJjYSAlcyBtYWxmb3JtYXRhOiAlc1xuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NDYKK21zZ2lkICJObyBodW5rIG1hdGNoZXMgdGhlIGdpdmVuIHBhdHRlcm5cbiIKK21zZ3N0ciAiTmVzc3VuIGh1bmsgY29ycmlzcG9uZGUgYWwgcGF0dGVybiBmb3JuaXRvXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY1OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2ODAKK21zZ2lkICJObyBwcmV2aW91cyBodW5rXG4iCittc2dzdHIgIk5lc3N1biBodW5rIHByZWNlZGVudGVcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjY3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY4NgorbXNnaWQgIk5vIG5leHQgaHVua1xuIgorbXNnc3RyICJOZXNzdW4gaHVuayBzdWNjZXNzaXZvXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY5MgorbXNnaWQgIlNvcnJ5LCBjYW5ub3Qgc3BsaXQgdGhpcyBodW5rXG4iCittc2dzdHIgIk1pIGRpc3BpYWNlLCBub24gcG9zc28gc3VkZGl2aWRlcmUgcXVlc3QnaHVua1xuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2OTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3BsaXQgaW50byAlZCBodW5rLlxuIgorbXNnaWRfcGx1cmFsICJTcGxpdCBpbnRvICVkIGh1bmtzLlxuIgorbXNnc3RyWzBdICJTdWRkaXZpc28gaW4gJWQgaHVuay5cbiIKK21zZ3N0clsxXSAiU3VkZGl2aXNvIGluICVkIGh1bmsuXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcwOAorbXNnaWQgIlNvcnJ5LCBjYW5ub3QgZWRpdCB0aGlzIGh1bmtcbiIKK21zZ3N0ciAiTWkgZGlzcGlhY2UsIG5vbiBwb3NzbyBtb2RpZmljYXJlIHF1ZXN0J2h1bmtcbiIKKworIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBkbyBub3QgdHJhbnNsYXRlIHRoZSBjb21tYW5kIG5hbWVzCisjLiAnc3RhdHVzJywgJ3VwZGF0ZScsICdyZXZlcnQnLCBldGMuCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NzMKK21zZ2lkICIiCisic3RhdHVzICAgICAgICAtIHNob3cgcGF0aHMgd2l0aCBjaGFuZ2VzXG4iCisidXBkYXRlICAgICAgICAtIGFkZCB3b3JraW5nIHRyZWUgc3RhdGUgdG8gdGhlIHN0YWdlZCBzZXQgb2YgY2hhbmdlc1xuIgorInJldmVydCAgICAgICAgLSByZXZlcnQgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIGJhY2sgdG8gdGhlIEhFQUQgdmVyc2lvblxuIgorInBhdGNoICAgICAgICAgLSBwaWNrIGh1bmtzIGFuZCB1cGRhdGUgc2VsZWN0aXZlbHlcbiIKKyJkaWZmICAgICAgICAgIC0gdmlldyBkaWZmIGJldHdlZW4gSEVBRCBhbmQgaW5kZXhcbiIKKyJhZGQgdW50cmFja2VkIC0gYWRkIGNvbnRlbnRzIG9mIHVudHJhY2tlZCBmaWxlcyB0byB0aGUgc3RhZ2VkIHNldCBvZiAiCisiY2hhbmdlc1xuIgorbXNnc3RyICIiCisic3RhdHVzICAgICAgICAtIHZpc3VhbGl6emEgaSBwZXJjb3JzaSBjb24gbW9kaWZpY2hlXG4iCisidXBkYXRlICAgICAgICAtIGFnZ2l1bmdlIGxvIHN0YXRvIGRlbGwnYWxiZXJvIGRpIGxhdm9ybyBhbGwnaW5zaWVtZSBkZWxsZVxuIgorIiAgICAgICAgICAgICAgICBtb2RpZmljaGUgbmVsbCdhcmVhIGRpIHN0YWdpbmdcbiIKKyJyZXZlcnQgICAgICAgIC0gcmlwcmlzdGluYSBsJ2luc2llbWUgZGVsbGUgbW9kaWZpY2hlIG5lbGwnYXJlYSBkaSBzdGFnaW5nXG4iCisiICAgICAgICAgICAgICAgIGFsbGEgdmVyc2lvbmUgSEVBRFxuIgorInBhdGNoICAgICAgICAgLSBzZWxlemlvbmEgZSBhZ2dpb3JuYSBnbGkgaHVuayBpbiBtb2RvIHNlbGV0dGl2b1xuIgorImRpZmYgICAgICAgICAgLSB2aXN1YWxpenphIGxlIGRpZmZlcmVuemUgZnJhIEhFQUQgZSBsJ2luZGljZVxuIgorImFkZCB1bnRyYWNrZWQgLSBhZ2dpdW5nZSBpIGNvbnRlbnV0aSBkZWkgZmlsZSBub24gdHJhY2NpYXRpIGFsbCdpbnNpZW1lIGRpXG4iCisiICAgICAgICAgICAgICAgIG1vZGlmaWNoZSBuZWxsJ2FyZWEgZGkgc3RhZ2luZ1xuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzk1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODA1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MDggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODE1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODI1Cittc2dpZCAibWlzc2luZyAtLSIKK21zZ3N0ciAiLS0gbWFuY2FudGUiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIC0tcGF0Y2ggbW9kZTogJXMiCittc2dzdHIgIm1vZGFsaXTDoCAtLXBhdGNoIHNjb25vc2NpdXRhOiAlcyIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODI3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgzMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGFyZ3VtZW50ICVzLCBleHBlY3RpbmcgLS0iCittc2dzdHIgImFyZ29tZW50byAlcyBub24gdmFsaWRvLCBhdHRlc28gLS0iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTM4Cittc2dpZCAibG9jYWwgem9uZSBkaWZmZXJzIGZyb20gR01UIGJ5IGEgbm9uLW1pbnV0ZSBpbnRlcnZhbFxuIgorbXNnc3RyICIiCisiaWwgZnVzbyBvcmFyaW8gbG9jYWxlIGRpZmZlcmlzY2UgZGEgR01UIGRpIHVuIGludGVydmFsbG8gbm9uIG11bHRpcGxvIGRpIHVuICIKKyJtaW51dG9cbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDUgZ2l0LXNlbmQtZW1haWwucGVybDoxNTEKK21zZ2lkICJsb2NhbCB0aW1lIG9mZnNldCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMjQgaG91cnNcbiIKK21zZ3N0ciAibCdvZmZzZXQgZGVsIGZ1c28gb3JhcmlvIGxvY2FsZSDDqCBtYWdnaW9yZSBvIHVndWFsZSBhIDI0IG9yZVxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjIyMyBnaXQtc2VuZC1lbWFpbC5wZXJsOjIyOQorbXNnaWQgInRoZSBlZGl0b3IgZXhpdGVkIHVuY2xlYW5seSwgYWJvcnRpbmcgZXZlcnl0aGluZyIKK21zZ3N0ciAibCdlZGl0b3Igbm9uIMOoIHRlcm1pbmF0byByZWdvbGFybWVudGUsIGludGVycm9tcG8gdHV0dGUgbGUgb3BlcmF6aW9uaSIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDozMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIiclcycgY29udGFpbnMgYW4gaW50ZXJtZWRpYXRlIHZlcnNpb24gb2YgdGhlIGVtYWlsIHlvdSB3ZXJlIGNvbXBvc2luZy5cbiIKK21zZ3N0ciAiIgorIiclcycgY29udGllbmUgdW5hIHZlcnNpb25lIGludGVybWVkaWEgZGVsbCdlLW1haWwgY2hlIHN0YXZpIGNvbXBvbmVuZG8uXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzE1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiclcy5maW5hbCcgY29udGFpbnMgdGhlIGNvbXBvc2VkIGVtYWlsLlxuIgorbXNnc3RyICInJXMuZmluYWwnIGNvbnRpZW5lIGwnZS1tYWlsIGNvbXBvc3RhLlxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQwOAorbXNnaWQgIi0tZHVtcC1hbGlhc2VzIGluY29tcGF0aWJsZSB3aXRoIG90aGVyIG9wdGlvbnNcbiIKK21zZ3N0ciAiLS1kdW1wLWFsaWFzZXMgbm9uIMOoIGNvbXBhdGliaWxlIGNvbiBhbHRyZSBvcHppb25pXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDgxIGdpdC1zZW5kLWVtYWlsLnBlcmw6NjgzCittc2dpZCAiQ2Fubm90IHJ1biBnaXQgZm9ybWF0LXBhdGNoIGZyb20gb3V0c2lkZSBhIHJlcG9zaXRvcnlcbiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgZXNlZ3VpcmUgZ2l0IGZvcm1hdC1wYXRjaCBhbCBkaSBmdW9yaSBkaSB1biByZXBvc2l0b3J5XG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDg0Cittc2dpZCAiIgorImBiYXRjaC1zaXplYCBhbmQgYHJlbG9naW5gIG11c3QgYmUgc3BlY2lmaWVkIHRvZ2V0aGVyICh2aWEgY29tbWFuZC1saW5lIG9yICIKKyJjb25maWd1cmF0aW9uIG9wdGlvbilcbiIKK21zZ3N0ciAiIgorImBiYXRjaC1zaXplYCBlIGByZWxvZ2luYCBkZXZvbm8gZXNzZXJlIHNwZWNpZmljYXRpIGluc2llbWUgKHN1bGxhIHJpZ2EgZGkgIgorImNvbWFuZG8gbyB0cmFtaXRlIHVuJ29wemlvbmUgZGkgY29uZmlndXJhemlvbmUpXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDk3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVua25vd24gLS1zdXBwcmVzcy1jYyBmaWVsZDogJyVzJ1xuIgorbXNnc3RyICJDYW1wbyAtLXN1cHByZXNzLWNjIHNjb25vc2NpdXRvOiAnJXMnXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTI4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVua25vd24gLS1jb25maXJtIHNldHRpbmc6ICclcydcbiIKK21zZ3N0ciAiSW1wb3N0YXppb25lIC0tY29uZmlybSBzY29ub3NjaXV0YTogJyVzJ1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU1NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ3YXJuaW5nOiBzZW5kbWFpbCBhbGlhcyB3aXRoIHF1b3RlcyBpcyBub3Qgc3VwcG9ydGVkOiAlc1xuIgorbXNnc3RyICJhdHRlbnppb25lOiBub24gc29ubyBzdXBwb3J0YXRpIGFsaWFzIHNlbmRtYWlsIGNvbiB2aXJnb2xldHRlOiAlc1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ3YXJuaW5nOiBgOmluY2x1ZGU6YCBub3Qgc3VwcG9ydGVkOiAlc1xuIgorbXNnc3RyICJhdHRlbnppb25lOiBgOmluY2x1ZGU6YCBub24gc3VwcG9ydGF0bzogJXNcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAid2FybmluZzogYC9maWxlYCBvciBgfHBpcGVgIHJlZGlyZWN0aW9uIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCittc2dzdHIgImF0dGVuemlvbmU6IHJlZGlyZXppb25pIGAvZmlsZWAgbyBgfHBpcGVgIG5vbiBzdXBwb3J0YXRlOiAlc1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ3YXJuaW5nOiBzZW5kbWFpbCBsaW5lIGlzIG5vdCByZWNvZ25pemVkOiAlc1xuIgorbXNnc3RyICJhdHRlbnppb25lOiByaWdhIHNlbmRtYWlsIG5vbiByaWNvbm9zY2l1dGE6ICVzXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJGaWxlICclcycgZXhpc3RzIGJ1dCBpdCBjb3VsZCBhbHNvIGJlIHRoZSByYW5nZSBvZiBjb21taXRzXG4iCisidG8gcHJvZHVjZSBwYXRjaGVzIGZvci4gIFBsZWFzZSBkaXNhbWJpZ3VhdGUgYnkuLi5cbiIKKyJcbiIKKyIgICAgKiBTYXlpbmcgXCIuLyVzXCIgaWYgeW91IG1lYW4gYSBmaWxlOyBvclxuIgorIiAgICAqIEdpdmluZyAtLWZvcm1hdC1wYXRjaCBvcHRpb24gaWYgeW91IG1lYW4gYSByYW5nZS5cbiIKK21zZ3N0ciAiIgorIklsIGZpbGUgJyVzJyBlc2lzdGUgbWEgdGFsZSBzdHJpbmdhIHBvdHJlYmJlIGNvcnJpc3BvbmRlcmVcbiIKKyJhbmNoZSBhbGwnaW50ZXJ2YWxsbyBkaSBjb21taXQgcGVyIGN1aSBnZW5lcmFyZSBkZWxsZSBwYXRjaC5cbiIKKyJTcGVjaWZpY2EgcXVhbCDDqCBpbCBjYXNvIGNvcnJldHRvLi4uXG4iCisiXG4iCisiICAgICogLi4udXNhbmRvIFwiLi8lc1wiIHNlIGludGVuZGkgcmlmZXJpcnRpIGFsIGZpbGUsIG8uLi5cbiIKKyIgICAgKiAuLi5mb3JuZW5kbyBsJ29wemlvbmUgLS1mb3JtYXQtcGF0Y2ggc2UgdGkgcmlmZXJpc2NpXG4iCisiICAgICAgYSB1biBpbnRlcnZhbGxvLlxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gb3BlbmRpciAlczogJXMiCittc2dzdHIgIm9wZW5kaXIgZGkgJXMgbm9uIHJpdXNjaXRhOiAlcyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo2OTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImZhdGFsOiAlczogJXNcbiIKKyJ3YXJuaW5nOiBubyBwYXRjaGVzIHdlcmUgc2VudFxuIgorbXNnc3RyICIiCisiZXJyb3JlIGZhdGFsZTogJXM6ICVzXG4iCisiYXR0ZW56aW9uZTogbm9uIMOoIHN0YXRhIGludmlhdGEgYWxjdW5hIHBhdGNoXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzA1Cittc2dpZCAiIgorIlxuIgorIk5vIHBhdGNoIGZpbGVzIHNwZWNpZmllZCFcbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIk5lc3N1biBmaWxlIHBhdGNoIHNwZWNpZmljYXRvIVxuIgorIlxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcxOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJObyBzdWJqZWN0IGxpbmUgaW4gJXM/IgorbXNnc3RyICJSaWdhIG9nZ2V0dG8gYXNzZW50ZSBpbiAlcz8iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzI4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBvcGVuIGZvciB3cml0aW5nICVzOiAlcyIKK21zZ3N0ciAiQXBlcnR1cmEgZGkgJXMgaW4gc2NyaXR0dXJhIG5vbiByaXVzY2l0YTogJXMiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzM5Cittc2dpZCAiIgorIkxpbmVzIGJlZ2lubmluZyBpbiBcIkdJVDpcIiB3aWxsIGJlIHJlbW92ZWQuXG4iCisiQ29uc2lkZXIgaW5jbHVkaW5nIGFuIG92ZXJhbGwgZGlmZnN0YXQgb3IgdGFibGUgb2YgY29udGVudHNcbiIKKyJmb3IgdGhlIHBhdGNoIHlvdSBhcmUgd3JpdGluZy5cbiIKKyJcbiIKKyJDbGVhciB0aGUgYm9keSBjb250ZW50IGlmIHlvdSBkb24ndCB3aXNoIHRvIHNlbmQgYSBzdW1tYXJ5LlxuIgorbXNnc3RyICIiCisiTGUgcmlnaGUgY2hlIGluaXppYW5vIGNvbiBcIkdJVDpcIiBzYXJhbm5vIHJpbW9zc2UuXG4iCisiVmFsdXRhIGRpIGluY2x1ZGVyZSB1biBkaWZmc3RhdCBnbG9iYWxlIG8gdW4gc29tbWFyaW8gcGVyXG4iCisibGEgcGF0Y2ggY2hlIHN0YWkgc2NyaXZlbmRvLlxuIgorIlxuIgorIlJpbXVvdmkgaWwgY29ycG8gc2Ugbm9uIHZ1b2kgaW52aWFyZSB1biBzb21tYXJpby5cbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo3NjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIG9wZW4gJXM6ICVzIgorbXNnc3RyICJBcGVydHVyYSBkaSAlcyBub24gcml1c2NpdGE6ICVzIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc4MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gb3BlbiAlcy5maW5hbDogJXMiCittc2dzdHIgIkFwZXJ0dXJhIGRpICVzLmZpbmFsIG5vbiByaXVzY2l0YTogJXMiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODIzCittc2dpZCAiU3VtbWFyeSBlbWFpbCBpcyBlbXB0eSwgc2tpcHBpbmcgaXRcbiIKK21zZ3N0ciAiRS1tYWlsIHJpYXNzdW50aXZhIHZ1b3RhLCBsYSBvbWV0dG9cbiIKKworIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBrZWVwIFt5L05dIGFzIGlzLgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo4NTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHVzZSA8JXM+IFt5L05dPyAiCittc2dzdHIgIlVzYXJlIDwlcz4gW3kvTl0/ICIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MTMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBmaWxlcyBhcmUgOGJpdCwgYnV0IGRvIG5vdCBkZWNsYXJlIGEgQ29udGVudC1UcmFuc2Zlci0iCisiRW5jb2RpbmcuXG4iCittc2dzdHIgIiIKKyJJIHNlZ3VlbnRpIGZpbGUgc29ubyBjb2RpZmljYXRpIGEgOCBiaXQgbWEgbm9uIGRpY2hpYXJhbm8gdW4gQ29udGVudC0iCisiVHJhbnNmZXItRW5jb2RpbmcuXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTE4Cittc2dpZCAiV2hpY2ggOGJpdCBlbmNvZGluZyBzaG91bGQgSSBkZWNsYXJlIFtVVEYtOF0/ICIKK21zZ3N0ciAiQ2hlIGNvZGlmaWNhIGEgOCBiaXQgZGV2byBkaWNoaWFyYXJlIFtVVEYtOF0/ICIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlJlZnVzaW5nIHRvIHNlbmQgYmVjYXVzZSB0aGUgcGF0Y2hcbiIKKyJcdCVzXG4iCisiaGFzIHRoZSB0ZW1wbGF0ZSBzdWJqZWN0ICcqKiogU1VCSkVDVCBIRVJFICoqKicuIFBhc3MgLS1mb3JjZSBpZiB5b3UgcmVhbGx5ICIKKyJ3YW50IHRvIHNlbmQuXG4iCittc2dzdHIgIiIKKyJNaSByaWZpdXRvIGRpIGVzZWd1aXJlIGwnaW52aW8gcGVyY2jDqSBsYSBwYXRjaFxuIgorIlx0JXNcbiIKKyJoYSBjb21lIG9nZ2V0dG8gbmVsIG1vZGVsbG8gJyoqKiBTVUJKRUNUIEhFUkUgKioqJy4gRm9ybmlzY2kgbCdvcHppb25lIC0tIgorImZvcmNlIHNlIHZ1b2kgdmVyYW1lbnRlIHByb2NlZGVyZSBjb24gbCdpbnZpby5cbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NDUKK21zZ2lkICJUbyB3aG9tIHNob3VsZCB0aGUgZW1haWxzIGJlIHNlbnQgKGlmIGFueW9uZSk/IgorbXNnc3RyICIiCisiQSBjaGkgZG92cmFubm8gZXNzZXJlIGludmlhdGUgbGUgZS1tYWlsIChzZSBkZXZvbm8gZXNzZXJlIGludmlhdGUgYSAiCisicXVhbGN1bm8pPyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmF0YWw6IGFsaWFzICclcycgZXhwYW5kcyB0byBpdHNlbGZcbiIKK21zZ3N0ciAiZXJyb3JlIGZhdGFsZTogbCdhbGlhcyAnJXMnIHNpIGVzcGFuZGUgaW4gc2Ugc3Rlc3NvXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTc1Cittc2dpZCAiTWVzc2FnZS1JRCB0byBiZSB1c2VkIGFzIEluLVJlcGx5LVRvIGZvciB0aGUgZmlyc3QgZW1haWwgKGlmIGFueSk/ICIKK21zZ3N0ciAiIgorIk1lc3NhZ2UtSUQgZGEgdXNhcmUgbmVsbCdpbnRlc3RhemlvbmUgSW4tUmVwbHktVG8gcGVyIGxhIHByaW1hIGUtbWFpbCAoc2UgIgorImRldidlc3NlcmUgdXNhdG8pPyAiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAzMyBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwNDEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXJyb3I6IHVuYWJsZSB0byBleHRyYWN0IGEgdmFsaWQgYWRkcmVzcyBmcm9tOiAlc1xuIgorbXNnc3RyICJlcnJvcmU6IGltcG9zc2liaWxlIGVzdHJhcnJlIHVuIGluZGlyaXp6byB2YWxpZG8gZGEgJXNcbiIKKworIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtxXSBbZF0gW2VdIGluIHlvdXIKKyMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKKyMuIGF0IHRoaXMgcG9pbnQuCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwNDUKK21zZ2lkICJXaGF0IHRvIGRvIHdpdGggdGhpcyBhZGRyZXNzPyAoW3FddWl0fFtkXXJvcHxbZV1kaXQpOiAiCittc2dzdHIgIiIKKyJDb3NhIGRldm8gZmFyZSBjb24gcXVlc3QnaW5kaXJpenpvPyAoRXNjaSBbcV18c2NhcnRhIFtkXXxtb2RpZmljYSBbZV0pOiAiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTM2MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJDQSBwYXRoIFwiJXNcIiBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiSWwgcGVyY29yc28gQ0EgXCIlc1wiIG5vbiBlc2lzdGUiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ0NQorbXNnaWQgIiIKKyIgICAgVGhlIENjIGxpc3QgYWJvdmUgaGFzIGJlZW4gZXhwYW5kZWQgYnkgYWRkaXRpb25hbFxuIgorIiAgICBhZGRyZXNzZXMgZm91bmQgaW4gdGhlIHBhdGNoIGNvbW1pdCBtZXNzYWdlLiBCeSBkZWZhdWx0XG4iCisiICAgIHNlbmQtZW1haWwgcHJvbXB0cyBiZWZvcmUgc2VuZGluZyB3aGVuZXZlciB0aGlzIG9jY3Vycy5cbiIKKyIgICAgVGhpcyBiZWhhdmlvciBpcyBjb250cm9sbGVkIGJ5IHRoZSBzZW5kZW1haWwuY29uZmlybVxuIgorIiAgICBjb25maWd1cmF0aW9uIHNldHRpbmcuXG4iCisiXG4iCisiICAgIEZvciBhZGRpdGlvbmFsIGluZm9ybWF0aW9uLCBydW4gJ2dpdCBzZW5kLWVtYWlsIC0taGVscCcuXG4iCisiICAgIFRvIHJldGFpbiB0aGUgY3VycmVudCBiZWhhdmlvciwgYnV0IHNxdWVsY2ggdGhpcyBtZXNzYWdlLFxuIgorIiAgICBydW4gJ2dpdCBjb25maWcgLS1nbG9iYWwgc2VuZGVtYWlsLmNvbmZpcm0gYXV0bycuXG4iCisiXG4iCittc2dzdHIgIiIKKyIgICAgTCdlbGVuY28gQ2MgZGkgY3VpIHNvcHJhIMOoIHN0YXRvIGVzcGFuc28gYWdnaXVuZ2VuZG9cbiIKKyIgICAgaW5kaXJpenppIGFnZ2l1bnRpdmkgdHJvdmF0aSBuZWwgbWVzc2FnZ2lvIGRpIGNvbW1pdCBkZWxsYVxuIgorIiAgICBwYXRjaC4gUGVyIGltcG9zdGF6aW9uZSBwcmVkZWZpbml0YSBzZW5kLWVtYWlsIHJpY2hpZWRlXG4iCisiICAgIGNvbWUgcHJvY2VkZXJlIHByaW1hIGRlbGwnaW52aW8gb2duaXF1YWx2b2x0YSBzaSB2ZXJpZmljaGlcbiIKKyIgICAgdGFsZSBldmVuaWVuemEuIFF1ZXN0byBjb21wb3J0YW1lbnRvIMOoIGNvbnRyb2xsYXRvXG4iCisiICAgIGRhbGwnaW1wb3N0YXppb25lIGRpIGNvbmZpZ3VyYXppb25lIHNlbmRlbWFpbC5jb25maXJtLlxuIgorIlxuIgorIiAgICBQZXIgdWx0ZXJpb3JpIGluZm9ybWF6aW9uaSwgZXNlZ3VpICdnaXQgc2VuZC1lbWFpbCAtLWhlbHAnLlxuIgorIiAgICBQZXIgbWFudGVuZXJlIGlsIGNvbXBvcnRhbWVudG8gY29ycmVudGUsIG1hIG5vblxuIgorIiAgICB2aXN1YWxpenphcmUgcGnDuSBxdWVzdG8gbWVzc2FnZ2lvLCBlc2VndWkgJ2dpdCBjb25maWdcbiIKKyIgICAgLS1nbG9iYWwgc2VuZGVtYWlsLmNvbmZpcm0gYXV0bycuXG4iCisiXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbeV0gW25dIFtlXSBbcV0gW2FdIGluIHlvdXIKKyMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKKyMuIGF0IHRoaXMgcG9pbnQuCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjAKK21zZ2lkICJTZW5kIHRoaXMgZW1haWw/IChbeV1lc3xbbl1vfFtlXWRpdHxbcV11aXR8W2FdbGwpOiAiCittc2dzdHIgIiIKKyJJbnZpYXJlIHF1ZXN0J2UtbWFpbD8gKFPDrCBbeV18W25db3xtb2RpZmljYSBbZV18ZXNjaSBbcV18aW52aWEgdHV0dGUgW2FdKTogIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjMKK21zZ2lkICJTZW5kIHRoaXMgZW1haWwgcmVwbHkgcmVxdWlyZWQiCittc2dzdHIgIsOIIHJpY2hpZXN0YSB1bmEgcmlzcG9zdGEgYWxsYSByaWNoaWVzdGEgZGkgaW52aW8gZS1tYWlsIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0OTEKK21zZ2lkICJUaGUgcmVxdWlyZWQgU01UUCBzZXJ2ZXIgaXMgbm90IHByb3Blcmx5IGRlZmluZWQuIgorbXNnc3RyICJJbCBzZXJ2ZXIgU01UUCByaWNoaWVzdG8gbm9uIMOoIGRlZmluaXRvIGluIG1vZG8gYWRlZ3VhdG8uIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgU1RBUlRUTFMhICVzIgorbXNnc3RyICJJbCBzZXJ2ZXIgbm9uIHN1cHBvcnRhIFNUQVJUVExTISAlcyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJTVEFSVFRMUyBmYWlsZWQhICVzIgorbXNnc3RyICJTVEFSVFRMUyBub24gcml1c2NpdG8hICVzIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NTYKK21zZ2lkICJVbmFibGUgdG8gaW5pdGlhbGl6ZSBTTVRQIHByb3Blcmx5LiBDaGVjayBjb25maWcgYW5kIHVzZSAtLXNtdHAtZGVidWcuIgorbXNnc3RyICIiCisiSW1wb3NzaWJpbGUgaW5pemlhbGl6emFyZSBTTVRQIGluIG1vZG8gYWRlZ3VhdG8uIENvbnRyb2xsYSBsYSBjb25maWd1cmF6aW9uZSAiCisiZSB1c2EgLS1zbXRwLWRlYnVnLiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBzZW5kICVzXG4iCittc2dzdHIgIkludmlvIGRpICVzIG5vbiByaXVzY2l0b1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRHJ5LVNlbnQgJXNcbiIKK21zZ3N0ciAiVGVzdCBpbnZpbyAlcyByaXVzY2l0b1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiU2VudCAlc1xuIgorbXNnc3RyICIlcyBpbnZpYXRvXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3OQorbXNnaWQgIkRyeS1PSy4gTG9nIHNheXM6XG4iCittc2dzdHIgIkVzZWN1emlvbmUgZGkgcHJvdmEgcml1c2NpdGEuIElsIHJlZ2lzdHJvIMOoIGlsIHNlZ3VlbnRlOlxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzkKK21zZ2lkICJPSy4gTG9nIHNheXM6XG4iCittc2dzdHIgIk9wZXJhemlvbmUgcml1c2NpdGEuIElsIHJlZ2lzdHJvIMOoIGlsIHNlZ3VlbnRlOlxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1OTEKK21zZ2lkICJSZXN1bHQ6ICIKK21zZ3N0ciAiUmlzdWx0YXRvOiAiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU5NAorbXNnaWQgIlJlc3VsdDogT0tcbiIKK21zZ3N0ciAiUmlzdWx0YXRvOiBPS1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgb3BlbiBmaWxlICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgaWwgZmlsZSAlcyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjU5IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY3OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIobWJveCkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgorbXNnc3RyICIobWJveCkgQWdnaXVuZ28gY2M6ICVzIGRhbGxhIHJpZ2EgJyVzJ1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiKG1ib3gpIEFkZGluZyB0bzogJXMgZnJvbSBsaW5lICclcydcbiIKK21zZ3N0ciAiKG1ib3gpIEFnZ2l1bmdvIHRvOiAlcyBkYWxsYSByaWdhICclcydcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIihub24tbWJveCkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgorbXNnc3RyICIobm9uIG1ib3gpIEFnZ2l1bmdvIGNjOiAlcyBkYWxsYSByaWdhICclcydcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzUzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIihib2R5KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCittc2dzdHIgIihjb3JwbykgQWdnaXVuZ28gY2M6ICVzIGRhbGxhIHJpZ2EgJyVzJ1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiKCVzKSBDb3VsZCBub3QgZXhlY3V0ZSAnJXMnIgorbXNnc3RyICIoJXMpIEltcG9zc2liaWxlIGVzZWd1aXJlICclcyciCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIoJXMpIEFkZGluZyAlczogJXMgZnJvbTogJyVzJ1xuIgorbXNnc3RyICIoJXMpIEFnZ2l1bmdvICVzOiAlcyBkYTogJyVzJ1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiKCVzKSBmYWlsZWQgdG8gY2xvc2UgcGlwZSB0byAnJXMnIgorbXNnc3RyICIoJXMpIGNoaXVzdXJhIGRlbGxhIHBpcGUgYSAnJXMnIG5vbiByaXVzY2l0YSIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTA1Cittc2dpZCAiY2Fubm90IHNlbmQgbWVzc2FnZSBhcyA3Yml0IgorbXNnc3RyICJpbXBvc3NpYmlsZSBpbnZpYXJlIGlsIG1lc3NhZ2dpbyBjb24gY29kaWZpY2EgYSA3IGJpdCIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTEzCittc2dpZCAiaW52YWxpZCB0cmFuc2ZlciBlbmNvZGluZyIKK21zZ3N0ciAiY29kaWZpY2EgZGkgdHJhc2ZlcmltZW50byBub24gdmFsaWRhIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NTQgZ2l0LXNlbmQtZW1haWwucGVybDoyMDA2IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjAxNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAlczogJXNcbiIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlICVzOiAlc1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IHBhdGNoIGNvbnRhaW5zIGEgbGluZSBsb25nZXIgdGhhbiA5OTggY2hhcmFjdGVycyIKK21zZ3N0ciAiJXM6IGxhIHBhdGNoIGNvbnRpZW5lIHVuYSByaWdhIHBpw7kgbHVuZ2EgZGkgOTk4IGNhcmF0dGVyaSIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNraXBwaW5nICVzIHdpdGggYmFja3VwIHN1ZmZpeCAnJXMnLlxuIgorbXNnc3RyICJTYWx0byAlcyBjb24gaWwgc3VmZmlzc28gZGkgYmFja3VwICclcycuXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBwbGVhc2Uga2VlcCAiW3l8Tl0iIGFzIGlzLgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTc4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkRvIHlvdSByZWFsbHkgd2FudCB0byBzZW5kICVzPyBbeXxOXTogIgorbXNnc3RyICJJbnZpYXJlICVzPyBbeXxOXTogIgorCisjfiBtc2dpZCAie2Ryb3Asa2VlcCxhc2t9IgorI34gbXNnc3RyICJ7ZHJvcCxrZWVwLGFza30iCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAiU3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixhLHEsZCVzLD9dPyAiCisjfiBtc2dzdHIgIk1vZGlmaWNhIG1vZG8gc3RhZ2UgW3ksbixhLHEsZCVzLD9dPyAiCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAiU3RhZ2UgZGVsZXRpb24gW3ksbixhLHEsZCVzLD9dPyAiCisjfiBtc2dzdHIgIkVsaW1pbmF6aW9uZSBzdGFnZSBbeSxuLGEscSxkJXMsP10/ICIKKworIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJTdGFnZSB0aGlzIGh1bmsgW3ksbixhLHEsZCVzLD9dPyAiCisjfiBtc2dzdHIgIkVzZWd1aXJlIGxvIHN0YWdlIGRpIHF1ZXN0J2h1bmsgW3ksbixhLHEsZCVzLD9dPyAiCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKKyN+ICJtYXJrZWQgZm9yIHN0YWdpbmcuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJTZSBsYSBwYXRjaCB2aWVuZSBhcHBsaWNhdGEgc2VuemEgcHJvYmxlbWksIGwnaHVuayBtb2RpZmljYXRvIHNhcsOgXG4iCisjfiAiY29udHJhc3NlZ25hdG8gaW1tZWRpYXRhbWVudGUgcGVyIGwnYWdnaXVudGEgYWxsJ2FyZWEgZGkgc3RhZ2luZy5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCisjfiAibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKKyN+ICJxIC0gcXVpdDsgZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisjfiAiYSAtIHN0YWdlIHRoaXMgYW5kIGFsbCB0aGUgcmVtYWluaW5nIGh1bmtzXG4iCisjfiAiZCAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgbm9yIGFueSBvZiB0aGUgcmVtYWluaW5nIGh1bmtzXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJ5IC0gYWdnaXVuZ2kgcXVlc3QnaHVuayBhbGwnYXJlYSBkaSBzdGFnaW5nXG4iCisjfiAibiAtIG5vbiBhZ2dpdW5nZXJlIHF1ZXN0J2h1bmsgYWxsJ2FyZWEgZGkgc3RhZ2luZ1xuIgorI34gInEgLSBlc2NpOyBub24gYWdnaXVuZ2VyZSBuw6kgcXVlc3QnaHVuayBuw6kgcXVlbGxpIHJpbWFuZW50aSBhbGwnYXJlYSBkaSAiCisjfiAic3RhZ2luZ1xuIgorI34gImEgLSBhZ2dpdW5naSBxdWVzdCdodW5rIGUgdHV0dGkgcXVlbGxpIHN1Y2Nlc3NpdmkgbmVsIGZpbGUgYWxsJ2FyZWEgZGkgIgorI34gInN0YWdpbmdcbiIKKyN+ICJkIC0gbm9uIGFnZ2l1bmdlcmUgbsOpIHF1ZXN0J2h1bmsgbsOpIHF1ZWxsaSBzdWNjZXNzaXZpIG5lbCBmaWxlIGFsbCdhcmVhICIKKyN+ICJkaSBzdGFnaW5nXG4iCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAiY291bGQgbm90IGNvcHkgJyVzJyB0byAnJXMnLiIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgY29waWFyZSAnJXMnIGluICclcycuIgorCisjfiBtc2dpZCAibWFsZm9ybWVkIGlkZW50IGxpbmUiCisjfiBtc2dzdHIgInJpZ2EgaWRlbnQgbWFsZm9ybWF0YSIKKworI34gbXNnaWQgImNvcnJ1cHRlZCBhdXRob3Igd2l0aG91dCBkYXRlIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICJpbmZvcm1hemlvbmkgc3VsbCdhdXRvcmUgY29ycm90dGUgKHNlbnphIGRhdGEpIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJS4qcyciCisjfiBtc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgJyUuKnMnIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgImNvdWxkIG5vdCBjaGVja291dCAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgY2hlY2tvdXQgZGkgJXMiCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAiZmlsZW5hbWUgaW4gdHJlZSBlbnRyeSBjb250YWlucyBiYWNrc2xhc2g6ICclcyciCisjfiBtc2dzdHIgImlsIG5vbWUgZmlsZSBuZWxsYSB2b2NlIGFsYmVybyBjb250aWVuZSB1bmEgYmFycmEgcm92ZXNjaWF0YTogJyVzJyIKKworIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCB0aGVtLlxuIgorI34gbXNnc3RyICJVc2EgLWYgc2UgdnVvaSBkYXZ2ZXJvIGFnZ2l1bmdlcmxpLlxuIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgIk1heWJlIHlvdSB3YW50ZWQgdG8gc2F5ICdnaXQgYWRkIC4nP1xuIgorI34gbXNnc3RyICJGb3JzZSBpbnRlbmRldmkgZGlyZSAnZ2l0IGFkZCAuJz9cbiIKKworIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJwYWNrZmlsZSBpcyBpbnZhbGlkOiAlcyIKKyN+IG1zZ3N0ciAicGFja2ZpbGUgbm9uIHZhbGlkbzogJXMiCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gcGFja2ZpbGUgZm9yIHJldXNlOiAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlIGlsIHBhY2tmaWxlIHBlciBpbCBzdW8gcml1c286ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgaW4gcmV1c2VkIHBhY2tmaWxlIgorI34gbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBzZWVrIG5lbCBwYWNrZmlsZSByaXVzYXRvIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZnJvbSByZXVzZWQgcGFja2ZpbGUiCisjfiBtc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgZGFsIHBhY2tmaWxlIHJpdXNhdG8iCisKKyN+IG1zZ2lkICJubyBIRUFEPyIKKyN+IG1zZ3N0ciAibmVzc3VuJ0hFQUQ/IgorCisjfiBtc2dpZCAibWFrZSBjb21taXR0ZXIgZGF0ZSBtYXRjaCBhdXRob3IgZGF0ZSIKKyN+IG1zZ3N0ciAiIgorI34gImZhaSBjb3JyaXNwb25kZXJlIGxhIGRhdGEgZGVsbGEgcGVyc29uYSBjaGUgaGEgZXNlZ3VpdG8gaWwgY29tbWl0IGFsbGEgIgorI34gImRhdGEgYXV0b3JlIgorCisjfiBtc2dpZCAiaWdub3JlIGF1dGhvciBkYXRlIGFuZCB1c2UgY3VycmVudCBkYXRlIgorI34gbXNnc3RyICJpZ25vcmEgbGEgZGF0YSBhdXRvcmUgZSB1c2EgbGEgZGF0YSBjb3JyZW50ZSIKKworI34gbXNnaWQgInN5bm9ueW0gb2YgLS1yZXNldC1hdXRob3ItZGF0ZSIKKyN+IG1zZ3N0ciAic2lub25pbW8gZGkgLS1yZXNldC1hdXRob3ItZGF0ZSIKKworI34gbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIHdoaXRlc3BhY2UiCisjfiBtc2dzdHIgImlnbm9yYSBtb2RpZmljaGUgYWdsaSBzcGF6aSBiaWFuY2hpIgorCisjfiBtc2dpZCAicHJlc2VydmUgZW1wdHkgY29tbWl0cyBkdXJpbmcgcmViYXNlIgorI34gbXNnc3RyICJtYW50aWVuaSBpIGNvbW1pdCB2dW90aSBkdXJhbnRlIGlsIHJlYmFzZSIKKworI34gbXNnaWQgImNhbm5vdCBjb21iaW5lIC0tdXNlLWJpdG1hcC1pbmRleCB3aXRoIG9iamVjdCBmaWx0ZXJpbmciCisjfiBtc2dzdHIgImltcG9zc2liaWxlIGNvbWJpbmFyZSAtLXVzZS1iaXRtYXAtaW5kZXggY29uIGlsIGZpbHRyYWdnaW8gb2dnZXR0aSIKKworIywgc2gtZm9ybWF0CisjfiBtc2dpZCAiIgorI34gIlRoZSBmb2xsb3dpbmcgcGF0aCBpcyBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCisjfiAiJHNtX3BhdGhcbiIKKyN+ICJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCBpdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJJbCBzZWd1ZW50ZSBwZXJjb3JzbyDDqCBpZ25vcmF0byBkYSB1bm8gZGVpIHR1b2kgZmlsZSAuZ2l0aWdub3JlOlxuIgorI34gIiRzbV9wYXRoXG4iCisjfiAiVXNhIC1mIHNlIHZ1b2kgZGF2dmVybyBhZ2dpdW5nZXJsby4iCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAidW5hYmxlIHRvIGdldCB0cmVlIGZvciAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgcmVjdXBlcmFyZSBsJ2FsYmVybyBwZXIgJXMiCisKKyN+IG1zZ2lkICJVc2UgYW4gZXhwZXJpbWVudGFsIGhldXJpc3RpYyB0byBpbXByb3ZlIGRpZmZzIgorI34gbXNnc3RyICJVc2EgdW4nZXVyaXN0aWNhIHNwZXJpbWVudGFsZSBwZXIgbWlnbGlvcmFyZSBpIGRpZmYiCisKKyN+IG1zZ2lkICJnaXQgY29tbWl0LWdyYXBoIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgorI34gbXNnc3RyICJnaXQgY29tbWl0LWdyYXBoIFstLW9iamVjdC1kaXIgPGRpcmVjdG9yeSBvZ2dldHRpPl0iCisKKyN+IG1zZ2lkICJnaXQgY29tbWl0LWdyYXBoIHJlYWQgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCisjfiBtc2dzdHIgImdpdCBjb21taXQtZ3JhcGggcmVhZCBbLS1vYmplY3QtZGlyIDxkaXJlY3Rvcnkgb2dnZXR0aT5dIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgInVua25vd24gY29yZS51bnRyYWNrZWRDYWNoZSB2YWx1ZSAnJXMnOyB1c2luZyAna2VlcCcgZGVmYXVsdCB2YWx1ZSIKKyN+IG1zZ3N0ciAiIgorI34gInZhbG9yZSBjb3JlLnVudHJhY2tlZENhY2hlICclcycgbm9uIHZhbGlkbzsgdXRpbGl6emVyw7IgaWwgdmFsb3JlICIKKyN+ICJwcmVkZWZpbml0byAna2VlcCciCisKKyN+IG1zZ2lkICJjYW5ub3QgY2hhbmdlIHBhcnRpYWwgY2xvbmUgcHJvbWlzb3IgcmVtb3RlIgorI34gbXNnc3RyICJpbXBvc3NpYmlsZSBtb2RpZmljYXJlIGlsIHJlbW90byBwcm9tZXR0ZW50ZSBkZWwgY2xvbmUgcGFyemlhbGUiCisKKyN+IG1zZ2lkICJlcnJvciBidWlsZGluZyB0cmVlcyIKKyN+IG1zZ3N0ciAiZXJyb3JlIGR1cmFudGUgbGEgY29zdHJ1emlvbmUgZGVnbGkgYWxiZXJpIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgImludmFsaWQgZGF0ZSBmb3JtYXQgJyVzJyBpbiAnJXMnIgorI34gbXNnc3RyICJmb3JtYXRvIGRhdGEgJyVzJyBub24gdmFsaWRvIGluICclcyciCisKKyN+IG1zZ2lkICJ3cml0aW5nIHJvb3QgY29tbWl0IgorI34gbXNnc3RyICJzY3JpdHR1cmEgY29tbWl0IHJhZGljZSBpbiBjb3JzbyIKKworIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJzdGFnZWQgY2hhbmdlcyBpbiB0aGUgZm9sbG93aW5nIGZpbGVzIG1heSBiZSBsb3N0OiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gImxlIG1vZGlmaWNoZSBpbiBzdGFnZSBuZWkgc2VndWVudGkgZmlsZSBwb3RyZWJiZXJvIGFuZGFyZSBwZXJkdXRlOiAlcyIKKworI34gbXNnaWQgIiIKKyN+ICItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdpdGggdGhlIHJlbW90ZSBjb25maWd1cmVkIGluIGV4dGVuc2lvbnMuIgorI34gInBhcnRpYWxDbG9uZSIKKyN+IG1zZ3N0ciAiIgorI34gIi0tZmlsdGVyIHB1w7IgZXNzZXJlIHVzYXRvIHNvbG8gY29uIGlsIHJlbW90byBjb25maWd1cmF0byBuZWxsZSBlc3RlbnNpb25pLiIKKyN+ICJwYXJ0aWFsQ2xvbmUiCisKKyN+IG1zZ2lkICJ2ZXJpZnkgY29tbWl0LW1zZyBob29rIgorI34gbXNnc3RyICJ2ZXJpZmljYSBob29rIGNvbW1pdC1tc2ciCisKKyN+IG1zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1yZWJhc2UtbWVyZ2VzJyB3aXRoICctLXN0cmF0ZWd5LW9wdGlvbiciCisjfiBtc2dzdHIgImltcG9zc2liaWxlIGNvbWJpbmFyZSAnLS1yZWJhc2UtbWVyZ2VzJyBjb24gJy0tc3RyYXRlZ3ktb3B0aW9uJyIKKworIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJpbnZhbGlkIHNwYXJzZSB2YWx1ZSAnJXMnIgorI34gbXNnc3RyICJ2YWxvcmUgc3BhcnNlIG5vbiB2YWxpZG86ICclcyciCisKKyN+IG1zZ2lkICIiCisjfiAiRmV0Y2ggbm9ybWFsbHkgaW5kaWNhdGVzIHdoaWNoIGJyYW5jaGVzIGhhZCBhIGZvcmNlZCB1cGRhdGUsIGJ1dCB0aGF0ICIKKyN+ICJjaGVjayBoYXMgYmVlbiBkaXNhYmxlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJJbCBmZXRjaCBub3JtYWxtZW50ZSBpbmRpY2EgcXVhbGkgYnJhbmNoIHNpYW5vIHN0YXRpIHNvdHRvcG9zdGkgYWQgIgorI34gImFnZ2lvcm5hbWVudG8gZm9yemF0bywgbWEgdGFsZSBjb250cm9sbG8gw6ggc3RhdG8gZGlzYWJpbGl0YXRvLiIKKworI34gbXNnaWQgIiIKKyN+ICJvciBydW4gJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgZmFsc2UnIHRvIGF2b2lkIHRoaXMgY2hlY2suXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJvIGVzZWd1aXJlICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzIGZhbHNlJyBwZXIgb21ldHRlcmUgIgorI34gInF1ZXN0b1xuIgorI34gImNvbnRyb2xsby5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJsb2cubWFpbG1hcCBpcyBub3Qgc2V0OyBpdHMgaW1wbGljaXQgdmFsdWUgd2lsbCBjaGFuZ2UgaW4gYW5cbiIKKyN+ICJ1cGNvbWluZyByZWxlYXNlLiBUbyBzcXVlbGNoIHRoaXMgbWVzc2FnZSBhbmQgcHJlc2VydmUgY3VycmVudFxuIgorI34gImJlaGF2aW91ciwgc2V0IHRoZSBsb2cubWFpbG1hcCBjb25maWd1cmF0aW9uIHZhbHVlIHRvIGZhbHNlLlxuIgorI34gIlxuIgorI34gIlRvIHNxdWVsY2ggdGhpcyBtZXNzYWdlIGFuZCBhZG9wdCB0aGUgbmV3IGJlaGF2aW91ciBub3csIHNldCB0aGVcbiIKKyN+ICJsb2cubWFpbG1hcCBjb25maWd1cmF0aW9uIHZhbHVlIHRvIHRydWUuXG4iCisjfiAiXG4iCisjfiAiU2VlICdnaXQgaGVscCBjb25maWcnIGFuZCBzZWFyY2ggZm9yICdsb2cubWFpbG1hcCcgZm9yIGZ1cnRoZXIgIgorI34gImluZm9ybWF0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gImxvZy5tYWlsbWFwIG5vbiDDqCBpbXBvc3RhdG87IGlsIHN1byB2YWxvcmUgaW1wbGljaXRvIHNhcsOgIG1vZGlmaWNhdG9cbiIKKyN+ICJpbiB1bmEgcHJvc3NpbWEgdmVyc2lvbmUuIFBlciBlbGltaW5hcmUgcXVlc3RvIG1lc3NhZ2dpbyBlIG1hbnRlbmVyZVxuIgorI34gImlsIGNvbXBvcnRhbWVudG8gYXR0dWFsZSwgaW1wb3N0YSBpbCB2YWxvcmUgZGkgY29uZmlndXJhemlvbmVcbiIKKyN+ICJsb2cubWFpbG1hcCBhIGZhbHNlLlxuIgorI34gIlxuIgorI34gIlBlciBlbGltaW5hcmUgcXVlc3RvIG1lc3NhZ2dpbyBlIGFkb3R0YXJlIGlsIG51b3ZvIGNvbXBvcnRhbWVudG8gb3JhLFxuIgorI34gImltcG9zdGEgaWwgdmFsb3JlIGRpIGNvbmZpZ3VyYXppb25lIGxvZy5tYWlsbWFwIGEgdHJ1ZS5cbiIKKyN+ICJcbiIKKyN+ICJWZWRpICdnaXQgaGVscCBjb25maWcnIGUgY2VyY2EgJ2xvZy5tYWlsbWFwJyBwZXIgdWx0ZXJpb3JpIGluZm9ybWF6aW9uaS4iCisKKyN+IG1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgbXVsdGlfYWNrX2RldGFpbGVkIgorI34gbXNnc3RyICJJbCBzZXJ2ZXIgc3VwcG9ydGEgbXVsdGlfYWNrX2RldGFpbGVzIgorCisjfiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIG5vLWRvbmUiCisjfiBtc2dzdHIgIklsIHNlcnZlciBzdXBwb3J0YSBuby1kb25lIgorCisjfiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIG11bHRpX2FjayIKKyN+IG1zZ3N0ciAiSWwgc2VydmVyIHN1cHBvcnRhIG11bHRpX2FjayIKKworI34gbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQtNjRrIgorI34gbXNnc3RyICJJbCBzZXJ2ZXIgc3VwcG9ydGEgc2lkZS1iYW5kLTY0ayIKKworI34gbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQiCisjfiBtc2dzdHIgIklsIHNlcnZlciBzdXBwb3J0YSBzaWRlLWJhbmQiCisKKyN+IG1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgYWxsb3ctdGlwLXNoYTEtaW4td2FudCIKKyN+IG1zZ3N0ciAiSWwgc2VydmVyIHN1cHBvcnRhIGFsbG93LXRpcC1zaGExLWluLXdhbnQiCisKKyN+IG1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgYWxsb3ctcmVhY2hhYmxlLXNoYTEtaW4td2FudCIKKyN+IG1zZ3N0ciAiSWwgc2VydmVyIHN1cHBvcnRhIGFsbG93LXJlYWNoYWJsZS1zaGExLWluLXdhbnQiCisKKyN+IG1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgb2ZzLWRlbHRhIgorI34gbXNnc3RyICJJbCBzZXJ2ZXIgc3VwcG9ydGEgb2ZzLWRlbHRhIgorCisjfiBtc2dpZCAiKEhFQUQgZGV0YWNoZWQgYXQgJXMpIgorI34gbXNnc3RyICIoSEVBRCBzY29sbGVnYXRvIHN1ICVzKSIKKworI34gbXNnaWQgIihIRUFEIGRldGFjaGVkIGZyb20gJXMpIgorI34gbXNnc3RyICIoSEVBRCBzY29sbGVnYXRvIGRhICVzKSIKKworI34gbXNnaWQgIkNoZWNraW5nIG91dCBmaWxlcyIKKyN+IG1zZ3N0ciAiQ2hlY2tvdXQgZGVpIGZpbGUgaW4gY29yc28iCisKKyN+IG1zZ2lkICJjYW5ub3QgYmUgaW50ZXJhY3RpdmUgd2l0aG91dCBzdGRpbiBjb25uZWN0ZWQgdG8gYSB0ZXJtaW5hbC4iCisjfiBtc2dzdHIgIiIKKyN+ICJpbXBvc3NpYmlsZSBlc2VndWlyZSBsJ2F0dGl2aXTDoCBpbiBtb2RhbGl0w6AgaW50ZXJhdHRpdmEgY29uIGxvIHN0YW5kYXJkICIKKyN+ICJpbnB1dCBub24gY29sbGVnYXRvIGEgdW4gdGVybWluYWxlLiIKKworI34gbXNnaWQgImZhaWxlZCB0byBzdGF0ICVzXG4iCisjfiBtc2dzdHIgInN0YXQgZGkgJXMgbm9uIHJpdXNjaXRvXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgeW91IHdpc2ggdG8gc2tpcCB0aGlzIGNvbW1pdCwgdXNlOlxuIgorI34gIlxuIgorI34gIiAgICBnaXQgcmVzZXRcbiIKKyN+ICJcbiIKKyN+ICJUaGVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB3aWxsIHJlc3VtZSBjaGVycnktcGlja2luZ1xuIgorI34gInRoZSByZW1haW5pbmcgY29tbWl0cy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlNlIHZ1b2kgaWdub3JhcmUgcXVlc3RvIGNvbW1pdCwgdXNhOlxuIgorI34gIlxuIgorI34gIiAgICBnaXQgcmVzZXRcbiIKKyN+ICJcbiIKKyN+ICJRdWluZGkgaWwgY29tYW5kbyBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgZmFyw6AgcmlwcmVuZGVyZVxuIgorI34gImlsIGNoZXJyeSBwaWNraW5nIHBlciBpIGNvbW1pdCByaW1hbmVudGkuXG4iCisKKyN+IG1zZ2lkICJ1bnJlY29nbml6ZWQgdmVyYjogJXMiCisjfiBtc2dzdHIgInZlcmJvIG5vbiByaWNvbm9zY2l1dG86ICVzIgorCisjfiBtc2dpZCAiaGFzaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCisjfiBtc2dzdHIgImxhIHZlcnNpb25lIGRlbGwnaGFzaCAlWCBub24gY29ycmlzcG9uZGUgYWxsYSB2ZXJzaW9uZSAlWCIKKworI34gbXNnaWQgIm9wdGlvbiAnJXMnIHJlcXVpcmVzIGEgdmFsdWUiCisjfiBtc2dzdHIgImwnb3B6aW9uZSAnJXMnIHJpY2hpZWRlIHVuIHZhbG9yZSIKKworI34gbXNnaWQgImNvdWxkIG5vdCB0cmFuc2Zvcm0gdGhlIHRvZG8gbGlzdCIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgdHJhc2Zvcm1hcmUgbCdlbGVuY28gdG9kbyIKKworI34gbXNnaWQgImRlZmF1bHQiCisjfiBtc2dzdHIgImltcG9zdGF6aW9uZSBwcmVkZWZpbml0YSIKKworI34gbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciCisjfiBtc2dzdHIgIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgY3JlYXJlIGxhIGRpcmVjdG9yeSAnJXMnIgorCisjLCBmdXp6eQorI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgJyVzJyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJDb3VsZCBub3QgbW92ZSBiYWNrIHRvICRoZWFkX25hbWUiCisjfiBtc2dzdHIgIk5vbiDDqCBzdGF0byBwb3NzaWJpbGUgcmltdW92ZXJlIGlsIGJyYW5jaCAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYXRhbDogY2Fubm90IGNvbWJpbmUgJy0tc2lnbm9mZicgd2l0aCAnLS1wcmVzZXJ2ZS1tZXJnZXMnIgorI34gbXNnc3RyICJJbXBvc3NpYmlsZSBjb21iaW5hcmUgLS1uby1mZiBjb24gLS1mZi1vbmx5LiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYXRhbDogY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmUtbWVyZ2VzJyB3aXRoICctLXJlYmFzZS1tZXJnZXMnIgorI34gbXNnc3RyICJJbXBvc3NpYmlsZSBjb21iaW5hcmUgLS1uby1mZiBjb24gLS1mZi1vbmx5LiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYXRhbDogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneS1vcHRpb24nIgorI34gbXNnc3RyICJJbXBvc3NpYmlsZSBjb21iaW5hcmUgLS1uby1mZiBjb24gLS1mZi1vbmx5LiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYXRhbDogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneSciCisjfiBtc2dzdHIgIkltcG9zc2liaWxlIGNvbWJpbmFyZSAtLW5vLWZmIGNvbiAtLWZmLW9ubHkuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkRvZXMgbm90IHBvaW50IHRvIGEgdmFsaWQgY29tbWl0OiAkb250b19uYW1lIgorI34gbXNnc3RyICInJXMnIG5vbiBwdW50YSBhZCB1biBjb21taXQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQ2hhbmdlcyB0byAkb250bzoiCisjfiBtc2dzdHIgIk1vZGlmaWNoZSBkaSBjdWkgdmVycsOgIGVzZWd1aXRvIGlsIGNvbW1pdDoiCisKKyN+IG1zZ2lkICJpZ25vcmluZyB1bmtub3duIGNvbG9yLW1vdmVkLXdzIG1vZGUgJyVzJyIKKyN+IG1zZ3N0ciAibW9kYWxpdMOgIGNvbG9yLW1vdmVkLXdzIHNjb25vc2NpdXRhICclcycgaWdub3JhdGEiCisKKyN+IG1zZ2lkICJvbmx5ICd0cmVlOjAnIGlzIHN1cHBvcnRlZCIKKyN+IG1zZ3N0ciAiw6ggc3VwcG9ydGF0byBzb2xvICd0cmVlOjAnIgorCisjfiBtc2dpZCAiUmVuYW1pbmcgJXMgdG8gJXMgYW5kICVzIHRvICVzIGluc3RlYWQiCisjfiBtc2dzdHIgIlJpZGVub21pbm8gJXMgaW4gJXMgZSAlcyBpbiAlcyIKKworI34gbXNnaWQgIkFkZGluZyBtZXJnZWQgJXMiCisjfiBtc2dzdHIgIkFnZ2l1bnRhIGVsZW1lbnRvIHNvdHRvcG9zdG8gYSBtZXJnZSAlcyIKKworI34gbXNnaWQgIkludGVybmFsIGVycm9yIgorI34gbXNnc3RyICJFcnJvcmUgaW50ZXJubyIKKworI34gbXNnaWQgIm1haW5saW5lIHdhcyBzcGVjaWZpZWQgYnV0IGNvbW1pdCAlcyBpcyBub3QgYSBtZXJnZS4iCisjfiBtc2dzdHIgIsOoIHN0YXRvIHNwZWNpZmljYXRvIG1haW5saW5lIG1hIGlsIGNvbW1pdCAlcyBub24gw6ggdW4gbWVyZ2UuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHNoYTEgZmlsZW5hbWUgJXMiCisjfiBtc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGlsIGZpbGUgc2hhMSBjb24gbm9tZSAlcyIKKworI34gbXNnaWQgImNhbm5vdCByZWFkIHNoYTFfZmlsZSBmb3IgJXMiCisjfiBtc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaWwgZmlsZSBzaGExIHBlciAlcyIKKworI34gbXNnaWQgInVucmVjb2duaXNlZCBvcHRpb246ICckYXJnJyIKKyN+IG1zZ3N0ciAib3B6aW9uZSBub24gcmljb25vc2NpdXRhOiAnJGFyZyciCisKKyN+IG1zZ2lkICInJGludmFsaWQnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIKKyN+IG1zZ3N0ciAiJyRpbnZhbGlkJyBub24gw6ggdW4gY29tbWl0IHZhbGlkbyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyAobG9va2luZyBmb3IgJyVzJykiCisjfiBtc2dzdHIgIm5vbiDDqCBzdGF0byBwb3NzaWJpbGUgbGVnZ2VyZSBpbCBmaWxlIGRpIGxvZyAnJXMnIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkNhbid0IHN0YXQgJXMiCisjfiBtc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGxvIHN0YXQgZGkgJyVzJyIKKworI34gbXNnaWQgIk5vIHN1Y2ggcmVtb3RlOiAlcyIKKyN+IG1zZ3N0ciAiUmVtb3RlIG5vbiBlc2lzdGVudGU6ICVzIgorCisjfiBtc2dpZCAiICVkIGZpbGUgY2hhbmdlZCIKKyN+IG1zZ2lkX3BsdXJhbCAiICVkIGZpbGVzIGNoYW5nZWQiCisjfiBtc2dzdHJbMF0gIiAlZCBmaWxlIG1vZGlmaWNhdG8iCisjfiBtc2dzdHJbMV0gIiAlZCBmaWxlIG1vZGlmaWNhdGkiCisKKyN+IG1zZ2lkICIsICVkIGluc2VydGlvbigrKSIKKyN+IG1zZ2lkX3BsdXJhbCAiLCAlZCBpbnNlcnRpb25zKCspIgorI34gbXNnc3RyWzBdICIsICVkIGluc2VyemlvbmUoKykiCisjfiBtc2dzdHJbMV0gIiwgJWQgaW5zZXJ6aW9uaSgrKSIKKworI34gbXNnaWQgIiwgJWQgZGVsZXRpb24oLSkiCisjfiBtc2dpZF9wbHVyYWwgIiwgJWQgZGVsZXRpb25zKC0pIgorI34gbXNnc3RyWzBdICIuICVkIHJpbW96aW9uZSgtKSIKKyN+IG1zZ3N0clsxXSAiLCAlZCByaW1vemlvbmkoLSkiCisKKyN+IG1zZ2lkICJjb3VsZCBub3QgcnVuIGdwZy4iCisjfiBtc2dzdHIgIm5vbiDDqCBzdGF0byBwb3NzaWJpbGUgZXNlZ3VpcmUgZ3BnLiIKKworI34gbXNnaWQgImdwZyBkaWQgbm90IGFjY2VwdCB0aGUgZGF0YSIKKyN+IG1zZ3N0ciAiZ3BnIG5vbiBoYSBhY2NldHRhdG8gaSBkYXRpIgorCisjfiBtc2dpZCAiJyVzJzogJXMiCisjfiBtc2dzdHIgIiclcyc6ICVzIgorCisjfiBtc2dpZCAiaW4gJTAuMWYgc2Vjb25kcyBhdXRvbWF0aWNhbGx5Li4uIgorI34gbXNnc3RyICJhdXRvbWF0aWNhbWVudGUgdHJhICUwLjFmIHNlY29uZGkuLi4iCisKKyN+IG1zZ2lkICJZb3UgZG8gbm90IGhhdmUgYSB2YWxpZCBIRUFEIgorI34gbXNnc3RyICJOb24gaGFpIHVuIEhFQUQgdmFsaWRvIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGxvb2sgdXAgY3VycmVudCB1c2VyIGluIHRoZSBwYXNzd2QgZmlsZTogJXMiCisjfiBtc2dzdHIgImltcG9zc2liaWxlIHRyb3ZhcmUgbCd1dGVudGUgY29ycmVudGUgbmVsIGZpbGUgcGFzc3dkOiAlcyIKKworI34gbXNnaWQgIm5vIHN1Y2ggdXNlciIKKyN+IG1zZ3N0ciAidXRlbnRlIG5vbiBlc2lzdGVudGUiCisKKyN+IG1zZ2lkICJidWciCisjfiBtc2dzdHIgImJ1ZyIKKworI34gbXNnaWQgImNvcGllZDogICAgICVzIC0+ICVzIgorI34gbXNnc3RyICJjb3BpYXRvOiAgICAgJXMgLT4gJXMiCisKKyN+IG1zZ2lkICJkZWxldGVkOiAgICAlcyIKKyN+IG1zZ3N0ciAiZWxpbWluYXRvOiAgICAlcyIKKworI34gbXNnaWQgIm1vZGlmaWVkOiAgICVzIgorI34gbXNnc3RyICJtb2RpZmljYXRvOiAgICVzIgorCisjfiBtc2dpZCAicmVuYW1lZDogICAgJXMgLT4gJXMiCisjfiBtc2dzdHIgInJpbm9taW5hdG86ICAgICVzIC0+ICVzIgorCisjfiBtc2dpZCAiLCBiZWhpbmQgIgorI34gbXNnc3RyICIsIGluZGlldHJvICIKKworI34gbXNnaWQgIm5vIGZpbGVzIGFkZGVkIgorI34gbXNnc3RyICJuZXNzdW4gZmlsZSBhZ2dpdW50byIKKworI34gbXNnaWQgIm9vcHMiCisjfiBtc2dzdHIgIm9vcHMiCisKKyN+IG1zZ2lkICIlczogaGFzIGJlZW4gZGVsZXRlZC9yZW5hbWVkIgorI34gbXNnc3RyICIlczogw6ggc3RhdGEgZWxpbWluYXRhL3Jpbm9taW5hdGEiCisKKyN+IG1zZ2lkICJbJXM6IGFoZWFkICVkXSIKKyN+IG1zZ3N0ciAiWyVzOiBhdmFudGkgJWRdIgorCisjfiBtc2dpZCAiZGlmZl9zZXR1cF9kb25lIGZhaWxlZCIKKyN+IG1zZ3N0ciAiZGlmZl9zZXR1cF9kb25lIG5vbiByaXVzY2l0byIKKworI34gbXNnaWQgIi0tZGV0YWNoIGNhbm5vdCBiZSB1c2VkIHdpdGggLWIvLUIvLS1vcnBoYW4iCisjfiBtc2dzdHIgIi0tZGV0YWNoIG5vbiBwdcOyIGVzc2VyZSB1c2F0YSBjb24gLWIvLUIvLS1vcnBoYW4iCisKKyN+IG1zZ2lkICItLWRldGFjaCBjYW5ub3QgYmUgdXNlZCB3aXRoIC10IgorI34gbXNnc3RyICItLWRldGFjaCBub24gcHXDsiBlc3NlcmUgdXNhdGEgY29uIC10IgorCisjfiBtc2dpZCAiLS1vcnBoYW4gY2Fubm90IGJlIHVzZWQgd2l0aCAtdCIKKyN+IG1zZ3N0ciAiLS1vcnBoYW4gbm9uIHB1w7IgZXNzZXJlIHVzYXRhIGNvbiAtdCIKKworI34gbXNnaWQgImdpdCBjaGVja291dDogLWYgYW5kIC1tIGFyZSBpbmNvbXBhdGlibGUiCisjfiBtc2dzdHIgImdpdCBjaGVja291dDogLWYgZSAtbSBub24gc29ubyBjb21wYXRpYmlsaSIKKworI34gbXNnaWQgIk5vIGV4aXN0aW5nIGF1dGhvciBmb3VuZCB3aXRoICclcyciCisjfiBtc2dzdHIgIk5lc3N1biBhdXRvcmUgZXNpc3RlbnRlIHRyb3ZhdG8gY29uICclcyciCisKKyN+IG1zZ2lkICInJXMnOiBub3QgYSBkb2N1bWVudGF0aW9uIGRpcmVjdG9yeS4iCisjfiBtc2dzdHIgIiclcyc6IG5vbiDDqCB1bmEgZGlyZWN0b3J5IGRlbGxhIGRvY3VtZW50YXppb25lLiIKKworI34gbXNnaWQgIlJlaW5pdGlhbGl6ZWQgZXhpc3RpbmciCisjfiBtc2dzdHIgIlJlaW5pemlhbGl6emF0byB1biBlc2lzdGVudGUiCisKKyN+IG1zZ2lkICJJbml0aWFsaXplZCBlbXB0eSIKKyN+IG1zZ3N0ciAiSW5pemlhbGl6emF0byB1biIKKworI34gbXNnaWQgIiBzaGFyZWQiCisjfiBtc2dzdHIgIiBjb25kaXZpc28iCisKKyN+IG1zZ2lkICJXcml0aW5nIFNRVUFTSF9NU0ciCisjfiBtc2dzdHIgIlNjcml0dHVyYSBkaSBTUVVBU0hfTVNHIgorCisjfiBtc2dpZCAiRmluaXNoaW5nIFNRVUFTSF9NU0ciCisjfiBtc2dzdHIgIkNvbXBsZXRhbWVudG8gZGkgU1FVQVNIX01TRyIKKworI34gbXNnaWQgInRhZyBuYW1lIHRvbyBsb25nOiAlLipzLi4uIgorI34gbXNnc3RyICJub21lIHRhZyB0cm9wcG8gbHVuZ286ICUuKnMuLi4iCisKKyN+IG1zZ2lkICJ0YWcgaGVhZGVyIHRvbyBiaWcuIgorI34gbXNnc3RyICJpbnRlc3RhemlvbmUgZGVsIHRhZyB0cm9wcG8gZ3JhbmRlLiIKKworI34gbXNnaWQgIllvdSBuZWVkIHRvIHNldCB5b3VyIGNvbW1pdHRlciBpbmZvIGZpcnN0IgorI34gbXNnc3RyICLDiCBuZWNlc3NhcmlvIGltcG9zdGFyZSBsZSBpbmZvcm1hemlvbmkgc3VsIGNvbW1pdHRlciIKKworI34gbXNnaWQgIiIKKyN+ICJXaGVuIHlvdSBoYXZlIHJlc29sdmVkIHRoaXMgcHJvYmxlbSBydW4gXCIkY21kbGluZSAtLXJlc29sdmVkXCIuXG4iCisjfiAiSWYgeW91IHdvdWxkIHByZWZlciB0byBza2lwIHRoaXMgcGF0Y2gsIGluc3RlYWQgcnVuIFwiJGNtZGxpbmUgLS1za2lwXCIuXG4iCisjfiAiVG8gcmVzdG9yZSB0aGUgb3JpZ2luYWwgYnJhbmNoIGFuZCBzdG9wIHBhdGNoaW5nIHJ1biBcIiRjbWRsaW5lIC0tYWJvcnRcIi4iCisjfiBtc2dzdHIgIiIKKyN+ICJRdWFuZG8gaGFpIHJpc29sdG8gaWwgcHJvYmxlbWEgZXNlZ3VpIFwiJGNtZGxpbmUgLS1yZXNvbHZlZFwiLlxuIgorI34gIlNlIHZ1b2kgc2FsdGFyZSBxdWVzdGEgcGF0Y2gsIGVzZWd1aSBpbnZlY2UgXCIkY21kbGluZSAtLXNraXBcIi5cbiIKKyN+ICJQZXIgcmlwcmlzdGluYXJlIGlsIGJyYW5jaCBvcmlnaW5hbGUgZSBpbnRlcnJvbXBlcmUgbCdhcHBsaWNhemlvbmUgZGVsbGUgIgorI34gInBhdGNoIGVzZWd1aSBcIiRjbWRsaW5lIC0tYWJvcnRcIi4iCisKKyN+IG1zZ2lkICJQYXRjaCBmb3JtYXQgJHBhdGNoX2Zvcm1hdCBpcyBub3Qgc3VwcG9ydGVkLiIKKyN+IG1zZ3N0ciAiSWwgZm9ybWF0byBwYXRjaCAkcGF0Y2hfZm9ybWF0IG5vbiDDqCBzdXBwb3J0YXRvLiIKKworI34gbXNnaWQgIlBsZWFzZSBtYWtlIHVwIHlvdXIgbWluZC4gLS1za2lwIG9yIC0tYWJvcnQ/IgorI34gbXNnc3RyICJQZXIgZmF2b3JlLCBkZWNpZGl0aS4gLS1za2lwIG8gLS1hYm9ydD8iCisKKyN+IG1zZ2lkICJQYXRjaCBkb2VzIG5vdCBoYXZlIGEgdmFsaWQgZS1tYWlsIGFkZHJlc3MuIgorI34gbXNnc3RyICJMYSBwYXRjaCBub24gY29udGllbmUgdW4gaW5kaXJpenpvIGVtYWlsIHZhbGlkby4iCisKKyN+IG1zZ2lkICJQYXRjaCBmYWlsZWQgYXQgJG1zZ251bSAkRklSU1RMSU5FIgorI34gbXNnc3RyICJQYXRjaCBub24gcml1c2NpdGEgYSAkbXNnbnVtICRGSVJTVExJTkUiCisKKyN+IG1zZ2lkICJQbGVhc2UgY2FsbCAnYmlzZWN0X3N0YXRlJyB3aXRoIGF0IGxlYXN0IG9uZSBhcmd1bWVudC4iCisjfiBtc2dzdHIgIlBlciBmYXZvcmUsIGNoaWFtYSAnYmlzZWN0X3N0YXRlJyBjb24gYWxtZW5vIHVuIGFyZ29tZW50by4iCisKKyN+IG1zZ2lkICIiCisjfiAiZXJyb3I6IHVua25vd24gb3B0aW9uIGZvciAnc3Rhc2ggc2F2ZSc6ICRvcHRpb25cbiIKKyN+ICIgICAgICAgVG8gcHJvdmlkZSBhIG1lc3NhZ2UsIHVzZSBnaXQgc3Rhc2ggc2F2ZSAtLSAnJG9wdGlvbiciCisjfiBtc2dzdHIgIiIKKyN+ICJlcnJvcmU6IG9wemlvbmUgc2Nvbm9zY2l1dGEgcGVyICdzdGFzaCBzYXZlJzogJG9wdGlvblxuIgorI34gIiAgICAgICAgUGVyIGFnZ2l1bmdlcmUgdW4gbWVzc2FnZ2lvLCB1c2FyZSBnaXQgc3Rhc2ggc2F2ZSAtLSAnJG9wdGlvbiciCisKKyN+IG1zZ2lkICJTdG9wcGluZyBhdCAnJHNtX3BhdGgnOyBzY3JpcHQgcmV0dXJuZWQgbm9uLXplcm8gc3RhdHVzLiIKKyN+IG1zZ3N0ciAiIgorI34gIkludGVycnV6aW9uZSBhICckc21fcGF0aCc7IGxvIHNjcmlwdCBoYSByZXN0aXR1aXRvIHVubyBzdGF0byBkaXZlcnNvIGRhICIKKyN+ICJ6ZXJvLiIKIAogI34gbXNnaWQgIi0tIgogI34gbXNnc3RyICItLSIKZGlmZiAtLWdpdCBhL3BvL3J1LnBvIGIvcG8vcnUucG8KaW5kZXggNjUzNjI4Zi4uYTc3YjQ2MiAxMDA2NDQKLS0tIGEvcG8vcnUucG8KKysrIGIvcG8vcnUucG8KQEAgLTMsMTUgKzMsMTYgQEAKICMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIFBBQ0tBR0UgcGFja2FnZS4KICMgCiAjIFRyYW5zbGF0b3JzOgotIyBEaW1pdHJpeSBSeWF6YW50Y2V2IDxESm0wMG5AbWFpbC5ydT4sIDIwMTQtMjAxOAorIyBEaW1pdHJpeSBSeWF6YW50Y2V2IDxESm0wMG5AbWFpbC5ydT4sIDIwMTQtMjAxOQogIyBpbnNvbG9yLCAyMDE0CiAjIGluc29sb3IsIDIwMTQKKyMg0KfRg9C6INCi0LDQsdC70LjRhtC+0LzQtdC90LTQtdC70LXQtdCyIDxhdXJ1bTQ0NGFuQGdtYWlsLmNvbT4sIDIwMTkKIG1zZ2lkICIiCiBtc2dzdHIgIiIKICJQcm9qZWN0LUlkLVZlcnNpb246IEdpdCBSdXNzaWFuIExvY2FsaXphdGlvbiBQcm9qZWN0XG4iCiAiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IEdpdCBNYWlsaW5nIExpc3QgPGdpdEB2Z2VyLmtlcm5lbC5vcmc+XG4iCi0iUE9ULUNyZWF0aW9uLURhdGU6IDIwMTgtMDgtMjEgMDg6MjgrMDgwMFxuIgotIlBPLVJldmlzaW9uLURhdGU6IDIwMTgtMDgtMjggMTU6NTcrMDAwMFxuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDE5LTA2LTA0IDA4OjI0KzA4MDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDE5LTA2LTIxIDE3OjI4KzAwMDBcbiIKICJMYXN0LVRyYW5zbGF0b3I6IERpbWl0cml5IFJ5YXphbnRjZXYgPERKbTAwbkBtYWlsLnJ1PlxuIgogIkxhbmd1YWdlLVRlYW06IFJ1c3NpYW4gKGh0dHA6Ly93d3cudHJhbnNpZmV4LmNvbS9kam0wMG4vZ2l0LXBvLXJ1L2xhbmd1YWdlL3J1LylcbiIKICJNSU1FLVZlcnNpb246IDEuMFxuIgpAQCAtMjAsNTkgKzIxLDU5IEBACiAiTGFuZ3VhZ2U6IHJ1XG4iCiAiUGx1cmFsLUZvcm1zOiBucGx1cmFscz00OyBwbHVyYWw9KG4lMTA9PTEgJiYgbiUxMDAhPTExID8gMCA6IG4lMTA+PTIgJiYgbiUxMDw9NCAmJiAobiUxMDA8MTIgfHwgbiUxMDA+MTQpID8gMSA6IG4lMTA9PTAgfHwgKG4lMTA+PTUgJiYgbiUxMDw9OSkgfHwgKG4lMTAwPj0xMSAmJiBuJTEwMDw9MTQpPyAyIDogMyk7XG4iCiAKLSM6IGFkdmljZS5jOjk3CisjOiBhZHZpY2UuYzoxMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXNoaW50OiAlLipzJXNcbiIKIG1zZ3N0ciAiJXPQv9C+0LTRgdC60LDQt9C60LA6ICUuKnMlc1xuIgogCi0jOiBhZHZpY2UuYzoxNTAKKyM6IGFkdmljZS5jOjE1NgogbXNnaWQgIkNoZXJyeS1waWNraW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAi0J3QtdCy0L7Qt9C80L7QttC90L4g0LLRi9C/0L7Qu9C90LjRgtGMINC60L7Qv9C40YDQvtCy0LDQvdC40LUg0LrQvtC80LzQuNGC0LAg0LIg0YLQtdC60YPRidGD0Y4g0LLQtdGC0LrRgywg0YLQsNC6INC60LDQuiDRgyDQstCw0YEg0LjQvNC10Y7RgtGB0Y8g0L3QtSDRgdC70LjRgtGL0LUg0YTQsNC50LvRiy4iCiAKLSM6IGFkdmljZS5jOjE1MgorIzogYWR2aWNlLmM6MTU4CiBtc2dpZCAiQ29tbWl0dGluZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgItCd0LXQstC+0LfQvNC+0LbQvdC+INC30LDQutC+0LzQvNC40YLQuNGC0YwsINGC0LDQuiDQutCw0Log0YMg0LLQsNGBINC40LzQtdGO0YLRgdGPINC90LUg0YHQu9C40YLRi9C1INGE0LDQudC70YsuIgogCi0jOiBhZHZpY2UuYzoxNTQKKyM6IGFkdmljZS5jOjE2MAogbXNnaWQgIk1lcmdpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICLQndC10LLQvtC30LzQvtC20L3QviDQstGL0L/QvtC70L3QuNGC0Ywg0YHQu9C40Y/QvdC40LUsINGC0LDQuiDQutCw0Log0YMg0LLQsNGBINC40LzQtdGO0YLRgdGPINC90LUg0YHQu9C40YLRi9C1INGE0LDQudC70YsuIgogCi0jOiBhZHZpY2UuYzoxNTYKKyM6IGFkdmljZS5jOjE2MgogbXNnaWQgIlB1bGxpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICLQndC10LLQvtC30LzQvtC20L3QviDQstGL0L/QvtC70L3QuNGC0Ywg0L/QvtC70YPRh9C10L3QuNC1LCDRgtCw0Log0LrQsNC6INGDINCy0LDRgSDQuNC80LXRjtGC0YHRjyDQvdC1INGB0LvQuNGC0YvQtSDRhNCw0LnQu9GLLiIKIAotIzogYWR2aWNlLmM6MTU4CisjOiBhZHZpY2UuYzoxNjQKIG1zZ2lkICJSZXZlcnRpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICLQndC10LLQvtC30LzQvtC20L3QviDQvtCx0YDQsNGC0LjRgtGMINC40LfQvNC10L3QtdC90LjRjywg0YLQsNC6INC60LDQuiDRgyDQstCw0YEg0LjQvNC10Y7RgtGB0Y8g0L3QtSDRgdC70LjRgtGL0LUg0YTQsNC50LvRiy4iCiAKLSM6IGFkdmljZS5jOjE2MAorIzogYWR2aWNlLmM6MTY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkl0IGlzIG5vdCBwb3NzaWJsZSB0byAlcyBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAi0J3QtdCy0L7Qt9C80L7QttC90L4g0LLRi9C/0L7Qu9C90LjRgtGMICVzLCDRgtCw0Log0LrQsNC6INGDINCy0LDRgSDQuNC80LXRjtGC0YHRjyDQvdC1INGB0LvQuNGC0YvQtSDRhNCw0LnQu9GLLiIKIAotIzogYWR2aWNlLmM6MTY4CisjOiBhZHZpY2UuYzoxNzQKIG1zZ2lkICIiCiAiRml4IHRoZW0gdXAgaW4gdGhlIHdvcmsgdHJlZSwgYW5kIHRoZW4gdXNlICdnaXQgYWRkL3JtIDxmaWxlPidcbiIKICJhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24gYW5kIG1ha2UgYSBjb21taXQuIgogbXNnc3RyICLQmNGB0L/RgNCw0LLRjNGC0LUg0LjRhSDQsiDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1LCDQt9Cw0YLQtdC8INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCBhZGQvcm0gPNGE0LDQudC7PsK7LFxu0YfRgtC+0LHRiyDQv9C+0LzQtdGC0LjRgtGMINC40YHQv9GA0LDQstC70LXQvdC40LUg0Lgg0YHQtNC10LvQsNC50YLQtSDQutC+0LzQvNC40YIuIgogCi0jOiBhZHZpY2UuYzoxNzYKKyM6IGFkdmljZS5jOjE4MgogbXNnaWQgIkV4aXRpbmcgYmVjYXVzZSBvZiBhbiB1bnJlc29sdmVkIGNvbmZsaWN0LiIKIG1zZ3N0ciAi0JLRi9GF0L7QtCDQuNC3LdC30LAg0L3QtdGA0LDQt9GA0LXRiNC10L3QvdC+0LPQviDQutC+0L3RhNC70LjQutGC0LAuIgogCi0jOiBhZHZpY2UuYzoxODEgYnVpbHRpbi9tZXJnZS5jOjEyODYKKyM6IGFkdmljZS5jOjE4NyBidWlsdGluL21lcmdlLmM6MTMyMAogbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBtZXJnZSAoTUVSR0VfSEVBRCBleGlzdHMpLiIKIG1zZ3N0ciAi0JLRiyDQvdC1INC30LDQstC10YDRiNC40LvQuCDRgdC70LjRj9C90LjQtSAo0L/RgNC40YHRg9GC0YHRgtCy0YPQtdGCINGE0LDQudC7IE1FUkdFX0hFQUQpLiIKIAotIzogYWR2aWNlLmM6MTgzCisjOiBhZHZpY2UuYzoxODkKIG1zZ2lkICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIG1lcmdpbmcuIgogbXNnc3RyICLQn9C10YDQtdC0INGB0LvQuNGP0L3QuNC10LwsINCy0YvQv9C+0LvQvdC40YLQtSDQutC+0LzQvNC40YIg0LLQsNGI0LjRhSDQuNC30LzQtdC90LXQvdC40LkuIgogCi0jOiBhZHZpY2UuYzoxODQKKyM6IGFkdmljZS5jOjE5MAogbXNnaWQgIkV4aXRpbmcgYmVjYXVzZSBvZiB1bmZpbmlzaGVkIG1lcmdlLiIKIG1zZ3N0ciAi0JLRi9GF0L7QtCDQuNC3LdC30LAg0L3QtdC30LDQstC10YDRiNC10L3QvdC+0LPQviDRgdC70LjRj9C90LjRjy4iCiAKLSM6IGFkdmljZS5jOjE5MAorIzogYWR2aWNlLmM6MTk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJOb3RlOiBjaGVja2luZyBvdXQgJyVzJy5cbiIKQEAgLTg4LDkyICs4OSwxMDAgQEAKICJcbiIKIG1zZ3N0ciAi0J/RgNC40LzQtdGH0LDQvdC40LU6INC/0LXRgNC10YXQvtC0INC90LAgwqslc8K7LlxuXG7QktGLINGB0LXQudGH0LDRgSDQsiDRgdC+0YHRgtC+0Y/QvdC40LggwqvQvtGC0LTQtdC70ZHQvdC90L7Qs9C+IEhFQUTCuy4g0JLRiyDQvNC+0LbQtdGC0LUg0L7RgdC80L7RgtGA0LXRgtGM0YHRjywg0YHQtNC10LvQsNGC0YxcbtGN0LrRgdC/0LXRgNC40LzQtdC90YLQsNC70YzQvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPINC4INC30LDQutC+0LzQvNC40YLQuNGC0Ywg0LjRhSwg0YLQsNC60LbQtSDQstGLINC80L7QttC10YLQtSDQvtGC0LzQtdC90LjRgtGMXG7QuNC30LzQtdC90LXQvdC40Y8g0LvRjtCx0YvRhSDQutC+0LzQvNC40YLQvtCyINCyINGN0YLQvtC8INGB0L7RgdGC0L7Rj9C90LjQuCDQvdC1INC30LDRgtGA0LDQs9C40LLQsNGPINC70Y7QsdGL0LUg0LLQtdGC0LrQuCDQuFxu0L3QtSDQv9C10YDQtdGF0L7QtNGPINC90LAg0L3QuNGFLlxuXG7QldGB0LvQuCDQstGLINGF0L7RgtC40YLQtSDRgdC+0LfQtNCw0YLRjCDQvdC+0LLRg9GOINCy0LXRgtC60YMg0Lgg0YHQvtGF0YDQsNC90LjRgtGMINGB0LLQvtC4INC60L7QvNC80LjRgtGLLCDRgtC+INCy0YtcbtC80L7QttC10YLQtSDRgdC00LXQu9Cw0YLRjCDRjdGC0L4gKNGB0LXQudGH0LDRgSDQuNC70Lgg0L/QvtC30LbQtSkg0LLRi9C30LLQsNCyINC60L7QvNCw0L3QtNGDIGNoZWNrb3V0INGB0L3QvtCy0LAsXG7QvdC+INGBINC/0LDRgNCw0LzQtdGC0YDQvtC8IC1iLiDQndCw0L/RgNC40LzQtdGAOlxuXG4gIGdpdCBjaGVja291dCAtYiA80LjQvNGPLdC90L7QstC+0Lkt0LLQtdGC0LrQuD5cblxuIgogCi0jOiBhcHBseS5jOjU5CisjOiBhbGlhcy5jOjUwCittc2dpZCAiY21kbGluZSBlbmRzIHdpdGggXFwiCittc2dzdHIgItC60L7QvNCw0L3QtNC90LDRjyDRgdGC0YDQvtC60LAg0LfQsNC60LDQvdGH0LjQstCw0LXRgtGB0Y8g0YHQuNC80LLQvtC70L7QvCBcXCIKKworIzogYWxpYXMuYzo1MQorbXNnaWQgInVuY2xvc2VkIHF1b3RlIgorbXNnc3RyICLQv9GA0L7Qv9GD0YnQtdC90LAg0LfQsNC60YDRi9Cy0LDRjtGJ0LDRjyDQutCw0LLRi9GH0LrQsCIKKworIzogYXBwbHkuYzo2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgd2hpdGVzcGFjZSBvcHRpb24gJyVzJyIKIG1zZ3N0ciAi0L3QtdC+0L/QvtC30L3QsNC90L3QsNGPINC+0L/RhtC40Y8g0LTQu9GPINC/0YDQvtCx0LXQu9C+0LIgwqslc8K7IgogCi0jOiBhcHBseS5jOjc1CisjOiBhcHBseS5jOjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCB3aGl0ZXNwYWNlIGlnbm9yZSBvcHRpb24gJyVzJyIKIG1zZ3N0ciAi0L3QtdC+0L/QvtC30L3QsNC90L3QsNGPINC+0L/RhtC40Y8g0LTQu9GPINC40LPQvdC+0YDQuNGA0L7QstCw0L3QuNGPINC/0YDQvtCx0LXQu9C+0LIgwqslc8K7IgogCi0jOiBhcHBseS5jOjEyNQorIzogYXBwbHkuYzoxMjkKIG1zZ2lkICItLXJlamVjdCBhbmQgLS0zd2F5IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyLiIKIG1zZ3N0ciAiLS1yZWplY3Qg0LggLS0zd2F5INC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+LiIKIAotIzogYXBwbHkuYzoxMjcKKyM6IGFwcGx5LmM6MTMxCiBtc2dpZCAiLS1jYWNoZWQgYW5kIC0tM3dheSBjYW5ub3QgYmUgdXNlZCB0b2dldGhlci4iCiBtc2dzdHIgIi0tY2FjaGVkINC4IC0tM3dheSDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0LTQvdC+0LLRgNC10LzQtdC90L3Qvi4iCiAKLSM6IGFwcGx5LmM6MTMwCisjOiBhcHBseS5jOjEzNAogbXNnaWQgIi0tM3dheSBvdXRzaWRlIGEgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiLS0zd2F5INCy0L3QtSDRgNC10L/QvtC30LjRgtC+0YDQuNGPIgogCi0jOiBhcHBseS5jOjE0MQorIzogYXBwbHkuYzoxNDUKIG1zZ2lkICItLWluZGV4IG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICItLWluZGV4INCy0L3QtSDRgNC10L/QvtC30LjRgtC+0YDQuNGPIgogCi0jOiBhcHBseS5jOjE0NAorIzogYXBwbHkuYzoxNDgKIG1zZ2lkICItLWNhY2hlZCBvdXRzaWRlIGEgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiLS1jYWNoZWQg0LLQvdC1INGA0LXQv9C+0LfQuNGC0L7RgNC40Y8iCiAKLSM6IGFwcGx5LmM6ODI2CisjOiBhcHBseS5jOjgyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgcHJlcGFyZSB0aW1lc3RhbXAgcmVnZXhwICVzIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0L7QtNCz0L7RgtC+0LLQuNGC0Ywg0YDQtdCz0YPQu9GP0YDQvdC+0LUg0LLRi9GA0LDQttC10L3QuNC1INC00LvRjyDQvNC10YLQutC4INCy0YDQtdC80LXQvdC4ICVzIgogCi0jOiBhcHBseS5jOjgzNQorIzogYXBwbHkuYzo4MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVnZXhlYyByZXR1cm5lZCAlZCBmb3IgaW5wdXQ6ICVzIgogbXNnc3RyICJyZWdleGVjINCy0L7Qt9Cy0YDQsNGC0LjQuyAlZCDQtNC70Y8g0LLQstC+0LTQsDogJXMiCiAKLSM6IGFwcGx5LmM6OTA5CisjOiBhcHBseS5jOjkxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZmluZCBmaWxlbmFtZSBpbiBwYXRjaCBhdCBsaW5lICVkIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC90LDQudGC0Lgg0LjQvNGPINGE0LDQudC70LAg0LIg0YHRgtGA0L7QutC1INC/0LDRgtGH0LAgJWQiCiAKLSM6IGFwcGx5LmM6OTQ3CisjOiBhcHBseS5jOjk1MAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGV4cGVjdGVkIC9kZXYvbnVsbCwgZ290ICVzIG9uIGxpbmUgJWQiCiBtc2dzdHIgImdpdCBhcHBseTog0L/Qu9C+0YXQvtC5IGdpdC1kaWZmIOKAlCDQvtC20LjQtNCw0LvQvtGB0YwgL2Rldi9udWxsLCDQv9C+0LvRg9GH0LXQvdC+ICVzINC90LAg0YHRgtGA0L7QutC1ICVkIgogCi0jOiBhcHBseS5jOjk1MworIzogYXBwbHkuYzo5NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBpbmNvbnNpc3RlbnQgbmV3IGZpbGVuYW1lIG9uIGxpbmUgJWQiCiBtc2dzdHIgImdpdCBhcHBseTog0L/Qu9C+0YXQvtC5IGdpdC1kaWZmIOKAlCDQvdC1INGB0L7Qs9C70LDRgdGD0Y7RidC10LXRgdGPINC90L7QstC+0LUg0LjQvNGPINGE0LDQudC70LAg0L3QsCDRgdGC0YDQvtC60LUgJWQiCiAKLSM6IGFwcGx5LmM6OTU0CisjOiBhcHBseS5jOjk1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGluY29uc2lzdGVudCBvbGQgZmlsZW5hbWUgb24gbGluZSAlZCIKIG1zZ3N0ciAiZ2l0IGFwcGx5OiDQv9C70L7RhdC+0LkgZ2l0LWRpZmYg4oCUINC90LUg0YHQvtCz0LvQsNGB0YPRjtGJ0LXQtdGB0Y8g0YHRgtCw0YDQvtC1INC40LzRjyDRhNCw0LnQu9CwINC90LAg0YHRgtGA0L7QutC1ICVkIgogCi0jOiBhcHBseS5jOjk1OQorIzogYXBwbHkuYzo5NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwgb24gbGluZSAlZCIKIG1zZ3N0ciAiZ2l0IGFwcGx5OiDQv9C70L7RhdC+0LkgZ2l0LWRpZmYgIOKAlCDQvtC20LjQtNCw0LvQvtGB0YwgL2Rldi9udWxsINC90LAg0YHRgtGA0L7QutC1ICVkIgogCi0jOiBhcHBseS5jOjk4OAorIzogYXBwbHkuYzo5OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBtb2RlIG9uIGxpbmUgJWQ6ICVzIgogbXNnc3RyICLQvdC10LTQvtC/0YPRgdGC0LjQvNGL0Lkg0YDQtdC20LjQvCAlZDogJXMiCiAKLSM6IGFwcGx5LmM6MTMwNgorIzogYXBwbHkuYzoxMzEwCiAjLCBjLWZvcm1hdAogbXNnaWQgImluY29uc2lzdGVudCBoZWFkZXIgbGluZXMgJWQgYW5kICVkIgogbXNnc3RyICLQv9GA0L7RgtC40LLQvtGA0LXRh9C40LLRi9C1INGB0YLRgNC+0LrQuCDQt9Cw0LPQvtC70L7QstC60LAgJWQg0LggJWQiCiAKLSM6IGFwcGx5LmM6MTQ3OAorIzogYXBwbHkuYzoxNDgyCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlY291bnQ6IHVuZXhwZWN0ZWQgbGluZTogJS4qcyIKIG1zZ3N0ciAicmVjb3VudDog0L3QtSDQvtC20LjQtNCw0LXQvNCw0Y8g0YHRgtGA0L7QutCwOiAlLipzIgogCi0jOiBhcHBseS5jOjE1NDcKKyM6IGFwcGx5LmM6MTU1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRjaCBmcmFnbWVudCB3aXRob3V0IGhlYWRlciBhdCBsaW5lICVkOiAlLipzIgogbXNnc3RyICLRhNGA0LDQs9C80LXQvdGCINC40LfQvNC10L3QtdC90LjQuSDQsdC10Lcg0LfQsNCz0L7Qu9C+0LLQutCwINC90LAg0YHRgtGA0L7QutC1ICVkOiAlLipzIgogCi0jOiBhcHBseS5jOjE1NjcKKyM6IGFwcGx5LmM6MTU3MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIHdoZW4gcmVtb3ZpbmcgJWQgbGVhZGluZyBwYXRobmFtZSIKQEAgLTE4Niw3MCArMTk1LDcwIEBACiBtc2dzdHJbMl0gItC30LDQs9C+0LvQvtCy0L7QuiBnaXQgZGlmZiDQvdC1INC90LDRiNC10Lsg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L7QsSDQuNC80LXQvdC4INGE0LDQudC70LAg0L/RgNC4INGD0LTQsNC70LXQvdC40LggJWQg0LLQtdC00YPRidC40YUg0LrQvtC80L/QvtC90LXQvdGCINC/0YPRgtC4INC6INGE0LDQudC70YMgKNGB0YLRgNC+0LrQsCAlZCkiCiBtc2dzdHJbM10gItC30LDQs9C+0LvQvtCy0L7QuiBnaXQgZGlmZiDQvdC1INC90LDRiNC10Lsg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L7QsSDQuNC80LXQvdC4INGE0LDQudC70LAg0L/RgNC4INGD0LTQsNC70LXQvdC40LggJWQg0LLQtdC00YPRidC40YUg0LrQvtC80L/QvtC90LXQvdGCINC/0YPRgtC4INC6INGE0LDQudC70YMgKNGB0YLRgNC+0LrQsCAlZCkiCiAKLSM6IGFwcGx5LmM6MTU4MAorIzogYXBwbHkuYzoxNTg0CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBkaWZmIGhlYWRlciBsYWNrcyBmaWxlbmFtZSBpbmZvcm1hdGlvbiAobGluZSAlZCkiCiBtc2dzdHIgItC30LDQs9C+0LvQvtCy0L7QuiBnaXQgZGlmZiDQvdC1INGB0L7QtNC10YDQttC40YIg0LjQvdGE0L7RgNC80LDRhtC40Lgg0L7QsSDQuNC80LXQvdC4INGE0LDQudC70LAgKNGB0YLRgNC+0LrQsCAlZCkiCiAKLSM6IGFwcGx5LmM6MTc2OAorIzogYXBwbHkuYzoxNzcyCiBtc2dpZCAibmV3IGZpbGUgZGVwZW5kcyBvbiBvbGQgY29udGVudHMiCiBtc2dzdHIgItC90L7QstGL0Lkg0YTQsNC50Lsg0LfQsNCy0LjRgdC40YIg0L7RgiDRgdGC0LDRgNC+0LPQviDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+IgogCi0jOiBhcHBseS5jOjE3NzAKKyM6IGFwcGx5LmM6MTc3NAogbXNnaWQgImRlbGV0ZWQgZmlsZSBzdGlsbCBoYXMgY29udGVudHMiCiBtc2dzdHIgItGD0LTQsNC70LXQvdC90YvQuSDRhNCw0LnQuyDQstGB0LUg0LXRidC1INC40LzQtdC10YIg0YHQvtC00LXRgNC20LjQvNC+0LUiCiAKLSM6IGFwcGx5LmM6MTgwNAorIzogYXBwbHkuYzoxODA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgcGF0Y2ggYXQgbGluZSAlZCIKIG1zZ3N0ciAi0L/QsNGC0Ycg0L/QvtCy0YDQtdC20LTQtdC9INC90LAg0YHRgtGA0L7QutC1ICVkIgogCi0jOiBhcHBseS5jOjE4NDEKKyM6IGFwcGx5LmM6MTg0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgZmlsZSAlcyBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKIG1zZ3N0ciAi0L3QvtCy0YvQuSDRhNCw0LnQuyAlcyDQt9Cw0LLQuNGB0LjRgiDQvtGCINGB0YLQsNGA0L7Qs9C+INGB0L7QtNC10YDQttC40LzQvtCz0L4iCiAKLSM6IGFwcGx5LmM6MTg0MworIzogYXBwbHkuYzoxODQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbGV0ZWQgZmlsZSAlcyBzdGlsbCBoYXMgY29udGVudHMiCiBtc2dzdHIgItGD0LTQsNC70LXQvdC90YvQuSDRhNCw0LnQuyAlcyDQstGB0LUg0LXRidC1INC40LzQtdC10YIg0YHQvtC00LXRgNC20LjQvNC+0LUiCiAKLSM6IGFwcGx5LmM6MTg0NgorIzogYXBwbHkuYzoxODUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIioqIHdhcm5pbmc6IGZpbGUgJXMgYmVjb21lcyBlbXB0eSBidXQgaXMgbm90IGRlbGV0ZWQiCiBtc2dzdHIgIioqINC/0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LU6INGE0LDQudC7ICVzINGB0YLQsNC90L7QstC40YLRgdGPINC/0YPRgdGC0YvQvCwg0L3QviDQvdC1INGD0LTQsNC70Y/QtdGC0YHRjyIKIAotIzogYXBwbHkuYzoxOTkzCisjOiBhcHBseS5jOjE5OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZDogJS4qcyIKIG1zZ3N0ciAi0L/QvtCy0YDQtdC20LTQtdC90L3Ri9C5INC00LLQvtC40YfQvdGL0Lkg0L/QsNGC0Ycg0L3QsCDRgdGC0YDQvtC60LUgJWQ6ICUuKnMiCiAKLSM6IGFwcGx5LmM6MjAzMAorIzogYXBwbHkuYzoyMDM0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZCIKIG1zZ3N0ciAi0L3QtdC+0L/QvtC30L3QsNC90L3Ri9C5INC00LLQvtC40YfQvdGL0Lkg0L/QsNGC0Ycg0L3QsCDRgdGC0YDQvtC60LUgJWQiCiAKLSM6IGFwcGx5LmM6MjE5MAorIzogYXBwbHkuYzoyMTk2CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGNoIHdpdGggb25seSBnYXJiYWdlIGF0IGxpbmUgJWQiCiBtc2dzdHIgItC/0LDRgtGHINGBINC80YPRgdC+0YDQvtC8INC90LAg0YHRgtGA0L7QutC1ICVkIgogCi0jOiBhcHBseS5jOjIyNzYKKyM6IGFwcGx5LmM6MjI4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBzeW1saW5rICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDRgdC40LzQstC+0LvRjNC90YPRjiDRgdGB0YvQu9C60YMgJXMiCiAKLSM6IGFwcGx5LmM6MjI4MAorIzogYXBwbHkuYzoyMjg2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuIG9yIHJlYWQgJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0LjQu9C4INC/0YDQvtGH0LXRgdGC0YwgJXMiCiAKLSM6IGFwcGx5LmM6MjkzOQorIzogYXBwbHkuYzoyOTQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc3RhcnQgb2YgbGluZTogJyVjJyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3QvtC1INC90LDRh9Cw0LvQviDRgdGC0YDQvtC60Lg6IMKrJWPCuyIKIAotIzogYXBwbHkuYzozMDYwCisjOiBhcHBseS5jOjMwNjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiSHVuayAjJWQgc3VjY2VlZGVkIGF0ICVkIChvZmZzZXQgJWQgbGluZSkuIgogbXNnaWRfcGx1cmFsICJIdW5rICMlZCBzdWNjZWVkZWQgYXQgJWQgKG9mZnNldCAlZCBsaW5lcykuIgpAQCAtMjU4LDI1NyArMjY3LDI1OCBAQAogbXNnc3RyWzJdICLQp9Cw0YHRgtGMICMlZCDRg9GB0L/QtdGI0L3QviDQv9GA0LjQvNC10L3QtdC90LAg0L3QsCAlZCAo0YHQviDRgdC00LLQuNCz0L7QvCDQsiAlZCDRgdGC0YDQvtC6KS4iCiBtc2dzdHJbM10gItCn0LDRgdGC0YwgIyVkINGD0YHQv9C10YjQvdC+INC/0YDQuNC80LXQvdC10L3QsCDQvdCwICVkICjRgdC+INGB0LTQstC40LPQvtC8INCyICVkINGB0YLRgNC+0LopLiIKIAotIzogYXBwbHkuYzozMDcyCisjOiBhcHBseS5jOjMwNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29udGV4dCByZWR1Y2VkIHRvICglbGQvJWxkKSB0byBhcHBseSBmcmFnbWVudCBhdCAlZCIKIG1zZ3N0ciAi0JrQvtC90YLQtdC60YHRgiDRgdGD0LbQtdC9INC00L4gKCVsZC8lbGQpLCDRh9GC0L7QsdGLINC/0YDQuNC80LXQvdC40YLRjCDRhNGA0LDQs9C80LXQvdGCINC90LAgJWQg0YHRgtGA0L7QutC1IgogCi0jOiBhcHBseS5jOjMwNzgKKyM6IGFwcGx5LmM6MzA4NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAid2hpbGUgc2VhcmNoaW5nIGZvcjpcbiIKICIlLipzIgogbXNnc3RyICLQv9GA0Lgg0L/QvtC40YHQutC1OlxuJS4qcyIKIAotIzogYXBwbHkuYzozMTAwCisjOiBhcHBseS5jOjMxMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBiaW5hcnkgcGF0Y2ggZGF0YSBmb3IgJyVzJyIKIG1zZ3N0ciAi0L/RgNC+0L/Rg9GJ0LXQvdGLINC00LDQvdC90YvQtSDQtNCy0L7QuNGH0L3QvtCz0L4g0L/QsNGC0YfQsCDQtNC70Y8gwqslc8K7IgogCi0jOiBhcHBseS5jOjMxMDgKKyM6IGFwcGx5LmM6MzExNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmV2ZXJzZS1hcHBseSBhIGJpbmFyeSBwYXRjaCB3aXRob3V0IHRoZSByZXZlcnNlIGh1bmsgdG8gJyVzJyIKIG1zZ3N0ciAi0L3QtdCy0L7Qt9C80L7QttC90L4g0LLRi9C/0L7Qu9C90LjRgtGMIHJldmVyc2UtYXBwbHkg0LTQu9GPINC00LLQvtC40YfQvdC+0LPQviDQv9Cw0YLRh9CwLCDQsdC10Lcg0L7QsdGA0LDRidC10L3QuNGPINC40LfQvNC10L3QtdC90LjQuSDQsdC70L7QutCwIMKrJXPCuyIKIAotIzogYXBwbHkuYzozMTU0CisjOiBhcHBseS5jOjMxNjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGFwcGx5IGJpbmFyeSBwYXRjaCB0byAnJXMnIHdpdGhvdXQgZnVsbCBpbmRleCBsaW5lIgogbXNnc3RyICLQvdC10LLQvtC30LzQvtC20L3QviDQv9GA0LjQvNC10L3QuNGC0Ywg0LTQstC+0LjRh9C90YvQuSDQv9Cw0YLRhyDCqyVzwrsg0LHQtdC3INGB0YLRgNC+0LrQuCDRgSDRg9C60LDQt9Cw0L3QvdC+0Lkg0L/QvtC70L3QvtC5INCy0LXRgNGB0LjQtdC5INC40L3QtNC10LrRgdCwIgogCi0jOiBhcHBseS5jOjMxNjQKKyM6IGFwcGx5LmM6MzE3MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidGhlIHBhdGNoIGFwcGxpZXMgdG8gJyVzJyAoJXMpLCB3aGljaCBkb2VzIG5vdCBtYXRjaCB0aGUgY3VycmVudCBjb250ZW50cy4iCiBtc2dzdHIgItC/0LDRgtGHINC/0YDQuNC80LXQvdGP0YLRgdGPINC6INGE0LDQudC70YMgwqslc8K7ICglcyksINC90L4g0LXQs9C+INGC0LXQutGD0YnQtdC1INGB0L7QtNC10YDQttC40LzQvtC1INC90LUg0YHQvtC+0YLQstC10YHRgtCy0YPQtdGCINC+0LbQuNC00LDQtdC80L7QvNGDLiIKIAotIzogYXBwbHkuYzozMTcyCisjOiBhcHBseS5jOjMxNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlIHBhdGNoIGFwcGxpZXMgdG8gYW4gZW1wdHkgJyVzJyBidXQgaXQgaXMgbm90IGVtcHR5IgogbXNnc3RyICLQv9Cw0YLRhyDQv9GA0LjQvNC10L3Rj9C10YLRgdGPINC6INC/0YPRgdGC0L7QvNGDINGE0LDQudC70YMgwqslc8K7LCDQvdC+INGE0LDQudC7INC90LUg0L/Rg9GB0YLQvtC5IgogCi0jOiBhcHBseS5jOjMxOTAKKyM6IGFwcGx5LmM6MzE5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgbmVjZXNzYXJ5IHBvc3RpbWFnZSAlcyBmb3IgJyVzJyBjYW5ub3QgYmUgcmVhZCIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0L3QtdC+0LHRhdC+0LTQuNC80YPRjiDQv9C+0YHRi9C70LrRgyAlcyDQtNC70Y8gwqslc8K7IgogCi0jOiBhcHBseS5jOjMyMDMKKyM6IGFwcGx5LmM6MzIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJiaW5hcnkgcGF0Y2ggZG9lcyBub3QgYXBwbHkgdG8gJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0LjQvNC10L3QuNGC0Ywg0LTQstC+0LjRh9C90YvQuSDQv9Cw0YLRhyDQuiDCqyVzwrsiCiAKLSM6IGFwcGx5LmM6MzIwOQorIzogYXBwbHkuYzozMjE2CiAjLCBjLWZvcm1hdAogbXNnaWQgImJpbmFyeSBwYXRjaCB0byAnJXMnIGNyZWF0ZXMgaW5jb3JyZWN0IHJlc3VsdCAoZXhwZWN0aW5nICVzLCBnb3QgJXMpIgogbXNnc3RyICLQv9C+0YHQu9C1INC/0YDQuNC80LXQvdC10L3QuNGPINC00LLQvtC40YfQvdC+0LPQviDQv9Cw0YLRh9CwINC00LvRjyDCqyVzwrsg0LHRi9C7INC/0L7Qu9GD0YfQtdC9INC90LXQv9GA0LDQstC40LvRjNC90YvQuSDRgNC10LfRg9C70YzRgtCw0YIgKNC+0LbQuNC00LDQu9C+0YHRjCAlcywg0L/QvtC70YPRh9C10L3QviAlcykiCiAKLSM6IGFwcGx5LmM6MzIzMAorIzogYXBwbHkuYzozMjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGNoIGZhaWxlZDogJXM6JWxkIgogbXNnc3RyICLQvtGI0LjQsdC60LAg0L/RgNC40LzQtdC90LXQvdC40Y8g0LjQt9C80LXQvdC10L3QuNC5OiAlczolbGQiCiAKLSM6IGFwcGx5LmM6MzM1MgorIzogYXBwbHkuYzozMzYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGVja291dCAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C10YDQtdC60LvRjtGH0LjRgtGMINGB0L7RgdGC0L7Rj9C90LjQtSDQvdCwICVzIgogCi0jOiBhcHBseS5jOjM0MDQgYXBwbHkuYzozNDE1IGFwcGx5LmM6MzQ2MSBzZXR1cC5jOjI3OAorIzogYXBwbHkuYzozNDEyIGFwcGx5LmM6MzQyMyBhcHBseS5jOjM0NjkgbWlkeC5jOjU5IHNldHVwLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWFkICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCAlcyIKIAotIzogYXBwbHkuYzozNDEyCisjOiBhcHBseS5jOjM0MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZGluZyBmcm9tICclcycgYmV5b25kIGEgc3ltYm9saWMgbGluayIKIG1zZ3N0ciAi0YfRgtC10L3QuNC1INC40Lcgwqslc8K7INC30LAg0YHQuNC80LLQvtC70LjRh9C10YHQutC+0Lkg0YHRgdGL0LvQutC+0LkiCiAKLSM6IGFwcGx5LmM6MzQ0MSBhcHBseS5jOjM2ODEKKyM6IGFwcGx5LmM6MzQ0OSBhcHBseS5jOjM2OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAlcyBoYXMgYmVlbiByZW5hbWVkL2RlbGV0ZWQiCiBtc2dzdHIgItC/0YPRgtGMICVzINCx0YvQuyDQv9C10YDQtdC40LzQtdC90L7QstCw0L0v0YPQtNCw0LvQtdC9IgogCi0jOiBhcHBseS5jOjM1MjQgYXBwbHkuYzozNjk2CisjOiBhcHBseS5jOjM1MzUgYXBwbHkuYzozNzA3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBkb2VzIG5vdCBleGlzdCBpbiBpbmRleCIKIG1zZ3N0ciAiJXM6INC90LXRgiDQsiDQuNC90LTQtdC60YHQtSIKIAotIzogYXBwbHkuYzozNTMzIGFwcGx5LmM6MzcwNAorIzogYXBwbHkuYzozNTQ0IGFwcGx5LmM6MzcxNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZG9lcyBub3QgbWF0Y2ggaW5kZXgiCiBtc2dzdHIgIiVzOiDQvdC1INGB0L7QstC/0LDQtNCw0LXRgiDRgSDQuNC90LTQtdC60YHQvtC8IgogCi0jOiBhcHBseS5jOjM1NjgKKyM6IGFwcGx5LmM6MzU3OQogbXNnaWQgInJlcG9zaXRvcnkgbGFja3MgdGhlIG5lY2Vzc2FyeSBibG9iIHRvIGZhbGwgYmFjayBvbiAzLXdheSBtZXJnZS4iCiBtc2dzdHIgItCyINGA0LXQv9C+0LfQuNGC0L7RgNC40Lgg0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDQvdC10L7QsdGF0L7QtNC40LzRi9C5INC00LLQvtC40YfQvdGL0Lkg0L7QsdGK0LXQutGCINC00LvRjyDQvtGC0LrQsNGC0LAg0Log0YLRgNGR0YXRhdC+0LTQvtCy0L7QvNGDINGB0LvQuNGP0L3QuNGOLiIKIAotIzogYXBwbHkuYzozNTcxCisjOiBhcHBseS5jOjM1ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFsbGluZyBiYWNrIHRvIHRocmVlLXdheSBtZXJnZS4uLlxuIgogbXNnc3RyICLQntGC0LrQsNGCINC6INGC0YDRkdGF0YXQvtC00L7QstC+0LzRgyDRgdC70LjRj9C90LjRjuKAplxuIgogCi0jOiBhcHBseS5jOjM1ODcgYXBwbHkuYzozNTkxCisjOiBhcHBseS5jOjM1OTggYXBwbHkuYzozNjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIHRoZSBjdXJyZW50IGNvbnRlbnRzIG9mICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMINGC0LXQutGD0YnQtdC1INGB0L7QtNC10YDQttC40LzQvtC1IMKrJXPCuyIKIAotIzogYXBwbHkuYzozNjAzCisjOiBhcHBseS5jOjM2MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGZhbGwgYmFjayBvbiB0aHJlZS13YXkgbWVyZ2UuLi5cbiIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrQsNGC0LjRgtGM0YHRjyDQuiDRgtGA0ZHRhdGF0L7QtNC+0LLQvtC80YMg0YHQu9C40Y/QvdC40Y7igKZcbiIKIAotIzogYXBwbHkuYzozNjE3CisjOiBhcHBseS5jOjM2MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBwYXRjaCB0byAnJXMnIHdpdGggY29uZmxpY3RzLlxuIgogbXNnc3RyICLQn9Cw0YLRhyDQv9GA0LjQvNC10L3QtdC9INC6IMKrJXPCuyDRgSDQutC+0L3RhNC70LjQutGC0LDQvNC4LlxuIgogCi0jOiBhcHBseS5jOjM2MjIKKyM6IGFwcGx5LmM6MzYzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBsaWVkIHBhdGNoIHRvICclcycgY2xlYW5seS5cbiIKIG1zZ3N0ciAi0J/QsNGC0Ycg0L/RgNC40LzQtdC90LXQvSDQuiDCqyVzwrsg0LHQtdC3INC+0YjQuNCx0L7Qui5cbiIKIAotIzogYXBwbHkuYzozNjQ4CisjOiBhcHBseS5jOjM2NTkKIG1zZ2lkICJyZW1vdmFsIHBhdGNoIGxlYXZlcyBmaWxlIGNvbnRlbnRzIgogbXNnc3RyICLQv9Cw0YLRhyDRg9C00LDQu9C10L3QuNGPINC90LUg0YPQtNCw0LvQuNC7INGB0L7QtNC10YDQttC40LzQvtC1INGE0LDQudC70LAiCiAKLSM6IGFwcGx5LmM6MzcyMQorIzogYXBwbHkuYzozNzMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiB3cm9uZyB0eXBlIgogbXNnc3RyICIlczog0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INGC0LjQvyIKIAotIzogYXBwbHkuYzozNzIzCisjOiBhcHBseS5jOjM3MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaGFzIHR5cGUgJW8sIGV4cGVjdGVkICVvIgogbXNnc3RyICIlcyDQuNC80LXQtdGCINGC0LjQvyAlbywg0LAg0L7QttC40LTQsNC70YHRjyAlbyIKIAotIzogYXBwbHkuYzozODc0IGFwcGx5LmM6Mzg3NgorIzogYXBwbHkuYzozODg1IGFwcGx5LmM6Mzg4NyByZWFkLWNhY2hlLmM6ODMwIHJlYWQtY2FjaGUuYzo4NTYKKyM6IHJlYWQtY2FjaGUuYzoxMzA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgcGF0aCAnJXMnIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdGL0Lkg0L/Rg9GC0Ywgwqslc8K7IgogCi0jOiBhcHBseS5jOjM5MzIKKyM6IGFwcGx5LmM6Mzk0MwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgiCiBtc2dzdHIgIiVzOiDRg9C20LUg0YHQvtC00LXRgNC20LjRgtGB0Y8g0LIg0LjQvdC00LXQutGB0LUiCiAKLSM6IGFwcGx5LmM6MzkzNQorIzogYXBwbHkuYzozOTQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBhbHJlYWR5IGV4aXN0cyBpbiB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAiJXM6INGD0LbQtSDRgdC+0LTQtdGA0LbQuNGC0YHRjyDQsiDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1IgogCi0jOiBhcHBseS5jOjM5NTUKKyM6IGFwcGx5LmM6Mzk2NgogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgbW9kZSAoJW8pIG9mICVzIGRvZXMgbm90IG1hdGNoIG9sZCBtb2RlICglbykiCiBtc2dzdHIgItC90L7QstGL0Lkg0YDQtdC20LjQvCDQtNC+0YHRgtGD0L/QsCAoJW8pINC00LvRjyAlcyDQvdC1INGB0L7QvtGC0LLQtdGC0YHRgtCy0YPQtdGCINGB0YLQsNGA0L7QvNGDINGA0LXQttC40LzRgyDQtNC+0YHRgtGD0L/QsCAoJW8pIgogCi0jOiBhcHBseS5jOjM5NjAKKyM6IGFwcGx5LmM6Mzk3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgbW9kZSAoJW8pIG9mICVzIGRvZXMgbm90IG1hdGNoIG9sZCBtb2RlICglbykgb2YgJXMiCiBtc2dzdHIgItC90L7QstGL0Lkg0YDQtdC20LjQvCDQtNC+0YHRgtGD0L/QsCAoJW8pINC00LvRjyAlcyDQvdC1INGB0L7QvtGC0LLQtdGC0YHRgtCy0YPQtdGCINGB0YLQsNGA0L7QvNGDINGA0LXQttC40LzRgyDQtNC+0YHRgtGD0L/QsCAoJW8pINC00LvRjyAlcyIKIAotIzogYXBwbHkuYzozOTgwCisjOiBhcHBseS5jOjM5OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWZmZWN0ZWQgZmlsZSAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCiBtc2dzdHIgItC30LDRgtGA0L7QvdGD0YLRi9C5INGE0LDQudC7IMKrJXPCuyDQvdCw0YXQvtC00LjRgtGB0Y8g0LfQsCDRgdC40LzQstC+0LvQuNGH0LXRgdC60L7QuSDRgdGB0YvQu9C60L7QuSIKIAotIzogYXBwbHkuYzozOTg0CisjOiBhcHBseS5jOjM5OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHBhdGNoIGRvZXMgbm90IGFwcGx5IgogbXNnc3RyICIlczog0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0LjQvNC10L3QuNGC0Ywg0L/QsNGC0YciCiAKLSM6IGFwcGx5LmM6Mzk5OQorIzogYXBwbHkuYzo0MDEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoZWNraW5nIHBhdGNoICVzLi4uIgogbXNnc3RyICLQn9GA0L7QstC10YDQutCwINC/0LDRgtGH0LAgJXPigKYiCiAKLSM6IGFwcGx5LmM6NDA5MQorIzogYXBwbHkuYzo0MTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzIGZvciBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgItC40L3RhNC+0YDQvNCw0YbQuNGPINC+0LEgc2hhMSDQvtGC0YHRg9GC0YHRgtCy0YPQtdGCINC40LvQuCDQsdC10YHQv9C+0LvQtdC30L3QsCDQtNC70Y8g0L/QvtC00LzQvtC00YPQu9GPICVzIgogCi0jOiBhcHBseS5jOjQwOTgKKyM6IGFwcGx5LmM6NDEwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJtb2RlIGNoYW5nZSBmb3IgJXMsIHdoaWNoIGlzIG5vdCBpbiBjdXJyZW50IEhFQUQiCiBtc2dzdHIgItC40LfQvNC10L3QtdC9INGA0LXQttC40Lwg0LTQu9GPICVzLCDQutC+0YLQvtGA0YvQuSDQvdC1INC90LDRhdC+0LTQuNGC0YHRjyDQsiDRgtC10LrRg9GJ0LXQvCBIRUFEIgogCi0jOiBhcHBseS5jOjQxMDEKKyM6IGFwcGx5LmM6NDExMgogIywgYy1mb3JtYXQKIG1zZ2lkICJzaGExIGluZm9ybWF0aW9uIGlzIGxhY2tpbmcgb3IgdXNlbGVzcyAoJXMpLiIKIG1zZ3N0ciAi0LjQvdGE0L7RgNC80LDRhtC40Y8g0L7QsSBzaGExINC+0YLRgdGD0YLRgdGC0LLRg9C10YIg0LjQu9C4INCx0LXRgdC/0L7Qu9C10LfQvdCwICglcykuIgogCi0jOiBhcHBseS5jOjQxMDYgYnVpbHRpbi9jaGVja291dC5jOjIzNyBidWlsdGluL3Jlc2V0LmM6MTQwCisjOiBhcHBseS5jOjQxMTcgYnVpbHRpbi9jaGVja291dC5jOjI1NyBidWlsdGluL3Jlc2V0LmM6MTQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1ha2VfY2FjaGVfZW50cnkgZmFpbGVkIGZvciBwYXRoICclcyciCiBtc2dzdHIgItGB0LHQvtC5IG1ha2VfY2FjaGVfZW50cnkg0LTQu9GPINC/0YPRgtC4IMKrJXPCuyIKIAotIzogYXBwbHkuYzo0MTEwCisjOiBhcHBseS5jOjQxMjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGFkZCAlcyB0byB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LTQvtCx0LDQstC40YLRjCAlcyDQstC+INCy0YDQtdC80LXQvdC90YvQuSDQuNC90LTQtdC60YEiCiAKLSM6IGFwcGx5LmM6NDEyMAorIzogYXBwbHkuYzo0MTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSB0ZW1wb3JhcnkgaW5kZXggdG8gJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCDQstGA0LXQvNC10L3QvdGL0Lkg0LjQvdC00LrQtdC60YEg0LIgJXMiCiAKLSM6IGFwcGx5LmM6NDI1OAorIzogYXBwbHkuYzo0MjY5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXMgZnJvbSBpbmRleCIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCAlcyDQuNC3INC40L3QtNC10LrRgdCwIgogCi0jOiBhcHBseS5jOjQyOTIKKyM6IGFwcGx5LmM6NDMwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IHBhdGNoIGZvciBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgItC/0L7QstGA0LXQttC00LXQvdC90YvQuSDQv9Cw0YLRhyDQtNC70Y8g0L/QvtC00LzQvtC00YPQu9GPICVzIgogCi0jOiBhcHBseS5jOjQyOTgKKyM6IGFwcGx5LmM6NDMwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXdseSBjcmVhdGVkIGZpbGUgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0Ywgc3RhdCDQtNC70Y8g0YHQvtC30LTQsNC90L3QvtCz0L4g0YTQsNC50LvQsCDCqyVzwrsiCiAKLSM6IGFwcGx5LmM6NDMwNgorIzogYXBwbHkuYzo0MzE3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYmFja2luZyBzdG9yZSBmb3IgbmV3bHkgY3JlYXRlZCBmaWxlICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINCy0YHQv9C+0LzQvtCz0LDRgtC10LvRjNC90YvQuSDRhNCw0LnQuyDQtNC70Y8g0YHQvtC30LTQsNC90L3QvtCz0L4g0YTQsNC50LvQsCAlcyIKIAotIzogYXBwbHkuYzo0MzEyIGFwcGx5LmM6NDQ1NworIzogYXBwbHkuYzo0MzIzIGFwcGx5LmM6NDQ2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIGNhY2hlIGVudHJ5IGZvciAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQt9Cw0L/QuNGB0Ywg0LIg0LrRjdGI0LUg0LTQu9GPICVzIgogCi0jOiBhcHBseS5jOjQzNTUKKyM6IGFwcGx5LmM6NDM2NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMINCyIMKrJXPCuyIKIAotIzogYXBwbHkuYzo0MzU5CisjOiBhcHBseS5jOjQzNzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2xvc2luZyBmaWxlICclcyciCiBtc2dzdHIgItC30LDQutGA0YvRgtC40LUg0YTQsNC50LvQsCDCqyVzwrsiCiAKLSM6IGFwcGx5LmM6NDQyOQorIzogYXBwbHkuYzo0NDQwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcycgbW9kZSAlbyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMINGE0LDQudC7IMKrJXPCuyDRgSDRgNC10LbQuNC80L7QvCDQtNC+0YHRgtGD0L/QsCAlbyIKIAotIzogYXBwbHkuYzo0NTI3CisjOiBhcHBseS5jOjQ1MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBwYXRjaCAlcyBjbGVhbmx5LiIKIG1zZ3N0ciAi0J/QsNGC0YcgJXMg0L/RgNC40LzQtdC90LXQvSDQsdC10Lcg0L7RiNC40LHQvtC6LiIKIAotIzogYXBwbHkuYzo0NTM1CisjOiBhcHBseS5jOjQ1NDYKIG1zZ2lkICJpbnRlcm5hbCBlcnJvciIKIG1zZ3N0ciAi0LLQvdGD0YLRgNC10L3QvdGP0Y8g0L7RiNC40LHQutCwIgogCi0jOiBhcHBseS5jOjQ1MzgKKyM6IGFwcGx5LmM6NDU0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBseWluZyBwYXRjaCAlJXMgd2l0aCAlZCByZWplY3QuLi4iCiBtc2dpZF9wbHVyYWwgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdHMuLi4iCkBAIC01MTcsNDUgKzUyNyw0NSBAQAogbXNnc3RyWzJdICLQn9GA0LjQvNC10L3QtdC90LjQtSDQv9Cw0YLRh9CwICUlcyDRgSAlZCDQvtGC0LrQsNC30LDQvNC44oCmIgogbXNnc3RyWzNdICLQn9GA0LjQvNC10L3QtdC90LjQtSDQv9Cw0YLRh9CwICUlcyDRgSAlZCDQvtGC0LrQsNC30LDQvNC44oCmIgogCi0jOiBhcHBseS5jOjQ1NDkKKyM6IGFwcGx5LmM6NDU2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cnVuY2F0aW5nIC5yZWogZmlsZW5hbWUgdG8gJS4qcy5yZWoiCiBtc2dzdHIgItGD0YHQtdGH0LXQvdC40LUg0LjQvNC10L3QuCAucmVqINGE0LDQudC70LAg0LTQviAlLipzLnJlaiIKIAotIzogYXBwbHkuYzo0NTU3IGJ1aWx0aW4vZmV0Y2guYzo3ODAgYnVpbHRpbi9mZXRjaC5jOjEwNDgKKyM6IGFwcGx5LmM6NDU2OCBidWlsdGluL2ZldGNoLmM6ODM3IGJ1aWx0aW4vZmV0Y2guYzoxMTE4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMICVzIgogCi0jOiBhcHBseS5jOjQ1NzEKKyM6IGFwcGx5LmM6NDU4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJIdW5rICMlZCBhcHBsaWVkIGNsZWFubHkuIgogbXNnc3RyICLQkdC70L7QuiDihJYlZCDQv9GA0LjQvNC10L3QtdC9INCx0LXQtyDQvtGI0LjQsdC+0LouIgogCi0jOiBhcHBseS5jOjQ1NzUKKyM6IGFwcGx5LmM6NDU4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWplY3RlZCBodW5rICMlZC4iCiBtc2dzdHIgItCR0LvQvtC6IOKEliVkINC+0YLQutC70L7QvdC10L0uIgogCi0jOiBhcHBseS5jOjQ2ODUKKyM6IGFwcGx5LmM6NDY5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGVkIHBhdGNoICclcycuIgogbXNnc3RyICLQn9Cw0YLRhyDCqyVzwrsg0L/RgNC+0L/Rg9GJ0LXQvS4iCiAKLSM6IGFwcGx5LmM6NDY5MworIzogYXBwbHkuYzo0NzA0CiBtc2dpZCAidW5yZWNvZ25pemVkIGlucHV0IgogbXNnc3RyICLQvdC1INGA0LDRgdC/0L7Qt9C90LDQvdC90YvQuSDQstCy0L7QtCIKIAotIzogYXBwbHkuYzo0NzEyCisjOiBhcHBseS5jOjQ3MjQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBpbmRleCBmaWxlIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDRhNCw0LnQuyDQuNC90LTQtdC60YHQsCIKIAotIzogYXBwbHkuYzo0ODQ5CisjOiBhcHBseS5jOjQ4NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgb3BlbiBwYXRjaCAnJXMnOiAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDQv9Cw0YLRhyDCqyVzwrs6ICVzIgogCi0jOiBhcHBseS5jOjQ4NzYKKyM6IGFwcGx5LmM6NDkwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJzcXVlbGNoZWQgJWQgd2hpdGVzcGFjZSBlcnJvciIKIG1zZ2lkX3BsdXJhbCAic3F1ZWxjaGVkICVkIHdoaXRlc3BhY2UgZXJyb3JzIgpAQCAtNTY0LDcgKzU3NCw3IEBACiBtc2dzdHJbMl0gItC/0YDQvtC/0YPRidC10L3QviAlZCDQvtGI0LjQsdC+0Log0LIg0L/RgNC+0LHQtdC70YzQvdGL0YUg0YHQuNC80LLQvtC70LDRhSIKIG1zZ3N0clszXSAi0L/RgNC+0L/Rg9GJ0LXQvdC+ICVkINC+0YjQuNCx0L7QuiDQsiDQv9GA0L7QsdC10LvRjNC90YvRhSDRgdC40LzQstC+0LvQsNGFIgogCi0jOiBhcHBseS5jOjQ4ODIgYXBwbHkuYzo0ODk3CisjOiBhcHBseS5jOjQ5MTIgYXBwbHkuYzo0OTI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVkIGxpbmUgYWRkcyB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dpZF9wbHVyYWwgIiVkIGxpbmVzIGFkZCB3aGl0ZXNwYWNlIGVycm9ycy4iCkBAIC01NzMsNyArNTgzLDcgQEAKIG1zZ3N0clsyXSAiJWQg0YHRgtGA0L7QuiDQtNC+0LHQsNCy0LjQu9C4INC+0YjQuNCx0LrQuCDQsiDQv9GA0L7QsdC10LvRjNC90YvRhSDRgdC40LzQstC+0LvQsNGFLiIKIG1zZ3N0clszXSAiJWQg0YHRgtGA0L7QuiDQtNC+0LHQsNCy0LjQu9C4INC+0YjQuNCx0LrQuCDQsiDQv9GA0L7QsdC10LvRjNC90YvRhSDRgdC40LzQstC+0LvQsNGFLiIKIAotIzogYXBwbHkuYzo0ODkwCisjOiBhcHBseS5jOjQ5MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJWQgbGluZSBhcHBsaWVkIGFmdGVyIGZpeGluZyB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dpZF9wbHVyYWwgIiVkIGxpbmVzIGFwcGxpZWQgYWZ0ZXIgZml4aW5nIHdoaXRlc3BhY2UgZXJyb3JzLiIKQEAgLTU4MiwxNDAgKzU5MiwxNDAgQEAKIG1zZ3N0clsyXSAiJWQg0YHRgtGA0L7QuiDQtNC+0LHQsNCy0LvQtdC90L4g0L/QvtGB0LvQtSDQuNGB0L/RgNCw0LLQu9C10L3QuNGPINC+0YjQuNCx0L7QuiDQsiDQv9GA0L7QsdC10LvQsNGFLiIKIG1zZ3N0clszXSAiJWQg0YHRgtGA0L7QutC4INC00L7QsdCw0LLQu9C10L3QviDQv9C+0YHQu9C1INC40YHQv9GA0LDQstC70LXQvdC40Y8g0L7RiNC40LHQvtC6INCyINC/0YDQvtCx0LXQu9Cw0YUuIgogCi0jOiBhcHBseS5jOjQ5MDYgYnVpbHRpbi9hZGQuYzo1MzkgYnVpbHRpbi9tdi5jOjMwMCBidWlsdGluL3JtLmM6Mzg5CisjOiBhcHBseS5jOjQ5MzYgYnVpbHRpbi9hZGQuYzo1NDAgYnVpbHRpbi9tdi5jOjMwMSBidWlsdGluL3JtLmM6MzkwCiBtc2dpZCAiVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywg0L3QvtCy0YvQuSDRhNCw0LnQuyDQuNC90LTQtdC60YHQsCIKIAotIzogYXBwbHkuYzo0OTMzIGFwcGx5LmM6NDkzNiBidWlsdGluL2FtLmM6MjI1NCBidWlsdGluL2FtLmM6MjI1NwotIzogYnVpbHRpbi9jbG9uZS5jOjEyMSBidWlsdGluL2ZldGNoLmM6MTE1IGJ1aWx0aW4vbWVyZ2UuYzoyNjAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE5OCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA2Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM1NSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM1OAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3MjkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3MzIKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTUyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTk3CisjOiBhcHBseS5jOjQ5NjMgYXBwbHkuYzo0OTY2IGJ1aWx0aW4vYW0uYzoyMjEwIGJ1aWx0aW4vYW0uYzoyMjEzCisjOiBidWlsdGluL2Nsb25lLmM6MTIwIGJ1aWx0aW4vZmV0Y2guYzoxMTggYnVpbHRpbi9tZXJnZS5jOjI3MQorIzogYnVpbHRpbi9wdWxsLmM6MjA3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MDcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwOTEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKIG1zZ2lkICJwYXRoIgogbXNnc3RyICLQv9GD0YLRjCIKIAotIzogYXBwbHkuYzo0OTM0CisjOiBhcHBseS5jOjQ5NjQKIG1zZ2lkICJkb24ndCBhcHBseSBjaGFuZ2VzIG1hdGNoaW5nIHRoZSBnaXZlbiBwYXRoIgogbXNnc3RyICLQvdC1INC/0YDQuNC80LXQvdGP0YLRjCDQuNC30LzQtdC90LXQvdC40Y8g0L/QviDRg9C60LDQt9Cw0L3QvdC+0LzRgyDQv9GD0YLQuCIKIAotIzogYXBwbHkuYzo0OTM3CisjOiBhcHBseS5jOjQ5NjcKIG1zZ2lkICJhcHBseSBjaGFuZ2VzIG1hdGNoaW5nIHRoZSBnaXZlbiBwYXRoIgogbXNnc3RyICLQv9GA0LjQvNC10L3Rj9GC0Ywg0LjQt9C80LXQvdC10L3QuNGPINC/0L4g0YPQutCw0LfQsNC90L3QvtC80YMg0L/Rg9GC0LgiCiAKLSM6IGFwcGx5LmM6NDkzOSBidWlsdGluL2FtLmM6MjI2MworIzogYXBwbHkuYzo0OTY5IGJ1aWx0aW4vYW0uYzoyMjE5CiBtc2dpZCAibnVtIgogbXNnc3RyICLQutC+0LvQuNGH0LXRgdGC0LLQviIKIAotIzogYXBwbHkuYzo0OTQwCisjOiBhcHBseS5jOjQ5NzAKIG1zZ2lkICJyZW1vdmUgPG51bT4gbGVhZGluZyBzbGFzaGVzIGZyb20gdHJhZGl0aW9uYWwgZGlmZiBwYXRocyIKIG1zZ3N0ciAi0YPQtNCw0LvQuNGC0YwgPNC60L7Qu9C40YfQtdGB0YLQstC+PiDQstC10LTRg9GJ0LjRhSDQutC+0YHRi9GFINGH0LXRgNGCINC40Lcg0YLRgNCw0LTQuNGG0LjQvtC90L3Ri9GFINC/0YPRgtC10Lkg0YHQv9C40YHQutCwINC40LfQvNC10L3QtdC90LjQuSIKIAotIzogYXBwbHkuYzo0OTQzCisjOiBhcHBseS5jOjQ5NzMKIG1zZ2lkICJpZ25vcmUgYWRkaXRpb25zIG1hZGUgYnkgdGhlIHBhdGNoIgogbXNnc3RyICLQuNCz0L3QvtGA0LjRgNC+0LLQsNGC0Ywg0LTQvtCx0LDQstC70LXQvdC40Y8sINGB0LTQtdC70LDQvdC90YvQtSDRjdGC0LjQvCDQv9Cw0YLRh9C10LwiCiAKLSM6IGFwcGx5LmM6NDk0NQorIzogYXBwbHkuYzo0OTc1CiBtc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIG91dHB1dCBkaWZmc3RhdCBmb3IgdGhlIGlucHV0IgogbXNnc3RyICLQstC80LXRgdGC0L4g0L/RgNC40LzQtdC90LXQvdC40Y8g0L/QsNGC0YfQsCDQstGL0LLQtdGB0YLQuCDRgdGC0LDRgtC40YHRgtC40LrRgyDQtNC+0LHQsNCy0LvQtdC90LjQuSDQuCDRg9C00LDQu9C10L3QuNC5INC00LvRjyDQstCy0L7QtNCwIgogCi0jOiBhcHBseS5jOjQ5NDkKKyM6IGFwcGx5LmM6NDk3OQogbXNnaWQgInNob3cgbnVtYmVyIG9mIGFkZGVkIGFuZCBkZWxldGVkIGxpbmVzIGluIGRlY2ltYWwgbm90YXRpb24iCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0LrQvtC70LjRh9C10YHRgtCy0L4g0LTQvtCx0LDQstC70LXQvdC90YvRhSDQuCDRg9C00LDQu9C10L3QvdGL0YUg0YHRgtGA0L7QuiDQsiDQtNC10YHRj9GC0LjRh9C90L7QvCDQv9GA0LXQtNGB0YLQsNCy0LvQtdC90LjQuCIKIAotIzogYXBwbHkuYzo0OTUxCisjOiBhcHBseS5jOjQ5ODEKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGEgc3VtbWFyeSBmb3IgdGhlIGlucHV0IgotbXNnc3RyICLQstC80LXRgdGC0L4g0L/RgNC40LzQtdC90LXQvdC40Y8g0L/QsNGC0YfQsCDQstGL0LLQtdGB0YLQuCDRgdGC0LDRgtC40YHRgtC40LrRgyDQuNC30LzQtdC90LXQvdC40Lkg0LTQu9GPINCy0LLQvtC00LAiCittc2dzdHIgItCy0LzQtdGB0YLQviDQv9GA0LjQvNC10L3QtdC90LjRjyDQv9Cw0YLRh9CwINCy0YvQstC10YHRgtC4INGB0LLQvtC00LrRgyDQuNC30LzQtdC90LXQvdC40Lkg0LTQu9GPINCy0LLQvtC00LAiCiAKLSM6IGFwcGx5LmM6NDk1MworIzogYXBwbHkuYzo0OTgzCiBtc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIHNlZSBpZiB0aGUgcGF0Y2ggaXMgYXBwbGljYWJsZSIKIG1zZ3N0ciAi0LLQvNC10YHRgtC+INC/0YDQuNC80LXQvdC10L3QuNGPINC/0LDRgtGH0LAg0L/RgNC+0LLQtdGA0LjRgtGMINC/0L7QtNGF0L7QtNC40YIg0LvQuCDQvtC9IgogCi0jOiBhcHBseS5jOjQ5NTUKKyM6IGFwcGx5LmM6NDk4NQogbXNnaWQgIm1ha2Ugc3VyZSB0aGUgcGF0Y2ggaXMgYXBwbGljYWJsZSB0byB0aGUgY3VycmVudCBpbmRleCIKIG1zZ3N0ciAi0L/RgNC+0LLQtdGA0LjRgtGMLCDRh9GC0L4g0L/QsNGC0Ycg0L/RgNC40LzQtdC90Y/QtdGC0YHRjyDQuiDRgtC10LrRg9GJ0LXQvNGDINC40L3QtNC10LrRgdGDIgogCi0jOiBhcHBseS5jOjQ5NTcKKyM6IGFwcGx5LmM6NDk4NwogbXNnaWQgIm1hcmsgbmV3IGZpbGVzIHdpdGggYGdpdCBhZGQgLS1pbnRlbnQtdG8tYWRkYCIKLW1zZ3N0ciAiIgorbXNnc3RyICLQv9C+0LzQtdGH0LDRgtGMINC90L7QstGL0LUg0YTQsNC50LvRiyDRgSDCq2dpdCBhZGQgLS1pbnRlbnQtdG8tYWRkwrsiCiAKLSM6IGFwcGx5LmM6NDk1OQorIzogYXBwbHkuYzo0OTg5CiBtc2dpZCAiYXBwbHkgYSBwYXRjaCB3aXRob3V0IHRvdWNoaW5nIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgItC/0YDQuNC80LXQvdC40YLRjCDQv9Cw0YLRhywg0L3QtSDQuNC30LzQtdC90Y/RjyDRgNCw0LHQvtGH0LjQuSDQutCw0YLQsNC70L7QsyIKIAotIzogYXBwbHkuYzo0OTYxCisjOiBhcHBseS5jOjQ5OTEKIG1zZ2lkICJhY2NlcHQgYSBwYXRjaCB0aGF0IHRvdWNoZXMgb3V0c2lkZSB0aGUgd29ya2luZyBhcmVhIgogbXNnc3RyICLQv9GA0LjQvdGP0YLRjCDQv9Cw0YLRhywg0LrQvtGC0L7RgNGL0Lkg0LfQsNGC0YDQsNCz0LjQstCw0LXRgiDRhNCw0LnQu9GLINC30LAg0YDQsNCx0L7Rh9C40Lwg0LrQsNGC0LDQu9C+0LPQvtC8IgogCi0jOiBhcHBseS5jOjQ5NjQKKyM6IGFwcGx5LmM6NDk5NAogbXNnaWQgImFsc28gYXBwbHkgdGhlIHBhdGNoICh1c2Ugd2l0aCAtLXN0YXQvLS1zdW1tYXJ5Ly0tY2hlY2spIgogbXNnc3RyICLQsCDRgtCw0LrQttC1INC/0YDQuNC80LXQvdC40YLRjCDQv9Cw0YLRhyAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDRgSAtLXN0YXQvLS1zdW1tYXJ5Ly0tY2hlY2spIgogCi0jOiBhcHBseS5jOjQ5NjYKKyM6IGFwcGx5LmM6NDk5NgogbXNnaWQgImF0dGVtcHQgdGhyZWUtd2F5IG1lcmdlIGlmIGEgcGF0Y2ggZG9lcyBub3QgYXBwbHkiCiBtc2dzdHIgItC/0L7Qv9GL0YLQsNGC0YzRgdGPINGB0LTQtdC70LDRgtGMINGC0YDQtdGF0YXQvtC00L7QstC+0LUg0YHQu9C40Y/QvdC40LUsINC10YHQu9C4INC/0LDRgtGHINC90LUg0L/RgNC40LzQtdC90Y/QtdGC0YHRjyIKIAotIzogYXBwbHkuYzo0OTY4CisjOiBhcHBseS5jOjQ5OTgKIG1zZ2lkICJidWlsZCBhIHRlbXBvcmFyeSBpbmRleCBiYXNlZCBvbiBlbWJlZGRlZCBpbmRleCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAi0L/QvtGB0YLRgNC+0LjRgtGMINCy0YDQtdC80LXQvdC90YvQuSDQuNC90LTQtdC60YEsINC+0YHQvdC+0LLQsNC90L3Ri9C5INC90LAg0LLRgdGC0YDQvtC10L3QvdC+0Lkg0LjQvdGE0L7RgNC80LDRhtC40Lgg0L7QsSDQuNC90LTQtdC60YHQtSIKIAotIzogYXBwbHkuYzo0OTcxIGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjggYnVpbHRpbi9scy1maWxlcy5jOjUxNgorIzogYXBwbHkuYzo1MDAxIGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzMgYnVpbHRpbi9scy1maWxlcy5jOjUyNAogbXNnaWQgInBhdGhzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgogbXNnc3RyICLQv9GD0YLQuCwg0L7RgtC00LXQu9GR0L3QvdGL0LUg0J3Qo9Cb0JXQktCr0Jwg0YHQuNC80LLQvtC70L7QvCIKIAotIzogYXBwbHkuYzo0OTczCisjOiBhcHBseS5jOjUwMDMKIG1zZ2lkICJlbnN1cmUgYXQgbGVhc3QgPG4+IGxpbmVzIG9mIGNvbnRleHQgbWF0Y2giCiBtc2dzdHIgItGD0LTQvtGB0YLQvtCy0LXRgNC40YLRjNGB0Y8sINGH0YLQviDQv9C+INC60YDQsNC50L3QtdC5INC80LXRgNC1IDxuPiDRgdGC0YDQvtC6INC60L7QvdGC0LXQutGB0YLQsCDRgdC+0LLQv9Cw0LTQsNGO0YIiCiAKLSM6IGFwcGx5LmM6NDk3NCBidWlsdGluL2FtLmM6MjI0MiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk1Ci0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk3IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTkKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIwNQorIzogYXBwbHkuYzo1MDA0IGJ1aWx0aW4vYW0uYzoyMTk4IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTcKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTkgYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxNyBidWlsdGluL3JlYmFzZS5jOjE0MTUKIG1zZ2lkICJhY3Rpb24iCiBtc2dzdHIgItC00LXQudGB0YLQstC40LUiCiAKLSM6IGFwcGx5LmM6NDk3NQorIzogYXBwbHkuYzo1MDA1CiBtc2dpZCAiZGV0ZWN0IG5ldyBvciBtb2RpZmllZCBsaW5lcyB0aGF0IGhhdmUgd2hpdGVzcGFjZSBlcnJvcnMiCiBtc2dzdHIgItC+0L/RgNC10LTQtdC70Y/RgtGMINC90L7QstGL0LUg0LjQu9C4INC80L7QtNC40YTQuNGG0LjRgNC+0LLQsNC90L3Ri9C1INGB0YLRgNC+0LrQuCwg0YMg0LrQvtGC0L7RgNGL0YUg0LXRgdGC0Ywg0L7RiNC40LHQutC4INCyINC/0YDQvtCx0LXQu9GM0L3Ri9GFINGB0LjQvNCy0L7Qu9Cw0YUiCiAKLSM6IGFwcGx5LmM6NDk3OCBhcHBseS5jOjQ5ODEKKyM6IGFwcGx5LmM6NTAwOCBhcHBseS5jOjUwMTEKIG1zZ2lkICJpZ25vcmUgY2hhbmdlcyBpbiB3aGl0ZXNwYWNlIHdoZW4gZmluZGluZyBjb250ZXh0IgogbXNnc3RyICLQuNCz0L3QvtGA0LjRgNC+0LLQsNGC0Ywg0LjQt9C80LXQvdC10L3QuNGPINCyINC/0YDQvtCx0LXQu9GM0L3Ri9GFINGB0LjQvNCy0L7Qu9Cw0YUg0L/RgNC4INC/0L7QuNGB0LrQtSDQutC+0L3RgtC10LrRgdGC0LAiCiAKLSM6IGFwcGx5LmM6NDk4NAorIzogYXBwbHkuYzo1MDE0CiBtc2dpZCAiYXBwbHkgdGhlIHBhdGNoIGluIHJldmVyc2UiCiBtc2dzdHIgItC/0YDQuNC80LXQvdC40YLRjCDQv9Cw0YLRhyDRgSDQvtCx0YDQsNGJ0LXQvdC40LXQvCDQuNC30LzQtdC90LXQvdC40LkiCiAKLSM6IGFwcGx5LmM6NDk4NgorIzogYXBwbHkuYzo1MDE2CiBtc2dpZCAiZG9uJ3QgZXhwZWN0IGF0IGxlYXN0IG9uZSBsaW5lIG9mIGNvbnRleHQiCiBtc2dzdHIgItC90LUg0L7QttC40LTQsNGC0Ywg0LrQsNC6INC80LjQvdC40LzRg9C8INC+0LTQvdC+0Lkg0YHRgtGA0L7QutC4INC60L7QvdGC0LXQutGB0YLQsCIKIAotIzogYXBwbHkuYzo0OTg4CisjOiBhcHBseS5jOjUwMTgKIG1zZ2lkICJsZWF2ZSB0aGUgcmVqZWN0ZWQgaHVua3MgaW4gY29ycmVzcG9uZGluZyAqLnJlaiBmaWxlcyIKIG1zZ3N0ciAi0L7RgdGC0LDQstC40YLRjCDQvtGC0LrQu9C+0L3QtdC90L3Ri9C1INCx0LvQvtC60Lgg0LjQt9C80LXQvdC10L3QuNC5INCyINGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGJ0LjRhSAqLnJlaiDRhNCw0LnQu9Cw0YUiCiAKLSM6IGFwcGx5LmM6NDk5MAorIzogYXBwbHkuYzo1MDIwCiBtc2dpZCAiYWxsb3cgb3ZlcmxhcHBpbmcgaHVua3MiCiBtc2dzdHIgItGA0LDQt9GA0LXRiNC40YLRjCDQv9C10YDQtdC60YDRi9Cy0LDRjtGJ0LjQtdGB0Y8g0LHQu9C+0LrQuCDQuNC30LzQtdC90LXQvdC40LkiCiAKLSM6IGFwcGx5LmM6NDk5MSBidWlsdGluL2FkZC5jOjI5MCBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjIxCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMDEgYnVpbHRpbi9jb3VudC1vYmplY3RzLmM6OTggYnVpbHRpbi9mc2NrLmM6NjcxCi0jOiBidWlsdGluL2xvZy5jOjE5MTQgYnVpbHRpbi9tdi5jOjEyMiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNAorIzogYXBwbHkuYzo1MDIxIGJ1aWx0aW4vYWRkLmM6MjkxIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxNyBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5OCBidWlsdGluL2ZzY2suYzo3ODYKKyM6IGJ1aWx0aW4vbG9nLmM6MjA0NSBidWlsdGluL212LmM6MTIzIGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI4CiBtc2dpZCAiYmUgdmVyYm9zZSIKIG1zZ3N0ciAi0LHRi9GC0Ywg0LzQvdC+0LPQvtGB0LvQvtCy0L3QtdC1IgogCi0jOiBhcHBseS5jOjQ5OTMKKyM6IGFwcGx5LmM6NTAyMwogbXNnaWQgInRvbGVyYXRlIGluY29ycmVjdGx5IGRldGVjdGVkIG1pc3NpbmcgbmV3LWxpbmUgYXQgdGhlIGVuZCBvZiBmaWxlIgogbXNnc3RyICLRgNCw0LfRgNC10YjQuNGC0Ywg0L3QtdC60L7RgNGA0LXQutGC0L3QviDQvtC/0YDQtdC00LXQu9C10L3QvdGL0LUg0L/RgNC+0L/Rg9GJ0LXQvdC90YvQtSDQv9GD0YHRgtGL0LUg0YHRgtGA0L7QutC4INCyINC60L7QvdGG0LUg0YTQsNC50LvQsCIKIAotIzogYXBwbHkuYzo0OTk2CisjOiBhcHBseS5jOjUwMjYKIG1zZ2lkICJkbyBub3QgdHJ1c3QgdGhlIGxpbmUgY291bnRzIGluIHRoZSBodW5rIGhlYWRlcnMiCiBtc2dzdHIgItC90LUg0LTQvtCy0LXRgNGP0YLRjCDQutC+0LvQuNGH0LXRgdGC0LLRgyDRgdGC0YDQvtC6INC40Lcg0LfQsNCz0L7Qu9C+0LLQutCwINCx0LvQvtC60LAg0LjQt9C80LXQvdC10L3QuNC5IgogCi0jOiBhcHBseS5jOjQ5OTggYnVpbHRpbi9hbS5jOjIyNTEKKyM6IGFwcGx5LmM6NTAyOCBidWlsdGluL2FtLmM6MjIwNwogbXNnaWQgInJvb3QiCiBtc2dzdHIgItC60L7RgNC10L3RjCIKIAotIzogYXBwbHkuYzo0OTk5CisjOiBhcHBseS5jOjUwMjkKIG1zZ2lkICJwcmVwZW5kIDxyb290PiB0byBhbGwgZmlsZW5hbWVzIgogbXNnc3RyICLQtNC+0LHQsNCy0LjRgtGMIDzQutC+0YDQtdC90Yw+INGB0L/QtdGA0LXQtNC4INC60L4g0LLRgdC10Lwg0LjQvNC10L3QsNC8INGE0LDQudC70L7QsiIKIApAQCAtNzM3LDIwMCArNzQ3LDIyNCBAQAogbXNnaWQgImdpdCBhcmNoaXZlIC0tcmVtb3RlIDxyZXBvPiBbLS1leGVjIDxjbWQ+XSAtLWxpc3QiCiBtc2dzdHIgImdpdCBhcmNoaXZlIC0tcmVtb3RlIDzRgNC10L/QvtC30LjRgtC+0YDQuNC5PiBbLS1leGVjIDzQutC+0LzQsNC90LTQsD5dIC0tbGlzdCIKIAotIzogYXJjaGl2ZS5jOjM2MyBidWlsdGluL2FkZC5jOjE3NiBidWlsdGluL2FkZC5jOjUxNSBidWlsdGluL3JtLmM6Mjk4CisjOiBhcmNoaXZlLmM6MzcyIGJ1aWx0aW4vYWRkLmM6MTc3IGJ1aWx0aW4vYWRkLmM6NTE2IGJ1aWx0aW4vcm0uYzoyOTkKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlcyIKIG1zZ3N0ciAi0YHQv9C10YbQuNGE0LjQutCw0YLQvtGAINC/0YPRgtC4IMKrJXPCuyDQvdC1INGB0L7QvtGC0LLQtdGC0YHRgtCy0YPQtdGCINC90Lgg0L7QtNC90L7QvNGDINGE0LDQudC70YMiCiAKLSM6IGFyY2hpdmUuYzo0NDYKKyM6IGFyY2hpdmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCByZWY6ICUuKnMiCittc2dzdHIgItC90LXRgiDRgtCw0LrQvtC5INGB0YHRi9C70LrQuDogJS4qcyIKKworIzogYXJjaGl2ZS5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJXMiCittc2dzdHIgItC90LXQtNC+0L/Rg9GB0YLQuNC80L7QtSDQuNC80Y8g0L7QsdGK0LXQutGC0LA6ICVzIgorCisjOiBhcmNoaXZlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHRyZWUgb2JqZWN0OiAlcyIKK21zZ3N0ciAi0L3QtdC00LXQudGB0YLQstC40YLQtdC70YzQvdGL0Lkg0L7QsdGK0LXQutGCINC00LXRgNC10LLQsDogJXMiCisKKyM6IGFyY2hpdmUuYzo0MjQKK21zZ2lkICJjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IGlzIHVudHJhY2tlZCIKK21zZ3N0ciAi0YLQtdC60YPRidC40Lkg0YDQsNCx0L7Rh9C40Lkg0LrQsNGC0LDQu9C+0LMg0L3QtSDQvtGC0YHQu9C10LbQuNCy0LDQtdGC0YHRjyIKKworIzogYXJjaGl2ZS5jOjQ1NQogbXNnaWQgImZtdCIKIG1zZ3N0ciAi0YTQvtGA0LzQsNGCIgogCi0jOiBhcmNoaXZlLmM6NDQ2CisjOiBhcmNoaXZlLmM6NDU1CiBtc2dpZCAiYXJjaGl2ZSBmb3JtYXQiCiBtc2dzdHIgItGE0L7RgNC80LDRgiDQsNGA0YXQuNCy0LAiCiAKLSM6IGFyY2hpdmUuYzo0NDcgYnVpbHRpbi9sb2cuYzoxNDczCisjOiBhcmNoaXZlLmM6NDU2IGJ1aWx0aW4vbG9nLmM6MTU1NwogbXNnaWQgInByZWZpeCIKIG1zZ3N0ciAi0L/RgNC10YTQuNC60YEiCiAKLSM6IGFyY2hpdmUuYzo0NDgKKyM6IGFyY2hpdmUuYzo0NTcKIG1zZ2lkICJwcmVwZW5kIHByZWZpeCB0byBlYWNoIHBhdGhuYW1lIGluIHRoZSBhcmNoaXZlIgogbXNnc3RyICLQtNC+0LHQsNCy0LvRj9GC0Ywg0L/RgNC10YTQuNC60YEg0L/QtdGA0LXQtCDQutCw0LbQtNGL0Lwg0L/Rg9GC0LXQvCDRhNCw0LnQu9CwINCyINCw0YDRhdC40LLQtSIKIAotIzogYXJjaGl2ZS5jOjQ0OSBidWlsdGluL2JsYW1lLmM6ODE2IGJ1aWx0aW4vYmxhbWUuYzo4MTcgYnVpbHRpbi9jb25maWcuYzoxMjYKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDEzIGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDE1IGJ1aWx0aW4vZ3JlcC5jOjg3MwotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNCBidWlsdGluL2xzLWZpbGVzLmM6NTUyIGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTUKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0MDcgYnVpbHRpbi9ub3Rlcy5jOjU3MCBidWlsdGluL3JlYWQtdHJlZS5jOjExOQotIzogcGFyc2Utb3B0aW9ucy5oOjE2NQorIzogYXJjaGl2ZS5jOjQ1OCBidWlsdGluL2JsYW1lLmM6ODIxIGJ1aWx0aW4vYmxhbWUuYzo4MjIKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTcgYnVpbHRpbi9jb25maWcuYzoxMjkgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwOTEKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDkzIGJ1aWx0aW4vZ3JlcC5jOjg5NSBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTYwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjMgYnVpbHRpbi9ub3Rlcy5jOjQxMgorIzogYnVpbHRpbi9ub3Rlcy5jOjU3OCBidWlsdGluL3JlYWQtdHJlZS5jOjEyMyBwYXJzZS1vcHRpb25zLmg6MTc3CiBtc2dpZCAiZmlsZSIKIG1zZ3N0ciAi0YTQsNC50LsiCiAKLSM6IGFyY2hpdmUuYzo0NTAgYnVpbHRpbi9hcmNoaXZlLmM6ODkKKyM6IGFyY2hpdmUuYzo0NTkgYnVpbHRpbi9hcmNoaXZlLmM6OTAKIG1zZ2lkICJ3cml0ZSB0aGUgYXJjaGl2ZSB0byB0aGlzIGZpbGUiCiBtc2dzdHIgItC30LDQv9C40YHRjCDQsNGA0YXQuNCy0LAg0LIg0Y3RgtC+0YIg0YTQsNC50LsiCiAKLSM6IGFyY2hpdmUuYzo0NTIKKyM6IGFyY2hpdmUuYzo0NjEKIG1zZ2lkICJyZWFkIC5naXRhdHRyaWJ1dGVzIGluIHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICLRh9C40YLQsNGC0YwgLmdpdGF0dHJpYnV0ZXMg0LIg0YDQsNCx0L7Rh9C10Lwg0LrQsNGC0LDQu9C+0LPQtSIKIAotIzogYXJjaGl2ZS5jOjQ1MworIzogYXJjaGl2ZS5jOjQ2MgogbXNnaWQgInJlcG9ydCBhcmNoaXZlZCBmaWxlcyBvbiBzdGRlcnIiCiBtc2dzdHIgItC+0YLRh9C10YIg0L7QsSDQsNGA0YXQuNCy0LjRgNC+0LLQsNC90L3Ri9GFINGE0LDQudC70LDRhSDQsiBzdGRlcnIiCiAKLSM6IGFyY2hpdmUuYzo0NTQKKyM6IGFyY2hpdmUuYzo0NjMKIG1zZ2lkICJzdG9yZSBvbmx5IgogbXNnc3RyICLRgtC+0LvRjNC60L4g0YXRgNCw0L3QtdC90LjQtSIKIAotIzogYXJjaGl2ZS5jOjQ1NQorIzogYXJjaGl2ZS5jOjQ2NAogbXNnaWQgImNvbXByZXNzIGZhc3RlciIKIG1zZ3N0ciAi0YHQttC40LzQsNGC0Ywg0LHRi9GB0YLRgNC10LUiCiAKLSM6IGFyY2hpdmUuYzo0NjMKKyM6IGFyY2hpdmUuYzo0NzIKIG1zZ2lkICJjb21wcmVzcyBiZXR0ZXIiCiBtc2dzdHIgItGB0LbQuNC80LDRgtGMINC70YPRh9GI0LUiCiAKLSM6IGFyY2hpdmUuYzo0NjYKKyM6IGFyY2hpdmUuYzo0NzUKIG1zZ2lkICJsaXN0IHN1cHBvcnRlZCBhcmNoaXZlIGZvcm1hdHMiCiBtc2dzdHIgItC/0LXRgNC10YfQuNGB0LvQuNGC0Ywg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdC80YvQtSDRhNC+0YDQvNCw0YLRiyDQsNGA0YXQuNCy0L7QsiIKIAotIzogYXJjaGl2ZS5jOjQ2OCBidWlsdGluL2FyY2hpdmUuYzo5MCBidWlsdGluL2Nsb25lLmM6MTExIGJ1aWx0aW4vY2xvbmUuYzoxMTQKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzM4CisjOiBhcmNoaXZlLmM6NDc3IGJ1aWx0aW4vYXJjaGl2ZS5jOjkxIGJ1aWx0aW4vY2xvbmUuYzoxMTAgYnVpbHRpbi9jbG9uZS5jOjExMworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTgKIG1zZ2lkICJyZXBvIgogbXNnc3RyICLRgNC10L/QvtC30LjRgtC+0YDQuNC5IgogCi0jOiBhcmNoaXZlLmM6NDY5IGJ1aWx0aW4vYXJjaGl2ZS5jOjkxCisjOiBhcmNoaXZlLmM6NDc4IGJ1aWx0aW4vYXJjaGl2ZS5jOjkyCiBtc2dpZCAicmV0cmlldmUgdGhlIGFyY2hpdmUgZnJvbSByZW1vdGUgcmVwb3NpdG9yeSA8cmVwbz4iCiBtc2dzdHIgItC/0L7Qu9GD0YfQuNGC0Ywg0LDRgNGF0LjQsiDQuNC3INCy0L3QtdGI0L3QtdCz0L4gPNGA0LXQv9C+0LfQuNGC0L7RgNC40Y8+IgogCi0jOiBhcmNoaXZlLmM6NDcwIGJ1aWx0aW4vYXJjaGl2ZS5jOjkyIGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTQKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0OTEKKyM6IGFyY2hpdmUuYzo0NzkgYnVpbHRpbi9hcmNoaXZlLmM6OTMgYnVpbHRpbi9kaWZmdG9vbC5jOjcwNworIzogYnVpbHRpbi9ub3Rlcy5jOjQ5OAogbXNnaWQgImNvbW1hbmQiCiBtc2dzdHIgItC60L7QvNCw0L3QtNCwIgogCi0jOiBhcmNoaXZlLmM6NDcxIGJ1aWx0aW4vYXJjaGl2ZS5jOjkzCisjOiBhcmNoaXZlLmM6NDgwIGJ1aWx0aW4vYXJjaGl2ZS5jOjk0CiBtc2dpZCAicGF0aCB0byB0aGUgcmVtb3RlIGdpdC11cGxvYWQtYXJjaGl2ZSBjb21tYW5kIgogbXNnc3RyICLQv9GD0YLRjCDQuiDQutC+0LzQsNC90LTQtSBnaXQtdXBsb2FkLWFyY2hpdmUg0L3QsCDQvNCw0YjQuNC90LUg0YEg0LLQvdC10YjQvdC40Lwg0YDQtdC/0L7Qt9C40YLQvtGA0LjQtdC8IgogCi0jOiBhcmNoaXZlLmM6NDc4CisjOiBhcmNoaXZlLmM6NDg3CiBtc2dpZCAiVW5leHBlY3RlZCBvcHRpb24gLS1yZW1vdGUiCiBtc2dzdHIgItCd0LXQvtC20LjQtNCw0L3QvdCw0Y8g0L7Qv9GG0LjRjyAtLXJlbW90ZSIKIAotIzogYXJjaGl2ZS5jOjQ4MAorIzogYXJjaGl2ZS5jOjQ4OQogbXNnaWQgIk9wdGlvbiAtLWV4ZWMgY2FuIG9ubHkgYmUgdXNlZCB0b2dldGhlciB3aXRoIC0tcmVtb3RlIgogbXNnc3RyICLQntC/0YbQuNGPIC0tZXhlYyDQvNC+0LbQtdGCINC40YHQv9C+0LvRjNC30L7QstCw0YLRjNGB0Y8g0YLQvtC70YzQutC+INCy0LzQtdGB0YLQtSDRgSAtLXJlbW90ZSIKIAotIzogYXJjaGl2ZS5jOjQ4MgorIzogYXJjaGl2ZS5jOjQ5MQogbXNnaWQgIlVuZXhwZWN0ZWQgb3B0aW9uIC0tb3V0cHV0IgogbXNnc3RyICLQndC10L7QttC40LTQsNC90L3QsNGPINC+0L/RhtC40Y8gLS1vdXRwdXQiCiAKLSM6IGFyY2hpdmUuYzo1MDQKKyM6IGFyY2hpdmUuYzo1MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biBhcmNoaXZlIGZvcm1hdCAnJXMnIgogbXNnc3RyICLQndC10LjQt9Cy0LXRgdGC0L3Ri9C5INGE0L7RgNC80LDRgiDQsNGA0YXQuNCy0LAgwqslc8K7IgogCi0jOiBhcmNoaXZlLmM6NTExCisjOiBhcmNoaXZlLmM6NTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFyZ3VtZW50IG5vdCBzdXBwb3J0ZWQgZm9yIGZvcm1hdCAnJXMnOiAtJWQiCiBtc2dzdHIgItCQ0YDQs9GD0LzQtdC90YIg0L3QtSDQv9C+0LTQtNC10YDQttC40LLQsNC10YLRgdGPINC00LvRjyDRhNC+0YDQvNCw0YLQsCDCqyVzwrs6IC0lZCIKIAotIzogYXJjaGl2ZS10YXIuYzoxMjUgYXJjaGl2ZS16aXAuYzozNDQKKyM6IGFyY2hpdmUtdGFyLmM6MTI1IGFyY2hpdmUtemlwLmM6MzQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdHJlYW0gYmxvYiAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQv9C+0YLQvtC6INC00LLQvtC40YfQvdC+0LPQviDQvtCx0YrQtdC60YLQsCAlcyIKIAotIzogYXJjaGl2ZS10YXIuYzoyNjAgYXJjaGl2ZS16aXAuYzozNjEKKyM6IGFyY2hpdmUtdGFyLmM6MjYwIGFyY2hpdmUtemlwLmM6MzYzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuc3VwcG9ydGVkIGZpbGUgbW9kZTogMCVvIChTSEExOiAlcykiCiBtc2dzdHIgItC90LXQv9C+0LTQtNC10YDQttC40LLQsNC10LzRi9C5INGA0LXQttC40Lwg0LTQvtGB0YLRg9C/0LAg0Log0YTQsNC50LvRgzogMCVvIChTSEExOiAlcykiCiAKLSM6IGFyY2hpdmUtdGFyLmM6Mjg3IGFyY2hpdmUtemlwLmM6MzUyCisjOiBhcmNoaXZlLXRhci5jOjI4NyBhcmNoaXZlLXppcC5jOjM1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0YwgJXMiCiAKLSM6IGFyY2hpdmUtdGFyLmM6NDU4CisjOiBhcmNoaXZlLXRhci5jOjQ1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gc3RhcnQgJyVzJyBmaWx0ZXIiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0YPRgdGC0LjRgtGMINGE0LjQu9GM0YLRgCDCqyVzwrsiCiAKLSM6IGFyY2hpdmUtdGFyLmM6NDYxCisjOiBhcmNoaXZlLXRhci5jOjQ2MgogbXNnaWQgInVuYWJsZSB0byByZWRpcmVjdCBkZXNjcmlwdG9yIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0LXRgNC10L3QsNC/0YDQsNCy0LjRgtGMINC00LXRgdC60YDQuNC/0YLQvtGAIgogCi0jOiBhcmNoaXZlLXRhci5jOjQ2OAorIzogYXJjaGl2ZS10YXIuYzo0NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBmaWx0ZXIgcmVwb3J0ZWQgZXJyb3IiCiBtc2dzdHIgItGE0LjQu9GM0YLRgCDCqyVzwrsg0YHQvtC+0LHRidC40Lsg0L7QsSDQvtGI0LjQsdC60LUiCiAKLSM6IGFyY2hpdmUtemlwLmM6MzEzCisjOiBhcmNoaXZlLXppcC5jOjMxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoIGlzIG5vdCB2YWxpZCBVVEYtODogJXMiCiBtc2dzdHIgItC/0YPRgtGMINC90LUg0Y/QstC70Y/QtdGC0YHRjyDQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3Ri9C8IFVURi04OiAlcyIKIAotIzogYXJjaGl2ZS16aXAuYzozMTcKKyM6IGFyY2hpdmUtemlwLmM6MzE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggdG9vIGxvbmcgKCVkIGNoYXJzLCBTSEExOiAlcyk6ICVzIgogbXNnc3RyICLQv9GD0YLRjCDRgdC70LjRiNC60L7QvCDQtNC70LjQvdC90YvQuSAoJWQg0YHQuNC80LLQvtC70L7QsiwgU0hBMTogJXMpOiAlcyIKIAotIzogYXJjaGl2ZS16aXAuYzo0NzAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTkKKyM6IGFyY2hpdmUtemlwLmM6NDc0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjI2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlZmxhdGUgZXJyb3IgKCVkKSIKIG1zZ3N0ciAi0L7RiNC40LHQutCwINGB0LbQsNGC0LjRjyAoJWQpIgogCi0jOiBhcmNoaXZlLXppcC5jOjYwNQorIzogYXJjaGl2ZS16aXAuYzo2MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAidGltZXN0YW1wIHRvbyBsYXJnZSBmb3IgdGhpcyBzeXN0ZW06ICU8UFJJdU1BWD4iCiBtc2dzdHIgItC+0YLQvNC10YLQutCwINCy0YDQtdC80LXQvdC4INGB0LvQuNGI0LrQvtC8INCx0L7Qu9GM0YjQsNGPINC00LvRjyDRjdGC0L7QuSDRgdC40YHRgtC10LzRizogJTxQUkl1TUFYPiIKIAotIzogYXR0ci5jOjIxOAorIzogYXR0ci5jOjIxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlLipzIGlzIG5vdCBhIHZhbGlkIGF0dHJpYnV0ZSBuYW1lIgogbXNnc3RyICIlLipzINC90LUg0Y/QstC70Y/QtdGC0YHRjyDQtNC+0L/Rg9GB0YLQuNC80YvQvCDQuNC80LXQvdC10Lwg0LDRgtGA0LjQsdGD0YLQsCIKIAotIzogYXR0ci5jOjQxNQorIzogYXR0ci5jOjM2OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBub3QgYWxsb3dlZDogJXM6JWQiCittc2dzdHIgIiVzINC90LUg0YDQsNC30YDQtdGI0LXQvdC+OiAlczolZCIKKworIzogYXR0ci5jOjQwOAogbXNnaWQgIiIKICJOZWdhdGl2ZSBwYXR0ZXJucyBhcmUgaWdub3JlZCBpbiBnaXQgYXR0cmlidXRlc1xuIgogIlVzZSAnXFwhJyBmb3IgbGl0ZXJhbCBsZWFkaW5nIGV4Y2xhbWF0aW9uLiIKIG1zZ3N0ciAi0J7RgtGA0LjRhtCw0Y7RidC40LUg0YjQsNCx0LvQvtC90Ysg0LIg0LDRgtGA0LjQsdGD0YLQsNGFIGdpdCDQuNCz0L3QvtGA0LjRgNGD0Y7RgtGB0Y8uXG7QmNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrXFwhwrsg0LTQu9GPINCx0YPQutCy0LDQu9GM0L3QvtCz0L4g0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8g0YHQuNC80LLQvtC70LAg0LIg0LfQvdCw0YfQtdC90LjQuCDCq9Cy0L7RgdC60LvQuNGG0LDRgtC10LvRjNC90YvQuSDQt9C90LDQusK7LiIKIAotIzogYmlzZWN0LmM6NDY3CisjOiBiaXNlY3QuYzo0NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkbHkgcXVvdGVkIGNvbnRlbnQgaW4gZmlsZSAnJXMnOiAlcyIKIG1zZ3N0ciAi0J/Qu9C+0YXQvtC1INGB0L7QtNC10YDQttC40LzQvtC1INGE0LDQudC70LAgwqslc8K7OiAlcyIKIAotIzogYmlzZWN0LmM6Njc1CisjOiBiaXNlY3QuYzo2NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiV2UgY2Fubm90IGJpc2VjdCBtb3JlIVxuIgogbXNnc3RyICLQndC10LLQvtC30LzQvtC20L3QviDQv9GA0L7QtNC+0LvQttC40YLRjCDQsdC40L3QsNGA0L3Ri9C5INC/0L7QuNGB0LohXG4iCiAKLSM6IGJpc2VjdC5jOjcyOQorIzogYmlzZWN0LmM6NzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIGNvbW1pdCBuYW1lICVzIgogbXNnc3RyICLQndC10LTQvtC/0YPRgdGC0LjQvNC+0LUg0LjQvNGPINC60L7QvNC80LjRgtCwICVzIgogCi0jOiBiaXNlY3QuYzo3NTMKKyM6IGJpc2VjdC5jOjc1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIG1lcmdlIGJhc2UgJXMgaXMgYmFkLlxuIgogIlRoaXMgbWVhbnMgdGhlIGJ1ZyBoYXMgYmVlbiBmaXhlZCBiZXR3ZWVuICVzIGFuZCBbJXNdLlxuIgogbXNnc3RyICLQkdCw0LfQsCDRgdC70LjRj9C90LjRjyAlcyDRj9Cy0LvRj9C10YLRgdGPINC/0LvQvtGF0LjQvCDQutC+0LzQvNC40YLQvtC8Llxu0K3RgtC+INC30L3QsNGH0LjRgiwg0YfRgtC+INC+0YjQuNCx0LrQsCDQsdGL0LvQsCDQuNGB0L/RgNCw0LLQu9C10L3QsCDQs9C00LUt0YLQviDQvNC10LbQtNGDICVzINC4IFslc10uXG4iCiAKLSM6IGJpc2VjdC5jOjc1OAorIzogYmlzZWN0LmM6NzYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgbWVyZ2UgYmFzZSAlcyBpcyBuZXcuXG4iCiAiVGhlIHByb3BlcnR5IGhhcyBjaGFuZ2VkIGJldHdlZW4gJXMgYW5kIFslc10uXG4iCiBtc2dzdHIgItCR0LDQt9CwINGB0LvQuNGP0L3QuNGPICVzINGP0LLQu9GP0LXRgtGB0Y8g0L3QvtCy0L7QuS5cbtCh0LLQvtC50YHRgtCy0L4g0LHRi9C70L4g0LjQt9C80LXQvdC10L3QviDQs9C00LUt0YLQviDQvNC10LbQtNGDICVzINC4IFslc10uXG4iCiAKLSM6IGJpc2VjdC5jOjc2MworIzogYmlzZWN0LmM6NzY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgbWVyZ2UgYmFzZSAlcyBpcyAlcy5cbiIKICJUaGlzIG1lYW5zIHRoZSBmaXJzdCAnJXMnIGNvbW1pdCBpcyBiZXR3ZWVuICVzIGFuZCBbJXNdLlxuIgogbXNnc3RyICLQkdCw0LfQsCDRgdC70LjRj9C90LjRjyAlcyDRj9Cy0LvRj9C10YLRgdGPICVzLlxu0K3RgtC+INC30L3QsNGH0LjRgiwg0YfRgtC+IMKrJXPCuyDQutC+0LzQvNC40YIg0L3QsNGF0L7QtNC40YLRgdGPINCz0LTQtS3RgtC+INC80LXQttC00YMgJXMg0LggWyVzXS5cbiIKIAotIzogYmlzZWN0LmM6NzcxCisjOiBiaXNlY3QuYzo3NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlNvbWUgJXMgcmV2cyBhcmUgbm90IGFuY2VzdG9ycyBvZiB0aGUgJXMgcmV2LlxuIgpAQCAtOTM4LDcgKzk3Miw3IEBACiAiTWF5YmUgeW91IG1pc3Rvb2sgJXMgYW5kICVzIHJldnM/XG4iCiBtc2dzdHIgItCd0LXRgdC60L7Qu9GM0LrQviAlcyDQutC+0LzQvNC40YLQvtCyINC90LUg0Y/QstC70Y/RjtGC0YHRjyDQv9GA0LXQtNC60LDQvNC4ICVzINC60L7QvNC80LjRgtCwLlxu0JIg0Y3RgtC+0Lwg0YHQu9GD0YfQsNC1IGdpdCBiaXNlY3Qg0L3QtSDQvNC+0LbQtdGCINGA0LDQsdC+0YLQsNGC0Ywg0L/RgNCw0LLQuNC70YzQvdC+Llxu0JLQvtC30LzQvtC20L3Qviwg0LLRiyDQv9C10YDQtdC/0YPRgtCw0LvQuCDRgNC10LTQsNC60YbQuNC4ICVzINC4ICVzINC80LXRgdGC0LDQvNC4P1xuIgogCi0jOiBiaXNlY3QuYzo3ODQKKyM6IGJpc2VjdC5jOjc4OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidGhlIG1lcmdlIGJhc2UgYmV0d2VlbiAlcyBhbmQgWyVzXSBtdXN0IGJlIHNraXBwZWQuXG4iCkBAIC05NDYsNDMgKzk4MCw0MyBAQAogIldlIGNvbnRpbnVlIGFueXdheS4iCiBtc2dzdHIgItCR0LDQt9CwINGB0LvQuNGP0L3QuNGPINC80LXQttC00YMgJXMg0LggWyVzXSDQtNC+0LvQttC90L4g0LHRi9GC0Ywg0L/RgNC+0L/Rg9GJ0LXQvdCwLlxu0J/QvtGN0YLQvtC80YMg0LzRiyDQvdC1INC80L7QttC10Lwg0LHRi9GC0Ywg0YPQstC10YDQtdC90YssINGH0YLQviDQv9C10YDQstGL0LkgJXMg0LrQvtC80LzQuNGCINC90LDRhdC+0LTQuNGC0YHRjyDQvNC10LbQtNGDICVzINC4ICVzLlxu0J3QviDQstGB0LUg0LbQtSDQv9GA0L7QtNC+0LvQttCw0LXQvCDQv9C+0LjRgdC6LiIKIAotIzogYmlzZWN0LmM6ODE3CisjOiBiaXNlY3QuYzo4MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmlzZWN0aW5nOiBhIG1lcmdlIGJhc2UgbXVzdCBiZSB0ZXN0ZWRcbiIKIG1zZ3N0ciAi0JHQuNC90LDRgNC90YvQuSDQv9C+0LjRgdC6OiDQsdCw0LfQsCDRgdC70LjRj9C90LjRjyDQtNC+0LvQttC90LAg0LHRi9GC0Ywg0L/RgNC+0LLQtdGA0LXQvdCwXG4iCiAKLSM6IGJpc2VjdC5jOjg1NworIzogYmlzZWN0LmM6ODY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImEgJXMgcmV2aXNpb24gaXMgbmVlZGVkIgogbXNnc3RyICLQvdGD0LbQvdC+INGD0LrQsNC30LDRgtGMICVzINGA0LXQtNCw0LrRhtC40Y4iCiAKLSM6IGJpc2VjdC5jOjg3NiBidWlsdGluL25vdGVzLmM6MTc3IGJ1aWx0aW4vdGFnLmM6MjM3CisjOiBiaXNlY3QuYzo4ODQgYnVpbHRpbi9ub3Rlcy5jOjE3NyBidWlsdGluL3RhZy5jOjI0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGZpbGUgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDRhNCw0LnQuyDCqyVzwrsiCiAKLSM6IGJpc2VjdC5jOjkyNyBidWlsdGluL21lcmdlLmM6MTM3CisjOiBiaXNlY3QuYzo5MjggYnVpbHRpbi9tZXJnZS5jOjE0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBmaWxlICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMINGE0LDQudC7IMKrJXPCuyIKIAotIzogYmlzZWN0LmM6OTU3CisjOiBiaXNlY3QuYzo5NTgKIG1zZ2lkICJyZWFkaW5nIGJpc2VjdCByZWZzIGZhaWxlZCIKIG1zZ3N0ciAi0YHQsdC+0Lkg0L/RgNC4INGH0YLQtdC90LjQuCDRgdGB0YvQu9C+0Log0LTQstC+0LjRh9C90L7Qs9C+INC/0L7QuNGB0LrQsCIKIAotIzogYmlzZWN0LmM6OTc2CisjOiBiaXNlY3QuYzo5NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgd2FzIGJvdGggJXMgYW5kICVzXG4iCiBtc2dzdHIgIiVzINCx0YvQu9CwINC+0LTQvdC+0LLRgNC10LzQtdC90L3QviDQuCAlcyDQuCAlc1xuIgogCi0jOiBiaXNlY3QuYzo5ODQKKyM6IGJpc2VjdC5jOjk4NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gdGVzdGFibGUgY29tbWl0IGZvdW5kLlxuIgogIk1heWJlIHlvdSBzdGFydGVkIHdpdGggYmFkIHBhdGggcGFyYW1ldGVycz9cbiIKIG1zZ3N0ciAi0KLQtdGB0YLQuNGA0YPQtdC80YvQuSDQutC+0LzQvNC40YIg0L3QtSDQvdCw0LnQtNC10L0uXG7QktC+0LfQvNC+0LbQvdC+LCDQstGLINC90LDRh9Cw0LvQuCDQv9C+0LjRgdC6INGBINGD0LrQsNC30LDQvdC40LXQvCDQvdC10L/RgNCw0LLQuNC70YzQvdC+0LPQviDQv9Cw0YDQsNC80LXRgtGA0LAg0L/Rg9GC0Lg/XG4iCiAKLSM6IGJpc2VjdC5jOjEwMDMKKyM6IGJpc2VjdC5jOjEwMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiKHJvdWdobHkgJWQgc3RlcCkiCiBtc2dpZF9wbHVyYWwgIihyb3VnaGx5ICVkIHN0ZXBzKSIKQEAgLTk5Myw3ICsxMDI3LDcgQEAKIAogIy4gVFJBTlNMQVRPUlM6IHRoZSBsYXN0ICVzIHdpbGwgYmUgcmVwbGFjZWQgd2l0aCAiKHJvdWdobHkgJWQKICMuIHN0ZXBzKSIgdHJhbnNsYXRpb24uCi0jOiBiaXNlY3QuYzoxMDA5CisjOiBiaXNlY3QuYzoxMDEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJpc2VjdGluZzogJWQgcmV2aXNpb24gbGVmdCB0byB0ZXN0IGFmdGVyIHRoaXMgJXNcbiIKIG1zZ2lkX3BsdXJhbCAiQmlzZWN0aW5nOiAlZCByZXZpc2lvbnMgbGVmdCB0byB0ZXN0IGFmdGVyIHRoaXMgJXNcbiIKQEAgLTEwMDIsNDIgKzEwMzYsNDIgQEAKIG1zZ3N0clsyXSAi0JHQuNC90LDRgNC90YvQuSDQv9C+0LjRgdC6OiAlZCDRgNC10LTQsNC60YbQuNC5INC+0YHRgtCw0LvQvtGB0Ywg0L/RgNC+0LLQtdGA0LjRgtGMINC/0L7RgdC70LUg0Y3RgtC+0LkgJXNcbiIKIG1zZ3N0clszXSAi0JHQuNC90LDRgNC90YvQuSDQv9C+0LjRgdC6OiAlZCDRgNC10LTQsNC60YbQuNC5INC+0YHRgtCw0LvQvtGB0Ywg0L/RgNC+0LLQtdGA0LjRgtGMINC/0L7RgdC70LUg0Y3RgtC+0LkgJXNcbiIKIAotIzogYmxhbWUuYzoxNzg2CisjOiBibGFtZS5jOjE3OTQKIG1zZ2lkICItLWNvbnRlbnRzIGFuZCAtLXJldmVyc2UgZG8gbm90IGJsZW5kIHdlbGwuIgogbXNnc3RyICItLWNvbnRlbnRzINC4IC0tcmV2ZXJzZSDQvdC1INC+0YfQtdC90Ywg0YHQvtGH0LXRgtCw0Y7RgtGB0Y8uIgogCi0jOiBibGFtZS5jOjE4MDAKKyM6IGJsYW1lLmM6MTgwOAogbXNnaWQgImNhbm5vdCB1c2UgLS1jb250ZW50cyB3aXRoIGZpbmFsIGNvbW1pdCBvYmplY3QgbmFtZSIKIG1zZ3N0ciAi0L3QtdC70YzQt9GPINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCAtLWNvbnRlbnRzINGBINGD0LrQsNC30LDQvdC40LXQvCDRhNC40L3QsNC70YzQvdC+0LPQviDQuNC80LXQvdC4INC+0LHRitC10LrRgtCwIgogCi0jOiBibGFtZS5jOjE4MjEKKyM6IGJsYW1lLmM6MTgyOQogbXNnaWQgIi0tcmV2ZXJzZSBhbmQgLS1maXJzdC1wYXJlbnQgdG9nZXRoZXIgcmVxdWlyZSBzcGVjaWZpZWQgbGF0ZXN0IGNvbW1pdCIKIG1zZ3N0ciAi0L/RgNC4IC0tcmV2ZXJzZSDQuCAtLWZpcnN0LXBhcmVudCDQstC80LXRgdGC0LUg0L3Rg9C20L3QviDRg9C60LDQt9GL0LLQsNGC0Ywg0LrQvtC90LrRgNC10YLQvdGL0Lkg0L/QvtGB0LvQtdC00L3QuNC5INC60L7QvNC80LjRgiIKIAotIzogYmxhbWUuYzoxODMwIGJ1bmRsZS5jOjE2MiByZWYtZmlsdGVyLmM6MjE1NCBzZXF1ZW5jZXIuYzoxODc0Ci0jOiBzZXF1ZW5jZXIuYzozNzcyIGJ1aWx0aW4vY29tbWl0LmM6OTk0IGJ1aWx0aW4vbG9nLmM6MzcyIGJ1aWx0aW4vbG9nLmM6OTI2Ci0jOiBidWlsdGluL2xvZy5jOjEzODEgYnVpbHRpbi9sb2cuYzoxNzEzIGJ1aWx0aW4vbG9nLmM6MTk2MwotIzogYnVpbHRpbi9tZXJnZS5jOjQwNCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwMzIgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDQ3CisjOiBibGFtZS5jOjE4MzggYnVuZGxlLmM6MTY0IHJlZi1maWx0ZXIuYzoyMDc3IHJlbW90ZS5jOjE5Mzggc2VxdWVuY2VyLmM6MjAzMAorIzogc2VxdWVuY2VyLmM6NDIyNCBidWlsdGluL2NvbW1pdC5jOjEwMTcgYnVpbHRpbi9sb2cuYzozODIgYnVpbHRpbi9sb2cuYzo5NDAKKyM6IGJ1aWx0aW4vbG9nLmM6MTQyOCBidWlsdGluL2xvZy5jOjE4MDQgYnVpbHRpbi9sb2cuYzoyMDk0CisjOiBidWlsdGluL21lcmdlLmM6NDE1IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE0MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNTUKICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxOTIKIG1zZ2lkICJyZXZpc2lvbiB3YWxrIHNldHVwIGZhaWxlZCIKIG1zZ3N0ciAi0YHQsdC+0Lkg0LjQvdC40YbQuNCw0LvQuNC30LDRhtC40Lgg0L/RgNC+0YXQvtC00LAg0L/QviDRgNC10LTQsNC60YbQuNGP0LwiCiAKLSM6IGJsYW1lLmM6MTg0OAorIzogYmxhbWUuYzoxODU2CiBtc2dpZCAiIgogIi0tcmV2ZXJzZSAtLWZpcnN0LXBhcmVudCB0b2dldGhlciByZXF1aXJlIHJhbmdlIGFsb25nIGZpcnN0LXBhcmVudCBjaGFpbiIKIG1zZ3N0ciAi0L/RgNC4INGD0LrQsNC30LDQvdC40LggLS1yZXZlcnNlINC4IC0tZmlyc3QtcGFyZW50INCy0LzQtdGB0YLQtSwg0YLRgNC10LHRg9C10YLRgdGPINGC0LDQutC20LUg0YPQutCw0LfQsNGC0Ywg0LTQuNCw0L/QsNC30L7QvSDQv9C+INGG0LXQv9C+0YfQutC1INC/0LXRgNCy0L7Qs9C+INGA0L7QtNC40YLQtdC70Y8iCiAKLSM6IGJsYW1lLmM6MTg1OQorIzogYmxhbWUuYzoxODY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggcGF0aCAlcyBpbiAlcyIKIG1zZ3N0ciAi0L3QtdGCINGC0LDQutC+0LPQviDQv9GD0YLQuCAlcyDQsiAlcyIKIAotIzogYmxhbWUuYzoxODcwCisjOiBibGFtZS5jOjE4NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgYmxvYiAlcyBmb3IgcGF0aCAlcyIKIG1zZ3N0ciAi0L3QtdCy0L7Qt9C80L7QttC90L4g0L/RgNC+0YfQuNGC0LDRgtGMINC+0LHRitC10LrRgiAlcyDQtNC70Y8g0L/Rg9GC0LggJXMiCiAKLSM6IGJyYW5jaC5jOjU0CisjOiBicmFuY2guYzo1MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC0xMDQ2LDg2ICsxMDgwLDg2IEBACiAiXCJnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvPSVzJXMlc1wiLiIKIG1zZ3N0ciAiXG7Qn9C+0YHQu9C1INC40YHQv9GA0LDQstC70LXQvdC40Y8g0L/RgNC40YfQuNC90Ysg0L7RiNC40LHQutC4LFxu0LLRiyDQvNC+0LbQtdGC0LUg0LjRgdC/0YDQsNCy0LjRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+0LEg0L7RgtGB0LvQtdC20LjQstCw0LXQvNC+0LlcbtCy0L3QtdGI0L3QtdC5INCy0LXRgtC60LUsINGBINC/0L7QvNC+0YnRjNGOINC60L7QvNCw0L3QtNGLXG7Cq2dpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMlcyVzwrsuIgogCi0jOiBicmFuY2guYzo2OAorIzogYnJhbmNoLmM6NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IHNldHRpbmcgYnJhbmNoICVzIGFzIGl0cyBvd24gdXBzdHJlYW0uIgogbXNnc3RyICLQndC1INGD0YHRgtCw0L3QsNCy0LvQuNCy0LDRjiDQstC10YLQutGDICVzLCDRgtCw0Log0YLQsNC6INC+0L3QsCDQv9GA0LjQvdCw0LTQu9C10LbQuNGCINCy0YvRiNC10YHRgtC+0Y/RidC10LzRgyDRgNC10L/QvtC30LjRgtC+0YDQuNGOLiIKIAotIzogYnJhbmNoLmM6OTQKKyM6IGJyYW5jaC5jOjkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgYnJhbmNoICclcycgZnJvbSAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAi0JLQtdGC0LrQsCDCqyVzwrsg0L7RgtGB0LvQtdC20LjQstCw0LXRgiDQstC90LXRiNC90Y7RjiDQstC10YLQutGDIMKrJXPCuyDQuNC3IMKrJXPCuyDQv9C10YDQtdC80LXRidC10L3QuNC10LwuIgogCi0jOiBicmFuY2guYzo5NQorIzogYnJhbmNoLmM6OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIHJlbW90ZSBicmFuY2ggJyVzJyBmcm9tICclcycuIgogbXNnc3RyICLQktC10YLQutCwIMKrJXPCuyDQvtGC0YHQu9C10LbQuNCy0LDQtdGCINCy0L3QtdGI0L3RjtGOINCy0LXRgtC60YMgwqslc8K7INC40Lcgwqslc8K7LiIKIAotIzogYnJhbmNoLmM6OTkKKyM6IGJyYW5jaC5jOjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCBicmFuY2ggJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgItCS0LXRgtC60LAgwqslc8K7INC+0YLRgdC70LXQttC40LLQsNC10YIg0LvQvtC60LDQu9GM0L3Rg9GOINCy0LXRgtC60YMgwqslc8K7INC/0LXRgNC10LzQtdGJ0LXQvdC40LXQvC4iCiAKLSM6IGJyYW5jaC5jOjEwMAorIzogYnJhbmNoLmM6OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIGJyYW5jaCAnJXMnLiIKIG1zZ3N0ciAi0JLQtdGC0LrQsCDCqyVzwrsg0L7RgtGB0LvQtdC20LjQstCw0LXRgiDQu9C+0LrQsNC70YzQvdGD0Y4g0LLQtdGC0LrRgyDCqyVzwrsuIgogCi0jOiBicmFuY2guYzoxMDUKKyM6IGJyYW5jaC5jOjEwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIHJlZiAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAi0JLQtdGC0LrQsCDCqyVzwrsg0L7RgtGB0LvQtdC20LjQstCw0LXRgiDQstC90LXRiNC90Y7RjiDRgdGB0YvQu9C60YMgwqslc8K7INC/0LXRgNC10LzQtdGJ0LXQvdC40LXQvC4iCiAKLSM6IGJyYW5jaC5jOjEwNgorIzogYnJhbmNoLmM6MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgcmVmICclcycuIgogbXNnc3RyICLQktC10YLQutCwIMKrJXPCuyDQvtGC0YHQu9C10LbQuNCy0LDQtdGCINCy0L3QtdGI0L3RjtGOINGB0YHRi9C70LrRgyDCqyVzwrsuIgogCi0jOiBicmFuY2guYzoxMTAKKyM6IGJyYW5jaC5jOjEwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycgYnkgcmViYXNpbmcuIgogbXNnc3RyICLQktC10YLQutCwIMKrJXPCuyDQvtGC0YHQu9C10LbQuNCy0LDQtdGCINC70L7QutCw0LvRjNC90YPRjiDRgdGB0YvQu9C60YMgwqslc8K7INC/0LXRgNC10LzQtdGJ0LXQvdC40LXQvC4iCiAKLSM6IGJyYW5jaC5jOjExMQorIzogYnJhbmNoLmM6MTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCByZWYgJyVzJy4iCiBtc2dzdHIgItCS0LXRgtC60LAgwqslc8K7INC+0YLRgdC70LXQttC40LLQsNC10YIg0LvQvtC60LDQu9GM0L3Rg9GOINGB0YHRi9C70LrRgyDCqyVzwrsuIgogCi0jOiBicmFuY2guYzoxMjAKKyM6IGJyYW5jaC5jOjExOQogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSB1cHN0cmVhbSBicmFuY2ggY29uZmlndXJhdGlvbiIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMINC90LDRgdGC0YDQvtC50LrQuCDQstGL0YjQtdGB0YLQvtGP0YnQtdC5INCy0LXRgtC60LgiCiAKLSM6IGJyYW5jaC5jOjE1NworIzogYnJhbmNoLmM6MTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCB0cmFja2luZzogYW1iaWd1b3VzIGluZm9ybWF0aW9uIGZvciByZWYgJXMiCiBtc2dzdHIgItCd0LUg0L7RgtGB0LvQtdC20LjQstCw0LXRgtGB0Y86INC90LXQvtC00L3QvtC30L3QsNGH0L3QsNGPINC40L3RhNC+0YDQvNCw0YbQuNGPINC00LvRjyDRgdGB0YvQu9C60LggJXMiCiAKLSM6IGJyYW5jaC5jOjE5MAorIzogYnJhbmNoLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgYnJhbmNoIG5hbWUuIgogbXNnc3RyICLCqyVzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC00LXQudGB0YLQstC40YLQtdC70YzQvdGL0Lwg0LjQvNC10L3QtdC8INCy0LXRgtC60LguIgogCi0jOiBicmFuY2guYzoyMDkKKyM6IGJyYW5jaC5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJBIGJyYW5jaCBuYW1lZCAnJXMnIGFscmVhZHkgZXhpc3RzLiIKIG1zZ3N0ciAi0JLQtdGC0LrQsCDRgSDQuNC80LXQvdC10Lwgwqslc8K7INGD0LbQtSDRgdGD0YnQtdGB0YLQstGD0LXRgi4iCiAKLSM6IGJyYW5jaC5jOjIxNAorIzogYnJhbmNoLmM6MjEzCiBtc2dpZCAiQ2Fubm90IGZvcmNlIHVwZGF0ZSB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0YDQuNC90YPQtNC40YLQtdC70YzQvdC+INC+0LHQvdC+0LLQuNGC0Ywg0YLQtdC60YPRidGD0Y4g0LLQtdGC0LrRgy4iCiAKLSM6IGJyYW5jaC5jOjIzNAorIzogYnJhbmNoLmM6MjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3Qgc2V0dXAgdHJhY2tpbmcgaW5mb3JtYXRpb247IHN0YXJ0aW5nIHBvaW50ICclcycgaXMgbm90IGEgYnJhbmNoLiIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0YHRgtGA0L7QuNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L7RgtGB0LvQtdC20LjQstCw0L3QuNGPOyDRgdGC0LDRgNGC0L7QstCw0Y8g0YLQvtGH0LrQsCDCqyVzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINCy0LXRgtC60L7QuS4iCiAKLSM6IGJyYW5jaC5jOjIzNgorIzogYnJhbmNoLmM6MjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSByZXF1ZXN0ZWQgdXBzdHJlYW0gYnJhbmNoICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgItC30LDQv9GA0L7RiNC10L3QvdCw0Y8g0LLQtdGC0LrQsCDQstGL0YjQtdGB0YLQvtGP0YnQtdCz0L4g0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyDCqyVzwrsg0L3QtSDRgdGD0YnQtdGB0YLQstGD0LXRgiIKIAotIzogYnJhbmNoLmM6MjM4CisjOiBicmFuY2guYzoyMzcKIG1zZ2lkICIiCiAiXG4iCiAiSWYgeW91IGFyZSBwbGFubmluZyBvbiBiYXNpbmcgeW91ciB3b3JrIG9uIGFuIHVwc3RyZWFtXG4iCkBAIC0xMTUyLDEyICsxMTg2LDEyIEBACiBtc2dpZCAiTm90IGEgdmFsaWQgYnJhbmNoIHBvaW50OiAnJXMnLiIKIG1zZ3N0ciAi0J3QtdC00L7Qv9GD0YHRgtC40LzQsNGPINGC0L7Rh9C60LAg0LLQtdGC0LrQuDogwqslc8K7LiIKIAotIzogYnJhbmNoLmM6MzYwCisjOiBicmFuY2guYzozNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbHJlYWR5IGNoZWNrZWQgb3V0IGF0ICclcyciCiBtc2dzdHIgIsKrJXPCuyDRg9C20LUg0L3QsNGF0L7QtNC40YLRgdGPINC90LAgwqslc8K7IgogCi0jOiBicmFuY2guYzozODMKKyM6IGJyYW5jaC5jOjM4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJIRUFEIG9mIHdvcmtpbmcgdHJlZSAlcyBpcyBub3QgdXBkYXRlZCIKIG1zZ3N0ciAiSEVBRCDRgNCw0LHQvtGH0LXQs9C+INC60LDRgtCw0LvQvtCz0LAgJXMg0L3QtSDQvtCx0L3QvtCy0LvRkdC9IgpAQCAtMTE3MiwxNiArMTIwNiwxNyBAQAogbXNnaWQgInVucmVjb2duaXplZCBoZWFkZXI6ICVzJXMgKCVkKSIKIG1zZ3N0ciAi0L3QtdC+0L/QvtC30L3QsNC90L3Ri9C5INC30LDQs9C+0LvQvtCy0L7QujogJXMlcyAoJWQpIgogCi0jOiBidW5kbGUuYzo5MCBzZXF1ZW5jZXIuYzoyMDkyIHNlcXVlbmNlci5jOjI1NzggYnVpbHRpbi9jb21taXQuYzo3NjgKKyM6IGJ1bmRsZS5jOjkwIHJlcmVyZS5jOjQ4MCByZXJlcmUuYzo2OTAgc2VxdWVuY2VyLmM6MjI4MSBzZXF1ZW5jZXIuYzoyOTE2CisjOiBidWlsdGluL2NvbW1pdC5jOjc4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMIMKrJXPCuyIKIAotIzogYnVuZGxlLmM6MTQxCisjOiBidW5kbGUuYzoxNDMKIG1zZ2lkICJSZXBvc2l0b3J5IGxhY2tzIHRoZXNlIHByZXJlcXVpc2l0ZSBjb21taXRzOiIKIG1zZ3N0ciAi0JIg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuCDQvtGC0YHRg9GC0YHRgtCy0YPRjtGCINC90LXQvtCx0YXQvtC00LjQvNGL0LUg0LrQvtC80LzQuNGC0Ys6IgogCi0jOiBidW5kbGUuYzoxOTIKKyM6IGJ1bmRsZS5jOjE5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgYnVuZGxlIGNvbnRhaW5zIHRoaXMgcmVmOiIKIG1zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSBjb250YWlucyB0aGVzZSAlZCByZWZzOiIKQEAgLTExOTAsMTEgKzEyMjUsMTEgQEAKIG1zZ3N0clsyXSAi0J/QsNC60LXRgiDRgdC+0LTQtdGA0LbQuNGCINGN0YLQuCAlZCDRgdGB0YvQu9C+0Lo6IgogbXNnc3RyWzNdICLQn9Cw0LrQtdGCINGB0L7QtNC10YDQttC40YIg0Y3RgtC4ICVkINGB0YHRi9C70L7QujoiCiAKLSM6IGJ1bmRsZS5jOjE5OQorIzogYnVuZGxlLmM6MjAxCiBtc2dpZCAiVGhlIGJ1bmRsZSByZWNvcmRzIGEgY29tcGxldGUgaGlzdG9yeS4iCiBtc2dzdHIgItCf0LDQutC10YIg0YHQvtC00LXRgNC20LjRgiDQv9C+0LvQvdGD0Y4g0LjRgdGC0L7RgNC40Y4uIgogCi0jOiBidW5kbGUuYzoyMDEKKyM6IGJ1bmRsZS5jOjIwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoaXMgcmVmOiIKIG1zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSByZXF1aXJlcyB0aGVzZSAlZCByZWZzOiIKQEAgLTEyMDMsMzggKzEyMzgsNDIgQEAKIG1zZ3N0clsyXSAi0J/QsNC60LXRgiDRgtGA0LXQsdGD0LXRgiDRjdGC0LggJWQg0YHRgdGL0LvQvtC6OiIKIG1zZ3N0clszXSAi0J/QsNC60LXRgiDRgtGA0LXQsdGD0LXRgiDRjdGC0LggJWQg0YHRgdGL0LvQvtC6OiIKIAotIzogYnVuZGxlLmM6MjYwCisjOiBidW5kbGUuYzoyNjkKK21zZ2lkICJ1bmFibGUgdG8gZHVwIGJ1bmRsZSBkZXNjcmlwdG9yIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC00YPQsdC70LjRgNC+0LLQsNGC0Ywg0LTQtdGB0LrRgNC40L/RgtC+0YAg0L/QsNC60LXRgtCwIgorCisjOiBidW5kbGUuYzoyNzYKIG1zZ2lkICJDb3VsZCBub3Qgc3Bhd24gcGFjay1vYmplY3RzIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINC+0LHRitC10LrRgtGLINC/0LDQutC10YLQsCIKIAotIzogYnVuZGxlLmM6MjcxCisjOiBidW5kbGUuYzoyODcKIG1zZ2lkICJwYWNrLW9iamVjdHMgZGllZCIKIG1zZ3N0ciAi0LrRgNC40YLQuNGH0LXRgdC60LDRjyDQvtGI0LjQsdC60LAgcGFjay1vYmplY3RzIgogCi0jOiBidW5kbGUuYzozMTMKKyM6IGJ1bmRsZS5jOjMyOQogbXNnaWQgInJldi1saXN0IGRpZWQiCiBtc2dzdHIgItC60YDQuNGC0LjRh9C10YHQutCw0Y8g0L7RiNC40LHQutCwIHJldi1saXN0IgogCi0jOiBidW5kbGUuYzozNjIKKyM6IGJ1bmRsZS5jOjM3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWYgJyVzJyBpcyBleGNsdWRlZCBieSB0aGUgcmV2LWxpc3Qgb3B0aW9ucyIKIG1zZ3N0ciAi0YHRgdGL0LvQutCwIMKrJXPCuyDQuNGB0LrQu9GO0YfQtdC90LAg0LIg0YHQvtC+0YLQstC10YLRgdGC0LLQuNC4INGBINC+0L/RhtC40Y/QvNC4IHJldi1saXN0IgogCi0jOiBidW5kbGUuYzo0NTMgYnVpbHRpbi9sb2cuYzoxODcgYnVpbHRpbi9sb2cuYzoxNjE4IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDQKKyM6IGJ1bmRsZS5jOjQ1NyBidWlsdGluL2xvZy5jOjE5NyBidWlsdGluL2xvZy5jOjE3MDkgYnVpbHRpbi9zaG9ydGxvZy5jOjMwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgYXJndW1lbnQ6ICVzIgogbXNnc3RyICLQvdC10L7Qv9C+0LfQvdCw0L3QvdGL0Lkg0LDRgNCz0YPQvNC10L3RgjogJXMiCiAKLSM6IGJ1bmRsZS5jOjQ2MQorIzogYnVuZGxlLmM6NDY1CiBtc2dpZCAiUmVmdXNpbmcgdG8gY3JlYXRlIGVtcHR5IGJ1bmRsZS4iCiBtc2dzdHIgItCe0YLQutC70L7QvdC10L3QuNC1INGB0L7Qt9C00LDQvdC40Y8g0L/Rg9GB0YLQvtCz0L4g0L/QsNC60LXRgtCwLiIKIAotIzogYnVuZGxlLmM6NDczCisjOiBidW5kbGUuYzo0NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNyZWF0ZSAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMIMKrJXPCuyIKIAotIzogYnVuZGxlLmM6NTAxCisjOiBidW5kbGUuYzo1MDAKIG1zZ2lkICJpbmRleC1wYWNrIGRpZWQiCiBtc2dzdHIgItC60YDQuNGC0LjRh9C10YHQutCw0Y8g0L7RiNC40LHQutCwIGluZGV4LXBhY2siCiAKQEAgLTEyNDMsMTkgKzEyODIsMTggQEAKIG1zZ2lkICJpbnZhbGlkIGNvbG9yIHZhbHVlOiAlLipzIgogbXNnc3RyICLQvdC10LTQvtC/0YPRgdGC0LjQvNC+0LUg0LfQvdCw0YfQtdC90LjQtSDRhtCy0LXRgtCwOiAlLipzIgogCi0jOiBjb21taXQuYzo0OCBzZXF1ZW5jZXIuYzoyMzg0IGJ1aWx0aW4vYW0uYzo0MjIgYnVpbHRpbi9hbS5jOjQ2NgotIzogYnVpbHRpbi9hbS5jOjE0MzggYnVpbHRpbi9hbS5jOjIwNzIgYnVpbHRpbi9yZXBsYWNlLmM6Mzc2Ci0jOiBidWlsdGluL3JlcGxhY2UuYzo0NDgKKyM6IGNvbW1pdC5jOjUwIHNlcXVlbmNlci5jOjI2OTcgYnVpbHRpbi9hbS5jOjM1NSBidWlsdGluL2FtLmM6Mzk5CisjOiBidWlsdGluL2FtLmM6MTM3NyBidWlsdGluL2FtLmM6MjAyMiBidWlsdGluL3JlcGxhY2UuYzo0NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9C+0LHRgNCw0YLRjCAlcyIKIAotIzogY29tbWl0LmM6NTAKKyM6IGNvbW1pdC5jOjUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzICVzIGlzIG5vdCBhIGNvbW1pdCEiCiBtc2dzdHIgIiVzICVzINC90LUg0Y/QstC70Y/QtdGC0YHRjyDQutC+0LzQvNC40YLQvtC8ISIKIAotIzogY29tbWl0LmM6MTkxCisjOiBjb21taXQuYzoxOTMKIG1zZ2lkICIiCiAiU3VwcG9ydCBmb3IgPEdJVF9ESVI+L2luZm8vZ3JhZnRzIGlzIGRlcHJlY2F0ZWRcbiIKICJhbmQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIEdpdCB2ZXJzaW9uLlxuIgpAQCAtMTI2Nyw4MiArMTMwNSwyMjggQEAKICJcImdpdCBjb25maWcgYWR2aWNlLmdyYWZ0RmlsZURlcHJlY2F0ZWQgZmFsc2VcIiIKIG1zZ3N0ciAi0J/QvtC00LTQtdGA0LbQutCwIDxHSVRfRElSPi9pbmZvL2dyYWZ0cyDRg9GB0YLQsNGA0LXQu9CwINC4INCx0YPQtNC10YIg0YPQtNCw0LvQtdC90LAg0LIg0YHQu9C10LTRg9GO0YnQuNGFINCy0LXRgNGB0LjRj9GFIEdpdC5cblxu0JjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCByZXBsYWNlIC0tY29udmVydC1ncmFmdC1maWxlwrsg0LTQu9GPICDQutC+0L3QstC10YDRgtCw0YbQuNC4INGB0YDQsNGJ0LXQvdC40LkgKGdyYWZ0cykg0L3QsCDRgdGB0YvQu9C60Lgg0LfQsNC80LXQvdGLLlxuXG7Qp9GC0L7QsdGLINGB0LrRgNGL0YLRjCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCBjb25maWcgYWR2aWNlLmdyYWZ0RmlsZURlcHJlY2F0ZWQgZmFsc2XCuyIKIAotIzogY29tbWl0LmM6MTYyOQorIzogY29tbWl0LmM6MTEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJDb21taXQgJXMgaGFzIGFuIHVudHJ1c3RlZCBHUEcgc2lnbmF0dXJlLCBhbGxlZ2VkbHkgYnkgJXMuIgorbXNnc3RyICLQmtC+0LzQvNC40YIgJXMg0YHQvtC00LXRgNC20LjRgiDQvdC1INC00L7QstC10YDQtdC90L3Rg9GOIEdQRyDQv9C+0LTQv9C40YHRjCwg0L/RgNC10LTQv9C+0LvQvtC20LjRgtC10LvRjNC90L4g0L7RgiAlcy4iCisKKyM6IGNvbW1pdC5jOjExMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29tbWl0ICVzIGhhcyBhIGJhZCBHUEcgc2lnbmF0dXJlIGFsbGVnZWRseSBieSAlcy4iCittc2dzdHIgItCa0L7QvNC80LjRgiAlcyDRgdC+0LTQtdGA0LbQuNGCINC/0LvQvtGF0YPRjiBHUEcg0L/QvtC00L/QuNGB0YwsINC/0YDQtdC00L/QvtC70L7QttC40YLQtdC70YzQvdC+INC+0YIgJXMuIgorCisjOiBjb21taXQuYzoxMTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIGEgR1BHIHNpZ25hdHVyZS4iCittc2dzdHIgItCa0L7QvNC80LjRgiAlcyDQvdC1INGB0L7QtNC10YDQttC40YIgR1BHINC/0L7QtNC/0LjRgdGMLiIKKworIzogY29tbWl0LmM6MTEzNworIywgYy1mb3JtYXQKK21zZ2lkICJDb21taXQgJXMgaGFzIGEgZ29vZCBHUEcgc2lnbmF0dXJlIGJ5ICVzXG4iCittc2dzdHIgItCa0L7QvNC80LjRgiAlcyDRgdC+0LTQtdGA0LbQuNGCINC00LXQudGB0YLQstC40YLQtdC70YzQvdGD0Y4gR1BHINC/0L7QtNC/0LjRgdGMLCDQvtGCICVzLlxuIgorCisjOiBjb21taXQuYzoxMzkxCiBtc2dpZCAiIgogIldhcm5pbmc6IGNvbW1pdCBtZXNzYWdlIGRpZCBub3QgY29uZm9ybSB0byBVVEYtOC5cbiIKICJZb3UgbWF5IHdhbnQgdG8gYW1lbmQgaXQgYWZ0ZXIgZml4aW5nIHRoZSBtZXNzYWdlLCBvciBzZXQgdGhlIGNvbmZpZ1xuIgogInZhcmlhYmxlIGkxOG4uY29tbWl0ZW5jb2RpbmcgdG8gdGhlIGVuY29kaW5nIHlvdXIgcHJvamVjdCB1c2VzLlxuIgogbXNnc3RyICLQn9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1OiDRgdC+0L7QsdGJ0LXQvdC40LUg0LrQvtC80LzQuNGC0LAg0L3QtSDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0LXRgiBVVEYtOC5cbtCS0L7Qt9C80L7QttC90L4sINCy0Ysg0LfQsNGF0L7RgtC40YLQtSDQuNGB0L/RgNCw0LLQuNGC0Ywg0LXQs9C+INC/0L7RgdC70LUg0LjRgdC/0YDQsNCy0LvQtdC90LjRjyDRgdC+0L7QsdGJ0LXQvdC40Y9cbtC40LvQuCDQvdCw0YHRgtGA0L7QuNGC0Ywg0L7Qv9GG0LjRjiBpMThuLmNvbW1pdGVuY29kaW5nINC4INGD0LrQsNC30LDRgtGMINC60L7QtNC40YDQvtCy0LrRg1xu0YHQvtC+0LHRidC10L3QuNC5LCDQutC+0YLQvtGA0YPRjiDQuNGB0L/QvtC70YzQt9GD0LXRgiDQstCw0Ygg0L/RgNC+0LXQutGCLlxuIgogCi0jOiBjb21taXQtZ3JhcGguYzo4MwotIywgYy1mb3JtYXQKLW1zZ2lkICJncmFwaCBmaWxlICVzIGlzIHRvbyBzbWFsbCIKLW1zZ3N0ciAiIgorIzogY29tbWl0LWdyYXBoLmM6MTA1Cittc2dpZCAiY29tbWl0LWdyYXBoIGZpbGUgaXMgdG9vIHNtYWxsIgorbXNnc3RyICLRhNCw0LnQuyBjb21taXQtZ3JhcGgg0YHQu9C40YjQutC+0Lwg0LzQsNC70LXQvdGM0LrQuNC5IgogCi0jOiBjb21taXQtZ3JhcGguYzo5MAorIzogY29tbWl0LWdyYXBoLmM6MTcwCiAjLCBjLWZvcm1hdAotbXNnaWQgImdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCi1tc2dzdHIgIiIKK21zZ2lkICJjb21taXQtZ3JhcGggc2lnbmF0dXJlICVYIGRvZXMgbm90IG1hdGNoIHNpZ25hdHVyZSAlWCIKK21zZ3N0ciAi0L/QvtC00L/QuNGB0YwgY29tbWl0LWdyYXBoINGE0LDQudC70LAgJVgg0L3QtSDRgdC+0L7RgtCy0LXRgdGC0LLRg9C10YIg0L/QvtC00L/QuNGB0LggJVgiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjk3CisjOiBjb21taXQtZ3JhcGguYzoxNzcKICMsIGMtZm9ybWF0Ci1tc2dpZCAiZ3JhcGggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgotbXNnc3RyICIiCittc2dpZCAiY29tbWl0LWdyYXBoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKK21zZ3N0ciAi0LLQtdGA0YHQuNGPIGNvbW1pdC1ncmFwaCDRhNCw0LnQu9CwICVYINC90LUg0YHQvtC+0YLQstC10YHRgtCy0YPQtdGCINCy0LXRgNGB0LjQuCAlWCIKIAotIzogY29tbWl0LWdyYXBoLmM6MTA0CisjOiBjb21taXQtZ3JhcGguYzoxODQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiaGFzaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCi1tc2dzdHIgIiIKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCittc2dzdHIgItCy0LXRgNGB0LjRjyDRhdC10Ygt0YHRg9C80LzRiyBjb21taXQtZ3JhcGgg0YTQsNC50LvQsCAlWCDQvdC1INGB0L7QvtGC0LLQtdGC0YHRgtCy0YPQtdGCINCy0LXRgNGB0LjQuCAlWCIKIAotIzogY29tbWl0LWdyYXBoLmM6MTI4CisjOiBjb21taXQtZ3JhcGguYzoyMDcKK21zZ2lkICJjb21taXQtZ3JhcGggY2h1bmsgbG9va3VwIHRhYmxlIGVudHJ5IG1pc3Npbmc7IGZpbGUgbWF5IGJlIGluY29tcGxldGUiCittc2dzdHIgItC90LUg0L3QsNC50LTQtdC90LAg0YLQsNCx0LvQuNGG0LAg0YDQsNGB0L/QvtC70L7QttC10L3QuNGPINGH0LDRgdGC0LXQuSDQsiDRhNCw0LnQu9C1IGNvbW1pdC1ncmFwaDsg0LLQvtC30LzQvtC20L3QviDRhNCw0LnQuyDQv9C+0LLRgNC10LbQtNGR0L0iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIxOAogIywgYy1mb3JtYXQKLW1zZ2lkICJpbXByb3BlciBjaHVuayBvZmZzZXQgJTA4eCUwOHgiCi1tc2dzdHIgIiIKK21zZ2lkICJjb21taXQtZ3JhcGggaW1wcm9wZXIgY2h1bmsgb2Zmc2V0ICUwOHglMDh4IgorbXNnc3RyICLQvdC10LrQvtGA0YDQtdC60YLQvdC+0LUg0YHQvNC10YnQtdC90LjQtSDRh9Cw0YHRgtC4INCyIGNvbW1pdC1ncmFwaCDRhNCw0LnQu9C1ICUwOHglMDh4IgogCi0jOiBjb21taXQtZ3JhcGguYzoxNjQKKyM6IGNvbW1pdC1ncmFwaC5jOjI1NQogIywgYy1mb3JtYXQKLW1zZ2lkICJjaHVuayBpZCAlMDh4IGFwcGVhcnMgbXVsdGlwbGUgdGltZXMiCi1tc2dzdHIgIiIKK21zZ2lkICJjb21taXQtZ3JhcGggY2h1bmsgaWQgJTA4eCBhcHBlYXJzIG11bHRpcGxlIHRpbWVzIgorbXNnc3RyICLRh9Cw0YHRgtGMINGE0LDQudC70LAgY29tbWl0LWdyYXBoINGBINC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0L7QvCAlMDh4INC/0L7Rj9Cy0LvRj9C10YLRgdGPINC90LXRgdC60L7Qu9GM0LrQviDRgNCw0LciCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjI2MQorIzogY29tbWl0LWdyYXBoLmM6MzkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBmaW5kIGNvbW1pdCAlcyIKLW1zZ3N0ciAiIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC90LDQudGC0Lgg0LrQvtC80LzQuNGCICVzIgogCi0jOiBjb21taXQtZ3JhcGguYzo1NjUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNTcxCisjOiBjb21taXQtZ3JhcGguYzo3MzIgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBnZXQgdHlwZSBvZiBvYmplY3QgJXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C+0LvRg9GH0LjRgtGMINGC0LjQvyDQvtCx0YrQtdC60YLQsCAlcyIKIAotIzogY29tbWl0LWdyYXBoLmM6NzMwCisjOiBjb21taXQtZ3JhcGguYzo3NjUKK21zZ2lkICJMb2FkaW5nIGtub3duIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICLQl9Cw0LPRgNGD0LfQutCwINC40LfQstC10YHRgtC90YvRhSDQutC+0LzQvNC40YLQvtCyINC90LAg0LPRgNCw0YQg0LrQvtC80LzQuNGC0L7QsiIKKworIzogY29tbWl0LWdyYXBoLmM6NzgxCittc2dpZCAiRXhwYW5kaW5nIHJlYWNoYWJsZSBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAi0KDQsNGB0YjQuNGA0LXQvdC40LUg0LTQvtGB0YLQuNC20LjQvNGL0YUg0LrQvtC80LzQuNGC0L7QsiDQvdCwINCz0YDQsNGEINC60L7QvNC80LjRgtC+0LIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjc5MworbXNnaWQgIkNsZWFyaW5nIGNvbW1pdCBtYXJrcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgItCe0YfQuNGB0YLQutCwINC/0L7QvNC10YLQvtC6INC60L7QvNC80LjRgtC+0LIg0L3QsCDQs9GA0LDRhNC1INC60L7QvNC80LjRgtC+0LIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjgxMworbXNnaWQgIkNvbXB1dGluZyBjb21taXQgZ3JhcGggZ2VuZXJhdGlvbiBudW1iZXJzIgorbXNnc3RyICLQktGL0YfQuNGB0LvQtdC90LjQtSDQvdC+0LzQtdGA0L7QsiDQv9C+0LrQvtC70LXQvdC40Lkg0L3QsCDQs9GA0LDRhNC1INC60L7QvNC80LjRgtC+0LIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjkzMAorIywgYy1mb3JtYXQKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrIgorbXNnaWRfcGx1cmFsICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrcyIKK21zZ3N0clswXSAi0J/QvtC40YHQuiDQutC+0LzQvNC40YLQvtCyINC00LvRjyDQs9GA0LDRhNCwINC60L7QvNC80LjRgtC+0LIg0LIgJWQg0L/QsNC60LXRgtC1IgorbXNnc3RyWzFdICLQn9C+0LjRgdC6INC60L7QvNC80LjRgtC+0LIg0LTQu9GPINCz0YDQsNGE0LAg0LrQvtC80LzQuNGC0L7QsiDQsiAlZCDQv9Cw0LrQtdGC0LDRhSIKK21zZ3N0clsyXSAi0J/QvtC40YHQuiDQutC+0LzQvNC40YLQvtCyINC00LvRjyDQs9GA0LDRhNCwINC60L7QvNC80LjRgtC+0LIg0LIgJWQg0L/QsNC60LXRgtCw0YUiCittc2dzdHJbM10gItCf0L7QuNGB0Log0LrQvtC80LzQuNGC0L7QsiDQtNC70Y8g0LPRgNCw0YTQsCDQutC+0LzQvNC40YLQvtCyINCyICVkINC/0LDQutC10YLQsNGFIgorCisjOiBjb21taXQtZ3JhcGguYzo5NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgYWRkaW5nIHBhY2sgJXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC00L7QsdCw0LLQu9C10L3QuNGPINC/0LDQutC10YLQsCAlcyIKIAotIzogY29tbWl0LWdyYXBoLmM6NzMyCisjOiBjb21taXQtZ3JhcGguYzo5NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3Igb3BlbmluZyBpbmRleCBmb3IgJXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC+0YLQutGA0YvRgtC40Y8g0LjQvdC00LXQutGB0LAg0LTQu9GPICVzIgogCi0jOiBjb21taXQtZ3JhcGguYzo3NzMKKyM6IGNvbW1pdC1ncmFwaC5jOjk1OQorIywgYy1mb3JtYXQKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBmcm9tICVkIHJlZiIKK21zZ2lkX3BsdXJhbCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggZnJvbSAlZCByZWZzIgorbXNnc3RyWzBdICLQn9C+0LjRgdC6INC60L7QvNC80LjRgtC+0LIg0LTQu9GPINCz0YDQsNGE0LAg0LrQvtC80LzQuNGC0L7QsiDQv9C+ICVkINGB0YHRi9C70LrQtSIKK21zZ3N0clsxXSAi0J/QvtC40YHQuiDQutC+0LzQvNC40YLQvtCyINC00LvRjyDQs9GA0LDRhNCwINC60L7QvNC80LjRgtC+0LIg0L/QviAlZCDRgdGB0YvQu9C60LDQvCIKK21zZ3N0clsyXSAi0J/QvtC40YHQuiDQutC+0LzQvNC40YLQvtCyINC00LvRjyDQs9GA0LDRhNCwINC60L7QvNC80LjRgtC+0LIg0L/QviAlZCDRgdGB0YvQu9C60LDQvCIKK21zZ3N0clszXSAi0J/QvtC40YHQuiDQutC+0LzQvNC40YLQvtCyINC00LvRjyDQs9GA0LDRhNCwINC60L7QvNC80LjRgtC+0LIg0L/QviAlZCDRgdGB0YvQu9C60LDQvCIKKworIzogY29tbWl0LWdyYXBoLmM6OTkxCittc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggYW1vbmcgcGFja2VkIG9iamVjdHMiCittc2dzdHIgItCf0L7QuNGB0Log0LrQvtC80LzQuNGC0L7QsiDQtNC70Y8g0LPRgNCw0YTQsCDQutC+0LzQvNC40YLQvtCyINGB0YDQtdC00Lgg0YPQv9Cw0LrQvtCy0LDQvdC90YvRhSDQvtCx0YrQtdC60YLQvtCyIgorCisjOiBjb21taXQtZ3JhcGguYzoxMDA0Cittc2dpZCAiQ291bnRpbmcgZGlzdGluY3QgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgItCS0YvRh9C40YHQu9C10L3QuNC1INC60L7Qu9C40YfQtdGB0YLQstCwINC+0YLQtNC10LvRjNC90YvRhSDQutC+0LzQvNC40YLQvtCyINC90LAg0LPRgNCw0YTQtSDQutC+0LzQvNC40YLQvtCyIgorCisjOiBjb21taXQtZ3JhcGguYzoxMDE3CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSBjb21taXQgZ3JhcGggZm9ybWF0IGNhbm5vdCB3cml0ZSAlZCBjb21taXRzIgogbXNnc3RyICLQv9GA0L7Qs9GA0LDQvNC80LUg0YTQvtGA0LzQsNGC0LjRgNC+0LLQsNC90LjRjyDQs9GA0LDRhNCwINC60L7QvNC80LjRgtC+0LIg0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMICVkINC60L7QvNC80LjRgtC+0LIiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgwMAorIzogY29tbWl0LWdyYXBoLmM6MTAyNgorbXNnaWQgIkZpbmRpbmcgZXh0cmEgZWRnZXMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICLQn9C+0LjRgdC6INC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdGL0YUg0YDQtdCx0LXRgCDQvdCwINCz0YDQsNGE0LUg0LrQvtC80LzQuNGC0L7QsiIKKworIzogY29tbWl0LWdyYXBoLmM6MTA1MAogbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgdG8gd3JpdGUgZ3JhcGgiCiBtc2dzdHIgItGB0LvQuNGI0LrQvtC8INC80L3QvtCz0L4g0LrQvtC80LzQuNGC0L7QsiDQtNC70Y8g0LfQsNC/0LjRgdC4INCz0YDQsNGE0LAiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgwNgorIzogY29tbWl0LWdyYXBoLmM6MTA1NyBtaWR4LmM6ODE5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbGVhZGluZyBkaXJlY3RvcmllcyBvZiAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDRgNC+0LTQuNGC0LXQu9GM0YHQutC40LUg0LrQsNGC0LDQu9C+0LPQuCDQtNC70Y8gJXMiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjkwNAotbXNnaWQgInRoZSBjb21taXQtZ3JhcGggZmlsZSBoYXMgaW5jb3JyZWN0IGNoZWNrc3VtIGFuZCBpcyBsaWtlbHkgY29ycnVwdCIKLW1zZ3N0ciAiIgorIzogY29tbWl0LWdyYXBoLmM6MTA5NworIywgYy1mb3JtYXQKK21zZ2lkICJXcml0aW5nIG91dCBjb21taXQgZ3JhcGggaW4gJWQgcGFzcyIKK21zZ2lkX3BsdXJhbCAiV3JpdGluZyBvdXQgY29tbWl0IGdyYXBoIGluICVkIHBhc3NlcyIKK21zZ3N0clswXSAi0JfQsNC/0LjRgdGMINCz0YDQsNGE0LAg0LrQvtC80LzQuNGC0L7QsiDQsiAlZCDQv9GA0L7RhdC+0LQiCittc2dzdHJbMV0gItCX0LDQv9C40YHRjCDQs9GA0LDRhNCwINC60L7QvNC80LjRgtC+0LIg0LIgJWQg0L/RgNC+0YXQvtC00LAiCittc2dzdHJbMl0gItCX0LDQv9C40YHRjCDQs9GA0LDRhNCwINC60L7QvNC80LjRgtC+0LIg0LIgJWQg0L/RgNC+0YXQvtC00L7QsiIKK21zZ3N0clszXSAi0JfQsNC/0LjRgdGMINCz0YDQsNGE0LAg0LrQvtC80LzQuNGC0L7QsiDQsiAlZCDQv9GA0L7RhdC+0LTQsCIKIAotIzogY29tcGF0L29ic3RhY2suYzo0MDUgY29tcGF0L29ic3RhY2suYzo0MDcKKyM6IGNvbW1pdC1ncmFwaC5jOjExNjIKK21zZ2lkICJ0aGUgY29tbWl0LWdyYXBoIGZpbGUgaGFzIGluY29ycmVjdCBjaGVja3N1bSBhbmQgaXMgbGlrZWx5IGNvcnJ1cHQiCittc2dzdHIgItGE0LDQudC7IGNvbW1pdC1ncmFwaCDRgdC+0LTQtdGA0LbQuNGCINC90LXQv9GA0LDQstC40LvRjNC90YPRjiDQutC+0L3RgtGA0L7Qu9GM0L3Rg9GOINGB0YPQvNC80YMg0Lgg0YHQutC+0YDQtdC1INCy0YHQtdCz0L4g0L/QvtCy0YDQtdC20LTQtdC9IgorCisjOiBjb21taXQtZ3JhcGguYzoxMTcyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IE9JRCBvcmRlcjogJXMgdGhlbiAlcyIKK21zZ3N0ciAi0YTQsNC50LsgY29tbWl0LWdyYXBoINGB0L7QtNC10YDQttC40YIg0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INC/0L7RgNGP0LTQvtC6IE9JRDogJXMsINCwINC30LDRgtC10LwgJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjExODIgY29tbWl0LWdyYXBoLmM6MTE5NworIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzIGluY29ycmVjdCBmYW5vdXQgdmFsdWU6IGZhbm91dFslZF0gPSAldSAhPSAldSIKK21zZ3N0ciAi0YTQsNC50LsgY29tbWl0LWdyYXBoINGB0L7QtNC10YDQttC40YIg0L3QtdC/0YDQsNCy0LjQu9GM0L3QvtC1INC30L3QsNGH0LXQvdC40LUgZmFub3V0OiBmYW5vdXRbJWRdID0gJXUgIT0gJXUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjExODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIGNvbW1pdCAlcyBmcm9tIGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0LfQvtCx0YDQsNGC0Ywg0LrQvtC80LzQuNGCICVzINC40Lcg0YTQsNC50LvQsCBjb21taXQtZ3JhcGgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyMDYKK21zZ2lkICJWZXJpZnlpbmcgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgItCf0YDQvtCy0LXRgNC60LAg0LrQvtC80LzQuNGC0L7QsiDQvdCwINCz0YDQsNGE0LUg0LrQvtC80LzQuNGC0L7QsiIKKworIzogY29tbWl0LWdyYXBoLmM6MTIxOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgY29tbWl0ICVzIGZyb20gb2JqZWN0IGRhdGFiYXNlIGZvciBjb21taXQtZ3JhcGgiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YDQsNC30L7QsdGA0LDRgtGMINC60L7QvNC80LjRgiAlcyDQuNC3INCx0LDQt9GLINC+0LHRitC10LrRgtC+0LIg0YTQsNC50LvQsCBjb21taXQtZ3JhcGgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAicm9vdCB0cmVlIE9JRCBmb3IgY29tbWl0ICVzIGluIGNvbW1pdC1ncmFwaCBpcyAlcyAhPSAlcyIKK21zZ3N0ciAiINCyINGE0LDQudC70LUgY29tbWl0LWdyYXBoIE9JRCDQutC+0YDQvdGPINC00LXRgNC10LLQsCDQtNC70Y8g0LrQvtC80LzQuNGC0LAgJXMg0Y/QstC70Y/QtdGC0YHRjyAlcyAhPSAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTIzNgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggcGFyZW50IGxpc3QgZm9yIGNvbW1pdCAlcyBpcyB0b28gbG9uZyIKK21zZ3N0ciAi0YHQu9C40YjQutC+0Lwg0LHQvtC70YzRiNC+0Lkg0YHQv9C40YHQvtC6INGA0L7QtNC40YLQtdC70LXQuSDRhNCw0LnQu9C1IGNvbW1pdC1ncmFwaCDQtNC70Y8g0LrQvtC80LzQuNGC0LAgJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBmb3IgJXMgaXMgJXMgIT0gJXMiCittc2dzdHIgItCyINGE0LDQudC70LUgY29tbWl0LWdyYXBoINGA0L7QtNC40YLQtdC70Ywg0LTQu9GPICVzINGP0LLQu9GP0LXRgtGB0Y8gJXMgIT0gJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBsaXN0IGZvciBjb21taXQgJXMgdGVybWluYXRlcyBlYXJseSIKK21zZ3N0ciAi0LIg0YTQsNC50LvQtSBjb21taXQtZ3JhcGgg0YHQv9C40YHQvtC6INGA0L7QtNC40YLQtdC70LXQuSDQtNC70Y8g0LrQvtC80LzQuNGC0LAgJXMg0LfQsNC60L7QvdGH0LjQu9GB0Y8g0YHQu9C40YjQutC+0Lwg0YDQsNC90L4iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbW1pdC1ncmFwaCBoYXMgZ2VuZXJhdGlvbiBudW1iZXIgemVybyBmb3IgY29tbWl0ICVzLCBidXQgbm9uLXplcm8gIgorImVsc2V3aGVyZSIKK21zZ3N0ciAi0LIg0YTQsNC50LvQtSBjb21taXQtZ3JhcGgg0YHQvtC00LXRgNC20LjRgtGB0Y8g0L3Rg9C70LXQstC+0Lkg0L3QvtC80LXRgCDQv9C+0LrQvtC70LXQvdC40Y8g0LTQu9GPINC60L7QvNC80LjRgtCwICVzLCDQvdC+INC90LXQvdGD0LvQtdCy0L7QuSDQsiDQvtGB0YLQsNC70YzQvdGL0YUg0YHQu9GD0YfQsNGP0YUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbW1pdC1ncmFwaCBoYXMgbm9uLXplcm8gZ2VuZXJhdGlvbiBudW1iZXIgZm9yIGNvbW1pdCAlcywgYnV0IHplcm8gIgorImVsc2V3aGVyZSIKK21zZ3N0ciAi0LIg0YTQsNC50LvQtSBjb21taXQtZ3JhcGgg0YHQvtC00LXRgNC20LjRgtGB0Y8g0L3QtdC90YPQu9C10LLQvtC5INC90L7QvNC10YAg0L/QvtC60L7Qu9C10L3QuNGPINC00LvRjyDQutC+0LzQvNC40YLQsCAlcywg0L3QviDQvdGD0LvQtdCy0L7QuSDQsiDQvtGB0YLQsNC70YzQvdGL0YUg0YHQu9GD0YfQsNGP0YUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGdlbmVyYXRpb24gZm9yIGNvbW1pdCAlcyBpcyAldSAhPSAldSIKK21zZ3N0ciAi0LIg0YTQsNC50LvQtSBjb21taXQtZ3JhcGgg0L3QvtC80LXRgCDQv9C+0LrQvtC70LXQvdC40Y8g0LTQu9GPINC60L7QvNC80LjRgtCwICVzINGP0LLQu9GP0LXRgtGB0Y8gJXUgIT0gJXUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0IGRhdGUgZm9yIGNvbW1pdCAlcyBpbiBjb21taXQtZ3JhcGggaXMgJTxQUkl1TUFYPiAhPSAlPFBSSXVNQVg+IgorbXNnc3RyICLQsiDRhNCw0LnQu9C1IGNvbW1pdC1ncmFwaCDQtNCw0YLQsCDQutC+0LzQvNC40YLQsCAlcyDRj9Cy0LvRj9C10YLRgdGPICU8UFJJdU1BWD4gIT0gJTxQUkl1TUFYPiIKKworIzogY29tcGF0L29ic3RhY2suYzo0MDYgY29tcGF0L29ic3RhY2suYzo0MDgKIG1zZ2lkICJtZW1vcnkgZXhoYXVzdGVkIgogbXNnc3RyICLQv9Cw0LzRj9GC0Ywg0LjRgdGH0LXRgNC/0LDQvdCwIgogCkBAIC0xMzUzLDcgKzE1MzcsNyBAQAogIlx0JXNcbiIKICJmcm9tXG4iCiAiXHQlc1xuIgotIkRvIHlvdSBoYXZlIGNpcmN1bGFyIGluY2x1ZGVzPyIKKyJUaGlzIG1pZ2h0IGJlIGR1ZSB0byBjaXJjdWxhciBpbmNsdWRlcy4iCiBtc2dzdHIgIiIKIAogIzogY29uZmlnLmM6MTM5CkBAIC0xMzc5LDcgKzE1NjMsNyBAQAogbXNnaWQgImtleSBkb2VzIG5vdCBjb250YWluIHZhcmlhYmxlIG5hbWU6ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjM3OCBzZXF1ZW5jZXIuYzoyMjA2CisjOiBjb25maWcuYzozNzggc2VxdWVuY2VyLmM6MjQ1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGtleTogJXMiCiBtc2dzdHIgItC90LXQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3Ri9C5INC60LvRjtGHOiAlcyIKQEAgLTE1MDEsMTQ5ICsxNjg1LDE0OSBAQAogbXNnaWQgImludmFsaWQgbW9kZSBmb3Igb2JqZWN0IGNyZWF0aW9uOiAlcyIKIG1zZ3N0ciAi0L3QtdC00L7Qv9GD0YHRgtC40LzRi9C5INGA0LXQttC40Lwg0YHQvtC30LTQsNC90LjRjyDQvtCx0YrQtdC60YLQsDogJXMiCiAKLSM6IGNvbmZpZy5jOjE0MDMKKyM6IGNvbmZpZy5jOjEzOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIHZhbHVlIGZvciAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoxNDI5CisjOiBjb25maWcuYzoxNDIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjE0MzAKKyM6IGNvbmZpZy5jOjE0MjIKIG1zZ2lkICJtdXN0IGJlIG9uZSBvZiBub3RoaW5nLCBtYXRjaGluZywgc2ltcGxlLCB1cHN0cmVhbSBvciBjdXJyZW50IgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjE0ODkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjgyCisjOiBjb25maWcuYzoxNDgzIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFjayBjb21wcmVzc2lvbiBsZXZlbCAlZCIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INGD0YDQvtCy0LXQvdGMINGB0LbQsNGC0LjRjyDQv9Cw0LrQtdGC0LAgJWQiCiAKLSM6IGNvbmZpZy5jOjE2MTAKKyM6IGNvbmZpZy5jOjE2MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGxvYWQgY29uZmlnIGJsb2Igb2JqZWN0ICclcyciCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MTYxMworIzogY29uZmlnLmM6MTYwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgJyVzJyBkb2VzIG5vdCBwb2ludCB0byBhIGJsb2IiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MTYzMAorIzogY29uZmlnLmM6MTYyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBjb25maWcgYmxvYiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjE2NjAKKyM6IGNvbmZpZy5jOjE2NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHBhcnNlICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjE3MDAKKyM6IGNvbmZpZy5jOjE3MTAKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWFuZC1saW5lIGNvbmZpZyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0LfQvtCx0YDQsNGC0Ywg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNGOINC40Lcg0LrQvtC80LDQvdC00L3QvtC5INGB0YLRgNC+0LrQuCIKIAotIzogY29uZmlnLmM6MjAzMgorIzogY29uZmlnLmM6MjA1OQogbXNnaWQgInVua25vd24gZXJyb3Igb2NjdXJyZWQgd2hpbGUgcmVhZGluZyB0aGUgY29uZmlndXJhdGlvbiBmaWxlcyIKIG1zZ3N0ciAi0L/RgNC+0LjQt9C+0YjQu9CwINC90LXQuNC30LLQtdGB0YLQvdCw0Y8g0L7RiNC40LHQutCwINC/0YDQuCDRh9GC0LXQvdC40Lgg0YTQsNC50LvQvtCyINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCIKIAotIzogY29uZmlnLmM6MjIwMgorIzogY29uZmlnLmM6MjIyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkICVzOiAnJXMnIgogbXNnc3RyICLQndC10LTQtdC50YHRgtCy0LjRgtC10LvRjNC90YvQuSAlczogwqslc8K7IgogCi0jOiBjb25maWcuYzoyMjQ1CisjOiBjb25maWcuYzoyMjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gY29yZS51bnRyYWNrZWRDYWNoZSB2YWx1ZSAnJXMnOyB1c2luZyAna2VlcCcgZGVmYXVsdCB2YWx1ZSIKIG1zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90L7QtSDQt9C90LDRh9C10L3QuNC1IMKrJXPCuyDQtNC70Y8gY29yZS51bnRyYWNrZWRDYWNoZTsg0LjRgdC/0L7Qu9GM0LfRg9GOINGB0YLQsNC90LTQsNGA0YLQvdC+0LUg0LfQvdCw0YfQtdC90LjQtSDCq2tlZXDCuyIKIAotIzogY29uZmlnLmM6MjI3MQorIzogY29uZmlnLmM6MjI5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJzcGxpdEluZGV4Lm1heFBlcmNlbnRDaGFuZ2UgdmFsdWUgJyVkJyBzaG91bGQgYmUgYmV0d2VlbiAwIGFuZCAxMDAiCiBtc2dzdHIgItC30L3QsNGH0LXQvdC40LUgwqslZMK7INC00LvRjyBzcGxpdEluZGV4Lm1heFBlcmNlbnRDaGFuZ2Ug0LTQvtC70LbQvdC+INCx0YvRgtGMINC+0YIgMCDQtNC+IDEwMCIKIAotIzogY29uZmlnLmM6MjI5NgorIzogY29uZmlnLmM6MjM0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJyVzJyBmcm9tIGNvbW1hbmQtbGluZSBjb25maWciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YDQsNC30L7QsdGA0LDRgtGMIMKrJXPCuyDQsiDQutC+0L3RhNC40LPRg9GA0LDRhtC40Lgg0LjQtyDQutC+0LzQsNC90LTQvdC+0Lkg0YHRgtGA0L7QutC4IgogCi0jOiBjb25maWcuYzoyMjk4CisjOiBjb25maWcuYzoyMzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgdmFyaWFibGUgJyVzJyBpbiBmaWxlICclcycgYXQgbGluZSAlZCIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3QsNGPINC/0LXRgNC10LzQtdC90L3QsNGPINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCDCqyVzwrsg0LIg0YTQsNC50LvQtSDCqyVzwrsg0L3QsCDRgdGC0YDQvtC60LUgJWQiCiAKLSM6IGNvbmZpZy5jOjIzNzkKKyM6IGNvbmZpZy5jOjI0MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzZWN0aW9uIG5hbWUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoyNDExCisjOiBjb25maWcuYzoyNDU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGhhcyBtdWx0aXBsZSB2YWx1ZXMiCiBtc2dzdHIgIiVzINC40LzQtdC10YIg0L3QtdGB0LrQvtC70YzQutC+INC30L3QsNGH0LXQvdC40LkiCiAKLSM6IGNvbmZpZy5jOjI0NDAKKyM6IGNvbmZpZy5jOjI0ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIG5ldyBjb25maWd1cmF0aW9uIGZpbGUgJXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MjY5MSBjb25maWcuYzozMDE1CisjOiBjb25maWcuYzoyNzQwIGNvbmZpZy5jOjMwNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvY2sgY29uZmlnIGZpbGUgJXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6MjcwMgorIzogY29uZmlnLmM6Mjc1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJvcGVuaW5nICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjI3MzcgYnVpbHRpbi9jb25maWcuYzozMjQKKyM6IGNvbmZpZy5jOjI3ODYgYnVpbHRpbi9jb25maWcuYzozMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBwYXR0ZXJuOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoyNzYyCisjOiBjb25maWcuYzoyODExCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29uZmlnIGZpbGUgJXMiCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6Mjc3NSBjb25maWcuYzozMDI4CisjOiBjb25maWcuYzoyODI0IGNvbmZpZy5jOjMwNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZnN0YXQgb24gJXMgZmFpbGVkIgogbXNnc3RyICLRgdCx0L7QuSDQv9GA0Lgg0LLRi9C/0L7Qu9C90LXQvdC40LggZnN0YXQg0L3QsCDRhNCw0LnQu9C1ICVzIgogCi0jOiBjb25maWcuYzoyNzg2CisjOiBjb25maWcuYzoyODM1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtbWFwICclcyciCiBtc2dzdHIgIiIKIAotIzogY29uZmlnLmM6Mjc5NSBjb25maWcuYzozMDMzCisjOiBjb25maWcuYzoyODQ0IGNvbmZpZy5jOjMwODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2htb2Qgb24gJXMgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjI4ODAgY29uZmlnLmM6MzEzMAorIzogY29uZmlnLmM6MjkyOSBjb25maWcuYzozMTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBjb25maWcgZmlsZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25maWcuYzoyOTE0CisjOiBjb25maWcuYzoyOTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzZXQgJyVzJyB0byAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0YHRgtCw0L3QvtCy0LjRgtGMIMKrJXPCuyDQsiDCqyVzwrsiCiAKLSM6IGNvbmZpZy5jOjI5MTYgYnVpbHRpbi9yZW1vdGUuYzo3ODEKKyM6IGNvbmZpZy5jOjI5NjUgYnVpbHRpbi9yZW1vdGUuYzo3ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHVuc2V0ICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQsdGA0L7RgdC40YLRjCDQt9C90LDRh9C10L3QuNC1INC00LvRjyDCqyVzwrsiCiAKLSM6IGNvbmZpZy5jOjMwMDYKKyM6IGNvbmZpZy5jOjMwNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzZWN0aW9uIG5hbWU6ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbmZpZy5jOjMxNzMKKyM6IGNvbmZpZy5jOjMyMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyB2YWx1ZSBmb3IgJyVzJyIKIG1zZ3N0ciAiIgpAQCAtMTY5Miw1NyArMTg3Niw1MiBAQAogbXNnaWQgInJlcG9zaXRvcnkgb24gdGhlIG90aGVyIGVuZCBjYW5ub3QgYmUgc2hhbGxvdyIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6MzEwIGZldGNoLXBhY2suYzoxODMgYnVpbHRpbi9hcmNoaXZlLmM6NjMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicmVtb3RlIGVycm9yOiAlcyIKLW1zZ3N0ciAi0L7RiNC40LHQutCwINCy0L3QtdGI0L3QtdCz0L4g0YDQtdC/0L7Qt9C40YLQvtGA0LjRjzogJXMiCi0KLSM6IGNvbm5lY3QuYzozMTYKKyM6IGNvbm5lY3QuYzozMTMKIG1zZ2lkICJpbnZhbGlkIHBhY2tldCIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6MzM2CisjOiBjb25uZWN0LmM6MzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sIGVycm9yOiB1bmV4cGVjdGVkICclcyciCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjQ0NAorIzogY29ubmVjdC5jOjQ0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGxzLXJlZnMgcmVzcG9uc2U6ICVzIgogbXNnc3RyICIiCiAKLSM6IGNvbm5lY3QuYzo0NDgKKyM6IGNvbm5lY3QuYzo0NDUKIG1zZ2lkICJleHBlY3RlZCBmbHVzaCBhZnRlciByZWYgbGlzdGluZyIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6NTQ3CisjOiBjb25uZWN0LmM6NTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sICclcycgaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6NTk4CisjOiBjb25uZWN0LmM6NTk1CiBtc2dpZCAidW5hYmxlIHRvIHNldCBTT19LRUVQQUxJVkUgb24gc29ja2V0IgogbXNnc3RyICIiCiAKLSM6IGNvbm5lY3QuYzo2MzggY29ubmVjdC5jOjcwMQorIzogY29ubmVjdC5jOjYzNSBjb25uZWN0LmM6Njk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkxvb2tpbmcgdXAgJXMgLi4uICIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6NjQyCisjOiBjb25uZWN0LmM6NjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzIChwb3J0ICVzKSAoJXMpIgogbXNnc3RyICIiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkxvb2tpbmcgdXAgJXMgLi4uICIKLSM6IGNvbm5lY3QuYzo2NDYgY29ubmVjdC5jOjcxNworIzogY29ubmVjdC5jOjY0MyBjb25uZWN0LmM6NzE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJkb25lLlxuIgogIkNvbm5lY3RpbmcgdG8gJXMgKHBvcnQgJXMpIC4uLiAiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjY2OCBjb25uZWN0LmM6NzQ1CisjOiBjb25uZWN0LmM6NjY1IGNvbm5lY3QuYzo3NDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInVuYWJsZSB0byBjb25uZWN0IHRvICVzOlxuIgpAQCAtMTc1MCw1MiArMTkyOSw1MiBAQAogbXNnc3RyICIiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkNvbm5lY3RpbmcgdG8gJXMgKHBvcnQgJXMpIC4uLiAiCi0jOiBjb25uZWN0LmM6Njc0IGNvbm5lY3QuYzo3NTEKKyM6IGNvbm5lY3QuYzo2NzEgY29ubmVjdC5jOjc0OAogbXNnaWQgImRvbmUuIgogbXNnc3RyICIiCiAKLSM6IGNvbm5lY3QuYzo3MDUKKyM6IGNvbm5lY3QuYzo3MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGxvb2sgdXAgJXMgKCVzKSIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6NzExCisjOiBjb25uZWN0LmM6NzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gcG9ydCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6ODQ4IGNvbm5lY3QuYzoxMTc0CisjOiBjb25uZWN0LmM6ODQ1IGNvbm5lY3QuYzoxMTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgInN0cmFuZ2UgaG9zdG5hbWUgJyVzJyBibG9ja2VkIgogbXNnc3RyICIiCiAKLSM6IGNvbm5lY3QuYzo4NTAKKyM6IGNvbm5lY3QuYzo4NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBwb3J0ICclcycgYmxvY2tlZCIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6ODYwCisjOiBjb25uZWN0LmM6ODU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGFydCBwcm94eSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6OTI3CisjOiBjb25uZWN0LmM6OTI0CiBtc2dpZCAibm8gcGF0aCBzcGVjaWZpZWQ7IHNlZSAnZ2l0IGhlbHAgcHVsbCcgZm9yIHZhbGlkIHVybCBzeW50YXgiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdC5jOjExMjIKKyM6IGNvbm5lY3QuYzoxMTE5CiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNCIKIG1zZ3N0ciAiIgogCi0jOiBjb25uZWN0LmM6MTEzNAorIzogY29ubmVjdC5jOjExMzEKIG1zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IC02IgogbXNnc3RyICIiCiAKLSM6IGNvbm5lY3QuYzoxMTUxCisjOiBjb25uZWN0LmM6MTE0OAogbXNnaWQgInNzaCB2YXJpYW50ICdzaW1wbGUnIGRvZXMgbm90IHN1cHBvcnQgc2V0dGluZyBwb3J0IgogbXNnc3RyICIiCiAKLSM6IGNvbm5lY3QuYzoxMjYyCisjOiBjb25uZWN0LmM6MTI2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdHJhbmdlIHBhdGhuYW1lICclcycgYmxvY2tlZCIKIG1zZ3N0ciAiIgpAQCAtMTgwNCwxMDYgKzE5ODMsMTA2IEBACiBtc2dpZCAidW5hYmxlIHRvIGZvcmsiCiBtc2dzdHIgIiIKIAotIzogY29ubmVjdGVkLmM6NjggYnVpbHRpbi9mc2NrLmM6MjAzIGJ1aWx0aW4vcHJ1bmUuYzoxNDYKKyM6IGNvbm5lY3RlZC5jOjg1IGJ1aWx0aW4vZnNjay5jOjIyMSBidWlsdGluL3BydW5lLmM6NDMKIG1zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkiCiBtc2dzdHIgItCf0YDQvtCy0LXRgNC60LAg0YHQvtC10LTQuNC90LXQvdC40Y8iCiAKLSM6IGNvbm5lY3RlZC5jOjgwCisjOiBjb25uZWN0ZWQuYzo5NwogbXNnaWQgIkNvdWxkIG5vdCBydW4gJ2dpdCByZXYtbGlzdCciCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0YPRgdGC0LjRgtGMIMKrZ2l0IHJldi1saXN0wrsiCiAKLSM6IGNvbm5lY3RlZC5jOjEwMAorIzogY29ubmVjdGVkLmM6MTE3CiBtc2dpZCAiZmFpbGVkIHdyaXRlIHRvIHJldi1saXN0IgogbXNnc3RyICLRgdCx0L7QuSDQt9Cw0L/QuNGB0Lgg0LIgcmV2LWxpc3QiCiAKLSM6IGNvbm5lY3RlZC5jOjEwNworIzogY29ubmVjdGVkLmM6MTI0CiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHJldi1saXN0J3Mgc3RkaW4iCiBtc2dzdHIgItGB0LHQvtC5INC30LDQutGA0YvRgtC40Y8g0YHRgtCw0L3QtNCw0YDRgtC90L7Qs9C+INCy0LLQvtC00LAg0YMgcmV2LWxpc3QiCiAKLSM6IGNvbnZlcnQuYzoxOTQKKyM6IGNvbnZlcnQuYzoxOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWxsZWdhbCBjcmxmX2FjdGlvbiAlZCIKIG1zZ3N0ciAiIgogCi0jOiBjb252ZXJ0LmM6MjA3CisjOiBjb252ZXJ0LmM6MjA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNSTEYgd291bGQgYmUgcmVwbGFjZWQgYnkgTEYgaW4gJXMiCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjIwOQorIzogY29udmVydC5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ1JMRiB3aWxsIGJlIHJlcGxhY2VkIGJ5IExGIGluICVzLlxuIgogIlRoZSBmaWxlIHdpbGwgaGF2ZSBpdHMgb3JpZ2luYWwgbGluZSBlbmRpbmdzIGluIHlvdXIgd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjIxNworIzogY29udmVydC5jOjIxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJMRiB3b3VsZCBiZSByZXBsYWNlZCBieSBDUkxGIGluICVzIgogbXNnc3RyICJMRiDQsdGD0LTQtdGCINC30LDQvNC10L3QtdC9INC90LAgQ1JMRiDQsiAlcyIKIAotIzogY29udmVydC5jOjIxOQorIzogY29udmVydC5jOjIxOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTEYgd2lsbCBiZSByZXBsYWNlZCBieSBDUkxGIGluICVzLlxuIgogIlRoZSBmaWxlIHdpbGwgaGF2ZSBpdHMgb3JpZ2luYWwgbGluZSBlbmRpbmdzIGluIHlvdXIgd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjI4MAorIzogY29udmVydC5jOjI3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJCT00gaXMgcHJvaGliaXRlZCBpbiAnJXMnIGlmIGVuY29kZWQgYXMgJXMiCiBtc2dzdHIgIkJPTSDQt9Cw0L/RgNC10YnQtdC9INCyIMKrJXPCuywg0LXRgdC70Lgg0LrQvtC00LjRgNGD0LXRgtGB0Y8g0LrQsNC6ICVzIgogCi0jOiBjb252ZXJ0LmM6Mjg3CisjOiBjb252ZXJ0LmM6Mjg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZmlsZSAnJXMnIGNvbnRhaW5zIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lcyBhcyAiCiAid29ya2luZy10cmVlLWVuY29kaW5nLiIKIG1zZ3N0ciAi0KTQsNC50Lsgwqslc8K7INGB0L7QtNC10YDQttC40YIg0LzQsNGA0LrQtdGAINC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLQuCDQsdCw0LnRgtC+0LIgKEJPTSkuINCY0YHQv9C+0LvRjNC30YPQudGC0LUgVVRGLSVzINC60LDQuiDQutC+0LTQuNGA0L7QstC60YMg0YDQsNCx0L7Rh9C10LPQviDQutCw0YLQsNC70L7Qs9CwLiIKIAotIzogY29udmVydC5jOjMwNQorIzogY29udmVydC5jOjMwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJCT00gaXMgcmVxdWlyZWQgaW4gJyVzJyBpZiBlbmNvZGVkIGFzICVzIgogbXNnc3RyICJCT00g0YLRgNC10LHRg9C10YLRgdGPINCyIMKrJXPCuywg0LXRgdC70Lgg0LrQvtC00LjRgNGD0LXRgtGB0Y8g0LrQsNC6ICVzIgogCi0jOiBjb252ZXJ0LmM6MzA3CisjOiBjb252ZXJ0LmM6MzA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZmlsZSAnJXMnIGlzIG1pc3NpbmcgYSBieXRlIG9yZGVyIG1hcmsgKEJPTSkuIFBsZWFzZSB1c2UgVVRGLSVzQkUgb3IgIgogIlVURi0lc0xFIChkZXBlbmRpbmcgb24gdGhlIGJ5dGUgb3JkZXIpIGFzIHdvcmtpbmctdHJlZS1lbmNvZGluZy4iCiBtc2dzdHIgItCk0LDQudC7IMKrJXPCuyDQvdC1INGB0L7QtNC10YDQttC40YIg0LzQsNGA0LrQtdGAINC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLQuCDQsdCw0LnRgtC+0LIgKEJPTSkuICDQmNGB0L/QvtC70YzQt9GD0LnRgtC1IFVURi0lc0JFINC40LvQuCBVVEYtJXNMRSAo0LIg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQvtGCINC/0L7RgNGP0LTQutCwINCx0LDQudGC0L7Qsikg0LrQsNC6INC60L7QtNC40YDQvtCy0LrRgyDRgNCw0LHQvtGH0LXQs9C+INC60LDRgtCw0LvQvtCz0LAuIgogCi0jOiBjb252ZXJ0LmM6NDI1IGNvbnZlcnQuYzo0OTYKKyM6IGNvbnZlcnQuYzo0MjQgY29udmVydC5jOjQ5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZW5jb2RlICclcycgZnJvbSAlcyB0byAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C10YDQtdC60L7QtNC40YDQvtCy0LDRgtGMIMKrJXPCuyDQuNC3ICVzINCyICVzIgogCi0jOiBjb252ZXJ0LmM6NDY4CisjOiBjb252ZXJ0LmM6NDY3CiAjLCBjLWZvcm1hdAogbXNnaWQgImVuY29kaW5nICclcycgZnJvbSAlcyB0byAlcyBhbmQgYmFjayBpcyBub3QgdGhlIHNhbWUiCiBtc2dzdHIgItC/0LXRgNC10LrQvtC00LjRgNC+0LLQsNC90LjQtSDCqyVzwrsg0LjQtyAlcyDQsiAlcyDQuCDQvtCx0YDQsNGC0L3QviDQvdC1INC+0LTQvdC+INC4INGC0L4g0LbQtSIKIAotIzogY29udmVydC5jOjY3NAorIzogY29udmVydC5jOjY3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZm9yayB0byBydW4gZXh0ZXJuYWwgZmlsdGVyICclcyciCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjY5NAorIzogY29udmVydC5jOjY5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmVlZCB0aGUgaW5wdXQgdG8gZXh0ZXJuYWwgZmlsdGVyICclcyciCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjcwMQorIzogY29udmVydC5jOjcwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQgJWQiCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjczNiBjb252ZXJ0LmM6NzM5CisjOiBjb252ZXJ0LmM6NzM1IGNvbnZlcnQuYzo3MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZCBmcm9tIGV4dGVybmFsIGZpbHRlciAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBjb252ZXJ0LmM6NzQyIGNvbnZlcnQuYzo3OTYKKyM6IGNvbnZlcnQuYzo3NDEgY29udmVydC5jOjc5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQiCiBtc2dzdHIgIiIKQEAgLTE5MjcsMjEgKzIxMDYsMjEgQEAKIG1zZ2lkICJ0cnVlL2ZhbHNlIGFyZSBubyB2YWxpZCB3b3JraW5nLXRyZWUtZW5jb2RpbmdzIgogbXNnc3RyICJ0cnVlL2ZhbHNlINC90LUg0Y/QstC70Y/QtdGC0YHRjyDQtNC+0L/Rg9GB0YLQuNC80YvQvCDQt9C90LDRh9C10L3QuNC10Lwg0LTQu9GPIHdvcmtpbmctdHJlZS1lbmNvZGluZyIKIAotIzogY29udmVydC5jOjE0MDIgY29udmVydC5jOjE0MzYKKyM6IGNvbnZlcnQuYzoxMzk4IGNvbnZlcnQuYzoxNDMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjbGVhbiBmaWx0ZXIgJyVzJyBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogY29udmVydC5jOjE0ODAKKyM6IGNvbnZlcnQuYzoxNDc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBzbXVkZ2UgZmlsdGVyICVzIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBkYXRlLmM6MTE2CisjOiBkYXRlLmM6MTM3CiBtc2dpZCAiaW4gdGhlIGZ1dHVyZSIKIG1zZ3N0ciAi0LIg0LHRg9C00YPRidC10LwiCiAKLSM6IGRhdGUuYzoxMjIKKyM6IGRhdGUuYzoxNDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiBzZWNvbmQgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHNlY29uZHMgYWdvIgpAQCAtMTk1MCw3ICsyMTI5LDcgQEAKIG1zZ3N0clsyXSAiJTxQUkl1TUFYPiDRgdC10LrRg9C90LQg0L3QsNC30LDQtCIKIG1zZ3N0clszXSAiJTxQUkl1TUFYPiDRgdC10LrRg9C90LTRiyDQvdCw0LfQsNC0IgogCi0jOiBkYXRlLmM6MTI5CisjOiBkYXRlLmM6MTUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gbWludXRlIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtaW51dGVzIGFnbyIKQEAgLTE5NTksNyArMjEzOCw3IEBACiBtc2dzdHJbMl0gIiU8UFJJdU1BWD4g0LzQuNC90YPRgiDQvdCw0LfQsNC0IgogbXNnc3RyWzNdICIlPFBSSXVNQVg+INC80LjQvdGD0YLRiyDQvdCw0LfQsNC0IgogCi0jOiBkYXRlLmM6MTM2CisjOiBkYXRlLmM6MTU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gaG91ciBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gaG91cnMgYWdvIgpAQCAtMTk2OCw3ICsyMTQ3LDcgQEAKIG1zZ3N0clsyXSAiJTxQUkl1TUFYPiDRh9Cw0YHQvtCyINC90LDQt9Cw0LQiCiBtc2dzdHJbM10gIiU8UFJJdU1BWD4g0YfQsNGB0LAg0L3QsNC30LDQtCIKIAotIzogZGF0ZS5jOjE0MworIzogZGF0ZS5jOjE2NAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IGRheSBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gZGF5cyBhZ28iCkBAIC0xOTc3LDcgKzIxNTYsNyBAQAogbXNnc3RyWzJdICIlPFBSSXVNQVg+INC00L3QtdC5INC90LDQt9Cw0LQiCiBtc2dzdHJbM10gIiU8UFJJdU1BWD4g0LTQvdGPINC90LDQt9Cw0LQiCiAKLSM6IGRhdGUuYzoxNDkKKyM6IGRhdGUuYzoxNzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiB3ZWVrIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiB3ZWVrcyBhZ28iCkBAIC0xOTg2LDcgKzIxNjUsNyBAQAogbXNnc3RyWzJdICIlPFBSSXVNQVg+INC90LXQtNC10LvRjCDQvdCw0LfQsNC0IgogbXNnc3RyWzNdICIlPFBSSXVNQVg+INC90LXQtNC10LvQuCDQvdCw0LfQsNC0IgogCi0jOiBkYXRlLmM6MTU2CisjOiBkYXRlLmM6MTc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gbW9udGggYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IG1vbnRocyBhZ28iCkBAIC0xOTk1LDcgKzIxNzQsNyBAQAogbXNnc3RyWzJdICIlPFBSSXVNQVg+INC80LXRgdGP0YbQtdCyINC90LDQt9Cw0LQiCiBtc2dzdHJbM10gIiU8UFJJdU1BWD4g0LzQtdGB0Y/RhtCwINC90LDQt9Cw0LQiCiAKLSM6IGRhdGUuYzoxNjcKKyM6IGRhdGUuYzoxODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiB5ZWFyIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHllYXJzIgpAQCAtMjAwNSw3ICsyMTg0LDcgQEAKIG1zZ3N0clszXSAiJTxQUkl1TUFYPiDQs9C+0LTQsCIKIAogIy4gVFJBTlNMQVRPUlM6ICIlcyIgaXMgIjxuPiB5ZWFycyIKLSM6IGRhdGUuYzoxNzAKKyM6IGRhdGUuYzoxOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMsICU8UFJJdU1BWD4gbW9udGggYWdvIgogbXNnaWRfcGx1cmFsICIlcywgJTxQUkl1TUFYPiBtb250aHMgYWdvIgpAQCAtMjAxNCw3ICsyMTkzLDcgQEAKIG1zZ3N0clsyXSAiJXMsICU8UFJJdU1BWD4g0LzQtdGB0Y/RhtC10LIg0L3QsNC30LDQtCIKIG1zZ3N0clszXSAiJXMsICU8UFJJdU1BWD4g0LzQtdGB0Y/RhtCwINC90LDQt9Cw0LQiCiAKLSM6IGRhdGUuYzoxNzUgZGF0ZS5jOjE4MAorIzogZGF0ZS5jOjE5NiBkYXRlLmM6MjAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4geWVhciBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4geWVhcnMgYWdvIgpAQCAtMjAyMywxNDEgKzIyMDIsNjQ5IEBACiBtc2dzdHJbMl0gIiU8UFJJdU1BWD4g0LvQtdGCINC90LDQt9Cw0LQiCiBtc2dzdHJbM10gIiU8UFJJdU1BWD4g0LPQvtC00LAg0L3QsNC30LDQtCIKIAorIzogZGVsdGEtaXNsYW5kcy5jOjI3MgorbXNnaWQgIlByb3BhZ2F0aW5nIGlzbGFuZCBtYXJrcyIKK21zZ3N0ciAiIgorCisjOiBkZWx0YS1pc2xhbmRzLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCB0cmVlIG9iamVjdCAlcyIKK21zZ3N0ciAiIgorCisjOiBkZWx0YS1pc2xhbmRzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsb2FkIGlzbGFuZCByZWdleCBmb3IgJyVzJzogJXMiCittc2dzdHIgIiIKKworIzogZGVsdGEtaXNsYW5kcy5jOjM5MAorIywgYy1mb3JtYXQKK21zZ2lkICJpc2xhbmQgcmVnZXggZnJvbSBjb25maWcgaGFzIHRvbyBtYW55IGNhcHR1cmUgZ3JvdXBzIChtYXg9JWQpIgorbXNnc3RyICIiCisKKyM6IGRlbHRhLWlzbGFuZHMuYzo0NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWFya2VkICVkIGlzbGFuZHMsIGRvbmUuXG4iCittc2dzdHIgIiIKKwogIzogZGlmZmNvcmUtb3JkZXIuYzoyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcmRlcmZpbGUgJyVzJyIKIG1zZ3N0ciAi0YHQsdC+0Lkg0YfRgtC10L3QuNGPIG9yZGVyZmlsZSDCqyVzwrsiCiAKLSM6IGRpZmZjb3JlLXJlbmFtZS5jOjUzNgorIzogZGlmZmNvcmUtcmVuYW1lLmM6NTQ0CiBtc2dpZCAiUGVyZm9ybWluZyBpbmV4YWN0IHJlbmFtZSBkZXRlY3Rpb24iCiBtc2dzdHIgItCS0YvQv9C+0LvQvdGP0LXRgtGB0Y8g0L3QtdGC0L7Rh9C90L7QtSDQvtC/0YDQtdC00LXQu9C10L3QuNC1INC/0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40Y8iCiAKLSM6IGRpZmYuYzoxMDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAib3B0aW9uICclcycgcmVxdWlyZXMgYSB2YWx1ZSIKLW1zZ3N0ciAi0L/QsNGA0LDQvNC10YLRgCDCqyVzwrsg0YLRgNC10LHRg9C10YIg0YPQutCw0LfQsNC90LjRjyDQt9C90LDRh9C10L3QuNGPIgorIzogZGlmZi1uby1pbmRleC5jOjIzOAorbXNnaWQgImdpdCBkaWZmIC0tbm8taW5kZXggWzxvcHRpb25zPl0gPHBhdGg+IDxwYXRoPiIKK21zZ3N0ciAiIgogCi0jOiBkaWZmLmM6MTU4CisjOiBkaWZmLW5vLWluZGV4LmM6MjYzCittc2dpZCAiIgorIk5vdCBhIGdpdCByZXBvc2l0b3J5LiBVc2UgLS1uby1pbmRleCB0byBjb21wYXJlIHR3byBwYXRocyBvdXRzaWRlIGEgd29ya2luZyAiCisidHJlZSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6MTU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgRmFpbGVkIHRvIHBhcnNlIGRpcnN0YXQgY3V0LW9mZiBwZXJjZW50YWdlICclcydcbiIKIG1zZ3N0ciAiICDQodCx0L7QuSDRgNCw0LfQsdC+0YDQsCDQstC10LvQuNGH0LjQvdGLINGB0YDQtdC30LAgKGN1dC1vZmYpINGDIGRpcnN0YXQgwqslc8K7XG4iCiAKLSM6IGRpZmYuYzoxNjMKKyM6IGRpZmYuYzoxNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBVbmtub3duIGRpcnN0YXQgcGFyYW1ldGVyICclcydcbiIKIG1zZ3N0ciAi0J3QtdC40LfQstC10YHRgtC90YvQuSDQv9Cw0YDQsNC80LXRgtGAIGRpcnN0YXQ6IMKrJXPCu1xuIgogCi0jOiBkaWZmLmM6MjkxCisjOiBkaWZmLmM6Mjk2CiBtc2dpZCAiIgogImNvbG9yIG1vdmVkIHNldHRpbmcgbXVzdCBiZSBvbmUgb2YgJ25vJywgJ2RlZmF1bHQnLCAnYmxvY2tzJywgJ3plYnJhJywgIgogIidkaW1tZWQtemVicmEnLCAncGxhaW4nIgogbXNnc3RyICIiCiAKLSM6IGRpZmYuYzozMTYKKyM6IGRpZmYuYzozMjQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiaWdub3JpbmcgdW5rbm93biBjb2xvci1tb3ZlZC13cyBtb2RlICclcyciCi1tc2dzdHIgIiIKLQotIzogZGlmZi5jOjMyMwogbXNnaWQgIiIKLSJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHdoaXRlIgotIiBzcGFjZSBtb2RlcyIKKyJ1bmtub3duIGNvbG9yLW1vdmVkLXdzIG1vZGUgJyVzJywgcG9zc2libGUgdmFsdWVzIGFyZSAnaWdub3JlLXNwYWNlLWNoYW5nZScsIgorIiAnaWdub3JlLXNwYWNlLWF0LWVvbCcsICdpZ25vcmUtYWxsLXNwYWNlJywgJ2FsbG93LWluZGVudGF0aW9uLWNoYW5nZSciCiBtc2dzdHIgIiIKIAotIzogZGlmZi5jOjM5NAorIzogZGlmZi5jOjMzMgorbXNnaWQgIiIKKyJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyICIKKyJ3aGl0ZXNwYWNlIG1vZGVzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo0MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biB2YWx1ZSBmb3IgJ2RpZmYuc3VibW9kdWxlJyBjb25maWcgdmFyaWFibGU6ICclcyciCiBtc2dzdHIgItCd0LXQuNC30LLQtdGB0YLQvdC+0LUg0LfQvdCw0YfQtdC90LjRjyDQtNC70Y8g0L/QtdGA0LXQvNC10L3QvdC+0LkgwqtkaWZmLnN1Ym1vZHVsZcK7OiDCqyVzwrsiCiAKLSM6IGRpZmYuYzo0NTQKKyM6IGRpZmYuYzo0NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkZvdW5kIGVycm9ycyBpbiAnZGlmZi5kaXJzdGF0JyBjb25maWcgdmFyaWFibGU6XG4iCiAiJXMiCiBtc2dzdHIgItCd0LDQudC00LXQvdGLINC+0YjQuNCx0LrQuCDQsiDQv9C10YDQtdC80LXQvdC90L7QuSDCq2RpZmYuZGlyc3RhdMK7OlxuJXMiCiAKLSM6IGRpZmYuYzo0MDk2CisjOiBkaWZmLmM6NDIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBkaWZmIGRpZWQsIHN0b3BwaW5nIGF0ICVzIgogbXNnc3RyICLQutGA0LjRgtC40YfQtdGB0LrQsNGPINC+0YjQuNCx0LrQsCDQv9GA0Lgg0LLQvdC10YjQvdC10Lwg0YHRgNCw0LLQvdC10L3QuNC4LCDQvtGB0YLQsNC90L7QsiDQvdCwICVzIgogCi0jOiBkaWZmLmM6NDQyNworIzogZGlmZi5jOjQ1NTUKIG1zZ2lkICItLW5hbWUtb25seSwgLS1uYW1lLXN0YXR1cywgLS1jaGVjayBhbmQgLXMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLS1uYW1lLW9ubHksIC0tbmFtZS1zdGF0dXMsIC0tY2hlY2sg0LggLXMg0L3QtdC70YzQt9GPINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQvtC00L3QvtCy0YDQtdC80LXQvdC90L4iCiAKLSM6IGRpZmYuYzo0NDMwCisjOiBkaWZmLmM6NDU1OAogbXNnaWQgIi1HLCAtUyBhbmQgLS1maW5kLW9iamVjdCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICItRywgLVMg0LggLS1maW5kLW9iamVjdCDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0LTQvdC+0LLRgNC10LzQtdC90L3QviIKIAotIzogZGlmZi5jOjQ1MDgKKyM6IGRpZmYuYzo0NjM2CiBtc2dpZCAiLS1mb2xsb3cgcmVxdWlyZXMgZXhhY3RseSBvbmUgcGF0aHNwZWMiCiBtc2dzdHIgIi0tZm9sbG93INGC0YDQtdCx0YPQtdGCINGA0L7QstC90L4g0L7QtNC90L7Qs9C+INGB0L/QtdGG0LjRhNC40LrQsNGC0L7RgNCwINC/0YPRgtC4IgogCi0jOiBkaWZmLmM6NDY3NAorIzogZGlmZi5jOjQ2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAtLXN0YXQgdmFsdWU6ICVzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo0Njg5IGRpZmYuYzo0Njk0IGRpZmYuYzo0Njk5IGRpZmYuYzo0NzA0IGRpZmYuYzo1MjE3CisjOiBwYXJzZS1vcHRpb25zLmM6MTk5IHBhcnNlLW9wdGlvbnMuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDcyMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiRmFpbGVkIHRvIHBhcnNlIC0tZGlyc3RhdC8tWCBvcHRpb24gcGFyYW1ldGVyOlxuIgogIiVzIgogbXNnc3RyICLQodCx0L7QuSDRgNCw0LfQsdC+0YDQsCDQv9Cw0YDQsNC80LXRgtGA0LAg0L7Qv9GG0LjQuCAtLWRpcnN0YXQvLVggOlxuJXMiCiAKLSM6IGRpZmYuYzo0Njg4CisjOiBkaWZmLmM6NDgwNgogIywgYy1mb3JtYXQKLW1zZ2lkICJGYWlsZWQgdG8gcGFyc2UgLS1zdWJtb2R1bGUgb3B0aW9uIHBhcmFtZXRlcjogJyVzJyIKLW1zZ3N0ciAi0KHQsdC+0Lkg0YDQsNC30LHQvtGA0LAg0L/QsNGA0LDQvNC10YLRgNCwINC+0L/RhtC40LggLS1zdWJtb2R1bGU6IMKrJXPCuyIKK21zZ2lkICJ1bmtub3duIGNoYW5nZSBjbGFzcyAnJWMnIGluIC0tZGlmZi1maWx0ZXI9JXMiCittc2dzdHIgIiIKIAotIzogZGlmZi5jOjU3NjYKKyM6IGRpZmYuYzo0ODMwCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdmFsdWUgYWZ0ZXIgd3MtZXJyb3ItaGlnaGxpZ2h0PSUuKnMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjQ4NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDg5NCBkaWZmLmM6NDkwMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIDxuPi88bT4gZm9ybSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDkxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIGEgY2hhcmFjdGVyLCBnb3QgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDkzMworIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS1jb2xvci1tb3ZlZCBhcmd1bWVudDogJXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjQ5NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBtb2RlICclcycgaW4gLS1jb2xvci1tb3ZlZC13cyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NDk5MgorbXNnaWQgIm9wdGlvbiBkaWZmLWFsZ29yaXRobSBhY2NlcHRzIFwibXllcnNcIiwgXCJtaW5pbWFsXCIsIFwicGF0aWVuY2VcIiBhbmQgXCJoaXN0b2dyYW1cIiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTAyOCBkaWZmLmM6NTA0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGFyZ3VtZW50IHRvICVzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MTg2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSAtLXN1Ym1vZHVsZSBvcHRpb24gcGFyYW1ldGVyOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MjQyCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLXdvcmQtZGlmZiBhcmd1bWVudDogJXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUyNjUKK21zZ2lkICJEaWZmIG91dHB1dCBmb3JtYXQgb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTI2NyBkaWZmLmM6NTI3MworbXNnaWQgImdlbmVyYXRlIHBhdGNoIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MjcwIGJ1aWx0aW4vbG9nLmM6MTY3Cittc2dpZCAic3VwcHJlc3MgZGlmZiBvdXRwdXQiCittc2dzdHIgItC90LUg0LLRi9Cy0L7QtNC40YLRjCDRgdC/0LjRgdC+0Log0LjQt9C80LXQvdC10L3QuNC5IgorCisjOiBkaWZmLmM6NTI3NSBkaWZmLmM6NTM4OSBkaWZmLmM6NTM5NgorbXNnaWQgIjxuPiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTI3NiBkaWZmLmM6NTI3OQorbXNnaWQgImdlbmVyYXRlIGRpZmZzIHdpdGggPG4+IGxpbmVzIGNvbnRleHQiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUyODEKK21zZ2lkICJnZW5lcmF0ZSB0aGUgZGlmZiBpbiByYXcgZm9ybWF0IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1Mjg0Cittc2dpZCAic3lub255bSBmb3IgJy1wIC0tcmF3JyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTI4OAorbXNnaWQgInN5bm9ueW0gZm9yICctcCAtLXN0YXQnIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MjkyCittc2dpZCAibWFjaGluZSBmcmllbmRseSAtLXN0YXQiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUyOTUKK21zZ2lkICJvdXRwdXQgb25seSB0aGUgbGFzdCBsaW5lIG9mIC0tc3RhdCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTI5NyBkaWZmLmM6NTMwNQorbXNnaWQgIjxwYXJhbTEscGFyYW0yPi4uLiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTI5OAorbXNnaWQgIiIKKyJvdXRwdXQgdGhlIGRpc3RyaWJ1dGlvbiBvZiByZWxhdGl2ZSBhbW91bnQgb2YgY2hhbmdlcyBmb3IgZWFjaCBzdWItZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzAyCittc2dpZCAic3lub255bSBmb3IgLS1kaXJzdGF0PWN1bXVsYXRpdmUiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzMDYKK21zZ2lkICJzeW5vbnltIGZvciAtLWRpcnN0YXQ9ZmlsZXMscGFyYW0xLHBhcmFtMi4uLiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMxMAorbXNnaWQgIndhcm4gaWYgY2hhbmdlcyBpbnRyb2R1Y2UgY29uZmxpY3QgbWFya2VycyBvciB3aGl0ZXNwYWNlIGVycm9ycyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMxMworbXNnaWQgImNvbmRlbnNlZCBzdW1tYXJ5IHN1Y2ggYXMgY3JlYXRpb25zLCByZW5hbWVzIGFuZCBtb2RlIGNoYW5nZXMiCittc2dzdHIgItC60YDQsNGC0LrQsNGPINGB0LLQvtC00LrQsCDQuNC30LzQtdC90LXQvdC40LksINCy0YDQvtC00LUg0YHQvtC30LTQsNC90LjQuSwg0L/QtdGA0LXQuNC80LXQvdC+0LLQsNC90LjQuSDQuNC70Lgg0LjQt9C80LXQvdC10L3QuNC5INGA0LXQttC40LzQsCDQtNC+0YHRgtGD0L/QsCIKKworIzogZGlmZi5jOjUzMTYKK21zZ2lkICJzaG93IG9ubHkgbmFtZXMgb2YgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMxOQorbXNnaWQgInNob3cgb25seSBuYW1lcyBhbmQgc3RhdHVzIG9mIGNoYW5nZWQgZmlsZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzMjEKK21zZ2lkICI8d2lkdGg+Wyw8bmFtZS13aWR0aD5bLDxjb3VudD5dXSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMyMgorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzI0IGRpZmYuYzo1MzI3IGRpZmYuYzo1MzMwCittc2dpZCAiPHdpZHRoPiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMyNQorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiB3aWR0aCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMyOAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBuYW1lIHdpZHRoIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzMxCittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBhIGdpdmVuIGdyYXBoIHdpZHRoIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzMzCittc2dpZCAiPGNvdW50PiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMzNAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggbGltaXRlZCBsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTMzNworbXNnaWQgImdlbmVyYXRlIGNvbXBhY3Qgc3VtbWFyeSBpbiBkaWZmc3RhdCIKK21zZ3N0ciAi0LPQtdC90LXRgNCw0YbQuNGPINC60L7QvNC/0LDQutGC0L3QvtC5INGB0LLQvtC00LrQuCDQuNC30LzQtdC90LXQvdC40Lkg0LIgZGlmZnN0YXQiCisKKyM6IGRpZmYuYzo1MzQwCittc2dpZCAib3V0cHV0IGEgYmluYXJ5IGRpZmYgdGhhdCBjYW4gYmUgYXBwbGllZCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM0MworbXNnaWQgInNob3cgZnVsbCBwcmUtIGFuZCBwb3N0LWltYWdlIG9iamVjdCBuYW1lcyBvbiB0aGUgXCJpbmRleFwiIGxpbmVzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzQ1Cittc2dpZCAic2hvdyBjb2xvcmVkIGRpZmYiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzNDYKK21zZ2lkICI8a2luZD4iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzNDcKK21zZ2lkICIiCisiaGlnaGxpZ2h0IHdoaXRlc3BhY2UgZXJyb3JzIGluIHRoZSAnY29udGV4dCcsICdvbGQnIG9yICduZXcnIGxpbmVzIGluIHRoZSAiCisiZGlmZiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM1MAorbXNnaWQgIiIKKyJkbyBub3QgbXVuZ2UgcGF0aG5hbWVzIGFuZCB1c2UgTlVMcyBhcyBvdXRwdXQgZmllbGQgdGVybWluYXRvcnMgaW4gLS1yYXcgb3IgIgorIi0tbnVtc3RhdCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM1MyBkaWZmLmM6NTM1NiBkaWZmLmM6NTM1OSBkaWZmLmM6NTQ2NQorbXNnaWQgIjxwcmVmaXg+IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1MzU0Cittc2dpZCAic2hvdyB0aGUgZ2l2ZW4gc291cmNlIHByZWZpeCBpbnN0ZWFkIG9mIFwiYS9cIiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM1NworbXNnaWQgInNob3cgdGhlIGdpdmVuIGRlc3RpbmF0aW9uIHByZWZpeCBpbnN0ZWFkIG9mIFwiYi9cIiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM2MAorbXNnaWQgInByZXBlbmQgYW4gYWRkaXRpb25hbCBwcmVmaXggdG8gZXZlcnkgbGluZSBvZiBvdXRwdXQiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzNjMKK21zZ2lkICJkbyBub3Qgc2hvdyBhbnkgc291cmNlIG9yIGRlc3RpbmF0aW9uIHByZWZpeCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM2NgorbXNnaWQgInNob3cgY29udGV4dCBiZXR3ZWVuIGRpZmYgaHVua3MgdXAgdG8gdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgbGluZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzNzAgZGlmZi5jOjUzNzUgZGlmZi5jOjUzODAKK21zZ2lkICI8Y2hhcj4iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzNzEKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBuZXcgbGluZSBpbnN0ZWFkIG9mICcrJyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM3NgorbXNnaWQgInNwZWNpZnkgdGhlIGNoYXJhY3RlciB0byBpbmRpY2F0ZSBhbiBvbGQgbGluZSBpbnN0ZWFkIG9mICctJyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM4MQorbXNnaWQgInNwZWNpZnkgdGhlIGNoYXJhY3RlciB0byBpbmRpY2F0ZSBhIGNvbnRleHQgaW5zdGVhZCBvZiAnICciCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzODQKK21zZ2lkICJEaWZmIHJlbmFtZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1Mzg1Cittc2dpZCAiPG4+Wy88bT5dIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1Mzg2Cittc2dpZCAiYnJlYWsgY29tcGxldGUgcmV3cml0ZSBjaGFuZ2VzIGludG8gcGFpcnMgb2YgZGVsZXRlIGFuZCBjcmVhdGUiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjUzOTAKK21zZ2lkICJkZXRlY3QgcmVuYW1lcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTM5NAorbXNnaWQgIm9taXQgdGhlIHByZWltYWdlIGZvciBkZWxldGVzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1Mzk3Cittc2dpZCAiZGV0ZWN0IGNvcGllcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQwMQorbXNnaWQgInVzZSB1bm1vZGlmaWVkIGZpbGVzIGFzIHNvdXJjZSB0byBmaW5kIGNvcGllcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQwMworbXNnaWQgImRpc2FibGUgcmVuYW1lIGRldGVjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQwNgorbXNnaWQgInVzZSBlbXB0eSBibG9icyBhcyByZW5hbWUgc291cmNlIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDA4Cittc2dpZCAiY29udGludWUgbGlzdGluZyB0aGUgaGlzdG9yeSBvZiBhIGZpbGUgYmV5b25kIHJlbmFtZXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0MTEKK21zZ2lkICIiCisicHJldmVudCByZW5hbWUvY29weSBkZXRlY3Rpb24gaWYgdGhlIG51bWJlciBvZiByZW5hbWUvY29weSB0YXJnZXRzIGV4Y2VlZHMgIgorImdpdmVuIGxpbWl0IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDEzCittc2dpZCAiRGlmZiBhbGdvcml0aG0gb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQxNQorbXNnaWQgInByb2R1Y2UgdGhlIHNtYWxsZXN0IHBvc3NpYmxlIGRpZmYiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0MTgKK21zZ2lkICJpZ25vcmUgd2hpdGVzcGFjZSB3aGVuIGNvbXBhcmluZyBsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQyMQorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIGFtb3VudCBvZiB3aGl0ZXNwYWNlIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDI0Cittc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSBhdCBFT0wiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0MjcKK21zZ2lkICJpZ25vcmUgY2Fycmllci1yZXR1cm4gYXQgdGhlIGVuZCBvZiBsaW5lIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDMwCittc2dpZCAiaWdub3JlIGNoYW5nZXMgd2hvc2UgbGluZXMgYXJlIGFsbCBibGFuayIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQzMworbXNnaWQgImhldXJpc3RpYyB0byBzaGlmdCBkaWZmIGh1bmsgYm91bmRhcmllcyBmb3IgZWFzeSByZWFkaW5nIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDM2Cittc2dpZCAiZ2VuZXJhdGUgZGlmZiB1c2luZyB0aGUgXCJwYXRpZW5jZSBkaWZmXCIgYWxnb3JpdGhtIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDQwCittc2dpZCAiZ2VuZXJhdGUgZGlmZiB1c2luZyB0aGUgXCJoaXN0b2dyYW0gZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ0MgorbXNnaWQgIjxhbGdvcml0aG0+IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDQzCittc2dpZCAiY2hvb3NlIGEgZGlmZiBhbGdvcml0aG0iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NDUKK21zZ2lkICI8dGV4dD4iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NDYKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcImFuY2hvcmVkIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NDggZGlmZi5jOjU0NTcgZGlmZi5jOjU0NjAKK21zZ2lkICI8bW9kZT4iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NDkKK21zZ2lkICJzaG93IHdvcmQgZGlmZiwgdXNpbmcgPG1vZGU+IHRvIGRlbGltaXQgY2hhbmdlZCB3b3JkcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ1MSBkaWZmLmM6NTQ1NCBkaWZmLmM6NTQ5OQorbXNnaWQgIjxyZWdleD4iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NTIKK21zZ2lkICJ1c2UgPHJlZ2V4PiB0byBkZWNpZGUgd2hhdCBhIHdvcmQgaXMiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NTUKK21zZ2lkICJlcXVpdmFsZW50IHRvIC0td29yZC1kaWZmPWNvbG9yIC0td29yZC1kaWZmLXJlZ2V4PTxyZWdleD4iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NTgKK21zZ2lkICJtb3ZlZCBsaW5lcyBvZiBjb2RlIGFyZSBjb2xvcmVkIGRpZmZlcmVudGx5IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDYxCittc2dpZCAiaG93IHdoaXRlIHNwYWNlcyBhcmUgaWdub3JlZCBpbiAtLWNvbG9yLW1vdmVkIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDY0Cittc2dpZCAiT3RoZXIgZGlmZiBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDY2Cittc2dpZCAid2hlbiBydW4gZnJvbSBzdWJkaXIsIGV4Y2x1ZGUgY2hhbmdlcyBvdXRzaWRlIGFuZCBzaG93IHJlbGF0aXZlIHBhdGhzIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDcwCittc2dpZCAidHJlYXQgYWxsIGZpbGVzIGFzIHRleHQiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NzIKK21zZ2lkICJzd2FwIHR3byBpbnB1dHMsIHJldmVyc2UgdGhlIGRpZmYiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0NzQKK21zZ2lkICJleGl0IHdpdGggMSBpZiB0aGVyZSB3ZXJlIGRpZmZlcmVuY2VzLCAwIG90aGVyd2lzZSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ3NgorbXNnaWQgImRpc2FibGUgYWxsIG91dHB1dCBvZiB0aGUgcHJvZ3JhbSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ3OAorbXNnaWQgImFsbG93IGFuIGV4dGVybmFsIGRpZmYgaGVscGVyIHRvIGJlIGV4ZWN1dGVkIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDgwCittc2dpZCAicnVuIGV4dGVybmFsIHRleHQgY29udmVyc2lvbiBmaWx0ZXJzIHdoZW4gY29tcGFyaW5nIGJpbmFyeSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ4MgorbXNnaWQgIjx3aGVuPiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ4MworbXNnaWQgImlnbm9yZSBjaGFuZ2VzIHRvIHN1Ym1vZHVsZXMgaW4gdGhlIGRpZmYgZ2VuZXJhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ4NgorbXNnaWQgIjxmb3JtYXQ+IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDg3Cittc2dpZCAic3BlY2lmeSBob3cgZGlmZmVyZW5jZXMgaW4gc3VibW9kdWxlcyBhcmUgc2hvd24iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0OTEKK21zZ2lkICJoaWRlICdnaXQgYWRkIC1OJyBlbnRyaWVzIGZyb20gdGhlIGluZGV4IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NDk0Cittc2dpZCAidHJlYXQgJ2dpdCBhZGQgLU4nIGVudHJpZXMgYXMgcmVhbCBpbiB0aGUgaW5kZXgiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU0OTYKK21zZ2lkICI8c3RyaW5nPiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTQ5NworbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorInN0cmluZyIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTUwMAorbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorInJlZ2V4IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NTAzCittc2dpZCAic2hvdyBhbGwgY2hhbmdlcyBpbiB0aGUgY2hhbmdlc2V0IHdpdGggLVMgb3IgLUciCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU1MDYKK21zZ2lkICJ0cmVhdCA8c3RyaW5nPiBpbiAtUyBhcyBleHRlbmRlZCBQT1NJWCByZWd1bGFyIGV4cHJlc3Npb24iCittc2dzdHIgIiIKKworIzogZGlmZi5jOjU1MDkKK21zZ2lkICJjb250cm9sIHRoZSBvcmRlciBpbiB3aGljaCBmaWxlcyBhcHBlYXIgaW4gdGhlIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTUxMAorbXNnaWQgIjxvYmplY3QtaWQ+IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NTExCittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisib2JqZWN0IgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NTEzCittc2dpZCAiWyhBfEN8RHxNfFJ8VHxVfFh8QikuLi5bKl1dIgorbXNnc3RyICIiCisKKyM6IGRpZmYuYzo1NTE0Cittc2dpZCAic2VsZWN0IGZpbGVzIGJ5IGRpZmYgdHlwZSIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTUxNgorbXNnaWQgIjxmaWxlPiIKK21zZ3N0ciAiIgorCisjOiBkaWZmLmM6NTUxNworbXNnaWQgIk91dHB1dCB0byBhIHNwZWNpZmljIGZpbGUiCittc2dzdHIgIiIKKworIzogZGlmZi5jOjYxNTAKIG1zZ2lkICJpbmV4YWN0IHJlbmFtZSBkZXRlY3Rpb24gd2FzIHNraXBwZWQgZHVlIHRvIHRvbyBtYW55IGZpbGVzLiIKIG1zZ3N0ciAi0L3QtdGC0L7Rh9C90L7QtSDQvtC/0YDQtdC00LXQu9C10L3QuNC1INC/0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40Y8g0LHRi9C70L4g0L/RgNC+0L/Rg9GJ0LXQvdC+INC40Lct0LfQsCDRgdC70LjRiNC60L7QvCDQsdC+0LvRjNGI0L7Qs9C+INC60L7Qu9C40YfQtdGB0YLQstCwINGE0LDQudC70L7Qsi4iCiAKLSM6IGRpZmYuYzo1NzY5CisjOiBkaWZmLmM6NjE1MwogbXNnaWQgIm9ubHkgZm91bmQgY29waWVzIGZyb20gbW9kaWZpZWQgcGF0aHMgZHVlIHRvIHRvbyBtYW55IGZpbGVzLiIKIG1zZ3N0ciAi0L3QsNC50LTQtdC90Ysg0YLQvtC70YzQutC+INC60L7Qv9C40Lgg0LjQtyDQuNC30LzQtdC90LXQvdC90YvRhSDQv9GD0YLQtdC5INC40Lct0LfQsCDRgdC70LjRiNC60L7QvCDQsdC+0LvRjNGI0L7Qs9C+INC60L7Qu9C40YfQtdGB0YLQstCwINGE0LDQudC70L7Qsi4iCiAKLSM6IGRpZmYuYzo1NzcyCisjOiBkaWZmLmM6NjE1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAieW91IG1heSB3YW50IHRvIHNldCB5b3VyICVzIHZhcmlhYmxlIHRvIGF0IGxlYXN0ICVkIGFuZCByZXRyeSB0aGUgY29tbWFuZC4iCiBtc2dzdHIgItCy0L7Qt9C80L7QttC90L4g0LLRiyDQt9Cw0YXQvtGC0LjRgtC1INGD0YHRgtCw0L3QvtCy0LjRgtGMINC/0LXRgNC10LzQtdC90L3Rg9GOICVzINCyINC60LDQuiDQvNC40L3QuNC80YPQvCDQt9C90LDRh9C10L3QuNC1ICVkINC4INC/0L7QstGC0L7RgNC40YLRjCDQstGL0LfQvtCyINC60L7QvNCw0L3QtNGLLiIKIAotIzogZGlyLmM6NTY5CisjOiBkaXIuYzo1MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlKHMpIGtub3duIHRvIGdpdCIKIG1zZ3N0ciAiIgogCi0jOiBkaXIuYzo5NTgKKyM6IGRpci5jOjkyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgdXNlICVzIGFzIGFuIGV4Y2x1ZGUgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBkaXIuYzoxODczCisjOiBkaXIuYzoxODQzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuIGRpcmVjdG9yeSAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINC60LDRgtCw0LvQvtCzIMKrJXPCuyIKIAotIzogZGlyLmM6MjExNQorIzogZGlyLmM6MjA4NQogbXNnaWQgImZhaWxlZCB0byBnZXQga2VybmVsIG5hbWUgYW5kIGluZm9ybWF0aW9uIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LjQvNGPINGP0LTRgNCwINC4INC40L3RhNC+0YDQvNCw0YbQuNGOIgogCi0jOiBkaXIuYzoyMjM5CisjOiBkaXIuYzoyMjA5CiBtc2dpZCAidW50cmFja2VkIGNhY2hlIGlzIGRpc2FibGVkIG9uIHRoaXMgc3lzdGVtIG9yIGxvY2F0aW9uIgogbXNnc3RyICIiCiAKLSM6IGRpci5jOjMwMzcKKyM6IGRpci5jOjMwMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IGluIHJlcG8gJXMiCiBtc2dzdHIgIiIKIAotIzogZGlyLmM6MzA4MiBkaXIuYzozMDg3CisjOiBkaXIuYzozMDU4IGRpci5jOjMwNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcmllcyBmb3IgJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0Ywg0LrQsNGC0LDQu9C+0LPQuCDQtNC70Y8gJXMiCiAKLSM6IGRpci5jOjMxMTYKKyM6IGRpci5jOjMwOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG1pZ3JhdGUgZ2l0IGRpcmVjdG9yeSBmcm9tICclcycgdG8gJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C10YDQtdC80LXRgdGC0LjRgtGMINC60LDRgtCw0LvQvtCzIGdpdCDRgSDCqyVzwrsg0LIgwqslc8K7IgogCi0jOiBlZGl0b3IuYzo2MQorIzogZWRpdG9yLmM6NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGludDogV2FpdGluZyBmb3IgeW91ciBlZGl0b3IgdG8gY2xvc2UgdGhlIGZpbGUuLi4lYyIKIG1zZ3N0ciAi0L/QvtC00YHQutCw0LfQutCwOiDQntC20LjQtNCw0L3QuNC1LCDQv9C+0LrQsCDQstGLINC30LDQutGA0L7QtdGC0LUg0YDQtdC00LDQutGC0L7RgCDRgSDRhNCw0LnQu9C+0LzigKYlYyIKQEAgLTIxNjYsNyArMjg1Myw3IEBACiBtc2dpZCAiRmlsdGVyaW5nIGNvbnRlbnQiCiBtc2dzdHIgItCk0LjQu9GM0YLRgNGD0LXRgtGB0Y8g0YHQvtC00LXRgNC20LjQvNC+0LUiCiAKLSM6IGVudHJ5LmM6NDM3CisjOiBlbnRyeS5jOjQ3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc3RhdCBmaWxlICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHN0YXQg0LTQu9GPINGE0LDQudC70LAgwqslc8K7IgpAQCAtMjE4MSw3ICsyODY4LDcgQEAKIG1zZ2lkICJjb3VsZCBub3Qgc2V0IEdJVF9ESVIgdG8gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBleGVjLWNtZC5jOjM2MQorIzogZXhlYy1jbWQuYzozNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidG9vIG1hbnkgYXJncyB0byBydW4gJXMiCiBtc2dzdHIgIiIKQEAgLTIxOTAsMjQ0ICsyODc3LDI2NCBAQAogbXNnaWQgIlJlbW90ZSB3aXRoIG5vIFVSTCIKIG1zZ3N0ciAi0JLQvdC10YjQvdC40Lkg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuSDQsdC10LcgVVJMIgogCi0jOiBmZXRjaC1wYWNrLmM6MTUyCisjOiBmZXRjaC1wYWNrLmM6MTUxCiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIHNoYWxsb3cgbGlzdCIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6INC+0LbQuNC00LDQtdGC0YHRjyDQv9C10YDQtdC00LDRh9CwINGB0L/QuNGB0LrQsCDQtNC70Y8g0L/QvtC70YPRh9C10L3QuNC1INGH0LDRgdGC0LgiCiAKLSM6IGZldGNoLXBhY2suYzoxNjQKKyM6IGZldGNoLXBhY2suYzoxNTQKK21zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgYSBmbHVzaCBwYWNrZXQgYWZ0ZXIgc2hhbGxvdyBsaXN0IgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzoxNjUKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290IGEgZmx1c2ggcGFja2V0IgogbXNnc3RyICJnaXQgZmV0Y2gtcGFjazog0L7QttC40LTQsNC10YLRgdGPIEFDSy9OQUssINCwINC/0L7Qu9GD0YfQtdC9INC/0YPRgdGC0L7QuSDQv9Cw0LrQtdGCIgogCi0jOiBmZXRjaC1wYWNrLmM6MTg0CisjOiBmZXRjaC1wYWNrLmM6MTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgJyVzJyIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6INC+0LbQuNC00LDQtdGC0YHRjyBBQ0svTkFLLCDQsCDQv9C+0LvRg9GH0LXQvdC+IMKrJXPCuyIKIAotIzogZmV0Y2gtcGFjay5jOjI1NAorIzogZmV0Y2gtcGFjay5jOjE5NgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byByZW1vdGUiCittc2dzdHIgIiIKKworIzogZmV0Y2gtcGFjay5jOjI1OAogbXNnaWQgIi0tc3RhdGVsZXNzLXJwYyByZXF1aXJlcyBtdWx0aV9hY2tfZGV0YWlsZWQiCiBtc2dzdHIgIi0tc3RhdGVsZXNzLXJwYyDRgtGA0LXQsdGD0LXRgiBtdWx0aV9hY2tfZGV0YWlsZWQiCiAKLSM6IGZldGNoLXBhY2suYzozNDIgZmV0Y2gtcGFjay5jOjEyNTcKKyM6IGZldGNoLXBhY2suYzozNjAgZmV0Y2gtcGFjay5jOjEyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzaGFsbG93IGxpbmU6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdCw0Y8g0YHRgtGA0L7QutCwINGH0LDRgdGC0LjRh9C90L7Qs9C+INC/0L7Qu9GD0YfQtdC90LjRjzogJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNDggZmV0Y2gtcGFjay5jOjEyNjMKKyM6IGZldGNoLXBhY2suYzozNjYgZmV0Y2gtcGFjay5jOjEyNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB1bnNoYWxsb3cgbGluZTogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90LDRjyDRgdGC0YDQvtC60LAg0L/QvtC70L3QvtCz0L4g0L/QvtC70YPRh9C10L3QuNGPOiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM1MCBmZXRjaC1wYWNrLmM6MTI2NQorIzogZmV0Y2gtcGFjay5jOjM2OCBmZXRjaC1wYWNrLmM6MTI3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3Qgbm90IGZvdW5kOiAlcyIKIG1zZ3N0ciAi0L7QsdGK0LXQutGCINC90LUg0L3QsNC50LTQtdC9OiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM1MyBmZXRjaC1wYWNrLmM6MTI2OAorIzogZmV0Y2gtcGFjay5jOjM3MSBmZXRjaC1wYWNrLmM6MTI4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBpbiBvYmplY3Q6ICVzIgogbXNnc3RyICLQvtGI0LjQsdC60LAg0LIg0L7QsdGK0LXQutGC0LU6ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzU1IGZldGNoLXBhY2suYzoxMjcwCisjOiBmZXRjaC1wYWNrLmM6MzczIGZldGNoLXBhY2suYzoxMjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHNoYWxsb3cgZm91bmQ6ICVzIgogbXNnc3RyICLRh9Cw0YHRgtC40YfQvdGL0Lkg0LrQu9C+0L0g0L3QtSDQvdCw0LnQtNC10L06ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzU4IGZldGNoLXBhY2suYzoxMjczCisjOiBmZXRjaC1wYWNrLmM6Mzc2IGZldGNoLXBhY2suYzoxMjg4CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIHNoYWxsb3cvdW5zaGFsbG93LCBnb3QgJXMiCiBtc2dzdHIgItC+0LbQuNC00LDQu9C+0YHRjCBzaGFsbG93L3Vuc2hhbGxvdywg0LAg0L/QvtC70YPRh9C10L3QviAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM5OQorIzogZmV0Y2gtcGFjay5jOjQxNwogIywgYy1mb3JtYXQKIG1zZ2lkICJnb3QgJXMgJWQgJXMiCiBtc2dzdHIgItC/0L7Qu9GD0YfQtdC90L4gJXMgJWQgJXMiCiAKLSM6IGZldGNoLXBhY2suYzo0MTYKKyM6IGZldGNoLXBhY2suYzo0MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb21taXQgJXMiCiBtc2dzdHIgItC90LXQtNC+0L/Rg9GB0YLQuNC80YvQuSDQutC+0LzQvNC40YIgJXMiCiAKLSM6IGZldGNoLXBhY2suYzo0NDcKKyM6IGZldGNoLXBhY2suYzo0NjUKIG1zZ2lkICJnaXZpbmcgdXAiCiBtc2dzdHIgItC+0YHRgtCw0L3QsNCy0LvQuNCy0LDRjiDQtNCw0LvRjNC90LXQudGI0LjQtSDQv9C+0L/Ri9GC0LrQuCIKIAotIzogZmV0Y2gtcGFjay5jOjQ1OSBwcm9ncmVzcy5jOjIyOQorIzogZmV0Y2gtcGFjay5jOjQ3NyBwcm9ncmVzcy5jOjI4NAogbXNnaWQgImRvbmUiCiBtc2dzdHIgItCz0L7RgtC+0LLQviIKIAotIzogZmV0Y2gtcGFjay5jOjQ3MQorIzogZmV0Y2gtcGFjay5jOjQ4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJnb3QgJXMgKCVkKSAlcyIKIG1zZ3N0ciAi0L/QvtC70YPRh9C10L3QviAlcyAoJWQpICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6NTE3CisjOiBmZXRjaC1wYWNrLmM6NTM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIk1hcmtpbmcgJXMgYXMgY29tcGxldGUiCiBtc2dzdHIgItCf0L7QvNC10YfQsNGOICVzINC60LDQuiDQt9Cw0LLQtdGA0YjQtdC90L3Ri9C5IgogCi0jOiBmZXRjaC1wYWNrLmM6NzY0CisjOiBmZXRjaC1wYWNrLmM6NzQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImFscmVhZHkgaGF2ZSAlcyAoJXMpIgogbXNnc3RyICLRg9C20LUg0LXRgdGC0YwgJXMgKCVzKSIKIAotIzogZmV0Y2gtcGFjay5jOjgwMworIzogZmV0Y2gtcGFjay5jOjc4MwogbXNnaWQgImZldGNoLXBhY2s6IHVuYWJsZSB0byBmb3JrIG9mZiBzaWRlYmFuZCBkZW11bHRpcGxleGVyIgogbXNnc3RyICJmZXRjaC1wYWNrOiDQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9GD0YHRgtC40YLRjCDQv9GA0L7Qs9GA0LDQvNC80YMg0YDQsNC30LHQvtGA0LAg0LTQsNC90L3Ri9GFIgogCi0jOiBmZXRjaC1wYWNrLmM6ODExCisjOiBmZXRjaC1wYWNrLmM6NzkxCiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBwYWNrIGhlYWRlciIKIG1zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQvtGC0L7QutC+0LvQsDog0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INC30LDQs9C+0LvQvtCy0L7QuiDQv9C+0YLQvtC60LAiCiAKLSM6IGZldGNoLXBhY2suYzo4NzkKKyM6IGZldGNoLXBhY2suYzo4NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmICVzIgogbXNnc3RyICJmZXRjaC1wYWNrOiDQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9GD0YHRgtC40YLRjCDQv9GA0L7Qs9GA0LDQvNC80YMgJXMiCiAKLSM6IGZldGNoLXBhY2suYzo4OTUKKyM6IGZldGNoLXBhY2suYzo4NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZmFpbGVkIgogbXNnc3RyICIlcyDQt9Cw0LLQtdGA0YjQtdC9INGBINC+0YjQuNCx0LrQvtC5IgogCi0jOiBmZXRjaC1wYWNrLmM6ODk3CisjOiBmZXRjaC1wYWNrLmM6ODc3CiBtc2dpZCAiZXJyb3IgaW4gc2lkZWJhbmQgZGVtdWx0aXBsZXhlciIKIG1zZ3N0ciAi0L/RgNC+0LjQt9C+0YjQu9CwICDQvtGI0LjQsdC60LAg0LIgINC/0YDQvtCz0YDQsNC80LzQtSDRgNCw0LfQsdC+0YDQsCDQtNCw0L3QvdGL0YUiCiAKLSM6IGZldGNoLXBhY2suYzo5MjYKKyM6IGZldGNoLXBhY2suYzo5MDYKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IGNsaWVudHMiCiBtc2dzdHIgItCh0LXRgNCy0LXRgCDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgiDQutC70LjQtdC90YLQvtCyINGBINGH0LDRgdGC0LjRh9C90YvQvCDQutC70L7QvdC40YDQvtCy0LDQvdC40LXQvCIKIAotIzogZmV0Y2gtcGFjay5jOjkzMAorIzogZmV0Y2gtcGFjay5jOjkxMAogbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2tfZGV0YWlsZWQiCiBtc2dzdHIgItCh0LXRgNCy0LXRgCDQv9C+0LTQtNC10YDQttC40LLQsNC10YIgbXVsdGlfYWNrX2RldGFpbGVkIgogCi0jOiBmZXRjaC1wYWNrLmM6OTMzCisjOiBmZXRjaC1wYWNrLmM6OTEzCiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIG5vLWRvbmUiCiBtc2dzdHIgItCh0LXRgNCy0LXRgCDQv9C+0LTQtNC10YDQttC40LLQsNC10YIgbm8tZG9uZSIKIAotIzogZmV0Y2gtcGFjay5jOjkzOQorIzogZmV0Y2gtcGFjay5jOjkxOQogbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2siCiBtc2dzdHIgItCh0LXRgNCy0LXRgCDQv9C+0LTQtNC10YDQttC40LLQsNC10YIgbXVsdGlfYWNrIgogCi0jOiBmZXRjaC1wYWNrLmM6OTQzCisjOiBmZXRjaC1wYWNrLmM6OTIzCiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIHNpZGUtYmFuZC02NGsiCiBtc2dzdHIgItCh0LXRgNCy0LXRgCDQv9C+0LTQtNC10YDQttC40LLQsNC10YIgc2lkZS1iYW5kLTY0ayIKIAotIzogZmV0Y2gtcGFjay5jOjk0NworIzogZmV0Y2gtcGFjay5jOjkyNwogbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQiCiBtc2dzdHIgItCh0LXRgNCy0LXRgCDQv9C+0LTQtNC10YDQttC40LLQsNC10YIgc2lkZS1iYW5kIgogCi0jOiBmZXRjaC1wYWNrLmM6OTUxCisjOiBmZXRjaC1wYWNrLmM6OTMxCiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIGFsbG93LXRpcC1zaGExLWluLXdhbnQiCiBtc2dzdHIgItCh0LXRgNCy0LXRgCDQv9C+0LTQtNC10YDQttC40LLQsNC10YIgYWxsb3ctdGlwLXNoYTEtaW4td2FudCIKIAotIzogZmV0Y2gtcGFjay5jOjk1NQorIzogZmV0Y2gtcGFjay5jOjkzNQogbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBhbGxvdy1yZWFjaGFibGUtc2hhMS1pbi13YW50IgogbXNnc3RyICLQodC10YDQstC10YAg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGCIGFsbG93LXJlYWNoYWJsZS1zaGExLWluLXdhbnQiCiAKLSM6IGZldGNoLXBhY2suYzo5NjUKKyM6IGZldGNoLXBhY2suYzo5NDUKIG1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgb2ZzLWRlbHRhIgogbXNnc3RyICLQodC10YDQstC10YAg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGCIG9mcy1kZWx0YSIKIAotIzogZmV0Y2gtcGFjay5jOjk3MSBmZXRjaC1wYWNrLmM6MTE1MAorIzogZmV0Y2gtcGFjay5jOjk1MSBmZXRjaC1wYWNrLmM6MTE0NAogbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBmaWx0ZXIiCiBtc2dzdHIgItCh0LXRgNCy0LXRgCDQv9C+0LTQtNC10YDQttC40LLQsNC10YIg0YTQuNC70YzRgtGA0LDRhtC40Y4iCiAKLSM6IGZldGNoLXBhY2suYzo5NzkKKyM6IGZldGNoLXBhY2suYzo5NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2VydmVyIHZlcnNpb24gaXMgJS4qcyIKIG1zZ3N0ciAi0JLQtdGA0YHQuNGPINGB0LXRgNCy0LXRgNCwICUuKnMiCiAKLSM6IGZldGNoLXBhY2suYzo5ODUKKyM6IGZldGNoLXBhY2suYzo5NjUKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLXNoYWxsb3ctc2luY2UiCiBtc2dzdHIgItCh0LXRgNCy0LXRgCDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgiAtLXNoYWxsb3ctc2luY2UiCiAKLSM6IGZldGNoLXBhY2suYzo5ODkKKyM6IGZldGNoLXBhY2suYzo5NjkKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLXNoYWxsb3ctZXhjbHVkZSIKIG1zZ3N0ciAi0KHQtdGA0LLQtdGAINC90LUg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGCIC0tc2hhbGxvdy1leGNsdWRlIgogCi0jOiBmZXRjaC1wYWNrLmM6OTkxCisjOiBmZXRjaC1wYWNrLmM6OTcxCiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1kZWVwZW4iCiBtc2dzdHIgItCh0LXRgNCy0LXRgCDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgiAtLWRlZXBlbiIKIAotIzogZmV0Y2gtcGFjay5jOjEwMDQKKyM6IGZldGNoLXBhY2suYzo5ODgKIG1zZ2lkICJubyBjb21tb24gY29tbWl0cyIKIG1zZ3N0ciAi0L3QtSDQvtCx0YnQuNGFINC60L7QvNC80LjRgtC+0LIiCiAKLSM6IGZldGNoLXBhY2suYzoxMDE2IGZldGNoLXBhY2suYzoxMzkzCisjOiBmZXRjaC1wYWNrLmM6MTAwMCBmZXRjaC1wYWNrLmM6MTQ0OQogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBmZXRjaCBmYWlsZWQuIgogbXNnc3RyICJnaXQgZmV0Y2gtcGFjazog0L7RiNC40LHQutCwINC/0YDQuCDQv9C+0LvRg9GH0LXQvdC40Lgg0LTQsNC90L3Ri9GFLiIKIAotIzogZmV0Y2gtcGFjay5jOjExNDUKKyM6IGZldGNoLXBhY2suYzoxMTM4CiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyByZXF1ZXN0cyIKIG1zZ3N0ciAi0KHQtdGA0LLQtdGAINC90LUg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGCINGH0LDRgdGC0LjRh9C90YvQtSDQt9Cw0L/RgNC+0YHRiyIKIAotIzogZmV0Y2gtcGFjay5jOjExOTEKKyM6IGZldGNoLXBhY2suYzoxMTcxCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHJlcXVlc3QgdG8gcmVtb3RlIgorbXNnc3RyICIiCisKKyM6IGZldGNoLXBhY2suYzoxMTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHJlYWRpbmcgc2VjdGlvbiBoZWFkZXIgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBmZXRjaC1wYWNrLmM6MTE5NworIzogZmV0Y2gtcGFjay5jOjExOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgJyVzJywgcmVjZWl2ZWQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBmZXRjaC1wYWNrLmM6MTIzNgorIzogZmV0Y2gtcGFjay5jOjEyMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBhY2tub3dsZWRnbWVudCBsaW5lOiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzoxMjQxCisjOiBmZXRjaC1wYWNrLmM6MTIzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIGFja3M6ICVkIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzoxMjc4CisjOiBmZXRjaC1wYWNrLmM6MTI0OQorbXNnaWQgImV4cGVjdGVkIHBhY2tmaWxlIHRvIGJlIHNlbnQgYWZ0ZXIgJ3JlYWR5JyIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6MTI1MQorbXNnaWQgImV4cGVjdGVkIG5vIG90aGVyIHNlY3Rpb25zIHRvIGJlIHNlbnQgYWZ0ZXIgbm8gJ3JlYWR5JyIKK21zZ3N0ciAiIgorCisjOiBmZXRjaC1wYWNrLmM6MTI5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIHNoYWxsb3cgaW5mbzogJWQiCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjEyOTQKKyM6IGZldGNoLXBhY2suYzoxMzQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIHdhbnRlZC1yZWYsIGdvdCAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzoxMzA0CisjOiBmZXRjaC1wYWNrLmM6MTM0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIHdhbnRlZC1yZWY6ICclcyciCiBtc2dzdHIgIiIKIAotIzogZmV0Y2gtcGFjay5jOjEzMDgKKyM6IGZldGNoLXBhY2suYzoxMzUwCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHByb2Nlc3Npbmcgd2FudGVkIHJlZnM6ICVkIgogbXNnc3RyICIiCiAKLSM6IGZldGNoLXBhY2suYzoxNjAzCisjOiBmZXRjaC1wYWNrLmM6MTY3NgogbXNnaWQgIm5vIG1hdGNoaW5nIHJlbW90ZSBoZWFkIgogbXNnc3RyICLQvdC10YIg0YHQvtC+0YLQstC10YHRgtCy0YPRjtGJ0LXQs9C+INCy0L3QtdGI0L3QtdCz0L4g0YPQutCw0LfQsNGC0LXQu9GPINC90LAg0LLQtdGC0LrRgyIKIAotIzogZmV0Y2gtcGFjay5jOjE2MjEgYnVpbHRpbi9jbG9uZS5jOjY2NAorIzogZmV0Y2gtcGFjay5jOjE2OTkgYnVpbHRpbi9jbG9uZS5jOjY3MwogbXNnaWQgInJlbW90ZSBkaWQgbm90IHNlbmQgYWxsIG5lY2Vzc2FyeSBvYmplY3RzIgogbXNnc3RyICLQstC90LXRiNC90LjQuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5INC/0YDQuNGB0LvQsNC7INC90LUg0LLRgdC1INC90LXQvtCx0YXQvtC00LjQvNGL0LUg0L7QsdGK0LXQutGC0YsiCiAKLSM6IGZldGNoLXBhY2suYzoxNjQ3CisjOiBmZXRjaC1wYWNrLmM6MTcyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIHJlbW90ZSByZWYgJXMiCiBtc2dzdHIgItC90LXRgiDRgtCw0LrQvtC5INCy0L3QtdGI0L3QtdC5INGB0YHRi9C70LrQuCAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjE2NTAKKyM6IGZldGNoLXBhY2suYzoxNzI5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBhbGxvdyByZXF1ZXN0IGZvciB1bmFkdmVydGlzZWQgb2JqZWN0ICVzIgogbXNnc3RyICLQodC10YDQstC10YAg0L3QtSDQv9C+0LTQtNC10YDQttC40LLQsNC10YIg0LfQsNC/0YDQvtGBINC90LXQvtCx0YrRj9Cy0LvQtdC90L3QvtCz0L4g0L7QsdGK0LXQutGC0LAgJXMiCiAKLSM6IGdwZy1pbnRlcmZhY2UuYzoyNTMKKyM6IGdwZy1pbnRlcmZhY2UuYzozMTgKIG1zZ2lkICJncGcgZmFpbGVkIHRvIHNpZ24gdGhlIGRhdGEiCiBtc2dzdHIgImdwZyDQvdC1INGD0LTQsNC70L7RgdGMINC/0L7QtNC/0LjRgdCw0YLRjCDQtNCw0L3QvdGL0LUiCiAKLSM6IGdwZy1pbnRlcmZhY2UuYzoyNzkKKyM6IGdwZy1pbnRlcmZhY2UuYzozNDQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSBmaWxlIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINCy0YDQtdC80LXQvdC90YvQuSDRhNCw0LnQuyIKIAotIzogZ3BnLWludGVyZmFjZS5jOjI4MgorIzogZ3BnLWludGVyZmFjZS5jOjM0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgd3JpdGluZyBkZXRhY2hlZCBzaWduYXR1cmUgdG8gJyVzJyIKIG1zZ3N0ciAi0YHQsdC+0Lkg0LfQsNC/0LjRgdC4INC+0YLRgdC+0LXQtNC40L3QtdC90L3QvtC5INC/0L7QtNC/0LjRgdC4INCyIMKrJXPCuyIKQEAgLTI0MzcsMTggKzMxNDQsMTggQEAKIG1zZ2lkICJpZ25vcmUgaW52YWxpZCBjb2xvciAnJS4qcycgaW4gbG9nLmdyYXBoQ29sb3JzIgogbXNnc3RyICLQuNCz0L3QvtGA0LjRgNGD0Y4g0L3QtdC00L7Qv9GD0YHRgtC40LzRi9C5INGG0LLQtdGCIMKrJS4qc8K7INCyIGxvZy5ncmFwaENvbG9ycyIKIAotIzogZ3JlcC5jOjIxMTUKKyM6IGdyZXAuYzoyMTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IHVuYWJsZSB0byByZWFkICVzIgogbXNnc3RyICLCqyVzwrs6INC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQtdGB0YLRjCAlcyIKIAotIzogZ3JlcC5jOjIxMzIgc2V0dXAuYzoxNjQgYnVpbHRpbi9jbG9uZS5jOjQxMCBidWlsdGluL2RpZmYuYzo4MQotIzogYnVpbHRpbi9ybS5jOjEzNAorIzogZ3JlcC5jOjIxMzAgc2V0dXAuYzoxNjQgYnVpbHRpbi9jbG9uZS5jOjQxMSBidWlsdGluL2RpZmYuYzo4MgorIzogYnVpbHRpbi9ybS5jOjEzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBzdGF0IMKrJXPCuyIKIAotIzogZ3JlcC5jOjIxNDMKKyM6IGdyZXAuYzoyMTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IHNob3J0IHJlYWQiCiBtc2dzdHIgIsKrJXPCuzog0YHQu9C40YjQutC+0Lwg0LzQsNC70L4g0LTQsNC90L3Ri9GFINC/0YDQvtGH0LjRgtCw0L3QviIKQEAgLTI1MDUsNjAgKzMyMTIsNzIgQEAKIG1zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBJbnRlcm5hbCBIZWxwZXJzIgogbXNnc3RyICLQndC40LfQutC+0YPRgNC+0LLQvdC10LLRi9C1INC60L7QvNCw0L3QtNGLIC8g0JLQvdGD0YLRgNC10L3QvdC40LUg0LLRgdC/0L7QvNC+0LPQsNGC0LXQu9GM0L3Ri9C1IgogCi0jOiBoZWxwLmM6MjkzCisjOiBoZWxwLmM6Mjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImF2YWlsYWJsZSBnaXQgY29tbWFuZHMgaW4gJyVzJyIKIG1zZ3N0ciAi0LTQvtGB0YLRg9C/0L3Ri9C1INC60L7QvNCw0L3QtNGLIGdpdCDQsiDCqyVzwrsiCiAKLSM6IGhlbHAuYzozMDAKKyM6IGhlbHAuYzozMDUKIG1zZ2lkICJnaXQgY29tbWFuZHMgYXZhaWxhYmxlIGZyb20gZWxzZXdoZXJlIG9uIHlvdXIgJFBBVEgiCiBtc2dzdHIgItC60L7QvNCw0L3QtNGLIGdpdCwg0LTQvtGB0YLRg9C/0L3Ri9C1INCyINC00YDRg9Cz0LjRhSDQvNC10YHRgtCw0YUg0LLQsNGI0LXQs9C+ICRQQVRIIgogCi0jOiBoZWxwLmM6MzA5CisjOiBoZWxwLmM6MzE0CiBtc2dpZCAiVGhlc2UgYXJlIGNvbW1vbiBHaXQgY29tbWFuZHMgdXNlZCBpbiB2YXJpb3VzIHNpdHVhdGlvbnM6IgogbXNnc3RyICLQodGC0LDQvdC00LDRgNGC0L3Ri9C1INC60L7QvNCw0L3QtNGLIEdpdCDQuNGB0L/QvtC70YzQt9GD0LXQvNGL0LUg0LIg0YDQsNC30LvQuNGH0L3Ri9GFINGB0LjRgtGD0LDRhtC40Y/RhToiCiAKLSM6IGhlbHAuYzozNTggZ2l0LmM6OTAKKyM6IGhlbHAuYzozNjMgZ2l0LmM6OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5zdXBwb3J0ZWQgY29tbWFuZCBsaXN0aW5nIHR5cGUgJyVzJyIKIG1zZ3N0ciAi0L3QtdC/0L7QtNC00LXRgNC20LjQstCw0LXQvNGL0Lkg0YLQuNC/INGB0L/QuNGB0LrQsCDQutC+0LzQsNC90LQgwqslc8K7IgogCi0jOiBoZWxwLmM6NDA1CisjOiBoZWxwLmM6NDAzCiBtc2dpZCAiVGhlIGNvbW1vbiBHaXQgZ3VpZGVzIGFyZToiCiBtc2dzdHIgItCe0YHQvdC+0LLQvdGL0LUg0YDRg9C60L7QstC+0LTRgdGC0LLQsCBHaXQ6IgogCi0jOiBoZWxwLmM6NTUyCisjOiBoZWxwLmM6NTEyCittc2dpZCAiU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIHRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIgorbXNnc3RyICLQl9Cw0L/Rg9GB0YLQuNGC0LUgwqtnaXQgaGVscCA80LrQvtC80LDQvdC00LA+wrssINGH0YLQvtCx0Ysg0L/RgNC+0YfQtdGB0YLRjCDQviDQutC+0L3QutGA0LXRgtC90L7QuSDQv9C+0LTQutC+0LzQsNC90LTQtSIKKworIzogaGVscC5jOjUxNworbXNnaWQgIkV4dGVybmFsIGNvbW1hbmRzIgorbXNnc3RyICIiCisKKyM6IGhlbHAuYzo1MzIKK21zZ2lkICJDb21tYW5kIGFsaWFzZXMiCittc2dzdHIgIiIKKworIzogaGVscC5jOjU5NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBhcHBlYXJzIHRvIGJlIGEgZ2l0IGNvbW1hbmQsIGJ1dCB3ZSB3ZXJlIG5vdFxuIgogImFibGUgdG8gZXhlY3V0ZSBpdC4gTWF5YmUgZ2l0LSVzIGlzIGJyb2tlbj8iCiBtc2dzdHIgIsKrJXPCuyDQv9C+0YXQvtC20LUg0L3QsCDQutC+0LzQsNC90LTRgyBnaXQsINC90L4g0L3QsNC8INC90LUg0YPQtNCw0LvQvtGB0Ywg0LXQtSDQt9Cw0L/Rg9GB0YLQuNGC0YwuINCS0L7Qt9C80L7QttC90L4sIGdpdC0lcyAg0L3QtSDRgNCw0LHQvtGC0LDQtdGCPyIKIAotIzogaGVscC5jOjYxMQorIzogaGVscC5jOjY1NQogbXNnaWQgIlVoIG9oLiBZb3VyIHN5c3RlbSByZXBvcnRzIG5vIEdpdCBjb21tYW5kcyBhdCBhbGwuIgogbXNnc3RyICLQntC5LdGR0LkhINCS0LDRiNCwINGB0LjRgdGC0LXQvNCwINC90LUg0YHQvtC+0LHRidCw0LXRgiDQvdC4INC+INC60LDQutC40YUg0LrQvtC80LDQvdC00LDRhSBHaXQg0LLQvtC+0LHRidC1LiIKIAotIzogaGVscC5jOjYzMworIzogaGVscC5jOjY3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJXQVJOSU5HOiBZb3UgY2FsbGVkIGEgR2l0IGNvbW1hbmQgbmFtZWQgJyVzJywgd2hpY2ggZG9lcyBub3QgZXhpc3QuIgogbXNnc3RyICLQktC90LjQvNCw0L3QuNC1OiDQktGLINC30LDQv9GD0YHRgtC40LvQuCDQvdC1INGB0YPRidC10YHRgtCy0YPRjtGJ0YPRjiDQutC+0LzQsNC90LTRgyBHaXQgwqslc8K7LiIKIAotIzogaGVscC5jOjYzOAorIzogaGVscC5jOjY4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb250aW51aW5nIHVuZGVyIHRoZSBhc3N1bXB0aW9uIHRoYXQgeW91IG1lYW50ICclcycuIgogbXNnc3RyICLQn9GA0L7QtNC+0LvQttCw0Y4sINC/0YDQtdC00L/QvtC70LDQs9Cw0Y8sINGH0YLQviDQstGLINC40LzQtdC70Lgg0LIg0LLQuNC00YMgwqslc8K7LiIKIAotIzogaGVscC5jOjY0MworIzogaGVscC5jOjY4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb250aW51aW5nIGluICUwLjFmIHNlY29uZHMsIGFzc3VtaW5nIHRoYXQgeW91IG1lYW50ICclcycuIgogbXNnc3RyICLQn9GA0L7QtNC+0LvQttGDINGH0LXRgNC10LcgJTAuMWYg0YHQtdC60YPQvdC0LCDQv9GA0LXQtNC/0L7Qu9Cw0LPQsNGPLCDRh9GC0L4g0LLRiyDQuNC80LXQu9C4INCyINCy0LjQtNGDIMKrJXPCuy4iCiAKLSM6IGhlbHAuYzo2NTEKKyM6IGhlbHAuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0OiAnJXMnIGlzIG5vdCBhIGdpdCBjb21tYW5kLiBTZWUgJ2dpdCAtLWhlbHAnLiIKIG1zZ3N0ciAiZ2l0OiDCqyVzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC60L7QvNCw0L3QtNC+0LkgZ2l0LiDQodC80L7RgtGA0LjRgtC1IMKrZ2l0IC0taGVscMK7LiIKIAotIzogaGVscC5jOjY1NQorIzogaGVscC5jOjY5OQogbXNnaWQgIiIKICJcbiIKICJUaGUgbW9zdCBzaW1pbGFyIGNvbW1hbmQgaXMiCkBAIC0yNTcwLDE2ICszMjg5LDE2IEBACiBtc2dzdHJbMl0gIlxu0KHQsNC80YvQtSDQv9C+0YXQvtC20LjQtSDQutC+0LzQsNC90LTRizoiCiBtc2dzdHJbM10gIlxu0KHQsNC80YvQtSDQv9C+0YXQvtC20LjQtSDQutC+0LzQsNC90LTRizoiCiAKLSM6IGhlbHAuYzo2NzAKKyM6IGhlbHAuYzo3MTQKIG1zZ2lkICJnaXQgdmVyc2lvbiBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IHZlcnNpb24gWzxvcHRpb25zPl0iCiAKLSM6IGhlbHAuYzo3MzgKKyM6IGhlbHAuYzo3ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6ICVzIC0gJXMiCiBtc2dzdHIgIiVzOiAlcyDigJQgJXMiCiAKLSM6IGhlbHAuYzo3NDIKKyM6IGhlbHAuYzo3ODYKIG1zZ2lkICIiCiAiXG4iCiAiRGlkIHlvdSBtZWFuIHRoaXM/IgpAQCAtMjU5MSw3ICszMzEwLDcgQEAKIG1zZ3N0clsyXSAiXG7QktC+0LfQvNC+0LbQvdC+LCDQstGLINC40LzQtdC70Lgg0LIg0LLQuNC00YMg0YfRgtC+LdGC0L4g0LjQtyDRjdGC0L7Qs9C+PyIKIG1zZ3N0clszXSAiXG7QktC+0LfQvNC+0LbQvdC+LCDQstGLINC40LzQtdC70Lgg0LIg0LLQuNC00YMg0YfRgtC+LdGC0L4g0LjQtyDRjdGC0L7Qs9C+PyIKIAotIzogaWRlbnQuYzozNDIKKyM6IGlkZW50LmM6MzQ5CiBtc2dpZCAiIgogIlxuIgogIioqKiBQbGVhc2UgdGVsbCBtZSB3aG8geW91IGFyZS5cbiIKQEAgLTI2MDYsNDQgKzMzMjUsNjcgQEAKICJcbiIKIG1zZ3N0ciAiXG4qKiog0J/QvtC20LDQu9GD0LnRgdGC0LAsINGB0LrQsNC20LjRgtC1INC80L3QtSDQutGC0L4g0LLRiyDQtdGB0YLRjC5cblxu0JfQsNC/0YPRgdGC0LjRgtC1XG5cbiAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLmVtYWlsIFwieW91QGV4YW1wbGUuY29tXCJcbiAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLm5hbWUgXCLQktCw0YjQtSDQmNC80Y9cIlxuXG7QtNC70Y8g0YPQutCw0LfQsNC90LjRjyDQuNC00LXQvdGC0LjRhNC40LrQsNGG0LjQvtC90L3Ri9GFINC00LDQvdC90YvRhSDQsNC60LrQsNGD0L3RgtCwINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOLlxu0J/RgNC+0L/Rg9GB0YLQuNGC0LUg0L/QsNGA0LDQvNC10YLRgCAtLWdsb2JhbCDQtNC70Y8g0YPQutCw0LfQsNC90LjRjyDQtNCw0L3QvdGL0YUg0YLQvtC70YzQutC+INC00LvRjyDRjdGC0L7Qs9C+INGA0LXQv9C+0LfQuNGC0L7RgNC40Y8uXG5cbiIKIAotIzogaWRlbnQuYzozNjYKKyM6IGlkZW50LmM6Mzc5CiBtc2dpZCAibm8gZW1haWwgd2FzIGdpdmVuIGFuZCBhdXRvLWRldGVjdGlvbiBpcyBkaXNhYmxlZCIKIG1zZ3N0ciAi0LDQtNGA0LXRgSDRjdC70LXQutGC0YDQvtC90L3QvtC5INC/0L7Rh9GC0Ysg0L3QtSDRg9C60LDQt9Cw0L0g0Lgg0LDQstGC0L7QvtC/0YDQtdC00LXQu9C10L3QuNC1INC+0YLQutC70Y7Rh9C10L3QviIKIAotIzogaWRlbnQuYzozNzEKKyM6IGlkZW50LmM6Mzg0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhdXRvLWRldGVjdCBlbWFpbCBhZGRyZXNzIChnb3QgJyVzJykiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINCw0LLRgtC+0L7Qv9GA0LXQtNC10LvQtdC90LjQtSDQsNC00YDQtdGB0LAg0Y3Qu9C10LrRgtGA0L7QvdC90L7QuSDQv9C+0YfRgtGLICjQv9C+0LvRg9GH0LXQvdC+IMKrJXPCuykiCiAKLSM6IGlkZW50LmM6MzgxCisjOiBpZGVudC5jOjQwMQogbXNnaWQgIm5vIG5hbWUgd2FzIGdpdmVuIGFuZCBhdXRvLWRldGVjdGlvbiBpcyBkaXNhYmxlZCIKIG1zZ3N0ciAi0LjQvNGPINC90LUg0YPQutCw0LfQsNC90L4g0Lgg0LDQstGC0L7QvtC/0YDQtdC00LXQu9C10L3QuNC1INC+0YLQutC70Y7Rh9C10L3QviIKIAotIzogaWRlbnQuYzozODcKKyM6IGlkZW50LmM6NDA3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhdXRvLWRldGVjdCBuYW1lIChnb3QgJyVzJykiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINCw0LLRgtC+0L7Qv9GA0LXQtNC10LvQtdC90LjQtSDQuNC80LXQvdC4ICjQv9C+0LvRg9GH0LXQvdC+IMKrJXPCuykiCiAKLSM6IGlkZW50LmM6Mzk1CisjOiBpZGVudC5jOjQxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJlbXB0eSBpZGVudCBuYW1lIChmb3IgPCVzPikgbm90IGFsbG93ZWQiCiBtc2dzdHIgItC/0YPRgdGC0L7QtSDQuNC80Y8g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDQsCAo0LTQu9GPIDwlcz4pINC90LUg0YDQsNC30YDQtdGI0LXQvdC+IgogCi0jOiBpZGVudC5jOjQwMQorIzogaWRlbnQuYzo0MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAibmFtZSBjb25zaXN0cyBvbmx5IG9mIGRpc2FsbG93ZWQgY2hhcmFjdGVyczogJXMiCiBtc2dzdHIgItC40LzRjyDRgdC+0YHRgtC+0LjRgiDRgtC+0LvRjNC60L4g0LjQtyDQvdC10YDQsNC30YDQtdGI0LXQvdC90YvRhSDRgdC40LzQvtCy0L7Qu9C+0LI6ICVzIgogCi0jOiBpZGVudC5jOjQxNiBidWlsdGluL2NvbW1pdC5jOjYwMAorIzogaWRlbnQuYzo0MzYgYnVpbHRpbi9jb21taXQuYzo2MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBkYXRlIGZvcm1hdDogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90YvQuSDRhNC+0YDQvNCw0YIg0LTQsNGC0Ys6ICVzIgogCisjOiBsaXN0LW9iamVjdHMuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW50cnkgJyVzJyBpbiB0cmVlICVzIGhhcyB0cmVlIG1vZGUsIGJ1dCBpcyBub3QgYSB0cmVlIgorbXNnc3RyICIiCisKKyM6IGxpc3Qtb2JqZWN0cy5jOjE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJlbnRyeSAnJXMnIGluIHRyZWUgJXMgaGFzIGJsb2IgbW9kZSwgYnV0IGlzIG5vdCBhIGJsb2IiCittc2dzdHIgIiIKKworIzogbGlzdC1vYmplY3RzLmM6Mzc4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb2FkIHJvb3QgdHJlZSBmb3IgY29tbWl0ICVzIgorbXNnc3RyICIiCisKICM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjM2CiBtc2dpZCAibXVsdGlwbGUgZmlsdGVyLXNwZWNzIGNhbm5vdCBiZSBjb21iaW5lZCIKIG1zZ3N0ciAi0L3QtdCy0L7Qt9C80L7QttC90L4g0L7QsdGK0LXQtNC40L3Rj9GC0Ywg0YTQuNC70YzRgtGA0LDRhtC40Y4g0YEg0L/QvtC80L7RidGM0Y4g0L3QtdGB0LrQvtC70YzQutC40YUg0YHQv9C10YbQuNGE0LjQutCw0YbQuNC5IgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxMjYKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjU4Cittc2dpZCAiZXhwZWN0ZWQgJ3RyZWU6PGRlcHRoPiciCittc2dzdHIgIiIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6ODQKK21zZ2lkICJzcGFyc2U6cGF0aCBmaWx0ZXJzIHN1cHBvcnQgaGFzIGJlZW4gZHJvcHBlZCIKK21zZ3N0ciAiIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxNTgKIG1zZ2lkICJjYW5ub3QgY2hhbmdlIHBhcnRpYWwgY2xvbmUgcHJvbWlzb3IgcmVtb3RlIgogbXNnc3RyICLQvdC10LvRjNC30Y8g0LjQt9C80LXQvdC40YLRjCDQstC90LXRiNC90LjQuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5INC/0YDQuCDRh9Cw0YHRgtC40YfQvdC+0Lwg0LrQu9C+0L3QuNGA0L7QstCw0L3QuNC4IgogCkBAIC0yNjY0LDExNyArMzQwNiwxMTggQEAKIG1zZ2lkICJVbmFibGUgdG8gY3JlYXRlICclcy5sb2NrJzogJXMiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0Ywgwqslcy5sb2Nrwrs6ICVzIgogCi0jOiBtZXJnZS5jOjQwCisjOiBtZXJnZS5jOjQxCiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgdGhlIGNhY2hlIgogbXNnc3RyICLRgdCx0L7QuSDRh9GC0LXQvdC40Y8g0LrRjdGI0LAiCiAKLSM6IG1lcmdlLmM6MTA1IGJ1aWx0aW4vYW0uYzoxOTQ2IGJ1aWx0aW4vYW0uYzoxOTgwIGJ1aWx0aW4vY2hlY2tvdXQuYzozODAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2MDggYnVpbHRpbi9jbG9uZS5jOjc2MworIzogbWVyZ2UuYzoxMDcgcmVyZXJlLmM6NzIwIGJ1aWx0aW4vYW0uYzoxODg3IGJ1aWx0aW4vYW0uYzoxOTIxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDYxIGJ1aWx0aW4vY2hlY2tvdXQuYzo4MTEgYnVpbHRpbi9jbG9uZS5jOjc3MworIzogYnVpbHRpbi9zdGFzaC5jOjI2NAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMINC90L7QstGL0Lkg0YTQsNC50Lsg0LjQvdC00LXQutGB0LAiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIyCiBtc2dpZCAiKGJhZCBjb21taXQpXG4iCiBtc2dzdHIgIijQv9C70L7RhdC+0Lkg0LrQvtC80LzQuNGCKVxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJhZGRfY2FjaGVpbmZvIGZhaWxlZCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCiBtc2dzdHIgItGB0LHQvtC5IGFkZF9jYWNoZWluZm8g0LTQu9GPINC/0YPRgtC4IMKrJXPCuzsg0L7RgtC80LXQvdCwINGB0LvQuNGP0L3QuNGPLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkX2NhY2hlaW5mbyBmYWlsZWQgdG8gcmVmcmVzaCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCiBtc2dzdHIgItGB0LHQvtC5INC+0LHQvdC+0LLQu9C10L3QuNGPIGFkZF9jYWNoZWluZm8g0LTQu9GPINC/0YPRgtC4IMKrJXPCuzsg0L7RgtC80LXQvdCwINGB0LvQuNGP0L3QuNGPLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6NDE1CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo0MzcKIG1zZ2lkICJlcnJvciBidWlsZGluZyB0cmVlcyIKIG1zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDQv9C+0YHRgtGA0L7QtdC90LjQuCDQtNC10YDQtdCy0YzQtdCyIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo4ODYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBhdGggJyVzJyVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINC/0YPRgtGMIMKrJXPCuyVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo4OTcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyAlcyB0byBtYWtlIHJvb20gZm9yIHN1YmRpcmVjdG9yeVxuIgogbXNnc3RyICLQo9C00LDQu9C10L3QuNC1ICVzLCDRh9GC0L7QsdGLINC+0YHQstC+0LHQvtC00LjRgtGMINC80LXRgdGC0L4g0LTQu9GPINC/0L7QtNC60LDRgtCw0LvQvtCz0L7QslxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5MTEgbWVyZ2UtcmVjdXJzaXZlLmM6OTMwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo4ODYgbWVyZ2UtcmVjdXJzaXZlLmM6OTA1CiBtc2dpZCAiOiBwZXJoYXBzIGEgRC9GIGNvbmZsaWN0PyIKIG1zZ3N0ciAiOiDQstC+0LfQvNC+0LbQvdC+LCDQutC+0L3RhNC70LjQutGCINC60LDRgtCw0LvQvtCz0L7Qsi/RhNCw0LnQu9C+0LI/IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5MjAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICclcyciCiBtc2dzdHIgItC+0YLQutCw0Lcg0L/QvtGC0LXRgNC4INC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80L7Qs9C+INGE0LDQudC70LAg0LIgwqslc8K7IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5NjIgYnVpbHRpbi9jYXQtZmlsZS5jOjM5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5MzYgYnVpbHRpbi9jYXQtZmlsZS5jOjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCAlcyAnJXMnIgogbXNnc3RyICLQvdC10LLQvtC30LzQvtC20L3QviDQv9GA0L7Rh9C40YLQsNGC0Ywg0L7QsdGK0LXQutGCICVzIMKrJXPCuyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTY0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmxvYiBleHBlY3RlZCBmb3IgJXMgJyVzJyIKIG1zZ3N0ciAi0L7QttC40LTQsNC10YLRgdGPINC00LLQvtC40YfQvdGL0Lkg0L7QsdGK0LXQutGCINC00LvRjyAlcyDCqyVzwrsiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk4OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyc6ICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMIMKrJXPCuzogJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk5OQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBzeW1saW5rICclcyc6ICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINGB0LjQvNCy0L7Qu9GM0L3Rg9GOINGB0YHRi9C70LrRgyDCqyVzwrs6ICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDA0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZG8gbm90IGtub3cgd2hhdCB0byBkbyB3aXRoICUwNm8gJXMgJyVzJyIKIG1zZ3N0ciAi0L3QtSDQv9C+0L3Rj9GC0L3Qviwg0YfRgtC+INC00LXQu9Cw0YLRjCDRgSAlMDZvICVzIMKrJXPCuyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTE5MQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTE3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChub3QgY2hlY2tlZCBvdXQpIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINGB0LvQuNGC0Ywg0L/QvtC00LzQvtC00YPQu9GMICVzICjRgdC+0YHRgtC+0Y/QvdC40LUg0L3QtSDQt9Cw0LHRgNCw0L3QvikiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjExOTgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjExODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAoY29tbWl0cyBub3QgcHJlc2VudCkiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YHQu9C40YLRjCDQv9C+0LTQvNC+0LTRg9C70YwgJXMgKNC90LXRgiDQutC+0LzQvNC40YLQvtCyKSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIwNQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChjb21taXRzIGRvbid0IGZvbGxvdyBtZXJnZS1iYXNlKSIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDRgdC70LjRgtGMINC/0L7QtNC80L7QtNGD0LvRjCAlcyAo0YMg0LrQvtC80LzQuNGC0L7QsiDQtNGA0YPQs9Cw0Y8g0LHQsNC30LAg0YHQu9C40Y/QvdC40Y8pIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjEzIG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMjUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjExOTcgbWVyZ2UtcmVjdXJzaXZlLmM6MTIwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIHRvIHRoZSBmb2xsb3dpbmcgY29tbWl0OiIKIG1zZ3N0ciAi0J/QtdGA0LXQvNC+0YLQutCwINCy0L/QtdGA0LXQtCDQv9C+0LTQvNC+0LTRg9C70Y8gJXMg0LTQviDRg9C60LDQt9Cw0L3QvdC+0LPQviDQutC+0LzQvNC40YLQsDoiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTYgbWVyZ2UtcmVjdXJzaXZlLmM6MTIyOAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIwMCBtZXJnZS1yZWN1cnNpdmUuYzoxMjEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgItCf0LXRgNC10LzQvtGC0LrQsCDQstC/0LXRgNC10LQg0L/QvtC00LzQvtC00YPQu9GPICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjUwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG1lcmdlIGZvbGxvd2luZyBjb21taXRzIG5vdCBmb3VuZCkiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YHQu9C40YLRjCDQv9C+0LTQvNC+0LTRg9C70YwgJXMgKNC90LXRgiDRg9C60LDQt9Cw0L3QvdGL0YUg0LrQvtC80LzQuNGC0L7QsiDQtNC70Y8g0YHQu9C40Y/QvdC40Y8pIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG5vdCBmYXN0LWZvcndhcmQpIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINGB0LvQuNGC0Ywg0L/QvtC00LzQvtC00YPQu9GMICVzICjQvdC10LvRjNC30Y8g0YHQtNC10LvQsNGC0Ywg0L/QtdGA0LXQvNC+0YLQutGDINCy0L/QtdGA0LXQtCkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNDAKIG1zZ2lkICJGb3VuZCBhIHBvc3NpYmxlIG1lcmdlIHJlc29sdXRpb24gZm9yIHRoZSBzdWJtb2R1bGU6XG4iCiBtc2dzdHIgItCd0LDQudC00LXQvdC+INCy0L7Qt9C80L7QttC90L7QtSDRgNCw0LfRgNC10YjQtdC90LjQtSDRgdC70LjRj9GC0LjRjyDQtNC70Y8g0L/QvtC00LzQvtC00YPQu9GPOlxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJZiB0aGlzIGlzIGNvcnJlY3Qgc2ltcGx5IGFkZCBpdCB0byB0aGUgaW5kZXggZm9yIGV4YW1wbGVcbiIKQEAgLTI3ODUsMTA5ICszNTI4LDEwOCBAQAogIndoaWNoIHdpbGwgYWNjZXB0IHRoaXMgc3VnZ2VzdGlvbi5cbiIKIG1zZ3N0ciAi0JXRgdC70Lgg0L7QvdC+INCy0LXRgNC90L7QtSwg0YLQviDQv9GA0L7RgdGC0L4g0LTQvtCx0LDQstGM0YLQtSDQtdCz0L4g0LIg0LjQvdC00LXQutGBLCDQvdCw0L/RgNC40LzQtdGAINGC0LDQujpcblxuICBnaXQgdXBkYXRlLWluZGV4IC0tY2FjaGVpbmZvIDE2MDAwMCAlcyBcIiVzXCJcblxu0YLQtdC8INGB0LDQvNGL0Lwg0L/RgNC40L3QuNC80LDRjyDRjdGC0L4g0L/RgNC10LTQv9C+0LvQvtC20LXQvdC40LUuXG4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNjcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobXVsdGlwbGUgbWVyZ2VzIGZvdW5kKSIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDRgdC70LjRgtGMINC/0L7QtNC80L7QtNGD0LvRjCAlcyAo0L3QsNC50LTQtdC90L4g0L3QtdGB0LrQvtC70YzQutC+INGB0LvQuNGP0L3QuNC5KSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTMyNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTMyNQogbXNnaWQgIkZhaWxlZCB0byBleGVjdXRlIGludGVybmFsIG1lcmdlIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC30LDQv9GD0YHRgtC40YLRjCDQstC90YPRgtGA0LXQvdC90LXQtSDRgdC70LjRj9C90LjQtSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTMzMQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTMzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gYWRkICVzIHRvIGRhdGFiYXNlIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC00L7QsdCw0LLQuNGC0YwgJXMg0LIg0LHQsNC30YMg0LTQsNC90L3Ri9GFIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzYzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG8tbWVyZ2luZyAlcyIKIG1zZ3N0ciAi0JDQstGC0L7RgdC70LjRj9C90LjQtSAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQzNAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJFcnJvcjogUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlczsgd3JpdGluZyB0byAlcyBpbnN0ZWFkLiIKIG1zZ3N0ciAi0J7RiNC40LHQutCwOiDQntGC0LrQsNC3INC/0L7RgtC10YDQuCDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNC+0LPQviDRhNCw0LnQu9CwICVzOyDQt9Cw0L/QuNGB0Ywg0LIgJXMg0LLQt9Cw0LzQtdC9LiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUwMQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzIGxlZnQgIgogImluIHRyZWUuIgogbXNnc3RyICLQmtCe0J3QpNCb0JjQmtCiICglcy/Rg9C00LDQu9C10L3QuNC1KTogJXMg0YPQtNCw0LvQtdC90L4g0LIgJXMg0LggJXMg0LIgJXMuINCS0LXRgNGB0LjRjyAlcyDQuNC3ICVzINC+0YHRgtCw0LLQu9C10L3QsCDQsiDQtNC10YDQtdCy0LUuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTA2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgdG8gJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgIgogImxlZnQgaW4gdHJlZS4iCiBtc2dzdHIgItCa0J7QndCk0JvQmNCa0KIgKCVzL9GD0LTQsNC70LXQvdC40LUpOiAlcyDRg9C00LDQu9C10L3QviDQsiAlcyDQuCDQvtGCICVzINC00L4gJXMg0LIgJXMuINCS0LXRgNGB0LjRjyAlcyDQuNC3ICVzINC+0YHRgtCw0LLQu9C10L3QsCDQsiDQtNC10YDQtdCy0LUuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTEzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgbGVmdCAiCiAiaW4gdHJlZSBhdCAlcy4iCiBtc2dzdHIgItCa0J7QndCk0JvQmNCa0KIgKCVzL9GD0LTQsNC70LXQvdC40LUpOiAlcyDRg9C00LDQu9C10L3QviDQsiAlcyDQuCAlcyDQsiAlcy4g0JLQtdGA0YHQuNGPICVzINC40LcgJXMg0L7RgdGC0LDQstC70LXQvdCwINCyINC00LXRgNC10LLQtSDQvdCwICVzLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUxOAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ3NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIHRvICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzICIKICJsZWZ0IGluIHRyZWUgYXQgJXMuIgogbXNnc3RyICLQmtCe0J3QpNCb0JjQmtCiICglcy/Rg9C00LDQu9C10L3QuNC1KTogJXMg0YPQtNCw0LvQtdC90L4g0LIgJXMg0Lgg0L7RgiAlcyDQtNC+ICVzINCyICVzLiDQktC10YDRgdC40Y8gJXMg0LjQtyAlcyDQvtGB0YLQsNCy0LvQtdC90LAg0LIg0LTQtdGA0LXQstC1INC90LAgJXMuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTUyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTA5CiBtc2dpZCAicmVuYW1lIgogbXNnc3RyICLQv9C10YDQtdC40LzQtdC90L7QstCw0L3QuNC1IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTUyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTA5CiBtc2dpZCAicmVuYW1lZCIKIG1zZ3N0ciAi0L/QtdGA0LXQuNC80LXQvdC+0LLQsNC90L4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MDYgbWVyZ2UtcmVjdXJzaXZlLmM6MTc2MiBtZXJnZS1yZWN1cnNpdmUuYzoyMzk0Ci0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMTI5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTg5IG1lcmdlLXJlY3Vyc2l2ZS5jOjI0NDUgbWVyZ2UtcmVjdXJzaXZlLmM6MzA4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgJXMiCi1tc2dzdHIgItCe0YLQutCw0Lcg0L/QvtGC0LXRgNC4INC40LfQvNC10L3QtdC90L3QvtCz0L4g0YTQsNC50LvQsCAlcyIKK21zZ3N0ciAi0J7RgtC60LDQtyDQv9C+0YLQtdGA0Lgg0LjQt9C80LXQvdGR0L3QvdC+0LPQviDRhNCw0LnQu9CwICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjIwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTk5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXMsIGV2ZW4gdGhvdWdoIGl0J3MgaW4gdGhlIHdheS4iCittc2dzdHIgItCe0YLQutCw0Lcg0L/QvtGC0LXRgNC4INC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80L7Qs9C+INGE0LDQudC70LAgJXMsINC00LDQttC1INGBINGD0YfQtdGC0L7QvCDQtdCz0L4g0L3QsNC70LjRh9C40Y8uIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUIChyZW5hbWUvYWRkKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gIEFkZGVkICVzIGluICVzIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2ODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgYSBkaXJlY3RvcnkgaW4gJXMgYWRkaW5nIGFzICVzIGluc3RlYWQiCiBtc2dzdHIgIiVzIOKAlCDRjdGC0L4g0LrQsNGC0LDQu9C+0LMg0LIgJXMsINC00L7QsdCw0LLQu9GP0LXQvCDQutCw0LogJXMg0LLQvNC10YHRgtC+INGN0YLQvtCz0L4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MjUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlczsgYWRkaW5nIGFzICVzIGluc3RlYWQiCiBtc2dzdHIgItCe0YLQutCw0Lcg0L/QvtGC0LXRgNC4INC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80L7Qs9C+INGE0LDQudC70LAgJXM7INC00L7QsdCw0LLQu9C10L3QuNC1INC60LDQuiAlcyDQstC30LDQvNC10L0uIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjUxCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzExCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAocmVuYW1lL3JlbmFtZSk6IFJlbmFtZSBcIiVzXCItPlwiJXNcIiBpbiBicmFuY2ggXCIlc1wiIHJlbmFtZSAiCiAiXCIlc1wiLT5cIiVzXCIgaW4gXCIlc1wiJXMiCiBtc2dzdHIgItCa0J7QndCk0JvQmNCa0KIgKNC/0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40LUv0L/QtdGA0LXQuNC80LXQvdC+0LLQsNC90LjQtSk6INCf0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40LUgwqslc8K74oaSwqslc8K7INCyINCy0LXRgtC60LUgwqslc8K7INC4INC/0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40LUgwqslc8K74oaSwqslc8K7INCyINCy0LXRgtC60LUgwqslc8K7JXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NTYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MTYKIG1zZ2lkICIgKGxlZnQgdW5yZXNvbHZlZCkiCiBtc2dzdHIgIiAo0L7RgdGC0LDQstC70LXQvdC+INC90LXRgNCw0LfRgNC10YjQtdC90L3Ri9C8KSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTcyMAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTgyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJDT05GTElDVCAocmVuYW1lL3JlbmFtZSk6IFJlbmFtZSAlcy0+JXMgaW4gJXMuIFJlbmFtZSAlcy0+JXMgaW4gJXMiCiBtc2dzdHIgItCa0J7QndCk0JvQmNCa0KIgKNC/0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40LUv0L/QtdGA0LXQuNC80LXQvdC+0LLQsNC90LjQtSk6INCf0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40LUgwqslc8K74oaSwqslc8K7INCyINCy0LXRgtC60LUgwqslc8K7INC4INC/0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40LUgwqslc8K74oaSwqslc8K7INCyINCy0LXRgtC60LUgwqslc8K7IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzU5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIlJlbmFtaW5nICVzIHRvICVzIGFuZCAlcyB0byAlcyBpbnN0ZWFkIgotbXNnc3RyICLQn9C10YDQtdC40LzQtdC90L7QstGL0LLQsNGOICVzINCyICVzINC4ICVzINCyICVzINCy0LzQtdGB0YLQviDRjdGC0L7Qs9C+IgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzcxCi0jLCBjLWZvcm1hdAotbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXMsIGV2ZW4gdGhvdWdoIGl0J3MgaW4gdGhlIHdheS4iCi1tc2dzdHIgItCe0YLQutCw0Lcg0L/QvtGC0LXRgNC4INC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80L7Qs9C+INGE0LDQudC70LAgJXMsINC00LDQttC1INGBINGD0YfQtdGC0L7QvCDQtdCz0L4g0L3QsNC70LjRh9C40Y8uIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxOTc3CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoZGlyZWN0b3J5IHJlbmFtZSBzcGxpdCk6IFVuY2xlYXIgd2hlcmUgdG8gcGxhY2UgJXMgYmVjYXVzZSAiCkBAIC0yODk1LDEzNCArMzYzNywxNTcgQEAKICJnZXR0aW5nIGEgbWFqb3JpdHkgb2YgdGhlIGZpbGVzLiIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDA5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoaW1wbGljaXQgZGlyIHJlbmFtZSk6IEV4aXN0aW5nIGZpbGUvZGlyIGF0ICVzIGluIHRoZSB3YXkgb2YgIgogImltcGxpY2l0IGRpcmVjdG9yeSByZW5hbWUocykgcHV0dGluZyB0aGUgZm9sbG93aW5nIHBhdGgocykgdGhlcmU6ICVzLiIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDE5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoaW1wbGljaXQgZGlyIHJlbmFtZSk6IENhbm5vdCBtYXAgbW9yZSB0aGFuIG9uZSBwYXRoIHRvICVzOyAiCiAiaW1wbGljaXQgZGlyZWN0b3J5IHJlbmFtZXMgdHJpZWQgdG8gcHV0IHRoZXNlIHBhdGhzIHRoZXJlOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyMTExCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAocmVuYW1lL3JlbmFtZSk6IFJlbmFtZSBkaXJlY3RvcnkgJXMtPiVzIGluICVzLiBSZW5hbWUgZGlyZWN0b3J5ICIKICIlcy0+JXMgaW4gJXMiCiBtc2dzdHIgIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjM1NgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjQwOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiV0FSTklORzogQXZvaWRpbmcgYXBwbHlpbmcgJXMgLT4gJXMgcmVuYW1lIHRvICVzLCBiZWNhdXNlICVzIGl0c2VsZiB3YXMgIgogInJlbmFtZWQuIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI3NjIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9hZGQpOiBSZW5hbWUgJXMtPiVzIGluICVzLiAlcyBhZGRlZCBpbiAlcyIKLW1zZ3N0ciAi0JrQntCd0KTQm9CY0JrQoiAo0L/QtdGA0LXQuNC80LXQvdC+0LLQsNC90LjQtS/QtNC+0LHQsNCy0LvQtdC90LjQtSk6INCf0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40LUgwqslc8K74oaSwqslc8K7INCyINCy0LXRgtC60LUgwqslc8K7INC4INC00L7QsdCw0LLQu9C10L3QuNC1IMKrJXPCuyDQsiDQstC10YLQutC1IMKrJXPCuyIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjc3NwotIywgYy1mb3JtYXQKLW1zZ2lkICJBZGRpbmcgbWVyZ2VkICVzIgotbXNnc3RyICLQlNC+0LHQsNCy0LvQtdC90LjQtSDRgdC70LjRgtC+0LPQviAlcyIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjc4NCBtZXJnZS1yZWN1cnNpdmUuYzozMTMyCi0jLCBjLWZvcm1hdAotbXNnaWQgIkFkZGluZyBhcyAlcyBpbnN0ZWFkIgotbXNnc3RyICLQlNC+0LHQsNCy0LvQtdC90LjQtSDQstC80LXRgdGC0L4g0Y3RgtC+0LPQviDQutCw0LogJXMiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5NDEKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgb2JqZWN0ICVzIgogbXNnc3RyICLQvdC10LLQvtC30LzQvtC20L3QviDQv9GA0L7Rh9C40YLQsNGC0Ywg0L7QsdGK0LXQutGCIMKrJXPCuyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjk0NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjkzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgJXMgaXMgbm90IGEgYmxvYiIKIG1zZ3N0ciAi0L7QsdGK0LXQutGCICVzINC90LUg0Y/QstC70Y/QtdGC0YHRjyDQtNCy0L7QuNGH0L3Ri9C8INC+0LHRitC10LrRgtC+0LwiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMTMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5OTYKIG1zZ2lkICJtb2RpZnkiCiBtc2dzdHIgItC40LfQvNC10L3QtdC90LjQtSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAxMworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjk5NgogbXNnaWQgIm1vZGlmaWVkIgogbXNnc3RyICLQuNC30LzQtdC90LXQvdC+IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDA4CiBtc2dpZCAiY29udGVudCIKIG1zZ3N0ciAi0YHQvtC00LXRgNC20LjQvNC+0LUiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMzEKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMTIKIG1zZ2lkICJhZGQvYWRkIgogbXNnc3RyICLQtNC+0LHQsNCy0LvQtdC90LjQtS/QtNC+0LHQsNCy0LvQtdC90LjQtSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA3NgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGVkICVzIChtZXJnZWQgc2FtZSBhcyBleGlzdGluZykiCiBtc2dzdHIgItCf0YDQvtC/0YPRgdC6ICVzICjRgdC70LjRgtGLINC+0LTQuNC90LDQutC+0LLRi9C1INC40LfQvNC10L3QtdC90LjRjyDQutCw0Log0YHRg9GJ0LXRgdGC0LLRg9GO0YnQuNC1KSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA5OCBnaXQtc3VibW9kdWxlLnNoOjg2NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA1NyBnaXQtc3VibW9kdWxlLnNoOjkzNwogbXNnaWQgInN1Ym1vZHVsZSIKIG1zZ3N0ciAi0L/QvtC00LzQvtC00YPQu9GMIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDk5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUICglcyk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgogbXNnc3RyICLQmtCe0J3QpNCb0JjQmtCiICglcyk6INCa0L7QvdGE0LvQuNC60YIg0YHQu9C40Y/QvdC40Y8g0LIgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMjEKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nIGFzICVzIGluc3RlYWQiCittc2dzdHIgItCU0L7QsdCw0LLQu9C10L3QuNC1INCy0LzQtdGB0YLQviDRjdGC0L7Qs9C+INC60LDQuiAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzE3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGF0aCB1cGRhdGVkOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCBpbiAlczsgIgorIm1vdmluZyBpdCB0byAlcy4iCittc2dzdHIgIiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzE3MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGZpbGUgbG9jYXRpb24pOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCIKKyIgaW4gJXMsIHN1Z2dlc3RpbmcgaXQgc2hvdWxkIHBlcmhhcHMgYmUgbW92ZWQgdG8gJXMuIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMxNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhdGggdXBkYXRlZDogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgd2FzIHJlbmFtZWQgaW4iCisiICVzOyBtb3ZpbmcgaXQgdG8gJXMuIgorbXNnc3RyICIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChmaWxlIGxvY2F0aW9uKTogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgIgorIndhcyByZW5hbWVkIGluICVzLCBzdWdnZXN0aW5nIGl0IHNob3VsZCBwZXJoYXBzIGJlIG1vdmVkIHRvICVzLiIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzIgogbXNnc3RyICLQo9C00LDQu9C10L3QuNC1ICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjQ3CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzE3CiBtc2dpZCAiZmlsZS9kaXJlY3RvcnkiCiBtc2dzdHIgItGE0LDQudC7L9C60LDRgtCw0LvQvtCzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjUzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzIyCiBtc2dpZCAiZGlyZWN0b3J5L2ZpbGUiCiBtc2dzdHIgItC60LDRgtCw0LvQvtCzL9GE0LDQudC7IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjYwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzI5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMpOiBUaGVyZSBpcyBhIGRpcmVjdG9yeSB3aXRoIG5hbWUgJXMgaW4gJXMuIEFkZGluZyAlcyBhcyAlcyIKIG1zZ3N0ciAi0JrQntCd0KTQm9CY0JrQoiAoJXMpOiDQo9C20LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIg0LrQsNGC0LDQu9C+0LMg0YEg0LjQvNC10L3QtdC8IMKrJXPCuyDQsiDCqyVzwrsuINCU0L7QsdCw0LLQu9C10L3QuNC1IMKrJXPCuyDQutCw0Logwqslc8K7IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjY5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkFkZGluZyAlcyIKIG1zZ3N0ciAi0JTQvtCx0LDQstC70LXQvdC40LUgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMDMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKGFkZC9hZGQpOiBNZXJnZSBjb25mbGljdCBpbiAlcyIKK21zZ3N0ciAiIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKICIgICVzIgogbXNnc3RyICIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMTQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzOTYKIG1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUhIgogbXNnc3RyICLQo9C20LUg0L7QsdC90L7QstC70LXQvdC+ISIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMyMworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJtZXJnaW5nIG9mIHRyZWVzICVzIGFuZCAlcyBmYWlsZWQiCiBtc2dzdHIgItGB0LHQvtC5INGB0LvQuNGP0L3QuNGPINC00LXRgNC10LLRjNC10LIgwqslc8K7INC4IMKrJXPCuyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQyMgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUwNAogbXNnaWQgIk1lcmdpbmc6IgogbXNnc3RyICLQodC70LjRj9C90LjQtToiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MzUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yOiIKIG1zZ2lkX3BsdXJhbCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yczoiCkBAIC0zMDMxLDQxICszNzk2LDE4MCBAQAogbXNnc3RyWzJdICLQvdCw0LnQtNC10L3QviAldSDQvtCx0YnQuNGFINC/0YDQtdC00LrQvtCyOiIKIG1zZ3N0clszXSAi0L3QsNC50LTQtdC90L4gJXUg0L7QsdGJ0LjRhSDQv9GA0LXQtNC60L7QsjoiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0NzQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NTYKIG1zZ2lkICJtZXJnZSByZXR1cm5lZCBubyBjb21taXQiCiBtc2dzdHIgItGB0LvQuNGP0L3QuNC1INC90LUg0LLQtdGA0L3Rg9C70L4g0LrQvtC80LzQuNGCIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNTQwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0LfQvtCx0YDQsNGC0Ywg0L7QsdGK0LXQutGCIMKrJXPCuyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzU1NiBidWlsdGluL21lcmdlLmM6Njg5IGJ1aWx0aW4vbWVyZ2UuYzo4NDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM2MzggYnVpbHRpbi9tZXJnZS5jOjcwMiBidWlsdGluL21lcmdlLmM6ODczCiBtc2dpZCAiVW5hYmxlIHRvIHdyaXRlIGluZGV4LiIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQtdGC0YHRjyDQt9Cw0L/QuNGB0LDRgtGMINC40L3QtNC10LrRgS4iCiAKLSM6IG5vdGVzLW1lcmdlLmM6Mjc0CisjOiBtaWR4LmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGktcGFjay1pbmRleCBmaWxlICVzIGlzIHRvbyBzbWFsbCIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGktcGFjay1pbmRleCBzaWduYXR1cmUgMHglMDh4IGRvZXMgbm90IG1hdGNoIHNpZ25hdHVyZSAweCUwOHgiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpLXBhY2staW5kZXggdmVyc2lvbiAlZCBub3QgcmVjb2duaXplZCIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGFzaCB2ZXJzaW9uICV1IGRvZXMgbm90IG1hdGNoIgorbXNnc3RyICLQstC10YDRgdC40Y8g0YXQtdGILdGB0YPQvNC80YsgJXUg0L3QtSDRgdC+0L7RgtCy0LXRgtGB0LLRg9C10YIiCisKKyM6IG1pZHguYzoxMDYKK21zZ2lkICJpbnZhbGlkIGNodW5rIG9mZnNldCAodG9vIGxhcmdlKSIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTMwCittc2dpZCAidGVybWluYXRpbmcgbXVsdGktcGFjay1pbmRleCBjaHVuayBpZCBhcHBlYXJzIGVhcmxpZXIgdGhhbiBleHBlY3RlZCIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTQzCittc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIHBhY2stbmFtZSBjaHVuayIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTQ1Cittc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIE9JRCBmYW5vdXQgY2h1bmsiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjE0NworbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBPSUQgbG9va3VwIGNodW5rIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzoxNDkKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgb2JqZWN0IG9mZnNldHMgY2h1bmsiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHBhY2sgbmFtZXMgb3V0IG9mIG9yZGVyOiAnJXMnIGJlZm9yZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzoyMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHBhY2staW50LWlkOiAldSAoJXUgdG90YWwgcGFja3MpIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzoyNTgKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHN0b3JlcyBhIDY0LWJpdCBvZmZzZXQsIGJ1dCBvZmZfdCBpcyB0b28gc21hbGwiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjI4NgorbXNnaWQgImVycm9yIHByZXBhcmluZyBwYWNrZmlsZSBmcm9tIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gYWRkIHBhY2tmaWxlICclcyciCittc2dzdHIgIiIKKworIzogbWlkeC5jOjQ2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrLWluZGV4ICclcyciCittc2dzdHIgIiIKKworIzogbWlkeC5jOjU1NworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbG9jYXRlIG9iamVjdCAlZCBpbiBwYWNrZmlsZSIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6OTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbGVhciBtdWx0aS1wYWNrLWluZGV4IGF0ICVzIgorbXNnc3RyICIiCisKKyM6IG1pZHguYzoxMDQ4Cittc2dpZCAiTG9va2luZyBmb3IgcmVmZXJlbmNlZCBwYWNrZmlsZXMiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjEwNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9pZCBmYW5vdXQgb3V0IG9mIG9yZGVyOiBmYW5vdXRbJWRdID0gJTxQUkl4MzI+ID4gJTxQUkl4MzI+ID0gZmFub3V0WyVkXSIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTA2NworbXNnaWQgIlZlcmlmeWluZyBPSUQgb3JkZXIgaW4gTUlEWCIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTA3NgorIywgYy1mb3JtYXQKK21zZ2lkICJvaWQgbG9va3VwIG91dCBvZiBvcmRlcjogb2lkWyVkXSA9ICVzID49ICVzID0gb2lkWyVkXSIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTA5NQorbXNnaWQgIlNvcnRpbmcgb2JqZWN0cyBieSBwYWNrZmlsZSIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTEwMQorbXNnaWQgIlZlcmlmeWluZyBvYmplY3Qgb2Zmc2V0cyIKK21zZ3N0ciAiIgorCisjOiBtaWR4LmM6MTExNworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbG9hZCBwYWNrIGVudHJ5IGZvciBvaWRbJWRdID0gJXMiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjExMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxvYWQgcGFjay1pbmRleCBmb3IgcGFja2ZpbGUgJXMiCittc2dzdHIgIiIKKworIzogbWlkeC5jOjExMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5jb3JyZWN0IG9iamVjdCBvZmZzZXQgZm9yIG9pZFslZF0gPSAlczogJTxQUkl4NjQ+ICE9ICU8UFJJeDY0PiIKK21zZ3N0ciAiIgorCisjOiBuYW1lLWhhc2guYzo1MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsYXp5X2RpciB0aHJlYWQ6ICVzIgorbXNnc3RyICIiCisKKyM6IG5hbWUtaGFzaC5jOjU1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgorbXNnc3RyICIiCisKKyM6IG5hbWUtaGFzaC5jOjU1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gam9pbiBsYXp5X25hbWUgdGhyZWFkOiAlcyIKK21zZ3N0ciAiIgorCisjOiBub3Rlcy1tZXJnZS5jOjI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIHByZXZpb3VzIG5vdGVzIG1lcmdlICglcyBleGlzdHMpLlxuIgogIlBsZWFzZSwgdXNlICdnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXQnIG9yICdnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCcgdG8gY29tbWl0L2Fib3J0IHRoZSBwcmV2aW91cyBtZXJnZSBiZWZvcmUgeW91IHN0YXJ0IGEgbmV3IG5vdGVzIG1lcmdlLiIKIG1zZ3N0ciAi0JLRiyDQvdC1INC30LDQutC+0L3Rh9C40LvQuCDQv9GA0LXQtNGL0LTRg9GJ0LXQtSDRgdC70LjRj9C90LjQtSDQt9Cw0LzQtdGC0L7QuiAoJXMg0YHRg9GJ0LXRgdGC0LLRg9C10YIpLlxu0JfQsNC/0YPRgdGC0LjRgtC1IMKrZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0wrsg0LjQu9C4IMKrZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnTCuyDQtNC70Y8g0LrQvtC80LzQuNGC0LAg0LjQu9C4INC+0YLQvNC10L3RiyDQv9GA0LXQtNGL0LTRg9GJ0LXQs9C+INGB0LvQuNGP0L3QuNGPINC4INC30LDQv9GD0YHQutCwINC90L7QstC+0LPQviDRgdC70LjRj9C90LjRjyDQt9Cw0LzQtdGC0L7Qui4iCiAKLSM6IG5vdGVzLW1lcmdlLmM6MjgxCisjOiBub3Rlcy1tZXJnZS5jOjI4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbm90ZXMgbWVyZ2UgKCVzIGV4aXN0cykuIgogbXNnc3RyICLQktGLINC90LUg0LfQsNC60L7QvdGH0LjQu9C4INC/0YDQtdC00YvQtNGD0YnQtdC1INGB0LvQuNGP0L3QuNC1INC30LDQvNC10YLQvtC6ICglcyDRgdGD0YnQtdGB0YLQstGD0LXRgikuIgogCi0jOiBub3Rlcy11dGlscy5jOjQ1CisjOiBub3Rlcy11dGlscy5jOjQ2CiBtc2dpZCAiQ2Fubm90IGNvbW1pdCB1bmluaXRpYWxpemVkL3VucmVmZXJlbmNlZCBub3RlcyB0cmVlIgogbXNnc3RyICLQndC10LvRjNC30Y8g0LfQsNC60L7QvNC80LjRgtC40YLRjCDQvdC10LjQvdC40YbQuNCw0LvQuNC30LjRgNC+0LLQsNC90L3QvtC1INC40LvQuCDQvdC1INC40LzQtdGO0YnQtdC1INGB0YHRi9C70L7QuiDQtNC10YDQtdCy0L4g0LfQsNC80LXRgtC+0LoiCiAKLSM6IG5vdGVzLXV0aWxzLmM6MTA0CisjOiBub3Rlcy11dGlscy5jOjEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgbm90ZXMucmV3cml0ZU1vZGUgdmFsdWU6ICclcyciCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvRjNC90L7QtSDQt9C90LDRh9C10L3QuNC1IG5vdGVzLnJld3JpdGVNb2RlOiDCqyVzwrsiCiAKLSM6IG5vdGVzLXV0aWxzLmM6MTE0CisjOiBub3Rlcy11dGlscy5jOjExNQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byByZXdyaXRlIG5vdGVzIGluICVzIChvdXRzaWRlIG9mIHJlZnMvbm90ZXMvKSIKIG1zZ3N0ciAi0J7RgtC60LDQtyDQsiDQv9C10YDQtdC30LDQv9C40YHQuCDQt9Cw0LzQtdGC0L7QuiDQsiAlcyAo0LfQsCDQv9GA0LXQtNC10LvQsNC80LggcmVmcy9ub3Rlcy8pIgpAQCAtMzA3Myw3ICszOTc3LDcgQEAKICMuIFRSQU5TTEFUT1JTOiBUaGUgZmlyc3QgJXMgaXMgdGhlIG5hbWUgb2YKICMuIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSwgdGhlIHNlY29uZCAlcyBpcwogIy4gaXRzIHZhbHVlLgotIzogbm90ZXMtdXRpbHMuYzoxNDQKKyM6IG5vdGVzLXV0aWxzLmM6MTQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCAlcyB2YWx1ZTogJyVzJyIKIG1zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9GM0L3QvtC1INC30L3QsNGH0LXQvdC40LUg0L/QtdGA0LXQvNC10L3QvdC+0LkgJXM6IMKrJXPCuyIKQEAgLTMwODMsMzU4ICszOTg3LDcwNiBAQAogbXNnaWQgImludmFsaWQgb2JqZWN0IHR5cGUgXCIlc1wiIgogbXNnc3RyICIiCiAKLSM6IG9iamVjdC5jOjE3MworIzogb2JqZWN0LmM6MTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBpcyBhICVzLCBub3QgYSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBvYmplY3QuYzoyMzMKKyM6IG9iamVjdC5jOjIzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgJXMgaGFzIHVua25vd24gdHlwZSBpZCAlZCIKIG1zZ3N0ciAiIgogCi0jOiBvYmplY3QuYzoyNDYKKyM6IG9iamVjdC5jOjI0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2Ugb2JqZWN0OiAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0LfQvtCx0YDQsNGC0Ywg0L7QsdGK0LXQutGCOiAlcyIKIAotIzogb2JqZWN0LmM6MjY2IG9iamVjdC5jOjI3NworIzogb2JqZWN0LmM6MjY3IG9iamVjdC5jOjI3OAogIywgYy1mb3JtYXQKLW1zZ2lkICJzaGExIG1pc21hdGNoICVzIgotbXNnc3RyICIiCittc2dpZCAiaGFzaCBtaXNtYXRjaCAlcyIKK21zZ3N0ciAi0L3QtdGB0L7QvtGC0LLQtdGC0YHRgtCy0LjQtSDRhdC10Ygt0YHRg9C80LzRiyAlcyIKIAotIzogcGFja2ZpbGUuYzo1NjMKKyM6IHBhY2tmaWxlLmM6NjE3CiBtc2dpZCAib2Zmc2V0IGJlZm9yZSBlbmQgb2YgcGFja2ZpbGUgKGJyb2tlbiAuaWR4PykiCiBtc2dzdHIgItGB0LTQstC40LMg0LTQviDQutC+0L3RhtCwINGE0LDQudC70LAg0L/QsNC60LXRgtCwICjQstC+0LfQvNC+0LbQvdC+LCDQv9C+0LLRgNC10LbQtNGR0L0g0YTQsNC50LsgLmlkeD8pIgogCi0jOiBwYWNrZmlsZS5jOjE3NDUKKyM6IHBhY2tmaWxlLmM6MTg2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJvZmZzZXQgYmVmb3JlIHN0YXJ0IG9mIHBhY2sgaW5kZXggZm9yICVzIChjb3JydXB0IGluZGV4PykiCiBtc2dzdHIgItGB0LTQstC40LMg0LTQviDQvdCw0YfQsNC70LAg0LjQvdC00LXQutGB0LAg0L/QsNC60LXRgtCwINC00LvRjyAlcyAo0L/QvtCy0YDQtdC20LTRkdC9INC40L3QtNC10LrRgT8pIgogCi0jOiBwYWNrZmlsZS5jOjE3NDkKKyM6IHBhY2tmaWxlLmM6MTg3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJvZmZzZXQgYmV5b25kIGVuZCBvZiBwYWNrIGluZGV4IGZvciAlcyAodHJ1bmNhdGVkIGluZGV4PykiCiBtc2dzdHIgItGB0LTQstC40LMg0LfQsCDQv9GA0LXQtNC10LvQsNC80Lgg0LjQvdC00LXQutGB0LAg0L/QsNC60LXRgtCwINC00LvRjyAlcyAo0L7QsdGA0LXQt9Cw0L0g0LjQvdC00LXQutGBPykiCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo2NzIKKyM6IHBhcnNlLW9wdGlvbnMuYzozOAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZXF1aXJlcyBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAlcyIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgOiBpbmNvbXBhdGlibGUgd2l0aCBzb21ldGhpbmcgZWxzZSIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6OTIgcGFyc2Utb3B0aW9ucy5jOjk2IHBhcnNlLW9wdGlvbnMuYzozMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdGFrZXMgbm8gdmFsdWUiCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzbid0IGF2YWlsYWJsZSIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBub24tbmVnYXRpdmUgaW50ZWdlciB2YWx1ZSB3aXRoIGFuIG9wdGlvbmFsIGsvbS9nIHN1ZmZpeCIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6Mzg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFtYmlndW91cyBvcHRpb246ICVzIChjb3VsZCBiZSAtLSVzJXMgb3IgLS0lcyVzKSIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6NDIzIHBhcnNlLW9wdGlvbnMuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIHlvdSBtZWFuIGAtLSVzYCAod2l0aCB0d28gZGFzaGVzID8pIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gc3dpdGNoIGAlYyciCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg2MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG5vbi1hc2NpaSBvcHRpb24gaW4gc3RyaW5nOiBgJXMnIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4ODcKIG1zZ2lkICIuLi4iCiBtc2dzdHIgIuKApiIKIAotIzogcGFyc2Utb3B0aW9ucy5jOjY5MQorIzogcGFyc2Utb3B0aW9ucy5jOjkwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1c2FnZTogJXMiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0L3QuNC1OiAlcyIKIAogIy4gVFJBTlNMQVRPUlM6IHRoZSBjb2xvbiBoZXJlIHNob3VsZCBhbGlnbiB3aXRoIHRoZQogIy4gb25lIGluICJ1c2FnZTogJXMiIHRyYW5zbGF0aW9uLgotIzogcGFyc2Utb3B0aW9ucy5jOjY5NworIzogcGFyc2Utb3B0aW9ucy5jOjkxMgogIywgYy1mb3JtYXQKIG1zZ2lkICIgICBvcjogJXMiCiBtc2dzdHIgIiAgICAgICAgICDQuNC70Lg6ICVzIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzAwCisjOiBwYXJzZS1vcHRpb25zLmM6OTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlcyIKIG1zZ3N0ciAiICAgICAgICAgICAgJXMiCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo3MzkKKyM6IHBhcnNlLW9wdGlvbnMuYzo5NTQKIG1zZ2lkICItTlVNIgogbXNnc3RyICIt0JrQntCb0JjQp9CV0KHQotCS0J4iCiAKLSM6IHBhcnNlLW9wdGlvbnMtY2IuYzo0NAorIzogcGFyc2Utb3B0aW9ucy5jOjk2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbGlhcyBvZiAtLSVzIgorbXNnc3RyICIiCisKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzoyMCBwYXJzZS1vcHRpb25zLWNiLmM6MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKK21zZ3N0ciAiIgorCisjOiBwYXJzZS1vcHRpb25zLWNiLmM6NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIGV4cGlyYXRpb24gZGF0ZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHBhcnNlLW9wdGlvbnMtY2IuYzoxMTIKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIFwiYWx3YXlzXCIsIFwiYXV0b1wiLCBvciBcIm5ldmVyXCIiCittc2dzdHIgIiIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjEzMCBwYXJzZS1vcHRpb25zLWNiLmM6MTQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAnJXMnIgogbXNnc3RyICLQndC10L/RgNCw0LLQuNC70YzQvdC+0LUg0LjQvNGPINC+0LHRitC10LrRgtCwIMKrJXPCuyIKIAotIzogcGF0aC5jOjg5MgorIzogcGF0aC5jOjg5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgbWFrZSAlcyB3cml0YWJsZSBieSBncm91cCIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0LXQtNC+0YHRgtCw0LLQuNGC0Ywg0LTQvtGB0YLRg9C/INC6ICVzINC90LAg0LfQsNC/0LjRgdGMIgogCi0jOiBwYXRoc3BlYy5jOjEyOQorIzogcGF0aHNwZWMuYzoxMjgKIG1zZ2lkICJFc2NhcGUgY2hhcmFjdGVyICdcXCcgbm90IGFsbG93ZWQgYXMgbGFzdCBjaGFyYWN0ZXIgaW4gYXR0ciB2YWx1ZSIKIG1zZ3N0ciAi0KPQv9GA0LDQstC70Y/RjtGJ0LjQuSDRgdC40LzQstC+0LsgwqtcXMK7INC90LUg0YDQsNC30YDQtdGI0LXQvSDQutCw0Log0L/QvtGB0LvQtdC00L3QuNC5INGB0LjQvNCy0L7QuyDQsiDQt9C90LDRh9C10L3QuNC4IGF0dHIiCiAKLSM6IHBhdGhzcGVjLmM6MTQ3CisjOiBwYXRoc3BlYy5jOjE0NgogbXNnaWQgIk9ubHkgb25lICdhdHRyOicgc3BlY2lmaWNhdGlvbiBpcyBhbGxvd2VkLiIKIG1zZ3N0ciAi0KDQsNC30YDQtdGI0LXQvSDRgtC+0LvRjNC60L4g0L7QtNC40L0g0YHQv9C10YbQuNGE0LjQutCw0YLQvtGAIMKrYXR0cjrCuy4iCiAKLSM6IHBhdGhzcGVjLmM6MTUwCisjOiBwYXRoc3BlYy5jOjE0OQogbXNnaWQgImF0dHIgc3BlYyBtdXN0IG5vdCBiZSBlbXB0eSIKIG1zZ3N0ciAi0YHQv9C10YbQuNGE0LjQutCw0YLQvtGAIGF0dHIg0L3QtSDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0L/Rg9GB0YLQvtC5IgogCi0jOiBwYXRoc3BlYy5jOjE5MworIzogcGF0aHNwZWMuYzoxOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBhdHRyaWJ1dGUgbmFtZSAlcyIKIG1zZ3N0ciAi0L3QtdC00L7Qv9GD0YHRgtC40LzQvtC1INC40LzRjyDQsNGC0YDQuNCx0YPRgtCwICVzIgogCi0jOiBwYXRoc3BlYy5jOjI1OAorIzogcGF0aHNwZWMuYzoyNTcKIG1zZ2lkICJnbG9iYWwgJ2dsb2InIGFuZCAnbm9nbG9iJyBwYXRoc3BlYyBzZXR0aW5ncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICLQs9C70L7QsdCw0LvRjNC90YvQtSDQvtC/0YbQuNC4INGB0L/QtdGG0LjRhNC40LrQsNGC0L7RgNC+0LIg0L/Rg9GC0LggwqtnbG9iwrsg0Lggwqtub2dsb2LCuyDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0LTQvdC+0LLRgNC10LzQtdC90L3QviIKIAotIzogcGF0aHNwZWMuYzoyNjUKKyM6IHBhdGhzcGVjLmM6MjY0CiBtc2dpZCAiIgogImdsb2JhbCAnbGl0ZXJhbCcgcGF0aHNwZWMgc2V0dGluZyBpcyBpbmNvbXBhdGlibGUgd2l0aCBhbGwgb3RoZXIgZ2xvYmFsICIKICJwYXRoc3BlYyBzZXR0aW5ncyIKIG1zZ3N0ciAi0LPQu9C+0LHQsNC70YzQvdCw0Y8g0L7Qv9GG0LjRjyDRgdC/0LXRhtC40YTQuNC60LDRgtC+0YDQsCDQv9GD0YLQuCDCq2xpdGVyYWzCuyDQvdC1INGB0L7QstC80LXRgdGC0LjQvNCwINGBINC00YDRg9Cz0LjQvNC4INCz0LvQvtCx0LDQu9GM0L3Ri9C80Lgg0YHQv9C10YbQuNGE0LjQutCw0YLQvtGA0LDQvNC4INC00L7RgdGC0YPQv9CwIgogCi0jOiBwYXRoc3BlYy5jOjMwNQorIzogcGF0aHNwZWMuYzozMDQKIG1zZ2lkICJpbnZhbGlkIHBhcmFtZXRlciBmb3IgcGF0aHNwZWMgbWFnaWMgJ3ByZWZpeCciCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90YvQuSDQv9Cw0YDQsNC80LXRgtGAINC00LvRjyDQvNCw0LPQuNGH0LXRgdC60L7Qs9C+INGB0LvQvtCy0LAgwqtwcmVmaXjCuyDQsiDRgdC/0LXRhtC40YTQuNC60LDRgtC+0YDQtSDQv9GD0YLQuCAiCiAKLSM6IHBhdGhzcGVjLmM6MzI2CisjOiBwYXRoc3BlYy5jOjMyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHBhdGhzcGVjIG1hZ2ljICclLipzJyBpbiAnJXMnIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdC+0LUg0LzQsNCz0LjRh9C10YHQutC+0LUg0YHQu9C+0LLQviDCqyUuKnPCuyDQsiDRgdC/0LXRhtC40YTQuNC60LDRgtC+0YDQtSDQv9GD0YLQuCDCqyVzwrsiCiAKLSM6IHBhdGhzcGVjLmM6MzMxCisjOiBwYXRoc3BlYy5jOjMzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJNaXNzaW5nICcpJyBhdCB0aGUgZW5kIG9mIHBhdGhzcGVjIG1hZ2ljIGluICclcyciCiBtc2dzdHIgItCf0YDQvtC/0YPRidC10L3QviDCqynCuyDQsiDQutC+0L3RhtC1INC80LDQs9C40YfQtdGB0LrQvtCz0L4g0YHQu9C+0LLQsCDRgdC/0LXRhtC40YTQuNC60LDRgtC+0YDQsCDQv9GD0YLQuCDCqyVzwrsiCiAKLSM6IHBhdGhzcGVjLmM6MzY5CisjOiBwYXRoc3BlYy5jOjM2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmltcGxlbWVudGVkIHBhdGhzcGVjIG1hZ2ljICclYycgaW4gJyVzJyIKIG1zZ3N0ciAi0J3QtdGA0LXQsNC70LjQt9C+0LLQsNC90L3QvtC1INC80LDQs9C40YfQtdGB0LrQvtC1INGB0LvQvtCy0L4gwqslY8K7INGB0L/QtdGG0LjRhNC40LrQsNGC0L7RgNCwINC/0YPRgtC4IMKrJXPCuyIKIAotIzogcGF0aHNwZWMuYzo0MjgKKyM6IHBhdGhzcGVjLmM6NDI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAnbGl0ZXJhbCcgYW5kICdnbG9iJyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICIlczogwqtsaXRlcmFswrsg0LggwqtnbG9iwrsg0L3QtSDRgdC+0LLQvNC10YHRgtC40LzRiyIKIAotIzogcGF0aHNwZWMuYzo0NDEKKyM6IHBhdGhzcGVjLmM6NDQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAnJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiJXM6IMKrJXPCuyDQstC90LUg0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyIKIAotIzogcGF0aHNwZWMuYzo1MTUKKyM6IHBhdGhzcGVjLmM6NTE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgKG1uZW1vbmljOiAnJWMnKSIKIG1zZ3N0ciAiwqslc8K7ICjQvNC90LXQvNC+0L3QuNC60LA6IMKrJWPCuykiCiAKLSM6IHBhdGhzcGVjLmM6NTI1CisjOiBwYXRoc3BlYy5jOjUyNAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogcGF0aHNwZWMgbWFnaWMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvbW1hbmQ6ICVzIgogbXNnc3RyICIlczog0LzQsNCz0LjRh9C10YHQutC40LUg0YHQu9C+0LLQsCDQsiDRgdC/0LXRhtC40YTQuNC60LDRgtC+0YDQtSDQv9GD0YLQuCDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0Y7RgtGB0Y8g0LrQvtC80LDQvdC00L7QuTogJXMiCiAKLSM6IHBhdGhzcGVjLmM6NTkyCisjOiBwYXRoc3BlYy5jOjU5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCiBtc2dzdHIgItGB0L/QtdGG0LjRhNC40LrQsNGC0L7RgCDQv9GD0YLQuCDCqyVzwrsg0L3QsNGF0L7QtNC40YLRgdGPINC30LAg0YHQuNC80LLQvtC70LjRh9C10YHQutC+0Lkg0YHRgdGL0LvQutC+0LkiCiAKLSM6IHBrdC1saW5lLmM6MTA0CisjOiBwa3QtbGluZS5jOjkyCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZsdXNoIHBhY2tldCIKK21zZ3N0ciAiIgorCisjOiBwa3QtbGluZS5jOjk5Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGRlbGltIHBhY2tldCIKK21zZ3N0ciAiIgorCisjOiBwa3QtbGluZS5jOjEwNgogbXNnaWQgImZsdXNoIHBhY2tldCB3cml0ZSBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogcGt0LWxpbmUuYzoxNDIgcGt0LWxpbmUuYzoyMjgKKyM6IHBrdC1saW5lLmM6MTQ2IHBrdC1saW5lLmM6MjMyCiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGltcG9zc2libHkgbG9uZyBsaW5lIgogbXNnc3RyICIiCiAKLSM6IHBrdC1saW5lLmM6MTU4IHBrdC1saW5lLmM6MTYwCisjOiBwa3QtbGluZS5jOjE2MiBwa3QtbGluZS5jOjE2NAogbXNnaWQgInBhY2tldCB3cml0ZSB3aXRoIGZvcm1hdCBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogcGt0LWxpbmUuYzoxOTIKKyM6IHBrdC1saW5lLmM6MTk2CiBtc2dpZCAicGFja2V0IHdyaXRlIGZhaWxlZCAtIGRhdGEgZXhjZWVkcyBtYXggcGFja2V0IHNpemUiCiBtc2dzdHIgIiIKIAotIzogcGt0LWxpbmUuYzoxOTkgcGt0LWxpbmUuYzoyMDYKKyM6IHBrdC1saW5lLmM6MjAzIHBrdC1saW5lLmM6MjEwCiBtc2dpZCAicGFja2V0IHdyaXRlIGZhaWxlZCIKIG1zZ3N0ciAiIgogCi0jOiBwa3QtbGluZS5jOjI5MQorIzogcGt0LWxpbmUuYzoyOTUKIG1zZ2lkICJyZWFkIGVycm9yIgogbXNnc3RyICIiCiAKLSM6IHBrdC1saW5lLmM6Mjk5CisjOiBwa3QtbGluZS5jOjMwMwogbXNnaWQgInRoZSByZW1vdGUgZW5kIGh1bmcgdXAgdW5leHBlY3RlZGx5IgogbXNnc3RyICIiCiAKLSM6IHBrdC1saW5lLmM6MzI3CisjOiBwa3QtbGluZS5jOjMzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIGxpbmUgbGVuZ3RoIGNoYXJhY3RlcjogJS40cyIKIG1zZ3N0ciAiIgogCi0jOiBwa3QtbGluZS5jOjMzNyBwa3QtbGluZS5jOjM0MgorIzogcGt0LWxpbmUuYzozNDEgcGt0LWxpbmUuYzozNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBsaW5lIGxlbmd0aCAlZCIKIG1zZ3N0ciAiIgogCi0jOiBwcmV0dHkuYzo5NjIKKyM6IHBrdC1saW5lLmM6MzYyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW90ZSBlcnJvcjogJXMiCittc2dzdHIgItC+0YjQuNCx0LrQsCDQstC90LXRiNC90LXQs9C+INGA0LXQv9C+0LfQuNGC0L7RgNC40Y86ICVzIgorCisjOiBwcmVsb2FkLWluZGV4LmM6MTE5Cittc2dpZCAiUmVmcmVzaGluZyBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBwcmVsb2FkLWluZGV4LmM6MTM4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGhyZWFkZWQgbHN0YXQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHByZXR0eS5jOjk2NgogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAtLXByZXR0eSBmb3JtYXQiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YDQsNC30L7QsdGA0LDRgtGMINGE0L7RgNC80LDRgiDQtNC70Y8gLS1wcmV0dHkiCiAKLSM6IHJhbmdlLWRpZmYuYzo0OAorIzogcmFuZ2UtZGlmZi5jOjU2CiBtc2dpZCAiY291bGQgbm90IHN0YXJ0IGBsb2dgIgogbXNnc3RyICIiCiAKLSM6IHJhbmdlLWRpZmYuYzo1MQorIzogcmFuZ2UtZGlmZi5jOjU5CiBtc2dpZCAiY291bGQgbm90IHJlYWQgYGxvZ2Agb3V0cHV0IgogbXNnc3RyICIiCiAKLSM6IHJhbmdlLWRpZmYuYzo2NiBzZXF1ZW5jZXIuYzo0NTQwCisjOiByYW5nZS1kaWZmLmM6NzQgc2VxdWVuY2VyLmM6NDg5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0ICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YDQsNC30L7QsdGA0LDRgtGMINC60L7QvNC80LjRgiDCqyVzwrsiCiAKLSM6IHJhbmdlLWRpZmYuYzoxOTYKKyM6IHJhbmdlLWRpZmYuYzoyMjQKIG1zZ2lkICJmYWlsZWQgdG8gZ2VuZXJhdGUgZGlmZiIKIG1zZ3N0ciAiIgogCi0jOiByYW5nZS1kaWZmLmM6NDIxIHJhbmdlLWRpZmYuYzo0MjMKKyM6IHJhbmdlLWRpZmYuYzo0NTUgcmFuZ2UtZGlmZi5jOjQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgbG9nIGZvciAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNTc5CisjOiByZWFkLWNhY2hlLmM6NjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIndpbGwgbm90IGFkZCBmaWxlIGFsaWFzICclcycgKCclcycgYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgpIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzo2OTYKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGFuIGVtcHR5IGJsb2IgaW4gdGhlIG9iamVjdCBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW4gb25seSBhZGQgcmVndWxhciBmaWxlcywgc3ltYm9saWMgbGlua3Mgb3IgZ2l0LWRpcmVjdG9yaWVzIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzo3MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBoYXZlIGEgY29tbWl0IGNoZWNrZWQgb3V0IgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzo3NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluZGV4IGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6Nzk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhZGQgJyVzJyB0byBpbmRleCIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6ODA1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICclcyciCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjEzMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBhcHBlYXJzIGFzIGJvdGggYSBmaWxlIGFuZCBhcyBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MTQ5OQorbXNnaWQgIlJlZnJlc2ggaW5kZXgiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE2MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImluZGV4LnZlcnNpb24gc2V0LCBidXQgdGhlIHZhbHVlIGlzIGludmFsaWQuXG4iCiAiVXNpbmcgdmVyc2lvbiAlaSIKIG1zZ3N0ciAiaW5kZXgudmVyc2lvbiDRg9C60LDQt9Cw0L0sINC90L4g0LfQvdCw0YfQtdC90LjQtSDQvdC10LTQtdC50YHRgtCy0LjRgtC10LvRjNC90L7QtS5cbtCY0YHQv9C+0LvRjNC30YPRjiDQstC10YDRgdC40Y4gJWkiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNTg5CisjOiByZWFkLWNhY2hlLmM6MTYyMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiR0lUX0lOREVYX1ZFUlNJT04gc2V0LCBidXQgdGhlIHZhbHVlIGlzIGludmFsaWQuXG4iCiAiVXNpbmcgdmVyc2lvbiAlaSIKIG1zZ3N0ciAiR0lUX0lOREVYX1ZFUlNJT04g0YPQutCw0LfQsNC9LCDQvdC+INC30L3QsNGH0LXQvdC40LUg0L3QtdC00LXQudGB0YLQstC40YLQtdC70YzQvdC+0LUuXG7QmNGB0L/QvtC70YzQt9GD0Y4g0LLQtdGA0YHQuNGOICVpIgogCi0jOiByZWFkLWNhY2hlLmM6MjU4MCBzZXF1ZW5jZXIuYzo0NTAzIHdyYXBwZXIuYzo2NTggYnVpbHRpbi9tZXJnZS5jOjEwODMKKyM6IHJlYWQtY2FjaGUuYzoxNjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaWduYXR1cmUgMHglMDh4IgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxNjgyCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBpbmRleCB2ZXJzaW9uICVkIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxNjkxCittc2dpZCAiYmFkIGluZGV4IGZpbGUgc2hhMSBzaWduYXR1cmUiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5kZXggdXNlcyAlLjRzIGV4dGVuc2lvbiwgd2hpY2ggd2UgZG8gbm90IHVuZGVyc3RhbmQiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE3MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJS40cyBleHRlbnNpb24iCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE3NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBpbmRleCBlbnRyeSBmb3JtYXQgMHglMDh4IgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBuYW1lIGZpZWxkIGluIHRoZSBpbmRleCwgbmVhciBwYXRoICclcyciCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjE4MzMKK21zZ2lkICJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBpbiBpbmRleCIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MTgzNgorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGFnZSBlbnRyaWVzIGZvciBtZXJnZWQgZmlsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVub3JkZXJlZCBzdGFnZSBlbnRyaWVzIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoxOTQ2IHJlYWQtY2FjaGUuYzoyMjM0IHJlcmVyZS5jOjU2NSByZXJlcmUuYzo1OTkgcmVyZXJlLmM6MTExMQorIzogYnVpbHRpbi9hZGQuYzo0NjAgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzggYnVpbHRpbi9jaGVja291dC5jOjM1OAorIzogYnVpbHRpbi9jaGVja291dC5jOjY3MiBidWlsdGluL2NoZWNrb3V0LmM6MTA2MCBidWlsdGluL2NsZWFuLmM6OTU1CisjOiBidWlsdGluL2NvbW1pdC5jOjM0NCBidWlsdGluL2RpZmYtdHJlZS5jOjEyMCBidWlsdGluL2dyZXAuYzo0OTgKKyM6IGJ1aWx0aW4vbXYuYzoxNDUgYnVpbHRpbi9yZXNldC5jOjI0NSBidWlsdGluL3JtLmM6MjcxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MzMwCittc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IgorbXNnc3RyICLRhNCw0LnQuyDQuNC90LTQtdC60YHQsCDQv9C+0LLRgNC10LbQtNC10L0iCisKKyM6IHJlYWQtY2FjaGUuYzoyMDg3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGpvaW4gbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGluZGV4IGZpbGUgb3BlbiBmYWlsZWQiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIxMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbm5vdCBzdGF0IHRoZSBvcGVuIGluZGV4IgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbmRleCBmaWxlIHNtYWxsZXIgdGhhbiBleHBlY3RlZCIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6MjE0NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG1hcCBpbmRleCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9pbmRleF9leHRlbnNpb25zIHRocmVhZDogJXMiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGpvaW4gbG9hZF9pbmRleF9leHRlbnNpb25zIHRocmVhZDogJXMiCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIyNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZyZXNoZW4gc2hhcmVkIGluZGV4ICclcyciCittc2dzdHIgIiIKKworIzogcmVhZC1jYWNoZS5jOjIyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYnJva2VuIGluZGV4LCBleHBlY3QgJXMgaW4gJXMsIGdvdCAlcyIKK21zZ3N0ciAiIgorCisjOiByZWFkLWNhY2hlLmM6Mjk4OSB3cmFwcGVyLmM6NjU4IGJ1aWx0aW4vbWVyZ2UuYzoxMTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjbG9zZSAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQutGA0YvRgtGMIMKrJXPCuyIKIAotIzogcmVhZC1jYWNoZS5jOjI2NTMgc2VxdWVuY2VyLmM6MjExMyBzZXF1ZW5jZXIuYzozMzc0CisjOiByZWFkLWNhY2hlLmM6MzA5MiBzZXF1ZW5jZXIuYzoyMzU0IHNlcXVlbmNlci5jOjM4MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN0YXQgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0Ywgc3RhdCDQtNC70Y8gwqslc8K7IgogCi0jOiByZWFkLWNhY2hlLmM6MjY2NgorIzogcmVhZC1jYWNoZS5jOjMxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZ2l0IGRpcjogJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0LrQsNGC0LDQu9C+0LMgZ2l0OiAlcyIKIAotIzogcmVhZC1jYWNoZS5jOjI2NzgKKyM6IHJlYWQtY2FjaGUuYzozMTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bmxpbms6ICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLRgdC+0LXQtNC40L3QuNGC0Yw6ICVzIgogCisjOiByZWFkLWNhY2hlLmM6MzE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZml4IHBlcm1pc3Npb24gYml0cyBvbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlYWQtY2FjaGUuYzozMjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW5ub3QgZHJvcCB0byBzdGFnZSAjMCIKK21zZ3N0ciAiIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5yZWNvZ25pemVkIHNldHRpbmcgJXMgZm9yIG9wdGlvbiByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4gSWdub3JpbmcuIgorbXNnc3RyICLQvdC10YDQsNGB0L/QvtC30L3QsNC90L3QsNGPINC90LDRgdGC0YDQvtC50LrQsCAlcyDQtNC70Y8g0L7Qv9GG0LjQuCByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4g0JjQs9C90L7RgNC40YDRg9GOLiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MzUKK21zZ2lkICIiCisiXG4iCisiQ29tbWFuZHM6XG4iCisicCwgcGljayA8Y29tbWl0PiA9IHVzZSBjb21taXRcbiIKKyJyLCByZXdvcmQgPGNvbW1pdD4gPSB1c2UgY29tbWl0LCBidXQgZWRpdCB0aGUgY29tbWl0IG1lc3NhZ2VcbiIKKyJlLCBlZGl0IDxjb21taXQ+ID0gdXNlIGNvbW1pdCwgYnV0IHN0b3AgZm9yIGFtZW5kaW5nXG4iCisicywgc3F1YXNoIDxjb21taXQ+ID0gdXNlIGNvbW1pdCwgYnV0IG1lbGQgaW50byBwcmV2aW91cyBjb21taXRcbiIKKyJmLCBmaXh1cCA8Y29tbWl0PiA9IGxpa2UgXCJzcXVhc2hcIiwgYnV0IGRpc2NhcmQgdGhpcyBjb21taXQncyBsb2cgbWVzc2FnZVxuIgorIngsIGV4ZWMgPGNvbW1hbmQ+ID0gcnVuIGNvbW1hbmQgKHRoZSByZXN0IG9mIHRoZSBsaW5lKSB1c2luZyBzaGVsbFxuIgorImIsIGJyZWFrID0gc3RvcCBoZXJlIChjb250aW51ZSByZWJhc2UgbGF0ZXIgd2l0aCAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJylcbiIKKyJkLCBkcm9wIDxjb21taXQ+ID0gcmVtb3ZlIGNvbW1pdFxuIgorImwsIGxhYmVsIDxsYWJlbD4gPSBsYWJlbCBjdXJyZW50IEhFQUQgd2l0aCBhIG5hbWVcbiIKKyJ0LCByZXNldCA8bGFiZWw+ID0gcmVzZXQgSEVBRCB0byBhIGxhYmVsXG4iCisibSwgbWVyZ2UgWy1DIDxjb21taXQ+IHwgLWMgPGNvbW1pdD5dIDxsYWJlbD4gWyMgPG9uZWxpbmU+XVxuIgorIi4gICAgICAgY3JlYXRlIGEgbWVyZ2UgY29tbWl0IHVzaW5nIHRoZSBvcmlnaW5hbCBtZXJnZSBjb21taXQnc1xuIgorIi4gICAgICAgbWVzc2FnZSAob3IgdGhlIG9uZWxpbmUsIGlmIG5vIG9yaWdpbmFsIG1lcmdlIGNvbW1pdCB3YXNcbiIKKyIuICAgICAgIHNwZWNpZmllZCkuIFVzZSAtYyA8Y29tbWl0PiB0byByZXdvcmQgdGhlIGNvbW1pdCBtZXNzYWdlLlxuIgorIlxuIgorIlRoZXNlIGxpbmVzIGNhbiBiZSByZS1vcmRlcmVkOyB0aGV5IGFyZSBleGVjdXRlZCBmcm9tIHRvcCB0byBib3R0b20uXG4iCittc2dzdHIgIlxu0JrQvtC80LDQvdC00Ys6XG5wLCBwaWNrIDzQutC+0LzQvNC40YI+ID0g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC60L7QvNC80LjRglxuciwgcmV3b3JkIDzQutC+0LzQvNC40YI+ID0g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC60L7QvNC80LjRgiwg0L3QviDQuNC30LzQtdC90LjRgtGMINGB0L7QvtCx0YnQtdC90LjQtSDQutC+0LzQvNC40YLQsFxuZSwgZWRpdCA80LrQvtC80LzQuNGCPiA9INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQutC+0LzQvNC40YIsINC90L4g0L7RgdGC0LDQvdC+0LLQuNGC0YzRgdGPINC00LvRjyDQuNGB0L/RgNCw0LLQu9C10L3QuNGPXG5zLCBzcXVhc2ggPNC60L7QvNC80LjRgj4gPSDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LrQvtC80LzQuNGCLCDQvdC+INC+0LHRitC10LTQuNC90LjRgtGMINGBINC/0YDQtdC00YvQtNGD0YnQuNC8INC60L7QvNC80LjRgtC+0LxcbmYsIGZpeHVwIDzQutC+0LzQvNC40YI+ID0g0LrQsNC6IMKrc3F1YXNowrssINC90L4g0L/RgNC+0L/Rg9GB0YLQuNGC0Ywg0YHQvtC+0LHRidC10L3QuNC1INC60L7QvNC80LjRgtCwXG54LCBleGVjIDzQutC+0LzQsNC90LTQsD4gPSDQstGL0L/QvtC70L3QuNGC0Ywg0LrQvtC80LDQvdC00YMgKNC+0YHRgtCw0YLQvtC6INGB0YLRgNC+0LrQuCkg0YEg0L/QvtC80L7RidGM0Y4g0LrQvtC80LDQvdC00L3QvtC5INC+0LHQvtC70L7Rh9C60LhcbmIsIGJyZWFrID0g0L7RgdGC0LDQvdC+0LLQuNGC0YzRgdGPINC30LTQtdGB0YwgKNC/0YDQvtC00L7Qu9C20LjRgtGMINGBINC/0L7QvNC+0YnRjNGOIMKrZ2l0IHJlYmFzZSAtLWNvbnRpbnVlwrspXG5kLCBkcm9wIDzQutC+0LzQvNC40YI+ID0g0YPQtNCw0LvQuNGC0Ywg0LrQvtC80LzQuNGCXG5sLCBsYWJlbCA80LzQtdGC0LrQsD4gPSDQtNCw0YLRjCDQuNC80Y8g0YLQtdC60YPRidC10LzRgyBIRUFEXG50LCByZXNldCA80LzQtdGC0LrQsD4gPSDRgdCx0YDQvtGB0LjRgtGMIEhFQUQg0Log0YPQutCw0LfQsNC90L3QvtC5INC80LXRgtC60LVcbm0sIG1lcmdlIFstQyA80LrQvtC80LzQuNGCPiB8IC1jIDzQutC+0LzQvNC40YI+XSA80LzQtdGC0LrQsD4gWyMgPNGB0YLRgNC+0LrQsD5dXG4uINGB0L7Qt9C00LDRgtGMINGB0LvQuNGP0L3QuNC1INC40YHQv9C+0LvRjNC30YPRjyDRgdC+0L7QsdGJ0LXQvdC40LUg0LrQvtC80LzQuNGC0LAg0L7RgNC40LPQuNC90LDQu9GM0L3QvtCz0L5cbi4g0YHQu9C40Y/QvdC40Y8gKNC40LvQuCDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YPQutCw0LfQsNC90L3Rg9GOINGB0YLRgNC+0LrRgywg0LXRgdC70Lgg0L7RgNC40LPQuNC90LDQu9GM0L3QvtC1XG4uINGB0LvQuNGP0L3QuNC1INC90LUg0YPQutCw0LfQsNC90L4pLiDQmNGB0L/QvtC70YzQt9GD0LnRgtC1IC1jIDzQutC+0LzQvNC40YI+INGH0YLQvtCx0Ysg0LjQt9C80LXQvdC40YLRjFxuLiDRgdC+0L7QsdGJ0LXQvdC40LUg0LrQvtC80LzQuNGC0LAuXG5cbtCt0YLQuCDRgdGC0YDQvtC60Lgg0LzQvtC20L3QviDQv9C10YDQtdC80LXRidCw0YLRjDsg0L7QvdC4INCx0YPQtNGD0YIg0LLRi9C/0L7Qu9C90LXQvdGLINGB0LLQtdGA0YXRgyDQstC90LjQty5cbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmQpIgorbXNnaWRfcGx1cmFsICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZHMpIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKK21zZ3N0clsyXSAiIgorbXNnc3RyWzNdICIiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjY1IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNzMKK21zZ2lkICIiCisiXG4iCisiRG8gbm90IHJlbW92ZSBhbnkgbGluZS4gVXNlICdkcm9wJyBleHBsaWNpdGx5IHRvIHJlbW92ZSBhIGNvbW1pdC5cbiIKK21zZ3N0ciAiXG7QndC1INGD0LTQsNC70Y/QudGC0LUg0YHRgtGA0L7QutC4LiDQmNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrZHJvcMK7LCDRh9GC0L7QsdGLINGP0LLQvdC+INGD0LTQsNC70LjRgtGMINC60L7QvNC80LjRgi5cbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NjggZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE3NworbXNnaWQgIiIKKyJcbiIKKyJJZiB5b3UgcmVtb3ZlIGEgbGluZSBoZXJlIFRIQVQgQ09NTUlUIFdJTEwgQkUgTE9TVC5cbiIKK21zZ3N0ciAiXG7QldGB0LvQuCDQstGLINGD0LTQsNC70LjRgtC1INGB0YLRgNC+0LrRgyDQt9C00LXRgdGMLCDRgtC+INCj0JrQkNCX0JDQndCd0KvQmSDQmtCe0JzQnNCY0KIg0JHQo9CU0JXQoiDQo9Ci0JXQoNCv0J0uXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjc0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MTYKK21zZ2lkICIiCisiXG4iCisiWW91IGFyZSBlZGl0aW5nIHRoZSB0b2RvIGZpbGUgb2YgYW4gb25nb2luZyBpbnRlcmFjdGl2ZSByZWJhc2UuXG4iCisiVG8gY29udGludWUgcmViYXNlIGFmdGVyIGVkaXRpbmcsIHJ1bjpcbiIKKyIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCisiXG4iCittc2dzdHIgIlxu0JLRiyDRgdC10LnRh9Cw0YEg0YDQtdC00LDQutGC0LjRgNGD0LXRgtC1INGE0LDQudC7INGB0L4g0YHQv9C40YHQutC+0Lwg0LTQtdC7INC00LvRjyDQuNC90YLQtdGA0LDQutGC0LjQstC90L7Qs9C+INC/0LXRgNC10LzQtdGJ0LXQvdC40Y8uXG7QlNC70Y8g0L/RgNC+0LTQvtC70LbQtdC90LjRjyDQv9C10YDQtdC80LXRidC10L3QuNGPLCDQv9C+0YHQu9C1INGA0LXQtNCw0LrRgtC40YDQvtCy0LDQvdC40Y8g0YTQsNC50LvQsCDQt9Cw0L/Rg9GB0YLQuNGC0LU6XG4gICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG5cbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NzkgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg5MworbXNnaWQgIiIKKyJcbiIKKyJIb3dldmVyLCBpZiB5b3UgcmVtb3ZlIGV2ZXJ5dGhpbmcsIHRoZSByZWJhc2Ugd2lsbCBiZSBhYm9ydGVkLlxuIgorIlxuIgorbXNnc3RyICJcbtCd0L4g0LXRgdC70Lgg0LLRiyDRg9C00LDQu9C40YLQtSDQstGB0LUsINGC0L4g0L/RgNC+0YbQtdGB0YEg0L/QtdGA0LXQvNC10YnQtdC90LjRjyDQsdGD0LTQtdGCINCx0YPQtNC10YIg0L/RgNC10YDQstCw0L0uXG5cbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6ODUgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwMAorbXNnaWQgIk5vdGUgdGhhdCBlbXB0eSBjb21taXRzIGFyZSBjb21tZW50ZWQgb3V0IgorbXNnc3RyICLQl9Cw0LzQtdGC0YzRgtC1LCDRh9GC0L4g0L/Rg9GB0YLRi9C1INC60L7QvNC80LjRgtGLINC30LDQutC+0LzQvNC10L3RgtC40YDQvtCy0LDQvdC90YsiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjEwNSByZXJlcmUuYzo0ODUgcmVyZXJlLmM6NjkyIHNlcXVlbmNlci5jOjMzMzkKKyM6IHNlcXVlbmNlci5jOjMzNjUgc2VxdWVuY2VyLmM6NDk5NiBidWlsdGluL2ZzY2suYzozNTYgYnVpbHRpbi9yZWJhc2UuYzoyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHdyaXRlICclcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCDCqyVzwrsiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcycuIgorbXNnc3RyICIiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjE3MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCisiRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCittc2dzdHIgItCS0L3QuNC80LDQvdC40LU6INC90LXQutC+0YLQvtGA0YvQtSDQutC+0LzQvNC40YLRiyDQvNC+0LPQu9C4INCx0YvRgtGMINC+0YLQsdGA0L7RiNC10L3RiyDQv9C+INC+0YjQuNCx0LrQtS5cbtCe0YLQsdGA0L7RiNC10L3QvdGL0LUg0LrQvtC80LzQuNGC0YsgKNC+0YIg0L3QvtCy0YvRhSDQuiDRgdGC0LDRgNGL0LwpOlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRvIGF2b2lkIHRoaXMgbWVzc2FnZSwgdXNlIFwiZHJvcFwiIHRvIGV4cGxpY2l0bHkgcmVtb3ZlIGEgY29tbWl0LlxuIgorIlxuIgorIlVzZSAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgdG8gY2hhbmdlIHRoZSBsZXZlbCBvZiB3YXJuaW5ncy5cbiIKKyJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCisiXG4iCittc2dzdHIgItCn0YLQvtCx0Ysg0LjQt9Cx0LXQttCw0YLRjCDRjdGC0L7Qs9C+INGB0L7QvtCx0YnQtdC90LjRjywg0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2Ryb3DCuyDRh9GC0L7QsdGLINGP0LLQvdC+INGD0LTQsNC70LjRgtGMINC60L7QvNC80LjRgi5cblxu0JjRgdC/0L7Qu9GM0LfRg9C50YLQtSDQvtC/0YbQuNGOIMKrZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVja8K7INC00LvRjyDQuNC30LzQtdC90LXQvdC40Y8g0LrQvtC70LjRh9C10YHRgtCy0LAg0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjQuS5cbtCS0L7Qt9C80L7QttC90YvQtSDQt9C90LDRh9C10L3QuNGPOiBpZ25vcmUsIHdhcm4sIGVycm9yLlxuXG4iCisKICM6IHJlZnMuYzoxOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBvYmplY3QhIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzo1NzkKKyM6IHJlZnMuYzo1OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgZGFuZ2xpbmcgc3ltcmVmICVzIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzo1ODEgcmVmLWZpbHRlci5jOjIwNjcKKyM6IHJlZnMuYzo1OTkgcmVmLWZpbHRlci5jOjE5ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgYnJva2VuIHJlZiAlcyIKIG1zZ3N0ciAi0LjQs9C90L7RgNC40YDRg9GOINC90LXQv9GA0LDQstC40LvRjNC90YPRjiDRgdGB0YvQu9C60YMgJXMiCiAKLSM6IHJlZnMuYzo2ODUKKyM6IHJlZnMuYzo3MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZzogJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywgwqslc8K7INC00LvRjyDQt9Cw0L/QuNGB0Lg6ICVzIgogCi0jOiByZWZzLmM6Njk1IHJlZnMuYzo3NDYKKyM6IHJlZnMuYzo3NDQgcmVmcy5jOjc5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCByZWYgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiByZWZzLmM6NzAxCisjOiByZWZzLmM6NzUwCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZiAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzo3MDYKKyM6IHJlZnMuYzo3NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBvYmplY3QgSUQgd2hlbiB3cml0aW5nICclcyciCiBtc2dzdHIgIiIKIAotIzogcmVmcy5jOjcxNCBzZXF1ZW5jZXIuYzozODUgc2VxdWVuY2VyLmM6MjM2NiBzZXF1ZW5jZXIuYzoyNDkyCi0jOiBzZXF1ZW5jZXIuYzoyNTA2IHNlcXVlbmNlci5jOjI3MzMgc2VxdWVuY2VyLmM6NDUwMSBzZXF1ZW5jZXIuYzo0NTY0Ci0jOiB3cmFwcGVyLmM6NjU2CisjOiByZWZzLmM6NzYzIHNlcXVlbmNlci5jOjQwMCBzZXF1ZW5jZXIuYzoyNjc5IHNlcXVlbmNlci5jOjI4MDUKKyM6IHNlcXVlbmNlci5jOjI4MTkgc2VxdWVuY2VyLmM6MzA3NiBzZXF1ZW5jZXIuYzo0OTEzIHdyYXBwZXIuYzo2NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIHRvICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCDQsiDCqyVzwrsiCiAKLSM6IHJlZnMuYzo3NDEgc2VxdWVuY2VyLmM6NDQ5OSBzZXF1ZW5jZXIuYzo0NTU4IHdyYXBwZXIuYzoyMjUgd3JhcHBlci5jOjM5NQotIzogYnVpbHRpbi9hbS5jOjc4MAorIzogcmVmcy5jOjc5MCB3cmFwcGVyLmM6MjI1IHdyYXBwZXIuYzozOTUgYnVpbHRpbi9hbS5jOjcxNQorIzogYnVpbHRpbi9yZWJhc2UuYzo5OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDCqyVzwrsg0LTQu9GPINC30LDQv9C40YHQuCIKIAotIzogcmVmcy5jOjc0OAorIzogcmVmcy5jOjc5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG9iamVjdCBJRCB3aGVuIGRlbGV0aW5nICclcyciCiBtc2dzdHIgIiIKIAotIzogcmVmcy5jOjg3OQorIzogcmVmcy5jOjkyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2cgZm9yIHJlZiAlcyBoYXMgZ2FwIGFmdGVyICVzIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzo4ODUKKyM6IHJlZnMuYzo5MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9nIGZvciByZWYgJXMgdW5leHBlY3RlZGx5IGVuZGVkIG9uICVzIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzo5NDMKKyM6IHJlZnMuYzo5OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9nIGZvciAlcyBpcyBlbXB0eSIKIG1zZ3N0ciAiIgogCi0jOiByZWZzLmM6MTAzNQorIzogcmVmcy5jOjEwODUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmdXNpbmcgdG8gdXBkYXRlIHJlZiB3aXRoIGJhZCBuYW1lICclcyciCiBtc2dzdHIgIiIKIAotIzogcmVmcy5jOjExMTEKKyM6IHJlZnMuYzoxMTYxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVwZGF0ZV9yZWYgZmFpbGVkIGZvciByZWYgJyVzJzogJXMiCiBtc2dzdHIgIiIKIAotIzogcmVmcy5jOjE4NTMKKyM6IHJlZnMuYzoxOTQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpcGxlIHVwZGF0ZXMgZm9yIHJlZiAnJXMnIG5vdCBhbGxvd2VkIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzoxODg1CisjOiByZWZzLmM6MTk3NAogbXNnaWQgInJlZiB1cGRhdGVzIGZvcmJpZGRlbiBpbnNpZGUgcXVhcmFudGluZSBlbnZpcm9ubWVudCIKIG1zZ3N0ciAi0L7QsdC90L7QstC70LXQvdC40LUg0YHRgdGL0LvQvtC6INC30LDQv9GA0LXRidC10L3QviDQsiDQuNC30L7Qu9C40YDQvtCy0LDQvdC90L7QvCDQvtC60YDRg9C20LXQvdC40LgiCiAKLSM6IHJlZnMuYzoxOTgxIHJlZnMuYzoyMDExCisjOiByZWZzLmM6MjA3MCByZWZzLmM6MjEwMAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGV4aXN0czsgY2Fubm90IGNyZWF0ZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHJlZnMuYzoxOTg3IHJlZnMuYzoyMDIyCisjOiByZWZzLmM6MjA3NiByZWZzLmM6MjExMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcHJvY2VzcyAnJXMnIGFuZCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUiCiBtc2dzdHIgIiIKIAotIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTE5MQorIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTIzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVtb3ZlIHJlZmVyZW5jZSAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCDRgdGB0YvQu9C60LggJXMiCiAKLSM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyMDUgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1MzIKKyM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDggcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1MzIKICM6IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgcmVmZXJlbmNlICVzOiAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCDRgdGB0YvQu9C60YMgJXM6ICVzIgogCi0jOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjA4IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQ1CisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjUxIHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgcmVmZXJlbmNlczogJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0Ywg0YHRgdGL0LvQutC4OiAlcyIKQEAgLTM0NDQsMzI5ICs0Njk2LDQ2MyBAQAogbXNnaWQgImludmFsaWQgcmVmc3BlYyAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHJlZi1maWx0ZXIuYzozOCB3dC1zdGF0dXMuYzoxODUwCisjOiByZWYtZmlsdGVyLmM6Mzkgd3Qtc3RhdHVzLmM6MTkwOQogbXNnaWQgImdvbmUiCiBtc2dzdHIgItC40YHRh9C10LciCiAKLSM6IHJlZi1maWx0ZXIuYzozOQorIzogcmVmLWZpbHRlci5jOjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImFoZWFkICVkIgogbXNnc3RyICLQstC/0LXRgNC10LTQuCAlZCIKIAotIzogcmVmLWZpbHRlci5jOjQwCisjOiByZWYtZmlsdGVyLmM6NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmVoaW5kICVkIgogbXNnc3RyICLQv9C+0LfQsNC00LggJWQiCiAKLSM6IHJlZi1maWx0ZXIuYzo0MQorIzogcmVmLWZpbHRlci5jOjQyCiAjLCBjLWZvcm1hdAogbXNnaWQgImFoZWFkICVkLCBiZWhpbmQgJWQiCiBtc2dzdHIgItCy0L/QtdGA0LXQtNC4ICVkLCDQv9C+0LfQsNC00LggJWQiCiAKLSM6IHJlZi1maWx0ZXIuYzoxMzcKKyM6IHJlZi1maWx0ZXIuYzoxMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgZm9ybWF0OiAlJShjb2xvcjo8Y29sb3I+KSIKIG1zZ3N0ciAi0L7QttC40LTQsNC10LzRi9C5INGE0L7RgNC80LDRgjogJSUoY29sb3I6PGNvbG9yPikiCiAKLSM6IHJlZi1maWx0ZXIuYzoxMzkKKyM6IHJlZi1maWx0ZXIuYzoxNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIGNvbG9yOiAlJShjb2xvcjolcykiCiBtc2dzdHIgItC90LXQvtC/0L7Qt9C90LDQvdC90YvQuSDRhtCy0LXRgjogJSUoY29sb3I6JXMpIgogCi0jOiByZWYtZmlsdGVyLmM6MTYxCisjOiByZWYtZmlsdGVyLmM6MTYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludGVnZXIgdmFsdWUgZXhwZWN0ZWQgcmVmbmFtZTpsc3RyaXA9JXMiCiBtc2dzdHIgItCe0LbQuNC00LDQtdGC0YHRjyDRhtC10LvQvtGH0LjRgdC70LXQvdC90L7QtSDQt9C90LDRh9C10L3QuNC1IHJlZm5hbWU6bHN0cmlwPSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTY1CisjOiByZWYtZmlsdGVyLmM6MTY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludGVnZXIgdmFsdWUgZXhwZWN0ZWQgcmVmbmFtZTpyc3RyaXA9JXMiCiBtc2dzdHIgItCe0LbQuNC00LDQtdGC0YHRjyDRhtC10LvQvtGH0LjRgdC70LXQvdC90L7QtSDQt9C90LDRh9C10L3QuNC1IHJlZm5hbWU6cnN0cmlwPSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTY3CisjOiByZWYtZmlsdGVyLmM6MTY4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJSglcykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICLQvdC10L7Qv9C+0LfQvdCw0L3QvdGL0Lkg0LDRgNCz0YPQvNC10L3RgiAlJSglcyk6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MjIyCisjOiByZWYtZmlsdGVyLmM6MjIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiUlKG9iamVjdHR5cGUpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgogbXNnc3RyICIiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMzQKKyM6IHJlZi1maWx0ZXIuYzoyNDUKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJSUob2JqZWN0c2l6ZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCittc2dpZCAidW5yZWNvZ25pemVkICUlKG9iamVjdHNpemUpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZWYtZmlsdGVyLmM6MjQ2CisjOiByZWYtZmlsdGVyLmM6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiUlKGRlbHRhYmFzZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogcmVmLWZpbHRlci5jOjI2NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlJShib2R5KSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKIG1zZ3N0ciAi0L/QsNGA0LDQvNC10YLRgCAlJShib2R5KSDQvdC1INC/0YDQuNC90LjQvNCw0LXRgiDQsNGA0LPRg9C80LXQvdGC0YsiCiAKLSM6IHJlZi1maWx0ZXIuYzoyNTUKKyM6IHJlZi1maWx0ZXIuYzoyNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJSUoc3ViamVjdCkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCiBtc2dzdHIgItC/0LDRgNCw0LzQtdGC0YAgJSUoc3ViamVjdCkg0L3QtSDQv9GA0LjQvdC40LzQsNC10YIg0LDRgNCz0YPQvNC10L3RgtGLIgogCi0jOiByZWYtZmlsdGVyLmM6Mjc1CisjOiByZWYtZmlsdGVyLmM6Mjk2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gJSUodHJhaWxlcnMpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90YvQuSDQsNGA0LPRg9C80LXQvdGCINC00LvRjyAlJSh0cmFpbGVycyk6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzA0CisjOiByZWYtZmlsdGVyLmM6MzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgInBvc2l0aXZlIHZhbHVlIGV4cGVjdGVkIGNvbnRlbnRzOmxpbmVzPSVzIgogbXNnc3RyICLQv9C+0LvQvtC20LjRgtC10LvRjNC90L7QtSDQt9C90LDRh9C10L3QuNC1INC+0LbQuNC00LDQtdGCIGNvbnRlbnRzOmxpbmVzPSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzA2CisjOiByZWYtZmlsdGVyLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShjb250ZW50cykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICLQvdC10L7Qv9C+0LfQvdCw0L3QvdGL0Lkg0LDRgNCz0YPQvNC10L3RgiAlJShjb250ZW50cyk6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzIxCisjOiByZWYtZmlsdGVyLmM6MzQyCiAjLCBjLWZvcm1hdAogbXNnaWQgInBvc2l0aXZlIHZhbHVlIGV4cGVjdGVkIG9iamVjdG5hbWU6c2hvcnQ9JXMiCiBtc2dzdHIgItC+0LbQuNC00LDQtdGC0YHRjyDQv9C+0LvQvtC20LjRgtC10LvRjNC90L7QtSDQt9C90LDRh9C10L3QuNC1IG9iamVjdG5hbWU6c2hvcnQ9JXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozMjUKKyM6IHJlZi1maWx0ZXIuYzozNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKG9iamVjdG5hbWUpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAi0L3QtdC+0L/QvtC30L3QsNC90L3Ri9C5INCw0YDQs9GD0LzQtdC90YIgJSUob2JqZWN0bmFtZSk6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzU1CisjOiByZWYtZmlsdGVyLmM6Mzc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIGZvcm1hdDogJSUoYWxpZ246PHdpZHRoPiw8cG9zaXRpb24+KSIKIG1zZ3N0ciAi0L7QttC40LTQsNC10LzRi9C5INGE0L7RgNC80LDRgjogJSUoYWxpZ246PHdpZHRoPiw8cG9zaXRpb24+KSIKIAotIzogcmVmLWZpbHRlci5jOjM2NworIzogcmVmLWZpbHRlci5jOjM4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgcG9zaXRpb246JXMiCiBtc2dzdHIgItC90LXQvtC/0L7Qt9C90LDQvdC90LDRjyDQv9C+0LfQuNGG0LjRjzolcyIKIAotIzogcmVmLWZpbHRlci5jOjM3NAorIzogcmVmLWZpbHRlci5jOjM5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgd2lkdGg6JXMiCiBtc2dzdHIgItC90LXQvtC/0L7Qt9C90LDQvdC90LDRjyDRiNC40YDQuNC90LA6JXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozODMKKyM6IHJlZi1maWx0ZXIuYzo0MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKGFsaWduKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgItC90LXQvtC/0L7Qt9C90LDQvdC90YvQuSDQsNGA0LPRg9C80LXQvdGCICUlKGFsaWduKTogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozOTEKKyM6IHJlZi1maWx0ZXIuYzo0MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAicG9zaXRpdmUgd2lkdGggZXhwZWN0ZWQgd2l0aCB0aGUgJSUoYWxpZ24pIGF0b20iCiBtc2dzdHIgItC+0LbQuNC00LDQtdGC0YHRjyDQv9C+0LvQvtC20LjRgtC10LvRjNC90LDRjyDRiNC40YDQuNC90LAg0YEg0YPQutCw0LfQsNC90LjQtdC8INGH0LDRgdGC0LjRhtGLICUlKGFsaWduKSIKIAotIzogcmVmLWZpbHRlci5jOjQwOQorIzogcmVmLWZpbHRlci5jOjQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUoaWYpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAi0L3QtdC+0L/QvtC30L3QsNC90L3Ri9C5INCw0YDQs9GD0LzQtdC90YIgJSUoaWYpOiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjUwNQorIzogcmVmLWZpbHRlci5jOjUzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgZmllbGQgbmFtZTogJS4qcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3QvtC1INC40LzRjyDQv9C+0LvRjzogJS4qcyIKIAotIzogcmVmLWZpbHRlci5jOjUzMgorIzogcmVmLWZpbHRlci5jOjU1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIGZpZWxkIG5hbWU6ICUuKnMiCiBtc2dzdHIgItC90LXQuNC30LLQtdGB0YLQvdC+0LUg0LjQvNGPINC/0L7Qu9GPOiAlLipzIgogCi0jOiByZWYtZmlsdGVyLmM6NjU2CisjOiByZWYtZmlsdGVyLmM6NTYyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJub3QgYSBnaXQgcmVwb3NpdG9yeSwgYnV0IHRoZSBmaWVsZCAnJS4qcycgcmVxdWlyZXMgYWNjZXNzIHRvIG9iamVjdCBkYXRhIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzo2ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShpZikgYXRvbSB1c2VkIHdpdGhvdXQgYSAlJSh0aGVuKSBhdG9tIgogbXNnc3RyICLRhNC+0YDQvNCw0YI6INGH0LDRgdGC0LjRhtCwICUlKGlmKSDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LAg0LHQtdC3INGH0LDRgdGC0LjRhtGLICUlKHRoZW4pIgogCi0jOiByZWYtZmlsdGVyLmM6NzE5CisjOiByZWYtZmlsdGVyLmM6NzQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIHdpdGhvdXQgYW4gJSUoaWYpIGF0b20iCiBtc2dzdHIgItGE0L7RgNC80LDRgjog0YfQsNGB0YLQuNGG0LAgJSUodGhlbikg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdCwINCx0LXQtyDRh9Cw0YHRgtC40YbRiyAlJShpZikiCiAKLSM6IHJlZi1maWx0ZXIuYzo3MjEKKyM6IHJlZi1maWx0ZXIuYzo3NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgbW9yZSB0aGFuIG9uY2UiCiBtc2dzdHIgItGE0L7RgNC80LDRgjog0YfQsNGB0YLQuNGG0LAgJSUodGhlbikg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdCwINCx0L7Qu9C10LUg0L7QtNC90L7Qs9C+INGA0LDQt9CwIgogCi0jOiByZWYtZmlsdGVyLmM6NzIzCisjOiByZWYtZmlsdGVyLmM6NzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIGFmdGVyICUlKGVsc2UpIgogbXNnc3RyICLRhNC+0YDQvNCw0YI6INGH0LDRgdGC0LjRhtCwICUlKHRoZW4pINC40YHQv9C+0LvRjNC30L7QstCw0L3QsCDQv9C+0YHQu9C1ICUlKGVsc2UpIgogCi0jOiByZWYtZmlsdGVyLmM6NzUxCisjOiByZWYtZmlsdGVyLmM6NzgxCiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIHdpdGhvdXQgYW4gJSUoaWYpIGF0b20iCiBtc2dzdHIgItGE0L7RgNC80LDRgjog0YfQsNGB0YLQuNGG0LAgJSUoZWxzZSkg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdCwINCx0LXQtyDRh9Cw0YHRgtC40YbRiyAlJShpZikiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NTMKKyM6IHJlZi1maWx0ZXIuYzo3ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgd2l0aG91dCBhICUlKHRoZW4pIGF0b20iCiBtc2dzdHIgItGE0L7RgNC80LDRgjog0YfQsNGB0YLQuNGG0LAgJSUoZWxzZSkg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdCwINCx0LXQtyDRh9Cw0YHRgtC40YbRiyAlJSh0aGVuKSIKIAotIzogcmVmLWZpbHRlci5jOjc1NQorIzogcmVmLWZpbHRlci5jOjc4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCBtb3JlIHRoYW4gb25jZSIKIG1zZ3N0ciAi0YTQvtGA0LzQsNGCOiDRh9Cw0YHRgtC40YbQsCAlJShlbHNlKSDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LAg0LHQvtC70LXQtSDQvtC00L3QvtCz0L4g0YDQsNC30LAiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NzAKKyM6IHJlZi1maWx0ZXIuYzo4MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbmQpIGF0b20gdXNlZCB3aXRob3V0IGNvcnJlc3BvbmRpbmcgYXRvbSIKIG1zZ3N0ciAi0YTQvtGA0LzQsNGCOiDRh9Cw0YHRgtC40YbQsCAlJShlbmQpINC40YHQv9C+0LvRjNC30L7QstCw0L3QsCDQsdC10Lcg0YHQvtC+0YLQstC10YLRgdGC0LLRg9GO0YnQtdC5INGH0LDRgdGC0LjRhtGLIgogCi0jOiByZWYtZmlsdGVyLmM6ODI3CisjOiByZWYtZmlsdGVyLmM6ODU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBmb3JtYXQgc3RyaW5nICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdCw0Y8g0YHRgtGA0L7QutCwINGE0L7RgNC80LDRgtCwICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTQxNgorIzogcmVmLWZpbHRlci5jOjE0NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiKG5vIGJyYW5jaCwgcmViYXNpbmcgJXMpIgogbXNnc3RyICIo0L3QtdGCINCy0LXRgtC60LgsINC/0LXRgNC10LzQtdGJ0LXQvdC40LUgJXMpIgogCi0jOiByZWYtZmlsdGVyLmM6MTQxOQorIzogcmVmLWZpbHRlci5jOjE0NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiKG5vIGJyYW5jaCwgcmViYXNpbmcgZGV0YWNoZWQgSEVBRCAlcykiCiBtc2dzdHIgIijQvdC10YIg0LLQtdGC0LrQuCDQv9C10YDQtdC80LXRidC10L3QuNC1INC+0YLQtNC10LvRkdC90L3QvtCz0L4gSEVBRCAlcykiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDIyCisjOiByZWYtZmlsdGVyLmM6MTQ1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIobm8gYnJhbmNoLCBiaXNlY3Qgc3RhcnRlZCBvbiAlcykiCiBtc2dzdHIgIijQvdC10YIg0LLQtdGC0LrQuCwg0LTQstC+0LjRh9C90YvQuSDQv9C+0LjRgdC6INC90LDRh9Cw0YIg0L3QsCAlcykiCiAKICMuIFRSQU5TTEFUT1JTOiBtYWtlIHN1cmUgdGhpcyBtYXRjaGVzICJIRUFECiAjLiBkZXRhY2hlZCBhdCAiIGluIHd0LXN0YXR1cy5jCi0jOiByZWYtZmlsdGVyLmM6MTQzMAorIzogcmVmLWZpbHRlci5jOjE0NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiKEhFQUQgZGV0YWNoZWQgYXQgJXMpIgogbXNnc3RyICIoSEVBRCDQvtGC0LTQtdC70ZHQvSDQvdCwICVzKSIKIAogIy4gVFJBTlNMQVRPUlM6IG1ha2Ugc3VyZSB0aGlzIG1hdGNoZXMgIkhFQUQKICMuIGRldGFjaGVkIGZyb20gIiBpbiB3dC1zdGF0dXMuYwotIzogcmVmLWZpbHRlci5jOjE0MzcKKyM6IHJlZi1maWx0ZXIuYzoxNDc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIihIRUFEIGRldGFjaGVkIGZyb20gJXMpIgogbXNnc3RyICIoSEVBRCDQvtGC0LTQtdC70ZHQvSDQvdCw0YfQuNC90LDRjyDRgSAlcykiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDQxCisjOiByZWYtZmlsdGVyLmM6MTQ3OAogbXNnaWQgIihubyBicmFuY2gpIgogbXNnc3RyICIo0L3QtdGCINCy0LXRgtC60LgpIgogCi0jOiByZWYtZmlsdGVyLmM6MTQ3NSByZWYtZmlsdGVyLmM6MTYyMworIzogcmVmLWZpbHRlci5jOjE1MTIgcmVmLWZpbHRlci5jOjE2NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBvYmplY3QgJXMgZm9yICVzIgogbXNnc3RyICLQvdC1INC90LDQudC00LXQvSDQvtCx0YrQtdC60YIgJXMg0LTQu9GPICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTQ4MworIzogcmVmLWZpbHRlci5jOjE1MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFyc2Vfb2JqZWN0X2J1ZmZlciBmYWlsZWQgb24gJXMgZm9yICVzIgogbXNnc3RyICLRgdCx0L7QuSDQv9GA0Lgg0LLRi9C/0L7Qu9C90LXQvdC40LggcGFyc2Vfb2JqZWN0X2J1ZmZlciDQvdCwICVzINC00LvRjyAlcyIKIAotIzogcmVmLWZpbHRlci5jOjE5ODAKKyM6IHJlZi1maWx0ZXIuYzoxODg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgYXQgJyVzJyIKIG1zZ3N0ciAi0J/QvtCy0YDQtdC20LTRkdC90L3Ri9C5INC+0LHRitC10LrRgiDCqyVzwrsiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMDYyCisjOiByZWYtZmlsdGVyLmM6MTk3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyByZWYgd2l0aCBicm9rZW4gbmFtZSAlcyIKIG1zZ3N0ciAi0LjQs9C90L7RgNC40YDRg9GOINGB0YHRi9C70LrRgyDRgSDQvdC10L/RgNCw0LLQuNC70YzQvdGL0Lwg0LjQvNC10L3QtdC8ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MjM0MAorIzogcmVmLWZpbHRlci5jOjIyNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbmQpIGF0b20gbWlzc2luZyIKIG1zZ3N0ciAiZm9ybWF0OiDQv9GA0L7Qv9GD0YnQtdC90LAg0YfQsNGB0YLQuNGG0LAgJSUoZW5kKSIKIAotIzogcmVmLWZpbHRlci5jOjI0NDQKKyM6IHJlZi1maWx0ZXIuYzoyMzYzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbWVyZ2VkIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzoyMzY2CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8tbWVyZ2VkIgorbXNnc3RyICIiCisKKyM6IHJlZi1maWx0ZXIuYzoyMzc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3QvtC1INC40LzRjyDQvtCx0YrQtdC60YLQsCAlcyIKIAotIzogcmVtb3RlLmM6NjA2CisjOiByZWYtZmlsdGVyLmM6MjM4MQorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBtdXN0IHBvaW50IHRvIGEgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJjb25maWcgcmVtb3RlIHNob3J0aGFuZCBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjQxMAorbXNnaWQgIm1vcmUgdGhhbiBvbmUgcmVjZWl2ZXBhY2sgZ2l2ZW4sIHVzaW5nIHRoZSBmaXJzdCIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUuYzo0MTgKK21zZ2lkICJtb3JlIHRoYW4gb25lIHVwbG9hZHBhY2sgZ2l2ZW4sIHVzaW5nIHRoZSBmaXJzdCIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUuYzo2MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGZldGNoIGJvdGggJXMgYW5kICVzIHRvICVzIgogbXNnc3RyICLQndC10LvRjNC30Y8g0LjQt9Cy0LvQtdGH0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+ICVzINC4ICVzINCyICVzIgogCi0jOiByZW1vdGUuYzo2MTAKKyM6IHJlbW90ZS5jOjYxMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB1c3VhbGx5IHRyYWNrcyAlcywgbm90ICVzIgogbXNnc3RyICIlcyDQvtCx0YvRh9C90L4g0L7RgtGB0LvQtdC20LjQstCw0LXRgiAlcywg0LAg0L3QtSAlcyIKIAotIzogcmVtb3RlLmM6NjE0CisjOiByZW1vdGUuYzo2MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdHJhY2tzIGJvdGggJXMgYW5kICVzIgogbXNnc3RyICIlcyDQvtGC0YHQu9C10LbQuNCy0LDQtdGCINC4ICVzINC4ICVzIgogCi0jOiByZW1vdGUuYzo2MjIKLW1zZ2lkICJJbnRlcm5hbCBlcnJvciIKLW1zZ3N0ciAi0JLQvdGD0YLRgNC10L3QvdGP0Y8g0L7RiNC40LHQutCwIgorIzogcmVtb3RlLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgImtleSAnJXMnIG9mIHBhdHRlcm4gaGFkIG5vICcqJyIKK21zZ3N0ciAiIgogCi0jOiByZW1vdGUuYzoxNTM2IHJlbW90ZS5jOjE2MzcKKyM6IHJlbW90ZS5jOjY5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSAnJXMnIG9mIHBhdHRlcm4gaGFzIG5vICcqJyIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUuYzoxMDAwCisjLCBjLWZvcm1hdAorbXNnaWQgInNyYyByZWZzcGVjICVzIGRvZXMgbm90IG1hdGNoIGFueSIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUuYzoxMDA1CisjLCBjLWZvcm1hdAorbXNnaWQgInNyYyByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogIm1hdGNoZXMgJyVzJyUiIGlzIHRoZSA8ZHN0PiBwYXJ0IG9mICJnaXQgcHVzaAorIy4gPHJlbW90ZT4gPHNyYz46PGRzdD4iIHB1c2gsIGFuZCAiYmVpbmcgcHVzaGVkICgnJXMnKSIgaXMKKyMuIHRoZSA8c3JjPi4KKyM6IHJlbW90ZS5jOjEwMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBkZXN0aW5hdGlvbiB5b3UgcHJvdmlkZWQgaXMgbm90IGEgZnVsbCByZWZuYW1lIChpLmUuLFxuIgorInN0YXJ0aW5nIHdpdGggXCJyZWZzL1wiKS4gV2UgdHJpZWQgdG8gZ3Vlc3Mgd2hhdCB5b3UgbWVhbnQgYnk6XG4iCisiXG4iCisiLSBMb29raW5nIGZvciBhIHJlZiB0aGF0IG1hdGNoZXMgJyVzJyBvbiB0aGUgcmVtb3RlIHNpZGUuXG4iCisiLSBDaGVja2luZyBpZiB0aGUgPHNyYz4gYmVpbmcgcHVzaGVkICgnJXMnKVxuIgorIiAgaXMgYSByZWYgaW4gXCJyZWZzL3toZWFkcyx0YWdzfS9cIi4gSWYgc28gd2UgYWRkIGEgY29ycmVzcG9uZGluZ1xuIgorIiAgcmVmcy97aGVhZHMsdGFnc30vIHByZWZpeCBvbiB0aGUgcmVtb3RlIHNpZGUuXG4iCisiXG4iCisiTmVpdGhlciB3b3JrZWQsIHNvIHdlIGdhdmUgdXAuIFlvdSBtdXN0IGZ1bGx5IHF1YWxpZnkgdGhlIHJlZi4iCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTA0MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSBjb21taXQgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byBjcmVhdGUgYSBuZXcgYnJhbmNoIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy9oZWFkcy8lcyc/IgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjEwNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgdGFnIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gY3JlYXRlIGEgbmV3IHRhZyBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS5jOjEwNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgdHJlZSBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHRhZyBhIG5ldyB0cmVlIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTA1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSBibG9iIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gdGFnIGEgbmV3IGJsb2IgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUuYzoxMDkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNhbm5vdCBiZSByZXNvbHZlZCB0byBicmFuY2giCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlICclcyc6IHJlbW90ZSByZWYgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTExNAorIywgYy1mb3JtYXQKK21zZ2lkICJkc3QgcmVmc3BlYyAlcyBtYXRjaGVzIG1vcmUgdGhhbiBvbmUiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTEyMQorIywgYy1mb3JtYXQKK21zZ2lkICJkc3QgcmVmICVzIHJlY2VpdmVzIGZyb20gbW9yZSB0aGFuIG9uZSBzcmMiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTYyNCByZW1vdGUuYzoxNzI1CiBtc2dpZCAiSEVBRCBkb2VzIG5vdCBwb2ludCB0byBhIGJyYW5jaCIKIG1zZ3N0ciAiSEVBRCDQvdC1INGD0LrQsNC30YvQstCw0LXRgiDQvdCwINCy0LXRgtC60YMiCiAKLSM6IHJlbW90ZS5jOjE1NDUKKyM6IHJlbW90ZS5jOjE2MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBicmFuY2g6ICclcyciCiBtc2dzdHIgItC90LXRgiDRgtCw0LrQvtC5INCy0LXRgtC60Lg6IMKrJXPCuyIKIAotIzogcmVtb3RlLmM6MTU0OAorIzogcmVtb3RlLmM6MTYzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJubyB1cHN0cmVhbSBjb25maWd1cmVkIGZvciBicmFuY2ggJyVzJyIKIG1zZ3N0ciAi0LLRi9GI0LXRgdGC0L7Rj9GJ0LDRjyDQstC10YLQutCwINC90LUg0L3QsNGB0YLRgNC+0LXQvdCwINC00LvRjyDQstC10YLQutC4IMKrJXPCuyIKIAotIzogcmVtb3RlLmM6MTU1NAorIzogcmVtb3RlLmM6MTY0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1cHN0cmVhbSBicmFuY2ggJyVzJyBub3Qgc3RvcmVkIGFzIGEgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKIG1zZ3N0ciAi0LLRi9GI0LXRgdGC0L7Rj9GJ0LDRjyDQstC10YLQutCwIMKrJXPCuyDQvdC1INGB0L7RhdGA0LDQvdC10L3QsCDQutCw0Log0L7RgtGB0LvQtdC20LjQstCw0LXQvNCw0Y8g0LLQtdGC0LrQsCIKIAotIzogcmVtb3RlLmM6MTU2OQorIzogcmVtb3RlLmM6MTY1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJwdXNoIGRlc3RpbmF0aW9uICclcycgb24gcmVtb3RlICclcycgaGFzIG5vIGxvY2FsIHRyYWNraW5nIGJyYW5jaCIKIG1zZ3N0ciAi0L3QsNC30L3QsNGH0LXQvdC40LUg0LTQu9GPINC+0YLQv9GA0LDQstC60Lggwqslc8K7INC90LAg0LLQvdC10YjQvdC10Lwg0YHQtdGA0LLQtdGA0LUgwqslc8K7INC90LUg0LjQvNC10LXRgiDQu9C+0LrQsNC70YzQvdC+0Lkg0L7RgtGB0LvQtdC20LjQstCw0LXQvNC+0Lkg0LLQtdGC0LrQuCIKIAotIzogcmVtb3RlLmM6MTU4MQorIzogcmVtb3RlLmM6MTY2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJicmFuY2ggJyVzJyBoYXMgbm8gcmVtb3RlIGZvciBwdXNoaW5nIgogbXNnc3RyICLQstC10YLQutCwIMKrJXPCuyDQvdC1INC40LzQtdC10YIg0LLQvdC10YjQvdC10LPQviDRgdC10YDQstC10YDQsCDQtNC70Y8g0L7RgtC/0YDQsNCy0LrQuCIKIAotIzogcmVtb3RlLmM6MTU5MQorIzogcmVtb3RlLmM6MTY3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJwdXNoIHJlZnNwZWNzIGZvciAnJXMnIGRvIG5vdCBpbmNsdWRlICclcyciCiBtc2dzdHIgItGB0L/QtdGG0LjRhNC40LrQsNGC0L7RgNGLINC/0YPRgtC4INC00LvRjyDQvtGC0L/RgNCw0LLQutC4IMKrJXPCuyDQvdC1INCy0LrQu9GO0YfQsNGO0YIg0LIg0YHQtdCx0Y8gwqslc8K7IgogCi0jOiByZW1vdGUuYzoxNjA0CisjOiByZW1vdGUuYzoxNjkyCiBtc2dpZCAicHVzaCBoYXMgbm8gZGVzdGluYXRpb24gKHB1c2guZGVmYXVsdCBpcyAnbm90aGluZycpIgogbXNnc3RyICLQvtGC0L/RgNCw0LLQutCwINC90LUg0LjQvNC10LXRgiDRgtC+0YfQutC4INC90LDQt9C90LDRh9C10L3QuNGPIChwdXNoLmRlZmF1bHQg0LLRi9GB0YLQsNCy0LvQtdC9INCyIMKrbm90aGluZ8K7KSIKIAotIzogcmVtb3RlLmM6MTYyNgorIzogcmVtb3RlLmM6MTcxNAogbXNnaWQgImNhbm5vdCByZXNvbHZlICdzaW1wbGUnIHB1c2ggdG8gYSBzaW5nbGUgZGVzdGluYXRpb24iCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIMKrc2ltcGxlwrsg0L7RgtC/0YDQsNCy0LrRgyDQsiDQtdC00LjQvdGB0YLQstC10L3QvdGD0Y4g0YLQvtGH0LrRgyDQvdCw0LfQvdCw0YfQtdC90LjRjyIKIAotIzogcmVtb3RlLmM6MTk1MQorIzogcmVtb3RlLmM6MTg0MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBmaW5kIHJlbW90ZSByZWYgJXMiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MTg1MworIywgYy1mb3JtYXQKK21zZ2lkICIqIElnbm9yaW5nIGZ1bm55IHJlZiAnJXMnIGxvY2FsbHkiCittc2dzdHIgIiIKKworIzogcmVtb3RlLmM6MjAxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBpcyBiYXNlZCBvbiAnJXMnLCBidXQgdGhlIHVwc3RyZWFtIGlzIGdvbmUuXG4iCiBtc2dzdHIgItCS0LDRiNCwINCy0LXRgtC60LAg0LHQsNC30LjRgNGD0LXRgtGB0Y8g0L3QsCDCqyVzwrssINC90L4g0LLRi9GI0LXRgdGC0L7Rj9GJ0LjQuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5INC40YHRh9C10LcuXG4iCiAKLSM6IHJlbW90ZS5jOjE5NTUKKyM6IHJlbW90ZS5jOjIwMjAKIG1zZ2lkICIgICh1c2UgXCJnaXQgYnJhbmNoIC0tdW5zZXQtdXBzdHJlYW1cIiB0byBmaXh1cClcbiIKIG1zZ3N0ciAiKNC00LvRjyDQuNGB0L/RgNCw0LLQu9C10L3QuNGPINC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCBicmFuY2ggLS11bnNldC11cHN0cmVhbcK7KVxuIgogCi0jOiByZW1vdGUuYzoxOTU4CisjOiByZW1vdGUuYzoyMDIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIHVwIHRvIGRhdGUgd2l0aCAnJXMnLlxuIgogbXNnc3RyICLQktCw0YjQsCDQstC10YLQutCwINC+0LHQvdC+0LLQu9C10L3QsCDQsiDRgdC+0L7RgtCy0LXRgtGB0YLQstC40Lgg0YEgwqslc8K7LlxuIgogCi0jOiByZW1vdGUuYzoxOTYyCisjOiByZW1vdGUuYzoyMDI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGFuZCAnJXMnIHJlZmVyIHRvIGRpZmZlcmVudCBjb21taXRzLlxuIgogbXNnc3RyICLQktCw0YjQsCDQstC10YLQutCwINC4IMKrJXPCuyDRg9C60LDQt9GL0LLQsNGO0YIg0L3QsCDRgNCw0LfQvdGL0LUg0LrQvtC80LzQuNGC0YsuXG4iCiAKLSM6IHJlbW90ZS5jOjE5NjUKKyM6IHJlbW90ZS5jOjIwMzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAodXNlIFwiJXNcIiBmb3IgZGV0YWlscylcbiIKIG1zZ3N0ciAiICAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCqyVzwrsg0LTQu9GPINC/0YDQvtGB0LzQvtGC0YDQsCDQvtC/0LjRgdCw0L3QuNGPKVxuIgogCi0jOiByZW1vdGUuYzoxOTY5CisjOiByZW1vdGUuYzoyMDM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIGFoZWFkIG9mICclcycgYnkgJWQgY29tbWl0LlxuIgogbXNnaWRfcGx1cmFsICJZb3VyIGJyYW5jaCBpcyBhaGVhZCBvZiAnJXMnIGJ5ICVkIGNvbW1pdHMuXG4iCkBAIC0zNzc1LDExICs1MTYxLDExIEBACiBtc2dzdHJbMl0gItCS0LDRiNCwINCy0LXRgtC60LAg0L7Qv9C10YDQtdC20LDQtdGCIMKrJXPCuyDQvdCwICVkINC60L7QvNC80LjRgtC+0LIuXG4iCiBtc2dzdHJbM10gItCS0LDRiNCwINCy0LXRgtC60LAg0L7Qv9C10YDQtdC20LDQtdGCIMKrJXPCuyDQvdCwICVkINC60L7QvNC80LjRgtC+0LIuXG4iCiAKLSM6IHJlbW90ZS5jOjE5NzUKKyM6IHJlbW90ZS5jOjIwNDAKIG1zZ2lkICIgICh1c2UgXCJnaXQgcHVzaFwiIHRvIHB1Ymxpc2ggeW91ciBsb2NhbCBjb21taXRzKVxuIgogbXNnc3RyICIgICjQuNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrZ2l0IHB1c2jCuywg0YfRgtC+0LHRiyDQvtC/0YPQsdC70LjQutC+0LLQsNGC0Ywg0LLQsNGI0Lgg0LvQvtC60LDQu9GM0L3Ri9C1INC60L7QvNC80LjRgtGLKVxuIgogCi0jOiByZW1vdGUuYzoxOTc4CisjOiByZW1vdGUuYzoyMDQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIGJlaGluZCAnJXMnIGJ5ICVkIGNvbW1pdCwgYW5kIGNhbiBiZSBmYXN0LWZvcndhcmRlZC5cbiIKIG1zZ2lkX3BsdXJhbCAiIgpAQCAtMzc4OSwxMSArNTE3NSwxMSBAQAogbXNnc3RyWzJdICLQktCw0YjQsCDQstC10YLQutCwINC+0YLRgdGC0LDQtdGCINC+0YIgwqslc8K7INC90LAgJWQg0LrQvtC80LzQuNGC0L7QsiDQuCDQvNC+0LbQtdGCINCx0YvRgtGMINC/0LXRgNC10LzQvtGC0LDQvdCwINCy0L/QtdGA0LXQtC5cbiIKIG1zZ3N0clszXSAi0JLQsNGI0LAg0LLQtdGC0LrQsCDQvtGC0YHRgtCw0LXRgiDQvtGCIMKrJXPCuyDQvdCwICVkINC60L7QvNC80LjRgtC+0LIg0Lgg0LzQvtC20LXRgiDQsdGL0YLRjCDQv9C10YDQtdC80L7RgtCw0L3QsCDQstC/0LXRgNC10LQuXG4iCiAKLSM6IHJlbW90ZS5jOjE5ODYKKyM6IHJlbW90ZS5jOjIwNTEKIG1zZ2lkICIgICh1c2UgXCJnaXQgcHVsbFwiIHRvIHVwZGF0ZSB5b3VyIGxvY2FsIGJyYW5jaClcbiIKIG1zZ3N0ciAiICAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCBwdWxswrssINGH0YLQvtCx0Ysg0L7QsdC90L7QstC40YLRjCDQstCw0YjRgyDQu9C+0LrQsNC70YzQvdGD0Y4g0LLQtdGC0LrRgylcbiIKIAotIzogcmVtb3RlLmM6MTk4OQorIzogcmVtb3RlLmM6MjA1NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBicmFuY2ggYW5kICclcycgaGF2ZSBkaXZlcmdlZCxcbiIKQEAgLTM4MDYsMTk4ICs1MTkyLDM0MCBAQAogbXNnc3RyWzJdICLQktCw0YjQsCDQstC10YLQutCwINC4IMKrJXPCuyDRgNCw0LfQtNC10LvQuNC70LjRgdGMXG7QuCDRgtC10L/QtdGA0Ywg0LjQvNC10Y7RgiAlZCDQuCAlZCDRgNCw0LfQvdGL0YUg0LrQvtC80LzQuNGC0L7QsiDQsiDQutCw0LbQtNC+0Lkg0YHQvtC+0YLQstC10YLRgdGC0LLQtdC90L3Qvi5cbiIKIG1zZ3N0clszXSAi0JLQsNGI0LAg0LLQtdGC0LrQsCDQuCDCqyVzwrsg0YDQsNC30LTQtdC70LjQu9C40YHRjFxu0Lgg0YLQtdC/0LXRgNGMINC40LzQtdGO0YIgJWQg0LggJWQg0YDQsNC30L3Ri9GFINC60L7QvNC80LjRgtC+0LIg0LIg0LrQsNC20LTQvtC5INGB0L7QvtGC0LLQtdGC0YHRgtCy0LXQvdC90L4uXG4iCiAKLSM6IHJlbW90ZS5jOjE5OTkKKyM6IHJlbW90ZS5jOjIwNjQKIG1zZ2lkICIgICh1c2UgXCJnaXQgcHVsbFwiIHRvIG1lcmdlIHRoZSByZW1vdGUgYnJhbmNoIGludG8geW91cnMpXG4iCiBtc2dzdHIgIiAgKNC40YHQv9C+0LvRjNC30YPQudGC0LUgwqtnaXQgcHVsbMK7LCDRh9GC0L7QsdGLINGB0LvQuNGC0Ywg0LLQvdC10YjQvdGO0Y4g0LLQtdGC0LrRgyDQsiDQstCw0YjRgylcbiIKIAotIzogcmVwbGFjZS1vYmplY3QuYzoyMAorIzogcmVtb3RlLmM6MjI0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcGFyc2UgZXhwZWN0ZWQgb2JqZWN0IG5hbWUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZXBsYWNlLW9iamVjdC5jOjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCByZXBsYWNlIHJlZiBuYW1lOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiByZXBsYWNlLW9iamVjdC5jOjI5CisjOiByZXBsYWNlLW9iamVjdC5jOjMwCiAjLCBjLWZvcm1hdAogbXNnaWQgImR1cGxpY2F0ZSByZXBsYWNlIHJlZjogJXMiCiBtc2dzdHIgIiIKIAotIzogcmVwbGFjZS1vYmplY3QuYzo3MgorIzogcmVwbGFjZS1vYmplY3QuYzo3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBsYWNlIGRlcHRoIHRvbyBoaWdoIGZvciBvYmplY3QgJXMiCiBtc2dzdHIgIiIKIAotIzogcmV2aXNpb24uYzoyMzA1CisjOiByZXJlcmUuYzoyMTcgcmVyZXJlLmM6MjI2IHJlcmVyZS5jOjIyOQorbXNnaWQgImNvcnJ1cHQgTUVSR0VfUlIiCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6MjY0IHJlcmVyZS5jOjI2OQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSByZXJlcmUgcmVjb3JkIgorbXNnc3RyICIiCisKKyM6IHJlcmVyZS5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSB3ZXJlIGVycm9ycyB3aGlsZSB3cml0aW5nICclcycgKCVzKSIKK21zZ3N0ciAiIgorCisjOiByZXJlcmUuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICclcyciCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6NTAzIHJlcmVyZS5jOjEwMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbmZsaWN0IGh1bmtzIGluICclcyciCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB1dGltZSgpIG9uICclcyciCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6Njk0CisjLCBjLWZvcm1hdAorbXNnaWQgIndyaXRpbmcgJyVzJyBmYWlsZWQiCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6NzE0CisjLCBjLWZvcm1hdAorbXNnaWQgIlN0YWdlZCAnJXMnIHVzaW5nIHByZXZpb3VzIHJlc29sdXRpb24uIgorbXNnc3RyICIiCisKKyM6IHJlcmVyZS5jOjc1MworIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCByZXNvbHV0aW9uIGZvciAnJXMnLiIKK21zZ3N0ciAiIgorCisjOiByZXJlcmUuYzo3ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVzb2x2ZWQgJyVzJyB1c2luZyBwcmV2aW91cyByZXNvbHV0aW9uLiIKK21zZ3N0ciAiIgorCisjOiByZXJlcmUuYzo4MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHVubGluayBzdHJheSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlcmVyZS5jOjgwNworIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCBwcmVpbWFnZSBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiByZXJlcmUuYzo4ODEgc3VibW9kdWxlLmM6MjAyNCBidWlsdGluL2xvZy5jOjE3NTAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDI3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0Ywg0LrQsNGC0LDQu9C+0LMgwqslc8K7IgorCisjOiByZXJlcmUuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1cGRhdGUgY29uZmxpY3RlZCBzdGF0ZSBpbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlcmVyZS5jOjEwNjggcmVyZXJlLmM6MTA3NQorIywgYy1mb3JtYXQKK21zZ2lkICJubyByZW1lbWJlcmVkIHJlc29sdXRpb24gZm9yICclcyciCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6MTA3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgdW5saW5rICclcyciCittc2dzdHIgIiIKKworIzogcmVyZXJlLmM6MTA4NworIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkIHByZWltYWdlIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlcmVyZS5jOjEwOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiRm9yZ290IHJlc29sdXRpb24gZm9yICclcydcbiIKK21zZ3N0ciAiIgorCisjOiByZXJlcmUuYzoxMTk5Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gcnItY2FjaGUgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHJldmlzaW9uLmM6MjQ3NgogbXNnaWQgInlvdXIgY3VycmVudCBicmFuY2ggYXBwZWFycyB0byBiZSBicm9rZW4iCiBtc2dzdHIgItC/0L7RhdC+0LbQtSwg0LLQsNGI0LAg0YLQtdC60YPRidCw0Y8g0LLQtdGC0LrQsCDQv9C+0LLRgNC10LbQtNC10L3QsCIKIAotIzogcmV2aXNpb24uYzoyMzA4CisjOiByZXZpc2lvbi5jOjI0NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAieW91ciBjdXJyZW50IGJyYW5jaCAnJXMnIGRvZXMgbm90IGhhdmUgYW55IGNvbW1pdHMgeWV0IgogbXNnc3RyICLQstCw0YjQsCDRgtC10LrRg9GJ0LDRjyDQstC10YLQutCwIMKrJXPCuyDQtdGJ0LUg0L3QtSDRgdC+0LTQtdGA0LbQuNGCINC90Lgg0L7QtNC90L7Qs9C+INC60L7QvNC80LjRgtCwIgogCi0jOiByZXZpc2lvbi5jOjI1MDUKKyM6IHJldmlzaW9uLmM6MjY3OQogbXNnaWQgIi0tZmlyc3QtcGFyZW50IGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYmlzZWN0IgogbXNnc3RyICLQvtC/0YbQuNGOIC0tZmlyc3QtcGFyZW50INC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+INGBIC0tYmlzZWN0IgogCi0jOiBydW4tY29tbWFuZC5jOjcyOAorIzogcmV2aXNpb24uYzoyNjgzCittc2dpZCAiLUwgZG9lcyBub3QgeWV0IHN1cHBvcnQgZGlmZiBmb3JtYXRzIGJlc2lkZXMgLXAgYW5kIC1zIgorbXNnc3RyICIiCisKKyM6IHJ1bi1jb21tYW5kLmM6NzYzCiBtc2dpZCAib3BlbiAvZGV2L251bGwgZmFpbGVkIgogbXNnc3RyICLRgdCx0L7QuSDQvtGC0LrRgNGL0YLQuNGPIC9kZXYvbnVsbCIKIAotIzogcnVuLWNvbW1hbmQuYzoxMjcxCisjOiBydW4tY29tbWFuZC5jOjEyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBhc3luYyB0aHJlYWQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHJ1bi1jb21tYW5kLmM6MTMzMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlICclcycgaG9vayB3YXMgaWdub3JlZCBiZWNhdXNlIGl0J3Mgbm90IHNldCBhcyBleGVjdXRhYmxlLlxuIgogIllvdSBjYW4gZGlzYWJsZSB0aGlzIHdhcm5pbmcgd2l0aCBgZ2l0IGNvbmZpZyBhZHZpY2UuaWdub3JlZEhvb2sgZmFsc2VgLiIKIG1zZ3N0ciAi0J/QtdGA0LXRhdCy0LDRgtGH0LjQuiDCqyVzwrsg0LHRi9C7INC/0YDQvtC40LPQvdC+0YDQuNGA0L7QstCw0L0sINGC0LDQuiDQutCw0Log0L7QvSDQvdC1INGD0YHRgtCw0L3QvtCy0LvQtdC9INC60LDQuiDQuNGB0L/QvtC70L3Rj9C10LzRi9C5Llxu0JLRiyDQvNC+0LbQtdGC0LUg0L7RgtC60LvRjtGH0LjRgtGMINGN0YLQviDQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1INGBINC/0L7QvNC+0YnRjNGOINC60L7QvNCw0L3QtNGLIMKrZ2l0IGNvbmZpZyBhZHZpY2UuaWdub3JlZEhvb2sgZmFsc2XCuy4iCiAKLSM6IHNlbmQtcGFjay5jOjE0MgorIzogc2VuZC1wYWNrLmM6MTQxCiBtc2dpZCAidW5leHBlY3RlZCBmbHVzaCBwYWNrZXQgd2hpbGUgcmVhZGluZyByZW1vdGUgdW5wYWNrIHN0YXR1cyIKIG1zZ3N0ciAi0L3QtdC+0LbQuNC00LDQvdC90YvQuSDQv9GD0YHRgtC+0Lkg0L/QsNC60LXRgiDQv9GA0Lgg0YfRgtC10L3QuNC4INGB0YLQsNGC0YPRgdCwINCy0L3QtdGI0L3QtdC5INGA0LDRgdC/0LDQutC+0LLQutC4IgogCi0jOiBzZW5kLXBhY2suYzoxNDQKKyM6IHNlbmQtcGFjay5jOjE0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgcmVtb3RlIHVucGFjayBzdGF0dXM6ICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9C+0LHRgNCw0YLRjCDRgdGC0LDRgtGD0YEg0LLQvdC10YjQvdC10Lkg0YDQsNGB0L/QsNC60L7QstC60Lg6ICVzIgogCi0jOiBzZW5kLXBhY2suYzoxNDYKKyM6IHNlbmQtcGFjay5jOjE0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZW1vdGUgdW5wYWNrIGZhaWxlZDogJXMiCiBtc2dzdHIgItGB0LHQvtC5INC/0YDQuCDQstC90LXRiNC90LXQuSDRgNCw0YHQv9Cw0LrQvtCy0LrQtSAlcyIKIAotIzogc2VuZC1wYWNrLmM6MzA5CisjOiBzZW5kLXBhY2suYzozMDYKIG1zZ2lkICJmYWlsZWQgdG8gc2lnbiB0aGUgcHVzaCBjZXJ0aWZpY2F0ZSIKIG1zZ3N0ciAi0YHQsdC+0Lkg0L/QvtC00L/QuNGB0LDQvdC40Y8g0YHQtdGA0YLQuNGE0LjQutCw0YLQsCDQvtGC0L/RgNCw0LLQutC4IgogCi0jOiBzZW5kLXBhY2suYzo0MjIKKyM6IHNlbmQtcGFjay5jOjQyMAogbXNnaWQgInRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS1zaWduZWQgcHVzaCIKIG1zZ3N0ciAi0L/RgNC40L3QuNC80LDRjtGJ0LDRjyDRgdGC0L7RgNC+0L3QsCDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgiDQvtGC0L/RgNCw0LLQutGDINGBINC+0L/RhtC40LXQuSAtLXNpZ25lZCIKIAotIzogc2VuZC1wYWNrLmM6NDI0CisjOiBzZW5kLXBhY2suYzo0MjIKIG1zZ2lkICIiCiAibm90IHNlbmRpbmcgYSBwdXNoIGNlcnRpZmljYXRlIHNpbmNlIHRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgIgogIi0tc2lnbmVkIHB1c2giCiBtc2dzdHIgItC90LUg0L7RgtC/0YDQsNCy0LvRj9C10Lwg0YHQtdGA0YLQuNGE0LjQutCw0YIg0LTQu9GPINC+0YLQv9GA0LDQstC60LgsINGC0LDQuiDQutCw0Log0L/RgNC40L3QuNC80LDRjtGJ0LDRjyDRgdGC0L7RgNC+0L3QsCDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgiDQvtGC0L/RgNCw0LLQutGDINGBINC+0L/RhtC40LXQuSAtLXNpZ25lZCIKIAotIzogc2VuZC1wYWNrLmM6NDM2CisjOiBzZW5kLXBhY2suYzo0MzQKIG1zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tYXRvbWljIHB1c2giCiBtc2dzdHIgItC/0YDQuNC90LjQvNCw0Y7RidCw0Y8g0YHRgtC+0YDQvtC90LAg0L3QtSDQv9C+0LTQtNC10YDQttC40LLQsNC10YIg0L7RgtC/0YDQsNCy0LrRgyDRgSDQvtC/0YbQuNC10LkgLS1hdG9taWMiCiAKLSM6IHNlbmQtcGFjay5jOjQ0MQorIzogc2VuZC1wYWNrLmM6NDM5CiBtc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCBwdXNoIG9wdGlvbnMiCiBtc2dzdHIgItC/0YDQuNC90LjQvNCw0Y7RidCw0Y8g0YHRgtC+0YDQvtC90LAg0L3QtSDQv9C+0LTQtNC10YDQttC40LLQsNC10YIg0L7RgtC/0YDQsNCy0LrRgyDRgSDQvtC/0YbQuNGP0LzQuCIKIAotIzogc2VxdWVuY2VyLmM6MTc3CisjOiBzZXF1ZW5jZXIuYzoxODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb21taXQgbWVzc2FnZSBjbGVhbnVwIG1vZGUgJyVzJyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INGA0LXQttC40Lwg0L7Rh9C40YHRgtC60Lgg0YHQvtC+0LHRidC10L3QuNGPINC60L7QvNC80LjRgtCwIMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6Mjc4CisjOiBzZXF1ZW5jZXIuYzoyOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGRlbGV0ZSAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMIMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6MzA0CisjOiBzZXF1ZW5jZXIuYzozMTgKIG1zZ2lkICJyZXZlcnQiCiBtc2dzdHIgItC+0LHRgNCw0YLQuNGC0Ywg0LjQt9C80LXQvdC10L3QuNGPIgogCi0jOiBzZXF1ZW5jZXIuYzozMDYKKyM6IHNlcXVlbmNlci5jOjMyMAogbXNnaWQgImNoZXJyeS1waWNrIgogbXNnc3RyICLQutC+0L/QuNGA0L7QstCw0YLRjCDQutC+0LzQvNC40YIiCiAKLSM6IHNlcXVlbmNlci5jOjMwOAorIzogc2VxdWVuY2VyLmM6MzIyCiBtc2dpZCAicmViYXNlIC1pIgogbXNnc3RyICJyZWJhc2UgLWkiCiAKLSM6IHNlcXVlbmNlci5jOjMxMAorIzogc2VxdWVuY2VyLmM6MzI0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gYWN0aW9uOiAlZCIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozNjcKKyM6IHNlcXVlbmNlci5jOjM4MgogbXNnaWQgIiIKICJhZnRlciByZXNvbHZpbmcgdGhlIGNvbmZsaWN0cywgbWFyayB0aGUgY29ycmVjdGVkIHBhdGhzXG4iCiAid2l0aCAnZ2l0IGFkZCA8cGF0aHM+JyBvciAnZ2l0IHJtIDxwYXRocz4nIgogbXNnc3RyICLQv9C+0YHQu9C1INGA0LDQt9GA0LXRiNC10L3QuNGPINC60L7QvdGE0LvQuNC60YLQvtCyLCDQv9C+0LzQtdGC0YzRgtC1INC40YHQv9GA0LDQstC70LXQvdC90YvQtSDQv9GD0YLQuFxu0YEg0L/QvtC80L7RidGM0Y4gwqtnaXQgYWRkIDzQv9GD0YLQuD7CuyDQuNC70LggwqtnaXQgcm0gPNC/0YPRgtC4PsK7IgogCi0jOiBzZXF1ZW5jZXIuYzozNzAKKyM6IHNlcXVlbmNlci5jOjM4NQogbXNnaWQgIiIKICJhZnRlciByZXNvbHZpbmcgdGhlIGNvbmZsaWN0cywgbWFyayB0aGUgY29ycmVjdGVkIHBhdGhzXG4iCiAid2l0aCAnZ2l0IGFkZCA8cGF0aHM+JyBvciAnZ2l0IHJtIDxwYXRocz4nXG4iCiAiYW5kIGNvbW1pdCB0aGUgcmVzdWx0IHdpdGggJ2dpdCBjb21taXQnIgogbXNnc3RyICLQv9C+0YHQu9C1INGA0LDQt9GA0LXRiNC10L3QuNGPINC60L7QvdGE0LvQuNC60YLQvtCyLCDQv9C+0LzQtdGC0YzRgtC1INC40YHQv9GA0LDQstC70LXQvdC90YvQtSDQv9GD0YLQuFxu0YEg0L/QvtC80L7RidGM0Y4gwqtnaXQgYWRkIDzQv9GD0YLQuD7CuyDQuNC70LggwqtnaXQgcm0gPNC/0YPRgtC4PsK7XG7QuCDRgdC00LXQu9Cw0LnRgtC1INC60L7QvNC80LjRgiDRgSDQv9C+0LzQvtGJ0YzRjiDCq2dpdCBjb21taXTCuyIKIAotIzogc2VxdWVuY2VyLmM6MzgzIHNlcXVlbmNlci5jOjI0ODgKKyM6IHNlcXVlbmNlci5jOjM5OCBzZXF1ZW5jZXIuYzoyODAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb2NrICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNCx0LvQvtC60LjRgNC+0LLQsNGC0Ywgwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzozOTAKKyM6IHNlcXVlbmNlci5jOjQwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZW9sIHRvICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCBlb2wg0LIgwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzozOTUgc2VxdWVuY2VyLmM6MjM3MSBzZXF1ZW5jZXIuYzoyNDk0IHNlcXVlbmNlci5jOjI1MDgKLSM6IHNlcXVlbmNlci5jOjI3NDEKKyM6IHNlcXVlbmNlci5jOjQxMCBzZXF1ZW5jZXIuYzoyNjg0IHNlcXVlbmNlci5jOjI4MDcgc2VxdWVuY2VyLmM6MjgyMQorIzogc2VxdWVuY2VyLmM6MzA4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZmluYWxpemUgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0LLQtdGA0YjQuNGC0Ywgwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzo0MTggc2VxdWVuY2VyLmM6ODE2IHNlcXVlbmNlci5jOjE1MDUgc2VxdWVuY2VyLmM6MjM5MQotIzogc2VxdWVuY2VyLmM6MjcyMyBzZXF1ZW5jZXIuYzoyODI3IGJ1aWx0aW4vYW0uYzoyNjAgYnVpbHRpbi9jb21taXQuYzo3NDAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDgxCisjOiBzZXF1ZW5jZXIuYzo0MzMgc2VxdWVuY2VyLmM6OTc4IHNlcXVlbmNlci5jOjE2NTIgc2VxdWVuY2VyLmM6MjcwNAorIzogc2VxdWVuY2VyLmM6MzA2NiBzZXF1ZW5jZXIuYzozMTc1IGJ1aWx0aW4vYW0uYzoyNDUgYnVpbHRpbi9jb21taXQuYzo3NjAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTE1IGJ1aWx0aW4vcmViYXNlLmM6NTY3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMIMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6NDQ0CisjOiBzZXF1ZW5jZXIuYzo0NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAieW91ciBsb2NhbCBjaGFuZ2VzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzLiIKIG1zZ3N0ciAi0LLQsNGI0Lgg0LvQvtC60LDQu9GM0L3Ri9C1INC40LfQvNC10L3QtdC90LjRjyDQsdGD0LTRg9GCINC/0LXRgNC10LfQsNC/0LjRgdCw0L3RiyAlcy4iCiAKLSM6IHNlcXVlbmNlci5jOjQ0OAorIzogc2VxdWVuY2VyLmM6NDYzCiBtc2dpZCAiY29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQuIgogbXNnc3RyICLQtNC70Y8g0L/RgNC+0LTQvtC70LbQtdC90LjRjyDQt9Cw0LrQvtC80LzQuNGC0YzRgtC1INCy0LDRiNC4INC40LfQvNC10L3QtdC90LjRjyDQuNC70Lgg0YHQv9GA0Y/Rh9GM0YLQtSDQuNGFLiIKIAotIzogc2VxdWVuY2VyLmM6NDc3CisjOiBzZXF1ZW5jZXIuYzo0OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGZhc3QtZm9yd2FyZCIKIG1zZ3N0ciAiJXM6INC/0LXRgNC10LzQvtGC0LrQsCDQstC/0LXRgNC10LQiCiAKKyM6IHNlcXVlbmNlci5jOjUzNCBidWlsdGluL3RhZy5jOjU1NQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGNsZWFudXAgbW9kZSAlcyIKK21zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9GM0L3QvtC1INC30L3QsNGH0LXQvdC40LUg0YDQtdC20LjQvNCwINC+0YfQuNGB0YLQutC4ICVzIgorCiAjLiBUUkFOU0xBVE9SUzogJXMgd2lsbCBiZSAicmV2ZXJ0IiwgImNoZXJyeS1waWNrIiBvcgogIy4gInJlYmFzZSAtaSIuCi0jOiBzZXF1ZW5jZXIuYzo1NjYKKyM6IHNlcXVlbmNlci5jOjYyOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgogbXNnc3RyICIlczog0J3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMINGE0LDQudC7INC40L3QtNC10LrRgdCwIgogCi0jOiBzZXF1ZW5jZXIuYzo1ODIKKyM6IHNlcXVlbmNlci5jOjY0NgogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgY2FjaGUgdHJlZSIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtCx0L3QvtCy0LjRgtGMINC00LXRgNC10LLQviDQutGN0YjQsCIKIAotIzogc2VxdWVuY2VyLmM6NTk1CisjOiBzZXF1ZW5jZXIuYzo2NjAKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIGNvbW1pdCIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0YHQv9C+0LfQvdCw0YLRjCBIRUFEINC60L7QvNC80LjRgiIKIAotIzogc2VxdWVuY2VyLmM6NzIzCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJXMnIChsb29raW5nIGZvciAnJXMnIgotbXNnc3RyICIiCi0KLSM6IHNlcXVlbmNlci5jOjczMQotIywgYy1mb3JtYXQKLW1zZ2lkICJiYWQgcXVvdGluZyBvbiAlcyB2YWx1ZSBpbiAnJXMnIgotbXNnc3RyICIiCi0KICM6IHNlcXVlbmNlci5jOjc0MAogIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyAobG9va2luZyBmb3IgJyVzJykiCittc2dpZCAibm8ga2V5IHByZXNlbnQgaW4gJyUuKnMnIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjc0NworIzogc2VxdWVuY2VyLmM6NzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZXF1b3RlIHZhbHVlIG9mICclcyciCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6Nzg4IHdyYXBwZXIuYzoyMjcgd3JhcHBlci5jOjM5NyBidWlsdGluL2FtLmM6NzA2CisjOiBidWlsdGluL2FtLmM6Nzk4IGJ1aWx0aW4vbWVyZ2UuYzoxMTEyIGJ1aWx0aW4vcmViYXNlLmM6MTAzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciByZWFkaW5nIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMIMKrJXPCuyDQtNC70Y8g0YfRgtC10L3QuNGPIgorCisjOiBzZXF1ZW5jZXIuYzo3OTgKK21zZ2lkICInR0lUX0FVVEhPUl9OQU1FJyBhbHJlYWR5IGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjgwMworbXNnaWQgIidHSVRfQVVUSE9SX0VNQUlMJyBhbHJlYWR5IGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjgwOAorbXNnaWQgIidHSVRfQVVUSE9SX0RBVEUnIGFscmVhZHkgZ2l2ZW4iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6ODEyCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdmFyaWFibGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzo4MTcKK21zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX05BTUUnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjgxOQorbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfRU1BSUwnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjgyMQorbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfREFURSciCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6ODgxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZGF0ZSBmb3JtYXQgJyVzJyBpbiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjc2MQorIzogc2VxdWVuY2VyLmM6ODk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ5b3UgaGF2ZSBzdGFnZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZVxuIgpAQCAtNDAxNCwxNSArNTU0MiwxNSBAQAogIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiBtc2dzdHIgItGDINCy0LDRgSDQuNC80LXRjtGC0YHRjyDQv9GA0L7QuNC90LTQtdC60YHQuNGA0L7QstCw0L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPINCyINGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LUuINCV0YHQu9C4INGN0YLQuCDQuNC30LzQtdC90LXQvdC40Y8g0LTQvtC70LbQvdGLINCx0YvRgtGMINC+0LHRitC10LTQtdC90LXQvdGLINGBINC/0YDQtdC00YvQtNGD0YnQuNC8INC60L7QvNC80LjRgtC+0LwsINGC0L4g0LfQsNC/0YPRgdGC0LjRgtC1OlxuXG4gIGdpdCBjb21taXQgLS1hbWVuZCAlc1xuXG7QldGB0LvQuCDQttC1INC+0L3QuCDQtNC+0LvQttC90Ysg0LHRi9GC0Ywg0L/QvtC80LXRidC10L3RiyDQsiDQvdC+0LLRi9C5INC60L7QvNC80LjRgiwg0YLQviDQt9Cw0L/Rg9GB0YLQuNGC0LU6XG5cbiAgZ2l0IGNvbW1pdCAlc1xuXG7QkiDQu9GO0LHQvtC8INGB0LvRg9GH0LDQtSwg0L/QvtGB0LvQtSDRgtC+0LPQviDQutCw0Log0LLRiyDQt9Cw0LrQvtC90YfQuNGC0LUsINC/0YDQvtC00L7Qu9C20LjRgtGMINC/0LXRgNC10LzQtdGJ0LXQvdC40LUg0LzQvtC20L3QviDQstGL0L/QvtC70L3QuNCyOlxuXG4gIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogCi0jOiBzZXF1ZW5jZXIuYzo4MzAKKyM6IHNlcXVlbmNlci5jOjk5MgogbXNnaWQgIndyaXRpbmcgcm9vdCBjb21taXQiCiBtc2dzdHIgItC30LDQv9C40YHRjCDQutC+0L3QtdCy0L7Qs9C+INC60L7QvNC80LjRgtCwIgogCi0jOiBzZXF1ZW5jZXIuYzoxMDU1CisjOiBzZXF1ZW5jZXIuYzoxMjEzCiBtc2dpZCAiJ3ByZXBhcmUtY29tbWl0LW1zZycgaG9vayBmYWlsZWQiCiBtc2dzdHIgItC+0YjQuNCx0LrQsCDQv9GA0Lgg0LLRi9C30L7QstC1INC/0LXRgNC10YXQstCw0YLRh9C40LrQsCDCq3ByZXBhcmUtY29tbWl0LW1zZ8K7IgogCi0jOiBzZXF1ZW5jZXIuYzoxMDYyCisjOiBzZXF1ZW5jZXIuYzoxMjIwCiBtc2dpZCAiIgogIllvdXIgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyB3ZXJlIGNvbmZpZ3VyZWQgYXV0b21hdGljYWxseSBiYXNlZFxuIgogIm9uIHlvdXIgdXNlcm5hbWUgYW5kIGhvc3RuYW1lLiBQbGVhc2UgY2hlY2sgdGhhdCB0aGV5IGFyZSBhY2N1cmF0ZS5cbiIKQEAgLTQwMzcsNyArNTU2NSw3IEBACiAiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgogbXNnc3RyICLQktCw0YjQtSDQuNC80Y8g0LjQu9C4INGN0LvQtdC60YLRgNC+0L3QvdCw0Y8g0L/QvtGH0YLQsCDQvdCw0YHRgtGA0L7QtdC90Ysg0LDQstGC0L7QvNCw0YLQuNGH0LXRgdC60Lgg0L3QsCDQvtGB0L3QvtCy0LDQvdC40Lgg0LLQsNGI0LXQs9C+XG7QuNC80LXQvdC4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQuCDQuNC80LXQvdC4INC80LDRiNC40L3Riy4g0J/QvtC20LDQu9GD0LnRgdGC0LAsINC/0YDQvtCy0LXRgNGM0YLQtSwg0YfRgtC+INC+0L3QuCBcbtC+0L/RgNC10LTQtdC70LXQvdGLINC/0YDQsNCy0LjQu9GM0L3Qvi5cbtCS0Ysg0LzQvtC20LXRgtC1INC+0YLQutC70Y7Rh9C40YLRjCDRjdGC0L4g0YPQstC10LTQvtC80LvQtdC90LjQtSDRg9GB0YLQsNC90L7QstC40LIg0LjRhSDQvdCw0L/RgNGP0LzRg9GOLiDQl9Cw0L/Rg9GB0YLQuNGC0LUg0YHQu9C10LTRg9GO0YnRg9GOXG7QutC+0LzQsNC90LTRgyDQuCDRgdC70LXQtNGD0LnRgtC1INC40L3RgdGC0YDRg9C60YbQuNGP0Lwg0LLQsNGI0LXQs9C+INGC0LXQutGB0YLQvtCy0L7Qs9C+INGA0LXQtNCw0LrRgtC+0YDQsCwg0LTQu9GPXG7RgNC10LTQsNC60YLQuNGA0L7QstCw0L3QuNGPINCy0LDRiNC10LPQviDRhNCw0LnQu9CwINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuDpcblxuICAgIGdpdCBjb25maWcgLS1nbG9iYWwgLS1lZGl0XG5cbtCf0L7RgdC70LUg0Y3RgtC+0LPQviwg0LjQt9C80LXQvdC40YLRjCDQsNCy0YLQvtGA0YHRgtCy0L4g0Y3RgtC+0Lkg0LrQvtC80LzQuNGC0LAg0LzQvtC20L3QviDQsdGD0LTQtdGCINGBINC/0L7QvNC+0YnRjNGOINC60L7QvNCw0L3QtNGLOlxuXG4gICAgZ2l0IGNvbW1pdCAtLWFtZW5kIC0tcmVzZXQtYXV0aG9yXG4iCiAKLSM6IHNlcXVlbmNlci5jOjEwNzUKKyM6IHNlcXVlbmNlci5jOjEyMzMKIG1zZ2lkICIiCiAiWW91ciBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIHdlcmUgY29uZmlndXJlZCBhdXRvbWF0aWNhbGx5IGJhc2VkXG4iCiAib24geW91ciB1c2VybmFtZSBhbmQgaG9zdG5hbWUuIFBsZWFzZSBjaGVjayB0aGF0IHRoZXkgYXJlIGFjY3VyYXRlLlxuIgpAQCAtNDA1MSwzMDQgKzU1NzksMzA1IEBACiAiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgogbXNnc3RyICLQktCw0YjQtSDQuNC80Y8g0LjQu9C4INGN0LvQtdC60YLRgNC+0L3QvdCw0Y8g0L/QvtGH0YLQsCDQvdCw0YHRgtGA0L7QtdC90Ysg0LDQstGC0L7QvNCw0YLQuNGH0LXRgdC60Lgg0L3QsCDQvtGB0L3QvtCy0LDQvdC40Lgg0LLQsNGI0LXQs9C+XG7QuNC80LXQvdC4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQuCDQuNC80LXQvdC4INC80LDRiNC40L3Riy4g0J/QvtC20LDQu9GD0LnRgdGC0LAsINC/0YDQvtCy0LXRgNGM0YLQtSwg0YfRgtC+INC+0L3QuCBcbtC+0L/RgNC10LTQtdC70LXQvdGLINC/0YDQsNCy0LjQu9GM0L3Qvi5cbtCS0Ysg0LzQvtC20LXRgtC1INC+0YLQutC70Y7Rh9C40YLRjCDRjdGC0L4g0YPQstC10LTQvtC80LvQtdC90LjQtSDRg9GB0YLQsNC90L7QstC40LIg0LjRhSDQvdCw0L/RgNGP0LzRg9GOOlxuXG4gICAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLm5hbWUgXCLQktCw0YjQtSDQmNC80Y9cIlxuICAgIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5lbWFpbCB5b3VAZXhhbXBsZS5jb21cblxu0J/QvtGB0LvQtSDRjdGC0L7Qs9C+LCDQuNC30LzQtdC90LjRgtGMINCw0LLRgtC+0YDRgdGC0LLQviDRjdGC0L7QuSDQutC+0LzQvNC40YLQsCDQvNC+0LbQvdC+INCx0YPQtNC10YIg0YEg0L/QvtC80L7RidGM0Y4g0LrQvtC80LDQvdC00Ys6XG5cbiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKIAotIzogc2VxdWVuY2VyLmM6MTExNQorIzogc2VxdWVuY2VyLmM6MTI3NQogbXNnaWQgImNvdWxkbid0IGxvb2sgdXAgbmV3bHkgY3JlYXRlZCBjb21taXQiCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQt9Cw0L/RgNC+0YHQuNGC0Ywg0L3QvtCy0L7RgdC+0LfQtNCw0L3QvdGL0Lkg0LrQvtC80LzQuNGCIgogCi0jOiBzZXF1ZW5jZXIuYzoxMTE3CisjOiBzZXF1ZW5jZXIuYzoxMjc3CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIG5ld2x5IGNyZWF0ZWQgY29tbWl0IgogbXNnc3RyICLQvdC10LvRjNC30Y8g0YDQsNC30L7QsdGA0LDRgtGMINC90L7QstC+0YHQvtC30LTQsNC90L3Ri9C5INC60L7QvNC80LjRgiIKIAotIzogc2VxdWVuY2VyLmM6MTE2MworIzogc2VxdWVuY2VyLmM6MTMyMwogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIEhFQUQgYWZ0ZXIgY3JlYXRpbmcgY29tbWl0IgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC90LDQudGC0LggSEVBRCDQv9C+0YHQu9C1INGB0L7Qt9C00LDQvdC40Y8g0LrQvtC80LzQuNGC0LAiCiAKLSM6IHNlcXVlbmNlci5jOjExNjUKKyM6IHNlcXVlbmNlci5jOjEzMjUKIG1zZ2lkICJkZXRhY2hlZCBIRUFEIgogbXNnc3RyICLQvtGC0LTQtdC70ZHQvdC90YvQuSBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoxMTY5CisjOiBzZXF1ZW5jZXIuYzoxMzI5CiBtc2dpZCAiIChyb290LWNvbW1pdCkiCiBtc2dzdHIgIiAo0LrQvtGA0L3QtdCy0L7QuSDQutC+0LzQvNC40YIpIgogCi0jOiBzZXF1ZW5jZXIuYzoxMTkwCisjOiBzZXF1ZW5jZXIuYzoxMzUwCiBtc2dpZCAiY291bGQgbm90IHBhcnNlIEhFQUQiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YDQsNC30L7QsdGA0LDRgtGMIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjExOTIKKyM6IHNlcXVlbmNlci5jOjEzNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiSEVBRCAlcyBpcyBub3QgYSBjb21taXQhIgogbXNnc3RyICJIRUFEICVzINC90LUg0Y/QstC70Y/QtdGC0YHRjyDQutC+0LzQvNC40YLQvtC8ISIKIAotIzogc2VxdWVuY2VyLmM6MTE5NiBidWlsdGluL2NvbW1pdC5jOjE1MjgKKyM6IHNlcXVlbmNlci5jOjEzNTYgYnVpbHRpbi9jb21taXQuYzoxNTUxCiBtc2dpZCAiY291bGQgbm90IHBhcnNlIEhFQUQgY29tbWl0IgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9C+0LHRgNCw0YLRjCBIRUFEINC60L7QvNC80LjRgiIKIAotIzogc2VxdWVuY2VyLmM6MTI0NyBzZXF1ZW5jZXIuYzoxODQ1CisjOiBzZXF1ZW5jZXIuYzoxNDA4IHNlcXVlbmNlci5jOjIwMDEKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0IGF1dGhvciIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0LfQvtCx0YDQsNGC0Ywg0LDQstGC0L7RgNCwINC60L7QvNC80LjRgtCwIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjU3IGJ1aWx0aW4vYW0uYzoxNjMyIGJ1aWx0aW4vbWVyZ2UuYzo2NzUKKyM6IHNlcXVlbmNlci5jOjE0MTggYnVpbHRpbi9hbS5jOjE1NzIgYnVpbHRpbi9tZXJnZS5jOjY4OAogbXNnaWQgImdpdCB3cml0ZS10cmVlIGZhaWxlZCB0byB3cml0ZSBhIHRyZWUiCiBtc2dzdHIgImdpdCB3cml0ZS10cmVlINC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCDQtNC10YDQtdCy0L4iCiAKLSM6IHNlcXVlbmNlci5jOjEyNzQgc2VxdWVuY2VyLmM6MTMyOQorIzogc2VxdWVuY2VyLmM6MTQzNSBzZXF1ZW5jZXIuYzoxNDk2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIGNvbW1pdCBtZXNzYWdlIGZyb20gJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0YHQvtC+0LHRidC10L3QuNC1INC60L7QvNC80LjRgtCwINC40Lcgwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzoxMjk2IGJ1aWx0aW4vYW0uYzoxNjUzIGJ1aWx0aW4vY29tbWl0LmM6MTYzMQotIzogYnVpbHRpbi9tZXJnZS5jOjg1NSBidWlsdGluL21lcmdlLmM6ODgwCisjOiBzZXF1ZW5jZXIuYzoxNDYyIGJ1aWx0aW4vYW0uYzoxNTk0IGJ1aWx0aW4vY29tbWl0LmM6MTY1MAorIzogYnVpbHRpbi9tZXJnZS5jOjg4MiBidWlsdGluL21lcmdlLmM6OTA2CiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGNvbW1pdCBvYmplY3QiCiBtc2dzdHIgItGB0LHQvtC5INC30LDQv9C40YHQuCDQvtCx0YrQtdC60YLQsCDQutC+0LzQvNC40YLQsCIKIAotIzogc2VxdWVuY2VyLmM6MTM1NgorIzogc2VxdWVuY2VyLmM6MTUyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0ICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9C+0LHRgNCw0YLRjCDQutC+0LzQvNC40YIgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjEzNjEKKyM6IHNlcXVlbmNlci5jOjE1MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHBhcmVudCBjb21taXQgJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YDQsNC30L7QsdGA0LDRgtGMINGA0L7QtNC40YLQtdC70YzRgdC60LjQuSDQutC+0LzQvNC40YIgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjE0NTcgc2VxdWVuY2VyLmM6MTU2NQorIzogc2VxdWVuY2VyLmM6MTYwMiBzZXF1ZW5jZXIuYzoxNzEyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gY29tbWFuZDogJWQiCiBtc2dzdHIgItC90LXQuNC30LLQtdGB0YLQvdCw0Y8g0LrQvtC80LDQvdC00LA6ICVkIgogCi0jOiBzZXF1ZW5jZXIuYzoxNTEyIHNlcXVlbmNlci5jOjE1MzcKKyM6IHNlcXVlbmNlci5jOjE2NTkgc2VxdWVuY2VyLmM6MTY4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJWQgY29tbWl0cy4iCiBtc2dzdHIgItCt0YLQviDQvtCx0YrQtdC00LjQvdC10L3QuNC1ICVkINC60L7QvNC80LjRgtC+0LIuIgogCi0jOiBzZXF1ZW5jZXIuYzoxNTIyIHNlcXVlbmNlci5jOjQ1MjAKKyM6IHNlcXVlbmNlci5jOjE2NjkKIG1zZ2lkICJuZWVkIGEgSEVBRCB0byBmaXh1cCIKIG1zZ3N0ciAi0L3Rg9C20LXQvSBIRUFEINC00LvRjyDQuNGB0L/RgNCw0LLQu9C10L3QuNGPIgogCi0jOiBzZXF1ZW5jZXIuYzoxNTI0IHNlcXVlbmNlci5jOjI3NjgKKyM6IHNlcXVlbmNlci5jOjE2NzEgc2VxdWVuY2VyLmM6MzExMQogbXNnaWQgImNvdWxkIG5vdCByZWFkIEhFQUQiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjE1MjYKKyM6IHNlcXVlbmNlci5jOjE2NzMKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBIRUFEJ3MgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMINGB0L7QvtCx0YnQtdC90LjQtSDQutC+0LzQvNC40YLQsCDRgtC10LrRg9GJ0LXQs9C+IEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjE1MzIKKyM6IHNlcXVlbmNlci5jOjE2NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHdyaXRlICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCDCqyVzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjE1MzkgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ0MQorIzogc2VxdWVuY2VyLmM6MTY4NiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQxCiBtc2dpZCAiVGhpcyBpcyB0aGUgMXN0IGNvbW1pdCBtZXNzYWdlOiIKIG1zZ3N0ciAi0K3RgtC+IDEt0LUg0YHQvtC+0LHRidC10L3QuNC1INC60L7QvNC80LjRgtCwOiIKIAotIzogc2VxdWVuY2VyLmM6MTU0NworIzogc2VxdWVuY2VyLmM6MTY5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBjb21taXQgbWVzc2FnZSBvZiAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0YHQvtC+0LHRidC10L3QuNC1INC60L7QvNC80LjRgtCwINC00LvRjyAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTU1NAorIzogc2VxdWVuY2VyLmM6MTcwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGlzIGlzIHRoZSBjb21taXQgbWVzc2FnZSAjJWQ6IgogbXNnc3RyICLQrdGC0L4g0YHQvtC+0LHRidC10L3QuNC1INC60L7QvNC80LjRgtCwINC90L7QvNC10YAgIyVkOiIKIAotIzogc2VxdWVuY2VyLmM6MTU2MAorIzogc2VxdWVuY2VyLmM6MTcwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgY29tbWl0IG1lc3NhZ2UgIyVkIHdpbGwgYmUgc2tpcHBlZDoiCiBtc2dzdHIgItCh0L7QvtCx0YnQtdC90LjQtSDQutC+0LzQvNC40YLQsCDQvdC+0LzQtdGAICMlZCDQsdGD0LTQtdGCINC/0YDQvtC/0YPRidC10L3QvjoiCiAKLSM6IHNlcXVlbmNlci5jOjE2NDMKKyM6IHNlcXVlbmNlci5jOjE3OTUKIG1zZ2lkICJ5b3VyIGluZGV4IGZpbGUgaXMgdW5tZXJnZWQuIgogbXNnc3RyICLQstCw0Ygg0LjQvdC00LXQutGBINC90LUg0YHQu9C40YIuIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjUwCisjOiBzZXF1ZW5jZXIuYzoxODAyCiBtc2dpZCAiY2Fubm90IGZpeHVwIHJvb3QgY29tbWl0IgogbXNnc3RyICLQvdC10LvRjNC30Y8g0LjRgdC/0YDQsNCy0LjRgtGMINC60L7RgNC90LXQstC+0Lkg0LrQvtC80LzQuNGCIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjY5CisjOiBzZXF1ZW5jZXIuYzoxODIxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbW1pdCAlcyBpcyBhIG1lcmdlIGJ1dCBubyAtbSBvcHRpb24gd2FzIGdpdmVuLiIKIG1zZ3N0ciAi0LrQvtC80LzQuNGCICVzIOKAlCDRjdGC0L4g0LrQvtC80LzQuNGCLdGB0LvQuNGP0L3QuNC1LCDQvdC+INC+0L/RhtC40Y8gLW0g0L3QtSDRg9C60LDQt9Cw0L3QsC4iCiAKLSM6IHNlcXVlbmNlci5jOjE2NzcKKyM6IHNlcXVlbmNlci5jOjE4Mjkgc2VxdWVuY2VyLmM6MTgzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJXMgZG9lcyBub3QgaGF2ZSBwYXJlbnQgJWQiCiBtc2dzdHIgItGDINC60L7QvNC80LjRgtCwICVzINC90LXRgiDQv9GA0LXQtNC60LAgJWQiCiAKLSM6IHNlcXVlbmNlci5jOjE2ODEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibWFpbmxpbmUgd2FzIHNwZWNpZmllZCBidXQgY29tbWl0ICVzIGlzIG5vdCBhIG1lcmdlLiIKLW1zZ3N0ciAi0L7RgdC90L7QstC90LDRjyDQstC10YLQutCwINGD0LrQsNC30LDQvdCwLCDQvdC+INC60L7QvNC80LjRgiAlcyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0YHQu9C40Y/QvdC40LXQvC4iCi0KLSM6IHNlcXVlbmNlci5jOjE2ODcKKyM6IHNlcXVlbmNlci5jOjE4NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGdldCBjb21taXQgbWVzc2FnZSBmb3IgJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDRgdC+0L7QsdGJ0LXQvdC40LUg0LrQvtC80LzQuNGC0LAg0LTQu9GPICVzIgogCiAjLiBUUkFOU0xBVE9SUzogVGhlIGZpcnN0ICVzIHdpbGwgYmUgYSAidG9kbyIgY29tbWFuZCBsaWtlCiAjLiAicmV2ZXJ0IiBvciAicGljayIsIHRoZSBzZWNvbmQgJXMgYSBTSEExLgotIzogc2VxdWVuY2VyLmM6MTcwNgorIzogc2VxdWVuY2VyLmM6MTg2MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogY2Fubm90IHBhcnNlIHBhcmVudCBjb21taXQgJXMiCiBtc2dzdHIgIiVzOiDQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9C+0LHRgNCw0YLRjCDRgNC+0LTQuNGC0LXQu9GM0YHQutC40Lkg0LrQvtC80LzQuNGCINC00LvRjyAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTc3MQorIzogc2VxdWVuY2VyLmM6MTkyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVuYW1lICclcycgdG8gJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C10YDQtdC40LzQtdC90L7QstCw0YLRjCDCqyVzwrsg0LIgwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzoxODI2CisjOiBzZXF1ZW5jZXIuYzoxOTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZXZlcnQgJXMuLi4gJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7QsdGA0LDRgtC40YLRjCDQuNC30LzQtdC90LXQvdC40Y8g0LrQvtC80LzQuNGC0LAgJXPigKYgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjE4MjcKKyM6IHNlcXVlbmNlci5jOjE5ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGFwcGx5ICVzLi4uICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQuNC80LXQvdC40YLRjCDQutC+0LzQvNC40YIgJXPigKYgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjE4ODUKKyM6IHNlcXVlbmNlci5jOjIwNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0ICVzOiBmYWlsZWQgdG8gcmVhZCB0aGUgaW5kZXgiCiBtc2dzdHIgImdpdCAlczog0YHQsdC+0Lkg0YfRgtC10L3QuNGPINC40L3QtNC10LrRgdCwIgogCi0jOiBzZXF1ZW5jZXIuYzoxODkyCisjOiBzZXF1ZW5jZXIuYzoyMDQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCAlczogZmFpbGVkIHRvIHJlZnJlc2ggdGhlIGluZGV4IgogbXNnc3RyICJnaXQgJXM6INGB0LHQvtC5INC+0LHQvdC+0LLQu9C10L3QuNGPINC40L3QtNC10LrRgdCwIgogCi0jOiBzZXF1ZW5jZXIuYzoxOTcyCisjOiBzZXF1ZW5jZXIuYzoyMTE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRvZXMgbm90IGFjY2VwdCBhcmd1bWVudHM6ICclcyciCiBtc2dzdHIgItC/0LDRgNCw0LzQtdGC0YAgJXMg0L3QtSDQv9GA0LjQvdC40LzQsNC10YIg0LDRgNCz0YPQvNC10L3RgtGLOiDCqyVzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjE5ODEKKyM6IHNlcXVlbmNlci5jOjIxMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBhcmd1bWVudHMgZm9yICVzIgogbXNnc3RyICLQv9GA0L7Qv9GD0YnQtdC90Ysg0LDRgNCz0YPQvNC10L3RgtGLINC00LvRjyAlcyIKIAotIzogc2VxdWVuY2VyLmM6MjA0MAorIzogc2VxdWVuY2VyLmM6MjE2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyUuKnMnIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjIyMjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBsaW5lICVkOiAlLipzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdCw0Y8g0YHRgtGA0L7QutCwICVkOiAlLipzIgogCi0jOiBzZXF1ZW5jZXIuYzoyMDQ4CisjOiBzZXF1ZW5jZXIuYzoyMjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAnJXMnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQstGL0L/QvtC70L3QuNGC0Ywgwqslc8K7INCx0LXQtyDRg9C60LDQt9Cw0L3QuNGPINC/0YDQtdC00YvQtNGD0YnQtdCz0L4g0LrQvtC80LzQuNGC0LAiCiAKLSM6IHNlcXVlbmNlci5jOjIwOTYgc2VxdWVuY2VyLmM6NDI3NyBzZXF1ZW5jZXIuYzo0MzMzCisjOiBzZXF1ZW5jZXIuYzoyMjg1IGJ1aWx0aW4vcmViYXNlLmM6MTUzIGJ1aWx0aW4vcmViYXNlLmM6MTc4CisjOiBidWlsdGluL3JlYmFzZS5jOjIwNCBidWlsdGluL3JlYmFzZS5jOjIyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCAnJXMnLiIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywgwqslc8K7LiIKIAotIzogc2VxdWVuY2VyLmM6MjExOQorIzogc2VxdWVuY2VyLmM6MjM2MAogbXNnaWQgInBsZWFzZSBmaXggdGhpcyB1c2luZyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycuIgogbXNnc3RyICLQv9C+0LbQsNC70YPQudGB0YLQsCDQuNGB0L/RgNCw0LLRjNGC0LUg0Y3RgtC+INGBINC/0L7QvNC+0YnRjNGOIMKrZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb8K7LiIKIAotIzogc2VxdWVuY2VyLmM6MjEyMQorIzogc2VxdWVuY2VyLmM6MjM2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnVzYWJsZSBpbnN0cnVjdGlvbiBzaGVldDogJyVzJyIKIG1zZ3N0ciAi0L3QtdC/0YDQuNCz0L7QtNC90LDRjyDQtNC70Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8g0LrQsNGA0YLQsCDRgSDQuNC90YHRgtGA0YPQutGG0LjRj9C80Lg6IMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6MjEyNgorIzogc2VxdWVuY2VyLmM6MjM2NwogbXNnaWQgIm5vIGNvbW1pdHMgcGFyc2VkLiIKIG1zZ3N0ciAi0LrQvtC80LzQuNGC0Ysg0L3QtSDRgNCw0LfQvtCx0YDQsNC90YsuIgogCi0jOiBzZXF1ZW5jZXIuYzoyMTM3CisjOiBzZXF1ZW5jZXIuYzoyMzc4CiBtc2dpZCAiY2Fubm90IGNoZXJyeS1waWNrIGR1cmluZyBhIHJldmVydC4iCiBtc2dzdHIgItC90LXQu9GM0LfRjyDRgdC60L7Qv9C40YDQvtCy0LDRgtGMINC60L7QvNC80LjRgiDQstC+INCy0YDQtdC80Y8g0L/RgNC+0YbQtdGB0YHQsCDQvtCx0YDQsNGJ0LXQvdC40Y8g0LrQvtC80LzQuNGC0LAuIgogCi0jOiBzZXF1ZW5jZXIuYzoyMTM5CisjOiBzZXF1ZW5jZXIuYzoyMzgwCiBtc2dpZCAiY2Fubm90IHJldmVydCBkdXJpbmcgYSBjaGVycnktcGljay4iCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQvtCx0YDQsNGC0LjRgtGMINC40LfQvNC10L3QtdC90LjRjyDQutC+0LzQvNC40YLQsCDQstC+INCy0YDQtdC80Y8g0LrQvtC/0LjRgNC+0LLQsNC90LjRjyDQutC+0LzQvNC40YLQsC4iCiAKLSM6IHNlcXVlbmNlci5jOjIyMDkKKyM6IHNlcXVlbmNlci5jOjI0NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdC+0LUg0LfQvdCw0YfQtdC90LjQtSAlczogJXMiCiAKLSM6IHNlcXVlbmNlci5jOjIyODUKKyM6IHNlcXVlbmNlci5jOjI1NDkKIG1zZ2lkICJ1bnVzYWJsZSBzcXVhc2gtb250byIKIG1zZ3N0ciAi0L3QtdC/0YDQuNCz0L7QtNC90YvQuSDQtNC70Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8g0YPQv9C70L7RgtC90LjRgtGMLdC90LDQtCIKIAotIzogc2VxdWVuY2VyLmM6MjMwMQorIzogc2VxdWVuY2VyLmM6MjU2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgb3B0aW9ucyBzaGVldDogJyVzJyIKIG1zZ3N0ciAi0LjRgdC/0L7RgNGH0LXQvdC90LDRjyDQutCw0YDRgtCwINGBINC+0L/RhtC40Y/QvNC4OiDCqyVzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjIzMzUgc2VxdWVuY2VyLmM6Mzc3NQorIzogc2VxdWVuY2VyLmM6MjY0OCBzZXF1ZW5jZXIuYzo0MjI3CiBtc2dpZCAiZW1wdHkgY29tbWl0IHNldCBwYXNzZWQiCiBtc2dzdHIgItC/0LXRgNC10LTQsNC9INC/0YPRgdGC0L7QuSDQvdCw0LHQvtGAINC60L7QvNC80LjRgtC+0LIiCiAKLSM6IHNlcXVlbmNlci5jOjIzNDMKKyM6IHNlcXVlbmNlci5jOjI2NTYKIG1zZ2lkICJhIGNoZXJyeS1waWNrIG9yIHJldmVydCBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgogbXNnc3RyICLQutC+0L/QuNGA0L7QstCw0L3QuNC1INC40LvQuCDQvtCx0YDQsNGJ0LXQvdC40LUg0LjQt9C80LXQvdC10L3QuNC5INC60L7QvNC80LjRgtCwINGD0LbQtSDQstGL0L/QvtC70L3Rj9GO0YLRgdGPIgogCi0jOiBzZXF1ZW5jZXIuYzoyMzQ0CisjOiBzZXF1ZW5jZXIuYzoyNjU3CiBtc2dpZCAidHJ5IFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgLS1xdWl0IHwgLS1hYm9ydClcIiIKIG1zZ3N0ciAi0L/QvtC/0YDQvtCx0YPQudGC0LUgwqtnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAtLXF1aXQgfCAtLWFib3J0KcK7IgogCi0jOiBzZXF1ZW5jZXIuYzoyMzQ3CisjOiBzZXF1ZW5jZXIuYzoyNjYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgc2VxdWVuY2VyIGRpcmVjdG9yeSAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINC60LDRgtCw0LvQvtCzINC00LvRjyDRg9C60LDQt9Cw0YLQtdC70Y8g0YHQu9C10LTQvtCy0LDQvdC40Y8g0LrQvtC80LzQuNGC0L7QsiDCqyVzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjIzNjEKKyM6IHNlcXVlbmNlci5jOjI2NzQKIG1zZ2lkICJjb3VsZCBub3QgbG9jayBIRUFEIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQsdC70L7QutC40YDQvtCy0LDRgtGMIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjI0MTYgc2VxdWVuY2VyLmM6MzU0MworIzogc2VxdWVuY2VyLmM6MjcyOSBzZXF1ZW5jZXIuYzozOTc5CiBtc2dpZCAibm8gY2hlcnJ5LXBpY2sgb3IgcmV2ZXJ0IGluIHByb2dyZXNzIgogbXNnc3RyICLQutC+0L/QuNGA0L7QstCw0L3QuNC1INC40LvQuCDQvtCx0YDQsNGJ0LXQvdC40LUg0LjQt9C80LXQvdC10L3QuNC5INC60L7QvNC80LjRgtCwINGD0LbQtSDQstGL0L/QvtC70L3Rj9GO0YLRgdGPIgogCi0jOiBzZXF1ZW5jZXIuYzoyNDE4CisjOiBzZXF1ZW5jZXIuYzoyNzMxCiBtc2dpZCAiY2Fubm90IHJlc29sdmUgSEVBRCIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtC/0YDQtdC00LXQu9C40YLRjCBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoyNDIwIHNlcXVlbmNlci5jOjI0NTUKKyM6IHNlcXVlbmNlci5jOjI3MzMgc2VxdWVuY2VyLmM6Mjc2OAogbXNnaWQgImNhbm5vdCBhYm9ydCBmcm9tIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIgogbXNnc3RyICLQvdC10LvRjNC30Y8g0L7RgtC80LXQvdC40YLRjCDQuNC30LzQtdC90LXQvdC40Y8g0YEg0LLQtdGC0LrQuCwg0LrQvtGC0L7RgNCw0Y8g0LXRidC1INC90LUg0YHQvtC30LTQsNC90LAiCiAKLSM6IHNlcXVlbmNlci5jOjI0NDEgYnVpbHRpbi9ncmVwLmM6NzIxCisjOiBzZXF1ZW5jZXIuYzoyNzU0IGJ1aWx0aW4vZ3JlcC5jOjczMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgb3BlbiAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMIMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6MjQ0MworIzogc2VxdWVuY2VyLmM6Mjc1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCAnJXMnOiAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywgwqslc8K7OiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MjQ0NAorIzogc2VxdWVuY2VyLmM6Mjc1NwogbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUiCiBtc2dzdHIgItC90LXQvtC20LjQtNCw0L3QvdGL0Lkg0LrQvtC90LXRhiDRhNCw0LnQu9CwIgogCi0jOiBzZXF1ZW5jZXIuYzoyNDUwCisjOiBzZXF1ZW5jZXIuYzoyNzYzCiAjLCBjLWZvcm1hdAogbXNnaWQgInN0b3JlZCBwcmUtY2hlcnJ5LXBpY2sgSEVBRCBmaWxlICclcycgaXMgY29ycnVwdCIKIG1zZ3N0ciAi0YHQvtGF0YDQsNC90LXQvdC90YvQuSDRhNCw0LnQuyDRgSBIRUFEINC/0LXRgNC10LQg0LrQvtC/0LjRgNC+0LLQsNC90LjQtdC8INC60L7QvNC80LjRgtCwIMKrJXPCuyDQv9C+0LLRgNC10LbQtNC10L0iCiAKLSM6IHNlcXVlbmNlci5jOjI0NjEKKyM6IHNlcXVlbmNlci5jOjI3NzQKIG1zZ2lkICJZb3Ugc2VlbSB0byBoYXZlIG1vdmVkIEhFQUQuIE5vdCByZXdpbmRpbmcsIGNoZWNrIHlvdXIgSEVBRCEiCiBtc2dzdHIgItCf0L7RhdC+0LbQtSwg0YfRgtC+INCy0Ysg0L/QtdGA0LXQvNC10YHRgtC40LvQuCBIRUFELiDQn9C10YDQtdC80L7RgtC60LAg0L3QtSDQstGL0L/QvtC70L3Rj9C10YLRgdGPLCDQv9GA0L7QstC10YDRjNGC0LUg0YHQstC+0Lkg0YPQutCw0LfQsNGC0LXQu9GMIEhFQUQhIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTY1IHNlcXVlbmNlci5jOjM0NjEKKyM6IHNlcXVlbmNlci5jOjI5MDMgc2VxdWVuY2VyLmM6Mzg5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgdXBkYXRlICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0LHQvdC+0LLQuNGC0YwgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjI2MDMgc2VxdWVuY2VyLmM6MzQ0MQorIzogc2VxdWVuY2VyLmM6Mjk0MSBzZXF1ZW5jZXIuYzozODc0CiBtc2dpZCAiY2Fubm90IHJlYWQgSEVBRCIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0YwgSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6MjYxOAorIzogc2VxdWVuY2VyLmM6Mjk1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY29weSAnJXMnIHRvICclcyciCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjYyNgorIzogc2VxdWVuY2VyLmM6Mjk2NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGNhbiBhbWVuZCB0aGUgY29tbWl0IG5vdywgd2l0aFxuIgpAQCAtNDM2MCwyNiArNTg4OSwyNyBAQAogIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjYzNgorIzogc2VxdWVuY2VyLmM6Mjk3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgYXBwbHkgJXMuLi4gJS4qcyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzoyNjQzCisjOiBzZXF1ZW5jZXIuYzoyOTgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBtZXJnZSAlLipzIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjI2NTQgc2VxdWVuY2VyLmM6MjY1OCBidWlsdGluL2RpZmZ0b29sLmM6NjQwCisjOiBzZXF1ZW5jZXIuYzoyOTk3IHNlcXVlbmNlci5jOjMwMDEgYnVpbHRpbi9kaWZmdG9vbC5jOjYzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQutC+0L/QuNGA0L7QstCw0YLRjCDCqyVzwrsg0LIgwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzoyNjgwIHNlcXVlbmNlci5jOjMwOTUKKyM6IHNlcXVlbmNlci5jOjMwMjMgc2VxdWVuY2VyLmM6MzQ0NiBidWlsdGluL3JlYmFzZS5jOjgzOQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTgwIGJ1aWx0aW4vcmViYXNlLmM6MTk0MCBidWlsdGluL3JlYmFzZS5jOjE5OTUKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBpbmRleCIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0LjQvdC00LXQutGBIgogCi0jOiBzZXF1ZW5jZXIuYzoyNjg1CisjOiBzZXF1ZW5jZXIuYzozMDI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleGVjdXRpb24gZmFpbGVkOiAlc1xuIgpAQCAtNDM4OSwxMSArNTkxOSwxMSBAQAogIlxuIgogbXNnc3RyICLQvtGI0LjQsdC60LAg0LLRi9C/0L7Qu9C90LXQvdC40Y86ICVzXG4lc9CS0Ysg0LzQvtC20LXRgtC1INC40YHQv9GA0LDQstC40YLRjCDQvtGI0LjQsdC60YMsINCwINC30LDRgtC10Lwg0LfQsNC/0YPRgdGC0LjRgtGMXG5cbiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG5cbiIKIAotIzogc2VxdWVuY2VyLmM6MjY5MQorIzogc2VxdWVuY2VyLmM6MzAzNAogbXNnaWQgImFuZCBtYWRlIGNoYW5nZXMgdG8gdGhlIGluZGV4IGFuZC9vciB0aGUgd29ya2luZyB0cmVlXG4iCiBtc2dzdHIgItC4INCx0YvQu9C4INGB0LTQtdC70LDQvdGLINC40LfQvNC10L3QtdC90LjRjyDQsiDQuNC90LTQtdC60YHQtSDQuC/QuNC70Lgg0LIg0YDQsNCx0L7Rh9C10Lwg0LrQsNGC0LDQu9C+0LPQtVxuIgogCi0jOiBzZXF1ZW5jZXIuYzoyNjk3CisjOiBzZXF1ZW5jZXIuYzozMDQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleGVjdXRpb24gc3VjY2VlZGVkOiAlc1xuIgpAQCAtNDQwNCw4MSArNTkzNCw3NiBAQAogIlxuIgogbXNnc3RyICLRg9GB0L/QtdGI0L3QvtC1INCy0YvQv9C+0LvQvdC10L3QuNC1OiAlc1xu0L3QviDQvtGB0YLQsNC70LjRgdGMINC40LfQvNC10L3QtdC90LjRjyDQsiDQuNC90LTQtdC60YHQtSDQuC/QuNC70Lgg0LIg0YDQsNCx0L7Rh9C10Lwg0LrQsNGC0LDQu9C+0LPQtVxu0KHQtNC10LvQsNC50YLQtSDQutC+0LzQvNC40YIg0LjQu9C4INGB0L/RgNGP0YfRjNGC0LUg0LLQsNGI0Lgg0LjQt9C80LXQvdC10L3QuNGPLCDQsCDQt9Cw0YLQtdC8INCy0YvQv9C+0LvQvdC40YLQtVxuXG4gIGdpdCByZWJhc2UgLS1jb250aW51ZVxuXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI3NTgKKyM6IHNlcXVlbmNlci5jOjMxMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWxsZWdhbCBsYWJlbCBuYW1lOiAnJS4qcyciCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6MjgxMAorIzogc2VxdWVuY2VyLmM6MzE1NQogbXNnaWQgIndyaXRpbmcgZmFrZSByb290IGNvbW1pdCIKIG1zZ3N0ciAi0LfQsNC/0LjRgdGMINC/0L7QtNC00LXQu9GM0L3QvtCz0L4g0LrQvtGA0L3QtdCy0L7Qs9C+INC60L7QvNC80LjRgtCwIgogCi0jOiBzZXF1ZW5jZXIuYzoyODE1CisjOiBzZXF1ZW5jZXIuYzozMTYwCiBtc2dpZCAid3JpdGluZyBzcXVhc2gtb250byIKIG1zZ3N0ciAi0LfQsNC/0LjRgtGMINGD0L/Qu9C+0YLQvdC40YLRjC3QvdCw0LQiCiAKLSM6IHNlcXVlbmNlci5jOjI4NTAKKyM6IHNlcXVlbmNlci5jOjMxOTggYnVpbHRpbi9yZWJhc2UuYzo4NDQgYnVpbHRpbi9yZWJhc2UuYzo4NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGZpbmQgdHJlZSBvZiAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INC00LXRgNC10LLQviDQtNC70Y8gJXMiCiAKLSM6IHNlcXVlbmNlci5jOjI4NjgKKyM6IHNlcXVlbmNlci5jOjMyMTYgYnVpbHRpbi9yZWJhc2UuYzo4NjMKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgaW5kZXgiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCDQuNC90LTQtdC60YEiCiAKLSM6IHNlcXVlbmNlci5jOjI4OTUKKyM6IHNlcXVlbmNlci5jOjMyNDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0YHQv9C+0LfQvdCw0YLRjCDCqyVzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjI5MjEKKyM6IHNlcXVlbmNlci5jOjMyNzEKIG1zZ2lkICJjYW5ub3QgbWVyZ2Ugd2l0aG91dCBhIGN1cnJlbnQgcmV2aXNpb24iCiBtc2dzdHIgItC90LXQu9GM0LfRjyDRgdC70LjRgtGMINCx0LXQtyDRgtC10LrRg9GJ0LXQuSDRgNC10LTQsNC60YbQuNC4IgogCi0jOiBzZXF1ZW5jZXIuYzoyOTQzCisjOiBzZXF1ZW5jZXIuYzozMjkzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAnJS4qcyciCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6Mjk1MgorIzogc2VxdWVuY2VyLmM6MzMwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIG1lcmdlOiAnJS4qcyciCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6Mjk2NAorIzogc2VxdWVuY2VyLmM6MzMxNAogbXNnaWQgIm9jdG9wdXMgbWVyZ2UgY2Fubm90IGJlIGV4ZWN1dGVkIG9uIHRvcCBvZiBhIFtuZXcgcm9vdF0iCiBtc2dzdHIgIiIKIAotIzogc2VxdWVuY2VyLmM6Mjk3OQorIzogc2VxdWVuY2VyLmM6MzMyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0IGNvbW1pdCBtZXNzYWdlIG9mICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDRgdC+0L7QsdGJ0LXQvdC40LUg0LrQvtC80LzQuNGC0LAg0LTQu9GPIMKrJXPCuyIKIAotIzogc2VxdWVuY2VyLmM6Mjk4OSBzZXF1ZW5jZXIuYzozMDE1Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnIgotbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywgwqslc8K7IgotCi0jOiBzZXF1ZW5jZXIuYzozMTI3CisjOiBzZXF1ZW5jZXIuYzozNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBldmVuIGF0dGVtcHQgdG8gbWVyZ2UgJyUuKnMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC00LDQttC1INC/0L7Qv9GL0YLQsNGC0YzRgdGPINGB0LvQuNGC0YwgwqslLipzwrsiCiAKLSM6IHNlcXVlbmNlci5jOjMxNDMKKyM6IHNlcXVlbmNlci5jOjM0OTQKIG1zZ2lkICJtZXJnZTogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgogbXNnc3RyICLRgdC70LjRj9C90LjQtTog0J3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMINGE0LDQudC7INC40L3QtNC10LrRgdCwIgogCi0jOiBzZXF1ZW5jZXIuYzozMjExCisjOiBzZXF1ZW5jZXIuYzozNTYyIGJ1aWx0aW4vcmViYXNlLmM6NzExCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgYXV0b3N0YXNoLlxuIgogbXNnc3RyICLQn9GA0LjQvNC10L3QtdC90Ysg0LDQstGC0L7QvNCw0YLQuNGH0LXRgdC60Lgg0YHQv9GA0Y/RgtCw0L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPLlxuIgogCi0jOiBzZXF1ZW5jZXIuYzozMjIzCisjOiBzZXF1ZW5jZXIuYzozNTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdG9yZSAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0YXRgNCw0L3QuNGC0YwgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjMyMjYgZ2l0LXJlYmFzZS5zaDoxODgKKyM6IHNlcXVlbmNlci5jOjM1NzcgYnVpbHRpbi9yZWJhc2UuYzo3MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkFwcGx5aW5nIGF1dG9zdGFzaCByZXN1bHRlZCBpbiBjb25mbGljdHMuXG4iCkBAIC00NDg2LDcgKzYwMTEsMzEgQEAKICJZb3UgY2FuIHJ1biBcImdpdCBzdGFzaCBwb3BcIiBvciBcImdpdCBzdGFzaCBkcm9wXCIgYXQgYW55IHRpbWUuXG4iCiBtc2dzdHIgItCf0YDQuNC80LXQvdC10L3QuNC1INCw0LLRgtC+0LzQsNGC0LjRh9C10YHQutC4INGB0L/RgNGP0YLQsNC90L3Ri9GFINC40LfQvNC10L3QtdC90LjQuSDQstGL0LfQstCw0LvQviDQutC+0L3RhNC70LjQutGC0YsuXG7QktCw0YjQuCDQuNC30LzQtdC90LXQvdC40Y8g0YHQv9GA0Y/RgtCw0L3RiyDQuCDQsiDQsdC10LfQvtC/0LDRgdC90L7RgdGC0LguXG7QktGLINC80L7QttC10YLQtSDQstGL0L/QvtC70L3QuNGC0YwgwqtnaXQgc3Rhc2ggcG9wwrsg0LjQu9C4IMKrZ2l0IHN0YXNoIGRyb3DCuyDQsiDQu9GO0LHQvtC5INC80L7QvNC10L3Rgi5cbiIKIAotIzogc2VxdWVuY2VyLmM6MzI1NworIzogc2VxdWVuY2VyLmM6MzYzOAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY2hlY2tvdXQgJXMiCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzY1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogbm90IGEgdmFsaWQgT0lEIgorbXNnc3RyICIiCisKKyM6IHNlcXVlbmNlci5jOjM2NTcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcyNAorbXNnaWQgImNvdWxkIG5vdCBkZXRhY2ggSEVBRCIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LTQtdC70LjRgtGMIEhFQUQiCisKKyM6IHNlcXVlbmNlci5jOjM2NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3RvcHBlZCBhdCBIRUFEXG4iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzY3NAorIywgYy1mb3JtYXQKK21zZ2lkICJTdG9wcGVkIGF0ICVzXG4iCittc2dzdHIgIiIKKworIzogc2VxdWVuY2VyLmM6MzY4MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IGV4ZWN1dGUgdGhlIHRvZG8gY29tbWFuZFxuIgpAQCAtNDQ5OSwxMjUgKzYwNDgsMTA0IEBACiAiICAgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogbXNnc3RyICIiCiAKLSM6IHNlcXVlbmNlci5jOjMzMjUKKyM6IHNlcXVlbmNlci5jOjM3NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAlcy4uLiAgJS4qc1xuIgogbXNnc3RyICLQntGB0YLQsNC90L7QstC70LXQvdC+INC90LAgJXMg4oCmICAlLipzXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM0MDQKKyM6IHNlcXVlbmNlci5jOjM4MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBjb21tYW5kICVkIgogbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3QsNGPINC60L7QvNCw0L3QtNCwICVkIgogCi0jOiBzZXF1ZW5jZXIuYzozNDQ5CisjOiBzZXF1ZW5jZXIuYzozODgyCiBtc2dpZCAiY291bGQgbm90IHJlYWQgb3JpZy1oZWFkIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCBvcmlnLWhlYWQiCiAKLSM6IHNlcXVlbmNlci5jOjM0NTQgc2VxdWVuY2VyLmM6NDUxNworIzogc2VxdWVuY2VyLmM6Mzg4NwogbXNnaWQgImNvdWxkIG5vdCByZWFkICdvbnRvJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0YwgwqtvbnRvwrsiCiAKLSM6IHNlcXVlbmNlci5jOjM0NjgKKyM6IHNlcXVlbmNlci5jOjM5MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHVwZGF0ZSBIRUFEIHRvICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0LHQvdC+0LLQuNGC0YwgSEVBRCDQvdCwICVzIgogCi0jOiBzZXF1ZW5jZXIuYzozNTU0CisjOiBzZXF1ZW5jZXIuYzozOTkxCiBtc2dpZCAiY2Fubm90IHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINC/0LXRgNC10LzQtdGJ0LXQvdC40LUg0LrQvtC80LzQuNGC0L7Qsjog0KMg0LLQsNGBINC10YHRgtGMINC90LXQv9GA0L7QuNC90LTQtdC60YHQuNGA0L7QstCw0L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPLiIKIAotIzogc2VxdWVuY2VyLmM6MzU2MworIzogc2VxdWVuY2VyLmM6NDAwMAogbXNnaWQgImNhbm5vdCBhbWVuZCBub24tZXhpc3RpbmcgY29tbWl0IgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC40YHQv9GA0LDQstC40YLRjCDQvdC10YHRg9GJ0LXRgdGC0LLRg9GO0YnQuNC5INC60L7QvNC80LjRgiIKIAotIzogc2VxdWVuY2VyLmM6MzU2NQorIzogc2VxdWVuY2VyLmM6NDAwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGZpbGU6ICclcyciCiBtc2dzdHIgItC90LXQtNC+0L/Rg9GB0YLQuNC80YvQuSDRhNCw0LnQuzogwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzozNTY3CisjOiBzZXF1ZW5jZXIuYzo0MDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29udGVudHM6ICclcyciCiBtc2dzdHIgItC90LXQtNC+0L/Rg9GB0YLQuNC80L7QtSDRgdC+0LTQtdGA0LbQuNC80L7QtTogwqslc8K7IgogCi0jOiBzZXF1ZW5jZXIuYzozNTcwCisjOiBzZXF1ZW5jZXIuYzo0MDA3CiBtc2dpZCAiIgogIlxuIgogIllvdSBoYXZlIHVuY29tbWl0dGVkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuIFBsZWFzZSwgY29tbWl0IHRoZW1cbiIKICJmaXJzdCBhbmQgdGhlbiBydW4gJ2dpdCByZWJhc2UgLS1jb250aW51ZScgYWdhaW4uIgogbXNnc3RyICJcbtCjINCy0LDRgSDQuNC80LXRjtGC0YHRjyDQvdC10LfQsNC60L7QvNC80LjRh9C10L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPINCyINGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LUuINCh0LTQtdC70LDQudGC0LUg0LrQvtC80LzQuNGCLCDQsCDQt9Cw0YLQtdC8INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCByZWJhc2UgLS1jb250aW51ZcK7INGB0L3QvtCy0LAuIgogCi0jOiBzZXF1ZW5jZXIuYzozNTk1IHNlcXVlbmNlci5jOjM2MzMKKyM6IHNlcXVlbmNlci5jOjQwNDMgc2VxdWVuY2VyLmM6NDA4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZmlsZTogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzZXF1ZW5jZXIuYzozNjQ4CisjOiBzZXF1ZW5jZXIuYzo0MDk2CiBtc2dpZCAiY291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMIENIRVJSWV9QSUNLX0hFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjM2NTUKKyM6IHNlcXVlbmNlci5jOjQxMDMKIG1zZ2lkICJjb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0LrQvtC80LzQuNGC0LjRgtGMINC/0YDQvtC40L3QtNC10LrRgdC40YDQvtCy0LDQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8uIgogCi0jOiBzZXF1ZW5jZXIuYzozNzUyCisjOiBzZXF1ZW5jZXIuYzo0MjA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjYW4ndCBjaGVycnktcGljayBhICVzIgogbXNnc3RyICIlczog0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC60L7Qv9C40YDQvtCy0LDRgtGMINC60L7QvNC80LjRgiAlcyIKIAotIzogc2VxdWVuY2VyLmM6Mzc1NgorIzogc2VxdWVuY2VyLmM6NDIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogYmFkIHJldmlzaW9uIgogbXNnc3RyICIlczog0L/Qu9C+0YXQsNGPINGA0LXQtNCw0LrRhtC40Y8iCiAKLSM6IHNlcXVlbmNlci5jOjM3OTEKKyM6IHNlcXVlbmNlci5jOjQyNDMKIG1zZ2lkICJjYW4ndCByZXZlcnQgYXMgaW5pdGlhbCBjb21taXQiCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQstC+0LfQstGA0LDRgtC40YLRjCDQuNC30L3QsNGH0LDQu9GM0L3Ri9C5INC60L7QvNC80LjRgiIKIAotIzogc2VxdWVuY2VyLmM6NDIzOAorIzogc2VxdWVuY2VyLmM6NDY4NgogbXNnaWQgIm1ha2Vfc2NyaXB0OiB1bmhhbmRsZWQgb3B0aW9ucyIKIG1zZ3N0ciAibWFrZV9zY3JpcHQ6INC90LUg0L7QsdGA0LDQsdC+0YLQsNC90L3Ri9C1INC+0L/RhtC40LgiCiAKLSM6IHNlcXVlbmNlci5jOjQyNDEKKyM6IHNlcXVlbmNlci5jOjQ2ODkKIG1zZ2lkICJtYWtlX3NjcmlwdDogZXJyb3IgcHJlcGFyaW5nIHJldmlzaW9ucyIKIG1zZ3N0ciAibWFrZV9zY3JpcHQ6INC+0YjQuNCx0LrQsCDQv9GA0Lgg0L7QsdC90L7QstC70LXQvdC40Lgg0YDQtdC00LDQutGG0LjQuSIKIAotIzogc2VxdWVuY2VyLmM6NDI4MSBzZXF1ZW5jZXIuYzo0MzM3Ci0jLCBjLWZvcm1hdAotbXNnaWQgInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIKLW1zZ3N0ciAi0L3QtdC/0YDQuNCz0L7QtNC90YvQuSDQtNC70Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8g0YHQv9C40YHQvtC6INC00LXQuzogwqslc8K7IgotCi0jOiBzZXF1ZW5jZXIuYzo0Mzk2Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJ1bnJlY29nbml6ZWQgc2V0dGluZyAlcyBmb3Igb3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmluZy4iCi1tc2dzdHIgItC90LXRgNCw0YHQv9C+0LfQvdCw0L3QvdCw0Y8g0L3QsNGB0YLRgNC+0LnQutCwICVzINC00LvRjyDQvtC/0YbQuNC4IHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiDQmNCz0L3QvtGA0LjRgNGD0Y4uIgotCi0jOiBzZXF1ZW5jZXIuYzo0NDY2Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJXYXJuaW5nOiBzb21lIGNvbW1pdHMgbWF5IGhhdmUgYmVlbiBkcm9wcGVkIGFjY2lkZW50YWxseS5cbiIKLSJEcm9wcGVkIGNvbW1pdHMgKG5ld2VyIHRvIG9sZGVyKTpcbiIKLW1zZ3N0ciAi0JLQvdC40LzQsNC90LjQtTog0L3QtdC60L7RgtC+0YDRi9C1INC60L7QvNC80LjRgtGLINC80L7Qs9C70Lgg0LHRi9GC0Ywg0L7RgtCx0YDQvtGI0LXQvdGLINC/0L4g0L7RiNC40LHQutC1Llxu0J7RgtCx0YDQvtGI0LXQvdC90YvQtSDQutC+0LzQvNC40YLRiyAo0L7RgiDQvdC+0LLRi9GFINC6INGB0YLQsNGA0YvQvCk6XG4iCi0KLSM6IHNlcXVlbmNlci5jOjQ0NzMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotIlRvIGF2b2lkIHRoaXMgbWVzc2FnZSwgdXNlIFwiZHJvcFwiIHRvIGV4cGxpY2l0bHkgcmVtb3ZlIGEgY29tbWl0LlxuIgotIlxuIgotIlVzZSAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgdG8gY2hhbmdlIHRoZSBsZXZlbCBvZiB3YXJuaW5ncy5cbiIKLSJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCi0iXG4iCi1tc2dzdHIgItCU0LvRjyDQuNC30LHQtdC20LDQvdC40Y8g0Y3RgtC+0LPQviDRgdC+0L7QsdGJ0LXQvdC40Y8sINC40YHQv9C+0LvRjNC30YPQudGC0LUgwqtkcm9wwrsg0YfRgtC+0LHRiyDRj9Cy0L3QviDRg9C00LDQu9C40YLRjCDQutC+0LzQvNC40YIuXG5cbtCY0YHQv9C+0LvRjNC30YPQudGC0LUg0L7Qv9GG0LjRjiDCq2dpdCBjb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2vCuyDQtNC70Y8g0LjQt9C80LXQvdC10L3QuNGPINC60L7Qu9C40YfQtdGB0YLQstCwINC/0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LkuXG7QktC+0LfQvNC+0LbQvdGL0LUg0LfQvdCw0YfQtdC90LjRjzogaWdub3JlLCB3YXJuLCBlcnJvci5cblxuIgotCi0jOiBzZXF1ZW5jZXIuYzo0NDg2Ci0jLCBjLWZvcm1hdAorIzogc2VxdWVuY2VyLmM6NDg0NwogbXNnaWQgIiIKICJZb3UgY2FuIGZpeCB0aGlzIHdpdGggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJy5cbiIKICJPciB5b3UgY2FuIGFib3J0IHRoZSByZWJhc2Ugd2l0aCAnZ2l0IHJlYmFzZSAtLWFib3J0Jy5cbiIKIG1zZ3N0ciAi0JLRiyDQvNC+0LbQtdGC0LUg0LjRgdC/0YDQsNCy0LjRgtGMINGN0YLQviDRgSDQv9C+0LzQvtGJ0YzRjiDCq2dpdCByZWJhc2UgLS1lZGl0LXRvZG/Cuywg0LAg0L/QvtGC0L7QvCDQt9Cw0L/Rg9GB0YLQuNCyIMKrZ2l0IHJlYmFzZSAtLWNvbnRpbnVlwrsuXG7QmNC70Lgg0LLRiyDQvNC+0LbQtdGC0LUg0L/RgNC10YDQstCw0YLRjCDQv9GA0L7RhtC10YHRgSDQv9C10YDQtdC80LXRidC10L3QuNGPLCDQstGL0L/QvtC70L3QuNCyIMKrZ2l0IHJlYmFzZSAtLWFib3J0wrtcbiIKIAotIzogc2VxdWVuY2VyLmM6NDY2MAorIzogc2VxdWVuY2VyLmM6NDk1OSBzZXF1ZW5jZXIuYzo0OTc2Cittc2dpZCAibm90aGluZyB0byBkbyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzo0OTkwCittc2dpZCAiY291bGQgbm90IHNraXAgdW5uZWNlc3NhcnkgcGljayBjb21tYW5kcyIKK21zZ3N0ciAiIgorCisjOiBzZXF1ZW5jZXIuYzo1MDczCiBtc2dpZCAidGhlIHNjcmlwdCB3YXMgYWxyZWFkeSByZWFycmFuZ2VkLiIKIG1zZ3N0ciAi0YHRhtC10L3QsNGA0LjQuSDRg9C20LUg0LHRi9C7INC/0LXRgNC10YHRgtGA0L7QtdC9LiIKIApAQCAtNDYyNiwxNCArNjE1NCwxNCBAQAogbXNnaWQgIiclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IgogbXNnc3RyICLCqyVzwrsg0LLQvdC1INGA0LXQv9C+0LfQuNGC0L7RgNC40Y8iCiAKLSM6IHNldHVwLmM6MTcyCisjOiBzZXR1cC5jOjE3MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJXM6IG5vIHN1Y2ggcGF0aCBpbiB0aGUgd29ya2luZyB0cmVlLlxuIgogIlVzZSAnZ2l0IDxjb21tYW5kPiAtLSA8cGF0aD4uLi4nIHRvIHNwZWNpZnkgcGF0aHMgdGhhdCBkbyBub3QgZXhpc3QgbG9jYWxseS4iCiBtc2dzdHIgIiVzOiDQvdC10YIg0YLQsNC60L7Qs9C+INC/0YPRgtC4INCyINGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LUuXG7QmNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrZ2l0IDzQutC+0LzQsNC90LTQsD4gLS0gPNC/0YPRgtGMPuKApsK7INC00LvRjyDRg9C60LDQt9Cw0L3QuNGPINC/0YPRgtC10LksINC60L7RgtC+0YDRi9C1INC90LUg0YHRg9GJ0LXRgdGC0LLRg9GO0YIg0LvQvtC60LDQu9GM0L3Qvi4iCiAKLSM6IHNldHVwLmM6MTg1CisjOiBzZXR1cC5jOjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IHVua25vd24gcmV2aXNpb24gb3IgcGF0aCBub3QgaW4gdGhlIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTQ2NDEsMTIgKzYxNjksMTIgQEAKICInZ2l0IDxjb21tYW5kPiBbPHJldmlzaW9uPi4uLl0gLS0gWzxmaWxlPi4uLl0nIgogbXNnc3RyICLQvdC10L7QtNC90L7Qt9C90LDRh9C90YvQuSDQsNGA0LPRg9C80LXQvdGCIMKrJXPCuzog0L3QtdC40LfQstC10YHRgtC90LDRjyDRgNC10LTQsNC60YbQuNGPINC40LvQuCDQvdC1INC/0YPRgtGMINCyINGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LUuXG7QmNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrLS3CuyDQtNC70Y8g0L7RgtC00LXQu9C10L3QuNGPINC/0YPRgtC10Lkg0L7RgiDRgNC10LTQsNC60YbQuNC5LCDQstC+0YIg0YLQsNC6OlxuwqtnaXQgPNC60L7QvNCw0L3QtNCwPiBbPNGA0LXQtNCw0LrRhtC40Y8+4oCmXSAtLSBbPNGE0LDQudC7PuKApl3CuyIKIAotIzogc2V0dXAuYzoyMzQKKyM6IHNldHVwLmM6MjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9wdGlvbiAnJXMnIG11c3QgY29tZSBiZWZvcmUgbm9uLW9wdGlvbiBhcmd1bWVudHMiCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzoyNTMKKyM6IHNldHVwLmM6MjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJhbWJpZ3VvdXMgYXJndW1lbnQgJyVzJzogYm90aCByZXZpc2lvbiBhbmQgZmlsZW5hbWVcbiIKQEAgLTQ2NTQsMzc2ICs2MTgyLDM3NiBAQAogIidnaXQgPGNvbW1hbmQ+IFs8cmV2aXNpb24+Li4uXSAtLSBbPGZpbGU+Li4uXSciCiBtc2dzdHIgItC90LXQvtC00L3QvtC30L3QsNGH0L3Ri9C5INCw0YDQs9GD0LzQtdC90YIgwqslc8K7OiDRj9Cy0LvRj9C10YLRgdGPINC+0LTQvdC+0LLRgNC10LzQtdC90L3QviDQuCDRgNC10LTQsNC60YbQuNC10Lkg0Lgg0LjQvNC10L3QtdC8INGE0LDQudC70LAuXG7QmNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrLS3CuyDQtNC70Y8g0L7RgtC00LXQu9C10L3QuNGPINC/0YPRgtC10Lkg0L7RgiDRgNC10LTQsNC60YbQuNC5LCDQstC+0YIg0YLQsNC6OlxuwqtnaXQgPNC60L7QvNCw0L3QtNCwPiBbPNGA0LXQtNCw0LrRhtC40Y8+4oCmXSAtLSBbPNGE0LDQudC7PuKApl3CuyIKIAotIzogc2V0dXAuYzozODkKKyM6IHNldHVwLmM6MzkwCiBtc2dpZCAidW5hYmxlIHRvIHNldCB1cCB3b3JrIHRyZWUgdXNpbmcgaW52YWxpZCBjb25maWciCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzozOTMKKyM6IHNldHVwLmM6Mzk0CiBtc2dpZCAidGhpcyBvcGVyYXRpb24gbXVzdCBiZSBydW4gaW4gYSB3b3JrIHRyZWUiCiBtc2dzdHIgIiIKIAotIzogc2V0dXAuYzo1MDMKKyM6IHNldHVwLmM6NTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkV4cGVjdGVkIGdpdCByZXBvIHZlcnNpb24gPD0gJWQsIGZvdW5kICVkIgogbXNnc3RyICLQntC20LjQtNCw0LXQvNCw0Y8g0LLQtdGA0YHQuNGPIGdpdCDRgNC10L/QvtC30LjRgtC+0YDQuNGPIDw9ICVkLCDQsCDQvtCx0L3QsNGA0YPQttC10L3QsCAlZCIKIAotIzogc2V0dXAuYzo1MTEKKyM6IHNldHVwLmM6NTQ4CiBtc2dpZCAidW5rbm93biByZXBvc2l0b3J5IGV4dGVuc2lvbnMgZm91bmQ6IgogbXNnc3RyICLQvtCx0L3QsNGA0YPQttC10L3RiyDQvdC10LjQt9Cy0LXRgdGC0L3Ri9C1INGA0LDRgdGI0LjRgNC10L3QuNGPINGA0LXQv9C+0LfQuNGC0L7RgNC40Y86IgogCi0jOiBzZXR1cC5jOjUzMAorIzogc2V0dXAuYzo1NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3Igb3BlbmluZyAnJXMnIgogbXNnc3RyICLQvtGI0LjQsdC60LAg0L7RgtC60YDRi9GC0LjRjyDCqyVzwrsiCiAKLSM6IHNldHVwLmM6NTMyCisjOiBzZXR1cC5jOjU2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0b28gbGFyZ2UgdG8gYmUgYSAuZ2l0IGZpbGU6ICclcyciCiBtc2dzdHIgItGE0LDQudC7INGB0LvQuNGI0LrQvtC8INCx0L7Qu9GM0YjQvtC5INC60LDQuiDQtNC70Y8gLmdpdCDRhNCw0LnQu9CwOiDCqyVzwrsiCiAKLSM6IHNldHVwLmM6NTM0CisjOiBzZXR1cC5jOjU3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciByZWFkaW5nICVzIgogbXNnc3RyICLQvtGI0LjQsdC60LAg0YfRgtC10L3QuNGPICVzIgogCi0jOiBzZXR1cC5jOjUzNgorIzogc2V0dXAuYzo1NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBnaXRmaWxlIGZvcm1hdDogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90YvQuSDRhNC+0YDQvNCw0YIg0YTQsNC50LvQsCBnaXRmaWxlOiAlcyIKIAotIzogc2V0dXAuYzo1MzgKKyM6IHNldHVwLmM6NTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHBhdGggaW4gZ2l0ZmlsZTogJXMiCiBtc2dzdHIgItC90LXRgiDQv9GD0YLQuCDQsiBnaXRmaWxlOiAlcyIKIAotIzogc2V0dXAuYzo1NDAKKyM6IHNldHVwLmM6NTc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5OiAlcyIKIG1zZ3N0ciAi0L3QtSDRj9Cy0LvRj9C10YLRgdGPINGA0LXQv9C+0LfQuNGC0L7RgNC40LXQvCBnaXQ6ICVzIgogCi0jOiBzZXR1cC5jOjYzOQorIzogc2V0dXAuYzo2NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyQlcycgdG9vIGJpZyIKIG1zZ3N0ciAiwqskJXPCuyDRgdC70LjRiNC60L7QvCDQsdC+0LvRjNGI0L7QuSIKIAotIzogc2V0dXAuYzo2NTMKKyM6IHNldHVwLmM6NjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5OiAnJXMnIgogbXNnc3RyICLQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0YDQtdC/0L7Qt9C40YLQvtGA0LjQtdC8IGdpdDogwqslc8K7IgogCi0jOiBzZXR1cC5jOjY4MiBzZXR1cC5jOjY4NCBzZXR1cC5jOjcxNQorIzogc2V0dXAuYzo3MTkgc2V0dXAuYzo3MjEgc2V0dXAuYzo3NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoZGlyIHRvICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIGNoZGlyINCyIMKrJXPCuyIKIAotIzogc2V0dXAuYzo2ODcgc2V0dXAuYzo3NDMgc2V0dXAuYzo3NTMgc2V0dXAuYzo3OTIgc2V0dXAuYzo4MDAgc2V0dXAuYzo4MTUKKyM6IHNldHVwLmM6NzI0IHNldHVwLmM6NzgwIHNldHVwLmM6NzkwIHNldHVwLmM6ODI5IHNldHVwLmM6ODM3CiBtc2dpZCAiY2Fubm90IGNvbWUgYmFjayB0byBjd2QiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLQtdGA0L3Rg9GC0YzRgdGPINCyIGN3ZCIKIAotIzogc2V0dXAuYzo4MTMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBvZiB0aGUgcGFyZW50IGRpcmVjdG9yaWVzKTogJXMiCi1tc2dzdHIgItC90LUg0L3QsNC50LTQtdC9IGdpdCDRgNC10L/QvtC30LjRgtC+0YDQuNC5ICjQuNC70Lgg0L7QtNC40L0g0LjQtyDRgNC+0LTQuNGC0LXQu9GM0YHQutC40YUg0LrQsNGC0LDQu9C+0LPQvtCyKTogJXMiCi0KLSM6IHNldHVwLmM6ODI0CisjOiBzZXR1cC5jOjg1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJSpzJXMlcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHN0YXQg0LTQu9GPIMKrJSpzJXMlc8K7IgogCi0jOiBzZXR1cC5jOjEwNTQKKyM6IHNldHVwLmM6MTA4MwogbXNnaWQgIlVuYWJsZSB0byByZWFkIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMINGC0LXQutGD0YnQuNC5INGA0LDQsdC+0YfQuNC5INC60LDRgtCw0LvQvtCzIgogCi0jOiBzZXR1cC5jOjEwNjYgc2V0dXAuYzoxMDcyCisjOiBzZXR1cC5jOjEwOTIgc2V0dXAuYzoxMDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGFuZ2UgdG8gJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQuNC30LzQtdC90LjRgtGMINC90LAgwqslc8K7IgogCi0jOiBzZXR1cC5jOjEwODUKKyM6IHNldHVwLmM6MTEwMworIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeSAob3IgYW55IG9mIHRoZSBwYXJlbnQgZGlyZWN0b3JpZXMpOiAlcyIKK21zZ3N0ciAi0L3QtSDQvdCw0LnQtNC10L0gZ2l0INGA0LXQv9C+0LfQuNGC0L7RgNC40LkgKNC40LvQuCDQvtC00LjQvSDQuNC3INGA0L7QtNC40YLQtdC70YzRgdC60LjRhSDQutCw0YLQsNC70L7Qs9C+0LIpOiAlcyIKKworIzogc2V0dXAuYzoxMTA5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJub3QgYSBnaXQgcmVwb3NpdG9yeSAob3IgYW55IHBhcmVudCB1cCB0byBtb3VudCBwb2ludCAlcylcbiIKICJTdG9wcGluZyBhdCBmaWxlc3lzdGVtIGJvdW5kYXJ5IChHSVRfRElTQ09WRVJZX0FDUk9TU19GSUxFU1lTVEVNIG5vdCBzZXQpLiIKIG1zZ3N0ciAi0L3QtSDQvdCw0LnQtNC10L0gZ2l0INGA0LXQv9C+0LfQuNGC0L7RgNC40LkgKNC40LvQuCDQvtC00LjQvSDQuNC3INC10LPQviDQutCw0YLQsNC70L7Qs9C+0LIg0LLQv9C70L7RgtGMINC00L4g0YLQvtGH0LrQuCDQvNC+0L3RgtC40YDQvtCy0LDQvdC40Y8gJXMpXG7QntGB0YLQsNC90LDQstC70LjQstCw0Y4g0L/QvtC40YHQuiDQvdCwINCz0YDQsNC90LjRhtC1INGE0LDQudC70L7QstC+0Lkg0YHQuNGB0YLQtdC80YsgKNGC0LDQuiDQutCw0LogR0lUX0RJU0NPVkVSWV9BQ1JPU1NfRklMRVNZU1RFTSDQvdC1INGD0YHRgtCw0L3QvtCy0LvQtdC9KS4iCiAKLSM6IHNldHVwLmM6MTE2OAorIzogc2V0dXAuYzoxMjIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJwcm9ibGVtIHdpdGggY29yZS5zaGFyZWRSZXBvc2l0b3J5IGZpbGVtb2RlIHZhbHVlICgwJS4zbykuXG4iCiAiVGhlIG93bmVyIG9mIGZpbGVzIG11c3QgYWx3YXlzIGhhdmUgcmVhZCBhbmQgd3JpdGUgcGVybWlzc2lvbnMuIgogbXNnc3RyICIiCiAKLSM6IHNldHVwLmM6MTIxMQorIzogc2V0dXAuYzoxMjY0CiBtc2dpZCAib3BlbiAvZGV2L251bGwgb3IgZHVwIGZhaWxlZCIKIG1zZ3N0ciAi0YHQsdC+0Lkg0L7RgtC60YDRi9GC0LjRjyAvZGV2L251bGwg0LjQu9C4INC00YPQsdC70LjRgNC+0LLQsNC90LjRjyDQtNC10YHQutGA0LjQv9GC0L7RgNCwIgogCi0jOiBzZXR1cC5jOjEyMjYKKyM6IHNldHVwLmM6MTI3OQogbXNnaWQgImZvcmsgZmFpbGVkIgogbXNnc3RyICLRgdCx0L7QuSDQv9GA0Lgg0LLRi9C/0L7Qu9C90LXQvdC40LggZm9yayIKIAotIzogc2V0dXAuYzoxMjMxCisjOiBzZXR1cC5jOjEyODQKIG1zZ2lkICJzZXRzaWQgZmFpbGVkIgogbXNnc3RyICLRgdCx0L7QuSDQv9GA0Lgg0LLRi9C/0L7Qu9C90LXQvdC40Lggc2V0c2lkIgogCi0jOiBzaGExLWZpbGUuYzozODEKKyM6IHNoYTEtZmlsZS5jOjQ1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgZGlyZWN0b3J5ICVzIGRvZXMgbm90IGV4aXN0OyBjaGVjayAuZ2l0L29iamVjdHMvaW5mby9hbHRlcm5hdGVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjQzMgorIzogc2hhMS1maWxlLmM6NTA0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgYWx0ZXJuYXRlIG9iamVjdCBwYXRoOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzo1MDMKKyM6IHNoYTEtZmlsZS5jOjU3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogaWdub3JpbmcgYWx0ZXJuYXRlIG9iamVjdCBzdG9yZXMsIG5lc3RpbmcgdG9vIGRlZXAiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6NTEwCisjOiBzaGExLWZpbGUuYzo1ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG5vcm1hbGl6ZSBvYmplY3QgZGlyZWN0b3J5OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzo1NjUKKyM6IHNoYTEtZmlsZS5jOjYyNgogbXNnaWQgInVuYWJsZSB0byBmZG9wZW4gYWx0ZXJuYXRlcyBsb2NrZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzo1ODMKKyM6IHNoYTEtZmlsZS5jOjY0NAogbXNnaWQgInVuYWJsZSB0byByZWFkIGFsdGVybmF0ZXMgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzo1OTAKKyM6IHNoYTEtZmlsZS5jOjY1MQogbXNnaWQgInVuYWJsZSB0byBtb3ZlIG5ldyBhbHRlcm5hdGVzIGZpbGUgaW50byBwbGFjZSIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzo2MjUKKyM6IHNoYTEtZmlsZS5jOjY4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgItC/0YPRgtGMIMKrJXPCuyDQvdC1INGB0YPRidC10YHRgtCy0YPQtdGCIgogCi0jOiBzaGExLWZpbGUuYzo2NTEKKyM6IHNoYTEtZmlsZS5jOjcxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGFzIGEgbGlua2VkIGNoZWNrb3V0IGlzIG5vdCBzdXBwb3J0ZWQgeWV0LiIKIG1zZ3N0ciAi0YHRgdGL0LvQsNC10LzRi9C5INGA0LXQv9C+0LfQuNGC0L7RgNC40Lkgwqslc8K7INC60LDQuiDRgdCy0Y/Qt9Cw0L3QvdC+0LUg0YHQvtGB0YLQvtGP0L3QuNC1LCDQv9C+0LrQsCDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgtGB0Y8uIgogCi0jOiBzaGExLWZpbGUuYzo2NTcKKyM6IHNoYTEtZmlsZS5jOjcxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIG5vdCBhIGxvY2FsIHJlcG9zaXRvcnkuIgogbXNnc3RyICLRgdGB0YvQu9Cw0LXQvNGL0Lkg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuSDCqyVzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC70L7QutCw0LvRjNC90YvQvC4iCiAKLSM6IHNoYTEtZmlsZS5jOjY2MworIzogc2hhMS1maWxlLmM6NzI0CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgc2hhbGxvdyIKIG1zZ3N0ciAi0YHRgdGL0LvQsNC10LzRi9C5INGA0LXQv9C+0LfQuNGC0L7RgNC40Lkgwqslc8K7INGP0LLQu9GP0LXRgtGB0Y8g0YfQsNGB0YLQuNGH0L3Ri9C8IgogCi0jOiBzaGExLWZpbGUuYzo2NzEKKyM6IHNoYTEtZmlsZS5jOjczMgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIGdyYWZ0ZWQiCiBtc2dzdHIgItGB0YHRi9C70LDQtdC80YvQuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5IMKrJXPCuyDRj9Cy0LvRj9C10YLRgdGPINGB0YDQsNGJ0LXQvdC90YvQvCIKIAotIzogc2hhMS1maWxlLmM6NzgxCisjOiBzaGExLWZpbGUuYzo4NDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiYXR0ZW1wdGluZyB0byBtbWFwICU8UFJJdU1BWD4gb3ZlciBsaW1pdCAlPFBSSXVNQVg+IgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjgwNgorIzogc2hhMS1maWxlLmM6ODcxCiBtc2dpZCAibW1hcCBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6OTczCisjOiBzaGExLWZpbGUuYzoxMDM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCBmaWxlICVzIGlzIGVtcHR5IgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjEwOTMgc2hhMS1maWxlLmM6MjIwNgorIzogc2hhMS1maWxlLmM6MTE1OSBzaGExLWZpbGUuYzoyMjk3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgbG9vc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTA5NSBzaGExLWZpbGUuYzoyMjEwCisjOiBzaGExLWZpbGUuYzoxMTYxIHNoYTEtZmlsZS5jOjIzMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2FyYmFnZSBhdCBlbmQgb2YgbG9vc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTEzNworIzogc2hhMS1maWxlLmM6MTIwMwogbXNnaWQgImludmFsaWQgb2JqZWN0IHR5cGUiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTIxOQorIzogc2hhMS1maWxlLmM6MTI4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5wYWNrICVzIGhlYWRlciB3aXRoIC0tYWxsb3ctdW5rbm93bi10eXBlIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMjIKKyM6IHNoYTEtZmlsZS5jOjEyOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayAlcyBoZWFkZXIiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTIyOAorIzogc2hhMS1maWxlLmM6MTI5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJXMgaGVhZGVyIHdpdGggLS1hbGxvdy11bmtub3duLXR5cGUiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTIzMQorIzogc2hhMS1maWxlLmM6MTI5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJXMgaGVhZGVyIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE0MjIKKyM6IHNoYTEtZmlsZS5jOjE0OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgb2JqZWN0ICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE0MjYKKyM6IHNoYTEtZmlsZS5jOjE0OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZW1lbnQgJXMgbm90IGZvdW5kIGZvciAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxNDMwCisjOiBzaGExLWZpbGUuYzoxNDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvb3NlIG9iamVjdCAlcyAoc3RvcmVkIGluICVzKSBpcyBjb3JydXB0IgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE0MzQKKyM6IHNoYTEtZmlsZS5jOjE1MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFja2VkIG9iamVjdCAlcyAoc3RvcmVkIGluICVzKSBpcyBjb3JydXB0IgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE1MzYKKyM6IHNoYTEtZmlsZS5jOjE2MDQKICMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIHdyaXRlIHNoYTEgZmlsZW5hbWUgJXMiCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJXMiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTU0MworIzogc2hhMS1maWxlLmM6MTYxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gc2V0IHBlcm1pc3Npb24gdG8gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxNTUwCisjOiBzaGExLWZpbGUuYzoxNjE4CiBtc2dpZCAiZmlsZSB3cml0ZSBlcnJvciIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxNTY5Ci1tc2dpZCAiZXJyb3Igd2hlbiBjbG9zaW5nIHNoYTEgZmlsZSIKKyM6IHNoYTEtZmlsZS5jOjE2MzcKK21zZ2lkICJlcnJvciB3aGVuIGNsb3NpbmcgbG9vc2Ugb2JqZWN0IGZpbGUiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTYzNQorIzogc2hhMS1maWxlLmM6MTcwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnN1ZmZpY2llbnQgcGVybWlzc2lvbiBmb3IgYWRkaW5nIGFuIG9iamVjdCB0byByZXBvc2l0b3J5IGRhdGFiYXNlICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE2MzcKKyM6IHNoYTEtZmlsZS5jOjE3MDQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBmaWxlIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NjEKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgc2hhMSBmaWxlIgorIzogc2hhMS1maWxlLmM6MTcyOAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBsb29zZSBvYmplY3QgZmlsZSIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxNjY3CisjOiBzaGExLWZpbGUuYzoxNzM0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBkZWZsYXRlIG5ldyBvYmplY3QgJXMgKCVkKSIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxNjcxCisjOiBzaGExLWZpbGUuYzoxNzM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlZmxhdGVFbmQgb24gb2JqZWN0ICVzIGZhaWxlZCAoJWQpIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NzUKKyM6IHNoYTEtZmlsZS5jOjE3NDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29uZnVzZWQgYnkgdW5zdGFibGUgb2JqZWN0IHNvdXJjZSBkYXRhIGZvciAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxNjg1IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODk5CisjOiBzaGExLWZpbGUuYzoxNzUyIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB1dGltZSgpIG9uICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE3NjAKKyM6IHNoYTEtZmlsZS5jOjE4MjcKICMsIGMtZm9ybWF0Ci1tc2dpZCAiY2Fubm90IHJlYWQgc2hhMV9maWxlIGZvciAlcyIKK21zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgZm9yICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE4MDUKKyM6IHNoYTEtZmlsZS5jOjE4NjcKIG1zZ2lkICJjb3JydXB0IGNvbW1pdCIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxODEzCisjOiBzaGExLWZpbGUuYzoxODc1CiBtc2dpZCAiY29ycnVwdCB0YWciCiBtc2dzdHIgIiIKIAotIzogc2hhMS1maWxlLmM6MTkwNgorIzogc2hhMS1maWxlLmM6MTk3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkIGVycm9yIHdoaWxlIGluZGV4aW5nICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE5MDkKKyM6IHNoYTEtZmlsZS5jOjE5NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAic2hvcnQgcmVhZCB3aGlsZSBpbmRleGluZyAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoxOTgwIHNoYTEtZmlsZS5jOjE5ODkKKyM6IHNoYTEtZmlsZS5jOjIwNTAgc2hhMS1maWxlLmM6MjA1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZmFpbGVkIHRvIGluc2VydCBpbnRvIGRhdGFiYXNlIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjE5OTUKKyM6IHNoYTEtZmlsZS5jOjIwNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHVuc3VwcG9ydGVkIGZpbGUgdHlwZSIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoyMDE5CisjOiBzaGExLWZpbGUuYzoyMDg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIG9iamVjdCIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoyMDIxCisjOiBzaGExLWZpbGUuYzoyMDkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkICclcycgb2JqZWN0IgogbXNnc3RyICIlcyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LTQtdC50YHRgtCy0LjRgtC10LvRjNC90YvQvCDQvtCx0YrQtdC60YLQvtC8IMKrJXPCuyIKIAotIzogc2hhMS1maWxlLmM6MjA0OCBidWlsdGluL2luZGV4LXBhY2suYzoxNTgKKyM6IHNoYTEtZmlsZS5jOjIxMTggYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMICVzIgogCi0jOiBzaGExLWZpbGUuYzoyMjE3IHNoYTEtZmlsZS5jOjIyNjkKKyM6IHNoYTEtZmlsZS5jOjIzMDggc2hhMS1maWxlLmM6MjM2MAogIywgYy1mb3JtYXQKLW1zZ2lkICJzaGExIG1pc21hdGNoIGZvciAlcyAoZXhwZWN0ZWQgJXMpIgotbXNnc3RyICIiCittc2dpZCAiaGFzaCBtaXNtYXRjaCBmb3IgJXMgKGV4cGVjdGVkICVzKSIKK21zZ3N0ciAi0L3QtdGB0L7QvtGC0LLQtdGC0YHRgtCy0LjQtSDRhdC10Ygt0YHRg9C80LzRiyAlcyAo0L7QttC40LTQsNC10YLRgdGPICVzKSIKIAotIzogc2hhMS1maWxlLmM6MjI0MQorIzogc2hhMS1maWxlLmM6MjMzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbW1hcCAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoyMjQ2CisjOiBzaGExLWZpbGUuYzoyMzM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgaGVhZGVyIG9mICVzIgogbXNnc3RyICIiCiAKLSM6IHNoYTEtZmlsZS5jOjIyNTIKKyM6IHNoYTEtZmlsZS5jOjIzNDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGhlYWRlciBvZiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBzaGExLWZpbGUuYzoyMjYzCisjOiBzaGExLWZpbGUuYzoyMzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgY29udGVudHMgb2YgJXMiCiBtc2dzdHIgIiIKIAotIzogc2hhMS1uYW1lLmM6NDQ0CisjOiBzaGExLW5hbWUuYzo0OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAic2hvcnQgU0hBMSAlcyBpcyBhbWJpZ3VvdXMiCiBtc2dzdHIgItGB0L7QutGA0LDRidGR0L3QvdGL0LkgU0hBMSDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCAlcyDQvdC10L7QtNC90L7Qt9C90LDRh9C10L0iCiAKLSM6IHNoYTEtbmFtZS5jOjQ1NQorIzogc2hhMS1uYW1lLmM6NTAxCiBtc2dpZCAiVGhlIGNhbmRpZGF0ZXMgYXJlOiIKIG1zZ3N0ciAi0JLQvtC30LzQvtC20L3Qviwg0LLRiyDQuNC80LXQu9C4INCyINCy0LjQtNGDOiIKIAotIzogc2hhMS1uYW1lLmM6Njk5CisjOiBzaGExLW5hbWUuYzo4MDAKIG1zZ2lkICIiCiAiR2l0IG5vcm1hbGx5IG5ldmVyIGNyZWF0ZXMgYSByZWYgdGhhdCBlbmRzIHdpdGggNDAgaGV4IGNoYXJhY3RlcnNcbiIKICJiZWNhdXNlIGl0IHdpbGwgYmUgaWdub3JlZCB3aGVuIHlvdSBqdXN0IHNwZWNpZnkgNDAtaGV4LiBUaGVzZSByZWZzXG4iCkBAIC01MDM2LDk2ICs2NTY0LDkwIEBACiAicnVubmluZyBcImdpdCBjb25maWcgYWR2aWNlLm9iamVjdE5hbWVXYXJuaW5nIGZhbHNlXCIiCiBtc2dzdHIgItCe0LHRi9GH0L3QviBHaXQg0L3QtSDRgdC+0LfQtNCw0LXRgiDRgdGB0YvQu9C60LgsINC+0LrQsNC90YfQuNCy0LDRjtGJ0LjQtdGB0Y8g0L3QsCA0MCDRiNC10YHRgtC90LDQtNGG0LDRgtC10YDQuNGH0L3Ri9GFXG7RgdC40LzQstC+0LvQvtCyLCDQv9C+0YLQvtC80YMsINGH0YLQviDQvtC90Lgg0LHRg9C00YPRgiDQuNCz0L3QvtGA0LjRgNC+0LLQsNGC0YzRgdGPLCDQutC+0LPQtNCwINCy0Ysg0L/RgNC+0YHRgtC+XG7Rg9C60LDQttC10YLQtSDRjdGC0L4gNDAt0YHQuNC80LLQvtC70YzQvdC+0LUg0YjQtdGB0YLQvdCw0LTRhtCw0YLQtdGA0LjRh9C90L7QtSDRh9C40YHQu9C+LiDQotCw0LrQuNC1INGB0YHRi9C70LrQuFxu0LzQvtCz0LvQuCDQsdGL0YLRjCDRgdC+0LfQtNCw0L3RiyDQv9C+INC+0YjQuNCx0LrQtS4g0J3QsNC/0YDQuNC80LXRgCwg0YEg0L/QvtC80L7RidGM0Y46XG5cbiAgZ2l0IGNoZWNrb3V0IC1iICRiciAkKGdpdCByZXYtcGFyc2Ug4oCmKVxuXG4sINC10YHQu9C4IMKrJGJywrsg0L7QutCw0LfQsNC70YHRjyDQv9GD0YHRgtGL0LwsINGC0L4g0YHRgdGL0LvQutCwINGBIDQwLdGB0LjQvNCy0L7Qu9GM0L3Ri9C8XG7RiNC10YHRgtC90LDQtNGG0LDRgtC10YDQuNGH0L3Ri9C8INGH0LjRgdC70L7QvCDQsdGD0LTQtdGCINGB0L7Qt9C00LDQvdCwLiDQn9C+0LbQsNC70YPQudGB0YLQsCwg0L/RgNC+0YHQvNC+0YLRgNC40YLQtSDRjdGC0LhcbtGB0YHRi9C70LrQuCDQuCwg0LLQvtC30LzQvtC20L3Qviwg0YPQtNCw0LvQuNGC0LUg0LjRhS4g0JLRiyDQvNC+0LbQtdGC0LUg0L7RgtC60LvRjtGH0LjRgtGMINGN0YLQviDRgdC+0L7QsdGJ0LXQvdC40LVcbtC30LDQv9GD0YHRgtC40LIgwqtnaXQgY29uZmlnIGFkdmljZS5vYmplY3ROYW1lV2FybmluZyBmYWxzZcK7IgogCi0jOiBzdWJtb2R1bGUuYzo5NyBzdWJtb2R1bGUuYzoxMzEKKyM6IHN1Ym1vZHVsZS5jOjExNCBzdWJtb2R1bGUuYzoxNDMKIG1zZ2lkICJDYW5ub3QgY2hhbmdlIHVubWVyZ2VkIC5naXRtb2R1bGVzLCByZXNvbHZlIG1lcmdlIGNvbmZsaWN0cyBmaXJzdCIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQuNC30LzQtdC90LjRgtGMINC90LUg0YHQu9C40YLRi9C5IC5naXRtb2R1bGVzLCDRgdC90LDRh9Cw0LvQsCDRgNCw0LfRgNC10YjQuNGC0LUg0LrQvtC90YTQu9C40LrRgtGLIgogCi0jOiBzdWJtb2R1bGUuYzoxMDEgc3VibW9kdWxlLmM6MTM1CisjOiBzdWJtb2R1bGUuYzoxMTggc3VibW9kdWxlLmM6MTQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBmaW5kIHNlY3Rpb24gaW4gLmdpdG1vZHVsZXMgd2hlcmUgcGF0aD0lcyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INGA0LDQt9C00LXQuyDQsiAuZ2l0bW9kdWxlcywg0LPQtNC1INC/0YPRgtGMINGA0LDQstC10L0gJXMiCiAKLSM6IHN1Ym1vZHVsZS5jOjEwOQotIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgdXBkYXRlIC5naXRtb2R1bGVzIGVudHJ5ICVzIgotbXNnc3RyICIg0J3QtSDRg9C00LDQu9C+0YHRjCDQvtCx0L3QvtCy0LjRgtGMIC5naXRtb2R1bGVzINC30LDQv9C40YHRjCAlcyIKLQotIzogc3VibW9kdWxlLmM6MTQyCisjOiBzdWJtb2R1bGUuYzoxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSAuZ2l0bW9kdWxlcyBlbnRyeSBmb3IgJXMiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0Ywg0LfQsNC/0LjRgdGMINCyIC5naXRtb2R1bGVzINC00LvRjyAlcyIKIAotIzogc3VibW9kdWxlLmM6MTUzCisjOiBzdWJtb2R1bGUuYzoxNjUKIG1zZ2lkICJzdGFnaW5nIHVwZGF0ZWQgLmdpdG1vZHVsZXMgZmFpbGVkIgogbXNnc3RyICLRgdCx0L7QuSDQuNC90LTQtdC60YHQuNGA0L7QstCw0L3QuNGPINC+0LHQvdC+0LLQu9C10L3QvdC+0LPQviAuZ2l0bW9kdWxlcyIKIAotIzogc3VibW9kdWxlLmM6MzE1CisjOiBzdWJtb2R1bGUuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW4gdW5wb3B1bGF0ZWQgc3VibW9kdWxlICclcyciCiBtc2dzdHIgItCyINC/0YPRgdGC0L7QvCDQv9C+0LTQvNC+0LTRg9C70LUgwqslc8K7IgogCi0jOiBzdWJtb2R1bGUuYzozNDYKKyM6IHN1Ym1vZHVsZS5jOjM1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJQYXRoc3BlYyAnJXMnIGlzIGluIHN1Ym1vZHVsZSAnJS4qcyciCiBtc2dzdHIgItCh0L/QtdGG0LjRhNC40LrQsNGC0L7RgCDQv9GD0YLQuCDCqyVzwrsg0LIg0L/QvtC00LzQvtC00YPQu9C1IMKrJS4qc8K7IgogCi0jOiBzdWJtb2R1bGUuYzo4MzkKKyM6IHN1Ym1vZHVsZS5jOjkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgZW50cnkgJyVzJyAoJXMpIGlzIGEgJXMsIG5vdCBhIGNvbW1pdCIKIG1zZ3N0ciAi0LfQsNC/0LjRgdGMINC/0L7QtNC80L7QtNGD0LvRjyDCqyVzwrsgKCVzKSDRj9Cy0LvRj9C10YLRgdGPICVzLCDQsCDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LrQvtC80LzQuNGC0L7QvCIKIAotIzogc3VibW9kdWxlLmM6MTA3MSBidWlsdGluL2JyYW5jaC5jOjY2MiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg4OAorIzogc3VibW9kdWxlLmM6MTE0NyBidWlsdGluL2JyYW5jaC5jOjY3MiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk4OAogbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlIEhFQUQgYXMgYSB2YWxpZCByZWYuIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC+0L/RgNC10LTQtdC70LjRgtGMIEhFQUQg0LrQsNC6INC00LXQudGB0YLQstC40YLQtdC70YzQvdGD0Y4g0YHRgdGL0LvQutGDLiIKIAotIzogc3VibW9kdWxlLmM6MTM3NworIzogc3VibW9kdWxlLmM6MTQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgYWNjZXNzIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS5jOjE2NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBub3QgcmVjb2duaXplZCBhcyBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICLCqyVzwrsg0L3QtSDRgNCw0YHQv9C+0LfQvdCw0L0g0LrQsNC6INGA0LXQv9C+0LfQuNGC0L7RgNC40LkgZ2l0IgogCi0jOiBzdWJtb2R1bGUuYzoxNTE1CisjOiBzdWJtb2R1bGUuYzoxNzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGFydCAnZ2l0IHN0YXR1cycgaW4gc3VibW9kdWxlICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0YPRgdGC0LjRgtGMIMKrZ2l0IHN0YXR1c8K7INCyINC/0L7QtNC80L7QtNGD0LvQtSDCqyVzwrsiCiAKLSM6IHN1Ym1vZHVsZS5jOjE1MjgKKyM6IHN1Ym1vZHVsZS5jOjE4MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJ1biAnZ2l0IHN0YXR1cycgaW4gc3VibW9kdWxlICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0YPRgdGC0LjRgtGMIMKrZ2l0IHN0YXR1c8K7INCyINC/0L7QtNC80L7QtNGD0LvQtSDCqyVzwrsiCiAKLSM6IHN1Ym1vZHVsZS5jOjE1NDMKKyM6IHN1Ym1vZHVsZS5jOjE4MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHVuc2V0IGNvcmUud29ya3RyZWUgc2V0dGluZyBpbiBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBzdWJtb2R1bGUuYzoxNjMzCisjOiBzdWJtb2R1bGUuYzoxOTA3CiAjLCBjLWZvcm1hdAogbXNnaWQgInN1Ym1vZHVsZSAnJXMnIGhhcyBkaXJ0eSBpbmRleCIKIG1zZ3N0ciAi0L/QvtC00LzQvtC00YPQu9GMIMKrJXPCuyDQuNC80LXQtdGCINC40LfQvNC10L3RkdC90L3Ri9C5INC40L3QtNC10LrRgSIKIAotIzogc3VibW9kdWxlLmM6MTY4NQorIzogc3VibW9kdWxlLmM6MTk1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyBjb3VsZCBub3QgYmUgdXBkYXRlZC4iCiBtc2dzdHIgIiIKIAotIzogc3VibW9kdWxlLmM6MTczNAorIzogc3VibW9kdWxlLmM6MjAwOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicmVsb2NhdGVfZ2l0ZGlyIGZvciBzdWJtb2R1bGUgJyVzJyB3aXRoIG1vcmUgdGhhbiBvbmUgd29ya3RyZWUgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAicmVsb2NhdGVfZ2l0ZGlyINC00LvRjyDQv9C+0LTQvNC+0LTRg9C70Y8gwqslc8K7INGBINGD0LrQsNC30LDQvdC40LXQvCDQsdC+0LvQtdC1INC+0LTQvdC+0LPQviDRgNCw0LHQvtGH0LXQs9C+INC00LXRgNC10LLQsCDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgtGB0Y8iCiAKLSM6IHN1Ym1vZHVsZS5jOjE3NDYgc3VibW9kdWxlLmM6MTgwMgorIzogc3VibW9kdWxlLmM6MjAyMCBzdWJtb2R1bGUuYzoyMDc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb29rdXAgbmFtZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0YDQvtGB0LjRgtGMINC40LzRjyDQv9C+0LTQvNC+0LTRg9C70Y8gwqslc8K7IgogCi0jOiBzdWJtb2R1bGUuYzoxNzUwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA2Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxNgotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgotbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINC60LDRgtCw0LvQvtCzIMKrJXPCuyIKLQotIzogc3VibW9kdWxlLmM6MTc1MworIzogc3VibW9kdWxlLmM6MjAyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTWlncmF0aW5nIGdpdCBkaXJlY3Rvcnkgb2YgJyVzJXMnIGZyb21cbiIKQEAgLTUxMzMsMzQgKzY2NTUsNDQgQEAKICInJXMnXG4iCiBtc2dzdHIgItCf0LXRgNC10LzQtdGJ0LXQvdC40LUg0LrQsNGC0LDQu9C+0LPQsCBnaXQg0LTQu9GPIMKrJXMlc8K7INC40LdcbsKrJXPCuyDQslxuwqslc8K7XG4iCiAKLSM6IHN1Ym1vZHVsZS5jOjE4MzcKKyM6IHN1Ym1vZHVsZS5jOjIxMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNC10LrRg9GA0YHQuNCy0L3QviDQt9Cw0LnRgtC4INCyINC/0L7QtNC80L7QtNGD0LvRjCDCqyVzwrsiCiAKLSM6IHN1Ym1vZHVsZS5jOjE4ODEKKyM6IHN1Ym1vZHVsZS5jOjIxNTUKIG1zZ2lkICJjb3VsZCBub3Qgc3RhcnQgbHMtZmlsZXMgaW4gLi4iCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHN0YXQgbHMtZmlsZXMg0LIgLi4iCiAKLSM6IHN1Ym1vZHVsZS5jOjE5MjAKKyM6IHN1Ym1vZHVsZS5jOjIxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibHMtdHJlZSByZXR1cm5lZCB1bmV4cGVjdGVkIHJldHVybiBjb2RlICVkIgogbXNnc3RyICJscy10cmVlINCy0LXRgNC90YPQuyDQvdC10L7QttC40LTQsNC90L3Ri9C5INC60L7QtCAlZCIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjIzMQorIzogc3VibW9kdWxlLWNvbmZpZy5jOjIzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyBzdXNwaWNpb3VzIHN1Ym1vZHVsZSBuYW1lOiAlcyIKIG1zZ3N0ciAi0LjQs9C90L7RgNC40YDRg9GOINC/0L7QtNC+0LfRgNC40YLQtdC70YzQvdGL0Lkg0L/QvtC00LzQvtC00YPQu9GMINGBINC40LzQtdC90LXQvDogJXMiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzoyOTUKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzoyOTkKIG1zZ2lkICJuZWdhdGl2ZSB2YWx1ZXMgbm90IGFsbG93ZWQgZm9yIHN1Ym1vZHVsZS5mZXRjaGpvYnMiCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7RgtGA0LjRhtCw0YLQtdC70YzQvdGL0LUg0LfQvdCw0YfQtdC90LjRjyDQtNC70Y8gc3VibW9kdWxlLmZldGNoam9icyIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjQ2OAorIzogc3VibW9kdWxlLWNvbmZpZy5jOjM5NworIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAnJXMnIHdoaWNoIG1heSBiZSBpbnRlcnByZXRlZCBhcyBhIGNvbW1hbmQtbGluZSBvcHRpb246ICVzIgorbXNnc3RyICIiCisKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo0ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90L7QtSDQt9C90LDRh9C10L3QuNC1ICVzIgogCisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCB1cGRhdGUgLmdpdG1vZHVsZXMgZW50cnkgJXMiCittc2dzdHIgIiDQndC1INGD0LTQsNC70L7RgdGMINC+0LHQvdC+0LLQuNGC0YwgLmdpdG1vZHVsZXMg0LfQsNC/0LjRgdGMICVzIgorCiAjOiB0cmFpbGVyLmM6MjM4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJ1bm5pbmcgdHJhaWxlciBjb21tYW5kICclcycgZmFpbGVkIgpAQCAtNTE3Miw3ICs2NzA0LDcgQEAKIG1zZ2lkICJ1bmtub3duIHZhbHVlICclcycgZm9yIGtleSAnJXMnIgogbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3QvtC1INC30L3QsNGH0LXQvdC40LUgwqslc8K7INC00LvRjyDQutC70Y7Rh9CwIMKrJXPCuyIKIAotIzogdHJhaWxlci5jOjUzOSB0cmFpbGVyLmM6NTQ0IGJ1aWx0aW4vcmVtb3RlLmM6Mjk0CisjOiB0cmFpbGVyLmM6NTM5IHRyYWlsZXIuYzo1NDQgYnVpbHRpbi9yZW1vdGUuYzoyOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9yZSB0aGFuIG9uZSAlcyIKIG1zZ3N0ciAi0LHQvtC70YzRiNC1INC+0LTQvdC+0LPQviAlcyIKQEAgLTUxOTEsMjYgKzY3MjMsMjYgQEAKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBmcm9tIHN0ZGluIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDQuNC3INGB0YLQsNC90LTQsNGA0YLQvdC+0LPQviDQstCy0L7QtNCwIgogCi0jOiB0cmFpbGVyLmM6MTAwOCBidWlsdGluL2FtLmM6NDcKKyM6IHRyYWlsZXIuYzoxMDExIHdyYXBwZXIuYzo3MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN0YXQgJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHN0YXQg0LTQu9GPICVzIgogCi0jOiB0cmFpbGVyLmM6MTAxMAorIzogdHJhaWxlci5jOjEwMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmlsZSAlcyBpcyBub3QgYSByZWd1bGFyIGZpbGUiCiBtc2dzdHIgItGE0LDQudC7ICVzINC90LUg0Y/QstC70Y/QtdGC0YHRjyDQvtCx0YvRh9C90YvQvCDRhNCw0LnQu9C+0LwiCiAKLSM6IHRyYWlsZXIuYzoxMDEyCisjOiB0cmFpbGVyLmM6MTAxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJmaWxlICVzIGlzIG5vdCB3cml0YWJsZSBieSB1c2VyIgogbXNnc3RyICLRhNCw0LnQuyAlcyDQvdC1INC00L7RgdGC0YPQv9C10L0g0L3QsCDQt9Cw0L/QuNGB0Ywg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GOIgogCi0jOiB0cmFpbGVyLmM6MTAyNAorIzogdHJhaWxlci5jOjEwMjcKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiB0ZW1wb3JhcnkgZmlsZSIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQstGA0LXQvNC10L3QvdGL0Lkg0YTQsNC50LsiCiAKLSM6IHRyYWlsZXIuYzoxMDY0CisjOiB0cmFpbGVyLmM6MTA2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVuYW1lIHRlbXBvcmFyeSBmaWxlIHRvICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0LXRgNC10LjQvNC10L3QvtCy0LDRgtGMINCy0YDQtdC80LXQvdC90YvQuSDRhNCw0LnQuyDQsiAlcyIKQEAgLTUyMzAsMzYgKzY3NjIsNDQgQEAKIG1zZ2lkICJ0cmFuc3BvcnQ6IGludmFsaWQgZGVwdGggb3B0aW9uICclcyciCiBtc2dzdHIgItGC0YDQsNC90YHQv9C+0YDRgjog0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INC/0LDRgNCw0LzQtdGC0YAg0LPQu9GD0LHQuNC90Ysgwqslc8K7IgogCi0jOiB0cmFuc3BvcnQuYzo1ODYKKyM6IHRyYW5zcG9ydC5jOjI1OQorbXNnaWQgInNlZSBwcm90b2NvbC52ZXJzaW9uIGluICdnaXQgaGVscCBjb25maWcnIGZvciBtb3JlIGRldGFpbHMiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LmM6MjYwCittc2dpZCAic2VydmVyIG9wdGlvbnMgcmVxdWlyZSBwcm90b2NvbCB2ZXJzaW9uIDIgb3IgbGF0ZXIiCittc2dzdHIgIiIKKworIzogdHJhbnNwb3J0LmM6NjI1CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHRyYW5zcG9ydC5jb2xvci4qIGNvbmZpZyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0LfQvtCx0YDQsNGC0Ywg0L7Qv9GG0LjRjiB0cmFuc3BvcnQuY29sb3IuKiIKIAotIzogdHJhbnNwb3J0LmM6NjU5CisjOiB0cmFuc3BvcnQuYzo2OTgKIG1zZ2lkICJzdXBwb3J0IGZvciBwcm90b2NvbCB2MiBub3QgaW1wbGVtZW50ZWQgeWV0IgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC5jOjc4NQorIzogdHJhbnNwb3J0LmM6ODI1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gdmFsdWUgZm9yIGNvbmZpZyAnJXMnOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQuYzo4NTEKKyM6IHRyYW5zcG9ydC5jOjg5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmFuc3BvcnQgJyVzJyBub3QgYWxsb3dlZCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQuYzo5MDMKKyM6IHRyYW5zcG9ydC5jOjk0NQogbXNnaWQgImdpdC1vdmVyLXJzeW5jIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LmM6OTk4CisjOiB0cmFuc3BvcnQuYzoxMDQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHN1Ym1vZHVsZSBwYXRocyBjb250YWluIGNoYW5nZXMgdGhhdCBjYW5cbiIKICJub3QgYmUgZm91bmQgb24gYW55IHJlbW90ZTpcbiIKIG1zZ3N0ciAi0J/QvtC00LzQvtC00YPQu9C4INC/0L4g0YPQutCw0LfQsNC90L3Ri9C8INC/0YPRgtGP0Lwg0YHQvtC00LXRgNC20LDRgiDQuNC30LzQtdC90LXQvdC40Y8sINC60L7RgtC+0YDRi9C1INC90LUg0L3QsNC50LTQtdC90Ysg0L3QuCDQvdCwINC+0LTQvdC+0Lwg0LjQtyDQstC90LXRiNC90LjRhSDRgNC10L/QvtC30LjRgtC+0YDQuNC10LI6XG4iCiAKLSM6IHRyYW5zcG9ydC5jOjEwMDIKKyM6IHRyYW5zcG9ydC5jOjEwNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtNTI3NSwxOSArNjgxNSwxOSBAQAogIlxuIgogbXNnc3RyICJcbtCf0L7Qv9GA0L7QsdGD0LnRgtC1INCy0YvQv9C+0LvQvdC40YLRjFxuXG5cdGdpdCBwdXNoIC0tcmVjdXJzZS1zdWJtb2R1bGVzPW9uLWRlbWFuZFxuXG7QuNC70Lgg0L/QtdGA0LXQudGC0Lgg0LIg0LrQsNGC0LDQu9C+0LMg0YEg0L/QvtC80L7RidGM0Y4g0LrQvtC80LDQvdC00YsgY2Qg0Lgg0LLRi9C/0L7Qu9C90LjRgtGMXG5cblx0Z2l0IHB1c2hcblxu0LTQu9GPINC40YUg0L7RgtC/0YDQsNCy0LrQuCDQvdCwINCy0L3QtdGI0L3QuNC5INGA0LXQv9C+0LfQuNGC0L7RgNC40LkuXG4iCiAKLSM6IHRyYW5zcG9ydC5jOjEwMTAKKyM6IHRyYW5zcG9ydC5jOjEwNTIKIG1zZ2lkICJBYm9ydGluZy4iCiBtc2dzdHIgItCf0YDQtdGA0YvQstCw0Y4uIgogCi0jOiB0cmFuc3BvcnQuYzoxMTQ4CisjOiB0cmFuc3BvcnQuYzoxMTkzCiBtc2dpZCAiZmFpbGVkIHRvIHB1c2ggYWxsIG5lZWRlZCBzdWJtb2R1bGVzIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC5jOjEyNzAgdHJhbnNwb3J0LWhlbHBlci5jOjY0MworIzogdHJhbnNwb3J0LmM6MTMyNiB0cmFuc3BvcnQtaGVscGVyLmM6NjQ1CiBtc2dpZCAib3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LmM6MTM1MgorIzogdHJhbnNwb3J0LmM6MTQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGxpbmUgd2hpbGUgcGFyc2luZyBhbHRlcm5hdGUgcmVmczogJXMiCiBtc2dzdHIgIiIKQEAgLTUyOTYsMTYyICs2ODM2LDE2MiBAQAogbXNnaWQgImZ1bGwgd3JpdGUgdG8gcmVtb3RlIGhlbHBlciBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZmluZCByZW1vdGUgaGVscGVyIGZvciAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDggdHJhbnNwb3J0LWhlbHBlci5jOjU1NworIzogdHJhbnNwb3J0LWhlbHBlci5jOjE1MCB0cmFuc3BvcnQtaGVscGVyLmM6NTU5CiBtc2dpZCAiY2FuJ3QgZHVwIGhlbHBlciBvdXRwdXQgZmQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjE5OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjIwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5rbm93biBtYW5kYXRvcnkgY2FwYWJpbGl0eSAlczsgdGhpcyByZW1vdGUgaGVscGVyIHByb2JhYmx5IG5lZWRzIG5ld2VyICIKICJ2ZXJzaW9uIG9mIEdpdCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MjA1CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MjA3CiBtc2dpZCAidGhpcyByZW1vdGUgaGVscGVyIHNob3VsZCBpbXBsZW1lbnQgcmVmc3BlYyBjYXBhYmlsaXR5IgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyNzIgdHJhbnNwb3J0LWhlbHBlci5jOjQxMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjI3NCB0cmFuc3BvcnQtaGVscGVyLmM6NDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHVuZXhwZWN0ZWRseSBzYWlkOiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0MDEKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgYWxzbyBsb2NrZWQgJXMiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjQ3OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjQ4MQogbXNnaWQgImNvdWxkbid0IHJ1biBmYXN0LWltcG9ydCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTAyCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTA0CiBtc2dpZCAiZXJyb3Igd2hpbGUgcnVubmluZyBmYXN0LWltcG9ydCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTMxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMDkxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTMzIHRyYW5zcG9ydC1oZWxwZXIuYzoxMDk5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAlcyIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTc2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gcmVzcG9uc2UgdG8gY29ubmVjdDogJXMiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjU5OAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjYwMAogbXNnaWQgInNldHRpbmcgcmVtb3RlIHNlcnZpY2UgcGF0aCBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MDAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MDIKIG1zZ2lkICJpbnZhbGlkIHJlbW90ZSBzZXJ2aWNlIHBhdGgiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjY0NgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjY0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCBjb25uZWN0IHRvIHN1YnNlcnZpY2UgJXMiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjcxMworIzogdHJhbnNwb3J0LWhlbHBlci5jOjcyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBvay9lcnJvciwgaGVscGVyIHNhaWQgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NzY2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NzczCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciByZXBvcnRlZCB1bmV4cGVjdGVkIHN0YXR1cyBvZiAlcyIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODI3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IGRyeS1ydW4iCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjgzMAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjgzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAtLXNpZ25lZCIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODMzCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkPWlmLWFza2VkIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NDAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgJ3B1c2gtb3B0aW9uJyIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTMyCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6OTM5CiBtc2dpZCAicmVtb3RlLWhlbHBlciBkb2Vzbid0IHN1cHBvcnQgcHVzaDsgcmVmc3BlYyBuZWVkZWQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjkzNworIzogdHJhbnNwb3J0LWhlbHBlci5jOjk0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAnZm9yY2UnIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5ODQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5OTEKIG1zZ2lkICJjb3VsZG4ndCBydW4gZmFzdC1leHBvcnQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjk4OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjk5NgogbXNnaWQgImVycm9yIHdoaWxlIHJ1bm5pbmcgZmFzdC1leHBvcnQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMTQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyByZWZzIGluIGNvbW1vbiBhbmQgbm9uZSBzcGVjaWZpZWQ7IGRvaW5nIG5vdGhpbmcuXG4iCiAiUGVyaGFwcyB5b3Ugc2hvdWxkIHNwZWNpZnkgYSBicmFuY2ggc3VjaCBhcyAnbWFzdGVyJy5cbiIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTA3NworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwODUKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIHJlc3BvbnNlIGluIHJlZiBsaXN0OiAlcyIKIG1zZ3N0ciAiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTIzMAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZCglcykgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjU3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cml0ZSglcykgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzA2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMxNAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB0aHJlYWQgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzEwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMxOAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB0aHJlYWQgZmFpbGVkIHRvIGpvaW46ICVzIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzI5IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzMzCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMzNyB0cmFuc3BvcnQtaGVscGVyLmM6MTM0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCBzdGFydCB0aHJlYWQgZm9yIGNvcHlpbmcgZGF0YTogJXMiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNzAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHByb2Nlc3MgZmFpbGVkIHRvIHdhaXQiCiBtc2dzdHIgIiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNzQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHByb2Nlc3MgZmFpbGVkIgogbXNnc3RyICIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzkyIHRyYW5zcG9ydC1oZWxwZXIuYzoxNDAxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQwMCB0cmFuc3BvcnQtaGVscGVyLmM6MTQwOQogbXNnaWQgImNhbid0IHN0YXJ0IHRocmVhZCBmb3IgY29weWluZyBkYXRhIgogbXNnc3RyICIiCiAKQEAgLTU0NjcsMTg1ICs3MDA3LDE5MiBAQAogbXNnaWQgImVtcHR5IGZpbGVuYW1lIGluIHRyZWUgZW50cnkiCiBtc2dzdHIgItC/0YPRgdGC0L7QtSDQuNC80Y8g0YTQsNC50LvQsCDQsiDQt9Cw0L/QuNGB0Lgg0LTQtdGA0LXQstCwIgogCi0jOiB0cmVlLXdhbGsuYzoxMTUKKyM6IHRyZWUtd2Fsay5jOjExNgogbXNnaWQgInRvby1zaG9ydCB0cmVlIGZpbGUiCiBtc2dzdHIgItGB0LvQuNGI0LrQvtC8ICDQutC+0YDQvtGC0LrQuNC5INGE0LDQudC7INC00LXRgNC10LLQsCIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTEyCisjOiB1bnBhY2stdHJlZXMuYzoxMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IGNoZWNrb3V0OlxuIgogIiUlc1BsZWFzZSBjb21taXQgeW91ciBjaGFuZ2VzIG9yIHN0YXNoIHRoZW0gYmVmb3JlIHlvdSBzd2l0Y2ggYnJhbmNoZXMuIgogbXNnc3RyICLQktCw0YjQuCDQu9C+0LrQsNC70YzQvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPINCyINGD0LrQsNC30LDQvdC90YvRhSDRhNCw0LnQu9Cw0YUg0LHRg9C00YPRgiDQv9C10YDQtdC30LDQv9C40YHQsNC90Ysg0L/RgNC4INC/0LXRgNC10LrQu9GO0YfQtdC90LjQuCDQvdCwINGB0L7RgdGC0L7Rj9C90LjQtTpcbiUlc9Ch0LTQtdC70LDQudGC0LUg0LrQvtC80LzQuNGCINC40LvQuCDRgdC/0YDRj9GH0YzRgtC1INCy0LDRiNC4INC40LfQvNC10L3QtdC90LjRjyDQv9C10YDQtdC0INC/0LXRgNC10LrQu9GO0YfQtdC90LjQtdC8INCy0LXRgtC+0LouIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTQKKyM6IHVucGFjay10cmVlcy5jOjExMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCiAiJSVzIgogbXNnc3RyICLQktCw0YjQuCDQu9C+0LrQsNC70YzQvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPINCyINGD0LrQsNC30LDQvdC90YvRhSDRhNCw0LnQu9Cw0YUg0LHRg9C00YPRgiDQv9C10YDQtdC30LDQv9C40YHQsNC90Ysg0L/RgNC4INC/0LXRgNC10LrQu9GO0YfQtdC90LjQuCDQvdCwINGB0L7RgdGC0L7Rj9C90LjQtTpcbiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTE3CisjOiB1bnBhY2stdHJlZXMuYzoxMTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgogIiUlc1BsZWFzZSBjb21taXQgeW91ciBjaGFuZ2VzIG9yIHN0YXNoIHRoZW0gYmVmb3JlIHlvdSBtZXJnZS4iCiBtc2dzdHIgItCS0LDRiNC4INC70L7QutCw0LvRjNC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8g0LIg0YPQutCw0LfQsNC90L3Ri9GFINGE0LDQudC70LDRhSDQsdGD0LTRg9GCINC/0LXRgNC10LfQsNC/0LjRgdCw0L3RiyDQv9GA0Lgg0YHQu9C40Y/QvdC40Lg6XG4lJXPQodC00LXQu9Cw0LnRgtC1INC60L7QvNC80LjRgiDQuNC70Lgg0YHQv9GA0Y/Rh9GM0YLQtSDQstCw0YjQuCDQuNC30LzQtdC90LXQvdC40Y8g0L/QtdGA0LXQtCDRgdC70LjRj9C90LjQtdC8INCy0LXRgtC+0LouIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTkKKyM6IHVucGFjay10cmVlcy5jOjExOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCiAiJSVzIgogbXNnc3RyICLQktCw0YjQuCDQu9C+0LrQsNC70YzQvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPINCyINGD0LrQsNC30LDQvdC90YvRhSDRhNCw0LnQu9Cw0YUg0LHRg9C00YPRgiDQv9C10YDQtdC30LDQv9C40YHQsNC90Ysg0L/RgNC4INGB0LvQuNGP0L3QuNC4OlxuJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMjIKKyM6IHVucGFjay10cmVlcy5jOjEyMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCiAiJSVzUGxlYXNlIGNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSBiZWZvcmUgeW91ICVzLiIKIG1zZ3N0ciAi0JLQsNGI0Lgg0LvQvtC60LDQu9GM0L3Ri9C1INC40LfQvNC10L3QtdC90LjRjyDQsiDRg9C60LDQt9Cw0L3QvdGL0YUg0YTQsNC50LvQsNGFINCx0YPQtNGD0YIg0L/QtdGA0LXQt9Cw0L/QuNGB0LDQvdGLINC/0YDQuCAlczpcbiUlc9Ch0LTQtdC70LDQudGC0LUg0LrQvtC80LzQuNGCINC40LvQuCDRgdC/0YDRj9GH0YzRgtC1INCy0LDRiNC4INC40LfQvNC10L3QtdC90LjRjyDQv9C10YDQtdC0ICVzLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTI0CisjOiB1bnBhY2stdHJlZXMuYzoxMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgogIiUlcyIKIG1zZ3N0ciAi0JLQsNGI0Lgg0LvQvtC60LDQu9GM0L3Ri9C1INC40LfQvNC10L3QtdC90LjRjyDQsiDRg9C60LDQt9Cw0L3QvdGL0YUg0YTQsNC50LvQsNGFINCx0YPQtNGD0YIg0L/QtdGA0LXQt9Cw0L/QuNGB0LDQvdGLINC/0YDQuCAlczpcbiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTI5CisjOiB1bnBhY2stdHJlZXMuYzoxMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlVwZGF0aW5nIHRoZSBmb2xsb3dpbmcgZGlyZWN0b3JpZXMgd291bGQgbG9zZSB1bnRyYWNrZWQgZmlsZXMgaW4gdGhlbTpcbiIKICIlcyIKIG1zZ3N0ciAi0J7QsdC90L7QstC70LXQvdC40LUg0YPQutCw0LfQsNC90L3Ri9GFINC60LDRgtCw0LvQvtCz0L7QsiDQv9GA0LjQstC10LTQtdGCINC6INC/0L7RgtC10YDQtSDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0YUg0YTQsNC50LvQvtCyINCyINC90LjRhTpcbiVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMzMKKyM6IHVucGFjay10cmVlcy5jOjEzMgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgY2hlY2tvdXQ6XG4iCiAiJSVzUGxlYXNlIG1vdmUgb3IgcmVtb3ZlIHRoZW0gYmVmb3JlIHlvdSBzd2l0Y2ggYnJhbmNoZXMuIgogbXNnc3RyICLQo9C60LDQt9Cw0L3QvdGL0LUg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9C1INGE0LDQudC70Ysg0LIg0YDQsNCx0L7Rh9C10Lwg0LrQsNGC0LDQu9C+0LPQtSDQsdGD0LTRg9GCINGD0LTQsNC70LXQvdGLINC/0YDQuCDQv9C10YDQtdC60LvRjtGH0LXQvdC40Lgg0L3QsCDRgdC+0YHRgtC+0Y/QvdC40LU6XG4lJXPQn9C10YDQtdC80LXRgdGC0LjRgtC1INGN0YLQuCDRhNCw0LnQu9GLINC40LvQuCDRg9C00LDQu9C40YLQtSDQuNGFINC/0LXRgNC10LQg0L/QtdGA0LXQutC70Y7Rh9C10L3QuNC10Lwg0LLQtdGC0L7Qui4iCiAKLSM6IHVucGFjay10cmVlcy5jOjEzNQorIzogdW5wYWNrLXRyZWVzLmM6MTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKICIlJXMiCiBtc2dzdHIgItCj0LrQsNC30LDQvdC90YvQtSDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0LUg0YTQsNC50LvRiyDQsiDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1INCx0YPQtNGD0YIg0YPQtNCw0LvQtdC90Ysg0L/RgNC4INC/0LXRgNC10LrQu9GO0YfQtdC90LjQuCDQvdCwINGB0L7RgdGC0L7Rj9C90LjQtTpcbiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTM4CisjOiB1bnBhY2stdHJlZXMuYzoxMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgogIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3UgbWVyZ2UuIgogbXNnc3RyICLQo9C60LDQt9Cw0L3QvdGL0LUg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9C1INGE0LDQudC70Ysg0LIg0YDQsNCx0L7Rh9C10Lwg0LrQsNGC0LDQu9C+0LPQtSDQsdGD0LTRg9GCINGD0LTQsNC70LXQvdGLINC/0YDQuCDRgdC70LjRj9C90LjQuDpcbiUlc9Cf0LXRgNC10LzQtdGB0YLQuNGC0LUg0Y3RgtC4INGE0LDQudC70Ysg0LjQu9C4INGD0LTQsNC70LjRgtC1INC40YUg0L/QtdGA0LXQtCDQv9C10YDQtdC60LvRjtGH0LXQvdC40LXQvCDQstC10YLQvtC6LiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTQwCisjOiB1bnBhY2stdHJlZXMuYzoxMzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgogIiUlcyIKIG1zZ3N0ciAi0KPQutCw0LfQsNC90L3Ri9C1INC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvQtSDRhNCw0LnQu9GLINCyINGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LUg0LHRg9C00YPRgiDRg9C00LDQu9C10L3RiyDQv9GA0Lgg0YHQu9C40Y/QvdC40Lg6XG4lJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE0MworIzogdW5wYWNrLXRyZWVzLmM6MTQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSAlczpcbiIKICIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91ICVzLiIKIG1zZ3N0ciAi0KPQutCw0LfQsNC90L3Ri9C1INC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvQtSDRhNCw0LnQu9GLINCyINGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LUg0LHRg9C00YPRgiDRg9C00LDQu9C10L3RiyDQv9GA0LggJXM6XG4lJXPQn9C10YDQtdC80LXRgdGC0LjRgtC1INGN0YLQuCDRhNCw0LnQu9GLINC40LvQuCDRg9C00LDQu9C40YLQtSDQuNGFINC/0LXRgNC10LQgJXMuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNDUKKyM6IHVucGFjay10cmVlcy5jOjE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgJXM6XG4iCiAiJSVzIgogbXNnc3RyICLQo9C60LDQt9Cw0L3QvdGL0LUg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9C1INGE0LDQudC70Ysg0LIg0YDQsNCx0L7Rh9C10Lwg0LrQsNGC0LDQu9C+0LPQtSDQsdGD0LTRg9GCINGD0LTQsNC70LXQvdGLINC/0YDQuCAlczpcbiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTUxCisjOiB1bnBhY2stdHJlZXMuYzoxNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBjaGVja291dDpcbiIKICIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91IHN3aXRjaCBicmFuY2hlcy4iCiBtc2dzdHIgItCj0LrQsNC30LDQvdC90YvQtSDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0LUg0YTQsNC50LvRiyDQsiDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1INCx0YPQtNGD0YIg0L/QtdGA0LXQt9Cw0L/QuNGB0LDQvdGLINC/0YDQuCDQv9C10YDQtdC60LvRjtGH0LXQvdC40Lgg0L3QsCDRgdC+0YHRgtC+0Y/QvdC40LU6XG4lJXPQn9C10YDQtdC80LXRgdGC0LjRgtC1INGN0YLQuCDRhNCw0LnQu9GLINC40LvQuCDRg9C00LDQu9C40YLQtSDQuNGFINC/0LXRgNC10LQg0L/QtdGA0LXQutC70Y7Rh9C10L3QuNC10Lwg0LLQtdGC0L7Qui4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE1MworIzogdW5wYWNrLXRyZWVzLmM6MTUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCiAiJSVzIgogbXNnc3RyICLQo9C60LDQt9Cw0L3QvdGL0LUg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9C1INGE0LDQudC70Ysg0LIg0YDQsNCx0L7Rh9C10Lwg0LrQsNGC0LDQu9C+0LPQtSDQsdGD0LTRg9GCINC/0LXRgNC10LfQsNC/0LjRgdCw0L3RiyDQv9GA0Lgg0L/QtdGA0LXQutC70Y7Rh9C10L3QuNC4INC90LAg0YHQvtGB0YLQvtGP0L3QuNC1OlxuJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNTYKKyM6IHVucGFjay10cmVlcy5jOjE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgogIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3UgbWVyZ2UuIgogbXNnc3RyICLQo9C60LDQt9Cw0L3QvdGL0LUg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9C1INGE0LDQudC70Ysg0LIg0YDQsNCx0L7Rh9C10Lwg0LrQsNGC0LDQu9C+0LPQtSDQsdGD0LTRg9GCINC/0LXRgNC10LfQsNC/0LjRgdCw0L3RiyDQv9GA0Lgg0YHQu9C40Y/QvdC40Lg6XG4lJXPQn9C10YDQtdC80LXRgdGC0LjRgtC1INGN0YLQuCDRhNCw0LnQu9GLINC40LvQuCDRg9C00LDQu9C40YLQtSDQuNGFINC/0LXRgNC10LQg0L/QtdGA0LXQutC70Y7Rh9C10L3QuNC10Lwg0LLQtdGC0L7Qui4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE1OAorIzogdW5wYWNrLXRyZWVzLmM6MTU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCiAiJSVzIgogbXNnc3RyICLQo9C60LDQt9Cw0L3QvdGL0LUg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9C1INGE0LDQudC70Ysg0LIg0YDQsNCx0L7Rh9C10Lwg0LrQsNGC0LDQu9C+0LPQtSDQsdGD0LTRg9GCINC/0LXRgNC10LfQsNC/0LjRgdCw0L3RiyDQv9GA0Lgg0YHQu9C40Y/QvdC40Lg6XG4lJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE2MQorIzogdW5wYWNrLXRyZWVzLmM6MTYwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCiAiJSVzUGxlYXNlIG1vdmUgb3IgcmVtb3ZlIHRoZW0gYmVmb3JlIHlvdSAlcy4iCiBtc2dzdHIgItCj0LrQsNC30LDQvdC90YvQtSDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0LUg0YTQsNC50LvRiyDQsiDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1INCx0YPQtNGD0YIg0L/QtdGA0LXQt9Cw0L/QuNGB0LDQvdGLINC/0YDQuCAlczpcbiUlc9Cf0LXRgNC10LzQtdGB0YLQuNGC0LUg0Y3RgtC4INGE0LDQudC70Ysg0LjQu9C4INGD0LTQsNC70LjRgtC1INC40YUg0L/QtdGA0LXQtCAlcy4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE2MworIzogdW5wYWNrLXRyZWVzLmM6MTYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCiAiJSVzIgogbXNnc3RyICLQo9C60LDQt9Cw0L3QvdGL0LUg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9C1INGE0LDQudC70Ysg0LIg0YDQsNCx0L7Rh9C10Lwg0LrQsNGC0LDQu9C+0LPQtSDQsdGD0LTRg9GCINC/0LXRgNC10LfQsNC/0LjRgdCw0L3RiyDQv9GA0LggJXM6XG4lJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE3MQorIzogdW5wYWNrLXRyZWVzLmM6MTcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkVudHJ5ICclcycgb3ZlcmxhcHMgd2l0aCAnJXMnLiAgQ2Fubm90IGJpbmQuIgogbXNnc3RyICLQl9Cw0L/QuNGB0Ywgwqslc8K7INGH0LDRgdGC0LjRh9C90L4g0YHQvtCy0L/QsNC00LDQtdGCINGBIMKrJXPCuy4gINCd0LUg0YPQtNCw0LvQvtGB0Ywg0L3QsNC30L3QsNGH0LjRgtGMINGB0L7QvtGC0LLQtdGC0YHRgtCy0LjQtS4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE3NAorIzogdW5wYWNrLXRyZWVzLmM6MTczCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgdXBkYXRlIHNwYXJzZSBjaGVja291dDogdGhlIGZvbGxvd2luZyBlbnRyaWVzIGFyZSBub3QgdXAgdG8gZGF0ZTpcbiIKICIlcyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvtCx0L3QvtCy0LjRgtGMINGH0LDRgdGC0LjRh9C90L7QtSDRgdC+0YHRgtC+0Y/QvdC40LU6INGB0LvQtdC00YPRjtGJ0LjQtSDRjdC70LXQvNC10L3RgtGLINC90LUg0L/QvtGB0LvQtdC00L3QtdC5INCy0LXRgNGB0LjQuDpcbiVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNzYKKyM6IHVucGFjay10cmVlcy5jOjE3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgc3BhcnNlIGNoZWNrb3V0IHVwZGF0ZTpcbiIKICIlcyIKIG1zZ3N0ciAi0KPQutCw0LfQsNC90L3Ri9C1INGE0LDQudC70Ysg0LjQtyDRgNCw0LHQvtGH0LXQs9C+INC60LDRgtCw0LvQvtCz0LAg0LHRg9C00YPRgiDQv9C10YDQtdC30LDQv9C40YHQsNC90Ysg0L/RgNC4INC+0LHQvdC+0LLQu9C10L3QuNC4INGH0LDRgdGC0LjRh9C90L7Qs9C+INGB0L7RgdGC0L7Rj9C90LjRjzpcbiVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNzgKKyM6IHVucGFjay10cmVlcy5jOjE3NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBzcGFyc2UgY2hlY2tvdXQgdXBkYXRlOlxuIgogIiVzIgogbXNnc3RyICLQo9C60LDQt9Cw0L3QvdGL0LUg0YTQsNC50LvRiyDQuNC3INGA0LDQsdC+0YfQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsCDQsdGD0LTRg9GCINGD0LTQsNC70LXQvdGLINC/0YDQuCDQvtCx0L3QvtCy0LvQtdC90LjQuCDRh9Cw0YHRgtC40YfQvdC+0LPQviDRgdC+0YHRgtC+0Y/QvdC40Y86XG4lcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTgwCisjOiB1bnBhY2stdHJlZXMuYzoxNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNhbm5vdCB1cGRhdGUgc3VibW9kdWxlOlxuIgogIiVzIgogbXNnc3RyICLQndC1INGD0LTQvtC70L7RgdGMINC+0LHQvdC+0LLQuNGC0Ywg0L/QvtC00LzQvtC00YPQu9GMOlxuJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjI1NAorIzogdW5wYWNrLXRyZWVzLmM6MjU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkFib3J0aW5nXG4iCiBtc2dzdHIgItCf0YDQtdGA0YvQstCw0Y5cbiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MzM2CisjOiB1bnBhY2stdHJlZXMuYzozMTgKIG1zZ2lkICJDaGVja2luZyBvdXQgZmlsZXMiCiBtc2dzdHIgItCg0LDRgdC/0LDQutC+0LLQutCwINGE0LDQudC70L7QsiIKIAorIzogdW5wYWNrLXRyZWVzLmM6MzUwCittc2dpZCAiIgorInRoZSBmb2xsb3dpbmcgcGF0aHMgaGF2ZSBjb2xsaWRlZCAoZS5nLiBjYXNlLXNlbnNpdGl2ZSBwYXRoc1xuIgorIm9uIGEgY2FzZS1pbnNlbnNpdGl2ZSBmaWxlc3lzdGVtKSBhbmQgb25seSBvbmUgZnJvbSB0aGUgc2FtZVxuIgorImNvbGxpZGluZyBncm91cCBpcyBpbiB0aGUgd29ya2luZyB0cmVlOlxuIgorbXNnc3RyICIiCisKICM6IHVybG1hdGNoLmM6MTYzCiBtc2dpZCAiaW52YWxpZCBVUkwgc2NoZW1lIG5hbWUgb3IgbWlzc2luZyAnOi8vJyBzdWZmaXgiCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvRjNC90LDRjyDQuNC80Y8gVVJMINGB0YXQtdC80Ysg0LjQu9C4INC/0YDQvtC/0YPRidC10L0g0YHRg9GE0YTQuNC60YEgwqs6Ly/CuyIKQEAgLTU2NzUsMzIgKzcyMjIsMzIgQEAKIG1zZ2lkICJpbnZhbGlkICcuLicgcGF0aCBzZWdtZW50IgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdCw0Y8g0YfQsNGB0YLRjCDQv9GD0YLQuCDCqy4uwrsiCiAKLSM6IHdvcmt0cmVlLmM6MjQ1IGJ1aWx0aW4vYW0uYzoyMTQ3CisjOiB3b3JrdHJlZS5jOjI1NSBidWlsdGluL2FtLmM6MjA5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDCqyVzwrsiCiAKLSM6IHdvcmt0cmVlLmM6MjkxCisjOiB3b3JrdHJlZS5jOjMwMQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGF0IG1haW4gd29ya2luZyB0cmVlIGlzIG5vdCB0aGUgcmVwb3NpdG9yeSBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKIAotIzogd29ya3RyZWUuYzozMDIKKyM6IHdvcmt0cmVlLmM6MzEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZmlsZSBkb2VzIG5vdCBjb250YWluIGFic29sdXRlIHBhdGggdG8gdGhlIHdvcmtpbmcgdHJlZSBsb2NhdGlvbiIKIG1zZ3N0ciAiIgogCi0jOiB3b3JrdHJlZS5jOjMxNAorIzogd29ya3RyZWUuYzozMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAiwqslc8K7INC90LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIiCiAKLSM6IHdvcmt0cmVlLmM6MzIwCisjOiB3b3JrdHJlZS5jOjMzMAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIC5naXQgZmlsZSwgZXJyb3IgY29kZSAlZCIKIG1zZ3N0ciAiIgogCi0jOiB3b3JrdHJlZS5jOjMyOAorIzogd29ya3RyZWUuYzozMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBkb2VzIG5vdCBwb2ludCBiYWNrIHRvICclcyciCiBtc2dzdHIgIiIKQEAgLTU3MTAsMTIgKzcyNTcsNiBAQAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHJlYWRpbmcgYW5kIHdyaXRpbmciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywgwqslc8K7INC00LvRjyDRh9GC0LXQvdC40Y8g0Lgg0LfQsNC/0LjRgdC4IgogCi0jOiB3cmFwcGVyLmM6MjI3IHdyYXBwZXIuYzozOTcgYnVpbHRpbi9hbS5jOjMyMSBidWlsdGluL2FtLmM6NzcxCi0jOiBidWlsdGluL2FtLmM6ODYzIGJ1aWx0aW4vbWVyZ2UuYzoxMDc4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHJlYWRpbmciCi1tc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywgwqslc8K7INC00LvRjyDRh9GC0LXQvdC40Y8iCi0KICM6IHdyYXBwZXIuYzo0MjQgd3JhcHBlci5jOjYyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYWNjZXNzICclcyciCkBAIC01NzI1LDEzNSArNzI2NiwxMzUgQEAKIG1zZ2lkICJ1bmFibGUgdG8gZ2V0IGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDRgtC10LrRg9GJ0LjQuSDRgNCw0LHQvtGH0LjQuSDQutCw0YLQsNC70L7QsyIKIAotIzogd3Qtc3RhdHVzLmM6MTU0CisjOiB3dC1zdGF0dXMuYzoxNTYKIG1zZ2lkICJVbm1lcmdlZCBwYXRoczoiCiBtc2dzdHIgItCd0LUg0YHQu9C40YLRi9C1INC/0YPRgtC4OiIKIAotIzogd3Qtc3RhdHVzLmM6MTgxIHd0LXN0YXR1cy5jOjIwOAorIzogd3Qtc3RhdHVzLmM6MTgzIHd0LXN0YXR1cy5jOjIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICh1c2UgXCJnaXQgcmVzZXQgJXMgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCiBtc2dzdHIgIiAgKNC40YHQv9C+0LvRjNC30YPQudGC0LUgwqtnaXQgcmVzZXQgJXMgPNGE0LDQudC7PuKApsK7LCDRh9GC0L7QsdGLINGD0LHRgNCw0YLRjCDQuNC3INC40L3QtNC10LrRgdCwKSIKIAotIzogd3Qtc3RhdHVzLmM6MTgzIHd0LXN0YXR1cy5jOjIxMAorIzogd3Qtc3RhdHVzLmM6MTg1IHd0LXN0YXR1cy5jOjIxMgogbXNnaWQgIiAgKHVzZSBcImdpdCBybSAtLWNhY2hlZCA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKIG1zZ3N0ciAiICAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCBybSAtLWNhY2hlZCA80YTQsNC50Ls+4oCmwrssINGH0YLQvtCx0Ysg0YPQsdGA0LDRgtGMINC40Lcg0LjQvdC00LXQutGB0LApIgogCi0jOiB3dC1zdGF0dXMuYzoxODcKKyM6IHd0LXN0YXR1cy5jOjE4OQogbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQgPGZpbGU+Li4uXCIgdG8gbWFyayByZXNvbHV0aW9uKSIKIG1zZ3N0ciAiICAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCBhZGQgPNGE0LDQudC7PuKApsK7LCDRh9GC0L7QsdGLINC/0L7QvNC10YLQuNGC0Ywg0YDQsNC30YDQtdGI0LXQvdC40LUg0LrQvtC90YTQu9C40LrRgtCwKSIKIAotIzogd3Qtc3RhdHVzLmM6MTg5IHd0LXN0YXR1cy5jOjE5MworIzogd3Qtc3RhdHVzLmM6MTkxIHd0LXN0YXR1cy5jOjE5NQogbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQvcm0gPGZpbGU+Li4uXCIgYXMgYXBwcm9wcmlhdGUgdG8gbWFyayByZXNvbHV0aW9uKSIKIG1zZ3N0ciAiICAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCBhZGQvcm0gPNGE0LDQudC7PuKApsK7LCDRh9GC0L7QsdGLINC/0L7QvNC10YLQuNGC0Ywg0LLRi9Cx0YDQsNC90L3QvtC1INGA0LDQt9GA0LXRiNC10L3QuNC1INC60L7QvdGE0LvQuNC60YLQsCkiCiAKLSM6IHd0LXN0YXR1cy5jOjE5MQorIzogd3Qtc3RhdHVzLmM6MTkzCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJtIDxmaWxlPi4uLlwiIHRvIG1hcmsgcmVzb2x1dGlvbikiCiBtc2dzdHIgIiAgKNC40YHQv9C+0LvRjNC30YPQudGC0LUgwqtnaXQgcm0gPNGE0LDQudC7PuKApsK7LCDRh9GC0L7QsdGLINC/0L7QvNC10YLQuNGC0Ywg0YDQsNC30YDQtdGI0LXQvdC40LUg0LrQvtC90YTQu9C40LrRgtCwKSIKIAotIzogd3Qtc3RhdHVzLmM6MjAyIHd0LXN0YXR1cy5jOjEwMTUKKyM6IHd0LXN0YXR1cy5jOjIwNCB3dC1zdGF0dXMuYzoxMDY0CiBtc2dpZCAiQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6IgogbXNnc3RyICLQmNC30LzQtdC90LXQvdC40Y8sINC60L7RgtC+0YDRi9C1INCx0YPQtNGD0YIg0LLQutC70Y7Rh9C10L3RiyDQsiDQutC+0LzQvNC40YI6IgogCi0jOiB3dC1zdGF0dXMuYzoyMjAgd3Qtc3RhdHVzLmM6MTAyNAorIzogd3Qtc3RhdHVzLmM6MjIyIHd0LXN0YXR1cy5jOjEwNzMKIG1zZ2lkICJDaGFuZ2VzIG5vdCBzdGFnZWQgZm9yIGNvbW1pdDoiCiBtc2dzdHIgItCY0LfQvNC10L3QtdC90LjRjywg0LrQvtGC0L7RgNGL0LUg0L3QtSDQsiDQuNC90LTQtdC60YHQtSDQtNC70Y8g0LrQvtC80LzQuNGC0LA6IgogCi0jOiB3dC1zdGF0dXMuYzoyMjQKKyM6IHd0LXN0YXR1cy5jOjIyNgogbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQgPGZpbGU+Li4uXCIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIgogbXNnc3RyICIgICjQuNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrZ2l0IGFkZCA80YTQsNC50Ls+4oCmwrssINGH0YLQvtCx0Ysg0LTQvtCx0LDQstC40YLRjCDRhNCw0LnQuyDQsiDQuNC90LTQtdC60YEpIgogCi0jOiB3dC1zdGF0dXMuYzoyMjYKKyM6IHd0LXN0YXR1cy5jOjIyOAogbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQvcm0gPGZpbGU+Li4uXCIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIgogbXNnc3RyICIgICjQuNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrZ2l0IGFkZC9ybSA80YTQsNC50Ls+4oCmwrssINGH0YLQvtCx0Ysg0LTQvtCx0LDQstC40YLRjCDQuNC70Lgg0YPQtNCw0LvQuNGC0Ywg0YTQsNC50Lsg0LjQtyDQuNC90LTQtdC60YHQsCkiCiAKLSM6IHd0LXN0YXR1cy5jOjIyNworIzogd3Qtc3RhdHVzLmM6MjI5CiBtc2dpZCAiIgogIiAgKHVzZSBcImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi5cIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyAiCiAiZGlyZWN0b3J5KSIKIG1zZ3N0ciAiICAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCBjaGVja291dCAtLSA80YTQsNC50Ls+4oCmwrssINGH0YLQvtCx0Ysg0L7RgtC80LXQvdC40YLRjCDQuNC30LzQtdC90LXQvdC40Y9cbiAgINCyINGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LUpIgogCi0jOiB3dC1zdGF0dXMuYzoyMjkKKyM6IHd0LXN0YXR1cy5jOjIzMQogbXNnaWQgIiAgKGNvbW1pdCBvciBkaXNjYXJkIHRoZSB1bnRyYWNrZWQgb3IgbW9kaWZpZWQgY29udGVudCBpbiBzdWJtb2R1bGVzKSIKIG1zZ3N0ciAiICAo0YHQtNC10LvQsNC50YLQtSDQutC+0LzQvNC40YIg0LjQu9C4INC+0YLQvNC10L3QuNGC0LUg0LjQt9C80LXQvdC10L3QuNGPINCyINC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80L7QvCDQuNC70Lgg0LjQt9C80LXQvdC10L3QvdC+0Lwg0YHQvtC00LXRgNC20LjQvNC+0Lwg0LIg0L/QvtC00LzQvtC00YPQu9GP0YUpIgogCi0jOiB3dC1zdGF0dXMuYzoyNDEKKyM6IHd0LXN0YXR1cy5jOjI0MwogIywgYy1mb3JtYXQKIG1zZ2lkICIgICh1c2UgXCJnaXQgJXMgPGZpbGU+Li4uXCIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiICAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCAlcyA80YTQsNC50Ls+4oCmwrssINGH0YLQvtCx0Ysg0LTQvtCx0LDQstC40YLRjCDQsiDRgtC+LCDRh9GC0L4g0LHRg9C00LXRgiDQstC60LvRjtGH0LXQvdC+INCyINC60L7QvNC80LjRgikiCiAKLSM6IHd0LXN0YXR1cy5jOjI1NgorIzogd3Qtc3RhdHVzLmM6MjU4CiBtc2dpZCAiYm90aCBkZWxldGVkOiIKIG1zZ3N0ciAi0L7QsdCwINGD0LTQsNC70LXQvdGLOiIKIAotIzogd3Qtc3RhdHVzLmM6MjU4CisjOiB3dC1zdGF0dXMuYzoyNjAKIG1zZ2lkICJhZGRlZCBieSB1czoiCiBtc2dzdHIgItC00L7QsdCw0LLQu9C10L3QviDQvdCw0LzQuDoiCiAKLSM6IHd0LXN0YXR1cy5jOjI2MAorIzogd3Qtc3RhdHVzLmM6MjYyCiBtc2dpZCAiZGVsZXRlZCBieSB0aGVtOiIKIG1zZ3N0ciAi0YPQtNCw0LvQtdC90L4g0LjQvNC4OiIKIAotIzogd3Qtc3RhdHVzLmM6MjYyCisjOiB3dC1zdGF0dXMuYzoyNjQKIG1zZ2lkICJhZGRlZCBieSB0aGVtOiIKIG1zZ3N0ciAi0LTQvtCx0LDQstC70LXQvdC+INC40LzQuDoiCiAKLSM6IHd0LXN0YXR1cy5jOjI2NAorIzogd3Qtc3RhdHVzLmM6MjY2CiBtc2dpZCAiZGVsZXRlZCBieSB1czoiCiBtc2dzdHIgItGD0LTQsNC70LXQvdC+INC90LDQvNC4OiIKIAotIzogd3Qtc3RhdHVzLmM6MjY2CisjOiB3dC1zdGF0dXMuYzoyNjgKIG1zZ2lkICJib3RoIGFkZGVkOiIKIG1zZ3N0ciAi0L7QsdCwINC00L7QsdCw0LLQu9C10L3RizoiCiAKLSM6IHd0LXN0YXR1cy5jOjI2OAorIzogd3Qtc3RhdHVzLmM6MjcwCiBtc2dpZCAiYm90aCBtb2RpZmllZDoiCiBtc2dzdHIgItC+0LHQsCDQuNC30LzQtdC90LXQvdGLOiIKIAotIzogd3Qtc3RhdHVzLmM6Mjc4CisjOiB3dC1zdGF0dXMuYzoyODAKIG1zZ2lkICJuZXcgZmlsZToiCiBtc2dzdHIgItC90L7QstGL0Lkg0YTQsNC50Ls6IgogCi0jOiB3dC1zdGF0dXMuYzoyODAKKyM6IHd0LXN0YXR1cy5jOjI4MgogbXNnaWQgImNvcGllZDoiCiBtc2dzdHIgItGB0LrQvtC/0LjRgNC+0LLQsNC90L46IgogCi0jOiB3dC1zdGF0dXMuYzoyODIKKyM6IHd0LXN0YXR1cy5jOjI4NAogbXNnaWQgImRlbGV0ZWQ6IgogbXNnc3RyICLRg9C00LDQu9C10L3QvjoiCiAKLSM6IHd0LXN0YXR1cy5jOjI4NAorIzogd3Qtc3RhdHVzLmM6Mjg2CiBtc2dpZCAibW9kaWZpZWQ6IgogbXNnc3RyICLQuNC30LzQtdC90LXQvdC+OiIKIAotIzogd3Qtc3RhdHVzLmM6Mjg2CisjOiB3dC1zdGF0dXMuYzoyODgKIG1zZ2lkICJyZW5hbWVkOiIKIG1zZ3N0ciAi0L/QtdGA0LXQuNC80LXQvdC+0LLQsNC90L46IgogCi0jOiB3dC1zdGF0dXMuYzoyODgKKyM6IHd0LXN0YXR1cy5jOjI5MAogbXNnaWQgInR5cGVjaGFuZ2U6IgogbXNnc3RyICLQuNC30LzQtdC90LXQvSDRgtC40L86IgogCi0jOiB3dC1zdGF0dXMuYzoyOTAKKyM6IHd0LXN0YXR1cy5jOjI5MgogbXNnaWQgInVua25vd246IgogbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3QvjoiCiAKLSM6IHd0LXN0YXR1cy5jOjI5MgorIzogd3Qtc3RhdHVzLmM6Mjk0CiBtc2dpZCAidW5tZXJnZWQ6IgogbXNnc3RyICLQvdC1INGB0LvQuNGC0YvQtToiCiAKLSM6IHd0LXN0YXR1cy5jOjM3MgorIzogd3Qtc3RhdHVzLmM6Mzc0CiBtc2dpZCAibmV3IGNvbW1pdHMsICIKIG1zZ3N0ciAi0L3QvtCy0YvQtSDQutC+0LzQvNC40YLRiywgIgogCi0jOiB3dC1zdGF0dXMuYzozNzQKKyM6IHd0LXN0YXR1cy5jOjM3NgogbXNnaWQgIm1vZGlmaWVkIGNvbnRlbnQsICIKIG1zZ3N0ciAi0LjQt9C80LXQvdC10L3QviDRgdC+0LTQtdGA0LbQuNC80L7QtSwgIgogCi0jOiB3dC1zdGF0dXMuYzozNzYKKyM6IHd0LXN0YXR1cy5jOjM3OAogbXNnaWQgInVudHJhY2tlZCBjb250ZW50LCAiCiBtc2dzdHIgItC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80L7QtSDRgdC+0LTQtdGA0LbQuNC80L7QtSwgIgogCi0jOiB3dC1zdGF0dXMuYzo4NTMKKyM6IHd0LXN0YXR1cy5jOjg5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIHN0YXNoIGN1cnJlbnRseSBoYXMgJWQgZW50cnkiCiBtc2dpZF9wbHVyYWwgIllvdXIgc3Rhc2ggY3VycmVudGx5IGhhcyAlZCBlbnRyaWVzIgpAQCAtNTg2Miw2OSArNzQwMyw2OSBAQAogbXNnc3RyWzJdICLQoyDQstCw0YEg0YHQtdC50YfQsNGBINGB0L/RgNGP0YLQsNC90L4gJWQg0LfQsNC/0LjRgdC10LkiCiBtc2dzdHJbM10gItCjINCy0LDRgSDRgdC10LnRh9Cw0YEg0YHQv9GA0Y/RgtCw0L3RiyAlZCDQt9Cw0L/QuNGB0LgiCiAKLSM6IHd0LXN0YXR1cy5jOjg4NQorIzogd3Qtc3RhdHVzLmM6OTI4CiBtc2dpZCAiU3VibW9kdWxlcyBjaGFuZ2VkIGJ1dCBub3QgdXBkYXRlZDoiCiBtc2dzdHIgItCY0LfQvNC10L3QtdC90L3Ri9C1LCDQvdC+INC90LUg0L7QsdC90L7QstC70LXQvdC90YvQtSDQv9C+0LTQvNC+0LTRg9C70Lg6IgogCi0jOiB3dC1zdGF0dXMuYzo4ODcKKyM6IHd0LXN0YXR1cy5jOjkzMAogbXNnaWQgIlN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCiBtc2dzdHIgItCY0LfQvNC10L3QtdC90LjRjyDQsiDQv9C+0LTQvNC+0LTRg9C70Y/RhSwg0LrQvtGC0L7RgNGL0LUg0LHRg9C00YPRgiDQt9Cw0LrQvtC80LzQuNGH0LXQvdGLOiIKIAotIzogd3Qtc3RhdHVzLmM6OTY5CisjOiB3dC1zdGF0dXMuYzoxMDEyCiBtc2dpZCAiIgogIkRvIG5vdCBtb2RpZnkgb3IgcmVtb3ZlIHRoZSBsaW5lIGFib3ZlLlxuIgogIkV2ZXJ5dGhpbmcgYmVsb3cgaXQgd2lsbCBiZSBpZ25vcmVkLiIKIG1zZ3N0ciAi0J3QtSDQuNC30LzQtdC90Y/QudGC0LUg0LjQu9C4INGD0LTQsNC70Y/QudGC0LUg0YHRgtGA0L7QutGDINCy0YvRiNC1INGN0YLQvtC5Llxu0JLRgdGRLCDRh9GC0L4g0L3QuNC20LUg4oCUINCx0YPQtNC10YIg0L/RgNC+0LjQs9C90L7RgNC40YDQvtCy0LDQvdC+LiIKIAotIzogd3Qtc3RhdHVzLmM6MTA4NAorIzogd3Qtc3RhdHVzLmM6MTExOQogbXNnaWQgIllvdSBoYXZlIHVubWVyZ2VkIHBhdGhzLiIKIG1zZ3N0ciAi0KMg0LLQsNGBINC10YHRgtGMINC90LUg0YHQu9C40YLRi9C1INC/0YPRgtC4LiIKIAotIzogd3Qtc3RhdHVzLmM6MTA4NworIzogd3Qtc3RhdHVzLmM6MTEyMgogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjb21taXRcIikiCiBtc2dzdHIgIiAgKNGA0LDQt9GA0LXRiNC40YLQtSDQutC+0L3RhNC70LjQutGC0YssINC30LDRgtC10Lwg0LfQsNC/0YPRgdGC0LjRgtC1IMKrZ2l0IGNvbW1pdMK7KSIKIAotIzogd3Qtc3RhdHVzLmM6MTA4OQorIzogd3Qtc3RhdHVzLmM6MTEyNAogbXNnaWQgIiAgKHVzZSBcImdpdCBtZXJnZSAtLWFib3J0XCIgdG8gYWJvcnQgdGhlIG1lcmdlKSIKIG1zZ3N0ciAiICAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCBtZXJnZSAtLWFib3J0wrssINGH0YLQvtCx0Ysg0L7RgdGC0LDQvdC+0LLQuNGC0Ywg0L7Qv9C10YDQsNGG0LjRjiDRgdC70LjRj9C90LjRjykiCiAKLSM6IHd0LXN0YXR1cy5jOjEwOTQKKyM6IHd0LXN0YXR1cy5jOjExMjgKIG1zZ2lkICJBbGwgY29uZmxpY3RzIGZpeGVkIGJ1dCB5b3UgYXJlIHN0aWxsIG1lcmdpbmcuIgogbXNnc3RyICLQktGB0LUg0LrQvtC90YTQu9C40LrRgtGLINC40YHQv9GA0LDQstC70LXQvdGLLCDQvdC+INCy0Ysg0LLRgdC1INC10YnQtSDQsiDQv9GA0L7RhtC10YHRgdC1INGB0LvQuNGP0L3QuNGPLiIKIAotIzogd3Qtc3RhdHVzLmM6MTA5NworIzogd3Qtc3RhdHVzLmM6MTEzMQogbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXRcIiB0byBjb25jbHVkZSBtZXJnZSkiCiBtc2dzdHIgIiAgKNC40YHQv9C+0LvRjNC30YPQudGC0LUgwqtnaXQgY29tbWl0wrssINGH0YLQvtCx0Ysg0LfQsNCy0LXRgNGI0LjRgtGMINGB0LvQuNGP0L3QuNC1KSIKIAotIzogd3Qtc3RhdHVzLmM6MTEwNworIzogd3Qtc3RhdHVzLmM6MTE0MAogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbiBhbSBzZXNzaW9uLiIKIG1zZ3N0ciAi0JLRiyDQsiDQv9GA0L7RhtC10YHRgdC1INGB0LXRgdGB0LjQuCBhbS4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMTAKKyM6IHd0LXN0YXR1cy5jOjExNDMKIG1zZ2lkICJUaGUgY3VycmVudCBwYXRjaCBpcyBlbXB0eS4iCiBtc2dzdHIgItCi0LXQutGD0YnQuNC5INC/0LDRgtGHINC/0YPRgdGC0L7QuS4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMTQKKyM6IHd0LXN0YXR1cy5jOjExNDcKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCB0aGVuIHJ1biBcImdpdCBhbSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgICjRgNCw0LfRgNC10YjQuNGC0LUg0LrQvtC90YTQu9C40LrRgtGLLCDQt9Cw0YLQtdC8INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCBhbSAtLWNvbnRpbnVlwrspIgogCi0jOiB3dC1zdGF0dXMuYzoxMTE2CisjOiB3dC1zdGF0dXMuYzoxMTQ5CiBtc2dpZCAiICAodXNlIFwiZ2l0IGFtIC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCiBtc2dzdHIgIiAgKNC40YHQv9C+0LvRjNC30YPQudGC0LUgwqtnaXQgYW0gLS1za2lwwrssINGH0YLQvtCx0Ysg0L/RgNC+0L/Rg9GB0YLQuNGC0Ywg0Y3RgtC+0YIg0L/QsNGC0YcpIgogCi0jOiB3dC1zdGF0dXMuYzoxMTE4CisjOiB3dC1zdGF0dXMuYzoxMTUxCiBtc2dpZCAiICAodXNlIFwiZ2l0IGFtIC0tYWJvcnRcIiB0byByZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2gpIgogbXNnc3RyICIgICjQuNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrZ2l0IGFtIC0tYWJvcnTCuywg0YfRgtC+0LHRiyDQstC+0YHRgdGC0LDQvdC+0LLQuNGC0Ywg0L7RgNC40LPQuNC90LDQu9GM0L3Rg9GOINCy0LXRgtC60YMpIgogCi0jOiB3dC1zdGF0dXMuYzoxMjUwCisjOiB3dC1zdGF0dXMuYzoxMjg0CiBtc2dpZCAiZ2l0LXJlYmFzZS10b2RvIGlzIG1pc3NpbmcuIgogbXNnc3RyICJnaXQtcmViYXNlLXRvZG8g0L7RgtGB0YPRgtGB0YLQstGD0LXRgi4iCiAKLSM6IHd0LXN0YXR1cy5jOjEyNTIKKyM6IHd0LXN0YXR1cy5jOjEyODYKIG1zZ2lkICJObyBjb21tYW5kcyBkb25lLiIKIG1zZ3N0ciAi0JrQvtC80LDQvdC00Ysg0L3QtSDQstGL0L/QvtC70L3QtdC90YsuIgogCi0jOiB3dC1zdGF0dXMuYzoxMjU1CisjOiB3dC1zdGF0dXMuYzoxMjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkxhc3QgY29tbWFuZCBkb25lICglZCBjb21tYW5kIGRvbmUpOiIKIG1zZ2lkX3BsdXJhbCAiTGFzdCBjb21tYW5kcyBkb25lICglZCBjb21tYW5kcyBkb25lKToiCkBAIC01OTMzLDE2ICs3NDc0LDE2IEBACiBtc2dzdHJbMl0gItCf0L7RgdC70LXQtNC90Y/RjyDQutC+0LzQsNC90LTQsCDQstGL0L/QvtC70L3QtdC90LAgKCVkINC60L7QvNCw0L3QtCDQstGL0L/QvtC70L3QtdC90L4pOiIKIG1zZ3N0clszXSAi0J/QvtGB0LvQtdC00L3Rj9GPINC60L7QvNCw0L3QtNCwINCy0YvQv9C+0LvQvdC10L3QsCAoJWQg0LrQvtC80LDQvdC0INCy0YvQv9C+0LvQvdC10L3Qvik6IgogCi0jOiB3dC1zdGF0dXMuYzoxMjY2CisjOiB3dC1zdGF0dXMuYzoxMzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgKHNlZSBtb3JlIGluIGZpbGUgJXMpIgogbXNnc3RyICIgICjRgdC80L7RgtGA0LjRgtC1INC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdC+INCyINGE0LDQudC70LUgJXMpIgogCi0jOiB3dC1zdGF0dXMuYzoxMjcxCisjOiB3dC1zdGF0dXMuYzoxMzA1CiBtc2dpZCAiTm8gY29tbWFuZHMgcmVtYWluaW5nLiIKIG1zZ3N0ciAi0JrQvtC80LDQvdC0INCx0L7Qu9GM0YjQtSDQvdC1INC+0YHRgtCw0LvQvtGB0YwuIgogCi0jOiB3dC1zdGF0dXMuYzoxMjc0CisjOiB3dC1zdGF0dXMuYzoxMzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5leHQgY29tbWFuZCB0byBkbyAoJWQgcmVtYWluaW5nIGNvbW1hbmQpOiIKIG1zZ2lkX3BsdXJhbCAiTmV4dCBjb21tYW5kcyB0byBkbyAoJWQgcmVtYWluaW5nIGNvbW1hbmRzKToiCkBAIC01OTUxLDE1NCArNzQ5MiwxNzAgQEAKIG1zZ3N0clsyXSAi0KHQu9C10LTRg9GO0YnQsNGPINC60L7QvNCw0L3QtNCwINC00LvRjyDQstGL0L/QvtC70L3QtdC90LjRjyAoJWQg0LrQvtC80LDQvdC0INC+0YHRgtCw0LvQvtGB0YwpOiIKIG1zZ3N0clszXSAi0KHQu9C10LTRg9GO0YnQsNGPINC60L7QvNCw0L3QtNCwINC00LvRjyDQstGL0L/QvtC70L3QtdC90LjRjyAoJWQg0LrQvtC80LDQvdC0INC+0YHRgtCw0LvQvtGB0YwpOiIKIAotIzogd3Qtc3RhdHVzLmM6MTI4MgorIzogd3Qtc3RhdHVzLmM6MTMxNgogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1lZGl0LXRvZG9cIiB0byB2aWV3IGFuZCBlZGl0KSIKIG1zZ3N0ciAiICAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCByZWJhc2UgLS1lZGl0LXRvZG/Cuywg0YfRgtC+0LHRiyDQv9GA0L7RgdC80L7RgtGA0LXRgtGMINC4INC40LfQvNC10L3QuNGC0YwpIgogCi0jOiB3dC1zdGF0dXMuYzoxMjk1CisjOiB3dC1zdGF0dXMuYzoxMzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgogbXNnc3RyICLQktGLINGB0LXQudGH0LDRgSDQv9C10YDQtdC80LXRidCw0LXRgtC1INCy0LXRgtC60YMgwqslc8K7INC90LDQtCDCqyVzwrsuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzAwCisjOiB3dC1zdGF0dXMuYzoxMzMzCiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmViYXNpbmcuIgogbXNnc3RyICLQktGLINGB0LXQudGH0LDRgSDQv9C10YDQtdC80LXRidCw0LXRgtC1INCy0LXRgtC60YMuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzE0CisjOiB3dC1zdGF0dXMuYzoxMzQ2CiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKNGA0LDQt9GA0LXRiNC40YLQtSDQutC+0L3RhNC70LjQutGC0YssINC30LDRgtC10Lwg0LfQsNC/0YPRgdGC0LjRgtC1IMKrZ2l0IHJlYmFzZSAtLWNvbnRpbnVlwrspIgogCi0jOiB3dC1zdGF0dXMuYzoxMzE2CisjOiB3dC1zdGF0dXMuYzoxMzQ4CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgogbXNnc3RyICIgICjQuNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrZ2l0IHJlYmFzZSAtLXNraXDCuywg0YfRgtC+0LHRiyDQv9GA0L7Qv9GD0YHRgtC40YLRjCDRjdGC0L7RgiDQv9Cw0YLRhykiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMTgKKyM6IHd0LXN0YXR1cy5jOjEzNTAKIG1zZ2lkICIgICh1c2UgXCJnaXQgcmViYXNlIC0tYWJvcnRcIiB0byBjaGVjayBvdXQgdGhlIG9yaWdpbmFsIGJyYW5jaCkiCiBtc2dzdHIgIiAgKNC40YHQv9C+0LvRjNC30YPQudGC0LUgwqtnaXQgcmViYXNlIC0tYWJvcnTCuywg0YfRgtC+0LHRiyDQv9C10YDQtdC50YLQuCDQvdCwINC+0YDQuNCz0LjQvdCw0LvRjNC90YPRjiDQstC10YLQutGDKSIKIAotIzogd3Qtc3RhdHVzLmM6MTMyNAorIzogd3Qtc3RhdHVzLmM6MTM1NwogbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiICAo0LLRgdC1INC60L7QvdGE0LvQuNC60YLRiyDRgNCw0LfRgNC10YjQtdC90Ys6INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCByZWJhc2UgLS1jb250aW51ZcK7KSIKIAotIzogd3Qtc3RhdHVzLmM6MTMyOAorIzogd3Qtc3RhdHVzLmM6MTM2MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFyZSBjdXJyZW50bHkgc3BsaXR0aW5nIGEgY29tbWl0IHdoaWxlIHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgogbXNnc3RyICLQktGLINGB0LXQudGH0LDRgSDRgNCw0LfQtNC10LvRj9C10YLQtSDQutC+0LzQvNC40YIg0L/RgNC4INC/0LXRgNC10LzQtdGJ0LXQvdC40Lgg0LLQtdGC0LrQuCAgwqslc8K7INC90LDQtCDCqyVzwrsuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzMzCisjOiB3dC1zdGF0dXMuYzoxMzY2CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgc3BsaXR0aW5nIGEgY29tbWl0IGR1cmluZyBhIHJlYmFzZS4iCiBtc2dzdHIgItCS0Ysg0YHQtdC50YfQsNGBINGA0LDQt9C00LXQu9GP0LXRgtC1INC60L7QvNC80LjRgiDQv9GA0Lgg0L/QtdGA0LXQvNC10YnQtdC90LjQuCDQstC10YLQutC4LiIKIAotIzogd3Qtc3RhdHVzLmM6MTMzNgorIzogd3Qtc3RhdHVzLmM6MTM2OQogbXNnaWQgIiAgKE9uY2UgeW91ciB3b3JraW5nIGRpcmVjdG9yeSBpcyBjbGVhbiwgcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIo0JrQsNC6INGC0L7Qu9GM0LrQviDQstCw0Ygg0YDQsNCx0L7Rh9C40Lkg0LrQsNGC0LDQu9C+0LMg0LHRg9C00LXRgiDRh9C40YHRgtGL0LksINC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCByZWJhc2UgLS1jb250aW51ZcK7KSIKIAotIzogd3Qtc3RhdHVzLmM6MTM0MAorIzogd3Qtc3RhdHVzLmM6MTM3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBlZGl0aW5nIGEgY29tbWl0IHdoaWxlIHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgogbXNnc3RyICLQktGLINGB0LXQudGH0LDRgSDRgNC10LTQsNC60YLQuNGA0YPQtdGC0LUg0LrQvtC80LzQuNGCINC/0YDQuCDQv9C10YDQtdC80LXRidC10L3QuNC4INCy0LXRgtC60LggIMKrJXPCuyDQvdCw0LQgwqslc8K7LiIKIAotIzogd3Qtc3RhdHVzLmM6MTM0NQorIzogd3Qtc3RhdHVzLmM6MTM3OAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGVkaXRpbmcgYSBjb21taXQgZHVyaW5nIGEgcmViYXNlLiIKIG1zZ3N0ciAi0JLRiyDRgdC10LnRh9Cw0YEg0YDQtdC00LDQutGC0LjRgNGD0LXRgtC1INC60L7QvNC80LjRgiDQv9GA0Lgg0L/QtdGA0LXQvNC10YnQtdC90LjQuCDQstC10YLQutC4LiIKIAotIzogd3Qtc3RhdHVzLmM6MTM0OAorIzogd3Qtc3RhdHVzLmM6MTM4MQogbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXQgLS1hbWVuZFwiIHRvIGFtZW5kIHRoZSBjdXJyZW50IGNvbW1pdCkiCiBtc2dzdHIgIiAgKNC40YHQv9C+0LvRjNC30YPQudGC0LUgwqtnaXQgY29tbWl0IC0tYW1lbmTCuywg0YfRgtC+0LHRiyDQuNGB0L/RgNCw0LLQuNGC0Ywg0YLQtdC60YPRidC40Lkg0LrQvtC80LzQuNGCKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM1MAorIzogd3Qtc3RhdHVzLmM6MTM4MwogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiIG9uY2UgeW91IGFyZSBzYXRpc2ZpZWQgd2l0aCB5b3VyIGNoYW5nZXMpIgogbXNnc3RyICIgICjQuNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrZ2l0IHJlYmFzZSAtLWNvbnRpbnVlwrssINC60L7Qs9C00LAg0LHRg9C00LXRgtC1INC00L7QstC+0LvRjNC90Ysg0LjQt9C80LXQvdC10L3QuNGP0LzQuCkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNjAKKyM6IHd0LXN0YXR1cy5jOjEzOTQKK21zZ2lkICJDaGVycnktcGljayBjdXJyZW50bHkgaW4gcHJvZ3Jlc3MuIgorbXNnc3RyICIiCisKKyM6IHd0LXN0YXR1cy5jOjEzOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgY2hlcnJ5LXBpY2tpbmcgY29tbWl0ICVzLiIKIG1zZ3N0ciAi0JLRiyDQutC+0L/QuNGA0YPQtdGC0LUg0LrQvtC80LzQuNGCICVzLiIKIAotIzogd3Qtc3RhdHVzLmM6MTM2NQorIzogd3Qtc3RhdHVzLmM6MTQwNAogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgICjRgNCw0LfRgNC10YjQuNGC0LUg0LrQvtC90YTQu9C40LrRgtGLLCDQt9Cw0YLQtdC8INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCBjaGVycnktcGljayAtLWNvbnRpbnVlwrspIgogCi0jOiB3dC1zdGF0dXMuYzoxMzY4CisjOiB3dC1zdGF0dXMuYzoxNDA3Cittc2dpZCAiICAocnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB0byBjb250aW51ZSkiCittc2dzdHIgIiIKKworIzogd3Qtc3RhdHVzLmM6MTQxMAogbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgICjQstGB0LUg0LrQvtC90YTQu9C40LrRgtGLINGA0LDQt9GA0LXRiNC10L3Rizog0LfQsNC/0YPRgdGC0LjRgtC1IMKrZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWXCuykiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNzAKKyM6IHd0LXN0YXR1cy5jOjE0MTIKIG1zZ2lkICIgICh1c2UgXCJnaXQgY2hlcnJ5LXBpY2sgLS1hYm9ydFwiIHRvIGNhbmNlbCB0aGUgY2hlcnJ5LXBpY2sgb3BlcmF0aW9uKSIKIG1zZ3N0ciAiICAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCBjaGVycnktcGljayAtLWFib3J0wrssINGH0YLQvtCx0Ysg0L7RgtC80LXQvdC40YLRjCDQutC+0L/QuNGA0L7QstCw0L3QuNGPINC60L7QvNC80LjRgtCwKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM3OQorIzogd3Qtc3RhdHVzLmM6MTQyMgorbXNnaWQgIlJldmVydCBjdXJyZW50bHkgaW4gcHJvZ3Jlc3MuIgorbXNnc3RyICIiCisKKyM6IHd0LXN0YXR1cy5jOjE0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmV2ZXJ0aW5nIGNvbW1pdCAlcy4iCiBtc2dzdHIgItCS0Ysg0YHQtdC50YfQsNGBINC+0LHRgNCw0YnQsNC10YLQtSDQuNC30LzQtdC90LXQvdC40Y8g0LrQvtC80LzQuNGC0LAgJXMuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzg0CisjOiB3dC1zdGF0dXMuYzoxNDMxCiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgICjRgNCw0LfRgNC10YjQuNGC0LUg0LrQvtC90YTQu9C40LrRgtGLLCDQt9Cw0YLQtdC8INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCByZXZlcnQgLS1jb250aW51ZcK7KSIKIAotIzogd3Qtc3RhdHVzLmM6MTM4NworIzogd3Qtc3RhdHVzLmM6MTQzNAorbXNnaWQgIiAgKHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiIHRvIGNvbnRpbnVlKSIKK21zZ3N0ciAiIgorCisjOiB3dC1zdGF0dXMuYzoxNDM3CiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgICjQstGB0LUg0LrQvtC90YTQu9C40LrRgtGLINGA0LDQt9GA0LXRiNC10L3Rizog0LfQsNC/0YPRgdGC0LjRgtC1IMKrZ2l0IHJldmVydCAtLWNvbnRpbnVlwrspIgogCi0jOiB3dC1zdGF0dXMuYzoxMzg5CisjOiB3dC1zdGF0dXMuYzoxNDM5CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJldmVydCAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSByZXZlcnQgb3BlcmF0aW9uKSIKIG1zZ3N0ciAiICAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCByZXZlcnQgLS1hYm9ydMK7LCDRh9GC0L7QsdGLINC+0YLQvNC10L3QuNGC0Ywg0L7Qv9C10YDQsNGG0LjRjiDQvtCx0YDQsNGJ0LXQvdC40Y8g0LjQt9C80LXQvdC10L3QuNC5INC60L7QvNC80LjRgtCwKSIKIAotIzogd3Qtc3RhdHVzLmM6MTQwMAorIzogd3Qtc3RhdHVzLmM6MTQ0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcsIHN0YXJ0ZWQgZnJvbSBicmFuY2ggJyVzJy4iCiBtc2dzdHIgItCS0Ysg0YHQtdC50YfQsNGBINCyINC/0YDQvtGG0LXRgdGB0LUg0LTQstC+0LjRh9C90L7Qs9C+INC/0L7QuNGB0LrQsCwg0L3QsNGH0LDRgtC+0LPQviDRgSDQstC10YLQutC4IMKrJXPCuy4iCiAKLSM6IHd0LXN0YXR1cy5jOjE0MDQKKyM6IHd0LXN0YXR1cy5jOjE0NTMKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcuIgogbXNnc3RyICLQktGLINGB0LXQudGH0LDRgSDQsiDQv9GA0L7RhtC10YHRgdC1INC00LLQvtC40YfQvdC+0LPQviDQv9C+0LjRgdC60LAuIgogCi0jOiB3dC1zdGF0dXMuYzoxNDA3CisjOiB3dC1zdGF0dXMuYzoxNDU2CiBtc2dpZCAiICAodXNlIFwiZ2l0IGJpc2VjdCByZXNldFwiIHRvIGdldCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBicmFuY2gpIgogbXNnc3RyICIgICjQuNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrZ2l0IGJpc2VjdCByZXNldMK7LCDRh9GC0L7QsdGLINCy0LXRgNC90YPRgtGM0YHRjyDQvdCwINC40YHRhdC+0LTQvdGD0Y4g0LLQtdGC0LrRgykiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MDQKKyM6IHd0LXN0YXR1cy5jOjE2NjUKIG1zZ2lkICJPbiBicmFuY2ggIgogbXNnc3RyICLQndCwINCy0LXRgtC60LUgIgogCi0jOiB3dC1zdGF0dXMuYzoxNjEwCisjOiB3dC1zdGF0dXMuYzoxNjcyCiBtc2dpZCAiaW50ZXJhY3RpdmUgcmViYXNlIGluIHByb2dyZXNzOyBvbnRvICIKIG1zZ3N0ciAi0LjQvdGC0LXRgNCw0LrRgtC40LLQvdC+0LUg0L/QtdGA0LXQvNC10YnQtdC90LjQtSDQsiDQv9GA0L7RhtC10YHRgdC1OyDQvdCw0LQgIgogCi0jOiB3dC1zdGF0dXMuYzoxNjEyCisjOiB3dC1zdGF0dXMuYzoxNjc0CiBtc2dpZCAicmViYXNlIGluIHByb2dyZXNzOyBvbnRvICIKIG1zZ3N0ciAi0L/QtdGA0LXQvNC10YnQtdC90LjQtSDQsiDQv9GA0L7RhtC10YHRgdC1OyDQvdCw0LQgIgogCi0jOiB3dC1zdGF0dXMuYzoxNjE3CisjOiB3dC1zdGF0dXMuYzoxNjc5CiBtc2dpZCAiSEVBRCBkZXRhY2hlZCBhdCAiCiBtc2dzdHIgIkhFQUQg0L7RgtC00LXQu9GR0L0g0L3QsCAiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MTkKKyM6IHd0LXN0YXR1cy5jOjE2ODEKIG1zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgogbXNnc3RyICJIRUFEINC+0YLQtNC10LvRkdC9INC90LDRh9C40L3QsNGPINGBICIKIAotIzogd3Qtc3RhdHVzLmM6MTYyMgorIzogd3Qtc3RhdHVzLmM6MTY4NAogbXNnaWQgIk5vdCBjdXJyZW50bHkgb24gYW55IGJyYW5jaC4iCiBtc2dzdHIgItCh0LXQudGH0LDRgSDQvdC4INC90LAg0L7QtNC90L7QuSDQuNC3INCy0LXRgtC+0LoiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NDIKKyM6IHd0LXN0YXR1cy5jOjE3MDEKIG1zZ2lkICJJbml0aWFsIGNvbW1pdCIKIG1zZ3N0ciAi0J3QsNGH0LDQu9GM0L3Ri9C5INC60L7QvNC80LjRgiIKIAotIzogd3Qtc3RhdHVzLmM6MTY0MworIzogd3Qtc3RhdHVzLmM6MTcwMgogbXNnaWQgIk5vIGNvbW1pdHMgeWV0IgogbXNnc3RyICLQldGJ0LUg0L3QtdGCINC60L7QvNC80LjRgtC+0LIiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NTcKKyM6IHd0LXN0YXR1cy5jOjE3MTYKIG1zZ2lkICJVbnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgItCd0LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvQtSDRhNCw0LnQu9GLIgogCi0jOiB3dC1zdGF0dXMuYzoxNjU5CisjOiB3dC1zdGF0dXMuYzoxNzE4CiBtc2dpZCAiSWdub3JlZCBmaWxlcyIKIG1zZ3N0ciAi0JjQs9C90L7RgNC40YDRg9C10LzRi9C1INGE0LDQudC70YsiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjMKKyM6IHd0LXN0YXR1cy5jOjE3MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGVudW1lcmF0ZSB1bnRyYWNrZWQgZmlsZXMuICdzdGF0dXMgLXVubydcbiIKQEAgLTYxMDYsMjIxICs3NjYzLDIxNiBAQAogIm5ldyBmaWxlcyB5b3Vyc2VsZiAoc2VlICdnaXQgaGVscCBzdGF0dXMnKS4iCiBtc2dzdHIgIiUuMmYg0YHQtdC60YPQvdC00Ysg0LfQsNC90Y/QuyDQstGL0LLQvtC0INGB0L/QuNGB0LrQsCDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0YUg0YTQsNC50LvQvtCyLiDCq3N0YXR1cyAtdW5vwrsg0LLQvtC30LzQvtC20L3QviDQvNC+0LbQtdGCINGD0YHQutC+0YDQuNGC0Ywg0Y3RgtC+LCDQvdC+INCx0YPQtNGM0YLQtSDQstC90LjQvNCw0YLQtdC70YzQvdGLLCDQuCDQvdC1INC30LDQsdGD0LTRjNGC0LUg0LTQvtCx0LDQstC40YLRjCDQvdC+0LLRi9C1INGE0LDQudC70Ysg0LLRgNGD0YfQvdGD0Y4gKNGB0LzQvtGC0YDQuNGC0LUgwqtnaXQgaGVscCBzdGF0dXPCuyDQtNC70Y8g0L/QvtC00YDQvtCx0L3QvtGB0YLQtdC5KS4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjkKKyM6IHd0LXN0YXR1cy5jOjE3MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW50cmFja2VkIGZpbGVzIG5vdCBsaXN0ZWQlcyIKIG1zZ3N0ciAi0J3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9C1INGE0LDQudC70Ysg0L3QtSDQv9C+0LrQsNC30LDQvdGLJXMiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NzEKKyM6IHd0LXN0YXR1cy5jOjE3MzAKIG1zZ2lkICIgKHVzZSAtdSBvcHRpb24gdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpIgogbXNnc3RyICIo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDQvtC/0YbQuNGOIMKrLXXCuywg0YfRgtC+0LHRiyDQv9C+0LrQsNC30LDRgtGMINC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvQtSDRhNCw0LnQu9GLKSIKIAotIzogd3Qtc3RhdHVzLmM6MTY3NworIzogd3Qtc3RhdHVzLmM6MTczNgogbXNnaWQgIk5vIGNoYW5nZXMiCiBtc2dzdHIgItCd0LXRgiDQuNC30LzQtdC90LXQvdC40LkiCiAKLSM6IHd0LXN0YXR1cy5jOjE2ODIKKyM6IHd0LXN0YXR1cy5jOjE3NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXQgKHVzZSBcImdpdCBhZGRcIiBhbmQvb3IgXCJnaXQgY29tbWl0IC1hXCIpXG4iCiBtc2dzdHIgItC90LXRgiDQuNC30LzQtdC90LXQvdC40Lkg0LTQvtCx0LDQstC70LXQvdC90YvRhSDQtNC70Y8g0LrQvtC80LzQuNGC0LBcbijQuNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrZ2l0IGFkZMK7INC4L9C40LvQuCDCq2dpdCBjb21taXQgLWHCuylcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTY4NQorIzogd3Qtc3RhdHVzLmM6MTc0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdFxuIgogbXNnc3RyICLQvdC10YIg0LjQt9C80LXQvdC10L3QuNC5INC00L7QsdCw0LLQu9C10L3QvdGL0YUg0LTQu9GPINC60L7QvNC80LjRgtCwXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2ODgKKyM6IHd0LXN0YXR1cy5jOjE3NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdGhpbmcgYWRkZWQgdG8gY29tbWl0IGJ1dCB1bnRyYWNrZWQgZmlsZXMgcHJlc2VudCAodXNlIFwiZ2l0IGFkZFwiIHRvICIKICJ0cmFjaylcbiIKIG1zZ3N0ciAi0L3QuNGH0LXQs9C+INC90LUg0LTQvtCx0LDQstC70LXQvdC+INCyINC60L7QvNC80LjRgiwg0L3QviDQtdGB0YLRjCDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0LUg0YTQsNC50LvRiyAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCBhZGTCuywg0YfRgtC+0LHRiyDQvtGC0YHQu9C10LbQuNCy0LDRgtGMINC40YUpXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTEKKyM6IHd0LXN0YXR1cy5jOjE3NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyBhZGRlZCB0byBjb21taXQgYnV0IHVudHJhY2tlZCBmaWxlcyBwcmVzZW50XG4iCiBtc2dzdHIgItC90LjRh9C10LPQviDQvdC1INC00L7QsdCw0LLQu9C10L3QviDQsiDQutC+0LzQvNC40YIsINC90L4g0LXRgdGC0Ywg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9C1INGE0LDQudC70YtcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTY5NAorIzogd3Qtc3RhdHVzLmM6MTc1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIGNvbW1pdCAoY3JlYXRlL2NvcHkgZmlsZXMgYW5kIHVzZSBcImdpdCBhZGRcIiB0byB0cmFjaylcbiIKIG1zZ3N0ciAi0L3QtdGH0LXQs9C+INC60L7QvNC80LjRgtC40YLRjCAo0YHQvtC30LTQsNC50YLQtS/RgdC60L7Qv9C40YDRg9C50YLQtSDRhNCw0LnQu9GLLCDQt9Cw0YLQtdC8INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCBhZGTCuywg0YfRgtC+0LHRiyDQvtGC0YHQu9C10LbQuNCy0LDRgtGMINC40YUpXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTcgd3Qtc3RhdHVzLmM6MTcwMgorIzogd3Qtc3RhdHVzLmM6MTc1NiB3dC1zdGF0dXMuYzoxNzYxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0XG4iCiBtc2dzdHIgItC90LXRh9C10LPQviDQutC+0LzQvNC40YLQuNGC0YxcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTcwMAorIzogd3Qtc3RhdHVzLmM6MTc1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIGNvbW1pdCAodXNlIC11IHRvIHNob3cgdW50cmFja2VkIGZpbGVzKVxuIgogbXNnc3RyICLQvdC10YfQtdCz0L4g0LrQvtC80LzQuNGC0LjRgtGMICjQuNGB0L/QvtC70YzQt9GD0LnRgtC1INC+0L/RhtC40Y4gwqstdcK7LCDRh9GC0L7QsdGLINC/0L7QutCw0LfQsNGC0Ywg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9C1INGE0LDQudC70YspXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE3MDQKKyM6IHd0LXN0YXR1cy5jOjE3NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXQsIHdvcmtpbmcgdHJlZSBjbGVhblxuIgogbXNnc3RyICLQvdC10YfQtdCz0L4g0LrQvtC80LzQuNGC0LjRgtGMLCDQvdC10YIg0LjQt9C80LXQvdC10L3QuNC5INCyINGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LVcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTgxNworIzogd3Qtc3RhdHVzLmM6MTg3NgogbXNnaWQgIk5vIGNvbW1pdHMgeWV0IG9uICIKIG1zZ3N0ciAi0JXRidC1INC90LXRgiDQutC+0LzQvNC40YLQvtCyINCyIgogCi0jOiB3dC1zdGF0dXMuYzoxODIxCisjOiB3dC1zdGF0dXMuYzoxODgwCiBtc2dpZCAiSEVBRCAobm8gYnJhbmNoKSIKIG1zZ3N0ciAiSEVBRCAo0L3QtdGCINCy0LXRgtC60LgpIgogCi0jOiB3dC1zdGF0dXMuYzoxODUyCisjOiB3dC1zdGF0dXMuYzoxOTExCiBtc2dpZCAiZGlmZmVyZW50IgogbXNnc3RyICLQvtGC0LvQuNGH0LDQtdGC0YHRjyIKIAotIzogd3Qtc3RhdHVzLmM6MTg1NCB3dC1zdGF0dXMuYzoxODYyCisjOiB3dC1zdGF0dXMuYzoxOTEzIHd0LXN0YXR1cy5jOjE5MjEKIG1zZ2lkICJiZWhpbmQgIgogbXNnc3RyICLQv9C+0LfQsNC00LgiCiAKLSM6IHd0LXN0YXR1cy5jOjE4NTcgd3Qtc3RhdHVzLmM6MTg2MAorIzogd3Qtc3RhdHVzLmM6MTkxNiB3dC1zdGF0dXMuYzoxOTE5CiBtc2dpZCAiYWhlYWQgIgogbXNnc3RyICLQstC/0LXRgNC10LTQuCAiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGUgYWN0aW9uIGlzIGUuZy4gInB1bGwgd2l0aCByZWJhc2UiCi0jOiB3dC1zdGF0dXMuYzoyMzc2CisjOiB3dC1zdGF0dXMuYzoyNDQzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMICVzOiDQoyDQstCw0YEg0LXRgdGC0Ywg0L3QtdC/0YDQvtC40L3QtNC10LrRgdC40YDQvtCy0LDQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8uIgogCi0jOiB3dC1zdGF0dXMuYzoyMzgyCisjOiB3dC1zdGF0dXMuYzoyNDQ5CiBtc2dpZCAiYWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICLQuiDRgtC+0LzRgyDQttC1LCDQsiDQstCw0YjQtdC8INC40L3QtNC10LrRgdC1INC10YHRgtGMINC90LXQt9Cw0LrQvtC80LzQuNGH0LXQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8uIgogCi0jOiB3dC1zdGF0dXMuYzoyMzg0CisjOiB3dC1zdGF0dXMuYzoyNDUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAlczogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0YwgJXM6INCSINCy0LDRiNC10Lwg0LjQvdC00LXQutGB0LUg0LXRgdGC0Ywg0L3QtdC30LDQutC+0LzQvNC40YfQtdC90L3Ri9C1INC40LfQvNC10L3QtdC90LjRjy4iCiAKLSM6IGNvbXBhdC9wcmVjb21wb3NlX3V0ZjguYzo1OCBidWlsdGluL2Nsb25lLmM6NDQzCi0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgJyVzJyIKLW1zZ3N0ciAi0YHQsdC+0Lkg0L7RgtGB0L7QtdC00LjQvdC10L3QuNGPIMKrJXPCuyIKLQotIzogYnVpbHRpbi9hZGQuYzoyNAorIzogYnVpbHRpbi9hZGQuYzoyNQogbXNnaWQgImdpdCBhZGQgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICJnaXQgYWRkIFs80L7Qv9GG0LjQuD5dIFstLV0gPNGB0L/QtdGG0LjRhNC40LrQsNGC0L7RgC3Qv9GD0YLQuD7igKYiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6ODMKKyM6IGJ1aWx0aW4vYWRkLmM6ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBkaWZmIHN0YXR1cyAlYyIKLW1zZ3N0ciAi0L3QtdC+0LbQuNC00LDQvdC90YvQuSDRgdGC0LDRgtGD0YEg0YDQsNC30LvQuNGH0LjQuSAlYyIKK21zZ3N0ciAi0L3QtdC+0LbQuNC00LDQvdC90YvQuSDRgdGC0LDRgtGD0YEg0YPRgtC40LvQuNGC0Ysg0YHRgNCw0LLQvdC10L3QuNGPICVjIgogCi0jOiBidWlsdGluL2FkZC5jOjg4IGJ1aWx0aW4vY29tbWl0LmM6Mjc5CisjOiBidWlsdGluL2FkZC5jOjg5IGJ1aWx0aW4vY29tbWl0LmM6Mjg1CiBtc2dpZCAidXBkYXRpbmcgZmlsZXMgZmFpbGVkIgogbXNnc3RyICLRgdCx0L7QuSDQv9GA0Lgg0L7QsdC90L7QstC70LXQvdC40Lgg0YTQsNC50LvQvtCyIgogCi0jOiBidWlsdGluL2FkZC5jOjk4CisjOiBidWlsdGluL2FkZC5jOjk5CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW92ZSAnJXMnXG4iCiBtc2dzdHIgItGD0LTQsNC70LjRgtGMIMKrJXPCu1xuIgogCi0jOiBidWlsdGluL2FkZC5jOjE3MworIzogYnVpbHRpbi9hZGQuYzoxNzQKIG1zZ2lkICJVbnN0YWdlZCBjaGFuZ2VzIGFmdGVyIHJlZnJlc2hpbmcgdGhlIGluZGV4OiIKIG1zZ3N0ciAi0J3QtdC/0YDQvtC40L3QtNC10LrRgdC40YDQvtCy0LDQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8g0L/QvtGB0LvQtSDQvtCx0L3QvtCy0LvQtdC90LjRjyDQuNC90LTQtdC60YHQsDoiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjMzIGJ1aWx0aW4vcmV2LXBhcnNlLmM6ODkzCisjOiBidWlsdGluL2FkZC5jOjIzNCBidWlsdGluL3Jldi1wYXJzZS5jOjg5NgogbXNnaWQgIkNvdWxkIG5vdCByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0LjQvdC00LXQutGBIgogCi0jOiBidWlsdGluL2FkZC5jOjI0NAorIzogYnVpbHRpbi9hZGQuYzoyNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZy4iCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywgwqslc8K7INC00LvRjyDQt9Cw0L/QuNGB0LguIgogCi0jOiBidWlsdGluL2FkZC5jOjI0OAorIzogYnVpbHRpbi9hZGQuYzoyNDkKIG1zZ2lkICJDb3VsZCBub3Qgd3JpdGUgcGF0Y2giCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCDQv9Cw0YLRhyIKIAotIzogYnVpbHRpbi9hZGQuYzoyNTEKKyM6IGJ1aWx0aW4vYWRkLmM6MjUyCiBtc2dpZCAiZWRpdGluZyBwYXRjaCBmYWlsZWQiCiBtc2dzdHIgItGB0LHQvtC5INC/0YDQuCDRgNC10LTQsNC60YLQuNGA0L7QstCw0L3QuNC4INC/0LDRgtGH0LAiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjU0CisjOiBidWlsdGluL2FkZC5jOjI1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc3RhdCAnJXMnIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBzdGF0INC00LvRjyDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjU2CisjOiBidWlsdGluL2FkZC5jOjI1NwogbXNnaWQgIkVtcHR5IHBhdGNoLiBBYm9ydGVkLiIKIG1zZ3N0ciAi0J/Rg9GB0YLQvtC5INC/0LDRgtGHLiDQntC/0LXRgNCw0YbQuNGPINC/0YDQtdGA0LLQsNC90LAuIgogCi0jOiBidWlsdGluL2FkZC5jOjI2MQorIzogYnVpbHRpbi9hZGQuYzoyNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICclcyciCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC40LzQtdC90LjRgtGMIMKrJXPCuyIKIAotIzogYnVpbHRpbi9hZGQuYzoyNjkKKyM6IGJ1aWx0aW4vYWRkLmM6MjcwCiBtc2dpZCAiVGhlIGZvbGxvd2luZyBwYXRocyBhcmUgaWdub3JlZCBieSBvbmUgb2YgeW91ciAuZ2l0aWdub3JlIGZpbGVzOlxuIgogbXNnc3RyICLQodC70LXQtNGD0Y7RidC40LUg0L/Rg9GC0Lgg0LjQs9C90L7RgNC40YDRg9GO0YLRgdGPINC+0LTQvdC40Lwg0LjQtyDQstCw0YjQuNGFINGE0LDQudC70L7QsiAuZ2l0aWdub3JlOlxuIgogCi0jOiBidWlsdGluL2FkZC5jOjI4OSBidWlsdGluL2NsZWFuLmM6OTA2IGJ1aWx0aW4vZmV0Y2guYzoxMzQgYnVpbHRpbi9tdi5jOjEyMwotIzogYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1NiBidWlsdGluL3B1bGwuYzoyMTIgYnVpbHRpbi9wdXNoLmM6NTU3Ci0jOiBidWlsdGluL3JlbW90ZS5jOjEzNDQgYnVpbHRpbi9ybS5jOjI0MCBidWlsdGluL3NlbmQtcGFjay5jOjE2NQorIzogYnVpbHRpbi9hZGQuYzoyOTAgYnVpbHRpbi9jbGVhbi5jOjkwOCBidWlsdGluL2ZldGNoLmM6MTM3IGJ1aWx0aW4vbXYuYzoxMjQKKyM6IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTYgYnVpbHRpbi9wdWxsLmM6MjIxIGJ1aWx0aW4vcHVzaC5jOjU2MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzQ1IGJ1aWx0aW4vcm0uYzoyNDEgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjUKIG1zZ2lkICJkcnkgcnVuIgogbXNnc3RyICLQv9GA0L7QsdC90YvQuSDQt9Cw0L/Rg9GB0LoiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjkyCisjOiBidWlsdGluL2FkZC5jOjI5MwogbXNnaWQgImludGVyYWN0aXZlIHBpY2tpbmciCiBtc2dzdHIgItC40L3RgtC10YDQsNC60YLQuNCy0L3Ri9C5INCy0YvQsdC+0YAiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjkzIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTQ0IGJ1aWx0aW4vcmVzZXQuYzozMDIKKyM6IGJ1aWx0aW4vYWRkLmM6Mjk0IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzc5IGJ1aWx0aW4vcmVzZXQuYzozMDYKIG1zZ2lkICJzZWxlY3QgaHVua3MgaW50ZXJhY3RpdmVseSIKIG1zZ3N0ciAi0LjQvdGC0LXRgNCw0LrRgtC40LLQvdGL0Lkg0LLRi9Cx0L7RgCDQsdC70L7QutC+0LIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk0Ci1tc2dpZCAiZWRpdCBjdXJyZW50IGRpZmYgYW5kIGFwcGx5IgotbXNnc3RyICLQvtGC0YDQtdC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0YLQtdC60YPRidC40Lkg0YTQsNC50Lsg0YDQsNC30LvQuNGH0LjQuSDQuCDQv9GA0LjQvNC10L3QuNGC0Ywg0LXQs9C+IgotCiAjOiBidWlsdGluL2FkZC5jOjI5NQorbXNnaWQgImVkaXQgY3VycmVudCBkaWZmIGFuZCBhcHBseSIKK21zZ3N0ciAi0L7RgtGA0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMINGC0LXQutGD0YnQuNC5INGE0LDQudC7INGB0L/QuNGB0LrQsCDQuNC30LzQtdC90LXQvdC40Lkg0Lgg0L/RgNC40LzQtdC90LjRgtGMINC10LPQviIKKworIzogYnVpbHRpbi9hZGQuYzoyOTYKIG1zZ2lkICJhbGxvdyBhZGRpbmcgb3RoZXJ3aXNlIGlnbm9yZWQgZmlsZXMiCiBtc2dzdHIgItGA0LDQt9GA0LXRiNC40YLRjCDQtNC+0LHQsNCy0LvQtdC90LjQtSDQuNCz0L3QvtGA0LjRgNGD0LXQvNGL0YUg0LjQvdCw0YfQtSDRhNCw0LnQu9C+0LIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk2CisjOiBidWlsdGluL2FkZC5jOjI5NwogbXNnaWQgInVwZGF0ZSB0cmFja2VkIGZpbGVzIgogbXNnc3RyICLQvtCx0L3QvtCy0LjRgtGMINC+0YLRgdC70LXQttC40LLQsNC10LzRi9C1INGE0LDQudC70YsiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk3CisjOiBidWlsdGluL2FkZC5jOjI5OAogbXNnaWQgInJlbm9ybWFsaXplIEVPTCBvZiB0cmFja2VkIGZpbGVzIChpbXBsaWVzIC11KSIKIG1zZ3N0ciAi0L/QtdGA0LXQvdC+0YDQvNCw0LvQuNC30LjRgNC+0LLQsNGC0Ywg0LrQvtC90YbRiyDRgdGC0YDQvtC6IChFT0wpINC+0YLRgdC70LXQttC40LLQsNC10LzRi9GFINGE0LDQudC70L7QsiAo0L/QvtC00YDQsNC30YPQvNC10LLQsNC10YIgLXUpIgogCi0jOiBidWlsdGluL2FkZC5jOjI5OAorIzogYnVpbHRpbi9hZGQuYzoyOTkKIG1zZ2lkICJyZWNvcmQgb25seSB0aGUgZmFjdCB0aGF0IHRoZSBwYXRoIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCiBtc2dzdHIgItC30LDQv9C40YHQsNGC0Ywg0YLQvtC70YzQutC+INGE0LDQutGCLCDRh9GC0L4g0L/Rg9GC0Ywg0LHRg9C00LXRgiDQtNC+0LHQsNCy0LvQtdC9INC/0L7Qt9C20LUiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk5CisjOiBidWlsdGluL2FkZC5jOjMwMAogbXNnaWQgImFkZCBjaGFuZ2VzIGZyb20gYWxsIHRyYWNrZWQgYW5kIHVudHJhY2tlZCBmaWxlcyIKIG1zZ3N0ciAi0LTQvtCx0LDQstC40YLRjCDQuNC30LzQtdC90LXQvdC40Y8g0LjQtyDQstGB0LXRhSDQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvRhSDQuCDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0YUg0YTQsNC50LvQvtCyIgogCi0jOiBidWlsdGluL2FkZC5jOjMwMgorIzogYnVpbHRpbi9hZGQuYzozMDMKIG1zZ2lkICJpZ25vcmUgcGF0aHMgcmVtb3ZlZCBpbiB0aGUgd29ya2luZyB0cmVlIChzYW1lIGFzIC0tbm8tYWxsKSIKIG1zZ3N0ciAi0LjQs9C90L7RgNC40YDQvtCy0LDRgtGMINC/0YPRgtC4INGD0LTQsNC70LXQvdC90YvQtSDQuNC3INGA0LDQsdC+0YfQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsCAo0YLQvtC20LUsINGH0YLQviDQuCAtLW5vLWFsbCkiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzA0CisjOiBidWlsdGluL2FkZC5jOjMwNQogbXNnaWQgImRvbid0IGFkZCwgb25seSByZWZyZXNoIHRoZSBpbmRleCIKIG1zZ3N0ciAi0L3QtSDQtNC+0LHQsNCy0LvRj9GC0YwsINGC0L7Qu9GM0LrQviDQvtCx0L3QvtCy0LjRgtGMINC40L3QtNC10LrRgSIKIAotIzogYnVpbHRpbi9hZGQuYzozMDUKKyM6IGJ1aWx0aW4vYWRkLmM6MzA2CiBtc2dpZCAianVzdCBza2lwIGZpbGVzIHdoaWNoIGNhbm5vdCBiZSBhZGRlZCBiZWNhdXNlIG9mIGVycm9ycyIKIG1zZ3N0ciAi0L/RgNC+0L/Rg9GB0LrQsNGC0Ywg0YTQsNC50LvRiywg0LrQvtGC0L7RgNGL0LUg0L3QtSDQvNC+0LPRg9GCINCx0YvRgtGMINC00L7QsdCw0LLQu9C10L3RiyDQuNC3LdC30LAg0L7RiNC40LHQvtC6IgogCi0jOiBidWlsdGluL2FkZC5jOjMwNgorIzogYnVpbHRpbi9hZGQuYzozMDcKIG1zZ2lkICJjaGVjayBpZiAtIGV2ZW4gbWlzc2luZyAtIGZpbGVzIGFyZSBpZ25vcmVkIGluIGRyeSBydW4iCiBtc2dzdHIgItGD0LTQvtGB0YLQvtCy0LXRgNC40YLRjNGB0Y8sINGH0YLQviDQtNCw0LbQtSDQvdC10LTQvtGB0YLQsNGO0YnQuNC1INGE0LDQudC70Ysg0LHRg9C00YPRgiDQv9GA0L7QuNCz0L3QvtGA0LjRgNC+0LLQsNC90Ysg0L/RgNC4ICDQv9GA0L7QsdC90L7QvCDQt9Cw0L/Rg9GB0LrQtSIKIAotIzogYnVpbHRpbi9hZGQuYzozMDggYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzMKKyM6IGJ1aWx0aW4vYWRkLmM6MzA5IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwMQogbXNnaWQgIm92ZXJyaWRlIHRoZSBleGVjdXRhYmxlIGJpdCBvZiB0aGUgbGlzdGVkIGZpbGVzIgogbXNnc3RyICLQv9C10YDQtdC+0L/RgNC10LTQtdC70LjRgtGMINCx0LjRgiDQstGL0L/QvtC70L3QtdC90LjRjyDQvdCwINGD0LrQsNC30LDQvdC90YvRhSDRhNCw0LnQu9Cw0YUiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzEwCisjOiBidWlsdGluL2FkZC5jOjMxMQogbXNnaWQgIndhcm4gd2hlbiBhZGRpbmcgYW4gZW1iZWRkZWQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0L/RgNC10LTRg9C/0YDQtdC20LTQsNGC0Ywg0L/RgNC4INC00L7QsdCw0LLQu9C10L3QuNC4INCy0YHRgtGA0L7QtdC90L3QvtCz0L4gZ2l0INGA0LXQv9C+0LfQuNGC0L7RgNC40Y8iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzI1CisjOiBidWlsdGluL2FkZC5jOjMyNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91J3ZlIGFkZGVkIGFub3RoZXIgZ2l0IHJlcG9zaXRvcnkgaW5zaWRlIHlvdXIgY3VycmVudCByZXBvc2l0b3J5LlxuIgpAQCAtNjMzOCwxMiArNzg5MCwxMiBAQAogIlNlZSBcImdpdCBoZWxwIHN1Ym1vZHVsZVwiIGZvciBtb3JlIGluZm9ybWF0aW9uLiIKIG1zZ3N0ciAi0JLRiyDQtNC+0LHQsNCy0LjQu9C4INC00YDRg9Cz0L7QuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5IGdpdCDQstC90YPRgtGA0Lgg0YLQtdC60YPRidC10LPQviDRgNC10L/QvtC30LjRgtC+0YDQuNGPXG7QmtC70L7QvdGLINCy0L3QtdGI0L3QtdCz0L4g0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyDQvdC1INCx0YPQtNGD0YIg0YHQvtC00LXRgNC20LDRgtGMINCy0L3Rg9GC0YDQtdC90L3QuNC5XG7RgNC10L/QvtC30LjRgtC+0YDQuNC5INC4INC90LUg0LHRg9C00YPRgiDQt9C90LDRgtGMINC60LDQuiDQtdCz0L4g0L/QvtC70YPRh9C40YLRjC5cbtCV0YHQu9C4INCy0Ysg0YXQvtGC0LXQu9C4INC00L7QsdCw0LLQuNGC0Ywg0L/QvtC00LzQvtC00YPQu9GMLCDRgtC+INC30LDQv9GD0YHRgtC40YLQtTpcblxuXHRnaXQgc3VibW9kdWxlIGFkZCA8dXJsPiAlc1xuXG7QldGB0LvQuCDQsdGLINC00L7QsdCw0LLQuNC70Lgg0Y3RgtC+0YIg0L/Rg9GC0Ywg0L/QviDQvtGI0LjQsdC60LUsINGC0L4g0LLRiyDQvNC+0LbQtdGC0LUg0YPQtNCw0LvQuNGC0Ywg0LXQs9C+XG7QuNC3INC40L3QtNC10LrRgdCwINGBINC/0L7QvNC+0YnRjNGOOlxuXG5cdGdpdCBybSAtLWNhY2hlZCAlc1xuXG7QlNC70Y8g0LTQvtC/0L7Qu9C90LjRgtC10LvRjNC90L7QuSDQuNC90YTQvtGA0LzQsNGG0LjQuCDRgdC80L7RgtGA0LjRgtC1IMKrZ2l0IGhlbHAgc3VibW9kdWxlwrsuIgogCi0jOiBidWlsdGluL2FkZC5jOjM1MworIzogYnVpbHRpbi9hZGQuYzozNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkaW5nIGVtYmVkZGVkIGdpdCByZXBvc2l0b3J5OiAlcyIKIG1zZ3N0ciAi0LTQvtCx0LDQstC70LXQvdC40LUg0LLRgdGC0YDQvtC10L3QvdC+0LPQviBnaXQg0YDQtdC/0L7Qt9C40YLQvtGA0LjRjzogJXMiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzcxCisjOiBidWlsdGluL2FkZC5jOjM3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCB0aGVtLlxuIgogbXNnc3RyICLQmNGB0L/QvtC70YzQt9GD0LnRgtC1IC1mLCDQtdGB0LvQuCDQstGLINC00LXQudGB0YLQstC40YLQtdC70YzQvdC+INGF0L7RgtC40YLQtSDQtNC+0LHQsNCy0LjRgtGMINC40YUuXG4iCkBAIC02MzUyLDM4MyArNzkwNCwzODIgQEAKIG1zZ2lkICJhZGRpbmcgZmlsZXMgZmFpbGVkIgogbXNnc3RyICLQvtGI0LjQsdC60LAg0L/RgNC4INC00L7QsdCw0LLQu9C10L3QuNC4INGE0LDQudC70L7QsiIKIAotIzogYnVpbHRpbi9hZGQuYzo0MTcKKyM6IGJ1aWx0aW4vYWRkLmM6NDE5CiBtc2dpZCAiLUEgYW5kIC11IGFyZSBtdXR1YWxseSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi1BINC4IC11INC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+IgogCi0jOiBidWlsdGluL2FkZC5jOjQyNAorIzogYnVpbHRpbi9hZGQuYzo0MjYKIG1zZ2lkICJPcHRpb24gLS1pZ25vcmUtbWlzc2luZyBjYW4gb25seSBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggLS1kcnktcnVuIgogbXNnc3RyICLQntC/0YbQuNGPIC0taWdub3JlLW1pc3Npbmcg0LzQvtC20LXRgiDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0YzRgdGPINGC0L7Qu9GM0LrQviDQstC80LXRgdGC0LUg0YEgLS1kcnktcnVuIgogCi0jOiBidWlsdGluL2FkZC5jOjQyOAorIzogYnVpbHRpbi9hZGQuYzo0MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiLS1jaG1vZCBwYXJhbSAnJXMnIG11c3QgYmUgZWl0aGVyIC14IG9yICt4IgogbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAIC0tY2htb2Qgwqslc8K7INC00L7Qu9C20LXQvSDQsdGL0YLRjCAteCDQuNC70LggK3giCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDQzCisjOiBidWlsdGluL2FkZC5jOjQ0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3RoaW5nIHNwZWNpZmllZCwgbm90aGluZyBhZGRlZC5cbiIKIG1zZ3N0ciAi0J3QuNGH0LXQs9C+INC90LUg0YPQutCw0LfQsNC90L4sINC90LjRh9C10LPQviDQvdC1INC00L7QsdCw0LLQu9C10L3Qvi5cbiIKIAotIzogYnVpbHRpbi9hZGQuYzo0NDQKKyM6IGJ1aWx0aW4vYWRkLmM6NDQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk1heWJlIHlvdSB3YW50ZWQgdG8gc2F5ICdnaXQgYWRkIC4nP1xuIgogbXNnc3RyICLQktC+0LfQvNC+0LbQvdC+LCDQstGLINC40LzQtdC70Lgg0LIg0LLQuNC00YMgwqtnaXQgYWRkIC7Cuz9cbiIKIAotIzogYnVpbHRpbi9hZGQuYzo0NDkgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjI4MgotIzogYnVpbHRpbi9jaGVja291dC5jOjQ4NSBidWlsdGluL2NsZWFuLmM6OTUzIGJ1aWx0aW4vY29tbWl0LmM6MzM4Ci0jOiBidWlsdGluL2RpZmYtdHJlZS5jOjExNSBidWlsdGluL2dyZXAuYzo0OTIgYnVpbHRpbi9tdi5jOjE0NAotIzogYnVpbHRpbi9yZXNldC5jOjI0MSBidWlsdGluL3JtLmM6MjcwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzozMjkKLW1zZ2lkICJpbmRleCBmaWxlIGNvcnJ1cHQiCi1tc2dzdHIgItGE0LDQudC7INC40L3QtNC10LrRgdCwINC/0L7QstGA0LXQttC00LXQvSIKLQotIzogYnVpbHRpbi9hbS5jOjQxNQorIzogYnVpbHRpbi9hbS5jOjM0OAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBhdXRob3Igc2NyaXB0IgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9C+0LHRgNCw0YLRjCDRgdGG0LXQvdCw0YDQuNC5INCw0LLRgtC+0YDRgdGC0LLQsCIKIAotIzogYnVpbHRpbi9hbS5jOjQ5OQorIzogYnVpbHRpbi9hbS5jOjQzMgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIHdhcyBkZWxldGVkIGJ5IHRoZSBhcHBseXBhdGNoLW1zZyBob29rIgogbXNnc3RyICLCqyVzwrsg0LHRi9C7INGD0LTQsNC70LXQvSDQv9C10YDQtdGF0LLQsNGC0YfQuNC60L7QvCBhcHBseXBhdGNoLW1zZyIKIAotIzogYnVpbHRpbi9hbS5jOjU0MAorIzogYnVpbHRpbi9hbS5jOjQ3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJNYWxmb3JtZWQgaW5wdXQgbGluZTogJyVzJy4iCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvRjNC90LDRjyDRgdGC0YDQvtC60LAg0LLQstC+0LTQsDogwqslc8K7LiIKIAotIzogYnVpbHRpbi9hbS5jOjU3NworIzogYnVpbHRpbi9hbS5jOjUxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY29weSBub3RlcyBmcm9tICclcycgdG8gJyVzJyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDRgdC60L7Qv9C40YDQvtCy0LDRgtGMINC30LDQvNC10YLQutGDINC40Lcgwqslc8K7INCyIMKrJXPCuyIKIAotIzogYnVpbHRpbi9hbS5jOjYwMworIzogYnVpbHRpbi9hbS5jOjUzOAogbXNnaWQgImZzZWVrIGZhaWxlZCIKIG1zZ3N0ciAi0YHQsdC+0Lkg0L/RgNC4INCy0YvQv9C+0LvQvdC10L3QuNC4IGZzZWVrIgogCi0jOiBidWlsdGluL2FtLmM6NzkxCisjOiBidWlsdGluL2FtLmM6NzI2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBwYXRjaCAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9C+0LHRgNCw0YLRjCDQv9Cw0YLRhyDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vYW0uYzo4NTYKKyM6IGJ1aWx0aW4vYW0uYzo3OTEKIG1zZ2lkICJPbmx5IG9uZSBTdEdJVCBwYXRjaCBzZXJpZXMgY2FuIGJlIGFwcGxpZWQgYXQgb25jZSIKIG1zZ3N0ciAi0KLQvtC70YzQutC+INGB0LXRgNC40Y8g0L/QsNGC0YfQtdC5IFN0R0lUINC80L7QttC10YIg0LHRi9GC0Ywg0L/RgNC40LzQtdC90LXQvdCwINC30LAg0YDQsNC3IgogCi0jOiBidWlsdGluL2FtLmM6OTA0CisjOiBidWlsdGluL2FtLmM6ODM5CiBtc2dpZCAiaW52YWxpZCB0aW1lc3RhbXAiCiBtc2dzdHIgItC90LXQtNC+0L/Rg9GB0YLQuNC80LDRjyDQvNC10YLQutCwINC00LDRgtGLL9Cy0YDQtdC80LXQvdC4IgogCi0jOiBidWlsdGluL2FtLmM6OTA5IGJ1aWx0aW4vYW0uYzo5MjEKKyM6IGJ1aWx0aW4vYW0uYzo4NDQgYnVpbHRpbi9hbS5jOjg1NgogbXNnaWQgImludmFsaWQgRGF0ZSBsaW5lIgogbXNnc3RyICLQvdC10LTQvtC/0YPRgdGC0LjQvNCw0Y8g0YHRgtGA0L7QutCwINC00LDRgtGLIgogCi0jOiBidWlsdGluL2FtLmM6OTE2CisjOiBidWlsdGluL2FtLmM6ODUxCiBtc2dpZCAiaW52YWxpZCB0aW1lem9uZSBvZmZzZXQiCiBtc2dzdHIgItC90LXQtNC+0L/Rg9GB0YLQuNC80L7QtSDRgdC80LXRidC10L3QuNC1INGH0LDRgdC+0LLQvtCz0L4g0L/QvtGP0YHQsCIKIAotIzogYnVpbHRpbi9hbS5jOjEwMDkKKyM6IGJ1aWx0aW4vYW0uYzo5NDQKIG1zZ2lkICJQYXRjaCBmb3JtYXQgZGV0ZWN0aW9uIGZhaWxlZC4iCiBtc2dzdHIgItCh0LHQvtC5INC+0L/RgNC10LTQtdC70LXQvdC40Y8g0YTQvtGA0LzQsNGC0LAg0L/QsNGC0YfQsC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMDE0IGJ1aWx0aW4vY2xvbmUuYzo0MDgKKyM6IGJ1aWx0aW4vYW0uYzo5NDkgYnVpbHRpbi9jbG9uZS5jOjQwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINC60LDRgtCw0LvQvtCzIMKrJXPCuyIKIAotIzogYnVpbHRpbi9hbS5jOjEwMTkKKyM6IGJ1aWx0aW4vYW0uYzo5NTQKIG1zZ2lkICJGYWlsZWQgdG8gc3BsaXQgcGF0Y2hlcy4iCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YDQsNC30LTQtdC70LjRgtGMINC/0LDRgtGH0Lgg0L3QsCDRh9Cw0YHRgtC4LiIKIAotIzogYnVpbHRpbi9hbS5jOjExNDkgYnVpbHRpbi9jb21taXQuYzozNjQKKyM6IGJ1aWx0aW4vYW0uYzoxMDg0IGJ1aWx0aW4vY29tbWl0LmM6MzcxCiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIGluZGV4IGZpbGUiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCDQuNC90LTQtdC60YEiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMTYzCisjOiBidWlsdGluL2FtLmM6MTA5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJXaGVuIHlvdSBoYXZlIHJlc29sdmVkIHRoaXMgcHJvYmxlbSwgcnVuIFwiJXMgLS1jb250aW51ZVwiLiIKIG1zZ3N0ciAi0JrQvtCz0LTQsCDQstGLINGD0YHRgtGA0LDQvdC40YLQtSDRjdGC0YMg0L/RgNC+0LHQu9C10LzRgywg0LfQsNC/0YPRgdGC0LjRgtC1IMKrJXMgLS1jb250aW51ZcK7LiIKIAotIzogYnVpbHRpbi9hbS5jOjExNjQKKyM6IGJ1aWx0aW4vYW0uYzoxMDk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIklmIHlvdSBwcmVmZXIgdG8gc2tpcCB0aGlzIHBhdGNoLCBydW4gXCIlcyAtLXNraXBcIiBpbnN0ZWFkLiIKIG1zZ3N0ciAi0JXRgdC70Lgg0LLRiyDRhdC+0YLQuNGC0LUg0L/RgNC+0L/Rg9GB0YLQuNGC0Ywg0Y3RgtC+0YIg0L/QsNGC0YcsINGC0L4g0LfQsNC/0YPRgdGC0LjRgtC1IMKrJXMgLS1za2lwwrsuIgogCi0jOiBidWlsdGluL2FtLmM6MTE2NQorIzogYnVpbHRpbi9hbS5jOjExMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiVG8gcmVzdG9yZSB0aGUgb3JpZ2luYWwgYnJhbmNoIGFuZCBzdG9wIHBhdGNoaW5nLCBydW4gXCIlcyAtLWFib3J0XCIuIgogbXNnc3RyICLQp9GC0L7QsdGLINCy0LXRgNC90YPRgtGM0YHRjyDQvdCwINC/0YDQtdC00YvQtNGD0YnRg9GOINCy0LXRgtC60YMg0Lgg0L7RgdGC0LDQvdC+0LLQuNGC0Ywg0L/RgNC40LzQtdC90LXQvdC40LUg0LjQt9C80LXQvdC10L3QuNC5LCDQt9Cw0L/Rg9GB0YLQuNGC0LUgwqslcyAtLWFib3J0wrsuIgogCi0jOiBidWlsdGluL2FtLmM6MTI3MgorIzogYnVpbHRpbi9hbS5jOjExODMKK21zZ2lkICIiCisiUGF0Y2ggc2VudCB3aXRoIGZvcm1hdD1mbG93ZWQ7IHNwYWNlIGF0IHRoZSBlbmQgb2YgbGluZXMgbWlnaHQgYmUgbG9zdC4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9hbS5jOjEyMTEKIG1zZ2lkICJQYXRjaCBpcyBlbXB0eS4iCiBtc2dzdHIgItCf0LDRgtGHINC/0YPRgdGC0L7QuS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMzM4CisjOiBidWlsdGluL2FtLmM6MTI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGlkZW50IGxpbmU6ICUuKnMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90LDRjyDRgdGC0YDQvtC60LAg0LjQtNC10L3RgtC40YTQuNC60LDRhtC40Lg6ICUuKnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMzYwCisjOiBidWlsdGluL2FtLmM6MTI5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0ICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9C+0LHRgNCw0YLRjCDQutC+0LzQvNC40YIgJXMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTU2CisjOiBidWlsdGluL2FtLmM6MTQ5NQogbXNnaWQgIlJlcG9zaXRvcnkgbGFja3MgbmVjZXNzYXJ5IGJsb2JzIHRvIGZhbGwgYmFjayBvbiAzLXdheSBtZXJnZS4iCiBtc2dzdHIgItCSINGA0LXQv9C+0LfQuNGC0L7RgNC40Lgg0L7RgtGB0YPRgtGB0YLQstGD0Y7RgiDQtNCy0L7QuNGH0L3Ri9C1INC+0LHRitC10LrRgtGLLCDQvdC10L7QsdGF0L7QtNC40LzRi9C1INC00LvRjyDQvtGC0LrQsNGC0LAg0Log0YLRgNC10YXRhdC+0LTQvtCy0L7QvNGDINGB0LvQuNGP0L3QuNGOLiIKIAotIzogYnVpbHRpbi9hbS5jOjE1NTgKKyM6IGJ1aWx0aW4vYW0uYzoxNDk3CiBtc2dpZCAiVXNpbmcgaW5kZXggaW5mbyB0byByZWNvbnN0cnVjdCBhIGJhc2UgdHJlZS4uLiIKIG1zZ3N0ciAi0JjRgdC/0L7Qu9GM0LfRg9GOINC40L3QtNC10LrRgSDQtNC70Y8g0YDQtdC60L7QvdGB0YLRgNGD0LrRhtC40Lgg0LHQsNC30L7QstC+0LPQviDQtNC10YDQtdCy0LDigKYiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTc3CisjOiBidWlsdGluL2FtLmM6MTUxNgogbXNnaWQgIiIKICJEaWQgeW91IGhhbmQgZWRpdCB5b3VyIHBhdGNoP1xuIgogIkl0IGRvZXMgbm90IGFwcGx5IHRvIGJsb2JzIHJlY29yZGVkIGluIGl0cyBpbmRleC4iCiBtc2dzdHIgItCS0Ysg0LLRgNGD0YfQvdGD0Y4g0LjQt9C80LXQvdGP0LvQuCDQv9Cw0YLRhz9cbtCe0L0g0L3QtSDQvdCw0LrQu9Cw0LTRi9Cy0LDQtdGC0YHRjyDQsdC10Lcg0L7RiNC40LHQvtC6INC90LAg0LTQstC+0LjRh9C90YvQtSDQvtCx0YrQtdC60YLRiywg0LfQsNC/0LjRgdCw0L3QvdGL0LUg0LIg0LXQs9C+INC30LDQs9C+0LvQvtCy0LrQtS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTgzCisjOiBidWlsdGluL2FtLmM6MTUyMgogbXNnaWQgIkZhbGxpbmcgYmFjayB0byBwYXRjaGluZyBiYXNlIGFuZCAzLXdheSBtZXJnZS4uLiIKIG1zZ3N0ciAi0J7RgtC60LDRgiDQuiDQv9GA0LjQvNC10L3QtdC90LjRjiDQuNC30LzQtdC90LXQvdC40Lkg0Log0LHQsNC30L7QstC+0LzRgyDQutC+0LzQvNC40YLRgyDRgSDQv9C+0LzQvtGJ0YzRjiDRgtGA0LXRhdGF0L7QtNC+0LLQvtCz0L4g0YHQu9C40Y/QvdC40Y/igKYiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNjA4CisjOiBidWlsdGluL2FtLmM6MTU0OAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBpbiB0aGUgY2hhbmdlcy4iCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YHQu9C40YLRjCDQuNC30LzQtdC90LXQvdC40Y8uIgogCi0jOiBidWlsdGluL2FtLmM6MTY0MAorIzogYnVpbHRpbi9hbS5jOjE1ODAKIG1zZ2lkICJhcHBseWluZyB0byBhbiBlbXB0eSBoaXN0b3J5IgogbXNnc3RyICLQv9GA0LjQvNC10L3QtdC90LjQtSDQuiDQv9GD0YHRgtC+0Lkg0LjRgdGC0L7RgNC40LgiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNjg2IGJ1aWx0aW4vYW0uYzoxNjkwCisjOiBidWlsdGluL2FtLmM6MTYyNyBidWlsdGluL2FtLmM6MTYzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVzdW1lOiAlcyBkb2VzIG5vdCBleGlzdC4iCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQv9GA0L7QtNC+0LvQttC90LjRgtGMOiAlcyDQvdC1INGB0YPRidC10YHRgtCy0YPQtdGCICIKIAotIzogYnVpbHRpbi9hbS5jOjE3MDYKKyM6IGJ1aWx0aW4vYW0uYzoxNjQ3CiBtc2dpZCAiY2Fubm90IGJlIGludGVyYWN0aXZlIHdpdGhvdXQgc3RkaW4gY29ubmVjdGVkIHRvIGEgdGVybWluYWwuIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQuNC90YLQtdGA0LDQutGC0LjQstC90L7QtSDQv9C+0LLQtdC00LXQvdC40LUsINCx0LXQtyBzdGRpbiDQv9C+0LTQutC70Y7Rh9C10L3QvdC+0LPQviDQuiDRgtC10YDQvNC40L3QsNC70YMuIgogCi0jOiBidWlsdGluL2FtLmM6MTcxMQorIzogYnVpbHRpbi9hbS5jOjE2NTIKIG1zZ2lkICJDb21taXQgQm9keSBpczoiCiBtc2dzdHIgItCi0LXQu9C+INC60L7QvNC80LjRgtCwOiIKIAogIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFt5XSwgW25dLCBbZV0sIFt2XSBhbmQgW2FdCiAjLiBpbiB5b3VyIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2gKICMuIGlucHV0IGF0IHRoaXMgcG9pbnQuCi0jOiBidWlsdGluL2FtLmM6MTcyMQorIzogYnVpbHRpbi9hbS5jOjE2NjIKIG1zZ2lkICJBcHBseT8gW3ldZXMvW25dby9bZV1kaXQvW3ZdaWV3IHBhdGNoL1thXWNjZXB0IGFsbDogIgogbXNnc3RyICLQn9GA0LjQvNC10L3QuNGC0Yw/IFt5XSAtINC00LAvW25dIC0g0L3QtdGCL1tlXSAtINGA0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGML1t2XSAtINC/0YDQvtGB0LzQvtGC0YDQtdGC0Ywg0L/QsNGC0YcvW2FdIC0g0L/RgNC40LzQtdC90LjRgtGMINCy0YHRkTogIgogCi0jOiBidWlsdGluL2FtLmM6MTc3MQorIzogYnVpbHRpbi9hbS5jOjE3MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGlydHkgaW5kZXg6IGNhbm5vdCBhcHBseSBwYXRjaGVzIChkaXJ0eTogJXMpIgotbXNnc3RyICLQmNC90LTQtdC60YEg0L3QtSDQv9GD0YHRgtC+0Lk6INC90LXQu9GM0LfRjyDQv9GA0LjQvNC10L3Rj9GC0Ywg0L/QsNGC0YfQuCAo0LIg0LjQvdC00LXQutGB0LU6ICVzKSIKK21zZ3N0ciAi0JjQvdC00LXQutGBINC40LfQvNC10L3RkdC9OiDQvdC10LvRjNC30Y8g0L/RgNC40LzQtdC90Y/RgtGMINC/0LDRgtGH0LggKNC40LfQvNC10L3QtdC90L46ICVzKSIKIAotIzogYnVpbHRpbi9hbS5jOjE4MTEgYnVpbHRpbi9hbS5jOjE4NzkKKyM6IGJ1aWx0aW4vYW0uYzoxNzUyIGJ1aWx0aW4vYW0uYzoxODIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGx5aW5nOiAlLipzIgogbXNnc3RyICLQn9GA0LjQvNC10L3QtdC90LjQtTogJS4qcyIKIAotIzogYnVpbHRpbi9hbS5jOjE4MjgKKyM6IGJ1aWx0aW4vYW0uYzoxNzY5CiBtc2dpZCAiTm8gY2hhbmdlcyAtLSBQYXRjaCBhbHJlYWR5IGFwcGxpZWQuIgogbXNnc3RyICLQndC10YIg0LjQt9C80LXQvdC10L3QuNC5IOKAlCDQn9Cw0YLRhyDRg9C20LUg0L/RgNC40LzQtdC90LXQvS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxODM0CisjOiBidWlsdGluL2FtLmM6MTc3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJQYXRjaCBmYWlsZWQgYXQgJXMgJS4qcyIKIG1zZ3N0ciAi0J7RiNC40LHQutCwINC/0YDQuNC80LXQvdC10L3QuNGPINC40LfQvNC10L3QtdC90LjQuSDQvdCwICVzICUuKnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxODM4CisjOiBidWlsdGluL2FtLmM6MTc3OQogbXNnaWQgIlVzZSAnZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoJyB0byBzZWUgdGhlIGZhaWxlZCBwYXRjaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2FtLmM6MTg4MgorIzogYnVpbHRpbi9hbS5jOjE4MjMKIG1zZ2lkICIiCiAiTm8gY2hhbmdlcyAtIGRpZCB5b3UgZm9yZ2V0IHRvIHVzZSAnZ2l0IGFkZCc/XG4iCiAiSWYgdGhlcmUgaXMgbm90aGluZyBsZWZ0IHRvIHN0YWdlLCBjaGFuY2VzIGFyZSB0aGF0IHNvbWV0aGluZyBlbHNlXG4iCiAiYWxyZWFkeSBpbnRyb2R1Y2VkIHRoZSBzYW1lIGNoYW5nZXM7IHlvdSBtaWdodCB3YW50IHRvIHNraXAgdGhpcyBwYXRjaC4iCiBtc2dzdHIgItCd0LXRgiDQuNC30LzQtdC90LXQvdC40Lkg4oCUINCy0L7Qt9C80L7QttC90L4sINCy0Ysg0LfQsNCx0YvQu9C4INCy0YvQt9Cy0LDRgtGMIMKrZ2l0IGFkZMK7P1xu0JXRgdC70Lgg0L3QuNGH0LXQs9C+INC90LUg0L7RgdGC0LDQu9C+0YHRjCDQtNC70Y8g0LjQvdC00LXQutGB0LDRhtC40LgsINGC0L4sINGB0LrQvtGA0LXQtSDQstGB0LXQs9C+LCDRh9GC0L4t0YLQviDQtNGA0YPQs9C+0LUg0YPQttC1INGB0LTQtdC70LDQu9C+INGC0LUg0LbQtSDQuNC30LzQtdC90LXQvdC40Y87INCy0L7Qt9C80L7QttC90L4sINCy0LDQvCDRgdC70LXQtNGD0LXRgiDQv9GA0L7Qv9GD0YHRgtC40YLRjCDRjdGC0L7RgiDQv9Cw0YLRhy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxODg5CisjOiBidWlsdGluL2FtLmM6MTgzMAogbXNnaWQgIiIKICJZb3Ugc3RpbGwgaGF2ZSB1bm1lcmdlZCBwYXRocyBpbiB5b3VyIGluZGV4LlxuIgogIllvdSBzaG91bGQgJ2dpdCBhZGQnIGVhY2ggZmlsZSB3aXRoIHJlc29sdmVkIGNvbmZsaWN0cyB0byBtYXJrIHRoZW0gYXMgc3VjaC5cbiIKICJZb3UgbWlnaHQgcnVuIGBnaXQgcm1gIG9uIGEgZmlsZSB0byBhY2NlcHQgXCJkZWxldGVkIGJ5IHRoZW1cIiBmb3IgaXQuIgogbXNnc3RyICLQoyDQstCw0YEg0LXRgdGC0Ywg0L3QtSDRgdC70LjRgtGL0LUg0L/Rg9GC0Lgg0LIg0LjQvdC00LXQutGB0LUuXG7QktGLINC00L7Qu9C20L3RiyDQstGL0L/QvtC70L3QuNGC0YwgwqtnaXQgYWRkwrsg0LTQu9GPINC60LDQttC00L7Qs9C+INGE0LDQudC70LAg0YEg0YDQsNC30YDQtdGI0LXQvdC90YvQvNC4INC60L7QvdGE0LvQuNC60YLQsNC80LgsINGH0YLQvtCx0Ysg0L/QvtC80LXRgtC40YLRjCDQuNGFINGC0LDQutC+0LLRi9C80LguXG7QktGLINC80L7QttC10YLQtSDQt9Cw0L/Rg9GB0YLQuNGC0YwgwqtnaXQgcm3CuyDRgSDQuNC80LXQvdC10Lwg0YTQsNC50LvQsCwg0YfRgtC+0LHRiyDQv9C+0LzQtdGC0LjRgtGMINC10LPQviDQutCw0LogwqvRg9C00LDQu9C10L3QviDQuNC80LjCuy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxOTk2IGJ1aWx0aW4vYW0uYzoyMDAwIGJ1aWx0aW4vYW0uYzoyMDEyIGJ1aWx0aW4vcmVzZXQuYzozMjQKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMzIKKyM6IGJ1aWx0aW4vYW0uYzoxOTM3IGJ1aWx0aW4vYW0uYzoxOTQxIGJ1aWx0aW4vYW0uYzoxOTUzIGJ1aWx0aW4vcmVzZXQuYzozMjkKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnLiIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0LfQvtCx0YDQsNGC0Ywg0L7QsdGK0LXQutGCIMKrJXPCuy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMDQ4CisjOiBidWlsdGluL2FtLmM6MTk4OQogbXNnaWQgImZhaWxlZCB0byBjbGVhbiBpbmRleCIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGH0LjRgdGC0LjRgtGMINC40L3QtNC10LrRgSIKIAotIzogYnVpbHRpbi9hbS5jOjIwODMKKyM6IGJ1aWx0aW4vYW0uYzoyMDMzCiBtc2dpZCAiIgogIllvdSBzZWVtIHRvIGhhdmUgbW92ZWQgSEVBRCBzaW5jZSB0aGUgbGFzdCAnYW0nIGZhaWx1cmUuXG4iCiAiTm90IHJld2luZGluZyB0byBPUklHX0hFQUQiCiBtc2dzdHIgItCf0L7RhdC+0LbQtSwg0YfRgtC+INCy0Ysg0L/QtdGA0LXQvNC10YHRgtC40LvQuCBIRUFEINGBINC80L7QvNC10L3RgtCwINC/0L7RgdC70LXQtNC90LXQuSDQvtGI0LjQsdC60Lgg0LLRi9C/0L7Qu9C90LXQvdC40Y8gwqthbcK7Llxu0J/QtdGA0LXQvNC+0YLQutCwINC90LAgT1JJR19IRUFEINC90LUg0LLRi9C/0L7Qu9C90Y/QtdGC0YHRjyIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzQKKyM6IGJ1aWx0aW4vYW0uYzoyMTMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yIC0tcGF0Y2gtZm9ybWF0OiAlcyIKIG1zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9GM0L3QvtC1INC30L3QsNGH0LXQvdC40LUg0LTQu9GPIC0tcGF0Y2gtZm9ybWF0OiAlcyIKIAotIzogYnVpbHRpbi9hbS5jOjIyMTAKKyM6IGJ1aWx0aW4vYW0uYzoyMTY2CiBtc2dpZCAiZ2l0IGFtIFs8b3B0aW9ucz5dIFsoPG1ib3g+IHwgPE1haWxkaXI+KS4uLl0iCiBtc2dzdHIgImdpdCBhbSBbPNC+0L/RhtC40Lg+XSBbKDxtYm94PiB8IDxNYWlsZGlyPinigKZdIgogCi0jOiBidWlsdGluL2FtLmM6MjIxMQorIzogYnVpbHRpbi9hbS5jOjIxNjcKIG1zZ2lkICJnaXQgYW0gWzxvcHRpb25zPl0gKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0KSIKIG1zZ3N0ciAiZ2l0IGFtIFs80L7Qv9GG0LjQuD5dICgtLWNvbnRpbnVlIHwgLS1za2lwIHwgLS1hYm9ydCkiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjE3CisjOiBidWlsdGluL2FtLmM6MjE3MwogbXNnaWQgInJ1biBpbnRlcmFjdGl2ZWx5IgogbXNnc3RyICLQt9Cw0L/Rg9GB0YLQuNGC0Ywg0LIg0LjQvdGC0LXRgNCw0LrRgtC40LLQvdC+0Lwg0YDQtdC20LjQvNC1IgogCi0jOiBidWlsdGluL2FtLmM6MjIxOQorIzogYnVpbHRpbi9hbS5jOjIxNzUKIG1zZ2lkICJoaXN0b3JpY2FsIG9wdGlvbiAtLSBuby1vcCIKIG1zZ3N0ciAi0LjRgdGC0L7RgNC40YfQtdGB0LrQsNGPINC+0L/RhtC40Y8g4oCUINC90LjRh9C10LPQviDQvdC1INC00LXQu9Cw0LXRgiIKIAotIzogYnVpbHRpbi9hbS5jOjIyMjEKKyM6IGJ1aWx0aW4vYW0uYzoyMTc3CiBtc2dpZCAiYWxsb3cgZmFsbCBiYWNrIG9uIDN3YXkgbWVyZ2luZyBpZiBuZWVkZWQiCiBtc2dzdHIgItGA0LDQt9GA0LXRiNC40YLRjCDQvtGC0LrQsNGC0LjRgtGM0YHRjyDQuiDRgtGA0LXRhdGF0L7QtNC+0LLQvtC80YMg0YHQu9C40Y/QvdC40Y4sINC10YHQu9C4INC90YPQttC90L4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjIyIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NSBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU4Ci0jOiBidWlsdGluL3JlcGFjay5jOjI5OQorIzogYnVpbHRpbi9hbS5jOjIxNzggYnVpbHRpbi9pbml0LWRiLmM6NDk0IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA2IGJ1aWx0aW4vc3Rhc2guYzo4MDUKIG1zZ2lkICJiZSBxdWlldCIKIG1zZ3N0ciAi0YLQuNGF0LjQuSDRgNC10LbQuNC8IgogCi0jOiBidWlsdGluL2FtLmM6MjIyNAorIzogYnVpbHRpbi9hbS5jOjIxODAKIG1zZ2lkICJhZGQgYSBTaWduZWQtb2ZmLWJ5IGxpbmUgdG8gdGhlIGNvbW1pdCBtZXNzYWdlIgogbXNnc3RyICLQtNC+0LHQsNCy0LjRgtGMINGB0YLRgNC+0LrRgyBTaWduZWQtb2ZmLWJ5INC6INGB0L7QvtCx0YnQtdC90LjRjiDQutC+0LzQvNC40YLQsCIKIAotIzogYnVpbHRpbi9hbS5jOjIyMjcKKyM6IGJ1aWx0aW4vYW0uYzoyMTgzCiBtc2dpZCAicmVjb2RlIGludG8gdXRmOCAoZGVmYXVsdCkiCiBtc2dzdHIgItC/0LXRgNC10LrQvtC00LjRgNC+0LLQsNGC0Ywg0LIgdXRmOCAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4pIgogCi0jOiBidWlsdGluL2FtLmM6MjIyOQorIzogYnVpbHRpbi9hbS5jOjIxODUKIG1zZ2lkICJwYXNzIC1rIGZsYWcgdG8gZ2l0LW1haWxpbmZvIgogbXNnc3RyICLQv9C10YDQtdC00LDRgtGMINGE0LvQsNCzIC1rINCyIGdpdC1tYWlsaW5mbyIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzEKKyM6IGJ1aWx0aW4vYW0uYzoyMTg3CiBtc2dpZCAicGFzcyAtYiBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKIG1zZ3N0ciAi0L/QtdGA0LXQtNCw0YLRjCDRhNC70LDQsyAtYiDQsiBnaXQtbWFpbGluZm8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjMzCisjOiBidWlsdGluL2FtLmM6MjE4OQogbXNnaWQgInBhc3MgLW0gZmxhZyB0byBnaXQtbWFpbGluZm8iCiBtc2dzdHIgItC/0LXRgNC10LTQsNGC0Ywg0YTQu9Cw0LMgLW0g0LIgZ2l0LW1haWxpbmZvIgogCi0jOiBidWlsdGluL2FtLmM6MjIzNQorIzogYnVpbHRpbi9hbS5jOjIxOTEKIG1zZ2lkICJwYXNzIC0ta2VlcC1jciBmbGFnIHRvIGdpdC1tYWlsc3BsaXQgZm9yIG1ib3ggZm9ybWF0IgogbXNnc3RyICLQv9C10YDQtdC00LDRgtGMINGE0LvQsNCzIC0ta2VlcC1jciDQsiBnaXQtbWFpbHNwbGl0INC00LvRjyDRhNC+0YDQvNCw0YLQsCBtYm94IgogCi0jOiBidWlsdGluL2FtLmM6MjIzOAorIzogYnVpbHRpbi9hbS5jOjIxOTQKIG1zZ2lkICJkbyBub3QgcGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGluZGVwZW5kZW50IG9mIGFtLmtlZXBjciIKIG1zZ3N0ciAi0L3QtSDQv9C10YDQtdC00LDQstCw0YLRjCAtLWtlZXAtY3Ig0YTQu9Cw0LMg0LIgZ2l0LW1haWxzcGxpdCDQstC90LUg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQvtGCIGFtLmtlZXBjciIKIAotIzogYnVpbHRpbi9hbS5jOjIyNDEKKyM6IGJ1aWx0aW4vYW0uYzoyMTk3CiBtc2dpZCAic3RyaXAgZXZlcnl0aGluZyBiZWZvcmUgYSBzY2lzc29ycyBsaW5lIgogbXNnc3RyICLQvtCx0YDQtdC30LDRgtGMINCy0YHQtSDQtNC+INGB0YLRgNC+0LrQuCDQvtCx0YDQtdC30LrQuCIKIAotIzogYnVpbHRpbi9hbS5jOjIyNDMgYnVpbHRpbi9hbS5jOjIyNDYgYnVpbHRpbi9hbS5jOjIyNDkgYnVpbHRpbi9hbS5jOjIyNTIKLSM6IGJ1aWx0aW4vYW0uYzoyMjU1IGJ1aWx0aW4vYW0uYzoyMjU4IGJ1aWx0aW4vYW0uYzoyMjYxIGJ1aWx0aW4vYW0uYzoyMjY0Ci0jOiBidWlsdGluL2FtLmM6MjI3MAorIzogYnVpbHRpbi9hbS5jOjIxOTkgYnVpbHRpbi9hbS5jOjIyMDIgYnVpbHRpbi9hbS5jOjIyMDUgYnVpbHRpbi9hbS5jOjIyMDgKKyM6IGJ1aWx0aW4vYW0uYzoyMjExIGJ1aWx0aW4vYW0uYzoyMjE0IGJ1aWx0aW4vYW0uYzoyMjE3IGJ1aWx0aW4vYW0uYzoyMjIwCisjOiBidWlsdGluL2FtLmM6MjIyNgogbXNnaWQgInBhc3MgaXQgdGhyb3VnaCBnaXQtYXBwbHkiCiBtc2dzdHIgItC/0LXRgNC10LTQsNGC0Ywg0LXQs9C+INCyIGdpdC1hcHBseSIKIAotIzogYnVpbHRpbi9hbS5jOjIyNjAgYnVpbHRpbi9jb21taXQuYzoxMzMyIGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjczIGJ1aWx0aW4vZ3JlcC5jOjg1NyBidWlsdGluL21lcmdlLmM6MjM3Ci0jOiBidWlsdGluL3B1bGwuYzoxNTAgYnVpbHRpbi9wdWxsLmM6MjA4IGJ1aWx0aW4vcmVwYWNrLmM6MzA4Ci0jOiBidWlsdGluL3JlcGFjay5jOjMxMiBidWlsdGluL3JlcGFjay5jOjMxNCBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUwCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTcwIGJ1aWx0aW4vdGFnLmM6Mzg0IHBhcnNlLW9wdGlvbnMuaDoxNDQKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNDYgcGFyc2Utb3B0aW9ucy5oOjI1OAorIzogYnVpbHRpbi9hbS5jOjIyMTYgYnVpbHRpbi9jb21taXQuYzoxMzQ4IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc0IGJ1aWx0aW4vZ3JlcC5jOjg3OSBidWlsdGluL21lcmdlLmM6MjQ3CisjOiBidWlsdGluL3B1bGwuYzoxNTggYnVpbHRpbi9wdWxsLmM6MjE3IGJ1aWx0aW4vcmViYXNlLmM6MTQxMgorIzogYnVpbHRpbi9yZXBhY2suYzozMTcgYnVpbHRpbi9yZXBhY2suYzozMjEgYnVpbHRpbi9yZXBhY2suYzozMjMKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTEgYnVpbHRpbi9zaG93LXJlZi5jOjE3MiBidWlsdGluL3RhZy5jOjM5NworIzogcGFyc2Utb3B0aW9ucy5oOjE0MSBwYXJzZS1vcHRpb25zLmg6MTYyIHBhcnNlLW9wdGlvbnMuaDozMTEKIG1zZ2lkICJuIgogbXNnc3RyICJuIgogCi0jOiBidWlsdGluL2FtLmM6MjI2NiBidWlsdGluL2JyYW5jaC5jOjY0MyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4Ci0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDMgYnVpbHRpbi90YWcuYzo0MjAgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzkKKyM6IGJ1aWx0aW4vYW0uYzoyMjIyIGJ1aWx0aW4vYnJhbmNoLmM6NjUzIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NCBidWlsdGluL3RhZy5jOjQzMSBidWlsdGluL3ZlcmlmeS10YWcuYzozOQogbXNnaWQgImZvcm1hdCIKIG1zZ3N0ciAi0YTQvtGA0LzQsNGCIgogCi0jOiBidWlsdGluL2FtLmM6MjI2NworIzogYnVpbHRpbi9hbS5jOjIyMjMKIG1zZ2lkICJmb3JtYXQgdGhlIHBhdGNoKGVzKSBhcmUgaW4iCiBtc2dzdHIgItGE0L7RgNC80LDRgiwg0LIg0LrQvtGC0L7RgNC+0Lwg0L3QsNGF0L7QtNGP0YLRgdGPINC/0LDRgtGH0LgiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjczCisjOiBidWlsdGluL2FtLmM6MjIyOQogbXNnaWQgIm92ZXJyaWRlIGVycm9yIG1lc3NhZ2Ugd2hlbiBwYXRjaCBmYWlsdXJlIG9jY3VycyIKIG1zZ3N0ciAi0L/QtdGA0LXQvtC/0YDQtdC00LXQu9C40YLRjCDRgdC+0L7QsdGJ0LXQvdC40LUg0L7QsSDQvtGI0LjQsdC60LUsINC10YHQu9C4INC90LUg0YPQtNCw0LvQvtGB0Ywg0L3QsNC70L7QttC40YLRjCDQuNC30LzQtdC90LXQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjc1CisjOiBidWlsdGluL2FtLmM6MjIzMQogbXNnaWQgImNvbnRpbnVlIGFwcGx5aW5nIHBhdGNoZXMgYWZ0ZXIgcmVzb2x2aW5nIGEgY29uZmxpY3QiCiBtc2dzdHIgItC/0YDQvtC00L7Qu9C20LjRgtGMINC/0YDQuNC80LXQvdC10L3QuNC1INC40LfQvNC10L3QtdC90LjQuSDQv9C+0YHQu9C1INGA0LDQt9GA0LXRiNC10L3QuNGPINC60L7QvdGE0LjQu9C40LrRgtCwIgogCi0jOiBidWlsdGluL2FtLmM6MjI3OAorIzogYnVpbHRpbi9hbS5jOjIyMzQKIG1zZ2lkICJzeW5vbnltcyBmb3IgLS1jb250aW51ZSIKIG1zZ3N0ciAi0YHQuNC90L7QvdC40Lwg0LTQu9GPIC0tY29udGludWUiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjgxCisjOiBidWlsdGluL2FtLmM6MjIzNwogbXNnaWQgInNraXAgdGhlIGN1cnJlbnQgcGF0Y2giCiBtc2dzdHIgItC/0YDQvtC/0YPRgdGC0LjRgtGMINGC0LXQutGD0YnQuNC5INC/0LDRgtGHIgogCi0jOiBidWlsdGluL2FtLmM6MjI4NAorIzogYnVpbHRpbi9hbS5jOjIyNDAKIG1zZ2lkICJyZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIGFib3J0IHRoZSBwYXRjaGluZyBvcGVyYXRpb24uIgogbXNnc3RyICLQstC+0YHRgdGC0LDQvdC+0LLQuNGC0Ywg0L7RgNC40LPQuNC90LDQu9GM0L3Rg9GOINCy0LXRgtC60YMg0Lgg0L7RgtC80LXQvdC40YLRjCDQvtC/0LXRgNCw0YbQuNGOINC/0YDQuNC80LXQvdC10L3QuNGPINC40LfQvNC10L3QtdC90LjQuS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjg3CisjOiBidWlsdGluL2FtLmM6MjI0MwogbXNnaWQgImFib3J0IHRoZSBwYXRjaGluZyBvcGVyYXRpb24gYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIyOTAKKyM6IGJ1aWx0aW4vYW0uYzoyMjQ2CiBtc2dpZCAic2hvdyB0aGUgcGF0Y2ggYmVpbmcgYXBwbGllZC4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9hbS5jOjIyOTQKKyM6IGJ1aWx0aW4vYW0uYzoyMjUwCiBtc2dpZCAibGllIGFib3V0IGNvbW1pdHRlciBkYXRlIgogbXNnc3RyICLRgdC+0LLRgNCw0YLRjCDQviDQtNCw0YLQtSDQutC+0LzQvNC40YLQtdGA0LAiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjk2CisjOiBidWlsdGluL2FtLmM6MjI1MgogbXNnaWQgInVzZSBjdXJyZW50IHRpbWVzdGFtcCBmb3IgYXV0aG9yIGRhdGUiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRgtC10LrRg9GJ0LXQtSDQstGA0LXQvNGPINC60LDQuiDQstGA0LXQvNGPINCw0LLRgtC+0YDRgdGC0LLQsCIKIAotIzogYnVpbHRpbi9hbS5jOjIyOTggYnVpbHRpbi9jb21taXQuYzoxNDY4IGJ1aWx0aW4vbWVyZ2UuYzoyNzEKLSM6IGJ1aWx0aW4vcHVsbC5jOjE4MyBidWlsdGluL3JldmVydC5jOjExMyBidWlsdGluL3RhZy5jOjQwMAorIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMCBidWlsdGluL2NvbW1pdC5jOjE0OTEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODIgYnVpbHRpbi9wdWxsLmM6MTkyIGJ1aWx0aW4vcmViYXNlLmM6NDg5CisjOiBidWlsdGluL3JlYmFzZS5jOjE0NTMgYnVpbHRpbi9yZXZlcnQuYzoxMTYgYnVpbHRpbi90YWcuYzo0MTIKIG1zZ2lkICJrZXktaWQiCiBtc2dzdHIgImtleS1pZCIKIAotIzogYnVpbHRpbi9hbS5jOjIyOTkKKyM6IGJ1aWx0aW4vYW0uYzoyMjU1IGJ1aWx0aW4vcmViYXNlLmM6NDkwIGJ1aWx0aW4vcmViYXNlLmM6MTQ1NAogbXNnaWQgIkdQRy1zaWduIGNvbW1pdHMiCiBtc2dzdHIgItC/0L7QtNC/0LjRgdCw0YLRjCDQutC+0LzQvNC40YLRiyDRgSDQv9C+0LzQvtGJ0YzRjiBHUEciCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMzAyCisjOiBidWlsdGluL2FtLmM6MjI1OAogbXNnaWQgIihpbnRlcm5hbCB1c2UgZm9yIGdpdC1yZWJhc2UpIgogbXNnc3RyICIo0LLQvdGD0YLRgNC10L3QvdC10LUg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LUg0LTQu9GPIGdpdC1yZWJhc2UpIgogCi0jOiBidWlsdGluL2FtLmM6MjMyMAorIzogYnVpbHRpbi9hbS5jOjIyNzYKIG1zZ2lkICIiCiAiVGhlIC1iLy0tYmluYXJ5IG9wdGlvbiBoYXMgYmVlbiBhIG5vLW9wIGZvciBsb25nIHRpbWUsIGFuZFxuIgogIml0IHdpbGwgYmUgcmVtb3ZlZC4gUGxlYXNlIGRvIG5vdCB1c2UgaXQgYW55bW9yZS4iCiBtc2dzdHIgItCe0L/RhtC40Y8gLWIvLS1iaW5hcnkg0YPQttC1INC00L7Qu9Cz0L7QtSDQstGA0LXQvNGPINC90LjRh9C10LPQviDQvdC1INC00LXQu9Cw0LXRgiDQuCDQsdGD0LTQtdGCINGD0LTQsNC70LXQvdCwINGBINGB0LvQtdC00YPRjtGJ0LjRhSDQstC10YDRgdC40Y/RhSBHaXQuINCf0L7QttCw0LvRg9C50YHRgtCwLCDQvdC1INC40YHQv9C+0LvRjNC30YPQudGC0LUg0LXQtS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMzI3CisjOiBidWlsdGluL2FtLmM6MjI4MwogbXNnaWQgImZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAi0YHQsdC+0Lkg0YfRgtC10L3QuNGPINC40L3QtNC10LrRgdCwIgogCi0jOiBidWlsdGluL2FtLmM6MjM0MgorIzogYnVpbHRpbi9hbS5jOjIyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJldmlvdXMgcmViYXNlIGRpcmVjdG9yeSAlcyBzdGlsbCBleGlzdHMgYnV0IG1ib3ggZ2l2ZW4uIgogbXNnc3RyICLQv9GA0LXQtNGL0LTRg9GJ0LjQuSDQutCw0YLQsNC70L7QsyDQv9C10YDQtdC80LXRidC10L3QuNGPICVzINC10YnQtSDRgdGD0YnQtdGB0YLQstGD0LXRgiwg0L3QviDQv9C10YDQtdC00LDQvSBtYm94LiIKIAotIzogYnVpbHRpbi9hbS5jOjIzNjYKKyM6IGJ1aWx0aW4vYW0uYzoyMzIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdHJheSAlcyBkaXJlY3RvcnkgZm91bmQuXG4iCiAiVXNlIFwiZ2l0IGFtIC0tYWJvcnRcIiB0byByZW1vdmUgaXQuIgogbXNnc3RyICLQndCw0LnQtNC10L0g0LfQsNCx0YvRgtGL0Lkg0LrQsNGC0LDQu9C+0LMgJXMuXG7QmNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrZ2l0IGFtIC0tYWJvcnTCuywg0YfRgtC+0LHRiyDRg9C00LDQu9C40YLRjCDQtdCz0L4uIgogCi0jOiBidWlsdGluL2FtLmM6MjM3MgorIzogYnVpbHRpbi9hbS5jOjIzMjgKIG1zZ2lkICJSZXNvbHZlIG9wZXJhdGlvbiBub3QgaW4gcHJvZ3Jlc3MsIHdlIGFyZSBub3QgcmVzdW1pbmcuIgogbXNnc3RyICLQntC/0LXRgNCw0YbQuNGPINGA0LDQt9GA0LXRiNC10L3QuNGPINC60L7QvdGE0LvQuNC60YLQvtCyINC90LUg0LIg0L/RgNC+0YbQtdGB0YHQtSDQstGL0L/QvtC70L3QtdC90LjRjywg0L3QtSDQv9GA0L7QtNC+0LvQttCw0LXQvC4iCiAKQEAgLTY3NDksMjIxICs4MzAwLDQxMCBAQAogbXNnaWQgImdpdCBhcmNoaXZlOiBSZW1vdGUgd2l0aCBubyBVUkwiCiBtc2dzdHIgImdpdCBhcmNoaXZlOiDQstC90LXRiNC90LjQuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5INCx0LXQtyBVUkwiCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjU4CisjOiBidWlsdGluL2FyY2hpdmUuYzo2MQogbXNnaWQgImdpdCBhcmNoaXZlOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgYSBmbHVzaCBwYWNrZXQiCiBtc2dzdHIgImdpdCBhcmNoaXZlOiDQvtC20LjQtNCw0LXRgtGB0Y8gQUNLL05BSywg0L/QvtC70YPRh9C10L0g0L/QsNC60LXRgiDRgdCx0YDQvtGB0LAg0LHRg9GE0LXRgNCwIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2MQorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFyY2hpdmU6IE5BQ0sgJXMiCiBtc2dzdHIgImdpdCBhcmNoaXZlOiBOQUNLICVzIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2NAorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjUKIG1zZ2lkICJnaXQgYXJjaGl2ZTogcHJvdG9jb2wgZXJyb3IiCiBtc2dzdHIgImdpdCBhcmNoaXZlOiDQvtGI0LjQsdC60LAg0L/RgNC+0YLQvtC60L7Qu9CwIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2OAorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjkKIG1zZ2lkICJnaXQgYXJjaGl2ZTogZXhwZWN0ZWQgYSBmbHVzaCIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmU6INC+0LbQuNC00LDQu9GB0Y8g0YHQsdGA0L7RgSDQsdGD0YTQtdGA0LAiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyCiBtc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tbmV4dC1hbGwgWy0tbm8tY2hlY2tvdXRdIgogbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCBbLS1uby1jaGVja291dF0iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIzCiBtc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0td3JpdGUtdGVybXMgPGJhZF90ZXJtPiA8Z29vZF90ZXJtPiIKIG1zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0td3JpdGUtdGVybXMgPNC/0LvQvtGF0L7QtS3QvtC/0YDQtdC00LXQu9C10L3QuNC1PiA80YXQvtGA0L7RiNC10LUt0L7Qv9GA0LXQtNC10LvQtdC90LjQtT4iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI0CiBtc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNsZWFuLXN0YXRlIgogbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2xlYW4tc3RhdGUiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo0NgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI1Cittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXJlc2V0IFs8Y29tbWl0Pl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI2Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC13cml0ZSBbLS1uby1sb2ddIDxzdGF0ZT4gPHJldmlzaW9uPiA8Z29vZF90ZXJtPiAiCisiPGJhZF90ZXJtPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjcKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNoZWNrLWFuZC1zZXQtdGVybXMgPGNvbW1hbmQ+IDxnb29kX3Rlcm0+ICIKKyI8YmFkX3Rlcm0+IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOAorbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrIDxnb29kX3Rlcm0+IDxiYWRfdGVybT4gWzx0ZXJtPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI5Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC10ZXJtcyBbLS10ZXJtLWdvb2QgfCAtLXRlcm0tb2xkIHwgLS10ZXJtLWJhZCB8ICIKKyItLXRlcm0tbmV3XSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzAKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT08dGVybT4gIgorIi0tdGVybS17bmV3LGJhZH09PHRlcm0+XVstLW5vLWNoZWNrb3V0XSBbPGJhZD4gWzxnb29kPi4uLl1dIFstLV0gIgorIls8cGF0aHM+Li4uXSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0ZXJtIgogbXNnc3RyICLCqyVzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC00L7Qv9GD0YHRgtC40LzRi9C8INC+0L/RgNC10LTQtdC70LXQvdC40LXQvCIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUwCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3QgdXNlIHRoZSBidWlsdGluIGNvbW1hbmQgJyVzJyBhcyBhIHRlcm0iCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LLRgdGC0YDQvtC10L3QvdGD0Y4g0LrQvtC80LDQvdC00YMgwqslc8K7INC60LDQuiDQvtC/0YDQtdC00LXQu9C10L3QuNC1IgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3QgY2hhbmdlIHRoZSBtZWFuaW5nIG9mIHRoZSB0ZXJtICclcyciCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQuNC30LzQtdC90LjRgtGMINC30L3QsNGH0LXQvdC40LUg0L7Qv9GA0LXQtNC10LvQtdC90LjRjyDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3MQorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjExMQogbXNnaWQgInBsZWFzZSB1c2UgdHdvIGRpZmZlcmVudCB0ZXJtcyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDQtNCy0LAg0YDQsNC30L3Ri9GFINC+0L/RgNC10LTQtdC70LXQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3OAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjExOAogbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBmaWxlIEJJU0VDVF9URVJNUyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDRhNCw0LnQuyBCSVNFQ1RfVEVSTVMiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2UgYXJlIG5vdCBiaXNlY3RpbmcuXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb3VsZCBub3QgY2hlY2sgb3V0IG9yaWdpbmFsIEhFQUQgJyVzJy4gVHJ5ICdnaXQgYmlzZWN0IHJlc2V0IDxjb21taXQ+Jy4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGdldCB0aGUgb2lkIG9mIHRoZSByZXYgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gdGhlIGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgY29tbWFuZDogeW91J3JlIGN1cnJlbnRseSBpbiBhICVzLyVzIGJpc2VjdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Mjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgbmVlZCB0byBnaXZlIG1lIGF0IGxlYXN0IG9uZSAlcyBhbmQgJXMgcmV2aXNpb24uXG4iCisiWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICVzXCIgYW5kIFwiZ2l0IGJpc2VjdCAlc1wiIGZvciB0aGF0LiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKKyJZb3UgdGhlbiBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICVzIGFuZCAlcyByZXZpc2lvbi5cbiIKKyJZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJXNcIiBhbmQgXCJnaXQgYmlzZWN0ICVzXCIgZm9yIHRoYXQuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmlzZWN0aW5nIG9ubHkgd2l0aCBhICVzIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW1ldIGFuZCBbbl0gaW4geW91cgorIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAorIy4gYXQgdGhpcyBwb2ludC4KKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMjkKK21zZ2lkICJBcmUgeW91IHN1cmUgW1kvbl0/ICIKK21zZ3N0ciAi0JLRiyDRg9Cy0LXRgNC10L3RiyBbWSAtINC00LAvbiAtINC90LXRgl0/ICIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM3NgorbXNnaWQgIm5vIHRlcm1zIGRlZmluZWQiCittc2dzdHIgItC+0L/RgNC10LTQtdC70LXQvdC40Y8g0L3QtSDQt9Cw0LTQsNC90YsiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgY3VycmVudCB0ZXJtcyBhcmUgJXMgZm9yIHRoZSBvbGQgc3RhdGVcbiIKKyJhbmQgJXMgZm9yIHRoZSBuZXcgc3RhdGUuXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBhcmd1bWVudCAlcyBmb3IgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgorIlN1cHBvcnRlZCBvcHRpb25zIGFyZTogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCBhbmQgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBvcHRpb246ICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ3OQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IGFwcGVhciB0byBiZSBhIHZhbGlkIHJldmlzaW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MTEKK21zZ2lkICJiYWQgSEVBRCAtIEkgbmVlZCBhIEhFQUQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJjaGVja2luZyBvdXQgJyVzJyBmYWlsZWQuIFRyeSAnZ2l0IGJpc2VjdCBzdGFydCA8dmFsaWQtYnJhbmNoPicuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NDcKK21zZ2lkICJ3b24ndCBiaXNlY3Qgb24gY2ctc2VlaydlZCB0cmVlIgorbXNnc3RyICLQvdC10LvRjNC30Y8g0LLRi9C/0L7Qu9C90LjRgtGMINC00LLQvtC40YfQvdGL0Lkg0L/QvtC40YHQuiDQvdCwINC00LXRgNC10LLQtSDQv9C+0YHQu9C1IGNnLXNlZWsiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NTAKK21zZ2lkICJiYWQgSEVBRCAtIHN0cmFuZ2Ugc3ltYm9saWMgcmVmIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MjcKIG1zZ2lkICJwZXJmb3JtICdnaXQgYmlzZWN0IG5leHQnIgogbXNnc3RyICLQstGL0L/QvtC70L3QuNGC0YwgwqtnaXQgYmlzZWN0IG5leHTCuyIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyMgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYyOQogbXNnaWQgIndyaXRlIHRoZSB0ZXJtcyB0byAuZ2l0L0JJU0VDVF9URVJNUyIKIG1zZ3N0ciAi0LfQsNC/0LjRgdCw0YLRjCDQvtC/0YDQtdC00LXQu9C10L3QuNGPINCyIC5naXQvQklTRUNUX1RFUk1TIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTI0CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjMxCiBtc2dpZCAiY2xlYW51cCB0aGUgYmlzZWN0aW9uIHN0YXRlIgogbXNnc3RyICLQvtGH0LjRgdGC0LjRgtGMINGB0L7RgdGC0L7Rj9C90LjQtSDQtNCy0L7QuNGH0L3QvtCz0L4g0L/QvtC40YHQutCwIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTI2CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjMzCiBtc2dpZCAiY2hlY2sgZm9yIGV4cGVjdGVkIHJldnMiCiBtc2dzdHIgItC/0YDQvtCy0LXRgNC40YLRjCDQvtC20LjQtNCw0LXQvNGL0LUg0YDQtdC00LDQutGG0LjQuCIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyOAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzNQorbXNnaWQgInJlc2V0IHRoZSBiaXNlY3Rpb24gc3RhdGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzNworbXNnaWQgIndyaXRlIG91dCB0aGUgYmlzZWN0aW9uIHN0YXRlIGluIEJJU0VDVF9MT0ciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzOQorbXNnaWQgImNoZWNrIGFuZCBzZXQgdGVybXMgaW4gYSBiaXNlY3Rpb24gc3RhdGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0MQorbXNnaWQgImNoZWNrIHdoZXRoZXIgYmFkIG9yIGdvb2QgdGVybXMgZXhpc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0MworbXNnaWQgInByaW50IG91dCB0aGUgYmlzZWN0IHRlcm1zIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDUKK21zZ2lkICJzdGFydCB0aGUgYmlzZWN0IHNlc3Npb24iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0NwogbXNnaWQgInVwZGF0ZSBCSVNFQ1RfSEVBRCBpbnN0ZWFkIG9mIGNoZWNraW5nIG91dCB0aGUgY3VycmVudCBjb21taXQiCiBtc2dzdHIgItC+0LHQvdC+0LLQuNGC0YwgQklTRUNUX0hFQUQg0LLQvNC10YHRgtC+INC/0LXRgNC10YXQvtC00LAg0L3QsCDRgtC10LrRg9GJ0LjQuSDQutC+0LzQvNC40YIiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNDMKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDkKK21zZ2lkICJubyBsb2cgZm9yIEJJU0VDVF9XUklURSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjY2CiBtc2dpZCAiLS13cml0ZS10ZXJtcyByZXF1aXJlcyB0d28gYXJndW1lbnRzIgogbXNnc3RyICItLXdyaXRlLXRlcm1zINGC0YDQtdCx0YPQtdGCINGD0LrQsNC30LDQvdC40Y8g0LTQstGD0YUg0L/QsNGA0LDQvNC10YLRgNC+0LIiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNDcKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NzAKIG1zZ2lkICItLWJpc2VjdC1jbGVhbi1zdGF0ZSByZXF1aXJlcyBubyBhcmd1bWVudHMiCiBtc2dzdHIgIi0tYmlzZWN0LWNsZWFuLXN0YXRlINC90LUg0YLRgNC10LHRg9C10YIg0YPQutCw0LfQsNC90LjRjyDQv9Cw0YDQsNC80LXRgtGA0L7QsiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjMxCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njc3Cittc2dpZCAiLS1iaXNlY3QtcmVzZXQgcmVxdWlyZXMgZWl0aGVyIG5vIGFyZ3VtZW50IG9yIGEgY29tbWl0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2ODEKK21zZ2lkICItLWJpc2VjdC13cml0ZSByZXF1aXJlcyBlaXRoZXIgNCBvciA1IGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njg3Cittc2dpZCAiLS1jaGVjay1hbmQtc2V0LXRlcm1zIHJlcXVpcmVzIDMgYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2OTMKK21zZ2lkICItLWJpc2VjdC1uZXh0LWNoZWNrIHJlcXVpcmVzIDIgb3IgMyBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY5OQorbXNnaWQgIi0tYmlzZWN0LXRlcm1zIHJlcXVpcmVzIDAgb3IgMSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JsYW1lLmM6MzIKIG1zZ2lkICJnaXQgYmxhbWUgWzxvcHRpb25zPl0gWzxyZXYtb3B0cz5dIFs8cmV2Pl0gWy0tXSA8ZmlsZT4iCiBtc2dzdHIgImdpdCBibGFtZSBbPNC+0L/RhtC40Lg+XSBbPNC+0L/RhtC40Lgt0YDQtdC00LDQutGG0LjQuD5dIFs80YDQtdC00LDQutGG0LjRjz5dIFstLV0gPNGE0LDQudC7PiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjM2CisjOiBidWlsdGluL2JsYW1lLmM6MzcKIG1zZ2lkICI8cmV2LW9wdHM+IGFyZSBkb2N1bWVudGVkIGluIGdpdC1yZXYtbGlzdCgxKSIKIG1zZ3N0ciAiPNC+0L/RhtC40LgtcmV2LWxpc3Q+INC00L7QutGD0LzQtdC90YLQuNGA0L7QstCw0L3RiyDQsiBnaXQtcmV2LWxpc3QoMSkiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo0MDYKKyM6IGJ1aWx0aW4vYmxhbWUuYzo0MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0aW5nIGEgY29sb3I6ICVzIgogbXNnc3RyICLQvtC20LjQtNCw0LXRgtGB0Y8g0YbQstC10YI6ICVzIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NDEzCisjOiBidWlsdGluL2JsYW1lLmM6NDE0CiBtc2dpZCAibXVzdCBlbmQgd2l0aCBhIGNvbG9yIgogbXNnc3RyICLQtNC+0LvQttC90L4g0LfQsNC60LDQvdGH0LjQstCw0YLRjNGB0Y8g0L3QsCDRhtCy0LXRgiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjcwMAorIzogYnVpbHRpbi9ibGFtZS5jOjcwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbG9yICclcycgaW4gY29sb3IuYmxhbWUucmVwZWF0ZWRMaW5lcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzE4CisjOiBidWlsdGluL2JsYW1lLmM6NzE5CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgYmxhbWUuY29sb3JpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc4OQorIzogYnVpbHRpbi9ibGFtZS5jOjc5NAogbXNnaWQgIlNob3cgYmxhbWUgZW50cmllcyBhcyB3ZSBmaW5kIHRoZW0sIGluY3JlbWVudGFsbHkiCiBtc2dzdHIgItCf0L7QutCw0LfQsNGC0Ywg0LfQsNC/0LjRgdC4INCw0LLRgtC+0YDRgdGC0LLQsCDQv9C+0YHRgtC10L/QtdC90L3Qviwg0LIg0L/RgNC+0YbQtdGB0YHQtSDQvdCw0YXQvtC20LTQtdC90LjRjyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5MAorIzogYnVpbHRpbi9ibGFtZS5jOjc5NQogbXNnaWQgIlNob3cgYmxhbmsgU0hBLTEgZm9yIGJvdW5kYXJ5IGNvbW1pdHMgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgItCd0LUg0L/QvtC60LDQt9GL0LLQsNGC0YwgU0hBLTEg0LTQu9GPINC60L7QvNC80LjRgtC+0LIsINC90LUg0LLRhdC+0LTRj9GJ0LjRhSDQsiDQs9GA0LDQvdC40YbRiyDQt9Cw0L/RgNC+0YHQsCAo0J/QviDRg9C80L7Qu9GH0LDQvdC40Y46INC+0YLQutC70Y7Rh9C10L3QvikiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTEKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3OTYKIG1zZ2lkICJEbyBub3QgdHJlYXQgcm9vdCBjb21taXRzIGFzIGJvdW5kYXJpZXMgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgItCd0LUg0LLQvtGB0L/RgNC40L3QuNC80LDRgtGMINC60L7RgNC90LXQstGL0LUg0LrQvtC80LzQuNGC0Ysg0LrQsNC6INCz0YDQsNC90LjRh9C90YvQtSAo0J/QviDRg9C80L7Qu9GH0LDQvdC40Y46INC+0YLQutC70Y7Rh9C10L3QvikiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTIKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3OTcKIG1zZ2lkICJTaG93IHdvcmsgY29zdCBzdGF0aXN0aWNzIgogbXNnc3RyICLQn9C+0LrQsNC30LDRgtGMINGB0YLQsNGC0LjRgdGC0LjQutGDINGA0LDRgdGF0L7QtNC+0LIg0L3QsCDQstGL0L/QvtC70L3QtdC90LjQtSDQt9Cw0L/RgNC+0YHQsCIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5MworIzogYnVpbHRpbi9ibGFtZS5jOjc5OAogbXNnaWQgIkZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKIG1zZ3N0ciAi0J/RgNC40L3Rg9C00LjRgtC10LvRjNC90L4g0LLRi9Cy0L7QtNC40YLRjCDQv9GA0L7Qs9GA0LXRgdGBINCy0YvQv9C+0LvQvdC10L3QuNGPIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk0CisjOiBidWlsdGluL2JsYW1lLmM6Nzk5CiBtc2dpZCAiU2hvdyBvdXRwdXQgc2NvcmUgZm9yIGJsYW1lIGVudHJpZXMiCiBtc2dzdHIgItCf0L7QutCw0LfQsNGC0Ywg0L7RhtC10L3QutGDINC00LvRjyDQt9Cw0L/QuNGB0LXQuSDQsNCy0YLQvtGA0YHRgtCy0LAiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTUKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MDAKIG1zZ2lkICJTaG93IG9yaWdpbmFsIGZpbGVuYW1lIChEZWZhdWx0OiBhdXRvKSIKIG1zZ3N0ciAi0J/QvtC60LDQt9Cw0YLRjCDQvtGA0LjQs9C40L3QsNC70YzQvdC+0LUg0LjQvNGPINGE0LDQudC70LAgKNCf0L4g0YPQvNC+0LvRh9Cw0L3QuNGOOiDQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQuCkiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTYKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MDEKIG1zZ2lkICJTaG93IG9yaWdpbmFsIGxpbmVudW1iZXIgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgItCf0L7QutCw0LfQsNGC0Ywg0L7RgNC40LPQuNC90LDQu9GM0L3Ri9C1INC90L7QvNC10YDQsCDRgdGC0YDQvtC6ICjQn9C+INGD0LzQvtC70YfQsNC90LjRjjog0L7RgtC60LvRjtGH0LXQvdC+KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5NworIzogYnVpbHRpbi9ibGFtZS5jOjgwMgogbXNnaWQgIlNob3cgaW4gYSBmb3JtYXQgZGVzaWduZWQgZm9yIG1hY2hpbmUgY29uc3VtcHRpb24iCiBtc2dzdHIgItCf0L7QutCw0LfQsNGC0Ywg0LIg0YTQvtGA0LzQsNGC0LUg0LTQu9GPINC/0YDQvtCz0YDQsNC80LzQvdC+0LPQviDRgNCw0LfQsdC+0YDQsCIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5OAorIzogYnVpbHRpbi9ibGFtZS5jOjgwMwogbXNnaWQgIlNob3cgcG9yY2VsYWluIGZvcm1hdCB3aXRoIHBlci1saW5lIGNvbW1pdCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAi0J/QvtC60LDQt9Cw0YLRjCDQsiDQvNCw0YjQuNC90L7Rh9C40YLQsNC10LzQvtC8INGE0L7RgNC80LDRgtC1LCDRgSDQv9C+0YHRgtGA0L7Rh9C90L7QuSDQuNC90YTQvtGA0LzQsNGG0LjQtdC5INC+INC60L7QvNC80LjRgtC1IgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk5CisjOiBidWlsdGluL2JsYW1lLmM6ODA0CiBtc2dpZCAiVXNlIHRoZSBzYW1lIG91dHB1dCBtb2RlIGFzIGdpdC1hbm5vdGF0ZSAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAi0JjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGC0LDQutC+0Lkg0LbQtSDRhNC+0YDQvNCw0YIg0LLRi9Cy0L7QtNCwLCDQutCw0Log0LggZ2l0LWFubm90YXRlICjQn9C+INGD0LzQvtC70YfQsNC90LjRjjog0L7RgtC60LvRjtGH0LXQvdC+KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwMAorIzogYnVpbHRpbi9ibGFtZS5jOjgwNQogbXNnaWQgIlNob3cgcmF3IHRpbWVzdGFtcCAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAi0J/QvtC60LDQt9Cw0YLRjCDQvdC10L7QsdGA0LDQsdC+0YLQsNC90L3Ri9C1INCy0YDQtdC80LXQvdC90YvQtSDQvNC10YLQutC4ICjQn9C+INGD0LzQvtC70YfQsNC90LjRjjog0L7RgtC60LvRjtGH0LXQvdC+KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwMQorIzogYnVpbHRpbi9ibGFtZS5jOjgwNgogbXNnaWQgIlNob3cgbG9uZyBjb21taXQgU0hBMSAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAi0J/QvtC60LDQt9Cw0YLRjCDQtNC70LjQvdC90YvQuSBTSEExINC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC60L7QvNC80LjRgtCwICjQn9C+INGD0LzQvtC70YfQsNC90LjRjjog0L7RgtC60LvRjtGH0LXQvdC+KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwMgorIzogYnVpbHRpbi9ibGFtZS5jOjgwNwogbXNnaWQgIlN1cHByZXNzIGF1dGhvciBuYW1lIGFuZCB0aW1lc3RhbXAgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgItCd0LUg0L/QvtC60LDQt9GL0LLQsNGC0Ywg0LjQvNGPINCw0LLRgtC+0YDQsCDQuCDQstGA0LXQvNC10L3QvdGL0LUg0LzQtdGC0LrQuCAo0J/QviDRg9C80L7Qu9GH0LDQvdC40Y46INC+0YLQutC70Y7Rh9C10L3QvikiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MDgKIG1zZ2lkICJTaG93IGF1dGhvciBlbWFpbCBpbnN0ZWFkIG9mIG5hbWUgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgItCf0L7QutCw0LfQsNGC0Ywg0L/QvtGH0YLRgyDQsNCy0YLQvtGA0LAg0LLQvNC10YHRgtC+INC40LzQtdC90LggKNCf0L4g0YPQvNC+0LvRh9Cw0L3QuNGOOiDQvtGC0LrQu9GO0YfQtdC90L4pIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA0CisjOiBidWlsdGluL2JsYW1lLmM6ODA5CiBtc2dpZCAiSWdub3JlIHdoaXRlc3BhY2UgZGlmZmVyZW5jZXMiCiBtc2dzdHIgItCY0LPQvdC+0YDQuNGA0L7QstCw0YLRjCDRgNCw0LfQu9C40YfQuNGPINCyINC/0YDQvtCx0LXQu9Cw0YUiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDUKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MTAKIG1zZ2lkICJjb2xvciByZWR1bmRhbnQgbWV0YWRhdGEgZnJvbSBwcmV2aW91cyBsaW5lIGRpZmZlcmVudGx5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDYKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MTEKIG1zZ2lkICJjb2xvciBsaW5lcyBieSBhZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgxMworIzogYnVpbHRpbi9ibGFtZS5jOjgxOAogbXNnaWQgIlVzZSBhbiBleHBlcmltZW50YWwgaGV1cmlzdGljIHRvIGltcHJvdmUgZGlmZnMiCi1tc2dzdHIgItCY0YHQv9C+0LvRjNC30L7QstCw0YLRjCDRjdC60YHQv9C10YDQtdC80LXQvdGC0LDQu9GM0L3Rg9GOINGN0LLRgNC40YHRgtC40LrRgywg0YfRgtC+0LHRiyDRg9C70YPRh9GI0LjRgtGMINGE0LDQudC70Ysg0YDQsNC30LvQuNGH0LjQuSIKK21zZ3N0ciAi0JjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGN0LrRgdC/0LXRgNC10LzQtdC90YLQsNC70YzQvdGD0Y4g0Y3QstGA0LjRgdGC0LjQutGDLCDRh9GC0L7QsdGLINGD0LvRg9GH0YjQuNGC0Ywg0YTQsNC50LvRiyDRgdC/0LjRgdC60LAg0LjQt9C80LXQvdC10L3QuNC5IgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODE1CisjOiBidWlsdGluL2JsYW1lLmM6ODIwCiBtc2dpZCAiU3BlbmQgZXh0cmEgY3ljbGVzIHRvIGZpbmQgYmV0dGVyIG1hdGNoIgogbXNnc3RyICLQn9C+0YLRgNCw0YLQuNGC0Ywg0LHQvtC70YzRiNC1INCy0YDQtdC80LXQvdC4LCDQtNC70Y8g0L3QsNGF0L7QttC00LXQvdC40Y8g0LvRg9GH0YjQuNGFINGB0L7QstC/0LDQtNC10L3QuNC5IgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODE2CisjOiBidWlsdGluL2JsYW1lLmM6ODIxCiBtc2dpZCAiVXNlIHJldmlzaW9ucyBmcm9tIDxmaWxlPiBpbnN0ZWFkIG9mIGNhbGxpbmcgZ2l0LXJldi1saXN0IgogbXNnc3RyICLQmNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YDQtdC00LDQutGG0LjQuCDQuNC3IDzRhNCw0LnQu9CwPiDQstC80LXRgdGC0L4g0LLRi9C30L7QstCwIGdpdC1yZXYtbGlzdCIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgxNworIzogYnVpbHRpbi9ibGFtZS5jOjgyMgogbXNnaWQgIlVzZSA8ZmlsZT4ncyBjb250ZW50cyBhcyB0aGUgZmluYWwgaW1hZ2UiCiBtc2dzdHIgItCY0YHQv9C+0LvRjNC30L7QstCw0YLRjCDRgdC+0LTQtdGA0LbQuNC80L7QtSA80YTQsNC50LvQsD4g0LrQsNC6INGE0LjQvdCw0LvRjNC90YvQuSDRgdC90LjQvNC+0LoiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MTggYnVpbHRpbi9ibGFtZS5jOjgxOQorIzogYnVpbHRpbi9ibGFtZS5jOjgyMyBidWlsdGluL2JsYW1lLmM6ODI0CiBtc2dpZCAic2NvcmUiCiBtc2dzdHIgItC80LjQvS3QtNC70LjQvdCwIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODE4CisjOiBidWlsdGluL2JsYW1lLmM6ODIzCiBtc2dpZCAiRmluZCBsaW5lIGNvcGllcyB3aXRoaW4gYW5kIGFjcm9zcyBmaWxlcyIKIG1zZ3N0ciAi0J3QsNC50YLQuCDQutC+0L/QuNGA0L7QstCw0L3QuNC1INGB0YLRgNC+0Log0LIg0L/RgNC10LTQtdC70LDRhSDQuCDQvNC10LbQtNGDINGE0LDQudC70LDQvNC4IgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODE5CisjOiBidWlsdGluL2JsYW1lLmM6ODI0CiBtc2dpZCAiRmluZCBsaW5lIG1vdmVtZW50cyB3aXRoaW4gYW5kIGFjcm9zcyBmaWxlcyIKIG1zZ3N0ciAi0J3QsNC50YLQuCDQv9C10YDQtdC80LXRidC10L3QuNGPINGB0YLRgNC+0Log0LIg0L/RgNC10LTQtdC70LDRhSDQuCDQvNC10LbQtNGDINGE0LDQudC70LDQvNC4IgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIwCisjOiBidWlsdGluL2JsYW1lLmM6ODI1CiBtc2dpZCAibixtIgogbXNnc3RyICLQvdCw0YfQsNC70L4s0LrQvtC90LXRhiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMAorIzogYnVpbHRpbi9ibGFtZS5jOjgyNQogbXNnaWQgIlByb2Nlc3Mgb25seSBsaW5lIHJhbmdlIG4sbSwgY291bnRpbmcgZnJvbSAxIgogbXNnc3RyICLQntCx0YDQsNCx0L7RgtCw0YLRjCDRgtC+0LvRjNC60L4g0YHRgtGA0L7QutC4INCyINC00LjQsNC/0LDQt9C+0L3QtSDQvdCw0YfQsNC70L4s0LrQvtC90LXRhiwg0L3QsNGH0LjQvdCw0Y8g0YEgMSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjg2OQorIzogYnVpbHRpbi9ibGFtZS5jOjg3NgogbXNnaWQgIi0tcHJvZ3Jlc3MgY2FuJ3QgYmUgdXNlZCB3aXRoIC0taW5jcmVtZW50YWwgb3IgcG9yY2VsYWluIGZvcm1hdHMiCiBtc2dzdHIgIi0tcHJvZ3Jlc3Mg0L3QtdC70YzQt9GPINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQvtC00L3QvtCy0YDQtdC80LXQvdC90L4g0YEgLS1pbmNyZW1lbnRhbCDQuNC70Lgg0LzQsNGI0LjQvdC+0YfQuNGC0LDQtdC80YvQvCAocG9yY2VsYWluKSDRhNC+0YDQvNCw0YLQvtC8IgogCkBAIC02OTc0LDExICs4NzE0LDExIEBACiAjLiBhbW9uZyB2YXJpb3VzIGZvcm1zIG9mIHJlbGF0aXZlIHRpbWVzdGFtcHMsIGJ1dAogIy4geW91ciBsYW5ndWFnZSBtYXkgbmVlZCBtb3JlIG9yIGZld2VyIGRpc3BsYXkKICMuIGNvbHVtbnMuCi0jOiBidWlsdGluL2JsYW1lLmM6OTIwCisjOiBidWlsdGluL2JsYW1lLmM6OTI3CiBtc2dpZCAiNCB5ZWFycywgMTEgbW9udGhzIGFnbyIKIG1zZ3N0ciAiNCDQs9C+0LTQsCDQuCAxMSDQvNC10YHRj9GG0LXQsiDQvdCw0LfQsNC0IgogCi0jOiBidWlsdGluL2JsYW1lLmM6MTAwNworIzogYnVpbHRpbi9ibGFtZS5jOjEwMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmlsZSAlcyBoYXMgb25seSAlbHUgbGluZSIKIG1zZ2lkX3BsdXJhbCAiZmlsZSAlcyBoYXMgb25seSAlbHUgbGluZXMiCkBAIC02OTg3LDE3MCArODcyNywxNzkgQEAKIG1zZ3N0clsyXSAi0YTQsNC50LsgJXMg0YHQvtC00LXRgNC20LjRgiDRgtC+0LvRjNC60L4gJWx1INGB0YLRgNC+0LoiCiBtc2dzdHJbM10gItGE0LDQudC7ICVzINGB0L7QtNC10YDQttC40YIg0YLQvtC70YzQutC+ICVsdSDRgdGC0YDQvtC60LgiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzoxMDUzCisjOiBidWlsdGluL2JsYW1lLmM6MTA3NwogbXNnaWQgIkJsYW1pbmcgbGluZXMiCiBtc2dzdHIgItCf0YDQvtGB0LzQvtGC0YAg0LDQstGC0L7RgNC+0LIg0YHRgtGA0L7QuiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyOAorIzogYnVpbHRpbi9icmFuY2guYzoyOQogbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1yIHwgLWFdIFstLW1lcmdlZCB8IC0tbm8tbWVyZ2VkXSIKIG1zZ3N0ciAiZ2l0IGJyYW5jaCBbPNC+0L/RhtC40Lg+XSBbLXIgfCAtYV0gWy0tbWVyZ2VkIHwgLS1uby1tZXJnZWRdIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI5CisjOiBidWlsdGluL2JyYW5jaC5jOjMwCiBtc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSBbLWxdIFstZl0gPGJyYW5jaC1uYW1lPiBbPHN0YXJ0LXBvaW50Pl0iCiBtc2dzdHIgImdpdCBicmFuY2ggWzzQvtC/0YbQuNC4Pl0gWy1sXSBbLWZdIDzQuNC80Y8t0LLQtdGC0LrQuD4gWzzRgtC+0YfQutCwLdC90LDRh9Cw0LvQsD5dIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjMwCisjOiBidWlsdGluL2JyYW5jaC5jOjMxCiBtc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSBbLXJdICgtZCB8IC1EKSA8YnJhbmNoLW5hbWU+Li4uIgogbXNnc3RyICJnaXQgYnJhbmNoIFs80L7Qv9GG0LjQuD5dIFstcl0gKC1kIHwgLUQpIDzQuNC80Y8t0LLQtdGC0LrQuD7igKYiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MzEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MzIKIG1zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dICgtbSB8IC1NKSBbPG9sZC1icmFuY2g+XSA8bmV3LWJyYW5jaD4iCiBtc2dzdHIgImdpdCBicmFuY2ggWzzQvtC/0YbQuNC4Pl0gKC1tIHwgLU0pIFs80YHRgtCw0YDQsNGPLdCy0LXRgtC60LA+XSA80L3QvtCy0LDRjy3QstC10YLQutCwPiIKIAotIzogYnVpbHRpbi9icmFuY2guYzozMgorIzogYnVpbHRpbi9icmFuY2guYzozMwogbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gKC1jIHwgLUMpIFs8b2xkLWJyYW5jaD5dIDxuZXctYnJhbmNoPiIKIG1zZ3N0ciAiZ2l0IGJyYW5jaCBbPNC+0L/RhtC40Lg+XSAoLWMgfCAtQykgWzzRgdGC0LDRgNCw0Y8t0LLQtdGC0LrQsD5dIDzQvdC+0LLQsNGPLdCy0LXRgtC60LA+IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjMzCisjOiBidWlsdGluL2JyYW5jaC5jOjM0CiBtc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSBbLXIgfCAtYV0gWy0tcG9pbnRzLWF0XSIKIG1zZ3N0ciAiZ2l0IGJyYW5jaCBbPNC+0L/RhtC40Lg+XSBbLXIgfCAtYV0gWy0tcG9pbnRzLWF0XSIKIAotIzogYnVpbHRpbi9icmFuY2guYzozNAorIzogYnVpbHRpbi9icmFuY2guYzozNQogbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1yIHwgLWFdIFstLWZvcm1hdF0iCiBtc2dzdHIgImdpdCBicmFuY2ggWzzQvtC/0YbQuNC4Pl0gWy1yIHwgLWFdIFstLWZvcm1hdF0iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTQzCisjOiBidWlsdGluL2JyYW5jaC5jOjE1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZGVsZXRpbmcgYnJhbmNoICclcycgdGhhdCBoYXMgYmVlbiBtZXJnZWQgdG9cbiIKICIgICAgICAgICAnJXMnLCBidXQgbm90IHlldCBtZXJnZWQgdG8gSEVBRC4iCiBtc2dzdHIgItGD0LTQsNC70LXQvdC40LUg0LLQtdGC0LrQuCDCqyVzwrssINC60L7RgtC+0YDQsNGPINCx0YvQu9CwINGB0LvQuNGC0LAg0YFcbiAgICAgICAgIMKrJXPCuywg0L3QviDQvdC1INGB0LvQuNGC0LAg0YEgSEVBRC4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTQ3CisjOiBidWlsdGluL2JyYW5jaC5jOjE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibm90IGRlbGV0aW5nIGJyYW5jaCAnJXMnIHRoYXQgaXMgbm90IHlldCBtZXJnZWQgdG9cbiIKICIgICAgICAgICAnJXMnLCBldmVuIHRob3VnaCBpdCBpcyBtZXJnZWQgdG8gSEVBRC4iCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQtdC90LjQtSDQstC10YLQutC4IMKrJXPCuywg0LrQvtGC0L7RgNCw0Y8g0LXRidC1INC90LUg0YHQu9C40YLQsCDRgVxuICAgICAgICAgwqslc8K7LCDRhdC+0YLRjyDRg9C20LUg0YHQu9C40YLQsCDRgSBIRUFELiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxNjEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkbid0IGxvb2sgdXAgY29tbWl0IG9iamVjdCBmb3IgJyVzJyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INC+0LHRitC10LrRgiDQutC+0LzQvNC40YLQsCDQtNC70Y8gwqslc8K7IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE2NQorIzogYnVpbHRpbi9icmFuY2guYzoxNzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBicmFuY2ggJyVzJyBpcyBub3QgZnVsbHkgbWVyZ2VkLlxuIgogIklmIHlvdSBhcmUgc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgaXQsIHJ1biAnZ2l0IGJyYW5jaCAtRCAlcycuIgogbXNnc3RyICLQktC10YLQutCwIMKrJXPCuyDQvdC1INGB0LvQuNGC0LAg0L/QvtC70L3QvtGB0YLRjNGOLlxu0JXRgdC70Lgg0LLRiyDRg9Cy0LXRgNC10L3Riywg0YfRgtC+INGF0L7RgtC40YLQtSDQtdC1INGD0LTQsNC70LjRgtGMLCDQt9Cw0L/Rg9GB0YLQuNGC0LUgwqtnaXQgYnJhbmNoIC1EICVzwrsuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE3OAorIzogYnVpbHRpbi9icmFuY2guYzoxODYKIG1zZ2lkICJVcGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC+0LHQvdC+0LLQuNGC0Ywg0YTQsNC50Lsg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC4IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjIwOQorIzogYnVpbHRpbi9icmFuY2guYzoyMTcKIG1zZ2lkICJjYW5ub3QgdXNlIC1hIHdpdGggLWQiCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+INC60LvRjtGH0LggLWEg0LggLWQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjE1CisjOiBidWlsdGluL2JyYW5jaC5jOjIyMwogbXNnaWQgIkNvdWxkbid0IGxvb2sgdXAgY29tbWl0IG9iamVjdCBmb3IgSEVBRCIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INC+0LHRitC10LrRgiDQutC+0LzQvNC40YLQsCDQtNC70Y8gSEVBRCIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBkZWxldGUgYnJhbmNoICclcycgY2hlY2tlZCBvdXQgYXQgJyVzJyIKIG1zZ3N0ciAi0J3QtdC70YzQt9GPINGD0LTQsNC70LjRgtGMINCy0LXRgtC60YMgwqslc8K7INGCLtC6LiDQvtC90LAg0LDQutGC0LjQstC90LAg0L3QsCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjQ0CisjOiBidWlsdGluL2JyYW5jaC5jOjI1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZW1vdGUtdHJhY2tpbmcgYnJhbmNoICclcycgbm90IGZvdW5kLiIKIG1zZ3N0ciAi0LLQvdC10YjQvdGP0Y8g0L7RgtGB0LvQtdC20LjQstCw0LXQvNCw0Y8g0LLQtdGC0LrQsCDCqyVzwrsg0L3QtSDQvdCw0LnQtNC10L3QsC4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjQ1CisjOiBidWlsdGluL2JyYW5jaC5jOjI1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJicmFuY2ggJyVzJyBub3QgZm91bmQuIgogbXNnc3RyICLQstC10YLQutCwIMKrJXPCuyDQvdC1INC90LDQudC00LXQvdCwLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNjAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkVycm9yIGRlbGV0aW5nIHJlbW90ZS10cmFja2luZyBicmFuY2ggJyVzJyIKIG1zZ3N0ciAi0J7RiNC40LHQutCwINGD0LTQsNC70LXQvdC40Y8g0LLQvdC10YjQvdC10Lkg0L7RgtGB0LvQtdC20LjQstCw0LXQvNC+0Lkg0LLQtdGC0LrQuCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjYxCisjOiBidWlsdGluL2JyYW5jaC5jOjI2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJFcnJvciBkZWxldGluZyBicmFuY2ggJyVzJyIKIG1zZ3N0ciAi0J7RiNC40LHQutCwINGD0LTQsNC70LXQvdC40Y8g0LLQtdGC0LrQuCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjY4CisjOiBidWlsdGluL2JyYW5jaC5jOjI3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWxldGVkIHJlbW90ZS10cmFja2luZyBicmFuY2ggJXMgKHdhcyAlcykuXG4iCiBtc2dzdHIgItCS0L3QtdGI0L3Rj9GPINC+0YLRgdC70LXQttC40LLQsNC10LzQsNGPINCy0LXRgtC60LAgJXMg0YPQtNCw0LvQtdC90LAgKNCx0YvQu9CwICVzKS5cbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgYnJhbmNoICVzICh3YXMgJXMpLlxuIgogbXNnc3RyICLQktC10YLQutCwICVzINGD0LTQsNC70LXQvdCwICjQsdGL0LvQsCAlcykuXG4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDEzIGJ1aWx0aW4vdGFnLmM6NTkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDIxIGJ1aWx0aW4vdGFnLmM6NjAKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgZm9ybWF0IHN0cmluZyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0LfQvtCx0YDQsNGC0Ywg0YHRgtGA0L7QutGDINGE0L7RgNC80LDRgtCwIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ1MAorIzogYnVpbHRpbi9icmFuY2guYzo0NTIKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgKCVzKSBwb2ludHMgb3V0c2lkZSBvZiByZWZzL2hlYWRzLyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJXMgaXMgYmVpbmcgcmViYXNlZCBhdCAlcyIKIG1zZ3N0ciAi0J/RgNC+0LjQt9Cy0L7QtNC40YLRgdGPINC/0LXRgNC10LzQtdGJ0LXQvdC40LUg0LLQtdGC0LrQuCAlcyDQvdCwICVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ1NAorIzogYnVpbHRpbi9icmFuY2guYzo0NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICVzIGlzIGJlaW5nIGJpc2VjdGVkIGF0ICVzIgogbXNnc3RyICLQn9GA0L7QuNC30LLQvtC00LjRgtGB0Y8g0LTQstC+0LjRh9C90YvQuSDQv9C+0LjRgdC6INCyINCy0LXRgtC60LUgJXMg0L3QsCAlcyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0NzEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDk0CiBtc2dpZCAiY2Fubm90IGNvcHkgdGhlIGN1cnJlbnQgYnJhbmNoIHdoaWxlIG5vdCBvbiBhbnkuIgogbXNnc3RyICLQvdC10LLQvtC30LzQvtC20L3QviDRgdC60L7Qv9C40YDQvtCy0LDRgtGMINGC0LXQutGD0YnRg9GOINCy0LXRgtC60YMsINC10YHQu9C4INCy0Ysg0L3QtSDQvdCw0YXQvtC00LjRgtC10YHRjCDQvdC4INC90LAg0L7QtNC90L7QuSDQuNC3INCy0LXRgtC+0LouIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ3MworIzogYnVpbHRpbi9icmFuY2guYzo0OTYKIG1zZ2lkICJjYW5ub3QgcmVuYW1lIHRoZSBjdXJyZW50IGJyYW5jaCB3aGlsZSBub3Qgb24gYW55LiIKIG1zZ3N0ciAi0L3QtdCy0L7Qt9C80L7QttC90L4g0L/QtdGA0LXQuNC80LXQvdC+0LLQsNGC0Ywg0YLQtdC60YPRidGD0Y4g0LLQtdGC0LrRgywg0LXRgdC70Lgg0LLRiyDQvdC1INC90LDRhdC+0LTQuNGC0LXRgdGMINC90Lgg0L3QsCDQvtC00L3QvtC5INC40Lcg0L3QuNGFLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0ODQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTA3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgYnJhbmNoIG5hbWU6ICclcyciCiBtc2dzdHIgItCd0LXQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3QvtC1INC40LzRjyDQstC10YLQutC4OiDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTExCisjOiBidWlsdGluL2JyYW5jaC5jOjUzNAogbXNnaWQgIkJyYW5jaCByZW5hbWUgZmFpbGVkIgogbXNnc3RyICLQodCx0L7QuSDQv9C10YDQtdC40LzQtdC90L7QstCw0L3QuNGPINCy0LXRgtC60LgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTEzCisjOiBidWlsdGluL2JyYW5jaC5jOjUzNgogbXNnaWQgIkJyYW5jaCBjb3B5IGZhaWxlZCIKIG1zZ3N0ciAi0KHQsdC+0Lkg0LrQvtC/0LjRgNC+0LLQsNC90LjRjyDQstC10YLQutC4IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUxNworIzogYnVpbHRpbi9icmFuY2guYzo1NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3JlYXRlZCBhIGNvcHkgb2YgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyIKIG1zZ3N0ciAi0KHQvtC30LTQsNC90LAg0LrQvtC/0LjRjyDQvdC10L/RgNCw0LLQuNC70YzQvdC+INC90LDQt9Cy0LDQvdC90L7QuSDQstC10YLQutC4IMKrJXPCuyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MjAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbmFtZWQgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyBhd2F5IgogbXNnc3RyICLQn9C10YDQtdC40LzQtdC90L7QstCw0L3QsCDQvdC10L/RgNCw0LLQuNC70YzQvdC+INC90LDQt9Cy0LDQvdC90LDRjyDQstC10YLQutCwIMKrJXPCuyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MjYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCByZW5hbWVkIHRvICVzLCBidXQgSEVBRCBpcyBub3QgdXBkYXRlZCEiCiBtc2dzdHIgItCS0LXRgtC60LAg0L/QtdGA0LXQuNC80LXQvdC+0LLQsNC90LAg0LIgJXMsINC90L4gSEVBRCDQvdC1INC+0LHQvdC+0LLQu9C10L0hIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUzNQorIzogYnVpbHRpbi9icmFuY2guYzo1NTgKIG1zZ2lkICJCcmFuY2ggaXMgcmVuYW1lZCwgYnV0IHVwZGF0ZSBvZiBjb25maWctZmlsZSBmYWlsZWQiCiBtc2dzdHIgItCS0LXRgtC60LAg0L/QtdGA0LXQuNC80LXQvdC+0LLQsNC90LAsINC90L4g0L/RgNC+0LjQt9C+0YjQtdC7INGB0LHQvtC5INC+0LHQvdC+0LLQu9C10L3QuNGPINGE0LDQudC70LAg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC4IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUzNworIzogYnVpbHRpbi9icmFuY2guYzo1NjAKIG1zZ2lkICJCcmFuY2ggaXMgY29waWVkLCBidXQgdXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKIG1zZ3N0ciAi0JLQtdGC0LrQsCDRgdC60L7Qv9C40YDQvtCy0LDQvdCwLCDQvdC+INC/0YDQvtC40LfQvtGI0LXQuyDRgdCx0L7QuSDQvtCx0L3QvtCy0LvQtdC90LjRjyDRhNCw0LnQu9CwINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1NTMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQbGVhc2UgZWRpdCB0aGUgZGVzY3JpcHRpb24gZm9yIHRoZSBicmFuY2hcbiIKQEAgLTcxNTgsMjIzICs4OTA3LDIxMyBAQAogIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIHN0cmlwcGVkLlxuIgogbXNnc3RyICLQmNC30LzQtdC90LjRgtC1INC+0L/QuNGB0LDQvdC40LUg0LTQu9GPINCy0LXRgtC60Lg6XG4gICVzXG7QodGC0YDQvtC60LgsINC90LDRh9C40L3QsNGO0YnQuNC10YHRjyDRgSDCqyVjwrsg0LHRg9C00YPRgiDQstGL0YDQtdC30LDQvdGLLlxuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5NAorIzogYnVpbHRpbi9icmFuY2guYzo2MTAKIG1zZ2lkICJHZW5lcmljIG9wdGlvbnMiCiBtc2dzdHIgItCe0LHRidC40LUg0L/QsNGA0LDQvNC10YLRgNGLIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5NgorIzogYnVpbHRpbi9icmFuY2guYzo2MTIKIG1zZ2lkICJzaG93IGhhc2ggYW5kIHN1YmplY3QsIGdpdmUgdHdpY2UgZm9yIHVwc3RyZWFtIGJyYW5jaCIKLW1zZ3N0ciAi0L/QvtC60LDQt9GL0LLQsNGC0Ywg0YXRjdGILdGB0YPQvNC80YMg0Lgg0YLQtdC80YMsINGD0LrQsNC20LjRgtC1INC00LLQsNC20LTRiyDQtNC70Y8g0LLRi9GI0LXRgdGC0L7Rj9GJ0LXQuSDQstC10YLQutC4IgorbXNnc3RyICLQv9C+0LrQsNC30YvQstCw0YLRjCDRhdC10Ygt0YHRg9C80LzRgyDQuCDRgtC10LzRgywg0YPQutCw0LbQuNGC0LUg0LTQstCw0LbQtNGLINC00LvRjyDQstGL0YjQtdGB0YLQvtGP0YnQtdC5INCy0LXRgtC60LgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTk3CisjOiBidWlsdGluL2JyYW5jaC5jOjYxMwogbXNnaWQgInN1cHByZXNzIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMiCiBtc2dzdHIgItC90LUg0LLRi9Cy0L7QtNC40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3Ri9C1INGB0L7QvtCx0YnQtdC90LjRjyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE0CiBtc2dpZCAic2V0IHVwIHRyYWNraW5nIG1vZGUgKHNlZSBnaXQtcHVsbCgxKSkiCiBtc2dzdHIgItGD0YHRgtCw0L3QvtCy0LjRgtGMINGA0LXQttC40Lwg0L7RgtGB0LvQtdC20LjQstCw0L3QuNGPINCy0YvRiNC10YHRgtC+0Y/RidC10Lkg0LLQtdGC0LrQuCAo0YHQvC4gZ2l0LXB1bGwoMSkpIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMAorIzogYnVpbHRpbi9icmFuY2guYzo2MTYKIG1zZ2lkICJkbyBub3QgdXNlIgogbXNnc3RyICLQvdC1INC40YHQv9C+0LvRjNC30YPQudGC0LUiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjAyCisjOiBidWlsdGluL2JyYW5jaC5jOjYxOCBidWlsdGluL3JlYmFzZS5jOjQ4NQogbXNnaWQgInVwc3RyZWFtIgogbXNnc3RyICLQstGL0YjQtdGB0YLQvtGP0YnQsNGPIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMgorIzogYnVpbHRpbi9icmFuY2guYzo2MTgKIG1zZ2lkICJjaGFuZ2UgdGhlIHVwc3RyZWFtIGluZm8iCiBtc2dzdHIgItC40LfQvNC10L3QuNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0LLRi9GI0LXRgdGC0L7Rj9GJ0LXQuSDQstC10YLQutC1IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMworIzogYnVpbHRpbi9icmFuY2guYzo2MTkKIG1zZ2lkICJVbnNldCB0aGUgdXBzdHJlYW0gaW5mbyIKIG1zZ3N0ciAi0KPQsdGA0LDRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INCy0YvRiNC10YHRgtC+0Y/RidC10Lkg0LLQtdGC0LrQtSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIwCiBtc2dpZCAidXNlIGNvbG9yZWQgb3V0cHV0IgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YbQstC10YLQvdC+0Lkg0LLRi9Cy0L7QtCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIxCiBtc2dpZCAiYWN0IG9uIHJlbW90ZS10cmFja2luZyBicmFuY2hlcyIKIG1zZ3N0ciAi0LLRi9C/0L7Qu9C90LjRgtGMINC00LXQudGB0YLQstC40Y8g0L3QsCDQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvRhSDQstC90LXRiNC90LjRhSDQstC10YLQutCw0YUiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA3IGJ1aWx0aW4vYnJhbmNoLmM6NjA5CisjOiBidWlsdGluL2JyYW5jaC5jOjYyMyBidWlsdGluL2JyYW5jaC5jOjYyNQogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgItCy0YvQstC+0LQg0YLQvtC70YzQutC+INCy0LXRgtC+0LosINC60L7RgtC+0YDRi9C1INGB0L7QtNC10YDQttCw0YIg0LrQvtC80LzQuNGCIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwOCBidWlsdGluL2JyYW5jaC5jOjYxMAorIzogYnVpbHRpbi9icmFuY2guYzo2MjQgYnVpbHRpbi9icmFuY2guYzo2MjYKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICLQstGL0LLQvtC0INGC0L7Qu9GM0LrQviDQstC10YLQvtC6LCDQutC+0YLQvtGA0YvQtSDQvdC1INGB0L7QtNC10YDQttCw0YIg0LrQvtC80LzQuNGCIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxMworIzogYnVpbHRpbi9icmFuY2guYzo2MjkKIG1zZ2lkICJTcGVjaWZpYyBnaXQtYnJhbmNoIGFjdGlvbnM6IgogbXNnc3RyICLQodC/0LXRhtC40YTQuNGH0L3Ri9C1INC00LvRjyBnaXQtYnJhbmNoINC00LXQudGB0YLQstC40Y86IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxNAorIzogYnVpbHRpbi9icmFuY2guYzo2MzAKIG1zZ2lkICJsaXN0IGJvdGggcmVtb3RlLXRyYWNraW5nIGFuZCBsb2NhbCBicmFuY2hlcyIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDRgdC/0LjRgdC+0Log0Lgg0L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0YUg0Lgg0LvQvtC60LDQu9GM0L3Ri9GFINCy0LXRgtC+0LoiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE2CisjOiBidWlsdGluL2JyYW5jaC5jOjYzMgogbXNnaWQgImRlbGV0ZSBmdWxseSBtZXJnZWQgYnJhbmNoIgogbXNnc3RyICLRg9C00LDQu9C40YLRjCDQv9C+0LvQvdC+0YHRgtGM0Y4g0YHQu9C40YLRg9GOINCy0LXRgtC60YMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE3CisjOiBidWlsdGluL2JyYW5jaC5jOjYzMwogbXNnaWQgImRlbGV0ZSBicmFuY2ggKGV2ZW4gaWYgbm90IG1lcmdlZCkiCiBtc2dzdHIgItGD0LTQsNC70LjRgtGMINCy0LXRgtC60YMgKNC00LDQttC1INC90LjQutGD0LTQsCDQvdC1INGB0LvQuNGC0YPRjikiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE4CisjOiBidWlsdGluL2JyYW5jaC5jOjYzNAogbXNnaWQgIm1vdmUvcmVuYW1lIGEgYnJhbmNoIGFuZCBpdHMgcmVmbG9nIgogbXNnc3RyICLQv9C10YDQtdC80LXRgdGC0LjRgtGML9C/0LXRgNC10LjQvNC10L3QvtCy0LDRgtGMINCy0LXRgtC60Lgg0Lgg0LXQtSDQttGD0YDQvdCw0Lsg0YHRgdGL0LvQvtC6IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxOQorIzogYnVpbHRpbi9icmFuY2guYzo2MzUKIG1zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCwgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgogbXNnc3RyICLQv9C10YDQtdC80LXRgdGC0LjRgtGML9C/0LXRgNC10LjQvNC10L3QvtCy0LDRgtGMINCy0LXRgtC60YMsINC00LDQttC1INC10YHQu9C4INGG0LXQu9C10LLQvtC1INC40LzRjyDRg9C20LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIwCisjOiBidWlsdGluL2JyYW5jaC5jOjYzNgogbXNnaWQgImNvcHkgYSBicmFuY2ggYW5kIGl0cyByZWZsb2ciCiBtc2dzdHIgItGB0LrQvtC/0LjRgNC+0LLQsNGC0Ywg0LLQtdGC0LrRgyDQuCDQtdGRINC20YPRgNC90LDQuyDRgdGB0YvQu9C+0LoiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIxCisjOiBidWlsdGluL2JyYW5jaC5jOjYzNwogbXNnaWQgImNvcHkgYSBicmFuY2gsIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAi0YHQutC+0L/QuNGA0L7QstCw0YLRjCDQstC10YLQutGDLCDQtNCw0LbQtSDQtdGB0LvQuCDRhtC10LvQtdCy0L7QtSDQuNC80Y8g0YPQttC1INGB0YPRidC10YHRgtCy0YPQtdGCIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMgorIzogYnVpbHRpbi9icmFuY2guYzo2MzgKIG1zZ2lkICJsaXN0IGJyYW5jaCBuYW1lcyIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDRgdC/0LjRgdC+0Log0LjQvNC10L0g0LLQtdGC0L7QuiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM5Cittc2dpZCAic2hvdyBjdXJyZW50IGJyYW5jaCBuYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQwCiBtc2dpZCAiY3JlYXRlIHRoZSBicmFuY2gncyByZWZsb2ciCiBtc2dzdHIgItGB0L7Qt9C00LDRgtGMINC20YPRgNC90LDQuyDRgdGB0YvQu9C+0Log0LLQtdGC0LrQuCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjYKLW1zZ2lkICJkZXByZWNhdGVkIHN5bm9ueW0gZm9yIC0tY3JlYXRlLXJlZmxvZyIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzMQorIzogYnVpbHRpbi9icmFuY2guYzo2NDIKIG1zZ2lkICJlZGl0IHRoZSBkZXNjcmlwdGlvbiBmb3IgdGhlIGJyYW5jaCIKIG1zZ3N0ciAi0LjQt9C80LXQvdC40YLRjCDQvtC/0LjRgdCw0L3QuNC1INCy0LXRgtC60LgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMyCisjOiBidWlsdGluL2JyYW5jaC5jOjY0MwogbXNnaWQgImZvcmNlIGNyZWF0aW9uLCBtb3ZlL3JlbmFtZSwgZGVsZXRpb24iCiBtc2dzdHIgItC/0YDQuNC90YPQtNC40YLQtdC70YzQvdC+0LUg0YHQvtC30LTQsNC90LjQtSwg0L/QtdGA0LXQvNC10YnQtdC90LjQtSDQuNC70Lgg0YPQtNCw0LvQtdC90LjQtSDQstC10YLQutC4IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzMworIzogYnVpbHRpbi9icmFuY2guYzo2NDQKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAi0LLRi9Cy0L7QtCDRgtC+0LvRjNC60L4g0YHQu9C40YLRi9GFINCy0LXRgtC+0LoiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM0CisjOiBidWlsdGluL2JyYW5jaC5jOjY0NQogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBhcmUgbm90IG1lcmdlZCIKIG1zZ3N0ciAi0LLRi9Cy0L7QtCDRgtC+0LvRjNC60L4g0L3QtSDRgdC70LjRgtGL0YUg0LLQtdGC0L7QuiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MzUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ2CiBtc2dpZCAibGlzdCBicmFuY2hlcyBpbiBjb2x1bW5zIgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMINGB0L/QuNGB0L7QuiDQstC10YLQvtC6INC/0L4g0YHRgtC+0LvQsdGG0LDQvCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MzYgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MCBidWlsdGluL2xzLXJlbW90ZS5jOjcwCi0jOiBidWlsdGluL3RhZy5jOjQxMwotbXNnaWQgImtleSIKLW1zZ3N0ciAi0LrQu9GO0YciCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDEgYnVpbHRpbi9scy1yZW1vdGUuYzo3MQotIzogYnVpbHRpbi90YWcuYzo0MTQKLW1zZ2lkICJmaWVsZCBuYW1lIHRvIHNvcnQgb24iCi1tc2dzdHIgItC40LzRjyDQv9C+0LvRjywg0L/QviDQutC+0YLQvtGA0L7QvNGDINCy0YvQv9C+0LvQvdC40YLRjCDRgdC+0YDRgtC40YDQvtCy0LrRgyIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MzkgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MyBidWlsdGluL25vdGVzLmM6NDEwCi0jOiBidWlsdGluL25vdGVzLmM6NDEzIGJ1aWx0aW4vbm90ZXMuYzo1NzMgYnVpbHRpbi9ub3Rlcy5jOjU3NgotIzogYnVpbHRpbi90YWcuYzo0MTYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ5IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIgYnVpbHRpbi9ub3Rlcy5jOjQxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQxOCBidWlsdGluL25vdGVzLmM6NTgxIGJ1aWx0aW4vbm90ZXMuYzo1ODQKKyM6IGJ1aWx0aW4vdGFnLmM6NDI3CiBtc2dpZCAib2JqZWN0IgogbXNnc3RyICLQvtCx0YrQtdC60YIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQwCisjOiBidWlsdGluL2JyYW5jaC5jOjY1MAogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgb2YgdGhlIG9iamVjdCIKIG1zZ3N0ciAi0LLRi9Cy0L7QtCDRgtC+0LvRjNC60L4g0LLQtdGC0L7Quiwg0L7Qv9GA0LXQtNC10LvQtdC90L3QvtCz0L4g0L7QsdGK0LXQutGC0LAiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQyIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDkgYnVpbHRpbi90YWcuYzo0MjMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUyIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDggYnVpbHRpbi90YWcuYzo0MzQKIG1zZ2lkICJzb3J0aW5nIGFuZCBmaWx0ZXJpbmcgYXJlIGNhc2UgaW5zZW5zaXRpdmUiCiBtc2dzdHIgItGB0L7RgNGC0LjRgNC+0LLQutCwINC4INGE0LjQu9GM0YLRgNCw0YbQuNGPINC90LUg0LfQsNCy0LjRgdGP0YIg0L7RgiDRgNC10LPQuNGB0YLRgNCwIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjY0MyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4IGJ1aWx0aW4vdGFnLmM6NDIxCisjOiBidWlsdGluL2JyYW5jaC5jOjY1MyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4IGJ1aWx0aW4vdGFnLmM6NDMyCiAjOiBidWlsdGluL3ZlcmlmeS10YWcuYzozOQogbXNnaWQgImZvcm1hdCB0byB1c2UgZm9yIHRoZSBvdXRwdXQiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRhNC+0YDQvNCw0YIg0LTQu9GPINCy0YvQstC+0LTQsCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2NjYgYnVpbHRpbi9jbG9uZS5jOjczOQorIzogYnVpbHRpbi9icmFuY2guYzo2NzYgYnVpbHRpbi9jbG9uZS5jOjc0OAogbXNnaWQgIkhFQUQgbm90IGZvdW5kIGJlbG93IHJlZnMvaGVhZHMhIgogbXNnc3RyICJIRUFEINC90LUg0L3QsNC50LTQtdC9INCyIHJlZnMvaGVhZHMhIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjY4OQorIzogYnVpbHRpbi9icmFuY2guYzo3MDAKIG1zZ2lkICItLWNvbHVtbiBhbmQgLS12ZXJib3NlIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0tY29sdW1uINC4IC0tdmVyYm9zZSDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0LTQvdC+0LLRgNC10LzQtdC90L3QviIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MDkgYnVpbHRpbi9icmFuY2guYzo3NjEgYnVpbHRpbi9icmFuY2guYzo3NzAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzE1IGJ1aWx0aW4vYnJhbmNoLmM6NzY5IGJ1aWx0aW4vYnJhbmNoLmM6Nzc4CiBtc2dpZCAiYnJhbmNoIG5hbWUgcmVxdWlyZWQiCiBtc2dzdHIgItGC0YDQtdCx0YPQtdGC0YHRjyDQuNC80Y8g0LLQtdGC0LrQuCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzQ1CiBtc2dpZCAiQ2Fubm90IGdpdmUgZGVzY3JpcHRpb24gdG8gZGV0YWNoZWQgSEVBRCIKIG1zZ3N0ciAi0J3QtdC70YzQt9GPINC00LDRgtGMINC+0L/QuNGB0LDQvdC40LUg0L7RgtC00LXQu9GR0L3QvdC+0LzRgyBIRUFEIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc0MgorIzogYnVpbHRpbi9icmFuY2guYzo3NTAKIG1zZ2lkICJjYW5ub3QgZWRpdCBkZXNjcmlwdGlvbiBvZiBtb3JlIHRoYW4gb25lIGJyYW5jaCIKIG1zZ3N0ciAi0L3QtdC70YzQt9GPINC40LfQvNC10L3QuNGC0Ywg0L7Qv9C40YHQsNC90LjQtSDQsdC+0LvQtdC1INC+0LTQvdC+0Lkg0LLQtdGC0LrQuCDQt9CwINGA0LDQtyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NDkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIGNvbW1pdCBvbiBicmFuY2ggJyVzJyB5ZXQuIgogbXNnc3RyICLQldGJ0LUg0L3QtdGCINC60L7QvNC80LjRgtCwINC90LAg0LLQtdGC0LrQtSDCqyVzwrsuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc1MgorIzogYnVpbHRpbi9icmFuY2guYzo3NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gYnJhbmNoIG5hbWVkICclcycuIgogbXNnc3RyICLQndC10YIg0LLQtdGC0LrQuCDRgSDQuNC80LXQvdC10Lwgwqslc8K7LiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NjcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzc1CiBtc2dpZCAidG9vIG1hbnkgYnJhbmNoZXMgZm9yIGEgY29weSBvcGVyYXRpb24iCiBtc2dzdHIgItGB0LvQuNGI0LrQvtC8INC80L3QvtCz0L4g0LLQtdGC0L7QuiDQtNC70Y8g0L7Qv9C10YDQsNGG0LjQuCDQutC+0L/QuNGA0L7QstCw0L3QuNGPIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc3NgorIzogYnVpbHRpbi9icmFuY2guYzo3ODQKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgZm9yIGEgcmVuYW1lIG9wZXJhdGlvbiIKIG1zZ3N0ciAi0YHQu9C40YjQutC+0Lwg0LzQvdC+0LPQviDQsNGA0LPRg9C80LXQvdGC0L7QsiDQtNC70Y8g0L7Qv9C10YDQsNGG0LjQuCDQv9C10YDQtdC40LzQtdC90L7QstCw0L3QuNGPIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc4MQorIzogYnVpbHRpbi9icmFuY2guYzo3ODkKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgdG8gc2V0IG5ldyB1cHN0cmVhbSIKIG1zZ3N0ciAi0YHQu9C40YjQutC+0Lwg0LzQvdC+0LPQviDQsNGA0LPRg9C80LXQvdGC0L7QsiDQtNC70Y8g0YPQutCw0LfQsNC90LjRjyDQvdC+0LLQvtC5INCy0YvRiNC10YHRgtC+0Y/RidC10Lkg0LLQtdGC0LrQuCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3ODUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjb3VsZCBub3Qgc2V0IHVwc3RyZWFtIG9mIEhFQUQgdG8gJXMgd2hlbiBpdCBkb2VzIG5vdCBwb2ludCB0byBhbnkgYnJhbmNoLiIKIG1zZ3N0ciAi0L3QtdCy0L7Qt9C80L7QttC90L4g0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0LLRi9GI0LXRgdGC0L7Rj9GJ0LjQuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5INC00LvRjyBIRUFEINC90LAgJXMsINGC0LDQuiDQutCw0Log0L7QvSDQvdC1INGD0LrQsNC30YvQstCw0LXRgiDQvdC4INC90LAg0L7QtNC90YMg0LLQtdGC0LrRgy4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzg4IGJ1aWx0aW4vYnJhbmNoLmM6ODEwIGJ1aWx0aW4vYnJhbmNoLmM6ODI2CisjOiBidWlsdGluL2JyYW5jaC5jOjc5NiBidWlsdGluL2JyYW5jaC5jOjgxOQogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIGJyYW5jaCAnJXMnIgogbXNnc3RyICLQvdC10YIg0YLQsNC60L7QuSDQstC10YLQutC4IMKrJXPCuyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3OTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICLQstC10YLQutCwIMKrJXPCuyDQvdC1INGB0YPRidC10YHRgtCy0YPQtdGCIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjgwNAorIzogYnVpbHRpbi9icmFuY2guYzo4MTMKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgdG8gdW5zZXQgdXBzdHJlYW0iCiBtc2dzdHIgItGB0LvQuNGI0LrQvtC8INC80L3QvtCz0L4g0LDRgNCz0YPQvNC10L3RgtC+0LIg0LTQu9GPINGB0LHRgNC+0YHQsCDRg9C60LDQt9Cw0L3QuNGPINCy0YvRiNC10YHRgtC+0Y/RidC10Lkg0LLQtdGC0LrQuCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MDgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODE3CiBtc2dpZCAiY291bGQgbm90IHVuc2V0IHVwc3RyZWFtIG9mIEhFQUQgd2hlbiBpdCBkb2VzIG5vdCBwb2ludCB0byBhbnkgYnJhbmNoLiIKIG1zZ3N0ciAi0L3QtdCy0L7Qt9C80L7QttC90L4g0YPQsdGA0LDRgtGMINCy0YvRiNC10YHRgtC+0Y/RidC40Lkg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuSDQtNC70Y8gSEVBRCwg0YLQsNC6INC60LDQuiDQvtC9INC90LUg0YPQutCw0LfRi9Cy0LDQtdGCINC90Lgg0L3QsCDQvtC00L3RgyDQstC10YLQutGDLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MTQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIGhhcyBubyB1cHN0cmVhbSBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAi0JLQtdGC0LrQsCDCqyVzwrsg0L3QtSDQuNC80LXQtdGCINC40L3RhNC+0YDQvNCw0YbQuNC4INC+INCy0YvRiNC10YHRgtC+0Y/RidC10Lkg0LLQtdGC0LrQtSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODMzCiBtc2dpZCAiLWEgYW5kIC1yIG9wdGlvbnMgdG8gJ2dpdCBicmFuY2gnIGRvIG5vdCBtYWtlIHNlbnNlIHdpdGggYSBicmFuY2ggbmFtZSIKIG1zZ3N0ciAi0L/QsNGA0LDQvNC10YLRgNGLIC1hINC4IC1yINC00LvRjyDCq2dpdCBicmFuY2jCuyDQvdC1INC40LzQtdGO0YIg0YHQvNGL0YHQu9CwINGBINGD0LrQsNC30LDQvdC40LXQvCDQuNC80LXQvdC4INCy0LXRgtC60LgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6ODMyCisjOiBidWlsdGluL2JyYW5jaC5jOjgzNgogbXNnaWQgIiIKICJ0aGUgJy0tc2V0LXVwc3RyZWFtJyBvcHRpb24gaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZC4gUGxlYXNlIHVzZSAnLS10cmFjaycgb3IgIgogIictLXNldC11cHN0cmVhbS10bycgaW5zdGVhZC4iCkBAIC03MzkzLDEzOSArOTEzMiwxNDQgQEAKIG1zZ2lkICJOZWVkIGEgcmVwb3NpdG9yeSB0byB1bmJ1bmRsZS4iCiBtc2dzdHIgItCi0YDQtdCx0YPQtdGC0YHRjyDRgNC10L/QvtC30LjRgtC+0YDQuNC5INC00LvRjyDRgNCw0YHQv9Cw0LrQvtCy0LrQuC4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1NzcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1OTMKIG1zZ2lkICIiCiAiZ2l0IGNhdC1maWxlICgtdCBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1lIHwgIgogIi1wIHwgPHR5cGU+IHwgLS10ZXh0Y29udiB8IC0tZmlsdGVycykgWy0tcGF0aD08cGF0aD5dIDxvYmplY3Q+IgogbXNnc3RyICJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtcCB8IDzRgtC40L8+IHwgLS10ZXh0Y29udiB8IC0tZmlsdGVycykgWy0tcGF0aD080L/Rg9GC0Yw+XSA80L7QsdGK0LXQutGCPiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU3OAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU5NAogbXNnaWQgIiIKICJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgIgogIi0tZmlsdGVyc10iCiBtc2dzdHIgImdpdCBjYXQtZmlsZSAoLS1iYXRjaCB8IC0tYmF0Y2gtY2hlY2spIFstLWZvbGxvdy1zeW1saW5rc10gWy0tdGV4dGNvbnYgfCAtLWZpbHRlcnNdIgogCiAjOiBidWlsdGluL2NhdC1maWxlLmM6NjE1Cittc2dpZCAib25seSBvbmUgYmF0Y2ggb3B0aW9uIG1heSBiZSBzcGVjaWZpZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzMwogbXNnaWQgIjx0eXBlPiBjYW4gYmUgb25lIG9mOiBibG9iLCB0cmVlLCBjb21taXQsIHRhZyIKIG1zZ3N0ciAiPNGC0LjQvz4g0LzQvtC20LXRgiDQsdGL0YLRjCDQvtC00L3QuNC8INC40Lc6IGJsb2IsIHRyZWUsIGNvbW1pdCwgdGFnIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjE2CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM0CiBtc2dpZCAic2hvdyBvYmplY3QgdHlwZSIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDRgtC40L8g0L7QsdGK0LXQutGC0LAiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MTcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzUKIG1zZ2lkICJzaG93IG9iamVjdCBzaXplIgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMINGA0LDQt9C80LXRgCDQvtCx0YrQtdC60YLQsCIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYxOQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNwogbXNnaWQgImV4aXQgd2l0aCB6ZXJvIHdoZW4gdGhlcmUncyBubyBlcnJvciIKIG1zZ3N0ciAi0LLRi9C50YLQuCDRgSDQvdGD0LvQtdCy0YvQvCDQutC+0LTQvtC8INCy0L7Qt9Cy0YDQsNGC0LAsINC10YHQu9C4INC90LXRgiDQvtGI0LjQsdC60LgiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MjAKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzgKIG1zZ2lkICJwcmV0dHktcHJpbnQgb2JqZWN0J3MgY29udGVudCIKIG1zZ3N0ciAi0YHRgtGA0YPQutGC0YPRgNC40YDQvtCy0LDQvdC90YvQuSDQstGL0LLQvtC0INGB0L7QtNC10YDQttC40LzQvtCz0L4g0L7QsdGK0LXQutGC0LAiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MjIKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDAKIG1zZ2lkICJmb3IgYmxvYiBvYmplY3RzLCBydW4gdGV4dGNvbnYgb24gb2JqZWN0J3MgY29udGVudCIKIG1zZ3N0ciAi0LfQsNC/0YPRgdGC0LjRgtGMIHRleGNvbnYg0L3QsCDRgdC+0LTQtdGA0LbQuNC80L7QvCDQtNCy0L7QuNGH0L3Ri9GFINC+0LHRitC10LrRgtC+0LIgIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjI0CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQyCiBtc2dpZCAiZm9yIGJsb2Igb2JqZWN0cywgcnVuIGZpbHRlcnMgb24gb2JqZWN0J3MgY29udGVudCIKIG1zZ3N0ciAi0LfQsNC/0YPRgdC6INGE0LjQu9GM0YLRgNC+0LIg0L3QsCDRgdC+0LTQtdGA0LbQuNC80L7QvCDQtNCy0L7QuNGH0L3Ri9GFINC+0LHRitC10LrRgtC+0LIgIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjI1IGdpdC1zdWJtb2R1bGUuc2g6ODY0CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQzIGdpdC1zdWJtb2R1bGUuc2g6OTM2CiBtc2dpZCAiYmxvYiIKIG1zZ3N0ciAi0LTQstC+0LjRh9C90YvQuSDQvtCx0YrQtdC60YIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MjYKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDQKIG1zZ2lkICJ1c2UgYSBzcGVjaWZpYyBwYXRoIGZvciAtLXRleHRjb252Ly0tZmlsdGVycyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0L/RgNC10LTQtdC70LXQvdC90YvQuSDQv9GD0YLRjCDQtNC70Y8gLS10ZXh0Y29udi8tLWZpbHRlcnMiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MjgKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDYKIG1zZ2lkICJhbGxvdyAtcyBhbmQgLXQgdG8gd29yayB3aXRoIGJyb2tlbi9jb3JydXB0IG9iamVjdHMiCiBtc2dzdHIgItGA0LDQt9GA0LXRiNC40YLRjCAtcyDQuCAtdCDRgNCw0LHQvtGC0LDRgtGMINGBINC/0L7QstGA0LXQttC00ZHQvdC90YvQvNC4INC+0LHRitC10LrRgtCw0LzQuCIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYyOQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NwogbXNnaWQgImJ1ZmZlciAtLWJhdGNoIG91dHB1dCIKIG1zZ3N0ciAi0LHRg9GE0YTQtdGA0LjRgNC+0LLQsNGC0Ywg0LLRi9Cy0L7QtCAtLWJhdGNoIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjMxCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ5CiBtc2dpZCAic2hvdyBpbmZvIGFuZCBjb250ZW50IG9mIG9iamVjdHMgZmVkIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC4INGB0L7QtNC10YDQttC40LzQvtC1INC+0LHRitC10LrRgtC+0LIsINC/0LXRgNC10LTQsNC90L3Ri9GFINC40Lcg0YHRgtCw0L3QtNCw0YDRgtC90L7Qs9C+INCy0LLQvtC00LAiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzQKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTMKIG1zZ2lkICJzaG93IGluZm8gYWJvdXQgb2JqZWN0cyBmZWQgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L7QsSDQvtCx0YrQtdC60YLQsNGFLCDQv9C10YDQtdC00LDQvdC90YvRhSDQuNC3INGB0YLQsNC90LTQsNGA0YLQvdC+0LPQviDQstCy0L7QtNCwIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM3CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjU3CiBtc2dpZCAiZm9sbG93IGluLXRyZWUgc3ltbGlua3MgKHVzZWQgd2l0aCAtLWJhdGNoIG9yIC0tYmF0Y2gtY2hlY2spIgogbXNnc3RyICLQv9C10YDQtdGF0L7QtNC40YLRjCDQv9C+INGB0LjQvNCy0L7Qu9GM0L3Ri9C8INGB0YHRi9C70LrQsNC8INCy0L3Rg9GC0YDQuCDQtNC10YDQtdCy0LAgKNC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDRgSDQvtC/0YbQuNGP0LzQuCAtLWJhdGNoINC4IC0tYmF0Y2gtY2hlY2spIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM5CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjU5CiBtc2dpZCAic2hvdyBhbGwgb2JqZWN0cyB3aXRoIC0tYmF0Y2ggb3IgLS1iYXRjaC1jaGVjayIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDQstGB0LUg0L7QsdGK0LXQutGC0Ysg0YEg0L7Qv9GG0LjRj9C80LggLS1iYXRjaCDQuNC70LggLS1iYXRjaC1jaGVjayIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY2MQogbXNnaWQgImRvIG5vdCBvcmRlciAtLWJhdGNoLWFsbC1vYmplY3RzIG91dHB1dCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxMgorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTMKIG1zZ2lkICJnaXQgY2hlY2stYXR0ciBbLWEgfCAtLWFsbCB8IDxhdHRyPi4uLl0gWy0tXSA8cGF0aG5hbWU+Li4uIgogbXNnc3RyICJnaXQgY2hlY2stYXR0ciBbLWEgfCAtLWFsbCB8IDzQsNGC0YDQuNCx0YPRgj7igKZdIFstLV0gPNC/0YPRgtGMPuKApiIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTMKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjE0CiBtc2dpZCAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSIKIG1zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPNCw0YLRgNC40LHRg9GCPuKApl0iCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIwCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMQogbXNnaWQgInJlcG9ydCBhbGwgYXR0cmlidXRlcyBzZXQgb24gZmlsZSIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0LLRgdC1INCw0YLRgNC40LHRg9GC0Ysg0YPRgdGC0LDQvdC+0LLQu9C10L3QvdGL0LUg0LTQu9GPINGE0LDQudC70LAiCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIxCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMgogbXNnaWQgInVzZSAuZ2l0YXR0cmlidXRlcyBvbmx5IGZyb20gdGhlIGluZGV4IgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YLQvtC70YzQutC+IC5naXRhdHRyaWJ1dGVzINC40Lcg0LjQvdC00LXQutGB0LAiCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIyIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjQgYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMQorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjMgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNSBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAyCiBtc2dpZCAicmVhZCBmaWxlIG5hbWVzIGZyb20gc3RkaW4iCiBtc2dzdHIgItC/0YDQvtGH0LjRgtCw0YLRjCDQuNC80LXQvdCwINGE0LDQudC70L7QsiDQuNC3INGB0YLQsNC90LTQsNGA0YLQvdC+0LPQviDQstCy0L7QtNCwIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyNCBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI2CisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyNSBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI3CiBtc2dpZCAidGVybWluYXRlIGlucHV0IGFuZCBvdXRwdXQgcmVjb3JkcyBieSBhIE5VTCBjaGFyYWN0ZXIiCiBtc2dzdHIgItC+0LrQvtC90YfQsNC90LjQtSDQstCy0L7QtNCwINC4INCy0YvQstC+0LTQsCDQt9Cw0L/QuNGB0LXQuSDQv9C+INCd0KPQm9CV0JLQntCc0KMg0YHQuNC80LLQvtC70YMiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjAgYnVpbHRpbi9jaGVja291dC5jOjExMjAgYnVpbHRpbi9nYy5jOjUwMworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyMSBidWlsdGluL2NoZWNrb3V0LmM6MTM1NSBidWlsdGluL2djLmM6NTM4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk5CiBtc2dpZCAic3VwcHJlc3MgcHJvZ3Jlc3MgcmVwb3J0aW5nIgogbXNnc3RyICLQvdC1INCy0YvQstC+0LTQuNGC0Ywg0L/RgNC+0LPRgNC10YHRgSDQstGL0L/QvtC70L3QtdC90LjRjyIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOQogbXNnaWQgInNob3cgbm9uLW1hdGNoaW5nIGlucHV0IHBhdGhzIgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMINC90LUg0YHQvtCy0L/QsNC00LDRjtGJ0LjQtSDQstCy0LXQtNC10L3QvdGL0LUg0L/Rg9GC0LgiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzAKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzEKIG1zZ2lkICJpZ25vcmUgaW5kZXggd2hlbiBjaGVja2luZyIKIG1zZ3N0ciAi0LjQs9C90L7RgNC40YDQvtCy0LDRgtGMINC40L3QtNC10LrRgSDQv9GA0Lgg0L/RgNC+0LLQtdGA0LrQtSIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNTkKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTYwCiBtc2dpZCAiY2Fubm90IHNwZWNpZnkgcGF0aG5hbWVzIHdpdGggLS1zdGRpbiIKIG1zZ3N0ciAi0L3QtdC70YzQt9GPINGD0LrQsNC30YvQstCw0YLRjCDQv9GD0YLQuCDQstC80LXRgdGC0LUg0YEg0L/QsNGA0LDQvNC10YLRgNC+0LwgLS1zdGRpbiIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjIKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTYzCiBtc2dpZCAiLXogb25seSBtYWtlcyBzZW5zZSB3aXRoIC0tc3RkaW4iCiBtc2dzdHIgIi16INC40LzQtdC10YIg0YHQvNGL0YHQuyDRgtC+0LvRjNC60L4g0LLQvNC10YHRgtC1INGBINC/0LDRgNCw0LzQtdGC0YDQvtC8IC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY0CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2NQogbXNnaWQgIm5vIHBhdGggc3BlY2lmaWVkIgogbXNnc3RyICLQvdC1INGD0LrQsNC30LDQvSDQv9GD0YLRjCIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjgKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY5CiBtc2dpZCAiLS1xdWlldCBpcyBvbmx5IHZhbGlkIHdpdGggYSBzaW5nbGUgcGF0aG5hbWUiCiBtc2dzdHIgIi0tcXVpZXQg0LzQvtC20L3QviDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YLQvtC70YzQutC+INC/0YDQuCDRg9C60LDQt9Cw0L3QuNC4INC+0LTQvdC+0LPQviDQv9GD0YLQuCIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzAKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTcxCiBtc2dpZCAiY2Fubm90IGhhdmUgYm90aCAtLXF1aWV0IGFuZCAtLXZlcmJvc2UiCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+IC0tcXVpZXQg0LggLS12ZXJib3NlIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3MworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzQKIG1zZ2lkICItLW5vbi1tYXRjaGluZyBpcyBvbmx5IHZhbGlkIHdpdGggLS12ZXJib3NlIgogbXNnc3RyICItLW5vbi1tYXRjaGluZyDQvNC+0LbQvdC+INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRgtC+0LvRjNC60L4g0LLQvNC10YHRgtC1INGBIC0tdmVyYm9zZSIKIApAQCAtNzU0NiwxNjQgKzkyOTAsMjAzIEBACiBtc2dpZCAibm8gY29udGFjdHMgc3BlY2lmaWVkIgogbXNnc3RyICLQvdC1INGD0LrQsNC30LDQvdGLINC60L7QvdGC0LDQutGC0YsiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxMjgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxMzEKIG1zZ2lkICJnaXQgY2hlY2tvdXQtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKIG1zZ3N0ciAiZ2l0IGNoZWNrb3V0LWluZGV4IFs80L7Qv9GG0LjQuD5dIFstLV0gWzzRhNCw0LnQuz7igKZdIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTQzCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTQ4CiBtc2dpZCAic3RhZ2Ugc2hvdWxkIGJlIGJldHdlZW4gMSBhbmQgMyBvciBhbGwiCiBtc2dzdHIgItC40L3QtNC10LrRgSDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0LzQtdC20LTRgyAxINC4IDMg0LjQu9C4IGFsbCIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE1OQorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NAogbXNnaWQgImNoZWNrIG91dCBhbGwgZmlsZXMgaW4gdGhlIGluZGV4IgogbXNnc3RyICLQv9C10YDQtdC60LvRjtGH0LjRgtGM0YHRjyDQvdCwINGB0L7RgdGC0L7Rj9C90LjQtSDQstGB0LXRhSDRhNCw0LnQu9C+0LIg0LjQtyDQuNC90LTQtdC60YHQsCIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2MAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NQogbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBleGlzdGluZyBmaWxlcyIKIG1zZ3N0ciAi0L/RgNC40L3Rg9C00LjRgtC10LvRjNC90LDRjyDQv9C10YDQtdC30LDQv9C40YHRjCDRgdGD0YnQtdGB0YLQstGD0Y7RidC40YUg0YTQsNC50LvQvtCyIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTYyCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY3CiBtc2dpZCAibm8gd2FybmluZyBmb3IgZXhpc3RpbmcgZmlsZXMgYW5kIGZpbGVzIG5vdCBpbiBpbmRleCIKIG1zZ3N0ciAi0L3QtSDQstGL0LLQvtC00LjRgtGMINC/0YDQtdC00YPQv9GA0LXQttC00LXQvdC40Y8g0LTQu9GPINGB0YPRidC10YHRgtCy0YPRjtGJ0LjRhSDQuCDQvdC10L/RgNC+0LjQvdC00LXQutGB0LjRgNC+0LLQsNC90L3Ri9GFINGE0LDQudC70L7QsiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2OQogbXNnaWQgImRvbid0IGNoZWNrb3V0IG5ldyBmaWxlcyIKIG1zZ3N0ciAi0L3QtSDRgdC+0LfQtNCw0LLQsNGC0Ywg0L3QvtCy0YvQtSDRhNCw0LnQu9GLIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY2CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcxCiBtc2dpZCAidXBkYXRlIHN0YXQgaW5mb3JtYXRpb24gaW4gdGhlIGluZGV4IGZpbGUiCiBtc2dzdHIgItC+0LHQvdC+0LLQuNGC0Ywg0YHRgtCw0YLQuNGB0YLQuNC60YMg0LTQvtGB0YLRg9C/0LAg0LIg0YTQsNC50LvQtSDQuNC90LTQtdC60YHQsCIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3MAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NQogbXNnaWQgInJlYWQgbGlzdCBvZiBwYXRocyBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAi0L/RgNC+0YfQuNGC0LDRgtGMINGB0L/QuNGB0L7QuiDQv9GD0YLQtdC5INC40Lcg0YHRgtCw0L3QtNCw0YDRgtC90L7Qs9C+INCy0LLQvtC00LAiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzcKIG1zZ2lkICJ3cml0ZSB0aGUgY29udGVudCB0byB0ZW1wb3JhcnkgZmlsZXMiCiBtc2dzdHIgItC30LDQv9C40YHQsNGC0Ywg0YHQvtC00LXRgNC20LjQvNC+0LUg0LLQviDQstGA0LXQvNC10L3QvdGL0LUg0YTQsNC50LvRiyIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3MyBidWlsdGluL2NvbHVtbi5jOjMxCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2MSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2NAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3MzYKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2MTAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzggYnVpbHRpbi9jb2x1bW4uYzozMQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzgzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjcyCiBtc2dpZCAic3RyaW5nIgogbXNnc3RyICLRgdGC0YDQvtC60LAiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzkKIG1zZ2lkICJ3aGVuIGNyZWF0aW5nIGZpbGVzLCBwcmVwZW5kIDxzdHJpbmc+IgogbXNnc3RyICLQtNC+0LHQsNCy0LjRgtGMINGB0L/QtdGA0LXQtNC4IDzRgdGC0YDQvtC60YM+INC/0YDQuCDRgdC+0LfQtNCw0L3QuNC4INGE0LDQudC70L7QsiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE4MQogbXNnaWQgImNvcHkgb3V0IHRoZSBmaWxlcyBmcm9tIG5hbWVkIHN0YWdlIgogbXNnc3RyICLQutC+0L/QuNGA0L7QstCw0YLRjCDRhNCw0LnQu9GLINC40Lcg0YPQutCw0LfQsNC90L3QvtCz0L4g0LjQvdC00LXQutGB0LAiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyOQorIzogYnVpbHRpbi9jaGVja291dC5jOjMyCiBtc2dpZCAiZ2l0IGNoZWNrb3V0IFs8b3B0aW9ucz5dIDxicmFuY2g+IgogbXNnc3RyICJnaXQgY2hlY2tvdXQgWzzQvtC/0YbQuNC4Pl0gPNCy0LXRgtC60LA+IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MzAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozMwogbXNnaWQgImdpdCBjaGVja291dCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIC0tIDxmaWxlPi4uLiIKIG1zZ3N0ciAiZ2l0IGNoZWNrb3V0IFs80L7Qv9GG0LjQuD5dIFs80LLQtdGC0LrQsD5dIC0tIDzRhNCw0LnQuz7igKYiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzggYnVpbHRpbi9jaGVja291dC5jOjE3MQorIzogYnVpbHRpbi9jaGVja291dC5jOjE1MSBidWlsdGluL2NoZWNrb3V0LmM6MTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG91ciB2ZXJzaW9uIgogbXNnc3RyICLQv9GD0YLRjCDCqyVzwrsg0L3QtSDQuNC80LXQtdGCINC90LDRiNC10Lkg0LLQtdGA0YHQuNC4IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTQwIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzMKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTMgYnVpbHRpbi9jaGVja291dC5jOjE5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSB0aGVpciB2ZXJzaW9uIgogbXNnc3RyICLQv9GD0YLRjCDCqyVzwrsg0L3QtSDQuNC80LXQtdGCINC40YUg0LLQtdGA0YHQuNC4IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTU2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIGFsbCBuZWNlc3NhcnkgdmVyc2lvbnMiCiBtc2dzdHIgItC/0YPRgtGMIMKrJXPCuyDQvdC1INC40LzQtdC10YIg0LLRgdC10YUg0L3QtdC+0LHRhdC+0LTQuNC80YvRhSDQstC10YDRgdC40LkiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMDAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgbmVjZXNzYXJ5IHZlcnNpb25zIgogbXNnc3RyICLQv9GD0YLRjCDCqyVzwrsg0L3QtSDQuNC80LXQtdGCINC90LXQvtCx0YXQvtC00LjQvNGL0YUg0LLQtdGA0YHQuNC5IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjE3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJzogY2Fubm90IG1lcmdlIgogbXNnc3RyICLQv9GD0YLRjCDCqyVzwrs6INC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQu9C40YLRjCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjIzMworIzogYnVpbHRpbi9jaGVja291dC5jOjI1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gYWRkIG1lcmdlIHJlc3VsdCBmb3IgJyVzJyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQtNC+0LHQsNCy0LjRgtGMINGA0LXQt9GD0LvRjNGC0LDRgiDRgdC70LjRj9C90LjRjyDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNTUgYnVpbHRpbi9jaGVja291dC5jOjI1OCBidWlsdGluL2NoZWNrb3V0LmM6MjYxCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjY0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzMxIGJ1aWx0aW4vY2hlY2tvdXQuYzozMzQgYnVpbHRpbi9jaGVja291dC5jOjMzNworIzogYnVpbHRpbi9jaGVja291dC5jOjM0MAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggdXBkYXRpbmcgcGF0aHMiCiBtc2dzdHIgIsKrJXPCuyDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC/0YDQuCDQvtCx0L3QvtCy0LvQtdC90LjQuCDQv9GD0YLQtdC5IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjY3IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNDMgYnVpbHRpbi9jaGVja291dC5jOjM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiCiBtc2dzdHIgIsKrJXPCuyDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0LTQvdC+0LLRgNC10LzQtdC90L3QviDRgSAlcyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjI3MworIzogYnVpbHRpbi9jaGVja291dC5jOjM0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgdXBkYXRlIHBhdGhzIGFuZCBzd2l0Y2ggdG8gYnJhbmNoICclcycgYXQgdGhlIHNhbWUgdGltZS4iCiBtc2dzdHIgItCd0LXQu9GM0LfRjyDQvtCx0L3QvtCy0LvRj9GC0Ywg0L/Rg9GC0Lgg0Lgg0L/QtdGA0LXQutC70Y7Rh9Cw0YLRjNGB0Y8g0L3QsCDQstC10YLQutGDIMKrJXPCuyDQvtC00L3QvtCy0YDQtdC80LXQvdC90L4uIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MzQyIGJ1aWx0aW4vY2hlY2tvdXQuYzozNDkKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozOTYgYnVpbHRpbi9jaGVja291dC5jOjQwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgaXMgdW5tZXJnZWQiCiBtc2dzdHIgItC/0YPRgtGMIMKrJXPCuyDQvdC1INGB0LvQuNGCIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NTA4CisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDQyCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY3JlYXRlZCAlZCBtZXJnZSBjb25mbGljdCIKK21zZ2lkX3BsdXJhbCAiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0cyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCittc2dzdHJbMl0gIiIKK21zZ3N0clszXSAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0ZWQgJWQgcGF0aCBmcm9tICVzIgorbXNnaWRfcGx1cmFsICJVcGRhdGVkICVkIHBhdGhzIGZyb20gJXMiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorbXNnc3RyWzJdICIiCittc2dzdHJbM10gIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQ1NAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSB0aGUgaW5kZXgiCittc2dpZF9wbHVyYWwgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSB0aGUgaW5kZXgiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorbXNnc3RyWzJdICIiCittc2dzdHJbM10gIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjY5NQogbXNnaWQgInlvdSBuZWVkIHRvIHJlc29sdmUgeW91ciBjdXJyZW50IGluZGV4IGZpcnN0IgogbXNnc3RyICLRgdC90LDRh9Cw0LvQsCDQvdGD0LbQvdC+INGA0LDQt9GA0LXRiNC40YLRjCDQutC+0L3RhNC70LjQutGC0Ysg0LIg0LLQsNGI0LXQvCDRgtC10LrRg9GJ0LXQvCDQuNC90LTQtdC60YHQtSIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjY0NQorIzogYnVpbHRpbi9jaGVja291dC5jOjc0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY2Fubm90IGNvbnRpbnVlIHdpdGggc3RhZ2VkIGNoYW5nZXMgaW4gdGhlIGZvbGxvd2luZyBmaWxlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInN0YWdlZCBjaGFuZ2VzIGluIHRoZSBmb2xsb3dpbmcgZmlsZXMgbWF5IGJlIGxvc3Q6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2FuIG5vdCBkbyByZWZsb2cgZm9yICclcyc6ICVzXG4iCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0Ywg0LbRg9GA0L3QsNC7INGB0YHRi9C70L7QuiDQtNC70Y8gwqslc8K7OiAlc1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Njg2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODkwCiBtc2dpZCAiSEVBRCBpcyBub3cgYXQiCiBtc2dzdHIgIkhFQUQg0YHQtdC50YfQsNGBINC90LAiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2OTAgYnVpbHRpbi9jbG9uZS5jOjY5MgorIzogYnVpbHRpbi9jaGVja291dC5jOjg5NCBidWlsdGluL2Nsb25lLmM6NzAxCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBIRUFEIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0LHQvdC+0LLQuNGC0YwgSEVBRCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjY5NAorIzogYnVpbHRpbi9jaGVja291dC5jOjg5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJSZXNldCBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICLQodCx0YDQvtGBINCy0LXRgtC60Lggwqslc8K7XG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2OTcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWxyZWFkeSBvbiAnJXMnXG4iCiBtc2dzdHIgItCj0LbQtSDQvdCwIMKrJXPCu1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NzAxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN3aXRjaGVkIHRvIGFuZCByZXNldCBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICLQn9C10YDQtdC60LvRjtGH0LXQvdC40LUg0Lgg0YHQsdGA0L7RgSDQstC10YLQutC4IMKrJXPCu1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NzAzIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDUyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTA3IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlN3aXRjaGVkIHRvIGEgbmV3IGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgItCf0LXRgNC10LrQu9GO0YfQtdC90L4g0L3QsCDQvdC+0LLRg9GOINCy0LXRgtC60YMgwqslc8K7XG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3MDUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3dpdGNoZWQgdG8gYnJhbmNoICclcydcbiIKIG1zZ3N0ciAi0J/QtdGA0LXQutC70Y7Rh9C10L3QviDQvdCwINCy0LXRgtC60YMgwqslc8K7XG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3NTYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIC4uLiBhbmQgJWQgbW9yZS5cbiIKIG1zZ3N0ciAiIOKApiDQuCDQtdGJ0LUgJWQuXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3NjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIldhcm5pbmc6IHlvdSBhcmUgbGVhdmluZyAlZCBjb21taXQgYmVoaW5kLCBub3QgY29ubmVjdGVkIHRvXG4iCkBAIC03NzIwLDcgKzk1MDMsNyBAQAogbXNnc3RyWzJdICLQn9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1OiDQstGLINC+0YHRgtCw0LLQu9GP0LXRgtC1INC/0L7Qt9Cw0LTQuCAlZCDQutC+0LzQvNC40YLQvtCyINC90LUg0YHQvtC10LTQuNC90LXQvdC90YvQtSDQvdC4INGBINC+0LTQvdC+0Lkg0LjQtyDQstCw0YjQuNGFINCy0LXRgtC+0Lo6XG5cbiVzXG4iCiBtc2dzdHJbM10gItCf0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LU6INCy0Ysg0L7RgdGC0LDQstC70Y/QtdGC0LUg0L/QvtC30LDQtNC4ICVkINC60L7QvNC80LjRgtC+0LIg0L3QtSDRgdC+0LXQtNC40L3QtdC90L3Ri9C1INC90Lgg0YEg0L7QtNC90L7QuSDQuNC3INCy0LDRiNC40YUg0LLQtdGC0L7QujpcblxuJXNcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc4MQorIzogYnVpbHRpbi9jaGVja291dC5jOjk4NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSWYgeW91IHdhbnQgdG8ga2VlcCBpdCBieSBjcmVhdGluZyBhIG5ldyBicmFuY2gsIHRoaXMgbWF5IGJlIGEgZ29vZCB0aW1lXG4iCkBAIC03NzM5LDE2NiArOTUyMiwxODEgQEAKIG1zZ3N0clsyXSAi0JXRgdC70Lgg0LLRiyDRhdC+0YLQuNGC0LUg0YHQvtGF0YDQsNC90LjRgtGMINC40YUg0YEg0L/QvtC80L7RidGM0Y4g0YHQvtC30LTQsNC90LjRjyDQvdC+0LLQvtC5INCy0LXRgtC60LgsINGC0L4g0YHQtdC50YfQsNGBINGB0LDQvNC+0LUg0LLRgNC10LzRj1xu0YHQtNC10LvQsNGC0Ywg0Y3RgtC+INGBINC/0L7QvNC+0YnRjNGOOlxuXG4gZ2l0IGJyYW5jaCA80LjQvNGPLdC90L7QstC+0Lkt0LLQtdGC0LrQuD4gJXNcbiIKIG1zZ3N0clszXSAi0JXRgdC70Lgg0LLRiyDRhdC+0YLQuNGC0LUg0YHQvtGF0YDQsNC90LjRgtGMINC40YUg0YEg0L/QvtC80L7RidGM0Y4g0YHQvtC30LTQsNC90LjRjyDQvdC+0LLQvtC5INCy0LXRgtC60LgsINGC0L4g0YHQtdC50YfQsNGBINGB0LDQvNC+0LUg0LLRgNC10LzRj1xu0YHQtNC10LvQsNGC0Ywg0Y3RgtC+INGBINC/0L7QvNC+0YnRjNGOOlxuXG4gZ2l0IGJyYW5jaCA80LjQvNGPLdC90L7QstC+0Lkt0LLQtdGC0LrQuD4gJXNcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjgxMworIzogYnVpbHRpbi9jaGVja291dC5jOjEwMTcKIG1zZ2lkICJpbnRlcm5hbCBlcnJvciBpbiByZXZpc2lvbiB3YWxrIgogbXNnc3RyICLQstC90YPRgtGA0LXQvdC90Y/RjyDQvtGI0LjQsdC60LAg0L/RgNC4INGF0L7QttC00LXQvdC40Lgg0L/QviDRgNC10LTQsNC60YbQuNGP0LwiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MTcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDIxCiBtc2dpZCAiUHJldmlvdXMgSEVBRCBwb3NpdGlvbiB3YXMiCiBtc2dzdHIgItCf0YDQtdC00YvQtNGD0YnQsNGPINC/0L7Qt9C40YbQuNGPIEhFQUQg0LHRi9C70LAiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4NDUgYnVpbHRpbi9jaGVja291dC5jOjEwNDcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDUyIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjc4CiBtc2dpZCAiWW91IGFyZSBvbiBhIGJyYW5jaCB5ZXQgdG8gYmUgYm9ybiIKIG1zZ3N0ciAi0JLRiyDQvdCw0YXQvtC00LjRgtC10YHRjCDQvdCwINC10YnQtSDQvdC1INGB0L7Qt9C00LDQvdC90L7QuSDQstC10YLQutC1IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTUyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTE3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQsICVkIGdpdmVuLiIKIG1zZ3N0ciAi0L7QttC40LTQsNC10YLRgdGPINGC0L7Qu9GM0LrQviDQvtC00L3QsCDRgdGB0YvQu9C60LAsINCwINC/0LXRgNC10LTQsNC90L4gJWQuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTkzIGJ1aWx0aW4vd29ya3RyZWUuYzoyNDAgYnVpbHRpbi93b3JrdHJlZS5jOjM4OQorIzogYnVpbHRpbi9jaGVja291dC5jOjEyMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiclcycgY291bGQgYmUgYm90aCBhIGxvY2FsIGZpbGUgYW5kIGEgdHJhY2tpbmcgYnJhbmNoLlxuIgorIlBsZWFzZSB1c2UgLS0gKGFuZCBvcHRpb25hbGx5IC0tbm8tZ3Vlc3MpIHRvIGRpc2FtYmlndWF0ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTIyMiBidWlsdGluL3dvcmt0cmVlLmM6MjkwIGJ1aWx0aW4vd29ya3RyZWUuYzo0NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCByZWZlcmVuY2U6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdCw0Y8g0YHRgdGL0LvQutCwOiAlcyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEwMjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSBpcyBub3QgYSB0cmVlOiAlcyIKIG1zZ3N0ciAi0LIg0LTQtdGA0LXQstC1INC90LXRgiDRgtCw0LrQvtC5INGB0YHRi9C70LrQuDogJXMiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDYxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTI5MgogbXNnaWQgInBhdGhzIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgogbXNnc3RyICLQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC/0YPRgtC4INC/0YDQuCDQv9C10YDQtdC60LvRjtGH0LXQvdC40Lgg0LLQtdGC0L7QuiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEwNjQgYnVpbHRpbi9jaGVja291dC5jOjEwNjgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjk1IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjk5IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMiCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywgwqslc8K7INC/0YDQuCDQv9C10YDQtdC60LvRjtGH0LXQvdC40Lgg0LLQtdGC0L7QuiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEwNzIgYnVpbHRpbi9jaGVja291dC5jOjEwNzUgYnVpbHRpbi9jaGVja291dC5jOjEwODAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDgzCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMwNyBidWlsdGluL2NoZWNrb3V0LmM6MTMxMCBidWlsdGluL2NoZWNrb3V0LmM6MTMxNQorIzogYnVpbHRpbi9jaGVja291dC5jOjEzMTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICclcyciCiBtc2dzdHIgIsKrJXPCuyDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0LTQvdC+0LLRgNC10LzQtdC90L3QviDRgSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDg4CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgc3dpdGNoIGJyYW5jaCB0byBhIG5vbi1jb21taXQgJyVzJyIKIG1zZ3N0ciAi0J3QtdC70YzQt9GPINC/0LXRgNC10LrQu9GO0YfQuNGC0Ywg0LLQtdGC0LrRgyDQvdCwINC90LUg0LrQvtC80LzQuNGCIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjExMjEgYnVpbHRpbi9jaGVja291dC5jOjExMjMgYnVpbHRpbi9jbG9uZS5jOjExOQotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjggYnVpbHRpbi9yZW1vdGUuYzoxNzAgYnVpbHRpbi93b3JrdHJlZS5jOjQzMwotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzNQorIzogYnVpbHRpbi9jaGVja291dC5jOjEzNTYgYnVpbHRpbi9jaGVja291dC5jOjEzNTggYnVpbHRpbi9jbG9uZS5jOjExOAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjkgYnVpbHRpbi9yZW1vdGUuYzoxNzEgYnVpbHRpbi93b3JrdHJlZS5jOjQ5MgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NAogbXNnaWQgImJyYW5jaCIKIG1zZ3N0ciAi0LLQtdGC0LrQsCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjExMjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzU3CiBtc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCiBtc2dzdHIgItGB0L7Qt9C00LDRgtGMINC4INC/0LXRgNC10LrQu9GO0YfQuNGC0YzRgdGPINC90LAg0L3QvtCy0YPRjiDQstC10YLQutGDIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTEyNAorIzogYnVpbHRpbi9jaGVja291dC5jOjEzNTkKIG1zZ2lkICJjcmVhdGUvcmVzZXQgYW5kIGNoZWNrb3V0IGEgYnJhbmNoIgogbXNnc3RyICLRgdC+0LfQtNCw0YLRjC/RgdCx0YDQvtGB0LjRgtGMINC4INC/0LXRgNC60LvRjtGH0LjRgtGM0YHRjyDQvdCwINC90L7QstGD0Y4g0LLQtdGC0LrRgyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjExMjUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzYwCiBtc2dpZCAiY3JlYXRlIHJlZmxvZyBmb3IgbmV3IGJyYW5jaCIKIG1zZ3N0ciAi0YHQvtC30LTQsNGC0Ywg0LbRg9GA0L3QsNC7INGB0YHRi9C70L7QuiDQtNC70Y8g0L3QvtCy0L7QuSDQstC10YLQutC4IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTEyNiBidWlsdGluL3dvcmt0cmVlLmM6NDM3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2MSBidWlsdGluL3dvcmt0cmVlLmM6NDk2CiBtc2dpZCAiZGV0YWNoIEhFQUQgYXQgbmFtZWQgY29tbWl0IgogbXNnc3RyICLQvtGC0YHQvtC10LTQuNC90LjRgtGMIEhFQUQg0L3QsCDRg9C60LDQt9Cw0L3QvdC+0Lwg0LrQvtC80LzQuNGC0LUiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTI3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2MgogbXNnaWQgInNldCB1cHN0cmVhbSBpbmZvIGZvciBuZXcgYnJhbmNoIgogbXNnc3RyICLRg9GB0YLQsNC90L7QstC40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDQstGL0YjQtdGB0YLQvtGP0YnQtdC5INCy0LXRgtC60LUg0LTQu9GPINC90L7QstC+0Lkg0LLQtdGC0LrQuCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjExMjkKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY0CiBtc2dpZCAibmV3LWJyYW5jaCIKIG1zZ3N0ciAi0L3QvtCy0LDRjy3QstC10YLQutCwIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTEyOQorIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjQKIG1zZ2lkICJuZXcgdW5wYXJlbnRlZCBicmFuY2giCiBtc2dzdHIgItC90L7QstCw0Y8g0LLQtdGC0LrQsCDQsdC10Lcg0YDQvtC00LjRgtC10LvQtdC5IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTEzMQorIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjYKIG1zZ2lkICJjaGVja291dCBvdXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCiBtc2dzdHIgItC/0LXRgNC10LrQu9GO0YfQuNGC0YzRgdGPINC90LAg0L3QsNGI0YMg0LLQtdGA0YHQuNGOINC00LvRjyDQvdC1INGB0LvQuNGC0YvRhSDRhNCw0LnQu9C+0LIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTM0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2OQogbXNnaWQgImNoZWNrb3V0IHRoZWlyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgogbXNnc3RyICLQv9C10YDQtdC60LvRjtGH0LjRgtGM0YHRjyDQvdCwINC40YUg0LLQtdGA0YHQuNGOINC00LvRjyDQvdC1INGB0LvQuNGC0YvRhSDRhNCw0LnQu9C+0LIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTM2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM3MQogbXNnaWQgImZvcmNlIGNoZWNrb3V0ICh0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMpIgogbXNnc3RyICLQv9GA0LjQvdGD0LTQuNGC0LXQu9GM0L3QvtC1INC/0LXRgNC10LrQu9GO0YfQtdC90LjQtSDQvdCwINGB0L7RgdGC0L7Rj9C90LjQtSAo0L7RgtCx0YDQsNGB0YvQstCw0LXRgiDQstGB0LUg0LvQvtC60LDQu9GM0L3Ri9C1INC40LfQvNC10L3QtdC90LjRjykiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTM4CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM3MwogbXNnaWQgInBlcmZvcm0gYSAzLXdheSBtZXJnZSB3aXRoIHRoZSBuZXcgYnJhbmNoIgogbXNnc3RyICLQstGL0L/QvtC70L3QuNGC0Ywg0YLRgNC10YXRhdC+0LTQvtCy0L7QtSDRgdC70LjRj9C90LjQtSDRgSDQvdC+0LLQvtC5INCy0LXRgtC60L7QuSIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjExNDAgYnVpbHRpbi9tZXJnZS5jOjI3MworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzUgYnVpbHRpbi9tZXJnZS5jOjI4NAogbXNnaWQgInVwZGF0ZSBpZ25vcmVkIGZpbGVzIChkZWZhdWx0KSIKIG1zZ3N0ciAi0L7QsdC90L7QstC40YLRjCDQuNCz0L3QvtGA0LjRgNGD0LXQvNGL0LUg0YTQsNC50LvRiyAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4pIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE0MiBidWlsdGluL2xvZy5jOjE1MTAgcGFyc2Utb3B0aW9ucy5oOjI2NAorIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzcgYnVpbHRpbi9sb2cuYzoxNTk0IHBhcnNlLW9wdGlvbnMuaDozMTcKIG1zZ2lkICJzdHlsZSIKIG1zZ3N0ciAi0YHRgtC40LvRjCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjExNDMKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzc4CiBtc2dpZCAiY29uZmxpY3Qgc3R5bGUgKG1lcmdlIG9yIGRpZmYzKSIKIG1zZ3N0ciAi0YHRgtC40LvRjCDQutC+0L3RhNC70LjQutGC0L7QsiDRgdC70LjRj9C90LjRjyAobWVyZ2Ug0LjQu9C4IGRpZmYzKSIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjExNDYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzgxCiBtc2dpZCAiZG8gbm90IGxpbWl0IHBhdGhzcGVjcyB0byBzcGFyc2UgZW50cmllcyBvbmx5IgogbXNnc3RyICLQvdC1INC+0LPRgNCw0L3QuNGH0LjQstCw0YLRjCDRgdC/0LXRhtC40YTQuNC60LDRgtC+0YDRiyDQv9GD0YLQuCDRgtC+0LvRjNC60L4g0YfQsNGB0YLQuNGH0L3Ri9C80Lgg0LfQsNC/0LjRgdGP0LzQuCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjExNDgKLW1zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBjaGVja291dCA8bm8tc3VjaC1icmFuY2g+JyIKLW1zZ3N0ciAi0L/QtdGA0LXRgdC80L7RgtGAIMKrZ2l0IGNoZWNrb3V0IDzQvdC10YIt0YLQsNC60L7QuS3QstC10YLQutC4PsK7IgorIzogYnVpbHRpbi9jaGVja291dC5jOjEzODMKK21zZ2lkICJkbyBub3Qgc2Vjb25kIGd1ZXNzICdnaXQgY2hlY2tvdXQgPG5vLXN1Y2gtYnJhbmNoPiciCittc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjExNTAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzg1CiBtc2dpZCAiZG8gbm90IGNoZWNrIGlmIGFub3RoZXIgd29ya3RyZWUgaXMgaG9sZGluZyB0aGUgZ2l2ZW4gcmVmIgogbXNnc3RyICLQvdC1INC/0YDQvtCy0LXRgNGP0YLRjCwg0YfRgtC+INC00YDRg9Cz0L7QtSDQtNC10YDQtdCy0L4g0YPQttC1INGB0L7QtNC10YDQttC40YIg0YPQutCw0LfQsNC90L3Rg9GOINGB0YHRi9C70LrRgyIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjExNTQgYnVpbHRpbi9jbG9uZS5jOjg2IGJ1aWx0aW4vZmV0Y2guYzoxMzgKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzAgYnVpbHRpbi9wdWxsLmM6MTI4IGJ1aWx0aW4vcHVzaC5jOjU3MgorIzogYnVpbHRpbi9jaGVja291dC5jOjEzODkgYnVpbHRpbi9jbG9uZS5jOjg4IGJ1aWx0aW4vZmV0Y2guYzoxNDEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODEgYnVpbHRpbi9wdWxsLmM6MTM2IGJ1aWx0aW4vcHVzaC5jOjU3NQogIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzQKIG1zZ2lkICJmb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCiBtc2dzdHIgItC/0YDQuNC90YPQtNC40YLQtdC70YzQvdC+INCy0YvQstC+0LTQuNGC0Ywg0L/RgNC+0LPRgNC10YHRgSIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjExODQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzkwCittc2dpZCAidXNlIG92ZXJsYXkgbW9kZSAoZGVmYXVsdCkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MjIKIG1zZ2lkICItYiwgLUIgYW5kIC0tb3JwaGFuIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi1iLCAtQiDQuCAtLW9ycGhhbiDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0LTQvdC+0LLRgNC10LzQtdC90L3QviIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMDEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDI1Cittc2dpZCAiLXAgYW5kIC0tb3ZlcmxheSBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDQyCiBtc2dpZCAiLS10cmFjayBuZWVkcyBhIGJyYW5jaCBuYW1lIgogbXNnc3RyICItLXRyYWNrINGC0YDQtdCx0YPQtdGCINC40LzRjyDQstC10YLQutC4IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIwNgorIzogYnVpbHRpbi9jaGVja291dC5jOjE0NDcKIG1zZ2lkICJtaXNzaW5nIGJyYW5jaCBuYW1lOyB0cnkgLWIiCiBtc2dzdHIgItC/0YDQvtC/0YPRidC10L3QviDQuNC80Y8g0LLQtdGC0LrQuDsg0L/QvtC/0YDQvtCx0YPQudGC0LUgLWIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQzCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4NAogbXNnaWQgImludmFsaWQgcGF0aCBzcGVjaWZpY2F0aW9uIgogbXNnc3RyICLQvdC10LTQvtC/0YPRgdGC0LjQvNGL0Lkg0YHQv9C10YbQuNGE0LjQutCw0YLQvtGAINC/0YPRgtC4IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1MAorIzogYnVpbHRpbi9jaGVja291dC5jOjE0OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSBjb21taXQgYW5kIGEgYnJhbmNoICclcycgY2Fubm90IGJlIGNyZWF0ZWQgZnJvbSBpdCIKIG1zZ3N0ciAiwqslc8K7INC90LUg0Y/QstC70Y/QtdGC0YHRjyDQutC+0LzQvNC40YLQvtC8LCDQv9C+0Y3RgtC+0LzRgyDQvdC10LLQvtC30LzQvtC20L3QviDRgdC+0LfQtNCw0YLRjCDQuNC3INC90LXQs9C+INCy0LXRgtC60YMgwqslc8K7IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1NAorIzogYnVpbHRpbi9jaGVja291dC5jOjE0OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCAnJXMnIgogbXNnc3RyICJnaXQgY2hlY2tvdXQ6IC0tZGV0YWNoINC90LUg0L/RgNC40L3QuNC80LDQtdGCINC/0YPRgtGMIMKrJXPCuyDQutCw0Log0LDRgNCz0YPQvNC10L3RgiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDk5CiBtc2dpZCAiIgogImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIGFuZCAtLW1lcmdlIGFyZSBpbmNvbXBhdGlibGUgd2hlblxuIgogImNoZWNraW5nIG91dCBvZiB0aGUgaW5kZXguIgogbXNnc3RyICJnaXQgY2hlY2tvdXQ6IC0tb3Vycy8tLXRoZWlycywgLS1mb3JjZSBhbmQgLS1tZXJnZSDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0LTQvdC+0LLRgNC10LzQtdC90L3QviDQv9GA0Lgg0L/RgNC40LzQtdC90LXQvdC40Lgg0YHQvtGB0YLQvtGP0L3QuNGPINC40L3QtNC10LrRgdCwLiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNzgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIG1hdGNoZWQgbW9yZSB0aGFuIG9uZSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoLlxuIgpAQCAtNzkxNSwzNyArOTcxMywzNyBAQAogImNoZWNrb3V0LmRlZmF1bHRSZW1vdGU9b3JpZ2luIGluIHlvdXIgY29uZmlnLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MjcKKyM6IGJ1aWx0aW4vY2xlYW4uYzoyOAogbXNnaWQgIiIKICJnaXQgY2xlYW4gWy1kXSBbLWZdIFstaV0gWy1uXSBbLXFdIFstZSA8cGF0dGVybj5dIFsteCB8IC1YXSBbLS1dIDxwYXRocz4uLi4iCiBtc2dzdHIgImdpdCBjbGVhbiBbLWRdIFstZl0gWy1pXSBbLW5dIFstcV0gWy1lIDzRiNCw0LHQu9C+0L0+XSBbLXggfCAtWF0gWy0tXSA80L/Rg9GC0Lg+4oCmIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzEKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyAlc1xuIgogbXNnc3RyICLQo9C00LDQu9C10L3QuNC1ICVzXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMgorIzogYnVpbHRpbi9jbGVhbi5jOjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIldvdWxkIHJlbW92ZSAlc1xuIgogbXNnc3RyICLQkdGD0LTQtdGCINGD0LTQsNC70LXQvdC+ICVzXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMworIzogYnVpbHRpbi9jbGVhbi5jOjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwaW5nIHJlcG9zaXRvcnkgJXNcbiIKIG1zZ3N0ciAi0J/RgNC+0L/Rg9GB0Log0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyAlc1xuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzQKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNQogIywgYy1mb3JtYXQKIG1zZ2lkICJXb3VsZCBza2lwIHJlcG9zaXRvcnkgJXNcbiIKIG1zZ3N0ciAi0JHRg9C00LXRgiDQv9GA0L7Qv9GD0YnQtdC9INGA0LXQv9C+0LfQuNGC0L7RgNC40LkgJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjM1CisjOiBidWlsdGluL2NsZWFuLmM6MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAlcyIKIG1zZ3N0ciAi0YHQsdC+0Lkg0YPQtNCw0LvQtdC90LjRjyAlcyIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjI5NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3OQorIzogYnVpbHRpbi9jbGVhbi5jOjI5OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUHJvbXB0IGhlbHA6XG4iCkBAIC03OTU0LDcgKzk3NTIsNyBAQAogIiAgICAgICAgICAgLSAoZW1wdHkpIHNlbGVjdCBub3RoaW5nXG4iCiBtc2dzdHIgItCh0L/RgNCw0LLQutCwINC/0L4g0LLRi9C00LXQu9C10L3QuNGOOlxuMSAgICAgICAgICAtINCy0YvQsdGA0LDRgtGMINGD0LrQsNC30LDQvdC90YvQuSDRjdC70LXQvNC10L3RglxuZm9vICAgICAgICAtINCy0YvQsdGA0LDRgtGMINGN0LvQtdC80LXQvdGCINGBINGD0LrQsNC30LDQvdC90YvQvCDQv9GA0LXRhNC40LrRgdC+0LxcbiAgICAgICAgICAgLSAo0L/Rg9GB0YLQvikg0L3QtSDQstGL0LHQuNGA0LDRgtGMINC90LjRh9C10LPQvlxuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzAxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTg4CisjOiBidWlsdGluL2NsZWFuLmM6MzAzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQcm9tcHQgaGVscDpcbiIKQEAgLTc5NjcsMzggKzk3NjUsMzggQEAKICIgICAgICAgICAgIC0gKGVtcHR5KSBmaW5pc2ggc2VsZWN0aW5nXG4iCiBtc2dzdHIgItCh0L/RgNCw0LLQutCwINC/0L4g0LLRi9C00LXQu9C10L3QuNGOOlxuMSAgICAgICAgICAtINCy0YvQsdGA0LDRgtGMINC+0LTQuNC9INGN0LvQtdC80LXQvdGCXG4zLTUgICAgICAgIC0g0LLRi9Cx0YDQsNGC0Ywg0LTQuNCw0L/QsNC30L7QvSDRjdC70LXQvNC10L3RgtC+0LJcbjItMyw2LTkgICAgLSDQstGL0LHRgNCw0YLRjCDQvdC10YHQutC+0LvRjNC60L4g0LTQuNCw0L/QsNC30L7QvdC+0LJcbmZvbyAgICAgICAgLSDQstGL0LHRgNCw0YLRjCDRjdC70LXQvNC10L3RgiDRgSDRg9C60LDQt9Cw0L3QvdGL0Lwg0L/RgNC10YTQuNC60YHQvtC8XG4t4oCmICAgICAgIC0g0YPQsdGA0LDRgtGMINCy0YvQtNC10LvQtdC90LjQtSDRgSDRg9C60LDQt9Cw0L3QvdGL0YUg0Y3Qu9C10LzQtdC90YLQvtCyXG4qICAgICAgICAgIC0g0LLRi9Cx0YDQsNGC0Ywg0LLRgdC1INGN0LvQtdC80LXQvdGC0YtcbiAgICAgICAgICAgLSAo0L/Rg9GB0YLQvikg0LfQsNCy0LXRgNGI0LjRgtGMINCy0YvQtNC10LvQtdC90LjQtVxuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6NTE3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTU0CisjOiBidWlsdGluL2NsZWFuLmM6NTE5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTU0CiAjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU1OQogIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0CiBtc2dpZCAiSHVoICglcyk/XG4iCiBtc2dzdHIgItCl0LwgKCVzKT9cbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjY1OQorIzogYnVpbHRpbi9jbGVhbi5jOjY2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnB1dCBpZ25vcmUgcGF0dGVybnM+PiAiCiBtc2dzdHIgItCo0LDQsdC70L7QvdGLINC40LPQvdC+0YDQuNGA0L7QstCw0L3QuNGPINCy0LLQvtC00LA+PiAiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo2OTYKKyM6IGJ1aWx0aW4vY2xlYW4uYzo2OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiV0FSTklORzogQ2Fubm90IGZpbmQgaXRlbXMgbWF0Y2hlZCBieTogJXMiCiBtc2dzdHIgItCf0KDQldCU0KPQn9Cg0JXQltCU0JXQndCY0JU6INCd0LUg0YPQtNCw0LvQvtGB0Ywg0L3QsNC50YLQuCDRjdC70LXQvNC10L3RgtGLINGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGJ0LjQtTogJXMiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo3MTcKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3MTkKIG1zZ2lkICJTZWxlY3QgaXRlbXMgdG8gZGVsZXRlIgogbXNnc3RyICLQo9C60LDQttC40YLQtSDRjdC70LXQvNC10L3RgtGLINC00LvRjyDRg9C00LDQu9C10L3QuNGPIgogCiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGtlZXAgW3kvTl0gYXMgaXMKLSM6IGJ1aWx0aW4vY2xlYW4uYzo3NTgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3ZlICVzIFt5L05dPyAiCiBtc2dzdHIgItCj0LTQsNC70LjRgtGMICVzIFt5IC0g0LTQsC9OIC0g0L3QtdGCXT8gIgogCi0jOiBidWlsdGluL2NsZWFuLmM6NzgzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcxNworIzogYnVpbHRpbi9jbGVhbi5jOjc4NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnllLlxuIgogbXNnc3RyICLQlNC+INGB0LLQuNC00LDQvdC40Y8uXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo3OTEKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3OTMKIG1zZ2lkICIiCiAiY2xlYW4gICAgICAgICAgICAgICAtIHN0YXJ0IGNsZWFuaW5nXG4iCiAiZmlsdGVyIGJ5IHBhdHRlcm4gICAtIGV4Y2x1ZGUgaXRlbXMgZnJvbSBkZWxldGlvblxuIgpAQCAtODAwOSwxNSArOTgwNywxNSBAQAogIj8gICAgICAgICAgICAgICAgICAgLSBoZWxwIGZvciBwcm9tcHQgc2VsZWN0aW9uIgogbXNnc3RyICJjbGVhbiAgICAgICAgICAgICAgIC0g0L3QsNGH0LDRgtGMINC+0YfQuNGB0YLQutGDXG5maWx0ZXIgYnkgcGF0dGVybiAgIC0g0LjRgdC60LvRjtGH0LjRgtGMINGD0LTQsNC70LXQvdC40LUg0Y3Qu9C10LzQtdC90YLQvtCyXG5zZWxlY3QgYnkgbnVtYmVycyAgIC0g0LjRgdC60LvRjtGH0LjRgtGMINGD0LTQsNC70LXQvdC40LUg0Y3Qu9C10LzQtdC90YLQvtCyINC/0L4g0L3QvtC80LXRgNCw0LxcbmFzayBlYWNoICAgICAgICAgICAgLSDQt9Cw0L/RgNCw0YjQuNCy0LDRgtGMINC/0L7QtNGC0LLQtdGA0LbQtNC10L3QuNC1INC90LAg0YPQtNCw0LvQtdC90LjQtSDQutCw0LbQtNC+0LPQviDRjdC70LXQvNC10L3RgtCwICjQutCw0LogwqtybSAtacK7KVxucXVpdCAgICAgICAgICAgICAgICAtINC/0YDQtdC60YDQsNGC0LjRgtGMINC+0YfQuNGB0YLQutGDXG5oZWxwICAgICAgICAgICAgICAgIC0g0Y3RgtC+0YIg0Y3QutGA0LDQvVxuPyAgICAgICAgICAgICAgICAgICAtINGB0L/RgNCw0LLQutCwINC/0L4g0LLRi9C00LXQu9C10L3QuNGOIgogCi0jOiBidWlsdGluL2NsZWFuLmM6ODE4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MworIzogYnVpbHRpbi9jbGVhbi5jOjgyMCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTMKIG1zZ2lkICIqKiogQ29tbWFuZHMgKioqIgogbXNnc3RyICIqKiog0JrQvtC80LDQvdC00YsgKioqIgogCi0jOiBidWlsdGluL2NsZWFuLmM6ODE5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MAorIzogYnVpbHRpbi9jbGVhbi5jOjgyMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTAKIG1zZ2lkICJXaGF0IG5vdyIKIG1zZ3N0ciAi0KfRgtC+INGC0LXQv9C10YDRjCIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjgyNworIzogYnVpbHRpbi9jbGVhbi5jOjgyOQogbXNnaWQgIldvdWxkIHJlbW92ZSB0aGUgZm9sbG93aW5nIGl0ZW06IgogbXNnaWRfcGx1cmFsICJXb3VsZCByZW1vdmUgdGhlIGZvbGxvd2luZyBpdGVtczoiCiBtc2dzdHJbMF0gItCj0LTQsNC70LjRgtGMINGB0LvQtdC00YPRjtGJ0LjQtSDRjdC70LXQvNC10L3RgtGLOiIKQEAgLTgwMjUsMzcyICs5ODIzLDM4NyBAQAogbXNnc3RyWzJdICLQo9C00LDQu9C40YLRjCDRgdC70LXQtNGD0Y7RidC40LUg0Y3Qu9C10LzQtdC90YLRizoiCiBtc2dzdHJbM10gItCj0LTQsNC70LjRgtGMINGB0LvQtdC00YPRjtGJ0LjQtSDRjdC70LXQvNC10L3RgtGLOiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjg0MworIzogYnVpbHRpbi9jbGVhbi5jOjg0NQogbXNnaWQgIk5vIG1vcmUgZmlsZXMgdG8gY2xlYW4sIGV4aXRpbmcuIgogbXNnc3RyICLQkdC+0LvRjNGI0LUg0L3QtdGCINGE0LDQudC70L7QsiDQtNC70Y8g0L7Rh9C40YHRgtC60LgsINCy0YvRhdC+0LTQuNC8LiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwNQorIzogYnVpbHRpbi9jbGVhbi5jOjkwNwogbXNnaWQgImRvIG5vdCBwcmludCBuYW1lcyBvZiBmaWxlcyByZW1vdmVkIgogbXNnc3RyICLQvdC1INCy0YvQstC+0LTQuNGC0Ywg0LjQvNC10L3QsCDRg9C00LDQu9GP0LXQvNGL0YUg0YTQsNC50LvQvtCyIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA3CisjOiBidWlsdGluL2NsZWFuLmM6OTA5CiBtc2dpZCAiZm9yY2UiCiBtc2dzdHIgItC/0YDQuNC90YPQtNC40YLQtdC70YzQvdC+IgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA4CisjOiBidWlsdGluL2NsZWFuLmM6OTEwCiBtc2dpZCAiaW50ZXJhY3RpdmUgY2xlYW5pbmciCiBtc2dzdHIgItC40L3RgtC10YDQsNC60YLQuNCy0L3QsNGPINC+0YfQuNGB0YLQutCwIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTEwCisjOiBidWlsdGluL2NsZWFuLmM6OTEyCiBtc2dpZCAicmVtb3ZlIHdob2xlIGRpcmVjdG9yaWVzIgogbXNnc3RyICLRg9C00LDQu9C40YLRjCDQutCw0YLQsNC70L7Qs9C4INC/0L7Qu9C90L7RgdGC0YzRjiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxMSBidWlsdGluL2Rlc2NyaWJlLmM6NTQ1IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDcKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NSBidWlsdGluL2xvZy5jOjE2MSBidWlsdGluL2xvZy5jOjE2MwotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OSBidWlsdGluL25hbWUtcmV2LmM6NDE1IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTcKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzcKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTMgYnVpbHRpbi9kZXNjcmliZS5jOjU0NiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ4CisjOiBidWlsdGluL2dyZXAuYzo4OTcgYnVpbHRpbi9sb2cuYzoxNzEgYnVpbHRpbi9sb2cuYzoxNzMKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTcgYnVpbHRpbi9uYW1lLXJldi5jOjQxNyBidWlsdGluL25hbWUtcmV2LmM6NDE5CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc5CiBtc2dpZCAicGF0dGVybiIKIG1zZ3N0ciAi0YjQsNCx0LvQvtC9IgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTEyCisjOiBidWlsdGluL2NsZWFuLmM6OTE0CiBtc2dpZCAiYWRkIDxwYXR0ZXJuPiB0byBpZ25vcmUgcnVsZXMiCiBtc2dzdHIgItC00L7QsdCw0LLQuNGC0YwgPNGI0LDQsdC70L7QvT4g0LIg0L/RgNCw0LLQuNC70LAg0LjQs9C90L7RgNC40YDQvtCy0LDQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTMKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTUKIG1zZ2lkICJyZW1vdmUgaWdub3JlZCBmaWxlcywgdG9vIgogbXNnc3RyICLRgtCw0LrQttC1INGD0LTQsNC70LjRgtGMINC40LPQvdC+0YDQuNGA0YPQtdC80YvQtSDRhNCw0LnQu9GLIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTE1CisjOiBidWlsdGluL2NsZWFuLmM6OTE3CiBtc2dpZCAicmVtb3ZlIG9ubHkgaWdub3JlZCBmaWxlcyIKIG1zZ3N0ciAi0YPQtNCw0LvQuNGC0Ywg0YLQvtC70YzQutC+INC40LPQvdC+0YDQuNGA0YPQtdC80YvQtSDRhNCw0LnQu9GLIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTMzCisjOiBidWlsdGluL2NsZWFuLmM6OTM1CiBtc2dpZCAiLXggYW5kIC1YIGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIgogbXNnc3RyICLQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0LTQvdC+0LLRgNC10LzQtdC90L3QviAteCDQuCAtWCIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkzNworIzogYnVpbHRpbi9jbGVhbi5jOjkzOQogbXNnaWQgIiIKICJjbGVhbi5yZXF1aXJlRm9yY2Ugc2V0IHRvIHRydWUgYW5kIG5laXRoZXIgLWksIC1uLCBub3IgLWYgZ2l2ZW47IHJlZnVzaW5nIHRvIgogIiBjbGVhbiIKIG1zZ3N0ciAiY2xlYW4ucmVxdWlyZUZvcmNlINGD0YHRgtCw0L3QvtCy0LvQtdC9INC60LDQuiB0cnVlINC4INC90Lgg0L7QtNC90LAg0LjQtyDQvtC/0YbQuNC5IC1pLCAtbiDQuNC70LggLWYg0L3QtSDRg9C60LDQt9Cw0L3QsDsg0L7RgtC60LDQtyDQvtGH0LjRgdGC0LrQuCIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjk0MAorIzogYnVpbHRpbi9jbGVhbi5jOjk0MgogbXNnaWQgIiIKICJjbGVhbi5yZXF1aXJlRm9yY2UgZGVmYXVsdHMgdG8gdHJ1ZSBhbmQgbmVpdGhlciAtaSwgLW4sIG5vciAtZiBnaXZlbjsgIgogInJlZnVzaW5nIHRvIGNsZWFuIgogbXNnc3RyICJjbGVhbi5yZXF1aXJlRm9yY2Ug0YPRgdGC0LDQvdC+0LLQu9C10L0g0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4g0LrQsNC6IHRydWUg0Lgg0L3QuCDQvtC00L3QsCDQuNC3INC+0L/RhtC40LkgLWksIC1uINC40LvQuCAtZiDQvdC1INGD0LrQsNC30LDQvdCwOyDQvtGC0LrQsNC3INC+0YfQuNGB0YLQutC4IgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDMKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NAogbXNnaWQgImdpdCBjbG9uZSBbPG9wdGlvbnM+XSBbLS1dIDxyZXBvPiBbPGRpcj5dIgogbXNnc3RyICJnaXQgY2xvbmUgWzzQvtC/0YbQuNC4Pl0gWy0tXSA80YDQtdC/0L7Qt9C40YLQvtGA0LjQuT4gWzzQutCw0YLQsNC70L7Qsz5dIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MAogbXNnaWQgImRvbid0IGNyZWF0ZSBhIGNoZWNrb3V0IgogbXNnc3RyICLQvdC1INC/0LXRgNC10LrQu9GO0YfQsNGC0Ywg0YDQsNCx0L7Rh9GD0Y4g0LrQvtC/0LjRjiDQvdCwIEhFQUQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4OSBidWlsdGluL2Nsb25lLmM6OTEgYnVpbHRpbi9pbml0LWRiLmM6NDgwCisjOiBidWlsdGluL2Nsb25lLmM6OTEgYnVpbHRpbi9jbG9uZS5jOjkzIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4OQogbXNnaWQgImNyZWF0ZSBhIGJhcmUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0YHQvtC30LTQsNGC0Ywg0LPQvtC70YvQuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5IgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTMKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NQogbXNnaWQgImNyZWF0ZSBhIG1pcnJvciByZXBvc2l0b3J5IChpbXBsaWVzIGJhcmUpIgogbXNnc3RyICLRgdC+0LfQtNCw0YLRjCDQt9C10YDQutCw0LvQviDRgNC10L/QvtC30LjRgtC+0YDQuNGPICjQstC60LvRjtGH0LDQtdGCINCyINGB0LXQsdGPINC4INC/0LDRgNCw0LzQtdGC0YAgYmFyZSkiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NQorIzogYnVpbHRpbi9jbG9uZS5jOjk3CiBtc2dpZCAidG8gY2xvbmUgZnJvbSBhIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgItC00LvRjyDQutC70L7QvdC40YDQvtCy0LDQvdC40Y8g0LjQtyDQu9C+0LrQsNC70YzQvdC+0LPQviDRgNC10L/QvtC30LjRgtC+0YDQuNGPIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTcKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5OQogbXNnaWQgImRvbid0IHVzZSBsb2NhbCBoYXJkbGlua3MsIGFsd2F5cyBjb3B5IgogbXNnc3RyICLQvdC1INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQttC10YHRgtC60LjQtSDRgdGB0YvQu9C60LgsINCy0YHQtdCz0LTQsCDQutC+0L/QuNGA0L7QstCw0YLRjCDRhNCw0LnQu9GLIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEKIG1zZ2lkICJzZXR1cCBhcyBzaGFyZWQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0L3QsNGB0YLRgNC+0LjRgtGMINC60LDQuiDQvtCx0YnQtdC00L7RgdGC0YPQv9C90YvQuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxIGJ1aWx0aW4vY2xvbmUuYzoxMDUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDQKIG1zZ2lkICJwYXRoc3BlYyIKIG1zZ3N0ciAi0YHQv9C10YbQuNGE0LjQutCw0YLQvtGALdC/0YPRgtC4IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxIGJ1aWx0aW4vY2xvbmUuYzoxMDUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDQKIG1zZ2lkICJpbml0aWFsaXplIHN1Ym1vZHVsZXMgaW4gdGhlIGNsb25lIgogbXNnc3RyICLQuNC90LjRhtC40LDQu9C40LfQuNGA0L7QstCw0YLRjCDQv9C+0LTQvNC+0LTRg9C70Lgg0LIg0LrQu9C+0L3QtSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwOAorIzogYnVpbHRpbi9jbG9uZS5jOjEwNwogbXNnaWQgIm51bWJlciBvZiBzdWJtb2R1bGVzIGNsb25lZCBpbiBwYXJhbGxlbCIKIG1zZ3N0ciAi0LrQvtC70LjRh9C10YHRgtCy0L4g0L/QvtC00LzQvtC00YPQu9C10LksINC60L7RgtC+0YDRi9C1INCx0YPQtNGD0YIg0LrQu9C+0L3QuNGA0L7QstCw0L3RiyDQv9Cw0YDRgNCw0LvQtdC70YzQvdC+IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA5IGJ1aWx0aW4vaW5pdC1kYi5jOjQ3NworIzogYnVpbHRpbi9jbG9uZS5jOjEwOCBidWlsdGluL2luaXQtZGIuYzo0ODYKIG1zZ2lkICJ0ZW1wbGF0ZS1kaXJlY3RvcnkiCiBtc2dzdHIgItC60LDRgtCw0LvQvtCzLdGI0LDQsdC70L7QvdC+0LIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAgYnVpbHRpbi9pbml0LWRiLmM6NDc4CisjOiBidWlsdGluL2Nsb25lLmM6MTA5IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NwogbXNnaWQgImRpcmVjdG9yeSBmcm9tIHdoaWNoIHRlbXBsYXRlcyB3aWxsIGJlIHVzZWQiCiBtc2dzdHIgItC60LDRgtCw0LvQvtCzLCDRiNCw0LHQu9C+0L3RiyDQuNC3INC60L7RgtC+0YDQvtCz0L4g0LHRg9C00YPRgiDQuNGB0L/QvtC70YzQt9C+0LLQsNC90YsiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTIgYnVpbHRpbi9jbG9uZS5jOjExNCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2OAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3MzkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTEgYnVpbHRpbi9jbG9uZS5jOjExMyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTkKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0YHRgdGL0LvQsNC10LzRi9C5INGA0LXQv9C+0LfQuNGC0L7RgNC40LkiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzQxCisjOiBidWlsdGluL2Nsb25lLmM6MTE1IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzgxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2MQogbXNnaWQgInVzZSAtLXJlZmVyZW5jZSBvbmx5IHdoaWxlIGNsb25pbmciCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30YPQudGC0LUgLS1yZWZlcmVuY2Ug0YLQvtC70YzQutC+INC/0YDQuCDQutC70L7QvdC40YDQvtCy0LDQvdC40LgiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTcgYnVpbHRpbi9jb2x1bW4uYzoyNyBidWlsdGluL21lcmdlLWZpbGUuYzo0NAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTk0IGJ1aWx0aW4vcmVwYWNrLmM6MzIwCisjOiBidWlsdGluL2Nsb25lLmM6MTE2IGJ1aWx0aW4vY29sdW1uLmM6MjcgYnVpbHRpbi9tZXJnZS1maWxlLmM6NDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwNiBidWlsdGluL3JlcGFjay5jOjMyOQogbXNnaWQgIm5hbWUiCiBtc2dzdHIgItC40LzRjyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExOAorIzogYnVpbHRpbi9jbG9uZS5jOjExNwogbXNnaWQgInVzZSA8bmFtZT4gaW5zdGVhZCBvZiAnb3JpZ2luJyB0byB0cmFjayB1cHN0cmVhbSIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIDzQuNC80Y8+INCy0LzQtdGB0YLQviDCq29yaWdpbsK7INC00LvRjyDQvtGC0YHQu9C10LbQuNCy0LDQvdC40Y8g0LLRi9GI0LXRgdGC0L7Rj9GJ0LXQs9C+INGA0LXQv9C+0LfQuNGC0L7RgNC40Y8iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTkKIG1zZ2lkICJjaGVja291dCA8YnJhbmNoPiBpbnN0ZWFkIG9mIHRoZSByZW1vdGUncyBIRUFEIgogbXNnc3RyICLQv9C10YDQtdC60LvRjtGH0LjRgtGM0YHRjyDQvdCwIDzQstC10YLQutGDPiwg0LLQvNC10YHRgtC+IEhFQUQg0LLQvdC10YjQvdC10LPQviDRgNC10L/QvtC30LjRgtC+0YDQuNGPIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTIyCisjOiBidWlsdGluL2Nsb25lLmM6MTIxCiBtc2dpZCAicGF0aCB0byBnaXQtdXBsb2FkLXBhY2sgb24gdGhlIHJlbW90ZSIKIG1zZ3N0ciAi0L/Rg9GC0Ywg0LogZ2l0LXVwbG9hZC1wYWNrINC90LAg0LLQvdC10YjQvdC10Lwg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyMyBidWlsdGluL2ZldGNoLmM6MTM5IGJ1aWx0aW4vZ3JlcC5jOjgxNAotIzogYnVpbHRpbi9wdWxsLmM6MjE2CisjOiBidWlsdGluL2Nsb25lLmM6MTIyIGJ1aWx0aW4vZmV0Y2guYzoxNDIgYnVpbHRpbi9ncmVwLmM6ODM2CisjOiBidWlsdGluL3B1bGwuYzoyMjUKIG1zZ2lkICJkZXB0aCIKIG1zZ3N0ciAi0LPQu9GD0LHQuNC90LAiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjQKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjMKIG1zZ2lkICJjcmVhdGUgYSBzaGFsbG93IGNsb25lIG9mIHRoYXQgZGVwdGgiCiBtc2dzdHIgItGB0LTQtdC70LDRgtGMINGH0LDRgdGC0LjRh9C90YvQuSDQutC70L7QvSDRg9C60LDQt9Cw0L3QvdC+0Lkg0LPQu9GD0LHQuNC90YsiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjUgYnVpbHRpbi9mZXRjaC5jOjE0MSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxODUKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNTQKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjQgYnVpbHRpbi9mZXRjaC5jOjE0NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTUKIG1zZ2lkICJ0aW1lIgogbXNnc3RyICLQstGA0LXQvNGPIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI2CisjOiBidWlsdGluL2Nsb25lLmM6MTI1CiBtc2dpZCAiY3JlYXRlIGEgc2hhbGxvdyBjbG9uZSBzaW5jZSBhIHNwZWNpZmljIHRpbWUiCiBtc2dzdHIgItGB0LTQtdC70LDRgtGMINGH0LDRgdGC0LjRh9C90YvQuSDQutC70L7QvSDQtNC+INC+0L/RgNC10LTQtdC70LXQvdC90L7Qs9C+INCy0YDQtdC80LXQvdC4IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI3IGJ1aWx0aW4vZmV0Y2guYzoxNDMgYnVpbHRpbi9mZXRjaC5jOjE2NgorIzogYnVpbHRpbi9jbG9uZS5jOjEyNiBidWlsdGluL2ZldGNoLmM6MTQ2IGJ1aWx0aW4vZmV0Y2guYzoxNjkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTM4OQogbXNnaWQgInJldmlzaW9uIgogbXNnc3RyICLRgNC10LTQsNC60YbQuNGPIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI4IGJ1aWx0aW4vZmV0Y2guYzoxNDQKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjcgYnVpbHRpbi9mZXRjaC5jOjE0NwogbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgY2xvbmUsIGV4Y2x1ZGluZyByZXYiCiBtc2dzdHIgItGD0LPQu9GD0LHQuNGC0Ywg0LjRgdGC0L7RgNC40Y4g0YfQsNGB0YLQuNGH0L3QvtCz0L4g0LrQu9C+0L3QsCDQuNGB0LrQu9GO0YfQsNGPINGA0LXQtNCw0LrRhtC40Y4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjkKIG1zZ2lkICJjbG9uZSBvbmx5IG9uZSBicmFuY2gsIEhFQUQgb3IgLS1icmFuY2giCiBtc2dzdHIgItC60LvQvtC90LjRgNC+0LLQsNGC0Ywg0YLQvtC70YzQutC+INC+0LTQvdGDINCy0LXRgtC60YMsIEhFQUQg0LjQu9C4IC0tYnJhbmNoIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTMyCisjOiBidWlsdGluL2Nsb25lLmM6MTMxCiBtc2dpZCAiZG9uJ3QgY2xvbmUgYW55IHRhZ3MsIGFuZCBtYWtlIGxhdGVyIGZldGNoZXMgbm90IHRvIGZvbGxvdyB0aGVtIgogbXNnc3RyICLQvdC1INC60LvQvtC90LjRgNC+0LLQsNGC0Ywg0LzQtdGC0LrQuCwg0LAg0YLQsNC60LbQtSDQvdCw0YHRgtGA0L7QuNGC0YwsINGH0YLQvtCx0Ysg0L3QtSDQutC70L7QvdC40YDQvtCy0LDQu9C40YHRjCDQuCDQsiDQtNCw0LvRjNC90LXQudGI0LXQvCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNAorIzogYnVpbHRpbi9jbG9uZS5jOjEzMwogbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIGJlIHNoYWxsb3ciCiBtc2dzdHIgItCy0YHQtSDRgdC60LvQvtC90LjRgNC+0LLQsNC90L3Ri9C1INC/0L7QtNC80L7QtNGD0LvQuCDQsdGD0LTRg9GCINGH0LDRgdGC0LjRh9C90YvQvNC4INC60LvQvtC90LDQvNC4IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM1IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NgorIzogYnVpbHRpbi9jbG9uZS5jOjEzNCBidWlsdGluL2luaXQtZGIuYzo0OTUKIG1zZ2lkICJnaXRkaXIiCiBtc2dzdHIgItC60LDRgtCw0LvQvtCzLWdpdCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNiBidWlsdGluL2luaXQtZGIuYzo0ODcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzUgYnVpbHRpbi9pbml0LWRiLmM6NDk2CiBtc2dpZCAic2VwYXJhdGUgZ2l0IGRpciBmcm9tIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAi0YDQsNC30LzQtdGB0YLQuNGC0Ywg0LrQsNGC0LDQu9C+0LMgZ2l0INC+0YLQtNC10LvRjNC90L4g0L7RgiDRgNCw0LHQvtGH0LXQuSDQutC+0L/QuNC4IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM3CisjOiBidWlsdGluL2Nsb25lLmM6MTM2CiBtc2dpZCAia2V5PXZhbHVlIgogbXNnc3RyICLQutC70Y7Rhz3Qt9C90LDRh9C10L3QuNC1IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM4CisjOiBidWlsdGluL2Nsb25lLmM6MTM3CiBtc2dpZCAic2V0IGNvbmZpZyBpbnNpZGUgdGhlIG5ldyByZXBvc2l0b3J5IgogbXNnc3RyICLRg9GB0YLQsNC90L7QstC40YLRjCDQv9Cw0YDQsNC80LXRgtGA0Ysg0LLQvdGD0YLRgNC4INC90L7QstC+0LPQviDRgNC10L/QvtC30LjRgtC+0YDQuNGPIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM5IGJ1aWx0aW4vZmV0Y2guYzoxNjIgYnVpbHRpbi9wdWxsLmM6MjI5Ci0jOiBidWlsdGluL3B1c2guYzo1ODMKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzkgYnVpbHRpbi9mZXRjaC5jOjE2NCBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL3B1c2guYzo1ODUgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzIKK21zZ2lkICJzZXJ2ZXItc3BlY2lmaWMiCittc2dzdHIgItC30LDQstC40YHQuNGCLdC+0YIt0YHQtdGA0LLQtdGA0LAiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzkgYnVpbHRpbi9mZXRjaC5jOjE2NCBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL3B1c2guYzo1ODUgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzMKK21zZ2lkICJvcHRpb24gdG8gdHJhbnNtaXQiCittc2dzdHIgItC/0LXRgNC10LTQsNCy0LDQtdC80YvQtSDQvtC/0YbQuNC4IgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQwIGJ1aWx0aW4vZmV0Y2guYzoxNjUgYnVpbHRpbi9wdWxsLmM6MjM4CisjOiBidWlsdGluL3B1c2guYzo1ODYKIG1zZ2lkICJ1c2UgSVB2NCBhZGRyZXNzZXMgb25seSIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGC0L7Qu9GM0LrQviBJUHY0INCw0LTRgNC10YHQsCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjE0MSBidWlsdGluL2ZldGNoLmM6MTY0IGJ1aWx0aW4vcHVsbC5jOjIzMgotIzogYnVpbHRpbi9wdXNoLmM6NTg1CisjOiBidWlsdGluL2Nsb25lLmM6MTQyIGJ1aWx0aW4vZmV0Y2guYzoxNjcgYnVpbHRpbi9wdWxsLmM6MjQxCisjOiBidWlsdGluL3B1c2guYzo1ODgKIG1zZ2lkICJ1c2UgSVB2NiBhZGRyZXNzZXMgb25seSIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGC0L7Qu9GM0LrQviBJUHY2INCw0LTRgNC10YHQsCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjI3OQorIzogYnVpbHRpbi9jbG9uZS5jOjI4MAogbXNnaWQgIiIKICJObyBkaXJlY3RvcnkgbmFtZSBjb3VsZCBiZSBndWVzc2VkLlxuIgogIlBsZWFzZSBzcGVjaWZ5IGEgZGlyZWN0b3J5IG9uIHRoZSBjb21tYW5kIGxpbmUiCiBtc2dzdHIgItCY0LzRjyDQutCw0YLQsNC70L7Qs9CwINC90LUg0LzQvtC20LXRgiDQsdGL0YLRjCDRg9Cz0LDQtNCw0L3Qvi5cbtCj0LrQsNC20LjRgtC1INC40LzRjyDQutCw0YLQsNC70L7Qs9CwINGBINC/0L7QvNC+0YnRjNGOINC/0LDRgNCw0LzQtdGC0YDQsCDQutC+0LzQsNC90LTQvdC+0Lkg0YHRgtGA0L7QutC4IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MzMyCisjOiBidWlsdGluL2Nsb25lLmM6MzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImluZm86IENvdWxkIG5vdCBhZGQgYWx0ZXJuYXRlIGZvciAnJXMnOiAlc1xuIgogbXNnc3RyICLQuNC90YTQvtGA0LzQsNGG0LjRjzog0J3QtSDRg9C00LDQu9C+0YHRjCDQtNC+0LHQsNCy0LjRgtGMINCw0LvRjNGC0LXRgNC90LDRgtC40LLRgyDQtNC70Y8gwqslc8K7OiAlc1xuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDA0CisjOiBidWlsdGluL2Nsb25lLmM6NDA1CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywgwqslc8K7IgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDEyCisjOiBidWlsdGluL2Nsb25lLmM6NDEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGV4aXN0cyBhbmQgaXMgbm90IGEgZGlyZWN0b3J5IgogbXNnc3RyICIlcyDRg9C20LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIg0Lgg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC60LDRgtCw0LvQvtCz0L7QvCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQyNgorIzogYnVpbHRpbi9jbG9uZS5jOjQyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RhdCAlc1xuIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBzdGF0ICVzXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0NDgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHVubGluayAnJXMnIgorbXNnc3RyICLRgdCx0L7QuSDQvtGC0YHQvtC10LTQuNC90LXQvdC40Y8gwqslc8K7IgorCisjOiBidWlsdGluL2Nsb25lLmM6NDQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgbGluayAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINGB0YHRi9C70LrRgyDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0NTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNvcHkgZmlsZSB0byAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC60L7Qv9C40YDQvtCy0LDRgtGMINGE0LDQudC7INCyIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ3OAorIzogYnVpbHRpbi9jbG9uZS5jOjQ3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJkb25lLlxuIgogbXNnc3RyICLQs9C+0YLQvtCy0L4uXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0OTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0OTMKIG1zZ2lkICIiCiAiQ2xvbmUgc3VjY2VlZGVkLCBidXQgY2hlY2tvdXQgZmFpbGVkLlxuIgogIllvdSBjYW4gaW5zcGVjdCB3aGF0IHdhcyBjaGVja2VkIG91dCB3aXRoICdnaXQgc3RhdHVzJ1xuIgogImFuZCByZXRyeSB0aGUgY2hlY2tvdXQgd2l0aCAnZ2l0IGNoZWNrb3V0IC1mIEhFQUQnXG4iCiBtc2dzdHIgItCa0LvQvtC90LjRgNC+0LLQsNC90LjQtSDQv9GA0L7RiNC70L4g0YPRgdC/0LXRiNC90L4sINC90L4g0LLQviDQstGA0LXQvNGPINC/0LXRgNC10LrQu9GO0YfQtdC90LjRjyDRgdC+0YHRgtC+0Y/QvdC40Y8g0L/RgNC+0LjQt9C+0YjQu9CwINC+0YjQuNCx0LrQsC5cbtChINC/0L7QvNC+0YnRjCDQutC+0LzQsNC90LTRiyDCq2dpdCBzdGF0dXPCuyDQstGLINC80L7QttC10YLQtSDQv9GA0L7RgdC80L7RgtGA0LXRgtGMLCDQutCw0LrQuNC1INGE0LDQudC70Ysg0LHRi9C70Lgg0L7QsdC90L7QstC70LXQvdGLLFxu0LAg0YEg0L/QvtC80L7RidGM0Y4gwqtnaXQgY2hlY2tvdXQgLWYgSEVBRMK7INC80L7QttC90L4g0L/QvtCy0YLQvtGA0LjRgtGMINC/0L7Qv9GL0YLQutGDINC/0LXRgNC10LrQu9GO0YfQtdC90LjRjyDQvdCwINCy0LXRgtC60YMgXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo1NjkKKyM6IGJ1aWx0aW4vY2xvbmUuYzo1NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZpbmQgcmVtb3RlIGJyYW5jaCAlcyB0byBjbG9uZS4iCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L3QsNC50YLQuCDQstC90LXRiNC90Y7RjiDQstC10YLQutGDICVzINC00LvRjyDQutC70L7QvdC40YDQvtCy0LDQvdC40Y8uIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NjgwCisjOiBidWlsdGluL2Nsb25lLmM6Njg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7QsdC90L7QstC40YLRjCAlcyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjczMAorIzogYnVpbHRpbi9jbG9uZS5jOjczOQogbXNnaWQgInJlbW90ZSBIRUFEIHJlZmVycyB0byBub25leGlzdGVudCByZWYsIHVuYWJsZSB0byBjaGVja291dC5cbiIKIG1zZ3N0ciAi0LLQvdC10YjQvdC40LkgSEVBRCDRgdGB0YvQu9Cw0LXRgtGB0Y8g0L3QsCDQvdC10YHRg9GJ0LXRgdGC0LLRg9GO0YnRg9GOINGB0YHRi9C70LrRgywg0L3QtdC70YzQt9GPINC/0LXRgNC10LrQu9GO0YfQuNGC0YzRgdGPINC90LAg0YLQsNC60YPRjiDQstC10YDRgdC40Y4uXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo3NjAKKyM6IGJ1aWx0aW4vY2xvbmUuYzo3NzAKIG1zZ2lkICJ1bmFibGUgdG8gY2hlY2tvdXQgd29ya2luZyB0cmVlIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0LXRgNC10LrQu9GO0YfQuNGC0YzRgdGPINC90LAg0LLQtdGA0YHQuNGOINCyINGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4MDUKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4MTUKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcGFyYW1ldGVycyB0byBjb25maWcgZmlsZSIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMINC/0LDRgNCw0LzQtdGC0YDRiyDQsiDRhNCw0LnQuyDQutC+0L3RhNC40LPRg9GA0LDRhtC40LgiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4NjgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4NzgKIG1zZ2lkICJjYW5ub3QgcmVwYWNrIHRvIGNsZWFuIHVwIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCDQv9C10YDQtdC/0LDQutC+0LLQutGDINC00LvRjyDQvtGH0LjRgdGC0LrQuCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjg3MAorIzogYnVpbHRpbi9jbG9uZS5jOjg4MAogbXNnaWQgImNhbm5vdCB1bmxpbmsgdGVtcG9yYXJ5IGFsdGVybmF0ZXMgZmlsZSIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0YHQvtC10LTQuNC90LjRgtGMINCy0YDQtdC80LXQvdC90YvQtSDQsNC70YzRgtC10YDQvdCw0YLQuNCy0L3Ri9C1INGE0LDQudC70YsiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MTAgYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTM1CisjOiBidWlsdGluL2Nsb25lLmM6OTIwIGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk1MgogbXNnaWQgIlRvbyBtYW55IGFyZ3VtZW50cy4iCiBtc2dzdHIgItCh0LvQuNGI0LrQvtC8INC80L3QvtCz0L4g0LDRgNCz0YPQvNC10L3RgtC+0LIuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTE0CisjOiBidWlsdGluL2Nsb25lLmM6OTI0CiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIHJlcG9zaXRvcnkgdG8gY2xvbmUuIgogbXNnc3RyICLQktGLINC00L7Qu9C20L3RiyDRg9C60LDQt9Cw0YLRjCDRgNC10L/QvtC30LjRgtC+0YDQuNC5INC00LvRjyDQutC70L7QvdC40YDQvtCy0LDQvdC40Y8uIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTI3CisjOiBidWlsdGluL2Nsb25lLmM6OTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIi0tYmFyZSBhbmQgLS1vcmlnaW4gJXMgb3B0aW9ucyBhcmUgaW5jb21wYXRpYmxlLiIKIG1zZ3N0ciAiLS1iYXJlINC4IC0tb3JpZ2luICVzINC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+LiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkzMAorIzogYnVpbHRpbi9jbG9uZS5jOjk0MAogbXNnaWQgIi0tYmFyZSBhbmQgLS1zZXBhcmF0ZS1naXQtZGlyIGFyZSBpbmNvbXBhdGlibGUuIgogbXNnc3RyICItLWJhcmUg0LggLS1zZXBhcmF0ZS1naXQtZGlyINC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+LiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk0MworIzogYnVpbHRpbi9jbG9uZS5jOjk1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBvc2l0b3J5ICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgItGA0LXQv9C+0LfQuNGC0L7RgNC40Lkgwqslc8K7INC90LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NDkgYnVpbHRpbi9mZXRjaC5jOjE1MTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NTkgYnVpbHRpbi9mZXRjaC5jOjE2MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVwdGggJXMgaXMgbm90IGEgcG9zaXRpdmUgbnVtYmVyIgogbXNnc3RyICLQs9C70YPQsdC40L3QsCAlcyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0L/QvtC70L7QttC40YLQtdC70YzQvdGL0Lwg0YfQuNGB0LvQvtC8IgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTU5CisjOiBidWlsdGluL2Nsb25lLmM6OTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlc3RpbmF0aW9uIHBhdGggJyVzJyBhbHJlYWR5IGV4aXN0cyBhbmQgaXMgbm90IGFuIGVtcHR5IGRpcmVjdG9yeS4iCiBtc2dzdHIgItGG0LXQu9C10LLQvtC5INC/0YPRgtGMIMKrJXPCuyDRg9C20LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIg0Lgg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC/0YPRgdGC0YvQvCDQutCw0YLQsNC70L7Qs9C+0LwuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTY5CisjOiBidWlsdGluL2Nsb25lLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIndvcmtpbmcgdHJlZSAnJXMnIGFscmVhZHkgZXhpc3RzLiIKIG1zZ3N0ciAi0YDQsNCx0L7Rh9C40Lkg0LrQsNGC0LDQu9C+0LMgwqslc8K7INGD0LbQtSDRgdGD0YnQtdGB0YLQstGD0LXRgi4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5ODQgYnVpbHRpbi9jbG9uZS5jOjEwMDUgYnVpbHRpbi9kaWZmdG9vbC5jOjI3MQotIzogYnVpbHRpbi93b3JrdHJlZS5jOjI0NiBidWlsdGluL3dvcmt0cmVlLmM6Mjc2CisjOiBidWlsdGluL2Nsb25lLmM6OTk0IGJ1aWx0aW4vY2xvbmUuYzoxMDE1IGJ1aWx0aW4vZGlmZnRvb2wuYzoyNjQKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyOTYgYnVpbHRpbi93b3JrdHJlZS5jOjMyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgb2YgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDRgNC+0LTQuNGC0LXQu9GM0YHQutC40LUg0LrQsNGC0LDQu9C+0LPQuCDQtNC70Y8gwqslc8K7IgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTg5CisjOiBidWlsdGluL2Nsb25lLmM6OTk5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgd29yayB0cmVlIGRpciAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINGA0LDQsdC+0YfQuNC5INC60LDRgtCw0LvQvtCzIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwMDkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNsb25pbmcgaW50byBiYXJlIHJlcG9zaXRvcnkgJyVzJy4uLlxuIgogbXNnc3RyICLQmtC70L7QvdC40YDQvtCy0LDQvdC40LUg0LIg0LPQvtC70YvQuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5IMKrJXPCu+KAplxuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxMQorIzogYnVpbHRpbi9jbG9uZS5jOjEwMjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2xvbmluZyBpbnRvICclcycuLi5cbiIKIG1zZ3N0ciAi0JrQu9C+0L3QuNGA0L7QstCw0L3QuNC1INCyIMKrJXPCu+KAplxuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAzNQorIzogYnVpbHRpbi9jbG9uZS5jOjEwNDUKIG1zZ2lkICIiCiAiY2xvbmUgLS1yZWN1cnNpdmUgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBib3RoIC0tcmVmZXJlbmNlIGFuZCAtLXJlZmVyZW5jZS0iCiAiaWYtYWJsZSIKIG1zZ3N0ciAi0LrQu9C+0L3QuNGA0L7QstCw0L3QuNC1INGBINC/0LDRgNCw0LzQtdGC0YDQvtC8IC0tcmVjdXJzaXZlINC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+INC90Lgg0YEgLS1yZWZlcmVuY2UsINC90Lgg0YEgLS1yZWZlcmVuY2UtaWYtYWJsZSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwOTYKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTA2CiBtc2dpZCAiLS1kZXB0aCBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCiBtc2dzdHIgIi0tZGVwdGgg0LjQs9C90L7RgNC40YDRg9C10YLRgdGPINC90LAg0LvQvtC60LDQu9GM0L3Ri9GFINC60LvQvtC90LDRhTsg0LLQvNC10YHRgtC+INGN0YLQvtCz0L4g0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSBmaWxlOi8vLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwOTgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTA4CiBtc2dpZCAiLS1zaGFsbG93LXNpbmNlIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKIG1zZ3N0ciAiLS1zaGFsbG93LXNpbmNlINC40LPQvdC+0YDQuNGA0YPQtdGC0YHRjyDQvdCwINC70L7QutCw0LvRjNC90YvRhSDQutC70L7QvdCw0YU7INC40YHQv9C+0LvRjNC30YPQudGC0LUgZmlsZTovLyDQstC80LXRgdGC0L4g0Y3RgtC+0LPQvi4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAwCisjOiBidWlsdGluL2Nsb25lLmM6MTExMAogbXNnaWQgIi0tc2hhbGxvdy1leGNsdWRlIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKIG1zZ3N0ciAiLS1zaGFsbG93LWV4Y2x1ZGUg0LjQs9C90L7RgNC40YDRg9C10YLRgdGPINC90LAg0LvQvtC60LDQu9GM0L3Ri9GFINC60LvQvtC90LDRhTsg0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSBmaWxlOi8vINCy0LzQtdGB0YLQviDRjdGC0L7Qs9C+LiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMDIKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTEyCiBtc2dpZCAiLS1maWx0ZXIgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTA1CisjOiBidWlsdGluL2Nsb25lLmM6MTExNQogbXNnaWQgInNvdXJjZSByZXBvc2l0b3J5IGlzIHNoYWxsb3csIGlnbm9yaW5nIC0tbG9jYWwiCiBtc2dzdHIgItC40YHRhdC+0LTQvdGL0Lkg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuSDRj9Cy0LvRj9C10YLRgdGPINGH0LDRgdGC0LjRh9C90YvQvCwgLS1sb2NhbCDQuNCz0L3QvtGA0LjRgNGD0LXRgtGB0Y8iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTEwCisjOiBidWlsdGluL2Nsb25lLmM6MTEyMAogbXNnaWQgIi0tbG9jYWwgaXMgaWdub3JlZCIKIG1zZ3N0ciAiLS1sb2NhbCDQuNCz0L3QvtGA0LjRgNGD0LXRgtGB0Y8iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTgwIGJ1aWx0aW4vY2xvbmUuYzoxMTg4CisjOiBidWlsdGluL2Nsb25lLmM6MTE5NyBidWlsdGluL2Nsb25lLmM6MTIwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdGUgYnJhbmNoICVzIG5vdCBmb3VuZCBpbiB1cHN0cmVhbSAlcyIKIG1zZ3N0ciAi0JLQvdC10YjQvdGP0Y8g0LLQtdGC0LrQsCAlcyDQvdC1INC90LDQudC00LXQvdCwINCyINCy0YvRiNC10YHRgtC+0Y/RidC10Lwg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuCAlcyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExOTEKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjA4CiBtc2dpZCAiWW91IGFwcGVhciB0byBoYXZlIGNsb25lZCBhbiBlbXB0eSByZXBvc2l0b3J5LiIKIG1zZ3N0ciAi0J/QvtGF0L7QttC1LCDRh9GC0L4g0LLRiyDQutC70L7QvdC40YDQvtCy0LDQu9C4INC/0YPRgdGC0L7QuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5LiIKIApAQCAtODQyNiwyMiArMTAyMzksODggQEAKIG1zZ2lkICItLWNvbW1hbmQgbXVzdCBiZSB0aGUgZmlyc3QgYXJndW1lbnQiCiBtc2dzdHIgItC/0LDRgNCw0LzQtdGC0YAgLS1jb21tYW5kINC00L7Qu9C20LXQvSDQsdGL0YLRjCDQv9C10YDQstGL0LwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzgKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxOAorbXNnaWQgIiIKKyJnaXQgY29tbWl0LXRyZWUgWygtcCA8cGFyZW50PikuLi5dIFstU1s8a2V5aWQ+XV0gWygtbSA8bWVzc2FnZT4pLi4uXSBbKC1GICIKKyI8ZmlsZT4pLi4uXSA8dHJlZT4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjMxCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXJlbnQgJXMgaWdub3JlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6NTYgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEzNiBidWlsdGluL2xvZy5jOjUyMAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gb3BlbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzo5NgorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byByZWFkICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk4CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIGNsb3NlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExMQorbXNnaWQgInBhcmVudCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTEyCittc2dpZCAiaWQgb2YgYSBwYXJlbnQgY29tbWl0IG9iamVjdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE0IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MCBidWlsdGluL21lcmdlLmM6MjY4CisjOiBidWlsdGluL25vdGVzLmM6NDA5IGJ1aWx0aW4vbm90ZXMuYzo1NzUgYnVpbHRpbi9zdGFzaC5jOjE0NzMKKyM6IGJ1aWx0aW4vdGFnLmM6NDA2Cittc2dpZCAibWVzc2FnZSIKK21zZ3N0ciAi0YHQvtC+0LHRidC10L3QuNC1IgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE1IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MAorbXNnaWQgImNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICLRgdC+0L7QsdGJ0LXQvdC40LUg0LrQvtC80LzQuNGC0LAiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTgKK21zZ2lkICJyZWFkIGNvbW1pdCBsb2cgbWVzc2FnZSBmcm9tIGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMSBidWlsdGluL2NvbW1pdC5jOjE0OTIgYnVpbHRpbi9tZXJnZS5jOjI4MworIzogYnVpbHRpbi9wdWxsLmM6MTkzIGJ1aWx0aW4vcmV2ZXJ0LmM6MTE3Cittc2dpZCAiR1BHIHNpZ24gY29tbWl0IgorbXNnc3RyICLQv9C+0LTQv9C40YHQsNGC0Ywg0LrQvtC80LzQuNGCINGBINC/0L7QvNC+0YnRjNGOIEdQRyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjEzMworbXNnaWQgIm11c3QgZ2l2ZSBleGFjdGx5IG9uZSB0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxNDAKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byByZWFkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDEKIG1zZ2lkICJnaXQgY29tbWl0IFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKIG1zZ3N0ciAiZ2l0IGNvbW1pdCBbPNC+0L/RhtC40Lg+XSBbLS1dIDzRgdC/0LXRhtC40YTQuNC60LDRgtC+0YAt0L/Rg9GC0Lg+4oCmIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQzCisjOiBidWlsdGluL2NvbW1pdC5jOjQ2CiBtc2dpZCAiZ2l0IHN0YXR1cyBbPG9wdGlvbnM+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCiBtc2dzdHIgImdpdCBzdGF0dXMgWzzQvtC/0YbQuNC4Pl0gWy0tXSA80YHQv9C10YbQuNGE0LjQutCw0YLQvtGALdC/0YPRgtC4PuKApiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0OAorIzogYnVpbHRpbi9jb21taXQuYzo1MQogbXNnaWQgIiIKICJZb3UgYXNrZWQgdG8gYW1lbmQgdGhlIG1vc3QgcmVjZW50IGNvbW1pdCwgYnV0IGRvaW5nIHNvIHdvdWxkIG1ha2VcbiIKICJpdCBlbXB0eS4gWW91IGNhbiByZXBlYXQgeW91ciBjb21tYW5kIHdpdGggLS1hbGxvdy1lbXB0eSwgb3IgeW91IGNhblxuIgogInJlbW92ZSB0aGUgY29tbWl0IGVudGlyZWx5IHdpdGggXCJnaXQgcmVzZXQgSEVBRF5cIi5cbiIKIG1zZ3N0ciAi0JLRiyDQv9C+0L/RgNC+0YHQuNC70Lgg0LjRgdC/0YDQsNCy0LjRgtGMINC/0L7RgdC70LXQtNC90LjQuSDQutC+0LzQvNC40YIsINC90L4g0LTQtdC70LDRjyDRjdGC0L4g0LLRiyDRgdC00LXQu9Cw0LXRgtC1XG7Qv9GD0YHRgtC+0Lkg0LrQvtC80LzQuNGCLiDQktGLINC80L7QttC10YLQtSDQv9C+0LLRgtC+0YDQuNGC0Ywg0Y3RgtGDINC60L7QvNCw0L3QtNGDINGBINC+0L/RhtC40LXQuSAtLWFsbG93LWVtcHR5XG7QuNC70Lgg0LLRiyDQvNC+0LbQtdGC0LUg0YPQtNCw0LvQuNGC0Ywg0LrQvtC80LzQuNGCINC/0L7Qu9C90L7RgdGC0YzRjiDRgSDQv9C+0LzQvtGJ0YzRjiDQutC+0LzQsNC90LTRiyBcbsKrZ2l0IHJlc2V0IEhFQURewrsuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTYKIG1zZ2lkICIiCiAiVGhlIHByZXZpb3VzIGNoZXJyeS1waWNrIGlzIG5vdyBlbXB0eSwgcG9zc2libHkgZHVlIHRvIGNvbmZsaWN0IHJlc29sdXRpb24uXG4iCiAiSWYgeW91IHdpc2ggdG8gY29tbWl0IGl0IGFueXdheSwgdXNlOlxuIgpAQCAtODQ1MCwxMSArMTAzMjksMTEgQEAKICJcbiIKIG1zZ3N0ciAi0JrQvtC/0LjRgNGD0LXQvNGL0Lkg0LrQvtC80LzQuNGCINGC0LXQv9C10YDRjCDQv9GD0YHRgiwg0LLQvtC30LzQvtC20L3QviDQv9C+0YHQu9C1INGA0LDQt9GA0LXRiNC10L3QuNGPINC60L7QvdGE0LvQuNC60YLQvtCyLlxu0JXRgdC70Lgg0LLRiyDQstGB0LUg0YDQsNCy0L3QviDRhdC+0YLQuNGC0LUg0YHQtNC10LvQsNGC0Ywg0L/Rg9GB0YLQvtC5INC60L7QvNC80LjRgiwg0LjRgdC/0L7Qu9GM0LfRg9C50YLQtTpcblxuICAgIGdpdCBjb21taXQgLS1hbGxvdy1lbXB0eVxuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjMKIG1zZ2lkICJPdGhlcndpc2UsIHBsZWFzZSB1c2UgJ2dpdCByZXNldCdcbiIKIG1zZ3N0ciAi0JIg0L/RgNC+0YLQuNCy0L3QvtC8INGB0LvRg9GH0LDQtSwg0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCByZXNldMK7XG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjYKIG1zZ2lkICIiCiAiSWYgeW91IHdpc2ggdG8gc2tpcCB0aGlzIGNvbW1pdCwgdXNlOlxuIgogIlxuIgpAQCAtODQ2NCw5OCArMTAzNDMsOTggQEAKICJ0aGUgcmVtYWluaW5nIGNvbW1pdHMuXG4iCiBtc2dzdHIgItCV0YHQu9C4INCy0Ysg0YXQvtGC0LjRgtC1INC/0YDQvtC/0YPRgdGC0LjRgiDRjdGC0L7RgiDQutC+0LzQvNC40YIsINC40YHQv9C+0LvRjNC30YPQudGC0LUg0LrQvtC80LDQvdC00YM6XG5cbiAgICBnaXQgcmVzZXRcblxu0J/QvtGB0LvQtSDRjdGC0L7Qs9C+IMKrZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWXCuyDQv9GA0L7QtNC+0LvQttC40YIg0LrQvtC/0LjRgNC+0LLQsNC90LjQtSDQvtGB0YLQsNCy0YjQuNGF0YHRjyDQutC+0LzQvNC40YLQvtCyLlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjMwNgorIzogYnVpbHRpbi9jb21taXQuYzozMTIKIG1zZ2lkICJmYWlsZWQgdG8gdW5wYWNrIEhFQUQgdHJlZSBvYmplY3QiCiBtc2dzdHIgItGB0LHQvtC5INGA0LDRgdC/0LDQutC+0LLQutC4INC+0LHRitC10LrRgtCwINC00LXRgNC10LLQsCBIRUFEIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM0NworIzogYnVpbHRpbi9jb21taXQuYzozNTMKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBpbmRleCIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQstGA0LXQvNC10L3QvdGL0Lkg0LjQvdC00LXQutGBIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM1MworIzogYnVpbHRpbi9jb21taXQuYzozNTkKIG1zZ2lkICJpbnRlcmFjdGl2ZSBhZGQgZmFpbGVkIgogbXNnc3RyICLRgdCx0L7QuSDQuNC90YLQtdGA0LDQutGC0LjQstC90L7Qs9C+INC00L7QsdCw0LLQu9C10L3QuNGPIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM2NgorIzogYnVpbHRpbi9jb21taXQuYzozNzMKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIHRlbXBvcmFyeSBpbmRleCIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtCx0L3QvtCy0LjRgtGMINCy0YDQtdC80LXQvdC90YvQuSDQuNC90LTQtdC60YEiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzY4CisjOiBidWlsdGluL2NvbW1pdC5jOjM3NQogbXNnaWQgIkZhaWxlZCB0byB1cGRhdGUgbWFpbiBjYWNoZSB0cmVlIgogbXNnc3RyICLQodCx0L7QuSDQv9GA0Lgg0L7QsdC90L7QstC70LXQvdC40Lgg0L7RgdC90L7QstC90L7Qs9C+INC60Y3RiNCwINC00LXRgNC10LLQsCIKIAotIzogYnVpbHRpbi9jb21taXQuYzozOTMgYnVpbHRpbi9jb21taXQuYzo0MTYgYnVpbHRpbi9jb21taXQuYzo0NjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDAwIGJ1aWx0aW4vY29tbWl0LmM6NDIzIGJ1aWx0aW4vY29tbWl0LmM6NDY5CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ld19pbmRleCBmaWxlIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywg0YTQsNC50LsgbmV3X2luZGV4IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ0NQorIzogYnVpbHRpbi9jb21taXQuYzo0NTIKIG1zZ2lkICJjYW5ub3QgZG8gYSBwYXJ0aWFsIGNvbW1pdCBkdXJpbmcgYSBtZXJnZS4iCiBtc2dzdHIgItC90LXQu9GM0LfRjyDRgdC+0LfQtNCw0YLRjCDRh9Cw0YHRgtC40YfQvdGL0Lkg0LrQvtC80LzQuNGCINCy0L4g0LLRgNC10LzRjyDRgdC70LjRj9C90LjRjy4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDQ3CisjOiBidWlsdGluL2NvbW1pdC5jOjQ1NAogbXNnaWQgImNhbm5vdCBkbyBhIHBhcnRpYWwgY29tbWl0IGR1cmluZyBhIGNoZXJyeS1waWNrLiIKIG1zZ3N0ciAi0L3QtdC70YzQt9GPINGB0L7Qt9C00LDRgtGMINGH0LDRgdGC0LjRh9C90YvQuSDQutC+0LzQvNC40YIg0LLQviDQstGA0LXQvNGPINC60L7Qv9C40YDQvtCy0LDQvdC40Y8g0LrQvtC80LzQuNGC0LAuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ1NQorIzogYnVpbHRpbi9jb21taXQuYzo0NjIKIG1zZ2lkICJjYW5ub3QgcmVhZCB0aGUgaW5kZXgiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMINC40L3QtNC10LrRgSIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NzQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDgxCiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRlbXBvcmFyeSBpbmRleCBmaWxlIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywg0LLRgNC10LzQtdC90L3Ri9C5INGE0LDQudC7INC40L3QtNC10LrRgdCwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3MQorIzogYnVpbHRpbi9jb21taXQuYzo1NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgbGFja3MgYXV0aG9yIGhlYWRlciIKIG1zZ3N0ciAi0YMg0LrQvtC80LzQuNGC0LAgwqslc8K7INC+0YLRgdGD0YLRgdGC0LLRg9C10YIg0LDQstGC0L7RgCDQsiDQt9Cw0LPQvtC70L7QstC60LUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTczCisjOiBidWlsdGluL2NvbW1pdC5jOjU4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJyVzJyBoYXMgbWFsZm9ybWVkIGF1dGhvciBsaW5lIgogbXNnc3RyICLRgyDQutC+0LzQvNC40YLQsCDCqyVzwrsg0YHRgtGA0L7QutCwINCw0LLRgtC+0YDQsCDQsiDQvdC10L/RgNCw0LLQuNC70YzQvdC+0Lwg0YTQvtGA0LzQsNGC0LUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTkyCisjOiBidWlsdGluL2NvbW1pdC5jOjYwMAogbXNnaWQgIm1hbGZvcm1lZCAtLWF1dGhvciBwYXJhbWV0ZXIiCiBtc2dzdHIgItC/0LDRgNCw0LzQtdGC0YAgLS1hdXRob3Ig0LIg0L3QtdC/0YDQsNCy0LjQu9GM0L3QvtC8INGE0L7RgNC80LDRgtC1IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY0NAorIzogYnVpbHRpbi9jb21taXQuYzo2NTMKIG1zZ2lkICIiCiAidW5hYmxlIHRvIHNlbGVjdCBhIGNvbW1lbnQgY2hhcmFjdGVyIHRoYXQgaXMgbm90IHVzZWRcbiIKICJpbiB0aGUgY3VycmVudCBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAi0L3QtdC70YzQt9GPINCy0YvQsdGA0LDRgtGMINGB0LjQvNCy0L7QuyDQutC+0LzQvNC10L3RgtCw0YDQuNGPLCDQutC+0YLQvtGA0YvQuVxu0L3QtSDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0LIg0YLQtdC60YPRidC10Lwg0YHQvtC+0LHRidC10L3QuNC4INC60L7QvNC80LjRgtCwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY4MSBidWlsdGluL2NvbW1pdC5jOjcxNCBidWlsdGluL2NvbW1pdC5jOjEwNDIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjkxIGJ1aWx0aW4vY29tbWl0LmM6NzI0IGJ1aWx0aW4vY29tbWl0LmM6MTA2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9va3VwIGNvbW1pdCAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/RgNC+0YHQuNGC0Ywg0LrQvtC80LzQuNGCICVzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY5MyBidWlsdGluL3Nob3J0bG9nLmM6MzE3CisjOiBidWlsdGluL2NvbW1pdC5jOjcwMyBidWlsdGluL3Nob3J0bG9nLmM6MzE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIihyZWFkaW5nIGxvZyBtZXNzYWdlIGZyb20gc3RhbmRhcmQgaW5wdXQpXG4iCiBtc2dzdHIgIijRh9GC0LXQvdC40LUg0YTQsNC50LvQsCDQttGD0YDQvdCw0LvQsCDQuNC3INGB0YLQsNC90LTQsNGA0YLQvdC+0LPQviDQstCy0L7QtNCwKVxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY5NQorIzogYnVpbHRpbi9jb21taXQuYzo3MDUKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBsb2cgZnJvbSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0YTQsNC50Lsg0LbRg9GA0L3QsNC70LAg0LjQtyDRgdGC0LDQvdC00LDRgNGC0L3QvtCz0L4g0LLQstC+0LTQsCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2OTkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGxvZyBmaWxlICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMINGE0LDQudC7INC20YPRgNC90LDQu9CwIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3MjggYnVpbHRpbi9jb21taXQuYzo3MzYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzQwIGJ1aWx0aW4vY29tbWl0LmM6NzU2CiBtc2dpZCAiY291bGQgbm90IHJlYWQgU1FVQVNIX01TRyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0YwgU1FVQVNIX01TRyIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3MzMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzQ3CiBtc2dpZCAiY291bGQgbm90IHJlYWQgTUVSR0VfTVNHIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCBNRVJHRV9NU0ciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Nzg3CisjOiBidWlsdGluL2NvbW1pdC5jOjgwNwogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBjb21taXQgdGVtcGxhdGUiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCDRiNCw0LHQu9C+0L0g0L7Qv9C40YHQsNC90LjRjyDQutC+0LzQvNC40YLQsCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MDUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTg1NjUsNyArMTA0NDQsNyBAQAogImFuZCB0cnkgYWdhaW4uXG4iCiBtc2dzdHIgIlxu0J/QvtGF0L7QttC1LCDRh9GC0L4g0LLRiyDQv9GL0YLQsNC10YLQtdGB0Ywg0LfQsNC60L7QvNC80LjRgtC40YLRjCDRgdC70LjRj9C90LjQtS5cbtCV0YHQu9C4INGN0YLQviDQvtGI0LjQsdC60LAsINC/0L7QttCw0LvRg9C50YHRgtCwINGD0LTQsNC70LjRgtC1INGE0LDQudC7XG5cdCVzXG7QuCDQv9C+0L/RgNC+0LHRg9C50YLQtSDRgdC90L7QstCwLlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjgxMAorIzogYnVpbHRpbi9jb21taXQuYzo4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtODU3NSwxNCArMTA0NTQsMTQgQEAKICJhbmQgdHJ5IGFnYWluLlxuIgogbXNnc3RyICJcbtCf0L7RhdC+0LbQtSwg0YfRgtC+INCy0Ysg0L/Ri9GC0LDQtdGC0LXRgdGMINC30LDQutC+0LzQvNC40YLQuNGC0Ywg0L/RgNC4INC60L7Qv9C40YDQvtCy0LDQvdC40Lgg0LrQvtC80LzQuNGC0LAuXG7QldGB0LvQuCDRjdGC0L4g0L3QtSDRgtCw0LosINGC0L4g0YPQtNCw0LvQuNGC0LUg0YTQsNC50Ltcblx0JXNcbtC4INC/0L7Qv9GA0L7QsdGD0LnRgtC1INGB0L3QvtCy0LAuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODIzCisjOiBidWlsdGluL2NvbW1pdC5jOjg0NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgeW91ciBjaGFuZ2VzLiBMaW5lcyBzdGFydGluZ1xuIgogIndpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQsIGFuZCBhbiBlbXB0eSBtZXNzYWdlIGFib3J0cyB0aGUgY29tbWl0LlxuIgogbXNnc3RyICLQn9C+0LbQsNC70YPQudGB0YLQsCwg0LLQstC10LTQuNGC0LUg0YHQvtC+0LHRidC10L3QuNC1INC60L7QvNC80LjRgtCwINC00LvRjyDQstCw0YjQuNGFINC40LfQvNC10L3QtdC90LjQuS4g0KHRgtGA0L7QutC4LFxu0L3QsNGH0LjQvdCw0Y7RidC40LXRgdGPINGBIMKrJWPCuyDQsdGD0LTRg9GCINC/0YDQvtC40LPQvdC+0YDQuNGA0L7QstCw0L3Riywg0LAg0L/Rg9GB0YLQvtC1INGB0L7QvtCx0YnQtdC90LjQtVxu0L7RgtC80LXQvdGP0LXRgiDQv9GA0L7RhtC10YHRgSDQutC+0LzQvNC40YLQsC5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MzEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQbGVhc2UgZW50ZXIgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB5b3VyIGNoYW5nZXMuIExpbmVzIHN0YXJ0aW5nXG4iCkBAIC04NTkwLDM0NSArMTA0NjksMzIwIEBACiAiQW4gZW1wdHkgbWVzc2FnZSBhYm9ydHMgdGhlIGNvbW1pdC5cbiIKIG1zZ3N0ciAi0J/QvtC20LDQu9GD0LnRgdGC0LAsINCy0LLQtdC00LjRgtC1INGB0L7QvtCx0YnQtdC90LjQtSDQutC+0LzQvNC40YLQsCDQtNC70Y8g0LLQsNGI0LjRhSDQuNC30LzQtdC90LXQvdC40LkuINCh0YLRgNC+0LrQuCxcbtC90LDRh9C40L3QsNGO0YnQuNC10YHRjyDRgSDCqyVjwrsg0LHRg9C00YPRgiDQvtGB0YLQsNCy0LvQtdC90Ys7INCy0Ysg0LzQvtC20LXRgtC1INGD0LTQsNC70LjRgtGMINC40YUg0LLRgNGD0YfQvdGD0Y4sXG7QtdGB0LvQuCDRhdC+0YLQuNGC0LUuINCf0YPRgdGC0L7QtSDRgdC+0L7QsdGJ0LXQvdC40LUg0L7RgtC80LXQvdGP0LXRgiDQv9GA0L7RhtC10YHRgSDQutC+0LzQvNC40YLQsC5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4NDgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzQXV0aG9yOiAgICAlLipzIDwlLipzPiIKIG1zZ3N0ciAiJXPQkNCy0YLQvtGAOiAgICAgJS4qcyA8JS4qcz4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODU2CisjOiBidWlsdGluL2NvbW1pdC5jOjg3NwogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0RhdGU6ICAgICAgJXMiCiBtc2dzdHIgIiVz0JTQsNGC0LA6ICAgICAgJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODYzCisjOiBidWlsdGluL2NvbW1pdC5jOjg4NAogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0NvbW1pdHRlcjogJS4qcyA8JS4qcz4iCiBtc2dzdHIgIiVz0JrQvtC80LzQuNGC0LXRgDogICUuKnMgPCUuKnM+IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjg4MAorIzogYnVpbHRpbi9jb21taXQuYzo5MDIKIG1zZ2lkICJDYW5ub3QgcmVhZCBpbmRleCIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0LjQvdC00LXQutGBIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjk0NgorIzogYnVpbHRpbi9jb21taXQuYzo5NjkKIG1zZ2lkICJFcnJvciBidWlsZGluZyB0cmVlcyIKIG1zZ3N0ciAi0J7RiNC40LHQutCwINC/0YDQuCDQv9C+0YHRgtGA0L7QtdC90LjQuCDQtNC10YDQtdCy0YzQtdCyIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjk2MCBidWlsdGluL3RhZy5jOjI1OAorIzogYnVpbHRpbi9jb21taXQuYzo5ODMgYnVpbHRpbi90YWcuYzoyNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiUGxlYXNlIHN1cHBseSB0aGUgbWVzc2FnZSB1c2luZyBlaXRoZXIgLW0gb3IgLUYgb3B0aW9uLlxuIgogbXNnc3RyICLQn9C+0LbQsNC70YPQudGB0YLQsCwg0YPQutCw0LbQuNGC0LUg0YHQvtC+0LHRidC10L3QuNC1LCDQv9GA0Lgg0YPQutCw0LfQsNC90LjQuCDQvtC/0YbQuNC5IC1tINC40LvQuCAtRi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDA0CisjOiBidWlsdGluL2NvbW1pdC5jOjEwMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiLS1hdXRob3IgJyVzJyBpcyBub3QgJ05hbWUgPGVtYWlsPicgYW5kIG1hdGNoZXMgbm8gZXhpc3RpbmcgYXV0aG9yIgogbXNnc3RyICItLWF1dGhvciDCqyVzwrsg0L3QtSDQsiDRhNC+0YDQvNCw0YLQtSDCq9CY0LzRjyA80L/QvtGH0YLQsD7CuyDQuCDQvdC1INGB0L7QstC/0LDQtNCw0LXRgiDRgSDRgdGD0YnQtdGB0YLQstGD0Y7RidC40Lwg0LDQstGC0L7RgNC+0LwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAxOAorIzogYnVpbHRpbi9jb21taXQuYzoxMDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgaWdub3JlZCBtb2RlICclcyciCiBtc2dzdHIgItCd0LXQtNC+0L/Rg9GB0YLQuNC80YvQuSDRgNC10LbQuNC8INC/0L7QutCw0LfQsCDQuNCz0L3QvtGA0LjRgNGD0LXQvNGL0YUg0YTQsNC50LvQvtCyIMKrJXPCuyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDMyIGJ1aWx0aW4vY29tbWl0LmM6MTI2OQorIzogYnVpbHRpbi9jb21taXQuYzoxMDU5IGJ1aWx0aW4vY29tbWl0LmM6MTI4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHVudHJhY2tlZCBmaWxlcyBtb2RlICclcyciCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvRjNC90YvQuSDRgNC10LbQuNC8INC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvRhSDRhNCw0LnQu9C+0LIgwqslc8K7IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwNzAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA5NwogbXNnaWQgIi0tbG9uZyBhbmQgLXogYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1sb25nINC4IC16INC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMDMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTEzMAogbXNnaWQgIlVzaW5nIGJvdGggLS1yZXNldC1hdXRob3IgYW5kIC0tYXV0aG9yIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgItCj0LrQsNC30LDQvdC40LUg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+INC+0L/RhtC40LkgLS1yZXNldC1hdXRob3Ig0LggLS1hdXRob3Ig0L3QtSDQuNC80LXQtdGCINGB0LzRi9GB0LvQsCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTEyCisjOiBidWlsdGluL2NvbW1pdC5jOjExMzkKIG1zZ2lkICJZb3UgaGF2ZSBub3RoaW5nIHRvIGFtZW5kLiIKIG1zZ3N0ciAi0J3QtdGH0LXQs9C+INC40YHQv9GA0LDQstC70Y/RgtGMLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTE1CisjOiBidWlsdGluL2NvbW1pdC5jOjExNDIKIG1zZ2lkICJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSAtLSBjYW5ub3QgYW1lbmQuIgogbXNnc3RyICLQktGLINCyINC/0YDQvtGG0LXRgdGB0LUg0YHQu9C40Y/QvdC40Y8g4oCUICDRgdC10LnRh9Cw0YEg0L3QtdC70YzQt9GPINC40YHQv9GA0LDQstC70Y/RgtGMLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTE3CisjOiBidWlsdGluL2NvbW1pdC5jOjExNDQKIG1zZ2lkICJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSBjaGVycnktcGljayAtLSBjYW5ub3QgYW1lbmQuIgogbXNnc3RyICLQktGLINCyINC/0YDQvtGG0LXRgdGB0LUg0LrQvtC/0LjRgNC+0LLQsNC90LjRjyDQutC+0LzQvNC40YLQsCDigJQgINGB0LXQudGH0LDRgSDQvdC10LvRjNC30Y8g0LjRgdC/0YDQsNCy0LvRj9GC0YwuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMjAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE0NwogbXNnaWQgIk9wdGlvbnMgLS1zcXVhc2ggYW5kIC0tZml4dXAgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCiBtc2dzdHIgItCe0L/RhtC40LggLS1zcXVhc2gg0LggLS1maXh1cCDQvdC1INC80L7Qs9GD0YIg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGM0YHRjyDQvtC00L3QvtCy0YDQtdC80LXQvdC90L4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEzMAorIzogYnVpbHRpbi9jb21taXQuYzoxMTU3CiBtc2dpZCAiT25seSBvbmUgb2YgLWMvLUMvLUYvLS1maXh1cCBjYW4gYmUgdXNlZC4iCiBtc2dzdHIgItCc0L7QttC10YIg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGM0YHRjyDRgtC+0LvRjNC60L4g0L7QtNC90LAg0LjQtyDQvtC/0YbQuNC5IC1jLy1DLy1GLy0tZml4dXAuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMzIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE1OQogbXNnaWQgIk9wdGlvbiAtbSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCAtYy8tQy8tRi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTQwCisjOiBidWlsdGluL2NvbW1pdC5jOjExNjcKIG1zZ2lkICItLXJlc2V0LWF1dGhvciBjYW4gYmUgdXNlZCBvbmx5IHdpdGggLUMsIC1jIG9yIC0tYW1lbmQuIgogbXNnc3RyICItLXJlc2V0LWF1dGhvciDQvNC+0LbQtdGCINC40YHQv9C+0LvRjNC30L7QstCw0YLRjNGB0Y8g0YLQvtC70YzQutC+INC+0LTQvdC+0LLRgNC10LzQtdC90L3QviDRgSDQvtC/0YbQuNGP0LzQuCAtQywgLWMg0LjQu9C4IC0tYW1lbmQuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNTcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4NAogbXNnaWQgIk9ubHkgb25lIG9mIC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIGNhbiBiZSB1c2VkLiIKIG1zZ3N0ciAi0JzQvtC20LXRgiDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0YzRgdGPINGC0L7Qu9GM0LrQviDQvtC00L3QsCDQuNC3INC+0L/RhtC40LkgLS1pbmNsdWRlLy0tb25seS8tLWFsbC8tLWludGVyYWN0aXZlLy0tcGF0Y2guIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNTkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4NgogbXNnaWQgIk5vIHBhdGhzIHdpdGggLS1pbmNsdWRlLy0tb25seSBkb2VzIG5vdCBtYWtlIHNlbnNlLiIKIG1zZ3N0ciAi0KPQutCw0LfQsNC90LjQtSDQv9GD0YLQtdC5INC60LDRgtCw0LvQvtCz0L7QsiDRgSDQvtC/0YbQuNGP0LzQuCAtLWluY2x1ZGUvLS1vbmx5INC90LUg0LjQvNC10LXRgiDRgdC80YvRgdC70LAuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNzMgYnVpbHRpbi90YWcuYzo1NDQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE5MgogIywgYy1mb3JtYXQKLW1zZ2lkICJJbnZhbGlkIGNsZWFudXAgbW9kZSAlcyIKLW1zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9GM0L3QvtC1INC30L3QsNGH0LXQvdC40LUg0YDQtdC20LjQvNCwINC+0YfQuNGB0YLQutC4ICVzIgorbXNnaWQgInBhdGhzICclcyAuLi4nIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNzgKLW1zZ2lkICJQYXRocyB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgotbXNnc3RyICLQoSDQvtC/0YbQuNC10LkgLWEg0YPQutCw0LfQsNC90LjQtSDQv9GD0YLQuCDQvdC1INC40LzQtdC10YIg0YHQvNGL0YHQu9CwLiIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxMzAzIGJ1aWx0aW4vY29tbWl0LmM6MTQ4MAorIzogYnVpbHRpbi9jb21taXQuYzoxMzE5IGJ1aWx0aW4vY29tbWl0LmM6MTUwMwogbXNnaWQgInNob3cgc3RhdHVzIGNvbmNpc2VseSIKIG1zZ3N0ciAi0LrRgNCw0YLQutC+INC/0L7QutCw0LfQsNGC0Ywg0YHRgtCw0YLRg9GBIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMDUgYnVpbHRpbi9jb21taXQuYzoxNDgyCisjOiBidWlsdGluL2NvbW1pdC5jOjEzMjEgYnVpbHRpbi9jb21taXQuYzoxNTA1CiBtc2dpZCAic2hvdyBicmFuY2ggaW5mb3JtYXRpb24iCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0LLQtdGA0YHQuNC4IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMDcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyMwogbXNnaWQgInNob3cgc3Rhc2ggaW5mb3JtYXRpb24iCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0YHQv9GA0Y/RgtCw0L3QvdC+0LwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMwOSBidWlsdGluL2NvbW1pdC5jOjE0ODQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNSBidWlsdGluL2NvbW1pdC5jOjE1MDcKIG1zZ2lkICJjb21wdXRlIGZ1bGwgYWhlYWQvYmVoaW5kIHZhbHVlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNwogbXNnaWQgInZlcnNpb24iCiBtc2dzdHIgItCy0LXRgNGB0LjRjyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzExIGJ1aWx0aW4vY29tbWl0LmM6MTQ4NiBidWlsdGluL3B1c2guYzo1NTgKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1ODEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNyBidWlsdGluL2NvbW1pdC5jOjE1MDkgYnVpbHRpbi9wdXNoLmM6NTYxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjQzCiBtc2dpZCAibWFjaGluZS1yZWFkYWJsZSBvdXRwdXQiCiBtc2dzdHIgItC80LDRiNC40L3QvtGH0LjRgtCw0LXQvNGL0Lkg0LLRi9Cy0L7QtCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzE0IGJ1aWx0aW4vY29tbWl0LmM6MTQ4OAorIzogYnVpbHRpbi9jb21taXQuYzoxMzMwIGJ1aWx0aW4vY29tbWl0LmM6MTUxMQogbXNnaWQgInNob3cgc3RhdHVzIGluIGxvbmcgZm9ybWF0IChkZWZhdWx0KSIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDRgdGC0LDRgtGD0YEg0LIg0LTQu9C40L3QvdC+0Lwg0YTQvtGA0LzQsNGC0LUgKNC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzE3IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MQorIzogYnVpbHRpbi9jb21taXQuYzoxMzMzIGJ1aWx0aW4vY29tbWl0LmM6MTUxNAogbXNnaWQgInRlcm1pbmF0ZSBlbnRyaWVzIHdpdGggTlVMIgogbXNnc3RyICLQt9Cw0LLQtdGA0YjQsNGC0Ywg0LfQsNC/0LjRgdC4INCd0KPQm9CV0JLQq9CcINCx0LDQudGC0L7QvCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzE5IGJ1aWx0aW4vY29tbWl0LmM6MTMyMyBidWlsdGluL2NvbW1pdC5jOjE0OTQKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA3IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDEwIGJ1aWx0aW4vdGFnLmM6Mzk4CisjOiBidWlsdGluL2NvbW1pdC5jOjEzMzUgYnVpbHRpbi9jb21taXQuYzoxMzM5IGJ1aWx0aW4vY29tbWl0LmM6MTUxNworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwODUgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwODggYnVpbHRpbi9yZWJhc2UuYzoxNDY1CisjOiBwYXJzZS1vcHRpb25zLmg6MzMxCiBtc2dpZCAibW9kZSIKIG1zZ3N0ciAi0YDQtdC20LjQvCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzIwIGJ1aWx0aW4vY29tbWl0LmM6MTQ5NAorIzogYnVpbHRpbi9jb21taXQuYzoxMzM2IGJ1aWx0aW4vY29tbWl0LmM6MTUxNwogbXNnaWQgInNob3cgdW50cmFja2VkIGZpbGVzLCBvcHRpb25hbCBtb2RlczogYWxsLCBub3JtYWwsIG5vLiAoRGVmYXVsdDogYWxsKSIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0LUg0YTQsNC50LvRiywg0L7Qv9GG0LjQvtC90LDQu9GM0L3Ri9C1INGA0LXQttC40LzRizogYWxsICjQstGB0LUpLCBub3JtYWwgKNC60LDQuiDQvtCx0YvRh9C90L4pLCBubyAo0L3QtdGCKS4gKNCf0L4g0YPQvNC+0LvRh9Cw0L3QuNGOOiBhbGwpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM0MAogbXNnaWQgIiIKICJzaG93IGlnbm9yZWQgZmlsZXMsIG9wdGlvbmFsIG1vZGVzOiB0cmFkaXRpb25hbCwgbWF0Y2hpbmcsIG5vLiAoRGVmYXVsdDogIgogInRyYWRpdGlvbmFsKSIKIG1zZ3N0ciAi0L/QvtC60LDQt9GL0LLQsNGC0Ywg0LjQs9C90L7RgNC40YDRg9C10LzRi9C1INGE0LDQudC70YssINGBINC+0L/RhtC40L7QvdCw0LvRjNC90YvQvCDRgNC10LbQuNC80L7QvDogdHJhZGl0aW9uYWwgKNGC0YDQsNC00LjRhtC40L7QvdC90YvQuSksIG1hdGNoaW5nICjRgtC+0LvRjNC60L4g0YHQvtCy0L/QsNC00LDRjtGJ0LjQtSksIG5vICjQvdC1INC/0L7QutCw0LfRi9Cy0LDRgtGMKS4gKNCf0L4g0YPQvNC+0LvRh9Cw0L3QuNGOOiB0cmFkaXRpb25hbCkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNiBwYXJzZS1vcHRpb25zLmg6MTY3CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNDIgcGFyc2Utb3B0aW9ucy5oOjE3OQogbXNnaWQgIndoZW4iCiBtc2dzdHIgItC60L7Qs9C00LAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNworIzogYnVpbHRpbi9jb21taXQuYzoxMzQzCiBtc2dpZCAiIgogImlnbm9yZSBjaGFuZ2VzIHRvIHN1Ym1vZHVsZXMsIG9wdGlvbmFsIHdoZW46IGFsbCwgZGlydHksIHVudHJhY2tlZC4gIgogIihEZWZhdWx0OiBhbGwpIgotbXNnc3RyICLQuNCz0L3QvtGA0LjRgNC+0LLQsNGC0Ywg0LjQt9C80LXQvdC10L3QuNGPINCyINC/0L7QtNC80L7QtNGD0LvRj9GFLCDQvtC/0YbQuNC+0L3QsNC70YzQvdC+INC60L7Qs9C00LA6IGFsbCAo0LLRgdC10LPQtNCwKSwgZGlydHkgKNC40LfQvNC10L3QtdC90L3Ri9C1KSwgdW50cmFja2VkICjQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0LUpLiAo0J/QviDRg9C80L7Qu9GH0LDQvdC40Y46IGFsbCkiCittc2dzdHIgItC40LPQvdC+0YDQuNGA0L7QstCw0YLRjCDQuNC30LzQtdC90LXQvdC40Y8g0LIg0L/QvtC00LzQvtC00YPQu9GP0YUsINC+0L/RhtC40L7QvdCw0LvRjNC90L4g0LrQvtCz0LTQsDogYWxsICjQstGB0LXQs9C00LApLCBkaXJ0eSAo0LjQt9C80LXQvdGR0L3QvdGL0LUpLCB1bnRyYWNrZWQgKNC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvQtSkuICjQn9C+INGD0LzQvtC70YfQsNC90LjRjjogYWxsKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzI5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNDUKIG1zZ2lkICJsaXN0IHVudHJhY2tlZCBmaWxlcyBpbiBjb2x1bW5zIgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMINC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvQtSDRhNCw0LnQu9GLINC/0L4g0YHRgtC+0LvQsdGG0LDQvCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzMwCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNDYKIG1zZ2lkICJkbyBub3QgZGV0ZWN0IHJlbmFtZXMiCiBtc2dzdHIgItC90LUg0L7Qv9GA0LXQtNC10LvRj9GC0Ywg0L/QtdGA0LXQuNC80LXQvdC+0LLQsNC90LjRjyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzMyCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNDgKIG1zZ2lkICJkZXRlY3QgcmVuYW1lcywgb3B0aW9uYWxseSBzZXQgc2ltaWxhcml0eSBpbmRleCIKIG1zZ3N0ciAi0L7Qv9GA0LXQtNC10LvRj9GC0Ywg0L/QtdGA0LXQuNC80LXQvdC+0LLQsNC90LjRjywg0L7Qv9GG0LjQvtC90LDQu9GM0L3QviDRg9GB0YLQsNC90LDQstC70LjQstCw0YLRjCDRgNC10LnRgtC40L3QsyDRgdGF0L7QtNGB0YLQstCwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzNTIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2OAogbXNnaWQgIlVuc3VwcG9ydGVkIGNvbWJpbmF0aW9uIG9mIGlnbm9yZWQgYW5kIHVudHJhY2tlZC1maWxlcyBhcmd1bWVudHMiCiBtc2dzdHIgItCd0LXQv9C+0LTQtNC10YDQttC40LLQsNC10LzQsNGPINC60L7QvNCx0LjQvdCw0YbQuNGPINCw0YDQs9GD0LzQtdC90YLQvtCyINC+0YLQvtCx0YDQsNC20LXQvdC40Y8g0LjQs9C90L7RgNC40YDRg9C10LzRi9GFINC4INC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvRhSDRhNCw0LnQu9C+0LIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ1MAorIzogYnVpbHRpbi9jb21taXQuYzoxNDczCiBtc2dpZCAic3VwcHJlc3Mgc3VtbWFyeSBhZnRlciBzdWNjZXNzZnVsIGNvbW1pdCIKLW1zZ3N0ciAi0L3QtSDQstGL0LLQvtC00LjRgtGMINGB0LLQvtC00LrRgyDQv9C+0YHQu9C1INGD0YHQv9C10YjQvdC+0LPQviDQutC+0LzQvNC40YLQsCIKK21zZ3N0ciAi0L3QtSDQstGL0LLQvtC00LjRgtGMINGB0LLQvtC00LrRgyDQuNC30LzQtdC90LXQvdC40Lkg0L/QvtGB0LvQtSDRg9GB0L/QtdGI0L3QvtCz0L4g0LrQvtC80LzQuNGC0LAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ1MQorIzogYnVpbHRpbi9jb21taXQuYzoxNDc0CiBtc2dpZCAic2hvdyBkaWZmIGluIGNvbW1pdCBtZXNzYWdlIHRlbXBsYXRlIgogbXNnc3RyICLQtNC+0LHQsNCy0LjRgtGMINGB0L/QuNGB0L7QuiDQuNC30LzQtdC90LXQvdC40Lkg0LIg0YjQsNCx0LvQvtC9INGB0L7QvtCx0YnQtdC90LjRjyDQutC+0LzQvNC40YLQsCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDUzCisjOiBidWlsdGluL2NvbW1pdC5jOjE0NzYKIG1zZ2lkICJDb21taXQgbWVzc2FnZSBvcHRpb25zIgogbXNnc3RyICLQntC/0YbQuNC4INGB0L7QvtCx0YnQtdC90LjRjyDQutC+0LzQvNC40YLQsCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDU0IGJ1aWx0aW4vbWVyZ2UuYzoyNjEgYnVpbHRpbi90YWcuYzozOTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NyBidWlsdGluL21lcmdlLmM6MjcyIGJ1aWx0aW4vdGFnLmM6NDA4CiBtc2dpZCAicmVhZCBtZXNzYWdlIGZyb20gZmlsZSIKIG1zZ3N0ciAi0L/RgNC+0YfQuNGC0LDRgtGMINGB0L7QvtCx0YnQtdC90LjQtSDQuNC3INGE0LDQudC70LAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ1NQorIzogYnVpbHRpbi9jb21taXQuYzoxNDc4CiBtc2dpZCAiYXV0aG9yIgogbXNnc3RyICLQsNCy0YLQvtGAIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3OAogbXNnaWQgIm92ZXJyaWRlIGF1dGhvciBmb3IgY29tbWl0IgogbXNnc3RyICLQv9C+0LTQvNC10L3QuNGC0Ywg0LDQstGC0L7RgNCwINC60L7QvNC80LjRgtCwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NTYgYnVpbHRpbi9nYy5jOjUwNAorIzogYnVpbHRpbi9jb21taXQuYzoxNDc5IGJ1aWx0aW4vZ2MuYzo1MzkKIG1zZ2lkICJkYXRlIgogbXNnc3RyICLQtNCw0YLQsCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDU2CisjOiBidWlsdGluL2NvbW1pdC5jOjE0NzkKIG1zZ2lkICJvdmVycmlkZSBkYXRlIGZvciBjb21taXQiCiBtc2dzdHIgItC/0L7QtNC80LXQvdC40YLRjCDQtNCw0YLRgyDQutC+0LzQvNC40YLQsCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDU3IGJ1aWx0aW4vbWVyZ2UuYzoyNTcgYnVpbHRpbi9ub3Rlcy5jOjQwNAotIzogYnVpbHRpbi9ub3Rlcy5jOjU2NyBidWlsdGluL3RhZy5jOjM5MwotbXNnaWQgIm1lc3NhZ2UiCi1tc2dzdHIgItGB0L7QvtCx0YnQtdC90LjQtSIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDU3Ci1tc2dpZCAiY29tbWl0IG1lc3NhZ2UiCi1tc2dzdHIgItGB0L7QvtCx0YnQtdC90LjQtSDQutC+0LzQvNC40YLQsCIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDU4IGJ1aWx0aW4vY29tbWl0LmM6MTQ1OSBidWlsdGluL2NvbW1pdC5jOjE0NjAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2MSBwYXJzZS1vcHRpb25zLmg6MjcwIHJlZi1maWx0ZXIuaDo5MgorIzogYnVpbHRpbi9jb21taXQuYzoxNDgxIGJ1aWx0aW4vY29tbWl0LmM6MTQ4MiBidWlsdGluL2NvbW1pdC5jOjE0ODMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4NCBwYXJzZS1vcHRpb25zLmg6MzIzIHJlZi1maWx0ZXIuaDo5MgogbXNnaWQgImNvbW1pdCIKIG1zZ3N0ciAi0LrQvtC80LzQuNGCIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MQogbXNnaWQgInJldXNlIGFuZCBlZGl0IG1lc3NhZ2UgZnJvbSBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0Lgg0L7RgtGA0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMINGB0L7QvtCx0YnQtdC90LjQtSDQvtGCINGD0LrQsNC30LDQvdC90L7Qs9C+INC60L7QvNC80LjRgtCwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NTkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MgogbXNnaWQgInJldXNlIG1lc3NhZ2UgZnJvbSBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YHQvtC+0LHRidC10L3QuNC1INGD0LrQsNC30LDQvdC90L7Qs9C+INC60L7QvNC80LjRgtCwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MwogbXNnaWQgInVzZSBhdXRvc3F1YXNoIGZvcm1hdHRlZCBtZXNzYWdlIHRvIGZpeHVwIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRhNC+0YDQvNCw0YLQuNGA0L7QstCw0L3QvdC+0LUg0YHQvtC+0LHRidC10L3QuNC1INCw0LLRgtC+0YPQv9C70L7RgtC90LXQvdC40Y8g0LTQu9GPINC40YHQv9GA0LDQstC70LXQvdC40Y8g0YPQutCw0LfQsNC90L3QvtCz0L4g0LrQvtC80LzQuNGC0LAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2MQorIzogYnVpbHRpbi9jb21taXQuYzoxNDg0CiBtc2dpZCAidXNlIGF1dG9zcXVhc2ggZm9ybWF0dGVkIG1lc3NhZ2UgdG8gc3F1YXNoIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRhNC+0YDQvNCw0YLQuNGA0L7QstCw0L3QvdC+0LUg0YHQvtC+0LHRidC10L3QuNC1INCw0LLRgtC+0YPQv9C70L7RgtC90LXQvdC40Y8g0LTQu9GPINGD0L/Qu9C+0YLQvdC10L3QuNGPINGD0LrQsNC30LDQvdC90L7Qs9C+INC60L7QvNC80LjRgtCwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4NQogbXNnaWQgInRoZSBjb21taXQgaXMgYXV0aG9yZWQgYnkgbWUgbm93ICh1c2VkIHdpdGggLUMvLWMvLS1hbWVuZCkiCiBtc2dzdHIgItC60L7QvNC80LjRgiDRgtC10L/QtdGA0Ywg0LfQsCDQvNC+0LjQvCDQsNCy0YLQvtGA0YHRgtCy0L7QvCAo0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINGBIC1DLy1jLy0tYW1lbmQpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjMgYnVpbHRpbi9sb2cuYzoxNDU3IGJ1aWx0aW4vbWVyZ2UuYzoyNzQKLSM6IGJ1aWx0aW4vcHVsbC5jOjE1NCBidWlsdGluL3JldmVydC5jOjEwNgorIzogYnVpbHRpbi9jb21taXQuYzoxNDg2IGJ1aWx0aW4vbG9nLmM6MTU0MSBidWlsdGluL21lcmdlLmM6Mjg1CisjOiBidWlsdGluL3B1bGwuYzoxNjIgYnVpbHRpbi9yZXZlcnQuYzoxMDkKIG1zZ2lkICJhZGQgU2lnbmVkLW9mZi1ieToiCiBtc2dzdHIgItC00L7QsdCw0LLQuNGC0YwgU2lnbmVkLW9mZi1ieToiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2NAorIzogYnVpbHRpbi9jb21taXQuYzoxNDg3CiBtc2dpZCAidXNlIHNwZWNpZmllZCB0ZW1wbGF0ZSBmaWxlIgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YPQutCw0LfQsNC90L3Ri9C5INGE0LDQudC7INGI0LDQsdC70L7QvdCwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4OAogbXNnaWQgImZvcmNlIGVkaXQgb2YgY29tbWl0IgogbXNnc3RyICLQv9GA0LjQvdGD0LTQuNGC0LXQu9GM0L3QviDRgNC10LTQsNC60YLQuNGA0L7QstCw0YLRjCDQutC+0LzQvNC40YIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2NgotbXNnaWQgImRlZmF1bHQiCi1tc2dzdHIgItC/0L4t0YPQvNC+0LvRh9Cw0L3QuNGOIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjYgYnVpbHRpbi90YWcuYzozOTkKLW1zZ2lkICJob3cgdG8gc3RyaXAgc3BhY2VzIGFuZCAjY29tbWVudHMgZnJvbSBtZXNzYWdlIgotbXNnc3RyICLQutCw0Log0YPQtNCw0LvRj9GC0Ywg0L/RgNC+0LHQtdC70Ysg0LggI9C60L7QvNC80LXQvdGC0LDRgNC40Lgg0LjQtyDRgdC+0L7QsdGJ0LXQvdC40Y8g0LrQvtC80LzQuNGC0LAiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2NworIzogYnVpbHRpbi9jb21taXQuYzoxNDkwCiBtc2dpZCAiaW5jbHVkZSBzdGF0dXMgaW4gY29tbWl0IG1lc3NhZ2UgdGVtcGxhdGUiCiBtc2dzdHIgItCy0LrQu9GO0YfQuNGC0Ywg0YHRgtCw0YLRg9GBINGE0LDQudC70L7QsiDQsiDRiNCw0LHQu9C+0L0g0YHQvtC+0LHRidC10L3QuNGPINC60L7QvNC80LjRgtCwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjkgYnVpbHRpbi9tZXJnZS5jOjI3MiBidWlsdGluL3B1bGwuYzoxODQKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0Ci1tc2dpZCAiR1BHIHNpZ24gY29tbWl0IgotbXNnc3RyICLQv9C+0LTQv9C40YHQsNGC0Ywg0LrQvtC80LzQuNGCINGBINC/0L7QvNC+0YnRjNGOIEdQRyIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDcyCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTUKIG1zZ2lkICJDb21taXQgY29udGVudHMgb3B0aW9ucyIKIG1zZ3N0ciAi0J7Qv9GG0LjQuCDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+INC60L7QvNC80LjRgtCwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NgogbXNnaWQgImNvbW1pdCBhbGwgY2hhbmdlZCBmaWxlcyIKIG1zZ3N0ciAi0LfQsNC60L7QvNC80LjRgtC40YLRjCDQstGB0LUg0LjQt9C80LXQvdC10L3QvdGL0LUg0YTQsNC50LvRiyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc0CisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTcKIG1zZ2lkICJhZGQgc3BlY2lmaWVkIGZpbGVzIHRvIGluZGV4IGZvciBjb21taXQiCiBtc2dzdHIgItC00L7QsdCw0LLQuNGC0Ywg0YPQutCw0LfQsNC90L3Ri9C1INGE0LDQudC70Ysg0LIg0LjQvdC00LXQutGBINC00LvRjyDQutC+0LzQvNC40YLQsCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc1CisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTgKIG1zZ2lkICJpbnRlcmFjdGl2ZWx5IGFkZCBmaWxlcyIKIG1zZ3N0ciAi0LjQvdGC0LXRgNCw0LrRgtC40LLQvdC+0LUg0LTQvtCx0LDQstC70LXQvdC40LUg0YTQsNC50LvQvtCyIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5OQogbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGNoYW5nZXMiCiBtc2dzdHIgItC40L3RgtC10YDQsNC60YLQuNCy0L3QvtC1INC00L7QsdCw0LLQu9C10L3QuNC1INC40LfQvNC10L3QtdC90LjQuSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc3CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDAKIG1zZ2lkICJjb21taXQgb25seSBzcGVjaWZpZWQgZmlsZXMiCiBtc2dzdHIgItC30LDQutC+0LzQvNC40YLQuNGC0Ywg0YLQvtC70YzQutC+INGD0LrQsNC30LDQvdC90YvQtSDRhNCw0LnQu9GLIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMQogbXNnaWQgImJ5cGFzcyBwcmUtY29tbWl0IGFuZCBjb21taXQtbXNnIGhvb2tzIgogbXNnc3RyICLQv9GA0L7Qv9GD0YHRgtC40YLRjCDQv9C10YDQtdGF0LLQsNGC0YfQuNC6IHByZS1jb21taXQg0LggY29tbWl0LW1zZyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc5CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDIKIG1zZ2lkICJzaG93IHdoYXQgd291bGQgYmUgY29tbWl0dGVkIgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMLCDRh9GC0L4g0LHRg9C00LXRgiDQt9Cw0LrQvtC80LzQuNGH0LXQvdC+IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNQogbXNnaWQgImFtZW5kIHByZXZpb3VzIGNvbW1pdCIKIG1zZ3N0ciAi0LjRgdC/0YDQsNCy0LjRgtGMINC/0YDQtdC00YvQtNGD0YnQuNC5INC60L7QvNC80LjRgiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDkzCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTYKIG1zZ2lkICJieXBhc3MgcG9zdC1yZXdyaXRlIGhvb2siCiBtc2dzdHIgItC/0YDQvtC/0YPRgdGC0LjRgtGMINC/0LXRgNC10YXQstCw0YLRh9C40LogcG9zdC1yZXdyaXRlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMQogbXNnaWQgIm9rIHRvIHJlY29yZCBhbiBlbXB0eSBjaGFuZ2UiCiBtc2dzdHIgItGA0LDQt9GA0LXRiNC40YLRjCDQt9Cw0L/QuNGB0Ywg0L/Rg9GB0YLQvtCz0L4g0LrQvtC80LzQuNGC0LAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMAorIzogYnVpbHRpbi9jb21taXQuYzoxNTIzCiBtc2dpZCAib2sgdG8gcmVjb3JkIGEgY2hhbmdlIHdpdGggYW4gZW1wdHkgbWVzc2FnZSIKIG1zZ3N0ciAi0YDQsNC30YDQtdGI0LjRgtGMINC30LDQv9C40YHRjCDQuNC30LzQtdC90LXQvdC40Lkg0YEg0L/Rg9GB0YLRi9C8INGB0L7QvtCx0YnQtdC90LjQtdC8IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1NzMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTU5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3JydXB0IE1FUkdFX0hFQUQgZmlsZSAoJXMpIgogbXNnc3RyICLQpNCw0LnQuyBNRVJHRV9IRUFEINC/0L7QstGA0LXQttC00LXQvSAoJXMpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1ODAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTYwMwogbXNnaWQgImNvdWxkIG5vdCByZWFkIE1FUkdFX01PREUiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMIE1FUkdFX01PREUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTU5OQorIzogYnVpbHRpbi9jb21taXQuYzoxNjIyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGNvbW1pdCBtZXNzYWdlOiAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDRgdC+0L7QsdGJ0LXQvdC40LUg0LrQvtC80LzQuNGC0LA6ICVzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE2MTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTYyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJBYm9ydGluZyBjb21taXQgZHVlIHRvIGVtcHR5IGNvbW1pdCBtZXNzYWdlLlxuIgogbXNnc3RyICLQntGC0LzQtdC90LAg0LrQvtC80LzQuNGC0LAg0LjQty3Qt9CwINC/0YPRgdGC0L7Qs9C+INGB0L7QvtCx0YnQtdC90LjRjyDQutC+0LzQvNC40YLQsC5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjE1CisjOiBidWlsdGluL2NvbW1pdC5jOjE2MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmcgY29tbWl0OyB5b3UgZGlkIG5vdCBlZGl0IHRoZSBtZXNzYWdlLlxuIgogbXNnc3RyICLQntGC0LzQtdC90LAg0LrQvtC80LzQuNGC0LA7INCy0Ysg0L3QtSDQuNC30LzQtdC90LjQu9C4INGB0L7QvtCx0YnQtdC90LjQtS5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjUwCisjOiBidWlsdGluL2NvbW1pdC5jOjE2NjgKIG1zZ2lkICIiCiAicmVwb3NpdG9yeSBoYXMgYmVlbiB1cGRhdGVkLCBidXQgdW5hYmxlIHRvIHdyaXRlXG4iCiAibmV3X2luZGV4IGZpbGUuIENoZWNrIHRoYXQgZGlzayBpcyBub3QgZnVsbCBhbmQgcXVvdGEgaXNcbiIKQEAgLTg5NTMsMjM2ICsxMDgwNywyNDUgQEAKICJ8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIgogbXNnc3RyICJnaXQgY29tbWl0LWdyYXBoIHdyaXRlIFstLW9iamVjdC1kaXIgPNC60LDRgtCw0LvQvtCzLdC+0LHRitC10LrRgtC+0LI+XSBbLS1hcHBlbmRdIFstLXJlYWNoYWJsZXwtLXN0ZGluLXBhY2tzfC0tc3RkaW4tY29tbWl0c10iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NDggYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3NwotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzEgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxODQgYnVpbHRpbi9mZXRjaC5jOjE1MAotIzogYnVpbHRpbi9sb2cuYzoxNDc3CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjUxIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6ODkKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTQ3IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjA1IGJ1aWx0aW4vZmV0Y2guYzoxNTMKKyM6IGJ1aWx0aW4vbG9nLmM6MTU2MQogbXNnaWQgImRpciIKIG1zZ3N0ciAi0LrQsNGC0LDQu9C+0LMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NDkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3OAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzIgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxODUKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NTIgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo5MAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDggYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMDYKIG1zZ2lkICJUaGUgb2JqZWN0IGRpcmVjdG9yeSB0byBzdG9yZSB0aGUgZ3JhcGgiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0JrQsNGC0LDQu9C+0LMg0L7QsdGK0LXQutGC0L7QsiDQtNC70Y8g0YHQvtGF0YDQsNC90LXQvdC40Y8g0LPRgNCw0YTQsCIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzQKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NjggYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IG9wZW4gY29tbWl0LWdyYXBoICclcyciCittc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0YTQsNC50LsgY29tbWl0LWdyYXBoIMKrJXPCuyIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNTAKIG1zZ2lkICJzdGFydCB3YWxrIGF0IGFsbCByZWZzIgotbXNnc3RyICIiCittc2dzdHIgItC90LDRh9Cw0YLRjCDRgdC+INCy0YHQtdGFINGB0YHRi9C70L7QuiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzYKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTUyCiBtc2dpZCAic2NhbiBwYWNrLWluZGV4ZXMgbGlzdGVkIGJ5IHN0ZGluIGZvciBjb21taXRzIgotbXNnc3RyICIiCittc2dzdHIgItC40YHQutCw0YLRjCDQutC+0LzQvNC40YLRiyDQsiBwYWNrLWluZGV4ZXMsINC/0LXRgNC10YfQuNGB0LvQtdC90L3Ri9GFINC90LAg0YHRgtCw0L3QtNCw0YDRgtC90L7QvCDQstCy0L7QtNC1IgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzOAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNTQKIG1zZ2lkICJzdGFydCB3YWxrIGF0IGNvbW1pdHMgbGlzdGVkIGJ5IHN0ZGluIgotbXNnc3RyICIiCittc2dzdHIgItC90LDRh9Cw0YLRjCDRgSDQutC+0LzQvNC40YLQvtCyLCDQv9C10YDQtdGH0LjRgdC70LXQvdC90YvRhSDQvdCwINGB0YLQsNC90LTQsNGA0YLQvdC+0Lwg0LLQstC+0LTQtSIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDAKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTU2CiBtc2dpZCAiaW5jbHVkZSBhbGwgY29tbWl0cyBhbHJlYWR5IGluIHRoZSBjb21taXQtZ3JhcGggZmlsZSIKLW1zZ3N0ciAiIgorbXNnc3RyICLQstC60LvRjtGH0LjRgtGMINCy0YHQtSDQutC+0LzQvNC40YLRiywg0LrQvtGC0L7RgNGL0LUg0YPQttC1INC10YHRgtGMINCyINGE0LDQudC70LUgY29tbWl0LWdyYXBoIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0OQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNjUKIG1zZ2lkICJ1c2UgYXQgbW9zdCBvbmUgb2YgLS1yZWFjaGFibGUsIC0tc3RkaW4tY29tbWl0cywgb3IgLS1zdGRpbi1wYWNrcyIKLW1zZ3N0ciAiIgorbXNnc3RyICLQuNGB0L/QvtC70YzQt9GD0LnRgtC1INGH0YLQvi3RgtC+INC+0LTQvdC+INC40LcgLS1yZWFjaGFibGUsIC0tc3RkaW4tY29tbWl0cyDQuCAtLXN0ZGluLXBhY2tzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEwCisjOiBidWlsdGluL2NvbmZpZy5jOjExCiBtc2dpZCAiZ2l0IGNvbmZpZyBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IGNvbmZpZyBbPNC+0L/RhtC40Lg+XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMDEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAtLXR5cGUgYXJndW1lbnQsICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTEzCisjOiBidWlsdGluL2NvbmZpZy5jOjExNQogbXNnaWQgIm9ubHkgb25lIHR5cGUgYXQgYSB0aW1lIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTIyCisjOiBidWlsdGluL2NvbmZpZy5jOjEyNAogbXNnaWQgIkNvbmZpZyBmaWxlIGxvY2F0aW9uIgogbXNnc3RyICLQoNCw0LfQvNC10YnQtdC90LjQtSDRhNCw0LnQu9CwINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI1CiBtc2dpZCAidXNlIGdsb2JhbCBjb25maWcgZmlsZSIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINCz0LvQvtCx0LDQu9GM0L3Ri9C5INGE0LDQudC7INC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI2CiBtc2dpZCAidXNlIHN5c3RlbSBjb25maWcgZmlsZSIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGB0LjRgdGC0LXQvNC90YvQuSDRhNCw0LnQuyDQutC+0L3RhNC40LPRg9GA0LDRhtC40LgiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTI1CisjOiBidWlsdGluL2NvbmZpZy5jOjEyNwogbXNnaWQgInVzZSByZXBvc2l0b3J5IGNvbmZpZyBmaWxlIgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YTQsNC50Lsg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC4INGA0LXQv9C+0LfQuNGC0L7RgNC40Y8iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTI2CisjOiBidWlsdGluL2NvbmZpZy5jOjEyOAorbXNnaWQgInVzZSBwZXItd29ya3RyZWUgY29uZmlnIGZpbGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMjkKIG1zZ2lkICJ1c2UgZ2l2ZW4gY29uZmlnIGZpbGUiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRg9C60LDQt9Cw0L3QvdGL0Lkg0YTQsNC50Lsg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC4IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNworIzogYnVpbHRpbi9jb25maWcuYzoxMzAKIG1zZ2lkICJibG9iLWlkIgogbXNnc3RyICLQuNC00LXQvdGCLdC00LLQvtC40YfQvS3QvtCx0YrQtdC60YLQsCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMwCiBtc2dpZCAicmVhZCBjb25maWcgZnJvbSBnaXZlbiBibG9iIG9iamVjdCIKIG1zZ3N0ciAi0L/RgNC+0YfQuNGC0LDRgtGMINC90LDRgdGC0YDQvtC50LrQuCDQuNC3INGD0LrQsNC30LDQvdC90L7Qs9C+INC00LLQvtC40YfQvdC+0LPQviDQvtCx0YrQtdC60YLQsCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMxCiBtc2dpZCAiQWN0aW9uIgogbXNnc3RyICLQlNC10LnRgdGC0LLQuNC1IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyOQorIzogYnVpbHRpbi9jb25maWcuYzoxMzIKIG1zZ2lkICJnZXQgdmFsdWU6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAi0L/QvtC70YPRh9C40YLRjCDQt9C90LDRh9C10L3QuNC1OiDQuNC80Y8gW9GI0LDQsdC70L7QvS3Qt9C90LDRh9C10L3QuNC5XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMzCiBtc2dpZCAiZ2V0IGFsbCB2YWx1ZXM6IGtleSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICLQv9C+0LvRg9GH0LjRgtGMINCy0YHQtSDQt9C90LDRh9C10L3QuNGPOiDQutC70Y7RhyBb0YjQsNCx0LvQvtC9LdC30L3QsNGH0LXQvdC40LldIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMQorIzogYnVpbHRpbi9jb25maWcuYzoxMzQKIG1zZ2lkICJnZXQgdmFsdWVzIGZvciByZWdleHA6IG5hbWUtcmVnZXggW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAi0L/QvtC70YPRh9C40YLRjCDQt9C90LDRh9C10L3QuNGPINC/0L4g0YjQsNCx0LvQvtC90YM6INGI0LDQsdC70L7QvS3QuNC80LXQvSBb0YjQsNCx0LvQvtC9LdC30L3QsNGH0LXQvdC40LldIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMgorIzogYnVpbHRpbi9jb25maWcuYzoxMzUKIG1zZ2lkICJnZXQgdmFsdWUgc3BlY2lmaWMgZm9yIHRoZSBVUkw6IHNlY3Rpb25bLnZhcl0gVVJMIgogbXNnc3RyICLQv9C+0LvRg9GH0LjRgtGMINC30L3QsNGH0LXQvdC40LUsINGB0L/QtdGG0LjRhNC40YfQvdC+0LUg0LTQu9GPIFVSTDog0YDQsNC30LTQtdC7Wy7Qv9C10YDQtdC80LXQvdC90LDRj10gVVJMIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMworIzogYnVpbHRpbi9jb25maWcuYzoxMzYKIG1zZ2lkICJyZXBsYWNlIGFsbCBtYXRjaGluZyB2YXJpYWJsZXM6IG5hbWUgdmFsdWUgW3ZhbHVlX3JlZ2V4XSIKIG1zZ3N0ciAi0LfQsNC80LXQvdC40YLRjCDQstGB0LUg0YHQvtC+0YLQstC10YLRgdGC0LLRg9GO0YnQuNC1INC/0LXRgNC10LzQtdC90L3Ri9C1OiDQuNC80Y8g0LfQvdCw0YfQtdC90LjQtSBb0YjQsNCx0LvQvtC9LdC30L3QsNGH0LXQvdC40LldIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNAorIzogYnVpbHRpbi9jb25maWcuYzoxMzcKIG1zZ2lkICJhZGQgYSBuZXcgdmFyaWFibGU6IG5hbWUgdmFsdWUiCiBtc2dzdHIgItC00L7QsdCw0LLQuNGC0Ywg0L3QvtCy0YPRjiDQv9C10YDQtdC80LXQvdC90YPRjjog0LjQvNGPINC30L3QsNGH0LXQvdC40LUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM1CisjOiBidWlsdGluL2NvbmZpZy5jOjEzOAogbXNnaWQgInJlbW92ZSBhIHZhcmlhYmxlOiBuYW1lIFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgItGD0LTQsNC70LjRgtGMINC/0LXRgNC10LzQtdC90L3Rg9GOOiDQuNC80Y8gW9GI0LDQsdC70L7QvS3Qt9C90LDRh9C10L3QuNC5XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM5CiBtc2dpZCAicmVtb3ZlIGFsbCBtYXRjaGVzOiBuYW1lIFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgItGD0LTQsNC70LjRgtGMINCy0YHQtSDRgdC+0LLQv9Cw0LTQsNGO0YnQuNC1OiDQuNC80Y8gW9GI0LDQsdC70L7QvS3Qt9C90LDRh9C10L3QuNC5XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQwCiBtc2dpZCAicmVuYW1lIHNlY3Rpb246IG9sZC1uYW1lIG5ldy1uYW1lIgogbXNnc3RyICLQv9C10YDQtdC40LzQtdC90L7QstCw0YLRjCDRgNCw0LfQtNC10Ls6INGB0YLQsNGA0L7QtS3QuNC80Y8g0L3QvtCy0L7QtS3QuNC80Y8iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM4CisjOiBidWlsdGluL2NvbmZpZy5jOjE0MQogbXNnaWQgInJlbW92ZSBhIHNlY3Rpb246IG5hbWUiCiBtc2dzdHIgItGD0LTQsNC70LjRgtGMINGA0LDQt9C00LXQuzog0LjQvNGPIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzOQorIzogYnVpbHRpbi9jb25maWcuYzoxNDIKIG1zZ2lkICJsaXN0IGFsbCIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDQstC10YHRjCDRgdC/0LjRgdC+0LoiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQwCisjOiBidWlsdGluL2NvbmZpZy5jOjE0MwogbXNnaWQgIm9wZW4gYW4gZWRpdG9yIgogbXNnc3RyICLQvtGC0LrRgNGL0YLRjCDQsiDRgNC10LTQsNC60YLQvtGA0LUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQxCisjOiBidWlsdGluL2NvbmZpZy5jOjE0NAogbXNnaWQgImZpbmQgdGhlIGNvbG9yIGNvbmZpZ3VyZWQ6IHNsb3QgW2RlZmF1bHRdIgogbXNnc3RyICLQvdCw0LnRgtC4INC90LDRgdGC0YDQvtC10L3QvdGL0Lkg0YbQstC10YI6INGA0LDQt9C00LXQuyBb0L/Qvi3Rg9C80L7Qu9GH0LDQvdC40Y5dIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0MgorIzogYnVpbHRpbi9jb25maWcuYzoxNDUKIG1zZ2lkICJmaW5kIHRoZSBjb2xvciBzZXR0aW5nOiBzbG90IFtzdGRvdXQtaXMtdHR5XSIKIG1zZ3N0ciAi0L/RgNC+0LLQtdGA0LjRgtGMLCDRgdGD0YnQtdGB0YLQstGD0LXRgiDQu9C4INC90LDRgdGC0YDQvtC10L3QvdGL0Lkg0YbQstC10YI6INGA0LDQt9C00LXQuyBbc3Rkb3V0LdC10YHRgtGMLXR0eV0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQzCisjOiBidWlsdGluL2NvbmZpZy5jOjE0NgogbXNnaWQgIlR5cGUiCiBtc2dzdHIgItCi0LjQvyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ3CiBtc2dpZCAidmFsdWUgaXMgZ2l2ZW4gdGhpcyB0eXBlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ1CisjOiBidWlsdGluL2NvbmZpZy5jOjE0OAogbXNnaWQgInZhbHVlIGlzIFwidHJ1ZVwiIG9yIFwiZmFsc2VcIiIKIG1zZ3N0ciAi0LfQvdCw0YfQtdC90LjQtSDigJQg0Y3RgtC+IMKrdHJ1ZcK7ICjQv9GA0LDQstC00LApINC40LvQuCDCq2ZhbHNlwrsgKNC70L7QttGMKSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ5CiBtc2dpZCAidmFsdWUgaXMgZGVjaW1hbCBudW1iZXIiCiBtc2dzdHIgItC30L3QsNGH0LXQvdC40LUg4oCUINGN0YLQviDQtNC10YHRj9GC0LjRh9C90L7QtSDRh9C40YHQu9C+IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NworIzogYnVpbHRpbi9jb25maWcuYzoxNTAKIG1zZ2lkICJ2YWx1ZSBpcyAtLWJvb2wgb3IgLS1pbnQiCiBtc2dzdHIgItC30L3QsNGH0LXQvdC40LUg4oCUINGN0YLQviAtLWJvb2wg0LjQu9C4IC0taW50IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0OAorIzogYnVpbHRpbi9jb25maWcuYzoxNTEKIG1zZ2lkICJ2YWx1ZSBpcyBhIHBhdGggKGZpbGUgb3IgZGlyZWN0b3J5IG5hbWUpIgogbXNnc3RyICLQt9C90LDRh9C10L3QuNC1IOKAlCDRjdGC0L4g0L/Rg9GC0YwgKNC6INGE0LDQudC70YMg0LjQu9C4INC60LDRgtCw0LvQvtCz0YMpIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0OQorIzogYnVpbHRpbi9jb25maWcuYzoxNTIKIG1zZ2lkICJ2YWx1ZSBpcyBhbiBleHBpcnkgZGF0ZSIKIG1zZ3N0ciAi0LfQvdCw0YfQtdC90LjQtSAtINGN0YLQviDQtNCw0YLQsCDQvtC60L7QvdGH0LDQvdC40Y8g0YHRgNC+0LrQsCDQtNC10LnRgdGC0LLQuNGPIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1MAorIzogYnVpbHRpbi9jb25maWcuYzoxNTMKIG1zZ2lkICJPdGhlciIKIG1zZ3N0ciAi0JTRgNGD0LPQvtC1IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1MQorIzogYnVpbHRpbi9jb25maWcuYzoxNTQKIG1zZ2lkICJ0ZXJtaW5hdGUgdmFsdWVzIHdpdGggTlVMIGJ5dGUiCiBtc2dzdHIgItC30LDQstC10YDRiNCw0YLRjCDQt9C90LDRh9C10L3QuNGPINCd0KPQm9CV0JLQq9CcINCx0LDQudGC0L7QvCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU1CiBtc2dpZCAic2hvdyB2YXJpYWJsZSBuYW1lcyBvbmx5IgogbXNnc3RyICLQv9C+0LrQsNC30YvQstCw0YLRjCDRgtC+0LvRjNC60L4g0LjQvNC10L3QsCDQv9C10YDQtdC80LXQvdC90YvRhSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU2CiBtc2dpZCAicmVzcGVjdCBpbmNsdWRlIGRpcmVjdGl2ZXMgb24gbG9va3VwIgogbXNnc3RyICLRg9GH0LjRgtGL0LLQsNGC0Ywg0LTQuNGA0LXQutGC0LjQstGLIGluY2x1ZGUgKNCy0LrQu9GO0YfQtdC90LjRjyDRhNCw0LnQu9C+0LIpINC/0YDQuCDQt9Cw0L/RgNC+0YHQtSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU3CiBtc2dpZCAic2hvdyBvcmlnaW4gb2YgY29uZmlnIChmaWxlLCBzdGFuZGFyZCBpbnB1dCwgYmxvYiwgY29tbWFuZCBsaW5lKSIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDQuNGB0YLQvtGH0L3QuNC6INC90LDRgdGC0YDQvtC50LrQuCAo0YTQsNC50LssINGB0YLQsNC90LTQsNGA0YLQvdGL0Lkg0LLQstC+0LQsINC00LLQvtC40YfQvdGL0Lkg0L7QsdGK0LXQutGCLCDQutC+0LzQsNC90LTQvdCw0Y8g0YHRgtGA0L7QutCwKSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU4CiBtc2dpZCAidmFsdWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU4CiBtc2dpZCAid2l0aCAtLWdldCwgdXNlIGRlZmF1bHQgdmFsdWUgd2hlbiBtaXNzaW5nIGVudHJ5IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTY4CisjOiBidWlsdGluL2NvbmZpZy5jOjE3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgJWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNzAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIndyb25nIG51bWJlciBvZiBhcmd1bWVudHMsIHNob3VsZCBiZSBmcm9tICVkIHRvICVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MzA0CisjOiBidWlsdGluL2NvbmZpZy5jOjMwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGtleSBwYXR0ZXJuOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjM0MAorIzogYnVpbHRpbi9jb25maWcuYzozNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGZvcm1hdCBkZWZhdWx0IGNvbmZpZyB2YWx1ZTogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzozOTcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBwYXJzZSBjb2xvciAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDM5CisjOiBidWlsdGluL2NvbmZpZy5jOjQ0MwogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBkZWZhdWx0IGNvbG9yIHZhbHVlIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9C+0LHRgNCw0YLRjCDQt9C90LDRh9C10L3QuNC1INGG0LLQtdGC0LAg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDkyIGJ1aWx0aW4vY29uZmlnLmM6NzI0CisjOiBidWlsdGluL2NvbmZpZy5jOjQ5NiBidWlsdGluL2NvbmZpZy5jOjc0MgogbXNnaWQgIm5vdCBpbiBhIGdpdCBkaXJlY3RvcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0OTUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDk5CiBtc2dpZCAid3JpdGluZyB0byBzdGRpbiBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDk4CisjOiBidWlsdGluL2NvbmZpZy5jOjUwMgogbXNnaWQgIndyaXRpbmcgY29uZmlnIGJsb2JzIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo1ODMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIjIFRoaXMgaXMgR2l0J3MgcGVyLXVzZXIgY29uZmlndXJhdGlvbiBmaWxlLlxuIgpAQCAtOTE5Miw3NCArMTEwNTUsODEgQEAKICIjXHRlbWFpbCA9ICVzXG4iCiBtc2dzdHIgIiMg0K3RgtC+INGE0LDQudC7INC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8gR2l0LlxuW3VzZXJdXG4jINCf0L7QttCw0LvRg9C50YHRgtCwLCDQsNC00LDQv9GC0LjRgNGD0LnRgtC1INC4INGA0LDRgdC60L7QvNC80LXQvdGC0LjRgNGD0LnRgtC1INGB0LvQtdC00YPRjtGJ0LjQtSDRgdGC0YDQvtC60Lg6XG4jXHR1c2VyID0gJXNcbiNcdGVtYWlsID0gJXNcbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MDYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjExCiBtc2dpZCAib25seSBvbmUgY29uZmlnIGZpbGUgYXQgYSB0aW1lIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjExCisjOiBidWlsdGluL2NvbmZpZy5jOjYxNgogbXNnaWQgIi0tbG9jYWwgY2FuIG9ubHkgYmUgdXNlZCBpbnNpZGUgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiLS1sb2NhbCDQvNC+0LbQvdC+INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRgtC+0LvRjNC60L4g0LLQvdGD0YLRgNC4IGdpdCDRgNC10L/QvtC30LjRgtC+0YDQuNGPIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYxNAorIzogYnVpbHRpbi9jb25maWcuYzo2MTkKIG1zZ2lkICItLWJsb2IgY2FuIG9ubHkgYmUgdXNlZCBpbnNpZGUgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYzMworIzogYnVpbHRpbi9jb25maWcuYzo2MzgKIG1zZ2lkICIkSE9NRSBub3Qgc2V0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjcwCi1tc2dpZCAiLS1nZXQtY29sb3IgYW5kIHZhcmlhYmxlIHR5cGUgYXJlIGluY29oZXJlbnQiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi9jb25maWcuYzo2NzUKLW1zZ2lkICJvbmx5IG9uZSBhY3Rpb24gYXQgYSB0aW1lIgorIzogYnVpbHRpbi9jb25maWcuYzo2NTgKK21zZ2lkICIiCisiLS13b3JrdHJlZSBjYW5ub3QgYmUgdXNlZCB3aXRoIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMgdW5sZXNzIHRoZSBjb25maWdcbiIKKyJleHRlbnNpb24gd29ya3RyZWVDb25maWcgaXMgZW5hYmxlZC4gUGxlYXNlIHJlYWQgXCJDT05GSUdVUkFUSU9OIEZJTEVcIlxuIgorInNlY3Rpb24gaW4gXCJnaXQgaGVscCB3b3JrdHJlZVwiIGZvciBkZXRhaWxzIgogbXNnc3RyICIiCiAKICM6IGJ1aWx0aW4vY29uZmlnLmM6Njg4Cittc2dpZCAiLS1nZXQtY29sb3IgYW5kIHZhcmlhYmxlIHR5cGUgYXJlIGluY29oZXJlbnQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9jb25maWcuYzo2OTMKK21zZ2lkICJvbmx5IG9uZSBhY3Rpb24gYXQgYSB0aW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzA2CiBtc2dpZCAiLS1uYW1lLW9ubHkgaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tbGlzdCBvciAtLWdldC1yZWdleHAiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2OTQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzEyCiBtc2dpZCAiIgogIi0tc2hvdy1vcmlnaW4gaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCwgYW5kICIKICItLWxpc3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MDAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzE4CiBtc2dpZCAiLS1kZWZhdWx0IGlzIG9ubHkgYXBwbGljYWJsZSB0byAtLWdldCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjcxMworIzogYnVpbHRpbi9jb25maWcuYzo3MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgY29uZmlnIGZpbGUgJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjcxNgorIzogYnVpbHRpbi9jb25maWcuYzo3MzQKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIGNvbmZpZyBmaWxlKHMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzI2CisjOiBidWlsdGluL2NvbmZpZy5jOjc0NAogbXNnaWQgImVkaXRpbmcgc3RkaW4gaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjcyOAorIzogYnVpbHRpbi9jb25maWcuYzo3NDYKIG1zZ2lkICJlZGl0aW5nIGJsb2JzIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3NDIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjcmVhdGUgY29uZmlndXJhdGlvbiBmaWxlICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINGE0LDQudC7INC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCAlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3NTUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzczCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjYW5ub3Qgb3ZlcndyaXRlIG11bHRpcGxlIHZhbHVlcyB3aXRoIGEgc2luZ2xlIHZhbHVlXG4iCiAiICAgICAgIFVzZSBhIHJlZ2V4cCwgLS1hZGQgb3IgLS1yZXBsYWNlLWFsbCB0byBjaGFuZ2UgJXMuIgogbXNnc3RyICLQvdC10LvRjNC30Y8g0L/QtdGA0LXQt9Cw0L/QuNGB0LDRgtGMINC90LXRgdC60L7Qu9GM0LrQviDQt9C90LDRh9C10L3QuNC5INC+0LTQvdC40LxcbiAgICAgICDQmNGB0L/QvtC70YzQt9GD0LnRgtC1INGA0LXQs9GD0LvRj9GA0L3Ri9C1INCy0YvRgNCw0LbQtdC90LjRjywg0L/QsNGA0LDQvNC10YLRgNGLIC0tYWRkINC40LvQuCAtLXJlcGxhY2UtYWxsLCDRh9GC0L7QsdGLINC40LfQvNC10L3QuNGC0YwgJXMuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjgyOSBidWlsdGluL2NvbmZpZy5jOjg0MAorIzogYnVpbHRpbi9jb25maWcuYzo4NDcgYnVpbHRpbi9jb25maWcuYzo4NTgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBzZWN0aW9uOiAlcyIKIG1zZ3N0ciAiIgpAQCAtOTI3MiwxOTQgKzExMTQyLDE5NCBAQAogbXNnaWQgInByaW50IHNpemVzIGluIGh1bWFuIHJlYWRhYmxlIGZvcm1hdCIKIG1zZ3N0ciAi0LLRi9Cy0L7QtCDRgNCw0LfQvNC10YDQvtCyINCyINGD0LTQvtCx0L7Rh9C40YLQsNC10LzQvtC8INC00LvRjyDRh9C10LvQvtCy0LXQutCwINCy0LjQtNC1IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MjYKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNwogbXNnaWQgImdpdCBkZXNjcmliZSBbPG9wdGlvbnM+XSBbPGNvbW1pdC1pc2g+Li4uXSIKIG1zZ3N0ciAiZ2l0IGRlc2NyaWJlIFs80L7Qv9GG0LjQuD5dIFs80YPQutCw0LfQsNGC0LXQu9GMLdC60L7QvNC80LjRgtCwPuKApl0iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNworIzogYnVpbHRpbi9kZXNjcmliZS5jOjI4CiBtc2dpZCAiZ2l0IGRlc2NyaWJlIFs8b3B0aW9ucz5dIC0tZGlydHkiCiBtc2dzdHIgImdpdCBkZXNjcmliZSBbPNC+0L/RhtC40Lg+XSAtLWRpcnR5IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NjIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MwogbXNnaWQgImhlYWQiCiBtc2dzdHIgItGD0LrQsNC30LDRgtC10LvRjCDQvdCwINCy0LXRgtC60YMiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjYzCiBtc2dpZCAibGlnaHR3ZWlnaHQiCiBtc2dzdHIgItC70LXQs9C60L7QstC10YHQvdGL0LkiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjYzCiBtc2dpZCAiYW5ub3RhdGVkIgogbXNnc3RyICLQsNC90L3QvtGC0LjRgNC+0LLQsNC90L3Ri9C5IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MjcyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MjczCiAjLCBjLWZvcm1hdAogbXNnaWQgImFubm90YXRlZCB0YWcgJXMgbm90IGF2YWlsYWJsZSIKIG1zZ3N0ciAi0LDQvdC90L7RgtC40YDQvtCy0LDQvdC90LDRjyDQvNC10YLQutCwICVzINC90LUg0LTQvtGB0YLRg9C/0L3QsCIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3NgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJhbm5vdGF0ZWQgdGFnICVzIGhhcyBubyBlbWJlZGRlZCBuYW1lIgogbXNnc3RyICLQsNC90L3QvtGC0LjRgNC+0LLQsNC90L3QsNGPINC80LXRgtC60LAgJXMg0L3QtSDRgdC+0LTQtdGA0LbQuNGCINCy0YHRgtGA0L7QtdC90L3QvtCz0L4g0L3QsNC30LLQsNC90LjRjyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3OAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0YWcgJyVzJyBpcyByZWFsbHkgJyVzJyBoZXJlIgogbXNnc3RyICLQvNC10YLQutCwIMKrJXPCuyDRg9C20LUg0LfQtNC10YHRjCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gdGFnIGV4YWN0bHkgbWF0Y2hlcyAnJXMnIgogbXNnc3RyICLQvdC10YIg0LzQtdGC0L7Quiwg0YLQvtGH0L3QviDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0Y7RidC40YUgwqslc8K7IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIGV4YWN0IG1hdGNoIG9uIHJlZnMgb3IgdGFncywgc2VhcmNoaW5nIHRvIGRlc2NyaWJlXG4iCiBtc2dzdHIgItCd0LXRgiDRgtC+0YfQvdGL0YUg0YHQvtCy0L/QsNC00LXQvdC40Lkg0L/QviDRgdGB0YvQu9C60LDQvCDQuNC70Lgg0YLQtdCz0LDQvCwg0LjRidGDINC+0L/QuNGB0LDQvdC40Y9cbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjM3OAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjM3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmaW5pc2hlZCBzZWFyY2ggYXQgJXNcbiIKIG1zZ3N0ciAi0L/QvtC40YHQuiDQvtC60L7QvdGH0LXQvSDQvdCwICVzXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MDQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vIGFubm90YXRlZCB0YWdzIGNhbiBkZXNjcmliZSAnJXMnLlxuIgogIkhvd2V2ZXIsIHRoZXJlIHdlcmUgdW5hbm5vdGF0ZWQgdGFnczogdHJ5IC0tdGFncy4iCiBtc2dzdHIgItCd0LXRgiDQsNC90L3QvtGC0LjRgNC+0LLQsNC90L3Ri9GFINC80LXRgtC+0LosINC60L7RgtC+0YDRi9C1INC80L7Qs9GD0YIg0L7Qv9C40YHQsNGC0Ywgwqslc8K7Llxu0J3QviDQuNC80LXRjtGC0YHRjyDQvdC10LDQvdC90L7RgtC40YDQvtCy0LDQvdC90YvQtSDQvNC10YLQutC4OiDQv9C+0L/RgNC+0LHRg9C50YLQtSDQtNC+0LHQsNCy0LjRgtGMINC/0LDRgNCw0LzQtdGC0YAgLS10YWdzLiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQwOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQwOQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gdGFncyBjYW4gZGVzY3JpYmUgJyVzJy5cbiIKICJUcnkgLS1hbHdheXMsIG9yIGNyZWF0ZSBzb21lIHRhZ3MuIgogbXNnc3RyICLQndC10YIg0LzQtdGC0L7Quiwg0LrQvtGC0L7RgNGL0LUg0LzQvtCz0YPRgiDQvtC/0LjRgdCw0YLRjCDCqyVz4oCmLlxu0J/QvtC/0YDQvtCx0YPQudGC0LUg0LTQvtCx0LDQstC40YLRjCDQv9Cw0YDQsNC80LXRgtGAIC0tYWx3YXlzINC40LvQuCDRgdC+0LfQtNCw0YLRjCDQutCw0LrQuNC1LdC90LjQsdGD0LTRjCDQvNC10YLQutC4LiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQzOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmF2ZXJzZWQgJWx1IGNvbW1pdHNcbiIKIG1zZ3N0ciAi0L/QvtGB0LXRidC10L3QviAlbHUg0LrQvtC80LzQuNGC0L7QslxuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDQxCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJtb3JlIHRoYW4gJWkgdGFncyBmb3VuZDsgbGlzdGVkICVpIG1vc3QgcmVjZW50XG4iCiAiZ2F2ZSB1cCBzZWFyY2ggYXQgJXNcbiIKIG1zZ3N0ciAi0LHQvtC70LXQtSAlaSDQvNC10YLQvtC6INC90LDQudC00LXQvdC+OyDQv9C+0LrQsNC30LDQvdC+INC/0L7RgdC70LXQtNC90LjQtSAlaVxu0L7RgdGC0LDQvdC+0LLQu9C10L0g0L/QvtC40YHQuiDQv9C+0YHQu9C1ICVzXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MDkKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzY3JpYmUgJXNcbiIKIG1zZ3N0ciAi0L7Qv9C40YHQsNGC0YwgJXNcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUxMiBidWlsdGluL2xvZy5jOjUwOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjUxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIKIG1zZ3N0ciAi0J3QtdC00L7Qv9GD0YHRgtC40LzQvtC1INC40LzRjyDQvtCx0YrQtdC60YLQsCAlcyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyMAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBuZWl0aGVyIGEgY29tbWl0IG5vciBibG9iIgogbXNnc3RyICIlcyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LrQvtC80LzQuNGC0L7QvCDQuNC70Lgg0LTQstC+0LjRh9C90YvQvCDQvtCx0YrQtdC60YLQvtC8IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM1CiBtc2dpZCAiZmluZCB0aGUgdGFnIHRoYXQgY29tZXMgYWZ0ZXIgdGhlIGNvbW1pdCIKIG1zZ3N0ciAi0L/QvtC40YHQuiDQvNC10YLQutC4LCDQutC+0YLQvtGA0LDRjyDQuNC00LXRgiDQv9C+0YHQu9C1INC60L7QvNC80LjRgtCwIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM1CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM2CiBtc2dpZCAiZGVidWcgc2VhcmNoIHN0cmF0ZWd5IG9uIHN0ZGVyciIKIG1zZ3N0ciAi0LLRi9Cy0L7QtCDQvtGC0LvQsNC00L7Rh9C90L7QuSDQuNC90YTQvtGA0LzQsNGG0LjQuCDRgdGC0YDQsNGC0LXQs9C40Lgg0L/QvtC40YHQutCwINC90LAg0YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQstGL0LLQvtC0IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM2CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3CiBtc2dpZCAidXNlIGFueSByZWYiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQu9GO0LHRg9GOINGB0YHRi9C70LrRgyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzNworIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOAogbXNnaWQgInVzZSBhbnkgdGFnLCBldmVuIHVuYW5ub3RhdGVkIgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LvRjtCx0YPRjiDQvNC10YLQutGDLCDQtNCw0LbQtSDQvdC10LDQvdC90L7RgtC40YDQvtCy0LDQvdC90YPRjiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOQogbXNnaWQgImFsd2F5cyB1c2UgbG9uZyBmb3JtYXQiCiBtc2dzdHIgItCy0YHQtdCz0LTQsCDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LTQu9C40L3QvdGL0Lkg0YTQvtGA0LzQsNGCINCy0YvQstC+0LTQsCIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU0MAogbXNnaWQgIm9ubHkgZm9sbG93IGZpcnN0IHBhcmVudCIKIG1zZ3N0ciAi0YHQu9C10LTQvtCy0LDRgtGMINGC0L7Qu9GM0LrQviDQt9CwINC/0LXRgNCy0YvQvCDRgNC+0LTQuNGC0LXQu9C10LwiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDMKIG1zZ2lkICJvbmx5IG91dHB1dCBleGFjdCBtYXRjaGVzIgogbXNnc3RyICLQstGL0LLQvtC00LjRgtGMINGC0L7Qu9GM0LrQviDRgtC+0YfQvdGL0LUg0YHQvtCy0L/QsNC00LXQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDUKIG1zZ2lkICJjb25zaWRlciA8bj4gbW9zdCByZWNlbnQgdGFncyAoZGVmYXVsdDogMTApIgogbXNnc3RyICLRgNCw0YHRgdC80LDRgtGA0LjQstCw0YLRjCDQv9C+0YHQu9C10LTQvdC40LUgPG4+INC80LXRgtC+0LogKNC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOOiAxMCkiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDYKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDcKIG1zZ2lkICJvbmx5IGNvbnNpZGVyIHRhZ3MgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICLRgNCw0YHRgdC80LDRgtGA0LjQstCw0YLRjCDRgtC+0LvRjNC60L4g0LzQtdGC0LrQuCDQv9C+IDzRiNCw0LHQu9C+0L3Rgz4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDkKIG1zZ2lkICJkbyBub3QgY29uc2lkZXIgdGFncyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgItC90LUg0YPRh9C40YLRi9Cy0LDRgtGMINC80LXRgtC60LgsINC60L7RgtC+0YDRi9C1INGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGCIDzRiNCw0LHQu9C+0L3Rgz4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTAgYnVpbHRpbi9uYW1lLXJldi5jOjQyNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MSBidWlsdGluL25hbWUtcmV2LmM6NDI2CiBtc2dpZCAic2hvdyBhYmJyZXZpYXRlZCBjb21taXQgb2JqZWN0IGFzIGZhbGxiYWNrIgogbXNnc3RyICLQtdGB0LvQuCDQvdC1INC90LDQudC00LXQvdC+LCDQv9C+0LrQsNC30LDRgtGMINGB0L7QutGA0LDRidC10L3QvdGL0Lkg0L3QvtC80LXRgCDRgNC10LTQsNC60YbQuNC4INC60L7QvNC80LjRgtCwIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUxIGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTIgYnVpbHRpbi9kZXNjcmliZS5jOjU1NQogbXNnaWQgIm1hcmsiCiBtc2dzdHIgItC/0L7QvNC10YLQutCwIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUzCiBtc2dpZCAiYXBwZW5kIDxtYXJrPiBvbiBkaXJ0eSB3b3JraW5nIHRyZWUgKGRlZmF1bHQ6IFwiLWRpcnR5XCIpIgotbXNnc3RyICLQtNC+0LHQsNCy0LjRgtGMIDzQv9C+0LzQtdGC0LrRgz4g0L/RgNC4INC40LfQvNC10L3QtdC90L3QvtC8INGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LUgKNC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOOiDCqy1kaXJ0ecK7KSIKK21zZ3N0ciAi0LTQvtCx0LDQstC40YLRjCA80L/QvtC80LXRgtC60YM+INC/0YDQuCDQuNC30LzQtdC90ZHQvdC90L7QvCDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1ICjQv9C+INGD0LzQvtC70YfQsNC90LjRjjogwqstZGlydHnCuykiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTUKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTYKIG1zZ2lkICJhcHBlbmQgPG1hcms+IG9uIGJyb2tlbiB3b3JraW5nIHRyZWUgKGRlZmF1bHQ6IFwiLWJyb2tlblwiKSIKIG1zZ3N0ciAi0LTQvtCx0LDQstC40YLRjCA80L/QvtC80LXRgtC60YM+INC90LAg0L/QvtCy0YDQtdC20LTRkdC90L3QvtC1INGA0LDQsdC+0YfQtdC1INC00LXRgNC10LLQviAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y46IMKrLWJyb2tlbsK7KSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU3MworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU3NAogbXNnaWQgIi0tbG9uZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFiYnJldj0wIgogbXNnc3RyICItLWxvbmcg0L3QtdGB0L7QstC80LXRgdGC0LjQvNC+INGBIC0tYWJicmV2PTAiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MDIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MDMKIG1zZ2lkICJObyBuYW1lcyBmb3VuZCwgY2Fubm90IGRlc2NyaWJlIGFueXRoaW5nLiIKIG1zZ3N0ciAi0JjQvNC10L3QsCDQvdC1INC90LDQudC00LXQvdGLLCDQvdC1INC80L7Qs9GDINC90LjRh9C10LPQviDQvtC/0LjRgdCw0YLRjC4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NTIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NTQKIG1zZ2lkICItLWRpcnR5IGlzIGluY29tcGF0aWJsZSB3aXRoIGNvbW1pdC1pc2hlcyIKIG1zZ3N0ciAiLS1kaXJ0eSDQvdC10YHQvtCy0LzQtdGB0YLQuNC80L4g0YEg0YPQutCw0LfQsNC90LjQtdC8INGD0LrQsNC30LDRgtC10LvQtdC5INC60L7QvNC80LjRgtC+0LIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NTQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NTYKIG1zZ2lkICItLWJyb2tlbiBpcyBpbmNvbXBhdGlibGUgd2l0aCBjb21taXQtaXNoZXMiCiBtc2dzdHIgIi0tYnJva2VuINC90LXRgdC+0LLQvNC10YHRgtC40LzQviDRgSDRg9C60LDQt9Cw0L3QuNC10Lwg0YPQutCw0LfQsNGC0LXQu9C10Lkg0LrQvtC80LzQuNGC0L7QsiIKIAotIzogYnVpbHRpbi9kaWZmLmM6ODMKKyM6IGJ1aWx0aW4vZGlmZi5jOjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IG5vdCBhIHJlZ3VsYXIgZmlsZSBvciBzeW1saW5rIgogbXNnc3RyICLCqyVzwrs6INC90LUg0Y/QstC70Y/QtdGC0YHRjyDQvtCx0YvRh9C90YvQvCDRhNCw0LnQu9C+0Lwg0LjQu9C4INGB0LjQvNCy0L7Qu9GM0L3QvtC5INGB0YHRi9C70LrQvtC5IgogCi0jOiBidWlsdGluL2RpZmYuYzoyMzQKKyM6IGJ1aWx0aW4vZGlmZi5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9wdGlvbjogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90YvQuSDQv9Cw0YDQsNC80LXRgtGAOiAlcyIKIAotIzogYnVpbHRpbi9kaWZmLmM6MzYzCisjOiBidWlsdGluL2RpZmYuYzozNTAKIG1zZ2lkICJOb3QgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0J3QtSDQvdCw0LnQtNC10L0gZ2l0INGA0LXQv9C+0LfQuNGC0L7RgNC40LkiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjQwNworIzogYnVpbHRpbi9kaWZmLmM6Mzk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgb2JqZWN0ICclcycgZ2l2ZW4uIgogbXNnc3RyICLQv9C10YDQtdC00LDQvSDQvdC10L/RgNCw0LLQuNC70YzQvdGL0Lkg0L7QsdGK0LXQutGCIMKrJXPCuy4iCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjQxNgorIzogYnVpbHRpbi9kaWZmLmM6NDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1vcmUgdGhhbiB0d28gYmxvYnMgZ2l2ZW46ICclcyciCiBtc2dzdHIgItC/0LXRgNC10LTQsNC90L4g0LHQvtC70YzRiNC1INC00LLRg9GFINC00LLQvtC40YfQvdGL0YUg0L7QsdGK0LXQutGC0L7Qsjogwqslc8K7IgogCi0jOiBidWlsdGluL2RpZmYuYzo0MjEKKyM6IGJ1aWx0aW4vZGlmZi5jOjQwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmhhbmRsZWQgb2JqZWN0ICclcycgZ2l2ZW4uIgogbXNnc3RyICLQv9C10YDQtdC00LDQvSDQvdC10L7QsdGA0LDQsdC+0YLQsNC90L3Ri9C5INC+0LHRitC10LrRgiDCqyVzwrsuIgpAQCAtOTQ2OCw5MyArMTEzMzgsMTA5IEBACiBtc2dpZCAiZ2l0IGRpZmZ0b29sIFs8b3B0aW9ucz5dIFs8Y29tbWl0PiBbPGNvbW1pdD5dXSBbLS1dIFs8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgZGlmZnRvb2wgWzzQvtC/0YbQuNC4Pl0gWzzQutC+0LzQvNC40YI+IFs80LrQvtC80LzQuNGCPl1dIFstLV0gWzzQv9GD0YLRjD7igKZdIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6MjYwCisjOiBidWlsdGluL2RpZmZ0b29sLmM6MjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZDogJWQiCiBtc2dzdHIgItGB0LHQvtC5OiAlZCIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjMwMgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjI5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBzeW1saW5rICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDRgdC40LzQstC+0LvRjNC90YPRjiDRgdGB0YvQu9C60YMgJXMiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzozMDQKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzoyOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgc3ltbGluayBmaWxlICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDRhNCw0LnQuyDRgdC40LzQstC+0LvRjNC90L7QuSDRgdGB0YvQu9C60LggJXMiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzozMTIKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzozMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgb2JqZWN0ICVzIGZvciBzeW1saW5rICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDQvtCx0YrQtdC60YIgJXMg0LTQu9GPINGB0LjQvNCy0L7Qu9GM0L3QvtC5INGB0YHRi9C70LrQuCAlcyIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjQxMworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjQwNgogbXNnaWQgIiIKICJjb21iaW5lZCBkaWZmIGZvcm1hdHMoJy1jJyBhbmQgJy0tY2MnKSBhcmUgbm90IHN1cHBvcnRlZCBpblxuIgogImRpcmVjdG9yeSBkaWZmIG1vZGUoJy1kJyBhbmQgJy0tZGlyLWRpZmYnKS4iCi1tc2dzdHIgItC60L7QvNCx0LjQvdC40YDQvtCy0LDQvdC90YvQtSDRhNC+0YDQvNCw0YLRiyDRgNCw0LfQu9C40YfQuNC5INGE0LDQudC70L7QsijCqy1jwrsg0LggwqstLWNjwrspINC90LUg0L/QvtC00LTQtdGA0LbQuNCy0LDRjtGC0YHRjyDQsiDRgNC10LbQuNC80LUg0YHRgNCw0LLQvdC10L3QuNGPINC60LDRgtCw0LvQvtCz0L7QsijCqy1kwrsg0LggwqstLWRpci1kaWZmwrspLiIKK21zZ3N0ciAi0LrQvtC80LHQuNC90LjRgNC+0LLQsNC90L3Ri9C1INGE0L7RgNC80LDRgtGLINGE0LDQudC70L7QsiDRgdC/0LjRgdC60LAg0LjQt9C80LXQvdC10L3QuNC5KMKrLWPCuyDQuCDCqy0tY2PCuykg0L3QtSDQv9C+0LTQtNC10YDQttC40LLQsNGO0YLRgdGPINCyINGA0LXQttC40LzQtSDRgdGA0LDQstC90LXQvdC40Y8g0LrQsNGC0LDQu9C+0LPQvtCyKMKrLWTCuyDQuCDCqy0tZGlyLWRpZmbCuykuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjMzCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjI2CiAjLCBjLWZvcm1hdAogbXNnaWQgImJvdGggZmlsZXMgbW9kaWZpZWQ6ICclcycgYW5kICclcycuIgogbXNnc3RyICLQvtCx0LAg0YTQsNC50LvQsCDQuNC30LzQtdC90LXQvdGLOiDCqyVzwrsg0Lggwqslc8K7LiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjYzNQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjYyOAogbXNnaWQgIndvcmtpbmcgdHJlZSBmaWxlIGhhcyBiZWVuIGxlZnQuIgogbXNnc3RyICLRgNCw0LHQvtGH0LjQuSDQutCw0YLQsNC70L7QsyDQsdGL0Lsg0L/QvtC60LjQvdGD0YIuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgInRlbXBvcmFyeSBmaWxlcyBleGlzdCBpbiAnJXMnLiIKIG1zZ3N0ciAi0LLRgNC10LzQtdC90L3Ri9C1INGE0LDQudC70Ysg0YPQttC1INC90LDRhdC+0LTRj9GC0YHRjyDQsiDCqyVzwrsuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ3CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjQwCiBtc2dpZCAieW91IG1heSB3YW50IHRvIGNsZWFudXAgb3IgcmVjb3ZlciB0aGVzZS4iCiBtc2dzdHIgItCy0L7Qt9C80L7QttC90L4g0LLRiyDRhdC+0YLQuNGC0LUg0LjRhSDRg9C00LDQu9C40YLRjCDQuNC70Lgg0LLQvtGB0YHRgtCw0L3QvtCy0LjRgtGMLiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5NgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY4OQogbXNnaWQgInVzZSBgZGlmZi5ndWl0b29sYCBpbnN0ZWFkIG9mIGBkaWZmLnRvb2xgIgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0YwgwqtkaWZmLmd1aXRvb2zCuyDQstC80LXRgdGC0L4gwqtkaWZmLnRvb2zCuyIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5MQogbXNnaWQgInBlcmZvcm0gYSBmdWxsLWRpcmVjdG9yeSBkaWZmIgogbXNnc3RyICLQstGL0L/QvtC70L3QuNGC0Ywg0L/QvtGE0LDQudC70L7QstC+0LUg0YHRgNCw0LLQvdC10L3QuNC1INCy0YHQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsCIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwMAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5MwogbXNnaWQgImRvIG5vdCBwcm9tcHQgYmVmb3JlIGxhdW5jaGluZyBhIGRpZmYgdG9vbCIKIG1zZ3N0ciAi0L3QtSDRgdC/0YDQsNGI0LjQstCw0YLRjCDQv9C10YDQtdC0INC30LDQv9GD0YHQutC+0Lwg0YPRgtC40LvQuNGC0Ysg0YHRgNCw0LLQvdC10L3QuNGPIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzA1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6Njk4CiBtc2dpZCAidXNlIHN5bWxpbmtzIGluIGRpci1kaWZmIG1vZGUiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRgdC40LzQstC+0LvRjNC90YvQtSDRgdGB0YvQu9C60Lgg0LIg0YDQtdC20LjQvNC1INGB0YDQsNCy0L3QtdC90LjRjyDQutCw0YLQsNC70L7Qs9CwIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzA2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6Njk5CiBtc2dpZCAidG9vbCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzA3CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzAwCiBtc2dpZCAidXNlIHRoZSBzcGVjaWZpZWQgZGlmZiB0b29sIgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YPQutCw0LfQsNC90L3Rg9GOINGD0YLQuNC70LjRgtGDINGB0YDQsNCy0L3QtdC90LjRjyIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwMgogbXNnaWQgInByaW50IGEgbGlzdCBvZiBkaWZmIHRvb2xzIHRoYXQgbWF5IGJlIHVzZWQgd2l0aCBgLS10b29sYCIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0YHQv9C40YHQvtC6INGD0YLQuNC70LjRgiwg0LrQvtGC0L7RgNGL0LUg0LzQvtC20L3QviDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YEg0L/QsNGA0LDQvNC10YLRgNC+0LwgwqstLXRvb2zCuyIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxMgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNQogbXNnaWQgIiIKICJtYWtlICdnaXQtZGlmZnRvb2wnIGV4aXQgd2hlbiBhbiBpbnZva2VkIGRpZmYgdG9vbCByZXR1cm5zIGEgbm9uIC0gemVybyBleGl0IgogIiBjb2RlIgogbXNnc3RyICLQstGL0YXQvtC00LjRgtGMINC40LcgwqtnaXQtZGlmZnRvb2zCuywg0LXRgdC70Lgg0LLRi9C30LLQsNC90L3QsNGPINGD0YLQuNC70LjRgtCwINGB0YDQsNCy0L3QtdC90LjRjyDQstC10YDQvdGD0LvQsCDQvdC1INC90YPQu9C10LLQvtC5INC60L7QtCDQstC+0LfQstGA0LDRgtCwIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzE1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzA4CiBtc2dpZCAic3BlY2lmeSBhIGN1c3RvbSBjb21tYW5kIGZvciB2aWV3aW5nIGRpZmZzIgotbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7RgdC+0LHRg9GOINC60L7QvNCw0L3QtNGDINC00LvRjyDQv9GA0L7RgdC80L7RgtGA0LAg0YDQsNC30LvQuNGH0LjQuSIKK21zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0YHQvtCx0YPRjiDQutC+0LzQsNC90LTRgyDQtNC70Y8g0L/RgNC+0YHQvNC+0YLRgNCwINC40LfQvNC10L3QtdC90LjQuSIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjczOQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOQorbXNnaWQgInBhc3NlZCB0byBgZGlmZmAiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcyNAorbXNnaWQgImRpZmZ0b29sIHJlcXVpcmVzIHdvcmt0cmVlIG9yIC0tbm8taW5kZXgiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjczMQorbXNnaWQgIi0tZGlyLWRpZmYgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1uby1pbmRleCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzM0Cittc2dpZCAiLS1ndWksIC0tdG9vbCBhbmQgLS1leHRjbWQgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzQyCiBtc2dpZCAibm8gPHRvb2w+IGdpdmVuIGZvciAtLXRvb2w9PHRvb2w+IgogbXNnc3RyICLQvdC1INC/0LXRgNC10LTQsNC90LAgPNGD0YLQuNC70LjRgtCwPiDQtNC70Y8gLS10b29sPTzRg9GC0LjQu9C40YLQsD4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDYKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDkKIG1zZ2lkICJubyA8Y21kPiBnaXZlbiBmb3IgLS1leHRjbWQ9PGNtZD4iCiBtc2dzdHIgItC90LUg0L/QtdGA0LXQtNCw0L3QsCA80LrQvtC80LDQvdC00LA+INC00LvRjyAtLWV4dGNtZD080LrQvtC80LDQvdC00LA+IgogCkBAIC05NTYyLDM2NCArMTE0NDgsMzczIEBACiBtc2dpZCAiZ2l0IGZhc3QtZXhwb3J0IFtyZXYtbGlzdC1vcHRzXSIKIG1zZ3N0ciAiZ2l0IGZhc3QtZXhwb3J0IFvQvtC/0YbQuNC4LXJldi1saXN0XSIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMDYKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDg0CiBtc2dpZCAic2hvdyBwcm9ncmVzcyBhZnRlciA8bj4gb2JqZWN0cyIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDQv9GA0L7Qs9GA0LXRgdGBINC/0L7RgdC70LUgPG4+INC+0LHRitC10LrRgtC+0LIiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTA4NgogbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiBzaWduZWQgdGFncyIKIG1zZ3N0ciAi0LLRi9Cx0L7RgCDQvtCx0YDQsNCx0L7RgtC60Lgg0L/QvtC00L/QuNGB0LDQvdC90YvRhSDQvNC10YLQvtC6IgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMQorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwODkKIG1zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2YgdGFncyB0aGF0IHRhZyBmaWx0ZXJlZCBvYmplY3RzIgogbXNnc3RyICLQstGL0LHQvtGAINC+0LHRgNCw0LHQvtGC0LrQuCDQvNC10YLQvtC6LCDQutC+0YLQvtGA0YvQvNC4INC/0L7QvNC10YfQtdC90Ysg0L7RgtGE0LjQu9GM0YLRgNC+0LLQsNC90L3Ri9C1INC+0LHRitC10LrRgtGLIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwOTIKIG1zZ2lkICJEdW1wIG1hcmtzIHRvIHRoaXMgZmlsZSIKIG1zZ3N0ciAi0JfQsNC/0LjRgdCw0YLRjCDQv9C+0LzQtdGC0LrQuCDQsiDRjdGC0L7RgiDRhNCw0LnQuyIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTYKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDk0CiBtc2dpZCAiSW1wb3J0IG1hcmtzIGZyb20gdGhpcyBmaWxlIgogbXNnc3RyICLQmNC80L/QvtGA0YLQuNGA0L7QstCw0YLRjCDQv9C+0LzQtdGC0LrQuCDQuNC3INGN0YLQvtCz0L4g0YTQsNC50LvQsCIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDk2CiBtc2dpZCAiRmFrZSBhIHRhZ2dlciB3aGVuIHRhZ3MgbGFjayBvbmUiCiBtc2dzdHIgItCf0L7QtNC00LXQu9Cw0YLRjCDQsNCy0YLQvtGA0LAg0LzQtdGC0LrQuCwg0LXRgdC70Lgg0YMg0LzQtdGC0LrQuCDQvtC9INC+0YLRgdGD0YLRgdGC0LLRg9C10YIiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDIwCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTA5OAogbXNnaWQgIk91dHB1dCBmdWxsIHRyZWUgZm9yIGVhY2ggY29tbWl0IgogbXNnc3RyICLQktGL0LLQtdGB0YLQuCDQv9C+0LvQvdC+0LUg0LTQtdGA0LXQstC+INC00LvRjyDQutCw0LbQtNC+0LPQviDQutC+0LzQvNC40YLQsCIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTAwCiBtc2dpZCAiVXNlIHRoZSBkb25lIGZlYXR1cmUgdG8gdGVybWluYXRlIHRoZSBzdHJlYW0iCiBtc2dzdHIgItCY0YHQv9C+0LvRjNC30L7QstCw0YLRjCDQv9C+0LzQtdGC0LrRgyDQt9Cw0LLQtdGA0YjQtdC90LjRjyDQsiDQutC+0L3RhtC1INC/0L7RgtC+0LrQsCIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjMKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTAxCiBtc2dpZCAiU2tpcCBvdXRwdXQgb2YgYmxvYiBkYXRhIgogbXNnc3RyICLQn9GA0L7Qv9GD0YHRgtC40YLRjCDQstGL0LLQvtC0INC00LDQvdC90YvRhSDQtNCy0L7QuNGH0L3Ri9GFINC+0LHRitC10LrRgtC+0LIiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDI0CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTEwMiBidWlsdGluL2xvZy5jOjE2MDkKIG1zZ2lkICJyZWZzcGVjIgogbXNnc3RyICLRgdC/0LXRhtC40YTQuNC60LDRgtC+0YAg0YHRgdGL0LvQutC4IgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyNQorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExMDMKIG1zZ2lkICJBcHBseSByZWZzcGVjIHRvIGV4cG9ydGVkIHJlZnMiCiBtc2dzdHIgItCf0YDQuNC80LXQvdC40YLRjCDRgdC/0LXRhtC40YTQuNC60LDRgtC+0YAg0YHRgdGL0LvQutC4INC6INGN0LrRgdC/0L7RgNGC0LjRgNGD0LXQvNGL0Lwg0YHRgdGL0LvQutCw0LwiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDI2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTEwNAogbXNnaWQgImFub255bWl6ZSBvdXRwdXQiCiBtc2dzdHIgItGB0LTQtdC70LDRgtGMINCy0YvQstC+0LQg0LDQvdC+0L3QuNC80L3Ri9C8IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MjcKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTA2Cittc2dpZCAiUmVmZXJlbmNlIHBhcmVudHMgd2hpY2ggYXJlIG5vdCBpbiBmYXN0LWV4cG9ydCBzdHJlYW0gYnkgb2JqZWN0IGlkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTA4Cittc2dpZCAiU2hvdyBvcmlnaW5hbCBvYmplY3QgaWRzIG9mIGJsb2JzL2NvbW1pdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjI4CiBtc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIFs8cmVwb3NpdG9yeT4gWzxyZWZzcGVjPi4uLl1dIgogbXNnc3RyICJnaXQgZmV0Y2ggWzzQvtC/0YbQuNC4Pl0gWzzRgNC10L/QvtC30LjRgtC+0YDQuNC5PiBbPNGB0L/QtdGG0LjRhNC40LrQsNGC0L7RgC3RgdGB0YvQu9C60Lg+4oCmXV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoyOAorIzogYnVpbHRpbi9mZXRjaC5jOjI5CiBtc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIDxncm91cD4iCiBtc2dzdHIgImdpdCBmZXRjaCBbPNC+0L/RhtC40Lg+XSA80LPRgNGD0L/Qv9CwPiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjI5CisjOiBidWlsdGluL2ZldGNoLmM6MzAKIG1zZ2lkICJnaXQgZmV0Y2ggLS1tdWx0aXBsZSBbPG9wdGlvbnM+XSBbKDxyZXBvc2l0b3J5PiB8IDxncm91cD4pLi4uXSIKIG1zZ3N0ciAiZ2l0IGZldGNoIC0tbXVsdGlwbGUgWzzQvtC/0YbQuNC4Pl0gWyg80YDQtdC/0L7Qt9C40YLQvtGA0LjQuT4gfCA80LPRgNGD0L/Qv9CwPinigKZdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzozMQogbXNnaWQgImdpdCBmZXRjaCAtLWFsbCBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IGZldGNoIC0tYWxsIFs80L7Qv9GG0LjQuD5dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTEyIGJ1aWx0aW4vcHVsbC5jOjE5MworIzogYnVpbHRpbi9mZXRjaC5jOjExNSBidWlsdGluL3B1bGwuYzoyMDIKIG1zZ2lkICJmZXRjaCBmcm9tIGFsbCByZW1vdGVzIgogbXNnc3RyICLQuNC30LLQu9C10YfRjCDRgdC+INCy0YHQtdGFINCy0L3QtdGI0L3QuNGFINGA0LXQv9C+0LfQuNGC0L7RgNC40LXQsiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExNCBidWlsdGluL3B1bGwuYzoxOTYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTcgYnVpbHRpbi9wdWxsLmM6MjA1CiBtc2dpZCAiYXBwZW5kIHRvIC5naXQvRkVUQ0hfSEVBRCBpbnN0ZWFkIG9mIG92ZXJ3cml0aW5nIgogbXNnc3RyICLQtNC+0L/QuNGB0LDRgtGMINC6IC5naXQvRkVUQ0hfSEVBRCDQstC80LXRgdGC0L4g0L/QtdGA0LXQt9Cw0L/QuNGB0LgiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTYgYnVpbHRpbi9wdWxsLmM6MTk5CisjOiBidWlsdGluL2ZldGNoLmM6MTE5IGJ1aWx0aW4vcHVsbC5jOjIwOAogbXNnaWQgInBhdGggdG8gdXBsb2FkIHBhY2sgb24gcmVtb3RlIGVuZCIKIG1zZ3N0ciAi0L/Rg9GC0Ywg0Log0L/RgNC+0LPRgNCw0LzQvNC1INGD0L/QsNC60L7QstC60Lgg0L/QsNC60LXRgtCwINC90LAg0LzQsNGI0LjQvdC1INGBINCy0L3QtdGI0L3QuNC8INGA0LXQv9C+0LfQuNGC0L7RgNC40LXQvCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExNyBidWlsdGluL3B1bGwuYzoyMDEKLW1zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgbG9jYWwgYnJhbmNoIgotbXNnc3RyICLQv9GA0LjQvdGD0LTQuNGC0LXQu9GM0L3QsNGPINC/0LXRgNC10LfQsNC/0LjRgdGMINC70L7QutCw0LvRjNC90L7QuSDQstC10YLQutC4IgorIzogYnVpbHRpbi9mZXRjaC5jOjEyMAorbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBsb2NhbCByZWZlcmVuY2UiCittc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExOQorIzogYnVpbHRpbi9mZXRjaC5jOjEyMgogbXNnaWQgImZldGNoIGZyb20gbXVsdGlwbGUgcmVtb3RlcyIKIG1zZ3N0ciAi0LjQt9Cy0LvQtdGH0Ywg0YEg0L3QtdGB0LrQvtC70YzQutC40YUg0LLQvdC10YjQvdC40YUg0YDQtdC/0L7Qt9C40YLQvtGA0LjQtdCyIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTIxIGJ1aWx0aW4vcHVsbC5jOjIwMworIzogYnVpbHRpbi9mZXRjaC5jOjEyNCBidWlsdGluL3B1bGwuYzoyMTIKIG1zZ2lkICJmZXRjaCBhbGwgdGFncyBhbmQgYXNzb2NpYXRlZCBvYmplY3RzIgogbXNnc3RyICLQuNC30LLQu9C10YfRjCDQstGB0LUg0LzQtdGC0LrQuCDQuCDRgdCy0Y/Qt9Cw0L3QvdGL0LUg0L7QsdGK0LXQutGC0YsiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMjMKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMjYKIG1zZ2lkICJkbyBub3QgZmV0Y2ggYWxsIHRhZ3MgKC0tbm8tdGFncykiCiBtc2dzdHIgItC90LUg0LjQt9Cy0LvQtdC60LDRgtGMINCy0YHQtSDQvNC10YLQutC4ICgtLW5vLXRhZ3MpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI1CisjOiBidWlsdGluL2ZldGNoLmM6MTI4CiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgZmV0Y2hlZCBpbiBwYXJhbGxlbCIKIG1zZ3N0ciAi0LrQvtC70LjRh9C10YHRgtCy0L4g0L/QvtC00LzQvtC00YPQu9C10LksINC60L7RgtC+0YDRi9C1INCx0YPQtNGD0YIg0YHQutCw0YfQsNC90Ysg0L/QsNGA0YDQsNC70LXQu9GM0L3QviIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyNyBidWlsdGluL3B1bGwuYzoyMDYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMzAgYnVpbHRpbi9wdWxsLmM6MjE1CiBtc2dpZCAicHJ1bmUgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIG5vIGxvbmdlciBvbiByZW1vdGUiCiBtc2dzdHIgItC/0L7Rh9C40YHRgtC40YLRjCDQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvQtSDQstC90LXRiNC90LjQtSDQstC10YLQutC4LCDQutC+0YLQvtGA0YvRhSDRg9C20LUg0L3QtdGCINC90LAg0LLQvdC10YjQvdC10Lwg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyOQorIzogYnVpbHRpbi9mZXRjaC5jOjEzMgogbXNnaWQgInBydW5lIGxvY2FsIHRhZ3Mgbm8gbG9uZ2VyIG9uIHJlbW90ZSBhbmQgY2xvYmJlciBjaGFuZ2VkIHRhZ3MiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzMCBidWlsdGluL2ZldGNoLmM6MTUzIGJ1aWx0aW4vcHVsbC5jOjEzMQorIzogYnVpbHRpbi9mZXRjaC5jOjEzMyBidWlsdGluL2ZldGNoLmM6MTU2IGJ1aWx0aW4vcHVsbC5jOjEzOQogbXNnaWQgIm9uLWRlbWFuZCIKIG1zZ3N0ciAi0L/QviDRgtGA0LXQsdC+0LLQsNC90LjRjiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzMQorIzogYnVpbHRpbi9mZXRjaC5jOjEzNAogbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMiCiBtc2dzdHIgItGD0L/RgNCw0LLQu9C10L3QuNC1INGA0LXQutGD0YDRgdC40LLQvdGL0Lwg0LjQt9Cy0LvQtdGH0LXQvdC40LXQvCDQv9C+0LTQvNC+0LTRg9C70LXQuSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzNSBidWlsdGluL3B1bGwuYzoyMTQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMzggYnVpbHRpbi9wdWxsLmM6MjIzCiBtc2dpZCAia2VlcCBkb3dubG9hZGVkIHBhY2siCiBtc2dzdHIgItC+0YHRgtCw0LLQuNGC0Ywg0LfQsNCz0YDRg9C20LXQvdC90YvQuSDQv9Cw0LrQtdGCINC00LDQvdC90YvRhSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzNworIzogYnVpbHRpbi9mZXRjaC5jOjE0MAogbXNnaWQgImFsbG93IHVwZGF0aW5nIG9mIEhFQUQgcmVmIgogbXNnc3RyICLRgNCw0LfRgNC10YjQuNGC0Ywg0L7QsdC90L7QstC70LXQvdC40LUg0YHRgdGL0LvQutC4IEhFQUQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDAgYnVpbHRpbi9mZXRjaC5jOjE0NiBidWlsdGluL3B1bGwuYzoyMTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMgYnVpbHRpbi9mZXRjaC5jOjE0OSBidWlsdGluL3B1bGwuYzoyMjYKIG1zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IGNsb25lIgogbXNnc3RyICLRg9C70YPQs9GD0LHQuNGC0Ywg0LjRgdGC0L7RgNC40Y4g0YfQsNGB0YLQuNGH0L3QvtCz0L4g0LrQu9C+0L3QsCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0MgorIzogYnVpbHRpbi9mZXRjaC5jOjE0NQogbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgcmVwb3NpdG9yeSBiYXNlZCBvbiB0aW1lIgogbXNnc3RyICLRg9Cz0LvRg9Cx0LjRgtGMINC40YHRgtC+0YDQuNGOINGH0LDRgdGC0LjRh9C90L7Qs9C+INC60LvQvtC90LAg0L7RgdC90L7QstGL0LLQsNGP0YHRjCDQvdCwINCy0YDQtdC80LXQvdC4IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQ4IGJ1aWx0aW4vcHVsbC5jOjIyMAorIzogYnVpbHRpbi9mZXRjaC5jOjE1MSBidWlsdGluL3B1bGwuYzoyMjkKIG1zZ2lkICJjb252ZXJ0IHRvIGEgY29tcGxldGUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0L/RgNC10L7QsdGA0LDQt9C+0LLQsNGC0Ywg0LIg0L/QvtC70L3Ri9C5INGA0LXQv9C+0LfQuNGC0L7RgNC40LkiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTEKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQKIG1zZ2lkICJwcmVwZW5kIHRoaXMgdG8gc3VibW9kdWxlIHBhdGggb3V0cHV0IgogbXNnc3RyICLQv9GA0LjRgdC+0LXQtNC40L3Rj9GC0Ywg0Y3RgtC+INGB0L/QtdGA0LXQtNC4INC6INCy0YvQstC+0LTRgyDQv9GD0YLQtdC5INC/0L7QtNC80L7QtNGD0LvRjyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1NAorIzogYnVpbHRpbi9mZXRjaC5jOjE1NwogbXNnaWQgIiIKICJkZWZhdWx0IGZvciByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyAobG93ZXIgcHJpb3JpdHkgdGhhbiBjb25maWcgIgogImZpbGVzKSIKIG1zZ3N0ciAi0L3QsNGB0YLRgNC+0LjRgtGMINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINGA0LXQutGD0YDRgdC40LLQvdC+0LUg0LjQt9Cy0LvQtdGH0LXQvdC40LUg0L/QvtC00LzQvtC00YPQu9C10LkgKNCx0L7Qu9C10LUg0L3QuNC30LrQuNC5INC/0YDQuNC+0YDQuNGC0LXRgiwg0YfQtdC8INGE0LDQudC70Ysg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC4KSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OCBidWlsdGluL3B1bGwuYzoyMjMKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjEgYnVpbHRpbi9wdWxsLmM6MjMyCiBtc2dpZCAiYWNjZXB0IHJlZnMgdGhhdCB1cGRhdGUgLmdpdC9zaGFsbG93IgogbXNnc3RyICLQv9GA0LjQvdC40LzQsNGC0Ywg0YHRgdGL0LvQutC4LCDQutC+0YLQvtGA0YvQtSDQvtCx0L3QvtCy0LvRj9GO0YIgLmdpdC9zaGFsbG93IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU5IGJ1aWx0aW4vcHVsbC5jOjIyNQorIzogYnVpbHRpbi9mZXRjaC5jOjE2MiBidWlsdGluL3B1bGwuYzoyMzQKIG1zZ2lkICJyZWZtYXAiCiBtc2dzdHIgItGB0L7QvtGC0LLQtdGC0YHRgtCy0LjQtS3RgdGB0YvQu9C+0LoiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjAgYnVpbHRpbi9wdWxsLmM6MjI2CisjOiBidWlsdGluL2ZldGNoLmM6MTYzIGJ1aWx0aW4vcHVsbC5jOjIzNQogbXNnaWQgInNwZWNpZnkgZmV0Y2ggcmVmbWFwIgogbXNnc3RyICLRg9C60LDQt9Cw0YLRjCDRgdC+0L7RgtCy0LXRgtGB0YLQstC40LUg0YHRgdGL0LvQvtC6INC/0YDQuCDQuNC30LLQu9C10YfQtdC90LjQuCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MSBidWlsdGluL2xzLXJlbW90ZS5jOjc3IGJ1aWx0aW4vcHVzaC5jOjU4MgotIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzIKLW1zZ2lkICJzZXJ2ZXItc3BlY2lmaWMiCi1tc2dzdHIgItC30LDQstC40YHQuNGCLdC+0YIt0YHQtdGA0LLQtdGA0LAiCi0KLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjEgYnVpbHRpbi9scy1yZW1vdGUuYzo3NyBidWlsdGluL3B1c2guYzo1ODIKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTczCi1tc2dpZCAib3B0aW9uIHRvIHRyYW5zbWl0IgotbXNnc3RyICLQv9C10YDQtdC00LDQstCw0LXQvNGL0LUg0L7Qv9GG0LjQuCIKLQotIzogYnVpbHRpbi9mZXRjaC5jOjE2NworIzogYnVpbHRpbi9mZXRjaC5jOjE3MAogbXNnaWQgInJlcG9ydCB0aGF0IHdlIGhhdmUgb25seSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHRoaXMgb2JqZWN0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo0MTgKKyM6IGJ1aWx0aW4vZmV0Y2guYzo0NjkKIG1zZ2lkICJDb3VsZG4ndCBmaW5kIHJlbW90ZSByZWYgSEVBRCIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INGB0YHRi9C70LrRgyBIRUFEINC90LAg0LLQvdC10YjQvdC10Lwg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjU1MgorIzogYnVpbHRpbi9mZXRjaC5jOjYwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb25maWd1cmF0aW9uIGZldGNoLm91dHB1dCBjb250YWlucyBpbnZhbGlkIHZhbHVlICVzIgogbXNnc3RyICLQvtC/0YbQuNGPIGZldGNoLm91dHB1dCDRgdC+0LTQtdGA0LbQuNGCINC90LXQv9GA0LDQstC40LvRjNC90L7QtSDQt9C90LDRh9C10L3QuNC1INC00LvRjyAlcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjY0NQorIzogYnVpbHRpbi9mZXRjaC5jOjcwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgJXMgbm90IGZvdW5kIgogbXNnc3RyICLQvtCx0YrQtdC60YIgJXMg0L3QtSDQvdCw0LnQtNC10L0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo2NDkKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3MDkKIG1zZ2lkICJbdXAgdG8gZGF0ZV0iCiBtc2dzdHIgIlvQsNC60YLRg9Cw0LvRjNC90L5dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NjYyIGJ1aWx0aW4vZmV0Y2guYzo3NDQKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3MjIgYnVpbHRpbi9mZXRjaC5jOjczOCBidWlsdGluL2ZldGNoLmM6ODAxCiBtc2dpZCAiW3JlamVjdGVkXSIKIG1zZ3N0ciAiW9C+0YLQutC70L7QvdC10L3Qvl0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo2NjMKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3MjMKIG1zZ2lkICJjYW4ndCBmZXRjaCBpbiBjdXJyZW50IGJyYW5jaCIKIG1zZ3N0ciAi0L3QtdC70YzQt9GPINC40LfQstC70LXRh9GMINGC0LXQutGD0YnRg9GOINCy0LXRgtC60YMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo2NzIKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3MzMKIG1zZ2lkICJbdGFnIHVwZGF0ZV0iCiBtc2dzdHIgIlvQvtCx0L3QvtCy0LvQtdC90LjQtSDQvNC10YLQutC4XSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjY3MyBidWlsdGluL2ZldGNoLmM6NzA4IGJ1aWx0aW4vZmV0Y2guYzo3MjQKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MzkKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3MzQgYnVpbHRpbi9mZXRjaC5jOjc3MSBidWlsdGluL2ZldGNoLmM6Nzg0CisjOiBidWlsdGluL2ZldGNoLmM6Nzk2CiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBsb2NhbCByZWYiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7QsdC90L7QstC40YLRjCDQu9C+0LrQsNC70YzQvdGD0Y4g0YHRgdGL0LvQutGDIgogCi0jOiBidWlsdGluL2ZldGNoLmM6Njk0CisjOiBidWlsdGluL2ZldGNoLmM6NzM4Cittc2dpZCAid291bGQgY2xvYmJlciBleGlzdGluZyB0YWciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjc2MAogbXNnaWQgIltuZXcgdGFnXSIKIG1zZ3N0ciAiW9C90L7QstCw0Y8g0LzQtdGC0LrQsF0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo2OTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NjMKIG1zZ2lkICJbbmV3IGJyYW5jaF0iCiBtc2dzdHIgIlvQvdC+0LLQsNGPINCy0LXRgtC60LBdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzAwCisjOiBidWlsdGluL2ZldGNoLmM6NzY2CiBtc2dpZCAiW25ldyByZWZdIgogbXNnc3RyICJb0L3QvtCy0LDRjyDRgdGB0YvQu9C60LBdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzM5CisjOiBidWlsdGluL2ZldGNoLmM6Nzk2CiBtc2dpZCAiZm9yY2VkIHVwZGF0ZSIKIG1zZ3N0ciAi0L/RgNC40L3Rg9C00LjRgtC10LvRjNC90L7QtSDQvtCx0L3QvtCy0LvQtdC90LjQtSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjc0NAorIzogYnVpbHRpbi9mZXRjaC5jOjgwMQogbXNnaWQgIm5vbi1mYXN0LWZvcndhcmQiCiBtc2dzdHIgItCx0LXQtyDQv9C10YDQtdC80L7RgtC60Lgg0LLQv9C10YDQtdC0IgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzkwCisjOiBidWlsdGluL2ZldGNoLmM6ODQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRpZCBub3Qgc2VuZCBhbGwgbmVjZXNzYXJ5IG9iamVjdHNcbiIKIG1zZ3N0ciAiJXMg0L3QtSDQvtGC0L/RgNCw0LLQuNC7INCy0YHQtSDQvdC10L7QsdGF0L7QtNC40LzRi9C1INC+0LHRitC10LrRgtGLXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4MTEKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVqZWN0ICVzIGJlY2F1c2Ugc2hhbGxvdyByb290cyBhcmUgbm90IGFsbG93ZWQgdG8gYmUgdXBkYXRlZCIKIG1zZ3N0ciAiJXMg0L7RgtC60LvQvtC90LXQvdC+INC40Lct0LfQsCDRgtC+0LPQviwg0YfRgtC+INGH0LDRgdGC0LjRh9C90YvQtSDQutC+0YDQvdC4INC90LUg0YDQsNC30YDQtdGI0LXQvdC+INC+0LHQvdC+0LLQu9GP0YLRjCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjkwMCBidWlsdGluL2ZldGNoLmM6MTAxMQorIzogYnVpbHRpbi9mZXRjaC5jOjk1OSBidWlsdGluL2ZldGNoLmM6MTA4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGcm9tICUuKnNcbiIKIG1zZ3N0ciAi0JjQtyAlLipzXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo5MTEKKyM6IGJ1aWx0aW4vZmV0Y2guYzo5NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInNvbWUgbG9jYWwgcmVmcyBjb3VsZCBub3QgYmUgdXBkYXRlZDsgdHJ5IHJ1bm5pbmdcbiIKICIgJ2dpdCByZW1vdGUgcHJ1bmUgJXMnIHRvIHJlbW92ZSBhbnkgb2xkLCBjb25mbGljdGluZyBicmFuY2hlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtCx0L3QvtCy0LjRgtGMINC90LXQutC+0YLQvtGA0YvQtSDQu9C+0LrQsNC70YzQvdGL0LUg0YHRgdGL0LvQutC4OyDQv9C+0L/RgNC+0LHRg9C50YLQtSDQt9Cw0L/Rg9GB0YLQuNGC0YwgwqtnaXQgcmVtb3RlIHBydW5lICVzwrssINGH0YLQvtCx0Ysg0L/QvtGH0LjRgdGC0LjRgtGMINGB0YLQsNGA0YvQtSwg0LrQvtC90YTQu9C40LrRgtGD0Y7RidC40LUg0LLQtdGC0LrQuCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjk4MQorIzogYnVpbHRpbi9mZXRjaC5jOjEwNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgKCVzIHdpbGwgYmVjb21lIGRhbmdsaW5nKSIKIG1zZ3N0ciAiICAgKCVzINCx0YPQtNC10YIg0LLQuNGB0Y/RidC10Lkg0LLQtdGC0LrQvtC5KSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjk4MgorIzogYnVpbHRpbi9mZXRjaC5jOjEwNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgKCVzIGhhcyBiZWNvbWUgZGFuZ2xpbmcpIgogbXNnc3RyICIgICAoJXMg0YHRgtCw0LvQsCDQstC40YHRj9GJ0LXQuSDQstC10YLQutC+0LkpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTAxNAorIzogYnVpbHRpbi9mZXRjaC5jOjEwODQKIG1zZ2lkICJbZGVsZXRlZF0iCiBtc2dzdHIgIlvRg9C00LDQu9C10L3Qvl0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMDE1IGJ1aWx0aW4vcmVtb3RlLmM6MTAzNQorIzogYnVpbHRpbi9mZXRjaC5jOjEwODUgYnVpbHRpbi9yZW1vdGUuYzoxMDM2CiBtc2dpZCAiKG5vbmUpIgogbXNnc3RyICIo0L3QtdGCKSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwMzgKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIGZldGNoIGludG8gY3VycmVudCBicmFuY2ggJXMgb2Ygbm9uLWJhcmUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0J7RgtC60LDQtyDQv9C+0LvRg9GH0LXQvdC40Y8g0LIg0YLQtdC60YPRidGD0Y4g0LLQtdGC0LrRgyAlcyDQvdC1INCz0L7Qu9C+0LPQviDRgNC10L/QvtC30LjRgtC+0YDQuNGPIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA1NworIzogYnVpbHRpbi9mZXRjaC5jOjExMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiT3B0aW9uIFwiJXNcIiB2YWx1ZSBcIiVzXCIgaXMgbm90IHZhbGlkIGZvciAlcyIKIG1zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9GM0L3QvtC1INC30L3QsNGH0LXQvdC40LUgwqslMiRzwrsg0LTQu9GPINC/0LDRgNCw0LzQtdGC0YDQsCDCqyUxJHPCuyDQtNC70Y8gJTMkcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwNjAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9wdGlvbiBcIiVzXCIgaXMgaWdub3JlZCBmb3IgJXNcbiIKIG1zZ3N0ciAi0J/QsNGA0LDQvNC10YLRgCDCqyVzwrsg0LjQs9C90L7RgNC40YDRg9C10YLRgdGPINC00LvRjyAlc1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMzOQorIzogYnVpbHRpbi9mZXRjaC5jOjE0MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmV0Y2hpbmcgJXNcbiIKIG1zZ3N0ciAi0JjQt9Cy0LvQtdGH0LXQvdC40LUg0LjQtyAlc1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTM0MSBidWlsdGluL3JlbW90ZS5jOjk5CisjOiBidWlsdGluL2ZldGNoLmM6MTQzNiBidWlsdGluL3JlbW90ZS5jOjEwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmV0Y2ggJXMiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LjQt9Cy0LvQtdGH0YwgJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzg3IGJ1aWx0aW4vZmV0Y2guYzoxNTU1CisjOiBidWlsdGluL2ZldGNoLmM6MTQ4MgogbXNnaWQgIiIKLSItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdpdGggdGhlIHJlbW90ZSBjb25maWd1cmVkIGluIGNvcmUucGFydGlhbENsb25lIgorIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gIgorImV4dGVuc2lvbnMucGFydGlhbENsb25lIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDEwCisjOiBidWlsdGluL2ZldGNoLmM6MTUwNgogbXNnaWQgIiIKICJObyByZW1vdGUgcmVwb3NpdG9yeSBzcGVjaWZpZWQuICBQbGVhc2UsIHNwZWNpZnkgZWl0aGVyIGEgVVJMIG9yIGFcbiIKICJyZW1vdGUgbmFtZSBmcm9tIHdoaWNoIG5ldyByZXZpc2lvbnMgc2hvdWxkIGJlIGZldGNoZWQuIgogbXNnc3RyICLQndC1INGD0LrQsNC30LDQvSDQstC90LXRiNC90LjQuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5LiDQo9C60LDQttC40YLQtSBVUkwg0LjQu9C4INC40LzRjyDQstC90LXRiNC90LXQs9C+INGA0LXQv9C+0LfQuNGC0L7RgNC40Y8g0LjQtyDQutC+0YLQvtGA0L7Qs9C+INC00L7Qu9C20L3RiyDQuNC30LLQu9C10LrQsNGC0YzRgdGPINC90L7QstGL0LUg0YDQtdC00LDQutGG0LjQuC4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDQ3CisjOiBidWlsdGluL2ZldGNoLmM6MTU0MwogbXNnaWQgIllvdSBuZWVkIHRvIHNwZWNpZnkgYSB0YWcgbmFtZS4iCiBtc2dzdHIgItCS0LDQvCDQvdGD0LbQvdC+INGD0LrQsNC30LDRgtGMINC40LzRjyDQvNC10YLQutC4LiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0OTYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTk0CiBtc2dpZCAiTmVnYXRpdmUgZGVwdGggaW4gLS1kZWVwZW4gaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAi0J7RgtGA0LjRhtCw0YLQtdC70YzQvdCw0Y8g0LPRgNGD0LHQuNC90LAg0LTQu9GPIC0tZGVlcGVuINC90LUg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGC0YHRjyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0OTgKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTk2CiBtc2dpZCAiLS1kZWVwZW4gYW5kIC0tZGVwdGggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLS1kZWVwZW4g0LggLS1kZXB0aCDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0LTQvdC+0LLRgNC10LzQtdC90L3QviIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1MDMKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjAxCiBtc2dpZCAiLS1kZXB0aCBhbmQgLS11bnNoYWxsb3cgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIiCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+IC0tZGVwdGgg0LggLS11bnNoYWxsb3ciCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTA1CisjOiBidWlsdGluL2ZldGNoLmM6MTYwMwogbXNnaWQgIi0tdW5zaGFsbG93IG9uIGEgY29tcGxldGUgcmVwb3NpdG9yeSBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLXVuc2hhbGxvdyDQvdC1INC40LzQtdC10YIg0YHQvNGL0YHQu9CwINC90LAg0L/QvtC70L3QvtC8INGA0LXQv9C+0LfQuNGC0L7RgNC40LgiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTIxCisjOiBidWlsdGluL2ZldGNoLmM6MTYxOQogbXNnaWQgImZldGNoIC0tYWxsIGRvZXMgbm90IHRha2UgYSByZXBvc2l0b3J5IGFyZ3VtZW50IgogbXNnc3RyICJmZXRjaCAtLWFsbCDQvdC1INC/0YDQuNC90LjQvNCw0LXRgiDQuNC80Y8g0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyDQutCw0Log0LDRgNCz0YPQvNC10L3RgiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1MjMKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjIxCiBtc2dpZCAiZmV0Y2ggLS1hbGwgZG9lcyBub3QgbWFrZSBzZW5zZSB3aXRoIHJlZnNwZWNzIgogbXNnc3RyICJmZXRjaCAtLWFsbCDQvdC1INC40LzQtdC10YIg0YHQvNGL0YHQu9CwINC/0YDQuCDRg9C60LDQt9Cw0L3QuNC4INGB0L/QtdGG0LjRhNC40LrQsNGC0L7RgNC+0LIg0YHRgdGL0LvQvtC6IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTUzMgorIzogYnVpbHRpbi9mZXRjaC5jOjE2MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZW1vdGUgb3IgcmVtb3RlIGdyb3VwOiAlcyIKIG1zZ3N0ciAi0J3QtdGCINGC0LDQutC+0LPQviDQstC90LXRiNC90LXQs9C+INGA0LXQv9C+0LfQuNGC0L7RgNC40Y8g0LjQu9C4INCz0YDRg9C/0L/RizogJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTM5CisjOiBidWlsdGluL2ZldGNoLmM6MTYzNwogbXNnaWQgIkZldGNoaW5nIGEgZ3JvdXAgYW5kIHNwZWNpZnlpbmcgcmVmc3BlY3MgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAi0J/QvtC70YPRh9C10L3QuNC1INCz0YDRg9C/0L/RiyDQuCDRg9C60LDQt9Cw0L3QuNC1INGB0L/QtdGG0LjRhNC40LrQsNGG0LjQuSDRgdGB0YvQu9C+0Log0L3QtSDQuNC80LXQtdGCINGB0LzRi9GB0LvQsCIKIAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6MTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjUzCittc2dpZCAiIgorIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gIgorImV4dGVuc2lvbnMucGFydGlhbGNsb25lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjE4CiBtc2dpZCAiIgogImdpdCBmbXQtbWVyZ2UtbXNnIFstbSA8bWVzc2FnZT5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlIDxmaWxlPl0iCiBtc2dzdHIgImdpdCBmbXQtbWVyZ2UtbXNnIFstbSA80YHQvtC+0LHRidC10L3QuNC1Pl0gWy0tbG9nWz08bj5dIHwgLS1uby1sb2ddIFstLWZpbGUgPNGE0LDQudC7Pl0iCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcyCiBtc2dpZCAicG9wdWxhdGUgbG9nIHdpdGggYXQgbW9zdCA8bj4gZW50cmllcyBmcm9tIHNob3J0bG9nIgogbXNnc3RyICLQvtGC0L/RgNCw0LLQuNGC0Ywg0LIg0LbRg9GA0L3QsNC7IDxuPiDQt9Cw0L/QuNGB0LXQuSDQuNC3INC60L7RgNC+0YLQutC+0LPQviDQttGD0YDQvdCw0LvQsCIKIAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc0CisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzUKIG1zZ2lkICJhbGlhcyBmb3IgLS1sb2cgKGRlcHJlY2F0ZWQpIgogbXNnc3RyICLRgdC+0LrRgNCw0YnQtdC90LjQtSDQtNC70Y8gLS1sb2cgKNGD0YHRgtCw0YDQtdCy0YjQtdC1KSIKIAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc3CisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzgKIG1zZ2lkICJ0ZXh0IgogbXNnc3RyICLRgtC10LrRgdGCIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzgKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQogbXNnaWQgInVzZSA8dGV4dD4gYXMgc3RhcnQgb2YgbWVzc2FnZSIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIDzRgtC10LrRgdGCPiDQutCw0Log0L3QsNGH0LDQu9GM0L3QvtC1INGB0L7QvtCx0YnQtdC90LjQtSIKIAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc5CisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2ODAKIG1zZ2lkICJmaWxlIHRvIHJlYWQgZnJvbSIKIG1zZ3N0ciAi0YTQsNC50Lsg0LTQu9GPINGH0YLQtdC90LjRjyIKIApAQCAtOTk1OSw5MCArMTE4NTQsMjcxIEBACiBtc2dpZCAic2hvdyBvbmx5IDxuPiBtYXRjaGVkIHJlZnMiCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0YLQvtC70YzQutC+IDxuPiDRgdC+0LLQv9Cw0LTQsNGO0YnQuNGFINGB0YHRi9C70L7QuiIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOSBidWlsdGluL3RhZy5jOjQyMgorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOSBidWlsdGluL3RhZy5jOjQzMwogbXNnaWQgInJlc3BlY3QgZm9ybWF0IGNvbG9ycyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGG0LLQtdGC0LAg0LjQtyDRhNC+0YDQvNCw0YLQsCIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MgogbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBwb2ludHMgYXQgdGhlIGdpdmVuIG9iamVjdCIKIG1zZ3N0ciAi0LLRi9Cy0L7QtCDRgtC+0LvRjNC60L4g0YHRgdGL0LvQvtC6LCDQutC+0YLQvtGA0YvQtSDRg9C60LDQt9GL0LLQsNGO0YIg0L3QsCDQv9C10YDQtdC00LDQvdC90YvQuSDQvtCx0YrQtdC60YIiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDUKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDQKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgdGhhdCBhcmUgbWVyZ2VkIgogbXNnc3RyICLQstGL0LLQvtC0INGC0L7Qu9GM0LrQviDRgdC70LjRgtGL0YUg0YHRgdGL0LvQvtC6IgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ2CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ1CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCiBtc2dzdHIgItCy0YvQstC+0LQg0YLQvtC70YzQutC+INC90LUg0YHQu9C40YLRi9GFINGB0YHRi9C70L7QuiIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NgogbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgItCy0YvQstC+0LQg0YLQvtC70YzQutC+INGB0YHRi9C70L7Quiwg0LrQvtGC0L7RgNGL0LUg0YHQvtC00LXRgNC20LDRgiDQutC+0LzQvNC40YIiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDgKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDcKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICLQstGL0LLQvtC0INGC0L7Qu9GM0LrQviDRgdGB0YvQu9C+0LosINC60L7RgtC+0YDRi9C1INC90LUg0YHQvtC00LXRgNC20LDRgiDQutC+0LzQvNC40YIiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjU3NAorIzogYnVpbHRpbi9mc2NrLmM6ODggYnVpbHRpbi9mc2NrLmM6MTYwIGJ1aWx0aW4vZnNjay5jOjE2MQorbXNnaWQgInVua25vd24iCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gZXJyb3IgaW4gdHJlZSAwMWJmZGE6IDxtb3JlIGV4cGxhbmF0aW9uPgorIzogYnVpbHRpbi9mc2NrLmM6MTIwIGJ1aWx0aW4vZnNjay5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiAlcyAlczogJXMiCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gd2FybmluZyBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FybmluZyBpbiAlcyAlczogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6MTU3IGJ1aWx0aW4vZnNjay5jOjE1OQorIywgYy1mb3JtYXQKK21zZ2lkICJicm9rZW4gbGluayBmcm9tICU3cyAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzoxNjgKK21zZ2lkICJ3cm9uZyBvYmplY3QgdHlwZSBpbiBsaW5rIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYnJva2VuIGxpbmsgZnJvbSAlN3MgJXNcbiIKKyIgICAgICAgICAgICAgIHRvICU3cyAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzozMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWFjaGFibGUgJXMgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6MzQwCisjLCBjLWZvcm1hdAorbXNnaWQgImRhbmdsaW5nICVzICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjM0OQorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgbG9zdC1mb3VuZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCAnJXMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQutC+0L3Rh9C40YLRjCAnJXMnIgorCisjOiBidWlsdGluL2ZzY2suYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIGNvbm5lY3Rpdml0eSAoJWQgb2JqZWN0cykiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQzOAorbXNnaWQgImJyb2tlbiBsaW5rcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo0NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicm9vdCAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFnZ2VkICVzICVzICglcykgaW4gJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NDg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgY29ycnVwdCBvciBtaXNzaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjUwOQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCByZWZsb2cgZW50cnkgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIHJlZmxvZyAlcy0+JXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHNoYTEgcG9pbnRlciAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo1NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG5vdCBhIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo2MTkKK21zZ2lkICJub3RpY2U6IE5vIGRlZmF1bHQgcmVmZXJlbmNlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo2MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3Npbmc6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY0NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvdWxkIG5vdCBiZSBwYXJzZWQ6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY2NworIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgc2hhMSBmaWxlOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo2ODIKK21zZ2lkICJDaGVja2luZyBvYmplY3QgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY4NQogbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcmllcyIKIG1zZ3N0ciAi0J/RgNC+0LLQtdGA0LrQsCDQutCw0YLQsNC70L7Qs9C+0LIg0L7QsdGK0LXQutGC0L7QsiIKIAotIzogYnVpbHRpbi9mc2NrLmM6NjY2CisjOiBidWlsdGluL2ZzY2suYzo3MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgbGluayIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo3MDUgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgJXMiCittc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90YvQuSAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBvaW50cyB0byBzb21ldGhpbmcgc3RyYW5nZSAoJXMpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGV0YWNoZWQgSEVBRCBwb2ludHMgYXQgbm90aGluZyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2ZzY2suYzo3MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aWNlOiAlcyBwb2ludHMgdG8gYW4gdW5ib3JuIGJyYW5jaCAoJXMpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjczNAorbXNnaWQgIkNoZWNraW5nIGNhY2hlIHRyZWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NzM5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHNoYTEgcG9pbnRlciBpbiBjYWNoZS10cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc1MAorbXNnaWQgIm5vbi10cmVlIGluIGNhY2hlLXRyZWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9mc2NrLmM6NzgxCiBtc2dpZCAiZ2l0IGZzY2sgWzxvcHRpb25zPl0gWzxvYmplY3Q+Li4uXSIKIG1zZ3N0ciAiZ2l0IGZzY2sgWzzQvtC/0YbQuNC4Pl0gWzzQvtCx0YrQtdC60YI+4oCmXSIKIAotIzogYnVpbHRpbi9mc2NrLmM6NjcyCisjOiBidWlsdGluL2ZzY2suYzo3ODcKIG1zZ2lkICJzaG93IHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0L3QtdC00L7RgdGC0YPQv9C90YvQtSDQvtCx0YrQtdC60YLRiyIKIAotIzogYnVpbHRpbi9mc2NrLmM6NjczCisjOiBidWlsdGluL2ZzY2suYzo3ODgKIG1zZ2lkICJzaG93IGRhbmdsaW5nIG9iamVjdHMiCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0L7QsdGK0LXQutGC0YssINC90LAg0LrQvtGC0L7RgNGL0LUg0L3QtdGCINGB0YHRi9C70L7QuiIKIAotIzogYnVpbHRpbi9mc2NrLmM6Njc0CisjOiBidWlsdGluL2ZzY2suYzo3ODkKIG1zZ2lkICJyZXBvcnQgdGFncyIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0L7RgtGH0LXRgiDQv9C+INC80LXRgtC60LDQvCIKIAotIzogYnVpbHRpbi9mc2NrLmM6Njc1CisjOiBidWlsdGluL2ZzY2suYzo3OTAKIG1zZ2lkICJyZXBvcnQgcm9vdCBub2RlcyIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0L7RgtGH0LXRgiDQv9C+INC60L7RgNC90LXQstGL0Lwg0YPQt9C70LDQvCIKIAotIzogYnVpbHRpbi9mc2NrLmM6Njc2CisjOiBidWlsdGluL2ZzY2suYzo3OTEKIG1zZ2lkICJtYWtlIGluZGV4IG9iamVjdHMgaGVhZCBub2RlcyIKIG1zZ3N0ciAi0LLQvtGB0L/RgNC40L3QuNC80LDRgtGMINC+0LHRitC10LrRgtGLINCyINC40L3QtNC10LrRgdC1INC60LDQuiDQutC+0YDQvdC10LLRi9C1INGD0LfQu9GLIgogCi0jOiBidWlsdGluL2ZzY2suYzo2NzcKKyM6IGJ1aWx0aW4vZnNjay5jOjc5MgogbXNnaWQgIm1ha2UgcmVmbG9ncyBoZWFkIG5vZGVzIChkZWZhdWx0KSIKIG1zZ3N0ciAi0YHQvtC30LTQsNGC0Ywg0LrQvtGA0L3QtdCy0YvQtSDRg9C30LvRiyDQttGD0YDQvdCw0LvQvtCyINGB0YHRi9C70L7QuiAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4pIgogCi0jOiBidWlsdGluL2ZzY2suYzo2NzgKKyM6IGJ1aWx0aW4vZnNjay5jOjc5MwogbXNnaWQgImFsc28gY29uc2lkZXIgcGFja3MgYW5kIGFsdGVybmF0ZSBvYmplY3RzIgogbXNnc3RyICLRgtCw0LrQttC1INC/0YDQvtCy0LXRgNGP0YLRjCDQv9Cw0LrQtdGC0Ysg0Lgg0LDQu9GM0YLQtdGA0L3QsNGC0LjQstC90YvQtSDQvtCx0YrQtdC60YLRiyIKIAotIzogYnVpbHRpbi9mc2NrLmM6Njc5CisjOiBidWlsdGluL2ZzY2suYzo3OTQKIG1zZ2lkICJjaGVjayBvbmx5IGNvbm5lY3Rpdml0eSIKIG1zZ3N0ciAi0YLQvtC70YzQutC+INC/0YDQvtCy0LXRgNC40YLRjCDRgdC+0LXQtNC40L3QtdC90LjQtSIKIAotIzogYnVpbHRpbi9mc2NrLmM6NjgwCisjOiBidWlsdGluL2ZzY2suYzo3OTUKIG1zZ2lkICJlbmFibGUgbW9yZSBzdHJpY3QgY2hlY2tpbmciCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQsdC+0LvQtdC1INGB0YLRgNC+0LPRg9GOINC/0YDQvtCy0LXRgNC60YMiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjY4MgorIzogYnVpbHRpbi9mc2NrLmM6Nzk3CiBtc2dpZCAid3JpdGUgZGFuZ2xpbmcgb2JqZWN0cyBpbiAuZ2l0L2xvc3QtZm91bmQiCiBtc2dzdHIgItC30LDQv9C40YHQsNGC0Ywg0L7QsdGK0LXQutGC0Ysg0L3QsCDQutC+0YLQvtGA0YvQtSDQvdC10YIg0YHRgdGL0LvQvtC6INCyIC5naXQvbG9zdC1mb3VuZCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NjgzIGJ1aWx0aW4vcHJ1bmUuYzoxMTAKKyM6IGJ1aWx0aW4vZnNjay5jOjc5OCBidWlsdGluL3BydW5lLmM6MTMyCiBtc2dpZCAic2hvdyBwcm9ncmVzcyIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDQv9GA0L7Qs9GA0LXRgdGBINCy0YvQv9C+0LvQvdC10L3QuNGPIgogCi0jOiBidWlsdGluL2ZzY2suYzo2ODQKKyM6IGJ1aWx0aW4vZnNjay5jOjc5OQogbXNnaWQgInNob3cgdmVyYm9zZSBuYW1lcyBmb3IgcmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0L/QvtC00YDQvtCx0L3Ri9C1INC40LzQtdC90LAg0LTQu9GPINC90LXQtNC+0YHRgtGD0L/QvdGL0YUg0L7QsdGK0LXQutGC0L7QsiIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzUwCisjOiBidWlsdGluL2ZzY2suYzo4NTkgYnVpbHRpbi9pbmRleC1wYWNrLmM6MjI0CiBtc2dpZCAiQ2hlY2tpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi0J/RgNC+0LLQtdGA0LrQsCDQvtCx0YrQtdC60YLQvtCyIgogCisjOiBidWlsdGluL2ZzY2suYzo4ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBtaXNzaW5nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjg5OQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhcmFtZXRlcjogZXhwZWN0ZWQgc2hhMSwgZ290ICclcyciCittc2dzdHIgIiIKKwogIzogYnVpbHRpbi9nYy5jOjM0CiBtc2dpZCAiZ2l0IGdjIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgZ2MgWzzQvtC/0YbQuNC4Pl0iCkBAIC0xMDA1MiwxMiArMTIxMjgsMjIgQEAKIG1zZ2lkICJGYWlsZWQgdG8gZnN0YXQgJXM6ICVzIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBmc3RhdCAlczogJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo0NTUKKyM6IGJ1aWx0aW4vZ2MuYzoxMjYKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ2FuJ3Qgc3RhdCAlcyIKLW1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0Ywgc3RhdCDQtNC70Y8gJXMiCittc2dpZCAiZmFpbGVkIHRvIHBhcnNlICclcycgdmFsdWUgJyVzJyIKK21zZ3N0ciAiIgogCi0jOiBidWlsdGluL2djLmM6NDY0CisjOiBidWlsdGluL2djLmM6NDc2IGJ1aWx0aW4vaW5pdC1kYi5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0ICclcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHN0YXQg0LTQu9GPIMKrJXPCuyIKKworIzogYnVpbHRpbi9nYy5jOjQ4NSBidWlsdGluL25vdGVzLmM6MjQwIGJ1aWx0aW4vdGFnLmM6NTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICclcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMIMKrJXPCuyIKKworIzogYnVpbHRpbi9nYy5jOjQ5MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGxhc3QgZ2MgcnVuIHJlcG9ydGVkIHRoZSBmb2xsb3dpbmcuIFBsZWFzZSBjb3JyZWN0IHRoZSByb290IGNhdXNlXG4iCkBAIC0xMDA2Nyw3MyArMTIxNTMsNzMgQEAKICIlcyIKIG1zZ3N0ciAi0J/QvtGB0LvQtdC00L3QuNC5INC30LDQv9GD0YHQuiBnYyDRgdC+0L7QsdGJ0LjQuyDRgdC70LXQtNGD0Y7RidC10LUuINCf0L7QttCw0LvRg9C50YHRgtCwLCDQuNGB0L/RgNCw0LLRjNGC0LUg0L7RiNC40LHQutGDINC4INGD0LTQsNC70LjRgtC1ICVzLlxu0JDQstGC0L7QvNCw0YLQuNGH0LXRgdC60LDRjyDQvtGH0LjRgdGC0LrQsCDRgNC10L/QvtC30LjRgtC+0YDQuNGPINC90LUg0LHRg9C00LXRgiDQv9GA0L7QuNC30LLQvtC00LjRgtGM0YHRjywg0L/QvtC60LAg0Y3RgtC+0YIg0YTQsNC50Lsg0L3QtSDRg9C00LDQu9GR0L0uXG5cbiVzIgogCi0jOiBidWlsdGluL2djLmM6NTA1CisjOiBidWlsdGluL2djLmM6NTQwCiBtc2dpZCAicHJ1bmUgdW5yZWZlcmVuY2VkIG9iamVjdHMiCiBtc2dzdHIgItC/0L7Rh9C40YHRgtC40YLRjCDQvtCx0YrQtdC60YLRiywg0L3QsCDQutC+0YLQvtGA0YvQtSDQvdC10YIg0YHRgdGL0LvQvtC6IgogCi0jOiBidWlsdGluL2djLmM6NTA3CisjOiBidWlsdGluL2djLmM6NTQyCiBtc2dpZCAiYmUgbW9yZSB0aG9yb3VnaCAoaW5jcmVhc2VkIHJ1bnRpbWUpIgogbXNnc3RyICLQv9GA0L7QstC10YDRj9GC0Ywg0LHQvtC70LXQtSDQstC90LjQvNCw0YLQtdC70YzQvdC+ICjQt9Cw0L3QuNC80LDQtdGCINCx0L7Qu9GM0YjQtSDQstGA0LXQvNC10L3QuCkiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1MDgKKyM6IGJ1aWx0aW4vZ2MuYzo1NDMKIG1zZ2lkICJlbmFibGUgYXV0by1nYyBtb2RlIgogbXNnc3RyICLQstC60LvRjtGH0LjRgtGMINGA0LXQttC40LwgYXV0by1nYyIKIAotIzogYnVpbHRpbi9nYy5jOjUxMQorIzogYnVpbHRpbi9nYy5jOjU0NgogbXNnaWQgImZvcmNlIHJ1bm5pbmcgZ2MgZXZlbiBpZiB0aGVyZSBtYXkgYmUgYW5vdGhlciBnYyBydW5uaW5nIgogbXNnc3RyICLQv9GA0LjQvdGD0LTQuNGC0LXQu9GM0L3QviDQt9Cw0L/Rg9GB0YLQuNGC0YwgZ2MsINC00LDQttC1INC10YHRgtGMINC00YDRg9Cz0LDRjyDQutC+0L/QuNGPIGdjINGD0LbQtSDQt9Cw0L/Rg9GJ0LXQvdCwIgogCi0jOiBidWlsdGluL2djLmM6NTE0CisjOiBidWlsdGluL2djLmM6NTQ5CiBtc2dpZCAicmVwYWNrIGFsbCBvdGhlciBwYWNrcyBleGNlcHQgdGhlIGxhcmdlc3QgcGFjayIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2djLmM6NTMxCisjOiBidWlsdGluL2djLmM6NTY2CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwYXJzZSBnYy5sb2dleHBpcnkgdmFsdWUgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9nYy5jOjU0MgorIzogYnVpbHRpbi9nYy5jOjU3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcGFyc2UgcHJ1bmUgZXhwaXJ5IHZhbHVlICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NjIKKyM6IGJ1aWx0aW4vZ2MuYzo1OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0byBwYWNraW5nIHRoZSByZXBvc2l0b3J5IGluIGJhY2tncm91bmQgZm9yIG9wdGltdW0gcGVyZm9ybWFuY2UuXG4iCiBtc2dzdHIgItCQ0LLRgtC+0LzQsNGC0LjRh9C10YHQutCw0Y8g0YPQv9Cw0LrQvtCy0LrQsCDRgNC10L/QvtC30LjRgtC+0YDQuNGPINCyINGE0L7QvdC1LCDQtNC70Y8g0L7Qv9GC0LjQvNCw0LvRjNC90L7QuSDQv9GA0L7QuNC30LLQvtC00LjRgtC10LvRjNC90L7RgdGC0LguXG4iCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NjQKKyM6IGJ1aWx0aW4vZ2MuYzo1OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0byBwYWNraW5nIHRoZSByZXBvc2l0b3J5IGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgogbXNnc3RyICLQkNCy0YLQvtC80LDRgtC40YfQtdGB0LrQsNGPINGD0L/QsNC60L7QstC60LAg0YDQtdC/0L7Qt9C40YLQvtGA0LjRjywg0LTQu9GPINC+0L/RgtC40LzQsNC70YzQvdC+0Lkg0L/RgNC+0LjQt9Cy0L7QtNC40YLQtdC70YzQvdC+0YHRgtC4LlxuIgogCi0jOiBidWlsdGluL2djLmM6NTY1CisjOiBidWlsdGluL2djLmM6NjAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlNlZSBcImdpdCBoZWxwIGdjXCIgZm9yIG1hbnVhbCBob3VzZWtlZXBpbmcuXG4iCiBtc2dzdHIgItCh0LzQvtGC0YDQuNGC0LUgwqtnaXQgaGVscCBnY8K7INGA0YPQutC+0LLQvtC00YHRgtCy0LAg0L/QviDRgNGD0YfQvdC+0Lkg0L7Rh9C40YHRgtC60LUuXG4iCiAKLSM6IGJ1aWx0aW4vZ2MuYzo2MDEKKyM6IGJ1aWx0aW4vZ2MuYzo2NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImdjIGlzIGFscmVhZHkgcnVubmluZyBvbiBtYWNoaW5lICclcycgcGlkICU8UFJJdU1BWD4gKHVzZSAtLWZvcmNlIGlmIG5vdCkiCiBtc2dzdHIgImdjINGD0LbQtSDQt9Cw0L/Rg9GJ0LXQvSDQvdCwINGN0YLQvtC8INC60L7QvNC/0YzRjtGC0LXRgNC1IMKrJXPCuyBwaWQgJTxQUkl1TUFYPiAo0LXRgdC70Lgg0L3QtdGCLCDQuNGB0L/QvtC70YzQt9GD0LnRgtC1IC0tZm9yY2UpIgogCi0jOiBidWlsdGluL2djLmM6NjUyCisjOiBidWlsdGluL2djLmM6NjkzCiBtc2dpZCAiIgogIlRoZXJlIGFyZSB0b28gbWFueSB1bnJlYWNoYWJsZSBsb29zZSBvYmplY3RzOyBydW4gJ2dpdCBwcnVuZScgdG8gcmVtb3ZlICIKICJ0aGVtLiIKIG1zZ3N0ciAi0JjQvNC10LXRgtGB0Y8g0YHQu9C40YjQutC+0Lwg0LzQvdC+0LPQviDQvtCx0YrQtdC60YLQvtCyLCDQvdCwINC60L7RgtC+0YDRi9C1INC90LXRgiDRgdGB0YvQu9C+0Lo7INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCBwcnVuZcK7INC00LvRjyDQuNGFINGD0LTQsNC70LXQvdC40Y8uIgogCi0jOiBidWlsdGluL2dyZXAuYzoyOAorIzogYnVpbHRpbi9ncmVwLmM6MjkKIG1zZ2lkICJnaXQgZ3JlcCBbPG9wdGlvbnM+XSBbLWVdIDxwYXR0ZXJuPiBbPHJldj4uLi5dIFtbLS1dIDxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBncmVwIFs80L7Qv9GG0LjQuD5dIFstZV0gPNGI0LDQsdC70L7QvT4gWzzRgNC10LTQsNC60YbQuNGPPuKApl0gW1stLV0gPNC/0YPRgtGMPuKApl0iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjIyNgorIzogYnVpbHRpbi9ncmVwLmM6MjI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdyZXA6IGZhaWxlZCB0byBjcmVhdGUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAiZ3JlcDog0YHQsdC+0Lkg0YHQvtC30LTQsNC90LjRjyDQv9C+0YLQvtC60LA6ICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzoyODQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjI3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG51bWJlciBvZiB0aHJlYWRzIHNwZWNpZmllZCAoJWQpIGZvciAlcyIKIG1zZ3N0ciAi0YPQutCw0LfQsNC90L4g0L3QtdC00L7Qv9GD0YHRgtC40LzQvtC1INC60L7Qu9C40YfQtdGB0YLQstC+INC/0L7RgtC+0LrQvtCyICglZCkg0LTQu9GPICVzIgpAQCAtMTAxNDEsMjg5ICsxMjIyNywyOTcgQEAKICMuIFRSQU5TTEFUT1JTOiAlcyBpcyB0aGUgY29uZmlndXJhdGlvbgogIy4gdmFyaWFibGUgZm9yIHR3ZWFraW5nIHRocmVhZHMsIGN1cnJlbnRseQogIy4gZ3JlcC50aHJlYWRzCi0jOiBidWlsdGluL2dyZXAuYzoyOTMgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzNiBidWlsdGluL2luZGV4LXBhY2suYzoxNzI4Ci0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2MzkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjI4NyBidWlsdGluL2luZGV4LXBhY2suYzoxNTE0IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MDUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyB0aHJlYWRzIHN1cHBvcnQsIGlnbm9yaW5nICVzIgogbXNnc3RyICLQvdC10YIg0L/QvtC00LTQtdGA0LbQutC4INC/0L7RgtC+0LrQvtCyLCDQuNCz0L3QvtGA0LjRgNC+0LLQsNC90LjQtSAlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6NDYxIGJ1aWx0aW4vZ3JlcC5jOjU4MiBidWlsdGluL2dyZXAuYzo2MjMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjQ2NiBidWlsdGluL2dyZXAuYzo1OTAgYnVpbHRpbi9ncmVwLmM6NjMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHRyZWUgKCVzKSIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0LTQtdGA0LXQstC+ICglcykiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjYzOAorIzogYnVpbHRpbi9ncmVwLmM6NjQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBncmVwIGZyb20gb2JqZWN0IG9mIHR5cGUgJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIGdyZXAg0LjQtyDQvtCx0YrQtdC60YLQsCDRgtC40L/QsCAlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6NzA0CisjOiBidWlsdGluL2dyZXAuYzo3MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAic3dpdGNoIGAlYycgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKIG1zZ3N0ciAi0L/QsNGA0LDQvNC10YLRgCDCqyVjwrsg0L7QttC40LTQsNC10YIg0YfQuNGB0LvQvtCy0L7QtSDQt9C90LDRh9C10L3QuNC1IgogCi0jOiBidWlsdGluL2dyZXAuYzo3OTEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxMQogbXNnaWQgInNlYXJjaCBpbiBpbmRleCBpbnN0ZWFkIG9mIGluIHRoZSB3b3JrIHRyZWUiCiBtc2dzdHIgItC40YHQutCw0YLRjCDQsiDQuNC90LTQtdC60YHQtSwg0LAg0L3QtSDQsiDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1IgogCi0jOiBidWlsdGluL2dyZXAuYzo3OTMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxMwogbXNnaWQgImZpbmQgaW4gY29udGVudHMgbm90IG1hbmFnZWQgYnkgZ2l0IgogbXNnc3RyICLQuNGB0LrQsNGC0Ywg0LIg0YHQvtC00LXRgNC20LjQvNC+0Lwg0L3QtSDRg9C/0YDQsNCy0LvRj9C10LzRi9C8IGdpdCIKIAotIzogYnVpbHRpbi9ncmVwLmM6Nzk1CisjOiBidWlsdGluL2dyZXAuYzo4MTUKIG1zZ2lkICJzZWFyY2ggaW4gYm90aCB0cmFja2VkIGFuZCB1bnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgItC40YHQutCw0YLRjCDQuCDQsiDQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvRhSwg0Lgg0LIg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9GFINGE0LDQudC70LDRhSIKIAotIzogYnVpbHRpbi9ncmVwLmM6Nzk3CisjOiBidWlsdGluL2dyZXAuYzo4MTcKIG1zZ2lkICJpZ25vcmUgZmlsZXMgc3BlY2lmaWVkIHZpYSAnLmdpdGlnbm9yZSciCiBtc2dzdHIgItC40LPQvdC+0YDQuNGA0L7QstCw0YLRjCDRhNCw0LnQu9GLINGD0LrQsNC30LDQvdC90YvQtSDQsiDCqy5naXRpZ25vcmXCuyIKIAotIzogYnVpbHRpbi9ncmVwLmM6Nzk5CisjOiBidWlsdGluL2dyZXAuYzo4MTkKIG1zZ2lkICJyZWN1cnNpdmVseSBzZWFyY2ggaW4gZWFjaCBzdWJtb2R1bGUiCiBtc2dzdHIgItGA0LXQutGD0YDRgdC40LLQvdGL0Lkg0L/QvtC40YHQuiDQv9C+INCy0YHQtdC8INC/0L7QtNC80L7QtNGD0LvRj9C8IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyMgogbXNnaWQgInNob3cgbm9uLW1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICLQuNGB0LrQsNGC0Ywg0LIg0L3QtdGB0L7QstC/0LDQtNCw0Y7RidC40YUg0YHRgtGA0L7QutCw0YUiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwNAorIzogYnVpbHRpbi9ncmVwLmM6ODI0CiBtc2dpZCAiY2FzZSBpbnNlbnNpdGl2ZSBtYXRjaGluZyIKIG1zZ3N0ciAi0LHQtdC3INGD0YfQtdGC0LAg0YDQtdCz0LjRgdGC0YDQsCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODA2CisjOiBidWlsdGluL2dyZXAuYzo4MjYKIG1zZ2lkICJtYXRjaCBwYXR0ZXJucyBvbmx5IGF0IHdvcmQgYm91bmRhcmllcyIKIG1zZ3N0ciAi0LjRgdC60LDRgtGMINGB0L7QstC/0LDQtNC10L3QuNGPINGI0LDQsdC70L7QvdCwINGC0L7Qu9GM0LrQviDQvdCwINCz0YDQsNC90LjRhtCw0YUg0YHQu9C+0LIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwOAorIzogYnVpbHRpbi9ncmVwLmM6ODI4CiBtc2dpZCAicHJvY2VzcyBiaW5hcnkgZmlsZXMgYXMgdGV4dCIKIG1zZ3N0ciAi0L7QsdGA0LDQsdC+0YLQutCwINC00LLQvtC40YfQvdGL0YUg0YTQsNC50LvQvtCyINC60LDQuiDRgtC10LrRgdGC0LAiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxMAorIzogYnVpbHRpbi9ncmVwLmM6ODMwCiBtc2dpZCAiZG9uJ3QgbWF0Y2ggcGF0dGVybnMgaW4gYmluYXJ5IGZpbGVzIgogbXNnc3RyICLQvdC1INC40YHQutCw0YLRjCDRgdC+0LLQv9Cw0LTQtdC90LjRjyDRiNCw0LHQu9C+0L3QsCDQsiDQtNCy0L7QuNGH0L3Ri9GFINGE0LDQudC70LDRhSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODEzCisjOiBidWlsdGluL2dyZXAuYzo4MzMKIG1zZ2lkICJwcm9jZXNzIGJpbmFyeSBmaWxlcyB3aXRoIHRleHRjb252IGZpbHRlcnMiCiBtc2dzdHIgItC+0LHRgNCw0LHQsNGC0YvQstCw0YLRjNGB0Y8g0LTQstC+0LjRh9C90YvQtSDRhNCw0LnQu9GLINGBINC/0L7QvNC+0YnRjNGOINGE0LjQu9GM0YLRgNC+0LIgdGV4dGNvbnYiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxNQorIzogYnVpbHRpbi9ncmVwLmM6ODM1Cittc2dpZCAic2VhcmNoIGluIHN1YmRpcmVjdG9yaWVzIChkZWZhdWx0KSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2dyZXAuYzo4MzcKIG1zZ2lkICJkZXNjZW5kIGF0IG1vc3QgPGRlcHRoPiBsZXZlbHMiCiBtc2dzdHIgItC90LAg0LPQu9GD0LHQuNC90LUg0LzQsNC60YHQuNC80YMgPNCz0LvRg9Cx0LjQvdCwPiDRg9GA0L7QstC90LXQuSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODE5CisjOiBidWlsdGluL2dyZXAuYzo4NDEKIG1zZ2lkICJ1c2UgZXh0ZW5kZWQgUE9TSVggcmVndWxhciBleHByZXNzaW9ucyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGA0LDRgdGI0LjRgNC10L3QvdGL0LUg0YDQtdCz0YPQu9GP0YDQvdGL0LUg0LLRi9GA0LDQttC10L3QuNGPIFBPU0lYIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MjIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NAogbXNnaWQgInVzZSBiYXNpYyBQT1NJWCByZWd1bGFyIGV4cHJlc3Npb25zIChkZWZhdWx0KSIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINCx0LDQt9C+0LLRi9C1INGA0LXQs9GD0LvRj9GA0L3Ri9C1INCy0YvRgNCw0LbQtdC90LjRjyBQT1NJWCAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4pIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MjUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NwogbXNnaWQgImludGVycHJldCBwYXR0ZXJucyBhcyBmaXhlZCBzdHJpbmdzIgogbXNnc3RyICLQuNC90YLQtdGA0L/RgNC10YLQuNGA0L7QstCw0YLRjCDRiNCw0LHQu9C+0L3RiyDQutCw0Log0YTQuNC60YHQuNGA0L7QstCw0L3QvdGL0LUg0YHRgtGA0L7QutC4IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MjgKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1MAogbXNnaWQgInVzZSBQZXJsLWNvbXBhdGlibGUgcmVndWxhciBleHByZXNzaW9ucyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIFBlcmwt0YHQvtCy0LzQtdGB0YLQuNC80YvQtSDRgNC10LPRg9C70Y/RgNC90YvQtSDQstGL0YDQsNC20LXQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzMQorIzogYnVpbHRpbi9ncmVwLmM6ODUzCiBtc2dpZCAic2hvdyBsaW5lIG51bWJlcnMiCiBtc2dzdHIgItCy0YvQstC10YHRgtC4INC90L7QvNC10YDQsCDRgdGC0YDQvtC6IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MzIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1NAogbXNnaWQgInNob3cgY29sdW1uIG51bWJlciBvZiBmaXJzdCBtYXRjaCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MzMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1NQogbXNnaWQgImRvbid0IHNob3cgZmlsZW5hbWVzIgogbXNnc3RyICLQvdC1INCy0YvQstC+0LTQuNGC0Ywg0LjQvNC10L3QsCDRhNCw0LnQu9C+0LIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzNAorIzogYnVpbHRpbi9ncmVwLmM6ODU2CiBtc2dpZCAic2hvdyBmaWxlbmFtZXMiCiBtc2dzdHIgItCy0YvQstC+0LTQuNGC0Ywg0LjQvNC10L3QsCDRhNCw0LnQu9C+0LIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzNgorIzogYnVpbHRpbi9ncmVwLmM6ODU4CiBtc2dpZCAic2hvdyBmaWxlbmFtZXMgcmVsYXRpdmUgdG8gdG9wIGRpcmVjdG9yeSIKIG1zZ3N0ciAi0LLRi9Cy0L7QtNC40YLRjCDQuNC80LXQvdCwINGE0LDQudC70L7QsiDQvtGC0L3QvtGB0LjRgtC10LvRjNC90L4g0LrQsNGC0LDQu9C+0LPQsCDRgNC10L/QvtC30LjRgtC+0YDQuNGPIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MzgKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2MAogbXNnaWQgInNob3cgb25seSBmaWxlbmFtZXMgaW5zdGVhZCBvZiBtYXRjaGluZyBsaW5lcyIKIG1zZ3N0ciAi0LLRi9Cy0L7QtNC40YLRjCDRgtC+0LvRjNC60L4g0LjQvNC10L3QsCDRhNCw0LnQu9C+0LIsINCwINC90LUg0YHQvtCy0L/QsNC00LDRjtGJ0LjQtSDRgdGC0YDQvtC60LgiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0MAorIzogYnVpbHRpbi9ncmVwLmM6ODYyCiBtc2dpZCAic3lub255bSBmb3IgLS1maWxlcy13aXRoLW1hdGNoZXMiCiBtc2dzdHIgItGB0LjQvdC+0L3QuNC8INC00LvRjyAtLWZpbGVzLXdpdGgtbWF0Y2hlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQzCisjOiBidWlsdGluL2dyZXAuYzo4NjUKIG1zZ2lkICJzaG93IG9ubHkgdGhlIG5hbWVzIG9mIGZpbGVzIHdpdGhvdXQgbWF0Y2giCiBtc2dzdHIgItCy0YvQstC+0LTQuNGC0Ywg0YLQvtC70YzQutC+INC90LXRgdC+0LLQv9Cw0LTQsNGO0YnQuNC1INC40LzQtdC90LAg0YTQsNC50LvQvtCyIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2NwogbXNnaWQgInByaW50IE5VTCBhZnRlciBmaWxlbmFtZXMiCiBtc2dzdHIgItCy0YvQstC+0LTQuNGC0Ywg0LTQstC+0LjRh9C90YvQuSDQndCe0JvQrCDQv9C+0YHQu9C1INGB0L/QuNGB0LrQsCDQuNC80LXQvSDRhNCw0LnQu9C+0LIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0OAorIzogYnVpbHRpbi9ncmVwLmM6ODcwCiBtc2dpZCAic2hvdyBvbmx5IG1hdGNoaW5nIHBhcnRzIG9mIGEgbGluZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NTAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3MgogbXNnaWQgInNob3cgdGhlIG51bWJlciBvZiBtYXRjaGVzIGluc3RlYWQgb2YgbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgItCy0YvQstC+0LTQuNGC0Ywg0LrQvtC70LjRh9C10YHRgtCy0L4g0YHQvtCy0L/QsNC00LXQvdC40LksINCwINC90LUg0YHQvtCy0L/QsNC00LDRjtGJ0LjQtSDRgdGC0YDQvtC60LgiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1MQorIzogYnVpbHRpbi9ncmVwLmM6ODczCiBtc2dpZCAiaGlnaGxpZ2h0IG1hdGNoZXMiCiBtc2dzdHIgItC/0L7QtNGB0LLQtdGH0LjQstCw0YLRjCDRgdC+0LLQv9Cw0LTQtdC90LjRjyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODUzCisjOiBidWlsdGluL2dyZXAuYzo4NzUKIG1zZ2lkICJwcmludCBlbXB0eSBsaW5lIGJldHdlZW4gbWF0Y2hlcyBmcm9tIGRpZmZlcmVudCBmaWxlcyIKIG1zZ3N0ciAi0LLRi9Cy0L7QtNC40YLRjCDQv9GD0YHRgtGD0Y4g0YHRgtGA0L7QutGDINC/0L7RgdC70LUg0YHQvtCy0L/QsNC00LXQvdC40Lkg0LjQtyDRgNCw0LfQvdGL0YUg0YTQsNC50LvQvtCyIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NTUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3NwogbXNnaWQgInNob3cgZmlsZW5hbWUgb25seSBvbmNlIGFib3ZlIG1hdGNoZXMgZnJvbSBzYW1lIGZpbGUiCiBtc2dzdHIgItCy0YvQstC+0LTQuNGC0Ywg0LjQvNGPINGE0LDQudC70LAg0YLQvtC70YzQutC+INGA0LDQtyDQvdCwINC90LXRgdC60L7Qu9GM0LrQviDRgdC+0LLQv9Cw0LTQtdC90LjQuSDQsiDQvtC00L3QvtC8INGE0LDQudC70LUiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1OAorIzogYnVpbHRpbi9ncmVwLmM6ODgwCiBtc2dpZCAic2hvdyA8bj4gY29udGV4dCBsaW5lcyBiZWZvcmUgYW5kIGFmdGVyIG1hdGNoZXMiCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0YwgPG4+INGB0YLRgNC+0Log0LrQvtC90YLQtdC60YHRgtCwINC/0LXRgNC10LQg0Lgg0L/QvtGB0LvQtSDRgdC+0LLQv9Cw0LTQtdC90LjRjyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODYxCisjOiBidWlsdGluL2dyZXAuYzo4ODMKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGJlZm9yZSBtYXRjaGVzIgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMIDxuPiDRgdGC0YDQvtC6INC60L7QvdGC0LXQutGB0YLQsCDQv9C10YDQtdC0INGB0L7QstC/0LDQtNC10L3QuNC10LwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2MworIzogYnVpbHRpbi9ncmVwLmM6ODg1CiBtc2dpZCAic2hvdyA8bj4gY29udGV4dCBsaW5lcyBhZnRlciBtYXRjaGVzIgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMIDxuPiDRgdGC0YDQvtC6INC60L7QvdGC0LXQutGB0YLQsCDQv9C+0YHQu9C1INGB0L7QstC/0LDQtNC10L3QuNGPIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4NwogbXNnaWQgInVzZSA8bj4gd29ya2VyIHRocmVhZHMiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCA80LrQvtC7PiDRgNCw0LHQvtGH0LjRhSDQv9C+0YLQvtC60L7QsiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODY2CisjOiBidWlsdGluL2dyZXAuYzo4ODgKIG1zZ2lkICJzaG9ydGN1dCBmb3IgLUMgTlVNIgogbXNnc3RyICLRgtC+0LbQtSwg0YfRgtC+INC4IC1DINCa0J7Qm9CY0KfQldCh0KLQktCeIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg5MQogbXNnaWQgInNob3cgYSBsaW5lIHdpdGggdGhlIGZ1bmN0aW9uIG5hbWUgYmVmb3JlIG1hdGNoZXMiCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0YHRgtGA0L7QutGDINGBINC40LzQtdC90LXQvCDRhNGD0L3QutGG0LjQuCDQv9C10YDQtdC0INGB0L7QstC/0LDQtNC10L3QuNC10LwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3MQorIzogYnVpbHRpbi9ncmVwLmM6ODkzCiBtc2dpZCAic2hvdyB0aGUgc3Vycm91bmRpbmcgZnVuY3Rpb24iCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0L7QutGA0YPQttCw0Y7RidGD0Y4g0YTRg9C90LrRhtC40Y4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NAorIzogYnVpbHRpbi9ncmVwLmM6ODk2CiBtc2dpZCAicmVhZCBwYXR0ZXJucyBmcm9tIGZpbGUiCiBtc2dzdHIgItC/0YDQvtGH0LjRgtCw0YLRjCDRiNCw0LHQu9C+0L3RiyDQuNC3INGE0LDQudC70LAiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NgorIzogYnVpbHRpbi9ncmVwLmM6ODk4CiBtc2dpZCAibWF0Y2ggPHBhdHRlcm4+IgogbXNnc3RyICLQv9C+0LjRgdC6INGB0L7QvtGC0LLQtdGC0YHRgtCy0LjQuSDRgSA80YjQsNCx0LvQvtC90L7QvD4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3OAorIzogYnVpbHRpbi9ncmVwLmM6OTAwCiBtc2dpZCAiY29tYmluZSBwYXR0ZXJucyBzcGVjaWZpZWQgd2l0aCAtZSIKIG1zZ3N0ciAi0L7QsdGK0LXQtNC40L3QuNGC0Ywg0YjQsNCx0LvQvtC90Ysg0YPQutCw0LfQsNC90L3Ri9C1INGBINC/0L7QvNC+0YnRjNGOIC1lIgogCi0jOiBidWlsdGluL2dyZXAuYzo4OTAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxMgogbXNnaWQgImluZGljYXRlIGhpdCB3aXRoIGV4aXQgc3RhdHVzIHdpdGhvdXQgb3V0cHV0IgogbXNnc3RyICLQvdC40YfQtdCz0L4g0L3QtSDQstGL0LLQvtC00LjRgtGMLCDRg9C60LDQt9Cw0YLRjCDQvdCwINGB0L7QstC/0LDQtNC10L3QuNC1INGBINC/0L7QvNC+0YnRjNGOINC60L7QtNCwINCy0YvRhdC+0LTQsCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODkyCisjOiBidWlsdGluL2dyZXAuYzo5MTQKIG1zZ2lkICJzaG93IG9ubHkgbWF0Y2hlcyBmcm9tIGZpbGVzIHRoYXQgbWF0Y2ggYWxsIHBhdHRlcm5zIgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMINGC0L7Qu9GM0LrQviDRgdC+0LLQv9Cw0LTQtdC90LjRjyDQuNC3INGE0LDQudC70L7QsiDQsiDQutC+0YLQvtGA0YvRhSDRgdC+0LLQv9Cw0LTQsNGO0YIg0LLRgdC1INGI0LDQsdC70L7QvdGLIgogCi0jOiBidWlsdGluL2dyZXAuYzo4OTQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxNgogbXNnaWQgInNob3cgcGFyc2UgdHJlZSBmb3IgZ3JlcCBleHByZXNzaW9uIgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMINC00LXRgNC10LLQviDRgNCw0LfQsdC+0YDQsCDQtNC70Y8g0LLRi9GA0LDQttC10L3QuNGPINC/0L7QuNGB0LrQsCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODk4CisjOiBidWlsdGluL2dyZXAuYzo5MjAKIG1zZ2lkICJwYWdlciIKIG1zZ3N0ciAi0L/QtdC50LTQttC10YAiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg5OAorIzogYnVpbHRpbi9ncmVwLmM6OTIwCiBtc2dpZCAic2hvdyBtYXRjaGluZyBmaWxlcyBpbiB0aGUgcGFnZXIiCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0YHQvtCy0L/QsNC00LDRjtGJ0LjQtSDRhNCw0LnQu9GLINGBINC/0L7QvNC+0YnRjNGOINC/0YDQvtCz0YDQsNC80LzRiy3Qv9C10LnQtNC20LXRgNCwIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkyNAogbXNnaWQgImFsbG93IGNhbGxpbmcgb2YgZ3JlcCgxKSAoaWdub3JlZCBieSB0aGlzIGJ1aWxkKSIKIG1zZ3N0ciAi0YDQsNC30YDQtdGI0LjRgtGMINCy0YvQt9C+0LIgZ3JlcCgxKSAo0LjQs9C90L7RgNC40YDRg9C10YLRgdGPINCyINGN0YLQvtC5INGB0LHQvtGA0LrQtSkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjk2NgorIzogYnVpbHRpbi9ncmVwLmM6OTg4CiBtc2dpZCAibm8gcGF0dGVybiBnaXZlbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDAyCisjOiBidWlsdGluL2dyZXAuYzoxMDI0CiBtc2dpZCAiLS1uby1pbmRleCBvciAtLXVudHJhY2tlZCBjYW5ub3QgYmUgdXNlZCB3aXRoIHJldnMiCiBtc2dzdHIgIi0tbm8taW5kZXgg0LjQu9C4IC0tdW50cmFja2VkINC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+INGBINGD0LrQsNC30LDQvdC40LXQvCDRgNC10LLQuNC30LjQuCIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTAwOQorIzogYnVpbHRpbi9ncmVwLmM6MTAzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSByZXZpc2lvbjogJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7Qv9GA0LXQtNC10LvQuNGC0Ywg0YDQtdC00LDQutGG0LjRjjogJXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwNDQgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzMiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2MzUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjMKK21zZ2lkICJpbnZhbGlkIG9wdGlvbiBjb21iaW5hdGlvbiwgaWdub3JpbmcgLS10aHJlYWRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAzCittc2dpZCAibm8gdGhyZWFkcyBzdXBwb3J0LCBpZ25vcmluZyAtLXRocmVhZHMiCittc2dzdHIgItC90LXRgiDQv9C+0LTQtNC10YDQttC60Lgg0L/QvtGC0L7QutC+0LIsINC40LPQvdC+0YDQuNGA0L7QstCw0L3QuNC1IC0tdGhyZWFkcyIKKworIzogYnVpbHRpbi9ncmVwLmM6MTA2OSBidWlsdGluL2luZGV4LXBhY2suYzoxNTExIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcxNwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG51bWJlciBvZiB0aHJlYWRzIHNwZWNpZmllZCAoJWQpIgogbXNnc3RyICLRg9C60LDQt9Cw0L3QviDQvdC10L/RgNCw0LLQuNC70YzQvdC+0LUg0LrQvtC70LjRh9C10YHRgtCy0L4g0L/QvtGC0L7QutC+0LIgKCVkKSIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTA0OSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODkKLW1zZ2lkICJubyB0aHJlYWRzIHN1cHBvcnQsIGlnbm9yaW5nIC0tdGhyZWFkcyIKLW1zZ3N0ciAi0L3QtdGCINC/0L7QtNC00LXRgNC20LrQuCDQv9C+0YLQvtC60L7Qsiwg0LjQs9C90L7RgNC40YDQvtCy0LDQvdC40LUgLS10aHJlYWRzIgotCi0jOiBidWlsdGluL2dyZXAuYzoxMDczCisjOiBidWlsdGluL2dyZXAuYzoxMDkyCiBtc2dpZCAiLS1vcGVuLWZpbGVzLWluLXBhZ2VyIG9ubHkgd29ya3Mgb24gdGhlIHdvcmt0cmVlIgogbXNnc3RyICItLW9wZW4tZmlsZXMtaW4tcGFnZXIg0YDQsNCx0L7RgtCw0LXRgiDRgtC+0LvRjNC60L4g0LIg0YDQsNCx0L7Rh9C10Lwg0LrQsNGC0LDQu9C+0LPQtSIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTA5NgorIzogYnVpbHRpbi9ncmVwLmM6MTExNQogbXNnaWQgIm9wdGlvbiBub3Qgc3VwcG9ydGVkIHdpdGggLS1yZWN1cnNlLXN1Ym1vZHVsZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTEwMgorIzogYnVpbHRpbi9ncmVwLmM6MTEyMQogbXNnaWQgIi0tY2FjaGVkIG9yIC0tdW50cmFja2VkIGNhbm5vdCBiZSB1c2VkIHdpdGggLS1uby1pbmRleCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMTA4CisjOiBidWlsdGluL2dyZXAuYzoxMTI3CiBtc2dpZCAiLS1bbm8tXWV4Y2x1ZGUtc3RhbmRhcmQgY2Fubm90IGJlIHVzZWQgZm9yIHRyYWNrZWQgY29udGVudHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTExNgorIzogYnVpbHRpbi9ncmVwLmM6MTEzNQogbXNnaWQgImJvdGggLS1jYWNoZWQgYW5kIHRyZWVzIGFyZSBnaXZlbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODQKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NQogbXNnaWQgIiIKICJnaXQgaGFzaC1vYmplY3QgWy10IDx0eXBlPl0gWy13XSBbLS1wYXRoPTxmaWxlPiB8IC0tbm8tZmlsdGVyc10gWy0tc3RkaW5dICIKICJbLS1dIDxmaWxlPi4uLiIKIG1zZ3N0ciAiZ2l0IGhhc2gtb2JqZWN0IFstdCA80YLQuNC/Pl0gWy13XSBbLS1wYXRoPTzRhNCw0LnQuz4gfCAtLW5vLWZpbHRlcnNdIFstLXN0ZGluXSBbLS1dIDzRhNCw0LnQuz7igKYiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NQorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg2CiBtc2dpZCAiZ2l0IGhhc2gtb2JqZWN0ICAtLXN0ZGluLXBhdGhzIgogbXNnc3RyICJnaXQgaGFzaC1vYmplY3QgIC0tc3RkaW4tcGF0aHMiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5NworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk4CiBtc2dpZCAidHlwZSIKIG1zZ3N0ciAi0YLQuNC/IgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTcKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAogbXNnaWQgIm9iamVjdCB0eXBlIgogbXNnc3RyICLRgtC40L8g0L7QsdGK0LXQutGC0LAiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk5CiBtc2dpZCAid3JpdGUgdGhlIG9iamVjdCBpbnRvIHRoZSBvYmplY3QgZGF0YWJhc2UiCiBtc2dzdHIgItC30LDQv9C40YHRjCDQvtCx0YrQtdC60YLQsCDQsiDQsdCw0LfRgyDQtNCw0L3QvdGL0YUg0L7QsdGK0LXQutGC0L7QsiIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMQogbXNnaWQgInJlYWQgdGhlIG9iamVjdCBmcm9tIHN0ZGluIgogbXNnc3RyICLQv9GA0L7Rh9C40YLQsNGC0Ywg0L7QsdGK0LXQutGCINC40Lcg0YHRgtCw0L3QtNCw0YDRgtC90L7Qs9C+INCy0LLQvtC00LAiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDMKIG1zZ2lkICJzdG9yZSBmaWxlIGFzIGlzIHdpdGhvdXQgZmlsdGVycyIKIG1zZ3N0ciAi0YHQvtGF0YDQsNC90LjRgtGMINGE0LDQudC7INCx0LXQtyDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjRjyDRhNC40LvRjNGC0YDQvtCyIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAzCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0CiBtc2dpZCAiIgogImp1c3QgaGFzaCBhbnkgcmFuZG9tIGdhcmJhZ2UgdG8gY3JlYXRlIGNvcnJ1cHQgb2JqZWN0cyBmb3IgZGVidWdnaW5nIEdpdCIKLW1zZ3N0ciAi0YXRjdGI0LjRgNC+0LLQsNGC0Ywg0LvRjtCx0L7QuSDQvNGD0YHQvtGAINC4INGB0L7Qt9C00LDQstCw0YLRjCDQv9C+0LLRgNC10LbQtNC10L3QvdGL0LUg0L7QsdGK0LXQutGC0Ysg0LTQu9GPINC+0YLQu9Cw0LTQutC4IEdpdCIKK21zZ3N0ciAi0YXQtdGI0LjRgNC+0LLQsNGC0Ywg0LvRjtCx0L7QuSDQvNGD0YHQvtGAINC4INGB0L7Qt9C00LDQstCw0YLRjCDQv9C+0LLRgNC10LbQtNC10L3QvdGL0LUg0L7QsdGK0LXQutGC0Ysg0LTQu9GPINC+0YLQu9Cw0LTQutC4IEdpdCIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNQogbXNnaWQgInByb2Nlc3MgZmlsZSBhcyBpdCB3ZXJlIGZyb20gdGhpcyBwYXRoIgogbXNnc3RyICLQvtCx0YDQsNCx0L7RgtCw0YLRjCDRhNCw0LnQuyDRgtCw0LosINCx0YPQtNGC0L4g0L7QvSDQvdCw0YXQvtC00LjRgtGB0Y8g0L/QviDRg9C60LDQt9Cw0L3QvdC+0LzRgyDQv9GD0YLQuCIKIApAQCAtMTA0NjMsODYgKzEyNTU3LDkxIEBACiBtc2dpZCAiZ2l0IGhlbHAgWy0tYWxsXSBbLS1ndWlkZXNdIFstLW1hbiB8IC0td2ViIHwgLS1pbmZvXSBbPGNvbW1hbmQ+XSIKIG1zZ3N0ciAiZ2l0IGhlbHAgWy0tYWxsXSBbLS1ndWlkZXNdIFstLW1hbiB8IC0td2ViIHwgLS1pbmZvXSBbPNC60L7QvNCw0L3QtNCwPl0iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjczCisjOiBidWlsdGluL2hlbHAuYzo3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaGVscCBmb3JtYXQgJyVzJyIKIG1zZ3N0ciAi0L3QtdC+0L/QvtC30L3QsNC90L3Ri9C5INGE0L7RgNC80LDRgiDRgNGD0LrQvtCy0L7QtNGB0YLQstCwIMKrJXPCuyIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTAwCisjOiBidWlsdGluL2hlbHAuYzoxMDQKIG1zZ2lkICJGYWlsZWQgdG8gc3RhcnQgZW1hY3NjbGllbnQuIgogbXNnc3RyICLQodCx0L7QuSDQv9GA0Lgg0LfQsNC/0YPRgdC60LUgZW1hY3NjbGllbnQuIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMTMKKyM6IGJ1aWx0aW4vaGVscC5jOjExNwogbXNnaWQgIkZhaWxlZCB0byBwYXJzZSBlbWFjc2NsaWVudCB2ZXJzaW9uLiIKIG1zZ3N0ciAi0KHQsdC+0Lkg0L/RgNC4INC+0L/RgNC10LTQtdC70LXQvdC40Lgg0LLQtdGA0YHQuNC4IGVtYWNzY2xpZW50LiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTIxCisjOiBidWlsdGluL2hlbHAuYzoxMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZW1hY3NjbGllbnQgdmVyc2lvbiAnJWQnIHRvbyBvbGQgKDwgMjIpLiIKIG1zZ3N0ciAi0LLQtdGA0YHQuNGPIGVtYWNzY2xpZW50IMKrJWTCuyDRgdC70LjRiNC60L7QvCDRgdGC0LDRgNCw0Y8gKDwgMjIpLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTM5IGJ1aWx0aW4vaGVscC5jOjE2MSBidWlsdGluL2hlbHAuYzoxNzEgYnVpbHRpbi9oZWxwLmM6MTc5CisjOiBidWlsdGluL2hlbHAuYzoxNDMgYnVpbHRpbi9oZWxwLmM6MTY1IGJ1aWx0aW4vaGVscC5jOjE3NSBidWlsdGluL2hlbHAuYzoxODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgJyVzJyIKIG1zZ3N0ciAi0YHQsdC+0Lkg0L/RgNC4INC30LDQv9GD0YHQutC1IMKrJXPCuyIKIAotIzogYnVpbHRpbi9oZWxwLmM6MjE3CisjOiBidWlsdGluL2hlbHAuYzoyMjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcyc6IHBhdGggZm9yIHVuc3VwcG9ydGVkIG1hbiB2aWV3ZXIuXG4iCiAiUGxlYXNlIGNvbnNpZGVyIHVzaW5nICdtYW4uPHRvb2w+LmNtZCcgaW5zdGVhZC4iCiBtc2dzdHIgIsKrJXPCuzog0L/Rg9GC0Ywg0LTQu9GPINC90LXQv9C+0LTQtNC10YDQttC40LLQsNC10LzQvtC5INC/0YDQvtCz0YDQsNC80LzRiyDQv9GA0L7RgdC80L7RgtGA0LAgbWFuLlxu0JLQvNC10YHRgtC+INGN0YLQvtCz0L4g0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq21hbi480L/RgNC+0LPRgNCw0LzQvNCwPi5jbWTCuy4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjIyOQorIzogYnVpbHRpbi9oZWxwLmM6MjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnOiBjbWQgZm9yIHN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgogIlBsZWFzZSBjb25zaWRlciB1c2luZyAnbWFuLjx0b29sPi5wYXRoJyBpbnN0ZWFkLiIKIG1zZ3N0ciAiwqslc8K7OiDQutC+0LzQsNC90LTQsCDQtNC70Y8g0L3QtdC/0L7QtNC00LXRgNC20LjQstCw0LXQvNC+0Lkg0L/RgNC+0LPRgNCw0LzQvNGLINC/0YDQvtGB0LzQvtGC0YDQsCBtYW4uXG7QktC80LXRgdGC0L4g0Y3RgtC+0LPQviDQuNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrbWFuLjzQv9GA0L7Qs9GA0LDQvNC80LA+LnBhdGjCuy4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM0NgorIzogYnVpbHRpbi9oZWxwLmM6MzUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IHVua25vd24gbWFuIHZpZXdlci4iCiBtc2dzdHIgIsKrJXPCuzog0L3QtdC40LfQstC10YHRgtC90LDRjyDQv9GA0L7Qs9GA0LDQvNC80LAg0L/RgNC+0YHQvNC+0YLRgNCwIG1hbi4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM2MworIzogYnVpbHRpbi9oZWxwLmM6MzY3CiBtc2dpZCAibm8gbWFuIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgogbXNnc3RyICLQv9GA0L7Qs9GA0LDQvNC80LAg0L/RgNC+0YHQvNC+0YLRgNCwIG1hbiDQvdC1INC+0LHRgNCw0LHQvtGC0LDQu9CwINC30LDQv9GA0L7RgSIKIAotIzogYnVpbHRpbi9oZWxwLmM6MzcxCisjOiBidWlsdGluL2hlbHAuYzozNzUKIG1zZ2lkICJubyBpbmZvIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgogbXNnc3RyICLQv9GA0L7Qs9GA0LDQvNC80LAg0L/RgNC+0YHQvNC+0YLRgNCwIGluZm8g0L3QtSDQvtCx0YDQsNCx0L7RgtCw0LvQsCDQt9Cw0L/RgNC+0YEiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQxOAorIzogYnVpbHRpbi9oZWxwLmM6NDM0IGJ1aWx0aW4vaGVscC5jOjQ0NSBnaXQuYzozMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbGlhc2VkIHRvICclcyciCiBtc2dzdHIgIsKrJXPCuyDigJQg0Y3RgtC+INGB0L7QutGA0LDRidC10L3QuNC1INC00LvRjyDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQ0NSBidWlsdGluL2hlbHAuYzo0NzUKKyM6IGJ1aWx0aW4vaGVscC5jOjQ0OCBnaXQuYzozNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGFsaWFzLiVzIHN0cmluZzogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9oZWxwLmM6NDc3IGJ1aWx0aW4vaGVscC5jOjUwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1c2FnZTogJXMlcyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LU6ICVzJXMiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQ1OQorIzogYnVpbHRpbi9oZWxwLmM6NDkxCiBtc2dpZCAiJ2dpdCBoZWxwIGNvbmZpZycgZm9yIG1vcmUgaW5mb3JtYXRpb24iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxODQKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IHR5cGUgbWlzbWF0Y2ggYXQgJXMiCiBtc2dzdHIgItC90LXRgdC+0L7RgtCy0LXRgtGB0YLQstC40LUg0YLQuNC/0LAg0L7QsdGK0LXQutGC0LAg0L3QsCAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjI4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGlkIG5vdCByZWNlaXZlIGV4cGVjdGVkIG9iamVjdCAlcyIKIG1zZ3N0ciAi0L7QttC40LTQsNC10LzRi9C5INC+0LHRitC10LrRgiDQvdC1INC/0L7Qu9GD0YfQtdC9INC90LAgJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIzMQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlczogZXhwZWN0ZWQgdHlwZSAlcywgZm91bmQgJXMiCiBtc2dzdHIgItC+0LHRitC10LrRgiAlczog0L7QttC40LTQsNC10LzRi9C5INGC0LjQvyAlcywg0L/QvtC70YPRh9C10L0gJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI3MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBmaWxsICVkIGJ5dGUiCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBmaWxsICVkIGJ5dGVzIgpAQCAtMTA1NTEsNzMgKzEyNjUwLDczIEBACiBtc2dzdHJbMl0gItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0L7Qu9C90LjRgtGMICVkINCx0LDQudGC0L7QsiIKIG1zZ3N0clszXSAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QvtC70L3QuNGC0YwgJWQg0LHQsNC50YLQvtCyIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyODMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2NwogbXNnaWQgImVhcmx5IEVPRiIKIG1zZ3N0ciAi0L3QtdC+0LbQuNC00LDQvdC90YvQuSDQutC+0L3QtdGGINGE0LDQudC70LAiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI4NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjY4CiBtc2dpZCAicmVhZCBlcnJvciBvbiBpbnB1dCIKIG1zZ3N0ciAi0L7RiNC40LHQutCwINGH0YLQtdC90LjRjyDQstCy0L7QtNCwIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyOTYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI4MAogbXNnaWQgInVzZWQgbW9yZSBieXRlcyB0aGFuIHdlcmUgYXZhaWxhYmxlIgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNC90L4g0LHQvtC70YzRiNC1INCx0LDQudGCLCDRh9C10Lwg0LHRi9C70L4g0LTQvtGB0YLRg9C/0L3QviIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzAzIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTkwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyODcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo2MDAKIG1zZ2lkICJwYWNrIHRvbyBsYXJnZSBmb3IgY3VycmVudCBkZWZpbml0aW9uIG9mIG9mZl90IgogbXNnc3RyICLQv9Cw0LrQtdGCINGB0LvQuNGI0LrQvtC8INCx0L7Qu9GM0YjQvtC5INC00LvRjyDRgtC10LrRg9GJ0LXQs9C+INC+0L/RgNC10LTQtdC70LXQvdC40Y8gb2ZmX3QiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMwNiBidWlsdGluL3VucGFjay1vYmplY3RzLmM6OTQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI5MCBidWlsdGluL3VucGFjay1vYmplY3RzLmM6OTQKIG1zZ2lkICJwYWNrIGV4Y2VlZHMgbWF4aW11bSBhbGxvd2VkIHNpemUiCiBtc2dzdHIgItGA0LDQt9C80LXRgCDQv9Cw0LrQtdGC0LAg0L/RgNC10LLRi9GI0LDQtdGCINC80LDQutGB0LjQvNCw0LvRjNC90YvQuSDQtNC+0L/Rg9GB0YLQuNC80YvQuSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzIxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMDUgYnVpbHRpbi9yZXBhY2suYzoyNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMIMKrJXPCuyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzI3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG9wZW4gcGFja2ZpbGUgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDRhNCw0LnQuyDQv9Cw0LrQtdGC0LAgwqslc8K7IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozNDEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMyNQogbXNnaWQgInBhY2sgc2lnbmF0dXJlIG1pc21hdGNoIgogbXNnc3RyICLQvdC10YHQvtC+0YLQstC10YLRgdGC0LLQuNC1INC/0L7QtNC/0LjRgdC4INC/0LDQutC10YLQsCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzQzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjayB2ZXJzaW9uICU8UFJJdTMyPiB1bnN1cHBvcnRlZCIKIG1zZ3N0ciAi0LLQtdGA0YHQuNGPINC/0LDQutC10YLQsCAlPFBSSXUzMj4g0L3QtSDQv9C+0LTQtNC10YDQttC40LLQsNC10YLRgdGPIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozNjEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjM0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrIGhhcyBiYWQgb2JqZWN0IGF0IG9mZnNldCAlPFBSSXVNQVg+OiAlcyIKIG1zZ3N0ciAi0L/QsNC60LXRgiDRgdC+0LTQtdGA0LbQuNGCINC/0LvQvtGF0L7QuSDQvtCx0YrQtdC60YIg0L/QviDRgdC80LXRidC10L3QuNGOICU8UFJJdU1BWD46ICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo0ODIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjQ2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbmZsYXRlIHJldHVybmVkICVkIgogbXNnc3RyICLQv9GA0L7Qs9GA0LDQvNC80LAg0YHQttCw0YLQuNGPINCy0LXRgNC90YPQu9CwICVkIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1MzEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNAogbXNnaWQgIm9mZnNldCB2YWx1ZSBvdmVyZmxvdyBmb3IgZGVsdGEgYmFzZSBvYmplY3QiCiBtc2dzdHIgItC/0LXRgNC10L/QvtC70L3QtdC90LjQtSDQt9C90LDRh9C10L3QuNGPINGB0LzQtdGJ0LXQvdC40Y8g0YMg0LHQsNC30L7QstC+0LPQviDQvtCx0YrQtdC60YLQsCDQtNC10LvRjNGC0YsiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUzOQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTIyCiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgaXMgb3V0IG9mIGJvdW5kIgogbXNnc3RyICLRgdC80LXRidC10L3QuNC1INCx0LDQt9C+0LLQvtC5INC00LXQu9GM0YLRiyDQstGL0YjQu9C+INC30LAg0LTQvtC/0YPRgdGC0LjQvNGL0LUg0L/RgNC10LTQtdC70YsiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU0NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTMwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gb2JqZWN0IHR5cGUgJWQiCiBtc2dzdHIgItC90LXQuNC30LLQtdGB0YLQvdGL0Lkg0YLQuNC/INC+0LHRitC10LrRgtCwICVkIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1NzgKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU2MQogbXNnaWQgImNhbm5vdCBwcmVhZCBwYWNrIGZpbGUiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHByZWFkINC00LvRjyDRhNCw0LnQu9CwINC/0LDQutC10YLQsCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTgwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICU8UFJJdU1BWD4gYnl0ZSBtaXNzaW5nIgogbXNnaWRfcGx1cmFsICJwcmVtYXR1cmUgZW5kIG9mIHBhY2sgZmlsZSwgJTxQUkl1TUFYPiBieXRlcyBtaXNzaW5nIgpAQCAtMTA2MjYsOTMgKzEyNzI1LDg4IEBACiBtc2dzdHJbMl0gItC/0YDQtdC20LTQtdCy0YDQtdC80LXQvdC90L7QtSDQvtC60L7QvdGH0LDQvdC40LUg0YTQsNC50LvQsCDQv9Cw0LrQtdGC0LAsICU8UFJJdU1BWD4g0LHQsNC50YLQvtCyINC+0YLRgdGD0YLRgdGC0LLRg9C10YIiCiBtc2dzdHJbM10gItC/0YDQtdC20LTQtdCy0YDQtdC80LXQvdC90L7QtSDQvtC60L7QvdGH0LDQvdC40LUg0YTQsNC50LvQsCDQv9Cw0LrQtdGC0LAsICU8UFJJdU1BWD4g0LHQsNC50YLQvtCyINC+0YLRgdGD0YLRgdGC0LLRg9C10YIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjYwNgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTg5CiBtc2dpZCAic2VyaW91cyBpbmZsYXRlIGluY29uc2lzdGVuY3kiCiBtc2dzdHIgItGB0LXRgNGM0LXQt9C90L7QtSDQvdC10YHQvtC+0YLQstC10YLRgdGC0LLQuNC1INC/0YDQuCDRgNCw0YHQv9Cw0LrQvtCy0LrQtSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzUxIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc1NyBidWlsdGluL2luZGV4LXBhY2suYzo3ODAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxOSBidWlsdGluL2luZGV4LXBhY2suYzo4MjgKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjczNCBidWlsdGluL2luZGV4LXBhY2suYzo3NDAgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzYzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MDIgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODExCiAjLCBjLWZvcm1hdAogbXNnaWQgIlNIQTEgQ09MTElTSU9OIEZPVU5EIFdJVEggJXMgISIKIG1zZ3N0ciAi0J3QkNCZ0JTQldCd0JAg0JrQntCb0JvQmNCX0JjQryBTSEExINChICVzICEiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc1NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE0MwotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDMgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjczNyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE1MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTMgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBleGlzdGluZyBvYmplY3QgaW5mbyAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0YHRg9GJ0LXRgdGC0LLRg9GO0YnQtdCz0L4g0L7QsdGK0LXQutGC0LAgJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgyNQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIGV4aXN0aW5nIG9iamVjdCAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0YHRg9GJ0LXRgdGC0LLRg9GO0YnQuNC5INC+0LHRitC10LrRgiAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODM5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBibG9iIG9iamVjdCAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INGE0LDQudC7INC00LLQvtC40YfQvdC+0LPQviDQvtCx0YrQtdC60YLQsCAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODQyIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg2MQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODI1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0NAogbXNnaWQgImZzY2sgZXJyb3IgaW4gcGFja2VkIG9iamVjdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4NTgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCAlcyIKLW1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5ICVzIgotCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4NjMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYWxsIGNoaWxkIG9iamVjdHMgb2YgJXMgYXJlIHJlYWNoYWJsZSIKIG1zZ3N0ciAi0J3QtSDQstGB0LUg0LTQvtGH0LXRgNC90LjQtSDQvtCx0YrQtdC60YLRiyAlcyDQtNC+0YHRgtC40LbQuNC80YsiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjkzNSBidWlsdGluL2luZGV4LXBhY2suYzo5NjYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjkxOCBidWlsdGluL2luZGV4LXBhY2suYzo5NDkKIG1zZ2lkICJmYWlsZWQgdG8gYXBwbHkgZGVsdGEiCiBtc2dzdHIgItGB0LHQvtC5INC/0YDQuCDQv9GA0LjQvNC10L3QtdC90LjQuCDQtNC10LvRjNGC0YsiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMzYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMTcKIG1zZ2lkICJSZWNlaXZpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi0J/QvtC70YPRh9C10L3QuNC1INC+0LHRitC10LrRgtC+0LIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMzYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMTcKIG1zZ2lkICJJbmRleGluZyBvYmplY3RzIgogbXNnc3RyICLQmNC90LTQtdC60YHQuNGA0L7QstCw0L3QuNC1INC+0LHRitC10LrRgtC+0LIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNzAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNTEKIG1zZ2lkICJwYWNrIGlzIGNvcnJ1cHRlZCAoU0hBMSBtaXNtYXRjaCkiCiBtc2dzdHIgItC/0LDQutC10YIg0L/QvtCy0YDQtdC20LTQtdC9ICjQvdC10YHQvtC+0YLQstC10YLRgdGC0LLQuNC1IFNIQTEpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTc1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTU2CiBtc2dpZCAiY2Fubm90IGZzdGF0IHBhY2tmaWxlIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBmc3RhdCDQtNC70Y8g0YTQsNC50LvQsCDQv9Cw0LrQtdGC0LAiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNzgKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNTkKIG1zZ2lkICJwYWNrIGhhcyBqdW5rIGF0IHRoZSBlbmQiCiBtc2dzdHIgItGE0LDQudC7INC/0LDQutC10YLQsCDRgdC+0LTQtdGA0LbQuNGCINC80YPRgdC+0YAg0LIg0LrQvtC90YbQtSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE5MAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE3MQogbXNnaWQgImNvbmZ1c2lvbiBiZXlvbmQgaW5zYW5pdHkgaW4gcGFyc2VfcGFja19vYmplY3RzKCkiCiBtc2dzdHIgItCx0LXQt9GD0LzQvdCw0Y8g0L/Rg9GC0LDQvdC40YbQsCDQsiBwYXJzZV9wYWNrX29iamVjdHMoKSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTIxMworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE5NAogbXNnaWQgIlJlc29sdmluZyBkZWx0YXMiCiBtc2dzdHIgItCe0L/RgNC10LTQtdC70LXQvdC40LUg0LjQt9C80LXQvdC10L3QuNC5IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjI0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjQxMAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTIwNCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI0ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0aHJlYWQ6ICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINC/0L7RgtC+0Lo6ICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjY2CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjQ1CiBtc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSIKIG1zZ3N0ciAi0LHQtdC30YPQvNC90LDRjyDQv9GD0YLQsNC90LjRhtCwIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjcyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbXBsZXRlZCB3aXRoICVkIGxvY2FsIG9iamVjdCIKIG1zZ2lkX3BsdXJhbCAiY29tcGxldGVkIHdpdGggJWQgbG9jYWwgb2JqZWN0cyIKQEAgLTEwNzIxLDEyICsxMjgxNSwxMiBAQAogbXNnc3RyWzJdICLQt9Cw0LLQtdGA0YjQtdC90L4g0YEgJWQg0LvQvtC60LDQu9GM0L3Ri9C80Lgg0L7QsdGK0LXQutGC0LDQvNC4IgogbXNnc3RyWzNdICLQt9Cw0LLQtdGA0YjQtdC90L4g0YEgJWQg0LvQvtC60LDQu9GM0L3Ri9C80Lgg0L7QsdGK0LXQutGC0LDQvNC4IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjg0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuZXhwZWN0ZWQgdGFpbCBjaGVja3N1bSBmb3IgJXMgKGRpc2sgY29ycnVwdGlvbj8pIgogbXNnc3RyICLQndC10L7QttC40LTQsNC90L3QsNGPINC60L7QvdGC0YDQvtC70YzQvdCw0Y8g0YHRg9C80LzQsCDQsiDQutC+0L3RhtC1ICVzICjQtNC40YHQuiDQv9C+0LLRgNC10LbQtNC10L0/KSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI4OAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrIGhhcyAlZCB1bnJlc29sdmVkIGRlbHRhIgogbXNnaWRfcGx1cmFsICJwYWNrIGhhcyAlZCB1bnJlc29sdmVkIGRlbHRhcyIKQEAgLTEwNzM1LDU5ICsxMjgyOSw1OSBAQAogbXNnc3RyWzJdICLQv9Cw0LrQtdGCINGB0L7QtNC10YDQttC40YIgJWQg0L3QtdGA0LDQt9GA0LXRiNC10L3QvdGL0YUg0LTQtdC70YzRgiIKIG1zZ3N0clszXSAi0L/QsNC60LXRgiDRgdC+0LTQtdGA0LbQuNGCICVkINC90LXRgNCw0LfRgNC10YjQtdC90L3Ri9GFINC00LXQu9GM0YIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzMTIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgYXBwZW5kZWQgb2JqZWN0ICglZCkiCiBtc2dzdHIgItC90LXQu9GM0LfRjyDRgdC20LDRgtGMINC/0YDQuNGB0L7QtdC00LjQvdC10L3QvdGL0Lkg0L7QsdGK0LXQutGCICglZCkiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzODkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzNjgKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9jYWwgb2JqZWN0ICVzIGlzIGNvcnJ1cHQiCiBtc2dzdHIgItC70L7QutCw0LvRjNC90YvQuSDQvtCx0YrQtdC60YIgJXMg0L/QvtCy0YDQtdC20LTQtdC9IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDAzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2tmaWxlIG5hbWUgJyVzJyBkb2VzIG5vdCBlbmQgd2l0aCAnLnBhY2snIgogbXNnc3RyICLQuNC80Y8g0L/QsNC60LXRgtCwIMKrJXPCuyDQvdC1INC+0LrQsNC90YfQuNCy0LDQtdGC0YHRjyDQvdCwIMKrLnBhY2vCuyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQyOAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXMgZmlsZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNsb3NlIHdyaXR0ZW4gJXMgZmlsZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0NjAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzkKIG1zZ2lkICJlcnJvciB3aGlsZSBjbG9zaW5nIHBhY2sgZmlsZSIKIG1zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDQt9Cw0LrRgNGL0YLQuNC4INGE0LDQudC70LAg0L/QsNC60LXRgtCwIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDc0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDUzCiBtc2dpZCAiY2Fubm90IHN0b3JlIHBhY2sgZmlsZSIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0YXRgNCw0L3QuNGC0Ywg0YTQsNC50Lsg0L/QsNC60LXRgtCwIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDgyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDYxCiBtc2dpZCAiY2Fubm90IHN0b3JlIGluZGV4IGZpbGUiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtGF0YDQsNC90LjRgtGMINGE0LDQudC7INC40L3QtNC10LrRgdCwIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTI2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjY0OAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUwNSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2suaW5kZXh2ZXJzaW9uPSU8UFJJdTMyPiIKIG1zZ3N0ciAi0L/Qu9C+0YXQvtC5IHBhY2suaW5kZXh2ZXJzaW9uPSU8UFJJdTMyPiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU5NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgb3BlbiBleGlzdGluZyBwYWNrIGZpbGUgJyVzJyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDRgdGD0YnQtdGB0YLQstGD0Y7RidC40Lkg0YTQsNC50Lsg0L/QsNC60LXRgtCwIMKrJXPCuyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU5NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgb3BlbiBleGlzdGluZyBwYWNrIGlkeCBmaWxlIGZvciAnJXMnIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINGB0YPRidC10YHRgtCy0YPRjtGJ0LjQuSDRhNCw0LnQuyDQuNC90LTQtdC60YHQsCDQtNC70Y8gwqslc8K7IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjQ1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vbiBkZWx0YTogJWQgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJub24gZGVsdGE6ICVkIG9iamVjdHMiCkBAIC0xMDc5Niw3ICsxMjg5MCw3IEBACiBtc2dzdHJbMl0gItC90LUg0LTQtdC70YzRgtGLOiAlZCDQvtCx0YrQtdC60YLQvtCyIgogbXNnc3RyWzNdICLQvdC1INC00LXQu9GM0YLRizogJWQg0L7QsdGK0LXQutGC0L7QsiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY1MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTYzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjaGFpbiBsZW5ndGggPSAlZDogJWx1IG9iamVjdCIKIG1zZ2lkX3BsdXJhbCAiY2hhaW4gbGVuZ3RoID0gJWQ6ICVsdSBvYmplY3RzIgpAQCAtMTA4MDUsMzcgKzEyODk5LDMyIEBACiBtc2dzdHJbMl0gItC00LvQuNC90LAg0YbQtdC/0L7Rh9C60LggPSAlZDogJWx1INC+0LHRitC10LrRgtC+0LIiCiBtc2dzdHJbM10gItC00LvQuNC90LAg0YbQtdC/0L7Rh9C60LggPSAlZDogJWx1INC+0LHRitC10LrRgtC+0LIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2ODkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NjcKIG1zZ2lkICJDYW5ub3QgY29tZSBiYWNrIHRvIGN3ZCIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQstC10YDQvdGD0YLRjNGB0Y8g0LIg0YLQtdC60YPRidC40Lkg0YDQsNCx0L7Rh9C40Lkg0LrQsNGC0LDQu9C+0LMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDAgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0MwotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc1OSBidWlsdGluL2luZGV4LXBhY2suYzoxNzYzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzE2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MzUgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTczOQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgJXMiCiBtc2dzdHIgItC/0LvQvtGF0L7QuSAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc3OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc1NQogbXNnaWQgIi0tZml4LXRoaW4gY2Fubm90IGJlIHVzZWQgd2l0aG91dCAtLXN0ZGluIgogbXNnc3RyICItLWZpeC10aGluINC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LHQtdC3IC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3ODEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NTcKIG1zZ2lkICItLXN0ZGluIHJlcXVpcmVzIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgItC+0L/RhtC40Y8gLS1zdGRpbiDRgtGA0LXQsdGD0LXRgiDQvdCw0LvQuNGH0LjRjyDRgNC10L/QvtC30LjRgtC+0YDQuNGPIGdpdCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc2MwogbXNnaWQgIi0tdmVyaWZ5IHdpdGggbm8gcGFja2ZpbGUgbmFtZSBnaXZlbiIKIG1zZ3N0ciAiLS12ZXJpZnkg0LHQtdC3INGD0LrQsNC30LDQvdC40Y8g0LjQvNC10L3QuCDRhNCw0LnQu9CwINC/0LDQutC10YLQsCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTgzNyBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTgwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxODExIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1ODAKIG1zZ2lkICJmc2NrIGVycm9yIGluIHBhY2sgb2JqZWN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo1NQotIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3Qgc3RhdCAnJXMnIgotbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBzdGF0INC00LvRjyDCqyVzwrsiCi0KICM6IGJ1aWx0aW4vaW5pdC1kYi5jOjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGF0IHRlbXBsYXRlICclcyciCkBAIC0xMDg3Niw3MyArMTI5NjUsNzMgQEAKIG1zZ2lkICJub3QgY29weWluZyB0ZW1wbGF0ZXMgZnJvbSAnJXMnOiAlcyIKIG1zZ3N0ciAi0L3QtSDQutC+0L/QuNGA0YPRjiDRiNCw0LHQu9C+0L3RiyDQuNC3IMKrJXPCuzogJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMyOQorIzogYnVpbHRpbi9pbml0LWRiLmM6MzM0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBoYW5kbGUgZmlsZSB0eXBlICVkIgogbXNnc3RyICLQvdC1INGD0LTQsNC10YLRgdGPINC+0LHRgNCw0LHQvtGC0LDRgtGMINGE0LDQudC7INGC0LjQv9CwICVkIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzozMzIKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbW92ZSAlcyB0byAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQtdGC0YHRjyDQv9C10YDQtdC80LXRgdGC0LjRgtGMINGE0LDQudC7ICVzINCyICVzIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzozNDkgYnVpbHRpbi9pbml0LWRiLmM6MzUyCisjOiBidWlsdGluL2luaXQtZGIuYzozNTQgYnVpbHRpbi9pbml0LWRiLmM6MzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICIlcyDRg9C20LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQwNQorIzogYnVpbHRpbi9pbml0LWRiLmM6NDEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlaW5pdGlhbGl6ZWQgZXhpc3Rpbmcgc2hhcmVkIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAi0J/QtdGA0LXQuNC90LjRhtC40LDQu9C40LfQuNGA0L7QstCw0L0g0YHRg9GJ0LXRgdGC0LLRg9GO0YnQuNC5INC+0LHRidC40Lkg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuSBHaXQg0LIgJXMlc1xuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MDYKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWluaXRpYWxpemVkIGV4aXN0aW5nIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAi0J/QtdGA0LXQuNC90LjRhtC40LDQu9C40LfQuNGA0L7QstCw0L0g0YHRg9GJ0LXRgdGC0LLRg9GO0YnQuNC5INGA0LXQv9C+0LfQuNGC0L7RgNC40LkgR2l0INCyICVzJXNcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDEwCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW5pdGlhbGl6ZWQgZW1wdHkgc2hhcmVkIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAi0JjQvdC40YbQuNCw0LvQuNC30LjRgNC+0LLQsNC9INC/0YPRgdGC0L7QuSDQvtCx0YnQuNC5INGA0LXQv9C+0LfQuNGC0L7RgNC40LkgR2l0INCyICVzJXNcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDExCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW5pdGlhbGl6ZWQgZW1wdHkgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgogbXNnc3RyICLQmNC90LjRhtC40LDQu9C40LfQuNGA0L7QstCw0L0g0L/Rg9GB0YLQvtC5INGA0LXQv9C+0LfQuNGC0L7RgNC40LkgR2l0INCyICVzJXNcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDU5CisjOiBidWlsdGluL2luaXQtZGIuYzo0NjgKIG1zZ2lkICIiCiAiZ2l0IGluaXQgWy1xIHwgLS1xdWlldF0gWy0tYmFyZV0gWy0tdGVtcGxhdGU9PHRlbXBsYXRlLWRpcmVjdG9yeT5dICIKICJbLS1zaGFyZWRbPTxwZXJtaXNzaW9ucz5dXSBbPGRpcmVjdG9yeT5dIgogbXNnc3RyICJnaXQgaW5pdCBbLXEgfCAtLXF1aWV0XSBbLS1iYXJlXSBbLS10ZW1wbGF0ZT080LrQsNGC0LDQu9C+0LMt0YjQsNCx0LvQvtC90L7Qsj5dIFstLXNoYXJlZFs9PNC/0YDQsNCy0LAt0LTQvtGB0YLRg9C/0LA+XV0gWzzQutCw0YLQsNC70L7Qsz5dIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0ODIKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MQogbXNnaWQgInBlcm1pc3Npb25zIgogbXNnc3RyICLQv9GA0LDQstCwLdC00L7RgdGC0YPQv9CwIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0ODMKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MgogbXNnaWQgInNwZWNpZnkgdGhhdCB0aGUgZ2l0IHJlcG9zaXRvcnkgaXMgdG8gYmUgc2hhcmVkIGFtb25nc3Qgc2V2ZXJhbCB1c2VycyIKIG1zZ3N0ciAi0YPQutCw0LbQuNGC0LUsINC10YHQu9C4INGA0LXQv9C+0LfQuNGC0L7RgNC40LkgZ2l0INCx0YPQtNC10YIg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGM0YHRjyDQvdC10YHQutC+0LvRjNC60LjQvNC4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRj9C80LgiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUxNyBidWlsdGluL2luaXQtZGIuYzo1MjIKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUyNiBidWlsdGluL2luaXQtZGIuYzo1MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG1rZGlyICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBta2RpciAlcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTI2CisjOiBidWlsdGluL2luaXQtZGIuYzo1MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoZGlyIHRvICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBjaGRpciDQsiAlcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTQ3CisjOiBidWlsdGluL2luaXQtZGIuYzo1NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiVzIChvciAtLXdvcmstdHJlZT08ZGlyZWN0b3J5Pikgbm90IGFsbG93ZWQgd2l0aG91dCBzcGVjaWZ5aW5nICVzIChvciAtLWdpdC0iCiAiZGlyPTxkaXJlY3Rvcnk+KSIKIG1zZ3N0ciAiJXMgKNC40LvQuCAtLXdvcmstdHJlZT080LrQsNGC0LDQu9C+0LM+KSDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINCx0LXQtyDRg9C60LDQt9Cw0L3QuNGPICVzICjQuNC70LggLS1naXQtZGlyPTzQutCw0YLQsNC70L7Qsz4pIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo1NzUKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgYWNjZXNzIHdvcmsgdHJlZSAnJXMnIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LTQvtGB0YLRg9C/INC6INGA0LDQsdC+0YfQtdC80YMg0LrQsNGC0LDQu9C+0LPRgyDCqyVzwrsiCkBAIC0xMDk1Myw1MDUgKzEzMDQyLDU1NSBAQAogIjx0b2tlbj5bKD18Oik8dmFsdWU+XSkuLi5dIFs8ZmlsZT4uLi5dIgogbXNnc3RyICJnaXQgaW50ZXJwcmV0LXRyYWlsZXJzIFstLWluLXBsYWNlXSBbLS10cmltLWVtcHR5XSBbKC0tdHJhaWxlciA80LrQu9GO0Yc+Wyg9fDopPNC30L3QsNGH0LXQvdC40LU+XSnigKZdIFs80YTQsNC50Ls+4oCmXSIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5MgorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NAogbXNnaWQgImVkaXQgZmlsZXMgaW4gcGxhY2UiCiBtc2dzdHIgItGA0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMINGE0LDQudC70Ysg0L3QsCDQvNC10YHRgtC1IgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjkzCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk1CiBtc2dpZCAidHJpbSBlbXB0eSB0cmFpbGVycyIKIG1zZ3N0ciAi0YPQtNCw0LvRj9GC0Ywg0L/Rg9GB0YLRi9C1INC30LDQstC10YDRiNC40YLQtdC70LgiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTYKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTgKIG1zZ2lkICJ3aGVyZSB0byBwbGFjZSB0aGUgbmV3IHRyYWlsZXIiCiBtc2dzdHIgItCz0LTQtSDQv9C+0LzQtdGB0YLQuNGC0Ywg0L3QvtCy0YvQuSDQt9Cw0LLQtdGA0YjQuNGC0LXQu9GMIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk4CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMAogbXNnaWQgImFjdGlvbiBpZiB0cmFpbGVyIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICLQtNC10LnRgdGC0LLQuNC1LCDQtdGB0LvQuCDQt9Cw0LLQtdGA0YjQuNGC0LXQu9GMINGD0LbQtSDRgdGD0YnQtdGB0YLQstGD0LXRgiIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDAKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAyCiBtc2dpZCAiYWN0aW9uIGlmIHRyYWlsZXIgaXMgbWlzc2luZyIKIG1zZ3N0ciAi0LTQtdC50YHRgtCy0LjQtSwg0LXRgdC70Lgg0LfQsNCy0LXRgNGI0LjRgtC10LvRjCDQvdC1INGB0YPRidC10YHRgtCy0YPQtdGCIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMgorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDQKIG1zZ2lkICJvdXRwdXQgb25seSB0aGUgdHJhaWxlcnMiCiBtc2dzdHIgItCy0YvQstC10YHRgtC4INGC0L7Qu9GM0LrQviDQt9Cw0LLQtdGA0YjQuNGC0LXQu9C4IgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDUKIG1zZ2lkICJkbyBub3QgYXBwbHkgY29uZmlnIHJ1bGVzIgogbXNnc3RyICLQvdC1INC/0YDQuNC80LXQvdGP0YLRjCDQv9GA0LDQstC40LvQsCDQuNC3INGE0LDQudC70LAg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC4IgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDYKIG1zZ2lkICJqb2luIHdoaXRlc3BhY2UtY29udGludWVkIHZhbHVlcyIKIG1zZ3N0ciAi0L7QsdGK0LXQtNC40L3QuNGC0Ywg0LfQvdCw0YfQtdC90LjRjyDRgNCw0LfQtNC10LvQtdC90L3Ri9C1INC/0YDQvtCx0LXQu9C+0LwiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA1CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNwogbXNnaWQgInNldCBwYXJzaW5nIG9wdGlvbnMiCiBtc2dzdHIgItGD0LrQsNC30LDQvdC40LUg0L7Qv9GG0LjQuSDRgNCw0LfQsdC+0YDQsCIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDcKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA5Cittc2dpZCAiZG8gbm90IHRyZWF0IC0tLSBzcGVjaWFsbHkiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTAKIG1zZ2lkICJ0cmFpbGVyIgogbXNnc3RyICLQt9Cw0LLQtdGA0YjQuNGC0LXQu9GMIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwOAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTEKIG1zZ2lkICJ0cmFpbGVyKHMpIHRvIGFkZCIKIG1zZ3N0ciAi0LfQsNCy0LXRgNGI0LjRgtC10LvQuCDQtNC70Y8g0LTQvtCx0LDQstC70LXQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTE3CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEyMAogbXNnaWQgIi0tdHJhaWxlciB3aXRoIC0tb25seS1pbnB1dCBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLXRyYWlsZXIg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+INGBIC0tb25seS1pbnB1dCDQvdC1INC40LzQtdC10YIg0YHQvNGL0YHQu9CwIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEyNworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMzAKIG1zZ2lkICJubyBpbnB1dCBmaWxlIGdpdmVuIGZvciBpbi1wbGFjZSBlZGl0aW5nIgogbXNnc3RyICLQvdC40YfQtdCz0L4g0L3QtSDQv9C10YDQtdC00LDQvdC+LCDQtNC70Y8g0YDQtdC00LDQutGC0LjRgNC+0LLQsNC90LjRjyDRhNCw0LnQu9C+0LIg0L3QsCDQvNC10YHRgtC1IgogCi0jOiBidWlsdGluL2xvZy5jOjUxCisjOiBidWlsdGluL2xvZy5jOjU1CiBtc2dpZCAiZ2l0IGxvZyBbPG9wdGlvbnM+XSBbPHJldmlzaW9uLXJhbmdlPl0gW1stLV0gPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IGxvZyBbPNC+0L/RhtC40Lg+XSBbPNC00LjQsNC/0LDQt9C+0L0t0YDQtdC00LDQutGG0LjQuT5dIFtbLS1dIDzQv9GD0YLRjD7igKZdIgogCi0jOiBidWlsdGluL2xvZy5jOjUyCisjOiBidWlsdGluL2xvZy5jOjU2CiBtc2dpZCAiZ2l0IHNob3cgWzxvcHRpb25zPl0gPG9iamVjdD4uLi4iCiBtc2dzdHIgImdpdCBzaG93IFs80L7Qv9GG0LjQuD5dIDzQvtCx0YrQtdC60YI+4oCmIgogCi0jOiBidWlsdGluL2xvZy5jOjk2CisjOiBidWlsdGluL2xvZy5jOjEwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIC0tZGVjb3JhdGUgb3B0aW9uOiAlcyIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INC/0LDRgNCw0LzQtdGC0YAg0LTQu9GPIC0tZGVjb3JhdGU6ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NwotbXNnaWQgInN1cHByZXNzIGRpZmYgb3V0cHV0IgotbXNnc3RyICLQvdC1INCy0YvQstC+0LTQuNGC0Ywg0YDQsNC30LvQuNGH0LjRjyIKLQotIzogYnVpbHRpbi9sb2cuYzoxNTgKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4CiBtc2dpZCAic2hvdyBzb3VyY2UiCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0LjRgdGC0L7Rh9C90LjQuiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5CiBtc2dpZCAiVXNlIG1haWwgbWFwIGZpbGUiCiBtc2dzdHIgItCY0YHQv9C+0LvRjNC30L7QstCw0YLRjCDRhNCw0LnQuyDRgdC+0L7RgtCy0LXRgtGB0YLQstC40Y8g0L/QvtGH0YLQvtCy0YvRhSDQsNC00YDQtdGB0L7QsiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjEKKyM6IGJ1aWx0aW4vbG9nLmM6MTcxCiBtc2dpZCAib25seSBkZWNvcmF0ZSByZWZzIHRoYXQgbWF0Y2ggPHBhdHRlcm4+IgogbXNnc3RyICLQtNC10LrQvtGA0LjRgNC+0LLQsNGC0Ywg0YLQvtC70YzQutC+INGB0YHRi9C70LrQuCDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0Y7RidC40LUgPNGI0LDQsdC70L7QvdGDPiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjMKKyM6IGJ1aWx0aW4vbG9nLmM6MTczCiBtc2dpZCAiZG8gbm90IGRlY29yYXRlIHJlZnMgdGhhdCBtYXRjaCA8cGF0dGVybj4iCiBtc2dzdHIgItC90LUg0LTQtdC60L7RgNC40YDQvtCy0LDRgtGMINGB0YHRi9C70LrQuCDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0Y7RidC40LUgPNGI0LDQsdC70L7QvdGDPiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjQKKyM6IGJ1aWx0aW4vbG9nLmM6MTc0CiBtc2dpZCAiZGVjb3JhdGUgb3B0aW9ucyIKIG1zZ3N0ciAi0L7Qv9GG0LjQuCDRhNC+0YDQvNCw0YLQsCDQstGL0LLQvtC00LAg0YHRgdGL0LvQvtC6IgogCi0jOiBidWlsdGluL2xvZy5jOjE2NworIzogYnVpbHRpbi9sb2cuYzoxNzcKIG1zZ2lkICJQcm9jZXNzIGxpbmUgcmFuZ2UgbixtIGluIGZpbGUsIGNvdW50aW5nIGZyb20gMSIKIG1zZ3N0ciAi0J7QsdGA0LDQsdC+0YLQsNGC0Ywg0LTQuNCw0L/QsNC30L7QvSDRgdGC0YDQvtC6IG4sbSDQuNC3INGE0LDQudC70LAsINC90LDRh9C40L3QsNGPINGBIDEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MjY1CisjOiBidWlsdGluL2xvZy5jOjI3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJGaW5hbCBvdXRwdXQ6ICVkICVzXG4iCiBtc2dzdHIgItCk0LjQvdCw0LvRjNC90YvQuSDQstGL0LLQvtC0OiAlZCAlc1xuIgogCi0jOiBidWlsdGluL2xvZy5jOjUxNgorIzogYnVpbHRpbi9sb2cuYzo1MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IHNob3cgJXM6IGJhZCBmaWxlIgogbXNnc3RyICJnaXQgc2hvdyAlczog0L/Qu9C+0YXQvtC5INGE0LDQudC7IgogCi0jOiBidWlsdGluL2xvZy5jOjUzMSBidWlsdGluL2xvZy5jOjYyNQorIzogYnVpbHRpbi9sb2cuYzo1NDQgYnVpbHRpbi9sb2cuYzo2MzgKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgotbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDQvtCx0YrQtdC60YIgJXMiCittc2dpZCAiY291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgorbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NjQ5CisjOiBidWlsdGluL2xvZy5jOjY2MwogIywgYy1mb3JtYXQKLW1zZ2lkICJVbmtub3duIHR5cGU6ICVkIgotbXNnc3RyICLQndC10LjQt9Cy0LXRgdGC0L3Ri9C5INGC0LjQvyDQvtCx0YrQtdC60YLQsDogJWQiCittc2dpZCAidW5rbm93biB0eXBlOiAlZCIKK21zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjc3MAorIzogYnVpbHRpbi9sb2cuYzo3ODQKIG1zZ2lkICJmb3JtYXQuaGVhZGVycyB3aXRob3V0IHZhbHVlIgogbXNnc3RyICLQsiBmb3JtYXQuaGVhZGVycyDQvdC1INGD0LrQsNC30LDQvdC+INC30L3QsNGH0LXQvdC40LUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6ODcxCisjOiBidWlsdGluL2xvZy5jOjg4NQogbXNnaWQgIm5hbWUgb2Ygb3V0cHV0IGRpcmVjdG9yeSBpcyB0b28gbG9uZyIKIG1zZ3N0ciAi0YHQu9C40YjQutC+0Lwg0LTQu9C40L3QvdC+0LUg0LjQvNGPINCy0YvRhdC+0LTQvdC+0LPQviDQutCw0YLQsNC70L7Qs9CwIgogCi0jOiBidWlsdGluL2xvZy5jOjg4NworIzogYnVpbHRpbi9sb2cuYzo5MDEKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ2Fubm90IG9wZW4gcGF0Y2ggZmlsZSAlcyIKLW1zZ3N0ciAi0J3RgyDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDRhNCw0LnQuyDQuNC30LzQtdC90LXQvdC40LkgJXMiCittc2dpZCAiY2Fubm90IG9wZW4gcGF0Y2ggZmlsZSAlcyIKK21zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjkwNAotbXNnaWQgIk5lZWQgZXhhY3RseSBvbmUgcmFuZ2UuIgotbXNnc3RyICLQndGD0LbQtdC9INGC0L7Qu9GM0LrQviDQvtC00LjQvSDQtNC40LDQv9Cw0LfQvtC9LiIKKyM6IGJ1aWx0aW4vbG9nLmM6OTE4Cittc2dpZCAibmVlZCBleGFjdGx5IG9uZSByYW5nZSIKK21zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjkxNAotbXNnaWQgIk5vdCBhIHJhbmdlLiIKLW1zZ3N0ciAi0J3QtSDRj9Cy0LvRj9C10YLRgdGPINC00LjQsNC/0LDQt9C+0L3QvtC8LiIKKyM6IGJ1aWx0aW4vbG9nLmM6OTI4Cittc2dpZCAibm90IGEgcmFuZ2UiCittc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxMDIwCi1tc2dpZCAiQ292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKLW1zZ3N0ciAi0KHQvtC/0YDQvtCy0L7QtNC40YLQtdC70YzQvdC+0LUg0L/QuNGB0YzQvNC+INC00L7Qu9C20L3QviDQsdGL0YLRjCDQsiDRhNC+0YDQvNCw0YLQtSDRjdC70LXQutGC0YDQvtC90L3QvtC5INC/0L7Rh9GC0YsiCisjOiBidWlsdGluL2xvZy5jOjEwNTEKK21zZ2lkICJjb3ZlciBsZXR0ZXIgbmVlZHMgZW1haWwgZm9ybWF0IgorbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTEwMQorIzogYnVpbHRpbi9sb2cuYzoxMDU3Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBjb3Zlci1sZXR0ZXIgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjExMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5zYW5lIGluLXJlcGx5LXRvOiAlcyIKIG1zZ3N0ciAi0L7RiNC40LHQutCwINCyINC/0L7Qu9C1IGluLXJlcGx5LXRvOiAlcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxMTI4CisjOiBidWlsdGluL2xvZy5jOjExNjMKIG1zZ2lkICJnaXQgZm9ybWF0LXBhdGNoIFs8b3B0aW9ucz5dIFs8c2luY2U+IHwgPHJldmlzaW9uLXJhbmdlPl0iCiBtc2dzdHIgImdpdCBmb3JtYXQtcGF0Y2ggWzzQvtC/0YbQuNC4Pl0gWzzQvdCw0YfQuNC90LDRjy3RgT4gfCA80LTQuNCw0L/QsNC30L7QvS3RgNC10LTQsNC60YbQuNC5Pl0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTE3OAotbXNnaWQgIlR3byBvdXRwdXQgZGlyZWN0b3JpZXM/IgotbXNnc3RyICLQlNCy0LAg0LLRi9GF0L7QtNC90YvRhSDQutCw0YLQsNC70L7Qs9CwPyIKKyM6IGJ1aWx0aW4vbG9nLmM6MTIyMQorbXNnaWQgInR3byBvdXRwdXQgZGlyZWN0b3JpZXM/IgorbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTI4NSBidWlsdGluL2xvZy5jOjE5NDUgYnVpbHRpbi9sb2cuYzoxOTQ3IGJ1aWx0aW4vbG9nLmM6MTk1OQorIzogYnVpbHRpbi9sb2cuYzoxMzMyIGJ1aWx0aW4vbG9nLmM6MjA3NiBidWlsdGluL2xvZy5jOjIwNzggYnVpbHRpbi9sb2cuYzoyMDkwCiAjLCBjLWZvcm1hdAotbXNnaWQgIlVua25vd24gY29tbWl0ICVzIgotbXNnc3RyICLQndC10LjQt9Cy0LXRgdGC0L3Ri9C5INC60L7QvNC80LjRgiAlcyIKK21zZ2lkICJ1bmtub3duIGNvbW1pdCAlcyIKK21zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjEyOTUgYnVpbHRpbi9ub3Rlcy5jOjg4OSBidWlsdGluL3RhZy5jOjUyNAorIzogYnVpbHRpbi9sb2cuYzoxMzQyIGJ1aWx0aW4vcmVwbGFjZS5jOjU4IGJ1aWx0aW4vcmVwbGFjZS5jOjIwNworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjEwCiAjLCBjLWZvcm1hdAotbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgotbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINGA0LDQt9GA0LXRiNC40YLRjCDCqyVzwrsg0LrQsNC6INGB0YHRi9C70LrRgy4iCittc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZiIKK21zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMDAKLW1zZ2lkICJDb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlLiIKLW1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INGC0L7Rh9C90YPRjiDQsdCw0LfRgyDRgdC70LjRj9C90LjRjy4iCisjOiBidWlsdGluL2xvZy5jOjEzNDcKK21zZ2lkICJjb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlIgorbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTMwNAorIzogYnVpbHRpbi9sb2cuYzoxMzUxCiBtc2dpZCAiIgotIkZhaWxlZCB0byBnZXQgdXBzdHJlYW0sIGlmIHlvdSB3YW50IHRvIHJlY29yZCBiYXNlIGNvbW1pdCBhdXRvbWF0aWNhbGx5LFxuIgorImZhaWxlZCB0byBnZXQgdXBzdHJlYW0sIGlmIHlvdSB3YW50IHRvIHJlY29yZCBiYXNlIGNvbW1pdCBhdXRvbWF0aWNhbGx5LFxuIgogInBsZWFzZSB1c2UgZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10byB0byB0cmFjayBhIHJlbW90ZSBicmFuY2guXG4iCi0iT3IgeW91IGNvdWxkIHNwZWNpZnkgYmFzZSBjb21taXQgYnkgLS1iYXNlPTxiYXNlLWNvbW1pdC1pZD4gbWFudWFsbHkuIgotbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LLRi9GI0LXRgdGC0L7Rj9GJ0YPRjiDQstC10YLQutGDLiDQldGB0LvQuCDQstGLINGF0L7RgtC40YLQtSDQt9Cw0L/QuNGB0LDRgtGMINCx0LDQt9C+0LLRi9C5INC60L7QvNC80LjRgiDQsNCy0YLQvtC80LjRgtC40YfQtdGB0LrQuCwg0YLQviDQuNGB0L/QvtC70YzQt9GD0LnRgtC1IGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG8g0LTQu9GPINC+0YLRgdC70LXQttC40LLQsNC90LjRjyDQstC90LXRiNC90LXQuSDQstC10YLQutC4Llxu0JjQu9C4INC20LUg0LLRiyDQvNC+0LbQtdGC0LUg0YPQutCw0LfQsNGC0Ywg0LHQsNC30L7QstGL0Lkg0LrQvtC80LzQuNGCINGD0LrQsNC30LDQvdC40LXQvCAtLWJhc2U9PNC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGALdCx0LDQt9C+0LLQvtCz0L4t0LrQvtC80LzQuNGC0LA+INCy0YDRg9GH0L3Rg9GOLiIKKyJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseSIKK21zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMjQKLW1zZ2lkICJGYWlsZWQgdG8gZmluZCBleGFjdCBtZXJnZSBiYXNlIgotbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC90LDQudGC0Lgg0YLQvtGH0L3Rg9GOINCx0LDQt9GDINGB0LvQuNGP0L3QuNGPIgorIzogYnVpbHRpbi9sb2cuYzoxMzcxCittc2dpZCAiZmFpbGVkIHRvIGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKK21zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMzUKKyM6IGJ1aWx0aW4vbG9nLmM6MTM4MgogbXNnaWQgImJhc2UgY29tbWl0IHNob3VsZCBiZSB0aGUgYW5jZXN0b3Igb2YgcmV2aXNpb24gbGlzdCIKIG1zZ3N0ciAi0LHQsNC30L7QstGL0Lkg0LrQvtC80LzQuNGCINC00L7Qu9C20LXQvSDQsdGL0YLRjCDQv9GA0LXQtNC60L7QvCDRgdC/0LjRgdC60LAg0YDQtdC00LDQutGG0LjQuSIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzM5CisjOiBidWlsdGluL2xvZy5jOjEzODYKIG1zZ2lkICJiYXNlIGNvbW1pdCBzaG91bGRuJ3QgYmUgaW4gcmV2aXNpb24gbGlzdCIKIG1zZ3N0ciAi0LHQsNC30L7QstGL0Lkg0LrQvtC80LzQuNGCINC90LUg0LTQvtC70LbQtdC9INCx0YvRgtGMINCyINGB0L/QuNGB0LrQtSDRgNC10LTQsNC60YbQuNC5IgogCi0jOiBidWlsdGluL2xvZy5jOjEzOTIKKyM6IGJ1aWx0aW4vbG9nLmM6MTQzOQogbXNnaWQgImNhbm5vdCBnZXQgcGF0Y2ggaWQiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQv9Cw0YLRh9CwIgogCi0jOiBidWlsdGluL2xvZy5jOjE0NTIKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ5MQorbXNnaWQgImZhaWxlZCB0byBpbmZlciByYW5nZS1kaWZmIHJhbmdlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE1MzYKIG1zZ2lkICJ1c2UgW1BBVENIIG4vbV0gZXZlbiB3aXRoIGEgc2luZ2xlIHBhdGNoIgogbXNnc3RyICLQstGL0LLQvtC00LjRgtGMIFtQQVRDSCBuL21dINC00LDQttC1INC60L7Qs9C00LAg0L7QtNC40L0g0L/QsNGC0YciCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTQ1NQorIzogYnVpbHRpbi9sb2cuYzoxNTM5CiBtc2dpZCAidXNlIFtQQVRDSF0gZXZlbiB3aXRoIG11bHRpcGxlIHBhdGNoZXMiCiBtc2dzdHIgItCy0YvQstC+0LTQuNGC0YwgW1BBVENIXSDQtNCw0LbQtSDQutC+0LPQtNCwINC90LXRgdC60L7Qu9GM0LrQviDQv9Cw0YLRh9C10LkiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTQ1OQorIzogYnVpbHRpbi9sb2cuYzoxNTQzCiBtc2dpZCAicHJpbnQgcGF0Y2hlcyB0byBzdGFuZGFyZCBvdXQiCiBtc2dzdHIgItCy0YvQstC+0LTQuNGC0Ywg0L/QsNGC0YfQuCDQvdCwINGB0YLQsNC90LTQsNGA0YLQvdGL0Lkg0LLRi9Cy0L7QtCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDYxCisjOiBidWlsdGluL2xvZy5jOjE1NDUKIG1zZ2lkICJnZW5lcmF0ZSBhIGNvdmVyIGxldHRlciIKIG1zZ3N0ciAi0YHQvtC30LTQsNGC0Ywg0YHQvtC/0YDQvtCy0L7QtNC40YLQtdC70YzQvdC+0LUg0L/QuNGB0YzQvNC+IgogCi0jOiBidWlsdGluL2xvZy5jOjE0NjMKKyM6IGJ1aWx0aW4vbG9nLmM6MTU0NwogbXNnaWQgInVzZSBzaW1wbGUgbnVtYmVyIHNlcXVlbmNlIGZvciBvdXRwdXQgZmlsZSBuYW1lcyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC/0YDQvtGB0YLRg9GOINC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLRjCDRh9C40YHQtdC7INC00LvRjyDQuNC80LXQvSDQstGL0YXQvtC00L3Ri9GFINGE0LDQudC70L7QsiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDY0CisjOiBidWlsdGluL2xvZy5jOjE1NDgKIG1zZ2lkICJzZngiCiBtc2dzdHIgItGB0YPRhNGE0LjQutGBIgogCi0jOiBidWlsdGluL2xvZy5jOjE0NjUKKyM6IGJ1aWx0aW4vbG9nLmM6MTU0OQogbXNnaWQgInVzZSA8c2Z4PiBpbnN0ZWFkIG9mICcucGF0Y2gnIgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YHRg9GE0YTQuNC60YEgPNGB0YPRhNGE0LjQutGBPiDQstC80LXRgdGC0L4gwqsucGF0Y2jCuyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDY3CisjOiBidWlsdGluL2xvZy5jOjE1NTEKIG1zZ2lkICJzdGFydCBudW1iZXJpbmcgcGF0Y2hlcyBhdCA8bj4gaW5zdGVhZCBvZiAxIgogbXNnc3RyICLQvdCw0YfQsNGC0Ywg0L3Rg9C80LXRgNCw0YbQuNGOINC/0LDRgtGH0LXQuSDRgSA8bj4sINCwINC90LUg0YEgMSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDY5CisjOiBidWlsdGluL2xvZy5jOjE1NTMKIG1zZ2lkICJtYXJrIHRoZSBzZXJpZXMgYXMgTnRoIHJlLXJvbGwiCiBtc2dzdHIgItC/0L7QvNC10YLQuNGC0Ywg0YHQtdGA0LjRjiDQutCw0Log0Y3QvdC90YPRjiDQv9C+0L/Ri9GC0LrRgyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDcxCisjOiBidWlsdGluL2xvZy5jOjE1NTUKIG1zZ2lkICJVc2UgW1JGQyBQQVRDSF0gaW5zdGVhZCBvZiBbUEFUQ0hdIgogbXNnc3RyICLQmNGB0L/QvtC70YzQt9C+0LLQsNGC0YwgW1JGQyBQQVRDSF0g0LLQvNC10YHRgtC+IFtQQVRDSF0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTQ3NAorIzogYnVpbHRpbi9sb2cuYzoxNTU4CiBtc2dpZCAiVXNlIFs8cHJlZml4Pl0gaW5zdGVhZCBvZiBbUEFUQ0hdIgogbXNnc3RyICLQmNGB0L/QvtC70YzQt9C+0LLQsNGC0YwgWzzQv9GA0LXRhNC40LrRgT5dINCy0LzQtdGB0YLQviBbUEFUQ0hdIgogCi0jOiBidWlsdGluL2xvZy5jOjE0NzcKKyM6IGJ1aWx0aW4vbG9nLmM6MTU2MQogbXNnaWQgInN0b3JlIHJlc3VsdGluZyBmaWxlcyBpbiA8ZGlyPiIKIG1zZ3N0ciAi0YHQvtGF0YDQsNC90LjRgtGMINGA0LXQt9GD0LvRjNGC0LjRgNGD0Y7RidC40LUg0YTQsNC50LvRiyDQsiA80LrQsNGC0LDQu9C+0LM+IgogCi0jOiBidWlsdGluL2xvZy5jOjE0ODAKKyM6IGJ1aWx0aW4vbG9nLmM6MTU2NAogbXNnaWQgImRvbid0IHN0cmlwL2FkZCBbUEFUQ0hdIgogbXNnc3RyICLQvdC1INC+0LHRgNC10LfQsNGC0Ywv0LTQvtCx0LDQstC70Y/RgtGMIFtQQVRDSF0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTQ4MworIzogYnVpbHRpbi9sb2cuYzoxNTY3CiBtc2dpZCAiZG9uJ3Qgb3V0cHV0IGJpbmFyeSBkaWZmcyIKLW1zZ3N0ciAi0L3QtSDQstGL0LLQvtC00LjRgtGMINC00LLQvtC40YfQvdGL0LUg0YDQsNC30LvQuNGH0LjRjyIKK21zZ3N0ciAi0L3QtSDQstGL0LLQvtC00LjRgtGMINC00LLQvtC40YfQvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPIgogCi0jOiBidWlsdGluL2xvZy5jOjE0ODUKKyM6IGJ1aWx0aW4vbG9nLmM6MTU2OQogbXNnaWQgIm91dHB1dCBhbGwtemVybyBoYXNoIGluIEZyb20gaGVhZGVyIgotbXNnc3RyICLQstGL0LLQvtC00LjRgtGMINC90YPQu9C10LLRg9GOINGF0Y3RiC3RgdGD0LzQvNGDINCyINC30LDQs9C+0LvQvtCy0LrQtSBGcm9tIgorbXNnc3RyICLQstGL0LLQvtC00LjRgtGMINC90YPQu9C10LLRg9GOINGF0LXRiC3RgdGD0LzQvNGDINCyINC30LDQs9C+0LvQvtCy0LrQtSBGcm9tIgogCi0jOiBidWlsdGluL2xvZy5jOjE0ODcKKyM6IGJ1aWx0aW4vbG9nLmM6MTU3MQogbXNnaWQgImRvbid0IGluY2x1ZGUgYSBwYXRjaCBtYXRjaGluZyBhIGNvbW1pdCB1cHN0cmVhbSIKIG1zZ3N0ciAi0L3QtSDQstC60LvRjtGH0LDRgtGMINC/0LDRgtGHLCDQtdGB0LvQuCDQutC+0LzQvNC40YIg0YPQttC1INC10YHRgtGMINCyINCy0YvRiNC10YHRgtC+0Y/RidC10Lkg0LLQtdGC0LrQtSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDg5CisjOiBidWlsdGluL2xvZy5jOjE1NzMKIG1zZ2lkICJzaG93IHBhdGNoIGZvcm1hdCBpbnN0ZWFkIG9mIGRlZmF1bHQgKHBhdGNoICsgc3RhdCkiCiBtc2dzdHIgItCy0YvQstC+0LTQuNGC0Ywg0LIg0YTQvtGA0LzQsNGC0LUg0L/QsNGC0YfQsCwg0LAg0L3QtSDQsiDRgdGC0LDQvdC00LDRgNGC0L3QvtC8ICjQv9Cw0YLRhyArINGB0YLQsNGC0LjRgdGC0LjQutCwKSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDkxCisjOiBidWlsdGluL2xvZy5jOjE1NzUKIG1zZ2lkICJNZXNzYWdpbmciCiBtc2dzdHIgItCf0LXRgNC10LTQsNGH0LAg0YHQvtC+0LHRidC10L3QuNC5IgogCi0jOiBidWlsdGluL2xvZy5jOjE0OTIKKyM6IGJ1aWx0aW4vbG9nLmM6MTU3NgogbXNnaWQgImhlYWRlciIKIG1zZ3N0ciAi0LfQsNCz0L7Qu9C+0LLQvtC6IgogCi0jOiBidWlsdGluL2xvZy5jOjE0OTMKKyM6IGJ1aWx0aW4vbG9nLmM6MTU3NwogbXNnaWQgImFkZCBlbWFpbCBoZWFkZXIiCiBtc2dzdHIgItC00L7QsdCw0LLQuNGC0Ywg0LfQsNCz0L7Qu9C+0LLQvtC6INGB0L7QvtCx0YnQtdC90LjRjyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDk0IGJ1aWx0aW4vbG9nLmM6MTQ5NgorIzogYnVpbHRpbi9sb2cuYzoxNTc4IGJ1aWx0aW4vbG9nLmM6MTU4MAogbXNnaWQgImVtYWlsIgogbXNnc3RyICLQv9C+0YfRgtCwIgogCi0jOiBidWlsdGluL2xvZy5jOjE0OTQKKyM6IGJ1aWx0aW4vbG9nLmM6MTU3OAogbXNnaWQgImFkZCBUbzogaGVhZGVyIgogbXNnc3RyICLQtNC+0LHQsNCy0LjRgtGMINC30LDQs9C+0LvQvtCy0L7QuiBUbzoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTQ5NgorIzogYnVpbHRpbi9sb2cuYzoxNTgwCiBtc2dpZCAiYWRkIENjOiBoZWFkZXIiCiBtc2dzdHIgItC00L7QsdCw0LLQuNGC0Ywg0LfQsNCz0L7Qu9C+0LLQvtC6IENjOiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDk4CisjOiBidWlsdGluL2xvZy5jOjE1ODIKIG1zZ2lkICJpZGVudCIKIG1zZ3N0ciAi0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTQ5OQorIzogYnVpbHRpbi9sb2cuYzoxNTgzCiBtc2dpZCAic2V0IEZyb20gYWRkcmVzcyB0byA8aWRlbnQ+IChvciBjb21taXR0ZXIgaWRlbnQgaWYgYWJzZW50KSIKIG1zZ3N0ciAi0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0LDQtNGA0LXRgSDQvtGC0L/RgNCw0LLQuNGC0LXQu9GPINC90LAgPNC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGAPiAo0LjQu9C4INC90LAg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LrQvtC80LzQuNGC0LXRgNCwLCDQtdGB0LvQuCDQvtGC0YHRg9GC0YHRgtCy0YPQtdGCKSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTAxCisjOiBidWlsdGluL2xvZy5jOjE1ODUKIG1zZ2lkICJtZXNzYWdlLWlkIgogbXNnc3RyICLQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgC3RgdC+0L7QsdGJ0LXQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUwMgorIzogYnVpbHRpbi9sb2cuYzoxNTg2CiBtc2dpZCAibWFrZSBmaXJzdCBtYWlsIGEgcmVwbHkgdG8gPG1lc3NhZ2UtaWQ+IgogbXNnc3RyICLRgdC00LXQu9Cw0YLRjCDQv9C10YDQstC+0LUg0L/QuNGB0YzQvNC+INC+0YLQstC10YLQvtC8INC90LAgPNC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGALdGB0L7QvtCx0YnQtdC90LjRjz4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUwMyBidWlsdGluL2xvZy5jOjE1MDYKKyM6IGJ1aWx0aW4vbG9nLmM6MTU4NyBidWlsdGluL2xvZy5jOjE1OTAKIG1zZ2lkICJib3VuZGFyeSIKIG1zZ3N0ciAi0LLQu9C+0LbQtdC90LjQtSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTA0CisjOiBidWlsdGluL2xvZy5jOjE1ODgKIG1zZ2lkICJhdHRhY2ggdGhlIHBhdGNoIgogbXNnc3RyICLQv9GA0LjQu9C+0LbQuNGC0Ywg0L/QsNGC0YciCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUwNworIzogYnVpbHRpbi9sb2cuYzoxNTkxCiBtc2dpZCAiaW5saW5lIHRoZSBwYXRjaCIKIG1zZ3N0ciAi0LLQutC70Y7Rh9C40YLRjCDQv9Cw0YLRhyDQsiDRgtC10LrRgdGCINC/0LjRgdGM0LzQsCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTExCisjOiBidWlsdGluL2xvZy5jOjE1OTUKIG1zZ2lkICJlbmFibGUgbWVzc2FnZSB0aHJlYWRpbmcsIHN0eWxlczogc2hhbGxvdywgZGVlcCIKIG1zZ3N0ciAi0LLQutC70Y7Rh9C40YLRjCDQsiDQv9C40YHRjNC80LDRhSDQuNC10YDQsNGA0YXQuNGH0L3QvtGB0YLRjCwg0YHRgtC40LvQuDogc2hhbGxvdyAo0YfQsNGB0YLQuNGH0L3Rg9GOKSwgZGVlcCAo0LPQu9GD0LHQvtC60YPRjikiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUxMworIzogYnVpbHRpbi9sb2cuYzoxNTk3CiBtc2dpZCAic2lnbmF0dXJlIgogbXNnc3RyICLQv9C+0LTQv9C40YHRjCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTE0CisjOiBidWlsdGluL2xvZy5jOjE1OTgKIG1zZ2lkICJhZGQgYSBzaWduYXR1cmUiCiBtc2dzdHIgItC00L7QsdCw0LLQuNGC0Ywg0L/QvtC00L/QuNGB0YwiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUxNQorIzogYnVpbHRpbi9sb2cuYzoxNTk5CiBtc2dpZCAiYmFzZS1jb21taXQiCiBtc2dzdHIgItCx0LDQt9C+0LLRi9C5INC60L7QvNC80LjRgiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTE2CisjOiBidWlsdGluL2xvZy5jOjE2MDAKIG1zZ2lkICJhZGQgcHJlcmVxdWlzaXRlIHRyZWUgaW5mbyB0byB0aGUgcGF0Y2ggc2VyaWVzIgogbXNnc3RyICLQtNC+0LHQsNCy0LjRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INGC0YDQtdCx0L7QstCw0L3QuNC4INC00LXRgNC10LLQsCDQuiDRgdC10YDQuNC4INC/0LDRgtGH0LXQuSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTE4CisjOiBidWlsdGluL2xvZy5jOjE2MDIKIG1zZ2lkICJhZGQgYSBzaWduYXR1cmUgZnJvbSBhIGZpbGUiCiBtc2dzdHIgItC00L7QsdCw0LLQuNGC0Ywg0L/QvtC00L/QuNGB0Ywg0LjQtyDRhNCw0LnQu9CwIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTYwMwogbXNnaWQgImRvbid0IHByaW50IHRoZSBwYXRjaCBmaWxlbmFtZXMiCiBtc2dzdHIgItC90LUg0LLRi9Cy0L7QtNC40YLRjCDQuNC80LXQvdCwINGE0LDQudC70L7QsiDQv9Cw0YLRh9C10LkiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyMQorIzogYnVpbHRpbi9sb2cuYzoxNjA1CiBtc2dpZCAic2hvdyBwcm9ncmVzcyB3aGlsZSBnZW5lcmF0aW5nIHBhdGNoZXMiCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0L/RgNC+0LPRgNC10YHRgSDQstGL0L/QvtC70L3QtdC90LjRjyDQstC+INGB0L7Qt9C00LDQvdC40Y8g0L/QsNGC0YfQtdC5IgogCi0jOiBidWlsdGluL2xvZy5jOjE1OTYKKyM6IGJ1aWx0aW4vbG9nLmM6MTYwNgorbXNnaWQgInJldiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE2MDcKK21zZ2lkICJzaG93IGNoYW5nZXMgYWdhaW5zdCA8cmV2PiBpbiBjb3ZlciBsZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTYxMAorbXNnaWQgInNob3cgY2hhbmdlcyBhZ2FpbnN0IDxyZWZzcGVjPiBpbiBjb3ZlciBsZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTYxMgorbXNnaWQgInBlcmNlbnRhZ2UgYnkgd2hpY2ggY3JlYXRpb24gaXMgd2VpZ2h0ZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9sb2cuYzoxNjg3CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgaWRlbnQgbGluZTogJXMiCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90LDRjyDRgdGC0YDQvtC60LAg0LjQtNC10L3RgtC40YTQuNC60LDRhtC40Lg6ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjE2MTEKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMgogbXNnaWQgIi1uIGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTYxMworIzogYnVpbHRpbi9sb2cuYzoxNzA0CiBtc2dpZCAiLS1zdWJqZWN0LXByZWZpeC8tLXJmYyBhbmQgLWsgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL2xvZy5jOjE2MjEKKyM6IGJ1aWx0aW4vbG9nLmM6MTcxMgogbXNnaWQgIi0tbmFtZS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tbmFtZS1vbmx5INC90LUg0LjQvNC10LXRgiDRgdC80YvRgdC70LAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTYyMworIzogYnVpbHRpbi9sb2cuYzoxNzE0CiBtc2dpZCAiLS1uYW1lLXN0YXR1cyBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLW5hbWUtc3RhdHVzINC90LUg0LjQvNC10LXRgiDRgdC80YvRgdC70LAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTYyNQorIzogYnVpbHRpbi9sb2cuYzoxNzE2CiBtc2dpZCAiLS1jaGVjayBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLWNoZWNrINC90LUg0LjQvNC10LXRgiDRgdC80YvRgdC70LAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY1NworIzogYnVpbHRpbi9sb2cuYzoxNzQ4CiBtc2dpZCAic3RhbmRhcmQgb3V0cHV0LCBvciBkaXJlY3RvcnksIHdoaWNoIG9uZT8iCiBtc2dzdHIgItGB0YLQsNC90LTQsNGA0YLQvdGL0Lkg0LLRi9Cy0L7QtCDQuNC70Lgg0LrQsNGC0LDQu9C+0LM/IgogCi0jOiBidWlsdGluL2xvZy5jOjE2NTkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKLW1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQutCw0YLQsNC70L7QsyDCqyVzwrsiCisjOiBidWlsdGluL2xvZy5jOjE4MzcKK21zZ2lkICItLWludGVyZGlmZiByZXF1aXJlcyAtLWNvdmVyLWxldHRlciBvciBzaW5nbGUgcGF0Y2giCittc2dzdHIgIiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNzUyCisjOiBidWlsdGluL2xvZy5jOjE4NDEKK21zZ2lkICJJbnRlcmRpZmY6IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTg0MgorIywgYy1mb3JtYXQKK21zZ2lkICJJbnRlcmRpZmYgYWdhaW5zdCB2JWQ6IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTg0OAorbXNnaWQgIi0tY3JlYXRpb24tZmFjdG9yIHJlcXVpcmVzIC0tcmFuZ2UtZGlmZiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE4NTIKK21zZ2lkICItLXJhbmdlLWRpZmYgcmVxdWlyZXMgLS1jb3Zlci1sZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTg2MAorbXNnaWQgIlJhbmdlLWRpZmY6IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTg2MQorIywgYy1mb3JtYXQKK21zZ2lkICJSYW5nZS1kaWZmIGFnYWluc3QgdiVkOiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL2xvZy5jOjE4NzIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgc2lnbmF0dXJlIGZpbGUgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0YTQsNC50Lsg0L/QvtC00L/QuNGB0Lggwqslc8K7IgogCi0jOiBidWlsdGluL2xvZy5jOjE3ODUKKyM6IGJ1aWx0aW4vbG9nLmM6MTkwOAogbXNnaWQgIkdlbmVyYXRpbmcgcGF0Y2hlcyIKIG1zZ3N0ciAi0KHQvtC30LTQsNC90LjQtSDQv9Cw0YLRh9C10LkiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgyOQotbXNnaWQgIkZhaWxlZCB0byBjcmVhdGUgb3V0cHV0IGZpbGVzIgotbXNnc3RyICLQodCx0L7QuSDQv9GA0Lgg0YHQvtC30LTQsNC90LjQuCDQstGL0YXQvtC00L3Ri9GFINGE0LDQudC70L7QsiIKKyM6IGJ1aWx0aW4vbG9nLmM6MTk1MgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgb3V0cHV0IGZpbGVzIgorbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg4MAorIzogYnVpbHRpbi9sb2cuYzoyMDExCiBtc2dpZCAiZ2l0IGNoZXJyeSBbLXZdIFs8dXBzdHJlYW0+IFs8aGVhZD4gWzxsaW1pdD5dXV0iCi1tc2dzdHIgImdpdCBjaGVycnkgWy12XSBbPNCy0YvRiNC10YHRgtC+0Y/RidCw0Y8t0LLQtdGC0LrQsD4gWzzQs9C+0LvQvtCy0LA+IFs80L7Qs9GA0LDQvdC40YfQtdC90LjQtT5dXV0iCittc2dzdHIgImdpdCBjaGVycnkgWy12XSBbPNCy0YvRiNC10YHRgtC+0Y/RidCw0Y8t0LLQtdGC0LrQsD4gWzzRgNC10LTQsNC60YbQuNGPPiBbPNC+0LPRgNCw0L3QuNGH0LXQvdC40LU+XV1dIgogCi0jOiBidWlsdGluL2xvZy5jOjE5MzQKKyM6IGJ1aWx0aW4vbG9nLmM6MjA2NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IGZpbmQgYSB0cmFja2VkIHJlbW90ZSBicmFuY2gsIHBsZWFzZSBzcGVjaWZ5IDx1cHN0cmVhbT4gIgogIm1hbnVhbGx5LlxuIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC90LDQudGC0Lgg0L7RgtGB0LvQtdC20LjQstCw0LXQvNGD0Y4g0LLQvdC10YjQvdGO0Y4g0LLQtdGC0LrRgywg0YPQutCw0LbQuNGC0LUgPNCy0YvRiNC10YHRgtC+0Y/RidGD0Y4t0LLQtdGC0LrRgz4g0LLRgNGD0YfQvdGD0Y4uXG4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo0NjkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo0NzAKIG1zZ2lkICJnaXQgbHMtZmlsZXMgWzxvcHRpb25zPl0gWzxmaWxlPi4uLl0iCiBtc2dzdHIgImdpdCBscy1maWxlcyBbPNC+0L/RhtC40Lg+XSBbPNGE0LDQudC7PuKApl0iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MTgKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjYKIG1zZ2lkICJpZGVudGlmeSB0aGUgZmlsZSBzdGF0dXMgd2l0aCB0YWdzIgogbXNnc3RyICLQstGL0LLQvtC00LjRgtGMINC40LzQtdC90LAg0YTQsNC50LvQvtCyINGBINC80LXRgtC60LDQvNC4IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTIwCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTI4CiBtc2dpZCAidXNlIGxvd2VyY2FzZSBsZXR0ZXJzIGZvciAnYXNzdW1lIHVuY2hhbmdlZCcgZmlsZXMiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRgdC40LzQstC+0LvRiyDQsiDQvdC40LbQvdC10Lwg0YDQtdCz0LjRgdGC0YDQtSDQtNC70Y8gwqvQv9GA0LXQtNC/0L7Qu9C+0LbQuNGC0LXQu9GM0L3QviDQsdC10Lcg0LjQt9C80LXQvdC10L3QuNC5wrsg0YTQsNC50LvQvtCyIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTIyCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTMwCiBtc2dpZCAidXNlIGxvd2VyY2FzZSBsZXR0ZXJzIGZvciAnZnNtb25pdG9yIGNsZWFuJyBmaWxlcyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGB0LjQvNCy0L7Qu9GLINC90LjQttC90LXQs9C+INGA0LXQs9C40YHRgtGA0LAg0LTQu9GPINGE0LDQudC70L7QsiDCq2ZzbW9uaXRvciBjbGVhbsK7IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTI0CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTMyCiBtc2dpZCAic2hvdyBjYWNoZWQgZmlsZXMgaW4gdGhlIG91dHB1dCAoZGVmYXVsdCkiCiBtc2dzdHIgItC/0L7QutCw0LfRi9Cy0LDRgtGMINC60Y3RiNC40YDQvtCy0LDQvdC90YvQtSDRhNCw0LnQu9GLINC/0YDQuCDQstGL0LLQvtC00LUgKNC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOKSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUyNgorIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNAogbXNnaWQgInNob3cgZGVsZXRlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICLQv9C+0LrQsNC30YvQstCw0YLRjCDRg9C00LDQu9C10L3QvdGL0LUg0YTQsNC50LvRiyDQv9GA0Lgg0LLRi9Cy0L7QtNC1IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTI4CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTM2CiBtc2dpZCAic2hvdyBtb2RpZmllZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICLQv9C+0LrQsNC30YvQstCw0YLRjCDQuNC30LzQtdC90LXQvdC90YvQtSDRhNCw0LnQu9GLINC/0YDQuCDQstGL0LLQvtC00LUiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzAKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzgKIG1zZ2lkICJzaG93IG90aGVyIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgItC/0L7QutCw0LfRi9Cy0LDRgtGMINC00YDRg9Cz0LjQtSDRhNCw0LnQu9GLINC/0YDQuCDQstGL0LLQvtC00LUiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzIKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDAKIG1zZ2lkICJzaG93IGlnbm9yZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAi0L/QvtC60LDQt9GL0LLQsNGC0Ywg0LjQs9C90L7RgNC40YDRg9C10LzRi9C1INGE0LDQudC70Ysg0L/RgNC4INCy0YvQstC+0LTQtSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MwogbXNnaWQgInNob3cgc3RhZ2VkIGNvbnRlbnRzJyBvYmplY3QgbmFtZSBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICLQv9C+0LrQsNC30YvQstCw0YLRjCDQuNC80Y8g0LjQvdC00LXQutGB0LjRgNC+0LLQsNC90L3QvtCz0L4g0L7QsdGK0LXQutGC0LAg0L3QsCDQstGL0LLQvtC00LUiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzcKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDUKIG1zZ2lkICJzaG93IGZpbGVzIG9uIHRoZSBmaWxlc3lzdGVtIHRoYXQgbmVlZCB0byBiZSByZW1vdmVkIgogbXNnc3RyICLQv9C+0LrQsNC30YvQstCw0YLRjCDRhNCw0LnQu9GLINCyINGE0LDQudC70L7QstC+0Lkg0YHQuNGB0YLQtdC80LUsINC60L7RgtC+0YDRi9C1INC00L7Qu9C20L3RiyDQsdGL0YLRjCDRg9C00LDQu9C10L3RiyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0NwogbXNnaWQgInNob3cgJ290aGVyJyBkaXJlY3RvcmllcycgbmFtZXMgb25seSIKIG1zZ3N0ciAi0L/QvtC60LDQt9GL0LLQsNGC0Ywg0YLQvtC70YzQutC+INC40LzQtdC90LAg0YMgwqvQtNGA0YPQs9C40YXCuyDQutCw0YLQsNC70L7Qs9C+0LIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDEKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDkKIG1zZ2lkICJzaG93IGxpbmUgZW5kaW5ncyBvZiBmaWxlcyIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDQutC+0L3RhtGLINGB0YLRgNC+0Log0YTQsNC50LvQvtCyIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTQzCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTUxCiBtc2dpZCAiZG9uJ3Qgc2hvdyBlbXB0eSBkaXJlY3RvcmllcyIKIG1zZ3N0ciAi0L3QtSDQv9C+0LrQsNC30YvQstCw0YLRjCDQv9GD0YHRgtGL0LUg0LrQsNGC0LDQu9C+0LPQuCIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0NgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NAogbXNnaWQgInNob3cgdW5tZXJnZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAi0L/QvtC60LDQt9GL0LLQsNGC0Ywg0L3QtSDRgdC70LjRgtGL0LUg0YTQsNC50LvRiyDQvdCwINCy0YvQstC+0LTQtSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NgogbXNnaWQgInNob3cgcmVzb2x2ZS11bmRvIGluZm9ybWF0aW9uIgogbXNnc3RyICLQv9C+0LrQsNC30YvQstCw0YLRjCDQuNC90YTQvtGA0LzQsNGG0LjQuCDQviDRgNCw0LfRgNC10YjQtdC90LjQuCDQutC+0L3RhNC70LjQutGC0L7QsiDQuCDQvtGC0LzQtdC90LUiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTAKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTgKIG1zZ2lkICJza2lwIGZpbGVzIG1hdGNoaW5nIHBhdHRlcm4iCiBtc2dzdHIgItC/0YDQvtC/0YPRgdGC0LjRgtGMINGE0LDQudC70YssINGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGJ0LjQtSDRiNCw0LHQu9C+0L3RgyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1MworIzogYnVpbHRpbi9scy1maWxlcy5jOjU2MQogbXNnaWQgImV4Y2x1ZGUgcGF0dGVybnMgYXJlIHJlYWQgZnJvbSA8ZmlsZT4iCiBtc2dzdHIgItC/0YDQvtGH0LjRgtCw0YLRjCDRiNCw0LHQu9C+0L3RiyDQuNGB0LrQu9GO0YfQtdC90LjRjyDQuNC3IDzRhNCw0LnQuz4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTYKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjQKIG1zZ2lkICJyZWFkIGFkZGl0aW9uYWwgcGVyLWRpcmVjdG9yeSBleGNsdWRlIHBhdHRlcm5zIGluIDxmaWxlPiIKIG1zZ3N0ciAi0L/RgNC+0YfQuNGC0LDRgtGMINC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdGL0LUg0L/QvtC60LDRgtCw0LvQvtC20L3Ri9C1INGI0LDQsdC70L7QvdGLINC40YHQutC70Y7Rh9C10L3QuNGPINC40LcgPNGE0LDQudC7PiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1OAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NgogbXNnaWQgImFkZCB0aGUgc3RhbmRhcmQgZ2l0IGV4Y2x1c2lvbnMiCiBtc2dzdHIgItC00L7QsdCw0LLQuNGC0Ywg0YHRgtCw0L3QtNCw0YDRgtC90YvQtSDQuNGB0LrQu9GO0YfQtdC90LjRjyBnaXQiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjEKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzAKIG1zZ2lkICJtYWtlIHRoZSBvdXRwdXQgcmVsYXRpdmUgdG8gdGhlIHByb2plY3QgdG9wIGRpcmVjdG9yeSIKIG1zZ3N0ciAi0LLRi9Cy0L7QtNC40YLRjCDQv9GD0YLQuCDQvtGC0L3QvtGB0LjRgtC10LvRjNC90L4g0LrQvtGA0L3QtdCy0L7Qs9C+INC60LDRgtCw0LvQvtCz0LAg0L/RgNC+0LXQutGC0LAiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjQKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzMKIG1zZ2lkICJyZWN1cnNlIHRocm91Z2ggc3VibW9kdWxlcyIKIG1zZ3N0ciAi0YDQtdC60YPRgNGB0LjQstC90L4g0L/QviDQv9C+0LTQvNC+0LTRg9C70Y/QvCIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NQogbXNnaWQgImlmIGFueSA8ZmlsZT4gaXMgbm90IGluIHRoZSBpbmRleCwgdHJlYXQgdGhpcyBhcyBhbiBlcnJvciIKIG1zZ3N0ciAi0LXRgdC70Lgg0LrQsNC60L7QuS3Qu9C40LHQviA80YTQsNC50Ls+INC90LUg0LIg0LjQvdC00LXQutGB0LUsINGB0YfQuNGC0LDRgtGMINGN0YLQviDQvtGI0LjQsdC60L7QuSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NworIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NgogbXNnaWQgInRyZWUtaXNoIgogbXNnc3RyICLRg9C60LDQt9Cw0YLQtdC70Ywt0LTQtdGA0LXQstCwIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTY4CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc3CiBtc2dpZCAicHJldGVuZCB0aGF0IHBhdGhzIHJlbW92ZWQgc2luY2UgPHRyZWUtaXNoPiBhcmUgc3RpbGwgcHJlc2VudCIKIG1zZ3N0ciAi0L/RgNC40YLQstC+0YDQuNGC0YzRgdGPLCDRh9GC0L4g0L/Rg9GC0Lgg0YPQtNCw0LvQtdC90YssINGCLtC6LiA80YPQutCw0LfQsNGC0LXQu9GMLdC00LXRgNC10LLQsD4g0LXRidC1INGB0YPRidC10YHRgtCy0YPQtdGCIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTcwCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc5CiBtc2dpZCAic2hvdyBkZWJ1Z2dpbmcgZGF0YSIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDQvtGC0LvQsNC00L7Rh9C90YPRjiDQuNC90YTQvtGA0LzQsNGG0LjRjiIKIApAQCAtMTE0NjYsNyArMTM2MDUsNyBAQAogbXNnaWQgImRvIG5vdCBwcmludCByZW1vdGUgVVJMIgogbXNnc3RyICLQvdC1INCy0YvQstC+0LTQuNGC0YwgVVJMINCy0L3QtdGI0L3QuNGFINGA0LXQv9C+0LfQuNGC0L7RgNC40LXQsiIKIAotIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2MCBidWlsdGluL2xzLXJlbW90ZS5jOjYyCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjYwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjIgYnVpbHRpbi9yZWJhc2UuYzoxNDU4CiBtc2dpZCAiZXhlYyIKIG1zZ3N0ciAi0LfQsNC/0YPRgdC6IgogCkBAIC0xMTQ5MCwxMSArMTM2MjksMTEgQEAKIG1zZ2lkICJ0YWtlIHVybC48YmFzZT4uaW5zdGVhZE9mIGludG8gYWNjb3VudCIKIG1zZ3N0ciAi0YPRh9C40YLRi9Cy0LDRgtGMIHVybC480LHQsNC30LA+Lmluc3RlYWRPZiIKIAotIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3MworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3MgogbXNnaWQgImV4aXQgd2l0aCBleGl0IGNvZGUgMiBpZiBubyBtYXRjaGluZyByZWZzIGFyZSBmb3VuZCIKIG1zZ3N0ciAi0LLRi9GF0L7QtNC40YLRjCDRgSDQutC+0LTQvtC8IDIsINC10YHQu9C4INGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGJ0LjQtSDRgdGB0YvQu9C60Lgg0L3QtSDQvdCw0LnQtNC10L3RiyIKIAotIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NQogbXNnaWQgInNob3cgdW5kZXJseWluZyByZWYgaW4gYWRkaXRpb24gdG8gdGhlIG9iamVjdCBwb2ludGVkIGJ5IGl0IgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMINGC0LDQutC20LUg0LLQvdGD0YLRgNC10L3QvdGO0Y4g0YHRgdGL0LvQutGDINCyINC00L7Qv9C+0LvQvdC10L3QuNC1INC6INC+0LHRitC10LrRgtGDLCDQvdCwINC60L7RgtC+0YDRi9C5INC+0L3QsCDRg9C60LDQt9GL0LLQsNC10YIiCiAKQEAgLTExNTM5LDQwOSArMTM2NzgsNDAyIEBACiBtc2dpZCAiZW1wdHkgbWJveDogJyVzJyIKIG1zZ3N0ciAi0L/Rg9GB0YLQvtC5IG1ib3g6IMKrJXPCuyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjUxCisjOiBidWlsdGluL21lcmdlLmM6NTQKIG1zZ2lkICJnaXQgbWVyZ2UgWzxvcHRpb25zPl0gWzxjb21taXQ+Li4uXSIKIG1zZ3N0ciAiZ2l0IG1lcmdlIFs80L7Qv9GG0LjQuD5dIFs80LrQvtC80LzQuNGCPuKApl0iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1MgorIzogYnVpbHRpbi9tZXJnZS5jOjU1CiBtc2dpZCAiZ2l0IG1lcmdlIC0tYWJvcnQiCiBtc2dzdHIgImdpdCBtZXJnZSAtLWFib3J0IgogCi0jOiBidWlsdGluL21lcmdlLmM6NTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1NgogbXNnaWQgImdpdCBtZXJnZSAtLWNvbnRpbnVlIgogbXNnc3RyICJnaXQgbWVyZ2UgLS1jb250aW51ZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjExMAorIzogYnVpbHRpbi9tZXJnZS5jOjExNgogbXNnaWQgInN3aXRjaCBgbScgcmVxdWlyZXMgYSB2YWx1ZSIKIG1zZ3N0ciAi0L/RgNC4INGD0LrQsNC30LDQvdC40Lgg0L/QsNGA0LDQvNC10YLRgNCwIMKrbcK7INGC0YDQtdCx0YPQtdGC0YHRjyDRg9C60LDQt9Cw0YLRjCDQt9C90LDRh9C10L3QuNC1IgogCi0jOiBidWlsdGluL21lcmdlLmM6MTc2CisjOiBidWlsdGluL21lcmdlLmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIHJlcXVpcmVzIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCBtZXJnZSBzdHJhdGVneSAnJXMnLlxuIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC90LDQudGC0Lgg0YHRgtGA0LDRgtC10LPQuNGOINGB0LvQuNGP0L3QuNGPIMKrJXPCuy5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE3NworIzogYnVpbHRpbi9tZXJnZS5jOjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJBdmFpbGFibGUgc3RyYXRlZ2llcyBhcmU6IgogbXNnc3RyICLQlNC+0YHRgtGD0L/QvdGL0LUg0YHRgtGA0LDRgtC10LPQuNC4OiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE4MgorIzogYnVpbHRpbi9tZXJnZS5jOjE5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJBdmFpbGFibGUgY3VzdG9tIHN0cmF0ZWdpZXMgYXJlOiIKIG1zZ3N0ciAi0JTQvtGB0YLRg9C/0L3Ri9C1INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjNGB0LrQuNC1INGB0YLRgNCw0YLQtdCz0LjQuDoiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzIgYnVpbHRpbi9wdWxsLmM6MTQyCisjOiBidWlsdGluL21lcmdlLmM6MjQyIGJ1aWx0aW4vcHVsbC5jOjE1MAogbXNnaWQgImRvIG5vdCBzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCiBtc2dzdHIgItC90LUg0LLRi9Cy0L7QtNC40YLRjCDRgdGC0LDRgtC40YHRgtC40LrRgyDQuNC30LzQtdC90LXQvdC40Lkg0L/QvtGB0LvQtSDQvtC60L7QvdGH0LDQvdC40Y8g0YHQu9C40Y/QvdC40Y8iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzUgYnVpbHRpbi9wdWxsLmM6MTQ1CisjOiBidWlsdGluL21lcmdlLmM6MjQ1IGJ1aWx0aW4vcHVsbC5jOjE1MwogbXNnaWQgInNob3cgYSBkaWZmc3RhdCBhdCB0aGUgZW5kIG9mIHRoZSBtZXJnZSIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0YHRgtCw0YLQuNGB0YLQuNC60YMg0LjQt9C80LXQvdC10L3QuNC5INC/0L7RgdC70LUg0L7QutC+0L3Rh9Cw0L3QuNGPINGB0LvQuNGP0L3QuNGPIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjM2IGJ1aWx0aW4vcHVsbC5jOjE0OAorIzogYnVpbHRpbi9tZXJnZS5jOjI0NiBidWlsdGluL3B1bGwuYzoxNTYKIG1zZ2lkICIoc3lub255bSB0byAtLXN0YXQpIgogbXNnc3RyICIo0YHQuNC90L7QvdC40Lwg0LTQu9GPIC0tc3RhdCkiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzggYnVpbHRpbi9wdWxsLmM6MTUxCisjOiBidWlsdGluL21lcmdlLmM6MjQ4IGJ1aWx0aW4vcHVsbC5jOjE1OQogbXNnaWQgImFkZCAoYXQgbW9zdCA8bj4pIGVudHJpZXMgZnJvbSBzaG9ydGxvZyB0byBtZXJnZSBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAi0LTQvtCx0LDQstC40YLRjCAo0LzQsNC60YHQuNC80YPQvCA8bj4pINC30LDQv9C40YHQtdC5INC40Lcg0LrQvtGA0L7RgtC60L7Qs9C+INC20YPRgNC90LDQu9CwINCyINGB0L7QvtCx0YnQtdC90LjQtSDQutC+0LzQvNC40YLQsCDRgyDRgdC70LjRj9C90LjRjyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0MSBidWlsdGluL3B1bGwuYzoxNTcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTEgYnVpbHRpbi9wdWxsLmM6MTY1CiBtc2dpZCAiY3JlYXRlIGEgc2luZ2xlIGNvbW1pdCBpbnN0ZWFkIG9mIGRvaW5nIGEgbWVyZ2UiCiBtc2dzdHIgItGB0L7Qt9C00LDRgtGMINC+0LTQuNC9INC60L7QvNC80LjRgiwg0LLQvNC10YHRgtC+INCy0YvQv9C+0LvQvdC10L3QuNGPINGB0LvQuNGP0L3QuNGPIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQzIGJ1aWx0aW4vcHVsbC5jOjE2MAorIzogYnVpbHRpbi9tZXJnZS5jOjI1MyBidWlsdGluL3B1bGwuYzoxNjgKIG1zZ2lkICJwZXJmb3JtIGEgY29tbWl0IGlmIHRoZSBtZXJnZSBzdWNjZWVkcyAoZGVmYXVsdCkiCiBtc2dzdHIgItGB0LTQtdC70LDRgtGMINC60L7QvNC80LjRgiwg0LXRgdC70Lgg0YHQu9C40Y/QvdC40LUg0L/RgNC+0YjQu9C+INGD0YHQv9C10YjQvdC+ICjQv9C+INGD0LzQvtC70YfQsNC90LjRjikiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDUgYnVpbHRpbi9wdWxsLmM6MTYzCisjOiBidWlsdGluL21lcmdlLmM6MjU1IGJ1aWx0aW4vcHVsbC5jOjE3MQogbXNnaWQgImVkaXQgbWVzc2FnZSBiZWZvcmUgY29tbWl0dGluZyIKIG1zZ3N0ciAi0L7RgtGA0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMINGB0L7QvtCx0YnQtdC90LjQtSDQv9C10YDQtdC0INCy0YvQv9C+0LvQvdC10L3QuNC10Lwg0LrQvtC80LzQuNGC0LAiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTcKIG1zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQgKGRlZmF1bHQpIgogbXNnc3RyICLRgNCw0LfRgNC10YjQuNGC0Ywg0L/QtdGA0LXQvNC+0YLQutGDINCy0L/QtdGA0LXQtCAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4pIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQ4IGJ1aWx0aW4vcHVsbC5jOjE2OQorIzogYnVpbHRpbi9tZXJnZS5jOjI1OSBidWlsdGluL3B1bGwuYzoxNzgKIG1zZ2lkICJhYm9ydCBpZiBmYXN0LWZvcndhcmQgaXMgbm90IHBvc3NpYmxlIgogbXNnc3RyICLQvtGC0LzQtdC90LjRgtGMINCy0YvQv9C+0LvQvdC10L3QuNC1INGB0LvQuNGP0L3QuNGPLCDQtdGB0LvQuCDQv9C10YDQtdC80L7RgtC60LAg0LLQv9C10YDQtdC0INC90LXQstC+0LfQvNC+0LbQvdCwIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjUyIGJ1aWx0aW4vcHVsbC5jOjE3MgorIzogYnVpbHRpbi9tZXJnZS5jOjI2MyBidWlsdGluL3B1bGwuYzoxODEKIG1zZ2lkICJ2ZXJpZnkgdGhhdCB0aGUgbmFtZWQgY29tbWl0IGhhcyBhIHZhbGlkIEdQRyBzaWduYXR1cmUiCiBtc2dzdHIgItC/0YDQvtCy0LXRgNC40YLRjCwg0YfRgtC+INGD0LrQsNC30LDQvdC90YvQuSDQutC+0LzQvNC40YIg0LjQvNC10LXRgiDQstC10YDQvdGD0Y4g0Y3Qu9C10LrRgtGA0L7QvdC90YPRjiDQv9C+0LTQv9C40YHRjCBHUEciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTMgYnVpbHRpbi9ub3Rlcy5jOjc3OSBidWlsdGluL3B1bGwuYzoxNzYKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCisjOiBidWlsdGluL21lcmdlLmM6MjY0IGJ1aWx0aW4vbm90ZXMuYzo3ODcgYnVpbHRpbi9wdWxsLmM6MTg1CisjOiBidWlsdGluL3JlYmFzZS5jOjQ5MiBidWlsdGluL3JlYmFzZS5jOjE0NzEgYnVpbHRpbi9yZXZlcnQuYzoxMTMKIG1zZ2lkICJzdHJhdGVneSIKIG1zZ3N0ciAi0YHRgtGA0LDRgtC10LPQuNGPIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU0IGJ1aWx0aW4vcHVsbC5jOjE3NworIzogYnVpbHRpbi9tZXJnZS5jOjI2NSBidWlsdGluL3B1bGwuYzoxODYKIG1zZ2lkICJtZXJnZSBzdHJhdGVneSB0byB1c2UiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30YPQtdC80LDRjyDRgdGC0YDQsNGC0LXQs9C40Y8g0YHQu9C40Y/QvdC40Y8iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTUgYnVpbHRpbi9wdWxsLmM6MTgwCisjOiBidWlsdGluL21lcmdlLmM6MjY2IGJ1aWx0aW4vcHVsbC5jOjE4OQogbXNnaWQgIm9wdGlvbj12YWx1ZSIKIG1zZ3N0ciAi0L7Qv9GG0LjRjz3Qt9C90LDRh9C10L3QuNC1IgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU2IGJ1aWx0aW4vcHVsbC5jOjE4MQorIzogYnVpbHRpbi9tZXJnZS5jOjI2NyBidWlsdGluL3B1bGwuYzoxOTAKIG1zZ2lkICJvcHRpb24gZm9yIHNlbGVjdGVkIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICLQvtC/0YbQuNC4INC00LvRjyDQstGL0LHRgNCw0L3QvdC+0Lkg0YHRgtGA0LDRgtC10LPQuNC4INGB0LvQuNGP0L3QuNGPIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU4CisjOiBidWlsdGluL21lcmdlLmM6MjY5CiBtc2dpZCAibWVyZ2UgY29tbWl0IG1lc3NhZ2UgKGZvciBhIG5vbi1mYXN0LWZvcndhcmQgbWVyZ2UpIgogbXNnc3RyICLRgdC+0L7QsdGJ0LXQvdC40LUg0LrQvtC80LzQuNGC0LAg0LTQu9GPINGB0LvQuNGP0L3QuNGPICjQtNC70Y8g0YHQu9C40Y/QvdC40Y8g0LHQtdC3INC/0LXRgNC10LzQvtGC0LrQuCDQstC/0LXRgNC10LQpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjY1CisjOiBidWlsdGluL21lcmdlLmM6Mjc2CiBtc2dpZCAiYWJvcnQgdGhlIGN1cnJlbnQgaW4tcHJvZ3Jlc3MgbWVyZ2UiCiBtc2dzdHIgItC+0YLQvNC10L3QuNGC0Ywg0LLRi9C/0L7Qu9C90LXQvdC40LUg0L/RgNC+0LjRgdGF0L7QtNGP0YnQtdCz0L4g0YHQu9C40Y/QvdC40Y8iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzgKIG1zZ2lkICJjb250aW51ZSB0aGUgY3VycmVudCBpbi1wcm9ncmVzcyBtZXJnZSIKIG1zZ3N0ciAi0L/RgNC+0LTQvtC70LbQuNGC0Ywg0LLRi9C/0L7Qu9C90LXQvdC40LUg0L/RgNC+0LjRgdGF0L7QtNGP0YnQtdCz0L4g0YHQu9C40Y/QvdC40Y8iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjkgYnVpbHRpbi9wdWxsLmM6MTg4CisjOiBidWlsdGluL21lcmdlLmM6MjgwIGJ1aWx0aW4vcHVsbC5jOjE5NwogbXNnaWQgImFsbG93IG1lcmdpbmcgdW5yZWxhdGVkIGhpc3RvcmllcyIKIG1zZ3N0ciAi0YDQsNC30YDQtdGI0LjRgtGMINGB0LvQuNGP0L3QuNC1INC90LXRgdCy0Y/Qt9Cw0L3QvdGL0YUg0LjRgdGC0L7RgNC40Lkg0LjQt9C80LXQvdC10L3QuNC5IgogCi0jOiBidWlsdGluL21lcmdlLmM6Mjc1CisjOiBidWlsdGluL21lcmdlLmM6Mjg2CiBtc2dpZCAidmVyaWZ5IGNvbW1pdC1tc2cgaG9vayIKIG1zZ3N0ciAi0L/RgNC+0LLQtdGA0LjRgtGMINC/0LXRgNC10YXQstCw0YLRh9C40LogY29tbWl0LW1zZyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMwMAorIzogYnVpbHRpbi9tZXJnZS5jOjMxMQogbXNnaWQgImNvdWxkIG5vdCBydW4gc3Rhc2guIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBzdGFzaC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozMDUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMTYKIG1zZ2lkICJzdGFzaCBmYWlsZWQiCiBtc2dzdHIgItGB0LHQvtC5INC/0YDQuCDQstGL0L/QvtC70L3QtdC90LjQuCBzdGFzaCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMxMAorIzogYnVpbHRpbi9tZXJnZS5jOjMyMQogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSB2YWxpZCBvYmplY3Q6ICVzIgogbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdGL0Lkg0L7QsdGK0LXQutGCOiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMzMiBidWlsdGluL21lcmdlLmM6MzQ5CisjOiBidWlsdGluL21lcmdlLmM6MzQzIGJ1aWx0aW4vbWVyZ2UuYzozNjAKIG1zZ2lkICJyZWFkLXRyZWUgZmFpbGVkIgogbXNnc3RyICLRgdCx0L7QuSDQv9GA0Lgg0LLRi9C/0L7Qu9C90LXQvdC40LggcmVhZC10cmVlIgogCi0jOiBidWlsdGluL21lcmdlLmM6Mzc5CisjOiBidWlsdGluL21lcmdlLmM6MzkwCiBtc2dpZCAiIChub3RoaW5nIHRvIHNxdWFzaCkiCiBtc2dzdHIgIiAo0L3QtdGH0LXQs9C+INGD0L/Qu9C+0YLQvdGP0YLRjCkiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozOTAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo0MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3F1YXNoIGNvbW1pdCAtLSBub3QgdXBkYXRpbmcgSEVBRFxuIgogbXNnc3RyICLQo9C/0LvQvtGC0L3QtdC90LjQtSDQutC+0LzQvNC40YLQsCDigJQg0L3QtSDQvtCx0L3QvtCy0LvRj9GPIEhFQURcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjQ0MAorIzogYnVpbHRpbi9tZXJnZS5jOjQ1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBtZXJnZSBtZXNzYWdlIC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCiBtc2dzdHIgItCd0LXRgiDRgdC+0L7QsdGJ0LXQvdC40Y8g0YHQu9C40Y/QvdC40Y8g4oCUINC90LUg0L7QsdC90L7QstC70Y/QtdC8IEhFQURcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjQ5MQorIzogYnVpbHRpbi9tZXJnZS5jOjUwMgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgY29tbWl0IgogbXNnc3RyICLCqyVzwrsg0L3QtSDRg9C60LDQt9GL0LLQsNC10YIg0L3QsCDQutC+0LzQvNC40YIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1NzgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkIGJyYW5jaC4lcy5tZXJnZW9wdGlvbnMgc3RyaW5nOiAlcyIKIG1zZ3N0ciAi0J3QtdC/0YDQsNCy0LjQu9GM0L3QsNGPINGB0YLRgNC+0LrQsCBicmFuY2guJXMubWVyZ2VvcHRpb25zOiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjY5OQorIzogYnVpbHRpbi9tZXJnZS5jOjcxMgogbXNnaWQgIk5vdCBoYW5kbGluZyBhbnl0aGluZyBvdGhlciB0aGFuIHR3byBoZWFkcyBtZXJnZS4iCiBtc2dzdHIgItCd0LUg0L7QsdGA0LDQsdCw0YLRi9Cy0LDRjiDQvdC40YfQtdCz0L4sINC60YDQvtC80LUg0YHQu9C40Y/QvdC40Y8g0LTQstGD0YUg0YPQutCw0LfQsNGC0LXQu9C10Lkg0L3QsCDQstC10YLQutC4LiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjcxMworIzogYnVpbHRpbi9tZXJnZS5jOjcyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmtub3duIG9wdGlvbiBmb3IgbWVyZ2UtcmVjdXJzaXZlOiAtWCVzIgogbXNnc3RyICLQndC10LjQt9Cy0LXRgdGC0L3Ri9C5INC/0LDRgNCw0LzQtdGC0YAgbWVyZ2UtcmVjdXJzaXZlOiAtWCVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzI4CisjOiBidWlsdGluL21lcmdlLmM6NzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMICVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6Nzc5CisjOiBidWlsdGluL21lcmdlLmM6NzkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZWFkIGZyb20gJyVzJyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C10YHRgtGMINC40Lcgwqslc8K7IgogCi0jOiBidWlsdGluL21lcmdlLmM6Nzg4CisjOiBidWlsdGluL21lcmdlLmM6ODAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBjb21taXR0aW5nIG1lcmdlOyB1c2UgJ2dpdCBjb21taXQnIHRvIGNvbXBsZXRlIHRoZSBtZXJnZS5cbiIKIG1zZ3N0ciAi0J3QtSDQstGL0L/QvtC70L3Rj9GOINC60L7QvNC80LjRgiDRgdC70LjRj9C90LjRjzsg0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCBjb21taXTCuyDQtNC70Y8g0LfQsNCy0LXRgNGI0LXQvdC40Y8g0YHQu9C40Y/QvdC40Y8uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTQKLSMsIGMtZm9ybWF0CisjOiBidWlsdGluL21lcmdlLmM6ODA4CiBtc2dpZCAiIgogIlBsZWFzZSBlbnRlciBhIGNvbW1pdCBtZXNzYWdlIHRvIGV4cGxhaW4gd2h5IHRoaXMgbWVyZ2UgaXMgbmVjZXNzYXJ5LFxuIgogImVzcGVjaWFsbHkgaWYgaXQgbWVyZ2VzIGFuIHVwZGF0ZWQgdXBzdHJlYW0gaW50byBhIHRvcGljIGJyYW5jaC5cbiIKICJcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6ODEzCittc2dpZCAiQW4gZW1wdHkgbWVzc2FnZSBhYm9ydHMgdGhlIGNvbW1pdC5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL21lcmdlLmM6ODE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKICJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBpZ25vcmVkLCBhbmQgYW4gZW1wdHkgbWVzc2FnZSBhYm9ydHNcbiIKICJ0aGUgY29tbWl0LlxuIgotbXNnc3RyICLQn9C+0LbQsNC70YPQudGB0YLQsCwg0LLQstC10LTQuNGC0LUg0YHQvtC+0LHRidC10L3QuNC1INC60L7QvNC80LjRgtCwLCDQtNC70Y8g0L7QsdGK0Y/RgdC90LXQvdC40Y8sINC30LDRh9C10Lwg0L3Rg9C20L3Qvlxu0Y3RgtC+INGB0LvQuNGP0L3QuNC1LCDQvtGB0L7QsdC10L3QvdC+LCDQtdGB0LvQuCDRjdGC0L4g0YHQu9C40Y/QvdC40LUg0L7QsdC90L7QstC70LXQvdC90L7QuSDQstGL0YjQtdGB0YLQvtGP0YnQtdC5XG7QstC10YLQutC4INCyINGC0LXQvNCw0YLQuNGH0LXRgdC60YPRjiDQstC10YLQutGDLlxuXG7QodGC0YDQvtC60LgsINC90LDRh9C40L3QsNGO0YnQuNC10YHRjyDRgSDCqyVjwrsg0LHRg9C00YPRgiDQv9GA0L7QuNCz0L3QvtGA0LjRgNC+0LLQsNC90YssINCwINC/0YPRgdGC0L7QtVxu0YHQvtC+0LHRidC10L3QuNC1INC+0YLQvNC10L3Rj9C10YIg0L/RgNC+0YbQtdGB0YEg0LrQvtC80LzQuNGC0LAuXG4iCittc2dzdHIgIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjgzMAorIzogYnVpbHRpbi9tZXJnZS5jOjg1NwogbXNnaWQgIkVtcHR5IGNvbW1pdCBtZXNzYWdlLiIKIG1zZ3N0ciAi0J/Rg9GB0YLQvtC1INGB0L7QvtCx0YnQtdC90LjQtSDQutC+0LzQvNC40YLQsC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4NDkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiV29uZGVyZnVsLlxuIgogbXNnc3RyICLQn9GA0LXQutGA0LDRgdC90L4uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5MDIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0b21hdGljIG1lcmdlIGZhaWxlZDsgZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBjb21taXQgdGhlIHJlc3VsdC5cbiIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7QstC10YHRgtC4INCw0LLRgtC+0LzQsNGC0LjRh9C10YHQutC+0LUg0YHQu9C40Y/QvdC40LU7INC40YHQv9GA0LDQstGM0YLQtSDQutC+0L3RhNC70LjQutGC0Ysg0Lgg0YHQtNC10LvQsNC50YLQtSDQutC+0LzQvNC40YIg0YDQtdC30YPQu9GM0YLQsNGC0LAuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5NDEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5NzUKIG1zZ2lkICJObyBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgItCd0LXRgiDRgtC10LrRg9GJ0LXQuSDQstC10YLQutC4LiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjk0MworIzogYnVpbHRpbi9tZXJnZS5jOjk3NwogbXNnaWQgIk5vIHJlbW90ZSBmb3IgdGhlIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAi0KMg0YLQtdC60YPRidC10Lkg0LLQtdGC0LrQuCDQvdC10YIg0LLQvdC10YjQvdC10LPQviDRgNC10L/QvtC30LjRgtC+0YDQuNGPLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjk0NQorIzogYnVpbHRpbi9tZXJnZS5jOjk3OQogbXNnaWQgIk5vIGRlZmF1bHQgdXBzdHJlYW0gZGVmaW5lZCBmb3IgdGhlIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAi0JTQu9GPINGC0LXQutGD0YnQtdC5INCy0LXRgtC60Lgg0L3QtSDRg9C60LDQt9Cw0L3QsCDQstGL0YjQtdGB0YLQvtGP0YnQsNGPINCy0LXRgtC60LAg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4uIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTUwCisjOiBidWlsdGluL21lcmdlLmM6OTg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHJlbW90ZS10cmFja2luZyBicmFuY2ggZm9yICVzIGZyb20gJXMiCiBtc2dzdHIgItCd0LUg0YPQutCw0LfQsNC90LAg0LLQvdC10YjQvdGP0Y8g0L7RgtGB0LvQtdC20LjQstCw0LXQvNCw0Y8g0LLQtdGC0LrQsCDQtNC70Y8gJXMg0L3QsCAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEwMDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCB2YWx1ZSAnJXMnIGluIGVudmlyb25tZW50ICclcyciCiBtc2dzdHIgItCf0LvQvtGF0L7QtSDQt9C90LDRh9C10L3QuNC1IMKrJXPCuyDQsiDQv9C10YDQtdC80LXQvdC90L7QuSDQvtC60YDRg9C20LXQvdC40Y8gwqslc8K7IgogCi0jOiBidWlsdGluL21lcmdlLmM6MTExMAorIzogYnVpbHRpbi9tZXJnZS5jOjExNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UgaW4gJXM6ICVzIgogbXNnc3RyICLQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0YLQtdC8LCDRh9GC0L4g0LzQvtC20L3QviDRgdC70LjRgtGMINCyICVzOiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjExNDQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTc4CiBtc2dpZCAibm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UiCiBtc2dzdHIgItC90LUg0Y/QstC70Y/QtdGC0YHRjyDRgtC10LwsINGH0YLQviDQvNC+0LbQvdC+INGB0LvQuNGC0YwiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjQ3CisjOiBidWlsdGluL21lcmdlLmM6MTI4MQogbXNnaWQgIi0tYWJvcnQgZXhwZWN0cyBubyBhcmd1bWVudHMiCiBtc2dzdHIgItC+0L/RhtC40Y8gLS1hYm9ydCDQvdC1INC/0YDQuNC90LjQvNCw0LXRgiDQsNGA0LPRg9C80LXQvdGC0YsiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjUxCisjOiBidWlsdGluL21lcmdlLmM6MTI4NQogbXNnaWQgIlRoZXJlIGlzIG5vIG1lcmdlIHRvIGFib3J0IChNRVJHRV9IRUFEIG1pc3NpbmcpLiIKIG1zZ3N0ciAi0J3QtdGCINGB0LvQuNGP0L3QuNGPLCDQutC+0YLQvtGA0L7QtSDQvNC+0LbQvdC+INC+0YLQvNC10L3QuNGC0YwgKNC+0YLRgdGD0YLRgdGC0LLRg9C10YIg0YTQsNC50LsgTUVSR0VfSEVBRCkuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI2MworIzogYnVpbHRpbi9tZXJnZS5jOjEyOTcKIG1zZ2lkICItLWNvbnRpbnVlIGV4cGVjdHMgbm8gYXJndW1lbnRzIgogbXNnc3RyICLQvtC/0YbQuNGPIC0tY29udGludWUg0L3QtSDQv9GA0LjQvdC40LzQsNC10YIg0LDRgNCz0YPQvNC10L3RgtGLIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI2NworIzogYnVpbHRpbi9tZXJnZS5jOjEzMDEKIG1zZ2lkICJUaGVyZSBpcyBubyBtZXJnZSBpbiBwcm9ncmVzcyAoTUVSR0VfSEVBRCBtaXNzaW5nKS4iCiBtc2dzdHIgItCh0LXQudGH0LDRgSDQvdC1INC/0YDQvtC40YHRhdC+0LTQuNGCINGB0LvQuNGP0L3QuNC1ICjQvtGC0YHRg9GC0YHRgtCy0YPQtdGCINGE0LDQudC7IE1FUkdFX0hFQUQpLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyODMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzE3CiBtc2dpZCAiIgogIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBtZXJnZSAoTUVSR0VfSEVBRCBleGlzdHMpLlxuIgogIlBsZWFzZSwgY29tbWl0IHlvdXIgY2hhbmdlcyBiZWZvcmUgeW91IG1lcmdlLiIKIG1zZ3N0ciAi0JLRiyDQvdC1INC30LDQstC10YDRiNC40LvQuCDRgdC70LjRj9C90LjQtSAo0L/RgNC40YHRg9GC0YHRgtCy0YPQtdGCINGE0LDQudC7IE1FUkdFX0hFQUQpLlxu0JLRi9C/0L7Qu9C90LjRgtC1INC60L7QvNC80LjRgiDQstCw0YjQuNGFINC40LfQvNC10L3QtdC90LjQuSwg0L/QtdGA0LXQtCDRgdC70LjRj9C90LjQtdC8LiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyOTAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzI0CiBtc2dpZCAiIgogIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdHMpLlxuIgogIlBsZWFzZSwgY29tbWl0IHlvdXIgY2hhbmdlcyBiZWZvcmUgeW91IG1lcmdlLiIKIG1zZ3N0ciAi0JLRiyDQvdC1INC30LDQstC10YDRiNC40LvQuCDQutC+0L/QuNGA0L7QstCw0L3QuNC1INC60L7QvNC80LjRgtCwICjQv9GA0LjRgdGD0YLRgdGC0LLRg9C10YIg0YTQsNC50LsgQ0hFUlJZX1BJQ0tfSEVBRCkuXG7Qn9C+0LbQsNC70YPQudGB0YLQsCwg0LfQsNC60L7QvNC80LjRgtGM0YLQtSDQstCw0YjQuCDQuNC30LzQtdC90LXQvdC40Y8sINC/0LXRgNC10LQg0YHQu9C40Y/QvdC40LXQvC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjkzCisjOiBidWlsdGluL21lcmdlLmM6MTMyNwogbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdHMpLiIKIG1zZ3N0ciAi0JLRiyDQvdC1INC30LDQstC10YDRiNC40LvQuCDQutC+0L/QuNGA0L7QstCw0L3QuNC1INC60L7QvNC80LjRgtCwICjQv9GA0LjRgdGD0YLRgdGC0LLRg9C10YIg0YTQsNC50LsgQ0hFUlJZX1BJQ0tfSEVBRCkuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMwMgorIzogYnVpbHRpbi9tZXJnZS5jOjEzNDEKIG1zZ2lkICJZb3UgY2Fubm90IGNvbWJpbmUgLS1zcXVhc2ggd2l0aCAtLW5vLWZmLiIKIG1zZ3N0ciAi0J3QtdC70YzQt9GPINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQvtC00L3QvtCy0YDQtdC80LXQvdC90L4gLS1zcXVhc2gg0LggLS1uby1mZi4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzEwCisjOiBidWlsdGluL21lcmdlLmM6MTM0OQogbXNnaWQgIk5vIGNvbW1pdCBzcGVjaWZpZWQgYW5kIG1lcmdlLmRlZmF1bHRUb1Vwc3RyZWFtIG5vdCBzZXQuIgogbXNnc3RyICLQmtC+0LzQvNC40YIg0L3QtSDRg9C60LDQt9Cw0L0g0Lgg0L/QsNGA0LDQvNC10YLRgCBtZXJnZS5kZWZhdWx0VG9VcHN0cmVhbSDQvdC1INGD0YHRgtCw0L3QvtCy0LvQtdC9LiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMjcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzY2CiBtc2dpZCAiU3F1YXNoIGNvbW1pdCBpbnRvIGVtcHR5IGhlYWQgbm90IHN1cHBvcnRlZCB5ZXQiCiBtc2dzdHIgItCj0L/Qu9C+0YLQvdC10L3QuNC1INC60L7QvNC80LjRgtCwINCyINC/0YPRgdGC0YPRjiDQstC10YLQutGDINC10YnQtSDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgtGB0Y8iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzI5CisjOiBidWlsdGluL21lcmdlLmM6MTM2OAogbXNnaWQgIk5vbi1mYXN0LWZvcndhcmQgY29tbWl0IGRvZXMgbm90IG1ha2Ugc2Vuc2UgaW50byBhbiBlbXB0eSBoZWFkIgogbXNnc3RyICLQmtC+0LzQvNC40YIsINC90LUg0Y/QstC70Y/RjtGJ0LjQudGB0Y8g0L/QtdGA0LXQvNC+0YLQutC+0Lkg0LLQv9C10YDQtdC0LCDQvdC10YIg0YHQvNGL0YHQu9CwINC00LXQu9Cw0YLRjCDQsiDQv9GD0YHRgtGD0Y4g0LLQtdGC0LrRgy4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzM0CisjOiBidWlsdGluL21lcmdlLmM6MTM3MwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyAtIG5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgogbXNnc3RyICIlcyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0YLQtdC8LCDRh9GC0L4g0LzQvtC20L3QviDRgdC70LjRgtGMIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMzNgorIzogYnVpbHRpbi9tZXJnZS5jOjEzNzUKIG1zZ2lkICJDYW4gbWVyZ2Ugb25seSBleGFjdGx5IG9uZSBjb21taXQgaW50byBlbXB0eSBoZWFkIgogbXNnc3RyICLQnNC+0LbQvdC+INGC0L7Qu9GM0LrQviDQvtC00LjQvSDQutC+0LzQvNC40YIg0LIg0L/Rg9GB0YLRg9GOINCy0LXRgtC60YMuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTM3MAotIywgYy1mb3JtYXQKLW1zZ2lkICJDb21taXQgJXMgaGFzIGFuIHVudHJ1c3RlZCBHUEcgc2lnbmF0dXJlLCBhbGxlZ2VkbHkgYnkgJXMuIgotbXNnc3RyICLQmtC+0LzQvNC40YIgJXMg0YHQvtC00LXRgNC20LjRgiDQvdC1INC00L7QstC10YDQtdC90L3Rg9GOIEdQRyDQv9C+0LTQv9C40YHRjCwg0L/RgNC10LTQv9C+0LvQvtC20LjRgtC10LvRjNC90L4g0L7RgiAlcy4iCi0KLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzczCi0jLCBjLWZvcm1hdAotbXNnaWQgIkNvbW1pdCAlcyBoYXMgYSBiYWQgR1BHIHNpZ25hdHVyZSBhbGxlZ2VkbHkgYnkgJXMuIgotbXNnc3RyICLQmtC+0LzQvNC40YIgJXMg0YHQvtC00LXRgNC20LjRgiDQv9C70L7RhdGD0Y4gR1BHINC/0L7QtNC/0LjRgdGMLCDQv9GA0LXQtNC/0L7Qu9C+0LbQuNGC0LXQu9GM0L3QviDQvtGCICVzLiIKLQotIzogYnVpbHRpbi9tZXJnZS5jOjEzNzYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ29tbWl0ICVzIGRvZXMgbm90IGhhdmUgYSBHUEcgc2lnbmF0dXJlLiIKLW1zZ3N0ciAi0JrQvtC80LzQuNGCICVzINC90LUg0YHQvtC00LXRgNC20LjRgiBHUEcg0L/QvtC00L/QuNGB0YwuIgotCi0jOiBidWlsdGluL21lcmdlLmM6MTM3OQotIywgYy1mb3JtYXQKLW1zZ2lkICJDb21taXQgJXMgaGFzIGEgZ29vZCBHUEcgc2lnbmF0dXJlIGJ5ICVzXG4iCi1tc2dzdHIgItCa0L7QvNC80LjRgiAlcyDRgdC+0LTQtdGA0LbQuNGCINC00LXQudGB0YLQstC40YLQtdC70YzQvdGD0Y4gR1BHINC/0L7QtNC/0LjRgdGMLCDQvtGCICVzLlxuIgotCi0jOiBidWlsdGluL21lcmdlLmM6MTQzOAorIzogYnVpbHRpbi9tZXJnZS5jOjE0NTQKIG1zZ2lkICJyZWZ1c2luZyB0byBtZXJnZSB1bnJlbGF0ZWQgaGlzdG9yaWVzIgogbXNnc3RyICLQvtGC0LrQsNC3INGB0LvQuNGP0L3QuNGPINC90LXRgdCy0Y/Qt9Cw0L3QvdGL0YUg0LjRgdGC0L7RgNC40Lkg0LjQt9C80LXQvdC10L3QuNC5IgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQ0NworIzogYnVpbHRpbi9tZXJnZS5jOjE0NjMKIG1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIgogbXNnc3RyICLQo9C20LUg0L7QsdC90L7QstC70LXQvdC+LiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0NTcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDczCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVwZGF0aW5nICVzLi4lc1xuIgogbXNnc3RyICLQntCx0L3QvtCy0LvQtdC90LjQtSAlcy4uJXNcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0OTgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRyeWluZyByZWFsbHkgdHJpdmlhbCBpbi1pbmRleCBtZXJnZS4uLlxuIgogbXNnc3RyICLQn9C+0L/Ri9GC0LrQsCDRgtGA0LjQstC40LDQu9GM0L3QvtCz0L4g0YHQu9C40Y/QvdC40Y8g0LIg0LjQvdC00LXQutGB0LXigKZcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1MDUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vcGUuXG4iCiBtc2dzdHIgItCd0LUg0LLRi9GI0LvQvi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1MzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQ3CiBtc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlLiBZZWVhaCEiCiBtc2dzdHIgItCj0LbQtSDQvtCx0L3QvtCy0LvQtdC90L4uINCa0YDRg9GC0L4hIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTUzNgorIzogYnVpbHRpbi9tZXJnZS5jOjE1NTMKIG1zZ2lkICJOb3QgcG9zc2libGUgdG8gZmFzdC1mb3J3YXJkLCBhYm9ydGluZy4iCiBtc2dzdHIgItCf0LXRgNC10LzQvtGC0LrQsCDQstC/0LXRgNC10LQg0L3QtdCy0L7Qt9C80L7QttC90LAsINC+0YLQvNC10L3QsC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTU5IGJ1aWx0aW4vbWVyZ2UuYzoxNjM4CisjOiBidWlsdGluL21lcmdlLmM6MTU3NiBidWlsdGluL21lcmdlLmM6MTY1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZXdpbmRpbmcgdGhlIHRyZWUgdG8gcHJpc3RpbmUuLi5cbiIKIG1zZ3N0ciAi0J/QtdGA0LXQvNC+0YLQutCwINC00LXRgNC10LLQsCDQuiDQuNGB0YXQvtC00L3QvtC80YMg0YHQvtGB0YLQvtGP0L3QuNGO4oCmXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTYzCisjOiBidWlsdGluL21lcmdlLmM6MTU4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJUcnlpbmcgbWVyZ2Ugc3RyYXRlZ3kgJXMuLi5cbiIKIG1zZ3N0ciAi0J/QvtC/0YvRgtC60LAg0YHQu9C40Y/QvdC40Y8g0YEg0L/QvtC80L7RidGM0Y4g0YHRgtGA0LDRgtC10LPQuNC4ICVz4oCmXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjI5CisjOiBidWlsdGluL21lcmdlLmM6MTY0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBtZXJnZSBzdHJhdGVneSBoYW5kbGVkIHRoZSBtZXJnZS5cbiIKIG1zZ3N0ciAi0J3QuCDQvtC00L3QsCDRgdGC0YDQsNGC0LXQs9C40Y8g0YHQu9C40Y/QvdC40Y8g0L3QtSDQvtCx0YDQsNCx0L7RgtCw0LvQsCDRgdC70LjRj9C90LjQtS5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MzEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk1lcmdlIHdpdGggc3RyYXRlZ3kgJXMgZmFpbGVkLlxuIgogbXNnc3RyICLQodCx0L7QuSDQv9GA0Lgg0YHQu9C40Y/QvdC40Lgg0YEg0L/QvtC80L7RidGM0Y4g0YHRgtGA0LDRgtC10LPQuNC4ICVzLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTY0MAorIzogYnVpbHRpbi9tZXJnZS5jOjE2NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXNpbmcgdGhlICVzIHRvIHByZXBhcmUgcmVzb2x2aW5nIGJ5IGhhbmQuXG4iCiBtc2dzdHIgItCY0YHQv9C+0LvRjNC30YPRjiAlcyDQtNC70Y8g0L/QvtC00LPQvtGC0L7QstC60Lgg0YDRg9GH0L3QvtCz0L4g0YDQsNC30YDQtdGI0LXQvdC40Y8g0LrQvtC90YTQu9C40LrRgtC+0LIuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjUyCisjOiBidWlsdGluL21lcmdlLmM6MTY2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvbWF0aWMgbWVyZ2Ugd2VudCB3ZWxsOyBzdG9wcGVkIGJlZm9yZSBjb21taXR0aW5nIGFzIHJlcXVlc3RlZFxuIgogbXNnc3RyICLQkNCy0YLQvtC80LDRgtC40YfQtdGB0LrQvtC1INGB0LvQuNGP0L3QuNC1INC/0YDQvtGI0LvQviDRg9GB0L/QtdGI0L3Qvjsg0LrQsNC6INC4INC30LDQv9GA0LDRiNC40LLQsNC70LgsINC+0YHRgtCw0L3QvtCy0LvQtdC90L4g0L/QtdGA0LXQtCDQstGL0L/QvtC70L3QtdC90LjQtdC8INC60L7QvNC80LjRgtCwXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjMxCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzozMgogbXNnaWQgImdpdCBtZXJnZS1iYXNlIFstYSB8IC0tYWxsXSA8Y29tbWl0PiA8Y29tbWl0Pi4uLiIKIG1zZ3N0ciAiZ2l0IG1lcmdlLWJhc2UgWy1hIHwgLS1hbGxdIDzQutC+0LzQvNC40YI+IDzQutC+0LzQvNC40YI+4oCmIgogCi0jOiBidWlsdGluL21lcmdlLWJhc2UuYzozMgorIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MzMKIG1zZ2lkICJnaXQgbWVyZ2UtYmFzZSBbLWEgfCAtLWFsbF0gLS1vY3RvcHVzIDxjb21taXQ+Li4uIgogbXNnc3RyICJnaXQgbWVyZ2UtYmFzZSBbLWEgfCAtLWFsbF0gLS1vY3RvcHVzIDzQutC+0LzQvNC40YI+4oCmIgogCi0jOiBidWlsdGluL21lcmdlLWJhc2UuYzozMworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MzQKIG1zZ2lkICJnaXQgbWVyZ2UtYmFzZSAtLWluZGVwZW5kZW50IDxjb21taXQ+Li4uIgogbXNnc3RyICJnaXQgbWVyZ2UtYmFzZSAtLWluZGVwZW5kZW50IDzQutC+0LzQvNC40YI+4oCmIgogCi0jOiBidWlsdGluL21lcmdlLWJhc2UuYzozNAorIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MzUKIG1zZ2lkICJnaXQgbWVyZ2UtYmFzZSAtLWlzLWFuY2VzdG9yIDxjb21taXQ+IDxjb21taXQ+IgogbXNnc3RyICJnaXQgbWVyZ2UtYmFzZSAtLWlzLWFuY2VzdG9yIDzQutC+0LzQvNC40YI+IDzQutC+0LzQvNC40YI+IgogCi0jOiBidWlsdGluL21lcmdlLWJhc2UuYzozNQorIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MzYKIG1zZ2lkICJnaXQgbWVyZ2UtYmFzZSAtLWZvcmstcG9pbnQgPHJlZj4gWzxjb21taXQ+XSIKIG1zZ3N0ciAiZ2l0IG1lcmdlLWJhc2UgLS1mb3JrLXBvaW50IDzRgdGB0YvQu9C60LA+IFs80LrQvtC80LzQuNGCPl0iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjIyMQorIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MTUzCiBtc2dpZCAib3V0cHV0IGFsbCBjb21tb24gYW5jZXN0b3JzIgogbXNnc3RyICLQstGL0LLQtdGB0YLQuCDQstGB0LXRhSDQvtCx0YnQuNGFINC/0YDQtdC00LrQvtCyIgogCi0jOiBidWlsdGluL21lcmdlLWJhc2UuYzoyMjMKKyM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjE1NQogbXNnaWQgImZpbmQgYW5jZXN0b3JzIGZvciBhIHNpbmdsZSBuLXdheSBtZXJnZSIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0L/RgNC10LTQutC+0LIg0LTQu9GPINC+0LTQvdC+0LPQviDQvNC90L7Qs9C+0YXQvtC00L7QstC+0LPQviDRgdC70LjRj9C90LjRjyIKIAotIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MjI1CisjOiBidWlsdGluL21lcmdlLWJhc2UuYzoxNTcKIG1zZ2lkICJsaXN0IHJldnMgbm90IHJlYWNoYWJsZSBmcm9tIG90aGVycyIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0YHQv9C40YHQvtC6INGA0LXQtNCw0YbQuNC5LCDQutC+0YLQvtGA0YvQtSDQvdC1INC00L7RgdGC0LjQttC40LzRiyDQuNC3INC00YDRg9CzINC00YDRg9Cz0LAiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjIyNworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MTU5CiBtc2dpZCAiaXMgdGhlIGZpcnN0IG9uZSBhbmNlc3RvciBvZiB0aGUgb3RoZXI/IgogbXNnc3RyICLRj9Cy0LvRj9C10YLRgdGPINC/0LXRgNCy0YvQvCDQv9GA0LXQtNC60L7QvCDQstGC0L7RgNC+0LPQviDRg9C60LDQt9Cw0L3QvdC+0LPQviDQutC+0LzQvNC40YLQsD8iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjIyOQorIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MTYxCiBtc2dpZCAiZmluZCB3aGVyZSA8Y29tbWl0PiBmb3JrZWQgZnJvbSByZWZsb2cgb2YgPHJlZj4iCiBtc2dzdHIgItC90LDQudGC0Lgg0LbRg9GA0L3QsNC70LUg0YHRgdGL0LvQvtC6IDzRgdGB0YvQu9C60LA+INCz0LTQtSDQuNC80LXQvdC90L4gPNC60L7QvNC80LjRgj4g0YDQsNC30LLQtdGC0LLQuNC70YHRjyIKIApAQCAtMTE5NTEsNDkgKzE0MDgzLDQ5IEBACiAiPG9yaWctZmlsZT4gPGZpbGUyPiIKIG1zZ3N0ciAiZ2l0IG1lcmdlLWZpbGUgWzzQvtC/0YbQuNC4Pl0gWy1MINC40LzRjzEgWy1MIG9yaWcgWy1MINC40LzRjzJdXV0gPNGE0LDQudC7MT4gPNC+0YDQuNCzLdGE0LDQudC7PiA80YTQsNC50LsyPiIKIAotIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6MzMKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjM1CiBtc2dpZCAic2VuZCByZXN1bHRzIHRvIHN0YW5kYXJkIG91dHB1dCIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0YDQtdC30YPQu9GM0YLQsNGCINC90LAg0YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQstGL0LLQvtC0IgogCi0jOiBidWlsdGluL21lcmdlLWZpbGUuYzozNAorIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6MzYKIG1zZ2lkICJ1c2UgYSBkaWZmMyBiYXNlZCBtZXJnZSIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIGRpZmYzINGB0LvQuNGP0L3QuNC1IgogCi0jOiBidWlsdGluL21lcmdlLWZpbGUuYzozNQorIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6MzcKIG1zZ2lkICJmb3IgY29uZmxpY3RzLCB1c2Ugb3VyIHZlcnNpb24iCiBtc2dzdHIgItC/0YDQuCDQstC+0LfQvdC40LrQvdC+0LLQtdC90LjQuCDQutC+0L3RhNC70LjQutGC0L7Qsiwg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC90LDRiNGDINCy0LXRgNGB0LjRjiIKIAotIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6MzcKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjM5CiBtc2dpZCAiZm9yIGNvbmZsaWN0cywgdXNlIHRoZWlyIHZlcnNpb24iCiBtc2dzdHIgItC/0YDQuCDQstC+0LfQvdC40LrQvdC+0LLQtdC90LjQuCDQutC+0L3RhNC70LjQutGC0L7Qsiwg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC40YUg0LLQtdGA0YHQuNGOIgogCi0jOiBidWlsdGluL21lcmdlLWZpbGUuYzozOQorIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6NDEKIG1zZ2lkICJmb3IgY29uZmxpY3RzLCB1c2UgYSB1bmlvbiB2ZXJzaW9uIgogbXNnc3RyICLQv9GA0Lgg0LLQvtC30L3QuNC60L3QvtCy0LXQvdC40Lgg0LrQvtC90YTQu9C40LrRgtC+0LIsINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQvtCx0LUg0LLQtdGA0YHQuNC4IgogCi0jOiBidWlsdGluL21lcmdlLWZpbGUuYzo0MgorIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6NDQKIG1zZ2lkICJmb3IgY29uZmxpY3RzLCB1c2UgdGhpcyBtYXJrZXIgc2l6ZSIKIG1zZ3N0ciAi0L/RgNC4INCy0L7Qt9C90LjQutC90L7QstC10L3QuNC4INC60L7QvdGE0LvQuNC60YLQvtCyLCDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0Y3RgtC+0YIg0YDQsNC30LzQtdGAINC80LDRgNC60LXRgNCwIgogCi0jOiBidWlsdGluL21lcmdlLWZpbGUuYzo0MworIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6NDUKIG1zZ2lkICJkbyBub3Qgd2FybiBhYm91dCBjb25mbGljdHMiCiBtc2dzdHIgItC90LUg0L/RgNC10LTRg9C/0YDQtdC20LTQsNGC0Ywg0L4g0LrQvtC90YTQu9C40LrRgtCw0YUiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjQ1CisjOiBidWlsdGluL21lcmdlLWZpbGUuYzo0NwogbXNnaWQgInNldCBsYWJlbHMgZm9yIGZpbGUxL29yaWctZmlsZS9maWxlMiIKIG1zZ3N0ciAi0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0LzQtdGC0LrQuCDQtNC70Y8g0YTQsNC50LsxL9C+0YDQuNCzLdGE0LDQudC7L9GE0LDQudC7MiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo0NQorIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG9wdGlvbiAlcyIKIG1zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90LDRjyDQvtC/0YbQuNGPICVzIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjUxCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjUyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0LfQvtCx0YDQsNGC0Ywg0L7QsdGK0LXQutGCIMKrJXPCuyIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1NQorIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCBiYXNlLiBJZ25vcmluZyAlcy4iCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIGJhc2VzLiBJZ25vcmluZyAlcy4iCkBAIC0xMjAwMiwxNiArMTQxMzQsMTYgQEAKIG1zZ3N0clsyXSAi0L3QtdCy0L7Qt9C80L7QttC90L4g0L7QsdGA0LDQsdC+0YLQsNGC0Ywg0LHQvtC70YzRiNC1ICVkINCx0LDQty4g0JjQs9C90L7RgNC40YDRg9GOICVzLiIKIG1zZ3N0clszXSAi0L3QtdCy0L7Qt9C80L7QttC90L4g0L7QsdGA0LDQsdC+0YLQsNGC0Ywg0LHQvtC70YzRiNC1ICVkINCx0LDQt9GLLiDQmNCz0L3QvtGA0LjRgNGD0Y4gJXMuIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjYzCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjY0CiBtc2dpZCAibm90IGhhbmRsaW5nIGFueXRoaW5nIG90aGVyIHRoYW4gdHdvIGhlYWRzIG1lcmdlLiIKIG1zZ3N0ciAi0L3QtSDQvtCx0YDQsNCx0LDRgtGL0LLQsNGOINC90LjRh9C10LPQviwg0LrRgNC+0LzQtSDRgdC70LjRj9C90LjRjyDQtNCy0YPRhSDRg9C60LDQt9Cw0YLQtdC70LXQuSDQvdCwINCy0LXRgtC60LguIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjY5IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzEKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzAgYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSByZWYgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0YHQv9C+0LfQvdCw0YLRjCDRgdGB0YvQu9C60YMgwqslc8K7IgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjc3CisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk1lcmdpbmcgJXMgd2l0aCAlc1xuIgogbXNnc3RyICLQodC70LjRj9C90LjQtSAlcyDQuCAlc1xuIgpAQCAtMTIwMjQsNyArMTQxNTYsNyBAQAogbXNnaWQgImlucHV0IGlzIE5VTCB0ZXJtaW5hdGVkIgogbXNnc3RyICLQstCy0L7QtCDQvtGC0LTQtdC70ZHQvdC90YvQuSDQndCj0JvQldCS0KvQnNCYINGB0LjQvNCy0L7Qu9Cw0LzQuCIKIAotIzogYnVpbHRpbi9ta3RyZWUuYzoxNTUgYnVpbHRpbi93cml0ZS10cmVlLmM6MjUKKyM6IGJ1aWx0aW4vbWt0cmVlLmM6MTU1IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI2CiBtc2dpZCAiYWxsb3cgbWlzc2luZyBvYmplY3RzIgogbXNnc3RyICLQtNC+0L/Rg9GB0YLQuNGC0Ywg0L7RgtGB0YPRgtGB0YLQstC40LUg0L7QsdGK0LXQutGC0L7QsiIKIApAQCAtMTIwMzIsOTQgKzE0MTY0LDExMSBAQAogbXNnaWQgImFsbG93IGNyZWF0aW9uIG9mIG1vcmUgdGhhbiBvbmUgdHJlZSIKIG1zZ3N0ciAi0LTQvtC/0YPRgdGC0LjRgtGMINGB0L7Qt9C00LDQvdC40LUg0LHQvtC70LXQtSDQvtC00L3QvtCz0L4g0LTQtdGA0LXQstCwIgogCi0jOiBidWlsdGluL212LmM6MTcKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjkKK21zZ2lkICJnaXQgbXVsdGktcGFjay1pbmRleCBbLS1vYmplY3QtZGlyPTxkaXI+XSAod3JpdGV8dmVyaWZ5KSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyMgorbXNnaWQgIm9iamVjdCBkaXJlY3RvcnkgY29udGFpbmluZyBzZXQgb2YgcGFja2ZpbGUgYW5kIHBhY2staW5kZXggcGFpcnMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NDAgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo2NworbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgdmVyYjogJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9tdi5jOjE4CiBtc2dpZCAiZ2l0IG12IFs8b3B0aW9ucz5dIDxzb3VyY2U+Li4uIDxkZXN0aW5hdGlvbj4iCiBtc2dzdHIgImdpdCBtdiBbPNC+0L/RhtC40Lg+XSA80LjRgdGC0L7Rh9C90LjQuj7igKYgPNC90LDQt9C90LDRh9C10L3QuNC1PiIKIAotIzogYnVpbHRpbi9tdi5jOjgyCisjOiBidWlsdGluL212LmM6ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGlyZWN0b3J5ICVzIGlzIGluIGluZGV4IGFuZCBubyBzdWJtb2R1bGU/IgogbXNnc3RyICLQmtCw0YLQsNC70L7QsyAlcyDQsiDQuNC90LTQtdC60YHQtSDQuCDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0L/QvtC00LzQvtC00YPQu9C10Lw/IgogCi0jOiBidWlsdGluL212LmM6ODQKKyM6IGJ1aWx0aW4vbXYuYzo4NQogbXNnaWQgIlBsZWFzZSBzdGFnZSB5b3VyIGNoYW5nZXMgdG8gLmdpdG1vZHVsZXMgb3Igc3Rhc2ggdGhlbSB0byBwcm9jZWVkIgogbXNnc3RyICLQp9GC0L7QsdGLINC/0YDQvtC00L7Qu9C20LjRgtGMLCDQv9GA0L7QuNC90LTQtdC60YHQuNGA0YPQudGC0LUg0LjQu9C4INGB0L/RgNGP0YfRjNGC0LUg0LLQsNGI0Lgg0LjQt9C80LXQvdC10L3QuNGPINCyINGE0LDQudC70LUgLmdpdG1vZHVsZXMiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxMDIKKyM6IGJ1aWx0aW4vbXYuYzoxMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJS4qcyBpcyBpbiBpbmRleCIKIG1zZ3N0ciAiJS4qcyDQsiDQuNC90LTQtdGB0LUiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxMjQKKyM6IGJ1aWx0aW4vbXYuYzoxMjUKIG1zZ2lkICJmb3JjZSBtb3ZlL3JlbmFtZSBldmVuIGlmIHRhcmdldCBleGlzdHMiCiBtc2dzdHIgItC/0YDQuNC90YPQtNC40YLQtdC70YzQvdC+INC/0LXRgNC10LzQtdGJ0LDRgtGML9C/0LXRgNC10LjQvNC10L3QvtCy0LDRgtGMLCDQtNCw0LbQtSDQtdGB0LvQuCDRhtC10LvRjCDRgdGD0YnQtdGB0YLQstGD0LXRgiIKIAotIzogYnVpbHRpbi9tdi5jOjEyNgorIzogYnVpbHRpbi9tdi5jOjEyNwogbXNnaWQgInNraXAgbW92ZS9yZW5hbWUgZXJyb3JzIgogbXNnc3RyICLQv9GA0L7Qv9GD0YHQutCw0YLRjCDQvtGI0LjQsdC60Lgg0L/RgNC4INC/0LXRgNC10LzQtdGJ0LXQvdC40Lgv0L/QtdGA0LXQuNC80LXQvdC+0LLQsNC90LjQuCIKIAotIzogYnVpbHRpbi9tdi5jOjE2OAorIzogYnVpbHRpbi9tdi5jOjE2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJkZXN0aW5hdGlvbiAnJXMnIGlzIG5vdCBhIGRpcmVjdG9yeSIKIG1zZ3N0ciAi0YbQtdC70LXQstC+0Lkg0L/Rg9GC0Ywgwqslc8K7INC90LUg0Y/QstC70Y/QtdGC0YHRjyDQutCw0YLQsNC70L7Qs9C+0LwiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNzkKKyM6IGJ1aWx0aW4vbXYuYzoxODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2hlY2tpbmcgcmVuYW1lIG9mICclcycgdG8gJyVzJ1xuIgogbXNnc3RyICLQn9GA0L7QstC10YDQutCwINC/0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40Y8g0LjQtyDCqyVzwrsg0LIgwqslc8K7XG4iCiAKLSM6IGJ1aWx0aW4vbXYuYzoxODMKKyM6IGJ1aWx0aW4vbXYuYzoxODQKIG1zZ2lkICJiYWQgc291cmNlIgogbXNnc3RyICLQv9C70L7RhdC+0Lkg0LjRgdGC0L7Rh9C90LjQuiIKIAotIzogYnVpbHRpbi9tdi5jOjE4NgorIzogYnVpbHRpbi9tdi5jOjE4NwogbXNnaWQgImNhbiBub3QgbW92ZSBkaXJlY3RvcnkgaW50byBpdHNlbGYiCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQv9C10YDQtdC80LXRgdGC0LjRgtGMINC60LDRgtCw0LvQvtCzINCyINGB0LDQvNC+0LPQviDRgdC10LHRjyIKIAotIzogYnVpbHRpbi9tdi5jOjE4OQorIzogYnVpbHRpbi9tdi5jOjE5MAogbXNnaWQgImNhbm5vdCBtb3ZlIGRpcmVjdG9yeSBvdmVyIGZpbGUiCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQv9C10YDQtdC80LXRgdGC0LjRgtGMINC60LDRgtCw0LvQvtCzINCyINGE0LDQudC7IgogCi0jOiBidWlsdGluL212LmM6MTk4CisjOiBidWlsdGluL212LmM6MTk5CiBtc2dpZCAic291cmNlIGRpcmVjdG9yeSBpcyBlbXB0eSIKIG1zZ3N0ciAi0LjRgdGF0L7QtNC90YvQuSDQutCw0YLQsNC70L7QsyDQv9GD0YHRgiIKIAotIzogYnVpbHRpbi9tdi5jOjIyMworIzogYnVpbHRpbi9tdi5jOjIyNAogbXNnaWQgIm5vdCB1bmRlciB2ZXJzaW9uIGNvbnRyb2wiCiBtc2dzdHIgItC90LUg0L/QvtC0INCy0LXRgNGB0LjQvtC90L3Ri9C8INC60L7QvdGC0YDQvtC70LXQvCIKIAotIzogYnVpbHRpbi9tdi5jOjIyNgorIzogYnVpbHRpbi9tdi5jOjIyNwogbXNnaWQgImRlc3RpbmF0aW9uIGV4aXN0cyIKIG1zZ3N0ciAi0YbQtdC70LXQstC+0Lkg0L/Rg9GC0Ywg0YPQttC1INGB0YPRidC10YHRgtCy0YPQtdGCIgogCi0jOiBidWlsdGluL212LmM6MjM0CisjOiBidWlsdGluL212LmM6MjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm92ZXJ3cml0aW5nICclcyciCiBtc2dzdHIgItC/0LXRgNC10LfQsNC/0LjRgdGMIMKrJXPCuyIKIAotIzogYnVpbHRpbi9tdi5jOjIzNworIzogYnVpbHRpbi9tdi5jOjIzOAogbXNnaWQgIkNhbm5vdCBvdmVyd3JpdGUiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQt9Cw0L/QuNGB0LDRgtGMIgogCi0jOiBidWlsdGluL212LmM6MjQwCisjOiBidWlsdGluL212LmM6MjQxCiBtc2dpZCAibXVsdGlwbGUgc291cmNlcyBmb3IgdGhlIHNhbWUgdGFyZ2V0IgogbXNnc3RyICLQvdC10YHQutC+0LvRjNC60L4g0LjRgdGC0L7Rh9C90LjQutC+0LIg0LTQu9GPINC+0LTQvdC+0LPQviDRhtC10LvQtdCy0L7Qs9C+INC/0YPRgtC4IgogCi0jOiBidWlsdGluL212LmM6MjQyCisjOiBidWlsdGluL212LmM6MjQzCiBtc2dpZCAiZGVzdGluYXRpb24gZGlyZWN0b3J5IGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICLRhtC10LvQtdCy0L7QuSDQutCw0YLQsNC70L7QsyDQvdC1INGB0YPRidC10YHRgtCy0YPQtdGCIgogCi0jOiBidWlsdGluL212LmM6MjQ5CisjOiBidWlsdGluL212LmM6MjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzLCBzb3VyY2U9JXMsIGRlc3RpbmF0aW9uPSVzIgogbXNnc3RyICIlcywg0L7RgtC60YPQtNCwPSVzLCDQutGD0LTQsD0lcyIKIAotIzogYnVpbHRpbi9tdi5jOjI3MAorIzogYnVpbHRpbi9tdi5jOjI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW5hbWluZyAlcyB0byAlc1xuIgogbXNnc3RyICLQn9C10YDQtdC40LzQtdC90L7QstCw0L3QuNC1ICVzINCyICVzXG4iCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNzYgYnVpbHRpbi9yZW1vdGUuYzo3MTYgYnVpbHRpbi9yZXBhY2suYzo0OTQKKyM6IGJ1aWx0aW4vbXYuYzoyNzcgYnVpbHRpbi9yZW1vdGUuYzo3MTcgYnVpbHRpbi9yZXBhY2suYzo1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVuYW1pbmcgJyVzJyBmYWlsZWQiCiBtc2dzdHIgItGB0LHQvtC5INC/0YDQuCDQv9C10YDQtdC40LzQtdC90L7QstCw0L3QuNC4IMKrJXPCuyIKQEAgLTEyMTM2LDM1ICsxNDI4NSwzNSBAQAogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLXN0ZGluIgogbXNnc3RyICJnaXQgbmFtZS1yZXYgWzzQvtC/0YbQuNC4Pl0gLS1zdGRpbiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxMworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxNQogbXNnaWQgInByaW50IG9ubHkgbmFtZXMgKG5vIFNIQS0xKSIKIG1zZ3N0ciAi0LLRi9Cy0L7QtNC40YLRjCDRgtC+0LvRjNC60L4g0LjQvNC10L3QsCAo0LHQtdC3IFNIQS0xKSIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxNAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxNgogbXNnaWQgIm9ubHkgdXNlIHRhZ3MgdG8gbmFtZSB0aGUgY29tbWl0cyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGC0L7Qu9GM0LrQviDQvNC10YLQutC4INC00LvRjyDQuNC80LXQvdC+0LLQsNC90LjRjyDQutC+0LzQvNC40YLQvtCyIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE2CisjOiBidWlsdGluL25hbWUtcmV2LmM6NDE4CiBtc2dpZCAib25seSB1c2UgcmVmcyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRgtC+0LvRjNC60L4g0YHRgdGL0LvQutC4LCDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0Y7RidC40LUgPNGI0LDQsdC70L7QvdGDPiAiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTgKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjAKIG1zZ2lkICJpZ25vcmUgcmVmcyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgItC40LPQvdC+0YDQuNGA0L7QstCw0YLRjCDRgdGB0YvQu9C60LgsINGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGJ0LjQtSA80YjQsNCx0LvQvtC90YM+IgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIwCisjOiBidWlsdGluL25hbWUtcmV2LmM6NDIyCiBtc2dpZCAibGlzdCBhbGwgY29tbWl0cyByZWFjaGFibGUgZnJvbSBhbGwgcmVmcyIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0YHQv9C40YHQvtC6INCy0YHQtdGFINC60L7QvNC80LjRgtC+0LIsINC00L7RgdGC0LjQttC40LzRi9GFINGB0L4g0LLRgdC10YUg0YHRgdGL0LvQvtC6IgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIxCisjOiBidWlsdGluL25hbWUtcmV2LmM6NDIzCiBtc2dpZCAicmVhZCBmcm9tIHN0ZGluIgogbXNnc3RyICLQv9GA0L7Rh9C40YLQsNGC0Ywg0LjQtyDRgdGC0LDQvdC00LDRgNGC0L3QvtCz0L4g0LLQstC+0LTQsCIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQyMgorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQyNAogbXNnaWQgImFsbG93IHRvIHByaW50IGB1bmRlZmluZWRgIG5hbWVzIChkZWZhdWx0KSIKIG1zZ3N0ciAi0YDQsNC30YDQtdGI0LjRgtGMINCy0YvQstC+0LQgwqt1bmRlZmluZWTCuywg0LXRgdC70Lgg0L3QtSDQvdCw0LnQtNC10L3QviAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4pIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDI4CisjOiBidWlsdGluL25hbWUtcmV2LmM6NDMwCiBtc2dpZCAiZGVyZWZlcmVuY2UgdGFncyBpbiB0aGUgaW5wdXQgKGludGVybmFsIHVzZSkiCiBtc2dzdHIgItGA0LDQt9GL0LzQtdC90L7QstGL0LLQsNGC0Ywg0LLQstC10LTQtdC90L3Ri9C1INC80LXRgtC60LggKNC00LvRjyDQstC90YPRgtGA0LXQvdC90LXQs9C+INC40YHQv9C+0LvRjNC30L7QstCw0L3QuNGPKSIKIApAQCAtMTIzMDQsMjI0ICsxNDQ1MywyMTkgQEAKIG1zZ2lkICJ0aGUgbm90ZSBjb250ZW50cyBoYXZlIGJlZW4gbGVmdCBpbiAlcyIKIG1zZ3N0ciAi0YHQvtC00LXRgNC20LjQvNC+0LUg0LfQsNC80LXRgtC60Lgg0L7RgdGC0LDQu9C+0YHRjCDQsiAlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjIzNiBidWlsdGluL3RhZy5jOjUwOAotIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3QgcmVhZCAnJXMnIgotbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDCqyVzwrsiCi0KLSM6IGJ1aWx0aW4vbm90ZXMuYzoyMzggYnVpbHRpbi90YWcuYzo1MTEKKyM6IGJ1aWx0aW4vbm90ZXMuYzoyNDIgYnVpbHRpbi90YWcuYzo1MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gb3IgcmVhZCAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINC40LvQuCDQv9GA0L7Rh9C40YLQsNGC0Ywgwqslc8K7IgogCi0jOiBidWlsdGluL25vdGVzLmM6MjU3IGJ1aWx0aW4vbm90ZXMuYzozMDggYnVpbHRpbi9ub3Rlcy5jOjMxMAotIzogYnVpbHRpbi9ub3Rlcy5jOjM3OCBidWlsdGluL25vdGVzLmM6NDMzIGJ1aWx0aW4vbm90ZXMuYzo1MTkKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MjQgYnVpbHRpbi9ub3Rlcy5jOjYwMiBidWlsdGluL25vdGVzLmM6NjY0CisjOiBidWlsdGluL25vdGVzLmM6MjYzIGJ1aWx0aW4vbm90ZXMuYzozMTMgYnVpbHRpbi9ub3Rlcy5jOjMxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjM4MyBidWlsdGluL25vdGVzLmM6NDM4IGJ1aWx0aW4vbm90ZXMuYzo1MjYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MzEgYnVpbHRpbi9ub3Rlcy5jOjYxMCBidWlsdGluL25vdGVzLmM6NjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9GA0LXRiNC40YLRjCDCqyVzwrsg0LrQsNC6INGB0YHRi9C70LrRgy4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzoyNjAKKyM6IGJ1aWx0aW4vbm90ZXMuYzoyNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgb2JqZWN0ICclcycuIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDQvtCx0YrQtdC60YIgwqslc8K7LiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjI2NAorIzogYnVpbHRpbi9ub3Rlcy5jOjI2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBub3RlIGRhdGEgZnJvbSBub24tYmxvYiBvYmplY3QgJyVzJy4iCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMINC00LDQvdC90YvQtSDQt9Cw0LzQtdGC0LrQuCDQuNC3INC90LXQtNCy0L7QuNGH0L3QvtCz0L4g0L7QsdGK0LXQutGC0LAgwqslc8K7LiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjMwNAorIzogYnVpbHRpbi9ub3Rlcy5jOjMwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgaW5wdXQgbGluZTogJyVzJy4iCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90LDRjyDQstCy0LXQtNC10L3QvdCw0Y8g0YHRgtGA0L7QutCwOiDCqyVzwrsuIgogCi0jOiBidWlsdGluL25vdGVzLmM6MzE5CisjOiBidWlsdGluL25vdGVzLmM6MzI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjb3B5IG5vdGVzIGZyb20gJyVzJyB0byAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0LrQvtC/0LjRgNC+0LLQsNGC0Ywg0LfQsNC80LXRgtC60YMg0LjQtyDCqyVzwrsg0LIgwqslc8K7IgogCiAjLiBUUkFOU0xBVE9SUzogdGhlIGZpcnN0ICVzIHdpbGwgYmUgcmVwbGFjZWQgYnkgYSBnaXQKICMuIG5vdGVzIGNvbW1hbmQ6ICdhZGQnLCAnbWVyZ2UnLCAncmVtb3ZlJywgZXRjLgotIzogYnVpbHRpbi9ub3Rlcy5jOjM1MQorIzogYnVpbHRpbi9ub3Rlcy5jOjM1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZ1c2luZyB0byAlcyBub3RlcyBpbiAlcyAob3V0c2lkZSBvZiByZWZzL25vdGVzLykiCiBtc2dzdHIgItC+0YLQutCw0Lcg0LIg0L/QtdGA0LXQt9Cw0L/QuNGB0LggJXMg0LfQsNC80LXRgtC+0Log0LIgJXMgKNC30LAg0L/RgNC10LTQtdC70LDQvNC4IHJlZnMvbm90ZXMvKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjM3MSBidWlsdGluL25vdGVzLmM6NDI2IGJ1aWx0aW4vbm90ZXMuYzo1MDIKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MTQgYnVpbHRpbi9ub3Rlcy5jOjU5MCBidWlsdGluL25vdGVzLmM6NjU3Ci0jOiBidWlsdGluL25vdGVzLmM6ODA3IGJ1aWx0aW4vbm90ZXMuYzo5NTQgYnVpbHRpbi9ub3Rlcy5jOjk3NQorIzogYnVpbHRpbi9ub3Rlcy5jOjM3NiBidWlsdGluL25vdGVzLmM6NDMxIGJ1aWx0aW4vbm90ZXMuYzo1MDkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MjEgYnVpbHRpbi9ub3Rlcy5jOjU5OCBidWlsdGluL25vdGVzLmM6NjY1CisjOiBidWlsdGluL25vdGVzLmM6ODE1IGJ1aWx0aW4vbm90ZXMuYzo5NjMgYnVpbHRpbi9ub3Rlcy5jOjk4NQogbXNnaWQgInRvbyBtYW55IHBhcmFtZXRlcnMiCiBtc2dzdHIgItC/0LXRgNC10LTQsNC90L4g0YHQu9C40YjQutC+0Lwg0LzQvdC+0LPQviDQv9Cw0YDQsNC80LXRgtGA0L7QsiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjM4NCBidWlsdGluL25vdGVzLmM6NjcwCisjOiBidWlsdGluL25vdGVzLmM6Mzg5IGJ1aWx0aW4vbm90ZXMuYzo2NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gbm90ZSBmb3VuZCBmb3Igb2JqZWN0ICVzLiIKIG1zZ3N0ciAi0L3QtSDQvdCw0LnQtNC10L3QsCDQt9Cw0LzQtdGC0LrQsCDQtNC70Y8g0L7QsdGK0LXQutGC0LAgJXMuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDA1IGJ1aWx0aW4vbm90ZXMuYzo1NjgKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTAgYnVpbHRpbi9ub3Rlcy5jOjU3NgogbXNnaWQgIm5vdGUgY29udGVudHMgYXMgYSBzdHJpbmciCiBtc2dzdHIgItGC0LXQutGB0YLQvtCy0L7QtSDRgdC+0LTQtdGA0LbQuNC80L7QtSDQt9Cw0LzQtdGC0LrQuCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQwOCBidWlsdGluL25vdGVzLmM6NTcxCisjOiBidWlsdGluL25vdGVzLmM6NDEzIGJ1aWx0aW4vbm90ZXMuYzo1NzkKIG1zZ2lkICJub3RlIGNvbnRlbnRzIGluIGEgZmlsZSIKIG1zZ3N0ciAi0YHQvtC00LXRgNC20LjQvNC+0LUg0LfQsNC80LXRgtC60Lgg0LIg0YTQsNC50LvQtSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxMSBidWlsdGluL25vdGVzLmM6NTc0CisjOiBidWlsdGluL25vdGVzLmM6NDE2IGJ1aWx0aW4vbm90ZXMuYzo1ODIKIG1zZ2lkICJyZXVzZSBhbmQgZWRpdCBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQuCDQvtGC0YDQtdC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0YPQutCw0LfQsNC90L3Ri9C5INC+0LHRitC10LrRgiDQt9Cw0LzQtdGC0LrQuCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxNCBidWlsdGluL25vdGVzLmM6NTc3CisjOiBidWlsdGluL25vdGVzLmM6NDE5IGJ1aWx0aW4vbm90ZXMuYzo1ODUKIG1zZ2lkICJyZXVzZSBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRg9C60LDQt9Cw0L3QvdGL0Lkg0L7QsdGK0LXQutGCINC30LDQvNC10YLQutC4IgogCi0jOiBidWlsdGluL25vdGVzLmM6NDE3IGJ1aWx0aW4vbm90ZXMuYzo1ODAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MjIgYnVpbHRpbi9ub3Rlcy5jOjU4OAogbXNnaWQgImFsbG93IHN0b3JpbmcgZW1wdHkgbm90ZSIKIG1zZ3N0ciAi0YDQsNC30YDQtdGI0LjRgtGMINGB0L7RhdGA0LDQvdC10L3QuNC1INC/0YPRgdGC0L7QuSDQt9Cw0LzQtdGC0LrQuCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxOCBidWlsdGluL25vdGVzLmM6NDg5CisjOiBidWlsdGluL25vdGVzLmM6NDIzIGJ1aWx0aW4vbm90ZXMuYzo0OTYKIG1zZ2lkICJyZXBsYWNlIGV4aXN0aW5nIG5vdGVzIgogbXNnc3RyICLQt9Cw0LzQtdC90LjRgtGMINGB0YPRidC10YHRgtCy0YPRjtGJ0LjQtSDQt9Cw0LzQtdGC0LrQuCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ0MworIzogYnVpbHRpbi9ub3Rlcy5jOjQ0OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IGFkZCBub3Rlcy4gRm91bmQgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlcy4gVXNlICctZicgdG8gb3ZlcndyaXRlICIKICJleGlzdGluZyBub3RlcyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQtNC+0LHQsNCy0LjRgtGMINC30LDQvNC10YLQutGDLiDQndCw0LnQtNC10L3QsCDRgdGD0YnQtdGB0YLQstGD0Y7RidCw0Y8g0LfQsNC80LXRgtC60LAg0YMg0L7QsdGK0LXQutGC0LAgJXMuINCY0YHQv9C+0LvRjNC30YPQudGC0LUg0L/QsNGA0LDQvNC10YLRgCDCqy1mwrsg0LTQu9GPINC/0LXRgNC10LfQsNC/0LjRgdC4INGB0YPRidC10YHRgtCy0YPRjtGJ0LjRhSDQt9Cw0LzQtdGC0L7Qui4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0NTggYnVpbHRpbi9ub3Rlcy5jOjUzNworIzogYnVpbHRpbi9ub3Rlcy5jOjQ2MyBidWlsdGluL25vdGVzLmM6NTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIk92ZXJ3cml0aW5nIGV4aXN0aW5nIG5vdGVzIGZvciBvYmplY3QgJXNcbiIKIG1zZ3N0ciAi0J/QtdGA0LXQt9Cw0L/QuNGB0Ywg0YHRg9GJ0LXRgdGC0LLRg9GO0YnQuNGFINC30LDQvNC10YLQvtC6INGDINC+0LHRitC10LrRgtCwICVzXG4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0NjkgYnVpbHRpbi9ub3Rlcy5jOjYyOSBidWlsdGluL25vdGVzLmM6ODk0CisjOiBidWlsdGluL25vdGVzLmM6NDc1IGJ1aWx0aW4vbm90ZXMuYzo2MzcgYnVpbHRpbi9ub3Rlcy5jOjkwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyBub3RlIGZvciBvYmplY3QgJXNcbiIKIG1zZ3N0ciAi0KPQtNCw0LvQtdC90LjQtSDQt9Cw0LzQtdGC0LrQuCDRgyDQvtCx0YrQtdC60YLQsCAlc1xuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDkwCisjOiBidWlsdGluL25vdGVzLmM6NDk3CiBtc2dpZCAicmVhZCBvYmplY3RzIGZyb20gc3RkaW4iCiBtc2dzdHIgItC/0YDQvtGH0LjRgtCw0YLRjCDQvtCx0YrQtdC60YLRiyDQuNC3INGB0YLQsNC90LTQsNGA0YLQvdC+0LPQviDQstCy0L7QtNCwIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDkyCisjOiBidWlsdGluL25vdGVzLmM6NDk5CiBtc2dpZCAibG9hZCByZXdyaXRpbmcgY29uZmlnIGZvciA8Y29tbWFuZD4gKGltcGxpZXMgLS1zdGRpbikiCiBtc2dzdHIgItC30LDQs9GA0YPQt9C40YLRjCDQvdCw0YHRgtGA0L7QudC60Lgg0L/QtdGA0LXQt9Cw0L/QuNGB0Lgg0LTQu9GPINC60L7QvNCw0L3QtNGLIDzQutC+0LzQsNC90LTQsD4gKNCy0LrQu9GO0YfQsNC10YIg0LIg0YHQtdCx0Y8gLS1zdGRpbikiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MTAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MTcKIG1zZ2lkICJ0b28gZmV3IHBhcmFtZXRlcnMiCiBtc2dzdHIgItC/0LXRgNC10LTQsNC90L4g0YHQu9C40YjQutC+0Lwg0LzQsNC70L4g0L/QsNGA0LDQvNC10YLRgNC+0LIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MzEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNhbm5vdCBjb3B5IG5vdGVzLiBGb3VuZCBleGlzdGluZyBub3RlcyBmb3Igb2JqZWN0ICVzLiBVc2UgJy1mJyB0byBvdmVyd3JpdGUiCiAiIGV4aXN0aW5nIG5vdGVzIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINGB0LrQvtC/0LjRgNC+0LLQsNGC0Ywg0LfQsNC80LXRgtC60YMuINCd0LDQudC00LXQvdCwINGB0YPRidC10YHRgtCy0YPRjtGJ0LDRjyDQt9Cw0LzQtdGC0LrQsCDRgyDQvtCx0YrQtdC60YLQsCAlcy4g0JjRgdC/0L7Qu9GM0LfRg9C50YLQtSDQv9Cw0YDQsNC80LXRgtGAIMKrLWbCuyDQtNC70Y8g0L/QtdGA0LXQt9Cw0L/QuNGB0Lgg0YHRg9GJ0LXRgdGC0LLRg9GO0YnQuNGFINC30LDQvNC10YLQvtC6LiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjU0MworIzogYnVpbHRpbi9ub3Rlcy5jOjU1MAogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIG5vdGVzIG9uIHNvdXJjZSBvYmplY3QgJXMuIENhbm5vdCBjb3B5LiIKIG1zZ3N0ciAi0L3QtdGCINC30LDQvNC10YLQvtC6INGDINC40YHRhdC+0LTQvdC+0LPQviDQvtCx0YrQtdC60YLQsCAlcy4g0J3QtdC70YzQt9GPINGB0LrQvtC/0LjRgNC+0LLQsNGC0YwuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTk1CisjOiBidWlsdGluL25vdGVzLmM6NjAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgLW0vLUYvLWMvLUMgb3B0aW9ucyBoYXZlIGJlZW4gZGVwcmVjYXRlZCBmb3IgdGhlICdlZGl0JyBzdWJjb21tYW5kLlxuIgogIlBsZWFzZSB1c2UgJ2dpdCBub3RlcyBhZGQgLWYgLW0vLUYvLWMvLUMnIGluc3RlYWQuXG4iCiBtc2dzdHIgItCe0L/RhtC40LggLW0vLUYvLWMvLUMg0LTQu9GPINC/0L7QtNC60L7QvNCw0L3QtNGLIMKrZWRpdMK7INGD0YHRgtCw0YDQtdC70LguXG7QmNGB0L/QvtC70YzQt9GD0LnRgtC1INCy0LzQtdGB0YLQviDQvdC40YUgwqtnaXQgbm90ZXMgYWRkIC1mIC1tLy1GLy1jLy1DwrsuXG4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2OTAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2OTgKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIHJlZiBOT1RFU19NRVJHRV9QQVJUSUFMIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINGB0YHRi9C70LrRgyBOT1RFU19NRVJHRV9QQVJUSUFMIgogCi0jOiBidWlsdGluL25vdGVzLmM6NjkyCisjOiBidWlsdGluL25vdGVzLmM6NzAwCiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSByZWYgTk9URVNfTUVSR0VfUkVGIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINGB0YHRi9C70LrRgyBOT1RFU19NRVJHRV9SRUYiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2OTQKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDIKIG1zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICdnaXQgbm90ZXMgbWVyZ2UnIHdvcmt0cmVlIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINGA0LDQsdC+0YfQuNC5INC60LDRgtCw0LvQvtCzIMKrZ2l0IG5vdGVzIG1lcmdlwrsiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MTQKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjIKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0YHRgdGL0LvQutGDIE5PVEVTX01FUkdFX1BBUlRJQUwiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MTYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjQKIG1zZ2lkICJjb3VsZCBub3QgZmluZCBjb21taXQgZnJvbSBOT1RFU19NRVJHRV9QQVJUSUFMLiIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INC60L7QvNC80LjRgiDQuNC3IE5PVEVTX01FUkdFX1BBUlRJQUwuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzE4CisjOiBidWlsdGluL25vdGVzLmM6NzI2CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbW1pdCBmcm9tIE5PVEVTX01FUkdFX1BBUlRJQUwuIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9C+0LHRgNCw0YLRjCDQutC+0LzQvNC40YIg0LjQtyBOT1RFU19NRVJHRV9QQVJUSUFMLiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjczMQorIzogYnVpbHRpbi9ub3Rlcy5jOjczOQogbXNnaWQgImZhaWxlZCB0byByZXNvbHZlIE5PVEVTX01FUkdFX1JFRiIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0LfRgNC10YjQuNGC0YwgTk9URVNfTUVSR0VfUkVGIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzM0CisjOiBidWlsdGluL25vdGVzLmM6NzQyCiBtc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplIG5vdGVzIG1lcmdlIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQstC10YDRiNC40YLRjCDRgdC70LjQvdC40LUg0LfQsNC80LXRgtC+0LoiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3NjAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBub3RlcyBtZXJnZSBzdHJhdGVneSAlcyIKIG1zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90LDRjyDRgdGC0YDQsNGC0LXQs9C40Y8g0YHQu9C40Y/QvdC40Y8g0LfQsNC80LXRgtC+0LogJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3NzYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3ODQKIG1zZ2lkICJHZW5lcmFsIG9wdGlvbnMiCiBtc2dzdHIgItCe0LHRidC40LUg0L7Qv9GG0LjQuCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc3OAorIzogYnVpbHRpbi9ub3Rlcy5jOjc4NgogbXNnaWQgIk1lcmdlIG9wdGlvbnMiCiBtc2dzdHIgItCe0L/RhtC40Lgg0YHQu9C40Y/QvdC40Y8iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3ODgKIG1zZ2lkICIiCiAicmVzb2x2ZSBub3RlcyBjb25mbGljdHMgdXNpbmcgdGhlIGdpdmVuIHN0cmF0ZWd5ICIKICIobWFudWFsL291cnMvdGhlaXJzL3VuaW9uL2NhdF9zb3J0X3VuaXEpIgogbXNnc3RyICLRgNCw0LfRgNC10YjQuNGC0Ywg0LrQvtC90YTQu9C40LrRgtGLINC30LDQvNC10YLQvtC6INGBINC/0L7QvNC+0YnRjNGOINGD0LrQsNC30LDQvdC90L7QuSDRgdGC0YDQsNGC0LXQs9C40LggKG1hbnVhbC9vdXJzL3RoZWlycy91bmlvbi9jYXRfc29ydF91bmlxKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4MgorIzogYnVpbHRpbi9ub3Rlcy5jOjc5MAogbXNnaWQgIkNvbW1pdHRpbmcgdW5tZXJnZWQgbm90ZXMiCiBtc2dzdHIgItCa0L7QvNC80LjRgiDQvdC1INGB0LvQuNGC0YvRhSDQt9Cw0LzQtdGC0L7QuiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4NAorIzogYnVpbHRpbi9ub3Rlcy5jOjc5MgogbXNnaWQgImZpbmFsaXplIG5vdGVzIG1lcmdlIGJ5IGNvbW1pdHRpbmcgdW5tZXJnZWQgbm90ZXMiCiBtc2dzdHIgItC30LDQstC10YDRiNC40YLRjCDRgdC70LjRj9C90LjQtSDQt9Cw0LzQtdGC0L7QuiDQutC+0LzQvNC40YLQvtC8INC90LUg0YHQu9C40YLRi9GFINC30LDQvNC10YLQvtC6IgogCi0jOiBidWlsdGluL25vdGVzLmM6Nzg2CisjOiBidWlsdGluL25vdGVzLmM6Nzk0CiBtc2dpZCAiQWJvcnRpbmcgbm90ZXMgbWVyZ2UgcmVzb2x1dGlvbiIKIG1zZ3N0ciAi0J7RgtC80LXQvdCwINGA0LDQt9GA0LXRiNC10L3QuNGPINGB0LvQuNGP0L3QuNGPINC30LDQvNC10YLQvtC6IgogCi0jOiBidWlsdGluL25vdGVzLmM6Nzg4CisjOiBidWlsdGluL25vdGVzLmM6Nzk2CiBtc2dpZCAiYWJvcnQgbm90ZXMgbWVyZ2UiCiBtc2dzdHIgItC+0YLQvNC10L3QuNGC0Ywg0YHQu9C40Y/QvdC40LUg0LfQsNC80LXRgtC+0LoiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3OTkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MDcKIG1zZ2lkICJjYW5ub3QgbWl4IC0tY29tbWl0LCAtLWFib3J0IG9yIC1zLy0tc3RyYXRlZ3kiCiBtc2dzdHIgItC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+IC0tY29tbWl0LCAtLWFib3J0INC4IC1zLy0tc3RyYXRlZ3kiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4MDQKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MTIKIG1zZ2lkICJtdXN0IHNwZWNpZnkgYSBub3RlcyByZWYgdG8gbWVyZ2UiCiBtc2dzdHIgItCy0Ysg0LTQvtC70LbQvdGLINGD0LrQsNC30LDRgtGMINGB0YHRi9C70LrRgyDQt9Cw0LzQtdGC0LrQuCDQtNC70Y8g0YHQu9C40Y/QvdC40Y8iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4MjgKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biAtcy8tLXN0cmF0ZWd5OiAlcyIKIG1zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90YvQuSDQv9Cw0YDQsNC80LXRgtGAINC00LvRjyAtcy8tLXN0cmF0ZWd5OiAlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg2NQorIzogYnVpbHRpbi9ub3Rlcy5jOjg3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhIG5vdGVzIG1lcmdlIGludG8gJXMgaXMgYWxyZWFkeSBpbi1wcm9ncmVzcyBhdCAlcyIKIG1zZ3N0ciAi0YHQu9C40Y/QvdC40LUg0LfQsNC80LXRgtC+0Log0LIgJXMg0YPQttC1INCy0YvQv9C+0LvQvdGP0LXRgtGB0Y8g0L3QsCAlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg2OAorIzogYnVpbHRpbi9ub3Rlcy5jOjg3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RvcmUgbGluayB0byBjdXJyZW50IG5vdGVzIHJlZiAoJXMpIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7RhdGA0LDQvdC40YLRjCDQsNC00YDQtdGBINGC0LXQutGD0YnQtdC5INGB0YHRi9C70LrQuCDQvdCwINC30LDQvNC10YLQutGDICglcykiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkF1dG9tYXRpYyBub3RlcyBtZXJnZSBmYWlsZWQuIEZpeCBjb25mbGljdHMgaW4gJXMgYW5kIGNvbW1pdCB0aGUgcmVzdWx0IHdpdGgiCkBAIC0xMjUyOSw0MTggKzE0NjczLDQzMSBAQAogIi0tYWJvcnQnLlxuIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINCw0LLRgtC+0LzQsNGC0LjRh9C10YHQutC4INGB0LvQuNGC0Ywg0LfQsNC80LXRgtC60LguINCY0YHQv9GA0LDQstGM0YLQtSDQutC+0L3RhNC70LjQutGC0Ysg0LIgJXMg0Lgg0LfQsNC60L7QvNC80LjRgtGM0YLQtSDRgNC10LfRg9C70YzRgtCw0YIg0YEg0L/QvtC80L7RidGM0Y4gwqtnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXTCuywg0LjQu9C4INC/0YDQtdGA0LLQuNGC0LUg0L/RgNC+0YbQtdGB0YEg0YHQu9C40Y/QvdC40Y8g0YEg0L/QvtC80L7RidGM0Y4gwqtnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydMK7LlxuIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODkyCisjOiBidWlsdGluL25vdGVzLmM6ODk3IGJ1aWx0aW4vdGFnLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgorbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINGA0LDQt9GA0LXRiNC40YLRjCDCqyVzwrsg0LrQsNC6INGB0YHRi9C70LrRgy4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiT2JqZWN0ICVzIGhhcyBubyBub3RlXG4iCiBtc2dzdHIgItCjINC+0LHRitC10LrRgtCwICVzINC90LXRgiDQt9Cw0LzQtdGC0LrQuFxuIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTA0CisjOiBidWlsdGluL25vdGVzLmM6OTEyCiBtc2dpZCAiYXR0ZW1wdCB0byByZW1vdmUgbm9uLWV4aXN0ZW50IG5vdGUgaXMgbm90IGFuIGVycm9yIgogbXNnc3RyICLQv9C+0L/Ri9GC0LrQsCDRg9C00LDQu9C10L3QuNGPINC90LXRgdGD0YnQtdGB0YLQstGD0Y7RidC10Lkg0LfQsNC80LXRgtC60Lgg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC+0YjQuNCx0LrQvtC5IgogCi0jOiBidWlsdGluL25vdGVzLmM6OTA3CisjOiBidWlsdGluL25vdGVzLmM6OTE1CiBtc2dpZCAicmVhZCBvYmplY3QgbmFtZXMgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgItC/0YDQvtGH0LjRgtCw0YLRjCDQuNC80LXQvdCwINC+0LHRitC10LrRgtC+0LIg0LjQtyDRgdGC0LDQvdC00LDRgNGC0L3QvtCz0L4g0LLQstC+0LTQsCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk0NSBidWlsdGluL3BydW5lLmM6MTA4IGJ1aWx0aW4vd29ya3RyZWUuYzoxNTEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NTQgYnVpbHRpbi9wcnVuZS5jOjEzMCBidWlsdGluL3dvcmt0cmVlLmM6MTY1CiBtc2dpZCAiZG8gbm90IHJlbW92ZSwgc2hvdyBvbmx5IgogbXNnc3RyICLQvdC1INGD0LTQsNC70Y/RgtGMLCDRgtC+0LvRjNC60L4g0L/QvtC60LDQt9Cw0YLRjCDRgdC/0LjRgdC+0LoiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5NDYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NTUKIG1zZ2lkICJyZXBvcnQgcHJ1bmVkIG5vdGVzIgogbXNnc3RyICLQstGL0LLQtdGB0YLQuCDRgdC/0LjRgdC+0Log0YPQtNCw0LvQtdC90L3Ri9GFINC30LDQvNC10YLQvtC6IgogCi0jOiBidWlsdGluL25vdGVzLmM6OTg4CisjOiBidWlsdGluL25vdGVzLmM6OTk4CiBtc2dpZCAibm90ZXMtcmVmIgogbXNnc3RyICLRgdGB0YvQu9C60LAt0L3QsC3Qt9Cw0LzQtdGC0LrRgyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk4OQorIzogYnVpbHRpbi9ub3Rlcy5jOjk5OQogbXNnaWQgInVzZSBub3RlcyBmcm9tIDxub3Rlcy1yZWY+IgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LfQsNC80LXRgtC60YMg0LjQtyA80YHRgdGL0LvQutCwLdC90LAt0LfQsNC80LXRgtC60YM+IgogCi0jOiBidWlsdGluL25vdGVzLmM6MTAyNAorIzogYnVpbHRpbi9ub3Rlcy5jOjEwMzQgYnVpbHRpbi9zdGFzaC5jOjE2MTEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBzdWJjb21tYW5kOiAlcyIKIG1zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90LDRjyDQv9C+0LTQutC+0LzQsNC90LTQsDogJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTIKIG1zZ2lkICIiCiAiZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCBbPG9wdGlvbnM+Li4uXSBbPCA8cmVmLWxpc3Q+IHwgPCA8b2JqZWN0LWxpc3Q+XSIKIG1zZ3N0ciAiZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCBbPNC+0L/RhtC40Lg+4oCmXSBbPCA80YHQv9C40YHQvtC6LdGB0YHRi9C70L7Quj4gfCA8IDzRgdC/0LjRgdC+0Lot0L7QsdGK0LXQutGC0L7Qsj5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQ5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUzCiBtc2dpZCAiIgogImdpdCBwYWNrLW9iamVjdHMgWzxvcHRpb25zPi4uLl0gPGJhc2UtbmFtZT4gWzwgPHJlZi1saXN0PiB8IDwgPG9iamVjdC1saXN0Pl0iCiBtc2dzdHIgImdpdCBwYWNrLW9iamVjdHMgWzzQvtC/0YbQuNC4PuKApl0gPNC40LzRjy3QsdCw0LfRiz4gWzwgPNGB0L/QuNGB0L7Qui3RgdGB0YvQu9C+0Lo+IHwgPCA80YHQv9C40YHQvtC6LdC+0LHRitC10LrRgtC+0LI+XSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MTQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBwYWNrZWQgb2JqZWN0IENSQyBmb3IgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MjUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDM1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgcGFja2VkIG9iamVjdCBmb3IgJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1NTYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTY2CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlY3Vyc2l2ZSBkZWx0YSBkZXRlY3RlZCBmb3Igb2JqZWN0ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NzU2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJvcmRlcmVkICV1IG9iamVjdHMsIGV4cGVjdGVkICU8UFJJdTMyPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc2OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFja2ZpbGUgaXMgaW52YWxpZDogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3NzMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzk0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuIHBhY2tmaWxlIGZvciByZXVzZTogJXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3NzcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzk4CiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgaW4gcmV1c2VkIHBhY2tmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzg4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjgwOQogbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gcmV1c2VkIHBhY2tmaWxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODE2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjgzNwogbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgcGFja3MgYXJlIHNwbGl0IGR1ZSB0byBwYWNrLnBhY2tTaXplTGltaXQiCiBtc2dzdHIgItC+0YLQutC70Y7Rh9C10L3QuNC1INC30LDQv9C40YHQuCDQsdC40YLQvtCy0YvRhSDQutCw0YDRgiwg0YLQsNC6INC60LDQuiDQutCw0YDRgtGLINCx0YvQu9C4INGA0LDQt9Cx0LjRgtGLINC90LAg0YfQsNGB0YLQuCDQuNC3LdC30LAgcGFjay5wYWNrU2l6ZUxpbWl0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjgyOQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4NTAKIG1zZ2lkICJXcml0aW5nIG9iamVjdHMiCiBtc2dzdHIgItCX0LDQv9C40YHRjCDQvtCx0YrQtdC60YLQvtCyIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjg5MSBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjg4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjkxMiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBzdGF0ICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBzdGF0ICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk0NAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAid3JvdGUgJTxQUkl1MzI+IG9iamVjdHMgd2hpbGUgZXhwZWN0aW5nICU8UFJJdTMyPiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjExMTIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTE2MQogbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgYXMgc29tZSBvYmplY3RzIGFyZSBub3QgYmVpbmcgcGFja2VkIgogbXNnc3RyICLQvtGC0LrQu9GO0YfQtdC90LjQtSDQt9Cw0L/QuNGB0Lgg0LHQuNGC0L7QstGL0YUg0LrQsNGA0YIsINGC0LDQuiDQutCw0Log0L3QtdC60L7RgtC+0YDRi9C1INC+0LHRitC10LrRgtGLINC90LUg0LHRi9C70Lgg0YPQv9Cw0LrQvtCy0LDQvdGLIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE0ODkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWx0YSBiYXNlIG9mZnNldCBvdmVyZmxvdyBpbiBwYWNrIGZvciAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE0OTgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWx0YSBiYXNlIG9mZnNldCBvdXQgb2YgYm91bmQgZm9yICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTc3MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxODY3CiBtc2dpZCAiQ291bnRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi0J/QvtC00YHRh9C10YIg0L7QsdGK0LXQutGC0L7QsiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxOTEzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE5OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdldCBzaXplIG9mICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0YDQsNC30LzQtdGAICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE5MjgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjAxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2Ugb2JqZWN0IGhlYWRlciBvZiAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0LfQvtCx0YDQsNGC0Ywg0LfQsNCz0L7Qu9C+0LLQvtC6INC+0LHRitC10LrRgtCwICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE5OTUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDExCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwMjEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA4MiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwOTgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgJXMgY2Fubm90IGJlIHJlYWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxOTk4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjAyNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDg1IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjExMgogIywgYy1mb3JtYXQKLW1zZ2lkICJvYmplY3QgJXMgaW5jb25zaXN0ZW50IG9iamVjdCBsZW5ndGggKCVsdSB2cyAlbHUpIgorbXNnaWQgIm9iamVjdCAlcyBpbmNvbnNpc3RlbnQgb2JqZWN0IGxlbmd0aCAoJTxQUkl1TUFYPiB2cyAlPFBSSXVNQVg+KSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwMzUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEyMgogbXNnaWQgInN1Ym9wdGltYWwgcGFjayAtIG91dCBvZiBtZW1vcnkiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMzY5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI0NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsdGEgY29tcHJlc3Npb24gdXNpbmcgdXAgdG8gJWQgdGhyZWFkcyIKIG1zZ3N0ciAi0J/RgNC4INGB0LbQsNGC0LjQuCDQuNC30LzQtdC90LXQvdC40Lkg0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINC00L4gJWQg0L/QvtGC0L7QutC+0LIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjUwNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNTgwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYWNrIG9iamVjdHMgcmVhY2hhYmxlIGZyb20gdGFnICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjU4OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjY3CiBtc2dpZCAiQ29tcHJlc3Npbmcgb2JqZWN0cyIKIG1zZ3N0ciAi0KHQttCw0YLQuNC1INC+0LHRitC10LrRgtC+0LIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjU5NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjczCiBtc2dpZCAiaW5jb25zaXN0ZW5jeSB3aXRoIGRlbHRhIGNvdW50IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjY3NAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleHBlY3RlZCBlZGdlIG9iamVjdCBJRCwgZ290IGdhcmJhZ2U6XG4iCiAiICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjY4MAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzYwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleHBlY3RlZCBvYmplY3QgSUQsIGdvdCBnYXJiYWdlOlxuIgogIiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3NjAKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg1OAogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yIC0tbWlzc2luZyIKIG1zZ3N0ciAi0L3QtdC00L7Qv9GD0YHRgtC40LzQvtC1INC30L3QsNGH0LXQvdC40LUg0LTQu9GPIC0tbWlzc2luZyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODE5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjkyNworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTE3IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzAyNQogbXNnaWQgImNhbm5vdCBvcGVuIHBhY2sgaW5kZXgiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODUwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9vc2Ugb2JqZWN0IGF0ICVzIGNvdWxkIG5vdCBiZSBleGFtaW5lZCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5MzUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzAzMwogbXNnaWQgInVuYWJsZSB0byBmb3JjZSBsb29zZSBvYmplY3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDIyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgcmV2ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDI1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJldmlzaW9uICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDQ1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNTMKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIHJlY2VudCBvYmplY3RzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzA5NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjA2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuc3VwcG9ydGVkIGluZGV4IHZlcnNpb24gJXMiCiBtc2dzdHIgItC90LXQv9C+0LTQtNC10YDQttC40LLQsNC10LzQsNGPINCy0LXRgNGB0LjRjyDQuNC90LTQtdC60YHQsCAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDk5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJyVzJyIKIG1zZ3N0ciAi0L/Qu9C+0YXQsNGPINCy0LXRgNGB0LjRjyDQuNC90LTQtdC60YHQsCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzMAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQwCiBtc2dpZCAiZG8gbm90IHNob3cgcHJvZ3Jlc3MgbWV0ZXIiCiBtc2dzdHIgItC90LUg0LLRi9Cy0L7QtNC40YLRjCDQv9GA0L7Qs9GA0LXRgdGBINCy0YvQv9C+0LvQvdC10L3QuNGPIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMzIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0MgogbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIiCiBtc2dzdHIgItC/0L7QutCw0LfQsNGC0Ywg0L/RgNC+0LPRgNC10YHRgSDQstGL0L/QvtC70L3QtdC90LjRjyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTM0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDQKIG1zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDQv9GA0L7Qs9GA0LXRgdGBINCy0YvQv9C+0LvQvdC10L3QuNGPINCy0L4g0LLRgNC10LzRjyDQt9Cw0L/QuNGB0Lgg0L7QsdGK0LXQutGC0L7QsiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTM3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDcKIG1zZ2lkICJzaW1pbGFyIHRvIC0tYWxsLXByb2dyZXNzIHdoZW4gcHJvZ3Jlc3MgbWV0ZXIgaXMgc2hvd24iCiBtc2dzdHIgItC/0L7RhdC+0LbQtSDQvdCwIC0tYWxsLXByb2dyZXNzINC/0YDQuCDQstC60LvRjtGH0LXQvdC90L7QvCDQv9GA0L7Qs9GA0LXRgdGB0LUg0LLRi9C/0L7Qu9C90LXQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzOAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQ4CiBtc2dpZCAiPHZlcnNpb24+Wyw8b2Zmc2V0Pl0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTM5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDkKIG1zZ2lkICJ3cml0ZSB0aGUgcGFjayBpbmRleCBmaWxlIGluIHRoZSBzcGVjaWZpZWQgaWR4IGZvcm1hdCB2ZXJzaW9uIgogbXNnc3RyICLQt9Cw0L/QuNGB0LDRgtGMINGE0LDQudC7INC40L3QtNC10LrRgdCwINC/0LDQutC10YLQsCDQsiDRg9C60LDQt9Cw0L3QvdC+0Lkg0LLQtdGA0YHQuNC4INGE0L7RgNC80LDRgtCwIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNDIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1MgogbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIG91dHB1dCBwYWNrIGZpbGUiCiBtc2dzdHIgItC80LDQutGB0LjQvNCw0LvRjNC90YvQuSDRgNCw0LfQvNC10YAg0LrQsNC20LTQvtCz0L4g0LLRi9GF0L7QtNC90L7Qs9C+INGE0LDQudC70LAg0L/QsNC60LXRgtCwIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNDQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1NAogbXNnaWQgImlnbm9yZSBib3Jyb3dlZCBvYmplY3RzIGZyb20gYWx0ZXJuYXRlIG9iamVjdCBzdG9yZSIKIG1zZ3N0ciAi0LjQs9C90L7RgNC40YDQvtCy0LDRgtGMINGH0YPQttC40LUg0L7QsdGK0LXQutGC0YssINCy0LfRj9GC0YvQtSDQuNC3INCw0LvRjNGC0LXRgNC90LDRgtC40LLQvdC+0LPQviDRhdGA0LDQvdC40LvQuNGJ0LAg0L7QsdGK0LXQutGC0L7QsiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTQ2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTYKIG1zZ2lkICJpZ25vcmUgcGFja2VkIG9iamVjdHMiCiBtc2dzdHIgItC40LPQvdC+0YDQuNGA0L7QstCw0YLRjCDRg9C/0LDQutC+0LLQsNC90L3Ri9C1INC+0LHRitC10LrRgtGLIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNDgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1OAogbXNnaWQgImxpbWl0IHBhY2sgd2luZG93IGJ5IG9iamVjdHMiCiBtc2dzdHIgItC+0LPRgNCw0L3QuNGH0LjRgtGMINC+0LrQvdC+INC/0LDQutC10YLQsCDQv9C+INC60L7Qu9C40YfQtdGB0YLQstGDINC+0LHRitC10LrRgtC+0LIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE1MAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjYwCiBtc2dpZCAibGltaXQgcGFjayB3aW5kb3cgYnkgbWVtb3J5IGluIGFkZGl0aW9uIHRvIG9iamVjdCBsaW1pdCIKIG1zZ3N0ciAi0LTQvtC/0L7Qu9C90LjRgtC10LvRjNC90L4g0Log0LrQvtC70LjRh9C10YHRgtCy0YMg0L7QsdGK0LXQutGC0L7QsiDQvtCz0YDQsNC90LjRh9C40YLRjCDQvtC60L3QviDQv9Cw0LrQtdGC0LAg0L/QviDQv9Cw0LzRj9GC0LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE1MgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjYyCiBtc2dpZCAibWF4aW11bSBsZW5ndGggb2YgZGVsdGEgY2hhaW4gYWxsb3dlZCBpbiB0aGUgcmVzdWx0aW5nIHBhY2siCiBtc2dzdHIgItC80LDQutGB0LjQvNCw0LvRjNC90LDRjyDRgNCw0LfRgNC10YjQtdC90L3QsNGPINC00LvQuNC90LAg0YbQtdC/0L7Rh9C60Lgg0LTQtdC70YzRgiDQsiDRgNC10LfRg9C70YzRgtC40YDRg9GO0YnQtdC8INC/0LDQutC10YLQtSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTU0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjQKIG1zZ2lkICJyZXVzZSBleGlzdGluZyBkZWx0YXMiCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQv9C+0LLRgtC+0YDQvdC+INGB0YPRidC10YHRgtCy0YPRjtGJ0LjQtSDQtNC10LvRjNGC0YsiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE1NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjY2CiBtc2dpZCAicmV1c2UgZXhpc3Rpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC/0L7QstGC0L7RgNC90L4g0YHRg9GJ0LXRgdGC0LLRg9GO0YnQuNC1INC+0LHRitC10LrRgtGLIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNTgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2OAogbXNnaWQgInVzZSBPRlNfREVMVEEgb2JqZWN0cyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0LHRitC10LrRgtGLIE9GU19ERUxUQSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTYwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzAKIG1zZ2lkICJ1c2UgdGhyZWFkcyB3aGVuIHNlYXJjaGluZyBmb3IgYmVzdCBkZWx0YSBtYXRjaGVzIgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LzQvdC+0LPQvtC/0L7RgtC+0YfQvdC+0YHRgtGMINC/0YDQuCDQv9C+0LjRgdC60LUg0LvRg9GH0YjQuNGFINGB0L7QstC/0LDQtNC10L3QuNC5INC00LXQu9GM0YIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE2MgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjcyCiBtc2dpZCAiZG8gbm90IGNyZWF0ZSBhbiBlbXB0eSBwYWNrIG91dHB1dCIKIG1zZ3N0ciAi0L3QtSDRgdC+0LfQtNCw0LLQsNGC0Ywg0L/Rg9GB0YLRi9C1INCy0YvRhdC+0LTQvdGL0LUg0L/QsNC60LXRgtGLIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNjQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3NAogbXNnaWQgInJlYWQgcmV2aXNpb24gYXJndW1lbnRzIGZyb20gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgItC/0YDQvtGH0LjRgtCw0YLRjCDQsNGA0LPRg9C80LXQvdGC0Ysg0YDQtdC00LDQutGG0LjQuSDQuNC3INGB0YLQsNC90LTQsNGA0YLQvdC+0LPQviDQstCy0L7QtNCwIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNjYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3NgogbXNnaWQgImxpbWl0IHRoZSBvYmplY3RzIHRvIHRob3NlIHRoYXQgYXJlIG5vdCB5ZXQgcGFja2VkIgogbXNnc3RyICLQvtCz0YDQsNC90LjRh9C40YLRjNGB0Y8g0L7QsdGK0LXQutGC0LDQvNC4LCDQutC+0YLQvtGA0YvQtSDQtdGJ0LUg0L3QtSDRg9C/0LDQutC+0LLQsNC90YsiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE2OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjc5CiBtc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIGFueSByZWZlcmVuY2UiCiBtc2dzdHIgItCy0LrQu9GO0YfQuNGC0Ywg0L7QsdGK0LXQutGC0YssINC60L7RgtC+0YDRi9C1INC00L7RgdGC0LjQttC40LzRiyDQv9C+INC70Y7QsdC+0Lkg0LjQtyDRgdGB0YvQu9C+0LoiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE3MgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjgyCiBtc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlZmVycmVkIGJ5IHJlZmxvZyBlbnRyaWVzIgogbXNnc3RyICLQstC60LvRjtGH0LjRgtGMINC+0LHRitC10LrRgtGLLCDQvdCwINC60L7RgtC+0YDRi9C1INGB0YHRi9C70LDRjtGC0YHRjyDQt9Cw0L/QuNGB0Lgg0LbRg9GA0L3QsNC70LAg0YHRgdGL0LvQvtC6IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNzUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4NQogbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWZlcnJlZCB0byBieSB0aGUgaW5kZXgiCiBtc2dzdHIgItCy0LrQu9GO0YfQuNGC0Ywg0L7QsdGK0LXQutGC0YssINC90LAg0LrQvtGC0L7RgNGL0LUg0YHRgdGL0LvQsNC10YLRgdGPINC40L3QtNC10LrRgSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTc4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODgKIG1zZ2lkICJvdXRwdXQgcGFjayB0byBzdGRvdXQiCiBtc2dzdHIgItCy0YvQstC10YHRgtC4INC/0LDQutC10YIg0L3QsCAg0YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQstGL0LLQvtC0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxODAKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5MAogbXNnaWQgImluY2x1ZGUgdGFnIG9iamVjdHMgdGhhdCByZWZlciB0byBvYmplY3RzIHRvIGJlIHBhY2tlZCIKIG1zZ3N0ciAi0LLQutC70Y7Rh9C40YLRjCDQvtCx0YrQtdC60YLRiyDQvNC10YLQvtC6LCDQutC+0YLQvtGA0YvQtSDRgdGB0YvQu9Cw0Y7RgtGB0Y8g0L3QsCDRg9C/0LDQutC+0LLRi9Cy0LDQtdC80YvQtSDQvtCx0YrQtdC60YLRiyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTgyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTIKIG1zZ2lkICJrZWVwIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgItGB0L7RhdGA0LDQvdGP0YLRjCDRgdGB0YvQu9C60Lgg0L3QsCDQvdC10LTQvtGB0YLRg9C/0L3Ri9C1INC+0LHRitC10LrRgtGLIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxODQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5NAogbXNnaWQgInBhY2sgbG9vc2UgdW5yZWFjaGFibGUgb2JqZWN0cyIKIG1zZ3N0ciAi0L/QsNC60L7QstCw0YLRjCDQvdC10LTQvtGB0YLQuNC20LjQvNGL0LUg0L7QsdGK0LXQutGC0YsiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE4NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk2CiBtc2dpZCAidW5wYWNrIHVucmVhY2hhYmxlIG9iamVjdHMgbmV3ZXIgdGhhbiA8dGltZT4iCiBtc2dzdHIgItGA0LDRgdC/0LDQutC+0LLQsNGC0Ywg0L3QtdC00L7RgdGC0YPQv9C90YvQtSDQvtCx0YrQtdC60YLRiywg0LrQvtGC0L7RgNGL0LUg0L3QvtCy0LXQtSwg0YfQtdC8IDzQstGA0LXQvNGPPiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTg5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTkKK21zZ2lkICJ1c2UgdGhlIHNwYXJzZSByZWFjaGFiaWxpdHkgYWxnb3JpdGhtIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwMQogbXNnaWQgImNyZWF0ZSB0aGluIHBhY2tzIgogbXNnc3RyICLRgdC+0LfQtNCw0LLQsNGC0Ywg0YLQvtC90LrQuNC1INC/0LDQutC10YLRiyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTkxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDMKIG1zZ2lkICJjcmVhdGUgcGFja3Mgc3VpdGFibGUgZm9yIHNoYWxsb3cgZmV0Y2hlcyIKIG1zZ3N0ciAi0YHQvtC30LTQsNCy0LDRgtGMINC/0LDQutC10YLRiywg0L/QvtC00YXQvtC00Y/RidC40LUg0LTQu9GPINGH0LDRgdGC0LjRh9C90YvRhSDQuNC30LLQu9C10YfQtdC90LjQuSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTkzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDUKIG1zZ2lkICJpZ25vcmUgcGFja3MgdGhhdCBoYXZlIGNvbXBhbmlvbiAua2VlcCBmaWxlIgogbXNnc3RyICLQuNCz0L3QvtGA0LjRgNC+0LLQsNGC0Ywg0L/QsNC60LXRgtGLLCDRgNGP0LTQvtC8INGBINC60L7RgtC+0YDRi9C80Lgg0LvQtdC20LjRgiAua2VlcCDRhNCw0LnQuyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTk1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDcKIG1zZ2lkICJpZ25vcmUgdGhpcyBwYWNrIgogbXNnc3RyICLQuNCz0L3QvtGA0LjRgNC+0LLQsNGC0Ywg0Y3RgtC+0YIg0L/QsNC60LXRgiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTk3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDkKIG1zZ2lkICJwYWNrIGNvbXByZXNzaW9uIGxldmVsIgogbXNnc3RyICLRg9GA0L7QstC10L3RjCDRgdC20LDRgtC40Y8g0L/QsNC60LXRgtCwIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxOTkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxMQogbXNnaWQgImRvIG5vdCBoaWRlIGNvbW1pdHMgYnkgZ3JhZnRzIgogbXNnc3RyICLQvdC1INGB0LrRgNGL0LLQsNGC0Ywg0LrQvtC80LzQuNGC0Ysg0YHRgNCw0YnQtdC90LjRj9C80LgiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIwMQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzEzCiBtc2dpZCAidXNlIGEgYml0bWFwIGluZGV4IGlmIGF2YWlsYWJsZSB0byBzcGVlZCB1cCBjb3VudGluZyBvYmplY3RzIgogbXNnc3RyICLQv9C+INCy0L7Qt9C80L7QttC90L7RgdGC0Lgg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC40L3QtNC10LrRgSDQsiDQsdC40YLQvtCy0YvRhSDQutCw0YDRgtCw0YUsINC00LvRjyDRg9GB0LrQvtGA0LXQvdC40Y8g0L/QvtC00YHRh9C10YLQsCDQvtCx0YrQtdC60YLQvtCyIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMDMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxNQogbXNnaWQgIndyaXRlIGEgYml0bWFwIGluZGV4IHRvZ2V0aGVyIHdpdGggdGhlIHBhY2sgaW5kZXgiCiBtc2dzdHIgItC30LDQv9C40YHRjCDQuNC90LTQtdC60YHQsCDQsiDQsdC40YLQvtCy0YvRhSDQutCw0YDRgtCw0YUg0LLQvNC10YHRgtC1INGBINC40L3QtNC10LrRgdC+0Lwg0L/QsNC60LXRgtCwIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxOAogbXNnaWQgImhhbmRsaW5nIGZvciBtaXNzaW5nIG9iamVjdHMiCiBtc2dzdHIgItC+0LHRgNCw0LHQvtGC0LrQsCDQvtGC0YHRg9GC0YHRgtCy0YPRjtGJ0LjRhSDQvtCx0YrQtdC60YLQvtCyIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMDkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMyMQogbXNnaWQgImRvIG5vdCBwYWNrIG9iamVjdHMgaW4gcHJvbWlzb3IgcGFja2ZpbGVzIgogbXNnc3RyICLQvdC1INGD0L/QsNC60L7QstGL0LLQsNGC0Ywg0L7QsdGK0LXQutGC0Ysg0LIgcHJvbWlzb3Ig0YTQsNC50LvRiyDQv9Cw0LrQtdGC0L7QsiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjMzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMjMKK21zZ2lkICJyZXNwZWN0IGlzbGFuZHMgZHVyaW5nIGRlbHRhIGNvbXByZXNzaW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWx0YSBjaGFpbiBkZXB0aCAlZCBpcyB0b28gZGVlcCwgZm9yY2luZyAlZCIKLW1zZ3N0ciAi0LPQu9GD0LHQuNC90LAg0YbQtdC/0L7Rh9C60Lgg0YDQsNC30LvQuNGH0LjQuSAlZCDRgdC70LjRiNC60L7QvCDQsdC+0LvRjNGI0LDRjywg0LjRgdC/0L7Qu9GM0LfRg9GOINC/0YDQuNC90YPQtNC40YLQtdC70YzQvdC+ICVkIgorbXNnc3RyICLQs9C70YPQsdC40L3QsCDRhtC10L/QvtGH0LrQuCDQuNC30LzQtdC90LXQvdC40LkgJWQg0YHQu9C40YjQutC+0Lwg0LHQvtC70YzRiNCw0Y8sINC40YHQv9C+0LvRjNC30YPRjiDQv9GA0LjQvdGD0LTQuNGC0LXQu9GM0L3QviAlZCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjM4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjay5kZWx0YUNhY2hlTGltaXQgaXMgdG9vIGhpZ2gsIGZvcmNpbmcgJWQiCiBtc2dzdHIgItC70LjRgdC40YIgcGFjay5kZWx0YUNhY2hlTGltaXQg0YHQu9C40YjQutC+0Lwg0LLRi9GB0L7QutC40LksINC40YHQv9C+0LvRjNC30YPRjiDQv9GA0LjQvdGD0LTQuNGC0LXQu9GM0L3QviAlZCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDcKIG1zZ2lkICItLW1heC1wYWNrLXNpemUgY2Fubm90IGJlIHVzZWQgdG8gYnVpbGQgYSBwYWNrIGZvciB0cmFuc2ZlciIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwOQogbXNnaWQgIm1pbmltdW0gcGFjayBzaXplIGxpbWl0IGlzIDEgTWlCIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwMQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDE0CiBtc2dpZCAiLS10aGluIGNhbm5vdCBiZSB1c2VkIHRvIGJ1aWxkIGFuIGluZGV4YWJsZSBwYWNrIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwNAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDE3CiBtc2dpZCAiLS1rZWVwLXVucmVhY2hhYmxlIGFuZCAtLXVucGFjay11bnJlYWNoYWJsZSBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxMAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDIzCiBtc2dpZCAiY2Fubm90IHVzZSAtLWZpbHRlciB3aXRob3V0IC0tc3Rkb3V0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM2NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDg0CiBtc2dpZCAiRW51bWVyYXRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi0J/QtdGA0LXRh9C40YHQu9C10L3QuNC1INC+0LHRitC10LrRgtC+0LIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRvdGFsICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcmV1c2VkICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSIKIG1zZ3N0ciAi0JLRgdC10LPQviAlPFBSSXUzMj4gKNC40LfQvNC10L3QtdC90LjRjyAlPFBSSXUzMj4pLCDQv9C+0LLRgtC+0YDQvdC+INC40YHQv9C+0LvRjNC30L7QstCw0L3QviAlPFBSSXUzMj4gKNC40LfQvNC10L3QtdC90LjRjyAlPFBSSXUzMj4pIgogCi0jOiBidWlsdGluL3BhY2stcmVmcy5jOjcKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6OAogbXNnaWQgImdpdCBwYWNrLXJlZnMgWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCBwYWNrLXJlZnMgWzzQvtC/0YbQuNC4Pl0iCiAKLSM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTUKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKIG1zZ2lkICJwYWNrIGV2ZXJ5dGhpbmciCiBtc2dzdHIgItC/0LDQutC+0LLQsNGC0Ywg0LLRgdGRIgogCi0jOiBidWlsdGluL3BhY2stcmVmcy5jOjE2CisjOiBidWlsdGluL3BhY2stcmVmcy5jOjE3CiBtc2dpZCAicHJ1bmUgbG9vc2UgcmVmcyAoZGVmYXVsdCkiCiBtc2dzdHIgItC/0L7Rh9C40YHRgtC40YLRjCDRgdC70LDQsdGL0LUg0YHRgdGL0LvQutC4ICjQv9C+INGD0LzQvtC70YfQsNC90LjRjikiCiAKQEAgLTEyOTU0LDg0ICsxNTExMSw4OCBAQAogCiAjOiBidWlsdGluL3BydW5lLmM6MTIKIG1zZ2lkICJnaXQgcHJ1bmUgWy1uXSBbLXZdIFstLXByb2dyZXNzXSBbLS1leHBpcmUgPHRpbWU+XSBbLS1dIFs8aGVhZD4uLi5dIgotbXNnc3RyICJnaXQgcHJ1bmUgWy1uXSBbLXZdIFstLXByb2dyZXNzXSBbLS1leHBpcmUgPNCy0YDQtdC80Y8+XSBbLS1dIFs80LLQtdGC0LrQsD7igKZdIgorbXNnc3RyICJnaXQgcHJ1bmUgWy1uXSBbLXZdIFstLXByb2dyZXNzXSBbLS1leHBpcmUgPNCy0YDQtdC80Y8+XSBbLS1dIFs80YDQtdC00LDQutGG0LjRjz7igKZdIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTA5CisjOiBidWlsdGluL3BydW5lLmM6MTMxCiBtc2dpZCAicmVwb3J0IHBydW5lZCBvYmplY3RzIgogbXNnc3RyICLQstGL0LLQtdGB0YLQuCDRgdC/0LjRgdC+0Log0YPQtNCw0LvQtdC90L3Ri9GFINC+0LHRitC10LrRgtC+0LIiCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMTIKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMzQKIG1zZ2lkICJleHBpcmUgb2JqZWN0cyBvbGRlciB0aGFuIDx0aW1lPiIKIG1zZ3N0ciAi0YPQtNCw0LvQuNGC0Ywg0L7QsdGK0LXQutGC0Ysg0YHRgtCw0YDQtdC1INGH0LXQvCA80LTQsNGC0LAt0L7QutC+0L3Rh9Cw0L3QuNGPPiIKIAotIzogYnVpbHRpbi9wcnVuZS5jOjExNAorIzogYnVpbHRpbi9wcnVuZS5jOjEzNgogbXNnaWQgImxpbWl0IHRyYXZlcnNhbCB0byBvYmplY3RzIG91dHNpZGUgcHJvbWlzb3IgcGFja2ZpbGVzIgogbXNnc3RyICLQvtCz0YDQsNC90LjRh9C40YLRjCDQvtCx0YXQvtC0INC+0LHRitC10LrRgtCw0LzQuCDQstC90LUgcHJvbWlzb3Ig0YTQsNC50LvQvtCyINC/0LDQutC10YLQvtCyIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTI4CisjOiBidWlsdGluL3BydW5lLmM6MTUwCiBtc2dpZCAiY2Fubm90IHBydW5lIGluIGEgcHJlY2lvdXMtb2JqZWN0cyByZXBvIgogbXNnc3RyICLQvdC10LvRjNC30Y8g0L/QvtGH0LjRgdGC0LjRgtGMINC90LXQuNGB0L/QvtC70YzQt9GD0LXQvNGL0LUg0L7QsdGK0LXQutGC0Ysg0LIgcHJlY2lvdXMtb2JqZWN0cyDRgNC10L/QvtC30LjRgtC+0YDQuNC4IgogCi0jOiBidWlsdGluL3B1bGwuYzo1OSBidWlsdGluL3B1bGwuYzo2MQorIzogYnVpbHRpbi9wdWxsLmM6NjYgYnVpbHRpbi9wdWxsLmM6NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICLQndC10L/RgNCw0LLQuNC70YzQvdC+0LUg0LfQvdCw0YfQtdC90LjQtSAlczogJXMiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjgxCisjOiBidWlsdGluL3B1bGwuYzo4OAogbXNnaWQgImdpdCBwdWxsIFs8b3B0aW9ucz5dIFs8cmVwb3NpdG9yeT4gWzxyZWZzcGVjPi4uLl1dIgogbXNnc3RyICJnaXQgcHVsbCBbPNC+0L/RhtC40Lg+XSBbPNGA0LXQv9C+0LfQuNGC0L7RgNC40Lk+IFs80YHQv9C10YbQuNGE0LjQutCw0YLQvtGALdGB0YHRi9C70LrQuD7igKZdXSIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTMyCisjOiBidWlsdGluL3B1bGwuYzoxNDAKIG1zZ2lkICJjb250cm9sIGZvciByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyIKIG1zZ3N0ciAi0YPQv9GA0LDQstC70LXQvdC40LUg0YDQtdC60YPRgNGB0LjQstC90YvQvCDQuNC30LLQu9C10YfQtdC90LjQtdC8INC/0L7QtNC80L7QtNGD0LvQtdC5IgogCi0jOiBidWlsdGluL3B1bGwuYzoxMzYKKyM6IGJ1aWx0aW4vcHVsbC5jOjE0NAogbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBtZXJnaW5nIgogbXNnc3RyICLQntC/0YbQuNC4LCDRgdCy0Y/Qt9Cw0L3QvdGL0LUg0YHQviDRgdC70LjRj9C90LjQtdC8IgogCi0jOiBidWlsdGluL3B1bGwuYzoxMzkKKyM6IGJ1aWx0aW4vcHVsbC5jOjE0NwogbXNnaWQgImluY29ycG9yYXRlIGNoYW5nZXMgYnkgcmViYXNpbmcgcmF0aGVyIHRoYW4gbWVyZ2luZyIKIG1zZ3N0ciAi0LfQsNCx0YDQsNGC0Ywg0LjQt9C80LXQvdC10L3QuNGPINGBINC/0L7QvNC+0YnRjNGOINC/0LXRgNC10LzQtdGJ0LXQvdC40Y8sINCwINC90LUg0YHQu9C40Y/QvdC40Y8iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE2NiBidWlsdGluL3JlYmFzZS0taGVscGVyLmM6MjMgYnVpbHRpbi9yZXZlcnQuYzoxMjIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE3NSBidWlsdGluL3JlYmFzZS5jOjQ0NyBidWlsdGluL3JldmVydC5jOjEyNQogbXNnaWQgImFsbG93IGZhc3QtZm9yd2FyZCIKIG1zZ3N0ciAi0YDQsNC30YDQtdGI0LjRgtGMINC/0LXRgNC10LzQvtGC0LrRgyDQstC/0LXRgNC10LQiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE3NQorIzogYnVpbHRpbi9wdWxsLmM6MTg0CiBtc2dpZCAiYXV0b21hdGljYWxseSBzdGFzaC9zdGFzaCBwb3AgYmVmb3JlIGFuZCBhZnRlciByZWJhc2UiCiBtc2dzdHIgItCw0LLRgtC+0LzQsNGC0LjRh9C10YHQutC4INCy0YvQv9C+0LvQvdGP0YLRjCBzdGFzaC9zdGFzaCBwb3Ag0LTQviDQuCDQv9C+0YHQu9C1INC/0LXRgNC10LzQtdGJ0LXQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE5MQorIzogYnVpbHRpbi9wdWxsLmM6MjAwCiBtc2dpZCAiT3B0aW9ucyByZWxhdGVkIHRvIGZldGNoaW5nIgogbXNnc3RyICLQntC/0YbQuNC4LCDRgdCy0Y/Qt9Cw0L3QvdGL0LUg0YEg0LjQt9Cy0LvQtdGH0LXQvdC40LXQvCDQuNC30LzQtdC90LXQvdC40LkiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjIwOQorIzogYnVpbHRpbi9wdWxsLmM6MjEwCittc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGxvY2FsIGJyYW5jaCIKK21zZ3N0ciAi0L/RgNC40L3Rg9C00LjRgtC10LvRjNC90LDRjyDQv9C10YDQtdC30LDQv9C40YHRjCDQu9C+0LrQsNC70YzQvdC+0Lkg0LLQtdGC0LrQuCIKKworIzogYnVpbHRpbi9wdWxsLmM6MjE4CiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgcHVsbGVkIGluIHBhcmFsbGVsIgogbXNnc3RyICLQutC+0LvQuNGH0LXRgdGC0LLQviDQv9C+0LTQvNC+0LTRg9C70LXQuSwg0LrQvtGC0L7RgNGL0LUg0LHRg9C00YPRgiDQv9C+0LvRg9GH0LXQvdGLINC/0LDRgNGA0LDQu9C10LvRjNC90L4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjMwNAorIzogYnVpbHRpbi9wdWxsLmM6MzEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yIHB1bGwuZmY6ICVzIgogbXNnc3RyICLQndC10L/RgNCw0LLQuNC70YzQvdC+0LUg0LfQvdCw0YfQtdC90LjQtSDQtNC70Y8gcHVsbC5mZjogJXMiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyMAorIzogYnVpbHRpbi9wdWxsLmM6NDMwCiBtc2dpZCAiIgogIlRoZXJlIGlzIG5vIGNhbmRpZGF0ZSBmb3IgcmViYXNpbmcgYWdhaW5zdCBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0ICIKICJmZXRjaGVkLiIKIG1zZ3N0ciAi0J3QtdGCINC/0YDQtdGC0LXQvdC00LXQvdGC0L7QsiDQtNC70Y8g0L/QtdGA0LXQvNC10YnQtdC90LjRjyDRgdGA0LXQtNC4INGB0YHRi9C70L7Quiwg0LrQvtGC0L7RgNGL0LUg0LLRiyDRgtC+0LvRjNC60L4g0YfRgtC+INC/0L7Qu9GD0YfQuNC70LguIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MjIKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzMgogbXNnaWQgIiIKICJUaGVyZSBhcmUgbm8gY2FuZGlkYXRlcyBmb3IgbWVyZ2luZyBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0IGZldGNoZWQuIgogbXNnc3RyICLQndC10YIg0L/RgNC10YLQtdC90LTQtdC90YLQvtCyINC00LvRjyDRgdC70LjRj9C90LjRjyDRgdGA0LXQtNC4INGB0YHRi9C70L7Quiwg0LrQvtGC0L7RgNGL0LUg0LLRiyDRgtC+0LvRjNC60L4g0YfRgtC+INC/0L7Qu9GD0YfQuNC70LguIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MjMKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzMwogbXNnaWQgIiIKICJHZW5lcmFsbHkgdGhpcyBtZWFucyB0aGF0IHlvdSBwcm92aWRlZCBhIHdpbGRjYXJkIHJlZnNwZWMgd2hpY2ggaGFkIG5vXG4iCiAibWF0Y2hlcyBvbiB0aGUgcmVtb3RlIGVuZC4iCiBtc2dzdHIgItCe0LHRi9GH0L3QviDRjdGC0L4g0L7Qt9C90LDRh9Cw0LXRgiwg0YfRgtC+INCy0Ysg0L/QtdGA0LXQtNCw0LvQuCDRgdC/0LXRhtC40YTQuNC60LDRhtC40Y4g0YHRgdGL0LvQutC4INGBINC/0L7QvNC+0YnRjNGOINGI0LDQsdC70L7QvdCwINC4INGN0YLQvtGCINGI0LDQsdC70L7QvSDQvdC4INGBINGH0LXQvCDQvdC1INGB0L7QstC/0LDQuyDQvdCwINCy0L3QtdGI0L3QtdC8INGA0LXQv9C+0LfQuNGC0L7RgNC40LguIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MjYKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFza2VkIHRvIHB1bGwgZnJvbSB0aGUgcmVtb3RlICclcycsIGJ1dCBkaWQgbm90IHNwZWNpZnlcbiIKQEAgLTEzMDM5LDY5ICsxNTIwMCw3NCBAQAogImZvciB5b3VyIGN1cnJlbnQgYnJhbmNoLCB5b3UgbXVzdCBzcGVjaWZ5IGEgYnJhbmNoIG9uIHRoZSBjb21tYW5kIGxpbmUuIgogbXNnc3RyICLQktGLINC/0L7Qv9GA0L7RgdC40LvQuCDQv9C+0LvRg9GH0LjRgtGMINC40LfQvNC10L3QtdC90LjRjyDRgdC+INCy0L3QtdGI0L3QtdCz0L4g0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyDCqyVzwrssINC90L4g0L3QtSDRg9C60LDQt9Cw0LvQuCDQstC10YLQutGDLiDQotCw0Log0LrQsNC6INGN0YLQviDQvdC1INGA0LXQv9C+0LfQuNGC0L7RgNC40Lkg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4g0LTQu9GPICDQstCw0YjQtdC5INGC0LXQutGD0YnQtdC5INCy0LXRgtC60LgsINCy0Ysg0LTQvtC70LbQvdGLINGD0LrQsNC30LDRgtGMINCy0LXRgtC60YMg0LIg0LrQvtC80LDQvdC00L3QvtC5INGB0YLRgNC+0LrQtS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzMSBnaXQtcGFyc2UtcmVtb3RlLnNoOjczCisjOiBidWlsdGluL3B1bGwuYzo0NDEgYnVpbHRpbi9yZWJhc2UuYzoxMzIxIGdpdC1wYXJzZS1yZW1vdGUuc2g6NzMKIG1zZ2lkICJZb3UgYXJlIG5vdCBjdXJyZW50bHkgb24gYSBicmFuY2guIgogbXNnc3RyICLQktGLINGB0LXQudGH0LDRgSDQvdC4INC90LAg0L7QtNC90L7QuSDQuNC3INCy0LXRgtC+0LouIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzMgYnVpbHRpbi9wdWxsLmM6NDQ4IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzkKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0MyBidWlsdGluL3B1bGwuYzo0NTggZ2l0LXBhcnNlLXJlbW90ZS5zaDo3OQogbXNnaWQgIlBsZWFzZSBzcGVjaWZ5IHdoaWNoIGJyYW5jaCB5b3Ugd2FudCB0byByZWJhc2UgYWdhaW5zdC4iCiBtc2dzdHIgItCf0L7QttCw0LvRg9C50YHRgtCwLCDRg9C60LDQttC40YLQtSDQvdCwINC60LDQutGD0Y4g0LLQtdGC0LrRgyDQstGLINGF0L7RgtC40YLQtSDQv9C10YDQtdC80LXRgdGC0LjRgtGMINC40LfQvNC10L3QtdC90LjRjy4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzNSBidWlsdGluL3B1bGwuYzo0NTAgZ2l0LXBhcnNlLXJlbW90ZS5zaDo4MgorIzogYnVpbHRpbi9wdWxsLmM6NDQ1IGJ1aWx0aW4vcHVsbC5jOjQ2MCBnaXQtcGFyc2UtcmVtb3RlLnNoOjgyCiBtc2dpZCAiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIG1lcmdlIHdpdGguIgogbXNnc3RyICLQn9C+0LbQsNC70YPQudGB0YLQsCwg0YPQutCw0LbQuNGC0LUg0YEg0LrQsNC60L7QuSDQstC10YLQutC+0Lkg0LLRiyDRhdC+0YLQuNGC0LUg0YHQu9C40YLRjCDQuNC30LzQtdC90LXQvdC40Y8uIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzYgYnVpbHRpbi9wdWxsLmM6NDUxCisjOiBidWlsdGluL3B1bGwuYzo0NDYgYnVpbHRpbi9wdWxsLmM6NDYxCiBtc2dpZCAiU2VlIGdpdC1wdWxsKDEpIGZvciBkZXRhaWxzLiIKIG1zZ3N0ciAi0JTQu9GPINC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdC+0Lkg0LjQvdGE0L7RgNC80LDRhtC40LgsINGB0LzQvtGC0YDQuNGC0LUgZ2l0LXB1bGwoMSkuIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzggYnVpbHRpbi9wdWxsLmM6NDQ0IGJ1aWx0aW4vcHVsbC5jOjQ1MwotIzogZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NAorIzogYnVpbHRpbi9wdWxsLmM6NDQ4IGJ1aWx0aW4vcHVsbC5jOjQ1NCBidWlsdGluL3B1bGwuYzo0NjMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTMyNyBnaXQtcGFyc2UtcmVtb3RlLnNoOjY0CiBtc2dpZCAiPHJlbW90ZT4iCiBtc2dzdHIgIjzQstC90LXRiNC90LjQuS3RgNC10L/QvtC30LjRgtC+0YDQuNC5PiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM4IGJ1aWx0aW4vcHVsbC5jOjQ1MyBidWlsdGluL3B1bGwuYzo0NTggZ2l0LXJlYmFzZS5zaDo1NzYKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0OCBidWlsdGluL3B1bGwuYzo0NjMgYnVpbHRpbi9wdWxsLmM6NDY4CiAjOiBnaXQtcGFyc2UtcmVtb3RlLnNoOjY1CiBtc2dpZCAiPGJyYW5jaD4iCiBtc2dzdHIgIjzQstC10YLQutCwPiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDQ2IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzUKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ1NiBidWlsdGluL3JlYmFzZS5jOjEzMTkgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3NQogbXNnaWQgIlRoZXJlIGlzIG5vIHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICLQoyDRgtC10LrRg9GJ0LXQuSDQstC10YLQutC4INC90LXRgiDQuNC90YTQvtGA0LzQsNGG0LjQuCDQvtCxINC+0YLRgdC70LXQttC40LLQsNC90LjQuC4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ1NSBnaXQtcGFyc2UtcmVtb3RlLnNoOjk1CisjOiBidWlsdGluL3B1bGwuYzo0NjUgZ2l0LXBhcnNlLXJlbW90ZS5zaDo5NQogbXNnaWQgIiIKICJJZiB5b3Ugd2lzaCB0byBzZXQgdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoaXMgYnJhbmNoIHlvdSBjYW4gZG8gc28gd2l0aDoiCiBtc2dzdHIgItCV0YHQu9C4INCy0Ysg0YXQvtGC0LjRgtC1INGD0LrQsNC30LDRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INC+0YLRgdC70LXQttC40LLQsNC10LzQvtC5INCy0LXRgtC60LUsINCy0YvQv9C+0LvQvdC40YLQtToiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ2MAorIzogYnVpbHRpbi9wdWxsLmM6NDcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGNvbmZpZ3VyYXRpb24gc3BlY2lmaWVzIHRvIG1lcmdlIHdpdGggdGhlIHJlZiAnJXMnXG4iCiAiZnJvbSB0aGUgcmVtb3RlLCBidXQgbm8gc3VjaCByZWYgd2FzIGZldGNoZWQuIgogbXNnc3RyICLQktCw0YjQsCDQutC+0L3RhNC40LPRg9GA0LDRhtC40Y8g0YPQutCw0LfRi9Cy0LDQtdGCLCDRh9GC0L4g0L3Rg9C20L3QviDRgdC70LjRgtGMINC40LfQvNC10L3QtdC90LjRjyDRgdC+INGB0YHRi9C70LrQvtC5XG7CqyVzwrsg0LjQtyDQstC90LXRiNC90LXQs9C+INGA0LXQv9C+0LfQuNGC0L7RgNC40Y8sINC90L4g0YLQsNC60LDRjyDRgdGB0YvQu9C60LAg0L3QtSDQsdGL0LvQsCDQv9C+0LvRg9GH0LXQvdCwLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODI5CisjOiBidWlsdGluL3B1bGwuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBjb21taXQgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9wdWxsLmM6ODU0CiBtc2dpZCAiaWdub3JpbmcgLS12ZXJpZnktc2lnbmF0dXJlcyBmb3IgcmViYXNlIgogbXNnc3RyICLQuNCz0L3QvtGA0LjRgNC+0LLQsNC90LjQtSAtLXZlcmlmeS1zaWduYXR1cmVzINC/0YDQuCDQv9C10YDQtdC80LXRidC10L3QuNC4IgogCi0jOiBidWlsdGluL3B1bGwuYzo4NzcKKyM6IGJ1aWx0aW4vcHVsbC5jOjkwOQogbXNnaWQgIi0tW25vLV1hdXRvc3Rhc2ggb3B0aW9uIGlzIG9ubHkgdmFsaWQgd2l0aCAtLXJlYmFzZS4iCiBtc2dzdHIgIi0tW25vLV1hdXRvc3Rhc2gg0LzQvtC20L3QviDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YLQvtC70YzQutC+INCy0LzQtdGB0YLQtSDRgSAtLXJlYmFzZS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg4NQorIzogYnVpbHRpbi9wdWxsLmM6OTE3CiBtc2dpZCAiVXBkYXRpbmcgYW4gdW5ib3JuIGJyYW5jaCB3aXRoIGNoYW5nZXMgYWRkZWQgdG8gdGhlIGluZGV4LiIKIG1zZ3N0ciAi0J7QsdC90L7QstC70LXQvdC40LUg0LXRidC1INC90LUg0L3QsNGH0LDQstGI0LXQudGB0Y8g0LLQtdGC0LrQuCDRgSDQuNC30LzQtdC90LXQvdC40Y/QvNC4LCDQtNC+0LHQsNCy0LvQtdC90L3Ri9C80Lgg0LIg0LjQvdC00LXQutGBLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODg4CisjOiBidWlsdGluL3B1bGwuYzo5MjEKIG1zZ2lkICJwdWxsIHdpdGggcmViYXNlIgogbXNnc3RyICLQv9C+0LvRg9GH0LXQvdC40LUg0YEg0L/QtdGA0LXQvNC10YnQtdC90LjQtdC8IgogCi0jOiBidWlsdGluL3B1bGwuYzo4ODkKKyM6IGJ1aWx0aW4vcHVsbC5jOjkyMgogbXNnaWQgInBsZWFzZSBjb21taXQgb3Igc3Rhc2ggdGhlbS4iCiBtc2dzdHIgItGB0LTQtdC70LDQudGC0LUg0LrQvtC80LzQuNGCINC40LvQuCDRgdC/0YDRj9GH0YzRgtC1INC40YUuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MTQKKyM6IGJ1aWx0aW4vcHVsbC5jOjk0NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZmV0Y2ggdXBkYXRlZCB0aGUgY3VycmVudCBicmFuY2ggaGVhZC5cbiIKQEAgLTEzMTA5LDcgKzE1Mjc1LDcgQEAKICJjb21taXQgJXMuIgogbXNnc3RyICLQuNC30LLQu9C10YfQtdC90LjQtSDQvtCx0L3QvtCy0LjQu9C+INGD0LrQsNC30LDRgtC10LvRjCDQvdCwINCy0LDRiNGDINGC0LXQutGD0YnRg9GOINCy0LXRgtC60YMuXG7Qv9C10YDQtdC80L7RgtC60LAg0LLQsNGI0LXQs9C+INGA0LDQsdC+0YfQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsFxu0YEg0LrQvtC80LzQuNGC0LAgJXMuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MTkKKyM6IGJ1aWx0aW4vcHVsbC5jOjk1MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IGZhc3QtZm9yd2FyZCB5b3VyIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTEzMTIwLDE1ICsxNTI4NiwxNSBAQAogInRvIHJlY292ZXIuIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0LXRgNC10LzQvtGC0LDRgtGMINCy0L/QtdGA0ZHQtCDQuNC30LzQtdC90LXQvdC40Y8g0LIg0LLQsNGI0LXQvCDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1Llxu0J/QvtGB0LvQtSDRgtC+0LPQviwg0LrQsNC6INCy0Ysg0YPQsdC10LTQuNGC0LXRgdGMLCDRh9GC0L4g0LLRiyDRgdC+0YXRgNCw0L3QuNC70Lgg0LLRgdGRINC90LXQvtCx0YXQvtC00LjQvNC+0LUg0LjQtyDQstGL0LLQvtC00LBcbiQgZ2l0IGRpZmYgJXNcbiwg0LfQsNC/0YPRgdGC0LjRgtC1XG4kIGdpdCByZXNldCAtLWhhcmRcbtC00LvRjyDQstC+0YHRgdGC0LDQvdC+0LLQu9C10L3QuNGPINC40YHRhdC+0LTQvdC+0LPQviDRgdC+0YHRgtC+0Y/QvdC40Y8uIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MzQKKyM6IGJ1aWx0aW4vcHVsbC5jOjk2OAogbXNnaWQgIkNhbm5vdCBtZXJnZSBtdWx0aXBsZSBicmFuY2hlcyBpbnRvIGVtcHR5IGhlYWQuIgogbXNnc3RyICLQndC10LvRjNC30Y8g0YHQu9C40YLRjCDQvdC10YHQutC+0LvRjNC60L4g0LLQtdGC0L7QuiDQsiDQv9GD0YHRgtC+0Lkg0YPQutCw0LfQsNGC0LXQu9GMINC90LAg0LLQtdGC0LrRgy4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjkzOAorIzogYnVpbHRpbi9wdWxsLmM6OTcyCiBtc2dpZCAiQ2Fubm90IHJlYmFzZSBvbnRvIG11bHRpcGxlIGJyYW5jaGVzLiIKIG1zZ3N0ciAi0J3QtdCy0L7Qt9C80L7QttC90L4g0L/QtdGA0LXQvNC10YHRgtC40YLRjCDQvdCw0LQg0L3QtdGB0LrQvtC70YzQutC40LzQuCDQstC10YLQutCw0LzQuC4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjk0NQorIzogYnVpbHRpbi9wdWxsLmM6OTc5CiBtc2dpZCAiY2Fubm90IHJlYmFzZSB3aXRoIGxvY2FsbHkgcmVjb3JkZWQgc3VibW9kdWxlIG1vZGlmaWNhdGlvbnMiCiBtc2dzdHIgItC90LXQstC+0LfQvNC+0LbQvdC+INCy0YvQv9C+0LvQvdC40YLRjCDQv9C10YDQtdC80LXRidC10L3QuNC1INGBINC30LDQv9C40YHQsNC90L3Ri9C80Lgg0LvQvtC60LDQu9GM0L3Ri9C80Lgg0LjQt9C80LXQvdC10L3QuNGP0LzQuCDQsiDQv9C+0LTQvNC+0LTRg9C70Y/RhSIKIApAQCAtMTMxNDQsMTMgKzE1MzEwLDEzIEBACiBtc2dpZCAiLS1kZWxldGUgb25seSBhY2NlcHRzIHBsYWluIHRhcmdldCByZWYgbmFtZXMiCiBtc2dzdHIgItC+0L/RhtC40Y8gLS1kZWxldGUg0L/RgNC40L3QuNC80LDQtdGCINGC0L7Qu9GM0LrQviDQv9GA0L7RgdGC0YvQtSDRhtC10LvQtdCy0YvQtSDQuNC80LXQvdCwINGB0YHRi9C70L7QuiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTY1CisjOiBidWlsdGluL3B1c2guYzoxNjcKIG1zZ2lkICIiCiAiXG4iCiAiVG8gY2hvb3NlIGVpdGhlciBvcHRpb24gcGVybWFuZW50bHksIHNlZSBwdXNoLmRlZmF1bHQgaW4gJ2dpdCBoZWxwIGNvbmZpZycuIgogbXNnc3RyICJcbtCn0YLQvtCx0Ysg0LLRi9Cx0YDQsNGC0Ywg0LvRjtCx0YPRjiDQuNC3INC+0L/RhtC40Lkg0L3QsCDQv9C+0YHRgtC+0Y/QvdC90L7QuSDQvtGB0L3QvtCy0LUsINGB0LzQvtGC0YDQuNGC0LUgcHVzaC5kZWZhdWx0INCyIMKrZ2l0IGhlbHAgY29uZmlnwrsuIgogCi0jOiBidWlsdGluL3B1c2guYzoxNjgKKyM6IGJ1aWx0aW4vcHVzaC5jOjE3MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIHVwc3RyZWFtIGJyYW5jaCBvZiB5b3VyIGN1cnJlbnQgYnJhbmNoIGRvZXMgbm90IG1hdGNoXG4iCkBAIC0xMzE2MSwxMSArMTUzMjcsMTEgQEAKICJcbiIKICJUbyBwdXNoIHRvIHRoZSBicmFuY2ggb2YgdGhlIHNhbWUgbmFtZSBvbiB0aGUgcmVtb3RlLCB1c2VcbiIKICJcbiIKLSIgICAgZ2l0IHB1c2ggJXMgJXNcbiIKKyIgICAgZ2l0IHB1c2ggJXMgSEVBRFxuIgogIiVzIgotbXNnc3RyICLQmNC80Y8g0LLRi9GI0LXRgdGC0L7Rj9GJ0LXQuSDQstC10YLQutC4INC4INCy0LDRiNC10Lkg0YLQtdC60YPRidC10Lkg0LLQtdGC0LrQuCDRgNCw0LfQu9C40YfQsNGO0YLRgdGPLiDQp9GC0L7QsdGLINC+0YLQv9GA0LDQstC40YLRjCDQuNC30LzQtdC90LXQvdC40Y8g0LIg0LLRi9GI0LXRgdGC0L7Rj9GJ0YPRjiDQstC10YLQutGDINC90LAg0LLQvdC10YjQvdC10Lwg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuCwg0LjRgdC/0L7Qu9GM0LfRg9C50YLQtTpcblxuICAgIGdpdCBwdXNoICVzIEhFQUQ6JXNcblxu0KfRgtC+0LHRiyDQvtGC0L/RgNCw0LLQuNGC0Ywg0LjQt9C80LXQvdC10L3QuNGPINCyINCy0LXRgtC60YMg0YEg0YLQsNC60LjQvCDQttC1INC40LzQtdC90LXQvCDQvdCwINCy0L3QtdGI0L3QtdC8INGA0LXQv9C+0LfQuNGC0L7RgNC40LgsINC40YHQv9C+0LvRjNC30YPQudGC0LU6XG5cbiAgICBnaXQgcHVzaCAlcyAlc1xuJXMiCittc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTgzCisjOiBidWlsdGluL3B1c2guYzoxODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBhcmUgbm90IGN1cnJlbnRseSBvbiBhIGJyYW5jaC5cbiIKQEAgLTEzMTc1LDcgKzE1MzQxLDcgQEAKICIgICAgZ2l0IHB1c2ggJXMgSEVBRDo8bmFtZS1vZi1yZW1vdGUtYnJhbmNoPlxuIgogbXNnc3RyICLQktGLINGB0LXQudGH0LDRgSDQvdC1INC90LDRhdC+0LTQuNGC0LXRgdGMINC90Lgg0L3QsCDQvtC00L3QvtC5INC40Lcg0LLQtdGC0L7Qui5cbtCn0YLQvtCx0Ysg0L7RgtC/0YDQsNCy0LjRgtGMINC40YHRgtC+0YDQuNGOLCDQstC10LTRg9GJ0YPRjiDQuiDRgtC10LrRg9GJ0LXQvNGDICjQvtGC0LTQtdC70ZHQvdC90YvQuSBIRUFEKSDRgdC+0YHRgtC+0Y/QvdC40Y4sINC40YHQv9C+0LvRjNC30YPQudGC0LVcblxuICAgIGdpdCBwdXNoICVzIEhFQUQ6PNC40LzRjy3QstC90LXRiNC90LXQuS3QstC10YLQutC4PlxuIgogCi0jOiBidWlsdGluL3B1c2guYzoxOTcKKyM6IGJ1aWx0aW4vcHVzaC5jOjE5OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGN1cnJlbnQgYnJhbmNoICVzIGhhcyBubyB1cHN0cmVhbSBicmFuY2guXG4iCkBAIC0xMzE4NCwxMyArMTUzNTAsMTMgQEAKICIgICAgZ2l0IHB1c2ggLS1zZXQtdXBzdHJlYW0gJXMgJXNcbiIKIG1zZ3N0ciAi0KLQtdC60YPRidCw0Y8g0LLQtdGC0LrQsCAlcyDQvdC1INC40LzQtdC10YIg0LLRi9GI0LXRgdGC0L7Rj9GJ0LXQuSDQstC10YLQutC4Llxu0KfRgtC+0LHRiyDQvtGC0L/RgNCw0LLQuNGC0Ywg0YLQtdC60YPRidGD0Y4g0LLQtdGC0LrRgyDQuCDRg9GB0YLQsNC90L7QstC40YLRjCDQstC90LXRiNC90Y7RjiDQstC10YLQutGDINC60LDQuiDQstGL0YjQtdGB0YLQvtGP0YnRg9GOINC00LvRjyDRjdGC0L7QuSDQstC10YLQutC4LCDQuNGB0L/QvtC70YzQt9GD0LnRgtC1XG5cbiAgICBnaXQgcHVzaCAtLXNldC11cHN0cmVhbSAlcyAlc1xuIgogCi0jOiBidWlsdGluL3B1c2guYzoyMDUKKyM6IGJ1aWx0aW4vcHVzaC5jOjIwNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGN1cnJlbnQgYnJhbmNoICVzIGhhcyBtdWx0aXBsZSB1cHN0cmVhbSBicmFuY2hlcywgcmVmdXNpbmcgdG8gcHVzaC4iCiBtc2dzdHIgItCS0LDRiNCwINGC0LXQutGD0YnQsNGPINCy0LXRgtC60LAgJXMg0LjQvNC10LXRgiDQvdC10YHQutC+0LvRjNC60L4g0LLRi9GI0LXRgdGC0L7Rj9GJ0LjRhSDQstC10YLQvtC6LCDQvtGC0LrQsNC3INCyINC+0YLQv9GA0LDQstC60LUg0LjQt9C80LXQvdC10L3QuNC5LiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjA4CisjOiBidWlsdGluL3B1c2guYzoyMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBhcmUgcHVzaGluZyB0byByZW1vdGUgJyVzJywgd2hpY2ggaXMgbm90IHRoZSB1cHN0cmVhbSBvZlxuIgpAQCAtMTMxOTgsMTEgKzE1MzY0LDExIEBACiAidG8gdXBkYXRlIHdoaWNoIHJlbW90ZSBicmFuY2guIgogbXNnc3RyICLQktGLINGB0LXQudGH0LDRgSDQvtGC0L/RgNCw0LLQu9GP0LXRgtC1INC40LfQvNC10L3QtdC90LjRjyDQvdCwINCy0L3QtdGI0L3QuNC5INGA0LXQv9C+0LfQuNGC0L7RgNC40Lkgwqslc8K7LCDQutC+0YLQvtGA0YvQuSDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LLRi9GI0LXRgdGC0L7Rj9GJ0LjQvCDQtNC70Y8g0LLQsNGI0LXQuSDRgtC10LrRg9GJ0LXQuSDQstC10YLQutC4IMKrJXPCuywg0LHQtdC3INGD0LrQsNC30LDQvdC40Y8g0YLQvtCz0L4sINGH0YLQviDQvtGC0L/RgNCw0LLQu9GP0YLRjCDQuCDQsiDQutCw0LrRg9GOINCy0L3QtdGI0L3RjtGOINCy0LXRgtC60YMuIgogCi0jOiBidWlsdGluL3B1c2guYzoyNjcKKyM6IGJ1aWx0aW4vcHVzaC5jOjI2OQogbXNnaWQgIllvdSBkaWRuJ3Qgc3BlY2lmeSBhbnkgcmVmc3BlY3MgdG8gcHVzaCwgYW5kIHB1c2guZGVmYXVsdCBpcyBcIm5vdGhpbmdcIi4iCiBtc2dzdHIgItCS0Ysg0L3QtSDRg9C60LDQt9Cw0LvQuCDRgdC/0LXRhtC40YTQuNC60LDRhtC40Y4g0YHRgdGL0LvQutC4INC00LvRjyDQvtGC0L/RgNCw0LLQutC4LCDQsCBwdXNoLmRlZmF1bHQg0YPQutCw0LfQsNC9INC60LDQuiDCq25vdGhpbmfCuy4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI3NAorIzogYnVpbHRpbi9wdXNoLmM6Mjc2CiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSB0aXAgb2YgeW91ciBjdXJyZW50IGJyYW5jaCBpcyBiZWhpbmRcbiIKICJpdHMgcmVtb3RlIGNvdW50ZXJwYXJ0LiBJbnRlZ3JhdGUgdGhlIHJlbW90ZSBjaGFuZ2VzIChlLmcuXG4iCkBAIC0xMzIxMCw3ICsxNTM3Niw3IEBACiAiU2VlIHRoZSAnTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzJyBpbiAnZ2l0IHB1c2ggLS1oZWxwJyBmb3IgZGV0YWlscy4iCiBtc2dzdHIgItCe0LHQvdC+0LLQu9C10L3QuNGPINCx0YvQu9C4INC+0YLQutC70L7QvdC10L3Riywg0YLQsNC6INC60LDQuiDQstC10YDRhdGD0YjQutCwINCy0LDRiNC10Lkg0YLQtdC60YPRidC10Lkg0LLQtdGC0LrQuFxu0L/QvtC30LDQtNC4INC10LUg0LLQvdC10YjQvdC10Lkg0YfQsNGB0YLQuC4g0JfQsNCx0LXRgNC40YLQtSDQuCDRgdC70LXQudGC0LUg0LLQvdC10YjQvdC40LUg0LjQt9C80LXQvdC10L3QuNGPIFxuKNC90LDQv9GA0LjQvNC10YAsINGBINC/0L7QvNC+0YnRjNGOIMKrZ2l0IHB1bGwg4oCmwrspINC/0LXRgNC10LQg0L/QvtCy0YLQvtGA0L3QvtC5INC/0L7Qv9GL0YLQutC+0Lkg0L7RgtC/0YDQsNCy0LrQuFxu0LjQt9C80LXQvdC10L3QuNC5Llxu0JTQu9GPINC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdC+0Lkg0LjQvdGE0L7RgNC80LDRhtC40LgsINGB0LzQvtGC0YDQuNGC0LUgwqtOb3RlIGFib3V0IGZhc3QtZm9yd2FyZHPCu1xu0LIgwqtnaXQgcHVzaCAtLWhlbHDCuy4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI4MAorIzogYnVpbHRpbi9wdXNoLmM6MjgyCiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIGEgcHVzaGVkIGJyYW5jaCB0aXAgaXMgYmVoaW5kIGl0cyByZW1vdGVcbiIKICJjb3VudGVycGFydC4gQ2hlY2sgb3V0IHRoaXMgYnJhbmNoIGFuZCBpbnRlZ3JhdGUgdGhlIHJlbW90ZSBjaGFuZ2VzXG4iCkBAIC0xMzIxOCw3ICsxNTM4NCw3IEBACiAiU2VlIHRoZSAnTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzJyBpbiAnZ2l0IHB1c2ggLS1oZWxwJyBmb3IgZGV0YWlscy4iCiBtc2dzdHIgItCe0LHQvdC+0LLQu9C10L3QuNGPINCx0YvQu9C4INC+0YLQutC70L7QvdC10L3Riywg0YLQsNC6INC60LDQuiDQstC10YDRhdGD0YjQutCwINC+0YLQv9GA0LDQstC70Y/QtdC80L7QuSDQstC10YLQutC4XG7Qv9C+0LfQsNC00Lgg0LXQtSDQstC90LXRiNC90LXQuSDRh9Cw0YHRgtC4LiDQn9C10YDQtdC60LvRjtGH0LjRgtC10YHRjCDQvdCwINCy0LXRgtC60YMg0Lgg0LfQsNCx0LXRgNC40YLQtSDQstC90LXRiNC90LjQtVxu0LjQt9C80LXQvdC10L3QuNGPICjQvdCw0L/RgNC40LzQtdGALCDRgSDQv9C+0LzQvtGJ0YzRjiDCq2dpdCBwdWxsIOKApsK7KSDQv9C10YDQtdC0INC/0L7QstGC0L7RgNC90L7QuVxu0L/QvtC/0YvRgtC60L7QuSDQvtGC0L/RgNCw0LLQutC4INC40LfQvNC10L3QtdC90LjQuS5cbtCU0LvRjyDQtNC+0L/QvtC70L3QuNGC0LXQu9GM0L3QvtC5INC40L3RhNC+0YDQvNCw0YbQuNC4LCDRgdC80L7RgtGA0LjRgtC1IMKrTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzwrtcbtCyIMKrZ2l0IHB1c2ggLS1oZWxwwrsuIgogCi0jOiBidWlsdGluL3B1c2guYzoyODYKKyM6IGJ1aWx0aW4vcHVzaC5jOjI4OAogbXNnaWQgIiIKICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgcmVtb3RlIGNvbnRhaW5zIHdvcmsgdGhhdCB5b3UgZG9cbiIKICJub3QgaGF2ZSBsb2NhbGx5LiBUaGlzIGlzIHVzdWFsbHkgY2F1c2VkIGJ5IGFub3RoZXIgcmVwb3NpdG9yeSBwdXNoaW5nXG4iCkBAIC0xMzIyNywzMyArMTUzOTMsMzMgQEAKICJTZWUgdGhlICdOb3RlIGFib3V0IGZhc3QtZm9yd2FyZHMnIGluICdnaXQgcHVzaCAtLWhlbHAnIGZvciBkZXRhaWxzLiIKIG1zZ3N0ciAi0J7QsdC90L7QstC70LXQvdC40Y8g0LHRi9C70Lgg0L7RgtC60LvQvtC90LXQvdGLLCDRgtCw0Log0LrQsNC6INCy0L3QtdGI0L3QuNC5INGA0LXQv9C+0LfQuNGC0L7RgNC40Lkg0YHQvtC00LXRgNC20LjRglxu0LjQt9C80LXQvdC10L3QuNGPLCDQutC+0YLQvtGA0YvRhSDRgyDQstCw0YEg0L3QtdGCINCyINCy0LDRiNC10Lwg0LvQvtC60LDQu9GM0L3QvtC8INGA0LXQv9C+0LfQuNGC0L7RgNC40LguXG7QntCx0YvRh9C90L4sINGN0YLQviDRgdCy0Y/Qt9Cw0L3QvdC+INGBINGC0LXQvCwg0YfRgtC+INC60YLQvi3RgtC+INGD0LbQtSDQvtGC0L/RgNCw0LLQuNC7INC40LfQvNC10L3QtdC90LjRjyDQsiBcbtGC0L4g0LbQtSDQvNC10YHRgtC+LiDQn9C10YDQtdC0INC/0L7QstGC0L7RgNC90L7QuSDQvtGC0L/RgNCw0LLQutC+0Lkg0LLQsNGI0LjRhSDQuNC30LzQtdC90LXQvdC40LksINCy0LDQvCDQvdGD0LbQvdC+XG7Qt9Cw0LHRgNCw0YLRjCDQuCDRgdC70LjRgtGMINC40LfQvNC10L3QtdC90LjRjyDQuNC3INCy0L3QtdGI0L3QtdCz0L4g0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyDRgdC10LHQtVxuKNC90LDQv9GA0LjQvNC10YAsINGBINC/0L7QvNC+0YnRjNGOIMKrZ2l0IHB1bGwg4oCmwrspLlxu0JTQu9GPINC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdC+0Lkg0LjQvdGE0L7RgNC80LDRhtC40LgsINGB0LzQvtGC0YDQuNGC0LUgwqtOb3RlIGFib3V0IGZhc3QtZm9yd2FyZHPCu1xu0LIgwqtnaXQgcHVzaCAtLWhlbHDCuy4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI5MworIzogYnVpbHRpbi9wdXNoLmM6Mjk1CiBtc2dpZCAiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHRhZyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgcmVtb3RlLiIKIG1zZ3N0ciAi0J7QsdC90L7QstC70LXQvdC40Y8g0LHRi9C70Lgg0L7RgtC60LvQvtC90LXQvdGLLCDRgtCw0Log0LrQsNC6INC80LXRgtC60LAg0YPQttC1INGB0YPRidC10YHRgtCy0YPQtdGCINCy0L4g0LLQvdC10YjQvdC10Lwg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuC4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI5NgorIzogYnVpbHRpbi9wdXNoLmM6Mjk4CiBtc2dpZCAiIgogIllvdSBjYW5ub3QgdXBkYXRlIGEgcmVtb3RlIHJlZiB0aGF0IHBvaW50cyBhdCBhIG5vbi1jb21taXQgb2JqZWN0LFxuIgogIm9yIHVwZGF0ZSBhIHJlbW90ZSByZWYgdG8gbWFrZSBpdCBwb2ludCBhdCBhIG5vbi1jb21taXQgb2JqZWN0LFxuIgogIndpdGhvdXQgdXNpbmcgdGhlICctLWZvcmNlJyBvcHRpb24uXG4iCiBtc2dzdHIgItCS0Ysg0L3QtSDQvNC+0LbQtdGC0LUg0L7QsdC90L7QstC40YLRjCDQstC90LXRiNC90Y7RjiDRgdGB0YvQu9C60YMsINC60L7RgtC+0YDQsNGPINGD0LrQsNC30YvQstCw0LXRgiDQvdCwINC+0LHRitC10LrRgiwg0L3QtSDRj9Cy0LvRj9GO0YnQuNC50YHRjyDQutC+0LzQvNC40YLQvtC8INC40LvQuCDQvtCx0L3QvtCy0LjRgtGMINCy0L3QtdGI0L3RjtGOINGB0YHRi9C70LrRgyDRgtCw0LosINGH0YLQvtCx0Ysg0L7QvdCwINGD0LrQsNC30YvQstCw0LvQsCDQvdCwINC+0LHRitC10LrRgiwg0L3QtSDRj9Cy0LvRj9GO0YnQuNC50YHRjyDQutC+0LzQvNC40YLQvtC8LCDQsdC10Lcg0YPQutCw0LfQsNC90LjRjyDQvtC/0YbQuNC4IMKrLS1mb3JjZcK7LlxuIgogCi0jOiBidWlsdGluL3B1c2guYzozNTcKKyM6IGJ1aWx0aW4vcHVzaC5jOjM1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJQdXNoaW5nIHRvICVzXG4iCiBtc2dzdHIgItCe0YLQv9GA0LDQstC60LAg0LIgJXNcbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MzYxCisjOiBidWlsdGluL3B1c2guYzozNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHB1c2ggc29tZSByZWZzIHRvICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC/0YDQsNCy0LjRgtGMINC90LXQutC+0YLQvtGA0YvQtSDRgdGB0YvQu9C60Lgg0LIgwqslc8K7IgogCi0jOiBidWlsdGluL3B1c2guYzozOTUKKyM6IGJ1aWx0aW4vcHVzaC5jOjM5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcmVwb3NpdG9yeSAnJXMnIgogbXNnc3RyICLQv9C70L7RhdC+0Lkg0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM5NgorIzogYnVpbHRpbi9wdXNoLmM6Mzk5CiBtc2dpZCAiIgogIk5vIGNvbmZpZ3VyZWQgcHVzaCBkZXN0aW5hdGlvbi5cbiIKICJFaXRoZXIgc3BlY2lmeSB0aGUgVVJMIGZyb20gdGhlIGNvbW1hbmQtbGluZSBvciBjb25maWd1cmUgYSByZW1vdGUgcmVwb3NpdG9yeSB1c2luZ1xuIgpAQCAtMTMyNjUsMTA0ICsxNTQzMSwxMDQgQEAKICIgICAgZ2l0IHB1c2ggPG5hbWU+XG4iCiBtc2dzdHIgItCd0LUg0L3QsNGB0YLRgNC+0LXQvdCwINGC0L7Rh9C60LAg0L3QsNC30L3QsNGH0LXQvdC40Y8g0LTQu9GPINC+0YLQv9GA0LDQstC60LguXG7Qm9C40LHQviDRg9C60LDQttC40YLQtSBVUkwg0YEg0L/QvtC80L7RidGM0Y4g0LrQvtC80LDQvdC00L3QvtC5INGB0YLRgNC+0LrQuCwg0LvQuNCx0L4g0L3QsNGB0YLRgNC+0LnRgtC1INCy0L3QtdGI0L3QuNC5INGA0LXQv9C+0LfQuNGC0L7RgNC40Lkg0YEg0L/QvtC80L7RidGM0Y5cblxuICAgIGdpdCByZW1vdGUgYWRkIDzQuNC80Y8+IDzQsNC00YDQtdGBPlxuXG7QsCDQt9Cw0YLQtdC8INC+0YLQv9GA0LDQstGM0YLQtSDQuNC30LzQtdC90LXQvdC40Y8g0YEg0L/QvtC80L7RidGM0Y4g0LjQvNC10L3QuCDQstC90LXRiNC90LXQs9C+INGA0LXQv9C+0LfQuNGC0L7RgNC40Y9cblxuICAgIGdpdCBwdXNoIDzQuNC80Y8+XG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU1MQorIzogYnVpbHRpbi9wdXNoLmM6NTU0CiBtc2dpZCAicmVwb3NpdG9yeSIKIG1zZ3N0ciAi0YDQtdC/0L7Qt9C40YLQvtGA0LjQuSIKIAotIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY0CisjOiBidWlsdGluL3B1c2guYzo1NTUgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjQKIG1zZ2lkICJwdXNoIGFsbCByZWZzIgogbXNnc3RyICLQvtGC0L/RgNCw0LLQuNGC0Ywg0LLRgdC1INGB0YHRi9C70LrQuCIKIAotIzogYnVpbHRpbi9wdXNoLmM6NTUzIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY2CisjOiBidWlsdGluL3B1c2guYzo1NTYgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjYKIG1zZ2lkICJtaXJyb3IgYWxsIHJlZnMiCiBtc2dzdHIgItGB0LTQtdC70LDRgtGMINC30LXRgNC60LDQu9C+INCy0YHQtdGFINGB0YHRi9C70L7QuiIKIAotIzogYnVpbHRpbi9wdXNoLmM6NTU1CisjOiBidWlsdGluL3B1c2guYzo1NTgKIG1zZ2lkICJkZWxldGUgcmVmcyIKIG1zZ3N0ciAi0YPQtNCw0LvQuNGC0Ywg0YHRgdGL0LvQutC4IgogCi0jOiBidWlsdGluL3B1c2guYzo1NTYKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1OQogbXNnaWQgInB1c2ggdGFncyAoY2FuJ3QgYmUgdXNlZCB3aXRoIC0tYWxsIG9yIC0tbWlycm9yKSIKIG1zZ3N0ciAi0L7RgtC/0YDQsNCy0LjRgtGMINC80LXRgtC60LggKNC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LLQvNC10YHRgtC1INGBIC0tYWxsINC40LvQuCAtLW1pcnJvcikiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU1OSBidWlsdGluL3NlbmQtcGFjay5jOjE2NworIzogYnVpbHRpbi9wdXNoLmM6NTYyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY3CiBtc2dpZCAiZm9yY2UgdXBkYXRlcyIKIG1zZ3N0ciAi0L/RgNC40L3Rg9C00LjRgtC10LvRjNC90L7QtSDQvtCx0L3QvtCy0LvQtdC90LjQtSIKIAotIzogYnVpbHRpbi9wdXNoLmM6NTYxIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgxCisjOiBidWlsdGluL3B1c2guYzo1NjQgYnVpbHRpbi9zZW5kLXBhY2suYzoxODEKIG1zZ2lkICI8cmVmbmFtZT46PGV4cGVjdD4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9wdXNoLmM6NTYyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgyCisjOiBidWlsdGluL3B1c2guYzo1NjUgYnVpbHRpbi9zZW5kLXBhY2suYzoxODIKIG1zZ2lkICJyZXF1aXJlIG9sZCB2YWx1ZSBvZiByZWYgdG8gYmUgYXQgdGhpcyB2YWx1ZSIKIG1zZ3N0ciAi0YLRgNC10LHQvtCy0LDRgtGMLCDRh9GC0L7QsdGLINGB0YLQsNGA0L7QtSDQt9C90LDRh9C10L3QuNC1INGB0YHRi9C70LrQuCDQsdGL0LvQviDQvtC20LjQtNCw0LXQvNGL0LwiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU2NQorIzogYnVpbHRpbi9wdXNoLmM6NTY4CiBtc2dpZCAiY29udHJvbCByZWN1cnNpdmUgcHVzaGluZyBvZiBzdWJtb2R1bGVzIgogbXNnc3RyICLRg9C/0YDQsNCy0LvQtdC90LjQtSDRgNC10LrRg9GA0YHQuNCy0L3QvtC5INC+0YLQv9GA0LDQstC60L7QuSDQv9C+0LTQvNC+0LTRg9C70LXQuSIKIAotIzogYnVpbHRpbi9wdXNoLmM6NTY3IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc1CisjOiBidWlsdGluL3B1c2guYzo1NzAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzUKIG1zZ2lkICJ1c2UgdGhpbiBwYWNrIgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YLQvtC90LrQuNC1INC/0LDQutC10YLRiyIKIAotIzogYnVpbHRpbi9wdXNoLmM6NTY4IGJ1aWx0aW4vcHVzaC5jOjU2OSBidWlsdGluL3NlbmQtcGFjay5jOjE2MQorIzogYnVpbHRpbi9wdXNoLmM6NTcxIGJ1aWx0aW4vcHVzaC5jOjU3MiBidWlsdGluL3NlbmQtcGFjay5jOjE2MQogIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNjIKIG1zZ2lkICJyZWNlaXZlIHBhY2sgcHJvZ3JhbSIKIG1zZ3N0ciAi0L/Rg9GC0Ywg0Log0L/RgNC+0LPRgNCw0LzQvNC1INGD0L/QsNC60L7QstC60Lgg0L3QsCDRgdC10YDQstC10YDQtSIKIAotIzogYnVpbHRpbi9wdXNoLmM6NTcwCisjOiBidWlsdGluL3B1c2guYzo1NzMKIG1zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL3N0YXR1cyIKIG1zZ3N0ciAi0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0LLRi9GI0LXRgdGC0L7Rj9GJ0YPRjiDQstC10YLQutGDINC00LvRjyBnaXQgcHVsbC9zdGF0dXMiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU3MworIzogYnVpbHRpbi9wdXNoLmM6NTc2CiBtc2dpZCAicHJ1bmUgbG9jYWxseSByZW1vdmVkIHJlZnMiCiBtc2dzdHIgItC/0L7Rh9C40YHRgtC40YLRjCDQu9C+0LrQsNC70YzQvdC+INGD0LTQsNC70LXQvdC90YvQtSDRgdGB0YvQu9C60LgiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU3NQorIzogYnVpbHRpbi9wdXNoLmM6NTc4CiBtc2dpZCAiYnlwYXNzIHByZS1wdXNoIGhvb2siCiBtc2dzdHIgItC/0YDQvtC/0YPRgdGC0LjRgtGMINC/0LXRgNC10YXQstCw0YLRh9C40LogcHJlLXB1c2giCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU3NgorIzogYnVpbHRpbi9wdXNoLmM6NTc5CiBtc2dpZCAicHVzaCBtaXNzaW5nIGJ1dCByZWxldmFudCB0YWdzIgogbXNnc3RyICLQvtGC0L/RgNCw0LLQuNGC0Ywg0L/RgNC+0L/Rg9GJ0LXQvdC90YvQtSwg0L3QviDQvdGD0LbQvdGL0LUg0LzQtdGC0LrQuCIKIAotIzogYnVpbHRpbi9wdXNoLmM6NTc5IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY5CisjOiBidWlsdGluL3B1c2guYzo1ODIgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjkKIG1zZ2lkICJHUEcgc2lnbiB0aGUgcHVzaCIKIG1zZ3N0ciAi0L/QvtC00L/QuNGB0LDRgtGMINC+0YLQv9GA0LDQstC60YMg0YEg0L/QvtC80L7RidGM0Y4gR1BHIgogCi0jOiBidWlsdGluL3B1c2guYzo1ODEgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzYKKyM6IGJ1aWx0aW4vcHVzaC5jOjU4NCBidWlsdGluL3NlbmQtcGFjay5jOjE3NgogbXNnaWQgInJlcXVlc3QgYXRvbWljIHRyYW5zYWN0aW9uIG9uIHJlbW90ZSBzaWRlIgogbXNnc3RyICLQt9Cw0L/RgNC+0YHQuNGC0Ywg0LLRi9C/0L7Qu9C90LXQvdC40LUg0LDRgtC+0LzQsNGA0L3QvtC5INGC0YDQsNC90LfQsNC60YbQuNC4INC90LAg0LLQvdC10YjQvdC10Lkg0YHRgtC+0YDQvtC90LUiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU5OQorIzogYnVpbHRpbi9wdXNoLmM6NjAyCiBtc2dpZCAiLS1kZWxldGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tbWlycm9yIGFuZCAtLXRhZ3MiCiBtc2dzdHIgIi0tZGVsZXRlINC90LXRgdC+0LLQvNC10YHRgtC40LzQviDRgSAgLS1hbGwsIC0tbWlycm9yINC4IC0tdGFncyIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjAxCisjOiBidWlsdGluL3B1c2guYzo2MDQKIG1zZ2lkICItLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2Ugd2l0aG91dCBhbnkgcmVmcyIKIG1zZ3N0ciAiLS1kZWxldGUg0L3QtSDQuNC80LXQtdGCINGB0LzRi9GB0LvQsCDQsdC10Lcg0YPQutCw0LfQsNC90LjRjyDRgdGB0YvQu9C+0LoiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYwNAorIzogYnVpbHRpbi9wdXNoLmM6NjA3CiBtc2dpZCAiLS1hbGwgYW5kIC0tdGFncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWFsbCDQuCAtLXRhZ3Mg0L3QtdC70YzQt9GPINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQvtC00L3QvtCy0YDQtdC80LXQvdC90L4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYwNgorIzogYnVpbHRpbi9wdXNoLmM6NjA5CiBtc2dpZCAiLS1hbGwgY2FuJ3QgYmUgY29tYmluZWQgd2l0aCByZWZzcGVjcyIKIG1zZ3N0ciAiLS1hbGwg0L3QtdC70YzQt9GPINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQstC80LXRgdGC0LUg0YHQviDRgdC/0LXRhtC40YTQuNC60LDRgtC+0YDQsNC80Lgg0YHRgdGL0LvQvtC6IgogCi0jOiBidWlsdGluL3B1c2guYzo2MTAKKyM6IGJ1aWx0aW4vcHVzaC5jOjYxMwogbXNnaWQgIi0tbWlycm9yIGFuZCAtLXRhZ3MgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1taXJyb3Ig0LggLS10YWdzINC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+IgogCi0jOiBidWlsdGluL3B1c2guYzo2MTIKKyM6IGJ1aWx0aW4vcHVzaC5jOjYxNQogbXNnaWQgIi0tbWlycm9yIGNhbid0IGJlIGNvbWJpbmVkIHdpdGggcmVmc3BlY3MiCiBtc2dzdHIgIi0tbWlycm9yINC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LLQvNC10YHRgtC1INGB0L4g0YHQv9C10YbQuNGE0LjQutCw0YLQvtGA0LDQvNC4INGB0YHRi9C70L7QuiIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjE1CisjOiBidWlsdGluL3B1c2guYzo2MTgKIG1zZ2lkICItLWFsbCBhbmQgLS1taXJyb3IgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1hbGwg0LggLS1taXJyb3Ig0L3QtdC70YzQt9GPINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQvtC00L3QvtCy0YDQtdC80LXQvdC90L4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYzNAorIzogYnVpbHRpbi9wdXNoLmM6NjM3CiBtc2dpZCAicHVzaCBvcHRpb25zIG11c3Qgbm90IGhhdmUgbmV3IGxpbmUgY2hhcmFjdGVycyIKIG1zZ3N0ciAi0L7Qv9GG0LjQuCDQtNC70Y8g0L7RgtC/0YDQsNCy0LrQuCDQvdC1INC00L7Qu9C20L3RiyDRgdC+0LTQtdGA0LbQsNGC0Ywg0YHQuNC80LLQvtC70Ysg0L/QtdGA0LXQstC+0LTQsCDRgdGC0YDQvtC6IgogCkBAIC0xMzM3OCwxNjMgKzE1NTQ0LDcwOCBAQAogbXNnaWQgImdpdCByYW5nZS1kaWZmIFs8b3B0aW9ucz5dIDxiYXNlPiA8b2xkLXRpcD4gPG5ldy10aXA+IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI2CisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyMQogbXNnaWQgIlBlcmNlbnRhZ2UgYnkgd2hpY2ggY3JlYXRpb24gaXMgd2VpZ2h0ZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjgKLW1zZ2lkICJjb2xvciBib3RoIGRpZmYgYW5kIGRpZmYtYmV0d2Vlbi1kaWZmcyIKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjIzCittc2dpZCAidXNlIHNpbXBsZSBkaWZmIGNvbG9ycyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo3NSBidWlsdGluL3JhbmdlLWRpZmYuYzo3OQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NDYgYnVpbHRpbi9yYW5nZS1kaWZmLmM6NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gLi4gaW4gcmFuZ2U6ICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6ODkKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjYwCiBtc2dpZCAic2luZ2xlIGFyZyBmb3JtYXQgbXVzdCBiZSBzeW1tZXRyaWMgcmFuZ2UiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MTA0CisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo3NQogbXNnaWQgIm5lZWQgdHdvIGNvbW1pdCByYW5nZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzo0MAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzo0MQogbXNnaWQgIiIKICJnaXQgcmVhZC10cmVlIFsoLW0gWy0tdHJpdmlhbF0gWy0tYWdncmVzc2l2ZV0gfCAtLXJlc2V0IHwgLS1wcmVmaXg9PHByZWZpeD4pIgogIiBbLXUgWy0tZXhjbHVkZS1wZXItZGlyZWN0b3J5PTxnaXRpZ25vcmU+XSB8IC1pXV0gWy0tbm8tc3BhcnNlLWNoZWNrb3V0XSAiCiAiWy0taW5kZXgtb3V0cHV0PTxmaWxlPl0gKC0tZW1wdHkgfCA8dHJlZS1pc2gxPiBbPHRyZWUtaXNoMj4gWzx0cmVlLWlzaDM+XV0pIgogbXNnc3RyICJnaXQgcmVhZC10cmVlIFsoLW0gWy0tdHJpdmlhbF0gWy0tYWdncmVzc2l2ZV0gfCAtLXJlc2V0IHwgLS1wcmVmaXg9PNC/0YDQtdGE0LjQutGBPikgWy11IFstLWV4Y2x1ZGUtcGVyLWRpcmVjdG9yeT08Z2l0aWdub3JlPl0gfCAtaV1dIFstLW5vLXNwYXJzZS1jaGVja291dF0gWy0taW5kZXgtb3V0cHV0PTzRhNCw0LnQuz5dICgtLWVtcHR5IHwgPNGD0LrQsNC30LDRgtC10LvRjC3QtNC10YDQtdCy0LAtMT4gWzzRg9C60LDQt9Cw0YLQtdC70Ywt0LTQtdGA0LXQstCwLTI+IFs80YPQutCw0LfQsNGC0LXQu9GMLdC00LXRgNC10LLQsC0zPl1dKSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjAKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI0CiBtc2dpZCAid3JpdGUgcmVzdWx0aW5nIGluZGV4IHRvIDxmaWxlPiIKIG1zZ3N0ciAi0LfQsNC/0LjRgdCw0YLRjCDRgNC10LfRg9C70YzRgtC40YDRg9GO0YnQuNC5INC40L3QtNC10LrRgSDQsiA80YTQsNC50Ls+IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjcKIG1zZ2lkICJvbmx5IGVtcHR5IHRoZSBpbmRleCIKIG1zZ3N0ciAi0L/RgNC+0YHRgtC+INC+0YfQuNGB0YLQuNGC0Ywg0LjQvdC00LXQutGBIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNQorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjkKIG1zZ2lkICJNZXJnaW5nIgogbXNnc3RyICLQodC70LjRj9C90LjQtSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjcKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMxCiBtc2dpZCAicGVyZm9ybSBhIG1lcmdlIGluIGFkZGl0aW9uIHRvIGEgcmVhZCIKIG1zZ3N0ciAi0LLRi9C/0L7Qu9C90LjRgtGMINGB0LvQuNGP0L3QuNC1INCyINC00L7Qv9C+0LvQvdC10L3QuNC1INC6INGH0YLQtdC90LjRjiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjkKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMzCiBtc2dpZCAiMy13YXkgbWVyZ2UgaWYgbm8gZmlsZSBsZXZlbCBtZXJnaW5nIHJlcXVpcmVkIgogbXNnc3RyICLRgtGA0LXRhdGF0L7QtNC+0LLQvtC1INGB0LvQuNGP0L3QuNC1LCDQtdGB0LvQuCDQvdC1INGC0YDQtdCx0YPQtdGC0YHRjyDRgdC70LjRj9C90LjQtSDQvdCwINGD0YDQvtCy0L3QtSDRhNCw0LnQu9C+0LIiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMxCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNQogbXNnaWQgIjMtd2F5IG1lcmdlIGluIHByZXNlbmNlIG9mIGFkZHMgYW5kIHJlbW92ZXMiCiBtc2dzdHIgItGC0YDQtdGF0YXQvtC00L7QstC+0LUg0YHQu9C40Y/QvdC40LUg0LIg0YHQu9GD0YfQsNC1INC/0YDQuNGB0YPRgtGB0YLQstC40Y8g0LTQvtCx0LDQstC70LXQvdC40Lkg0LjQu9C4INGD0LTQsNC70LXQvdC40Lkg0YTQsNC50LvQvtCyIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzcKIG1zZ2lkICJzYW1lIGFzIC1tLCBidXQgZGlzY2FyZCB1bm1lcmdlZCBlbnRyaWVzIgogbXNnc3RyICLRgtC+0LbQtSwg0YfRgtC+INC4IC1tLCDQvdC+INC+0YLQvNC10L3Rj9C10YIg0LjQt9C80LXQvdC10L3QuNGPINC90LUg0YHQu9C40YLRi9GFINC30LDQv9C40YHQtdC5IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzgKIG1zZ2lkICI8c3ViZGlyZWN0b3J5Pi8iCiBtc2dzdHIgIjzQv9C+0LTQutCw0YLQsNC70L7Qsz4vIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNQorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzkKIG1zZ2lkICJyZWFkIHRoZSB0cmVlIGludG8gdGhlIGluZGV4IHVuZGVyIDxzdWJkaXJlY3Rvcnk+LyIKIG1zZ3N0ciAi0L/RgNC+0YfQuNGC0LDRgtGMINC00LXRgNC10LLQviDQsiDQuNC90LTQtdC60YEg0LIgPNC/0L7QtNC60LDRgtCw0LvQvtCzPi8iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM4CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0MgogbXNnaWQgInVwZGF0ZSB3b3JraW5nIHRyZWUgd2l0aCBtZXJnZSByZXN1bHQiCiBtc2dzdHIgItC+0LHQvdC+0LLQuNGC0Ywg0YDQsNCx0L7Rh9C40Lkg0LrQsNGC0LDQu9C+0LMg0YDQtdC30YPQu9GM0YLQsNGC0L7QvCDRgdC70LjRj9C90LjRjyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDAKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ0CiBtc2dpZCAiZ2l0aWdub3JlIgogbXNnc3RyICJnaXRpZ25vcmUiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQxCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NQogbXNnaWQgImFsbG93IGV4cGxpY2l0bHkgaWdub3JlZCBmaWxlcyB0byBiZSBvdmVyd3JpdHRlbiIKIG1zZ3N0ciAi0YDQsNC30YDQtdGI0LjRgtGMINC/0LXRgNC10LfQsNC/0LjRgdGMINGP0LLQvdC+INC40LPQvdC+0YDQuNGA0YPQtdC80YvRhSDRhNCw0LnQu9C+0LIiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ0CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0OAogbXNnaWQgImRvbid0IGNoZWNrIHRoZSB3b3JraW5nIHRyZWUgYWZ0ZXIgbWVyZ2luZyIKIG1zZ3N0ciAi0L3QtSDQv9GA0L7QstC10YDRj9GC0Ywg0YDQsNCx0L7Rh9C40Lkg0LrQsNGC0LDQu9C+0LMg0L/QvtGB0LvQtSDRgdC70LjRj9C90LjRjyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDUKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ5CiBtc2dpZCAiZG9uJ3QgdXBkYXRlIHRoZSBpbmRleCBvciB0aGUgd29yayB0cmVlIgogbXNnc3RyICLQvdC1INC+0LHQvdC+0LLQu9GP0YLRjCDQuNC90LTQtdC60YEg0LjQu9C4INGA0LDQsdC+0YfQuNC5INC60LDRgtCw0LvQvtCzIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTEKIG1zZ2lkICJza2lwIGFwcGx5aW5nIHNwYXJzZSBjaGVja291dCBmaWx0ZXIiCiBtc2dzdHIgItC/0YDQvtC/0YPRgdGC0LjRgtGMINC/0YDQuNC80LXQvdC10L3QuNC1INGE0LjQu9GM0YLRgNCwINGH0LDRgdGC0LjRh9C90L7Qs9C+INC/0LXRgNC10LrQu9GO0YfQtdC90LjRjyDQvdCwINGB0L7RgdGC0L7Rj9C90LjQtSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDkKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUzCiBtc2dpZCAiZGVidWcgdW5wYWNrLXRyZWVzIgogbXNnc3RyICLQvtGC0LvQsNC00LrQsCB1bnBhY2stdHJlZXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLS1oZWxwZXIuYzo4Ci1tc2dpZCAiZ2l0IHJlYmFzZS0taGVscGVyIFs8b3B0aW9ucz5dIgotbXNnc3RyICJnaXQgcmViYXNlLS1oZWxwZXIgWzzQvtC/0YbQuNC4Pl0iCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1NworbXNnaWQgInN1cHByZXNzIGZlZWRiYWNrIG1lc3NhZ2VzIgorbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLS1oZWxwZXIuYzoyNAorIzogYnVpbHRpbi9yZWJhc2UuYzozMgorbXNnaWQgIiIKKyJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+XSBbPHVwc3RyZWFtPl0gIgorIls8YnJhbmNoPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozNAorbXNnaWQgIiIKKyJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+XSAtLXJvb3QgIgorIls8YnJhbmNoPl0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozNgorbXNnaWQgImdpdCByZWJhc2UgLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXAgfCAtLWVkaXQtdG9kbyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1OCBidWlsdGluL3JlYmFzZS5jOjE4MiBidWlsdGluL3JlYmFzZS5jOjIwOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnVzYWJsZSB0b2RvIGxpc3Q6ICclcyciCittc2dzdHIgItC90LXQv9GA0LjQs9C+0LTQvdGL0Lkg0LTQu9GPINC40YHQv9C+0LvRjNC30L7QstCw0L3QuNGPINGB0L/QuNGB0L7QuiDQtNC10Ls6IMKrJXPCuyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjcgYnVpbHRpbi9yZWJhc2UuYzoxOTMgYnVpbHRpbi9yZWJhc2UuYzoyMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHdyaXRlICclcycuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjUyCittc2dpZCAibm8gSEVBRD8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyODUKK21zZ2lkICJjb3VsZCBub3QgbWFyayBhcyBpbnRlcmFjdGl2ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM0MworbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSB0b2RvIGxpc3QiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozODIKK21zZ2lkICJhIGJhc2UgY29tbWl0IG11c3QgYmUgcHJvdmlkZWQgd2l0aCAtLXVwc3RyZWFtIG9yIC0tb250byIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQzNworbXNnaWQgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFs8b3B0aW9ucz5dIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDQ5CiBtc2dpZCAia2VlcCBlbXB0eSBjb21taXRzIgogbXNnc3RyICLQvtGB0YLQsNCy0LjRgtGMINC/0YPRgdGC0YvQtSDQutC+0LzQvNC40YLRiyIKIAotIzogYnVpbHRpbi9yZWJhc2UtLWhlbHBlci5jOjI2IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI0CisjOiBidWlsdGluL3JlYmFzZS5jOjQ1MSBidWlsdGluL3JldmVydC5jOjEyNwogbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKIG1zZ3N0ciAi0YDQsNC30YDQtdGI0LjRgtGMINC60L7QvNC80LjRgtGLINGBINC/0YPRgdGC0YvQvNC4INGB0L7QvtCx0YnQtdC90LjRj9C80LgiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLS1oZWxwZXIuYzoyNworIzogYnVpbHRpbi9yZWJhc2UuYzo0NTIKIG1zZ2lkICJyZWJhc2UgbWVyZ2UgY29tbWl0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS0taGVscGVyLmM6MjkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDU0CiBtc2dpZCAia2VlcCBvcmlnaW5hbCBicmFuY2ggcG9pbnRzIG9mIGNvdXNpbnMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZWJhc2UtLWhlbHBlci5jOjMwCisjOiBidWlsdGluL3JlYmFzZS5jOjQ1NgorbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NTcKK21zZ2lkICJzaWduIGNvbW1pdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NTkgYnVpbHRpbi9yZWJhc2UuYzoxMzk3Cittc2dpZCAiZGlzcGxheSBhIGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ2MQogbXNnaWQgImNvbnRpbnVlIHJlYmFzZSIKIG1zZ3N0ciAi0L/RgNC+0LTQvtC70LbQuNGC0Ywg0L/QtdGA0LXQvNC10YnQtdC90LjQtSIKIAotIzogYnVpbHRpbi9yZWJhc2UtLWhlbHBlci5jOjMyCi1tc2dpZCAiYWJvcnQgcmViYXNlIgotbXNnc3RyICLQvtGB0YLQsNC90L7QstC40YLRjCDQv9C10YDQtdC80LXRidC10L3QuNC1IgorIzogYnVpbHRpbi9yZWJhc2UuYzo0NjMKK21zZ2lkICJza2lwIGNvbW1pdCIKK21zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlYmFzZS0taGVscGVyLmM6MzUKLW1zZ2lkICJtYWtlIHJlYmFzZSBzY3JpcHQiCi1tc2dzdHIgItGB0L7Qt9C00LDRgtGMINGB0YbQtdC90LDRgNC40Lkg0L/QtdGA0LXQvNC10YnQtdC90LjRjyIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDY0Cittc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLS1oZWxwZXIuYzozNworIzogYnVpbHRpbi9yZWJhc2UuYzo0NjYKK21zZ2lkICJzaG93IHRoZSBjdXJyZW50IHBhdGNoIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDY5CiBtc2dpZCAic2hvcnRlbiBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCiBtc2dzdHIgItCy0YvQstC10YHRgtC4INC60L7RgNC+0YLQutC40LUg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRiyDQutC+0LzQvNC40YLQvtCyINCyINGB0L/QuNGB0LrQtSDQtNC10LnRgdGC0LLQuNC5IgogCi0jOiBidWlsdGluL3JlYmFzZS0taGVscGVyLmM6MzkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDcxCiBtc2dpZCAiZXhwYW5kIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0L/QvtC70L3Ri9C1INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0Ysg0LrQvtC80LzQuNGC0L7QsiDQsiDRgdC/0LjRgdC60LUg0LTQtdC50YHRgtCy0LjQuSIKIAotIzogYnVpbHRpbi9yZWJhc2UtLWhlbHBlci5jOjQxCisjOiBidWlsdGluL3JlYmFzZS5jOjQ3MwogbXNnaWQgImNoZWNrIHRoZSB0b2RvIGxpc3QiCiBtc2dzdHIgItC/0YDQvtCy0LXRgNC40YLRjCDRgdC/0LjRgdC+0Log0LTQtdC7IgogCi0jOiBidWlsdGluL3JlYmFzZS0taGVscGVyLmM6NDMKLW1zZ2lkICJza2lwIHVubmVjZXNzYXJ5IHBpY2tzIgotbXNnc3RyICLQv9GA0L7Qv9GD0YHRgtC40YLRjCDQvdC10L3Rg9C20L3Ri9C1INC60L7QvNCw0L3QtNGLIHBpY2siCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1oZWxwZXIuYzo0NQorIzogYnVpbHRpbi9yZWJhc2UuYzo0NzUKIG1zZ2lkICJyZWFycmFuZ2UgZml4dXAvc3F1YXNoIGxpbmVzIgogbXNnc3RyICLQv9C10YDQtdGB0YLQsNCy0LjRgtGMINGB0YLRgNC+0LrQuCBmaXh1cC9zcXVhc2giCiAKLSM6IGJ1aWx0aW4vcmViYXNlLS1oZWxwZXIuYzo0NworIzogYnVpbHRpbi9yZWJhc2UuYzo0NzcKIG1zZ2lkICJpbnNlcnQgZXhlYyBjb21tYW5kcyBpbiB0b2RvIGxpc3QiCiBtc2dzdHIgItCy0YHRgtCw0LLQuNGC0Ywg0LrQvtC80LDQvdC00Ysg0LjRgdC/0L7Qu9C90LXQvdC40Y8g0LrQvtC80LzQuNGC0L7QsiDQsiDRgdC/0LjRgdC60LUg0LTQtdC50YHRgtCy0LjQuSIKIAotIzogYnVpbHRpbi9yZWJhc2UtLWhlbHBlci5jOjY4CisjOiBidWlsdGluL3JlYmFzZS5jOjQ3OAorbXNnaWQgIm9udG8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODEKK21zZ2lkICJyZXN0cmljdC1yZXZpc2lvbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4MQorbXNnaWQgInJlc3RyaWN0IHJldmlzaW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDgzCittc2dpZCAic3F1YXNoLW9udG8iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODQKK21zZ2lkICJzcXVhc2ggb250byIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4NgorbXNnaWQgInRoZSB1cHN0cmVhbSBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODgKK21zZ2lkICJoZWFkLW5hbWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODgKK21zZ2lkICJoZWFkIG5hbWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTMKK21zZ2lkICJyZWJhc2Ugc3RyYXRlZ3kiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTQKK21zZ2lkICJzdHJhdGVneS1vcHRzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk1Cittc2dpZCAic3RyYXRlZ3kgb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5NgorbXNnaWQgInN3aXRjaC10byIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5NworbXNnaWQgInRoZSBicmFuY2ggb3IgY29tbWl0IHRvIGNoZWNrb3V0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk4Cittc2dpZCAib250by1uYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk4Cittc2dpZCAib250byBuYW1lIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk5Cittc2dpZCAiY21kIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk5Cittc2dpZCAidGhlIGNvbW1hbmQgdG8gcnVuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAyIGJ1aWx0aW4vcmViYXNlLmM6MTQ4MAorbXNnaWQgImF1dG9tYXRpY2FsbHkgcmUtc2NoZWR1bGUgYW55IGBleGVjYCB0aGF0IGZhaWxzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTE4CiBtc2dpZCAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIGhhcyBubyBlZmZlY3Qgd2l0aG91dCAtLXJlYmFzZS1tZXJnZXMiCiBtc2dzdHIgIi0tW25vLV1yZWJhc2UtY291c2lucyDQvdC1INC40LzQtdC10YIg0YHQvNGL0YHQu9CwINCx0LXQtyDRg9C60LDQt9Cw0L3QuNGPIC0tcmViYXNlLW1lcmdlcyIKIAotIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzozMgorIzogYnVpbHRpbi9yZWJhc2UuYzo1MzQgYnVpbHRpbi9yZWJhc2UuYzoxNzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlcXVpcmVzIGFuIGludGVyYWN0aXZlIHJlYmFzZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjU4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZ2V0ICdvbnRvJzogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjYwMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG9yaWctaGVhZDogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjYyNgorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBpbnZhbGlkIGFsbG93X3JlcmVyZV9hdXRvdXBkYXRlOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NzAyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCByZWFkICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo3MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN0b3JlICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6ODE3Cittc2dpZCAiY291bGQgbm90IGRldGVybWluZSBIRUFEIHJldmlzaW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6OTQwCittc2dpZCAiIgorIlJlc29sdmUgYWxsIGNvbmZsaWN0cyBtYW51YWxseSwgbWFyayB0aGVtIGFzIHJlc29sdmVkIHdpdGhcbiIKKyJcImdpdCBhZGQvcm0gPGNvbmZsaWN0ZWRfZmlsZXM+XCIsIHRoZW4gcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIuXG4iCisiWW91IGNhbiBpbnN0ZWFkIHNraXAgdGhpcyBjb21taXQ6IHJ1biBcImdpdCByZWJhc2UgLS1za2lwXCIuXG4iCisiVG8gYWJvcnQgYW5kIGdldCBiYWNrIHRvIHRoZSBzdGF0ZSBiZWZvcmUgXCJnaXQgcmViYXNlXCIsIHJ1biBcImdpdCByZWJhc2UgLS1hYm9ydFwiLiIKK21zZ3N0ciAi0KDQsNC30YDQtdGI0LjRgtC1INCy0YHQtSDQutC+0L3RhNC70LjQutGC0Ysg0LLRgNGD0YfQvdGD0Y4sINC/0L7QvNC10YLRjNGC0LUg0LjRhSDRgNCw0LfRgNC10YjRkdC90L3Ri9C80Lgg0YEg0L/QvtC80L7RidGM0Y4gwqtnaXQgYWRkL3JtIDzQutC+0L3RhNC70LjQutGC0YPRjtGJ0LjQtS3RhNCw0LnQu9GLPsK7LCDQsCDQt9Cw0YLQtdC8INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCByZWJhc2UgLS1jb250aW51ZcK7Llxu0JXRgdC70Lgg0LLRiyDRhdC+0YLQuNGC0LUg0L/RgNC+0L/Rg9GB0YLQuNGC0Ywg0Y3RgtC+0YIg0LrQvtC80LzQuNGCLCDRgtC+INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCByZWJhc2UgLS1za2lwwrsuXG7Qp9GC0L7QsdGLINCy0LXRgNC90YPRgtGM0YHRjyDQvdCwINGB0L7RgdGC0L7Rj9C90LjQtSDQtNC+IMKrZ2l0IHJlYmFzZcK7LCDQt9Cw0L/Rg9GB0YLQuNGC0LUgwqtnaXQgcmViYXNlIC0tYWJvcnTCuy4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTAyMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiZ2l0IGVuY291bnRlcmVkIGFuIGVycm9yIHdoaWxlIHByZXBhcmluZyB0aGUgcGF0Y2hlcyB0byByZXBsYXlcbiIKKyJ0aGVzZSByZXZpc2lvbnM6XG4iCisiXG4iCisiICAgICVzXG4iCisiXG4iCisiQXMgYSByZXN1bHQsIGdpdCBjYW5ub3QgcmViYXNlIHRoZW0uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTMxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXNcbiIKKyJQbGVhc2Ugc3BlY2lmeSB3aGljaCBicmFuY2ggeW91IHdhbnQgdG8gcmViYXNlIGFnYWluc3QuXG4iCisiU2VlIGdpdC1yZWJhc2UoMSkgZm9yIGRldGFpbHMuXG4iCisiXG4iCisiICAgIGdpdCByZWJhc2UgJzxicmFuY2g+J1xuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTMyOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSWYgeW91IHdpc2ggdG8gc2V0IHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGlzIGJyYW5jaCB5b3UgY2FuIGRvIHNvIHdpdGg6XG4iCisiXG4iCisiICAgIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMvPGJyYW5jaD4gJXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEzNTkKK21zZ2lkICJleGVjIGNvbW1hbmRzIGNhbm5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTM2MworbXNnaWQgImVtcHR5IGV4ZWMgY29tbWFuZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEzOTAKK21zZ2lkICJyZWJhc2Ugb250byBnaXZlbiBicmFuY2ggaW5zdGVhZCBvZiB1cHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEzOTIKK21zZ2lkICJhbGxvdyBwcmUtcmViYXNlIGhvb2sgdG8gcnVuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTM5NAorbXNnaWQgImJlIHF1aWV0LiBpbXBsaWVzIC0tbm8tc3RhdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0MDAKK21zZ2lkICJkbyBub3Qgc2hvdyBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDAzCittc2dpZCAiYWRkIGEgU2lnbmVkLW9mZi1ieTogbGluZSB0byBlYWNoIGNvbW1pdCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0MDUgYnVpbHRpbi9yZWJhc2UuYzoxNDA5IGJ1aWx0aW4vcmViYXNlLmM6MTQxMQorbXNnaWQgInBhc3NlZCB0byAnZ2l0IGFtJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0MTMgYnVpbHRpbi9yZWJhc2UuYzoxNDE1Cittc2dpZCAicGFzc2VkIHRvICdnaXQgYXBwbHknIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxNyBidWlsdGluL3JlYmFzZS5jOjE0MjAKK21zZ2lkICJjaGVycnktcGljayBhbGwgY29tbWl0cywgZXZlbiBpZiB1bmNoYW5nZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDIyCittc2dpZCAiY29udGludWUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDI1Cittc2dpZCAic2tpcCBjdXJyZW50IHBhdGNoIGFuZCBjb250aW51ZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0MjcKK21zZ2lkICJhYm9ydCBhbmQgY2hlY2sgb3V0IHRoZSBvcmlnaW5hbCBicmFuY2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDMwCittc2dpZCAiYWJvcnQgYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0MzEKK21zZ2lkICJlZGl0IHRoZSB0b2RvIGxpc3QgZHVyaW5nIGFuIGludGVyYWN0aXZlIHJlYmFzZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0MzQKK21zZ2lkICJzaG93IHRoZSBwYXRjaCBmaWxlIGJlaW5nIGFwcGxpZWQgb3IgbWVyZ2VkIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQzNworbXNnaWQgInVzZSBtZXJnaW5nIHN0cmF0ZWdpZXMgdG8gcmViYXNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0MQorbXNnaWQgImxldCB0aGUgdXNlciBlZGl0IHRoZSBsaXN0IG9mIGNvbW1pdHMgdG8gcmViYXNlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0NQorbXNnaWQgIihERVBSRUNBVEVEKSB0cnkgdG8gcmVjcmVhdGUgbWVyZ2VzIGluc3RlYWQgb2YgaWdub3JpbmcgdGhlbSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NDkKK21zZ2lkICJwcmVzZXJ2ZSBlbXB0eSBjb21taXRzIGR1cmluZyByZWJhc2UiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDUxCittc2dpZCAibW92ZSBjb21taXRzIHRoYXQgYmVnaW4gd2l0aCBzcXVhc2ghL2ZpeHVwISB1bmRlciAtaSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NTcKK21zZ2lkICJhdXRvbWF0aWNhbGx5IHN0YXNoL3N0YXNoIHBvcCBiZWZvcmUgYW5kIGFmdGVyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ1OQorbXNnaWQgImFkZCBleGVjIGxpbmVzIGFmdGVyIGVhY2ggY29tbWl0IG9mIHRoZSBlZGl0YWJsZSBsaXN0IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ2MworbXNnaWQgImFsbG93IHJlYmFzaW5nIGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NjYKK21zZ2lkICJ0cnkgdG8gcmViYXNlIG1lcmdlcyBpbnN0ZWFkIG9mIHNraXBwaW5nIHRoZW0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDY5Cittc2dpZCAidXNlICdtZXJnZS1iYXNlIC0tZm9yay1wb2ludCcgdG8gcmVmaW5lIHVwc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ3MQorbXNnaWQgInVzZSB0aGUgZ2l2ZW4gbWVyZ2Ugc3RyYXRlZ3kiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDczIGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0Cittc2dpZCAib3B0aW9uIgorbXNnc3RyICLQvtC/0YbQuNGPIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NzQKK21zZ2lkICJwYXNzIHRoZSBhcmd1bWVudCB0aHJvdWdoIHRvIHRoZSBtZXJnZSBzdHJhdGVneSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NzcKK21zZ2lkICJyZWJhc2UgYWxsIHJlYWNoYWJsZSBjb21taXRzIHVwIHRvIHRoZSByb290KHMpIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5OAorbXNnaWQgIiIKKyJ0aGUgcmViYXNlLnVzZUJ1aWx0aW4gc3VwcG9ydCBoYXMgYmVlbiByZW1vdmVkIVxuIgorIlNlZSBpdHMgZW50cnkgaW4gJ2dpdCBoZWxwIGNvbmZpZycgZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUwNAorbXNnaWQgIkl0IGxvb2tzIGxpa2UgJ2dpdCBhbScgaXMgaW4gcHJvZ3Jlc3MuIENhbm5vdCByZWJhc2UuIgorbXNnc3RyICLQn9C+0YXQvtC20LUsINGH0YLQviDQstGL0L/QvtC70L3Rj9C10YLRgdGPIMKrZ2l0IGFtwrsuINCd0LXQstC+0LfQvNC+0LbQvdC+INCy0YvQv9C+0LvQvdC40YLRjCDQv9C10YDQtdC80LXRidC10L3QuNC1LiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTQ1Cittc2dpZCAiIgorImdpdCByZWJhc2UgLS1wcmVzZXJ2ZS1tZXJnZXMgaXMgZGVwcmVjYXRlZC4gVXNlIC0tcmViYXNlLW1lcmdlcyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NDkKK21zZ2lkICJObyByZWJhc2UgaW4gcHJvZ3Jlc3M/IgorbXNnc3RyICLQndC10YIg0L/QtdGA0LXQvNC10YnQtdC90LjRjyDQsiDQv9GA0L7RhtC10YHRgdC1PyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTUzCittc2dpZCAiVGhlIC0tZWRpdC10b2RvIGFjdGlvbiBjYW4gb25seSBiZSB1c2VkIGR1cmluZyBpbnRlcmFjdGl2ZSByZWJhc2UuIgorbXNnc3RyICLQlNC10LnRgdGC0LLQuNC1IC0tZWRpdC10b2RvINC80L7QttC10YIg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGM0YHRjyDRgtC+0LvRjNC60L4g0L/RgNC4INC40L3RgtC10YDQsNC60YLQuNCy0L3QvtC8INC/0LXRgNC10LzQtdGJ0LXQvdC40LguIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzYKK21zZ2lkICJDYW5ub3QgcmVhZCBIRUFEIgorbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCBIRUFEIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1ODgKK21zZ2lkICIiCisiWW91IG11c3QgZWRpdCBhbGwgbWVyZ2UgY29uZmxpY3RzIGFuZCB0aGVuXG4iCisibWFyayB0aGVtIGFzIHJlc29sdmVkIHVzaW5nIGdpdCBhZGQiCittc2dzdHIgItCS0Ysg0LTQvtC70LbQvdGLINC+0YLRgNC10LTQsNC60YLQuNGA0L7QstCw0YLRjCDQstGB0LVcbtC60L7QvdGE0LvQuNC60YLRiyDRgdC70LjRj9C90LjRjywg0LAg0L/QvtGC0L7QvCDQv9C+0LzQtdGC0LjRgtGMXG7QuNGFINC60LDQuiDRgNCw0LfRgNC10YjQtdC90L3Ri9C1INGBINC/0L7QvNC+0YnRjNGOIGdpdCBhZGQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTYwNworbXNnaWQgImNvdWxkIG5vdCBkaXNjYXJkIHdvcmt0cmVlIGNoYW5nZXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjI2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBtb3ZlIGJhY2sgdG8gJXMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjM3IGJ1aWx0aW4vcm0uYzozNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlbW92ZSAnJXMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMIMKrJXPCuyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJJdCBzZWVtcyB0aGF0IHRoZXJlIGlzIGFscmVhZHkgYSAlcyBkaXJlY3RvcnksIGFuZFxuIgorIkkgd29uZGVyIGlmIHlvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIHJlYmFzZS4gIElmIHRoYXQgaXMgdGhlXG4iCisiY2FzZSwgcGxlYXNlIHRyeVxuIgorIlx0JXNcbiIKKyJJZiB0aGF0IGlzIG5vdCB0aGUgY2FzZSwgcGxlYXNlXG4iCisiXHQlc1xuIgorImFuZCBydW4gbWUgYWdhaW4uICBJIGFtIHN0b3BwaW5nIGluIGNhc2UgeW91IHN0aWxsIGhhdmUgc29tZXRoaW5nXG4iCisidmFsdWFibGUgdGhlcmUuXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjg0Cittc2dpZCAic3dpdGNoIGBDJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTcyNQorIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIG1vZGU6ICVzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTc0NworbXNnaWQgIi0tc3RyYXRlZ3kgcmVxdWlyZXMgLS1tZXJnZSBvciAtLWludGVyYWN0aXZlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTc5NgorbXNnaWQgImNhbm5vdCBjb21iaW5lIGFtIG9wdGlvbnMgd2l0aCBlaXRoZXIgaW50ZXJhY3RpdmUgb3IgbWVyZ2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE4MTUKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmViYXNlLW1lcmdlcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxODE5Cittc2dpZCAiIgorImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxODI1Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneS1vcHRpb24nIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTgyOAorbXNnaWQgImNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3knIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg1MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxODU4Cittc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBuZXcgcm9vdCBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxODc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IG5lZWQgZXhhY3RseSBvbmUgbWVyZ2UgYmFzZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE4ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBjb21taXQgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmF0YWw6IG5vIHN1Y2ggYnJhbmNoL2NvbW1pdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTkxNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MzgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHN1Y2ggcmVmOiAlcyIKK21zZ3N0ciAi0J3QtdGCINGC0LDQutC+0Lkg0YHRgdGL0LvQutC4OiAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTI3Cittc2dpZCAiQ291bGQgbm90IHJlc29sdmUgSEVBRCB0byBhIHJldmlzaW9uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk2OAorbXNnaWQgIkNhbm5vdCBhdXRvc3Rhc2giCittc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LDQstGC0L7QvNCw0YLQuNGH0LXRgdC60Lgg0YHQv9GA0Y/RgtCw0YLRjCDQuNC30LzQtdC90LXQvdC40Y8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk3MQorIywgYy1mb3JtYXQKK21zZ2lkICJVbmV4cGVjdGVkIHN0YXNoIHJlc3BvbnNlOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk3NworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3JlYXRlZCBhdXRvc3Rhc2g6ICVzXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTgzCittc2dpZCAiY291bGQgbm90IHJlc2V0IC0taGFyZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5ODQgYnVpbHRpbi9yZXNldC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKK21zZ3N0ciAiSEVBRCDRgdC10LnRh9Cw0YEg0L3QsCAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDAwCittc2dpZCAiUGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKK21zZ3N0ciAi0KHQtNC10LvQsNC50YLQtSDQutC+0LzQvNC40YIg0LjQu9C4INGB0L/RgNGP0YfRjNGC0LUg0LjRhS4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAyNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN3aXRjaCB0byAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwNTEKK21zZ2lkICJIRUFEIGlzIHVwIHRvIGRhdGUuIgorbXNnc3RyICJIRUFEINGD0LbQtSDQsiDQsNC60YLRg9Cw0LvRjNC90L7QvCDRgdC+0YHRgtC+0Y/QvdC40LguIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCBicmFuY2ggJXMgaXMgdXAgdG8gZGF0ZS5cbiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwNjEKK21zZ2lkICJIRUFEIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgorbXNnc3RyICJIRUFEINGD0LbQtSDQsiDQsNC60YLRg9Cw0LvRjNC90L7QvCDRgdC+0YHRgtC+0Y/QvdC40LgsINC/0YDQuNC90YPQtNC40YLQtdC70YzQvdC+0LUg0L/QtdGA0LXQvNC10YnQtdC90LjQtS4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA2MworIywgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50IGJyYW5jaCAlcyBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLlxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA3MQorbXNnaWQgIlRoZSBwcmUtcmViYXNlIGhvb2sgcmVmdXNlZCB0byByZWJhc2UuIgorbXNnc3RyICLQn9C10YDQtdGF0LLQsNGC0YfQuNC6IHByZS1yZWJhc2Ug0L7RgtC60LDQt9Cw0Lsg0LIg0L/QtdGA0LXQvNC10YnQtdC90LjQuC4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA3OAorIywgYy1mb3JtYXQKK21zZ2lkICJDaGFuZ2VzIHRvICVzOlxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA4MQorIywgYy1mb3JtYXQKK21zZ2lkICJDaGFuZ2VzIGZyb20gJXMgdG8gJXM6XG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIkZpcnN0LCByZXdpbmRpbmcgaGVhZCB0byByZXBsYXkgeW91ciB3b3JrIG9uIHRvcCBvZiBpdC4uLlxuIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjExNQorbXNnaWQgIkNvdWxkIG5vdCBkZXRhY2ggSEVBRCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFzdC1mb3J3YXJkZWQgJXMgdG8gJXMuXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzozMwogbXNnaWQgImdpdCByZWNlaXZlLXBhY2sgPGdpdC1kaXI+IgogbXNnc3RyICJnaXQgcmVjZWl2ZS1wYWNrIDzQutCw0YLQsNC70L7Qsy1naXQ+IgogCi0jOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjgzMAorIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzo4MzMKIG1zZ2lkICIiCiAiQnkgZGVmYXVsdCwgdXBkYXRpbmcgdGhlIGN1cnJlbnQgYnJhbmNoIGluIGEgbm9uLWJhcmUgcmVwb3NpdG9yeVxuIgogImlzIGRlbmllZCwgYmVjYXVzZSBpdCB3aWxsIG1ha2UgdGhlIGluZGV4IGFuZCB3b3JrIHRyZWUgaW5jb25zaXN0ZW50XG4iCkBAIC0xMzU1MSw3ICsxNjI2Miw3IEBACiAiJ3JlY2VpdmUuZGVueUN1cnJlbnRCcmFuY2gnIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgdG8gJ3JlZnVzZScuIgogbXNnc3RyICLQn9C+INGD0LzQvtC70YfQsNC90LjRjiwg0L7QsdC90L7QstC70Y/RgtGMINGC0LXQutGD0YnRg9GOINCy0LXRgtC60YMg0LIg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuCDRgSDRgNCw0LHQvtGH0LXQuVxu0LrQvtC/0LjQtdC5ICjQvdC1INCz0L7Qu9C+0LwpINC30LDQv9GA0LXRidC10L3Qviwg0YLQsNC6INC60LDQuiDRjdGC0L4g0YHQtNC10LvQsNC10YIg0YHQvtGB0YLQvtGP0L3QuNC1INC40L3QtNC10LrRgdCwXG7QuCDRgNCw0LHQvtGH0LXQs9C+INC60LDRgtCw0LvQvtCz0LAg0L/RgNC+0YLQuNCy0L7RgNC10YfQuNCy0YvQvCwg0Lgg0LLQsNC8INC/0YDQuNC50LTQtdGC0YHRjyDQstGL0L/QvtC70L3QuNGC0YxcbsKrZ2l0IHJlc2V0IC0taGFyZMK7LCDRh9GC0L7QsdGLINGB0L7RgdGC0L7Rj9C90LjQtSDRgNCw0LHQvtGH0LXQs9C+INC60LDRgtCw0LvQvtCz0LAg0YHQvdC+0LLQsFxu0YHQvtC+0YLQstC10YLRgdGC0LLQvtCy0LDQu9C+IEhFQUQuXG5cbtCS0Ysg0LzQvtC20LXRgtC1INGD0YHRgtCw0L3QvtCy0LjRgtGMINC30L3QsNGH0LXQvdC40LUg0L7Qv9GG0LjQuCDCq3JlY2VpdmUuZGVueUN1cnJlbnRCcmFuY2jCu1xu0LIgwqtpZ25vcmXCuyDQuNC70Lggwqt3YXJuwrsg0LLQviDQstC90LXRiNC90LXQvCDRgNC10L/QvtC30LjRgtC+0YDQuNC4LCDRh9GC0L7QsdGLINGA0LDQt9GA0LXRiNC40YLRjFxu0L7RgtC/0YDQsNCy0LrRgyDQsiDQtdCz0L4g0YLQtdC60YPRidGD0Y4g0LLQtdGC0LrRgzsg0L3QviDRjdGC0L4g0L3QtSDRgNC10LrQvtC80LXQvdC00YPQtdGC0YHRjywg0LXRgdC70Lgg0YLQvtC70YzQutC+XG7QstGLINC90LUg0L3QsNC80LXRgNC10L3RiyDQvtCx0L3QvtCy0LjRgtGMINC10LPQviDRgNCw0LHQvtGH0LjQuSDQutCw0YLQsNC70L7QsyDRgdC/0L7RgdC+0LHQvtC8INC/0L7QtNC+0LHQvdGL0LxcbtCy0YvRiNC10L7Qv9C40YHQsNC90L3QvtC80YMuXG5cbtCn0YLQvtCx0Ysg0L/RgNC+0L/Rg9GB0YLQuNGC0Ywg0Y3RgtC+INGB0L7QvtCx0YnQtdC90LjQtSDQuCDQstGB0LUg0YDQsNCy0L3QviDQvtGB0YLQsNCy0LjRgtGMINC/0L7QstC10LTQtdC90LjQtVxu0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4sINGD0YHRgtCw0L3QvtCy0LjRgtC1INC30L3QsNGH0LXQvdC40LUg0L7Qv9GG0LjQuCDCq3JlY2VpdmUuZGVueUN1cnJlbnRCcmFuY2jCu1xu0LIgwqtyZWZ1c2XCuy4iCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODUwCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjg1MwogbXNnaWQgIiIKICJCeSBkZWZhdWx0LCBkZWxldGluZyB0aGUgY3VycmVudCBicmFuY2ggaXMgZGVuaWVkLCBiZWNhdXNlIHRoZSBuZXh0XG4iCiAiJ2dpdCBjbG9uZScgd29uJ3QgcmVzdWx0IGluIGFueSBmaWxlIGNoZWNrZWQgb3V0LCBjYXVzaW5nIGNvbmZ1c2lvbi5cbiIKQEAgLTEzNTYzLDE4OSArMTYyNzQsMjM1IEBACiAiVG8gc3F1ZWxjaCB0aGlzIG1lc3NhZ2UsIHlvdSBjYW4gc2V0IGl0IHRvICdyZWZ1c2UnLiIKIG1zZ3N0ciAi0J/QviDRg9C80L7Qu9GH0LDQvdC40Y4sINGD0LTQsNC70LXQvdC40LUg0YLQtdC60YPRidC10Lkg0LLQtdGC0LrQuCDQt9Cw0L/RgNC10YnQtdC90L4sINGC0LDQuiDQutCw0Log0L/QvtGB0LvQtdC00YPRjtGJ0LjQuVxuwqtnaXQgY2xvbmXCuyDQvdC1INGB0LzQvtC20LXRgiDQv9C+0LvRg9GH0LjRgtGMINC90LjQutCw0LrQuNGFINGE0LDQudC70L7Qsiwg0YfRgtC+INC/0YDQuNCy0LXQtNC10YIg0Log0L/Rg9GC0LDQvdC40YbQtS5cblxu0JLRiyDQvNC+0LbQtdGC0LUg0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0LfQvdCw0YfQtdC90LjQtSDQvtC/0YbQuNC4IMKrcmVjZWl2ZS5kZW55RGVsZXRlQ3VycmVudMK7XG7QsiDCq3dhcm7CuyDQuNC70LggwqtpZ25vcmXCuywg0LLQviDQstC90LXRiNC90LXQvCDRgNC10L/QvtC30LjRgtC+0YDQuNC4LCAg0YfRgtC+0LHRiyDRgNCw0LfRgNC10YjQuNGC0YxcbtGD0LTQsNC70LXQvdC40LUg0YLQtdC60YPRidC10Lkg0LLQtdGC0LrQuCDRgSDQuNC70Lgg0LHQtdC3INC/0YDQtdC00YPQv9GA0LXQttC00LDRjtGJ0LXQs9C+INGB0L7QvtCx0YnQtdC90LjRjy5cblxu0KfRgtC+0LHRiyDQv9GA0L7Qv9GD0YHRgtC40YLRjCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1LCDQstGLINC80L7QttC10YLQtSDRg9GB0YLQsNC90L7QstC40YLRjCDQt9C90LDRh9C10L3QuNC1INC+0L/RhtC40LhcbtCyIMKrcmVmdXNlwrsuIgogCi0jOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5MjMKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk0MAogbXNnaWQgInF1aWV0IgogbXNnc3RyICLRgtC40YXQuNC5INGA0LXQttC40LwiCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTkzNworIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTU0CiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIGRpcmVjdG9yeS4iCiBtc2dzdHIgItCS0Ysg0LTQvtC70LbQvdGLINGD0LrQsNC30LDRgtGMINC60LDRgtCw0LvQvtCzLiIKIAotIzogYnVpbHRpbi9yZWZsb2cuYzo1MzYgYnVpbHRpbi9yZWZsb2cuYzo1NDEKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MTcKK21zZ2lkICIiCisiZ2l0IHJlZmxvZyBleHBpcmUgWy0tZXhwaXJlPTx0aW1lPl0gWy0tZXhwaXJlLXVucmVhY2hhYmxlPTx0aW1lPl0gIgorIlstLXJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tc3RhbGUtZml4XSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdIFstLWFsbF0iCisiIDxyZWZzPi4uLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjIyCittc2dpZCAiIgorImdpdCByZWZsb2cgZGVsZXRlIFstLXJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSAiCisiPHJlZnM+Li4uIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MjUKK21zZ2lkICJnaXQgcmVmbG9nIGV4aXN0cyA8cmVmPiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjU2NyBidWlsdGluL3JlZmxvZy5jOjU3MgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRpbWVzdGFtcCIKIG1zZ3N0ciAiwqslc8K7INC90LUg0Y/QstC70Y/QtdGC0YHRjyDQtNC+0L/Rg9GB0YLQuNC80L7QuSDQvNC10YLQutC+0Lkg0LTQsNGC0Ysv0LLRgNC10LzQtdC90LgiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hcmtpbmcgcmVhY2hhYmxlIG9iamVjdHMuLi4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo2NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcG9pbnRzIG5vd2hlcmUhIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6Njk1Cittc2dpZCAibm8gcmVmbG9nIHNwZWNpZmllZCB0byBkZWxldGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgcmVmbG9nOiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjcwOQorIywgYy1mb3JtYXQKK21zZ2lkICJubyByZWZsb2cgZm9yICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWYgZm9ybWF0OiAlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc2NAorbXNnaWQgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNgogbXNnaWQgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2CisjOiBidWlsdGluL3JlbW90ZS5jOjE3CiBtc2dpZCAiIgogImdpdCByZW1vdGUgYWRkIFstdCA8YnJhbmNoPl0gWy1tIDxtYXN0ZXI+XSBbLWZdIFstLXRhZ3MgfCAtLW5vLXRhZ3NdICIKICJbLS1taXJyb3I9PGZldGNofHB1c2g+XSA8bmFtZT4gPHVybD4iCiBtc2dzdHIgImdpdCByZW1vdGUgYWRkIFstdCA80LLQtdGC0LrQsD5dIFstbSA80LzQsNGB0YLQtdGALdCy0LXRgtC60LA+XSBbLWZdIFstLXRhZ3MgfCAtLW5vLXRhZ3NdIFstLW1pcnJvcj08ZmV0Y2h8cHVzaD5dIDzQuNC80Y8+IDzQsNC00YDQtdGBPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNyBidWlsdGluL3JlbW90ZS5jOjM3CisjOiBidWlsdGluL3JlbW90ZS5jOjE4IGJ1aWx0aW4vcmVtb3RlLmM6MzgKIG1zZ2lkICJnaXQgcmVtb3RlIHJlbmFtZSA8b2xkPiA8bmV3PiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSByZW5hbWUgPNGB0YLQsNGA0L7QtS3QvdCw0LfQstCw0L3QuNC1PiA80L3QvtCy0L7QtS3QvdCw0LfQstCw0L3QuNC1PiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOCBidWlsdGluL3JlbW90ZS5jOjQyCisjOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6NDMKIG1zZ2lkICJnaXQgcmVtb3RlIHJlbW92ZSA8bmFtZT4iCiBtc2dzdHIgImdpdCByZW1vdGUgcmVtb3ZlIDzQuNC80Y8+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6NDcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjAgYnVpbHRpbi9yZW1vdGUuYzo0OAogbXNnaWQgImdpdCByZW1vdGUgc2V0LWhlYWQgPG5hbWU+ICgtYSB8IC0tYXV0byB8IC1kIHwgLS1kZWxldGUgfCA8YnJhbmNoPikiCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWhlYWQgPNC40LzRjz4gKC1hIHwgLS1hdXRvIHwgLWQgfCAtLWRlbGV0ZSB8IDzQstC10YLQutCwPikiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjEKIG1zZ2lkICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gc2hvdyBbLW5dIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHNob3cgWy1uXSA80LjQvNGPPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMQorIzogYnVpbHRpbi9yZW1vdGUuYzoyMgogbXNnaWQgImdpdCByZW1vdGUgcHJ1bmUgWy1uIHwgLS1kcnktcnVuXSA8bmFtZT4iCiBtc2dzdHIgImdpdCByZW1vdGUgcHJ1bmUgWy1uIHwgLS1kcnktcnVuXSA80LjQvNGPPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMgorIzogYnVpbHRpbi9yZW1vdGUuYzoyMwogbXNnaWQgIiIKICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gdXBkYXRlIFstcCB8IC0tcHJ1bmVdIFsoPGdyb3VwPiB8IDxyZW1vdGU+KS4uLl0iCiBtc2dzdHIgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSB1cGRhdGUgWy1wIHwgLS1wcnVuZV0gWyg80LPRgNGD0L/Qv9CwPiB8IDzQuNC80Y8t0LLQvdC10YjQvdC10LPQvi3RgNC10L/QvtC30LjRgtC+0YDQuNGPPinigKZdIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIzCisjOiBidWlsdGluL3JlbW90ZS5jOjI0CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgWy0tYWRkXSA8bmFtZT4gPGJyYW5jaD4uLi4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIFstLWFkZF0gPNC40LzRjz4gPNCy0LXRgtC60LA+4oCmIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI0IGJ1aWx0aW4vcmVtb3RlLmM6NzMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjUgYnVpbHRpbi9yZW1vdGUuYzo3NAogbXNnaWQgImdpdCByZW1vdGUgZ2V0LXVybCBbLS1wdXNoXSBbLS1hbGxdIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBnZXQtdXJsIFstLXB1c2hdIFstLWFsbF0gPNC40LzRjz4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjUgYnVpbHRpbi9yZW1vdGUuYzo3OAorIzogYnVpbHRpbi9yZW1vdGUuYzoyNiBidWlsdGluL3JlbW90ZS5jOjc5CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIFstLXB1c2hdIDxuYW1lPiA8bmV3dXJsPiBbPG9sZHVybD5dIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgWy0tcHVzaF0gPNC40LzRjz4gPNC90L7QstGL0LktdXJsPiBbPNGB0YLQsNGA0YvQuS11cmw+XSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNiBidWlsdGluL3JlbW90ZS5jOjc5CisjOiBidWlsdGluL3JlbW90ZS5jOjI3IGJ1aWx0aW4vcmVtb3RlLmM6ODAKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC11cmwgLS1hZGQgPG5hbWU+IDxuZXd1cmw+IgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgLS1hZGQgPNC40LzRjz4gPNC90L7QstGL0LktdXJsPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNyBidWlsdGluL3JlbW90ZS5jOjgwCisjOiBidWlsdGluL3JlbW90ZS5jOjI4IGJ1aWx0aW4vcmVtb3RlLmM6ODEKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC11cmwgLS1kZWxldGUgPG5hbWU+IDx1cmw+IgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgLS1kZWxldGUgPNC40LzRjz4gPHVybD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MzIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MzMKIG1zZ2lkICJnaXQgcmVtb3RlIGFkZCBbPG9wdGlvbnM+XSA8bmFtZT4gPHVybD4iCiBtc2dzdHIgImdpdCByZW1vdGUgYWRkIFs80L7Qv9GG0LjQuD5dIDzQuNC80Y8+IDx1cmw+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjUyCisjOiBidWlsdGluL3JlbW90ZS5jOjUzCiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgPG5hbWU+IDxicmFuY2g+Li4uIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyA80LjQvNGPPiA80LLQtdGC0LrQsD7igKYiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NTMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NTQKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyAtLWFkZCA8bmFtZT4gPGJyYW5jaD4uLi4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIC0tYWRkIDzQuNC80Y8+IDzQstC10YLQutCwPuKApiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo1OAorIzogYnVpbHRpbi9yZW1vdGUuYzo1OQogbXNnaWQgImdpdCByZW1vdGUgc2hvdyBbPG9wdGlvbnM+XSA8bmFtZT4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2hvdyBbPNC+0L/RhtC40Lg+XSA80LjQvNGPPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2MworIzogYnVpbHRpbi9yZW1vdGUuYzo2NAogbXNnaWQgImdpdCByZW1vdGUgcHJ1bmUgWzxvcHRpb25zPl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHBydW5lIFs80L7Qv9GG0LjQuD5dIDzQuNC80Y8+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjY4CisjOiBidWlsdGluL3JlbW90ZS5jOjY5CiBtc2dpZCAiZ2l0IHJlbW90ZSB1cGRhdGUgWzxvcHRpb25zPl0gWzxncm91cD4gfCA8cmVtb3RlPl0uLi4iCiBtc2dzdHIgImdpdCByZW1vdGUgdXBkYXRlIFs80L7Qv9GG0LjQuD5dIFs80LPRgNGD0L/Qv9CwPiB8IDzQuNC80Y8t0LLQvdC10YjQvdC10LPQvi3RgNC10L/QvtC30LjRgtC+0YDQuNGPPl3igKYiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRpbmcgJXMiCiBtc2dzdHIgItCe0LHQvdC+0LLQu9C10L3QuNC1ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyOQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzAKIG1zZ2lkICIiCiAiLS1taXJyb3IgaXMgZGFuZ2Vyb3VzIGFuZCBkZXByZWNhdGVkOyBwbGVhc2VcbiIKICJcdCB1c2UgLS1taXJyb3I9ZmV0Y2ggb3IgLS1taXJyb3I9cHVzaCBpbnN0ZWFkIgogbXNnc3RyICLQutC70Y7RhyAtLW1pcnJvciDQvdC10LHQtdC30L7Qv9Cw0YHQtdC9INC4INC90LUg0YDQtdC60L7QvNC10L3QtNGD0LXRgtGB0Y8g0Log0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y47XG7QuNGB0L/QvtC70YzQt9GD0LnRgtC1INCy0LzQtdGB0YLQviDQvdC10LPQviAtLW1pcnJvcj1mZXRjaCDQuNC70LggLS1taXJyb3I9cHVzaCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gbWlycm9yIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90YvQuSDQsNGA0LPRg9C80LXQvdGCINC00LvRjyBtaXJyb3I6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjMKIG1zZ2lkICJmZXRjaCB0aGUgcmVtb3RlIGJyYW5jaGVzIgogbXNnc3RyICLQuNC30LLQu9C10YfRjCDQstC90LXRiNC90LjQtSDQstC10YLQutC4IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjUKIG1zZ2lkICJpbXBvcnQgYWxsIHRhZ3MgYW5kIGFzc29jaWF0ZWQgb2JqZWN0cyB3aGVuIGZldGNoaW5nIgogbXNnc3RyICLQuNC80L/QvtGA0YLQuNGA0L7QstCw0YLRjCDQstGB0LUg0LzQtdGC0LrQuCDQuCDQsNGB0YHQvtGG0LjQuNGA0L7QstCw0L3QvdGL0LUg0L7QsdGK0LXQutGC0Ysg0L/RgNC4INC40LfQstC70LXRh9C10L3QuNC4IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2NworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjgKIG1zZ2lkICJvciBkbyBub3QgZmV0Y2ggYW55IHRhZyBhdCBhbGwgKC0tbm8tdGFncykiCiBtc2dzdHIgItC40LvQuCDQvdC1INC40LfQstC70LXQutCw0YLRjCDQvNC10YLQutC4INCy0L7QvtCx0YnQtSAoLS1uby10YWdzKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcwCiBtc2dpZCAiYnJhbmNoKGVzKSB0byB0cmFjayIKIG1zZ3N0ciAi0L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0LUg0LLQtdGC0LrQuCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcxCiBtc2dpZCAibWFzdGVyIGJyYW5jaCIKIG1zZ3N0ciAi0LzQsNGB0YLQtdGAINCy0LXRgtC60LAiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcxCi1tc2dpZCAicHVzaHxmZXRjaCIKLW1zZ3N0ciAicHVzaHxmZXRjaCIKLQotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTczCiBtc2dpZCAic2V0IHVwIHJlbW90ZSBhcyBhIG1pcnJvciB0byBwdXNoIHRvIG9yIGZldGNoIGZyb20iCiBtc2dzdHIgItC90LDRgdGC0YDQvtC40YLRjCDQstC90LXRiNC90LjQuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5INC60LDQuiDQt9C10YDQutCw0LvQviDQtNC70Y8g0L7RgtC/0YDQsNCy0LrQuCDQuNC70Lgg0LjQt9Cy0LvQtdGH0LXQvdC40Y8g0LjQt9C80LXQvdC10L3QuNC5IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE4NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxODUKIG1zZ2lkICJzcGVjaWZ5aW5nIGEgbWFzdGVyIGJyYW5jaCBtYWtlcyBubyBzZW5zZSB3aXRoIC0tbWlycm9yIgogbXNnc3RyICLRg9C60LDQt9Cw0L3QuNC1INC80LDRgdGC0LXRgCDQstC10YLQutC4INC90LUg0LjQvNC10LXRgiDRgdC80YvRgdC70LAg0YEg0L/QsNGA0LDQvNC10YLRgNC+0LwgLS1taXJyb3IiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg2CisjOiBidWlsdGluL3JlbW90ZS5jOjE4NwogbXNnaWQgInNwZWNpZnlpbmcgYnJhbmNoZXMgdG8gdHJhY2sgbWFrZXMgc2Vuc2Ugb25seSB3aXRoIGZldGNoIG1pcnJvcnMiCiBtc2dzdHIgItGD0LrQsNC30LDQvdC40LUg0L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0YUg0LLQtdGC0L7QuiDQuNC80LXQtdGCINGB0LzRi9GB0Lsg0YLQvtC70YzQutC+INC/0YDQuCDQt9C10YDQutCw0LvRjNC90L7QvCDQuNC30LLQu9C10YfQtdC90LjQuCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOTMgYnVpbHRpbi9yZW1vdGUuYzo2MzUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk0IGJ1aWx0aW4vcmVtb3RlLmM6NjM2CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZSAlcyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgItCy0L3QtdGI0L3QuNC5INGA0LXQv9C+0LfQuNGC0L7RgNC40LkgJXMg0YPQttC1INGB0YPRidC10YHRgtCy0YPQtdGCIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE5NyBidWlsdGluL3JlbW90ZS5jOjYzOQorIzogYnVpbHRpbi9yZW1vdGUuYzoxOTggYnVpbHRpbi9yZW1vdGUuYzo2NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZW1vdGUgbmFtZSIKIG1zZ3N0ciAiwqslc8K7INC90LUg0Y/QstC70Y/QtdGC0YHRjyDQtNC+0L/Rg9GB0YLQuNC80YvQvCDQuNC80LXQvdC10Lwg0LLQvdC10YjQvdC10LPQviDRgNC10L/QvtC30LjRgtC+0YDQuNGPLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMzcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzZXR1cCBtYXN0ZXIgJyVzJyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0YHRgtGA0L7QuNGC0Ywg0LzQsNGB0YLQtdGAINCy0LXRgtC60YMgwqslc8K7IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjM0MworIzogYnVpbHRpbi9yZW1vdGUuYzozNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGdldCBmZXRjaCBtYXAgZm9yIHJlZnNwZWMgJXMiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LjQt9Cy0LvQtdGH0Ywg0LrQsNGA0YLRgyDQtNC70Y8g0YHQv9C10YbQuNGE0LjQutCw0YLQvtGA0LAg0YHRgdGL0LvQutC4ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjQ0MiBidWlsdGluL3JlbW90ZS5jOjQ1MAorIzogYnVpbHRpbi9yZW1vdGUuYzo0NDMgYnVpbHRpbi9yZW1vdGUuYzo0NTEKIG1zZ2lkICIobWF0Y2hpbmcpIgogbXNnc3RyICIo0YHQvtC+0YLQstC10YLRgdGC0LLRg9GO0YnQsNGPKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo0NTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NDU1CiBtc2dpZCAiKGRlbGV0ZSkiCiBtc2dzdHIgIijRg9C00LDQu9C10L3QvdCw0Y8pIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjYyOCBidWlsdGluL3JlbW90ZS5jOjc2NCBidWlsdGluL3JlbW90ZS5jOjg2MworIzogYnVpbHRpbi9yZW1vdGUuYzo2MjkgYnVpbHRpbi9yZW1vdGUuYzo3NjUgYnVpbHRpbi9yZW1vdGUuYzo4NjQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiTm8gc3VjaCByZW1vdGU6ICVzIgotbXNnc3RyICLQndC10YIg0YLQsNC60L7Qs9C+INCy0L3QtdGI0L3QtdCz0L4g0YDQtdC/0L7Qt9C40YLQvtGA0LjRjzogJXMiCittc2dpZCAiTm8gc3VjaCByZW1vdGU6ICclcyciCittc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NDUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW5hbWUgY29uZmlnIHNlY3Rpb24gJyVzJyB0byAnJXMnIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0LXRgNC10LjQvNC10L3QvtCy0LDRgtGMINGB0LXQutGG0LjRjiDQutC+0L3RhNC40LPRg9GA0LDRhtC40Lgg0YEgwqslc8K7INC90LAgwqslc8K7IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjY2NQorIzogYnVpbHRpbi9yZW1vdGUuYzo2NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vdCB1cGRhdGluZyBub24tZGVmYXVsdCBmZXRjaCByZWZzcGVjXG4iCkBAIC0xMzc1MywxNyArMTY1MTAsMTcgQEAKICJcdFBsZWFzZSB1cGRhdGUgdGhlIGNvbmZpZ3VyYXRpb24gbWFudWFsbHkgaWYgbmVjZXNzYXJ5LiIKIG1zZ3N0ciAi0J3QtSDQvtCx0L3QvtCy0LvRj9GOINC90LXRgdGC0LDQvdC00LDRgNGC0L3Rg9GOINGB0L/QtdGG0LjRhNC40LrQsNGC0L7RgCDRgdGB0YvQu9C60Lgg0LTQu9GPINC40LfQstC70LXRh9C10L3QuNGPXG5cdCVzXG5cdNCf0L7QttCw0LvRg9C50YHRgtCwLCDQtdGB0LvQuCDRgtGA0LXQsdGD0LXRgtGB0Y8sINC+0LHQvdC+0LLQuNGC0LUg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNGOINCy0YDRg9GH0L3Rg9GOLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo3MDEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbGV0aW5nICclcycgZmFpbGVkIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMIMKrJXPCuyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo3MzUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzM2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNyZWF0aW5nICclcycgZmFpbGVkIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMIMKrJXPCuyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo4MDEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6ODAyCiBtc2dpZCAiIgogIk5vdGU6IEEgYnJhbmNoIG91dHNpZGUgdGhlIHJlZnMvcmVtb3Rlcy8gaGllcmFyY2h5IHdhcyBub3QgcmVtb3ZlZDtcbiIKICJ0byBkZWxldGUgaXQsIHVzZToiCkBAIC0xMzc3NSwxNDggKzE2NTMyLDE0OCBAQAogbXNnc3RyWzJdICLQn9GA0LjQvNC10YfQsNC90LjQtTog0J3QtdC60L7RgtC+0YDRi9C1INCy0LXRgtC60Lgg0LLQvdC1INC40LXRgNCw0YDRhdC40LggcmVmcy9yZW1vdGVzLyDQvdC1INCx0YPQtNGD0YIg0YPQtNCw0LvQtdC90Ys7XG7Rh9GC0L7QsdGLINGD0LTQsNC70LjRgtGMINC40YUsINC40YHQv9C+0LvRjNC30YPQudGC0LU6IgogbXNnc3RyWzNdICLQn9GA0LjQvNC10YfQsNC90LjQtTog0J3QtdC60L7RgtC+0YDRi9C1INCy0LXRgtC60Lgg0LLQvdC1INC40LXRgNCw0YDRhdC40LggcmVmcy9yZW1vdGVzLyDQvdC1INCx0YPQtNGD0YIg0YPQtNCw0LvQtdC90Ys7XG7Rh9GC0L7QsdGLINGD0LTQsNC70LjRgtGMINC40YUsINC40YHQv9C+0LvRjNC30YPQudGC0LU6IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjgxNQorIzogYnVpbHRpbi9yZW1vdGUuYzo4MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBjb25maWcgc2VjdGlvbiAnJXMnIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINGB0LXQutGG0LjRjiDRhNCw0LnQu9CwINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTE2CisjOiBidWlsdGluL3JlbW90ZS5jOjkxNwogIywgYy1mb3JtYXQKIG1zZ2lkICIgbmV3IChuZXh0IGZldGNoIHdpbGwgc3RvcmUgaW4gcmVtb3Rlcy8lcykiCiBtc2dzdHIgIiDQvdC+0LLQsNGPICjRgdC70LXQtNGD0Y7RidC10LUg0LjQt9Cy0LvQtdGH0LXQvdC40LUg0YHQvtGF0YDQsNC90LjRgiDQtdC1INCyIHJlbW90ZXMvJXMpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkxOQorIzogYnVpbHRpbi9yZW1vdGUuYzo5MjAKIG1zZ2lkICIgdHJhY2tlZCIKIG1zZ3N0ciAiINC+0YLRgdC70LXQttC40LLQsNC10YLRgdGPIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkyMQorIzogYnVpbHRpbi9yZW1vdGUuYzo5MjIKIG1zZ2lkICIgc3RhbGUgKHVzZSAnZ2l0IHJlbW90ZSBwcnVuZScgdG8gcmVtb3ZlKSIKIG1zZ3N0ciAiINC90LXQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3QsCAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCByZW1vdGUgcHJ1bmXCuywg0YfRgtC+0LHRiyDRg9C00LDQu9C40YLRjCkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTIzCisjOiBidWlsdGluL3JlbW90ZS5jOjkyNAogbXNnaWQgIiA/Pz8iCiBtc2dzdHIgIiA/Pz8iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTY0CisjOiBidWlsdGluL3JlbW90ZS5jOjk2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGJyYW5jaC4lcy5tZXJnZTsgY2Fubm90IHJlYmFzZSBvbnRvID4gMSBicmFuY2giCiBtc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90YvQuSDQv9Cw0YDQsNC80LXRgtGAINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCBicmFuY2guJXMubWVyZ2U7INC90LXQstC+0LfQvNC+0LbQvdC+INC/0LXRgNC10LzQtdGB0YLQuNGC0Ywg0LHQvtC70LXQtSDRh9C10Lwg0L3QsNC0IDEg0LLQtdGC0LrQvtC5IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk3MworIzogYnVpbHRpbi9yZW1vdGUuYzo5NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAicmViYXNlcyBpbnRlcmFjdGl2ZWx5IG9udG8gcmVtb3RlICVzIgogbXNnc3RyICLQv9C10YDQtdC80LXRidCw0LXRgtGB0Y8g0LjQvdGC0LXRgNCw0LrRgtC40LLQvdC+INC90LDQtCDQstC90LXRiNC90LXQuSDQstC10YLQutC+0LkgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTc1CisjOiBidWlsdGluL3JlbW90ZS5jOjk3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgKHdpdGggbWVyZ2VzKSBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk3OAorIzogYnVpbHRpbi9yZW1vdGUuYzo5NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAicmViYXNlcyBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAi0L/QtdGA0LXQvNC10YnQsNC10YLRgdGPINC90LDQtCDQstC90LXRiNC90LXQuSDQstC10YLQutC+0LkgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTgyCisjOiBidWlsdGluL3JlbW90ZS5jOjk4MwogIywgYy1mb3JtYXQKIG1zZ2lkICIgbWVyZ2VzIHdpdGggcmVtb3RlICVzIgogbXNnc3RyICIg0LHRg9C00LXRgiDRgdC70LjRgtCwINGBINCy0L3QtdGI0L3QtdC5INCy0LXRgtC60L7QuSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5ODUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1lcmdlcyB3aXRoIHJlbW90ZSAlcyIKIG1zZ3N0ciAi0LHRg9C00LXRgiDRgdC70LjRgtCwINGBINCy0L3QtdGI0L3QtdC5INCy0LXRgtC60L7QuSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5ODgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiUtKnMgICAgYW5kIHdpdGggcmVtb3RlICVzXG4iCiBtc2dzdHIgIiUtKnMgICAg0Lgg0YEg0LLQvdC10YjQvdC10Lkg0LLQtdGC0LrQvtC5ICVzXG4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzMQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDMyCiBtc2dpZCAiY3JlYXRlIgogbXNnc3RyICLRgdC+0LfQtNCw0L3QsCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDM0CisjOiBidWlsdGluL3JlbW90ZS5jOjEwMzUKIG1zZ2lkICJkZWxldGUiCiBtc2dzdHIgItGD0LTQsNC70LXQvdCwIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMzgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzOQogbXNnaWQgInVwIHRvIGRhdGUiCiBtc2dzdHIgItGD0LbQtSDQsNC60YLRg9Cw0LvRjNC90LAiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA0MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQyCiBtc2dpZCAiZmFzdC1mb3J3YXJkYWJsZSIKIG1zZ3N0ciAi0LLQvtC30LzQvtC20L3QsCDQv9C10YDQtdC80L7RgtC60LAg0LLQv9C10YDQtdC0IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNDQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA0NQogbXNnaWQgImxvY2FsIG91dCBvZiBkYXRlIgogbXNnc3RyICLQu9C+0LrQsNC70YzQvdCw0Y8g0LLQtdGC0LrQsCDRg9GB0YLQsNGA0LXQu9CwIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNTEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MgogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBmb3JjZXMgdG8gJS0qcyAoJXMpIgogbXNnc3RyICIgICAgJS0qcyDQsdGD0LTQtdGCINC/0YDQuNC90YPQtNC40YLQtdC70YzQvdC+INC+0YLQv9GA0LDQstC70LXQvdCwINCyICUtKnMgKCVzKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU0CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICUtKnMgcHVzaGVzIHRvICUtKnMgKCVzKSIKIG1zZ3N0ciAiICAgICUtKnMg0LHRg9C00LXRgiDQvtGC0L/RgNCw0LLQu9C10L3QsCDQsiAlLSpzICglcykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIGZvcmNlcyB0byAlcyIKIG1zZ3N0ciAiICAgICUtKnMg0LHRg9C00LXRgiDQv9GA0LjQvdGD0LTQuNGC0LXQu9GM0L3QviDQvtGC0L/RgNCw0LLQu9C10L3QsCDQsiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDYxCisjOiBidWlsdGluL3JlbW90ZS5jOjEwNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICUtKnMgcHVzaGVzIHRvICVzIgogbXNnc3RyICIgICAgJS0qcyDQsdGD0LTQtdGCINC+0YLQv9GA0LDQstC70LXQvdCwINCyICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExMjkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzMAogbXNnaWQgImRvIG5vdCBxdWVyeSByZW1vdGVzIgogbXNnc3RyICLQvdC1INC+0L/RgNCw0YjQuNCy0LDRgtGMINCy0L3QtdGI0L3QuNC1INGA0LXQv9C+0LfQuNGC0L7RgNC40LgiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1NgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiogcmVtb3RlICVzIgogbXNnc3RyICIqINCy0L3QtdGI0L3QuNC5INGA0LXQv9C+0LfQuNGC0L7RgNC40LkgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1NworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgRmV0Y2ggVVJMOiAlcyIKIG1zZ3N0ciAiICBVUkwg0LTQu9GPINC40LfQstC70LXRh9C10L3QuNGPOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU4IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NCBidWlsdGluL3JlbW90ZS5jOjEzMTMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1OSBidWlsdGluL3JlbW90ZS5jOjExNzUgYnVpbHRpbi9yZW1vdGUuYzoxMzE0CiBtc2dpZCAiKG5vIFVSTCkiCiBtc2dzdHIgIijQvdC10YIgVVJMKSIKIAogIy4gVFJBTlNMQVRPUlM6IHRoZSBjb2xvbiAnOicgc2hvdWxkIGFsaWduCiAjLiB3aXRoIHRoZSBvbmUgaW4gIiBGZXRjaCBVUkw6ICVzIgogIy4gdHJhbnNsYXRpb24uCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzIgYnVpbHRpbi9yZW1vdGUuYzoxMTc0CisjOiBidWlsdGluL3JlbW90ZS5jOjExNzMgYnVpbHRpbi9yZW1vdGUuYzoxMTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgUHVzaCAgVVJMOiAlcyIKIG1zZ3N0ciAiICAgIFVSTCDQtNC70Y8g0L7RgtC/0YDQsNCy0LrQuDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NiBidWlsdGluL3JlbW90ZS5jOjExNzggYnVpbHRpbi9yZW1vdGUuYzoxMTgwCisjOiBidWlsdGluL3JlbW90ZS5jOjExNzcgYnVpbHRpbi9yZW1vdGUuYzoxMTc5IGJ1aWx0aW4vcmVtb3RlLmM6MTE4MQogIywgYy1mb3JtYXQKIG1zZ2lkICIgIEhFQUQgYnJhbmNoOiAlcyIKIG1zZ3N0ciAiICBIRUFEINCy0LXRgtC60LA6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NwogbXNnaWQgIihub3QgcXVlcmllZCkiCiBtc2dzdHIgIijQvdC1INC30LDQv9GA0LDRiNC40LLQsNC70YHRjykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTc5CiBtc2dpZCAiKHVua25vd24pIgogbXNnc3RyICIo0L3QtdC40LfQstC10YHRgtC90L4pIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExODIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE4MwogIywgYy1mb3JtYXQKIG1zZ2lkICIgIEhFQUQgYnJhbmNoIChyZW1vdGUgSEVBRCBpcyBhbWJpZ3VvdXMsIG1heSBiZSBvbmUgb2YgdGhlIGZvbGxvd2luZyk6XG4iCiBtc2dzdHIgIiAgSEVBRCDQstC10YLQutCwIChIRUFEINCy0L3QtdGI0L3QtdCz0L4g0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyDQvdC10L7QtNC90L7Qt9C90LDRh9C90YvQuSwg0LzQvtC20LXRgiDQsdGL0YLRjCDQvtC00L3QuNC8INC40LcpOlxuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExOTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE5NQogIywgYy1mb3JtYXQKIG1zZ2lkICIgIFJlbW90ZSBicmFuY2g6JXMiCiBtc2dpZF9wbHVyYWwgIiAgUmVtb3RlIGJyYW5jaGVzOiVzIgpAQCAtMTM5MjUsMTEgKzE2NjgyLDExIEBACiBtc2dzdHJbMl0gIiAg0JLQvdC10YjQvdC40LUg0LLQtdGC0LrQuDolcyIKIG1zZ3N0clszXSAiICDQktC90LXRiNC90LjQtSDQstC10YLQutC4OiVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExOTcgYnVpbHRpbi9yZW1vdGUuYzoxMjIzCisjOiBidWlsdGluL3JlbW90ZS5jOjExOTggYnVpbHRpbi9yZW1vdGUuYzoxMjI0CiBtc2dpZCAiIChzdGF0dXMgbm90IHF1ZXJpZWQpIgogbXNnc3RyICIgKNGB0YLQsNGC0YPRgSDQvdC1INC30LDQv9GA0LDRiNC40LLQsNC70YHRjykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIwNgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjA3CiBtc2dpZCAiICBMb2NhbCBicmFuY2ggY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dpZF9wbHVyYWwgIiAgTG9jYWwgYnJhbmNoZXMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dzdHJbMF0gIiAg0JvQvtC60LDQu9GM0L3QsNGPINCy0LXRgtC60LAsINC90LDRgdGC0YDQvtC10L3QvdCw0Y8g0LTQu9GPIMKrZ2l0IHB1bGzCuzoiCkBAIC0xMzkzNywxMSArMTY2OTQsMTEgQEAKIG1zZ3N0clsyXSAiICDQm9C+0LrQsNC70YzQvdGL0LUg0LLQtdGC0LrQuCwg0L3QsNGB0YLRgNC+0LXQvdC90YvQtSDQtNC70Y8gwqtnaXQgcHVsbMK7OiIKIG1zZ3N0clszXSAiICDQm9C+0LrQsNC70YzQvdGL0LUg0LLQtdGC0LrQuCwg0L3QsNGB0YLRgNC+0LXQvdC90YvQtSDQtNC70Y8gwqtnaXQgcHVsbMK7OiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjE0CisjOiBidWlsdGluL3JlbW90ZS5jOjEyMTUKIG1zZ2lkICIgIExvY2FsIHJlZnMgd2lsbCBiZSBtaXJyb3JlZCBieSAnZ2l0IHB1c2gnIgogbXNnc3RyICIg0JvQvtC60LDQu9GM0L3Ri9C1INGB0YHRi9C70LrQuCwg0LfQtdGA0LrQsNC70LjRgNGD0LXQvNGL0LUg0YEg0L/QvtC80L7RidGM0Y4gwqtnaXQgcHVzaMK7IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyMjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIyMQogIywgYy1mb3JtYXQKIG1zZ2lkICIgIExvY2FsIHJlZiBjb25maWd1cmVkIGZvciAnZ2l0IHB1c2gnJXM6IgogbXNnaWRfcGx1cmFsICIgIExvY2FsIHJlZnMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdXNoJyVzOiIKQEAgLTEzOTUwLDIzMSArMTY3MDcsMjYzIEBACiBtc2dzdHJbMl0gIiAg0JvQvtC60LDQu9GM0L3Ri9C1INGB0YHRi9C70LrQuCwg0L3QsNGB0YLRgNC+0LXQvdC90YvQtSDQtNC70Y8gwqtnaXQgcHVzaMK7JXM6IgogbXNnc3RyWzNdICIgINCb0L7QutCw0LvRjNC90YvQtSDRgdGB0YvQu9C60LgsINC90LDRgdGC0YDQvtC10L3QvdGL0LUg0LTQu9GPIMKrZ2l0IHB1c2jCuyVzOiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjQxCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNDIKIG1zZ2lkICJzZXQgcmVmcy9yZW1vdGVzLzxuYW1lPi9IRUFEIGFjY29yZGluZyB0byByZW1vdGUiCiBtc2dzdHIgItGD0YHRgtCw0L3QvtCy0LjRgtGMIHJlZnMvcmVtb3Rlcy880LjQvNGPPi9IRUFEINCyINC30LDQstC40YHQuNC80L7RgdGC0Lgg0L7RgiDQstC90LXRiNC90LXQs9C+INGA0LXQv9C+0LfQuNGC0L7RgNC40Y8iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0MworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjQ0CiBtc2dpZCAiZGVsZXRlIHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCIKIG1zZ3N0ciAi0YPQtNCw0LvQuNGC0YwgcmVmcy9yZW1vdGVzLzzQuNC80Y8+L0hFQUQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjU5CiBtc2dpZCAiQ2Fubm90IGRldGVybWluZSByZW1vdGUgSEVBRCIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvtC/0YDQtdC00LXQu9C40YLRjCDQstC90LXRiNC90LjQuSBIRUFEIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI2MQogbXNnaWQgIk11bHRpcGxlIHJlbW90ZSBIRUFEIGJyYW5jaGVzLiBQbGVhc2UgY2hvb3NlIG9uZSBleHBsaWNpdGx5IHdpdGg6IgogbXNnc3RyICLQndC10YHQutC+0LvRjNC60L4g0LLQvdC10YjQvdC40YUgSEVBRCDQstC10YLQvtC6LiDQo9C60LDQttC40YLQtSDRj9Cy0L3QviDQvtC00L3RgyDQuNC3INC90LjRhToiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBkZWxldGUgJXMiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0YwgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIHJlZjogJXMiCiBtc2dzdHIgItCd0LXQtNC+0L/Rg9GB0YLQuNC80LDRjyDRgdGB0YvQu9C60LA6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyODAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc2V0dXAgJXMiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L3QsNGB0YLRgNC+0LjRgtGMICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyOTgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5OQogIywgYy1mb3JtYXQKIG1zZ2lkICIgJXMgd2lsbCBiZWNvbWUgZGFuZ2xpbmchIgogbXNnc3RyICIgJXMg0LHRg9C00LXRgiDQstC40YHRj9GJ0LXQuSDQstC10YLQutC+0LkhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyOTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMwMAogIywgYy1mb3JtYXQKIG1zZ2lkICIgJXMgaGFzIGJlY29tZSBkYW5nbGluZyEiCiBtc2dzdHIgIiAlcyDRgdGC0LDQu9CwINCy0LjRgdGP0YnQtdC5INCy0LXRgtC60L7QuSEiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMwOQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlBydW5pbmcgJXMiCiBtc2dzdHIgItCe0YfQuNGB0YLQutCwICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMTAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJVUkw6ICVzIgogbXNnc3RyICJVUkw6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMjYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIgKiBbd291bGQgcHJ1bmVdICVzIgogbXNnc3RyICIgKiBb0LHRg9C00LXRgiDRg9C00LDQu9C10L3QsF0gJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMyOQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAqIFtwcnVuZWRdICVzIgogbXNnc3RyICIgKiBb0YPQtNCw0LvQtdC90LBdICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzNzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM3NQogbXNnaWQgInBydW5lIHJlbW90ZXMgYWZ0ZXIgZmV0Y2hpbmciCiBtc2dzdHIgItC/0L7Rh9C40YHRgtC40YLRjCDQstC90LXRiNC90LjQtSDRgNC10L/QvtC30LjRgtC+0YDQuNC4INC/0L7RgdC70LUg0LjQt9Cy0LvQtdGH0LXQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQzNyBidWlsdGluL3JlbW90ZS5jOjE0OTEgYnVpbHRpbi9yZW1vdGUuYzoxNTU5CisjOiBidWlsdGluL3JlbW90ZS5jOjE0MzggYnVpbHRpbi9yZW1vdGUuYzoxNDkyIGJ1aWx0aW4vcmVtb3RlLmM6MTU2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIHJlbW90ZSAnJXMnIgogbXNnc3RyICLQndC10YIg0YLQsNC60L7Qs9C+INCy0L3QtdGI0L3QtdCz0L4g0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ1MworIzogYnVpbHRpbi9yZW1vdGUuYzoxNDU0CiBtc2dpZCAiYWRkIGJyYW5jaCIKIG1zZ3N0ciAi0LTQvtCx0LDQstC40YLRjCDQstC10YLQutGDIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0NjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ2MQogbXNnaWQgIm5vIHJlbW90ZSBzcGVjaWZpZWQiCiBtc2dzdHIgItC90LUg0YPQutCw0LfQsNC9INCy0L3QtdGI0L3QuNC5INGA0LXQv9C+0LfQuNGC0L7RgNC40LkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ3NworIzogYnVpbHRpbi9yZW1vdGUuYzoxNDc4CiBtc2dpZCAicXVlcnkgcHVzaCBVUkxzIHJhdGhlciB0aGFuIGZldGNoIFVSTHMiCiBtc2dzdHIgItC30LDQv9GA0L7RgdC40YLRjCBVUkwg0L7RgtC/0YDQsNCy0LrQuCwg0LLQvNC10YHRgtC+IFVSTCDQuNC30LLQu9C10YfQtdC90LjRjyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDc5CisjOiBidWlsdGluL3JlbW90ZS5jOjE0ODAKIG1zZ2lkICJyZXR1cm4gYWxsIFVSTHMiCiBtc2dzdHIgItCy0LXRgNC90YPRgtGMINCy0YHQtSBVUkwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUwNworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIFVSTHMgY29uZmlndXJlZCBmb3IgcmVtb3RlICclcyciCiBtc2dzdHIgIlVSTCDQvdC1INC90LDRgdGC0YDQvtC10L3RiyDQtNC70Y8g0LLQvdC10YjQvdC10LPQviDRgNC10L/QvtC30LjRgtC+0YDQuNGPIMKrJXPCuyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTMzCisjOiBidWlsdGluL3JlbW90ZS5jOjE1MzQKIG1zZ2lkICJtYW5pcHVsYXRlIHB1c2ggVVJMcyIKIG1zZ3N0ciAi0YPQv9GA0LDQstC70LXQvdC40LUgVVJMINC+0YLQv9GA0LDQstC60LgiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzNQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM2CiBtc2dpZCAiYWRkIFVSTCIKIG1zZ3N0ciAi0LTQvtCx0LDQstC40YLRjCBVUkwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzNworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM4CiBtc2dpZCAiZGVsZXRlIFVSTHMiCiBtc2dzdHIgItGD0LTQsNC70LjRgtGMIFVSTCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTQ0CisjOiBidWlsdGluL3JlbW90ZS5jOjE1NDUKIG1zZ2lkICItLWFkZCAtLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tYWRkINC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+INGBIC0tZGVsZXRlIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1ODMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIG9sZCBVUkwgcGF0dGVybjogJXMiCiBtc2dzdHIgItCd0LXQv9GA0LDQstC40LvRjNC90YvQuSDRiNCw0LHQu9C+0L0g0YHRgtCw0YDQvtCz0L4gVVJMOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTkxCisjOiBidWlsdGluL3JlbW90ZS5jOjE1OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCBVUkwgZm91bmQ6ICVzIgogbXNnc3RyICLQndC1INC90LDQudC00LXQvdGLINGB0L7QstC/0LDQtNC10L3QuNGPIFVSTDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU5MworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTk0CiBtc2dpZCAiV2lsbCBub3QgZGVsZXRlIGFsbCBub24tcHVzaCBVUkxzIgogbXNnc3RyICLQndC10LvRjNC30Y8g0YPQtNCw0LvQuNGC0Ywg0LLRgdC1IFVSTCDQvdC1LdC+0YLQv9GA0LDQstC60LgiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYwOQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEwCiBtc2dpZCAiYmUgdmVyYm9zZTsgbXVzdCBiZSBwbGFjZWQgYmVmb3JlIGEgc3ViY29tbWFuZCIKIG1zZ3N0ciAi0LHRi9GC0Ywg0LzQvdC+0LPQvtGB0LvQvtCy0L3QtdC1OyDQtNC+0LvQttC90L4g0YHRgtC+0Y/RgtGMINC/0LXRgNC10LQg0L/QvtC00LrQvtC80LDQvdC00L7QuSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjQwCisjOiBidWlsdGluL3JlbW90ZS5jOjE2NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biBzdWJjb21tYW5kOiAlcyIKIG1zZ3N0ciAi0J3QtdC40LfQstC10YHRgtC90LDRjyDQv9C+0LTQutC+0LzQsNC90LTQsDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MjAKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjIKIG1zZ2lkICJnaXQgcmVwYWNrIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgcmVwYWNrIFs80L7Qv9GG0LjQuD5dIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI1CisjOiBidWlsdGluL3JlcGFjay5jOjI3CiBtc2dpZCAiIgogIkluY3JlbWVudGFsIHJlcGFja3MgYXJlIGluY29tcGF0aWJsZSB3aXRoIGJpdG1hcCBpbmRleGVzLiAgVXNlXG4iCiAiLS1uby13cml0ZS1iaXRtYXAtaW5kZXggb3IgZGlzYWJsZSB0aGUgcGFjay53cml0ZWJpdG1hcHMgY29uZmlndXJhdGlvbi4iCiBtc2dzdHIgItCY0L3QutGA0LXQvNC10L3RgtCw0LvRjNC90YvQtSDQv9C10YDQtdC/0LDQutC+0LLQutC4INC90LUg0YHQvtCy0LzQtdGB0YLQuNC80Ysg0YEg0LjQvdC00LXQutGB0LDQvNC4INCyINCx0LjRgtC+0LLRi9GFINC60LDRgNGC0LDRhS4gINCY0YHQv9C+0LvRjNC30YPQudGC0LUg0L7Qv9GG0LjRjiAtLW5vLXdyaXRlLWJpdG1hcC1pbmRleCDQuNC70Lgg0L7RgtC60LvRjtGH0LjRgtC1INC/0LDRgNCw0LzQtdGC0YAg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC4IHBhY2sud3JpdGViaXRtYXBzLiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyODcKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjAwCittc2dpZCAiY291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjIzOSBidWlsdGluL3JlcGFjay5jOjQxNAorbXNnaWQgInJlcGFjazogRXhwZWN0aW5nIGZ1bGwgaGV4IG9iamVjdCBJRCBsaW5lcyBvbmx5IGZyb20gcGFjay1vYmplY3RzLiIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI1NgorbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk0CiBtc2dpZCAicGFjayBldmVyeXRoaW5nIGluIGEgc2luZ2xlIHBhY2siCiBtc2dzdHIgItGD0L/QsNC60L7QstCw0YLRjCDQstGB0ZEg0LIg0L7QtNC40L0g0L/QsNC60LXRgiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyODkKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk2CiBtc2dpZCAic2FtZSBhcyAtYSwgYW5kIHR1cm4gdW5yZWFjaGFibGUgb2JqZWN0cyBsb29zZSIKIG1zZ3N0ciAi0YLQvtC20LUsINGH0YLQviDQuCAtYSwg0L3QviDQtNC+0L/QvtC70L3QuNGC0LXQu9GM0L3QviDQvtGC0LHRgNC+0YHQuNGC0Ywg0L3QtdC00L7RgdGC0LjQttC40LzRi9C1INC+0LHRitC10LrRgtGLIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5MgorIzogYnVpbHRpbi9yZXBhY2suYzoyOTkKIG1zZ2lkICJyZW1vdmUgcmVkdW5kYW50IHBhY2tzLCBhbmQgcnVuIGdpdC1wcnVuZS1wYWNrZWQiCiBtc2dzdHIgItGD0LTQsNC70LjRgtC1INC70LjRiNC90LjQtSDQv9Cw0LrQtdGC0Ysg0Lgg0LfQsNC/0YPRgdGC0LjRgtC1IGdpdC1wcnVuZS1wYWNrZWQiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk0CisjOiBidWlsdGluL3JlcGFjay5jOjMwMQogbXNnaWQgInBhc3MgLS1uby1yZXVzZS1kZWx0YSB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICLQv9C10YDQtdC00LDRgtGMINC+0L/RhtC40Y4gLS1uby1yZXVzZS1kZWx0YSDQsiBnaXQtcGFjay1vYmplY3RzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5NgorIzogYnVpbHRpbi9yZXBhY2suYzozMDMKIG1zZ2lkICJwYXNzIC0tbm8tcmV1c2Utb2JqZWN0IHRvIGdpdC1wYWNrLW9iamVjdHMiCiBtc2dzdHIgItC/0LXRgNC10LTQsNGC0Ywg0L7Qv9GG0LjRjiAtLW5vLXJldXNlLW9iamVjdCDQsiBnaXQtcGFjay1vYmplY3RzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5OAorIzogYnVpbHRpbi9yZXBhY2suYzozMDUKIG1zZ2lkICJkbyBub3QgcnVuIGdpdC11cGRhdGUtc2VydmVyLWluZm8iCiBtc2dzdHIgItC90LUg0LfQsNC/0YPRgdC60LDRgtGMIGdpdC11cGRhdGUtc2VydmVyLWluZm8iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCisjOiBidWlsdGluL3JlcGFjay5jOjMwOAogbXNnaWQgInBhc3MgLS1sb2NhbCB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICLQv9C10YDQtdC00LDRgtGMINC+0L/RhtC40Y4gLS1sb2NhbCDQsiBnaXQtcGFjay1vYmplY3RzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMwMworIzogYnVpbHRpbi9yZXBhY2suYzozMTAKIG1zZ2lkICJ3cml0ZSBiaXRtYXAgaW5kZXgiCiBtc2dzdHIgItC30LDQv9C40YHRjCDQuNC90LTQtdC60YHQsCDQsiDQsdC40YLQvtCy0YvRhSDQutCw0YDRgtCw0YUiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA0CisjOiBidWlsdGluL3JlcGFjay5jOjMxMgorbXNnaWQgInBhc3MgLS1kZWx0YS1pc2xhbmRzIHRvIGdpdC1wYWNrLW9iamVjdHMiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMTMKIG1zZ2lkICJhcHByb3hpZGF0ZSIKIG1zZ3N0ciAi0L/RgNC40LzQtdGA0L3QsNGPLdC00LDRgtCwIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMwNQorIzogYnVpbHRpbi9yZXBhY2suYzozMTQKIG1zZ2lkICJ3aXRoIC1BLCBkbyBub3QgbG9vc2VuIG9iamVjdHMgb2xkZXIgdGhhbiB0aGlzIgogbXNnc3RyICLRgSDQvtC/0YbQuNC10LkgLUEsINC90LUg0L7RgtCx0YDQsNGB0YvQstCw0YLRjCDQvtCx0YrQtdC60YLRiyDRgdGC0LDRgNC10LUsINGH0LXQvCDRg9C60LDQt9Cw0L3QviIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDcKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE2CiBtc2dpZCAid2l0aCAtYSwgcmVwYWNrIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgItGBINC/0LDRgNCw0LzQtdGC0YDQvtC8IC1hLCDQv9C10YDQtdC/0LDQutC+0LLQsNGC0Ywg0L3QtdC00L7RgdGC0YPQv9C90YvQtSDQvtCx0YrQtdC60YLRiyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDkKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE4CiBtc2dpZCAic2l6ZSBvZiB0aGUgd2luZG93IHVzZWQgZm9yIGRlbHRhIGNvbXByZXNzaW9uIgogbXNnc3RyICLRgNCw0LfQvNC10YAg0L7QutC90LAsINC40YHQv9C+0LvRjNC30YPQtdC80YvQuSDQtNC70Y8g0LrQvtC80L/RgNC10YHRgdC40Lgg0LTQtdC70YzRgiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTAgYnVpbHRpbi9yZXBhY2suYzozMTYKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE5IGJ1aWx0aW4vcmVwYWNrLmM6MzI1CiBtc2dpZCAiYnl0ZXMiCiBtc2dzdHIgItC60L7Qu9C40YfQtdGB0YLQstC+LdCx0LDQudGCIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxMQorIzogYnVpbHRpbi9yZXBhY2suYzozMjAKIG1zZ2lkICJzYW1lIGFzIHRoZSBhYm92ZSwgYnV0IGxpbWl0IG1lbW9yeSBzaXplIGluc3RlYWQgb2YgZW50cmllcyBjb3VudCIKIG1zZ3N0ciAi0YLQvtC20LUsINGH0YLQviDQuCDQstGL0YjQtSwg0L3QviDQvtCz0YDQsNC90LjRh9C40YLRjCDRgNCw0LfQvNC10YAg0L/QsNC80Y/RgtC4LCDQsCDQvdC1INC60L7Qu9C40YfQtdGB0YLQstC+INC30LDQv9C40YHQtdC5IgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxMworIzogYnVpbHRpbi9yZXBhY2suYzozMjIKIG1zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gZGVsdGEgZGVwdGgiCiBtc2dzdHIgItC+0LPRgNCw0L3QuNGH0LXQvdC40LUg0L3QsCDQvNCw0LrRgdC40LzQsNC70YzQvdGD0Y4g0LPQu9GD0LHQuNC90YMg0LTQtdC70YzRgiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTUKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI0CiBtc2dpZCAibGltaXRzIHRoZSBtYXhpbXVtIG51bWJlciBvZiB0aHJlYWRzIgogbXNnc3RyICLQvtCz0YDQsNC90LjRh9C10L3QuNC1INC90LAg0LzQsNC60YHQuNC80LDQu9GM0L3QvtC1INC60L7Qu9C40YfQtdGB0YLQstC+INC/0L7RgtC+0LrQvtCyIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxNworIzogYnVpbHRpbi9yZXBhY2suYzozMjYKIG1zZ2lkICJtYXhpbXVtIHNpemUgb2YgZWFjaCBwYWNrZmlsZSIKIG1zZ3N0ciAi0LzQsNC60YHQuNC80LDQu9GM0L3Ri9C5INGA0LDQt9C80LXRgCDQutCw0LbQtNC+0LPQviDQuNC3INGE0LDQudC70L7QsiDQv9Cw0LrQtdGC0LAiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE5CisjOiBidWlsdGluL3JlcGFjay5jOjMyOAogbXNnaWQgInJlcGFjayBvYmplY3RzIGluIHBhY2tzIG1hcmtlZCB3aXRoIC5rZWVwIgogbXNnc3RyICLQv9C10YDQtdGD0L/QsNC60L7QstCw0YLRjCDQvtCx0YrQtdC60YLRiyDQsiDQv9Cw0LrQtdGC0YssINC/0L7QvNC10YfQtdC90L3Ri9C1INGE0LDQudC70L7QvCAua2VlcCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMjEKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzMwCiBtc2dpZCAiZG8gbm90IHJlcGFjayB0aGlzIHBhY2siCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMzEKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQwCiBtc2dpZCAiY2Fubm90IGRlbGV0ZSBwYWNrcyBpbiBhIHByZWNpb3VzLW9iamVjdHMgcmVwbyIKIG1zZ3N0ciAi0L3QtdC70YzQt9GPINGD0LTQsNC70Y/RgtGMINC/0LDQutC10YLRiyDQsiBwcmVjaW91cy1vYmplY3RzINGA0LXQv9C+0LfQuNGC0L7RgNC40LgiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzM1CisjOiBidWlsdGluL3JlcGFjay5jOjM0NAogbXNnaWQgIi0ta2VlcC11bnJlYWNoYWJsZSBhbmQgLUEgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1rZWVwLXVucmVhY2hhYmxlINC4IC1BINC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+IgogCi0jOiBidWlsdGluL3JlcGFjay5jOjUxMCBidWlsdGluL3dvcmt0cmVlLmM6MTM5CisjOiBidWlsdGluL3JlcGFjay5jOjQyMworbXNnaWQgIk5vdGhpbmcgbmV3IHRvIHBhY2suIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NDg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXQVJOSU5HOiBTb21lIHBhY2tzIGluIHVzZSBoYXZlIGJlZW4gcmVuYW1lZCBieVxuIgorIldBUk5JTkc6IHByZWZpeGluZyBvbGQtIHRvIHRoZWlyIG5hbWUsIGluIG9yZGVyIHRvXG4iCisiV0FSTklORzogcmVwbGFjZSB0aGVtIHdpdGggdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZVxuIgorIldBUk5JTkc6IGZpbGUuICBCdXQgdGhlIG9wZXJhdGlvbiBmYWlsZWQsIGFuZCB0aGVcbiIKKyJXQVJOSU5HOiBhdHRlbXB0IHRvIHJlbmFtZSB0aGVtIGJhY2sgdG8gdGhlaXJcbiIKKyJXQVJOSU5HOiBvcmlnaW5hbCBuYW1lcyBhbHNvIGZhaWxlZC5cbiIKKyJXQVJOSU5HOiBQbGVhc2UgcmVuYW1lIHRoZW0gaW4gJXMgbWFudWFsbHk6XG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBhY2suYzo1MzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAnJXMnIgogbXNnc3RyICLRgdCx0L7QuSDRg9C00LDQu9C10L3QuNGPIMKrJXPCuyIKQEAgLTE0MjAzLDM5ICsxNjk5MiwzNCBAQAogbXNnaWQgImdpdCByZXBsYWNlIFstLWZvcm1hdD08Zm9ybWF0Pl0gWy1sIFs8cGF0dGVybj5dXSIKIG1zZ3N0ciAiZ2l0IHJlcGxhY2UgWy0tZm9ybWF0PTzRhNC+0YDQvNCw0YI+XSBbLWwgWzzRiNCw0LHQu9C+0L0+XV0iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU3IGJ1aWx0aW4vcmVwbGFjZS5jOjIwMyBidWlsdGluL3JlcGxhY2UuYzoyMDYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZiIKLW1zZ3N0ciAiIgotCi0jOiBidWlsdGluL3JlcGxhY2UuYzo4NgorIzogYnVpbHRpbi9yZXBsYWNlLmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImludmFsaWQgcmVwbGFjZSBmb3JtYXQgJyVzJ1xuIgogInZhbGlkIGZvcm1hdHMgYXJlICdzaG9ydCcsICdtZWRpdW0nIGFuZCAnbG9uZyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTIxCisjOiBidWlsdGluL3JlcGxhY2UuYzoxMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZSByZWYgJyVzJyBub3QgZm91bmQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTM3CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCByZXBsYWNlIHJlZiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE0OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVmIG5hbWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTU0CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZSByZWYgJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoxNzQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiT2JqZWN0cyBtdXN0IGJlIG9mIHRoZSBzYW1lIHR5cGUuXG4iCkBAIC0xNDI0MywxNzggKzE3MDI3LDE4MyBAQAogIndoaWxlICclcycgcG9pbnRzIHRvIGEgcmVwbGFjZW1lbnQgb2JqZWN0IG9mIHR5cGUgJyVzJy4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjI1CisjOiBidWlsdGluL3JlcGxhY2UuYzoyMjkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHdyaXRpbmciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjM4CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNDIKIG1zZ2lkICJjYXQtZmlsZSByZXBvcnRlZCBmYWlsdXJlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI1NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MjU4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciByZWFkaW5nIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI2OAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MjcyCiBtc2dpZCAidW5hYmxlIHRvIHNwYXduIG1rdHJlZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyNzIKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3NgogbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gbWt0cmVlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg1CiBtc2dpZCAibWt0cmVlIHJlcG9ydGVkIGZhaWx1cmUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg1CisjOiBidWlsdGluL3JlcGxhY2UuYzoyODkKIG1zZ2lkICJta3RyZWUgZGlkIG5vdCByZXR1cm4gYW4gb2JqZWN0IG5hbWUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjk0CisjOiBidWlsdGluL3JlcGxhY2UuYzoyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZzdGF0ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI5OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MzAzCiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIG9iamVjdCB0byBkYXRhYmFzZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozMTggYnVpbHRpbi9yZXBsYWNlLmM6MzcxIGJ1aWx0aW4vcmVwbGFjZS5jOjQxNQotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDQ1CisjOiBidWlsdGluL3JlcGxhY2UuYzozMjIgYnVpbHRpbi9yZXBsYWNlLmM6Mzc3IGJ1aWx0aW4vcmVwbGFjZS5jOjQyMgorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyMgorIzogYnVpbHRpbi9yZXBsYWNlLmM6MzI2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBnZXQgb2JqZWN0IHR5cGUgZm9yICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMzOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MzQyCiBtc2dpZCAiZWRpdGluZyBvYmplY3QgZmlsZSBmYWlsZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzQ3CisjOiBidWlsdGluL3JlcGxhY2UuYzozNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IG9iamVjdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MDcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjM4MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJXMgYXMgYSBjb21taXQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBtZXJnZXRhZyBpbiBjb21taXQgJyVzJyIKIG1zZ3N0ciAi0L/Qu9C+0YXQsNGPINC80LXRgtC60LAg0YHQu9C40Y/QvdC40Y8g0LIg0LrQvtC80LzQuNGC0LUgwqslc8K7IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MDkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgbWVyZ2V0YWcgaW4gY29tbWl0ICclcyciCiBtc2dzdHIgItC/0L7QstGA0LXQttC00ZHQvdC90LDRjyDQvNC10YLQutCwINGB0LvQuNGP0L3QuNGPINCyINC60L7QvNC80LjRgtC1IMKrJXPCuyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDIxCisjOiBidWlsdGluL3JlcGxhY2UuYzo0MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm9yaWdpbmFsIGNvbW1pdCAnJXMnIGNvbnRhaW5zIG1lcmdldGFnICclcycgdGhhdCBpcyBkaXNjYXJkZWQ7IHVzZSAtLWVkaXQgIgogImluc3RlYWQgb2YgLS1ncmFmdCIKIG1zZ3N0ciAi0L7RgNC40LPQuNC90LDQu9GM0L3Ri9C5INC60L7QvNC80LjRgiDCqyVzwrsg0YHQvtC00LXRgNC20LjRgiDQvNC10YLQutGDINGB0LvQuNGP0L3QuNGPIMKrJXPCuywg0LrQvtGC0L7RgNCw0Y8g0LHRi9C70LAg0L7RgtCx0YDQvtGI0LXQvdCwOyDQuNGB0L/QvtC70YzQt9GD0LnRgtC1IC0tZWRpdCDQstC80LXRgdGC0L4gLS1ncmFmdCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDYwCisjOiBidWlsdGluL3JlcGxhY2UuYzo0NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlIG9yaWdpbmFsIGNvbW1pdCAnJXMnIGhhcyBhIGdwZyBzaWduYXR1cmUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDYxCisjOiBidWlsdGluL3JlcGxhY2UuYzo0NjgKIG1zZ2lkICJ0aGUgc2lnbmF0dXJlIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgcmVwbGFjZW1lbnQgY29tbWl0ISIKIG1zZ3N0ciAi0L/QvtC00L/QuNGB0Ywg0LHRg9C00LXRgiDRg9C00LDQu9C10L3QsCDQsiDQt9Cw0LzQtdC90LXQvdC90L7QvCDQutC+0LzQvNC40YLQtSEiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSByZXBsYWNlbWVudCBjb21taXQgZm9yOiAnJXMnIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywg0LfQsNC80LXQvdGDINC00LvRjyDQutC+0LzQvNC40YLQsDogwqslc8K7IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NzkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJncmFmdCBmb3IgJyVzJyB1bm5lY2Vzc2FyeSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0ODIKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgY29tbWl0IGlzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lOiAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUxNAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjb3VsZCBub3QgY29udmVydCB0aGUgZm9sbG93aW5nIGdyYWZ0KHMpOlxuIgogIiVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzNQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ2CiBtc2dpZCAibGlzdCByZXBsYWNlIHJlZnMiCiBtc2dzdHIgItCy0YvQstC10YHRgtC4INGB0L/QuNGB0L7QuiDQt9Cw0LzQtdC90Y/QtdC80YvRhSDRgdGB0YvQu9C+0LoiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzNgorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ3CiBtc2dpZCAiZGVsZXRlIHJlcGxhY2UgcmVmcyIKIG1zZ3N0ciAi0YPQtNCw0LvQtdC90LjQtSDQt9Cw0LzQtdC90Y/QtdC80YvRhSDRgdGB0YvQu9C+0LoiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzNworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ4CiBtc2dpZCAiZWRpdCBleGlzdGluZyBvYmplY3QiCiBtc2dzdHIgItC40LfQvNC10L3QtdC90LjQtSDRgdGD0YnQtdGB0YLQstGD0Y7RidC10LPQviDQvtCx0YrQtdC60YLQsCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM4CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NDkKIG1zZ2lkICJjaGFuZ2UgYSBjb21taXQncyBwYXJlbnRzIgogbXNnc3RyICLQuNC30LzQtdC90LXQvdC40LUg0YDQvtC00LjRgtC10LvRjyDQutC+0LzQvNC40YLQsCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM5CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTAKIG1zZ2lkICJjb252ZXJ0IGV4aXN0aW5nIGdyYWZ0IGZpbGUiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQwCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTEKIG1zZ2lkICJyZXBsYWNlIHRoZSByZWYgaWYgaXQgZXhpc3RzIgogbXNnc3RyICLQt9Cw0LzQtdC90LAg0YHRgdGL0LvQutC4LCDQtdGB0LvQuCDQvtC90LAg0YHRg9GJ0LXRgdGC0LLRg9C10YIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0MgorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUzCiBtc2dpZCAiZG8gbm90IHByZXR0eS1wcmludCBjb250ZW50cyBmb3IgLS1lZGl0IgogbXNnc3RyICLQvdC1INC00LXQu9Cw0YLRjCDRgdGC0YDRg9C60YLRg9GA0LjRgNC+0LLQsNC90L3Ri9C5INCy0YvQstC+0LQg0YHQvtC00LXRgNC20LjQvNC+0LPQviDQtNC70Y8gLS1lZGl0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDMKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NAogbXNnaWQgInVzZSB0aGlzIGZvcm1hdCIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGN0YLQvtGCINGE0L7RgNC80LDRgiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU2CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NjcKIG1zZ2lkICItLWZvcm1hdCBjYW5ub3QgYmUgdXNlZCB3aGVuIG5vdCBsaXN0aW5nIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU2NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTc1CiBtc2dpZCAiLWYgb25seSBtYWtlcyBzZW5zZSB3aGVuIHdyaXRpbmcgYSByZXBsYWNlbWVudCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NjgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU3OQogbXNnaWQgIi0tcmF3IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLWVkaXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTc0CisjOiBidWlsdGluL3JlcGxhY2UuYzo1ODUKIG1zZ2lkICItZCBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTgwCisjOiBidWlsdGluL3JlcGxhY2UuYzo1OTEKIG1zZ2lkICJiYWQgbnVtYmVyIG9mIGFyZ3VtZW50cyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1ODYKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5NwogbXNnaWQgIi1lIG5lZWRzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5MgorIzogYnVpbHRpbi9yZXBsYWNlLmM6NjAzCiBtc2dpZCAiLWcgbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5OAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA5CiBtc2dpZCAiLS1jb252ZXJ0LWdyYWZ0LWZpbGUgdGFrZXMgbm8gYXJndW1lbnQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA0CisjOiBidWlsdGluL3JlcGxhY2UuYzo2MTUKIG1zZ2lkICJvbmx5IG9uZSBwYXR0ZXJuIGNhbiBiZSBnaXZlbiB3aXRoIC1sIgogbXNnc3RyICIiCiAKQEAgLTE0NDIyLDE3MyArMTcyMTEsMTg3IEBACiBtc2dpZCAiZ2l0IHJlcmVyZSBbY2xlYXIgfCBmb3JnZXQgPHBhdGg+Li4uIHwgc3RhdHVzIHwgcmVtYWluaW5nIHwgZGlmZiB8IGdjXSIKIG1zZ3N0ciAiZ2l0IHJlcmVyZSBbY2xlYXIgfCBmb3JnZXQgPNC/0YPRgtGMPuKApiB8IHN0YXR1cyB8IHJlbWFpbmluZyB8IGRpZmYgfCBnY10iCiAKLSM6IGJ1aWx0aW4vcmVyZXJlLmM6NTkKKyM6IGJ1aWx0aW4vcmVyZXJlLmM6NjAKIG1zZ2lkICJyZWdpc3RlciBjbGVhbiByZXNvbHV0aW9ucyBpbiBpbmRleCIKIG1zZ3N0ciAi0LfQsNC/0LjRgdCw0YLRjCDRh9C40YHRgtGL0LUg0YDQsNC30YDQtdGI0LXQvdC40Y8g0LrQvtC90YTQu9C40LrRgtC+0LIg0LIg0LjQvdC00LXQutGBIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MjkKKyM6IGJ1aWx0aW4vcmVyZXJlLmM6NzkKK21zZ2lkICInZ2l0IHJlcmVyZSBmb3JnZXQnIHdpdGhvdXQgcGF0aHMgaXMgZGVwcmVjYXRlZCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JlcmVyZS5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2VuZXJhdGUgZGlmZiBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzIKIG1zZ2lkICIiCiAiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPGNvbW1pdD5dIgogbXNnc3RyICJnaXQgcmVzZXQgWy0tbWl4ZWQgfCAtLXNvZnQgfCAtLWhhcmQgfCAtLW1lcmdlIHwgLS1rZWVwXSBbLXFdIFs80LrQvtC80LzQuNGCPl0iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMAorIzogYnVpbHRpbi9yZXNldC5jOjMzCiBtc2dpZCAiZ2l0IHJlc2V0IFstcV0gWzx0cmVlLWlzaD5dIFstLV0gPHBhdGhzPi4uLiIKIG1zZ3N0ciAiZ2l0IHJlc2V0IFstcV0gWzzRg9C60LDQt9Cw0YLQtdC70Ywt0LTQtdGA0LXQstCwPl0gWy0tXSA80L/Rg9GC0Lg+4oCmIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNAogbXNnaWQgImdpdCByZXNldCAtLXBhdGNoIFs8dHJlZS1pc2g+XSBbLS1dIFs8cGF0aHM+Li4uXSIKIG1zZ3N0ciAiZ2l0IHJlc2V0IC0tcGF0Y2ggWzzRg9C60LDQt9Cw0YLQtdC70Ywt0LTQtdGA0LXQstCwPl0gWy0tXSBbPNC/0YPRgtC4PuKApl0iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNworIzogYnVpbHRpbi9yZXNldC5jOjQwCiBtc2dpZCAibWl4ZWQiCiBtc2dzdHIgItGB0LzQtdGI0LDQvdC90YvQuSIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM3CisjOiBidWlsdGluL3Jlc2V0LmM6NDAKIG1zZ2lkICJzb2Z0IgogbXNnc3RyICLQvNGP0LPQutC40LkiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNworIzogYnVpbHRpbi9yZXNldC5jOjQwCiBtc2dpZCAiaGFyZCIKIG1zZ3N0ciAi0LbQtdGB0YLQutC40LkiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNworIzogYnVpbHRpbi9yZXNldC5jOjQwCiBtc2dpZCAibWVyZ2UiCiBtc2dzdHIgItGB0LvQuNGP0L3QuNC10LwiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNworIzogYnVpbHRpbi9yZXNldC5jOjQwCiBtc2dpZCAia2VlcCIKIG1zZ3N0ciAi0L7RgdGC0LDQstC70LXQvdC40LXQvCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjc4CisjOiBidWlsdGluL3Jlc2V0LmM6ODEKIG1zZ2lkICJZb3UgZG8gbm90IGhhdmUgYSB2YWxpZCBIRUFELiIKIG1zZ3N0ciAi0KMg0LLQsNGBINC90LXRgiDQstC10YDQvdC+0LPQviBIRUFELiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjgwCisjOiBidWlsdGluL3Jlc2V0LmM6ODMKIG1zZ2lkICJGYWlsZWQgdG8gZmluZCB0cmVlIG9mIEhFQUQuIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC90LDQudGC0Lgg0LTQtdGA0LXQstC+INGDIEhFQUQuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6ODYKKyM6IGJ1aWx0aW4vcmVzZXQuYzo4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzLiIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INC00LXRgNC10LLQviDRgyAlcy4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoxMTEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiSEVBRCBpcyBub3cgYXQgJXMiCi1tc2dzdHIgIkhFQUQg0YHQtdC50YfQsNGBINC90LAgJXMiCi0KLSM6IGJ1aWx0aW4vcmVzZXQuYzoxODkKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGRvIGEgJXMgcmVzZXQgaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlLiIKIG1zZ3N0ciAi0J3QtdC70YzQt9GPINCy0YvQv9C+0LvQvdC40YLRjCDRgdCx0YDQvtGBINCyINGA0LXQttC40LzQtSDCqyVzwrsg0LLQviDQstGA0LXQvNGPINGB0LvQuNGP0L3QuNGPLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI4OQorIzogYnVpbHRpbi9yZXNldC5jOjI5MyBidWlsdGluL3N0YXNoLmM6NTE0IGJ1aWx0aW4vc3Rhc2guYzo1ODkKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2MTMKIG1zZ2lkICJiZSBxdWlldCwgb25seSByZXBvcnQgZXJyb3JzIgogbXNnc3RyICLRgtC40YXQuNC5INGA0LXQttC40LwsINCy0YvQstC+0LTQuNGC0Ywg0YLQvtC70YzQutC+INC+0YjQuNCx0LrQuCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI5MQorIzogYnVpbHRpbi9yZXNldC5jOjI5NQogbXNnaWQgInJlc2V0IEhFQUQgYW5kIGluZGV4IgogbXNnc3RyICLRgdCx0YDQvtGB0LjRgtGMIEhFQUQg0Lgg0LjQvdC00LXQutGBIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MjkyCisjOiBidWlsdGluL3Jlc2V0LmM6Mjk2CiBtc2dpZCAicmVzZXQgb25seSBIRUFEIgogbXNnc3RyICLRgdCx0YDQvtGB0LjRgtGMINGC0L7Qu9GM0LrQviBIRUFEIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mjk0IGJ1aWx0aW4vcmVzZXQuYzoyOTYKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTggYnVpbHRpbi9yZXNldC5jOjMwMAogbXNnaWQgInJlc2V0IEhFQUQsIGluZGV4IGFuZCB3b3JraW5nIHRyZWUiCiBtc2dzdHIgItGB0LHRgNC+0YHQuNGC0YwgSEVBRCwg0LjQvdC00LXQutGBINC4INGA0LDQsdC+0YfQuNC5INC60LDRgtCw0LvQvtCzIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mjk4CisjOiBidWlsdGluL3Jlc2V0LmM6MzAyCiBtc2dpZCAicmVzZXQgSEVBRCBidXQga2VlcCBsb2NhbCBjaGFuZ2VzIgogbXNnc3RyICLRgdCx0YDQvtGB0LjRgtGMIEhFQUQsINC90L4g0L7RgdGC0LDQstC40YLRjCDQu9C+0LrQsNC70YzQvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzA0CisjOiBidWlsdGluL3Jlc2V0LmM6MzA4CiBtc2dpZCAicmVjb3JkIG9ubHkgdGhlIGZhY3QgdGhhdCByZW1vdmVkIHBhdGhzIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCiBtc2dzdHIgItC30LDQv9C40YHQsNGC0Ywg0YLQvtC70YzQutC+INGE0LDQutGCINGC0L7Qs9C+LCDRh9GC0L4g0YPQtNCw0LvQtdC90L3Ri9C1INC/0YPRgtC4INCx0YPQtNGD0YIg0LTQvtCx0LDQstC70LXQvdGLINC/0L7Qt9C20LUiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMjEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJldmlzaW9uLiIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDRgNCw0YHQv9C+0LfQvdCw0YLRjCDCqyVzwrsg0LrQsNC6INC00LXQudGB0YLQstC40YLQtdC70YzQvdGD0Y4g0YDQtdC00LDQutGG0LjRji4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMjkKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHRyZWUuIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINGA0LDRgdC/0L7Qt9C90LDRgtGMIMKrJXPCuyDQutCw0Log0LTQtdC50YHRgtCy0LjRgtC10LvRjNC90L7QtSDQtNC10YDQtdCy0L4uIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzM4CisjOiBidWlsdGluL3Jlc2V0LmM6MzQzCiBtc2dpZCAiLS1wYXRjaCBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLXtoYXJkLG1peGVkLHNvZnR9IgogbXNnc3RyICItLXBhdGNoINC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+INGBIC0te2hhcmQsbWl4ZWQsc29mdH0iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNDcKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNTMKIG1zZ2lkICItLW1peGVkIHdpdGggcGF0aHMgaXMgZGVwcmVjYXRlZDsgdXNlICdnaXQgcmVzZXQgLS0gPHBhdGhzPicgaW5zdGVhZC4iCiBtc2dzdHIgItC40YHQv9C+0LvRjNC30L7QstCw0L3QuNC1INC+0L/RhtC40LggLS1taXhlZCDRgSDQv9GD0YLRj9C80Lgg0YPRgdGC0LDRgNC10LvQvjsg0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCq2dpdCByZXNldCAtLSA80L/Rg9GC0Lg+wrsgaW5zdGVhZC4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNDkKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGRvICVzIHJlc2V0IHdpdGggcGF0aHMuIgogbXNnc3RyICLQndC10LvRjNC30Y8g0LLRi9C/0L7Qu9C90LjRgtGMINGB0LHRgNC+0YEg0LIg0YDQtdC20LjQvNC1IMKrJXPCuyDQstC80LXRgdGC0LUg0YEg0YPQutCw0LfQsNC90LjQtdC8INC/0YPRgtC4LiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM1OQorIzogYnVpbHRpbi9yZXNldC5jOjM3MAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyByZXNldCBpcyBub3QgYWxsb3dlZCBpbiBhIGJhcmUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0YHQsdGA0L7RgSDCqyVzwrsg0YDQsNC30YDQtdGI0LXQvSDRgtC+0LvRjNC60L4g0YEg0LPQvtC70YvQvCDRgNC10L/QvtC30LjRgtC+0YDQuNC10LwiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNjMKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNzQKIG1zZ2lkICItTiBjYW4gb25seSBiZSB1c2VkIHdpdGggLS1taXhlZCIKIG1zZ3N0ciAiLU4g0LzQvtC20L3QviDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LLQvNC10YHRgtC1INGBIC0tbWl4ZWQiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozODAKKyM6IGJ1aWx0aW4vcmVzZXQuYzozOTUKIG1zZ2lkICJVbnN0YWdlZCBjaGFuZ2VzIGFmdGVyIHJlc2V0OiIKIG1zZ3N0ciAi0J3QtdC/0YDQvtC40L3QtNC10LrRgdC40YDQvtCy0LDQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8g0L/QvtGB0LvQtSDRgdCx0YDQvtGB0LA6IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mzg2CisjOiBidWlsdGluL3Jlc2V0LmM6Mzk4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBlbnVtZXJhdGUgdW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZXNldC4gIFlvdSBjYW5cbiIKKyJ1c2UgJy0tcXVpZXQnIHRvIGF2b2lkIHRoaXMuICBTZXQgdGhlIGNvbmZpZyBzZXR0aW5nIHJlc2V0LnF1aWV0IHRvIHRydWVcbiIKKyJ0byBtYWtlIHRoaXMgdGhlIGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9yZXNldC5jOjQwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVzZXQgaW5kZXggZmlsZSB0byByZXZpc2lvbiAnJXMnLiIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDRgdCx0YDQvtGB0LjRgtGMINGE0LDQudC7INC40L3QtNC10LrRgdCwINC90LAg0YDQtdC00LDQutGG0LjRjiDCqyVzwrsuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkwCisjOiBidWlsdGluL3Jlc2V0LmM6NDEyCiBtc2dpZCAiQ291bGQgbm90IHdyaXRlIG5ldyBpbmRleCBmaWxlLiIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMINC90L7QstGL0Lkg0YTQsNC50Lsg0LjQvdC00LXQutGB0LAuIgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6Mzk5CisjOiBidWlsdGluL3Jldi1saXN0LmM6NDA1CiBtc2dpZCAiY2Fubm90IGNvbWJpbmUgLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgYW5kIC0tbWlzc2luZyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NDU3CisjOiBidWlsdGluL3Jldi1saXN0LmM6NDY2CiBtc2dpZCAib2JqZWN0IGZpbHRlcmluZyByZXF1aXJlcyAtLW9iamVjdHMiCiBtc2dzdHIgItGE0LjQu9GM0YLRgNCw0YbQuNGPINC+0LHRitC10LrRgtC+0LIg0YLRgNC10LHRg9C10YIg0YPQutCw0LfQsNC90LjRjyDQv9Cw0YDQsNC80LXRgtGA0LAgLS1vYmplY3RzIgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NDYwCisjOiBidWlsdGluL3Jldi1saXN0LmM6NDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc3BhcnNlIHZhbHVlICclcyciCiBtc2dzdHIgItC90LXQtNC+0L/Rg9GB0YLQuNC80L7QtSDRh9Cw0YHRgtC40YfQvdC+0LUg0LfQvdCw0YfQtdC90LjQtSDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1MDEKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1MTAKIG1zZ2lkICJyZXYtbGlzdCBkb2VzIG5vdCBzdXBwb3J0IGRpc3BsYXkgb2Ygbm90ZXMiCiBtc2dzdHIgInJldi1saXN0INC90LUg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGCINC+0YLQvtCx0YDQsNC20LXQvdC40LUg0LfQsNC80LXRgtC+0LoiCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1MDQKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1MTMKIG1zZ2lkICJjYW5ub3QgY29tYmluZSAtLXVzZS1iaXRtYXAtaW5kZXggd2l0aCBvYmplY3QgZmlsdGVyaW5nIgogbXNnc3RyICLQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIC0tdXNlLWJpdG1hcC1pbmRleCDQvtC00L3QvtCy0YDQtdC80LXQvdC90L4g0YEg0YTQuNC70YzRgtGA0LDRhtC40LXQuSDQvtCx0YrQtdC60YLQvtCyIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQwNgorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MDgKIG1zZ2lkICJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHRpb25zPl0gLS0gWzxhcmdzPi4uLl0iCiBtc2dzdHIgImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPNC+0L/RhtC40Lg+XSAtLSBbPNCw0YDQs9GD0LzQtdC90YLRiz7igKZdIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxMQorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTMKIG1zZ2lkICJrZWVwIHRoZSBgLS1gIHBhc3NlZCBhcyBhbiBhcmciCiBtc2dzdHIgItC/0LXRgNC10LTQsNCy0LDRgtGMINC00LDQu9C10LUgwqstLcK7INC60LDQuiDQsNGA0LPRg9C80LXQvdGCIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxMworIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTUKIG1zZ2lkICJzdG9wIHBhcnNpbmcgYWZ0ZXIgdGhlIGZpcnN0IG5vbi1vcHRpb24gYXJndW1lbnQiCiBtc2dzdHIgItC+0YHRgtCw0L3QvtCy0LjRgtGMINGA0LDQt9Cx0L7RgCDQv9C+0YHQu9C1INC/0LXRgNCy0L7Qs9C+INCw0YDQs9GD0LzQtdC90YLQsCDQvdC1INGP0LLQu9GP0Y7RidC10LPQvtGB0Y8g0L7Qv9GG0LjQtdC5IgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxNgorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTgKIG1zZ2lkICJvdXRwdXQgaW4gc3R1Y2sgbG9uZyBmb3JtIgogbXNnc3RyICLQstGL0LLQvtC00LjRgtGMINCw0YDQs9GD0LzQtdC90YLRiyDQsiDQtNC70LjQvdC90L7QvCDRhNC+0YDQvNCw0YLQtSIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo1NDkKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NTUxCiBtc2dpZCAiIgogImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPG9wdGlvbnM+XSAtLSBbPGFyZ3M+Li4uXVxuIgogIiAgIG9yOiBnaXQgcmV2LXBhcnNlIC0tc3EtcXVvdGUgWzxhcmc+Li4uXVxuIgpAQCAtMTQ2MTMsNzYgKzE3NDE2LDc3IEBACiBtc2dpZCAiZ2l0IGNoZXJyeS1waWNrIDxzdWJjb21tYW5kPiIKIG1zZ3N0ciAiZ2l0IGNoZXJyeS1waWNrIDzQv9C+0LTQutC+0LzQsNC90LTQsD4iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6OTEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBhIG51bWJlciBncmVhdGVyIHRoYW4gemVybyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3JldmVydC5jOjkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAlcyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgogbXNnc3RyICIlczogJXMg0L3QtdC70YzQt9GPINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQvtC00L3QvtCy0YDQtdC80LXQvdC90L4g0YEgJXMiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAwCisjOiBidWlsdGluL3JldmVydC5jOjEwMgogbXNnaWQgImVuZCByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCiBtc2dzdHIgItC60L7QvdC10YYg0L/QvtGB0LvQtdC00L7QstCw0YLQtdC70YzQvdC+0YHRgtC4INC60L7Qv9C40YDQvtCy0LDQvdC40Y8g0LjQu9C4INC+0LHRgNCw0YnQtdC90LjRjyDQuNC30LzQtdC90LXQvdC40Lkg0LrQvtC80LzQuNGC0L7QsiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCiBtc2dpZCAicmVzdW1lIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAi0L/RgNC+0LTQvtC70LbQuNGC0Ywg0L/QvtGB0LvQtdC00L7QstCw0YLQtdC70YzQvdC+0YHRgtGMINC60L7Qv9C40YDQvtCy0LDQvdC40Y8g0LjQu9C4INC+0LHRgNCw0YnQtdC90LjRjyDQuNC30LzQtdC90LXQvdC40Lkg0LrQvtC80LzQuNGC0L7QsiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDIKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA0CiBtc2dpZCAiY2FuY2VsIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAi0L7RgtC80LXQvdCwINC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLQuCDQutC+0L/QuNGA0L7QstCw0L3QuNGPINC40LvQuCDQvtCx0YDQsNGJ0LXQvdC40Y8g0LjQt9C80LXQvdC10L3QuNC5INC60L7QvNC80LjRgtC+0LIiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCisjOiBidWlsdGluL3JldmVydC5jOjEwNgogbXNnaWQgImRvbid0IGF1dG9tYXRpY2FsbHkgY29tbWl0IgogbXNnc3RyICLQvdC1INC60L7QvNC80LjRgtC40YLRjCDQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQuCIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDQKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA3CiBtc2dpZCAiZWRpdCB0aGUgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgItC40LfQvNC10L3QuNGC0Ywg0YHQvtC+0LHRidC10L3QuNC1INC60L7QvNC80LjRgtCwIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwNworIzogYnVpbHRpbi9yZXZlcnQuYzoxMTAKIG1zZ2lkICJwYXJlbnQtbnVtYmVyIgogbXNnc3RyICLQvdC+0LzQtdGALdGA0L7QtNC40YLQtdC70Y8iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA4CisjOiBidWlsdGluL3JldmVydC5jOjExMQogbXNnaWQgInNlbGVjdCBtYWlubGluZSBwYXJlbnQiCiBtc2dzdHIgItCy0YvQsdC+0YAg0L7RgdC90L7QstC90L7Qs9C+INGA0L7QtNC40YLQtdC70Y8iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCisjOiBidWlsdGluL3JldmVydC5jOjExMwogbXNnaWQgIm1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICLRgdGC0YDQsNGC0LXQs9C40Y8g0YHQu9C40Y/QvdC40Y8iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTExCi1tc2dpZCAib3B0aW9uIgotbXNnc3RyICLQvtC/0YbQuNGPIgotCi0jOiBidWlsdGluL3JldmVydC5jOjExMgorIzogYnVpbHRpbi9yZXZlcnQuYzoxMTUKIG1zZ2lkICJvcHRpb24gZm9yIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICLQvtC/0YbQuNGPINC00LvRjyDRgdGC0YDQsNGC0LXQs9C40Lgg0YHQu9C40Y/QvdC40Y8iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTIxCisjOiBidWlsdGluL3JldmVydC5jOjEyNAogbXNnaWQgImFwcGVuZCBjb21taXQgbmFtZSIKIG1zZ3N0ciAi0LTQvtCx0LDQstC40YLRjCDQuNC80Y8g0LrQvtC80LzQuNGC0LAiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTIzCisjOiBidWlsdGluL3JldmVydC5jOjEyNgogbXNnaWQgInByZXNlcnZlIGluaXRpYWxseSBlbXB0eSBjb21taXRzIgogbXNnc3RyICLRgdC+0YXRgNCw0L3QuNGC0Ywg0LjQt9C90LDRh9Cw0LvRjNC90L4g0L/Rg9GB0YLRi9C1INC60L7QvNC80LjRgtGLIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEyNQorIzogYnVpbHRpbi9yZXZlcnQuYzoxMjgKIG1zZ2lkICJrZWVwIHJlZHVuZGFudCwgZW1wdHkgY29tbWl0cyIKIG1zZ3N0ciAi0L7RgdGC0LDQstC40YLRjCDQuNC30LHRi9GC0L7Rh9C90YvQtSwg0L/Rg9GB0YLRi9C1INC60L7QvNC80LjRgtGLIgogCi0jOiBidWlsdGluL3JldmVydC5jOjIxOQorIzogYnVpbHRpbi9yZXZlcnQuYzoyMjcKIG1zZ2lkICJyZXZlcnQgZmFpbGVkIgogbXNnc3RyICLRgdCx0L7QuSDQvtCx0YDQsNGJ0LXQvdC40Y8g0LjQt9C80LXQvdC10L3QuNC5INC60L7QvNC80LjRgtCwIgogCi0jOiBidWlsdGluL3JldmVydC5jOjIzMgorIzogYnVpbHRpbi9yZXZlcnQuYzoyNDAKIG1zZ2lkICJjaGVycnktcGljayBmYWlsZWQiCiBtc2dzdHIgItGB0LHQvtC5INC/0YDQuCDQutC+0L/QuNGA0L7QstCw0L3QuNC4INC60L7QvNC80LjRgtCwIgogCi0jOiBidWlsdGluL3JtLmM6MTgKKyM6IGJ1aWx0aW4vcm0uYzoxOQogbXNnaWQgImdpdCBybSBbPG9wdGlvbnM+XSBbLS1dIDxmaWxlPi4uLiIKIG1zZ3N0ciAiZ2l0IHJtIFs80L7Qv9GG0LjQuD5dIFstLV0gPNGE0LDQudC7PuKApiIKIAotIzogYnVpbHRpbi9ybS5jOjIwNgorIzogYnVpbHRpbi9ybS5jOjIwNwogbXNnaWQgIiIKICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIHN0YWdlZCBjb250ZW50IGRpZmZlcmVudCBmcm9tIGJvdGggdGhlXG4iCiAiZmlsZSBhbmQgdGhlIEhFQUQ6IgpAQCAtMTQ2OTQsMTMgKzE3NDk4LDEzIEBACiBtc2dzdHJbMl0gItGB0LvQtdC00YPRjtGJ0LjQtSDRhNCw0LnQu9GLINGB0L7QtNC10YDQttCw0YIg0L/RgNC+0LjQvdC00LXQutGB0LjRgNC+0LLQsNC90L3Ri9C1INC40LfQvNC10L3QtdC90LjRjyDQvtGC0LvQuNGH0LDRjtGJ0LjQtdGB0Y8g0Lgg0L7RgiDRhNCw0LnQu9CwLCDQuCDQvtGCIEhFQUQ6IgogbXNnc3RyWzNdICLRgdC70LXQtNGD0Y7RidC40LUg0YTQsNC50LvRiyDRgdC+0LTQtdGA0LbQsNGCINC/0YDQvtC40L3QtNC10LrRgdC40YDQvtCy0LDQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8g0L7RgtC70LjRh9Cw0Y7RidC40LXRgdGPINC4INC+0YIg0YTQsNC50LvQsCwg0Lgg0L7RgiBIRUFEOiIKIAotIzogYnVpbHRpbi9ybS5jOjIxMQorIzogYnVpbHRpbi9ybS5jOjIxMgogbXNnaWQgIiIKICJcbiIKICIodXNlIC1mIHRvIGZvcmNlIHJlbW92YWwpIgogbXNnc3RyICJcbijQuNGB0L/QvtC70YzQt9GD0LnRgtC1INC+0L/RhtC40Y4gwqstZsK7INC00LvRjyDQv9GA0LjQvdGD0LTQuNGC0LXQu9GM0L3QvtCz0L4g0YPQtNCw0LvQtdC90LjRjykiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMTUKKyM6IGJ1aWx0aW4vcm0uYzoyMTYKIG1zZ2lkICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIGNoYW5nZXMgc3RhZ2VkIGluIHRoZSBpbmRleDoiCiBtc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBjaGFuZ2VzIHN0YWdlZCBpbiB0aGUgaW5kZXg6IgogbXNnc3RyWzBdICLRgdC70LXQtNGD0Y7RidC40LUg0YTQsNC50LvRiyDRgdC+0LTQtdGA0LbQsNGCINC/0YDQvtC40L3QtNC10LrRgdC40YDQvtCy0LDQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8g0LIg0LjQvdC00LXQutGB0LU6IgpAQCAtMTQ3MDgsMTMgKzE3NTEyLDEzIEBACiBtc2dzdHJbMl0gItGB0LvQtdC00YPRjtGJ0LjQtSDRhNCw0LnQu9GLINGB0L7QtNC10YDQttCw0YIg0L/RgNC+0LjQvdC00LXQutGB0LjRgNC+0LLQsNC90L3Ri9C1INC40LfQvNC10L3QtdC90LjRjyDQsiDQuNC90LTQtdC60YHQtToiCiBtc2dzdHJbM10gItGB0LvQtdC00YPRjtGJ0LjQtSDRhNCw0LnQu9GLINGB0L7QtNC10YDQttCw0YIg0L/RgNC+0LjQvdC00LXQutGB0LjRgNC+0LLQsNC90L3Ri9C1INC40LfQvNC10L3QtdC90LjRjyDQsiDQuNC90LTQtdC60YHQtToiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMTkgYnVpbHRpbi9ybS5jOjIyOAorIzogYnVpbHRpbi9ybS5jOjIyMCBidWlsdGluL3JtLmM6MjI5CiBtc2dpZCAiIgogIlxuIgogIih1c2UgLS1jYWNoZWQgdG8ga2VlcCB0aGUgZmlsZSwgb3IgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCiBtc2dzdHIgIlxuKNC40YHQv9C+0LvRjNC30YPQudGC0LUg0L7Qv9GG0LjRjiDCqy0tY2FjaGVkwrsg0LTQu9GPINC+0YHRgtCw0LLQu9C10L3QuNGPINGE0LDQudC70LAsINC40LvQuCDCqy1mwrsg0LTQu9GPINC/0YDQuNC90YPQtNC40YLQtdC70YzQvdC+0LPQviDRg9C00LDQu9C10L3QuNGPKSIKIAotIzogYnVpbHRpbi9ybS5jOjIyNQorIzogYnVpbHRpbi9ybS5jOjIyNgogbXNnaWQgInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgbG9jYWwgbW9kaWZpY2F0aW9uczoiCiBtc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBsb2NhbCBtb2RpZmljYXRpb25zOiIKIG1zZ3N0clswXSAi0YHQu9C10LTRg9GO0YnQuNC1INGE0LDQudC70Ysg0YHQvtC00LXRgNC20LDRgiDQu9C+0LrQsNC70YzQvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPOiIKQEAgLTE0NzIyLDQ1ICsxNzUyNiw0MCBAQAogbXNnc3RyWzJdICLRgdC70LXQtNGD0Y7RidC40LUg0YTQsNC50LvRiyDRgdC+0LTQtdGA0LbQsNGCINC70L7QutCw0LvRjNC90YvQtSDQuNC30LzQtdC90LXQvdC40Y86IgogbXNnc3RyWzNdICLRgdC70LXQtNGD0Y7RidC40LUg0YTQsNC50LvRiyDRgdC+0LTQtdGA0LbQsNGCINC70L7QutCw0LvRjNC90YvQtSDQuNC30LzQtdC90LXQvdC40Y86IgogCi0jOiBidWlsdGluL3JtLmM6MjQxCisjOiBidWlsdGluL3JtLmM6MjQyCiBtc2dpZCAiZG8gbm90IGxpc3QgcmVtb3ZlZCBmaWxlcyIKIG1zZ3N0ciAi0L3QtSDQstGL0LLQvtC00LjRgtGMINGB0L/QuNGB0L7QuiDRg9C00LDQu9C10L3QvdGL0YUg0YTQsNC50LvQvtCyIgogCi0jOiBidWlsdGluL3JtLmM6MjQyCisjOiBidWlsdGluL3JtLmM6MjQzCiBtc2dpZCAib25seSByZW1vdmUgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgItGD0LTQsNC70LjRgtGMINGC0L7Qu9GM0LrQviDQuNC3INC40L3QtNC10LrRgdCwIgogCi0jOiBidWlsdGluL3JtLmM6MjQzCisjOiBidWlsdGluL3JtLmM6MjQ0CiBtc2dpZCAib3ZlcnJpZGUgdGhlIHVwLXRvLWRhdGUgY2hlY2siCiBtc2dzdHIgItC/0YDQvtC/0YPRgdGC0LjRgtGMINC/0YDQvtCy0LXRgNC60YMg0LDQutGC0YPQsNC70YzQvdC+0YHRgtC4IgogCi0jOiBidWlsdGluL3JtLmM6MjQ0CisjOiBidWlsdGluL3JtLmM6MjQ1CiBtc2dpZCAiYWxsb3cgcmVjdXJzaXZlIHJlbW92YWwiCiBtc2dzdHIgItGA0LDQt9GA0LXRiNC40YLRjCDRgNC10LrRg9GA0YHQuNCy0L3QvtC1INGD0LTQsNC70LXQvdC40LUiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDYKKyM6IGJ1aWx0aW4vcm0uYzoyNDcKIG1zZ2lkICJleGl0IHdpdGggYSB6ZXJvIHN0YXR1cyBldmVuIGlmIG5vdGhpbmcgbWF0Y2hlZCIKIG1zZ3N0ciAi0LLRi9GF0L7QtCDRgSDQvdGD0LvQtdCy0YvQvCDQutC+0LTQvtC8INCy0L7Qt9Cy0YDQsNGC0LAsINC00LDQttC1INC10YHQu9C4INC90LjRh9C10LPQviDQvdC1INC90LDQudC00LXQvdC+IgogCi0jOiBidWlsdGluL3JtLmM6Mjg4CisjOiBidWlsdGluL3JtLmM6Mjg5CiBtc2dpZCAicGxlYXNlIHN0YWdlIHlvdXIgY2hhbmdlcyB0byAuZ2l0bW9kdWxlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9ybS5jOjMwNgorIzogYnVpbHRpbi9ybS5jOjMwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgcmVtb3ZpbmcgJyVzJyByZWN1cnNpdmVseSB3aXRob3V0IC1yIgogbXNnc3RyICLQvdC1INGD0LTQsNC70Y/RjiDRgNC10LrRg9GA0YHQuNCy0L3QviDCqyVzwrsg0LHQtdC3INGD0LrQsNC30LDQvdC40Y8g0L7Qv9GG0LjQuCAtciIKIAotIzogYnVpbHRpbi9ybS5jOjM0NQorIzogYnVpbHRpbi9ybS5jOjM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgcm06IHVuYWJsZSB0byByZW1vdmUgJXMiCiBtc2dzdHIgImdpdCBybTog0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCAlcyIKIAotIzogYnVpbHRpbi9ybS5jOjM2OAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgcmVtb3ZlICclcyciCi1tc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0Ywgwqslc8K7IgotCiAjOiBidWlsdGluL3NlbmQtcGFjay5jOjIwCiBtc2dpZCAiIgogImdpdCBzZW5kLXBhY2sgWy0tYWxsIHwgLS1taXJyb3JdIFstLWRyeS1ydW5dIFstLWZvcmNlXSBbLS1yZWNlaXZlLXBhY2s9PGdpdC1yZWNlaXZlLXBhY2s+XSBbLS12ZXJib3NlXSBbLS10aGluXSBbLS1hdG9taWNdIFs8aG9zdD46XTxkaXJlY3Rvcnk+IFs8cmVmPi4uLl1cbiIKQEAgLTE0NzgzLDE4ICsxNzU4Miw2IEBACiBtc2dpZCAicHJpbnQgc3RhdHVzIGZyb20gcmVtb3RlIGhlbHBlciIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0YHRgtCw0YLRg9GBINC+0YIg0YHQutGA0LjQv9GC0LAg0LLQvdC10YjQvdC10LPQviDRgdC10YDQstC10YDQsCIKIAotIzogYnVpbHRpbi9zZXJ2ZS5jOjcKLW1zZ2lkICJnaXQgc2VydmUgWzxvcHRpb25zPl0iCi1tc2dzdHIgImdpdCBzZXJ2ZSBbPNC+0L/RhtC40Lg+XSIKLQotIzogYnVpbHRpbi9zZXJ2ZS5jOjE3IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyMwotbXNnaWQgInF1aXQgYWZ0ZXIgYSBzaW5nbGUgcmVxdWVzdC9yZXNwb25zZSBleGNoYW5nZSIKLW1zZ3N0ciAi0LLRi9GF0L7QtCDQv9C+0YHQu9C1INC+0LHQvNC10L3QsCDQvtC00L3QuNC8INC30LDQv9GA0L7RgdC+0Lwv0L7RgtCy0LXRgtC+0LwiCi0KLSM6IGJ1aWx0aW4vc2VydmUuYzoxOQotbXNnaWQgImV4aXQgaW1tZWRpYXRlbHkgYWZ0ZXIgYWR2ZXJ0aXNpbmcgY2FwYWJpbGl0aWVzIgotbXNnc3RyICIiCi0KICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxNAogbXNnaWQgImdpdCBzaG9ydGxvZyBbPG9wdGlvbnM+XSBbPHJldmlzaW9uLXJhbmdlPl0gW1stLV0gPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IHNob3J0bG9nIFs80L7Qv9GG0LjQuD5dIFs80LTQuNCw0L/QsNC30L7QvS3RgNC10LTQsNC60YbQuNC5Pl0gW1stLV0gPNC/0YPRgtGMPuKApl0iCkBAIC0xNDgyNyw3ICsxNzYxNCw3IEBACiBtc2dpZCAiTGluZXdyYXAgb3V0cHV0IgogbXNnc3RyICLQn9C10YDQtdC90L7RgSDRgdGC0YDQvtC6INC90LAg0LLRi9Cy0L7QtNC1IgogCi0jOiBidWlsdGluL3Nob3J0bG9nLmM6Mjk5CisjOiBidWlsdGluL3Nob3J0bG9nLmM6MzAxCiBtc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIGdpdmVuIG91dHNpZGUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogCkBAIC0xNDg1Nyw4NSArMTc2NDQsODUgQEAKIG1zZ2lkICJubyBtYXRjaGluZyByZWZzIHdpdGggJXMiCiBtc2dzdHIgItC90LXRgiDRgdC+0LLQv9Cw0LTQsNGO0YnQuNGFINC30LDQv9C40YHQtdC5INGBICVzIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ1CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ2CiBtc2dpZCAic2hvdyByZW1vdGUtdHJhY2tpbmcgYW5kIGxvY2FsIGJyYW5jaGVzIgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMINGB0L/QuNGB0L7QuiDQuCDQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvRhSDQstC90LXRiNC90LjRhSDQuCDQu9C+0LrQsNC70YzQvdGL0YUg0LLQtdGC0L7QuiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0OAogbXNnaWQgInNob3cgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMINGB0L/QuNGB0L7QuiDQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvRhSDQstC90LXRiNC90LjRhSDQstC10YLQvtC6IgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ5CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUwCiBtc2dpZCAiY29sb3IgJyohKy0nIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGJyYW5jaCIKIG1zZ3N0ciAi0L7QutGA0LDRiNC40LLQsNGC0YwgwqsqISstwrsg0LIg0YHQvtC+0YLQstC10YLRgdGC0LLQuNC4INGBINCy0LXRgtC60L7QuSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MgogbXNnaWQgInNob3cgPG4+IG1vcmUgY29tbWl0cyBhZnRlciB0aGUgY29tbW9uIGFuY2VzdG9yIgogbXNnc3RyICLQv9C+0LrQsNC30LDRgtGMIDxuPiDQutC+0LzQvNC40YLQvtCyINC/0L7RgdC70LUg0L7QsdGJ0LXQs9C+INC/0YDQtdC00LrQsCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NAogbXNnaWQgInN5bm9ueW0gdG8gbW9yZT0tMSIKIG1zZ3N0ciAi0YHQuNC90L7QvdC40Lwg0LTQu9GPIG1vcmU9LTEiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTUKIG1zZ2lkICJzdXBwcmVzcyBuYW1pbmcgc3RyaW5ncyIKIG1zZ3N0ciAi0L3QtSDQstGL0LLQvtC00LjRgtGMINC40LzQtdC90L7QstCw0L3QvdGL0LUg0YHRgtGA0L7QutC4IgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU2CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU3CiBtc2dpZCAiaW5jbHVkZSB0aGUgY3VycmVudCBicmFuY2giCiBtc2dzdHIgItCy0LrQu9GO0YfQuNGC0Ywg0LIg0LLRi9Cy0L7QtCDRgtC10LrRg9GJ0YPRjiDQstC10YLQutGDIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU4CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU5CiBtc2dpZCAibmFtZSBjb21taXRzIHdpdGggdGhlaXIgb2JqZWN0IG5hbWVzIgogbXNnc3RyICLQuNC80LXQvdC+0LLQsNGC0Ywg0LrQvtC80LzQuNGC0Ysg0LjRhSDQuNC80LXQvdCw0LzQuCDQvtCx0YrQtdC60YLQvtCyIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYwCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYxCiBtc2dpZCAic2hvdyBwb3NzaWJsZSBtZXJnZSBiYXNlcyIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0LLQvtC30LzQvtC20L3Ri9C1INCx0LDQt9GLINGB0LvQuNGP0L3QuNGPIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYyCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYzCiBtc2dpZCAic2hvdyByZWZzIHVucmVhY2hhYmxlIGZyb20gYW55IG90aGVyIHJlZiIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0YHRgdGL0LvQutC4LCDQvdC10LTQvtGB0YLRg9C/0L3Ri9C1INC40Lcg0LvRjtCx0YvRhSDQtNGA0YPQs9C40YUg0YHRgdGL0LvQvtC6IgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY0CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY1CiBtc2dpZCAic2hvdyBjb21taXRzIGluIHRvcG9sb2dpY2FsIG9yZGVyIgogbXNnc3RyICLQstGL0LLQtdGB0YLQuCDQutC+0LzQvNC40YLRiyDQsiDRgtC+0L/QvtC70L7Qs9C40YfQtdGB0LrQvtC8INC/0L7RgNGP0LTQutC1IgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY3CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY4CiBtc2dpZCAic2hvdyBvbmx5IGNvbW1pdHMgbm90IG9uIHRoZSBmaXJzdCBicmFuY2giCiBtc2dzdHIgItCy0YvQstC10YHRgtC4INGC0L7Qu9GM0LrQviDQutC+0LzQvNC40YLRiywg0L7RgtGB0YPRgtGB0YLQstGD0Y7RidC40LUg0LIg0L/QtdGA0LLQvtC5INCy0LXRgtC60LUiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjkKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzAKIG1zZ2lkICJzaG93IG1lcmdlcyByZWFjaGFibGUgZnJvbSBvbmx5IG9uZSB0aXAiCiBtc2dzdHIgItCy0YvQstC10YHRgtC4INGB0LvQuNGP0L3QuNGPLCDQtNC+0YHRgtC40LbQuNC80YvQtSDRgtC+0LvRjNC60L4g0LjQtyDQvtC00L3QvtC5INC40Lcg0LLQtdGA0YXRg9GI0LXQuiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MgogbXNnaWQgInRvcG9sb2dpY2FsbHkgc29ydCwgbWFpbnRhaW5pbmcgZGF0ZSBvcmRlciB3aGVyZSBwb3NzaWJsZSIKIG1zZ3N0ciAi0YLQvtC/0L7Qu9C+0LPQuNGH0LXRgdC60LDRjyDRgdC+0YDRgtC40YDQvtCy0LrQsCwg0YEg0YHQvtGF0YDQsNC90LXQvdC40LXQvCDQv9C+0YDRj9C00LrQsCDQtNCw0YIsINC10YHQu9C4INCy0L7Qt9C80L7QttC90L4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzQKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzUKIG1zZ2lkICI8bj5bLDxiYXNlPl0iCiBtc2dzdHIgIjxuPlssPNCx0LDQt9CwPl0iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzYKIG1zZ2lkICJzaG93IDxuPiBtb3N0IHJlY2VudCByZWYtbG9nIGVudHJpZXMgc3RhcnRpbmcgYXQgYmFzZSIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCA8bj4g0L/QvtGB0LvQtdC00L3QuNGFINC30LDQv9C40YHQtdC5INCyINC20YPRgNC90LDQu9C1INGB0YHRi9C70L7Quiwg0L3QsNGH0LjQvdCw0Y8g0YEg0LHQsNC30YsiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MTEKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MTIKIG1zZ2lkICIiCiAiLS1yZWZsb2cgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tcmVtb3RlcywgLS1pbmRlcGVuZGVudCBvciAtLW1lcmdlLSIKICJiYXNlIgogbXNnc3RyICItLXJlZmxvZyDQvdC10YHQvtCy0LzQtdGB0YLQuNC80L4g0YEgLS1hbGwsIC0tcmVtb3RlcywgLS1pbmRlcGVuZGVudCDQuCAtLW1lcmdlLWJhc2UiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzYKIG1zZ2lkICJubyBicmFuY2hlcyBnaXZlbiwgYW5kIEhFQUQgaXMgbm90IHZhbGlkIgogbXNnc3RyICLQvdC1INGD0LrQsNC30LDQvdGLINCy0LXRgtC60Lgg0LggSEVBRCDQvdC1INC00LXQudGB0YLQstC40YLQtdC70YzQvdGL0LkiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzgKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzkKIG1zZ2lkICItLXJlZmxvZyBvcHRpb24gbmVlZHMgb25lIGJyYW5jaCBuYW1lIgogbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAIC0tcmVmbG9nINGC0YDQtdCx0YPQtdGCINGD0LrQsNC30LDQvdC40Y8g0LjQvNC10L3QuCDQvtC00L3QvtC5INCy0LXRgtC60LgiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDEKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDIKICMsIGMtZm9ybWF0CiBtc2dpZCAib25seSAlZCBlbnRyeSBjYW4gYmUgc2hvd24gYXQgb25lIHRpbWUuIgogbXNnaWRfcGx1cmFsICJvbmx5ICVkIGVudHJpZXMgY2FuIGJlIHNob3duIGF0IG9uZSB0aW1lLiIKQEAgLTE0OTQ0LDEyICsxNzczMSwxMiBAQAogbXNnc3RyWzJdICLRgtC+0LvRjNC60L4gJWQg0LfQsNC/0LjRgdC10Lkg0LzQvtCz0YPRgiDQsdGL0YLRjCDQv9C+0LrQsNC30LDQvdGLINC+0LTQvdC+0LLRgNC10LzQtdC90L3Qvi4iCiBtc2dzdHJbM10gItGC0L7Qu9GM0LrQviAlZCDQt9Cw0L/QuNGB0Lgg0LzQvtCz0YPRgiDQsdGL0YLRjCDQv9C+0LrQsNC30LDQvdGLINC+0LTQvdC+0LLRgNC10LzQtdC90L3Qvi4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCByZWYgJXMiCiBtc2dzdHIgItC90LXRgiDRgtCw0LrQvtC5INGB0YHRi9C70LrQuCAlcyIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgyOQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCByZXYuIgogbXNnaWRfcGx1cmFsICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCByZXZzLiIKQEAgLTE0OTU4LDU4ICsxNzc0NSwyNzkgQEAKIG1zZ3N0clsyXSAi0L3QtdCy0L7Qt9C80L7QttC90L4g0L7QsdGA0LDQsdC+0YLQsNGC0Ywg0LHQvtC70YzRiNC1ICVkINGA0LXQtNCw0LrRhtC40LkuIgogbXNnc3RyWzNdICLQvdC10LLQvtC30LzQvtC20L3QviDQvtCx0YDQsNCx0L7RgtCw0YLRjCDQsdC+0LvRjNGI0LUgJWQg0YDQtdC00LDQutGG0LjQuC4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzMKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZWYuIgogbXNnc3RyICLCqyVzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC00L7Qv9GD0YHRgtC40LzQvtC5INGB0YHRi9C70LrQvtC5INC90LAg0LrQvtC80LzQuNGCLiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzNgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmluZCBjb21taXQgJXMgKCVzKSIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INC60L7QvNC80LjRgiAlcyAoJXMpIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTEKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxMgogbXNnaWQgIiIKICJnaXQgc2hvdy1yZWYgWy1xIHwgLS1xdWlldF0gWy0tdmVyaWZ5XSBbLS1oZWFkXSBbLWQgfCAtLWRlcmVmZXJlbmNlXSBbLXMgfCAiCiAiLS1oYXNoWz08bj5dXSBbLS1hYmJyZXZbPTxuPl1dIFstLXRhZ3NdIFstLWhlYWRzXSBbLS1dIFs8cGF0dGVybj4uLi5dIgogbXNnc3RyICJnaXQgc2hvdy1yZWYgWy1xIHwgLS1xdWlldF0gWy0tdmVyaWZ5XSBbLS1oZWFkXSBbLWQgfCAtLWRlcmVmZXJlbmNlXSBbLXMgfCAtLWhhc2hbPTxuPl1dIFstLWFiYnJldls9PG4+XV0gWy0tdGFnc10gWy0taGVhZHNdIFstLV0gWzzRiNCw0LHQu9C+0L0+4oCmXSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjEyCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTMKIG1zZ2lkICJnaXQgc2hvdy1yZWYgLS1leGNsdWRlLWV4aXN0aW5nWz08cGF0dGVybj5dIgogbXNnc3RyICJnaXQgc2hvdy1yZWYgLS1leGNsdWRlLWV4aXN0aW5nWz080YjQsNCx0LvQvtC9Pl0iCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjAKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjIKIG1zZ2lkICJvbmx5IHNob3cgdGFncyAoY2FuIGJlIGNvbWJpbmVkIHdpdGggaGVhZHMpIgogbXNnc3RyICLQstGL0LLQtdGB0YLQuCDRgtC+0LvRjNC60L4g0LzQtdGC0LrQuCAo0LzQvtC20L3QviDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+INGBIC0taGVhZHMpIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTYxCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYzCiBtc2dpZCAib25seSBzaG93IGhlYWRzIChjYW4gYmUgY29tYmluZWQgd2l0aCB0YWdzKSIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0YLQvtC70YzQutC+INCz0L7Qu9C+0LLRiyAo0LzQvtC20L3QviDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+INGBIC0tdGFncykiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjIKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjQKIG1zZ2lkICJzdHJpY3RlciByZWZlcmVuY2UgY2hlY2tpbmcsIHJlcXVpcmVzIGV4YWN0IHJlZiBwYXRoIgogbXNnc3RyICLQsdC+0LvQtdC1INGB0YLRgNC+0LPQsNGPINC/0YDQvtCy0LXRgNC60LAg0YHRgdGL0LvQvtC6LCDRgtGA0LXQsdGD0LXRgiDRgtC+0YfQvdGL0Lkg0L/Rg9GC0Ywg0YHRgdGL0LvQutC4IgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTY1IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjcKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjcgYnVpbHRpbi9zaG93LXJlZi5jOjE2OQogbXNnaWQgInNob3cgdGhlIEhFQUQgcmVmZXJlbmNlLCBldmVuIGlmIGl0IHdvdWxkIGJlIGZpbHRlcmVkIG91dCIKIG1zZ3N0ciAi0LLRi9Cy0LXRgdGC0Lgg0YHRgdGL0LvQutGDIEhFQUQsINC00LDQttC1INC10YHQu9C4INC+0L3QsCDQsdGD0LTQtdGCINC+0YLRhNC40LvRjNGC0YDQvtCy0LDQvdCwIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTY5CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTcxCiBtc2dpZCAiZGVyZWZlcmVuY2UgdGFncyBpbnRvIG9iamVjdCBJRHMiCiBtc2dzdHIgItGA0LDQt9GL0LzQtdC90L7QstCw0YLRjCDQvNC10YLQutC4INCyINC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0Ysg0L7QsdGK0LXQutGC0L7QsiIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MQorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MwogbXNnaWQgIm9ubHkgc2hvdyBTSEExIGhhc2ggdXNpbmcgPG4+IGRpZ2l0cyIKLW1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIDxuPiDRhtC40YTRgCDQtNC70Y8g0LLRi9Cy0L7QtNCwIFNIQS0xIgorbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0YwgPG4+INGB0LjQvNCy0L7Qu9C+0LIg0LTQu9GPINCy0YvQstC+0LTQsCBTSEEtMSDRhdC10Ygt0YHRg9C80LzRiyIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3NQorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3NwogbXNnaWQgImRvIG5vdCBwcmludCByZXN1bHRzIHRvIHN0ZG91dCAodXNlZnVsIHdpdGggLS12ZXJpZnkpIgogbXNnc3RyICLQvdC1INC/0LXRh9Cw0YLQsNGC0Ywg0YDQtdC30YPQu9GM0YLQsNGCINC90LAg0YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQstGL0LLQvtC0ICjQv9C+0LvQtdC30L3QviDRgSDQvtC/0YbQuNC10LkgwqstLXZlcmlmecK7KSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3NworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OQogbXNnaWQgInNob3cgcmVmcyBmcm9tIHN0ZGluIHRoYXQgYXJlbid0IGluIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgItCy0YvQstC10YHRgtC4INGB0YHRi9C70LrQuCDRgdC+INGB0YLQsNC90LTQsNGA0YLQvdC+0LPQviDQstCy0L7QtNCwLCDQutC+0YLQvtGA0YvRhSDQvdC10YIg0LIg0LvQvtC60LDQu9GM0L3QvtC8INGA0LXQv9C+0LfQuNGC0L7RgNC40LgiCiAKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMiBidWlsdGluL3N0YXNoLmM6MzcKK21zZ2lkICJnaXQgc3Rhc2ggbGlzdCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGxpc3QgWzzQvtC/0YbQuNC4Pl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMyBidWlsdGluL3N0YXNoLmM6NDIKK21zZ2lkICJnaXQgc3Rhc2ggc2hvdyBbPG9wdGlvbnM+XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBzaG93IFs80L7Qv9GG0LjQuNC4Pl0gWzzRgdC/0YDRj9GC0LDQvdC90YvQtS3QuNC30LzQtdC90LXQvdC40Y8+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI0IGJ1aWx0aW4vc3Rhc2guYzo0NworbXNnaWQgImdpdCBzdGFzaCBkcm9wIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBkcm9wIFstcXwtLXF1aWV0XSBbPNGB0L/RgNGP0YLQsNC90L3Ri9C1LdC40LfQvNC10L3QtdC90LjRjz5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjUKK21zZ2lkICJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzzRgdC/0YDRj9GC0LDQvdC90YvQtS3QuNC30LzQtdC90LXQvdC40Y8+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI2IGJ1aWx0aW4vc3Rhc2guYzo2MgorbXNnaWQgImdpdCBzdGFzaCBicmFuY2ggPGJyYW5jaG5hbWU+IFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGJyYW5jaCA80LjQvNGPLdCy0LXRgtC60Lg+IFs80YHQv9GA0Y/RgtCw0L3QvdGL0LUt0LjQt9C80LXQvdC10L3QuNGPPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNyBidWlsdGluL3N0YXNoLmM6NjcKK21zZ2lkICJnaXQgc3Rhc2ggY2xlYXIiCittc2dzdHIgImdpdCBzdGFzaCBjbGVhciIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI4IGJ1aWx0aW4vc3Rhc2guYzo3NworbXNnaWQgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XVxuIgorIiAgICAgICAgICBbLS1dIFs8cGF0aHNwZWM+Li4uXV0iCittc2dzdHIgImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDzRgdC+0L7QsdGJ0LXQvdC40LU+XVxuICAgICAgICAgIFstLV0gWzzRgdC/0LXRhtC40YTQuNC60LDRgtC+0YAt0L/Rg9GC0Lg+4oCmXV0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzozMSBidWlsdGluL3N0YXNoLmM6ODQKK21zZ2lkICIiCisiZ2l0IHN0YXNoIHNhdmUgWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8bWVzc2FnZT5dIgorbXNnc3RyICJnaXQgc3Rhc2ggc2F2ZSBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbPNGB0L7QvtCx0YnQtdC90LjQtT5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTIKK21zZ2lkICJnaXQgc3Rhc2ggcG9wIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggcG9wIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzzRgdC/0YDRj9GC0LDQvdC90YvQtS3QuNC30LzQtdC90LXQvdC40Y8+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU3Cittc2dpZCAiZ2l0IHN0YXNoIGFwcGx5IFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggYXBwbHkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPNGB0L/RgNGP0YLQsNC90L3Ri9C1LdC40LfQvNC10L3QtdC90LjRjz5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NzIKK21zZ2lkICJnaXQgc3Rhc2ggc3RvcmUgWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dIFstcXwtLXF1aWV0XSA8Y29tbWl0PiIKK21zZ3N0ciAiZ2l0IHN0YXNoIHN0b3JlIFstbXwtLW1lc3NhZ2UgPNGB0L7QvtCx0YnQtdC90LjQtT5dIFstcXwtLXF1aWV0XSA80LrQvtC80LzQuNGCPiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHN0YXNoLWxpa2UgY29tbWl0IgorbXNnc3RyICLCqyVzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC60L7QvNC80LjRgtC+0Lwg0YHQviDRgdC/0YDRj9GC0LDQvdC90YvQvNC4INC40LfQvNC10L3QtdC90LjRj9C80LgiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDolcyIKK21zZ3N0ciAi0J/QtdGA0LXQtNCw0L3QviDRgdC70LjRiNC60L7QvCDQvNC90L7Qs9C+INGA0LXQtNCw0LrRhtC40Lk6JXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNjEgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NDgKK21zZ2lkICJObyBzdGFzaCBlbnRyaWVzIGZvdW5kLiIKK21zZ3N0ciAi0J3QtSDQvdCw0LnQtNC10L3RiyDRgdC/0YDRj9GC0LDQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8uIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIHJlZmVyZW5jZSIKK21zZ3N0ciAiJXMg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC00L7Qv9GD0YHRgtC40LzQvtC5INGB0YHRi9C70LrQvtC5INC90LAg0LrQvtC80LzQuNGCIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjI0IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzUKK21zZ2lkICJnaXQgc3Rhc2ggY2xlYXIgd2l0aCBwYXJhbWV0ZXJzIGlzIHVuaW1wbGVtZW50ZWQiCittc2dzdHIgImdpdCBzdGFzaCDQvtGH0LjRgdGC0LrQsCDRgSDQv9Cw0YDQsNC80LXRgtGA0LDQvNC4INC90LUg0YDQtdCw0LvQuNC30L7QstCw0L3QsCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQwMworbXNnaWQgImNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKK21zZ3N0ciAi0L3QtdC70YzQt9GPINC/0YDQuNC80LXQvdC40YLRjCDRgdC/0YDRj9GC0LDQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8g0LLQviDQstGA0LXQvNGPINCy0YvQv9C+0LvQvdC10L3QuNGPINGB0LvQuNGP0L3QuNGPIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSBkaWZmICVzXiEuIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0LPQtdC90LXRgNC40YDQvtCy0LDRgtGMINGB0L/QuNGB0L7QuiDQuNC30LzQtdC90LXQvdC40LkgJXNeIS4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MjEKK21zZ2lkICJjb25mbGljdHMgaW4gaW5kZXguVHJ5IHdpdGhvdXQgLS1pbmRleC4iCittc2dzdHIgItC60L7QvdGE0LvQuNC60YLRiyDQsiDQuNC90LTQtdC60YHQtS4g0J/QvtC/0YDQvtCx0YPQudGC0LUg0LHQtdC3IC0taW5kZXguIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDI3Cittc2dpZCAiY291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0YXRgNCw0L3QuNGC0Ywg0LTQtdGA0LXQstC+INC40L3QtNC10LrRgdCwIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDM0Cittc2dpZCAiY291bGQgbm90IHJlc3RvcmUgdW50cmFja2VkIGZpbGVzIGZyb20gc3Rhc2giCittc2dzdHIgItC90LXQstC+0LfQvNC+0LbQvdC+INCy0L7RgdGB0YLQsNC90L7QstC40YLRjCDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0LUg0YTQsNC50LvRiyDQuNC3INGB0L/RgNGP0YLQsNC90L3Ri9GFINGE0LDQudC70L7QsiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJNZXJnaW5nICVzIHdpdGggJXMiCittc2dzdHIgItCh0LvQuNGP0L3QuNC1ICVzINC4ICVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDU4IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjgwCittc2dpZCAiSW5kZXggd2FzIG5vdCB1bnN0YXNoZWQuIgorbXNnc3RyICLQmNC90LTQtdC60YEg0L3QtSDQsdGL0Lsg0LjQt9Cy0LvQtdGH0ZHQvSDQuNC3INGB0L/RgNGP0YLQsNC90L3Ri9GFINC40LfQvNC10L3QtdC90LjQuS4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1MTYgYnVpbHRpbi9zdGFzaC5jOjYxNQorbXNnaWQgImF0dGVtcHQgdG8gcmVjcmVhdGUgdGhlIGluZGV4IgorbXNnc3RyICLQv9C+0L/Ri9GC0LrQsCDQv9C10YDQtdGB0L7Qt9C00LDQvdC40Y8g0LjQvdC00LXQutGB0LAiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiRHJvcHBlZCAlcyAoJXMpIgorbXNnc3RyICLQntGC0LHRgNC+0YjQtdC90L4gJXMgKCVzKSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCittc2dzdHIgIiVzOiDQndC1INGD0LTQsNC70L7RgdGMINC+0YLQsdGA0L7RgdC40YLRjCDQt9Cw0L/QuNGB0Ywg0LjQtyDRgdC/0YDRj9GC0LDQvdC90YvRhSDQuNC30LzQtdC90LXQvdC40LkiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBzdGFzaCByZWZlcmVuY2UiCittc2dzdHIgIsKrJXPCuyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0YHRgdGL0LvQutC+0Lkg0L3QsCDRgdC/0YDRj9GC0LDQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2MjcgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2OTQKK21zZ2lkICJUaGUgc3Rhc2ggZW50cnkgaXMga2VwdCBpbiBjYXNlIHlvdSBuZWVkIGl0IGFnYWluLiIKK21zZ3N0ciAi0KHQv9GA0Y/RgtCw0L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPINGB0L7RhdGA0LDQvdC10L3Riywg0L3QsCDRgdC70YPRh9Cw0Lkg0LXRgdC70Lgg0L7QvdC4INGB0L3QvtCy0LAg0LLQsNC8INC/0L7QvdCw0LTQvtCx0Y/RgtGB0Y8uIgorCisjOiBidWlsdGluL3N0YXNoLmM6NjUwIGdpdC1sZWdhY3ktc3Rhc2guc2g6NzEyCittc2dpZCAiTm8gYnJhbmNoIG5hbWUgc3BlY2lmaWVkIgorbXNnc3RyICLQndC1INGD0LrQsNC30LDQvdC+INC40LzRjyDQstC10YLQutC4IgorCisjOiBidWlsdGluL3N0YXNoLmM6Nzg5IGJ1aWx0aW4vc3Rhc2guYzo4MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHVwZGF0ZSAlcyB3aXRoICVzIgorbXNnc3RyICLQndC1INGD0LTQvtC70L7RgdGMINC+0LHQvdC+0LLQuNGC0YwgJXMg0YEgJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo4MDcgYnVpbHRpbi9zdGFzaC5jOjE0NzQgYnVpbHRpbi9zdGFzaC5jOjE1MTAKK21zZ2lkICJzdGFzaCBtZXNzYWdlIgorbXNnc3RyICLQvtC/0LjRgdCw0L3QuNC1INGB0L/RgNGP0YLQsNC90L3Ri9GFINC40LfQvNC10L3QtdC90LjQuSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjgxNworbXNnaWQgIlwiZ2l0IHN0YXNoIHN0b3JlXCIgcmVxdWlyZXMgb25lIDxjb21taXQ+IGFyZ3VtZW50IgorbXNnc3RyICLCq2dpdCBzdGFzaCBzdG9yZcK7INGC0YDQtdCx0YPQtdGCINGD0LrQsNC30LDQvdC40Y8g0L7QtNC90L7Qs9C+INCw0YDQs9GD0LzQtdC90YLQsCA80LrQvtC80LzQuNGCPiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEwMzkgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMTcKK21zZ2lkICJObyBjaGFuZ2VzIHNlbGVjdGVkIgorbXNnc3RyICLQmNC30LzQtdC90LXQvdC40Y8g0L3QtSDQstGL0LHRgNCw0L3RiyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExMzUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxNTAKK21zZ2lkICJZb3UgZG8gbm90IGhhdmUgdGhlIGluaXRpYWwgY29tbWl0IHlldCIKK21zZ3N0ciAi0KMg0LLQsNGBINC10YnQtSDQvdC10YIg0L3QsNGH0LDQu9GM0L3QvtCz0L4g0LrQvtC80LzQuNGC0LAiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTYyIGdpdC1sZWdhY3ktc3Rhc2guc2g6MTY1Cittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgaW5kZXggc3RhdGUiCittc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtGF0YDQsNC90LjRgtGMINGC0LXQutGD0YnQtdC1INGB0L7RgdGC0L7Rj9C90LjQtSDQuNC90LTQtdC60YHQsCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExNzEgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxODAKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgdW50cmFja2VkIGZpbGVzIgorbXNnc3RyICLQndC10LLQvtC30LzQvtC20L3QviDRgdC+0YXRgNCw0L3QuNGC0Ywg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9C1INGE0LDQudC70YsiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTgyIGJ1aWx0aW4vc3Rhc2guYzoxMTkxIGdpdC1sZWdhY3ktc3Rhc2guc2g6MjAwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIxMworbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHdvcmt0cmVlIHN0YXRlIgorbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINGB0L7RhdGA0LDQvdC40YLRjCDRgtC10LrRg9GJ0LXQtSDRgdC+0YHRgtC+0Y/QvdC40LUg0YDQsNCx0L7Rh9C10LPQviDQutCw0YLQsNC70L7Qs9CwIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTIxOSBnaXQtbGVnYWN5LXN0YXNoLnNoOjIzMworbXNnaWQgIkNhbm5vdCByZWNvcmQgd29ya2luZyB0cmVlIHN0YXRlIgorbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywg0YHQvtGB0YLQvtGP0L3QuNC1INGA0LDQsdC+0YfQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyNjggZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMzcKK21zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgorbXNnc3RyICLQndC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIC0tcGF0Y2gg0LggLS1pbmNsdWRlLXVudHJhY2tlZCDQuNC70LggLS1hbGwg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI4NAorbXNnaWQgIkRpZCB5b3UgZm9yZ2V0IHRvICdnaXQgYWRkJz8iCittc2dzdHIgItCS0L7Qt9C80L7QttC90L4sINCy0Ysg0LfQsNCx0YvQu9C4INCy0YvQv9C+0LvQvdC40YLRjCDCq2dpdCBhZGTCuz8iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMjk5IGdpdC1sZWdhY3ktc3Rhc2guc2g6MzQ1Cittc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgorbXNnc3RyICLQndC10YIg0LvQvtC60LDQu9GM0L3Ri9GFINC40LfQvNC10L3QtdC90LjQuSDQtNC70Y8g0YHQvtGF0YDQsNC90LXQvdC40Y8iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzA2IGdpdC1sZWdhY3ktc3Rhc2guc2g6MzUwCittc2dpZCAiQ2Fubm90IGluaXRpYWxpemUgc3Rhc2giCittc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LjQvdC40YbQuNCw0LvQuNC30LjRgNC+0LLQsNGC0Ywg0YHQv9GA0Y/RgtCw0L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTMyMSBnaXQtbGVnYWN5LXN0YXNoLnNoOjM1NAorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHN0YXR1cyIKK21zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0YXRgNCw0L3QuNGC0Ywg0YLQtdC60YPRidC40Lkg0YHRgtCw0YLRg9GBIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJTYXZlZCB3b3JraW5nIGRpcmVjdG9yeSBhbmQgaW5kZXggc3RhdGUgJXMiCittc2dzdHIgItCg0LDQsdC+0YfQuNC5INC60LDRgtCw0LvQvtCzINC4INGB0L7RgdGC0L7Rj9C90LjQtSDQuNC90LTQtdC60YHQsCDRgdC+0YXRgNCw0L3QtdC90YsgJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDMwIGdpdC1sZWdhY3ktc3Rhc2guc2g6Mzg0Cittc2dpZCAiQ2Fubm90IHJlbW92ZSB3b3JrdHJlZSBjaGFuZ2VzIgorbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINC40LfQvNC10L3QtdC90LjRjyDRgNCw0LHQvtGH0LXQs9C+INC60LDRgtCw0LvQvtCz0LAiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDY1IGJ1aWx0aW4vc3Rhc2guYzoxNTAxCittc2dpZCAia2VlcCBpbmRleCIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ2NyBidWlsdGluL3N0YXNoLmM6MTUwMworbXNnaWQgInN0YXNoIGluIHBhdGNoIG1vZGUiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NjggYnVpbHRpbi9zdGFzaC5jOjE1MDQKK21zZ2lkICJxdWlldCBtb2RlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDcwIGJ1aWx0aW4vc3Rhc2guYzoxNTA2Cittc2dpZCAiaW5jbHVkZSB1bnRyYWNrZWQgZmlsZXMgaW4gc3Rhc2giCittc2dzdHIgIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NzIgYnVpbHRpbi9zdGFzaC5jOjE1MDgKK21zZ2lkICJpbmNsdWRlIGlnbm9yZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTU2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZXhlYyAlcyIKK21zZ3N0ciAiIgorCiAjOiBidWlsdGluL3N0cmlwc3BhY2UuYzoxOAogbXNnaWQgImdpdCBzdHJpcHNwYWNlIFstcyB8IC0tc3RyaXAtY29tbWVudHNdIgogbXNnc3RyICJnaXQgc3RyaXBzcGFjZSBbLXMgfCAtLXN0cmlwLWNvbW1lbnRzXSIKQEAgLTE1MDE4LDM2NiArMTgwMjYsNDAxIEBACiBtc2dpZCAiZ2l0IHN0cmlwc3BhY2UgWy1jIHwgLS1jb21tZW50LWxpbmVzXSIKIG1zZ3N0ciAiZ2l0IHN0cmlwc3BhY2UgWy1jIHwgLS1jb21tZW50LWxpbmVzXSIKIAotIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MzYKKyM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM3CiBtc2dpZCAic2tpcCBhbmQgcmVtb3ZlIGFsbCBsaW5lcyBzdGFydGluZyB3aXRoIGNvbW1lbnQgY2hhcmFjdGVyIgogbXNnc3RyICLQv9GA0L7Qv9GD0YHRgtC40YLRjCDQuCDRg9C00LDQu9C40YLRjCDQstGB0LUg0YHRgtGA0L7QutC4LCDQvdCw0YfQuNC90LDRjtGJ0LjQtdGB0Y8g0YEg0YHQuNC80LLQvtC70LAg0LrQvtC80LzQtdGC0LDRgNC40Y8iCiAKLSM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM5CisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzo0MAogbXNnaWQgInByZXBlbmQgY29tbWVudCBjaGFyYWN0ZXIgYW5kIHNwYWNlIHRvIGVhY2ggbGluZSIKIG1zZ3N0ciAi0LTQvtCx0LDQstC40YLRjCDQv9C10YDQtdC0INC60LDQttC00L7QuSDRgdGC0YDQvtC60L7QuSDRgdC40LzQstC+0Lsg0LrQvtC80LzQtdGC0LDRgNC40Y8g0Lgg0L/RgNC+0LHQtdC7IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MzcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4MzMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiTm8gc3VjaCByZWY6ICVzIgotbXNnc3RyICLQndC10YIg0YLQsNC60L7QuSDRgdGB0YvQu9C60Lg6ICVzIgotCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NDIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJFeHBlY3RpbmcgYSBmdWxsIHJlZiBuYW1lLCBnb3QgJXMiCiBtc2dzdHIgItCe0LbQuNC00LDQu9C+0YHRjCDQv9C+0LvQvdC+0LUg0LjQvNGPINGB0YHRi9C70LrQuCwg0LAg0L/QvtC70YPRh9C10L3QviAlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjIKIG1zZ2lkICJzdWJtb2R1bGUtLWhlbHBlciBwcmludC1kZWZhdWx0LXJlbW90ZSB0YWtlcyBubyBhcmd1bWVudHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdHJpcCBvbmUgY29tcG9uZW50IG9mZiB1cmwgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtCx0YDQtdC30LDRgtGMINC+0LTQuNC9INC60L7QvNC/0L7QvdC10L3RgiB1cmwgwqslc8K7IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzU2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY3CiBtc2dpZCAiYWx0ZXJuYXRpdmUgYW5jaG9yIGZvciByZWxhdGl2ZSBwYXRocyIKIG1zZ3N0ciAi0LDQu9GM0YLQtdGA0L3QsNGC0LjQstC90YvQuSDRgdC40LzQstC+0Lsg0LTQu9GPINC+0YLQvdC+0YHQuNGC0LXQu9GM0L3Ri9GFINC/0YPRgtC10LkiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MTIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MTMKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbGlzdCBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGxpc3QgWy0tcHJlZml4PTzQv9GD0YLRjD5dIFs80L/Rg9GC0Yw+4oCmXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ2OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjA2Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjI5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDcwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2MjcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gdXJsIGZvdW5kIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIGluIC5naXRtb2R1bGVzIgogbXNnc3RyICJVUkwg0LTQu9GPINC/0L7QtNC80L7QtNGD0LvRjyDQv9C+INC/0YPRgtC4IMKrJXPCuyDQvdC1INC90LDQudC00LXQvSDQsiAuZ2l0bW9kdWxlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyMQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJFbnRlcmluZyAnJXMnXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyNAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicnVuX2NvbW1hbmQgcmV0dXJuZWQgbm9uLXplcm8gc3RhdHVzIGZvciAlc1xuIgogIi4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU0NQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU0NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCi0icnVuX2NvbW1hbmQgcmV0dXJuZWQgbm9uLXplcm8gc3RhdHVzIHdoaWxlcmVjdXJzaW5nIGluIHRoZSBuZXN0ZWQgc3VibW9kdWxlcyBvZiAlc1xuIgorInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyB3aGlsZSByZWN1cnNpbmcgaW4gdGhlIG5lc3RlZCBzdWJtb2R1bGVzIG9mICVzXG4iCiAiLiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTYxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTYyCiBtc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IG9mIGVudGVyaW5nIGVhY2ggc3VibW9kdWxlIGNvbW1hbmQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA0MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA0OQogbXNnaWQgIlJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY4Ci1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGZvcmVhY2ggWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gPGNvbW1hbmQ+IgotbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSA80LrQvtC80LDQvdC00LA+IgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2OQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFstLV0gPGNvbW1hbmQ+IgorbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NDQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgotImNvdWxkIG5vdCBsb29rdXAgY29uZmlndXJhdGlvbiAnJXMnLiBBc3N1bWluZyB0aGlzIHJlcG9zaXRvcnkgaXMgaXRzIG93biAiCisiY291bGQgbm90IGxvb2sgdXAgY29uZmlndXJhdGlvbiAnJXMnLiBBc3N1bWluZyB0aGlzIHJlcG9zaXRvcnkgaXMgaXRzIG93biAiCiAiYXV0aG9yaXRhdGl2ZSB1cHN0cmVhbS4iCi1tc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0YDQvtGB0LjRgtGMINC60L7QvdGE0LjQs9GD0YDQsNGG0LjRjiDCqyVzwrsuINCf0YDQtdC00L/QvtC70LDQs9Cw0Y4sINGH0YLQviDRjdGC0L7RgiDRgNC10L/QvtC30LjRgtC+0YDQuNC5INC40LzQtdC10YIg0YHQstC+0Lkg0YHQvtCx0YHRgtCy0LXQvdC90YvQuSDQstGL0YjQtdGB0YLQvtGP0YnQuNC5INGA0LXQv9C+0LfQuNGC0L7RgNC40LkuIgorbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NTUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHVybCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAi0KHQsdC+0Lkg0YDQtdCz0LjRgdGC0YDQsNGG0LjQuCDQsNC00YDQtdGB0LAg0LTQu9GPINC/0YPRgtC4INC/0L7QtNC80L7QtNGD0LvRjyDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlICclcycgKCVzKSByZWdpc3RlcmVkIGZvciBwYXRoICclcydcbiIKIG1zZ3N0ciAi0J/QvtC00LzQvtC00YPQu9GMIMKrJXPCuyAoJXMpINC30LDRgNC10LPQuNGB0YLRgNC40YDQvtCy0LDQvSDQv9C+INC/0YPRgtC4IMKrJXPCu1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGNvbW1hbmQgdXBkYXRlIG1vZGUgc3VnZ2VzdGVkIGZvciBzdWJtb2R1bGUgJyVzJ1xuIgogbXNnc3RyICLQstC90LjQvNCw0L3QuNC1OiDQv9GA0LXQtNC/0L7Qu9Cw0LPQsNC10LzRi9C5INGA0LXQttC40Lwg0L7QsdC90L7QstC70LXQvdC40Y8g0LTQu9GPINC/0L7QtNC80L7QtNGD0LvRjyDCqyVzwrtcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY3NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVnaXN0ZXIgdXBkYXRlIG1vZGUgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgItCh0LHQvtC5INGA0LXQs9C40YHRgtGA0LDRhtC40Lgg0YDQtdC20LjQvNCwINC+0LHQvdC+0LLQu9C10L3QuNGPINC00LvRjyDQv9GD0YLQuCDQv9C+0LTQvNC+0LTRg9C70Y8gwqslc8K7IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njk4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzA3CiBtc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IGZvciBpbml0aWFsaXppbmcgYSBzdWJtb2R1bGUiCiBtc2dzdHIgItCd0LUg0LLRi9Cy0L7QtNC40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDQuNC90LjRhtC40LDQu9C40LfQsNGG0LjQuCDQv9C+0LTQvNC+0LTRg9C70Y8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MDMKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPHBhdGg+XSIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzzQv9GD0YLRjD5dIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcxMgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8b3B0aW9ucz5dIFs8cGF0aD5dIgorbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3NzUgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkwMQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjc4NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Ym1vZHVsZSBtYXBwaW5nIGZvdW5kIGluIC5naXRtb2R1bGVzIGZvciBwYXRoICclcyciCiBtc2dzdHIgItC90LUg0L3QsNC50LTQtdC90L4g0YHQvtC+0YLQstC10YLRgdGC0LLQuNC1INC/0L7QtNC80L7QtNGD0LvQtdC5INCyIC5naXRtb2R1bGVzINC00LvRjyDQv9GD0YLQuCDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4MTQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4MjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgSEVBRCByZWYgaW5zaWRlIHRoZSBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4IEhFQUQg0YHRgdGL0LvQutGDINCy0L3Rg9GC0YDQuCDQv9C+0LTQvNC+0LTRg9C70Y8gwqslc8K7IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODQxIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDEwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODUwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDE5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWN1cnNlIGludG8gc3VibW9kdWxlICclcyciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQudGC0Lgg0LLQs9C70YPQsdGMINC/0L7QtNC80L7QtNGD0LvRjyDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NjUgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNzYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODUKIG1zZ2lkICJTdXBwcmVzcyBzdWJtb2R1bGUgc3RhdHVzIG91dHB1dCIKIG1zZ3N0ciAi0J3QtSDQstGL0LLQvtC00LjRgtGMINGB0YLQsNGC0YPRgSDQv9C+0LTQvNC+0LTRg9C70Y8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NjYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzUKIG1zZ2lkICIiCiAiVXNlIGNvbW1pdCBzdG9yZWQgaW4gdGhlIGluZGV4IGluc3RlYWQgb2YgdGhlIG9uZSBzdG9yZWQgaW4gdGhlIHN1Ym1vZHVsZSAiCiAiSEVBRCIKIG1zZ3N0ciAi0JjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC60L7QvNC80LjRgiDRhdGA0LDQvdGP0YnQuNC50YHRjyDQsiDQuNC90LTQtdC60YHQtSDQstC80LXRgdGC0L4g0LrQvtC80LzQuNGC0LAg0YXRgNCw0L3Rj9GJ0LXQs9C+0YHRjyDQsiBIRUFEINC/0L7QtNC80L7QtNGD0LvRjyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg2NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg3NgogbXNnaWQgInJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKIG1zZ3N0ciAi0L/RgNC+0YXQvtC00LjRgtGMINCy0LPQu9GD0LHRjCDQstC70L7QttC10L3QvdGL0YUg0L/QvtC00LzQvtC00YPQu9C10LkiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODEKIG1zZ2lkICJnaXQgc3VibW9kdWxlIHN0YXR1cyBbLS1xdWlldF0gWy0tY2FjaGVkXSBbLS1yZWN1cnNpdmVdIFs8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgc3VibW9kdWxlIHN0YXR1cyBbLS1xdWlldF0gWy0tY2FjaGVkXSBbLS1yZWN1cnNpdmVdIFs80L/Rg9GC0Yw+4oCmXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg5NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkwNQogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBuYW1lIDxwYXRoPiIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIG5hbWUgPNC/0YPRgtGMPiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk2MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTeW5jaHJvbml6aW5nIHN1Ym1vZHVsZSB1cmwgZm9yICclcydcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTY2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWdpc3RlciB1cmwgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk4MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZ2V0IHRoZSBkZWZhdWx0IHJlbW90ZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk5MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHVwZGF0ZSByZW1vdGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDM4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA0NwogbXNnaWQgIlN1cHByZXNzIG91dHB1dCBvZiBzeW5jaHJvbml6aW5nIHN1Ym1vZHVsZSB1cmwiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNDUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDU0CiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHN5bmMgWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWzxwYXRoPl0iCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBzeW5jIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFs80L/Rg9GC0Yw+XSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwOTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgd29yayB0cmVlICclcycgY29udGFpbnMgYSAuZ2l0IGRpcmVjdG9yeSAodXNlICdybSAtcmYnIGlmIHlvdSAiCiAicmVhbGx5IHdhbnQgdG8gcmVtb3ZlIGl0IGluY2x1ZGluZyBhbGwgb2YgaXRzIGhpc3RvcnkpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTExCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiU3VibW9kdWxlIHdvcmsgdHJlZSAnJXMnIGNvbnRhaW5zIGxvY2FsIG1vZGlmaWNhdGlvbnM7IHVzZSAnLWYnIHRvIGRpc2NhcmQgIgogInRoZW0iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNsZWFyZWQgZGlyZWN0b3J5ICclcydcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyMQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBzdWJtb2R1bGUgd29yayB0cmVlICclcydcbiIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEzMgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBlbXB0eSBzdWJtb2R1bGUgZGlyZWN0b3J5ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTQ4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyAoJXMpIHVucmVnaXN0ZXJlZCBmb3IgcGF0aCAnJXMnXG4iCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNzcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTg2CiBtc2dpZCAiUmVtb3ZlIHN1Ym1vZHVsZSB3b3JraW5nIHRyZWVzIGV2ZW4gaWYgdGhleSBjb250YWluIGxvY2FsIGNoYW5nZXMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNzgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTg3CiBtc2dpZCAiVW5yZWdpc3RlciBhbGwgc3VibW9kdWxlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExOTIKIG1zZ2lkICIiCiAiZ2l0IHN1Ym1vZHVsZSBkZWluaXQgWy0tcXVpZXRdIFstZiB8IC0tZm9yY2VdIFstLWFsbCB8IFstLV0gWzxwYXRoPi4uLl1dIgogbXNnc3RyICJnaXQgc3VibW9kdWxlIGRlaW5pdCBbLS1xdWlldF0gWy1mIHwgLS1mb3JjZV0gWy0tYWxsIHwgWy0tXSBbPNC/0YPRgtGMPuKApl1dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE5NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDYKIG1zZ2lkICJVc2UgJy0tYWxsJyBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZGVpbml0aWFsaXplIGFsbCBzdWJtb2R1bGVzIgogbXNnc3RyICLQmNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrLS1hbGzCuywg0LXRgdC70Lgg0LLRiyDQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3QviDRhdC+0YLQuNGC0LUg0LTQtdC40L3QuNGG0LjQsNC70LjQt9C40YDQvtCy0LDRgtGMINCy0YHQtSDQv9C+0LTQvNC+0LTRg9C70LgiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjkwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjkzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMwMSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgJyVzJyBjYW5ub3QgYWRkIGFsdGVybmF0ZTogJXMiCiBtc2dzdHIgItC/0L7QtNC80L7QtNGD0LvRjiDCqyVzwrsg0L3QtSDRg9C00LDQu9C+0YHRjCDQtNC+0LHQsNCy0LjRgtGMINCw0LvRjNGC0LXRgNC90LDRgtC40LLRgzogJXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzI5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJWYWx1ZSAnJXMnIGZvciBzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSBpcyBub3QgcmVjb2duaXplZCIKIG1zZ3N0ciAi0JfQvdCw0YfQtdC90LjQtSDCqyVzwrsg0LTQu9GPINC/0LDRgNCw0LzQtdGC0YDQsCBzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSDQvdC1INGA0LDQv9C+0LfQvdCw0L3QviIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzMzYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlZhbHVlICclcycgZm9yIHN1Ym1vZHVsZS5hbHRlcm5hdGVMb2NhdGlvbiBpcyBub3QgcmVjb2duaXplZCIKIG1zZ3N0ciAi0JfQvdCw0YfQtdC90LjQtSDCqyVzwrsg0LTQu9GPINC/0LDRgNCw0LzQtdGC0YDQsCBzdWJtb2R1bGUuYWx0ZXJuYXRlTG9jYXRpb24g0L3QtSDRgNCw0L/QvtC30L3QsNC90L4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzU5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3MAogbXNnaWQgIndoZXJlIHRoZSBuZXcgc3VibW9kdWxlIHdpbGwgYmUgY2xvbmVkIHRvIgogbXNnc3RyICLQutGD0LTQsCDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0YHQutC70L7QvdC40YDQvtCy0LDQvSDQvdC+0LLRi9C5INC/0L7QtNC80L7QtNGD0LvRjCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzczCiBtc2dpZCAibmFtZSBvZiB0aGUgbmV3IHN1Ym1vZHVsZSIKIG1zZ3N0ciAi0LjQvNGPINC90L7QstC+0LPQviDQv9C+0LTQvNC+0LTRg9C70Y8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NgogbXNnaWQgInVybCB3aGVyZSB0byBjbG9uZSB0aGUgc3VibW9kdWxlIGZyb20iCiBtc2dzdHIgInVybCDQvtGC0LrRg9C00LAg0LTQvtC70LbQtdC9INCx0YvQuyDRgdC60LvQvtC90LjRgNC+0LLQsNC9INC90L7QstGL0Lkg0L/QvtC00LzQvtC00YPQu9GMIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzODQKIG1zZ2lkICJkZXB0aCBmb3Igc2hhbGxvdyBjbG9uZXMiCiBtc2dzdHIgItCz0LvRg9Cx0LjQvdCwINC00LvRjyDRh9Cw0YHRgtC40YfQvdC+0LPQviDQutC70L7QvdCwIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTc1MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzODcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NzEKIG1zZ2lkICJmb3JjZSBjbG9uaW5nIHByb2dyZXNzIgogbXNnc3RyICLQv9GA0LjQvdGD0LTQuNGC0LXQu9GM0L3QviDQstGL0LLQvtC00LjRgtGMINC/0YDQvtCz0YDQtdGB0YEg0LrQu9C+0L3QuNGA0L7QstCw0L3QuNGPIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzOTIKIG1zZ2lkICIiCiAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNsb25lIFstLXByZWZpeD08cGF0aD5dIFstLXF1aWV0XSBbLS1yZWZlcmVuY2UgIgogIjxyZXBvc2l0b3J5Pl0gWy0tbmFtZSA8bmFtZT5dIFstLWRlcHRoIDxkZXB0aD5dIC0tdXJsIDx1cmw+IC0tcGF0aCA8cGF0aD4iCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg9PNC/0YPRgtGMPl0gWy0tcXVpZXRdIFstLXJlZmVyZW5jZSA80YDQtdC/0L7Qt9C40YLQvtGA0LjQuT5dIFstLW5hbWUgPNC40LzRjz5dIFstLWRlcHRoIDzQs9C70YPQsdC40L3QsD5dIC0tdXJsIDx1cmw+IC0tcGF0aCA80L/Rg9GC0Yw+IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxMgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2xvbmUgb2YgJyVzJyBpbnRvIHN1Ym1vZHVsZSBwYXRoICclcycgZmFpbGVkIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC60LvQvtC90LjRgNC+0LLQsNGC0Ywgwqslc8K7INCyINC/0L7QtNC80L7QtNGD0LvRjCDQv9C+INC/0YPRgtC4IMKrJXPCuyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MjYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBnZXQgc3VibW9kdWxlIGRpcmVjdG9yeSBmb3IgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C+0LvRg9GH0LjRgtGMINC60LDRgtCw0LvQvtCzINC00LvRjyDQv9C+0LTQvNC+0LTRg9C70Y8gwqslc8K7IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ5MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB1cGRhdGUgbW9kZSAnJXMnIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDc3CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBjb25maWd1cmVkIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICclcycgbm90IGluaXRpYWxpemVkIgogbXNnc3RyICLQn9C+0LTQvNC+0LTRg9C70Ywg0L/QviDQv9GD0YLQuCDCqyVzwrsg0L3QtSDQuNC90LjRhtC40LDQu9C40LfQuNGA0L7QstCw0L0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDk2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTU3NAogbXNnaWQgIk1heWJlIHlvdSB3YW50IHRvIHVzZSAndXBkYXRlIC0taW5pdCc/IgogbXNnc3RyICLQktC+0LfQvNC+0LbQvdC+LCDQstGLINGF0L7RgtC10LvQuCDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywgwqt1cGRhdGUgLS1pbml0wrs/IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTUyNQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBpbmcgdW5tZXJnZWQgc3VibW9kdWxlICVzIgogbXNnc3RyICLQn9GA0L7Qv9GD0YHQuiDQvdC1INGB0LvQuNGC0L7Qs9C+INC/0L7QtNC80L7QtNGD0LvRjyAlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1NTQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwaW5nIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICLQn9GA0L7Qv9GD0YHQuiDQv9C+0LTQvNC+0LTRg9C70Y8gwqslc8K7IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTY4OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGNsb25lICclcycuIFJldHJ5IHNjaGVkdWxlZCIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQutC70L7QvdC40YDQvtCy0LDRgtGMIMKrJXPCuy4g0JfQsNC/0LvQsNC90LjRgNC+0LLQsNC90LAg0L/QvtCy0YLQvtGA0L3QsNGPINC/0L7Qv9GL0YLQutCwIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTcwMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGNsb25lICclcycgYSBzZWNvbmQgdGltZSwgYWJvcnRpbmciCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LrQu9C+0L3QuNGA0L7QstCw0YLRjCDCqyVzwrsg0YHQviDQstGC0L7RgNC+0Lkg0L/QvtC/0YvRgtC60LgsINC+0YLQvNC10L3QsCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3MzAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5NTMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODUwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDkyCiBtc2dpZCAicGF0aCBpbnRvIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgItC/0YPRgtGMINCyINGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzMzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1MwogbXNnaWQgInBhdGggaW50byB0aGUgd29ya2luZyB0cmVlLCBhY3Jvc3MgbmVzdGVkIHN1Ym1vZHVsZSBib3VuZGFyaWVzIgogbXNnc3RyICLQv9GD0YLRjCDQsiDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1LCDQsiDQv9GA0LXQtNC10LvQsNGFINCz0YDQsNC90LjRhiDQv9C+0LTQvNC+0LTRg9C70Y8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzM3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1NwogbXNnaWQgInJlYmFzZSwgbWVyZ2UsIGNoZWNrb3V0IG9yIG5vbmUiCiBtc2dzdHIgInJlYmFzZSwgbWVyZ2UsIGNoZWNrb3V0INC40LvQuCBub25lIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTc0MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjMKIG1zZ2lkICJDcmVhdGUgYSBzaGFsbG93IGNsb25lIHRydW5jYXRlZCB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiByZXZpc2lvbnMiCiBtc2dzdHIgItCh0L7Qt9C00LDRgtGMINGH0LDRgdGC0LjRh9C90YvQuSDQutC70L7QvSwg0L7Qs9GA0LDQvdC40YfQtdC90L3Ri9C5INGD0LrQsNC30LDQvdC90YvQvCDQutC+0LvQuNGH0LXRgdGC0LLQvtC8INGA0LXQtNCw0LrRhtC40LkiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzQ2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2NgogbXNnaWQgInBhcmFsbGVsIGpvYnMiCiBtc2dzdHIgItC/0LDRgNCw0LvQu9C10LvRjNC90YvQtSDQt9Cw0LTQsNGH0LgiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzQ4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2OAogbXNnaWQgIndoZXRoZXIgdGhlIGluaXRpYWwgY2xvbmUgc2hvdWxkIGZvbGxvdyB0aGUgc2hhbGxvdyByZWNvbW1lbmRhdGlvbiIKIG1zZ3N0ciAi0LTQvtC70LbQtdC9INC70Lgg0LjQt9C90LDRh9Cw0LvRjNC90YvQuSDQv9GA0L7RhtC10YHRgSDQutC70L7QvdC40YDQvtCy0LDQvdC40Y8g0YHQu9C10LTQvtCy0LDRgtGMINGA0LXQutC+0LzQtdC90LTQsNGG0LjQuCDQviDRh9Cw0YHRgtC40YfQvdC+0YHRgtC4IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTc0OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjkKIG1zZ2lkICJkb24ndCBwcmludCBjbG9uaW5nIHByb2dyZXNzIgogbXNnc3RyICLQstGLINCy0YvQstC+0LTQuNGC0Ywg0L/RgNC+0LPRgNC10YHRgSDQutC70L7QvdC40YDQvtCy0LDQvdC40Y8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzU2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg3NgogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciB1cGRhdGVfY2xvbmUgWy0tcHJlZml4PTxwYXRoPl0gWzxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciB1cGRhdGVfY2xvbmUgWy0tcHJlZml4PTzQv9GD0YLRjD5dIFs80L/Rg9GC0Yw+4oCmXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3NjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODg5CiBtc2dpZCAiYmFkIHZhbHVlIGZvciB1cGRhdGUgcGFyYW1ldGVyIgogbXNnc3RyICLQv9C70L7RhdC+0LUg0LfQvdCw0YfQtdC90LjQtSDQtNC70Y8g0L/QsNGA0LDQvNC10YLRgNCwIHVwZGF0ZSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4MzcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgKCVzKSBicmFuY2ggY29uZmlndXJlZCB0byBpbmhlcml0IGJyYW5jaCBmcm9tIHN1cGVycHJvamVjdCwgYnV0ICIKICJ0aGUgc3VwZXJwcm9qZWN0IGlzIG5vdCBvbiBhbnkgYnJhbmNoIgogbXNnc3RyICLQktC10YLQutCwINC/0L7QtNC80L7QtNGD0LvRjyAoJXMpINC90LDRgdGC0YDQvtC10L3QsCDQvdCwINC90LDRgdC70LXQtNC+0LLQsNC90LjQtSDQstC10YLQutC4INC40Lcg0YDQvtC00LjRgtC10LvRjNGB0LrQvtCz0L4g0L/RgNC+0LXQutGC0LAsINC90L4g0L7QvSDQvdC1INC90LDRhdC+0LTQuNGC0YHRjyDQvdC4INC90LAg0L7QtNC90L7QuSDQstC10YLQutC1IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk1NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGdldCBhIHJlcG9zaXRvcnkgaGFuZGxlIGZvciBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA5MwogbXNnaWQgInJlY3Vyc2UgaW50byBzdWJtb2R1bGVzIgogbXNnc3RyICLRgNC10LrRg9GA0YHQuNCy0L3QviDQv9C+INC/0L7QtNC80L7QtNGD0LvRj9C8IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk2MAotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBlbWJlZC1naXQtZGlyIFs8cGF0aD4uLi5dIgotbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZW1iZWQtZ2l0LWRpciBbPNC/0YPRgtGMPuKApl0iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA5OQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzxvcHRpb25zPl0gWzxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzzQvtC/0YbQuNC4Pl0gWzzQv9GD0YLRjD7igKZdIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA3MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTYKK21zZ2lkICJjaGVjayBpZiBpdCBpcyBzYWZlIHRvIHdyaXRlIHRvIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTU5Cittc2dpZCAidW5zZXQgdGhlIGNvbmZpZyBpbiB0aGUgLmdpdG1vZHVsZXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE2NAorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgPG5hbWU+IFs8dmFsdWU+XSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyA80LjQvNGPPiBbPNC30L3QsNGH0LXQvdC40LU+XSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNjUKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tdW5zZXQgPG5hbWU+IgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tdW5zZXQgPNC40LzRjz4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTY2Cittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLWNoZWNrLXdyaXRlYWJsZSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLWNoZWNrLXdyaXRlYWJsZSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxODUgZ2l0LXN1Ym1vZHVsZS5zaDoxNzEKKyMsIHNoLWZvcm1hdAorbXNnaWQgInBsZWFzZSBtYWtlIHN1cmUgdGhhdCB0aGUgLmdpdG1vZHVsZXMgZmlsZSBpcyBpbiB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjM1IGdpdC5jOjQzMyBnaXQuYzo2ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lc24ndCBzdXBwb3J0IC0tc3VwZXItcHJlZml4IgogbXNnc3RyICIlcyDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgiDQv9Cw0YDQsNC80LXRgtGAIC0tc3VwZXItcHJlZml4IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA3NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBzdWJtb2R1bGUtLWhlbHBlciBzdWJjb21tYW5kIgogbXNnc3RyICLCqyVzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC/0L7QtNC60L7QvNCw0L3QtNC+0Lkgc3VibW9kdWxlLS1oZWxwZXIiCkBAIC0xNTQxMiwzNSArMTg0NTUsMzUgQEAKIAogIzogYnVpbHRpbi90YWcuYzoyNQogbXNnaWQgIiIKLSJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPGtleS1pZD5dIFstZl0gWy1tIDxtc2c+IHwgLUYgPGZpbGU+XSA8dGFnbmFtZT4gIgotIls8aGVhZD5dIgotbXNnc3RyICJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPNC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGALdC60LvRjtGH0LA+XSBbLWZdIFstbSA80YHQvtC+0LHRidC10L3QuNC1PiB8IC1GIDzRhNCw0LnQuz5dIDzQuNC80Y8t0LzQtdGC0LrQuD4gWzzRgNC10LTQsNC60YbQuNGPPl0iCisiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA8bXNnPiB8IC1GIDxmaWxlPl1cbiIKKyJcdFx0PHRhZ25hbWU+IFs8aGVhZD5dIgorbXNnc3RyICJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPGtleS1pZD5dIFstZl0gWy1tIDzRgdC+0L7QsdGJ0LXQvdC40LU+IHwgLUYgPNGE0LDQudC7Pl1cblx0XHQ80LjQvNGPLdC80LXRgtC60LA+IFs80YDQtdC00LDQutGG0LjRjz5dIgogCi0jOiBidWlsdGluL3RhZy5jOjI2CisjOiBidWlsdGluL3RhZy5jOjI3CiBtc2dpZCAiZ2l0IHRhZyAtZCA8dGFnbmFtZT4uLi4iCiBtc2dzdHIgImdpdCB0YWcgLWQgPNC40LzRjy3QvNC10YLQutC4PuKApiIKIAotIzogYnVpbHRpbi90YWcuYzoyNworIzogYnVpbHRpbi90YWcuYzoyOAogbXNnaWQgIiIKICJnaXQgdGFnIC1sIFstbls8bnVtPl1dIFstLWNvbnRhaW5zIDxjb21taXQ+XSBbLS1uby1jb250YWlucyA8Y29tbWl0Pl0gWy0tcG9pbnRzLWF0IDxvYmplY3Q+XVxuIgogIlx0XHRbLS1mb3JtYXQ9PGZvcm1hdD5dIFstLVtuby1dbWVyZ2VkIFs8Y29tbWl0Pl1dIFs8cGF0dGVybj4uLi5dIgogbXNnc3RyICJnaXQgdGFnIC1sIFstbls80LrQvtC70LjRh9C10YHRgtCy0L4+XV0gWy0tY29udGFpbnMgPNC60L7QvNC80LjRgj5dIFstLW5vLWNvbnRhaW5zIDzQutC+0LzQvNC40YI+XSBbLS1wb2ludHMtYXQgPNC+0LHRitC10LrRgj5dXG5cdFx0Wy0tZm9ybWF0PTzRhNC+0YDQvNCw0YI+XSBbLS1bbm8tXW1lcmdlZCBbPNC60L7QvNC80LjRgj5dXSBbPNGI0LDQsdC70L7QvT7igKZdIgogCi0jOiBidWlsdGluL3RhZy5jOjI5CisjOiBidWlsdGluL3RhZy5jOjMwCiBtc2dpZCAiZ2l0IHRhZyAtdiBbLS1mb3JtYXQ9PGZvcm1hdD5dIDx0YWduYW1lPi4uLiIKIG1zZ3N0ciAiZ2l0IHRhZyAtdiBbLS1mb3JtYXQ9PNGE0L7RgNC80LDRgj5dIDzQuNC80Y8t0LzQtdGC0LrQuD7igKYiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6ODcKKyM6IGJ1aWx0aW4vdGFnLmM6ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFnICclcycgbm90IGZvdW5kLiIKIG1zZ3N0ciAi0LzQtdGC0LrQsCAgwqslc8K7INC90LUg0L3QsNC50LTQtdC90LAuIgogCi0jOiBidWlsdGluL3RhZy5jOjEwMworIzogYnVpbHRpbi90YWcuYzoxMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCB0YWcgJyVzJyAod2FzICVzKVxuIgogbXNnc3RyICLQnNC10YLQutCwIMKrJXPCuyDRg9C00LDQu9C10L3QsCAo0LHRi9C70LAgJXMpXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTMzCisjOiBidWlsdGluL3RhZy5jOjEzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC0xNTQ0OSw3ICsxODQ5Miw3IEBACiAiTGluZXMgc3RhcnRpbmcgd2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZC5cbiIKIG1zZ3N0ciAiXG7QktCy0LXQtNC40YLQtSDRgdC+0L7QsdGJ0LXQvdC40LUg0LTQu9GPINC80LXRgtC60Lg6XG4gICVzXG7QodGC0YDQvtC60LgsINC90LDRh9C40L3QsNGO0YnQuNC10YHRjyDRgSDCqyVjwrsg0LHRg9C00YPRgiDQv9GA0L7QuNCz0L3QvtGA0LjRgNC+0LLQsNC90YsuXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTM3CisjOiBidWlsdGluL3RhZy5jOjEzOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC0xNTQ1OCwxNDYgKzE4NTAxLDE1NSBAQAogIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGtlcHQ7IHlvdSBtYXkgcmVtb3ZlIHRoZW0geW91cnNlbGYgaWYgeW91IHdhbnQgdG8uXG4iCiBtc2dzdHIgIlxu0JLQstC10LTQuNGC0LUg0YHQvtC+0LHRidC10L3QuNC1INC00LvRjyDQvNC10YLQutC4OlxuICAlc1xu0KHRgtGA0L7QutC4LCDQvdCw0YfQuNC90LDRjtGJ0LjQtdGB0Y8g0YEgwqslY8K7INCx0YPQtNGD0YIg0L7RgdGC0LDQstC70LXQvdGLOyDQstGLINC80L7QttC10YLQtSDRg9C00LDQu9C40YLRjCDQuNGFINCy0YDRg9GH0L3Rg9GOLCDQtdGB0LvQuCDRhdC+0YLQuNGC0LUuXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTkxCisjOiBidWlsdGluL3RhZy5jOjE5MgogbXNnaWQgInVuYWJsZSB0byBzaWduIHRoZSB0YWciCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC00L/QuNGB0LDRgtGMINC80LXRgtC60YMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTkzCisjOiBidWlsdGluL3RhZy5jOjE5NAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0YWcgZmlsZSIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMINGE0LDQudC7INC80LXRgtC60LgiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjE4CisjOiBidWlsdGluL3RhZy5jOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGhhdmUgY3JlYXRlZCBhIG5lc3RlZCB0YWcuIFRoZSBvYmplY3QgcmVmZXJyZWQgdG8gYnkgeW91ciBuZXcgdGFnIGlzXG4iCisiYWxyZWFkeSBhIHRhZy4gSWYgeW91IG1lYW50IHRvIHRhZyB0aGUgb2JqZWN0IHRoYXQgaXQgcG9pbnRzIHRvLCB1c2U6XG4iCisiXG4iCisiXHRnaXQgdGFnIC1mICVzICVzXnt9IgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjI2CiBtc2dpZCAiYmFkIG9iamVjdCB0eXBlLiIKIG1zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INGC0LjQvyDQvtCx0YrQtdC60YLQsCIKIAotIzogYnVpbHRpbi90YWcuYzoyNjcKKyM6IGJ1aWx0aW4vdGFnLmM6Mjc4CiBtc2dpZCAibm8gdGFnIG1lc3NhZ2U/IgogbXNnc3RyICLQvdC10YIg0L7Qv9C40YHQsNC90LjRjyDQvNC10YLQutC4PyIKIAotIzogYnVpbHRpbi90YWcuYzoyNzQKKyM6IGJ1aWx0aW4vdGFnLmM6Mjg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSB0YWcgbWVzc2FnZSBoYXMgYmVlbiBsZWZ0IGluICVzXG4iCiBtc2dzdHIgItCh0L7QvtCx0YnQtdC90LjQtSDQvNC10YLQutC4INCx0YvQu9C+INC+0YHRgtCw0LLQu9C10L3QviDQsiAlc1xuIgogCi0jOiBidWlsdGluL3RhZy5jOjM4MworIzogYnVpbHRpbi90YWcuYzozOTYKIG1zZ2lkICJsaXN0IHRhZyBuYW1lcyIKIG1zZ3N0ciAi0YHQv9C40YHQvtC6INC90LDQt9Cy0LDQvdC40Lkg0LzQtdGC0L7QuiIKIAotIzogYnVpbHRpbi90YWcuYzozODUKKyM6IGJ1aWx0aW4vdGFnLmM6Mzk4CiBtc2dpZCAicHJpbnQgPG4+IGxpbmVzIG9mIGVhY2ggdGFnIG1lc3NhZ2UiCiBtc2dzdHIgItC/0LXRh9Cw0YLQsNGC0YwgPG4+INGB0YLRgNC+0Log0L7Qv9C40YHQsNC90LjRjyDQvtGCINC60LDQttC00L7QuSDQvNC10YLQutC4IgogCi0jOiBidWlsdGluL3RhZy5jOjM4NworIzogYnVpbHRpbi90YWcuYzo0MDAKIG1zZ2lkICJkZWxldGUgdGFncyIKIG1zZ3N0ciAi0YPQtNCw0LvQuNGC0Ywg0LzQtdGC0LrQuCIKIAotIzogYnVpbHRpbi90YWcuYzozODgKKyM6IGJ1aWx0aW4vdGFnLmM6NDAxCiBtc2dpZCAidmVyaWZ5IHRhZ3MiCiBtc2dzdHIgItC/0YDQvtCy0LXRgNC40YLRjCDQvNC10YLQutC4IgogCi0jOiBidWlsdGluL3RhZy5jOjM5MAorIzogYnVpbHRpbi90YWcuYzo0MDMKIG1zZ2lkICJUYWcgY3JlYXRpb24gb3B0aW9ucyIKIG1zZ3N0ciAi0J3QsNGB0YLRgNC+0LnQutC4INGB0L7Qt9C00LDQvdC40Y8g0LzQtdGC0LrQuCIKIAotIzogYnVpbHRpbi90YWcuYzozOTIKKyM6IGJ1aWx0aW4vdGFnLmM6NDA1CiBtc2dpZCAiYW5ub3RhdGVkIHRhZywgbmVlZHMgYSBtZXNzYWdlIgogbXNnc3RyICLQtNC70Y8g0LDQvdC90L7RgtC40YDQvtCy0LDQvdC90L7QuSDQvNC10YLQutC4INC90YPQttC90L4g0YHQvtC+0LHRidC10L3QuNC1IgogCi0jOiBidWlsdGluL3RhZy5jOjM5NAorIzogYnVpbHRpbi90YWcuYzo0MDcKIG1zZ2lkICJ0YWcgbWVzc2FnZSIKIG1zZ3N0ciAi0L7Qv9C40YHQsNC90LjQtSDQvNC10YLQutC4IgogCi0jOiBidWlsdGluL3RhZy5jOjM5NgorIzogYnVpbHRpbi90YWcuYzo0MDkKIG1zZ2lkICJmb3JjZSBlZGl0IG9mIHRhZyBtZXNzYWdlIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzk3CisjOiBidWlsdGluL3RhZy5jOjQxMAogbXNnaWQgImFubm90YXRlZCBhbmQgR1BHLXNpZ25lZCB0YWciCiBtc2dzdHIgItCw0L3QvdC+0YLQuNGA0L7QstCw0L3QvdCw0Y8g0Lgg0L/QvtC00L/QuNGB0LDQvdC90LDRjyDRgSDQv9C+0LzQvtGJ0YzRjiBHUEcg0LzQtdGC0LrQsCIKIAotIzogYnVpbHRpbi90YWcuYzo0MDEKKyM6IGJ1aWx0aW4vdGFnLmM6NDEzCiBtc2dpZCAidXNlIGFub3RoZXIga2V5IHRvIHNpZ24gdGhlIHRhZyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC00YDRg9Cz0L7QuSDQutC70Y7RhyDQtNC70Y8g0L/QvtC00L/QuNGB0LDQvdC40Y8g0LzQtdGC0LrQuCIKIAotIzogYnVpbHRpbi90YWcuYzo0MDIKKyM6IGJ1aWx0aW4vdGFnLmM6NDE0CiBtc2dpZCAicmVwbGFjZSB0aGUgdGFnIGlmIGV4aXN0cyIKIG1zZ3N0ciAi0LfQsNC80LXQvdCwINC80LXRgtC60LgsINC10YHQu9C4INC+0L3QsCDRgdGD0YnQtdGB0YLQstGD0LXRgiIKIAotIzogYnVpbHRpbi90YWcuYzo0MDMgYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY5CisjOiBidWlsdGluL3RhZy5jOjQxNSBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjkKIG1zZ2lkICJjcmVhdGUgYSByZWZsb2ciCiBtc2dzdHIgItGB0L7Qt9C00LDRgtGMINC20YPRgNC90LDQuyDRgdGB0YvQu9C+0LoiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA1CisjOiBidWlsdGluL3RhZy5jOjQxNwogbXNnaWQgIlRhZyBsaXN0aW5nIG9wdGlvbnMiCiBtc2dzdHIgItCd0LDRgdGC0YDQvtC50LrQuCDQstGL0LLQvtC00LAg0YHQv9C40YHQutCwINC80LXRgtC+0LoiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA2CisjOiBidWlsdGluL3RhZy5jOjQxOAogbXNnaWQgInNob3cgdGFnIGxpc3QgaW4gY29sdW1ucyIKIG1zZ3N0ciAi0L/QvtC60LDQt9Cw0YLRjCDRgdC/0LjRgdC+0Log0LzQtdGC0L7QuiDQv9C+INGB0YLQvtC70LHRhtCw0LwiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA3IGJ1aWx0aW4vdGFnLmM6NDA5CisjOiBidWlsdGluL3RhZy5jOjQxOSBidWlsdGluL3RhZy5jOjQyMQogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAi0LLRi9Cy0L7QtCDRgtC+0LvRjNC60L4g0LzQtdGC0L7Quiwg0LrQvtGC0L7RgNGL0LUg0YHQvtC00LXRgNC20LDRgiDQutC+0LzQvNC40YIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA4IGJ1aWx0aW4vdGFnLmM6NDEwCisjOiBidWlsdGluL3RhZy5jOjQyMCBidWlsdGluL3RhZy5jOjQyMgogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAi0LLRi9Cy0L7QtCDRgtC+0LvRjNC60L4g0LzQtdGC0L7Quiwg0LrQvtGC0L7RgNGL0LUg0L3QtSDRgdC+0LTQtdGA0LbQsNGCINC60L7QvNC80LjRgiIKIAotIzogYnVpbHRpbi90YWcuYzo0MTEKKyM6IGJ1aWx0aW4vdGFnLmM6NDIzCiBtc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAi0LLRi9Cy0L7QtCDRgtC+0LvRjNC60L4g0YHQu9C40YLRi9GFINC80LXRgtC+0LoiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDEyCisjOiBidWlsdGluL3RhZy5jOjQyNAogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGFyZSBub3QgbWVyZ2VkIgogbXNnc3RyICLQstGL0LLQvtC0INGC0L7Qu9GM0LrQviDQvdC1INGB0LvQuNGC0YvRhSDQvNC10YLQvtC6IgogCi0jOiBidWlsdGluL3RhZy5jOjQxNworIzogYnVpbHRpbi90YWcuYzo0MjgKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3Mgb2YgdGhlIG9iamVjdCIKIG1zZ3N0ciAi0LLRi9Cy0L7QtCDRgtC+0LvRjNC60L4g0LzQtdGC0L7Quiwg0L7Qv9GA0LXQtNC10LvQtdC90L3QvtCz0L4g0L7QsdGK0LXQutGC0LAiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDYxCisjOiBidWlsdGluL3RhZy5jOjQ3MgogbXNnaWQgIi0tY29sdW1uIGFuZCAtbiBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWNvbHVtbiDQuCAtbiDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0LTQvdC+0LLRgNC10LzQtdC90L3QviIKIAotIzogYnVpbHRpbi90YWcuYzo0ODMKKyM6IGJ1aWx0aW4vdGFnLmM6NDk0CiBtc2dpZCAiLW4gb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgItC+0L/RhtC40Y4gLW4g0LzQvtC20L3QviDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YLQvtC70YzQutC+INCyINGA0LXQttC40LzQtSDRgdC/0LjRgdC60LAiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDg1CisjOiBidWlsdGluL3RhZy5jOjQ5NgogbXNnaWQgIi0tY29udGFpbnMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgItC+0L/RhtC40Y4gLS1jb250YWlucyDQvNC+0LbQvdC+INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRgtC+0LvRjNC60L4g0LIg0YDQtdC20LjQvNC1INGB0L/QuNGB0LrQsCIKIAotIzogYnVpbHRpbi90YWcuYzo0ODcKKyM6IGJ1aWx0aW4vdGFnLmM6NDk4CiBtc2dpZCAiLS1uby1jb250YWlucyBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAi0L7Qv9GG0LjRjiAtLW5vLWNvbnRhaW5zINC80L7QttC90L4g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGC0L7Qu9GM0LrQviDQsiDRgNC10LbQuNC80LUg0YHQv9C40YHQutCwIgogCi0jOiBidWlsdGluL3RhZy5jOjQ4OQorIzogYnVpbHRpbi90YWcuYzo1MDAKIG1zZ2lkICItLXBvaW50cy1hdCBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAi0L7Qv9GG0LjRjiAtLXBvaW50cy1hdCDQvNC+0LbQvdC+INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRgtC+0LvRjNC60L4g0LIg0YDQtdC20LjQvNC1INGB0L/QuNGB0LrQsCIKIAotIzogYnVpbHRpbi90YWcuYzo0OTEKKyM6IGJ1aWx0aW4vdGFnLmM6NTAyCiBtc2dpZCAiLS1tZXJnZWQgYW5kIC0tbm8tbWVyZ2VkIG9wdGlvbnMgYXJlIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgItC+0L/RhtC40LggLS1tZXJnZWQg0LggLS1uby1tZXJnZWQg0LzQvtC20L3QviDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YLQvtC70YzQutC+INCyINGA0LXQttC40LzQtSDRgdC/0LjRgdC60LAiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTAyCisjOiBidWlsdGluL3RhZy5jOjUxMwogbXNnaWQgIm9ubHkgb25lIC1GIG9yIC1tIG9wdGlvbiBpcyBhbGxvd2VkLiIKIG1zZ3N0ciAiLUYg0LggLW0g0L3QtdC70YzQt9GPINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQvtC00L3QvtCy0YDQtdC80LXQvdC90L4uIgogCi0jOiBidWlsdGluL3RhZy5jOjUyMQorIzogYnVpbHRpbi90YWcuYzo1MzIKIG1zZ2lkICJ0b28gbWFueSBwYXJhbXMiCiBtc2dzdHIgItC/0LXRgNC10LTQsNC90L4g0YHQu9C40YjQutC+0Lwg0LzQvdC+0LPQviDQv9Cw0YDQsNC80LXRgtGA0L7QsiIKIAotIzogYnVpbHRpbi90YWcuYzo1MjcKKyM6IGJ1aWx0aW4vdGFnLmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgdGFnIG5hbWUuIgogbXNnc3RyICLCqyVzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC00L7Qv9GD0YHRgtC40LzRi9C8INC40LzQtdC90LXQvCDQvNC10YLQutC4LiIKIAotIzogYnVpbHRpbi90YWcuYzo1MzIKKyM6IGJ1aWx0aW4vdGFnLmM6NTQzCiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICLQvNC10YLQutCwIMKrJXPCuyDRg9C20LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTYzCisjOiBidWlsdGluL3RhZy5jOjU3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJVcGRhdGVkIHRhZyAnJXMnICh3YXMgJXMpXG4iCiBtc2dzdHIgItCc0LXRgtC60LAgwqslc8K7INC+0LHQvdC+0LLQu9C10L3QsCAo0LHRi9C70LAgJXMpXG4iCkBAIC0xNTYwNiwyNDIgKzE4NjU4LDI0MiBAQAogbXNnaWQgIlVucGFja2luZyBvYmplY3RzIgogbXNnc3RyICLQoNCw0YHQv9Cw0LrQvtCy0LrQsCDQvtCx0YrQtdC60YLQvtCyIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjgyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjgzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5ICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINC60LDRgtCw0LvQvtCzICVzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZmlsZSAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDRhNCw0LnQuyAlcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA3CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgZmlsZSAlcyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCDRhNCw0LnQuyAlcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTMgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE0IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgZGlyZWN0b3J5ICVzIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINC60LDRgtCw0LvQvtCzICVzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEzOAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGVzdGluZyBtdGltZSBpbiAnJXMnICIKIG1zZ3N0ciAi0J/RgNC+0LLQtdGA0LrQsCBtdGltZSDQsiDCqyVzwrsgIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE1MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNTMKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBhZGRpbmcgYSBuZXcgZmlsZSIKIG1zZ3N0ciAi0LjQvdGE0L7RgNC80LDRhtC40Y8g0YHRgtCw0YLQuNGB0YLQuNC60Lgg0LrQsNGC0LDQu9C+0LPQsCDQvdC1INC40LfQvNC10L3Rj9C10YLRgdGPINC/0L7RgdC70LUg0LTQvtCx0LDQstC70LXQvdC40Y8g0L3QvtCy0L7Qs9C+INGE0LDQudC70LAiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTY1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE2NgogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGFkZGluZyBhIG5ldyBkaXJlY3RvcnkiCiBtc2dzdHIgItC40L3RhNC+0YDQvNCw0YbQuNGPINGB0YLQsNGC0LjRgdGC0LjQutC4INC60LDRgtCw0LvQvtCz0LAg0L3QtSDQuNC30LzQtdC90Y/QtdGC0YHRjyDQv9C+0YHQu9C1INC00L7QsdCw0LLQu9C10L3QuNGPINC90L7QstC+0LPQviDQutCw0YLQsNC70L7Qs9CwIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE3OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNzkKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGNoYW5nZXMgYWZ0ZXIgdXBkYXRpbmcgYSBmaWxlIgogbXNnc3RyICLQuNC90YTQvtGA0LzQsNGG0LjRjyDRgdGC0LDRgtC40YHRgtC40LrQuCDQutCw0YLQsNC70L7Qs9CwINC40LfQvNC10L3Rj9C10YLRgdGPINC/0L7RgdC70LUg0LTQvtCx0LDQstC70LXQvdC40Y8g0L3QvtCy0L7Qs9C+INGE0LDQudC70LAiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTg5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE5MAogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gY2hhbmdlcyBhZnRlciBhZGRpbmcgYSBmaWxlIGluc2lkZSBzdWJkaXJlY3RvcnkiCiBtc2dzdHIgItC40L3RhNC+0YDQvNCw0YbQuNGPINGB0YLQsNGC0LjRgdGC0LjQutC4INC60LDRgtCw0LvQvtCz0LAg0LjQt9C80LXQvdGP0LXRgtGB0Y8g0L/QvtGB0LvQtSDQtNC+0LHQsNCy0LvQtdC90LjRjyDQvdC+0LLQvtCz0L4g0YTQsNC50LvQsCDQstC90YPRgtGA0Lgg0L/QvtC00LrQsNGC0LDQu9C+0LPQsCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMDAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjAxCiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgZGVsZXRpbmcgYSBmaWxlIgogbXNnc3RyICLQuNC90YTQvtGA0LzQsNGG0LjRjyDRgdGC0LDRgtC40YHRgtC40LrQuCDQutCw0YLQsNC70L7Qs9CwINC90LUg0LjQt9C80LXQvdGP0LXRgtGB0Y8g0L/QvtGB0LvQtSDRg9C00LDQu9C10L3QuNGPINGE0LDQudC70LAiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjEzCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxNAogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGRlbGV0aW5nIGEgZGlyZWN0b3J5IgogbXNnc3RyICLQuNC90YTQvtGA0LzQsNGG0LjRjyDRgdGC0LDRgtC40YHRgtC40LrQuCDQutCw0YLQsNC70L7Qs9CwINC90LUg0LjQt9C80LXQvdGP0LXRgtGB0Y8g0L/QvtGB0LvQtSDRg9C00LDQu9C10L3QuNGPINC60LDRgtCw0LvQvtCz0LAiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMQogbXNnaWQgIiBPSyIKIG1zZ3N0ciAiIE9LIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjU4OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo1ODkKIG1zZ2lkICJnaXQgdXBkYXRlLWluZGV4IFs8b3B0aW9ucz5dIFstLV0gWzxmaWxlPi4uLl0iCiBtc2dzdHIgImdpdCB1cGRhdGUtaW5kZXggWzzQvtC/0YbQuNC4Pl0gWy0tXSBbPNGE0LDQudC7PuKApl0iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTQ0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3MQogbXNnaWQgImNvbnRpbnVlIHJlZnJlc2ggZXZlbiB3aGVuIGluZGV4IG5lZWRzIHVwZGF0ZSIKIG1zZ3N0ciAi0L/RgNC+0LTQvtC70LbQuNGC0Ywg0L7QsdC90L7QstC70LXQvdC40LUsINC00LDQttC1INC10YHQu9C4INC40L3QtNC10LrRgSDRgtGA0LXQsdGD0LXRgiDQvtCx0L3QvtCy0LvQtdC90LjRjyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NDcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTc0CiBtc2dpZCAicmVmcmVzaDogaWdub3JlIHN1Ym1vZHVsZXMiCiBtc2dzdHIgItC+0LHQvdC+0LLQu9C10L3QuNC1OiDQuNCz0L3QvtGA0LjRgNC+0LLQsNGC0Ywg0L/QvtC00LzQvtC00YPQu9C4IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk1MAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzcKIG1zZ2lkICJkbyBub3QgaWdub3JlIG5ldyBmaWxlcyIKIG1zZ3N0ciAi0L3QtSDQuNCz0L3QvtGA0LjRgNC+0LLQsNGC0Ywg0L3QvtCy0YvQtSDRhNCw0LnQu9GLIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk1MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzkKIG1zZ2lkICJsZXQgZmlsZXMgcmVwbGFjZSBkaXJlY3RvcmllcyBhbmQgdmljZS12ZXJzYSIKIG1zZ3N0ciAi0YDQsNC30YDQtdGI0LjRgtGMINGE0LDQudC70LDQvCDQt9Cw0LzQtdC90Y/RgtGMINC60LDRgtCw0LvQvtCz0Lgg0Lgg0L3QsNC+0LHQvtGA0L7RgiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NTQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgxCiBtc2dpZCAibm90aWNlIGZpbGVzIG1pc3NpbmcgZnJvbSB3b3JrdHJlZSIKIG1zZ3N0ciAi0LfQsNC80LXRh9Cw0YLRjCDRhNCw0LnQu9GLINC+0YLRgdGD0YLRgdGC0LLRg9GO0YnQuNC1INCyINGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LUiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTU2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4MwogbXNnaWQgInJlZnJlc2ggZXZlbiBpZiBpbmRleCBjb250YWlucyB1bm1lcmdlZCBlbnRyaWVzIgogbXNnc3RyICLQvtCx0L3QvtCy0LjRgtGMLCDQtNCw0LbQtSDQtdGB0LvQuCDQsiDQuNC90LTQtdC60YHQtSDQuNC80LXRjtGC0YHRjyDQvdC1INGB0LvQuNGC0YvQtSDQt9Cw0L/QuNGB0LgiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTU5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NgogbXNnaWQgInJlZnJlc2ggc3RhdCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAi0L7QsdC90L7QstC40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDRgdGC0LDRgtGD0YHQtSDRhNCw0LnQu9C+0LIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTYzCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5MAogbXNnaWQgImxpa2UgLS1yZWZyZXNoLCBidXQgaWdub3JlIGFzc3VtZS11bmNoYW5nZWQgc2V0dGluZyIKIG1zZ3N0ciAi0LrQsNC6IC0tcmVmcmVzaCwg0L3QviDQuNCz0L3QvtGA0LjRgNC+0LLQsNGC0Ywg0L3QsNGB0YLRgNC+0LnQutGDIGFzc3VtZS11bmNoYW5nZWQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTY3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NAogbXNnaWQgIjxtb2RlPiw8b2JqZWN0Piw8cGF0aD4iCiBtc2dzdHIgIjzRgNC10LbQuNC8INC00L7RgdGC0YPQv9CwPiw80L7QsdGK0LXQutGCPiw80L/Rg9GC0Yw+IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTUKIG1zZ2lkICJhZGQgdGhlIHNwZWNpZmllZCBlbnRyeSB0byB0aGUgaW5kZXgiCiBtc2dzdHIgItC00L7QsdCw0LLQuNGC0Ywg0YPQutCw0LfQsNC90L3Rg9GOINC30LDQv9C40YHRjCDQsiDQuNC90LTQtdC60YEiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTc3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDUKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIFwibm90IGNoYW5naW5nXCIiCiBtc2dzdHIgItC/0L7QvNC10YLQuNGC0Ywg0YTQsNC50LvRiyDQutCw0LogwqvQvdC1INC40LfQvNC10L3QtdC90L3Ri9C1wrsiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDgKIG1zZ2lkICJjbGVhciBhc3N1bWVkLXVuY2hhbmdlZCBiaXQiCiBtc2dzdHIgItGD0LHRgNCw0YLRjCDQv9C+0LzQtdGC0LrRgyBhc3N1bWVkLXVuY2hhbmdlZCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMQogbXNnaWQgIm1hcmsgZmlsZXMgYXMgXCJpbmRleC1vbmx5XCIiCiBtc2dzdHIgItC/0L7QvNC10YLQuNGC0Ywg0YTQsNC50LvRiyDQutCw0LogwqvRgtC+0LvRjNC60L4g0LIg0LjQvdC00LXQutGB0LXCuyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNAogbXNnaWQgImNsZWFyIHNraXAtd29ya3RyZWUgYml0IgogbXNnc3RyICLRg9Cx0YDQsNGC0Ywg0L/QvtC80LXRgtC60YMgc2tpcC13b3JrdHJlZSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNwogbXNnaWQgImFkZCB0byBpbmRleCBvbmx5OyBkbyBub3QgYWRkIGNvbnRlbnQgdG8gb2JqZWN0IGRhdGFiYXNlIgogbXNnc3RyICLRgtC+0LvRjNC60L4g0LTQvtCx0LDQstC40YLRjCDQsiDQuNC90LTQtdC60YE7INC90LUg0LTQvtCx0LDQstC70Y/RgtGMINGB0L7QtNC10YDQttC40LzQvtC1INCyINCx0LDQt9GDINC00LDQvdC90YvRhSDQvtCx0YrQtdC60YLQvtCyIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDE5CiBtc2dpZCAicmVtb3ZlIG5hbWVkIHBhdGhzIGV2ZW4gaWYgcHJlc2VudCBpbiB3b3JrdHJlZSIKIG1zZ3N0ciAi0YPQtNCw0LvQuNGC0Ywg0YPQutCw0LfQsNC90L3Ri9C1INC/0YPRgtC4LCDQtNCw0LbQtSDQtdGB0LvQuCDQvtC90Lgg0YHRg9GJ0LXRgdGC0LLRg9GO0YIg0LIg0YDQsNCx0L7Rh9C10Lwg0LrQsNGC0LDQu9C+0LPQtSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyMQogbXNnaWQgIndpdGggLS1zdGRpbjogaW5wdXQgbGluZXMgYXJlIHRlcm1pbmF0ZWQgYnkgbnVsbCBieXRlcyIKIG1zZ3N0ciAi0YEg0L7Qv9GG0LjQtdC5IC0tc3RkaW46INGB0YLRgNC+0LrQuCDQvdCwINCy0LLQvtC00LUg0L7RgtC00LXQu9GP0Y7RgtGB0Y8g0J3Qo9Cb0JXQktCr0Jwg0LHQsNC50YLQvtC8IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDIzCiBtc2dpZCAicmVhZCBsaXN0IG9mIHBhdGhzIHRvIGJlIHVwZGF0ZWQgZnJvbSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAi0L/RgNC+0YfQuNGC0LDRgtGMINGB0L/QuNGB0L7QuiDQvtCx0L3QvtCy0LvRj9C10LzRi9GFINC/0YPRgtC10Lkg0LjQtyDRgdGC0LDQvdC00LDRgNGC0L3QvtCz0L4g0LLQstC+0LTQsCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNwogbXNnaWQgImFkZCBlbnRyaWVzIGZyb20gc3RhbmRhcmQgaW5wdXQgdG8gdGhlIGluZGV4IgogbXNnc3RyICLQtNC+0LHQsNCy0LjRgtGMINC30LDQv9C40YHQuCDQuNC3INGB0YLQsNC90LTQsNGA0YLQvdC+0LPQviDQstCy0L7QtNCwINCyINC40L3QtNC10LrRgSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAzCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzEKIG1zZ2lkICJyZXBvcHVsYXRlIHN0YWdlcyAjMiBhbmQgIzMgZm9yIHRoZSBsaXN0ZWQgcGF0aHMiCiBtc2dzdHIgItC30LDQvdC+0LLQviDQt9Cw0L/QvtC70L3QuNGC0Ywg0LjQvdC00LXQutGBICMyINC4ICMzINC00LvRjyDRg9C60LDQt9Cw0L3QvdGL0YUg0L/Rg9GC0LXQuSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzUKIG1zZ2lkICJvbmx5IHVwZGF0ZSBlbnRyaWVzIHRoYXQgZGlmZmVyIGZyb20gSEVBRCIKIG1zZ3N0ciAi0L7QsdC90L7QstC40YLRjCDRgtC+0LvRjNC60L4g0LfQsNC/0LjRgdC4LCDQutC+0YLQvtGA0YvQtSDQvtGC0LvQuNGH0LDRjtGC0YHRjyDQvtGCIEhFQUQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDM5CiBtc2dpZCAiaWdub3JlIGZpbGVzIG1pc3NpbmcgZnJvbSB3b3JrdHJlZSIKIG1zZ3N0ciAi0LjQs9C90L7RgNC40YDQvtCy0LDRgtGMINGE0LDQudC70YssINC+0YLRgdGD0YLRgdGC0LLRg9GO0YnQuNC1INCyINGA0LDQsdC+0YfQtdC8INC60LDRgtCw0LvQvtCz0LUiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQyCiBtc2dpZCAicmVwb3J0IGFjdGlvbnMgdG8gc3RhbmRhcmQgb3V0cHV0IgogbXNnc3RyICLQstGL0LLQtdGB0YLQuCDQstGL0L/QvtC70L3Rj9C10LzRi9C1INC00LXQudGB0YLQstC40Y8g0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3Ri9C5INCy0YvQstC+0LQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ0CiBtc2dpZCAiKGZvciBwb3JjZWxhaW5zKSBmb3JnZXQgc2F2ZWQgdW5yZXNvbHZlZCBjb25mbGljdHMiCiBtc2dzdHIgIijQtNC70Y8g0LzQsNGI0LjQvdC90L7QuSDQvtCx0YDQsNCx0L7RgtC60LgpINC30LDQsdGL0YLRjCDRgdC+0YXRgNCw0L3QtdC90L3Ri9C1INC90LXRgNCw0LfRgNC10YjQtdC90L3Ri9C1INC60L7QvdGE0LvQuNC60YLRiyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDIwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDgKIG1zZ2lkICJ3cml0ZSBpbmRleCBpbiB0aGlzIGZvcm1hdCIKIG1zZ3N0ciAi0LfQsNC/0LjRgdCw0YLRjCDQuNC90LTQtdC60YEg0LIg0YPQutCw0LfQsNC90L3QvtC8INGE0L7RgNC80LDRgtC1IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjIKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1MAogbXNnaWQgImVuYWJsZSBvciBkaXNhYmxlIHNwbGl0IGluZGV4IgogbXNnc3RyICLRgNCw0LfRgNC10YjQuNGC0Ywg0LjQu9C4INC30LDQv9GA0LXRgtC40YLRjCDRgNCw0LfQtNC10LvRjNC90YvQuSDQuNC90LTQtdC60YEiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDUyCiBtc2dpZCAiZW5hYmxlL2Rpc2FibGUgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICLQstC60LvRjtGH0LjRgtGML9C+0YLQutC70Y7Rh9C40YLRjCDQutGN0Ygg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9GFINGE0LDQudC70L7QsiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTQKIG1zZ2lkICJ0ZXN0IGlmIHRoZSBmaWxlc3lzdGVtIHN1cHBvcnRzIHVudHJhY2tlZCBjYWNoZSIKIG1zZ3N0ciAi0L/RgNC+0LLQtdGA0LjRgtGMLCDRh9GC0L4g0YTQsNC50LvQvtCy0LDRjyDRgdC40YHRgtC10LzQsCDQv9C+0LTQtNC10YDQttC40LLQsNC10YIg0LrRjdGIINC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvRhSDRhNCw0LnQu9C+0LIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyOAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDU2CiBtc2dpZCAiZW5hYmxlIHVudHJhY2tlZCBjYWNoZSB3aXRob3V0IHRlc3RpbmcgdGhlIGZpbGVzeXN0ZW0iCiBtc2dzdHIgItCy0LrQu9GO0YfQuNGC0Ywg0LrRjdGIINC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvRhSDRhNCw0LnQu9C+0LIg0LHQtdC3INC/0YDQvtCy0LXRgNC60Lgg0YTQsNC50LvQvtCy0L7QuSDRgdC40YHRgtC10LzRiyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDMwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTgKIG1zZ2lkICJ3cml0ZSBvdXQgdGhlIGluZGV4IGV2ZW4gaWYgaXMgbm90IGZsYWdnZWQgYXMgY2hhbmdlZCIKIG1zZ3N0ciAi0LfQsNC/0LjRgdCw0YLRjCDQuNC90LTQtdC60YEsINC00LDQttC1INC10YHQu9C4INC+0L0g0L3QtSDQv9C+0LzQtdGH0LXQvSDQutCw0Log0LjQt9C80LXQvdC10L3QvdGL0LkiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzMgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDYwCiBtc2dpZCAiZW5hYmxlIG9yIGRpc2FibGUgZmlsZSBzeXN0ZW0gbW9uaXRvciIKIG1zZ3N0ciAi0LLQutC70Y7Rh9C40YLRjCDQuNC70Lgg0LLRi9C60LvRjtGH0LjRgtGMINC80L7QvdC40YLQvtGA0LjQvdCzINGE0LDQudC70L7QstC+0Lkg0YHQuNGB0YLQtdC80YsiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzNAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDYyCiBtc2dpZCAibWFyayBmaWxlcyBhcyBmc21vbml0b3IgdmFsaWQiCiBtc2dzdHIgItC/0L7QvNC10YLQuNGC0Ywg0YTQsNC50Lsg0LrQsNC6INC00LXQudGB0YLQstC40YLQtdC70YzQvdGL0Lkg0LIg0LzQvtC90LjRgtC+0YDQtSDRhNCw0LnQu9C+0LLQvtC5INGB0LjRgdGC0LXQvNGLIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2NQogbXNnaWQgImNsZWFyIGZzbW9uaXRvciB2YWxpZCBiaXQiCiBtc2dzdHIgItGB0L3Rj9GC0Ywg0L/QvtC80LXRgtC60YMg0LTQtdC50YHRgtCy0LjRgtC10LvRjNC90L7RgdGC0Lgg0LzQvtC90LjRgtC+0YDQtSDRhNCw0LnQu9C+0LLQvtC5INGB0LjRgdGC0LXQvNGLIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExMzYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE2OAogbXNnaWQgIiIKICJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgogImVuYWJsZSBzcGxpdCBpbmRleCIKIG1zZ3N0ciAi0L/QsNGA0LDQvNC10YLRgCAgY29yZS5zcGxpdEluZGV4INGD0YHRgtCw0L3QvtCy0LvQtdC9INCyIGZhbHNlOyDRg9C00LDQu9C40YLQtSDQuNC70Lgg0LjQt9C80LXQvdC40YLQtSDQtdCz0L4sINC10YHQu9C4INCy0Ysg0LTQtdC50YHRgtCy0LjRgtC10LvRjNC90L4g0YXQvtGC0LjRgtC1INCy0LrQu9GO0YfQuNGC0Ywg0YDQsNC30LTQtdC70LXQvdC90YvQuSDQuNC90LTQtdC60YEiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE0NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTc3CiBtc2dpZCAiIgogImNvcmUuc3BsaXRJbmRleCBpcyBzZXQgdG8gdHJ1ZTsgcmVtb3ZlIG9yIGNoYW5nZSBpdCwgaWYgeW91IHJlYWxseSB3YW50IHRvICIKICJkaXNhYmxlIHNwbGl0IGluZGV4IgogbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAICBjb3JlLnNwbGl0SW5kZXgg0YPRgdGC0LDQvdC+0LLQu9C10L0g0LIgdHJ1ZTsg0YPQtNCw0LvQuNGC0LUg0LjQu9C4INC40LfQvNC10L3QuNGC0LUg0LXQs9C+LCDQtdGB0LvQuCDQstGLINC00LXQudGB0YLQstC40YLQtdC70YzQvdC+INGF0L7RgtC40YLQtSDQvtGC0LrQu9GO0YfQuNGC0Ywg0YDQsNC30LTQtdC70LXQvdC90YvQuSDQuNC90LTQtdC60YEiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE1NgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTg4CiBtc2dpZCAiIgogImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCiAidG8gZGlzYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAIGNvcmUudW50cmFja2VkQ2FjaGUg0YPRgdGC0LDQvdC+0LLQu9C10L0gdHJ1ZTsg0YPQtNCw0LvQuNGC0LUg0LjQu9C4INC40LfQvNC10L3QuNGC0LUg0LXQs9C+LCDQtdGB0LvQuCDQstGLINC00LXQudGB0YLQstC40YLQtdC70YzQvdC+INGF0L7RgtC40YLQtSDRg9C00LDQu9C40YLRjCDQutGN0Ygg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9GFINGE0LDQudC70L7QsiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTYwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExOTIKIG1zZ2lkICJVbnRyYWNrZWQgY2FjaGUgZGlzYWJsZWQiCiBtc2dzdHIgItCa0Y3RiCDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0YUg0YTQsNC50LvQvtCyINC+0YLQutC70Y7Rh9C10L0iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE2OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjAwCiBtc2dpZCAiIgogImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQiCiAiIHRvIGVuYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAIGNvcmUudW50cmFja2VkQ2FjaGUg0YPRgdGC0LDQvdC+0LLQu9C10L0gZmFsc2U7INGD0LTQsNC70LjRgtC1INC40LvQuCDQuNC30LzQtdC90LjRgtC1INC10LPQviwg0LXRgdC70Lgg0LLRiyDQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3QviDRhdC+0YLQuNGC0LUg0LLQutC70Y7Rh9C40YLRjCDQutGN0Ygg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9GFINGE0LDQudC70L7QsiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTcyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW50cmFja2VkIGNhY2hlIGVuYWJsZWQgZm9yICclcyciCiBtc2dzdHIgItCa0Y3RiCDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0YUg0YTQsNC50LvQvtCyINCy0LrQu9GO0YfQtdC9INC00LvRjyDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4MAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjEyCiBtc2dpZCAiY29yZS5mc21vbml0b3IgaXMgdW5zZXQ7IHNldCBpdCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZW5hYmxlIGZzbW9uaXRvciIKIG1zZ3N0ciAi0L/QsNGA0LDQvNC10YLRgCBjb3JlLmZzbW9uaXRvciDQvdC1INGD0YHRgtCw0L3QvtCy0LvQtdC9OyDRg9GB0YLQsNC90L7QstC40YLQtSDQtdCz0L4g0LXRgdC70Lgg0LLRiyDQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3QviDRhdC+0YLQuNGC0LUg0LLQutC70Y7Rh9C40YLRjCDQvNC+0L3QuNGC0L7RgNC40L3QsyDRhNCw0LnQu9C+0LLQvtC5INGB0LjRgdGC0LXQvNGLIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExODQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIxNgogbXNnaWQgImZzbW9uaXRvciBlbmFibGVkIgogbXNnc3RyICLQvNC+0L3QuNGC0L7RgNC40L3QsyDRhNCw0LnQu9C+0LLQvtC5INGB0LjRgdGC0LXQvNGLINCy0LrQu9GO0YfRkdC9IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExODcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIxOQogbXNnaWQgIiIKICJjb3JlLmZzbW9uaXRvciBpcyBzZXQ7IHJlbW92ZSBpdCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZGlzYWJsZSBmc21vbml0b3IiCiBtc2dzdHIgItC/0LDRgNCw0LzQtdGC0YAgY29yZS5mc21vbml0b3Ig0YPRgdGC0LDQvdC+0LLQu9C10L07INGD0LTQsNC70LjRgtC1INC10LPQviDQtdGB0LvQuCDQstGLINC00LXQudGB0YLQstC40YLQtdC70YzQvdC+INGF0L7RgtC40YLQtSDQstGL0LrQu9GO0YfQuNGC0Ywg0LzQvtC90LjRgtC+0YDQuNC90LMg0YTQsNC50LvQvtCy0L7QuSDRgdC40YHRgtC10LzRiyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTkxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMjMKIG1zZ2lkICJmc21vbml0b3IgZGlzYWJsZWQiCiBtc2dzdHIgItC80L7QvdC40YLQvtGA0LjQvdCzINGE0LDQudC70L7QstC+0Lkg0YHQuNGB0YLQtdC80Ysg0LLRi9C60LvRjtGH0ZHQvSIKIApAQCAtMTU4ODUsNiArMTg5MzcsMTAgQEAKIG1zZ2lkICJnaXQgdXBsb2FkLXBhY2sgWzxvcHRpb25zPl0gPGRpcj4iCiBtc2dzdHIgImdpdCB1cGxvYWQtcGFjayBbPNC+0L/RhtC40Lg+XSA80LrQsNGC0LDQu9C+0LM+IgogCisjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjMgdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjE3Cittc2dpZCAicXVpdCBhZnRlciBhIHNpbmdsZSByZXF1ZXN0L3Jlc3BvbnNlIGV4Y2hhbmdlIgorbXNnc3RyICLQstGL0YXQvtC0INC/0L7RgdC70LUg0L7QsdC80LXQvdCwINC+0LTQvdC40Lwg0LfQsNC/0YDQvtGB0L7QvC/QvtGC0LLQtdGC0L7QvCIKKwogIzogYnVpbHRpbi91cGxvYWQtcGFjay5jOjI1CiBtc2dpZCAiZXhpdCBpbW1lZGlhdGVseSBhZnRlciBpbml0aWFsIHJlZiBhZHZlcnRpc2VtZW50IgogbXNnc3RyICLQstGL0YXQvtC00LjRgtGMINGB0YDQsNC30YMg0L/QvtGB0LvQtSDQvdCw0YfQsNC70YzQvdC+0LPQviDQvtCx0YrRj9Cy0LvQtdC90LjRjyDRgdC/0LjRgdC60LAg0YHRgdGL0LvQvtC6IgpAQCAtMTU5MjksMjYyICsxODk4NSwyOTMgQEAKIG1zZ2lkICJwcmludCB0YWcgY29udGVudHMiCiBtc2dzdHIgItCy0YvQstC10YHRgtC4INGB0L7QtNC10YDQttC40LzQvtC1INC80LXRgtC60LgiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxNworIzogYnVpbHRpbi93b3JrdHJlZS5jOjE4CiBtc2dpZCAiZ2l0IHdvcmt0cmVlIGFkZCBbPG9wdGlvbnM+XSA8cGF0aD4gWzxjb21taXQtaXNoPl0iCiBtc2dzdHIgImdpdCB3b3JrdHJlZSBhZGQgWzzQvtC/0YbQuNC4Pl0gPNC/0YPRgtGMPiBbPNGD0LrQsNC30LDRgtC10LvRjC3QutC+0LzQvNC40YLQsD5dIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6MTgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxOQogbXNnaWQgImdpdCB3b3JrdHJlZSBsaXN0IFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgd29ya3RyZWUgbGlzdCBbPNC+0L/RhtC40Lg+XSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjE5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjAKIG1zZ2lkICJnaXQgd29ya3RyZWUgbG9jayBbPG9wdGlvbnM+XSA8cGF0aD4iCiBtc2dzdHIgImdpdCB3b3JrdHJlZSBsb2NrIFs80L7Qv9GG0LjQuD5dIDzQv9GD0YLRjD4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjIxCiBtc2dpZCAiZ2l0IHdvcmt0cmVlIG1vdmUgPHdvcmt0cmVlPiA8bmV3LXBhdGg+IgogbXNnc3RyICJnaXQgd29ya3RyZWUgbW92ZSA80YDQsNCx0L7Rh9C40Lkt0LrQsNGC0LDQu9C+0LM+IDzQvdC+0LLRi9C5LdC/0YPRgtGMPiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjIxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjIKIG1zZ2lkICJnaXQgd29ya3RyZWUgcHJ1bmUgWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCB3b3JrdHJlZSBwcnVuZSBbPNC+0L/RhtC40Lg+XSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjIyCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjMKIG1zZ2lkICJnaXQgd29ya3RyZWUgcmVtb3ZlIFs8b3B0aW9ucz5dIDx3b3JrdHJlZT4iCiBtc2dzdHIgImdpdCB3b3JrdHJlZSByZW1vdmUgWzzQvtC/0YbQuNC4Pl0gPNGA0LDQsdC+0YfQuNC5LdC60LDRgtCw0LvQvtCzPiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjIzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjQKIG1zZ2lkICJnaXQgd29ya3RyZWUgdW5sb2NrIDxwYXRoPiIKIG1zZ3N0ciAiZ2l0IHdvcmt0cmVlIHVubG9jayA80L/Rg9GC0Yw+IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NTgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2MSBidWlsdGluL3dvcmt0cmVlLmM6ODkxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkZWxldGUgJyVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCDCqyVzwrsiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyB3b3JrdHJlZXMvJXM6IG5vdCBhIHZhbGlkIGRpcmVjdG9yeSIKIG1zZ3N0ciAi0KPQtNCw0LvQtdC90LjQtSDRgNCw0LHQvtGH0LjRhSDQutCw0YLQsNC70L7Qs9C+0LIvJXM6INC90LUg0Y/QstC70Y/QtdGC0YHRjyDQutCw0YLQsNC70L7Qs9C+0LwiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nIHdvcmt0cmVlcy8lczogZ2l0ZGlyIGZpbGUgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgItCj0LTQsNC70LXQvdC40LUg0YDQsNCx0L7Rh9C40YUg0LrQsNGC0LDQu9C+0LPQvtCyLyVzOiDRhNCw0LnQuyBnaXRkaXIg0L3QtSDRgdGD0YnQtdGB0YLQstGD0LXRgiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5IGJ1aWx0aW4vd29ya3RyZWUuYzo3OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkxIGJ1aWx0aW4vd29ya3RyZWUuYzoxMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiB1bmFibGUgdG8gcmVhZCBnaXRkaXIgZmlsZSAoJXMpIgogbXNnc3RyICLQo9C00LDQu9C10L3QuNC1INGA0LDQsdC+0YfQuNGFINC60LDRgtCw0LvQvtCz0L7Qsi8lczog0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0YTQsNC50LsgZ2l0ZGlyICglcykiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiBzaG9ydCByZWFkIChleHBlY3RlZCAlPFBSSXVNQVg+IGJ5dGVzLCByZWFkICIKICIlPFBSSXVNQVg+KSIKIG1zZ3N0ciAi0KPQtNCw0LvQtdC90LjQtSDRgNCw0LHQvtGH0LXQs9C+INC60LDRgtCw0LvQvtCz0LAvJXM6INC/0YDQvtGH0LjRgtCw0L3QviDQvNCw0LvQviDQtNCw0L3QvdGL0YUgKNC+0LbQuNC00LDQu9C+0YHRjCAlPFBSSXVNQVg+INCx0LDQudGCLCDQv9GA0L7Rh9C40YLQsNC90L4gJTxQUkl1TUFYPikiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5NgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjExOAogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyB3b3JrdHJlZXMvJXM6IGludmFsaWQgZ2l0ZGlyIGZpbGUiCiBtc2dzdHIgItCj0LTQsNC70LXQvdC40LUg0YDQsNCx0L7Rh9C40YUg0LrQsNGC0LDQu9C+0LPQvtCyLyVzOiDQvdC10LTQtdC50YHRgtCy0LjRgtC10LvRjNC90YvQuSDRhNCw0LnQuyBnaXRkaXIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxMDUKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiBnaXRkaXIgZmlsZSBwb2ludHMgdG8gbm9uLWV4aXN0ZW50IGxvY2F0aW9uIgogbXNnc3RyICLQo9C00LDQu9C10L3QuNC1INGA0LDQsdC+0YfQuNGFINC60LDRgtCw0LvQvtCz0L7Qsi8lczogZ2l0ZGlyINGD0LrQsNC30YvQstCw0LXRgiDQvdCwINC90LXRgdGD0YnQtdGB0YLQstGD0Y7RidC10LUg0YDQsNGB0L/QvtC70L7QttC10L3QuNC1IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6MTUyCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MTY2CiBtc2dpZCAicmVwb3J0IHBydW5lZCB3b3JraW5nIHRyZWVzIgogbXNnc3RyICLQstGL0LLQtdGB0YLQuCDRgdC/0LjRgdC+0Log0YPQtNCw0LvQtdC90L3Ri9GFINGA0LDQsdC+0YfQuNGFINC60LDRgtCw0LvQvtCz0L7QsiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjE1NAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjE2OAogbXNnaWQgImV4cGlyZSB3b3JraW5nIHRyZWVzIG9sZGVyIHRoYW4gPHRpbWU+IgogbXNnc3RyICLRg9C00LDQu9C40YLRjCDRgNCw0LHQvtGH0LjQtSDQutCw0YLQsNC70L7Qs9C4INGB0YLQsNGA0LXQtSDRh9C10LwgPNC00LDRgtCwLdC+0LrQvtC90YfQsNC90LjRjz4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMjkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAiwqslc8K7INGD0LbQtSDRgdGD0YnQtdGB0YLQstGD0LXRgiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjI2MAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmUtYWRkIHdvcmt0cmVlICclcyciCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJyVzJyBpcyBhIG1pc3NpbmcgYnV0IGxvY2tlZCB3b3JrdHJlZTtcbiIKKyJ1c2UgJ2FkZCAtZiAtZicgdG8gb3ZlcnJpZGUsIG9yICd1bmxvY2snIGFuZCAncHJ1bmUnIG9yICdyZW1vdmUnIHRvIGNsZWFyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiclcycgaXMgYSBtaXNzaW5nIGJ1dCBhbHJlYWR5IHJlZ2lzdGVyZWQgd29ya3RyZWU7XG4iCisidXNlICdhZGQgLWYnIHRvIG92ZXJyaWRlLCBvciAncHJ1bmUnIG9yICdyZW1vdmUnIHRvIGNsZWFyIgorbXNnc3RyICIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzozMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3Rvcnkgb2YgJyVzJyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQutCw0YLQsNC70L7QsyDCqyVzwrsiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzozNzMgYnVpbHRpbi93b3JrdHJlZS5jOjM3OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMiBidWlsdGluL3dvcmt0cmVlLmM6NDM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAobmV3IGJyYW5jaCAnJXMnKSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Mzc1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAocmVzZXR0aW5nIGJyYW5jaCAnJXMnOyB3YXMgYXQgJXMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzozODQKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChjaGVja2luZyBvdXQgJyVzJykiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjM5MAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKGRldGFjaGVkIEhFQUQgJXMpIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MzEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTAKIG1zZ2lkICJjaGVja291dCA8YnJhbmNoPiBldmVuIGlmIGFscmVhZHkgY2hlY2tlZCBvdXQgaW4gb3RoZXIgd29ya3RyZWUiCiBtc2dzdHIgItC/0LXRgNC10LrQu9GO0YfQuNGC0YzRgdGPINC90LAgPNCy0LXRgtC60LA+INC00LDQttC1INC10YHQu9C4INC+0L3QsCDRg9C20LUg0LDQutGC0LjQstC90LAg0LIg0LTRgNGD0LPQvtC8INGA0LDQsdC+0YfQtdGB0Lwg0LrQsNGC0LDQu9C+0LPQtSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzNAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MwogbXNnaWQgImNyZWF0ZSBhIG5ldyBicmFuY2giCiBtc2dzdHIgItGB0L7Qt9C00LDRgtGMINC90L7QstGD0Y4g0LLQtdGC0LrRgyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzNgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NQogbXNnaWQgImNyZWF0ZSBvciByZXNldCBhIGJyYW5jaCIKIG1zZ3N0ciAi0YHQvtC30LTQsNGC0Ywg0LjQu9C4INC/0LXRgNC10LnRgtC4INC90LAg0LLQtdGC0LrRgyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzOAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NwogbXNnaWQgInBvcHVsYXRlIHRoZSBuZXcgd29ya2luZyB0cmVlIgogbXNnc3RyICLQvdCw0L/QvtC70L3QuNGC0Ywg0L3QvtCy0YvQuSDRgNCw0LHQvtGH0LjQuSDQutCw0YLQsNC70L7QsyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5OAogbXNnaWQgImtlZXAgdGhlIG5ldyB3b3JraW5nIHRyZWUgbG9ja2VkIgogbXNnc3RyICLQtNC10YDQttCw0YLRjCDRgNCw0LHQvtGH0LjQuSDQutCw0YLQsNC70L7QsyDQt9Cw0LHQu9C+0LrQuNGA0L7QstCw0L3QvdGL0LwiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDEKIG1zZ2lkICJzZXQgdXAgdHJhY2tpbmcgbW9kZSAoc2VlIGdpdC1icmFuY2goMSkpIgogbXNnc3RyICLQvdCw0YHRgtGA0L7QuNGC0Ywg0YDQtdC20LjQvCDQvtGC0YHQu9C10LbQuNCy0LDQvdC40Y8g0LLQtdGC0LrQuCAo0YHQvNC+0YLRgNC40YLQtSBnaXQtYnJhbmNoKDEpKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0NAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwNAogbXNnaWQgInRyeSB0byBtYXRjaCB0aGUgbmV3IGJyYW5jaCBuYW1lIHdpdGggYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgogbXNnc3RyICLQv9GL0YLQsNGC0YzRgdGPINC90LDQudGC0Lgg0YHQvtC+0YLQstC10YLRgdGC0LLQuNC1INC40LzQtdC90Lgg0L3QvtCy0L7QuSDQstC10YLQutC4INGBINC40LzQtdC90LXQvCDQstC90LXRiNC90LXQuSDQstC10YLQutC4IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDUyCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTEyCiBtc2dpZCAiLWIsIC1CLCBhbmQgLS1kZXRhY2ggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLWIsIC1CINC4IC0tZGV0YWNoINC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NTExCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTczCiBtc2dpZCAiLS1bbm8tXXRyYWNrIGNhbiBvbmx5IGJlIHVzZWQgaWYgYSBuZXcgYnJhbmNoIGlzIGNyZWF0ZWQiCiBtc2dzdHIgIi0tW25vLV10cmFjayDQvNC+0LbQvdC+INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRgtC+0LvRjNC60L4g0LrQvtCz0LTQsCDQstGLINGB0L7Qt9C00LDRkdGC0LUg0L3QvtCy0YPRjiDQstC10YLQutGDIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjExCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjczCiBtc2dpZCAicmVhc29uIGZvciBsb2NraW5nIgogbXNnc3RyICLQv9GA0LjRh9C40L3QsCDQsdC70L7QutC40YDQvtCy0LrQuCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjYyMyBidWlsdGluL3dvcmt0cmVlLmM6NjU2IGJ1aWx0aW4vd29ya3RyZWUuYzo3MTAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NTAKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODUgYnVpbHRpbi93b3JrdHJlZS5jOjcxOCBidWlsdGluL3dvcmt0cmVlLmM6NzkyCisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgd29ya2luZyB0cmVlIgogbXNnc3RyICLCqyVzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINGA0LDQsdC+0YfQuNC8INC60LDRgtCw0LvQvtCz0L7QvCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjYyNSBidWlsdGluL3dvcmt0cmVlLmM6NjU4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njg3IGJ1aWx0aW4vd29ya3RyZWUuYzo3MjAKIG1zZ2lkICJUaGUgbWFpbiB3b3JraW5nIHRyZWUgY2Fubm90IGJlIGxvY2tlZCBvciB1bmxvY2tlZCIKIG1zZ3N0ciAi0JPQu9Cw0LLQvdGL0Lkg0YDQsNCx0L7Rh9C40Lkg0LrQsNGC0LDQu9C+0LMg0L3QtSDQvNC+0LbQtdGCINCx0YvRgtGMINC30LDQsdC70L7QutC40YDQvtCy0LDQvSDQuNC70Lgg0YDQsNC30LHQu9C+0LrQuNGA0L7QstCw0L0iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2MzAKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbHJlYWR5IGxvY2tlZCwgcmVhc29uOiAlcyIKIG1zZ3N0ciAiwqslc8K7INGD0LbQtSDQt9Cw0LHQu9C+0LrQuNGA0L7QstCw0L0sINC/0YDQuNGH0LjQvdCwOiAlcyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjYzMgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5NAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFscmVhZHkgbG9ja2VkIgogbXNnc3RyICLCqyVzwrsg0YPQttC1INC30LDQsdC70L7QutC40YDQvtCy0LDQvSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY2MAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjcyMgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBsb2NrZWQiCiBtc2dzdHIgIsKrJXPCuyDQvdC1INC30LDQsdC70L7QutC40YDQvtCy0LDQvSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjc2MwogbXNnaWQgIndvcmtpbmcgdHJlZXMgY29udGFpbmluZyBzdWJtb2R1bGVzIGNhbm5vdCBiZSBtb3ZlZCBvciByZW1vdmVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3MTIgYnVpbHRpbi93b3JrdHJlZS5jOjg1MgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3MQorbXNnaWQgImZvcmNlIG1vdmUgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5NCBidWlsdGluL3dvcmt0cmVlLmM6OTIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYSBtYWluIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzE3CisjOiBidWlsdGluL3dvcmt0cmVlLmM6Nzk5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBmaWd1cmUgb3V0IGRlc3RpbmF0aW9uIG5hbWUgZnJvbSAnJXMnIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3MjMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFyZ2V0ICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjczMAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxMwogIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3QgbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlcyIKK21zZ2lkICIiCisiY2Fubm90IG1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlLCBsb2NrIHJlYXNvbjogJXNcbiIKKyJ1c2UgJ21vdmUgLWYgLWYnIHRvIG92ZXJyaWRlIG9yIHVubG9jayBmaXJzdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzMyCi1tc2dpZCAiY2Fubm90IG1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlIgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxNQorbXNnaWQgIiIKKyJjYW5ub3QgbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWU7XG4iCisidXNlICdtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjczNQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ2YWxpZGF0aW9uIGZhaWxlZCwgY2Fubm90IG1vdmUgd29ya2luZyB0cmVlOiAlcyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzQwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODIzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBtb3ZlICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzg4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODcxCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBydW4gJ2dpdCBzdGF0dXMnIG9uICclcyciCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5MgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg3NQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGRpcnR5LCB1c2UgLS1mb3JjZSB0byBkZWxldGUgaXQiCiBtc2dzdHIgIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5NworIzogYnVpbHRpbi93b3JrdHJlZS5jOjg4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcnVuICdnaXQgc3RhdHVzJyBvbiAnJXMnLCBjb2RlICVkIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDggYnVpbHRpbi93b3JrdHJlZS5jOjgyMgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwMworbXNnaWQgImZvcmNlIHJlbW92YWwgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCittc2dzdHIgIiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyNgogIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlICclcyciCi1tc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0Ywgwqslc8K7IgotCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODM0Ci1tc2dpZCAiZm9yY2UgcmVtb3ZpbmcgZXZlbiBpZiB0aGUgd29ya3RyZWUgaXMgZGlydHkiCittc2dpZCAiIgorImNhbm5vdCByZW1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlLCBsb2NrIHJlYXNvbjogJXNcbiIKKyJ1c2UgJ3JlbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NTYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlcyIKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MjgKK21zZ2lkICIiCisiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWU7XG4iCisidXNlICdyZW1vdmUgLWYgLWYnIHRvIG92ZXJyaWRlIG9yIHVubG9jayBmaXJzdCIKIG1zZ3N0ciAiIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODU4Ci1tc2dpZCAiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUiCi1tc2dzdHIgIiIKLQotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg2MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ2YWxpZGF0aW9uIGZhaWxlZCwgY2Fubm90IHJlbW92ZSB3b3JraW5nIHRyZWU6ICVzIgogbXNnc3RyICIiCiAKLSM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjE0CisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzoxNQogbXNnaWQgImdpdCB3cml0ZS10cmVlIFstLW1pc3Npbmctb2tdIFstLXByZWZpeD08cHJlZml4Pi9dIgogbXNnc3RyICJnaXQgd3JpdGUtdHJlZSBbLS1taXNzaW5nLW9rXSBbLS1wcmVmaXg9PNC/0YDQtdGE0LjQutGBPi9dIgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyNworIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjgKIG1zZ2lkICI8cHJlZml4Pi8iCiBtc2dzdHIgIjzQv9GA0LXRhNC40LrRgT4vIgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyOAorIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjkKIG1zZ2lkICJ3cml0ZSB0cmVlIG9iamVjdCBmb3IgYSBzdWJkaXJlY3RvcnkgPHByZWZpeD4iCiBtc2dzdHIgItCy0YvQstC10YHRgtC4INC+0LHRitC10LrRgiDQtNC10YDQtdCy0LAg0LTQu9GPINC/0L7QtNC60LDRgtCw0LvQvtCz0LAg0YEgPNC/0YDQtdGE0LjQutGBPiIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MzAKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjMxCiBtc2dpZCAib25seSB1c2VmdWwgZm9yIGRlYnVnZ2luZyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINGC0L7Qu9GM0LrQviDQv9GA0Lgg0L7RgtC70LDQtNC60LUiCiAKLSM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjIyMgorIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgcGVybWlzc2lvbnMgb24geW91ciBzb2NrZXQgZGlyZWN0b3J5IGFyZSB0b28gbG9vc2U7IG90aGVyXG4iCkBAIC0xNjE5MywxMCArMTkyODAsMjcgQEAKICJcdGNobW9kIDA3MDAgJXMiCiBtc2dzdHIgItCf0YDQsNCy0LAg0LTQvtGB0YLRg9C/0LAg0Log0LLQsNGI0LXQvNGDINC60LDRgtCw0LvQvtCz0YMg0YHQvtC60LXRgtC+0LIg0YHQu9C40YjQutC+0Lwg0YHQstC+0LHQvtC00L3Rizsg0LTRgNGD0LPQtSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Lgg0LzQvtCz0YPQuCDRh9C40YLQsNGC0Ywg0LLQsNGI0Lgg0LfQsNC60Y3RiNC40YDQvtCy0LDQvdC90YvQtSDQv9Cw0YDQvtC70Lgg0LTQvtGB0YLRg9C/0LAuINCe0LHQtNGD0LzQsNC50YLQtSDQt9Cw0L/Rg9GB0Log0LrQvtC80LDQvdC00Ys6XG5cblx0Y2htb2QgMDcwMCAlcyIKIAotIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjcxCisjOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyNzIKIG1zZ2lkICJwcmludCBkZWJ1Z2dpbmcgbWVzc2FnZXMgdG8gc3RkZXJyIgogbXNnc3RyICLQstGL0LLQvtC0INC+0YLQu9Cw0LTQvtGH0L3Ri9GFINGB0L7QvtCx0YnQtdC90LjQuSDQvdCwIHN0ZGVyciIKIAorIzogdC9oZWxwZXIvdGVzdC1yZWFjaC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgJXMgaXMgbm90IG1hcmtlZCByZWFjaGFibGUiCittc2dzdHIgIiIKKworIzogdC9oZWxwZXIvdGVzdC1yZWFjaC5jOjE2MgorbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgbWFya2VkIHJlYWNoYWJsZSIKK21zZ3N0ciAiIgorCisjOiB0L2hlbHBlci90ZXN0LXNlcnZlLXYyLmM6NworbXNnaWQgInRlc3QtdG9vbCBzZXJ2ZS12MiBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiIgorCisjOiB0L2hlbHBlci90ZXN0LXNlcnZlLXYyLmM6MTkKK21zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGFkdmVydGlzaW5nIGNhcGFiaWxpdGllcyIKK21zZ3N0ciAiIgorCiAjOiBnaXQuYzoyNwogbXNnaWQgIiIKICJnaXQgWy0tdmVyc2lvbl0gWy0taGVscF0gWy1DIDxwYXRoPl0gWy1jIDxuYW1lPj08dmFsdWU+XVxuIgpAQCAtMTYyMTMsNjUgKzE5MzE3LDEzOSBAQAogInRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIG9yIGNvbmNlcHQuIgogbXNnc3RyICLCq2dpdCBoZWxwIC3QsMK7INC4IMKrZ2l0IGhlbHAgLWfCuyDQstGL0LLQvtC00LjRgiDRgdC/0LjRgdC+0Log0LTQvtGB0YLRg9C/0L3Ri9GFINC/0L7QtNC60L7QvNCw0L3QtCDQuFxu0L3QtdC60L7RgtC+0YDRi9C1INGA0YPQutC+0LLQvtC00YHRgtCy0LAg0L/QviDRgtC10LzQsNC8LiDQl9Cw0L/Rg9GB0YLQuNGC0LUgwqtnaXQgaGVscCA80LrQvtC80LDQvdC00LA+wrsg0LjQu9C4XG7Cq2dpdCBoZWxwIDzRgtC10YDQvNC40L0+wrssINGH0YLQvtCx0Ysg0L/RgNC+0YfQtdGB0YLRjCDQviDQutC+0L3QutGA0LXRgtC90YvRhSDQv9C+0LTQutC+0LzQsNC90LTQtSDQuNC70Lgg0YLQtdC80LUuIgogCi0jOiBnaXQuYzoxNzMKKyM6IGdpdC5jOjE4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBkaXJlY3RvcnkgZ2l2ZW4gZm9yIC0tZ2l0LWRpclxuIgogbXNnc3RyICIiCiAKLSM6IGdpdC5jOjE4NworIzogZ2l0LmM6MTk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIG5hbWVzcGFjZSBnaXZlbiBmb3IgLS1uYW1lc3BhY2VcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQuYzoyMDEKKyM6IGdpdC5jOjIxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBkaXJlY3RvcnkgZ2l2ZW4gZm9yIC0td29yay10cmVlXG4iCiBtc2dzdHIgIiIKIAotIzogZ2l0LmM6MjE1CisjOiBnaXQuYzoyMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gcHJlZml4IGdpdmVuIGZvciAtLXN1cGVyLXByZWZpeFxuIgogbXNnc3RyICIiCiAKLSM6IGdpdC5jOjIzNworIzogZ2l0LmM6MjQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIi1jIGV4cGVjdHMgYSBjb25maWd1cmF0aW9uIHN0cmluZ1xuIgogbXNnc3RyICIiCiAKLSM6IGdpdC5jOjI3NQorIzogZ2l0LmM6Mjg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLUNcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQuYzozMDAKKyM6IGdpdC5jOjMxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG9wdGlvbjogJXNcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQuYzo3NzAKKyM6IGdpdC5jOjM1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSBleHBhbmRpbmcgYWxpYXMgJyVzJzogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzozNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsaWFzICclcycgY2hhbmdlcyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4iCisiWW91IGNhbiB1c2UgJyFnaXQnIGluIHRoZSBhbGlhcyB0byBkbyB0aGlzIgorbXNnc3RyICIiCisKKyM6IGdpdC5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBhbGlhcyBmb3IgJXMiCittc2dzdHIgIiIKKworIzogZ2l0LmM6Mzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlY3Vyc2l2ZSBhbGlhczogJXMiCittc2dzdHIgIiIKKworIzogZ2l0LmM6NDU5Cittc2dpZCAid3JpdGUgZmFpbHVyZSBvbiBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgIiIKKworIzogZ2l0LmM6NDYxCittc2dpZCAidW5rbm93biB3cml0ZSBmYWlsdXJlIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBnaXQuYzo0NjMKK21zZ2lkICJjbG9zZSBmYWlsZWQgb24gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IGdpdC5jOjc5NworIywgYy1mb3JtYXQKK21zZ2lkICJhbGlhcyBsb29wIGRldGVjdGVkOiBleHBhbnNpb24gb2YgJyVzJyBkb2VzIG5vdCB0ZXJtaW5hdGU6JXMiCittc2dzdHIgIiIKKworIzogZ2l0LmM6ODQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBoYW5kbGUgJXMgYXMgYSBidWlsdGluIgorbXNnc3RyICIiCisKKyM6IGdpdC5jOjg2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXNhZ2U6ICVzXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZ2l0LmM6ODgwCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGFuc2lvbiBvZiBhbGlhcyAnJXMnIGZhaWxlZDsgJyVzJyBpcyBub3QgYSBnaXQgY29tbWFuZFxuIgogbXNnc3RyICIiCiAKLSM6IGdpdC5jOjc4MgorIzogZ2l0LmM6ODkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBydW4gY29tbWFuZCAnJXMnOiAlc1xuIgogbXNnc3RyICIiCiAKLSM6IGh0dHAuYzozNDgKKyM6IGh0dHAuYzozNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAibmVnYXRpdmUgdmFsdWUgZm9yIGh0dHAucG9zdGJ1ZmZlcjsgZGVmYXVsdGluZyB0byAlZCIKIG1zZ3N0ciAi0L7RgtGA0LjRhtCw0YLQtdC70YzQvdC+0LUg0LfQvdCw0YfQtdC90LjQtSBodHRwLnBvc3RidWZmZXI7INC40YHQv9C+0LvRjNC30YPRjiDRgdGC0LDQvdC00LDRgNGC0L3QvtC1INC30L3QsNGH0LXQvdC40LUgJWQiCiAKLSM6IGh0dHAuYzozNjkKKyM6IGh0dHAuYzozOTkKIG1zZ2lkICJEZWxlZ2F0aW9uIGNvbnRyb2wgaXMgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjIyLjAiCiBtc2dzdHIgItCU0LXQu9C10LPQsNGG0LjRjyDQv9GA0L7QstC10YDQutC4INC/0L7Qu9C90L7QvNC+0YfQuNC5INC90LUg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGC0YHRjyDRgSBjVVJMIDwgNy4yMi4wIgogCi0jOiBodHRwLmM6Mzc4CisjOiBodHRwLmM6NDA4CiBtc2dpZCAiUHVibGljIGtleSBwaW5uaW5nIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy40NC4wIgogbXNnc3RyICJQdWJsaWMga2V5IHBpbm5pbmcg0L3QtSDQv9C+0LTQtNC10YDQttC40LLQsNC10YLRgdGPINGBIGNVUkwgPCA3LjQ0LjAiCiAKLSM6IGh0dHAuYzoxODU0CisjOiBodHRwLmM6ODc2Cittc2dpZCAiQ1VSTFNTTE9QVF9OT19SRVZPS0Ugbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjQ0LjAiCittc2dzdHIgIiIKKworIzogaHR0cC5jOjk0OQorbXNnaWQgIlByb3RvY29sIHJlc3RyaWN0aW9ucyBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuMTkuNCIKK21zZ3N0ciAiIgorCisjOiBodHRwLmM6MTA4NQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnN1cHBvcnRlZCBTU0wgYmFja2VuZCAnJXMnLiBTdXBwb3J0ZWQgU1NMIGJhY2tlbmRzOiIKK21zZ3N0ciAiIgorCisjOiBodHRwLmM6MTA5MgorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgc2V0IFNTTCBiYWNrZW5kIHRvICclcyc6IGNVUkwgd2FzIGJ1aWx0IHdpdGhvdXQgU1NMIGJhY2tlbmRzIgorbXNnc3RyICIiCisKKyM6IGh0dHAuYzoxMDk2CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBzZXQgU1NMIGJhY2tlbmQgdG8gJyVzJzogYWxyZWFkeSBzZXQiCittc2dzdHIgIiIKKworIzogaHR0cC5jOjE5NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInVuYWJsZSB0byB1cGRhdGUgdXJsIGJhc2UgZnJvbSByZWRpcmVjdGlvbjpcbiIKQEAgLTE2Mjc5LDk0ICsxOTQ1NywyMTQgQEAKICIgICByZWRpcmVjdDogJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7QsdC90L7QstC40YLRjCDQsdCw0LfQvtCy0YvQuSB1cmwg0LjQtyDQv9C10YDQtdCw0LTRgNC10YHQsNGG0LjQuDpcbiAg0LfQsNC/0YDQvtGI0LXQvdC+OiAlc1xuICAg0L/QtdGA0LXQsNC00YDQtdGB0L7QstCw0L3QvjogJXMiCiAKLSM6IHJlbW90ZS1jdXJsLmM6NDAxCisjOiByZW1vdGUtY3VybC5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHF1b3RpbmcgaW4gcHVzaC1vcHRpb24gdmFsdWU6ICclcyciCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzoyNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXNpbmZvL3JlZnMgbm90IHZhbGlkOiBpcyB0aGlzIGEgZ2l0IHJlcG9zaXRvcnk/IgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6MzU1Cittc2dpZCAiaW52YWxpZCBzZXJ2ZXIgcmVzcG9uc2U7IGV4cGVjdGVkIHNlcnZpY2UsIGdvdCBmbHVzaCBwYWNrZXQiCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzozODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzZXJ2ZXIgcmVzcG9uc2U7IGdvdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlcG9zaXRvcnkgJyVzJyBub3QgZm91bmQiCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzo0NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpb24gZmFpbGVkIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6NDU0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgJyVzJzogJXMiCittc2dzdHIgIsKrJXPCuyDQvdC10LTQvtGB0YLRg9C/0L3QvjogJXMiCisKKyM6IHJlbW90ZS1jdXJsLmM6NDYwCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZGlyZWN0aW5nIHRvICVzIgogbXNnc3RyICLQv9C10YDQtdCw0LTRgNC10YHQsNGG0LjRjyDQvdCwICVzIgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo1OQorIzogcmVtb3RlLWN1cmwuYzo1ODQKK21zZ2lkICJzaG91bGRuJ3QgaGF2ZSBFT0Ygd2hlbiBub3QgZ2VudGxlIG9uIEVPRiIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjY2NAorbXNnaWQgInVuYWJsZSB0byByZXdpbmQgcnBjIHBvc3QgZGF0YSAtIHRyeSBpbmNyZWFzaW5nIGh0dHAucG9zdEJ1ZmZlciIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjcyNAorIywgYy1mb3JtYXQKK21zZ2lkICJSUEMgZmFpbGVkOyAlcyIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjc2NAorbXNnaWQgImNhbm5vdCBoYW5kbGUgcHVzaGVzIHRoaXMgYmlnIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6ODc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkZWZsYXRlIHJlcXVlc3Q7IHpsaWIgZGVmbGF0ZSBlcnJvciAlZCIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjg4MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGVuZCBlcnJvciAlZCIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjEwMTQKK21zZ2lkICJkdW1iIGh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjYXBhYmlsaXRpZXMiCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzoxMDI4Cittc2dpZCAiZmV0Y2ggZmFpbGVkLiIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjEwNzYKK21zZ2lkICJjYW5ub3QgZmV0Y2ggYnkgc2hhMSBvdmVyIHNtYXJ0IGh0dHAiCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzoxMTIwIHJlbW90ZS1jdXJsLmM6MTEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogZXhwZWN0ZWQgc2hhL3JlZiwgZ290ICclcyciCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzoxMTM4IHJlbW90ZS1jdXJsLmM6MTI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJodHRwIHRyYW5zcG9ydCBkb2VzIG5vdCBzdXBwb3J0ICVzIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTE3NAorbXNnaWQgImdpdC1odHRwLXB1c2ggZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTM2MAorbXNnaWQgInJlbW90ZS1jdXJsOiB1c2FnZTogZ2l0IHJlbW90ZS1jdXJsIDxyZW1vdGU+IFs8dXJsPl0iCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzoxMzkyCittc2dpZCAicmVtb3RlLWN1cmw6IGVycm9yIHJlYWRpbmcgY29tbWFuZCBzdHJlYW0gZnJvbSBnaXQiCittc2dzdHIgIiIKKworIzogcmVtb3RlLWN1cmwuYzoxMzk5Cittc2dpZCAicmVtb3RlLWN1cmw6IGZldGNoIGF0dGVtcHRlZCB3aXRob3V0IGEgbG9jYWwgcmVwbyIKK21zZ3N0ciAiIgorCisjOiByZW1vdGUtY3VybC5jOjE0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlLWN1cmw6IHVua25vd24gY29tbWFuZCAnJXMnIGZyb20gZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjYxCiBtc2dpZCAiYXJncyIKIG1zZ3N0ciAi0LDRgNCz0YPQvNC10L3RgtGLIgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo2MAorIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6NjIKIG1zZ2lkICJvYmplY3QgZmlsdGVyaW5nIgogbXNnc3RyICLRhNC40LvRjNGC0YDQsNGG0LjRjyDQvtCx0YrQtdC60YLQvtCyIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MTU3CisjOiBwYXJzZS1vcHRpb25zLmg6MTcwCiBtc2dpZCAiZXhwaXJ5LWRhdGUiCiBtc2dzdHIgItC00LDRgtCwLdC+0LrQvtC90YfQsNC90LjRjyIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjE3MgorIzogcGFyc2Utb3B0aW9ucy5oOjE4NAogbXNnaWQgIm5vLW9wIChiYWNrd2FyZCBjb21wYXRpYmlsaXR5KSIKIG1zZ3N0ciAi0L3QuNGH0LXQs9C+INC90LUg0LTQtdC70LDQtdGCICjQvtGB0YLQsNCy0LvQtdC90L4g0LTQu9GPINC+0LHRgNCw0YLQvdC+0Lkg0YHQvtCy0LzQtdGB0YLQuNC80L7RgdGC0LgpIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MjUxCisjOiBwYXJzZS1vcHRpb25zLmg6MzA0CiBtc2dpZCAiYmUgbW9yZSB2ZXJib3NlIgogbXNnc3RyICLQsdGL0YLRjCDQvNC90L7Qs9C+0YHQu9C+0LLQvdC10LUiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoyNTMKKyM6IHBhcnNlLW9wdGlvbnMuaDozMDYKIG1zZ2lkICJiZSBtb3JlIHF1aWV0IgogbXNnc3RyICLRgtC40YXQuNC5INGA0LXQttC40LwiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoyNTkKKyM6IHBhcnNlLW9wdGlvbnMuaDozMTIKIG1zZ2lkICJ1c2UgPG4+IGRpZ2l0cyB0byBkaXNwbGF5IFNIQS0xcyIKIG1zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIDxuPiDRhtC40YTRgCDQtNC70Y8g0LLRi9Cy0L7QtNCwIFNIQS0xIgogCisjOiBwYXJzZS1vcHRpb25zLmg6MzMxCittc2dpZCAiaG93IHRvIHN0cmlwIHNwYWNlcyBhbmQgI2NvbW1lbnRzIGZyb20gbWVzc2FnZSIKK21zZ3N0ciAi0LrQsNC6INGD0LTQsNC70Y/RgtGMINC/0YDQvtCx0LXQu9GLINC4ICPQutC+0LzQvNC10L3RgtCw0YDQuNC4INC40Lcg0YHQvtC+0LHRidC10L3QuNGPINC60L7QvNC80LjRgtCwIgorCisjOiByZWYtZmlsdGVyLmg6MTAxCittc2dpZCAia2V5IgorbXNnc3RyICLQutC70Y7RhyIKKworIzogcmVmLWZpbHRlci5oOjEwMQorbXNnaWQgImZpZWxkIG5hbWUgdG8gc29ydCBvbiIKK21zZ3N0ciAi0LjQvNGPINC/0L7Qu9GPLCDQv9C+INC60L7RgtC+0YDQvtC80YMg0LLRi9C/0L7Qu9C90LjRgtGMINGB0L7RgNGC0LjRgNC+0LLQutGDIgorCisjOiByZXJlcmUuaDo0NAorbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKK21zZ3N0ciAi0L7QsdC90L7QstC40YLRjCDQuNC90LTQtdC60YEg0YEg0L/QvtC80L7RidGM0Y4g0L/QtdGA0LXQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjRjyDRgNCw0LfRgNC10YjQtdC90LjRjyDQutC+0L3RhNC70LjQutGC0LAsINC10YHQu9C4INCy0L7Qt9C80L7QttC90L4iCisKICM6IGNvbW1hbmQtbGlzdC5oOjUwCiBtc2dpZCAiQWRkIGZpbGUgY29udGVudHMgdG8gdGhlIGluZGV4IgogbXNnc3RyICLQlNC+0LHQsNCy0LvQtdC90LjQtSDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+INGE0LDQudC70LAg0LIg0LjQvdC00LXQutGBIgogCiAjOiBjb21tYW5kLWxpc3QuaDo1MQogbXNnaWQgIkFwcGx5IGEgc2VyaWVzIG9mIHBhdGNoZXMgZnJvbSBhIG1haWxib3giCi1tc2dzdHIgItCf0YDQuNC80LXQvdC40YLRjCDRgdC10YDQuNGOINC/0LDRgtGH0LXQuSDQuNC3INC/0L7Rh9GC0L7QstC+0LPQviDRgdC+0L7QsdGJ0LXQvdC40Y8iCittc2dzdHIgItCf0YDQuNC80LXQvdC10L3QuNC1INGB0LXRgNC40Lgg0L/QsNGC0YfQtdC5INC40Lcg0L/QvtGH0YLQvtCy0L7Qs9C+INGB0L7QvtCx0YnQtdC90LjRjyIKIAogIzogY29tbWFuZC1saXN0Lmg6NTIKIG1zZ2lkICJBbm5vdGF0ZSBmaWxlIGxpbmVzIHdpdGggY29tbWl0IGluZm9ybWF0aW9uIgotbXNnc3RyICLQkNC90L3QvtGC0LjRgNC+0LLQsNGC0Ywg0YHRgtGA0L7QutC4INGE0LDQudC70LAg0LjQvdGE0L7RgNC80LDRhtC40LXQuSDQviDQutC+0LzQvNC40YLQsNGFIgorbXNnc3RyICLQkNC90L3QvtGC0LjRgNC+0LLQsNC90LjQtSDRgdGC0YDQvtC6INGE0LDQudC70LAg0LjQvdGE0L7RgNC80LDRhtC40LXQuSDQviDQutC+0LzQvNC40YLQsNGFIgogCiAjOiBjb21tYW5kLWxpc3QuaDo1MwogbXNnaWQgIkFwcGx5IGEgcGF0Y2ggdG8gZmlsZXMgYW5kL29yIHRvIHRoZSBpbmRleCIKLW1zZ3N0ciAi0J/RgNC40LzQtdC90LjRgtGMINC/0LDRgtGHINC6INGE0LDQudC70LDQvCDQuC/QuNC70Lgg0LjQvdC00LXQutGB0YMiCittc2dzdHIgItCf0YDQuNC80LXQvdC10L3QuNC1INC/0LDRgtGH0LAg0Log0YTQsNC50LvQsNC8INC4L9C40LvQuCDQuNC90LTQtdC60YHRgyIKIAogIzogY29tbWFuZC1saXN0Lmg6NTQKLW1zZ2lkICJJbXBvcnQgYW4gQXJjaCByZXBvc2l0b3J5IGludG8gR2l0IgotbXNnc3RyICLQmNC80L/QvtGA0YLQuNGA0L7QstCw0YLRjCDRgNC10L/QvtC30LjRgtC+0YDQuNC5IEFyY2gg0LIgR2l0IgorbXNnaWQgIkltcG9ydCBhIEdOVSBBcmNoIHJlcG9zaXRvcnkgaW50byBHaXQiCittc2dzdHIgItCY0LzQv9C+0YDRgtC40YDQvtCy0LDQvdC40LUgR05VIEFyY2gg0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyDQsiBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjU1CiBtc2dpZCAiQ3JlYXRlIGFuIGFyY2hpdmUgb2YgZmlsZXMgZnJvbSBhIG5hbWVkIHRyZWUiCi1tc2dzdHIgItCh0LTQtdC70LDRgtGMINCw0YDRhdC40LIg0YTQsNC50LvQvtCyINC40Lcg0YPQutCw0LfQsNC90L3QvtCz0L4g0LTQtdGA0LXQstCwIgorbXNnc3RyICLQodC+0LfQtNCw0L3QuNC1INCw0YDRhdC40LLQsCDRhNCw0LnQu9C+0LIg0LjQtyDRg9C60LDQt9Cw0L3QvdC+0LPQviDQtNC10YDQtdCy0LAiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjU2CiBtc2dpZCAiVXNlIGJpbmFyeSBzZWFyY2ggdG8gZmluZCB0aGUgY29tbWl0IHRoYXQgaW50cm9kdWNlZCBhIGJ1ZyIKLW1zZ3N0ciAi0JLRi9C/0L7Qu9C90LjRgtGMINC00LLQvtC40YfQvdGL0Lkg0L/QvtC40YHQuiDQuNC30LzQtdC90LXQvdC40Y8sINC60L7RgtC+0YDQvtC1INCy0L3QvtGB0LjRgiDQvtGI0LjQsdC60YMiCittc2dzdHIgItCS0YvQv9C+0LvQvdC10L3QuNC1INC00LLQvtC40YfQvdC+0LPQviDQv9C+0LjRgdC60LAg0LrQvtC80LzQuNGC0LAsINC60L7RgtC+0YDRi9C5INCy0L3QvtGB0LjRgiDQvtGI0LjQsdC60YMiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjU3CiBtc2dpZCAiU2hvdyB3aGF0IHJldmlzaW9uIGFuZCBhdXRob3IgbGFzdCBtb2RpZmllZCBlYWNoIGxpbmUgb2YgYSBmaWxlIgotbXNnc3RyICIiCittc2dzdHIgItCf0L7QutCw0Lcg0YDQtdC00LDQutGG0LjQuCDQuCDQsNCy0YLQvtGA0LAg0L/QvtGB0LvQtdC00L3QtdCz0L4g0LjQt9C80LXQvdC40LLRiNC10LPQviDQutCw0LbQtNGD0Y4g0YHRgtGA0L7QutGDINGE0LDQudC70LAiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjU4CiBtc2dpZCAiTGlzdCwgY3JlYXRlLCBvciBkZWxldGUgYnJhbmNoZXMiCi1tc2dzdHIgItCS0YvQstC+0LQg0YHQv9C40YHQutCwINCy0LXRgtC+0LosICDQuNGFINGB0L7Qt9C00LDQvdC40LUg0LjQu9C4INGD0LTQsNC70LXQvdC40LUiCittc2dzdHIgItCS0YvQstC+0LQg0YHQv9C40YHQutCwLCDRgdC+0LfQtNCw0L3QuNC1INC40LvQuCDRg9C00LDQu9C10L3QuNC1INCy0LXRgtC+0LoiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjU5CiBtc2dpZCAiTW92ZSBvYmplY3RzIGFuZCByZWZzIGJ5IGFyY2hpdmUiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0J/QtdGA0LXQvNC10YnQtdC90LjQtSDQvtCx0YrQtdC60YLQvtCyINC4INGB0YHRi9C70L7QuiDQv9C+INCw0YDRhdC40LLRgyIKIAogIzogY29tbWFuZC1saXN0Lmg6NjAKIG1zZ2lkICJQcm92aWRlIGNvbnRlbnQgb3IgdHlwZSBhbmQgc2l6ZSBpbmZvcm1hdGlvbiBmb3IgcmVwb3NpdG9yeSBvYmplY3RzIgotbXNnc3RyICIiCittc2dzdHIgItCS0YvQstC+0LQg0YHQvtC00LXRgNC20LjQvNC+0LPQviDQuNC70Lgg0YLQuNC/0LAg0Lgg0LjQvdGE0L7RgNC80LDRhtC40Lgg0L4g0YDQsNC30LzQtdGA0LUg0LTQu9GPINC+0LHRitC10LrRgtC+0LIg0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyIKIAogIzogY29tbWFuZC1saXN0Lmg6NjEKIG1zZ2lkICJEaXNwbGF5IGdpdGF0dHJpYnV0ZXMgaW5mb3JtYXRpb24iCi1tc2dzdHIgIiIKK21zZ3N0ciAi0JLRi9Cy0L7QtCDQuNC90YTQvtGA0LzQsNGG0LjQuCDQuNC3IGdpdGF0dHJpYnV0ZXMiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjYyCiBtc2dpZCAiRGVidWcgZ2l0aWdub3JlIC8gZXhjbHVkZSBmaWxlcyIKLW1zZ3N0ciAiIgorbXNnc3RyICLQntGC0LvQsNC00LrQsCDRhNCw0LnQu9C+0LIgZ2l0aWdub3JlIC8gZXhjbHVkZSIKIAogIzogY29tbWFuZC1saXN0Lmg6NjMKIG1zZ2lkICJTaG93IGNhbm9uaWNhbCBuYW1lcyBhbmQgZW1haWwgYWRkcmVzc2VzIG9mIGNvbnRhY3RzIgotbXNnc3RyICIiCittc2dzdHIgItCS0YvQstC+0LQg0LrQsNC90L7QvdC40YfQvdGL0YUg0LjQvNGR0L0g0Lgg0LDQtNGA0LXRgdC+0LIg0Y3Qu9C10LrRgtGA0L7QvdC90L7QuSDQv9C+0YfRgtGLINC60L7QvdGC0LDQutGC0L7QsiIKIAogIzogY29tbWFuZC1saXN0Lmg6NjQKIG1zZ2lkICJTd2l0Y2ggYnJhbmNoZXMgb3IgcmVzdG9yZSB3b3JraW5nIHRyZWUgZmlsZXMiCkBAIC0xNjM3NCwyNyArMTk2NzIsMjcgQEAKIAogIzogY29tbWFuZC1saXN0Lmg6NjUKIG1zZ2lkICJDb3B5IGZpbGVzIGZyb20gdGhlIGluZGV4IHRvIHRoZSB3b3JraW5nIHRyZWUiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0JrQvtC/0LjRgNC+0LLQsNC90LjQtSDRhNCw0LnQu9C+0LIg0LjQtyDQuNC90LTQtdC60YHQsCDQsiDRgNCw0LHQvtGH0LjQuSDQutCw0YLQsNC70L7QsyIKIAogIzogY29tbWFuZC1saXN0Lmg6NjYKIG1zZ2lkICJFbnN1cmVzIHRoYXQgYSByZWZlcmVuY2UgbmFtZSBpcyB3ZWxsIGZvcm1lZCIKLW1zZ3N0ciAiIgorbXNnc3RyICLQo9C00L7RgdGC0L7QstC10YDQuNGC0YzRgdGPLCDRh9GC0L4g0LjQvNGPINGB0YHRi9C70LrQuCDQv9GA0LDQstC40LvRjNC90L4g0YHRhNC+0YDQvNC40YDQvtCy0LDQvdC+IgogCiAjOiBjb21tYW5kLWxpc3QuaDo2NwogbXNnaWQgIkZpbmQgY29tbWl0cyB5ZXQgdG8gYmUgYXBwbGllZCB0byB1cHN0cmVhbSIKLW1zZ3N0ciAiIgorbXNnc3RyICLQn9C+0LjRgdC6INC60L7QvNC80LjRgtC+0LIg0LrQvtGC0L7RgNGL0LUg0LXRidC1INC90LUg0L/RgNC40LzQtdC90LXQvdGLINCy0YvRiNC10YHRgtC+0Y/RidC40Lwg0YDQtdC/0L7Qt9C40YLQvtGA0LjQtdC8IgogCiAjOiBjb21tYW5kLWxpc3QuaDo2OAogbXNnaWQgIkFwcGx5IHRoZSBjaGFuZ2VzIGludHJvZHVjZWQgYnkgc29tZSBleGlzdGluZyBjb21taXRzIgotbXNnc3RyICIiCittc2dzdHIgItCf0YDQuNC80LXQvdC10L3QuNC1INC40LfQvNC10L3QtdC90LjQuSwg0YHQtNC10LvQsNC90L3Ri9GFINCyINC60LDQutC+0Lwt0YLQviDRgdGD0YnQtdGB0YLQstGD0Y7RidC10Lwg0LrQvtC80LzQuNGC0LUiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjY5CiBtc2dpZCAiR3JhcGhpY2FsIGFsdGVybmF0aXZlIHRvIGdpdC1jb21taXQiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0JPRgNCw0YTQuNGH0LXRgdC60LDRjyDQsNC70YzRgtC10YDQvdCw0YLQuNCy0LAg0LTQu9GPIGdpdC1jb21taXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjcwCiBtc2dpZCAiUmVtb3ZlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHRoZSB3b3JraW5nIHRyZWUiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0KPQtNCw0LvQtdC90LjQtSDQvdC10L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0YUg0YTQsNC50LvQvtCyINC40Lcg0YDQsNCx0L7Rh9C10LPQviDQutCw0YLQsNC70L7Qs9CwIgogCiAjOiBjb21tYW5kLWxpc3QuaDo3MQogbXNnaWQgIkNsb25lIGEgcmVwb3NpdG9yeSBpbnRvIGEgbmV3IGRpcmVjdG9yeSIKQEAgLTE2NDAyLDU5ICsxOTcwMCw1OSBAQAogCiAjOiBjb21tYW5kLWxpc3QuaDo3MgogbXNnaWQgIkRpc3BsYXkgZGF0YSBpbiBjb2x1bW5zIgotbXNnc3RyICIiCittc2dzdHIgItCS0YvQstC+0LQg0LTQsNC90L3Ri9GFINC/0L4g0LrQvtC70L7QvdC60LDQvCIKIAogIzogY29tbWFuZC1saXN0Lmg6NzMKIG1zZ2lkICJSZWNvcmQgY2hhbmdlcyB0byB0aGUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi0JfQsNC/0LjRgdGMINC40LfQvNC10L3QtdC90LjQuSDQsiDRgNC10L/QvtC30LjRgtC+0YDQuNC5IgogCiAjOiBjb21tYW5kLWxpc3QuaDo3NAotbXNnaWQgIldyaXRlIGFuZCB2ZXJpZnkgR2l0IGNvbW1pdCBncmFwaCBmaWxlcyIKLW1zZ3N0ciAiIgorbXNnaWQgIldyaXRlIGFuZCB2ZXJpZnkgR2l0IGNvbW1pdC1ncmFwaCBmaWxlcyIKK21zZ3N0ciAi0JfQsNC/0LjRgdGMINC4INC/0YDQvtCy0LXRgNC60LAgY29tbWl0LWdyYXBoINGE0LDQudC70L7QsiBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjc1CiBtc2dpZCAiQ3JlYXRlIGEgbmV3IGNvbW1pdCBvYmplY3QiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0KHQvtC30LTQsNC90LjQtSDQvdC+0LLQvtCz0L4g0L7QsdGK0LXQutGC0LAg0LrQvtC80LzQuNGC0LAiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjc2CiBtc2dpZCAiR2V0IGFuZCBzZXQgcmVwb3NpdG9yeSBvciBnbG9iYWwgb3B0aW9ucyIKLW1zZ3N0ciAiIgorbXNnc3RyICLQn9C+0LvRg9GH0LXQvdC40LUg0Lgg0YPRgdGC0LDQvdC+0LLQutCwINCz0LvQvtCx0LDQu9GM0L3Ri9GFINC+0L/RhtC40Lkg0LjQu9C4INC+0L/RhtC40Lkg0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyIKIAogIzogY29tbWFuZC1saXN0Lmg6NzcKIG1zZ2lkICJDb3VudCB1bnBhY2tlZCBudW1iZXIgb2Ygb2JqZWN0cyBhbmQgdGhlaXIgZGlzayBjb25zdW1wdGlvbiIKLW1zZ3N0ciAiIgorbXNnc3RyICLQn9C+0LTRgdGH0LXRgiDQutC+0LvQuNGH0LXRgdGC0LLQsCDQvdC10YPQv9Cw0LrQvtCy0LDQvdC90YvRhSDQvtCx0YrQtdC60YLQvtCyINC4INC40YUg0L/QvtGC0YDQtdCx0LvQtdC90LjRjyDQtNC40YHQutCwIgogCiAjOiBjb21tYW5kLWxpc3QuaDo3OAogbXNnaWQgIlJldHJpZXZlIGFuZCBzdG9yZSB1c2VyIGNyZWRlbnRpYWxzIgotbXNnc3RyICIiCittc2dzdHIgItCf0L7Qu9GD0YfQtdC90LjQtSDQuCDRgdC+0YXRgNCw0L3QtdC90LjQtSDRg9GH0LXRgtC90YvRhSDQt9Cw0L/QuNGB0LXQuSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8iCiAKICM6IGNvbW1hbmQtbGlzdC5oOjc5CiBtc2dpZCAiSGVscGVyIHRvIHRlbXBvcmFyaWx5IHN0b3JlIHBhc3N3b3JkcyBpbiBtZW1vcnkiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0J/QvtC80L7RidC90LjQuiDQtNC70Y8g0LLRgNC10LzQtdC90L3QvtCz0L4g0YXRgNCw0L3QtdC90LjRjyDQv9Cw0YDQvtC70LXQuSDQsiDQv9Cw0LzRj9GC0LgiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjgwCiBtc2dpZCAiSGVscGVyIHRvIHN0b3JlIGNyZWRlbnRpYWxzIG9uIGRpc2siCi1tc2dzdHIgIiIKK21zZ3N0ciAi0J/QvtC80L7RidC90LjQuiDQtNC70Y8g0YXRgNCw0L3QtdC90LjRjyDRg9GH0LXRgtC90YvRhSDQt9Cw0L/QuNGB0LXQuSDQvdCwINC00LjRgdC60LUiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjgxCiBtc2dpZCAiRXhwb3J0IGEgc2luZ2xlIGNvbW1pdCB0byBhIENWUyBjaGVja291dCIKLW1zZ3N0ciAiIgorbXNnc3RyICLQrdC60YHQv9C+0YDRgiDQtdC00LjQvdGB0YLQstC10L3QvdC+0LPQviDQutC+0LzQvNC40YLQsCDQsiDQstC40LTQtSDRgNCw0LHQvtGH0LXQuSDQutC+0L/QuNC4IENWUyIKIAogIzogY29tbWFuZC1saXN0Lmg6ODIKIG1zZ2lkICJTYWx2YWdlIHlvdXIgZGF0YSBvdXQgb2YgYW5vdGhlciBTQ00gcGVvcGxlIGxvdmUgdG8gaGF0ZSIKLW1zZ3N0ciAiIgorbXNnc3RyICLQodC/0LDRgdC10L3QuNC1INCy0LDRiNC40YUg0LTQsNC90L3Ri9GFINC40Lcg0LTRgNGD0LPQvtC5INCh0JrQkiDQutC+0YLQvtGA0YPRjiDQu9GO0LTQuCDQu9GO0LHRj9GCINC90LXQvdCw0LLQuNC00LXRgtGMIgogCiAjOiBjb21tYW5kLWxpc3QuaDo4MwogbXNnaWQgIkEgQ1ZTIHNlcnZlciBlbXVsYXRvciBmb3IgR2l0IgotbXNnc3RyICIiCittc2dzdHIgItCt0LzRg9C70Y/RgtC+0YAg0YHQtdGA0LLQtdGA0LAgQ1ZTINC00LvRjyBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjg0CiBtc2dpZCAiQSByZWFsbHkgc2ltcGxlIHNlcnZlciBmb3IgR2l0IHJlcG9zaXRvcmllcyIKLW1zZ3N0ciAiIgorbXNnc3RyICLQntGH0LXQvdGMINC/0YDQvtGB0YLQvtC5INGB0LXRgNCy0LXRgCDQtNC70Y8gR2l0INGA0LXQv9C+0LfQuNGC0L7RgNC40LXQsiIKIAogIzogY29tbWFuZC1saXN0Lmg6ODUKIG1zZ2lkICJHaXZlIGFuIG9iamVjdCBhIGh1bWFuIHJlYWRhYmxlIG5hbWUgYmFzZWQgb24gYW4gYXZhaWxhYmxlIHJlZiIKLW1zZ3N0ciAiIgorbXNnc3RyICLQn9GA0LjRgdCy0L7QtdC90LjQtSDQvtCx0YrQtdC60YLRgyDRg9C00L7QsdC+0YfQuNGC0LDQtdC80L7QtSDQuNC80Y8g0L3QsCDQvtGB0L3QvtCy0LUg0LTQvtGB0YLRg9C/0L3QvtC5INGB0YHRi9C70LrQuCIKIAogIzogY29tbWFuZC1saXN0Lmg6ODYKIG1zZ2lkICJTaG93IGNoYW5nZXMgYmV0d2VlbiBjb21taXRzLCBjb21taXQgYW5kIHdvcmtpbmcgdHJlZSwgZXRjIgpAQCAtMTY0NjIsMjcgKzE5NzYwLDI3IEBACiAKICM6IGNvbW1hbmQtbGlzdC5oOjg3CiBtc2dpZCAiQ29tcGFyZXMgZmlsZXMgaW4gdGhlIHdvcmtpbmcgdHJlZSBhbmQgdGhlIGluZGV4IgotbXNnc3RyICIiCittc2dzdHIgItCh0YDQsNCy0L3QtdC90LjQtSDRgdC10LTQtdGA0LbQuNC80L7Qs9C+INGE0LDQudC70L7QsiDQsiDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1INGBINGE0LDQudC70LDQvNC4INCyINC40L3QtNC10LrRgdC1IgogCiAjOiBjb21tYW5kLWxpc3QuaDo4OAogbXNnaWQgIkNvbXBhcmUgYSB0cmVlIHRvIHRoZSB3b3JraW5nIHRyZWUgb3IgaW5kZXgiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0KHRgNCw0LLQvdC10L3QuNC1INC00LXRgNC10LLQsCDRhNCw0LnQu9C+0LIg0YEg0YDQsNCx0L7Rh9C40Lwg0LrQsNGC0LDQu9C+0LPQvtC8INC40LvQuCDQuNC90LTQtdC60YHQvtC8IgogCiAjOiBjb21tYW5kLWxpc3QuaDo4OQogbXNnaWQgIkNvbXBhcmVzIHRoZSBjb250ZW50IGFuZCBtb2RlIG9mIGJsb2JzIGZvdW5kIHZpYSB0d28gdHJlZSBvYmplY3RzIgotbXNnc3RyICIiCittc2dzdHIgItCh0YDQsNCy0L3QtdC90LjQtSDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+INC4INGA0LXQttC40LzQsCDQtNCy0L7QuNGH0L3Ri9GFINC+0LHRitC10LrRgtC+0LIsINC90LDQudC00LXQvdC90YvRhSDQv9C+INC00LLRg9C8INC+0LHRitC10LrRgtCw0Lwg0LTQtdGA0LXQstCwIgogCiAjOiBjb21tYW5kLWxpc3QuaDo5MAogbXNnaWQgIlNob3cgY2hhbmdlcyB1c2luZyBjb21tb24gZGlmZiB0b29scyIKLW1zZ3N0ciAiIgorbXNnc3RyICLQn9C+0LrQsNC3INC40LfQvNC10L3QtdC90LjQuSDRgSDQv9C+0LzQvtGJ0YzRjiDRgNCw0YHQv9GA0L7RgdGC0YDQsNC90LXQvdC90YvRhSDRg9GC0LjQu9C40YIg0YHRgNCw0LLQvdC10L3QuNGPIgogCiAjOiBjb21tYW5kLWxpc3QuaDo5MQogbXNnaWQgIkdpdCBkYXRhIGV4cG9ydGVyIgotbXNnc3RyICIiCittc2dzdHIgItCt0LrRgdC/0L7RgNGCINC00LDQvdC90YvRhSBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjkyCiBtc2dpZCAiQmFja2VuZCBmb3IgZmFzdCBHaXQgZGF0YSBpbXBvcnRlcnMiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0JLQvdGD0YLRgNC10L3QvdC40Lkg0LjQvdGC0LXRgNGE0LXQudGBINC00LvRjyDQsdGL0YHRgtGA0L7Qs9C+INC40LzQv9C+0YDRgtCwINC00LDQvdC90YvRhSBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjkzCiBtc2dpZCAiRG93bmxvYWQgb2JqZWN0cyBhbmQgcmVmcyBmcm9tIGFub3RoZXIgcmVwb3NpdG9yeSIKQEAgLTE2NDkwLDM1ICsxOTc4OCwzNSBAQAogCiAjOiBjb21tYW5kLWxpc3QuaDo5NAogbXNnaWQgIlJlY2VpdmUgbWlzc2luZyBvYmplY3RzIGZyb20gYW5vdGhlciByZXBvc2l0b3J5IgotbXNnc3RyICIiCittc2dzdHIgItCf0L7Qu9GD0YfQtdC90LjQtSDQvdC10LTQvtGB0YLQsNGO0YnQuNGFINC+0LHRitC10LrRgtC+0LIg0LjQtyDQtNGA0YPQs9C+0LPQviDRgNC10L/QvtC30LjRgtC+0YDQuNGPIgogCiAjOiBjb21tYW5kLWxpc3QuaDo5NQogbXNnaWQgIlJld3JpdGUgYnJhbmNoZXMiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0J/QtdGA0LXQt9Cw0L/QuNGB0Ywg0LLQtdGC0L7QuiIKIAogIzogY29tbWFuZC1saXN0Lmg6OTYKIG1zZ2lkICJQcm9kdWNlIGEgbWVyZ2UgY29tbWl0IG1lc3NhZ2UiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0KHQvtC30LTQsNC90LjQtSDRgdC+0L7QsdGJ0LXQvdC40Y8g0LrQvtC80LzQuNGC0LAg0LTQu9GPINGB0LvQuNGP0L3QuNGPIgogCiAjOiBjb21tYW5kLWxpc3QuaDo5NwogbXNnaWQgIk91dHB1dCBpbmZvcm1hdGlvbiBvbiBlYWNoIHJlZiIKLW1zZ3N0ciAiIgorbXNnc3RyICLQktGL0LLQvtC0INC40L3RhNC+0YDQvNCw0YbQuNC4INC+INC60LDQttC00L7QuSDRgdGB0YvQu9C60LUiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjk4CiBtc2dpZCAiUHJlcGFyZSBwYXRjaGVzIGZvciBlLW1haWwgc3VibWlzc2lvbiIKLW1zZ3N0ciAiIgorbXNnc3RyICLQn9C+0LTQs9C+0YLQvtCy0LrQsCDQv9Cw0YLRh9C10Lkg0LTQu9GPINC+0YLQv9GA0LDQstC60Lgg0L/QviDRjdC70LXQutGC0YDQvtC90L3QvtC5INC/0L7Rh9GC0LUiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjk5CiBtc2dpZCAiVmVyaWZpZXMgdGhlIGNvbm5lY3Rpdml0eSBhbmQgdmFsaWRpdHkgb2YgdGhlIG9iamVjdHMgaW4gdGhlIGRhdGFiYXNlIgotbXNnc3RyICIiCittc2dzdHIgItCf0YDQvtCy0LXRgNC60LAg0YHQstGP0LfQvdC+0YHRgtC4INC4INCy0LDQu9C40LTQvdC+0YHRgtC4INC+0LHRitC10LrRgtC+0LIg0LIg0LHQsNC30LUg0LTQsNC90L3Ri9GFIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMDAKIG1zZ2lkICJDbGVhbnVwIHVubmVjZXNzYXJ5IGZpbGVzIGFuZCBvcHRpbWl6ZSB0aGUgbG9jYWwgcmVwb3NpdG9yeSIKLW1zZ3N0ciAiIgorbXNnc3RyICLQntGH0LjRgdGC0LrQsCDQvdC10L3Rg9C20L3Ri9GFINGE0LDQudC70L7QsiDQuCDQvtC/0YLQuNC80LjQt9Cw0YbQuNGPINC70L7QutCw0LvRjNC90L7Qs9C+INGA0LXQv9C+0LfQuNGC0L7RgNC40Y8iCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEwMQogbXNnaWQgIkV4dHJhY3QgY29tbWl0IElEIGZyb20gYW4gYXJjaGl2ZSBjcmVhdGVkIHVzaW5nIGdpdC1hcmNoaXZlIgotbXNnc3RyICIiCittc2dzdHIgItCY0LfQstC70LXRh9C10L3QuNC1INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0LAg0LrQvtC80LzQuNGC0LAg0LjQtyDQsNGA0YXQuNCy0LAsINGB0L7Qt9C00LDQvdC90L7Qs9C+INGBINC/0L7QvNC+0YnRjNGOIGdpdC1hcmNoaXZlIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMDIKIG1zZ2lkICJQcmludCBsaW5lcyBtYXRjaGluZyBhIHBhdHRlcm4iCkBAIC0xNjUyNiwzNSArMTk4MjQsMzUgQEAKIAogIzogY29tbWFuZC1saXN0Lmg6MTAzCiBtc2dpZCAiQSBwb3J0YWJsZSBncmFwaGljYWwgaW50ZXJmYWNlIHRvIEdpdCIKLW1zZ3N0ciAiIgorbXNnc3RyICLQn9C+0YDRgtCw0YLQuNCy0L3Ri9C5INCz0YDQsNGE0LjRh9C10YHQutC40Lkg0LjQvdGC0LXRgNGE0LXQudGBINC00LvRjyBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEwNAogbXNnaWQgIkNvbXB1dGUgb2JqZWN0IElEIGFuZCBvcHRpb25hbGx5IGNyZWF0ZXMgYSBibG9iIGZyb20gYSBmaWxlIgotbXNnc3RyICIiCittc2dzdHIgItCS0YvRh9C40YHQu9C10L3QuNC1INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0LAg0L7QsdGK0LXQutGC0LAg0Lgg0LLQvtC30LzQvtC20L3QvtC1INGB0L7Qt9C00LDQvdC40LUg0LTQstC+0LjRh9C90L7Qs9C+INC+0LHRitC10LrRgtCwINC40Lcg0YTQsNC50LvQsCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTA1CiBtc2dpZCAiRGlzcGxheSBoZWxwIGluZm9ybWF0aW9uIGFib3V0IEdpdCIKLW1zZ3N0ciAiIgorbXNnc3RyICLQntGC0L7QsdGA0LDQttC10L3QuNC1INGB0L/RgNCw0LLQvtGH0L3QvtC5INC40L3RhNC+0YDQvNCw0YbQuNC4INC+IEdpdCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTA2CiBtc2dpZCAiU2VydmVyIHNpZGUgaW1wbGVtZW50YXRpb24gb2YgR2l0IG92ZXIgSFRUUCIKLW1zZ3N0ciAiIgorbXNnc3RyICLQodC10YDQstC10YDQvdCw0Y8g0YDQtdCw0LvQuNC30LDRhtC40Y8g0L/RgNC+0YLQvtC60L7Qu9CwIEdpdCDQvdCw0LQgSFRUUCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTA3CiBtc2dpZCAiRG93bmxvYWQgZnJvbSBhIHJlbW90ZSBHaXQgcmVwb3NpdG9yeSB2aWEgSFRUUCIKLW1zZ3N0ciAiIgorbXNnc3RyICLQl9Cw0LPRgNGD0LfQutCwINC40Lcg0LLQvdC10YjQvdC10LPQviDRgNC10L/QvtC30LjRgtC+0YDQuNGPIEdpdCDRgSDQv9C+0LzQvtGJ0YzRjiBIVFRQIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMDgKIG1zZ2lkICJQdXNoIG9iamVjdHMgb3ZlciBIVFRQL0RBViB0byBhbm90aGVyIHJlcG9zaXRvcnkiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0J7RgtC/0YDQsNCy0LrQsCDQvtCx0YrQtdC60YLQvtCyINCyINC00YDRg9Cz0L7QuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5INGBINC/0L7QvNC+0YnRjNGOIEhUVFAvREFWIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMDkKIG1zZ2lkICJTZW5kIGEgY29sbGVjdGlvbiBvZiBwYXRjaGVzIGZyb20gc3RkaW4gdG8gYW4gSU1BUCBmb2xkZXIiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0J7RgtC/0YDQsNCy0LrQsCDQutC+0LvQu9C10LrRhtC40Lgg0L/QsNGC0YfQtdC5INC40Lcg0YHRgtCw0L3QtNCw0YDRgtC90L7Qs9C+INCy0LLQvtC00LAg0LIg0L/QsNC/0LrRgyBJTUFQIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMTAKIG1zZ2lkICJCdWlsZCBwYWNrIGluZGV4IGZpbGUgZm9yIGFuIGV4aXN0aW5nIHBhY2tlZCBhcmNoaXZlIgotbXNnc3RyICIiCittc2dzdHIgItCf0L7RgdGC0YDQvtC10L3QuNC1INGE0LDQudC70LAg0LjQvdC00LXQutGB0LAg0LTQu9GPINGB0YPRidC10YHRgtCy0YPRjtGJ0LXQs9C+INGD0L/QsNC60L7QstCw0L3QvdC+0LPQviDQsNGA0YXQuNCy0LAiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjExMQogbXNnaWQgIkNyZWF0ZSBhbiBlbXB0eSBHaXQgcmVwb3NpdG9yeSBvciByZWluaXRpYWxpemUgYW4gZXhpc3Rpbmcgb25lIgpAQCAtMTY1NjIsMTUgKzE5ODYwLDE1IEBACiAKICM6IGNvbW1hbmQtbGlzdC5oOjExMgogbXNnaWQgIkluc3RhbnRseSBicm93c2UgeW91ciB3b3JraW5nIHJlcG9zaXRvcnkgaW4gZ2l0d2ViIgotbXNnc3RyICIiCittc2dzdHIgItCc0LPQvdC+0LLQtdC90L3Ri9C5INC/0YDQvtGB0LzQvtGC0YAg0LLQsNGI0LXQs9C+INGA0LDQsdC+0YfQtdCz0L4g0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyDQsiBnaXR3ZWIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjExMwotbXNnaWQgImFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKLW1zZ3N0ciAiIgorbXNnaWQgIkFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKK21zZ3N0ciAi0JTQvtCx0LDQstC70LXQvdC40LUg0LjQu9C4INGA0LDQt9Cx0L7RgCDRgdGC0YDRg9C60YLRg9GA0LjRgNC+0LLQsNC90L3QvtC5INC40L3RhNC+0YDQvNCw0YbQuNC4INCyINGB0L7QvtCx0YnQtdC90LjRj9GFINC60L7QvNC80LjRgtCwIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMTQKIG1zZ2lkICJUaGUgR2l0IHJlcG9zaXRvcnkgYnJvd3NlciIKLW1zZ3N0ciAiIgorbXNnc3RyICLQkdGA0LDRg9C30LXRgCDRgNC10L/QvtC30LjRgtC+0YDQuNGPIEdpdCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTE1CiBtc2dpZCAiU2hvdyBjb21taXQgbG9ncyIKQEAgLTE2NTc4LDIzICsxOTg3NiwyMyBAQAogCiAjOiBjb21tYW5kLWxpc3QuaDoxMTYKIG1zZ2lkICJTaG93IGluZm9ybWF0aW9uIGFib3V0IGZpbGVzIGluIHRoZSBpbmRleCBhbmQgdGhlIHdvcmtpbmcgdHJlZSIKLW1zZ3N0ciAiIgorbXNnc3RyICLQktGL0LLQvtC0INC40L3RhNC+0YDQvNCw0YbQuNC4INC+INGE0LDQudC70LDRhSDQsiDQuNC90LTQtdC60YHQtSDQuCDQsiDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMTcKIG1zZ2lkICJMaXN0IHJlZmVyZW5jZXMgaW4gYSByZW1vdGUgcmVwb3NpdG9yeSIKLW1zZ3N0ciAiIgorbXNnc3RyICLQktGL0LLQvtC0INGB0L/QuNGB0LrQsCDRgdGB0YvQu9C+0Log0LLQviDQstC90LXRiNC90LXQvCDRgNC10L/QvtC30LjRgtC+0YDQuNC4IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMTgKIG1zZ2lkICJMaXN0IHRoZSBjb250ZW50cyBvZiBhIHRyZWUgb2JqZWN0IgotbXNnc3RyICIiCittc2dzdHIgItCS0YvQstC+0LQg0YHQvtC00LXRgNC20LjQvNC+0LPQviDQvtCx0YrQtdC60YLQsCDQtNC10YDQtdCy0LAiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjExOQogbXNnaWQgIkV4dHJhY3RzIHBhdGNoIGFuZCBhdXRob3JzaGlwIGZyb20gYSBzaW5nbGUgZS1tYWlsIG1lc3NhZ2UiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0JjQt9Cy0LvQtdC60LDQtdGCINC/0LDRgtGHINC4INCw0LLRgtC+0YDRgdGC0LLQviDQuNC3INC+0LTQvdC+0LPQviDRgdC+0L7QsdGJ0LXQvdC40Y8g0Y3Qu9C10LrRgtGA0L7QvdC90L7QuSDQv9C+0YfRgtGLIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMjAKIG1zZ2lkICJTaW1wbGUgVU5JWCBtYm94IHNwbGl0dGVyIHByb2dyYW0iCi1tc2dzdHIgIiIKK21zZ3N0ciAi0J/RgNC+0YHRgtCw0Y8g0L/RgNC+0LPRgNCw0LzQvNCwIFVOSVgg0LTQu9GPINGA0LDQt9Cx0L7RgNCwINGE0LDQudC70LAgbWJveCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTIxCiBtc2dpZCAiSm9pbiB0d28gb3IgbW9yZSBkZXZlbG9wbWVudCBoaXN0b3JpZXMgdG9nZXRoZXIiCkBAIC0xNjYwMiwzNTIgKzE5OTAwLDM1MiBAQAogCiAjOiBjb21tYW5kLWxpc3QuaDoxMjIKIG1zZ2lkICJGaW5kIGFzIGdvb2QgY29tbW9uIGFuY2VzdG9ycyBhcyBwb3NzaWJsZSBmb3IgYSBtZXJnZSIKLW1zZ3N0ciAiIgorbXNnc3RyICLQn9C+0LjRgdC6INC/0L7QtNGF0L7QtNGP0YnQuNGFINC+0LHRidC40YUg0L/RgNC10LTQutC+0LIg0LTQu9GPINCy0L7Qt9C80L7QttC90L7Qs9C+INGB0LvQuNGP0L3QuNGPIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMjMKIG1zZ2lkICJSdW4gYSB0aHJlZS13YXkgZmlsZSBtZXJnZSIKLW1zZ3N0ciAiIgorbXNnc3RyICLQl9Cw0L/Rg9GB0Log0YLRgNGR0YXRhdC+0LTQvtCy0L7Qs9C+INGB0LvQuNGP0L3QuNGPINGE0LDQudC70L7QsiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTI0CiBtc2dpZCAiUnVuIGEgbWVyZ2UgZm9yIGZpbGVzIG5lZWRpbmcgbWVyZ2luZyIKLW1zZ3N0ciAiIgorbXNnc3RyICLQl9Cw0L/Rg9GB0Log0YHQu9C40Y/QvdC40Y8g0LTQu9GPINGE0LDQudC70L7Qsiwg0LrQvtGC0L7RgNGL0LUg0YLRgNC10LHRg9GO0YIg0YHQu9C40Y/QvdC40Y8iCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEyNQogbXNnaWQgIlRoZSBzdGFuZGFyZCBoZWxwZXIgcHJvZ3JhbSB0byB1c2Ugd2l0aCBnaXQtbWVyZ2UtaW5kZXgiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0KHRgtCw0L3QtNCw0YDRgtC90LDRjyDQv9GA0L7Qs9GA0LDQvNC80LAt0L/QvtC80L7RidC90LjQuiDQtNC70Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8g0YHQvtCy0LzQtdGB0YLQvdC+INGBIGdpdC1tZXJnZS1pbmRleCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTI2CiBtc2dpZCAiUnVuIG1lcmdlIGNvbmZsaWN0IHJlc29sdXRpb24gdG9vbHMgdG8gcmVzb2x2ZSBtZXJnZSBjb25mbGljdHMiCi1tc2dzdHIgIiIKK21zZ3N0ciAi0JfQsNC/0YPRgdC6INC40L3RgdGC0YDRg9C80LXQvdGC0L7QsiDRgNCw0LfRgNC10YjQtdC90LjRjyDQutC+0L3RhNC70LjQutGC0L7QsiDRgdC70LjRj9C90LjRjyIKIAogIzogY29tbWFuZC1saXN0Lmg6MTI3CiBtc2dpZCAiU2hvdyB0aHJlZS13YXkgbWVyZ2Ugd2l0aG91dCB0b3VjaGluZyBpbmRleCIKLW1zZ3N0ciAiIgorbXNnc3RyICLQktGL0LLQvtC0INGC0YDRkdGF0YXQvtC00L7QstC+0LPQviDRgdC70LjRj9C90LjQtSDQsdC10Lcg0LfQsNGC0YDQsNCz0LjQstCw0L3QuNGPINC40L3QtNC10LrRgdCwIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMjgKLW1zZ2lkICJDcmVhdGVzIGEgdGFnIG9iamVjdCIKLW1zZ3N0ciAiIgorbXNnaWQgIldyaXRlIGFuZCB2ZXJpZnkgbXVsdGktcGFjay1pbmRleGVzIgorbXNnc3RyICLQl9Cw0L/QuNGB0Ywg0Lgg0L/RgNC+0LLQtdGA0LrQsCDRhNCw0LnQu9C+0LIgbXVsdGktcGFjay1pbmRleCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTI5Ci1tc2dpZCAiQnVpbGQgYSB0cmVlLW9iamVjdCBmcm9tIGxzLXRyZWUgZm9ybWF0dGVkIHRleHQiCi1tc2dzdHIgIiIKK21zZ2lkICJDcmVhdGVzIGEgdGFnIG9iamVjdCIKK21zZ3N0ciAi0KHQvtC30LTQsNC90LjQtSDQvtCx0YrQtdC60YLQvtCyINC80LXRgtC+0LoiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEzMAorbXNnaWQgIkJ1aWxkIGEgdHJlZS1vYmplY3QgZnJvbSBscy10cmVlIGZvcm1hdHRlZCB0ZXh0IgorbXNnc3RyICLQn9C+0YHRgtGA0L7QtdC90LjQtSDQvtCx0YrQtdC60YLQsCDQtNC10YDQtdCy0LAg0LjQtyDRgtC10LrRgdGC0LAg0YTQvtGA0LzQsNGC0LAgbHMtdHJlZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTMxCiBtc2dpZCAiTW92ZSBvciByZW5hbWUgYSBmaWxlLCBhIGRpcmVjdG9yeSwgb3IgYSBzeW1saW5rIgogbXNnc3RyICLQn9C10YDQtdC80LXRidC10L3QuNC1INC40LvQuCDQv9C10YDQtdC40LzQtdC90L7QstCw0L3QuNC1INGE0LDQudC70LAsINC60LDRgtCw0LvQvtCz0LAg0LjQu9C4INGB0LjQvNCy0L7Qu9GM0L3QvtC5INGB0YHRi9C70LrQuCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTMxCi1tc2dpZCAiRmluZCBzeW1ib2xpYyBuYW1lcyBmb3IgZ2l2ZW4gcmV2cyIKLW1zZ3N0ciAiIgotCiAjOiBjb21tYW5kLWxpc3QuaDoxMzIKLW1zZ2lkICJBZGQgb3IgaW5zcGVjdCBvYmplY3Qgbm90ZXMiCi1tc2dzdHIgIiIKK21zZ2lkICJGaW5kIHN5bWJvbGljIG5hbWVzIGZvciBnaXZlbiByZXZzIgorbXNnc3RyICLQn9C+0LjRgdC6INGB0LjQvNCy0L7Qu9GM0L3Ri9GFINC40LzRkdC9INC00LvRjyDRg9C60LDQt9Cw0L3QvdGL0YUg0YDQtdC00LDQutGG0LjQuSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTMzCi1tc2dpZCAiSW1wb3J0IGZyb20gYW5kIHN1Ym1pdCB0byBQZXJmb3JjZSByZXBvc2l0b3JpZXMiCi1tc2dzdHIgIiIKK21zZ2lkICJBZGQgb3IgaW5zcGVjdCBvYmplY3Qgbm90ZXMiCittc2dzdHIgItCU0L7QsdCw0LLQu9C10L3QuNC1INC40LvQuCDQv9GA0L7RgdC80L7RgtGAINC30LDQvNC10YLQvtC6INC+0LHRitC10LrRgtCwIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMzQKLW1zZ2lkICJDcmVhdGUgYSBwYWNrZWQgYXJjaGl2ZSBvZiBvYmplY3RzIgotbXNnc3RyICIiCittc2dpZCAiSW1wb3J0IGZyb20gYW5kIHN1Ym1pdCB0byBQZXJmb3JjZSByZXBvc2l0b3JpZXMiCittc2dzdHIgItCY0LzQv9C+0YDRgiDQuCDQvtGC0L/RgNCw0LLQutCwINCyINGA0LXQv9C+0LfQuNGC0L7RgNC40LggUGVyZm9yY2UiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEzNQotbXNnaWQgIkZpbmQgcmVkdW5kYW50IHBhY2sgZmlsZXMiCi1tc2dzdHIgIiIKK21zZ2lkICJDcmVhdGUgYSBwYWNrZWQgYXJjaGl2ZSBvZiBvYmplY3RzIgorbXNnc3RyICLQodC+0LfQtNCw0L3QuNC1INGD0L/QsNC60L7QstCw0L3QvdC+0LPQviDQsNGA0YXQuNCy0LAg0L7QsdGK0LXQutGC0L7QsiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTM2Ci1tc2dpZCAiUGFjayBoZWFkcyBhbmQgdGFncyBmb3IgZWZmaWNpZW50IHJlcG9zaXRvcnkgYWNjZXNzIgotbXNnc3RyICIiCittc2dpZCAiRmluZCByZWR1bmRhbnQgcGFjayBmaWxlcyIKK21zZ3N0ciAi0J/QvtC40YHQuiDQuNC30LHRi9GC0L7Rh9C90YvRhSDRhNCw0LnQu9C+0LIg0L/QsNC60LXRgtC+0LIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEzNwotbXNnaWQgIlJvdXRpbmVzIHRvIGhlbHAgcGFyc2luZyByZW1vdGUgcmVwb3NpdG9yeSBhY2Nlc3MgcGFyYW1ldGVycyIKLW1zZ3N0ciAiIgorbXNnaWQgIlBhY2sgaGVhZHMgYW5kIHRhZ3MgZm9yIGVmZmljaWVudCByZXBvc2l0b3J5IGFjY2VzcyIKK21zZ3N0ciAi0KPQv9Cw0LrQvtCy0LrQsCDRg9C60LDQt9Cw0YLQtdC70LXQuSDQvdCwINCy0LXRgtC60Lgg0Lgg0LzQtdGC0L7QuiDQtNC70Y8g0Y3RhNGE0LXQutGC0LjQstC90L7Qs9C+INC00L7RgdGC0YPQv9CwINC6INGA0LXQv9C+0LfQuNGC0L7RgNC40Y4iCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEzOAotbXNnaWQgIkNvbXB1dGUgdW5pcXVlIElEIGZvciBhIHBhdGNoIgotbXNnc3RyICIiCittc2dpZCAiUm91dGluZXMgdG8gaGVscCBwYXJzaW5nIHJlbW90ZSByZXBvc2l0b3J5IGFjY2VzcyBwYXJhbWV0ZXJzIgorbXNnc3RyICLQn9C+0LTQv9GA0L7Qs9GA0LDQvNC80Ysg0LTQu9GPINC/0L7QvNC+0YnQuCDRgNCw0LfQsdC+0YDQsCDQv9Cw0YDQsNC80LXRgtGA0L7QsiDQtNC+0YHRgtGD0L/QsCDQstC90LXRiNC90LXQs9C+INGA0LXQv9C+0LfQuNGC0L7RgNC40Y8iCiAKICM6IGNvbW1hbmQtbGlzdC5oOjEzOQotbXNnaWQgIlBydW5lIGFsbCB1bnJlYWNoYWJsZSBvYmplY3RzIGZyb20gdGhlIG9iamVjdCBkYXRhYmFzZSIKLW1zZ3N0ciAiIgorbXNnaWQgIkNvbXB1dGUgdW5pcXVlIElEIGZvciBhIHBhdGNoIgorbXNnc3RyICLQktGL0YfQuNGB0LvQtdC90LjQtSDRg9C90LjQutCw0LvRjNC90L7Qs9C+INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0LAg0LTQu9GPINC/0LDRgtGH0LAiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE0MAotbXNnaWQgIlJlbW92ZSBleHRyYSBvYmplY3RzIHRoYXQgYXJlIGFscmVhZHkgaW4gcGFjayBmaWxlcyIKLW1zZ3N0ciAiIgorbXNnaWQgIlBydW5lIGFsbCB1bnJlYWNoYWJsZSBvYmplY3RzIGZyb20gdGhlIG9iamVjdCBkYXRhYmFzZSIKK21zZ3N0ciAi0J7Rh9C40YHRgtC60LAg0LLRgdC10YUg0L3QtdC00L7RgdGC0LjQttC40LzRi9GFINC+0LHRitC10LrRgtC+0LIg0LjQtyDQsdCw0LfRiyDQtNCw0L3QvdGL0YUg0L7QsdGK0LXQutGC0L7QsiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTQxCittc2dpZCAiUmVtb3ZlIGV4dHJhIG9iamVjdHMgdGhhdCBhcmUgYWxyZWFkeSBpbiBwYWNrIGZpbGVzIgorbXNnc3RyICLQo9C00LDQu9C10L3QuNC1INC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdGL0YUg0L7QsdGK0LXQutGC0L7Qsiwg0LrQvtGC0L7RgNGL0LUg0YPQttC1INGB0L7QtNC10YDQttCw0YLRgdGPINCyINGE0LDQudC70LDRhSDQv9Cw0LrQtdGC0L7QsiIKKworIzogY29tbWFuZC1saXN0Lmg6MTQyCiBtc2dpZCAiRmV0Y2ggZnJvbSBhbmQgaW50ZWdyYXRlIHdpdGggYW5vdGhlciByZXBvc2l0b3J5IG9yIGEgbG9jYWwgYnJhbmNoIgogbXNnc3RyICLQmNC30LLQu9C10YfQtdC90LjQtSDQuNC30LzQtdC90LXQvdC40Lkg0Lgg0L7QsdGK0LXQtNC40L3QtdC90LjQtSDRgSDQtNGA0YPQs9C40Lwg0YDQtdC/0L7Qt9C40YLQvtGA0LjQtdC8INC40LvQuCDQu9C+0LrQsNC70YzQvdC+0Lkg0LLQtdGC0LrQvtC5IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNDIKKyM6IGNvbW1hbmQtbGlzdC5oOjE0MwogbXNnaWQgIlVwZGF0ZSByZW1vdGUgcmVmcyBhbG9uZyB3aXRoIGFzc29jaWF0ZWQgb2JqZWN0cyIKIG1zZ3N0ciAi0J7QsdC90L7QstC70LXQvdC40LUg0LLQvdC10YjQvdC40YUg0YHRgdGL0LvQvtC6INC4INGB0LLRj9C30LDQvdC90YvRhSDQvtCx0YrQtdC60YLQvtCyIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNDMKLW1zZ2lkICJBcHBsaWVzIGEgcXVpbHQgcGF0Y2hzZXQgb250byB0aGUgY3VycmVudCBicmFuY2giCi1tc2dzdHIgIiIKLQogIzogY29tbWFuZC1saXN0Lmg6MTQ0Ci1tc2dpZCAiQ29tcGFyZSB0d28gY29tbWl0IHJhbmdlcyAoZS5nLiB0d28gdmVyc2lvbnMgb2YgYSBicmFuY2gpIgotbXNnc3RyICIiCittc2dpZCAiQXBwbGllcyBhIHF1aWx0IHBhdGNoc2V0IG9udG8gdGhlIGN1cnJlbnQgYnJhbmNoIgorbXNnc3RyICLQn9GA0LjQvNC10L3QtdC90LjQtSDRg9C/0L7RgNGP0LTQvtGH0LXQvdC90L7Qs9C+INGB0L/QuNGB0LrQsCDQv9Cw0YLRh9C10Lkg0L3QsNC0INGC0LXQutGD0YnQtdC5INCy0LXRgtC60L7QuSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTQ1Ci1tc2dpZCAiUmVhZHMgdHJlZSBpbmZvcm1hdGlvbiBpbnRvIHRoZSBpbmRleCIKLW1zZ3N0ciAiIgorbXNnaWQgIkNvbXBhcmUgdHdvIGNvbW1pdCByYW5nZXMgKGUuZy4gdHdvIHZlcnNpb25zIG9mIGEgYnJhbmNoKSIKK21zZ3N0ciAi0KHRgNCw0LLQvdC10L3QuNC1INC00LLRg9GFINC00LjQsNC/0LDQt9C+0L3QvtCyINC60L7QvNC80LjRgtC+0LIgKNC90LDQv9GA0LjQvNC10YAg0LTQstGD0YUg0LLQtdGA0YHQuNC5INCy0LXRgtC60LgpIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNDYKLW1zZ2lkICJSZWFwcGx5IGNvbW1pdHMgb24gdG9wIG9mIGFub3RoZXIgYmFzZSB0aXAiCi1tc2dzdHIgItCf0L7QstGC0L7RgNC90L4g0L/RgNC40LzQtdC90LjRgtGMINC60L7QvNC80LjRgtGLINC90LDQtCDQstC10YDRhdGD0YjQutC+0Lkg0LTRgNGD0LPQvtC5INCy0LXRgtC60LgiCittc2dpZCAiUmVhZHMgdHJlZSBpbmZvcm1hdGlvbiBpbnRvIHRoZSBpbmRleCIKK21zZ3N0ciAi0KfRgtC10L3QuNC1INC40L3RhNC+0YDQvNCw0YbQuNC4INC+INC00LXRgNC10LLQtSDQsiDQuNC90LTQtdC60YEiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE0NwotbXNnaWQgIlJlY2VpdmUgd2hhdCBpcyBwdXNoZWQgaW50byB0aGUgcmVwb3NpdG9yeSIKLW1zZ3N0ciAiIgorbXNnaWQgIlJlYXBwbHkgY29tbWl0cyBvbiB0b3Agb2YgYW5vdGhlciBiYXNlIHRpcCIKK21zZ3N0ciAi0J/QvtCy0YLQvtGA0L3QvtC1INC/0YDQuNC80LXQvdC10L3QuNC1INC60L7QvNC80LjRgtC+0LIg0L3QsNC0INCy0LXRgNGF0YPRiNC60L7QuSDQtNGA0YPQs9C+0Lkg0LLQtdGC0LrQuCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTQ4Ci1tc2dpZCAiTWFuYWdlIHJlZmxvZyBpbmZvcm1hdGlvbiIKLW1zZ3N0ciAiIgorbXNnaWQgIlJlY2VpdmUgd2hhdCBpcyBwdXNoZWQgaW50byB0aGUgcmVwb3NpdG9yeSIKK21zZ3N0ciAi0J/QvtC70YPRh9C10L3QuNC1INGC0L7Qs9C+LCDRh9GC0L4g0LHRi9C70L4g0L7RgtC/0YDQsNCy0LvQtdC90L4g0LIg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTQ5Ci1tc2dpZCAiTWFuYWdlIHNldCBvZiB0cmFja2VkIHJlcG9zaXRvcmllcyIKLW1zZ3N0ciAiIgorbXNnaWQgIk1hbmFnZSByZWZsb2cgaW5mb3JtYXRpb24iCittc2dzdHIgItCj0L/RgNCw0LLQu9C10L3QuNC1INC40L3RhNC+0YDQvNCw0YbQuNC10Lkg0LbRg9GA0L3QsNC70LAg0YHRgdGL0LvQvtC6IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNTAKLW1zZ2lkICJQYWNrIHVucGFja2VkIG9iamVjdHMgaW4gYSByZXBvc2l0b3J5IgotbXNnc3RyICIiCittc2dpZCAiTWFuYWdlIHNldCBvZiB0cmFja2VkIHJlcG9zaXRvcmllcyIKK21zZ3N0ciAi0KPQv9GA0LDQstC70LXQvdC40LUg0L3QsNCx0L7RgNC+0Lwg0L7RgtGB0LvQtdC20LjQstCw0LXQvNGL0YUg0YDQtdC/0L7Qt9C40YLQvtGA0LjQtdCyIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNTEKLW1zZ2lkICJDcmVhdGUsIGxpc3QsIGRlbGV0ZSByZWZzIHRvIHJlcGxhY2Ugb2JqZWN0cyIKLW1zZ3N0ciAiIgorbXNnaWQgIlBhY2sgdW5wYWNrZWQgb2JqZWN0cyBpbiBhIHJlcG9zaXRvcnkiCittc2dzdHIgItCj0L/QsNC60L7QstC60LAg0L3QtdGD0L/QsNC60L7QstCw0L3QvdGL0YUg0L7QsdGK0LXQutGC0L7QsiDQsiDRgNC10L/QvtC30LjRgtC+0YDQuNC4IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNTIKLW1zZ2lkICJHZW5lcmF0ZXMgYSBzdW1tYXJ5IG9mIHBlbmRpbmcgY2hhbmdlcyIKLW1zZ3N0ciAiIgorbXNnaWQgIkNyZWF0ZSwgbGlzdCwgZGVsZXRlIHJlZnMgdG8gcmVwbGFjZSBvYmplY3RzIgorbXNnc3RyICLQodC+0LfQtNCw0L3QuNC1LCDQstGL0LLQvtC0INGB0L/QuNGB0LrQsCwg0YPQtNCw0LvQtdC90LjQtSDRgdGB0YvQu9C+0Log0LTQu9GPINC30LDQvNC10L3RiyDQvtCx0YrQtdC60YLQvtCyIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNTMKLW1zZ2lkICJSZXVzZSByZWNvcmRlZCByZXNvbHV0aW9uIG9mIGNvbmZsaWN0ZWQgbWVyZ2VzIgotbXNnc3RyICIiCittc2dpZCAiR2VuZXJhdGVzIGEgc3VtbWFyeSBvZiBwZW5kaW5nIGNoYW5nZXMiCittc2dzdHIgItCT0LXQvdC10YDQsNGG0LjRjyDRgdCy0L7QtNC60Lgg0L/RgNC10LTRgdGC0L7Rj9GJ0LjRhSDQuNC30LzQtdC90LXQvdC40LkiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE1NAorbXNnaWQgIlJldXNlIHJlY29yZGVkIHJlc29sdXRpb24gb2YgY29uZmxpY3RlZCBtZXJnZXMiCittc2dzdHIgItCf0L7QstGC0L7RgNC90L7QtSDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtSDQt9Cw0L/QuNGB0LDQvdC90YvRhSDRgNCw0LfRgNC10YjQtdC90LjQuSDQutC+0L3RhNC70LjQutGC0L7QsiDQv9GA0Lgg0YHQu9C40Y/QvdC40Y/RhSIKKworIzogY29tbWFuZC1saXN0Lmg6MTU1CiBtc2dpZCAiUmVzZXQgY3VycmVudCBIRUFEIHRvIHRoZSBzcGVjaWZpZWQgc3RhdGUiCiBtc2dzdHIgItCh0LHRgNC+0YEg0YLQtdC60YPRidC10LPQviDRgdC+0YHRgtC+0Y/QvdC40Y8gSEVBRCDQvdCwINGD0LrQsNC30LDQvdC90L7QtSDRgdC+0YHRgtC+0Y/QvdC40LUiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE1NQotbXNnaWQgIlJldmVydCBzb21lIGV4aXN0aW5nIGNvbW1pdHMiCi1tc2dzdHIgIiIKLQogIzogY29tbWFuZC1saXN0Lmg6MTU2Ci1tc2dpZCAiTGlzdHMgY29tbWl0IG9iamVjdHMgaW4gcmV2ZXJzZSBjaHJvbm9sb2dpY2FsIG9yZGVyIgotbXNnc3RyICIiCittc2dpZCAiUmV2ZXJ0IHNvbWUgZXhpc3RpbmcgY29tbWl0cyIKK21zZ3N0ciAi0J7QsdGA0LDRidC10L3QuNC1INC40LfQvNC10L3QtdC90LjQuSDRgdGD0YnQtdGB0YLQstGD0Y7RidC40YUg0LrQvtC80LzQuNGC0L7QsiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTU3Ci1tc2dpZCAiUGljayBvdXQgYW5kIG1hc3NhZ2UgcGFyYW1ldGVycyIKLW1zZ3N0ciAiIgorbXNnaWQgIkxpc3RzIGNvbW1pdCBvYmplY3RzIGluIHJldmVyc2UgY2hyb25vbG9naWNhbCBvcmRlciIKK21zZ3N0ciAi0JLRi9Cy0L7QtCDRgdC/0LjRgdC60LAg0L7QsdGK0LXQutGC0L7QsiDQutC+0LzQvNC40YLQsCDQsiDQvtCx0YDQsNGC0L3QvtC8INGF0YDQvtC90L7Qu9C+0LPQuNGH0LXRgdC60L7QvCDQv9C+0YDRj9C00LrQtSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTU4Cittc2dpZCAiUGljayBvdXQgYW5kIG1hc3NhZ2UgcGFyYW1ldGVycyIKK21zZ3N0ciAi0KDQsNC30LHQvtGAINC4INC+0LHRgNCw0LHQvtGC0LrQsCDQv9Cw0YDQsNC80LXRgtGA0L7QsiIKKworIzogY29tbWFuZC1saXN0Lmg6MTU5CiBtc2dpZCAiUmVtb3ZlIGZpbGVzIGZyb20gdGhlIHdvcmtpbmcgdHJlZSBhbmQgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgItCj0LTQsNC70LXQvdC40LUg0YTQsNC50LvQvtCyINC40Lcg0YDQsNCx0L7Rh9C10LPQviDQutCw0YLQsNC70L7Qs9CwINC4INC40L3QtNC10LrRgdCwIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNTkKLW1zZ2lkICJTZW5kIGEgY29sbGVjdGlvbiBvZiBwYXRjaGVzIGFzIGVtYWlscyIKLW1zZ3N0ciAiIgotCiAjOiBjb21tYW5kLWxpc3QuaDoxNjAKLW1zZ2lkICJQdXNoIG9iamVjdHMgb3ZlciBHaXQgcHJvdG9jb2wgdG8gYW5vdGhlciByZXBvc2l0b3J5IgotbXNnc3RyICIiCittc2dpZCAiU2VuZCBhIGNvbGxlY3Rpb24gb2YgcGF0Y2hlcyBhcyBlbWFpbHMiCittc2dzdHIgItCe0YLQv9GA0LDQstC60LAg0LrQvtC70LvQtdC60YbQuNC4INC/0LDRgtGH0LXQuSDQvdCwINGN0LvQtdC60YLRgNC+0L3QvdGD0Y4g0L/QvtGH0YLRgyIKIAogIzogY29tbWFuZC1saXN0Lmg6MTYxCi1tc2dpZCAiUmVzdHJpY3RlZCBsb2dpbiBzaGVsbCBmb3IgR2l0LW9ubHkgU1NIIGFjY2VzcyIKLW1zZ3N0ciAiIgorbXNnaWQgIlB1c2ggb2JqZWN0cyBvdmVyIEdpdCBwcm90b2NvbCB0byBhbm90aGVyIHJlcG9zaXRvcnkiCittc2dzdHIgItCe0YLQv9GA0LDQstC60LAg0L7QsdGK0LXQutGC0L7QsiDQsiDQtNGA0YPQs9C+0Lkg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuSDRgSDQv9C+0LzQvtGJ0YzRjiDQv9GA0L7RgtC+0LrQvtC70LAgR2l0IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNjIKLW1zZ2lkICJTdW1tYXJpemUgJ2dpdCBsb2cnIG91dHB1dCIKLW1zZ3N0ciAiIgorbXNnaWQgIlJlc3RyaWN0ZWQgbG9naW4gc2hlbGwgZm9yIEdpdC1vbmx5IFNTSCBhY2Nlc3MiCittc2dzdHIgItCe0LPRgNCw0L3QuNGH0LXQvdC90LDRjyDQvtCx0L7Qu9C+0YfQutCwINCy0YXQvtC00LAg0LIg0YHQuNGB0YLQtdC80YMg0LTQu9GPINC00L7RgdGC0YPQv9CwIEdpdCDRh9C10YDQtdC3IFNTSCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTYzCittc2dpZCAiU3VtbWFyaXplICdnaXQgbG9nJyBvdXRwdXQiCittc2dzdHIgItCe0LHQvtCx0YnQtdC90LjQtSDQstGL0LLQvtC00LAgwqtnaXQgbG9nwrsiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NAogbXNnaWQgIlNob3cgdmFyaW91cyB0eXBlcyBvZiBvYmplY3RzIgogbXNnc3RyICLQktGL0LLQvtC0INGA0LDQt9C70LjRh9C90YvRhSDRgtC40L/QvtCyINC+0LHRitC10LrRgtC+0LIiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NAotbXNnaWQgIlNob3cgYnJhbmNoZXMgYW5kIHRoZWlyIGNvbW1pdHMiCi1tc2dzdHIgIiIKLQogIzogY29tbWFuZC1saXN0Lmg6MTY1Ci1tc2dpZCAiU2hvdyBwYWNrZWQgYXJjaGl2ZSBpbmRleCIKLW1zZ3N0ciAiIgorbXNnaWQgIlNob3cgYnJhbmNoZXMgYW5kIHRoZWlyIGNvbW1pdHMiCittc2dzdHIgItCS0YvQstC+0LQg0LLQtdGC0L7QuiDQuCDQuNGFINC60L7QvNC80LjRgtC+0LIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE2NgotbXNnaWQgIkxpc3QgcmVmZXJlbmNlcyBpbiBhIGxvY2FsIHJlcG9zaXRvcnkiCi1tc2dzdHIgIiIKK21zZ2lkICJTaG93IHBhY2tlZCBhcmNoaXZlIGluZGV4IgorbXNnc3RyICLQktGL0LLQvtC0INC40L3QtNC10LrRgdCwINGD0L/QsNC60L7QstCw0L3QvdC+0LPQviDQsNGA0YXQuNCy0LAiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE2NwotbXNnaWQgIkdpdCdzIGkxOG4gc2V0dXAgY29kZSBmb3Igc2hlbGwgc2NyaXB0cyIKLW1zZ3N0ciAiIgorbXNnaWQgIkxpc3QgcmVmZXJlbmNlcyBpbiBhIGxvY2FsIHJlcG9zaXRvcnkiCittc2dzdHIgItCS0YvQstC+0LQg0YHRgdGL0LvQvtC6INCyINC70L7QutCw0LvRjNC90L7QvCDRgNC10L/QvtC30LjRgtC+0YDQuNC4IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNjgKLW1zZ2lkICJDb21tb24gR2l0IHNoZWxsIHNjcmlwdCBzZXR1cCBjb2RlIgotbXNnc3RyICIiCittc2dpZCAiR2l0J3MgaTE4biBzZXR1cCBjb2RlIGZvciBzaGVsbCBzY3JpcHRzIgorbXNnc3RyICLQmtC+0LQg0L3QsNGB0YLRgNC+0LnQutC4INC40L3RgtC10YDQvdCw0YbQuNC+0L3QsNC70LjQt9Cw0YbQuNC4INC00LvRjyDRgdGG0LXQvdCw0YDQuNC10LIg0L7QsdC+0LvQvtGH0LrQuCBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE2OQotbXNnaWQgIlN0YXNoIHRoZSBjaGFuZ2VzIGluIGEgZGlydHkgd29ya2luZyBkaXJlY3RvcnkgYXdheSIKLW1zZ3N0ciAiIgorbXNnaWQgIkNvbW1vbiBHaXQgc2hlbGwgc2NyaXB0IHNldHVwIGNvZGUiCittc2dzdHIgItCe0LHRidC40Lkg0LrQvtC0INC90LDRgdGC0YDQvtC50LrQuCDQtNC70Y8g0YHRhtC10L3QsNGA0LjQtdCyINC+0LHQvtC70L7Rh9C60LggR2l0IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNzAKLW1zZ2lkICJBZGQgZmlsZSBjb250ZW50cyB0byB0aGUgc3RhZ2luZyBhcmVhIgotbXNnc3RyICIiCittc2dpZCAiU3Rhc2ggdGhlIGNoYW5nZXMgaW4gYSBkaXJ0eSB3b3JraW5nIGRpcmVjdG9yeSBhd2F5IgorbXNnc3RyICLQodC/0YDRj9GC0LDRgtGMINC40LfQvNC10L3QtdC90LjRjyDQsiDQuNC30LzQtdC90ZHQvdC90L7QvCDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNzEKK21zZ2lkICJBZGQgZmlsZSBjb250ZW50cyB0byB0aGUgc3RhZ2luZyBhcmVhIgorbXNnc3RyICLQlNC+0LHQsNCy0LvQtdC90LjQtSDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+INGE0LDQudC70L7QsiDQsiDQuNC90LTQtdC60YEiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MgogbXNnaWQgIlNob3cgdGhlIHdvcmtpbmcgdHJlZSBzdGF0dXMiCiBtc2dzdHIgItCS0YvQstC+0LQg0YHQvtGB0YLQvtGP0L3QuNGPINGA0LDQsdC+0YfQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTcyCi1tc2dpZCAiUmVtb3ZlIHVubmVjZXNzYXJ5IHdoaXRlc3BhY2UiCi1tc2dzdHIgIiIKLQogIzogY29tbWFuZC1saXN0Lmg6MTczCi1tc2dpZCAiSW5pdGlhbGl6ZSwgdXBkYXRlIG9yIGluc3BlY3Qgc3VibW9kdWxlcyIKLW1zZ3N0ciAiIgorbXNnaWQgIlJlbW92ZSB1bm5lY2Vzc2FyeSB3aGl0ZXNwYWNlIgorbXNnc3RyICLQo9C00LDQu9C10L3QuNC1INC90LXQvdGD0LbQvdGL0YUg0L/RgNC+0LHQtdC70L7QsiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTc0Ci1tc2dpZCAiQmlkaXJlY3Rpb25hbCBvcGVyYXRpb24gYmV0d2VlbiBhIFN1YnZlcnNpb24gcmVwb3NpdG9yeSBhbmQgR2l0IgotbXNnc3RyICIiCittc2dpZCAiSW5pdGlhbGl6ZSwgdXBkYXRlIG9yIGluc3BlY3Qgc3VibW9kdWxlcyIKK21zZ3N0ciAi0JjQvdC40YbQuNCw0LvQuNC30LDRhtC40Y8sINC+0LHQvdC+0LLQu9C10L3QuNC1INC40LvQuCDQv9GA0L7RgdC80L7RgtGAINC/0L7QtNC80L7QtNGD0LvQtdC5IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNzUKLW1zZ2lkICJSZWFkLCBtb2RpZnkgYW5kIGRlbGV0ZSBzeW1ib2xpYyByZWZzIgotbXNnc3RyICIiCittc2dpZCAiQmlkaXJlY3Rpb25hbCBvcGVyYXRpb24gYmV0d2VlbiBhIFN1YnZlcnNpb24gcmVwb3NpdG9yeSBhbmQgR2l0IgorbXNnc3RyICLQlNCy0YPRhdGB0YLQvtGA0L7QvdC90LjQtSDQvtC/0LXRgNCw0YbQuNC4INC80LXQttC00YMg0YDQtdC/0L7Qt9C40YLQvtGA0LjRj9C80LggU3VidmVyc2lvbiDQuCBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE3NgotbXNnaWQgIkNyZWF0ZSwgbGlzdCwgZGVsZXRlIG9yIHZlcmlmeSBhIHRhZyBvYmplY3Qgc2lnbmVkIHdpdGggR1BHIgotbXNnc3RyICLQodC+0LfQtNCw0L3QuNC1INC80LXRgtC60LgsINCy0YvQstC+0LQg0YHQv9C40YHQutCwLCDRg9C00LDQu9C10L3QuNC1INC40LvQuCDQv9GA0L7QstC10YDQutCwINC80LXRgtC60LgsINC/0L7QtNC/0LjRgdCw0L3QvdC+0Lkg0YEg0L/QvtC80L7RidGM0Y4gR1BHIgorbXNnaWQgIlJlYWQsIG1vZGlmeSBhbmQgZGVsZXRlIHN5bWJvbGljIHJlZnMiCittc2dzdHIgItCn0YLQtdC90LjQtSwg0LjQt9C80LXQvdC10L3QuNC1INC4INGD0LTQsNC70LXQvdC40LUg0YHQuNC80LLQvtC70LjRh9C10YHQutC40YUg0YHRgdGL0LvQvtC6IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNzcKLW1zZ2lkICJDcmVhdGVzIGEgdGVtcG9yYXJ5IGZpbGUgd2l0aCBhIGJsb2IncyBjb250ZW50cyIKLW1zZ3N0ciAiIgorbXNnaWQgIkNyZWF0ZSwgbGlzdCwgZGVsZXRlIG9yIHZlcmlmeSBhIHRhZyBvYmplY3Qgc2lnbmVkIHdpdGggR1BHIgorbXNnc3RyICLQodC+0LfQtNCw0L3QuNC1LCDQstGL0LLQvtC0INGB0L/QuNGB0LrQsCwg0YPQtNCw0LvQtdC90LjQtSDQuNC70Lgg0L/RgNC+0LLQtdGA0LrQsCDQvNC10YLQutC4LCDQv9C+0LTQv9C40YHQsNC90L3QvtC5INGBINC/0L7QvNC+0YnRjNGOIEdQRyIKIAogIzogY29tbWFuZC1saXN0Lmg6MTc4Ci1tc2dpZCAiVW5wYWNrIG9iamVjdHMgZnJvbSBhIHBhY2tlZCBhcmNoaXZlIgotbXNnc3RyICIiCittc2dpZCAiQ3JlYXRlcyBhIHRlbXBvcmFyeSBmaWxlIHdpdGggYSBibG9iJ3MgY29udGVudHMiCittc2dzdHIgItCh0L7Qt9C00LDQvdC40LUg0LLRgNC10LzQtdC90L3QvtCz0L4g0YTQsNC50LvQsCDRgSDRgdC+0LTQtdGA0LbQuNC80YvQvCDQtNCy0L7QuNGH0L3QvtCz0L4g0L7QsdGK0LXQutGC0LAiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE3OQotbXNnaWQgIlJlZ2lzdGVyIGZpbGUgY29udGVudHMgaW4gdGhlIHdvcmtpbmcgdHJlZSB0byB0aGUgaW5kZXgiCi1tc2dzdHIgIiIKK21zZ2lkICJVbnBhY2sgb2JqZWN0cyBmcm9tIGEgcGFja2VkIGFyY2hpdmUiCittc2dzdHIgItCg0LDRgdC/0LDQutC+0LLQutCwINC+0LHRitC10LrRgtC+0LIg0LjQtyDRg9C/0LDQutC+0LLQsNC90L3QvtCz0L4g0LDRgNGF0LjQstCwIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxODAKLW1zZ2lkICJVcGRhdGUgdGhlIG9iamVjdCBuYW1lIHN0b3JlZCBpbiBhIHJlZiBzYWZlbHkiCi1tc2dzdHIgIiIKK21zZ2lkICJSZWdpc3RlciBmaWxlIGNvbnRlbnRzIGluIHRoZSB3b3JraW5nIHRyZWUgdG8gdGhlIGluZGV4IgorbXNnc3RyICLQoNC10LPQuNGB0YLRgNCw0YbQuNGPINGB0L7QtNC10YDQttC40LzQvtCz0L4g0YTQsNC50LvQsCDQuNC3INGA0LDQsdC+0YfQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsCDQsiDQuNC90LTQtdC60YEiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE4MQotbXNnaWQgIlVwZGF0ZSBhdXhpbGlhcnkgaW5mbyBmaWxlIHRvIGhlbHAgZHVtYiBzZXJ2ZXJzIgotbXNnc3RyICIiCittc2dpZCAiVXBkYXRlIHRoZSBvYmplY3QgbmFtZSBzdG9yZWQgaW4gYSByZWYgc2FmZWx5IgorbXNnc3RyICLQkdC10LfQvtC/0LDRgdC90L7QtSDQvtCx0L3QvtCy0LvQtdC90LjQtSDQuNC80LXQvdC4INC+0LHRitC10LrRgtCwINGF0YDQsNC90Y/RidC10LPQvtGB0Y8g0LIg0YHRgdGL0LvQutC1IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxODIKLW1zZ2lkICJTZW5kIGFyY2hpdmUgYmFjayB0byBnaXQtYXJjaGl2ZSIKLW1zZ3N0ciAiIgorbXNnaWQgIlVwZGF0ZSBhdXhpbGlhcnkgaW5mbyBmaWxlIHRvIGhlbHAgZHVtYiBzZXJ2ZXJzIgorbXNnc3RyICLQntCx0L3QvtCy0LvQtdC90LjQtSDRhNCw0LnQu9CwINGB0L4g0LLRgdC/0L7QvNC+0LPQsNGC0LXQu9GM0L3QvtC5INC40L3RhNC+0YDQvNCw0YbQuNC10Lkg0LTQu9GPINCz0LvRg9C/0YvRhSDRgdC10YDQstC10YDQvtCyIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxODMKLW1zZ2lkICJTZW5kIG9iamVjdHMgcGFja2VkIGJhY2sgdG8gZ2l0LWZldGNoLXBhY2siCi1tc2dzdHIgIiIKK21zZ2lkICJTZW5kIGFyY2hpdmUgYmFjayB0byBnaXQtYXJjaGl2ZSIKK21zZ3N0ciAi0J7RgtC/0YDQsNCy0LrQsCDQsNGA0YXQuNCy0LAg0L7QsdGA0LDRgtC90L4g0LIgZ2l0LWFyY2hpdmUiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE4NAotbXNnaWQgIlNob3cgYSBHaXQgbG9naWNhbCB2YXJpYWJsZSIKLW1zZ3N0ciAiIgorbXNnaWQgIlNlbmQgb2JqZWN0cyBwYWNrZWQgYmFjayB0byBnaXQtZmV0Y2gtcGFjayIKK21zZ3N0ciAi0J7RgtC/0YDQsNCy0LrQsCDRg9C/0LDQutC+0LLQsNC90L3Ri9GFINC+0LHRitC10LrRgtC+0LIg0L7QsdGA0LDRgtC90L4g0LIgZ2l0LWZldGNoLXBhY2siCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE4NQotbXNnaWQgIkNoZWNrIHRoZSBHUEcgc2lnbmF0dXJlIG9mIGNvbW1pdHMiCi1tc2dzdHIgIiIKK21zZ2lkICJTaG93IGEgR2l0IGxvZ2ljYWwgdmFyaWFibGUiCittc2dzdHIgItCS0YvQstC+0LQg0LvQvtCz0LjRh9C10YHQutC+0Lkg0L/QtdGA0LXQvNC10L3QvdC+0LkgR2l0IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxODYKLW1zZ2lkICJWYWxpZGF0ZSBwYWNrZWQgR2l0IGFyY2hpdmUgZmlsZXMiCi1tc2dzdHIgIiIKK21zZ2lkICJDaGVjayB0aGUgR1BHIHNpZ25hdHVyZSBvZiBjb21taXRzIgorbXNnc3RyICLQn9GA0L7QstC10YDQutCwINC/0L7QtNC/0LjRgdC4IEdQRyDQutC+0LzQvNC40YLQvtCyIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxODcKLW1zZ2lkICJDaGVjayB0aGUgR1BHIHNpZ25hdHVyZSBvZiB0YWdzIgotbXNnc3RyICIiCittc2dpZCAiVmFsaWRhdGUgcGFja2VkIEdpdCBhcmNoaXZlIGZpbGVzIgorbXNnc3RyICLQn9GA0L7QstC10YDQutCwINGE0LDQudC70L7QsiDRg9C/0LDQutC+0LLQsNC90L3Ri9GFINCw0YDRhdC40LLQvtCyIEdpdCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTg4Ci1tc2dpZCAiR2l0IHdlYiBpbnRlcmZhY2UgKHdlYiBmcm9udGVuZCB0byBHaXQgcmVwb3NpdG9yaWVzKSIKLW1zZ3N0ciAiIgorbXNnaWQgIkNoZWNrIHRoZSBHUEcgc2lnbmF0dXJlIG9mIHRhZ3MiCittc2dzdHIgItCf0YDQvtCy0LXRgNC60LAg0L/QvtC00L/QuNGB0LggR1BHINC80LXRgtC+0LoiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE4OQotbXNnaWQgIlNob3cgbG9ncyB3aXRoIGRpZmZlcmVuY2UgZWFjaCBjb21taXQgaW50cm9kdWNlcyIKLW1zZ3N0ciAiIgorbXNnaWQgIkdpdCB3ZWIgaW50ZXJmYWNlICh3ZWIgZnJvbnRlbmQgdG8gR2l0IHJlcG9zaXRvcmllcykiCittc2dzdHIgItCS0LXQsSDQuNC90YLQtdGA0YTQtdC50YEgR2l0ICjQstC10LEt0LjQvdGC0LXRgNGE0LXQudGBINC00LvRjyBHaXQg0YDQtdC/0L7Qt9C40YLQvtGA0LjQtdCyKSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTkwCi1tc2dpZCAiTWFuYWdlIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMiCi1tc2dzdHIgIiIKK21zZ2lkICJTaG93IGxvZ3Mgd2l0aCBkaWZmZXJlbmNlIGVhY2ggY29tbWl0IGludHJvZHVjZXMiCittc2dzdHIgItCS0YvQstC+0LQg0LbRg9GA0L3QsNC70LAg0YEg0LjQt9C80LXQvdC10L3QuNGP0LzQuCwg0LrQvtGC0L7RgNGL0LUg0LLQstC+0LTQuNC7INC60LDQttC00YvQuSDQuNC3INC60L7QvNC80LjRgtC+0LIiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE5MQotbXNnaWQgIkNyZWF0ZSBhIHRyZWUgb2JqZWN0IGZyb20gdGhlIGN1cnJlbnQgaW5kZXgiCi1tc2dzdHIgIiIKK21zZ2lkICJNYW5hZ2UgbXVsdGlwbGUgd29ya2luZyB0cmVlcyIKK21zZ3N0ciAi0KPQv9GA0LDQstC70LXQvdC40LUg0L3QtdGB0LrQvtC70YzQutC40LzQuCDRgNCw0LHQvtGH0LjQvNC4INC60LDRgtCw0LvQvtCz0LDQvNC4IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxOTIKK21zZ2lkICJDcmVhdGUgYSB0cmVlIG9iamVjdCBmcm9tIHRoZSBjdXJyZW50IGluZGV4IgorbXNnc3RyICLQodC+0LfQtNCw0L3QuNC1INC+0LHRitC10LrRgtCwINC00LXRgNC10LLQsCDQuNC3INGC0LXQutGD0YnQtdCz0L4g0LjQvdC00LXQutGB0LAiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5MwogbXNnaWQgIkRlZmluaW5nIGF0dHJpYnV0ZXMgcGVyIHBhdGgiCiBtc2dzdHIgItCe0L/RgNC10LTQtdC70LXQvdC40LUg0LDRgtGA0LjQsdGD0YLQvtCyINC00LvRjyDQv9GD0YLQtdC5INGE0LDQudC70L7QsiDQuNC70Lgg0LrQsNGC0LDQu9C+0LPQvtCyIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTMKLW1zZ2lkICJHaXQgY29tbWFuZC1saW5lIGludGVyZmFjZSBhbmQgY29udmVudGlvbnMiCi1tc2dzdHIgIiIKLQogIzogY29tbWFuZC1saXN0Lmg6MTk0Ci1tc2dpZCAiQSBHaXQgY29yZSB0dXRvcmlhbCBmb3IgZGV2ZWxvcGVycyIKLW1zZ3N0ciAiIgorbXNnaWQgIkdpdCBjb21tYW5kLWxpbmUgaW50ZXJmYWNlIGFuZCBjb252ZW50aW9ucyIKK21zZ3N0ciAi0JjQvdGC0LXRgNGE0LXQudGBINC60L7QvNC80LDQvdC00L3QvtC5INGB0YLRgNC+0LrQuCBHaXQg0Lgg0YHQvtCz0LvQsNGI0LXQvdC40Y8iCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE5NQotbXNnaWQgIkdpdCBmb3IgQ1ZTIHVzZXJzIgotbXNnc3RyICIiCittc2dpZCAiQSBHaXQgY29yZSB0dXRvcmlhbCBmb3IgZGV2ZWxvcGVycyIKK21zZ3N0ciAi0KPRh9C10LHQvdC40Log0L/QviDRj9C00YDRgyBHaXQg0LTQu9GPINGA0LDQt9GA0LDQsdC+0YLRh9C40LrQvtCyIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxOTYKLW1zZ2lkICJUd2Vha2luZyBkaWZmIG91dHB1dCIKLW1zZ3N0ciAiIgorbXNnaWQgIkdpdCBmb3IgQ1ZTIHVzZXJzIgorbXNnc3RyICJHaXQg0LTQu9GPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5IENWUyIKIAogIzogY29tbWFuZC1saXN0Lmg6MTk3Ci1tc2dpZCAiQSB1c2VmdWwgbWluaW11bSBzZXQgb2YgY29tbWFuZHMgZm9yIEV2ZXJ5ZGF5IEdpdCIKLW1zZ3N0ciAiIgorbXNnaWQgIlR3ZWFraW5nIGRpZmYgb3V0cHV0IgorbXNnc3RyICLQn9C+0LTRgdGC0YDQvtC50LrQsCDQstGL0LLQvtC00LAg0YHQv9C40YHQutCwINC40LfQvNC10L3QtdC90LjQuSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTk4Ci1tc2dpZCAiQSBHaXQgR2xvc3NhcnkiCi1tc2dzdHIgIiIKK21zZ2lkICJBIHVzZWZ1bCBtaW5pbXVtIHNldCBvZiBjb21tYW5kcyBmb3IgRXZlcnlkYXkgR2l0IgorbXNnc3RyICLQn9C+0LvQtdC30L3Ri9C5INC80LjQvdC40LzRg9C8INC60L7QvNCw0L3QtCDQtNC70Y8g0LrQsNC20LTQvtC00L3QtdCy0L3QvtCz0L4g0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8gR2l0IgogCiAjOiBjb21tYW5kLWxpc3QuaDoxOTkKLW1zZ2lkICJIb29rcyB1c2VkIGJ5IEdpdCIKLW1zZ3N0ciAiIgorbXNnaWQgIkEgR2l0IEdsb3NzYXJ5IgorbXNnc3RyICLQk9C70L7RgdGB0LDRgNC40LkgR2l0IgogCiAjOiBjb21tYW5kLWxpc3QuaDoyMDAKK21zZ2lkICJIb29rcyB1c2VkIGJ5IEdpdCIKK21zZ3N0ciAi0J/QtdGA0LXRhdCy0LDRgtGH0LjQutC4INC40YHQv9C+0LvRjNC30YPQtdC80YvQtSBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMQogbXNnaWQgIlNwZWNpZmllcyBpbnRlbnRpb25hbGx5IHVudHJhY2tlZCBmaWxlcyB0byBpZ25vcmUiCiBtc2dzdHIgItCj0LrQsNC30LDQvdC40LUg0YHQv9C10YbQuNCw0LvRjNC90L4g0LjQs9C90L7RgNC40YDRg9C10LzRi9GFINGE0LDQudC70L7QsiIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAxCisjOiBjb21tYW5kLWxpc3QuaDoyMDIKIG1zZ2lkICJEZWZpbmluZyBzdWJtb2R1bGUgcHJvcGVydGllcyIKIG1zZ3N0ciAi0J7Qv9GA0LXQtNC10LvQtdC90LjQtSDRgdCy0L7QudGB0YLQsiDQv9C+0LTQvNC+0LTRg9C70LXQuSIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAyCi1tc2dpZCAiR2l0IG5hbWVzcGFjZXMiCi1tc2dzdHIgIiIKLQogIzogY29tbWFuZC1saXN0Lmg6MjAzCi1tc2dpZCAiR2l0IFJlcG9zaXRvcnkgTGF5b3V0IgotbXNnc3RyICIiCittc2dpZCAiR2l0IG5hbWVzcGFjZXMiCittc2dzdHIgItCf0YDQvtGB0YLRgNCw0L3RgdGC0LLQsCDQuNC80ZHQvSBHaXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjIwNAorbXNnaWQgIkdpdCBSZXBvc2l0b3J5IExheW91dCIKK21zZ3N0ciAi0KHQvtC00LXRgNC20LjQvNC+0LUg0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNQogbXNnaWQgIlNwZWNpZnlpbmcgcmV2aXNpb25zIGFuZCByYW5nZXMgZm9yIEdpdCIKIG1zZ3N0ciAi0KPQutCw0LfQsNC90LjQtSDRgNC10LTQsNC60YbQuNC5INC4INC00LjQsNC/0LDQt9C+0L3QvtCyINC00LvRjyBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwNQotbXNnaWQgIkEgdHV0b3JpYWwgaW50cm9kdWN0aW9uIHRvIEdpdDogcGFydCB0d28iCi1tc2dzdHIgIiIKLQogIzogY29tbWFuZC1saXN0Lmg6MjA2Ci1tc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0IgotbXNnc3RyICIiCittc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0OiBwYXJ0IHR3byIKK21zZ3N0ciAi0J7QsdGD0YfQsNGO0YnQtdC1INCy0LLQtdC00LXQvdC40LUg0LIgR2l0OiDRh9Cw0YHRgtGMINCy0YLQvtGA0LDRjyIKIAogIzogY29tbWFuZC1saXN0Lmg6MjA3Cittc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0IgorbXNnc3RyICLQntCx0YPRh9Cw0Y7RidC10LUg0LLQstC10LTQtdC90LjQtSDQsiBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwOAogbXNnaWQgIkFuIG92ZXJ2aWV3IG9mIHJlY29tbWVuZGVkIHdvcmtmbG93cyB3aXRoIEdpdCIKIG1zZ3N0ciAi0J7QsdC30L7RgCDRgNC10LrQvtC80LXQvdC00YPQtdC80YvRhSDQv9C+0YHQu9C10LTQvtCy0LDRgtC10LvRjNC90L7RgdGC0LXQuSDQstGL0L/QvtC70L3Rj9C10LzRi9GFINC00LXQudGB0YLQstC40Lkg0YEgR2l0IgogCi0jOiByZXJlcmUuaDo0MAotbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKLW1zZ3N0ciAi0L7QsdC90L7QstC40YLRjCDQuNC90LTQtdC60YEg0YEg0L/QvtC80L7RidGM0Y4g0L/QtdGA0LXQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjRjyDRgNCw0LfRgNC10YjQtdC90LjRjyDQutC+0L3RhNC70LjQutGC0LAsINC10YHQu9C4INCy0L7Qt9C80L7QttC90L4iCi0KICM6IGdpdC1iaXNlY3Quc2g6NTQKIG1zZ2lkICJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIiIKIG1zZ3N0ciAi0JLQsNC8INC90YPQttC90L4g0L3QsNGH0LDRgtGMINGBINC/0L7QvNC+0YnRjNGOIMKrZ2l0IGJpc2VjdCBzdGFydMK7IgpAQCAtMTY5NTksMTYxICsyMDI1Nyw3MyBAQAogbXNnaWQgIkRvIHlvdSB3YW50IG1lIHRvIGRvIGl0IGZvciB5b3UgW1kvbl0/ICIKIG1zZ3N0ciAi0JLRiyDRg9Cy0LXRgNC10L3Riywg0YfRgtC+INGF0L7RgtC40YLQtSwg0YfRgtC+0LHRiyDRjyDRgdC00LXQu9Cw0Lsg0Y3RgtC+IFtZIC0g0LTQsC9uIC0g0L3QtdGCXT8gIgogCi0jOiBnaXQtYmlzZWN0LnNoOjEyMQotIywgc2gtZm9ybWF0Ci1tc2dpZCAidW5yZWNvZ25pc2VkIG9wdGlvbjogJyRhcmcnIgotbXNnc3RyICLQvdC10L7Qv9C+0LfQvdCw0L3QvdCw0Y8g0L7Qv9GG0LjRjzogwqskYXJnwrsiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTI1Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICInJGFyZycgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGEgdmFsaWQgcmV2aXNpb24iCi1tc2dzdHIgIsKrJGFyZ8K7INC90LUg0L/QvtGF0L7QttC1INC90LAg0LTQtdC50YHRgtCy0LjRgtC10LvRjNC90YPRjiDRgNC10LTQsNC60YbQuNGOIgotCi0jOiBnaXQtYmlzZWN0LnNoOjE1NAotbXNnaWQgIkJhZCBIRUFEIC0gSSBuZWVkIGEgSEVBRCIKLW1zZ3N0ciAi0J/Qu9C+0YXQvtC5INGD0LrQsNC30LDRgtC10LvRjCBIRUFEIOKAlCDQndC10L7QsdGF0L7QtNC40Lwg0YPQutCw0LfQsNGC0LXQu9GMIEhFQUQiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTY3Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iQ2hlY2tpbmcgb3V0ICckc3RhcnRfaGVhZCcgZmFpbGVkLiBUcnkgJ2dpdCBiaXNlY3QgcmVzZXQgPHZhbGlkLWJyYW5jaD4nLiIKLW1zZ3N0ciAi0KHQsdC+0Lkg0L/QtdGA0LXRhdC+0LTQsCDQvdCwIMKrJHN0YXJ0X2hlYWTCuy4g0J/QvtC/0YDQvtCx0YPQudGC0LUg0LLRi9C/0L7Qu9C90LjRgtGMIMKrZ2l0IGJpc2VjdCByZXNldCA80YHRg9GJ0LXRgdGC0LLRg9GO0YnQsNGPLdCy0LXRgtC60LA+wrsuIgotCi0jOiBnaXQtYmlzZWN0LnNoOjE3NwotbXNnaWQgIndvbid0IGJpc2VjdCBvbiBjZy1zZWVrJ2VkIHRyZWUiCi1tc2dzdHIgItC90LXQu9GM0LfRjyDQstGL0L/QvtC70L3QuNGC0Ywg0LTQstC+0LjRh9C90YvQuSDQv9C+0LjRgdC6INC90LAg0LTQtdGA0LXQstC1INC/0L7RgdC70LUgY2ctc2VlayIKLQotIzogZ2l0LWJpc2VjdC5zaDoxODEKLW1zZ2lkICJCYWQgSEVBRCAtIHN0cmFuZ2Ugc3ltYm9saWMgcmVmIgotbXNnc3RyICLQn9C70L7RhdC+0Lkg0YPQutCw0LfQsNGC0LXQu9GMIEhFQUQg4oCUINGB0YLRgNCw0L3QvdCw0Y8g0YHQuNC80LLQvtC70YzQvdCw0Y8g0YHRgdGL0LvQutCwIgotCi0jOiBnaXQtYmlzZWN0LnNoOjIzMwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQmFkIGJpc2VjdF93cml0ZSBhcmd1bWVudDogJHN0YXRlIgotbXNnc3RyICLQn9C70L7RhdC+0Lkg0LDRgNCz0YPQvNC10L3RgiBiaXNlY3Rfd3JpdGU6ICRzdGF0ZSIKLQotIzogZ2l0LWJpc2VjdC5zaDoyNDYKKyM6IGdpdC1iaXNlY3Quc2g6MTAxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJCYWQgcmV2IGlucHV0OiAkYXJnIgogbXNnc3RyICLQn9C70L7RhdC+0Lkg0LLQstC+0LQg0L3QvtC80LXRgNCwINGA0LXQtNCw0LrRhtC40Lg6ICRhcmciCiAKLSM6IGdpdC1iaXNlY3Quc2g6MjY1CisjOiBnaXQtYmlzZWN0LnNoOjEyMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQmFkIHJldiBpbnB1dDogJGJpc2VjdGVkX2hlYWQiCiBtc2dzdHIgItCf0LvQvtGF0L7QuSDQstCy0L7QtCDQvdC+0LzQtdGA0LAg0YDQtdC00LDQutGG0LjQuDogJGJpc2VjdGVkX2hlYWQiCiAKLSM6IGdpdC1iaXNlY3Quc2g6Mjc0CisjOiBnaXQtYmlzZWN0LnNoOjEzMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQmFkIHJldiBpbnB1dDogJHJldiIKIG1zZ3N0ciAi0J/Qu9C+0YXQvtC5INCy0LLQvtC0INC90L7QvNC10YDQsCDRgNC10LTQsNC60YbQuNC4OiAkcmV2IgogCi0jOiBnaXQtYmlzZWN0LnNoOjI4MworIzogZ2l0LWJpc2VjdC5zaDoxMzkKICMsIHNoLWZvcm1hdAogbXNnaWQgIidnaXQgYmlzZWN0ICRURVJNX0JBRCcgY2FuIHRha2Ugb25seSBvbmUgYXJndW1lbnQuIgogbXNnc3RyICLCq2dpdCBiaXNlY3QgJFRFUk1fQkFEwrsg0LzQvtC20LXRgiDQv9GA0LjQvdC40LzQsNGC0Ywg0YLQvtC70YzQutC+INC+0LTQuNC9INCw0YDQs9GD0LzQtdC90YIuIgogCi0jOiBnaXQtYmlzZWN0LnNoOjMwNgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiV2FybmluZzogYmlzZWN0aW5nIG9ubHkgd2l0aCBhICRURVJNX0JBRCBjb21taXQuIgotbXNnc3RyICLQn9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1OiDQv9C+0L/Ri9GC0LrQsCDQtNCy0L7QuNGH0L3QvtCz0L4g0L/QvtC40YHQutCwINGBINGD0LrQsNC30LDQvdC40LXQvCDRgtC+0LvRjNC60L4gJFRFUk1fQkFEINC60L7QvNC80LjRgtCwLiIKLQotIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtZXSBhbmQgW25dIGluIHlvdXIKLSMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKLSMuIGF0IHRoaXMgcG9pbnQuCi0jOiBnaXQtYmlzZWN0LnNoOjMxMgotbXNnaWQgIkFyZSB5b3Ugc3VyZSBbWS9uXT8gIgotbXNnc3RyICLQktGLINGD0LLQtdGA0LXQvdGLIFtZIC0g0LTQsC9uIC0g0L3QtdGCXT8gIgotCi0jOiBnaXQtYmlzZWN0LnNoOjMyNAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICRiYWRfc3luIGFuZCBvbmUgJGdvb2Rfc3luIHJldmlzaW9uLlxuIgotIihZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJGJhZF9zeW5cIiBhbmQgXCJnaXQgYmlzZWN0ICRnb29kX3N5blwiIGZvciB0aGF0LikiCi1tc2dzdHIgItCS0LDQvCDQvdGD0LbQvdC+INC/0LXRgNC10LTQsNGC0Ywg0LzQvdC1INC60LDQuiDQvNC40L3QuNC80YPQvCDQvtC00L3RgyAkYmFkX3N5biDQuCDQvtC00L3RgyAkZ29vZF9zeW4g0YDQtdC00LDQutGG0LjRji5cbijQlNC70Y8g0Y3RgtC+0LPQviDQstGLINC80L7QttC10YLQtSDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LrQvtC80LDQvdC00YsgwqtnaXQgYmlzZWN0ICRiYWRfc3luwrsg0LggwqtnaXQgYmlzZWN0ICRnb29kX3N5bsK7LikiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MzI3Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iWW91IG5lZWQgdG8gc3RhcnQgYnkgXCJnaXQgYmlzZWN0IHN0YXJ0XCIuXG4iCi0iWW91IHRoZW4gbmVlZCB0byBnaXZlIG1lIGF0IGxlYXN0IG9uZSAkZ29vZF9zeW4gYW5kIG9uZSAkYmFkX3N5biByZXZpc2lvbi5cbiIKLSIoWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICRiYWRfc3luXCIgYW5kIFwiZ2l0IGJpc2VjdCAkZ29vZF9zeW5cIiBmb3IgdGhhdC4pIgotbXNnc3RyICLQlNC70Y8g0L3QsNGH0LDQu9CwINC90YPQttC90L4g0LfQsNC/0YPRgdGC0LjRgtGMIMKrZ2l0IGJpc2VjdCBzdGFydMK7Llxu0J/QvtGB0LvQtSDRjdGC0L7Qs9C+LCDQstCw0Lwg0L3Rg9C20L3QviDQv9C10YDQtdC00LDRgtGMINC80L3QtSDQutCw0Log0LzQuNC90LjQvNGD0Lwg0L7QtNC90YMgJGdvb2Rfc3luINC4INC+0LTQvdGDICRiYWRfc3luINGA0LXQtNCw0LrRhtC40Y4uXG4o0JTQu9GPINGN0YLQvtCz0L4g0LLRiyDQvNC+0LbQtdGC0LUg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC60L7QvNCw0L3QtNGLIMKrZ2l0IGJpc2VjdCAkZ29vZF9zeW7CuyDQuCDCq2dpdCBiaXNlY3QgJGdvb2Rfc3luwrsuKSIKLQotIzogZ2l0LWJpc2VjdC5zaDozOTggZ2l0LWJpc2VjdC5zaDo1MTIKLW1zZ2lkICJXZSBhcmUgbm90IGJpc2VjdGluZy4iCi1tc2dzdHIgItCS0Ysg0YHQtdC50YfQsNGBINC90LUg0LIg0L/RgNC+0YbQtdGB0YHQtSDQsdC40L3QsNGA0L3QvtCz0L4g0L/QvtC40YHQutCwLiIKLQotIzogZ2l0LWJpc2VjdC5zaDo0MDUKLSMsIHNoLWZvcm1hdAotbXNnaWQgIickaW52YWxpZCcgaXMgbm90IGEgdmFsaWQgY29tbWl0IgotbXNnc3RyICLCqyRpbnZhbGlkwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC00LXQudGB0YLQstC40YLQtdC70YzQvdGL0Lwg0LrQvtC80LzQuNGC0L7QvCIKLQotIzogZ2l0LWJpc2VjdC5zaDo0MTQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJDb3VsZCBub3QgY2hlY2sgb3V0IG9yaWdpbmFsIEhFQUQgJyRicmFuY2gnLlxuIgotIlRyeSAnZ2l0IGJpc2VjdCByZXNldCA8Y29tbWl0PicuIgotbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0LXRgNC10LnRgtC4INC90LAg0L7RgNC40LPQuNC90LDQu9GM0L3Rg9GOINCy0LXRgtC60YMgSEVBRCDCqyRicmFuY2jCuy5cbtCf0L7Qv9GA0L7QsdGD0LnRgtC1INC30LDQv9GD0YHRgtC40YLRjCDCq2dpdCBiaXNlY3QgcmVzZXQgPNC60L7QvNC80LjRgj7Cuy4iCi0KLSM6IGdpdC1iaXNlY3Quc2g6NDIyCisjOiBnaXQtYmlzZWN0LnNoOjIwOQogbXNnaWQgIk5vIGxvZ2ZpbGUgZ2l2ZW4iCiBtc2dzdHIgItCd0LUg0L/QtdGA0LXQtNCw0L0g0YTQsNC50Lsg0LbRg9GA0L3QsNC70LAiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDIzCisjOiBnaXQtYmlzZWN0LnNoOjIxMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJGZpbGUgZm9yIHJlcGxheWluZyIKIG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0YwgJGZpbGUg0LTQu9GPINC/0L7QstGC0L7RgNCwINC40LfQvNC10L3QtdC90LjQuSIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NDQKKyM6IGdpdC1iaXNlY3Quc2g6MjMyCiBtc2dpZCAiPz8gd2hhdCBhcmUgeW91IHRhbGtpbmcgYWJvdXQ/IgogbXNnc3RyICI/PyDQstGLINC+INGH0LXQvD8iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDUzCisjOiBnaXQtYmlzZWN0LnNoOjI0MQogbXNnaWQgImJpc2VjdCBydW4gZmFpbGVkOiBubyBjb21tYW5kIHByb3ZpZGVkLiIKIG1zZ3N0ciAi0YHQsdC+0Lkg0L/RgNC4INCy0YvQv9C+0LvQvdC10L3QuNC4INC00LLQvtC40YfQvdC+0LPQviDQv9C+0LjRgdC60LA6INC90LUg0L/QtdGA0LXQtNCw0L3QsCDQutC+0LzQsNC90LTQsC4iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDU4CisjOiBnaXQtYmlzZWN0LnNoOjI0NgogIywgc2gtZm9ybWF0CiBtc2dpZCAicnVubmluZyAkY29tbWFuZCIKIG1zZ3N0ciAi0LfQsNC/0YPRgdC60LDRjiAkY29tbWFuZCIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NjUKKyM6IGdpdC1iaXNlY3Quc2g6MjUzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiYmlzZWN0IHJ1biBmYWlsZWQ6XG4iCiAiZXhpdCBjb2RlICRyZXMgZnJvbSAnJGNvbW1hbmQnIGlzIDwgMCBvciA+PSAxMjgiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINC00LLQvtC40YfQvdGL0Lkg0L/QvtC40YHQujpcbtC60L7QtCDQt9Cw0LLQtdGA0YjQtdC90LjRjyAkcmVzINC+0YIgwqskY29tbWFuZMK7INC+0LrQsNC30LDQu9GB0Y8gPCAwINC40LvQuCA+PSAxMjgiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDkxCisjOiBnaXQtYmlzZWN0LnNoOjI3OQogbXNnaWQgImJpc2VjdCBydW4gY2Fubm90IGNvbnRpbnVlIGFueSBtb3JlIgogbXNnc3RyICJiaXNlY3QgcnVuINCx0L7Qu9GM0YjQtSDQvdC1INC80L7QttC10YIg0L/RgNC+0LTQvtC70LbQsNGC0YwiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDk3CisjOiBnaXQtYmlzZWN0LnNoOjI4NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogImJpc2VjdCBydW4gZmFpbGVkOlxuIgogIidiaXNlY3Rfc3RhdGUgJHN0YXRlJyBleGl0ZWQgd2l0aCBlcnJvciBjb2RlICRyZXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINC00LLQvtC40YfQvdGL0Lkg0L/QvtC40YHQujpcbsKrYmlzZWN0X3N0YXRlICRzdGF0ZcK7INC30LDQstC10YDRiNC40LvRgdGPINGBINC60L7QtNC+0Lwg0L7RiNC40LHQutC4ICRyZXMiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NTA0CisjOiBnaXQtYmlzZWN0LnNoOjI5MgogbXNnaWQgImJpc2VjdCBydW4gc3VjY2VzcyIKIG1zZ3N0ciAiYmlzZWN0IHJ1biDQstGL0L/QvtC70L3QtdC9INGD0YHQv9C10YjQvdC+IgogCi0jOiBnaXQtYmlzZWN0LnNoOjUzMwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiSW52YWxpZCBjb21tYW5kOiB5b3UncmUgY3VycmVudGx5IGluIGEgJFRFUk1fQkFELyRURVJNX0dPT0QgYmlzZWN0LiIKLW1zZ3N0ciAi0J3QtdC00L7Qv9GD0YHRgtC40LzQsNGPINC60L7QvNCw0L3QtNCwOiDQstGLINGB0LXQudGH0LDRgSDQvdCw0YXQvtC00LjRgtC10YHRjCDQvdCwICRURVJNX0JBRC8kVEVSTV9HT09EINC00LLQvtC40YfQvdC+0Lwg0L/QvtC40YHQutC1LiIKLQotIzogZ2l0LWJpc2VjdC5zaDo1NjcKLW1zZ2lkICJubyB0ZXJtcyBkZWZpbmVkIgotbXNnc3RyICLQvtC/0YDQtdC00LXQu9C10L3QuNGPINC90LUg0LfQsNC00LDQvdGLIgotCi0jOiBnaXQtYmlzZWN0LnNoOjU4NAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotImludmFsaWQgYXJndW1lbnQgJGFyZyBmb3IgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgotIlN1cHBvcnRlZCBvcHRpb25zIGFyZTogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCBhbmQgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKLW1zZ3N0ciAi0L3QtdC00L7Qv9GD0YHRgtC40LzRi9C5INCw0YDQs9GD0LzQtdC90YIgJGFyZyDQtNC70Y8gwqtnaXQgYmlzZWN0IHRlcm1zwrsuXG7Qn9C+0LTQtNC10YDQttC40LLQsNC10LzRi9C1INC/0LDRgNCw0LzQtdGC0YDRizogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCDQuCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgorIzogZ2l0LWJpc2VjdC5zaDozMDAKK21zZ2lkICJXZSBhcmUgbm90IGJpc2VjdGluZy4iCittc2dzdHIgItCS0Ysg0YHQtdC50YfQsNGBINC90LUg0LIg0L/RgNC+0YbQtdGB0YHQtSDQsdC40L3QsNGA0L3QvtCz0L4g0L/QvtC40YHQutCwLiIKIAogIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6NDYKIG1zZ2lkICIiCkBAIC0xNzE1MywzMjEgKzIwMzYzLDExMyBAQAogbXNnaWQgIlNpbXBsZSBtZXJnZSBkaWQgbm90IHdvcmssIHRyeWluZyBhdXRvbWF0aWMgbWVyZ2UuIgogbXNnc3RyICLQn9GA0L7RgdGC0L7QtSDRgdC70LjRj9C90LjQtSDQvdC1INGD0LTQsNC70L7RgdGMLCDQv9C+0L/Ri9GC0LrQsCDQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQvtCz0L4g0YHQu9C40Y/QvdC40Y8uIgogCi0jOiBnaXQtcmViYXNlLnNoOjYxCi1tc2dpZCAiIgotIlJlc29sdmUgYWxsIGNvbmZsaWN0cyBtYW51YWxseSwgbWFyayB0aGVtIGFzIHJlc29sdmVkIHdpdGhcbiIKLSJcImdpdCBhZGQvcm0gPGNvbmZsaWN0ZWRfZmlsZXM+XCIsIHRoZW4gcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIuXG4iCi0iWW91IGNhbiBpbnN0ZWFkIHNraXAgdGhpcyBjb21taXQ6IHJ1biBcImdpdCByZWJhc2UgLS1za2lwXCIuXG4iCi0iVG8gYWJvcnQgYW5kIGdldCBiYWNrIHRvIHRoZSBzdGF0ZSBiZWZvcmUgXCJnaXQgcmViYXNlXCIsIHJ1biBcImdpdCByZWJhc2UgLS1hYm9ydFwiLiIKLW1zZ3N0ciAi0KDQsNC30YDQtdGI0LjRgtC1INCy0YHQtSDQutC+0L3RhNC70LjQutGC0Ysg0LLRgNGD0YfQvdGD0Y4sINC/0L7QvNC10YLRjNGC0LUg0LjRhSDRgNCw0LfRgNC10YjRkdC90L3Ri9C80Lgg0YEg0L/QvtC80L7RidGM0Y4gwqtnaXQgYWRkL3JtIDzQutC+0L3RhNC70LjQutGC0YPRjtGJ0LjQtS3RhNCw0LnQu9GLPsK7LCDQsCDQt9Cw0YLQtdC8INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCByZWJhc2UgLS1jb250aW51ZcK7Llxu0JXRgdC70Lgg0LLRiyDRhdC+0YLQuNGC0LUg0L/RgNC+0L/Rg9GB0YLQuNGC0Ywg0Y3RgtC+0YIg0LrQvtC80LzQuNGCLCDRgtC+INC30LDQv9GD0YHRgtC40YLQtSDCq2dpdCByZWJhc2UgLS1za2lwwrsuXG7Qp9GC0L7QsdGLINCy0LXRgNC90YPRgtGM0YHRjyDQvdCwINGB0L7RgdGC0L7Rj9C90LjQtSDQtNC+IMKrZ2l0IHJlYmFzZcK7LCDQt9Cw0L/Rg9GB0YLQuNGC0LUgwqtnaXQgcmViYXNlIC0tYWJvcnTCuy4iCi0KLSM6IGdpdC1yZWJhc2Uuc2g6MTczIGdpdC1yZWJhc2Uuc2g6NDU0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgbW92ZSBiYWNrIHRvICRoZWFkX25hbWUiCi1tc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQudGC0Lgg0L3QsNC30LDQtCDQvdCwICRoZWFkX25hbWUiCi0KLSM6IGdpdC1yZWJhc2Uuc2g6MTg0Ci1tc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guIgotbXNnc3RyICLQn9GA0LjQvNC10L3QtdC90Ysg0LDQstGC0L7QvNCw0YLQuNGH0LXRgdC60Lgg0YHQv9GA0Y/RgtCw0L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPLiIKLQotIzogZ2l0LXJlYmFzZS5zaDoxODcKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkNhbm5vdCBzdG9yZSAkc3Rhc2hfc2hhMSIKLW1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0YXRgNCw0L3QuNGC0YwgJHN0YXNoX3NoYTEiCi0KLSM6IGdpdC1yZWJhc2Uuc2g6MjM2Ci1tc2dpZCAiVGhlIHByZS1yZWJhc2UgaG9vayByZWZ1c2VkIHRvIHJlYmFzZS4iCi1tc2dzdHIgItCf0LXRgNC10YXQstCw0YLRh9C40LogcHJlLXJlYmFzZSDQvtGC0LrQsNC30LDQuyDQsiDQv9C10YDQtdC80LXRidC10L3QuNC4LiIKLQotIzogZ2l0LXJlYmFzZS5zaDoyNDEKLW1zZ2lkICJJdCBsb29rcyBsaWtlICdnaXQgYW0nIGlzIGluIHByb2dyZXNzLiBDYW5ub3QgcmViYXNlLiIKLW1zZ3N0ciAi0J/QvtGF0L7QttC1LCDRh9GC0L4g0LLRi9C/0L7Qu9C90Y/QtdGC0YHRjyDCq2dpdCBhbcK7LiDQndC10LLQvtC30LzQvtC20L3QviDQstGL0L/QvtC70L3QuNGC0Ywg0L/QtdGA0LXQvNC10YnQtdC90LjQtS4iCi0KLSM6IGdpdC1yZWJhc2Uuc2g6NDE1Ci1tc2dpZCAiTm8gcmViYXNlIGluIHByb2dyZXNzPyIKLW1zZ3N0ciAi0J3QtdGCINC/0LXRgNC10LzQtdGJ0LXQvdC40Y8g0LIg0L/RgNC+0YbQtdGB0YHQtT8iCi0KLSM6IGdpdC1yZWJhc2Uuc2g6NDI2Ci1tc2dpZCAiVGhlIC0tZWRpdC10b2RvIGFjdGlvbiBjYW4gb25seSBiZSB1c2VkIGR1cmluZyBpbnRlcmFjdGl2ZSByZWJhc2UuIgotbXNnc3RyICLQlNC10LnRgdGC0LLQuNC1IC0tZWRpdC10b2RvINC80L7QttC10YIg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGM0YHRjyDRgtC+0LvRjNC60L4g0L/RgNC4INC40L3RgtC10YDQsNC60YLQuNCy0L3QvtC8INC/0LXRgNC10LzQtdGJ0LXQvdC40LguIgotCi0jOiBnaXQtcmViYXNlLnNoOjQzMwotbXNnaWQgIkNhbm5vdCByZWFkIEhFQUQiCi1tc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMIEhFQUQiCi0KLSM6IGdpdC1yZWJhc2Uuc2g6NDM2Ci1tc2dpZCAiIgotIllvdSBtdXN0IGVkaXQgYWxsIG1lcmdlIGNvbmZsaWN0cyBhbmQgdGhlblxuIgotIm1hcmsgdGhlbSBhcyByZXNvbHZlZCB1c2luZyBnaXQgYWRkIgotbXNnc3RyICLQktGLINC00L7Qu9C20L3RiyDQvtGC0YDQtdC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0LLRgdC1XG7QutC+0L3RhNC70LjQutGC0Ysg0YHQu9C40Y/QvdC40Y8sINCwINC/0L7RgtC+0Lwg0L/QvtC80LXRgtC40YLRjFxu0LjRhSDQutCw0Log0YDQsNC30YDQtdGI0LXQvdC90YvQtSDRgSDQv9C+0LzQvtGJ0YzRjiBnaXQgYWRkIgotCi0jOiBnaXQtcmViYXNlLnNoOjQ4MAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIkl0IHNlZW1zIHRoYXQgdGhlcmUgaXMgYWxyZWFkeSBhICRzdGF0ZV9kaXJfYmFzZSBkaXJlY3RvcnksIGFuZFxuIgotIkkgd29uZGVyIGlmIHlvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIHJlYmFzZS4gIElmIHRoYXQgaXMgdGhlXG4iCi0iY2FzZSwgcGxlYXNlIHRyeVxuIgotIlx0JGNtZF9saXZlX3JlYmFzZVxuIgotIklmIHRoYXQgaXMgbm90IHRoZSBjYXNlLCBwbGVhc2VcbiIKLSJcdCRjbWRfY2xlYXJfc3RhbGVfcmViYXNlXG4iCi0iYW5kIHJ1biBtZSBhZ2Fpbi4gIEkgYW0gc3RvcHBpbmcgaW4gY2FzZSB5b3Ugc3RpbGwgaGF2ZSBzb21ldGhpbmdcbiIKLSJ2YWx1YWJsZSB0aGVyZS4iCi1tc2dzdHIgItCf0L7RhdC+0LbQtSwg0LrQsNGC0LDQu9C+0LMgJHN0YXRlX2Rpcl9iYXNlINGD0LbQtSDRgdGD0YnQtdGB0YLQstGD0LXRgiDQuCDRjyDQv9GA0LXQtNC/0L7Qu9Cw0LPQsNGOLCDRh9GC0L4g0LLRiyDQsiDQv9GA0L7RhtC10YHRgdC1INC00YDRg9Cz0L7Qs9C+INC/0LXRgNC10LzQtdGJ0LXQvdC40Y8uICDQldGB0LvQuCDRjdGC0L4g0YLQsNC6LCDQv9C+0L/RgNC+0LHRg9C50YLQtVxuXHQkY21kX2xpdmVfcmViYXNlXG7QldGB0LvQuCDQvdC10YJcblx0JGNtZF9jbGVhcl9zdGFsZV9yZWJhc2VcbtC4INC30LDQv9GD0YHRgtC40YLQtSDQvNC10L3RjyDRgdC90L7QstCwLiAg0K8g0L7RgdGC0LDQvdCw0LLQu9C40LLQsNGO0YHRjCwg0YfRgtC+0LHRiyDQstGLINC90LUg0L/QvtGC0LXRgNGP0LvQuCDRh9GC0L4t0YLQviDQstCw0LbQvdC+0LUuIgotCi0jOiBnaXQtcmViYXNlLnNoOjU0NQotbXNnaWQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1zaWdub2ZmJyB3aXRoICctLXByZXNlcnZlLW1lcmdlcyciCi1tc2dzdHIgIiIKLQotIzogZ2l0LXJlYmFzZS5zaDo1NTYKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmVfbWVyZ2VzJyB3aXRoICctLXJlYmFzZS1tZXJnZXMnIgotbXNnc3RyICIiCi0KLSM6IGdpdC1yZWJhc2Uuc2g6NTYyCi1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZV9tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3ktb3B0aW9uJyIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtcmViYXNlLnNoOjU2NAotbXNnaWQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1yZWJhc2VfbWVyZ2VzJyB3aXRoICctLXN0cmF0ZWd5JyIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtcmViYXNlLnNoOjU5MAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCB1cHN0cmVhbSAnJHVwc3RyZWFtX25hbWUnIgotbXNnc3RyICLQvdC10LTQtdC50YHRgtCy0LjRgtC10LvRjNC90LDRjyDQstGL0YjQtdGB0YLQvtGP0YnQsNGPINCy0LXRgtC60LAgwqskdXBzdHJlYW1fbmFtZcK7IgotCi0jOiBnaXQtcmViYXNlLnNoOjYxNAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJG9udG9fbmFtZTogdGhlcmUgYXJlIG1vcmUgdGhhbiBvbmUgbWVyZ2UgYmFzZXMiCi1tc2dzdHIgIiRvbnRvX25hbWU6INC40LzQtdC10YLRgdGPINCx0L7Qu9GM0YjQtSDQvtC00L3QvtC5INCx0LDQt9GLINGB0LvQuNGP0L3QuNGPIgotCi0jOiBnaXQtcmViYXNlLnNoOjYxNyBnaXQtcmViYXNlLnNoOjYyMQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJG9udG9fbmFtZTogdGhlcmUgaXMgbm8gbWVyZ2UgYmFzZSIKLW1zZ3N0ciAiJG9udG9fbmFtZTog0L3QtdGCINCx0LDQt9GLINGB0LvQuNGP0L3QuNGPIgotCi0jOiBnaXQtcmViYXNlLnNoOjYyNgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBjb21taXQ6ICRvbnRvX25hbWUiCi1tc2dzdHIgItCd0LUg0YPQutCw0LfRi9Cy0LDQtdGCINC90LAg0LTQtdC50YHRgtCy0LjRgtC10LvRjNC90YvQuSDQutC+0LzQvNC40YI6ICRvbnRvX25hbWUiCi0KLSM6IGdpdC1yZWJhc2Uuc2g6NjUyCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICckYnJhbmNoX25hbWUnIgotbXNnc3RyICLQutGA0LjRgtC40YfQtdGB0LrQsNGPINC+0YjQuNCx0LrQsDog0L3QtdGCINGC0LDQutC+0Lkg0LLQtdGC0LrQuC/QutC+0LzQvNC40YLQsCDCqyRicmFuY2hfbmFtZcK7IgotCi0jOiBnaXQtcmViYXNlLnNoOjY4NQotbXNnaWQgIkNhbm5vdCBhdXRvc3Rhc2giCi1tc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LDQstGC0L7QvNCw0YLQuNGH0LXRgdC60Lgg0YHQv9GA0Y/RgtCw0YLRjCDQuNC30LzQtdC90LXQvdC40Y8iCi0KLSM6IGdpdC1yZWJhc2Uuc2g6NjkwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJHN0YXNoX2FiYnJldiIKLW1zZ3N0ciAi0JjQt9C80LXQvdC10L3QuNGPINCw0LLRgtC+0LzQsNGC0LjRh9C10YHQutC4INGB0L/RgNGP0YLQsNC90Ys6ICRzdGFzaF9hYmJyZXYiCi0KLSM6IGdpdC1yZWJhc2Uuc2g6Njk0Ci1tc2dpZCAiUGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKLW1zZ3N0ciAi0KHQtNC10LvQsNC50YLQtSDQutC+0LzQvNC40YIg0LjQu9C4INGB0L/RgNGP0YfRjNGC0LUg0LjRhS4iCi0KLSM6IGdpdC1yZWJhc2Uuc2g6NzE3Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJIRUFEIGlzIHVwIHRvIGRhdGUuIgotbXNnc3RyICJIRUFEINGD0LbQtSDQsiDQsNC60YLRg9Cw0LvRjNC90L7QvCDRgdC+0YHRgtC+0Y/QvdC40LguIgotCi0jOiBnaXQtcmViYXNlLnNoOjcxOQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUuIgotbXNnc3RyICLQotC10LrRg9GJ0LDRjyDQstC10YLQutCwICRicmFuY2hfbmFtZSDRg9C20LUg0LIg0LDQutGC0YPQsNC70YzQvdC+0Lwg0YHQvtGB0YLQvtGP0L3QuNC4LiIKLQotIzogZ2l0LXJlYmFzZS5zaDo3MjcKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkhFQUQgaXMgdXAgdG8gZGF0ZSwgcmViYXNlIGZvcmNlZC4iCi1tc2dzdHIgIkhFQUQg0YPQttC1INCyINCw0LrRgtGD0LDQu9GM0L3QvtC8INGB0L7RgdGC0L7Rj9C90LjQuCwg0L/RgNC40L3Rg9C00LjRgtC10LvRjNC90L7QtSDQv9C10YDQtdC80LXRidC10L3QuNC1LiIKLQotIzogZ2l0LXJlYmFzZS5zaDo3MjkKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkN1cnJlbnQgYnJhbmNoICRicmFuY2hfbmFtZSBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLiIKLW1zZ3N0ciAi0KLQtdC60YPRidCw0Y8g0LLQtdGC0LrQsCAkYnJhbmNoX25hbWUg0YPQttC1INCyINCw0LrRgtGD0LDQu9GM0L3QvtC8INGB0L7RgdGC0L7Rj9C90LjQuCwg0L/RgNC40L3Rg9C00LjRgtC10LvRjNC90L7QtSDQv9C10YDQtdC80LXRidC10L3QuNC1LiIKLQotIzogZ2l0LXJlYmFzZS5zaDo3NDEKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkNoYW5nZXMgZnJvbSAkbWIgdG8gJG9udG86IgotbXNnc3RyICLQmNC30LzQtdC90LXQvdC40Y8g0L7RgiAkbWIg0LTQviAkb250bzoiCi0KLSM6IGdpdC1yZWJhc2Uuc2g6NzUwCi1tc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uIgotbXNnc3RyICLQodC90LDRh9Cw0LvQsCDQv9C10YDQtdC80LDRgtGL0LLQsNC10Lwg0YPQutCw0LfQsNGC0LXQu9GMINGC0LXQutGD0YnQtdCz0L4g0LrQvtC80LzQuNGC0LAsINGH0YLQvtCx0Ysg0L/RgNC40LzQtdC90LjRgtGMINCy0LDRiNC4INC40LfQvNC10L3QtdC90LjRjyDQv9C+0LLQtdGA0YUg0L3QtdCz0L7igKYiCi0KLSM6IGdpdC1yZWJhc2Uuc2g6NzYwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJGYXN0LWZvcndhcmRlZCAkYnJhbmNoX25hbWUgdG8gJG9udG9fbmFtZS4iCi1tc2dzdHIgItCf0LXRgNC10LzQvtGC0LDQvdCwINCy0L/QtdGA0LXQtCAkYnJhbmNoX25hbWUg0LTQviAkb250b19uYW1lLiIKLQotIzogZ2l0LXN0YXNoLnNoOjYxCi1tc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIHdpdGggcGFyYW1ldGVycyBpcyB1bmltcGxlbWVudGVkIgotbXNnc3RyICJnaXQgc3Rhc2gg0L7Rh9C40YHRgtC60LAg0YEg0L/QsNGA0LDQvNC10YLRgNCw0LzQuCDQvdC1INGA0LXQsNC70LjQt9C+0LLQsNC90LAiCi0KLSM6IGdpdC1zdGFzaC5zaDoxMDgKLW1zZ2lkICJZb3UgZG8gbm90IGhhdmUgdGhlIGluaXRpYWwgY29tbWl0IHlldCIKLW1zZ3N0ciAi0KMg0LLQsNGBINC10YnQtSDQvdC10YIg0L3QsNGH0LDQu9GM0L3QvtCz0L4g0LrQvtC80LzQuNGC0LAiCi0KLSM6IGdpdC1zdGFzaC5zaDoxMjMKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBpbmRleCBzdGF0ZSIKLW1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0YXRgNCw0L3QuNGC0Ywg0YLQtdC60YPRidC10LUg0YHQvtGB0YLQvtGP0L3QuNC1INC40L3QtNC10LrRgdCwIgotCi0jOiBnaXQtc3Rhc2guc2g6MTM4Ci1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIHVudHJhY2tlZCBmaWxlcyIKLW1zZ3N0ciAi0J3QtdCy0L7Qt9C80L7QttC90L4g0YHQvtGF0YDQsNC90LjRgtGMINC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvQtSDRhNCw0LnQu9GLIgotCi0jOiBnaXQtc3Rhc2guc2g6MTU4IGdpdC1zdGFzaC5zaDoxNzEKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCB3b3JrdHJlZSBzdGF0ZSIKLW1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0YXRgNCw0L3QuNGC0Ywg0YLQtdC60YPRidC10LUg0YHQvtGB0YLQvtGP0L3QuNC1INGA0LDQsdC+0YfQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsCIKLQotIzogZ2l0LXN0YXNoLnNoOjE3NQotbXNnaWQgIk5vIGNoYW5nZXMgc2VsZWN0ZWQiCi1tc2dzdHIgItCY0LfQvNC10L3QtdC90LjRjyDQvdC1INCy0YvQsdGA0LDQvdGLIgotCi0jOiBnaXQtc3Rhc2guc2g6MTc4CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIyMAogbXNnaWQgIkNhbm5vdCByZW1vdmUgdGVtcG9yYXJ5IGluZGV4IChjYW4ndCBoYXBwZW4pIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINCy0YDQtdC80LXQvdC90YvQuSDQuNC90LTQtdC60YEgKNC90LUg0LTQvtC70LbQvdC+INGB0LvRg9GH0LDRgtGM0YHRjykiCiAKLSM6IGdpdC1zdGFzaC5zaDoxOTEKLW1zZ2lkICJDYW5ub3QgcmVjb3JkIHdvcmtpbmcgdHJlZSBzdGF0ZSIKLW1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMINGB0L7RgdGC0L7Rj9C90LjQtSDRgNCw0LHQvtGH0LXQs9C+INC60LDRgtCw0LvQvtCz0LAiCi0KLSM6IGdpdC1zdGFzaC5zaDoyMjkKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjcxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgdXBkYXRlICRyZWZfc3Rhc2ggd2l0aCAkd19jb21taXQiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L7QsdC90L7QstC40YLRjCAkcmVmX3N0YXNoINGBINC/0L7QvNC+0YnRjNGOICR3X2NvbW1pdCIKIAotIzogZ2l0LXN0YXNoLnNoOjI4MQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMjMKICMsIHNoLWZvcm1hdAogbXNnaWQgImVycm9yOiB1bmtub3duIG9wdGlvbiBmb3IgJ3N0YXNoIHB1c2gnOiAkb3B0aW9uIgogbXNnc3RyICLQvtGI0LjQsdC60LA6INC90LXQuNC30LLQtdGB0YLQvdGL0Lkg0L/QsNGA0LDQvNC10YLRgCDQtNC70Y8gwqtzdGFzaCBwdXNowrs6ICRvcHRpb24iCiAKLSM6IGdpdC1zdGFzaC5zaDoyOTUKLW1zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgotbXNnc3RyICLQndC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIC0tcGF0Y2gg0LggLS1pbmNsdWRlLXVudHJhY2tlZCDQuNC70LggLS1hbGwg0L7QtNC90L7QstGA0LXQvNC10L3QvdC+IgotCi0jOiBnaXQtc3Rhc2guc2g6MzAzCi1tc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgotbXNnc3RyICLQndC10YIg0LvQvtC60LDQu9GM0L3Ri9GFINC40LfQvNC10L3QtdC90LjQuSDQtNC70Y8g0YHQvtGF0YDQsNC90LXQvdC40Y8iCi0KLSM6IGdpdC1zdGFzaC5zaDozMDgKLW1zZ2lkICJDYW5ub3QgaW5pdGlhbGl6ZSBzdGFzaCIKLW1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQuNC90LjRhtC40LDQu9C40LfQuNGA0L7QstCw0YLRjCDRgdC/0YDRj9GC0LDQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8iCi0KLSM6IGdpdC1zdGFzaC5zaDozMTIKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBzdGF0dXMiCi1tc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtGF0YDQsNC90LjRgtGMINGC0LXQutGD0YnQuNC5INGB0YLQsNGC0YPRgSIKLQotIzogZ2l0LXN0YXNoLnNoOjMxMworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTUKICMsIHNoLWZvcm1hdAogbXNnaWQgIlNhdmVkIHdvcmtpbmcgZGlyZWN0b3J5IGFuZCBpbmRleCBzdGF0ZSAkc3Rhc2hfbXNnIgogbXNnc3RyICLQoNCw0LHQvtGH0LjQuSDQutCw0YLQsNC70L7QsyDQuCDRgdC+0YHRgtC+0Y/QvdC40LUg0LjQvdC00LXQutGB0LAg0YHQvtGF0YDQsNC90LXQvdGLICRzdGFzaF9tc2ciCiAKLSM6IGdpdC1zdGFzaC5zaDozNDIKLW1zZ2lkICJDYW5ub3QgcmVtb3ZlIHdvcmt0cmVlIGNoYW5nZXMiCi1tc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0Ywg0LjQt9C80LXQvdC10L3QuNGPINGA0LDQsdC+0YfQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsCIKLQotIzogZ2l0LXN0YXNoLnNoOjQ5MAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1MzUKICMsIHNoLWZvcm1hdAogbXNnaWQgInVua25vd24gb3B0aW9uOiAkb3B0IgogbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3QsNGPINC+0L/RhtC40Y86ICRvcHQiCiAKLSM6IGdpdC1zdGFzaC5zaDo1MDMKLW1zZ2lkICJObyBzdGFzaCBlbnRyaWVzIGZvdW5kLiIKLW1zZ3N0ciAi0J3QtSDQvdCw0LnQtNC10L3RiyDRgdC/0YDRj9GC0LDQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8uIgotCi0jOiBnaXQtc3Rhc2guc2g6NTEwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU1NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDogJFJFViIKIG1zZ3N0ciAi0J/QtdGA0LXQtNCw0L3QviDRgdC70LjRiNC60L7QvCDQvNC90L7Qs9C+INGA0LXQtNCw0LrRhtC40Lk6ICRSRVYiCiAKLSM6IGdpdC1zdGFzaC5zaDo1MjUKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NTcwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIkcmVmZXJlbmNlIGlzIG5vdCBhIHZhbGlkIHJlZmVyZW5jZSIKIG1zZ3N0ciAiJHJlZmVyZW5jZSDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LTQtdC50YHRgtCy0LjRgtC10LvRjNC90L7QuSDRgdGB0YvQu9C60L7QuSIKIAotIzogZ2l0LXN0YXNoLnNoOjU1MworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1OTgKICMsIHNoLWZvcm1hdAogbXNnaWQgIickYXJncycgaXMgbm90IGEgc3Rhc2gtbGlrZSBjb21taXQiCiBtc2dzdHIgIsKrJGFyZ3PCuyDQvdC1INC/0L7RhdC+0LbQtSDQvdCwINC60L7QvNC80LjRgiDRgdC+INGB0L/RgNGP0YLQsNC90L3Ri9C80Lgg0LjQt9C80LXQvdC10L3QuNGP0LzQuCIKIAotIzogZ2l0LXN0YXNoLnNoOjU2NAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MDkKICMsIHNoLWZvcm1hdAogbXNnaWQgIickYXJncycgaXMgbm90IGEgc3Rhc2ggcmVmZXJlbmNlIgogbXNnc3RyICLCqyRhcmdzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINGB0YHRi9C70LrQvtC5INC90LAg0YHQv9GA0Y/RgtCw0L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPIgogCi0jOiBnaXQtc3Rhc2guc2g6NTcyCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYxNwogbXNnaWQgInVuYWJsZSB0byByZWZyZXNoIGluZGV4IgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0LHQvdC+0LLQuNGC0Ywg0LjQvdC00LXQutGBIgogCi0jOiBnaXQtc3Rhc2guc2g6NTc2CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYyMQogbXNnaWQgIkNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKIG1zZ3N0ciAi0J3QtdC70YzQt9GPINC/0YDQuNC80LXQvdC40YLRjCDRgdC/0YDRj9GC0LDQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8g0LLQviDQstGA0LXQvNGPINCy0YvQv9C+0LvQvdC10L3QuNGPINGB0LvQuNGP0L3QuNGPIgogCi0jOiBnaXQtc3Rhc2guc2g6NTg0CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYyOQogbXNnaWQgIkNvbmZsaWN0cyBpbiBpbmRleC4gVHJ5IHdpdGhvdXQgLS1pbmRleC4iCiBtc2dzdHIgItCa0L7QvdGE0LvQuNC60YLRiyDQsiDQuNC90LTQtdC60YHQtS4g0J/QvtC/0YDQvtCx0YPQudGC0LUg0LHQtdC3IC0taW5kZXguIgogCi0jOiBnaXQtc3Rhc2guc2g6NTg2CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYzMQogbXNnaWQgIkNvdWxkIG5vdCBzYXZlIGluZGV4IHRyZWUiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtGF0YDQsNC90LjRgtGMINC00LXRgNC10LLQviDQuNC90LTQtdC60YHQsCIKIAotIzogZ2l0LXN0YXNoLnNoOjU5NQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2NDAKIG1zZ2lkICJDb3VsZCBub3QgcmVzdG9yZSB1bnRyYWNrZWQgZmlsZXMgZnJvbSBzdGFzaCBlbnRyeSIKIG1zZ3N0ciAi0J3QtdCy0L7Qt9C80L7QttC90L4g0LLQvtGB0YHRgtCw0L3QvtCy0LjRgtGMINC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvQtSDRhNCw0LnQu9GLINC40Lcg0YHQv9GA0Y/RgtCw0L3QvdGL0YUg0LjQt9C80LXQvdC10L3QuNC5IgogCi0jOiBnaXQtc3Rhc2guc2g6NjIwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjY2NQogbXNnaWQgIkNhbm5vdCB1bnN0YWdlIG1vZGlmaWVkIGZpbGVzIgogbXNnc3RyICLQndC10LLQvtC30LzQvtC20L3QviDRg9Cx0YDQsNGC0Ywg0LjQtyDQuNC90LTQtdC60YHQsCDQuNC30LzQtdC90LXQvdC90YvQtSDRhNCw0LnQu9GLIgogCi0jOiBnaXQtc3Rhc2guc2g6NjM1Ci1tc2dpZCAiSW5kZXggd2FzIG5vdCB1bnN0YXNoZWQuIgotbXNnc3RyICLQmNC90LTQtdC60YEg0L3QtSDQsdGL0Lsg0LjQt9Cy0LvQtdGH0ZHQvSDQuNC3INGB0L/RgNGP0YLQsNC90L3Ri9GFINC40LfQvNC10L3QtdC90LjQuS4iCi0KLSM6IGdpdC1zdGFzaC5zaDo2NDkKLW1zZ2lkICJUaGUgc3Rhc2ggZW50cnkgaXMga2VwdCBpbiBjYXNlIHlvdSBuZWVkIGl0IGFnYWluLiIKLW1zZ3N0ciAi0KHQv9GA0Y/RgtCw0L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPINGB0L7RhdGA0LDQvdC10L3Riywg0L3QsCDRgdC70YPRh9Cw0Lkg0LXRgdC70Lgg0L7QvdC4INGB0L3QvtCy0LAg0LLQsNC8INC/0L7QvdCw0LTQvtCx0Y/RgtGB0Y8uIgotCi0jOiBnaXQtc3Rhc2guc2g6NjU4CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjcwMwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRHJvcHBlZCAke1JFVn0gKCRzKSIKIG1zZ3N0ciAi0J7RgtCx0YDQvtGI0LXQvdC+ICR7UkVWfSAoJHMpIgogCi0jOiBnaXQtc3Rhc2guc2g6NjU5CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjcwNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiJHtSRVZ9OiBDb3VsZCBub3QgZHJvcCBzdGFzaCBlbnRyeSIKIG1zZ3N0ciAiJHtSRVZ9OiDQndC1INGD0LTQsNC70L7RgdGMINC+0YLQsdGA0L7RgdC40YLRjCDQt9Cw0L/QuNGB0Ywg0LjQtyDRgdC/0YDRj9GC0LDQvdC90YvRhSDQuNC30LzQtdC90LXQvdC40LkiCiAKLSM6IGdpdC1zdGFzaC5zaDo2NjcKLW1zZ2lkICJObyBicmFuY2ggbmFtZSBzcGVjaWZpZWQiCi1tc2dzdHIgItCd0LUg0YPQutCw0LfQsNC90L4g0LjQvNGPINCy0LXRgtC60LgiCi0KLSM6IGdpdC1zdGFzaC5zaDo3NDYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzkxCiBtc2dpZCAiKFRvIHJlc3RvcmUgdGhlbSB0eXBlIFwiZ2l0IHN0YXNoIGFwcGx5XCIpIgogbXNnc3RyICIo0KfRgtC+0LHRiyDQstC+0YHRgdGC0LDQvdC+0LLQuNGC0Ywg0LjRhSwg0L3QsNCx0LXRgNC40YLQtSDCq2dpdCBzdGFzaCBhcHBsecK7KSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoxODgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjAwCiBtc2dpZCAiUmVsYXRpdmUgcGF0aCBjYW4gb25seSBiZSB1c2VkIGZyb20gdGhlIHRvcGxldmVsIG9mIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgItCe0YLQvdC+0YHQuNGC0LXQu9GM0L3Ri9C5INC/0YPRgtGMINC80L7QttC90L4g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGC0L7Qu9GM0LrQviDQvdCw0YXQvtC00Y/RgdGMINC90LAg0LLQtdGA0YjQuNC90LUg0YDQsNCx0L7Rh9C10LPQviDQutCw0YLQsNC70L7Qs9CwIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjE5OAorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMTAKICMsIHNoLWZvcm1hdAogbXNnaWQgInJlcG8gVVJMOiAnJHJlcG8nIG11c3QgYmUgYWJzb2x1dGUgb3IgYmVnaW4gd2l0aCAuL3wuLi8iCiBtc2dzdHIgIlVSTCDRgNC10L/QvtC30LjRgtC+0YDQuNGPOiDCqyRyZXBvwrsg0LTQvtC70LbQtdC9INCx0YvRgtGMINCw0LHRgdC+0LvRjtGC0L3Ri9C8INC40LvQuCDQvdCw0YfQuNC90LDRgtGM0YHRjyDRgSAuL3wuLi8iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjE3CisjOiBnaXQtc3VibW9kdWxlLnNoOjIyOQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXgiCiBtc2dzdHIgIsKrJHNtX3BhdGjCuyDRg9C20LUg0YHQvtC00LXRgNC20LjRgtGB0Y8g0LIg0LjQvdC00LXQutGB0LUiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjIwCisjOiBnaXQtc3VibW9kdWxlLnNoOjIzMgogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXggYW5kIGlzIG5vdCBhIHN1Ym1vZHVsZSIKIG1zZ3N0ciAiwqskc21fcGF0aMK7INGD0LbQtSDRgdC+0LTQtdGA0LbQuNGC0YHRjyDQsiDQuNC90LTQtdC60YHQtSDQuCDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0L/QvtC00LzQvtC00YPQu9C10LwiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjI2CisjOiBnaXQtc3VibW9kdWxlLnNoOjIzOQorIywgc2gtZm9ybWF0Cittc2dpZCAiJyRzbV9wYXRoJyBkb2VzIG5vdCBoYXZlIGEgY29tbWl0IGNoZWNrZWQgb3V0IgorbXNnc3RyICIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjQ1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyBwYXRoIGlzIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczpcbiIKQEAgLTE3NDc1LDIyICsyMDQ3NywyMiBAQAogIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIGl0LiIKIG1zZ3N0ciAi0KHQu9C10LTRg9GO0YnQuNC1INC/0YPRgtC4INC40LPQvdC+0YDQuNGA0YPRjtGC0YHRjyDQvtC00L3QuNC8INC40Lcg0LLQsNGI0LjRhSDRhNCw0LnQu9C+0LIgLmdpdGlnbm9yZTpcbiRzbV9wYXRoXG7QmNGB0L/QvtC70YzQt9GD0LnRgtC1INC+0L/RhtC40Y4gLWYsINC10YHQu9C4INCy0Ysg0LTQtdC50YHRgtCy0LjRgtC10LvRjNC90L4g0YXQvtGC0LjRgtC1INC10LPQviDQtNC+0LHQsNCy0LjRgtGMLiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNDkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjY4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJBZGRpbmcgZXhpc3RpbmcgcmVwbyBhdCAnJHNtX3BhdGgnIHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAi0JTQvtCx0LDQstC70Y/RjiDRgdGD0YnQtdGB0YLQstGD0Y7RidC40Lkg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuSDQuNC3IMKrJHNtX3BhdGjCuyDQsiDQuNC90LTQtdC60YEiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjUxCisjOiBnaXQtc3VibW9kdWxlLnNoOjI3MAogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBhbmQgaXMgbm90IGEgdmFsaWQgZ2l0IHJlcG8iCiBtc2dzdHIgIsKrJHNtX3BhdGjCuyDRg9C20LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIg0Lgg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC00LXQudGB0YLQstC40YLQtdC70YzQvdGL0Lwg0YDQtdC/0L7Qt9C40YLQvtGA0LjQtdC8IGdpdCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNTkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjc4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJBIGdpdCBkaXJlY3RvcnkgZm9yICckc21fbmFtZScgaXMgZm91bmQgbG9jYWxseSB3aXRoIHJlbW90ZShzKToiCiBtc2dzdHIgItCa0LDRgtCw0LvQvtCzIGdpdCDQtNC70Y8gwqskc21fbmFtZcK7INC90LDQudC00LXQvSDQu9C+0LrQsNC70YzQvdC+INC90LAg0LLQvdC10YjQvdC40YUg0YDQtdC/0L7Qt9C40YLQvtGA0LjRj9GFOiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNjEKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjgwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiSWYgeW91IHdhbnQgdG8gcmV1c2UgdGhpcyBsb2NhbCBnaXQgZGlyZWN0b3J5IGluc3RlYWQgb2YgY2xvbmluZyBhZ2FpbiBmcm9tXG4iCkBAIC0xNzQ5OSwxMjAgKzIwNTAxLDEyMiBAQAogIm9yIHlvdSBhcmUgdW5zdXJlIHdoYXQgdGhpcyBtZWFucyBjaG9vc2UgYW5vdGhlciBuYW1lIHdpdGggdGhlICctLW5hbWUnIG9wdGlvbi4iCiBtc2dzdHIgItCV0YHQu9C4INCy0Ysg0YXQvtGC0LjRgtC1INC/0L7QstGC0L7RgNC90L4g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC70L7QutCw0LvRjNC90YvQuSDQutCw0YLQsNC70L7QsyBnaXQg0LLQvNC10YHRgtC+INC/0L7QstGC0L7RgNC90L7Qs9C+INC60LvQvtC90LjRgNC+0LLQsNC90LjRjyDQuNC3XG4gICRyZWFscmVwb1xu0YLQviDQuNGB0L/QvtC70YzQt9GD0LnRgtC1INC/0LDRgNCw0LzQtdGC0YAgwqstLWZvcmNlwrsuINCV0YHQu9C4INC20LUg0LvQvtC60LDQu9GM0L3Ri9C5INC60LDRgtCw0LvQvtCzIGdpdCDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0L3Rg9C20L3Ri9C8INGA0LXQv9C+0LfQuNGC0L7RgNC40LXQvCDQuNC70Lgg0LXRgdC70Lgg0LLRiyDQvdC1INGD0LLQtdGA0LXQvdGLLCDRh9GC0L4g0Y3RgtC+INC30L3QsNGH0LjRgiwg0YLQviDRg9C60LDQttC40YLQtSDQtNGA0YPQs9C+0LUg0LjQvNGPINC00LvRjyDQv9C+0LTQvNC+0LTRg9C70Y8g0YEg0L/QvtC80L7RidGM0Y4g0L/QsNGA0LDQvNC10YLRgNCwIMKrLS1uYW1lwrsuIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI2NworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyODYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYWN0aXZhdGluZyBsb2NhbCBnaXQgZGlyZWN0b3J5IGZvciBzdWJtb2R1bGUgJyRzbV9uYW1lJy4iCiBtc2dzdHIgItCS0L7RgdGB0YLQsNC90L7QstC70LXQvdC40LUg0LvQvtC60LDQu9GM0L3QvtCz0L4g0LrQsNGC0LDQu9C+0LPQsCBnaXQg0LTQu9GPINC/0L7QtNC80L7QtNGD0LvRjyDCqyRzbV9uYW1lwrsuIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI3OQorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTgKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBjaGVja291dCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQv9C10YDQtdC60LvRjtGH0LjRgtGM0YHRjyDQvdCwINGB0L7RgdGC0L7Rj9C90LjQtSDRgyDQv9C+0LTQvNC+0LTRg9C70Y8gwqskc21fcGF0aMK7IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI4NAorIzogZ2l0LXN1Ym1vZHVsZS5zaDozMDMKICMsIHNoLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBhZGQgc3VibW9kdWxlICckc21fcGF0aCciCiBtc2dzdHIgItCh0LHQvtC5INC00L7QsdCw0LLQu9C10L3QuNGPINC/0L7QtNC80L7QtNGD0LvRjyDCqyRzbV9wYXRowrsiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjkzCisjOiBnaXQtc3VibW9kdWxlLnNoOjMxMgogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC30LDRgNC10LPQuNGB0YLRgNC40YDQvtCy0LDRgtGMINC/0L7QtNC80L7QtNGD0LvRjCDCqyRzbV9wYXRowrsiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTY1CisjOiBnaXQtc3VibW9kdWxlLnNoOjU3MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGZpbmQgY3VycmVudCByZXZpc2lvbiBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INGC0LXQutGD0YnRg9GOINGA0LXQtNCw0LrRhtC40Y4g0LTQu9GPINC/0L7QtNC80L7QtNGD0LvRjyDQv9C+INC/0YPRgtC4IMKrJGRpc3BsYXlwYXRowrsiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTc1CisjOiBnaXQtc3VibW9kdWxlLnNoOjU4MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGZldGNoIGluIHN1Ym1vZHVsZSBwYXRoICckc21fcGF0aCciCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINC40LfQstC70LXRh9C10L3QuNC1INC00LvRjyDQv9C+0LTQvNC+0LTRg9C70Y8g0L/QviDQv9GD0YLQuCDCqyRzbV9wYXRowrsiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTgwCisjOiBnaXQtc3VibW9kdWxlLnNoOjU4OAogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIlVuYWJsZSB0byBmaW5kIGN1cnJlbnQgJHtyZW1vdGVfbmFtZX0vJHticmFuY2h9IHJldmlzaW9uIGluIHN1Ym1vZHVsZSBwYXRoICIKICInJHNtX3BhdGgnIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC90LDQudGC0Lgg0YLQtdC60YPRidGD0Y4g0YDQtdC00LDQutGG0LjRjiAke3JlbW90ZV9uYW1lfS8ke2JyYW5jaH0g0LTQu9GPINC/0L7QtNC80L7QtNGD0LvRjyDQv9C+INC/0YPRgtC4IMKrJHNtX3BhdGjCuyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDMKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjA2CiAjLCBzaC1mb3JtYXQKLW1zZ2lkICJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCi1tc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINC40LfQstC70LXRh9C10L3QuNC1INC00LvRjyDQv9C+0LTQvNC+0LTRg9C70Y8g0L/QviDQv9GD0YLQuCDCqyRkaXNwbGF5cGF0aMK7IgorbXNnaWQgIiIKKyJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc7IHRyeWluZyB0byBkaXJlY3RseSBmZXRjaCAiCisiJHNoYTE6IgorbXNnc3RyICIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjA5CisjOiBnaXQtc3VibW9kdWxlLnNoOjYxMgogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIkZldGNoZWQgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCcsIGJ1dCBpdCBkaWQgbm90IGNvbnRhaW4gJHNoYTEuICIKICJEaXJlY3QgZmV0Y2hpbmcgb2YgdGhhdCBjb21taXQgZmFpbGVkLiIKIG1zZ3N0ciAi0J/QvtC70YPRh9C10L0g0L/QviDQv9GD0YLQuCDQv9C+0LTQvNC+0LTRg9C70Y8gwqskZGlzcGxheXBhdGjCuywg0L3QviDQvdC1INGB0L7QtNC10YDQttC40YIgJHNoYTEuINCh0LHQvtC5INC/0YDQuCDQv9GA0Y/QvNC+0Lwg0L/QvtC70YPRh9C10L3QuNC4INC60L7QvNC80LjRgtCwLiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MTYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjE5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gY2hlY2tvdXQgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQv9C10YDQtdC60LvRjtGH0LjRgtGM0YHRjyDQvdCwINGB0L7RgdGC0L7Rj9C90LjQtSDCqyRzaGExwrsg0LTQu9GPINC/0L7QtNC80L7QtNGD0LvRjyDQv9C+INC/0YPRgtC4IMKrJGRpc3BsYXlwYXRowrsiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjE3CisjOiBnaXQtc3VibW9kdWxlLnNoOjYyMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IGNoZWNrZWQgb3V0ICckc2hhMSciCiBtc2dzdHIgItCf0L7QtNC80L7QtNGD0LvRjCDQv9C+INC/0YPRgtC4IMKrJGRpc3BsYXlwYXRowrs6INC30LDQsdGA0LDQvdC+INGB0L7RgdGC0L7Rj9C90LjQtSDCqyRzaGExwrsiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjIxCisjOiBnaXQtc3VibW9kdWxlLnNoOjYyNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIHJlYmFzZSAnJHNoYTEnIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0LXRgNC10LzQtdGB0YLQuNGC0Ywgwqskc2hhMcK7INC00LvRjyDQv9C+0LTQvNC+0LTRg9C70Y8g0L/QviDQv9GD0YLQuCDCqyRkaXNwbGF5cGF0aMK7IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYyMgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjUKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiByZWJhc2VkIGludG8gJyRzaGExJyIKIG1zZ3N0ciAi0J/QvtC00LzQvtC00YPQu9GMINC/0L4g0L/Rg9GC0LggwqskZGlzcGxheXBhdGjCuzog0L/QtdGA0LXQvNC10YnQtdC9INC90LDQtCDCqyRzaGExwrsiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjI3CisjOiBnaXQtc3VibW9kdWxlLnNoOjYzMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIG1lcmdlICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINGB0LvQuNGP0L3QuNC1INGBIMKrJHNoYTHCuyDQtNC70Y8g0L/QvtC00LzQvtC00YPQu9GPINC/0L4g0L/Rg9GC0LggwqskZGlzcGxheXBhdGjCuyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjMxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogbWVyZ2VkIGluICckc2hhMSciCiBtc2dzdHIgItCf0L7QtNC80L7QtNGD0LvRjCDQv9C+INC/0YPRgtC4IMKrJGRpc3BsYXlwYXRowrs6INGB0LvQuNGC0L4g0YEgwqskc2hhMcK7IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYzMworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MzYKICMsIHNoLWZvcm1hdAogbXNnaWQgIkV4ZWN1dGlvbiBvZiAnJGNvbW1hbmQgJHNoYTEnIGZhaWxlZCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAi0KHQsdC+0Lkg0LLRi9C/0L7Qu9C90LXQvdC40Y8gwqskY29tbWFuZCAkc2hhMcK7INC00LvRjyDQv9C+0LTQvNC+0LTRg9C70Y8g0L/QviDQv9GD0YLQuCDCqyRkaXNwbGF5cGF0aMK7IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYzNAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MzcKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiAnJGNvbW1hbmQgJHNoYTEnIgogbXNnc3RyICLQn9C+0LTQvNC+0LTRg9C70Ywg0L/QviDQv9GD0YLQuCDCqyRkaXNwbGF5cGF0aMK7OiDCqyRjb21tYW5kICRzaGExwrsiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjY1CisjOiBnaXQtc3VibW9kdWxlLnNoOjY2OAogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0Ywg0YDQtdC60YPRgNGB0LjQstC90L4g0LTQu9GPINC/0L7QtNC80L7QtNGD0LvRjyDQv9C+INC/0YPRgtC4IMKrJGRpc3BsYXlwYXRowrsiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NzYxCisjOiBnaXQtc3VibW9kdWxlLnNoOjgzMAogbXNnaWQgIlRoZSAtLWNhY2hlZCBvcHRpb24gY2Fubm90IGJlIHVzZWQgd2l0aCB0aGUgLS1maWxlcyBvcHRpb24iCiBtc2dzdHIgItCe0L/RhtC40Y4gLS1jYWNoZWQg0L3QtdC70YzQt9GPINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQvtC00L3QvtCy0YDQtdC80LXQvdC90L4g0YEg0L7Qv9GG0LjQtdC5IC0tZmlsZXMiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODEzCisjOiBnaXQtc3VibW9kdWxlLnNoOjg4MgogIywgc2gtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBtb2RlICRtb2RfZHN0IgogbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3Ri9C5INGA0LXQttC40LwgJG1vZF9kc3QiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODMzCisjOiBnaXQtc3VibW9kdWxlLnNoOjkwMgogIywgc2gtZm9ybWF0CiBtc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXQgJHNoYTFfc3JjIgogbXNnc3RyICIgINCf0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LU6ICRkaXNwbGF5X25hbWUg0L3QtSDRgdC+0LTQtdGA0LbQuNGCINC60L7QvNC80LjRgiAkc2hhMV9zcmMiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODM2CisjOiBnaXQtc3VibW9kdWxlLnNoOjkwNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXQgJHNoYTFfZHN0IgogbXNnc3RyICIgINCf0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LU6ICRkaXNwbGF5X25hbWUg0L3QtSDRgdC+0LTQtdGA0LbQuNGCINC60L7QvNC80LjRgiAkc2hhMV9kc3QiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODM5CisjOiBnaXQtc3VibW9kdWxlLnNoOjkwOAogIywgc2gtZm9ybWF0CiBtc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXRzICRzaGExX3NyYyBhbmQgJHNoYTFfZHN0IgogbXNnc3RyICIgINCf0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LU6ICRkaXNwbGF5X25hbWUg0L3QtSDRgdC+0LTQtdGA0LbQuNGCINC60L7QvNC80LjRgtGLICRzaGExX3NyYyDQuCAkc2hhMV9kc3QiCkBAIC0xNzYyMiwxMDAgKzIwNjI2LDYgQEAKIG1zZ2lkICJTZWUgZ2l0LSR7Y21kfSgxKSBmb3IgZGV0YWlscy4iCiBtc2dzdHIgItCU0LvRjyDQtNC+0L/QvtC70L3QuNGC0LXQu9GM0L3QvtC5INC40L3RhNC+0YDQvNCw0YbQuNC4LCDRgdC80L7RgtGA0LjRgtC1IGdpdC0ke2NtZH0oMSkuIgogCi0jOiBnaXQtcmViYXNlLS1pbnRlcmFjdGl2ZS5zaDo0MwotbXNnaWQgIiIKLSJcbiIKLSJDb21tYW5kczpcbiIKLSJwLCBwaWNrIDxjb21taXQ+ID0gdXNlIGNvbW1pdFxuIgotInIsIHJld29yZCA8Y29tbWl0PiA9IHVzZSBjb21taXQsIGJ1dCBlZGl0IHRoZSBjb21taXQgbWVzc2FnZVxuIgotImUsIGVkaXQgPGNvbW1pdD4gPSB1c2UgY29tbWl0LCBidXQgc3RvcCBmb3IgYW1lbmRpbmdcbiIKLSJzLCBzcXVhc2ggPGNvbW1pdD4gPSB1c2UgY29tbWl0LCBidXQgbWVsZCBpbnRvIHByZXZpb3VzIGNvbW1pdFxuIgotImYsIGZpeHVwIDxjb21taXQ+ID0gbGlrZSBcInNxdWFzaFwiLCBidXQgZGlzY2FyZCB0aGlzIGNvbW1pdCdzIGxvZyBtZXNzYWdlXG4iCi0ieCwgZXhlYyA8Y29tbWFuZD4gPSBydW4gY29tbWFuZCAodGhlIHJlc3Qgb2YgdGhlIGxpbmUpIHVzaW5nIHNoZWxsXG4iCi0iZCwgZHJvcCA8Y29tbWl0PiA9IHJlbW92ZSBjb21taXRcbiIKLSJsLCBsYWJlbCA8bGFiZWw+ID0gbGFiZWwgY3VycmVudCBIRUFEIHdpdGggYSBuYW1lXG4iCi0idCwgcmVzZXQgPGxhYmVsPiA9IHJlc2V0IEhFQUQgdG8gYSBsYWJlbFxuIgotIm0sIG1lcmdlIFstQyA8Y29tbWl0PiB8IC1jIDxjb21taXQ+XSA8bGFiZWw+IFsjIDxvbmVsaW5lPl1cbiIKLSIuICAgICAgIGNyZWF0ZSBhIG1lcmdlIGNvbW1pdCB1c2luZyB0aGUgb3JpZ2luYWwgbWVyZ2UgY29tbWl0J3NcbiIKLSIuICAgICAgIG1lc3NhZ2UgKG9yIHRoZSBvbmVsaW5lLCBpZiBubyBvcmlnaW5hbCBtZXJnZSBjb21taXQgd2FzXG4iCi0iLiAgICAgICBzcGVjaWZpZWQpLiBVc2UgLWMgPGNvbW1pdD4gdG8gcmV3b3JkIHRoZSBjb21taXQgbWVzc2FnZS5cbiIKLSJcbiIKLSJUaGVzZSBsaW5lcyBjYW4gYmUgcmUtb3JkZXJlZDsgdGhleSBhcmUgZXhlY3V0ZWQgZnJvbSB0b3AgdG8gYm90dG9tLlxuIgotbXNnc3RyICIiCi0KLSM6IGdpdC1yZWJhc2UtLWludGVyYWN0aXZlLnNoOjY0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNzMKLW1zZ2lkICIiCi0iXG4iCi0iRG8gbm90IHJlbW92ZSBhbnkgbGluZS4gVXNlICdkcm9wJyBleHBsaWNpdGx5IHRvIHJlbW92ZSBhIGNvbW1pdC5cbiIKLW1zZ3N0ciAiXG7QndC1INGD0LTQsNC70Y/QudGC0LUg0YHRgtGA0L7QutC4LiDQmNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrZHJvcMK7LCDRh9GC0L7QsdGLINGP0LLQvdC+INGD0LTQsNC70LjRgtGMINC60L7QvNC80LjRgi5cbiIKLQotIzogZ2l0LXJlYmFzZS0taW50ZXJhY3RpdmUuc2g6NjggZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE3NwotbXNnaWQgIiIKLSJcbiIKLSJJZiB5b3UgcmVtb3ZlIGEgbGluZSBoZXJlIFRIQVQgQ09NTUlUIFdJTEwgQkUgTE9TVC5cbiIKLW1zZ3N0ciAiXG7QldGB0LvQuCDQstGLINGD0LTQsNC70LjRgtC1INGB0YLRgNC+0LrRgyDQt9C00LXRgdGMLCDRgtC+INCj0JrQkNCX0JDQndCd0KvQmSDQmtCe0JzQnNCY0KIg0JHQo9CU0JXQoiDQo9Ci0JXQoNCv0J0uXG4iCi0KLSM6IGdpdC1yZWJhc2UtLWludGVyYWN0aXZlLnNoOjEwOCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzI0Ci1tc2dpZCAiY291bGQgbm90IGRldGFjaCBIRUFEIgotbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQtNC10LvQuNGC0YwgSEVBRCIKLQotIzogZ2l0LXJlYmFzZS0taW50ZXJhY3RpdmUuc2g6MTQ3IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MTYKLW1zZ2lkICIiCi0iXG4iCi0iWW91IGFyZSBlZGl0aW5nIHRoZSB0b2RvIGZpbGUgb2YgYW4gb25nb2luZyBpbnRlcmFjdGl2ZSByZWJhc2UuXG4iCi0iVG8gY29udGludWUgcmViYXNlIGFmdGVyIGVkaXRpbmcsIHJ1bjpcbiIKLSIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCi0iXG4iCi1tc2dzdHIgIlxu0JLRiyDRgdC10LnRh9Cw0YEg0YDQtdC00LDQutGC0LjRgNGD0LXRgtC1INGE0LDQudC7INGB0L4g0YHQv9C40YHQutC+0Lwg0LTQtdC7INC00LvRjyDQuNC90YLQtdGA0LDQutGC0LjQstC90L7Qs9C+INC/0LXRgNC10LzQtdGJ0LXQvdC40Y8uXG7QlNC70Y8g0L/RgNC+0LTQvtC70LbQtdC90LjRjyDQv9C10YDQtdC80LXRidC10L3QuNGPLCDQv9C+0YHQu9C1INGA0LXQtNCw0LrRgtC40YDQvtCy0LDQvdC40Y8g0YTQsNC50LvQsCDQt9Cw0L/Rg9GB0YLQuNGC0LU6XG4gICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG5cbiIKLQotIzogZ2l0LXJlYmFzZS0taW50ZXJhY3RpdmUuc2g6MTU1IGdpdC1yZWJhc2UtLWludGVyYWN0aXZlLnNoOjI0MQotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgyNCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTEwCi1tc2dpZCAiQ291bGQgbm90IGV4ZWN1dGUgZWRpdG9yIgotbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC30LDQv9GD0YHRgtC40YLRjCDRgNC10LTQsNC60YLQvtGAIgotCi0jOiBnaXQtcmViYXNlLS1pbnRlcmFjdGl2ZS5zaDoxNzYgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg0NQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IGNoZWNrb3V0ICRzd2l0Y2hfdG8iCi1tc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQudGC0Lgg0L3QsCDQstC10YDRgdC40Y4gJHN3aXRjaF90byIKLQotIzogZ2l0LXJlYmFzZS0taW50ZXJhY3RpdmUuc2g6MTgzIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NTIKLW1zZ2lkICJObyBIRUFEPyIKLW1zZ3N0ciAi0J3QtdGCINGD0LrQsNC30LDRgtC10LvRjyBIRUFEPyIKLQotIzogZ2l0LXJlYmFzZS0taW50ZXJhY3RpdmUuc2g6MTg0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NTMKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5ICRzdGF0ZV9kaXIiCi1tc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0Ywg0LLRgNC10LzQtdC90L3Ri9C5INC60LDRgtCw0LvQvtCzICRzdGF0ZV9kaXIiCi0KLSM6IGdpdC1yZWJhc2UtLWludGVyYWN0aXZlLnNoOjE4NyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODU2Ci1tc2dpZCAiQ291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCi1tc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC80LXRgtC40YLRjCDQutCw0Log0LjQvdGC0LXRgNCw0LrRgtC40LLQvdGL0LkiCi0KLSM6IGdpdC1yZWJhc2UtLWludGVyYWN0aXZlLnNoOjIxOSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODg4Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJSZWJhc2UgJHNob3J0cmV2aXNpb25zIG9udG8gJHNob3J0b250byAoJHRvZG9jb3VudCBjb21tYW5kKSIKLW1zZ2lkX3BsdXJhbCAiUmViYXNlICRzaG9ydHJldmlzaW9ucyBvbnRvICRzaG9ydG9udG8gKCR0b2RvY291bnQgY29tbWFuZHMpIgotbXNnc3RyWzBdICLQn9C10YDQtdC80LXRidC10L3QuNC1ICRzaG9ydHJldmlzaW9ucyDQvdCw0LQgJHNob3J0b250byAoJHRvZG9jb3VudCDQutC+0LzQsNC90LTQsCkiCi1tc2dzdHJbMV0gItCf0LXRgNC10LzQtdGJ0LXQvdC40LUgJHNob3J0cmV2aXNpb25zINC90LDQtCAkc2hvcnRvbnRvICgkdG9kb2NvdW50INC60L7QvNCw0L3QtNGLKSIKLW1zZ3N0clsyXSAi0J/QtdGA0LXQvNC10YnQtdC90LjQtSAkc2hvcnRyZXZpc2lvbnMg0L3QsNC0ICRzaG9ydG9udG8gKCR0b2RvY291bnQg0LrQvtC80LDQvdC0KSIKLW1zZ3N0clszXSAi0J/QtdGA0LXQvNC10YnQtdC90LjQtSAkc2hvcnRyZXZpc2lvbnMg0L3QsNC0ICRzaG9ydG9udG8gKCR0b2RvY291bnQg0LrQvtC80LDQvdC0KSIKLQotIzogZ2l0LXJlYmFzZS0taW50ZXJhY3RpdmUuc2g6MjI0Ci1tc2dpZCAiIgotIlxuIgotIlx0SG93ZXZlciwgaWYgeW91IHJlbW92ZSBldmVyeXRoaW5nLCB0aGUgcmViYXNlIHdpbGwgYmUgYWJvcnRlZC5cbiIKLSJcbiIKLSJcdCIKLW1zZ3N0ciAiIgotCi0jOiBnaXQtcmViYXNlLS1pbnRlcmFjdGl2ZS5zaDoyMzEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwMAotbXNnaWQgIk5vdGUgdGhhdCBlbXB0eSBjb21taXRzIGFyZSBjb21tZW50ZWQgb3V0IgotbXNnc3RyICLQl9Cw0LzQtdGC0YzRgtC1LCDRh9GC0L4g0L/Rg9GB0YLRi9C1INC60L7QvNC80LjRgtGLINC30LDQutC+0LzQvNC10L3RgtC40YDQvtCy0LDQvdC90YsiCi0KLSM6IGdpdC1yZWJhc2UtLWludGVyYWN0aXZlLnNoOjI4MAotbXNnaWQgIkNvdWxkIG5vdCBnZW5lcmF0ZSB0b2RvIGxpc3QiCi1tc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0YHQs9C10L3QtdGA0LjRgNC+0LLQsNGC0Ywg0YHQv9C40YHQvtC6INC00LXQuyIKLQogIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEzNgogIywgc2gtZm9ybWF0CiBtc2dpZCAiUmViYXNpbmcgKCRuZXdfY291bnQvJHRvdGFsKSIKQEAgLTE3NzQwLDcgKzIwNjUwLDcgQEAKICIuICAgICAgIHNwZWNpZmllZCkuIFVzZSAtYyA8Y29tbWl0PiB0byByZXdvcmQgdGhlIGNvbW1pdCBtZXNzYWdlLlxuIgogIlxuIgogIlRoZXNlIGxpbmVzIGNhbiBiZSByZS1vcmRlcmVkOyB0aGV5IGFyZSBleGVjdXRlZCBmcm9tIHRvcCB0byBib3R0b20uXG4iCi1tc2dzdHIgIiIKK21zZ3N0ciAiXG7QmtC+0LzQsNC90LTRizpcbnAsIHBpY2sgPNC60L7QvNC80LjRgj4gPSDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LrQvtC80LzQuNGCXG5yLCByZXdvcmQgPNC60L7QvNC80LjRgj4gPSDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LrQvtC80LzQuNGCLCDQvdC+INC40LfQvNC10L3QuNGC0Ywg0YHQvtC+0LHRidC10L3QuNC1INC60L7QvNC80LjRgtCwXG5lLCBlZGl0IDzQutC+0LzQvNC40YI+ID0g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC60L7QvNC80LjRgiwg0L3QviDQvtGB0YLQsNC90L7QstC40YLRjNGB0Y8g0LTQu9GPINC40YHQv9GA0LDQstC70LXQvdC40Y9cbnMsIHNxdWFzaCA80LrQvtC80LzQuNGCPiA9INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQutC+0LzQvNC40YIsINC90L4g0L7QsdGK0LXQtNC40L3QuNGC0Ywg0YEg0L/RgNC10LTRi9C00YPRidC40Lwg0LrQvtC80LzQuNGC0L7QvFxuZiwgZml4dXAgPNC60L7QvNC80LjRgj4gPSDQutCw0LogwqtzcXVhc2jCuywg0L3QviDQv9GA0L7Qv9GD0YHRgtC40YLRjCDRgdC+0L7QsdGJ0LXQvdC40LUg0LrQvtC80LzQuNGC0LBcbngsIGV4ZWMgPNC60L7QvNCw0L3QtNCwPiA9INCy0YvQv9C+0LvQvdC40YLRjCDQutC+0LzQsNC90LTRgyAo0L7RgdGC0LDRgtC+0Log0YHRgtGA0L7QutC4KSDRgSDQv9C+0LzQvtGJ0YzRjiDQutC+0LzQsNC90LTQvdC+0Lkg0L7QsdC+0LvQvtGH0LrQuFxuZCwgZHJvcCA80LrQvtC80LzQuNGCPiA9INGD0LTQsNC70LjRgtGMINC60L7QvNC80LjRglxubCwgbGFiZWwgPNC80LXRgtC60LA+ID0g0LTQsNGC0Ywg0LjQvNGPINGC0LXQutGD0YnQtdC80YMgSEVBRFxudCwgcmVzZXQgPNC80LXRgtC60LA+ID0g0YHQsdGA0L7RgdC40YLRjCBIRUFEINC6INGD0LrQsNC30LDQvdC90L7QuSDQvNC10YLQutC1XG5tLCBtZXJnZSBbLUMgPNC60L7QvNC80LjRgj4gfCAtYyA80LrQvtC80LzQuNGCPl0gPNC80LXRgtC60LA+IFsjIDzRgdGC0YDQvtC60LA+XVxuLiDRgdC+0LfQtNCw0YLRjCDRgdC70LjRj9C90LjQtSDQuNGB0L/QvtC70YzQt9GD0Y8g0YHQvtC+0LHRidC10L3QuNC1INC60L7QvNC80LjRgtCwINC+0YDQuNCz0LjQvdCw0LvRjNC90L7Qs9C+XG4uINGB0LvQuNGP0L3QuNGPICjQuNC70Lgg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGD0LrQsNC30LDQvdC90YPRjiDRgdGC0YDQvtC60YMsINC10YHQu9C4INC+0YDQuNCz0LjQvdCw0LvRjNC90L7QtVxuLiDRgdC70LjRj9C90LjQtSDQvdC1INGD0LrQsNC30LDQvdC+KS4g0JjRgdC/0L7Qu9GM0LfRg9C50YLQtSAtYyA80LrQvtC80LzQuNGCPiDRh9GC0L7QsdGLINC40LfQvNC10L3QuNGC0Yxcbi4g0YHQvtC+0LHRidC10L3QuNC1INC60L7QvNC80LjRgtCwLlxuXG7QrdGC0Lgg0YHRgtGA0L7QutC4INC80L7QttC90L4g0L/QtdGA0LXQvNC10YnQsNGC0Yw7INC+0L3QuCDQsdGD0LTRg9GCINCy0YvQv9C+0LvQvdC10L3RiyDRgdCy0LXRgNGF0YMg0LLQvdC40LcuXG4iCiAKICM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMTUKICMsIHNoLWZvcm1hdApAQCAtMTc4MzksNyArMjA3NDksNyBAQAogIlRoaXMgaXMgbW9zdCBsaWtlbHkgZHVlIHRvIGFuIGVtcHR5IGNvbW1pdCBtZXNzYWdlLCBvciB0aGUgcHJlLWNvbW1pdCBob29rXG4iCiAiZmFpbGVkLiBJZiB0aGUgcHJlLWNvbW1pdCBob29rIGZhaWxlZCwgeW91IG1heSBuZWVkIHRvIHJlc29sdmUgdGhlIGlzc3VlIGJlZm9yZVxuIgogInlvdSBhcmUgYWJsZSB0byByZXdvcmQgdGhlIGNvbW1pdC4iCi1tc2dzdHIgItCd0LUg0YPQtNC+0LvQvtGB0Ywg0LjRgdC/0YDQsNCy0LjRgtGMINC60L7QvNC80LjRgiDQv9C+0YHQu9C1INGD0YHQv9C10YjQvdC+0LPQviDQv9C10YDQtdGF0L7QtNCwINC90LAgJHNoYTHigKYgJHJlc3RcbtCt0YLQviDQv9GA0L7QuNC30L7RiNC70L4sINGB0LrQvtGA0LXQtSDQstGB0LXQs9C+LCDQuNC3LdC30LAg0L/Rg9GB0YLQvtCz0L4g0YHQvtC+0LHRidC10L3QuNGPINC60L7QvNC80LjRgtCwINC40LvQuCDQuNC3LdC30LAg0L/QtdGA0LXRhdCy0LDRgtGH0LjQutCwINC/0LXRgNC10LQg0LrQvtC80LzQuNGC0L7QvC4g0JXRgdC70Lgg0LbQtSDRjdGC0L4g0L/RgNC+0LjQt9C+0YjQu9C+INC40Lct0LfQsCDQv9C10YDQtdGF0LLQsNGC0YfQuNC60LAg0L/QtdGA0LXQtCDQutC+0LzQvNC40YLQvtC8LCDRgtC+INCy0LDQvCDQvdGD0LbQvdC+INGA0LXRiNC40YLRjCDRgSDQvdC40Lwg0L/RgNC+0LHQu9C10LzRgyDQuCDQv9C+0LLRgtC+0YDQuNGC0Ywg0L/QvtC/0YvRgtC60YMg0YHQvdC+0LLQsC4iCittc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LjRgdC/0YDQsNCy0LjRgtGMINC60L7QvNC80LjRgiDQv9C+0YHQu9C1INGD0YHQv9C10YjQvdC+0LPQviDQv9C10YDQtdGF0L7QtNCwINC90LAgJHNoYTHigKYgJHJlc3RcbtCt0YLQviDQv9GA0L7QuNC30L7RiNC70L4sINGB0LrQvtGA0LXQtSDQstGB0LXQs9C+LCDQuNC3LdC30LAg0L/Rg9GB0YLQvtCz0L4g0YHQvtC+0LHRidC10L3QuNGPINC60L7QvNC80LjRgtCwINC40LvQuCDQuNC3LdC30LAg0L/QtdGA0LXRhdCy0LDRgtGH0LjQutCwINC/0LXRgNC10LQg0LrQvtC80LzQuNGC0L7QvC4g0JXRgdC70Lgg0LbQtSDRjdGC0L4g0L/RgNC+0LjQt9C+0YjQu9C+INC40Lct0LfQsCDQv9C10YDQtdGF0LLQsNGC0YfQuNC60LAg0L/QtdGA0LXQtCDQutC+0LzQvNC40YLQvtC8LCDRgtC+INCy0LDQvCDQvdGD0LbQvdC+INGA0LXRiNC40YLRjCDRgSDQvdC40Lwg0L/RgNC+0LHQu9C10LzRgyDQuCDQv9C+0LLRgtC+0YDQuNGC0Ywg0L/QvtC/0YvRgtC60YMg0YHQvdC+0LLQsC4iCiAKICM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1NzEKICMsIHNoLWZvcm1hdApAQCAtMTc5MzMsMTIgKzIwODQzLDM2IEBACiBtc2dpZCAiQ291bGQgbm90IGNvbW1pdCBzdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC60L7QvNC80LjRgtC40YLRjCDQv9GA0L7QuNC90LTQtdC60YHQuNGA0L7QstCw0L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg5MwotbXNnaWQgIiIKLSJcbiIKLSJIb3dldmVyLCBpZiB5b3UgcmVtb3ZlIGV2ZXJ5dGhpbmcsIHRoZSByZWJhc2Ugd2lsbCBiZSBhYm9ydGVkLlxuIgotIlxuIgotbXNnc3RyICJcbtCd0L4g0LXRgdC70Lgg0LLRiyDRg9C00LDQu9C40YLQtSDQstGB0LUsINGC0L4g0L/RgNC+0YbQtdGB0YEg0L/QtdGA0LXQvNC10YnQtdC90LjRjyDQsdGD0LTQtdGCINCx0YPQtNC10YIg0L/RgNC10YDQstCw0L0uXG5cbiIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MjQgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkxMAorbXNnaWQgIkNvdWxkIG5vdCBleGVjdXRlIGVkaXRvciIKK21zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/Rg9GB0YLQuNGC0Ywg0YDQtdC00LDQutGC0L7RgCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg0NQorIywgc2gtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGNoZWNrb3V0ICRzd2l0Y2hfdG8iCittc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQudGC0Lgg0L3QsCDQstC10YDRgdC40Y4gJHN3aXRjaF90byIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1MgorbXNnaWQgIk5vIEhFQUQ/IgorbXNnc3RyICLQndC10YIg0YPQutCw0LfQsNGC0LXQu9GPIEhFQUQ/IgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODUzCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAkc3RhdGVfZGlyIgorbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINCy0YDQtdC80LXQvdC90YvQuSDQutCw0YLQsNC70L7QsyAkc3RhdGVfZGlyIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODU2Cittc2dpZCAiQ291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCittc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC80LXRgtC40YLRjCDQutCw0Log0LjQvdGC0LXRgNCw0LrRgtC40LLQvdGL0LkiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4ODgKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgb250byAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmQpIgorbXNnaWRfcGx1cmFsICJSZWJhc2UgJHNob3J0cmV2aXNpb25zIG9udG8gJHNob3J0b250byAoJHRvZG9jb3VudCBjb21tYW5kcykiCittc2dzdHJbMF0gItCf0LXRgNC10LzQtdGJ0LXQvdC40LUgJHNob3J0cmV2aXNpb25zINC90LDQtCAkc2hvcnRvbnRvICgkdG9kb2NvdW50INC60L7QvNCw0L3QtNCwKSIKK21zZ3N0clsxXSAi0J/QtdGA0LXQvNC10YnQtdC90LjQtSAkc2hvcnRyZXZpc2lvbnMg0L3QsNC0ICRzaG9ydG9udG8gKCR0b2RvY291bnQg0LrQvtC80LDQvdC00YspIgorbXNnc3RyWzJdICLQn9C10YDQtdC80LXRidC10L3QuNC1ICRzaG9ydHJldmlzaW9ucyDQvdCw0LQgJHNob3J0b250byAoJHRvZG9jb3VudCDQutC+0LzQsNC90LQpIgorbXNnc3RyWzNdICLQn9C10YDQtdC80LXRidC10L3QuNC1ICRzaG9ydHJldmlzaW9ucyDQvdCw0LQgJHNob3J0b250byAoJHRvZG9jb3VudCDQutC+0LzQsNC90LQpIgogCiAjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTQyIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDcKIG1zZ2lkICJDb3VsZCBub3QgaW5pdCByZXdyaXR0ZW4gY29tbWl0cyIKQEAgLTE3OTQ5LDU1ICsyMDg4Myw1NSBAQAogbXNnaWQgInVzYWdlOiAkZGFzaGxlc3MgJFVTQUdFIgogbXNnc3RyICLQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtTogJGRhc2hsZXNzICRVU0FHRSIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjE5MAorIzogZ2l0LXNoLXNldHVwLnNoOjE5MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGNoZGlyIHRvICRjZHVwLCB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0YwgY2hkaXIg0LIgJGNkdXAsINCy0LXRgNGI0LjQvdGDINGA0LDQsdC+0YfQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsCIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjE5OSBnaXQtc2gtc2V0dXAuc2g6MjA2CisjOiBnaXQtc2gtc2V0dXAuc2g6MjAwIGdpdC1zaC1zZXR1cC5zaDoyMDcKICMsIHNoLWZvcm1hdAogbXNnaWQgImZhdGFsOiAkcHJvZ3JhbV9uYW1lIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgYSB3b3JraW5nIHRyZWUuIgogbXNnc3RyICLQutGA0LjRgtC40YfQtdGB0LrQsNGPINC+0YjQuNCx0LrQsDogJHByb2dyYW1fbmFtZSDQvdC10LvRjNC30Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC90LUg0LjQvNC10Y8g0YDQsNCx0L7Rh9C10LPQviDQutCw0YLQsNC70L7Qs9CwLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjIyMAorIzogZ2l0LXNoLXNldHVwLnNoOjIyMQogbXNnaWQgIkNhbm5vdCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCDQv9C10YDQtdC80LXRidC10L3QuNC1INC60L7QvNC80LjRgtC+0LI6INCjINCy0LDRgSDQtdGB0YLRjCDQvdC10L/RgNC+0LjQvdC00LXQutGB0LjRgNC+0LLQsNC90L3Ri9C1INC40LfQvNC10L3QtdC90LjRjy4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjMKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjQKIG1zZ2lkICJDYW5ub3QgcmV3cml0ZSBicmFuY2hlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINC/0LXRgNC10LfQsNC/0LjRgdGMINCy0LXRgtC+0Lo6INCjINCy0LDRgSDQtdGB0YLRjCDQvdC10L/RgNC+0LjQvdC00LXQutGB0LjRgNC+0LLQsNC90L3Ri9C1INC40LfQvNC10L3QtdC90LjRjy4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjYKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjcKIG1zZ2lkICJDYW5ub3QgcHVsbCB3aXRoIHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDRgSDQv9C10YDQtdC80LXRidC10L3QuNC10Lw6INCjINCy0LDRgSDQtdGB0YLRjCDQvdC10L/RgNC+0LjQvdC00LXQutGB0LjRgNC+0LLQsNC90L3Ri9C1INC40LfQvNC10L3QtdC90LjRjy4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjkKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCAkYWN0aW9uOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0YwgJGFjdGlvbjog0KMg0LLQsNGBINC10YHRgtGMINC90LXQv9GA0L7QuNC90LTQtdC60YHQuNGA0L7QstCw0L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjI0MgorIzogZ2l0LXNoLXNldHVwLnNoOjI0MwogbXNnaWQgIkNhbm5vdCByZWJhc2U6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINC/0LXRgNC10LzQtdGJ0LXQvdC40LUg0LrQvtC80LzQuNGC0L7Qsjog0JIg0LLQsNGI0LXQvCDQuNC90LTQtdC60YHQtSDQtdGB0YLRjCDQvdC10LfQsNC60L7QvNC80LjRh9C10L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjI0NQorIzogZ2l0LXNoLXNldHVwLnNoOjI0NgogbXNnaWQgIkNhbm5vdCBwdWxsIHdpdGggcmViYXNlOiBZb3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0YEg0L/QtdGA0LXQvNC10YnQtdC90LjQtdC8OiDQkiDQstCw0YjQtdC8INC40L3QtNC10LrRgdC1INC10YHRgtGMINC90LXQt9Cw0LrQvtC80LzQuNGH0LXQvdC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8uIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQ4CisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJGFjdGlvbjogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0YwgJGFjdGlvbjog0JIg0LLQsNGI0LXQvCDQuNC90LTQtdC60YHQtSDQtdGB0YLRjCDQvdC10LfQsNC60L7QvNC80LjRh9C10L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjI1MgorIzogZ2l0LXNoLXNldHVwLnNoOjI1MwogbXNnaWQgIkFkZGl0aW9uYWxseSwgeW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAi0Jog0YLQvtC80YMg0LbQtSwg0LIg0LLQsNGI0LXQvCDQuNC90LTQtdC60YHQtSDQtdGB0YLRjCDQvdC10LfQsNC60L7QvNC80LjRh9C10L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjM3MgorIzogZ2l0LXNoLXNldHVwLnNoOjM3MwogbXNnaWQgIllvdSBuZWVkIHRvIHJ1biB0aGlzIGNvbW1hbmQgZnJvbSB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZS4iCiBtc2dzdHIgItCS0LDQvCDQvdGD0LbQvdC+INC30LDQv9GD0YHQutCw0YLRjCDRjdGC0YMg0LrQvtC80LDQvdC00YMg0L3QsNGF0L7QtNGP0YHRjCDQvdCwINCy0LXRgNGI0LjQvdC1INGA0LDQsdC+0YfQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsC4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDozNzcKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzgKIG1zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIGFic29sdXRlIHBhdGggb2YgZ2l0IGRpcmVjdG9yeSIKIG1zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvtC/0YDQtdC00LXQu9C40YLRjCDQsNCx0YHQvtC70Y7RgtC90YvQuSDQv9GD0YLRjCDQuiDQutCw0YLQsNC70L7Qs9GDIGdpdCIKIApAQCAtMTg0NDksNyArMjEzODMsNyBAQAogInBhdGNoICAgICAgICAgLSBwaWNrIGh1bmtzIGFuZCB1cGRhdGUgc2VsZWN0aXZlbHlcbiIKICJkaWZmICAgICAgICAgIC0gdmlldyBkaWZmIGJldHdlZW4gSEVBRCBhbmQgaW5kZXhcbiIKICJhZGQgdW50cmFja2VkIC0gYWRkIGNvbnRlbnRzIG9mIHVudHJhY2tlZCBmaWxlcyB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzXG4iCi1tc2dzdHIgInN0YXR1cyAgICAgICAgLSDQv9C+0LrQsNC30LDRgtGMINC/0YPRgtC4INGBINC40LfQvNC10L3QtdC90LjRj9C80LhcbnVwZGF0ZSAgICAgICAgLSDQtNC+0LHQsNCy0LjRgtGMINGB0L7RgdGC0L7Rj9C90LjQtSDRgNCw0LHQvtGH0LXQs9C+INC60LDRgtCw0LvQvtCz0LAg0LjQvdC00LXQutGBXG5yZXZlcnQgICAgICAgIC0g0LLQtdGA0L3Rg9GC0Ywg0L/RgNC+0LjQvdC00LXQutGB0LjRgNC+0LLQsNC90L3Ri9C5INC90LDQsdC+0YAg0LjQt9C80LXQvdC10L3QuNC5INC6IEhFQUQg0LLQtdGA0YHQuNC4XG5wYXRjaCAgICAgICAgIC0g0LLRi9Cx0YDQsNGC0Ywg0Lgg0LLRi9Cx0L7RgNC+0YfQvdC+INC+0LHQvdC+0LLQuNGC0Ywg0LHQu9C+0LrQuFxuZGlmZiAgICAgICAgICAtINC/0YDQvtGB0LzQvtGC0YDQtdGC0Ywg0YDQsNC30LvQuNGH0LjRjyDQvNC10LbQtNGDIEhFQUQg0Lgg0LjQvdC00LXQutGB0L7QvFxuYWRkIHVudHJhY2tlZCAtINC00L7QsdCw0LLQuNGC0Ywg0YHQvtC00LXRgNC20LjQvNC+0LUg0L3QtdC+0YLRgdC70LXQttC40LLQsNC10LzRi9GFINGE0LDQudC70L7QsiDQsiDQuNC90LTQtdC60YFcbiIKK21zZ3N0ciAic3RhdHVzICAgICAgICAtINC/0L7QutCw0LfQsNGC0Ywg0L/Rg9GC0Lgg0YEg0LjQt9C80LXQvdC10L3QuNGP0LzQuFxudXBkYXRlICAgICAgICAtINC00L7QsdCw0LLQuNGC0Ywg0YHQvtGB0YLQvtGP0L3QuNC1INGA0LDQsdC+0YfQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsCDQuNC90LTQtdC60YFcbnJldmVydCAgICAgICAgLSDQstC10YDQvdGD0YLRjCDQv9GA0L7QuNC90LTQtdC60YHQuNGA0L7QstCw0L3QvdGL0Lkg0L3QsNCx0L7RgCDQuNC30LzQtdC90LXQvdC40Lkg0LogSEVBRCDQstC10YDRgdC40LhcbnBhdGNoICAgICAgICAgLSDQstGL0LHRgNCw0YLRjCDQuCDQstGL0LHQvtGA0L7Rh9C90L4g0L7QsdC90L7QstC40YLRjCDQsdC70L7QutC4XG5kaWZmICAgICAgICAgIC0g0L/RgNC+0YHQvNC+0YLRgNC10YLRjCDQuNC30LzQtdC90LXQvdC40Y8g0LzQtdC20LTRgyBIRUFEINC4INC40L3QtNC10LrRgdC+0LxcbmFkZCB1bnRyYWNrZWQgLSDQtNC+0LHQsNCy0LjRgtGMINGB0L7QtNC10YDQttC40LzQvtC1INC90LXQvtGC0YHQu9C10LbQuNCy0LDQtdC80YvRhSDRhNCw0LnQu9C+0LIg0LIg0LjQvdC00LXQutGBXG4iCiAKICM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc0MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NDcKICM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NTcKQEAgLTE4NDY3LDczICsyMTQwMSw3MyBAQAogbXNnaWQgImludmFsaWQgYXJndW1lbnQgJXMsIGV4cGVjdGluZyAtLSIKIG1zZ3N0ciAi0L3QtdC00L7Qv9GD0YHRgtC40LzRi9C5INCw0YDQs9GD0LzQtdC90YIgJXMsINC+0LbQuNC00LDQtdGC0YHRjyAtLSIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMzAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTM4CiBtc2dpZCAibG9jYWwgem9uZSBkaWZmZXJzIGZyb20gR01UIGJ5IGEgbm9uLW1pbnV0ZSBpbnRlcnZhbFxuIgogbXNnc3RyICLQu9C+0LrQsNC70YzQvdGL0Lkg0YfQsNGB0L7QstC+0Lkg0L/QvtGP0YEg0L7RgtC70LjRh9Cw0LXRgtGB0Y8g0L7RgiBHTVQg0L3QsCDQvdC1INC80LjQvdGD0YLQvdGL0Lkg0LjQvdGC0LXRgNCy0LDQu1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEzNyBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0MworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDUgZ2l0LXNlbmQtZW1haWwucGVybDoxNTEKIG1zZ2lkICJsb2NhbCB0aW1lIG9mZnNldCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMjQgaG91cnNcbiIKIG1zZ3N0ciAi0LvQvtC60LDQu9GM0L3Ri9C5INGB0LTQstC40LMg0LLRgNC10LzQtdC90Lgg0LHQvtC70YzRiNC1INC40LvQuCDRgNCw0LLQtdC9IDI0INGH0LDRgdCwXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjExIGdpdC1zZW5kLWVtYWlsLnBlcmw6MjE3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjIxOSBnaXQtc2VuZC1lbWFpbC5wZXJsOjIyNQogbXNnaWQgInRoZSBlZGl0b3IgZXhpdGVkIHVuY2xlYW5seSwgYWJvcnRpbmcgZXZlcnl0aGluZyIKIG1zZ3N0ciAi0YDQtdC00LDQutGC0L7RgCDQsdGL0Lsg0LfQsNCy0LXRgNGI0LXQvSDRgSDQvtGI0LjQsdC60L7QuSwg0L7RgtC80LXQvdGP0Y4g0LLRgdGRIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjI5NAorIzogZ2l0LXNlbmQtZW1haWwucGVybDozMDIKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiJyVzJyBjb250YWlucyBhbiBpbnRlcm1lZGlhdGUgdmVyc2lvbiBvZiB0aGUgZW1haWwgeW91IHdlcmUgY29tcG9zaW5nLlxuIgogbXNnc3RyICLCqyVzwrsg0YHQvtC00LXRgNC20LjRgiDQv9GA0L7QvNC10LbRg9GC0L7Rh9C90YPRjiDQstC10YDRgdC40Y4g0L/QuNGB0YzQvNCwLCDQutC+0YLQvtGA0L7QtSDQstGLINCz0L7RgtC+0LLQuNGC0LUuXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Mjk5CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMwNwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICInJXMuZmluYWwnIGNvbnRhaW5zIHRoZSBjb21wb3NlZCBlbWFpbC5cbiIKIG1zZ3N0ciAiwqslcy5maW5hbMK7INGB0L7QtNC10YDQttC40YIg0L/QvtC00LPQvtGC0L7QstC70LXQvdC90L7QtSDQv9C40YHRjNC80L4uXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzE3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMyNgogbXNnaWQgIi0tZHVtcC1hbGlhc2VzIGluY29tcGF0aWJsZSB3aXRoIG90aGVyIG9wdGlvbnNcbiIKIG1zZ3N0ciAiLS1kdW1wLWFsaWFzZXMg0L3QtSDRgdC+0LLQvNC10YHRgtC40LzQviDRgSDQtNGA0YPQs9C40LzQuCDQvtC/0YbQuNGP0LzQuFxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjM4MyBnaXQtc2VuZC1lbWFpbC5wZXJsOjYzOAorIzogZ2l0LXNlbmQtZW1haWwucGVybDozOTUgZ2l0LXNlbmQtZW1haWwucGVybDo2NTYKIG1zZ2lkICJDYW5ub3QgcnVuIGdpdCBmb3JtYXQtcGF0Y2ggZnJvbSBvdXRzaWRlIGEgcmVwb3NpdG9yeVxuIgogbXNnc3RyICLQndC10LvRjNC30Y8g0LfQsNC/0YPRgdC60LDRgtGMIGdpdCBmb3JtYXQtcGF0Y2gg0LLQvdC1INGA0LXQv9C+0LfQuNGC0L7RgNC40Y9cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozODYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Mzk4CiBtc2dpZCAiIgogImBiYXRjaC1zaXplYCBhbmQgYHJlbG9naW5gIG11c3QgYmUgc3BlY2lmaWVkIHRvZ2V0aGVyICh2aWEgY29tbWFuZC1saW5lIG9yICIKICJjb25maWd1cmF0aW9uIG9wdGlvbilcbiIKIG1zZ3N0ciAiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ1NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo0NzAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiVW5rbm93biAtLXN1cHByZXNzLWNjIGZpZWxkOiAnJXMnXG4iCiBtc2dzdHIgItCd0LXQuNC30LLQtdGB0YLQvdC+0LUg0L/QvtC70LUgLS1zdXBwcmVzcy1jYzogwqslc8K7XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDg1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUwMQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJVbmtub3duIC0tY29uZmlybSBzZXR0aW5nOiAnJXMnXG4iCiBtc2dzdHIgItCd0LXQuNC30LLQtdGB0YLQvdGL0Lkg0L/QsNGA0LDQvNC10YLRgCAtLWNvbmZpcm06IMKrJXPCu1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUxMworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjkKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogc2VuZG1haWwgYWxpYXMgd2l0aCBxdW90ZXMgaXMgbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAi0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjQtTog0YHQvtC60YDQsNGJ0LXQvdC40LUg0LTQu9GPIHNlbmRtYWlsINGBINC60LDQstGL0YfQutCw0LzQuCDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgtGB0Y86ICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTE1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUzMQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ3YXJuaW5nOiBgOmluY2x1ZGU6YCBub3Qgc3VwcG9ydGVkOiAlc1xuIgogbXNnc3RyICLQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1OiDCqzppbmNsdWRlOsK7INC90LUg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGC0YHRjzogJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MTcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTMzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGAvZmlsZWAgb3IgYHxwaXBlYCByZWRpcmVjdGlvbiBub3Qgc3VwcG9ydGVkOiAlc1xuIgogbXNnc3RyICLQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1OiDQv9C10YDQtdC90LDQv9GA0LDQstC70LXQvdC40LUgwqsvZmlsZcK7INC40LvQuCDCq3xwaXBlwrsg0L3QtSDQv9C+0LTQtNC10YDQttC40LLQsNC10YLRgdGPOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MzgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogc2VuZG1haWwgbGluZSBpcyBub3QgcmVjb2duaXplZDogJXNcbiIKIG1zZ3N0ciAi0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjQtTog0YHRgtGA0L7QutCwIHNlbmRtYWlsINC90LUg0YDQsNGB0L/QvtC30L3QsNC90LA6ICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjA0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjYyMgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiRmlsZSAnJXMnIGV4aXN0cyBidXQgaXQgY291bGQgYWxzbyBiZSB0aGUgcmFuZ2Ugb2YgY29tbWl0c1xuIgpAQCAtMTg1NDMsNzUgKzIxNDc3LDc1IEBACiAiICAgICogR2l2aW5nIC0tZm9ybWF0LXBhdGNoIG9wdGlvbiBpZiB5b3UgbWVhbiBhIHJhbmdlLlxuIgogbXNnc3RyICLQpNCw0LnQuyDCqyVzwrsg0YHRg9GJ0LXRgdGC0LLRg9C10YIsINC90L4g0Y3RgtC+INGC0LDQutC20LUg0LzQvtC20LXRgiDQsdGL0YLRjCDQuFxu0LTQuNCw0L/QsNC30L7QvdC+0Lwg0LrQvtC80LzQuNGC0L7QsiDQtNC70Y8g0LrQvtGC0L7RgNGL0YUg0L3Rg9C20L3QviDRgdC00LXQu9Cw0YLRjCDQv9Cw0YLRh9C4LiBcbtCj0YHRgtGA0LDQvdC40YLQtSDQvdC10L7QtNC90L7Qt9C90LDRh9C90L7RgdGC0YzigKZcblxuICAgICog0KPQutCw0LfQsNCyIFwiLi8lc1wiINC10YHQu9C4INCy0Ysg0LjQvNC10LXRgtC1INCyINCy0LjQtNGDINC40LzRjyDRhNCw0LnQu9CwOyDQuNC70LhcbiAgICAqINCf0LXRgNC10LTQsNCyINC+0L/RhtC40Y4gLS1mb3JtYXQtcGF0Y2gg0LXRgdC70Lgg0LLRiyDQuNC80LXQtdGC0LUg0LIg0LLQuNC00YMg0LTQuNCw0L/QsNC30L7QvSDQutC+0LzQvNC40YLQvtCyLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjYyNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NDMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW5kaXIgJXM6ICVzIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBvcGVuZGlyICVzOiAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NDkKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjY3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICJmYXRhbDogJXM6ICVzXG4iCiAid2FybmluZzogbm8gcGF0Y2hlcyB3ZXJlIHNlbnRcbiIKIG1zZ3N0ciAi0LrRgNC40YLQuNGH0LXRgdC60LDRjyDQvtGI0LjQsdC60LA6ICVzOiAlc1xu0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjQtTog0L/QsNGC0YfQuCDQvdC1INCx0YvQu9C4INC+0YLQv9GA0LDQstC70LXQvdGLXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjYwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY3OAogbXNnaWQgIiIKICJcbiIKICJObyBwYXRjaCBmaWxlcyBzcGVjaWZpZWQhXG4iCiAiXG4iCiBtc2dzdHIgIlxu0KTQsNC50Lsg0YEg0L/QsNGC0YfQtdC8INC90LUg0YPQutCw0LfQsNC9IVxuXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjczCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY5MQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJObyBzdWJqZWN0IGxpbmUgaW4gJXM/IgogbXNnc3RyICLQndC10YIg0YHRgtGA0L7QutC4INGBINGC0LXQvNC+0Lkg0LIgJXM/IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY4MworIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MDEKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW4gZm9yIHdyaXRpbmcgJXM6ICVzIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINC00LvRjyDQt9Cw0L/QuNGB0LggJXM6ICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY5NAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MTIKIG1zZ2lkICIiCiAiTGluZXMgYmVnaW5uaW5nIGluIFwiR0lUOlwiIHdpbGwgYmUgcmVtb3ZlZC5cbiIKICJDb25zaWRlciBpbmNsdWRpbmcgYW4gb3ZlcmFsbCBkaWZmc3RhdCBvciB0YWJsZSBvZiBjb250ZW50c1xuIgogImZvciB0aGUgcGF0Y2ggeW91IGFyZSB3cml0aW5nLlxuIgogIlxuIgogIkNsZWFyIHRoZSBib2R5IGNvbnRlbnQgaWYgeW91IGRvbid0IHdpc2ggdG8gc2VuZCBhIHN1bW1hcnkuXG4iCi1tc2dzdHIgItCh0YLRgNC+0LrQuCwg0L3QsNGH0LjQvdCw0Y7RidC40LXRgdGPINGBIMKrR0lUOsK7INCx0YPQtNGD0YIg0YPQtNCw0LvQtdC90YsuXG7QktC+0LfQvNC+0LbQvdC+INCx0YPQtNC10YIg0L/QvtC70LXQt9C90L4g0LLQutC70Y7Rh9C40YLRjCDRgdGC0LDRgtC40YHRgtC40LrRgyDQtNC+0LHQsNCy0LvQtdC90LjQuVxu0Lgg0YPQtNCw0LvQtdC90LjQuSDQuNC70Lgg0YLQsNCx0LvQuNGG0YMg0YHQvtC00LXRgNC20LjQvNC+0LPQviDQsiDQv9Cw0YLRhywg0LrQvtGC0L7RgNGL0Lkg0LLRiyDQv9C40YjQtdGC0LUuXG5cbtCe0YfQuNGB0YLQuNGC0LUg0YHQvtC00LXRgNC20LjQvNC+0LUsINC10YHQu9C4INCy0Ysg0L3QtSDRhdC+0YLQuNGC0LUg0L7RgtC/0YDQsNCy0LvRj9GC0Ywg0L/QuNGB0YzQvNC+INGBINC60YDQsNGC0LrQvtC5INC40L3RhNC+0YDQvNCw0YbQuNC10LkuXG4iCittc2dzdHIgItCh0YLRgNC+0LrQuCwg0L3QsNGH0LjQvdCw0Y7RidC40LXRgdGPINGBIMKrR0lUOsK7INCx0YPQtNGD0YIg0YPQtNCw0LvQtdC90YsuXG7QktC+0LfQvNC+0LbQvdC+INCx0YPQtNC10YIg0L/QvtC70LXQt9C90L4g0LLQutC70Y7Rh9C40YLRjCDRgdGC0LDRgtC40YHRgtC40LrRgyDQtNC+0LHQsNCy0LvQtdC90LjQuVxu0Lgg0YPQtNCw0LvQtdC90LjQuSDQuNC70Lgg0YLQsNCx0LvQuNGG0YMg0YHQvtC00LXRgNC20LjQvNC+0LPQviDQuiDRgdC+0LfQtNCw0LLQsNC10LzQvtC80YMg0L/QsNGC0YfRgy5cblxu0J7Rh9C40YHRgtC40YLQtSDRgdC+0LTQtdGA0LbQuNC80L7QtSwg0LXRgdC70Lgg0LLRiyDQvdC1INGF0L7RgtC40YLQtSDQvtGC0L/RgNCw0LLQu9GP0YLRjCDQv9C40YHRjNC80L4g0YHQviDRgdCy0L7QtNC60L7QuSDQuNC30LzQtdC90LXQvdC40LkuXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzE4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjczNgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiAlczogJXMiCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0YwgJXM6ICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjczNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo3NTMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW4gJXMuZmluYWw6ICVzIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMICVzLmZpbmFsOiAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo3NzgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Nzk2CiBtc2dpZCAiU3VtbWFyeSBlbWFpbCBpcyBlbXB0eSwgc2tpcHBpbmcgaXRcbiIKLW1zZ3N0ciAi0J/QuNGB0YzQvNC+INGBINC60YDQsNGC0LrQvtC5INC40L3RhNC+0YDQvNCw0YbQuNC10Lkg0L/Rg9GB0YLQvtC1LCDQv9C+0L/Rg9GB0LrQsNGOINC10LPQvlxuIgorbXNnc3RyICLQn9C40YHRjNC80L4g0YHQviDRgdCy0L7QtNC60L7QuSDQuNC30LzQtdC90LXQvdC40Lkg0L/Rg9GB0YLQvtC1LCDQv9C+0L/Rg9GB0LrQsNGOINC10LPQvlxuIgogCiAjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGtlZXAgW3kvTl0gYXMgaXMuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjgxMworIzogZ2l0LXNlbmQtZW1haWwucGVybDo4MzEKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHVzZSA8JXM+IFt5L05dPyAiCiBtc2dzdHIgItCS0Ysg0YPQstC10YDQtdC90YssINGH0YLQviDRhdC+0YLQuNGC0LUg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIDwlcz4gW3kvTl0/ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4NjgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODg2CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgZmlsZXMgYXJlIDhiaXQsIGJ1dCBkbyBub3QgZGVjbGFyZSBhIENvbnRlbnQtVHJhbnNmZXItIgogIkVuY29kaW5nLlxuIgogbXNnc3RyICLQodC70LXQtNGD0Y7RidC40LUg0YTQsNC50LvRiyA4INCx0LjRgtC90YvQtSwg0L3QviDQvdC1INGB0L7QtNC10YDQttCw0YIgQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZy5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4NzMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODkxCiBtc2dpZCAiV2hpY2ggOGJpdCBlbmNvZGluZyBzaG91bGQgSSBkZWNsYXJlIFtVVEYtOF0/ICIKIG1zZ3N0ciAi0JrQsNC60YPRjiA4INCx0LjRgtC90YPRjiDQutC+0LTQuNGA0L7QstC60YMg0L3Rg9C20L3QviDRg9C60LDQt9Cw0YLRjCBbVVRGLThdPyAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODgxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjg5OQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiUmVmdXNpbmcgdG8gc2VuZCBiZWNhdXNlIHRoZSBwYXRjaFxuIgpAQCAtMTg2MTksMjAgKzIxNTUzLDIwIEBACiAiaGFzIHRoZSB0ZW1wbGF0ZSBzdWJqZWN0ICcqKiogU1VCSkVDVCBIRVJFICoqKicuIFBhc3MgLS1mb3JjZSBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gc2VuZC5cbiIKIG1zZ3N0ciAi0J7RgtC60LDQt9GL0LLQsNGO0YHRjCDQvtGC0L/RgNCw0LLQuNGC0YwsINGCLtC6LiDQv9Cw0YLRh1xuXHQlc1xu0YHQvtC00LXRgNC20LjRgiDRiNCw0LHQu9C+0L3QvdGL0Lkg0LfQsNCz0L7Qu9C+0LLQvtC6IMKrKioqIFNVQkpFQ1QgSEVSRSAqKirCuy4g0KPQutCw0LbQuNGC0LUg0L/QsNGA0LDQvNC10YLRgCAtLWZvcmNlLCDQtdGB0LvQuCDQstGLICDQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3QviDRhdC+0YLQuNGC0LUg0L7RgtC/0YDQsNCy0LjRgtGMINC10LPQvi5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MDAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTE4CiBtc2dpZCAiVG8gd2hvbSBzaG91bGQgdGhlIGVtYWlscyBiZSBzZW50IChpZiBhbnlvbmUpPyIKIG1zZ3N0ciAi0JrQvtC80YMg0LTQvtC70LbQvdGLINCx0YvRgtGMINC+0YLQv9GA0LDQstC70LXQvdGLINC/0LjRgdGM0LzQsCAo0LXRgdC70Lgg0L3Rg9C20L3Qvik/IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkxOAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MzYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZmF0YWw6IGFsaWFzICclcycgZXhwYW5kcyB0byBpdHNlbGZcbiIKIG1zZ3N0ciAi0LrRgNC40YLQuNGH0LXRgdC60LDRjyDQvtGI0LjQsdC60LA6INGB0L7QutGA0LDRidC10L3QuNC1IMKrJXPCuyDRgNCw0YHQutGA0YvQstCw0LXRgtGB0Y8g0YHQsNC80L4g0LIg0YHQtdCx0Y9cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MzAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTQ4CiBtc2dpZCAiTWVzc2FnZS1JRCB0byBiZSB1c2VkIGFzIEluLVJlcGx5LVRvIGZvciB0aGUgZmlyc3QgZW1haWwgKGlmIGFueSk/ICIKIG1zZ3N0ciAiTWVzc2FnZS1JRCDQutC+0YLQvtGA0YvQuSDQvdGD0LbQvdC+INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQsiDQv9C+0LvQtSBJbi1SZXBseS1UbyDQtNC70Y8g0L/QtdGA0LLQvtCz0L4g0L/QuNGB0YzQvNCwICjQtdGB0LvQuCDQvdGD0LbQvdC+KT8gIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjk4OCBnaXQtc2VuZC1lbWFpbC5wZXJsOjk5NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDA2IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAxNAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJlcnJvcjogdW5hYmxlIHRvIGV4dHJhY3QgYSB2YWxpZCBhZGRyZXNzIGZyb206ICVzXG4iCiBtc2dzdHIgItC+0YjQuNCx0LrQsDog0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0LTQtdC70LjRgtGMINC00LXQudGB0YLQstC40YLQtdC70YzQvdGL0Lkg0LDQtNGA0LXRgSDQuNC3OiAlc1xuIgpAQCAtMTg2NDAsMTYgKzIxNTc0LDE2IEBACiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3FdIFtkXSBbZV0gaW4geW91cgogIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAogIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAwMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDE4CiBtc2dpZCAiV2hhdCB0byBkbyB3aXRoIHRoaXMgYWRkcmVzcz8gKFtxXXVpdHxbZF1yb3B8W2VdZGl0KTogIgogbXNnc3RyICLQp9GC0L4g0L3Rg9C20L3QviDRgdC00LXQu9Cw0YLRjCDRgSDRjdGC0LjQvCDQsNC00YDQtdGB0L7QvD8gKFtxXSAtINCy0YvRhdC+0LR8W2RdIC0g0L7RgtCx0YDQvtGB0LjRgtGMfFtlXSAtINGA0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMKTogIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEzMTcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTMzNQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJDQSBwYXRoIFwiJXNcIiBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAi0L/Rg9GC0YwgQ0Egwqslc8K7INC90LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQwMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDE4CiBtc2dpZCAiIgogIiAgICBUaGUgQ2MgbGlzdCBhYm92ZSBoYXMgYmVlbiBleHBhbmRlZCBieSBhZGRpdGlvbmFsXG4iCiAiICAgIGFkZHJlc3NlcyBmb3VuZCBpbiB0aGUgcGF0Y2ggY29tbWl0IG1lc3NhZ2UuIEJ5IGRlZmF1bHRcbiIKQEAgLTE4NjY2LDEyOCArMjE2MDAsMTI4IEBACiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3ldIFtuXSBbZV0gW3FdIFthXSBpbiB5b3VyCiAjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CiAjLiBhdCB0aGlzIHBvaW50LgotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDE1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0MzMKIG1zZ2lkICJTZW5kIHRoaXMgZW1haWw/IChbeV1lc3xbbl1vfFtlXWRpdHxbcV11aXR8W2FdbGwpOiAiCiBtc2dzdHIgItCe0YLQv9GA0LDQstC40YLRjCDRjdGC0L4g0L/QuNGB0YzQvNC+PyAoW3ldIC0g0LTQsHxbbl0gLSDQvdC10YJ8W2VdIC0g0LjQt9C80LXQvdC40YLRjHxbcV0gLSDQstGL0YXQvtC0fFthXSAtINCy0YHQtSk6ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDE4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0MzYKIG1zZ2lkICJTZW5kIHRoaXMgZW1haWwgcmVwbHkgcmVxdWlyZWQiCiBtc2dzdHIgItCe0YLQv9GA0LDQstC60LAg0Y3RgtC+0LPQviDQvtGC0LLQtdGC0LAg0L3QsCDQv9C40YHRjNC80L4g0L7QsdGP0LfQsNGC0LXQu9GM0L3QsCIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDQ2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjQKIG1zZ2lkICJUaGUgcmVxdWlyZWQgU01UUCBzZXJ2ZXIgaXMgbm90IHByb3Blcmx5IGRlZmluZWQuIgogbXNnc3RyICLQotGA0LXQsdGD0LXQvNGL0LkgU01UUCDRgdC10YDQstC10YAg0L3QtSDQsdGL0Lsg0L/RgNCw0LLQuNC70YzQvdC+INC+0LHRitGP0LLQu9C10L0uIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0OTMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUxMQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBTVEFSVFRMUyEgJXMiCiBtc2dzdHIgItCh0LXRgNCy0LXRgCDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgiBTVEFSVFRMUyEgJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ5OCBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUxNiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MjAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU1RBUlRUTFMgZmFpbGVkISAlcyIKIG1zZ3N0ciAi0J7RiNC40LHQutCwIFNUQVJUVExTISAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTExCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MjkKIG1zZ2lkICJVbmFibGUgdG8gaW5pdGlhbGl6ZSBTTVRQIHByb3Blcmx5LiBDaGVjayBjb25maWcgYW5kIHVzZSAtLXNtdHAtZGVidWcuIgogbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC40L3QuNGG0LjQsNC70LjQt9C40YDQvtCy0LDRgtGMIFNNVFAuINCf0YDQvtCy0LXRgNGM0YLQtSDQstCw0YjQuCDQvdCw0YHRgtGA0L7QudC60Lgg0Lgg0L/QvtC/0YDQvtCx0YPQudGC0LUg0LfQsNC/0YPRgdGC0LjRgtGMINCyINC/0LDRgNCw0LzQtdGC0YDQvtC8IC0tc210cC1kZWJ1Zy4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUyOQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBzZW5kICVzXG4iCiBtc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC/0YDQsNCy0LjRgtGMICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUzMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTUwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkRyeS1TZW50ICVzXG4iCiBtc2dzdHIgItCY0LzQuNGC0LDRhtC40Y8g0L7RgtC/0YDQsNCy0LrQuCAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MzIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU1MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTZW50ICVzXG4iCiBtc2dzdHIgItCe0YLQv9GA0LDQstC70LXQvdC+ICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUzNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTUyCiBtc2dpZCAiRHJ5LU9LLiBMb2cgc2F5czpcbiIKIG1zZ3N0ciAi0JjQvNC40YLQsNGG0LjRjyBPSy4g0JbRg9GA0L3QsNC7INGB0L7QtNC10YDQttC40YI6XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUzNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTUyCiBtc2dpZCAiT0suIExvZyBzYXlzOlxuIgogbXNnc3RyICJPSy4g0JbRg9GA0L3QsNC7INGB0L7QtNC10YDQttC40YI6XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTY0CiBtc2dpZCAiUmVzdWx0OiAiCiBtc2dzdHIgItCg0LXQt9GD0LvRjNGC0LDRgjogIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDkKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU2NwogbXNnaWQgIlJlc3VsdDogT0tcbiIKIG1zZ3N0ciAi0KDQtdC30YPQu9GM0YLQsNGCOiBPS1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NjcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU4NQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJjYW4ndCBvcGVuIGZpbGUgJXMiCiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0YTQsNC50LsgJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTYxNCBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MzQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTYzMiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NTIKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKG1ib3gpIEFkZGluZyBjYzogJXMgZnJvbSBsaW5lICclcydcbiIKIG1zZ3N0ciAiKG1ib3gpINCU0L7QsdCw0LLQu9C10L3QuNC1IGNjOiAlcyDRgdC+INGB0YLRgNC+0LrQuCDCqyVzwrtcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjIwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MzgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKG1ib3gpIEFkZGluZyB0bzogJXMgZnJvbSBsaW5lICclcydcbiIKIG1zZ3N0ciAiKG1ib3gpINCU0L7QsdCw0LLQu9C10L3QuNC1IHRvOiAlcyDRgdC+INGB0YLRgNC+0LrQuCDCqyVzwrtcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjczCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2OTEKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKG5vbi1tYm94KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIihub24tbWJveCkg0JTQvtCx0LDQstC70LXQvdC40LUgY2M6ICVzINGB0L4g0YHRgtGA0L7QutC4IMKrJXPCu1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2OTgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTcyNgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoYm9keSkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIoYm9keSkg0JTQvtCx0LDQstC70LXQvdC40LUgY2M6ICVzINGB0L4g0YHRgtGA0L7QutC4IMKrJXPCu1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4MDkKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTgzNwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoJXMpIENvdWxkIG5vdCBleGVjdXRlICclcyciCiBtc2dzdHIgIiglcykg0J3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0Ywgwqslc8K7IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4MTYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg0NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoJXMpIEFkZGluZyAlczogJXMgZnJvbTogJyVzJ1xuIgogbXNnc3RyICIoJXMpINCU0L7QsdCw0LLQu9C10L3QuNC1ICVzOiAlcyDQuNC3OiDCqyVzwrtcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODIwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NDgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKCVzKSBmYWlsZWQgdG8gY2xvc2UgcGlwZSB0byAnJXMnIgogbXNnc3RyICIoJXMpINC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC60YDRi9GC0Ywg0L/QvtGC0L7QuiDQuiDCqyVzwrsiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg1MAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODc4CiBtc2dpZCAiY2Fubm90IHNlbmQgbWVzc2FnZSBhcyA3Yml0IgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQv9GA0LDQstC40YLRjCDRgdC+0L7QsdGJ0LXQvdC40LUg0LIgNyDQsdC40YLQvdC+0Lkg0LrQvtC00LjRgNC+0LLQutC1IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NTgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg4NgogbXNnaWQgImludmFsaWQgdHJhbnNmZXIgZW5jb2RpbmciCiBtc2dzdHIgItC90LXQtNC+0L/Rg9GB0YLQuNC80LDRjyDQutC+0LTQuNGA0L7QstC60LAg0L/QtdGA0LXQtNCw0YfQuCIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODk5IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk1MSBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NjEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkyNyBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NzkgZ2l0LXNlbmQtZW1haWwucGVybDoxOTg5CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlc1xuIgogbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMICVzOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkzMAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIlczogcGF0Y2ggY29udGFpbnMgYSBsaW5lIGxvbmdlciB0aGFuIDk5OCBjaGFyYWN0ZXJzIgogbXNnc3RyICIlczog0L/QsNGC0Ycg0YHQvtC00LXRgNC20LjRgiDRgdGC0YDQvtC60YMg0LTQu9C40L3QvdC10LUg0YfQtdC8IDk5OCDRgdC40LzQstC+0LvQvtCyIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MTkKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk0NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyAlcyB3aXRoIGJhY2t1cCBzdWZmaXggJyVzJy5cbiIKIG1zZ3N0ciAi0J/RgNC+0L/Rg9GB0LrQsNGOICVzINGBINC+0LrQvtC90YfQsNC90LjQtdC8INGA0LXQt9C10YDQstC90L7QuSDQutC+0L/QuNC4IMKrJXPCuy5cbiIKIAogIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBrZWVwICJbeXxOXSIgYXMgaXMuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MjMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk1MQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJEbyB5b3UgcmVhbGx5IHdhbnQgdG8gc2VuZCAlcz8gW3l8Tl06ICIKIG1zZ3N0ciAi0JLRiyDQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3QviDRhdC+0YLQuNGC0LUg0L7RgtC/0YDQsNCy0LjRgtGMICVzPyBbeSAtINC00LB8TiAtINC90LXRgl06ICIKZGlmZiAtLWdpdCBhL3BvL3N2LnBvIGIvcG8vc3YucG8KaW5kZXggOTgyNDRjMC4uMDZhNTg2YSAxMDA2NDQKLS0tIGEvcG8vc3YucG8KKysrIGIvcG8vc3YucG8KQEAgLTEsMTQgKzEsMTQgQEAKICMgU3dlZGlzaCB0cmFuc2xhdGlvbnMgZm9yIEdpdC4KLSMgQ29weXJpZ2h0IChDKSAyMDEwLTIwMTggUGV0ZXIgS3JlZnRpbmcgPHBldGVyQHNvZnR3b2x2ZXMucHAuc2U+CisjIENvcHlyaWdodCAoQykgMjAxMC0yMDIwIFBldGVyIEtyZWZ0aW5nIDxwZXRlckBzb2Z0d29sdmVzLnBwLnNlPgogIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgR2l0IHBhY2thZ2UuCi0jIFBldGVyIEtyZWZ0aW5nIDxwZXRlckBzb2Z0d29sdmVzLnBwLnNlPiwgMjAxMCwgMjAxMSwgMjAxMiwgMjAxMywgMjAxNCwgMjAxNSwgMjAxNiwgMjAxNywgMjAxOC4KKyMgUGV0ZXIgS3JlZnRpbmcgPHBldGVyQHNvZnR3b2x2ZXMucHAuc2U+LCAyMDEwLCAyMDExLCAyMDEyLCAyMDEzLCAyMDE0LCAyMDE1LCAyMDE2LCAyMDE3LCAyMDE4LCAyMDE5LCAyMDIwLgogIwogbXNnaWQgIiIKIG1zZ3N0ciAiIgotIlByb2plY3QtSWQtVmVyc2lvbjogZ2l0IDIuMjAuMFxuIgorIlByb2plY3QtSWQtVmVyc2lvbjogZ2l0IDIuMjYuMFxuIgogIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBHaXQgTWFpbGluZyBMaXN0IDxnaXRAdmdlci5rZXJuZWwub3JnPlxuIgotIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDE4LTEyLTAyIDEwOjU1KzA4MDBcbiIKLSJQTy1SZXZpc2lvbi1EYXRlOiAyMDE4LTEyLTAyIDE1OjQxKzAxMDBcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAyMC0wMy0xMSAxNToyNiswODAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAyMC0wMy0xNyAxODozMCswMTAwXG4iCiAiTGFzdC1UcmFuc2xhdG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJAc29mdHdvbHZlcy5wcC5zZT5cbiIKICJMYW5ndWFnZS1UZWFtOiBTd2VkaXNoIDx0cC1zdkBsaXN0b3IudHAtc3Yuc2U+XG4iCiAiTGFuZ3VhZ2U6IHN2XG4iCkBAIC0xOCw0NyArMTgsNzI5IEBACiAiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9KG4gIT0gMSk7XG4iCiAiWC1HZW5lcmF0b3I6IEd0cmFuc2xhdG9yIDIuOTEuN1xuIgogCi0jOiBhZHZpY2UuYzo5OQorIzogYWRkLWludGVyYWN0aXZlLmM6MzY4CisjLCBjLWZvcm1hdAorbXNnaWQgIkh1aCAoJXMpPyIKK21zZ3N0ciAiVmFkw6UgKCVzKT8iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjUyMSBhZGQtaW50ZXJhY3RpdmUuYzo4MjIgc2VxdWVuY2VyLmM6MzEyNAorIzogc2VxdWVuY2VyLmM6MzU2MiBidWlsdGluL3JlYmFzZS5jOjg3NSBidWlsdGluL3JlYmFzZS5jOjE2ODcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA4NiBidWlsdGluL3JlYmFzZS5jOjIxMzAKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBpbmRleCIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBpbmRleGV0IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo1NzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyNjkKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjk0Cittc2dpZCAiYmluYXJ5IgorbXNnc3RyICJiaW7DpHIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjYzNCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI3OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMzIKK21zZ2lkICJub3RoaW5nIgorbXNnc3RyICJpbmdlbnRpbmciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjYzNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMjkKK21zZ2lkICJ1bmNoYW5nZWQiCittc2dzdHIgIm/DpG5kcmFkIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2NzIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NDMKK21zZ2lkICJVcGRhdGUiCittc2dzdHIgIlVwcGRhdGVyYSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njg5IGFkZC1pbnRlcmFjdGl2ZS5jOjg3NworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhZ2UgJyVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBrw7ZhIFwiJXNcIiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njk1IGFkZC1pbnRlcmFjdGl2ZS5jOjg4NCBzZXF1ZW5jZXIuYzozMzE3CisjOiBidWlsdGluL3JlYmFzZS5jOjg5OQorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBpbmRleCIKK21zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgaW5kZXhldCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njk4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjI4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJ1cGRhdGVkICVkIHBhdGhcbiIKK21zZ2lkX3BsdXJhbCAidXBkYXRlZCAlZCBwYXRoc1xuIgorbXNnc3RyWzBdICJ1cHBkYXRlcmFkZSAlZCBzw7ZrdsOkZ1xuIgorbXNnc3RyWzFdICJ1cHBkYXRlcmFkZSAlZCBzw7ZrdsOkZ2FyXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjcxNiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3OAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAibm90ZTogJXMgaXMgdW50cmFja2VkIG5vdy5cbiIKK21zZ3N0ciAib2JzZXJ2ZXJhOiAlcyBzcMOlcmFzIGludGUgbMOkbmdyZS5cbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NzIxIGFwcGx5LmM6NDExMCBidWlsdGluL2NoZWNrb3V0LmM6MjgxCisjOiBidWlsdGluL3Jlc2V0LmM6MTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ha2VfY2FjaGVfZW50cnkgZmFpbGVkIGZvciBwYXRoICclcyciCittc2dzdHIgIm1ha2VfY2FjaGVfZW50cnkgbWlzc2x5Y2thZGVzIGbDtnIgc8O2a3bDpGdlbiBcIiVzXCIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjc1MSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY1NQorbXNnaWQgIlJldmVydCIKK21zZ3N0ciAiw4V0ZXJzdMOkbGwiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjc2NworbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBIRUFEXnt0cmVlfSIKK21zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSBIRUFEXnt0cmVlfSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODA1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjMxCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJyZXZlcnRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInJldmVydGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gIsOldGVyc3TDpGxsZGUgJWQgc8O2a3bDpGdcbiIKK21zZ3N0clsxXSAiw6V0ZXJzdMOkbGxkZSAlZCBzw7ZrdsOkZ2FyXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjg1NiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY5NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyB1bnRyYWNrZWQgZmlsZXMuXG4iCittc2dzdHIgIkluZ2Egb3Nww6VyYWRlIGZpbGVyLlxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4NjAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2ODkKK21zZ2lkICJBZGQgdW50cmFja2VkIgorbXNnc3RyICJMw6RnZyB0aWxsIG9zcMOlcmFkIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4ODcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MjUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgImFkZGVkICVkIHBhdGhcbiIKK21zZ2lkX3BsdXJhbCAiYWRkZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAibGFkZSB0aWxsICVkIHPDtmt2w6RnXG4iCittc2dzdHJbMV0gImxhZGUgdGlsbCAlZCBzw7ZrdsOkZ2FyXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkxNworIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyB1bm1lcmdlZDogJXMiCittc2dzdHIgImlnbm9yZXJhciBlaiBzYW1tYW5zbGFnZW46ICVzIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5MjkgYWRkLXBhdGNoLmM6MTY3NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiT25seSBiaW5hcnkgZmlsZXMgY2hhbmdlZC5cbiIKK21zZ3N0ciAiRW5kYXN0IGJpbsOkcmEgZmlsZXIgw6RuZHJhZGUuXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkzMSBhZGQtcGF0Y2guYzoxNjczIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2OAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBjaGFuZ2VzLlxuIgorbXNnc3RyICJJbmdhIMOkbmRyaW5nYXIuXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkzNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNzYKK21zZ2lkICJQYXRjaCB1cGRhdGUiCittc2dzdHIgIlVwcGRhdGVyYSBwYXRjaCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTc0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1NAorbXNnaWQgIlJldmlldyBkaWZmIgorbXNnc3RyICJHcmFuc2thIGRpZmYiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDIKK21zZ2lkICJzaG93IHBhdGhzIHdpdGggY2hhbmdlcyIKK21zZ3N0ciAidmlzYSBzw7ZrdsOkZ2FyIG1lZCDDpG5kcmluZ2FyIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA0Cittc2dpZCAiYWRkIHdvcmtpbmcgdHJlZSBzdGF0ZSB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIgorbXNnc3RyICJsw6RnZyBhcmJldHNrYXRhbG9nZW5zIHRpbGxzdMOlbmQgdGlsbCBrw7ZhZGUgw6RuZHJpbmdhciIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwNgorbXNnaWQgInJldmVydCBzdGFnZWQgc2V0IG9mIGNoYW5nZXMgYmFjayB0byB0aGUgSEVBRCB2ZXJzaW9uIgorbXNnc3RyICLDpXRlcnN0w6RsbCBrw7ZhZGUgw6RuZHJpbmdhciB0aWxsYmFrYSB0aWxsIEhFQUQtdmVyc2lvbmVuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA4Cittc2dpZCAicGljayBodW5rcyBhbmQgdXBkYXRlIHNlbGVjdGl2ZWx5IgorbXNnc3RyICJ2w6RsaiBzdHlja2VuIG9jaCB1cHBkYXRlcmEgc2VsZWt0aXZ0IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDEwCittc2dpZCAidmlldyBkaWZmIGJldHdlZW4gSEVBRCBhbmQgaW5kZXgiCittc2dzdHIgInZpc2Egc2tpbGxuYWQgbWVsbGFuIEhFQUQgb2NoIGluZGV4IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDEyCittc2dpZCAiYWRkIGNvbnRlbnRzIG9mIHVudHJhY2tlZCBmaWxlcyB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIgorbXNnc3RyICJsw6RnZyBpbm5laMOlbGwgaSBvc3DDpXJhZGUgZmlsZXIgdGlsbCBrw7ZhZGUgw6RuZHJpbmdhciIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyMCBhZGQtaW50ZXJhY3RpdmUuYzoxMDY5Cittc2dpZCAiUHJvbXB0IGhlbHA6IgorbXNnc3RyICJLb21tYW5kb3JhZHNoasOkbHA6IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDIyCittc2dpZCAic2VsZWN0IGEgc2luZ2xlIGl0ZW0iCittc2dzdHIgIm1hcmtlcmEgZW4gcG9zdCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyNAorbXNnaWQgInNlbGVjdCBhIHJhbmdlIG9mIGl0ZW1zIgorbXNnc3RyICJtYXJrZXJhIGludGVydmFsbCBhdiBwb3N0ZXIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjYKK21zZ2lkICJzZWxlY3QgbXVsdGlwbGUgcmFuZ2VzIgorbXNnc3RyICJtYXJrZXJhIGZsZXJhIGludGVydmFsbCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyOCBhZGQtaW50ZXJhY3RpdmUuYzoxMDczCittc2dpZCAic2VsZWN0IGl0ZW0gYmFzZWQgb24gdW5pcXVlIHByZWZpeCIKK21zZ3N0ciAibWFya2VyYSBwb3N0IGJhc2VyYWQgcMOlIHVuaWt0IHByZWZpeCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAzMAorbXNnaWQgInVuc2VsZWN0IHNwZWNpZmllZCBpdGVtcyIKK21zZ3N0ciAiYXZtYXJrZXJhIGFuZ2l2bmEgcG9zdGVyIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDMyCittc2dpZCAiY2hvb3NlIGFsbCBpdGVtcyIKK21zZ3N0ciAidsOkbGogYWxsYSBwb3N0ZXIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMzQKK21zZ2lkICIoZW1wdHkpIGZpbmlzaCBzZWxlY3RpbmciCittc2dzdHIgIih0b210KSBhdnNsdXRhIG1hcmtlcmluZyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3MQorbXNnaWQgInNlbGVjdCBhIG51bWJlcmVkIGl0ZW0iCittc2dzdHIgIm1hcmtlcmEgZW4gbnVtcmVyYWQgcG9zdCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3NQorbXNnaWQgIihlbXB0eSkgc2VsZWN0IG5vdGhpbmciCittc2dzdHIgIih0b210KSBtYXJrZXJhIGluZ2VudGluZyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA4MyBidWlsdGluL2NsZWFuLmM6ODIyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTg1MQorbXNnaWQgIioqKiBDb21tYW5kcyAqKioiCittc2dzdHIgIioqKiBLb21tYW5kb24gKioqIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDg0IGJ1aWx0aW4vY2xlYW4uYzo4MjMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODQ4Cittc2dpZCAiV2hhdCBub3ciCittc2dzdHIgIlZhZCBudSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTEzNiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMworbXNnaWQgInN0YWdlZCIKK21zZ3N0ciAia8O2YWQiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJ1bnN0YWdlZCIKK21zZ3N0ciAiZWoga8O2YWQiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgYXBwbHkuYzo0OTY3IGFwcGx5LmM6NDk3MCBidWlsdGluL2FtLmM6MjI1MQorIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9jbG9uZS5jOjEyMyBidWlsdGluL2ZldGNoLmM6MTQ0CisjOiBidWlsdGluL21lcmdlLmM6Mjc0IGJ1aWx0aW4vcHVsbC5jOjE4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTQ4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEzCittc2dpZCAicGF0aCIKK21zZ3N0ciAic8O2a3bDpGciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExNDMKK21zZ2lkICJjb3VsZCBub3QgcmVmcmVzaCBpbmRleCIKK21zZ3N0ciAia3VuZGUgaW50ZSB1cHBkYXRlcmEgaW5kZXhldCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTE1NyBidWlsdGluL2NsZWFuLmM6Nzg3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2NQorIywgYy1mb3JtYXQKK21zZ2lkICJCeWUuXG4iCittc2dzdHIgIkhlaiBkw6UuXG4iCisKKyM6IGFkZC1wYXRjaC5jOjMzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQyOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkvDtmEgw6RuZHJhdCBsw6RnZSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI5CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiS8O2YSBib3J0dGFnbmluZyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDMwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkvDtmEgc3R5Y2tldCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzcKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisic3RhZ2luZy4iCittc2dzdHIgIiIKKyJPbSBwYXRjaGVuIGthbiBhcHBsaWNlcmFzIHJlbnQga29tbWVyIGRldCByZWRpZ2VyYWRlIHN0eWNrZXQgYXR0IGvDtmFzICIKKyJvbWVkZWxiYXJ0LiIKKworIzogYWRkLXBhdGNoLmM6NDAKK21zZ2lkICIiCisieSAtIHN0YWdlIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFnZSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBrw7ZhIHN0eWNrZXRcbiIKKyJuIC0ga8O2YSBpbnRlIHN0eWNrZXRcbiIKKyJxIC0gYXZzbHV0YTsga8O2YSBpbnRlIHN0eWNrZXQgZWxsZXIgbsOlZ290IGF2IGRlIGbDtmxqYW5kZVxuIgorImEgLSBrw7ZhIHN0eWNrZXQgb2NoIGFsbGEgZsO2bGphbmRlIGkgZmlsZW5cbiIKKyJkIC0ga8O2YSBpbnRlIHN0eWNrZXQgZWxsZXIgbsOlZ290IGF2IGRlIGbDtmxqYW5kZSBpIGZpbGVuXG4iCisKKyM6IGFkZC1wYXRjaC5jOjU0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzMworIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3Rhc2ggbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIlN0YXNoOmEgw6RuZHJhdCBsw6RnZSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NTUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiU3Rhc2g6YSBib3J0dGFnbmluZyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NTYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIlN0YXNoOmEgc3R5Y2tldCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NTgKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisic3Rhc2hpbmcuIgorbXNnc3RyICIiCisiT20gcGF0Y2hlbiBrYW4gYXBwbGljZXJhcyByZW50IGtvbW1lciBkZXQgcmVkaWdlcmFkZSBzdHlja2V0IGF0dCBsw6RnZ2FzIHRpbGwgIgorImkgXCJzdGFzaFwiIG9tZWRlbGJhcnQuIgorCisjOiBhZGQtcGF0Y2guYzo2MQorbXNnaWQgIiIKKyJ5IC0gc3Rhc2ggdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCBzdGFzaCB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHN0YXNoIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHN0YXNoIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBzdGFzaCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIFwic3Rhc2hcIjphIHN0eWNrZXRcbiIKKyJuIC0gXCJzdGFzaFwiOmEgaW50ZSBzdHlja2V0XG4iCisicSAtIGF2c2x1dGE7IFwic3Rhc2hcIjphIGludGUgc3R5Y2tldCBlbGxlciBuw6Vnb3QgYXYgZGUgZsO2bGphbmRlXG4iCisiYSAtIFwic3Rhc2hcIjphIHN0eWNrZXQgb2NoIGFsbGEgZsO2bGphbmRlIGkgZmlsZW5cbiIKKyJkIC0gXCJzdGFzaFwiOmEgaW50ZSBzdHlja2V0IGVsbGVyIG7DpWdvdCBhdiBkZSBmw7ZsamFuZGUgaSBmaWxlblxuIgorCisjOiBhZGQtcGF0Y2guYzo3NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIlRhIGJvcnQgw6RuZHJhdCBsw6RnZSBmcsOlbiBrw7ZuIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo3OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzkKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIlRhIGJvcnQgYm9ydHRhZ25pbmcgZnLDpW4ga8O2biBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NzkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiVGEgYm9ydCBzdHlja2V0IGZyw6VuIGvDtm4gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjgxCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorInVuc3RhZ2luZy4iCittc2dzdHIgIiIKKyJPbSBwYXRjaGVuIGthbiBhcHBsaWNlcmFzIHJlbnQga29tbWVyIGRldCByZWRpZ2VyYWRlIHN0eWNrZXQgYXR0IHRhcyBib3J0ICIKKyJmcsOlbiBrw7ZuIG9tZWRlbGJhcnQuIgorCisjOiBhZGQtcGF0Y2guYzo4NAorbXNnaWQgIiIKKyJ5IC0gdW5zdGFnZSB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHVuc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSB0YSBib3J0IHN0eWNrZXQgZnLDpW4ga8O2blxuIgorIm4gLSB0YSBpbnRlIGJvcnQgc3R5Y2tldCBmcsOlbiBrw7ZuXG4iCisicSAtIGF2c2x1dGE7IHRhIGludGUgYm9ydCBzdHlja2V0IGVsbGVyIG7DpWdvdCBhdiBkZSBmw7ZsamFuZGUgZnLDpW4ga8O2blxuIgorImEgLSB0YSBib3J0IHN0eWNrZXQgb2NoIGFsbGEgZsO2bGphbmRlIGkgZmlsZW4gZnLDpW4ga8O2blxuIgorImQgLSB0YSBpbnRlIGJvcnQgc3R5Y2tldCBlbGxlciBuw6Vnb3QgYXYgZGUgZsO2bGphbmRlIGkgZmlsZW4gZnLDpW4ga8O2blxuIgorCisjOiBhZGQtcGF0Y2guYzo5OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDMKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJBcHBsaWNlcmEgw6RuZHJhdCBsw6RnZSBww6UgaW5kZXhldCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0NAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkFwcGxpY2VyYSBib3J0dGFnbmluZyBww6UgaW5kZXhldCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJBcHBsaWNlcmEgc3R5Y2tldCBww6UgaW5kZXhldCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAzIGFkZC1wYXRjaC5jOjE2OCBhZGQtcGF0Y2guYzoyMTEKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisiYXBwbHlpbmcuIgorbXNnc3RyICIiCisiT20gcGF0Y2hlbiBrYW4gYXBwbGljZXJhcyByZW50IGtvbW1lciBkZXQgcmVkaWdlcmFkZSBzdHlja2V0IGF0dCBtYXJrZXJhcyAiCisiZsO2ciBhcHBsaWNlcmluZyBvbWVkZWxiYXJ0LiIKKworIzogYWRkLXBhdGNoLmM6MTA2Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gYXBwbGljZXJhIHN0eWNrZXQgcMOlIGluZGV4ZXRcbiIKKyJuIC0gYXBwbGljZXJhIGludGUgc3R5Y2tldCBww6UgaW5kZXhldFxuIgorInEgLSBhdnNsdXRhOyBhcHBsaWNlcmEgaW50ZSBzdHlja2V0IGVsbGVyIG7DpWdvdCBhdiBkZSBmw7ZsamFuZGVcbiIKKyJhIC0gYXBwbGljZXJhIHN0eWNrZXQgb2NoIGFsbGEgZsO2bGphbmRlIGkgZmlsZW5cbiIKKyJkIC0gYXBwbGljZXJhIGludGUgc3R5Y2tldCBlbGxlciBuw6Vnb3QgYXYgZGUgZsO2bGphbmRlIGkgZmlsZW5cbiIKKworIzogYWRkLXBhdGNoLmM6MTIxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDYzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkthc3RhIMOkbmRyYXQgbMOkZ2UgZnLDpW4gYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiS2FzdGEgYm9ydHRhZ25pbmcgZnLDpW4gYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDUwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkthc3RhIHN0eWNrZXQgZnLDpW4gYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjUgYWRkLXBhdGNoLmM6MTQ3IGFkZC1wYXRjaC5jOjE5MAorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJkaXNjYXJkaW5nLiIKK21zZ3N0ciAiIgorIk9tIHBhdGNoZW4ga2FuIGFwcGxpY2VyYXMgcmVudCBrb21tZXIgZGV0IHJlZGlnZXJhZGUgc3R5Y2tldCBhdHQgbWFya2VyYXMgIgorImbDtnIga2FzdGEgb21lZGVsYmFydC4iCisKKyM6IGFkZC1wYXRjaC5jOjEyOCBhZGQtcGF0Y2guYzoxOTMKK21zZ2lkICIiCisieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gZGlzY2FyZCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIGbDtnJrYXN0YSBzdHlja2V0IGZyw6VuIGFyYmV0c2thdGFsb2dlblxuIgorIm4gLSBmw7Zya2FzdGEgaW50ZSBzdHlja2V0IGZyw6VuIGFyYmV0c2thdGFsb2dlblxuIgorInEgLSBhdnNsdXRhOyBmw7Zya2FzdGEgaW50ZSBzdHlja2V0IGVsbGVyIG7DpWdvdCBhdiBkZSBmw7ZsamFuZGVcbiIKKyJhIC0gZsO2cmthc3RhIHN0eWNrZXQgb2NoIGFsbGEgZsO2bGphbmRlIGkgZmlsZW5cbiIKKyJkIC0gZsO2cmthc3RhIGludGUgc3R5Y2tldCBlbGxlciBuw6Vnb3QgYXYgZGUgZsO2bGphbmRlIGkgZmlsZW5cbiIKKworIzogYWRkLXBhdGNoLmM6MTQzIGFkZC1wYXRjaC5jOjE4NiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTMKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkthc3RhIMOkbmRyYXQgbMOkZ2UgZnLDpW4gaW5kZXhldCBvY2ggYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNDQgYWRkLXBhdGNoLmM6MTg3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1NAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBkZWxldGlvbiBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiS2FzdGEgYm9ydHRhZ25pbmcgZnLDpW4gaW5kZXhldCBvY2ggYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNDUgYWRkLXBhdGNoLmM6MTg4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkthc3RhIHN0eWNrZXQgZnLDpW4gaW5kZXhldCBvY2ggYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNTAKK21zZ2lkICIiCisieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gZsO2cmthc3RhIHN0eWNrZXQgZnLDpW4gaW5kZXhldCBvY2ggYXJiZXRza2F0YWxvZ2VuXG4iCisibiAtIGbDtnJrYXN0YSBpbnRlIHN0eWNrZXQgZnLDpW4gaW5kZXhldCBvY2ggYXJiZXRza2F0YWxvZ2VuXG4iCisicSAtIGF2c2x1dGE7IGbDtnJrYXN0YSBpbnRlIHN0eWNrZXQgZWxsZXIgbsOlZ290IGF2IGRlIGbDtmxqYW5kZVxuIgorImEgLSBmw7Zya2FzdGEgc3R5Y2tldCBvY2ggYWxsYSBmw7ZsamFuZGUgaSBmaWxlblxuIgorImQgLSBmw7Zya2FzdGEgaW50ZSBzdHlja2V0IGVsbGVyIG7DpWdvdCBhdiBkZSBmw7ZsamFuZGUgaSBmaWxlblxuIgorCisjOiBhZGQtcGF0Y2guYzoxNjQgYWRkLXBhdGNoLmM6MjA3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1OAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJBcHBsaWNlcmEgw6RuZHJhdCBsw6RnZSBww6UgaW5kZXhldCBvY2ggYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNjUgYWRkLXBhdGNoLmM6MjA4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1OQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJBcHBsaWNlcmEgYm9ydHRhZ25pbmcgcMOlIGluZGV4ZXQgb2NoIGFyYmV0c2thdGFsb2dlbiBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTY2IGFkZC1wYXRjaC5jOjIwOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkFwcGxpY2VyYSBzdHlja2V0IHDDpSBpbmRleGV0IG9jaCBhcmJldHNrYXRhbG9nZW4gW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE3MQorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gYXBwbGljZXJhIHN0eWNrZXQgcMOlIGluZGV4ZXQgb2NoIGFyYmV0c2thdGFsb2dlblxuIgorIm4gLSBhcHBsaWNlcmEgaW50ZSBzdHlja2V0IHDDpSBpbmRleGV0IG9jaCBhcmJldHNrYXRhbG9nZW5cbiIKKyJxIC0gYXZzbHV0YTsgYXBwbGljZXJhIGludGUgc3R5Y2tldCBlbGxlciBuw6Vnb3QgYXYgZGUgZsO2bGphbmRlXG4iCisiYSAtIGFwcGxpY2VyYSBzdHlja2V0IG9jaCBhbGxhIGbDtmxqYW5kZSBpIGZpbGVuXG4iCisiZCAtIGFwcGxpY2VyYSBpbnRlIHN0eWNrZXQgZWxsZXIgbsOlZ290IGF2IGRlIGbDtmxqYW5kZSBpIGZpbGVuXG4iCisKKyM6IGFkZC1wYXRjaC5jOjIxNAorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIGFwcGxpY2VyYSBzdHlja2V0IHDDpSBhcmJldHNrYXRhbG9nZW5cbiIKKyJuIC0gYXBwbGljZXJhIGludGUgc3R5Y2tldCBww6UgYXJiZXRza2F0YWxvZ2VuXG4iCisicSAtIGF2c2x1dGE7IGFwcGxpY2VyYSBpbnRlIHN0eWNrZXQgZWxsZXIgbsOlZ290IGF2IGRlIGbDtmxqYW5kZVxuIgorImEgLSBhcHBsaWNlcmEgc3R5Y2tldCBvY2ggYWxsYSBmw7ZsamFuZGUgaSBmaWxlblxuIgorImQgLSBhcHBsaWNlcmEgaW50ZSBzdHlja2V0IGVsbGVyIG7DpWdvdCBhdiBkZSBmw7ZsamFuZGUgaSBmaWxlblxuIgorCisjOiBhZGQtcGF0Y2guYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGh1bmsgaGVhZGVyICclLipzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSBzdHlja2VodXZ1ZGV0IFwiJS4qc1wiIgorCisjOiBhZGQtcGF0Y2guYzozMzcgYWRkLXBhdGNoLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb2xvcmVkIGh1bmsgaGVhZGVyICclLipzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSBmw6RyZ2F0IHN0eWNrZWh1dnVkIFwiJS4qc1wiIgorCisjOiBhZGQtcGF0Y2guYzozOTUKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgZGlmZiIKK21zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSBkaWZmIgorCisjOiBhZGQtcGF0Y2guYzo0MTQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29sb3JlZCBkaWZmIgorbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthIGbDpHJnYWQgZGlmZiIKKworIzogYWRkLXBhdGNoLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBydW4gJyVzJyIKK21zZ3N0ciAibWlzc2x5Y2thZGVzIGF0dCBrw7ZyYSBcIiVzXCIiCisKKyM6IGFkZC1wYXRjaC5jOjU4NworbXNnaWQgIm1pc21hdGNoZWQgb3V0cHV0IGZyb20gaW50ZXJhY3RpdmUuZGlmZkZpbHRlciIKK21zZ3N0ciAib21ha2EgdXRkYXRhIGZyw6VuIGludGVyYWN0aXZlLmRpZmZGaWx0ZXIiCisKKyM6IGFkZC1wYXRjaC5jOjU4OAorbXNnaWQgIiIKKyJZb3VyIGZpbHRlciBtdXN0IG1haW50YWluIGEgb25lLXRvLW9uZSBjb3JyZXNwb25kZW5jZVxuIgorImJldHdlZW4gaXRzIGlucHV0IGFuZCBvdXRwdXQgbGluZXMuIgorbXNnc3RyICIiCisiQWxsYSByYWRlciBpIGluZGF0YSBtw6VzdGUgaGEgZW4gbW90c3ZhcmFuZGUgcmFkIGkgdXRkYXRhIGZyw6VuXG4iCisiZGl0dCBmaWx0ZXIuIgorCisjOiBhZGQtcGF0Y2guYzo3NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4cGVjdGVkIGNvbnRleHQgbGluZSAjJWQgaW5cbiIKKyIlLipzIgorbXNnc3RyICIiCisiZsO2cnbDpG50YWRlIHNhbW1hbmhhbmdzcmFkICVkIGlcbiIKKyIlLipzIgorCisjOiBhZGQtcGF0Y2guYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImh1bmtzIGRvIG5vdCBvdmVybGFwOlxuIgorIiUuKnNcbiIKKyJcdGRvZXMgbm90IGVuZCB3aXRoOlxuIgorIiUuKnMiCittc2dzdHIgIiIKKyJzdHlja2VuIMO2dmVybGFwcGFyIGludGU6XG4iCisiJS4qc1xuIgorIlx0YXZzbHV0YXMgaW50ZSBtZWQ6XG4iCisiJS4qcyIKKworIzogYWRkLXBhdGNoLmM6MTA1MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTIKK21zZ2lkICJNYW51YWwgaHVuayBlZGl0IG1vZGUgLS0gc2VlIGJvdHRvbSBmb3IgYSBxdWljayBndWlkZS5cbiIKK21zZ3N0ciAiTWFudWVsbHQgc3R5Y2tlcmVkaWdlcmluZ3Nsw6RnZSAtLSBzZSBuZWRlcnN0IGbDtnIgc25hYmJndWlkZS5cbiIKKworIzogYWRkLXBhdGNoLmM6MTA1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0tXG4iCisiVG8gcmVtb3ZlICclYycgbGluZXMsIG1ha2UgdGhlbSAnICcgbGluZXMgKGNvbnRleHQpLlxuIgorIlRvIHJlbW92ZSAnJWMnIGxpbmVzLCBkZWxldGUgdGhlbS5cbiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICVjIHdpbGwgYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorIi0tLVxuIgorIlRhIGJvcnQgXCIlY1wiIHJhZGVyIGdlbm9tIGF0dCBnw7ZyYSBkZW0gXCIgXCItcmFkZXIgKHNhbW1hbmhhbmcpLlxuIgorIlRhIGJvcnQgXCIlY1wiIHJhZGVyIGdlbm9tIGF0dCByYWRlcmEgZGVtLlxuIgorIlJhZGVyIHNvbSBiw7ZyamFyIG1lZCAlYyBrb21tZXIgYXR0IHRhcyBib3J0LlxuIgorCisjLiBUUkFOU0xBVE9SUzogJ2l0JyByZWZlcnMgdG8gdGhlIHBhdGNoIG1lbnRpb25lZCBpbiB0aGUgcHJldmlvdXMgbWVzc2FnZXMuCisjOiBhZGQtcGF0Y2guYzoxMDcwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTEyNgorbXNnaWQgIiIKKyJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSBnaXZlbiBhbiBvcHBvcnR1bml0eSB0b1xuIgorImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlIHJlbW92ZWQsIHRoZW4gdGhlIGVkaXQgaXNcbiIKKyJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIKK21zZ3N0ciAiIgorIk9tIHBhdGNoZW4gaW50ZSBrYW4gYXBwbGljZXJhcyByZW50IGtvbW1lciBkdSBmw6UgZW4gbcO2amxpZ2hldCBhdHRcbiIKKyJyZWRpZ2VyYSBkZW4gaWdlbi4gT20gYWxsYSByYWRlciBpIGV0dCBzdHlja2UgdGFzIGJvcnQgYXZicnl0c1xuIgorInJlZGlnZXJpbmdlbiBvY2ggc3R5Y2tldCBsw6RtbmFzIG9mw7Zyw6RuZHJhdC5cbiIKKworIzogYWRkLXBhdGNoLmM6MTEwMworbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciIKK21zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSBzdHlja2VodXZ1ZCIKKworIzogYWRkLXBhdGNoLmM6MTE0OAorbXNnaWQgIidnaXQgYXBwbHkgLS1jYWNoZWQnIGZhaWxlZCIKK21zZ3N0ciAiXCJnaXQgYXBwbHkgLS1jYWNoZWRcIiBtaXNzbHlja2FkZXMiCisKKyMuIFRSQU5TTEFUT1JTOiBkbyBub3QgdHJhbnNsYXRlIFt5L25dCisjLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IHRoYXQgaW5wdXQgYXQgdGhpcyBwb2ludC4KKyMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCisjLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgorIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCisjLgorIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KKyMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dAorIy4gYXQgdGhpcyBwb2ludC4KKyMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCisjLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgorIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCisjOiBhZGQtcGF0Y2guYzoxMjE4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIzOQorbXNnaWQgIiIKKyJZb3VyIGVkaXRlZCBodW5rIGRvZXMgbm90IGFwcGx5LiBFZGl0IGFnYWluIChzYXlpbmcgXCJub1wiIGRpc2NhcmRzISkgW3kvbl0/ICIKK21zZ3N0ciAiIgorIkRpdHQgcmVkaWdlcmFkZSBzdHlja2Uga2FuIGludGUgYXBwbGljZXJhcy4gUmVkaWdlcmEgaWdlbiAoXCJuZWpcIiBrYXN0YXIhKSAiCisiW3kvbl0/ICIKKworIzogYWRkLXBhdGNoLmM6MTI2MQorbXNnaWQgIlRoZSBzZWxlY3RlZCBodW5rcyBkbyBub3QgYXBwbHkgdG8gdGhlIGluZGV4ISIKK21zZ3N0ciAiTWFya2VyYWRlIHN0eWNrZW4ga2FuIGludGUgYXBwbGljZXJhcyBww6UgaW5kZXhldCEiCisKKyM6IGFkZC1wYXRjaC5jOjEyNjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQzCittc2dpZCAiQXBwbHkgdGhlbSB0byB0aGUgd29ya3RyZWUgYW55d2F5PyAiCittc2dzdHIgIkFwcGxpY2VyYSBkZW0gcMOlIGFyYmV0c2thdGFsb2dlbiB0cm90cyBkZXQ/ICIKKworIzogYWRkLXBhdGNoLmM6MTI2OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDYKK21zZ2lkICJOb3RoaW5nIHdhcyBhcHBsaWVkLlxuIgorbXNnc3RyICJJbmdlbnRpbmcgYXBwbGljZXJhZGVzLlxuIgorCisjOiBhZGQtcGF0Y2guYzoxMzI2Cittc2dpZCAiIgorImogLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgbmV4dCB1bmRlY2lkZWQgaHVua1xuIgorIkogLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgbmV4dCBodW5rXG4iCisiayAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBwcmV2aW91cyB1bmRlY2lkZWQgaHVua1xuIgorIksgLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgcHJldmlvdXMgaHVua1xuIgorImcgLSBzZWxlY3QgYSBodW5rIHRvIGdvIHRvXG4iCisiLyAtIHNlYXJjaCBmb3IgYSBodW5rIG1hdGNoaW5nIHRoZSBnaXZlbiByZWdleFxuIgorInMgLSBzcGxpdCB0aGUgY3VycmVudCBodW5rIGludG8gc21hbGxlciBodW5rc1xuIgorImUgLSBtYW51YWxseSBlZGl0IHRoZSBjdXJyZW50IGh1bmtcbiIKKyI/IC0gcHJpbnQgaGVscFxuIgorbXNnc3RyICIiCisiaiAtIGzDpG1uYSBzdHlja2V0IG9iZXN0w6RtdCwgc2UgbsOkc3RhIG9iZXN0w6RtZGEgc3R5Y2tlXG4iCisiSiAtIGzDpG1uYSBzdHlja2V0IG9iZXN0w6RtdCwgc2UgbsOkc3RhIHN0eWNrZVxuIgorImsgLSBsw6RtbmEgc3R5Y2tldCBvYmVzdMOkbXQsIHNlIGbDtnJlZ8OlZW5kZSBvYmVzdMOkbWRhIHN0eWNrZVxuIgorIksgLSBsw6RtbmEgc3R5Y2tldCBvYmVzdMOkbXQsIHNlIGbDtnJlZ8OlZW5kZSBzdHlja2VcbiIKKyJnIC0gdsOkbGogZXR0IHN0eWNrZSBhdHQgZ8OlIHRpbGxcbiIKKyIvIC0gc8O2ayBlZnRlciBzdHlja2Ugc29tIG1vdHN2YXJhciBhbmdpdmV0IHJlZ3VsasOkcnQgdXR0cnlja1xuIgorInMgLSBkZWxhIGFrdHVlbGx0IHN0eWNrZSBpIG1pbmRyZSBzdHlja2Vuc1xuIgorImUgLSByZWRpZ2VyYSBha3R1ZWxsdCBzdHlja2UgbWFudWVsbHRcbiIKKyI/IC0gdmlzYSBoasOkbHBcbiIKKworIzogYWRkLXBhdGNoLmM6MTQ0NyBhZGQtcGF0Y2guYzoxNDU3Cittc2dpZCAiTm8gcHJldmlvdXMgaHVuayIKK21zZ3N0ciAiSW5nZXQgZsO2cmVnw6VlbmRlIHN0eWNrZSIKKworIzogYWRkLXBhdGNoLmM6MTQ1MiBhZGQtcGF0Y2guYzoxNDYyCittc2dpZCAiTm8gbmV4dCBodW5rIgorbXNnc3RyICJJbmdldCBmw7ZsamFuZGUgc3R5Y2tlIgorCisjOiBhZGQtcGF0Y2guYzoxNDY4Cittc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gZ290byIKK21zZ3N0ciAiSW5nYSBhbmRyYSBzdHlja2VuIGF0dCBnw6UgdGlsbCIKKworIzogYWRkLXBhdGNoLmM6MTQ3OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzcKK21zZ2lkICJnbyB0byB3aGljaCBodW5rICg8cmV0PiB0byBzZWUgbW9yZSk/ICIKK21zZ3N0ciAiZ8OlIHRpbGwgdmlsa2V0IHN0eWNrZSAoPHJldD4gZsO2ciBhdHQgc2UgZmxlcik/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ4MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzkKK21zZ2lkICJnbyB0byB3aGljaCBodW5rPyAiCittc2dzdHIgImfDpSB0aWxsIHZpbGtldCBzdHlja2U/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ5MQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIG51bWJlcjogJyVzJyIKK21zZ3N0ciAiT2dpbHRpZ3Qgc2lmZmVydsOkcmRlOiBcIiVzXCIiCisKKyM6IGFkZC1wYXRjaC5jOjE0OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiU29ycnksIG9ubHkgJWQgaHVuayBhdmFpbGFibGUuIgorbXNnaWRfcGx1cmFsICJTb3JyeSwgb25seSAlZCBodW5rcyBhdmFpbGFibGUuIgorbXNnc3RyWzBdICJCZWtsYWdhciwgZGV0IGZpbm5zIGJhcmEgJWQgc3R5Y2tlLiIKK21zZ3N0clsxXSAiQmVrbGFnYXIsIGRldCBmaW5ucyBiYXJhICVkIHN0eWNrZW4uIgorCisjOiBhZGQtcGF0Y2guYzoxNTA1Cittc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gc2VhcmNoIgorbXNnc3RyICJJbmdhIGFuZHJhIHN0eWNrZW4gYXR0IHPDtmthIGVmdGVyIgorCisjOiBhZGQtcGF0Y2guYzoxNTExIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYyMworbXNnaWQgInNlYXJjaCBmb3IgcmVnZXg/ICIKK21zZ3N0ciAic8O2ayBlZnRlciByZWd1bGrDpHJ0IHV0dHJ5Y2s/ICIKKworIzogYWRkLXBhdGNoLmM6MTUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJNYWxmb3JtZWQgc2VhcmNoIHJlZ2V4cCAlczogJXMiCittc2dzdHIgIkZlbGFrdGlndCBmb3JtYXQgcMOlIHJlZ3VsasOkcnQgc8O2a3V0dHJ5Y2sgJXM6ICVzIgorCisjOiBhZGQtcGF0Y2guYzoxNTQzCittc2dpZCAiTm8gaHVuayBtYXRjaGVzIHRoZSBnaXZlbiBwYXR0ZXJuIgorbXNnc3RyICJJbmdhIHN0eWNrZW4gbW90c3ZhcmFyIGdpdmV0IG3Dtm5zdGVyIgorCisjOiBhZGQtcGF0Y2guYzoxNTUwCittc2dpZCAiU29ycnksIGNhbm5vdCBzcGxpdCB0aGlzIGh1bmsiCittc2dzdHIgIkJla2xhZ2FyLCBrYW4gaW50ZSBkZWxhIHN0eWNrZXQiCisKKyM6IGFkZC1wYXRjaC5jOjE1NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3BsaXQgaW50byAlZCBodW5rcy4iCittc2dzdHIgIkRlbGEgaSAlZCBzdHlja2VuLiIKKworIzogYWRkLXBhdGNoLmM6MTU1OAorbXNnaWQgIlNvcnJ5LCBjYW5ub3QgZWRpdCB0aGlzIGh1bmsiCittc2dzdHIgIkJla2xhZ2FyLCBrYW4gaW50ZSByZWRpZ2VyYSBzdHlja2V0IgorCisjOiBhZGQtcGF0Y2guYzoxNjA5Cittc2dpZCAiJ2dpdCBhcHBseScgZmFpbGVkIgorbXNnc3RyICJcImdpdCBhcHBseVwiIG1pc3NseWNrYWRlcyIKKworIzogYWR2aWNlLmM6MTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzaGludDogJS4qcyVzXG4iCiBtc2dzdHIgIiVzdGlwczogJS4qcyVzXG4iCiAKLSM6IGFkdmljZS5jOjE1MgorIzogYWR2aWNlLmM6MTY4CiBtc2dpZCAiQ2hlcnJ5LXBpY2tpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICIiCiAiRHUga2FuIGludGUgdXRmw7ZyYSBlbiBjaGVycnktcGljayBlZnRlcnNvbSBkdSBoYXIgZmlsZXIgc29tIGludGUgc2xhZ2l0cyAiCiAic2FtbWFuLiIKIAotIzogYWR2aWNlLmM6MTU0CisjOiBhZHZpY2UuYzoxNzAKIG1zZ2lkICJDb21taXR0aW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiIgogIkR1IGthbiBpbnRlIHV0ZsO2cmEgZW4gaW5jaGVja25pbmcgZWZ0ZXJzb20gZHUgaGFyIGZpbGVyIHNvbSBpbnRlIHNsYWdpdHMgIgogInNhbW1hbi4iCiAKLSM6IGFkdmljZS5jOjE1NgorIzogYWR2aWNlLmM6MTcyCiBtc2dpZCAiTWVyZ2luZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgIiIKICJEdSBrYW4gaW50ZSB1dGbDtnJhIGVuIHNhbW1hbnNsYWduaW5nIGVmdGVyc29tIGR1IGhhciBmaWxlciBzb20gaW50ZSBzbGFnaXRzICIKICJzYW1tYW4uIgogCi0jOiBhZHZpY2UuYzoxNTgKKyM6IGFkdmljZS5jOjE3NAogbXNnaWQgIlB1bGxpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICIiCiAiRHUga2FuIGludGUgdXRmw7ZyYSBlbiBcInB1bGxcIiBlZnRlcnNvbSBkdSBoYXIgZmlsZXIgc29tIGludGUgc2xhZ2l0cyBzYW1tYW4uIgogCi0jOiBhZHZpY2UuYzoxNjAKKyM6IGFkdmljZS5jOjE3NgogbXNnaWQgIlJldmVydGluZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgIiIKICJEdSBrYW4gaW50ZSB1dGbDtnJhIGVuIFwicmV2ZXJ0XCIgZWZ0ZXJzb20gZHUgaGFyIGZpbGVyIHNvbSBpbnRlIHNsYWdpdHMgIgogInNhbW1hbi4iCiAKLSM6IGFkdmljZS5jOjE2MgorIzogYWR2aWNlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkl0IGlzIG5vdCBwb3NzaWJsZSB0byAlcyBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiIgogIkR1IGthbiBpbnRlIHV0ZsO2cmEgZW4gXCIlc1wiIGVmdGVyc29tIGR1IGhhciBmaWxlciBzb20gaW50ZSBzbGFnaXRzIHNhbW1hbi4iCiAKLSM6IGFkdmljZS5jOjE3MAorIzogYWR2aWNlLmM6MTg2CiBtc2dpZCAiIgogIkZpeCB0aGVtIHVwIGluIHRoZSB3b3JrIHRyZWUsIGFuZCB0aGVuIHVzZSAnZ2l0IGFkZC9ybSA8ZmlsZT4nXG4iCiAiYXMgYXBwcm9wcmlhdGUgdG8gbWFyayByZXNvbHV0aW9uIGFuZCBtYWtlIGEgY29tbWl0LiIKQEAgLTY2LDEzNyArNzQ4LDE0OSBAQAogIlLDpHR0YSBkZW0gaSBkaW4gYXJiZXRza2F0YWxvZyBvY2ggYW52w6RuZCBzZWRhbiBcImdpdCBhZGQvcm0gPGZpbD5cIlxuIgogInNvbSBsw6RtcGxpZ3QgZsO2ciBhdHQgYW5nZSBsw7ZzbmluZyBvY2ggY2hlY2thIGluLiIKIAotIzogYWR2aWNlLmM6MTc4CisjOiBhZHZpY2UuYzoxOTQKIG1zZ2lkICJFeGl0aW5nIGJlY2F1c2Ugb2YgYW4gdW5yZXNvbHZlZCBjb25mbGljdC4iCiBtc2dzdHIgIkF2c2x1dGFyIHDDpSBncnVuZCBhdiBvbMO2c3Qga29uZmxpa2d0LiIKIAotIzogYWR2aWNlLmM6MTgzIGJ1aWx0aW4vbWVyZ2UuYzoxMjg5CisjOiBhZHZpY2UuYzoxOTkgYnVpbHRpbi9tZXJnZS5jOjEzMzUKIG1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS4iCiBtc2dzdHIgIkR1IGhhciBpbnRlIGF2c2x1dGF0IHNhbW1hbnNsYWduaW5nZW4gKE1FUkdFX0hFQUQgZmlubnMpLiIKIAotIzogYWR2aWNlLmM6MTg1CisjOiBhZHZpY2UuYzoyMDEKIG1zZ2lkICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIG1lcmdpbmcuIgogbXNnc3RyICJDaGVja2EgaW4gZGluYSDDpG5kcmluZ2FyIGlubmFuIGR1IHV0ZsO2ciBzYW1tYW5zbGFnbmluZ2VuLiIKIAotIzogYWR2aWNlLmM6MTg2CisjOiBhZHZpY2UuYzoyMDIKIG1zZ2lkICJFeGl0aW5nIGJlY2F1c2Ugb2YgdW5maW5pc2hlZCBtZXJnZS4iCiBtc2dzdHIgIkF2c2x1dGFyIHDDpSBncnVuZCBhdiBvZnVsbGJvcmRhZCBzYW1tYW5zbGFnbmluZy4iCiAKLSM6IGFkdmljZS5jOjE5MgorIzogYWR2aWNlLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKLSJOb3RlOiBjaGVja2luZyBvdXQgJyVzJy5cbiIKKyJOb3RlOiBzd2l0Y2hpbmcgdG8gJyVzJy5cbiIKICJcbiIKICJZb3UgYXJlIGluICdkZXRhY2hlZCBIRUFEJyBzdGF0ZS4gWW91IGNhbiBsb29rIGFyb3VuZCwgbWFrZSBleHBlcmltZW50YWxcbiIKICJjaGFuZ2VzIGFuZCBjb21taXQgdGhlbSwgYW5kIHlvdSBjYW4gZGlzY2FyZCBhbnkgY29tbWl0cyB5b3UgbWFrZSBpbiB0aGlzXG4iCi0ic3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHBlcmZvcm1pbmcgYW5vdGhlciBjaGVja291dC5cbiIKKyJzdGF0ZSB3aXRob3V0IGltcGFjdGluZyBhbnkgYnJhbmNoZXMgYnkgc3dpdGNoaW5nIGJhY2sgdG8gYSBicmFuY2guXG4iCiAiXG4iCiAiSWYgeW91IHdhbnQgdG8gY3JlYXRlIGEgbmV3IGJyYW5jaCB0byByZXRhaW4gY29tbWl0cyB5b3UgY3JlYXRlLCB5b3UgbWF5XG4iCi0iZG8gc28gKG5vdyBvciBsYXRlcikgYnkgdXNpbmcgLWIgd2l0aCB0aGUgY2hlY2tvdXQgY29tbWFuZCBhZ2Fpbi4gRXhhbXBsZTpcbiIKKyJkbyBzbyAobm93IG9yIGxhdGVyKSBieSB1c2luZyAtYyB3aXRoIHRoZSBzd2l0Y2ggY29tbWFuZC4gRXhhbXBsZTpcbiIKICJcbiIKLSIgIGdpdCBjaGVja291dCAtYiA8bmV3LWJyYW5jaC1uYW1lPlxuIgorIiAgZ2l0IHN3aXRjaCAtYyA8bmV3LWJyYW5jaC1uYW1lPlxuIgorIlxuIgorIk9yIHVuZG8gdGhpcyBvcGVyYXRpb24gd2l0aDpcbiIKKyJcbiIKKyIgIGdpdCBzd2l0Y2ggLVxuIgorIlxuIgorIlR1cm4gb2ZmIHRoaXMgYWR2aWNlIGJ5IHNldHRpbmcgY29uZmlnIHZhcmlhYmxlIGFkdmljZS5kZXRhY2hlZEhlYWQgdG8gIgorImZhbHNlXG4iCiAiXG4iCiBtc2dzdHIgIiIKICJPYnNlcnZlcmE6IGNoZWNrYXIgdXQgXCIlc1wiLlxuIgogIlxuIgogIkR1IGhhciBudSBldHQgXCJmcsOlbmtvcHBsYXQgSEVBRFwiLiBEdSBrYW4gc2UgZGlnIG9ta3JpbmcsIGV4cGVyaW1lbnRlcmFcbiIKICJtZWQgw6RuZHJpbmdhciBvY2ggY2hlY2thIGluIGRlbSwgb2NoIGR1IGthbiBrYXN0YSBpbmNoZWNrbmluZ2FyIGR1IGfDtnJcbiIKLSJpIGRldCBow6RyIGzDpGdldCB1dGFuIGF0dCBkZXQgcMOldmVya2FyIGdyZW5hciBnZW5vbSBhdHQgY2hlY2thIHV0IHDDpVxuIgotIm55dHQuXG4iCisiaSBkZXQgaMOkciBsw6RnZXQgdXRhbiBhdHQgZGV0IHDDpXZlcmthciBncmVuYXIgZ2Vub20gYXR0IHbDpHhsYSB0aWxsYmFrYVxuIgorInRpbGwgZW4gZ3Jlbi5cbiIKICJcbiIKICJPbSBkdSB2aWxsIHNrYXBhIGVuIG55IGdyZW4gZsO2ciBhdHQgYmVow6VsbGEgw6RuZHJpbmdhcm5hIGR1IHNrYXBhciwga2FuXG4iCi0iZHUgZ8O2cmEgZGV0IChudSBlbGxlciBzZW5hcmUpIGdlbm9tIGF0dCBhbnbDpG5kYSBjaGVja291dC1rb21tYW5kb3QgaWdlblxuIgotIm1lZCAtYi4gVGlsbCBleGVtcGVsOlxuIgorImR1IGfDtnJhIGRldCAobnUgZWxsZXIgc2VuYXJlKSBnZW5vbSBhdHQgYW52w6RuZGEgc3dpdGNoLWtvbW1hbmRvdCBtZWQgLWMuXG4iCisiRXhlbXBlbDpcbiIKICJcbiIKLSIgIGdpdCBjaGVja291dCAtYiA8bmFtbi1ww6UtbnktZ3Jlbj5cbiIKKyIgIGdpdCBzd2l0Y2ggLWMgPG5hbW4tcMOlLW55LWdyZW4+XG4iCisiXG4iCisiRWxsZXIgZ8O2ciBkZW4gaMOkciDDpG5kcmluZ2VuIG9nam9yZCBtZWQ6XG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1cbiIKKyJcbiIKKyJTdMOkbmcgYXYgZGVuIGjDpHIgaGrDpGxwdGV4dGVuIGdlbm9tIGF0dCBzw6R0dGEga29uZmlndXJhdGlvbnN2YXJpYWJlbG5cbiIKKyJhZHZpY2UuZGV0YWNoZWRIZWFkIHRpbGwgZmFsc2VcbiIKICJcbiIKIAotIzogYXBwbHkuYzo1OQorIzogYWxpYXMuYzo1MAorbXNnaWQgImNtZGxpbmUgZW5kcyB3aXRoIFxcIgorbXNnc3RyICJrb21tYW5kb3JhZCBhdnNsdXRhcyBtZWQgXFwiCisKKyM6IGFsaWFzLmM6NTEKK21zZ2lkICJ1bmNsb3NlZCBxdW90ZSIKK21zZ3N0ciAiY2l0YXQgZWogc3TDpG5ndCIKKworIzogYXBwbHkuYzo2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgd2hpdGVzcGFjZSBvcHRpb24gJyVzJyIKIG1zZ3N0ciAib2vDpG50IGFsdGVybmF0aXYgZsO2ciB3aGl0ZXNwYWNlOiBcIiVzXCIiCiAKLSM6IGFwcGx5LmM6NzUKKyM6IGFwcGx5LmM6ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2UgaWdub3JlIG9wdGlvbiAnJXMnIgogbXNnc3RyICJva8OkbnQgYWx0ZXJuYXRpdiBmw7ZyIGlnbm9yZS13aGl0ZXNwYWNlOiBcIiVzXCIiCiAKLSM6IGFwcGx5LmM6MTI1CisjOiBhcHBseS5jOjEzNQogbXNnaWQgIi0tcmVqZWN0IGFuZCAtLTN3YXkgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuIgogbXNnc3RyICItLXJlamVjdCBvY2ggLS0zd2F5IGthbiBpbnRlIGFudsOkbmRhcyBzYW10aWRpZ3QuIgogCi0jOiBhcHBseS5jOjEyNworIzogYXBwbHkuYzoxMzcKIG1zZ2lkICItLWNhY2hlZCBhbmQgLS0zd2F5IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyLiIKIG1zZ3N0ciAiLS1jYWNoZWQgb2NoIC0tM3dheSBrYW4gaW50ZSBhbnbDpG5kYXMgc2FtdGlkaWd0LiIKIAotIzogYXBwbHkuYzoxMzAKKyM6IGFwcGx5LmM6MTQwCiBtc2dpZCAiLS0zd2F5IG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICItLTN3YXkgdXRhbmbDtnIgYXJraXYiCiAKLSM6IGFwcGx5LmM6MTQxCisjOiBhcHBseS5jOjE1MQogbXNnaWQgIi0taW5kZXggb3V0c2lkZSBhIHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0taW5kZXggdXRhbmbDtnIgYXJraXYiCiAKLSM6IGFwcGx5LmM6MTQ0CisjOiBhcHBseS5jOjE1NAogbXNnaWQgIi0tY2FjaGVkIG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICItLWNhY2hlZCB1dGFuZsO2ciBhcmtpdiIKIAotIzogYXBwbHkuYzo4MjYKKyM6IGFwcGx5LmM6ODAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBwcmVwYXJlIHRpbWVzdGFtcCByZWdleHAgJXMiCiBtc2dzdHIgIkthbiBpbnRlIGbDtnJiZXJlZGEgcmVndWxqw6RydCB1dHRyeWNrIGbDtnIgdGlkc3N0w6RtcGVsbiAlcyIKIAotIzogYXBwbHkuYzo4MzUKKyM6IGFwcGx5LmM6ODEwCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZ2V4ZWMgcmV0dXJuZWQgJWQgZm9yIGlucHV0OiAlcyIKIG1zZ3N0ciAicmVnZXhlYyByZXR1cm5lcmFkZSAlZCBmw7ZyIGluZGF0YTogJXMiCiAKLSM6IGFwcGx5LmM6OTA5CisjOiBhcHBseS5jOjg4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZmluZCBmaWxlbmFtZSBpbiBwYXRjaCBhdCBsaW5lICVkIgogbXNnc3RyICJrYW4gaW50ZSBoaXR0YSBmaWxuYW1uIGkgcGF0Y2hlbiBww6UgcmFkICVkIgogCi0jOiBhcHBseS5jOjk0NworIzogYXBwbHkuYzo5MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwsIGdvdCAlcyBvbiBsaW5lICVkIgogbXNnc3RyICJnaXQgYXBwbHk6IGTDpWxpZyBnaXQtZGlmZiAtIGbDtnJ2w6RudGFkZSAvZGV2L251bGwsIGZpY2sgJXMgcMOlIHJhZCAlZCIKIAotIzogYXBwbHkuYzo5NTMKKyM6IGFwcGx5LmM6OTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gaW5jb25zaXN0ZW50IG5ldyBmaWxlbmFtZSBvbiBsaW5lICVkIgogbXNnc3RyICJnaXQgYXBwbHk6IGTDpWxpZyBnaXQtZGlmZiAtIG1vdHPDpGdhbmRlIG55dHQgZmlsbmFtbiBww6UgcmFkICVkIgogCi0jOiBhcHBseS5jOjk1NAorIzogYXBwbHkuYzo5MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBpbmNvbnNpc3RlbnQgb2xkIGZpbGVuYW1lIG9uIGxpbmUgJWQiCiBtc2dzdHIgImdpdCBhcHBseTogZMOlbGlnIGdpdC1kaWZmIC0gbW90c8OkZ2FuZGUgZ2FtbWFsdCBmaWxuYW1uIHDDpSByYWQgJWQiCiAKLSM6IGFwcGx5LmM6OTU5CisjOiBhcHBseS5jOjkzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGV4cGVjdGVkIC9kZXYvbnVsbCBvbiBsaW5lICVkIgogbXNnc3RyICJnaXQgYXBwbHk6IGTDpWxpZyBnaXQtZGlmZiAtIGbDtnJ2w6RudGFkZSAvZGV2L251bGwgcMOlIHJhZCAlZCIKIAotIzogYXBwbHkuYzo5ODgKKyM6IGFwcGx5LmM6OTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbW9kZSBvbiBsaW5lICVkOiAlcyIKIG1zZ3N0ciAib2dpbHRpZ3QgbMOkZ2UgcMOlIHJhZCAlZDogJXMiCiAKLSM6IGFwcGx5LmM6MTMwNworIzogYXBwbHkuYzoxMjgyCiAjLCBjLWZvcm1hdAogbXNnaWQgImluY29uc2lzdGVudCBoZWFkZXIgbGluZXMgJWQgYW5kICVkIgogbXNnc3RyICJodXZ1ZGV0IMOkciBpbmtvbnNla3ZlbnQgbWVsbGFuIHJhZCAlZCBvY2ggJWQiCiAKLSM6IGFwcGx5LmM6MTQ3OQotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWNvdW50OiB1bmV4cGVjdGVkIGxpbmU6ICUuKnMiCi1tc2dzdHIgInJlY291bnQ6IGbDtnJ2w6RudGFkZSByYWQ6ICUuKnMiCi0KLSM6IGFwcGx5LmM6MTU0OAotIywgYy1mb3JtYXQKLW1zZ2lkICJwYXRjaCBmcmFnbWVudCB3aXRob3V0IGhlYWRlciBhdCBsaW5lICVkOiAlLipzIgotbXNnc3RyICJwYXRjaC1mcmFnbWVudCB1dGFuIGh1dnVkIHDDpSByYWQgJWQ6ICUuKnMiCi0KLSM6IGFwcGx5LmM6MTU2OAorIzogYXBwbHkuYzoxMzcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gd2hlbiByZW1vdmluZyAlZCBsZWFkaW5nIHBhdGhuYW1lICIKQEAgLTIxMiw4MiArOTA2LDkyIEBACiAic8O2a3bDpGdza29tcG9uZW50ZXJcbiIKICJ0YXMgYm9ydCAocmFkICVkKSIKIAotIzogYXBwbHkuYzoxNTgxCisjOiBhcHBseS5jOjEzODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIChsaW5lICVkKSIKIG1zZ3N0ciAiZ2l0LWRpZmYtaHV2dWRldCBzYWtuYXIgZmlsbmFtbnNpbmZvcm1hdGlvbiAocmFkICVkKSIKIAotIzogYXBwbHkuYzoxNzY5CisjOiBhcHBseS5jOjE0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVjb3VudDogdW5leHBlY3RlZCBsaW5lOiAlLipzIgorbXNnc3RyICJyZWNvdW50OiBmw7ZydsOkbnRhZGUgcmFkOiAlLipzIgorCisjOiBhcHBseS5jOjE1NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0Y2ggZnJhZ21lbnQgd2l0aG91dCBoZWFkZXIgYXQgbGluZSAlZDogJS4qcyIKK21zZ3N0ciAicGF0Y2gtZnJhZ21lbnQgdXRhbiBodXZ1ZCBww6UgcmFkICVkOiAlLipzIgorCisjOiBhcHBseS5jOjE3NTMKIG1zZ2lkICJuZXcgZmlsZSBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKIG1zZ3N0ciAibnkgZmlsIGJlcm9yIHDDpSBnYW1tYWx0IGlubmVow6VsbCIKIAotIzogYXBwbHkuYzoxNzcxCisjOiBhcHBseS5jOjE3NTUKIG1zZ2lkICJkZWxldGVkIGZpbGUgc3RpbGwgaGFzIGNvbnRlbnRzIgogbXNnc3RyICJib3J0dGFnZW4gZmlsIGhhciBmb3J0ZmFyYW5kZSBpbm5laMOlbGwiCiAKLSM6IGFwcGx5LmM6MTgwNQorIzogYXBwbHkuYzoxNzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgcGF0Y2ggYXQgbGluZSAlZCIKIG1zZ3N0ciAidHJhc2lnIHBhdGNoIHDDpSByYWQgJWQiCiAKLSM6IGFwcGx5LmM6MTg0MgorIzogYXBwbHkuYzoxODI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBmaWxlICVzIGRlcGVuZHMgb24gb2xkIGNvbnRlbnRzIgogbXNnc3RyICJueWEgZmlsZW4gJXMgYmVyb3IgcMOlIGdhbW1hbHQgaW5uZWjDpWxsIgogCi0jOiBhcHBseS5jOjE4NDQKKyM6IGFwcGx5LmM6MTgyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWxldGVkIGZpbGUgJXMgc3RpbGwgaGFzIGNvbnRlbnRzIgogbXNnc3RyICJib3J0dGFnbmEgZmlsZW4gJXMgaGFyIGZvcnRmYXJhbmRlIGlubmVow6VsbCIKIAotIzogYXBwbHkuYzoxODQ3CisjOiBhcHBseS5jOjE4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiKiogd2FybmluZzogZmlsZSAlcyBiZWNvbWVzIGVtcHR5IGJ1dCBpcyBub3QgZGVsZXRlZCIKIG1zZ3N0ciAiKiogdmFybmluZzogZmlsZW4gJXMgYmxpciB0b20gbWVuIGhhciBpbnRlIHRhZ2l0cyBib3J0IgogCi0jOiBhcHBseS5jOjE5OTQKKyM6IGFwcGx5LmM6MTk3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IGJpbmFyeSBwYXRjaCBhdCBsaW5lICVkOiAlLipzIgogbXNnc3RyICJ0cmFzaWcgYmluw6RycGF0Y2ggcMOlIHJhZCAlZDogJS4qcyIKIAotIzogYXBwbHkuYzoyMDMxCisjOiBhcHBseS5jOjIwMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIGJpbmFyeSBwYXRjaCBhdCBsaW5lICVkIgogbXNnc3RyICJiaW7DpHJwYXRjaGVuIHDDpSByYWQgJWQga8Okbm5zIGludGUgaWdlbiIKIAotIzogYXBwbHkuYzoyMTkzCisjOiBhcHBseS5jOjIxNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0Y2ggd2l0aCBvbmx5IGdhcmJhZ2UgYXQgbGluZSAlZCIKIG1zZ3N0ciAicGF0Y2ggbWVkIGJhcmEgc2tyw6RwIHDDpSByYWQgJWQiCiAKLSM6IGFwcGx5LmM6MjI3OQorIzogYXBwbHkuYzoyMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHN5bWxpbmsgJXMiCiBtc2dzdHIgImt1bmRlIGludGUgbMOkc2Egc3ltYm9saXNrYSBsw6Rua2VuICVzIgogCi0jOiBhcHBseS5jOjIyODMKKyM6IGFwcGx5LmM6MjI2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBvciByZWFkICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBlbGxlciBsw6RzYSAlcyIKIAotIzogYXBwbHkuYzoyOTQyCisjOiBhcHBseS5jOjI5MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzdGFydCBvZiBsaW5lOiAnJWMnIgogbXNnc3RyICJmZWxha3RpZyBpbmxlZG5pbmcgcMOlIHJhZDogXCIlY1wiIgogCi0jOiBhcHBseS5jOjMwNjMKKyM6IGFwcGx5LmM6MzA1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJIdW5rICMlZCBzdWNjZWVkZWQgYXQgJWQgKG9mZnNldCAlZCBsaW5lKS4iCiBtc2dpZF9wbHVyYWwgIkh1bmsgIyVkIHN1Y2NlZWRlZCBhdCAlZCAob2Zmc2V0ICVkIGxpbmVzKS4iCiBtc2dzdHJbMF0gIlN0eWNrZSAlZCBseWNrYWRlcyBww6UgJWQgKG9mZnNldCAlZCByYWQpLiIKIG1zZ3N0clsxXSAiU3R5Y2tlICVkIGx5Y2thZGVzIHDDpSAlZCAob2Zmc2V0ICVkIHJhZGVyKS4iCiAKLSM6IGFwcGx5LmM6MzA3NQorIzogYXBwbHkuYzozMDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbnRleHQgcmVkdWNlZCB0byAoJWxkLyVsZCkgdG8gYXBwbHkgZnJhZ21lbnQgYXQgJWQiCiBtc2dzdHIgIlNhbW1hbmhhbmcgcmVkdWNlcmF0IHRpbGwgKCVsZC8lbGQpIGbDtnIgYXR0IHRpbGzDpG1wYSBmcmFnbWVudCB2aWQgJWQiCiAKLSM6IGFwcGx5LmM6MzA4MQorIzogYXBwbHkuYzozMDc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ3aGlsZSBzZWFyY2hpbmcgZm9yOlxuIgpAQCAtMjk2LDI1ICsxMDAwLDI1IEBACiAidmlkIHPDtmtuaW5nIGVmdGVyOlxuIgogIiUuKnMiCiAKLSM6IGFwcGx5LmM6MzEwMworIzogYXBwbHkuYzozMDk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3NpbmcgYmluYXJ5IHBhdGNoIGRhdGEgZm9yICclcyciCiBtc2dzdHIgInNha25hciBiaW7DpHJhIHBhdGNoZGF0YSBmw7ZyIFwiJXNcIiIKIAotIzogYXBwbHkuYzozMTExCisjOiBhcHBseS5jOjMxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJldmVyc2UtYXBwbHkgYSBiaW5hcnkgcGF0Y2ggd2l0aG91dCB0aGUgcmV2ZXJzZSBodW5rIHRvICclcyciCiBtc2dzdHIgIiIKICJrYW4gaW50ZSBhcHBsaWNlcmEgZW4gYmluw6RycGF0Y2ggYmFrbMOkbmdlcyB1dGFuIGRlbiBvbXbDpG5kYSBwYXRjaGVuIGbDtnIgXCIlcyIKICJcIiIKIAotIzogYXBwbHkuYzozMTU4CisjOiBhcHBseS5jOjMxNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGFwcGx5IGJpbmFyeSBwYXRjaCB0byAnJXMnIHdpdGhvdXQgZnVsbCBpbmRleCBsaW5lIgogbXNnc3RyICIiCiAia2FuIGludGUgYXBwbGljZXJhIGJpbsOkcnBhdGNoIHDDpSBcIiVzXCIgdXRhbiBkZW4gZnVsbHN0w6RuZGlnYSBpbmRleHJhZGVuIgogCi0jOiBhcHBseS5jOjMxNjgKKyM6IGFwcGx5LmM6MzE2MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidGhlIHBhdGNoIGFwcGxpZXMgdG8gJyVzJyAoJXMpLCB3aGljaCBkb2VzIG5vdCBtYXRjaCB0aGUgY3VycmVudCBjb250ZW50cy4iCkBAIC0zMjIsNDI2ICsxMDI2LDQxMiBAQAogInBhdGNoZW4gYXBwbGljZXJhcyBww6UgXCIlc1wiICglcyksIHNvbSBpbnRlIG1vdHN2YXJhciBkZXQgbnV2YXJhbmRlICIKICJpbm5laMOlbGxldC4iCiAKLSM6IGFwcGx5LmM6MzE3NgorIzogYXBwbHkuYzozMTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSBwYXRjaCBhcHBsaWVzIHRvIGFuIGVtcHR5ICclcycgYnV0IGl0IGlzIG5vdCBlbXB0eSIKIG1zZ3N0ciAicGF0Y2hlbiBhcHBsaWNlcmFzIHDDpSBlbiB0b20gXCIlc1wiLCBtZW4gZGVuIMOkciBpbnRlIHRvbSIKIAotIzogYXBwbHkuYzozMTk0CisjOiBhcHBseS5jOjMxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlIG5lY2Vzc2FyeSBwb3N0aW1hZ2UgJXMgZm9yICclcycgY2Fubm90IGJlIHJlYWQiCiBtc2dzdHIgIm7DtmR2w6RuZGlnIGVmdGVyYmlsZCAlcyBmw7ZyIFwiJXNcIiBrYW4gaW50ZSBsw6RzYXMiCiAKLSM6IGFwcGx5LmM6MzIwNworIzogYXBwbHkuYzozMjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImJpbmFyeSBwYXRjaCBkb2VzIG5vdCBhcHBseSB0byAnJXMnIgogbXNnc3RyICJiaW7DpHJwYXRjaGVuIGthbiBpbnRlIHRpbGzDpG1wYXMgcMOlIFwiJXNcIiIKIAotIzogYXBwbHkuYzozMjEzCisjOiBhcHBseS5jOjMyMDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmluYXJ5IHBhdGNoIHRvICclcycgY3JlYXRlcyBpbmNvcnJlY3QgcmVzdWx0IChleHBlY3RpbmcgJXMsIGdvdCAlcykiCiBtc2dzdHIgImJpbsOkcnBhdGNoZW4gcMOlIFwiJXNcIiBnZXIgZmVsYWt0aWd0IHJlc3VsdGF0IChmw7ZydsOkbnRhZGUgJXMsIGZpY2sgJXMpIgogCi0jOiBhcHBseS5jOjMyMzQKKyM6IGFwcGx5LmM6MzIzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRjaCBmYWlsZWQ6ICVzOiVsZCIKIG1zZ3N0ciAicGF0Y2ggbWlzc2x5Y2thZGVzOiAlczolbGQiCiAKLSM6IGFwcGx5LmM6MzM1NgorIzogYXBwbHkuYzozMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGVja291dCAlcyIKIG1zZ3N0ciAia2FuIGludGUgY2hlY2thIHV0ICVzIgogCi0jOiBhcHBseS5jOjM0MDggYXBwbHkuYzozNDE5IGFwcGx5LmM6MzQ2NSBtaWR4LmM6NTggc2V0dXAuYzoyNzgKKyM6IGFwcGx5LmM6MzQwNSBhcHBseS5jOjM0MTYgYXBwbHkuYzozNDYyIG1pZHguYzo2MSBzZXR1cC5jOjI5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCAlcyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIGzDpHNhICVzIgogCi0jOiBhcHBseS5jOjM0MTYKKyM6IGFwcGx5LmM6MzQxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkaW5nIGZyb20gJyVzJyBiZXlvbmQgYSBzeW1ib2xpYyBsaW5rIgogbXNnc3RyICJsw6RzZXIgZnLDpW4gXCIlc1wiIHNvbSDDpHIgcMOlIGFuZHJhIHNpZGFuIGF2IGVuIHN5bWJvbGlzayBsw6RuayIKIAotIzogYXBwbHkuYzozNDQ1IGFwcGx5LmM6MzY4OAorIzogYXBwbHkuYzozNDQyIGFwcGx5LmM6MzY4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICVzIGhhcyBiZWVuIHJlbmFtZWQvZGVsZXRlZCIKIG1zZ3N0ciAic8O2a3bDpGdlbiAlcyBoYXIgw6RuZHJhdCBuYW1uL3RhZ2l0cyBib3J0IgogCi0jOiBhcHBseS5jOjM1MzEgYXBwbHkuYzozNzAzCisjOiBhcHBseS5jOjM1MjggYXBwbHkuYzozNzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBkb2VzIG5vdCBleGlzdCBpbiBpbmRleCIKIG1zZ3N0ciAiJXM6IGZpbm5zIGludGUgaSBpbmRleGV0IgogCi0jOiBhcHBseS5jOjM1NDAgYXBwbHkuYzozNzExCisjOiBhcHBseS5jOjM1MzcgYXBwbHkuYzozNzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBkb2VzIG5vdCBtYXRjaCBpbmRleCIKIG1zZ3N0ciAiJXM6IG1vdHN2YXJhciBpbnRlIGluZGV4ZXQiCiAKLSM6IGFwcGx5LmM6MzU3NQorIzogYXBwbHkuYzozNTcyCiBtc2dpZCAicmVwb3NpdG9yeSBsYWNrcyB0aGUgbmVjZXNzYXJ5IGJsb2IgdG8gZmFsbCBiYWNrIG9uIDMtd2F5IG1lcmdlLiIKIG1zZ3N0ciAiIgogImFya2l2ZXQgc2FrbmFyIG9iamVrdCBzb20gYmVow7Z2cyBmw7ZyIGF0dCBmYWxsYSB0aWxsYmFrYSBww6UgMy0iCiAidsOkZ3NzYW1tYW5zbGFnbmluZy4iCiAKLSM6IGFwcGx5LmM6MzU3OAorIzogYXBwbHkuYzozNTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhbGxpbmcgYmFjayB0byB0aHJlZS13YXkgbWVyZ2UuLi5cbiIKIG1zZ3N0ciAiRmFsbGVyIHRpbGxiYWthIHDDpSB0cmV2w6Rnc3NhbW1hbnNsYWduaW5nLi4uXG4iCiAKLSM6IGFwcGx5LmM6MzU5NCBhcHBseS5jOjM1OTgKKyM6IGFwcGx5LmM6MzU5MSBhcHBseS5jOjM1OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgdGhlIGN1cnJlbnQgY29udGVudHMgb2YgJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBha3R1ZWxsdCBpbm5laMOlbGwgaSBcIiVzXCIiCiAKLSM6IGFwcGx5LmM6MzYxMAorIzogYXBwbHkuYzozNjA3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBmYWxsIGJhY2sgb24gdGhyZWUtd2F5IG1lcmdlLi4uXG4iCiBtc2dzdHIgIk1pc3NseWNrYWRlcyBmYWxsYSB0aWxsYmFrYSBww6UgdHJldsOkZ3NzYW1tYW5zbGFnbmluZy4uLlxuIgogCi0jOiBhcHBseS5jOjM2MjQKKyM6IGFwcGx5LmM6MzYyMQogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBsaWVkIHBhdGNoIHRvICclcycgd2l0aCBjb25mbGljdHMuXG4iCiBtc2dzdHIgIkFwcGxpY2VyYWRlIHBhdGNoZW4gcMOlIFwiJXNcIiBtZWQga29uZmxpa3Rlci5cbiIKIAotIzogYXBwbHkuYzozNjI5CisjOiBhcHBseS5jOjM2MjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBwYXRjaCB0byAnJXMnIGNsZWFubHkuXG4iCiBtc2dzdHIgIlRpbGzDpG1wYWRlIHBhdGNoZW4gcMOlICBcIiVzXCIgcmVudC5cbiIKIAotIzogYXBwbHkuYzozNjU1CisjOiBhcHBseS5jOjM2NTIKIG1zZ2lkICJyZW1vdmFsIHBhdGNoIGxlYXZlcyBmaWxlIGNvbnRlbnRzIgogbXNnc3RyICJwYXRjaCBmw7ZyIGJvcnR0YWduaW5nIGzDpG1uYXIga3ZhciBmaWxpbm5laMOlbGwiCiAKLSM6IGFwcGx5LmM6MzcyOAorIzogYXBwbHkuYzozNzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiB3cm9uZyB0eXBlIgogbXNnc3RyICIlczogZmVsIHR5cCIKIAotIzogYXBwbHkuYzozNzMwCisjOiBhcHBseS5jOjM3MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaGFzIHR5cGUgJW8sIGV4cGVjdGVkICVvIgogbXNnc3RyICIlcyBoYXIgdHlwZW4gJW8sIGbDtnJ2w6RudGFkZSAlbyIKIAotIzogYXBwbHkuYzozODgxIGFwcGx5LmM6Mzg4MworIzogYXBwbHkuYzozODc4IGFwcGx5LmM6Mzg4MCByZWFkLWNhY2hlLmM6ODMwIHJlYWQtY2FjaGUuYzo4NTYKKyM6IHJlYWQtY2FjaGUuYzoxMzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgcGF0aCAnJXMnIgotbXNnc3RyICJvZ2lsdGlnIHPDtmt2w6RnIOKAnSVz4oCdIgorbXNnc3RyICJvZ2lsdGlnIHPDtmt2w6RnIFwiJXNcIiIKIAotIzogYXBwbHkuYzozOTM5CisjOiBhcHBseS5jOjM5MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGFscmVhZHkgZXhpc3RzIGluIGluZGV4IgogbXNnc3RyICIlczogZmlubnMgcmVkYW4gaSBpbmRleGV0IgogCi0jOiBhcHBseS5jOjM5NDIKKyM6IGFwcGx5LmM6MzkzOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogYWxyZWFkeSBleGlzdHMgaW4gd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIiVzOiBmaW5ucyByZWRhbiBpIGFyYmV0c2thdGFsb2dlbiIKIAotIzogYXBwbHkuYzozOTYyCisjOiBhcHBseS5jOjM5NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IG1vZGUgKCVvKSBvZiAlcyBkb2VzIG5vdCBtYXRjaCBvbGQgbW9kZSAoJW8pIgogbXNnc3RyICJueXR0IGzDpGdlICglbykgZsO2ciAlcyBtb3RzdmFyYXIgaW50ZSBnYW1tYWx0IGzDpGdlICglbykiCiAKLSM6IGFwcGx5LmM6Mzk2NworIzogYXBwbHkuYzozOTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSBvZiAlcyIKIG1zZ3N0ciAibnl0dCBsw6RnZSAoJW8pIGbDtnIgJXMgbW90c3ZhcmFyIGludGUgZ2FtbWFsdCBsw6RnZSAoJW8pIGbDtnIgJXMiCiAKLSM6IGFwcGx5LmM6Mzk4NworIzogYXBwbHkuYzozOTg0CiAjLCBjLWZvcm1hdAogbXNnaWQgImFmZmVjdGVkIGZpbGUgJyVzJyBpcyBiZXlvbmQgYSBzeW1ib2xpYyBsaW5rIgogbXNnc3RyICJkZW4gYmVyw7ZyZGEgZmlsZW4gXCIlc1wiIMOkciBww6UgYW5kcmEgc2lkYW4gYXYgZW4gc3ltYm9saXNrIGzDpG5rIgogCi0jOiBhcHBseS5jOjM5OTEKKyM6IGFwcGx5LmM6Mzk4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogcGF0Y2ggZG9lcyBub3QgYXBwbHkiCiBtc2dzdHIgIiVzOiBwYXRjaGVuIGthbiBpbnRlIHRpbGzDpG1wYXMiCiAKLSM6IGFwcGx5LmM6NDAwNgorIzogYXBwbHkuYzo0MDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoZWNraW5nIHBhdGNoICVzLi4uIgogbXNnc3RyICJLb250cm9sbGVyYXIgcGF0Y2hlbiAlcy4uLiIKIAotIzogYXBwbHkuYzo0MDk4CisjOiBhcHBseS5jOjQwOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAic2hhMSBpbmZvcm1hdGlvbiBpcyBsYWNraW5nIG9yIHVzZWxlc3MgZm9yIHN1Ym1vZHVsZSAlcyIKIG1zZ3N0ciAic2hhMS1pbmZvcm1hdGlvbmVuIHNha25hcyBlbGxlciDDpHIgb2FudsOkbmRiYXIgZsO2ciB1bmRlcm1vZHVsZW4gJXMiCiAKLSM6IGFwcGx5LmM6NDEwNQorIzogYXBwbHkuYzo0MTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1vZGUgY2hhbmdlIGZvciAlcywgd2hpY2ggaXMgbm90IGluIGN1cnJlbnQgSEVBRCIKIG1zZ3N0ciAibnl0dCBsw6RnZSBmw7ZyICVzLCBzb20gaW50ZSBmaW5ucyBpIG51dmFyYW5kZSBIRUFEIgogCi0jOiBhcHBseS5jOjQxMDgKKyM6IGFwcGx5LmM6NDEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJzaGExIGluZm9ybWF0aW9uIGlzIGxhY2tpbmcgb3IgdXNlbGVzcyAoJXMpLiIKIG1zZ3N0ciAic2hhMS1pbmZvcm1hdGlvbmVuIHNha25hcyBlbGxlciDDpHIgb2FudsOkbmRiYXIgKCVzKS4iCiAKLSM6IGFwcGx5LmM6NDExMyBidWlsdGluL2NoZWNrb3V0LmM6MjQ0IGJ1aWx0aW4vcmVzZXQuYzoxNDIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibWFrZV9jYWNoZV9lbnRyeSBmYWlsZWQgZm9yIHBhdGggJyVzJyIKLW1zZ3N0ciAibWFrZV9jYWNoZV9lbnRyeSBtaXNzbHlja2FkZXMgZsO2ciBzw7ZrdsOkZ2VuIFwiJXNcIiIKLQotIzogYXBwbHkuYzo0MTE3CisjOiBhcHBseS5jOjQxMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGFkZCAlcyB0byB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgImt1bmRlIGludGUgbMOkZ2dhIHRpbGwgJXMgdGlsbCB0ZW1wb3LDpHJ0IGluZGV4IgogCi0jOiBhcHBseS5jOjQxMjcKKyM6IGFwcGx5LmM6NDEyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgdGVtcG9yYXJ5IGluZGV4IHRvICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSB0ZW1wb3LDpHJ0IGluZGV4IHRpbGwgJXMiCiAKLSM6IGFwcGx5LmM6NDI2NQorIzogYXBwbHkuYzo0MjYyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXMgZnJvbSBpbmRleCIKIG1zZ3N0ciAia2FuIGludGUgdGEgYm9ydCAlcyBmcsOlbiBpbmRleGV0IgogCi0jOiBhcHBseS5jOjQyOTkKKyM6IGFwcGx5LmM6NDI5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IHBhdGNoIGZvciBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgInRyYXNpZyBwYXRjaCBmw7ZyIHVuZGVybW9kdWxlbiAlcyIKIAotIzogYXBwbHkuYzo0MzA1CisjOiBhcHBseS5jOjQzMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3bHkgY3JlYXRlZCBmaWxlICclcyciCiBtc2dzdHIgImthbiBpbnRlIHRhIHN0YXR1cyBww6UgbnlsaWdlbiBza2FwYWRlIGZpbGVuIFwiJXNcIiIKIAotIzogYXBwbHkuYzo0MzEzCisjOiBhcHBseS5jOjQzMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBiYWNraW5nIHN0b3JlIGZvciBuZXdseSBjcmVhdGVkIGZpbGUgJXMiCiBtc2dzdHIgImthbiBpbnRlIHNrYXBhIHPDpGtlcmhldHNtaW5uZSBmw7ZyIG55bGlnZW4gc2thcGFkZSBmaWxlbiAlcyIKIAotIzogYXBwbHkuYzo0MzE5IGFwcGx5LmM6NDQ2NAorIzogYXBwbHkuYzo0MzE2IGFwcGx5LmM6NDQ2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIGNhY2hlIGVudHJ5IGZvciAlcyIKIG1zZ3N0ciAia2FuIGludGUgbMOkZ2dhIHRpbGwgY2FjaGVwb3N0IGbDtnIgJXMiCiAKLSM6IGFwcGx5LmM6NDM2MgorIzogYXBwbHkuYzo0MzU5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byAnJXMnIgogbXNnc3RyICJtaXNzbHlja2FkZXMgc2tyaXZhIHRpbGwgXCIlc1wiIgogCi0jOiBhcHBseS5jOjQzNjYKKyM6IGFwcGx5LmM6NDM2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjbG9zaW5nIGZpbGUgJyVzJyIKIG1zZ3N0ciAic3TDpG5nZXIgZmlsZW4gXCIlc1wiIgogCi0jOiBhcHBseS5jOjQ0MzYKKyM6IGFwcGx5LmM6NDQzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIG1vZGUgJW8iCiBtc2dzdHIgImthbiBpbnRlIHNrcml2YSBmaWxlbiBcIiVzXCIgbMOkZ2UgJW8iCiAKLSM6IGFwcGx5LmM6NDUzNAorIzogYXBwbHkuYzo0NTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgcGF0Y2ggJXMgY2xlYW5seS4iCiBtc2dzdHIgIlRpbGzDpG1wYWRlIHBhdGNoZW4gJXMgcmVudC4iCiAKLSM6IGFwcGx5LmM6NDU0MgorIzogYXBwbHkuYzo0NTM5CiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IiCiBtc2dzdHIgImludGVybnQgZmVsIgogCi0jOiBhcHBseS5jOjQ1NDUKKyM6IGFwcGx5LmM6NDU0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBseWluZyBwYXRjaCAlJXMgd2l0aCAlZCByZWplY3QuLi4iCiBtc2dpZF9wbHVyYWwgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdHMuLi4iCiBtc2dzdHJbMF0gIlRpbGzDpG1wYWRlIHBhdGNoZW4gJSVzIG1lZCAlZCByZWZ1c2VyYWQuLi4iCiBtc2dzdHJbMV0gIlRpbGzDpG1wYWRlIHBhdGNoZW4gJSVzIG1lZCAlZCByZWZ1c2VyYWRlLi4uIgogCi0jOiBhcHBseS5jOjQ1NTYKKyM6IGFwcGx5LmM6NDU1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cnVuY2F0aW5nIC5yZWogZmlsZW5hbWUgdG8gJS4qcy5yZWoiCiBtc2dzdHIgInRydW5rZXJhciAucmVqLWZpbG5hbW5ldCB0aWxsICUuKnMucmVqIgogCi0jOiBhcHBseS5jOjQ1NjQgYnVpbHRpbi9mZXRjaC5jOjg0MyBidWlsdGluL2ZldGNoLmM6MTEyMgorIzogYXBwbHkuYzo0NTYxIGJ1aWx0aW4vZmV0Y2guYzo5MDEgYnVpbHRpbi9mZXRjaC5jOjEyMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG9wZW4gJXMiCiBtc2dzdHIgImthbiBpbnRlIMO2cHBuYSAlcyIKIAotIzogYXBwbHkuYzo0NTc4CisjOiBhcHBseS5jOjQ1NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiSHVuayAjJWQgYXBwbGllZCBjbGVhbmx5LiIKIG1zZ3N0ciAiU3R5Y2tlICVkIHRpbGzDpG1wYWRlcyByZW50LiIKIAotIzogYXBwbHkuYzo0NTgyCisjOiBhcHBseS5jOjQ1NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVqZWN0ZWQgaHVuayAjJWQuIgogbXNnc3RyICJSZWZ1c2VyYXIgc3R5Y2tlICVkLiIKIAotIzogYXBwbHkuYzo0NjkyCisjOiBhcHBseS5jOjQ2OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBlZCBwYXRjaCAnJXMnLiIKIG1zZ3N0ciAiSWdub3JlcmFyIHBhdGNoIFwiJXNcIi4iCiAKLSM6IGFwcGx5LmM6NDcwMAorIzogYXBwbHkuYzo0NzA2CiBtc2dpZCAidW5yZWNvZ25pemVkIGlucHV0IgogbXNnc3RyICJpbmRhdGEga8Okbm5zIGludGUgaWdlbiIKIAotIzogYXBwbHkuYzo0NzE5CisjOiBhcHBseS5jOjQ3MjYKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBpbmRleCBmaWxlIgogbXNnc3RyICJrYW4gaW50ZSBsw6RzYSBpbmRleGZpbGVuIgogCi0jOiBhcHBseS5jOjQ4NzQKKyM6IGFwcGx5LmM6NDg4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCBvcGVuIHBhdGNoICclcyc6ICVzIgogbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgcGF0Y2hlbiBcIiVzXCI6ICVzIgogCi0jOiBhcHBseS5jOjQ5MDEKKyM6IGFwcGx5LmM6NDkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJzcXVlbGNoZWQgJWQgd2hpdGVzcGFjZSBlcnJvciIKIG1zZ2lkX3BsdXJhbCAic3F1ZWxjaGVkICVkIHdoaXRlc3BhY2UgZXJyb3JzIgogbXNnc3RyWzBdICJ1bmRlcnRyeWNrdGUgJWQgZmVsIGkgYmxhbmtzdGVnIgogbXNnc3RyWzFdICJ1bmRlcnRyeWNrdGUgJWQgZmVsIGkgYmxhbmtzdGVnIgogCi0jOiBhcHBseS5jOjQ5MDcgYXBwbHkuYzo0OTIyCisjOiBhcHBseS5jOjQ5MTYgYXBwbHkuYzo0OTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVkIGxpbmUgYWRkcyB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dpZF9wbHVyYWwgIiVkIGxpbmVzIGFkZCB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dzdHJbMF0gIiVkIHJhZCBsw6RnZ2VyIHRpbGwgZmVsIGkgYmxhbmtzdGVnLiIKIG1zZ3N0clsxXSAiJWQgcmFkZXIgbMOkZ2dlciB0aWxsIGZlbCBpIGJsYW5rc3RlZy4iCiAKLSM6IGFwcGx5LmM6NDkxNQorIzogYXBwbHkuYzo0OTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVkIGxpbmUgYXBwbGllZCBhZnRlciBmaXhpbmcgd2hpdGVzcGFjZSBlcnJvcnMuIgogbXNnaWRfcGx1cmFsICIlZCBsaW5lcyBhcHBsaWVkIGFmdGVyIGZpeGluZyB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dzdHJbMF0gIiVkIHJhZCBhcHBsaWNlcmFkZSBlZnRlciBhdHQgaGEgcsOkdHRhdCBmZWwgaSBibGFua3N0ZWcuIgogbXNnc3RyWzFdICIlZCByYWRlciBhcHBsaWNlcmFkZSBlZnRlciBhdHQgaGEgcsOkdHRhdCBmZWwgaSBibGFua3N0ZWcuIgogCi0jOiBhcHBseS5jOjQ5MzEgYnVpbHRpbi9hZGQuYzo1MzggYnVpbHRpbi9tdi5jOjMwMCBidWlsdGluL3JtLmM6Mzg5CisjOiBhcHBseS5jOjQ5NDAgYnVpbHRpbi9hZGQuYzo2MTIgYnVpbHRpbi9tdi5jOjMwMSBidWlsdGluL3JtLmM6NDA2CiBtc2dpZCAiVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgogbXNnc3RyICJLdW5kZSBpbnRlIHNrcml2YSBueSBpbmRleGZpbCIKIAotIzogYXBwbHkuYzo0OTU4IGFwcGx5LmM6NDk2MSBidWlsdGluL2FtLmM6MjIwOSBidWlsdGluL2FtLmM6MjIxMgotIzogYnVpbHRpbi9jbG9uZS5jOjEyMSBidWlsdGluL2ZldGNoLmM6MTE4IGJ1aWx0aW4vbWVyZ2UuYzoyNjIKLSM6IGJ1aWx0aW4vcHVsbC5jOjE5OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA2Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2MiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2NQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NDYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NDkKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDg4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTk3Ci1tc2dpZCAicGF0aCIKLW1zZ3N0ciAic8O2a3bDpGciCi0KLSM6IGFwcGx5LmM6NDk1OQorIzogYXBwbHkuYzo0OTY4CiBtc2dpZCAiZG9uJ3QgYXBwbHkgY2hhbmdlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCIKIG1zZ3N0ciAidGlsbMOkbXBhIGludGUgw6RuZHJpbmdhciBzb20gbW90c3ZhcmFyIGdpdmVuIHPDtmt2w6RnIgogCi0jOiBhcHBseS5jOjQ5NjIKKyM6IGFwcGx5LmM6NDk3MQogbXNnaWQgImFwcGx5IGNoYW5nZXMgbWF0Y2hpbmcgdGhlIGdpdmVuIHBhdGgiCiBtc2dzdHIgInRpbGzDpG1wYSDDpG5kcmluZ2FyIHNvbSBtb3RzdmFyYXIgZ2l2ZW4gc8O2a3bDpGciCiAKLSM6IGFwcGx5LmM6NDk2NCBidWlsdGluL2FtLmM6MjIxOAorIzogYXBwbHkuYzo0OTczIGJ1aWx0aW4vYW0uYzoyMjYwCiBtc2dpZCAibnVtIgogbXNnc3RyICJhbnRhbCIKIAotIzogYXBwbHkuYzo0OTY1CisjOiBhcHBseS5jOjQ5NzQKIG1zZ2lkICJyZW1vdmUgPG51bT4gbGVhZGluZyBzbGFzaGVzIGZyb20gdHJhZGl0aW9uYWwgZGlmZiBwYXRocyIKIG1zZ3N0ciAidGEgYm9ydCA8YW50YWw+IGlubGVkYW5kZSBzbmVkc3RyZWNrIGZyw6VuIHRyYWRpdGlvbmVsbGEgZGlmZi1zw7ZrdsOkZ2FyIgogCi0jOiBhcHBseS5jOjQ5NjgKKyM6IGFwcGx5LmM6NDk3NwogbXNnaWQgImlnbm9yZSBhZGRpdGlvbnMgbWFkZSBieSB0aGUgcGF0Y2giCiBtc2dzdHIgImlnbm9yZXJhIHRpbGzDpGdnIGdqb3JkYSBhdiBwYXRjaGVuIgogCi0jOiBhcHBseS5jOjQ5NzAKKyM6IGFwcGx5LmM6NDk3OQogbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBvdXRwdXQgZGlmZnN0YXQgZm9yIHRoZSBpbnB1dCIKIG1zZ3N0ciAiaXN0w6RsbGV0IGbDtnIgYXR0IHRpbGzDpG1wYSBwYXRjaGVuLCBza3JpdiB1dCBkaWZmc3RhdCBmw7ZyIGluZGF0YSIKIAotIzogYXBwbHkuYzo0OTc0CisjOiBhcHBseS5jOjQ5ODMKIG1zZ2lkICJzaG93IG51bWJlciBvZiBhZGRlZCBhbmQgZGVsZXRlZCBsaW5lcyBpbiBkZWNpbWFsIG5vdGF0aW9uIgogbXNnc3RyICJ2aXNhIGFudGFsIHRpbGxhZ2RhIG9jaCBib3J0dGFnbmEgcmFkZXIgZGVjaW1hbHQiCiAKLSM6IGFwcGx5LmM6NDk3NgorIzogYXBwbHkuYzo0OTg1CiBtc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIG91dHB1dCBhIHN1bW1hcnkgZm9yIHRoZSBpbnB1dCIKIG1zZ3N0ciAiaXN0w6RsbGV0IGbDtnIgYXR0IHRpbGzDpG1wYSBwYXRjaGVuLCBza3JpdiB1dCBlbiBzdW1tZXJpbmcgYXYgaW5kYXRhIgogCi0jOiBhcHBseS5jOjQ5NzgKKyM6IGFwcGx5LmM6NDk4NwogbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBzZWUgaWYgdGhlIHBhdGNoIGlzIGFwcGxpY2FibGUiCiBtc2dzdHIgImlzdMOkbGxldCBmw7ZyIGF0dCB0aWxsw6RtcGEgcGF0Y2hlbiwgc2Ugb20gcGF0Y2hlbiBrYW4gdGlsbMOkbXBhcyIKIAotIzogYXBwbHkuYzo0OTgwCisjOiBhcHBseS5jOjQ5ODkKIG1zZ2lkICJtYWtlIHN1cmUgdGhlIHBhdGNoIGlzIGFwcGxpY2FibGUgdG8gdGhlIGN1cnJlbnQgaW5kZXgiCiBtc2dzdHIgInNlIHRpbGwgYXR0IHBhdGNoZW4ga2FuIHRpbGzDpG1wYXMgcMOlIGFrdHVlbGx0IGluZGV4IgogCi0jOiBhcHBseS5jOjQ5ODIKKyM6IGFwcGx5LmM6NDk5MQogbXNnaWQgIm1hcmsgbmV3IGZpbGVzIHdpdGggYGdpdCBhZGQgLS1pbnRlbnQtdG8tYWRkYCIKIG1zZ3N0ciAibWFya2VyYSBueWEgZmlsZXIgbWVkIFwiZ2l0IGFkZCAtLWludGVudC10by1hZGRcIiIKIAotIzogYXBwbHkuYzo0OTg0CisjOiBhcHBseS5jOjQ5OTMKIG1zZ2lkICJhcHBseSBhIHBhdGNoIHdpdGhvdXQgdG91Y2hpbmcgdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAidGlsbMOkbXBhIGVuIHBhdGNoIHV0YW4gYXR0IHLDtnJhIGFyYmV0c2thdGFsb2dlbiIKIAotIzogYXBwbHkuYzo0OTg2CisjOiBhcHBseS5jOjQ5OTUKIG1zZ2lkICJhY2NlcHQgYSBwYXRjaCB0aGF0IHRvdWNoZXMgb3V0c2lkZSB0aGUgd29ya2luZyBhcmVhIgogbXNnc3RyICJnb2R0YSBlbiBwYXRjaCBzb20gcsO2ciBmaWxlciB1dGFuZsO2ciBhcmJldHNrYXRhbG9nZW4iCiAKLSM6IGFwcGx5LmM6NDk4OQorIzogYXBwbHkuYzo0OTk4CiBtc2dpZCAiYWxzbyBhcHBseSB0aGUgcGF0Y2ggKHVzZSB3aXRoIC0tc3RhdC8tLXN1bW1hcnkvLS1jaGVjaykiCiBtc2dzdHIgInRpbGzDpG1wYSBvY2tzw6UgcGF0Y2hlbiAoYW52w6RuZCBtZWQgLS1zdGF0Ly0tc3VtbWFyeS8tLWNoZWNrKSIKIAotIzogYXBwbHkuYzo0OTkxCisjOiBhcHBseS5jOjUwMDAKIG1zZ2lkICJhdHRlbXB0IHRocmVlLXdheSBtZXJnZSBpZiBhIHBhdGNoIGRvZXMgbm90IGFwcGx5IgogbXNnc3RyICJmw7Zyc8O2ayBlbiB0cmV2w6Rnc3NhbW1hbnNsYWduaW5nIG9tIHBhdGNoZW4gaW50ZSBrYW4gdGlsbMOkbXBhcyIKIAotIzogYXBwbHkuYzo0OTkzCisjOiBhcHBseS5jOjUwMDIKIG1zZ2lkICJidWlsZCBhIHRlbXBvcmFyeSBpbmRleCBiYXNlZCBvbiBlbWJlZGRlZCBpbmRleCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiYnlnZyBldHQgdGVtcG9yw6RydCBpbmRleCBiYXNlcmF0IHDDpSBpbmJ5Z2dkIGluZGV4aW5mb3JtYXRpb24iCiAKLSM6IGFwcGx5LmM6NDk5NiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjMKKyM6IGFwcGx5LmM6NTAwNSBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTczIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjQKIG1zZ2lkICJwYXRocyBhcmUgc2VwYXJhdGVkIHdpdGggTlVMIGNoYXJhY3RlciIKIG1zZ3N0ciAic8O2a3bDpGdhciBhdmRlbGFzIG1lZCBOVUwtdGVja2VuIgogCi0jOiBhcHBseS5jOjQ5OTgKKyM6IGFwcGx5LmM6NTAwNwogbXNnaWQgImVuc3VyZSBhdCBsZWFzdCA8bj4gbGluZXMgb2YgY29udGV4dCBtYXRjaCIKIG1zZ3N0ciAic2UgdGlsbCBhdHQgw6V0bWluc3RvbmUgPG4+IHJhZGVyIHNhbW1hbmhhbmcgw6RyIGxpa2EiCiAKLSM6IGFwcGx5LmM6NDk5OSBidWlsdGluL2FtLmM6MjE5NyBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk3Ci0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk5IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAxCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTIgYnVpbHRpbi9yZWJhc2UuYzo4NTcKKyM6IGFwcGx5LmM6NTAwOCBidWlsdGluL2FtLmM6MjIzOSBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk4CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMCBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU3IGJ1aWx0aW4vcmViYXNlLmM6MTUwOAogbXNnaWQgImFjdGlvbiIKIG1zZ3N0ciAiw6V0Z8OkcmQiCiAKLSM6IGFwcGx5LmM6NTAwMAorIzogYXBwbHkuYzo1MDA5CiBtc2dpZCAiZGV0ZWN0IG5ldyBvciBtb2RpZmllZCBsaW5lcyB0aGF0IGhhdmUgd2hpdGVzcGFjZSBlcnJvcnMiCiBtc2dzdHIgImRldGVrdGVyYSBueWEgZWxsZXIgw6RuZHJhZGUgcmFkZXIgc29tIGhhciBmZWwgaSBibGFua3RlY2tlbiIKIAotIzogYXBwbHkuYzo1MDAzIGFwcGx5LmM6NTAwNgorIzogYXBwbHkuYzo1MDEyIGFwcGx5LmM6NTAxNQogbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIHdoaXRlc3BhY2Ugd2hlbiBmaW5kaW5nIGNvbnRleHQiCiBtc2dzdHIgImlnbm9yZXJhIMOkbmRyaW5nYXIgaSBibGFua3RlY2tlbiBmw7ZyIHNhbW1hbmhhbmciCiAKLSM6IGFwcGx5LmM6NTAwOQorIzogYXBwbHkuYzo1MDE4CiBtc2dpZCAiYXBwbHkgdGhlIHBhdGNoIGluIHJldmVyc2UiCiBtc2dzdHIgInRpbGzDpG1wYSBwYXRjaGVuIGJha2zDpG5nZXMiCiAKLSM6IGFwcGx5LmM6NTAxMQorIzogYXBwbHkuYzo1MDIwCiBtc2dpZCAiZG9uJ3QgZXhwZWN0IGF0IGxlYXN0IG9uZSBsaW5lIG9mIGNvbnRleHQiCiBtc2dzdHIgImbDtnJ2w6RudGEgaW50ZSBtaW5zdCBlbiByYWQgc2FtbWFuaGFuZyIKIAotIzogYXBwbHkuYzo1MDEzCisjOiBhcHBseS5jOjUwMjIKIG1zZ2lkICJsZWF2ZSB0aGUgcmVqZWN0ZWQgaHVua3MgaW4gY29ycmVzcG9uZGluZyAqLnJlaiBmaWxlcyIKIG1zZ3N0ciAibMOkbW5hIHJlZnVzZXJhZGUgc3R5Y2tlbiBpIG1vdHN2YXJhbmRlICoucmVqLWZpbGVyIgogCi0jOiBhcHBseS5jOjUwMTUKKyM6IGFwcGx5LmM6NTAyNAogbXNnaWQgImFsbG93IG92ZXJsYXBwaW5nIGh1bmtzIgogbXNnc3RyICJ0aWxsw6V0IMO2dmVybGFwcGFuZGUgc3R5Y2tlbiIKIAotIzogYXBwbHkuYzo1MDE2IGJ1aWx0aW4vYWRkLmM6MjkwIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjEKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMwOSBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5OCBidWlsdGluL2ZzY2suYzo2OTgKLSM6IGJ1aWx0aW4vbG9nLmM6MjAyMyBidWlsdGluL212LmM6MTIyIGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI3Ci0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTcKKyM6IGFwcGx5LmM6NTAyNSBidWlsdGluL2FkZC5jOjMyMyBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjIyCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjAgYnVpbHRpbi9jb3VudC1vYmplY3RzLmM6OTggYnVpbHRpbi9mc2NrLmM6Nzc0CisjOiBidWlsdGluL2xvZy5jOjIxNjYgYnVpbHRpbi9tdi5jOjEyMyBidWlsdGluL3JlYWQtdHJlZS5jOjEyOAogbXNnaWQgImJlIHZlcmJvc2UiCiBtc2dzdHIgInZhciBwcmF0c2FtIgogCi0jOiBhcHBseS5jOjUwMTgKKyM6IGFwcGx5LmM6NTAyNwogbXNnaWQgInRvbGVyYXRlIGluY29ycmVjdGx5IGRldGVjdGVkIG1pc3NpbmcgbmV3LWxpbmUgYXQgdGhlIGVuZCBvZiBmaWxlIgogbXNnc3RyICJ0b2xlcmVyYSBmZWxha3RpZ3QgZGV0ZWt0ZXJhZGUgc2FrbmFkZSBueXJhZHN0ZWNrZW4gdmlkIGZpbHNsdXQiCiAKLSM6IGFwcGx5LmM6NTAyMQorIzogYXBwbHkuYzo1MDMwCiBtc2dpZCAiZG8gbm90IHRydXN0IHRoZSBsaW5lIGNvdW50cyBpbiB0aGUgaHVuayBoZWFkZXJzIgogbXNnc3RyICJsaXRlIGludGUgcMOlIGFudGFsZXQgbGluamVyIGkgc3R5Y2tlaHV2dWRlbiIKIAotIzogYXBwbHkuYzo1MDIzIGJ1aWx0aW4vYW0uYzoyMjA2CisjOiBhcHBseS5jOjUwMzIgYnVpbHRpbi9hbS5jOjIyNDgKIG1zZ2lkICJyb290IgogbXNnc3RyICJyb3QiCiAKLSM6IGFwcGx5LmM6NTAyNAorIzogYXBwbHkuYzo1MDMzCiBtc2dpZCAicHJlcGVuZCA8cm9vdD4gdG8gYWxsIGZpbGVuYW1lcyIKIG1zZ3N0ciAibMOkZ2cgdGlsbCA8cm90PiBpIGFsbGEgZmlsbmFtbiIKIApAQCAtNzY0LDE0OCArMTQ1NCwxNjggQEAKIG1zZ2lkICJnaXQgYXJjaGl2ZSAtLXJlbW90ZSA8cmVwbz4gWy0tZXhlYyA8Y21kPl0gLS1saXN0IgogbXNnc3RyICJnaXQgYXJjaGl2ZSAtLXJlbW90ZSA8YXJraXY+IFstLWV4ZWMgPGttZD5dIC0tbGlzdCIKIAotIzogYXJjaGl2ZS5jOjM3MCBidWlsdGluL2FkZC5jOjE3NiBidWlsdGluL2FkZC5jOjUxNCBidWlsdGluL3JtLmM6Mjk4CisjOiBhcmNoaXZlLmM6MzcyIGJ1aWx0aW4vYWRkLmM6MTgxIGJ1aWx0aW4vYWRkLmM6NTg4IGJ1aWx0aW4vcm0uYzozMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlcyIKIG1zZ3N0ciAic8O2a3bDpGdzYW5naXZlbHNlbiBcIiVzXCIgbW90c3ZhcmFkZSBpbnRlIG7DpWdyYSBmaWxlciIKIAotIzogYXJjaGl2ZS5jOjQ1MworIzogYXJjaGl2ZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBzdWNoIHJlZjogJS4qcyIKK21zZ3N0ciAiaW5nZW4gc8OlZGFuIHJlZmVyZW5zOiAlLipzIgorCisjOiBhcmNoaXZlLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAlcyIKK21zZ3N0ciAib2JqZWt0bmFtbmV0IMOkciBpbnRlIGdpbHRpZ3Q6ICVzIgorCisjOiBhcmNoaXZlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHRyZWUgb2JqZWN0OiAlcyIKK21zZ3N0ciAiaW50ZSBldHQgdHLDpGRvYmpla3Q6ICVzIgorCisjOiBhcmNoaXZlLmM6NDI2Cittc2dpZCAiY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSBpcyB1bnRyYWNrZWQiCittc2dzdHIgImFrdHVlbGwgYXJiZXRza2F0YWxvZyDDpHIgaW50ZSBzcMOlcmFkIgorCisjOiBhcmNoaXZlLmM6NDU3CiBtc2dpZCAiZm10IgogbXNnc3RyICJmbXQiCiAKLSM6IGFyY2hpdmUuYzo0NTMKKyM6IGFyY2hpdmUuYzo0NTcKIG1zZ2lkICJhcmNoaXZlIGZvcm1hdCIKIG1zZ3N0ciAiYXJraXZmb3JtYXQiCiAKLSM6IGFyY2hpdmUuYzo0NTQgYnVpbHRpbi9sb2cuYzoxNTM2CisjOiBhcmNoaXZlLmM6NDU4IGJ1aWx0aW4vbG9nLmM6MTY1MwogbXNnaWQgInByZWZpeCIKIG1zZ3N0ciAicHJlZml4IgogCi0jOiBhcmNoaXZlLmM6NDU1CisjOiBhcmNoaXZlLmM6NDU5CiBtc2dpZCAicHJlcGVuZCBwcmVmaXggdG8gZWFjaCBwYXRobmFtZSBpbiB0aGUgYXJjaGl2ZSIKIG1zZ3N0ciAibMOkZ2cgdGlsbCBwcmVmaXggdGlsbCB2YXJqZSBzw7ZrdsOkZyBpIGFya2l2ZXQiCiAKLSM6IGFyY2hpdmUuYzo0NTYgYnVpbHRpbi9ibGFtZS5jOjgyMCBidWlsdGluL2JsYW1lLmM6ODIxIGJ1aWx0aW4vY29uZmlnLmM6MTI5Ci0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNSBidWlsdGluL2dyZXAuYzo4ODQKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDQgYnVpbHRpbi9scy1maWxlcy5jOjU1OSBidWlsdGluL2xzLWZpbGVzLmM6NTYyCi0jOiBidWlsdGluL25vdGVzLmM6NDEyIGJ1aWx0aW4vbm90ZXMuYzo1NzUgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjIKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNjIKKyM6IGFyY2hpdmUuYzo0NjAgYnVpbHRpbi9ibGFtZS5jOjg2MSBidWlsdGluL2JsYW1lLmM6ODY1IGJ1aWx0aW4vYmxhbWUuYzo4NjYKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTcgYnVpbHRpbi9jb25maWcuYzoxMzAgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY0IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY4IGJ1aWx0aW4vZ3JlcC5jOjg4NworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNSBidWlsdGluL2xzLWZpbGVzLmM6NTYwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTIgYnVpbHRpbi9ub3Rlcy5jOjU3OCBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogcGFyc2Utb3B0aW9ucy5oOjE5MAogbXNnaWQgImZpbGUiCiBtc2dzdHIgImZpbCIKIAotIzogYXJjaGl2ZS5jOjQ1NyBidWlsdGluL2FyY2hpdmUuYzo4OQorIzogYXJjaGl2ZS5jOjQ2MSBidWlsdGluL2FyY2hpdmUuYzo5MAogbXNnaWQgIndyaXRlIHRoZSBhcmNoaXZlIHRvIHRoaXMgZmlsZSIKIG1zZ3N0ciAic2tyaXYgYXJraXZldCB0aWxsIGZpbGVuIgogCi0jOiBhcmNoaXZlLmM6NDU5CisjOiBhcmNoaXZlLmM6NDYzCiBtc2dpZCAicmVhZCAuZ2l0YXR0cmlidXRlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAibMOkcyAuZ2l0YXR0cmlidXRlcyBpIGFyYmV0c2thdGFsb2dlbiIKIAotIzogYXJjaGl2ZS5jOjQ2MAorIzogYXJjaGl2ZS5jOjQ2NAogbXNnaWQgInJlcG9ydCBhcmNoaXZlZCBmaWxlcyBvbiBzdGRlcnIiCiBtc2dzdHIgInJhcHBvcnRlcmEgYXJraXZlcmFkZSBmaWxlciBww6Ugc3RhbmRhcmQgZmVsIgogCi0jOiBhcmNoaXZlLmM6NDYxCisjOiBhcmNoaXZlLmM6NDY1CiBtc2dpZCAic3RvcmUgb25seSIKIG1zZ3N0ciAiZW5kYXN0IHNwYXJhIgogCi0jOiBhcmNoaXZlLmM6NDYyCisjOiBhcmNoaXZlLmM6NDY2CiBtc2dpZCAiY29tcHJlc3MgZmFzdGVyIgogbXNnc3RyICJrb21wcmltZXJhIHNuYWJiYXJlIgogCi0jOiBhcmNoaXZlLmM6NDcwCisjOiBhcmNoaXZlLmM6NDc0CiBtc2dpZCAiY29tcHJlc3MgYmV0dGVyIgogbXNnc3RyICJrb21wcmltZXJhIGLDpHR0cmUiCiAKLSM6IGFyY2hpdmUuYzo0NzMKKyM6IGFyY2hpdmUuYzo0NzcKIG1zZ2lkICJsaXN0IHN1cHBvcnRlZCBhcmNoaXZlIGZvcm1hdHMiCiBtc2dzdHIgInZpc2EgdW5kZXJzdMO2ZGRhIGFya2l2Zm9ybWF0IgogCi0jOiBhcmNoaXZlLmM6NDc1IGJ1aWx0aW4vYXJjaGl2ZS5jOjkwIGJ1aWx0aW4vY2xvbmUuYzoxMTEgYnVpbHRpbi9jbG9uZS5jOjExNAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTUKKyM6IGFyY2hpdmUuYzo0NzkgYnVpbHRpbi9hcmNoaXZlLmM6OTEgYnVpbHRpbi9jbG9uZS5jOjExMyBidWlsdGluL2Nsb25lLmM6MTE2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxMQogbXNnaWQgInJlcG8iCiBtc2dzdHIgImFya2l2IgogCi0jOiBhcmNoaXZlLmM6NDc2IGJ1aWx0aW4vYXJjaGl2ZS5jOjkxCisjOiBhcmNoaXZlLmM6NDgwIGJ1aWx0aW4vYXJjaGl2ZS5jOjkyCiBtc2dpZCAicmV0cmlldmUgdGhlIGFyY2hpdmUgZnJvbSByZW1vdGUgcmVwb3NpdG9yeSA8cmVwbz4iCiBtc2dzdHIgImjDpG10YSBhcmtpdmV0IGZyw6VuIGZqw6RycmFya2l2ZXQgPGFya2l2PiIKIAotIzogYXJjaGl2ZS5jOjQ3NyBidWlsdGluL2FyY2hpdmUuYzo5MiBidWlsdGluL2RpZmZ0b29sLmM6NzE0Ci0jOiBidWlsdGluL25vdGVzLmM6NDk2CisjOiBhcmNoaXZlLmM6NDgxIGJ1aWx0aW4vYXJjaGl2ZS5jOjkzIGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTgKIG1zZ2lkICJjb21tYW5kIgogbXNnc3RyICJrb21tYW5kbyIKIAotIzogYXJjaGl2ZS5jOjQ3OCBidWlsdGluL2FyY2hpdmUuYzo5MworIzogYXJjaGl2ZS5jOjQ4MiBidWlsdGluL2FyY2hpdmUuYzo5NAogbXNnaWQgInBhdGggdG8gdGhlIHJlbW90ZSBnaXQtdXBsb2FkLWFyY2hpdmUgY29tbWFuZCIKIG1zZ3N0ciAic8O2a3bDpGcgdGlsbCBrb21tYW5kb3QgZ2l0LXVwbG9hZC1hcmNoaXZlIHDDpSBmasOkcnJlbiIKIAotIzogYXJjaGl2ZS5jOjQ4NQorIzogYXJjaGl2ZS5jOjQ4OQogbXNnaWQgIlVuZXhwZWN0ZWQgb3B0aW9uIC0tcmVtb3RlIgogbXNnc3RyICJPdsOkbnRhZCBmbGFnZ2EgLS1yZW1vdGUiCiAKLSM6IGFyY2hpdmUuYzo0ODcKKyM6IGFyY2hpdmUuYzo0OTEKIG1zZ2lkICJPcHRpb24gLS1leGVjIGNhbiBvbmx5IGJlIHVzZWQgdG9nZXRoZXIgd2l0aCAtLXJlbW90ZSIKIG1zZ3N0ciAiRmxhZ2dhbiAtLWV4ZWMga2FuIGVuZGFzdCBhbnbDpG5kYXMgdGlsbHNhbW1hbnMgbWVkIC0tcmVtb3RlIgogCi0jOiBhcmNoaXZlLmM6NDg5CisjOiBhcmNoaXZlLmM6NDkzCiBtc2dpZCAiVW5leHBlY3RlZCBvcHRpb24gLS1vdXRwdXQiCiBtc2dzdHIgIk92w6RudGFkIGZsYWdnYSAtLW91dHB1dCIKIAotIzogYXJjaGl2ZS5jOjUxMQorIzogYXJjaGl2ZS5jOjUxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmtub3duIGFyY2hpdmUgZm9ybWF0ICclcyciCiBtc2dzdHIgIk9rw6RudCBhcmtpdmZvcm1hdCBcIiVzXCIiCiAKLSM6IGFyY2hpdmUuYzo1MTgKKyM6IGFyY2hpdmUuYzo1MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXJndW1lbnQgbm90IHN1cHBvcnRlZCBmb3IgZm9ybWF0ICclcyc6IC0lZCIKIG1zZ3N0ciAiQXJndW1lbnRldCBzdMO2ZCBpbnRlIGbDtnIgZm9ybWF0ZXQgXCIlc1wiOiAtJWQiCiAKLSM6IGFyY2hpdmUtdGFyLmM6MTI1IGFyY2hpdmUtemlwLmM6MzQ1CisjOiBhcmNoaXZlLXRhci5jOjEyNSBhcmNoaXZlLXppcC5jOjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RyZWFtIGJsb2IgJXMiCiBtc2dzdHIgImthbiBpbnRlIHN0csO2bW1hIGJsb2I6ZW4gJXMiCiAKLSM6IGFyY2hpdmUtdGFyLmM6MjYwIGFyY2hpdmUtemlwLmM6MzYzCisjOiBhcmNoaXZlLXRhci5jOjI2NiBhcmNoaXZlLXppcC5jOjM2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnN1cHBvcnRlZCBmaWxlIG1vZGU6IDAlbyAoU0hBMTogJXMpIgogbXNnc3RyICJmaWxlbnMgbMOkZ2Ugc3TDtmRzIGVqOiAwJW8gKFNIQTE6ICVzKSIKIAotIzogYXJjaGl2ZS10YXIuYzoyODcgYXJjaGl2ZS16aXAuYzozNTMKKyM6IGFyY2hpdmUtdGFyLmM6MjkzIGFyY2hpdmUtemlwLmM6MzU5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICVzIgogbXNnc3RyICJrYW4gaW50ZSBsw6RzYSAlcyIKIAotIzogYXJjaGl2ZS10YXIuYzo0NTgKKyM6IGFyY2hpdmUtdGFyLmM6NDY1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBzdGFydCAnJXMnIGZpbHRlciIKIG1zZ3N0ciAia3VuZGUgaW50ZSBzdGFydGEgZmlsdHJldCBcIiVzXCIiCiAKLSM6IGFyY2hpdmUtdGFyLmM6NDYxCisjOiBhcmNoaXZlLXRhci5jOjQ2OAogbXNnaWQgInVuYWJsZSB0byByZWRpcmVjdCBkZXNjcmlwdG9yIgogbXNnc3RyICJrYW4gaW50ZSBvbWRpcmlnZXJhIGhhbmR0YWciCiAKLSM6IGFyY2hpdmUtdGFyLmM6NDY4CisjOiBhcmNoaXZlLXRhci5jOjQ3NQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGZpbHRlciByZXBvcnRlZCBlcnJvciIKIG1zZ3N0ciAiZmlsdHJldCBcIiVzXCIgcmFwcG9ydGVyYWRlIGZlbCIKIAotIzogYXJjaGl2ZS16aXAuYzozMTQKKyM6IGFyY2hpdmUtemlwLmM6MzE5CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggaXMgbm90IHZhbGlkIFVURi04OiAlcyIKIG1zZ3N0ciAic8O2a3bDpGdlbiDDpHIgaW50ZSBnaWx0aWcgVVRGLTg6ICVzIgogCi0jOiBhcmNoaXZlLXppcC5jOjMxOAorIzogYXJjaGl2ZS16aXAuYzozMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCB0b28gbG9uZyAoJWQgY2hhcnMsIFNIQTE6ICVzKTogJXMiCiBtc2dzdHIgInPDtmt2w6RnZW4gZsO2ciBsw6VuZyAoJWQgdGVja2VuLCBTSEExOiAlcyk6ICVzIgogCi0jOiBhcmNoaXZlLXppcC5jOjQ3NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNworIzogYXJjaGl2ZS16aXAuYzo0ODAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMzEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVmbGF0ZSBlcnJvciAoJWQpIgogbXNnc3RyICJmZWwgaSBkZWZsYXRlICglZCkiCiAKLSM6IGFyY2hpdmUtemlwLmM6NjA5CisjOiBhcmNoaXZlLXppcC5jOjYxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aW1lc3RhbXAgdG9vIGxhcmdlIGZvciB0aGlzIHN5c3RlbTogJTxQUkl1TUFYPiIKIG1zZ3N0ciAidGlkc3N0w6RtcGVsbiBmw7ZyIHN0b3IgZsO2ciBkZXR0YSBzeXN0ZW06ICU8UFJJdU1BWD4iCkBAIC05MTUsNiArMTYyNSwxMSBAQAogbXNnaWQgIiUuKnMgaXMgbm90IGEgdmFsaWQgYXR0cmlidXRlIG5hbWUiCiBtc2dzdHIgIiUtKnMgw6RyIGludGUgZXR0IGdpbHRpZ3QgbmFtbiBww6UgYXR0cmlidXQiCiAKKyM6IGF0dHIuYzozNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgbm90IGFsbG93ZWQ6ICVzOiVkIgorbXNnc3RyICIlcyBpbnRlIHRpbGzDpXRldDogJXM6JWQiCisKICM6IGF0dHIuYzo0MDkKIG1zZ2lkICIiCiAiTmVnYXRpdmUgcGF0dGVybnMgYXJlIGlnbm9yZWQgaW4gZ2l0IGF0dHJpYnV0ZXNcbiIKQEAgLTkyOCwxNyArMTY0MywxNyBAQAogbXNnaWQgIkJhZGx5IHF1b3RlZCBjb250ZW50IGluIGZpbGUgJyVzJzogJXMiCiBtc2dzdHIgIkZlbGFrdGlndCBjaXRlcmF0IGlubmVow6VsbCBpIGZpbGVuIFwiJXNcIjogJXMiCiAKLSM6IGJpc2VjdC5jOjY3NgorIzogYmlzZWN0LmM6Njc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIldlIGNhbm5vdCBiaXNlY3QgbW9yZSFcbiIKIG1zZ3N0ciAiRGV0IGZpbm5zIGludGUgbWVyIGF0dCBnw7ZyYSBcImJpc2VjdFwiIHDDpSFcbiIKIAotIzogYmlzZWN0LmM6NzMwCisjOiBiaXNlY3QuYzo3NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgY29tbWl0IG5hbWUgJXMiCiBtc2dzdHIgIk5hbW5ldCBww6UgaW5jaGVja25pbmdlbiDDpHIgaW50ZSBnaWx0aWd0OiAlcyIKIAotIzogYmlzZWN0LmM6NzU0CisjOiBiaXNlY3QuYzo3NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBtZXJnZSBiYXNlICVzIGlzIGJhZC5cbiIKQEAgLTk0Nyw3ICsxNjYyLDcgQEAKICJTYW1tYW5zbGFnbmluZ3NiYXNlbiAlcyDDpHIgdHJhc2lnLlxuIgogIkRldCBiZXR5ZGVyIGF0dCBmZWxldCBoYXIgcsOkdHRhdHMgbWVsbGFuICVzIG9jaCBbJXNdLlxuIgogCi0jOiBiaXNlY3QuYzo3NTkKKyM6IGJpc2VjdC5jOjc3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIG1lcmdlIGJhc2UgJXMgaXMgbmV3LlxuIgpAQCAtOTU2LDcgKzE2NzEsNyBAQAogIlNhbW1hbnNsYWduaW5nc2Jhc2VuICVzIMOkciBueS5cbiIKICJFZ2Vuc2thcGVuIGhhciDDpG5kcmF0cyBtZWxsYW4gJXMgb2NoIFslc10uXG4iCiAKLSM6IGJpc2VjdC5jOjc2NAorIzogYmlzZWN0LmM6NzgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgbWVyZ2UgYmFzZSAlcyBpcyAlcy5cbiIKQEAgLTk2NSw3ICsxNjgwLDcgQEAKICJTYW1tYW5zbGFnbmluZ3NiYXNlbiAlcyDDpHIgJXMuXG4iCiAiRGV0IGJldHlkZXIgYXR0IGRlbiBmw7Zyc3RhIFwiJXNcIiBpbmNoZWNrbmluZ2VuIMOkciBtZWxsYW4gJXMgb2NoIFslc10uXG4iCiAKLSM6IGJpc2VjdC5jOjc3MgorIzogYmlzZWN0LmM6Nzg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTb21lICVzIHJldnMgYXJlIG5vdCBhbmNlc3RvcnMgb2YgdGhlICVzIHJldi5cbiIKQEAgLTk3Niw3ICsxNjkxLDcgQEAKICJnaXQgYmlzZWN0IGthbiBpbnRlIGZ1bmdlcmEga29ycmVrdCBpIGRldHRhIGZhbGwuXG4iCiAiS2Fuc2tlIGR1IHNrcmV2IGZlbCAlcy0gb2NoICVzLXJldmlzaW9uZXI/XG4iCiAKLSM6IGJpc2VjdC5jOjc4NQorIzogYmlzZWN0LmM6ODAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ0aGUgbWVyZ2UgYmFzZSBiZXR3ZWVuICVzIGFuZCBbJXNdIG11c3QgYmUgc2tpcHBlZC5cbiIKQEAgLTk4OCwzNiArMTcwMywzNiBAQAogIiVzLlxuIgogIlZpIGZvcnRzw6R0dGVyIMOkbmTDpS4iCiAKLSM6IGJpc2VjdC5jOjgxOAorIzogYmlzZWN0LmM6ODQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJpc2VjdGluZzogYSBtZXJnZSBiYXNlIG11c3QgYmUgdGVzdGVkXG4iCiBtc2dzdHIgIkJpc2VjdDogZW4gc2FtbWFuc2xhZ25pbmdzYmFzIG3DpXN0ZSB0ZXN0YXNcbiIKIAotIzogYmlzZWN0LmM6ODU4CisjOiBiaXNlY3QuYzo4OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSAlcyByZXZpc2lvbiBpcyBuZWVkZWQiCiBtc2dzdHIgImVuICVzLXJldmlzaW9uIGJlaMO2dnMiCiAKLSM6IGJpc2VjdC5jOjg3NyBidWlsdGluL25vdGVzLmM6MTc3IGJ1aWx0aW4vdGFnLmM6MjM3CisjOiBiaXNlY3QuYzo5MjAgYnVpbHRpbi9ub3Rlcy5jOjE3NyBidWlsdGluL3RhZy5jOjI1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGZpbGUgJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSBmaWxlbiBcIiVzXCIiCiAKLSM6IGJpc2VjdC5jOjkyOCBidWlsdGluL21lcmdlLmM6MTM4CisjOiBiaXNlY3QuYzo5NjYgYnVpbHRpbi9tZXJnZS5jOjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBmaWxlICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgbMOkc2EgZmlsZW4gXCIlc1wiIgogCi0jOiBiaXNlY3QuYzo5NTgKKyM6IGJpc2VjdC5jOjk5NwogbXNnaWQgInJlYWRpbmcgYmlzZWN0IHJlZnMgZmFpbGVkIgogbXNnc3RyICJtaXNzbHlja2FkZXMgbMOkc2EgYmlzZWN0LXJlZmVyZW5zZXIiCiAKLSM6IGJpc2VjdC5jOjk3NworIzogYmlzZWN0LmM6MTAxOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB3YXMgYm90aCAlcyBhbmQgJXNcbiIKIG1zZ3N0ciAiJXMgdmFyIGLDpWRlICVzIG9jaCAlc1xuIgogCi0jOiBiaXNlY3QuYzo5ODUKKyM6IGJpc2VjdC5jOjEwMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vIHRlc3RhYmxlIGNvbW1pdCBmb3VuZC5cbiIKQEAgLTEwMjYsNyArMTc0MSw3IEBACiAiSW5nZW4gdGVzdGJhciBpbmNoZWNrbmluZyBoaXR0YWRlcy5cbiIKICJLYW5za2UgZHUgc3RhcnRhZGUgbWVkIGZlbGFrdGlnYSBzw7ZrdsOkZ3NwYXJhbWV0cmFyP1xuIgogCi0jOiBiaXNlY3QuYzoxMDA0CisjOiBiaXNlY3QuYzoxMDU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIihyb3VnaGx5ICVkIHN0ZXApIgogbXNnaWRfcGx1cmFsICIocm91Z2hseSAlZCBzdGVwcykiCkBAIC0xMDM2LDUzICsxNzUxLDUzIEBACiAjLiBUUkFOU0xBVE9SUzogdGhlIGxhc3QgJXMgd2lsbCBiZSByZXBsYWNlZCB3aXRoICIocm91Z2hseSAlZAogIy4gc3RlcHMpIiB0cmFuc2xhdGlvbi4KICMuCi0jOiBiaXNlY3QuYzoxMDEwCisjOiBiaXNlY3QuYzoxMDYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJpc2VjdGluZzogJWQgcmV2aXNpb24gbGVmdCB0byB0ZXN0IGFmdGVyIHRoaXMgJXNcbiIKIG1zZ2lkX3BsdXJhbCAiQmlzZWN0aW5nOiAlZCByZXZpc2lvbnMgbGVmdCB0byB0ZXN0IGFmdGVyIHRoaXMgJXNcbiIKIG1zZ3N0clswXSAiQmlzZWN0OiAlZCByZXZpc2lvbiBrdmFyIGF0dCB0ZXN0YSBlZnRlciBkZW5uYSAlc1xuIgogbXNnc3RyWzFdICJCaXNlY3Q6ICVkIHJldmlzaW9uZXIga3ZhciBhdHQgdGVzdGEgZWZ0ZXIgZGVubmEgJXNcbiIKIAotIzogYmxhbWUuYzoxNzg3CisjOiBibGFtZS5jOjI3MDAKIG1zZ2lkICItLWNvbnRlbnRzIGFuZCAtLXJldmVyc2UgZG8gbm90IGJsZW5kIHdlbGwuIgogbXNnc3RyICItLWNvbnRlbnRzIG9jaCAtLXJldmVyc2UgZnVuZ2VyYXIgaW50ZSBzw6UgYnJhIHRpbGxzYW1tYW5zLiIKIAotIzogYmxhbWUuYzoxODAxCisjOiBibGFtZS5jOjI3MTQKIG1zZ2lkICJjYW5ub3QgdXNlIC0tY29udGVudHMgd2l0aCBmaW5hbCBjb21taXQgb2JqZWN0IG5hbWUiCiBtc2dzdHIgImthbiBpbnRlIGFudsOkbmRhIC0tY29udGVudHMgbWVkIG5hbW4gcMOlIHNsdXRnaWx0aWd0IGluY2hlY2tuaW5nc29iamVrdCIKIAotIzogYmxhbWUuYzoxODIyCisjOiBibGFtZS5jOjI3MzUKIG1zZ2lkICItLXJldmVyc2UgYW5kIC0tZmlyc3QtcGFyZW50IHRvZ2V0aGVyIHJlcXVpcmUgc3BlY2lmaWVkIGxhdGVzdCBjb21taXQiCiBtc2dzdHIgIiIKICItLXJldmVyc2Ugb2NoIC0tZmlyc3QtcGFyZW50IHRpbGxzYW1tYW5zIGtyw6R2ZXIgYXR0IGR1IGFuZ2VyIHNlbmFzdGUgIgogImluY2hlY2tuaW5nZW4iCiAKLSM6IGJsYW1lLmM6MTgzMSBidW5kbGUuYzoxNjIgcmVmLWZpbHRlci5jOjIwNDYgc2VxdWVuY2VyLmM6MTk2MwotIzogc2VxdWVuY2VyLmM6NDAwMiBidWlsdGluL2NvbW1pdC5jOjEwMDEgYnVpbHRpbi9sb2cuYzozNzcgYnVpbHRpbi9sb2cuYzo5MzIKLSM6IGJ1aWx0aW4vbG9nLmM6MTQwNyBidWlsdGluL2xvZy5jOjE3ODMgYnVpbHRpbi9sb2cuYzoyMDcyIGJ1aWx0aW4vbWVyZ2UuYzo0MDYKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzNyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNTIKKyM6IGJsYW1lLmM6Mjc0NCBidW5kbGUuYzoxNjcgcmVmLWZpbHRlci5jOjIyMDMgcmVtb3RlLmM6MTk0MiBzZXF1ZW5jZXIuYzoyMDA2CisjOiBzZXF1ZW5jZXIuYzo0MzU4IHN1Ym1vZHVsZS5jOjg0NyBidWlsdGluL2NvbW1pdC5jOjEwNDUgYnVpbHRpbi9sb2cuYzozODgKKyM6IGJ1aWx0aW4vbG9nLmM6OTkxIGJ1aWx0aW4vbG9nLmM6MTUyMCBidWlsdGluL2xvZy5jOjE5MjUgYnVpbHRpbi9sb2cuYzoyMjE1CisjOiBidWlsdGluL21lcmdlLmM6NDEyIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTAKICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxOTIKIG1zZ2lkICJyZXZpc2lvbiB3YWxrIHNldHVwIGZhaWxlZCIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHNrYXBhIHJldmlzaW9uc3RyYXZlcnNlcmluZyIKIAotIzogYmxhbWUuYzoxODQ5CisjOiBibGFtZS5jOjI3NjIKIG1zZ2lkICIiCiAiLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IHRvZ2V0aGVyIHJlcXVpcmUgcmFuZ2UgYWxvbmcgZmlyc3QtcGFyZW50IGNoYWluIgogbXNnc3RyICIiCiAiLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IHRpbGxzYW1tYW5zIGtyw6R2ZXIgZXR0IGludGVydmFsbCBww6UgZsO2cnN0YS1mw7Zyw6RsZGVyLSIKICJrZWRqYW4iCiAKLSM6IGJsYW1lLmM6MTg2MAorIzogYmxhbWUuYzoyNzczCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggcGF0aCAlcyBpbiAlcyIKIG1zZ3N0ciAic8O2a3bDpGdlbiAlcyBpICVzIGZpbm5zIGludGUiCiAKLSM6IGJsYW1lLmM6MTg3MQorIzogYmxhbWUuYzoyNzg0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIGJsb2IgJXMgZm9yIHBhdGggJXMiCiBtc2dzdHIgImthbiBpbnRlIGzDpHNhIG9iamVrdGV0ICVzIGbDtnIgc8O2a3bDpGdlbiAlcyIKIAotIzogYnJhbmNoLmM6NTIKKyM6IGJyYW5jaC5jOjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTEwOTUsOTIgKzE4MTAsOTIgQEAKICJmasOkcnJzcMOlcm5pbmdzaW5mb3JtYXRpb25lbiBnZW5vbSBhdHQgdXRmw7ZyYVxuIgogIlwiZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10bz0lcyVzJXNcIi4iCiAKLSM6IGJyYW5jaC5jOjY2CisjOiBicmFuY2guYzo2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3Qgc2V0dGluZyBicmFuY2ggJXMgYXMgaXRzIG93biB1cHN0cmVhbS4iCiBtc2dzdHIgIlN0w6RsbGVyIGludGUgaW4gZ3JlbmVuICVzIHNvbSBzaW4gZWdlbiB1cHBzdHLDtm1zZ3Jlbi4iCiAKLSM6IGJyYW5jaC5jOjkyCisjOiBicmFuY2guYzo5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIGJyYW5jaCAnJXMnIGZyb20gJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgIiIKICJHcmVuZW4gJXMgc3TDpGxsZGVzIGluIGF0dCBzcMOlcmEgZmrDpHJyZ3JlbmVuIFwiJXNcIiBmcsOlbiBcIiVzXCIgZ2Vub20gIgogIm9tYmFzZXJpbmcuIgogCi0jOiBicmFuY2guYzo5MworIzogYnJhbmNoLmM6OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIHJlbW90ZSBicmFuY2ggJyVzJyBmcm9tICclcycuIgogbXNnc3RyICJHcmVuZW4gJXMgc3TDpGxsZGVzIGluIGF0dCBzcMOlcmEgZmrDpHJyZ3JlbmVuIFwiJXNcIiBmcsOlbiBcIiVzXCIuIgogCi0jOiBicmFuY2guYzo5NworIzogYnJhbmNoLmM6OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIGJyYW5jaCAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAiIgogIkdyZW5lbiBcIiVzXCIgc3TDpGxsZGVzIGluIGF0dCBzcMOlcmEgZGVuIGxva2FsYSBncmVuZW4gXCIlc1wiICBnZW5vbSAiCiAib21iYXNlcmluZy4iCiAKLSM6IGJyYW5jaC5jOjk4CisjOiBicmFuY2guYzo5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycuIgogbXNnc3RyICJHcmVuZW4gXCIlc1wiIHN0w6RsbGRlcyBpbiBhdHQgc3DDpXJhIGRlbiBsb2thbGEgZ3JlbmVuIFwiJXNcIi4iCiAKLSM6IGJyYW5jaC5jOjEwMworIzogYnJhbmNoLmM6MTA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgcmVmICclcycgYnkgcmViYXNpbmcuIgogbXNnc3RyICIiCiAiR3JlbmVuIFwiJXNcIiBzdMOkbGxkZXMgaW4gYXR0IHNww6VyYSBmasOkcnJlZmVyZW5zZW4gXCIlc1wiIGdlbm9tIG9tYmFzZXJpbmcuIgogCi0jOiBicmFuY2guYzoxMDQKKyM6IGJyYW5jaC5jOjEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIHJlZiAnJXMnLiIKIG1zZ3N0ciAiR3JlbmVuIFwiJXNcIiBzdMOkbGxkZXMgaW4gYXR0IHNww6VyYSBmasOkcnJlZmVyZW5zZW4gXCIlc1wiLiIKIAotIzogYnJhbmNoLmM6MTA4CisjOiBicmFuY2guYzoxMDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIHJlZiAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAiIgogIkdyZW5lbiBcIiVzXCIgc3TDpGxsZGVzIGluIGF0dCBzcMOlcmEgZGVuIGxva2FsYSByZWZlcmVuc2VuIFwiJXNcIiBnZW5vbSAiCiAib21iYXNlcmluZy4iCiAKLSM6IGJyYW5jaC5jOjEwOQorIzogYnJhbmNoLmM6MTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCByZWYgJyVzJy4iCiBtc2dzdHIgIkdyZW5lbiBcIiVzXCIgc3TDpGxsZGVzIGluIGF0dCBzcMOlcmEgZGVuIGxva2FsYSByZWZlcmVuc2VuIFwiJXNcIi4iCiAKLSM6IGJyYW5jaC5jOjExOAorIzogYnJhbmNoLmM6MTE5CiBtc2dpZCAiVW5hYmxlIHRvIHdyaXRlIHVwc3RyZWFtIGJyYW5jaCBjb25maWd1cmF0aW9uIgogbXNnc3RyICJLYW4gaW50ZSBza3JpdmEgaW5zdMOkbGxuaW5nYXIgZsO2ciB1cHBzdHLDtm1zZ3JlbiIKIAotIzogYnJhbmNoLmM6MTU1CisjOiBicmFuY2guYzoxNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IHRyYWNraW5nOiBhbWJpZ3VvdXMgaW5mb3JtYXRpb24gZm9yIHJlZiAlcyIKIG1zZ3N0ciAiU3DDpXJhciBpbnRlOiB0dmV0eWRpZyBpbmZvcm1hdGlvbiBmw7ZyIHJlZmVyZW5zZW4gJXMiCiAKLSM6IGJyYW5jaC5jOjE4OAorIzogYnJhbmNoLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgYnJhbmNoIG5hbWUuIgogbXNnc3RyICJcIiVzXCIgw6RyIGludGUgZXR0IGdpbHRpZ3QgZ3Jlbm5hbW4uIgogCi0jOiBicmFuY2guYzoyMDcKKyM6IGJyYW5jaC5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJBIGJyYW5jaCBuYW1lZCAnJXMnIGFscmVhZHkgZXhpc3RzLiIKLW1zZ3N0ciAiRGV0IGZpbm5zIHJlZGFuIGVuIGdyZW4gc29tIGhldGVyIOKAnSVz4oCdLiIKK21zZ3N0ciAiRGV0IGZpbm5zIHJlZGFuIGVuIGdyZW4gc29tIGhldGVyIFwiJXNcIi4iCiAKLSM6IGJyYW5jaC5jOjIxMgorIzogYnJhbmNoLmM6MjEzCiBtc2dpZCAiQ2Fubm90IGZvcmNlIHVwZGF0ZSB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJLYW4gaW50ZSB0dmluZ2EgdXBwZGF0ZXJpbmcgYXYgYWt0dWVsbCBncmVuLiIKIAotIzogYnJhbmNoLmM6MjMyCisjOiBicmFuY2guYzoyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHNldHVwIHRyYWNraW5nIGluZm9ybWF0aW9uOyBzdGFydGluZyBwb2ludCAnJXMnIGlzIG5vdCBhIGJyYW5jaC4iCiBtc2dzdHIgIkthbiBpbnRlIHN0w6RsbGEgaW4gc3DDpXJuaW5nOyBzdGFydHB1bmt0ZW4gXCIlc1wiIMOkciBpbnRlIGVuIGdyZW4uIgogCi0jOiBicmFuY2guYzoyMzQKKyM6IGJyYW5jaC5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgcmVxdWVzdGVkIHVwc3RyZWFtIGJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJkZW4gZWZ0ZXJmcsOlZ2FkZSB1cHBzdHLDtm1zZ3JlbmVuIFwiJXNcIiBmaW5ucyBpbnRlIgogCi0jOiBicmFuY2guYzoyMzYKKyM6IGJyYW5jaC5jOjIzNwogbXNnaWQgIiIKICJcbiIKICJJZiB5b3UgYXJlIHBsYW5uaW5nIG9uIGJhc2luZyB5b3VyIHdvcmsgb24gYW4gdXBzdHJlYW1cbiIKQEAgLTExOTYsMzEgKzE5MTEsMzEgQEAKICJzb20gcmVkYW4gZmlubnMgcMOlIGZqw6RycmVuIGthbiBkdSBiZWjDtnZhIGvDtnJhIFwiZ2l0IGZldGNoXCJcbiIKICJmw7ZyIGF0dCBow6RtdGEgZGVuLlxuIgogIlxuIgotIk9tIGR1IGhhciB0w6Rua3Qgc8OkbmRhIGluIGVuIG55IGxva2FsIGdyZW4gc29tIHNrYWxsXG4iCisiT20gZHUgaGFyIHTDpG5rdCBzw6RuZGEgaW4gZW4gbnkgbG9rYWwgZ3JlbiBzb20gc2thXG4iCiAic3DDpXJhIGRlc3MgZmrDpHJybW90c3ZhcmlnaGV0IGthbiBkdSBhbnbDpG5kYSBcImdpdCBwdXNoIC11XCJcbiIKICJmw7ZyIGF0dCBzdMOkbGxhIGluIHVwcHN0csO2bXNrb25maWd1cmF0aW9uZW4gbsOkciBkdSBzw6RuZGVyIGluLiIKIAotIzogYnJhbmNoLmM6Mjc5CisjOiBicmFuY2guYzoyODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgb2JqZWN0IG5hbWU6ICclcycuIgogbXNnc3RyICJPYmpla3RuYW1uZXQgw6RyIGludGUgZ2lsdGlndDogXCIlc1wiLiIKIAotIzogYnJhbmNoLmM6Mjk5CisjOiBicmFuY2guYzozMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQW1iaWd1b3VzIG9iamVjdCBuYW1lOiAnJXMnLiIKIG1zZ3N0ciAiT2JqZWt0bmFtbmV0IMOkciB0dmV0eWRpZ3Q6IFwiJXNcIi4iCiAKLSM6IGJyYW5jaC5jOjMwNAorIzogYnJhbmNoLmM6MzA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIGJyYW5jaCBwb2ludDogJyVzJy4iCi1tc2dzdHIgIkF2Z3JlbmluZ3NwdW5rdGVuIMOkciBpbnRlIGdpbHRpZzog4oCdJXPigJ0uIgorbXNnc3RyICJBdmdyZW5pbmdzcHVua3RlbiDDpHIgaW50ZSBnaWx0aWc6IFwiJXNcIi4iCiAKLSM6IGJyYW5jaC5jOjM1OAorIzogYnJhbmNoLmM6MzY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxyZWFkeSBjaGVja2VkIG91dCBhdCAnJXMnIgogbXNnc3RyICJcIiVzXCIgw6RyIHJlZGFuIHV0Y2hlY2thZCBww6UgXCIlc1wiIgogCi0jOiBicmFuY2guYzozODEKKyM6IGJyYW5jaC5jOjM4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJIRUFEIG9mIHdvcmtpbmcgdHJlZSAlcyBpcyBub3QgdXBkYXRlZCIKIG1zZ3N0ciAiSEVBRCBpIGFyYmV0c2thdGFsb2dlbiAlcyBoYXIgaW50ZSB1cHBkYXRlcmF0cyIKQEAgLTEyMzUsODYgKzE5NTAsODkgQEAKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaGVhZGVyOiAlcyVzICglZCkiCiBtc2dzdHIgIm9rw6RudCBodXZ1ZDogJXMlcyAoJWQpIgogCi0jOiBidW5kbGUuYzo5MCByZXJlcmUuYzo0ODAgcmVyZXJlLmM6NjkwIHNlcXVlbmNlci5jOjIxODIgc2VxdWVuY2VyLmM6MjcyMgotIzogYnVpbHRpbi9jb21taXQuYzo3NzQKKyM6IGJ1bmRsZS5jOjkwIHJlcmVyZS5jOjQ4MCByZXJlcmUuYzo2OTAgc2VxdWVuY2VyLmM6MjI1OCBzZXF1ZW5jZXIuYzozMDE2CisjOiBidWlsdGluL2NvbW1pdC5jOjgxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBcIiVzXCIiCiAKLSM6IGJ1bmRsZS5jOjE0MQorIzogYnVuZGxlLmM6MTQzCiBtc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyB0aGVzZSBwcmVyZXF1aXNpdGUgY29tbWl0czoiCiBtc2dzdHIgIkFya2l2ZXQgc2FrbmFyIGRlc3NhIG7DtmR2w6RuZGlnYSBpbmNoZWNrbmluZ2FyOiIKIAotIzogYnVuZGxlLmM6MTkyCisjOiBidW5kbGUuYzoxNDYKK21zZ2lkICJuZWVkIGEgcmVwb3NpdG9yeSB0byB2ZXJpZnkgYSBidW5kbGUiCittc2dzdHIgImJlaMO2dmVyIGV0dCBhcmtpdiBmw7ZyIGF0dCB2ZXJpZmllcmEgZXR0IHBha2V0IChidW5kbGUpLiIKKworIzogYnVuZGxlLmM6MTk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBidW5kbGUgY29udGFpbnMgdGhpcyByZWY6IgogbXNnaWRfcGx1cmFsICJUaGUgYnVuZGxlIGNvbnRhaW5zIHRoZXNlICVkIHJlZnM6IgogbXNnc3RyWzBdICJQYWtldGV0IChidW5kbGVuKSBpbm5laMOlbGxlciBkZW5uYSByZWZlcmVuczoiCiBtc2dzdHJbMV0gIlBha2V0ZXQgKGJ1bmRsZW4pIGlubmVow6VsbGVyIGRlc3NhICVkIHJlZmVyZW5zZXI6IgogCi0jOiBidW5kbGUuYzoxOTkKKyM6IGJ1bmRsZS5jOjIwNAogbXNnaWQgIlRoZSBidW5kbGUgcmVjb3JkcyBhIGNvbXBsZXRlIGhpc3RvcnkuIgogbXNnc3RyICJQYWtldGV0IChidW5kbGVuKSBiZXNrcml2ZXIgZW4ga29tcGxldHQgaGlzdG9yaWsuIgogCi0jOiBidW5kbGUuYzoyMDEKKyM6IGJ1bmRsZS5jOjIwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoaXMgcmVmOiIKIG1zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSByZXF1aXJlcyB0aGVzZSAlZCByZWZzOiIKIG1zZ3N0clswXSAiUGFrZXRldCAoYnVuZGxlbikga3LDpHZlciBkZW5uYSByZWZlcmVuczoiCiBtc2dzdHJbMV0gIlBha2V0ZXQgKGJ1bmRsZW4pIGtyw6R2ZXIgZGVzc2EgJWQgcmVmZXJlbnNlcjoiCiAKLSM6IGJ1bmRsZS5jOjI2NworIzogYnVuZGxlLmM6MjczCiBtc2dpZCAidW5hYmxlIHRvIGR1cCBidW5kbGUgZGVzY3JpcHRvciIKIG1zZ3N0ciAia2FuIGludGUgZHVwbGljZXJhIHBha2V0aGFuZHRhZyIKIAotIzogYnVuZGxlLmM6Mjc0CisjOiBidW5kbGUuYzoyODAKIG1zZ2lkICJDb3VsZCBub3Qgc3Bhd24gcGFjay1vYmplY3RzIgogbXNnc3RyICJLdW5kZSBpbnRlIHN0YXJ0YSBwYWNrLW9iamVjdHMiCiAKLSM6IGJ1bmRsZS5jOjI4NQorIzogYnVuZGxlLmM6MjkxCiBtc2dpZCAicGFjay1vYmplY3RzIGRpZWQiCiBtc2dzdHIgInBhY2stb2JqZWN0cyBtaXNzbHlja2FkZXMiCiAKLSM6IGJ1bmRsZS5jOjMyNworIzogYnVuZGxlLmM6MzMzCiBtc2dpZCAicmV2LWxpc3QgZGllZCIKIG1zZ3N0ciAicmV2LWxpc3QgZG9nIgogCi0jOiBidW5kbGUuYzozNzYKKyM6IGJ1bmRsZS5jOjM4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWYgJyVzJyBpcyBleGNsdWRlZCBieSB0aGUgcmV2LWxpc3Qgb3B0aW9ucyIKIG1zZ3N0ciAicmVmZXJlbnNlbiBcIiVzXCIgZXhrbHVkZXJhcyBhdiBhcmd1bWVudGVuIHRpbGwgcmV2LWxpc3QiCiAKLSM6IGJ1bmRsZS5jOjQ1NiBidWlsdGluL2xvZy5jOjE5MiBidWlsdGluL2xvZy5jOjE2ODggYnVpbHRpbi9zaG9ydGxvZy5jOjMwNAorIzogYnVuZGxlLmM6NDYxIGJ1aWx0aW4vbG9nLmM6MjAzIGJ1aWx0aW4vbG9nLmM6MTgxNCBidWlsdGluL3Nob3J0bG9nLmM6MzA2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBhcmd1bWVudDogJXMiCiBtc2dzdHIgIm9rw6RudCBhcmd1bWVudDogJXMiCiAKLSM6IGJ1bmRsZS5jOjQ2NAorIzogYnVuZGxlLmM6NDY5CiBtc2dpZCAiUmVmdXNpbmcgdG8gY3JlYXRlIGVtcHR5IGJ1bmRsZS4iCiBtc2dzdHIgIlbDpGdyYXIgc2thcGEgZXR0IHRvbXQgcGFrZXQgKGJ1bmRsZSkuIgogCi0jOiBidW5kbGUuYzo0NzQKKyM6IGJ1bmRsZS5jOjQ3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY3JlYXRlICclcyciCiBtc2dzdHIgImthbiBpbnRlIHNrYXBhIFwiJXNcIiIKIAotIzogYnVuZGxlLmM6NDk4CisjOiBidW5kbGUuYzo1MDQKIG1zZ2lkICJpbmRleC1wYWNrIGRpZWQiCiBtc2dzdHIgImluZGV4LXBhY2sgZG9nIgogCi0jOiBjb2xvci5jOjI5NgorIzogY29sb3IuYzozMjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb2xvciB2YWx1ZTogJS4qcyIKIG1zZ3N0ciAiZmVsYWt0aWd0IGbDpHJndsOkcmRlOiAlLipzIgogCi0jOiBjb21taXQuYzo1MCBzZXF1ZW5jZXIuYzoyNTI4IGJ1aWx0aW4vYW0uYzozNzAgYnVpbHRpbi9hbS5jOjQxNAotIzogYnVpbHRpbi9hbS5jOjEzOTAgYnVpbHRpbi9hbS5jOjIwMjUgYnVpbHRpbi9yZXBsYWNlLmM6Mzc2Ci0jOiBidWlsdGluL3JlcGxhY2UuYzo0NDgKKyM6IGNvbW1pdC5jOjUxIHNlcXVlbmNlci5jOjI3MTkgYnVpbHRpbi9hbS5jOjM1OSBidWlsdGluL2FtLmM6NDAzCisjOiBidWlsdGluL2FtLmM6MTM3MSBidWlsdGluL2FtLmM6MjAxNCBidWlsdGluL3JlcGxhY2UuYzo0NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthICVzIgogCi0jOiBjb21taXQuYzo1MgorIzogY29tbWl0LmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgJXMgaXMgbm90IGEgY29tbWl0ISIKIG1zZ3N0ciAiJXMgJXMgw6RyIGludGUgZW4gaW5jaGVja25pbmchIgpAQCAtMTMzOSwyOSArMjA1NywyOSBAQAogIlNsw6UgYXYgZGV0dGEgbWVkZGVsYW5kZSBnZW5vbSBhdHQgc2tyaXZhXG4iCiAiXCJnaXQgY29uZmlnIGFkdmljZS5ncmFmdEZpbGVEZXByZWNhdGVkIGZhbHNlXCIiCiAKLSM6IGNvbW1pdC5jOjExMTUKKyM6IGNvbW1pdC5jOjExNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29tbWl0ICVzIGhhcyBhbiB1bnRydXN0ZWQgR1BHIHNpZ25hdHVyZSwgYWxsZWdlZGx5IGJ5ICVzLiIKIG1zZ3N0ciAiIgogIkluY2hlY2tuaW5nZW4gJXMgaGFyIGVuIG9iZXRyb2RkIEdQRy1zaWduYXR1ciBzb20gcMOlc3TDpXMgdmFyYSBnam9yZCBhdiAlcy4iCiAKLSM6IGNvbW1pdC5jOjExMTgKKyM6IGNvbW1pdC5jOjExNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29tbWl0ICVzIGhhcyBhIGJhZCBHUEcgc2lnbmF0dXJlIGFsbGVnZWRseSBieSAlcy4iCiBtc2dzdHIgIiIKICJJbmNoZWNrbmluZ2VuICVzIGhhciBlbiBmZWxha3RpZyBHUEctc2lnbmF0dXIgc29tIHDDpXN0w6VzIHZhcmEgZ2pvcmQgYXYgJXMuIgogCi0jOiBjb21taXQuYzoxMTIxCisjOiBjb21taXQuYzoxMTYwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIGEgR1BHIHNpZ25hdHVyZS4iCiBtc2dzdHIgIkluY2hlY2tuaW5nICVzIGhhciBpbnRlIG7DpWdvbiBHUEctc2lnbmF0dXIuIgogCi0jOiBjb21taXQuYzoxMTI0CisjOiBjb21taXQuYzoxMTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBoYXMgYSBnb29kIEdQRyBzaWduYXR1cmUgYnkgJXNcbiIKIG1zZ3N0ciAiSW5jaGVja25pbmdlbiAlcyBoYXIgZW4ga29ycmVrdCBHUEctc2lnbmF0dXIgYXYgJXNcbiIKIAotIzogY29tbWl0LmM6MTM3OAorIzogY29tbWl0LmM6MTQxNwogbXNnaWQgIiIKICJXYXJuaW5nOiBjb21taXQgbWVzc2FnZSBkaWQgbm90IGNvbmZvcm0gdG8gVVRGLTguXG4iCiAiWW91IG1heSB3YW50IHRvIGFtZW5kIGl0IGFmdGVyIGZpeGluZyB0aGUgbWVzc2FnZSwgb3Igc2V0IHRoZSBjb25maWdcbiIKQEAgLTEzNzEsOTYgKzIwODksMjc0IEBACiAiVXBwZGF0ZXJhIGRldCBlZnRlciBhdHQgaGEgcsOkdHRhdCBtZWRkZWxhbmRldCwgZWxsZXIgw6RuZHJhIHZhcmlhYmVsblxuIgogImkxOG4uY29tbWl0ZW5jb2RpbmcgdGlsbCBkZW4gdGVja2Vua29kbmluZyBzb20gYW52w6RuZHMgaSBkaXR0IHByb2pla3QuXG4iCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjEwOAotIywgYy1mb3JtYXQKLW1zZ2lkICJncmFwaCBmaWxlICVzIGlzIHRvbyBzbWFsbCIKLW1zZ3N0ciAiZ3JhZmZpbGVuICVzIMOkciBmw7ZyIGxpdGVuIgotCi0jOiBjb21taXQtZ3JhcGguYzoxMTUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ3JhcGggc2lnbmF0dXJlICVYIGRvZXMgbm90IG1hdGNoIHNpZ25hdHVyZSAlWCIKLW1zZ3N0ciAiZ3JhZnNpZ25hdHVyZW4gJVggc3TDpG1tZXIgaW50ZSBtZWQgc2lnbmF0dXJlbiAlWCIKLQogIzogY29tbWl0LWdyYXBoLmM6MTIyCi0jLCBjLWZvcm1hdAotbXNnaWQgImdyYXBoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKLW1zZ3N0ciAiZ3JhZnZlcnNpb25lbiAlWCBzdMOkbW1lciBpbnRlIG1lZCB2ZXJzaW9uZW4gJVgiCi0KLSM6IGNvbW1pdC1ncmFwaC5jOjEyOQotIywgYy1mb3JtYXQKLW1zZ2lkICJoYXNoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKLW1zZ3N0ciAiaGFzaC12ZXJzaW9uZW4gJVggc3TDpG1tZXIgaW50ZSBtZWQgdmVyc2lvbmVuICVYIgotCi0jOiBjb21taXQtZ3JhcGguYzoxNTMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW1wcm9wZXIgY2h1bmsgb2Zmc2V0ICUwOHglMDh4IgotbXNnc3RyICJmZWxha3RpZ3Qgb2Zmc2V0IGbDtnIgc3R5Y2tlICUwOHglMDh4IgorbXNnaWQgImNvbW1pdC1ncmFwaCBmaWxlIGlzIHRvbyBzbWFsbCIKK21zZ3N0ciAiaW5jaGVja25pbmdzZ3JhZmZpbGVuICVzIMOkciBmw7ZyIGxpdGVuIgogCiAjOiBjb21taXQtZ3JhcGguYzoxODkKICMsIGMtZm9ybWF0Ci1tc2dpZCAiY2h1bmsgaWQgJTA4eCBhcHBlYXJzIG11bHRpcGxlIHRpbWVzIgotbXNnc3RyICJzdHlja2UtaWQgJTA4eCBmw7ZyZWtvbW1lciBmbGVyYSBnw6VuZ2VyIgorbXNnaWQgImNvbW1pdC1ncmFwaCBzaWduYXR1cmUgJVggZG9lcyBub3QgbWF0Y2ggc2lnbmF0dXJlICVYIgorbXNnc3RyICJpbmNoZWNrbmluZ3NncmFmZW5zIHNpZ25hdHVyICVYIHN0w6RtbWVyIGludGUgbWVkIHNpZ25hdHVyZW4gJVgiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjMwOAorIzogY29tbWl0LWdyYXBoLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCittc2dzdHIgImluY2hlY2tuaW5nc2dyYWZlbnMgdmVyc2lvbiAlWCBzdMOkbW1lciBpbnRlIG1lZCB2ZXJzaW9uZW4gJVgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCittc2dzdHIgImluY2hlY2tuaW5nc2dyYWZlbnMgaGFzaHZlcnNpb24gJVggc3TDpG1tZXIgaW50ZSBtZWQgdmVyc2lvbmVuICVYIgorCisjOiBjb21taXQtZ3JhcGguYzoyMjYKK21zZ2lkICJjb21taXQtZ3JhcGggY2h1bmsgbG9va3VwIHRhYmxlIGVudHJ5IG1pc3Npbmc7IGZpbGUgbWF5IGJlIGluY29tcGxldGUiCittc2dzdHIgIiIKKyJpbmNoZWNrbmluZ3NncmFmZW4gc2FrbmFyIHBvc3QgaSBzdHlja2V1cHBzbGFnbmluZ3N0YWJlbGw7IGZpbGVuIGthbiB2YXJhICIKKyJvZnVsbHN0w6RuZGlnIgorCisjOiBjb21taXQtZ3JhcGguYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGltcHJvcGVyIGNodW5rIG9mZnNldCAlMDh4JTA4eCIKK21zZ3N0ciAiZmVsYWt0aWd0IG9mZnNldCBmw7ZyIHN0eWNrZSAlMDh4JTA4eCBpIGluY2hlY2tuaW5nc2dyYWZmaWxlbiIKKworIzogY29tbWl0LWdyYXBoLmM6MjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBjaHVuayBpZCAlMDh4IGFwcGVhcnMgbXVsdGlwbGUgdGltZXMiCittc2dzdHIgImluY2hlY2tuaW5nc2dyYWZlbnMgc3R5Y2tlLWlkICUwOHggZsO2cmVrb21tZXIgZmxlcmEgZ8OlbmdlciIKKworIzogY29tbWl0LWdyYXBoLmM6MzQzCittc2dpZCAiY29tbWl0LWdyYXBoIGhhcyBubyBiYXNlIGdyYXBocyBjaHVuayIKK21zZ3N0ciAiaW5jaGVja25pbmdzZ3JhZmVuIGhhciBpbmdhIGJhcy1ncmFmLXN0eWNrZW4iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjM1MworbXNnaWQgImNvbW1pdC1ncmFwaCBjaGFpbiBkb2VzIG5vdCBtYXRjaCIKK21zZ3N0ciAiaW5jaGVja25pbmdzZ3JhZmVucyBrZWRqYSBzdMOkbW1lciBpbnRlIgorCisjOiBjb21taXQtZ3JhcGguYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21taXQtZ3JhcGggY2hhaW46IGxpbmUgJyVzJyBub3QgYSBoYXNoIgorbXNnc3RyICJvZ2lsdGlnIGluY2hlY2tpbmdzZ3JhZmtlZGphOiByYWQgXCIlc1wiIMOkciBpbnRlIGV0dCBoYXNoLXbDpHJkZSIKKworIzogY29tbWl0LWdyYXBoLmM6NDI1Cittc2dpZCAidW5hYmxlIHRvIGZpbmQgYWxsIGNvbW1pdC1ncmFwaCBmaWxlcyIKK21zZ3N0ciAia2FuIGludGUgaGl0dGEgYWxsYSBpbmNoZWNraW5nc2dyYWZmaWxlciIKKworIzogY29tbWl0LWdyYXBoLmM6NTU4IGNvbW1pdC1ncmFwaC5jOjYxOAorbXNnaWQgImludmFsaWQgY29tbWl0IHBvc2l0aW9uLiBjb21taXQtZ3JhcGggaXMgbGlrZWx5IGNvcnJ1cHQiCittc2dzdHIgIm9naWx0aWcgaW5jaGVja25pbmdzcG9zaXRpb24uIGluY2hlY2tuaW5nc2dyYWZlbiDDpHIgdHJvbGlndHZpcyB0cmFzaWciCisKKyM6IGNvbW1pdC1ncmFwaC5jOjU3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZmluZCBjb21taXQgJXMiCiBtc2dzdHIgImt1bmRlIGludGUgaGl0dGEgaW5jaGVja25pbmdlbiAlcyIKIAotIzogY29tbWl0LWdyYXBoLmM6NjE3IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjY1MgorIzogY29tbWl0LWdyYXBoLmM6ODUyIGJ1aWx0aW4vYW0uYzoxMjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21taXQgJXMiCittc2dzdHIgImt1bmRlIGludGUgdG9sa2EgaW5jaGVja25pbmdlbiAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTAxMSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdldCB0eXBlIG9mIG9iamVjdCAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBow6RtdGEgdHlwIGbDtnIgb2JqZWt0ZXQgJXMiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjY1MQotbXNnaWQgIkFubm90YXRpbmcgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCi1tc2dzdHIgIkRla29yZXJhciBpbmNoZWNrbmluZ2FyIGkgaW5jaGVja25pbmdzZ3JhZiIKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNDMKK21zZ2lkICJMb2FkaW5nIGtub3duIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJMw6RzZXIgaW4ga8OkbmRhIGluY2hlY2tuaW5nYXIgaSBpbmNoZWNrbmluZ3NncmFmIgogCi0jOiBjb21taXQtZ3JhcGguYzo2OTEKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNjAKK21zZ2lkICJFeHBhbmRpbmcgcmVhY2hhYmxlIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJFeHBhbmRlcmFyIG7DpWJhcmEgaW5jaGVja25pbmdhciBpIGluY2hlY2tuaW5nc2dyYWYiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNzkKK21zZ2lkICJDbGVhcmluZyBjb21taXQgbWFya3MgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJSZW5zYXIgaW5jaGVja25pbmdzbcOkcmtlbiBpIGluY2hlY2tuaW5nc2dyYWYiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwOTgKIG1zZ2lkICJDb21wdXRpbmcgY29tbWl0IGdyYXBoIGdlbmVyYXRpb24gbnVtYmVycyIKIG1zZ3N0ciAiQmVyw6RrbmFyIGdlbmVyYXRpb25zdsOkcmRlbiBmw7ZyIGluY2hlY2tuaW5nc2dyYWYiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgwMyBjb21taXQtZ3JhcGguYzo4MjYgY29tbWl0LWdyYXBoLmM6ODUyCi1tc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGgiCi1tc2dzdHIgIlPDtmtlciBpbmNoZWNrbmluZ2FyIGbDtnIgaW5jaGVja2luZ3NncmFmIgorIzogY29tbWl0LWdyYXBoLmM6MTE3MworIywgYy1mb3JtYXQKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrIgorbXNnaWRfcGx1cmFsICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrcyIKK21zZ3N0clswXSAiU8O2a2VyIGluY2hlY2tuaW5nYXIgZsO2ciBpbmNoZWNraW5nc2dyYWYgaSAlZCBwYWtldCIKK21zZ3N0clsxXSAiU8O2a2VyIGluY2hlY2tuaW5nYXIgZsO2ciBpbmNoZWNraW5nc2dyYWYgaSAlZCBwYWtldCIKIAotIzogY29tbWl0LWdyYXBoLmM6ODEyCisjOiBjb21taXQtZ3JhcGguYzoxMTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIGFkZGluZyBwYWNrICVzIgogbXNnc3RyICJmZWwgdmlkIHRpbGzDpGdnIGF2IHBha2V0ZXQgJXMiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgxNAorIzogY29tbWl0LWdyYXBoLmM6MTE5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBvcGVuaW5nIGluZGV4IGZvciAlcyIKIG1zZ3N0ciAiZmVsIHZpZCDDtnBwbmluZyBhdiBpbmRleGV0IGbDtnIgJXMiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjg2OAorIzogY29tbWl0LWdyYXBoLmM6MTIxNAogIywgYy1mb3JtYXQKLW1zZ2lkICJ0aGUgY29tbWl0IGdyYXBoIGZvcm1hdCBjYW5ub3Qgd3JpdGUgJWQgY29tbWl0cyIKLW1zZ3N0ciAiZm9ybWF0ZXQgcMOlIGluY2hlY2tuaW5nc2dyYWZlbiBrYW4gaW50ZSB2aXNhICVkIGluY2hlY2tuaW5nYXIiCittc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggZnJvbSAlZCByZWYiCittc2dpZF9wbHVyYWwgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGZyb20gJWQgcmVmcyIKK21zZ3N0clswXSAiU8O2a2VyIGluY2hlY2tuaW5nYXIgZsO2ciBpbmNoZWNraW5nc2dyYWYgZnLDpW4gJWQgcmVmZXJlbnMiCittc2dzdHJbMV0gIlPDtmtlciBpbmNoZWNrbmluZ2FyIGbDtnIgaW5jaGVja2luZ3NncmFmIGZyw6VuICVkIHJlZmVyZW5zZXIiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjg5NQotbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgdG8gd3JpdGUgZ3JhcGgiCi1tc2dzdHIgImbDtnIgbcOlbmdhIGluY2hlY2tuaW5nYXIgZsO2ciBhdHQgc2tyaXZhIGdyYWYiCisjOiBjb21taXQtZ3JhcGguYzoxMjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tbWl0IG9iamVjdCBpZDogJXMiCittc2dzdHIgIm9naWx0aWd0IGluY2hlY2tuaW5ncy1vYmpla3QtaWQgJXMiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjkwMiBtaWR4LmM6NzY5CisjOiBjb21taXQtZ3JhcGguYzoxMjQ5Cittc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggYW1vbmcgcGFja2VkIG9iamVjdHMiCittc2dzdHIgIlPDtmtlciBpbmNoZWNrbmluZ2FyIGbDtnIgaW5jaGVja2luZ3NncmFmIGkgcGFja2FkZSBvYmpla3QiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNjQKK21zZ2lkICJDb3VudGluZyBkaXN0aW5jdCBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiUsOka25hciBvbGlrYSBpbmNoZWNrbmluZ2FyIGkgaW5jaGVja25pbmdzZ3JhZiIKKworIzogY29tbWl0LWdyYXBoLmM6MTI5NAorbXNnaWQgIkZpbmRpbmcgZXh0cmEgZWRnZXMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJTw7ZrZXIgeXR0ZXJsaWdhcmUga2FudGVyIGkgaW5jaGVja2luZ3NncmFmIgorCisjOiBjb21taXQtZ3JhcGguYzoxMzQwCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGNvcnJlY3QgbnVtYmVyIG9mIGJhc2UgZ3JhcGggaWRzIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSBrb3JyZWt0IGFudGFsIGJhcy1ncmFmLWlkOm4iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEzNzMgbWlkeC5jOjgxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgb2YgJXMiCiBtc2dzdHIgImt1bmRlIGludGUgc2thcGEgaW5sZWRhbmRlIGthdGFsb2dlciBmw7ZyICVzIgogCi0jOiBjb21taXQtZ3JhcGguYzoxMDAyCisjOiBjb21taXQtZ3JhcGguYzoxMzg1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMwNiBidWlsdGluL3JlcGFjay5jOjI0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlICclcyciCittc2dzdHIgImt1bmRlIGludGUgc2thcGEgXCIlc1wiIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIldyaXRpbmcgb3V0IGNvbW1pdCBncmFwaCBpbiAlZCBwYXNzIgorbXNnaWRfcGx1cmFsICJXcml0aW5nIG91dCBjb21taXQgZ3JhcGggaW4gJWQgcGFzc2VzIgorbXNnc3RyWzBdICJTa3JpdmVyIHV0IGluY2hlY2tuaW5nc2dyYWYgaSAlZCBwYXNzIgorbXNnc3RyWzFdICJTa3JpdmVyIHV0IGluY2hlY2tuaW5nc2dyYWYgaSAlZCBwYXNzIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDg2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gY29tbWl0LWdyYXBoIGNoYWluIGZpbGUiCittc2dzdHIgIkt1bmRlIGludGUgw7ZwcG5hIGluY2hlY2tuaW5nc2dyYWZrZWRqZWZpbGVuIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDk4Cittc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSBiYXNlIGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICJrdW5kZSBpbnRlIGJ5dGEgbmFtbiBww6UgYmFzLWluY2hlY2tpbmdzZ3JhZmZpbGVuIgorCisjOiBjb21taXQtZ3JhcGguYzoxNTE4Cittc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSB0ZW1wb3JhcnkgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgImt1bmRlIGludGUgYnl0YSBuYW1uIHDDpSB0ZW1wb3LDpHIgaW5jaGVja25pbmdzZ3JhZmZpbCIKKworIzogY29tbWl0LWdyYXBoLmM6MTYzMQorbXNnaWQgIlNjYW5uaW5nIG1lcmdlZCBjb21taXRzIgorbXNnc3RyICJTw7ZrZXIgc2FtbWFuc2xhZ25hIGluY2hlY2tuaW5nYXIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkdXBsaWNhdGUgY29tbWl0IGlkICVzIgorbXNnc3RyICJvdsOkbnRhdCBkdXBsaWNlcmF0IGluY2hlY2tuaW5ncy1pZCAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTY2NQorbXNnaWQgIk1lcmdpbmcgY29tbWl0LWdyYXBoIgorbXNnc3RyICJTbMOlciBpaG9wIGluY2hlY2tuaW5nc2dyYWYiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE4NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlIGNvbW1pdCBncmFwaCBmb3JtYXQgY2Fubm90IHdyaXRlICVkIGNvbW1pdHMiCittc2dzdHIgImZvcm1hdGV0IHDDpSBpbmNoZWNrbmluZ3NncmFmZW4ga2FuIGludGUgdmlzYSAlZCBpbmNoZWNrbmluZ2FyIgorCisjOiBjb21taXQtZ3JhcGguYzoxODU1Cittc2dpZCAidG9vIG1hbnkgY29tbWl0cyB0byB3cml0ZSBncmFwaCIKK21zZ3N0ciAiZsO2ciBtw6VuZ2EgaW5jaGVja25pbmdhciBmw7ZyIGF0dCBza3JpdmEgZ3JhZiIKKworIzogY29tbWl0LWdyYXBoLmM6MTk0NAogbXNnaWQgInRoZSBjb21taXQtZ3JhcGggZmlsZSBoYXMgaW5jb3JyZWN0IGNoZWNrc3VtIGFuZCBpcyBsaWtlbHkgY29ycnVwdCIKIG1zZ3N0ciAiIgogImZpbGVuIG1lZCBpbmNoZWNrbmluZ3NncmFmIGhhciBmZWxha3RpZyBjaGVja3N1bW1hIG9jaCDDpHIgdHJvbGlndHZpcyB0cmFzaWciCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjEwNDYKLW1zZ2lkICJWZXJpZnlpbmcgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCi1tc2dzdHIgIkJla3LDpGZ0YXIgaW5jaGVja25pbmdhciBpIGluY2hlY2tuaW5nc2dyYWYiCisjOiBjb21taXQtZ3JhcGguYzoxOTU0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IE9JRCBvcmRlcjogJXMgdGhlbiAlcyIKK21zZ3N0ciAiaW5jaGVja25pbmdzZ3JhZmVuIGhhciBmZWxha3RpZyBPSUQtb3JkbmluZzogJXMgc8OlICVzIgogCi0jOiBjb21wYXQvb2JzdGFjay5jOjQwNSBjb21wYXQvb2JzdGFjay5jOjQwNworIzogY29tbWl0LWdyYXBoLmM6MTk2NCBjb21taXQtZ3JhcGguYzoxOTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IGZhbm91dCB2YWx1ZTogZmFub3V0WyVkXSA9ICV1ICE9ICV1IgorbXNnc3RyICIiCisiaW5jaGVja25pbmdzZ3JhZmVuIGhhciBmZWxha3RpZyB1dGJyZWRuaW5nc3bDpHJkZTogZmFub3V0WyVkXSA9ICV1ICE9ICV1IgorCisjOiBjb21taXQtZ3JhcGguYzoxOTcxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSBjb21taXQgJXMgZnJvbSBjb21taXQtZ3JhcGgiCittc2dzdHIgImt1bmRlIGludGUgdG9sa2EgaW5jaGVja25pbmcgJXMgZnLDpW4gaW5jaGVja25pbmdzZ3JhZiIKKworIzogY29tbWl0LWdyYXBoLmM6MTk4OQorbXNnaWQgIlZlcmlmeWluZyBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiQmVrcsOkZnRhciBpbmNoZWNrbmluZ2FyIGkgaW5jaGVja25pbmdzZ3JhZmVuIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSBjb21taXQgJXMgZnJvbSBvYmplY3QgZGF0YWJhc2UgZm9yIGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAiIgorIm1pc3NseWNrYWRlcyB0b2xrYSBpbmNoZWNrbmluZyAlcyBmcsOlbiBvYmpla3RkYXRhYmFzZW4gZsO2ciBpbmNoZWNrbmluZ3NncmFmIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDEwCisjLCBjLWZvcm1hdAorbXNnaWQgInJvb3QgdHJlZSBPSUQgZm9yIGNvbW1pdCAlcyBpbiBjb21taXQtZ3JhcGggaXMgJXMgIT0gJXMiCittc2dzdHIgInJvdC10csOkZGV0cyBPSUQgZsO2ciBpbmNoZWNrbmluZ2VuICVzIGkgaW5jaGVja25pbmdzZ3JhZmVuIMOkciAlcyAhPSAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MjAyMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggcGFyZW50IGxpc3QgZm9yIGNvbW1pdCAlcyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiaW5jaGVja25pbmdzZ3JhZmVucyBmw7Zyw6RsZHJhbGlzdGEgZsO2ciBpbmNoZWNrbmluZ2VuICVzIMOkciBmw7ZyIGzDpW5nIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDI5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgZm9yICVzIGlzICVzICE9ICVzIgorbXNnc3RyICJpbmNoZWNrbmluZ3NncmFmZW5zIGbDtnLDpGxkZXIgZsO2ciAlcyDDpHIgJXMgIT0gJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBsaXN0IGZvciBjb21taXQgJXMgdGVybWluYXRlcyBlYXJseSIKK21zZ3N0ciAiIgorImluY2hlY2tuaW5nc2dyYWZlbnMgZsO2csOkbGRyYWxpc3RhIGbDtnIgaW5jaGVja25pbmdlbiAlcyBhdnNsdXRhcyBmw7ZyIHRpZGlndCIKKworIzogY29tbWl0LWdyYXBoLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29tbWl0LWdyYXBoIGhhcyBnZW5lcmF0aW9uIG51bWJlciB6ZXJvIGZvciBjb21taXQgJXMsIGJ1dCBub24temVybyBlbHNld2hlcmUiCittc2dzdHIgIiIKKyJpbmNoZWNrbmluZ3NncmFmZW4gaGFyIGdlbmVyYXRpb25zbnVtbWVyIG5vbGwgZsO2ciBpbmNoZWNrbmluZ2VuICVzLCBtZW4gaWNrZS0iCisibm9sbCBww6UgYW5uYW4gcGxhdHMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbW1pdC1ncmFwaCBoYXMgbm9uLXplcm8gZ2VuZXJhdGlvbiBudW1iZXIgZm9yIGNvbW1pdCAlcywgYnV0IHplcm8gZWxzZXdoZXJlIgorbXNnc3RyICIiCisiaW5jaGVja25pbmdzZ3JhZmVuIGhhciBnZW5lcmF0aW9uc251bW1lciBza2lsdCBmcsOlbiBub2xsIGbDtnIgaW5jaGVja25pbmdlbiAiCisiJXMsIG1lbiBub2xsIHDDpSBhbm5hbiBwbGF0cyIKKworIzogY29tbWl0LWdyYXBoLmM6MjA2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggZ2VuZXJhdGlvbiBmb3IgY29tbWl0ICVzIGlzICV1ICE9ICV1IgorbXNnc3RyICJpbmNoZWNrbmluZ3NncmFmZW5zIGdlbmVyYXRpb24gZsO2ciBpbmNoZWNrbmluZ2VuICVzIMOkciAldSAhPSAldSIKKworIzogY29tbWl0LWdyYXBoLmM6MjA3MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgZGF0ZSBmb3IgY29tbWl0ICVzIGluIGNvbW1pdC1ncmFwaCBpcyAlPFBSSXVNQVg+ICE9ICU8UFJJdU1BWD4iCittc2dzdHIgIiIKKyJpbmNoZWNrbmluZ3NkYXR1bWV0IGbDtnIgaW5jaGVja25pbmdlbiAlcyBpIGluY2hlY2tuaW5nc2dyYWZlbiDDpHIgJTxQUkl1TUFYPiAhIgorIj0gJTxQUkl1TUFYPiIKKworIzogY29tcGF0L29ic3RhY2suYzo0MDYgY29tcGF0L29ic3RhY2suYzo0MDgKIG1zZ2lkICJtZW1vcnkgZXhoYXVzdGVkIgogbXNnc3RyICJtaW5uZXQgc2x1dCIKIAotIzogY29uZmlnLmM6MTIzCisjOiBjb25maWcuYzoxMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4Y2VlZGVkIG1heGltdW0gaW5jbHVkZSBkZXB0aCAoJWQpIHdoaWxlIGluY2x1ZGluZ1xuIgpAQCAtMTQ3NSwzMDIgKzIzNzEsMjk2IEBACiAiXHQlc1xuIgogIkRldCBrYW4gYmVybyBww6UgY2lya3Vsw6RyYSBpbmtsdWRlcmluZ2FyLiIKIAotIzogY29uZmlnLmM6MTM5CisjOiBjb25maWcuYzoxNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGV4cGFuZCBpbmNsdWRlIHBhdGggJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBleHBhbmRlcmEgaW5rbHVkZXJpbmdzc8O2a3bDpGcgXCIlc1wiIgogCi0jOiBjb25maWcuYzoxNTAKKyM6IGNvbmZpZy5jOjE1MQogbXNnaWQgInJlbGF0aXZlIGNvbmZpZyBpbmNsdWRlcyBtdXN0IGNvbWUgZnJvbSBmaWxlcyIKIG1zZ3N0ciAicmVsYXRpdmEga29uZmlndXJlcmluZ3NpbmtsdWRlcmluZ2FyIG3DpXN0ZSBrb21tYSBmcsOlbiBmaWxlciIKIAotIzogY29uZmlnLmM6MTkwCisjOiBjb25maWcuYzoxOTcKIG1zZ2lkICJyZWxhdGl2ZSBjb25maWcgaW5jbHVkZSBjb25kaXRpb25hbHMgbXVzdCBjb21lIGZyb20gZmlsZXMiCiBtc2dzdHIgInJlbGF0aXZhIGtvbmZpZ3VyZXJpbmdzaW5rbHVkZXJpbmdzdmlsbGtvciBtw6VzdGUga29tbWEgZnLDpW4gZmlsZXIiCiAKLSM6IGNvbmZpZy5jOjM0OAorIzogY29uZmlnLmM6Mzc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImtleSBkb2VzIG5vdCBjb250YWluIGEgc2VjdGlvbjogJXMiCiBtc2dzdHIgIm55Y2tlbG4gaW5uZWjDpWxsZXIgaW50ZSBldHQgc3R5Y2tlOiAlcyIKIAotIzogY29uZmlnLmM6MzU0CisjOiBjb25maWcuYzozODIKICMsIGMtZm9ybWF0CiBtc2dpZCAia2V5IGRvZXMgbm90IGNvbnRhaW4gdmFyaWFibGUgbmFtZTogJXMiCiBtc2dzdHIgIm55Y2tlbG4gaW5uZWjDpWxsZXIgaW50ZSB2YXJpYWJlbG5hbW46ICVzIgogCi0jOiBjb25maWcuYzozNzggc2VxdWVuY2VyLmM6MjI5NgorIzogY29uZmlnLmM6NDA2IHNlcXVlbmNlci5jOjI0NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBrZXk6ICVzIgogbXNnc3RyICJmZWxha3RpZyBueWNrZWw6ICVzIgogCi0jOiBjb25maWcuYzozODQKKyM6IGNvbmZpZy5jOjQxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGtleSAobmV3bGluZSk6ICVzIgogbXNnc3RyICJvZ2lsdGlnIG55Y2tlbCAobnlyYWRzdGVja2VuKTogJXMiCiAKLSM6IGNvbmZpZy5jOjQyMCBjb25maWcuYzo0MzIKKyM6IGNvbmZpZy5jOjQ0OCBjb25maWcuYzo0NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYm9ndXMgY29uZmlnIHBhcmFtZXRlcjogJXMiCiBtc2dzdHIgImZhbHNrIGtvbmZpZ3VyZXJpbmdzcGFyYW1ldGVyOiAlcyIKIAotIzogY29uZmlnLmM6NDY3CisjOiBjb25maWcuYzo0OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYm9ndXMgZm9ybWF0IGluICVzIgogbXNnc3RyICJmZWxha3RpZ3QgZm9ybWF0IGkgJXMiCiAKLSM6IGNvbmZpZy5jOjc5MworIzogY29uZmlnLmM6ODIxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBibG9iICVzIgogbXNnc3RyICJmZWxha3RpZyBrb25maWd1cmF0aW9uc2ZpbCByYWQgJWQgaSBibG9iOmVuICVzIgogCi0jOiBjb25maWcuYzo3OTcKKyM6IGNvbmZpZy5jOjgyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gZmlsZSAlcyIKIG1zZ3N0ciAiZmVsYWt0aWcga29uZmlndXJhdGlvbnNmaWwgcmFkICVkIGkgZmlsZW4gJXMiCiAKLSM6IGNvbmZpZy5jOjgwMQorIzogY29uZmlnLmM6ODI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAiZmVsYWt0aWcga29uZmlndXJhdGlvbnNmaWwgcmFkICVkIGkgc3RhbmRhcmQgaW4iCiAKLSM6IGNvbmZpZy5jOjgwNQorIzogY29uZmlnLmM6ODMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBzdWJtb2R1bGUtYmxvYiAlcyIKIG1zZ3N0ciAiZmVsYWt0aWcga29uZmlndXJhdGlvbnNmaWwgcmFkICVkIGkgdW5kZXJtb2R1bHMtYmxvYjplbiAlcyIKIAotIzogY29uZmlnLmM6ODA5CisjOiBjb25maWcuYzo4MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGNvbW1hbmQgbGluZSAlcyIKIG1zZ3N0ciAiZmVsYWt0aWcga29uZmlndXJhdGlvbnNmaWwgcmFkICVkIGkga29tbWFuZG9yYWRlbiAlcyIKIAotIzogY29uZmlnLmM6ODEzCisjOiBjb25maWcuYzo4NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluICVzIgogbXNnc3RyICJmZWxha3RpZyBrb25maWd1cmF0aW9uc2ZpbCByYWQgJWQgaSAlcyIKIAotIzogY29uZmlnLmM6OTUyCisjOiBjb25maWcuYzo5NzgKIG1zZ2lkICJvdXQgb2YgcmFuZ2UiCiBtc2dzdHIgInV0YW5mw7ZyIGludGVydmFsbGV0IgogCi0jOiBjb25maWcuYzo5NTIKKyM6IGNvbmZpZy5jOjk3OAogbXNnaWQgImludmFsaWQgdW5pdCIKIG1zZ3N0ciAib2dpbHRpZyBlbmhldCIKIAotIzogY29uZmlnLmM6OTU4CisjOiBjb25maWcuYzo5NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcyc6ICVzIgogbXNnc3RyICJmZWxha3RpZ3QgbnVtZXJpc2t0IGtvbmZpZ3VyYXRpb25zdsOkcmRlIFwiJXNcIiBmw7ZyIFwiJXNcIjogJXMiCiAKLSM6IGNvbmZpZy5jOjk2MworIzogY29uZmlnLmM6OTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIGJsb2IgJXM6ICVzIgogbXNnc3RyICIiCiAiZmVsYWt0aWd0IG51bWVyaXNrdCBrb25maWd1cmF0aW9uc3bDpHJkZSBcIiVzXCIgZsO2ciBcIiVzXCIgaSBibG9iOmVuICVzOiAlcyIKIAotIzogY29uZmlnLmM6OTY2CisjOiBjb25maWcuYzoxMDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIGZpbGUgJXM6ICVzIgogbXNnc3RyICIiCiAiZmVsYWt0aWd0IG51bWVyaXNrdCBrb25maWd1cmF0aW9uc3bDpHJkZSBcIiVzXCIgZsO2ciBcIiVzXCIgaSBmaWxlbiAlczogJXMiCiAKLSM6IGNvbmZpZy5jOjk2OQorIzogY29uZmlnLmM6MTAwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBzdGFuZGFyZCBpbnB1dDogJXMiCiBtc2dzdHIgIiIKICJmZWxha3RpZ3QgbnVtZXJpc2t0IGtvbmZpZ3VyYXRpb25zdsOkcmRlIFwiJXNcIiBmw7ZyIFwiJXNcIiBpIHN0YW5kYXJkIGluOiAlcyIKIAotIzogY29uZmlnLmM6OTcyCisjOiBjb25maWcuYzoxMDA3CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN1Ym1vZHVsZS1ibG9iICVzOiAlcyIKIG1zZ3N0ciAiIgogImZlbGFrdGlndCBudW1lcmlza3Qga29uZmlndXJhdGlvbnN2w6RyZGUgXCIlc1wiIGbDtnIgXCIlc1wiIGkgdW5kZXJtb2R1bC1ibG9iOiIKICJlbiAlczogJXMiCiAKLSM6IGNvbmZpZy5jOjk3NQorIzogY29uZmlnLmM6MTAxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBjb21tYW5kIGxpbmUgJXM6ICVzIgogbXNnc3RyICIiCiAiZmVsYWt0aWd0IG51bWVyaXNrdCBrb25maWd1cmF0aW9uc3bDpHJkZSBcIiVzXCIgZsO2ciBcIiVzXCIgaSBrb21tYW5kb3JhZGVuICIKICIlczogJXMiCiAKLSM6IGNvbmZpZy5jOjk3OAorIzogY29uZmlnLmM6MTAxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiAlczogJXMiCiBtc2dzdHIgImZlbGFrdGlndCBudW1lcmlza3Qga29uZmlndXJhdGlvbnN2w6RyZGUgXCIlc1wiIGbDtnIgXCIlc1wiIGkgJXM6ICVzIgogCi0jOiBjb25maWcuYzoxMDczCisjOiBjb25maWcuYzoxMTA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBleHBhbmQgdXNlciBkaXIgaW46ICclcyciCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBleHBhbmRlcmEgYW52w6RuZGFya2F0YWxvZyBpOiBcIiVzXCIiCiAKLSM6IGNvbmZpZy5jOjEwODIKKyM6IGNvbmZpZy5jOjExMTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBmb3IgJyVzJyBpcyBub3QgYSB2YWxpZCB0aW1lc3RhbXAiCiBtc2dzdHIgIlwiJXNcIiBmw7ZyIFwiJXNcIiDDpHIgaW50ZSBlbiBnaWx0aWcgdGlkc3N0w6RtcGVsIgogCi0jOiBjb25maWcuYzoxMTczCisjOiBjb25maWcuYzoxMjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImFiYnJldiBsZW5ndGggb3V0IG9mIHJhbmdlOiAlZCIKIG1zZ3N0ciAiZsO2cmtvcnRuaW5nc2zDpG5nZCB1dGFuZsO2ciBpbnRlcnZhbGxldDogJWQiCiAKLSM6IGNvbmZpZy5jOjExODcgY29uZmlnLmM6MTE5OAorIzogY29uZmlnLmM6MTIyMiBjb25maWcuYzoxMjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCB6bGliIGNvbXByZXNzaW9uIGxldmVsICVkIgogbXNnc3RyICJmZWxha3RpZ3QgemxpYi1rb21wcmltZXJpbmdzZ3JhZCAlZCIKIAotIzogY29uZmlnLmM6MTI5MAorIzogY29uZmlnLmM6MTMyNQogbXNnaWQgImNvcmUuY29tbWVudENoYXIgc2hvdWxkIG9ubHkgYmUgb25lIGNoYXJhY3RlciIKIG1zZ3N0ciAiY29yZS5jb21tZW50Q2hhciBrYW4gYmFyYSB2YXJhIGV0dCB0ZWNrZW4iCiAKLSM6IGNvbmZpZy5jOjEzMjMKKyM6IGNvbmZpZy5jOjEzNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBtb2RlIGZvciBvYmplY3QgY3JlYXRpb246ICVzIgogbXNnc3RyICJmZWxha3RpZ3QgbMOkZ2UgZsO2ciBza2FwYW5kZSBhdiBvYmpla3Q6ICVzIgogCi0jOiBjb25maWcuYzoxMzk1CisjOiBjb25maWcuYzoxNDMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCB2YWx1ZSBmb3IgJXMiCiBtc2dzdHIgImZlbGZvcm1hdCB2w6RyZGUgZsO2ciAlcyIKIAotIzogY29uZmlnLmM6MTQyMQorIzogY29uZmlnLmM6MTQ1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgdmFsdWUgZm9yICVzOiAlcyIKIG1zZ3N0ciAiZmVsZm9ybWF0IHbDpHJkZSBmw7ZyICVzOiAlcyIKIAotIzogY29uZmlnLmM6MTQyMgorIzogY29uZmlnLmM6MTQ1NwogbXNnaWQgIm11c3QgYmUgb25lIG9mIG5vdGhpbmcsIG1hdGNoaW5nLCBzaW1wbGUsIHVwc3RyZWFtIG9yIGN1cnJlbnQiCiBtc2dzdHIgIm3DpXN0ZSB2YXJhIGVuIGF2IG5vdGhpbmcsIG1hdGNoaW5nLCBzaW1wbGUsIHVwc3RyZWFtIGVsbGVyIGN1cnJlbnQiCiAKLSM6IGNvbmZpZy5jOjE0ODEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzkxCisjOiBjb25maWcuYzoxNTE4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFjayBjb21wcmVzc2lvbiBsZXZlbCAlZCIKIG1zZ3N0ciAiZmVsYWt0aWcgcGFrZXRrb21wcmltZXJpbmdzZ3JhZCAlZCIKIAotIzogY29uZmlnLmM6MTYwMgorIzogY29uZmlnLmM6MTYzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbG9hZCBjb25maWcgYmxvYiBvYmplY3QgJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBrb25maWd1cmVyaW5ncy1ibG9ib2JqZWt0ZXQgXCIlc1wiIgogCi0jOiBjb25maWcuYzoxNjA1CisjOiBjb25maWcuYzoxNjQyCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSAnJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgYmxvYiIKIG1zZ3N0ciAicmVmZXJlbnNlbiBcIiVzXCIgcGVrYXIgaW50ZSBww6UgZW4gYmxvYiIKIAotIzogY29uZmlnLmM6MTYyMgorIzogY29uZmlnLmM6MTY1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBjb25maWcgYmxvYiAnJXMnIgogbXNnc3RyICJrYW4gaW50ZSBzbMOlIHVwcCBrb25maWd1cmVyaW5ncy1ibG9iZW4gXCIlc1wiIgogCi0jOiBjb25maWcuYzoxNjUyCisjOiBjb25maWcuYzoxNjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwYXJzZSAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSAlcyIKIAotIzogY29uZmlnLmM6MTcwNQorIzogY29uZmlnLmM6MTc0MwogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21tYW5kLWxpbmUgY29uZmlnIgogbXNnc3RyICJrYW4gaW50ZSB0b2xrYSBrb21tYW5kb3JhZHNrb25maWd1cmF0aW9uIgogCi0jOiBjb25maWcuYzoyMDM3CisjOiBjb25maWcuYzoyMDk3CiBtc2dpZCAidW5rbm93biBlcnJvciBvY2N1cnJlZCB3aGlsZSByZWFkaW5nIHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIgogbXNnc3RyICJva8OkbnQgZmVsIHVwcHN0b2QgdmlkIGzDpHNuaW5nIGF2IGtvbmZpZ3VyYXRpb25zZmlsZXJuYSIKIAotIzogY29uZmlnLmM6MjIwNworIzogY29uZmlnLmM6MjI2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkICVzOiAnJXMnIgogbXNnc3RyICJGZWxha3RpZ3QgJXM6IFwiJXNcIiIKIAotIzogY29uZmlnLmM6MjI1MAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmtub3duIGNvcmUudW50cmFja2VkQ2FjaGUgdmFsdWUgJyVzJzsgdXNpbmcgJ2tlZXAnIGRlZmF1bHQgdmFsdWUiCi1tc2dzdHIgIiIKLSJva8OkbnQgdsOkcmRlIFwiJXNcIiBmw7ZyIGNvcmUudW50cmFja2VkQ2FjaGU7IGFudsOkbmRlciBzdGFuZGFyZHbDpHJkZXQgXCJrZWVwXCIiCi0KLSM6IGNvbmZpZy5jOjIyNzYKKyM6IGNvbmZpZy5jOjIzMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAic3BsaXRJbmRleC5tYXhQZXJjZW50Q2hhbmdlIHZhbHVlICclZCcgc2hvdWxkIGJlIGJldHdlZW4gMCBhbmQgMTAwIgogbXNnc3RyICJ2w6RyZGV0IFwiJWRcIiBmw7ZyIHNwbGl0SW5kZXgubWF4UGVyY2VudGFnZSBib3JkZSB2YXJhIG1lbGxhbiAwIG9jaCAxMDAiCiAKLSM6IGNvbmZpZy5jOjIzMjIKKyM6IGNvbmZpZy5jOjIzNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICclcycgZnJvbSBjb21tYW5kLWxpbmUgY29uZmlnIgogbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthIHbDpHJkZXQgXCIlc1wiIGZyw6VuIGtvbW1hbmRvcmFkc2tvbmZpZ3VyYXRpb24iCiAKLSM6IGNvbmZpZy5jOjIzMjQKKyM6IGNvbmZpZy5jOjIzNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyB2YXJpYWJsZSAnJXMnIGluIGZpbGUgJyVzJyBhdCBsaW5lICVkIgogbXNnc3RyICJmZWxha3RpZyBrb25maWd1cmF0aW9uc3ZhcmlhYmVsIFwiJXNcIiBpIGZpbGVuIFwiJXNcIiBww6UgcmFkICVkIgogCi0jOiBjb25maWcuYzoyNDA1CisjOiBjb25maWcuYzoyNDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc2VjdGlvbiBuYW1lICclcyciCiBtc2dzdHIgImZlbGFrdGlndCBzZWt0aW9uc25hbW4gXCIlc1wiIgogCi0jOiBjb25maWcuYzoyNDM3CisjOiBjb25maWcuYzoyNDczCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGhhcyBtdWx0aXBsZSB2YWx1ZXMiCiBtc2dzdHIgIiVzIGhhciBmbGVyYSB2w6RyZGVuIgogCi0jOiBjb25maWcuYzoyNDY2CisjOiBjb25maWcuYzoyNTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byB3cml0ZSBuZXcgY29uZmlndXJhdGlvbiBmaWxlICVzIgogbXNnc3RyICJrYW4gaW50ZSBza3JpdmEgbnlhIGtvbmZpZ3VyYXRpb25zZmlsZW4gXCIlc1wiIgogCi0jOiBjb25maWcuYzoyNzE3IGNvbmZpZy5jOjMwNDEKKyM6IGNvbmZpZy5jOjI3NTQgY29uZmlnLmM6MzA3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9jayBjb25maWcgZmlsZSAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6VzYSBrb25maWd1cmF0aW9uc2ZpbGVuICVzIgogCi0jOiBjb25maWcuYzoyNzI4CisjOiBjb25maWcuYzoyNzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9wZW5pbmcgJXMiCiBtc2dzdHIgIsO2cHBuYXIgJXMiCiAKLSM6IGNvbmZpZy5jOjI3NjMgYnVpbHRpbi9jb25maWcuYzozMjcKKyM6IGNvbmZpZy5jOjI4MDAgYnVpbHRpbi9jb25maWcuYzozNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBwYXR0ZXJuOiAlcyIKIG1zZ3N0ciAib2dpbHRpZ3QgbcO2bnN0ZXI6ICVzIgogCi0jOiBjb25maWcuYzoyNzg4CisjOiBjb25maWcuYzoyODI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29uZmlnIGZpbGUgJXMiCiBtc2dzdHIgIm9naWx0aWcga29uZmlndXJhdGlvbnNmaWw6IFwiJXNcIiIKIAotIzogY29uZmlnLmM6MjgwMSBjb25maWcuYzozMDU0CisjOiBjb25maWcuYzoyODM4IGNvbmZpZy5jOjMwOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZnN0YXQgb24gJXMgZmFpbGVkIgogbXNnc3RyICJmc3RhdCBtaXNzbHlja2FkZXMgcMOlICVzIgogCi0jOiBjb25maWcuYzoyODEyCisjOiBjb25maWcuYzoyODQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtbWFwICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgdXRmw7ZyYSBtbWFwIHDDpSBcIiVzXCIiCiAKLSM6IGNvbmZpZy5jOjI4MjEgY29uZmlnLmM6MzA1OQorIzogY29uZmlnLmM6Mjg1OCBjb25maWcuYzozMDk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNobW9kIG9uICVzIGZhaWxlZCIKIG1zZ3N0ciAiY2htb2QgbWlzc2x5Y2thZGVzIHDDpSAlcyIKIAotIzogY29uZmlnLmM6MjkwNiBjb25maWcuYzozMTU2CisjOiBjb25maWcuYzoyOTQzIGNvbmZpZy5jOjMxOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIGNvbmZpZyBmaWxlICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSBrb25maWd1cmF0aW9uc2ZpbGVuICVzIgogCi0jOiBjb25maWcuYzoyOTQwCisjOiBjb25maWcuYzoyOTc3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzZXQgJyVzJyB0byAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIHN0w6RsbGEgaW4gXCIlc1wiIHRpbGwgXCIlc1wiIgogCi0jOiBjb25maWcuYzoyOTQyIGJ1aWx0aW4vcmVtb3RlLmM6NzgyCisjOiBjb25maWcuYzoyOTc5IGJ1aWx0aW4vcmVtb3RlLmM6NjU1IGJ1aWx0aW4vcmVtb3RlLmM6ODQ5IGJ1aWx0aW4vcmVtb3RlLmM6ODU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB1bnNldCAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIHRhIGJvcnQgaW5zdMOkbGxuaW5nIGbDtnIgXCIlc1wiIgogCi0jOiBjb25maWcuYzozMDMyCisjOiBjb25maWcuYzozMDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc2VjdGlvbiBuYW1lOiAlcyIKIG1zZ3N0ciAiZmVsYWt0aWd0IG5hbW4gcMOlIHN0eWNrZTogJXMiCiAKLSM6IGNvbmZpZy5jOjMxOTkKKyM6IGNvbmZpZy5jOjMyMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyB2YWx1ZSBmb3IgJyVzJyIKIG1zZ3N0ciAidsOkcmRlIHNha25hcyBmw7ZyIFwiJXNcIiIKQEAgLTE4MjMsNTAgKzI3MTMsNDUgQEAKIG1zZ2lkICJyZXBvc2l0b3J5IG9uIHRoZSBvdGhlciBlbmQgY2Fubm90IGJlIHNoYWxsb3ciCiBtc2dzdHIgImFya2l2ZXQgcMOlIGFuZHJhIHNpZGFuIGthbiBpbnRlIHZhcmEgZ3J1bnQiCiAKLSM6IGNvbm5lY3QuYzozMTAgZmV0Y2gtcGFjay5jOjE4MiBidWlsdGluL2FyY2hpdmUuYzo2MwotIywgYy1mb3JtYXQKLW1zZ2lkICJyZW1vdGUgZXJyb3I6ICVzIgotbXNnc3RyICJmasOkcnJmZWw6ICVzIgotCi0jOiBjb25uZWN0LmM6MzE2CisjOiBjb25uZWN0LmM6MzEzCiBtc2dpZCAiaW52YWxpZCBwYWNrZXQiCiBtc2dzdHIgIm9naWx0aWd0IHBha2V0IgogCi0jOiBjb25uZWN0LmM6MzM2CisjOiBjb25uZWN0LmM6MzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sIGVycm9yOiB1bmV4cGVjdGVkICclcyciCiBtc2dzdHIgInByb3Rva29sbGZlbDogZsO2cnbDpG50YWRlIGludGUgXCIlc1wiIgogCi0jOiBjb25uZWN0LmM6NDQ0CisjOiBjb25uZWN0LmM6NDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbHMtcmVmcyByZXNwb25zZTogJXMiCiBtc2dzdHIgIm9naWx0aWd0IHN2YXIgcMOlIGxzLXJlZnM6ICVzIgogCi0jOiBjb25uZWN0LmM6NDQ4CisjOiBjb25uZWN0LmM6NDQ1CiBtc2dpZCAiZXhwZWN0ZWQgZmx1c2ggYWZ0ZXIgcmVmIGxpc3RpbmciCiBtc2dzdHIgIm92w6RudGFkIFwiZmx1c2hcIiBlZnRlciByZWYtbGlzdGFuIgogCi0jOiBjb25uZWN0LmM6NTQ3CisjOiBjb25uZWN0LmM6NTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sICclcycgaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAicHJvdG9rb2xsZXQgXCIlc1wiIHN0w7ZkcyBpbnRlIgogCi0jOiBjb25uZWN0LmM6NTk4CisjOiBjb25uZWN0LmM6NTk1CiBtc2dpZCAidW5hYmxlIHRvIHNldCBTT19LRUVQQUxJVkUgb24gc29ja2V0IgogbXNnc3RyICJrdW5kZSBpbnRlIHPDpHR0YSBTT19LRUVQQUxJVkUgcMOlIHV0dGFnZXQiCiAKLSM6IGNvbm5lY3QuYzo2MzggY29ubmVjdC5jOjcwMQorIzogY29ubmVjdC5jOjYzNSBjb25uZWN0LmM6Njk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkxvb2tpbmcgdXAgJXMgLi4uICIKIG1zZ3N0ciAiU2zDpXIgdXBwICVzLi4uIgogCi0jOiBjb25uZWN0LmM6NjQyCisjOiBjb25uZWN0LmM6NjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzIChwb3J0ICVzKSAoJXMpIgogbXNnc3RyICJrYW4gaW50ZSBzbMOlIHVwcCAlcyAocG9ydCAlcykgKCVzKSIKIAogIy4gVFJBTlNMQVRPUlM6IHRoaXMgaXMgdGhlIGVuZCBvZiAiTG9va2luZyB1cCAlcyAuLi4gIgotIzogY29ubmVjdC5jOjY0NiBjb25uZWN0LmM6NzE3CisjOiBjb25uZWN0LmM6NjQzIGNvbm5lY3QuYzo3MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImRvbmUuXG4iCkBAIC0xODc1LDcgKzI3NjAsNyBAQAogImtsYXJ0LlxuIgogIkFuc2x1dGVyIHRpbGwgJXMgKHBvcnQgJXMpLi4uIgogCi0jOiBjb25uZWN0LmM6NjY4IGNvbm5lY3QuYzo3NDUKKyM6IGNvbm5lY3QuYzo2NjUgY29ubmVjdC5jOjc0MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5hYmxlIHRvIGNvbm5lY3QgdG8gJXM6XG4iCkBAIC0xODg1LDc1ICsyNzcwLDc1IEBACiAiJXMiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkNvbm5lY3RpbmcgdG8gJXMgKHBvcnQgJXMpIC4uLiAiCi0jOiBjb25uZWN0LmM6Njc0IGNvbm5lY3QuYzo3NTEKKyM6IGNvbm5lY3QuYzo2NzEgY29ubmVjdC5jOjc0OAogbXNnaWQgImRvbmUuIgogbXNnc3RyICJrbGFydC4iCiAKLSM6IGNvbm5lY3QuYzo3MDUKKyM6IGNvbm5lY3QuYzo3MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGxvb2sgdXAgJXMgKCVzKSIKIG1zZ3N0ciAia3VuZGUgaW50ZSBzbMOlIHVwcCAlcyAoJXMpIgogCi0jOiBjb25uZWN0LmM6NzExCisjOiBjb25uZWN0LmM6NzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gcG9ydCAlcyIKIG1zZ3N0ciAib2vDpG5kIHBvcnQgJXMiCiAKLSM6IGNvbm5lY3QuYzo4NDggY29ubmVjdC5jOjExNzQKKyM6IGNvbm5lY3QuYzo4NDUgY29ubmVjdC5jOjExNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBob3N0bmFtZSAnJXMnIGJsb2NrZWQiCiBtc2dzdHIgImtvbnN0aWd0IHbDpHJkbmFtbiBcIiVzXCIgYmxvY2tlcmF0IgogCi0jOiBjb25uZWN0LmM6ODUwCisjOiBjb25uZWN0LmM6ODQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInN0cmFuZ2UgcG9ydCAnJXMnIGJsb2NrZWQiCiBtc2dzdHIgImtvbnN0aWcgcG9ydCBcIiVzXCIgYmxvY2tlcmFkIgogCi0jOiBjb25uZWN0LmM6ODYwCisjOiBjb25uZWN0LmM6ODU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGFydCBwcm94eSAlcyIKIG1zZ3N0ciAia2FuIGludGUgc3RhcnRhIG1lbGxhbnNlcnZlciAocHJveHkpICVzIgogCi0jOiBjb25uZWN0LmM6OTI3CisjOiBjb25uZWN0LmM6OTI4CiBtc2dpZCAibm8gcGF0aCBzcGVjaWZpZWQ7IHNlZSAnZ2l0IGhlbHAgcHVsbCcgZm9yIHZhbGlkIHVybCBzeW50YXgiCiBtc2dzdHIgImluZ2VuIHPDtmt2w6RnIGFuZ2F2czsgc2UgXCJnaXQgaGVscCBwdWxsXCIgZsO2ciBnaWx0aWcgVVJMLXN5bnRheCIKIAotIzogY29ubmVjdC5jOjExMjIKKyM6IGNvbm5lY3QuYzoxMTIzCiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNCIKIG1zZ3N0ciAic3NoLXZhcmlhbnRlbiBcInNpbXBsZVwiIHN0w7ZkZXIgaW50ZSAtNCIKIAotIzogY29ubmVjdC5jOjExMzQKKyM6IGNvbm5lY3QuYzoxMTM1CiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNiIKIG1zZ3N0ciAic3NoLXZhcmlhbnRlbiBcInNpbXBsZVwiIHN0w7ZkZXIgaW50ZSAtNiIKIAotIzogY29ubmVjdC5jOjExNTEKKyM6IGNvbm5lY3QuYzoxMTUyCiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCBzZXR0aW5nIHBvcnQiCiBtc2dzdHIgInNzaC12YXJpYW50ZW4gXCJzaW1wbGVcIiBzdMO2ZGVyIGludGUgdmFsIGF2IHBvcnQiCiAKLSM6IGNvbm5lY3QuYzoxMjYyCisjOiBjb25uZWN0LmM6MTI2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdHJhbmdlIHBhdGhuYW1lICclcycgYmxvY2tlZCIKIG1zZ3N0ciAia29uc3RpZ3Qgc8O2a3bDpGdzbmFtbiBcIiVzXCIgYmxvY2tlcmF0IgogCi0jOiBjb25uZWN0LmM6MTMwNworIzogY29ubmVjdC5jOjEzMTEKIG1zZ2lkICJ1bmFibGUgdG8gZm9yayIKIG1zZ3N0ciAia3VuZGUgaW50ZSBncmVuYSAoZm9yaykiCiAKICMgVmFndWUgb3JpZ2luYWwsIG5vdCBuZXR3b3JraW5nLXJlbGF0ZWQsIGJ1dCByYXRoZXIgcmVsYXRlZCB0byB0aGUgYWN0dWFsCiAjIG9iamVjdHMgaW4gdGhlIGRhdGFiYXNlLgotIzogY29ubmVjdGVkLmM6NjggYnVpbHRpbi9mc2NrLmM6MjAyIGJ1aWx0aW4vcHJ1bmUuYzoxNDcKKyM6IGNvbm5lY3RlZC5jOjk4IGJ1aWx0aW4vZnNjay5jOjIwOCBidWlsdGluL3BydW5lLmM6NDMKIG1zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkiCiBtc2dzdHIgIktvbnRyb2xsZXJhciBrb25uZWt0aXZpdGV0IgogCi0jOiBjb25uZWN0ZWQuYzo4MAorIzogY29ubmVjdGVkLmM6MTEwCiBtc2dpZCAiQ291bGQgbm90IHJ1biAnZ2l0IHJldi1saXN0JyIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBrw7ZyYSBcImdpdCByZXYtbGlzdFwiIgogCi0jOiBjb25uZWN0ZWQuYzoxMDAKKyM6IGNvbm5lY3RlZC5jOjEzMAogbXNnaWQgImZhaWxlZCB3cml0ZSB0byByZXYtbGlzdCIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgdGlsbCByZXYtbGlzdCIKIAotIzogY29ubmVjdGVkLmM6MTA3CisjOiBjb25uZWN0ZWQuYzoxMzcKIG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcmV2LWxpc3QncyBzdGRpbiIKIG1zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbmdhIHJldi1saXN0OnMgc3RhbmRhcmQgaW4iCiAKQEAgLTE5OTAsMjYgKzI4NzUsMjYgQEAKICJMRiBrb21tZXIgYXR0IGVyc8OkdHRhcyBhdiBDUkxGIGkgJXMuXG4iCiAiRmlsZW4ga29tbWVyIGF0dCBoYSBzaW5hIHVyc3BydW5nbGlnYSByYWRicnl0bmluZ2FyIGkgZGluIGFyYmV0c2thdGFsb2ciCiAKLSM6IGNvbnZlcnQuYzoyODAKKyM6IGNvbnZlcnQuYzoyODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQk9NIGlzIHByb2hpYml0ZWQgaW4gJyVzJyBpZiBlbmNvZGVkIGFzICVzIgogbXNnc3RyICJCT00gw6RyIGbDtnJianVkZXQgaSBcIiVzXCIgb20ga29kYXQgc29tICVzIgogCi0jOiBjb252ZXJ0LmM6Mjg3CisjOiBjb252ZXJ0LmM6MjkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKLSJUaGUgZmlsZSAnJXMnIGNvbnRhaW5zIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lcyBhcyB3b3JraW5nLSIKLSJ0cmVlLWVuY29kaW5nLiIKKyJUaGUgZmlsZSAnJXMnIGNvbnRhaW5zIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lLipzIGFzICIKKyJ3b3JraW5nLXRyZWUtZW5jb2RpbmcuIgogbXNnc3RyICIiCi0iRmlsZW4gXCIlc1wiIGlubmVow6VsbGVyIGJ5dGUgb3JkZXIgbWFyayAoQk9NKS4gQW52w6RuZCBVVEYtJXMgc29tICIKKyJGaWxlbiBcIiVzXCIgaW5uZWjDpWxsZXIgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBBbnbDpG5kIFVURi0lLipzIHNvbSAiCiAidGVja2Vua29kbmluZyBpIGFyYmV0c2thdGFsb2dlbi4iCiAKLSM6IGNvbnZlcnQuYzozMDUKKyM6IGNvbnZlcnQuYzozMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQk9NIGlzIHJlcXVpcmVkIGluICclcycgaWYgZW5jb2RlZCBhcyAlcyIKIG1zZ3N0ciAiQk9NIGtyw6R2cyBvbSBcIiVzXCIga29kYXMgc29tICVzIgogCi0jOiBjb252ZXJ0LmM6MzA3CisjOiBjb252ZXJ0LmM6MzA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZmlsZSAnJXMnIGlzIG1pc3NpbmcgYSBieXRlIG9yZGVyIG1hcmsgKEJPTSkuIFBsZWFzZSB1c2UgVVRGLSVzQkUgb3IgVVRGLSIKQEAgLTIwMTgsNTEgKzI5MDMsNTEgQEAKICJGaWxlbiBcIiVzXCIgc2FrbmFyIGJ5dGUgb3JkZXIgbWFyayAoQk9NKS4gQW52w6RuZCBVVEYtJXNCRSBlbGxlciBVVEYtJXNMRSAiCiAiKGJlcm9lbmRlIHDDpSBieXRlb3JkbmluZykgc29tIHRlY2tlbmtvZG5pbmcgaSBhcmJldHNrYXRhbG9nZW4uIgogCi0jOiBjb252ZXJ0LmM6NDI1IGNvbnZlcnQuYzo0OTYKKyM6IGNvbnZlcnQuYzo0MTkgY29udmVydC5jOjQ5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZW5jb2RlICclcycgZnJvbSAlcyB0byAlcyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIG9ta29kYSBcIiVzXCIgZnLDpW4gJXMgdGlsbCAlcyIKIAotIzogY29udmVydC5jOjQ2OAorIzogY29udmVydC5jOjQ2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJlbmNvZGluZyAnJXMnIGZyb20gJXMgdG8gJXMgYW5kIGJhY2sgaXMgbm90IHRoZSBzYW1lIgogbXNnc3RyICIiCiAib21rb2RuaW5nIGF2IFwiJXNcIiBmcsOlbiAlcyB0aWxsICVzIG9jaCB0aWxsYmFrYSBnZXIgaW50ZSBzYW1tYSByZXN1bHRhdCIKIAotIzogY29udmVydC5jOjY3NAorIzogY29udmVydC5jOjY2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZm9yayB0byBydW4gZXh0ZXJuYWwgZmlsdGVyICclcyciCiBtc2dzdHIgImthbiBpbnRlIGdyZW5hIChmb3JrKSBmw7ZyIGF0dCBrw7ZyYSBleHRlcm50IGZpbHRlciBcIiVzXCIiCiAKLSM6IGNvbnZlcnQuYzo2OTQKKyM6IGNvbnZlcnQuYzo2ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZlZWQgdGhlIGlucHV0IHRvIGV4dGVybmFsIGZpbHRlciAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIHNraWNrYSBpbmRhdGEgdGlsbCBleHRlcm50IGZpbHRlciBcIiVzXCIiCiAKLSM6IGNvbnZlcnQuYzo3MDEKKyM6IGNvbnZlcnQuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkICVkIgogbXNnc3RyICJleHRlcm50IGZpbHRlciBcIiVzXCIgbWlzc2x5Y2thZGVzICVkIgogCi0jOiBjb252ZXJ0LmM6NzM2IGNvbnZlcnQuYzo3MzkKKyM6IGNvbnZlcnQuYzo3MzAgY29udmVydC5jOjczMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkIGZyb20gZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkIgogbXNnc3RyICJsw6RzbmluZyBmcsOlbiBleHRlcm50IGZpbHRlciBcIiVzXCIgbWlzc2x5Y2thZGVzIgogCi0jOiBjb252ZXJ0LmM6NzQyIGNvbnZlcnQuYzo3OTYKKyM6IGNvbnZlcnQuYzo3MzYgY29udmVydC5jOjc5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQiCiBtc2dzdHIgImV4dGVybnQgZmlsdGVyIFwiJXNcIiBtaXNzbHlja2FkZXMiCiAKLSM6IGNvbnZlcnQuYzo4NDQKKyM6IGNvbnZlcnQuYzo4MzkKIG1zZ2lkICJ1bmV4cGVjdGVkIGZpbHRlciB0eXBlIgogbXNnc3RyICJvdsOkbnRhZCBmaWx0ZXJ0eXAiCiAKLSM6IGNvbnZlcnQuYzo4NTUKKyM6IGNvbnZlcnQuYzo4NTAKIG1zZ2lkICJwYXRoIG5hbWUgdG9vIGxvbmcgZm9yIGV4dGVybmFsIGZpbHRlciIKIG1zZ3N0ciAic8O2a3bDpGdlbiBmw7ZyIGzDpW5nIGbDtnIgZXh0ZXJudCBmaWx0ZXIiCiAKLSM6IGNvbnZlcnQuYzo5MjkKKyM6IGNvbnZlcnQuYzo5MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4dGVybmFsIGZpbHRlciAnJXMnIGlzIG5vdCBhdmFpbGFibGUgYW55bW9yZSBhbHRob3VnaCBub3QgYWxsIHBhdGhzIGhhdmUgIgpAQCAtMjA3MSw2NyArMjk1Niw2NyBAQAogImV4dGVybnQgZmlsdGVyIFwiJXNcIiDDpHIgaW50ZSBsw6RuZ3JlIHRpbGxnw6RuZ2xpZ3QgdHJvdHMgYXR0IGFsbGEgc8O2a3bDpGdhciAiCiAiaW50ZSBoYXIgZmlsdHJlcmF0cyIKIAotIzogY29udmVydC5jOjEyMjgKKyM6IGNvbnZlcnQuYzoxMjIzCiBtc2dpZCAidHJ1ZS9mYWxzZSBhcmUgbm8gdmFsaWQgd29ya2luZy10cmVlLWVuY29kaW5ncyIKIG1zZ3N0ciAidHJ1ZS9mYWxzZSDDpHIgaW50ZSBnaWx0aWcgdGVja2Vua29kbmluZyBmw7ZyIGFyYmV0c2thdGFsb2dlbiIKIAotIzogY29udmVydC5jOjEzOTggY29udmVydC5jOjE0MzIKKyM6IGNvbnZlcnQuYzoxNDExIGNvbnZlcnQuYzoxNDQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjbGVhbiBmaWx0ZXIgJyVzJyBmYWlsZWQiCiBtc2dzdHIgIiVzOiBcImNsZWFuXCItZmlsdHJldCBcIiVzXCIgbWlzc2x5Y2thZGVzIgogCi0jOiBjb252ZXJ0LmM6MTQ3NgorIzogY29udmVydC5jOjE0ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHNtdWRnZSBmaWx0ZXIgJXMgZmFpbGVkIgogbXNnc3RyICIlczogXCJzbXVkZ2VcIi1maWx0cmV0IFwiJXNcIiBtaXNzbHlja2FkZXMiCiAKLSM6IGRhdGUuYzoxMTYKKyM6IGRhdGUuYzoxMzgKIG1zZ2lkICJpbiB0aGUgZnV0dXJlIgogbXNnc3RyICJpIGZyYW10aWRlbiIKIAotIzogZGF0ZS5jOjEyMgorIzogZGF0ZS5jOjE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHNlY29uZCBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gc2Vjb25kcyBhZ28iCiBtc2dzdHJbMF0gIiU8UFJJdU1BWD4gc2VrdW5kIHNlZGFuIgogbXNnc3RyWzFdICIlPFBSSXVNQVg+IHNla3VuZGVyIHNlZGFuIgogCi0jOiBkYXRlLmM6MTI5CisjOiBkYXRlLmM6MTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gbWludXRlIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtaW51dGVzIGFnbyIKIG1zZ3N0clswXSAiJTxQUkl1TUFYPiBtaW51dCBzZWRhbiIKIG1zZ3N0clsxXSAiJTxQUkl1TUFYPiBtaW51dGVyIHNlZGFuIgogCi0jOiBkYXRlLmM6MTM2CisjOiBkYXRlLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gaG91ciBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gaG91cnMgYWdvIgogbXNnc3RyWzBdICIlPFBSSXVNQVg+IHRpbW1lIHNlZGFuIgogbXNnc3RyWzFdICIlPFBSSXVNQVg+IHRpbW1hciBzZWRhbiIKIAotIzogZGF0ZS5jOjE0MworIzogZGF0ZS5jOjE2NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IGRheSBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gZGF5cyBhZ28iCiBtc2dzdHJbMF0gIiU8UFJJdU1BWD4gZGFnIHNlZGFuIgogbXNnc3RyWzFdICIlPFBSSXVNQVg+IGRhZ2FyIHNlZGFuIgogCi0jOiBkYXRlLmM6MTQ5CisjOiBkYXRlLmM6MTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gd2VlayBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gd2Vla3MgYWdvIgogbXNnc3RyWzBdICIlPFBSSXVNQVg+IHZlY2thIHNlZGFuIgogbXNnc3RyWzFdICIlPFBSSXVNQVg+IHZlY2tvciBzZWRhbiIKIAotIzogZGF0ZS5jOjE1NgorIzogZGF0ZS5jOjE3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IG1vbnRoIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtb250aHMgYWdvIgogbXNnc3RyWzBdICIlPFBSSXVNQVg+IG3DpW5hZCBzZWRhbiIKIG1zZ3N0clsxXSAiJTxQUkl1TUFYPiBtw6VuYWRlciBzZWRhbiIKIAotIzogZGF0ZS5jOjE2NworIzogZGF0ZS5jOjE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHllYXIiCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4geWVhcnMiCkBAIC0yMTM5LDQwICszMDI0LDQwIEBACiBtc2dzdHJbMV0gIiU8UFJJdU1BWD4gw6VyIgogCiAjLiBUUkFOU0xBVE9SUzogIiVzIiBpcyAiPG4+IHllYXJzIgotIzogZGF0ZS5jOjE3MAorIzogZGF0ZS5jOjE5MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcywgJTxQUkl1TUFYPiBtb250aCBhZ28iCiBtc2dpZF9wbHVyYWwgIiVzLCAlPFBSSXVNQVg+IG1vbnRocyBhZ28iCiBtc2dzdHJbMF0gIiVzLCAlPFBSSXVNQVg+IG3DpW5hZCBzZWRhbiIKIG1zZ3N0clsxXSAiJXMsICU8UFJJdU1BWD4gbcOlbmFkZXIgc2VkYW4iCiAKLSM6IGRhdGUuYzoxNzUgZGF0ZS5jOjE4MAorIzogZGF0ZS5jOjE5NyBkYXRlLmM6MjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4geWVhciBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4geWVhcnMgYWdvIgogbXNnc3RyWzBdICIlPFBSSXVNQVg+IMOlciBzZWRhbiIKIG1zZ3N0clsxXSAiJTxQUkl1TUFYPiDDpXIgc2VkYW4iCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzoyNjgKKyM6IGRlbHRhLWlzbGFuZHMuYzoyNzIKIG1zZ2lkICJQcm9wYWdhdGluZyBpc2xhbmQgbWFya3MiCiBtc2dzdHIgIlNwcmlkZXIgw7YtbWFya2VyaW5nYXIiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzoyODYKKyM6IGRlbHRhLWlzbGFuZHMuYzoyOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHRyZWUgb2JqZWN0ICVzIgogbXNnc3RyICJmZWxha3RpZ3QgdHLDpGRvYmpla3RldCAlcyIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjMzMAorIzogZGVsdGEtaXNsYW5kcy5jOjMzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBpc2xhbmQgcmVnZXggZm9yICclcyc6ICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIGjDpG10YSDDti1yZWdleCBmw7ZyIFwiJXNcIjogJXMiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzozODYKKyM6IGRlbHRhLWlzbGFuZHMuYzozOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaXNsYW5kIHJlZ2V4IGZyb20gY29uZmlnIGhhcyB0b28gbWFueSBjYXB0dXJlIGdyb3VwcyAobWF4PSVkKSIKIG1zZ3N0ciAiw7YtcmVnZXggZnLDpW4ga29uZmlndXJhdGlvbiBoYXIgZsO2ciBtw6VuZ2EgZsOlbmdzdGdydXBwZXIgKG1heD0lZCkiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzo0NjIKKyM6IGRlbHRhLWlzbGFuZHMuYzo0NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWFya2VkICVkIGlzbGFuZHMsIGRvbmUuXG4iCiBtc2dzdHIgIk1hcmtlcmFkZSAlZCDDtmFyLCBrbGFyLlxuIgpAQCAtMjE4MiwyNiArMzA2NywzMyBAQAogbXNnaWQgImZhaWxlZCB0byByZWFkIG9yZGVyZmlsZSAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIG9yZGVyZmlsZW4gXCIlc1wiIgogCi0jOiBkaWZmY29yZS1yZW5hbWUuYzo1NDQKKyM6IGRpZmZjb3JlLXJlbmFtZS5jOjU0MwogbXNnaWQgIlBlcmZvcm1pbmcgaW5leGFjdCByZW5hbWUgZGV0ZWN0aW9uIgogbXNnc3RyICJVdGbDtnIgb27Dtmpha3RpZyBuYW1uYnl0ZXNkZXRla3RlcmluZyIKIAotIzogZGlmZi5jOjEwOAotIywgYy1mb3JtYXQKLW1zZ2lkICJvcHRpb24gJyVzJyByZXF1aXJlcyBhIHZhbHVlIgotbXNnc3RyICJmbGFnZ2FuIFwiJXNcIiBiZWjDtnZlciBldHQgdsOkcmRlIgorIzogZGlmZi1uby1pbmRleC5jOjIzOAorbXNnaWQgImdpdCBkaWZmIC0tbm8taW5kZXggWzxvcHRpb25zPl0gPHBhdGg+IDxwYXRoPiIKK21zZ3N0ciAiZ2l0IGRpZmYgLS1uby1pbmRleCBbPGZsYWdnb3I+XSA8c8O2a3bDpGc+IDxzw7ZrdsOkZz4iCiAKLSM6IGRpZmYuYzoxNTgKKyM6IGRpZmYtbm8taW5kZXguYzoyNjMKK21zZ2lkICIiCisiTm90IGEgZ2l0IHJlcG9zaXRvcnkuIFVzZSAtLW5vLWluZGV4IHRvIGNvbXBhcmUgdHdvIHBhdGhzIG91dHNpZGUgYSB3b3JraW5nICIKKyJ0cmVlIgorbXNnc3RyICIiCisiSW50ZSBldHQgZ2l0LWFya2l2LiBBbnbDpG5kIC0tbm8taW5kZXggZsO2ciBhdHQgasOkbWbDtnJhIHR2w6Ugc8O2a3bDpGdhciB1dGFuZsO2ciAiCisiZW4gYXJiZXRza2F0YWxvZy4iCisKKyM6IGRpZmYuYzoxNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBGYWlsZWQgdG8gcGFyc2UgZGlyc3RhdCBjdXQtb2ZmIHBlcmNlbnRhZ2UgJyVzJ1xuIgogbXNnc3RyICIgIE1pc3NseWNrYWRlcyB0b2xrYSBkaXJzdGF0LWF2c2vDpHJuaW5nc3Byb2NlbnRhbmRlbCBcIiVzXCJcbiIKIAotIzogZGlmZi5jOjE2MworIzogZGlmZi5jOjE2MAogIywgYy1mb3JtYXQKIG1zZ2lkICIgIFVua25vd24gZGlyc3RhdCBwYXJhbWV0ZXIgJyVzJ1xuIgogbXNnc3RyICIgIE9rw6RuZCBkaXJzdGF0LXBhcmFtZXRlciBcIiVzXCJcbiIKIAotIzogZGlmZi5jOjI5MQorIzogZGlmZi5jOjI5NgogbXNnaWQgIiIKICJjb2xvciBtb3ZlZCBzZXR0aW5nIG11c3QgYmUgb25lIG9mICdubycsICdkZWZhdWx0JywgJ2Jsb2NrcycsICd6ZWJyYScsICIKICInZGltbWVkLXplYnJhJywgJ3BsYWluJyIKQEAgLTIyMDksMjUgKzMxMDEsMzAgQEAKICJmw6RyZ2luc3TDpGxsbmluZ2VuIGbDtnIgZmx5dHRhZGUgYmxvY2sgbcOlc3RlIHZhcmEgZW4gYXYgXCJub1wiLCBcImRlZmF1bHRcIiwgIgogIlwiYmxvY2tzXCIsIFwiemVicmFcIiwgXCJkaW1tZWRfemVicmFcIiwgXCJwbGFpblwiIgogCi0jOiBkaWZmLmM6MzE2CisjOiBkaWZmLmM6MzI0CiAjLCBjLWZvcm1hdAotbXNnaWQgImlnbm9yaW5nIHVua25vd24gY29sb3ItbW92ZWQtd3MgbW9kZSAnJXMnIgotbXNnc3RyICJpZ25vcmVyYXIgb2vDpG50IGzDpGdlIGbDtnIgY29sb3ItbW9kZS13cyBcIiVzXCIiCi0KLSM6IGRpZmYuYzozMjMKIG1zZ2lkICIiCi0iY29sb3ItbW92ZWQtd3M6IGFsbG93LWluZGVudGF0aW9uLWNoYW5nZSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB3aGl0ZSAiCi0ic3BhY2UgbW9kZXMiCisidW5rbm93biBjb2xvci1tb3ZlZC13cyBtb2RlICclcycsIHBvc3NpYmxlIHZhbHVlcyBhcmUgJ2lnbm9yZS1zcGFjZS1jaGFuZ2UnLCAiCisiJ2lnbm9yZS1zcGFjZS1hdC1lb2wnLCAnaWdub3JlLWFsbC1zcGFjZScsICdhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UnIgorbXNnc3RyICIiCisib2vDpG50IGzDpGdlIFwiJXNcIiBmw7ZyIGNvbG9yLW1vdmVkLXdzLCBtw7ZqbGlnYSB2w6RyZGVuIMOkciBcImlnbm9yZS1zcGFjZS1jaGFuZ2UiCisiXCIsIFwiaWdub3JlLXNwYWNlLWF0LWVvbFwiLCBcImlnbm9yZS1hbGwtc3BhY2VcIiwgXCJhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UiCisiXCIiCisKKyM6IGRpZmYuYzozMzIKK21zZ2lkICIiCisiY29sb3ItbW92ZWQtd3M6IGFsbG93LWluZGVudGF0aW9uLWNoYW5nZSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciAiCisid2hpdGVzcGFjZSBtb2RlcyIKIG1zZ3N0ciAiIgogImNvbG9yLW1vdmVkLXdzOiBhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2Uga2FuIGludGUga29tYmluZXJhcyBtZWQgYW5kcmEgIgogImJsYW5rc3RlZ3Nsw6RnZW4iCiAKLSM6IGRpZmYuYzozOTQKKyM6IGRpZmYuYzo0MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biB2YWx1ZSBmb3IgJ2RpZmYuc3VibW9kdWxlJyBjb25maWcgdmFyaWFibGU6ICclcyciCiBtc2dzdHIgIk9rw6RudCB2w6RyZGUgZsO2ciBrb25maWd1cmF0aW9uc3ZhcmlhYmVsbiBcImRpZmYuc3VibW9kdWxlXCI6IFwiJXNcIiIKIAotIzogZGlmZi5jOjQ1NAorIzogZGlmZi5jOjQ2NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiRm91bmQgZXJyb3JzIGluICdkaWZmLmRpcnN0YXQnIGNvbmZpZyB2YXJpYWJsZTpcbiIKQEAgLTIyMzYsMjQgKzMxMzMsMzUgQEAKICJIaXR0YWRlIGZlbCBpIGtvbmZpZ3VyYXRpb25zdmFyaWFiZWxuIFwiZGlmZi5kaXJzdGF0XCI6XG4iCiAiJXMiCiAKLSM6IGRpZmYuYzo0MTQwCisjOiBkaWZmLmM6NDIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBkaWZmIGRpZWQsIHN0b3BwaW5nIGF0ICVzIgogbXNnc3RyICJleHRlcm4gZGlmZiBkb2csIHN0YW5uYXIgdmlkICVzIgogCi0jOiBkaWZmLmM6NDQ4MgorIzogZGlmZi5jOjQ1NDcKIG1zZ2lkICItLW5hbWUtb25seSwgLS1uYW1lLXN0YXR1cywgLS1jaGVjayBhbmQgLXMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLS1uYW1lLW9ubHksIC0tbmFtZS1zdGF0dXMsIC1jaGVjayBvY2ggLXMgw6RyIMO2bXNlc2lkaWd0IHV0ZXNsdXRhbmRlIgogCi0jOiBkaWZmLmM6NDQ4NQorIzogZGlmZi5jOjQ1NTAKIG1zZ2lkICItRywgLVMgYW5kIC0tZmluZC1vYmplY3QgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLUcsIC1TIG9jaCAtLWZpbmQtb2JqZWN0IMOkciDDtm1zZXNpZGlndCB1dGVzbHV0YW5kZSIKIAotIzogZGlmZi5jOjQ1NjMKKyM6IGRpZmYuYzo0NjI4CiBtc2dpZCAiLS1mb2xsb3cgcmVxdWlyZXMgZXhhY3RseSBvbmUgcGF0aHNwZWMiCiBtc2dzdHIgIi0tZm9sbG93IGtyw6R2ZXIgZXhha3QgZW4gc8O2a3bDpGdzYW5naXZlbHNlIgogCi0jOiBkaWZmLmM6NDcyOQorIzogZGlmZi5jOjQ2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAtLXN0YXQgdmFsdWU6ICVzIgorbXNnc3RyICJvZ2lsdGlndCB2w6RyZGUgZsO2ciAtLXN0YXQ6ICVzIgorCisjOiBkaWZmLmM6NDY4MSBkaWZmLmM6NDY4NiBkaWZmLmM6NDY5MSBkaWZmLmM6NDY5NiBkaWZmLmM6NTIwOQorIzogcGFyc2Utb3B0aW9ucy5jOjE5NyBwYXJzZS1vcHRpb25zLmM6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCittc2dzdHIgIiVzIGbDtnJ2w6RudGFyIGV0dCBudW1lcmlza3QgdsOkcmRlIgorCisjOiBkaWZmLmM6NDcxMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiRmFpbGVkIHRvIHBhcnNlIC0tZGlyc3RhdC8tWCBvcHRpb24gcGFyYW1ldGVyOlxuIgpAQCAtMjI2Miw2MSArMzE3MCw1NjQgQEAKICJNaXNzbHlja2FkZXMgdG9sa2EgYXJndW1lbnQgdGlsbCBmbGFnZ2FuIC0tZGlyc3RhdC8tWDtcbiIKICIlcyIKIAotIzogZGlmZi5jOjQ3NDMKKyM6IGRpZmYuYzo0Nzk4CiAjLCBjLWZvcm1hdAotbXNnaWQgIkZhaWxlZCB0byBwYXJzZSAtLXN1Ym1vZHVsZSBvcHRpb24gcGFyYW1ldGVyOiAnJXMnIgotbXNnc3RyICJNaXNzbHlja2FkZXMgdG9sa2EgYXJndW1lbnQgdGlsbCBmbGFnZ2FuIC0tc3VibW9kdWxlOiBcIiVzXCIiCittc2dpZCAidW5rbm93biBjaGFuZ2UgY2xhc3MgJyVjJyBpbiAtLWRpZmYtZmlsdGVyPSVzIgorbXNnc3RyICJva8OkbmQgw6RuZHJpbmdza2xhc3MgXCIlY1wiIGkgLS1kaWZmLWZpbHRlcj0lcyIKIAotIzogZGlmZi5jOjU4MjMKKyM6IGRpZmYuYzo0ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdmFsdWUgYWZ0ZXIgd3MtZXJyb3ItaGlnaGxpZ2h0PSUuKnMiCittc2dzdHIgIm9rw6RudCB2w6RyZGUgZWZ0ZXIgd3MtZXJyb3ItaGlnaGxpZ2h0PSUuKnMiCisKKyM6IGRpZmYuYzo0ODM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXNvbHZlICclcyciCittc2dzdHIgImt1bmRlIGludGUgc2zDpSB1cHAgXCIlc1wiIgorCisjOiBkaWZmLmM6NDg4NiBkaWZmLmM6NDg5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIDxuPi88bT4gZm9ybSIKK21zZ3N0ciAiJXMgZsO2cnbDpG50YXIgZm9ybWVuIDxuPi88bT4iCisKKyM6IGRpZmYuYzo0OTA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBjaGFyYWN0ZXIsIGdvdCAnJXMnIgorbXNnc3RyICIlcyBmw7ZydsOkbnRhciBldHQgdGVja2VuLCBmaWNrIFwiJXNcIiIKKworIzogZGlmZi5jOjQ5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIC0tY29sb3ItbW92ZWQgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJmZWxha3RpZ3QgYXJndW1lbnQgdGlsbCAtLWNvbG9yLW1vdmVkOiAlcyIKKworIzogZGlmZi5jOjQ5NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBtb2RlICclcycgaW4gLS1jb2xvci1tb3ZlZC13cyIKK21zZ3N0ciAib2dpbHRpZ3QgbMOkZ2UgJXNcIiBpIC0tY29sb3ItbW92ZWQtd3MiCisKKyM6IGRpZmYuYzo0OTg0Cittc2dpZCAiIgorIm9wdGlvbiBkaWZmLWFsZ29yaXRobSBhY2NlcHRzIFwibXllcnNcIiwgXCJtaW5pbWFsXCIsIFwicGF0aWVuY2VcIiBhbmQgIgorIlwiaGlzdG9ncmFtXCIiCittc2dzdHIgIiIKKyJmbGFnZ2FuIGRpZmYtYWxnb3JpdGhtIGdvZHRhclwibXllcnNcIiwgXCJtaW5pbWFsXCIsIFwicGF0aWVuY2VcIiBvY2ggIgorIlwiaGlzdG9ncmFtXCIiCisKKyM6IGRpZmYuYzo1MDIwIGRpZmYuYzo1MDQwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgYXJndW1lbnQgdG8gJXMiCittc2dzdHIgIm9naWx0aWd0IGFyZ3VtZW50IGbDtnIgJXMiCisKKyM6IGRpZmYuYzo1MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSAtLXN1Ym1vZHVsZSBvcHRpb24gcGFyYW1ldGVyOiAnJXMnIgorbXNnc3RyICJtaXNzbHlja2FkZXMgdG9sa2EgYXJndW1lbnQgdGlsbCBmbGFnZ2FuIC0tc3VibW9kdWxlOiBcIiVzXCIiCisKKyM6IGRpZmYuYzo1MjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLXdvcmQtZGlmZiBhcmd1bWVudDogJXMiCittc2dzdHIgImZlbGFrdGlndCBhcmd1bWVudCAtLXdvcmQtZGlmZjogJXMiCisKKyM6IGRpZmYuYzo1MjU3Cittc2dpZCAiRGlmZiBvdXRwdXQgZm9ybWF0IG9wdGlvbnMiCittc2dzdHIgIkZvcm1hdGZsYWdnb3IgZsO2ciBkaWZmLXV0ZGF0YSIKKworIzogZGlmZi5jOjUyNTkgZGlmZi5jOjUyNjUKK21zZ2lkICJnZW5lcmF0ZSBwYXRjaCIKK21zZ3N0ciAic2thcGFyIHBhdGNoIgorCisjOiBkaWZmLmM6NTI2MiBidWlsdGluL2xvZy5jOjE3MworbXNnaWQgInN1cHByZXNzIGRpZmYgb3V0cHV0IgorbXNnc3RyICJ1bmRlcnRyeWNrIGRpZmYtdXRkYXRhIgorCisjOiBkaWZmLmM6NTI2NyBkaWZmLmM6NTM4MSBkaWZmLmM6NTM4OAorbXNnaWQgIjxuPiIKK21zZ3N0ciAiPG4+IgorCisjOiBkaWZmLmM6NTI2OCBkaWZmLmM6NTI3MQorbXNnaWQgImdlbmVyYXRlIGRpZmZzIHdpdGggPG4+IGxpbmVzIGNvbnRleHQiCittc2dzdHIgInNrYXBhIGRpZmZhciBtZWQgPG4+IHJhZGVyIHNhbW1hbmhhbmciCisKKyM6IGRpZmYuYzo1MjczCittc2dpZCAiZ2VuZXJhdGUgdGhlIGRpZmYgaW4gcmF3IGZvcm1hdCIKK21zZ3N0ciAiZ2VuZXJlcmEgZGlmZiBpIHLDpWZvcm1hdCIKKworIzogZGlmZi5jOjUyNzYKK21zZ2lkICJzeW5vbnltIGZvciAnLXAgLS1yYXcnIgorbXNnc3RyICJzeW5vbnltIHRpbGwgXCItcCAtLXJhd1wiIgorCisjOiBkaWZmLmM6NTI4MAorbXNnaWQgInN5bm9ueW0gZm9yICctcCAtLXN0YXQnIgorbXNnc3RyICJzeW5vbnltIHRpbGwgXCItcCAtLXN0YXRcIiIKKworIzogZGlmZi5jOjUyODQKK21zZ2lkICJtYWNoaW5lIGZyaWVuZGx5IC0tc3RhdCIKK21zZ3N0ciAibWFza2lubMOkc2JhciAtLXN0YXQiCisKKyM6IGRpZmYuYzo1Mjg3Cittc2dpZCAib3V0cHV0IG9ubHkgdGhlIGxhc3QgbGluZSBvZiAtLXN0YXQiCittc2dzdHIgInNrcml2IGJhcmEgdXQgZGVuIHNpc3RhIHJhZGVuIGbDtnIgLS1zdGF0IgorCisjOiBkaWZmLmM6NTI4OSBkaWZmLmM6NTI5NworbXNnaWQgIjxwYXJhbTEscGFyYW0yPi4uLiIKK21zZ3N0ciAiPHBhcmFtMSxwYXJhbTI+Li4uIgorCisjOiBkaWZmLmM6NTI5MAorbXNnaWQgIiIKKyJvdXRwdXQgdGhlIGRpc3RyaWJ1dGlvbiBvZiByZWxhdGl2ZSBhbW91bnQgb2YgY2hhbmdlcyBmb3IgZWFjaCBzdWItZGlyZWN0b3J5IgorbXNnc3RyICIiCisic2tyaXYgdXQgZGlzdHJpYnV0aW9uZW4gYXYgcmVsYXRpdmEgbcOkbmdkZXIgw6RuZHJpbmdhciBmw7ZyIHZhcmplIHVuZGVya2F0YWxvZyIKKworIzogZGlmZi5jOjUyOTQKK21zZ2lkICJzeW5vbnltIGZvciAtLWRpcnN0YXQ9Y3VtdWxhdGl2ZSIKK21zZ3N0ciAic3lub255bSBmw7ZyIC0tZGlyc3RhdD1jdW11bGF0aXZlIgorCisjOiBkaWZmLmM6NTI5OAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1maWxlcyxwYXJhbTEscGFyYW0yLi4uIgorbXNnc3RyICJzeW5vbnltIGbDtnIgLS1kaXJzdGF0PWZpbGVyLHBhcmFtMSxwYXJhbTIuLi4iCisKKyM6IGRpZmYuYzo1MzAyCittc2dpZCAid2FybiBpZiBjaGFuZ2VzIGludHJvZHVjZSBjb25mbGljdCBtYXJrZXJzIG9yIHdoaXRlc3BhY2UgZXJyb3JzIgorbXNnc3RyICJ2YXJuYSBvbSDDpG5kcmluZ2FyIGludHJvZHVjZXJhciBrb25mbGlrdG1hcmvDtnJlciBlbGxlciBibGFua3N0ZWdzZmVsIgorCisjOiBkaWZmLmM6NTMwNQorbXNnaWQgImNvbmRlbnNlZCBzdW1tYXJ5IHN1Y2ggYXMgY3JlYXRpb25zLCByZW5hbWVzIGFuZCBtb2RlIGNoYW5nZXMiCittc2dzdHIgImtvcnRmYXR0YWQgc3VtbWVyaW5nIHPDpXNvbSBza2FwYWRlLCBuYW1uYnl0ZW4gb2NoIMOkbmRyYWRlIGzDpGdlbiIKKworIzogZGlmZi5jOjUzMDgKK21zZ2lkICJzaG93IG9ubHkgbmFtZXMgb2YgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAidmlzYSBlbmRhc3QgbmFtbmVuIHDDpSDDpG5kcmFkZSBmaWxlciIKKworIzogZGlmZi5jOjUzMTEKK21zZ2lkICJzaG93IG9ubHkgbmFtZXMgYW5kIHN0YXR1cyBvZiBjaGFuZ2VkIGZpbGVzIgorbXNnc3RyICJ2aXNhIGVuZGFzdCBuYW1uIG9jaCBzdGF0dXMgZsO2ciDDpG5kcmFkZSBmaWxlciIKKworIzogZGlmZi5jOjUzMTMKK21zZ2lkICI8d2lkdGg+Wyw8bmFtZS13aWR0aD5bLDxjb3VudD5dXSIKK21zZ3N0ciAiPGJyZWRkPlssPG5hbW4tYnJlZGQ+Wyw8YW50YWw+XV0iCisKKyM6IGRpZmYuYzo1MzE0Cittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQiCittc2dzdHIgInNrYXBhIGRpZmZzdGF0IgorCisjOiBkaWZmLmM6NTMxNiBkaWZmLmM6NTMxOSBkaWZmLmM6NTMyMgorbXNnaWQgIjx3aWR0aD4iCittc2dzdHIgIjxicmVkZD4iCisKKyM6IGRpZmYuYzo1MzE3Cittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBhIGdpdmVuIHdpZHRoIgorbXNnc3RyICJnZW5lcmVyYSBlbiBkaWZmc3RhdCBtZWQgZ2l2ZW4gYnJlZGQiCisKKyM6IGRpZmYuYzo1MzIwCittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBhIGdpdmVuIG5hbWUgd2lkdGgiCittc2dzdHIgImdlbmVyZXJhIGVuIGRpZmZzdGF0IG1lZCBnaXZlbiBuYW1uYnJlZGQiCisKKyM6IGRpZmYuYzo1MzIzCittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBhIGdpdmVuIGdyYXBoIHdpZHRoIgorbXNnc3RyICJnZW5lcmVyYSBlbiBkaWZmc3RhdCBtZWQgZ2l2ZW4gZ3JhZmJyZWRkIgorCisjOiBkaWZmLmM6NTMyNQorbXNnaWQgIjxjb3VudD4iCittc2dzdHIgIjxhbnRhbD4iCisKKyM6IGRpZmYuYzo1MzI2Cittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBsaW1pdGVkIGxpbmVzIgorbXNnc3RyICJnZW5lcmVyYSBkaWZmc3RhdCBtZWQgYmVncsOkbnNhZGUgcmFkZXIiCisKKyM6IGRpZmYuYzo1MzI5Cittc2dpZCAiZ2VuZXJhdGUgY29tcGFjdCBzdW1tYXJ5IGluIGRpZmZzdGF0IgorbXNnc3RyICJza2FwYSBrb21wYWt0IMO2dmVyc2lrdCBpIGRpZmZzdGF0IgorCisjOiBkaWZmLmM6NTMzMgorbXNnaWQgIm91dHB1dCBhIGJpbmFyeSBkaWZmIHRoYXQgY2FuIGJlIGFwcGxpZWQiCittc2dzdHIgInNrYXBhIGVuIGJpbsOkcmRpZmYgc29tIGthbiBhcHBsaWNlcmFzIgorCisjOiBkaWZmLmM6NTMzNQorbXNnaWQgInNob3cgZnVsbCBwcmUtIGFuZCBwb3N0LWltYWdlIG9iamVjdCBuYW1lcyBvbiB0aGUgXCJpbmRleFwiIGxpbmVzIgorbXNnc3RyICIiCisidmlzYSBmdWxsc3TDpG5kaWdhIG9iamVrdG5hbW4gaSBcImluZGV4XCItcmFkZXIgZsO2ciBsw6RnZXQgYsOlZGUgZsO2cmUgb2NoIGVmdGVyIgorCisjOiBkaWZmLmM6NTMzNworbXNnaWQgInNob3cgY29sb3JlZCBkaWZmIgorbXNnc3RyICJ2aXNhIGbDpHJnYWQgZGlmZiIKKworIzogZGlmZi5jOjUzMzgKK21zZ2lkICI8a2luZD4iCittc2dzdHIgIjx0eXA+IgorCisjOiBkaWZmLmM6NTMzOQorbXNnaWQgIiIKKyJoaWdobGlnaHQgd2hpdGVzcGFjZSBlcnJvcnMgaW4gdGhlICdjb250ZXh0JywgJ29sZCcgb3IgJ25ldycgbGluZXMgaW4gdGhlICIKKyJkaWZmIgorbXNnc3RyICIiCisibGp1c21hcmtlcmEgYmxhbmtzdGVnc2ZlbCBpIFwiY29udGV4dFwiIChzYW1tYW5oYW5nKSwgXCJvbGRcIiAoZ2FtbGEpIGVsbGVyICIKKyJcIm5ld1wiIChueWEpIHJhZGVyIGkgZGlmZmVuIgorCisjOiBkaWZmLmM6NTM0MgorbXNnaWQgIiIKKyJkbyBub3QgbXVuZ2UgcGF0aG5hbWVzIGFuZCB1c2UgTlVMcyBhcyBvdXRwdXQgZmllbGQgdGVybWluYXRvcnMgaW4gLS1yYXcgb3IgIgorIi0tbnVtc3RhdCIKK21zZ3N0ciAiIgorInNrcml2IGludGUgb20gc8O2a3bDpGdzbmFtbiBvY2ggYW52w6RuZCBOVUwtdGVja2VuIHNvbSBmw6RsdHNlcGFyZXJhcmUgaSAtLXJhdyAiCisiZWxsZXIgLS1udW1zdGF0IgorCisjOiBkaWZmLmM6NTM0NSBkaWZmLmM6NTM0OCBkaWZmLmM6NTM1MSBkaWZmLmM6NTQ1NworbXNnaWQgIjxwcmVmaXg+IgorbXNnc3RyICI8cHJlZml4PiIKKworIzogZGlmZi5jOjUzNDYKK21zZ2lkICJzaG93IHRoZSBnaXZlbiBzb3VyY2UgcHJlZml4IGluc3RlYWQgb2YgXCJhL1wiIgorbXNnc3RyICJ2aXNhIGdpdmV0IGvDpGxscHJlZml4IGlzdMOkbGxldCBmw7ZyIFwiYS9cIiIKKworIzogZGlmZi5jOjUzNDkKK21zZ2lkICJzaG93IHRoZSBnaXZlbiBkZXN0aW5hdGlvbiBwcmVmaXggaW5zdGVhZCBvZiBcImIvXCIiCittc2dzdHIgInZpc2EgZ2l2ZXQgbcOlbHByZWZpeCBpc3TDpGxsZXQgZsO2ciBcImIvXCIiCisKKyM6IGRpZmYuYzo1MzUyCittc2dpZCAicHJlcGVuZCBhbiBhZGRpdGlvbmFsIHByZWZpeCB0byBldmVyeSBsaW5lIG9mIG91dHB1dCIKK21zZ3N0ciAibMOkZ2cgdGlsbCB5dHRlcmxpZ2FyZSBwcmVmaXggcMOlIGFsbGEgcmFkZXIgaSB1dGRhdGEiCisKKyM6IGRpZmYuYzo1MzU1Cittc2dpZCAiZG8gbm90IHNob3cgYW55IHNvdXJjZSBvciBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgInZpc2EgaW50ZSBrw6RsbC0gZWxsZXIgbcOlbHByZWZpeCIKKworIzogZGlmZi5jOjUzNTgKK21zZ2lkICJzaG93IGNvbnRleHQgYmV0d2VlbiBkaWZmIGh1bmtzIHVwIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGxpbmVzIgorbXNnc3RyICJ2aXNhIHNhbW1uaGFuZyBtZWxsYW4gZGlmZi1zdHlja2VuIHVwcCB0aWxsIGFuZ2l2ZXQgYW50YWwgcmFkZXIiCisKKyM6IGRpZmYuYzo1MzYyIGRpZmYuYzo1MzY3IGRpZmYuYzo1MzcyCittc2dpZCAiPGNoYXI+IgorbXNnc3RyICI8dGVja2VuPiIKKworIzogZGlmZi5jOjUzNjMKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBuZXcgbGluZSBpbnN0ZWFkIG9mICcrJyIKK21zZ3N0ciAiYW5nZSB0ZWNrZW4gZsO2ciBhdHQgYW5nZSBueSByYWQgaXN0w6RsbGV0IGbDtnIgXCIrXCIiCisKKyM6IGRpZmYuYzo1MzY4Cittc2dpZCAic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGFuIG9sZCBsaW5lIGluc3RlYWQgb2YgJy0nIgorbXNnc3RyICJhbmdlIHRlY2tlbiBmw7ZyIGF0dCBhbmdlIGdhbW1hbCByYWQgaXN0w6RsbGV0IGbDtnIgXCItXCIiCisKKyM6IGRpZmYuYzo1MzczCittc2dpZCAic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGEgY29udGV4dCBpbnN0ZWFkIG9mICcgJyIKK21zZ3N0ciAiYW5nZSB0ZWNrZW4gZsO2ciBhdHQgYW5nZSBzYW1tYW5oYW5nIGlzdMOkbGxldCBmw7ZyIFwiIFwiIgorCisjOiBkaWZmLmM6NTM3NgorbXNnaWQgIkRpZmYgcmVuYW1lIG9wdGlvbnMiCittc2dzdHIgIkRpZmYtbmFtbmJ5dGVzZmxhZ2dvciIKKworIzogZGlmZi5jOjUzNzcKK21zZ2lkICI8bj5bLzxtPl0iCittc2dzdHIgIjxuPlsvPG0+XSIKKworIzogZGlmZi5jOjUzNzgKK21zZ2lkICJicmVhayBjb21wbGV0ZSByZXdyaXRlIGNoYW5nZXMgaW50byBwYWlycyBvZiBkZWxldGUgYW5kIGNyZWF0ZSIKK21zZ3N0ciAiZGVsYSB1cHAga29tcGxldHRhIG9tc2tyaXZuaW5nYXIgdGlsbCB0YSBib3J0IG9jaCBza2FwYS1wYXIiCisKKyM6IGRpZmYuYzo1MzgyCittc2dpZCAiZGV0ZWN0IHJlbmFtZXMiCittc2dzdHIgImRldGVrdGVyYSBuYW1uw6RuZHJpbmdhciIKKworIzogZGlmZi5jOjUzODYKK21zZ2lkICJvbWl0IHRoZSBwcmVpbWFnZSBmb3IgZGVsZXRlcyIKK21zZ3N0ciAidGEgYm9ydCBmw7ZyLXZlcnNpb24gZsO2ciBib3J0dGFnbmluZ2FyIgorCisjOiBkaWZmLmM6NTM4OQorbXNnaWQgImRldGVjdCBjb3BpZXMiCittc2dzdHIgImRldGVrdGVyYSBrb3Bpb3IiCisKKyM6IGRpZmYuYzo1MzkzCittc2dpZCAidXNlIHVubW9kaWZpZWQgZmlsZXMgYXMgc291cmNlIHRvIGZpbmQgY29waWVzIgorbXNnc3RyICJhbnbDpG5kIG9mw7Zyw6RuZHJhZGUgc29tIGvDpGxsYSBmw7ZyIGF0dCBoaXR0YSBrb3Bpb3IiCisKKyM6IGRpZmYuYzo1Mzk1Cittc2dpZCAiZGlzYWJsZSByZW5hbWUgZGV0ZWN0aW9uIgorbXNnc3RyICJpbmFrdGl2ZXJhIGRldGVrdGVyaW5nIGF2IG5hbW5ieXRlbiIKKworIzogZGlmZi5jOjUzOTgKK21zZ2lkICJ1c2UgZW1wdHkgYmxvYnMgYXMgcmVuYW1lIHNvdXJjZSIKK21zZ3N0ciAiYW52w6RuZCB0b21tYSBibG9iOmFyIHNvbSBuYW1uw6RuZHJpbmdza8OkbGxhIgorCisjOiBkaWZmLmM6NTQwMAorbXNnaWQgImNvbnRpbnVlIGxpc3RpbmcgdGhlIGhpc3Rvcnkgb2YgYSBmaWxlIGJleW9uZCByZW5hbWVzIgorbXNnc3RyICJmb3J0c8OkdHQgbGlzdGEgaGlzdG9yaWtlbiBmw7ZyIGVuIGZpbCBib3J0b20gbmFtbsOkbmRyaW5nYXIiCisKKyM6IGRpZmYuYzo1NDAzCittc2dpZCAiIgorInByZXZlbnQgcmVuYW1lL2NvcHkgZGV0ZWN0aW9uIGlmIHRoZSBudW1iZXIgb2YgcmVuYW1lL2NvcHkgdGFyZ2V0cyBleGNlZWRzICIKKyJnaXZlbiBsaW1pdCIKK21zZ3N0ciAiIgorImbDtnJoaW5kcmEgbmFtbmJ5dGUva29waWUtZGV0ZWt0ZXJpbmcgb20gYW50YWxldCBuYW1uYnl0ZW4va29waW9yIMO2dmVyc2tyaXZlciAiCisiZ2l2ZW4gZ3LDpG5zIgorCisjOiBkaWZmLmM6NTQwNQorbXNnaWQgIkRpZmYgYWxnb3JpdGhtIG9wdGlvbnMiCittc2dzdHIgIkFsdGVybmF0aXYgZsO2ciBkaWZmLWFsZ29yaXRtIgorCisjOiBkaWZmLmM6NTQwNworbXNnaWQgInByb2R1Y2UgdGhlIHNtYWxsZXN0IHBvc3NpYmxlIGRpZmYiCittc2dzdHIgInNrYXBhIG1pbnN0YSBtw7ZqbGlnYSBkaWZmIgorCisjOiBkaWZmLmM6NTQxMAorbXNnaWQgImlnbm9yZSB3aGl0ZXNwYWNlIHdoZW4gY29tcGFyaW5nIGxpbmVzIgorbXNnc3RyICJpZ25vcmVyYSBibGFua3RlY2tlbiB2aWQgcmFkasOkbWbDtnJlbHNlIgorCisjOiBkaWZmLmM6NTQxMworbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIGFtb3VudCBvZiB3aGl0ZXNwYWNlIgorbXNnc3RyICJpZ25vcmVyYSDDpG5kcmluZ2FyIGkgYW50YWwgYmxhbmt0ZWNrZW4gdmlkIHJhZGrDpG1mw7ZyZWxzZSIKKworIzogZGlmZi5jOjU0MTYKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyBpbiB3aGl0ZXNwYWNlIGF0IEVPTCIKK21zZ3N0ciAiaWdub3JlcmEgYmxhbmt0ZWNrZW4gdmlkIHJhZHNsdXQiCisKKyM6IGRpZmYuYzo1NDE5Cittc2dpZCAiaWdub3JlIGNhcnJpZXItcmV0dXJuIGF0IHRoZSBlbmQgb2YgbGluZSIKK21zZ3N0ciAiaWdub3JlcmEgQ1ItdGVja2VuIHZpZCByYWRzbHV0IgorCisjOiBkaWZmLmM6NTQyMgorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIHdob3NlIGxpbmVzIGFyZSBhbGwgYmxhbmsiCittc2dzdHIgImlnbm9yZXJhIMOkbmRyaW5nYXIgaSByYWRlciBzb20gw6RyIGhlbHQgYmxhbmthIgorCisjOiBkaWZmLmM6NTQyNQorbXNnaWQgImhldXJpc3RpYyB0byBzaGlmdCBkaWZmIGh1bmsgYm91bmRhcmllcyBmb3IgZWFzeSByZWFkaW5nIgorbXNnc3RyICJoZXVyaXN0aWsgZsO2ciBhdHQgZmx5dHRhIGRpZmYtZ3LDpG5zZXIgZsO2ciBsw6R0dGFyZSBsw6RzbmluZyIKKworIzogZGlmZi5jOjU0MjgKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcInBhdGllbmNlIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgInNrYXBhIGRpZmZhciBtZWQgYWxnb3JpdG1lbiBcInBhdGllbmNlIGRpZmZcIiIKKworIzogZGlmZi5jOjU0MzIKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcImhpc3RvZ3JhbSBkaWZmXCIgYWxnb3JpdGhtIgorbXNnc3RyICJza2FwYSBkaWZmYXIgbWVkIGFsZ29yaXRtZW4gXCJoaXN0b2dyYW0gZGlmZlwiIgorCisjOiBkaWZmLmM6NTQzNAorbXNnaWQgIjxhbGdvcml0aG0+IgorbXNnc3RyICI8YWxnb3JpdG0+IgorCisjOiBkaWZmLmM6NTQzNQorbXNnaWQgImNob29zZSBhIGRpZmYgYWxnb3JpdGhtIgorbXNnc3RyICJ2w6RsaiBlbiBkaWZmLWFsZ29yaXRtIgorCisjOiBkaWZmLmM6NTQzNworbXNnaWQgIjx0ZXh0PiIKK21zZ3N0ciAiPHRleHQ+IgorCisjOiBkaWZmLmM6NTQzOAorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwiYW5jaG9yZWQgZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAic2thcGEgZGlmZmFyIG1lZCBhbGdvcml0bWVuIFwiYW5jaG9yZWQgZGlmZlwiIgorCisjOiBkaWZmLmM6NTQ0MCBkaWZmLmM6NTQ0OSBkaWZmLmM6NTQ1MgorbXNnaWQgIjxtb2RlPiIKK21zZ3N0ciAiPGzDpGdlPiIKKworIzogZGlmZi5jOjU0NDEKK21zZ2lkICJzaG93IHdvcmQgZGlmZiwgdXNpbmcgPG1vZGU+IHRvIGRlbGltaXQgY2hhbmdlZCB3b3JkcyIKK21zZ3N0ciAidmlzYSBvcmRkaWZmLCBkw6RyIDxsw6RnZT4gYXZncsOkbnNhciDDpG5kcmFkZSBvcmQiCisKKyM6IGRpZmYuYzo1NDQzIGRpZmYuYzo1NDQ2IGRpZmYuYzo1NDkxCittc2dpZCAiPHJlZ2V4PiIKK21zZ3N0ciAiPHJlZ3V0dHI+IgorCisjOiBkaWZmLmM6NTQ0NAorbXNnaWQgInVzZSA8cmVnZXg+IHRvIGRlY2lkZSB3aGF0IGEgd29yZCBpcyIKK21zZ3N0ciAiYW52w6RuZCA8cmVndXR0cj4gZsO2ciBhdHQgYmVzdMOkbW1hIHZhZCBzb20gw6RyIGV0dCBvcmQiCisKKyM6IGRpZmYuYzo1NDQ3Cittc2dpZCAiZXF1aXZhbGVudCB0byAtLXdvcmQtZGlmZj1jb2xvciAtLXdvcmQtZGlmZi1yZWdleD08cmVnZXg+IgorbXNnc3RyICJtb3RzdmFyYXIgLS13b3JkLWRpZmY9Y29sb3IgLS13b3JkLWRpZmYtcmVnZXg9PHJlZ3V0dHI+IgorCisjOiBkaWZmLmM6NTQ1MAorbXNnaWQgIm1vdmVkIGxpbmVzIG9mIGNvZGUgYXJlIGNvbG9yZWQgZGlmZmVyZW50bHkiCittc2dzdHIgImZseXR0YWRlIGtvZHJhZGVyIGbDpHJnYXMgcMOlIGFubmF0IHPDpHR0IgorCisjOiBkaWZmLmM6NTQ1MworbXNnaWQgImhvdyB3aGl0ZSBzcGFjZXMgYXJlIGlnbm9yZWQgaW4gLS1jb2xvci1tb3ZlZCIKK21zZ3N0ciAiaHVyIGJsYW5rdGVja2VuIGlnbm9yZXJhcyBpIC0tY29sb3ItbW92ZWQiCisKKyM6IGRpZmYuYzo1NDU2Cittc2dpZCAiT3RoZXIgZGlmZiBvcHRpb25zIgorbXNnc3RyICJBbmRyYSBkaWZmLWZsYWdnb3IiCisKKyM6IGRpZmYuYzo1NDU4Cittc2dpZCAid2hlbiBydW4gZnJvbSBzdWJkaXIsIGV4Y2x1ZGUgY2hhbmdlcyBvdXRzaWRlIGFuZCBzaG93IHJlbGF0aXZlIHBhdGhzIgorbXNnc3RyICIiCisidmlkIHN0YXJ0IGZyw6VuIHVuZGVya2F0YWxvZywgdXRlc2x1dCDDpG5kcmluZ2FyIHV0YW5mw7ZyIG9jaCB2aXNhIHJlbGF0aXZhICIKKyJzw7ZrdsOkZ2FyIgorCisjOiBkaWZmLmM6NTQ2MgorbXNnaWQgInRyZWF0IGFsbCBmaWxlcyBhcyB0ZXh0IgorbXNnc3RyICJoYW50ZXJhIGFsbGEgZmlsZXIgc29tIHRleHQiCisKKyM6IGRpZmYuYzo1NDY0Cittc2dpZCAic3dhcCB0d28gaW5wdXRzLCByZXZlcnNlIHRoZSBkaWZmIgorbXNnc3RyICJ2w6R4bGEgdHbDpSBpbmRhdGFmaWxlciwgdsOkbmQgZGlmZmVuIgorCisjOiBkaWZmLmM6NTQ2NgorbXNnaWQgImV4aXQgd2l0aCAxIGlmIHRoZXJlIHdlcmUgZGlmZmVyZW5jZXMsIDAgb3RoZXJ3aXNlIgorbXNnc3RyICJhdnNsdXRhIG1lZCAxIHZpZCDDpG5kcmluZ2FyLCBhbm5hcnMgMCIKKworIzogZGlmZi5jOjU0NjgKK21zZ2lkICJkaXNhYmxlIGFsbCBvdXRwdXQgb2YgdGhlIHByb2dyYW0iCittc2dzdHIgInNsw6UgYXYgYWxsYSB1dGRhdGEgZnLDpW4gcHJvZ3JhbW1ldCIKKworIzogZGlmZi5jOjU0NzAKK21zZ2lkICJhbGxvdyBhbiBleHRlcm5hbCBkaWZmIGhlbHBlciB0byBiZSBleGVjdXRlZCIKK21zZ3N0ciAidGlsbMOldCBrw7ZyYSBlbiBleHRlcm4gZGlmZi1oasOkbHBhcmUiCisKKyM6IGRpZmYuYzo1NDcyCittc2dpZCAicnVuIGV4dGVybmFsIHRleHQgY29udmVyc2lvbiBmaWx0ZXJzIHdoZW4gY29tcGFyaW5nIGJpbmFyeSBmaWxlcyIKK21zZ3N0ciAia8O2ciBleHRlcm50IHRleHRrb252ZXJ0ZXJpbmdzZmlsZXIgbsOkciBiaW7DpHJmaWxlciBqw6RtZsO2cnMiCisKKyM6IGRpZmYuYzo1NDc0Cittc2dpZCAiPHdoZW4+IgorbXNnc3RyICI8bsOkcj4iCisKKyM6IGRpZmYuYzo1NDc1Cittc2dpZCAiaWdub3JlIGNoYW5nZXMgdG8gc3VibW9kdWxlcyBpbiB0aGUgZGlmZiBnZW5lcmF0aW9uIgorbXNnc3RyICJpZ25vcmVyYSDDpG5kcmluZ2FyIGkgdW5kZXJtb2R1bGVyIG7DpHIgZGlmZmVuIHNrYXBhcyIKKworIzogZGlmZi5jOjU0NzgKK21zZ2lkICI8Zm9ybWF0PiIKK21zZ3N0ciAiPGZvcm1hdD4iCisKKyM6IGRpZmYuYzo1NDc5Cittc2dpZCAic3BlY2lmeSBob3cgZGlmZmVyZW5jZXMgaW4gc3VibW9kdWxlcyBhcmUgc2hvd24iCittc2dzdHIgImFuZ2UgaHVyIMOkbmRyaW5nYXIgaSB1bmRlcm1vZHVsZXIgdmlzYXMiCisKKyM6IGRpZmYuYzo1NDgzCittc2dpZCAiaGlkZSAnZ2l0IGFkZCAtTicgZW50cmllcyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAiZMO2bGogXCJnaXQgYWRkIC1OXCItcG9zdGVyIGZyw6VuIGluZGV4ZXQiCisKKyM6IGRpZmYuYzo1NDg2Cittc2dpZCAidHJlYXQgJ2dpdCBhZGQgLU4nIGVudHJpZXMgYXMgcmVhbCBpbiB0aGUgaW5kZXgiCittc2dzdHIgInRvbGthIFwiZ2l0IGFkZCAtTlwiLXBvc3RlciBzb20gw6RrdGEgaSBpbmRleGV0IgorCisjOiBkaWZmLmM6NTQ4OAorbXNnaWQgIjxzdHJpbmc+IgorbXNnc3RyICI8c3Ryw6RuZz4iCisKKyM6IGRpZmYuYzo1NDg5Cittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisic3RyaW5nIgorbXNnc3RyICJzZSBlZnRlciDDpG5kcmluZ2FyIHNvbSDDpG5kcmFyIGFudGFsZXQgZsO2cmVrb21zdGVyIGF2IGFuZ2l2ZW4gc3Ryw6RuZyIKKworIzogZGlmZi5jOjU0OTIKK21zZ2lkICIiCisibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkICIKKyJyZWdleCIKK21zZ3N0ciAiIgorInNlIGVmdGVyIMOkbmRyaW5nYXIgc29tIMOkbmRyYXIgYW50YWxldCBmw7ZyZWtvbXN0ZXIgYXYgYW5naXZldCByZWd1bGrDpHJ0ICIKKyJ1dHRyeWNrIgorCisjOiBkaWZmLmM6NTQ5NQorbXNnaWQgInNob3cgYWxsIGNoYW5nZXMgaW4gdGhlIGNoYW5nZXNldCB3aXRoIC1TIG9yIC1HIgorbXNnc3RyICJ2aXNhIGFsbGEgw6RuZHJpbmdhciBpIMOkbmRyaW5nc3VwcHPDpHR0bmluZ2VuIG1lZCAtUyBlbGxlciAtRyIKKworIzogZGlmZi5jOjU0OTgKK21zZ2lkICJ0cmVhdCA8c3RyaW5nPiBpbiAtUyBhcyBleHRlbmRlZCBQT1NJWCByZWd1bGFyIGV4cHJlc3Npb24iCittc2dzdHIgInRvbGthIDxzdHLDpG5nPiBpIC1TIHNvbSB1dMO2a2FkZSBQT1NJWC1yZWd1bGrDpHJhIHV0dHJ5Y2siCisKKyM6IGRpZmYuYzo1NTAxCittc2dpZCAiY29udHJvbCB0aGUgb3JkZXIgaW4gd2hpY2ggZmlsZXMgYXBwZWFyIGluIHRoZSBvdXRwdXQiCittc2dzdHIgInN0eXIgb3JkbmluZ2VuIGkgdmlsa2VuIGZpbGVyIHZpc2FzIGkgdXRkYXRhIgorCisjOiBkaWZmLmM6NTUwMgorbXNnaWQgIjxvYmplY3QtaWQ+IgorbXNnc3RyICI8b2JqZWt0LWlkPiIKKworIzogZGlmZi5jOjU1MDMKK21zZ2lkICIiCisibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkICIKKyJvYmplY3QiCittc2dzdHIgInNlIGVmdGVyIMOkbmRyaW5nYXIgc29tIMOkbmRyYXIgYW50YWxldCBmw7ZyZWtvbXN0ZXIgYXYgYW5naXZldCBvYmpla3QiCisKKyM6IGRpZmYuYzo1NTA1Cittc2dpZCAiWyhBfEN8RHxNfFJ8VHxVfFh8QikuLi5bKl1dIgorbXNnc3RyICJbKEF8Q3xEfE18UnxUfFV8WHxCKS4uLlsqXV0iCisKKyM6IGRpZmYuYzo1NTA2Cittc2dpZCAic2VsZWN0IGZpbGVzIGJ5IGRpZmYgdHlwZSIKK21zZ3N0ciAidsOkbGogZmlsdGVyIGVmdGVyIGRpZmYtdHlwIgorCisjOiBkaWZmLmM6NTUwOAorbXNnaWQgIjxmaWxlPiIKK21zZ3N0ciAiPGZpbD4iCisKKyM6IGRpZmYuYzo1NTA5Cittc2dpZCAiT3V0cHV0IHRvIGEgc3BlY2lmaWMgZmlsZSIKK21zZ3N0ciAiU2tyaXYgdXRkYXRhIHRpbGwgZW4gc3BlY2lmaWsgZmlsIgorCisjOiBkaWZmLmM6NjE2NAogbXNnaWQgImluZXhhY3QgcmVuYW1lIGRldGVjdGlvbiB3YXMgc2tpcHBlZCBkdWUgdG8gdG9vIG1hbnkgZmlsZXMuIgogbXNnc3RyICIiCiAib27Dtmpha3RpZyBuYW1uYnl0ZXNkZXRla3RlcmluZyB1dGbDtnJkZXMgaW50ZSBww6UgZ3J1bmQgYXYgZsO2ciBtw6VuZ2EgZmlsZXIuIgogCi0jOiBkaWZmLmM6NTgyNgorIzogZGlmZi5jOjYxNjcKIG1zZ2lkICJvbmx5IGZvdW5kIGNvcGllcyBmcm9tIG1vZGlmaWVkIHBhdGhzIGR1ZSB0byB0b28gbWFueSBmaWxlcy4iCiBtc2dzdHIgImhpdHRhZGUgYmFyYSBrb3Bpb3IgZnLDpW4gw6RuZHJhZGUgc8O2a3bDpGdhciBww6UgZ3J1bmQgYXYgZsO2ciBtw6VuZ2EgZmlsZXIuIgogCi0jOiBkaWZmLmM6NTgyOQorIzogZGlmZi5jOjYxNzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInlvdSBtYXkgd2FudCB0byBzZXQgeW91ciAlcyB2YXJpYWJsZSB0byBhdCBsZWFzdCAlZCBhbmQgcmV0cnkgdGhlIGNvbW1hbmQuIgogbXNnc3RyICIiCiAiZHUga2FuIHPDpHR0YSB2YXJpYWJlbG4gJXMgdGlsbCDDpXRtaW5zdG9uZSAlZCBvY2ggZsO2cnPDtmthIGtvbW1hbmRvdCBww6Ugbnl0dC4iCiAKLSM6IGRpci5jOjU3NgorIzogZGlyLmM6NTU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGhzcGVjICclcycgZGlkIG5vdCBtYXRjaCBhbnkgZmlsZShzKSBrbm93biB0byBnaXQiCiBtc2dzdHIgInPDtmt2w6Rnc2FuZ2l2ZWxzZW4gXCIlc1wiIG1vdHN2YXJhZGUgaW50ZSBuw6VncmEgYXYgZ2l0IGvDpG5kYSBmaWxlciIKIAotIzogZGlyLmM6OTY1CisjOiBkaXIuYzo2OTUgZGlyLmM6NzI0IGRpci5jOjczNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgcGF0dGVybjogJyVzJyIKK21zZ3N0ciAib2vDpG50IG3Dtm5zdGVyOiAlcyIKKworIzogZGlyLmM6NzU0IGRpci5jOjc2OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgbmVnYXRpdmUgcGF0dGVybjogJyVzJyIKK21zZ3N0ciAib2vDpG50IG5lZ2F0aXZ0IG3Dtm5zdGVyOiAlcyIKKworIzogZGlyLmM6Nzg2CisjLCBjLWZvcm1hdAorbXNnaWQgInlvdXIgc3BhcnNlLWNoZWNrb3V0IGZpbGUgbWF5IGhhdmUgaXNzdWVzOiBwYXR0ZXJuICclcycgaXMgcmVwZWF0ZWQiCittc2dzdHIgIiIKKyJkaW4gXCJzcGFyc2UtY2hlY2tvdXRcIi1maWwga2FuIGhhIHByb2JsZW06IG3Dtm5zdHJldCBcIiVzXCIgZsO2cmVrb21tZXIgZmxlcmEgIgorImfDpW5nZXIiCisKKyM6IGRpci5jOjc5NgorbXNnaWQgImRpc2FibGluZyBjb25lIHBhdHRlcm4gbWF0Y2hpbmciCittc2dzdHIgImluYWt0aXZlcmFyIGtvbm3Dtm5zdGVybWF0Y2huaW5nIgorCisjOiBkaXIuYzoxMTczCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCB1c2UgJXMgYXMgYW4gZXhjbHVkZSBmaWxlIgogbXNnc3RyICJrYW4gaW50ZSBhbnbDpG5kYSAlcyBzb20gZXhrbHVkZXJpbmdzZmlsIgogCi0jOiBkaXIuYzoxODgwCisjOiBkaXIuYzoyMTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuIGRpcmVjdG9yeSAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBrYXRhbG9nZW4gXCIlc1wiIgogCi0jOiBkaXIuYzoyMTIyCisjOiBkaXIuYzoyNDc5CiBtc2dpZCAiZmFpbGVkIHRvIGdldCBrZXJuZWwgbmFtZSBhbmQgaW5mb3JtYXRpb24iCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBow6RtdGEga8Okcm5hbnMgbmFtbiBvY2ggaW5mb3JtYXRpb24iCiAKLSM6IGRpci5jOjIyNDYKKyM6IGRpci5jOjI2MDMKIG1zZ2lkICJ1bnRyYWNrZWQgY2FjaGUgaXMgZGlzYWJsZWQgb24gdGhpcyBzeXN0ZW0gb3IgbG9jYXRpb24iCiBtc2dzdHIgIm9zcMOlcmFkIGNhY2hlIMOkciBpbmFrdGl2ZXJhZCBww6Ugc3lzdGVtZXQgZWxsZXIgcGxhdHNlbiIKIAotIzogZGlyLmM6MzA0NworIzogZGlyLmM6MzQwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbmRleCBmaWxlIGNvcnJ1cHQgaW4gcmVwbyAlcyIKIG1zZ3N0ciAiaW5kZXhmaWxlbiB0cmFzaWcgaSBhcmtpdmV0ICVzIgogCi0jOiBkaXIuYzozMDkyIGRpci5jOjMwOTcKKyM6IGRpci5jOjM0NTIgZGlyLmM6MzQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yaWVzIGZvciAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSBrYXRhbG9nZXIgZsO2ciAlcyIKIAotIzogZGlyLmM6MzEyNgorIzogZGlyLmM6MzQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbWlncmF0ZSBnaXQgZGlyZWN0b3J5IGZyb20gJyVzJyB0byAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIG1pZ3JlcmEgZ2l0LWthdGFsb2cgZnLDpW4gXCIlc1wiIHRpbGwgXCIlc1wiIgpAQCAtMjMyNCwzMDQgKzM3MzUsMjk2IEBACiAjOiBlZGl0b3IuYzo3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJoaW50OiBXYWl0aW5nIGZvciB5b3VyIGVkaXRvciB0byBjbG9zZSB0aGUgZmlsZS4uLiVjIgotbXNnc3RyICJ0aXBzOiBWw6RudGFyIHDDpSBhdHQgdGV4dHJlZGlnZXJpbmdzcHJvZ3JhbW1ldCBza2FsbCBzdMOkbmdhIGZpbGVuLi4uJWMiCittc2dzdHIgInRpcHM6IFbDpG50YXIgcMOlIGF0dCB0ZXh0cmVkaWdlcmluZ3Nwcm9ncmFtbWV0IHNrYSBzdMOkbmdhIGZpbGVuLi4uJWMiCiAKICM6IGVudHJ5LmM6MTc4CiBtc2dpZCAiRmlsdGVyaW5nIGNvbnRlbnQiCiBtc2dzdHIgIkZpbHRyZXJhciBpbm5laMOlbGwiCiAKLSM6IGVudHJ5LmM6NDY1CisjOiBlbnRyeS5jOjQ3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc3RhdCBmaWxlICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBmaWxlbiBcIiVzXCIiCiAKLSM6IGVudmlyb25tZW50LmM6MTUwCisjOiBlbnZpcm9ubWVudC5jOjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgZ2l0IG5hbWVzcGFjZSBwYXRoIFwiJXNcIiIKIG1zZ3N0ciAiZmVsYWt0aWcgZ2l0LW5hbW5yeW1kc3PDtmt2w6RnIFwiJXNcIiIKIAotIzogZW52aXJvbm1lbnQuYzozMzIKKyM6IGVudmlyb25tZW50LmM6MzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzZXQgR0lUX0RJUiB0byAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIHN0w6RsbGEgaW4gR0lUX0RJUiB0aWxsIFwiJXNcIiIKIAotIzogZXhlYy1jbWQuYzozNjEKKyM6IGV4ZWMtY21kLmM6MzYzCiAjLCBjLWZvcm1hdAogbXNnaWQgInRvbyBtYW55IGFyZ3MgdG8gcnVuICVzIgogbXNnc3RyICJmw7ZyIG3DpW5nYSBmbGFnZ29yIGbDtnIgYXR0IGvDtnJhICVzIgogCi0jOiBmZXRjaC1vYmplY3QuYzoxNwotbXNnaWQgIlJlbW90ZSB3aXRoIG5vIFVSTCIKLW1zZ3N0ciAiRmrDpHJyIHV0YW4gVVJMIgotCi0jOiBmZXRjaC1wYWNrLmM6MTUxCisjOiBmZXRjaC1wYWNrLmM6MTUwCiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIHNoYWxsb3cgbGlzdCIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6IGbDtnJ2w6RudGFkZSBncnVuZCBsaXN0YSIKIAotIzogZmV0Y2gtcGFjay5jOjE2MworIzogZmV0Y2gtcGFjay5jOjE1MworbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBhIGZsdXNoIHBhY2tldCBhZnRlciBzaGFsbG93IGxpc3QiCittc2dzdHIgImdpdCBmZXRjaC1wYWNrOiBmw7ZydsOkbnRhZGUgZXR0IGZsdXNoLXBha2V0IGVmdGVyIGdydW5kIGxpc3RhIgorCisjOiBmZXRjaC1wYWNrLmM6MTY0CiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCBhIGZsdXNoIHBhY2tldCIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6IGbDtnJ2w6RudGFkZSBBQ0svTkFLLCBmaWNrIGZsdXNoLXBha2V0IgogCi0jOiBmZXRjaC1wYWNrLmM6MTgzCisjOiBmZXRjaC1wYWNrLmM6MTg0CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgJyVzJyIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6IGbDtnJ2w6RudGFkZSBBQ0svTkFLLCBmaWNrIFwiJXNcIiIKIAotIzogZmV0Y2gtcGFjay5jOjI1MwotbXNnaWQgIi0tc3RhdGVsZXNzLXJwYyByZXF1aXJlcyBtdWx0aV9hY2tfZGV0YWlsZWQiCi1tc2dzdHIgIi0tc3RhdGVsZXNzLXJwYyBrcsOkdmVyIOKAnW11bHRpX2Fja19kZXRhaWxlZOKAnSIKKyM6IGZldGNoLXBhY2suYzoxOTUKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gcmVtb3RlIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSB0aWxsIGZqw6RycmVuIgogCi0jOiBmZXRjaC1wYWNrLmM6MzQ3IGZldGNoLXBhY2suYzoxMjc3CisjOiBmZXRjaC1wYWNrLmM6MjU3Cittc2dpZCAiLS1zdGF0ZWxlc3MtcnBjIHJlcXVpcmVzIG11bHRpX2Fja19kZXRhaWxlZCIKK21zZ3N0ciAiLS1zdGF0ZWxlc3MtcnBjIGtyw6R2ZXIgXCJtdWx0aV9hY2tfZGV0YWlsZWRcIiIKKworIzogZmV0Y2gtcGFjay5jOjM1NiBmZXRjaC1wYWNrLmM6MTM0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHNoYWxsb3cgbGluZTogJXMiCiBtc2dzdHIgIm9naWx0aWcgXCJzaGFsbG93XCItcmFkOiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM1MyBmZXRjaC1wYWNrLmM6MTI4MworIzogZmV0Y2gtcGFjay5jOjM2MiBmZXRjaC1wYWNrLmM6MTM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHVuc2hhbGxvdyBsaW5lOiAlcyIKIG1zZ3N0ciAib2dpbHRpZyBcInVuc2hhbGxvd1wiLXJhZDogJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNTUgZmV0Y2gtcGFjay5jOjEyODUKKyM6IGZldGNoLXBhY2suYzozNjQgZmV0Y2gtcGFjay5jOjEzNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IG5vdCBmb3VuZDogJXMiCiBtc2dzdHIgIm9iamVrdGV0IGhpdHRhZGVzIGludGU6ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzU4IGZldGNoLXBhY2suYzoxMjg4CisjOiBmZXRjaC1wYWNrLmM6MzY3IGZldGNoLXBhY2suYzoxMzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIGluIG9iamVjdDogJXMiCiBtc2dzdHIgImZlbCBpIG9iamVrdDogJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNjAgZmV0Y2gtcGFjay5jOjEyOTAKKyM6IGZldGNoLXBhY2suYzozNjkgZmV0Y2gtcGFjay5jOjEzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc2hhbGxvdyBmb3VuZDogJXMiCiBtc2dzdHIgImluZ2VuIFwic2hhbGxvd1wiIGhpdHRhZGVzOiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM2MyBmZXRjaC1wYWNrLmM6MTI5MworIzogZmV0Y2gtcGFjay5jOjM3MiBmZXRjaC1wYWNrLmM6MTM1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBzaGFsbG93L3Vuc2hhbGxvdywgZ290ICVzIgogbXNnc3RyICJmw7ZydsOkbnRhZGUgc2hhbGxvdy91bnNoYWxsb3csIGZpY2sgJXMiCiAKLSM6IGZldGNoLXBhY2suYzo0MDQKKyM6IGZldGNoLXBhY2suYzo0MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ290ICVzICVkICVzIgogbXNnc3RyICJmaWNrICVzICVkICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6NDIxCisjOiBmZXRjaC1wYWNrLmM6NDMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29tbWl0ICVzIgogbXNnc3RyICJvZ2lsdGlnIGluY2hlY2tuaW5nICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6NDUyCisjOiBmZXRjaC1wYWNrLmM6NDYyCiBtc2dpZCAiZ2l2aW5nIHVwIgogbXNnc3RyICJnZXIgdXBwIgogCi0jOiBmZXRjaC1wYWNrLmM6NDY0IHByb2dyZXNzLmM6MjI5CisjOiBmZXRjaC1wYWNrLmM6NDc1IHByb2dyZXNzLmM6MzIzCiBtc2dpZCAiZG9uZSIKIG1zZ3N0ciAia2xhcnQiCiAKLSM6IGZldGNoLXBhY2suYzo0NzYKKyM6IGZldGNoLXBhY2suYzo0ODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ290ICVzICglZCkgJXMiCiBtc2dzdHIgImZpY2sgJXMgKCVkKSAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjUyMgorIzogZmV0Y2gtcGFjay5jOjUzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJNYXJraW5nICVzIGFzIGNvbXBsZXRlIgogbXNnc3RyICJNYXJrZXJhciAlcyBzb20ga29tcGxldHQiCiAKLSM6IGZldGNoLXBhY2suYzo3NjQKKyM6IGZldGNoLXBhY2suYzo3NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWxyZWFkeSBoYXZlICVzICglcykiCiBtc2dzdHIgImhhciByZWRhbiAlcyAoJXMpIgogCi0jOiBmZXRjaC1wYWNrLmM6ODAzCisjOiBmZXRjaC1wYWNrLmM6ODE4CiBtc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiBtc2dzdHIgImZldGNoLXBhdGNoOiBrdW5kZSBpbnRlIGdyZW5hIGF2IHNpZGJhbmRzbXVsdGlwbGV4YXJlIgogCi0jOiBmZXRjaC1wYWNrLmM6ODExCisjOiBmZXRjaC1wYWNrLmM6ODI2CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBwYWNrIGhlYWRlciIKIG1zZ3N0ciAicHJvdG9rb2xsZmVsOiBmZWxha3RpZ3QgcGFja2h1dnVkIgogCi0jOiBmZXRjaC1wYWNrLmM6ODc5CisjOiBmZXRjaC1wYWNrLmM6OTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZldGNoLXBhY2s6IHVuYWJsZSB0byBmb3JrIG9mZiAlcyIKIG1zZ3N0ciAiZmV0Y2gtcGF0Y2g6IGt1bmRlIGludGUgZ3JlbmEgYXYgJXMiCiAKLSM6IGZldGNoLXBhY2suYzo4OTUKKyM6IGZldGNoLXBhY2suYzo5MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZmFpbGVkIgogbXNnc3RyICIlcyBtaXNzbHlja2FkZXMiCiAKLSM6IGZldGNoLXBhY2suYzo4OTcKKyM6IGZldGNoLXBhY2suYzo5MTgKIG1zZ2lkICJlcnJvciBpbiBzaWRlYmFuZCBkZW11bHRpcGxleGVyIgogbXNnc3RyICJmZWwgaSBzaWRiYW5kcy1hdm11bHRpcGxleGFyZSIKIAotIzogZmV0Y2gtcGFjay5jOjkyNgotbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2xpZW50cyIKLW1zZ3N0ciAiU2VydmVybiBzdMO2ZGVyIGludGUga2xpZW50ZXIgbWVkIGdydW5kYSBhcmtpdiIKLQotIzogZmV0Y2gtcGFjay5jOjkzMAotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2tfZGV0YWlsZWQiCi1tc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBcIm11bHRpX2Fja19kZXRhaWxlZFwiIgotCi0jOiBmZXRjaC1wYWNrLmM6OTMzCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIG5vLWRvbmUiCi1tc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBcIm5vLWRvbmVcIiIKLQotIzogZmV0Y2gtcGFjay5jOjkzOQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2siCi1tc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBcIm11bHRpX2Fja1wiIgotCi0jOiBmZXRjaC1wYWNrLmM6OTQzCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIHNpZGUtYmFuZC02NGsiCi1tc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBcInNpZGUtYmFuZC02NGtcIiIKLQotIzogZmV0Y2gtcGFjay5jOjk0NwotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQiCi1tc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBcInNpZGUtYmFuZFwiIgotCi0jOiBmZXRjaC1wYWNrLmM6OTUxCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIGFsbG93LXRpcC1zaGExLWluLXdhbnQiCi1tc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBcImFsbG93LXRpcC1zaGExLWluLXdhbnRcIiIKLQotIzogZmV0Y2gtcGFjay5jOjk1NQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBhbGxvdy1yZWFjaGFibGUtc2hhMS1pbi13YW50IgotbXNnc3RyICJTZXJ2ZXJuIHN0w7ZkZXIgXCJhbGxvdy1yZWFjaGFibGUtc2hhMS1pbi13YW50XCIiCi0KICM6IGZldGNoLXBhY2suYzo5NjUKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgb2ZzLWRlbHRhIgotbXNnc3RyICJTZXJ2ZXJuIHN0w7ZkZXIgXCJvZnMtZGVsdGFcIiIKLQotIzogZmV0Y2gtcGFjay5jOjk3MSBmZXRjaC1wYWNrLmM6MTE1OAotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBmaWx0ZXIiCi1tc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBmaWx0ZXIiCi0KLSM6IGZldGNoLXBhY2suYzo5NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2VydmVyIHZlcnNpb24gaXMgJS4qcyIKIG1zZ3N0ciAiU2VydmVydmVyc2lvbmVuIMOkciAlLipzIgogCi0jOiBmZXRjaC1wYWNrLmM6OTg1CisjOiBmZXRjaC1wYWNrLmM6OTcwIGZldGNoLXBhY2suYzo5NzYgZmV0Y2gtcGFjay5jOjk3OSBmZXRjaC1wYWNrLmM6OTg1CisjOiBmZXRjaC1wYWNrLmM6OTg5IGZldGNoLXBhY2suYzo5OTMgZmV0Y2gtcGFjay5jOjk5NyBmZXRjaC1wYWNrLmM6MTAwMQorIzogZmV0Y2gtcGFjay5jOjEwMDUgZmV0Y2gtcGFjay5jOjEwMDkgZmV0Y2gtcGFjay5jOjEwMTMgZmV0Y2gtcGFjay5jOjEwMTcKKyM6IGZldGNoLXBhY2suYzoxMDIzIGZldGNoLXBhY2suYzoxMDI5IGZldGNoLXBhY2suYzoxMDM0IGZldGNoLXBhY2suYzoxMDM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyAlcyIKK21zZ3N0ciAiU2VydmVybiBzdMO2ZGVyICVzIgorCisjOiBmZXRjaC1wYWNrLmM6OTcyCittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjbGllbnRzIgorbXNnc3RyICJTZXJ2ZXJuIHN0w7ZkZXIgaW50ZSBrbGllbnRlciBtZWQgZ3J1bmRhIGFya2l2IgorCisjOiBmZXRjaC1wYWNrLmM6MTAzMgogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tc2hhbGxvdy1zaW5jZSIKIG1zZ3N0ciAiU2VydmVybiBzdMO2ZGVyIGludGUgLS1zaGFsbG93LXNpbmNlIgogCi0jOiBmZXRjaC1wYWNrLmM6OTg5CisjOiBmZXRjaC1wYWNrLmM6MTAzNwogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tc2hhbGxvdy1leGNsdWRlIgogbXNnc3RyICJTZXJ2ZXJuIHN0w7ZkZXIgaW50ZSAtLXNoYWxsb3ctZXhjbHVkZSIKIAotIzogZmV0Y2gtcGFjay5jOjk5MQorIzogZmV0Y2gtcGFjay5jOjEwNDEKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLWRlZXBlbiIKIG1zZ3N0ciAiU2VydmVybiBzdMO2ZGVyIGludGUgLS1kZWVwZW4iCiAKLSM6IGZldGNoLXBhY2suYzoxMDA4CisjOiBmZXRjaC1wYWNrLmM6MTA1OAogbXNnaWQgIm5vIGNvbW1vbiBjb21taXRzIgogbXNnc3RyICJpbmdhIGdlbWVuc2FtbWEgaW5jaGVja25pbmdhciIKIAotIzogZmV0Y2gtcGFjay5jOjEwMjAgZmV0Y2gtcGFjay5jOjE0MTgKKyM6IGZldGNoLXBhY2suYzoxMDcwIGZldGNoLXBhY2suYzoxNTM2CiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGZldGNoIGZhaWxlZC4iCiBtc2dzdHIgImdpdCBmZXRjaC1wYXRjaDogaMOkbXRuaW5nIG1pc3NseWNrYWRlcy4iCiAKLSM6IGZldGNoLXBhY2suYzoxMTUzCisjOiBmZXRjaC1wYWNrLmM6MTIwOQogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgcmVxdWVzdHMiCiBtc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBpbnRlIGdydW5kYSBmw7ZyZnLDpWduaW5nYXIiCiAKLSM6IGZldGNoLXBhY2suYzoxMTk5CisjOiBmZXRjaC1wYWNrLmM6MTIxNgorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBmaWx0ZXIiCittc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBmaWx0ZXIiCisKKyM6IGZldGNoLXBhY2suYzoxMjM5Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHJlcXVlc3QgdG8gcmVtb3RlIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSBhbnJvcCB0aWxsIGZqw6RycmVuIgorCisjOiBmZXRjaC1wYWNrLmM6MTI1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciByZWFkaW5nIHNlY3Rpb24gaGVhZGVyICclcyciCiBtc2dzdHIgImZlbCB2aWQgbMOkc25pbmcgYXYgc3R5Y2tlaHV2dWRldCBcIiVzXCIiCiAKLSM6IGZldGNoLXBhY2suYzoxMjA1CisjOiBmZXRjaC1wYWNrLmM6MTI2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCAnJXMnLCByZWNlaXZlZCAnJXMnIgogbXNnc3RyICJmw7ZydsOkbnRhZGUgXCIlc1wiLCB0b2cgZW1vdCBcIiVzXCIiCiAKLSM6IGZldGNoLXBhY2suYzoxMjQ0CisjOiBmZXRjaC1wYWNrLmM6MTMwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIGFja25vd2xlZGdtZW50IGxpbmU6ICclcyciCiBtc2dzdHIgImbDtnJ2w6RudGFkZSBiZWtyw6RmdGVsc2VyYWQ6IFwiJXNcIiIKIAotIzogZmV0Y2gtcGFjay5jOjEyNDkKKyM6IGZldGNoLXBhY2suYzoxMzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHByb2Nlc3NpbmcgYWNrczogJWQiCiBtc2dzdHIgImZlbCB2aWQgaGFudGVyaW5nIGF2IGJla3LDpGZ0ZWxzZXI6ICVkIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI1OQorIzogZmV0Y2gtcGFjay5jOjEzMTgKIG1zZ2lkICJleHBlY3RlZCBwYWNrZmlsZSB0byBiZSBzZW50IGFmdGVyICdyZWFkeSciCiBtc2dzdHIgInbDpG50YWRlIGF0dCBwYWtldGZpbCBza3VsbGUgc8OkbmRhcyBlZnRlciBcInJlYWR5XCIiCiAKLSM6IGZldGNoLXBhY2suYzoxMjYxCisjOiBmZXRjaC1wYWNrLmM6MTMyMAogbXNnaWQgImV4cGVjdGVkIG5vIG90aGVyIHNlY3Rpb25zIHRvIGJlIHNlbnQgYWZ0ZXIgbm8gJ3JlYWR5JyIKIG1zZ3N0ciAiIgogInbDpG50YWRlIGludGUgYXR0IG7DpWdyYSB5dHRlcmxpZ2FyZSBzZWt0aW9uZXIgc2t1bGxlIHPDpG5kYXMgZWZ0ZXIgXCJyZWFkeVwiIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI5OAorIzogZmV0Y2gtcGFjay5jOjEzNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBzaGFsbG93IGluZm86ICVkIgogbXNnc3RyICJmZWwgdmlkIGhhbnRlcmluZyBhdiBncnVuZCAoXCJzaGFsbG93XCIpIGluZm86ICVkIgogCi0jOiBmZXRjaC1wYWNrLmM6MTMxNAorIzogZmV0Y2gtcGFjay5jOjE0MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgd2FudGVkLXJlZiwgZ290ICclcyciCiBtc2dzdHIgImbDtnJ2w6RudGFkZSB3YW50ZWQtcmVmLCBmaWNrICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MTMyNAorIzogZmV0Y2gtcGFjay5jOjE0MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCB3YW50ZWQtcmVmOiAnJXMnIgogbXNnc3RyICJvdsOkbnRhZCB3YW50ZWQtcmVmOiBcIiVzXCIiCiAKLSM6IGZldGNoLXBhY2suYzoxMzI4CisjOiBmZXRjaC1wYWNrLmM6MTQxOQogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIHdhbnRlZCByZWZzOiAlZCIKIG1zZ3N0ciAiZmVsIHZpZCBoYW50ZXJpbmcgYXYgw7Zuc2thZGUgcmVmZXJlbnNlcjogJWQiCiAKLSM6IGZldGNoLXBhY2suYzoxNjQyCisjOiBmZXRjaC1wYWNrLmM6MTc2MgogbXNnaWQgIm5vIG1hdGNoaW5nIHJlbW90ZSBoZWFkIgogbXNnc3RyICJpbmdldCBtb3RzdmFyYW5kZSBmasOkcnJodXZ1ZCIKIAotIzogZmV0Y2gtcGFjay5jOjE2NjAgYnVpbHRpbi9jbG9uZS5jOjY2NAorIzogZmV0Y2gtcGFjay5jOjE3ODUgYnVpbHRpbi9jbG9uZS5jOjY4OQogbXNnaWQgInJlbW90ZSBkaWQgbm90IHNlbmQgYWxsIG5lY2Vzc2FyeSBvYmplY3RzIgogbXNnc3RyICJmasOkcnJlbiBzw6RuZGUgaW50ZSBhbGxhIG7DtmR2w6RuZGlnYSBvYmpla3QiCiAKLSM6IGZldGNoLXBhY2suYzoxNjg2CisjOiBmZXRjaC1wYWNrLmM6MTgxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIHJlbW90ZSByZWYgJXMiCiBtc2dzdHIgImluZ2VuIHPDpWRhbiBmasOkcnJlZmVyZW5zOiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjE2ODkKKyM6IGZldGNoLXBhY2suYzoxODE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBhbGxvdyByZXF1ZXN0IGZvciB1bmFkdmVydGlzZWQgb2JqZWN0ICVzIgogbXNnc3RyICJTZXJ2ZXJuIHRpbGzDpXRlciBpbnRlIGbDtnJmcsOlZ2FuIG9tIGVqIHRpbGxrw6RubmFnaXZldCBvYmpla3QgJXMiCiAKLSM6IGdwZy1pbnRlcmZhY2UuYzozMTgKKyM6IGdwZy1pbnRlcmZhY2UuYzo0MDgKIG1zZ2lkICJncGcgZmFpbGVkIHRvIHNpZ24gdGhlIGRhdGEiCiBtc2dzdHIgImdwZyBtaXNzbHlja2FkZXMgc2lnbmVyYSBkYXRhIgogCi0jOiBncGctaW50ZXJmYWNlLmM6MzQ0CisjOiBncGctaW50ZXJmYWNlLmM6NDM0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZSIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSB0ZW1wb3LDpHJhIGZpbCIKIAotIzogZ3BnLWludGVyZmFjZS5jOjM0NworIzogZ3BnLWludGVyZmFjZS5jOjQzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgd3JpdGluZyBkZXRhY2hlZCBzaWduYXR1cmUgdG8gJyVzJyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHNrcml2YSBmcmlzdMOlZW5kZSBzaWduYXR1ciB0aWxsIFwiJXNcIiIKIAotIzogZ3JhcGguYzo5NworIzogZ3JhcGguYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmUgaW52YWxpZCBjb2xvciAnJS4qcycgaW4gbG9nLmdyYXBoQ29sb3JzIgogbXNnc3RyICJpZ25vcmVyYSBmZWxha3RpZyBmw6RyZyBcIiUuKnNcIiBpIGxvZy5ncmFwaENvbG9ycyIKIAotIzogZ3JlcC5jOjIxMTMKKyM6IGdyZXAuYzo2NjgKK21zZ2lkICIiCisiZ2l2ZW4gcGF0dGVybiBjb250YWlucyBOVUxMIGJ5dGUgKHZpYSAtZiA8ZmlsZT4pLiBUaGlzIGlzIG9ubHkgc3VwcG9ydGVkICIKKyJ3aXRoIC1QIHVuZGVyIFBDUkUgdjIiCittc2dzdHIgIiIKKyJhbmdpdmV0IG3Dtm5zdGVyIGlubmVow6VsbGVyIE5VTEwtYnl0ZSAodmlhIC1mIDxmaWw+KS4gRGV0dGEgc3TDtmRzIGVuZGFzdCBtZWQgLSIKKyJQIHVuZGVyIFBDUkUgdjIiCisKKyM6IGdyZXAuYzoyMTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IHVuYWJsZSB0byByZWFkICVzIgogbXNnc3RyICJcIiVzXCIga3VuZGUgaW50ZSBsw6RzYSAlcyIKIAotIzogZ3JlcC5jOjIxMzAgc2V0dXAuYzoxNjQgYnVpbHRpbi9jbG9uZS5jOjQxMCBidWlsdGluL2RpZmYuYzo4MQotIzogYnVpbHRpbi9ybS5jOjEzNAorIzogZ3JlcC5jOjIxNDUgc2V0dXAuYzoxNjYgYnVpbHRpbi9jbG9uZS5jOjQxMSBidWlsdGluL2RpZmYuYzo4MgorIzogYnVpbHRpbi9ybS5jOjEzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJXMnIgogbXNnc3RyICJtaXNzbHlja2FkZXMgdGEgc3RhdHVzIHDDpSBcIiVzXCIiCiAKLSM6IGdyZXAuYzoyMTQxCisjOiBncmVwLmM6MjE1NgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiBzaG9ydCByZWFkIgogbXNnc3RyICJcIiVzXCI6IGtvcnQgbMOkc25pbmciCkBAIC0yNjcxLDQ4ICs0MDc0LDQ4IEBACiBtc2dzdHIgIkzDpWduaXbDpWtvbW1hbmRvbiAvIGZyw6VnYXJlIgogCiAjOiBoZWxwLmM6MzcKLW1zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBTeW5jaGluZyBSZXBvc2l0b3JpZXMiCittc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gU3luY2luZyBSZXBvc2l0b3JpZXMiCiBtc2dzdHIgIkzDpWduaXbDpWtvbW1hbmRvbiAvIHN5bmthIGFya2l2IgogCiAjOiBoZWxwLmM6MzgKIG1zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBJbnRlcm5hbCBIZWxwZXJzIgogbXNnc3RyICJMw6Vnbml2w6Vrb21tYW5kb24gLyBpbnRlcm5hIGhqw6RscGFyZSIKIAotIzogaGVscC5jOjI5NgorIzogaGVscC5jOjI5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJhdmFpbGFibGUgZ2l0IGNvbW1hbmRzIGluICclcyciCiBtc2dzdHIgImdpdC1rb21tYW5kb24gdGlsbGfDpG5nbGlnYSBpIFwiJXNcIiIKIAotIzogaGVscC5jOjMwMworIzogaGVscC5jOjMwNQogbXNnaWQgImdpdCBjb21tYW5kcyBhdmFpbGFibGUgZnJvbSBlbHNld2hlcmUgb24geW91ciAkUEFUSCIKIG1zZ3N0ciAiZ2l0LWtvbW1hbmRvbiBmcsOlbiBhbmRyYSBwbGF0c2VyIGkgZGluICRQQVRIIgogCi0jOiBoZWxwLmM6MzEyCisjOiBoZWxwLmM6MzE0CiBtc2dpZCAiVGhlc2UgYXJlIGNvbW1vbiBHaXQgY29tbWFuZHMgdXNlZCBpbiB2YXJpb3VzIHNpdHVhdGlvbnM6IgogbXNnc3RyICJEZXNzYSB2YW5saWdhIEdpdC1rb21tYW5kb24gYW52w6RuZHMgaSBvbGlrYSBzaXR1YXRpb25lcjoiCiAKLSM6IGhlbHAuYzozNjEgZ2l0LmM6OTAKKyM6IGhlbHAuYzozNjMgZ2l0LmM6OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5zdXBwb3J0ZWQgY29tbWFuZCBsaXN0aW5nIHR5cGUgJyVzJyIKIG1zZ3N0ciAib2vDpG5kIGtvbW1hbmRvbGlzdHR5cCBcIiVzXCIiCiAKLSM6IGhlbHAuYzo0MDgKKyM6IGhlbHAuYzo0MDMKIG1zZ2lkICJUaGUgY29tbW9uIEdpdCBndWlkZXMgYXJlOiIKIG1zZ3N0ciAiRGUgdmFubGlnYSBHaXQtdsOkZ2xlZG5pbmdhcm5hIMOkcjoiCiAKLSM6IGhlbHAuYzo1MTcKKyM6IGhlbHAuYzo1MTIKIG1zZ2lkICJTZWUgJ2dpdCBoZWxwIDxjb21tYW5kPicgdG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQiCiBtc2dzdHIgIlNlIFwiZ2l0IGhlbHAgPGtvbW1hbmRvPlwiIGbDtnIgYXR0IGzDpHNhIG9tIGV0dCBzcGVjaWZpa3QgdW5kZXJrb21tYW5kbyIKIAotIzogaGVscC5jOjUyMgorIzogaGVscC5jOjUxNwogbXNnaWQgIkV4dGVybmFsIGNvbW1hbmRzIgogbXNnc3RyICJFeHRlcm5hIGtvbW1hbmRvbiIKIAotIzogaGVscC5jOjUzMAorIzogaGVscC5jOjUzMgogbXNnaWQgIkNvbW1hbmQgYWxpYXNlcyIKIG1zZ3N0ciAiS29tbWFkb2FsaWFzIgogCi0jOiBoZWxwLmM6NTk0CisjOiBoZWxwLmM6NTk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGFwcGVhcnMgdG8gYmUgYSBnaXQgY29tbWFuZCwgYnV0IHdlIHdlcmUgbm90XG4iCkBAIC0yNzIxLDMyICs0MTI0LDMyIEBACiAiXCIlc1wiIHZlcmthciB2YXJhIGV0dCBnaXQta29tbWFuZG8sIG1lbiB2aSBrYW4gaW50ZVxuIgogImvDtnJhIGRldC4gS2Fuc2tlIGdpdC0lcyDDpHIgdHJhc2lndD8iCiAKLSM6IGhlbHAuYzo2NTMKKyM6IGhlbHAuYzo2NTUKIG1zZ2lkICJVaCBvaC4gWW91ciBzeXN0ZW0gcmVwb3J0cyBubyBHaXQgY29tbWFuZHMgYXQgYWxsLiIKIG1zZ3N0ciAiT2ogZMOlLiBEaXR0IHN5c3RlbSByYXBwb3J0ZXJhciBpbmdhIEdpdC1rb21tYW5kb24gYWxscy4iCiAKLSM6IGhlbHAuYzo2NzUKKyM6IGhlbHAuYzo2NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiV0FSTklORzogWW91IGNhbGxlZCBhIEdpdCBjb21tYW5kIG5hbWVkICclcycsIHdoaWNoIGRvZXMgbm90IGV4aXN0LiIKIG1zZ3N0ciAiVkFSTklORzogRHUgYW5yb3BhZGUgZXR0IEdpdC1rb21tYW5kbyB2aWQgbmFtbiBcIiVzXCIsIHNvbSBpbnRlIGZpbm5zLiIKIAotIzogaGVscC5jOjY4MAorIzogaGVscC5jOjY4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb250aW51aW5nIHVuZGVyIHRoZSBhc3N1bXB0aW9uIHRoYXQgeW91IG1lYW50ICclcycuIgotbXNnc3RyICJGb3J0c8OkdHRlciB1bmRlciBmw7ZydXRzw6R0dG5pbmdlbiBhdHQgZHUgbWVuYWRlIOKAnSVz4oCdLiIKK21zZ3N0ciAiRm9ydHPDpHR0ZXIgdW5kZXIgZsO2cnV0c8OkdHRuaW5nZW4gYXR0IGR1IG1lbmFkZSBcIiVzXCIuIgogCi0jOiBoZWxwLmM6Njg1CisjOiBoZWxwLmM6Njg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbnRpbnVpbmcgaW4gJTAuMWYgc2Vjb25kcywgYXNzdW1pbmcgdGhhdCB5b3UgbWVhbnQgJyVzJy4iCiBtc2dzdHIgIiIKLSJGb3J0c8OkdHRlciBvbSAlMC4xZiBzZWt1bmRlciwgdW5kZXIgZsO2cnV0c8OkdHRuaW5nZW4gYXR0IGR1IG1lbmFkZSDigJ0lc+KAnS4iCisiRm9ydHPDpHR0ZXIgb20gJTAuMWYgc2VrdW5kZXIsIHVuZGVyIGbDtnJ1dHPDpHR0bmluZ2VuIGF0dCBkdSBtZW5hZGUgXCIlc1wiLiIKIAotIzogaGVscC5jOjY5MworIzogaGVscC5jOjY5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQ6ICclcycgaXMgbm90IGEgZ2l0IGNvbW1hbmQuIFNlZSAnZ2l0IC0taGVscCcuIgogbXNnc3RyICJnaXQ6IFwiJXNcIiDDpHIgaW50ZSBldHQgZ2l0LWtvbW1hbmRvLiBTZSBcImdpdCAtLWhlbHBcIi4iCiAKLSM6IGhlbHAuYzo2OTcKKyM6IGhlbHAuYzo2OTkKIG1zZ2lkICIiCiAiXG4iCiAiVGhlIG1vc3Qgc2ltaWxhciBjb21tYW5kIGlzIgpAQCAtMjc2MCwxNiArNDE2MywxNiBAQAogIlxuIgogIk1lc3QgbGlrYSBrb21tYW5kb24gw6RyIgogCi0jOiBoZWxwLmM6NzEyCisjOiBoZWxwLmM6NzE0CiBtc2dpZCAiZ2l0IHZlcnNpb24gWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCB2ZXJzaW9uIFs8ZmxhZ2dvcj5dIgogCi0jOiBoZWxwLmM6NzgwCisjOiBoZWxwLmM6NzgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAlcyAtICVzIgogbXNnc3RyICIlczogJXMgLSAlcyIKIAotIzogaGVscC5jOjc4NAorIzogaGVscC5jOjc4NwogbXNnaWQgIiIKICJcbiIKICJEaWQgeW91IG1lYW4gdGhpcz8iCkBAIC0yNzgzLDcgKzQxODYsNyBAQAogIlxuIgogIk1lbmFkZSBkdSBldHQgYXYgZGVzc2E/IgogCi0jOiBpZGVudC5jOjM0NQorIzogaWRlbnQuYzozNDkKIG1zZ2lkICIiCiAiXG4iCiAiKioqIFBsZWFzZSB0ZWxsIG1lIHdobyB5b3UgYXJlLlxuIgpAQCAtMjgwOSw1MCArNDIxMiw4OSBAQAogIkvDtnIgdXRhbiAtLWdsb2JhbCBmw7ZyIGF0dCBlbmRhc3Qgw6RuZHJhIGkgYWt0dWVsbHQgYXJraXYuXG4iCiAiXG4iCiAKLSM6IGlkZW50LmM6MzY5CisjOiBpZGVudC5jOjM3OQogbXNnaWQgIm5vIGVtYWlsIHdhcyBnaXZlbiBhbmQgYXV0by1kZXRlY3Rpb24gaXMgZGlzYWJsZWQiCiBtc2dzdHIgImluZ2VuIGUtcG9zdCBhbmdhdnMgb2NoIGF1dG9kZXRla3RlcmluZyDDpHIgaW5ha3RpdmVyYWQiCiAKLSM6IGlkZW50LmM6Mzc0CisjOiBpZGVudC5jOjM4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYXV0by1kZXRlY3QgZW1haWwgYWRkcmVzcyAoZ290ICclcycpIgogbXNnc3RyICJrdW5kZSBpbnRlIGF1dG9kZXRla3RlcmEgZS1wb3N0YWRyZXNzIChmaWNrIFwiJXNcIikiCiAKLSM6IGlkZW50LmM6Mzg0CisjOiBpZGVudC5jOjQwMQogbXNnaWQgIm5vIG5hbWUgd2FzIGdpdmVuIGFuZCBhdXRvLWRldGVjdGlvbiBpcyBkaXNhYmxlZCIKIG1zZ3N0ciAiaW5nZXQgbmFtbiBhbmdhdnMgb2NoIGF1dG9kZXRla3RlcmluZyDDpHIgaW5ha3RpdmVyYWQiCiAKLSM6IGlkZW50LmM6MzkwCisjOiBpZGVudC5jOjQwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYXV0by1kZXRlY3QgbmFtZSAoZ290ICclcycpIgogbXNnc3RyICJrdW5kZSBpbnRlIGF1dG9kZXRla3RlcmEgbmFtbiAoZmljayBcIiVzXCIpIgogCi0jOiBpZGVudC5jOjM5OAorIzogaWRlbnQuYzo0MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZW1wdHkgaWRlbnQgbmFtZSAoZm9yIDwlcz4pIG5vdCBhbGxvd2VkIgogbXNnc3RyICJ0b210IGlkZW50LW5hbW4gKGbDtnIgPCVzPikgZWogdGlsbMOldGV0IgogCi0jOiBpZGVudC5jOjQwNAorIzogaWRlbnQuYzo0MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAibmFtZSBjb25zaXN0cyBvbmx5IG9mIGRpc2FsbG93ZWQgY2hhcmFjdGVyczogJXMiCiBtc2dzdHIgIm5hbW5ldCBiZXN0w6VyIGVuYmFydCBhdiBlaiB0aWxsw6V0bmEgdGVja2VuOiAlcyIKIAotIzogaWRlbnQuYzo0MTkgYnVpbHRpbi9jb21taXQuYzo2MDYKKyM6IGlkZW50LmM6NDM2IGJ1aWx0aW4vY29tbWl0LmM6NjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZGF0ZSBmb3JtYXQ6ICVzIgogbXNnc3RyICJmZWxha3RpZ3QgZGF0dW1mb3JtYXQ6ICVzIgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzozNQotbXNnaWQgIm11bHRpcGxlIGZpbHRlci1zcGVjcyBjYW5ub3QgYmUgY29tYmluZWQiCi1tc2dzdHIgImZsZXJhIGZpbHRlcnNwZWNpZmlrYXRpb25lciBrYW4gaW50ZSBrb21iaW5lcmFzIgorIzogbGlzdC1vYmplY3RzLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImVudHJ5ICclcycgaW4gdHJlZSAlcyBoYXMgdHJlZSBtb2RlLCBidXQgaXMgbm90IGEgdHJlZSIKK21zZ3N0ciAicG9zdGVuIFwiJXNcIiBpIHRyw6RkZXQgJXMgaGFyIHRyw6RkLWzDpGdlLCBtZW4gw6RyIGludGUgZXR0IHRyw6RkIgorCisjOiBsaXN0LW9iamVjdHMuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW50cnkgJyVzJyBpbiB0cmVlICVzIGhhcyBibG9iIG1vZGUsIGJ1dCBpcyBub3QgYSBibG9iIgorbXNnc3RyICJwb3N0ZW4gXCIlc1wiIGkgdHLDpGRldCAlcyBoYXIgYmxvYi1sw6RnZSwgbWVuIMOkciBpbnRlIGVuIGJsb2IiCisKKyM6IGxpc3Qtb2JqZWN0cy5jOjM3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbG9hZCByb290IHRyZWUgZm9yIGNvbW1pdCAlcyIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBpbiByb3QtdHLDpGRldCBmw7ZyIGluY2hlY2tuaW5nZW4gJXMiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXIuYzo0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBzcGFyc2UgYmxvYiBpbiAnJXMnIgorbXNnc3RyICJrdW5kZSBpbnRlIG7DpSBnbGVzIGJsb2IgcMOlIFwiJXNcIiIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2Ugc3BhcnNlIGZpbHRlciBkYXRhIGluICVzIgorbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthIGdsZXMgZmlsdGVyZGF0YSBpICVzIgogCiAjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo1OAotbXNnaWQgIm9ubHkgJ3RyZWU6MCcgaXMgc3VwcG9ydGVkIgotbXNnc3RyICJlbmRhc3QgXCJ0cmVlOjBcIiBzdMO2ZHMiCittc2dpZCAiZXhwZWN0ZWQgJ3RyZWU6PGRlcHRoPiciCittc2dzdHIgImbDtnJ2w6RudGFkZSBcInRyZWU6PGRqdXA+XCIiCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjEzNwotbXNnaWQgImNhbm5vdCBjaGFuZ2UgcGFydGlhbCBjbG9uZSBwcm9taXNvciByZW1vdGUiCi1tc2dzdHIgImthbiBpbnRlIMOkbmRyYSBrb250cmFrdHNmasOkcnIgZsO2ciBkZWx2aXMga2xvbmluZyIKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjczCittc2dpZCAic3BhcnNlOnBhdGggZmlsdGVycyBzdXBwb3J0IGhhcyBiZWVuIGRyb3BwZWQiCittc2dzdHIgInNwYXJzZTpzw7ZrdsOkZy1maWx0ZXIgc3TDtmRzIGludGUgbMOkbmdyZSIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBmaWx0ZXItc3BlYyAnJXMnIgorbXNnc3RyICJmZWxha3RpZyBmaWx0ZXJzcGVjaWZpa2F0aW9uOiBcIiVzXCIiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJtdXN0IGVzY2FwZSBjaGFyIGluIHN1Yi1maWx0ZXItc3BlYzogJyVjJyIKK21zZ3N0ciAibcOlc3RlIGFudsOkbmRhIHNwZWNpYWxzZWt2ZW5zIGkgZGVsZmlsdGVyLXNwZWM6IFwiJWNcIiIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTQ0Cittc2dpZCAiZXhwZWN0ZWQgc29tZXRoaW5nIGFmdGVyIGNvbWJpbmU6IgorbXNnc3RyICJmw7ZydsOkbnRhZGUgbsOlZ29udGluZyBlZnRlciBjb21iaW5lOiIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MjI2Cittc2dpZCAibXVsdGlwbGUgZmlsdGVyLXNwZWNzIGNhbm5vdCBiZSBjb21iaW5lZCIKK21zZ3N0ciAiZmxlcmEgZmlsdGVyc3BlY2lmaWthdGlvbmVyIGthbiBpbnRlIGtvbWJpbmVyYXMiCiAKICM6IGxvY2tmaWxlLmM6MTUxCiAjLCBjLWZvcm1hdApAQCAtMjg4MywxMjAgKzQzMjUsMTE3IEBACiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgdGhlIGNhY2hlIgogbXNnc3RyICJtaXNzbHlja2FkZXMgbMOkc2EgY2FjaGVuIgogCi0jOiBtZXJnZS5jOjEwNyByZXJlcmUuYzo3MjAgYnVpbHRpbi9hbS5jOjE4OTkgYnVpbHRpbi9hbS5jOjE5MzMKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozODcgYnVpbHRpbi9jaGVja291dC5jOjcwOCBidWlsdGluL2Nsb25lLmM6NzY0CisjOiBtZXJnZS5jOjEwNyByZXJlcmUuYzo3MjAgYnVpbHRpbi9hbS5jOjE4NzkgYnVpbHRpbi9hbS5jOjE5MTMKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo1NDEgYnVpbHRpbi9jaGVja291dC5jOjgwMCBidWlsdGluL2Nsb25lLmM6ODEwCisjOiBidWlsdGluL3N0YXNoLmM6MjY1CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgogbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSBueSBpbmRleGZpbCIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNTYKIG1zZ2lkICIoYmFkIGNvbW1pdClcbiIKIG1zZ3N0ciAiKGZlbGFrdGlnIGluY2hlY2tuaW5nKVxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJhZGRfY2FjaGVpbmZvIGZhaWxlZCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCiBtc2dzdHIgIiIKICJhZGRfY2FoY2VpbmZvIG1pc3NseWNrYWRlcyBmw7ZyIHPDtmt2w6RnZW4gXCIlc1wiOyBhdnNsdXRhciBzYW1tYW5zbGFnbmluZ2VuLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkX2NhY2hlaW5mbyBmYWlsZWQgdG8gcmVmcmVzaCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCiBtc2dzdHIgIiIKICJhZGRfY2FjaGVpbmZvIG1pc3NseWNrYWRlcyB1cHBkYXRlcmEgZsO2ciBzw7ZrdsOkZ2VuIFwiJXNcIjsgYXZzbHV0YXIgIgogInNhbW1hbnNsYWduaW5nZW4uIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo0MzUKLW1zZ2lkICJlcnJvciBidWlsZGluZyB0cmVlcyIKLW1zZ3N0ciAiZmVsIHZpZCBieWdnYW5kZSBhdiB0csOkZCIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTA2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo4NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwYXRoICclcyclcyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHNrYXBhIHPDtmt2w6RnZW4gXCIlc1wiJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkxNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6ODg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzIHRvIG1ha2Ugcm9vbSBmb3Igc3ViZGlyZWN0b3J5XG4iCiBtc2dzdHIgIlRhciBib3J0ICVzIGbDtnIgYXR0IGfDtnJhIHBsYXRzIGbDtnIgdW5kZXJrYXRhbG9nXG4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkzMSBtZXJnZS1yZWN1cnNpdmUuYzo5NTAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg5OSBtZXJnZS1yZWN1cnNpdmUuYzo5MTgKIG1zZ2lkICI6IHBlcmhhcHMgYSBEL0YgY29uZmxpY3Q/IgogbXNnc3RyICI6IGthbnNrZSBlbiBLL0Yta29uZmxpa3Q/IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5NDAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICclcyciCiBtc2dzdHIgInbDpGdyYXIgZsO2cmxvcmEgb3Nww6VyYWQgZmlsIHZpZCBcIiVzXCIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk4MiBidWlsdGluL2NhdC1maWxlLmM6MzkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk0OSBidWlsdGluL2NhdC1maWxlLmM6NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgb2JqZWN0ICVzICclcyciCiBtc2dzdHIgImthbiBpbnRlIGzDpHNhIG9iamVrdGV0ICVzOiBcIiVzXCIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk4NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJsb2IgZXhwZWN0ZWQgZm9yICVzICclcyciCiBtc2dzdHIgImJsb2IgZsO2cnbDpG50YWRlcyBmw7ZyICVzIFwiJXNcIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTAwOAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyc6ICVzIgogbXNnc3RyICJtaXNzbHlja2FkZXMgw7ZwcG5hIFwiJXNcIjogJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEwMTkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3ltbGluayAnJXMnOiAlcyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHNrYXBhIHN5bWJvbGlza2EgbMOkbmtlbiBcIiVzXCI6ICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZG8gbm90IGtub3cgd2hhdCB0byBkbyB3aXRoICUwNm8gJXMgJyVzJyIKLW1zZ3N0ciAidmV0IGludGUgaHVyICUwNm8gJXMgXCIlc1wiIHNrYWxsIGhhbnRlcmFzIgorbXNnc3RyICJ2ZXQgaW50ZSBodXIgJTA2byAlcyBcIiVzXCIgc2thIGhhbnRlcmFzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjEyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMTkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG5vdCBjaGVja2VkIG91dCkiCiBtc2dzdHIgIk1pc3NseWNrYWRlcyBzbMOlIGlob3AgdW5kZXJtb2R1bGVuICVzIChlaiB1dGNoZWNrYWQpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjE5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKGNvbW1pdHMgbm90IHByZXNlbnQpIgogbXNnc3RyICJNaXNzbHlja2FkZXMgc2zDpSBpaG9wIHVuZGVybW9kdWxlbiAlcyAoaW5jaGVja25pbmdhciBzYWtuYXMpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjI2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKGNvbW1pdHMgZG9uJ3QgZm9sbG93IG1lcmdlLWJhc2UpIgogbXNnc3RyICIiCiAiTWlzc2x5Y2thZGVzIHNsw6UgaWhvcCB1bmRlcm1vZHVsZW4gJXMgKGluY2hlY2tuaW5nYXIgZsO2bGplciBpbnRlICIKICJzYW1tYW5zbGFnbmluZ3NiYXNlbikiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMzQgbWVyZ2UtcmVjdXJzaXZlLmM6MTI0NgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxMyBtZXJnZS1yZWN1cnNpdmUuYzoxMjI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMgdG8gdGhlIGZvbGxvd2luZyBjb21taXQ6IgogbXNnc3RyICJTbmFiYnNwb2xhciB1bmRlcm1vZHVsZW4gJXMgdGlsbCBmw7ZsamFuZGUgaW5jaGVja25pbmc6IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjM3IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNDkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTYgbWVyZ2UtcmVjdXJzaXZlLmM6MTIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIgogbXNnc3RyICJTbmFiYnNwb2xhciB1bmRlcm1vZHVsZW4gJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzEKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobWVyZ2UgZm9sbG93aW5nIGNvbW1pdHMgbm90IGZvdW5kKSIKIG1zZ3N0ciAiIgogIk1pc3NseWNrYWRlcyBzbMOlIGlob3AgdW5kZXJtb2R1bGVuICVzIChzYW1tYW5zbGFnbmluZyBlZnRlciBpbmNoZWNrbmluZ2FyICIKICJoaXR0YWRlcyBpbnRlKSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChub3QgZmFzdC1mb3J3YXJkKSIKIG1zZ3N0ciAiTWlzc2x5Y2thZGVzIHNsw6UgaWhvcCB1bmRlcm1vZHVsZW4gJXMgKGVqIHNuYWJic3BvbG5pbmcpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjc2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU2CiBtc2dpZCAiRm91bmQgYSBwb3NzaWJsZSBtZXJnZSByZXNvbHV0aW9uIGZvciB0aGUgc3VibW9kdWxlOlxuIgogbXNnc3RyICJIaXR0YWRlIGVuIG3DtmpsaWcgbMO2c25pbmcgYXYgc2FtbWFuc2xhZ25pbmcgZsO2ciB1bmRlcm1vZHVsZW46XG4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHRoaXMgaXMgY29ycmVjdCBzaW1wbHkgYWRkIGl0IHRvIHRoZSBpbmRleCBmb3IgZXhhbXBsZVxuIgpAQCAtMzAxMywzMiArNDQ1MiwzMiBAQAogIlxuIgogInZpbGtldCBnb2R0YXIgbMO2c25pbmdlbi5cbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI4OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChtdWx0aXBsZSBtZXJnZXMgZm91bmQpIgogbXNnc3RyICIiCiAiTWlzc2x5Y2thZGVzIHNsw6UgaWhvcCB1bmRlcm1vZHVsZW4gJXMgKGZsZXJhIHNhbW1hbnNsYWduaW5nYXIgaGl0dGFkZXMpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzU4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzQxCiBtc2dpZCAiRmFpbGVkIHRvIGV4ZWN1dGUgaW50ZXJuYWwgbWVyZ2UiCiBtc2dzdHIgIk1pc3NseWNrYWRlcyBleGVrdmVyYSBpbnRlcm4gc2FtbWFuc2xhZ25pbmciCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNjMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGFkZCAlcyB0byBkYXRhYmFzZSIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBsw6RnZ2EgdGlsbCAlcyB0aWxsIGRhdGFiYXNlbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM5NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvLW1lcmdpbmcgJXMiCiBtc2dzdHIgIlNsw6VyIGlob3AgJXMgYXV0b21hdGlza3QiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0MTYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXJyb3I6IFJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXM7IHdyaXRpbmcgdG8gJXMgaW5zdGVhZC4iCiBtc2dzdHIgIkZlbDogVsOkZ3JhciBmw7ZybG9yYSBvc3DDpXJhZCBmaWwgdmlkICVzOyBza3JpdmVyIHRpbGwgJXMgaXN0w6RsbGV0LiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ4MworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ3NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzIGxlZnQgIgpAQCAtMzA0Nyw3ICs0NDg2LDcgQEAKICJLT05GTElLVCAoJXMvcmFkZXJhKTogJXMgcmFkZXJhZCBpICVzIG9jaCAlcyBpICVzLiBWZXJzaW9uZW4gJXMgYXYgJXMgbMOkbW5hZCAiCiAiaSB0csOkZGV0LiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ4OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ3OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIHRvICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzICIKQEAgLTMwNTYsNyArNDQ5NSw3IEBACiAiS09ORkxJS1QgKCVzL3JhZGVyYSk6ICVzIHJhZGVyYWQgaSAlcyBvY2ggJXMgdGlsbCAlcyBpICVzLiBWZXJzaW9uZW4gJXMgYXYgIgogIiVzIGzDpG1uYWQgaSB0csOkZGV0LiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ5NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzIGxlZnQgIgpAQCAtMzA2NSw3ICs0NTA0LDcgQEAKICJLT05GTElLVCAoJXMvcmFkZXJhKTogJXMgcmFkZXJhZCBpICVzIG9jaCAlcyBpICVzLiBWZXJzaW9uZW4gJXMgYXYgJXMgbMOkbW5hZCAiCiAiaSB0csOkZGV0IHZpZCAlcy4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MDAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyB0byAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyAiCkBAIC0zMDc0LDMxICs0NTEzLDQwIEBACiAiS09ORkxJS1QgKCVzL3JhZGVyYSk6ICVzIHJhZGVyYWQgaSAlcyBvY2ggJXMgdGlsbCAlcyBpICVzLiBWZXJzaW9uZW4gJXMgYXYgIgogIiVzIGzDpG1uYWQgaSB0csOkZGV0IHZpZCAlcy4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MzQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MjYKIG1zZ2lkICJyZW5hbWUiCiBtc2dzdHIgIm5hbW5ieXRlIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTM0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTI2CiBtc2dpZCAicmVuYW1lZCIKIG1zZ3N0ciAibmFtbmJ5dHQiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1ODggbWVyZ2UtcmVjdXJzaXZlLmM6MTczNyBtZXJnZS1yZWN1cnNpdmUuYzoyMzY5Ci0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMTI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTc3IG1lcmdlLXJlY3Vyc2l2ZS5jOjI0NzIgbWVyZ2UtcmVjdXJzaXZlLmM6MzExNwogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgJXMiCiBtc2dzdHIgIlbDpGdyYXIgZsO2cmxvcmEgbG9ydGlnIGZpbCB2aWQgXCIlc1wiIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjAyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXMsIGV2ZW4gdGhvdWdoIGl0J3MgaW4gdGhlIHdheS4iCittc2dzdHIgIlbDpGdyYXIgZsO2cmxvcmEgb3Nww6VyYWQgZmlsIHZpZCAlcywgdHJvdHMgYXR0IGRlbiDDpHIgaSB2w6RnZW4uIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUIChyZW5hbWUvYWRkKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gIEFkZGVkICVzIGluICVzIgorbXNnc3RyICJLT05GTElLVCAobmFtbmJ5dGUvdGlsbMOkZ2cpOiBOYW1uYnl0ZSAlcy0+JXMgaSAlcy4gTGFkZSB0aWxsICVzIGkgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgYSBkaXJlY3RvcnkgaW4gJXMgYWRkaW5nIGFzICVzIGluc3RlYWQiCiBtc2dzdHIgIiVzIMOkciBlbiBrYXRhbG9nIGkgJXMgbMOkZ2dlciB0aWxsIHNvbSAlcyBpc3TDpGxsZXQiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MDcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlczsgYWRkaW5nIGFzICVzIGluc3RlYWQiCiBtc2dzdHIgIlbDpGdyYXIgZsO2cmxvcmEgb3Nww6VyYWQgZmlsIHZpZCAlczsgbMOkZ2dlciB0aWxsIHNvbSAlcyBpc3TDpGxsZXQiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MzMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIFwiJXNcIi0+XCIlc1wiIGluIGJyYW5jaCBcIiVzXCIgcmVuYW1lIFwiJXMiCkBAIC0zMTA3LDM4ICs0NTU1LDI4IEBACiAiS09ORkxJS1QgKG5hbW5ieXRlL25hbW5ieXRlKTogTmFtbmJ5dGUgXCIlc1wiLT5cIiVzXCIgcMOlIGdyZW5lbiBcIiVzXCIgIgogIm5hbW5ieXRlIFwiJXNcIi0+XCIlc1wiIGkgXCIlc1wiJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MzgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MTMKIG1zZ2lkICIgKGxlZnQgdW5yZXNvbHZlZCkiCiBtc2dzdHIgIiAobMOkbW5hZCBvbMO2c3QpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjk5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gUmVuYW1lICVzLT4lcyBpbiAlcyIKIG1zZ3N0ciAiIgogIktPTkZMSUtUIChuYW1uYnl0ZS9uYW1uYnl0ZSk6IE5hbW5ieXRlICVzLT4lcyBpICVzLiBOYW1uYnl0ZSAlcy0+JXMgaSAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTczNAotIywgYy1mb3JtYXQKLW1zZ2lkICJSZW5hbWluZyAlcyB0byAlcyBhbmQgJXMgdG8gJXMgaW5zdGVhZCIKLW1zZ3N0ciAiQnl0ZXIgbmFtbiBww6UgJXMgdGlsbCAlcyBvY2ggJXMgdGlsbCAlcyBpc3TDpGxsZXQiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3NDYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlcywgZXZlbiB0aG91Z2ggaXQncyBpbiB0aGUgd2F5LiIKLW1zZ3N0ciAiVsOkZ3JhciBmw7ZybG9yYSBvc3DDpXJhZCBmaWwgdmlkICVzLCB0cm90cyBhdHQgZGVuIMOkciBpIHbDpGdlbi4iCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5NTIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChkaXJlY3RvcnkgcmVuYW1lIHNwbGl0KTogVW5jbGVhciB3aGVyZSB0byBwbGFjZSAlcyBiZWNhdXNlICIKICJkaXJlY3RvcnkgJXMgd2FzIHJlbmFtZWQgdG8gbXVsdGlwbGUgb3RoZXIgZGlyZWN0b3JpZXMsIHdpdGggbm8gZGVzdGluYXRpb24gIgogImdldHRpbmcgYSBtYWpvcml0eSBvZiB0aGUgZmlsZXMuIgogbXNnc3RyICIiCi0iS09ORkxJS1QgKG5hbW7DpG5kcmFkIGRlbGFkIGthdGFsb2cpOiBPc8Oka2VyIHDDpSB2YXIgJXMgc2thbGwgcGxhY2VyYXMgZMOlICIKKyJLT05GTElLVCAobmFtbsOkbmRyYWQgZGVsYWQga2F0YWxvZyk6IE9zw6RrZXIgcMOlIHZhciAlcyBza2EgcGxhY2VyYXMgZMOlICIKICJrYXRhbG9nZW4gJXMgYnl0dGUgbmFtbiB0aWxsIGZsZXJhIGFuZHJhIGthdGFsb2dlciwgdXRhbiBhdHQgbsOlZ29uICIKICJkZXN0aW5hdGlvbiBmaWNrIGVuIG1ham9yaXRldCBhdiBmaWxlcm5hLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTk4NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjA4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKGltcGxpY2l0IGRpciByZW5hbWUpOiBFeGlzdGluZyBmaWxlL2RpciBhdCAlcyBpbiB0aGUgd2F5IG9mICIKQEAgLTMxNDcsNyArNDU4NSw3IEBACiAiS09ORkxJS1QgKGltcGxpY2l0IG7DpG1uw6RuZHJhZCBrYXQpOiBCZWZpbnRsaWcgZmlsL2thdCB2aWQgJXMgw6RyIGkgdsOkZ2VuIGbDtnIgIgogImltcGxpY2l0IG5hbW7DpG5kcmFkKGUpIGthdGFsb2coZXIpIHNvbSBsw6RnZ2VyIGRpdCBmw7ZsamFuZGUgc8O2a3bDpGcoYXIpOiAlcy4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5OTQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogQ2Fubm90IG1hcCBtb3JlIHRoYW4gb25lIHBhdGggdG8gJXM7ICIKQEAgLTMxNTYsNyArNDU5NCw3IEBACiAiS09ORkxJS1QgKGltcGxpY2l0IG5hbW7DpG5kcmFkIGthdCk6IEthbiBpbnRlIGtvcHBsYSBtZXIgw6RuIGVuIHPDtmt2w6RnIHRpbGwgIgogIiVzOyBpbXBsaWNpdGEga2F0YWxvZ25hbW7DpG5kcmluZ2FyIGbDtnJzw7ZrdGUgbMOkZ2dhIGbDtmxqYW5kZSBzw7ZrdsOkZ2FyIGTDpHI6ICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDg2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAocmVuYW1lL3JlbmFtZSk6IFJlbmFtZSBkaXJlY3RvcnkgJXMtPiVzIGluICVzLiBSZW5hbWUgZGlyZWN0b3J5ICVzLSIKQEAgLTMxNjUsNyArNDYwMyw3IEBACiAiS09ORkxJS1QgKG5hbW5ieXRlL25hbW5ieXRlKTogTmFtbmJ5dHQga2F0YWxvZyAlcy0+JXMgaSAlcy4gTmFtbmJ5dHQga2F0YWxvZyAiCiAiJXMtPiVzIGkgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIzMzEKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI0MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIldBUk5JTkc6IEF2b2lkaW5nIGFwcGx5aW5nICVzIC0+ICVzIHJlbmFtZSB0byAlcywgYmVjYXVzZSAlcyBpdHNlbGYgd2FzICIKQEAgLTMxNzQsODYgKzQ2MTIsMTQxIEBACiAiVkFSTklORzogVW5kdmlrZXIgYXR0IGFwcGxpY2VyYSBuYW1uw6RuZHJpbmcgJXMgLT4gJXMgcMOlICVzLCBkw6UgJXMgc2rDpGx2IGhhciAiCiAiYnl0dCBuYW1uLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjczNwotIywgYy1mb3JtYXQKLW1zZ2lkICJDT05GTElDVCAocmVuYW1lL2FkZCk6IFJlbmFtZSAlcy0+JXMgaW4gJXMuICVzIGFkZGVkIGluICVzIgotbXNnc3RyICJLT05GTElLVCAobmFtbmJ5dGUvdGlsbMOkZ2cpOiBOYW1uYnl0ZSAlcy0+JXMgaSAlcy4gJXMgdGlsbGFnZCBpICVzIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyNzYzCi0jLCBjLWZvcm1hdAotbXNnaWQgIkFkZGluZyBtZXJnZWQgJXMiCi1tc2dzdHIgIkzDpGdnZXIgdGlsbCBzYW1tYW5zbGFnZW4gJXMiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI3NzAgbWVyZ2UtcmVjdXJzaXZlLmM6MzEyNwotIywgYy1mb3JtYXQKLW1zZ2lkICJBZGRpbmcgYXMgJXMgaW5zdGVhZCIKLW1zZ3N0ciAiTMOkZ2dlciB0aWxsIHNvbSAlcyBpc3TDpGxsZXQiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5MzQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5NjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgb2JqZWN0ICVzIgogbXNnc3RyICJrYW4gaW50ZSBsw6RzYSBvYmpla3RldCAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjkzNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjk2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgJXMgaXMgbm90IGEgYmxvYiIKIG1zZ3N0ciAib2JqZWt0ZXQgJXMgw6RyIGludGUgZW4gYmxvYiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAwNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAyOAogbXNnaWQgIm1vZGlmeSIKIG1zZ3N0ciAiw6RuZHJhIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDA2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDI4CiBtc2dpZCAibW9kaWZpZWQiCiBtc2dzdHIgIsOkbmRyYWQiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMTcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDAKIG1zZ2lkICJjb250ZW50IgogbXNnc3RyICJpbm5laMOlbGwiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDQKIG1zZ2lkICJhZGQvYWRkIgogbXNnc3RyICJ0aWxsw6RnZy90aWxsw6RnZyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA3MQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGVkICVzIChtZXJnZWQgc2FtZSBhcyBleGlzdGluZykiCiBtc2dzdHIgIkhvcHBhZGUgw7Z2ZXIgJXMgKHNhbW1hbnNsYWdlbiBzYW1tYSBzb20gYmVmaW50bGlnKSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA5MyBnaXQtc3VibW9kdWxlLnNoOjg1OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA4OSBnaXQtc3VibW9kdWxlLnNoOjEwMDMKIG1zZ2lkICJzdWJtb2R1bGUiCiBtc2dzdHIgInVuZGVybW9kdWwiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwOTQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ09ORkxJQ1QgKCVzKTogTWVyZ2UgY29uZmxpY3QgaW4gJXMiCiBtc2dzdHIgIktPTkZMSUtUICglcyk6IFNhbW1hbnNsYWduaW5nc2tvbmZsaWt0IGkgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMTYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nIGFzICVzIGluc3RlYWQiCittc2dzdHIgIkzDpGdnZXIgdGlsbCBzb20gJXMgaXN0w6RsbGV0IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYXRoIHVwZGF0ZWQ6ICVzIGFkZGVkIGluICVzIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkIGluICVzOyAiCisibW92aW5nIGl0IHRvICVzLiIKK21zZ3N0ciAiIgorIlVwcGRhdGVyYWQgc8O2a3bDpGc6ICVzIGxhZGUgdGlsbCAlcyBpbnV0aSBlbiBrYXRhbG9nIHNvbSBieXR0ZSBuYW1uIGkgJXM7ICIKKyJmbHl0dGFyIGRlbiB0aWxsICVzLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGZpbGUgbG9jYXRpb24pOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCAiCisiaW4gJXMsIHN1Z2dlc3RpbmcgaXQgc2hvdWxkIHBlcmhhcHMgYmUgbW92ZWQgdG8gJXMuIgorbXNnc3RyICIiCisiS09ORkxJS1QgKGZpbHBsYWNlcmluZyk6ICVzIGxhZGUgdGlsbCAlcyBpbnV0aSBlbiBrYXRhbG9nIHNvbSBieXR0ZSBuYW1uIGkgIgorIiVzLCBmw7ZyZXNsw6VyIGF0dCBkZW4gYsO2ciBmbHl0dGFzIHRpbGwlcy4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhdGggdXBkYXRlZDogJXMgcmVuYW1lZCB0byAlcyBpbiAlcywgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgd2FzIHJlbmFtZWQgaW4gIgorIiVzOyBtb3ZpbmcgaXQgdG8gJXMuIgorbXNnc3RyICIiCisiVXBwZGF0ZXJhZCBzw7ZrdsOkZzogJXMgYnl0dGUgbmFtbiB0aWxsICVzIGkgJXMsIGludXRpIGVuIGthdGFsb2cgc29tIGJ5dHRlICIKKyJuYW1uIGkgJXM7IGZseXR0YXIgZGVuIHRpbGwgJXMuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoZmlsZSBsb2NhdGlvbik6ICVzIHJlbmFtZWQgdG8gJXMgaW4gJXMsIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0ICIKKyJ3YXMgcmVuYW1lZCBpbiAlcywgc3VnZ2VzdGluZyBpdCBzaG91bGQgcGVyaGFwcyBiZSBtb3ZlZCB0byAlcy4iCittc2dzdHIgIiIKKyJLT05GTElLVCAoZmlscGxhY2VyaW5nKTogJXMgYnl0dGUgbmFtbiB0aWxsICVzIGkgJXMsIGludXRpIGVuIGthdGFsb2cgc29tICIKKyJieXR0ZSBuYW1uIGkgJXM7IGZseXR0YXIgZGVuIHRpbGwgJXMuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzIgogbXNnc3RyICJUYXIgYm9ydCAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI0MgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM1MAogbXNnaWQgImZpbGUvZGlyZWN0b3J5IgogbXNnc3RyICJmaWwva2F0YWxvZyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI0OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM1NQogbXNnaWQgImRpcmVjdG9yeS9maWxlIgogbXNnc3RyICJrYXRhbG9nL2ZpbCIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI1NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDT05GTElDVCAoJXMpOiBUaGVyZSBpcyBhIGRpcmVjdG9yeSB3aXRoIG5hbWUgJXMgaW4gJXMuIEFkZGluZyAlcyBhcyAlcyIKIG1zZ3N0ciAiIgogIktPTkZMSUtUICglcyk6IERldCBmaW5ucyBlbiBrYXRhbG9nIG1lZCBuYW1uZXQgJXMgaSAlcy4gTMOkZ2dlciB0aWxsICVzIHNvbSAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI2NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJBZGRpbmcgJXMiCiBtc2dzdHIgIkzDpGdnZXIgdGlsbCAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMwMAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM4MAorIywgYy1mb3JtYXQKK21zZ2lkICJDT05GTElDVCAoYWRkL2FkZCk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgorbXNnc3RyICJLT05GTElLVCAodGlsbMOkZ2cvdGlsbMOkZ2cpOiBTYW1tYW5zbGFnbmluZ3Nrb25mbGlrdCBpICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNDI0Cittc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlISIKK21zZ3N0ciAiUmVkYW4gw6Agam91ciEiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAibWVyZ2luZyBvZiB0cmVlcyAlcyBhbmQgJXMgZmFpbGVkIgorbXNnc3RyICJzYW1tYW5zbGFnbmluZyBhdiB0csOkZGVuICVzIG9jaCAlcyBtaXNzbHlja2FkZXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1MzcKK21zZ2lkICJNZXJnaW5nOiIKK21zZ3N0ciAiU2zDpXIgaWhvcDoiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yOiIKK21zZ2lkX3BsdXJhbCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yczoiCittc2dzdHJbMF0gImhpdHRhZGUgJXUgZ2VtZW5zYW0gZsO2cmZhZGVyOiIKK21zZ3N0clsxXSAiaGl0dGFkZSAldSBnZW1lbnNhbW1hIGbDtnJmw6RkZXI6IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjAwCittc2dpZCAibWVyZ2UgcmV0dXJuZWQgbm8gY29tbWl0IgorbXNnc3RyICJzYW1tYW5zbGFnbmluZ2VuIHJldHVybmVyYWRlIGluZ2VuIGluY2hlY2tuaW5nIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTMyNjMsMTY4ICs0NzU2LDE4NSBAQAogInNhbW1hbnNsYWduaW5nOlxuIgogIiAgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMTEKLW1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUhIgotbXNnc3RyICJSZWRhbiDDoCBqb3VyISIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMyMAotIywgYy1mb3JtYXQKLW1zZ2lkICJtZXJnaW5nIG9mIHRyZWVzICVzIGFuZCAlcyBmYWlsZWQiCi1tc2dzdHIgInNhbW1hbnNsYWduaW5nIGF2IHRyw6RkZW4gJXMgb2NoICVzIG1pc3NseWNrYWRlcyIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQxOQotbXNnaWQgIk1lcmdpbmc6IgotbXNnc3RyICJTbMOlciBpaG9wOiIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQzMgotIywgYy1mb3JtYXQKLW1zZ2lkICJmb3VuZCAldSBjb21tb24gYW5jZXN0b3I6IgotbXNnaWRfcGx1cmFsICJmb3VuZCAldSBjb21tb24gYW5jZXN0b3JzOiIKLW1zZ3N0clswXSAiaGl0dGFkZSAldSBnZW1lbnNhbSBmw7ZyZmFkZXI6IgotbXNnc3RyWzFdICJoaXR0YWRlICV1IGdlbWVuc2FtbWEgZsO2cmbDpGRlcjoiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0NzEKLW1zZ2lkICJtZXJnZSByZXR1cm5lZCBubyBjb21taXQiCi1tc2dzdHIgInNhbW1hbnNsYWduaW5nZW4gcmV0dXJuZXJhZGUgaW5nZW4gaW5jaGVja25pbmciCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1MzcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnIgogbXNnc3RyICJLdW5kZSBpbnRlIHRvbGthIG9iamVrdGV0IFwiJXNcIiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzU1MyBidWlsdGluL21lcmdlLmM6NjkxIGJ1aWx0aW4vbWVyZ2UuYzo4NDkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3NzQgYnVpbHRpbi9tZXJnZS5jOjY5NyBidWlsdGluL21lcmdlLmM6ODc3CiBtc2dpZCAiVW5hYmxlIHRvIHdyaXRlIGluZGV4LiIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBza3JpdmEgaW5kZXhldC4iCiAKLSM6IG1pZHguYzo2NQorIzogbWlkeC5jOjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggZmlsZSAlcyBpcyB0b28gc21hbGwiCiBtc2dzdHIgIm11bHRpLXBhY2staW5kZXhmaWxlbiAlcyDDpHIgZsO2ciBsaXRlbiIKIAotIzogbWlkeC5jOjgxCisjOiBtaWR4LmM6ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBzaWduYXR1cmUgMHglMDh4IGRvZXMgbm90IG1hdGNoIHNpZ25hdHVyZSAweCUwOHgiCiBtc2dzdHIgIm11bHRpLXBhY2staW5kZXhzaWduYXR1cmVuIDB4JTA4eCBzdMOkbW1lciBpbnRlIG1lZCBzaWduYXR1cmVuIDB4JTA4eCIKIAotIzogbWlkeC5jOjg2CisjOiBtaWR4LmM6ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCB2ZXJzaW9uICVkIG5vdCByZWNvZ25pemVkIgogbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4dmVyc2lvbmVuICVkIHN0w7ZkcyBpbnRlIgogCi0jOiBtaWR4LmM6OTEKKyM6IG1pZHguYzo5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJoYXNoIHZlcnNpb24gJXUgZG9lcyBub3QgbWF0Y2giCiBtc2dzdHIgImhhc2gtdmVyc2lvbmVuICV1IHN0w6RtbWVyIGludGUiCiAKLSM6IG1pZHguYzoxMDUKKyM6IG1pZHguYzoxMDgKIG1zZ2lkICJpbnZhbGlkIGNodW5rIG9mZnNldCAodG9vIGxhcmdlKSIKIG1zZ3N0ciAiZmVsYWt0aWd0IG9mZnNldCBmw7ZyIHN0eWNrZSAoZsO2ciBzdG9ydCkiCiAKLSM6IG1pZHguYzoxMjkKKyM6IG1pZHguYzoxMzIKIG1zZ2lkICJ0ZXJtaW5hdGluZyBtdWx0aS1wYWNrLWluZGV4IGNodW5rIGlkIGFwcGVhcnMgZWFybGllciB0aGFuIGV4cGVjdGVkIgotbXNnc3RyICJhdnNsdXRhbmRlIG11bHRpLXBhY2staW5kZXgtc3R5Y2tlLUlEIGbDtnJla29tbWVyIHRpZGlnYXJlIMOkbiBmw7ZydsOkbnRhdCIKK21zZ3N0ciAiYXZzbHV0YW5kZSBtdWx0aS1wYWNrLWluZGV4LXN0eWNrZS1pZCBmw7ZyZWtvbW1lciB0aWRpZ2FyZSDDpG4gZsO2cnbDpG50YXQiCiAKLSM6IG1pZHguYzoxNDIKKyM6IG1pZHguYzoxNDUKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgcGFjay1uYW1lIGNodW5rIgogbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4IHNha25hciBrcsOkdmQgcGFrZXRuYW1uLXN0eWNrZSIKIAotIzogbWlkeC5jOjE0NAorIzogbWlkeC5jOjE0NwogbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBPSUQgZmFub3V0IGNodW5rIgogbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4IHNha25hciBrcsOkdnQgT0lELXV0YnJlZG5pbmdzc3R5Y2tlIgogCi0jOiBtaWR4LmM6MTQ2CisjOiBtaWR4LmM6MTQ5CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIE9JRCBsb29rdXAgY2h1bmsiCiBtc2dzdHIgIm11bHRpLXBhY2staW5kZXggc2FrbmFyIGtyw6R2dCBPSUQtdXBwc2xhZ25pZ25zc3R5Y2tlIgogCi0jOiBtaWR4LmM6MTQ4CisjOiBtaWR4LmM6MTUxCiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIG9iamVjdCBvZmZzZXRzIGNodW5rIgogbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4IHNha25hciBrcsOkdnQgb2JqZWt0LW9mZnNldHN0eWNrZSIKIAotIzogbWlkeC5jOjE2MgorIzogbWlkeC5jOjE2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHBhY2sgbmFtZXMgb3V0IG9mIG9yZGVyOiAnJXMnIGJlZm9yZSAnJXMnIgogbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4LXBha2V0bmFtbiBpIGZlbCBvcmRuaW5nOiBcIiVzXCIgZsO2cmUgXCIlc1wiIgogCi0jOiBtaWR4LmM6MjA1CisjOiBtaWR4LmM6MjEwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBwYWNrLWludC1pZDogJXUgKCV1IHRvdGFsIHBhY2tzKSIKIG1zZ3N0ciAiYmFkIHBhY2staW50LWlkOiAldSAoJXUgcGFrZXQgdG90YWx0KSIKIAotIzogbWlkeC5jOjI0NgorIzogbWlkeC5jOjI2MAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggc3RvcmVzIGEgNjQtYml0IG9mZnNldCwgYnV0IG9mZl90IGlzIHRvbyBzbWFsbCIKIG1zZ3N0ciAibXVsdGktcGFjay1pbmRleCBza3JpdmVyIDY0LWJpdGFycyBvZmZzZXQsIG1lbiBvZmZfdCDDpHIgZsO2ciBsaXRlbiIKIAotIzogbWlkeC5jOjI3MQorIzogbWlkeC5jOjI4OAogbXNnaWQgImVycm9yIHByZXBhcmluZyBwYWNrZmlsZSBmcm9tIG11bHRpLXBhY2staW5kZXgiCiBtc2dzdHIgImZlbCBuw6RyIHBha2V0ZmlsZXIgZnLDpW4gbXVsdGktcGFjay1pbmRleCBza3VsbGUgZsO2cmJlcmVkYXMiCiAKLSM6IG1pZHguYzo0MDcKKyM6IG1pZHguYzo0NzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGFkZCBwYWNrZmlsZSAnJXMnIgogbXNnc3RyICJtaXNzbHlja2FkZXMgbMOkc2EgcGFrZXRmaWxlbiBcIiVzXCIiCiAKLSM6IG1pZHguYzo0MTMKKyM6IG1pZHguYzo0NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFjay1pbmRleCAnJXMnIgogbXNnc3RyICJtaXNzbHlja2FkZXMgw7ZwcG5hIHBha2V0aW5kZXhldCBcIiVzXCIiCiAKLSM6IG1pZHguYzo1MDcKKyM6IG1pZHguYzo1MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvY2F0ZSBvYmplY3QgJWQgaW4gcGFja2ZpbGUiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBoaXR0YSBvYmpla3QgJWQgaSBwYWtldGZpbGVuIgogCi0jOiBtaWR4LmM6OTQzCisjOiBtaWR4LmM6ODQyCittc2dpZCAiQWRkaW5nIHBhY2tmaWxlcyB0byBtdWx0aS1wYWNrLWluZGV4IgorbXNnc3RyICJMw6RnZ2VyIHRpbGwgcGFrZXRmaWxlciB0aWxsIG11bHRpLXBhY2staW5kZXgiCisKKyM6IG1pZHguYzo4NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIG5vdCBzZWUgcGFjay1maWxlICVzIHRvIGRyb3AiCittc2dzdHIgInPDpWcgaW50ZSBwYWtldGZpbGVuICVzIHNvbSBza3VsbGUga2FzdGFzIgorCisjOiBtaWR4LmM6OTczCittc2dpZCAiV3JpdGluZyBjaHVua3MgdG8gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAiU2tyaXZlciBzdHlja2VuIHRpbGwgbXVsdGktcGFjay1pbmRleCIKKworIzogbWlkeC5jOjEwNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNsZWFyIG11bHRpLXBhY2staW5kZXggYXQgJXMiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBzdMOkZGEgbXVsdGktcGFjay1pbmRleCBww6UgJXMiCiAKLSM6IG1pZHguYzo5ODEKKyM6IG1pZHguYzoxMTA4Cittc2dpZCAiTG9va2luZyBmb3IgcmVmZXJlbmNlZCBwYWNrZmlsZXMiCittc2dzdHIgIlNlciBlZnRlciByZWZlcmVyYWRlIHBhY2tmaWxlciIKKworIzogbWlkeC5jOjExMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm9pZCBmYW5vdXQgb3V0IG9mIG9yZGVyOiBmYW5vdXRbJWRdID0gJTxQUkl4MzI+ID4gJTxQUkl4MzI+ID0gZmFub3V0WyVkXSIKIG1zZ3N0ciAiIgogIm9pZC11dGJyZWRuaW5nIGkgZmVsIG9yZG5pbmc6IGZhbm91dFslZF0gPSAlPFBSSXgzMj4gPiAlPFBSSXgzMj4gPSBmYW5vdXRbJWRdIgogCi0jOiBtaWR4LmM6OTkyCisjOiBtaWR4LmM6MTEyOAorbXNnaWQgIlZlcmlmeWluZyBPSUQgb3JkZXIgaW4gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAiQmVrcsOkZnRhciBPSUQtb3JkbmluZyBpIG11bHRpLXBhY2staW5kZXgiCisKKyM6IG1pZHguYzoxMTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9pZCBsb29rdXAgb3V0IG9mIG9yZGVyOiBvaWRbJWRdID0gJXMgPj0gJXMgPSBvaWRbJWRdIgogbXNnc3RyICJvaWQtdXBwc2xhZ25pbmcgaSBmZWwgb3JkbmluZzogb2lkWyVkXSA9ICVzID49ICVzID0gb2lkWyVkXSIKIAotIzogbWlkeC5jOjk5NgorIzogbWlkeC5jOjExNTcKK21zZ2lkICJTb3J0aW5nIG9iamVjdHMgYnkgcGFja2ZpbGUiCittc2dzdHIgIlNvcnRlcmFyIG9iamVrdCBlZnRlciBwYWNrZmlsIgorCisjOiBtaWR4LmM6MTE2NAogbXNnaWQgIlZlcmlmeWluZyBvYmplY3Qgb2Zmc2V0cyIKIG1zZ3N0ciAiQmVrcsOkZnRhciBvZmZzZXQgZsO2ciBvYmpla3QiCiAKLSM6IG1pZHguYzoxMDA0CisjOiBtaWR4LmM6MTE4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBwYWNrIGVudHJ5IGZvciBvaWRbJWRdID0gJXMiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBsw6RzYSBwYWtldHBvc3QgZsO2ciBvaWRbJWRdID0gJXMiCiAKLSM6IG1pZHguYzoxMDEwCisjOiBtaWR4LmM6MTE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBwYWNrLWluZGV4IGZvciBwYWNrZmlsZSAlcyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIGzDpHNhIHBha2V0aW5kZXggZsO2ciBwYWtldGZpbCAlcyIKIAotIzogbWlkeC5jOjEwMTkKKyM6IG1pZHguYzoxMTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImluY29ycmVjdCBvYmplY3Qgb2Zmc2V0IGZvciBvaWRbJWRdID0gJXM6ICU8UFJJeDY0PiAhPSAlPFBSSXg2ND4iCiBtc2dzdHIgImZlbGFrdGlndCBvYmpla3Qtb2Zmc2V0IGbDtnIgb2lkWyVkXSA9ICVzOiAlPFBSSXg2ND4gIT0gJTxQUkl4NjQ+IgogCi0jOiBuYW1lLWhhc2guYzo1MzIKKyM6IG1pZHguYzoxMjIwCittc2dpZCAiQ291bnRpbmcgcmVmZXJlbmNlZCBvYmplY3RzIgorbXNnc3RyICJSw6RrbmFyIHJlZmVyZXJhZGUgb2JqZWt0IgorCisjOiBtaWR4LmM6MTIzMAorbXNnaWQgIkZpbmRpbmcgYW5kIGRlbGV0aW5nIHVucmVmZXJlbmNlZCBwYWNrZmlsZXMiCittc2dzdHIgIlNlciBlZnRlciBvY2ggdGFyIGJvcnQgb3JlZmVyZXJhZGUgcGFja2ZpbGVyIgorCisjOiBtaWR4LmM6MTM4OAorbXNnaWQgImNvdWxkIG5vdCBzdGFydCBwYWNrLW9iamVjdHMiCittc2dzdHIgImt1bmRlIGludGUgc3RhcnRhIHBhY2stb2JqZWN0cyIKKworIzogbWlkeC5jOjE0MDcKK21zZ2lkICJjb3VsZCBub3QgZmluaXNoIHBhY2stb2JqZWN0cyIKK21zZ3N0ciAia3VuZGUgaW50ZSBhdnNsdXRhIHBhY2stb2JqZWN0cyIKKworIzogbmFtZS1oYXNoLmM6NTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbGF6eV9kaXIgdGhyZWFkOiAlcyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHNrYXBhIGxhenlfZGlyLXRyw6VkOiAlcyIKIAotIzogbmFtZS1oYXNoLmM6NTU0CisjOiBuYW1lLWhhc2guYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsYXp5X25hbWUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHNrYXBhIGxhenlfbmFtZS10csOlZDogJXMiCiAKLSM6IG5hbWUtaGFzaC5jOjU2MAorIzogbmFtZS1oYXNoLmM6NTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBqb2luIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJtaXNzbHlja2FkZXMgdXRmw7ZyYSBqb2luIHDDpSBsYXp5X25hbWUtdHLDpWQ6ICVzIgogCi0jOiBub3Rlcy1tZXJnZS5jOjI3NQorIzogbm90ZXMtbWVyZ2UuYzoyNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBwcmV2aW91cyBub3RlcyBtZXJnZSAoJXMgZXhpc3RzKS5cbiIKQEAgLTM0MzYsMjEgKzQ5NDYsMjEgQEAKICJhdHQgY2hlY2thIGluIGVsbGVyIGF2YnJ5dGEgZsO2cmVnw6VlbmRlIHNhbW1hbnNsYWduaW5nIGlubmFuIGR1IHDDpWLDtnJqYXIgZW4gIgogIm55IGFudGVja25pbmdzLXNhbW1hbnNsYWduaW5nLiIKIAotIzogbm90ZXMtbWVyZ2UuYzoyODIKKyM6IG5vdGVzLW1lcmdlLmM6Mjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBub3RlcyBtZXJnZSAoJXMgZXhpc3RzKS4iCiBtc2dzdHIgIkR1IGhhciBpbnRlIGF2c2x1dGF0IGFudGVja25pbmdzLXNhbW1hbnNsYWduaW5nZW4gKCVzIGZpbm5zKS4iCiAKLSM6IG5vdGVzLXV0aWxzLmM6NDUKKyM6IG5vdGVzLXV0aWxzLmM6NDYKIG1zZ2lkICJDYW5ub3QgY29tbWl0IHVuaW5pdGlhbGl6ZWQvdW5yZWZlcmVuY2VkIG5vdGVzIHRyZWUiCiBtc2dzdHIgIkthbiBpbnRlIGNoZWNrYSBpbiBvaW5pdGllcmF0L29yZWZlcmVyYXQgYW50ZWNrbmluZ3N0csOkZCIKIAotIzogbm90ZXMtdXRpbHMuYzoxMDQKKyM6IG5vdGVzLXV0aWxzLmM6MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCBub3Rlcy5yZXdyaXRlTW9kZSB2YWx1ZTogJyVzJyIKIG1zZ3N0ciAiRmVsYWt0aWd0IHbDpHJkZSBmw7ZyIG5vdGVzLnJld3JpdGVNb2RlOiAnJXMnIgogCi0jOiBub3Rlcy11dGlscy5jOjExNAorIzogbm90ZXMtdXRpbHMuYzoxMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gcmV3cml0ZSBub3RlcyBpbiAlcyAob3V0c2lkZSBvZiByZWZzL25vdGVzLykiCiBtc2dzdHIgIlbDpGdyYXIgc2tyaXZhIMO2dmVyIGFudGVja25pbmdhciBpICVzICh1dGFuZsO2ciByZWZzL25vdGVzLykiCkBAIC0zNDU5LDEyICs0OTY5LDEyIEBACiAjLiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUsIHRoZSBzZWNvbmQgJXMgaXMKICMuIGl0cyB2YWx1ZS4KICMuCi0jOiBub3Rlcy11dGlscy5jOjE0NAorIzogbm90ZXMtdXRpbHMuYzoxNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkICVzIHZhbHVlOiAnJXMnIgogbXNnc3RyICJGZWxha3RpZ3QgdsOkcmRlIHDDpSAlczogXCIlc1wiIgogCi0jOiBvYmplY3QuYzo1NAorIzogb2JqZWN0LmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvYmplY3QgdHlwZSBcIiVzXCIiCiBtc2dzdHIgIm9naWx0aWcgb2JqZWt0dHlwIFwiJXNcIiIKQEAgLTM0ODQsMzAgKzQ5OTQsOTAgQEAKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2Ugb2JqZWN0OiAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSBvYmpla3RldDogJXMiCiAKLSM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzcKKyM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzgKICMsIGMtZm9ybWF0Ci1tc2dpZCAic2hhMSBtaXNtYXRjaCAlcyIKLW1zZ3N0ciAic2hhMSBzdMOkbW1lciBpbnRlIMO2dmVyZW5zICVzIgorbXNnaWQgImhhc2ggbWlzbWF0Y2ggJXMiCittc2dzdHIgImhhc2h2w6RyZGUgc3TDpG1tZXIgaW50ZSDDtnZlcmVucyAlcyIKIAotIzogcGFja2ZpbGUuYzo2MDcKKyM6IHBhY2tmaWxlLmM6NjI5CiBtc2dpZCAib2Zmc2V0IGJlZm9yZSBlbmQgb2YgcGFja2ZpbGUgKGJyb2tlbiAuaWR4PykiCiBtc2dzdHIgIm9mZnNldCBmw7ZyZSBzbHV0ZXQgYXYgcGFja2ZpbGVuICh0cmFzaWcgLmlkeD8pIgogCi0jOiBwYWNrZmlsZS5jOjE4NjQKKyM6IHBhY2tmaWxlLmM6MTg5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJvZmZzZXQgYmVmb3JlIHN0YXJ0IG9mIHBhY2sgaW5kZXggZm9yICVzIChjb3JydXB0IGluZGV4PykiCiBtc2dzdHIgIm9mZnNldCBmw7ZyZSBzbHV0ZXQgYXYgcGFja2luZGV4IGbDtnIgJXMgKHRyYXNpZ3QgaW5kZXg/KSIKIAotIzogcGFja2ZpbGUuYzoxODY4CisjOiBwYWNrZmlsZS5jOjE5MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAib2Zmc2V0IGJleW9uZCBlbmQgb2YgcGFjayBpbmRleCBmb3IgJXMgKHRydW5jYXRlZCBpbmRleD8pIgogbXNnc3RyICJvZmZzZXQgYm9ydG9uIHNsdXRldCBhdiBwYWNraW5kZXggZsO2ciAlcyAodHJ1bmtlcmF0IGluZGV4PykiCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo2NzIKKyM6IHBhY2stYml0bWFwLmM6ODAwIHBhY2stYml0bWFwLmM6ODA2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IHNpemUgb2YgJXMiCittc2dzdHIgImthbiBpbnRlIGjDpG10YSBzdG9ybGVrIHDDpSAlcyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjM4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlcXVpcmVzIGEgdmFsdWUiCittc2dzdHIgIiVzIGJlaMO2dmVyIGV0dCB2w6RyZGUiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAlcyIKK21zZ3N0ciAiJXMgw6RyIGlua29tcGF0aWJlbCBtZWQgJXMiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyA6IGluY29tcGF0aWJsZSB3aXRoIHNvbWV0aGluZyBlbHNlIgorbXNnc3RyICIlczogaW5rb21wYXRpYmVsdCBtZWQgbsOlZ290IGFubmF0IgorCisjOiBwYXJzZS1vcHRpb25zLmM6OTIgcGFyc2Utb3B0aW9ucy5jOjk2IHBhcnNlLW9wdGlvbnMuYzozMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdGFrZXMgbm8gdmFsdWUiCittc2dzdHIgIiVzIHRhciBpbmdldCB2w6RyZGUiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpc24ndCBhdmFpbGFibGUiCittc2dzdHIgIiVzIMOkciBpbnRlIHRpbGxnw6RuZ2xpZ3QiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzoyMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIHZhbHVlIHdpdGggYW4gb3B0aW9uYWwgay9tL2cgc3VmZml4IgorbXNnc3RyICIlcyBmw7ZydsOkbnRhciBldHQgaWNrZS1uZWdhdGl2dCBoZWx0YWxzdsOkcmRlLCBtZWQgdmFsZnJpdHQgay9tL2ctc3VmZml4IgorCisjOiBwYXJzZS1vcHRpb25zLmM6Mzg2CisjLCBjLWZvcm1hdAorbXNnaWQgImFtYmlndW91cyBvcHRpb246ICVzIChjb3VsZCBiZSAtLSVzJXMgb3IgLS0lcyVzKSIKK21zZ3N0ciAidHZldHlkaWcgZmxhZ2dhOiAlcyAoa2FuIHZhcmEgLS0lcyVzIGVsbGVyIC0tJXMlcykiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo0MjAgcGFyc2Utb3B0aW9ucy5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJkaWQgeW91IG1lYW4gYC0tJXNgICh3aXRoIHR3byBkYXNoZXMpPyIKK21zZ3N0ciAibWVuYWRlIGR1IFwiLS0lc1wiIChtZWQgdHbDpSBiaW5kZXN0cmVjayk/IgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgIm9rw6RuZCBmbGFnZ2EgXCIlc1wiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODU5CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gc3dpdGNoIGAlYyciCittc2dzdHIgIm9rw6RuZCBmbGFnZ2EgXCIlY1wiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gbm9uLWFzY2lpIG9wdGlvbiBpbiBzdHJpbmc6IGAlcyciCittc2dzdHIgIm9rw6RuZCBpY2tlLWFzY2lpLWZsYWdnYSBpIHN0csOkbmdlbjogXCIlc1wiIgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODg1CiBtc2dpZCAiLi4uIgogbXNnc3RyICIuLi4iCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo2OTEKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidXNhZ2U6ICVzIgogbXNnc3RyICJhbnbDpG5kbmluZzogJXMiCkBAIC0zNTE1LDU4ICs1MDg1LDc0IEBACiAjLiBUUkFOU0xBVE9SUzogdGhlIGNvbG9uIGhlcmUgc2hvdWxkIGFsaWduIHdpdGggdGhlCiAjLiBvbmUgaW4gInVzYWdlOiAlcyIgdHJhbnNsYXRpb24uCiAjLgotIzogcGFyc2Utb3B0aW9ucy5jOjY5NworIzogcGFyc2Utb3B0aW9ucy5jOjkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICBvcjogJXMiCiBtc2dzdHIgIiAgICAgZWxsZXI6ICVzIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzAwCisjOiBwYXJzZS1vcHRpb25zLmM6OTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlcyIKIG1zZ3N0ciAiICAgICVzIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzM5CisjOiBwYXJzZS1vcHRpb25zLmM6OTUyCiBtc2dpZCAiLU5VTSIKIG1zZ3N0ciAiLVRBTCIKIAotIzogcGFyc2Utb3B0aW9ucy1jYi5jOjM3CisjOiBwYXJzZS1vcHRpb25zLmM6OTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImFsaWFzIG9mIC0tJXMiCittc2dzdHIgImFsaWFzIGbDtnIgLS0lcyIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjIwIHBhcnNlLW9wdGlvbnMtY2IuYzoyNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICJmbGFnZ2FuIFwiJXNcIiBhbnRhciBldHQgbnVtZXJpc2t0IHbDpHJkZSIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBleHBpcmF0aW9uIGRhdGUgJyVzJyIKLW1zZ3N0ciAidHJhc2lndCB1dGzDtnBzZGF0dW06IOKAnSVz4oCdIgorbXNnc3RyICJ0cmFzaWd0IHV0bMO2cHNkYXR1bTogXCIlc1wiIgogCi0jOiBwYXJzZS1vcHRpb25zLWNiLmM6MTA5CisjOiBwYXJzZS1vcHRpb25zLWNiLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBcImFsd2F5c1wiLCBcImF1dG9cIiwgb3IgXCJuZXZlclwiIgorbXNnc3RyICIiCisiZmxhZ2dhbiBcIiVzXCIgYW50YXIgXCJhbHdheXNcIiAoYWxsdGlkKSwgXCJhdXRvXCIgZWxsZXIgXCJuZXZlclwiIChhbGRyaWcpIgorCisjOiBwYXJzZS1vcHRpb25zLWNiLmM6MTMwIHBhcnNlLW9wdGlvbnMtY2IuYzoxNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG9iamVjdCBuYW1lICclcyciCiBtc2dzdHIgImZlbGZvcm1hdCBvYmpla3RuYW1uIFwiJXNcIiIKIAotIzogcGF0aC5jOjg5NAorIzogcGF0aC5jOjkxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgbWFrZSAlcyB3cml0YWJsZSBieSBncm91cCIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBnw7ZyYSAlcyBza3JpdmJhciBmw7ZyIGdydXBwZW4iCiAKLSM6IHBhdGhzcGVjLmM6MTI5CisjOiBwYXRoc3BlYy5jOjEzMAogbXNnaWQgIkVzY2FwZSBjaGFyYWN0ZXIgJ1xcJyBub3QgYWxsb3dlZCBhcyBsYXN0IGNoYXJhY3RlciBpbiBhdHRyIHZhbHVlIgogbXNnc3RyICJTcGVjaWFsdGVja25ldCBcIlxcXCIgdGlsbMOldHMgaW50ZSBzb20gc2lzdGEgdGVja2VuIGkgYXR0cmlidXR2w6RyZGUiCiAKLSM6IHBhdGhzcGVjLmM6MTQ3CisjOiBwYXRoc3BlYy5jOjE0OAogbXNnaWQgIk9ubHkgb25lICdhdHRyOicgc3BlY2lmaWNhdGlvbiBpcyBhbGxvd2VkLiIKIG1zZ3N0ciAiRW5kYXN0IGVuIFwiYXR0cjpcIi1hbmdpdmVsc2UgdGlsbMOldGVuLiIKIAotIzogcGF0aHNwZWMuYzoxNTAKKyM6IHBhdGhzcGVjLmM6MTUxCiBtc2dpZCAiYXR0ciBzcGVjIG11c3Qgbm90IGJlIGVtcHR5IgogbXNnc3RyICJhdHRyLWFuZ2l2ZWxzZSBrYW4gaW50ZSB2YXJhIHRvbSIKIAotIzogcGF0aHNwZWMuYzoxOTMKKyM6IHBhdGhzcGVjLmM6MTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgYXR0cmlidXRlIG5hbWUgJXMiCiBtc2dzdHIgIm9naWx0aWd0IGF0dHJpYnV0bmFtbiAlcyIKIAotIzogcGF0aHNwZWMuYzoyNTgKKyM6IHBhdGhzcGVjLmM6MjU5CiBtc2dpZCAiZ2xvYmFsICdnbG9iJyBhbmQgJ25vZ2xvYicgcGF0aHNwZWMgc2V0dGluZ3MgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiIgogImRlIGdsb2JhbGEgc8O2a3bDpGdzaW5zdMOkbGxuaW5nYXJuYSBcImdsb2JcIiBvY2ggXCJub2dsb2JcIiDDpHIgaW5rb21wYXRpYmxhIgogCi0jOiBwYXRoc3BlYy5jOjI2NQorIzogcGF0aHNwZWMuYzoyNjYKIG1zZ2lkICIiCiAiZ2xvYmFsICdsaXRlcmFsJyBwYXRoc3BlYyBzZXR0aW5nIGlzIGluY29tcGF0aWJsZSB3aXRoIGFsbCBvdGhlciBnbG9iYWwgIgogInBhdGhzcGVjIHNldHRpbmdzIgpAQCAtMzU3NCwxMjggKzUxNjAsMjAwIEBACiAiZGVuIGdsb2JhbGEgc8O2a3bDpGdzaW5zdMOkbGxuaW5nZW4gXCJsaXRlcmFsXCIgw6RyIGlua29tcGF0aWJlbCBtZWQgYWxsYSBhbmRyYSAiCiAiZ2xvYmFsYSBzw7ZrdsOkZ3NpbnN0w6RsbG5pbmdhciIKIAotIzogcGF0aHNwZWMuYzozMDUKKyM6IHBhdGhzcGVjLmM6MzA2CiBtc2dpZCAiaW52YWxpZCBwYXJhbWV0ZXIgZm9yIHBhdGhzcGVjIG1hZ2ljICdwcmVmaXgnIgogbXNnc3RyICJvZ2lsdGlnIHBhcmFtZXRlciBmw7ZyIHPDtmt2w6Rnc3V0dHJ5Y2tldCBmw7ZyIFwicHJlZml4XCIiCiAKLSM6IHBhdGhzcGVjLmM6MzI2CisjOiBwYXRoc3BlYy5jOjMyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHBhdGhzcGVjIG1hZ2ljICclLipzJyBpbiAnJXMnIgogbXNnc3RyICJGZWxha3RpZ3Qgc8O2a3bDpGdzdXR0cnljayBcIiUuKnNcIiBpIFwiJXNcIiIKIAotIzogcGF0aHNwZWMuYzozMzEKKyM6IHBhdGhzcGVjLmM6MzMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1pc3NpbmcgJyknIGF0IHRoZSBlbmQgb2YgcGF0aHNwZWMgbWFnaWMgaW4gJyVzJyIKIG1zZ3N0ciAiXCIpXCIgc2FrbmFzIGkgc2x1dGV0IGF2IHPDtmt2w6Rnc3V0dHJ5Y2tldCBmw7ZyIFwiJXNcIiIKIAotIzogcGF0aHNwZWMuYzozNjkKKyM6IHBhdGhzcGVjLmM6MzcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuaW1wbGVtZW50ZWQgcGF0aHNwZWMgbWFnaWMgJyVjJyBpbiAnJXMnIgotbXNnc3RyICJFaiBpbXBsZW1lbnRlcmF0IHPDtmt2w6Rnc3V0dHJ5Y2ttYWdpIOKAnSVj4oCdIGkg4oCdJXPigJ0iCittc2dzdHIgIkVqIGltcGxlbWVudGVyYXQgc8O2a3bDpGdzdXR0cnlja21hZ2kgXCIlY1wiIGkgXCIlc1wiIgogCi0jOiBwYXRoc3BlYy5jOjQyOAorIzogcGF0aHNwZWMuYzo0MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6ICdsaXRlcmFsJyBhbmQgJ2dsb2InIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIiVzOiBcImxpdGVyYWxcIiBvY2ggXCJnbG9iXCIgw6RyIGlua29tcGF0aWJsYSIKIAotIzogcGF0aHNwZWMuYzo0NDEKKyM6IHBhdGhzcGVjLmM6NDQyCiAjLCBjLWZvcm1hdAotbXNnaWQgIiVzOiAnJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSIKLW1zZ3N0ciAiJXM6IFwiJXNcIiDDpHIgdXRhbmbDtnIgYXJraXZldCIKK21zZ2lkICIlczogJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkgYXQgJyVzJyIKK21zZ3N0ciAiJXM6IFwiJXNcIiDDpHIgdXRhbmbDtnIgYXJraXZldCBww6UgXCIlc1wiIgogCi0jOiBwYXRoc3BlYy5jOjUxNQorIzogcGF0aHNwZWMuYzo1MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyAobW5lbW9uaWM6ICclYycpIgogbXNnc3RyICJcIiVzXCIgKG1pbm5lc3N0w7ZkOiBcIiVjXCIpIgogCi0jOiBwYXRoc3BlYy5jOjUyNQorIzogcGF0aHNwZWMuYzo1MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHBhdGhzcGVjIG1hZ2ljIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBjb21tYW5kOiAlcyIKIG1zZ3N0ciAiJXM6IHPDtmt2w6Rnc3V0dHJ5Y2tldCBoYW50ZXJhcyBpbnRlIGF2IGRldCBow6RyIGtvbW1hbmRvdDogJXMiCiAKLSM6IHBhdGhzcGVjLmM6NTkyCisjOiBwYXRoc3BlYy5jOjU5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCiBtc2dzdHIgInPDtmt2w6Rnc2FuZ2l2ZWxzZW4gXCIlc1wiIMOkciBww6UgYW5kcmEgc2lkYW4gYXYgZW4gc3ltYm9saXNrIGzDpG5rIgogCi0jOiBwa3QtbGluZS5jOjEwNAorIzogcGF0aHNwZWMuYzo2MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBpcyBiYWRseSBxdW90ZWQ6ICVzIgorbXNnc3RyICJsaW5qZW4gZXIgZmVsYWt0aWd0IGNpdGVyYWQ6ICVzIgorCisjOiBwa3QtbGluZS5jOjkyCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZsdXNoIHBhY2tldCIKK21zZ3N0ciAia2FuIGludGUgc2tyaXZhIGZsdXNoLXBha2V0IgorCisjOiBwa3QtbGluZS5jOjk5Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGRlbGltIHBhY2tldCIKK21zZ3N0ciAia2FuIGludGUgc2tyaXZhIGRlbGltLXBha2V0IgorCisjOiBwa3QtbGluZS5jOjEwNgogbXNnaWQgImZsdXNoIHBhY2tldCB3cml0ZSBmYWlsZWQiCiBtc2dzdHIgImZlbCB2aWQgc2tyaXZuaW5nIGF2IFwiZmx1c2hcIi1wYWtldCIKIAotIzogcGt0LWxpbmUuYzoxNDIgcGt0LWxpbmUuYzoyMjgKKyM6IHBrdC1saW5lLmM6MTQ2IHBrdC1saW5lLmM6MjMyCiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGltcG9zc2libHkgbG9uZyBsaW5lIgogbXNnc3RyICJwcm90b2tvbGxmZWw6IG9tw7ZqbGlndCBsw6VuZyByYWQiCiAKLSM6IHBrdC1saW5lLmM6MTU4IHBrdC1saW5lLmM6MTYwCisjOiBwa3QtbGluZS5jOjE2MiBwa3QtbGluZS5jOjE2NAogbXNnaWQgInBhY2tldCB3cml0ZSB3aXRoIGZvcm1hdCBmYWlsZWQiCiBtc2dzdHIgInBha2V0c2tyaXZuaW5nIG1lZCBmb3JtYXQgbWlzc2x5Y2thZGVzIgogCi0jOiBwa3QtbGluZS5jOjE5MgorIzogcGt0LWxpbmUuYzoxOTYKIG1zZ2lkICJwYWNrZXQgd3JpdGUgZmFpbGVkIC0gZGF0YSBleGNlZWRzIG1heCBwYWNrZXQgc2l6ZSIKIG1zZ3N0ciAicGFrZXRza3Jpdm5pbmcgbWlzc2x5Y2thZGVzIC0gZGF0YSDDtnZlcnNrcmlkZXIgbWF4aW1hbCBwYWtldHN0b3JsZWsiCiAKLSM6IHBrdC1saW5lLmM6MTk5IHBrdC1saW5lLmM6MjA2CisjOiBwa3QtbGluZS5jOjIwMyBwa3QtbGluZS5jOjIxMAogbXNnaWQgInBhY2tldCB3cml0ZSBmYWlsZWQiCiBtc2dzdHIgInBha2V0c2tyaXZuaW5nIG1pc3NseWNrYWRlcyIKIAotIzogcGt0LWxpbmUuYzoyOTEKKyM6IHBrdC1saW5lLmM6Mjk1CiBtc2dpZCAicmVhZCBlcnJvciIKIG1zZ3N0ciAibMOkc2ZlbCIKIAotIzogcGt0LWxpbmUuYzoyOTkKKyM6IHBrdC1saW5lLmM6MzAzCiBtc2dpZCAidGhlIHJlbW90ZSBlbmQgaHVuZyB1cCB1bmV4cGVjdGVkbHkiCiBtc2dzdHIgImZqw6RycmVuIGxhZGUgcMOlIG92w6RudGF0IgogCi0jOiBwa3QtbGluZS5jOjMyNworIzogcGt0LWxpbmUuYzozMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBsaW5lIGxlbmd0aCBjaGFyYWN0ZXI6ICUuNHMiCiBtc2dzdHIgInByb3Rva29sbGZlbDogZmVsYWt0aWcgcmFkbMOkbmdkc3RlY2tlbjogJS40cyIKIAotIzogcGt0LWxpbmUuYzozMzcgcGt0LWxpbmUuYzozNDIKKyM6IHBrdC1saW5lLmM6MzQxIHBrdC1saW5lLmM6MzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sIGVycm9yOiBiYWQgbGluZSBsZW5ndGggJWQiCiBtc2dzdHIgInByb3Rva29sbGZlbDogZmVsYWt0aWcgcmFkbMOkbmdkOiAlZCIKIAotIzogcHJlbG9hZC1pbmRleC5jOjExOAorIzogcGt0LWxpbmUuYzozNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlIGVycm9yOiAlcyIKK21zZ3N0ciAiZmrDpHJyZmVsOiAlcyIKKworIzogcHJlbG9hZC1pbmRleC5jOjExOQogbXNnaWQgIlJlZnJlc2hpbmcgaW5kZXgiCiBtc2dzdHIgIlVwcGRhdGVyYXIgaW5kZXhldCIKIAotIzogcHJlbG9hZC1pbmRleC5jOjEzNworIzogcHJlbG9hZC1pbmRleC5jOjEzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRocmVhZGVkIGxzdGF0OiAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSB0csOlZGFkIGxzdGF0OiAlcyIKIAotIzogcHJldHR5LmM6OTYyCisjOiBwcmV0dHkuYzo5ODEKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgLS1wcmV0dHkgZm9ybWF0IgogbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthIGZvcm1hdCBmw7ZyIC0tcHJldHR5IgogCi0jOiByYW5nZS1kaWZmLmM6NTYKKyM6IHByb21pc29yLXJlbW90ZS5jOjIzCittc2dpZCAiUmVtb3RlIHdpdGggbm8gVVJMIgorbXNnc3RyICJGasOkcnIgdXRhbiBVUkwiCisKKyM6IHByb21pc29yLXJlbW90ZS5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInByb21pc29yIHJlbW90ZSBuYW1lIGNhbm5vdCBiZWdpbiB3aXRoICcvJzogJXMiCittc2dzdHIgImtvbnRyYWt0c2Zqw6RyciBrYW4gaW50ZSBiw7ZyamEgbWVkIFwiL1wiOiAlcyIKKworIzogcmFuZ2UtZGlmZi5jOjc1CiBtc2dpZCAiY291bGQgbm90IHN0YXJ0IGBsb2dgIgogbXNnc3RyICJrdW5kZSBpbnRlIHN0YXJ0YSBcImxvZ1wiIgogCi0jOiByYW5nZS1kaWZmLmM6NTkKKyM6IHJhbmdlLWRpZmYuYzo3NwogbXNnaWQgImNvdWxkIG5vdCByZWFkIGBsb2dgIG91dHB1dCIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSB1dGRhdGEgZnLDpW4gXCJsb2dcIiIKIAotIzogcmFuZ2UtZGlmZi5jOjc0IHNlcXVlbmNlci5jOjQ3NjQKKyM6IHJhbmdlLWRpZmYuYzo5NiBzZXF1ZW5jZXIuYzo1MDIwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSBpbmNoZWNrbmluZ2VuIFwiJXNcIiIKIAotIzogcmFuZ2UtZGlmZi5jOjIyNAorIzogcmFuZ2UtZGlmZi5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgZ2l0IGhlYWRlciAnJS4qcyciCittc2dzdHIgImt1bmRlIGludGUgdG9sa2EgZ2l0LWh1dnVkZXQgXCIlLipzXCIiCisKKyM6IHJhbmdlLWRpZmYuYzoyODUKIG1zZ2lkICJmYWlsZWQgdG8gZ2VuZXJhdGUgZGlmZiIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHNrYXBhIGRpZmYiCiAKLSM6IHJhbmdlLWRpZmYuYzo0NTUgcmFuZ2UtZGlmZi5jOjQ1NworIzogcmFuZ2UtZGlmZi5jOjUxOCByYW5nZS1kaWZmLmM6NTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBsb2cgZm9yICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgdG9sa2EgbG9nZ2VuIGbDtnIgXCIlc1wiIgogCi0jOiByZWFkLWNhY2hlLmM6MTQ5MAorIzogcmVhZC1jYWNoZS5jOjY4MAorIywgYy1mb3JtYXQKK21zZ2lkICJ3aWxsIG5vdCBhZGQgZmlsZSBhbGlhcyAnJXMnICgnJXMnIGFscmVhZHkgZXhpc3RzIGluIGluZGV4KSIKK21zZ3N0ciAibMOkZ2dlciBpbnRlIHRpbGwgZmlsYWxpYXMgXCIlc1wiIChcIiVzXCIgZmlubnMgcmVkYW4gaSBpbmRleGV0KSIKKworIzogcmVhZC1jYWNoZS5jOjY5NgorbXNnaWQgImNhbm5vdCBjcmVhdGUgYW4gZW1wdHkgYmxvYiBpbiB0aGUgb2JqZWN0IGRhdGFiYXNlIgorbXNnc3RyICJrYW4gaW50ZSBza2FwYSB0b20gYmxvYiBpIG9iamVrdGRhdGFiYXNlbiIKKworIzogcmVhZC1jYWNoZS5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2FuIG9ubHkgYWRkIHJlZ3VsYXIgZmlsZXMsIHN5bWJvbGljIGxpbmtzIG9yIGdpdC1kaXJlY3RvcmllcyIKK21zZ3N0ciAiIgorIiVzOiBrYW4gYmFyYSBsw6RnZ2EgdGlsbCB2YW5saWdhIGZpbGVyLCBzeW1ib2xpc2thIGzDpG5rYXIgb2NoIGdpdC1rYXRhbG9nZXIiCisKKyM6IHJlYWQtY2FjaGUuYzo3MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBoYXZlIGEgY29tbWl0IGNoZWNrZWQgb3V0IgorbXNnc3RyICJcIiVzXCIgaGFyIGludGUgbsOlZ29uIHV0Y2hlY2thZCBpbmNoZWNrbmluZyIKKworIzogcmVhZC1jYWNoZS5jOjc3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5kZXggZmlsZSAnJXMnIgorbXNnc3RyICJrYW4gaW50ZSBpbmRleGVyYSBmaWxlbiBcIiVzXCIiCisKKyM6IHJlYWQtY2FjaGUuYzo3OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFkZCAnJXMnIHRvIGluZGV4IgorbXNnc3RyICJrYW4gaW50ZSBsw6RnZ2EgdGlsbCBcIiVzXCIgdGlsbCBpbmRleGV0IgorCisjOiByZWFkLWNhY2hlLmM6ODA1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICclcyciCittc2dzdHIgImthbiBpbnRlIHRhIHN0YXR1cyBww6UgXCIlc1wiIgorCisjOiByZWFkLWNhY2hlLmM6MTMzMAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGFwcGVhcnMgYXMgYm90aCBhIGZpbGUgYW5kIGFzIGEgZGlyZWN0b3J5IgorbXNnc3RyICJcIiVzXCIgZmlubnMgYsOlZGUgc29tIGVuIGZpbCBvY2ggZW4ga2F0YWxvZyIKKworIzogcmVhZC1jYWNoZS5jOjE1MzYKIG1zZ2lkICJSZWZyZXNoIGluZGV4IgogbXNnc3RyICJVcHBkYXRlcmEgaW5kZXhldCIKIAotIzogcmVhZC1jYWNoZS5jOjE2MDQKKyM6IHJlYWQtY2FjaGUuYzoxNjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJpbmRleC52ZXJzaW9uIHNldCwgYnV0IHRoZSB2YWx1ZSBpcyBpbnZhbGlkLlxuIgpAQCAtMzcwNCw3ICs1MzYyLDcgQEAKICJpbmRleC52ZXJzaW9uIHNhdHQsIG1lbiB2w6RyZGV0IMOkciBvZ2lsdGlndC5cbiIKICJBbnbDpG5kZXIgdmVyc2lvbiAlaSIKIAotIzogcmVhZC1jYWNoZS5jOjE2MTQKKyM6IHJlYWQtY2FjaGUuYzoxNjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJHSVRfSU5ERVhfVkVSU0lPTiBzZXQsIGJ1dCB0aGUgdmFsdWUgaXMgaW52YWxpZC5cbiIKQEAgLTM3MTMsNjAgKzUzNzEsMTYxIEBACiAiR0lUX0lOREVYX1ZFUlNJT04gc2F0dCwgbWVuIHbDpHJkZXQgw6RyIG9naWx0aWd0LlxuIgogIkFudsOkbmRlciB2ZXJzaW9uICVpIgogCi0jOiByZWFkLWNhY2hlLmM6MTc5MgorIzogcmVhZC1jYWNoZS5jOjE3MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHNpZ25hdHVyZSAweCUwOHgiCittc2dzdHIgImZlbGFrdGlnIHNpZ25hdHVyIDB4JTA4eCIKKworIzogcmVhZC1jYWNoZS5jOjE3MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJWQiCittc2dzdHIgImZlbGFrdGlnIGluZGV4dmVyc2lvbiAlZCIKKworIzogcmVhZC1jYWNoZS5jOjE3MjkKK21zZ2lkICJiYWQgaW5kZXggZmlsZSBzaGExIHNpZ25hdHVyZSIKK21zZ3N0ciAiZmVsYWt0aWcgc2hhMS1zaWduYXR1ciBmw7ZyIGluZGV4ZmlsIgorCisjOiByZWFkLWNhY2hlLmM6MTc1OQorIywgYy1mb3JtYXQKK21zZ2lkICJpbmRleCB1c2VzICUuNHMgZXh0ZW5zaW9uLCB3aGljaCB3ZSBkbyBub3QgdW5kZXJzdGFuZCIKK21zZ3N0ciAiaW5kZXggYW52w6RuZGVyIGZpbHRpbGzDpGdnZXQgJS40cywgdmlsa2V0IHZpIGludGUgZsO2cnN0w6VyIgorCisjOiByZWFkLWNhY2hlLmM6MTc2MQorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlLjRzIGV4dGVuc2lvbiIKK21zZ3N0ciAiaWdub3JlcmFyIGZpbHRpbGzDpGdnZXQgJS40cyIKKworIzogcmVhZC1jYWNoZS5jOjE3OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBpbmRleCBlbnRyeSBmb3JtYXQgMHglMDh4IgorbXNnc3RyICJva8OkbnQgZm9ybWF0IDB4JTA4eCBww6UgaW5kZXhwb3N0IgorCisjOiByZWFkLWNhY2hlLmM6MTgxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgbmFtZSBmaWVsZCBpbiB0aGUgaW5kZXgsIG5lYXIgcGF0aCAnJXMnIgogbXNnc3RyICJmZWxmb3JtYXQgbmFtbmbDpGx0IGkgaW5kZXhldCwgbsOkcmEgc8O2a3bDpGdlbiBcIiVzXCIiCiAKLSM6IHJlYWQtY2FjaGUuYzoxOTYwIHJlcmVyZS5jOjU2NSByZXJlcmUuYzo1OTkgcmVyZXJlLmM6MTExMSBidWlsdGluL2FkZC5jOjQ1OAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjI4OSBidWlsdGluL2NoZWNrb3V0LmM6NTg1Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTUzIGJ1aWx0aW4vY2xlYW4uYzo5NTQgYnVpbHRpbi9jb21taXQuYzozNDMKLSM6IGJ1aWx0aW4vZGlmZi10cmVlLmM6MTE1IGJ1aWx0aW4vZ3JlcC5jOjQ4OSBidWlsdGluL212LmM6MTQ0Ci0jOiBidWlsdGluL3Jlc2V0LmM6MjQ0IGJ1aWx0aW4vcm0uYzoyNzAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjMyOQorIzogcmVhZC1jYWNoZS5jOjE4NzEKK21zZ2lkICJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBpbiBpbmRleCIKK21zZ3N0ciAib3NvcnRlcmFkZSBrw7Zwb3N0ZXIgaSBpbmRleCIKKworIzogcmVhZC1jYWNoZS5jOjE4NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgc3RhZ2UgZW50cmllcyBmb3IgbWVyZ2VkIGZpbGUgJyVzJyIKK21zZ3N0ciAiZmxlcmEga8O2cG9zdGVyIGbDtnIgZGVuIHNhbW1hbnNsYWduYSBmaWxlbiBcIiVzXCIiCisKKyM6IHJlYWQtY2FjaGUuYzoxODc3CisjLCBjLWZvcm1hdAorbXNnaWQgInVub3JkZXJlZCBzdGFnZSBlbnRyaWVzIGZvciAnJXMnIgorbXNnc3RyICJvc29ydGVyYWRlIGvDtnBvc3RlciBmw7ZyIFwiJXNcIiIKKworIzogcmVhZC1jYWNoZS5jOjE5ODMgcmVhZC1jYWNoZS5jOjIyNzEgcmVyZXJlLmM6NTY1IHJlcmVyZS5jOjU5OSByZXJlcmUuYzoxMTExCisjOiBzdWJtb2R1bGUuYzoxNjE5IGJ1aWx0aW4vYWRkLmM6NTMyIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTgxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDcwIGJ1aWx0aW4vY2hlY2tvdXQuYzo2NTYgYnVpbHRpbi9jbGVhbi5jOjk2NworIzogYnVpbHRpbi9jb21taXQuYzozNjcgYnVpbHRpbi9kaWZmLXRyZWUuYzoxMjAgYnVpbHRpbi9ncmVwLmM6NDg1CisjOiBidWlsdGluL212LmM6MTQ1IGJ1aWx0aW4vcmVzZXQuYzoyNDYgYnVpbHRpbi9ybS5jOjI5MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjMzMgogbXNnaWQgImluZGV4IGZpbGUgY29ycnVwdCIKIG1zZ3N0ciAiaW5kZXhmaWxlbiB0cmFzaWciCiAKLSM6IHJlYWQtY2FjaGUuYzoyMTAxCisjOiByZWFkLWNhY2hlLmM6MjEyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxvYWRfY2FjaGVfZW50cmllcyB0aHJlYWQ6ICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIGluIGNhY2hlX2VudHJpZXMtdHLDpWRlbjogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzoyMTE0CisjOiByZWFkLWNhY2hlLmM6MjEzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gam9pbiBsb2FkX2NhY2hlX2VudHJpZXMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSB1dGbDtnJhIGpvaW4gcMOlIGNhY2hlX2VudHJpZXMtdHLDpWRlbjogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzoyMjAxCisjOiByZWFkLWNhY2hlLmM6MjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW5kZXggZmlsZSBvcGVuIGZhaWxlZCIKK21zZ3N0ciAiJXM6IMO2cHBuaW5nIGF2IGluZGV4ZmlsZW4gbWlzc2x5Y2thZGVzIgorCisjOiByZWFkLWNhY2hlLmM6MjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2Fubm90IHN0YXQgdGhlIG9wZW4gaW5kZXgiCittc2dzdHIgIiVzOiBrYW4gaW50ZSB0YSBzdGFydHVzIHDDpSBkZXQgw7ZwcG5hIGluZGV4ZXQiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbmRleCBmaWxlIHNtYWxsZXIgdGhhbiBleHBlY3RlZCIKK21zZ3N0ciAiJXM6IGluZGV4ZmlsZW4gbWluZHJlIMOkbiBmw7ZydsOkbnRhdCIKKworIzogcmVhZC1jYWNoZS5jOjIxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBtYXAgaW5kZXggZmlsZSIKK21zZ3N0ciAiJXM6IGthbiBpbnRlIGtvcHBsYSBpbmRleGZpbGVuIgorCisjOiByZWFkLWNhY2hlLmM6MjIyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxvYWRfaW5kZXhfZXh0ZW5zaW9ucyB0aHJlYWQ6ICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIHNrYXBhIGxvYWRfaW5kZXhfZXh0ZW5zaW9ucy10csOlZGVuOiAlcyIKIAotIzogcmVhZC1jYWNoZS5jOjIyMjgKKyM6IHJlYWQtY2FjaGUuYzoyMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBqb2luIGxvYWRfaW5kZXhfZXh0ZW5zaW9ucyB0aHJlYWQ6ICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIHV0ZsO2cmEgam9pbiBww6UgbG9hZF9pbmRleF9leHRlbnNpb25zLXRyw6VkZW46ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6Mjk4MiBzZXF1ZW5jZXIuYzo0NzI3IHdyYXBwZXIuYzo2NTggYnVpbHRpbi9tZXJnZS5jOjEwODYKKyM6IHJlYWQtY2FjaGUuYzoyMjgzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmcmVzaGVuIHNoYXJlZCBpbmRleCAnJXMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHVwcGRhdGVyYSBkZWxhdCBpbmRleCBcIiVzXCIiCisKKyM6IHJlYWQtY2FjaGUuYzoyMzMwCisjLCBjLWZvcm1hdAorbXNnaWQgImJyb2tlbiBpbmRleCwgZXhwZWN0ICVzIGluICVzLCBnb3QgJXMiCittc2dzdHIgInRyYXNpZ3QgaW5kZXgsIGbDtnJ2w6RudGFkZSAlcyBpICVzLCBmaWNrICVzIgorCisjOiByZWFkLWNhY2hlLmM6MzAyNiBzdHJidWYuYzoxMTYwIHdyYXBwZXIuYzo2MjIgYnVpbHRpbi9tZXJnZS5jOjExMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNsb3NlICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgc3TDpG5nYSBcIiVzXCIiCiAKLSM6IHJlYWQtY2FjaGUuYzozMDU1IHNlcXVlbmNlci5jOjIyMDMgc2VxdWVuY2VyLmM6MzU5MgorIzogcmVhZC1jYWNoZS5jOjMxMjkgc2VxdWVuY2VyLmM6MjM0MyBzZXF1ZW5jZXIuYzozOTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0ICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBcIiVzXCIiCiAKLSM6IHJlYWQtY2FjaGUuYzozMDY4CisjOiByZWFkLWNhY2hlLmM6MzE0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBnaXQgZGlyOiAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgZ2l0LWthdGFsb2c6ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6MzA4MAorIzogcmVhZC1jYWNoZS5jOjMxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVubGluazogJXMiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyB0YSBib3J0IGzDpG5rZW46ICVzIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMAorIzogcmVhZC1jYWNoZS5jOjMxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpeCBwZXJtaXNzaW9uIGJpdHMgb24gJyVzJyIKK21zZ3N0ciAia2FuIGludGUgcsOkdHRhIGJlaMO2cmlnaGV0c2JpdGFyIHDDpSBcIiVzXCIiCisKKyM6IHJlYWQtY2FjaGUuYzozMzI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW5ub3QgZHJvcCB0byBzdGFnZSAjMCIKK21zZ3N0ciAiJXM6IGthbiBpbnRlIMOldGVyZ8OlIHRpbGwga8O2IDAiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjExCittc2dpZCAiIgorIllvdSBjYW4gZml4IHRoaXMgd2l0aCAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tIgorImNvbnRpbnVlJy5cbiIKKyJPciB5b3UgY2FuIGFib3J0IHRoZSByZWJhc2Ugd2l0aCAnZ2l0IHJlYmFzZSAtLWFib3J0Jy5cbiIKK21zZ3N0ciAiIgorIkR1IGthbiByw6R0dGEgZGV0dGEgbWVkIFwiZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb1wiIGbDtmxqdCBhdiBcImdpdCByZWJhc2UgLS0iCisiY29udGludWVcIi5cbiIKKyJBdmJyeXQgb21iYXNlcmluZ2VuIG1lZCBcImdpdCByZWJhc2UgLS1hYm9ydFwiLlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzozMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5yZWNvZ25pemVkIHNldHRpbmcgJXMgZm9yIG9wdGlvbiByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4gSWdub3JpbmcuIgorbXNnc3RyICIiCisib2vDpG5kIGluc3TDpGxsbmluZyAlcyBmw7ZyIGZsYWdnYW4gcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2suIElnbm9yZXJhci4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQyCiBtc2dpZCAiIgogIlxuIgogIkNvbW1hbmRzOlxuIgpAQCAtMzgxMCw3ICs1NTY5LDE0IEBACiAiXG4iCiAiRHUga2FuIGJ5dGEgb3JkbmluZyBww6UgcmFkZXJuYTsgZGUgdXRmw7ZycyB1cHBpZnLDpW4gb2NoIG5lZC5cbiIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6MzEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE3MworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmQpIgorbXNnaWRfcGx1cmFsICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZHMpIgorbXNnc3RyWzBdICJPbWJhc2VyYSAlcyBww6UgJXMgKCVkIGtvbW1hbmRvKSIKK21zZ3N0clsxXSAiT21iYXNlcmEgJXMgcMOlICVzICglZCBrb21tYW5kb24pIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3MiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjI4CiBtc2dpZCAiIgogIlxuIgogIkRvIG5vdCByZW1vdmUgYW55IGxpbmUuIFVzZSAnZHJvcCcgZXhwbGljaXRseSB0byByZW1vdmUgYSBjb21taXQuXG4iCkBAIC0zODE5LDcgKzU1ODUsNyBAQAogIlRhIGludGUgYm9ydCByYWRlci4gQW52w6RuZCBcImRyb3BcIiBmw7ZyIGF0dCBzcGVjaWZpa3QgZsO2cmthc3RhIGVuICIKICJpbmNoZWNrbmluZy5cbiIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6MzQgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE3NworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NzUgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIzMgogbXNnaWQgIiIKICJcbiIKICJJZiB5b3UgcmVtb3ZlIGEgbGluZSBoZXJlIFRIQVQgQ09NTUlUIFdJTEwgQkUgTE9TVC5cbiIKQEAgLTM4MjcsNyArNTU5Myw3IEBACiAiXG4iCiAiT20gZHUgdGFyIGJvcnQgZW4gcmFkIEtPTU1FUiBERU4gSU5DSEVDS05JTkdFTiBBVFQgRsOWUkxPUkFTLlxuIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo0MCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODE2CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo4MSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODcxCiBtc2dpZCAiIgogIlxuIgogIllvdSBhcmUgZWRpdGluZyB0aGUgdG9kbyBmaWxlIG9mIGFuIG9uZ29pbmcgaW50ZXJhY3RpdmUgcmViYXNlLlxuIgpAQCAtMzg0MSw3ICs1NjA3LDcgQEAKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAiXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQ1IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4OTMKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjg2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDgKIG1zZ2lkICIiCiAiXG4iCiAiSG93ZXZlciwgaWYgeW91IHJlbW92ZSBldmVyeXRoaW5nLCB0aGUgcmViYXNlIHdpbGwgYmUgYWJvcnRlZC5cbiIKQEAgLTM4NTEsMTI1ICs1NjE3LDE2MyBAQAogIk9tYmFzZXJpbmdlbiBrb21tZXIgZG9jayBhdHQgYXZicnl0YXMgb20gZHUgdGFyIGJvcnQgYWxsdGluZy5cbiIKICJcbiIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6NTEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwMAotbXNnaWQgIk5vdGUgdGhhdCBlbXB0eSBjb21taXRzIGFyZSBjb21tZW50ZWQgb3V0IgotbXNnc3RyICJPYnNlcnZlcmEgYXR0IHRvbW1hIGluY2hlY2tuaW5nYXIgw6RyIHV0a29tbWVudGVyYWRlIgorIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTEwIHJlcmVyZS5jOjQ4NSByZXJlcmUuYzo2OTIgc2VxdWVuY2VyLmM6MzQ0NAorIzogc2VxdWVuY2VyLmM6MzQ3MCBzZXF1ZW5jZXIuYzo1MTI1IGJ1aWx0aW4vZnNjay5jOjM0NiBidWlsdGluL3JlYmFzZS5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgXCIlc1wiIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo2MiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3NSBzZXF1ZW5jZXIuYzoyMTg2Ci0jOiBzZXF1ZW5jZXIuYzo0NTA1IHNlcXVlbmNlci5jOjQ1NjEgc2VxdWVuY2VyLmM6NDgzNgorIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTE2IGJ1aWx0aW4vcmViYXNlLmM6MTg0IGJ1aWx0aW4vcmViYXNlLmM6MjEwCisjOiBidWlsdGluL3JlYmFzZS5jOjIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJy4iCittc2dzdHIgImt1bmRlIGludGUgc2tyaXZhIFwiJXNcIi4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCisiRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCittc2dzdHIgIiIKKyJWYXJuaW5nOiB2aXNzYSBpbmNoZWNrbmluZ2FyIGthbiBhdiBtaXNzdGFnIGhhIHRhcHBhdHMuXG4iCisiVGFwcGFkZSBpbmNoZWNrbmluZ2FyIChueWFzdGUgZsO2cnN0KTpcbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUbyBhdm9pZCB0aGlzIG1lc3NhZ2UsIHVzZSBcImRyb3BcIiB0byBleHBsaWNpdGx5IHJlbW92ZSBhIGNvbW1pdC5cbiIKKyJcbiIKKyJVc2UgJ2dpdCBjb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2snIHRvIGNoYW5nZSB0aGUgbGV2ZWwgb2YgIgorIndhcm5pbmdzLlxuIgorIlRoZSBwb3NzaWJsZSBiZWhhdmlvdXJzIGFyZTogaWdub3JlLCB3YXJuLCBlcnJvci5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkbDtnIgYXR0IHVuZHZpa2EgZGV0IGjDpHIgbWVkZGVsYW5kZXQga2FuIGR1IGFudsOkbmRhIFwiZHJvcFwiIGbDtnIgYXR0ICIKKyJleHBsaWNpdFxuIgorImthc3RhIGVuIGluY2hlY2tuaW5nLlxuIgorIlxuIgorIkFudsOkbmQgXCJnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrXCIgZsO2ciBhdHQgw6RuZHJhICIKKyJ2YXJuaW5nc25pdsOlbi5cbiIKKyJNw7ZqbGlnYSBiZXR0ZW5kZW4gw6RyOiBcImlnbm9yZVwiIChpZ25vcmVyYSksIFwid2FyblwiICh2YXJuYSksIFwiZXJyb3IiCisiXCIgKGZlbCkuXG4iCisiXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjIzMyByZWJhc2UtaW50ZXJhY3RpdmUuYzoyMzggc2VxdWVuY2VyLmM6MjI2MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNzAgYnVpbHRpbi9yZWJhc2UuYzoxOTUgYnVpbHRpbi9yZWJhc2UuYzoyMjEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkICclcycuIgogbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIFwiJXNcIi4iCiAKLSM6IHJlZnMuYzoxOTIKKyM6IHJlZnMuYzoyNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBvYmplY3QhIgogbXNnc3RyICJcIiVzXCIgcGVrYXIgaW50ZSBww6UgZXR0IGdpbHRpZ3Qgb2JqZWt0ISIKIAotIzogcmVmcy5jOjU4MworIzogcmVmcy5jOjY2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyBkYW5nbGluZyBzeW1yZWYgJXMiCiBtc2dzdHIgImlnbm9yZXJhciBkaW5nbGFuZGUgc3ltYm9saXNrIHJlZmVyZW5zICVzIgogCi0jOiByZWZzLmM6NTg1IHJlZi1maWx0ZXIuYzoxOTUxCisjOiByZWZzLmM6NjY5IHJlZi1maWx0ZXIuYzoyMDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIGJyb2tlbiByZWYgJXMiCiBtc2dzdHIgImlnbm9yZXJhciB0cmFzaWcgcmVmZXJlbnMgJXMiCiAKLSM6IHJlZnMuYzo3MTEKKyM6IHJlZnMuYzo4MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZzogJXMiCiBtc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIFwiJXNcIiBmw7ZyIHNrcml2bmluZzogJXMiCiAKLSM6IHJlZnMuYzo3MjEgcmVmcy5jOjc3MgorIzogcmVmcy5jOjgxNCByZWZzLmM6ODY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAnJXMnIgogbXNnc3RyICJLdW5kZSBpbnRlIGzDpHNhIHJlZmVyZW5zZW4gXCIlc1wiIgogCi0jOiByZWZzLmM6NzI3CisjOiByZWZzLmM6ODIwCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZiAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICJyZWZlcmVuc2VuIFwiJXNcIiBmaW5ucyByZWRhbiIKIAotIzogcmVmcy5jOjczMgorIzogcmVmcy5jOjgyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG9iamVjdCBJRCB3aGVuIHdyaXRpbmcgJyVzJyIKIG1zZ3N0ciAib3bDpG50YXQgb2JqZWt0LWlkIHZpZCBza3Jpdm5pbmcgXCIlc1wiIgogCi0jOiByZWZzLmM6NzQwIHNlcXVlbmNlci5jOjM5NCBzZXF1ZW5jZXIuYzoyNTEwIHNlcXVlbmNlci5jOjI2MzYKLSM6IHNlcXVlbmNlci5jOjI2NTAgc2VxdWVuY2VyLmM6Mjg3NyBzZXF1ZW5jZXIuYzo0NzI1IHNlcXVlbmNlci5jOjQ3ODgKLSM6IHdyYXBwZXIuYzo2NTYKKyM6IHJlZnMuYzo4MzMgc2VxdWVuY2VyLmM6NDA3IHNlcXVlbmNlci5jOjI3MDEgc2VxdWVuY2VyLmM6MjkwNQorIzogc2VxdWVuY2VyLmM6MjkxOSBzZXF1ZW5jZXIuYzozMTc3IHNlcXVlbmNlci5jOjUwMzYgc3RyYnVmLmM6MTE1NworIzogd3JhcHBlci5jOjYyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgdG8gJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgdGlsbCBcIiVzXCIiCiAKLSM6IHJlZnMuYzo3Njcgc2VxdWVuY2VyLmM6NDcyMyBzZXF1ZW5jZXIuYzo0NzgyIHdyYXBwZXIuYzoyMjUgd3JhcHBlci5jOjM5NQotIzogYnVpbHRpbi9hbS5jOjcyOAorIzogcmVmcy5jOjg2MCBzdHJidWYuYzoxMTU1IHdyYXBwZXIuYzoxODggd3JhcHBlci5jOjM1OCBidWlsdGluL2FtLmM6NzE5CisjOiBidWlsdGluL3JlYmFzZS5jOjEwMjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZyIKIG1zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgXCIlc1wiIGbDtnIgc2tyaXZuaW5nIgogCi0jOiByZWZzLmM6Nzc0CisjOiByZWZzLmM6ODY3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgb2JqZWN0IElEIHdoZW4gZGVsZXRpbmcgJyVzJyIKIG1zZ3N0ciAib3bDpG50YXQgb2JqZWt0LWlkIHZpZCBib3J0dGFnbmluZyBcIiVzXCIiCiAKLSM6IHJlZnMuYzo5MDUKKyM6IHJlZnMuYzo5OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9nIGZvciByZWYgJXMgaGFzIGdhcCBhZnRlciAlcyIKIG1zZ3N0ciAibG9nZ2VuIGbDtnIgcmVmZXJlbnNlbiAlcyBoYXIgbHVja2EgZWZ0ZXIgJXMiCiAKLSM6IHJlZnMuYzo5MTEKKyM6IHJlZnMuYzoxMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvZyBmb3IgcmVmICVzIHVuZXhwZWN0ZWRseSBlbmRlZCBvbiAlcyIKIG1zZ3N0ciAibG9nZ2VuIGbDtnIgcmVmZXJlbnNlbiAlcyBzbHV0YWRlIG92w6RudGF0IHDDpSAlcyIKIAotIzogcmVmcy5jOjk2OQorIzogcmVmcy5jOjEwNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9nIGZvciAlcyBpcyBlbXB0eSIKIG1zZ3N0ciAibG9nZ2VuIGbDtnIgJXMgw6RyIHRvbSIKIAotIzogcmVmcy5jOjEwNjEKKyM6IHJlZnMuYzoxMTU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZnVzaW5nIHRvIHVwZGF0ZSByZWYgd2l0aCBiYWQgbmFtZSAnJXMnIgogbXNnc3RyICJ2w6RncmFyIHVwcGRhdGVyYSByZWZlcmVucyBtZWQgdHJhc2lndCBuYW1uIFwiJXNcIiIKIAotIzogcmVmcy5jOjExMzcKKyM6IHJlZnMuYzoxMjMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVwZGF0ZV9yZWYgZmFpbGVkIGZvciByZWYgJyVzJzogJXMiCiBtc2dzdHIgInVwZGF0ZV9yZWYgbWlzc2x5Y2thZGVzIGbDtnIgcmVmZXJlbnNlbiBcIiVzXCI6ICVzIgogCi0jOiByZWZzLmM6MTkxMQorIzogcmVmcy5jOjIwMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGlwbGUgdXBkYXRlcyBmb3IgcmVmICclcycgbm90IGFsbG93ZWQiCiBtc2dzdHIgImZsZXJhIHVwcGRhdGVyaW5nYXIgZsO2ciByZWZlcmVuc2VuIFwiJXNcIiB0aWxsw6V0cyBpbnRlIgogCi0jOiByZWZzLmM6MTk0MworIzogcmVmcy5jOjIwNTUKIG1zZ2lkICJyZWYgdXBkYXRlcyBmb3JiaWRkZW4gaW5zaWRlIHF1YXJhbnRpbmUgZW52aXJvbm1lbnQiCiBtc2dzdHIgInJlZmVyZW5zdXBwZGF0ZXJpbmdhciBmw7ZyYmp1ZG5hIGkga2FyYW50w6RubWlsasO2IgogCi0jOiByZWZzLmM6MjAzOSByZWZzLmM6MjA2OQorIzogcmVmcy5jOjIxNTEgcmVmcy5jOjIxODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBleGlzdHM7IGNhbm5vdCBjcmVhdGUgJyVzJyIKIG1zZ3N0ciAiXCIlc1wiIGZpbm5zOyBrYW4gaW50ZSBza2FwYSBcIiVzXCIiCiAKLSM6IHJlZnMuYzoyMDQ1IHJlZnMuYzoyMDgwCisjOiByZWZzLmM6MjE1NyByZWZzLmM6MjE5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcHJvY2VzcyAnJXMnIGFuZCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUiCiBtc2dzdHIgImthbiBpbnRlIGhhbnRlcmEgXCIlc1wiIG9jaCBcIiVzXCIgc2FtdGlkaWd0IgogCi0jOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjI4CisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgcmVmZXJlbmNlICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIHRhIGJvcnQgcmVmZXJlbnNlbiAlcyIKIAotIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI0MiByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTUzMgotIzogcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NDIKKyM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDcgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NDEKKyM6IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgcmVmZXJlbmNlICVzOiAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSB0YSBib3J0IHJlZmVyZW5zZW4gJXM6ICVzIgogCi0jOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjQ1IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQ1CisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjUwIHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgcmVmZXJlbmNlczogJXMiCiBtc2dzdHIgImt1bmRlIGludGUgdGEgYm9ydCByZWZlcmVuc2VyOiAlcyIKQEAgLTM5NzksMzQ5ICs1NzgzLDQ4MyBAQAogbXNnaWQgImludmFsaWQgcmVmc3BlYyAnJXMnIgogbXNnc3RyICJmZWxha3RpZyByZWZlcmVuc3NwZWNpZmlrYXRpb246IFwiJXNcIiIKIAotIzogcmVmLWZpbHRlci5jOjM5IHd0LXN0YXR1cy5jOjE4NTUKKyM6IHJlZi1maWx0ZXIuYzo0MiB3dC1zdGF0dXMuYzoxOTM4CiBtc2dpZCAiZ29uZSIKIG1zZ3N0ciAiZsO2cnN2dW5uZW4iCiAKLSM6IHJlZi1maWx0ZXIuYzo0MAorIzogcmVmLWZpbHRlci5jOjQzCiAjLCBjLWZvcm1hdAogbXNnaWQgImFoZWFkICVkIgogbXNnc3RyICJmw7ZyZSAlZCIKIAotIzogcmVmLWZpbHRlci5jOjQxCisjOiByZWYtZmlsdGVyLmM6NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmVoaW5kICVkIgogbXNnc3RyICJiYWtvbSAlZCIKIAotIzogcmVmLWZpbHRlci5jOjQyCisjOiByZWYtZmlsdGVyLmM6NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWhlYWQgJWQsIGJlaGluZCAlZCIKIG1zZ3N0ciAiZsO2cmUgJWQsIGJha29tICVkIgogCi0jOiByZWYtZmlsdGVyLmM6MTM4CisjOiByZWYtZmlsdGVyLmM6MTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIGZvcm1hdDogJSUoY29sb3I6PGNvbG9yPikiCiBtc2dzdHIgImbDtnJ2w6RudGF0IGZvcm1hdDogJSUoY29sb3I6PGNvbG9yPikiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDAKKyM6IHJlZi1maWx0ZXIuYzoxNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIGNvbG9yOiAlJShjb2xvcjolcykiCiBtc2dzdHIgIm9rw6RuZCBmw6RyZzogJSUoY29sb3I6JXMpIgogCi0jOiByZWYtZmlsdGVyLmM6MTYyCisjOiByZWYtZmlsdGVyLmM6MTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludGVnZXIgdmFsdWUgZXhwZWN0ZWQgcmVmbmFtZTpsc3RyaXA9JXMiCiBtc2dzdHIgIkhlbHRhbHN2w6RyZGUgZsO2cnbDpG50YWRlcyByZWZuYW1lOmxzdHJpcD0lcyIKIAotIzogcmVmLWZpbHRlci5jOjE2NgorIzogcmVmLWZpbHRlci5jOjE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6cnN0cmlwPSVzIgogbXNnc3RyICJIZWx0YWxzdsOkcmRlIGbDtnJ2w6RudGFkZXMgcmVmbmFtZTpyc3RyaXA9JXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNjgKKyM6IHJlZi1maWx0ZXIuYzoxOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKCVzKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgIm9rw6RudCAlJSglcyktYXJndW1lbnQ6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MjIzCisjOiByZWYtZmlsdGVyLmM6MjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiUlKG9iamVjdHR5cGUpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgogbXNnc3RyICIlJShvYmplY3R0eXBlKSB0YXIgaW50ZSBhcmd1bWVudCIKIAotIzogcmVmLWZpbHRlci5jOjIzNQorIzogcmVmLWZpbHRlci5jOjI3MgogIywgYy1mb3JtYXQKLW1zZ2lkICIlJShvYmplY3RzaXplKSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKLW1zZ3N0ciAiJSUob2JqZWN0c2l6ZSkgdGFyIGludGUgYXJndW1lbnQiCittc2dpZCAidW5yZWNvZ25pemVkICUlKG9iamVjdHNpemUpIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAib2vDpG50ICUlKG9iamVjdHNpemUpLWFyZ3VtZW50OiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjI0NworIzogcmVmLWZpbHRlci5jOjI4MAorIywgYy1mb3JtYXQKK21zZ2lkICIlJShkZWx0YWJhc2UpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnc3RyICIlJShkZWx0YWJhc2UpIHRhciBpbnRlIGFyZ3VtZW50IgorCisjOiByZWYtZmlsdGVyLmM6MjkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiUlKGJvZHkpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgogbXNnc3RyICIlJShib2R5KSB0YXIgaW50ZSBhcmd1bWVudCIKIAotIzogcmVmLWZpbHRlci5jOjI1NgorIzogcmVmLWZpbHRlci5jOjMwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlJShzdWJqZWN0KSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKIG1zZ3N0ciAiJSUoc3ViamVjdCkgdGFyIGludGUgYXJndW1lbnQiCiAKLSM6IHJlZi1maWx0ZXIuYzoyNzgKKyM6IHJlZi1maWx0ZXIuYzozMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biAlJSh0cmFpbGVycykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJva8OkbnQgJSUodHJhaWxlcnMpLWFyZ3VtZW50OiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjMwNworIzogcmVmLWZpbHRlci5jOjM1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJwb3NpdGl2ZSB2YWx1ZSBleHBlY3RlZCBjb250ZW50czpsaW5lcz0lcyIKIG1zZ3N0ciAicG9zaXRpdnQgdsOkcmRlIGbDtnJ2w6RudGF0IGNvbnRlbnRzOmxpbmVzPSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzA5CisjOiByZWYtZmlsdGVyLmM6MzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShjb250ZW50cykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJva8OkbnQgJSUoY29udGVudHMpLWFyZ3VtZW50OiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjMyNAorIzogcmVmLWZpbHRlci5jOjM2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJwb3NpdGl2ZSB2YWx1ZSBleHBlY3RlZCBvYmplY3RuYW1lOnNob3J0PSVzIgogbXNnc3RyICJwb3NpdGl2dCB2w6RyZGUgZsO2cnbDpG50YXQgb2JqZWN0bmFtZTpzaG9ydD0lcyIKIAotIzogcmVmLWZpbHRlci5jOjMyOAorIzogcmVmLWZpbHRlci5jOjM3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUob2JqZWN0bmFtZSkgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJva8OkbnQgJSUob2JqZWN0bmFtZSktYXJndW1lbnQ6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzU4CisjOiByZWYtZmlsdGVyLmM6NDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIGZvcm1hdDogJSUoYWxpZ246PHdpZHRoPiw8cG9zaXRpb24+KSIKIG1zZ3N0ciAiZsO2cnbDpG50YXQgZm9ybWF0OiAlJShhbGlnbjo8YnJlZGQ+LDxwb3NpdGlvbj4pIgogCi0jOiByZWYtZmlsdGVyLmM6MzcwCisjOiByZWYtZmlsdGVyLmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBwb3NpdGlvbjolcyIKIG1zZ3N0ciAib2vDpG5kIHBvc2l0aW9uOiVzIgogCi0jOiByZWYtZmlsdGVyLmM6Mzc3CisjOiByZWYtZmlsdGVyLmM6NDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCB3aWR0aDolcyIKIG1zZ3N0ciAib2vDpG5kIGJyZWRkOiVzIgogCi0jOiByZWYtZmlsdGVyLmM6Mzg2CisjOiByZWYtZmlsdGVyLmM6NDMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShhbGlnbikgYXJndW1lbnQ6ICVzIgogbXNnc3RyICJva8OkbnQgJSUoYWxpZ24pLWFyZ3VtZW50OiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjM5NAorIzogcmVmLWZpbHRlci5jOjQzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJwb3NpdGl2ZSB3aWR0aCBleHBlY3RlZCB3aXRoIHRoZSAlJShhbGlnbikgYXRvbSIKIG1zZ3N0ciAicG9zaXRpdiBicmVkZCBmw7ZydsOkbnRhZCBtZWQgYXRvbWVuICUlKGFsaWduKSIKIAotIzogcmVmLWZpbHRlci5jOjQxMgorIzogcmVmLWZpbHRlci5jOjQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUoaWYpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAib2vDpG50ICUlKGlmKS1hcmd1bWVudDogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MDgKKyM6IHJlZi1maWx0ZXIuYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIGZpZWxkIG5hbWU6ICUuKnMiCiBtc2dzdHIgImZlbGZvcm1hdCBmw6RsdG5hbW46ICUuKnMiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MzUKKyM6IHJlZi1maWx0ZXIuYzo1ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBmaWVsZCBuYW1lOiAlLipzIgogbXNnc3RyICJva8OkbnQgZsOkbHRuYW1uOiAlLipzIgogCi0jOiByZWYtZmlsdGVyLmM6NTM5CisjOiByZWYtZmlsdGVyLmM6NTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJub3QgYSBnaXQgcmVwb3NpdG9yeSwgYnV0IHRoZSBmaWVsZCAnJS4qcycgcmVxdWlyZXMgYWNjZXNzIHRvIG9iamVjdCBkYXRhIgogbXNnc3RyICIiCiAiaW50ZSBldHQgZ2l0LWFya2l2LCBtZW4gZsOkbHRldCBcIiUuKnNcIiBrcsOkdmVyIHRpbGxnw6VuZyB0aWxsIG9iamVrdGRhdGEiCiAKLSM6IHJlZi1maWx0ZXIuYzo2NjMKKyM6IHJlZi1maWx0ZXIuYzo3MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShpZikgYXRvbSB1c2VkIHdpdGhvdXQgYSAlJSh0aGVuKSBhdG9tIgogbXNnc3RyICJmb3JtYXQ6IGF0b21lbiAlJShpZikgYW52w6RuZCB1dGFuIGVuICUlKHRoZW4pLWF0b20iCiAKLSM6IHJlZi1maWx0ZXIuYzo3MjYKKyM6IHJlZi1maWx0ZXIuYzo3NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgd2l0aG91dCBhbiAlJShpZikgYXRvbSIKIG1zZ3N0ciAiZm9ybWF0OiBhdG9tZW4gJSUodGhlbikgYW52w6RuZCB1dGFuIGVuICUlKGlmKS1hdG9tIgogCi0jOiByZWYtZmlsdGVyLmM6NzI4CisjOiByZWYtZmlsdGVyLmM6Nzc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgogbXNnc3RyICJmb3JtYXQ6IGF0b21lbiAlJSh0aGVuKSBhbnbDpG5kIG1lciDDpG4gZW4gZ8OlbmciCiAKLSM6IHJlZi1maWx0ZXIuYzo3MzAKKyM6IHJlZi1maWx0ZXIuYzo3ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgYWZ0ZXIgJSUoZWxzZSkiCiBtc2dzdHIgImZvcm1hdDogYXRvbWVuICUlKHRoZW4pIGFudsOkbmQgZWZ0ZXIgJSUoZWxzZSkiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NTgKKyM6IHJlZi1maWx0ZXIuYzo4MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgd2l0aG91dCBhbiAlJShpZikgYXRvbSIKIG1zZ3N0ciAiZm9ybWF0OiBhdG9tZW4gJSUoZWxzZSkgYW52w6RuZCB1dGFuIGVuICUlKGlmKS1hdG9tIgogCi0jOiByZWYtZmlsdGVyLmM6NzYwCisjOiByZWYtZmlsdGVyLmM6ODExCiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIHdpdGhvdXQgYSAlJSh0aGVuKSBhdG9tIgogbXNnc3RyICJmb3JtYXQ6IGF0b21lbiAlJShlbHNlKSBhbnbDpG5kIHV0YW4gZW4gJSUodGhlbiktYXRvbSIKIAotIzogcmVmLWZpbHRlci5jOjc2MgorIzogcmVmLWZpbHRlci5jOjgxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCBtb3JlIHRoYW4gb25jZSIKIG1zZ3N0ciAiZm9ybWF0OiBhdG9tZW4gJSUoZWxzZSkgYW52w6RuZCBtZXIgw6RuIGVuIGfDpW5nIgogCi0jOiByZWYtZmlsdGVyLmM6Nzc3CisjOiByZWYtZmlsdGVyLmM6ODI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZW5kKSBhdG9tIHVzZWQgd2l0aG91dCBjb3JyZXNwb25kaW5nIGF0b20iCiBtc2dzdHIgImZvcm1hdDogYXRvbWVuICUlKGVuZCkgYW52w6RuZCB1dGFuIG1vdHN2YXJhbmRlIGF0b20iCiAKLSM6IHJlZi1maWx0ZXIuYzo4MzQKKyM6IHJlZi1maWx0ZXIuYzo4ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIGZvcm1hdCBzdHJpbmcgJXMiCiBtc2dzdHIgImZlbGZvcm1hZCBmb3JtYXRzdHLDpG5nICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTQyNAorIzogcmVmLWZpbHRlci5jOjE0ODgKICMsIGMtZm9ybWF0Ci1tc2dpZCAiKG5vIGJyYW5jaCwgcmViYXNpbmcgJXMpIgotbXNnc3RyICIoaW5nZW4gZ3Jlbiwgb21iYXNlcmFyICVzKSIKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nICVzIgorbXNnc3RyICJpbmdlbiBncmVuLCBvbWJhc2VyYXIgJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDI3CisjOiByZWYtZmlsdGVyLmM6MTQ5MQogIywgYy1mb3JtYXQKLW1zZ2lkICIobm8gYnJhbmNoLCByZWJhc2luZyBkZXRhY2hlZCBIRUFEICVzKSIKLW1zZ3N0ciAiKGluZ2VuIGdyZW4sIG9tYmFzZXJhciBmcsOlbmtvcHBsYXQgSEVBRCAlcykiCittc2dpZCAibm8gYnJhbmNoLCByZWJhc2luZyBkZXRhY2hlZCBIRUFEICVzIgorbXNnc3RyICJpbmdlbiBncmVuLCBvbWJhc2VyYXIgZnLDpW5rb3BwbGF0IEhFQUQgJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDMwCisjOiByZWYtZmlsdGVyLmM6MTQ5NAogIywgYy1mb3JtYXQKLW1zZ2lkICIobm8gYnJhbmNoLCBiaXNlY3Qgc3RhcnRlZCBvbiAlcykiCi1tc2dzdHIgIihpbmdlbiBncmVuLCBcImJpc2VjdFwiIHN0YXJ0YWQgcMOlICVzKSIKK21zZ2lkICJubyBicmFuY2gsIGJpc2VjdCBzdGFydGVkIG9uICVzIgorbXNnc3RyICJpbmdlbiBncmVuLCBcImJpc2VjdFwiIHN0YXJ0YWQgcMOlICVzIgogCi0jLiBUUkFOU0xBVE9SUzogbWFrZSBzdXJlIHRoaXMgbWF0Y2hlcyAiSEVBRAotIy4gZGV0YWNoZWQgYXQgIiBpbiB3dC1zdGF0dXMuYwotIy4KLSM6IHJlZi1maWx0ZXIuYzoxNDM4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIihIRUFEIGRldGFjaGVkIGF0ICVzKSIKLW1zZ3N0ciAiKEhFQUQgZnLDpW5rb3BwbGF0IHZpZCAlcykiCisjOiByZWYtZmlsdGVyLmM6MTUwNAorbXNnaWQgIm5vIGJyYW5jaCIKK21zZ3N0ciAiaW5nZW4gZ3JlbiIKIAotIy4gVFJBTlNMQVRPUlM6IG1ha2Ugc3VyZSB0aGlzIG1hdGNoZXMgIkhFQUQKLSMuIGRldGFjaGVkIGZyb20gIiBpbiB3dC1zdGF0dXMuYwotIy4KLSM6IHJlZi1maWx0ZXIuYzoxNDQ1Ci0jLCBjLWZvcm1hdAotbXNnaWQgIihIRUFEIGRldGFjaGVkIGZyb20gJXMpIgotbXNnc3RyICIoSEVBRCBmcsOlbmtvcHBsYXQgZnLDpW4gJXMpIgotCi0jOiByZWYtZmlsdGVyLmM6MTQ0OQotbXNnaWQgIihubyBicmFuY2gpIgotbXNnc3RyICIoaW5nZW4gZ3JlbikiCi0KLSM6IHJlZi1maWx0ZXIuYzoxNDgzIHJlZi1maWx0ZXIuYzoxNjM4CisjOiByZWYtZmlsdGVyLmM6MTU0MCByZWYtZmlsdGVyLmM6MTc0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIG9iamVjdCAlcyBmb3IgJXMiCiBtc2dzdHIgIm9iamVrdGV0ICVzIHNha25hcyBmw7ZyICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTQ5MQorIzogcmVmLWZpbHRlci5jOjE1NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFyc2Vfb2JqZWN0X2J1ZmZlciBmYWlsZWQgb24gJXMgZm9yICVzIgogbXNnc3RyICJwYXJzZV9vYmplY3RfYnVmZmVyIG1pc3NseWNrYWRlcyBww6UgJXMgZsO2ciAlcyIKIAotIzogcmVmLWZpbHRlci5jOjE4NTcKKyM6IHJlZi1maWx0ZXIuYzoyMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgYXQgJyVzJyIKIG1zZ3N0ciAiZmVsZm9ybWF0IG9iamVrdCB2aWQgXCIlc1wiIgogCi0jOiByZWYtZmlsdGVyLmM6MTk0NgorIzogcmVmLWZpbHRlci5jOjIwOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgcmVmIHdpdGggYnJva2VuIG5hbWUgJXMiCiBtc2dzdHIgImlnbm9yZXJhciByZWZlcmVucyBtZWQgdHJhc2lndCBuYW1uICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MjIzMgorIzogcmVmLWZpbHRlci5jOjIzODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbmQpIGF0b20gbWlzc2luZyIKIG1zZ3N0ciAiZm9ybWF0OiBhdG9tZW4gJSUoZW5kKSBzYWtuYXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMzM4CisjOiByZWYtZmlsdGVyLmM6MjQ4OQorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW1lcmdlZCIKK21zZ3N0ciAiZmxhZ2dhbiBcIiVzXCIgw6RyIGlua29tcGF0aWJlbCBtZWQgLS1tZXJnZWQiCisKKyM6IHJlZi1maWx0ZXIuYzoyNDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8tbWVyZ2VkIgorbXNnc3RyICJmbGFnZ2FuIFwiJXNcIiDDpHIgaW5rb21wYXRpYmVsIG1lZCAtLW5vLW1lcmdlZCIKKworIzogcmVmLWZpbHRlci5jOjI1MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG9iamVjdCBuYW1lICVzIgogbXNnc3RyICJmZWxmb3JtYXQgb2JqZWt0bmFtbiAlcyIKIAotIzogcmVtb3RlLmM6NjA3CisjOiByZWYtZmlsdGVyLmM6MjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBtdXN0IHBvaW50IHRvIGEgY29tbWl0IgorbXNnc3RyICJmbGFnZ2FuIFwiJXNcIiBtw6VzdGUgcGVrYSBww6UgZW4gaW5jaGVja25pbmciCisKKyM6IHJlbW90ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25maWcgcmVtb3RlIHNob3J0aGFuZCBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIgorbXNnc3RyICJrb25maWd1cmVyYWQga29ydGZvcm0gZsO2ciBmasOkcnIga2FuIGludGUgYsO2cmphIG1lZCBcIi9cIjogJXMiCisKKyM6IHJlbW90ZS5jOjQxNAorbXNnaWQgIm1vcmUgdGhhbiBvbmUgcmVjZWl2ZXBhY2sgZ2l2ZW4sIHVzaW5nIHRoZSBmaXJzdCIKK21zZ3N0ciAibWVyIMOkbiBlbiByZWNlaXZlcGFjayBhbmdhdnMsIGFudsOkbmRlciBkZW4gZsO2cnN0YSIKKworIzogcmVtb3RlLmM6NDIyCittc2dpZCAibW9yZSB0aGFuIG9uZSB1cGxvYWRwYWNrIGdpdmVuLCB1c2luZyB0aGUgZmlyc3QiCittc2dzdHIgIm1lciDDpG4gZW4gdXBsb2FkcGFjayBhbmdhdnMsIGFudsOkbmRlciBkZW4gZsO2cnN0YSIKKworIzogcmVtb3RlLmM6NjEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBmZXRjaCBib3RoICVzIGFuZCAlcyB0byAlcyIKIG1zZ3N0ciAiS2FuIGludGUgaMOkbXRhIGLDpWRlICVzIG9jaCAlcyB0aWxsICVzIgogCi0jOiByZW1vdGUuYzo2MTEKKyM6IHJlbW90ZS5jOjYxNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB1c3VhbGx5IHRyYWNrcyAlcywgbm90ICVzIgogbXNnc3RyICIlcyBzcMOlcmFyIHZhbmxpZ3R2aXMgJXMsIGludGUgJXMiCiAKLSM6IHJlbW90ZS5jOjYxNQorIzogcmVtb3RlLmM6NjIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHRyYWNrcyBib3RoICVzIGFuZCAlcyIKIG1zZ3N0ciAiJXMgc3DDpXJhciBiw6VkZSAlcyBvY2ggJXMiCiAKLSM6IHJlbW90ZS5jOjYyMwotbXNnaWQgIkludGVybmFsIGVycm9yIgotbXNnc3RyICJJbnRlcm50IGZlbCIKKyM6IHJlbW90ZS5jOjY4OAorIywgYy1mb3JtYXQKK21zZ2lkICJrZXkgJyVzJyBvZiBwYXR0ZXJuIGhhZCBubyAnKiciCittc2dzdHIgIm55Y2tlbG4gXCIlc1wiIGkgbcO2bnN0cmV0IGlubmVow6VsbGVyIGluZ2VuIFwiKlwiIgogCi0jOiByZW1vdGUuYzoxNTY5IHJlbW90ZS5jOjE2NzAKKyM6IHJlbW90ZS5jOjY5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSAnJXMnIG9mIHBhdHRlcm4gaGFzIG5vICcqJyIKK21zZ3N0ciAidsOkcmRldCBcIiVzXCIgaSBtw7Zuc3RyZXQgaW5uZWjDpWxsZXIgaW5nZW4gXCIqXCIiCisKKyM6IHJlbW90ZS5jOjEwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgZG9lcyBub3QgbWF0Y2ggYW55IgorbXNnc3RyICJrw6RsbC1yZWZlcmVuc3NwZWNpZmlrYXRpb25lbiAlcyBtb3RzdmFyYXIgaW5nZW4iCisKKyM6IHJlbW90ZS5jOjEwMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgbWF0Y2hlcyBtb3JlIHRoYW4gb25lIgorbXNnc3RyICJrw6RsbC1yZWZlcmVuc3NwZWNpZmlrYXRpb25lbiAlcyBtb3RzdmFyYXIgbWVyIMOkbiBlbiIKKworIy4gVFJBTlNMQVRPUlM6ICJtYXRjaGVzICclcyclIiBpcyB0aGUgPGRzdD4gcGFydCBvZiAiZ2l0IHB1c2gKKyMuIDxyZW1vdGU+IDxzcmM+Ojxkc3Q+IiBwdXNoLCBhbmQgImJlaW5nIHB1c2hlZCAoJyVzJykiIGlzCisjLiB0aGUgPHNyYz4uCisjLgorIzogcmVtb3RlLmM6MTAyNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGRlc3RpbmF0aW9uIHlvdSBwcm92aWRlZCBpcyBub3QgYSBmdWxsIHJlZm5hbWUgKGkuZS4sXG4iCisic3RhcnRpbmcgd2l0aCBcInJlZnMvXCIpLiBXZSB0cmllZCB0byBndWVzcyB3aGF0IHlvdSBtZWFudCBieTpcbiIKKyJcbiIKKyItIExvb2tpbmcgZm9yIGEgcmVmIHRoYXQgbWF0Y2hlcyAnJXMnIG9uIHRoZSByZW1vdGUgc2lkZS5cbiIKKyItIENoZWNraW5nIGlmIHRoZSA8c3JjPiBiZWluZyBwdXNoZWQgKCclcycpXG4iCisiICBpcyBhIHJlZiBpbiBcInJlZnMve2hlYWRzLHRhZ3N9L1wiLiBJZiBzbyB3ZSBhZGQgYSBjb3JyZXNwb25kaW5nXG4iCisiICByZWZzL3toZWFkcyx0YWdzfS8gcHJlZml4IG9uIHRoZSByZW1vdGUgc2lkZS5cbiIKKyJcbiIKKyJOZWl0aGVyIHdvcmtlZCwgc28gd2UgZ2F2ZSB1cC4gWW91IG11c3QgZnVsbHkgcXVhbGlmeSB0aGUgcmVmLiIKK21zZ3N0ciAiIgorIk3DpWxldCBkdSBhbmdhdiDDpHIgaW50ZSBldHQga29tcGxldHQgcmVmZXJlbnNhbW4gKGR2cy4sXG4iCisic3RhcnRhciBtZWQgXCJyZWZzL1wiKS4gVmkgZsO2cnPDtmt0ZSBnaXNzYSB2YWQgZHUgbWVuYWRlIGdlbm9tIGF0dDpcbiIKKyJcbiIKKyItIFNlIGVmdGVyIGVuIHJlZmVyZW5zIHNvbSBtb3RzdmFyYXIgXCIlc1wiIHDDpSBmasOkcnJzaWRhbi5cbiIKKyItIFNlIG9tIDxrw6RsbGFuPiBzb20gc8OkbmRzIChcIiVzXCIpXG4iCisiICDDpHIgZW4gcmVmZXJlbnMgaSBcInJlZnMve2hlYWRzLHRhZ3N9L1wiLiBPbSBzw6UgbMOkZ2dlciB2aSB0aWxsXG4iCisiICBtb3RzdmFyYW5kZSByZWZzL3toZWFkcyx0YWdzfS8tcHJlZml4IHDDpSBmasOkcnJzaWRhbi5cbiIKKyJcbiIKKyJJbmdldCBhdiBkZW0gZnVuZ2VyYWRlLCBzw6UgdmkgZ2F2IHVwcC4gQW5nZSBmdWxsc3TDpG5kaWcgcmVmZXJlbnMuIgorCisjOiByZW1vdGUuYzoxMDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIGNvbW1pdCBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIGNyZWF0ZSBhIG5ldyBicmFuY2ggYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL2hlYWRzLyVzJz8iCittc2dzdHIgIiIKKyI8S8OkbGxhPi1kZWxlbiBhdiByZWYuc3BlYy1lbiDDpHIgZXR0IGluY2hlY2tuaW5nc29iamVrdC5cbiIKKyJWYXIgZGV0IG1lbmluZ2VuIGF0dCBza2FwYSBlbiBueSBncmVuIGdlbm9tIGF0dCBzw6RuZGFcbiIKKyJ0aWxsIFwiJXM6cmVmcy9oZWFkcy8lc1wiPyIKKworIzogcmVtb3RlLmM6MTA0OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSB0YWcgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byBjcmVhdGUgYSBuZXcgdGFnIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKyI8S8OkbGxhPi1kZWxlbiBhdiByZWYuc3BlYy1lbiDDpHIgZXR0IHRhZ2dvYmpla3QuXG4iCisiVmFyIGRldCBtZW5pbmdlbiBhdHQgc2thcGEgZW4gbnkgdGFnZyBnZW5vbSBhdHQgc8OkbmRhXG4iCisidGlsbCBcIiVzOnJlZnMvdGFncy8lc1wiPyIKKworIzogcmVtb3RlLmM6MTA1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSB0cmVlIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gdGFnIGEgbmV3IHRyZWUgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorIjxLw6RsbGE+LWRlbGVuIGF2IHJlZi5zcGVjLWVuIMOkciBldHQgdHLDpGRvYmpla3QuXG4iCisiVmFyIGRldCBtZW5pbmdlbiBhdHQgdGFnZ2EgZXR0IG55dHQgdHLDpGQgZ2Vub20gYXR0IHPDpG5kYVxuIgorInRpbGwgXCIlczpyZWZzL3RhZ3MvJXNcIj8iCisKKyM6IHJlbW90ZS5jOjEwNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgYmxvYiBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHRhZyBhIG5ldyBibG9iIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKyI8S8OkbGxhPi1kZWxlbiBhdiByZWYuc3BlYy1lbiDDpHIgZXR0IGJsb2JvYmpla3QuXG4iCisiVmFyIGRldCBtZW5pbmdlbiBhdHQgdGFnZ2EgZW4gbnkgYmxvYiBnZW5vbSBhdHQgc8OkbmRhXG4iCisidGlsbCBcIiVzOnJlZnMvdGFncy8lc1wiPyIKKworIzogcmVtb3RlLmM6MTA5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYnJhbmNoIgorbXNnc3RyICIlcyBrYW4gaW50ZSBzbMOlcyB1cHAgdGlsbCBlbiBncmVuIgorCisjOiByZW1vdGUuYzoxMTA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgJyVzJzogcmVtb3RlIHJlZiBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAia2FuIGludGUgdGEgYm9ydCBcIiVzXCI6IGZqw6RycmVmZXJlbnNlbiBmaW5ucyBpbnRlIgorCisjOiByZW1vdGUuYzoxMTE4CisjLCBjLWZvcm1hdAorbXNnaWQgImRzdCByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAiZmrDpHJyLXJlZmVyZW5zc3BlY2lmaWthdGlvbmVuIFwiJXNcIiBtb3RzdmFyYXIgbWVyIMOkbiBlbiIKKworIzogcmVtb3RlLmM6MTEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkc3QgcmVmICVzIHJlY2VpdmVzIGZyb20gbW9yZSB0aGFuIG9uZSBzcmMiCittc2dzdHIgImZqw6Ryci1yZWZlcmVuc2VuIFwiJXNcIiBow6RtdGFyIGZyw6VuIG1lciDDpG4gZW4ga8OkbGxhIgorCisjOiByZW1vdGUuYzoxNjI4IHJlbW90ZS5jOjE3MjkKIG1zZ2lkICJIRUFEIGRvZXMgbm90IHBvaW50IHRvIGEgYnJhbmNoIgogbXNnc3RyICJIRUFEIHBla2FyIGludGUgcMOlIGVuIGdyZW4iCiAKLSM6IHJlbW90ZS5jOjE1NzgKKyM6IHJlbW90ZS5jOjE2MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBicmFuY2g6ICclcyciCiBtc2dzdHIgIm9rw6RuZCBncmVuOiBcIiVzXCIiCiAKLSM6IHJlbW90ZS5jOjE1ODEKKyM6IHJlbW90ZS5jOjE2NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gdXBzdHJlYW0gY29uZmlndXJlZCBmb3IgYnJhbmNoICclcyciCiBtc2dzdHIgImluZ2VuIHN0YW5kYXJkdXBwc3Ryw7ZtIGFuZ2l2ZW4gZsO2ciBncmVuZW4gXCIlc1wiIgogCi0jOiByZW1vdGUuYzoxNTg3CisjOiByZW1vdGUuYzoxNjQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVwc3RyZWFtIGJyYW5jaCAnJXMnIG5vdCBzdG9yZWQgYXMgYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgogbXNnc3RyICJ1cHBzdHLDtm1zZ3JlbmVuIFwiJXNcIiDDpHIgaW50ZSBsYWdyYWQgc29tIGVuIGZqw6RycnNww6VyYW5kZSBncmVuIgogCi0jOiByZW1vdGUuYzoxNjAyCisjOiByZW1vdGUuYzoxNjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgInB1c2ggZGVzdGluYXRpb24gJyVzJyBvbiByZW1vdGUgJyVzJyBoYXMgbm8gbG9jYWwgdHJhY2tpbmcgYnJhbmNoIgogbXNnc3RyICJwdXNoLW3DpWxldCBcIiVzXCIgcMOlIGZqw6RycmVuIFwiJXNcIiBoYXIgaW5nZW4gbG9rYWx0IHNww6VyYW5kZSBncmVuIgogCi0jOiByZW1vdGUuYzoxNjE0CisjOiByZW1vdGUuYzoxNjczCiAjLCBjLWZvcm1hdAogbXNnaWQgImJyYW5jaCAnJXMnIGhhcyBubyByZW1vdGUgZm9yIHB1c2hpbmciCiBtc2dzdHIgImdyZW5lbiBcIiVzXCIgaGFyIGluZ2VuIGZqw6RyciBmw7ZyIFwicHVzaFwiIgogCi0jOiByZW1vdGUuYzoxNjI0CisjOiByZW1vdGUuYzoxNjgzCiAjLCBjLWZvcm1hdAogbXNnaWQgInB1c2ggcmVmc3BlY3MgZm9yICclcycgZG8gbm90IGluY2x1ZGUgJyVzJyIKIG1zZ3N0ciAiXCJwdXNoXCItcmVmZXJlbnNzcGVjaWZpa2F0aW9uIGbDtnIgXCIlc1wiIGlubmVow6VsbGVyIGludGUgXCIlc1wiIgogCi0jOiByZW1vdGUuYzoxNjM3CisjOiByZW1vdGUuYzoxNjk2CiBtc2dpZCAicHVzaCBoYXMgbm8gZGVzdGluYXRpb24gKHB1c2guZGVmYXVsdCBpcyAnbm90aGluZycpIgogbXNnc3RyICJcInB1c2hcIiBoYXIgaW5nZXQgbcOlbCAocHVzaC5kZWZhdWx0IMOkciBcImluZ2VudGluZ1wiKSIKIAotIzogcmVtb3RlLmM6MTY1OQorIzogcmVtb3RlLmM6MTcxOAogbXNnaWQgImNhbm5vdCByZXNvbHZlICdzaW1wbGUnIHB1c2ggdG8gYSBzaW5nbGUgZGVzdGluYXRpb24iCiBtc2dzdHIgIlwiZW5rZWwgcHVzaFwiIG1vdHN2YXJhciBmbGVyYSBvbGlrYSBtw6VsIgogCi0jOiByZW1vdGUuYzoxOTM1CisjOiByZW1vdGUuYzoxODQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiAlcyIKK21zZ3N0ciAiS3VuZGUgaW50ZSBoaXR0YSBmasOkcnItcmVmZXJlbnNlbiAlcyIKKworIzogcmVtb3RlLmM6MTg1NworIywgYy1mb3JtYXQKK21zZ2lkICIqIElnbm9yaW5nIGZ1bm55IHJlZiAnJXMnIGxvY2FsbHkiCittc2dzdHIgIiogSWdub3JlcmFyIG3DpHJrbGlnIHJlZmVyZW5zIFwiJXNcIiBsb2thbHQiCisKKyM6IHJlbW90ZS5jOjIwMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgYmFzZWQgb24gJyVzJywgYnV0IHRoZSB1cHN0cmVhbSBpcyBnb25lLlxuIgogbXNnc3RyICJEaW4gZ3JlbiDDpHIgYmFzZXJhZCBww6UgXCIlc1wiLCBtZW4gZGVuIGhhciBmw7Zyc3Z1bm5pdCB1cHBzdHLDtm1zLlxuIgogCi0jOiByZW1vdGUuYzoxOTM5CisjOiByZW1vdGUuYzoyMDI0CiBtc2dpZCAiICAodXNlIFwiZ2l0IGJyYW5jaCAtLXVuc2V0LXVwc3RyZWFtXCIgdG8gZml4dXApXG4iCiBtc2dzdHIgIiAgKGFudsOkbmQgXCJnaXQgYnJhbmNoIC0tdW5zZXQtdXBzdHJlYW1cIiBmw7ZyIGF0dCByw6R0dGEpXG4iCiAKLSM6IHJlbW90ZS5jOjE5NDIKKyM6IHJlbW90ZS5jOjIwMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgdXAgdG8gZGF0ZSB3aXRoICclcycuXG4iCiBtc2dzdHIgIkRpbiBncmVuIMOkciDDoCBqb3VyIG1lZCBcIiVzXCIuXG4iCiAKLSM6IHJlbW90ZS5jOjE5NDYKKyM6IHJlbW90ZS5jOjIwMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggYW5kICclcycgcmVmZXIgdG8gZGlmZmVyZW50IGNvbW1pdHMuXG4iCiBtc2dzdHIgIkRpbiBncmVuIG9jaCBcIiVzXCIgcGVrYXIgcMOlIG9saWthIGluY2hlY2tuaW5nYXIuXG4iCiAKLSM6IHJlbW90ZS5jOjE5NDkKKyM6IHJlbW90ZS5jOjIwMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAodXNlIFwiJXNcIiBmb3IgZGV0YWlscylcbiIKIG1zZ3N0ciAiICAoYW52w6RuZCBcIiVzXCIgZsO2ciBkZXRhbGplcilcbiIKIAotIzogcmVtb3RlLmM6MTk1MworIzogcmVtb3RlLmM6MjAzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBpcyBhaGVhZCBvZiAnJXMnIGJ5ICVkIGNvbW1pdC5cbiIKIG1zZ2lkX3BsdXJhbCAiWW91ciBicmFuY2ggaXMgYWhlYWQgb2YgJyVzJyBieSAlZCBjb21taXRzLlxuIgogbXNnc3RyWzBdICJEaW4gZ3JlbiBsaWdnZXIgZsO2cmUgXCIlc1wiIG1lZCAlZCBpbmNoZWNrbmluZy5cbiIKIG1zZ3N0clsxXSAiRGluIGdyZW4gbGlnZ2VyIGbDtnJlIFwiJXNcIiBtZWQgJWQgaW5jaGVja25pbmdhci5cbiIKIAotIzogcmVtb3RlLmM6MTk1OQorIzogcmVtb3RlLmM6MjA0NAogbXNnaWQgIiAgKHVzZSBcImdpdCBwdXNoXCIgdG8gcHVibGlzaCB5b3VyIGxvY2FsIGNvbW1pdHMpXG4iCiBtc2dzdHIgIiAgKGFudsOkbmQgXCJnaXQgcHVzaFwiIGbDtnIgYXR0IHB1YmxpY2VyYSBkaW5hIGxva2FsYSBpbmNoZWNrbmluZ2FyKVxuIgogCi0jOiByZW1vdGUuYzoxOTYyCisjOiByZW1vdGUuYzoyMDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIGJlaGluZCAnJXMnIGJ5ICVkIGNvbW1pdCwgYW5kIGNhbiBiZSBmYXN0LWZvcndhcmRlZC5cbiIKIG1zZ2lkX3BsdXJhbCAiIgpAQCAtNDMzMSwxMSArNjI2OSwxMSBAQAogbXNnc3RyWzFdICIiCiAiRGluIGdyZW4gbGlnZ2VyIGVmdGVyIFwiJXNcIiBtZWQgJWQgaW5jaGVja25pbmdhciwgb2NoIGthbiBzbmFiYnNwb2xhcy5cbiIKIAotIzogcmVtb3RlLmM6MTk3MAorIzogcmVtb3RlLmM6MjA1NQogbXNnaWQgIiAgKHVzZSBcImdpdCBwdWxsXCIgdG8gdXBkYXRlIHlvdXIgbG9jYWwgYnJhbmNoKVxuIgogbXNnc3RyICIgIChhbnbDpG5kIFwiZ2l0IHB1bGxcIiBmw7ZyIGF0dCB1cHBkYXRlcmEgZGluIGxva2FsYSBncmVuKVxuIgogCi0jOiByZW1vdGUuYzoxOTczCisjOiByZW1vdGUuYzoyMDU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGJyYW5jaCBhbmQgJyVzJyBoYXZlIGRpdmVyZ2VkLFxuIgpAQCAtNDM1MCwxMCArNjI4OCwxNSBAQAogIkRpbiBncmVuIG9jaCBcIiVzXCIgaGFyIGRpdmVyZ2VyYXQsXG4iCiAib2NoIGhhciAlZCByZXNwZWt0aXZlICVkIG9saWthIGluY2hlY2tuaW5nYXIuXG4iCiAKLSM6IHJlbW90ZS5jOjE5ODMKKyM6IHJlbW90ZS5jOjIwNjgKIG1zZ2lkICIgICh1c2UgXCJnaXQgcHVsbFwiIHRvIG1lcmdlIHRoZSByZW1vdGUgYnJhbmNoIGludG8geW91cnMpXG4iCiBtc2dzdHIgIiAgKGFudsOkbmQgXCJnaXQgcHVsbFwiIGbDtnIgYXR0IHNsw6UgaWhvcCBmasOkcnJncmVuZW4gbWVkIGRpbiBlZ2VuKVxuIgogCisjOiByZW1vdGUuYzoyMjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBwYXJzZSBleHBlY3RlZCBvYmplY3QgbmFtZSAnJXMnIgorbXNnc3RyICJrYW4gaW50ZSB0b2xrYSBmw7ZydsOkbnRhdCBvYmpla3RuYW1uIFwiJXNcIiIKKwogIzogcmVwbGFjZS1vYmplY3QuYzoyMQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcmVwbGFjZSByZWYgbmFtZTogJXMiCkBAIC00MzY0LDcgKzYzMDcsNyBAQAogbXNnaWQgImR1cGxpY2F0ZSByZXBsYWNlIHJlZjogJXMiCiBtc2dzdHIgImR1cGxpY2VyYXQgZXJzw6R0dG5pbmdzcmVmZXJlbnNuYW1uOiAlcyIKIAotIzogcmVwbGFjZS1vYmplY3QuYzo3MworIzogcmVwbGFjZS1vYmplY3QuYzo4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBsYWNlIGRlcHRoIHRvbyBoaWdoIGZvciBvYmplY3QgJXMiCiBtc2dzdHIgImVyc8OkdHRuaW5nc2RqdXBldCBmw7ZyIGjDtmd0IGbDtnIgb2JqZWt0ZXQgJXMiCkBAIC00Mzc3LDExICs2MzIwLDYgQEAKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcmVyZXJlIHJlY29yZCIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgcmVyZXJlLXBvc3QiCiAKLSM6IHJlcmVyZS5jOjQ4NSByZXJlcmUuYzo2OTIgc2VxdWVuY2VyLmM6MzEzNiBzZXF1ZW5jZXIuYzozMTYyCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnIgotbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSBcIiVzXCIiCi0KICM6IHJlcmVyZS5jOjQ5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGVyZSB3ZXJlIGVycm9ycyB3aGlsZSB3cml0aW5nICclcycgKCVzKSIKQEAgLTQ0MzIsOCArNjM3MCw4IEBACiBtc2dpZCAiUmVjb3JkZWQgcHJlaW1hZ2UgZm9yICclcyciCiBtc2dzdHIgIlNwYXJhZGUgZsO2cmhhbmRzYmlsZCBmw7ZyIFwiJXNcIiIKIAotIzogcmVyZXJlLmM6ODgxIHN1Ym1vZHVsZS5jOjE3NjMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTMKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDIzCisjOiByZXJlcmUuYzo4ODEgc3VibW9kdWxlLmM6MjA3OCBidWlsdGluL2xvZy5jOjE4NzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDU0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgc2thcGEga2F0YWxvZ2VuIFwiJXNcIiIKQEAgLTQ0NjcsMjkgKzY0MDUsMzMgQEAKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiByci1jYWNoZSBkaXJlY3RvcnkiCiBtc2dzdHIgImthbiBpbnRlIHVwcGRhdGVyYSBrYXRhbG9nZW4gcnItY2FjaGUiCiAKLSM6IHJldmlzaW9uLmM6MjMyNAorIzogcmV2aXNpb24uYzoyNDk3CiBtc2dpZCAieW91ciBjdXJyZW50IGJyYW5jaCBhcHBlYXJzIHRvIGJlIGJyb2tlbiIKIG1zZ3N0ciAiZGluIG51dmFyYW5kZSBncmVuIHZlcmthciB2YXJhIHRyYXNpZyIKIAotIzogcmV2aXNpb24uYzoyMzI3CisjOiByZXZpc2lvbi5jOjI1MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAieW91ciBjdXJyZW50IGJyYW5jaCAnJXMnIGRvZXMgbm90IGhhdmUgYW55IGNvbW1pdHMgeWV0IgogbXNnc3RyICJkaW4gbnV2YXJhbmRlIGdyZW4gXCIlc1wiIGlubmVow6VsbGVyIMOkbm51IGludGUgbsOlZ3JhIGluY2hlY2tuaW5nYXIiCiAKLSM6IHJldmlzaW9uLmM6MjUyMworIzogcmV2aXNpb24uYzoyNzA4CiBtc2dpZCAiLS1maXJzdC1wYXJlbnQgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1iaXNlY3QiCiBtc2dzdHIgIi0tZmlyc3QtcGFyZW50IMOkciBpbmtvbXBhdGliZWx0IG1lZCAtLWJpc2VjdCIKIAotIzogcnVuLWNvbW1hbmQuYzo3NDAKKyM6IHJldmlzaW9uLmM6MjcxMgorbXNnaWQgIi1MIGRvZXMgbm90IHlldCBzdXBwb3J0IGRpZmYgZm9ybWF0cyBiZXNpZGVzIC1wIGFuZCAtcyIKK21zZ3N0ciAiLUwgc3TDtmRlciDDpG5udSBpbnRlIGFuZHJhIGRpZmYtZm9ybWF0IMOkbiAtcCBvY2ggLXMiCisKKyM6IHJ1bi1jb21tYW5kLmM6NzYzCiBtc2dpZCAib3BlbiAvZGV2L251bGwgZmFpbGVkIgogbXNnc3RyICJtaXNzbHlja2FkZXMgw7ZwcG5hIC9kZXYvbnVsbCIKIAotIzogcnVuLWNvbW1hbmQuYzoxMjI5CisjOiBydW4tY29tbWFuZC5jOjEyNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNyZWF0ZSBhc3luYyB0aHJlYWQ6ICVzIgogbXNnc3RyICJrYW4gaW50ZSBza2FwYSBhc3lua3JvbiB0csOlZDogJXMiCiAKLSM6IHJ1bi1jb21tYW5kLmM6MTI5MworIzogcnVuLWNvbW1hbmQuYzoxMzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgJyVzJyBob29rIHdhcyBpZ25vcmVkIGJlY2F1c2UgaXQncyBub3Qgc2V0IGFzIGV4ZWN1dGFibGUuXG4iCkBAIC00NDk4LDI5ICs2NDQwLDI5IEBACiAiS3Jva2VuIFwiJXNcIiBpZ25vcmVyYWRlcyBlZnRlcnNvbSBkZW4gaW50ZSDDpHIgbWFya2VyYWQgc29tIGvDtnJiYXIuXG4iCiAiRHUga2FuIGluYWt0aXZlcmEgdmFybmluZ2VuIG1lZCBcImdpdCBjb25maWcgYWR2aWNlLmlnbm9yZWRIb29rIGZhbHNlXCIuIgogCi0jOiBzZW5kLXBhY2suYzoxNDIKKyM6IHNlbmQtcGFjay5jOjE0NAogbXNnaWQgInVuZXhwZWN0ZWQgZmx1c2ggcGFja2V0IHdoaWxlIHJlYWRpbmcgcmVtb3RlIHVucGFjayBzdGF0dXMiCiBtc2dzdHIgIm92w6RudGF0IGZsdXNoLXBha2V0IHZpZCBsw6RzbmluZyBhdiBmasOkcnJ1cHBhY2tuaW5nc3N0YXR1cyIKIAotIzogc2VuZC1wYWNrLmM6MTQ0CisjOiBzZW5kLXBhY2suYzoxNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIHJlbW90ZSB1bnBhY2sgc3RhdHVzOiAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSBmasOkcnJ1cHBhY2tuaW5nc3N0YXR1czogJXMiCiAKLSM6IHNlbmQtcGFjay5jOjE0NgorIzogc2VuZC1wYWNrLmM6MTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZSB1bnBhY2sgZmFpbGVkOiAlcyIKIG1zZ3N0ciAiZmrDpHJydXBwYWNrbmluZyBtaXNzbHlja2FkZXM6ICVzIgogCi0jOiBzZW5kLXBhY2suYzozMDgKKyM6IHNlbmQtcGFjay5jOjMwOQogbXNnaWQgImZhaWxlZCB0byBzaWduIHRoZSBwdXNoIGNlcnRpZmljYXRlIgogbXNnc3RyICJtaXNzbHlja2FkZXMgdW5kZXJ0ZWNrbmEgcHVzaC1jZXJ0aWZpa2F0ZXQiCiAKLSM6IHNlbmQtcGFjay5jOjQyMQorIzogc2VuZC1wYWNrLmM6NDIzCiBtc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCAtLXNpZ25lZCBwdXNoIgogbXNnc3RyICJtb3R0YWdhcnNpZGFuIHN0w7ZkZXIgaW50ZSBwdXNoIG1lZCAtLXNpZ25lZCIKIAotIzogc2VuZC1wYWNrLmM6NDIzCisjOiBzZW5kLXBhY2suYzo0MjUKIG1zZ2lkICIiCiAibm90IHNlbmRpbmcgYSBwdXNoIGNlcnRpZmljYXRlIHNpbmNlIHRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS0iCiAic2lnbmVkIHB1c2giCkBAIC00NTI4LDQyICs2NDcwLDQ3IEBACiAic8OkbmRlciBpbnRlIHB1c2gtY2VydGlmaWthdCBlZnRlcnNvbSBtb3R0YWdhcnNpZGFuIGludGUgc3RsZGVyIHB1c2ggbWVkIC0tIgogInNpZ25lZCIKIAotIzogc2VuZC1wYWNrLmM6NDM1CisjOiBzZW5kLXBhY2suYzo0MzcKIG1zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tYXRvbWljIHB1c2giCiBtc2dzdHIgIm1vdHRhZ2Fyc2lkYW4gc3TDtmRlciBpbnRlIHB1c2ggbWVkIC0tYXRvbWljIgogCi0jOiBzZW5kLXBhY2suYzo0NDAKKyM6IHNlbmQtcGFjay5jOjQ0MgogbXNnaWQgInRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgcHVzaCBvcHRpb25zIgogbXNnc3RyICJtb3R0YWdhcnNpZGFuIHN0w7ZkZXIgaW50ZSBwdXNoLWZsYWdnb3IiCiAKLSM6IHNlcXVlbmNlci5jOjE4MworIzogc2VxdWVuY2VyLmM6MTkxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29tbWl0IG1lc3NhZ2UgY2xlYW51cCBtb2RlICclcyciCiBtc2dzdHIgImZlbGFrdGlndCBpbmNoZWNrbmluZ3NtZWRkZWxhbmRlc3TDpGRuaW5nc2zDpGdlIFwiJXNcIiIKIAotIzogc2VxdWVuY2VyLmM6Mjg3CisjOiBzZXF1ZW5jZXIuYzoyOTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGRlbGV0ZSAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIHRhIGJvcnQgXCIlc1wiIgogCi0jOiBzZXF1ZW5jZXIuYzozMTMKKyM6IHNlcXVlbmNlci5jOjMxNSBidWlsdGluL3JlYmFzZS5jOjc4NSBidWlsdGluL3JlYmFzZS5jOjE3NTAgYnVpbHRpbi9ybS5jOjM4NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVtb3ZlICclcyciCittc2dzdHIgImt1bmRlIGludGUgdGEgYm9ydCBcIiVzXCIiCisKKyM6IHNlcXVlbmNlci5jOjMyNQogbXNnaWQgInJldmVydCIKIG1zZ3N0ciAicmV2ZXJ0IgogCi0jOiBzZXF1ZW5jZXIuYzozMTUKKyM6IHNlcXVlbmNlci5jOjMyNwogbXNnaWQgImNoZXJyeS1waWNrIgogbXNnc3RyICJjaGVycnktcGljayIKIAotIzogc2VxdWVuY2VyLmM6MzE3Ci1tc2dpZCAicmViYXNlIC1pIgotbXNnc3RyICJyZWJhc2UgLWkiCisjOiBzZXF1ZW5jZXIuYzozMjkKK21zZ2lkICJyZWJhc2UiCittc2dzdHIgInJlYmFzZSIKIAotIzogc2VxdWVuY2VyLmM6MzE5CisjOiBzZXF1ZW5jZXIuYzozMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBhY3Rpb246ICVkIgogbXNnc3RyICJva8OkbmQgZnVua3Rpb246ICVkIgogCi0jOiBzZXF1ZW5jZXIuYzozNzYKKyM6IHNlcXVlbmNlci5jOjM4OQogbXNnaWQgIiIKICJhZnRlciByZXNvbHZpbmcgdGhlIGNvbmZsaWN0cywgbWFyayB0aGUgY29ycmVjdGVkIHBhdGhzXG4iCiAid2l0aCAnZ2l0IGFkZCA8cGF0aHM+JyBvciAnZ2l0IHJtIDxwYXRocz4nIgpAQCAtNDU3MSw3ICs2NTE4LDcgQEAKICJlZnRlciBhdHQgaGEgbMO2c3Qga29uZmxpa3Rlcm5hLCBtYXJrZXJhIGRlIHLDpHR0YWRlIHPDtmt2w6RnYXJuYVxuIgogIm1lZCBcImdpdCBhZGQgPHPDtmt2w6RnYXI+XCIgZWxsZXIgXCJnaXQgcm0gPHPDtmt2w6RnYXI+XCIiCiAKLSM6IHNlcXVlbmNlci5jOjM3OQorIzogc2VxdWVuY2VyLmM6MzkyCiBtc2dpZCAiIgogImFmdGVyIHJlc29sdmluZyB0aGUgY29uZmxpY3RzLCBtYXJrIHRoZSBjb3JyZWN0ZWQgcGF0aHNcbiIKICJ3aXRoICdnaXQgYWRkIDxwYXRocz4nIG9yICdnaXQgcm0gPHBhdGhzPidcbiIKQEAgLTQ1ODEsMTEwICs2NTI4LDExMCBAQAogIm1lZCBcImdpdCBhZGQgPHPDtmt2w6RnYXI+XCIgZWxsZXIgXCJnaXQgcm0gPHPDtmt2w6RnYXI+XCJcbiIKICJvY2ggY2hlY2thIGluIHJlc3VsdGF0ZXQgbWVkIFwiZ2l0IGNvbW1pdFwiIgogCi0jOiBzZXF1ZW5jZXIuYzozOTIgc2VxdWVuY2VyLmM6MjYzMgorIzogc2VxdWVuY2VyLmM6NDA1IHNlcXVlbmNlci5jOjI5MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvY2sgJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6VzYSBcIiVzXCIiCiAKLSM6IHNlcXVlbmNlci5jOjM5OQorIzogc2VxdWVuY2VyLmM6NDEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBlb2wgdG8gJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgcmFkc2x1dCB0aWxsIFwiJXNcIiIKIAotIzogc2VxdWVuY2VyLmM6NDA0IHNlcXVlbmNlci5jOjI1MTUgc2VxdWVuY2VyLmM6MjYzOCBzZXF1ZW5jZXIuYzoyNjUyCi0jOiBzZXF1ZW5jZXIuYzoyODg1CisjOiBzZXF1ZW5jZXIuYzo0MTcgc2VxdWVuY2VyLmM6MjcwNiBzZXF1ZW5jZXIuYzoyOTA3IHNlcXVlbmNlci5jOjI5MjEKKyM6IHNlcXVlbmNlci5jOjMxODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplICclcyciCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBmw6RyZGlnc3TDpGxsYSBcIiVzXCIiCiAKLSM6IHNlcXVlbmNlci5jOjQyNyBzZXF1ZW5jZXIuYzo5MjEgc2VxdWVuY2VyLmM6MTU5NCBzZXF1ZW5jZXIuYzoyNTM1Ci0jOiBzZXF1ZW5jZXIuYzoyODY3IHNlcXVlbmNlci5jOjI5NzQgYnVpbHRpbi9hbS5jOjI2MCBidWlsdGluL2NvbW1pdC5jOjc0NgotIzogYnVpbHRpbi9tZXJnZS5jOjEwODQgYnVpbHRpbi9yZWJhc2UuYzoxNTIKKyM6IHNlcXVlbmNlci5jOjQ0MCBzZXF1ZW5jZXIuYzoxNjEzIHNlcXVlbmNlci5jOjI3MjYgc2VxdWVuY2VyLmM6MzE2NworIzogc2VxdWVuY2VyLmM6MzI3NiBidWlsdGluL2FtLmM6MjQ5IGJ1aWx0aW4vY29tbWl0LmM6Nzg3IGJ1aWx0aW4vbWVyZ2UuYzoxMTIwCisjOiBidWlsdGluL3JlYmFzZS5jOjU5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIFwiJXNcIiIKIAotIzogc2VxdWVuY2VyLmM6NDUzCisjOiBzZXF1ZW5jZXIuYzo0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAieW91ciBsb2NhbCBjaGFuZ2VzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzLiIKIG1zZ3N0ciAiZGluYSBsb2thbGEgw6RuZHJpbmdhciBza3VsbGUgc2tyaXZhcyDDtnZlciBhdiAlcy4iCiAKLSM6IHNlcXVlbmNlci5jOjQ1NworIzogc2VxdWVuY2VyLmM6NDcwCiBtc2dpZCAiY29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQuIgogbXNnc3RyICJjaGVja2EgaW4gZGluYSDDpG5kcmluZ2FyIGVsbGVyIGFudsOkbmQgXCJzdGFzaFwiIGbDtnIgYXR0IGZvcnRzw6R0dGEuIgogCi0jOiBzZXF1ZW5jZXIuYzo0ODYKKyM6IHNlcXVlbmNlci5jOjUwMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZmFzdC1mb3J3YXJkIgogbXNnc3RyICIlczogc25hYmJzcG9sYSIKIAorIzogc2VxdWVuY2VyLmM6NTQxIGJ1aWx0aW4vdGFnLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgY2xlYW51cCBtb2RlICVzIgorbXNnc3RyICJGZWxha3RpZ3Qgc3TDpGRuaW5nc2zDpGdlICVzIgorCiAjLiBUUkFOU0xBVE9SUzogJXMgd2lsbCBiZSAicmV2ZXJ0IiwgImNoZXJyeS1waWNrIiBvcgotIy4gInJlYmFzZSAtaSIuCisjLiAicmViYXNlIi4KICMuCi0jOiBzZXF1ZW5jZXIuYzo1NzUKKyM6IHNlcXVlbmNlci5jOjYzNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgogbXNnc3RyICIlczogS3VuZGUgaW50ZSBza3JpdmEgbnkgaW5kZXhmaWwiCiAKLSM6IHNlcXVlbmNlci5jOjU5MQorIzogc2VxdWVuY2VyLmM6NjUyCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBjYWNoZSB0cmVlIgogbXNnc3RyICJrYW4gaW50ZSB1cHBkYXRlcmEgY2FjaGV0csOkZCIKIAotIzogc2VxdWVuY2VyLmM6NjA0CisjOiBzZXF1ZW5jZXIuYzo2NjYKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIGNvbW1pdCIKIG1zZ3N0ciAia3VuZGUgaW50ZSBiZXN0w6RtbWEgSEVBRDpzIGluY2hlY2tuaW5nIgogCi0jOiBzZXF1ZW5jZXIuYzo2ODQKKyM6IHNlcXVlbmNlci5jOjc0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBrZXkgcHJlc2VudCBpbiAnJS4qcyciCiBtc2dzdHIgImluZ2VuIG55Y2tlbCBpICBcIiUuKnNcIiIKIAotIzogc2VxdWVuY2VyLmM6Njk1CisjOiBzZXF1ZW5jZXIuYzo3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlcXVvdGUgdmFsdWUgb2YgJyVzJyIKIG1zZ3N0ciAia2FuIGludGUgdGEgYm9ydCBjaXRlcmluZyBhdiB2w6RyZGV0IFwiJXNcIiIKIAotIzogc2VxdWVuY2VyLmM6NzMyIHdyYXBwZXIuYzoyMjcgd3JhcHBlci5jOjM5NyBidWlsdGluL2FtLmM6NzE5Ci0jOiBidWlsdGluL2FtLmM6ODExIGJ1aWx0aW4vbWVyZ2UuYzoxMDgxCisjOiBzZXF1ZW5jZXIuYzo3OTQgd3JhcHBlci5jOjE5MCB3cmFwcGVyLmM6MzYwIGJ1aWx0aW4vYW0uYzo3MTAKKyM6IGJ1aWx0aW4vYW0uYzo4MDIgYnVpbHRpbi9tZXJnZS5jOjExMTcgYnVpbHRpbi9yZWJhc2UuYzoxMDcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHJlYWRpbmciCiBtc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIFwiJXNcIiBmw7ZyIGzDpHNuaW5nIgogCi0jOiBzZXF1ZW5jZXIuYzo3NDIKKyM6IHNlcXVlbmNlci5jOjgwNAogbXNnaWQgIidHSVRfQVVUSE9SX05BTUUnIGFscmVhZHkgZ2l2ZW4iCiBtc2dzdHIgIlwiR0lUX0FVVEhPUl9OQU1FXCIgaGFyIHJlZGFuIGFuZ2l2aXRzIgogCi0jOiBzZXF1ZW5jZXIuYzo3NDcKKyM6IHNlcXVlbmNlci5jOjgwOQogbXNnaWQgIidHSVRfQVVUSE9SX0VNQUlMJyBhbHJlYWR5IGdpdmVuIgogbXNnc3RyICJcIkdJVF9BVVRIT1JfRU1BSUxcIiBoYXIgcmVkYW4gYW5naXZpdHMiCiAKLSM6IHNlcXVlbmNlci5jOjc1MgorIzogc2VxdWVuY2VyLmM6ODE0CiBtc2dpZCAiJ0dJVF9BVVRIT1JfREFURScgYWxyZWFkeSBnaXZlbiIKIG1zZ3N0ciAiXCJHSVRfQVVUSE9SX0RBVEVcIiBoYXIgcmVkYW4gYW5naXZpdHMiCiAKLSM6IHNlcXVlbmNlci5jOjc1NgorIzogc2VxdWVuY2VyLmM6ODE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gdmFyaWFibGUgJyVzJyIKIG1zZ3N0ciAib2vDpG5kIHZhcmlhYmVsIFwiJXNcIiIKIAotIzogc2VxdWVuY2VyLmM6NzYxCisjOiBzZXF1ZW5jZXIuYzo4MjMKIG1zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX05BTUUnIgogbXNnc3RyICJcIkdJVF9BVVRIT1JfTkFNRVwiIHNha25hcyIKIAotIzogc2VxdWVuY2VyLmM6NzYzCisjOiBzZXF1ZW5jZXIuYzo4MjUKIG1zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX0VNQUlMJyIKIG1zZ3N0ciAiXCJHSVRfQVVUSE9SX0VNQUlMXCIgc2FrbmFzIgogCi0jOiBzZXF1ZW5jZXIuYzo3NjUKKyM6IHNlcXVlbmNlci5jOjgyNwogbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfREFURSciCiBtc2dzdHIgIlwiR0lUX0FVVEhPUl9EQVRFXCIgc2FrbmFzIgogCi0jOiBzZXF1ZW5jZXIuYzo4MjUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBkYXRlIGZvcm1hdCAnJXMnIGluICclcyciCi1tc2dzdHIgIm9naWx0aWd0IGRhdHVtZm9ybWF0IFwiJXNcIiBpIFwiJXNcIiIKLQotIzogc2VxdWVuY2VyLmM6ODQyCisjOiBzZXF1ZW5jZXIuYzo4NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInlvdSBoYXZlIHN0YWdlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlXG4iCkBAIC00NzAxLDExICs2NjQ4LDExIEBACiAiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKIG1zZ3N0ciAiIgogImR1IGhhciBrw7ZhZGUgw6RuZHJpbmdhciBpIGRpbiBhcmJldHNrYXRhbG9nLlxuIgotIk9tIMOkbmRyaW5nYXJuYSBza2FsbCBsw6RnZ2FzIGluIGkgZsO2cmVnw6VlbmRlIGluY2hlY2tuaW5nLCBrw7ZyOlxuIgorIk9tIMOkbmRyaW5nYXJuYSBza2EgbMOkZ2dhcyBpbiBpIGbDtnJlZ8OlZW5kZSBpbmNoZWNrbmluZywga8O2cjpcbiIKICJcbiIKICIgIGdpdCBjb21taXQgLS1hbWVuZCAlc1xuIgogIlxuIgotIk9tIGRlIHNrYWxsIGNoZWNrYXMgaW4gaSBlbiBlZ2VuIGluY2hlY2tuaW5nLCBrw7ZyOlxuIgorIk9tIGRlIHNrYSBjaGVja2FzIGluIGkgZW4gZWdlbiBpbmNoZWNrbmluZywga8O2cjpcbiIKICJcbiIKICIgIGdpdCBjb21taXQgJXNcbiIKICJcbiIKQEAgLTQ3MTMsMTUgKzY2NjAsMTEgQEAKICJcbiIKICIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogCi0jOiBzZXF1ZW5jZXIuYzo5MzUKLW1zZ2lkICJ3cml0aW5nIHJvb3QgY29tbWl0IgotbXNnc3RyICJza3JpdmVyIHJvdGluY2hlY2tuaW5nIgotCi0jOiBzZXF1ZW5jZXIuYzoxMTQyCisjOiBzZXF1ZW5jZXIuYzoxMTQ4CiBtc2dpZCAiJ3ByZXBhcmUtY29tbWl0LW1zZycgaG9vayBmYWlsZWQiCiBtc2dzdHIgImtyb2tlbiBcInByZXBhcmUtY29tbWl0LW1zZ1wiIG1pc3NseWNrYWRlcyIKIAotIzogc2VxdWVuY2VyLmM6MTE0OQorIzogc2VxdWVuY2VyLmM6MTE1NAogbXNnaWQgIiIKICJZb3VyIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgd2VyZSBjb25maWd1cmVkIGF1dG9tYXRpY2FsbHkgYmFzZWRcbiIKICJvbiB5b3VyIHVzZXJuYW1lIGFuZCBob3N0bmFtZS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhleSBhcmUgYWNjdXJhdGUuXG4iCkBAIC00NzQ4LDcgKzY2OTEsNyBAQAogIlxuIgogIiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKIAotIzogc2VxdWVuY2VyLmM6MTE2MgorIzogc2VxdWVuY2VyLmM6MTE2NwogbXNnaWQgIiIKICJZb3VyIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgd2VyZSBjb25maWd1cmVkIGF1dG9tYXRpY2FsbHkgYmFzZWRcbiIKICJvbiB5b3VyIHVzZXJuYW1lIGFuZCBob3N0bmFtZS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhleSBhcmUgYWNjdXJhdGUuXG4iCkBAIC00NzczLDMwMSArNjcxNiwzNDkgQEAKICJcbiIKICIgICAgZ2l0IGNvbW1pdCAtLWFtZW5kIC0tcmVzZXQtYXV0aG9yXG4iCiAKLSM6IHNlcXVlbmNlci5jOjEyMDIKKyM6IHNlcXVlbmNlci5jOjEyMDkKIG1zZ2lkICJjb3VsZG4ndCBsb29rIHVwIG5ld2x5IGNyZWF0ZWQgY29tbWl0IgogbXNnc3RyICJrdW5kZSBpbnRlIHNsw6UgdXBwIGVuIHByZWNpcyBza2FwYWQgaW5jaGVja25pbmciCiAKLSM6IHNlcXVlbmNlci5jOjEyMDQKKyM6IHNlcXVlbmNlci5jOjEyMTEKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgbmV3bHkgY3JlYXRlZCBjb21taXQiCiBtc2dzdHIgImt1bmRlIGludGUgdG9sa2EgZW4gcHJlY2lzIHNrYXBhZCBpbmNoZWNrbmluZyIKIAotIzogc2VxdWVuY2VyLmM6MTI1MAorIzogc2VxdWVuY2VyLmM6MTI1NwogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIEhFQUQgYWZ0ZXIgY3JlYXRpbmcgY29tbWl0IgogbXNnc3RyICJrdW5kZSBpbnRlIGJlc3TDpG1tYSBIRUFEIGVmdGVyIGF0dCBoYSBza2FwYXQgaW5jaGVja25pbmciCiAKLSM6IHNlcXVlbmNlci5jOjEyNTIKKyM6IHNlcXVlbmNlci5jOjEyNTkKIG1zZ2lkICJkZXRhY2hlZCBIRUFEIgogbXNnc3RyICJmcsOlbmtvcHBsYWQgSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6MTI1NgorIzogc2VxdWVuY2VyLmM6MTI2MwogbXNnaWQgIiAocm9vdC1jb21taXQpIgogbXNnc3RyICIgKHJvdGluY2hlY2tuaW5nKSIKIAotIzogc2VxdWVuY2VyLmM6MTI3NworIzogc2VxdWVuY2VyLmM6MTI4NAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBIRUFEIgogbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjEyNzkKKyM6IHNlcXVlbmNlci5jOjEyODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiSEVBRCAlcyBpcyBub3QgYSBjb21taXQhIgogbXNnc3RyICJIRUFEICVzIMOkciBpbnRlIGVuIGluY2hlY2tuaW5nISIKIAotIzogc2VxdWVuY2VyLmM6MTI4MyBidWlsdGluL2NvbW1pdC5jOjE1NDMKKyM6IHNlcXVlbmNlci5jOjEyOTAgc2VxdWVuY2VyLmM6MTM2NCBidWlsdGluL2NvbW1pdC5jOjE1NzQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgSEVBRCBjb21taXQiCiBtc2dzdHIgImt1bmRlIGludGUgdG9sa2EgSEVBRDpzIGluY2hlY2tuaW5nIgogCi0jOiBzZXF1ZW5jZXIuYzoxMzM0IHNlcXVlbmNlci5jOjE5MzQKKyM6IHNlcXVlbmNlci5jOjEzNDIgc2VxdWVuY2VyLmM6MTk2OAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21taXQgYXV0aG9yIgogbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthIGluY2hlY2tuaW5nZW5zIGbDtnJmYXR0YXJlIgogCi0jOiBzZXF1ZW5jZXIuYzoxMzQ0IGJ1aWx0aW4vYW0uYzoxNTg1IGJ1aWx0aW4vbWVyZ2UuYzo2NzcKKyM6IHNlcXVlbmNlci5jOjEzNTMgYnVpbHRpbi9hbS5jOjE1NjYgYnVpbHRpbi9tZXJnZS5jOjY4NwogbXNnaWQgImdpdCB3cml0ZS10cmVlIGZhaWxlZCB0byB3cml0ZSBhIHRyZWUiCiBtc2dzdHIgImdpdCB3cml0ZS10cmVlIG1pc3NseWNrYWRlcyBza3JpdmEgZXR0IHRyw6RkIgogCi0jOiBzZXF1ZW5jZXIuYzoxMzYxIHNlcXVlbmNlci5jOjE0MTYKKyM6IHNlcXVlbmNlci5jOjEzODYgc2VxdWVuY2VyLmM6MTQ0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBjb21taXQgbWVzc2FnZSBmcm9tICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgbMOkc2EgaW5jaGVja25pbmdzbWVkZGVsYW5kZSBmcsOlbiBcIiVzXCIiCiAKLSM6IHNlcXVlbmNlci5jOjEzODMgYnVpbHRpbi9hbS5jOjE2MDYgYnVpbHRpbi9jb21taXQuYzoxNjQ2IGJ1aWx0aW4vbWVyZ2UuYzo4NTgKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4ODMKKyM6IHNlcXVlbmNlci5jOjE0MTMgYnVpbHRpbi9hbS5jOjE1ODggYnVpbHRpbi9jb21taXQuYzoxNjczIGJ1aWx0aW4vbWVyZ2UuYzo4ODYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5MTEKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgY29tbWl0IG9iamVjdCIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgaW5jaGVja25pbmdzb2JqZWt0IgogCi0jOiBzZXF1ZW5jZXIuYzoxNDQzCisjOiBzZXF1ZW5jZXIuYzoxNDc0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgJXMiCiBtc2dzdHIgImt1bmRlIGludGUgdG9sa2EgaW5jaGVja25pbmdlbiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTQ0OAorIzogc2VxdWVuY2VyLmM6MTQ3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgcGFyZW50IGNvbW1pdCAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSBmw7Zyw6RsZHJhaW5jaGVja25pbmdlbiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTU0NiBzZXF1ZW5jZXIuYzoxNjU0CisjOiBzZXF1ZW5jZXIuYzoxNTYyIHNlcXVlbmNlci5jOjE2NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBjb21tYW5kOiAlZCIKIG1zZ3N0ciAib2vDpG50IGtvbW1hbmRvOiAlZCIKIAotIzogc2VxdWVuY2VyLmM6MTYwMSBzZXF1ZW5jZXIuYzoxNjI2CisjOiBzZXF1ZW5jZXIuYzoxNjIwIHNlcXVlbmNlci5jOjE2NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mICVkIGNvbW1pdHMuIgogbXNnc3RyICJEZXQgaMOkciDDpHIgZW4ga29tYmluYXRpb24gYXYgJWQgaW5jaGVja25pbmdhci4iCiAKLSM6IHNlcXVlbmNlci5jOjE2MTEgc2VxdWVuY2VyLmM6NDc0NAorIzogc2VxdWVuY2VyLmM6MTYzMAogbXNnaWQgIm5lZWQgYSBIRUFEIHRvIGZpeHVwIgogbXNnc3RyICJiZWjDtnZlciBlbiBIRUFELWluY2hlY2tuaW5nIGF0dCByw6R0dGEiCiAKLSM6IHNlcXVlbmNlci5jOjE2MTMgc2VxdWVuY2VyLmM6MjkxMgorIzogc2VxdWVuY2VyLmM6MTYzMiBzZXF1ZW5jZXIuYzozMjEyCiBtc2dpZCAiY291bGQgbm90IHJlYWQgSEVBRCIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjE1CisjOiBzZXF1ZW5jZXIuYzoxNjM0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgSEVBRCdzIGNvbW1pdCBtZXNzYWdlIgogbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIEhFQUQ6cyBpbmNoZWNrbmluZ3NtZWRkZWxhbmRlIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjIxCisjOiBzZXF1ZW5jZXIuYzoxNjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCB3cml0ZSAnJXMnIgogbXNnc3RyICJrYW4gaW50ZSBza3JpdmEgXCIlc1wiIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjI4IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NDEKKyM6IHNlcXVlbmNlci5jOjE2NDcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5NgogbXNnaWQgIlRoaXMgaXMgdGhlIDFzdCBjb21taXQgbWVzc2FnZToiCiBtc2dzdHIgIkRldCBow6RyIMOkciAxOmEgaW5jaGVja25pbmdzbWVkZGVsYW5kZXQ6IgogCi0jOiBzZXF1ZW5jZXIuYzoxNjM2CisjOiBzZXF1ZW5jZXIuYzoxNjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGNvbW1pdCBtZXNzYWdlIG9mICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIGluY2hlY2tuaW5nc21lZGRlbGFuZGUgZsO2ciAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTY0MworIzogc2VxdWVuY2VyLmM6MTY2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGlzIGlzIHRoZSBjb21taXQgbWVzc2FnZSAjJWQ6IgogbXNnc3RyICJEZXQgaMOkciDDpHIgaW5jaGVja25pbmdzbWVkZGVsYW5kZSAlZDoiCiAKLSM6IHNlcXVlbmNlci5jOjE2NDkKKyM6IHNlcXVlbmNlci5jOjE2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIGNvbW1pdCBtZXNzYWdlICMlZCB3aWxsIGJlIHNraXBwZWQ6IgogbXNnc3RyICJJbmNoZWNrbmluZ3NtZWRkZWxhbmRlICVkIGtvbW1lciBob3BwYXMgw7Z2ZXI6IgogCi0jOiBzZXF1ZW5jZXIuYzoxNzMyCisjOiBzZXF1ZW5jZXIuYzoxNzU2CiBtc2dpZCAieW91ciBpbmRleCBmaWxlIGlzIHVubWVyZ2VkLiIKIG1zZ3N0ciAiZGluIGluZGV4ZmlsIGhhciBpbnRlIHNsYWdpdHMgaWhvcC4iCiAKLSM6IHNlcXVlbmNlci5jOjE3MzkKKyM6IHNlcXVlbmNlci5jOjE3NjMKIG1zZ2lkICJjYW5ub3QgZml4dXAgcm9vdCBjb21taXQiCiBtc2dzdHIgImthbiBpbnRlIGfDtnJhIFwiZml4dXBcIiBww6Ugcm90aW5jaGVja25pbmciCiAKLSM6IHNlcXVlbmNlci5jOjE3NTgKKyM6IHNlcXVlbmNlci5jOjE3ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICVzIGlzIGEgbWVyZ2UgYnV0IG5vIC1tIG9wdGlvbiB3YXMgZ2l2ZW4uIgogbXNnc3RyICJpbmNoZWNrbmluZyAlcyDDpHIgZW4gc2FtbWFuc2xhZ25pbmcsIG1lbiBmbGFnZ2FuIC1tIGFuZ2F2cyBpbnRlLiIKIAotIzogc2VxdWVuY2VyLmM6MTc2NgorIzogc2VxdWVuY2VyLmM6MTc5MCBzZXF1ZW5jZXIuYzoxNzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIHBhcmVudCAlZCIKIG1zZ3N0ciAiaW5jaGVja25pbmcgJXMgaGFyIGludGUgZsO2csOkbGRlciAlZCIKIAotIzogc2VxdWVuY2VyLmM6MTc3MAotIywgYy1mb3JtYXQKLW1zZ2lkICJtYWlubGluZSB3YXMgc3BlY2lmaWVkIGJ1dCBjb21taXQgJXMgaXMgbm90IGEgbWVyZ2UuIgotbXNnc3RyICJodXZ1ZGxpbmplIGFuZ2F2cywgbWVuIGluY2hlY2tuaW5nZW4gJXMgw6RyIGludGUgZW4gc2FtbWFuc2xhZ25pbmcuIgotCi0jOiBzZXF1ZW5jZXIuYzoxNzc2CisjOiBzZXF1ZW5jZXIuYzoxODA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBnZXQgY29tbWl0IG1lc3NhZ2UgZm9yICVzIgogbXNnc3RyICJrYW4gaW50ZSBow6RtdGEgaW5jaGVja25pbmdzbWVkZGVsYW5kZSBmw7ZyICVzIgogCiAjLiBUUkFOU0xBVE9SUzogVGhlIGZpcnN0ICVzIHdpbGwgYmUgYSAidG9kbyIgY29tbWFuZCBsaWtlCiAjLiAicmV2ZXJ0IiBvciAicGljayIsIHRoZSBzZWNvbmQgJXMgYSBTSEExLgotIzogc2VxdWVuY2VyLmM6MTc5NQorIzogc2VxdWVuY2VyLmM6MTgyMwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogY2Fubm90IHBhcnNlIHBhcmVudCBjb21taXQgJXMiCiBtc2dzdHIgIiVzOiBrYW4gaW50ZSB0b2xrYSBmw7Zyw6RsZHJhaW5jaGVja25pbmdlbiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTg2MAorIzogc2VxdWVuY2VyLmM6MTg4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVuYW1lICclcycgdG8gJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBieXRhIG5hbW4gcMOlIFwiJXNcIiB0aWxsIFwiJXNcIiIKIAotIzogc2VxdWVuY2VyLmM6MTkxNQorIzogc2VxdWVuY2VyLmM6MTk0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmV2ZXJ0ICVzLi4uICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIMOlbmdyYSAlcy4uLiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTkxNgorIzogc2VxdWVuY2VyLmM6MTk0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgYXBwbHkgJXMuLi4gJXMiCiBtc2dzdHIgImt1bmRlIGludGUgdGlsbMOkbXBhICVzLi4uICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxOTc0CisjOiBzZXF1ZW5jZXIuYzoxOTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImRyb3BwaW5nICVzICVzIC0tIHBhdGNoIGNvbnRlbnRzIGFscmVhZHkgdXBzdHJlYW1cbiIKK21zZ3N0ciAidXRlbMOkbW5hciAlcyAlcyAtLSBwYXRjaGlubmVow6VsbGV0IGZpbm5zIHJlZGFuIHVwcHN0csO2bXNcbiIKKworIzogc2VxdWVuY2VyLmM6MjAxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAiZ2l0ICVzOiBtaXNzbHlja2FkZXMgbMOkc2EgaW5kZXhldCIKIAotIzogc2VxdWVuY2VyLmM6MTk4MQorIzogc2VxdWVuY2VyLmM6MjAyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWZyZXNoIHRoZSBpbmRleCIKIG1zZ3N0ciAiZ2l0ICVzOiBtaXNzbHlja2FkZXMgdXBwZGF0ZXJhIGluZGV4ZXQiCiAKLSM6IHNlcXVlbmNlci5jOjIwNjIKKyM6IHNlcXVlbmNlci5jOjIxMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lcyBub3QgYWNjZXB0IGFyZ3VtZW50czogJyVzJyIKIG1zZ3N0ciAiJXMgdGFyIGludGUgYXJndW1lbnQ6IFwiJXNcIiIKIAotIzogc2VxdWVuY2VyLmM6MjA3MQorIzogc2VxdWVuY2VyLmM6MjExMQogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIGFyZ3VtZW50cyBmb3IgJXMiCiBtc2dzdHIgImFyZ3VtZW50IHNha25hcyBmw7ZyICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoyMTMwCisjOiBzZXF1ZW5jZXIuYzoyMTQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJXMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthIFwiJXNcIiIKKworIzogc2VxdWVuY2VyLmM6MjIwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGxpbmUgJWQ6ICUuKnMiCiBtc2dzdHIgIm9naWx0aWcgcmFkICVkOiAlLipzIgogCi0jOiBzZXF1ZW5jZXIuYzoyMTM4CisjOiBzZXF1ZW5jZXIuYzoyMjE0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAnJXMnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgImthbiBpbnRlIHV0ZsO2cmEgXCIlc1wiIHV0YW4gZW4gZsO2cmVnw6VlbmRlIGluY2hlY2tuaW5nIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjA5CisjOiBzZXF1ZW5jZXIuYzoyMjk4Cittc2dpZCAiY2FuY2VsbGluZyBhIGNoZXJyeSBwaWNraW5nIGluIHByb2dyZXNzIgorbXNnc3RyICJhdmJyeXRlciBww6Vnw6VlbmRlIFwiY2hlcnJ5LXBpY2tcIiIKKworIzogc2VxdWVuY2VyLmM6MjMwNQorbXNnaWQgImNhbmNlbGxpbmcgYSByZXZlcnQgaW4gcHJvZ3Jlc3MiCittc2dzdHIgImF2YnJ5dGVyIHDDpWfDpWVuZGUgXCJyZXZlcnRcIiIKKworIzogc2VxdWVuY2VyLmM6MjM0OQogbXNnaWQgInBsZWFzZSBmaXggdGhpcyB1c2luZyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycuIgogbXNnc3RyICJyw6R0dGEgZGV0IG1lZCBcImdpdCByZWJhc2UgLS1lZGl0LXRvZG9cIi4iCiAKLSM6IHNlcXVlbmNlci5jOjIyMTEKKyM6IHNlcXVlbmNlci5jOjIzNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW51c2FibGUgaW5zdHJ1Y3Rpb24gc2hlZXQ6ICclcyciCi1tc2dzdHIgIm9hbnbDpG5kYmFydCBtYW51czog4oCdJXPigJ0iCittc2dzdHIgIm9hbnbDpG5kYmFydCBtYW51czogXCIlc1wiIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjE2CisjOiBzZXF1ZW5jZXIuYzoyMzU2CiBtc2dpZCAibm8gY29tbWl0cyBwYXJzZWQuIgogbXNnc3RyICJpbmdhIGluY2hlY2tuaW5nYXIgbMOkc3Rlcy4iCiAKLSM6IHNlcXVlbmNlci5jOjIyMjcKKyM6IHNlcXVlbmNlci5jOjIzNjcKIG1zZ2lkICJjYW5ub3QgY2hlcnJ5LXBpY2sgZHVyaW5nIGEgcmV2ZXJ0LiIKIG1zZ3N0ciAia2FuIGludGUgdXRmw7ZyYSBcImNoZXJyeS1waWNrXCIgdW5kZXIgZW4gXCJyZXZlcnRcIi4iCiAKLSM6IHNlcXVlbmNlci5jOjIyMjkKKyM6IHNlcXVlbmNlci5jOjIzNjkKIG1zZ2lkICJjYW5ub3QgcmV2ZXJ0IGR1cmluZyBhIGNoZXJyeS1waWNrLiIKIG1zZ3N0ciAia2FuIGludGUgdXRmw7ZyYSBcInJldmVydFwiIHVuZGVyIGVuIFwiY2hlcnJ5LXBpY2tcIi4iCiAKLSM6IHNlcXVlbmNlci5jOjIyOTkKKyM6IHNlcXVlbmNlci5jOjI0NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICJmZWxha3RpZ3QgdsOkcmRlIGbDtnIgJXM6ICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoyMzgwCisjOiBzZXF1ZW5jZXIuYzoyNTQwCiBtc2dpZCAidW51c2FibGUgc3F1YXNoLW9udG8iCiBtc2dzdHIgIm9hbnbDpG5kYmFyIHNxdWFzaC1vbnRvIgogCi0jOiBzZXF1ZW5jZXIuYzoyMzk2CisjOiBzZXF1ZW5jZXIuYzoyNTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvcHRpb25zIHNoZWV0OiAnJXMnIgotbXNnc3RyICJ0cmFzaWd0IG1hbnVzOiDigJ0lc+KAnSIKK21zZ3N0ciAidHJhc2lndCBtYW51czogXCIlc1wiIgogCi0jOiBzZXF1ZW5jZXIuYzoyNDc5IHNlcXVlbmNlci5jOjQwMDUKKyM6IHNlcXVlbmNlci5jOjI2NDQgc2VxdWVuY2VyLmM6NDM2MQogbXNnaWQgImVtcHR5IGNvbW1pdCBzZXQgcGFzc2VkIgogbXNnc3RyICJkZW4gYW5naXZuYSB1cHBzw6R0dG5pbmdlbiBpbmNoZWNrbmluZ2FyIMOkciB0b20iCiAKLSM6IHNlcXVlbmNlci5jOjI0ODcKLW1zZ2lkICJhIGNoZXJyeS1waWNrIG9yIHJldmVydCBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgotbXNnc3RyICJlbiBcImNoZXJyeS1waWNrXCIgZWxsZXIgXCJyZXZlcnRcIiBww6Vnw6VyIHJlZGFuIgorIzogc2VxdWVuY2VyLmM6MjY2MAorbXNnaWQgInJldmVydCBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgorbXNnc3RyICJlbiBcInJldmVydFwiIHDDpWfDpXIgcmVkYW4iCiAKLSM6IHNlcXVlbmNlci5jOjI0ODgKLW1zZ2lkICJ0cnkgXCJnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAtLXF1aXQgfCAtLWFib3J0KVwiIgotbXNnc3RyICJ0ZXN0YSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8IC0tcXVpdCB8IC0tYWJvcnQpXCIiCisjOiBzZXF1ZW5jZXIuYzoyNjYyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeSBcImdpdCByZXZlcnQgKC0tY29udGludWUgfCAlcy0tYWJvcnQgfCAtLXF1aXQpXCIiCittc2dzdHIgInRlc3RhIFwiZ2l0IHJldmVydCAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKIAotIzogc2VxdWVuY2VyLmM6MjQ5MQorIzogc2VxdWVuY2VyLmM6MjY2NQorbXNnaWQgImNoZXJyeS1waWNrIGlzIGFscmVhZHkgaW4gcHJvZ3Jlc3MiCittc2dzdHIgImVuIFwiY2hlcnJ5LXBpY2tcIiBww6Vnw6VyIHJlZGFuIgorCisjOiBzZXF1ZW5jZXIuYzoyNjY3CisjLCBjLWZvcm1hdAorbXNnaWQgInRyeSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKK21zZ3N0ciAidGVzdGEgXCJnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAlcy0tYWJvcnQgfCAtLXF1aXQpXCIiCisKKyM6IHNlcXVlbmNlci5jOjI2ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBzZXF1ZW5jZXIgZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgc2thcGEgXCJzZXF1ZW5jZXJcIi1rYXRhbG9nZW4gXCIlc1wiIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTA1CisjOiBzZXF1ZW5jZXIuYzoyNjk2CiBtc2dpZCAiY291bGQgbm90IGxvY2sgSEVBRCIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6VzYSBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTYwIHNlcXVlbmNlci5jOjM3NjEKKyM6IHNlcXVlbmNlci5jOjI3NTYgc2VxdWVuY2VyLmM6NDA5OQogbXNnaWQgIm5vIGNoZXJyeS1waWNrIG9yIHJldmVydCBpbiBwcm9ncmVzcyIKIG1zZ3N0ciAiaW5nZW4gXCJjaGVycnktcGlja1wiIGVsbGVyIFwicmV2ZXJ0XCIgcMOlZ8OlciIKIAotIzogc2VxdWVuY2VyLmM6MjU2MgorIzogc2VxdWVuY2VyLmM6Mjc1OCBzZXF1ZW5jZXIuYzoyNzY5CiBtc2dpZCAiY2Fubm90IHJlc29sdmUgSEVBRCIKIG1zZ3N0ciAia2FuIGludGUgYmVzdMOkbW1hIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjI1NjQgc2VxdWVuY2VyLmM6MjU5OQorIzogc2VxdWVuY2VyLmM6Mjc2MCBzZXF1ZW5jZXIuYzoyODA0CiBtc2dpZCAiY2Fubm90IGFib3J0IGZyb20gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iCiBtc2dzdHIgImthbiBpbnRlIGF2YnJ5dGEgZnLDpW4gZW4gZ3JlbiBzb20gw6RubnUgaW50ZSDDpHIgZsO2ZGQiCiAKLSM6IHNlcXVlbmNlci5jOjI1ODUgYnVpbHRpbi9ncmVwLmM6NzIxCisjOiBzZXF1ZW5jZXIuYzoyNzkwIGJ1aWx0aW4vZ3JlcC5jOjcyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgb3BlbiAnJXMnIgogbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgXCIlc1wiIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTg3CisjOiBzZXF1ZW5jZXIuYzoyNzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICclcyc6ICVzIgogbXNnc3RyICJrYW4gaW50ZSBsw6RzYSBcIiVzXCI6ICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTg4CisjOiBzZXF1ZW5jZXIuYzoyNzkzCiBtc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSIKIG1zZ3N0ciAib3bDpG50YXQgZmlsc2x1dCIKIAotIzogc2VxdWVuY2VyLmM6MjU5NAorIzogc2VxdWVuY2VyLmM6Mjc5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJzdG9yZWQgcHJlLWNoZXJyeS1waWNrIEhFQUQgZmlsZSAnJXMnIGlzIGNvcnJ1cHQiCiBtc2dzdHIgInNwYXJhZCBIRUFELWZpbCBmcsOlbiBmw7ZyZSBcImNoZXJyeS1waWNrXCIsIFwiJXNcIiwgw6RyIHRyYXNpZyIKIAotIzogc2VxdWVuY2VyLmM6MjYwNQorIzogc2VxdWVuY2VyLmM6MjgxMAogbXNnaWQgIllvdSBzZWVtIHRvIGhhdmUgbW92ZWQgSEVBRC4gTm90IHJld2luZGluZywgY2hlY2sgeW91ciBIRUFEISIKIG1zZ3N0ciAiIgogIkR1IHZlcmthciBoYSBmbHl0dGF0IEhFQUQuXG4iCiAiU3BvbGFyIGludGUgdGlsbGJha2EsIGtvbnRyb2xsZXJhIEhFQUQhIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzA5IHNlcXVlbmNlci5jOjM2NzkKKyM6IHNlcXVlbmNlci5jOjI4NTEKK21zZ2lkICJubyByZXZlcnQgaW4gcHJvZ3Jlc3MiCittc2dzdHIgImluZ2VuIFwicmV2ZXJzXCIgcMOlZ8OlciIKKworIzogc2VxdWVuY2VyLmM6Mjg1OQorbXNnaWQgIm5vIGNoZXJyeS1waWNrIGluIHByb2dyZXNzIgorbXNnc3RyICJpbmdlbiBcImNoZXJyeS1waWNrXCIgcMOlZ8OlciIKKworIzogc2VxdWVuY2VyLmM6Mjg2OQorbXNnaWQgImZhaWxlZCB0byBza2lwIHRoZSBjb21taXQiCittc2dzdHIgImt1bmRlIGludGUgaG9wcGEgw7Z2ZXIgaW5jaGVja25pbmdlbiIKKworIzogc2VxdWVuY2VyLmM6Mjg3NgorbXNnaWQgInRoZXJlIGlzIG5vdGhpbmcgdG8gc2tpcCIKK21zZ3N0ciAiaW5nZW50aW5nIGF0dCBob3BwYSDDtnZlciIKKworIzogc2VxdWVuY2VyLmM6Mjg3OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaGF2ZSB5b3UgY29tbWl0dGVkIGFscmVhZHk/XG4iCisidHJ5IFwiZ2l0ICVzIC0tY29udGludWVcIiIKK21zZ3N0ciAiIgorImhhciBkdSByZWRhbiBjaGVja2F0IGluP1xuIgorInRlc3RhIFwiZ2l0ICVzIC0tY29udGludWVcIiIKKworIzogc2VxdWVuY2VyLmM6MzAwMyBzZXF1ZW5jZXIuYzo0MDExCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB1cGRhdGUgJXMiCiBtc2dzdHIgImt1bmRlIGludGUgdXBwZGF0ZXJhICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzQ3IHNlcXVlbmNlci5jOjM2NTkKKyM6IHNlcXVlbmNlci5jOjMwNDIgc2VxdWVuY2VyLmM6Mzk5MQogbXNnaWQgImNhbm5vdCByZWFkIEhFQUQiCiBtc2dzdHIgImthbiBpbnRlIGzDpHNhIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjI3NjIKKyM6IHNlcXVlbmNlci5jOjMwNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNvcHkgJyVzJyB0byAnJXMnIgogbXNnc3RyICJrYW4gaW50ZSBrb3BpZXJhIGluIFwiJXNcIiB0aWxsIFwiJXNcIiIKIAotIzogc2VxdWVuY2VyLmM6Mjc3MAorIzogc2VxdWVuY2VyLmM6MzA2NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGNhbiBhbWVuZCB0aGUgY29tbWl0IG5vdywgd2l0aFxuIgpAQCAtNTA4NiwyNyArNzA3NywyMiBAQAogIlxuIgogIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI3ODAKKyM6IHNlcXVlbmNlci5jOjMwNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICVzLi4uICUuKnMiCiBtc2dzdHIgIkt1bmRlIGludGUgdGlsbMOkbXBhICVzLi4uICUuKnMiCiAKLSM6IHNlcXVlbmNlci5jOjI3ODcKKyM6IHNlcXVlbmNlci5jOjMwODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IG1lcmdlICUuKnMiCiBtc2dzdHIgIkt1bmRlIGludGUgc2zDpSBpaG9wICUuKnMiCiAKLSM6IHNlcXVlbmNlci5jOjI3OTggc2VxdWVuY2VyLmM6MjgwMiBidWlsdGluL2RpZmZ0b29sLmM6NjQwCisjOiBzZXF1ZW5jZXIuYzozMDk4IHNlcXVlbmNlci5jOjMxMDIgYnVpbHRpbi9kaWZmdG9vbC5jOjY0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcyciCiBtc2dzdHIgImt1bmRlIGludGUga29waWVyYSBpbiBcIiVzXCIgdGlsbCBcIiVzXCIiCiAKLSM6IHNlcXVlbmNlci5jOjI4MjQgc2VxdWVuY2VyLmM6MzI0MiBidWlsdGluL3JlYmFzZS5jOjU4MCBidWlsdGluL3JlYmFzZS5jOjEwMTkKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTM3MiBidWlsdGluL3JlYmFzZS5jOjE0MjYKLW1zZ2lkICJjb3VsZCBub3QgcmVhZCBpbmRleCIKLW1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBpbmRleGV0IgotCi0jOiBzZXF1ZW5jZXIuYzoyODI5CisjOiBzZXF1ZW5jZXIuYzozMTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleGVjdXRpb24gZmFpbGVkOiAlc1xuIgpAQCAtNTEyMSwxMSArNzEwNywxMSBAQAogIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAiXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI4MzUKKyM6IHNlcXVlbmNlci5jOjMxMzUKIG1zZ2lkICJhbmQgbWFkZSBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZVxuIgogbXNnc3RyICJvY2ggZ2pvcmRlIMOkbmRyaW5nYXIgdGlsbCBpbmRleGV0IG9jaC9lbGxlciBhcmJldHNrYXRhbG9nZW5cbiIKIAotIzogc2VxdWVuY2VyLmM6Mjg0MQorIzogc2VxdWVuY2VyLmM6MzE0MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhlY3V0aW9uIHN1Y2NlZWRlZDogJXNcbiIKQEAgLTUxNDIsNzYgKzcxMjgsNzIgQEAKICJcdGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogIlxuIgogCi0jOiBzZXF1ZW5jZXIuYzoyOTAyCisjOiBzZXF1ZW5jZXIuYzozMjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImlsbGVnYWwgbGFiZWwgbmFtZTogJyUuKnMnIgogbXNnc3RyICJvZ2lsdGlndCBldGlrZXR0bmFtbjogXCIlLipzXCIiCiAKLSM6IHNlcXVlbmNlci5jOjI5NTQKKyM6IHNlcXVlbmNlci5jOjMyNTYKIG1zZ2lkICJ3cml0aW5nIGZha2Ugcm9vdCBjb21taXQiCiBtc2dzdHIgInNrcml2ZXIgZmVqa2FkIHJvdGluY2hlY2tuaW5nIgogCi0jOiBzZXF1ZW5jZXIuYzoyOTU5CisjOiBzZXF1ZW5jZXIuYzozMjYxCiBtc2dpZCAid3JpdGluZyBzcXVhc2gtb250byIKIG1zZ3N0ciAic2tyaXZlciBzcXVhc2gtb250byIKIAotIzogc2VxdWVuY2VyLmM6Mjk5NyBidWlsdGluL3JlYmFzZS5jOjU4NSBidWlsdGluL3JlYmFzZS5jOjU5MQorIzogc2VxdWVuY2VyLmM6MzI5OSBidWlsdGluL3JlYmFzZS5jOjg4MCBidWlsdGluL3JlYmFzZS5jOjg4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIGhpdHRhIHRyw6RkZXQgZsO2ciAlcy4iCiAKLSM6IHNlcXVlbmNlci5jOjMwMTUgYnVpbHRpbi9yZWJhc2UuYzo2MDQKLW1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgaW5kZXgiCi1tc2dzdHIgImt1bmRlIGludGUgc2tyaXZhIGluZGV4ZXQiCi0KLSM6IHNlcXVlbmNlci5jOjMwNDIKKyM6IHNlcXVlbmNlci5jOjMzNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSB1cHBsw7ZzYSBcIiVzXCIiCiAKLSM6IHNlcXVlbmNlci5jOjMwNjgKKyM6IHNlcXVlbmNlci5jOjMzNzUKIG1zZ2lkICJjYW5ub3QgbWVyZ2Ugd2l0aG91dCBhIGN1cnJlbnQgcmV2aXNpb24iCiBtc2dzdHIgImthbiBpbnRlIHNsw6UgaWhvcCB1dGFuIGVuIGFrdHVlbGwgaW5jaGVja25pbmciCiAKLSM6IHNlcXVlbmNlci5jOjMwOTAKKyM6IHNlcXVlbmNlci5jOjMzOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICclLipzJyIKIG1zZ3N0ciAia2FuIGludGUgdG9sa2EgXCIlLipzXCIiCiAKLSM6IHNlcXVlbmNlci5jOjMwOTkKKyM6IHNlcXVlbmNlci5jOjM0MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBtZXJnZTogJyUuKnMnIgogbXNnc3RyICJpbmdldCBhdHQgc2zDpSBzYW1tYW46IFwiJS4qc1wiIgogCi0jOiBzZXF1ZW5jZXIuYzozMTExCisjOiBzZXF1ZW5jZXIuYzozNDE4CiBtc2dpZCAib2N0b3B1cyBtZXJnZSBjYW5ub3QgYmUgZXhlY3V0ZWQgb24gdG9wIG9mIGEgW25ldyByb290XSIKIG1zZ3N0ciAiXCJvY3RvcHVzXCItc2FtbWFuc2xhZ25pbmcga2FuIGludGUga8O2cmFzIG92YW5ww6UgZW4gW255IHJvdF0iCiAKLSM6IHNlcXVlbmNlci5jOjMxMjYKKyM6IHNlcXVlbmNlci5jOjM0MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCBjb21taXQgbWVzc2FnZSBvZiAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIGluY2hlY2tuaW5nc21lZGRlbGFuZGUgZsO2ciBcIiVzXCIiCiAKLSM6IHNlcXVlbmNlci5jOjMyNzQKKyM6IHNlcXVlbmNlci5jOjM1OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGV2ZW4gYXR0ZW1wdCB0byBtZXJnZSAnJS4qcyciCiBtc2dzdHIgImt1bmRlIGludGUgZW5zIGbDtnJzw7ZrYSBzbMOlIGlob3AgXCIlLipzXCIiCiAKLSM6IHNlcXVlbmNlci5jOjMyOTAKKyM6IHNlcXVlbmNlci5jOjM2MTAKIG1zZ2lkICJtZXJnZTogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgogbXNnc3RyICJzYW1tYW5zbGFnbmluZzogS3VuZGUgaW50ZSBza3JpdmEgbnkgaW5kZXhmaWwiCiAKLSM6IHNlcXVlbmNlci5jOjMzNTggYnVpbHRpbi9yZWJhc2UuYzoyNjgKKyM6IHNlcXVlbmNlci5jOjM2NzkgYnVpbHRpbi9yZWJhc2UuYzo3MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guXG4iCiBtc2dzdHIgIlRpbGzDpG1wYWRlIGF1dG9zdGFzaC5cbiIKIAotIzogc2VxdWVuY2VyLmM6MzM3MAorIzogc2VxdWVuY2VyLmM6MzY5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RvcmUgJXMiCiBtc2dzdHIgImthbiBpbnRlIHNwYXJhICVzIgogCi0jOiBzZXF1ZW5jZXIuYzozMzczIGJ1aWx0aW4vcmViYXNlLmM6Mjg0CisjOiBzZXF1ZW5jZXIuYzozNjk0IGJ1aWx0aW4vcmViYXNlLmM6NzUzIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkFwcGx5aW5nIGF1dG9zdGFzaCByZXN1bHRlZCBpbiBjb25mbGljdHMuXG4iCkBAIC01MjIyLDMxICs3MjA0LDI2IEBACiAiRGluYSDDpG5kcmluZ2FyIMOkciBzw6RrcmEgaSBzdGFzaGVuLlxuIgogIkR1IGthbiBuw6RyIHNvbSBoZWxzdCBhbnbDpG5kYSBcImdpdCBzdGFzaCBwb3BcIiBlbGxlciBcImdpdCBzdGFzaCBkcm9wXCIuXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM0MjcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IGNoZWNrb3V0ICVzIgotbXNnc3RyICJrdW5kZSBpbnRlIGNoZWNrYSB1dCAlcyIKLQotIzogc2VxdWVuY2VyLmM6MzQ0MQorIzogc2VxdWVuY2VyLmM6Mzc1NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogbm90IGEgdmFsaWQgT0lEIgogbXNnc3RyICIlczogaW50ZSBldHQgZ2lsdGlndCBPSUQiCiAKLSM6IHNlcXVlbmNlci5jOjM0NDYgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcyNAorIzogc2VxdWVuY2VyLmM6Mzc2MCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzc5CiBtc2dpZCAiY291bGQgbm90IGRldGFjaCBIRUFEIgogbXNnc3RyICJrdW5kZSBpbnRlIGtvcHBsYSBmcsOlbiBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzozNDYxCisjOiBzZXF1ZW5jZXIuYzozNzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN0b3BwZWQgYXQgSEVBRFxuIgogbXNnc3RyICJTdG9wcGFkZSBww6UgSEVBRFxuIgogCi0jOiBzZXF1ZW5jZXIuYzozNDYzCisjOiBzZXF1ZW5jZXIuYzozNzc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN0b3BwZWQgYXQgJXNcbiIKIG1zZ3N0ciAiU3RvcHBhZGUgcMOlICVzXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM0NzEKKyM6IHNlcXVlbmNlci5jOjM3ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNvdWxkIG5vdCBleGVjdXRlIHRoZSB0b2RvIGNvbW1hbmRcbiIKQEAgLTUyNjcsNDggKzcyNDQsNDggQEAKICIgICAgZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb1xuIgogIiAgICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKIAotIzogc2VxdWVuY2VyLmM6MzU0MworIzogc2VxdWVuY2VyLmM6Mzg2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTdG9wcGVkIGF0ICVzLi4uICAlLipzXG4iCiBtc2dzdHIgIlN0b3BwYWRlIHDDpSAlcy4uLiAlLipzXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM2MjIKKyM6IHNlcXVlbmNlci5jOjM5NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBjb21tYW5kICVkIgogbXNnc3RyICJva8OkbnQga29tbWFuZG8gJWQiCiAKLSM6IHNlcXVlbmNlci5jOjM2NjcKKyM6IHNlcXVlbmNlci5jOjM5OTkKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBvcmlnLWhlYWQiCiBtc2dzdHIgImt1bmRlIGludGUgbMOkc2Egb3JpZy1oZWFkIgogCi0jOiBzZXF1ZW5jZXIuYzozNjcyIHNlcXVlbmNlci5jOjQ3NDEKKyM6IHNlcXVlbmNlci5jOjQwMDQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCAnb250byciCiBtc2dzdHIgImt1bmRlIGludGUgbMOkc2EgXCJvbnRvXCIiCiAKLSM6IHNlcXVlbmNlci5jOjM2ODYKKyM6IHNlcXVlbmNlci5jOjQwMTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHVwZGF0ZSBIRUFEIHRvICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIHVwcGRhdGVyYSBIRUFEIHRpbGwgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjM3NzIKKyM6IHNlcXVlbmNlci5jOjQxMTEKIG1zZ2lkICJjYW5ub3QgcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAia2FuIGludGUgb21iYXNlcmE6IER1IGhhciBva8O2YWRlIMOkbmRyaW5nYXIuIgogCi0jOiBzZXF1ZW5jZXIuYzozNzgxCisjOiBzZXF1ZW5jZXIuYzo0MTIwCiBtc2dpZCAiY2Fubm90IGFtZW5kIG5vbi1leGlzdGluZyBjb21taXQiCiBtc2dzdHIgImthbiBpbnRlIGzDpGdnYSB0aWxsIGluY2hlY2tuaW5nIHNvbSBpbnRlIGZpbm5zIgogCi0jOiBzZXF1ZW5jZXIuYzozNzgzCisjOiBzZXF1ZW5jZXIuYzo0MTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZmlsZTogJyVzJyIKIG1zZ3N0ciAib2dpbHRpZyBmaWw6IFwiJXNcIiIKIAotIzogc2VxdWVuY2VyLmM6Mzc4NQorIzogc2VxdWVuY2VyLmM6NDEyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbnRlbnRzOiAnJXMnIgogbXNnc3RyICJvZ2lsdGlndCBpbm5laMOlbGw6IFwiJXNcIiIKIAotIzogc2VxdWVuY2VyLmM6Mzc4OAorIzogc2VxdWVuY2VyLmM6NDEyNwogbXNnaWQgIiIKICJcbiIKICJZb3UgaGF2ZSB1bmNvbW1pdHRlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLiBQbGVhc2UsIGNvbW1pdCB0aGVtXG4iCkBAIC01MzE2LDEyOSArNzI5Myw2MSBAQAogbXNnc3RyICIiCiAiXG4iCiAiRHUgaGFyIMOkbmRyaW5nYXIgaSBhcmJldHNrYXRhbG9nZW4gc29tIGludGUgY2hlY2thdHMgaW4uIENoZWNrYSBpbiBkZW1cbiIKLSJmw7Zyc3Qgb2NoIGvDtnIgc2VkYW4gXCJnaXQgcmViYXNlIC0tY29udGludXRlXCIgaWdlbi4iCisiZsO2cnN0IG9jaCBrw7ZyIHNlZGFuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIgaWdlbi4iCiAKLSM6IHNlcXVlbmNlci5jOjM4MjQgc2VxdWVuY2VyLmM6Mzg2MgorIzogc2VxdWVuY2VyLmM6NDE2MyBzZXF1ZW5jZXIuYzo0MjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBmaWxlOiAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSBmaWw6IFwiJXNcIiIKIAotIzogc2VxdWVuY2VyLmM6Mzg3NworIzogc2VxdWVuY2VyLmM6NDIxNwogbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgQ0hFUlJZX1BJQ0tfSEVBRCIKIG1zZ3N0ciAia3VuZGUgaW50ZSB0YSBib3J0IENIRVJSWV9QSUNLX0hFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjM4ODQKKyM6IHNlcXVlbmNlci5jOjQyMjQKIG1zZ2lkICJjb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAia3VuZGUgaW50ZSBjaGVja2EgaW4ga8O2YWRlIMOkbmRyaW5nYXIuIgogCi0jOiBzZXF1ZW5jZXIuYzozOTgyCisjOiBzZXF1ZW5jZXIuYzo0MzM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjYW4ndCBjaGVycnktcGljayBhICVzIgotbXNnc3RyICIlczoga2FuIGludGUgZ8O2cmEgXCJjaGVycnktcGlja1wiIHDDpSB0eXBlbiDigJ0lc+KAnSIKK21zZ3N0ciAiJXM6IGthbiBpbnRlIGfDtnJhIFwiY2hlcnJ5LXBpY2tcIiBww6UgdHlwZW4gXCIlc1wiIgogCi0jOiBzZXF1ZW5jZXIuYzozOTg2CisjOiBzZXF1ZW5jZXIuYzo0MzQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBiYWQgcmV2aXNpb24iCiBtc2dzdHIgIiVzOiBmZWxha3RpZyByZXZpc2lvbiIKIAotIzogc2VxdWVuY2VyLmM6NDAyMQorIzogc2VxdWVuY2VyLmM6NDM3NwogbXNnaWQgImNhbid0IHJldmVydCBhcyBpbml0aWFsIGNvbW1pdCIKIG1zZ3N0ciAia2FuIGludGUgw6VuZ3JhIHNvbSBmw7Zyc3RhIGluY2hlY2tuaW5nIgogCi0jOiBzZXF1ZW5jZXIuYzo0NDY2CisjOiBzZXF1ZW5jZXIuYzo0ODQ2CiBtc2dpZCAibWFrZV9zY3JpcHQ6IHVuaGFuZGxlZCBvcHRpb25zIgogbXNnc3RyICJtYWtlX3NjcmlwdDogZmxhZ2dvciBzb20gaW50ZSBzdMO2ZHMiCiAKLSM6IHNlcXVlbmNlci5jOjQ0NjkKKyM6IHNlcXVlbmNlci5jOjQ4NDkKIG1zZ2lkICJtYWtlX3NjcmlwdDogZXJyb3IgcHJlcGFyaW5nIHJldmlzaW9ucyIKIG1zZ3N0ciAibWFrZV9zY3JpcHQ6IGZlbCBuw6RyIHJldmlzaW9uZXIgc2t1bGxlIGbDtnJiZXJlZGFzIgogCi0jOiBzZXF1ZW5jZXIuYzo0NTA5IHNlcXVlbmNlci5jOjQ1NjUgc2VxdWVuY2VyLmM6NDg0MAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bnVzYWJsZSB0b2RvIGxpc3Q6ICclcyciCi1tc2dzdHIgIm9hbnbDpG5kYmFyIHRvZG8tbGlzdGE6ICVzIgotCi0jOiBzZXF1ZW5jZXIuYzo0NjIwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJ1bnJlY29nbml6ZWQgc2V0dGluZyAlcyBmb3Igb3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmluZy4iCi1tc2dzdHIgIiIKLSJva8OkbmQgaW5zdMOkbGxuaW5nICVzIGbDtnIgZmxhZ2dhbiByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4gSWdub3JlcmFyLiIKLQotIzogc2VxdWVuY2VyLmM6NDY5MAotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCi0iRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCi1tc2dzdHIgIiIKLSJWYXJuaW5nOiB2aXNzYSBpbmNoZWNrbmluZ2FyIGthbiBhdiBtaXNzdGFnIGhhIHRhcHBhdHMuXG4iCi0iVGFwcGFkZSBpbmNoZWNrbmluZ2FyIChueWFzdGUgZsO2cnN0KTpcbiIKLQotIzogc2VxdWVuY2VyLmM6NDY5NwotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iVG8gYXZvaWQgdGhpcyBtZXNzYWdlLCB1c2UgXCJkcm9wXCIgdG8gZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuXG4iCi0iXG4iCi0iVXNlICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyB0byBjaGFuZ2UgdGhlIGxldmVsIG9mICIKLSJ3YXJuaW5ncy5cbiIKLSJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCi0iXG4iCi1tc2dzdHIgIiIKLSJGw7ZyIGF0dCB1bmR2aWthIGRldCBow6RyIG1lZGRlbGFuZGV0IGthbiBkdSBhbnbDpG5kYSBcImRyb3BcIiBmw7ZyIGF0dCAiCi0iZXhwbGljaXRcbiIKLSJrYXN0YSBlbiBpbmNoZWNrbmluZy5cbiIKLSJcbiIKLSJBbnbDpG5kIFwiZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVja1wiIGbDtnIgYXR0IMOkbmRyYSAiCi0idmFybmluZ3NuaXbDpW4uXG4iCi0iTcO2amxpZ2EgYmV0dGVuZGVuIMOkcjogXCJpZ25vcmVcIiAoaWdub3JlcmEpLCBcIndhcm5cIiAodmFybmEpLCBcImVycm9yIgotIlwiIChmZWwpLlxuIgotIlxuIgotCi0jOiBzZXF1ZW5jZXIuYzo0NzEwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJZb3UgY2FuIGZpeCB0aGlzIHdpdGggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLSIKLSJjb250aW51ZScuXG4iCi0iT3IgeW91IGNhbiBhYm9ydCB0aGUgcmViYXNlIHdpdGggJ2dpdCByZWJhc2UgLS1hYm9ydCcuXG4iCi1tc2dzdHIgIiIKLSJEdSBrYW4gcsOkdHRhIGRldHRhIG1lZCBcImdpdCByZWJhc2UgLS1lZGl0LXRvZG9cIiBmw7ZsanQgYXYgXCJnaXQgcmViYXNlIC0tIgotImNvbnRpbnVlXCIuXG4iCi0iQXZicnl0IG9tYmFzZXJpbmdlbiBtZWQgXCJnaXQgcmViYXNlIC0tYWJvcnRcIi5cbiIKLQotIzogc2VxdWVuY2VyLmM6NDg0OCBzZXF1ZW5jZXIuYzo0ODg2CisjOiBzZXF1ZW5jZXIuYzo1MDgzIHNlcXVlbmNlci5jOjUxMDAKIG1zZ2lkICJub3RoaW5nIHRvIGRvIgogbXNnc3RyICJpbmdldCBhdHQgZ8O2cmEiCiAKLSM6IHNlcXVlbmNlci5jOjQ4NTIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmQpIgotbXNnaWRfcGx1cmFsICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZHMpIgotbXNnc3RyWzBdICJPbWJhc2VyYSAlcyBww6UgJXMgKCVkIGtvbW1hbmRvKSIKLW1zZ3N0clsxXSAiT21iYXNlcmEgJXMgcMOlICVzICglZCBrb21tYW5kb24pIgotCi0jOiBzZXF1ZW5jZXIuYzo0ODY0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBjb3B5ICclcycgdG8gJyVzJy4iCi1tc2dzdHIgImt1bmRlIGludGUga29waWVyYSBcIiVzXCIgdGlsbCBcIiVzXCIuIgotCi0jOiBzZXF1ZW5jZXIuYzo0ODY4IHNlcXVlbmNlci5jOjQ4OTcKLW1zZ2lkICJjb3VsZCBub3QgdHJhbnNmb3JtIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgImt1bmRlIGludGUgdHJhbnNmb3JtZXJhIGF0dCBnw7ZyYS1saXN0YW4iCi0KLSM6IHNlcXVlbmNlci5jOjQ5MDAKKyM6IHNlcXVlbmNlci5jOjUxMTkKIG1zZ2lkICJjb3VsZCBub3Qgc2tpcCB1bm5lY2Vzc2FyeSBwaWNrIGNvbW1hbmRzIgogbXNnc3RyICJrdW5kZSBpbnRlIGhvcHBhIMO2dmVyIG9uw7ZkaWdhIFwicGlja1wiLWtvbW1hbmRvbiIKIAotIzogc2VxdWVuY2VyLmM6NDk4MworIzogc2VxdWVuY2VyLmM6NTIxMwogbXNnaWQgInRoZSBzY3JpcHQgd2FzIGFscmVhZHkgcmVhcnJhbmdlZC4iCiBtc2dzdHIgInNrcmlwdGV0IGhhciByZWRhbiBvbW9yZG5hdHMuIgogCi0jOiBzZXR1cC5jOjEyMworIzogc2V0dXAuYzoxMjQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkiCi1tc2dzdHIgIlwiJXNcIiDDpHIgdXRhbmbDtnIgYXJraXZldCIKK21zZ2lkICInJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSBhdCAnJXMnIgorbXNnc3RyICJcIiVzXCIgw6RyIHV0YW5mw7ZyIGFya2l2ZXQgcMOlIFwiJXNcIiIKIAotIzogc2V0dXAuYzoxNzIKKyM6IHNldHVwLmM6MTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIlczogbm8gc3VjaCBwYXRoIGluIHRoZSB3b3JraW5nIHRyZWUuXG4iCkBAIC01NDQ4LDcgKzczNTcsNyBAQAogIkFudsOkbmQgXCJnaXQgPGtvbW1hbmRvPiAtLSA8c8O2a3bDpGc+Li5cIiBmw7ZyIGF0dCBhbmdlIHPDtmt2w6RnYXIgc29tIGludGUgZmlubnMgIgogImxva2FsdC4iCiAKLSM6IHNldHVwLmM6MTg1CisjOiBzZXR1cC5jOjE4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IHVua25vd24gcmV2aXNpb24gb3IgcGF0aCBub3QgaW4gdGhlIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTU0NjAsMTIgKzczNjksMTIgQEAKICJBbnbDpG5kIFwiLS1cIiBmw7ZyIGF0dCBza2lsamEgc8O2a3bDpGdhciBmcsOlbiByZXZpc2lvbmVyLCBzw6UgaMOkcjpcbiIKICJcImdpdCA8a29tbWFuZG8+IFs8cmV2aXNpb24+Li4uXSAtLSBbPGZpbD4uLi5dXCIiCiAKLSM6IHNldHVwLmM6MjM0CisjOiBzZXR1cC5jOjI1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJvcHRpb24gJyVzJyBtdXN0IGNvbWUgYmVmb3JlIG5vbi1vcHRpb24gYXJndW1lbnRzIgogbXNnc3RyICJmbGFnZ2FuIFwiJXNcIiBtw6VzdGUgYW5nZXMgZsO2cmUgYXJndW1lbnQgc29tIGludGUgw6RyIGZsYWdnb3IiCiAKLSM6IHNldHVwLmM6MjUzCisjOiBzZXR1cC5jOjI3MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IGJvdGggcmV2aXNpb24gYW5kIGZpbGVuYW1lXG4iCkBAIC01NDc2LDkyICs3Mzg1LDkyIEBACiAiQW52w6RuZCBcIi0tXCIgZsO2ciBhdHQgc2tpbGphIHPDtmt2w6RnYXIgZnLDpW4gcmV2aXNpb25lciwgc8OlIGjDpHI6XG4iCiAiXCJnaXQgPGtvbW1hbmRvPiBbPHJldmlzaW9uPi4uLl0gLS0gWzxmaWw+Li4uXVwiIgogCi0jOiBzZXR1cC5jOjM4OQorIzogc2V0dXAuYzo0MDkKIG1zZ2lkICJ1bmFibGUgdG8gc2V0IHVwIHdvcmsgdHJlZSB1c2luZyBpbnZhbGlkIGNvbmZpZyIKIG1zZ3N0ciAia2FuIGludGUgc2thcGEgYXJiZXRza2F0YWxvZyBtZWQgZmVsYWt0aWcga29uZmlndXJhdGlvbiIKIAotIzogc2V0dXAuYzozOTMKKyM6IHNldHVwLmM6NDEzCiBtc2dpZCAidGhpcyBvcGVyYXRpb24gbXVzdCBiZSBydW4gaW4gYSB3b3JrIHRyZWUiCiBtc2dzdHIgImZ1bmt0aW9uZW4gbcOlc3RlIGvDtnJhcyBpIGVuIGFyYmV0c2thdGFsb2ciCiAKLSM6IHNldHVwLmM6NTI3CisjOiBzZXR1cC5jOjU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJFeHBlY3RlZCBnaXQgcmVwbyB2ZXJzaW9uIDw9ICVkLCBmb3VuZCAlZCIKIG1zZ3N0ciAiRsO2cnbDpG50YWRlIGdpdC1hcmtpdnZlcnNpb24gPD0gJWQsIGhpdHRhZGUgJWQiCiAKLSM6IHNldHVwLmM6NTM1CisjOiBzZXR1cC5jOjU2NwogbXNnaWQgInVua25vd24gcmVwb3NpdG9yeSBleHRlbnNpb25zIGZvdW5kOiIKIG1zZ3N0ciAib2vDpG5kYSBhcmtpdnV0w7ZrbmluZ2FyIGhpdHRhZGVzOiIKIAotIzogc2V0dXAuYzo1NTQKKyM6IHNldHVwLmM6NTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIG9wZW5pbmcgJyVzJyIKIG1zZ3N0ciAiZmVsIHZpZCDDtnBwbmluZyBhdiBcIiVzXCIiCiAKLSM6IHNldHVwLmM6NTU2CisjOiBzZXR1cC5jOjU4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ0b28gbGFyZ2UgdG8gYmUgYSAuZ2l0IGZpbGU6ICclcyciCiBtc2dzdHIgImbDtnIgc3RvciBmw7ZyIGF0dCB2YXJhIGVuIC5naXQtZmlsOiBcIiVzXCIiCiAKLSM6IHNldHVwLmM6NTU4CisjOiBzZXR1cC5jOjU5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciByZWFkaW5nICVzIgogbXNnc3RyICJmZWwgdmlkIGzDpHNuaW5nIGF2ICVzIgogCi0jOiBzZXR1cC5jOjU2MAorIzogc2V0dXAuYzo1OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBnaXRmaWxlIGZvcm1hdDogJXMiCiBtc2dzdHIgIm9naWx0aWd0IGdpdGZpbGZvcm1hdDogJXMiCiAKLSM6IHNldHVwLmM6NTYyCisjOiBzZXR1cC5jOjU5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBwYXRoIGluIGdpdGZpbGU6ICVzIgogbXNnc3RyICJpbmdlbiBzw7ZrdsOkZyBpIGdpdGZpbDogJXMiCiAKLSM6IHNldHVwLmM6NTY0CisjOiBzZXR1cC5jOjU5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeTogJXMiCiBtc2dzdHIgImludGUgZXR0IGdpdC1hcmtpdjogJXMiCiAKLSM6IHNldHVwLmM6NjYzCisjOiBzZXR1cC5jOjY5NQogIywgYy1mb3JtYXQKIG1zZ2lkICInJCVzJyB0b28gYmlnIgogbXNnc3RyICJcIiQlc1wiIGbDtnIgc3RvciIKIAotIzogc2V0dXAuYzo2NzcKKyM6IHNldHVwLmM6NzA5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5OiAnJXMnIgogbXNnc3RyICJpbnRlIGV0dCBnaXQtYXJraXY6IFwiJXNcIiIKIAotIzogc2V0dXAuYzo3MDYgc2V0dXAuYzo3MDggc2V0dXAuYzo3MzkKKyM6IHNldHVwLmM6NzM4IHNldHVwLmM6NzQwIHNldHVwLmM6NzcxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGRpciB0byAnJXMnIgogbXNnc3RyICJrYW4gaW50ZSBieXRhIGthdGFsb2cgKGNoZGlyKSB0aWxsIFwiJXNcIiIKIAotIzogc2V0dXAuYzo3MTEgc2V0dXAuYzo3Njcgc2V0dXAuYzo3Nzcgc2V0dXAuYzo4MTYgc2V0dXAuYzo4MjQgc2V0dXAuYzo4MzkKKyM6IHNldHVwLmM6NzQzIHNldHVwLmM6Nzk5IHNldHVwLmM6ODA5IHNldHVwLmM6ODQ4IHNldHVwLmM6ODU2CiBtc2dpZCAiY2Fubm90IGNvbWUgYmFjayB0byBjd2QiCiBtc2dzdHIgImthbiBpbnRlIGfDpSB0aWxsYmFrYSB0aWxsIGFyYmV0c2thdGFsb2dlbiAoY3dkKSIKIAotIzogc2V0dXAuYzo4MzcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBvZiB0aGUgcGFyZW50IGRpcmVjdG9yaWVzKTogJXMiCi1tc2dzdHIgImludGUgZXR0IGdpdC1hcmtpdiAoZWxsZXIgbsOlZ29uIGF2IGbDtnLDpGxkcmFrYXRhbG9nZXJuYSk6ICVzIgotCi0jOiBzZXR1cC5jOjg0OAorIzogc2V0dXAuYzo4NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0YXQgJyUqcyVzJXMnIgogbXNnc3RyICJtaXNzbHlja2FkZXMgdGEgc3RhdHVzIHDDpSBcIiUqc3MlcyVzXCIiCiAKLSM6IHNldHVwLmM6MTA3OAorIzogc2V0dXAuYzoxMTA4CiBtc2dpZCAiVW5hYmxlIHRvIHJlYWQgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAiS2FuIGludGUgbMOkc2EgYWt0dWVsbCBhcmJldHNrYXRhbG9nIgogCi0jOiBzZXR1cC5jOjEwOTAgc2V0dXAuYzoxMDk2CisjOiBzZXR1cC5jOjExMTcgc2V0dXAuYzoxMTIzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGFuZ2UgdG8gJyVzJyIKIG1zZ3N0ciAia2FuIGludGUgYnl0YSB0aWxsIFwiJXNcIiIKIAotIzogc2V0dXAuYzoxMTA5CisjOiBzZXR1cC5jOjExMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBvZiB0aGUgcGFyZW50IGRpcmVjdG9yaWVzKTogJXMiCittc2dzdHIgImludGUgZXR0IGdpdC1hcmtpdiAoZWxsZXIgbsOlZ29uIGF2IGbDtnLDpGxkcmFrYXRhbG9nZXJuYSk6ICVzIgorCisjOiBzZXR1cC5jOjExMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgcGFyZW50IHVwIHRvIG1vdW50IHBvaW50ICVzKVxuIgpAQCAtNTU3MSw3ICs3NDgwLDcgQEAKICJtb250ZXJpbmdzcHVua3RlbiAlcylcbiIKICJTdG9wcGFyIHZpZCBmaWxzeXN0ZW1zZ3LDpG5zIChHSVRfRElTQ09WRVJZX0FDUk9TU19GSUxFU1lTVEVNIMOkciBpbnRlIHNhdHQpLiIKIAotIzogc2V0dXAuYzoxMTkyCisjOiBzZXR1cC5jOjEyNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInByb2JsZW0gd2l0aCBjb3JlLnNoYXJlZFJlcG9zaXRvcnkgZmlsZW1vZGUgdmFsdWUgKDAlLjNvKS5cbiIKQEAgLTU1ODAsMjg0ICs3NDg5LDI4OSBAQAogInByb2JsZW0gbWVkIGZpbGzDpGdlcy12w6RyZGV0IGkgY29yZS5zaGFyZWRSZXBvc2l0b3J5ICgwJS4zbykuXG4iCiAiw4RnYXJlbiBhdiBmaWxlcm5hIG3DpXN0ZSBhbGx0aWQgaGEgbMOkcy0gb2NoIHNrcml2YmVow7ZyaWdoZXQuIgogCi0jOiBzZXR1cC5jOjEyMzUKKyM6IHNldHVwLmM6MTI4OQogbXNnaWQgIm9wZW4gL2Rldi9udWxsIG9yIGR1cCBmYWlsZWQiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyDDtnBwbmEgL2Rldi9udWxsIGVsbGVyIFwiZHVwXCIiCiAKLSM6IHNldHVwLmM6MTI1MAorIzogc2V0dXAuYzoxMzA0CiBtc2dpZCAiZm9yayBmYWlsZWQiCiBtc2dzdHIgIlwiZm9ya1wiIG1pc3NseWNrYWRlcyIKIAotIzogc2V0dXAuYzoxMjU1CisjOiBzZXR1cC5jOjEzMDkKIG1zZ2lkICJzZXRzaWQgZmFpbGVkIgogbXNnc3RyICJcInNldHNpZFwiIG1pc3NseWNrYWRlcyIKIAotIzogc2hhMS1maWxlLmM6MzgxCisjOiBzaGExLWZpbGUuYzo0NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IGRpcmVjdG9yeSAlcyBkb2VzIG5vdCBleGlzdDsgY2hlY2sgLmdpdC9vYmplY3RzL2luZm8vYWx0ZXJuYXRlcyIKIG1zZ3N0ciAib2JqZWt0a2F0YWxvZ2VuICVzIGZpbm5zIGludGU7IHNlIC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiCiAKLSM6IHNoYTEtZmlsZS5jOjQzMgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gbm9ybWFsaXplIGFsdGVybmF0ZSBvYmplY3QgcGF0aDogJXMiCi1tc2dzdHIgImt1bmRlIGludGUgbm9ybWFsaXNlcmEgYWx0ZXJuYXRpdiBvYmpla3Rzw7ZrdsOkZzogJXMiCi0KICM6IHNoYTEtZmlsZS5jOjUwMwogIywgYy1mb3JtYXQKLW1zZ2lkICIlczogaWdub3JpbmcgYWx0ZXJuYXRlIG9iamVjdCBzdG9yZXMsIG5lc3RpbmcgdG9vIGRlZXAiCi1tc2dzdHIgIiVzOiBpZ25vcmVyYXIgYWx0ZXJuYXRpdmEgb2JqZWt0bGFncmluZ2FyLCBmw7ZyIGRqdXAgbsOkc3RsaW5nIgorbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgYWx0ZXJuYXRlIG9iamVjdCBwYXRoOiAlcyIKK21zZ3N0ciAia3VuZGUgaW50ZSBub3JtYWxpc2VyYSBzdXBwbGVyYW5kZSBvYmpla3Rzw7ZrdsOkZzogJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjUxMAorIzogc2hhMS1maWxlLmM6NTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpZ25vcmluZyBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlcywgbmVzdGluZyB0b28gZGVlcCIKK21zZ3N0ciAiJXM6IGlnbm9yZXJhciBzdXBwbGVyYW5kZSBvYmpla3RsYWdlciwgZsO2ciBkanVwIG7DpHN0bGluZyIKKworIzogc2hhMS1maWxlLmM6NTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgb2JqZWN0IGRpcmVjdG9yeTogJXMiCiBtc2dzdHIgImthbiBpbnRlIG5vcm1hbGlzZXJhIG9iamVrdGthdGFsb2dlbjogJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjU2NQorIzogc2hhMS1maWxlLmM6NjI1CiBtc2dpZCAidW5hYmxlIHRvIGZkb3BlbiBhbHRlcm5hdGVzIGxvY2tmaWxlIgotbXNnc3RyICJrYW4gaW50ZSB1dGbDtnJhIFwiZmRvcGVuXCIgcMOlIGzDpXNmaWwgZsO2ciBcImFsdGVybmF0ZXNcIiIKK21zZ3N0ciAia2FuIGludGUgdXRmw7ZyYSBcImZkb3BlblwiIHDDpSBzdXBwbGVhbnRsw6VzZmlsIgogCi0jOiBzaGExLWZpbGUuYzo1ODMKKyM6IHNoYTEtZmlsZS5jOjY0MwogbXNnaWQgInVuYWJsZSB0byByZWFkIGFsdGVybmF0ZXMgZmlsZSIKIG1zZ3N0ciAia2FuIGludGUgbMOkc2EgXCJhbHRlcm5hdGVzXCItZmlsZW4iCiAKLSM6IHNoYTEtZmlsZS5jOjU5MAorIzogc2hhMS1maWxlLmM6NjUwCiBtc2dpZCAidW5hYmxlIHRvIG1vdmUgbmV3IGFsdGVybmF0ZXMgZmlsZSBpbnRvIHBsYWNlIgogbXNnc3RyICJrYW4gaW50ZSBmbHl0dGEgbnkgXCJhbHRlcm5hdGVzXCItZmlsIHDDpSBwbGF0cyIKIAotIzogc2hhMS1maWxlLmM6NjI1CisjOiBzaGExLWZpbGUuYzo2ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJzw7ZrdsOkZ2VuIFwiJXNcIiBmaW5ucyBpbnRlIgogCi0jOiBzaGExLWZpbGUuYzo2NTEKKyM6IHNoYTEtZmlsZS5jOjcxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGFzIGEgbGlua2VkIGNoZWNrb3V0IGlzIG5vdCBzdXBwb3J0ZWQgeWV0LiIKIG1zZ3N0ciAicmVmZXJlbnNhcmtpdmV0IFwiJXNcIiBzb20gZW4gbMOkbmthZCB1dGNoZWNrbmluZyBzdMO2ZHMgaW50ZSDDpG5udS4iCiAKLSM6IHNoYTEtZmlsZS5jOjY1NworIzogc2hhMS1maWxlLmM6NzE3CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgbm90IGEgbG9jYWwgcmVwb3NpdG9yeS4iCiBtc2dzdHIgInJlZmVyZW5zYXJraXZldCBcIiVzXCIgw6RyIGludGUgZXR0IGxva2FsdCBhcmtpdi4iCiAKLSM6IHNoYTEtZmlsZS5jOjY2MworIzogc2hhMS1maWxlLmM6NzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgc2hhbGxvdyIKIG1zZ3N0ciAicmVmZXJlbnNhcmtpdmV0IFwiJXNcIiDDpHIgZ3J1bnQiCiAKLSM6IHNoYTEtZmlsZS5jOjY3MQorIzogc2hhMS1maWxlLmM6NzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgZ3JhZnRlZCIKIG1zZ3N0ciAicmVmZXJlbnNhcmtpdmV0IFwiJXNcIiDDpHIgeW1wYXQiCiAKLSM6IHNoYTEtZmlsZS5jOjc4MQorIzogc2hhMS1maWxlLmM6NzkxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgbGluZSB3aGlsZSBwYXJzaW5nIGFsdGVybmF0ZSByZWZzOiAlcyIKK21zZ3N0ciAiZmVsYWt0aWcgcmFkIHZpZCB0b2xrbmluZyBhdiBzdXBwbGVyYW5kZSByZWZlcmVuc2VyOiAlcyIKKworIzogc2hhMS1maWxlLmM6OTQzCiAjLCBjLWZvcm1hdAogbXNnaWQgImF0dGVtcHRpbmcgdG8gbW1hcCAlPFBSSXVNQVg+IG92ZXIgbGltaXQgJTxQUkl1TUFYPiIKIG1zZ3N0ciAiZsO2cnPDtmsgYXR0IHV0ZsO2cmEgXCJtbWFwXCIgcMOlICU8UFJJdU1BWD4gw7Z2ZXIgZ3LDpG5zZW4gJTxQUkl1TUFYPiIKIAotIzogc2hhMS1maWxlLmM6ODA2CisjOiBzaGExLWZpbGUuYzo5NjQKIG1zZ2lkICJtbWFwIGZhaWxlZCIKIG1zZ3N0ciAibW1hcCBtaXNzbHlja2FkZXMiCiAKLSM6IHNoYTEtZmlsZS5jOjk3MworIzogc2hhMS1maWxlLmM6MTEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgZmlsZSAlcyBpcyBlbXB0eSIKIG1zZ3N0ciAib2JqZWt0ZmlsZW4gJXMgw6RyIHRvbSIKIAotIzogc2hhMS1maWxlLmM6MTA5MyBzaGExLWZpbGUuYzoyMjE1CisjOiBzaGExLWZpbGUuYzoxMjYzIHNoYTEtZmlsZS5jOjI0NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBsb29zZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAidHJhc2lndCBsw7ZzdCBvYmpla3QgXCIlc1wiIgogCi0jOiBzaGExLWZpbGUuYzoxMDk1IHNoYTEtZmlsZS5jOjIyMTkKKyM6IHNoYTEtZmlsZS5jOjEyNjUgc2hhMS1maWxlLmM6MjQ0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJnYXJiYWdlIGF0IGVuZCBvZiBsb29zZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAic2tyw6RwIGkgc2x1dGV0IGF2IGzDtnN0IG9iamVrdCBcIiVzXCIiCiAKLSM6IHNoYTEtZmlsZS5jOjExMzcKKyM6IHNoYTEtZmlsZS5jOjEzMDcKIG1zZ2lkICJpbnZhbGlkIG9iamVjdCB0eXBlIgogbXNnc3RyICJmZWxha3RpZyBvYmpla3R0eXAiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMTkKKyM6IHNoYTEtZmlsZS5jOjEzOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIKIG1zZ3N0ciAia2FuIGludGUgcGFja2EgdXBwICVzLWh1dnVkIG1lZCAtLWFsbG93LXVua25vd24tdHlwZSIKIAotIzogc2hhMS1maWxlLmM6MTIyMgorIzogc2hhMS1maWxlLmM6MTM5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5wYWNrICVzIGhlYWRlciIKIG1zZ3N0ciAia2FuIGludGUgcGFja2EgdXBwICVzLWh1dnVkZXQiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMjgKKyM6IHNoYTEtZmlsZS5jOjE0MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciB3aXRoIC0tYWxsb3ctdW5rbm93bi10eXBlIgogbXNnc3RyICJrYW4gaW50ZSB0b2xrYSAlcy1odXZ1ZCBtZWQgLS1hbGxvdy11bmtub3duLXR5cGUiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMzEKKyM6IHNoYTEtZmlsZS5jOjE0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciIKIG1zZ3N0ciAia2FuIGludGUgdG9sa2EgJXMtaHV2dWQiCiAKLSM6IHNoYTEtZmlsZS5jOjE0MjIKKyM6IHNoYTEtZmlsZS5jOjE2MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgb2JqZWN0ICVzIgogbXNnc3RyICJtaXNzbHlja2FkZXMgbMOkc2Egb2JqZWt0ZXQgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjE0MjYKKyM6IHNoYTEtZmlsZS5jOjE2MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZW1lbnQgJXMgbm90IGZvdW5kIGZvciAlcyIKIG1zZ3N0ciAiZXJzw6R0dG5pbmdlbiAlcyBoaXR0YWRlcyBpbnRlIGbDtnIgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjE0MzAKKyM6IHNoYTEtZmlsZS5jOjE2MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9vc2Ugb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCiBtc2dzdHIgImzDtnN0IG9iamVrdCAlcyAobGFncmF0IGkgJXMpIMOkciB0cmFzaWd0IgogCi0jOiBzaGExLWZpbGUuYzoxNDM0CisjOiBzaGExLWZpbGUuYzoxNjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2tlZCBvYmplY3QgJXMgKHN0b3JlZCBpbiAlcykgaXMgY29ycnVwdCIKIG1zZ3N0ciAicGFja2F0IG9iamVrdCAlcyAobGFncmF0IGkgJXMpIMOkciB0cmFzaWd0IgogCi0jOiBzaGExLWZpbGUuYzoxNTM2CisjOiBzaGExLWZpbGUuYzoxNzQ2CiAjLCBjLWZvcm1hdAotbXNnaWQgInVuYWJsZSB0byB3cml0ZSBzaGExIGZpbGVuYW1lICVzIgotbXNnc3RyICJrYW4gaW50ZSBza3JpdmEgc2hhMS1maWxuYW1uICVzIgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICVzIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSBmaWxlbiAlcyIKIAotIzogc2hhMS1maWxlLmM6MTU0MworIzogc2hhMS1maWxlLmM6MTc1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gc2V0IHBlcm1pc3Npb24gdG8gJyVzJyIKIG1zZ3N0ciAia2FuIGludGUgc8OkdHRhIGJlaMO2cmlnaGV0ZW4gdGlsbCBcIiVzXCIiCiAKLSM6IHNoYTEtZmlsZS5jOjE1NTAKKyM6IHNoYTEtZmlsZS5jOjE3NjAKIG1zZ2lkICJmaWxlIHdyaXRlIGVycm9yIgogbXNnc3RyICJmZWwgdmlkIHNrcml2bmluZyBhdiBmaWwiCiAKLSM6IHNoYTEtZmlsZS5jOjE1NjkKLW1zZ2lkICJlcnJvciB3aGVuIGNsb3Npbmcgc2hhMSBmaWxlIgotbXNnc3RyICJmZWwgdmlkIHN0w6RuZ25pbmcgYXYgc2hhMS1maWwiCisjOiBzaGExLWZpbGUuYzoxNzgwCittc2dpZCAiZXJyb3Igd2hlbiBjbG9zaW5nIGxvb3NlIG9iamVjdCBmaWxlIgorbXNnc3RyICJmZWwgdmlkIHN0w6RuZ25pbmcgYXYgZmlsIGbDtnIgbMO2c3Qgb2JqZWt0IgogCi0jOiBzaGExLWZpbGUuYzoxNjM1CisjOiBzaGExLWZpbGUuYzoxODQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImluc3VmZmljaWVudCBwZXJtaXNzaW9uIGZvciBhZGRpbmcgYW4gb2JqZWN0IHRvIHJlcG9zaXRvcnkgZGF0YWJhc2UgJXMiCiBtc2dzdHIgIiIKICJvdGlsbHLDpGNrbGlnIGJlaMO2cmlnaGV0IGbDtnIgYXR0IGzDpGdnYSB0aWxsIG9iamVrdCB0aWxsIGFya2l2ZGF0YWJhc2VuICVzIgogCi0jOiBzaGExLWZpbGUuYzoxNjM3CisjOiBzaGExLWZpbGUuYzoxODQ3CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZSIKIG1zZ3N0ciAia2FuIGludGUgc2thcGEgdGVtcG9yw6RyIGZpbCIKIAotIzogc2hhMS1maWxlLmM6MTY2MQotbXNnaWQgInVuYWJsZSB0byB3cml0ZSBzaGExIGZpbGUiCi1tc2dzdHIgImthbiBpbnRlIHNrcml2YSBzaGExLWZpbGVuIgorIzogc2hhMS1maWxlLmM6MTg3MQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBsb29zZSBvYmplY3QgZmlsZSIKK21zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgZmlsIGbDtnIgbMO2c3Qgb2JqZWt0IgogCi0jOiBzaGExLWZpbGUuYzoxNjY3CisjOiBzaGExLWZpbGUuYzoxODc3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBkZWZsYXRlIG5ldyBvYmplY3QgJXMgKCVkKSIKIG1zZ3N0ciAia2FuIGludGUgdXRmw7ZyYSBcImRlZmxhdGVcIiBww6Ugbnl0dCBvYmpla3QgJXMgKCVkKSIKIAotIzogc2hhMS1maWxlLmM6MTY3MQorIzogc2hhMS1maWxlLmM6MTg4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWZsYXRlRW5kIG9uIG9iamVjdCAlcyBmYWlsZWQgKCVkKSIKIG1zZ3N0ciAiXCJkZWZsYXRlZW5kXCIgcMOlIG9iamVrdGV0ICVzIG1pc3NseWNrYWRlcyAoJWQpIgogCi0jOiBzaGExLWZpbGUuYzoxNjc1CisjOiBzaGExLWZpbGUuYzoxODg1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbmZ1c2VkIGJ5IHVuc3RhYmxlIG9iamVjdCBzb3VyY2UgZGF0YSBmb3IgJXMiCiBtc2dzdHIgImbDtnJ2aXJyYWQgYXYgaW5zdGFiaWwgb2JqZWt0a8OkbGxkYXRhIGbDtnIgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjE2ODUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5MTgKKyM6IHNoYTEtZmlsZS5jOjE4OTUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMDU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB1dGltZSgpIG9uICVzIgogbXNnc3RyICJcInV0aW1lKClcIiBtaXNzbHlja2FkZXMgcMOlICVzIgogCi0jOiBzaGExLWZpbGUuYzoxNzYwCisjOiBzaGExLWZpbGUuYzoxOTcyCiAjLCBjLWZvcm1hdAotbXNnaWQgImNhbm5vdCByZWFkIHNoYTFfZmlsZSBmb3IgJXMiCi1tc2dzdHIgImthbiBpbnRlIGzDpHNhIHNoYTFfZmlsZSBmw7ZyICVzIgorbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCBmb3IgJXMiCittc2dzdHIgImthbiBpbnRlIGzDpHNhIG9iamVrdCBmw7ZyICVzIgogCi0jOiBzaGExLWZpbGUuYzoxODA1CisjOiBzaGExLWZpbGUuYzoyMDExCiBtc2dpZCAiY29ycnVwdCBjb21taXQiCiBtc2dzdHIgInRyYXNpayBpbmNoZWNrbmluZyIKIAotIzogc2hhMS1maWxlLmM6MTgxMworIzogc2hhMS1maWxlLmM6MjAxOQogbXNnaWQgImNvcnJ1cHQgdGFnIgogbXNnc3RyICJ0cmFzaWcgdGFnZyIKIAotIzogc2hhMS1maWxlLmM6MTkxMgorIzogc2hhMS1maWxlLmM6MjExOQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkIGVycm9yIHdoaWxlIGluZGV4aW5nICVzIgogbXNnc3RyICJsw6RzZmVsIHZpZCBpbmRleGVyaW5nIGF2ICVzIgogCi0jOiBzaGExLWZpbGUuYzoxOTE1CisjOiBzaGExLWZpbGUuYzoyMTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgInNob3J0IHJlYWQgd2hpbGUgaW5kZXhpbmcgJXMiCiBtc2dzdHIgImbDtnIgbGl0ZSBsw6RzdGVzIHZpZCBpbmRleGVyaW5nIGF2ICVzIgogCi0jOiBzaGExLWZpbGUuYzoxOTg4IHNoYTEtZmlsZS5jOjE5OTcKKyM6IHNoYTEtZmlsZS5jOjIxOTUgc2hhMS1maWxlLmM6MjIwNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZmFpbGVkIHRvIGluc2VydCBpbnRvIGRhdGFiYXNlIgogbXNnc3RyICIlczogbWlzc2x5Y2thZGVzIGzDpGdnYSBpbiBpIGRhdGFiYXNlbiIKIAotIzogc2hhMS1maWxlLmM6MjAwMworIzogc2hhMS1maWxlLmM6MjIxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogdW5zdXBwb3J0ZWQgZmlsZSB0eXBlIgogbXNnc3RyICIlczogZmlsdHlwZW4gc3TDtmRzIGVqIgogCi0jOiBzaGExLWZpbGUuYzoyMDI3CisjOiBzaGExLWZpbGUuYzoyMjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIG9iamVjdCIKIG1zZ3N0ciAiJXMgw6RyIGludGUgZXR0IGdpbHRpZ3Qgb2JqZWt0IgogCi0jOiBzaGExLWZpbGUuYzoyMDI5CisjOiBzaGExLWZpbGUuYzoyMjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkICclcycgb2JqZWN0IgogbXNnc3RyICIlcyDDpHIgaW50ZSBldHQgZ2lsdGlndCBcIiVzXCItb2JqZWt0IgogCi0jOiBzaGExLWZpbGUuYzoyMDU2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NAorIzogc2hhMS1maWxlLmM6MjI2NCBidWlsdGluL2luZGV4LXBhY2suYzoxNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMiCiBtc2dzdHIgImthbiBpbnRlIMO2cHBuYSAlcyIKIAotIzogc2hhMS1maWxlLmM6MjIyNiBzaGExLWZpbGUuYzoyMjc4CisjOiBzaGExLWZpbGUuYzoyNDU0IHNoYTEtZmlsZS5jOjI1MDcKICMsIGMtZm9ybWF0Ci1tc2dpZCAic2hhMSBtaXNtYXRjaCBmb3IgJXMgKGV4cGVjdGVkICVzKSIKLW1zZ3N0ciAic2hhMSBzdMOkbW1lciBpbnRlIGbDtnIgJXMgKGbDtnJ2w6RudGFkZSAlcykiCittc2dpZCAiaGFzaCBtaXNtYXRjaCBmb3IgJXMgKGV4cGVjdGVkICVzKSIKK21zZ3N0ciAiaGFzaCBzdMOkbW1lciBpbnRlIGbDtnIgJXMgKGbDtnJ2w6RudGFkZSAlcykiCiAKLSM6IHNoYTEtZmlsZS5jOjIyNTAKKyM6IHNoYTEtZmlsZS5jOjI0NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG1tYXAgJXMiCiBtc2dzdHIgImthbiBpbnRlIHV0ZsO2cmEgXCJtbWFwXCIgZsO2ciAlcyIKIAotIzogc2hhMS1maWxlLmM6MjI1NQorIzogc2hhMS1maWxlLmM6MjQ4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5wYWNrIGhlYWRlciBvZiAlcyIKIG1zZ3N0ciAia2FuIGludGUgcGFja2EgdXBwIGh1dnVkIGbDtnIgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjIyNjEKKyM6IHNoYTEtZmlsZS5jOjI0ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGhlYWRlciBvZiAlcyIKIG1zZ3N0ciAia2FuIGludGUgdG9sa2EgaHV2dWQgZsO2ciAlcyIKIAotIzogc2hhMS1maWxlLmM6MjI3MgorIzogc2hhMS1maWxlLmM6MjUwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5wYWNrIGNvbnRlbnRzIG9mICVzIgogbXNnc3RyICJrYW4gaW50ZSB0b2xrYSBpbm5laMOlbGwgaSAlcyIKIAotIzogc2hhMS1uYW1lLmM6NDc2CisjOiBzaGExLW5hbWUuYzo0ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAic2hvcnQgU0hBMSAlcyBpcyBhbWJpZ3VvdXMiCiBtc2dzdHIgImtvcnQgU0hBMSAlcyDDpHIgdHZldHlkaWciCiAKLSM6IHNoYTEtbmFtZS5jOjQ4NworIzogc2hhMS1uYW1lLmM6NDk3CiBtc2dpZCAiVGhlIGNhbmRpZGF0ZXMgYXJlOiIKIG1zZ3N0ciAiS2FuZGlkYXRlcm5hIMOkcjoiCiAKLSM6IHNoYTEtbmFtZS5jOjc3MAorIzogc2hhMS1uYW1lLmM6Nzk2CiBtc2dpZCAiIgogIkdpdCBub3JtYWxseSBuZXZlciBjcmVhdGVzIGEgcmVmIHRoYXQgZW5kcyB3aXRoIDQwIGhleCBjaGFyYWN0ZXJzXG4iCiAiYmVjYXVzZSBpdCB3aWxsIGJlIGlnbm9yZWQgd2hlbiB5b3UganVzdCBzcGVjaWZ5IDQwLWhleC4gVGhlc2UgcmVmc1xuIgogIm1heSBiZSBjcmVhdGVkIGJ5IG1pc3Rha2UuIEZvciBleGFtcGxlLFxuIgogIlxuIgotIiAgZ2l0IGNoZWNrb3V0IC1iICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgorIiAgZ2l0IHN3aXRjaCAtYyAkYnIgJChnaXQgcmV2LXBhcnNlIC4uLilcbiIKICJcbiIKICJ3aGVyZSBcIiRiclwiIGlzIHNvbWVob3cgZW1wdHkgYW5kIGEgNDAtaGV4IHJlZiBpcyBjcmVhdGVkLiBQbGVhc2VcbiIKICJleGFtaW5lIHRoZXNlIHJlZnMgYW5kIG1heWJlIGRlbGV0ZSB0aGVtLiBUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnlcbiIKQEAgLTU4NjcsNzcgKzc3ODEsMjg2IEBACiAidGVja2VuLCBkw6UgZGV0dGEgaWdub3JlcmFzIG7DpHIgZHUgYW5nZXIgNDAtaGV4IGVuYmFydC4gRGVzc2FcbiIKICJyZWZlcmVuc2VyIGthbiBza2FwYXMgYXYgbWlzc3RhZy4gVGlsbCBleGVtcGVsLCBmw7ZyXG4iCiAiXG4iCi0iICBnaXQgY2hlY2tvdXQgLWIgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCisiICBnaXQgc3dpdGNoIC1jICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgogIlxuIgogImTDpHIgXCIkYnJcIiBww6UgbsOlZ290IHPDpHR0IGJsaXZpdCB0b210IG9jaCBlbiA0MC1oZXgtcmVmZXJlbnMgc2thcGF0cy5cbiIKICJVbmRlcnPDtmsgcmVmZXJlbnNlcm5hIG9jaCB0YSBrYW5za2UgYm9ydCBkZW0uIFN0w6RuZyBhdiBtZWRkZWxhbmRldFxuIgogImdlbm9tIGF0dCBrw7ZyYSBcImdpdCBjb25maWcgYWR2aWNlLm9iamVjdE5hbWVXYXJuaW5nIGZhbHNlXCIiCiAKLSM6IHN1Ym1vZHVsZS5jOjExNiBzdWJtb2R1bGUuYzoxNDUKKyM6IHNoYTEtbmFtZS5jOjkxNgorIywgYy1mb3JtYXQKK21zZ2lkICJsb2cgZm9yICclLipzJyBvbmx5IGdvZXMgYmFjayB0byAlcyIKK21zZ3N0ciAibG9nZ2VuIGbDtnIgXCIlLipzXCIgcsOkY2tlciBiYXJhIHRpbGxiYWthIHRpbGwgJXMiCisKKyM6IHNoYTEtbmFtZS5jOjkyNAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2cgZm9yICclLipzJyBvbmx5IGhhcyAlZCBlbnRyaWVzIgorbXNnc3RyICJsb2dnZW4gZsO2ciBcIiUuKnNcIiBoYXIgYmFyYSAlZCBwb3N0ZXIiCisKKyM6IHNoYTEtbmFtZS5jOjE2ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGV4aXN0cyBvbiBkaXNrLCBidXQgbm90IGluICclLipzJyIKK21zZ3N0ciAiU8O2a3bDpGdlbiBcIiVzXCIgZmlubnMgcMOlIGRpc2tlbiwgbWVuIGludGUgaSBcIiUuKnNcIiIKKworIzogc2hhMS1uYW1lLmM6MTY5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGV4aXN0cywgYnV0IG5vdCAnJXMnXG4iCisiaGludDogRGlkIHlvdSBtZWFuICclLipzOiVzJyBha2EgJyUuKnM6Li8lcyc/IgorbXNnc3RyICIiCisic8O2a3bDpGdlbiBcIiVzXCIgZmlubnMsIG1lbiBpbnRlIGkgXCIlc1wiXG4iCisidGlwczogTWVuYWRlIGR1IFwiJS4qczolc1wiLCDDpHZlbiBrw6RuZCBzb20gXCIlLipzOi4vJXNcIj8iCisKKyM6IHNoYTEtbmFtZS5jOjE3MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGV4aXN0IGluICclLipzJyIKK21zZ3N0ciAic8O2a3bDpGdlbiBcIiVzXCIgZmlubnMgaW50ZSBpIFwiJS4qc1wiIgorCisjOiBzaGExLW5hbWUuYzoxNzMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXRoICclcycgaXMgaW4gdGhlIGluZGV4LCBidXQgbm90IGF0IHN0YWdlICVkXG4iCisiaGludDogRGlkIHlvdSBtZWFuICc6JWQ6JXMnPyIKK21zZ3N0ciAiIgorInPDtmt2w6RnZW4gXCIlc1wiIGZpbm5zIGkgaW5kZXhldCBtZW4gaW50ZSBpIGV0YXBwICVkXG4iCisidGlwczogTWVuYWRlIGR1IFwiOiVkOiVzXCI/IgorCisjOiBzaGExLW5hbWUuYzoxNzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXRoICclcycgaXMgaW4gdGhlIGluZGV4LCBidXQgbm90ICclcydcbiIKKyJoaW50OiBEaWQgeW91IG1lYW4gJzolZDolcycgYWthICc6JWQ6Li8lcyc/IgorbXNnc3RyICIiCisic8O2a3bDpGdlbiBcIiVzXCIgZmlubnMgaSBpbmRleGV0LCBtZW4gaW50ZSBpIFwiJXNcIlxuIgorInRpcHM6IE1lbmFkZSBkdSBcIjolZDolc1wiLCDDpHZlbiBrw6RuZCBzb20gXCI6JWQ6Li8lc1wiPyIKKworIzogc2hhMS1uYW1lLmM6MTc1NgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gdGhlIGluZGV4IgorbXNnc3RyICJzw7ZrdsOkZ2VuIFwiJXNcIiBmaW5ucyBww6UgZGlzaywgbWVuIGludGUgaSBpbmRleGV0IgorCisjOiBzaGExLW5hbWUuYzoxNzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCAobmVpdGhlciBvbiBkaXNrIG5vciBpbiB0aGUgaW5kZXgpIgorbXNnc3RyICJzw7ZrdsOkZ2VuIFwiJXNcIiBmaW5ucyBpbnRlICh2YXJrZW4gaSBkaXNrZW4gZWxsZXIgaSBpbmRleGV0KSIKKworIzogc2hhMS1uYW1lLmM6MTc3MQorbXNnaWQgInJlbGF0aXZlIHBhdGggc3ludGF4IGNhbid0IGJlIHVzZWQgb3V0c2lkZSB3b3JraW5nIHRyZWUiCittc2dzdHIgInJlbGF0aXYgc8O2a3bDpGcga2FuIGludGUgYW52w6RuZGFzIHV0YW5mw7ZyIGFyYmV0c2thdGFsb2dlbiIKKworIzogc2hhMS1uYW1lLmM6MTkwOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG9iamVjdCBuYW1lICclLipzJy4iCittc2dzdHIgImZlbGFrdGlndCBvYmpla3RuYW1uIFwiJS4qc1wiLiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGdpYmlieXRlCisjOiBzdHJidWYuYzo4MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgR2lCIgorbXNnc3RyICIldSwlMi4ydSBHaUIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBnaWJpYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBHaUIvcyIKK21zZ3N0ciAiJXUsJTIuMnUgR2lCL3MiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBtZWJpYnl0ZQorIzogc3RyYnVmLmM6ODQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IE1pQiIKK21zZ3N0ciAiJXUsJTIuMnUgTWlCIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggbWViaWJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgTWlCL3MiCittc2dzdHIgIiV1LCUyLjJ1IE1pQi9zIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDgga2liaWJ5dGUKKyM6IHN0cmJ1Zi5jOjg1NgorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBLaUIiCittc2dzdHIgIiV1LCUyLjJ1IEtpQiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGtpYmlieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEtpQi9zIgorbXNnc3RyICIldSwlMi4ydSBLaUIvcyIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGJ5dGUKKyM6IHN0cmJ1Zi5jOjg2NAorIywgYy1mb3JtYXQKK21zZ2lkICIldSBieXRlIgorbXNnaWRfcGx1cmFsICIldSBieXRlcyIKK21zZ3N0clswXSAiJXUgYnl0ZSIKK21zZ3N0clsxXSAiJXUgYnl0ZXMiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1IGJ5dGUvcyIKK21zZ2lkX3BsdXJhbCAiJXUgYnl0ZXMvcyIKK21zZ3N0clswXSAiJXUgYnl0ZS9zIgorbXNnc3RyWzFdICIldSBieXRlcy9zIgorCisjOiBzdHJidWYuYzoxMTY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBlZGl0ICclcyciCittc2dzdHIgImt1bmRlIGludGUgcmVkaWdlcmEgXCIlc1wiIgorCisjOiBzdWJtb2R1bGUuYzoxMTQgc3VibW9kdWxlLmM6MTQzCiBtc2dpZCAiQ2Fubm90IGNoYW5nZSB1bm1lcmdlZCAuZ2l0bW9kdWxlcywgcmVzb2x2ZSBtZXJnZSBjb25mbGljdHMgZmlyc3QiCiBtc2dzdHIgIiIKICJLYW4gaW50ZSDDpG5kcmEgLmdpdG1vZHVsZXMtZmlsIHNvbSBpbnRlIHNsYWdpdHMgaWhvcCwgbMO2cyAiCiAic2FtbWFuc2xhZ25pbmdza29uZmxpa3RlciBmw7Zyc3QiCiAKLSM6IHN1Ym1vZHVsZS5jOjEyMCBzdWJtb2R1bGUuYzoxNDkKKyM6IHN1Ym1vZHVsZS5jOjExOCBzdWJtb2R1bGUuYzoxNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZpbmQgc2VjdGlvbiBpbiAuZ2l0bW9kdWxlcyB3aGVyZSBwYXRoPSVzIgogbXNnc3RyICJIaXR0YWRlIGludGUgbsOlZ29uIHNla3Rpb24gaSAuZ2l0bW9kdWxlcyBkw6RyIHPDtmt2w6RnPSVzIgogCi0jOiBzdWJtb2R1bGUuYzoxNTYKKyM6IHN1Ym1vZHVsZS5jOjE1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIC5naXRtb2R1bGVzIGVudHJ5IGZvciAlcyIKIG1zZ3N0ciAiS3VuZGUgaW50ZSB0YSBib3J0IC5naXRtb2R1bGVzLXBvc3RlbiBmw7ZyICVzIgogCi0jOiBzdWJtb2R1bGUuYzoxNjcKKyM6IHN1Ym1vZHVsZS5jOjE2NQogbXNnaWQgInN0YWdpbmcgdXBkYXRlZCAuZ2l0bW9kdWxlcyBmYWlsZWQiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBrw7ZhIHVwcGRhdGVyYWQgLmdpdG1vZHVsZXMiCiAKLSM6IHN1Ym1vZHVsZS5jOjMyOQorIzogc3VibW9kdWxlLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgImluIHVucG9wdWxhdGVkIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJpIGVqIHV0Y2hlY2thZCB1bmRlcm1vZHVsIFwiJXNcIiIKIAotIzogc3VibW9kdWxlLmM6MzYwCisjOiBzdWJtb2R1bGUuYzozNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUGF0aHNwZWMgJyVzJyBpcyBpbiBzdWJtb2R1bGUgJyUuKnMnIgogbXNnc3RyICJTw7ZrdsOkZ3NhbmdpdmVsc2VuIFwiJXNcIiDDpHIgaSB1bmRlcm1vZHVsZW4gXCIlLipzXCIiCiAKLSM6IHN1Ym1vZHVsZS5jOjg1NworIzogc3VibW9kdWxlLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLWlnbm9yZS1zdWJtb2R1bGVzIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiZmVsYWt0aWd0IGFyZ3VtZW50IHRpbGwgLS1pZ25vcmUtc3VibW9kdWxlczogJXMiCisKKyM6IHN1Ym1vZHVsZS5jOjgxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU3VibW9kdWxlIGluIGNvbW1pdCAlcyBhdCBwYXRoOiAnJXMnIGNvbGxpZGVzIHdpdGggYSBzdWJtb2R1bGUgbmFtZWQgdGhlICIKKyJzYW1lLiBTa2lwcGluZyBpdC4iCittc2dzdHIgIiIKKyJVbmRlcm1vZHVsZW4gaSBpbmNoZWNrbmluZyAlcyBww6Ugc8O2a3bDpGdlbjogXCIlc1wiIGtyb2NrYXIgbWVkIGVuIHVuZGVybW9kdWwgIgorIm1lZCBzYW1tYSBuYW1uLiBIb3BwYXIgw7Z2ZXIgZGVuLiIKKworIzogc3VibW9kdWxlLmM6OTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgInN1Ym1vZHVsZSBlbnRyeSAnJXMnICglcykgaXMgYSAlcywgbm90IGEgY29tbWl0IgogbXNnc3RyICJ1bmRlcm1vZHVscG9zdGVuIFwiJXNcIiAoJXMpIMOkciBlbiAlcywgaW50ZSBlbiBpbmNoZWNrbmluZyIKIAotIzogc3VibW9kdWxlLmM6MTA5NyBidWlsdGluL2JyYW5jaC5jOjY1NiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk4NQorIzogc3VibW9kdWxlLmM6OTk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3VsZCBub3QgcnVuICdnaXQgcmV2LWxpc3QgPGNvbW1pdHM+IC0tbm90IC0tcmVtb3RlcyAtbiAxJyBjb21tYW5kIGluICIKKyJzdWJtb2R1bGUgJXMiCittc2dzdHIgIiIKKyJrdW5kZSBpbnRlIGvDtnJhIFwiZ2l0IHJldi1saXN0IDxpbmNoZWNrbmluZ2FyPiAtLW5vdCAtLXJlbW90ZXMgLW4gMVwiIGkgIgorInVuZGVybW9kdWxlbiBcIiVzXCIiCisKKyM6IHN1Ym1vZHVsZS5jOjExMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvY2VzcyBmb3Igc3VibW9kdWxlICclcycgZmFpbGVkIgorbXNnc3RyICJwcm9jZXNzIGbDtnIgdW5kZXJtb2R1bGVuIFwiJXNcIiBtaXNzbHlja2FkZXMiCisKKyM6IHN1Ym1vZHVsZS5jOjExNDcgYnVpbHRpbi9icmFuY2guYzo2ODAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwNDUKIG1zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSBIRUFEIGFzIGEgdmFsaWQgcmVmLiIKIG1zZ3N0ciAiTWlzc2x5Y2thZGVzIHNsw6UgdXBwIEhFQUQgc29tIGdpbHRpZyByZWZlcmVucy4iCiAKLSM6IHN1Ym1vZHVsZS5jOjE0MDQKKyM6IHN1Ym1vZHVsZS5jOjExNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHVzaGluZyBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICJTw6RuZGVyIHVuZGVybW9kdWxlbiBcIiVzXCJcbiIKKworIzogc3VibW9kdWxlLmM6MTE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gcHVzaCBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICJLdW5kZSBpbnRlIHPDpG5kYSB1bmRlcm1vZHVsZW4gXCIlc1wiXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjE0NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmV0Y2hpbmcgc3VibW9kdWxlICVzJXNcbiIKK21zZ3N0ciAiSMOkbXRhciB1bmRlcm1vZHVsZW4gJXMlc1xuIgorCisjOiBzdWJtb2R1bGUuYzoxNDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBhY2Nlc3Mgc3VibW9kdWxlICclcydcbiIKK21zZ3N0ciAiS3VuZGUgaW50ZSBrb21tYSDDpXQgdW5kZXJtb2R1bGVuIFwiJXNcIlxuIgorCisjOiBzdWJtb2R1bGUuYzoxNjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFcnJvcnMgZHVyaW5nIHN1Ym1vZHVsZSBmZXRjaDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIkZlbCB2aWQgaMOkbXRuaW5nIGF2IHVuZGVybW9kdWw6XG4iCisiJXMiCisKKyM6IHN1Ym1vZHVsZS5jOjE2NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBub3QgcmVjb2duaXplZCBhcyBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICJcIiVzXCIga8Okbm5zIGludGUgaWdlbiBzb20gZXR0IGdpdC1hcmtpdiIKIAotIzogc3VibW9kdWxlLmM6MTU0MgorIzogc3VibW9kdWxlLmM6MTY3OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcnVuICdnaXQgc3RhdHVzIC0tcG9yY2VsYWluPTInIGluIHN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiS3VuZGUgaW50ZSBrw7ZyYSBcImdpdCBzdGF0dXMgLS1wb3JjZWxhaW49MlwiIGkgdW5kZXJtb2R1bGVuIFwiJXNcIiIKKworIzogc3VibW9kdWxlLmM6MTcyMAorIywgYy1mb3JtYXQKK21zZ2lkICInZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbj0yJyBmYWlsZWQgaW4gc3VibW9kdWxlICVzIgorbXNnc3RyICJcImdpdCBzdGF0dXMgLS1wb3JjZWxhaW49MlwiIG1pc3NseWNrYWRlcyBpIHVuZGVybW9kdWxlbiBcIiVzXCIiCisKKyM6IHN1Ym1vZHVsZS5jOjE4MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN0YXJ0ICdnaXQgc3RhdHVzJyBpbiBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBzdGFydGEgXCJnaXQgc3RhdHVzXCIgaSB1bmRlcm1vZHVsZW4gXCIlc1wiIgogCi0jOiBzdWJtb2R1bGUuYzoxNTU1CisjOiBzdWJtb2R1bGUuYzoxODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBydW4gJ2dpdCBzdGF0dXMnIGluIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIGvDtnJhIFwiZ2l0IHN0YXR1c1wiIGkgdW5kZXJtb2R1bGVuIFwiJXNcIiIKIAotIzogc3VibW9kdWxlLmM6MTY0OAorIzogc3VibW9kdWxlLmM6MTgyOAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgdW5zZXQgY29yZS53b3JrdHJlZSBzZXR0aW5nIGluIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICJLdW5kZSBpbnRlIHRhIGJvcnQgaW5zdMOkbGxuaW5nZW4gY29yZS53b3JrdHJlZSBpIHVuZGVybW9kdWxlbiBcIiVzXCIiCisKKyM6IHN1Ym1vZHVsZS5jOjE4NTUgc3VibW9kdWxlLmM6MjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHJla3Vyc2VyYSBpbiBpIHVuZGVybW9kdWxlbiBcIiVzXCIiCisKKyM6IHN1Ym1vZHVsZS5jOjE4NzYKK21zZ2lkICJjb3VsZCBub3QgcmVzZXQgc3VibW9kdWxlIGluZGV4IgorbXNnc3RyICJrdW5kZSBpbnRlIMOldGVyc3TDpGxsYSBpbmRleGV0IGkgdW5kZXJtb2R1bCIKKworIzogc3VibW9kdWxlLmM6MTkxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgJyVzJyBoYXMgZGlydHkgaW5kZXgiCiBtc2dzdHIgInVuZGVybW9kdWxlbiBcIiVzXCIgaGFyIGV0dCBzbXV0c2lndCBpbmRleCIKIAotIzogc3VibW9kdWxlLmM6MTcwMAorIzogc3VibW9kdWxlLmM6MTk3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyBjb3VsZCBub3QgYmUgdXBkYXRlZC4iCiBtc2dzdHIgIlVuZGVybW9kdWxlciBcIiVzXCIga3VuZGUgaW50ZSB1cHBkYXRlcmFzLiIKIAotIzogc3VibW9kdWxlLmM6MTc0NworIzogc3VibW9kdWxlLmM6MjAzOAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJtb2R1bGUgZ2l0IGRpciAnJXMnIGlzIGluc2lkZSBnaXQgZGlyICclLipzJyIKK21zZ3N0ciAidW5kZXJtb2R1bC1naXRrYXRhbG9nZW4gXCIlc1wiIMOkciBpbnV0aSBnaXRrYXRhbG9nZW4gXCIlLipzXCIiCisKKyM6IHN1Ym1vZHVsZS5jOjIwNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInJlbG9jYXRlX2dpdGRpciBmb3Igc3VibW9kdWxlICclcycgd2l0aCBtb3JlIHRoYW4gb25lIHdvcmt0cmVlIG5vdCBzdXBwb3J0ZWQiCkBAIC01OTQ1LDEyICs4MDY4LDE3IEBACiAicmVsb2NhdGVfZ2l0ZGlyIGbDtnIgdW5kZXJtb2R1bGVuIFwiJXNcIiwgc29tIGhhciBtZXIgw6RuIGVuIGFyYmV0c2thdGFsb2csICIKICJzdMO2ZHMgZWoiCiAKLSM6IHN1Ym1vZHVsZS5jOjE3NTkgc3VibW9kdWxlLmM6MTgxNQorIzogc3VibW9kdWxlLmM6MjA3MSBzdWJtb2R1bGUuYzoyMTMwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb29rdXAgbmFtZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgc2zDpSB1cHAgbmFtbmV0IGbDtnIgdW5kZXJtb2R1bGVuIFwiJXNcIiIKIAotIzogc3VibW9kdWxlLmM6MTc2NgorIzogc3VibW9kdWxlLmM6MjA3NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBtb3ZlICclcycgaW50byBhbiBleGlzdGluZyBnaXQgZGlyIgorbXNnc3RyICJ2w6RncmFyIGZseXR0YSBcIiVzXCIgdGlsbCBlbiBiZWZpbnRsaWcgZ2l0a2F0YWxvZyIKKworIzogc3VibW9kdWxlLmM6MjA4MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTWlncmF0aW5nIGdpdCBkaXJlY3Rvcnkgb2YgJyVzJXMnIGZyb21cbiIKQEAgLTU5NjEsNDAgKzgwODksMzUgQEAKICJcIiVzXCIgdGlsbFxuIgogIlwiJXNcIlxuIgogCi0jOiBzdWJtb2R1bGUuYzoxODUwCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCByZWN1cnNlIGludG8gc3VibW9kdWxlICclcyciCi1tc2dzdHIgImt1bmRlIGludGUgcmVrdXJzZXJhIGluIGkgdW5kZXJtb2R1bGVuIFwiJXNcIiIKLQotIzogc3VibW9kdWxlLmM6MTg5NAorIzogc3VibW9kdWxlLmM6MjIwOQogbXNnaWQgImNvdWxkIG5vdCBzdGFydCBscy1maWxlcyBpbiAuLiIKIG1zZ3N0ciAia3VuZGUgaW50ZSBzdGFydGEgbHMtZmlsZXMgaSAuLiIKIAotIzogc3VibW9kdWxlLmM6MTkzMworIzogc3VibW9kdWxlLmM6MjI0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJscy10cmVlIHJldHVybmVkIHVuZXhwZWN0ZWQgcmV0dXJuIGNvZGUgJWQiCiBtc2dzdHIgImxzLXRyZWUgcmV0dXJuZXJhZGUgZW4gb3bDpG50YWQgcmV0dXJrb2QgJWQiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzIKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3Jpbmcgc3VzcGljaW91cyBzdWJtb2R1bGUgbmFtZTogJXMiCiBtc2dzdHIgImlnbm9yZXJhciBtaXNzdMOkbmt0IHVuZGVybW9kdWxuYW1uOiAlcyIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjI5NgorIzogc3VibW9kdWxlLWNvbmZpZy5jOjMwMwogbXNnaWQgIm5lZ2F0aXZlIHZhbHVlcyBub3QgYWxsb3dlZCBmb3Igc3VibW9kdWxlLmZldGNoam9icyIKIG1zZ3N0ciAibmVnYXRpdmEgdsOkcmRlbiDDpHIgaW50ZSB0aWxsw6V0bmEgZsO2ciBzdWJtb2R1bGUuZmV0Y2hqb2JzIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6MzkwCisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nICclcycgd2hpY2ggbWF5IGJlIGludGVycHJldGVkIGFzIGEgY29tbWFuZC1saW5lIG9wdGlvbjogJXMiCiBtc2dzdHIgImlnbm9yZXJhciBcIiVzXCIgc29tIGthbiB0b2xrYXMgc29tIGVuIGtvbW1hbmRvcmFkc2ZsYWdnYTogJXMiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzo0NzkKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo0OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgJXMiCiBtc2dzdHIgIm9naWx0aWd0IHbDpHJkZSBmw7ZyICVzIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6NzU0CisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCB1cGRhdGUgLmdpdG1vZHVsZXMgZW50cnkgJXMiCiBtc2dzdHIgIkt1bmRlIGludGUgdXBwZGF0ZXJhIC5naXRtb2R1bGVzLXBvc3RlbiAlcyIKQEAgLTYwMTAsNyArODEzMyw3IEBACiBtc2dpZCAidW5rbm93biB2YWx1ZSAnJXMnIGZvciBrZXkgJyVzJyIKIG1zZ3N0ciAib2vDpG50IHbDpHJkZSBcIiVzXCIgZsO2ciBueWNrZWxuIFwiJXNcIiIKIAotIzogdHJhaWxlci5jOjUzOSB0cmFpbGVyLmM6NTQ0IGJ1aWx0aW4vcmVtb3RlLmM6Mjk1CisjOiB0cmFpbGVyLmM6NTM5IHRyYWlsZXIuYzo1NDQgYnVpbHRpbi9yZW1vdGUuYzoyOTggYnVpbHRpbi9yZW1vdGUuYzozMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9yZSB0aGFuIG9uZSAlcyIKIG1zZ3N0ciAibWVyIMOkbiBlbiAlcyIKQEAgLTYwMjksNyArODE1Miw3IEBACiBtc2dpZCAiY291bGQgbm90IHJlYWQgZnJvbSBzdGRpbiIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBmcsOlbiBzdGFuZGFyZCBpbiIKIAotIzogdHJhaWxlci5jOjEwMTEgYnVpbHRpbi9hbS5jOjQ3CisjOiB0cmFpbGVyLmM6MTAxMSB3cmFwcGVyLmM6NjY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0ICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIHRhIHN0YXR1cyBww6UgJXMiCkBAIC02MDU4LDM5ICs4MTgxLDQ3IEBACiBtc2dpZCAiV291bGQgc2V0IHVwc3RyZWFtIG9mICclcycgdG8gJyVzJyBvZiAnJXMnXG4iCiBtc2dzdHIgIlNrdWxsZSBzw6R0dGEgdXBwc3Ryw7ZtcyBmw7ZyIFwiJXNcIiB0aWxsIFwiJXNcIiBmcsOlbiBcIiVzXCJcbiIKIAotIzogdHJhbnNwb3J0LmM6MTQyCisjOiB0cmFuc3BvcnQuYzoxNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgYnVuZGxlICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgbMOkc2EgcGFrZXRldCAoYnVuZGxlbikgXCIlc1wiIgogCi0jOiB0cmFuc3BvcnQuYzoyMDgKKyM6IHRyYW5zcG9ydC5jOjIxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmFuc3BvcnQ6IGludmFsaWQgZGVwdGggb3B0aW9uICclcyciCi1tc2dzdHIgInRyYW5zcG9ydDogb2dpbHRpZyBmbGFnZ2EgZsO2ciBkZXB0aDog4oCdJXPigJ0iCittc2dzdHIgInRyYW5zcG9ydDogb2dpbHRpZyBmbGFnZ2EgZsO2ciBkZXB0aDogXCIlc1wiIgogCi0jOiB0cmFuc3BvcnQuYzo2MTYKKyM6IHRyYW5zcG9ydC5jOjI2NgorbXNnaWQgInNlZSBwcm90b2NvbC52ZXJzaW9uIGluICdnaXQgaGVscCBjb25maWcnIGZvciBtb3JlIGRldGFpbHMiCittc2dzdHIgInNlIHByb3RvY29sLnZlcnNpb24gaSBcImdpdCBoZWxwIGNvbmZpZ1wiIGbDtnIgbWVyIGluZm9ybWF0aW9uIgorCisjOiB0cmFuc3BvcnQuYzoyNjcKK21zZ2lkICJzZXJ2ZXIgb3B0aW9ucyByZXF1aXJlIHByb3RvY29sIHZlcnNpb24gMiBvciBsYXRlciIKK21zZ3N0ciAic2VydmVyZmxhZ2dvciBrcsOkdmVyIHByb3Rva29sbHZlcnNpb24gMiBlbGxlciBzZW5hcmUiCisKKyM6IHRyYW5zcG9ydC5jOjYzMgogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSB0cmFuc3BvcnQuY29sb3IuKiBjb25maWciCiBtc2dzdHIgImt1bmRlIGludGUgdG9sa2EgaW5zdMOkbGxuaW5nZW4gZsO2ciB0cmFuc3BvcnQuY29sb3IuKiIKIAotIzogdHJhbnNwb3J0LmM6Njg5CisjOiB0cmFuc3BvcnQuYzo3MDUKIG1zZ2lkICJzdXBwb3J0IGZvciBwcm90b2NvbCB2MiBub3QgaW1wbGVtZW50ZWQgeWV0IgogbXNnc3RyICJzdMO2ZCBmw7ZyIHByb3Rva29sbCB2MiDDpG5udSBlaiBpbXBsZW1lbnRlcmF0IgogCi0jOiB0cmFuc3BvcnQuYzo4MTYKKyM6IHRyYW5zcG9ydC5jOjgzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHZhbHVlIGZvciBjb25maWcgJyVzJzogJXMiCiBtc2dzdHIgIm9rw6RudCB2w6RyZGUgZsO2ciBpbnN0w6RsbG5pbmdlbiBcIiVzXCI6ICVzIgogCi0jOiB0cmFuc3BvcnQuYzo4ODIKKyM6IHRyYW5zcG9ydC5jOjg5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmFuc3BvcnQgJyVzJyBub3QgYWxsb3dlZCIKIG1zZ3N0ciAidHJhbnNwb3J0ZW4gXCIlc1wiIHRpbGzDpXRzIGludGUiCiAKLSM6IHRyYW5zcG9ydC5jOjkzNgorIzogdHJhbnNwb3J0LmM6OTQ5CiBtc2dpZCAiZ2l0LW92ZXItcnN5bmMgaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZCIKIG1zZ3N0ciAiZ2l0LW92ZXItcnN5bmMgc3TDtmRzIGludGUgbMOkbmdyZSIKIAotIzogdHJhbnNwb3J0LmM6MTAzMQorIzogdHJhbnNwb3J0LmM6MTA0NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyBzdWJtb2R1bGUgcGF0aHMgY29udGFpbiBjaGFuZ2VzIHRoYXQgY2FuXG4iCkBAIC02MDk5LDcgKzgyMzAsNyBAQAogIkbDtmxqYW5kZSB1bmRlcm1vZHVsc8O2a3bDpGdhciBpbm5laMOlbGxlciDDpG5kcmluZ2FyIHNvbVxuIgogImludGUga2FuIGhpdHRhcyBhdiBmasOkcnJhcm5hOlxuIgogCi0jOiB0cmFuc3BvcnQuYzoxMDM1CisjOiB0cmFuc3BvcnQuYzoxMDQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTYxMjYsMzcgKzgyNTcsMzIgQEAKICJmw7ZyIGF0dCBzw6RuZGEgZGVtIHRpbGwgZmrDpHJyZW4uXG4iCiAiXG4iCiAKLSM6IHRyYW5zcG9ydC5jOjEwNDMKKyM6IHRyYW5zcG9ydC5jOjEwNTYKIG1zZ2lkICJBYm9ydGluZy4iCiBtc2dzdHIgIkF2YnJ5dGVyLiIKIAotIzogdHJhbnNwb3J0LmM6MTE4MgorIzogdHJhbnNwb3J0LmM6MTIwMQogbXNnaWQgImZhaWxlZCB0byBwdXNoIGFsbCBuZWVkZWQgc3VibW9kdWxlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBzw6RuZGEgYWxsYSBuw7ZkdsOkbmRpZ2EgdW5kZXJtb2R1bGVyIgogCi0jOiB0cmFuc3BvcnQuYzoxMzE1IHRyYW5zcG9ydC1oZWxwZXIuYzo2NDMKKyM6IHRyYW5zcG9ydC5jOjEzNDUgdHJhbnNwb3J0LWhlbHBlci5jOjY1NwogbXNnaWQgIm9wZXJhdGlvbiBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sIgogbXNnc3RyICJmdW5rdGlvbmVuIHN0w7ZkcyBpbnRlIGF2IHByb3Rva29sbGV0IgogCi0jOiB0cmFuc3BvcnQuYzoxNDE5Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgbGluZSB3aGlsZSBwYXJzaW5nIGFsdGVybmF0ZSByZWZzOiAlcyIKLW1zZ3N0ciAiZmVsYWt0aWcgcmFkIHZpZCB0b2xrbmluZyBhdiBhbHRlcm5hdGl2YSByZWZlcmVuc2VyOiAlcyIKLQotIzogdHJhbnNwb3J0LWhlbHBlci5jOjUxIHRyYW5zcG9ydC1oZWxwZXIuYzo4MAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjYxIHRyYW5zcG9ydC1oZWxwZXIuYzo5MAogbXNnaWQgImZ1bGwgd3JpdGUgdG8gcmVtb3RlIGhlbHBlciBmYWlsZWQiCiBtc2dzdHIgImtvbXBsZXR0IHNrcml2bmluZyB0aWxsIGZqw6Rycmhqw6RscGFyZSBtaXNzbHlja2FkZXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZpbmQgcmVtb3RlIGhlbHBlciBmb3IgJyVzJyIKIG1zZ3N0ciAia2FuIGludGUgaGl0dGEgZmrDpHJyaGrDpGxwYXJlIGbDtnIgXCIlc1wiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQ4IHRyYW5zcG9ydC1oZWxwZXIuYzo1NTcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNjAgdHJhbnNwb3J0LWhlbHBlci5jOjU3MQogbXNnaWQgImNhbid0IGR1cCBoZWxwZXIgb3V0cHV0IGZkIgogbXNnc3RyICJrdW5kZSBpbnRlIGR1cGxpY2VyYSB1dGRhdGEtZmlsaGFuZHRhZyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjE5OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5rbm93biBtYW5kYXRvcnkgY2FwYWJpbGl0eSAlczsgdGhpcyByZW1vdGUgaGVscGVyIHByb2JhYmx5IG5lZWRzIG5ld2VyICIKQEAgLTYxNjUsMTAxICs4MjkxLDEwNiBAQAogIm9rw6RuZCBrcsOkdmQgZsO2cm3DpWdhIChjYXBhYmlsaXR5KSAlczsgZmrDpHJyaGrDpGxwYXJlbiBiZWjDtnZlciBhbnRhZ2xpZ2VuIGVuICIKICJueWFyZSB2ZXJzaW9uIGF2IEdpdCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjIwNQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxNwogbXNnaWQgInRoaXMgcmVtb3RlIGhlbHBlciBzaG91bGQgaW1wbGVtZW50IHJlZnNwZWMgY2FwYWJpbGl0eSIKIG1zZ3N0ciAiIgogImZqw6Rycmhqw6RscGFyZW4gYmVow7Z2ZXIgaW1wbGVtZW50ZXJhIGbDtnJtw6VnYSBmw7ZyIHJlZmVyZW5zc3BlY2lmaWthdGlvbmVyICIKICIocmVmc3BlYykiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyNzIgdHJhbnNwb3J0LWhlbHBlci5jOjQxMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjI4NCB0cmFuc3BvcnQtaGVscGVyLmM6NDI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHVuZXhwZWN0ZWRseSBzYWlkOiAnJXMnIgogbXNnc3RyICIlcyBzYWRlIG92w6RudGF0OiBcIiVzXCIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0MDEKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgYWxzbyBsb2NrZWQgJXMiCiBtc2dzdHIgIiVzIGzDpXN0ZSBvY2tzw6UgJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0NzkKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0OTMKIG1zZ2lkICJjb3VsZG4ndCBydW4gZmFzdC1pbXBvcnQiCiBtc2dzdHIgImt1bmRlIGludGUga8O2cmEgZmFzdC1pbXBvcnQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MDIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MTYKIG1zZ2lkICJlcnJvciB3aGlsZSBydW5uaW5nIGZhc3QtaW1wb3J0IgogbXNnc3RyICJmZWwgbsOkciBmYXN0LWltcG9ydCBrw7ZyZGVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTMxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMDkxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTQ1IHRyYW5zcG9ydC1oZWxwZXIuYzoxMTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSByZWZlcmVuc2VuICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTc2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gcmVzcG9uc2UgdG8gY29ubmVjdDogJXMiCiBtc2dzdHIgIm9rw6RudCBzdmFyIHDDpSBhbnNsdW50bmluZzogJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1OTgKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MTIKIG1zZ2lkICJzZXR0aW5nIHJlbW90ZSBzZXJ2aWNlIHBhdGggbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbCIKIG1zZ3N0ciAicHJvdGtvbGxldCBzdMO2ZGVyIGludGUgYXR0IHPDpHR0YSBzw7ZrdsOkZyB0aWxsIGZqw6RycnRqw6Ruc3QiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MDAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MTQKIG1zZ2lkICJpbnZhbGlkIHJlbW90ZSBzZXJ2aWNlIHBhdGgiCiBtc2dzdHIgImZlbGFrdGlnIHPDtmt2w6RnIHRpbGwgZmrDpHJydGrDpG5zdCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjY0NgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjY2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCBjb25uZWN0IHRvIHN1YnNlcnZpY2UgJXMiCiBtc2dzdHIgImthbiBpbnRlIGFuc2x1dGEgdGlsbCB1bmRlcnRqw6Ruc3RlbiAlcyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjcxMworIzogdHJhbnNwb3J0LWhlbHBlci5jOjczNgogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBvay9lcnJvciwgaGVscGVyIHNhaWQgJyVzJyIKIG1zZ3N0ciAiZsO2cnbDpG50YWRlIG9rL2Vycm9yLCBoasOkbHBwcm9ncmFtbWV0IHN2YXJhZGUgXCIlc1wiIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NzY2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6Nzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciByZXBvcnRlZCB1bmV4cGVjdGVkIHN0YXR1cyBvZiAlcyIKIG1zZ3N0ciAiaGrDpGxwYXJlbiByZXR1cm5lcmFkZSBvdsOkbnRhZCBzdGF0dXMgJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4MjcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgZHJ5LXJ1biIKIG1zZ3N0ciAiaGrDpGxwYXJlbiAlcyBzdMO2ZGVyIGludGUgZHJ5LXJ1biIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjgzMAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjg1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAtLXNpZ25lZCIKIG1zZ3N0ciAiaGrDpGxwYXJlbiAlcyBzdMO2ZGVyIGludGUgLS1zaWduZWQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4MzMKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgLS1zaWduZWQ9aWYtYXNrZWQiCiBtc2dzdHIgImhqw6RscGFyZW4gJXMgc3TDtmRlciBpbnRlIC0tc2lnbmVkPWlmLWFza2VkIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODQwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODYxCisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tYXRvbWljIgorbXNnc3RyICJoasOkbHBhcmVuICVzIHN0w7ZkZXIgaW50ZSAtLWF0b21pYyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjg2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAncHVzaC1vcHRpb24nIgogbXNnc3RyICJoasOkbHBhcmVuICVzIHN0w7ZkZXIgaW50ZSBcInB1c2gtb3B0aW9uXCIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5MzIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5NjUKIG1zZ2lkICJyZW1vdGUtaGVscGVyIGRvZXNuJ3Qgc3VwcG9ydCBwdXNoOyByZWZzcGVjIG5lZWRlZCIKIG1zZ3N0ciAiZmrDpHJyaGrDpGxwYXJlbiBzdMO2ZGVyIGludGUgcHVzaDsgcmVmZXJlbnNzcGVjaWZpa2F0aW9uIGtyw6R2cyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjkzNworIzogdHJhbnNwb3J0LWhlbHBlci5jOjk3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAnZm9yY2UnIgogbXNnc3RyICJoasOkbHBhcmVuICVzIHN0w7ZkZXIgaW50ZSBcImZvcmNlXCIiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5ODQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDE3CiBtc2dpZCAiY291bGRuJ3QgcnVuIGZhc3QtZXhwb3J0IgogbXNnc3RyICJrdW5kZSBpbnRlIGvDtnJhIGZhc3QtZXhwb3J0IgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTg5CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTAyMgogbXNnaWQgImVycm9yIHdoaWxlIHJ1bm5pbmcgZmFzdC1leHBvcnQiCiBtc2dzdHIgImZlbCB2aWQga8O2cm5pbmcgYXYgZmFzdC1leHBvcnQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDE0CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTA0NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gcmVmcyBpbiBjb21tb24gYW5kIG5vbmUgc3BlY2lmaWVkOyBkb2luZyBub3RoaW5nLlxuIgpAQCAtNjI2OCw2NyArODM5OSw2NyBAQAogIkluZ2EgZ2VtZW5zYW1tYSByZWZlcmVuc2VyIG9jaCBpbmdhIGFuZ2F2czsgZ8O2ciBpbmdldC5cbiIKICJEdSBrYW5za2UgYm9yZGUgYW5nZSBlbiBncmVuIHPDpXNvbSBcIm1hc3RlclwiLlxuIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTA3NworIzogdHJhbnNwb3J0LWhlbHBlci5jOjExMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIHJlc3BvbnNlIGluIHJlZiBsaXN0OiAlcyIKIG1zZ3N0ciAiZmVsZm9ybWF0IHN2YXIgaSByZWZlcmVuc2xpc3RhbjogJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjMxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkKCVzKSBmYWlsZWQiCiBtc2dzdHIgImzDpHMoJXMpIG1pc3NseWNrYWRlcyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyNTgKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIndyaXRlKCVzKSBmYWlsZWQiCiBtc2dzdHIgInNrcml2KCVzKSBtaXNzbHlja2FkZXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzA3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM0OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB0aHJlYWQgZmFpbGVkIgogbXNnc3RyICIlcy10csOlZGVuIG1pc3NseWNrYWRlcyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMTEKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHRocmVhZCBmYWlsZWQgdG8gam9pbjogJXMiCiBtc2dzdHIgIiVzLXRyw6VkZW4gbWlzc2x5Y2thZGVzIGFuc2x1dGE6ICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMzMCB0cmFuc3BvcnQtaGVscGVyLmM6MTMzNAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNzEgdHJhbnNwb3J0LWhlbHBlci5jOjEzNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgc3RhcnQgdGhyZWFkIGZvciBjb3B5aW5nIGRhdGE6ICVzIgogbXNnc3RyICJrYW4gaW50ZSBzdGFydGEgdHLDpWQgZsO2ciBrb3BpZXJpbmcgYXYgZGF0YTogJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzcxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQxMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBwcm9jZXNzIGZhaWxlZCB0byB3YWl0IgogbXNnc3RyICJwcm9jZXNzZW4gJXMgbWlzc2x5Y2thZGVzIHbDpG50YSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNzUKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHByb2Nlc3MgZmFpbGVkIgogbXNnc3RyICJwcm9jZXNzZW4gJXMgbWlzc2x5Y2thZGVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM5MyB0cmFuc3BvcnQtaGVscGVyLmM6MTQwMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0MzQgdHJhbnNwb3J0LWhlbHBlci5jOjE0NDMKIG1zZ2lkICJjYW4ndCBzdGFydCB0aHJlYWQgZm9yIGNvcHlpbmcgZGF0YSIKIG1zZ3N0ciAia2FuIGludGUgc2thcGEgdHLDpWQgZsO2ciBrb3BpZXJpbmcgYXYgZGF0YSIKIAotIzogdHJlZS13YWxrLmM6MzMKKyM6IHRyZWUtd2Fsay5jOjMyCiBtc2dpZCAidG9vLXNob3J0IHRyZWUgb2JqZWN0IgogbXNnc3RyICJ0csOkZG9iamVrdCBmw7ZyIGtvcnQiCiAKLSM6IHRyZWUtd2Fsay5jOjM5CisjOiB0cmVlLXdhbGsuYzozOAogbXNnaWQgIm1hbGZvcm1lZCBtb2RlIGluIHRyZWUgZW50cnkiCiBtc2dzdHIgImZlbGZvcm1hdCBsw6RnZSBpIHRyw6RkcG9zdCIKIAotIzogdHJlZS13YWxrLmM6NDMKKyM6IHRyZWUtd2Fsay5jOjQyCiBtc2dpZCAiZW1wdHkgZmlsZW5hbWUgaW4gdHJlZSBlbnRyeSIKIG1zZ3N0ciAidG9tdCBmaWxuYW1uIGkgdHLDpGRwb3N0IgogCi0jOiB0cmVlLXdhbGsuYzoxMTUKKyM6IHRyZWUtd2Fsay5jOjExNwogbXNnaWQgInRvby1zaG9ydCB0cmVlIGZpbGUiCiBtc2dzdHIgInRyw6RkZmlsIGbDtnIga29ydCIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTEyCisjOiB1bnBhY2stdHJlZXMuYzoxMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IGNoZWNrb3V0OlxuIgpAQCAtNjMzNyw3ICs4NDY4LDcgQEAKICJEaW5hIGxva2FsYSDDpG5kcmluZ2FyIGF2IGbDtmxqYW5kZSBmaWxlciBza3VsbGUgc2tyaXZhcyDDtnZlciBhdiB1dGNoZWNrbmluZzpcbiIKICIlJXNDaGVja2EgaW4gZGluYSDDpG5kcmluZ2FyIGVsbGVyIGFudsOkbmQgXCJzdGFzaFwiIGlubmFuIGR1IGJ5dGVyIGdyZW4uIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTQKKyM6IHVucGFjay10cmVlcy5jOjExMgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCkBAIC02MzQ2LDcgKzg0NzcsNyBAQAogIkRpbmEgbG9rYWxhIMOkbmRyaW5nYXIgYXYgZsO2bGphbmRlIGZpbGVyIHNrdWxsZSBza3JpdmFzIMO2dmVyIGF2IHV0Y2hlY2tuaW5nOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTE3CisjOiB1bnBhY2stdHJlZXMuYzoxMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtNjM1Niw3ICs4NDg3LDcgQEAKICJzYW1tYW5zbGFnbmluZzpcbiIKICIlJXNDaGVja2EgaW4gZGluYSDDpG5kcmluZ2FyIGVsbGVyIGFudsOkbmQgXCJzdGFzaFwiIGlubmFuIGR1IGJ5dGVyIGdyZW4uIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTkKKyM6IHVucGFjay10cmVlcy5jOjExNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCkBAIC02MzY2LDcgKzg0OTcsNyBAQAogInNhbW1hbnNsYWduaW5nOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTIyCisjOiB1bnBhY2stdHJlZXMuYzoxMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjM3NSw3ICs4NTA2LDcgQEAKICJEaW5hIGxva2FsYSDDpG5kcmluZ2FyIGF2IGbDtmxqYW5kZSBmaWxlciBza3VsbGUgc2tyaXZhcyDDtnZlciBhdiBcIiVzXCI6XG4iCiAiJSVzQ2hlY2thIGluIGRpbmEgw6RuZHJpbmdhciBlbGxlciBhbnbDpG5kIFwic3Rhc2hcIiBpbm5hbiBkdSBcIiVzXCIuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMjQKKyM6IHVucGFjay10cmVlcy5jOjEyMgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCkBAIC02Mzg0LDcgKzg1MTUsNyBAQAogIkRpbmEgbG9rYWxhIMOkbmRyaW5nYXIgYXYgZsO2bGphbmRlIGZpbGVyIHNrdWxsZSBza3JpdmFzIMO2dmVyIGF2IFwiJXNcIjpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjEyOQorIzogdW5wYWNrLXRyZWVzLmM6MTI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJVcGRhdGluZyB0aGUgZm9sbG93aW5nIGRpcmVjdG9yaWVzIHdvdWxkIGxvc2UgdW50cmFja2VkIGZpbGVzIGluIHRoZW06XG4iCkBAIC02Mzk0LDcgKzg1MjUsNyBAQAogImRlbTpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTMzCisjOiB1bnBhY2stdHJlZXMuYzoxMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IGNoZWNrb3V0OlxuIgpAQCAtNjQwMyw3ICs4NTM0LDcgQEAKICJGw7ZsamFuZGUgb3Nww6VyYWRlIGZpbGVyIGkgYXJiZXRza2F0YWxvZ2VuIHNrdWxsZSB0YXMgYm9ydCBhdiB1dGNoZWNrbmluZ2VuOlxuIgogIiUlc0ZseXR0YSBlbGxlciB0YSBib3J0IGRlbSBpbm5hbiBkdSBieXRlciBncmVuLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTM1CisjOiB1bnBhY2stdHJlZXMuYzoxMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IGNoZWNrb3V0OlxuIgpAQCAtNjQxMiw3ICs4NTQzLDcgQEAKICJGw7ZsamFuZGUgb3Nww6VyYWRlIGZpbGVyIGkgYXJiZXRza2F0YWxvZ2VuIHNrdWxsZSB0YXMgYm9ydCBhdiB1dGNoZWNrbmluZ2VuOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTM4CisjOiB1bnBhY2stdHJlZXMuYzoxMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgpAQCAtNjQyMiw3ICs4NTUzLDcgQEAKICJzYW1tYW5zbGFnbmluZ2VuOlxuIgogIiUlc0ZseXR0YSBlbGxlciB0YSBib3J0IGRlbSBpbm5hbiBkdSBzbMOlciBzYW1tYW4uIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNDAKKyM6IHVucGFjay10cmVlcy5jOjEzOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgbWVyZ2U6XG4iCkBAIC02NDMyLDcgKzg1NjMsNyBAQAogInNhbW1hbnNsYWduaW5nZW46XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNDMKKyM6IHVucGFjay10cmVlcy5jOjE0MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgJXM6XG4iCkBAIC02NDQxLDcgKzg1NzIsNyBAQAogIkbDtmxqYW5kZSBvc3DDpXJhZGUgZmlsZXIgaSBhcmJldHNrYXRhbG9nZW4gc2t1bGxlIHRhcyBib3J0IGF2IFwiJXNcIjpcbiIKICIlJXNGbHl0dGEgZWxsZXIgdGEgYm9ydCBkZW0gaW5uYW4gZHUgXCIlc1wiLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTQ1CisjOiB1bnBhY2stdHJlZXMuYzoxNDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5ICVzOlxuIgpAQCAtNjQ1MCw3ICs4NTgxLDcgQEAKICJGw7ZsamFuZGUgb3Nww6VyYWRlIGZpbGVyIGkgYXJiZXRza2F0YWxvZ2VuIHNrdWxsZSB0YXMgYm9ydCBhdiBcIiVzXCI6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNTEKKyM6IHVucGFjay10cmVlcy5jOjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICIKQEAgLTY0NjEsNyArODU5Miw3IEBACiAidXRjaGVja25pbmdlbjpcbiIKICIlJXNGbHl0dGEgZWxsZXIgdGEgYm9ydCBkZW0gaW5uYW4gZHUgYnl0ZXIgZ3Jlbi4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE1MworIzogdW5wYWNrLXRyZWVzLmM6MTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgIgpAQCAtNjQ3Miw3ICs4NjAzLDcgQEAKICJ1dGNoZWNrbmluZ2VuOlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTU2CisjOiB1bnBhY2stdHJlZXMuYzoxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTY0ODIsNyArODYxMyw3IEBACiAic2FtbWFuc2xhZ25pbmdlbjpcbiIKICIlJXNGbHl0dGEgZWxsZXIgdGEgYm9ydCBkZW0gaW5uYW4gZHUgYnl0ZXIgZ3Jlbi4iCiAKLSM6IHVucGFjay10cmVlcy5jOjE1OAorIzogdW5wYWNrLXRyZWVzLmM6MTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCkBAIC02NDkyLDcgKzg2MjMsNyBAQAogInNhbW1hbnNsYWduaW5nZW46XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNjEKKyM6IHVucGFjay10cmVlcy5jOjE1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjUwMSw3ICs4NjMyLDcgQEAKICJGw7ZsamFuZGUgb3Nww6VyYWRlIGZpbGVyIGkgYXJiZXRza2F0YWxvZ2VuIHNrdWxsZSBza3JpdmFzIMO2dmVyIGF2IFwiJXNcIjpcbiIKICIlJXNGbHl0dGEgZWxsZXIgdGEgYm9ydCBkZW0gaW5uYW4gZHUgXCIlc1wiLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTYzCisjOiB1bnBhY2stdHJlZXMuYzoxNjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKQEAgLTY1MTAsMTIgKzg2NDEsMTIgQEAKICJGw7ZsamFuZGUgb3Nww6VyYWRlIGZpbGVyIGkgYXJiZXRza2F0YWxvZ2VuIHNrdWxsZSBza3JpdmFzIMO2dmVyIGF2IFwiJXNcIjpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE3MQorIzogdW5wYWNrLXRyZWVzLmM6MTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkVudHJ5ICclcycgb3ZlcmxhcHMgd2l0aCAnJXMnLiAgQ2Fubm90IGJpbmQuIgogbXNnc3RyICJQb3N0ZW4gXCIlc1wiIMO2dmVybGFwcGFyIFwiJXNcIi4gS2FuIGludGUgYmluZGEuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNzQKKyM6IHVucGFjay10cmVlcy5jOjE3MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IHVwZGF0ZSBzcGFyc2UgY2hlY2tvdXQ6IHRoZSBmb2xsb3dpbmcgZW50cmllcyBhcmUgbm90IHVwIHRvIGRhdGU6XG4iCkBAIC02NTI0LDcgKzg2NTUsNyBAQAogIkthbiBpbnRlIHVwcGRhdGVyYSBnbGVzIHV0Y2hlY2tuaW5nOiBmw7ZsamFuZGUgcG9zdGVyIMOkciBpbnRlIMOgIGpvdXI6XG4iCiAiJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE3NgorIzogdW5wYWNrLXRyZWVzLmM6MTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBzcGFyc2UgY2hlY2tvdXQgIgpAQCAtNjUzNSw3ICs4NjY2LDcgQEAKICJ1dGNoZWNrbmluZzpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTc4CisjOiB1bnBhY2stdHJlZXMuYzoxNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgc3BhcnNlIGNoZWNrb3V0ICIKQEAgLTY1NDYsNyArODY3Nyw3IEBACiAidXRjaGVja25pbmc6XG4iCiAiJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE4MAorIzogdW5wYWNrLXRyZWVzLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgdXBkYXRlIHN1Ym1vZHVsZTpcbiIKQEAgLTY1NTUsMTYgKzg2ODYsMTYgQEAKICJLYW4gaW50ZSB1cHBkYXRlcmEgdW5kZXJtb2R1bDpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MjU0CisjOiB1bnBhY2stdHJlZXMuYzoyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmdcbiIKIG1zZ3N0ciAiQXZicnl0ZXJcbiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MzM2Ci1tc2dpZCAiQ2hlY2tpbmcgb3V0IGZpbGVzIgotbXNnc3RyICJDaGVja2FyIHV0IGZpbGVyIgorIzogdW5wYWNrLXRyZWVzLmM6MzE3Cittc2dpZCAiVXBkYXRpbmcgZmlsZXMiCittc2dzdHIgIlVwcGRhdGVyYXIgZmlsZXIiCiAKLSM6IHVucGFjay10cmVlcy5jOjM2OAorIzogdW5wYWNrLXRyZWVzLmM6MzQ5CiBtc2dpZCAiIgogInRoZSBmb2xsb3dpbmcgcGF0aHMgaGF2ZSBjb2xsaWRlZCAoZS5nLiBjYXNlLXNlbnNpdGl2ZSBwYXRoc1xuIgogIm9uIGEgY2FzZS1pbnNlbnNpdGl2ZSBmaWxlc3lzdGVtKSBhbmQgb25seSBvbmUgZnJvbSB0aGUgc2FtZVxuIgpAQCAtNjU3NCw2ICs4NzA1LDEwIEBACiAic8O2a3bDpGdhciBww6UgZXR0IG9rw6Ruc2xpZ3QgZmlsc3lzdGVtKSBvY2ggZW5kYXN0IGVuIGZyw6VuIHNhbW1hXG4iCiAia29sbGlzaW9uc2dydXBwIGZpbm5zIGkgYXJiZXRza2F0YWxvZ2VuOlxuIgogCisjOiB1bnBhY2stdHJlZXMuYzoxNDQ1Cittc2dpZCAiVXBkYXRpbmcgaW5kZXggZmxhZ3MiCittc2dzdHIgIlVwcGRhdGVyYXIgaW5kZXhmbGFnZ29yIgorCiAjOiB1cmxtYXRjaC5jOjE2MwogbXNnaWQgImludmFsaWQgVVJMIHNjaGVtZSBuYW1lIG9yIG1pc3NpbmcgJzovLycgc3VmZml4IgogbXNnc3RyICJvZ2lsdGlnIFVSTC1zY2hlbWFuYW1uIGVsbGVyIHNha25hdCBcIjovL1wiLXN1ZmZpeCIKQEAgLTY2MDMsMTk5ICs4NzM4LDIwOSBAQAogbXNnaWQgImludmFsaWQgJy4uJyBwYXRoIHNlZ21lbnQiCiBtc2dzdHIgImZlbGFrdGlndCBcIi4uXCItc8O2a3bDpGdzc2VnbWVudCIKIAotIzogd29ya3RyZWUuYzoyNDkgYnVpbHRpbi9hbS5jOjIxMDAKKyM6IHdhbGtlci5jOjE3MAorbXNnaWQgIkZldGNoaW5nIG9iamVjdHMiCittc2dzdHIgIkjDpG10YXIgb2JqZWt0IgorCisjOiB3b3JrdHJlZS5jOjI1OSBidWlsdGluL2FtLmM6MjA5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCAnJXMnIgogbXNnc3RyICJtaXNzbHlja2FkZXMgbMOkc2EgXCIlc1wiIgogCi0jOiB3b3JrdHJlZS5jOjI5NQorIzogd29ya3RyZWUuYzozMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBhdCBtYWluIHdvcmtpbmcgdHJlZSBpcyBub3QgdGhlIHJlcG9zaXRvcnkgZGlyZWN0b3J5IgogbXNnc3RyICJcIiVzXCIgaSBodXZ1ZGFyYmV0c2thdGFsb2dlbiDDpHIgaW50ZSBhcmtpdmthdGFsb2dlbiIKIAotIzogd29ya3RyZWUuYzozMDYKKyM6IHdvcmt0cmVlLmM6MzE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZmlsZSBkb2VzIG5vdCBjb250YWluIGFic29sdXRlIHBhdGggdG8gdGhlIHdvcmtpbmcgdHJlZSBsb2NhdGlvbiIKIG1zZ3N0ciAiZmlsZW4gXCIlc1wiIGlubmVow6VsbGVyIGludGUgYWJzb2x1dCBzw7ZrdsOkZyB0aWxsIGFyYmV0c2thdGFsb2dlbiIKIAotIzogd29ya3RyZWUuYzozMTgKKyM6IHdvcmt0cmVlLmM6MzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgIlwiJXNcIiBmaW5ucyBpbnRlIgogCi0jOiB3b3JrdHJlZS5jOjMyNAorIzogd29ya3RyZWUuYzozMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSAuZ2l0IGZpbGUsIGVycm9yIGNvZGUgJWQiCiBtc2dzdHIgIlwiJXNcIiDDpHIgaW50ZSBlbiAuZ2l0LWZpbCwgZmVsa29kICVkIgogCi0jOiB3b3JrdHJlZS5jOjMzMgorIzogd29ya3RyZWUuYzozNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBkb2VzIG5vdCBwb2ludCBiYWNrIHRvICclcyciCiBtc2dzdHIgIlwiJXNcIiBwZWthciBpbnRlIHRpbGxiYWthIHRpbGwgXCIlc1wiIgogCi0jOiB3cmFwcGVyLmM6MjIzIHdyYXBwZXIuYzozOTMKKyM6IHdyYXBwZXIuYzoxODYgd3JhcHBlci5jOjM1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciByZWFkaW5nIGFuZCB3cml0aW5nIgogbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBcIiVzXCIgZsO2ciBsw6RzbmluZyBvY2ggc2tyaXZuaW5nIgogCi0jOiB3cmFwcGVyLmM6NDI0IHdyYXBwZXIuYzo2MjQKKyM6IHdyYXBwZXIuYzozODcgd3JhcHBlci5jOjU4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYWNjZXNzICclcyciCiBtc2dzdHIgImthbiBpbnRlIGtvbW1hIMOldCBcIiVzXCIiCiAKLSM6IHdyYXBwZXIuYzo2MzIKKyM6IHdyYXBwZXIuYzo1OTYKIG1zZ2lkICJ1bmFibGUgdG8gZ2V0IGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgImthbiBpbnRlIGjDpG10YSBha3R1ZWxsIGFyYmV0c2thdGFsb2ciCiAKLSM6IHd0LXN0YXR1cy5jOjE1NAorIzogd3Qtc3RhdHVzLmM6MTU4CiBtc2dpZCAiVW5tZXJnZWQgcGF0aHM6IgogbXNnc3RyICJFaiBzYW1tYW5zbGFnbmEgc8O2a3bDpGdhcjoiCiAKLSM6IHd0LXN0YXR1cy5jOjE4MSB3dC1zdGF0dXMuYzoyMDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiICAodXNlIFwiZ2l0IHJlc2V0ICVzIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgotbXNnc3RyICIgIChhbnbDpG5kIFwiZ2l0IHJlc2V0ICVzIDxmaWw+Li4uXCIgZsO2ciBhdHQgdGEgYm9ydCBmcsOlbiBrw7YpIgorIzogd3Qtc3RhdHVzLmM6MTg3IHd0LXN0YXR1cy5jOjIxOQorbXNnaWQgIiAgKHVzZSBcImdpdCByZXN0b3JlIC0tc3RhZ2VkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgorbXNnc3RyICIgIChhbnbDpG5kIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbD4uLi5cIiBmw7ZyIGF0dCB0YSBib3J0IGZyw6VuIGvDtikiCiAKLSM6IHd0LXN0YXR1cy5jOjE4MyB3dC1zdGF0dXMuYzoyMTAKKyM6IHd0LXN0YXR1cy5jOjE5MCB3dC1zdGF0dXMuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zb3VyY2U9JXMgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiIKKyIgIChhbnbDpG5kIFwiZ2l0IHJlc3RvcmUgLS1zb3VyY2U9JXMgLS1zdGFnZWQgPGZpbD4uLi5cIiBmw7ZyIGF0dCB0YSBib3J0IGZyw6VuICIKKyJrw7YpIgorCisjOiB3dC1zdGF0dXMuYzoxOTMgd3Qtc3RhdHVzLmM6MjI1CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJtIC0tY2FjaGVkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgogbXNnc3RyICIgIChhbnbDpG5kIFwiZ2l0IHJtIC0tY2FjaGVkIDxmaWw+Li4uXCIgZsO2ciBhdHQgdGEgYm9ydCBmcsOlbiBrw7YpIgogCi0jOiB3dC1zdGF0dXMuYzoxODcKKyM6IHd0LXN0YXR1cy5jOjE5NwogbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQgPGZpbGU+Li4uXCIgdG8gbWFyayByZXNvbHV0aW9uKSIKIG1zZ3N0ciAiICAoYW52w6RuZCBcImdpdCBhZGQgPGZpbD4uLi5cIiBmw7ZyIGF0dCBhbmdlIGzDtnNuaW5nKSIKIAotIzogd3Qtc3RhdHVzLmM6MTg5IHd0LXN0YXR1cy5jOjE5MworIzogd3Qtc3RhdHVzLmM6MTk5IHd0LXN0YXR1cy5jOjIwMwogbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQvcm0gPGZpbGU+Li4uXCIgYXMgYXBwcm9wcmlhdGUgdG8gbWFyayByZXNvbHV0aW9uKSIKIG1zZ3N0ciAiICAoYW52w6RuZCBcImdpdCBhZGQvcm0gPGZpbD4uLi5cIiBzb20gbMOkbXBsaWd0IGbDtnIgYXR0IGFuZ2UgbMO2c25pbmcpIgogCi0jOiB3dC1zdGF0dXMuYzoxOTEKKyM6IHd0LXN0YXR1cy5jOjIwMQogbXNnaWQgIiAgKHVzZSBcImdpdCBybSA8ZmlsZT4uLi5cIiB0byBtYXJrIHJlc29sdXRpb24pIgogbXNnc3RyICIgIChhbnbDpG5kIFwiZ2l0IHJtIDxmaWw+Li4uXCIgZsO2ciBhdHQgYW5nZSBsw7ZzbmluZykiCiAKLSM6IHd0LXN0YXR1cy5jOjIwMiB3dC1zdGF0dXMuYzoxMDQyCisjOiB3dC1zdGF0dXMuYzoyMTEgd3Qtc3RhdHVzLmM6MTA3NAogbXNnaWQgIkNoYW5nZXMgdG8gYmUgY29tbWl0dGVkOiIKIG1zZ3N0ciAiw4RuZHJpbmdhciBhdHQgY2hlY2thIGluOiIKIAotIzogd3Qtc3RhdHVzLmM6MjIwIHd0LXN0YXR1cy5jOjEwNTEKKyM6IHd0LXN0YXR1cy5jOjIzNCB3dC1zdGF0dXMuYzoxMDgzCiBtc2dpZCAiQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6IgogbXNnc3RyICLDhG5kcmluZ2FyIGVqIGkgaW5jaGVja25pbmdza8O2bjoiCiAKLSM6IHd0LXN0YXR1cy5jOjIyNAorIzogd3Qtc3RhdHVzLmM6MjM4CiBtc2dpZCAiICAodXNlIFwiZ2l0IGFkZCA8ZmlsZT4uLi5cIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCiBtc2dzdHIgIiIKLSIgIChhbnbDpG5kIFwiZ2l0IGFkZCA8ZmlsPi4uLlwiIGbDtnIgYXR0IHVwcGRhdGVyYSB2YWQgc29tIHNrYWxsIGNoZWNrYXMgaW4pIgorIiAgKGFudsOkbmQgXCJnaXQgYWRkIDxmaWw+Li4uXCIgZsO2ciBhdHQgdXBwZGF0ZXJhIHZhZCBzb20gc2thIGNoZWNrYXMgaW4pIgogCi0jOiB3dC1zdGF0dXMuYzoyMjYKKyM6IHd0LXN0YXR1cy5jOjI0MAogbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQvcm0gPGZpbGU+Li4uXCIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIgogbXNnc3RyICIiCi0iICAoYW52w6RuZCBcImdpdCBhZGQvcm0gPGZpbD4uLi5cIiBmw7ZyIGF0dCB1cHBkYXRlcmEgdmFkIHNvbSBza2FsbCBjaGVja2FzIGluKSIKKyIgIChhbnbDpG5kIFwiZ2l0IGFkZC9ybSA8ZmlsPi4uLlwiIGbDtnIgYXR0IHVwcGRhdGVyYSB2YWQgc29tIHNrYSBjaGVja2FzIGluKSIKIAotIzogd3Qtc3RhdHVzLmM6MjI3CisjOiB3dC1zdGF0dXMuYzoyNDEKIG1zZ2lkICIiCi0iICAodXNlIFwiZ2l0IGNoZWNrb3V0IC0tIDxmaWxlPi4uLlwiIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkiCisiICAodXNlIFwiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uXCIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KSIKIG1zZ3N0ciAiIgotIiAgKGFudsOkbmQgXCJnaXQgY2hlY2tvdXQgLS0gPGZpbD4uLi5cIiBmw7ZyIGF0dCBmw7Zya2FzdGEgw6RuZHJpbmdhciBpICIKKyIgIChhbnbDpG5kIFwiZ2l0IHJlc3RvcmUgPGZpbD4uLi5cIiBmw7ZyIGF0dCBmw7Zya2FzdGEgw6RuZHJpbmdhciBpICIKICJhcmJldHNrYXRhbG9nZW4pIgogCi0jOiB3dC1zdGF0dXMuYzoyMjkKKyM6IHd0LXN0YXR1cy5jOjI0MwogbXNnaWQgIiAgKGNvbW1pdCBvciBkaXNjYXJkIHRoZSB1bnRyYWNrZWQgb3IgbW9kaWZpZWQgY29udGVudCBpbiBzdWJtb2R1bGVzKSIKIG1zZ3N0ciAiIgogIiAgKGNoZWNrYSBpbiBlbGxlciBmw7Zya2FzdGEgb3Nww6VyYXQgZWxsZXIgw6RuZHJhdCBpbm5laMOlbGwgaSB1bmRlcm1vZHVsZXIpIgogCi0jOiB3dC1zdGF0dXMuYzoyNDEKKyM6IHd0LXN0YXR1cy5jOjI1NAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICh1c2UgXCJnaXQgJXMgPGZpbGU+Li4uXCIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiIgotIiAgKGFudsOkbmQgXCJnaXQgJXMgPGZpbD4uLi5cIiBmw7ZyIGF0dCB0YSBtZWQgaSBkZXQgc29tIHNrYWxsIGNoZWNrYXMgaW4pIgorIiAgKGFudsOkbmQgXCJnaXQgJXMgPGZpbD4uLi5cIiBmw7ZyIGF0dCB0YSBtZWQgaSBkZXQgc29tIHNrYSBjaGVja2FzIGluKSIKIAotIzogd3Qtc3RhdHVzLmM6MjU2CisjOiB3dC1zdGF0dXMuYzoyNjgKIG1zZ2lkICJib3RoIGRlbGV0ZWQ6IgogbXNnc3RyICJib3J0dGFnZXQgYXYgYsOkZ2dlOiIKIAotIzogd3Qtc3RhdHVzLmM6MjU4CisjOiB3dC1zdGF0dXMuYzoyNzAKIG1zZ2lkICJhZGRlZCBieSB1czoiCiBtc2dzdHIgInRpbGxhZ3QgYXYgb3NzOiIKIAotIzogd3Qtc3RhdHVzLmM6MjYwCisjOiB3dC1zdGF0dXMuYzoyNzIKIG1zZ2lkICJkZWxldGVkIGJ5IHRoZW06IgogbXNnc3RyICJib3J0dGFnZXQgYXYgZGVtOiIKIAotIzogd3Qtc3RhdHVzLmM6MjYyCisjOiB3dC1zdGF0dXMuYzoyNzQKIG1zZ2lkICJhZGRlZCBieSB0aGVtOiIKIG1zZ3N0ciAidGlsbGFndCBhdiBkZW06IgogCi0jOiB3dC1zdGF0dXMuYzoyNjQKKyM6IHd0LXN0YXR1cy5jOjI3NgogbXNnaWQgImRlbGV0ZWQgYnkgdXM6IgogbXNnc3RyICJib3J0dGFnZXQgYXYgb3NzOiIKIAotIzogd3Qtc3RhdHVzLmM6MjY2CisjOiB3dC1zdGF0dXMuYzoyNzgKIG1zZ2lkICJib3RoIGFkZGVkOiIKIG1zZ3N0ciAidGlsbGFndCBhdiBiw6RnZ2U6IgogCi0jOiB3dC1zdGF0dXMuYzoyNjgKKyM6IHd0LXN0YXR1cy5jOjI4MAogbXNnaWQgImJvdGggbW9kaWZpZWQ6IgogbXNnc3RyICLDpG5kcmF0IGF2IGLDpGdnZToiCiAKLSM6IHd0LXN0YXR1cy5jOjI3OAorIzogd3Qtc3RhdHVzLmM6MjkwCiBtc2dpZCAibmV3IGZpbGU6IgogbXNnc3RyICJueSBmaWw6IgogCi0jOiB3dC1zdGF0dXMuYzoyODAKKyM6IHd0LXN0YXR1cy5jOjI5MgogbXNnaWQgImNvcGllZDoiCiBtc2dzdHIgImtvcGllcmFkOiIKIAotIzogd3Qtc3RhdHVzLmM6MjgyCisjOiB3dC1zdGF0dXMuYzoyOTQKIG1zZ2lkICJkZWxldGVkOiIKIG1zZ3N0ciAiYm9ydHRhZ2VuOiIKIAotIzogd3Qtc3RhdHVzLmM6Mjg0CisjOiB3dC1zdGF0dXMuYzoyOTYKIG1zZ2lkICJtb2RpZmllZDoiCiBtc2dzdHIgIsOkbmRyYWQ6IgogCi0jOiB3dC1zdGF0dXMuYzoyODYKKyM6IHd0LXN0YXR1cy5jOjI5OAogbXNnaWQgInJlbmFtZWQ6IgogbXNnc3RyICJuYW1uYnl0dDoiCiAKLSM6IHd0LXN0YXR1cy5jOjI4OAorIzogd3Qtc3RhdHVzLmM6MzAwCiBtc2dpZCAidHlwZWNoYW5nZToiCiBtc2dzdHIgInR5cGJ5dGU6IgogCi0jOiB3dC1zdGF0dXMuYzoyOTAKKyM6IHd0LXN0YXR1cy5jOjMwMgogbXNnaWQgInVua25vd246IgogbXNnc3RyICJva8OkbmQ6IgogCi0jOiB3dC1zdGF0dXMuYzoyOTIKKyM6IHd0LXN0YXR1cy5jOjMwNAogbXNnaWQgInVubWVyZ2VkOiIKIG1zZ3N0ciAib3NhbW1hbnNsYWdlbjoiCiAKLSM6IHd0LXN0YXR1cy5jOjM3MgorIzogd3Qtc3RhdHVzLmM6Mzg0CiBtc2dpZCAibmV3IGNvbW1pdHMsICIKIG1zZ3N0ciAibnlhIGluY2hlY2tuaW5nYXIsICIKIAotIzogd3Qtc3RhdHVzLmM6Mzc0CisjOiB3dC1zdGF0dXMuYzozODYKIG1zZ2lkICJtb2RpZmllZCBjb250ZW50LCAiCiBtc2dzdHIgIsOkbmRyYXQgaW5uZWjDpWxsLCAiCiAKLSM6IHd0LXN0YXR1cy5jOjM3NgorIzogd3Qtc3RhdHVzLmM6Mzg4CiBtc2dpZCAidW50cmFja2VkIGNvbnRlbnQsICIKIG1zZ3N0ciAib3Nww6VyYXQgaW5uZWjDpWxsLCAiCiAKLSM6IHd0LXN0YXR1cy5jOjg4MAorIzogd3Qtc3RhdHVzLmM6OTA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgc3Rhc2ggY3VycmVudGx5IGhhcyAlZCBlbnRyeSIKIG1zZ2lkX3BsdXJhbCAiWW91ciBzdGFzaCBjdXJyZW50bHkgaGFzICVkIGVudHJpZXMiCiBtc2dzdHJbMF0gIlN0YXNoZW4gaW5uZWjDpWxsZXIganVzdCBudSAlZCBwb3N0IgogbXNnc3RyWzFdICJTdGFzaGVuIGlubmVow6VsbGVyIGp1c3QgbnUgJWQgcG9zdGVyIgogCi0jOiB3dC1zdGF0dXMuYzo5MTIKKyM6IHd0LXN0YXR1cy5jOjkzOAogbXNnaWQgIlN1Ym1vZHVsZXMgY2hhbmdlZCBidXQgbm90IHVwZGF0ZWQ6IgogbXNnc3RyICJVbmRlcm1vZHVsZXIgw6RuZHJhZGUgbWVuIGludGUgdXBwZGF0ZXJhZGU6IgogCi0jOiB3dC1zdGF0dXMuYzo5MTQKKyM6IHd0LXN0YXR1cy5jOjk0MAogbXNnaWQgIlN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCiBtc2dzdHIgIlVuZGVybW9kdWxlcnMgw6RuZHJpbmdhciBhdHQgY2hlY2thIGluOiIKIAotIzogd3Qtc3RhdHVzLmM6OTk2CisjOiB3dC1zdGF0dXMuYzoxMDIyCiBtc2dpZCAiIgogIkRvIG5vdCBtb2RpZnkgb3IgcmVtb3ZlIHRoZSBsaW5lIGFib3ZlLlxuIgogIkV2ZXJ5dGhpbmcgYmVsb3cgaXQgd2lsbCBiZSBpZ25vcmVkLiIKQEAgLTY4MDMsMTA3ICs4OTQ4LDExOCBAQAogIlJhZGVuIG92YW4gZsOlciBpbnRlIMOkbmRyYXMgZWxsZXIgdGFzIGJvcnQuXG4iCiAiQWxsdCB1bmRlciBkZW4ga29tbWVyIHRhcyBib3J0LiIKIAotIzogd3Qtc3RhdHVzLmM6MTA5NworIzogd3Qtc3RhdHVzLmM6MTExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gY29tcHV0ZSB0aGUgYnJhbmNoIGFoZWFkL2JlaGluZCB2YWx1ZXMuXG4iCisiWW91IGNhbiB1c2UgJy0tbm8tYWhlYWQtYmVoaW5kJyB0byBhdm9pZCB0aGlzLlxuIgorbXNnc3RyICIiCisiXG4iCisiRGV0IHRvZyAlLjJmIHNla3VuZGVyIGF0dCByw6RrbmEgZsO2cmUvYmFrb20tdsOkcmRlbi5cbiIKKyJEdSBrYW4gYW52w6RuZGEgXCItLW5vLWFoZWFkLWJlaGluZFwiIGbDtnIgdW5kdmlrYSBkZXR0YS5cbiIKKworIzogd3Qtc3RhdHVzLmM6MTE0NAogbXNnaWQgIllvdSBoYXZlIHVubWVyZ2VkIHBhdGhzLiIKIG1zZ3N0ciAiRHUgaGFyIGVqIHNhbW1hbnNsYWduYSBzw7ZrdsOkZ2FyLiIKIAotIzogd3Qtc3RhdHVzLmM6MTEwMAorIzogd3Qtc3RhdHVzLmM6MTE0NwogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjb21taXRcIikiCiBtc2dzdHIgIiAgKHLDpHR0YSBrb25mbGlrdGVyIG9jaCBrw7ZyIFwiZ2l0IGNvbW1pdFwiKSIKIAotIzogd3Qtc3RhdHVzLmM6MTEwMgorIzogd3Qtc3RhdHVzLmM6MTE0OQogbXNnaWQgIiAgKHVzZSBcImdpdCBtZXJnZSAtLWFib3J0XCIgdG8gYWJvcnQgdGhlIG1lcmdlKSIKIG1zZ3N0ciAiICAoYW52w6RuZCBcImdpdCBtZXJnZSAtLWFib3J0XCIgZsO2ciBhdHQgYXZicnl0YSBzYW1tYW5zbGFnbmluZ2VuKSIKIAotIzogd3Qtc3RhdHVzLmM6MTEwNgorIzogd3Qtc3RhdHVzLmM6MTE1MwogbXNnaWQgIkFsbCBjb25mbGljdHMgZml4ZWQgYnV0IHlvdSBhcmUgc3RpbGwgbWVyZ2luZy4iCiBtc2dzdHIgIkFsbGEga29uZmxpa3RlciBoYXIgcsOkdHRhdHMgbWVuIGR1IMOkciBmb3J0ZmFyYW5kZSBpIGVuIHNhbW1hbnNsYWduaW5nLiIKIAotIzogd3Qtc3RhdHVzLmM6MTEwOQorIzogd3Qtc3RhdHVzLmM6MTE1NgogbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXRcIiB0byBjb25jbHVkZSBtZXJnZSkiCiBtc2dzdHIgIiAgKGFudsOkbmQgXCJnaXQgY29tbWl0XCIgZsO2ciBhdHQgc2x1dGbDtnJhIHNhbW1hbnNsYWduaW5nZW4pIgogCi0jOiB3dC1zdGF0dXMuYzoxMTE4CisjOiB3dC1zdGF0dXMuYzoxMTY1CiBtc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGFuIGFtIHNlc3Npb24uIgogbXNnc3RyICJEdSDDpHIgaSBtaXR0ZW4gYXYgZW4ga8O2cm5pbmcgYXYgXCJnaXQgYW1cIi4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMjEKKyM6IHd0LXN0YXR1cy5jOjExNjgKIG1zZ2lkICJUaGUgY3VycmVudCBwYXRjaCBpcyBlbXB0eS4iCiBtc2dzdHIgIkFrdHVlbGwgcGF0Y2ggw6RyIHRvbS4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMjUKKyM6IHd0LXN0YXR1cy5jOjExNzIKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCB0aGVuIHJ1biBcImdpdCBhbSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgIChyw6R0dGEga29uZmxpa3RlciBvY2gga8O2ciBzZWRhbiBcImdpdCBhbSAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMTI3CisjOiB3dC1zdGF0dXMuYzoxMTc0CiBtc2dpZCAiICAodXNlIFwiZ2l0IGFtIC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCiBtc2dzdHIgIiAgKGFudsOkbmQgXCJnaXQgYW0gLS1za2lwXCIgZsO2ciBhdHQgaG9wcGEgw7Z2ZXIgcGF0Y2hlbikiCiAKLSM6IHd0LXN0YXR1cy5jOjExMjkKKyM6IHd0LXN0YXR1cy5jOjExNzYKIG1zZ2lkICIgICh1c2UgXCJnaXQgYW0gLS1hYm9ydFwiIHRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCkiCiBtc2dzdHIgIiAgKGFudsOkbmQgXCJnaXQgYW0gLS1hYm9ydFwiIGbDtnIgYXR0IMOldGVyc3TDpGxsYSB1cnNwcnVuZ3NncmVuZW4pIgogCi0jOiB3dC1zdGF0dXMuYzoxMjYwCisjOiB3dC1zdGF0dXMuYzoxMzA5CiBtc2dpZCAiZ2l0LXJlYmFzZS10b2RvIGlzIG1pc3NpbmcuIgogbXNnc3RyICJnaXQtcmViYXNlLXRvZG8gc2FrbmFzLiIKIAotIzogd3Qtc3RhdHVzLmM6MTI2MgorIzogd3Qtc3RhdHVzLmM6MTMxMQogbXNnaWQgIk5vIGNvbW1hbmRzIGRvbmUuIgogbXNnc3RyICJJbmdhIGtvbW1hbmRvbiB1dGbDtnJkYS4iCiAKLSM6IHd0LXN0YXR1cy5jOjEyNjUKKyM6IHd0LXN0YXR1cy5jOjEzMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiTGFzdCBjb21tYW5kIGRvbmUgKCVkIGNvbW1hbmQgZG9uZSk6IgogbXNnaWRfcGx1cmFsICJMYXN0IGNvbW1hbmRzIGRvbmUgKCVkIGNvbW1hbmRzIGRvbmUpOiIKIG1zZ3N0clswXSAiU2lzdGEga29tbWFuZG90IHV0ZsO2cnQgKCVkIGtvbW1hbmRvIHV0ZsO2cnQpOiIKIG1zZ3N0clsxXSAiU2lzdGEga29tbWFuZG90IHV0ZsO2cnQgKCVkIGtvbW1hbmRvbiB1dGbDtnJ0KToiCiAKLSM6IHd0LXN0YXR1cy5jOjEyNzYKKyM6IHd0LXN0YXR1cy5jOjEzMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAoc2VlIG1vcmUgaW4gZmlsZSAlcykiCiBtc2dzdHIgIiAgKHNlIGZsZXIgaSBmaWxlbiAlcykiCiAKLSM6IHd0LXN0YXR1cy5jOjEyODEKKyM6IHd0LXN0YXR1cy5jOjEzMzAKIG1zZ2lkICJObyBjb21tYW5kcyByZW1haW5pbmcuIgogbXNnc3RyICJJbmdhIGtvbW1hbmRvbiDDpXRlcnN0w6VyLiIKIAotIzogd3Qtc3RhdHVzLmM6MTI4NAorIzogd3Qtc3RhdHVzLmM6MTMzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJOZXh0IGNvbW1hbmQgdG8gZG8gKCVkIHJlbWFpbmluZyBjb21tYW5kKToiCiBtc2dpZF9wbHVyYWwgIk5leHQgY29tbWFuZHMgdG8gZG8gKCVkIHJlbWFpbmluZyBjb21tYW5kcyk6IgogbXNnc3RyWzBdICJOw6RzdGEga29tbWFuZG8gYXR0IHV0ZsO2cmEgKCVkIGtvbW1hbmRvIMOldGVyc3TDpXIpOiIKIG1zZ3N0clsxXSAiRsO2bGphbmRlIGtvbW1hbmRvbiBhdHQgdXRmw7ZyYSAoJWQga29tbWFuZG9uIMOldGVyc3TDpXIpOiIKIAotIzogd3Qtc3RhdHVzLmM6MTI5MgorIzogd3Qtc3RhdHVzLmM6MTM0MQogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1lZGl0LXRvZG9cIiB0byB2aWV3IGFuZCBlZGl0KSIKIG1zZ3N0ciAiICAoYW52w6RuZCBcImdpdCByZWJhc2UgLS1lZGl0LXRvZG9cIiBmw7ZyIGF0dCB2aXNhIG9jaCByZWRpZ2VyYSkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMDQKKyM6IHd0LXN0YXR1cy5jOjEzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmViYXNpbmcgYnJhbmNoICclcycgb24gJyVzJy4iCiBtc2dzdHIgIkR1IGjDpWxsZXIgcMOlIGF0dCBvbWJhc2VyYSBncmVuZW4gXCIlc1wiIG92YW5ww6UgXCIlc1wiLiIKIAotIzogd3Qtc3RhdHVzLmM6MTMwOQorIzogd3Qtc3RhdHVzLmM6MTM1OAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJlYmFzaW5nLiIKIG1zZ3N0ciAiRHUgaMOlbGxlciBww6UgbWVkIGVuIG9tYmFzZXJpbmcuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzIyCisjOiB3dC1zdGF0dXMuYzoxMzcxCiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKHLDpHR0YSBrb25mbGlrdGVyIG9jaCBrw7ZyIHNlZGFuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzI0CisjOiB3dC1zdGF0dXMuYzoxMzczCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgogbXNnc3RyICIgIChhbnbDpG5kIFwiZ2l0IHJlYmFzZSAtLXNraXBcIiBmw7ZyIGF0dCBob3BwYSDDtnZlciBwYXRjaGVuKSIKIAotIzogd3Qtc3RhdHVzLmM6MTMyNgorIzogd3Qtc3RhdHVzLmM6MTM3NQogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1hYm9ydFwiIHRvIGNoZWNrIG91dCB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiICAoYW52w6RuZCBcImdpdCByZWJhc2UgLS1hYm9ydFwiIGbDtnIgYXR0IGNoZWNrYSB1dCB1cnNwcnVuZ3NncmVuZW4pIgogCi0jOiB3dC1zdGF0dXMuYzoxMzMzCisjOiB3dC1zdGF0dXMuYzoxMzgyCiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgIChhbGxhIGtvbmZsaWt0ZXIgcsOkdHRhZGU6IGvDtnIgXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMzcKKyM6IHd0LXN0YXR1cy5jOjEzODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBhcmUgY3VycmVudGx5IHNwbGl0dGluZyBhIGNvbW1pdCB3aGlsZSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKQEAgLTY5MTEsMTI2ICs5MDY3LDE0MiBAQAogIkR1IGjDpWxsZXIgcMOlIGF0dCBkZWxhIHVwcCBlbiBpbmNoZWNrbmluZyBtZWRhbiBkdSBvbWJhc2VyYXIgZ3JlbmVuIFwiJXNcIiAiCiAib3ZhbnDDpSBcIiVzXCIuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzQyCisjOiB3dC1zdGF0dXMuYzoxMzkxCiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgc3BsaXR0aW5nIGEgY29tbWl0IGR1cmluZyBhIHJlYmFzZS4iCiBtc2dzdHIgIkR1IGjDpWxsZXIgcMOlIGF0dCBkZWxhIHVwcCBlbiBpbmNoZWNrbmluZyBpIGVuIG9tYmFzZXJpbmcuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzQ1CisjOiB3dC1zdGF0dXMuYzoxMzk0CiBtc2dpZCAiICAoT25jZSB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IGlzIGNsZWFuLCBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKFPDpSBmb3J0IGRpbiBhcmJldHNrYXRhbG9nIMOkciByZW4sIGvDtnIgXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNDkKKyM6IHd0LXN0YXR1cy5jOjEzOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgZWRpdGluZyBhIGNvbW1pdCB3aGlsZSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKIG1zZ3N0ciAiIgogIkR1IGjDpWxsZXIgcMOlIGF0dCByZWRpZ2VyYSBlbiBpbmNoZWNrbmluZyBtZWRhbiBkdSBvbWJhc2VyYXIgZ3JlbmVuIFwiJXNcIiAiCiAib3ZhbnDDpSBcIiVzXCIuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzU0CisjOiB3dC1zdGF0dXMuYzoxNDAzCiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgZWRpdGluZyBhIGNvbW1pdCBkdXJpbmcgYSByZWJhc2UuIgogbXNnc3RyICJEdSBow6VsbGVyIHDDpSBhdHQgcmVkaWdlcmEgZW4gaW5jaGVja25pbmcgdW5kZXIgZW4gb21iYXNlcmluZy4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTcKKyM6IHd0LXN0YXR1cy5jOjE0MDYKIG1zZ2lkICIgICh1c2UgXCJnaXQgY29tbWl0IC0tYW1lbmRcIiB0byBhbWVuZCB0aGUgY3VycmVudCBjb21taXQpIgogbXNnc3RyICIiCiAiICAoYW52w6RuZCBcImdpdCBjb21taXQgLS1hbWVuZFwiIGbDtnIgYXR0IGzDpGdnYSB0aWxsIHDDpSBha3R1ZWxsIGluY2hlY2tuaW5nKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM1OQorIzogd3Qtc3RhdHVzLmM6MTQwOAogbXNnaWQgIiIKICIgICh1c2UgXCJnaXQgcmViYXNlIC0tY29udGludWVcIiBvbmNlIHlvdSBhcmUgc2F0aXNmaWVkIHdpdGggeW91ciBjaGFuZ2VzKSIKIG1zZ3N0ciAiICAoYW52w6RuZCBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiIG7DpHIgZHUgw6RyIG7DtmpkIG1lZCBkaW5hIMOkbmRyaW5nYXIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzY4CisjOiB3dC1zdGF0dXMuYzoxNDE5Cittc2dpZCAiQ2hlcnJ5LXBpY2sgY3VycmVudGx5IGluIHByb2dyZXNzLiIKK21zZ3N0ciAiQ2hlcnJ5LXBpY2sgcMOlZ8Olci4iCisKKyM6IHd0LXN0YXR1cy5jOjE0MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgY2hlcnJ5LXBpY2tpbmcgY29tbWl0ICVzLiIKIG1zZ3N0ciAiRHUgaMOlbGxlciBww6UgbWVkIGVuIFwiY2hlcnJ5LXBpY2tcIiBhdiBpbmNoZWNrbmluZ2VuICVzLiIKIAotIzogd3Qtc3RhdHVzLmM6MTM3MworIzogd3Qtc3RhdHVzLmM6MTQyOQogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgIChyw6R0dGEga29uZmxpa3RlciBvY2gga8O2ciBzZWRhbiBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzc2CisjOiB3dC1zdGF0dXMuYzoxNDMyCittc2dpZCAiICAocnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB0byBjb250aW51ZSkiCittc2dzdHIgIiAgKGvDtnIgXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIGbDtnIgYXR0IGZvcnRzw6R0dGEpIgorCisjOiB3dC1zdGF0dXMuYzoxNDM1CiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKGFsbGEga29uZmxpa3RlciByw6R0dGFkZToga8O2ciBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzc4CisjOiB3dC1zdGF0dXMuYzoxNDM3Cittc2dpZCAiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCittc2dzdHIgIiAgKGFudsOkbmQgXCJnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXCIgZsO2ciBhdHQgaG9wcGEgw7Z2ZXIgcGF0Y2hlbikiCisKKyM6IHd0LXN0YXR1cy5jOjE0MzkKIG1zZ2lkICIgICh1c2UgXCJnaXQgY2hlcnJ5LXBpY2sgLS1hYm9ydFwiIHRvIGNhbmNlbCB0aGUgY2hlcnJ5LXBpY2sgb3BlcmF0aW9uKSIKIG1zZ3N0ciAiIgogIiAgKGFudsOkbmQgXCJnaXQgY2hlcnJ5LXBpY2sgLS1hYm9ydFwiIGbDtnIgYXR0IGF2YnJ5dGEgXCJjaGVycnktcGlja1wiLSIKICJvcGVyYXRpb25lbikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzODYKKyM6IHd0LXN0YXR1cy5jOjE0NDkKK21zZ2lkICJSZXZlcnQgY3VycmVudGx5IGluIHByb2dyZXNzLiIKK21zZ3N0ciAiw4VuZ3JpbmcgcMOlZ8Olci4iCisKKyM6IHd0LXN0YXR1cy5jOjE0NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmV2ZXJ0aW5nIGNvbW1pdCAlcy4iCiBtc2dzdHIgIkR1IGjDpWxsZXIgcMOlIG1lZCBhdHQgw6VuZ3JhIGluY2hlY2tuaW5nZW4gJXMuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzkxCisjOiB3dC1zdGF0dXMuYzoxNDU4CiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgIChyw6R0dGEga29uZmxpa3RlciBvY2gga8O2ciBzZWRhbiBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM5NAorIzogd3Qtc3RhdHVzLmM6MTQ2MQorbXNnaWQgIiAgKHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiIHRvIGNvbnRpbnVlKSIKK21zZ3N0ciAiICAoa8O2ciBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiIGbDtnIgYXR0IGZvcnRzw6R0dGEpIgorCisjOiB3dC1zdGF0dXMuYzoxNDY0CiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgIChhbGxhIGtvbmZsaWt0ZXIgcsOkdHRhZGU6IGvDtnIgXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzOTYKKyM6IHd0LXN0YXR1cy5jOjE0NjYKK21zZ2lkICIgICh1c2UgXCJnaXQgcmV2ZXJ0IC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCittc2dzdHIgIiAgKGFudsOkbmQgXCJnaXQgcmV2ZXJ0IC0tc2tpcFwiIGbDtnIgYXR0IGhvcHBhIMO2dmVyIHBhdGNoZW4pIgorCisjOiB3dC1zdGF0dXMuYzoxNDY4CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJldmVydCAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSByZXZlcnQgb3BlcmF0aW9uKSIKIG1zZ3N0ciAiICAoYW52w6RuZCBcImdpdCByZXZlcnQgLS1hYm9ydFwiIGbDtnIgYXR0IGF2YnJ5dGEgw6VuZ3JhbmRldCkiCiAKLSM6IHd0LXN0YXR1cy5jOjE0MDYKKyM6IHd0LXN0YXR1cy5jOjE0NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgYmlzZWN0aW5nLCBzdGFydGVkIGZyb20gYnJhbmNoICclcycuIgogbXNnc3RyICJEdSBow6VsbGVyIHDDpSBtZWQgZW4gXCJiaXNlY3RcIiwgc3RhcnRhZCBmcsOlbiBncmVuZW4gXCIlc1wiLiIKIAotIzogd3Qtc3RhdHVzLmM6MTQxMAorIzogd3Qtc3RhdHVzLmM6MTQ4MgogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGJpc2VjdGluZy4iCiBtc2dzdHIgIkR1IGjDpWxsZXIgcMOlIG1lZCBlbiBcImJpc2VjdFwiLiIKIAotIzogd3Qtc3RhdHVzLmM6MTQxMworIzogd3Qtc3RhdHVzLmM6MTQ4NQogbXNnaWQgIiAgKHVzZSBcImdpdCBiaXNlY3QgcmVzZXRcIiB0byBnZXQgYmFjayB0byB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiIgogIiAgKGFudsOkbmQgXCJnaXQgYmlzZWN0IHJlc2V0XCIgZsO2ciBhdHQga29tbWEgdGlsbGJha2EgdGlsbCB1cnNwcnVuZ3NncmVuZW4pIgogCi0jOiB3dC1zdGF0dXMuYzoxNjExCisjOiB3dC1zdGF0dXMuYzoxNjk0CiBtc2dpZCAiT24gYnJhbmNoICIKIG1zZ3N0ciAiUMOlIGdyZW5lbiAiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MTgKKyM6IHd0LXN0YXR1cy5jOjE3MDEKIG1zZ2lkICJpbnRlcmFjdGl2ZSByZWJhc2UgaW4gcHJvZ3Jlc3M7IG9udG8gIgogbXNnc3RyICJpbnRlcmFrdGl2IG9tYmFzZXJpbmcgcMOlZ8Olcjsgb3ZhbnDDpSAiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MjAKKyM6IHd0LXN0YXR1cy5jOjE3MDMKIG1zZ2lkICJyZWJhc2UgaW4gcHJvZ3Jlc3M7IG9udG8gIgogbXNnc3RyICJvbWJhc2VyaW5nIHDDpWfDpXI7IG92YW5ww6UgIgogCi0jOiB3dC1zdGF0dXMuYzoxNjI1Ci1tc2dpZCAiSEVBRCBkZXRhY2hlZCBhdCAiCi1tc2dzdHIgIkhFQUQgZnLDpW5rb3BwbGFkIHZpZCAiCi0KLSM6IHd0LXN0YXR1cy5jOjE2MjcKLW1zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgotbXNnc3RyICJIRUFEIGZyw6Vua29wcGxhZCBmcsOlbiAiCi0KLSM6IHd0LXN0YXR1cy5jOjE2MzAKKyM6IHd0LXN0YXR1cy5jOjE3MTMKIG1zZ2lkICJOb3QgY3VycmVudGx5IG9uIGFueSBicmFuY2guIgogbXNnc3RyICJJbnRlIHDDpSBuw6Vnb24gZ3JlbiBmw7ZyIG7DpHJ2YXJhbmRlLiIKIAotIzogd3Qtc3RhdHVzLmM6MTY0NworIzogd3Qtc3RhdHVzLmM6MTczMAogbXNnaWQgIkluaXRpYWwgY29tbWl0IgogbXNnc3RyICJGw7Zyc3RhIGluY2hlY2tuaW5nIgogCi0jOiB3dC1zdGF0dXMuYzoxNjQ4CisjOiB3dC1zdGF0dXMuYzoxNzMxCiBtc2dpZCAiTm8gY29tbWl0cyB5ZXQiCiBtc2dzdHIgIkluZ2EgaW5jaGVja25pbmdhciDDpG5udSIKIAotIzogd3Qtc3RhdHVzLmM6MTY2MgorIzogd3Qtc3RhdHVzLmM6MTc0NQogbXNnaWQgIlVudHJhY2tlZCBmaWxlcyIKIG1zZ3N0ciAiT3Nww6VyYWRlIGZpbGVyIgogCi0jOiB3dC1zdGF0dXMuYzoxNjY0CisjOiB3dC1zdGF0dXMuYzoxNzQ3CiBtc2dpZCAiSWdub3JlZCBmaWxlcyIKIG1zZ3N0ciAiSWdub3JlcmFkZSBmaWxlciIKIAotIzogd3Qtc3RhdHVzLmM6MTY2OAorIzogd3Qtc3RhdHVzLmM6MTc1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gZW51bWVyYXRlIHVudHJhY2tlZCBmaWxlcy4gJ3N0YXR1cyAtdW5vJ1xuIgpAQCAtNzA0MiwzMiArOTIxNCwzMiBAQAogImzDpGdnYSB0aWxsIG55YSBmaWxlciBzasOkbHYgKHNlIFwiZ2l0IGhlbHAgc3RhdHVzXCIpLiIKIAogIyAlcyDDpHIgbsOkc3RhIHN0csOkbmcgZWxsZXIgdG9tLgotIzogd3Qtc3RhdHVzLmM6MTY3NAorIzogd3Qtc3RhdHVzLmM6MTc1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJVbnRyYWNrZWQgZmlsZXMgbm90IGxpc3RlZCVzIgogbXNnc3RyICJPc3DDpXJhZGUgZmlsZXIgdmlzYXMgZWolcyIKIAotIzogd3Qtc3RhdHVzLmM6MTY3NgorIzogd3Qtc3RhdHVzLmM6MTc1OQogbXNnaWQgIiAodXNlIC11IG9wdGlvbiB0byBzaG93IHVudHJhY2tlZCBmaWxlcykiCiBtc2dzdHIgIiAoYW52w6RuZCBmbGFnZ2FuIC11IGbDtnIgYXR0IHZpc2Egb3Nww6VyYWRlIGZpbGVyKSIKIAotIzogd3Qtc3RhdHVzLmM6MTY4MgorIzogd3Qtc3RhdHVzLmM6MTc2NQogbXNnaWQgIk5vIGNoYW5nZXMiCiBtc2dzdHIgIkluZ2Egw6RuZHJpbmdhciIKIAotIzogd3Qtc3RhdHVzLmM6MTY4NworIzogd3Qtc3RhdHVzLmM6MTc3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdCAodXNlIFwiZ2l0IGFkZFwiIGFuZC9vciBcImdpdCBjb21taXQgLWFcIilcbiIKIG1zZ3N0ciAiIgogImluZ2Egw6RuZHJpbmdhciBhdHQgY2hlY2thIGluIChhbnbDpG5kIFwiZ2l0IGFkZFwiIG9jaC9lbGxlciBcImdpdCBjb21taXQgLWEiCiAiXCIpXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTAKKyM6IHd0LXN0YXR1cy5jOjE3NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXRcbiIKIG1zZ3N0ciAiaW5nYSDDpG5kcmluZ2FyIGF0dCBjaGVja2EgaW5cbiIKIAotIzogd3Qtc3RhdHVzLmM6MTY5MworIzogd3Qtc3RhdHVzLmM6MTc3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibm90aGluZyBhZGRlZCB0byBjb21taXQgYnV0IHVudHJhY2tlZCBmaWxlcyBwcmVzZW50ICh1c2UgXCJnaXQgYWRkXCIgdG8gIgpAQCAtNzA3NiwxODYgKzkyNDgsMTk1IEBACiAiaW5nZXQga8O2YXQgZsO2ciBpbmNoZWNrbmluZywgbWVuIG9zcMOlcmFkZSBmaWxlciBmaW5ucyAoc3DDpXJhIG1lZCBcImdpdCBhZGQiCiAiXCIpXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTYKKyM6IHd0LXN0YXR1cy5jOjE3NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyBhZGRlZCB0byBjb21taXQgYnV0IHVudHJhY2tlZCBmaWxlcyBwcmVzZW50XG4iCiBtc2dzdHIgImluZ2V0IGvDtmF0IGbDtnIgaW5jaGVja25pbmcsIG1lbiBvc3DDpXJhZGUgZmlsZXIgZmlubnNcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTY5OQorIzogd3Qtc3RhdHVzLmM6MTc4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIGNvbW1pdCAoY3JlYXRlL2NvcHkgZmlsZXMgYW5kIHVzZSBcImdpdCBhZGRcIiB0byB0cmFjaylcbiIKIG1zZ3N0ciAiaW5nZXQgYXR0IGNoZWNrYSBpbiAoc2thcGEva29waWVyYSBmaWxlciBvY2ggc3DDpXJhIG1lZCBcImdpdCBhZGRcIilcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTcwMiB3dC1zdGF0dXMuYzoxNzA3CisjOiB3dC1zdGF0dXMuYzoxNzg1IHd0LXN0YXR1cy5jOjE3OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXRcbiIKIG1zZ3N0ciAiaW5nZXQgYXR0IGNoZWNrYSBpblxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNzA1CisjOiB3dC1zdGF0dXMuYzoxNzg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0ICh1c2UgLXUgdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpXG4iCiBtc2dzdHIgImluZ2V0IGF0dCBjaGVja2EgaW4gKGFudsOkbmQgLXUgZsO2ciBhdHQgdmlzYSBvc3DDpXJhZGUgZmlsZXIpXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE3MDkKKyM6IHd0LXN0YXR1cy5jOjE3OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXQsIHdvcmtpbmcgdHJlZSBjbGVhblxuIgogbXNnc3RyICJpbmdldCBhdHQgY2hlY2thIGluLCBhcmJldHNrYXRhbG9nZW4gcmVuXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE4MjIKKyM6IHd0LXN0YXR1cy5jOjE5MDUKIG1zZ2lkICJObyBjb21taXRzIHlldCBvbiAiCiBtc2dzdHIgIkluZ2EgaW5jaGVja25pbmdhciDDpG5udSBww6UgIgogCi0jOiB3dC1zdGF0dXMuYzoxODI2CisjOiB3dC1zdGF0dXMuYzoxOTA5CiBtc2dpZCAiSEVBRCAobm8gYnJhbmNoKSIKIG1zZ3N0ciAiSEVBRCAoaW5nZW4gZ3JlbikiCiAKLSM6IHd0LXN0YXR1cy5jOjE4NTcKKyM6IHd0LXN0YXR1cy5jOjE5NDAKIG1zZ2lkICJkaWZmZXJlbnQiCiBtc2dzdHIgIm9saWthIgogCi0jOiB3dC1zdGF0dXMuYzoxODU5IHd0LXN0YXR1cy5jOjE4NjcKKyM6IHd0LXN0YXR1cy5jOjE5NDIgd3Qtc3RhdHVzLmM6MTk1MAogbXNnaWQgImJlaGluZCAiCiBtc2dzdHIgImVmdGVyICIKIAotIzogd3Qtc3RhdHVzLmM6MTg2MiB3dC1zdGF0dXMuYzoxODY1CisjOiB3dC1zdGF0dXMuYzoxOTQ1IHd0LXN0YXR1cy5jOjE5NDgKIG1zZ2lkICJhaGVhZCAiCiBtc2dzdHIgImbDtnJlICIKIAogIy4gVFJBTlNMQVRPUlM6IHRoZSBhY3Rpb24gaXMgZS5nLiAicHVsbCB3aXRoIHJlYmFzZSIKLSM6IHd0LXN0YXR1cy5jOjIzNzQKKyM6IHd0LXN0YXR1cy5jOjI0NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90ICVzOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAia2FuIGludGUgJXM6IER1IGhhciBva8O2YWRlIMOkbmRyaW5nYXIuIgogCi0jOiB3dC1zdGF0dXMuYzoyMzgwCisjOiB3dC1zdGF0dXMuYzoyNDc2CiBtc2dpZCAiYWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICJkZXNzdXRvbSBpbm5laMOlbGxlciBkaXQgaW5kZXggw6RuZHJpbmdhciBzb20gaW50ZSBoYXIgY2hlY2thdHMgaW4uIgogCi0jOiB3dC1zdGF0dXMuYzoyMzgyCisjOiB3dC1zdGF0dXMuYzoyNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAlczogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAia2FuIGludGUgJXM6IERpdHQgaW5kZXggaW5uZWjDpWxsZXIgw6RuZHJpbmdhciBzb20gaW50ZSBjaGVja2F0cyBpbi4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQKKyM6IGNvbXBhdC9wcmVjb21wb3NlX3V0ZjguYzo1OCBidWlsdGluL2Nsb25lLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgJyVzJyIKK21zZ3N0ciAibWlzc2x5Y2thZGVzIHRhIGJvcnQgbMOkbmtlbiBcIiVzXCIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MjYKIG1zZ2lkICJnaXQgYWRkIFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKIG1zZ3N0ciAiZ2l0IGFkZCBbPGZsYWdnb3I+XSBbLS1dIDxzw7ZrdsOkZz4uLi4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6ODMKKyM6IGJ1aWx0aW4vYWRkLmM6ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBkaWZmIHN0YXR1cyAlYyIKIG1zZ3N0ciAiZGlmZi1zdGF0dXMgJWMgZsO2cnbDpG50YWRlcyBpbnRlIgogCi0jOiBidWlsdGluL2FkZC5jOjg4IGJ1aWx0aW4vY29tbWl0LmM6Mjg0CisjOiBidWlsdGluL2FkZC5jOjkzIGJ1aWx0aW4vY29tbWl0LmM6Mjg4CiBtc2dpZCAidXBkYXRpbmcgZmlsZXMgZmFpbGVkIgogbXNnc3RyICJtaXNzbHlja2FkZXMgdXBwZGF0ZXJhIGZpbGVyIgogCi0jOiBidWlsdGluL2FkZC5jOjk4CisjOiBidWlsdGluL2FkZC5jOjEwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZW1vdmUgJyVzJ1xuIgogbXNnc3RyICJ0YSBib3J0IFwiJXNcIlxuIgogCi0jOiBidWlsdGluL2FkZC5jOjE3MworIzogYnVpbHRpbi9hZGQuYzoxNzgKIG1zZ2lkICJVbnN0YWdlZCBjaGFuZ2VzIGFmdGVyIHJlZnJlc2hpbmcgdGhlIGluZGV4OiIKIG1zZ3N0ciAiT2vDtmFkZSDDpG5kcmluZ2FyIGVmdGVyIGF0dCBoYSB1cHBkYXRlcmF0IGluZGV4ZXQ6IgogCi0jOiBidWlsdGluL2FkZC5jOjIzMyBidWlsdGluL3Jldi1wYXJzZS5jOjg5NQorIzogYnVpbHRpbi9hZGQuYzoyNjYgYnVpbHRpbi9yZXYtcGFyc2UuYzo4OTkKIG1zZ2lkICJDb3VsZCBub3QgcmVhZCB0aGUgaW5kZXgiCiBtc2dzdHIgIkt1bmRlIGludGUgbMOkc2EgaW5kZXhldCIKIAotIzogYnVpbHRpbi9hZGQuYzoyNDQKKyM6IGJ1aWx0aW4vYWRkLmM6Mjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmcuIgogbXNnc3RyICJLdW5kZSBpbnRlIMO2cHBuYSBcIiVzXCIgZsO2ciBza3Jpdm5pbmcuIgogCi0jOiBidWlsdGluL2FkZC5jOjI0OAorIzogYnVpbHRpbi9hZGQuYzoyODEKIG1zZ2lkICJDb3VsZCBub3Qgd3JpdGUgcGF0Y2giCiBtc2dzdHIgIkt1bmRlIGludGUgc2tyaXZhIHBhdGNoIgogCi0jOiBidWlsdGluL2FkZC5jOjI1MQorIzogYnVpbHRpbi9hZGQuYzoyODQKIG1zZ2lkICJlZGl0aW5nIHBhdGNoIGZhaWxlZCIKIG1zZ3N0ciAicmVkaWdlcmluZyBhdiBwYXRjaCBtaXNzbHlja2FkZXMiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjU0CisjOiBidWlsdGluL2FkZC5jOjI4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc3RhdCAnJXMnIgogbXNnc3RyICJLdW5kZSBpbnRlIHRhIHN0YXR1cyBww6UgXCIlc1wiIgogCi0jOiBidWlsdGluL2FkZC5jOjI1NgorIzogYnVpbHRpbi9hZGQuYzoyODkKIG1zZ2lkICJFbXB0eSBwYXRjaC4gQWJvcnRlZC4iCiBtc2dzdHIgIlRvbSBwYXRjaC4gQXZicnl0ZXIuIgogCi0jOiBidWlsdGluL2FkZC5jOjI2MQorIzogYnVpbHRpbi9hZGQuYzoyOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICclcyciCiBtc2dzdHIgIkt1bmRlIGludGUgdGlsbMOkbXBhIFwiJXNcIiIKIAotIzogYnVpbHRpbi9hZGQuYzoyNjkKKyM6IGJ1aWx0aW4vYWRkLmM6MzAyCiBtc2dpZCAiVGhlIGZvbGxvd2luZyBwYXRocyBhcmUgaWdub3JlZCBieSBvbmUgb2YgeW91ciAuZ2l0aWdub3JlIGZpbGVzOlxuIgogbXNnc3RyICJGw7ZsamFuZGUgc8O2a3bDpGdhciBpZ25vcmVyYXMgYXYgZW4gYXYgZGluYSAuZ2l0aWdub3JlLWZpbGVyOlxuIgogCi0jOiBidWlsdGluL2FkZC5jOjI4OSBidWlsdGluL2NsZWFuLmM6OTA3IGJ1aWx0aW4vZmV0Y2guYzoxMzcgYnVpbHRpbi9tdi5jOjEyMwotIzogYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1NiBidWlsdGluL3B1bGwuYzoyMTMgYnVpbHRpbi9wdXNoLmM6NTU3Ci0jOiBidWlsdGluL3JlbW90ZS5jOjEzNDUgYnVpbHRpbi9ybS5jOjI0MCBidWlsdGluL3NlbmQtcGFjay5jOjE2NQorIzogYnVpbHRpbi9hZGQuYzozMjIgYnVpbHRpbi9jbGVhbi5jOjkxMCBidWlsdGluL2ZldGNoLmM6MTYzIGJ1aWx0aW4vbXYuYzoxMjQKKyM6IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTYgYnVpbHRpbi9wdWxsLmM6MjAzIGJ1aWx0aW4vcHVzaC5jOjU0OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNDIxIGJ1aWx0aW4vcm0uYzoyNDIgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjUKIG1zZ2lkICJkcnkgcnVuIgogbXNnc3RyICJ0ZXN0a8O2cm5pbmciCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjkyCisjOiBidWlsdGluL2FkZC5jOjMyNQogbXNnaWQgImludGVyYWN0aXZlIHBpY2tpbmciCiBtc2dzdHIgInBsb2NrYSBpbnRlcmFrdGl2dCIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTMgYnVpbHRpbi9jaGVja291dC5jOjEyNTggYnVpbHRpbi9yZXNldC5jOjMwNQorIzogYnVpbHRpbi9hZGQuYzozMjYgYnVpbHRpbi9jaGVja291dC5jOjE1MTEgYnVpbHRpbi9yZXNldC5jOjMwNwogbXNnaWQgInNlbGVjdCBodW5rcyBpbnRlcmFjdGl2ZWx5IgogbXNnc3RyICJ2w6RsaiBzdHlja2VuIGludGVyYWt0aXZ0IgogCi0jOiBidWlsdGluL2FkZC5jOjI5NAorIzogYnVpbHRpbi9hZGQuYzozMjcKIG1zZ2lkICJlZGl0IGN1cnJlbnQgZGlmZiBhbmQgYXBwbHkiCiBtc2dzdHIgInJlZGlnZXJhIGFrdHVlbGwgZGlmZiBvY2ggYXBwbGljZXJhIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NQorIzogYnVpbHRpbi9hZGQuYzozMjgKIG1zZ2lkICJhbGxvdyBhZGRpbmcgb3RoZXJ3aXNlIGlnbm9yZWQgZmlsZXMiCiBtc2dzdHIgInRpbGzDpXQgbMOkZ2dhIHRpbGwgYW5uYXJzIGlnbm9yZXJhZGUgZmlsZXIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk2CisjOiBidWlsdGluL2FkZC5jOjMyOQogbXNnaWQgInVwZGF0ZSB0cmFja2VkIGZpbGVzIgogbXNnc3RyICJ1cHBkYXRlcmEgc3DDpXJhZGUgZmlsZXIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk3CisjOiBidWlsdGluL2FkZC5jOjMzMAogbXNnaWQgInJlbm9ybWFsaXplIEVPTCBvZiB0cmFja2VkIGZpbGVzIChpbXBsaWVzIC11KSIKIG1zZ3N0ciAiw6V0ZXJub3JtYWxpc2VyYSByYWRzbHV0IGkgc3DDpXJhZGUgZmlsZXIgKGltcGxpY2VyYXIgLXUpIgogCi0jOiBidWlsdGluL2FkZC5jOjI5OAorIzogYnVpbHRpbi9hZGQuYzozMzEKIG1zZ2lkICJyZWNvcmQgb25seSB0aGUgZmFjdCB0aGF0IHRoZSBwYXRoIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCiBtc2dzdHIgInJlZ2lzdHJlcmEgZW5kYXN0IGF0dCBzw7ZrdsOkZ2VuIGtvbW1lciBsw6RnZ2FzIHRpbGwgc2VuYXJlIgogCi0jOiBidWlsdGluL2FkZC5jOjI5OQorIzogYnVpbHRpbi9hZGQuYzozMzIKIG1zZ2lkICJhZGQgY2hhbmdlcyBmcm9tIGFsbCB0cmFja2VkIGFuZCB1bnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgImzDpGdnIHRpbGwgw6RuZHJpbmdhciBmcsOlbiBhbGxhIHNww6VyYWRlIG9jaCBvc3DDpXJhZGUgZmlsZXIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzAyCisjOiBidWlsdGluL2FkZC5jOjMzNQogbXNnaWQgImlnbm9yZSBwYXRocyByZW1vdmVkIGluIHRoZSB3b3JraW5nIHRyZWUgKHNhbWUgYXMgLS1uby1hbGwpIgogbXNnc3RyICJpZ25vcmVyYSBzw7ZrdsOkZ2FyIGJvcnR0YWduYSBpIGFyYmV0c2thdGFsb2dlbiAoc2FtbWEgc29tIC0tbm8tYWxsKSIKIAotIzogYnVpbHRpbi9hZGQuYzozMDQKKyM6IGJ1aWx0aW4vYWRkLmM6MzM3CiBtc2dpZCAiZG9uJ3QgYWRkLCBvbmx5IHJlZnJlc2ggdGhlIGluZGV4IgogbXNnc3RyICJsw6RnZyBpbnRlIHRpbGwsIHVwcGRhdGVyYSBlbmRhc3QgaW5kZXhldCIKIAotIzogYnVpbHRpbi9hZGQuYzozMDUKKyM6IGJ1aWx0aW4vYWRkLmM6MzM4CiBtc2dpZCAianVzdCBza2lwIGZpbGVzIHdoaWNoIGNhbm5vdCBiZSBhZGRlZCBiZWNhdXNlIG9mIGVycm9ycyIKIG1zZ3N0ciAiaG9wcGEgYmFyYSDDtnZlciBmaWxlciBzb20gaW50ZSBrYW4gbMOkZ2dhcyB0aWxsIHDDpSBncnVuZCBhdiBmZWwiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzA2CisjOiBidWlsdGluL2FkZC5jOjMzOQogbXNnaWQgImNoZWNrIGlmIC0gZXZlbiBtaXNzaW5nIC0gZmlsZXMgYXJlIGlnbm9yZWQgaW4gZHJ5IHJ1biIKIG1zZ3N0ciAic2Ugb20gLSDDpHZlbiBzYWtuYWRlIC0gZmlsZXIgaWdub3JlcmFzIGkgdGVzdGvDtnJuaW5nIgogCi0jOiBidWlsdGluL2FkZC5jOjMwOCBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5MAorIzogYnVpbHRpbi9hZGQuYzozNDEgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA0CiBtc2dpZCAib3ZlcnJpZGUgdGhlIGV4ZWN1dGFibGUgYml0IG9mIHRoZSBsaXN0ZWQgZmlsZXMiCiBtc2dzdHIgIsO2dmVyc3R5ciBleGVrdmVyaW5nc2JpdGVuIGbDtnIgYW5naXZuYSBmaWxlciIKIAotIzogYnVpbHRpbi9hZGQuYzozMTAKKyM6IGJ1aWx0aW4vYWRkLmM6MzQzCiBtc2dpZCAid2FybiB3aGVuIGFkZGluZyBhbiBlbWJlZGRlZCByZXBvc2l0b3J5IgogbXNnc3RyICJ2YXJuYSBuw6RyIGV0dCBpbmJ5Z2d0IGFya2l2IGzDpGdncyB0aWxsIgogCi0jOiBidWlsdGluL2FkZC5jOjMyNQorIzogYnVpbHRpbi9hZGQuYzozNDUKK21zZ2lkICJiYWNrZW5kIGZvciBgZ2l0IHN0YXNoIC1wYCIKK21zZ3N0ciAiYmFrw6RuZGEgZsO2ciBcImdpdCBzdGFzaCAtcFwiIgorCisjOiBidWlsdGluL2FkZC5jOjM2MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91J3ZlIGFkZGVkIGFub3RoZXIgZ2l0IHJlcG9zaXRvcnkgaW5zaWRlIHlvdXIgY3VycmVudCByZXBvc2l0b3J5LlxuIgpAQCAtNzI4NCwxNTIgKzk0NjUsMTc2IEBACiAiXG4iCiAiXHRnaXQgcm0gLS1jYWNoZWQgJXNcbiIKICJcbiIKLSJTZSDigJ1naXQgaGVscCBzdWJtb2R1bGXigJ0gZsO2ciB5dHRlcmxpZ2FyZSBpbmZvcm1hdGlvbi4iCisiU2UgXCJnaXQgaGVscCBzdWJtb2R1bGVcIiBmw7ZyIHl0dGVybGlnYXJlIGluZm9ybWF0aW9uLiIKIAotIzogYnVpbHRpbi9hZGQuYzozNTMKKyM6IGJ1aWx0aW4vYWRkLmM6MzkxCiAjLCBjLWZvcm1hdAogbXNnaWQgImFkZGluZyBlbWJlZGRlZCBnaXQgcmVwb3NpdG9yeTogJXMiCiBtc2dzdHIgImzDpGdnZXIgdGlsbCBpbmLDpGRkYXQgZ2l0LWFya2l2OiAlcyIKIAotIzogYnVpbHRpbi9hZGQuYzozNzEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgdGhlbS5cbiIKLW1zZ3N0ciAiQW52w6RuZCAtZiBvbSBkdSB2ZXJrbGlnZW4gdmlsbCBsw6RnZ2EgdGlsbCBkZW0uXG4iCisjOiBidWlsdGluL2FkZC5jOjQxMAorbXNnaWQgIiIKKyJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCB0aGVtLlxuIgorIlR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieSBydW5uaW5nXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRJZ25vcmVkRmlsZSBmYWxzZVwiIgorbXNnc3RyICIiCisiQW52w6RuZCAtZiBvbSBkdSB2ZXJrbGlnZW4gdmlsbCBsw6RnZ2EgdGlsbCBkZW0uXG4iCisiU2zDpSBhdiBkZXR0YSBtZWRkZWxhbmRlIG1lZFxuIgorIlwiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkSWdub3JlZEZpbGUgZmFsc2VcIiIKIAotIzogYnVpbHRpbi9hZGQuYzozNzkKKyM6IGJ1aWx0aW4vYWRkLmM6NDE5CiBtc2dpZCAiYWRkaW5nIGZpbGVzIGZhaWxlZCIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIGzDpGdnYSB0aWxsIGZpbGVyIgogCi0jOiBidWlsdGluL2FkZC5jOjQxNworIzogYnVpbHRpbi9hZGQuYzo0NDcgYnVpbHRpbi9jb21taXQuYzozNDgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWludGVyYWN0aXZlLy0tcGF0Y2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIMOkciBpbmtvbXBhdGliZWx0IG1lZCAtLWludGVyYWN0aXZlLy0tcGF0Y2giCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDY0Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1lZGl0IgorbXNnc3RyICItLXBhdGhzcGVjLWZyb20tZmlsZSDDpHIgaW5rb21wYXRpYmVsdCBtZWQgLS1lZGl0IgorCisjOiBidWlsdGluL2FkZC5jOjQ3NgogbXNnaWQgIi1BIGFuZCAtdSBhcmUgbXV0dWFsbHkgaW5jb21wYXRpYmxlIgogbXNnc3RyICItQSBvY2ggLXUgw6RyIMO2bXNlc2lkaWd0IGlua29tcGF0aWJsYSIKIAotIzogYnVpbHRpbi9hZGQuYzo0MjQKKyM6IGJ1aWx0aW4vYWRkLmM6NDc5CiBtc2dpZCAiT3B0aW9uIC0taWdub3JlLW1pc3NpbmcgY2FuIG9ubHkgYmUgdXNlZCB0b2dldGhlciB3aXRoIC0tZHJ5LXJ1biIKIG1zZ3N0ciAiRmxhZ2dhbiAtLWlnbm9yZS1taXNzaW5nIGthbiBlbmRhc3QgYW52w6RuZGFzIHRpbGxzYW1tYW5zIG1lZCAtLWRyeS1ydW4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDI4CisjOiBidWlsdGluL2FkZC5jOjQ4MwogIywgYy1mb3JtYXQKIG1zZ2lkICItLWNobW9kIHBhcmFtICclcycgbXVzdCBiZSBlaXRoZXIgLXggb3IgK3giCiBtc2dzdHIgIi0tY2htb2QtcGFyYW1ldGVybiBcIiVzXCIgbcOlc3RlIGFudGluZ2VuIHZhcmEgLXggZWxsZXIgK3giCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDQzCisjOiBidWlsdGluL2FkZC5jOjUwMSBidWlsdGluL2NoZWNrb3V0LmM6MTY3NSBidWlsdGluL2NvbW1pdC5jOjM1NAorIzogYnVpbHRpbi9yZXNldC5jOjMyNyBidWlsdGluL3JtLmM6MjcyIGJ1aWx0aW4vc3Rhc2guYzoxNTA5Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggcGF0aHNwZWMgYXJndW1lbnRzIgorbXNnc3RyICItLXBhdGhzcGVjLWZyb20tZmlsZSDDpHIgaW5rb21wYXRpYmVsdCBtZWQgc8O2a3bDpGdzYW5naXZlbHNlc3BhcmFtZXRyYXIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NTA4IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjg3IGJ1aWx0aW4vY29tbWl0LmM6MzYwCisjOiBidWlsdGluL3Jlc2V0LmM6MzMzIGJ1aWx0aW4vcm0uYzoyNzggYnVpbHRpbi9zdGFzaC5jOjE1MTUKK21zZ2lkICItLXBhdGhzcGVjLWZpbGUtbnVsIHJlcXVpcmVzIC0tcGF0aHNwZWMtZnJvbS1maWxlIgorbXNnc3RyICItLXBhdGhzcGVjLWZpbGUtbnVsIGtyw6R2ZXIgLS1wYXRoc3BlYy1mcm9tLWZpbGUiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NTEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdGhpbmcgc3BlY2lmaWVkLCBub3RoaW5nIGFkZGVkLlxuIgogbXNnc3RyICJJbmdldCBhbmdpdmV0LCBpbmdldCB0aWxsYWd0LlxuIgogCi0jOiBidWlsdGluL2FkZC5jOjQ0NAotIywgYy1mb3JtYXQKLW1zZ2lkICJNYXliZSB5b3Ugd2FudGVkIHRvIHNheSAnZ2l0IGFkZCAuJz9cbiIKLW1zZ3N0ciAiS2Fuc2tlIG1lbmFkZSBkdSBhdHQgc2tyaXZhIFwiZ2l0IGFkZCAuXCI/XG4iCisjOiBidWlsdGluL2FkZC5jOjUxNAorbXNnaWQgIiIKKyJNYXliZSB5b3Ugd2FudGVkIHRvIHNheSAnZ2l0IGFkZCAuJz9cbiIKKyJUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnkgcnVubmluZ1xuIgorIlwiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkRW1wdHlQYXRoc3BlYyBmYWxzZVwiIgorbXNnc3RyICIiCisiVMOkbmt0ZSBkdSBrYW5za2Ugc8OkZ2EgXCJnaXQgYWRkIC5cIj9cbiIKKyJTbMOlIGF2IGRldHRhIG1lZGRlbGFuZGUgZ2Vub20gYXR0IGvDtnJhXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRFbXB0eVBhdGhzcGVjIGZhbHNlXCIiCiAKLSM6IGJ1aWx0aW4vYW0uYzozNjMKKyM6IGJ1aWx0aW4vYW0uYzozNTIKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgYXV0aG9yIHNjcmlwdCIKIG1zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSBmw7ZyZmF0dGFyc2tyaXB0IgogCi0jOiBidWlsdGluL2FtLmM6NDQ3CisjOiBidWlsdGluL2FtLmM6NDM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgd2FzIGRlbGV0ZWQgYnkgdGhlIGFwcGx5cGF0Y2gtbXNnIGhvb2siCiBtc2dzdHIgIlwiJXNcIiB0b2dzIGJvcnQgYXYga3Jva2VuIGFwcGx5cGF0Y2gtbXNnIgogCi0jOiBidWlsdGluL2FtLmM6NDg4CisjOiBidWlsdGluL2FtLmM6NDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk1hbGZvcm1lZCBpbnB1dCBsaW5lOiAnJXMnLiIKIG1zZ3N0ciAiRmVsYWt0aWcgaW5kYXRhcmFkOiBcIiVzXCIuIgogCi0jOiBidWlsdGluL2FtLmM6NTI1CisjOiBidWlsdGluL2FtLmM6NTE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBjb3B5IG5vdGVzIGZyb20gJyVzJyB0byAnJXMnIgogbXNnc3RyICJNaXNzbHlja2FkZXMga29waWVyYSBhbnRlY2tuaW5nYXIgZnLDpW4gXCIlc1wiIHRpbGwgXCIlc1wiIgogCi0jOiBidWlsdGluL2FtLmM6NTUxCisjOiBidWlsdGluL2FtLmM6NTQyCiBtc2dpZCAiZnNlZWsgZmFpbGVkIgogbXNnc3RyICJcImZzZWVrXCIgbWlzc2x5Y2thZGVzIgogCi0jOiBidWlsdGluL2FtLmM6NzM5CisjOiBidWlsdGluL2FtLmM6NzMwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBwYXRjaCAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthIHBhdGNoZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL2FtLmM6ODA0CisjOiBidWlsdGluL2FtLmM6Nzk1CiBtc2dpZCAiT25seSBvbmUgU3RHSVQgcGF0Y2ggc2VyaWVzIGNhbiBiZSBhcHBsaWVkIGF0IG9uY2UiCiBtc2dzdHIgIkVuZGFzdCBlbiBTdEdJVC1wYXRjaHNlcmllIGthbiB0aWxsw6RtcGFzIMOldCBnw6VuZ2VuIgogCi0jOiBidWlsdGluL2FtLmM6ODUyCisjOiBidWlsdGluL2FtLmM6ODQzCiBtc2dpZCAiaW52YWxpZCB0aW1lc3RhbXAiCiBtc2dzdHIgIm9naWx0aWcgdGlkc3N0w6RtcGVsIgogCi0jOiBidWlsdGluL2FtLmM6ODU3IGJ1aWx0aW4vYW0uYzo4NjkKKyM6IGJ1aWx0aW4vYW0uYzo4NDggYnVpbHRpbi9hbS5jOjg2MAogbXNnaWQgImludmFsaWQgRGF0ZSBsaW5lIgogbXNnc3RyICJvZ2lsdGlnIFwiRGF0ZVwiLXJhZCIKIAotIzogYnVpbHRpbi9hbS5jOjg2NAorIzogYnVpbHRpbi9hbS5jOjg1NQogbXNnaWQgImludmFsaWQgdGltZXpvbmUgb2Zmc2V0IgogbXNnc3RyICJvZ2lsdGlnIHRpZHN6b25zLW9mZnNldCIKIAotIzogYnVpbHRpbi9hbS5jOjk1NworIzogYnVpbHRpbi9hbS5jOjk0OAogbXNnaWQgIlBhdGNoIGZvcm1hdCBkZXRlY3Rpb24gZmFpbGVkLiIKIG1zZ3N0ciAiTWlzc2x5Y2thZGVzIGRldGVrdGVyYSBwYXRjaGZvcm1hdC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzo5NjIgYnVpbHRpbi9jbG9uZS5jOjQwOAorIzogYnVpbHRpbi9hbS5jOjk1MyBidWlsdGluL2Nsb25lLmM6NDA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBza2FwYSBrYXRhbG9nZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL2FtLmM6OTY3CisjOiBidWlsdGluL2FtLmM6OTU4CiBtc2dpZCAiRmFpbGVkIHRvIHNwbGl0IHBhdGNoZXMuIgogbXNnc3RyICJNaXNzbHlja2FkZXMgZGVsYSBwYXRjaGFyLiIKIAotIzogYnVpbHRpbi9hbS5jOjEwOTcgYnVpbHRpbi9jb21taXQuYzozNjkKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgaW5kZXggZmlsZSIKLW1zZ3N0ciAia2FuIGludGUgc2tyaXZhIGluZGV4ZmlsIgotCi0jOiBidWlsdGluL2FtLmM6MTExMQorIzogYnVpbHRpbi9hbS5jOjEwODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiV2hlbiB5b3UgaGF2ZSByZXNvbHZlZCB0aGlzIHByb2JsZW0sIHJ1biBcIiVzIC0tY29udGludWVcIi4iCiBtc2dzdHIgIk7DpHIgZHUgaGFyIGzDtnN0IHByb2JsZW1ldCwga8O2ciBcIiVzIC0tY29udGludWVcIi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMTEyCisjOiBidWlsdGluL2FtLmM6MTA5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJJZiB5b3UgcHJlZmVyIHRvIHNraXAgdGhpcyBwYXRjaCwgcnVuIFwiJXMgLS1za2lwXCIgaW5zdGVhZC4iCiBtc2dzdHIgIk9tIGR1IGhlbGxyZSB2aWxsIGhvcHBhIMO2dmVyIHBhdGNoZW4sIGvDtnIgXCIlcyAtLXNraXBcIiBpIHN0w6RsbGV0LiIKIAotIzogYnVpbHRpbi9hbS5jOjExMTMKKyM6IGJ1aWx0aW4vYW0uYzoxMDkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgc3RvcCBwYXRjaGluZywgcnVuIFwiJXMgLS1hYm9ydFwiLiIKIG1zZ3N0ciAiIgogIkbDtnIgYXR0IMOldGVyZ8OlIHRpbGwgdXJzcHJ1bmdsaWcgZ3JlbiBvY2ggc2x1dGEgcGF0Y2hhLCBrw7ZyIFwiJXMgLS1hYm9ydFwiLiIKIAotIzogYnVpbHRpbi9hbS5jOjExOTYKKyM6IGJ1aWx0aW4vYW0uYzoxMTc0CiBtc2dpZCAiUGF0Y2ggc2VudCB3aXRoIGZvcm1hdD1mbG93ZWQ7IHNwYWNlIGF0IHRoZSBlbmQgb2YgbGluZXMgbWlnaHQgYmUgbG9zdC4iCiBtc2dzdHIgIiIKICJQYXRjaCBzw6RuZCBtZWQgZm9ybWF0PWZsb3dlZDsgYmxhbmtzdGVnIHDDpSBzbHV0IGF2IHJhZGVyIGthbiBoYSB0YXBwYXRzLiIKIAotIzogYnVpbHRpbi9hbS5jOjEyMjQKKyM6IGJ1aWx0aW4vYW0uYzoxMjAyCiBtc2dpZCAiUGF0Y2ggaXMgZW1wdHkuIgogbXNnc3RyICJQYXRjaGVuIMOkciB0b20uIgogCi0jOiBidWlsdGluL2FtLmM6MTI5MAorIzogYnVpbHRpbi9hbS5jOjEyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyBhdXRob3IgbGluZSBpbiBjb21taXQgJXMiCittc2dzdHIgInNha25hZCBcImF1dGhvclwiLXJhZCBpIGluY2hlY2tuaW5nZW4gJXMiCisKKyM6IGJ1aWx0aW4vYW0uYzoxMjcwCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgaWRlbnQgbGluZTogJS4qcyIKIG1zZ3N0ciAib2dpbHRpZyBpZGVudC1yYWQ6ICUuKnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMzEyCi0jLCBjLWZvcm1hdAotbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21taXQgJXMiCi1tc2dzdHIgImt1bmRlIGludGUgdG9sa2EgaW5jaGVja25pbmdlbiAlcyIKLQotIzogYnVpbHRpbi9hbS5jOjE1MDgKKyM6IGJ1aWx0aW4vYW0uYzoxNDg5CiBtc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyBuZWNlc3NhcnkgYmxvYnMgdG8gZmFsbCBiYWNrIG9uIDMtd2F5IG1lcmdlLiIKIG1zZ3N0ciAiIgogIkFya2l2ZXQgc2FrbmFyIG9iamVrdCBzb20gYmVow7Z2cyBmw7ZyIGF0dCBmYWxsYSB0aWxsYmFrYSBww6UgMy0iCiAidsOkZ3NzYW1tYW5zbGFnbmluZy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTEwCisjOiBidWlsdGluL2FtLmM6MTQ5MQogbXNnaWQgIlVzaW5nIGluZGV4IGluZm8gdG8gcmVjb25zdHJ1Y3QgYSBiYXNlIHRyZWUuLi4iCiBtc2dzdHIgIkFudsOkbmRlciBpbmRleGluZm8gZsO2ciBhdHQgw6V0ZXJza2FwYSBldHQgYmFzdHLDpGQuLi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTI5CisjOiBidWlsdGluL2FtLmM6MTUxMAogbXNnaWQgIiIKICJEaWQgeW91IGhhbmQgZWRpdCB5b3VyIHBhdGNoP1xuIgogIkl0IGRvZXMgbm90IGFwcGx5IHRvIGJsb2JzIHJlY29yZGVkIGluIGl0cyBpbmRleC4iCkBAIC03NDM3LDMwICs5NjQyLDI1IEBACiAiSGFyIGR1IGhhbmRyZWRpZ2VyYXQgZGluIHBhdGNoP1xuIgogIkRlbiBrYW4gaW50ZSB0aWxsw6RtcGFzIHDDpSBibG9iYmFyIHNvbSBhbnRlY2tuYXRzIGkgZGVzcyBpbmRleC4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTM1CisjOiBidWlsdGluL2FtLmM6MTUxNgogbXNnaWQgIkZhbGxpbmcgYmFjayB0byBwYXRjaGluZyBiYXNlIGFuZCAzLXdheSBtZXJnZS4uLiIKIG1zZ3N0ciAiIgogIkZhbGxlciB0aWxsYmFrYSBww6UgYXR0IHBhdGNoYSBncnVuZHZlcnNpb25lbiBvY2ggdHJldsOkZ3NzYW1tYW5zbGFnbmluZy4uLiIKIAotIzogYnVpbHRpbi9hbS5jOjE1NjEKKyM6IGJ1aWx0aW4vYW0uYzoxNTQyCiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIGluIHRoZSBjaGFuZ2VzLiIKIG1zZ3N0ciAiTWlzc2x5Y2thZGVzIHNsw6UgaWhvcCDDpG5kcmluZ2FybmEuIgogCi0jOiBidWlsdGluL2FtLmM6MTU5MworIzogYnVpbHRpbi9hbS5jOjE1NzQKIG1zZ2lkICJhcHBseWluZyB0byBhbiBlbXB0eSBoaXN0b3J5IgogbXNnc3RyICJ0aWxsw6RtcGFyIHDDpSBlbiB0b20gaGlzdG9yaWsiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNjM5IGJ1aWx0aW4vYW0uYzoxNjQzCisjOiBidWlsdGluL2FtLmM6MTYyMSBidWlsdGluL2FtLmM6MTYyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVzdW1lOiAlcyBkb2VzIG5vdCBleGlzdC4iCiBtc2dzdHIgImthbiBpbnRlIMOldGVydXBwdGE6ICVzIGZpbm5zIGludGUuIgogCi0jOiBidWlsdGluL2FtLmM6MTY1OQotbXNnaWQgImNhbm5vdCBiZSBpbnRlcmFjdGl2ZSB3aXRob3V0IHN0ZGluIGNvbm5lY3RlZCB0byBhIHRlcm1pbmFsLiIKLW1zZ3N0ciAiIgotImthbiBpbnRlIHZhcmEgaW50ZXJha3RpdiBvbSBzdGFuZGFyZCBpbiBpbnRlIMOkciBhbnNsdXRlbiB0aWxsIGVuIHRlcm1pbmFsLiIKLQotIzogYnVpbHRpbi9hbS5jOjE2NjQKKyM6IGJ1aWx0aW4vYW0uYzoxNjQzCiBtc2dpZCAiQ29tbWl0IEJvZHkgaXM6IgogbXNnc3RyICJJbmNoZWNrbmluZ3Nrcm9wcGVuIMOkcjoiCiAKQEAgLTc0NjgsNDUgKzk2NjgsNTEgQEAKICMuIGluIHlvdXIgdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaAogIy4gaW5wdXQgYXQgdGhpcyBwb2ludC4KICMuCi0jOiBidWlsdGluL2FtLmM6MTY3NAorIzogYnVpbHRpbi9hbS5jOjE2NTMKKyMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbHk/IFt5XWVzL1tuXW8vW2VdZGl0L1t2XWlldyBwYXRjaC9bYV1jY2VwdCBhbGw6ICIKIG1zZ3N0ciAiVGlsbMOkbXBhPyBZPWphL049bmVqL0U9cmVkaWdlcmEvVj12aXNhIHBhdGNoL0E9Z29kdGEgYWxsYTogIgogCi0jOiBidWlsdGluL2FtLmM6MTcyNAorIzogYnVpbHRpbi9hbS5jOjE3MDAgYnVpbHRpbi9jb21taXQuYzozOTgKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgaW5kZXggZmlsZSIKK21zZ3N0ciAia2FuIGludGUgc2tyaXZhIGluZGV4ZmlsIgorCisjOiBidWlsdGluL2FtLmM6MTcwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJEaXJ0eSBpbmRleDogY2Fubm90IGFwcGx5IHBhdGNoZXMgKGRpcnR5OiAlcykiCiBtc2dzdHIgIlNtdXRzaWd0IGluZGV4OiBrYW4gaW50ZSB0aWxsw6RtcGEgcGF0Y2hhciAoc211dHNpZ2E6ICVzKSIKIAotIzogYnVpbHRpbi9hbS5jOjE3NjQgYnVpbHRpbi9hbS5jOjE4MzIKKyM6IGJ1aWx0aW4vYW0uYzoxNzQ0IGJ1aWx0aW4vYW0uYzoxODEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGx5aW5nOiAlLipzIgogbXNnc3RyICJUaWxsw6RtcGFyOiAlLipzIgogCi0jOiBidWlsdGluL2FtLmM6MTc4MQorIzogYnVpbHRpbi9hbS5jOjE3NjEKIG1zZ2lkICJObyBjaGFuZ2VzIC0tIFBhdGNoIGFscmVhZHkgYXBwbGllZC4iCiBtc2dzdHIgIkluZ2Egw6RuZHJpbmdhciAtLSBQYXRjaGVuIGhhciByZWRhbiB0aWxsw6RtcGF0cy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzg3CisjOiBidWlsdGluL2FtLmM6MTc2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJQYXRjaCBmYWlsZWQgYXQgJXMgJS4qcyIKIG1zZ3N0ciAiUGF0Y2ggbWlzc2x5Y2thZGVzIHDDpSAlcyAlLipzIgogCi0jOiBidWlsdGluL2FtLmM6MTc5MQotbXNnaWQgIlVzZSAnZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoJyB0byBzZWUgdGhlIGZhaWxlZCBwYXRjaCIKKyM6IGJ1aWx0aW4vYW0uYzoxNzcxCittc2dpZCAiVXNlICdnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2g9ZGlmZicgdG8gc2VlIHRoZSBmYWlsZWQgcGF0Y2giCiBtc2dzdHIgIiIKLSJBbnbDpG5kIFwiZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoXCIgZsO2ciBhdHQgc2UgcGF0Y2hlbiBzb20gbWlzc2x5Y2thZGVzIgorIkFudsOkbmQgXCJnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2g9ZGlmZlwiIGbDtnIgYXR0IHNlIHBhdGNoZW4gc29tICIKKyJtaXNzbHlja2FkZXMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxODM1CisjOiBidWlsdGluL2FtLmM6MTgxNQogbXNnaWQgIiIKICJObyBjaGFuZ2VzIC0gZGlkIHlvdSBmb3JnZXQgdG8gdXNlICdnaXQgYWRkJz9cbiIKICJJZiB0aGVyZSBpcyBub3RoaW5nIGxlZnQgdG8gc3RhZ2UsIGNoYW5jZXMgYXJlIHRoYXQgc29tZXRoaW5nIGVsc2VcbiIKICJhbHJlYWR5IGludHJvZHVjZWQgdGhlIHNhbWUgY2hhbmdlczsgeW91IG1pZ2h0IHdhbnQgdG8gc2tpcCB0aGlzIHBhdGNoLiIKIG1zZ3N0ciAiIgotIkluZ2Egw6RuZHJpbmdhciAtIGdsw7ZtZGUgZHUgYW52w6RuZGEgXCJnaXQgYWRkXCI/XG4iCisiSW5nYSDDpG5kcmluZ2FyIC0gZ2zDtm1kZSBkdSBhdHQgYW52w6RuZGEgXCJnaXQgYWRkXCI/XG4iCiAiT20gZGV0IGludGUgw6RyIG7DpWdvdCBrdmFyIGF0dCBrw7ZhIGthbiBkZXQgaMOkbmRhIGF0dCBuw6Vnb3QgYW5uYXQgcmVkYW5cbiIKICJpbnRyb2R1Y2VyYXQgc2FtbWEgw6RuZHJpbmdhcjsga2Fuc2tlIGR1IGLDtnIgaG9wcGEgw7Z2ZXIgcGF0Y2hlbi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxODQyCisjOiBidWlsdGluL2FtLmM6MTgyMgogbXNnaWQgIiIKICJZb3Ugc3RpbGwgaGF2ZSB1bm1lcmdlZCBwYXRocyBpbiB5b3VyIGluZGV4LlxuIgogIllvdSBzaG91bGQgJ2dpdCBhZGQnIGVhY2ggZmlsZSB3aXRoIHJlc29sdmVkIGNvbmZsaWN0cyB0byBtYXJrIHRoZW0gYXMgIgpAQCAtNzUxNCwyMSArOTcyMCwyMSBAQAogIllvdSBtaWdodCBydW4gYGdpdCBybWAgb24gYSBmaWxlIHRvIGFjY2VwdCBcImRlbGV0ZWQgYnkgdGhlbVwiIGZvciBpdC4iCiBtc2dzdHIgIiIKICJEdSBoYXIgZm9ydGZhcmFuZGUgZWogc2FtbWFuc2xhZ25hIHPDtmt2w6RnYXIgaSBpbmRleGV0LlxuIgotIkR1IGLDtnIga8O2cmEg4oCdZ2l0IGFkZOKAnSBww6UgZmlsZXIgbWVkIGzDtnN0YSBrb25mbGlrdGVyIGbDtnIgYXR0IGFuZ2UgZGVtIHNvbSAiCisiRHUgYsO2ciBrw7ZyYSBcImdpdCBhZGRcIiBww6UgZmlsZXIgbWVkIGzDtnN0YSBrb25mbGlrdGVyIGbDtnIgYXR0IGFuZ2UgZGVtIHNvbSAiCiAibMO2c3RhLlxuIgotIkR1IGthbiBrw7ZyYSDigJ1naXQgcm3igJ0gZsO2ciBhdHQgZ29kdGEg4oCdYm9ydHRhZ2VuIGF2IGRlbeKAnSBmw7ZyIGRlbi4iCisiRHUga2FuIGvDtnJhIFwiZ2l0IHJtXCIgZsO2ciBhdHQgZ29kdGEgXCJib3J0dGFnZW4gYXYgZGVtXCIgZsO2ciBkZW4uIgogCi0jOiBidWlsdGluL2FtLmM6MTk0OSBidWlsdGluL2FtLmM6MTk1MyBidWlsdGluL2FtLmM6MTk2NSBidWlsdGluL3Jlc2V0LmM6MzI4Ci0jOiBidWlsdGluL3Jlc2V0LmM6MzM2CisjOiBidWlsdGluL2FtLmM6MTkyOSBidWlsdGluL2FtLmM6MTkzMyBidWlsdGluL2FtLmM6MTk0NSBidWlsdGluL3Jlc2V0LmM6MzQ2CisjOiBidWlsdGluL3Jlc2V0LmM6MzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJy4iCi1tc2dzdHIgIkthbiBpbnRlIHRvbGthIG9iamVrdGV0IOKAnSVz4oCdLiIKK21zZ3N0ciAiS2FuIGludGUgdG9sa2Egb2JqZWt0ZXQgXCIlc1wiLiIKIAotIzogYnVpbHRpbi9hbS5jOjIwMDEKKyM6IGJ1aWx0aW4vYW0uYzoxOTgxCiBtc2dpZCAiZmFpbGVkIHRvIGNsZWFuIGluZGV4IgogbXNnc3RyICJtaXNzbHlja2FkZXMgc3TDpGRhIHVwcCBpbmRleGV0IgogCi0jOiBidWlsdGluL2FtLmM6MjAzNgorIzogYnVpbHRpbi9hbS5jOjIwMjUKIG1zZ2lkICIiCiAiWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFEIHNpbmNlIHRoZSBsYXN0ICdhbScgZmFpbHVyZS5cbiIKICJOb3QgcmV3aW5kaW5nIHRvIE9SSUdfSEVBRCIKQEAgLTc1MzYsMTQzICs5NzQyLDE1MyBAQAogIkR1IHZlcmthciBoYSBmbHl0dGF0IEhFQUQgc2VkYW4gXCJhbVwiIHNpc3QgbWlzc2x5Y2thZGVzLlxuIgogIsOFdGVyc3TDpGxsZXIgaW50ZSB0aWxsIE9SSUdfSEVBRCIKIAotIzogYnVpbHRpbi9hbS5jOjIxMjkKKyM6IGJ1aWx0aW4vYW0uYzoyMTMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yIC0tcGF0Y2gtZm9ybWF0OiAlcyIKIG1zZ3N0ciAiRmVsYWt0aWd0IHbDpHJkZSBmw7ZyIC0tcGF0Y2gtZm9ybWF0OiAlcyIKIAotIzogYnVpbHRpbi9hbS5jOjIxNjUKKyM6IGJ1aWx0aW4vYW0uYzoyMTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yIC0tc2hvdy1jdXJyZW50LXBhdGNoOiAlcyIKK21zZ3N0ciAiRmVsYWt0aWd0IHbDpHJkZSBmw7ZyIC0tc2hvdy1jdXJyZW50LXBhdGNoOiAlcyIKKworIzogYnVpbHRpbi9hbS5jOjIxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMiCittc2dzdHIgIi0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIMOkciBpbmtvbXBhdGliZWx0IG1lZCAtLXNob3ctY3VycmVudC1wYXRjaD0lcyIKKworIzogYnVpbHRpbi9hbS5jOjIyMDcKIG1zZ2lkICJnaXQgYW0gWzxvcHRpb25zPl0gWyg8bWJveD4gfCA8TWFpbGRpcj4pLi4uXSIKIG1zZ3N0ciAiZ2l0IGFtIFs8ZmxhZ2dvcj5dIFsoPG1ib3g+IHwgPE1haWxkaXI+KS4uLl0iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTY2CisjOiBidWlsdGluL2FtLmM6MjIwOAogbXNnaWQgImdpdCBhbSBbPG9wdGlvbnM+XSAoLS1jb250aW51ZSB8IC0tc2tpcCB8IC0tYWJvcnQpIgogbXNnc3RyICJnaXQgYW0gWzxmbGFnZ29yPl0gKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0KSIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzIKKyM6IGJ1aWx0aW4vYW0uYzoyMjE0CiBtc2dpZCAicnVuIGludGVyYWN0aXZlbHkiCiBtc2dzdHIgImvDtnIgaW50ZXJha3RpdnQiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc0CisjOiBidWlsdGluL2FtLmM6MjIxNgogbXNnaWQgImhpc3RvcmljYWwgb3B0aW9uIC0tIG5vLW9wIgogbXNnc3RyICJoaXN0b3Jpc2sgZmxhZ2dhIC0tIG5vLW9wIgogCi0jOiBidWlsdGluL2FtLmM6MjE3NgorIzogYnVpbHRpbi9hbS5jOjIyMTgKIG1zZ2lkICJhbGxvdyBmYWxsIGJhY2sgb24gM3dheSBtZXJnaW5nIGlmIG5lZWRlZCIKIG1zZ3N0ciAidGlsbMOldCBmYWxsYSB0aWxsYmFrYSBww6UgdHJldsOkZ3NzYW1tYW5zbGFnbmluZyBvbSBuw7ZkdsOkbmRpZ3QiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc3IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU4Ci0jOiBidWlsdGluL3JlcGFjay5jOjMwNgorIzogYnVpbHRpbi9hbS5jOjIyMTkgYnVpbHRpbi9pbml0LWRiLmM6NDk0IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA0IGJ1aWx0aW4vc3Rhc2guYzo4MTIKIG1zZ2lkICJiZSBxdWlldCIKIG1zZ3N0ciAidmFyIHR5c3QiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc5CisjOiBidWlsdGluL2FtLmM6MjIyMQogbXNnaWQgImFkZCBhIFNpZ25lZC1vZmYtYnkgbGluZSB0byB0aGUgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgImzDpGdnIHRpbGwgXCJTaWduZWQtb2ZmLWJ5XCItcmFkIGkgaW5jaGVja25pbmdzbWVkZGVsYW5kZXQiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTgyCisjOiBidWlsdGluL2FtLmM6MjIyNAogbXNnaWQgInJlY29kZSBpbnRvIHV0ZjggKGRlZmF1bHQpIgogbXNnc3RyICJrb2RhIG9tIHRpbGwgdXRmOCAoc3RhbmRhcmQpIgogCi0jOiBidWlsdGluL2FtLmM6MjE4NAorIzogYnVpbHRpbi9hbS5jOjIyMjYKIG1zZ2lkICJwYXNzIC1rIGZsYWcgdG8gZ2l0LW1haWxpbmZvIgogbXNnc3RyICJzw6RuZCBmbGFnZ2FuIC1rIHRpbGwgZ2l0LW1haWxpbmZvIgogCi0jOiBidWlsdGluL2FtLmM6MjE4NgorIzogYnVpbHRpbi9hbS5jOjIyMjgKIG1zZ2lkICJwYXNzIC1iIGZsYWcgdG8gZ2l0LW1haWxpbmZvIgogbXNnc3RyICJzw6RuZCBmbGFnZ2FuIC1iIHRpbGwgZ2l0LW1haWxpbmZvIgogCi0jOiBidWlsdGluL2FtLmM6MjE4OAorIzogYnVpbHRpbi9hbS5jOjIyMzAKIG1zZ2lkICJwYXNzIC1tIGZsYWcgdG8gZ2l0LW1haWxpbmZvIgogbXNnc3RyICJzw6RuZCBmbGFnZ2FuIC1tIHRpbGwgZ2l0LW1haWxpbmZvIgogCi0jOiBidWlsdGluL2FtLmM6MjE5MAorIzogYnVpbHRpbi9hbS5jOjIyMzIKIG1zZ2lkICJwYXNzIC0ta2VlcC1jciBmbGFnIHRvIGdpdC1tYWlsc3BsaXQgZm9yIG1ib3ggZm9ybWF0IgogbXNnc3RyICJzw6RuZCBmbGFnZ2FuIC0ta2VlcC1jciB0aWxsIGdpdC1tYWlsc3BsaXQgZsO2ciBtYm94LWZvcm1hdGV0IgogCi0jOiBidWlsdGluL2FtLmM6MjE5MworIzogYnVpbHRpbi9hbS5jOjIyMzUKIG1zZ2lkICJkbyBub3QgcGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGluZGVwZW5kZW50IG9mIGFtLmtlZXBjciIKIG1zZ3N0ciAic8OkbmQgaW50ZSBmbGFnZ2FuIC0ta2VlcC1jciB0aWxsIGdpdC1tYWlsc3BsaXQgb2Jlcm9lbmRlIGF2IGFtLmtlZXBjciIKIAotIzogYnVpbHRpbi9hbS5jOjIxOTYKKyM6IGJ1aWx0aW4vYW0uYzoyMjM4CiBtc2dpZCAic3RyaXAgZXZlcnl0aGluZyBiZWZvcmUgYSBzY2lzc29ycyBsaW5lIgogbXNnc3RyICJ0YSBib3J0IGFsbHRpbmcgZsO2cmUgZW4gc2F4bGluamUiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTk4IGJ1aWx0aW4vYW0uYzoyMjAxIGJ1aWx0aW4vYW0uYzoyMjA0IGJ1aWx0aW4vYW0uYzoyMjA3Ci0jOiBidWlsdGluL2FtLmM6MjIxMCBidWlsdGluL2FtLmM6MjIxMyBidWlsdGluL2FtLmM6MjIxNiBidWlsdGluL2FtLmM6MjIxOQotIzogYnVpbHRpbi9hbS5jOjIyMjUKKyM6IGJ1aWx0aW4vYW0uYzoyMjQwIGJ1aWx0aW4vYW0uYzoyMjQzIGJ1aWx0aW4vYW0uYzoyMjQ2IGJ1aWx0aW4vYW0uYzoyMjQ5CisjOiBidWlsdGluL2FtLmM6MjI1MiBidWlsdGluL2FtLmM6MjI1NSBidWlsdGluL2FtLmM6MjI1OCBidWlsdGluL2FtLmM6MjI2MQorIzogYnVpbHRpbi9hbS5jOjIyNjcKIG1zZ2lkICJwYXNzIGl0IHRocm91Z2ggZ2l0LWFwcGx5IgogbXNnc3RyICJzw6RuZCBkZXQgZ2Vub20gZ2l0LWFwcGx5IgogCi0jOiBidWlsdGluL2FtLmM6MjIxNSBidWlsdGluL2NvbW1pdC5jOjEzNDAgYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcxCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzQgYnVpbHRpbi9ncmVwLmM6ODY4IGJ1aWx0aW4vbWVyZ2UuYzoyMzkKLSM6IGJ1aWx0aW4vcHVsbC5jOjE1MSBidWlsdGluL3B1bGwuYzoyMDkgYnVpbHRpbi9yZWJhc2UuYzo4NTQKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE3IGJ1aWx0aW4vcmVwYWNrLmM6MzIxIGJ1aWx0aW4vcmVwYWNrLmM6MzIzCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUxIGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzEgYnVpbHRpbi90YWcuYzozODYKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNDQgcGFyc2Utb3B0aW9ucy5oOjE0NiBwYXJzZS1vcHRpb25zLmg6MjY4CisjOiBidWlsdGluL2FtLmM6MjI1NyBidWlsdGluL2NvbW1pdC5jOjEzOTEgYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcwCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzMgYnVpbHRpbi9ncmVwLmM6ODcxIGJ1aWx0aW4vbWVyZ2UuYzoyNTAKKyM6IGJ1aWx0aW4vcHVsbC5jOjE0MCBidWlsdGluL3B1bGwuYzoxOTkgYnVpbHRpbi9yZWJhc2UuYzoxNTA1CisjOiBidWlsdGluL3JlcGFjay5jOjMxNSBidWlsdGluL3JlcGFjay5jOjMxOSBidWlsdGluL3JlcGFjay5jOjMyMQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MCBidWlsdGluL3Nob3ctcmVmLmM6MTcyIGJ1aWx0aW4vdGFnLmM6NDAzCisjOiBwYXJzZS1vcHRpb25zLmg6MTU0IHBhcnNlLW9wdGlvbnMuaDoxNzUgcGFyc2Utb3B0aW9ucy5oOjMxNgogbXNnaWQgIm4iCiBtc2dzdHIgIm4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjIxIGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0NCBidWlsdGluL3RhZy5jOjQyMiBidWlsdGluL3ZlcmlmeS10YWcuYzozOQorIzogYnVpbHRpbi9hbS5jOjIyNjMgYnVpbHRpbi9icmFuY2guYzo2NjEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU2IGJ1aWx0aW4vdGFnLmM6NDM3IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM4CiBtc2dpZCAiZm9ybWF0IgogbXNnc3RyICJmb3JtYXQiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjIyCisjOiBidWlsdGluL2FtLmM6MjI2NAogbXNnaWQgImZvcm1hdCB0aGUgcGF0Y2goZXMpIGFyZSBpbiIKIG1zZ3N0ciAiZm9ybWF0IGbDtnIgcGF0Y2goYXIpIgogCi0jOiBidWlsdGluL2FtLmM6MjIyOAorIzogYnVpbHRpbi9hbS5jOjIyNzAKIG1zZ2lkICJvdmVycmlkZSBlcnJvciBtZXNzYWdlIHdoZW4gcGF0Y2ggZmFpbHVyZSBvY2N1cnMiCiBtc2dzdHIgIsO2dmVyc3R5ciBmZWxtZWRkZWxhbmRlbiBuw6RyIHBhdGNoZmVsIHVwcHN0w6VyIgogCi0jOiBidWlsdGluL2FtLmM6MjIzMAorIzogYnVpbHRpbi9hbS5jOjIyNzIKIG1zZ2lkICJjb250aW51ZSBhcHBseWluZyBwYXRjaGVzIGFmdGVyIHJlc29sdmluZyBhIGNvbmZsaWN0IgogbXNnc3RyICJmb3J0c8OkdHQgYXBwbGljZXJhIHBhdGNoYXIgZWZ0ZXIgYXR0IGhhIGzDtnN0IGVuIGtvbmZsaWt0IgogCi0jOiBidWlsdGluL2FtLmM6MjIzMworIzogYnVpbHRpbi9hbS5jOjIyNzUKIG1zZ2lkICJzeW5vbnltcyBmb3IgLS1jb250aW51ZSIKIG1zZ3N0ciAic3lub255bWVyIHRpbGwgLS1jb250aW51ZSIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzYKKyM6IGJ1aWx0aW4vYW0uYzoyMjc4CiBtc2dpZCAic2tpcCB0aGUgY3VycmVudCBwYXRjaCIKIG1zZ3N0ciAiaG9wcGEgw7Z2ZXIgZGVuIGFrdHVlbGxhIGdyZW5lbiIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzkKKyM6IGJ1aWx0aW4vYW0uYzoyMjgxCiBtc2dpZCAicmVzdG9yZSB0aGUgb3JpZ2luYWwgYnJhbmNoIGFuZCBhYm9ydCB0aGUgcGF0Y2hpbmcgb3BlcmF0aW9uLiIKIG1zZ3N0ciAiw6V0ZXJzdMOkbGwgb3JpZ2luYWxncmVuZW4gb2NoIGF2YnJ5dCBwYXRjaG5pbmdlbi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjQyCisjOiBidWlsdGluL2FtLmM6MjI4NAogbXNnaWQgImFib3J0IHRoZSBwYXRjaGluZyBvcGVyYXRpb24gYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcy4iCiBtc2dzdHIgImF2YnJ5dCBwYXRjaG5pbmdlbiBtZW4gYmVow6VsbCBIRUFEIGTDpHIgZGV0IMOkci4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjQ1Ci1tc2dpZCAic2hvdyB0aGUgcGF0Y2ggYmVpbmcgYXBwbGllZC4iCi1tc2dzdHIgInZpc2EgcGF0Y2hlbiBzb20gdGlsbMOkbXBhcy4iCisjOiBidWlsdGluL2FtLmM6MjI4OAorbXNnaWQgInNob3cgdGhlIHBhdGNoIGJlaW5nIGFwcGxpZWQiCittc2dzdHIgInZpc2EgcGF0Y2hlbiBzb20gdGlsbMOkbXBhcyIKIAotIzogYnVpbHRpbi9hbS5jOjIyNDkKKyM6IGJ1aWx0aW4vYW0uYzoyMjkzCiBtc2dpZCAibGllIGFib3V0IGNvbW1pdHRlciBkYXRlIgogbXNnc3RyICJsanVnIG9tIGluY2hlY2tuaW5nc2RhdHVtIgogCi0jOiBidWlsdGluL2FtLmM6MjI1MQorIzogYnVpbHRpbi9hbS5jOjIyOTUKIG1zZ2lkICJ1c2UgY3VycmVudCB0aW1lc3RhbXAgZm9yIGF1dGhvciBkYXRlIgogbXNnc3RyICJhbnbDpG5kIG51dmFyYW5kZSB0aWRzc3TDpG1wZWwgZsO2ciBmw7ZyZmF0dGFyZGF0dW0iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjUzIGJ1aWx0aW4vY29tbWl0LmM6MTQ4MyBidWlsdGluL21lcmdlLmM6MjczCi0jOiBidWlsdGluL3B1bGwuYzoxODQgYnVpbHRpbi9yZWJhc2UuYzo4OTggYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgzCi0jOiBidWlsdGluL3JldmVydC5jOjExMyBidWlsdGluL3RhZy5jOjQwMgorIzogYnVpbHRpbi9hbS5jOjIyOTcgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMCBidWlsdGluL2NvbW1pdC5jOjE1MTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODcgYnVpbHRpbi9wdWxsLmM6MTc0IGJ1aWx0aW4vcmViYXNlLmM6NTE3CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NTYgYnVpbHRpbi9yZXZlcnQuYzoxMTcgYnVpbHRpbi90YWcuYzo0MTgKIG1zZ2lkICJrZXktaWQiCiBtc2dzdHIgIm55Y2tlbC1pZCIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9yZWJhc2UuYzo4OTkgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg0CisjOiBidWlsdGluL2FtLmM6MjI5OCBidWlsdGluL3JlYmFzZS5jOjUxOCBidWlsdGluL3JlYmFzZS5jOjE1NTcKIG1zZ2lkICJHUEctc2lnbiBjb21taXRzIgogbXNnc3RyICJHUEctc2lnbmVyYSBpbmNoZWNrbmluZ2FyIgogCi0jOiBidWlsdGluL2FtLmM6MjI1NworIzogYnVpbHRpbi9hbS5jOjIzMDEKIG1zZ2lkICIoaW50ZXJuYWwgdXNlIGZvciBnaXQtcmViYXNlKSIKIG1zZ3N0ciAiKGFudsOkbmRzIGludGVybnQgYXYgZ2l0LXJlYmFzZSkiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjc1CisjOiBidWlsdGluL2FtLmM6MjMxOQogbXNnaWQgIiIKICJUaGUgLWIvLS1iaW5hcnkgb3B0aW9uIGhhcyBiZWVuIGEgbm8tb3AgZm9yIGxvbmcgdGltZSwgYW5kXG4iCiAiaXQgd2lsbCBiZSByZW1vdmVkLiBQbGVhc2UgZG8gbm90IHVzZSBpdCBhbnltb3JlLiIKQEAgLTc2ODAsMTYgKzk4OTYsMTYgQEAKICJGbGFnZ2FuIC1iLy0tYmluYXJ5IGhhciB2YXJpdCB1dGFuIGZ1bmt0aW9uIGzDpG5nZSwgb2NoXG4iCiAia29tbWVyIHRhcyBib3J0LiBWaSBiZXIgZGlnIGF0dCBpbnRlIGFudsOkbmRhIGRlbiBsw6RuZ3JlLiIKIAotIzogYnVpbHRpbi9hbS5jOjIyODIKKyM6IGJ1aWx0aW4vYW0uYzoyMzI2CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICJtaXNzbHlja2FkZXMgbMOkc2EgaW5kZXhldCIKIAotIzogYnVpbHRpbi9hbS5jOjIyOTcKKyM6IGJ1aWx0aW4vYW0uYzoyMzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInByZXZpb3VzIHJlYmFzZSBkaXJlY3RvcnkgJXMgc3RpbGwgZXhpc3RzIGJ1dCBtYm94IGdpdmVuLiIKIG1zZ3N0ciAidGlkaWdhcmUgcmViYXNlLWthdGFsb2cgJXMgZmlubnMgZm9ydGZhcmFuZGUsIG1lbiBtYm94IGFuZ2F2cy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMzIxCisjOiBidWlsdGluL2FtLmM6MjM2NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiU3RyYXkgJXMgZGlyZWN0b3J5IGZvdW5kLlxuIgpAQCAtNzY5OCwxMCArOTkxNCwxNCBAQAogIkt2YXJibGl2ZW4ga2F0YWxvZyAlcyBoaXR0YWRlcy5cbiIKICJBbnbDpG5kIFwiZ2l0IGFtIC0tYWJvcnRcIiBmw7ZyIGF0dCB0YSBib3J0IGRlbi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMzI3CisjOiBidWlsdGluL2FtLmM6MjM3MQogbXNnaWQgIlJlc29sdmUgb3BlcmF0aW9uIG5vdCBpbiBwcm9ncmVzcywgd2UgYXJlIG5vdCByZXN1bWluZy4iCiBtc2dzdHIgIkzDtnNuaW5nc29wZXJhdGlvbiBww6Vnw6VyIGludGUsIHZpIMOldGVydXBwdGFyIGludGUuIgogCisjOiBidWlsdGluL2FtLmM6MjM4MQorbXNnaWQgImludGVyYWN0aXZlIG1vZGUgcmVxdWlyZXMgcGF0Y2hlcyBvbiB0aGUgY29tbWFuZCBsaW5lIgorbXNnc3RyICJpbnRlcmFrdGl2dCBsw6RnZSBrcsOkdmVyIHBhdGNoYXIgcMOlIGtvbW1hbmRvcmFkZW4iCisKICM6IGJ1aWx0aW4vYXBwbHkuYzo4CiBtc2dpZCAiZ2l0IGFwcGx5IFs8b3B0aW9ucz5dIFs8cGF0Y2g+Li4uXSIKIG1zZ3N0ciAiZ2l0IGFwcGx5IFs8ZmxhZ2dvcj5dIFs8cGF0Y2g+Li4uXSIKQEAgLTc3MTksODYgKzk5MzksMzAyIEBACiBtc2dpZCAiZ2l0IGFyY2hpdmU6IFJlbW90ZSB3aXRoIG5vIFVSTCIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmU6IEZqw6RyciB1dGFuIFVSTCIKIAotIzogYnVpbHRpbi9hcmNoaXZlLmM6NTgKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjYxCiBtc2dpZCAiZ2l0IGFyY2hpdmU6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCBhIGZsdXNoIHBhY2tldCIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmU6IGbDtnJ2w6RudGFkZSBBQ0svTkFLLCBmaWNrIGZsdXNoLXBha2V0IgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2MQorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFyY2hpdmU6IE5BQ0sgJXMiCiBtc2dzdHIgImdpdCBhcmNoaXZlOiBOQUNLICVzIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2NAorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjUKIG1zZ2lkICJnaXQgYXJjaGl2ZTogcHJvdG9jb2wgZXJyb3IiCiBtc2dzdHIgImdpdCBhcmNoaXZlOiBwcm90b2tvbGxmZWwiCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY4CisjOiBidWlsdGluL2FyY2hpdmUuYzo2OQogbXNnaWQgImdpdCBhcmNoaXZlOiBleHBlY3RlZCBhIGZsdXNoIgogbXNnc3RyICJnaXQgYXJjaGl2ZTogZsO2cnbDpG50YWRlIGVuIHTDtm1uaW5nIChmbHVzaCkiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyCiBtc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tbmV4dC1hbGwgWy0tbm8tY2hlY2tvdXRdIgogbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCBbLS1uby1jaGVja291dF0iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIzCiBtc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0td3JpdGUtdGVybXMgPGJhZF90ZXJtPiA8Z29vZF90ZXJtPiIKIG1zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0td3JpdGUtdGVybXMgPHRlcm0tZsO2ci1mZWw+IDx0ZXJtLWbDtnItcsOkdHQ+IgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTQKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNAogbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jbGVhbi1zdGF0ZSIKIG1zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNsZWFuLXN0YXRlIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDYKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNQorbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1yZXNldCBbPGNvbW1pdD5dIgorbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtcmVzZXQgWzxpbmNoZWNrbmluZz5dIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjYKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPHN0YXRlPiA8cmV2aXNpb24+IDxnb29kX3Rlcm0+ICIKKyI8YmFkX3Rlcm0+IgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXdyaXRlIFstLW5vLWxvZ10gPHRpbGxzdMOlbmQ+IDxyZXZpc2lvbj4gPHRlcm0tIgorImbDtnItcsOkdHQ+IDx0ZXJtLWbDtnItZmVsPiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI3Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDxjb21tYW5kPiA8Z29vZF90ZXJtPiAiCisiPGJhZF90ZXJtPiIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDxrb21tYWRubz4gPHRlcm0tZsO2ci1yw6R0dD4gIgorIjx0ZXJtLWbDtnItZmVsPiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI4Cittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LW5leHQtY2hlY2sgPGdvb2RfdGVybT4gPGJhZF90ZXJtPiBbPHRlcm0+XSIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrIDx0ZXJtLWbDtnItcsOkdHQ+IDx0ZXJtLWbDtnItZmVsPiA8ZXRlcm0+IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjkKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorbXNnc3RyICIiCisiZ2l0LWJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzAKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT08dGVybT4gLS10ZXJtLXtuZXcsYmFkfSIKKyI9PHRlcm0+XVstLW5vLWNoZWNrb3V0XSBbPGJhZD4gWzxnb29kPi4uLl1dIFstLV0gWzxwYXRocz4uLi5dIgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT08dGVybT4gLS10ZXJtLXtuZXcsYmFkfSIKKyI9PHRlcm0+XVstLW5vLWNoZWNrb3V0XSBbPGZlbD4gWzxyw6R0dD4uLi5dXSBbLS1dIFs8c8O2a3bDpGdhcj4uLi5dIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0ZXJtIgogbXNnc3RyICJcIiVzXCIgw6RyIGludGUgZW4gZ2lsdGlnIHRlcm0iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IHVzZSB0aGUgYnVpbHRpbiBjb21tYW5kICclcycgYXMgYSB0ZXJtIgogbXNnc3RyICJrYW4gaW50ZSBhbnbDpG5kYSBkZXQgaW5ieWdnZGEga29tbWFuZG90IFwiJXNcIiBzb20gdGVybSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYwCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IGNoYW5nZSB0aGUgbWVhbmluZyBvZiB0aGUgdGVybSAnJXMnIgogbXNnc3RyICJrYW4gaW50ZSDDpG5kcmEgYmV0eWRlbHNlbiBhdiB0ZXJtZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzEKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMTEKIG1zZ2lkICJwbGVhc2UgdXNlIHR3byBkaWZmZXJlbnQgdGVybXMiCiBtc2dzdHIgInRlcm1lcm5hIG3DpXN0ZSB2YXJhIG9saWthIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzgKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMTgKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgZmlsZSBCSVNFQ1RfVEVSTVMiCiBtc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIGZpbGVuIEJJU0VDVF9URVJNUyIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyMAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJXZSBhcmUgbm90IGJpc2VjdGluZy5cbiIKK21zZ3N0ciAiVmkgdXRmw7ZyIGluZ2VuIGJpc2VjdCBmw7ZyIHRpbGxmw6RsbGV0LlxuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgY29tbWl0IgorbXNnc3RyICJcIiVzXCIgw6RyIGludGUgZW4gZ2lsdGlnIGluY2hlY2tuaW5nIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb3VsZCBub3QgY2hlY2sgb3V0IG9yaWdpbmFsIEhFQUQgJyVzJy4gVHJ5ICdnaXQgYmlzZWN0IHJlc2V0IDxjb21taXQ+Jy4iCittc2dzdHIgIiIKKyJLdW5kZSBpbnRlIGNoZWNrYSB1dCBvcmlnaW5hbC1IRUFEIFwiJXNcIi4gRsO2cnPDtmsgXCJnaXQgYmlzZWN0IHJlc2V0ICIKKyI8aW5jaGVja25pbmc+XCIuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIkJhZCBiaXNlY3Rfd3JpdGUgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJGZWxha3RpZ3QgYXJndW1lbnQgdGlsbCBiaXNlY3Rfd3JpdGU6ICVzIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGdldCB0aGUgb2lkIG9mIHRoZSByZXYgJyVzJyIKK21zZ3N0ciAia2FuIGludGUgbMOkc2Egb2lkIGbDtnIgcmVmZXJlbnNlbiBcIiVzXCIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiB0aGUgZmlsZSAnJXMnIgorbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBmaWxlbiBcIiVzXCIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBjb21tYW5kOiB5b3UncmUgY3VycmVudGx5IGluIGEgJXMvJXMgYmlzZWN0IgorbXNnc3RyICJPZ2lsdGlndCBrb21tYW5kbzogZHUgdXRmw7ZyIGp1c3QgbnUgZW4gXCJiaXNlY3RcIiBtZWQgJXMvJXMuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgbmVlZCB0byBnaXZlIG1lIGF0IGxlYXN0IG9uZSAlcyBhbmQgJXMgcmV2aXNpb24uXG4iCisiWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICVzXCIgYW5kIFwiZ2l0IGJpc2VjdCAlc1wiIGZvciB0aGF0LiIKK21zZ3N0ciAiIgorIkR1IG3DpXN0ZSBhbmdlIMOldG1pbnN0b25lIGVuICVzIG9jaCBlbiAlcyB2ZXJzaW9uLlxuIgorIihEdSBrYW4gYW52w6RuZGEgXCJnaXQgYmlzZWN0ICVzXCIgb2NoIFwiZ2l0IGJpc2VjdCAlc1wiIGbDtnIgZGV0dGEuKSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IG5lZWQgdG8gc3RhcnQgYnkgXCJnaXQgYmlzZWN0IHN0YXJ0XCIuXG4iCisiWW91IHRoZW4gbmVlZCB0byBnaXZlIG1lIGF0IGxlYXN0IG9uZSAlcyBhbmQgJXMgcmV2aXNpb24uXG4iCisiWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICVzXCIgYW5kIFwiZ2l0IGJpc2VjdCAlc1wiIGZvciB0aGF0LiIKK21zZ3N0ciAiIgorIkR1IG3DpXN0ZSBzdGFydGEgbWVkIFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgorIkR1IG3DpXN0ZSBzZWRhbiBhbmdlIMOldG1pbnN0b25lIGVuICVzIG9jaCBlbiAlcyB2ZXJzaW9uLlxuIgorIihEdSBrYW4gYW52w6RuZGEgXCJnaXQgYmlzZWN0ICVzXCIgb2NoIFwiZ2l0IGJpc2VjdCAlc1wiIGbDtnIgZGV0dGEuKSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJiaXNlY3Rpbmcgb25seSB3aXRoIGEgJXMgY29tbWl0IgorbXNnc3RyICJ1dGbDtnIgYmlzZWN0IG1lZCBlbmRhc3QgZW4gJXMgaW5jaGVja25pbmciCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbWV0gYW5kIFtuXSBpbiB5b3VyCisjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIy4KKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMTgKK21zZ2lkICJBcmUgeW91IHN1cmUgW1kvbl0/ICIKK21zZ3N0ciAiw4RyIGR1IHPDpGtlciBbWT1qYS9OPW5lal0/ICIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM3OQorbXNnaWQgIm5vIHRlcm1zIGRlZmluZWQiCittc2dzdHIgImluZ2EgdGVybWVyIGFuZ2l2bmEiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgY3VycmVudCB0ZXJtcyBhcmUgJXMgZm9yIHRoZSBvbGQgc3RhdGVcbiIKKyJhbmQgJXMgZm9yIHRoZSBuZXcgc3RhdGUuXG4iCittc2dzdHIgIiIKKyJBa3R1ZWxsYSB0ZXJtZXIgw6RyICVzIGbDtnIgZGV0IGdhbWxhIHRpbGxzdMOlbmRldFxuIgorIm9jaCAlcyBmw7ZyIGRldCBueWEgdGlsbHN0w6VuZGV0LlxuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIGFyZ3VtZW50ICVzIGZvciAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCisiU3VwcG9ydGVkIG9wdGlvbnMgYXJlOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGFuZCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgorbXNnc3RyICIiCisib2dpbHRpZ3QgYXJndW1lbnQgJXMgZsO2ciBcImdpdCBiaXNlY3QgdGVybXNcIi5cbiIKKyJGbGFnZ29yIHNvbSBzdMO2ZHMgw6RyOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIG9jaCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDc4CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBvcHRpb246ICclcyciCittc2dzdHIgIm9rw6RuZCBmbGFnZ2E6ICVzIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGEgdmFsaWQgcmV2aXNpb24iCittc2dzdHIgIlwiJXNcIiB2ZXJrYXIgaW50ZSB2YXJhIGVuIGdpbHRpZyByZXZpc2lvbiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUxNAorbXNnaWQgImJhZCBIRUFEIC0gSSBuZWVkIGEgSEVBRCIKK21zZ3N0ciAiZmVsYWt0aWd0IEhFQUQgLSBKYWcgYmVow7Z2ZXIgZXR0IEhFQUQiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hlY2tpbmcgb3V0ICclcycgZmFpbGVkLiBUcnkgJ2dpdCBiaXNlY3Qgc3RhcnQgPHZhbGlkLWJyYW5jaD4nLiIKK21zZ3N0ciAiIgorIm1pc3NseWNrYWRlcyBjaGVja2EgdXQgXCIlc1wiLiBGw7Zyc8O2ayBcImdpdCBiaXNlY3QgcmVzZXQgPGdpbHRpZ19ncmVuPlwiLiIKKworIyBjb2dpdG8tcmVsYXRlcmF0CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTUwCittc2dpZCAid29uJ3QgYmlzZWN0IG9uIGNnLXNlZWsnZWQgdHJlZSIKK21zZ3N0ciAia8O2ciBpbnRlIFwiYmlzZWN0XCIgcMOlIHRyw6RkIGTDpHIgXCJjZy1zZWVrXCIgYW52w6RudHMiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NTMKK21zZ2lkICJiYWQgSEVBRCAtIHN0cmFuZ2Ugc3ltYm9saWMgcmVmIgorbXNnc3RyICJmZWxha3RpZ3QgSEVBRCAtIGtvbnN0aWcgc3ltYm9saXNrIHJlZmVyZW5zIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTc3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmOiAnJXMnIgorbXNnc3RyICJvZ2lsdGlnIHJlZmVyZW5zOiBcIiVzXCIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzMKIG1zZ2lkICJwZXJmb3JtICdnaXQgYmlzZWN0IG5leHQnIgogbXNnc3RyICJ1dGbDtnIgJ2dpdCBiaXNlY3QgbmV4dCciCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjIKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzUKIG1zZ2lkICJ3cml0ZSB0aGUgdGVybXMgdG8gLmdpdC9CSVNFQ1RfVEVSTVMiCiBtc2dzdHIgInNrcml2IHRlcm1lcm5hIGkgLmdpdC9CSVNFQ1RfVEVSTVMiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjQKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzcKIG1zZ2lkICJjbGVhbnVwIHRoZSBiaXNlY3Rpb24gc3RhdGUiCiBtc2dzdHIgInN0w6RkYXIgdXBwIGJpc2VjdC10aWxsc3TDpW5kIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTI2CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjM5CiBtc2dpZCAiY2hlY2sgZm9yIGV4cGVjdGVkIHJldnMiCiBtc2dzdHIgImtvbnRyb2xsZXJhIGbDtnIgZsO2cnbDpG50YWRlIHZlcnNpb25lciIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyOAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0MQorbXNnaWQgInJlc2V0IHRoZSBiaXNlY3Rpb24gc3RhdGUiCittc2dzdHIgIsOldGVyc3TDpGxsIGJpc2VjdC10aWxsc3TDpW5kIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQzCittc2dpZCAid3JpdGUgb3V0IHRoZSBiaXNlY3Rpb24gc3RhdGUgaW4gQklTRUNUX0xPRyIKK21zZ3N0ciAic2tyaXZlciBiaXNlY3QtdGlsbHN0w6VuZGV0IGkgQklTRUNUX0xPRyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0NQorbXNnaWQgImNoZWNrIGFuZCBzZXQgdGVybXMgaW4gYSBiaXNlY3Rpb24gc3RhdGUiCittc2dzdHIgInZpc2Egb2NoIGFuZ2UgdGVybWVyIGbDtnIgYmlzZWN0LXRpbGxzdMOlbmQiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDcKK21zZ2lkICJjaGVjayB3aGV0aGVyIGJhZCBvciBnb29kIHRlcm1zIGV4aXN0IgorbXNnc3RyICJzZSBlZnRlciBvbSB0ZXJtZXIgZsO2ciByw6R0dCBvY2ggZmVsIGZpbm5zIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ5Cittc2dpZCAicHJpbnQgb3V0IHRoZSBiaXNlY3QgdGVybXMiCittc2dzdHIgInNrcml2IHV0IHRlcm1lciBmw7ZyIGJpc2VjdCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY1MQorbXNnaWQgInN0YXJ0IHRoZSBiaXNlY3Qgc2Vzc2lvbiIKK21zZ3N0ciAicMOlYsO2cmphIGJpc2VjdC1rw7ZybmluZ2VuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUzCiBtc2dpZCAidXBkYXRlIEJJU0VDVF9IRUFEIGluc3RlYWQgb2YgY2hlY2tpbmcgb3V0IHRoZSBjdXJyZW50IGNvbW1pdCIKIG1zZ3N0ciAidXBwZGF0ZXJhIEJJU0VDVF9IRUFEIGlzdMOkbGxldCBmw7ZyIGF0dCBjaGVja2EgdXQgYWt0dWVsbCBpbmNoZWNrbmluZyIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE0MworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY1NQorbXNnaWQgIm5vIGxvZyBmb3IgQklTRUNUX1dSSVRFIgorbXNnc3RyICJpbmdlbiBsb2dnIGbDtnIgQklTRUNUX1dSSVRFIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjczCiBtc2dpZCAiLS13cml0ZS10ZXJtcyByZXF1aXJlcyB0d28gYXJndW1lbnRzIgogbXNnc3RyICItLXdyaXRlLXRlcm1zIGtyw6R2ZXIgdHbDpSBhcmd1bWVudCIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE0NworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY3NwogbXNnaWQgIi0tYmlzZWN0LWNsZWFuLXN0YXRlIHJlcXVpcmVzIG5vIGFyZ3VtZW50cyIKIG1zZ3N0ciAiLS1iaXNlY3QtY2xlYW4tc3RhdGUgdGFyIGluZ2EgYXJndW1lbnQiCiAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2ODQKK21zZ2lkICItLWJpc2VjdC1yZXNldCByZXF1aXJlcyBlaXRoZXIgbm8gYXJndW1lbnQgb3IgYSBjb21taXQiCittc2dzdHIgIi0tYmlzZWN0LXJlc2V0IGtyw6R2ZXIgYW50aW5nZW4gaW5nZXQgYXJndW1lbnQgZWxsZXIgZW4gaW5jaGVja25pbmciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2ODgKK21zZ2lkICItLWJpc2VjdC13cml0ZSByZXF1aXJlcyBlaXRoZXIgNCBvciA1IGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1iaXNlY3Qtd3JpdGUga3LDpHZlciBhbnRpbmdlbiA0IGVsbGVyIDUgYXJndW1lbnQiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2OTQKK21zZ2lkICItLWNoZWNrLWFuZC1zZXQtdGVybXMgcmVxdWlyZXMgMyBhcmd1bWVudHMiCittc2dzdHIgIi0tY2hlY2stYW5kLXNldC10ZXJtcyBrcsOkdmVyIHRyZSBhcmd1bWVudCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjcwMAorbXNnaWQgIi0tYmlzZWN0LW5leHQtY2hlY2sgcmVxdWlyZXMgMiBvciAzIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1iaXNlY3QtbmV4dC1jaGVjayBrcsOkdmVyIDIgZWxsZXIgMyBhcmd1bWVudCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjcwNgorbXNnaWQgIi0tYmlzZWN0LXRlcm1zIHJlcXVpcmVzIDAgb3IgMSBhcmd1bWVudCIKK21zZ3N0ciAiLS1iaXNlY3QtdGVybXMga3LDpHZlciBub2xsIGVsbGVyIGV0dCBhcmd1bWVudCIKKwogIzogYnVpbHRpbi9ibGFtZS5jOjMxCiBtc2dpZCAiZ2l0IGJsYW1lIFs8b3B0aW9ucz5dIFs8cmV2LW9wdHM+XSBbPHJldj5dIFstLV0gPGZpbGU+IgogbXNnc3RyICJnaXQgYmxhbWUgWzxmbGFnZ29yPl0gWzxyZXYtZmxhZ2dvcj5dIFs8cmV2Pl0gWy0tXSA8ZmlsPiIKQEAgLTc4MDcsMTMzICsxMDI0MywxNDYgQEAKIG1zZ2lkICI8cmV2LW9wdHM+IGFyZSBkb2N1bWVudGVkIGluIGdpdC1yZXYtbGlzdCgxKSIKIG1zZ3N0ciAiPHJldi1mbGFnZ29yPiBkb2t1bWVudGVyYXMgaSBnaXQtcmV2LWxpc3QoMSkiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo0MDYKKyM6IGJ1aWx0aW4vYmxhbWUuYzo0MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0aW5nIGEgY29sb3I6ICVzIgogbXNnc3RyICJmw7ZydsOkbnRhZGUgZW4gZsOkcmc6ICVzIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NDEzCisjOiBidWlsdGluL2JsYW1lLmM6NDE2CiBtc2dpZCAibXVzdCBlbmQgd2l0aCBhIGNvbG9yIgogbXNnc3RyICJtw6VzdGUgc2x1dGEgbWVkIGVuIGbDpHJnIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzAwCisjOiBidWlsdGluL2JsYW1lLmM6NzI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29sb3IgJyVzJyBpbiBjb2xvci5ibGFtZS5yZXBlYXRlZExpbmVzIgogbXNnc3RyICJmZWxha3RpZyBmw6RyZyBcIiVzXCIgaSBjb2xvci5ibGFtZS5yZXBlYXRlZExpbmVzIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzE4CisjOiBidWlsdGluL2JsYW1lLmM6NzQ3CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgYmxhbWUuY29sb3JpbmciCiBtc2dzdHIgIm9naWx0aWd0IHbDpHJkZSBmw7ZyIGJsYW1lLmNvbG9yaW5nIgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzkzCisjOiBidWlsdGluL2JsYW1lLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmaW5kIHJldmlzaW9uICVzIHRvIGlnbm9yZSIKK21zZ3N0ciAia2FuIGludGUgaGl0dGEgcmV2aXNpb24gJXMgYXR0IGlnbm9yZXJhIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ0CiBtc2dpZCAiU2hvdyBibGFtZSBlbnRyaWVzIGFzIHdlIGZpbmQgdGhlbSwgaW5jcmVtZW50YWxseSIKIG1zZ3N0ciAiVmlzYSBrbGFuZHJpbmdzcG9zdGVyIG7DpHIgdmkgaGl0dGFyIGRlbSwgaW50ZXJha3RpdnQiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTQKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDUKIG1zZ2lkICJTaG93IGJsYW5rIFNIQS0xIGZvciBib3VuZGFyeSBjb21taXRzIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICJWaXNhIGJsYW5rIFNIQS0xIGbDtnIgZ3LDpG5zaW5jaGVja25pbmdhciAoU3RhbmRhcmQ6IGF2KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5NQorIzogYnVpbHRpbi9ibGFtZS5jOjg0NgogbXNnaWQgIkRvIG5vdCB0cmVhdCByb290IGNvbW1pdHMgYXMgYm91bmRhcmllcyAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiQmVoYW5kbGEgaW50ZSByb3RpbmNoZWNrbmluZ2FyIHNvbSBncsOkbnNlciAoU3RhbmRhcmQ6IGF2KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5NgorIzogYnVpbHRpbi9ibGFtZS5jOjg0NwogbXNnaWQgIlNob3cgd29yayBjb3N0IHN0YXRpc3RpY3MiCiBtc2dzdHIgIlZpc2Egc3RhdGlzdGlrIMO2dmVyIGFyYmV0c2tvc3RuYWQiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTcKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDgKIG1zZ2lkICJGb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCiBtc2dzdHIgIlR2aW5nYSBmw7ZybG9wcHNyYXBwb3J0ZXJpbmciCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDkKIG1zZ2lkICJTaG93IG91dHB1dCBzY29yZSBmb3IgYmxhbWUgZW50cmllcyIKIG1zZ3N0ciAiVmlzYSB1dGRhdGFwb8OkbmcgZsO2ciBrbGFuZHJpbmdzcG9zdGVyIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk5CisjOiBidWlsdGluL2JsYW1lLmM6ODUwCiBtc2dpZCAiU2hvdyBvcmlnaW5hbCBmaWxlbmFtZSAoRGVmYXVsdDogYXV0bykiCiBtc2dzdHIgIlZpc2Egb3JpZ2luYWxmaWxuYW1uIChTdGFuZGFyZDogYXV0bykiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTEKIG1zZ2lkICJTaG93IG9yaWdpbmFsIGxpbmVudW1iZXIgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIlZpc2EgdXJzcHJ1bmdsaWd0IHJhZG51bW1lciAoU3RhbmRhcmQ6IGF2KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwMQorIzogYnVpbHRpbi9ibGFtZS5jOjg1MgogbXNnaWQgIlNob3cgaW4gYSBmb3JtYXQgZGVzaWduZWQgZm9yIG1hY2hpbmUgY29uc3VtcHRpb24iCiBtc2dzdHIgIlZpc2EgaSBldHQgZm9ybWF0IGF2c2V0dCBmw7ZyIG1hc2tpbmtvbnN1bXRpb24iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDIKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTMKIG1zZ2lkICJTaG93IHBvcmNlbGFpbiBmb3JtYXQgd2l0aCBwZXItbGluZSBjb21taXQgaW5mb3JtYXRpb24iCiBtc2dzdHIgIlZpc2EgcG9yc2xpbnNmb3JtYXQgbWVkIHBlci1yYWQtaW5jaGVja25pbmdzaW5mb3JtYXRpb24iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTQKIG1zZ2lkICJVc2UgdGhlIHNhbWUgb3V0cHV0IG1vZGUgYXMgZ2l0LWFubm90YXRlIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICJBbnbDpG5kIHNhbW1hIHV0ZGF0YWzDpGdlIHNvbSBnaXQtYW5ub3RhdGUgKFN0YW5kYXJkOiBhdikiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDQKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTUKIG1zZ2lkICJTaG93IHJhdyB0aW1lc3RhbXAgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIlZpc2EgcsOlIHRpZHNzdMOkbXBlbCAoU3RhbmRhcmQ6IGF2KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwNQorIzogYnVpbHRpbi9ibGFtZS5jOjg1NgogbXNnaWQgIlNob3cgbG9uZyBjb21taXQgU0hBMSAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiVmlzYSBsw6VuZyBpbmNoZWNrbmluZ3MtU0hBMSAoU3RhbmRhcmQ6IGF2KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwNgorIzogYnVpbHRpbi9ibGFtZS5jOjg1NwogbXNnaWQgIlN1cHByZXNzIGF1dGhvciBuYW1lIGFuZCB0aW1lc3RhbXAgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIlVuZGVydHJ5Y2sgZsO2cmZhdHRhcm5hbW4gb2NoIHRpZHNzdMOkbXBlbCAoU3RhbmRhcmQ6IGF2KSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwNworIzogYnVpbHRpbi9ibGFtZS5jOjg1OAogbXNnaWQgIlNob3cgYXV0aG9yIGVtYWlsIGluc3RlYWQgb2YgbmFtZSAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiVmlzYSBmw7ZyZmF0dGFyZW5zIGUtcG9zdCBpc3TDpGxsZXQgZsO2ciBuYW1uIChTdGFuZGFyZDogYXYpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA4CisjOiBidWlsdGluL2JsYW1lLmM6ODU5CiBtc2dpZCAiSWdub3JlIHdoaXRlc3BhY2UgZGlmZmVyZW5jZXMiCiBtc2dzdHIgIklnbm9yZXJhIMOkbmRyaW5nYXIgaSBibGFua3N0ZWciCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDkKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjAgYnVpbHRpbi9sb2cuYzoxNzAyCittc2dpZCAicmV2IgorbXNnc3RyICJyZXYiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjAKK21zZ2lkICJJZ25vcmUgPHJldj4gd2hlbiBibGFtaW5nIgorbXNnc3RyICJpZ25vcmVyYSA8cmV2PiB2aWQga2xhbmRyZW4iCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjEKK21zZ2lkICJJZ25vcmUgcmV2aXNpb25zIGZyb20gPGZpbGU+IgorbXNnc3RyICJpZ25vcmVyYSByZXZpc2lvbmVyIGZyw6VuIDxmaWw+IgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYyCiBtc2dpZCAiY29sb3IgcmVkdW5kYW50IG1ldGFkYXRhIGZyb20gcHJldmlvdXMgbGluZSBkaWZmZXJlbnRseSIKIG1zZ3N0ciAiZsOkcmdsw6RnZyByZWR1bmRhbnQgbWV0YWRhdGEgZnLDpW4gdGlkaWdhcmUgcmFkZXIgYW5ub3JsdW5kYSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgxMAorIzogYnVpbHRpbi9ibGFtZS5jOjg2MwogbXNnaWQgImNvbG9yIGxpbmVzIGJ5IGFnZSIKIG1zZ3N0ciAiZsOkcmdsw6RnZyByYWRlciBlZnRlciDDpWxkZXIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MTcKLW1zZ2lkICJVc2UgYW4gZXhwZXJpbWVudGFsIGhldXJpc3RpYyB0byBpbXByb3ZlIGRpZmZzIgotbXNnc3RyICJBbnbDpG5kIGVuIGV4cGVyaW1lbnRlbGwgYWxnb3JpdG0gZsO2ciBhdHQgZsO2cmLDpHR0cmEgZGlmZmFyIgotCi0jOiBidWlsdGluL2JsYW1lLmM6ODE5CisjOiBidWlsdGluL2JsYW1lLmM6ODY0CiBtc2dpZCAiU3BlbmQgZXh0cmEgY3ljbGVzIHRvIGZpbmQgYmV0dGVyIG1hdGNoIgogbXNnc3RyICJTbMO2c2EgZXh0cmEgY3lrbGVyIG1lZCBhdHQgaGl0dGEgYsOkdHRyZSB0csOkZmYiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjUKIG1zZ2lkICJVc2UgcmV2aXNpb25zIGZyb20gPGZpbGU+IGluc3RlYWQgb2YgY2FsbGluZyBnaXQtcmV2LWxpc3QiCiBtc2dzdHIgIkFudsOkbmQgcmV2aXNpb25lciBmcsOlbiA8ZmlsPiBpc3TDpGxsZXQgZsO2ciBhdHQgYW5yb3BhIGdpdC1yZXYtbGlzdCIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMQorIzogYnVpbHRpbi9ibGFtZS5jOjg2NgogbXNnaWQgIlVzZSA8ZmlsZT4ncyBjb250ZW50cyBhcyB0aGUgZmluYWwgaW1hZ2UiCiBtc2dzdHIgIkFudsOkbmQgPGZpbD5zIGlubmVow6VsbCBzb20gc2x1dGdpbHRpZyBiaWxkIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIyIGJ1aWx0aW4vYmxhbWUuYzo4MjMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjcgYnVpbHRpbi9ibGFtZS5jOjg2OAogbXNnaWQgInNjb3JlIgogbXNnc3RyICJwb8OkbmciCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjcKIG1zZ2lkICJGaW5kIGxpbmUgY29waWVzIHdpdGhpbiBhbmQgYWNyb3NzIGZpbGVzIgogbXNnc3RyICJIaXR0YSBrb3BpZXJhZGUgcmFkZXIgaW51dGkgb2NoIG1lbGxhbiBmaWxlciIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMworIzogYnVpbHRpbi9ibGFtZS5jOjg2OAogbXNnaWQgIkZpbmQgbGluZSBtb3ZlbWVudHMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCiBtc2dzdHIgIkhpdHRhIGZseXR0YWRlIHJhZGVyIGludXRpIG9jaCBtZWxsYW4gZmlsZXIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjQKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjkKIG1zZ2lkICJuLG0iCiBtc2dzdHIgIm4sbSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyNAorIzogYnVpbHRpbi9ibGFtZS5jOjg2OQogbXNnaWQgIlByb2Nlc3Mgb25seSBsaW5lIHJhbmdlIG4sbSwgY291bnRpbmcgZnJvbSAxIgogbXNnc3RyICJCZWhhbmRsYSBlbmRhc3QgcmFkaW50ZXJ2YWxsZXQgbixtLCBtZWQgYsO2cmphbiBww6UgMSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjg3MworIzogYnVpbHRpbi9ibGFtZS5jOjkyMQogbXNnaWQgIi0tcHJvZ3Jlc3MgY2FuJ3QgYmUgdXNlZCB3aXRoIC0taW5jcmVtZW50YWwgb3IgcG9yY2VsYWluIGZvcm1hdHMiCiBtc2dzdHIgIi0tcHJvZ3Jlc3Mga2FuIGludGUgYW52w6RuZGFzIG1lZCAtLWluY3JlbWVudGFsIGVsbGVyIHBvcnNsaW5zZm9ybWF0IgogCkBAIC03OTQ1LDE4ICsxMDM5NCwxOCBAQAogIy4geW91ciBsYW5ndWFnZSBtYXkgbmVlZCBtb3JlIG9yIGZld2VyIGRpc3BsYXkKICMuIGNvbHVtbnMuCiAjLgotIzogYnVpbHRpbi9ibGFtZS5jOjkyNAorIzogYnVpbHRpbi9ibGFtZS5jOjk3MgogbXNnaWQgIjQgeWVhcnMsIDExIG1vbnRocyBhZ28iCiBtc2dzdHIgIjQgw6VyLCAxMSBtw6VuYWRlciBzZWRhbiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjEwMTEKKyM6IGJ1aWx0aW4vYmxhbWUuYzoxMDc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZpbGUgJXMgaGFzIG9ubHkgJWx1IGxpbmUiCiBtc2dpZF9wbHVyYWwgImZpbGUgJXMgaGFzIG9ubHkgJWx1IGxpbmVzIgogbXNnc3RyWzBdICJmaWxlbiAlcyBoYXIgYmFyYSAlbHUgcmFkIgogbXNnc3RyWzFdICJmaWxlbiAlcyBoYXIgYmFyYSAlbHUgcmFkZXIiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzoxMDU3CisjOiBidWlsdGluL2JsYW1lLmM6MTEyNQogbXNnaWQgIkJsYW1pbmcgbGluZXMiCiBtc2dzdHIgIktsYW5kcmEgcmFkZXIiCiAKQEAgLTc5ODgsNyArMTA0MzcsNyBAQAogbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1yIHwgLWFdIFstLWZvcm1hdF0iCiBtc2dzdHIgImdpdCBicmFuY2ggWzxmbGFnZ29yPl0gWy1yIHwgLWFdIFstLWZvcm1hdF0iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTUxCisjOiBidWlsdGluL2JyYW5jaC5jOjE1NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZGVsZXRpbmcgYnJhbmNoICclcycgdGhhdCBoYXMgYmVlbiBtZXJnZWQgdG9cbiIKQEAgLTc5OTcsNyArMTA0NDYsNyBAQAogInRhciBib3J0IGdyZW5lbiBcIiVzXCIgc29tIGhhciBzbGFnaXRzIGlob3AgbWVkXG4iCiAiICAgICAgICAgXCIlc1wiLCBtZW4gw6RubnUgaW50ZSBzbGFnaXRzIGlob3AgbWVkIEhFQUQuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE1NQorIzogYnVpbHRpbi9icmFuY2guYzoxNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdCBkZWxldGluZyBicmFuY2ggJyVzJyB0aGF0IGlzIG5vdCB5ZXQgbWVyZ2VkIHRvXG4iCkBAIC04MDA2LDEyICsxMDQ1NSwxMiBAQAogInRhciBpbnRlIGJvcnQgZ3JlbmVuIFwiJXNcIiBzb20gaW50ZSBoYXIgc2xhZ2l0cyBpaG9wIG1lZFxuIgogIiAgICAgICAgIFwiJXNcIiwgdHJvdHMgYXR0IGRlbiBoYXIgc2xhZ2l0cyBpaG9wIG1lZCBIRUFELiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxNjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkbid0IGxvb2sgdXAgY29tbWl0IG9iamVjdCBmb3IgJyVzJyIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBzbMOlIHVwcCBpbmNoZWNrbmluZ3NvYmpla3QgZsO2ciBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTczCisjOiBidWlsdGluL2JyYW5jaC5jOjE3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGJyYW5jaCAnJXMnIGlzIG5vdCBmdWxseSBtZXJnZWQuXG4iCkBAIC04MDIwLDExMyArMTA0NjksMTIyIEBACiAiR3JlbmVuIFwiJXNcIiBoYXIgaW50ZSBzbGFnaXRzIHNhbW1hbiBpIHNpbiBoZWxoZXQuXG4iCiAiT20gZHUgw6RyIHPDpGtlciBww6UgYXR0IGR1IHZpbGwgdGEgYm9ydCBkZW4sIGvDtnIgXCJnaXQgYnJhbmNoIC1EICVzXCIuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE4NgorIzogYnVpbHRpbi9icmFuY2guYzoxODkKIG1zZ2lkICJVcGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICJNaXNzbHlja2FkZXMgdXBwZGF0ZXJhIGtvbmZpZ3VyYXRpb25zZmlsIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjIxNworIzogYnVpbHRpbi9icmFuY2guYzoyMjAKIG1zZ2lkICJjYW5ub3QgdXNlIC1hIHdpdGggLWQiCiBtc2dzdHIgImthbiBpbnRlIGFuZ2UgLWEgbWVkIC1kIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjIyMworIzogYnVpbHRpbi9icmFuY2guYzoyMjYKIG1zZ2lkICJDb3VsZG4ndCBsb29rIHVwIGNvbW1pdCBvYmplY3QgZm9yIEhFQUQiCiBtc2dzdHIgIkt1bmRlIGludGUgc2zDpSB1cHAgaW5jaGVja25pbmdzb2JqZWt0IGbDtnIgSEVBRCIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBkZWxldGUgYnJhbmNoICclcycgY2hlY2tlZCBvdXQgYXQgJyVzJyIKIG1zZ3N0ciAiS2FuIGludGUgdGEgYm9ydCBncmVuZW4gXCIlc1wiIHNvbSDDpHIgdXRjaGVja2FkIHDDpSBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjUyCisjOiBidWlsdGluL2JyYW5jaC5jOjI1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZW1vdGUtdHJhY2tpbmcgYnJhbmNoICclcycgbm90IGZvdW5kLiIKIG1zZ3N0ciAiZmrDpHJyc3DDpXJhbmRlIGdyZW5lbiBcIiVzXCIgaGl0dGFkZXMgaW50ZS4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjUzCisjOiBidWlsdGluL2JyYW5jaC5jOjI1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJicmFuY2ggJyVzJyBub3QgZm91bmQuIgogbXNnc3RyICJncmVuZW4gXCIlc1wiIGhpdHRhZGVzIGludGUuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI2OAorIzogYnVpbHRpbi9icmFuY2guYzoyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXJyb3IgZGVsZXRpbmcgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCAnJXMnIgogbXNnc3RyICJGZWwgdmlkIGJvcnR0YWduaW5nIGF2IGZqw6RycnNww6VyYW5kZSBncmVuZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI2OQorIzogYnVpbHRpbi9icmFuY2guYzoyNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXJyb3IgZGVsZXRpbmcgYnJhbmNoICclcyciCiBtc2dzdHIgIkZlbCB2aWQgYm9ydHRhZ25pbmcgYXYgZ3JlbmVuIFwiJXNcIiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNzYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCAlcyAod2FzICVzKS5cbiIKIG1zZ3N0ciAiVG9nIGJvcnQgZmrDpHJyc3DDpXJhbmRlIGdyZW5lbiAlcyAodmFyICVzKS5cbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgYnJhbmNoICVzICh3YXMgJXMpLlxuIgogbXNnc3RyICJUb2cgYm9ydCBncmVuZW4gJXMgKHZhciAlcykuXG4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDIxIGJ1aWx0aW4vdGFnLmM6NTkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDI5IGJ1aWx0aW4vdGFnLmM6NjEKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgZm9ybWF0IHN0cmluZyIKIG1zZ3N0ciAia2FuIGludGUgdG9sa2EgZm9ybWF0c3Ryw6RuZyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0NTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDYwCittc2dpZCAiY291bGQgbm90IHJlc29sdmUgSEVBRCIKK21zZ3N0ciAia3VuZGUgaW50ZSBzbMOlIHVwcCBIRUFEIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ2NgorIywgYy1mb3JtYXQKK21zZ2lkICJIRUFEICglcykgcG9pbnRzIG91dHNpZGUgb2YgcmVmcy9oZWFkcy8iCittc2dzdHIgIkhFQUQgKCVzKSBwZWthciB1dGVuZsO2ciByZWZzL2hlYWRzLyIKKworIzogYnVpbHRpbi9icmFuY2guYzo0ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICVzIGlzIGJlaW5nIHJlYmFzZWQgYXQgJXMiCiBtc2dzdHIgIkdyZW5lbiAlcyBvbWJhc2VyYXMgcMOlICVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ2MgorIzogYnVpbHRpbi9icmFuY2guYzo0ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICVzIGlzIGJlaW5nIGJpc2VjdGVkIGF0ICVzIgogbXNnc3RyICJHcmVuZW4gJXMgw6RyIGkgZW4gXCJiaXNlY3RcIiBww6UgJXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDc5CisjOiBidWlsdGluL2JyYW5jaC5jOjUwMgogbXNnaWQgImNhbm5vdCBjb3B5IHRoZSBjdXJyZW50IGJyYW5jaCB3aGlsZSBub3Qgb24gYW55LiIKIG1zZ3N0ciAia3VuZGUgaW50ZSBrb3BpZXJhIGFrdHVlbGwgZ3JlbiBuw6RyIGR1IGludGUgYmVmaW5uZXIgZGlnIHDDpSBuw6Vnb24uIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ4MQorIzogYnVpbHRpbi9icmFuY2guYzo1MDQKIG1zZ2lkICJjYW5ub3QgcmVuYW1lIHRoZSBjdXJyZW50IGJyYW5jaCB3aGlsZSBub3Qgb24gYW55LiIKIG1zZ3N0ciAiIgogImt1bmRlIGludGUgYnl0YSBuYW1uIHDDpSBha3R1ZWxsIGdyZW4gbsOkciBkdSBpbnRlIGJlZmlubmVyIGRpZyBww6UgbsOlZ29uLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0OTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgYnJhbmNoIG5hbWU6ICclcyciCiBtc2dzdHIgIkZlbGFrdGlndCBuYW1uIHDDpSBncmVuOiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTE5CisjOiBidWlsdGluL2JyYW5jaC5jOjU0MgogbXNnaWQgIkJyYW5jaCByZW5hbWUgZmFpbGVkIgogbXNnc3RyICJNaXNzbHlja2FkZXMgYnl0YSBuYW1uIHDDpSBncmVuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyMQorIzogYnVpbHRpbi9icmFuY2guYzo1NDQKIG1zZ2lkICJCcmFuY2ggY29weSBmYWlsZWQiCiBtc2dzdHIgIk1pc3NseWNrYWRlcyBrb3BpZXJhIGdyZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTI1CisjOiBidWlsdGluL2JyYW5jaC5jOjU0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJDcmVhdGVkIGEgY29weSBvZiBhIG1pc25hbWVkIGJyYW5jaCAnJXMnIgogbXNnc3RyICJTa2FwYWRlIGtvcGlhIGF2IGZlbGFrdGlndCBuYW1uZ2l2ZW4gZ3JlbiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTI4CisjOiBidWlsdGluL2JyYW5jaC5jOjU1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW5hbWVkIGEgbWlzbmFtZWQgYnJhbmNoICclcycgYXdheSIKIG1zZ3N0ciAiQnl0dGUgYm9ydCBuYW1uIHDDpSBlbiBmZWxha3RpZ3QgbmFtbmdpdmVuIGdyZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUzNAorIzogYnVpbHRpbi9icmFuY2guYzo1NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoIHJlbmFtZWQgdG8gJXMsIGJ1dCBIRUFEIGlzIG5vdCB1cGRhdGVkISIKIG1zZ3N0ciAiR3JlbmVuIG5hbW5ieXR0IHRpbGwgJXMsIG1lbiBIRUFEIGhhciBpbnRlIHVwcGRhdGVyYXRzISIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1NDMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTY2CiBtc2dpZCAiQnJhbmNoIGlzIHJlbmFtZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICJHcmVuZW4gbmFtbmJ5dHQsIG1lbiBtaXNzbHlja2FkZXMgdXBwZGF0ZXJhIGtvbmZpZ3VyYXRpb25zZmlsZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQ1CisjOiBidWlsdGluL2JyYW5jaC5jOjU2OAogbXNnaWQgIkJyYW5jaCBpcyBjb3BpZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICJHcmVuZW4ga29waWVyYWRlcywgbWVuIG1pc3NseWNrYWRlcyB1cHBkYXRlcmEga29uZmlndXJhdGlvbnNmaWxlbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1NjEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQbGVhc2UgZWRpdCB0aGUgZGVzY3JpcHRpb24gZm9yIHRoZSBicmFuY2hcbiIKQEAgLTgxMzcsMjIzICsxMDU5NSwyMTkgQEAKICIgICVzXG4iCiAiUmFkZXIgc29tIGlubGVkcyBtZWQgXCIlY1wiIGlnbm9yZXJhcy5cbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE4CiBtc2dpZCAiR2VuZXJpYyBvcHRpb25zIgogbXNnc3RyICJBbGxtw6RubmEgZmxhZ2dvciIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIwCiBtc2dpZCAic2hvdyBoYXNoIGFuZCBzdWJqZWN0LCBnaXZlIHR3aWNlIGZvciB1cHN0cmVhbSBicmFuY2giCiBtc2dzdHIgInZpc2EgaGFzaCBvY2ggw6RyZW5kZXJhZCwgYW5nZSB0dsOlIGfDpW5nZXIgZsO2ciB1cHBzdHLDtm1zZ3JlbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIxCiBtc2dpZCAic3VwcHJlc3MgaW5mb3JtYXRpb25hbCBtZXNzYWdlcyIKIG1zZ3N0ciAidW5kZXJ0cnljayBpbmZvcm1hdGlvbnNtZWRkZWxhbmRlbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIyCiBtc2dpZCAic2V0IHVwIHRyYWNraW5nIG1vZGUgKHNlZSBnaXQtcHVsbCgxKSkiCiBtc2dzdHIgInN0w6RsbCBpbiBzcMOlcm5pbmdzbMOkZ2UgKHNlIGdpdC1wdWxsKDEpKSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI0CiBtc2dpZCAiZG8gbm90IHVzZSIKIG1zZ3N0ciAiYW52w6RuZCBlaiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDIgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgwCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNiBidWlsdGluL3JlYmFzZS5jOjUxMwogbXNnaWQgInVwc3RyZWFtIgogbXNnc3RyICJ1cHBzdHLDtm1zIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMgorIzogYnVpbHRpbi9icmFuY2guYzo2MjYKIG1zZ2lkICJjaGFuZ2UgdGhlIHVwc3RyZWFtIGluZm8iCiBtc2dzdHIgIsOkbmRyYSB1cHBzdHLDtm1zaW5mb3JtYXRpb25lbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDMKLW1zZ2lkICJVbnNldCB0aGUgdXBzdHJlYW0gaW5mbyIKLW1zZ3N0ciAiVGEgYm9ydCB1cHBzdHLDtm1zaW5mb3JtYXRpb25lbiIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI3Cittc2dpZCAidW5zZXQgdGhlIHVwc3RyZWFtIGluZm8iCittc2dzdHIgInRhIGJvcnQgdXBwc3Ryw7Ztc2luZm9ybWF0aW9uZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA0CisjOiBidWlsdGluL2JyYW5jaC5jOjYyOAogbXNnaWQgInVzZSBjb2xvcmVkIG91dHB1dCIKIG1zZ3N0ciAiYW52w6RuZCBmw6RyZ2FkIHV0ZGF0YSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI5CiBtc2dpZCAiYWN0IG9uIHJlbW90ZS10cmFja2luZyBicmFuY2hlcyIKIG1zZ3N0ciAiYXJiZXRhIHDDpSBmasOkcnJzcMOlcmFuZGUgZ3JlbmFyIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwNyBidWlsdGluL2JyYW5jaC5jOjYwOQorIzogYnVpbHRpbi9icmFuY2guYzo2MzEgYnVpbHRpbi9icmFuY2guYzo2MzMKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICJ2aXNhIGVuZGFzdCBncmVuYXIgc29tIGlubmVow6VsbGVyIGluY2hlY2tuaW5nZW4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA4IGJ1aWx0aW4vYnJhbmNoLmM6NjEwCisjOiBidWlsdGluL2JyYW5jaC5jOjYzMiBidWlsdGluL2JyYW5jaC5jOjYzNAogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgInZpc2EgZW5kYXN0IGdyZW5hciBzb20gaW50ZSBpbm5laMOlbGxlciBpbmNoZWNrbmluZ2VuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxMworIzogYnVpbHRpbi9icmFuY2guYzo2MzcKIG1zZ2lkICJTcGVjaWZpYyBnaXQtYnJhbmNoIGFjdGlvbnM6IgogbXNnc3RyICJTcGVjaWZpa2EgZ2l0LWJyYW5jaC3DpXRnw6RyZGVyOiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM4CiBtc2dpZCAibGlzdCBib3RoIHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCiBtc2dzdHIgInZpc2EgYsOlZGUgZmrDpHJyc3DDpXJhbmRlIG9jaCBsb2thbGEgZ3JlbmFyIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxNgorIzogYnVpbHRpbi9icmFuY2guYzo2NDAKIG1zZ2lkICJkZWxldGUgZnVsbHkgbWVyZ2VkIGJyYW5jaCIKIG1zZ3N0ciAidGEgYm9ydCBoZWx0IHNhbW1hbnNsYWdlbiBncmVuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxNworIzogYnVpbHRpbi9icmFuY2guYzo2NDEKIG1zZ2lkICJkZWxldGUgYnJhbmNoIChldmVuIGlmIG5vdCBtZXJnZWQpIgogbXNnc3RyICJ0YSBib3J0IGdyZW4gKMOkdmVuIG9tIGludGUgaGVsdCBzYW1tYW5zbGFnZW4pIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxOAorIzogYnVpbHRpbi9icmFuY2guYzo2NDIKIG1zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCBhbmQgaXRzIHJlZmxvZyIKIG1zZ3N0ciAiZmx5dHRhL3RhIGJvcnQgZW4gZ3JlbiBvY2ggZGVzcyByZWZsb2dnIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxOQorIzogYnVpbHRpbi9icmFuY2guYzo2NDMKIG1zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCwgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgogbXNnc3RyICJmbHl0dGEvdGEgYm9ydCBlbiBncmVuLCDDpHZlbiBvbSBtw6VsZXQgZmlubnMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIwCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NAogbXNnaWQgImNvcHkgYSBicmFuY2ggYW5kIGl0cyByZWZsb2ciCiBtc2dzdHIgImtvcGllcmEgZW4gZ3JlbiBvY2ggZGVzcyByZWZsb2dnIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMQorIzogYnVpbHRpbi9icmFuY2guYzo2NDUKIG1zZ2lkICJjb3B5IGEgYnJhbmNoLCBldmVuIGlmIHRhcmdldCBleGlzdHMiCiBtc2dzdHIgImtvcGllcmEgZW4gZ3Jlbiwgw6R2ZW4gb20gbcOlbGV0IGZpbm5zIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMgorIzogYnVpbHRpbi9icmFuY2guYzo2NDYKIG1zZ2lkICJsaXN0IGJyYW5jaCBuYW1lcyIKIG1zZ3N0ciAibGlzdGEgbmFtbiBww6UgZ3JlbmFyIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMworIzogYnVpbHRpbi9icmFuY2guYzo2NDcKK21zZ2lkICJzaG93IGN1cnJlbnQgYnJhbmNoIG5hbWUiCittc2dzdHIgInZpc2EgbmFtbiBww6UgYWt0dWVsbCBncmVuIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0OAogbXNnaWQgImNyZWF0ZSB0aGUgYnJhbmNoJ3MgcmVmbG9nIgogbXNnc3RyICJza2FwYSBncmVuZW5zIHJlZmxvZ2ciCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI1CisjOiBidWlsdGluL2JyYW5jaC5jOjY1MAogbXNnaWQgImVkaXQgdGhlIGRlc2NyaXB0aW9uIGZvciB0aGUgYnJhbmNoIgogbXNnc3RyICJyZWRpZ2VyYSBiZXNrcml2bmluZyBmw7ZyIGdyZW5lbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUxCiBtc2dpZCAiZm9yY2UgY3JlYXRpb24sIG1vdmUvcmVuYW1lLCBkZWxldGlvbiIKIG1zZ3N0ciAidHZpbmdhIHNrYXBhbmRlLCBmbHl0dC9uYW1uw6RuZHJpbmcsIGJvcnR0YWdhbmRlIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyNworIzogYnVpbHRpbi9icmFuY2guYzo2NTIKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAidmlzYSBlbmRhc3Qgc2FtbWFuc2xhZ25hIGdyZW5hciIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUzCiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGFyZSBub3QgbWVyZ2VkIgogbXNnc3RyICJ2aXNhIGVuZGFzdCBlaiBzYW1tYW5zbGFnbmEgZ3JlbmFyIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyOQorIzogYnVpbHRpbi9icmFuY2guYzo2NTQKIG1zZ2lkICJsaXN0IGJyYW5jaGVzIGluIGNvbHVtbnMiCiBtc2dzdHIgInZpc2EgZ3JlbmFyIGkgc3BhbHRlciIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MzAgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MCBidWlsdGluL2xzLXJlbW90ZS5jOjcwCi0jOiBidWlsdGluL3RhZy5jOjQxNQotbXNnaWQgImtleSIKLW1zZ3N0ciAibnlja2VsIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzMSBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQxIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzEKLSM6IGJ1aWx0aW4vdGFnLmM6NDE2Ci1tc2dpZCAiZmllbGQgbmFtZSB0byBzb3J0IG9uIgotbXNnc3RyICJmw6RsdG5hbW4gYXR0IHNvcnRlcmEgcMOlIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzMyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQzIGJ1aWx0aW4vbm90ZXMuYzo0MTUKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0MTggYnVpbHRpbi9ub3Rlcy5jOjU3OCBidWlsdGluL25vdGVzLmM6NTgxCi0jOiBidWlsdGluL3RhZy5jOjQxOAorIzogYnVpbHRpbi9icmFuY2guYzo2NTcgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MiBidWlsdGluL25vdGVzLmM6NDE1CisjOiBidWlsdGluL25vdGVzLmM6NDE4IGJ1aWx0aW4vbm90ZXMuYzo1ODEgYnVpbHRpbi9ub3Rlcy5jOjU4NAorIzogYnVpbHRpbi90YWcuYzo0MzMKIG1zZ2lkICJvYmplY3QiCiBtc2dzdHIgIm9iamVrdCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MzQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjU4CiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyBvZiB0aGUgb2JqZWN0IgogbXNnc3RyICJ2aXNhIGVuZGFzdCBncmVuYXIgZsO2ciBvYmpla3RldCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MzYgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OSBidWlsdGluL3RhZy5jOjQyNQorIzogYnVpbHRpbi9icmFuY2guYzo2NjAgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OCBidWlsdGluL3RhZy5jOjQ0MAogbXNnaWQgInNvcnRpbmcgYW5kIGZpbHRlcmluZyBhcmUgY2FzZSBpbnNlbnNpdGl2ZSIKIG1zZ3N0ciAic29ydGVyaW5nIG9jaCBmaWx0cmVyaW5nIHNraWxqZXIgZ2VtZW5lciBvY2ggVkVSU0FMRVIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzggYnVpbHRpbi90YWcuYzo0MjMKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM5CisjOiBidWlsdGluL2JyYW5jaC5jOjY2MSBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4IGJ1aWx0aW4vdGFnLmM6NDM4CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzozOAogbXNnaWQgImZvcm1hdCB0byB1c2UgZm9yIHRoZSBvdXRwdXQiCiBtc2dzdHIgImZvcm1hdCBhdHQgYW52w6RuZGEgZsO2ciB1dGRhdGEiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjYwIGJ1aWx0aW4vY2xvbmUuYzo3MzkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Njg0IGJ1aWx0aW4vY2xvbmUuYzo3ODUKIG1zZ2lkICJIRUFEIG5vdCBmb3VuZCBiZWxvdyByZWZzL2hlYWRzISIKIG1zZ3N0ciAiSEVBRCBoaXR0YWRlcyBpbnRlIHVuZGVyIHJlZnMvaGVhZHMhIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjY4MworIzogYnVpbHRpbi9icmFuY2guYzo3MDgKIG1zZ2lkICItLWNvbHVtbiBhbmQgLS12ZXJib3NlIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0tY29sdW1uIG9jaCAtLXZlcmJvc2Ugw6RyIGlua29tcGF0aWJsYSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2OTggYnVpbHRpbi9icmFuY2guYzo3NDkgYnVpbHRpbi9icmFuY2guYzo3NTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzIzIGJ1aWx0aW4vYnJhbmNoLmM6Nzc3IGJ1aWx0aW4vYnJhbmNoLmM6Nzg2CiBtc2dpZCAiYnJhbmNoIG5hbWUgcmVxdWlyZWQiCiBtc2dzdHIgImdyZW5uYW1uIGtyw6R2cyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MjUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzUzCiBtc2dpZCAiQ2Fubm90IGdpdmUgZGVzY3JpcHRpb24gdG8gZGV0YWNoZWQgSEVBRCIKIG1zZ3N0ciAiS2FuIGludGUgYmVza3JpdmEgZnLDpW5rb3BwbGFkIEhFQUQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzMwCisjOiBidWlsdGluL2JyYW5jaC5jOjc1OAogbXNnaWQgImNhbm5vdCBlZGl0IGRlc2NyaXB0aW9uIG9mIG1vcmUgdGhhbiBvbmUgYnJhbmNoIgogbXNnc3RyICJrYW4gaW50ZSByZWRpZ2VyYSBiZXNrcml2bmluZyBmw7ZyIG1lciDDpG4gZW4gZ3JlbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIGNvbW1pdCBvbiBicmFuY2ggJyVzJyB5ZXQuIgogbXNnc3RyICJJbmdhIGluY2hlY2tuaW5nYXIgcMOlIGdyZW5lbiBcIiVzXCIgw6RubnUuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc0MAorIzogYnVpbHRpbi9icmFuY2guYzo3NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gYnJhbmNoIG5hbWVkICclcycuIgogbXNnc3RyICJJbmdlbiBncmVuIHZpZCBuYW1uZXQgXCIlc1wiLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NTUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzgzCiBtc2dpZCAidG9vIG1hbnkgYnJhbmNoZXMgZm9yIGEgY29weSBvcGVyYXRpb24iCiBtc2dzdHIgImbDtnIgbcOlbmdhIGdyZW5hciBmw7ZyIGtvcGllcmluZyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NjQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzkyCiBtc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIGZvciBhIHJlbmFtZSBvcGVyYXRpb24iCiBtc2dzdHIgImbDtnIgbcOlbmdhIGZsYWdnb3IgZsO2ciBuYW1uYnl0ZSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzk3CiBtc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIHRvIHNldCBuZXcgdXBzdHJlYW0iCiBtc2dzdHIgImbDtnIgbcOlbmdhIGZsYWdnb3IgZsO2ciBhdHQgYnl0YSB1cHBzdHLDtm0iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzczCisjOiBidWlsdGluL2JyYW5jaC5jOjgwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY291bGQgbm90IHNldCB1cHN0cmVhbSBvZiBIRUFEIHRvICVzIHdoZW4gaXQgZG9lcyBub3QgcG9pbnQgdG8gYW55IGJyYW5jaC4iCiBtc2dzdHIgIiIKICJrdW5kZSBpbnRlIHPDpHR0YSB1cHBzdHLDtm0gZsO2ciBIRUFEIHRpbGwgJXMgbsOkciBkZXQgaW50ZSBwZWthciBtb3QgbsOlZ29uIGdyZW4uIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc3NiBidWlsdGluL2JyYW5jaC5jOjc5OAorIzogYnVpbHRpbi9icmFuY2guYzo4MDQgYnVpbHRpbi9icmFuY2guYzo4MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBicmFuY2ggJyVzJyIKIG1zZ3N0ciAib2vDpG5kIGdyZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc4MAorIzogYnVpbHRpbi9icmFuY2guYzo4MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYnJhbmNoICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgImdyZW5lbiBcIiVzXCIgZmlubnMgaW50ZSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3OTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODIxCiBtc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIHRvIHVuc2V0IHVwc3RyZWFtIgogbXNnc3RyICJmw7ZyIG3DpW5nYSBmbGFnZ29yIGbDtnIgYXR0IHRhIGJvcnQgdXBwc3Ryw7ZtIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc5NgorIzogYnVpbHRpbi9icmFuY2guYzo4MjUKIG1zZ2lkICJjb3VsZCBub3QgdW5zZXQgdXBzdHJlYW0gb2YgSEVBRCB3aGVuIGl0IGRvZXMgbm90IHBvaW50IHRvIGFueSBicmFuY2guIgogbXNnc3RyICIiCiAia3VuZGUgaW50ZSB0YSBib3J0IHVwcHN0csO2bSBmw7ZyIEhFQUQgbsOkciBkZXQgaW50ZSBwZWthciBtb3QgbsOlZ29uIGdyZW4uIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjgwMgorIzogYnVpbHRpbi9icmFuY2guYzo4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgaGFzIG5vIHVwc3RyZWFtIGluZm9ybWF0aW9uIgogbXNnc3RyICJHcmVuZW4gXCIlc1wiIGhhciBpbmdlbiB1cHBzdHLDtm1zaW5mb3JtYXRpb24iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6ODEyCi1tc2dpZCAiLWEgYW5kIC1yIG9wdGlvbnMgdG8gJ2dpdCBicmFuY2gnIGRvIG5vdCBtYWtlIHNlbnNlIHdpdGggYSBicmFuY2ggbmFtZSIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODQxCittc2dpZCAiIgorIlRoZSAtYSwgYW5kIC1yLCBvcHRpb25zIHRvICdnaXQgYnJhbmNoJyBkbyBub3QgdGFrZSBhIGJyYW5jaCBuYW1lLlxuIgorIkRpZCB5b3UgbWVhbiB0byB1c2U6IC1hfC1yIC0tbGlzdCA8cGF0dGVybj4/IgogbXNnc3RyICIiCi0iZmxhZ2dvcm5hIC1hIG9jaCAtciBww6UgXCJnaXQgYnJhbmNoXCIga2FuIGludGUgYW5nZXMgdGlsbHNhbW1hbnMgbWVkIGV0dCAiCi0iZ3Jlbm5hbW4iCisiRmxhZ2dvcm5hIC1hIG9jaCAtciBww6UgXCJnaXQgYnJhbmNoXCIgdGFyIGludGUgZXR0IG5hbW4gcMOlIGdyZW4uXG4iCisiTWVuYWRlIGR1IGF0dCBhbnbDpG5kYTogLWF8LXIgLS1saXN0IDxtw7Zuc3Rlcj4/IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjgxNQorIzogYnVpbHRpbi9icmFuY2guYzo4NDUKIG1zZ2lkICIiCiAidGhlICctLXNldC11cHN0cmVhbScgb3B0aW9uIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQuIFBsZWFzZSB1c2UgJy0tdHJhY2snIG9yICIKICInLS1zZXQtdXBzdHJlYW0tdG8nIGluc3RlYWQuIgpAQCAtODM2MSwyMCArMTA4MTUsNjUgQEAKICJGbGFnZ2FuIC0tc2V0LXVwc3RyZWFtIHJla29tbWVuZGVyYXMgZWogb2NoIGtvbW1lciB0YXMgYm9ydC4gQW52w6RuZCAtLXRyYWNrICIKICJlbGxlciAtLXNldC11cHN0cmVhbS10byBpc3TDpGxsZXQuIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjQ1CisjOiBidWlsdGluL2J1bmRsZS5jOjE1IGJ1aWx0aW4vYnVuZGxlLmM6MjMKK21zZ2lkICJnaXQgYnVuZGxlIGNyZWF0ZSBbPG9wdGlvbnM+XSA8ZmlsZT4gPGdpdC1yZXYtbGlzdCBhcmdzPiIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSBjcmVhdGUgWzxmbGFnZ29yPl0gPGZpbD4gPGdpdC1yZXYtbGlzdC1mbGFnZ29yPiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxNiBidWlsdGluL2J1bmRsZS5jOjI4Cittc2dpZCAiZ2l0IGJ1bmRsZSB2ZXJpZnkgWzxvcHRpb25zPl0gPGZpbGU+IgorbXNnc3RyICJnaXQgYnVuZGxlIHZlcmlmeSBbPGZsYWdnb3I+XSA8ZmlsPiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxNyBidWlsdGluL2J1bmRsZS5jOjMzCittc2dpZCAiZ2l0IGJ1bmRsZSBsaXN0LWhlYWRzIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSBsaXN0LWhlYWRzIDxmaWw+IFs8cmVmbmFtbj4uLi5dIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE4IGJ1aWx0aW4vYnVuZGxlLmM6MzgKK21zZ2lkICJnaXQgYnVuZGxlIHVuYnVuZGxlIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSB1bmJ1bmRsZSA8ZmlsPiBbPHJlZm5hbW4+Li4uXSIKKworIzogYnVpbHRpbi9idW5kbGUuYzo2NiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzUKK21zZ2lkICJkbyBub3Qgc2hvdyBwcm9ncmVzcyBtZXRlciIKK21zZ3N0ciAidmlzYSBpbnRlIGbDtnJsb3Bwc2luZGlrYXRvciIKKworIzogYnVpbHRpbi9idW5kbGUuYzo2OCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzcKK21zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIgorbXNnc3RyICJ2aXNhIGbDtnJsb3Bwc2luZGlrYXRvciIKKworIzogYnVpbHRpbi9idW5kbGUuYzo3MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzkKK21zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKK21zZ3N0ciAidmlzYSBmw7ZybG9wcHNpbmRpa2F0b3IgdW5kZXIgb2JqZWt0c2tyaXZuaW5nc2Zhc2VuIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjczIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4MgorbXNnaWQgInNpbWlsYXIgdG8gLS1hbGwtcHJvZ3Jlc3Mgd2hlbiBwcm9ncmVzcyBtZXRlciBpcyBzaG93biIKK21zZ3N0ciAic29tIC0tYWxsLXByb2dyZXNzIG7DpHIgZsO2cmxvcHBzaW5kaWthdG9ybiB2aXNhcyIKKworIzogYnVpbHRpbi9idW5kbGUuYzo5MworbXNnaWQgIk5lZWQgYSByZXBvc2l0b3J5IHRvIGNyZWF0ZSBhIGJ1bmRsZS4iCittc2dzdHIgIkJlaMO2dmVyIGV0dCBhcmtpdiBmw7ZyIGF0dCBza2FwYSBldHQgcGFrZXQgKGJ1bmRsZSkuIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjEwNAorbXNnaWQgImRvIG5vdCBzaG93IGJ1bmRsZSBkZXRhaWxzIgorbXNnc3RyICJ2aXNhIGludGUgcGFrZXRkZXRhbGplciIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgb2theVxuIgogbXNnc3RyICIlcyDDpHIgb2tlalxuIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjU4Ci1tc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKLW1zZ3N0ciAiQmVow7Z2ZXIgZXR0IGFya2l2IGbDtnIgYXR0IHNrYXBhIGV0dCBwYWtldCAoYnVuZGxlKS4iCi0KLSM6IGJ1aWx0aW4vYnVuZGxlLmM6NjIKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTYwCiBtc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gdW5idW5kbGUuIgogbXNnc3RyICJCZWjDtnZlciBldHQgYXJraXYgZsO2ciBhdHQgcGFja2EgdXBwIGV0dCBwYWtldCAoYnVuZGxlKS4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1ODcKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTY4IGJ1aWx0aW4vcmVtb3RlLmM6MTY4NgorbXNnaWQgImJlIHZlcmJvc2U7IG11c3QgYmUgcGxhY2VkIGJlZm9yZSBhIHN1YmNvbW1hbmQiCittc2dzdHIgInZhciBwcmF0c2FtOyBtw6VzdGUgc2tyaXZhcyBmw7ZyZSBldHQgdW5kZXJrb21tYW5kbyIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxOTAgYnVpbHRpbi9yZW1vdGUuYzoxNzE3CisjLCBjLWZvcm1hdAorbXNnaWQgIlVua25vd24gc3ViY29tbWFuZDogJXMiCittc2dzdHIgIk9rw6RudCB1bmRlcmtvbW1hbmRvOiAlcyIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU5NQogbXNnaWQgIiIKICJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtIgogInAgfCA8dHlwZT4gfCAtLXRleHRjb252IHwgLS1maWx0ZXJzKSBbLS1wYXRoPTxwYXRoPl0gPG9iamVjdD4iCkBAIC04MzgyLDcgKzEwODgxLDcgQEAKICJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtIgogInAgfCA8dHlwPiB8IC0tdGV4dGNvbnYgfCAtLWZpbHRlcnMpIFstLXBhdGg9PHPDtmt2w6RnPl0gPG9iamVrdD4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1ODgKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1OTYKIG1zZ2lkICIiCiAiZ2l0IGNhdC1maWxlICgtLWJhdGNoIHwgLS1iYXRjaC1jaGVjaykgWy0tZm9sbG93LXN5bWxpbmtzXSBbLS10ZXh0Y29udiB8IC0tIgogImZpbHRlcnNdIgpAQCAtODM5MCwxMzMgKzEwODg5LDEzMyBAQAogImdpdCBjYXQtZmlsZSAoLS1iYXRjaCB8IC0tYmF0Y2gtY2hlY2spIFstLWZvbGxvdy1zeW1saW5rc10gWy0tdGV4dGNvbnYgfCAtLSIKICJmaWx0ZXJzXSIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYwOQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYxNwogbXNnaWQgIm9ubHkgb25lIGJhdGNoIG9wdGlvbiBtYXkgYmUgc3BlY2lmaWVkIgogbXNnc3RyICJlbmRhc3QgZW4gYnVudGZsYWdnYSBrYW4gYW5nZXMiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MjcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzUKIG1zZ2lkICI8dHlwZT4gY2FuIGJlIG9uZSBvZjogYmxvYiwgdHJlZSwgY29tbWl0LCB0YWciCiBtc2dzdHIgIjx0eXA+IGthbiB2YXJhIGVuIGF2OiBibG9iLCB0cmVlLCBjb21taXQsIHRhZyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYyOAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNgogbXNnaWQgInNob3cgb2JqZWN0IHR5cGUiCiBtc2dzdHIgInZpc2Egb2JqZWt0dHlwIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjI5CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM3CiBtc2dpZCAic2hvdyBvYmplY3Qgc2l6ZSIKIG1zZ3N0ciAidmlzYSBvYmpla3RzdG9ybGVrIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjMxCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM5CiBtc2dpZCAiZXhpdCB3aXRoIHplcm8gd2hlbiB0aGVyZSdzIG5vIGVycm9yIgogbXNnc3RyICJhdnNsdXRhIG1lZCBub2xsIG7DpHIgZGV0IGludGUgdXBwc3TDpXR0IG7DpWdvdCBmZWwiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzIKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDAKIG1zZ2lkICJwcmV0dHktcHJpbnQgb2JqZWN0J3MgY29udGVudCIKIG1zZ3N0ciAidmlzYSBvYmpla3RldHMgaW5uZWjDpWxsIHNueWdndCIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MgogbXNnaWQgImZvciBibG9iIG9iamVjdHMsIHJ1biB0ZXh0Y29udiBvbiBvYmplY3QncyBjb250ZW50IgogbXNnc3RyICJmw7ZyIGJsb2Itb2JqZWt0LCBrw7ZyIGZpbHRlciBww6Ugb2JqZWt0ZXRzIGlubmVow6VsbCIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNgorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NAogbXNnaWQgImZvciBibG9iIG9iamVjdHMsIHJ1biBmaWx0ZXJzIG9uIG9iamVjdCdzIGNvbnRlbnQiCiBtc2dzdHIgImbDtnIgYmxvYi1vYmpla3QsIGvDtnIgZmlsZ2VyIHDDpSBvYmpla3RldHMgaW5uZWjDpWxsIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM3IGdpdC1zdWJtb2R1bGUuc2g6ODU3CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ1IGdpdC1zdWJtb2R1bGUuc2g6MTAwMgogbXNnaWQgImJsb2IiCiBtc2dzdHIgImJsb2IiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzgKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDYKIG1zZ2lkICJ1c2UgYSBzcGVjaWZpYyBwYXRoIGZvciAtLXRleHRjb252Ly0tZmlsdGVycyIKIG1zZ3N0ciAiYW52w6RuZCBzcGVjaWZpayBzw7ZrdsOkZyBmw7ZyIC0tdGV4dGNvbnYvLS1maWx0ZXJzIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjQwCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ4CiBtc2dpZCAiYWxsb3cgLXMgYW5kIC10IHRvIHdvcmsgd2l0aCBicm9rZW4vY29ycnVwdCBvYmplY3RzIgogbXNnc3RyICJsw6V0ZXIgLXMgb2NoIC10IGF0dCBmdW5nZXJhIG1lZCB0cmFzaWdhL3PDtm5kZXJza3Jpdm5hIG9iamVrdCIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0OQogbXNnaWQgImJ1ZmZlciAtLWJhdGNoIG91dHB1dCIKIG1zZ3N0ciAiYnVmZnJhIHV0ZGF0YSBmcsOlbiAtLWJhdGNoIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjQzCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjUxCiBtc2dpZCAic2hvdyBpbmZvIGFuZCBjb250ZW50IG9mIG9iamVjdHMgZmVkIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJ2aXNhIGluZm9ybWF0aW9uIG9jaCBpbm5laMOlbGwgZsO2ciBvYmpla3Qgc29tIGxpc3RhcyBww6Ugc3RhbmRhcmQgaW4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTUKIG1zZ2lkICJzaG93IGluZm8gYWJvdXQgb2JqZWN0cyBmZWQgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgInZpc2EgaW5mb3JtYXRpb24gZsO2ciBvYmpla3Qgc29tIGxpc3RhcyBww6Ugc3RhbmRhcmQgaW4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTEKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTkKIG1zZ2lkICJmb2xsb3cgaW4tdHJlZSBzeW1saW5rcyAodXNlZCB3aXRoIC0tYmF0Y2ggb3IgLS1iYXRjaC1jaGVjaykiCiBtc2dzdHIgIiIKICJmw7ZsaiBzeW1ib2xpc2thIGzDpG5rYXIgaSB0csOkZGV0IChhbnbDpG5kIG1lZCAtLWJhdGNoIGVsbGVyIC0tYmF0Y2gtY2hlY2spIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjUzCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjYxCiBtc2dpZCAic2hvdyBhbGwgb2JqZWN0cyB3aXRoIC0tYmF0Y2ggb3IgLS1iYXRjaC1jaGVjayIKIG1zZ3N0ciAidmlzYSBhbGxhIG9iamVrdCBtZWQgLS1iYXRjaCBlbGxlciAtLWJhdGNoLWNoZWNrIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjU1CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjYzCiBtc2dpZCAiZG8gbm90IG9yZGVyIC0tYmF0Y2gtYWxsLW9iamVjdHMgb3V0cHV0IgogbXNnc3RyICJvcmRuYSBpbnRlIC0tYmF0Y2gtYWxsLW9iamVjdHMgb3V0cHV0IgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxMgorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTMKIG1zZ2lkICJnaXQgY2hlY2stYXR0ciBbLWEgfCAtLWFsbCB8IDxhdHRyPi4uLl0gWy0tXSA8cGF0aG5hbWU+Li4uIgogbXNnc3RyICJnaXQgY2hlY2stYXR0ciBbLWEgfCAtLWFsbCB8IDxhdHRyPi4uLl0gWy0tXSA8c8O2a3bDpGc+Li4uIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxMworIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTQKIG1zZ2lkICJnaXQgY2hlY2stYXR0ciAtLXN0ZGluIFstel0gWy1hIHwgLS1hbGwgfCA8YXR0cj4uLi5dIgogbXNnc3RyICJnaXQgY2hlY2stYXR0ciAtLXN0ZGluIFstel0gWy1hIHwgLS1hbGwgfCA8YXR0cj4uLi5dIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMAorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjEKIG1zZ2lkICJyZXBvcnQgYWxsIGF0dHJpYnV0ZXMgc2V0IG9uIGZpbGUiCiBtc2dzdHIgInZpc2EgYWxsYSBhdHRyaWJ1dCBzb20gc2F0dHMgcMOlIGZpbGVuIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMQorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjIKIG1zZ2lkICJ1c2UgLmdpdGF0dHJpYnV0ZXMgb25seSBmcm9tIHRoZSBpbmRleCIKIG1zZ3N0ciAiYW52w6RuZCAuZ2l0YXR0cmlidXRlcyBlbmRhc3QgZnLDpW4gaW5kZXhldCIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNCBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAxCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMyBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI1IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKIG1zZ2lkICJyZWFkIGZpbGUgbmFtZXMgZnJvbSBzdGRpbiIKIG1zZ3N0ciAibMOkcyBmaWxuYW1uIGZyw6VuIHN0YW5kYXJkIGluIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyNCBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI2CisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyNSBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI3CiBtc2dpZCAidGVybWluYXRlIGlucHV0IGFuZCBvdXRwdXQgcmVjb3JkcyBieSBhIE5VTCBjaGFyYWN0ZXIiCiBtc2dzdHIgImF2c2x1dGEgaW4tIG9jaCB1dGRhdGFwb3N0ZXIgbWVkIE5VTC10ZWNrZW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjAgYnVpbHRpbi9jaGVja291dC5jOjEyMzQgYnVpbHRpbi9nYy5jOjUxNwotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NQorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyMSBidWlsdGluL2NoZWNrb3V0LmM6MTQ2NCBidWlsdGluL2djLmM6NTM3CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk5CiBtc2dpZCAic3VwcHJlc3MgcHJvZ3Jlc3MgcmVwb3J0aW5nIgogbXNnc3RyICJ1bmRlcnRyeWNrIGbDtnJsb3Bwc3JhcHBvcnRlcmluZyIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyOQogbXNnaWQgInNob3cgbm9uLW1hdGNoaW5nIGlucHV0IHBhdGhzIgogbXNnc3RyICJ2aXNhIGluZGF0YXPDtmt2w6RnYXIgc29tIGludGUgdHLDpGZmYXMiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzAKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzEKIG1zZ2lkICJpZ25vcmUgaW5kZXggd2hlbiBjaGVja2luZyIKIG1zZ3N0ciAiaWdub3JlcmEgaW5kZXggdmlkIGtvbnRyb2xsIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE1OQorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjMKIG1zZ2lkICJjYW5ub3Qgc3BlY2lmeSBwYXRobmFtZXMgd2l0aCAtLXN0ZGluIgogbXNnc3RyICJrYW4gaW50ZSBhbmdlIHPDtmt2w6Rnc25hbW4gbWVkIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTYyCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2NgogbXNnaWQgIi16IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLXN0ZGluIgogbXNnc3RyICIteiBrYW4gZW5kYXN0IGFudsOkbmRhcyB0aWxsc2FtbWFucyBtZWQgLS1zdGRpbiIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjQKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY4CiBtc2dpZCAibm8gcGF0aCBzcGVjaWZpZWQiCiBtc2dzdHIgImluZ2VuIHPDtmt2w6RnIGFuZ2F2cyIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjgKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTcyCiBtc2dpZCAiLS1xdWlldCBpcyBvbmx5IHZhbGlkIHdpdGggYSBzaW5nbGUgcGF0aG5hbWUiCiBtc2dzdHIgIi0tcXVpZXQga2FuIGVuZGFzdCBhbnbDpG5kYXMgbWVkIGV0dCBlbmtlbHQgc8O2a3bDpGdzbmFtbiIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzAKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTc0CiBtc2dpZCAiY2Fubm90IGhhdmUgYm90aCAtLXF1aWV0IGFuZCAtLXZlcmJvc2UiCiBtc2dzdHIgImthbiBpbnRlIGFudsOkbmRhIGLDpWRlIC0tcXVpZXQgb2NoIC0tdmVyYm9zZSIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzMKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTc3CiBtc2dpZCAiLS1ub24tbWF0Y2hpbmcgaXMgb25seSB2YWxpZCB3aXRoIC0tdmVyYm9zZSIKIG1zZ3N0ciAiLS1ub24tbWF0Y2hpbmcgw6RyIGVuZGFzdCBnaWx0aWcgbWVkIC0tdmVyYm9zZSIKIApAQCAtODUzNyw1NCArMTEwMzYsNTQgQEAKIG1zZ2lkICJubyBjb250YWN0cyBzcGVjaWZpZWQiCiBtc2dzdHIgImluZ2Ega29udGFrdGVyIGFuZ2F2cyIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjEyOAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjEzMQogbXNnaWQgImdpdCBjaGVja291dC1pbmRleCBbPG9wdGlvbnM+XSBbLS1dIFs8ZmlsZT4uLi5dIgogbXNnc3RyICJnaXQgY2hlY2tvdXQtaW5kZXggWzxmbGFnZ29yPl0gWy0tXSBbPGZpbD4uLi5dIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTQ1CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTQ4CiBtc2dpZCAic3RhZ2Ugc2hvdWxkIGJlIGJldHdlZW4gMSBhbmQgMyBvciBhbGwiCiBtc2dzdHIgImV0YXBwIG3DpXN0ZSB2YXJhIG1lbGxhbiAxIG9jaCAzIGVsbGVyIFwiYWxsXCIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjQKIG1zZ2lkICJjaGVjayBvdXQgYWxsIGZpbGVzIGluIHRoZSBpbmRleCIKIG1zZ3N0ciAiY2hlY2thIHV0IGFsbGEgZmlsZXIgaSBpbmRleGV0IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTYyCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY1CiBtc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGV4aXN0aW5nIGZpbGVzIgogbXNnc3RyICJ0dmluZ2Egw7Z2ZXJza3Jpdm5pbmcgYXYgYmVmaW50bGlnYSBmaWxlciIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NwogbXNnaWQgIm5vIHdhcm5pbmcgZm9yIGV4aXN0aW5nIGZpbGVzIGFuZCBmaWxlcyBub3QgaW4gaW5kZXgiCiBtc2dzdHIgImluZ2VuIHZhcm5pbmcgZsO2ciBleGlzdGVyYW5kZSBmaWxlciBvY2ggZmlsZXIgZWogaSBpbmRleGV0IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY2CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY5CiBtc2dpZCAiZG9uJ3QgY2hlY2tvdXQgbmV3IGZpbGVzIgogbXNnc3RyICJjaGVja2EgaW50ZSB1dCBueWEgZmlsZXIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzEKIG1zZ2lkICJ1cGRhdGUgc3RhdCBpbmZvcm1hdGlvbiBpbiB0aGUgaW5kZXggZmlsZSIKIG1zZ3N0ciAidXBwZGF0ZXJhIHN0YXQtaW5mb3JtYXRpb24gaSBpbmRleGZpbGVuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcyCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc1CiBtc2dpZCAicmVhZCBsaXN0IG9mIHBhdGhzIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJsw6RzIGxpc3RhbiDDtnZlciBzw7ZrdsOkZ2FyIGZyw6VuIHN0YW5kYXJkIGluIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc0CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc3CiBtc2dpZCAid3JpdGUgdGhlIGNvbnRlbnQgdG8gdGVtcG9yYXJ5IGZpbGVzIgogbXNnc3RyICJza3JpdiBpbm5laMOlbGwgdGlsbCB0ZW1wb3LDpHJhIGZpbGVyIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc1IGJ1aWx0aW4vY29sdW1uLmM6MzEKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzcxCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1MwotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY2OAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3OCBidWlsdGluL2NvbHVtbi5jOjMxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTEgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NzIKIG1zZ2lkICJzdHJpbmciCiBtc2dzdHIgInN0csOkbmciCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzkKIG1zZ2lkICJ3aGVuIGNyZWF0aW5nIGZpbGVzLCBwcmVwZW5kIDxzdHJpbmc+IgogbXNnc3RyICJuw6RyIGZpbGVyIHNrYXBhcywgbMOkZ2cgdGlsbCA8c3Ryw6RuZz4gZsO2cnN0IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTgxCiBtc2dpZCAiY29weSBvdXQgdGhlIGZpbGVzIGZyb20gbmFtZWQgc3RhZ2UiCiBtc2dzdHIgImtvcGllcmEgdXQgZmlsZXIgZnLDpW4gbmFtbmdpdmVuIGV0YXBwIgogCkBAIC04NTk2LDEwNSArMTEwOTUsMTU4IEBACiBtc2dpZCAiZ2l0IGNoZWNrb3V0IFs8b3B0aW9ucz5dIFs8YnJhbmNoPl0gLS0gPGZpbGU+Li4uIgogbXNnc3RyICJnaXQgY2hlY2tvdXQgWzxmbGFnZ29yPl0gWzxncmVuPl0gLS0gPGZpbD4uLi4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDQgYnVpbHRpbi9jaGVja291dC5jOjE3NworIzogYnVpbHRpbi9jaGVja291dC5jOjM3Cittc2dpZCAiZ2l0IHN3aXRjaCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIgorbXNnc3RyICJnaXQgc3dpdGNoIFs8ZmxhZ2dvcj5dIFs8Z3Jlbj5dIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDIKK21zZ2lkICJnaXQgcmVzdG9yZSBbPG9wdGlvbnM+XSBbLS1zb3VyY2U9PGJyYW5jaD5dIDxmaWxlPi4uLiIKK21zZ3N0ciAiZ2l0IHJlc3RvcmUgWzxmbGFnZ29yPl0gWy0tc291cmNlPTxncmVuPl0gPGZpbD4uLi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzUgYnVpbHRpbi9jaGVja291dC5jOjIxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSBvdXIgdmVyc2lvbiIKIG1zZ3N0ciAic8O2a3bDpGdlbiBcIiVzXCIgaGFyIGludGUgdsOlciB2ZXJzaW9uIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzkKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjIxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSB0aGVpciB2ZXJzaW9uIgogbXNnc3RyICJzw7ZrdsOkZ2VuIFwiJXNcIiBoYXIgaW50ZSBkZXJhcyB2ZXJzaW9uIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTYyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTkzCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIGFsbCBuZWNlc3NhcnkgdmVyc2lvbnMiCiBtc2dzdHIgInPDtmt2w6RnZW4gXCIlc1wiIGlubmVow6VsbGVyIGludGUgYWxsYSBuw7ZkdsOkbmRpZ2EgdmVyc2lvbmVyIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjA2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjQzCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKIG1zZ3N0ciAic8O2a3bDpGdlbiBcIiVzXCIgaW5uZWjDpWxsZXIgaW50ZSBuw7ZkdsOkbmRpZ2EgdmVyc2lvbmVyIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjI0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJzogY2Fubm90IG1lcmdlIgogbXNnc3RyICJzw7ZrdsOkZyBcIiVzXCI6IGthbiBpbnRlIHNsw6UgaWhvcCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjI0MAorIzogYnVpbHRpbi9jaGVja291dC5jOjI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gYWRkIG1lcmdlIHJlc3VsdCBmb3IgJyVzJyIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBsw6RnZ2EgdGlsbCBzYW1tYW5zbGFnbmluZ3NyZXN1bHRhdCBmw7ZyIFwiJXNcIiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjI2MiBidWlsdGluL2NoZWNrb3V0LmM6MjY1IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNjgKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0IgorbXNnaWRfcGx1cmFsICJSZWNyZWF0ZWQgJWQgbWVyZ2UgY29uZmxpY3RzIgorbXNnc3RyWzBdICLDhXRlcnNrYXBhZGUgJWQgc2FtbWFuc2xhZ25pbmdza29uZmxpa3QiCittc2dzdHJbMV0gIsOFdGVyc2thcGFkZSAlZCBzYW1tYW5zbGFnbmluZ3Nrb25mbGlrdGVyIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0ZWQgJWQgcGF0aCBmcm9tICVzIgorbXNnaWRfcGx1cmFsICJVcGRhdGVkICVkIHBhdGhzIGZyb20gJXMiCittc2dzdHJbMF0gIlVwcGRhdGVyYWRlICVkIHPDtmt2w6RnIGZyw6VuICVzIgorbXNnc3RyWzFdICJVcHBkYXRlcmFkZSAlZCBzw7ZrdsOkZ2FyIGZyw6VuICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mzg5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0ZWQgJWQgcGF0aCBmcm9tIHRoZSBpbmRleCIKK21zZ2lkX3BsdXJhbCAiVXBkYXRlZCAlZCBwYXRocyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0clswXSAiVXBwZGF0ZXJhZGUgJWQgc8O2a3bDpGcgZnLDpW4gaW5kZXhldCIKK21zZ3N0clsxXSAiVXBwZGF0ZXJhZGUgJWQgc8O2a3bDpGdhciBmcsOlbiBpbmRleGV0IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDEyIGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTUgYnVpbHRpbi9jaGVja291dC5jOjQxOAorIzogYnVpbHRpbi9jaGVja291dC5jOjQyMgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggdXBkYXRpbmcgcGF0aHMiCiBtc2dzdHIgIlwiJXNcIiBrYW4gaW50ZSBhbnbDpG5kYXMgdmlkIHVwcGRhdGVyaW5nIGF2IHPDtmt2w6RnYXIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzQgYnVpbHRpbi9jaGVja291dC5jOjI3NworIzogYnVpbHRpbi9jaGVja291dC5jOjQyNSBidWlsdGluL2NoZWNrb3V0LmM6NDI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKIG1zZ3N0ciAiXCIlc1wiIGthbiBpbnRlIGFudsOkbmRhcyBtZWQgJXMiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyODAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHVwZGF0ZSBwYXRocyBhbmQgc3dpdGNoIHRvIGJyYW5jaCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUuIgogbXNnc3RyICJLYW4gaW50ZSB1cHBkYXRlcmEgc8O2a3bDpGdhciBvY2ggdsOkeGxhIHRpbGwgZ3JlbmVuIFwiJXNcIiBzYW10aWRpZ3QuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MzQ5IGJ1aWx0aW4vY2hlY2tvdXQuYzozNTYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAibmVpdGhlciAnJXMnIG9yICclcycgaXMgc3BlY2lmaWVkIgorbXNnc3RyICJ2YXJrZW4gXCIlc1wiIGVsbGVyIFwiJXNcIiBoYXIgYW5naXZpdHMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBtdXN0IGJlIHVzZWQgd2hlbiAnJXMnIGlzIG5vdCBzcGVjaWZpZWQiCittc2dzdHIgIlwiJXNcIiBtw6VzdGUgYW52w6RuZGFzIG7DpHIgXCIlc1wiIGludGUgYW5nZXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NDUgYnVpbHRpbi9jaGVja291dC5jOjQ1MAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG9yICclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKK21zZ3N0ciAiXCIlc1wiIGVsbGVyIFwiJXNcIiBrYW4gaW50ZSBhbnbDpG5kYXMgbWVkICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTA5IGJ1aWx0aW4vY2hlY2tvdXQuYzo1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGlzIHVubWVyZ2VkIgogbXNnc3RyICJzw7ZrdsOkZ2VuIFwiJXNcIiBoYXIgaW50ZSBzbGFnaXRzIGlob3AiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2MDgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2ODQgYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoxMDYKIG1zZ2lkICJ5b3UgbmVlZCB0byByZXNvbHZlIHlvdXIgY3VycmVudCBpbmRleCBmaXJzdCIKIG1zZ3N0ciAiZHUgbcOlc3RlIGzDtnNhIGRpdHQgYmVmaW50bGlnYSBpbmRleCBmw7Zyc3QiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3NDUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNhbm5vdCBjb250aW51ZSB3aXRoIHN0YWdlZCBjaGFuZ2VzIGluIHRoZSBmb2xsb3dpbmcgZmlsZXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJrYW4gaW50ZSBmb3J0c8OkdHRhIG1lZCBrw7ZhZGUgw6RuZHJpbmdhciBpIGbDtmxqYW5kZSBmaWxlcjpcbiIKKyIlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjgzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW4gbm90IGRvIHJlZmxvZyBmb3IgJyVzJzogJXNcbiIKIG1zZ3N0ciAiS2FuIGludGUgc2thcGEgcmVmZXJlbnNsb2dnIGbDtnIgXCIlc1wiOiAlc1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Nzg2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODc5CiBtc2dpZCAiSEVBRCBpcyBub3cgYXQiCiBtc2dzdHIgIkhFQUQgw6RyIG51IHDDpSIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc5MCBidWlsdGluL2Nsb25lLmM6NjkyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODgzIGJ1aWx0aW4vY2xvbmUuYzo3MTcKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIEhFQUQiCiBtc2dzdHIgImthbiBpbnRlIHVwcGRhdGVyYSBIRUFEIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Nzk0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlc2V0IGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIsOFdGVyc3TDpGxsIGdyZW4gXCIlc1wiXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3OTcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWxyZWFkeSBvbiAnJXMnXG4iCiBtc2dzdHIgIlJlZGFuIHDDpSBcIiVzXCJcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjgwMQorIzogYnVpbHRpbi9jaGVja291dC5jOjg5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJTd2l0Y2hlZCB0byBhbmQgcmVzZXQgYnJhbmNoICclcydcbiIKIG1zZ3N0ciAiVsOkeGxhZGUgdGlsbCBvY2ggbm9sbHN0w6RsbGRlIGdyZW5lbiBcIiVzXCJcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjgwMyBidWlsdGluL2NoZWNrb3V0LmM6MTE2NgorIzogYnVpbHRpbi9jaGVja291dC5jOjg5NiBidWlsdGluL2NoZWNrb3V0LmM6MTMyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJTd2l0Y2hlZCB0byBhIG5ldyBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICJWw6R4bGFkZSB0aWxsIGVuIG55IGdyZW4gXCIlc1wiXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3dpdGNoZWQgdG8gYnJhbmNoICclcydcbiIKIG1zZ3N0ciAiVsOkeGxhZGUgdGlsbCBncmVuZW4gXCIlc1wiXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4NTYKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIC4uLiBhbmQgJWQgbW9yZS5cbiIKIG1zZ3N0ciAiIC4uLiBvY2ggJWQgdGlsbC5cbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjg2MgorIzogYnVpbHRpbi9jaGVja291dC5jOjk1NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiV2FybmluZzogeW91IGFyZSBsZWF2aW5nICVkIGNvbW1pdCBiZWhpbmQsIG5vdCBjb25uZWN0ZWQgdG9cbiIKQEAgLTg3MTcsNyArMTEyNjksNyBAQAogIlxuIgogIiVzXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3YW50IHRvIGtlZXAgaXQgYnkgY3JlYXRpbmcgYSBuZXcgYnJhbmNoLCB0aGlzIG1heSBiZSBhIGdvb2QgdGltZVxuIgpAQCAtODc0NCwxNzUgKzExMjk2LDI5IEBACiAiIGdpdCBicmFuY2ggPG55dHRfZ3Jlbm5hbW4+ICVzXG4iCiAiXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5MTMKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDA5CiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IgaW4gcmV2aXNpb24gd2FsayIKIG1zZ3N0ciAiaW50ZXJudCBmZWwgdmlkIGdlbm9tZ8OlbmcgYXYgcmV2aXNpb25lciAocmV2aXNpb24gd2FsaykiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5MTcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDEzCiBtc2dpZCAiUHJldmlvdXMgSEVBRCBwb3NpdGlvbiB3YXMiCiBtc2dzdHIgIlRpZGlnYXJlIHBvc2l0aW9uIGbDtnIgSEVBRCB2YXIiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NDUgYnVpbHRpbi9jaGVja291dC5jOjExNjEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDUzIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzE1CiBtc2dpZCAiWW91IGFyZSBvbiBhIGJyYW5jaCB5ZXQgdG8gYmUgYm9ybiIKIG1zZ3N0ciAiRHUgw6RyIHDDpSBlbiBncmVuIHNvbSDDpG5udSBpbnRlIMOkciBmw7ZkZCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEwNjYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkLCAlZCBnaXZlbi4iCi1tc2dzdHIgImVuZGFzdCBlbiByZWZlcmVucyBmw7ZydsOkbnRhZGVzLCAlZCBnYXZzLiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExMDcgYnVpbHRpbi93b3JrdHJlZS5jOjI4OSBidWlsdGluL3dvcmt0cmVlLmM6NDQ0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKLW1zZ3N0ciAiZmVsYWt0aWcgcmVmZXJlbnM6ICVzIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTEzNgotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWZlcmVuY2UgaXMgbm90IGEgdHJlZTogJXMiCi1tc2dzdHIgInJlZmVyZW5zZW4gw6RyIGludGUgZXR0IHRyw6RkOiAlcyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExNzUKLW1zZ2lkICJwYXRocyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKLW1zZ3N0ciAic8O2a3bDpGdhciBrYW4gaW50ZSBhbnbDpG5kYXMgdmlkIGJ5dGUgYXYgZ3JlbiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExNzggYnVpbHRpbi9jaGVja291dC5jOjExODIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKLW1zZ3N0ciAiXCIlc1wiIGthbiBpbnRlIGFudsOkbmRhcyB2aWQgYnl0ZSBhdiBncmVuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE4NiBidWlsdGluL2NoZWNrb3V0LmM6MTE4OSBidWlsdGluL2NoZWNrb3V0LmM6MTE5NAotIzogYnVpbHRpbi9jaGVja291dC5jOjExOTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICclcyciCi1tc2dzdHIgIlwiJXNcIiBrYW4gaW50ZSBhbnbDpG5kYXMgbWVkIFwiJXNcIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMDIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ2Fubm90IHN3aXRjaCBicmFuY2ggdG8gYSBub24tY29tbWl0ICclcyciCi1tc2dzdHIgIkthbiBpbnRlIHbDpHhsYSBncmVuIHRpbGwgaWNrZS1pbmNoZWNrbmluZ2VuIFwiJXNcIiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMzUgYnVpbHRpbi9jaGVja291dC5jOjEyMzcgYnVpbHRpbi9jbG9uZS5jOjExOQotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjkgYnVpbHRpbi9yZW1vdGUuYzoxNzEgYnVpbHRpbi93b3JrdHJlZS5jOjQ4OAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MAotbXNnaWQgImJyYW5jaCIKLW1zZ3N0ciAiZ3JlbiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMzYKLW1zZ2lkICJjcmVhdGUgYW5kIGNoZWNrb3V0IGEgbmV3IGJyYW5jaCIKLW1zZ3N0ciAic2thcGEgb2NoIGNoZWNrYSB1dCBlbiBueSBncmVuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIzOAotbXNnaWQgImNyZWF0ZS9yZXNldCBhbmQgY2hlY2tvdXQgYSBicmFuY2giCi1tc2dzdHIgInNrYXBhL25vbGxzdMOkbGwgb2NoIGNoZWNrYSB1dCBlbiBncmVuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIzOQotbXNnaWQgImNyZWF0ZSByZWZsb2cgZm9yIG5ldyBicmFuY2giCi1tc2dzdHIgInNrYXBhIHJlZmxvZ2cgZsO2ciBueSBncmVuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MCBidWlsdGluL3dvcmt0cmVlLmM6NDkyCi1tc2dpZCAiZGV0YWNoIEhFQUQgYXQgbmFtZWQgY29tbWl0IgotbXNnc3RyICJrb3BwbGEgZnLDpW4gSEVBRCB2aWQgbmFtbmdpdmVuIGluY2hlY2tuaW5nIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MQotbXNnaWQgInNldCB1cHN0cmVhbSBpbmZvIGZvciBuZXcgYnJhbmNoIgotbXNnc3RyICJzw6R0dCB1cHBzdHLDtm1zaW5mb3JtYXRpb24gZsO2ciBueSBncmVuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MwotbXNnaWQgIm5ldy1icmFuY2giCi1tc2dzdHIgIm55LWdyZW4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQzCi1tc2dpZCAibmV3IHVucGFyZW50ZWQgYnJhbmNoIgotbXNnc3RyICJueSBncmVuIHV0YW4gZsO2csOkbGRlciIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDUKLW1zZ2lkICJjaGVja291dCBvdXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCi1tc2dzdHIgImNoZWNrYSB1dCB2w6VyIHZlcnNpb24gZsO2ciBlaiBzYW1tYW5zbGFnbmEgZmlsZXIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQ4Ci1tc2dpZCAiY2hlY2tvdXQgdGhlaXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCi1tc2dzdHIgImNoZWNrYSB1dCBkZXJhcyB2ZXJzaW9uIGbDtnIgZWogc2FtbWFuc2xhZ25hIGZpbGVyIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1MAotbXNnaWQgImZvcmNlIGNoZWNrb3V0ICh0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMpIgotbXNnc3RyICJ0dmluZ2EgdXRjaGVja25pbmcgKGthc3RhIGJvcnQgbG9rYWxhIMOkbmRyaW5nYXIpIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1MgotbXNnaWQgInBlcmZvcm0gYSAzLXdheSBtZXJnZSB3aXRoIHRoZSBuZXcgYnJhbmNoIgotbXNnc3RyICJ1dGbDtnIgZW4gMy12w6Rnc3NhbW1hbnNsYWduaW5nIGbDtnIgZGVuIG55YSBncmVuZW4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU0IGJ1aWx0aW4vbWVyZ2UuYzoyNzUKLW1zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCi1tc2dzdHIgInVwcGRhdGVyYSBpZ25vcmVyYWRlIGZpbGVyIChzdGFuZGFyZCkiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU2IGJ1aWx0aW4vbG9nLmM6MTU3MyBwYXJzZS1vcHRpb25zLmg6Mjc0Ci1tc2dpZCAic3R5bGUiCi1tc2dzdHIgInN0aWwiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU3Ci1tc2dpZCAiY29uZmxpY3Qgc3R5bGUgKG1lcmdlIG9yIGRpZmYzKSIKLW1zZ3N0ciAia29uZmxpa3RzdGlsIChtZXJnZSBlbGxlciBkaWZmMykiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjYwCi1tc2dpZCAiZG8gbm90IGxpbWl0IHBhdGhzcGVjcyB0byBzcGFyc2UgZW50cmllcyBvbmx5IgotbXNnc3RyICJiZWdyw6Ruc2EgaW50ZSBzw7ZrdsOkZ2FyIHRpbGwgZW5kYXN0IGdsZXNhIHBvc3RlciIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNjIKLW1zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBjaGVja291dCA8bm8tc3VjaC1icmFuY2g+JyIKLW1zZ3N0ciAiZsO2cnV0c3DDpSBcImdpdCBjaGVja291dCA8Z3Jlbi1zYWtuYXM+XCIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjY0Ci1tc2dpZCAiZG8gbm90IGNoZWNrIGlmIGFub3RoZXIgd29ya3RyZWUgaXMgaG9sZGluZyB0aGUgZ2l2ZW4gcmVmIgotbXNnc3RyICIiCi0ia29udHJvbGxlcmEgaW50ZSBvbSBlbiBhbm5hbiBhcmJldHNrYXRhbG9nIGjDpWxsZXIgZGVuIGFuZ2l2bmEgcmVmZXJlbnNlbiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNjggYnVpbHRpbi9jbG9uZS5jOjg2IGJ1aWx0aW4vZmV0Y2guYzoxNDEKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzIgYnVpbHRpbi9wdWxsLmM6MTI5IGJ1aWx0aW4vcHVzaC5jOjU3MgotIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzQKLW1zZ2lkICJmb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCi1tc2dzdHIgInR2aW5nYSBmw7ZybG9wcHNyYXBwb3J0ZXJpbmciCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjk4Ci1tc2dpZCAiLWIsIC1CIGFuZCAtLW9ycGhhbiBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgotbXNnc3RyICItYiwgLUIgb2NoIC0tb3JwaGFuIMOkciDDtm1zZXNpZGlndCB1dGVzbHV0YW5kZSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzMTUKLW1zZ2lkICItLXRyYWNrIG5lZWRzIGEgYnJhbmNoIG5hbWUiCi1tc2dzdHIgIi0tdHJhY2sgYmVow7Z2ZXIgZXR0IG5hbW4gcMOlIGVuIGdyZW4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzIwCi1tc2dpZCAibWlzc2luZyBicmFuY2ggbmFtZTsgdHJ5IC1iIgotbXNnc3RyICJncmVubmFtbiBzYWtuYXM7IGbDtnJzw7ZrIG1lZCAtYiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzNTcKLW1zZ2lkICJpbnZhbGlkIHBhdGggc3BlY2lmaWNhdGlvbiIKLW1zZ3N0ciAiZmVsYWt0aWcgc8O2a3bDpGdzYW5naXZlbHNlIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2NAotIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGlzIG5vdCBhIGNvbW1pdCBhbmQgYSBicmFuY2ggJyVzJyBjYW5ub3QgYmUgY3JlYXRlZCBmcm9tIGl0IgotbXNnc3RyICLigJ0lc+KAnSDDpHIgaW50ZSBlbiBpbmNoZWNrbmluZyBvY2ggZ3JlbmVuIOKAnSVz4oCdIGthbiBpbnRlIHNrYXBhcyBmcsOlbiBkZW4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdpdCBjaGVja291dDogLS1kZXRhY2ggZG9lcyBub3QgdGFrZSBhIHBhdGggYXJndW1lbnQgJyVzJyIKLW1zZ3N0ciAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCB0YXIgaW50ZSBlbiBzw7ZrdsOkZyBzb20gYXJndW1lbnQgXCIlc1wiIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTM3MgotbXNnaWQgIiIKLSJnaXQgY2hlY2tvdXQ6IC0tb3Vycy8tLXRoZWlycywgLS1mb3JjZSBhbmQgLS1tZXJnZSBhcmUgaW5jb21wYXRpYmxlIHdoZW5cbiIKLSJjaGVja2luZyBvdXQgb2YgdGhlIGluZGV4LiIKLW1zZ3N0ciAiIgotImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIG9jaCAtLW1lcmdlIMOkciBpbmtvbXBhdGlibGEgbsOkclxuIgotImR1IGNoZWNrYXIgdXQgZnLDpW4gaW5kZXhldC4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzkyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCi0iJyVzJyBtYXRjaGVkIG1vcmUgdGhhbiBvbmUgcmVtb3RlIHRyYWNraW5nIGJyYW5jaC5cbiIKLSJXZSBmb3VuZCAlZCByZW1vdGVzIHdpdGggYSByZWZlcmVuY2UgdGhhdCBtYXRjaGVkLiBTbyB3ZSBmZWxsIGJhY2tcbiIKLSJvbiB0cnlpbmcgdG8gcmVzb2x2ZSB0aGUgYXJndW1lbnQgYXMgYSBwYXRoLCBidXQgZmFpbGVkIHRoZXJlIHRvbyFcbiIKLSJcbiIKKyInJXMnIGNvdWxkIGJlIGJvdGggYSBsb2NhbCBmaWxlIGFuZCBhIHRyYWNraW5nIGJyYW5jaC5cbiIKKyJQbGVhc2UgdXNlIC0tIChhbmQgb3B0aW9uYWxseSAtLW5vLWd1ZXNzKSB0byBkaXNhbWJpZ3VhdGUiCittc2dzdHIgIiIKKyJcIiVzXCIga2FuIHZhcmEgYsOlZGUgZW4gbG9rYWwgZmlsIG9jaCBlbiBzcMOlcmFuZGUgZ3Jlbi5cbiIKKyJBbnbDpG5kIC0tIChvY2ggbcO2amxpZ2VuIC0tbm8tZ3Vlc3MpIGbDtnIgYXR0IGfDtnJhIG90dmV0eWRpZyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjExMzUKK21zZ2lkICIiCiAiSWYgeW91IG1lYW50IHRvIGNoZWNrIG91dCBhIHJlbW90ZSB0cmFja2luZyBicmFuY2ggb24sIGUuZy4gJ29yaWdpbicsXG4iCiAieW91IGNhbiBkbyBzbyBieSBmdWxseSBxdWFsaWZ5aW5nIHRoZSBuYW1lIHdpdGggdGhlIC0tdHJhY2sgb3B0aW9uOlxuIgogIlxuIgpAQCAtODkyMiw1MiArMTEzMjgsMzQ4IEBACiAib25lIHJlbW90ZSwgZS5nLiB0aGUgJ29yaWdpbicgcmVtb3RlLCBjb25zaWRlciBzZXR0aW5nXG4iCiAiY2hlY2tvdXQuZGVmYXVsdFJlbW90ZT1vcmlnaW4gaW4geW91ciBjb25maWcuIgogbXNnc3RyICIiCi0iXCIlc1wiIG1vdHN2YXJhciBtZXIgw6RuIGVuIHNww6VyYWQgZmrDpHJyZ3Jlbi5cbiIKLSJWaSBoaXR0YWRlICVkIGZqw6RycmFyIG1lZCBlbiBtb3RzdmFyYW5kZSByZWZlcmVucy4gU8OlIHZpIGbDtnLDtnPDtmt0ZVxuIgotImlzdMOkbGxldCB0b2xrYSBhcmd1bWVudGV0IHNvbSBlbiBzw7ZrdsOkZywgbWVuIG1pc3NseWNrYWRlcyBvY2tzw6UgZMOkciFcbiIKLSJcbiIKICJPbSBkdSBtZW5hZGUgY2hlY2thIHV0IGVuIHNww6VyYWQgZmrDpHJyZ3JlbiBww6UgdC5leCBcIm9yaWdpblwiLCBrYW4gZHVcbiIKICJnw7ZyYSBkZXQgZ2Vub20gYXR0IGFuZ2UgaGVsYSBuYW1uZXQgbWVkIGZsYWdnYW4gLS10cmFjazpcbiIKICJcbiIKICIgICAgZ2l0IGNoZWNrb3V0IC0tdHJhY2sgb3JpZ2luLzxuYW1uPlxuIgogIlxuIgotIk9tIGR1IGFsbHRpZCB2aWxsIGF0dCB1dGNoZWNrbmluZ2FyIG1lZCB0dmV0eWRpZ2EgPG5hbW4+IHNrYWxsXG4iCisiT20gZHUgYWxsdGlkIHZpbGwgYXR0IHV0Y2hlY2tuaW5nYXIgbWVkIHR2ZXR5ZGlnYSA8bmFtbj4gc2thXG4iCiAiZsO2cmVkcmEgZW4gZmrDpHJyLCB0LmV4IGZqw6RycmVuIFwib3JpZ2luXCIga2FuIGR1IHN0w6RsbGEgaW5cbiIKICJjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbiBpIGRpbiBrb25maWd1cmF0aW9uLiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjI3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTE0NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG1hdGNoZWQgbXVsdGlwbGUgKCVkKSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoZXMiCittc2dzdHIgIlwiJXNcIiBtb3RzdmFyYXIgZmxlcmEgKCVkKSBzcMOlcmFkZSBmasOkcnJncmVuYXIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjExCittc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkIgorbXNnc3RyICJlbmRhc3QgZW4gcmVmZXJlbnMgZsO2cnbDpG50YWRlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkLCAlZCBnaXZlbi4iCittc2dzdHIgImVuZGFzdCBlbiByZWZlcmVucyBmw7ZydsOkbnRhZGVzLCAlZCBnYXZzLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyNzQgYnVpbHRpbi93b3JrdHJlZS5jOjI4MyBidWlsdGluL3dvcmt0cmVlLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKK21zZ3N0ciAiZmVsYWt0aWcgcmVmZXJlbnM6ICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTI4NyBidWlsdGluL2NoZWNrb3V0LmM6MTY0OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZlcmVuY2UgaXMgbm90IGEgdHJlZTogJXMiCittc2dzdHIgInJlZmVyZW5zZW4gw6RyIGludGUgZXR0IHRyw6RkOiAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCB0YWcgJyVzJyIKK21zZ3N0ciAiZsO2cnbDpG50YWRlIGdyZW4sIGZpY2sgdGFnZ2VuIFwiJXNcIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCByZW1vdGUgYnJhbmNoICclcyciCittc2dzdHIgImbDtnJ2w6RudGFkZSBncmVuLCBmaWNrIGZqw6RycmdyZW5lbiBcIiVzXCIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM3IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgJyVzJyIKK21zZ3N0ciAiZsO2cnbDpG50YWRlIGdyZW4sIGZpY2sgXCIlc1wiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM0MAorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290IGNvbW1pdCAnJXMnIgorbXNnc3RyICJmw7ZydsOkbnRhZGUgZ3JlbiwgZmljayBpbmNoZWNrbmluZ2VuIFwiJXNcIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNTYKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgbWVyZ2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IG1lcmdlIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorImthbiBpbnRlIHbDpHhsYSBncmVuIHZpZCBzYW1tYW5zbGFnbmluZ1xuIgorIsOWdmVydsOkZyBcImdpdCBtZXJnZSAtLXF1aXRcIiBlbGxlciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzYwCittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIGluIHRoZSBtaWRkbGUgb2YgYW4gYW0gc2Vzc2lvblxuIgorIkNvbnNpZGVyIFwiZ2l0IGFtIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorImthbiBpbnRlIHbDpHhsYSBncmVuIG1pdHQgaSBlbiBcImFtXCIta8O2cm5pbmdcbiIKKyLDlnZlcnbDpGcgXCJnaXQgYW0gLS1xdWl0XCIgZWxsZXIgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2NAorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSByZWJhc2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IHJlYmFzZSAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyJrYW4gaW50ZSB2w6R4bGEgZ3JlbiB2aWQgb21iYXNlcmluZ1xuIgorIsOWdmVydsOkZyBcImdpdCByZWJhc2UgLS1xdWl0XCIgZWxsZXIgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2OAorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSBjaGVycnktcGlja2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IGNoZXJyeS1waWNrIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorImthbiBpbnRlIHbDpHhsYSBncmVuIGkgZW4gXCJjaGVycnktcGlja1wiXG4iCisiw5Z2ZXJ2w6RnIFwiZ2l0IGNoZXJyeS1waWNrIC0tcXVpdFwiIGVsbGVyIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzIKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgcmV2ZXJ0aW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgcmV2ZXJ0IC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorImthbiBpbnRlIHbDpHhsYSBncmVuIGkgZW4gXCJyZXZlcnRcIlxuIgorIsOWdmVydsOkZyBcImdpdCByZXZlcnQgLS1xdWl0XCIgZWxsZXIgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM3NgorbXNnaWQgInlvdSBhcmUgc3dpdGNoaW5nIGJyYW5jaCB3aGlsZSBiaXNlY3RpbmciCittc2dzdHIgImTDpSB2w6R4bGFyIGdyZW5hciBtZWRhbiBkdSBnw7ZyIGVuIFwiYmlzZWN0XCIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzgzCittc2dpZCAicGF0aHMgY2Fubm90IGJlIHVzZWQgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMiCittc2dzdHIgInPDtmt2w6RnYXIga2FuIGludGUgYW52w6RuZGFzIHZpZCBieXRlIGF2IGdyZW4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzg2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzkwIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMiCittc2dzdHIgIlwiJXNcIiBrYW4gaW50ZSBhbnbDpG5kYXMgdmlkIGJ5dGUgYXYgZ3JlbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzOTggYnVpbHRpbi9jaGVja291dC5jOjE0MDEgYnVpbHRpbi9jaGVja291dC5jOjE0MDQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDA5IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAnJXMnIgorbXNnc3RyICJcIiVzXCIga2FuIGludGUgYW52w6RuZGFzIG1lZCBcIiVzXCIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDExCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IHRha2UgPHN0YXJ0LXBvaW50PiIKK21zZ3N0ciAiXCIlc1wiIGthbiBpbnRlIHRhIDxzdGFydHB1bmt0PiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN3aXRjaCBicmFuY2ggdG8gYSBub24tY29tbWl0ICclcyciCittc2dzdHIgIkthbiBpbnRlIHbDpHhsYSBncmVuIHRpbGwgaWNrZS1pbmNoZWNrbmluZ2VuIFwiJXNcIiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MjYKK21zZ2lkICJtaXNzaW5nIGJyYW5jaCBvciBjb21taXQgYXJndW1lbnQiCittc2dzdHIgInNha25hciBncmVuLSBlbGxlciBpbmNoZWNraW5nc2FyZ3VtZW50IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2OCBidWlsdGluL2Nsb25lLmM6OTEgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3MgorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzUgYnVpbHRpbi9mZXRjaC5jOjE2NyBidWlsdGluL21lcmdlLmM6Mjg2CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyNyBidWlsdGluL3B1bGwuYzoxMTggYnVpbHRpbi9wdXNoLmM6NTYzCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE3NAorbXNnaWQgImZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKK21zZ3N0ciAidHZpbmdhIGbDtnJsb3Bwc3JhcHBvcnRlcmluZyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NjkKK21zZ2lkICJwZXJmb3JtIGEgMy13YXkgbWVyZ2Ugd2l0aCB0aGUgbmV3IGJyYW5jaCIKK21zZ3N0ciAidXRmw7ZyIGVuIDMtdsOkZ3NzYW1tYW5zbGFnbmluZyBmw7ZyIGRlbiBueWEgZ3JlbmVuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ3MCBidWlsdGluL2xvZy5jOjE2OTAgcGFyc2Utb3B0aW9ucy5oOjMyMgorbXNnaWQgInN0eWxlIgorbXNnc3RyICJzdGlsIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ3MQorbXNnaWQgImNvbmZsaWN0IHN0eWxlIChtZXJnZSBvciBkaWZmMykiCittc2dzdHIgImtvbmZsaWt0c3RpbCAobWVyZ2UgZWxsZXIgZGlmZjMpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4MyBidWlsdGluL3dvcmt0cmVlLmM6NDk2Cittc2dpZCAiZGV0YWNoIEhFQUQgYXQgbmFtZWQgY29tbWl0IgorbXNnc3RyICJrb3BwbGEgZnLDpW4gSEVBRCB2aWQgbmFtbmdpdmVuIGluY2hlY2tuaW5nIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4NAorbXNnaWQgInNldCB1cHN0cmVhbSBpbmZvIGZvciBuZXcgYnJhbmNoIgorbXNnc3RyICJzw6R0dCB1cHBzdHLDtm1zaW5mb3JtYXRpb24gZsO2ciBueSBncmVuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4NgorbXNnaWQgImZvcmNlIGNoZWNrb3V0ICh0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMpIgorbXNnc3RyICJ0dmluZ2EgdXRjaGVja25pbmcgKGthc3RhIGJvcnQgbG9rYWxhIMOkbmRyaW5nYXIpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4OAorbXNnaWQgIm5ldy1icmFuY2giCittc2dzdHIgIm55LWdyZW4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg4Cittc2dpZCAibmV3IHVucGFyZW50ZWQgYnJhbmNoIgorbXNnc3RyICJueSBncmVuIHV0YW4gZsO2csOkbGRlciIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0OTAgYnVpbHRpbi9tZXJnZS5jOjI4OQorbXNnaWQgInVwZGF0ZSBpZ25vcmVkIGZpbGVzIChkZWZhdWx0KSIKK21zZ3N0ciAidXBwZGF0ZXJhIGlnbm9yZXJhZGUgZmlsZXIgKHN0YW5kYXJkKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0OTMKK21zZ2lkICJkbyBub3QgY2hlY2sgaWYgYW5vdGhlciB3b3JrdHJlZSBpcyBob2xkaW5nIHRoZSBnaXZlbiByZWYiCittc2dzdHIgIiIKKyJrb250cm9sbGVyYSBpbnRlIG9tIGVuIGFubmFuIGFyYmV0c2thdGFsb2cgaMOlbGxlciBkZW4gYW5naXZuYSByZWZlcmVuc2VuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTUwNgorbXNnaWQgImNoZWNrb3V0IG91ciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKK21zZ3N0ciAiY2hlY2thIHV0IHbDpXIgdmVyc2lvbiBmw7ZyIGVqIHNhbW1hbnNsYWduYSBmaWxlciIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MDkKK21zZ2lkICJjaGVja291dCB0aGVpciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKK21zZ3N0ciAiY2hlY2thIHV0IGRlcmFzIHZlcnNpb24gZsO2ciBlaiBzYW1tYW5zbGFnbmEgZmlsZXIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTEzCittc2dpZCAiZG8gbm90IGxpbWl0IHBhdGhzcGVjcyB0byBzcGFyc2UgZW50cmllcyBvbmx5IgorbXNnc3RyICJiZWdyw6Ruc2EgaW50ZSBzw7ZrdsOkZ2FyIHRpbGwgZW5kYXN0IGdsZXNhIHBvc3RlciIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1NjUKK21zZ2lkICItYiwgLUIgYW5kIC0tb3JwaGFuIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIi1iLCAtQiBvY2ggLS1vcnBoYW4gw6RyIMO2bXNlc2lkaWd0IHV0ZXNsdXRhbmRlIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTU2OAorbXNnaWQgIi1wIGFuZCAtLW92ZXJsYXkgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLXAgb2NoIC0tb3ZlcmxheSDDpHIgw7Ztc2VzaWRpZ3QgdXRlc2x1dGFuZGUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjA1Cittc2dpZCAiLS10cmFjayBuZWVkcyBhIGJyYW5jaCBuYW1lIgorbXNnc3RyICItLXRyYWNrIGJlaMO2dmVyIGV0dCBuYW1uIHDDpSBlbiBncmVuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTYxMAorbXNnaWQgIm1pc3NpbmcgYnJhbmNoIG5hbWU7IHRyeSAtYiIKK21zZ3N0ciAiZ3Jlbm5hbW4gc2FrbmFzOyBmw7Zyc8O2ayBtZWQgLWIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlICVzIgorbXNnc3RyICJrdW5kZSBpbnRlIHVwcGzDtnNhICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY1OAorbXNnaWQgImludmFsaWQgcGF0aCBzcGVjaWZpY2F0aW9uIgorbXNnc3RyICJmZWxha3RpZyBzw7ZrdsOkZ3NhbmdpdmVsc2UiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgY29tbWl0IGFuZCBhIGJyYW5jaCAnJXMnIGNhbm5vdCBiZSBjcmVhdGVkIGZyb20gaXQiCittc2dzdHIgIiIKKyJcIiVzXCIgw6RyIGludGUgZW4gaW5jaGVja25pbmcgb2NoIGdyZW5lbiBcIiVzXCIga2FuIGludGUgc2thcGFzIGZyw6VuIGRlbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCAnJXMnIgorbXNnc3RyICJnaXQgY2hlY2tvdXQ6IC0tZGV0YWNoIHRhciBpbnRlIGVuIHPDtmt2w6RnIHNvbSBhcmd1bWVudCBcIiVzXCIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjc4Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1kZXRhY2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIMOkciBpbmtvbXBhdGliZWx0IG1lZCAtLWRldGFjaCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2ODEgYnVpbHRpbi9yZXNldC5jOjMyNCBidWlsdGluL3N0YXNoLmM6MTUwNgorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tcGF0Y2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIMOkciBpbmtvbXBhdGliZWx0IG1lZCAtLXBhdGNoIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY5MgorbXNnaWQgIiIKKyJnaXQgY2hlY2tvdXQ6IC0tb3Vycy8tLXRoZWlycywgLS1mb3JjZSBhbmQgLS1tZXJnZSBhcmUgaW5jb21wYXRpYmxlIHdoZW5cbiIKKyJjaGVja2luZyBvdXQgb2YgdGhlIGluZGV4LiIKK21zZ3N0ciAiIgorImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIG9jaCAtLW1lcmdlIMOkciBpbmtvbXBhdGlibGEgbsOkclxuIgorImR1IGNoZWNrYXIgdXQgZnLDpW4gaW5kZXhldC4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjk3Cittc2dpZCAieW91IG11c3Qgc3BlY2lmeSBwYXRoKHMpIHRvIHJlc3RvcmUiCittc2dzdHIgImR1IG3DpXN0ZSBhbmdlIGthdGFsb2coZXIpIGF0dCDDpXRlcnN0w6RsbGEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzIzIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI1IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3NiBidWlsdGluL2Nsb25lLmM6MTIxIGJ1aWx0aW4vcmVtb3RlLmM6MTcwCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MiBidWlsdGluL3dvcmt0cmVlLmM6NDkyIGJ1aWx0aW4vd29ya3RyZWUuYzo0OTQKK21zZ2lkICJicmFuY2giCittc2dzdHIgImdyZW4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI0Cittc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCittc2dzdHIgInNrYXBhIG9jaCBjaGVja2EgdXQgZW4gbnkgZ3JlbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjYKK21zZ2lkICJjcmVhdGUvcmVzZXQgYW5kIGNoZWNrb3V0IGEgYnJhbmNoIgorbXNnc3RyICJza2FwYS9ub2xsc3TDpGxsIG9jaCBjaGVja2EgdXQgZW4gZ3JlbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjcKK21zZ2lkICJjcmVhdGUgcmVmbG9nIGZvciBuZXcgYnJhbmNoIgorbXNnc3RyICJza2FwYSByZWZsb2dnIGbDtnIgbnkgZ3JlbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjkKK21zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBjaGVja291dCA8bm8tc3VjaC1icmFuY2g+JyAoZGVmYXVsdCkiCittc2dzdHIgImbDtnJ1dHNww6UgXCJnaXQgY2hlY2tvdXQgPGdyZW4tc2FrbmFzPlwiIChmw7ZydmFsKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MzAKK21zZ2lkICJ1c2Ugb3ZlcmxheSBtb2RlIChkZWZhdWx0KSIKK21zZ3N0ciAiYW52w6RuZCDDtnZlcmzDpGdnc2zDpGdlIChzdGFuZGFyZCkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc1Cittc2dpZCAiY3JlYXRlIGFuZCBzd2l0Y2ggdG8gYSBuZXcgYnJhbmNoIgorbXNnc3RyICJza2FwYSBvY2ggdsOkeGxhIHRpbGwgZW4gbnkgZ3JlbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzcKK21zZ2lkICJjcmVhdGUvcmVzZXQgYW5kIHN3aXRjaCB0byBhIGJyYW5jaCIKK21zZ3N0ciAic2thcGEvbm9sbHN0w6RsbCBvY2ggdsOkeGxhIHRpbGwgZW4gZ3JlbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzkKK21zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBzd2l0Y2ggPG5vLXN1Y2gtYnJhbmNoPiciCittc2dzdHIgImbDtnJ1dHNww6UgXCJnaXQgY2hlY2tvdXQgPGdyZW4tc2FrbmFzPlwiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc4MQorbXNnaWQgInRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucyIKK21zZ3N0ciAia2FzdGEgYm9ydCBsb2thbGEgw6RuZHJpbmdhciIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTMKK21zZ2lkICJ3aGljaCB0cmVlLWlzaCB0byBjaGVja291dCBmcm9tIgorbXNnc3RyICJ2aWxrZW4gdHLDpGQtaWd0IGF0dCBjaGVja2EgdXQgZnLDpW4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODE1Cittc2dpZCAicmVzdG9yZSB0aGUgaW5kZXgiCittc2dzdHIgIsOldGVyc3TDpGxsIGluZGV4ZXQiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODE3Cittc2dpZCAicmVzdG9yZSB0aGUgd29ya2luZyB0cmVlIChkZWZhdWx0KSIKK21zZ3N0ciAiw6V0ZXJzdMOkbGwgYXJiZXRza2F0YWxvZ2VuIChmw7ZydmFsKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTkKK21zZ2lkICJpZ25vcmUgdW5tZXJnZWQgZW50cmllcyIKK21zZ3N0ciAiaWdub3JlcmEgZWogc2FtbWFuc2xhZ25hIHBvc3RlciIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MjAKK21zZ2lkICJ1c2Ugb3ZlcmxheSBtb2RlIgorbXNnc3RyICJhbnbDpG5kIMO2dmVybMOkZ2dzbMOkZ2UiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzoyOAogbXNnaWQgIiIKICJnaXQgY2xlYW4gWy1kXSBbLWZdIFstaV0gWy1uXSBbLXFdIFstZSA8cGF0dGVybj5dIFsteCB8IC1YXSBbLS1dIDxwYXRocz4uLi4iCiBtc2dzdHIgIiIKICJnaXQgY2xlYW4gWy1kXSBbLWZdIFstaV0gWy1uXSBbLXFdIFstZSA8bcO2bnN0ZXI+XSBbLXggfCAtWF0gWy0tXSAiCiAiPHPDtmt2w6RnYXI+Li4uIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzEKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyAlc1xuIgogbXNnc3RyICJUYXIgYm9ydCAlc1xuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzIKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMwogIywgYy1mb3JtYXQKIG1zZ2lkICJXb3VsZCByZW1vdmUgJXNcbiIKIG1zZ3N0ciAiU2t1bGxlIHRhIGJvcnQgJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjMzCisjOiBidWlsdGluL2NsZWFuLmM6MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBpbmcgcmVwb3NpdG9yeSAlc1xuIgogbXNnc3RyICJIb3BwYXIgw7Z2ZXIgYXJraXZldCAlc1xuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzQKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNQogIywgYy1mb3JtYXQKIG1zZ2lkICJXb3VsZCBza2lwIHJlcG9zaXRvcnkgJXNcbiIKIG1zZ3N0ciAiU2t1bGxlIGhvcHBhIMO2dmVyIGFya2l2ZXQgJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjM1CisjOiBidWlsdGluL2NsZWFuLmM6MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAlcyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHRhIGJvcnQgJXMiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzoyOTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NzkKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgbHN0YXQgJXNcbiIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBzdGF0dXMgKFwibHN0YXRcIikgcMOlICVzXG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMDEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlByb21wdCBoZWxwOlxuIgpAQCAtODk4MCw3ICsxMTY4Miw3IEBACiAiZm9vICAgICAgICAtIG1hcmtlcmEgcG9zdCBiYXNlcmFkIHDDpSB1bmlrdCBwcmVmaXhcbiIKICIgICAgICAgICAgIC0gKHRvbXQpIG1hcmtlcmEgaW5nZW50aW5nXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMDIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1ODgKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMDUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlByb21wdCBoZWxwOlxuIgpAQCAtOTAwMSwzOCArMTE3MDMsMzMgQEAKICIqICAgICAgICAgIC0gdsOkbGogYWxsYSBwb3N0ZXJcbiIKICIgICAgICAgICAgIC0gKHRvbXQpIGF2c2x1dGEgbWFya2VyaW5nXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo1MTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NTQKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTU5CisjOiBidWlsdGluL2NsZWFuLmM6NTIxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTcwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3NQogIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0CiBtc2dpZCAiSHVoICglcyk/XG4iCiBtc2dzdHIgIlZhZMOlICglcyk/XG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo2NjAKKyM6IGJ1aWx0aW4vY2xlYW4uYzo2NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW5wdXQgaWdub3JlIHBhdHRlcm5zPj4gIgogbXNnc3RyICJBbmdlIGlnbm9yZXJpbmdzbcO2bnN0ZXI+PiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjY5NworIzogYnVpbHRpbi9jbGVhbi5jOjcwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJXQVJOSU5HOiBDYW5ub3QgZmluZCBpdGVtcyBtYXRjaGVkIGJ5OiAlcyIKIG1zZ3N0ciAiVkFSTklORzogSGl0dGFyIGludGUgcG9zdGVyIHNvbSBtb3RzdmFyYXI6ICVzIgogCi0jOiBidWlsdGluL2NsZWFuLmM6NzE4CisjOiBidWlsdGluL2NsZWFuLmM6NzIxCiBtc2dpZCAiU2VsZWN0IGl0ZW1zIHRvIGRlbGV0ZSIKIG1zZ3N0ciAiVsOkbGogcG9zdGVyIGF0dCB0YSBib3J0IgogCiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGtlZXAgW3kvTl0gYXMgaXMKLSM6IGJ1aWx0aW4vY2xlYW4uYzo3NTkKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3ZlICVzIFt5L05dPyAiCiBtc2dzdHIgIlRhIGJvcnQgJXMgW1k9amEgLyBOPW5lal0/ICIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjc4NCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQnllLlxuIgotbXNnc3RyICJIZWogZMOlLlxuIgotCi0jOiBidWlsdGluL2NsZWFuLmM6NzkyCisjOiBidWlsdGluL2NsZWFuLmM6Nzk1CiBtc2dpZCAiIgogImNsZWFuICAgICAgICAgICAgICAgLSBzdGFydCBjbGVhbmluZ1xuIgogImZpbHRlciBieSBwYXR0ZXJuICAgLSBleGNsdWRlIGl0ZW1zIGZyb20gZGVsZXRpb25cbiIKQEAgLTkwNTAsNjQgKzExNzQ3LDU2IEBACiAiaGVscCAgICAgICAgICAgICAgICAtIGRlbm5hIHNrw6RybVxuIgogIj8gICAgICAgICAgICAgICAgICAgLSBoasOkbHAgZsO2ciBrb21tYW5kb3ZhbCIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjgxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTMKLW1zZ2lkICIqKiogQ29tbWFuZHMgKioqIgotbXNnc3RyICIqKiogS29tbWFuZG9uICoqKiIKLQotIzogYnVpbHRpbi9jbGVhbi5jOjgyMCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTAKLW1zZ2lkICJXaGF0IG5vdyIKLW1zZ3N0ciAiVmFkIG51IgotCi0jOiBidWlsdGluL2NsZWFuLmM6ODI4CisjOiBidWlsdGluL2NsZWFuLmM6ODMxCiBtc2dpZCAiV291bGQgcmVtb3ZlIHRoZSBmb2xsb3dpbmcgaXRlbToiCiBtc2dpZF9wbHVyYWwgIldvdWxkIHJlbW92ZSB0aGUgZm9sbG93aW5nIGl0ZW1zOiIKIG1zZ3N0clswXSAiU2t1bGxlIHRhIGJvcnQgZsO2bGphbmRlIHBvc3Q6IgogbXNnc3RyWzFdICJTa3VsbGUgdGEgYm9ydCBmw7ZsamFuZGUgcG9zdGVyOiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjg0NAorIzogYnVpbHRpbi9jbGVhbi5jOjg0NwogbXNnaWQgIk5vIG1vcmUgZmlsZXMgdG8gY2xlYW4sIGV4aXRpbmcuIgogbXNnc3RyICJJbmdhIGZsZXIgZmlsZXIgYXR0IHN0w6RkYSwgYXZzbHV0YXIuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA2CisjOiBidWlsdGluL2NsZWFuLmM6OTA5CiBtc2dpZCAiZG8gbm90IHByaW50IG5hbWVzIG9mIGZpbGVzIHJlbW92ZWQiCiBtc2dzdHIgInNrcml2IGludGUgdXQgbmFtbiBww6UgYm9ydHRhZ25hIGZpbGVyIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA4CisjOiBidWlsdGluL2NsZWFuLmM6OTExCiBtc2dpZCAiZm9yY2UiCiBtc2dzdHIgInR2aW5nYSIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwOQorIzogYnVpbHRpbi9jbGVhbi5jOjkxMgogbXNnaWQgImludGVyYWN0aXZlIGNsZWFuaW5nIgogbXNnc3RyICJzdMOkZGEgaW50ZXJha3RpdnQiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTEKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTQKIG1zZ2lkICJyZW1vdmUgd2hvbGUgZGlyZWN0b3JpZXMiCiBtc2dzdHIgInRhIGJvcnQgaGVsYSBrYXRhbG9nZXIiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTIgYnVpbHRpbi9kZXNjcmliZS5jOjU0NSBidWlsdGluL2Rlc2NyaWJlLmM6NTQ3Ci0jOiBidWlsdGluL2dyZXAuYzo4ODYgYnVpbHRpbi9sb2cuYzoxNjYgYnVpbHRpbi9sb2cuYzoxNjgKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTYgYnVpbHRpbi9uYW1lLXJldi5jOjQxNSBidWlsdGluL25hbWUtcmV2LmM6NDE3Ci0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTc4CisjOiBidWlsdGluL2NsZWFuLmM6OTE1IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjIgYnVpbHRpbi9kZXNjcmliZS5jOjU2NAorIzogYnVpbHRpbi9ncmVwLmM6ODg5IGJ1aWx0aW4vbG9nLmM6MTc3IGJ1aWx0aW4vbG9nLmM6MTc5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU3IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjYgYnVpbHRpbi9uYW1lLXJldi5jOjUyOAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OQogbXNnaWQgInBhdHRlcm4iCiBtc2dzdHIgIm3Dtm5zdGVyIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTEzCisjOiBidWlsdGluL2NsZWFuLmM6OTE2CiBtc2dpZCAiYWRkIDxwYXR0ZXJuPiB0byBpZ25vcmUgcnVsZXMiCiBtc2dzdHIgImzDpGdnIHRpbGwgPG3Dtm5zdGVyPiB0aWxsIGlnbm9yZXJpbmdzcmVnbGVyIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTE0CisjOiBidWlsdGluL2NsZWFuLmM6OTE3CiBtc2dpZCAicmVtb3ZlIGlnbm9yZWQgZmlsZXMsIHRvbyIKIG1zZ3N0ciAidGEgw6R2ZW4gYm9ydCBpZ25vcmVyYWRlIGZpbGVyIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTE2CisjOiBidWlsdGluL2NsZWFuLmM6OTE5CiBtc2dpZCAicmVtb3ZlIG9ubHkgaWdub3JlZCBmaWxlcyIKIG1zZ3N0ciAidGEgZW5kYXN0IGJvcnQgaWdub3JlcmFkZSBmaWxlciIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkzNAorIzogYnVpbHRpbi9jbGVhbi5jOjkzNwogbXNnaWQgIi14IGFuZCAtWCBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAiLXggb2NoIC1YIGthbiBpbnRlIGFudsOkbmRhcyBzYW10aWRpZ3QiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MzgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5NDEKIG1zZ2lkICIiCiAiY2xlYW4ucmVxdWlyZUZvcmNlIHNldCB0byB0cnVlIGFuZCBuZWl0aGVyIC1pLCAtbiwgbm9yIC1mIGdpdmVuOyByZWZ1c2luZyB0byAiCiAiY2xlYW4iCkBAIC05MTE1LDcgKzExODA0LDcgQEAKICJjbGVhbi5yZXF1aXJlRm9yY2Ugc2F0dCB0aWxsIHRydWUsIG1lbiB2YXJrZW4gLWksIC1uIGVsbGVyIC1mIGFuZ2F2czsgdsOkZ3JhciAiCiAic3TDpGRhIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTQxCisjOiBidWlsdGluL2NsZWFuLmM6OTQ0CiBtc2dpZCAiIgogImNsZWFuLnJlcXVpcmVGb3JjZSBkZWZhdWx0cyB0byB0cnVlIGFuZCBuZWl0aGVyIC1pLCAtbiwgbm9yIC1mIGdpdmVuOyAiCiAicmVmdXNpbmcgdG8gY2xlYW4iCkBAIC05MTIzLDE0NiArMTE4MTIsMTY3IEBACiAiY2xlYW4ucmVxdWlyZUZvcmNlIGhhciBzdGFuZGFyZHbDpHJkZXQgdHJ1ZSBvY2ggdmFya2VuIC1pLCAtbiBlbGxlciAtZiAiCiAiYW5nYXZzOyB2w6RncmFyIHN0w6RkYSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQzCisjOiBidWlsdGluL2Nsb25lLmM6NDUKIG1zZ2lkICJnaXQgY2xvbmUgWzxvcHRpb25zPl0gWy0tXSA8cmVwbz4gWzxkaXI+XSIKIG1zZ3N0ciAiZ2l0IGNsb25lIFs8ZmxhZ2dvcj5dIFstLV0gPGFya2l2PiBbPGthdD5dIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MwogbXNnaWQgImRvbid0IGNyZWF0ZSBhIGNoZWNrb3V0IgogbXNnc3RyICJza2FwYSBpbnRlIG7DpWdvbiB1dGNoZWNrbmluZyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjg5IGJ1aWx0aW4vY2xvbmUuYzo5MSBidWlsdGluL2luaXQtZGIuYzo0ODEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NCBidWlsdGluL2Nsb25lLmM6OTYgYnVpbHRpbi9pbml0LWRiLmM6NDg5CiBtc2dpZCAiY3JlYXRlIGEgYmFyZSByZXBvc2l0b3J5IgogbXNnc3RyICJza2FwYSBldHQgbmFrZXQgKFwiYmFyZVwiKSBhcmtpdiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkzCisjOiBidWlsdGluL2Nsb25lLmM6OTgKIG1zZ2lkICJjcmVhdGUgYSBtaXJyb3IgcmVwb3NpdG9yeSAoaW1wbGllcyBiYXJlKSIKIG1zZ3N0ciAic2thcGEgZXR0IHNwZWdlbGFya2l2IChpbXBsaWNlcmFyIFwiYmFyZVwiKSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk1CisjOiBidWlsdGluL2Nsb25lLmM6MTAwCiBtc2dpZCAidG8gY2xvbmUgZnJvbSBhIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgImbDtnIgYXR0IGtsb25hIGZyw6VuIGV0dCBsb2thbHQgYXJraXYiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NworIzogYnVpbHRpbi9jbG9uZS5jOjEwMgogbXNnaWQgImRvbid0IHVzZSBsb2NhbCBoYXJkbGlua3MsIGFsd2F5cyBjb3B5IgogbXNnc3RyICJza2FwYSBpbnRlIGxva2FsYSBow6VyZGEgbMOkbmthciwga29waWVyYSBhbGx0aWQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5OQorIzogYnVpbHRpbi9jbG9uZS5jOjEwNAogbXNnaWQgInNldHVwIGFzIHNoYXJlZCByZXBvc2l0b3J5IgogbXNnc3RyICJza2FwYSBzb20gZXR0IGRlbGF0IGFya2l2IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxIGJ1aWx0aW4vY2xvbmUuYzoxMDUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDcKIG1zZ2lkICJwYXRoc3BlYyIKIG1zZ3N0ciAic8O2a3bDpGdzYW5naXZlbHNlIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxIGJ1aWx0aW4vY2xvbmUuYzoxMDUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDcKIG1zZ2lkICJpbml0aWFsaXplIHN1Ym1vZHVsZXMgaW4gdGhlIGNsb25lIgogbXNnc3RyICJpbml0aWVyYSB1bmRlcm1vZHVsZXIgaSBrbG9uZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAKIG1zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBjbG9uZWQgaW4gcGFyYWxsZWwiCiBtc2dzdHIgImFudGFsIHVuZGVybW9kdWxlciBzb20ga2xvbmFzIHBhcmFsbGVsbHQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDkgYnVpbHRpbi9pbml0LWRiLmM6NDc4CisjOiBidWlsdGluL2Nsb25lLmM6MTExIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NgogbXNnaWQgInRlbXBsYXRlLWRpcmVjdG9yeSIKIG1zZ3N0ciAibWFsbGthdGFsb2ciCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAgYnVpbHRpbi9pbml0LWRiLmM6NDc5CisjOiBidWlsdGluL2Nsb25lLmM6MTEyIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NwogbXNnaWQgImRpcmVjdG9yeSBmcm9tIHdoaWNoIHRlbXBsYXRlcyB3aWxsIGJlIHVzZWQiCiBtc2dzdHIgImthdGFsb2cgYXR0IGFudsOkbmRhIG1hbGxhciBmcsOlbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMiBidWlsdGluL2Nsb25lLmM6MTE0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc1Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1NgorIzogYnVpbHRpbi9jbG9uZS5jOjExNCBidWlsdGluL2Nsb25lLmM6MTE2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxMgogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5IgogbXNnc3RyICJyZWZlcmVuc2Fya2l2IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc3Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1OAorIzogYnVpbHRpbi9jbG9uZS5jOjExOCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTQKIG1zZ2lkICJ1c2UgLS1yZWZlcmVuY2Ugb25seSB3aGlsZSBjbG9uaW5nIgogbXNnc3RyICJhbnbDpG5kIC0tcmVmZXJlbmNlIGVuZGFzdCB1bmRlciBrbG9uaW5nZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTcgYnVpbHRpbi9jb2x1bW4uYzoyNyBidWlsdGluL21lcmdlLWZpbGUuYzo0NgotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAxIGJ1aWx0aW4vcmVwYWNrLmM6MzI5CisjOiBidWlsdGluL2Nsb25lLmM6MTE5IGJ1aWx0aW4vY29sdW1uLmM6MjcgYnVpbHRpbi9tZXJnZS1maWxlLmM6NDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0MSBidWlsdGluL3JlcGFjay5jOjMyNwogbXNnaWQgIm5hbWUiCiBtc2dzdHIgIm5hbW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjAKIG1zZ2lkICJ1c2UgPG5hbWU+IGluc3RlYWQgb2YgJ29yaWdpbicgdG8gdHJhY2sgdXBzdHJlYW0iCiBtc2dzdHIgImFudsOkbmQgPG5hbW4+IGlzdMOkbGxldCBmw7ZyIFwib3JpZ2luXCIgZsO2ciBhdHQgc3DDpXJhIHVwcHN0csO2bXMiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjIKIG1zZ2lkICJjaGVja291dCA8YnJhbmNoPiBpbnN0ZWFkIG9mIHRoZSByZW1vdGUncyBIRUFEIgogbXNnc3RyICJjaGVja2EgdXQgPGdyZW4+IGlzdMOkbGxldCBmw7ZyIGZqw6RycmVucyBIRUFEIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTIyCisjOiBidWlsdGluL2Nsb25lLmM6MTI0CiBtc2dpZCAicGF0aCB0byBnaXQtdXBsb2FkLXBhY2sgb24gdGhlIHJlbW90ZSIKIG1zZ3N0ciAic8O2a3bDpGcgdGlsbCBnaXQtdXBsb2FkLXBhY2sgcMOlIGZqw6RycmVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTIzIGJ1aWx0aW4vZmV0Y2guYzoxNDIgYnVpbHRpbi9ncmVwLmM6ODI1Ci0jOiBidWlsdGluL3B1bGwuYzoyMTcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjUgYnVpbHRpbi9mZXRjaC5jOjE2OCBidWlsdGluL2dyZXAuYzo4MjgKKyM6IGJ1aWx0aW4vcHVsbC5jOjIwNwogbXNnaWQgImRlcHRoIgogbXNnc3RyICJkanVwIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI0CisjOiBidWlsdGluL2Nsb25lLmM6MTI2CiBtc2dpZCAiY3JlYXRlIGEgc2hhbGxvdyBjbG9uZSBvZiB0aGF0IGRlcHRoIgogbXNnc3RyICJza2FwYSBlbiBncnVuZCBrbG9uIHDDpSBkZXR0YSBkanVwIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI1IGJ1aWx0aW4vZmV0Y2guYzoxNDQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkyCisjOiBidWlsdGluL2Nsb25lLmM6MTI3IGJ1aWx0aW4vZmV0Y2guYzoxNzAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDMwCiBtc2dpZCAidGltZSIKIG1zZ3N0ciAidGlkIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI2CisjOiBidWlsdGluL2Nsb25lLmM6MTI4CiBtc2dpZCAiY3JlYXRlIGEgc2hhbGxvdyBjbG9uZSBzaW5jZSBhIHNwZWNpZmljIHRpbWUiCiBtc2dzdHIgInNrYXBhIGVuIGdydW5kIGtsb24gZnLDpW4gZW4gYW5naXZlbiB0aWRwdW5rdCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyNyBidWlsdGluL2ZldGNoLmM6MTQ2IGJ1aWx0aW4vZmV0Y2guYzoxNjkKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODMxCisjOiBidWlsdGluL2Nsb25lLmM6MTI5IGJ1aWx0aW4vZmV0Y2guYzoxNzIgYnVpbHRpbi9mZXRjaC5jOjE5NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgwCiBtc2dpZCAicmV2aXNpb24iCiBtc2dzdHIgInJldmlzaW9uIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI4IGJ1aWx0aW4vZmV0Y2guYzoxNDcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzAgYnVpbHRpbi9mZXRjaC5jOjE3MwogbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgY2xvbmUsIGV4Y2x1ZGluZyByZXYiCiBtc2dzdHIgImbDtnJkanVwYSBoaXN0b3JpayBmw7ZyIGdydW5kIGtsb24sIGV4a2x1ZGVyYSByZXZpc2lvbmVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTMwCisjOiBidWlsdGluL2Nsb25lLmM6MTMyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyOAogbXNnaWQgImNsb25lIG9ubHkgb25lIGJyYW5jaCwgSEVBRCBvciAtLWJyYW5jaCIKIG1zZ3N0ciAia2xvbmEgZW5kYXN0IGVuIGdyZW4sIEhFQUQgZWxsZXIgLS1icmFuY2giCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzIKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzQKIG1zZ2lkICJkb24ndCBjbG9uZSBhbnkgdGFncywgYW5kIG1ha2UgbGF0ZXIgZmV0Y2hlcyBub3QgdG8gZm9sbG93IHRoZW0iCiBtc2dzdHIgImtsb25hIGluZ2EgdGFnZ2FyIG9jaCBnw7ZyIGF0dCBzZW5hcmUgaMOkbXRuaW5nYXIgaW50ZSBmw7ZsamVyIGRlbSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNAorIzogYnVpbHRpbi9jbG9uZS5jOjEzNgogbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIGJlIHNoYWxsb3ciCiBtc2dzdHIgImtsb25hZGUgdW5kZXJtb2R1bGVyIGtvbW1lciB2YXJhIGdydW5kYSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNSBidWlsdGluL2luaXQtZGIuYzo0ODcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzcgYnVpbHRpbi9pbml0LWRiLmM6NDk1CiBtc2dpZCAiZ2l0ZGlyIgogbXNnc3RyICJnaXRrYXQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzYgYnVpbHRpbi9pbml0LWRiLmM6NDg4CisjOiBidWlsdGluL2Nsb25lLmM6MTM4IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5NgogbXNnaWQgInNlcGFyYXRlIGdpdCBkaXIgZnJvbSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgInNlcGFyZXJhIGdpdGthdGFsb2dlbiBmcsOlbiBhcmJldHNrYXRhbG9nZW4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzkKIG1zZ2lkICJrZXk9dmFsdWUiCiBtc2dzdHIgIm55Y2tlbD12w6RyZGUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDAKIG1zZ2lkICJzZXQgY29uZmlnIGluc2lkZSB0aGUgbmV3IHJlcG9zaXRvcnkiCiBtc2dzdHIgInN0w6RsbCBpbiBrb25maWd1cmF0aW9uIGkgZGV0IG55YSBhcmtpdmV0IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM5IGJ1aWx0aW4vZmV0Y2guYzoxNjUgYnVpbHRpbi9wdWxsLmM6MjMwCi0jOiBidWlsdGluL3B1c2guYzo1ODMKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDIgYnVpbHRpbi9mZXRjaC5jOjE5MCBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL3B1c2guYzo1NzMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzIKK21zZ2lkICJzZXJ2ZXItc3BlY2lmaWMiCittc2dzdHIgInNlcnZlcnNwZWNpZmlrIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQyIGJ1aWx0aW4vZmV0Y2guYzoxOTAgYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9wdXNoLmM6NTczIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTczCittc2dpZCAib3B0aW9uIHRvIHRyYW5zbWl0IgorbXNnc3RyICIiCisiaW5nZXQgYXR0IGNoZWNrYSBpblxuIgorImZsYWdnYSBhdHQgc8OkbmRhIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQzIGJ1aWx0aW4vZmV0Y2guYzoxOTEgYnVpbHRpbi9wdWxsLmM6MjIwCisjOiBidWlsdGluL3B1c2guYzo1NzQKIG1zZ2lkICJ1c2UgSVB2NCBhZGRyZXNzZXMgb25seSIKIG1zZ3N0ciAiYW52w6RuZCBlbmRhc3QgSVB2NC1hZHJlc3NlciIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjE0MSBidWlsdGluL2ZldGNoLmM6MTY3IGJ1aWx0aW4vcHVsbC5jOjIzMwotIzogYnVpbHRpbi9wdXNoLmM6NTg1CisjOiBidWlsdGluL2Nsb25lLmM6MTQ1IGJ1aWx0aW4vZmV0Y2guYzoxOTMgYnVpbHRpbi9wdWxsLmM6MjIzCisjOiBidWlsdGluL3B1c2guYzo1NzYKIG1zZ2lkICJ1c2UgSVB2NiBhZGRyZXNzZXMgb25seSIKIG1zZ3N0ciAiYW52w6RuZCBlbmRhc3QgSVB2Ni1hZHJlc3NlciIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjI3OQorIzogYnVpbHRpbi9jbG9uZS5jOjE0OQorbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIHVzZSB0aGVpciByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICJrbG9uYWRlIHVuZGVybW9kdWxlciBrb21tZXIgYW52w6RuZGEgc2luIGZqw6RycnNww6VybmluZ3NncmVuIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTUxCittc2dpZCAiaW5pdGlhbGl6ZSBzcGFyc2UtY2hlY2tvdXQgZmlsZSB0byBpbmNsdWRlIG9ubHkgZmlsZXMgYXQgcm9vdCIKK21zZ3N0ciAiaW5pdGllcmEgc3BhcnNlLWNoZWNrb3V0LWZpbGVuIHRpbGwgYXR0IGJhcmEgaW5rbHVkZXJhIGZpbGVyIGkgcm90ZW4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoyODcKIG1zZ2lkICIiCiAiTm8gZGlyZWN0b3J5IG5hbWUgY291bGQgYmUgZ3Vlc3NlZC5cbiIKICJQbGVhc2Ugc3BlY2lmeSBhIGRpcmVjdG9yeSBvbiB0aGUgY29tbWFuZCBsaW5lIgpAQCAtOTI3MCwxODMgKzExOTgwLDE4MiBAQAogIkt1bmRlIGludGUgZ2lzc2Ega2F0YWxvZ25hbW4uXG4iCiAiQW5nZSBlbiBrYXRhbG9nIHDDpSBrb21tYW5kb3JhZGVuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MzMyCisjOiBidWlsdGluL2Nsb25lLmM6MzQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImluZm86IENvdWxkIG5vdCBhZGQgYWx0ZXJuYXRlIGZvciAnJXMnOiAlc1xuIgotbXNnc3RyICJpbmZvOiBLYW4gaW50ZSBza2FwYSBhbHRlcm5hdGl2IGbDtnIgXCIlc1wiOiAlc1xuIgorbXNnc3RyICJpbmZvOiBLYW4gaW50ZSBza2FwYSBzdXBwbGVhbnQgZsO2ciBcIiVzXCI6ICVzXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0MDQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyIKLW1zZ3N0ciAibWlzc2x5Y2thZGVzIMO2cHBuYSBcIiVzXCIiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo0MTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZXhpc3RzIGFuZCBpcyBub3QgYSBkaXJlY3RvcnkiCiBtc2dzdHIgIiVzIGZpbm5zIG9jaCDDpHIgaW5nZW4ga2F0YWxvZyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQyNgorIzogYnVpbHRpbi9jbG9uZS5jOjQzMAogIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gc3RhdCAlc1xuIgotbXNnc3RyICJtaXNzbHlja2FkZXMgdGEgc3RhdHVzIHDDpSAlc1xuIgorbXNnaWQgImZhaWxlZCB0byBzdGFydCBpdGVyYXRvciBvdmVyICclcyciCittc2dzdHIgIm1pc3NseWNrYWRlcyBzdGFydGEgaXRlcmF0b3Igw7Z2ZXIgXCIlc1wiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDQzCi0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgJyVzJyIKLW1zZ3N0ciAibWlzc2x5Y2thZGVzIHRhIGJvcnQgbMOkbmtlbiBcIiVzXCIiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo0NDgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBsaW5rICclcyciCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBza2FwYSBsw6Rua2VuIFwiJXNcIiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ1MgorIzogYnVpbHRpbi9jbG9uZS5jOjQ2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY29weSBmaWxlIHRvICclcyciCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBrb3BpZXJhIGZpbGVuIHRpbGwgXCIlc1wiIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDc4CisjOiBidWlsdGluL2Nsb25lLmM6NDY5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpdGVyYXRlIG92ZXIgJyVzJyIKK21zZ3N0ciAibWlzc2x5Y2thZGVzIGl0ZXJlcmEgw7Z2ZXIgXCIlc1wiIgorCisjOiBidWlsdGluL2Nsb25lLmM6NDk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImRvbmUuXG4iCiBtc2dzdHIgImtsYXJ0LlxuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDkyCisjOiBidWlsdGluL2Nsb25lLmM6NTA4CiBtc2dpZCAiIgogIkNsb25lIHN1Y2NlZWRlZCwgYnV0IGNoZWNrb3V0IGZhaWxlZC5cbiIKICJZb3UgY2FuIGluc3BlY3Qgd2hhdCB3YXMgY2hlY2tlZCBvdXQgd2l0aCAnZ2l0IHN0YXR1cydcbiIKLSJhbmQgcmV0cnkgdGhlIGNoZWNrb3V0IHdpdGggJ2dpdCBjaGVja291dCAtZiBIRUFEJ1xuIgorImFuZCByZXRyeSB3aXRoICdnaXQgcmVzdG9yZSAtLXNvdXJjZT1IRUFEIDovJ1xuIgogbXNnc3RyICIiCiAiS2xvbmVuIGx5Y2thZGVzLCBtZW4gdXRjaGVja25pbmdlbiBtaXNzbHlja2FkZXMuXG4iCiAiRHUga2FuIGluc3Bla3RlcmEgZGV0IHNvbSBjaGVja2FkZXMgdXQgbWVkIFwiZ2l0IHN0YXR1c1wiXG4iCi0ib2NoIGbDtnJzw7ZrYSBjaGVja2EgdXQgaWdlbiBtZWQgXCJnaXQgY2hlY2tvdXQgLWYgSEVBRFwiXG4iCisib2NoIGbDtnJzw7ZrYSBtZWQgXCJnaXQgcmVzdG9yZSAtc291cmNlPUhFQUQgOi9cIlxuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NTY5CisjOiBidWlsdGluL2Nsb25lLmM6NTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBmaW5kIHJlbW90ZSBicmFuY2ggJXMgdG8gY2xvbmUuIgogbXNnc3RyICJLdW5kZSBpbnRlIGhpdHRhIGZqw6RycmdyZW5lbiAlcyBmw7ZyIGF0dCBrbG9uYS4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo2ODAKKyM6IGJ1aWx0aW4vY2xvbmUuYzo3MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSAlcyIKIG1zZ3N0ciAia2FuIGludGUgdXBwZGF0ZXJhICVzIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NzMwCisjOiBidWlsdGluL2Nsb25lLmM6NzUzCittc2dpZCAiZmFpbGVkIHRvIGluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJtaXNzbHlja2FkZXMgaW5pdGllcmEgc3BhcnNlLWNoZWNrb3V0IgorCisjOiBidWlsdGluL2Nsb25lLmM6Nzc2CiBtc2dpZCAicmVtb3RlIEhFQUQgcmVmZXJzIHRvIG5vbmV4aXN0ZW50IHJlZiwgdW5hYmxlIHRvIGNoZWNrb3V0LlxuIgogbXNnc3RyICIiCiAiSEVBRCBob3MgZmrDpHJyZW4gcGVrYXIgcMOlIGVuIG9iZWZpbnRsaWcgcmVmZXJlbnMsIGthbiBpbnRlIGNoZWNrYSB1dC5cbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjc2MQorIzogYnVpbHRpbi9jbG9uZS5jOjgwNwogbXNnaWQgInVuYWJsZSB0byBjaGVja291dCB3b3JraW5nIHRyZWUiCiBtc2dzdHIgImt1bmRlIGludGUgY2hlY2thIHV0IGFyYmV0c2thdGFsb2dlbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjgwNgorIzogYnVpbHRpbi9jbG9uZS5jOjg2MgogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBwYXJhbWV0ZXJzIHRvIGNvbmZpZyBmaWxlIgogbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSBwYXJhbWV0cmFyIHRpbGwga29uZmlndXJhdGlvbnNmaWxlbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjg2OQorIzogYnVpbHRpbi9jbG9uZS5jOjkyNQogbXNnaWQgImNhbm5vdCByZXBhY2sgdG8gY2xlYW4gdXAiCiBtc2dzdHIgImthbiBpbnRlIHBhY2thIG9tIGbDtnIgYXR0IHN0w6RkYSB1cHAiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4NzEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MjcKIG1zZ2lkICJjYW5ub3QgdW5saW5rIHRlbXBvcmFyeSBhbHRlcm5hdGVzIGZpbGUiCiBtc2dzdHIgImt1bmRlIGludGUgdGEgYm9ydCB0ZW1wb3LDpHIgXCJhbHRlcm5hdGVzXCItZmlsIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTExIGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk0MQorIzogYnVpbHRpbi9jbG9uZS5jOjk2NSBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NTAKIG1zZ2lkICJUb28gbWFueSBhcmd1bWVudHMuIgogbXNnc3RyICJGw7ZyIG3DpW5nYSBhcmd1bWVudC4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MTUKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NjkKIG1zZ2lkICJZb3UgbXVzdCBzcGVjaWZ5IGEgcmVwb3NpdG9yeSB0byBjbG9uZS4iCiBtc2dzdHIgIkR1IG3DpXN0ZSBhbmdlIGV0dCBhcmtpdiBhdHQga2xvbmEuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTI4CisjOiBidWlsdGluL2Nsb25lLmM6OTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIi0tYmFyZSBhbmQgLS1vcmlnaW4gJXMgb3B0aW9ucyBhcmUgaW5jb21wYXRpYmxlLiIKIG1zZ3N0ciAiZmxhZ2dvcm5hIC0tYmFyZSBvY2ggLS1vcmlnaW4gJXMgw6RyIGlua29tcGF0aWJsYS4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MzEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5ODUKIG1zZ2lkICItLWJhcmUgYW5kIC0tc2VwYXJhdGUtZ2l0LWRpciBhcmUgaW5jb21wYXRpYmxlLiIKIG1zZ3N0ciAiZmxhZ2dvcm5hIC0tYmFyZSBvY2ggLS1zZXBhcmF0ZS1naXQtZGlyIMOkciBpbmtvbXBhdGlibGEuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTQ0CisjOiBidWlsdGluL2Nsb25lLmM6OTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcG9zaXRvcnkgJyVzJyBkb2VzIG5vdCBleGlzdCIKIG1zZ3N0ciAiYXJraXZldCBcIiVzXCIgZmlubnMgaW50ZSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk1MCBidWlsdGluL2ZldGNoLmM6MTYwNgorIzogYnVpbHRpbi9jbG9uZS5jOjEwMDQgYnVpbHRpbi9mZXRjaC5jOjE3OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVwdGggJXMgaXMgbm90IGEgcG9zaXRpdmUgbnVtYmVyIgogbXNnc3RyICJkanVwZXQgJXMgw6RyIGludGUgZXR0IHBvc2l0aXZ0IHRhbCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk2MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzdGluYXRpb24gcGF0aCAnJXMnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYW4gZW1wdHkgZGlyZWN0b3J5LiIKIG1zZ3N0ciAiZGVzdGluYXRpb25zc8O2a3bDpGdlbiBcIiVzXCIgZmlubnMgcmVkYW4gb2NoIMOkciBpbnRlIGVuIHRvbSBrYXRhbG9nLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk3MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAid29ya2luZyB0cmVlICclcycgYWxyZWFkeSBleGlzdHMuIgogbXNnc3RyICJhcmJldHN0csOkZGV0IFwiJXNcIiBmaW5ucyByZWRhbi4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5ODUgYnVpbHRpbi9jbG9uZS5jOjEwMDYgYnVpbHRpbi9kaWZmdG9vbC5jOjI3MQotIzogYnVpbHRpbi93b3JrdHJlZS5jOjI5NSBidWlsdGluL3dvcmt0cmVlLmM6MzI1CisjOiBidWlsdGluL2Nsb25lLmM6MTAzOSBidWlsdGluL2Nsb25lLmM6MTA2MCBidWlsdGluL2RpZmZ0b29sLmM6MjcxCisjOiBidWlsdGluL2xvZy5jOjE4NjYgYnVpbHRpbi93b3JrdHJlZS5jOjI5NSBidWlsdGluL3dvcmt0cmVlLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgbGVhZGluZyBkaXJlY3RvcmllcyBvZiAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIHNrYXBhIGlubGVkYW5kZSBrYXRhbG9nZXIgZsO2ciBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5OTAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgd29yayB0cmVlIGRpciAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIHNrYXBhIGFyYmV0c2thdGFsb2dlbiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEwCisjOiBidWlsdGluL2Nsb25lLmM6MTA2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDbG9uaW5nIGludG8gYmFyZSByZXBvc2l0b3J5ICclcycuLi5cbiIKIG1zZ3N0ciAiS2xvbmFyIHRpbGwgZXR0IG5ha2V0IGFya2l2IFwiJXNcIi4uLlxuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxMgorIzogYnVpbHRpbi9jbG9uZS5jOjEwNjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2xvbmluZyBpbnRvICclcycuLi5cbiIKIG1zZ3N0ciAiS2xvbmFyIHRpbGwgXCIlc1wiLi4uXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDM2CisjOiBidWlsdGluL2Nsb25lLmM6MTA5MAogbXNnaWQgIiIKICJjbG9uZSAtLXJlY3Vyc2l2ZSBpcyBub3QgY29tcGF0aWJsZSB3aXRoIGJvdGggLS1yZWZlcmVuY2UgYW5kIC0tcmVmZXJlbmNlLWlmLSIKICJhYmxlIgogbXNnc3RyICIiCiAiY2xvbmUgLS1yZWN1cnNpdmUgw6RyIGludGUga29tcGF0aWJlbCBtZWQgLS1yZWZlcmVuY2Ugb2NoIC0tcmVmZXJlbmNlLWlmLWFibGUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDk3CisjOiBidWlsdGluL2Nsb25lLmM6MTE1NAogbXNnaWQgIi0tZGVwdGggaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICItLWRlcHRoIGlnbm9yZXJhcyBpIGxva2FsYSBrbG9uaW5nYXI7IGFudsOkbmQgZmlsZTovLyBpc3TDpGxsZXQuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA5OQorIzogYnVpbHRpbi9jbG9uZS5jOjExNTYKIG1zZ2lkICItLXNoYWxsb3ctc2luY2UgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICItLXNoYWxsb3ctc2luY2UgaWdub3JlcmFzIGkgbG9rYWxhIGtsb25pbmdhcjsgYW52w6RuZCBmaWxlOi8vIGlzdMOkbGxldC4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAxCisjOiBidWlsdGluL2Nsb25lLmM6MTE1OAogbXNnaWQgIi0tc2hhbGxvdy1leGNsdWRlIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKIG1zZ3N0ciAiIgogIi0tc2hhbGxvdy1leGNsdWRlIGlnbm9yZXJhcyBpIGxva2FsYSBrbG9uaW5nYXI7IGFudsOkbmQgZmlsZTovLyBpc3TDpGxsZXQuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTEwMworIzogYnVpbHRpbi9jbG9uZS5jOjExNjAKIG1zZ2lkICItLWZpbHRlciBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCiBtc2dzdHIgIi0tZmlsdGVyIGlnbm9yZXJhcyBpIGxva2FsYSBrbG9uaW5nYXI7IGFudsOkbmQgZmlsZTovLyBpc3TDpGxsZXQuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTEwNgorIzogYnVpbHRpbi9jbG9uZS5jOjExNjMKIG1zZ2lkICJzb3VyY2UgcmVwb3NpdG9yeSBpcyBzaGFsbG93LCBpZ25vcmluZyAtLWxvY2FsIgogbXNnc3RyICJrw6RsbGFya2l2ZXQgw6RyIGdydW50LCBpZ25vcmVyYXIgLS1sb2NhbCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMTEKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTY4CiBtc2dpZCAiLS1sb2NhbCBpcyBpZ25vcmVkIgogbXNnc3RyICItLWxvY2FsIGlnbm9yZXJhcyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExODEgYnVpbHRpbi9jbG9uZS5jOjExODkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjQzIGJ1aWx0aW4vY2xvbmUuYzoxMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW90ZSBicmFuY2ggJXMgbm90IGZvdW5kIGluIHVwc3RyZWFtICVzIgogbXNnc3RyICJGasOkcnJncmVuZW4gJXMgaGl0dGFkZXMgaW50ZSBpIHVwcHN0csO2bXNhcmtpdmV0ICVzIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE5MgorIzogYnVpbHRpbi9jbG9uZS5jOjEyNTQKIG1zZ2lkICJZb3UgYXBwZWFyIHRvIGhhdmUgY2xvbmVkIGFuIGVtcHR5IHJlcG9zaXRvcnkuIgogbXNnc3RyICJEdSB2ZXJrYXIgaGEga2xvbmF0IGV0dCB0b210IGFya2l2LiIKIApAQCAtOTQ4MiwxNSArMTIxOTEsODMgQEAKIG1zZ2lkICItLWNvbW1hbmQgbXVzdCBiZSB0aGUgZmlyc3QgYXJndW1lbnQiCiBtc2dzdHIgIi0tY29tbWFuZCBtw6VzdGUgdmFyYSBmw7Zyc3RhIGFyZ3VtZW50IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQwCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTgKK21zZ2lkICIiCisiZ2l0IGNvbW1pdC10cmVlIFsoLXAgPHBhcmVudD4pLi4uXSBbLVNbPGtleWlkPl1dIFsoLW0gPG1lc3NhZ2U+KS4uLl0gWygtRiAiCisiPGZpbGU+KS4uLl0gPHRyZWU+IgorbXNnc3RyICIiCisiZ2l0IGNvbW1pdC10cmVlIFsoLXAgPGbDtnLDpGxkcmVyPikuLi5dIFstU1s8bnlja2VsaWQ+XV0gWygtbSAiCisiPG1lZGRlbGFuZGU+KS4uLl0gWygtRiA8ZmlsPikuLi5dIDx0csOkZD4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzozMQorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGFyZW50ICVzIGlnbm9yZWQiCittc2dzdHIgImR1cGxpY2VyYWQgZsO2csOkbGRlciAlcyBpZ25vcmVyYWRlcyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjU2IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMzYgYnVpbHRpbi9sb2cuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0IG5hbWUgJXMiCittc2dzdHIgIm9iamVrdG5hbW5ldCDDpHIgaW50ZSBnaWx0aWd0OiAlcyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIG9wZW4gJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiBtaXNzbHlja2FkZXMgw7ZwcG5hIFwiJXNcIiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk2CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQgJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiBtaXNzbHlja2FkZXMgbMOkc2EgXCIlc1wiIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gY2xvc2UgJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiBtaXNzbHlja2FkZXMgc3TDpG5nYSBcIiVzXCIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTEKK21zZ2lkICJwYXJlbnQiCittc2dzdHIgImbDtnLDpGxkZXIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTIKK21zZ2lkICJpZCBvZiBhIHBhcmVudCBjb21taXQgb2JqZWN0IgorbXNnc3RyICJpZCBww6UgZXR0IGbDtnLDpGxkZXJpbmNoZWNrbmluZ3NvYmpla3QiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTQgYnVpbHRpbi9jb21taXQuYzoxNTAxIGJ1aWx0aW4vbWVyZ2UuYzoyNzEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MDkgYnVpbHRpbi9ub3Rlcy5jOjU3NSBidWlsdGluL3N0YXNoLmM6MTQ3NworIzogYnVpbHRpbi90YWcuYzo0MTIKK21zZ2lkICJtZXNzYWdlIgorbXNnc3RyICJtZWRkZWxhbmRlIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE1IGJ1aWx0aW4vY29tbWl0LmM6MTUwMQorbXNnaWQgImNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICJpbmNoZWNrbmluZ3NtZWRkZWxhbmRlIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE4Cittc2dpZCAicmVhZCBjb21taXQgbG9nIG1lc3NhZ2UgZnJvbSBmaWxlIgorbXNnc3RyICJsw6RzIGluY2hlY2tuaW5nc2xvZ2dtZWRkZWxhbmRlIGZyw6VuIGZpbCIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMSBidWlsdGluL2NvbW1pdC5jOjE1MTMgYnVpbHRpbi9tZXJnZS5jOjI4OAorIzogYnVpbHRpbi9wdWxsLmM6MTc1IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE4Cittc2dpZCAiR1BHIHNpZ24gY29tbWl0IgorbXNnc3RyICJHUEctc2lnbmVyYSBpbmNoZWNrbmluZyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjEzMworbXNnaWQgIm11c3QgZ2l2ZSBleGFjdGx5IG9uZSB0cmVlIgorbXNnc3RyICJtw6VzdGUgYW5nZSBleGFrdCBldHQgdHLDpGQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxNDAKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byByZWFkIgorbXNnc3RyICJnaXQgY29tbWl0LXRyZWU6IG1pc3NseWNrYWRlcyBsw6RzYSIKKworIzogYnVpbHRpbi9jb21taXQuYzo0MQogbXNnaWQgImdpdCBjb21taXQgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICJnaXQgY29tbWl0IFs8ZmxhZ2dvcj5dIFstLV0gPHPDtmt2w6RnPi4uLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NQorIzogYnVpbHRpbi9jb21taXQuYzo0NgogbXNnaWQgImdpdCBzdGF0dXMgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICJnaXQgc3RhdHVzIFs8ZmxhZ2dvcj5dIFstLV0gPHPDtmt2w6RnPi4uLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo1MAorIzogYnVpbHRpbi9jb21taXQuYzo1MQogbXNnaWQgIiIKICJZb3UgYXNrZWQgdG8gYW1lbmQgdGhlIG1vc3QgcmVjZW50IGNvbW1pdCwgYnV0IGRvaW5nIHNvIHdvdWxkIG1ha2VcbiIKICJpdCBlbXB0eS4gWW91IGNhbiByZXBlYXQgeW91ciBjb21tYW5kIHdpdGggLS1hbGxvdy1lbXB0eSwgb3IgeW91IGNhblxuIgpAQCAtOTUwMCw3ICsxMjI3Nyw3IEBACiAiYmxpciBkZW4gdG9tLiBEdSBrYW4ga8O2cmEga29tbWFuZG90IHDDpSBueXR0IG1lZCAtLWFsbG93LWVtcHR5LCBlbGxlclxuIgogInPDpSBrYW4gZHUgdGEgYm9ydCBpbmNoZWNrbmluZ2VuIGhlbHQgbWVkIFwiZ2l0IHJlc2V0IEhFQUReXCIuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTYKIG1zZ2lkICIiCiAiVGhlIHByZXZpb3VzIGNoZXJyeS1waWNrIGlzIG5vdyBlbXB0eSwgcG9zc2libHkgZHVlIHRvIGNvbmZsaWN0IHJlc29sdXRpb24uXG4iCiAiSWYgeW91IHdpc2ggdG8gY29tbWl0IGl0IGFueXdheSwgdXNlOlxuIgpAQCAtOTUxNCw4MSArMTIyOTEsOTUgQEAKICIgICAgZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5XG4iCiAiXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjIKLW1zZ2lkICJPdGhlcndpc2UsIHBsZWFzZSB1c2UgJ2dpdCByZXNldCdcbiIKLW1zZ3N0ciAiQW52w6RuZCBhbm5hcnMgXCJnaXQgcmVzZXRcIlxuIgorIzogYnVpbHRpbi9jb21taXQuYzo2MworbXNnaWQgIk90aGVyd2lzZSwgcGxlYXNlIHVzZSAnZ2l0IGNoZXJyeS1waWNrIC0tc2tpcCdcbiIKK21zZ3N0ciAiQW52w6RuZCBhbm5hcnMgXCJnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXCJcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2NQorIzogYnVpbHRpbi9jb21taXQuYzo2NgogbXNnaWQgIiIKKyJhbmQgdGhlbiB1c2U6XG4iCisiXG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXG4iCisiXG4iCisidG8gcmVzdW1lIGNoZXJyeS1waWNraW5nIHRoZSByZW1haW5pbmcgY29tbWl0cy5cbiIKICJJZiB5b3Ugd2lzaCB0byBza2lwIHRoaXMgY29tbWl0LCB1c2U6XG4iCiAiXG4iCi0iICAgIGdpdCByZXNldFxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXG4iCiAiXG4iCi0iVGhlbiBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgd2lsbCByZXN1bWUgY2hlcnJ5LXBpY2tpbmdcbiIKLSJ0aGUgcmVtYWluaW5nIGNvbW1pdHMuXG4iCiBtc2dzdHIgIiIKLSJPbSBkdSB2aWxsIGhvcHBhIMO2dmVyIGluY2hlY2tuaW5nZW4sIGFudsOkbmQ6XG4iCisib2NoIHNlZGFuOlxuIgogIlxuIgotIiAgICBnaXQgcmVzZXRcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcbiIKICJcbiIKLSJcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIga29tbWVyIGTDpHJlZnRlciBhdHQgw6V0ZXJ1cHB0YVxuIgotImNoZXJyeS1waWNrIGbDtnIgw6V0ZXJzdMOlZW5kZSBpbmNoZWNrbmluZ2FyLlxuIgorImbDtnIgYXR0IGZvcnRzw6R0dGEgXCJjaGVycnktcGlja1wiIG1lZCByZXN0ZXJhbmRlIGluY2hlY2tuaW5nYXIuXG4iCisiT20gZHUgdmlsbCBob3BwYSDDtnZlciBkZW4gaMOkciBpbmNoZWNrbmluZ2VuLCBhbnbDpG5kOlxuIgorIlxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1za2lwXG4iCisiXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzExCisjOiBidWlsdGluL2NvbW1pdC5jOjMxNQogbXNnaWQgImZhaWxlZCB0byB1bnBhY2sgSEVBRCB0cmVlIG9iamVjdCIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHBhY2thIHVwcCBIRUFEOnMgdHLDpGRvYmpla3QiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzUyCisjOiBidWlsdGluL2NvbW1pdC5jOjM1MQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgbWVkIC1hIGdlciBpbmdlbiBtZW5pbmciCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzY0Cittc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgorbXNnc3RyICJEdSBtw6VzdGUgYW5nZSBzw7ZrdsOkZ2FyIHRpbGxzYW1tYW5zIG1lZCAtLWluY2x1ZGUvLS1vbmx5LiIKKworIzogYnVpbHRpbi9jb21taXQuYzozNzYKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBpbmRleCIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSB0ZW1wb3LDpHIgaW5kZXhmaWwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzU4CisjOiBidWlsdGluL2NvbW1pdC5jOjM4NQogbXNnaWQgImludGVyYWN0aXZlIGFkZCBmYWlsZWQiCiBtc2dzdHIgImludGVyYWt0aXYgdGlsbMOkZ2duaW5nIG1pc3NseWNrYWRlcyIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNzEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDAwCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSB0ZW1wb3JhcnkgaW5kZXgiCiBtc2dzdHIgImthbiBpbnRlIHVwcGRhdGVyYSB0ZW1wb3LDpHJ0IGluZGV4IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM3MworIzogYnVpbHRpbi9jb21taXQuYzo0MDIKIG1zZ2lkICJGYWlsZWQgdG8gdXBkYXRlIG1haW4gY2FjaGUgdHJlZSIKIG1zZ3N0ciAiTWlzc2x5Y2thZGVzIHVwcGRhdGVyYSBodXZ1ZC1jYWNoZXRyw6RkZXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Mzk4IGJ1aWx0aW4vY29tbWl0LmM6NDIxIGJ1aWx0aW4vY29tbWl0LmM6NDY3CisjOiBidWlsdGluL2NvbW1pdC5jOjQyNyBidWlsdGluL2NvbW1pdC5jOjQ1MCBidWlsdGluL2NvbW1pdC5jOjQ5NgogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXdfaW5kZXggZmlsZSIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgZmlsZW4gbmV3X2luZGV4IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ1MAorIzogYnVpbHRpbi9jb21taXQuYzo0NzkKIG1zZ2lkICJjYW5ub3QgZG8gYSBwYXJ0aWFsIGNvbW1pdCBkdXJpbmcgYSBtZXJnZS4iCiBtc2dzdHIgImthbiBpbnRlIHV0ZsO2cmEgZW4gZGVsdmlzIGluY2hlY2tuaW5nIHVuZGVyIGVuIHNhbW1hbnNsYWduaW5nLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NTIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDgxCiBtc2dpZCAiY2Fubm90IGRvIGEgcGFydGlhbCBjb21taXQgZHVyaW5nIGEgY2hlcnJ5LXBpY2suIgogbXNnc3RyICJrYW4gaW50ZSB1dGbDtnJhIGVuIGRlbHZpcyBpbmNoZWNrbmluZyB1bmRlciBlbiBjaGVycnktcGljay4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDYwCisjOiBidWlsdGluL2NvbW1pdC5jOjQ4OQogbXNnaWQgImNhbm5vdCByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAia2FuIGludGUgbMOkc2EgaW5kZXhldCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTA4CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRlbXBvcmFyeSBpbmRleCBmaWxlIgogbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSB0ZW1wb3LDpHIgaW5kZXhmaWwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTc3CisjOiBidWlsdGluL2NvbW1pdC5jOjYwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJyVzJyBsYWNrcyBhdXRob3IgaGVhZGVyIgogbXNnc3RyICJpbmNoZWNrbmluZ2VuIFwiJXNcIiBzYWtuYXIgZsO2cmZhdHRhcmh1dnVkIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3OQorIzogYnVpbHRpbi9jb21taXQuYzo2MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgaGFzIG1hbGZvcm1lZCBhdXRob3IgbGluZSIKIG1zZ3N0ciAiaW5jaGVja25pbmdlbiBcIiVzXCIgaGFyIGZlbGZvcm1hdGVyYXQgZsO2cmZhdHRhcmh1dnVkIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU5OAorIzogYnVpbHRpbi9jb21taXQuYzo2MjcKIG1zZ2lkICJtYWxmb3JtZWQgLS1hdXRob3IgcGFyYW1ldGVyIgogbXNnc3RyICJmZWxmb3JtYWQgXCItLWF1dGhvclwiLWZsYWdnYSIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2NTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjgwCiBtc2dpZCAiIgogInVuYWJsZSB0byBzZWxlY3QgYSBjb21tZW50IGNoYXJhY3RlciB0aGF0IGlzIG5vdCB1c2VkXG4iCiAiaW4gdGhlIGN1cnJlbnQgY29tbWl0IG1lc3NhZ2UiCkBAIC05NTk2LDM4ICsxMjM4NywzOCBAQAogImt1bmRlIGludGUgdsOkbGphIGV0dCBrb21tZW50YXJzdGVja2VuIHNvbSBpbnRlIGFudsOkbnRzXG4iCiAiaSBkZXQgYmVmaW50bGlnYSBpbmNoZWNrbmluZ3NtZWRkZWxhbmRldCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2ODcgYnVpbHRpbi9jb21taXQuYzo3MjAgYnVpbHRpbi9jb21taXQuYzoxMDQ5CisjOiBidWlsdGluL2NvbW1pdC5jOjcxOCBidWlsdGluL2NvbW1pdC5jOjc1MSBidWlsdGluL2NvbW1pdC5jOjEwOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvb2t1cCBjb21taXQgJXMiCiBtc2dzdHIgImt1bmRlIGludGUgc2zDpSB1cHAgaW5jaGVja25pbmdlbiAlcyIKIAotIzogYnVpbHRpbi9jb21taXQuYzo2OTkgYnVpbHRpbi9zaG9ydGxvZy5jOjMxNworIzogYnVpbHRpbi9jb21taXQuYzo3MzAgYnVpbHRpbi9zaG9ydGxvZy5jOjMxOQogIywgYy1mb3JtYXQKIG1zZ2lkICIocmVhZGluZyBsb2cgbWVzc2FnZSBmcm9tIHN0YW5kYXJkIGlucHV0KVxuIgogbXNnc3RyICIobMOkc2VyIGxvZ2dtZWRkZWxhbmRlIGZyw6VuIHN0YW5kYXJkIGluKVxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjcwMQorIzogYnVpbHRpbi9jb21taXQuYzo3MzIKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBsb2cgZnJvbSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBsb2dnIGZyw6VuIHN0YW5kYXJkIGluIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjcwNQorIzogYnVpbHRpbi9jb21taXQuYzo3MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZpbGUgJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBsb2dnZmlsZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjczNCBidWlsdGluL2NvbW1pdC5jOjc0MgorIzogYnVpbHRpbi9jb21taXQuYzo3NjcgYnVpbHRpbi9jb21taXQuYzo3ODMKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBTUVVBU0hfTVNHIgogbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIFNRVUFTSF9NU0ciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzM5CisjOiBidWlsdGluL2NvbW1pdC5jOjc3NAogbXNnaWQgImNvdWxkIG5vdCByZWFkIE1FUkdFX01TRyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBNRVJHRV9NU0ciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzkzCisjOiBidWlsdGluL2NvbW1pdC5jOjgzNAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBjb21taXQgdGVtcGxhdGUiCiBtc2dzdHIgImt1bmRlIGludGUgc2tyaXZhIGluY2hlY2tuaW5nc21hbGwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODExCisjOiBidWlsdGluL2NvbW1pdC5jOjg1MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC05NjQyLDcgKzEyNDMzLDcgQEAKICJcdCVzXG4iCiAib2NoIGbDtnJzw7ZrZXIgaWdlbi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MTYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTk2NTcsNyArMTI0NDgsNyBAQAogIlx0JXNcbiIKICJvY2ggZsO2cnPDtmtlciBpZ2VuLlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjgyOQorIzogYnVpbHRpbi9jb21taXQuYzo4NzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlBsZWFzZSBlbnRlciB0aGUgY29tbWl0IG1lc3NhZ2UgZm9yIHlvdXIgY2hhbmdlcy4gTGluZXMgc3RhcnRpbmdcbiIKQEAgLTk2NjcsNyArMTI0NTgsNyBAQAogIm1lZCBcIiVjXCIga29tbWVyIGlnbm9yZXJhcywgb2NoIGV0dCB0b210IG1lZGRlbGFuZGUgYXZicnl0ZXIgIgogImluY2hlY2tuaW5nZW4uXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODM3CisjOiBidWlsdGluL2NvbW1pdC5jOjg3OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgeW91ciBjaGFuZ2VzLiBMaW5lcyBzdGFydGluZ1xuIgpAQCAtOTY3OCwxNDggKzEyNDY5LDE0MCBAQAogIm1lZCBcIiVjXCIga29tbWVyIGJlaMOlbGxhczsgZHUga2FuIHNqw6RsdiB0YSBib3J0IGRlbSBvbSBkdSB2aWxsLlxuIgogIkV0dCB0b210IG1lZGRlbGFuZGUgYXZicnl0ZXIgaW5jaGVja25pbmdlbi5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4NTQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzQXV0aG9yOiAgICAlLipzIDwlLipzPiIKIG1zZ3N0ciAiJXNGw7ZyZmF0dGFyZTogJS4qcyA8JS4qcz4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODYyCisjOiBidWlsdGluL2NvbW1pdC5jOjkwNAogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0RhdGU6ICAgICAgJXMiCiBtc2dzdHIgIiVzRGF0dW06ICAgICAgJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODY5CisjOiBidWlsdGluL2NvbW1pdC5jOjkxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0NvbW1pdHRlcjogJS4qcyA8JS4qcz4iCiBtc2dzdHIgIiVzSW5jaGVja2FyZTogJS4qcyA8JS4qcz4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODg3CisjOiBidWlsdGluL2NvbW1pdC5jOjkyOQogbXNnaWQgIkNhbm5vdCByZWFkIGluZGV4IgogbXNnc3RyICJLYW4gaW50ZSBsw6RzYSBpbmRleGV0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjk1MworIzogYnVpbHRpbi9jb21taXQuYzo5OTcKIG1zZ2lkICJFcnJvciBidWlsZGluZyB0cmVlcyIKIG1zZ3N0ciAiRmVsIHZpZCBieWdnYW5kZSBhdiB0csOkZCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo5NjcgYnVpbHRpbi90YWcuYzoyNTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTAxMSBidWlsdGluL3RhZy5jOjI3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJQbGVhc2Ugc3VwcGx5IHRoZSBtZXNzYWdlIHVzaW5nIGVpdGhlciAtbSBvciAtRiBvcHRpb24uXG4iCiBtc2dzdHIgIkFuZ2UgbWVkZGVsYW5kZXQgZW4gYXYgZmxhZ2dvcm5hIC1tIGVsbGVyIC1GLlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwMTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA1NQogIywgYy1mb3JtYXQKIG1zZ2lkICItLWF1dGhvciAnJXMnIGlzIG5vdCAnTmFtZSA8ZW1haWw+JyBhbmQgbWF0Y2hlcyBubyBleGlzdGluZyBhdXRob3IiCiBtc2dzdHIgIiIKICItLWF1dGhvciAnJXMnIMOkciBpbnRlICdOYW1uIDxlcG9zdD4nIG9jaCBtYXRjaGFyIGluZ2VuIGJlZmludGxpZyBmw7ZyZmF0dGFyZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDI1CisjOiBidWlsdGluL2NvbW1pdC5jOjEwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBpZ25vcmVkIG1vZGUgJyVzJyIKIG1zZ3N0ciAiT2dpbHRpZ3QgaWdub3JlcmF0IGzDpGdlIFwiJXNcIiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDM5IGJ1aWx0aW4vY29tbWl0LmM6MTI3NgorIzogYnVpbHRpbi9jb21taXQuYzoxMDg3IGJ1aWx0aW4vY29tbWl0LmM6MTMyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHVudHJhY2tlZCBmaWxlcyBtb2RlICclcyciCiBtc2dzdHIgIk9naWx0aWd0IGzDpGdlIGbDtnIgb3Nww6VyYWRlIGZpbGVyOiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTA3NworIzogYnVpbHRpbi9jb21taXQuYzoxMTI3CiBtc2dpZCAiLS1sb25nIGFuZCAteiBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWxvbmcgb2NoIC16IMOkciBpbmtvbXBhdGlibGEiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTExMAorIzogYnVpbHRpbi9jb21taXQuYzoxMTcxCiBtc2dpZCAiVXNpbmcgYm90aCAtLXJlc2V0LWF1dGhvciBhbmQgLS1hdXRob3IgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiS2FuIGludGUgYW52w6RuZGEgYsOlZGUgLS1yZXNldC1hdXRob3Igb2NoIC0tYXV0aG9yIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMTkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MAogbXNnaWQgIllvdSBoYXZlIG5vdGhpbmcgdG8gYW1lbmQuIgogbXNnc3RyICJEdSBoYXIgaW5nZXQgYXR0IHV0w7ZrYS4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyMgorIzogYnVpbHRpbi9jb21taXQuYzoxMTgzCiBtc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UgLS0gY2Fubm90IGFtZW5kLiIKIG1zZ3N0ciAiRHUgw6RyIGkgbWl0dGVuIGF2IGVuIHNhbW1hbnNsYWduaW5nIC0tIGthbiBpbnRlIHV0w7ZrYS4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNAorIzogYnVpbHRpbi9jb21taXQuYzoxMTg1CiBtc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgY2hlcnJ5LXBpY2sgLS0gY2Fubm90IGFtZW5kLiIKIG1zZ3N0ciAiRHUgw6RyIGkgbWl0dGVuIGF2IGVuIGNoZXJyeS1waWNrIC0tIGthbiBpbnRlIHV0w7ZrYS4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNworIzogYnVpbHRpbi9jb21taXQuYzoxMTg4CiBtc2dpZCAiT3B0aW9ucyAtLXNxdWFzaCBhbmQgLS1maXh1cCBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAiRmxhZ2dvcm5hIC0tc3F1YXNoIG9jaCAtLWZpeHVwIGthbiBpbnRlIGFudsOkbmRhcyBzYW10aWRpZ3QiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEzNworIzogYnVpbHRpbi9jb21taXQuYzoxMTk4CiBtc2dpZCAiT25seSBvbmUgb2YgLWMvLUMvLUYvLS1maXh1cCBjYW4gYmUgdXNlZC4iCiBtc2dzdHIgIkVuZGFzdCBlbiBhdiAtYy8tQy8tRi8tLWZpeHVwIGthbiBhbnbDpG5kYXMuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIwMAogbXNnaWQgIk9wdGlvbiAtbSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCAtYy8tQy8tRi4iCiBtc2dzdHIgIkZsYWdnYW4gLW0ga2FuIGludGUga29tYmluZXJhcyBtZWQgLWMvLUMvLUYuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNDcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIwOAogbXNnaWQgIi0tcmVzZXQtYXV0aG9yIGNhbiBiZSB1c2VkIG9ubHkgd2l0aCAtQywgLWMgb3IgLS1hbWVuZC4iCiBtc2dzdHIgIi0tcmVzZXQtYXV0aG9yIGthbiBlbmRhc3QgYW52w6RuZGFzIG1lZCAtQywgLWMgZWxsZXIgLS1hbWVuZC4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE2NAorIzogYnVpbHRpbi9jb21taXQuYzoxMjI1CiBtc2dpZCAiT25seSBvbmUgb2YgLS1pbmNsdWRlLy0tb25seS8tLWFsbC8tLWludGVyYWN0aXZlLy0tcGF0Y2ggY2FuIGJlIHVzZWQuIgogbXNnc3RyICIiCiAiRW5kYXN0IGVuIGF2IC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIGthbiBhbnbDpG5kYXMuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNjYKLW1zZ2lkICJObyBwYXRocyB3aXRoIC0taW5jbHVkZS8tLW9ubHkgZG9lcyBub3QgbWFrZSBzZW5zZS4iCi1tc2dzdHIgIkR1IG3DpXN0ZSBhbmdlIHPDtmt2w6RnYXIgdGlsbHNhbW1hbnMgbWVkIC0taW5jbHVkZS8tLW9ubHkuIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjExODAgYnVpbHRpbi90YWcuYzo1NDYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIzMQogIywgYy1mb3JtYXQKLW1zZ2lkICJJbnZhbGlkIGNsZWFudXAgbW9kZSAlcyIKLW1zZ3N0ciAiRmVsYWt0aWd0IHN0w6RkbmluZ3Nsw6RnZSAlcyIKK21zZ2lkICJwYXRocyAnJXMgLi4uJyB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgInPDtmt2w6RnYXJuYSBcIiVzIC4uLlwiIG1lZCAtYSBnZXIgaW5nZW4gbWVuaW5nIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExODUKLW1zZ2lkICJQYXRocyB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgotbXNnc3RyICJLYW4gaW50ZSBhbmdlIHPDtmt2w6RnYXIgbWVkIC1hLiIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxMzExIGJ1aWx0aW4vY29tbWl0LmM6MTQ5NQorIzogYnVpbHRpbi9jb21taXQuYzoxMzYyIGJ1aWx0aW4vY29tbWl0LmM6MTUyNAogbXNnaWQgInNob3cgc3RhdHVzIGNvbmNpc2VseSIKIG1zZ3N0ciAidmlzYSBrb25jaXMgc3RhdHVzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTMgYnVpbHRpbi9jb21taXQuYzoxNDk3CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjQgYnVpbHRpbi9jb21taXQuYzoxNTI2CiBtc2dpZCAic2hvdyBicmFuY2ggaW5mb3JtYXRpb24iCiBtc2dzdHIgInZpc2EgaW5mb3JtYXRpb24gb20gZ3JlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzE1CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjYKIG1zZ2lkICJzaG93IHN0YXNoIGluZm9ybWF0aW9uIgogbXNnc3RyICJ2aXNhIGluZm9ybWF0aW9uIG9tIHN0YXNoIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTcgYnVpbHRpbi9jb21taXQuYzoxNDk5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjggYnVpbHRpbi9jb21taXQuYzoxNTI4CiBtc2dpZCAiY29tcHV0ZSBmdWxsIGFoZWFkL2JlaGluZCB2YWx1ZXMiCiBtc2dzdHIgImJlcsOka25hIGZ1bGxzdMOkbmRpZ2EgZsO2cmUtL2VmdGVyLXbDpHJkZW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxOQorIzogYnVpbHRpbi9jb21taXQuYzoxMzcwCiBtc2dpZCAidmVyc2lvbiIKIG1zZ3N0ciAidmVyc2lvbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzE5IGJ1aWx0aW4vY29tbWl0LmM6MTUwMSBidWlsdGluL3B1c2guYzo1NTgKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2MzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3MCBidWlsdGluL2NvbW1pdC5jOjE1MzAgYnVpbHRpbi9wdXNoLmM6NTQ5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjQzCiBtc2dpZCAibWFjaGluZS1yZWFkYWJsZSBvdXRwdXQiCiBtc2dzdHIgIm1hc2tpbmzDpHNiYXIgdXRkYXRhIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjIgYnVpbHRpbi9jb21taXQuYzoxNTAzCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzMgYnVpbHRpbi9jb21taXQuYzoxNTMyCiBtc2dpZCAic2hvdyBzdGF0dXMgaW4gbG9uZyBmb3JtYXQgKGRlZmF1bHQpIgogbXNnc3RyICJ2aXNhIHN0YXR1cyBpIGzDpW5ndCBmb3JtYXQgKHN0YW5kYXJkKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzI1IGJ1aWx0aW4vY29tbWl0LmM6MTUwNgorIzogYnVpbHRpbi9jb21taXQuYzoxMzc2IGJ1aWx0aW4vY29tbWl0LmM6MTUzNQogbXNnaWQgInRlcm1pbmF0ZSBlbnRyaWVzIHdpdGggTlVMIgogbXNnc3RyICJ0ZXJtaW5lcmEgcG9zdGVyIG1lZCBOVUwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNyBidWlsdGluL2NvbW1pdC5jOjEzMzEgYnVpbHRpbi9jb21taXQuYzoxNTA5Ci0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAwNyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMCBidWlsdGluL3JlYmFzZS5jOjkxMAotIzogYnVpbHRpbi90YWcuYzo0MDAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3OCBidWlsdGluL2NvbW1pdC5jOjEzODIgYnVpbHRpbi9jb21taXQuYzoxNTM4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1MyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTkgYnVpbHRpbi9yZWJhc2UuYzoxNTY5IHBhcnNlLW9wdGlvbnMuaDozMzYKIG1zZ2lkICJtb2RlIgogbXNnc3RyICJsw6RnZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzI4IGJ1aWx0aW4vY29tbWl0LmM6MTUwOQorIzogYnVpbHRpbi9jb21taXQuYzoxMzc5IGJ1aWx0aW4vY29tbWl0LmM6MTUzOAogbXNnaWQgInNob3cgdW50cmFja2VkIGZpbGVzLCBvcHRpb25hbCBtb2RlczogYWxsLCBub3JtYWwsIG5vLiAoRGVmYXVsdDogYWxsKSIKIG1zZ3N0ciAidmlzYSBvc3DDpXJhZGUgZmlsZXIsIHZhbGZyaWEgbMOkZ2VuOiBhbGwsIG5vcm1hbCwgbm8uIChTdGFuZGFyZDogYWxsKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzMyCisjOiBidWlsdGluL2NvbW1pdC5jOjEzODMKIG1zZ2lkICIiCiAic2hvdyBpZ25vcmVkIGZpbGVzLCBvcHRpb25hbCBtb2RlczogdHJhZGl0aW9uYWwsIG1hdGNoaW5nLCBuby4gKERlZmF1bHQ6ICIKICJ0cmFkaXRpb25hbCkiCkBAIC05ODI3LDExICsxMjYxMCwxMSBAQAogInZpc2EgaWdub3JlcmFkZSBmaWxlciwgdmFsZnJpYSBsw6RnZW46IHRyYWRpdGlvbmFsLCBtYXRjaGluZywgbm8gKFN0YW5kYXJkOiAiCiAidHJhZGl0aW9uYWwpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzQgcGFyc2Utb3B0aW9ucy5oOjE2NAorIzogYnVpbHRpbi9jb21taXQuYzoxMzg1IHBhcnNlLW9wdGlvbnMuaDoxOTIKIG1zZ2lkICJ3aGVuIgogbXNnc3RyICJuw6RyIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4NgogbXNnaWQgIiIKICJpZ25vcmUgY2hhbmdlcyB0byBzdWJtb2R1bGVzLCBvcHRpb25hbCB3aGVuOiBhbGwsIGRpcnR5LCB1bnRyYWNrZWQuICIKICIoRGVmYXVsdDogYWxsKSIKQEAgLTk4MzksMjUyICsxMjYyMiwyNTAgQEAKICJpZ25vcmVyYSDDpG5kcmluZ2FyIGkgdW5kZXJtb2R1bGVyLCB2YWxmcml0dCBuw6RyOiBhbGwsIGRpcnR5LCB1bnRyYWNrZWQuICIKICIoRGVmYXVsdDogYWxsKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM3CisjOiBidWlsdGluL2NvbW1pdC5jOjEzODgKIG1zZ2lkICJsaXN0IHVudHJhY2tlZCBmaWxlcyBpbiBjb2x1bW5zIgogbXNnc3RyICJ2aXNhIG9zcMOlcmFkZSBmaWxlciBpIHNwYWx0ZXIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMzOAorIzogYnVpbHRpbi9jb21taXQuYzoxMzg5CiBtc2dpZCAiZG8gbm90IGRldGVjdCByZW5hbWVzIgogbXNnc3RyICJkZXRla3RlcmEgaW50ZSBuYW1uw6RuZHJpbmdhciIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzQwCisjOiBidWlsdGluL2NvbW1pdC5jOjEzOTEKIG1zZ2lkICJkZXRlY3QgcmVuYW1lcywgb3B0aW9uYWxseSBzZXQgc2ltaWxhcml0eSBpbmRleCIKIG1zZ3N0ciAiZGV0ZWt0ZXJhIG5hbW7DpG5kcmluZ2FyLCBtw7ZqbGlnZW4gc8OkdHQgbGlraGV0c2luZGV4IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzNjAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQxMQogbXNnaWQgIlVuc3VwcG9ydGVkIGNvbWJpbmF0aW9uIG9mIGlnbm9yZWQgYW5kIHVudHJhY2tlZC1maWxlcyBhcmd1bWVudHMiCiBtc2dzdHIgIktvbWJpbmF0aW9uZW4gYXYgYXJndW1lbnQgZsO2ciBpZ25vcmVyYWRlIG9jaCBvc3DDpXJhZGUgZmlsZXIgc3TDtmRzIGVqIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NAogbXNnaWQgInN1cHByZXNzIHN1bW1hcnkgYWZ0ZXIgc3VjY2Vzc2Z1bCBjb21taXQiCiBtc2dzdHIgInVuZGVydHJ5Y2sgc2FtbWFuZmF0dG5pbmcgZWZ0ZXIgZnJhbWfDpW5nc3JpayBpbmNoZWNrbmluZyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDY2CisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTUKIG1zZ2lkICJzaG93IGRpZmYgaW4gY29tbWl0IG1lc3NhZ2UgdGVtcGxhdGUiCiBtc2dzdHIgInZpc2EgZGlmZiBpIG1hbGxlbiBmw7ZyIGluY2hlY2tuaW5nc21lZGRlbGFuZGV0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NwogbXNnaWQgIkNvbW1pdCBtZXNzYWdlIG9wdGlvbnMiCiBtc2dzdHIgIkFsdGVybmF0aXYgZsO2ciBpbmNoZWNrbmluZ3NtZWRkZWxhbmRlIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjkgYnVpbHRpbi9tZXJnZS5jOjI2MyBidWlsdGluL3RhZy5jOjM5NworIzogYnVpbHRpbi9jb21taXQuYzoxNDk4IGJ1aWx0aW4vbWVyZ2UuYzoyNzUgYnVpbHRpbi90YWcuYzo0MTQKIG1zZ2lkICJyZWFkIG1lc3NhZ2UgZnJvbSBmaWxlIgogbXNnc3RyICJsw6RzIG1lZGRlbGFuZGUgZnLDpW4gZmlsIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5OQogbXNnaWQgImF1dGhvciIKIG1zZ3N0ciAiZsO2cmZhdHRhcmUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MAorIzogYnVpbHRpbi9jb21taXQuYzoxNDk5CiBtc2dpZCAib3ZlcnJpZGUgYXV0aG9yIGZvciBjb21taXQiCiBtc2dzdHIgIsO2dmVyc3R5ciBmw7ZyZmF0dGFyZSBmw7ZyIGluY2hlY2tuaW5nZW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MSBidWlsdGluL2djLmM6NTE4CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDAgYnVpbHRpbi9nYy5jOjUzOAogbXNnaWQgImRhdGUiCiBtc2dzdHIgImRhdHVtIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMAogbXNnaWQgIm92ZXJyaWRlIGRhdGUgZm9yIGNvbW1pdCIKIG1zZ3N0ciAiw7Z2ZXJzdHlyIGRhdHVtIGbDtnIgaW5jaGVja25pbmdlbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcyIGJ1aWx0aW4vbWVyZ2UuYzoyNTkgYnVpbHRpbi9ub3Rlcy5jOjQwOQotIzogYnVpbHRpbi9ub3Rlcy5jOjU3MiBidWlsdGluL3RhZy5jOjM5NQotbXNnaWQgIm1lc3NhZ2UiCi1tc2dzdHIgIm1lZGRlbGFuZGUiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MgotbXNnaWQgImNvbW1pdCBtZXNzYWdlIgotbXNnc3RyICJpbmNoZWNrbmluZ3NtZWRkZWxhbmRlIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzMgYnVpbHRpbi9jb21taXQuYzoxNDc0IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NQotIzogYnVpbHRpbi9jb21taXQuYzoxNDc2IHJlZi1maWx0ZXIuaDo5MiBwYXJzZS1vcHRpb25zLmg6MjgwCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDIgYnVpbHRpbi9jb21taXQuYzoxNTAzIGJ1aWx0aW4vY29tbWl0LmM6MTUwNAorIzogYnVpbHRpbi9jb21taXQuYzoxNTA1IHBhcnNlLW9wdGlvbnMuaDozMjggcmVmLWZpbHRlci5oOjkyCiBtc2dpZCAiY29tbWl0IgogbXNnc3RyICJpbmNoZWNrbmluZyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDczCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDIKIG1zZ2lkICJyZXVzZSBhbmQgZWRpdCBtZXNzYWdlIGZyb20gc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAiw6V0ZXJhbnbDpG5kIG9jaCByZWRpZ2VyYSBtZWRkZWxhbmRlIGZyw6VuIGFuZ2l2ZW4gaW5jaGVja25pbmciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NAorIzogYnVpbHRpbi9jb21taXQuYzoxNTAzCiBtc2dpZCAicmV1c2UgbWVzc2FnZSBmcm9tIHNwZWNpZmllZCBjb21taXQiCiBtc2dzdHIgIsOldGVyYW52w6RuZCBtZWRkZWxhbmRlIGZyw6VuIGFuZ2l2ZW4gaW5jaGVja25pbmciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NQorIzogYnVpbHRpbi9jb21taXQuYzoxNTA0CiBtc2dpZCAidXNlIGF1dG9zcXVhc2ggZm9ybWF0dGVkIG1lc3NhZ2UgdG8gZml4dXAgc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAiIgogImFudsOkbmQgYXV0b3NxdWFzaC1mb3JtYXRlcmF0IG1lZGRlbGFuZGUgZsO2ciBhdHQgZml4YSBhbmdpdmVuIGluY2hlY2tuaW5nIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNQogbXNnaWQgInVzZSBhdXRvc3F1YXNoIGZvcm1hdHRlZCBtZXNzYWdlIHRvIHNxdWFzaCBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICIiCiAiYW52w6RuZCBhdXRvc3F1YXNoLWZvcm1hdGVyYXQgbWVkZGVsYW5kZSBmw7ZyIGF0dCBzbMOlIGlob3AgbWVkIGFuZ2l2ZW4gIgogImluY2hlY2tuaW5nIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNgogbXNnaWQgInRoZSBjb21taXQgaXMgYXV0aG9yZWQgYnkgbWUgbm93ICh1c2VkIHdpdGggLUMvLWMvLS1hbWVuZCkiCiBtc2dzdHIgImphZyDDpHIgbnUgZsO2cmZhdHRhcmUgYXYgaW5jaGVja25pbmdlbiAoYW52w6RuZHMgbWVkIC1DLy1jLy0tYW1lbmQpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzggYnVpbHRpbi9sb2cuYzoxNTIwIGJ1aWx0aW4vbWVyZ2UuYzoyNzYKLSM6IGJ1aWx0aW4vcHVsbC5jOjE1NSBidWlsdGluL3JldmVydC5jOjEwNgorIzogYnVpbHRpbi9jb21taXQuYzoxNTA3IGJ1aWx0aW4vbG9nLmM6MTYzNCBidWlsdGluL21lcmdlLmM6MjkwCisjOiBidWlsdGluL3B1bGwuYzoxNDQgYnVpbHRpbi9yZXZlcnQuYzoxMTAKIG1zZ2lkICJhZGQgU2lnbmVkLW9mZi1ieToiCiBtc2dzdHIgImzDpGdnIHRpbGwgU2lnbmVkLW9mZi1ieToiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3OQorIzogYnVpbHRpbi9jb21taXQuYzoxNTA4CiBtc2dpZCAidXNlIHNwZWNpZmllZCB0ZW1wbGF0ZSBmaWxlIgogbXNnc3RyICJhbnbDpG5kIGFuZ2l2ZW4gbWFsbGZpbCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDgwCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDkKIG1zZ2lkICJmb3JjZSBlZGl0IG9mIGNvbW1pdCIKIG1zZ3N0ciAidHZpbmdhIHJlZGlnZXJpbmcgYXYgaW5jaGVja25pbmciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MQotbXNnaWQgImRlZmF1bHQiCi1tc2dzdHIgInN0YW5kYXJkIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODEgYnVpbHRpbi90YWcuYzo0MDEKLW1zZ2lkICJob3cgdG8gc3RyaXAgc3BhY2VzIGFuZCAjY29tbWVudHMgZnJvbSBtZXNzYWdlIgotbXNnc3RyICJodXIgYmxhbmtzdGVnIG9jaCAja29tbWVudGFyZXIgc2thbGwgdGFzIGJvcnQgZnLDpW4gbWVkZGVsYW5kZSIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDgyCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTEKIG1zZ2lkICJpbmNsdWRlIHN0YXR1cyBpbiBjb21taXQgbWVzc2FnZSB0ZW1wbGF0ZSIKIG1zZ3N0ciAiaW5rbHVkZXJhIHN0YXR1cyBpIG1hbGxlbiBmw7ZyIGluY2hlY2tuaW5nc21lZGRlbGFuZGV0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODQgYnVpbHRpbi9tZXJnZS5jOjI3NCBidWlsdGluL3B1bGwuYzoxODUKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0Ci1tc2dpZCAiR1BHIHNpZ24gY29tbWl0IgotbXNnc3RyICJHUEctc2lnbmVyYSBpbmNoZWNrbmluZyIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDg3CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTYKIG1zZ2lkICJDb21taXQgY29udGVudHMgb3B0aW9ucyIKIG1zZ3N0ciAiQWx0ZXJuYXRpdiBmw7ZyIGluY2hlY2tuaW5nZW5zIGlubmVow6VsbCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTcKIG1zZ2lkICJjb21taXQgYWxsIGNoYW5nZWQgZmlsZXMiCiBtc2dzdHIgImNoZWNrYSBpbiBhbGxhIMOkbmRyYWRlIGZpbGVyIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxOAogbXNnaWQgImFkZCBzcGVjaWZpZWQgZmlsZXMgdG8gaW5kZXggZm9yIGNvbW1pdCIKIG1zZ3N0ciAibMOkZ2cgdGlsbCBhbmdpdm5hIGZpbGVyIHRpbGwgaW5kZXhldCBmw7ZyIGluY2hlY2tuaW5nIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxOQogbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGZpbGVzIgogbXNnc3RyICJsw6RnZyB0aWxsIGZpbGVyIGludGVyYWt0aXZ0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMAogbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGNoYW5nZXMiCiBtc2dzdHIgImzDpGdnIHRpbGwgw6RuZHJpbmdhciBpbnRlcmFrdGl2dCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDkyCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjEKIG1zZ2lkICJjb21taXQgb25seSBzcGVjaWZpZWQgZmlsZXMiCiBtc2dzdHIgImNoZWNrYSBlbmRhc3QgaW4gYW5naXZuYSBmaWxlciIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDkzCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjIKIG1zZ2lkICJieXBhc3MgcHJlLWNvbW1pdCBhbmQgY29tbWl0LW1zZyBob29rcyIKIG1zZ3N0ciAiZsO2cmJpZ8OlIHByZS1jb21taXQtIG9jaCBjb21taXQtbXNnLWtyb2thciIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDk0CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjMKIG1zZ2lkICJzaG93IHdoYXQgd291bGQgYmUgY29tbWl0dGVkIgogbXNnc3RyICJ2aXNhIHZhZCBzb20gc2t1bGxlIGNoZWNrYXMgaW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNworIzogYnVpbHRpbi9jb21taXQuYzoxNTM2CiBtc2dpZCAiYW1lbmQgcHJldmlvdXMgY29tbWl0IgogbXNnc3RyICJsw6RnZyB0aWxsIGbDtnJlZ8OlZW5kZSBpbmNoZWNrbmluZyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTA4CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MzcKIG1zZ2lkICJieXBhc3MgcG9zdC1yZXdyaXRlIGhvb2siCiBtc2dzdHIgImbDtnJiaWfDpSBwb3N0LXJld3JpdGUta3JvayIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTEzCisjOiBidWlsdGluL2NvbW1pdC5jOjE1NDQKIG1zZ2lkICJvayB0byByZWNvcmQgYW4gZW1wdHkgY2hhbmdlIgogbXNnc3RyICJvayBhdHQgcmVnaXN0cmVyYSBlbiB0b20gw6RuZHJpbmciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNQorIzogYnVpbHRpbi9jb21taXQuYzoxNTQ2CiBtc2dpZCAib2sgdG8gcmVjb3JkIGEgY2hhbmdlIHdpdGggYW4gZW1wdHkgbWVzc2FnZSIKIG1zZ3N0ciAib2sgYXR0IHJlZ2lzdHJlcmEgZW4gw6RuZHJpbmcgbWVkIHRvbXQgbWVkZGVsYW5kZSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE2MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29ycnVwdCBNRVJHRV9IRUFEIGZpbGUgKCVzKSIKIG1zZ3N0ciAiVHJhc2lnIE1FUkdFX0hFQUQtZmlsICglcykiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTU5NQorIzogYnVpbHRpbi9jb21taXQuYzoxNjI2CiBtc2dpZCAiY291bGQgbm90IHJlYWQgTUVSR0VfTU9ERSIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBNRVJHRV9NT0RFIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE2MTQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBjb21taXQgbWVzc2FnZTogJXMiCiBtc2dzdHIgImt1bmRlIGludGUgbMOkc2EgaW5jaGVja25pbmdzbWVkZGVsYW5kZTogJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTYyNQorIzogYnVpbHRpbi9jb21taXQuYzoxNjUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFib3J0aW5nIGNvbW1pdCBkdWUgdG8gZW1wdHkgY29tbWl0IG1lc3NhZ2UuXG4iCiBtc2dzdHIgIkF2YnJ5dGVyIHDDpSBncnVuZCBhdiB0b210IGluY2hlY2tuaW5nc21lZGRlbGFuZGUuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTYzMAorIzogYnVpbHRpbi9jb21taXQuYzoxNjU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkFib3J0aW5nIGNvbW1pdDsgeW91IGRpZCBub3QgZWRpdCB0aGUgbWVzc2FnZS5cbiIKIG1zZ3N0ciAiQXZicnl0ZXIgaW5jaGVja25pbmc7IG1lZGRlbGFuZGV0IGludGUgcmVkaWdlcmF0LlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE2NjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY5MQogbXNnaWQgIiIKICJyZXBvc2l0b3J5IGhhcyBiZWVuIHVwZGF0ZWQsIGJ1dCB1bmFibGUgdG8gd3JpdGVcbiIKICJuZXdfaW5kZXggZmlsZS4gQ2hlY2sgdGhhdCBkaXNrIGlzIG5vdCBmdWxsIGFuZCBxdW90YSBpc1xuIgotIm5vdCBleGNlZWRlZCwgYW5kIHRoZW4gXCJnaXQgcmVzZXQgSEVBRFwiIHRvIHJlY292ZXIuIgorIm5vdCBleGNlZWRlZCwgYW5kIHRoZW4gXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA6L1wiIHRvIHJlY292ZXIuIgogbXNnc3RyICIiCiAiYXJraXZldCBoYXIgdXBwZGF0ZXJhdHMsIG1lbiBrdW5kZSBpbnRlIHNrcml2YSBmaWxlblxuIgogIm5ld19pbmRleC4gS29udHJvbGxlcmEgYXR0IGRpc2tlbiBpbnRlIMOkciBmdWxsIG9jaFxuIgogImF0dCBrdm90ZW4gaW50ZSBoYXIgw7Z2ZXJza3JpZGl0cywgb2NoIGvDtnIgc2VkYW5cbiIKLSJcImdpdCByZXNldCBIRUFEXCIgZsO2ciBhdHQgw6V0ZXJzdMOkbGxhLiIKKyJcImdpdCByZXN0b3JlIC0tc3RhZ2VkIDovXCIgZsO2ciBhdHQgw6V0ZXJzdMOkbGxhLiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMAotbXNnaWQgImdpdCBjb21taXQtZ3JhcGggWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi1tc2dzdHIgImdpdCBjb21taXQtZ3JhcGggWy0tb2JqZWN0LWRpciA8b2Jqa2F0Pl0iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTEgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMwotbXNnaWQgImdpdCBjb21taXQtZ3JhcGggcmVhZCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKLW1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCByZWFkIFstLW9iamVjdC1kaXIgPG9iamthdD5dIgotCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTgKLW1zZ2lkICJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKLW1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgWy0tb2JqZWN0LWRpciA8b2Jqa2F0Pl0iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyOAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE3CiBtc2dpZCAiIgotImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tYXBwZW5kXSBbLS1yZWFjaGFibGV8LS0iCi0ic3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSIKKyJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1zaGFsbG93XSBbLS1bbm8tXXByb2dyZXNzXSIKIG1zZ3N0ciAiIgotImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8b2Jqa2F0Pl0gWy0tYXBwZW5kXSBbLS1yZWFjaGFibGV8LS0iCi0ic3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSIKKyJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmprYXQ+XSBbLS1zaGFsbG93XSBbLS1bbm8tXXByb2dyZXNzXSIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo0OCBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjc4Ci0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE5MCBidWlsdGluL2ZldGNoLmM6MTUzCi0jOiBidWlsdGluL2xvZy5jOjE1NDAKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTIgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMgorbXNnaWQgIiIKKyJnaXQgY29tbWl0LWdyYXBoIHdyaXRlIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIFstLWFwcGVuZHwtLXNwbGl0XSBbLS0iCisicmVhY2hhYmxlfC0tc3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSBbLS1bbm8tXXByb2dyZXNzXSA8c3BsaXQgb3B0aW9ucz4iCittc2dzdHIgIiIKKyJnaXQgY29tbWl0LWdyYXBoIHdyaXRlIFstLW9iamVjdC1kaXIgPG9iamthdD5dIFstLWFwcGVuZHwtLXNwbGl0XSBbLS0iCisicmVhY2hhYmxlfC0tc3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSBbLS1bbm8tXXByb2dyZXNzXSA8ZGVsbmluZ3MtZmxhZ2dvcj4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZpbmQgb2JqZWN0IGRpcmVjdG9yeSBtYXRjaGluZyAlcyIKK21zZ3N0ciAia3VuZGUgaW50ZSBoaXR0YSBvYmpla3RrYXRhbG9nIGbDtnIgJXMiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NjggYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjUKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjEwIGJ1aWx0aW4vZmV0Y2guYzoxNzkgYnVpbHRpbi9sb2cuYzoxNjU3CiBtc2dpZCAiZGlyIgogbXNnc3RyICJrYXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NDkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3OQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzMgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxOTEKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NjkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjYKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjExCiBtc2dpZCAiVGhlIG9iamVjdCBkaXJlY3RvcnkgdG8gc3RvcmUgdGhlIGdyYXBoIgotbXNnc3RyICJPYmpla3RrYXRhbG9nZW4gZMOkciBncmFmZW4gc2thbGwgbGFncmFzIgorbXNnc3RyICJPYmpla3RrYXRhbG9nZW4gZMOkciBncmFmZW4gc2thIGxhZ3JhcyIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzUKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzEKK21zZ2lkICJpZiB0aGUgY29tbWl0LWdyYXBoIGlzIHNwbGl0LCBvbmx5IHZlcmlmeSB0aGUgdGlwIGZpbGUiCittc2dzdHIgIm9tIGluY2hlY2tuaWduc2dyYWZlbiDDpHIgZGVsYWQsIGtvbnRyb2xsZXJhIGJhcmEgc3BldHNmaWxlbiIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo5NCB0L2hlbHBlci90ZXN0LXJlYWQtZ3JhcGguYzoyMworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgb3BlbiBjb21taXQtZ3JhcGggJyVzJyIKK21zZ3N0ciAiS3VuZGUgaW50ZSDDtnBwbmEgaW5jaGVja25pbmdzZ3JhZmVuIFwiJXNcIiIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjgKIG1zZ2lkICJzdGFydCB3YWxrIGF0IGFsbCByZWZzIgogbXNnc3RyICJzdGFydGEgdHJhdmVyc2VyaW5nIHZpZCBhbGxhIHJlZmVyZW5zZXIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM3CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzMAogbXNnaWQgInNjYW4gcGFjay1pbmRleGVzIGxpc3RlZCBieSBzdGRpbiBmb3IgY29tbWl0cyIKIG1zZ3N0ciAic8O2ayBwYWtldGluZGV4IGxpc3RhZGUgcMOlIHN0YW5kYXJkIGluIGVmdGVyIGluY2hlY2tuaW5nYXIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM5CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzMgogbXNnaWQgInN0YXJ0IHdhbGsgYXQgY29tbWl0cyBsaXN0ZWQgYnkgc3RkaW4iCiBtc2dzdHIgImLDtnJqYSBnw6UgZ2Vub20gaW5jaGVja25pbmdhciBsaXN0YWRlIHDDpSBzdGFuZGFyZCBpbiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDEKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM0CiBtc2dpZCAiaW5jbHVkZSBhbGwgY29tbWl0cyBhbHJlYWR5IGluIHRoZSBjb21taXQtZ3JhcGggZmlsZSIKIG1zZ3N0ciAidGEgbWVkIGFsbGEgaW5jaGVja25pbmdhciByZWRhbiBpIGZpbGVuIGNvbW1pdC1ncmFwaCIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNTAKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM3Cittc2dpZCAiYWxsb3cgd3JpdGluZyBhbiBpbmNyZW1lbnRhbCBjb21taXQtZ3JhcGggZmlsZSIKK21zZ3N0ciAidGlsbMOldCBza3JpdmEgZW4gaW5rcmVtZW50ZWxsIGluY2hlY2tuaW5nc2dyYWZmaWwiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM5IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTQzCittc2dpZCAibWF4aW11bSBudW1iZXIgb2YgY29tbWl0cyBpbiBhIG5vbi1iYXNlIHNwbGl0IGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAiIgorIm1heGltYWx0IGFudGFsIGluY2hlY2tuaW5nYXIgaSBlbiBkZWxhZCBpbmNoZWNraW5nc2dyYWYgc29tIGludGUgw6RyIGJhZCIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDEKK21zZ2lkICJtYXhpbXVtIHJhdGlvIGJldHdlZW4gdHdvIGxldmVscyBvZiBhIHNwbGl0IGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAibWF4aW1hbHQgZsO2cmjDpWxsYW5kZSBtZWxsYW4gdHbDpSBuaXbDpWVyIGF2IGVuIGRlbGFkIGluY2hlY2tuaW5nc2dyYWYiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTU5CiBtc2dpZCAidXNlIGF0IG1vc3Qgb25lIG9mIC0tcmVhY2hhYmxlLCAtLXN0ZGluLWNvbW1pdHMsIG9yIC0tc3RkaW4tcGFja3MiCiBtc2dzdHIgImFudsOkbmQgc29tIG1lc3QgZW4gYXYgLS1yZWFjaGFibGUsIC0tc3RkaW4tY29tbWl0IG9jaCAtLXN0ZGluLXBhY2tzIgogCkBAIC0xMDA5MiwyMDUgKzEyODczLDIxMSBAQAogbXNnaWQgImdpdCBjb25maWcgWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCBjb25maWcgWzxmbGFnZ29yPl0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTAzCisjOiBidWlsdGluL2NvbmZpZy5jOjEwNCBidWlsdGluL2Vudi0taGVscGVyLmM6MjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIC0tdHlwZSBhcmd1bWVudCwgJXMiCiBtc2dzdHIgIm9rw6RudCBhcmd1bWVudCBmw7ZyIC0tdHlwZSwgJXMiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTE1CisjOiBidWlsdGluL2NvbmZpZy5jOjExNgogbXNnaWQgIm9ubHkgb25lIHR5cGUgYXQgYSB0aW1lIgogbXNnc3RyICJlbmRhc3QgZW4gdHlwIMOldCBnw6VuZ2VuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNAorIzogYnVpbHRpbi9jb25maWcuYzoxMjUKIG1zZ2lkICJDb25maWcgZmlsZSBsb2NhdGlvbiIKIG1zZ3N0ciAiS29uZmlndXJhdGlvbnNmaWxlbnMgcGxhdHMiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTI1CisjOiBidWlsdGluL2NvbmZpZy5jOjEyNgogbXNnaWQgInVzZSBnbG9iYWwgY29uZmlnIGZpbGUiCiBtc2dzdHIgImFudsOkbmQgZ2xvYmFsIGtvbmZpZ3VyYXRpb25zZmlsIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNgorIzogYnVpbHRpbi9jb25maWcuYzoxMjcKIG1zZ2lkICJ1c2Ugc3lzdGVtIGNvbmZpZyBmaWxlIgogbXNnc3RyICJhbnbDpG5kIHN5c3RlbWV0cyBrb25maWd1cmF0aW9uc2ZpbCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI4CiBtc2dpZCAidXNlIHJlcG9zaXRvcnkgY29uZmlnIGZpbGUiCiBtc2dzdHIgImFudsOkbmQgYXJraXZldHMga29uZmlndXJhdGlvbnNmaWwiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTI4CisjOiBidWlsdGluL2NvbmZpZy5jOjEyOQogbXNnaWQgInVzZSBwZXItd29ya3RyZWUgY29uZmlnIGZpbGUiCiBtc2dzdHIgImFudsOkbmQgYXJiZXRza2F0YWxvZ2VucyBrb25maWd1cmF0aW9uc2ZpbCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMwCiBtc2dpZCAidXNlIGdpdmVuIGNvbmZpZyBmaWxlIgogbXNnc3RyICJhbnbDpG5kIGFuZ2l2ZW4ga29uZmlndXJhdGlvbnNmaWwiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTMwCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMQogbXNnaWQgImJsb2ItaWQiCiBtc2dzdHIgImJsb2ItaWQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTMwCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMQogbXNnaWQgInJlYWQgY29uZmlnIGZyb20gZ2l2ZW4gYmxvYiBvYmplY3QiCiBtc2dzdHIgImzDpHMga29uZmlndXJhdGlvbiBmcsOlbiBnaXZldCBibG9iLW9iamVrdCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMyCiBtc2dpZCAiQWN0aW9uIgogbXNnc3RyICLDhXRnw6RyZCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMzCiBtc2dpZCAiZ2V0IHZhbHVlOiBuYW1lIFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgImjDpG10YSB2w6RyZGU6IG5hbW4gW3bDpHJkZS1yZWd1dHRyXSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM0CiBtc2dpZCAiZ2V0IGFsbCB2YWx1ZXM6IGtleSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICJow6RtdGEgYWxsYSB2w6RyZGVuOiBueWNrZWwgW3bDpHJkZS1yZWd1dHRyXSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM1CiBtc2dpZCAiZ2V0IHZhbHVlcyBmb3IgcmVnZXhwOiBuYW1lLXJlZ2V4IFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgImjDpG10YSB2w6RyZGVuIGbDtnIgcmVndXR0cjogbmFtbi1yZWd1dHRyIFt2w6RyZGUtcmVndXR0cl0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM1CisjOiBidWlsdGluL2NvbmZpZy5jOjEzNgogbXNnaWQgImdldCB2YWx1ZSBzcGVjaWZpYyBmb3IgdGhlIFVSTDogc2VjdGlvblsudmFyXSBVUkwiCiBtc2dzdHIgImjDpG10YSB2w6RyZGUgc3BlY2lmaWt0IFVSTDplbjogc2VrdGlvblsudmFyXSBVUkwiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM2CisjOiBidWlsdGluL2NvbmZpZy5jOjEzNwogbXNnaWQgInJlcGxhY2UgYWxsIG1hdGNoaW5nIHZhcmlhYmxlczogbmFtZSB2YWx1ZSBbdmFsdWVfcmVnZXhdIgogbXNnc3RyICJlcnPDpHR0IGFsbGEgbW90c3ZhcmFuZGUgdmFyaWFibGVyOiBuYW1uIHbDpHJkZSBbdsOkcmRlLXJlZ3V0dHJdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNworIzogYnVpbHRpbi9jb25maWcuYzoxMzgKIG1zZ2lkICJhZGQgYSBuZXcgdmFyaWFibGU6IG5hbWUgdmFsdWUiCiBtc2dzdHIgImzDpGdnIHRpbGwgZW4gbnkgdmFyaWFiZWw6IG5hbW4gdsOkcmRlIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzOAorIzogYnVpbHRpbi9jb25maWcuYzoxMzkKIG1zZ2lkICJyZW1vdmUgYSB2YXJpYWJsZTogbmFtZSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICJ0YSBib3J0IGVuIHZhcmlhYmVsOiBuYW1uIFt2w6RyZGUtcmVndXR0cl0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM5CisjOiBidWlsdGluL2NvbmZpZy5jOjE0MAogbXNnaWQgInJlbW92ZSBhbGwgbWF0Y2hlczogbmFtZSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICJ0YSBib3J0IGFsbGEgdHLDpGZmYXI6IG5hbW4gW3bDpHJkZS1yZWd1dHRyXSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQxCiBtc2dpZCAicmVuYW1lIHNlY3Rpb246IG9sZC1uYW1lIG5ldy1uYW1lIgogbXNnc3RyICJieXQgbmFtbiBww6Ugc2VrdGlvbjogZ2FtbWFsdC1uYW1uIG55dHQtbmFtbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQyCiBtc2dpZCAicmVtb3ZlIGEgc2VjdGlvbjogbmFtZSIKIG1zZ3N0ciAidGEgYm9ydCBlbiBzZWt0aW9uOiBuYW1uIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0MgorIzogYnVpbHRpbi9jb25maWcuYzoxNDMKIG1zZ2lkICJsaXN0IGFsbCIKIG1zZ3N0ciAidmlzYSBhbGxhIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0MworIzogYnVpbHRpbi9jb25maWcuYzoxNDQKIG1zZ2lkICJvcGVuIGFuIGVkaXRvciIKIG1zZ3N0ciAiw7ZwcG5hIHRleHRyZWRpZ2VyaW5nc3Byb2dyYW0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ0CisjOiBidWlsdGluL2NvbmZpZy5jOjE0NQogbXNnaWQgImZpbmQgdGhlIGNvbG9yIGNvbmZpZ3VyZWQ6IHNsb3QgW2RlZmF1bHRdIgogbXNnc3RyICJoaXR0YSBkZW4gaW5zdMOkbGxkYSBmw6RyZ2VuOiBzbG90IFtkZWZhdWx0XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ2CiBtc2dpZCAiZmluZCB0aGUgY29sb3Igc2V0dGluZzogc2xvdCBbc3Rkb3V0LWlzLXR0eV0iCiBtc2dzdHIgImhpdHRhIGbDpHJnaW5zdMOkbGxuaW5nZW46IHNsb3QgW3N0ZG91dC1pcy10dHldIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NgorIzogYnVpbHRpbi9jb25maWcuYzoxNDcKIG1zZ2lkICJUeXBlIgogbXNnc3RyICJUeXAiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ3CisjOiBidWlsdGluL2NvbmZpZy5jOjE0OCBidWlsdGluL2Vudi0taGVscGVyLmM6MzgKIG1zZ2lkICJ2YWx1ZSBpcyBnaXZlbiB0aGlzIHR5cGUiCiBtc2dzdHIgInbDpHJkZXQgaGFyIGdpdml0cyBkZW5uYSB0eXAiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ4CisjOiBidWlsdGluL2NvbmZpZy5jOjE0OQogbXNnaWQgInZhbHVlIGlzIFwidHJ1ZVwiIG9yIFwiZmFsc2VcIiIKIG1zZ3N0ciAidsOkcmRldCDDpHIgXCJ0cnVlXCIgZWxsZXIgXCJmYWxzZVwiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0OQorIzogYnVpbHRpbi9jb25maWcuYzoxNTAKIG1zZ2lkICJ2YWx1ZSBpcyBkZWNpbWFsIG51bWJlciIKIG1zZ3N0ciAidsOkcmRldCDDpHIgZXR0IGRlY2ltYWx0IHRhbCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUxCiBtc2dpZCAidmFsdWUgaXMgLS1ib29sIG9yIC0taW50IgogbXNnc3RyICJ2w6RyZGV0IMOkciAtLWJvb2wgZWxsZXIgLS1pbnQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUxCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MgogbXNnaWQgInZhbHVlIGlzIGEgcGF0aCAoZmlsZSBvciBkaXJlY3RvcnkgbmFtZSkiCiBtc2dzdHIgInbDpHJkZXQgw6RyIGVuIHPDtmt2w6RnIChmaWwtIGVsbGVyIGthdGFsb2duYW1uKSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUzCiBtc2dpZCAidmFsdWUgaXMgYW4gZXhwaXJ5IGRhdGUiCiBtc2dzdHIgInbDpHJkZXQgw6RyIGV0dCB1dGfDpW5nc2RhdHVtIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1MworIzogYnVpbHRpbi9jb25maWcuYzoxNTQKIG1zZ2lkICJPdGhlciIKIG1zZ3N0ciAiQW5kcmEiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU0CisjOiBidWlsdGluL2NvbmZpZy5jOjE1NQogbXNnaWQgInRlcm1pbmF0ZSB2YWx1ZXMgd2l0aCBOVUwgYnl0ZSIKIG1zZ3N0ciAidGVybWluZXJhIHbDpHJkZW4gbWVkIE5VTC1ieXRlIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NQorIzogYnVpbHRpbi9jb25maWcuYzoxNTYKIG1zZ2lkICJzaG93IHZhcmlhYmxlIG5hbWVzIG9ubHkiCiBtc2dzdHIgInZpc2EgZW5kYXN0IHZhcmlhYmVsbmFtbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU3CiBtc2dpZCAicmVzcGVjdCBpbmNsdWRlIGRpcmVjdGl2ZXMgb24gbG9va3VwIgogbXNnc3RyICJyZXNwZWt0ZXJhIGlua2x1ZGVyaW5nc2RpcmVrdGl2IHZpZCB1cHBzbGFnIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NworIzogYnVpbHRpbi9jb25maWcuYzoxNTgKIG1zZ2lkICJzaG93IG9yaWdpbiBvZiBjb25maWcgKGZpbGUsIHN0YW5kYXJkIGlucHV0LCBibG9iLCBjb21tYW5kIGxpbmUpIgogbXNnc3RyICJ2aXNhIGtvbmZpZ3VyYXRpb25za8OkbGxhIChmaWwsIHN0YW5kYXJkIGluLCBibG9iLCBrb21tYW5kb3JhZCkiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU4CisjOiBidWlsdGluL2NvbmZpZy5jOjE1OQorbXNnaWQgInNob3cgc2NvcGUgb2YgY29uZmlnICh3b3JrdHJlZSwgbG9jYWwsIGdsb2JhbCwgc3lzdGVtLCBjb21tYW5kKSIKK21zZ3N0ciAiIgorInZpc2Egb21mw6VuZyBmw7ZyIGtvbmZpZ3VyYXRpb24gKGFyYmV0c2thdGFsb2csIGxva2FsdCwgZ2xvYmFsdCwgc3lzdGVtLCAiCisia29tbWFuZG8pIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE2MCBidWlsdGluL2Vudi0taGVscGVyLmM6NDAKIG1zZ2lkICJ2YWx1ZSIKIG1zZ3N0ciAidsOkcmRlIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1OAorIzogYnVpbHRpbi9jb25maWcuYzoxNjAKIG1zZ2lkICJ3aXRoIC0tZ2V0LCB1c2UgZGVmYXVsdCB2YWx1ZSB3aGVuIG1pc3NpbmcgZW50cnkiCiBtc2dzdHIgIm1lZCAtLWdldCwgYW52w6RuZCBzdGFuZGFyZHbDpHJkZSB2aWQgc2FrbmFkIHBvc3QiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTcxCisjOiBidWlsdGluL2NvbmZpZy5jOjE3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgJWQiCiBtc2dzdHIgImZlbCBhbnRhbCBhcmd1bWVudCwgc2t1bGxlIHZhcmEgJWQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTczCisjOiBidWlsdGluL2NvbmZpZy5jOjE3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgZnJvbSAlZCB0byAlZCIKIG1zZ3N0ciAiZmVsIGFudGFsIGFyZ3VtZW50LCBza3VsbGUgdmFyYSBmcsOlbiAlZCB0aWxsICVkIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjMwNworIzogYnVpbHRpbi9jb25maWcuYzozMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBrZXkgcGF0dGVybjogJXMiCiBtc2dzdHIgImZlbGFrdGlndCBueWNrZWxtw7Zuc3RlcjogJXMiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MzQzCisjOiBidWlsdGluL2NvbmZpZy5jOjM2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZm9ybWF0IGRlZmF1bHQgY29uZmlnIHZhbHVlOiAlcyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIGZvcm1hdGVyYSBzdGFuZGFyZGtvbmZpZ3VyYXRpb25zdsOkcmRlOiAlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0MDAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDE3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBwYXJzZSBjb2xvciAnJXMnIgogbXNnc3RyICJrYW4gaW50ZSB0b2xrYSBmw6RyZ2VuIFwiJXNcIiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0NDIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDU5CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGRlZmF1bHQgY29sb3IgdmFsdWUiCiBtc2dzdHIgImthbiBpbnRlIHRvbGthIHN0YW5kYXJkZsOkcmd2w6RyZGUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDk1IGJ1aWx0aW4vY29uZmlnLmM6NzQxCisjOiBidWlsdGluL2NvbmZpZy5jOjUxMiBidWlsdGluL2NvbmZpZy5jOjc2OAogbXNnaWQgIm5vdCBpbiBhIGdpdCBkaXJlY3RvcnkiCiBtc2dzdHIgImludGUgaSBlbiBnaXQta2F0YWxvZyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0OTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTE1CiBtc2dpZCAid3JpdGluZyB0byBzdGRpbiBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJza3JpdmEgdGlsbCBzdGFuZGFyZCBpbiBzdMO2ZHMgaW50ZSIKIAotIzogYnVpbHRpbi9jb25maWcuYzo1MDEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTE4CiBtc2dpZCAid3JpdGluZyBjb25maWcgYmxvYnMgaXMgbm90IHN1cHBvcnRlZCIKLW1zZ3N0ciAic2tyaXZhIGtvbmZpZ3VyYXRpb25zLWJsb2JhciBzdMO2ZHMgaW50ZSIKK21zZ3N0ciAic2tyaXZhIGtvbmZpZ3VyYXRpb25zLWJsb2JiYXIgc3TDtmRzIGludGUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NTg2CisjOiBidWlsdGluL2NvbmZpZy5jOjYwMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiIyBUaGlzIGlzIEdpdCdzIHBlci11c2VyIGNvbmZpZ3VyYXRpb24gZmlsZS5cbiIKQEAgLTEwMzA1LDIzICsxMzA5MiwyMyBAQAogIiNcdG5hbWUgPSAlc1xuIgogIiNcdGVtYWlsID0gJXNcbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MTAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjI3CiBtc2dpZCAib25seSBvbmUgY29uZmlnIGZpbGUgYXQgYSB0aW1lIgogbXNnc3RyICJlbmRhc3QgZW4ga29uZmlndXJhdGlvbnNmaWwgw6V0IGfDpW5nZW4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjE1CisjOiBidWlsdGluL2NvbmZpZy5jOjYzMgogbXNnaWQgIi0tbG9jYWwgY2FuIG9ubHkgYmUgdXNlZCBpbnNpZGUgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiLS1sb2NhbCBrYW4gYmFyYSBhbnbDpG5kYXMgaW51dGkgZXR0IGdpdC1hcmtpdiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjM1CiBtc2dpZCAiLS1ibG9iIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0tYmxvYiBrYW4gYmFyYSBhbnbDpG5kYXMgaW51dGkgZXR0IGdpdC1hcmtpdiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MzcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjU1CiBtc2dpZCAiJEhPTUUgbm90IHNldCIKIG1zZ3N0ciAiJEhPTUUgaW50ZSBzYXR0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjY1NworIzogYnVpbHRpbi9jb25maWcuYzo2NzkKIG1zZ2lkICIiCiAiLS13b3JrdHJlZSBjYW5ub3QgYmUgdXNlZCB3aXRoIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMgdW5sZXNzIHRoZSBjb25maWdcbiIKICJleHRlbnNpb24gd29ya3RyZWVDb25maWcgaXMgZW5hYmxlZC4gUGxlYXNlIHJlYWQgXCJDT05GSUdVUkFUSU9OIEZJTEVcIlxuIgpAQCAtMTAzMzEsNTIgKzEzMTE4LDUyIEBACiAia29uZmlndXJhdGlvbnN1dMO2a25pZ25lbiB3b3JrdHJlZUNvbmZpZyBoYXIgYWt0aXZlcmF0cy4gTMOkc2Egc3R5Y2tldFxuIgogIlwiS09ORklHVVJBVElPTlNGSUxcIiBpIFwiZ2l0IGhlbHAgd29ya3RyZWVcIiBmw7ZyIGRldGFsamVyIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjY4NworIzogYnVpbHRpbi9jb25maWcuYzo3MTQKIG1zZ2lkICItLWdldC1jb2xvciBhbmQgdmFyaWFibGUgdHlwZSBhcmUgaW5jb2hlcmVudCIKIG1zZ3N0ciAiLS1nZXQtY29sb3Igb2NoIHZhcmlhYmVsdHlwIHN0w6RtbWVyIGludGUgw7Z2ZXJlbnMiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjkyCisjOiBidWlsdGluL2NvbmZpZy5jOjcxOQogbXNnaWQgIm9ubHkgb25lIGFjdGlvbiBhdCBhIHRpbWUiCiBtc2dzdHIgImVuZGFzdCBlbiDDpXRnw6RyZCDDpXQgZ8OlbmdlbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MDUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzMyCiBtc2dpZCAiLS1uYW1lLW9ubHkgaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tbGlzdCBvciAtLWdldC1yZWdleHAiCiBtc2dzdHIgIi0tbmFtZS1vbmx5IGfDpGxsZXIgYmFyYSBmw7ZyIC0tbGlzdCBlbGxlciAtLWdldC1yZWdleHAiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzExCisjOiBidWlsdGluL2NvbmZpZy5jOjczOAogbXNnaWQgIiIKICItLXNob3ctb3JpZ2luIGlzIG9ubHkgYXBwbGljYWJsZSB0byAtLWdldCwgLS1nZXQtYWxsLCAtLWdldC1yZWdleHAsIGFuZCAtLSIKICJsaXN0IgogbXNnc3RyICIiCiAiLS1zaG93LW9yaWdpbiBnw6RsbGVyIGJhcmEgZsO2ciAtLWdldCwgLS1nZXQtYWxsLCAtLWdldC1yZWdleHAgb2NoIC0tbGlzdCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MTcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzQ0CiBtc2dpZCAiLS1kZWZhdWx0IGlzIG9ubHkgYXBwbGljYWJsZSB0byAtLWdldCIKIG1zZ3N0ciAiLS1kZWZhdWx0IGfDpGxsZXIgYmFyYSBmw7ZyIC0tZ2V0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjczMAorIzogYnVpbHRpbi9jb25maWcuYzo3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgY29uZmlnIGZpbGUgJyVzJyIKIG1zZ3N0ciAia2FuIGludGUga29uZmlndXJhdGlvbnNmaWwgXCIlc1wiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjczMworIzogYnVpbHRpbi9jb25maWcuYzo3NjAKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIGNvbmZpZyBmaWxlKHMpIgogbXNnc3RyICJmZWwgdmlkIGhhbnRlcmluZyBhdiBrb25maWd1cmF0aW9uc2ZpbChlcikiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzQzCisjOiBidWlsdGluL2NvbmZpZy5jOjc3MAogbXNnaWQgImVkaXRpbmcgc3RkaW4gaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAicmVkaWdlcmluZyBhdiBzdGFuZGFyZCBpbiBzdMO2ZHMgZWoiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzQ1CisjOiBidWlsdGluL2NvbmZpZy5jOjc3MgogbXNnaWQgImVkaXRpbmcgYmxvYnMgaXMgbm90IHN1cHBvcnRlZCIKLW1zZ3N0ciAicmVkaWdlcmluZyBhdiBibG9iYXIgc3TDtmRzIGVqIgorbXNnc3RyICJyZWRpZ2VyaW5nIGF2IGJsb2JiYXIgc3TDtmRzIGVqIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc1OQorIzogYnVpbHRpbi9jb25maWcuYzo3ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNyZWF0ZSBjb25maWd1cmF0aW9uIGZpbGUgJXMiCiBtc2dzdHIgImthbiBpbnRlIHNrYXBhIGtvbmZpZ3VyYXRpb25zZmlsZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc3MgorIzogYnVpbHRpbi9jb25maWcuYzo3OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNhbm5vdCBvdmVyd3JpdGUgbXVsdGlwbGUgdmFsdWVzIHdpdGggYSBzaW5nbGUgdmFsdWVcbiIKQEAgLTEwMzg1LDcgKzEzMTcyLDcgQEAKICJrYW4gaW50ZSBza3JpdmEgw7Z2ZXIgZmxlcmEgdsOkcmRlbiBtZWQgZXR0IGVuc2FtdCB2w6RyZGVcbiIKICIgICAgICAgQW52w6RuZCBlbiByZWdleHAsIC0tYWRkIGVsbGVyIC0tcmVwbGFjZS1hbGwgZsO2ciBhdHQgw6RuZHJhICVzLiIKIAotIzogYnVpbHRpbi9jb25maWcuYzo4NDYgYnVpbHRpbi9jb25maWcuYzo4NTcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6ODczIGJ1aWx0aW4vY29uZmlnLmM6ODg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggc2VjdGlvbjogJXMiCiBtc2dzdHIgImluZ2VuIHPDpWRhbiBzZWt0aW9uOiAlcyIKQEAgLTEwNDE4LDM4ICsxMzIwNSwzOCBAQAogbXNnaWQgImFubm90YXRlZCIKIG1zZ3N0ciAiYW5ub3RlcmFkIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MjcyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc1CiAjLCBjLWZvcm1hdAogbXNnaWQgImFubm90YXRlZCB0YWcgJXMgbm90IGF2YWlsYWJsZSIKIG1zZ3N0ciAiZGVuIGFubm90ZXJhZGUgdGFnZ2VuICVzIGludGUgdGlsbGfDpG5nbGlnIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc2CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImFubm90YXRlZCB0YWcgJXMgaGFzIG5vIGVtYmVkZGVkIG5hbWUiCiBtc2dzdHIgImRlbiBhbm5vdGVyYWRlIHRhZ2dlbiAlcyBoYXIgaW5nZXQgaW5iw6RkZGF0IG5hbW4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNzgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyODEKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFnICclcycgaXMgcmVhbGx5ICclcycgaGVyZSIKIG1zZ3N0ciAidGFnZ2VuIFwiJXNcIiDDpHIgaSB2ZXJrbGlnaGV0ZW4gXCIlc1wiIGjDpHIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gdGFnIGV4YWN0bHkgbWF0Y2hlcyAnJXMnIgogbXNnc3RyICJpbmdlbiB0YWdnIG1vdHN2YXJhciBcIiVzXCIgZXhha3QiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gZXhhY3QgbWF0Y2ggb24gcmVmcyBvciB0YWdzLCBzZWFyY2hpbmcgdG8gZGVzY3JpYmVcbiIKIG1zZ3N0ciAiIgogIkluZ2VuIGV4YWt0IHRyw6RmZiBtb3QgcmVmZXJlbnNlciBlbGxlciB0YWdnYXIsIHPDtmtlciBmw7ZyIGF0dCBiZXNrcml2YVxuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mzc4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mzk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZpbmlzaGVkIHNlYXJjaCBhdCAlc1xuIgogbXNnc3RyICJhdnNsdXRhZGUgc8O2a25pbmcgcMOlICVzXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MDQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vIGFubm90YXRlZCB0YWdzIGNhbiBkZXNjcmliZSAnJXMnLlxuIgpAQCAtMTA0NTgsNyArMTMyNDUsNyBAQAogIkluZ2EgYW5ub3RlcmFkZSB0YWdnYXIga2FuIGJlc2tyaXZhIFwiJXNcIi5cbiIKICJEZXQgZmlubnMgZG9jayBvYW5ub3RlcmFkZSB0YWdnYXI6IHRlc3RhIC0tdGFncy4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MDgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vIHRhZ3MgY2FuIGRlc2NyaWJlICclcycuXG4iCkBAIC0xMDQ2NywxMiArMTMyNTQsMTIgQEAKICJJbmdhIHRhZ2dhciBrYW4gYmVza3JpdmEgXCIlc1wiLlxuIgogIlRlc3RhIC0tYWx3YXlzLCBlbGxlciBza2FwYSBuw6VncmEgdGFnZ2FyLiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQzOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQ1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmF2ZXJzZWQgJWx1IGNvbW1pdHNcbiIKIG1zZ3N0ciAidHJhdmVyc2VyYWRlICVsdSBpbmNoZWNrbmluZ2FyXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NDEKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm1vcmUgdGhhbiAlaSB0YWdzIGZvdW5kOyBsaXN0ZWQgJWkgbW9zdCByZWNlbnRcbiIKQEAgLTEwNDgxLDExOCArMTMyNjgsMTE4IEBACiAibWVyIMOkbiAlaSB0YWdnYXIgaGl0dGFkZXM7IGxpc3RhciBkZSAlaSBzZW5hc3RlXG4iCiAiZ2F2IHVwcCBzw7ZrbmluZ2VuIHZpZCAlc1xuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTA5CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTI2CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlc2NyaWJlICVzXG4iCiBtc2dzdHIgImJlc2tyaXZhICVzXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MTIgYnVpbHRpbi9sb2cuYzo1MTMKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgb2JqZWN0IG5hbWUgJXMiCiBtc2dzdHIgIk9iamVrdG5hbW5ldCDDpHIgaW50ZSBnaWx0aWd0OiAlcyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyMAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBuZWl0aGVyIGEgY29tbWl0IG5vciBibG9iIgogbXNnc3RyICIlcyDDpHIgdmFya2VuIGluY2hlY2tuaW5nIGVsbGVyIGJsb2IiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTEKIG1zZ2lkICJmaW5kIHRoZSB0YWcgdGhhdCBjb21lcyBhZnRlciB0aGUgY29tbWl0IgogbXNnc3RyICJoaXR0YSB0YWdnZW4gc29tIGtvbW1lciBlZnRlciBpbmNoZWNrbmluZ2VuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM1CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUyCiBtc2dpZCAiZGVidWcgc2VhcmNoIHN0cmF0ZWd5IG9uIHN0ZGVyciIKIG1zZ3N0ciAiZmVsc8O2ayBzw7Zrc3RyYXRlZ2luIHDDpSBzdGFuZGFyZCBmZWwiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzYKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTMKIG1zZ2lkICJ1c2UgYW55IHJlZiIKIG1zZ3N0ciAiYW52w6RuZCBhbGxhIHJlZmVyZW5zZXIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzcKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTQKIG1zZ2lkICJ1c2UgYW55IHRhZywgZXZlbiB1bmFubm90YXRlZCIKIG1zZ3N0ciAiYW52w6RuZCBhbGxhIHRhZ2dhciwgw6R2ZW4gb2Fubm90ZXJhZGUiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTUKIG1zZ2lkICJhbHdheXMgdXNlIGxvbmcgZm9ybWF0IgogbXNnc3RyICJhbnbDpG5kIGFsbHRpZCBsw6VuZ3QgZm9ybWF0IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM5CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU2CiBtc2dpZCAib25seSBmb2xsb3cgZmlyc3QgcGFyZW50IgogbXNnc3RyICJmw7ZsaiBlbmRhc3QgZsO2cnN0YSBmw7Zyw6RsZGVybiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU0MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1OQogbXNnaWQgIm9ubHkgb3V0cHV0IGV4YWN0IG1hdGNoZXMiCiBtc2dzdHIgInNrcml2IGVuZGFzdCB1dCBleGFrdGEgdHLDpGZmYXIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjEKIG1zZ2lkICJjb25zaWRlciA8bj4gbW9zdCByZWNlbnQgdGFncyAoZGVmYXVsdDogMTApIgogbXNnc3RyICLDtnZlcnbDpGcgZGUgPG4+IG55YXN0ZSB0YWdnYXJuYSAoc3RhbmRhcmQ6IDEwKSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU0NgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2MwogbXNnaWQgIm9ubHkgY29uc2lkZXIgdGFncyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgIsO2dmVydsOkZyBlbmRhc3QgdGFnZ2FyIHNvbSBtb3RzdmFyYXIgPG3Dtm5zdGVyPiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU0OAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2NQogbXNnaWQgImRvIG5vdCBjb25zaWRlciB0YWdzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKIG1zZ3N0ciAiw7Z2ZXJ2w6RnIGludGUgdGFnZ2FyIHNvbSBtb3RzdmFyYXIgPG3Dtm5zdGVyPiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MCBidWlsdGluL25hbWUtcmV2LmM6NDI0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTY3IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzUKIG1zZ2lkICJzaG93IGFiYnJldmlhdGVkIGNvbW1pdCBvYmplY3QgYXMgZmFsbGJhY2siCiBtc2dzdHIgInZpc2EgZsO2cmtvcnRhZGUgaW5jaGVja25pbmdzb2JqZWt0IHNvbSBzdGFuZGFyZCIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MSBidWlsdGluL2Rlc2NyaWJlLmM6NTU0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTY4IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NzEKIG1zZ2lkICJtYXJrIgogbXNnc3RyICJtw6Rya2UiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjkKIG1zZ2lkICJhcHBlbmQgPG1hcms+IG9uIGRpcnR5IHdvcmtpbmcgdHJlZSAoZGVmYXVsdDogXCItZGlydHlcIikiCiBtc2dzdHIgImzDpGdnIHRpbGwgPG3DpHJrZT4gcMOlIGxvcnRpZ3QgYXJiZXRzdHLDpGQgKHN0YW5kYXJkOiBcIi1kaXJ0eVwiKSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU3MgogbXNnaWQgImFwcGVuZCA8bWFyaz4gb24gYnJva2VuIHdvcmtpbmcgdHJlZSAoZGVmYXVsdDogXCItYnJva2VuXCIpIgogbXNnc3RyICJsw6RnZyB0aWxsIDxtw6Rya2U+IHDDpSB0cmFzaWd0IGFyYmV0c3Ryw6RkIChzdGFuZGFyZDogXCItYnJva2VuXCIpIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTczCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTkwCiBtc2dpZCAiLS1sb25nIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWJicmV2PTAiCiBtc2dzdHIgIi0tbG9uZyDDpHIgaW5rb21wYXRpYmVsIG1lZCAtLWFiYnJldj0wIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NjAyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjE5CiBtc2dpZCAiTm8gbmFtZXMgZm91bmQsIGNhbm5vdCBkZXNjcmliZSBhbnl0aGluZy4iCiBtc2dzdHIgIkluZ2EgbmFtbiBoaXR0YWRlcywga2FuIGludGUgYmVza3JpdmEgbsOlZ290LiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjY1MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjY3MAogbXNnaWQgIi0tZGlydHkgaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgogbXNnc3RyICItLWRpcnR5IMOkciBpbmtvbXBhdGliZWx0IG1lZCBcImNvbW1pdC1pc2hcIi12w6RyZGVuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NjU0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjcyCiBtc2dpZCAiLS1icm9rZW4gaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgogbXNnc3RyICItLWJyb2tlbiDDpHIgaW5rb21wYXRpYmVsdCBtZWQgXCJjb21taXQtaXNoXCItdsOkcmRlbiIKIAotIzogYnVpbHRpbi9kaWZmLmM6ODMKKyM6IGJ1aWx0aW4vZGlmZi5jOjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IG5vdCBhIHJlZ3VsYXIgZmlsZSBvciBzeW1saW5rIgogbXNnc3RyICJcIiVzXCI6IGludGUgZW4gbm9ybWFsIGZpbCBlbGxlciBzeW1ib2xpc2sgbMOkbmsiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjIzNAorIzogYnVpbHRpbi9kaWZmLmM6MjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgb3B0aW9uOiAlcyIKIG1zZ3N0ciAib2dpbHRpZyBmbGFnZ2E6ICVzIgogCi0jOiBidWlsdGluL2RpZmYuYzozNjMKKyM6IGJ1aWx0aW4vZGlmZi5jOjM1MAogbXNnaWQgIk5vdCBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICJJbnRlIGV0dCBnaXQtYXJraXYiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjQwNworIzogYnVpbHRpbi9kaWZmLmM6Mzk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgb2JqZWN0ICclcycgZ2l2ZW4uIgogbXNnc3RyICJvYmpla3RldCBcIiVzXCIgc29tIGFuZ2F2cyDDpHIgZmVsYWt0aWd0LiIKIAotIzogYnVpbHRpbi9kaWZmLmM6NDE2CisjOiBidWlsdGluL2RpZmYuYzo0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9yZSB0aGFuIHR3byBibG9icyBnaXZlbjogJyVzJyIKIG1zZ3N0ciAibWVyIMOkbiB0dsOlIGJsb2JiYXIgYW5nYXZzOiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjQyMQorIzogYnVpbHRpbi9kaWZmLmM6NDA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuaGFuZGxlZCBvYmplY3QgJyVzJyBnaXZlbi4iCiBtc2dzdHIgImVqIGhhbnRlcmF0IG9iamVrdCBcIiVzXCIgYW5nYXZzLiIKQEAgLTEwNjMwLDUzICsxMzQxNyw1MyBAQAogImtvbWJpbmVyYWRlIGRpZmYtZm9ybWF0IChcIi1jXCIgb2NoIFwiLS1jY1wiKSBzdMO2ZHMgaW50ZSBpXG4iCiAia2F0YWxvZ2RpZmZsw6RnZSAoXCItZFwiIG9jaCBcIi0tZGlyLWRpZmZcIikuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjMzCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJvdGggZmlsZXMgbW9kaWZpZWQ6ICclcycgYW5kICclcycuIgogbXNnc3RyICJiw6RnZ2UgZmlsZXJuYSDDpG5kcmFkZTogXCIlc1wiIG9jaCBcIiVzXCIuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjM1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjM2CiBtc2dpZCAid29ya2luZyB0cmVlIGZpbGUgaGFzIGJlZW4gbGVmdC4iCiBtc2dzdHIgImZpbGVuIGkgYXJiZXRza2F0YWxvZ2VuIGzDpG1uYWRlcyBrdmFyLiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0NgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0ZW1wb3JhcnkgZmlsZXMgZXhpc3QgaW4gJyVzJy4iCiBtc2dzdHIgInRlbXBvcsOkcmEgZmlsZXIgZmlubnMgaSBcIiVzXCIuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ3CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ4CiBtc2dpZCAieW91IG1heSB3YW50IHRvIGNsZWFudXAgb3IgcmVjb3ZlciB0aGVzZS4iCiBtc2dzdHIgImR1IGthbnNrZSB2aWxsIHN0w6RkYSBlbGxlciByw6RkZGEgZGVtLiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5NgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5NwogbXNnaWQgInVzZSBgZGlmZi5ndWl0b29sYCBpbnN0ZWFkIG9mIGBkaWZmLnRvb2xgIgogbXNnc3RyICJhbnbDpG5kIFwiZGlmZi5ndWl0b29sXCIgaXN0w6RsbGV0IGbDtnIgXCJkaWZmLnRvb2xcIiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OQogbXNnaWQgInBlcmZvcm0gYSBmdWxsLWRpcmVjdG9yeSBkaWZmIgogbXNnc3RyICJ1dGbDtnIgZGlmZiBmw7ZyIGhlbGEga2F0YWxvZ2VuIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzAwCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzAxCiBtc2dpZCAiZG8gbm90IHByb21wdCBiZWZvcmUgbGF1bmNoaW5nIGEgZGlmZiB0b29sIgogbXNnc3RyICJmcsOlZ2EgaW50ZSB2aWQgc3RhcnQgYXYgZGlmZi12ZXJrdHlnIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzA1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzA2CiBtc2dpZCAidXNlIHN5bWxpbmtzIGluIGRpci1kaWZmIG1vZGUiCiBtc2dzdHIgImFudsOkbmQgc3ltYm9saXNrYSBsw6Rua2FyIGkga2F0YWxvZ2RpZmZsw6RnZSIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNwogbXNnaWQgInRvb2wiCiBtc2dzdHIgInZlcmt0eWciCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDcKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDgKIG1zZ2lkICJ1c2UgdGhlIHNwZWNpZmllZCBkaWZmIHRvb2wiCiBtc2dzdHIgImFudsOkbmQgYW5naXZldCBkaWZmLXZlcmt0eWciCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDkKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTAKIG1zZ2lkICJwcmludCBhIGxpc3Qgb2YgZGlmZiB0b29scyB0aGF0IG1heSBiZSB1c2VkIHdpdGggYC0tdG9vbGAiCi1tc2dzdHIgInZpc2EgZW4gbGlzdGEgw7Z2ZXIgZGlmZi12ZXJrdHlnIHNvbSBrYW4gYW52w6RuZGFzIG1lZCDigJ0tLXRvb2zigJ0iCittc2dzdHIgInZpc2EgZW4gbGlzdGEgw7Z2ZXIgZGlmZi12ZXJrdHlnIHNvbSBrYW4gYW52w6RuZGFzIG1lZCBcIi0tdG9vbFwiIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzEyCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEzCiBtc2dpZCAiIgogIm1ha2UgJ2dpdC1kaWZmdG9vbCcgZXhpdCB3aGVuIGFuIGludm9rZWQgZGlmZiB0b29sIHJldHVybnMgYSBub24gLSB6ZXJvIGV4aXQgIgogImNvZGUiCkBAIC0xMDY4NCwxNjAgKzEzNDcxLDI0NCBAQAogImzDpXQgXCJnaXQtZGlmZnRvb2xcIiBhdmJyeXRhIG7DpHIgZXR0IGFucm9wYXQgZGlmZi12ZXJrdHlnIGdlciByZXR1cnbDpHJkZSAiCiAic2tpbHQgZnLDpW4gbm9sbCIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxNQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxNgogbXNnaWQgInNwZWNpZnkgYSBjdXN0b20gY29tbWFuZCBmb3Igdmlld2luZyBkaWZmcyIKIG1zZ3N0ciAiYW5nZSBlZ2V0IGtvbW1hbmRvIGbDtnIgYXR0IHZpc2EgZGlmZmFyIgogCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE3Cittc2dpZCAicGFzc2VkIHRvIGBkaWZmYCIKK21zZ3N0ciAic8OkbmRlcyB0aWxsIFwiZGlmZlwiIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzMyCittc2dpZCAiZGlmZnRvb2wgcmVxdWlyZXMgd29ya3RyZWUgb3IgLS1uby1pbmRleCIKK21zZ3N0ciAiZGlmZnRvb2wga3LDpHZlciBlbiBhcmJldHNrYXRhbG9nIGVsbGVyIC0tbm8taW5kZXgiCisKICM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzkKK21zZ2lkICItLWRpci1kaWZmIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8taW5kZXgiCittc2dzdHIgIi0tZGlyLWRpZmYgw6RyIGlua29tcGF0aWJlbHQgbWVkIC0tbm8taW5kZXgiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDIKK21zZ2lkICItLWd1aSwgLS10b29sIGFuZCAtLWV4dGNtZCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICItLWd1aSwgLS10b29sIG9jaCAtLWV4dGNtZCDDpHIgw7Ztc2VzaWRpZ3QgdXRlc2x1dGFuZGUiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NTAKIG1zZ2lkICJubyA8dG9vbD4gZ2l2ZW4gZm9yIC0tdG9vbD08dG9vbD4iCiBtc2dzdHIgImluZ2V0IDx2ZXJrdHlnPiBhbmdhdnMgZsO2ciAtLXRvb2w9PHZlcmt0eWc+IgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzQ2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzU3CiBtc2dpZCAibm8gPGNtZD4gZ2l2ZW4gZm9yIC0tZXh0Y21kPTxjbWQ+IgogbXNnc3RyICJpbmdldCA8a29tbWFuZG8+IGFuZ2F2cyBmw7ZyIC0tZXh0Y21kPTxrb21tYW5kbz4iCiAKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo2Cittc2dpZCAiZ2l0IGVudi0taGVscGVyIC0tdHlwZT1bYm9vbHx1bG9uZ10gPG9wdGlvbnM+IDxlbnYtdmFyPiIKK21zZ3N0ciAiZ2l0IGVudi0taGVscGVyIC0tdHlwZT1bYm9vbHx1bG9uZ10gPGZsYWdnb3I+IDxtaWxqw7Z2YXJpYWJlbD4iCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzozNyBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKK21zZ2lkICJ0eXBlIgorbXNnc3RyICJ0eXAiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MQorbXNnaWQgImRlZmF1bHQgZm9yIGdpdF9lbnZfKiguLi4pIHRvIGZhbGwgYmFjayBvbiIKK21zZ3N0ciAic3RhbmRhcmQgZsO2ciBnaXRfZW52XyooLi4uKSBhdHQgZmFsbGEgdGlsbGJha2EgcMOlIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NDMKK21zZ2lkICJiZSBxdWlldCBvbmx5IHVzZSBnaXRfZW52XyooKSB2YWx1ZSBhcyBleGl0IGNvZGUiCittc2dzdHIgInZhciB0eXN0LCBhbnbDpG5kIGJhcmEgZ2l0X2Vudl8qKCkgc29tIHJlc3VsdGF0dsOkcmRlIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAtLWRlZmF1bHQnIGV4cGVjdHMgYSBib29sZWFuIHZhbHVlIHdpdGggYC0tdHlwZT1ib29sYCwgbm90IGAlc2AiCittc2dzdHIgIiIKKyJmbGFnZ2FuIFwiLS1kZWZhdWx0XCIgZsO2cnbDpG50YXIgZXR0IHNhbm5pbmdzdsOkcmRlIG1lZCBcIi0tdHlwZT1ib29sXCIsIGludGUgIgorIlwiJXNcIiIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvcHRpb24gYC0tZGVmYXVsdCcgZXhwZWN0cyBhbiB1bnNpZ25lZCBsb25nIHZhbHVlIHdpdGggYC0tdHlwZT11bG9uZ2AsIG5vdCBgIgorIiVzYCIKK21zZ3N0ciAiIgorImZsYWdnYW4gXCItLWRlZmF1bHRcIiBmw7ZydsOkbnRhciBldHQgdGVja2VubMO2c3QgbMOlbmd0IHbDpHJkZSBtZWQgXCItLXR5cGU9dWxvbmciCisiXCIsIGludGUgXCIlc1wiIgorCiAjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MjkKIG1zZ2lkICJnaXQgZmFzdC1leHBvcnQgW3Jldi1saXN0LW9wdHNdIgogbXNnc3RyICJnaXQgZmFzdC1leHBvcnQgW3Jldi1saXN0LWZsYWdnb3JdIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAwNgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjg1MworbXNnaWQgIkVycm9yOiBDYW5ub3QgZXhwb3J0IG5lc3RlZCB0YWdzIHVubGVzcyAtLW1hcmstdGFncyBpcyBzcGVjaWZpZWQuIgorbXNnc3RyICJGZWw6IEthbiBpbnRlIGV4cG9ydGVyYSBuw6RzdGxhZGUgdGFnZ2FyIHPDpXZpZGEgaW50ZSAtLW1hcmstdGFncyBhbmdlcy4iCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTUyCiBtc2dpZCAic2hvdyBwcm9ncmVzcyBhZnRlciA8bj4gb2JqZWN0cyIKIG1zZ3N0ciAidmlzYSBmw7ZybG9wcCBlZnRlciA8bj4gb2JqZWt0IgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAwOAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTQKIG1zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2Ygc2lnbmVkIHRhZ3MiCiBtc2dzdHIgInbDpGxqIGhhbnRlcmluZyBhdiBzaWduZXJhZGUgdGFnZ2FyIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMQorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTcKIG1zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2YgdGFncyB0aGF0IHRhZyBmaWx0ZXJlZCBvYmplY3RzIgogbXNnc3RyICJ2w6RsaiBoYW50ZXJpbmcgYXYgdGFnZ2FyIHNvbSBoYXIgdGFnZ2ZpbHRyZXJhZGUgb2JqZWt0IgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNAotbXNnaWQgIkR1bXAgbWFya3MgdG8gdGhpcyBmaWxlIgotbXNnc3RyICJEdW1wIG3DpHJrZW4gdGlsbCBmaWxlbiIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTYwCittc2dpZCAic2VsZWN0IGhhbmRsaW5nIG9mIGNvbW1pdCBtZXNzYWdlcyBpbiBhbiBhbHRlcm5hdGUgZW5jb2RpbmciCittc2dzdHIgInbDpGxqIGhhbnRlcmluZyBhdiBpbmNoZWNrbmluZ3NtZWRkZWxhbmRlbiBpIGFsdGVybmF0aXYgdGVja2Vua29kbmluZyIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTYKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTYzCittc2dpZCAiRHVtcCBtYXJrcyB0byB0aGlzIGZpbGUiCittc2dzdHIgIkR1bXBhIG3DpHJrZW4gdGlsbCBmaWxlbiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjUKIG1zZ2lkICJJbXBvcnQgbWFya3MgZnJvbSB0aGlzIGZpbGUiCiBtc2dzdHIgIkltcG9ydGVyYSBtw6Rya2VuIGZyw6VuIGZpbGVuIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxOAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjkKK21zZ2lkICJJbXBvcnQgbWFya3MgZnJvbSB0aGlzIGZpbGUgaWYgaXQgZXhpc3RzIgorbXNnc3RyICJJbXBvcnRlcmEgbcOkcmtlbiBmcsOlbiBmaWxlbiwgb20gZGVuIGZpbm5zIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3MQogbXNnaWQgIkZha2UgYSB0YWdnZXIgd2hlbiB0YWdzIGxhY2sgb25lIgogbXNnc3RyICJGZWprYSB0YWdnYXJlIG7DpHIgdGFnZ2VuIHNha25hciBlbiIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjAKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTczCiBtc2dpZCAiT3V0cHV0IGZ1bGwgdHJlZSBmb3IgZWFjaCBjb21taXQiCiBtc2dzdHIgIlNrcml2IHV0IGhlbGEgdHLDpGRldCBmw7ZyIHZhcmplIGluY2hlY2tuaW5nIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyMgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzUKIG1zZ2lkICJVc2UgdGhlIGRvbmUgZmVhdHVyZSB0byB0ZXJtaW5hdGUgdGhlIHN0cmVhbSIKIG1zZ3N0ciAiQW52w6RuZCBkb25lLWZ1bmt0aW9uZW4gZsO2ciBhdHQgYXZzbHV0YSBzdHLDtm1tZW4iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDIzCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NgogbXNnaWQgIlNraXAgb3V0cHV0IG9mIGJsb2IgZGF0YSIKIG1zZ3N0ciAiSG9wcGEgw7Z2ZXIgc2tyaXZuaW5nIGF2IGJsb2ItZGF0YSIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjQgYnVpbHRpbi9sb2cuYzoxNTg4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NyBidWlsdGluL2xvZy5jOjE3MDUKIG1zZ2lkICJyZWZzcGVjIgogbXNnc3RyICJyZWZlcmVuc3NwZWNpZmlrYXRpb24iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDI1CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3OAogbXNnaWQgIkFwcGx5IHJlZnNwZWMgdG8gZXhwb3J0ZWQgcmVmcyIKIG1zZ3N0ciAiQXBwbGljZXJhIHJlZmVyZW5zc3BlY2lmaWthdGlvbiBww6UgZXhwb3J0ZXJhZGUgcmVmZXJlbnNlciIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjYKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc5CiBtc2dpZCAiYW5vbnltaXplIG91dHB1dCIKIG1zZ3N0ciAiYW5vbnltaXNlcmEgdXRkYXRhIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MjgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTgxCittc2dpZCAiUmVmZXJlbmNlIHBhcmVudHMgd2hpY2ggYXJlIG5vdCBpbiBmYXN0LWV4cG9ydCBzdHJlYW0gYnkgb2JqZWN0IGlkIgorbXNnc3RyICJSZWZlcmVyYSBmw7Zyw6RsZHJhciBzb20gaW50ZSBmaW5ucyBpIGZhc3QtZXhwb3J0LXN0csO2bSBtZWQgb2JqZWt0LWlkIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE4MworbXNnaWQgIlNob3cgb3JpZ2luYWwgb2JqZWN0IGlkcyBvZiBibG9icy9jb21taXRzIgorbXNnc3RyICJWaXNhIHVyc3BydW5nbGlnYSBvYmpla3QtaWQgZsO2ciBibG9iYmFyL2luY2hlY2tuaW5nYXIiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTg1Cittc2dpZCAiTGFiZWwgdGFncyB3aXRoIG1hcmsgaWRzIgorbXNnc3RyICJNw6RyayB0YWdnYXIgbWVkIG3DpHJrZS1pZCIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEyMjAKK21zZ2lkICJDYW5ub3QgcGFzcyBib3RoIC0taW1wb3J0LW1hcmtzIGFuZCAtLWltcG9ydC1tYXJrcy1pZi1leGlzdHMiCittc2dzdHIgIkthbiBpbnRlIGFuZ2UgYsOlZGUgLS1pbXBvcnQtbWFya3Mgb2NoIC0taW1wb3J0LW1hcmtzLWlmLWV4aXN0cyIKKworIzogYnVpbHRpbi9mZXRjaC5jOjM0CiBtc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIFs8cmVwb3NpdG9yeT4gWzxyZWZzcGVjPi4uLl1dIgogbXNnc3RyICJnaXQgZmV0Y2ggWzxmbGFnZ29yPl0gWzxhcmtpdj4gWzxyZWZzcGVjPi4uLl1dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MjkKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNQogbXNnaWQgImdpdCBmZXRjaCBbPG9wdGlvbnM+XSA8Z3JvdXA+IgogbXNnc3RyICJnaXQgZmV0Y2ggWzxmbGFnZ29yPl0gPGdydXBwPiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjMwCisjOiBidWlsdGluL2ZldGNoLmM6MzYKIG1zZ2lkICJnaXQgZmV0Y2ggLS1tdWx0aXBsZSBbPG9wdGlvbnM+XSBbKDxyZXBvc2l0b3J5PiB8IDxncm91cD4pLi4uXSIKIG1zZ3N0ciAiZ2l0IGZldGNoIC0tbXVsdGlwbGUgWzxmbGFnZ29yPl0gWyg8YXJraXY+IHwgPGdydXBwPikuLi5dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MzEKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNwogbXNnaWQgImdpdCBmZXRjaCAtLWFsbCBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IGZldGNoIC0tYWxsIFs8ZmxhZ2dvcj5dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTE1IGJ1aWx0aW4vcHVsbC5jOjE5NAorIzogYnVpbHRpbi9mZXRjaC5jOjExNgorbXNnaWQgImZldGNoLnBhcmFsbGVsIGNhbm5vdCBiZSBuZWdhdGl2ZSIKK21zZ3N0ciAiZmV0Y2gucGFyYWxsZWwga2FuIGludGUgdmFyYSBuZWdhdGl2dCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjEzOSBidWlsdGluL3B1bGwuYzoxODQKIG1zZ2lkICJmZXRjaCBmcm9tIGFsbCByZW1vdGVzIgogbXNnc3RyICJow6RtdGEgZnLDpW4gYWxsYSBmasOkcnJhciIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExNyBidWlsdGluL3B1bGwuYzoxOTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDEgYnVpbHRpbi9wdWxsLmM6MjI4Cittc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9mZXRjaCIKK21zZ3N0ciAic3TDpGxsIGluIHVwcHN0csO2bSBmw7ZyIGdpdCBwdWxsL2ZldGNoIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzIGJ1aWx0aW4vcHVsbC5jOjE4NwogbXNnaWQgImFwcGVuZCB0byAuZ2l0L0ZFVENIX0hFQUQgaW5zdGVhZCBvZiBvdmVyd3JpdGluZyIKIG1zZ3N0ciAibMOkZ2cgdGlsbCBpIC5naXQvRkVUQ0hfSEVBRCBpc3TDpGxsZXQgZsO2ciBhdHQgc2tyaXZhIMO2dmVyIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTE5IGJ1aWx0aW4vcHVsbC5jOjIwMAorIzogYnVpbHRpbi9mZXRjaC5jOjE0NSBidWlsdGluL3B1bGwuYzoxOTAKIG1zZ2lkICJwYXRoIHRvIHVwbG9hZCBwYWNrIG9uIHJlbW90ZSBlbmQiCiBtc2dzdHIgInPDtmt2w6RnIHRpbGwgdXBsb2FkIHBhY2sgcMOlIGZqw6RycmVuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTIwCisjOiBidWlsdGluL2ZldGNoLmM6MTQ2CiBtc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGxvY2FsIHJlZmVyZW5jZSIKIG1zZ3N0ciAidHZpbmdhIMO2dmVyc2tyaXZuaW5nIGF2IGxva2FsIHJlZmVyZW5zIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTIyCisjOiBidWlsdGluL2ZldGNoLmM6MTQ4CiBtc2dpZCAiZmV0Y2ggZnJvbSBtdWx0aXBsZSByZW1vdGVzIgogbXNnc3RyICJow6RtdGEgZnLDpW4gZmxlcmEgZmrDpHJyYXIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMjQgYnVpbHRpbi9wdWxsLmM6MjA0CisjOiBidWlsdGluL2ZldGNoLmM6MTUwIGJ1aWx0aW4vcHVsbC5jOjE5NAogbXNnaWQgImZldGNoIGFsbCB0YWdzIGFuZCBhc3NvY2lhdGVkIG9iamVjdHMiCiBtc2dzdHIgImjDpG10YSBhbGxhIHRhZ2dhciBvY2ggYXNzb2NpZXJhZGUgb2JqZWt0IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI2CisjOiBidWlsdGluL2ZldGNoLmM6MTUyCiBtc2dpZCAiZG8gbm90IGZldGNoIGFsbCB0YWdzICgtLW5vLXRhZ3MpIgogbXNnc3RyICJow6RtdGEgaW50ZSBhbGxhIHRhZ2dhciAoLS1uby10YWdzKSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyOAorIzogYnVpbHRpbi9mZXRjaC5jOjE1NAogbXNnaWQgIm51bWJlciBvZiBzdWJtb2R1bGVzIGZldGNoZWQgaW4gcGFyYWxsZWwiCiBtc2dzdHIgImFudGFsIHVuZGVybW9kdWxlciBzb20gaMOkbXRhcyBwYXJhbGxlbGx0IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTMwIGJ1aWx0aW4vcHVsbC5jOjIwNworIzogYnVpbHRpbi9mZXRjaC5jOjE1NiBidWlsdGluL3B1bGwuYzoxOTcKIG1zZ2lkICJwcnVuZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMgbm8gbG9uZ2VyIG9uIHJlbW90ZSIKIG1zZ3N0ciAicmVuc2EgZmrDpHJyc3DDpXJhbmRlIGdyZW5hciBlaiBsw6RuZ3JlIHDDpSBmasOkcnJlbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzMgorIzogYnVpbHRpbi9mZXRjaC5jOjE1OAogbXNnaWQgInBydW5lIGxvY2FsIHRhZ3Mgbm8gbG9uZ2VyIG9uIHJlbW90ZSBhbmQgY2xvYmJlciBjaGFuZ2VkIHRhZ3MiCiBtc2dzdHIgIiIKICJyZW5zYSBsb2thbGEgdGFnZ2FyIGludGUgbMOkbmdyZSBww6UgZmrDpHJyZW4gb2NoIHNrcml2IMO2dmVyIMOkbmRyYWRlIHRhZ2dhciIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzMyBidWlsdGluL2ZldGNoLmM6MTU2IGJ1aWx0aW4vcHVsbC5jOjEzMgorIzogYnVpbHRpbi9mZXRjaC5jOjE1OSBidWlsdGluL2ZldGNoLmM6MTgyIGJ1aWx0aW4vcHVsbC5jOjEyMQogbXNnaWQgIm9uLWRlbWFuZCIKIG1zZ3N0ciAib24tZGVtYW5kIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTM0CisjOiBidWlsdGluL2ZldGNoLmM6MTYwCiBtc2dpZCAiY29udHJvbCByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyIKIG1zZ3N0ciAic3R5ciByZWt1cnNpdiBow6RtdG5pbmcgYXYgdW5kZXJtb2R1bGVyIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTM4IGJ1aWx0aW4vcHVsbC5jOjIxNQorIzogYnVpbHRpbi9mZXRjaC5jOjE2NCBidWlsdGluL3B1bGwuYzoyMDUKIG1zZ2lkICJrZWVwIGRvd25sb2FkZWQgcGFjayIKIG1zZ3N0ciAiYmVow6VsbCBow6RtdGFkZSBwYWtldCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0MAorIzogYnVpbHRpbi9mZXRjaC5jOjE2NgogbXNnaWQgImFsbG93IHVwZGF0aW5nIG9mIEhFQUQgcmVmIgogbXNnc3RyICJ0aWxsw6V0IHVwcGRhdGVyaW5nIGF2IEhFQUQtcmVmZXJlbnMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMgYnVpbHRpbi9mZXRjaC5jOjE0OSBidWlsdGluL3B1bGwuYzoyMTgKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjkgYnVpbHRpbi9mZXRjaC5jOjE3NSBidWlsdGluL3B1bGwuYzoyMDgKIG1zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IGNsb25lIgogbXNnc3RyICJmw7ZyZGp1cGEgaGlzdG9yaWsgZsO2ciBncnVuZCBrbG9uIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQ1CisjOiBidWlsdGluL2ZldGNoLmM6MTcxCiBtc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyByZXBvc2l0b3J5IGJhc2VkIG9uIHRpbWUiCiBtc2dzdHIgImbDtnJkanVwYSBoaXN0b3JpayBmw7ZyIGdydW5kIGtsb24gYmFzZXJhZCBww6UgdGlkIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTUxIGJ1aWx0aW4vcHVsbC5jOjIyMQorIzogYnVpbHRpbi9mZXRjaC5jOjE3NyBidWlsdGluL3B1bGwuYzoyMTEKIG1zZ2lkICJjb252ZXJ0IHRvIGEgY29tcGxldGUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAia29udmVydGVyYSB0aWxsIGtvbXBsZXR0IGFya2l2IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU0CisjOiBidWlsdGluL2ZldGNoLmM6MTgwCiBtc2dpZCAicHJlcGVuZCB0aGlzIHRvIHN1Ym1vZHVsZSBwYXRoIG91dHB1dCIKIG1zZ3N0ciAibMOkZ2cgdGlsbCBpIGLDtnJqYW4gYXYgdW5kZXJtb2R1bGVucyBzw7ZrdsOkZ3N1dGRhdGEiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODMKIG1zZ2lkICIiCiAiZGVmYXVsdCBmb3IgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMgKGxvd2VyIHByaW9yaXR5IHRoYW4gY29uZmlnICIKICJmaWxlcykiCkBAIC0xMDg0NSwxMDkgKzEzNzE2LDEzMyBAQAogInN0YW5kYXJkIGbDtnIgcmVrdXJzaXYgaMOkbXRuaW5nIGF2IHVuZGVybW9kdWxlciAobMOkZ3JlIHByaW9yaXRldCDDpG4gIgogImtvbmZpZ3VyYXRpb25zZmlsZXIpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYxIGJ1aWx0aW4vcHVsbC5jOjIyNAorIzogYnVpbHRpbi9mZXRjaC5jOjE4NyBidWlsdGluL3B1bGwuYzoyMTQKIG1zZ2lkICJhY2NlcHQgcmVmcyB0aGF0IHVwZGF0ZSAuZ2l0L3NoYWxsb3ciCiBtc2dzdHIgInRhciBlbW90IHJlZmVyZW5zZXIgc29tIHVwcGRhdGVyYXIgLmdpdC9zaGFsbG93IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYyIGJ1aWx0aW4vcHVsbC5jOjIyNgorIzogYnVpbHRpbi9mZXRjaC5jOjE4OCBidWlsdGluL3B1bGwuYzoyMTYKIG1zZ2lkICJyZWZtYXAiCiBtc2dzdHIgInJlZmVyZW5za2FydGEiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjMgYnVpbHRpbi9wdWxsLmM6MjI3CisjOiBidWlsdGluL2ZldGNoLmM6MTg5IGJ1aWx0aW4vcHVsbC5jOjIxNwogbXNnaWQgInNwZWNpZnkgZmV0Y2ggcmVmbWFwIgogbXNnc3RyICJhbmdlIHJlZmVyZW5za2FydGEgZsO2ciBcImZldGNoXCIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9scy1yZW1vdGUuYzo3NyBidWlsdGluL3B1c2guYzo1ODIKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTcyCi1tc2dpZCAic2VydmVyLXNwZWNpZmljIgotbXNnc3RyICJzZXJ2ZXJzcGVjaWZpayIKLQotIzogYnVpbHRpbi9mZXRjaC5jOjE2NCBidWlsdGluL2xzLXJlbW90ZS5jOjc3IGJ1aWx0aW4vcHVzaC5jOjU4MgotIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzMKLW1zZ2lkICJvcHRpb24gdG8gdHJhbnNtaXQiCi1tc2dzdHIgIiIKLSJpbmdldCBhdHQgY2hlY2thIGluXG4iCi0iZmxhZ2dhIGF0dCBzw6RuZGEiCi0KLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxOTYKIG1zZ2lkICJyZXBvcnQgdGhhdCB3ZSBoYXZlIG9ubHkgb2JqZWN0cyByZWFjaGFibGUgZnJvbSB0aGlzIG9iamVjdCIKIG1zZ3N0ciAicmFwcG9ydGVyYSBhdHQgdmkgYmFyYSBoYXIgb2JqZWt0IG7DpWJhcmEgZnLDpW4gZGV0dGEgb2JqZWt0ZXQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo0NzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxOTkKK21zZ2lkICJydW4gJ2djIC0tYXV0bycgYWZ0ZXIgZmV0Y2hpbmciCittc2dzdHIgImvDtnIgXCJnYyAtLWF1dG9cIiBlZnRlciBow6RtdG5pbmciCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoyMDEgYnVpbHRpbi9wdWxsLmM6MjI2Cittc2dpZCAiY2hlY2sgZm9yIGZvcmNlZC11cGRhdGVzIG9uIGFsbCB1cGRhdGVkIGJyYW5jaGVzIgorbXNnc3RyICJzZSBlZnRlciB0dmluZ2FkZSB1cHBkYXRlcmluZ2FyIGkgYWxsYSB1cHBkYXRlcmFkZSBncmVuYXIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoyMDMKK21zZ2lkICJ3cml0ZSB0aGUgY29tbWl0LWdyYXBoIGFmdGVyIGZldGNoaW5nIgorbXNnc3RyICJza3JpdiBpbmNoZWNraW5nc2dyYWZlbiBlZnRlciBow6RtdG5pbmciCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo1MTMKIG1zZ2lkICJDb3VsZG4ndCBmaW5kIHJlbW90ZSByZWYgSEVBRCIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBoaXR0YSBmasOkcnItcmVmZXJlbnNlbiBIRUFEIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NjA5CisjOiBidWlsdGluL2ZldGNoLmM6NjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbmZpZ3VyYXRpb24gZmV0Y2gub3V0cHV0IGNvbnRhaW5zIGludmFsaWQgdmFsdWUgJXMiCiBtc2dzdHIgImtvbmZpZ3VyYXRpb25lbiBmw7ZyIGZldGNoLm91dHB1dCBpbm5laMOlbGxlciBvZ2lsdGlndCB2w6RyZGUgJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MDIKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIG5vdCBmb3VuZCIKIG1zZ3N0ciAib2JqZWt0ZXQgJXMgaGl0dGFkZXMgaW50ZSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjcwNgorIzogYnVpbHRpbi9mZXRjaC5jOjc1NQogbXNnaWQgIlt1cCB0byBkYXRlXSIKIG1zZ3N0ciAiW8Ogam91cl0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MTkgYnVpbHRpbi9mZXRjaC5jOjczNSBidWlsdGluL2ZldGNoLmM6ODA3CisjOiBidWlsdGluL2ZldGNoLmM6NzY4IGJ1aWx0aW4vZmV0Y2guYzo3ODQgYnVpbHRpbi9mZXRjaC5jOjg1NgogbXNnaWQgIltyZWplY3RlZF0iCiBtc2dzdHIgIltyZWZ1c2VyYWRdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzIwCisjOiBidWlsdGluL2ZldGNoLmM6NzY5CiBtc2dpZCAiY2FuJ3QgZmV0Y2ggaW4gY3VycmVudCBicmFuY2giCiBtc2dzdHIgImthbiBpbnRlIGjDpG10YSBpIGFrdHVlbGwgZ3JlbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjczMAorIzogYnVpbHRpbi9mZXRjaC5jOjc3OQogbXNnaWQgIlt0YWcgdXBkYXRlXSIKIG1zZ3N0ciAiW3VwcGRhdGVyYWQgdGFnZ10iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MzEgYnVpbHRpbi9mZXRjaC5jOjc3MSBidWlsdGluL2ZldGNoLmM6Nzg3Ci0jOiBidWlsdGluL2ZldGNoLmM6ODAyCisjOiBidWlsdGluL2ZldGNoLmM6NzgwIGJ1aWx0aW4vZmV0Y2guYzo4MTcgYnVpbHRpbi9mZXRjaC5jOjgzOQorIzogYnVpbHRpbi9mZXRjaC5jOjg1MQogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgbG9jYWwgcmVmIgogbXNnc3RyICJrdW5kZSBpbnRlIHVwcGRhdGVyYSBsb2thbCByZWYiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MzUKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3ODQKIG1zZ2lkICJ3b3VsZCBjbG9iYmVyIGV4aXN0aW5nIHRhZyIKIG1zZ3N0ciAic2t1bGxlIHNrcml2YSDDtnZlciBiZWZpbnRsaWcgdGFnZyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjc1NworIzogYnVpbHRpbi9mZXRjaC5jOjgwNgogbXNnaWQgIltuZXcgdGFnXSIKIG1zZ3N0ciAiW255IHRhZ2ddIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzYwCisjOiBidWlsdGluL2ZldGNoLmM6ODA5CiBtc2dpZCAiW25ldyBicmFuY2hdIgogbXNnc3RyICJbbnkgZ3Jlbl0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3NjMKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MTIKIG1zZ2lkICJbbmV3IHJlZl0iCiBtc2dzdHIgIltueSByZWZdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODAyCisjOiBidWlsdGluL2ZldGNoLmM6ODUxCiBtc2dpZCAiZm9yY2VkIHVwZGF0ZSIKIG1zZ3N0ciAidHZpbmdhZCB1cHBkYXRlcmluZyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjgwNworIzogYnVpbHRpbi9mZXRjaC5jOjg1NgogbXNnaWQgIm5vbi1mYXN0LWZvcndhcmQiCiBtc2dzdHIgImVqIHNuYWJic3BvbGFkIgogCi0jOiBidWlsdGluL2ZldGNoLmM6ODUzCisjOiBidWlsdGluL2ZldGNoLmM6ODc3Cittc2dpZCAiIgorIkZldGNoIG5vcm1hbGx5IGluZGljYXRlcyB3aGljaCBicmFuY2hlcyBoYWQgYSBmb3JjZWQgdXBkYXRlLFxuIgorImJ1dCB0aGF0IGNoZWNrIGhhcyBiZWVuIGRpc2FibGVkLiBUbyByZS1lbmFibGUsIHVzZSAnLS1zaG93LWZvcmNlZC11cGRhdGVzJ1xuIgorImZsYWcgb3IgcnVuICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzIHRydWUnLiIKK21zZ3N0ciAiIgorIkZldGNoIHZpc2FyIG5vcm1hbHQgdmlsa2EgZ3JlbmFyIHNvbSB0dsOlbmdzdXBwZGF0ZXJhdHMsIG1lbiB0ZXN0ZXQgaGFyICIKKyJzbGFnaXRzXG4iCisiYXYuIEbDtnIgYXR0IHNsw6UgcMOlIGlnZW4sIGFudsOkbmQgZmxhZ2dhbiBcIi0tc2hvdy1mb3JjZWQtdXBkYXRlc1wiIGVsbGVyIGvDtnJcbiIKKyJcImdpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgdHJ1ZVwiLiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjg4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gY2hlY2sgZm9yY2VkIHVwZGF0ZXMuIFlvdSBjYW4gdXNlXG4iCisiJy0tbm8tc2hvdy1mb3JjZWQtdXBkYXRlcycgb3IgcnVuICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzICIKKyJmYWxzZSdcbiIKKyIgdG8gYXZvaWQgdGhpcyBjaGVjay5cbiIKK21zZ3N0ciAiIgorIkRldCB0b2cgJS4yZiBzZWt1bmRlciBhdHQgc2UgZWZ0ZXIgdHbDpW5nc3VwcGRhdGVyaW5nYXIuIER1IGthbiBhbnbDpG5kYVxuIgorIlwiLS1uby1zaG93LWZvcmNlZC11cGRhdGVzXCIgZWxsZXIga8O2cmEgXCJnaXQgY29uZmlnIGZldGNoLiIKKyJzaG93Rm9yY2VkVXBkYXRlc1xuIgorImZhbHNlXCIgZsO2ciBhdHQgdW5kdmlrYSB0ZXN0ZXQuXG4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo5MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZGlkIG5vdCBzZW5kIGFsbCBuZWNlc3Nhcnkgb2JqZWN0c1xuIgogbXNnc3RyICIlcyBzw6RuZGUgaW50ZSBhbGxhIG7DtmR2w6RuZGlnYSBvYmpla3RcbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjg3NAorIzogYnVpbHRpbi9mZXRjaC5jOjk0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWplY3QgJXMgYmVjYXVzZSBzaGFsbG93IHJvb3RzIGFyZSBub3QgYWxsb3dlZCB0byBiZSB1cGRhdGVkIgogbXNnc3RyICJhdnZpc2EgJXMgZMOlIGdydW5kYSByw7Z0dGVyIGludGUga2FuIHVwcGRhdGVyYXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo5NjMgYnVpbHRpbi9mZXRjaC5jOjEwODUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMDI2IGJ1aWx0aW4vZmV0Y2guYzoxMTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZyb20gJS4qc1xuIgogbXNnc3RyICJGcsOlbiAlLipzXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo5NzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMDM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJzb21lIGxvY2FsIHJlZnMgY291bGQgbm90IGJlIHVwZGF0ZWQ7IHRyeSBydW5uaW5nXG4iCkBAIC0xMDk1NiwxMjMgKzEzODUxLDE1NCBAQAogInZpc3NhIGxva2FsYSByZWZlcmVuc2VyIGt1bmRlIGludGUgdXBwZGF0ZXJhczsgdGVzdGEgYXR0IGvDtnJhXG4iCiAiIFwiZ2l0IHJlbW90ZSBwcnVuZSAlc1wiIGbDtnIgYXR0IHRhIGJvcnQgZ2FtbGEgZ3JlbmFyIHNvbSBzdMOlciBpIGtvbmZsaWt0IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA1NQorIzogYnVpbHRpbi9mZXRjaC5jOjExMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgKCVzIHdpbGwgYmVjb21lIGRhbmdsaW5nKSIKIG1zZ3N0ciAiICAgKCVzIGtvbW1lciBibGkgZGluZ2xhbmRlKSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwNTYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICglcyBoYXMgYmVjb21lIGRhbmdsaW5nKSIKIG1zZ3N0ciAiICAgKCVzIGhhciBibGl2aXQgZGluZ2xhbmRlKSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwODgKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTY3CiBtc2dpZCAiW2RlbGV0ZWRdIgogbXNnc3RyICJbYm9ydHRhZ2VuXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwODkgYnVpbHRpbi9yZW1vdGUuYzoxMDM2CisjOiBidWlsdGluL2ZldGNoLmM6MTE2OCBidWlsdGluL3JlbW90ZS5jOjExMTIKIG1zZ2lkICIobm9uZSkiCiBtc2dzdHIgIihpbmdlbikiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTEyCisjOiBidWlsdGluL2ZldGNoLmM6MTE5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBmZXRjaCBpbnRvIGN1cnJlbnQgYnJhbmNoICVzIG9mIG5vbi1iYXJlIHJlcG9zaXRvcnkiCiBtc2dzdHIgIlbDpGdyYXIgaMOkbXRhIHRpbGwgYWt0dWVsbCBncmVuICVzIGkgZXR0IGlja2UtbmFrZXQgYXJraXYiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTMxCisjOiBidWlsdGluL2ZldGNoLmM6MTIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJPcHRpb24gXCIlc1wiIHZhbHVlIFwiJXNcIiBpcyBub3QgdmFsaWQgZm9yICVzIgogbXNnc3RyICJGbGFnZ2FuIFwiJXNcIiBvY2ggdsOkcmRldCBcIiVzXCIgw6RyIGludGUgZ2lsdGlndCBmw7ZyICVzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTEzNAorIzogYnVpbHRpbi9mZXRjaC5jOjEyMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiT3B0aW9uIFwiJXNcIiBpcyBpZ25vcmVkIGZvciAlc1xuIgogbXNnc3RyICJGbGFnZ2FuIFwiJXNcIiBpZ25vcmVyYXMgZsO2ciAlc1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQzMworIzogYnVpbHRpbi9mZXRjaC5jOjE0MjEKK21zZ2lkICJtdWx0aXBsZSBicmFuY2hlcyBkZXRlY3RlZCwgaW5jb21wYXRpYmxlIHdpdGggLS1zZXQtdXBzdHJlYW0iCittc2dzdHIgImZsZXJhIGdyZW5hciB1cHB0w6Rja3RlcywgaW5rb21wYXRpYmVsdCBtZWQgLS1zZXQtdXBzdHJlYW0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDM2Cittc2dpZCAibm90IHNldHRpbmcgdXBzdHJlYW0gZm9yIGEgcmVtb3RlIHJlbW90ZS10cmFja2luZyBicmFuY2giCittc2dzdHIgInN0w6RsbGVyIGludGUgaW4gdXBwc3Ryw7Ztc2dyZW4gZsO2ciBlbiBmasOkcnJzcMOlcmFuZGUgZ3JlbiBww6UgZmrDpHJyZW4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDM4Cittc2dpZCAibm90IHNldHRpbmcgdXBzdHJlYW0gZm9yIGEgcmVtb3RlIHRhZyIKK21zZ3N0ciAic3TDpGxsZXIgaW50ZSBpbiB1cHBzdHLDtm0gZsO2ciBlbiBmasOkcnJ0YWciCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDQwCittc2dpZCAidW5rbm93biBicmFuY2ggdHlwZSIKK21zZ3N0ciAib2vDpG5kIGdyZW50eXAiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDQyCittc2dpZCAiIgorIm5vIHNvdXJjZSBicmFuY2ggZm91bmQuXG4iCisieW91IG5lZWQgdG8gc3BlY2lmeSBleGFjdGx5IG9uZSBicmFuY2ggd2l0aCB0aGUgLS1zZXQtdXBzdHJlYW0gb3B0aW9uLiIKK21zZ3N0ciAiIgorImhpdHRhZGUgaW5nZW4ga8OkbGxncmVuLlxuIgorImR1IG3DpXN0ZSBhbmdlIGV4YWt0IGVuIGdyZW4gbWVkIGZsYWdnYW4gLS1zZXQtdXBzdHJlYW0uIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTU2OCBidWlsdGluL2ZldGNoLmM6MTYzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJGZXRjaGluZyAlc1xuIgogbXNnc3RyICJIw6RtdGFyICVzXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDM1IGJ1aWx0aW4vcmVtb3RlLmM6MTAwCisjOiBidWlsdGluL2ZldGNoLmM6MTU3OCBidWlsdGluL2ZldGNoLmM6MTYzMyBidWlsdGluL3JlbW90ZS5jOjEwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmV0Y2ggJXMiCiBtc2dzdHIgIkt1bmRlIGludGUgaMOkbXRhICVzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQ4MSBidWlsdGluL2ZldGNoLmM6MTY0OQotbXNnaWQgIiIKLSItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdpdGggdGhlIHJlbW90ZSBjb25maWd1cmVkIGluIGNvcmUucGFydGlhbENsb25lIgotbXNnc3RyICIiCi0iLS1maWx0ZXIga2FuIGVuZGFzdCBhbnbDpG5kYXMgbWVkIGZqw6RycmVuIGtvbmZpZ3VyZXJhZCBpIGNvcmUucGFydGlhbENsb25lIgorIzogYnVpbHRpbi9mZXRjaC5jOjE1OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZldGNoICclcycgKGV4aXQgY29kZTogJWQpXG4iCittc2dzdHIgImt1bmRlIGludGUgaMOkbXRhIFwiJXNcIiAoZmVsa29kOiAlZClcbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1MDQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjkzCiBtc2dpZCAiIgogIk5vIHJlbW90ZSByZXBvc2l0b3J5IHNwZWNpZmllZC4gIFBsZWFzZSwgc3BlY2lmeSBlaXRoZXIgYSBVUkwgb3IgYVxuIgogInJlbW90ZSBuYW1lIGZyb20gd2hpY2ggbmV3IHJldmlzaW9ucyBzaG91bGQgYmUgZmV0Y2hlZC4iCiBtc2dzdHIgIiIKICJJbmdldCBmasOkcnJhcmtpdiBhbmdhdnMuIEFuZ2UgYW50aW5nZW4gZW4gVVJMIGVsbGVyIG5hbW5ldCBww6UgZXR0XG4iCi0iZmrDpHJyYXJraXYgc29tIG55YSBpbmNoZWNrbmluZ2FyIHNrYWxsIGjDpG10YXMgZnLDpW4uIgorImZqw6RycmFya2l2IHNvbSBueWEgaW5jaGVja25pbmdhciBza2EgaMOkbXRhcyBmcsOlbi4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQxCisjOiBidWlsdGluL2ZldGNoLmM6MTczMAogbXNnaWQgIllvdSBuZWVkIHRvIHNwZWNpZnkgYSB0YWcgbmFtZS4iCiBtc2dzdHIgIkR1IG3DpXN0ZSBhbmdlIG5hbW5ldCBww6UgZW4gdGFnZy4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTkwCisjOiBidWlsdGluL2ZldGNoLmM6MTc4MAogbXNnaWQgIk5lZ2F0aXZlIGRlcHRoIGluIC0tZGVlcGVuIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgIk5lZ2F0aXZhIGRqdXAgc3TDtmRzIGludGUgaSAtLWRlZXBlbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzgyCiBtc2dpZCAiLS1kZWVwZW4gYW5kIC0tZGVwdGggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLS1kZWVwZW4gb2NoIC0tZGVwdGggw6RyIMO2bXNlc2lkaWd0IHV0ZXNsdXRhbmRlIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU5NworIzogYnVpbHRpbi9mZXRjaC5jOjE3ODcKIG1zZ2lkICItLWRlcHRoIGFuZCAtLXVuc2hhbGxvdyBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAiLS1kZXB0aCBvY2ggLS11bnNoYWxsb3cga2FuIGludGUgYW52w6RuZGFzIHNhbXRpZGlndCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTkKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzg5CiBtc2dpZCAiLS11bnNoYWxsb3cgb24gYSBjb21wbGV0ZSByZXBvc2l0b3J5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tdW5zaGFsbG93IGthbiBpbnRlIGFudsOkbmRhcyBww6UgZXR0IGtvbXBsZXR0IGFya2l2IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYxNQorIzogYnVpbHRpbi9mZXRjaC5jOjE4MDUKIG1zZ2lkICJmZXRjaCAtLWFsbCBkb2VzIG5vdCB0YWtlIGEgcmVwb3NpdG9yeSBhcmd1bWVudCIKIG1zZ3N0ciAiZmV0Y2ggLS1hbGwgdGFyIGludGUgbmFtbmV0IHDDpSBldHQgYXJraXYgc29tIGFyZ3VtZW50IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYxNworIzogYnVpbHRpbi9mZXRjaC5jOjE4MDcKIG1zZ2lkICJmZXRjaCAtLWFsbCBkb2VzIG5vdCBtYWtlIHNlbnNlIHdpdGggcmVmc3BlY3MiCiBtc2dzdHIgImZldGNoIC0tYWxsIGthbiBpbnRlIGFuZ2VzIG1lZCByZWZlcmVuc3NwZWNpZmlrYXRpb25lciIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MjYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVtb3RlIG9yIHJlbW90ZSBncm91cDogJXMiCiBtc2dzdHIgIkZqw6RycmVuIGVsbGVyIGZqw6RycmdydXBwZW4gZmlubnMgaW50ZTogJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjMzCisjOiBidWlsdGluL2ZldGNoLmM6MTgyMwogbXNnaWQgIkZldGNoaW5nIGEgZ3JvdXAgYW5kIHNwZWNpZnlpbmcgcmVmc3BlY3MgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiS2FuIGludGUgaMOkbXRhIGZyw6VuIGdydXBwIG9jaCBhbmdlIHJlZmVyZW5zc3BlY2lmaWthdGlvbmVyIgogCisjOiBidWlsdGluL2ZldGNoLmM6MTg0MQorbXNnaWQgIiIKKyItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdpdGggdGhlIHJlbW90ZSBjb25maWd1cmVkIGluIGV4dGVuc2lvbnMuIgorInBhcnRpYWxjbG9uZSIKK21zZ3N0ciAiIgorIi0tZmlsdGVyIGthbiBlbmRhc3QgYW52w6RuZGFzIG1lZCBmasOkcnJlbiBrb25maWd1cmVyYWQgaSBleHRlbnNpb25zLiIKKyJwYXJ0aWFsY2xvbmUiCisKICM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjE4CiBtc2dpZCAiIgogImdpdCBmbXQtbWVyZ2UtbXNnIFstbSA8bWVzc2FnZT5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlIDxmaWxlPl0iCiBtc2dzdHIgIiIKICJnaXQgZm10LW1lcmdlLW1zZyBbLW0gPG1lZGRlbGFuZGU+XSBbLS1sb2dbPTxuPl0gfCAtLW5vLWxvZ10gWy0tZmlsZSA8ZmlsPl0iCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MgorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcxCiBtc2dpZCAicG9wdWxhdGUgbG9nIHdpdGggYXQgbW9zdCA8bj4gZW50cmllcyBmcm9tIHNob3J0bG9nIgogbXNnc3RyICJmeWxsIGkgbG9nZ2VuIG1lZCBzb20gbWVzdCA8bj4gcG9zdGVyIGZyw6VuIHNob3J0bG9nIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzUKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NAogbXNnaWQgImFsaWFzIGZvciAtLWxvZyAoZGVwcmVjYXRlZCkiCiBtc2dzdHIgImFsaWFzIGbDtnIgLS1sb2cgKGF2csOlZHMpIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzgKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NwogbXNnaWQgInRleHQiCiBtc2dzdHIgInRleHQiCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc4CiBtc2dpZCAidXNlIDx0ZXh0PiBhcyBzdGFydCBvZiBtZXNzYWdlIgogbXNnc3RyICJpbmxlZCBtZWRkZWxhbmRlIG1lZCA8dGV4dD4iCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY4MAorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc5CiBtc2dpZCAiZmlsZSB0byByZWFkIGZyb20iCiBtc2dzdHIgImZpbCBhdHQgbMOkc2EgZnLDpW4iCiAKQEAgLTExMTEzLDkzICsxNDAzOSwyNzggQEAKIG1zZ2lkICJzaG93IG9ubHkgPG4+IG1hdGNoZWQgcmVmcyIKIG1zZ3N0ciAidmlzYSBlbmRhc3QgPG4+IHRyw6RmZmFkZSByZWZzIgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM5IGJ1aWx0aW4vdGFnLmM6NDI0CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM5IGJ1aWx0aW4vdGFnLmM6NDM5CiBtc2dpZCAicmVzcGVjdCBmb3JtYXQgY29sb3JzIgogbXNnc3RyICJhbnbDpG5kIGZvcm1hdGbDpHJnZXIiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDMKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggcG9pbnRzIGF0IHRoZSBnaXZlbiBvYmplY3QiCiBtc2dzdHIgInZpc2EgZW5kYXN0IHJlZmVyZW5zZXIgc29tIHBla2FyIHDDpSBvYmpla3RldCIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NQorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NAogbXNnaWQgInByaW50IG9ubHkgcmVmcyB0aGF0IGFyZSBtZXJnZWQiCiBtc2dzdHIgInZpc2EgZW5kYXN0IHJlZmVyZW5zZXIgc29tIHNsYWdpdHMgc2FtbWFuIgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ2CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ1CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCiBtc2dzdHIgInZpc2EgZW5kYXN0IHJlZmVyZW5zZXIgc29tIGVqIHNsYWdpdHMgc2FtbWFuIgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ3CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ2CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHdoaWNoIGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAidmlzYSBlbmRhc3QgcmVmZXJlbnNlciBzb20gaW5uZWjDpWxsZXIgaW5jaGVja25pbmdlbiIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OAorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NwogbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgInZpc2EgZW5kYXN0IHJlZmVyZW5zZXIgc29tIGludGUgaW5uZWjDpWxsZXIgaW5jaGVja25pbmdlbiIKIAotIzogYnVpbHRpbi9mc2NrLmM6NTk4Ci1tc2dpZCAiQ2hlY2tpbmcgb2JqZWN0IGRpcmVjdG9yaWVzIgotbXNnc3RyICJLb250cm9sbGVyYXIgb2JqZWt0a2F0YWxvZ2VyIgorIzogYnVpbHRpbi9mc2NrLmM6NjggYnVpbHRpbi9mc2NrLmM6MTQ3IGJ1aWx0aW4vZnNjay5jOjE0OAorbXNnaWQgInVua25vd24iCittc2dzdHIgIm9rw6RuZCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NjkzCi1tc2dpZCAiZ2l0IGZzY2sgWzxvcHRpb25zPl0gWzxvYmplY3Q+Li4uXSIKLW1zZ3N0ciAiZ2l0IGZzY2sgWzxmbGFnZ29yPl0gWzxvYmpla3Q+Li4uXSIKKyMuIFRSQU5TTEFUT1JTOiBlLmcuIGVycm9yIGluIHRyZWUgMDFiZmRhOiA8bW9yZSBleHBsYW5hdGlvbj4KKyM6IGJ1aWx0aW4vZnNjay5jOjEwMCBidWlsdGluL2ZzY2suYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gJXMgJXM6ICVzIgorbXNnc3RyICJmZWwgaSAlcyAlczogJXMiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjY5OQotbXNnaWQgInNob3cgdW5yZWFjaGFibGUgb2JqZWN0cyIKLW1zZ3N0ciAidmlzYSBvbsOlYmFyYSBvYmpla3QiCisjLiBUUkFOU0xBVE9SUzogZS5nLiB3YXJuaW5nIGluIHRyZWUgMDFiZmRhOiA8bW9yZSBleHBsYW5hdGlvbj4KKyM6IGJ1aWx0aW4vZnNjay5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ3YXJuaW5nIGluICVzICVzOiAlcyIKK21zZ3N0ciAidmFybmluZyBpICVzICVzOiAlcyIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzAwCi1tc2dpZCAic2hvdyBkYW5nbGluZyBvYmplY3RzIgotbXNnc3RyICJ2aXNhIGRpbmdsYW5kZSBvYmpla3QiCisjOiBidWlsdGluL2ZzY2suYzoxNDMgYnVpbHRpbi9mc2NrLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImJyb2tlbiBsaW5rIGZyb20gJTdzICVzIgorbXNnc3RyICJ0cmFzaWcgbMOkbmsgZnLDpW4gJTdzICVzIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDEKLW1zZ2lkICJyZXBvcnQgdGFncyIKLW1zZ3N0ciAicmFwcG9ydGVyYSB0YWdnYXIiCisjOiBidWlsdGluL2ZzY2suYzoxNTUKK21zZ2lkICJ3cm9uZyBvYmplY3QgdHlwZSBpbiBsaW5rIgorbXNnc3RyICJmZWwgb2JqZWt0dHlwIGkgbMOkbmsiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMgotbXNnaWQgInJlcG9ydCByb290IG5vZGVzIgotbXNnc3RyICJyYXBwb3J0ZXJhIHJvdG5vZGVyIgorIzogYnVpbHRpbi9mc2NrLmM6MTcxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJicm9rZW4gbGluayBmcm9tICU3cyAlc1xuIgorIiAgICAgICAgICAgICAgdG8gJTdzICVzIgorbXNnc3RyICIiCisidHJhc2lnIGzDpG5rIGZyw6VuICU3cyAlc1xuIgorIiAgICAgICAgICAgIHRpbGwgJTdzICVzIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDMKLW1zZ2lkICJtYWtlIGluZGV4IG9iamVjdHMgaGVhZCBub2RlcyIKLW1zZ3N0ciAiZ8O2ciBpbmRleG9qZWt0IHRpbGwgaHV2dWRub2RlciIKKyM6IGJ1aWx0aW4vZnNjay5jOjI4MgorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzICVzIgorbXNnc3RyICJzYWtuYXQgJXMgJXMiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwNAotbXNnaWQgIm1ha2UgcmVmbG9ncyBoZWFkIG5vZGVzIChkZWZhdWx0KSIKLW1zZ3N0ciAiZ8O2ciByZWZsb2dnYXIgdGlsbCBodXZ1ZG5vZGVyIChzdGFuZGFyZCkiCisjOiBidWlsdGluL2ZzY2suYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWFjaGFibGUgJXMgJXMiCittc2dzdHIgIm9uw6ViYXJ0ICVzICVzIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDUKLW1zZ2lkICJhbHNvIGNvbnNpZGVyIHBhY2tzIGFuZCBhbHRlcm5hdGUgb2JqZWN0cyIKLW1zZ3N0ciAidGEgw6R2ZW4gaMOkbnN5biB0aWxsIHBha2V0IG9jaCBhbHRlcm5hdGl2YSBvYmpla3QiCisjOiBidWlsdGluL2ZzY2suYzozMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGFuZ2xpbmcgJXMgJXMiCittc2dzdHIgImjDpG5nYW5kZSAlcyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MzM5Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSBsb3N0LWZvdW5kIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrYXBhIGxvc3QtZm91bmQiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjM1MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZmluaXNoICclcyciCittc2dzdHIgImt1bmRlIGludGUgYXZzbHV0YSBcIiVzXCIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjM2NworIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyAlcyIKK21zZ3N0ciAiS29udHJvbGxlcmFyICVzIgogCiAjIFZhZ3VlIG9yaWdpbmFsLCBub3QgbmV0d29ya2luZy1yZWxhdGVkLCBidXQgcmF0aGVyIHJlbGF0ZWQgdG8gdGhlIGFjdHVhbAogIyBvYmplY3RzIGluIHRoZSBkYXRhYmFzZS4KLSM6IGJ1aWx0aW4vZnNjay5jOjcwNgorIzogYnVpbHRpbi9mc2NrLmM6NDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIGNvbm5lY3Rpdml0eSAoJWQgb2JqZWN0cykiCittc2dzdHIgIktvbnRyb2xsZXJhciBrb25uZWt0aXZpdGV0ICglZCBvYmpla3QpIgorCisjOiBidWlsdGluL2ZzY2suYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgJXMiCittc2dzdHIgIktvbnRyb2xsZXJhciAlcyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDI5Cittc2dpZCAiYnJva2VuIGxpbmtzIgorbXNnc3RyICJ0cmFzaWdhIGzDpG5rYXIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJyb290ICVzIgorbXNnc3RyICJyb3RlbiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInRhZ2dlZCAlcyAlcyAoJXMpIGluICVzIgorbXNnc3RyICJ0YWdnYWQgJXMgJXMgKCVzKSBpICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3NpbmciCittc2dzdHIgIiVzOiBvYmpla3QgdHJhc2lndCBlbGxlciBzYWtuYXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjUwMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCByZWZsb2cgZW50cnkgJXMiCittc2dzdHIgIiVzOiBvZ2lsdGlnIHJlZmxvZy1wb3N0ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo1MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgcmVmbG9nICVzLT4lcyIKK21zZ3N0ciAiS29udHJvbGxlcmFyIHJlZmxvZyAlcy0+JXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjU0OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCBzaGExIHBvaW50ZXIgJXMiCittc2dzdHIgIiVzOiBvZ2lsdGlnIHNoYTEtcGVrYXJlICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo1NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG5vdCBhIGNvbW1pdCIKK21zZ3N0ciAiJXM6IGludGUgZW4gaW5jaGVja25pbmchIgorCisjOiBidWlsdGluL2ZzY2suYzo2MDkKK21zZ2lkICJub3RpY2U6IE5vIGRlZmF1bHQgcmVmZXJlbmNlcyIKK21zZ3N0ciAib2JzOiBJbmdhIGbDtnJ2YWxkYSByZWZlcmVuc2VyIgorCisjOiBidWlsdGluL2ZzY2suYzo2MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3Npbmc6ICVzIgorbXNnc3RyICIlczogb2JqZWt0ZXQgdHJhc2lndCBlbGxlciBzYWtuYXM6ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3VsZCBub3QgYmUgcGFyc2VkOiAlcyIKK21zZ3N0ciAiJXM6IG9iamVrdGV0IGt1bmRlIGludGUgdG9sa2FzOiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjU3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaGExIGZpbGU6ICVzIgorbXNnc3RyICJvZ2lsdGlnIHNoYTEtZmlsOiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjcyCittc2dpZCAiQ2hlY2tpbmcgb2JqZWN0IGRpcmVjdG9yeSIKK21zZ3N0ciAiS29udHJvbGxlcmFyIG9iamVrdGthdGFsb2ciCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY3NQorbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcmllcyIKK21zZ3N0ciAiS29udHJvbGxlcmFyIG9iamVrdGthdGFsb2dlciIKKworIzogYnVpbHRpbi9mc2NrLmM6NjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzIGxpbmsiCittc2dzdHIgIktvbnRyb2xsZXJhciAlcy1sw6RuayIKKworIzogYnVpbHRpbi9mc2NrLmM6Njk1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkICVzIgorbXNnc3RyICJvZ2lsdGlndCAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NzAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBvaW50cyB0byBzb21ldGhpbmcgc3RyYW5nZSAoJXMpIgorbXNnc3RyICIlcyBwZWthciBww6UgbsOlZ290IGtvbnN0aWd0ICglcykiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcwOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGV0YWNoZWQgSEVBRCBwb2ludHMgYXQgbm90aGluZyIKK21zZ3N0ciAiJXM6IGZyw6Vua29wcGxhdCBIRUFEIHBla2FyIHDDpSBpbmdlbnRpbmciCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJub3RpY2U6ICVzIHBvaW50cyB0byBhbiB1bmJvcm4gYnJhbmNoICglcykiCittc2dzdHIgIm9iczogJXMgcGVrYXIgcMOlIGVuIG9mw7ZkZCBncmVuICglcykiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcyNAorbXNnaWQgIkNoZWNraW5nIGNhY2hlIHRyZWUiCittc2dzdHIgIktvbnRyb2xsZXJhciBjYWNoZXRyw6RkIgorCisjOiBidWlsdGluL2ZzY2suYzo3MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyIGluIGNhY2hlLXRyZWUiCittc2dzdHIgIiVzOiBvZ2lsdGlnIHNoYTEtcGVrYXJlIGkgY2FjaGV0csOkZCIKKworIzogYnVpbHRpbi9mc2NrLmM6NzM4Cittc2dpZCAibm9uLXRyZWUgaW4gY2FjaGUtdHJlZSIKK21zZ3N0ciAiaWNrZS10csOkZCBpIGNhY2hldHLDpGQiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc2OQorbXNnaWQgImdpdCBmc2NrIFs8b3B0aW9ucz5dIFs8b2JqZWN0Pi4uLl0iCittc2dzdHIgImdpdCBmc2NrIFs8ZmxhZ2dvcj5dIFs8b2JqZWt0Pi4uLl0iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc3NQorbXNnaWQgInNob3cgdW5yZWFjaGFibGUgb2JqZWN0cyIKK21zZ3N0ciAidmlzYSBvbsOlYmFyYSBvYmpla3QiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc3NgorbXNnaWQgInNob3cgZGFuZ2xpbmcgb2JqZWN0cyIKK21zZ3N0ciAidmlzYSBkaW5nbGFuZGUgb2JqZWt0IgorCisjOiBidWlsdGluL2ZzY2suYzo3NzcKK21zZ2lkICJyZXBvcnQgdGFncyIKK21zZ3N0ciAicmFwcG9ydGVyYSB0YWdnYXIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc3OAorbXNnaWQgInJlcG9ydCByb290IG5vZGVzIgorbXNnc3RyICJyYXBwb3J0ZXJhIHJvdG5vZGVyIgorCisjOiBidWlsdGluL2ZzY2suYzo3NzkKK21zZ2lkICJtYWtlIGluZGV4IG9iamVjdHMgaGVhZCBub2RlcyIKK21zZ3N0ciAiZ8O2ciBpbmRleG9qZWt0IHRpbGwgaHV2dWRub2RlciIKKworIzogYnVpbHRpbi9mc2NrLmM6NzgwCittc2dpZCAibWFrZSByZWZsb2dzIGhlYWQgbm9kZXMgKGRlZmF1bHQpIgorbXNnc3RyICJnw7ZyIHJlZmxvZ2dhciB0aWxsIGh1dnVkbm9kZXIgKHN0YW5kYXJkKSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzgxCittc2dpZCAiYWxzbyBjb25zaWRlciBwYWNrcyBhbmQgYWx0ZXJuYXRlIG9iamVjdHMiCittc2dzdHIgInRhIMOkdmVuIGjDpG5zeW4gdGlsbCBwYWtldCBvY2ggc3VwcGxlcmFuZGUgb2JqZWt0IgorCisjIFZhZ3VlIG9yaWdpbmFsLCBub3QgbmV0d29ya2luZy1yZWxhdGVkLCBidXQgcmF0aGVyIHJlbGF0ZWQgdG8gdGhlIGFjdHVhbAorIyBvYmplY3RzIGluIHRoZSBkYXRhYmFzZS4KKyM6IGJ1aWx0aW4vZnNjay5jOjc4MgogbXNnaWQgImNoZWNrIG9ubHkgY29ubmVjdGl2aXR5IgogbXNnc3RyICJrb250cm9sbGVyYSBlbmRhc3Qga29ubmVrdGl2aXRldCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzA3CisjOiBidWlsdGluL2ZzY2suYzo3ODMKIG1zZ2lkICJlbmFibGUgbW9yZSBzdHJpY3QgY2hlY2tpbmciCiBtc2dzdHIgImFrdGl2ZXJhIHN0cmlrdGFyZSBrb250cm9sbCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzA5CisjOiBidWlsdGluL2ZzY2suYzo3ODUKIG1zZ2lkICJ3cml0ZSBkYW5nbGluZyBvYmplY3RzIGluIC5naXQvbG9zdC1mb3VuZCIKIG1zZ3N0ciAic2tyaXYgZGluZ2xhbmRlIG9iamVrdCBpIC5naXQvbG9zdC1mb3VuZCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzEwIGJ1aWx0aW4vcHJ1bmUuYzoxMTAKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NiBidWlsdGluL3BydW5lLmM6MTMyCiBtc2dpZCAic2hvdyBwcm9ncmVzcyIKIG1zZ3N0ciAidmlzYSBmw7ZybG9wcCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzExCisjOiBidWlsdGluL2ZzY2suYzo3ODcKIG1zZ2lkICJzaG93IHZlcmJvc2UgbmFtZXMgZm9yIHJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICJ2aXNhIG9yZHJpa2EgbmFtbiBmw7ZyIG7DpWJhcmEgb2JqZWt0IgogCi0jOiBidWlsdGluL2ZzY2suYzo3NzYKKyM6IGJ1aWx0aW4vZnNjay5jOjg0NiBidWlsdGluL2luZGV4LXBhY2suYzoyMjUKIG1zZ2lkICJDaGVja2luZyBvYmplY3RzIgogbXNnc3RyICJLb250cm9sbGVyYXIgb2JqZWt0IgogCi0jOiBidWlsdGluL2djLmM6MzQKKyM6IGJ1aWx0aW4vZnNjay5jOjg3NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IG1pc3NpbmciCittc2dzdHIgIiVzOiBvYmpla3Qgc2FrbmFzIgorCisjOiBidWlsdGluL2ZzY2suYzo4ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYXJhbWV0ZXI6IGV4cGVjdGVkIHNoYTEsIGdvdCAnJXMnIgorbXNnc3RyICJvZ2lsdGlnIHBhcmFtZXRlcjogZsO2cnbDpG50YWRlIHNoYTEsIGZpY2sgXCIlc1wiIgorCisjOiBidWlsdGluL2djLmM6MzUKIG1zZ2lkICJnaXQgZ2MgWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCBnYyBbPGZsYWdnb3I+XSIKIApAQCAtMTEyMDgsMTcgKzE0MzE5LDIyIEBACiBtc2dpZCAiRmFpbGVkIHRvIGZzdGF0ICVzOiAlcyIKIG1zZ3N0ciAiTWlzc2x5Y2thZGVzIHRhIHN0YXR1cyAoZnN0YXQpIHDDpSAlczogJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo0NjEgYnVpbHRpbi9pbml0LWRiLmM6NTUKKyM6IGJ1aWx0aW4vZ2MuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlICclcycgdmFsdWUgJyVzJyIKK21zZ3N0ciAibWlzc2x5Y2thZGVzIHRvbGthIFwiJXNcIiB2w6RyZGUgXCIlc1wiIgorCisjOiBidWlsdGluL2djLmM6NDc1IGJ1aWx0aW4vaW5pdC1kYi5jOjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGF0ICclcyciCiBtc2dzdHIgImthbiBpbnRlIHRhIHN0YXR1cyBww6UgXCIlc1wiIgogCi0jOiBidWlsdGluL2djLmM6NDcwIGJ1aWx0aW4vbm90ZXMuYzoyNDAgYnVpbHRpbi90YWcuYzo1MTAKKyM6IGJ1aWx0aW4vZ2MuYzo0ODQgYnVpbHRpbi9ub3Rlcy5jOjI0MCBidWlsdGluL3RhZy5jOjUyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIFwiJXNcIiIKIAotIzogYnVpbHRpbi9nYy5jOjQ3NworIzogYnVpbHRpbi9nYy5jOjQ5MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGxhc3QgZ2MgcnVuIHJlcG9ydGVkIHRoZSBmb2xsb3dpbmcuIFBsZWFzZSBjb3JyZWN0IHRoZSByb290IGNhdXNlXG4iCkBAIC0xMTIzMyw1MiArMTQzNDksNTIgQEAKICJcbiIKICIlcyIKIAotIzogYnVpbHRpbi9nYy5jOjUxOQorIzogYnVpbHRpbi9nYy5jOjUzOQogbXNnaWQgInBydW5lIHVucmVmZXJlbmNlZCBvYmplY3RzIgogbXNnc3RyICJyZW5zYSBlaiByZWZlcmVyYWRlIG9iamVrdCIKIAotIzogYnVpbHRpbi9nYy5jOjUyMQorIzogYnVpbHRpbi9nYy5jOjU0MQogbXNnaWQgImJlIG1vcmUgdGhvcm91Z2ggKGluY3JlYXNlZCBydW50aW1lKSIKIG1zZ3N0ciAidmFyIG1lciBncnVuZGxpZyAow7ZrYXIga8O2cnRpZGVuKSIKIAotIzogYnVpbHRpbi9nYy5jOjUyMgorIzogYnVpbHRpbi9nYy5jOjU0MgogbXNnaWQgImVuYWJsZSBhdXRvLWdjIG1vZGUiCiBtc2dzdHIgImFrdGl2ZXJhIGF1dG8tZ2MtbMOkZ2UiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1MjUKKyM6IGJ1aWx0aW4vZ2MuYzo1NDUKIG1zZ2lkICJmb3JjZSBydW5uaW5nIGdjIGV2ZW4gaWYgdGhlcmUgbWF5IGJlIGFub3RoZXIgZ2MgcnVubmluZyIKIG1zZ3N0ciAidHZpbmdhIGdjLWvDtnJuaW5nIMOkdmVuIG9tIGVuIGFubmFuIGdjIGthbnNrZSBrw7ZycyIKIAotIzogYnVpbHRpbi9nYy5jOjUyOAorIzogYnVpbHRpbi9nYy5jOjU0OAogbXNnaWQgInJlcGFjayBhbGwgb3RoZXIgcGFja3MgZXhjZXB0IHRoZSBsYXJnZXN0IHBhY2siCiBtc2dzdHIgInBhY2thIG9tIGFsbGEgcGFrZXQgZsO2cnV0b20gZGV0IHN0w7Zyc3RhIHBha2V0ZXQiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NDUKKyM6IGJ1aWx0aW4vZ2MuYzo1NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHBhcnNlIGdjLmxvZ2V4cGlyeSB2YWx1ZSAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSB2w6RyZGV0ICVzIGbDtnIgZ2MubG9nZXhwaXJ5IgogCi0jOiBidWlsdGluL2djLmM6NTU2CisjOiBidWlsdGluL2djLmM6NTc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwYXJzZSBwcnVuZSBleHBpcnkgdmFsdWUgJXMiCiBtc2dzdHIgImt1bmRlIGludGUgdG9sa2EgdsOkcmRldCAlcyBmw7ZyIHBydW5lIGV4cGlyeSIKIAotIzogYnVpbHRpbi9nYy5jOjU3NgorIzogYnVpbHRpbi9nYy5jOjU5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvIHBhY2tpbmcgdGhlIHJlcG9zaXRvcnkgaW4gYmFja2dyb3VuZCBmb3Igb3B0aW11bSBwZXJmb3JtYW5jZS5cbiIKIG1zZ3N0ciAiUGFja2FyIGFya2l2ZXQgYXV0b21hdGlza3QgaSBiYWtncnVuZGVuIGbDtnIgb3B0aW1hbCBwcmVzdGFuZGEuXG4iCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NzgKKyM6IGJ1aWx0aW4vZ2MuYzo1OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0byBwYWNraW5nIHRoZSByZXBvc2l0b3J5IGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgogbXNnc3RyICJQYWNrYXIgYXJraXZldCBhdXRvbWF0aXNrdCBmw7ZyIG9wdGltYWwgcHJlc3RhbmRhLlxuIgogCi0jOiBidWlsdGluL2djLmM6NTc5CisjOiBidWlsdGluL2djLmM6NTk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNlZSBcImdpdCBoZWxwIGdjXCIgZm9yIG1hbnVhbCBob3VzZWtlZXBpbmcuXG4iCiBtc2dzdHIgIlNlIFwiZ2l0IGhlbHAgZ2NcIiBmw7ZyIG1hbnVlbGwgaHVzaMOlbGxuaW5nLlxuIgogCi0jOiBidWlsdGluL2djLmM6NjE5CisjOiBidWlsdGluL2djLmM6NjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJnYyBpcyBhbHJlYWR5IHJ1bm5pbmcgb24gbWFjaGluZSAnJXMnIHBpZCAlPFBSSXVNQVg+ICh1c2UgLS1mb3JjZSBpZiBub3QpIgpAQCAtMTEyODYsMjMgKzE0NDAyLDIzIEBACiAiZ2Mga8O2cnMgcmVkYW4gcMOlIG1hc2tpbmVuIFwiJXNcIiBwaWQgJTxQUkl1TUFYPiAoYW52w6RuZCAtLWZvcmNlIG9tIHPDpSBpbnRlICIKICLDpHIgZmFsbGV0KSIKIAotIzogYnVpbHRpbi9nYy5jOjY3MAorIzogYnVpbHRpbi9nYy5jOjY5NAogbXNnaWQgIiIKICJUaGVyZSBhcmUgdG9vIG1hbnkgdW5yZWFjaGFibGUgbG9vc2Ugb2JqZWN0czsgcnVuICdnaXQgcHJ1bmUnIHRvIHJlbW92ZSB0aGVtLiIKIG1zZ3N0ciAiIgogIkRldCBmaW5ucyBmw7ZyIG3DpW5nYSBvbsOlYmFyYSBsw7ZzYSBvYmpla3Q7IGvDtnIgXCJnaXQgcHJ1bmVcIiBmw7ZyIGF0dCB0YSBib3J0ICIKICJkZW0uIgogCi0jOiBidWlsdGluL2dyZXAuYzoyOAorIzogYnVpbHRpbi9ncmVwLmM6MzAKIG1zZ2lkICJnaXQgZ3JlcCBbPG9wdGlvbnM+XSBbLWVdIDxwYXR0ZXJuPiBbPHJldj4uLi5dIFtbLS1dIDxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBncmVwIFs8ZmxhZ2dvcj5dIFstZV0gPG3Dtm5zdGVyPiBbPHJldj4uLi5dIFtbLS1dIDxzw7ZrdsOkZz4uLi5dIgogCi0jOiBidWlsdGluL2dyZXAuYzoyMjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjIyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJncmVwOiBmYWlsZWQgdG8gY3JlYXRlIHRocmVhZDogJXMiCiBtc2dzdHIgImdyZXA6IG1pc3NseWNrYWRlcyBza2FwYSB0csOlZC4gJXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjI3OAorIzogYnVpbHRpbi9ncmVwLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbnVtYmVyIG9mIHRocmVhZHMgc3BlY2lmaWVkICglZCkgZm9yICVzIgogbXNnc3RyICJmZWxha3RpZ3QgYW50YWwgdHLDpWRhciBhbmdpdmV0ICglZCkgZsO2ciAlcyIKQEAgLTExMzExLDI2MiArMTQ0MjcsMjYyIEBACiAjLiB2YXJpYWJsZSBmb3IgdHdlYWtpbmcgdGhyZWFkcywgY3VycmVudGx5CiAjLiBncmVwLnRocmVhZHMKICMuCi0jOiBidWlsdGluL2dyZXAuYzoyODYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUwNiBidWlsdGluL2luZGV4LXBhY2suYzoxNjk3Ci0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MTkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjI4NyBidWlsdGluL2luZGV4LXBhY2suYzoxNTM4IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MzEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyB0aHJlYWRzIHN1cHBvcnQsIGlnbm9yaW5nICVzIgogbXNnc3RyICJ0csOlZHN0w7ZkIHNha25hcywgaWdub3JlcmFyICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo0NTggYnVpbHRpbi9ncmVwLmM6NTc5IGJ1aWx0aW4vZ3JlcC5jOjYyMAorIzogYnVpbHRpbi9ncmVwLmM6NDUzIGJ1aWx0aW4vZ3JlcC5jOjU3OCBidWlsdGluL2dyZXAuYzo2MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgdHJlZSAoJXMpIgogbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIHRyw6RkICglcykiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjYzNQorIzogYnVpbHRpbi9ncmVwLmM6NjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBncmVwIGZyb20gb2JqZWN0IG9mIHR5cGUgJXMiCiBtc2dzdHIgImt1bmRlIGludGUgXCJncmVwXCIgZnLDpW4gb2JqZWt0IGF2IHR5cGVuICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzo3MDEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjcwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJzd2l0Y2ggYCVjJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgogbXNnc3RyICJmbGFnZ2FuIFwiJWNcIiBhbnRhciBldHQgbnVtZXJpc2t0IHbDpHJkZSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODAwCisjOiBidWlsdGluL2dyZXAuYzo4MDMKIG1zZ2lkICJzZWFyY2ggaW4gaW5kZXggaW5zdGVhZCBvZiBpbiB0aGUgd29yayB0cmVlIgogbXNnc3RyICJzw7ZrIGkgaW5kZXhldCBpc3TDpGxsZXQgZsO2ciBpIGFyYmV0c2thdGFsb2dlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODAyCisjOiBidWlsdGluL2dyZXAuYzo4MDUKIG1zZ2lkICJmaW5kIGluIGNvbnRlbnRzIG5vdCBtYW5hZ2VkIGJ5IGdpdCIKIG1zZ3N0ciAic8O2ayBpIGlubmVow6VsbCBzb20gaW50ZSBoYW50ZXJhcyBhdiBnaXQiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwNAorIzogYnVpbHRpbi9ncmVwLmM6ODA3CiBtc2dpZCAic2VhcmNoIGluIGJvdGggdHJhY2tlZCBhbmQgdW50cmFja2VkIGZpbGVzIgogbXNnc3RyICJzw7ZrIGkgYsOlZGUgc3DDpXJhZGUgb2NoIG9zcMOlcmFkZSBmaWxlciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODA2CisjOiBidWlsdGluL2dyZXAuYzo4MDkKIG1zZ2lkICJpZ25vcmUgZmlsZXMgc3BlY2lmaWVkIHZpYSAnLmdpdGlnbm9yZSciCiBtc2dzdHIgImlnbm9yZXJhIGZpbGVyIGFuZ2l2bmEgaSBcIi5naXRpZ25vcmVcIiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODA4CisjOiBidWlsdGluL2dyZXAuYzo4MTEKIG1zZ2lkICJyZWN1cnNpdmVseSBzZWFyY2ggaW4gZWFjaCBzdWJtb2R1bGUiCiBtc2dzdHIgInPDtmsgdmFyamUgdW5kZXJtb2R1bCByZWt1cnNpdnQiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxMQorIzogYnVpbHRpbi9ncmVwLmM6ODE0CiBtc2dpZCAic2hvdyBub24tbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgInZpc2EgcmFkZXIgc29tIGludGUgdHLDpGZmYXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxMworIzogYnVpbHRpbi9ncmVwLmM6ODE2CiBtc2dpZCAiY2FzZSBpbnNlbnNpdGl2ZSBtYXRjaGluZyIKIG1zZ3N0ciAic2tpZnRsw6RnZXNva8OkbnNsaWcgc8O2a25pbmciCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxNQorIzogYnVpbHRpbi9ncmVwLmM6ODE4CiBtc2dpZCAibWF0Y2ggcGF0dGVybnMgb25seSBhdCB3b3JkIGJvdW5kYXJpZXMiCiBtc2dzdHIgIm1hdGNoYSBlbmRhc3QgbcO2bnN0ZXIgdmlkIG9yZGdyw6Ruc2VyIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyMAogbXNnaWQgInByb2Nlc3MgYmluYXJ5IGZpbGVzIGFzIHRleHQiCiBtc2dzdHIgImhhbnRlcmEgYmluw6RyZmlsZXIgc29tIHRleHQiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxOQorIzogYnVpbHRpbi9ncmVwLmM6ODIyCiBtc2dpZCAiZG9uJ3QgbWF0Y2ggcGF0dGVybnMgaW4gYmluYXJ5IGZpbGVzIgogbXNnc3RyICJ0csOkZmZhIGludGUgbcO2bnN0ZXIgaSBiaW7DpHJmaWxlciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODIyCisjOiBidWlsdGluL2dyZXAuYzo4MjUKIG1zZ2lkICJwcm9jZXNzIGJpbmFyeSBmaWxlcyB3aXRoIHRleHRjb252IGZpbHRlcnMiCiBtc2dzdHIgImhhbnRlcmEgYmluw6RyZmlsZXIgbWVkIHRleHRjb252LWZpbHRlciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODI0CisjOiBidWlsdGluL2dyZXAuYzo4MjcKIG1zZ2lkICJzZWFyY2ggaW4gc3ViZGlyZWN0b3JpZXMgKGRlZmF1bHQpIgogbXNnc3RyICJzw7ZrIGkgdW5kZXJrYXRhbG9nZXIgKHN0YW5kYXJkKSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODI2CisjOiBidWlsdGluL2dyZXAuYzo4MjkKIG1zZ2lkICJkZXNjZW5kIGF0IG1vc3QgPGRlcHRoPiBsZXZlbHMiCiBtc2dzdHIgImfDpSBzb20gbWVzdCBuZWQgPGRqdXA+IG5pdsOlZXIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzMAorIzogYnVpbHRpbi9ncmVwLmM6ODMzCiBtc2dpZCAidXNlIGV4dGVuZGVkIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCiBtc2dzdHIgImFudsOkbmQgdXTDtmthZGUgUE9TSVgtcmVndWxqw6RyYSB1dHRyeWNrIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MzMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgzNgogbXNnaWQgInVzZSBiYXNpYyBQT1NJWCByZWd1bGFyIGV4cHJlc3Npb25zIChkZWZhdWx0KSIKIG1zZ3N0ciAiYW52w6RuZCBncnVuZGzDpGdnYW5kZSBQT1NJWC1yZWd1bGrDpHJhIHV0dHJ5Y2sgKHN0YW5kYXJkKSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODM2CisjOiBidWlsdGluL2dyZXAuYzo4MzkKIG1zZ2lkICJpbnRlcnByZXQgcGF0dGVybnMgYXMgZml4ZWQgc3RyaW5ncyIKIG1zZ3N0ciAidG9sa2EgbcO2bnN0ZXIgc29tIGZpeGVyYWRlIHN0csOkbmdhciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODM5CisjOiBidWlsdGluL2dyZXAuYzo4NDIKIG1zZ2lkICJ1c2UgUGVybC1jb21wYXRpYmxlIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCiBtc2dzdHIgImFudsOkbmQgUGVybGtvbXBhdGlibGEgcmVndWxqw6RyYSB1dHRyeWNrIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NQogbXNnaWQgInNob3cgbGluZSBudW1iZXJzIgogbXNnc3RyICJ2aXNhIHJhZG51bW1lciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQzCisjOiBidWlsdGluL2dyZXAuYzo4NDYKIG1zZ2lkICJzaG93IGNvbHVtbiBudW1iZXIgb2YgZmlyc3QgbWF0Y2giCiBtc2dzdHIgInZpc2Ega29sdW1ubnVtbWVyIGbDtnIgZsO2cnN0YSB0csOkZmYiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0NAorIzogYnVpbHRpbi9ncmVwLmM6ODQ3CiBtc2dpZCAiZG9uJ3Qgc2hvdyBmaWxlbmFtZXMiCiBtc2dzdHIgInZpc2EgaW50ZSBmaWxuYW1uIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0OAogbXNnaWQgInNob3cgZmlsZW5hbWVzIgogbXNnc3RyICJ2aXNhIGZpbG5hbW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0NworIzogYnVpbHRpbi9ncmVwLmM6ODUwCiBtc2dpZCAic2hvdyBmaWxlbmFtZXMgcmVsYXRpdmUgdG8gdG9wIGRpcmVjdG9yeSIKIG1zZ3N0ciAidmlzYSBmaWxuYW1uIHJlbGF0aXZhIHRpbGwgdG9wcGthdGFsb2dlbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQ5CisjOiBidWlsdGluL2dyZXAuYzo4NTIKIG1zZ2lkICJzaG93IG9ubHkgZmlsZW5hbWVzIGluc3RlYWQgb2YgbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgInZpc2EgZW5kYXN0IGZpbG5hbW4gaXN0w6RsbGV0IGbDtnIgdHLDpGZmYWRlIHJhZGVyIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NTEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1NAogbXNnaWQgInN5bm9ueW0gZm9yIC0tZmlsZXMtd2l0aC1tYXRjaGVzIgogbXNnc3RyICJzeW5vbnltIGbDtnIgLS1maWxlcy13aXRoLW1hdGNoZXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1NAorIzogYnVpbHRpbi9ncmVwLmM6ODU3CiBtc2dpZCAic2hvdyBvbmx5IHRoZSBuYW1lcyBvZiBmaWxlcyB3aXRob3V0IG1hdGNoIgogbXNnc3RyICJ2aXNhIGVuZGFzdCBuYW1uIHDDpSBmaWxlciB1dGFuIHRyw6RmZmFyIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NTYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1OQogbXNnaWQgInByaW50IE5VTCBhZnRlciBmaWxlbmFtZXMiCiBtc2dzdHIgInNrcml2IE5VTCBlZnRlciBmaWxuYW1uIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NTkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2MgogbXNnaWQgInNob3cgb25seSBtYXRjaGluZyBwYXJ0cyBvZiBhIGxpbmUiCiBtc2dzdHIgInZpc2EgZW5kYXN0IHRyw6RmZmFkZSBkZWxhciBhdiByYWRlciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODYxCisjOiBidWlsdGluL2dyZXAuYzo4NjQKIG1zZ2lkICJzaG93IHRoZSBudW1iZXIgb2YgbWF0Y2hlcyBpbnN0ZWFkIG9mIG1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICJ2aXNhIGFudGFsIHRyw6RmZmFyIGlzdMOkbGxldCBmw7ZyIHRyw6RmZmFkZSByYWRlciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODYyCisjOiBidWlsdGluL2dyZXAuYzo4NjUKIG1zZ2lkICJoaWdobGlnaHQgbWF0Y2hlcyIKIG1zZ3N0ciAibGp1c21hcmtlcmEgdHLDpGZmYXIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2NAorIzogYnVpbHRpbi9ncmVwLmM6ODY3CiBtc2dpZCAicHJpbnQgZW1wdHkgbGluZSBiZXR3ZWVuIG1hdGNoZXMgZnJvbSBkaWZmZXJlbnQgZmlsZXMiCiBtc2dzdHIgInNrcml2IHRvbW1hIHJhZGVyIG1lbGxhbiB0csOkZmZhciBmcsOlbiBvbGlrYSBmaWxlciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODY2CisjOiBidWlsdGluL2dyZXAuYzo4NjkKIG1zZ2lkICJzaG93IGZpbGVuYW1lIG9ubHkgb25jZSBhYm92ZSBtYXRjaGVzIGZyb20gc2FtZSBmaWxlIgogbXNnc3RyICJ2aXNhIGZpbG5hbW4gZW5kYXN0IGVuIGfDpW5nIG92YW5mw7ZyIHRyw6RmZmFyIGZyw6VuIHNhbW1hIGZpbCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODY5CisjOiBidWlsdGluL2dyZXAuYzo4NzIKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGJlZm9yZSBhbmQgYWZ0ZXIgbWF0Y2hlcyIKIG1zZ3N0ciAidmlzYSA8bj4gcmFkZXIgc2FtbWFuaGFuZyBmw7ZyZSBvY2ggZWZ0ZXIgdHLDpGZmYXIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3MgorIzogYnVpbHRpbi9ncmVwLmM6ODc1CiBtc2dpZCAic2hvdyA8bj4gY29udGV4dCBsaW5lcyBiZWZvcmUgbWF0Y2hlcyIKIG1zZ3N0ciAidmlzYSA8bj4gcmFkZXIgc2FtbWFuaGFuZyBmw7ZyZSB0csOkZmZhciIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODc0CisjOiBidWlsdGluL2dyZXAuYzo4NzcKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGFmdGVyIG1hdGNoZXMiCiBtc2dzdHIgInZpc2EgPG4+IHJhZGVyIHNhbW1hbmhhbmcgZWZ0ZXIgdHLDpGZmYXIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NgorIzogYnVpbHRpbi9ncmVwLmM6ODc5CiBtc2dpZCAidXNlIDxuPiB3b3JrZXIgdGhyZWFkcyIKIG1zZ3N0ciAiYW52w6RuZCA8bj4gam9iYnRyw6VkYXIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3NworIzogYnVpbHRpbi9ncmVwLmM6ODgwCiBtc2dpZCAic2hvcnRjdXQgZm9yIC1DIE5VTSIKIG1zZ3N0ciAiZ2VudsOkZyBmw7ZyIC1DIE5VTSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODgwCisjOiBidWlsdGluL2dyZXAuYzo4ODMKIG1zZ2lkICJzaG93IGEgbGluZSB3aXRoIHRoZSBmdW5jdGlvbiBuYW1lIGJlZm9yZSBtYXRjaGVzIgogbXNnc3RyICJ2aXNhIGVuIHJhZCBtZWQgZnVua3Rpb25zbmFtbmV0IGbDtnJlIHRyw6RmZmVuIgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4NQogbXNnaWQgInNob3cgdGhlIHN1cnJvdW5kaW5nIGZ1bmN0aW9uIgogbXNnc3RyICJ2aXNhIGRlbiBvbWtyaW5nbGlnZ2FuZGUgZnVua3Rpb25lbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODg1CisjOiBidWlsdGluL2dyZXAuYzo4ODgKIG1zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gZmlsZSIKIG1zZ3N0ciAibMOkcyBtw7Zuc3RlciBmcsOlbiBmaWwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4NworIzogYnVpbHRpbi9ncmVwLmM6ODkwCiBtc2dpZCAibWF0Y2ggPHBhdHRlcm4+IgogbXNnc3RyICJ0csOkZmZhIDxtw7Zuc3Rlcj4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4OQorIzogYnVpbHRpbi9ncmVwLmM6ODkyCiBtc2dpZCAiY29tYmluZSBwYXR0ZXJucyBzcGVjaWZpZWQgd2l0aCAtZSIKIG1zZ3N0ciAia29tYmluZXJhIG3Dtm5zdGVyIHNvbSBhbmdlcyBtZWQgLWUiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwMQorIzogYnVpbHRpbi9ncmVwLmM6OTA0CiBtc2dpZCAiaW5kaWNhdGUgaGl0IHdpdGggZXhpdCBzdGF0dXMgd2l0aG91dCBvdXRwdXQiCiBtc2dzdHIgImFuZ2UgdHLDpGZmIG1lZCBzbHV0c3RhdHVza29kIHV0YW4gdXRkYXRhIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwNgogbXNnaWQgInNob3cgb25seSBtYXRjaGVzIGZyb20gZmlsZXMgdGhhdCBtYXRjaCBhbGwgcGF0dGVybnMiCiBtc2dzdHIgInZpc2EgZW5kYXN0IHRyw6RmZmFyIGZyw6VuIGZpbGVyIHNvbSB0csOkZmZhciBhbGxhIG3Dtm5zdGVyIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwOAogbXNnaWQgInNob3cgcGFyc2UgdHJlZSBmb3IgZ3JlcCBleHByZXNzaW9uIgogbXNnc3RyICJ2aXNhIGFuYWx5c3Ryw6RkIGbDtnIgZ3JlcC11dHRyeWNrIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxMgogbXNnaWQgInBhZ2VyIgogbXNnc3RyICJibMOkZGRyYXJlIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxMgogbXNnaWQgInNob3cgbWF0Y2hpbmcgZmlsZXMgaW4gdGhlIHBhZ2VyIgogbXNnc3RyICJ2aXNhIHRyw6RmZmFkZSBmaWxlciBpIGZpbGJsw6RkZHJhcmVuIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MTMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxNgogbXNnaWQgImFsbG93IGNhbGxpbmcgb2YgZ3JlcCgxKSAoaWdub3JlZCBieSB0aGlzIGJ1aWxkKSIKIG1zZ3N0ciAidGlsbMOldCBhbnJvcGEgZ3JlcCgxKSAoaWdub3JlcmFzIGF2IGRldHRhIGJ5Z2dlKSIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTc3CisjOiBidWlsdGluL2dyZXAuYzo5ODMKIG1zZ2lkICJubyBwYXR0ZXJuIGdpdmVuIgogbXNnc3RyICJpbmdldCBtw7Zuc3RlciBhbmdhdnMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwMTMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwMTkKIG1zZ2lkICItLW5vLWluZGV4IG9yIC0tdW50cmFja2VkIGNhbm5vdCBiZSB1c2VkIHdpdGggcmV2cyIKIG1zZ3N0ciAiLS1uby1pbmRleCBvY2ggLS11bnRyYWNrZWQga2FuIGludGUgYW52w6RuZGFzIG1lZCByZXZpc2lvbmVyIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDIwCisjOiBidWlsdGluL2dyZXAuYzoxMDI3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIHJldmlzaW9uOiAlcyIKIG1zZ3N0ciAia2FuIGludGUgc2zDpSB1cHAgcmV2aXNpb246ICVzIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDUxCisjOiBidWlsdGluL2dyZXAuYzoxMDU3Cittc2dpZCAiLS11bnRyYWNrZWQgbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgorbXNnc3RyICItLXVudHJhY2tlZCBzdMO2ZHMgaW50ZSBtZWQgLS1yZWN1cnNlLXN1Ym1vZHVsZXMiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjEKIG1zZ2lkICJpbnZhbGlkIG9wdGlvbiBjb21iaW5hdGlvbiwgaWdub3JpbmcgLS10aHJlYWRzIgogbXNnc3RyICJvZ2lsdGlnIGtvbWJpbmF0aW9uIGF2IGZsYWdnb3IsIGlnbm9yZXJhciAtLXRocmVhZHMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk3CisjOiBidWlsdGluL2dyZXAuYzoxMDY0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU0NwogbXNnaWQgIm5vIHRocmVhZHMgc3VwcG9ydCwgaWdub3JpbmcgLS10aHJlYWRzIgogbXNnc3RyICJ0csOlZHN0w7ZkIHNha25hcywgaWdub3JlcmFyIC0tdGhyZWFkcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTA1NyBidWlsdGluL2luZGV4LXBhY2suYzoxNTAzIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcxNgorIzogYnVpbHRpbi9ncmVwLmM6MTA2NyBidWlsdGluL2luZGV4LXBhY2suYzoxNTM1IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG51bWJlciBvZiB0aHJlYWRzIHNwZWNpZmllZCAoJWQpIgogbXNnc3RyICJmZWxha3RpZ3QgYW50YWwgdHLDpWRhciBhbmdpdmV0ICglZCkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwODAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExMDEKIG1zZ2lkICItLW9wZW4tZmlsZXMtaW4tcGFnZXIgb25seSB3b3JrcyBvbiB0aGUgd29ya3RyZWUiCiBtc2dzdHIgIi0tb3Blbi1maWxlcy1pbi1wYWdlciBmdW5nZXJhciBlbmRhc3QgaSBhcmJldHNrYXRhbG9nZW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMDMKLW1zZ2lkICJvcHRpb24gbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgotbXNnc3RyICJmbGFnZ2FuIHN0w7ZkcyBpbnRlIG1lZCAtLXJlY3Vyc2Utc3VibW9kdWxlcyIKLQotIzogYnVpbHRpbi9ncmVwLmM6MTEwOQorIzogYnVpbHRpbi9ncmVwLmM6MTEyNwogbXNnaWQgIi0tY2FjaGVkIG9yIC0tdW50cmFja2VkIGNhbm5vdCBiZSB1c2VkIHdpdGggLS1uby1pbmRleCIKIG1zZ3N0ciAiLS1jYWNoZWQgb2NoIC0tdW50cmFja2VkIGthbiBpbnRlIGFudsOkbmRhcyBtZWQgLS1uby1pbmRleCIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTExNQorIzogYnVpbHRpbi9ncmVwLmM6MTEzMwogbXNnaWQgIi0tW25vLV1leGNsdWRlLXN0YW5kYXJkIGNhbm5vdCBiZSB1c2VkIGZvciB0cmFja2VkIGNvbnRlbnRzIgogbXNnc3RyICItLVtuby1dZXhjbHVkZS1zdGFuZGFyZCBrYW4gaW50ZSBhbnbDpG5kYXMgZsO2ciBzcMOlcmF0IGlubmVow6VsbCIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTEyMworIzogYnVpbHRpbi9ncmVwLmM6MTE0MQogbXNnaWQgImJvdGggLS1jYWNoZWQgYW5kIHRyZWVzIGFyZSBnaXZlbiIKIG1zZ3N0ciAiYsOlZGUgLS1jYWNoZWQgb2NoIHRyw6RkIGFuZ2F2cyIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg0CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODUKIG1zZ2lkICIiCiAiZ2l0IGhhc2gtb2JqZWN0IFstdCA8dHlwZT5dIFstd10gWy0tcGF0aD08ZmlsZT4gfCAtLW5vLWZpbHRlcnNdIFstLXN0ZGluXSAiCiAiWy0tXSA8ZmlsZT4uLi4iCkBAIC0xMTU3NCwzNyArMTQ2OTAsMzMgQEAKICJnaXQgaGFzaC1vYmplY3QgWy10IDx0eXA+XSBbLXddIFstLXBhdGg9PGZpbD4gfCAtLW5vLWZpbHRlcnNdIFstLXN0ZGluXSBbLS1dICIKICI8ZmlsPi4uLiIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg1CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODYKIG1zZ2lkICJnaXQgaGFzaC1vYmplY3QgIC0tc3RkaW4tcGF0aHMiCiBtc2dzdHIgImdpdCBoYXNoLW9iamVjdCAgLS1zdGRpbi1wYXRocyIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk3Ci1tc2dpZCAidHlwZSIKLW1zZ3N0ciAidHlwIgotCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTcKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAogbXNnaWQgIm9iamVjdCB0eXBlIgogbXNnc3RyICJvYmpla3R0eXAiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk5CiBtc2dpZCAid3JpdGUgdGhlIG9iamVjdCBpbnRvIHRoZSBvYmplY3QgZGF0YWJhc2UiCiBtc2dzdHIgInNrcml2IG9iamVrdGV0IHRpbGwgb2JqZWt0ZGF0YWJhc2VuIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAwCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAxCiBtc2dpZCAicmVhZCB0aGUgb2JqZWN0IGZyb20gc3RkaW4iCiBtc2dzdHIgImzDpHMgb2JqZWt0ZXQgZnLDpW4gc3RhbmRhcmQgaW4iCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDMKIG1zZ2lkICJzdG9yZSBmaWxlIGFzIGlzIHdpdGhvdXQgZmlsdGVycyIKIG1zZ3N0ciAic3BhcmEgZmlsZW4gc29tIGRlbiDDpHIgdXRhbiBmaWxlciIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNAogbXNnaWQgIiIKICJqdXN0IGhhc2ggYW55IHJhbmRvbSBnYXJiYWdlIHRvIGNyZWF0ZSBjb3JydXB0IG9iamVjdHMgZm9yIGRlYnVnZ2luZyBHaXQiCiBtc2dzdHIgIiIKICJoYXNoYSBzbHVtcG3DpHNzaWd0IHNrcsOkcCBmw7ZyIGF0dCBza2FwYSBrb3JydXB0YSBvYmpla3QgZsO2ciBmZWxzw7ZrbmluZyBhdiBHaXQiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDQKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDUKIG1zZ2lkICJwcm9jZXNzIGZpbGUgYXMgaXQgd2VyZSBmcm9tIHRoaXMgcGF0aCIKIG1zZ3N0ciAiaGFudGVyYSBmaWxlbiBzb20gb20gZGVuIGtvbSBmcsOlbiBzw7ZrdsOkZ2VuIgogCkBAIC0xMTY0NCwzMCArMTQ3NTYsMzAgQEAKIG1zZ2lkICJnaXQgaGVscCBbLS1hbGxdIFstLWd1aWRlc10gWy0tbWFuIHwgLS13ZWIgfCAtLWluZm9dIFs8Y29tbWFuZD5dIgogbXNnc3RyICJnaXQgaGVscCBbLS1hbGxdIFstLWd1aWRlc10gWy0tbWFuIHwgLS13ZWIgfCAtLWluZm9dIFs8a29tbWFuZG8+XSIKIAotIzogYnVpbHRpbi9oZWxwLmM6NzMKKyM6IGJ1aWx0aW4vaGVscC5jOjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBoZWxwIGZvcm1hdCAnJXMnIgotbXNnc3RyICJva8OkbnQgaGrDpGxwZm9ybWF0OiDigJ0lc+KAnSIKK21zZ3N0ciAib2vDpG50IGhqw6RscGZvcm1hdDogXCIlc1wiIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMDAKKyM6IGJ1aWx0aW4vaGVscC5jOjEwNAogbXNnaWQgIkZhaWxlZCB0byBzdGFydCBlbWFjc2NsaWVudC4iCiBtc2dzdHIgIk1pc3NseWNrYWRlcyBzdGFydGEgZW1hY3NjbGllbnQuIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMTMKKyM6IGJ1aWx0aW4vaGVscC5jOjExNwogbXNnaWQgIkZhaWxlZCB0byBwYXJzZSBlbWFjc2NsaWVudCB2ZXJzaW9uLiIKIG1zZ3N0ciAiS3VuZGUgaW50ZSB0b2xrYSBlbWFjc2NsaWVudC12ZXJzaW9uLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTIxCisjOiBidWlsdGluL2hlbHAuYzoxMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZW1hY3NjbGllbnQgdmVyc2lvbiAnJWQnIHRvbyBvbGQgKDwgMjIpLiIKIG1zZ3N0ciAiZW1hY3NjbGllbnQgdmVyc2lvbiBcIiVkXCIgZsO2ciBnYW1tYWwgKDwgMjIpLiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTM5IGJ1aWx0aW4vaGVscC5jOjE2MSBidWlsdGluL2hlbHAuYzoxNzEgYnVpbHRpbi9oZWxwLmM6MTc5CisjOiBidWlsdGluL2hlbHAuYzoxNDMgYnVpbHRpbi9oZWxwLmM6MTY1IGJ1aWx0aW4vaGVscC5jOjE3NSBidWlsdGluL2hlbHAuYzoxODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgJyVzJyIKIG1zZ3N0ciAiZXhlYyBtaXNzbHlja2FkZXMgZsO2ciBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjIxNworIzogYnVpbHRpbi9oZWxwLmM6MjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnOiBwYXRoIGZvciB1bnN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgpAQCAtMTE2NzYsNyArMTQ3ODgsNyBAQAogIlwiJXNcIjogc8O2a3bDpGcgZsO2ciBtYW4tdmlzYXJlIHNvbSBlaiBzdMO2ZHMuXG4iCiAiQW52w6RuZCBcIm1hbi48dmVya3R5Zz4uY21kXCIgaXN0w6RsbGV0LiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MjI5CisjOiBidWlsdGluL2hlbHAuYzoyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcyc6IGNtZCBmb3Igc3VwcG9ydGVkIG1hbiB2aWV3ZXIuXG4iCkBAIC0xMTY4NSwzMjcgKzE0Nzk3LDMxNyBAQAogIlwiJXNcIjoga29tbWFuZG8gZsO2ciBtYW4tdmlzYXJlIHNvbSBzdMO2ZHMuXG4iCiAiQW52w6RuZCBcIm1hbi48dmVya3R5Zz4ucGF0aFwiIGlzdMOkbGxldC4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM0NgorIzogYnVpbHRpbi9oZWxwLmM6MzUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcyc6IHVua25vd24gbWFuIHZpZXdlci4iCiBtc2dzdHIgIlwiJXNcIjogb2vDpG5kIG1hbi12aXNhcmUuIgogCi0jOiBidWlsdGluL2hlbHAuYzozNjMKKyM6IGJ1aWx0aW4vaGVscC5jOjM2NwogbXNnaWQgIm5vIG1hbiB2aWV3ZXIgaGFuZGxlZCB0aGUgcmVxdWVzdCIKIG1zZ3N0ciAiaW5nZW4gbWFuLXZpc2FyZSBoYW50ZXJhZGUgZsO2cmZyw6VnYW4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM3MQorIzogYnVpbHRpbi9oZWxwLmM6Mzc1CiBtc2dpZCAibm8gaW5mbyB2aWV3ZXIgaGFuZGxlZCB0aGUgcmVxdWVzdCIKIG1zZ3N0ciAiaW5nZW4gaW5mby12aXNhcmUgaGFudGVyYWRlIGbDtnJmcsOlZ2FuIgogCi0jOiBidWlsdGluL2hlbHAuYzo0MzAgYnVpbHRpbi9oZWxwLmM6NDQxIGdpdC5jOjMyMgorIzogYnVpbHRpbi9oZWxwLmM6NDM0IGJ1aWx0aW4vaGVscC5jOjQ0NSBnaXQuYzozMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbGlhc2VkIHRvICclcyciCiBtc2dzdHIgIlwiJXNcIiDDpHIgZXR0IGFsaWFzIGbDtnIgXCIlc1wiIgogCi0jOiBidWlsdGluL2hlbHAuYzo0NDQKKyM6IGJ1aWx0aW4vaGVscC5jOjQ0OCBnaXQuYzozNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGFsaWFzLiVzIHN0cmluZzogJXMiCiBtc2dzdHIgImZlbGFrdGlnIGFsaWFzLiVzLXN0csOkbmc6ICVzIgogCi0jOiBidWlsdGluL2hlbHAuYzo0NzMgYnVpbHRpbi9oZWxwLmM6NTAzCisjOiBidWlsdGluL2hlbHAuYzo0NzcgYnVpbHRpbi9oZWxwLmM6NTA3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVzYWdlOiAlcyVzIgogbXNnc3RyICJhbnbDpG5kbmluZzogJXMlcyIKIAotIzogYnVpbHRpbi9oZWxwLmM6NDg3CisjOiBidWlsdGluL2hlbHAuYzo0OTEKIG1zZ2lkICInZ2l0IGhlbHAgY29uZmlnJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiXCJnaXQgaGVscCBjb25maWdcIiBmw7ZyIG1lciBpbmZvcm1hdGlvbiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTg0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxODUKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IHR5cGUgbWlzbWF0Y2ggYXQgJXMiCiBtc2dzdHIgIm9iamVrdHR5cCBzdMOkbW1lciBpbnRlIMO2dmVyZW5zIHZpZCAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGlkIG5vdCByZWNlaXZlIGV4cGVjdGVkIG9iamVjdCAlcyIKIG1zZ3N0ciAiZW1vdHRvZyBpbnRlIGRldCBmw7ZydsOkbnRhZGUgb2JqZWt0ZXQgJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlczogZXhwZWN0ZWQgdHlwZSAlcywgZm91bmQgJXMiCiBtc2dzdHIgIm9iamVrdGV0ICVzOiBmw7ZydsOkbnRhZCB0eXAgJXMsIHPDpWcgJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI0OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjU4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBmaWxsICVkIGJ5dGUiCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBmaWxsICVkIGJ5dGVzIgogbXNnc3RyWzBdICJrYW4gaW50ZSBmeWxsYSAlZCBieXRlIgogbXNnc3RyWzFdICJrYW4gaW50ZSBmeWxsYSAlZCBieXRlIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OAogbXNnaWQgImVhcmx5IEVPRiIKIG1zZ3N0ciAidGlkaWd0IGZpbHNsdXQiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2MAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjY5CiBtc2dpZCAicmVhZCBlcnJvciBvbiBpbnB1dCIKIG1zZ3N0ciAiaW5kYXRhbMOkc2ZlbCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjcyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyODEKIG1zZ2lkICJ1c2VkIG1vcmUgYnl0ZXMgdGhhbiB3ZXJlIGF2YWlsYWJsZSIKIG1zZ3N0ciAiYW52w6RuZGUgZmxlciBieXRlIMOkbiB0aWxsZ8OkbmdsaWd0IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNzkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1OTgKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI4OCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjYwNgogbXNnaWQgInBhY2sgdG9vIGxhcmdlIGZvciBjdXJyZW50IGRlZmluaXRpb24gb2Ygb2ZmX3QiCiBtc2dzdHIgInBha2V0IGbDtnIgc3RvcnQgZsO2ciBudXZhcmFuZGUgZGVmaW5pdGlvbiBhdiBvZmZfdCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjgyIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo5NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjkxIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo5NQogbXNnaWQgInBhY2sgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgc2l6ZSIKIG1zZ3N0ciAicGFrZXQgw6RyIHN0w7ZycmUgw6RuIHRpbGzDpXRlbiBtYXhpbWFsIHN0b3JsZWsiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI5NwotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlICclcyciCi1tc2dzdHIgImt1bmRlIGludGUgc2thcGEgXCIlc1wiIgotCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozMDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgb3BlbiBwYWNrZmlsZSAnJXMnIgogbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgcGFrZXRmaWxlbiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMxNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzI2CiBtc2dpZCAicGFjayBzaWduYXR1cmUgbWlzbWF0Y2giCiBtc2dzdHIgInBha2V0c2lnbmF0dXIgc3TDpG1tZXIgaW50ZSDDtnZlcmVucyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzE5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjayB2ZXJzaW9uICU8UFJJdTMyPiB1bnN1cHBvcnRlZCIKIG1zZ3N0ciAicGFrZXR2ZXJzaW9uICU8UFJJdTMyPiBzdMO2ZHMgZWoiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMzNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2sgaGFzIGJhZCBvYmplY3QgYXQgb2Zmc2V0ICU8UFJJdU1BWD46ICVzIgogbXNnc3RyICJwYWtldGV0IGhhciBmZWxha3RpZ3Qgb2JqZWt0IHZpZCBpbmRleCAlPFBSSXVNQVg+OiAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NDU3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5mbGF0ZSByZXR1cm5lZCAlZCIKIG1zZ3N0ciAiaW5mbGF0ZSByZXR1cm5lcmFkZSAlZCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTA2CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MTUKIG1zZ2lkICJvZmZzZXQgdmFsdWUgb3ZlcmZsb3cgZm9yIGRlbHRhIGJhc2Ugb2JqZWN0IgogbXNnc3RyICJpbmRleHbDpHJkZXNwaWxsIGbDtnIgZGVsdGFiYXNvYmpla3QiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTIzCiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgaXMgb3V0IG9mIGJvdW5kIgogbXNnc3RyICJkZWx0YWJhc2luZGV4IHV0YW5mw7ZyIGdyw6Ruc2VuIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1MjIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG9iamVjdCB0eXBlICVkIgogbXNnc3RyICJva8OkbmQgb2JqZWt0dHlwICVkIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1NTMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU2MgogbXNnaWQgImNhbm5vdCBwcmVhZCBwYWNrIGZpbGUiCiBtc2dzdHIgImthbiBpbnRlIHV0ZsO2cmEgXCJwcmVhZFwiIHDDpSBwYWtldGZpbCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTU1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICU8UFJJdU1BWD4gYnl0ZSBtaXNzaW5nIgogbXNnaWRfcGx1cmFsICJwcmVtYXR1cmUgZW5kIG9mIHBhY2sgZmlsZSwgJTxQUkl1TUFYPiBieXRlcyBtaXNzaW5nIgogbXNnc3RyWzBdICJmw7ZyIHRpZGlndCBzbHV0IHDDpSBwYWtldGZpbGVuLCAlPFBSSXVNQVg+IGJ5dGUgc2FrbmFzIgogbXNnc3RyWzFdICJmw7ZyIHRpZGlndCBzbHV0IHDDpSBwYWtldGZpbGVuLCAlPFBSSXVNQVg+IGJ5dGUgc2FrbmFzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1ODEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU5MAogbXNnaWQgInNlcmlvdXMgaW5mbGF0ZSBpbmNvbnNpc3RlbmN5IgogbXNnc3RyICJhbGx2YXJsaWcgaW5mbGF0ZS1pbmtvbnNla3ZlbnMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjcyNiBidWlsdGluL2luZGV4LXBhY2suYzo3MzIgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzU1Ci0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3OTQgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo3MzUgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzQxIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc2NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODA0IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJTSEExIENPTExJU0lPTiBGT1VORCBXSVRIICVzICEiCiBtc2dzdHIgIlNIQTEtS09MTElTSU9OIFVQUFTDhENLVCBWSUQgJXMgISIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzI5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTUxCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwNQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzM4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxOCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzkyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgZXhpc3Rpbmcgb2JqZWN0IGluZm8gJXMiCiBtc2dzdHIgImthbiBpbnRlIGzDpHNhIGluZm9ybWF0aW9uIG9tIGJlZmludGxpZ3Qgb2JqZWt0ICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4MDAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBleGlzdGluZyBvYmplY3QgJXMiCiBtc2dzdHIgImthbiBpbnRlIGzDpHNhIGJlZmludGxpZ3Qgb2JqZWt0ICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGJsb2Igb2JqZWN0ICVzIgogbXNnc3RyICJvZ2lsdGlndCBibG9iLW9iamVrdCAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODE3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzNgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODI3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0NgogbXNnaWQgImZzY2sgZXJyb3IgaW4gcGFja2VkIG9iamVjdCIKIG1zZ3N0ciAiZnNjay1mZWwgaSBwYWNrYXQgb2JqZWt0IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4MzMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCAlcyIKLW1zZ3N0ciAib2dpbHRpZ3QgJXMiCi0KLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzOAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhbGwgY2hpbGQgb2JqZWN0cyBvZiAlcyBhcmUgcmVhY2hhYmxlIgogbXNnc3RyICJJbnRlIGFsbGEgYmFybm9iamVrdCBmw7ZyICVzIGthbiBuw6VzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo5MTAgYnVpbHRpbi9pbmRleC1wYWNrLmM6OTQxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo5MjAgYnVpbHRpbi9pbmRleC1wYWNrLmM6OTUxCiBtc2dpZCAiZmFpbGVkIHRvIGFwcGx5IGRlbHRhIgogbXNnc3RyICJtaXNzbHlja2FkZXMgdGlsbMOkbXBhIGRlbHRhIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTA5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTIxCiBtc2dpZCAiUmVjZWl2aW5nIG9iamVjdHMiCiBtc2dzdHIgIlRhciBlbW90IG9iamVrdCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEwOQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEyMQogbXNnaWQgIkluZGV4aW5nIG9iamVjdHMiCiBtc2dzdHIgIlNrYXBhciBpbmRleCBmw7ZyIG9iamVrdCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE0MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE1NQogbXNnaWQgInBhY2sgaXMgY29ycnVwdGVkIChTSEExIG1pc21hdGNoKSIKIG1zZ3N0ciAicGFrZXRldCDDpHIgdHJhc2lndCAoU0hBMSBzdMOkbW1lciBpbnRlKSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE0OAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE2MAogbXNnaWQgImNhbm5vdCBmc3RhdCBwYWNrZmlsZSIKIG1zZ3N0ciAia2FuIGludGUgdXRmw7ZyYSBcImZzdGF0XCIgcMOlIHBha2V0ZmlsIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTUxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYzCiBtc2dpZCAicGFjayBoYXMganVuayBhdCB0aGUgZW5kIgogbXNnc3RyICJwYWtldCBoYXIgc2tyw6RwIGkgc2x1dGV0IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTc1CiBtc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSBpbiBwYXJzZV9wYWNrX29iamVjdHMoKSIKIG1zZ3N0ciAiZsO2cnZpcnJhZCBib3J0b20gdmFudmV0dCBpIHBhcnNlX3BhY2tfb2JqZWN0cygpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTg2CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTk4CiBtc2dpZCAiUmVzb2x2aW5nIGRlbHRhcyIKIG1zZ3N0ciAiQW5hbHlzZXJhciBkZWx0YSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE5NiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI0OTIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyMDggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSB0csOlZDogJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyMzcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNDkKIG1zZ2lkICJjb25mdXNpb24gYmV5b25kIGluc2FuaXR5IgogbXNnc3RyICJmw7ZydmlycmFkIGJvcnRvbSB2YW52ZXR0IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjQzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbXBsZXRlZCB3aXRoICVkIGxvY2FsIG9iamVjdCIKIG1zZ2lkX3BsdXJhbCAiY29tcGxldGVkIHdpdGggJWQgbG9jYWwgb2JqZWN0cyIKIG1zZ3N0clswXSAic2x1dGbDtnJkZXMgbWVkICVkIGxva2FsdCBvYmpla3QiCiBtc2dzdHJbMV0gInNsdXRmw7ZyZGVzIG1lZCAlZCBsb2thbGEgb2JqZWt0IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjU1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuZXhwZWN0ZWQgdGFpbCBjaGVja3N1bSBmb3IgJXMgKGRpc2sgY29ycnVwdGlvbj8pIgogbXNnc3RyICJPdsOkbnRhZCBzdmFuc2NoZWNrc3VtbWEgZsO2ciAlcyAodHJhc2lnIGRpc2s/KSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI1OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrIGhhcyAlZCB1bnJlc29sdmVkIGRlbHRhIgogbXNnaWRfcGx1cmFsICJwYWNrIGhhcyAlZCB1bnJlc29sdmVkIGRlbHRhcyIKIG1zZ3N0clswXSAicGFrZXRldCBoYXIgJWQgb2FuYWx5c2VyYXQgZGVsdGEiCiBtc2dzdHJbMV0gInBha2V0ZXQgaGFyICVkIG9hbmFseXNlcmFkZSBkZWx0YSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI4MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZGVmbGF0ZSBhcHBlbmRlZCBvYmplY3QgKCVkKSIKIG1zZ3N0ciAia3VuZGUgaW50ZSB1dGbDtnJhIFwiZGVmbGF0ZVwiIHDDpSB0aWxsYWd0IG9iamVrdCAoJWQpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzYwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImxvY2FsIG9iamVjdCAlcyBpcyBjb3JydXB0IgogbXNnc3RyICJsb2thbHQgb2JqZWt0ICVzIMOkciB0cmFzaWd0IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzc0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDA2CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2tmaWxlIG5hbWUgJyVzJyBkb2VzIG5vdCBlbmQgd2l0aCAnLnBhY2snIgogbXNnc3RyICJwYWtldGZpbG5hbW5ldCBcIiVzXCIgc2x1dGFyIGludGUgbWVkIFwiLnBhY2tcIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM5OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXMgZmlsZSAnJXMnIgogbXNnc3RyICJrYW4gaW50ZSB0YSBza3JpdmEgJXMtZmlsIFwiJXNcIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQwNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY2xvc2Ugd3JpdHRlbiAlcyBmaWxlICclcyciCiBtc2dzdHIgImthbiBpbnRlIHN0w6RuZ2Egc2tyaXZlbiAlcy1maWwgXCIlc1wiIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDMxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDYzCiBtc2dpZCAiZXJyb3Igd2hpbGUgY2xvc2luZyBwYWNrIGZpbGUiCiBtc2dzdHIgImZlbCB2aWQgc3TDpG5nbmluZyBhdiBwYWtldGZpbCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ0NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ3NwogbXNnaWQgImNhbm5vdCBzdG9yZSBwYWNrIGZpbGUiCiBtc2dzdHIgImthbiBpbnRlIHNwYXJhIHBha2V0ZmlsIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDUzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDg1CiBtc2dpZCAiY2Fubm90IHN0b3JlIGluZGV4IGZpbGUiCiBtc2dzdHIgImthbiBpbnRlIHNwYXJhIGluZGV4ZmlsIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDk3IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcyNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUyOSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2suaW5kZXh2ZXJzaW9uPSU8UFJJdTMyPiIKIG1zZ3N0ciAiZmVsYWt0aWcgcGFjay5pbmRleHZlcnNpb249JTxQUkl1MzI+IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTY1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBvcGVuIGV4aXN0aW5nIHBhY2sgZmlsZSAnJXMnIgogbXNnc3RyICJLYW4gaW50ZSDDtnBwbmEgYmVmaW50bGlnIHBha2V0ZmlsIFwiJXNcIiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU2NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgb3BlbiBleGlzdGluZyBwYWNrIGlkeCBmaWxlIGZvciAnJXMnIgogbXNnc3RyICJLYW4gaW50ZSDDtnBwbmEgYmVmaW50bGlnIHBha2V0LWlkeC1maWwgZsO2ciBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2MTUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAibm9uIGRlbHRhOiAlZCBvYmplY3QiCiBtc2dpZF9wbHVyYWwgIm5vbiBkZWx0YTogJWQgb2JqZWN0cyIKIG1zZ3N0clswXSAiaWNrZS1kZWx0YTogJWQgb2JqZWt0IgogbXNnc3RyWzFdICJpY2tlLWRlbHRhOiAlZCBvYmpla3QiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2MjIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2hhaW4gbGVuZ3RoID0gJWQ6ICVsdSBvYmplY3QiCiBtc2dpZF9wbHVyYWwgImNoYWluIGxlbmd0aCA9ICVkOiAlbHUgb2JqZWN0cyIKIG1zZ3N0clswXSAia2VkamVsw6RuZ2QgPSAlZDogJWx1IG9iamVrdCIKIG1zZ3N0clsxXSAia2VkamVsw6RuZ2QgPSAlZDogJWx1IG9iamVrdCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY1OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY5MwogbXNnaWQgIkNhbm5vdCBjb21lIGJhY2sgdG8gY3dkIgogbXNnc3RyICJLYW4gaW50ZSBnw6UgdGlsbGJha2EgdGlsbCBhcmJldHNrYXRhbG9nZW4gKGN3ZCkiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MDggYnVpbHRpbi9pbmRleC1wYWNrLmM6MTcxMQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTcyNyBidWlsdGluL2luZGV4LXBhY2suYzoxNzMxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQyIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NjEgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgJXMiCiBtc2dzdHIgImZlbGFrdGlnICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQ3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzgxCiBtc2dpZCAiLS1maXgtdGhpbiBjYW5ub3QgYmUgdXNlZCB3aXRob3V0IC0tc3RkaW4iCiBtc2dzdHIgIi0tZml4LXRoaW4ga2FuIGludGUgYW52w6RuZGFzIG1lZCAtLXN0ZGluIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQ5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzgzCiBtc2dpZCAiLS1zdGRpbiByZXF1aXJlcyBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICItLXN0ZGluIGtyw6R2ZXIgZXR0IGdpdC1hcmtpdiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc1NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4OQogbXNnaWQgIi0tdmVyaWZ5IHdpdGggbm8gcGFja2ZpbGUgbmFtZSBnaXZlbiIKIG1zZ3N0ciAiLS12ZXJpZnkgYW5nYXZzIHV0YW4gcGFrZXRmaWxuYW1uIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxODAzIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1ODAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4MzcgYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjU4MgogbXNnaWQgImZzY2sgZXJyb3IgaW4gcGFjayBvYmplY3RzIgogbXNnc3RyICJmc2NrLWZlbCBpIHBhY2thdCBvYmpla3QiCiAKQEAgLTEyMDQ5LDQyICsxNTE1MSw0MiBAQAogbXNnaWQgIm5vdCBjb3B5aW5nIHRlbXBsYXRlcyBmcm9tICclcyc6ICVzIgogbXNnc3RyICJrb3BpZXJhZGUgaW50ZSBtYWxsYXIgZnLDpW4gXCIlc1wiOiAlcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6MzI5CisjOiBidWlsdGluL2luaXQtZGIuYzozMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGhhbmRsZSBmaWxlIHR5cGUgJWQiCiBtc2dzdHIgImthbiBpbnRlIGhhbnRlcmEgZmlsdHlwICVkIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzozMzIKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbW92ZSAlcyB0byAlcyIKIG1zZ3N0ciAia2FuIGludGUgZmx5dHRhICVzIHRpbGwgJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjM0OSBidWlsdGluL2luaXQtZGIuYzozNTIKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjM1NCBidWlsdGluL2luaXQtZGIuYzozNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIiVzIGZpbm5zIHJlZGFuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MDUKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWluaXRpYWxpemVkIGV4aXN0aW5nIHNoYXJlZCBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgIk9taW5pdGllcmFkZSBiZWZpbnRsaWd0IGRlbGF0IEdpdC1hcmtpdiBpICVzJXNcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDA2CisjOiBidWlsdGluL2luaXQtZGIuYzo0MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVpbml0aWFsaXplZCBleGlzdGluZyBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgIk9taW5pdGllcmFkZSBiZWZpbnRsaWd0IEdpdC1hcmtpdiBpICVzJXNcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDEwCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW5pdGlhbGl6ZWQgZW1wdHkgc2hhcmVkIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAiSW5pdGllcmFkZSB0b210IGRlbGF0IEdpdC1hcmtpdiBpICVzJXNcbiIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDExCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW5pdGlhbGl6ZWQgZW1wdHkgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgogbXNnc3RyICJJbml0aWVyYWRlIHRvbXQgR2l0LWFya2l2IGkgJXMlc1xuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0NjAKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ2OAogbXNnaWQgIiIKICJnaXQgaW5pdCBbLXEgfCAtLXF1aWV0XSBbLS1iYXJlXSBbLS10ZW1wbGF0ZT08dGVtcGxhdGUtZGlyZWN0b3J5Pl0gWy0tIgogInNoYXJlZFs9PHBlcm1pc3Npb25zPl1dIFs8ZGlyZWN0b3J5Pl0iCkBAIC0xMjA5MiwyNSArMTUxOTQsMjUgQEAKICJnaXQgaW5pdCBbLXEgfCAtLXF1aWV0XSBbLS1iYXJlXSBbLS10ZW1wbGF0ZT08bWFsbGthdGFsb2c+XSBbLS0iCiAic2hhcmVkWz08YmVow7ZyaWdoZXRlcj5dXSBbPGthdGFsb2c+XSIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDgzCisjOiBidWlsdGluL2luaXQtZGIuYzo0OTEKIG1zZ2lkICJwZXJtaXNzaW9ucyIKIG1zZ3N0ciAiYmVow7ZyaWdoZXRlciIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NDg0CisjOiBidWlsdGluL2luaXQtZGIuYzo0OTIKIG1zZ2lkICJzcGVjaWZ5IHRoYXQgdGhlIGdpdCByZXBvc2l0b3J5IGlzIHRvIGJlIHNoYXJlZCBhbW9uZ3N0IHNldmVyYWwgdXNlcnMiCi1tc2dzdHIgImFuZ2UgYXR0IGdpdC1hcmtpdmV0IHNrYWxsIGRlbGFzIGJsYW5kIGZsZXJhIGFudsOkbmRhcmUiCittc2dzdHIgImFuZ2UgYXR0IGdpdC1hcmtpdmV0IHNrYSBkZWxhcyBibGFuZCBmbGVyYSBhbnbDpG5kYXJlIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo1MTggYnVpbHRpbi9pbml0LWRiLmM6NTIzCisjOiBidWlsdGluL2luaXQtZGIuYzo1MjkgYnVpbHRpbi9pbml0LWRiLmM6NTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBta2RpciAlcyIKIG1zZ3N0ciAia2FuIGludGUgc2thcGEga2F0YWxvZ2VuIChta2RpcikgJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUyNworIzogYnVpbHRpbi9pbml0LWRiLmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGRpciB0byAlcyIKIG1zZ3N0ciAia2FuIGludGUgYnl0YSBrYXRhbG9nIChjaGRpcikgdGlsbCAlcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTQ4CisjOiBidWlsdGluL2luaXQtZGIuYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiVzIChvciAtLXdvcmstdHJlZT08ZGlyZWN0b3J5Pikgbm90IGFsbG93ZWQgd2l0aG91dCBzcGVjaWZ5aW5nICVzIChvciAtLWdpdC0iCkBAIC0xMjExOSwxMiArMTUyMjEsMTIgQEAKICIlcyAoZWxsZXIgLS13b3JrLXRyZWU9PGthdGFsb2c+KSBpbnRlIHRpbGzDpXRldCB1dGFuIGF0dCBhbmdlICVzIChlbGxlciAtLWdpdC0iCiAiZGlyPTxrYXRhbG9nPikiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU3NgorIzogYnVpbHRpbi9pbml0LWRiLmM6NTg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBhY2Nlc3Mgd29yayB0cmVlICclcyciCiBtc2dzdHIgIkthbiBpbnRlIGtvbW1hIMOldCBhcmJldHNrYXRhbG9nZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjE1CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjE2CiBtc2dpZCAiIgogImdpdCBpbnRlcnByZXQtdHJhaWxlcnMgWy0taW4tcGxhY2VdIFstLXRyaW0tZW1wdHldIFsoLS10cmFpbGVyICIKICI8dG9rZW4+Wyg9fDopPHZhbHVlPl0pLi4uXSBbPGZpbGU+Li4uXSIKQEAgLTEyMTMyLDU2MiArMTUyMzQsNTY2IEBACiAiZ2l0IGludGVycHJldC10cmFpbGVycyBbLS1pbi1wbGFjZV0gWy0tdHJpbS1lbXB0eV0gWygtLXRyYWlsZXIgIgogIjxzeW1ib2w+Wyg9fDopPHbDpHJkZT5dKS4uLl0gWzxmaWw+Li4uXSIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NQogbXNnaWQgImVkaXQgZmlsZXMgaW4gcGxhY2UiCiBtc2dzdHIgInJlZGlnZXJhIGZpbGVyIHDDpSBwbGF0cyIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NgogbXNnaWQgInRyaW0gZW1wdHkgdHJhaWxlcnMiCiBtc2dzdHIgInRhIGJvcnQgdG9tbWEgc2zDpHByYWRlciIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5OAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5OQogbXNnaWQgIndoZXJlIHRvIHBsYWNlIHRoZSBuZXcgdHJhaWxlciIKLW1zZ3N0ciAidmFyIG55YSBzbMOkcHJhZGVyIHNrYWxsIHBsYWNlcmFzIgorbXNnc3RyICJ2YXIgbnlhIHNsw6RwcmFkZXIgc2thIHBsYWNlcmFzIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDEKIG1zZ2lkICJhY3Rpb24gaWYgdHJhaWxlciBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAiYXR0IGfDtnJhIG9tIHNsw6RwcmFkZXIgcmVkYW4gZmlubnMiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAyCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMwogbXNnaWQgImFjdGlvbiBpZiB0cmFpbGVyIGlzIG1pc3NpbmciCiBtc2dzdHIgImF0dCBnw7ZyYSBvbSBzbMOkcHJhZGVyIHNha25hcyIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDQKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA1CiBtc2dpZCAib3V0cHV0IG9ubHkgdGhlIHRyYWlsZXJzIgogbXNnc3RyICJ2aXNhIGVuZGFzdCBzbMOkcHJhZGVyIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDYKIG1zZ2lkICJkbyBub3QgYXBwbHkgY29uZmlnIHJ1bGVzIgogbXNnc3RyICJhbnbDpG5kIGludGUgcmVnbGVyIGZyw6VuIGtvbmZpZ3VyYXRpb25lbiIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDYKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA3CiBtc2dpZCAiam9pbiB3aGl0ZXNwYWNlLWNvbnRpbnVlZCB2YWx1ZXMiCiBtc2dzdHIgInNsw6UgaWhvcCB2w6RyZGVuIGF2ZGVsYWRlIG1lZCBibGFua3N0ZWciCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA3CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwOAogbXNnaWQgInNldCBwYXJzaW5nIG9wdGlvbnMiCiBtc2dzdHIgInbDpGxqIHRvbGtuaW5nc2FsdGVybmF0aXYiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA5CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMAogbXNnaWQgImRvIG5vdCB0cmVhdCAtLS0gc3BlY2lhbGx5IgogbXNnc3RyICJ0b2xrYSBpbnRlIC0tLSBzcGVjaWVsbHQiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMQogbXNnaWQgInRyYWlsZXIiCiBtc2dzdHIgInNsw6RwcmFkIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTIKIG1zZ2lkICJ0cmFpbGVyKHMpIHRvIGFkZCIKIG1zZ3N0ciAic2zDpHByYWQoZXIpIGF0dCBsw6RnZ2EgdGlsbCIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMjAKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTIzCiBtc2dpZCAiLS10cmFpbGVyIHdpdGggLS1vbmx5LWlucHV0IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tdHJhaWxlciBtZWQgLS1vbmx5LWlucHV0IGdlciBpbmdlbiBtZW5pbmciCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTMwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEzMwogbXNnaWQgIm5vIGlucHV0IGZpbGUgZ2l2ZW4gZm9yIGluLXBsYWNlIGVkaXRpbmciCiBtc2dzdHIgImluZ2VuIGluZGF0YWZpbCBhbmdpdmVuIGbDtnIgcmVkaWdlcmluZyBww6UgcGxhdHMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTQKKyM6IGJ1aWx0aW4vbG9nLmM6NTYKIG1zZ2lkICJnaXQgbG9nIFs8b3B0aW9ucz5dIFs8cmV2aXNpb24tcmFuZ2U+XSBbWy0tXSA8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgbG9nIFs8ZmxhZ2dvcj5dIFs8dmVyc2lvbnNpbnRlcnZhbGw+XSBbWy0tXSA8c8O2a3bDpGc+Li4uXSIKIAotIzogYnVpbHRpbi9sb2cuYzo1NQorIzogYnVpbHRpbi9sb2cuYzo1NwogbXNnaWQgImdpdCBzaG93IFs8b3B0aW9ucz5dIDxvYmplY3Q+Li4uIgogbXNnc3RyICJnaXQgc2hvdyBbPGZsYWdnb3I+XSA8b2JqZWt0Pi4uLiIKIAotIzogYnVpbHRpbi9sb2cuYzo5OQorIzogYnVpbHRpbi9sb2cuYzoxMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCAtLWRlY29yYXRlIG9wdGlvbjogJXMiCiBtc2dzdHIgIm9naWx0aWcgZmxhZ2dhIGbDtnIgLS1kZWNvcmF0ZTogJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTYyCi1tc2dpZCAic3VwcHJlc3MgZGlmZiBvdXRwdXQiCi1tc2dzdHIgInVuZGVydHJ5Y2sgZGlmZi11dGRhdGEiCi0KLSM6IGJ1aWx0aW4vbG9nLmM6MTYzCisjOiBidWlsdGluL2xvZy5jOjE3NAogbXNnaWQgInNob3cgc291cmNlIgogbXNnc3RyICJ2aXNhIGvDpGxsa29kIgogCi0jOiBidWlsdGluL2xvZy5jOjE2NAorIzogYnVpbHRpbi9sb2cuYzoxNzUKIG1zZ2lkICJVc2UgbWFpbCBtYXAgZmlsZSIKIG1zZ3N0ciAiQW52w6RuZCBlLXBvc3RtYXBwbmluZ3NmaWwiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY2CisjOiBidWlsdGluL2xvZy5jOjE3NwogbXNnaWQgIm9ubHkgZGVjb3JhdGUgcmVmcyB0aGF0IG1hdGNoIDxwYXR0ZXJuPiIKIG1zZ3N0ciAiZGVrb3JlcmEgZW5kYXN0IHJlZmVyZW5zZXIgc29tIG1vdHN2YXJhciA8bcO2bnN0ZXI+IgogCi0jOiBidWlsdGluL2xvZy5jOjE2OAorIzogYnVpbHRpbi9sb2cuYzoxNzkKIG1zZ2lkICJkbyBub3QgZGVjb3JhdGUgcmVmcyB0aGF0IG1hdGNoIDxwYXR0ZXJuPiIKIG1zZ3N0ciAiZGVrb3JlcmEgaW50ZSByZWZlcmVuc2VyIHNvbSBtb3RzdmFyYXIgPG3Dtm5zdGVyPiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjkKKyM6IGJ1aWx0aW4vbG9nLmM6MTgwCiBtc2dpZCAiZGVjb3JhdGUgb3B0aW9ucyIKIG1zZ3N0ciAiZGVrb3JlcmluZ3NmbGFnZ29yIgogCi0jOiBidWlsdGluL2xvZy5jOjE3MgorIzogYnVpbHRpbi9sb2cuYzoxODMKIG1zZ2lkICJQcm9jZXNzIGxpbmUgcmFuZ2UgbixtIGluIGZpbGUsIGNvdW50aW5nIGZyb20gMSIKIG1zZ3N0ciAiQmVoYW5kbGEgcmFkaW50ZXJ2YWxsZXQgbixtIGkgZmlsZW4sIG1lZCBiw7ZyamFuIHDDpSAxIgogCi0jOiBidWlsdGluL2xvZy5jOjI3MAorIzogYnVpbHRpbi9sb2cuYzoyODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmluYWwgb3V0cHV0OiAlZCAlc1xuIgogbXNnc3RyICJTbHV0dXRkYXRhOiAlZCAlc1xuIgogCi0jOiBidWlsdGluL2xvZy5jOjUyMgorIzogYnVpbHRpbi9sb2cuYzo1MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IHNob3cgJXM6IGJhZCBmaWxlIgogbXNnc3RyICJnaXQgc2hvdyAlczogZmVsYWt0aWcgZmlsIgogCi0jOiBidWlsdGluL2xvZy5jOjUzNyBidWlsdGluL2xvZy5jOjYzMQorIzogYnVpbHRpbi9sb2cuYzo1NTAgYnVpbHRpbi9sb2cuYzo2NDUKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgotbXNnc3RyICJLdW5kZSBpbnRlIGzDpHNhIG9iamVrdGV0ICVzIgorbXNnaWQgImNvdWxkIG5vdCByZWFkIG9iamVjdCAlcyIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBvYmpla3RldCAlcyIKIAotIzogYnVpbHRpbi9sb2cuYzo2NTUKKyM6IGJ1aWx0aW4vbG9nLmM6NjcwCiAjLCBjLWZvcm1hdAotbXNnaWQgIlVua25vd24gdHlwZTogJWQiCi1tc2dzdHIgIk9rw6RuZCB0eXA6ICVkIgorbXNnaWQgInVua25vd24gdHlwZTogJWQiCittc2dzdHIgIm9rw6RuZCB0eXA6ICVkIgogCi0jOiBidWlsdGluL2xvZy5jOjc3NgorIzogYnVpbHRpbi9sb2cuYzo4MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgY292ZXIgZnJvbSBkZXNjcmlwdGlvbiBtb2RlIgorbXNnc3RyICIlczogb2dpbHRpZ3Qgb21zbGFnIGZyw6VuIGJlc2tyaXZuaW5nc2zDpGdlIgorCisjOiBidWlsdGluL2xvZy5jOjgyMQogbXNnaWQgImZvcm1hdC5oZWFkZXJzIHdpdGhvdXQgdmFsdWUiCiBtc2dzdHIgImZvcm1hdC5oZWFkZXJzIHV0YW4gdsOkcmRlIgogCi0jOiBidWlsdGluL2xvZy5jOjg3NworIzogYnVpbHRpbi9sb2cuYzo5MzYKIG1zZ2lkICJuYW1lIG9mIG91dHB1dCBkaXJlY3RvcnkgaXMgdG9vIGxvbmciCiBtc2dzdHIgIm5hbW5ldCBww6UgdXRkYXRha2F0YWxvZ2VuIMOkciBmw7ZyIGzDpW5ndCIKIAotIzogYnVpbHRpbi9sb2cuYzo4OTMKKyM6IGJ1aWx0aW4vbG9nLmM6OTUyCiAjLCBjLWZvcm1hdAotbXNnaWQgIkNhbm5vdCBvcGVuIHBhdGNoIGZpbGUgJXMiCi1tc2dzdHIgIkthbiBpbnRlIMO2cHBuYSBwYXRjaGZpbGVuICVzIgorbXNnaWQgImNhbm5vdCBvcGVuIHBhdGNoIGZpbGUgJXMiCittc2dzdHIgImthbiBpbnRlIMO2cHBuYSBwYXRjaGZpbGVuICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjkxMAotbXNnaWQgIk5lZWQgZXhhY3RseSBvbmUgcmFuZ2UuIgotbXNnc3RyICJCZWjDtnZlciBwcmVjaXMgZXR0IGludGVydmFsbC4iCisjOiBidWlsdGluL2xvZy5jOjk2OQorbXNnaWQgIm5lZWQgZXhhY3RseSBvbmUgcmFuZ2UiCittc2dzdHIgImJlaMO2dmVyIHByZWNpcyBldHQgaW50ZXJ2YWxsIgogCi0jOiBidWlsdGluL2xvZy5jOjkyMAotbXNnaWQgIk5vdCBhIHJhbmdlLiIKLW1zZ3N0ciAiSW50ZSBldHQgaW50ZXJ2YWxsLiIKKyM6IGJ1aWx0aW4vbG9nLmM6OTc5Cittc2dpZCAibm90IGEgcmFuZ2UiCittc2dzdHIgImludGUgZXR0IGludGVydmFsbCIKIAotIzogYnVpbHRpbi9sb2cuYzoxMDQzCi1tc2dpZCAiQ292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKLW1zZ3N0ciAiT21zbGFnc2JyZXZldCBiZWjDtnZlciBlLXBvc3Rmb3JtYXQiCisjOiBidWlsdGluL2xvZy5jOjExNDMKK21zZ2lkICJjb3ZlciBsZXR0ZXIgbmVlZHMgZW1haWwgZm9ybWF0IgorbXNnc3RyICJvbXNsYWdzYnJldmV0IGJlaMO2dmVyIGUtcG9zdGZvcm1hdCIKIAotIzogYnVpbHRpbi9sb2cuYzoxMTE5CisjOiBidWlsdGluL2xvZy5jOjExNDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGNvdmVyLWxldHRlciBmaWxlIgorbXNnc3RyICJtaXNzbHlja2FkZXMgc2thcGEgZmlsIGbDtnIgb21zbGFnc2JyZXYiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnNhbmUgaW4tcmVwbHktdG86ICVzIgogbXNnc3RyICJ0b2tpZ3QgaW4tcmVwbHktdG86ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjExNDYKKyM6IGJ1aWx0aW4vbG9nLmM6MTI1NQogbXNnaWQgImdpdCBmb3JtYXQtcGF0Y2ggWzxvcHRpb25zPl0gWzxzaW5jZT4gfCA8cmV2aXNpb24tcmFuZ2U+XSIKIG1zZ3N0ciAiZ2l0IGZvcm1hdC1wYXRjaCBbPGZsYWdnb3I+XSBbPHNlZGFuPiB8IDxyZXZpc2lvbnNpbnRlcnZhbGw+XSIKIAotIzogYnVpbHRpbi9sb2cuYzoxMjA0Ci1tc2dpZCAiVHdvIG91dHB1dCBkaXJlY3Rvcmllcz8iCi1tc2dzdHIgIlR2w6UgdXRkYXRha2F0YWxvZ2VyPyIKKyM6IGJ1aWx0aW4vbG9nLmM6MTMxMworbXNnaWQgInR3byBvdXRwdXQgZGlyZWN0b3JpZXM/IgorbXNnc3RyICJ0dsOlIHV0ZGF0YWthdGFsb2dlcj8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTMxMSBidWlsdGluL2xvZy5jOjIwNTQgYnVpbHRpbi9sb2cuYzoyMDU2IGJ1aWx0aW4vbG9nLmM6MjA2OAorIzogYnVpbHRpbi9sb2cuYzoxNDI0IGJ1aWx0aW4vbG9nLmM6MjE5NyBidWlsdGluL2xvZy5jOjIxOTkgYnVpbHRpbi9sb2cuYzoyMjExCiAjLCBjLWZvcm1hdAotbXNnaWQgIlVua25vd24gY29tbWl0ICVzIgotbXNnc3RyICJPa8OkbmQgaW5jaGVja25pbmcgJXMiCittc2dpZCAidW5rbm93biBjb21taXQgJXMiCittc2dzdHIgIm9rw6RuZCBpbmNoZWNrbmluZyAlcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzIxIGJ1aWx0aW4vbm90ZXMuYzo4OTQgYnVpbHRpbi90YWcuYzo1MjYKKyM6IGJ1aWx0aW4vbG9nLmM6MTQzNCBidWlsdGluL3JlcGxhY2UuYzo1OCBidWlsdGluL3JlcGxhY2UuYzoyMDcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjIxMAogIywgYy1mb3JtYXQKLW1zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKLW1zZ3N0ciAiS3VuZGUgaW50ZSBzbMOlIHVwcCBcIiVzXCIgc29tIGVuIGdpbHRpZyByZWZlcmVucy4iCittc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZiIKK21zZ3N0ciAibWlzc2x5Y2thZGVzIHNsw6UgdXBwIFwiJXNcIiBzb20gZW4gZ2lsdGlnIHJlZmVyZW5zIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMjYKLW1zZ2lkICJDb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlLiIKLW1zZ3N0ciAiS3VuZGUgaW50ZSBoaXR0YSBleGFrdCBzYW1tYW5zbGFnbmluZ3NiYXMuIgorIzogYnVpbHRpbi9sb2cuYzoxNDM5Cittc2dpZCAiY291bGQgbm90IGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKK21zZ3N0ciAia3VuZGUgaW50ZSBoaXR0YSBleGFrdCBzYW1tYW5zbGFnbmluZ3NiYXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTMzMAorIzogYnVpbHRpbi9sb2cuYzoxNDQzCiBtc2dpZCAiIgotIkZhaWxlZCB0byBnZXQgdXBzdHJlYW0sIGlmIHlvdSB3YW50IHRvIHJlY29yZCBiYXNlIGNvbW1pdCBhdXRvbWF0aWNhbGx5LFxuIgorImZhaWxlZCB0byBnZXQgdXBzdHJlYW0sIGlmIHlvdSB3YW50IHRvIHJlY29yZCBiYXNlIGNvbW1pdCBhdXRvbWF0aWNhbGx5LFxuIgogInBsZWFzZSB1c2UgZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10byB0byB0cmFjayBhIHJlbW90ZSBicmFuY2guXG4iCi0iT3IgeW91IGNvdWxkIHNwZWNpZnkgYmFzZSBjb21taXQgYnkgLS1iYXNlPTxiYXNlLWNvbW1pdC1pZD4gbWFudWFsbHkuIgorIk9yIHlvdSBjb3VsZCBzcGVjaWZ5IGJhc2UgY29tbWl0IGJ5IC0tYmFzZT08YmFzZS1jb21taXQtaWQ+IG1hbnVhbGx5IgogbXNnc3RyICIiCi0iS3VuZGUgaW50ZSBow6RtdGEgdXBwc3Ryw7ZtLCBvbSBkdSB2aWxsIGxhZ3JhIGJhc2luY2hlY2tuaW5nZW4gYXV0b21hdGlza3QsXG4iCisia3VuZGUgaW50ZSBow6RtdGEgdXBwc3Ryw7ZtLCBvbSBkdSB2aWxsIGxhZ3JhIGJhc2luY2hlY2tuaW5nZW4gYXV0b21hdGlza3QsXG4iCiAiYW52w6RuZCBnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvIGbDtnIgYXR0IHNww6VyYSBlbiBmasOkcnJncmVuLlxuIgotIkVsbGVyIHPDpSBrYW4gZHUgYW5nZSBiYXNpbmNoZWNrbmluZyBtZWQgLS1iYXNlPTxiYXMtaW5jaGVja25pbmdzLWlkPiAiCi0ibWFudWVsbHQuIgorIkVsbGVyIHPDpSBrYW4gZHUgYW5nZSBiYXNpbmNoZWNrbmluZyBtZWQgLS1iYXNlPTxiYXMtaW5jaGVja25pbmdzLWlkPiBtYW51ZWxsdCIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzUwCi1tc2dpZCAiRmFpbGVkIHRvIGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKLW1zZ3N0ciAiS3VuZGUgaW50ZSBoaXR0YSBleGFrdCBzYW1tYW5zbGFnbmluZ3NiYXMiCisjOiBidWlsdGluL2xvZy5jOjE0NjMKK21zZ2lkICJmYWlsZWQgdG8gZmluZCBleGFjdCBtZXJnZSBiYXNlIgorbXNnc3RyICJrdW5kZSBpbnRlIGhpdHRhIGV4YWt0IHNhbW1hbnNsYWduaW5nc2JhcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzYxCisjOiBidWlsdGluL2xvZy5jOjE0NzQKIG1zZ2lkICJiYXNlIGNvbW1pdCBzaG91bGQgYmUgdGhlIGFuY2VzdG9yIG9mIHJldmlzaW9uIGxpc3QiCiBtc2dzdHIgImJhc2luY2hlY2tuaW5nZW4gYsO2ciB2YXJhIGbDtnJmYWRlciB0aWxsIHJldmlzaW9uc2xpc3RhbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzY1CisjOiBidWlsdGluL2xvZy5jOjE0NzgKIG1zZ2lkICJiYXNlIGNvbW1pdCBzaG91bGRuJ3QgYmUgaW4gcmV2aXNpb24gbGlzdCIKIG1zZ3N0ciAiYmFzaW5jaGVja25pbmdlbiBiw7ZyIGludGUgdmFyYSBpIHJldmlzaW9uc2xpc3RhbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDE4CisjOiBidWlsdGluL2xvZy5jOjE1MzEKIG1zZ2lkICJjYW5ub3QgZ2V0IHBhdGNoIGlkIgogbXNnc3RyICJrYW4gaW50ZSBow6RtdGEgcGF0Y2gtaWQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTQ3MAorIzogYnVpbHRpbi9sb2cuYzoxNTgzCiBtc2dpZCAiZmFpbGVkIHRvIGluZmVyIHJhbmdlLWRpZmYgcmFuZ2VzIgogbXNnc3RyICJtaXNzbHlja2FkZXMgcsOka25hIHV0IGludGVydmFsbCByYW5nZS1kaWZmIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MTUKKyM6IGJ1aWx0aW4vbG9nLmM6MTYyOQogbXNnaWQgInVzZSBbUEFUQ0ggbi9tXSBldmVuIHdpdGggYSBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgImFudsOkbmQgW1BBVENIIG4vbV0gw6R2ZW4gZsO2ciBlbiBlbnNhbSBwYXRjaCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTE4CisjOiBidWlsdGluL2xvZy5jOjE2MzIKIG1zZ2lkICJ1c2UgW1BBVENIXSBldmVuIHdpdGggbXVsdGlwbGUgcGF0Y2hlcyIKIG1zZ3N0ciAiYW52w6RuZCBbUEFUQ0hdIMOkdmVuIGbDtnIgZmxlcmEgcGF0Y2hhciIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTIyCisjOiBidWlsdGluL2xvZy5jOjE2MzYKIG1zZ2lkICJwcmludCBwYXRjaGVzIHRvIHN0YW5kYXJkIG91dCIKIG1zZ3N0ciAic2tyaXYgcGF0Y2hhcm5hIHDDpSBzdGFuZGFyZCB1dCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI0CisjOiBidWlsdGluL2xvZy5jOjE2MzgKIG1zZ2lkICJnZW5lcmF0ZSBhIGNvdmVyIGxldHRlciIKIG1zZ3N0ciAiZ2VuZXJlcmEgZXR0IGbDtmxqZWJyZXYiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyNgorIzogYnVpbHRpbi9sb2cuYzoxNjQwCiBtc2dpZCAidXNlIHNpbXBsZSBudW1iZXIgc2VxdWVuY2UgZm9yIG91dHB1dCBmaWxlIG5hbWVzIgogbXNnc3RyICJhbnbDpG5kIGVua2VsIG51bW1lcnNla3ZlbnMgZsO2ciB1dGRhdGFmaWxuYW1uIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MjcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0MQogbXNnaWQgInNmeCIKIG1zZ3N0ciAic2Z4IgogCi0jOiBidWlsdGluL2xvZy5jOjE1MjgKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0MgogbXNnaWQgInVzZSA8c2Z4PiBpbnN0ZWFkIG9mICcucGF0Y2gnIgogbXNnc3RyICJhbnbDpG5kIDxzZng+IGlzdMOkbGxldCBmw7ZyIFwiLnBhdGNoXCIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzMAorIzogYnVpbHRpbi9sb2cuYzoxNjQ0CiBtc2dpZCAic3RhcnQgbnVtYmVyaW5nIHBhdGNoZXMgYXQgPG4+IGluc3RlYWQgb2YgMSIKIG1zZ3N0ciAiYsO2cmphIG51bXJlcmEgcGF0Y2hhciBww6UgPG4+IGlzdMOkbGxldCBmw7ZyIDEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzMgorIzogYnVpbHRpbi9sb2cuYzoxNjQ2CiBtc2dpZCAibWFyayB0aGUgc2VyaWVzIGFzIE50aCByZS1yb2xsIgogbXNnc3RyICJtYXJrZXJhIHNlcmllbiBzb20gTjp0ZSBmw7Zyc8O2ayIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTM0CisjOiBidWlsdGluL2xvZy5jOjE2NDgKIG1zZ2lkICJVc2UgW1JGQyBQQVRDSF0gaW5zdGVhZCBvZiBbUEFUQ0hdIgogbXNnc3RyICJBbnbDpG5kICBbUkZDIFBBVENIXSBpc3TDpGxsZXQgZsO2ciBbUEFUQ0hdIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1MQorbXNnaWQgImNvdmVyLWZyb20tZGVzY3JpcHRpb24tbW9kZSIKK21zZ3N0ciAiY292ZXItZnJvbS1kZXNjcmlwdGlvbi1sw6RnZSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjUyCittc2dpZCAiZ2VuZXJhdGUgcGFydHMgb2YgYSBjb3ZlciBsZXR0ZXIgYmFzZWQgb24gYSBicmFuY2gncyBkZXNjcmlwdGlvbiIKK21zZ3N0ciAic2thcGEgZGVsYXIgYXYgb21zbGFnc2JyZXZldCBiYXNlcmF0IHDDpSBncmVuYmVza3JpdmVsc2VuIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTQKIG1zZ2lkICJVc2UgWzxwcmVmaXg+XSBpbnN0ZWFkIG9mIFtQQVRDSF0iCiBtc2dzdHIgIkFudsOkbmQgWzxwcmVmaXg+XSBpc3TDpGxsZXQgZsO2ciBbUEFUQ0hdIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1NwogbXNnaWQgInN0b3JlIHJlc3VsdGluZyBmaWxlcyBpbiA8ZGlyPiIKIG1zZ3N0ciAic3BhcmEgZmlsZXJuYSBpIDxrYXRhbG9nPiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTQzCisjOiBidWlsdGluL2xvZy5jOjE2NjAKIG1zZ2lkICJkb24ndCBzdHJpcC9hZGQgW1BBVENIXSIKIG1zZ3N0ciAidGEgaW50ZSBib3J0IGVsbGVyIGzDpGdnIHRpbGwgW1BBVENIXSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTQ2CisjOiBidWlsdGluL2xvZy5jOjE2NjMKIG1zZ2lkICJkb24ndCBvdXRwdXQgYmluYXJ5IGRpZmZzIgogbXNnc3RyICJza3JpdiBpbnRlIGJpbsOkcmEgZGlmZmFyIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDgKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2NQogbXNnaWQgIm91dHB1dCBhbGwtemVybyBoYXNoIGluIEZyb20gaGVhZGVyIgogbXNnc3RyICJhbnbDpG5kIGhhc2h2w6RyZGUgbWVkIG5vbGxvciBpIEZyb20taHV2dWQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1MAorIzogYnVpbHRpbi9sb2cuYzoxNjY3CiBtc2dpZCAiZG9uJ3QgaW5jbHVkZSBhIHBhdGNoIG1hdGNoaW5nIGEgY29tbWl0IHVwc3RyZWFtIgogbXNnc3RyICJ0YSBpbnRlIG1lZCBwYXRjaGFyIHNvbSBtb3RzdmFyYXIgZW4gdXBwc3Ryw7Ztc2luY2hlY2tuaW5nIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTIKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2OQogbXNnaWQgInNob3cgcGF0Y2ggZm9ybWF0IGluc3RlYWQgb2YgZGVmYXVsdCAocGF0Y2ggKyBzdGF0KSIKIG1zZ3N0ciAidmlzYSBwYXRjaGZvcm1hdCBpc3TDpGxsZXQgZsO2ciBzdGFuZGFyZCAocGF0Y2ggKyBzdGF0KSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU0CisjOiBidWlsdGluL2xvZy5jOjE2NzEKIG1zZ2lkICJNZXNzYWdpbmciCiBtc2dzdHIgIkUtcG9zdCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU1CisjOiBidWlsdGluL2xvZy5jOjE2NzIKIG1zZ2lkICJoZWFkZXIiCiBtc2dzdHIgImh1dnVkIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTYKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MwogbXNnaWQgImFkZCBlbWFpbCBoZWFkZXIiCiBtc2dzdHIgImzDpGdnIHRpbGwgZS1wb3N0aHV2dWQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NyBidWlsdGluL2xvZy5jOjE1NTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3NCBidWlsdGluL2xvZy5jOjE2NzYKIG1zZ2lkICJlbWFpbCIKIG1zZ3N0ciAiZXBvc3QiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NworIzogYnVpbHRpbi9sb2cuYzoxNjc0CiBtc2dpZCAiYWRkIFRvOiBoZWFkZXIiCiBtc2dzdHIgImzDpGdnIHRpbGwgbW90dGFnYXJodXZ1ZCAoXCJUbzpcIikiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1OQorIzogYnVpbHRpbi9sb2cuYzoxNjc2CiBtc2dpZCAiYWRkIENjOiBoZWFkZXIiCiBtc2dzdHIgImzDpGdnIHRpbGwga29waWVodXZ1ZCAoXCJDYzpcIikiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2MQorIzogYnVpbHRpbi9sb2cuYzoxNjc4CiBtc2dpZCAiaWRlbnQiCiBtc2dzdHIgImlkZW50IgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjIKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3OQogbXNnaWQgInNldCBGcm9tIGFkZHJlc3MgdG8gPGlkZW50PiAob3IgY29tbWl0dGVyIGlkZW50IGlmIGFic2VudCkiCiBtc2dzdHIgInPDpHR0IEZyw6VuLWFkcmVzcyB0aWxsIDxpZGVudD4gKGVsbGVyIGluY2hlY2thcmUgb20gaWRlbnQgc2FrbmFzKSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTY0CisjOiBidWlsdGluL2xvZy5jOjE2ODEKIG1zZ2lkICJtZXNzYWdlLWlkIgogbXNnc3RyICJtZWRkZWxhbmRlLWlkIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjUKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4MgogbXNnaWQgIm1ha2UgZmlyc3QgbWFpbCBhIHJlcGx5IHRvIDxtZXNzYWdlLWlkPiIKIG1zZ3N0ciAiZ8O2ciBkZXQgZsO2cnN0YSBicmV2ZXQgZXR0IHN2YXIgdGlsbCA8bWVkZGVsYW5kZS1pZD4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NiBidWlsdGluL2xvZy5jOjE1NjkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4MyBidWlsdGluL2xvZy5jOjE2ODYKIG1zZ2lkICJib3VuZGFyeSIKIG1zZ3N0ciAiZ3LDpG5zIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4NAogbXNnaWQgImF0dGFjaCB0aGUgcGF0Y2giCiBtc2dzdHIgImJpZm9nYSBwYXRjaGVuIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4NwogbXNnaWQgImlubGluZSB0aGUgcGF0Y2giCiBtc2dzdHIgImfDtnIgcGF0Y2hlbiBldHQgaW5saW5lLW9iamVrdCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc0CisjOiBidWlsdGluL2xvZy5jOjE2OTEKIG1zZ2lkICJlbmFibGUgbWVzc2FnZSB0aHJlYWRpbmcsIHN0eWxlczogc2hhbGxvdywgZGVlcCIKIG1zZ3N0ciAiYWt0aXZlcmEgYnJldnRyw6VkbmluZywgdHlwZXI6IHNoYWxsb3csIGRlZXAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3NgorIzogYnVpbHRpbi9sb2cuYzoxNjkzCiBtc2dpZCAic2lnbmF0dXJlIgogbXNnc3RyICJzaWduYXR1ciIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc3CisjOiBidWlsdGluL2xvZy5jOjE2OTQKIG1zZ2lkICJhZGQgYSBzaWduYXR1cmUiCiBtc2dzdHIgImzDpGdnIHRpbGwgc2lnbmF0dXIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3OAorIzogYnVpbHRpbi9sb2cuYzoxNjk1CiBtc2dpZCAiYmFzZS1jb21taXQiCiBtc2dzdHIgImJhc2luY2hlY2tuaW5nIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5NgogbXNnaWQgImFkZCBwcmVyZXF1aXNpdGUgdHJlZSBpbmZvIHRvIHRoZSBwYXRjaCBzZXJpZXMiCiBtc2dzdHIgImzDpGdnIHRpbGwgZsO2cmhhbmRza3LDpHZkIHRyw6RkaW5mbyBpIHBhdGNoc2VyaWVuIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODEKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5OAogbXNnaWQgImFkZCBhIHNpZ25hdHVyZSBmcm9tIGEgZmlsZSIKIG1zZ3N0ciAibMOkZ2cgdGlsbCBzaWduYXR1ciBmcsOlbiBmaWwiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4MgorIzogYnVpbHRpbi9sb2cuYzoxNjk5CiBtc2dpZCAiZG9uJ3QgcHJpbnQgdGhlIHBhdGNoIGZpbGVuYW1lcyIKIG1zZ3N0ciAidmlzYSBpbnRlIGZpbG5hbW4gZsO2ciBwYXRjaGFyIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODQKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMQogbXNnaWQgInNob3cgcHJvZ3Jlc3Mgd2hpbGUgZ2VuZXJhdGluZyBwYXRjaGVzIgogbXNnc3RyICJ2aXNhIGbDtnJsb3Bwc2luZGlrYXRvciBtZWRhbiBwYXRjaGFyIHNrYXBhcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTg1Ci1tc2dpZCAicmV2IgotbXNnc3RyICJyZXYiCi0KLSM6IGJ1aWx0aW4vbG9nLmM6MTU4NgorIzogYnVpbHRpbi9sb2cuYzoxNzAzCiBtc2dpZCAic2hvdyBjaGFuZ2VzIGFnYWluc3QgPHJldj4gaW4gY292ZXIgbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAidmlzYSDDpG5kcmluZ2FyIG1vdCA8cmV2PiBpIG9tc2xhZ3NicmV2IGVsbGVyIGVuc2FtIHBhdGNoIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODkKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwNgogbXNnaWQgInNob3cgY2hhbmdlcyBhZ2FpbnN0IDxyZWZzcGVjPiBpbiBjb3ZlciBsZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgogbXNnc3RyICJ2aXNhIMOkbmRyaW5nYXIgbW90IDxyZWZzcGVjPiBpIG9tc2xhZ3NicmV2IGVsbGVyIGVuc2FtIHBhdGNoIgogCi0jOiBidWlsdGluL2xvZy5jOjE1OTEKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwOAogbXNnaWQgInBlcmNlbnRhZ2UgYnkgd2hpY2ggY3JlYXRpb24gaXMgd2VpZ2h0ZWQiCiBtc2dzdHIgInByb2NlbnQgc29tIHNrYXBlbHNlIHbDpGdzIG1lZCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjY2CisjOiBidWlsdGluL2xvZy5jOjE3OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBpZGVudCBsaW5lOiAlcyIKIG1zZ3N0ciAib2dpbHRpZyBpZGVudC1yYWQ6ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjE2ODEKKyM6IGJ1aWx0aW4vbG9nLmM6MTgwNwogbXNnaWQgIi1uIGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICItbiBvY2ggLWsga2FuIGludGUgYW52w6RuZGFzIHNhbXRpZGlndCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjgzCisjOiBidWlsdGluL2xvZy5jOjE4MDkKIG1zZ2lkICItLXN1YmplY3QtcHJlZml4Ly0tcmZjIGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICItLXN1YmplY3QtcHJlZml4Ly0tcmZjIG9jaCAtayBrYW4gaW50ZSBhbnbDpG5kYXMgc2FtdGlkaWd0IgogCi0jOiBidWlsdGluL2xvZy5jOjE2OTEKKyM6IGJ1aWx0aW4vbG9nLmM6MTgxNwogbXNnaWQgIi0tbmFtZS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgImthbiBpbnRlIGFudsOkbmRhIC0tbmFtZS1vbmx5IgogCi0jOiBidWlsdGluL2xvZy5jOjE2OTMKKyM6IGJ1aWx0aW4vbG9nLmM6MTgxOQogbXNnaWQgIi0tbmFtZS1zdGF0dXMgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAia2FuIGludGUgYW52w6RuZGEgLS1uYW1lLXN0YXR1cyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjk1CisjOiBidWlsdGluL2xvZy5jOjE4MjEKIG1zZ2lkICItLWNoZWNrIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgImthbiBpbnRlIGFudsOkbmRhIC0tY2hlY2siCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTcyNworIzogYnVpbHRpbi9sb2cuYzoxODU0CiBtc2dpZCAic3RhbmRhcmQgb3V0cHV0LCBvciBkaXJlY3RvcnksIHdoaWNoIG9uZT8iCi1tc2dzdHIgInN0YW5kYXJkIHV0LCBlbGxlciBrYXRhbG9nLCB2aWxrZW4gc2thbGwgZGV0IHZhcmE/IgorbXNnc3RyICJzdGFuZGFyZCB1dCwgZWxsZXIga2F0YWxvZywgdmlsa2VuIHNrYSBkZXQgdmFyYT8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTcyOQotIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgotbXNnc3RyICJLdW5kZSBpbnRlIHNrYXBhIGthdGFsb2dlbiBcIiVzXCIiCi0KLSM6IGJ1aWx0aW4vbG9nLmM6MTgxNgorIzogYnVpbHRpbi9sb2cuYzoxOTU4CiBtc2dpZCAiLS1pbnRlcmRpZmYgcmVxdWlyZXMgLS1jb3Zlci1sZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgogbXNnc3RyICItLWludGVyZGlmZiBrcsOkdmVyIC0tY292ZXItbGV0dGVyIGVsbGVyIGVuc2FtIHBhdGNoIgogCi0jOiBidWlsdGluL2xvZy5jOjE4MjAKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2MgogbXNnaWQgIkludGVyZGlmZjoiCiBtc2dzdHIgIkludGVyZGlmZjoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgyMQorIzogYnVpbHRpbi9sb2cuYzoxOTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludGVyZGlmZiBhZ2FpbnN0IHYlZDoiCiBtc2dzdHIgIkludGVyZGlmZiBtb3QgdiVkOiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODI3CisjOiBidWlsdGluL2xvZy5jOjE5NjkKIG1zZ2lkICItLWNyZWF0aW9uLWZhY3RvciByZXF1aXJlcyAtLXJhbmdlLWRpZmYiCiBtc2dzdHIgIi0tY3JlYXRpb24tZmFjdG9yIGtyw6R2ZXIgLS1yYW5nZS1kaWZmIgogCi0jOiBidWlsdGluL2xvZy5jOjE4MzEKKyM6IGJ1aWx0aW4vbG9nLmM6MTk3MwogbXNnaWQgIi0tcmFuZ2UtZGlmZiByZXF1aXJlcyAtLWNvdmVyLWxldHRlciBvciBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgIi0tcmFuZ2UtZGlmZiBrcsOkdmVyIC0tY292ZXItbGV0dGVyIGVsbGVyIGVuc2FtIHBhdGNoIgogCi0jOiBidWlsdGluL2xvZy5jOjE4MzkKKyM6IGJ1aWx0aW4vbG9nLmM6MTk4MQogbXNnaWQgIlJhbmdlLWRpZmY6IgogbXNnc3RyICJJbnRlcnZhbGwtZGlmZjoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg0MAorIzogYnVpbHRpbi9sb2cuYzoxOTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJhbmdlLWRpZmYgYWdhaW5zdCB2JWQ6IgogbXNnc3RyICJJbnRlcnZhbGwtZGlmZiBtb3QgdiVkOiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODUxCisjOiBidWlsdGluL2xvZy5jOjE5OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgc2lnbmF0dXJlIGZpbGUgJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBzaWduYXR1cmZpbCBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg4NworIzogYnVpbHRpbi9sb2cuYzoyMDI5CiBtc2dpZCAiR2VuZXJhdGluZyBwYXRjaGVzIgogbXNnc3RyICJTa2FwYXIgcGF0Y2hhciIKIAotIzogYnVpbHRpbi9sb2cuYzoxOTMxCi1tc2dpZCAiRmFpbGVkIHRvIGNyZWF0ZSBvdXRwdXQgZmlsZXMiCi1tc2dzdHIgIk1pc3NseWNrYWRlcyBza2FwYSB1dGRhdGFmaWxlciIKKyM6IGJ1aWx0aW4vbG9nLmM6MjA3MworbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgb3V0cHV0IGZpbGVzIgorbXNnc3RyICJtaXNzbHlja2FkZXMgc2thcGEgdXRkYXRhZmlsZXIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTk4OQorIzogYnVpbHRpbi9sb2cuYzoyMTMyCiBtc2dpZCAiZ2l0IGNoZXJyeSBbLXZdIFs8dXBzdHJlYW0+IFs8aGVhZD4gWzxsaW1pdD5dXV0iCiBtc2dzdHIgImdpdCBjaGVycnkgWy12XSBbPHVwcHN0csO2bT4gWzxodXZ1ZD4gWzxncsOkbnM+XV1dIgogCi0jOiBidWlsdGluL2xvZy5jOjIwNDMKKyM6IGJ1aWx0aW4vbG9nLmM6MjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IGZpbmQgYSB0cmFja2VkIHJlbW90ZSBicmFuY2gsIHBsZWFzZSBzcGVjaWZ5IDx1cHN0cmVhbT4gbWFudWFsbHkuXG4iCiBtc2dzdHIgIkt1bmRlIGludGUgaGl0dGEgZW4gc3DDpXJhZCBmasOkcnJncmVuLCBhbmdlIDx1cHBzdHLDtm0+IG1hbnVlbGx0LlxuIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NDY5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NDcwCiBtc2dpZCAiZ2l0IGxzLWZpbGVzIFs8b3B0aW9ucz5dIFs8ZmlsZT4uLi5dIgogbXNnc3RyICJnaXQgbHMtZmlsZXMgWzxmbGFnZ29yPl0gWzxmaWw+Li4uXSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUyNQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUyNgogbXNnaWQgImlkZW50aWZ5IHRoZSBmaWxlIHN0YXR1cyB3aXRoIHRhZ3MiCiBtc2dzdHIgImlkZW50aWZpZXJhIGZpbHN0YXR1cyBtZWQgdGFnZ2FyIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTI3CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTI4CiBtc2dpZCAidXNlIGxvd2VyY2FzZSBsZXR0ZXJzIGZvciAnYXNzdW1lIHVuY2hhbmdlZCcgZmlsZXMiCiBtc2dzdHIgImFudsOkbmQgc23DpSBib2tzdMOkdmVyIGbDtnIgXCJhbnRhIG9mw7Zyw6RuZHJhZGVcIi1maWxlciIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUyOQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMAogbXNnaWQgInVzZSBsb3dlcmNhc2UgbGV0dGVycyBmb3IgJ2ZzbW9uaXRvciBjbGVhbicgZmlsZXMiCiBtc2dzdHIgImFudsOkbmQgc23DpSBib2tzdMOkdmVyIGbDtnIgXCJmc21vbml0b3IgY2xlYW5cIi1maWxlciIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMgogbXNnaWQgInNob3cgY2FjaGVkIGZpbGVzIGluIHRoZSBvdXRwdXQgKGRlZmF1bHQpIgogbXNnc3RyICJ2aXNhIGNhY2hhZGUgZmlsZXIgaSB1dGRhdGEgKHN0YW5kYXJkKSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNAogbXNnaWQgInNob3cgZGVsZXRlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJ2aXNhIGJvcnR0YWduYSBmaWxlciBpIHV0ZGF0YSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNgogbXNnaWQgInNob3cgbW9kaWZpZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAidmlzYSBtb2RpZmllcmFkZSBmaWxlciBpIHV0ZGF0YSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOAogbXNnaWQgInNob3cgb3RoZXIgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAidmlzYSBhbmRyYSBmaWxlciBpIHV0ZGF0YSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MAogbXNnaWQgInNob3cgaWdub3JlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJ2aXNhIGlnbm9yZXJhZGUgZmlsZXIgaSB1dGRhdGEiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDIKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDMKIG1zZ2lkICJzaG93IHN0YWdlZCBjb250ZW50cycgb2JqZWN0IG5hbWUgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAidmlzYSBrw7ZhdCBpbm5laMOlbGxzIG9iamVrdG5hbW4gaSB1dGRhdGEiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDQKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDUKIG1zZ2lkICJzaG93IGZpbGVzIG9uIHRoZSBmaWxlc3lzdGVtIHRoYXQgbmVlZCB0byBiZSByZW1vdmVkIgogbXNnc3RyICJ2aXNhIGZpbGVyIGkgZmlsc3lzdGVtZXQgc29tIGJlaMO2dmVyIHRhcyBib3J0IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ2CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ3CiBtc2dpZCAic2hvdyAnb3RoZXInIGRpcmVjdG9yaWVzJyBuYW1lcyBvbmx5IgogbXNnc3RyICJ2aXNhIGVuZGFzdCBuYW1uIGbDtnIgXCJhbmRyYVwiIGthdGFsb2dlciIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OQogbXNnaWQgInNob3cgbGluZSBlbmRpbmdzIG9mIGZpbGVzIgogbXNnc3RyICJ2aXNhIHJhZHNsdXQgaSBmaWxlciIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1MAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1MQogbXNnaWQgImRvbid0IHNob3cgZW1wdHkgZGlyZWN0b3JpZXMiCiBtc2dzdHIgInZpc2EgaW50ZSB0b21tYSBrYXRhbG9nZXIiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTMKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTQKIG1zZ2lkICJzaG93IHVubWVyZ2VkIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgInZpc2EgZWogc2FtbWFuc2xhZ25hIGZpbGVyIGkgdXRkYXRhIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTU1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU2CiBtc2dpZCAic2hvdyByZXNvbHZlLXVuZG8gaW5mb3JtYXRpb24iCiBtc2dzdHIgInZpc2EgXCJyZXNvbHZlLXVuZG9cIi1pbmZvcm1hdGlvbiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1OAogbXNnaWQgInNraXAgZmlsZXMgbWF0Y2hpbmcgcGF0dGVybiIKIG1zZ3N0ciAiaG9wcGEgw7Z2ZXIgZmlsZXIgc29tIG1vdHN2YXJhciBtw7Zuc3RlciIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU2MAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU2MQogbXNnaWQgImV4Y2x1ZGUgcGF0dGVybnMgYXJlIHJlYWQgZnJvbSA8ZmlsZT4iCiBtc2dzdHIgImV4a2x1ZGVyYSBtw7Zuc3RlciBzb20gbMOkc2VzIGZyw6VuIDxmaWw+IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTYzCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTY0CiBtc2dpZCAicmVhZCBhZGRpdGlvbmFsIHBlci1kaXJlY3RvcnkgZXhjbHVkZSBwYXR0ZXJucyBpbiA8ZmlsZT4iCiBtc2dzdHIgImzDpHMgeXR0ZXJsaWdhcmUgcGVyLWthdGFsb2ctZXhrbHVkZXJpbmdzbcO2bnN0ZXIgZnLDpW4gPGZpbD4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjYKIG1zZ2lkICJhZGQgdGhlIHN0YW5kYXJkIGdpdCBleGNsdXNpb25zIgogbXNnc3RyICJsw6RnZyB0aWxsIGdpdDpzIHN0YW5kYXJkZXhrbHVkZXJpbmdhciIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU2OQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MAogbXNnaWQgIm1ha2UgdGhlIG91dHB1dCByZWxhdGl2ZSB0byB0aGUgcHJvamVjdCB0b3AgZGlyZWN0b3J5IgogbXNnc3RyICJnw7ZyIHV0ZGF0YSByZWxhdGl2IHRpbGwgcHJvamVrdGV0cyB0b3Bwa2F0YWxvZyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MwogbXNnaWQgInJlY3Vyc2UgdGhyb3VnaCBzdWJtb2R1bGVzIgogbXNnc3RyICJyZWt1cnNlcmEgbmVyIGkgdW5kZXJtb2R1bGVyIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTc0CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc1CiBtc2dpZCAiaWYgYW55IDxmaWxlPiBpcyBub3QgaW4gdGhlIGluZGV4LCB0cmVhdCB0aGlzIGFzIGFuIGVycm9yIgogbXNnc3RyICJvbSBlbiA8ZmlsPiBpbnRlIMOkciBpbmRleGV0LCBiZXRyYWt0YSBkZXQgc29tIGV0dCBmZWwiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzYKIG1zZ2lkICJ0cmVlLWlzaCIKIG1zZ3N0ciAidHLDpGQtaWd0IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTc2CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc3CiBtc2dpZCAicHJldGVuZCB0aGF0IHBhdGhzIHJlbW92ZWQgc2luY2UgPHRyZWUtaXNoPiBhcmUgc3RpbGwgcHJlc2VudCIKIG1zZ3N0ciAibMOldHNhcyBhdHQgc8O2a3bDpGdhciBib3J0dGFnbmEgc2VkYW4gPHRyw6RkLWlndD4gZm9ydGZhcmFuZGUgZmlubnMiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzgKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzkKIG1zZ2lkICJzaG93IGRlYnVnZ2luZyBkYXRhIgogbXNnc3RyICJ2aXNhIGZlbHPDtmtuaW5nc3V0ZGF0YSIKIApAQCAtMTI3MDUsNyArMTU4MTEsNyBAQAogbXNnaWQgImRvIG5vdCBwcmludCByZW1vdGUgVVJMIgogbXNnc3RyICJ2aXNhIGludGUgZmrDpHJyLVVSTCIKIAotIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2MCBidWlsdGluL2xzLXJlbW90ZS5jOjYyIGJ1aWx0aW4vcmViYXNlLmM6OTAzCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjYwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjIgYnVpbHRpbi9yZWJhc2UuYzoxNTYxCiBtc2dpZCAiZXhlYyIKIG1zZ3N0ciAiZXhlYyIKIApAQCAtMTI3MjksMTEgKzE1ODM1LDExIEBACiBtc2dpZCAidGFrZSB1cmwuPGJhc2U+Lmluc3RlYWRPZiBpbnRvIGFjY291bnQiCiBtc2dzdHIgInRhIGjDpG5zeW4gdGlsbCB1cmwuPGJhcz4uaW5zdGVhZE9mIgogCi0jOiBidWlsdGluL2xzLXJlbW90ZS5jOjczCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjcyCiBtc2dpZCAiZXhpdCB3aXRoIGV4aXQgY29kZSAyIGlmIG5vIG1hdGNoaW5nIHJlZnMgYXJlIGZvdW5kIgogbXNnc3RyICJhdnNsdXRhIG1lZCBmZWxrb2QgMiBvbSBtb3RzdmFyYW5kZSByZWZlcmVuc2VyIGludGUgaGl0dGFzIgogCi0jOiBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjc1CiBtc2dpZCAic2hvdyB1bmRlcmx5aW5nIHJlZiBpbiBhZGRpdGlvbiB0byB0aGUgb2JqZWN0IHBvaW50ZWQgYnkgaXQiCiBtc2dzdHIgInZpc2EgdW5kZXJsaWdnYW5kZSByZWZlcmVucyBvY2ggb2JqZWt0ZXQgZGV0IHBla2FyIHDDpSIKIApAQCAtMTI3NzYsMjYzICsxNTg4MiwyODQgQEAKICM6IGJ1aWx0aW4vbWFpbHNwbGl0LmM6MjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImVtcHR5IG1ib3g6ICclcyciCi1tc2dzdHIgInRvbSBtYm94OiDigJ0lc+KAnSIKK21zZ3N0ciAidG9tIG1ib3g6IFwiJXNcIiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjUyCisjOiBidWlsdGluL21lcmdlLmM6NTUKIG1zZ2lkICJnaXQgbWVyZ2UgWzxvcHRpb25zPl0gWzxjb21taXQ+Li4uXSIKIG1zZ3N0ciAiZ2l0IG1lcmdlIFs8ZmxhZ2dvcj5dIFs8aW5jaGVja25pbmc+Li4uXSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjUzCisjOiBidWlsdGluL21lcmdlLmM6NTYKIG1zZ2lkICJnaXQgbWVyZ2UgLS1hYm9ydCIKIG1zZ3N0ciAiZ2l0IG1lcmdlIC0tYWJvcnQiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1NAorIzogYnVpbHRpbi9tZXJnZS5jOjU3CiBtc2dpZCAiZ2l0IG1lcmdlIC0tY29udGludWUiCiBtc2dzdHIgImdpdCBtZXJnZSAtLWNvbnRpbnVlIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTExCisjOiBidWlsdGluL21lcmdlLmM6MTE5CiBtc2dpZCAic3dpdGNoIGBtJyByZXF1aXJlcyBhIHZhbHVlIgogbXNnc3RyICJmbGFnZ2FuIFwibVwiIGJlaMO2dmVyIGV0dCB2w6RyZGUiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNzcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgcmVxdWlyZXMgYSB2YWx1ZSIKK21zZ3N0ciAiZmxhZ2dhbiBcIiVzXCIgYmVow7Z2ZXIgZXR0IHbDpHJkZSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCBtZXJnZSBzdHJhdGVneSAnJXMnLlxuIgogbXNnc3RyICJLdW5kZSBpbnRlIGhpdHRhIHNhbW1hbnNsYWduaW5nc3N0cmF0ZWdpbiBcIiVzXCIuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNzgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXZhaWxhYmxlIHN0cmF0ZWdpZXMgYXJlOiIKIG1zZ3N0ciAiVGlsbGfDpG5nbGlnYSBzdHJhdGVnaWVyIMOkcjoiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxODMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXZhaWxhYmxlIGN1c3RvbSBzdHJhdGVnaWVzIGFyZToiCiBtc2dzdHIgIlRpbGxnw6RuZ2xpZ2Egc2tyw6RkZGFyc3lkZGEgc3RyYXRlZ2llciDDpHI6IgogCi0jOiBidWlsdGluL21lcmdlLmM6MjM0IGJ1aWx0aW4vcHVsbC5jOjE0MworIzogYnVpbHRpbi9tZXJnZS5jOjI0NSBidWlsdGluL3B1bGwuYzoxMzIKIG1zZ2lkICJkbyBub3Qgc2hvdyBhIGRpZmZzdGF0IGF0IHRoZSBlbmQgb2YgdGhlIG1lcmdlIgogbXNnc3RyICJ2aXNhIGludGUgZW4gZGlmZnN0YXQgbsOkciBzYW1tYW5zbGFnbmluZ2VuIMOkciBmw6RyZGlnIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjM3IGJ1aWx0aW4vcHVsbC5jOjE0NgorIzogYnVpbHRpbi9tZXJnZS5jOjI0OCBidWlsdGluL3B1bGwuYzoxMzUKIG1zZ2lkICJzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCiBtc2dzdHIgInZpc2EgZW4gZGlmZnN0YXQgbsOkciBzYW1tYW5zbGFnbmluZ2VuIMOkciBmw6RyZGlnIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjM4IGJ1aWx0aW4vcHVsbC5jOjE0OQorIzogYnVpbHRpbi9tZXJnZS5jOjI0OSBidWlsdGluL3B1bGwuYzoxMzgKIG1zZ2lkICIoc3lub255bSB0byAtLXN0YXQpIgogbXNnc3RyICIoc3lub255bSB0aWxsIC0tc3RhdCkiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDAgYnVpbHRpbi9wdWxsLmM6MTUyCisjOiBidWlsdGluL21lcmdlLmM6MjUxIGJ1aWx0aW4vcHVsbC5jOjE0MQogbXNnaWQgImFkZCAoYXQgbW9zdCA8bj4pIGVudHJpZXMgZnJvbSBzaG9ydGxvZyB0byBtZXJnZSBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAiIgogImzDpGdnIHRpbGwgKHNvbSBtZXN0IDxuPikgcG9zdGVyIGZyw6VuIHNob3J0bG9nIHRpbGwgaW5jaGVja25pbmdzbWVkZGVsYW5kZXQiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDMgYnVpbHRpbi9wdWxsLmM6MTU4CisjOiBidWlsdGluL21lcmdlLmM6MjU0IGJ1aWx0aW4vcHVsbC5jOjE0NwogbXNnaWQgImNyZWF0ZSBhIHNpbmdsZSBjb21taXQgaW5zdGVhZCBvZiBkb2luZyBhIG1lcmdlIgogbXNnc3RyICJza2FwYSBlbiBlbnNhbSBpbmNoZWNrbmluZyBpc3TDpGxsZXQgZsO2ciBlbiBzYW1tYW5zbGFnbmluZyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0NSBidWlsdGluL3B1bGwuYzoxNjEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTYgYnVpbHRpbi9wdWxsLmM6MTUwCiBtc2dpZCAicGVyZm9ybSBhIGNvbW1pdCBpZiB0aGUgbWVyZ2Ugc3VjY2VlZHMgKGRlZmF1bHQpIgogbXNnc3RyICJ1dGbDtnIgZW4gaW5jaGVja25pbmcgb20gc2FtbWFuc2xhZ25pbmdlbiBseWNrYWRlcyAoc3RhbmRhcmQpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQ3IGJ1aWx0aW4vcHVsbC5jOjE2NAorIzogYnVpbHRpbi9tZXJnZS5jOjI1OCBidWlsdGluL3B1bGwuYzoxNTMKIG1zZ2lkICJlZGl0IG1lc3NhZ2UgYmVmb3JlIGNvbW1pdHRpbmciCiBtc2dzdHIgInJlZGlnZXJhIG1lZGRlbGFuZGUgaW5uYW4gaW5jaGVja25pbmciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjAKIG1zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQgKGRlZmF1bHQpIgogbXNnc3RyICJ0aWxsw6V0IHNuYWJic3BvbG5pbmcgKHN0YW5kYXJkKSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1MCBidWlsdGluL3B1bGwuYzoxNzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjIgYnVpbHRpbi9wdWxsLmM6MTYwCiBtc2dpZCAiYWJvcnQgaWYgZmFzdC1mb3J3YXJkIGlzIG5vdCBwb3NzaWJsZSIKIG1zZ3N0ciAiYXZicnl0IG9tIHNuYWJic3BvbG5pbmcgaW50ZSDDpHIgbcO2amxpZyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NCBidWlsdGluL3B1bGwuYzoxNzMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjYgYnVpbHRpbi9wdWxsLmM6MTYzCiBtc2dpZCAidmVyaWZ5IHRoYXQgdGhlIG5hbWVkIGNvbW1pdCBoYXMgYSB2YWxpZCBHUEcgc2lnbmF0dXJlIgogbXNnc3RyICJiZWtyw6RmdGEgYXR0IGRlbiBuYW1uZ2l2bmEgaW5jaGVja25pbmdlbiBoYXIgZW4gZ2lsdGlnIEdQRy1zaWduYXR1ciIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NSBidWlsdGluL25vdGVzLmM6Nzg0IGJ1aWx0aW4vcHVsbC5jOjE3NwotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTYgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg2IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCisjOiBidWlsdGluL21lcmdlLmM6MjY3IGJ1aWx0aW4vbm90ZXMuYzo3ODcgYnVpbHRpbi9wdWxsLmM6MTY3CisjOiBidWlsdGluL3JlYmFzZS5jOjUyMCBidWlsdGluL3JlYmFzZS5jOjE1NzUgYnVpbHRpbi9yZXZlcnQuYzoxMTQKIG1zZ2lkICJzdHJhdGVneSIKIG1zZ3N0ciAic3RyYXRlZ2kiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTYgYnVpbHRpbi9wdWxsLmM6MTc4CisjOiBidWlsdGluL21lcmdlLmM6MjY4IGJ1aWx0aW4vcHVsbC5jOjE2OAogbXNnaWQgIm1lcmdlIHN0cmF0ZWd5IHRvIHVzZSIKIG1zZ3N0ciAic2FtbWFuc2xhZ25pbmdzc3RyYXRlZ2kgYXR0IGFudsOkbmRhIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU3IGJ1aWx0aW4vcHVsbC5jOjE4MQorIzogYnVpbHRpbi9tZXJnZS5jOjI2OSBidWlsdGluL3B1bGwuYzoxNzEKIG1zZ2lkICJvcHRpb249dmFsdWUiCiBtc2dzdHIgImFsdGVybmF0aXY9dsOkcmRlIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU4IGJ1aWx0aW4vcHVsbC5jOjE4MgorIzogYnVpbHRpbi9tZXJnZS5jOjI3MCBidWlsdGluL3B1bGwuYzoxNzIKIG1zZ2lkICJvcHRpb24gZm9yIHNlbGVjdGVkIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICJhbHRlcm5hdGl2IGbDtnIgdmFsZCBzYW1tYW5zbGFnbmluZ3NzdHJhdGVnaSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI2MAorIzogYnVpbHRpbi9tZXJnZS5jOjI3MgogbXNnaWQgIm1lcmdlIGNvbW1pdCBtZXNzYWdlIChmb3IgYSBub24tZmFzdC1mb3J3YXJkIG1lcmdlKSIKIG1zZ3N0ciAiaW5jaGVja25pbmdzbWVkZGVsYW5kZSBmw7ZyIChpY2tlIHNuYWJic3BvbGFuZGUpIHNhbW1hbnNsYWduaW5nIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjY3CisjOiBidWlsdGluL21lcmdlLmM6Mjc5CiBtc2dpZCAiYWJvcnQgdGhlIGN1cnJlbnQgaW4tcHJvZ3Jlc3MgbWVyZ2UiCiBtc2dzdHIgImF2YnJ5dCBkZW4gcMOlZ8OlZW5kZSBzYW1tYW5zbGFnbmluZ2VuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjY5CisjOiBidWlsdGluL21lcmdlLmM6MjgxCittc2dpZCAiLS1hYm9ydCBidXQgbGVhdmUgaW5kZXggYW5kIHdvcmtpbmcgdHJlZSBhbG9uZSIKK21zZ3N0ciAiLS1hYm9ydCBtZW4gbMOkbW5hIGluZGV4IG9jaCBhcmJldHNrYXRhbG9nIGVuc2FtbWEiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODMKIG1zZ2lkICJjb250aW51ZSB0aGUgY3VycmVudCBpbi1wcm9ncmVzcyBtZXJnZSIKIG1zZ3N0ciAiZm9ydHPDpHR0IGRlbiBww6Vnw6VlbmRlIHNhbW1hbnNsYWduaW5nZW4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzEgYnVpbHRpbi9wdWxsLmM6MTg5CisjOiBidWlsdGluL21lcmdlLmM6Mjg1IGJ1aWx0aW4vcHVsbC5jOjE3OQogbXNnaWQgImFsbG93IG1lcmdpbmcgdW5yZWxhdGVkIGhpc3RvcmllcyIKIG1zZ3N0ciAidGlsbMOldCBzYW1tYW5zbGFnbmluZyBhdiBvcmVsYXRlcmFkZSBoaXN0b3JpZXIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzcKLW1zZ2lkICJ2ZXJpZnkgY29tbWl0LW1zZyBob29rIgotbXNnc3RyICJiZWtyw6RmdGEgY29tbWl0LW1zZy1rcm9rIgorIzogYnVpbHRpbi9tZXJnZS5jOjI5MQorbXNnaWQgImJ5cGFzcyBwcmUtbWVyZ2UtY29tbWl0IGFuZCBjb21taXQtbXNnIGhvb2tzIgorbXNnc3RyICJmw7ZyYmlnw6UgcHJlLW1lcmdlLWNvbW1pdC0gb2NoIGNvbW1pdC1tc2cta3Jva2FyIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzAyCisjOiBidWlsdGluL21lcmdlLmM6MzA4CiBtc2dpZCAiY291bGQgbm90IHJ1biBzdGFzaC4iCiBtc2dzdHIgImt1bmRlIGvDtnJhIHN0YXNoLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMwNworIzogYnVpbHRpbi9tZXJnZS5jOjMxMwogbXNnaWQgInN0YXNoIGZhaWxlZCIKIG1zZ3N0ciAic3Rhc2ggbWlzc2x5Y2thZGVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzEyCisjOiBidWlsdGluL21lcmdlLmM6MzE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdDogJXMiCiBtc2dzdHIgImludGUgZXR0IGdpbHRpZ3Qgb2JqZWt0OiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMzNCBidWlsdGluL21lcmdlLmM6MzUxCisjOiBidWlsdGluL21lcmdlLmM6MzQwIGJ1aWx0aW4vbWVyZ2UuYzozNTcKIG1zZ2lkICJyZWFkLXRyZWUgZmFpbGVkIgogbXNnc3RyICJyZWFkLXRyZWUgbWlzc2x5Y2thZGVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzgxCisjOiBidWlsdGluL21lcmdlLmM6Mzg3CiBtc2dpZCAiIChub3RoaW5nIHRvIHNxdWFzaCkiCiBtc2dzdHIgIiAoaW5nZXQgYXR0IHBsYXR0YSB0aWxsKSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjM5MgorIzogYnVpbHRpbi9tZXJnZS5jOjM5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJTcXVhc2ggY29tbWl0IC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCiBtc2dzdHIgIlRpbGxwbGF0dG5pbmdzaW5jaGVja25pbmcgLS0gdXBwZGF0ZXJhciBpbnRlIEhFQURcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjQ0MgorIzogYnVpbHRpbi9tZXJnZS5jOjQ0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBtZXJnZSBtZXNzYWdlIC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCiBtc2dzdHIgIkluZ2V0IHNhbW1hbnNsYWduaW5nc21lZGRlbGFuZGUgLS0gdXBwZGF0ZXJhciBpbnRlIEhFQURcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjQ5MworIzogYnVpbHRpbi9tZXJnZS5jOjQ5OQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgY29tbWl0IgogbXNnc3RyICJcIiVzXCIgdmVya2FyIGludGUgcGVrYSBww6UgZW4gaW5jaGVja25pbmciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1ODAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkIGJyYW5jaC4lcy5tZXJnZW9wdGlvbnMgc3RyaW5nOiAlcyIKIG1zZ3N0ciAiRmVsYWt0aWcgYnJhbmNoLiVzLm1lcmdlb3B0aW9ucy1zdHLDpG5nOiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjcwMQorIzogYnVpbHRpbi9tZXJnZS5jOjcwOAogbXNnaWQgIk5vdCBoYW5kbGluZyBhbnl0aGluZyBvdGhlciB0aGFuIHR3byBoZWFkcyBtZXJnZS4iCiBtc2dzdHIgIkhhbnRlcmFyIGludGUgbsOlZ290IGFubmF0IMOkbiBlbiBzYW1tYW5zbGFnbmluZyBhdiB0dsOlIGh1dnVkZW4uIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzE1CisjOiBidWlsdGluL21lcmdlLmM6NzIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gb3B0aW9uIGZvciBtZXJnZS1yZWN1cnNpdmU6IC1YJXMiCiBtc2dzdHIgIkZlbGFrdGlnIGZsYWdnYSBmw7ZyIG1lcmdlLXJlY3Vyc2l2ZTogLVglcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjczMAorIzogYnVpbHRpbi9tZXJnZS5jOjczNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgJXMiCiBtc2dzdHIgImt1bmRlIGludGUgc2tyaXZhICVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzgyCisjOiBidWlsdGluL21lcmdlLmM6Nzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZWFkIGZyb20gJyVzJyIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBsw6RzYSBmcsOlbiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGNvbW1pdHRpbmcgbWVyZ2U7IHVzZSAnZ2l0IGNvbW1pdCcgdG8gY29tcGxldGUgdGhlIG1lcmdlLlxuIgogbXNnc3RyICIiCiAiQ2hlY2thciBpbnRlIGluIHNhbW1hbnNsYWduaW5nZW47IGFudsOkbmQgXCJnaXQgY29tbWl0XCIgZsO2ciBhdHQgc2x1dGbDtnJhICIKICJkZW4uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTcKLSMsIGMtZm9ybWF0CisjOiBidWlsdGluL21lcmdlLmM6ODA0CiBtc2dpZCAiIgogIlBsZWFzZSBlbnRlciBhIGNvbW1pdCBtZXNzYWdlIHRvIGV4cGxhaW4gd2h5IHRoaXMgbWVyZ2UgaXMgbmVjZXNzYXJ5LFxuIgogImVzcGVjaWFsbHkgaWYgaXQgbWVyZ2VzIGFuIHVwZGF0ZWQgdXBzdHJlYW0gaW50byBhIHRvcGljIGJyYW5jaC5cbiIKICJcbiIKLSJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBpZ25vcmVkLCBhbmQgYW4gZW1wdHkgbWVzc2FnZSBhYm9ydHNcbiIKLSJ0aGUgY29tbWl0LlxuIgogbXNnc3RyICIiCiAiQW5nZSBldHQgaW5jaGVja25pbmdzbWVkZGVsYW5kZSBmw7ZyIGF0dCBmw7Zya2xhcmEgdmFyZsO2ciBzYW1tYW5zbGFnbmluZ2VuXG4iCiAiw6RyIG7DtmR2w6RuZGlnLCBzcGVjaWVsbHQgb20gZGVuIHNsw6VyIGluIGVuIHVwcGRhdGVyYWQgdXBwc3Ryw7ZtIGkgZW5cbiIKICJ0ZW1hZ3Jlbi5cbiIKICJcbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjgwOQorbXNnaWQgIkFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCittc2dzdHIgIkV0dCB0b210IG1lZGRlbGFuZGUgYXZicnl0ZXIgaW5jaGVja25pbmdlbi5cbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjgxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTGluZXMgc3RhcnRpbmcgd2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzXG4iCisidGhlIGNvbW1pdC5cbiIKK21zZ3N0ciAiIgogIlJhZGVyIHNvbSBpbmxlZHMgbWVkIFwiJWNcIiBrb21tZXIgaWdub3JlcmFzLCBvY2ggZXR0IHRvbXQgbWVkZGVsYW5kZVxuIgogImF2YnJ5dGVyIGluY2hlY2tuaW5nZW4uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4MzMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4NjUKIG1zZ2lkICJFbXB0eSBjb21taXQgbWVzc2FnZS4iCiBtc2dzdHIgIlRvbXQgaW5jaGVja25pbmdzbWVkZGVsYW5kZS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4NTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiV29uZGVyZnVsLlxuIgogbXNnc3RyICJVbmRlcmJhcnQuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5MDUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0b21hdGljIG1lcmdlIGZhaWxlZDsgZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBjb21taXQgdGhlIHJlc3VsdC5cbiIKIG1zZ3N0ciAiIgogIkt1bmRlIGludGUgc2zDpSBpaG9wIGF1dG9tYXRpc2t0OyBmaXhhIGtvbmZsaWt0ZXIgb2NoIGNoZWNrYSBpbiByZXN1bHRhdGV0LlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ0CisjOiBidWlsdGluL21lcmdlLmM6OTgwCiBtc2dpZCAiTm8gY3VycmVudCBicmFuY2guIgogbXNnc3RyICJJbnRlIHDDpSBuw6Vnb24gZ3Jlbi4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5NDYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODIKIG1zZ2lkICJObyByZW1vdGUgZm9yIHRoZSBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgIkluZ2VuIGZqw6RyciBmw7ZyIGFrdHVlbGwgZ3Jlbi4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5NDgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODQKIG1zZ2lkICJObyBkZWZhdWx0IHVwc3RyZWFtIGRlZmluZWQgZm9yIHRoZSBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgIkluZ2VuIHN0YW5kYXJkdXBwc3Ryw7ZtIGFuZ2l2ZW4gZsO2ciBha3R1ZWxsIGdyZW4uIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTUzCisjOiBidWlsdGluL21lcmdlLmM6OTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHJlbW90ZS10cmFja2luZyBicmFuY2ggZm9yICVzIGZyb20gJXMiCiBtc2dzdHIgIkluZ2VuIGZqw6RycnNww6VyYW5kZSBncmVuIGbDtnIgJXMgZnLDpW4gJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDEwCisjOiBidWlsdGluL21lcmdlLmM6MTA0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgdmFsdWUgJyVzJyBpbiBlbnZpcm9ubWVudCAnJXMnIgogbXNnc3RyICJGZWxha3RpZ3QgdsOkcmRlIFwiJXNcIiBpIG1pbGrDtnZhcmlhYmVsbiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTEzCisjOiBidWlsdGluL21lcmdlLmM6MTE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJub3Qgc29tZXRoaW5nIHdlIGNhbiBtZXJnZSBpbiAlczogJXMiCiBtc2dzdHIgImludGUgbsOlZ290IHZpIGthbiBzbMOlIGlob3AgbWVkICVzOiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjExNDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTgzCiBtc2dpZCAibm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UiCiBtc2dzdHIgImludGUgbsOlZ290IHZpIGthbiBzbMOlIGlob3AiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjUwCisjOiBidWlsdGluL21lcmdlLmM6MTI4NgogbXNnaWQgIi0tYWJvcnQgZXhwZWN0cyBubyBhcmd1bWVudHMiCiBtc2dzdHIgIi0tYWJvcnQgdGFyIGluZ2EgYXJndW1lbnQiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjU0CisjOiBidWlsdGluL21lcmdlLmM6MTI5MAogbXNnaWQgIlRoZXJlIGlzIG5vIG1lcmdlIHRvIGFib3J0IChNRVJHRV9IRUFEIG1pc3NpbmcpLiIKIG1zZ3N0ciAiSW5nZW4gc2FtbWFuc2xhZ25pbmcgYXR0IGF2YnJ5dGEgKE1FUkdFX0hFQUQgc2FrbmFzKS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjY2CisjOiBidWlsdGluL21lcmdlLmM6MTI5OQorbXNnaWQgIi0tcXVpdCBleHBlY3RzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1xdWl0IHRhciBpbmdhIGFyZ3VtZW50IgorCisjOiBidWlsdGluL21lcmdlLmM6MTMxMgogbXNnaWQgIi0tY29udGludWUgZXhwZWN0cyBubyBhcmd1bWVudHMiCiBtc2dzdHIgIi0tY29udGludWUgdGFyIGluZ2EgYXJndW1lbnQiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjcwCisjOiBidWlsdGluL21lcmdlLmM6MTMxNgogbXNnaWQgIlRoZXJlIGlzIG5vIG1lcmdlIGluIHByb2dyZXNzIChNRVJHRV9IRUFEIG1pc3NpbmcpLiIKIG1zZ3N0ciAiSW5nZW4gc2FtbWFuc2xhZ25pbmcgcMOlZ8OlciAoTUVSR0VfSEVBRCBzYWtuYXMpLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyODYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzMyCiBtc2dpZCAiIgogIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBtZXJnZSAoTUVSR0VfSEVBRCBleGlzdHMpLlxuIgogIlBsZWFzZSwgY29tbWl0IHlvdXIgY2hhbmdlcyBiZWZvcmUgeW91IG1lcmdlLiIKQEAgLTEzMDQwLDcgKzE2MTY3LDcgQEAKICJEdSBoYXIgaW50ZSBhdnNsdXRhdCBzYW1tYW5zbGFnbmluZ2VuIChNRVJHRV9IRUFEIGZpbm5zKS5cbiIKICJDaGVja2EgaW4gZGluYSDDpG5kcmluZ2FyIGlubmFuIGR1IHNsw6VyIGlob3AuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI5MworIzogYnVpbHRpbi9tZXJnZS5jOjEzMzkKIG1zZ2lkICIiCiAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIGNoZXJyeS1waWNrIChDSEVSUllfUElDS19IRUFEIGV4aXN0cykuXG4iCiAiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSB5b3UgbWVyZ2UuIgpAQCAtMTMwNDgsOTIgKzE2MTc1LDk2IEBACiAiRHUgaGFyIGludGUgYXZzbHV0YXQgZGluIFwiY2hlcnJ5LXBpY2tcIiAoQ0hFUlJZX1BJQ0tfSEVBRCBmaW5ucykuXG4iCiAiQ2hlY2thIGluIGRpbmEgw6RuZHJpbmdhciBpbm5hbiBkdSBzbMOlciBpaG9wLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyOTYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzQyCiBtc2dpZCAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIGNoZXJyeS1waWNrIChDSEVSUllfUElDS19IRUFEIGV4aXN0cykuIgogbXNnc3RyICJEdSBoYXIgaW50ZSBhdnNsdXRhdCBkaW4gXCJjaGVycnktcGlja1wiIChDSEVSUllfUElDS19IRUFEIGZpbm5zKS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzA1CisjOiBidWlsdGluL21lcmdlLmM6MTM1NgogbXNnaWQgIllvdSBjYW5ub3QgY29tYmluZSAtLXNxdWFzaCB3aXRoIC0tbm8tZmYuIgogbXNnc3RyICJEdSBrYW4gaW50ZSBrb21iaW5lcmEgLS1zcXVhc2ggbWVkIC0tbm8tZmYuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMxMworIzogYnVpbHRpbi9tZXJnZS5jOjEzNTgKK21zZ2lkICJZb3UgY2Fubm90IGNvbWJpbmUgLS1zcXVhc2ggd2l0aCAtLWNvbW1pdC4iCittc2dzdHIgIkR1IGthbiBpbnRlIGtvbWJpbmVyYSAtLXNxdWFzaCBtZWQgLS1jb21taXQuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTM3NAogbXNnaWQgIk5vIGNvbW1pdCBzcGVjaWZpZWQgYW5kIG1lcmdlLmRlZmF1bHRUb1Vwc3RyZWFtIG5vdCBzZXQuIgogbXNnc3RyICJJbmdlbiBpbmNoZWNrbmluZyBhbmdpdmVuIG9jaCBtZXJnZS5kZWZhdWx0VG9VcHN0cmVhbSDDpHIgZWogc2F0dC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzMwCisjOiBidWlsdGluL21lcmdlLmM6MTM5MQogbXNnaWQgIlNxdWFzaCBjb21taXQgaW50byBlbXB0eSBoZWFkIG5vdCBzdXBwb3J0ZWQgeWV0IgogbXNnc3RyICJTdMO2ZGVyIGludGUgZW4gdGlsbHBsYXR0bmluZ3NpbmNoZWNrbmluZyBww6UgZXR0IHRvbXQgaHV2dWQgw6RubnUiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzMyCisjOiBidWlsdGluL21lcmdlLmM6MTM5MwogbXNnaWQgIk5vbi1mYXN0LWZvcndhcmQgY29tbWl0IGRvZXMgbm90IG1ha2Ugc2Vuc2UgaW50byBhbiBlbXB0eSBoZWFkIgogbXNnc3RyICJJY2tlLXNuYWJic3BvbGFkIGluY2hlY2tuaW5nIGthbiBpbnRlIGFudsOkbmRhcyBtZWQgZXR0IHRvbXQgaHV2dWQiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzM3CisjOiBidWlsdGluL21lcmdlLmM6MTM5OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyAtIG5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgogbXNnc3RyICIlcyAtIGludGUgbsOlZ290IHZpIGthbiBzbMOlIGlob3AiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzM5CisjOiBidWlsdGluL21lcmdlLmM6MTQwMAogbXNnaWQgIkNhbiBtZXJnZSBvbmx5IGV4YWN0bHkgb25lIGNvbW1pdCBpbnRvIGVtcHR5IGhlYWQiCiBtc2dzdHIgIkthbiBlbmRhc3Qgc2zDpSBpaG9wIGVuIGVuZGEgaW5jaGVja25pbmcgaSBldHQgdG9tdCBodXZ1ZCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0MjEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDgxCiBtc2dpZCAicmVmdXNpbmcgdG8gbWVyZ2UgdW5yZWxhdGVkIGhpc3RvcmllcyIKIG1zZ3N0ciAidsOkZ3JhciBzbMOlIHNhbW1hbiBvcmVsYXRlcmFkIGhpc3RvcmlrIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQzMAorIzogYnVpbHRpbi9tZXJnZS5jOjE0OTAKIG1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIgogbXNnc3RyICJSZWRhbiDDoCBqb3VyLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0NDAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVwZGF0aW5nICVzLi4lc1xuIgogbXNnc3RyICJVcHBkYXRlcmFyICVzLi4lc1xuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQ4MgorIzogYnVpbHRpbi9tZXJnZS5jOjE1NDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiVHJ5aW5nIHJlYWxseSB0cml2aWFsIGluLWluZGV4IG1lcmdlLi4uXG4iCiBtc2dzdHIgIkbDtnJzw7ZrZXIgcmlrdGlndCBlbmtlbCBzYW1tYW5zbGFnbmluZyBpIGluZGV4ZXQuLi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0ODkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vcGUuXG4iCiBtc2dzdHIgIk5lai5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1MTQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTc0CiBtc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlLiBZZWVhaCEiCiBtc2dzdHIgIlJlZGFuIMOgIGpvdXIuIFRvcHBlbiEiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTIwCisjOiBidWlsdGluL21lcmdlLmM6MTU4MAogbXNnaWQgIk5vdCBwb3NzaWJsZSB0byBmYXN0LWZvcndhcmQsIGFib3J0aW5nLiIKIG1zZ3N0ciAiS2FuIGludGUgc25hYmJzcG9sYSwgYXZicnl0ZXIuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTU0MyBidWlsdGluL21lcmdlLmM6MTYyMgorIzogYnVpbHRpbi9tZXJnZS5jOjE2MDMgYnVpbHRpbi9tZXJnZS5jOjE2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmV3aW5kaW5nIHRoZSB0cmVlIHRvIHByaXN0aW5lLi4uXG4iCiBtc2dzdHIgIsOFdGVyc3BvbGFyIHRyw6RkZXQgdGlsbCBvcsO2cnQuLi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1NDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjA3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRyeWluZyBtZXJnZSBzdHJhdGVneSAlcy4uLlxuIgogbXNnc3RyICJGw7Zyc8O2a2VyIHNhbW1hbnNsYWduaW5nc3N0cmF0ZWdpbiAlcy4uLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYxMworIzogYnVpbHRpbi9tZXJnZS5jOjE2NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gbWVyZ2Ugc3RyYXRlZ3kgaGFuZGxlZCB0aGUgbWVyZ2UuXG4iCiBtc2dzdHIgIkluZ2VuIHNhbW1hbnNsYWduaW5nc3N0cmF0ZWdpIGhhbnRlcmFkZSBzYW1tYW5zbGFnbmluZ2VuLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYxNQorIzogYnVpbHRpbi9tZXJnZS5jOjE2NjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWVyZ2Ugd2l0aCBzdHJhdGVneSAlcyBmYWlsZWQuXG4iCiBtc2dzdHIgIlNhbW1hbnNsYWduaW5nIG1lZCBzdHJhdGVnaW4gJXMgbWlzc2x5Y2thZGVzLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYyNAorIzogYnVpbHRpbi9tZXJnZS5jOjE2NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXNpbmcgdGhlICVzIHRvIHByZXBhcmUgcmVzb2x2aW5nIGJ5IGhhbmQuXG4iCiBtc2dzdHIgIkFudsOkbmRlciAlcyBmw7ZyIGF0dCBmw7ZyYmVyZWRhIGzDtnNuaW5nIGbDtnIgaGFuZC5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MzYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG9tYXRpYyBtZXJnZSB3ZW50IHdlbGw7IHN0b3BwZWQgYmVmb3JlIGNvbW1pdHRpbmcgYXMgcmVxdWVzdGVkXG4iCiBtc2dzdHIgIiIKQEAgLTEzMjE5LDMzICsxNjM1MCwzMyBAQAogbXNnaWQgInNldCBsYWJlbHMgZm9yIGZpbGUxL29yaWctZmlsZS9maWxlMiIKIG1zZ3N0ciAic8OkdHQgZXRpa2V0dGVyIGbDtnIgZmlsMS9vcmlnZmlsL2ZpbDIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NDUKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvcHRpb24gJXMiCiBtc2dzdHIgIm9rw6RuZCBmbGFnZ2EgJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTEKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthIG9iamVrdGV0IFwiJXNcIiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1NQorIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCBiYXNlLiBJZ25vcmluZyAlcy4iCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIGJhc2VzLiBJZ25vcmluZyAlcy4iCiBtc2dzdHJbMF0gImthbiBpbnRlIGhhbnRlcmEgbWVyIMOkbiAlZCBiYXMuIElnbm9yZXJhciAlcy4iCiBtc2dzdHJbMV0gImthbiBpbnRlIGhhbnRlcmEgbWVyIMOkbiAlZCBiYXNlci4gSWdub3JlcmFyICVzLiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo2MworIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo2NQogbXNnaWQgIm5vdCBoYW5kbGluZyBhbnl0aGluZyBvdGhlciB0aGFuIHR3byBoZWFkcyBtZXJnZS4iCiBtc2dzdHIgImhhbnRlcmFyIGludGUgbsOlZ290IGFubmF0IMOkbiBlbiBzYW1tYW5zbGFnbmluZyBhdiB0dsOlIGh1dnVkZW4uIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjY5IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzEKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzQgYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSByZWYgJyVzJyIKLW1zZ3N0ciAia3VuZGUgaW50ZSBiZXN0w6RtbWEgcmVmZXJlbnNlbiDigJ0lc+KAnSIKK21zZ3N0ciAia3VuZGUgaW50ZSBiZXN0w6RtbWEgcmVmZXJlbnNlbiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzcKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWVyZ2luZyAlcyB3aXRoICVzXG4iCiBtc2dzdHIgIlNsw6VyIGlob3AgJXMgbWVkICVzXG4iCkBAIC0xMzI1OCw3ICsxNjM4OSw3IEBACiBtc2dpZCAiaW5wdXQgaXMgTlVMIHRlcm1pbmF0ZWQiCiBtc2dzdHIgImluZGF0YSDDpHIgTlVMLXRlcm1pbmVyYWQiCiAKLSM6IGJ1aWx0aW4vbWt0cmVlLmM6MTU1IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI1CisjOiBidWlsdGluL21rdHJlZS5jOjE1NSBidWlsdGluL3dyaXRlLXRyZWUuYzoyNgogbXNnaWQgImFsbG93IG1pc3Npbmcgb2JqZWN0cyIKIG1zZ3N0ciAidGlsbMOldCBzYWtuYWRlIG9iamVrdCIKIApAQCAtMTMyNjYsMTU3ICsxNjM5NywxNzMgQEAKIG1zZ2lkICJhbGxvdyBjcmVhdGlvbiBvZiBtb3JlIHRoYW4gb25lIHRyZWUiCiBtc2dzdHIgInRpbGzDpXQgc2thcGEgbWVyIMOkbiBldHQgdHLDpGQiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjgKLW1zZ2lkICJnaXQgbXVsdGktcGFjay1pbmRleCBbLS1vYmplY3QtZGlyPTxkaXI+XSAod3JpdGV8dmVyaWZ5KSIKLW1zZ3N0ciAiZ2l0IG11bHRpLXBhY2staW5kZXggWy0tb2JqZWN0LWRpcj08a2F0Pl0gKHdyaXRlfHZlcmlmeSkiCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo5Cittc2dpZCAiIgorImdpdCBtdWx0aS1wYWNrLWluZGV4IFs8b3B0aW9ucz5dICh3cml0ZXx2ZXJpZnl8ZXhwaXJlfHJlcGFjayAtLWJhdGNoLSIKKyJzaXplPTxzaXplPikiCittc2dzdHIgIiIKKyJnaXQgbXVsdGktcGFjay1pbmRleCBbPGZsYWdnb3I+XSAod3JpdGV8dmVyaWZ5fGV4cGlyZXxyZXBhY2sgLS1iYXRjaC0iCisic2l6ZT08c3Rvcmxlaz4pIgogCi0jOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyMQorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjYKIG1zZ2lkICJvYmplY3QgZGlyZWN0b3J5IGNvbnRhaW5pbmcgc2V0IG9mIHBhY2tmaWxlIGFuZCBwYWNrLWluZGV4IHBhaXJzIgogbXNnc3RyICJvYmpla3RrYXRhbG9nIG1lZCB1cHBzw6R0dG5pbmcgYXYgcGFyIG1lZCBwYWtldGZpbGVyIG9jaCBwYWNrLWluZGV4IgogCi0jOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzozOQorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjkKK21zZ2lkICIiCisiZHVyaW5nIHJlcGFjaywgY29sbGVjdCBwYWNrLWZpbGVzIG9mIHNtYWxsZXIgc2l6ZSBpbnRvIGEgYmF0Y2ggdGhhdCBpcyAiCisibGFyZ2VyIHRoYW4gdGhpcyBzaXplIgorbXNnc3RyICIiCisidmlkIG9tcGFja25pbmcsIHNhbWxhIG1pbmRyZSBwYWtldGZpbGVyIGkgZW4gYnVudCBzb20gw6RyIHN0w7ZycmUgw6RuIGRlbm5hICIKKyJzdG9ybGVrdCIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NTAgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo2NwogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyIKIG1zZ3N0ciAiZsO2ciBtw6VuZ2EgYXJndW1lbnQiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjQ4Ci0jLCBjLWZvcm1hdAotbXNnaWQgInVucmVjb2duaXplZCB2ZXJiOiAlcyIKLW1zZ3N0ciAib2vDpG50IHZlcmI6ICVzIgorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NjAKK21zZ2lkICItLWJhdGNoLXNpemUgb3B0aW9uIGlzIG9ubHkgZm9yICdyZXBhY2snIHN1YmNvbW1hbmQiCittc2dzdHIgImZsYWdnYW4gLS1iYXRjaC1zaXplIGFudsOkbmRzIGJhcmEgaSB1bmRlcmtvbW1hbmRvdCBcInJlcGFja1wiIgogCi0jOiBidWlsdGluL212LmM6MTcKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBzdWJjb21tYW5kOiAlcyIKK21zZ3N0ciAib2vDpG50IHVuZGVya29tbWFuZG86ICVzIgorCisjOiBidWlsdGluL212LmM6MTgKIG1zZ2lkICJnaXQgbXYgWzxvcHRpb25zPl0gPHNvdXJjZT4uLi4gPGRlc3RpbmF0aW9uPiIKIG1zZ3N0ciAiZ2l0IG12IFs8ZmxhZ2dvcj5dIDxrw6RsbGE+Li4uIDxtw6VsPiIKIAotIzogYnVpbHRpbi9tdi5jOjgyCisjOiBidWlsdGluL212LmM6ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGlyZWN0b3J5ICVzIGlzIGluIGluZGV4IGFuZCBubyBzdWJtb2R1bGU/IgogbXNnc3RyICJLYXRhbG9nZW4gJXMgw6RyIGkgaW5kZXhldCBvY2ggaW50ZSBlbiB1bmRlcm1vZHVsPyIKIAotIzogYnVpbHRpbi9tdi5jOjg0CisjOiBidWlsdGluL212LmM6ODUKIG1zZ2lkICJQbGVhc2Ugc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKIG1zZ3N0ciAiIgogIkvDtmEgZGluYSDDpG5kcmluZ2FyIGkgLmdpdG1vZHVsZXMgZWxsZXIgYW52w6RuZCBcInN0YXNoXCIgZsO2ciBhdHQgZm9ydHPDpHR0YSIKIAotIzogYnVpbHRpbi9tdi5jOjEwMgorIzogYnVpbHRpbi9tdi5jOjEwMwogIywgYy1mb3JtYXQKIG1zZ2lkICIlLipzIGlzIGluIGluZGV4IgogbXNnc3RyICIlLipzIMOkciBpIGluZGV4ZXQiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxMjQKKyM6IGJ1aWx0aW4vbXYuYzoxMjUKIG1zZ2lkICJmb3JjZSBtb3ZlL3JlbmFtZSBldmVuIGlmIHRhcmdldCBleGlzdHMiCiBtc2dzdHIgInR2aW5nYSBmbHl0dGEvw6RuZHJhIG5hbW4gw6R2ZW4gb20gbcOlbGV0IGZpbm5zIgogCi0jOiBidWlsdGluL212LmM6MTI2CisjOiBidWlsdGluL212LmM6MTI3CiBtc2dpZCAic2tpcCBtb3ZlL3JlbmFtZSBlcnJvcnMiCiBtc2dzdHIgImhvcHBhIMO2dmVyIGZlbCB2aWQgZmx5dHQvbmFtbsOkbmRyaW5nIgogCi0jOiBidWlsdGluL212LmM6MTY4CisjOiBidWlsdGluL212LmM6MTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlc3RpbmF0aW9uICclcycgaXMgbm90IGEgZGlyZWN0b3J5IgogbXNnc3RyICJkZXN0aW5hdGlvbmVuIFwiJXNcIiDDpHIgaW5nZW4ga2F0YWxvZyIKIAotIzogYnVpbHRpbi9tdi5jOjE3OQorIzogYnVpbHRpbi9tdi5jOjE4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDaGVja2luZyByZW5hbWUgb2YgJyVzJyB0byAnJXMnXG4iCiBtc2dzdHIgIktvbnRyb2xsZXJhciBuYW1uYnl0ZSBhdiBcIiVzXCIgdGlsbCBcIiVzXCJcbiIKIAotIzogYnVpbHRpbi9tdi5jOjE4MworIzogYnVpbHRpbi9tdi5jOjE4NAogbXNnaWQgImJhZCBzb3VyY2UiCiBtc2dzdHIgImZlbGFrdGlnIGvDpGxsYSIKIAotIzogYnVpbHRpbi9tdi5jOjE4NgorIzogYnVpbHRpbi9tdi5jOjE4NwogbXNnaWQgImNhbiBub3QgbW92ZSBkaXJlY3RvcnkgaW50byBpdHNlbGYiCiBtc2dzdHIgImthbiBpbnRlIGZseXR0YSBrYXRhbG9nIHRpbGwgc2lnIHNqw6RsdiIKIAotIzogYnVpbHRpbi9tdi5jOjE4OQorIzogYnVpbHRpbi9tdi5jOjE5MAogbXNnaWQgImNhbm5vdCBtb3ZlIGRpcmVjdG9yeSBvdmVyIGZpbGUiCiBtc2dzdHIgImthbiBpbnRlIGZseXR0YSBrYXRhbG9nIMO2dmVyIGZpbCIKIAotIzogYnVpbHRpbi9tdi5jOjE5OAorIzogYnVpbHRpbi9tdi5jOjE5OQogbXNnaWQgInNvdXJjZSBkaXJlY3RvcnkgaXMgZW1wdHkiCiBtc2dzdHIgImvDpGxsa2F0YWxvZ2VuIMOkciB0b20iCiAKLSM6IGJ1aWx0aW4vbXYuYzoyMjMKKyM6IGJ1aWx0aW4vbXYuYzoyMjQKIG1zZ2lkICJub3QgdW5kZXIgdmVyc2lvbiBjb250cm9sIgogbXNnc3RyICJpbnRlIHZlcnNpb25zaGFudGVyYWQiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyMjYKKyM6IGJ1aWx0aW4vbXYuYzoyMjcKIG1zZ2lkICJkZXN0aW5hdGlvbiBleGlzdHMiCiBtc2dzdHIgImRlc3RpbmF0aW9uZW4gZmlubnMiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyMzQKKyM6IGJ1aWx0aW4vbXYuYzoyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAib3ZlcndyaXRpbmcgJyVzJyIKIG1zZ3N0ciAic2tyaXZlciDDtnZlciBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyMzcKKyM6IGJ1aWx0aW4vbXYuYzoyMzgKIG1zZ2lkICJDYW5ub3Qgb3ZlcndyaXRlIgogbXNnc3RyICJLYW4gaW50ZSBza3JpdmEgw7Z2ZXIiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNDAKKyM6IGJ1aWx0aW4vbXYuYzoyNDEKIG1zZ2lkICJtdWx0aXBsZSBzb3VyY2VzIGZvciB0aGUgc2FtZSB0YXJnZXQiCiBtc2dzdHIgImZsZXJhIGvDpGxsb3IgZsO2ciBzYW1tYSBtw6VsIgogCi0jOiBidWlsdGluL212LmM6MjQyCisjOiBidWlsdGluL212LmM6MjQzCiBtc2dpZCAiZGVzdGluYXRpb24gZGlyZWN0b3J5IGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJkZXN0aW5hdGlvbnNrYXRhbG9nZW4gZmlubnMgaW50ZSIKIAotIzogYnVpbHRpbi9tdi5jOjI0OQorIzogYnVpbHRpbi9tdi5jOjI1MAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcywgc291cmNlPSVzLCBkZXN0aW5hdGlvbj0lcyIKIG1zZ3N0ciAiJXMsIGvDpGxsYT0lcywgbcOlbD0lcyIKIAotIzogYnVpbHRpbi9tdi5jOjI3MAorIzogYnVpbHRpbi9tdi5jOjI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW5hbWluZyAlcyB0byAlc1xuIgogbXNnc3RyICJCeXRlciBuYW1uIHDDpSAlcyB0aWxsICVzXG4iCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNzYgYnVpbHRpbi9yZW1vdGUuYzo3MTcgYnVpbHRpbi9yZXBhY2suYzo1MTEKKyM6IGJ1aWx0aW4vbXYuYzoyNzcgYnVpbHRpbi9yZW1vdGUuYzo3ODEgYnVpbHRpbi9yZXBhY2suYzo1MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVuYW1pbmcgJyVzJyBmYWlsZWQiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBieXRhIG5hbW4gcMOlIFwiJXNcIiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NQorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NQogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSA8Y29tbWl0Pi4uLiIKIG1zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs8ZmxhZ2dvcj5dIDxpbmNoZWNrbmluZz4uLi4iCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzozNTYKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0NjYKIG1zZ2lkICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gLS1hbGwiCiBtc2dzdHIgImdpdCBuYW1lLXJldiBbPGZsYWdnb3I+XSAtLWFsbCIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NwogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLXN0ZGluIgogbXNnc3RyICJnaXQgbmFtZS1yZXYgWzxmbGFnZ29yPl0gLS1zdGRpbiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxMworIzogYnVpbHRpbi9uYW1lLXJldi5jOjUyNAogbXNnaWQgInByaW50IG9ubHkgbmFtZXMgKG5vIFNIQS0xKSIKIG1zZ3N0ciAic2tyaXYgZW5kYXN0IG5hbW4gKGluZ2VuIFNIQS0xKSIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxNAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUyNQogbXNnaWQgIm9ubHkgdXNlIHRhZ3MgdG8gbmFtZSB0aGUgY29tbWl0cyIKIG1zZ3N0ciAiYW52w6RuZCBlbmRhc3QgdGFnZ2FyIGbDtnIgYXR0IG5hbW5nZSBpbmNoZWNrbmluZ2FyIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE2CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI3CiBtc2dpZCAib25seSB1c2UgcmVmcyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgImFudsOkbmQgZW5kYXN0IHJlZmVyZW5zZXIgc29tIG1vdHN2YXJhciA8bcO2bnN0ZXI+IgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE4CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI5CiBtc2dpZCAiaWdub3JlIHJlZnMgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICJpZ25vcmVyYSByZWZlcmVuc2VyIHNvbSBtb3RzdmFyYXIgPG3Dtm5zdGVyPiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQyMAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzMQogbXNnaWQgImxpc3QgYWxsIGNvbW1pdHMgcmVhY2hhYmxlIGZyb20gYWxsIHJlZnMiCiBtc2dzdHIgImxpc3RhIGFsbGEgaW5jaGVja25pbmdhciBzb20ga2FuIG7DpXMgYWxsYSByZWZlcmVuc2VyIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIxCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMyCiBtc2dpZCAicmVhZCBmcm9tIHN0ZGluIgogbXNnc3RyICJsw6RzIGZyw6VuIHN0YW5kYXJkIGluIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIyCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMzCiBtc2dpZCAiYWxsb3cgdG8gcHJpbnQgYHVuZGVmaW5lZGAgbmFtZXMgKGRlZmF1bHQpIgogbXNnc3RyICJ0aWxsw6V0IGF0dCBza3JpdmEgXCJvZGVmaW5pZXJhZGVcIiBuYW1uIChzdGFuZGFyZCkiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjgKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzkKIG1zZ2lkICJkZXJlZmVyZW5jZSB0YWdzIGluIHRoZSBpbnB1dCAoaW50ZXJuYWwgdXNlKSIKIG1zZ3N0ciAiYXZyZWZlcmVyYSB0YWdnYXIgaSBpbmRhdGEgKGFudsOkbmRzIGludGVybnQpIgogCkBAIC0xMzU2MywxNCArMTY3MTAsMTQgQEAKIG1zZ2lkICJ0aGUgbm90ZSBjb250ZW50cyBoYXZlIGJlZW4gbGVmdCBpbiAlcyIKIG1zZ3N0ciAiYW50ZWNrbmluZ2VucyBpbm5laMOlbGwgaGFyIGzDpG1uYXRzIGt2YXIgaSAlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjI0MiBidWlsdGluL3RhZy5jOjUxMworIzogYnVpbHRpbi9ub3Rlcy5jOjI0MiBidWlsdGluL3RhZy5jOjUzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBvciByZWFkICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIGVsbGVyIGzDpHNhIFwiJXNcIiIKIAogIzogYnVpbHRpbi9ub3Rlcy5jOjI2MyBidWlsdGluL25vdGVzLmM6MzEzIGJ1aWx0aW4vbm90ZXMuYzozMTUKLSM6IGJ1aWx0aW4vbm90ZXMuYzozODMgYnVpbHRpbi9ub3Rlcy5jOjQzOCBidWlsdGluL25vdGVzLmM6NTI0Ci0jOiBidWlsdGluL25vdGVzLmM6NTI5IGJ1aWx0aW4vbm90ZXMuYzo2MDcgYnVpbHRpbi9ub3Rlcy5jOjY2OQorIzogYnVpbHRpbi9ub3Rlcy5jOjM4MyBidWlsdGluL25vdGVzLmM6NDM4IGJ1aWx0aW4vbm90ZXMuYzo1MjYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MzEgYnVpbHRpbi9ub3Rlcy5jOjYxMCBidWlsdGluL25vdGVzLmM6NjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgogbXNnc3RyICJrdW5kZSBpbnRlIHNsw6UgdXBwIFwiJXNcIiBzb20gZW4gZ2lsdGlnIHJlZmVyZW5zLiIKQEAgLTEzNjAzLDM4ICsxNjc1MCwzOCBAQAogbXNnaWQgInJlZnVzaW5nIHRvICVzIG5vdGVzIGluICVzIChvdXRzaWRlIG9mIHJlZnMvbm90ZXMvKSIKIG1zZ3N0ciAidsOkZ3JhciB1dGbDtnJhIFwiJXNcIiBww6UgYW50ZWNrbmluZ2FyIGkgJXMgKHV0YW5mw7ZyIHJlZnMvbm90ZXMvKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjM3NiBidWlsdGluL25vdGVzLmM6NDMxIGJ1aWx0aW4vbm90ZXMuYzo1MDcKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MTkgYnVpbHRpbi9ub3Rlcy5jOjU5NSBidWlsdGluL25vdGVzLmM6NjYyCi0jOiBidWlsdGluL25vdGVzLmM6ODEyIGJ1aWx0aW4vbm90ZXMuYzo5NTkgYnVpbHRpbi9ub3Rlcy5jOjk4MAorIzogYnVpbHRpbi9ub3Rlcy5jOjM3NiBidWlsdGluL25vdGVzLmM6NDMxIGJ1aWx0aW4vbm90ZXMuYzo1MDkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MjEgYnVpbHRpbi9ub3Rlcy5jOjU5OCBidWlsdGluL25vdGVzLmM6NjY1CisjOiBidWlsdGluL25vdGVzLmM6ODE1IGJ1aWx0aW4vbm90ZXMuYzo5NjMgYnVpbHRpbi9ub3Rlcy5jOjk4NQogbXNnaWQgInRvbyBtYW55IHBhcmFtZXRlcnMiCiBtc2dzdHIgImbDtnIgbcOlbmdhIHBhcmFtZXRyYXIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzozODkgYnVpbHRpbi9ub3Rlcy5jOjY3NQorIzogYnVpbHRpbi9ub3Rlcy5jOjM4OSBidWlsdGluL25vdGVzLmM6Njc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIG5vdGUgZm91bmQgZm9yIG9iamVjdCAlcy4iCiBtc2dzdHIgImluZ2EgYW50ZWNrbmluZ2FyIGhpdHRhZGVzIGbDtnIgb2JqZWt0ZXQgJXMuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDEwIGJ1aWx0aW4vbm90ZXMuYzo1NzMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTAgYnVpbHRpbi9ub3Rlcy5jOjU3NgogbXNnaWQgIm5vdGUgY29udGVudHMgYXMgYSBzdHJpbmciCiBtc2dzdHIgImFudGVja25pbmdzaW5uZWjDpWxsIHNvbSBzdHLDpG5nIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDEzIGJ1aWx0aW4vbm90ZXMuYzo1NzYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTMgYnVpbHRpbi9ub3Rlcy5jOjU3OQogbXNnaWQgIm5vdGUgY29udGVudHMgaW4gYSBmaWxlIgogbXNnc3RyICJhbnRlY2tuaW5nc2lubmVow6VsbCBpIGVuIGZpbCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxNiBidWlsdGluL25vdGVzLmM6NTc5CisjOiBidWlsdGluL25vdGVzLmM6NDE2IGJ1aWx0aW4vbm90ZXMuYzo1ODIKIG1zZ2lkICJyZXVzZSBhbmQgZWRpdCBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCiBtc2dzdHIgIsOldGVyYW52w6RuZCBvY2ggcmVkaWdlcmEgYW5naXZldCBhbnRlY2tuaW5nc29iamVrdCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxOSBidWlsdGluL25vdGVzLmM6NTgyCisjOiBidWlsdGluL25vdGVzLmM6NDE5IGJ1aWx0aW4vbm90ZXMuYzo1ODUKIG1zZ2lkICJyZXVzZSBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCiBtc2dzdHIgIsOldGVyYW52w6RuZCBhbmdpdmV0IGFudGVja25pbmdzb2JqZWt0IgogCi0jOiBidWlsdGluL25vdGVzLmM6NDIyIGJ1aWx0aW4vbm90ZXMuYzo1ODUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MjIgYnVpbHRpbi9ub3Rlcy5jOjU4OAogbXNnaWQgImFsbG93IHN0b3JpbmcgZW1wdHkgbm90ZSIKIG1zZ3N0ciAidGlsbMOldCBsYWdyYSB0b20gYW50ZWNrbmluZyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQyMyBidWlsdGluL25vdGVzLmM6NDk0CisjOiBidWlsdGluL25vdGVzLmM6NDIzIGJ1aWx0aW4vbm90ZXMuYzo0OTYKIG1zZ2lkICJyZXBsYWNlIGV4aXN0aW5nIG5vdGVzIgogbXNnc3RyICJlcnPDpHR0IGJlZmludGxpZ2EgYW50ZWNrbmluZ2FyIgogCkBAIC0xMzY0NywyOSArMTY3OTQsMjkgQEAKICJLYW4gaW50ZSBsw6RnZ2EgdGlsbCBhbnRlY2tuaW5nYXIuIEhpdHRhZGUgYmVmaW50bGlnYSBhbnRlY2tuaW5nYXIgZsO2ciAiCiAib2JqZWt0ZXQgJXMuIEFudsOkbmQgXCItZlwiIGbDtnIgYXR0IHNrcml2YSDDtnZlciBiZWZpbnRsaWdhIGFudGVja25pbmdhciIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ2MyBidWlsdGluL25vdGVzLmM6NTQyCisjOiBidWlsdGluL25vdGVzLmM6NDYzIGJ1aWx0aW4vbm90ZXMuYzo1NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiT3ZlcndyaXRpbmcgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlc1xuIgogbXNnc3RyICJTa3JpdmVyIMO2dmVyIGJlZmludGxpZ2EgYW50ZWNrbmluZ2FyIGbDtnIgb2JqZWt0ZXQgJXNcbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ3NCBidWlsdGluL25vdGVzLmM6NjM0IGJ1aWx0aW4vbm90ZXMuYzo4OTkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NzUgYnVpbHRpbi9ub3Rlcy5jOjYzNyBidWlsdGluL25vdGVzLmM6OTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nIG5vdGUgZm9yIG9iamVjdCAlc1xuIgogbXNnc3RyICJUYXIgYm9ydCBhbnRlY2tuaW5nIGbDtnIgb2JqZWt0ZXQgJXNcbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ5NQorIzogYnVpbHRpbi9ub3Rlcy5jOjQ5NwogbXNnaWQgInJlYWQgb2JqZWN0cyBmcm9tIHN0ZGluIgogbXNnc3RyICJsw6RzIG9iamVrdCBmcsOlbiBzdGFuZGFyZCBpbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ5NworIzogYnVpbHRpbi9ub3Rlcy5jOjQ5OQogbXNnaWQgImxvYWQgcmV3cml0aW5nIGNvbmZpZyBmb3IgPGNvbW1hbmQ+IChpbXBsaWVzIC0tc3RkaW4pIgogbXNnc3RyICJsw6RzIG9tc2tyaXZuaW5nc2luc3TDpGxsbmluZyBmw7ZyIDxrb21tYW5kbz4gKGltcGxpY2VyYXIgLS1zdGRpbikiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MTcKIG1zZ2lkICJ0b28gZmV3IHBhcmFtZXRlcnMiCiBtc2dzdHIgImbDtnIgZsOlIHBhcmFtZXRyYXIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MzYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNhbm5vdCBjb3B5IG5vdGVzLiBGb3VuZCBleGlzdGluZyBub3RlcyBmb3Igb2JqZWN0ICVzLiBVc2UgJy1mJyB0byBvdmVyd3JpdGUgIgpAQCAtMTM2NzgsMTIgKzE2ODI1LDEyIEBACiAiS2FuIGludGUga29waWVyYSBhbnRlY2tuaW5nYXIuIEhpdHRhZGUgYmVmaW50bGlnYSBhbnRlY2tuaW5nYXIgZsO2ciBvYmpla3RldCAiCiAiJXMuIEFudsOkbmQgXCItZlwiIGbDtnIgYXR0IHNrcml2YSDDtnZlciBiZWZpbnRsaWdhIGFudGVja25pbmdhciIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjU0OAorIzogYnVpbHRpbi9ub3Rlcy5jOjU1MAogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIG5vdGVzIG9uIHNvdXJjZSBvYmplY3QgJXMuIENhbm5vdCBjb3B5LiIKIG1zZ3N0ciAiYW50ZWNrbmluZ2FyIHDDpSBrw6RsbG9iamVrdGV0ICVzIHNha25hcy4gS2FuIGludGUga29waWVyYS4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2MDAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSAtbS8tRi8tYy8tQyBvcHRpb25zIGhhdmUgYmVlbiBkZXByZWNhdGVkIGZvciB0aGUgJ2VkaXQnIHN1YmNvbW1hbmQuXG4iCkBAIC0xMzY5Miw1MiArMTY4MzksNTIgQEAKICJGbGFnZ29ybmEgLW0vLUYvLWMvLUMgcmVrb21tZW5kZXJhcyBpbnRlIGbDtnIgdW5kZXJrb21tYW5kb3QgXCJlZGl0XCIuXG4iCiAiQW52w6RuZCBcImdpdCBub3RlcyBhZGQgLWYgLW0vLUYvLWMvLUNcIiBpc3TDpGxsZXQuXG4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2OTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2OTgKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIHJlZiBOT1RFU19NRVJHRV9QQVJUSUFMIgogbXNnc3RyICJtaXNzbHlja2FkZXMgdGEgYm9ydCByZWZlcmVuc2VuIE5PVEVTX01FUkdFX1BBUlRJQUwiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2OTcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDAKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIHJlZiBOT1RFU19NRVJHRV9SRUYiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyB0YSBib3J0IHJlZmVyZW5zZW4gTk9URVNfTUVSR0VfUkVGIgogCi0jOiBidWlsdGluL25vdGVzLmM6Njk5CisjOiBidWlsdGluL25vdGVzLmM6NzAyCiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAnZ2l0IG5vdGVzIG1lcmdlJyB3b3JrdHJlZSIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHRhIGJvcnQgYXJiZXRza2F0YWxvZ2VuIGbDtnIgXCJnaXQgbm90ZXMgbWVyZ2VcIiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjcxOQorIzogYnVpbHRpbi9ub3Rlcy5jOjcyMgogbXNnaWQgImZhaWxlZCB0byByZWFkIHJlZiBOT1RFU19NRVJHRV9QQVJUSUFMIgogbXNnc3RyICJtaXNzbHlja2FkZXMgbMOkc2EgcmVmZXJlbmNlcyBOT1RFU19NRVJHRV9QQVJUSUFMIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzIxCisjOiBidWlsdGluL25vdGVzLmM6NzI0CiBtc2dpZCAiY291bGQgbm90IGZpbmQgY29tbWl0IGZyb20gTk9URVNfTUVSR0VfUEFSVElBTC4iCiBtc2dzdHIgImt1bmRlIGludGUgaGl0dGEgaW5jaGVja25pbmcgZnLDpW4gTk9URVNfTUVSR0VfUEFSVElBTC4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjYKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0IGZyb20gTk9URVNfTUVSR0VfUEFSVElBTC4iCiBtc2dzdHIgImt1bmRlIGludGUgdG9sa2EgaW5jaGVja25pbmcgZnLDpW4gTk9URVNfTUVSR0VfUEFSVElBTC4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MzYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MzkKIG1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSBOT1RFU19NRVJHRV9SRUYiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBiZXN0w6RtbWEgTk9URVNfTUVSR0VfUkVGIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzM5CisjOiBidWlsdGluL25vdGVzLmM6NzQyCiBtc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplIG5vdGVzIG1lcmdlIgogbXNnc3RyICJtaXNzbHlja2FkZXMgZsOkcmRpZ3N0w6RsbGEgc2FtbWFuc2xhZ25pbmcgYXYgYW50ZWNrbmluZ2FyIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzY1CisjOiBidWlsdGluL25vdGVzLmM6NzY4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gbm90ZXMgbWVyZ2Ugc3RyYXRlZ3kgJXMiCiBtc2dzdHIgIm9rw6RuZCBzYW1tYW5zbGFnbmluZ3NzdHJhdGVnaSBmw7ZyIGFudGVja25pbmdhcjogJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3ODQKIG1zZ2lkICJHZW5lcmFsIG9wdGlvbnMiCiBtc2dzdHIgIkFsbG3DpG5uYSBmbGFnZ29yIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzgzCisjOiBidWlsdGluL25vdGVzLmM6Nzg2CiBtc2dpZCAiTWVyZ2Ugb3B0aW9ucyIKIG1zZ3N0ciAiRmxhZ2dvciBmw7ZyIHNhbW1hbnNsYWduaW5nIgogCi0jOiBidWlsdGluL25vdGVzLmM6Nzg1CisjOiBidWlsdGluL25vdGVzLmM6Nzg4CiBtc2dpZCAiIgogInJlc29sdmUgbm90ZXMgY29uZmxpY3RzIHVzaW5nIHRoZSBnaXZlbiBzdHJhdGVneSAobWFudWFsL291cnMvdGhlaXJzL3VuaW9uLyIKICJjYXRfc29ydF91bmlxKSIKQEAgLTEzNzQ1LDQ4ICsxNjg5Miw0OCBAQAogImzDpHMga29uZmxpa3RlciBpIGFudGVja25pbmdhciBtZWQgYW5naXZlbiBzdHJhdGVnaSAobWFudWFsL291cnMvdGhlaXJzL3VuaW9uLyIKICJjYXRfc29ydF91bmlxKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4NworIzogYnVpbHRpbi9ub3Rlcy5jOjc5MAogbXNnaWQgIkNvbW1pdHRpbmcgdW5tZXJnZWQgbm90ZXMiCiBtc2dzdHIgIkNoZWNrYXIgaW4gZWogc2FtbWFuc2xhZ25hIGFudGVja25pbmdhciIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4OQorIzogYnVpbHRpbi9ub3Rlcy5jOjc5MgogbXNnaWQgImZpbmFsaXplIG5vdGVzIG1lcmdlIGJ5IGNvbW1pdHRpbmcgdW5tZXJnZWQgbm90ZXMiCiBtc2dzdHIgIiIKICJmw6RyZGlnc3TDpGxsIHNhbW1hbnNsYWduaW5nIGF2IGFudGVja25pbmdhciBnZW5vbSBhdHQgY2hlY2thIGluIGVqICIKICJzYW1tYW5zbGFnbmEgYW50ZWNrbmluZ2FyIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzkxCisjOiBidWlsdGluL25vdGVzLmM6Nzk0CiBtc2dpZCAiQWJvcnRpbmcgbm90ZXMgbWVyZ2UgcmVzb2x1dGlvbiIKIG1zZ3N0ciAiQXZicnl0IGzDtnNuaW5nIGF2IHNhbW1hbnNsYWduaW5nIGF2IGFudGVja25pbmdhciIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc5MworIzogYnVpbHRpbi9ub3Rlcy5jOjc5NgogbXNnaWQgImFib3J0IG5vdGVzIG1lcmdlIgogbXNnc3RyICJhdmJyeXQgc2FtbWFuc2xhZ25pbmcgYXYgYW50ZWNrbmluZ2FyIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODA0CisjOiBidWlsdGluL25vdGVzLmM6ODA3CiBtc2dpZCAiY2Fubm90IG1peCAtLWNvbW1pdCwgLS1hYm9ydCBvciAtcy8tLXN0cmF0ZWd5IgogbXNnc3RyICJrYW4gaW50ZSBibGFuZGEgLS1jb21taXQsIC0tYWJvcnQgZWxsZXIgLXMvLS1zdHJhdGVneSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjgwOQorIzogYnVpbHRpbi9ub3Rlcy5jOjgxMgogbXNnaWQgIm11c3Qgc3BlY2lmeSBhIG5vdGVzIHJlZiB0byBtZXJnZSIKIG1zZ3N0ciAibcOlc3RlIGFuZ2UgZW4gYW50ZWNrbmluZ3MtcmVmZXJlbnMgYXR0IHNsw6UgaWhvcCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjgzMworIzogYnVpbHRpbi9ub3Rlcy5jOjgzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIC1zLy0tc3RyYXRlZ3k6ICVzIgogbXNnc3RyICJva8OkbmQgLXMvLS1zdHJhdGVneTogJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSBub3RlcyBtZXJnZSBpbnRvICVzIGlzIGFscmVhZHkgaW4tcHJvZ3Jlc3MgYXQgJXMiCiBtc2dzdHIgInNhbW1hbnNsYWduaW5nIGF2IGFudGVja25pbmdhciB0aWxsICVzIMOkciByZWRhbiBpZ8OlbmdzYXR0IHDDpSAlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg3MworIzogYnVpbHRpbi9ub3Rlcy5jOjg3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RvcmUgbGluayB0byBjdXJyZW50IG5vdGVzIHJlZiAoJXMpIgogbXNnc3RyICJtaXNzbHlja2FkZXMgbGFncmEgbMOkbmsgdGlsbCBha3R1ZWxsIGFudGVja25pbmdzcmVmZXJlbnMgKCVzKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg3NQorIzogYnVpbHRpbi9ub3Rlcy5jOjg3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQXV0b21hdGljIG5vdGVzIG1lcmdlIGZhaWxlZC4gRml4IGNvbmZsaWN0cyBpbiAlcyBhbmQgY29tbWl0IHRoZSByZXN1bHQgd2l0aCAiCkBAIC0xMzc5NywxNzEgKzE2OTQ0LDE1MyBAQAogIiVzIG9jaCBjaGVja2EgaW4gcmVzdWx0YXRldCBtZWQgXCJnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXRcIiwgZWxsZXIgYXZicnl0ICIKICJzYW1tYW5zbGFnbmluZ2VuIG1lZCBcImdpdCBub3RlcyBtZXJnZSAtLWFib3J0XCIuXG4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4OTcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4OTcgYnVpbHRpbi90YWcuYzo1NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZi4iCittc2dzdHIgIkt1bmRlIGludGUgc2zDpSB1cHAgXCIlc1wiIHNvbSBlbiBnaWx0aWcgcmVmZXJlbnMuIgorCisjOiBidWlsdGluL25vdGVzLmM6OTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9iamVjdCAlcyBoYXMgbm8gbm90ZVxuIgogbXNnc3RyICJPYmpla3RldCAlcyBoYXIgaW5nZW4gYW50ZWNrbmluZ1xuIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTA5CisjOiBidWlsdGluL25vdGVzLmM6OTEyCiBtc2dpZCAiYXR0ZW1wdCB0byByZW1vdmUgbm9uLWV4aXN0ZW50IG5vdGUgaXMgbm90IGFuIGVycm9yIgogbXNnc3RyICJmw7Zyc8O2ayBhdHQgdGEgYm9ydCBpY2tlLWV4aXN0ZXJhbmRlIGFudGVja25pbmdhciDDpHIgaW50ZSBldHQgZmVsIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTEyCisjOiBidWlsdGluL25vdGVzLmM6OTE1CiBtc2dpZCAicmVhZCBvYmplY3QgbmFtZXMgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgImzDpHMgb2JqZWt0bmFtbiBmcsOlbiBzdGFuZGFyZCBpbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk1MCBidWlsdGluL3BydW5lLmM6MTA4IGJ1aWx0aW4vd29ya3RyZWUuYzoxNjQKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NTQgYnVpbHRpbi9wcnVuZS5jOjEzMCBidWlsdGluL3dvcmt0cmVlLmM6MTY0CiBtc2dpZCAiZG8gbm90IHJlbW92ZSwgc2hvdyBvbmx5IgogbXNnc3RyICJ0YSBpbnRlIGJvcnQsIGJhcmEgdmlzYSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk1MQorIzogYnVpbHRpbi9ub3Rlcy5jOjk1NQogbXNnaWQgInJlcG9ydCBwcnVuZWQgbm90ZXMiCiBtc2dzdHIgInJhcHBvcnRlcmEgYm9ydHRhZ25hIGFudGVja25pbmdhciIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk5MworIzogYnVpbHRpbi9ub3Rlcy5jOjk5OAogbXNnaWQgIm5vdGVzLXJlZiIKIG1zZ3N0ciAiYW50ZWNrbmluZ2FyLXJlZiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk5NAorIzogYnVpbHRpbi9ub3Rlcy5jOjk5OQogbXNnaWQgInVzZSBub3RlcyBmcm9tIDxub3Rlcy1yZWY+IgogbXNnc3RyICJhbnbDpG5kIGFudGVja25pbmdhciBmcsOlbiA8YW50ZWNrbmluZ3NyZWY+IgogCi0jOiBidWlsdGluL25vdGVzLmM6MTAyOQorIzogYnVpbHRpbi9ub3Rlcy5jOjEwMzQgYnVpbHRpbi9zdGFzaC5jOjE2NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBzdWJjb21tYW5kOiAlcyIKIG1zZ3N0ciAib2vDpG50IHVuZGVya29tbWFuZG86ICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUyCiBtc2dpZCAiIgogImdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgWzxvcHRpb25zPi4uLl0gWzwgPHJlZi1saXN0PiB8IDwgPG9iamVjdC1saXN0Pl0iCiBtc2dzdHIgIiIKICJnaXQgcGFjay1vYmplY3RzIC0tc3Rkb3V0IFs8ZmxhZ2dvcj4uLi5dIFs8IDxyZWZsaXN0YT4gfCA8IDxvYmpla3RsaXN0YT5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUzCiBtc2dpZCAiIgogImdpdCBwYWNrLW9iamVjdHMgWzxvcHRpb25zPi4uLl0gPGJhc2UtbmFtZT4gWzwgPHJlZi1saXN0PiB8IDwgPG9iamVjdC1saXN0Pl0iCiBtc2dzdHIgIiIKICJnaXQgcGFjay1vYmplY3RzIFs8ZmxhZ2dvcj4uLi5dIDxiYXNuYW1uPiBbPCA8cmVmbGlzdGE+IHwgPCA8b2JqZWt0bGlzdGE+XSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MjIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDMwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBwYWNrZWQgb2JqZWN0IENSQyBmb3IgJXMiCiBtc2dzdHIgImZlbGFrdGlnIENSQyBmw7ZyIHBhY2thdCBvYmpla3QgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDMzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQ0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IHBhY2tlZCBvYmplY3QgZm9yICVzIgogbXNnc3RyICJ0cmFzaWd0IHBhY2thdCBvYmpla3QgZsO2ciAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1NjQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTcyCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlY3Vyc2l2ZSBkZWx0YSBkZXRlY3RlZCBmb3Igb2JqZWN0ICVzIgogbXNnc3RyICJyZWt1cnNpdnQgZGVsdGEgdXBwdMOkY2t0ZXMgZsO2ciBvYmpla3RldCAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3NzUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NzgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9yZGVyZWQgJXUgb2JqZWN0cywgZXhwZWN0ZWQgJTxQUkl1MzI+IgogbXNnc3RyICJvcmRuYWRlICV1IG9iamVrdCwgZsO2cnbDpG50YWRlICU8UFJJdTMyPiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3ODgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGFja2ZpbGUgaXMgaW52YWxpZDogJXMiCi1tc2dzdHIgInBhY2tmaWwgw6RyIG9naWx0aWc6ICVzIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc5MgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gb3BlbiBwYWNrZmlsZSBmb3IgcmV1c2U6ICVzIgotbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgcGFja2ZpbCBmw7ZyIMOldGVyYW52w6RuZG5pbmc6ICVzIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc5NgotbXNnaWQgInVuYWJsZSB0byBzZWVrIGluIHJldXNlZCBwYWNrZmlsZSIKLW1zZ3N0ciAia2FuIGludGUgc8O2a2EgaSDDpXRlcmFudsOkbmQgcGFja2ZpbCIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4MDcKLW1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmcm9tIHJldXNlZCBwYWNrZmlsZSIKLW1zZ3N0ciAia2FuIGludGUgbMOkc2EgZnLDpW4gw6V0ZXJhbnbDpG5kIHBhY2tmaWwiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODM1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk3MgogbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgcGFja3MgYXJlIHNwbGl0IGR1ZSB0byBwYWNrLnBhY2tTaXplTGltaXQiCiBtc2dzdHIgIiIKICJpbmFrdGl2ZXJhciBza3Jpdm5pbmcgYXYgYml0a2FydGEsIHBha2V0IGRlbGFzIHDDpSBncnVuZCBhdiBwYWNrLnBhY2tTaXplTGltaXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODQ4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk4NQogbXNnaWQgIldyaXRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiU2tyaXZlciBvYmpla3QiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTEwIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6ODgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA0NiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBzdGF0ICVzIgogbXNnc3RyICJtaXNzbHlja2FkZXMgdGEgc3RhdHVzIHDDpSAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5NjMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm90ZSAlPFBSSXUzMj4gb2JqZWN0cyB3aGlsZSBleHBlY3RpbmcgJTxQUkl1MzI+IgogbXNnc3RyICJza3JldiAlPFBSSXUzMj4gb2JqZWt0IG1lZGFuICU8UFJJdTMyPiBmw7ZydsOkbnRhZGVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjExNTcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTI5NwogbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgYXMgc29tZSBvYmplY3RzIGFyZSBub3QgYmVpbmcgcGFja2VkIgogbXNnc3RyICJpbmFrdGl2ZXJhciBza3Jpdm5pbmcgYXYgYml0a2FydGEgZMOlIG7DpWdyYSBvYmpla3QgaW50ZSBwYWNrYXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU4NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNzI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IG92ZXJmbG93IGluIHBhY2sgZm9yICVzIgogbXNnc3RyICJkZWx0YWJhc29mZnNldCB1dGFuZsO2ciBncsOkbnNlbiBpIHBhY2sgZsO2ciAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTk0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE3MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgb3V0IG9mIGJvdW5kIGZvciAlcyIKIG1zZ3N0ciAiZGVsdGFiYXNvZmZzZXQgdXRhbmbDtnIgZ3LDpG5zdsOkcmRlbiBmw7ZyICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE4NjMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjAwNAogbXNnaWQgIkNvdW50aW5nIG9iamVjdHMiCiBtc2dzdHIgIlLDpGtuYXIgb2JqZWt0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE5OTgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIGdldCBzaXplIG9mICVzIgotbXNnc3RyICJrYW4gaW50ZSBow6RtdGEgc3RvcmxlayBww6UgJXMiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjAxMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBvYmplY3QgaGVhZGVyIG9mICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthIG9iamVrdGh1dnVkIGbDtnIgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA4MyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwOTkKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEwOQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjE5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIzNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBjYW5ub3QgYmUgcmVhZCIKIG1zZ3N0ciAib2JqZWt0ZXQgJXMga3VuZGUgaW50ZSBsw6RzYXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA4NiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIyMiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGluY29uc2lzdGVudCBvYmplY3QgbGVuZ3RoICglPFBSSXVNQVg+IHZzICU8UFJJdU1BWD4pIgogbXNnc3RyICJvYmpla3RldCAlcyBoYXIgaW5rb25zaXN0ZW50IG9iamVrdGzDpG5nZCAoJTxQUkl1TUFYPiBtb3QgJTxQUkl1TUFYPikiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEyMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjU5CiBtc2dpZCAic3Vib3B0aW1hbCBwYWNrIC0gb3V0IG9mIG1lbW9yeSIKIG1zZ3N0ciAiaWNrZS1vcHRpbWFsdCBwYWNrIC0gbWlubmV0IHNsdXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjQ1MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbHRhIGNvbXByZXNzaW9uIHVzaW5nIHVwIHRvICVkIHRocmVhZHMiCiBtc2dzdHIgIkRlbHRha29tcHJpbWVyaW5nIGFudsOkbmRlciB1cHAgdGlsbCAlZCB0csOlZGFyIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI1ODMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFjayBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHRhZyAlcyIKIG1zZ3N0ciAia2FuIGludGUgcGFja2Egb2JqZWt0IG7DpWJhcmEgZnLDpW4gdGFnZ2VuICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2NzAKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjgwMQogbXNnaWQgIkNvbXByZXNzaW5nIG9iamVjdHMiCiBtc2dzdHIgIktvbXByaW1lcmFyIG9iamVrdCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjc2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4MDcKIG1zZ2lkICJpbmNvbnNpc3RlbmN5IHdpdGggZGVsdGEgY291bnQiCiBtc2dzdHIgImRlbHRhcsOka25hcmVuIMOkciBpbmtvbnNla3ZlbnQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjc1MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleHBlY3RlZCBlZGdlIG9iamVjdCBJRCwgZ290IGdhcmJhZ2U6XG4iCkBAIC0xMzk3MCw3ICsxNzA5OSw3IEBACiAiZsO2cnbDpG50YWRlIGthbnQtb2JqZWt0LWlkLCBmaWNrIHNrcsOkcDpcbiIKICIgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjc1OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleHBlY3RlZCBvYmplY3QgSUQsIGdvdCBnYXJiYWdlOlxuIgpAQCAtMTM5NzksMjQ5ICsxNzEwOCwyNDQgQEAKICJmw7ZydsOkbnRhZGUgb2JqZWt0LWlkLCBmaWNrIHNrcsOkcDpcbiIKICIgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg1NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTkyCiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgLS1taXNzaW5nIgogbXNnc3RyICJvZ2lsdGlndCB2w6RyZGUgZsO2ciAtLW1pc3NpbmciCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjkxNiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwMjQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzA1MSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNTkKIG1zZ2lkICJjYW5ub3Qgb3BlbiBwYWNrIGluZGV4IgotbXNnc3RyICJrYW4gaW50ZSBvzIhwcG5hIHBha2V0ZmlsZW4iCittc2dzdHIgImthbiBpbnRlIMO2cHBuYSBwYWtldGZpbGVuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5NDcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzA4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJsb29zZSBvYmplY3QgYXQgJXMgY291bGQgbm90IGJlIGV4YW1pbmVkIgogbXNnc3RyICJsw7ZzYSBvYmpla3QgcMOlICVzIGt1bmRlIGludGUgdW5kZXLDtmthcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDMyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNjcKIG1zZ2lkICJ1bmFibGUgdG8gZm9yY2UgbG9vc2Ugb2JqZWN0IgogbXNnc3RyICJrYW4gaW50ZSB0dmluZ2EgbMO2c2Egb2JqZWt0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMjIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSByZXYgJyVzJyIKIG1zZ3N0ciAiaW50ZSBlbiByZWZlcmVucyBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEyNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCByZXZpc2lvbiAnJXMnIgogbXNnc3RyICJmZWxha3RpZyByZXZpc2lvbiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE1MAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg4CiBtc2dpZCAidW5hYmxlIHRvIGFkZCByZWNlbnQgb2JqZWN0cyIKLW1zZ3N0ciAia2FuIGludGUgbGHMiGdnYSB0aWxsIG55YSBvYmpla3QiCittc2dzdHIgImthbiBpbnRlIGzDpGdnYSB0aWxsIG55YSBvYmpla3QiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIwMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuc3VwcG9ydGVkIGluZGV4IHZlcnNpb24gJXMiCiBtc2dzdHIgImluZGV4dmVyc2lvbmVuICVzIHN0w7ZkcyBlaiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjA3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJyVzJyIKIG1zZ3N0ciAiZmVsYWt0aWcgaW5kZXh2ZXJzaW9uIFwiJXNcIiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjM3Ci1tc2dpZCAiZG8gbm90IHNob3cgcHJvZ3Jlc3MgbWV0ZXIiCi1tc2dzdHIgInZpc2EgaW50ZSBmw7ZybG9wcHNpbmRpa2F0b3IiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIzOQotbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIiCi1tc2dzdHIgInZpc2EgZsO2cmxvcHBzaW5kaWthdG9yIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDEKLW1zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKLW1zZ3N0ciAidmlzYSBmw7ZybG9wcHNpbmRpa2F0b3IgdW5kZXIgb2JqZWt0c2tyaXZuaW5nc2Zhc2VuIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDQKLW1zZ2lkICJzaW1pbGFyIHRvIC0tYWxsLXByb2dyZXNzIHdoZW4gcHJvZ3Jlc3MgbWV0ZXIgaXMgc2hvd24iCi1tc2dzdHIgInNvbSAtLWFsbC1wcm9ncmVzcyBuw6RyIGbDtnJsb3Bwc2luZGlrYXRvcm4gdmlzYXMiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzgzCiBtc2dpZCAiPHZlcnNpb24+Wyw8b2Zmc2V0Pl0iCiBtc2dzdHIgIjx2ZXJzaW9uPlssPG9mZnNldD5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4NAogbXNnaWQgIndyaXRlIHRoZSBwYWNrIGluZGV4IGZpbGUgaW4gdGhlIHNwZWNpZmllZCBpZHggZm9ybWF0IHZlcnNpb24iCiBtc2dzdHIgInNrcml2IHBha2V0aW5kZXhmaWxlbiBpIGFuZ2l2ZW4gaW5kZXhmb3JtYXR2ZXJzaW9uIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4NwogbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIG91dHB1dCBwYWNrIGZpbGUiCiBtc2dzdHIgIm1heGltYWwgc3RvcmxlayBww6UgdmFyamUgdXRkYXRhcGFrZXRmaWwiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1MQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzg5CiBtc2dpZCAiaWdub3JlIGJvcnJvd2VkIG9iamVjdHMgZnJvbSBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlIgotbXNnc3RyICJpZ25vcmVyYSBsw6VuYWRlIG9iamVrdCBmcsOlbiBhbHRlcm5hdGl2YSBvYmpla3RsYWdlciIKK21zZ3N0ciAiaWdub3JlcmEgbMOlbmFkZSBvYmpla3QgZnLDpW4gc3VwcGxlcmFuZGUgb2JqZWt0bGFnZXIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzkxCiBtc2dpZCAiaWdub3JlIHBhY2tlZCBvYmplY3RzIgogbXNnc3RyICJpZ25vcmVyYSBwYWNrYWRlIG9iamVrdCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjU1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTMKIG1zZ2lkICJsaW1pdCBwYWNrIHdpbmRvdyBieSBvYmplY3RzIgogbXNnc3RyICJiZWdyw6Ruc2EgcGFrZXRmw7Zuc3RlciBlZnRlciBvYmpla3QiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk1CiBtc2dpZCAibGltaXQgcGFjayB3aW5kb3cgYnkgbWVtb3J5IGluIGFkZGl0aW9uIHRvIG9iamVjdCBsaW1pdCIKIG1zZ3N0ciAiYmVncsOkbnNhIHBha2V0ZsO2bnN0ZXIgZWZ0ZXIgbWlubmUgZsO2cnV0b20gb2JqZWt0Z3LDpG5zIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NwogbXNnaWQgIm1heGltdW0gbGVuZ3RoIG9mIGRlbHRhIGNoYWluIGFsbG93ZWQgaW4gdGhlIHJlc3VsdGluZyBwYWNrIgogbXNnc3RyICJtYXhpbWFsIGzDpG5nZCBww6UgZGVsdGFrZWRqYSB0aWxsw6V0ZW4gaSBzbHV0bGlndCBwYWtldCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjYxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTkKIG1zZ2lkICJyZXVzZSBleGlzdGluZyBkZWx0YXMiCiBtc2dzdHIgIsOldGVyYW52w6RuZCBiZWZpbnRsaWdhIGRlbHRhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMQogbXNnaWQgInJldXNlIGV4aXN0aW5nIG9iamVjdHMiCiBtc2dzdHIgIsOldGVyYW52w6RuZCBiZWZpbnRsaWdhIG9iamVrdCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjY1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDMKIG1zZ2lkICJ1c2UgT0ZTX0RFTFRBIG9iamVjdHMiCiBtc2dzdHIgImFudsOkbmQgT0ZTX0RFTFRBLW9iamVrdCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjY3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDUKIG1zZ2lkICJ1c2UgdGhyZWFkcyB3aGVuIHNlYXJjaGluZyBmb3IgYmVzdCBkZWx0YSBtYXRjaGVzIgogbXNnc3RyICJhbnbDpG5kIHRyw6VkYXIgdmlkIHPDtmtuaW5nIGVmdGVyIGLDpHN0YSBkZWx0YXRyw6RmZmFyIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwNwogbXNnaWQgImRvIG5vdCBjcmVhdGUgYW4gZW1wdHkgcGFjayBvdXRwdXQiCiBtc2dzdHIgImbDtnJzw7ZrIGludGUgc2thcGEgdG9tIHBha2V0dXRkYXRhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwOQogbXNnaWQgInJlYWQgcmV2aXNpb24gYXJndW1lbnRzIGZyb20gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgImzDpHMgcmV2aXNpb25zYXJndW1lbnQgZnLDpW4gc3RhbmRhcmQgaW4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDExCiBtc2dpZCAibGltaXQgdGhlIG9iamVjdHMgdG8gdGhvc2UgdGhhdCBhcmUgbm90IHlldCBwYWNrZWQiCi1tc2dzdHIgImJlZ3LDpG5zYSBvYmpla3QgdGlsbCBkZSBzb20gw6RubnUgaW50ZSBwYWNrYXRzIgorbXNnc3RyICJiZWdyw6Ruc2Egb2JqZWt0IHRpbGwgZGVtIHNvbSDDpG5udSBpbnRlIHBhY2thdHMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDE0CiBtc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIGFueSByZWZlcmVuY2UiCiBtc2dzdHIgImlua2x1ZGVyYSBvYmpla3Qgc29tIGthbiBuw6VzIGZyw6VuIG7DpWdvbiByZWZlcmVucyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjc5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MTcKIG1zZ2lkICJpbmNsdWRlIG9iamVjdHMgcmVmZXJyZWQgYnkgcmVmbG9nIGVudHJpZXMiCiBtc2dzdHIgImlua2x1ZGVyYSBvYmpla3Qgc29tIHJlZmVyZXJhcyBmcsOlbiByZWZlcmVuc2xvZ2dwb3N0ZXIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4MgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDIwCiBtc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlZmVycmVkIHRvIGJ5IHRoZSBpbmRleCIKIG1zZ3N0ciAiaW5rbHVkZXJhIG9iamVrdCBzb20gcmVmZXJlcmFzIGZyw6VuIGluZGV4ZXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDIzCiBtc2dpZCAib3V0cHV0IHBhY2sgdG8gc3Rkb3V0IgogbXNnc3RyICJza3JpdiBwYWtldCBww6Ugc3RhbmRhcmQgdXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDI1CiBtc2dpZCAiaW5jbHVkZSB0YWcgb2JqZWN0cyB0aGF0IHJlZmVyIHRvIG9iamVjdHMgdG8gYmUgcGFja2VkIgotbXNnc3RyICJpbmtsdWRlcmEgdGFnZ29iamVrdCBzb20gcmVmZXJlcmFyIG9iamVrdCBzb20gc2thbGwgcGFja2FzIgorbXNnc3RyICJpbmtsdWRlcmEgdGFnZ29iamVrdCBzb20gcmVmZXJlcmFyIG9iamVrdCBzb20gc2thIHBhY2thcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjcKIG1zZ2lkICJrZWVwIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgImJlaMOlbGwgb27DpWJhcmEgb2JqZWt0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyOQogbXNnaWQgInBhY2sgbG9vc2UgdW5yZWFjaGFibGUgb2JqZWN0cyIKIG1zZ3N0ciAicGFja2EgbMO2c2Egb27DpWJhcmEgb2JqZWt0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQzMQogbXNnaWQgInVucGFjayB1bnJlYWNoYWJsZSBvYmplY3RzIG5ld2VyIHRoYW4gPHRpbWU+IgogbXNnc3RyICJwYWNrYSB1cHAgb27DpWJhcmEgb2JqZWt0IG55YXJlIMOkbiA8dGlkPiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzQKK21zZ2lkICJ1c2UgdGhlIHNwYXJzZSByZWFjaGFiaWxpdHkgYWxnb3JpdGhtIgorbXNnc3RyICJhbnbDpG5kIGdsZXMtbsOlYmFyaGV0c2FsZ29yaXRtZW4iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQzNgogbXNnaWQgImNyZWF0ZSB0aGluIHBhY2tzIgogbXNnc3RyICJza2FwYSB0dW5uYSBwYWtldCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzgKIG1zZ2lkICJjcmVhdGUgcGFja3Mgc3VpdGFibGUgZm9yIHNoYWxsb3cgZmV0Y2hlcyIKIG1zZ3N0ciAic2thcGEgcGFja2ZpbGVyIGzDpG1wYWRlIGbDtnIgZ3J1bmRhIGjDpG10bmluZ2FyIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDAKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0MAogbXNnaWQgImlnbm9yZSBwYWNrcyB0aGF0IGhhdmUgY29tcGFuaW9uIC5rZWVwIGZpbGUiCiBtc2dzdHIgImlnbm9yZXJhIHBha2V0IHNvbSBoYXIgdGlsbGjDtnJhbmRlIC5rZWVwLWZpbCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDIKIG1zZ2lkICJpZ25vcmUgdGhpcyBwYWNrIgogbXNnc3RyICJpZ25vcmVyYSBkZXR0YSBwYWtldCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzA0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDQKIG1zZ2lkICJwYWNrIGNvbXByZXNzaW9uIGxldmVsIgogbXNnc3RyICJrb21wcmltZXJpbmdzZ3JhZCBmw7ZyIHBha2V0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0NgogbXNnaWQgImRvIG5vdCBoaWRlIGNvbW1pdHMgYnkgZ3JhZnRzIgogbXNnc3RyICJnw7ZtIGludGUgaW5jaGVja25pbmdhciBtZWQgeW1wbmluZ2FyIChcImdyYWZ0c1wiKSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzA4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDgKIG1zZ2lkICJ1c2UgYSBiaXRtYXAgaW5kZXggaWYgYXZhaWxhYmxlIHRvIHNwZWVkIHVwIGNvdW50aW5nIG9iamVjdHMiCiBtc2dzdHIgImFudsOkbmQgYml0a2FydGluZGV4IG9tIHRpbGxnw6RuZ2xpZ3QgZsO2ciBhdHQgcsOka25hIG9iamVrdCBzbmFiYmFyZSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzEwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTAKIG1zZ2lkICJ3cml0ZSBhIGJpdG1hcCBpbmRleCB0b2dldGhlciB3aXRoIHRoZSBwYWNrIGluZGV4IgogbXNnc3RyICJhbnbDpG5kIGJpdGthcnRpbmRleCB0aWxsc2FtbWFucyBtZWQgcGFja2luZGV4ZXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU0Cittc2dpZCAid3JpdGUgYSBiaXRtYXAgaW5kZXggaWYgcG9zc2libGUiCittc2dzdHIgInNrcml2IGJpdGthcnRpbmRleCBvbSBtw7ZqbGlndCIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU4CiBtc2dpZCAiaGFuZGxpbmcgZm9yIG1pc3Npbmcgb2JqZWN0cyIKIG1zZ3N0ciAiaGFudGVyaW5nIGF2IHNha25hZGUgb2JqZWt0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ2MQogbXNnaWQgImRvIG5vdCBwYWNrIG9iamVjdHMgaW4gcHJvbWlzb3IgcGFja2ZpbGVzIgogbXNnc3RyICJwYWNrYSBpbnRlIG9iamVrdCBpIGtvbnRyYWt0c3BhY2tmaWxlciIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzE4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NjMKIG1zZ2lkICJyZXNwZWN0IGlzbGFuZHMgZHVyaW5nIGRlbHRhIGNvbXByZXNzaW9uIgogbXNnc3RyICJyZXNwZWt0ZXJhIMO2YXIgdW5kZXIgZGVsdGFrb21wcmltZXJpbmciCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0MgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbHRhIGNoYWluIGRlcHRoICVkIGlzIHRvbyBkZWVwLCBmb3JjaW5nICVkIgogbXNnc3RyICJkZWx0YWtlZGplZGp1cGV0ICVkIMOkciBmw7ZyIGRqdXB0LCBww6V0dmluZ2FyICVkIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrLmRlbHRhQ2FjaGVMaW1pdCBpcyB0b28gaGlnaCwgZm9yY2luZyAlZCIKIG1zZ3N0ciAicGFjay5kZWx0YUNhY2hlTGltaXQgw6RyIGbDtnIgaMO2Z3QsIHDDpXR2aW5nYXIgJWQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTUxCiBtc2dpZCAiLS1tYXgtcGFjay1zaXplIGNhbm5vdCBiZSB1c2VkIHRvIGJ1aWxkIGEgcGFjayBmb3IgdHJhbnNmZXIiCiBtc2dzdHIgIiIKLSItLW1heC1wYWNrLXNpemUga2FuIGludGUgYW52w6RuZGFzIGbDtnIgYXR0IGJ5Z2dhIGV0dCBwYWtldCBzb20gc2thbGwgw7Z2ZXJmw7ZyYXMiCisiLS1tYXgtcGFjay1zaXplIGthbiBpbnRlIGFudsOkbmRhcyBmw7ZyIGF0dCBieWdnYSBldHQgcGFrZXQgc29tIHNrYSDDtnZlcmbDtnJhcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NTMKIG1zZ2lkICJtaW5pbXVtIHBhY2sgc2l6ZSBsaW1pdCBpcyAxIE1pQiIKIG1zZ3N0ciAibWluc3RhIHBhY2tzdG9ybGVrIMOkciAxIE1pQiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NTgKIG1zZ2lkICItLXRoaW4gY2Fubm90IGJlIHVzZWQgdG8gYnVpbGQgYW4gaW5kZXhhYmxlIHBhY2siCiBtc2dzdHIgIi0tdGhpbiBrYW4gaW50ZSBhbnbDpG5kYXMgZsO2ciBhdHQgYnlnZ2EgZXR0IGluZGV4ZXJiYXJ0IHBha2V0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU2MQogbXNnaWQgIi0ta2VlcC11bnJlYWNoYWJsZSBhbmQgLS11bnBhY2stdW5yZWFjaGFibGUgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1rZWVwLXVucmVhY2hhYmxlIG9jaCAtdW5wYWNrLXVucmVhY2hhYmxlIGthbiBpbnRlIGFudsOkbmRhcyBzYW10aWRpZ3QiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTY3CiBtc2dpZCAiY2Fubm90IHVzZSAtLWZpbHRlciB3aXRob3V0IC0tc3Rkb3V0IgogbXNnc3RyICJrYW4gaW50ZSBhbnbDpG5kYSAtLWZpbHRlciB1dGFuIC0tc3Rkb3V0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NzYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzYyNwogbXNnaWQgIkVudW1lcmF0aW5nIG9iamVjdHMiCiBtc2dzdHIgIlLDpGtuYXIgdXBwIG9iamVrdCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDk1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM2NTcKICMsIGMtZm9ybWF0Ci1tc2dpZCAiVG90YWwgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCByZXVzZWQgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pIgorbXNnaWQgIiIKKyJUb3RhbCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHJldXNlZCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHBhY2stIgorInJldXNlZCAlPFBSSXUzMj4iCiBtc2dzdHIgIiIKLSJUb3RhbHQgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCDDpXRlcmFudsOkbmRlICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSIKKyJUb3RhbHQgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCDDpXRlcmFudsOkbmRlICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgIgorInBha2V0LcOldGVyYW52w6RuZGEgJTxQUkl1MzI+IgogCi0jOiBidWlsdGluL3BhY2stcmVmcy5jOjcKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6OAogbXNnaWQgImdpdCBwYWNrLXJlZnMgWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCBwYWNrLXJlZnMgWzxmbGFnZ29yPl0iCiAKLSM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTUKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKIG1zZ2lkICJwYWNrIGV2ZXJ5dGhpbmciCiBtc2dzdHIgInBhY2thIGFsbHQiCiAKLSM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTcKIG1zZ2lkICJwcnVuZSBsb29zZSByZWZzIChkZWZhdWx0KSIKIG1zZ3N0ciAidGEgYm9ydCBsw7ZzYSByZWZlcmVuc2VyIChzdGFuZGFyZCkiCiAKQEAgLTE0MjM3LDY5ICsxNzM2MSw2OSBAQAogbXNnaWQgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGltZT5dIFstLV0gWzxoZWFkPi4uLl0iCiBtc2dzdHIgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGlkPl0gWy0tXSBbPGh1dnVkPi4uLl0iCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMDkKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMzEKIG1zZ2lkICJyZXBvcnQgcHJ1bmVkIG9iamVjdHMiCiBtc2dzdHIgInJhcHBvcnRlcmEgYm9ydHRhZ25hIG9iamVrdCIKIAotIzogYnVpbHRpbi9wcnVuZS5jOjExMgorIzogYnVpbHRpbi9wcnVuZS5jOjEzNAogbXNnaWQgImV4cGlyZSBvYmplY3RzIG9sZGVyIHRoYW4gPHRpbWU+IgogbXNnc3RyICJsw6V0IHRpZCBnw6UgdXQgZsO2ciBvYmpla3Qgw6RsZHJlIMOkbiA8dGlkPiIKIAotIzogYnVpbHRpbi9wcnVuZS5jOjExNAorIzogYnVpbHRpbi9wcnVuZS5jOjEzNgogbXNnaWQgImxpbWl0IHRyYXZlcnNhbCB0byBvYmplY3RzIG91dHNpZGUgcHJvbWlzb3IgcGFja2ZpbGVzIgogbXNnc3RyICJiZWdyw6Ruc2EgdmFuZHJpbmcgYXYgb2JqZWt0IHV0YW5mw7ZyIGtvbnRyYWt0c3BhY2tmaWxlci4iCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMjkKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxNTAKIG1zZ2lkICJjYW5ub3QgcHJ1bmUgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCiBtc2dzdHIgImthbiBpbnRlIHJlbnNhIGkgZXR0IFwicHJlY2lvdXMtb2JqZWt0XCItYXJraXYiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjYwIGJ1aWx0aW4vcHVsbC5jOjYyCisjOiBidWlsdGluL3B1bGwuYzo0NSBidWlsdGluL3B1bGwuYzo0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciAlczogJXMiCiBtc2dzdHIgIkZlbGFrdGlndCB2w6RyZGUgZsO2ciAlczogJXMiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjgyCisjOiBidWlsdGluL3B1bGwuYzo2NwogbXNnaWQgImdpdCBwdWxsIFs8b3B0aW9ucz5dIFs8cmVwb3NpdG9yeT4gWzxyZWZzcGVjPi4uLl1dIgogbXNnc3RyICJnaXQgcHVsbCBbPGZsYWdnb3I+XSBbPGFya2l2PiBbPHJlZnNwZWM+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjEzMworIzogYnVpbHRpbi9wdWxsLmM6MTIyCiBtc2dpZCAiY29udHJvbCBmb3IgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMiCiBtc2dzdHIgInN0eXJuaW5nIGbDtnIgcmVrdXJzaXYgaMOkbXRuaW5nIGF2IHVuZGVybW9kdWxlciIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTM3CisjOiBidWlsdGluL3B1bGwuYzoxMjYKIG1zZ2lkICJPcHRpb25zIHJlbGF0ZWQgdG8gbWVyZ2luZyIKIG1zZ3N0ciAiQWx0ZXJuYXRpdiBnw6RsbGFuZGUgc2FtbWFuc2xhZ25pbmciCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE0MAorIzogYnVpbHRpbi9wdWxsLmM6MTI5CiBtc2dpZCAiaW5jb3Jwb3JhdGUgY2hhbmdlcyBieSByZWJhc2luZyByYXRoZXIgdGhhbiBtZXJnaW5nIgogbXNnc3RyICJpbmxlbW1hIMOkbmRyaW5nYXIgZ2Vub20gb21iYXNlcmluZyBpIHN0w6RsbGV0IGbDtnIgc2FtbWFuc2xhZ25pbmciCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE2NyBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNDcgYnVpbHRpbi9yZXZlcnQuYzoxMjIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE1NyBidWlsdGluL3JlYmFzZS5jOjQ3MSBidWlsdGluL3JldmVydC5jOjEyNgogbXNnaWQgImFsbG93IGZhc3QtZm9yd2FyZCIKIG1zZ3N0ciAidGlsbMOldCBzbmFiYnNwb2xuaW5nIgogCi0jOiBidWlsdGluL3B1bGwuYzoxNzYKKyM6IGJ1aWx0aW4vcHVsbC5jOjE2NgogbXNnaWQgImF1dG9tYXRpY2FsbHkgc3Rhc2gvc3Rhc2ggcG9wIGJlZm9yZSBhbmQgYWZ0ZXIgcmViYXNlIgogbXNnc3RyICJ1dGbDtnIgYXV0b21hdGlza3Qgc3Rhc2gvc3Rhc2ggcG9wIGbDtnJlIG9jaCBlZnRlciBvbWJhc2VyaW5nIgogCi0jOiBidWlsdGluL3B1bGwuYzoxOTIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE4MgogbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBmZXRjaGluZyIKIG1zZ3N0ciAiQWx0ZXJuYXRpdiBnw6RsbGFuZGUgaMOkbXRuaW5nYXIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjIwMgorIzogYnVpbHRpbi9wdWxsLmM6MTkyCiBtc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGxvY2FsIGJyYW5jaCIKIG1zZ3N0ciAidHZpbmdhIMO2dmVyc2tyaXZuaW5nIGF2IGxva2FsIGdyZW4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjIxMAorIzogYnVpbHRpbi9wdWxsLmM6MjAwCiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgcHVsbGVkIGluIHBhcmFsbGVsIgogbXNnc3RyICJhbnRhbCB1bmRlcm1vZHVsZXIgc29tIGjDpG10YXMgcGFyYWxsZWxsdCIKIAotIzogYnVpbHRpbi9wdWxsLmM6MzA1CisjOiBidWlsdGluL3B1bGwuYzozMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgcHVsbC5mZjogJXMiCiBtc2dzdHIgIkZlbGFrdGlndCB2w6RyZGUgZsO2ciBwdWxsLmZmOiAlcyIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDIxCisjOiBidWlsdGluL3B1bGwuYzo0MjYKIG1zZ2lkICIiCiAiVGhlcmUgaXMgbm8gY2FuZGlkYXRlIGZvciByZWJhc2luZyBhZ2FpbnN0IGFtb25nIHRoZSByZWZzIHRoYXQgeW91IGp1c3QgIgogImZldGNoZWQuIgpAQCAtMTQzMDcsMTQgKzE3NDMxLDE0IEBACiAiRGV0IGZpbm5zIGluZ2VuIGthbmRpZGF0IGbDtnIgb21iYXNlcmluZyBibGFuZCByZWZlcmVuc2VybmEgZHUgcHJlY2lzIGhhciAiCiAiaMOkbXRhdC4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyMworIzogYnVpbHRpbi9wdWxsLmM6NDI4CiBtc2dpZCAiIgogIlRoZXJlIGFyZSBubyBjYW5kaWRhdGVzIGZvciBtZXJnaW5nIGFtb25nIHRoZSByZWZzIHRoYXQgeW91IGp1c3QgZmV0Y2hlZC4iCiBtc2dzdHIgIiIKICJEZXQgZmlubnMgaW5nZW4ga2FuZGlkYXQgZsO2ciBzYW1tYW5zbGFnbmluZyBibGFuZCByZWZlcmVuc2VybmEgZHUgcHJlY2lzIGhhciAiCiAiaMOkbXRhdC4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyNAorIzogYnVpbHRpbi9wdWxsLmM6NDI5CiBtc2dpZCAiIgogIkdlbmVyYWxseSB0aGlzIG1lYW5zIHRoYXQgeW91IHByb3ZpZGVkIGEgd2lsZGNhcmQgcmVmc3BlYyB3aGljaCBoYWQgbm9cbiIKICJtYXRjaGVzIG9uIHRoZSByZW1vdGUgZW5kLiIKQEAgLTE0MzIyLDcgKzE3NDQ2LDcgQEAKICJEZXQgYmV0eWRlciB2YW5saWd0dmlzIGF0dCBkdSBhbnbDpG50IGVuIGpva2VydGVja2VuLXJlZnNwZWMgc29tIGludGVcbiIKICJtb3RzdmFyYWRlIG7DpWdvdCBpIGZqw6RycsOkbmRlbi4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyNworIzogYnVpbHRpbi9wdWxsLmM6NDMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXNrZWQgdG8gcHVsbCBmcm9tIHRoZSByZW1vdGUgJyVzJywgYnV0IGRpZCBub3Qgc3BlY2lmeVxuIgpAQCAtMTQzMzMsNDIgKzE3NDU3LDQyIEBACiAiZ3Jlbi4gRWZ0ZXJzb20gZGV0IGludGUgw6RyIGRlbiBmasOkcnIgc29tIMOkciBrb25maWd1cmVyYWQgc29tXG4iCiAic3RhbmRhcmQgZsO2ciBha3R1ZWxsIGdyZW4gbcOlc3RlIGR1IGFuZ2UgZW4gZ3JlbiBww6Uga29tbWFuZG9yYWRlbi4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzMiBidWlsdGluL3JlYmFzZS5jOjc2MSBnaXQtcGFyc2UtcmVtb3RlLnNoOjczCisjOiBidWlsdGluL3B1bGwuYzo0MzcgYnVpbHRpbi9yZWJhc2UuYzoxNDA5IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzMKIG1zZ2lkICJZb3UgYXJlIG5vdCBjdXJyZW50bHkgb24gYSBicmFuY2guIgogbXNnc3RyICJEdSDDpHIgaW50ZSBww6UgbsOlZ29uIGdyZW4gZsO2ciBuw6RydmFyYW5kZS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzNCBidWlsdGluL3B1bGwuYzo0NDkgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3OQorIzogYnVpbHRpbi9wdWxsLmM6NDM5IGJ1aWx0aW4vcHVsbC5jOjQ1NCBnaXQtcGFyc2UtcmVtb3RlLnNoOjc5CiBtc2dpZCAiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIHJlYmFzZSBhZ2FpbnN0LiIKIG1zZ3N0ciAiQW5nZSB2aWxrZW4gZ3JlbiBkdSB2aWxsIG9tYmFzZXJhIG1vdC4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzNiBidWlsdGluL3B1bGwuYzo0NTEgZ2l0LXBhcnNlLXJlbW90ZS5zaDo4MgorIzogYnVpbHRpbi9wdWxsLmM6NDQxIGJ1aWx0aW4vcHVsbC5jOjQ1NiBnaXQtcGFyc2UtcmVtb3RlLnNoOjgyCiBtc2dpZCAiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIG1lcmdlIHdpdGguIgogbXNnc3RyICJBbmdlIHZpbGtlbiBncmVuIGR1IHZpbGwgc2zDpSBzYW1tYW4gbWVkLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM3IGJ1aWx0aW4vcHVsbC5jOjQ1MgorIzogYnVpbHRpbi9wdWxsLmM6NDQyIGJ1aWx0aW4vcHVsbC5jOjQ1NwogbXNnaWQgIlNlZSBnaXQtcHVsbCgxKSBmb3IgZGV0YWlscy4iCiBtc2dzdHIgIlNlIGdpdC1wdWxsKDEpIGbDtnIgZGV0YWxqZXIuIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzkgYnVpbHRpbi9wdWxsLmM6NDQ1IGJ1aWx0aW4vcHVsbC5jOjQ1NAotIzogYnVpbHRpbi9yZWJhc2UuYzo3NjcgZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NAorIzogYnVpbHRpbi9wdWxsLmM6NDQ0IGJ1aWx0aW4vcHVsbC5jOjQ1MCBidWlsdGluL3B1bGwuYzo0NTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxNSBnaXQtcGFyc2UtcmVtb3RlLnNoOjY0CiBtc2dpZCAiPHJlbW90ZT4iCiBtc2dzdHIgIjxmasOkcnI+IgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzkgYnVpbHRpbi9wdWxsLmM6NDU0IGJ1aWx0aW4vcHVsbC5jOjQ1OQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTU2IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjUKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0NCBidWlsdGluL3B1bGwuYzo0NTkgYnVpbHRpbi9wdWxsLmM6NDY0CisjOiBnaXQtcGFyc2UtcmVtb3RlLnNoOjY1CiBtc2dpZCAiPGJyYW5jaD4iCiBtc2dzdHIgIjxncmVuPiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDQ3IGJ1aWx0aW4vcmViYXNlLmM6NzU5IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzUKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ1MiBidWlsdGluL3JlYmFzZS5jOjE0MDcgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3NQogbXNnaWQgIlRoZXJlIGlzIG5vIHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJEZXQgZmlubnMgaW5nZW4gc3DDpXJuaW5nc2luZm9ybWF0aW9uIGbDtnIgYWt0dWVsbCBncmVuLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDU2IGdpdC1wYXJzZS1yZW1vdGUuc2g6OTUKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ2MSBnaXQtcGFyc2UtcmVtb3RlLnNoOjk1CiBtc2dpZCAiIgogIklmIHlvdSB3aXNoIHRvIHNldCB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhpcyBicmFuY2ggeW91IGNhbiBkbyBzbyB3aXRoOiIKIG1zZ3N0ciAiT20gZHUgdmlsbCBhbmdlIHNww6VybmluZ3NpbmZvcm1hdGlvbiBmw7ZyIGdyZW5lbiBrYW4gZHUgZ8O2cmEgZGV0IG1lZDoiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ2MQorIzogYnVpbHRpbi9wdWxsLmM6NDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGNvbmZpZ3VyYXRpb24gc3BlY2lmaWVzIHRvIG1lcmdlIHdpdGggdGhlIHJlZiAnJXMnXG4iCkBAIC0xNDM3NywzMiArMTc1MDEsMzIgQEAKICJEaW5hIGluc3TDpGxsbmluZ2FyIGFuZ2VyIHNhbW1hbnNsYWduaW5nIG1lZCByZWZlcmVuc2VuIFwiJXNcIlxuIgogImZyw6VuIGZqw6RycmVuLCBtZW4gbsOlZ29uIHPDpWRhbiByZWZlcmVucyB0b2dzIGludGUgZW1vdC4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjU2NQorIzogYnVpbHRpbi9wdWxsLmM6NTc2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgY29tbWl0ICVzIgogbXNnc3RyICJrdW5kZSBpbnRlIGtvbW1hIMOldCBpbmNoZWNrbmluZ2VuICVzIgogCi0jOiBidWlsdGluL3B1bGwuYzo4NDMKKyM6IGJ1aWx0aW4vcHVsbC5jOjg1NwogbXNnaWQgImlnbm9yaW5nIC0tdmVyaWZ5LXNpZ25hdHVyZXMgZm9yIHJlYmFzZSIKIG1zZ3N0ciAiaWdub3JlcmEgLS12ZXJpZnktc2lnbmF0dXJlcyBmw7ZyIG9tYmFzZXJpbmciCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg5MQorIzogYnVpbHRpbi9wdWxsLmM6OTEyCiBtc2dpZCAiLS1bbm8tXWF1dG9zdGFzaCBvcHRpb24gaXMgb25seSB2YWxpZCB3aXRoIC0tcmViYXNlLiIKIG1zZ3N0ciAiLS1bbm8tXWF1dG9zdGFzaCDDpHIgZW5kYXN0IGdpbHRpZyBtZWQgLS1yZWJhc2UuIgogCi0jOiBidWlsdGluL3B1bGwuYzo4OTkKKyM6IGJ1aWx0aW4vcHVsbC5jOjkyMAogbXNnaWQgIlVwZGF0aW5nIGFuIHVuYm9ybiBicmFuY2ggd2l0aCBjaGFuZ2VzIGFkZGVkIHRvIHRoZSBpbmRleC4iCiBtc2dzdHIgIlVwcGRhdGVyYXIgZW4gb2bDtmRkIGdyZW4gbWVkIMOkbmRyaW5nYXIgc29tIGxhZ3RzIHRpbGwgaSBpbmRleGV0LiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTAyCisjOiBidWlsdGluL3B1bGwuYzo5MjQKIG1zZ2lkICJwdWxsIHdpdGggcmViYXNlIgogbXNnc3RyICJwdWxsIG1lZCBvbWJhc2VyaW5nIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MDMKKyM6IGJ1aWx0aW4vcHVsbC5jOjkyNQogbXNnaWQgInBsZWFzZSBjb21taXQgb3Igc3Rhc2ggdGhlbS4iCiBtc2dzdHIgImNoZWNrYSBpbiBlbGxlciBhbnbDpG5kIFwic3Rhc2hcIiBww6UgZGVtLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTI4CisjOiBidWlsdGluL3B1bGwuYzo5NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImZldGNoIHVwZGF0ZWQgdGhlIGN1cnJlbnQgYnJhbmNoIGhlYWQuXG4iCkBAIC0xNDQxMyw3ICsxNzUzNyw3IEBACiAic25hYmJzcG9sYXIgZGluIGFyYmV0c2thdGFsb2cgZnLDpW5cbiIKICJpbmNoZWNrbmluZ2VuICVzLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTM0CisjOiBidWlsdGluL3B1bGwuYzo5NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNhbm5vdCBmYXN0LWZvcndhcmQgeW91ciB3b3JraW5nIHRyZWUuXG4iCkBAIC0xNDQzMCwxNSArMTc1NTQsMTUgQEAKICIkIGdpdCByZXNldCAtLWhhcmRcbiIKICJmw7ZyIGF0dCDDpXRlcmfDpS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjk0OQorIzogYnVpbHRpbi9wdWxsLmM6OTcxCiBtc2dpZCAiQ2Fubm90IG1lcmdlIG11bHRpcGxlIGJyYW5jaGVzIGludG8gZW1wdHkgaGVhZC4iCiBtc2dzdHIgIkthbiBpbnRlIHNsw6UgaWhvcCBmbGVyYSBncmVuYXIgaSBldHQgdG9tdCBodXZ1ZC4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjk1MworIzogYnVpbHRpbi9wdWxsLmM6OTc1CiBtc2dpZCAiQ2Fubm90IHJlYmFzZSBvbnRvIG11bHRpcGxlIGJyYW5jaGVzLiIKIG1zZ3N0ciAiS2FuIGludGUgb21iYXNlcmEgb3ZhbnDDpSBmbGVyYSBncmVuYXIuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5NjAKKyM6IGJ1aWx0aW4vcHVsbC5jOjk4MgogbXNnaWQgImNhbm5vdCByZWJhc2Ugd2l0aCBsb2NhbGx5IHJlY29yZGVkIHN1Ym1vZHVsZSBtb2RpZmljYXRpb25zIgogbXNnc3RyICJrYW4gaW50ZSBvbWJhc2VyYSBtZWQgbG9rYWx0IGxhZ3JhZGUgw6RuZHJpbmdhciBpIHVuZGVybW9mdWwiCiAKQEAgLTE0NDQ2LDE1ICsxNzU3MCwxNSBAQAogbXNnaWQgImdpdCBwdXNoIFs8b3B0aW9ucz5dIFs8cmVwb3NpdG9yeT4gWzxyZWZzcGVjPi4uLl1dIgogbXNnc3RyICJnaXQgcHVzaCBbPGZsYWdnb3I+XSBbPGFya2l2PiBbPHJlZnNwZWM+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjExMQorIzogYnVpbHRpbi9wdXNoLmM6MTEyCiBtc2dpZCAidGFnIHNob3J0aGFuZCB3aXRob3V0IDx0YWc+IgogbXNnc3RyICJ0YWdnZsO2cmtvcnRuaW5nIHV0YW4gPHRhZ2c+IgogCi0jOiBidWlsdGluL3B1c2guYzoxMjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjEyMgogbXNnaWQgIi0tZGVsZXRlIG9ubHkgYWNjZXB0cyBwbGFpbiB0YXJnZXQgcmVmIG5hbWVzIgogbXNnc3RyICItLWRlbGV0ZSBnb2R0YXIgZW5kYXN0IGVua2xhIG3DpWxyZWZlcmVuc25hbW4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE2NQorIzogYnVpbHRpbi9wdXNoLmM6MTY4CiBtc2dpZCAiIgogIlxuIgogIlRvIGNob29zZSBlaXRoZXIgb3B0aW9uIHBlcm1hbmVudGx5LCBzZWUgcHVzaC5kZWZhdWx0IGluICdnaXQgaGVscCBjb25maWcnLiIKQEAgLTE0NDYzLDcgKzE3NTg3LDcgQEAKICJGw7ZyIGF0dCB2w6RsamEgZXR0IGF2IGFsdGVybmF0aXZlbiBwZXJtYW5lbnQsIHNlIHB1c2guZGVmYXVsdCBpIFwiZ2l0IGhlbHAgIgogImNvbmZpZ1wiLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTY4CisjOiBidWlsdGluL3B1c2guYzoxNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSB1cHN0cmVhbSBicmFuY2ggb2YgeW91ciBjdXJyZW50IGJyYW5jaCBkb2VzIG5vdCBtYXRjaFxuIgpAQCAtMTQ0ODgsNyArMTc2MTIsNyBAQAogIiAgICBnaXQgcHVzaCAlcyBIRUFEXG4iCiAiJXMiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE4MworIzogYnVpbHRpbi9wdXNoLmM6MTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXJlIG5vdCBjdXJyZW50bHkgb24gYSBicmFuY2guXG4iCkBAIC0xNDUwMyw3ICsxNzYyNyw3IEBACiAiXG4iCiAiICAgIGdpdCBwdXNoICVzIEhFQUQ6PG5hbW4tcMOlLWZqw6RycmdyZW4+XG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE5NworIzogYnVpbHRpbi9wdXNoLmM6MjAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgY3VycmVudCBicmFuY2ggJXMgaGFzIG5vIHVwc3RyZWFtIGJyYW5jaC5cbiIKQEAgLTE0NTE2LDEyICsxNzY0MCwxMiBAQAogIlxuIgogIiAgICBnaXQgcHVzaCAtLXNldC11cHN0cmVhbSAlcyAlc1xuIgogCi0jOiBidWlsdGluL3B1c2guYzoyMDUKKyM6IGJ1aWx0aW4vcHVzaC5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgY3VycmVudCBicmFuY2ggJXMgaGFzIG11bHRpcGxlIHVwc3RyZWFtIGJyYW5jaGVzLCByZWZ1c2luZyB0byBwdXNoLiIKIG1zZ3N0ciAiRGVuIGFrdHVlbGxhIGdyZW5lbiAlcyBoYXIgZmxlcmEgdXBwc3Ryw7Ztc2dyZW5hciwgdsOkZ3JhciBzw6RuZGEuIgogCi0jOiBidWlsdGluL3B1c2guYzoyMDgKKyM6IGJ1aWx0aW4vcHVzaC5jOjIxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFyZSBwdXNoaW5nIHRvIHJlbW90ZSAnJXMnLCB3aGljaCBpcyBub3QgdGhlIHVwc3RyZWFtIG9mXG4iCkBAIC0xNDUzMCwxNiArMTc2NTQsMTYgQEAKIG1zZ3N0ciAiIgogIkR1IHPDpG5kZXIgdGlsbCBmasOkcnJlbiBcIiVzXCIsIHNvbSBpbnRlIMOkciB1cHBzdHLDtm1zIGbDtnIgZGVuXG4iCiAiYWt0dWVsbGEgZ3JlbmVuIFwiJXNcIiwgdXRhbiBhdHQgdGFsYSBvbSBmw7ZyIG1pZyB2YWQgc29tXG4iCi0ic2thbGwgc8OkbmRhcyBmw7ZyIGF0dCB1cHBkYXRlcmEgZmrDpHJyZ3JlbmVuLiIKKyJza2Egc8OkbmRhcyBmw7ZyIGF0dCB1cHBkYXRlcmEgZmrDpHJyZ3JlbmVuLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjY3CisjOiBidWlsdGluL3B1c2guYzoyNzAKIG1zZ2lkICIiCiAiWW91IGRpZG4ndCBzcGVjaWZ5IGFueSByZWZzcGVjcyB0byBwdXNoLCBhbmQgcHVzaC5kZWZhdWx0IGlzIFwibm90aGluZ1wiLiIKIG1zZ3N0ciAiIgogIkR1IGFuZ2F2IGluZ2EgcmVmZXJlbnNzcGVjaWZpa2F0aW9uZXIgYXR0IHPDpG5kYSwgb2NoIHB1c2guZGVmYXVsdCDDpHIgIgogIlwibm90aGluZ1wiLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mjc0CisjOiBidWlsdGluL3B1c2guYzoyNzcKIG1zZ2lkICIiCiAiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHRpcCBvZiB5b3VyIGN1cnJlbnQgYnJhbmNoIGlzIGJlaGluZFxuIgogIml0cyByZW1vdGUgY291bnRlcnBhcnQuIEludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXMgKGUuZy5cbiIKQEAgLTE0NTUxLDcgKzE3Njc1LDcgQEAKICJcImdpdCBwdWxsIC4uLi5cIikgaW5uYW4gZHUgc8OkbmRlciBpZ2VuLlxuIgogIlNlIGF2c25pdHRldCBcIk5vdGUgYWJvdXQgZmFzdC1mb3J3YXJkXCIgaSBcImdpdCBwdXNoIC0taGVscFwiIGbDtnIgZGV0YWxqZXIuIgogCi0jOiBidWlsdGluL3B1c2guYzoyODAKKyM6IGJ1aWx0aW4vcHVzaC5jOjI4MwogbXNnaWQgIiIKICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSBhIHB1c2hlZCBicmFuY2ggdGlwIGlzIGJlaGluZCBpdHMgcmVtb3RlXG4iCiAiY291bnRlcnBhcnQuIENoZWNrIG91dCB0aGlzIGJyYW5jaCBhbmQgaW50ZWdyYXRlIHRoZSByZW1vdGUgY2hhbmdlc1xuIgpAQCAtMTQ1NjMsNyArMTc2ODcsNyBAQAogIlwiZ2l0IHB1bGwgLi4uXCIpIGlubmFuIGR1IHPDpG5kZXIgaWdlbi5cbiIKICJTZSBhdnNuaXR0ZXQgXCJOb3RlIGFib3V0IGZhc3QtZm9yd2FyZFwiIGkgXCJnaXQgcHVzaCAtLWhlbHBcIiBmw7ZyIGRldGFsamVyLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mjg2CisjOiBidWlsdGluL3B1c2guYzoyODkKIG1zZ2lkICIiCiAiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHJlbW90ZSBjb250YWlucyB3b3JrIHRoYXQgeW91IGRvXG4iCiAibm90IGhhdmUgbG9jYWxseS4gVGhpcyBpcyB1c3VhbGx5IGNhdXNlZCBieSBhbm90aGVyIHJlcG9zaXRvcnkgcHVzaGluZ1xuIgpAQCAtMTQ1NzcsMTEgKzE3NzAxLDExIEBACiAiKHQuZXguIFwiZ2l0IHB1bGwgLi4uXCIpIGlubmFuIGR1IHPDpG5kZXIgaWdlbi5cbiIKICJTZSBhdnNuaXR0ZXQgXCJOb3RlIGFib3V0IGZhc3QtZm9yd2FyZHNcIiBpIFwiZ2l0IHB1c2ggLS1oZWxwXCIgZsO2ciBkZXRhbGplci4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI5MworIzogYnVpbHRpbi9wdXNoLmM6Mjk2CiBtc2dpZCAiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHRhZyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgcmVtb3RlLiIKIG1zZ3N0ciAiVXBwZGF0ZXJpbmdhcm5hIGF2dmlzYWRlcyBlZnRlcnNvbSB0YWdnZW4gcmVkYW4gZmlubnMgcMOlIGZqw6RycmVuLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mjk2CisjOiBidWlsdGluL3B1c2guYzoyOTkKIG1zZ2lkICIiCiAiWW91IGNhbm5vdCB1cGRhdGUgYSByZW1vdGUgcmVmIHRoYXQgcG9pbnRzIGF0IGEgbm9uLWNvbW1pdCBvYmplY3QsXG4iCiAib3IgdXBkYXRlIGEgcmVtb3RlIHJlZiB0byBtYWtlIGl0IHBvaW50IGF0IGEgbm9uLWNvbW1pdCBvYmplY3QsXG4iCkBAIC0xNDU5MiwyMiArMTc3MTYsOTkgQEAKICJwZWthciBww6UgbsOlZ290IHNvbSBpbnRlIMOkciBlbiBpbmNoZWNrbmluZywgdXRhbiBhdHQgYW52w6RuZGEgZmxhZ2dhblxuIgogIlwiLS1mb3JjZVwiLlxuIgogCi0jOiBidWlsdGluL3B1c2guYzozNTcKKyM6IGJ1aWx0aW4vcHVzaC5jOjM2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJQdXNoaW5nIHRvICVzXG4iCiBtc2dzdHIgIlPDpG5kZXIgdGlsbCAlc1xuIgogCi0jOiBidWlsdGluL3B1c2guYzozNjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjM2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcHVzaCBzb21lIHJlZnMgdG8gJyVzJyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHPDpG5kYSB2aXNzYSByZWZlcmVuc2VyIHRpbGwgXCIlc1wiIgogCi0jOiBidWlsdGluL3B1c2guYzozOTUKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0MgorbXNnaWQgInJlcG9zaXRvcnkiCittc2dzdHIgImFya2l2IgorCisjOiBidWlsdGluL3B1c2guYzo1NDMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjQKK21zZ2lkICJwdXNoIGFsbCByZWZzIgorbXNnc3RyICJzw6RuZCBhbGxhIHJlZmVyZW5zZXIiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0NCBidWlsdGluL3NlbmQtcGFjay5jOjE2NgorbXNnaWQgIm1pcnJvciBhbGwgcmVmcyIKK21zZ3N0ciAic3BlZ2xhIGFsbGEgcmVmZXJlbnNlciIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ2Cittc2dpZCAiZGVsZXRlIHJlZnMiCittc2dzdHIgInRhIGJvcnQgcmVmZXJlbnNlciIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ3Cittc2dpZCAicHVzaCB0YWdzIChjYW4ndCBiZSB1c2VkIHdpdGggLS1hbGwgb3IgLS1taXJyb3IpIgorbXNnc3RyICJzw6RuZCB0YWdnYXIgKGthbiBpbnRlIGFudsOkbmRhcyBtZWQgLS1hbGwgZWxsZXIgLS1taXJyb3IpIgorCisjOiBidWlsdGluL3B1c2guYzo1NTAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjcKK21zZ2lkICJmb3JjZSB1cGRhdGVzIgorbXNnc3RyICJ0dmluZ2EgdXBwZGF0ZXJpbmdhciIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgxCittc2dpZCAiPHJlZm5hbWU+OjxleHBlY3Q+IgorbXNnc3RyICI8cmVmbmFtbj46PGbDtnJ2w6RudGE+IgorCisjOiBidWlsdGluL3B1c2guYzo1NTMgYnVpbHRpbi9zZW5kLXBhY2suYzoxODIKK21zZ2lkICJyZXF1aXJlIG9sZCB2YWx1ZSBvZiByZWYgdG8gYmUgYXQgdGhpcyB2YWx1ZSIKK21zZ3N0ciAia3LDpHYgYXR0IHJlZjpzIHRpZGlnYXJlIHbDpHJkZSDDpHIgZGV0dGEiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1NgorbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIHB1c2hpbmcgb2Ygc3VibW9kdWxlcyIKK21zZ3N0ciAic3R5ciByZWt1cnNpdiBpbnPDpG5kbmluZyBhdiB1bmRlcm1vZHVsZXIiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1OCBidWlsdGluL3NlbmQtcGFjay5jOjE3NQorbXNnaWQgInVzZSB0aGluIHBhY2siCittc2dzdHIgImFudsOkbmQgdHVubmEgcGFrZXQiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1OSBidWlsdGluL3B1c2guYzo1NjAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjEKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYyCittc2dpZCAicmVjZWl2ZSBwYWNrIHByb2dyYW0iCittc2dzdHIgInByb2dyYW0gZsO2ciBhdHQgdGEgZW1vdCBwYWtldCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTYxCittc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9zdGF0dXMiCittc2dzdHIgInN0w6RsbCBpbiB1cHBzdHLDtm0gZsO2ciBnaXQgcHVsbC9zdGF0dXMiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2NAorbXNnaWQgInBydW5lIGxvY2FsbHkgcmVtb3ZlZCByZWZzIgorbXNnc3RyICJ0YSBib3J0IGxva2FsdCBib3J0dGFnbmEgcmVmZXJlbnNlciIKKworIzogYnVpbHRpbi9wdXNoLmM6NTY2Cittc2dpZCAiYnlwYXNzIHByZS1wdXNoIGhvb2siCittc2dzdHIgImbDtnJiaWfDpSBwcmUtcHVzaC1rcm9rIgorCisjOiBidWlsdGluL3B1c2guYzo1NjcKK21zZ2lkICJwdXNoIG1pc3NpbmcgYnV0IHJlbGV2YW50IHRhZ3MiCittc2dzdHIgInPDpG5kIGluIHNha25hZGUgbWVuIHJlbGV2YW50YSB0YWdnYXIiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3MCBidWlsdGluL3NlbmQtcGFjay5jOjE2OQorbXNnaWQgIkdQRyBzaWduIHRoZSBwdXNoIgorbXNnc3RyICJHUEctc2lnbmVyYSBpbnPDpG5kbmluZ2VuIgorCisjOiBidWlsdGluL3B1c2guYzo1NzIgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzYKK21zZ2lkICJyZXF1ZXN0IGF0b21pYyB0cmFuc2FjdGlvbiBvbiByZW1vdGUgc2lkZSIKK21zZ3N0ciAiYmVnw6RyIGF0b21pc2thIHRyYW5zYWt0aW9uZXIgcMOlIGZqw6RycnNpZGFuIgorCisjOiBidWlsdGluL3B1c2guYzo1OTAKK21zZ2lkICItLWRlbGV0ZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1taXJyb3IgYW5kIC0tdGFncyIKK21zZ3N0ciAiLS1kZWxldGUgw6RyIGlua29tcGF0aWJlbCBtZWQgLS1hbGwsIC0tbWlycm9yIG9jaCAtLXRhZ3MiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU5MgorbXNnaWQgIi0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSB3aXRob3V0IGFueSByZWZzIgorbXNnc3RyICItLWRlbGV0ZSBrYW4gaW50ZSBhbnbDpG5kYXMgdXRhbiByZWZlcmVuc2VyIgorCisjOiBidWlsdGluL3B1c2guYzo2MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJlcG9zaXRvcnkgJyVzJyIKIG1zZ3N0ciAiZmVsYWt0aWd0IGFya2l2IFwiJXNcIiIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mzk2CisjOiBidWlsdGluL3B1c2guYzo2MTMKIG1zZ2lkICIiCiAiTm8gY29uZmlndXJlZCBwdXNoIGRlc3RpbmF0aW9uLlxuIgogIkVpdGhlciBzcGVjaWZ5IHRoZSBVUkwgZnJvbSB0aGUgY29tbWFuZC1saW5lIG9yIGNvbmZpZ3VyZSBhIHJlbW90ZSAiCkBAIC0xNDYyOCwxMDQgKzE3ODI5LDI3IEBACiAiXG4iCiAiICAgIGdpdCBwdXNoIDxuYW1uPlxuIgogCi0jOiBidWlsdGluL3B1c2guYzo1NTEKLW1zZ2lkICJyZXBvc2l0b3J5IgotbXNnc3RyICJhcmtpdiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY0Ci1tc2dpZCAicHVzaCBhbGwgcmVmcyIKLW1zZ3N0ciAic8OkbmQgYWxsYSByZWZlcmVuc2VyIgotCi0jOiBidWlsdGluL3B1c2guYzo1NTMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjYKLW1zZ2lkICJtaXJyb3IgYWxsIHJlZnMiCi1tc2dzdHIgInNwZWdsYSBhbGxhIHJlZmVyZW5zZXIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1NQotbXNnaWQgImRlbGV0ZSByZWZzIgotbXNnc3RyICJ0YSBib3J0IHJlZmVyZW5zZXIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1NgotbXNnaWQgInB1c2ggdGFncyAoY2FuJ3QgYmUgdXNlZCB3aXRoIC0tYWxsIG9yIC0tbWlycm9yKSIKLW1zZ3N0ciAic8OkbmQgdGFnZ2FyIChrYW4gaW50ZSBhbnbDpG5kYXMgbWVkIC0tYWxsIGVsbGVyIC0tbWlycm9yKSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTU5IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY3Ci1tc2dpZCAiZm9yY2UgdXBkYXRlcyIKLW1zZ3N0ciAidHZpbmdhIHVwcGRhdGVyaW5nYXIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2MSBidWlsdGluL3NlbmQtcGFjay5jOjE4MQotbXNnaWQgIjxyZWZuYW1lPjo8ZXhwZWN0PiIKLW1zZ3N0ciAiPHJlZm5hbW4+Ojxmw7ZydsOkbnRhPiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTYyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgyCi1tc2dpZCAicmVxdWlyZSBvbGQgdmFsdWUgb2YgcmVmIHRvIGJlIGF0IHRoaXMgdmFsdWUiCi1tc2dzdHIgImtyw6R2IGF0dCByZWY6cyB0aWRpZ2FyZSB2w6RyZGUgw6RyIGRldHRhIgotCi0jOiBidWlsdGluL3B1c2guYzo1NjUKLW1zZ2lkICJjb250cm9sIHJlY3Vyc2l2ZSBwdXNoaW5nIG9mIHN1Ym1vZHVsZXMiCi1tc2dzdHIgInN0eXIgcmVrdXJzaXYgaW5zw6RuZG5pbmcgYXYgdW5kZXJtb2R1bGVyIgotCi0jOiBidWlsdGluL3B1c2guYzo1NjcgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzUKLW1zZ2lkICJ1c2UgdGhpbiBwYWNrIgotbXNnc3RyICJhbnbDpG5kIHR1bm5hIHBha2V0IgotCi0jOiBidWlsdGluL3B1c2guYzo1NjggYnVpbHRpbi9wdXNoLmM6NTY5IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYxCi0jOiBidWlsdGluL3NlbmQtcGFjay5jOjE2MgotbXNnaWQgInJlY2VpdmUgcGFjayBwcm9ncmFtIgotbXNnc3RyICJwcm9ncmFtIGbDtnIgYXR0IHRhIGVtb3QgcGFrZXQiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3MAotbXNnaWQgInNldCB1cHN0cmVhbSBmb3IgZ2l0IHB1bGwvc3RhdHVzIgotbXNnc3RyICJzdMOkbGwgaW4gdXBwc3Ryw7ZtIGbDtnIgZ2l0IHB1bGwvc3RhdHVzIgotCi0jOiBidWlsdGluL3B1c2guYzo1NzMKLW1zZ2lkICJwcnVuZSBsb2NhbGx5IHJlbW92ZWQgcmVmcyIKLW1zZ3N0ciAidGEgYm9ydCBsb2thbHQgYm9ydHRhZ25hIHJlZmVyZW5zZXIiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3NQotbXNnaWQgImJ5cGFzcyBwcmUtcHVzaCBob29rIgotbXNnc3RyICJmw7ZyYmlnw6UgcHJlLXB1c2gta3JvayIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTc2Ci1tc2dpZCAicHVzaCBtaXNzaW5nIGJ1dCByZWxldmFudCB0YWdzIgotbXNnc3RyICJzw6RuZCBpbiBzYWtuYWRlIG1lbiByZWxldmFudGEgdGFnZ2FyIgotCi0jOiBidWlsdGluL3B1c2guYzo1NzkgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjkKLW1zZ2lkICJHUEcgc2lnbiB0aGUgcHVzaCIKLW1zZ3N0ciAiR1BHLXNpZ25lcmEgaW5zw6RuZG5pbmdlbiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTgxIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc2Ci1tc2dpZCAicmVxdWVzdCBhdG9taWMgdHJhbnNhY3Rpb24gb24gcmVtb3RlIHNpZGUiCi1tc2dzdHIgImJlZ8OkciBhdG9taXNrYSB0cmFuc2FrdGlvbmVyIHDDpSBmasOkcnJzaWRhbiIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTk5Ci1tc2dpZCAiLS1kZWxldGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tbWlycm9yIGFuZCAtLXRhZ3MiCi1tc2dzdHIgIi0tZGVsZXRlIMOkciBpbmtvbXBhdGliZWwgbWVkIC0tYWxsLCAtLW1pcnJvciBvY2ggLS10YWdzIgotCi0jOiBidWlsdGluL3B1c2guYzo2MDEKLW1zZ2lkICItLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2Ugd2l0aG91dCBhbnkgcmVmcyIKLW1zZ3N0ciAiLS1kZWxldGUga2FuIGludGUgYW52w6RuZGFzIHV0YW4gcmVmZXJlbnNlciIKLQotIzogYnVpbHRpbi9wdXNoLmM6NjA0CisjOiBidWlsdGluL3B1c2guYzo2MjgKIG1zZ2lkICItLWFsbCBhbmQgLS10YWdzIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0tYWxsIG9jaCAtLXRhZ3Mgw6RyIGlua29tcGF0aWJsYSIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjA2CisjOiBidWlsdGluL3B1c2guYzo2MzAKIG1zZ2lkICItLWFsbCBjYW4ndCBiZSBjb21iaW5lZCB3aXRoIHJlZnNwZWNzIgogbXNnc3RyICItLWFsbCBrYW4gaW50ZSBrb21iaW5lcmFzIG1lZCByZWZlcmVuc3NwZWNpZmlrYXRpb25lciIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjEwCisjOiBidWlsdGluL3B1c2guYzo2MzQKIG1zZ2lkICItLW1pcnJvciBhbmQgLS10YWdzIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi0tbWlycm9yIG9jaCAtLXRhZ3Mgw6RyIGlua29tcGF0aWJsYSIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjEyCisjOiBidWlsdGluL3B1c2guYzo2MzYKIG1zZ2lkICItLW1pcnJvciBjYW4ndCBiZSBjb21iaW5lZCB3aXRoIHJlZnNwZWNzIgogbXNnc3RyICItLW1pcnJvciBrYW4gaW50ZSBrb21iaW5lcmFzIG1lZCByZWZlcmVuc3NwZWNpZmlrYXRpb25lciIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjE1CisjOiBidWlsdGluL3B1c2guYzo2MzkKIG1zZ2lkICItLWFsbCBhbmQgLS1taXJyb3IgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1hbGwgb2NoIC0tbWlycm9yIMOkciBpbmtvbXBhdGlibGEiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYzNAorIzogYnVpbHRpbi9wdXNoLmM6NjQzCiBtc2dpZCAicHVzaCBvcHRpb25zIG11c3Qgbm90IGhhdmUgbmV3IGxpbmUgY2hhcmFjdGVycyIKIG1zZ3N0ciAicHVzaC1mbGFnZ29yIGthbiBpbnRlIGlubmVow6VsbGEgcmFkYnJ5dG5pbmciCiAKQEAgLTE0NzQyLDI4ICsxNzg2NiwzNiBAQAogbXNnaWQgImdpdCByYW5nZS1kaWZmIFs8b3B0aW9ucz5dIDxiYXNlPiA8b2xkLXRpcD4gPG5ldy10aXA+IgogbXNnc3RyICJnaXQgcmFuZ2UtZGlmZiBbPGZsYWdnb3I+XSA8YmFzPiA8Z2FtbWFsLcOkbmRhPiA8bnktw6RuZGE+IgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyMQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjIKIG1zZ2lkICJQZXJjZW50YWdlIGJ5IHdoaWNoIGNyZWF0aW9uIGlzIHdlaWdodGVkIgogbXNnc3RyICJQcm9jZW50IHNvbSBza2FwZWxzZSB2w6RncyBtZWQiCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjIzCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyNAogbXNnaWQgInVzZSBzaW1wbGUgZGlmZiBjb2xvcnMiCiBtc2dzdHIgImFudsOkbmQgZW5rbGEgZGlmZi1mw6RyZ2VyIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo2MSBidWlsdGluL3JhbmdlLWRpZmYuYzo2NQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjYKK21zZ2lkICJub3RlcyIKK21zZ3N0ciAiYW50ZWNrbmluZ2FyIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyNgorbXNnaWQgInBhc3NlZCB0byAnZ2l0IGxvZyciCittc2dzdHIgInPDpG5kcyB0aWxsIFwiZ2l0IGxvZ1wiIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo1MCBidWlsdGluL3JhbmdlLWRpZmYuYzo1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyAuLiBpbiByYW5nZTogJyVzJyIKIG1zZ3N0ciAiLi4gc2FrbmFzIGkgaW50ZXJ2YWxsOiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjc1CisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo2NAogbXNnaWQgInNpbmdsZSBhcmcgZm9ybWF0IG11c3QgYmUgc3ltbWV0cmljIHJhbmdlIgogbXNnc3RyICJlbnNhbXQgYXJndW1lbnQgbcOlc3RlIHZhcmEgc3ltbWV0cmlza3QgaW50ZXJ2YWxsIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo5MAorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NzkKIG1zZ2lkICJuZWVkIHR3byBjb21taXQgcmFuZ2VzIgogbXNnc3RyICJiZWjDtnZlciB0dsOlIGluY2hlY2tuaW5nc2ludGVydmFsbCIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzo0MAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzo0MQogbXNnaWQgIiIKICJnaXQgcmVhZC10cmVlIFsoLW0gWy0tdHJpdmlhbF0gWy0tYWdncmVzc2l2ZV0gfCAtLXJlc2V0IHwgLS1wcmVmaXg9PHByZWZpeD4pICIKICJbLXUgWy0tZXhjbHVkZS1wZXItZGlyZWN0b3J5PTxnaXRpZ25vcmU+XSB8IC1pXV0gWy0tbm8tc3BhcnNlLWNoZWNrb3V0XSBbLS0iCkBAIC0xNDc3MywxMTkgKzE3OTA1LDI5NyBAQAogIlstdSBbLS1leGNsdWRlLXBlci1kaXJlY3Rvcnk9PGdpdGlnbm9yZT5dIHwgLWldXSBbLS1uby1zcGFyc2UtY2hlY2tvdXRdIFstLSIKICJpbmRleC1vdXRwdXQ9PGZpbD5dICgtLWVtcHR5IHwgPHRyw6RkLWlndDE+IFs8dHLDpGQtaWd0Mj4gWzx0csOkZC1pZ3QzPl1dKSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjMKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI0CiBtc2dpZCAid3JpdGUgcmVzdWx0aW5nIGluZGV4IHRvIDxmaWxlPiIKIG1zZ3N0ciAic2tyaXYgcmVzdWx0ZXJhbmRlIGluZGV4IHRpbGwgPGZpbD4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI2CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNwogbXNnaWQgIm9ubHkgZW1wdHkgdGhlIGluZGV4IgogbXNnc3RyICJ0w7ZtIGJhcmEgaW5kZXhldCIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjgKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI5CiBtc2dpZCAiTWVyZ2luZyIKIG1zZ3N0ciAiU2FtbWFuc2xhZ25pbmciCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMwCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMQogbXNnaWQgInBlcmZvcm0gYSBtZXJnZSBpbiBhZGRpdGlvbiB0byBhIHJlYWQiCiBtc2dzdHIgInV0ZsO2ciBlbiBzYW1tYW5zbGFnbmluZyBpIHRpbGzDpGdnIHRpbGwgZW4gbMOkc25pbmciCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMyCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMwogbXNnaWQgIjMtd2F5IG1lcmdlIGlmIG5vIGZpbGUgbGV2ZWwgbWVyZ2luZyByZXF1aXJlZCIKIG1zZ3N0ciAiMy12w6Rnc3NhbW1hbnNsYWduaW5nIG9tIHNhbW1hbnNsYWduaW5nIHDDpSBmaWxuaXbDpSBlaiBrcsOkdnMiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM0CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNQogbXNnaWQgIjMtd2F5IG1lcmdlIGluIHByZXNlbmNlIG9mIGFkZHMgYW5kIHJlbW92ZXMiCiBtc2dzdHIgIjMtdsOkZ3NzYW1tYW5zbGFnbmluZyBuw6RyIGRldCBmaW5ucyB0aWxsw6RnZyBvY2ggYm9ydHRhZ25pbmdhciIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzYKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM3CiBtc2dpZCAic2FtZSBhcyAtbSwgYnV0IGRpc2NhcmQgdW5tZXJnZWQgZW50cmllcyIKIG1zZ3N0ciAic29tIC1tLCBtZW4ga2FzdGEgYm9ydCBlaiBzYW1tYW5zbGFnbmEgcG9zdGVyIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzgKIG1zZ2lkICI8c3ViZGlyZWN0b3J5Pi8iCiBtc2dzdHIgIjx1bmRlcmthdGFsb2c+LyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzgKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM5CiBtc2dpZCAicmVhZCB0aGUgdHJlZSBpbnRvIHRoZSBpbmRleCB1bmRlciA8c3ViZGlyZWN0b3J5Pi8iCiBtc2dzdHIgImzDpHMgaW4gdHLDpGRldCBpIGluZGV4ZXQgdW5kZXIgPHVuZGVya2F0YWxvZz4vIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0MQorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDIKIG1zZ2lkICJ1cGRhdGUgd29ya2luZyB0cmVlIHdpdGggbWVyZ2UgcmVzdWx0IgogbXNnc3RyICJ1cHBkYXRlcmEgYXJiZXRza2F0YWxvZ2VuIG1lZCByZXN1bHRhdGV0IGZyw6VuIHNhbW1hbnNsYWduaW5nZW4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQzCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NAogbXNnaWQgImdpdGlnbm9yZSIKIG1zZ3N0ciAiZ2l0aWdub3JlIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDUKIG1zZ2lkICJhbGxvdyBleHBsaWNpdGx5IGlnbm9yZWQgZmlsZXMgdG8gYmUgb3ZlcndyaXR0ZW4iCiBtc2dzdHIgInRpbGzDpXQgZXhwbGljaXQgaWdub3JlcmFkZSBmaWxlciBhdHQgc2tyaXZhcyDDtnZlciIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDcKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ4CiBtc2dpZCAiZG9uJ3QgY2hlY2sgdGhlIHdvcmtpbmcgdHJlZSBhZnRlciBtZXJnaW5nIgogbXNnc3RyICJrb250cm9sbGVyYSBpbnRlIGFyYmV0c2thdGFsb2dlbiBlZnRlciBzYW1tYW5zbGFnbmluZyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDgKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ5CiBtc2dpZCAiZG9uJ3QgdXBkYXRlIHRoZSBpbmRleCBvciB0aGUgd29yayB0cmVlIgogbXNnc3RyICJ1cHBkYXRlcmEgaW50ZSBpbmRleGV0IGVsbGVyIGFyYmV0c2thdGFsb2dlbiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTAKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUxCiBtc2dpZCAic2tpcCBhcHBseWluZyBzcGFyc2UgY2hlY2tvdXQgZmlsdGVyIgogbXNnc3RyICJob3BwYSDDtnZlciBhdHQgYXBwbGljZXJhIGZpbHRlciBmw7ZyIGdsZXMgdXRjaGVja25pbmciCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUyCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MwogbXNnaWQgImRlYnVnIHVucGFjay10cmVlcyIKIG1zZ3N0ciAiZmVsc8O2ayB1bnBhY2stdHJlZXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MjkKLW1zZ2lkICIiCi0iZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPl0gWzx1cHN0cmVhbT5dICIKLSJbPGJyYW5jaD5dIgotbXNnc3RyICIiCi0iZ2l0IHJlYmFzZSBbLWldIFtmbGFnZ29yXSBbLS1leGVjIDxrbWQ+XSBbLS1vbnRvIDxueWJhcz5dIFs8dXBwc3Ryw7ZtPl0gIgotIls8Z3Jlbj5dIgorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTcKK21zZ2lkICJzdXBwcmVzcyBmZWVkYmFjayBtZXNzYWdlcyIKK21zZ3N0ciAidW5kZXJ0cnljayDDpXRlcmtvcHBsaW5nc21lZGRlbGFuZGVuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjMxCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE4OAorbXNnaWQgIllvdSBuZWVkIHRvIHJlc29sdmUgeW91ciBjdXJyZW50IGluZGV4IGZpcnN0IgorbXNnc3RyICJEdSBtw6VzdGUgbMO2c2EgZGl0dCBiZWZpbnRsaWdhIGluZGV4IGbDtnJzdCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozMgorbXNnaWQgIiIKKyJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+IHwgLS1rZWVwLWJhc2VdICIKKyJbPHVwc3RyZWFtPiBbPGJyYW5jaD5dXSIKK21zZ3N0ciAiIgorImdpdCByZWJhc2UgWy1pXSBbZmxhZ2dvcl0gWy0tZXhlYyA8a21kPl0gWy0tb250byA8bnliYXM+IHwgLS1rZWVwLWJhc2VdICIKKyJbPHVwcHN0csO2bT4gWzxncmVuPl1dIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM0CiBtc2dpZCAiIgogImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dIC0tcm9vdCBbPGJyYW5jaD5dIgogbXNnc3RyICIiCiAiZ2l0IHJlYmFzZSBbLWldIFtmbGFnZ29yXSBbLS1leGVjIDxrbWQ+XSBbLS1vbnRvIDxueWJhcz5dIC0tcm9vdCBbPGdyZW4+XSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzozMworIzogYnVpbHRpbi9yZWJhc2UuYzozNgogbXNnaWQgImdpdCByZWJhc2UgLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXAgfCAtLWVkaXQtdG9kbyIKIG1zZ3N0ciAiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIHwgLS1hYm9ydCB8IC0tc2tpcCB8IC0tZWRpdC10b2RvIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExOQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNzUgYnVpbHRpbi9yZWJhc2UuYzoxOTkgYnVpbHRpbi9yZWJhc2UuYzoyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW51c2FibGUgdG9kbyBsaXN0OiAnJXMnIgorbXNnc3RyICJvYW52w6RuZGJhciB0b2RvLWxpc3RhOiAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJXMiCittc2dzdHIgImt1bmRlIGludGUgc2thcGEgdGVtcG9yw6RyICVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjI5OAorbXNnaWQgImNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgorbXNnc3RyICJrdW5kZSBpbnRlIG1hcmtlcmEgc29tIGludGVyYWt0aXYiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzUyCittc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIHRvZG8gbGlzdCIKK21zZ3N0ciAiS3VuZGUgaW50ZSBza2FwYSBhdHRnw7ZyYS1saXN0YSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozOTEKK21zZ2lkICJhIGJhc2UgY29tbWl0IG11c3QgYmUgcHJvdmlkZWQgd2l0aCAtLXVwc3RyZWFtIG9yIC0tb250byIKK21zZ3N0ciAiZW4gYmFzaW5jaGVja25pbmcgbcOlc3RlIGFuZ2VzIG1lZCAtLXVwc3RyZWFtIGVsbGVyIC0tb250byIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NjEKK21zZ2lkICJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxmbGFnZ29yPl0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDc0IGJ1aWx0aW4vcmViYXNlLmM6MTU1MAorbXNnaWQgIihERVBSRUNBVEVEKSBrZWVwIGVtcHR5IGNvbW1pdHMiCittc2dzdHIgIihGw5ZSw4VMRFJBRCkgYmVow6VsbCB0b21tYSBpbmNoZWNrbmluZ2FyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ3OCBidWlsdGluL3JldmVydC5jOjEyOAorbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKK21zZ3N0ciAidGlsbMOldCBpbmNoZWNrbmluZ2FyIG1lZCB0b210IG1lZGRlbGFuZGUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDgwCittc2dpZCAicmViYXNlIG1lcmdlIGNvbW1pdHMiCittc2dzdHIgIm9tYmFzZXJhIHNhbW1hbnNsYWduaW5nYXIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDgyCittc2dpZCAia2VlcCBvcmlnaW5hbCBicmFuY2ggcG9pbnRzIG9mIGNvdXNpbnMiCittc2dzdHIgImJlaMOlbGwgdXJzcHJ1bmdsaWdhIGbDtnJncmVuaW5nc3B1bmt0ZXIgZsO2ciBrdXNpbmVyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4NAorbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEiCittc2dzdHIgImZseXR0YSBpbmNoZWNrbmluZ2FyIHNvbSBpbmxlZHMgbWVkIHNxdWFzaCEvZml4dXAhIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4NQorbXNnaWQgInNpZ24gY29tbWl0cyIKK21zZ3N0ciAic2lnbmVyYSBpbmNoZWNrbmluZ2FyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4NyBidWlsdGluL3JlYmFzZS5jOjE0OTAKK21zZ2lkICJkaXNwbGF5IGEgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtIgorbXNnc3RyICJ2aXMgZGlmZnN0YXQgZsO2ciB2YWQgc29tIMOkbmRyYXRzIHVwcHN0csO2bXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg5Cittc2dpZCAiY29udGludWUgcmViYXNlIgorbXNnc3RyICJmb3J0c8OkdHQgb21iYXNlcmluZyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTEKK21zZ2lkICJza2lwIGNvbW1pdCIKK21zZ3N0ciAiaG9wcGEgw7Z2ZXIgaW5jaGVja25pbmciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDkyCittc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICJyZWRpZ2VyYSBhdHRnw7ZyYS1saXN0YW4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk0Cittc2dpZCAic2hvdyB0aGUgY3VycmVudCBwYXRjaCIKK21zZ3N0ciAidmlzYSBudXZhcmFuZGUgcGF0Y2giCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk3Cittc2dpZCAic2hvcnRlbiBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCittc2dzdHIgImbDtnJrb3J0YSBpbmNoZWNrbmluZ3MtaWQgaSB0b2RvLWxpc3RhbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTkKK21zZ2lkICJleHBhbmQgY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICJ1dMO2a2EgaW5jaGVja25pbmdzLWlkIGkgdG9kby1saXN0YW4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAxCittc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAia29udHJvbGxlcmEgdG9kby1saXN0YW4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAzCittc2dpZCAicmVhcnJhbmdlIGZpeHVwL3NxdWFzaCBsaW5lcyIKK21zZ3N0ciAib3JkbmEgb20gZml4dXAtL3NxdWFzaC1yYWRlciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDUKK21zZ2lkICJpbnNlcnQgZXhlYyBjb21tYW5kcyBpbiB0b2RvIGxpc3QiCittc2dzdHIgImzDpGdnIGluIGV4ZWMta29tbWFuZG9uIGkgdG9kby1saXN0YW4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTA2Cittc2dpZCAib250byIKK21zZ3N0ciAib3ZhbnDDpSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDkKK21zZ2lkICJyZXN0cmljdC1yZXZpc2lvbiIKK21zZ3N0ciAicmVzdHJpY3QtcmV2aXNpb24iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTA5Cittc2dpZCAicmVzdHJpY3QgcmV2aXNpb24iCittc2dzdHIgImJlZ3LDpG5zYSByZXZpc2lvbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTEKK21zZ2lkICJzcXVhc2gtb250byIKK21zZ3N0ciAic3F1YXNoLW9udG8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTEyCittc2dpZCAic3F1YXNoIG9udG8iCittc2dzdHIgInRyeWNrIGlob3Agb3ZhbnDDpSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTQKK21zZ2lkICJ0aGUgdXBzdHJlYW0gY29tbWl0IgorbXNnc3RyICJ1cHBzdHLDtm1zaW5jaGVja25pbmdlbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTYKK21zZ2lkICJoZWFkLW5hbWUiCittc2dzdHIgImhlYWQtbmFtZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTYKK21zZ2lkICJoZWFkIG5hbWUiCittc2dzdHIgIm5hbW4gcMOlIGh1dnVkIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyMQorbXNnaWQgInJlYmFzZSBzdHJhdGVneSIKK21zZ3N0ciAic2FtbWFuc2xhZ25pbmdzc3RyYXRlZ2kiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTIyCittc2dpZCAic3RyYXRlZ3ktb3B0cyIKK21zZ3N0ciAic3RyYXRlZ3ktb3B0cyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjMKK21zZ2lkICJzdHJhdGVneSBvcHRpb25zIgorbXNnc3RyICJzdHJhdGVnaWZsYWdnb3IiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI0Cittc2dpZCAic3dpdGNoLXRvIgorbXNnc3RyICJzd2l0Y2gtdG8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI1Cittc2dpZCAidGhlIGJyYW5jaCBvciBjb21taXQgdG8gY2hlY2tvdXQiCittc2dzdHIgImdyZW4gZWxsZXIgaW5jaGVja2luZyBhdHQgY2hlY2thIHV0IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNgorbXNnaWQgIm9udG8tbmFtZSIKK21zZ3N0ciAib250by1uYW1lIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNgorbXNnaWQgIm9udG8gbmFtZSIKK21zZ3N0ciAicMOlLW5hbW4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI3Cittc2dpZCAiY21kIgorbXNnc3RyICJrbWQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI3Cittc2dpZCAidGhlIGNvbW1hbmQgdG8gcnVuIgorbXNnc3RyICJrb21tYW5kbyBhdHQga8O2cmEiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTMwIGJ1aWx0aW4vcmViYXNlLmM6MTU4NAorbXNnaWQgImF1dG9tYXRpY2FsbHkgcmUtc2NoZWR1bGUgYW55IGBleGVjYCB0aGF0IGZhaWxzIgorbXNnc3RyICJrw7ZyIGF1dG9tYXRpc2t0IGFsbGEgXCJleGVjXCIgc29tIG1pc3NseWNrYXMgcMOlIG55dHQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTQ2Cittc2dpZCAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIGhhcyBubyBlZmZlY3Qgd2l0aG91dCAtLXJlYmFzZS1tZXJnZXMiCittc2dzdHIgIi0tW25vLV1yZWJhc2UtY291c2lucyBoYXIgaW5nZW4gZWZmZWt0IHV0YW4gLS1yZWJhc2UtbWVyZ2VzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjU2MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyByZXF1aXJlcyBhbiBpbnRlcmFjdGl2ZSByZWJhc2UiCiBtc2dzdHIgIiVzIGtyw6R2ZXIgZW4gaW50ZXJha3RpdiBvbWJhc2VyaW5nIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE3MQorIzogYnVpbHRpbi9yZWJhc2UuYzo2MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCAnb250byc6ICclcyciCiBtc2dzdHIgImt1bmRlIGludGUgaMOkbXRhIFwib250b1wiOiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTg2CisjOiBidWlsdGluL3JlYmFzZS5jOjYyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9yaWctaGVhZDogJyVzJyIKIG1zZ3N0ciAib2dpbHRpZ3Qgb3JpZy1oZWFkOiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MjE0CisjOiBidWlsdGluL3JlYmFzZS5jOjY1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyBpbnZhbGlkIGFsbG93X3JlcmVyZV9hdXRvdXBkYXRlOiAnJXMnIgogbXNnc3RyICJpZ25vcmVyYSBvZ2lsdGlndCBhbGxvd19yZXJlcmVfYXV0b3VwZGF0ZTogXCIlc1wiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjI1OQorIzogYnVpbHRpbi9yZWJhc2UuYzo3MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlYWQgJyVzJyIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBsw6RzYSBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6Mjc3CisjOiBidWlsdGluL3JlYmFzZS5jOjc0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgc3RvcmUgJXMiCiBtc2dzdHIgIkthbiBpbnRlIHNwYXJhICVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjMzNworIzogYnVpbHRpbi9yZWJhc2UuYzo4NTMKK21zZ2lkICJjb3VsZCBub3QgZGV0ZXJtaW5lIEhFQUQgcmV2aXNpb24iCittc2dzdHIgImt1bmRlIGludGUgYmVzdMOkbW1hIEhFQUQtcmV2aXNpb24iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6OTc2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MQogbXNnaWQgIiIKICJSZXNvbHZlIGFsbCBjb25mbGljdHMgbWFudWFsbHksIG1hcmsgdGhlbSBhcyByZXNvbHZlZCB3aXRoXG4iCiAiXCJnaXQgYWRkL3JtIDxjb25mbGljdGVkX2ZpbGVzPlwiLCB0aGVuIHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiLlxuIgpAQCAtMTQ4OTksMTEgKzE4MjA5LDM0IEBACiAiRsO2ciBhdHQgYXZicnl0YSBvY2ggw6V0ZXJnw6UgdGlsbCBkw6RyIGR1IHZhciBmw7ZyZSBvbWJhc2VyaW5nZW4sIGvDtnIgXCJnaXQgIgogInJlYmFzZSAtLWFib3J0XCIuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjU2MQotbXNnaWQgImNvdWxkIG5vdCBkZXRlcm1pbmUgSEVBRCByZXZpc2lvbiIKLW1zZ3N0ciAia3VuZGUgaW50ZSBiZXN0w6RtbWEgSEVBRC1yZXZpc2lvbiIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiZ2l0IGVuY291bnRlcmVkIGFuIGVycm9yIHdoaWxlIHByZXBhcmluZyB0aGUgcGF0Y2hlcyB0byByZXBsYXlcbiIKKyJ0aGVzZSByZXZpc2lvbnM6XG4iCisiXG4iCisiICAgICVzXG4iCisiXG4iCisiQXMgYSByZXN1bHQsIGdpdCBjYW5ub3QgcmViYXNlIHRoZW0uIgorbXNnc3RyICIiCisiXG4iCisiZ2l0IHVwcHTDpGNrdGUgZXR0IGZlbCBuw6RyIGRldCBza3VsbGUgZsO2cmJlcmVkYSBwYXRjaGFyIGbDtnIgYXR0XG4iCisiw6V0ZXJza2FwYSBkZXNzYSByZXZpc2lvbmVyOlxuIgorIlxuIgorIiAgICAlc1xuIgorIlxuIgorIkTDpHJmw7ZyIGthbiBpbnRlIGdpdCBvbWJhc2VyYSBkZXNzYS4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6NzUzCisjOiBidWlsdGluL3JlYmFzZS5jOjEzODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVucmVjb2duaXplZCBlbXB0eSB0eXBlICclcyc7IHZhbGlkIHZhbHVlcyBhcmUgXCJkcm9wXCIsIFwia2VlcFwiLCBhbmQgXCJhc2siCisiXCIuIgorbXNnc3RyICIiCisib2vDpG5kIHRvbS10eXAgXCIlc1wiOyBnaWx0aWdhIHbDpHJkZW4gw6RyIFwiZHJvcFwiLCBcImtlZXBcIiBvY2ggXCJhc2tcIi4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJXNcbiIKQEAgLTE0OTIwLDcgKzE4MjUzLDcgQEAKICIgICAgZ2l0IHJlYmFzZSAnPGdyZW4+J1xuIgogIlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjc2OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJZiB5b3Ugd2lzaCB0byBzZXQgdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoaXMgYnJhbmNoIHlvdSBjYW4gZG8gc28gd2l0aDpcbiIKQEAgLTE0OTMzLDE0OCArMTgyNjYsMTc0IEBACiAiICAgIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMvPGdyZW4+ICVzXG4iCiAiXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODMyCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NDcKK21zZ2lkICJleGVjIGNvbW1hbmRzIGNhbm5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJleGVjLWtvbW1hbmRvbiBrYW4gaW50ZSBpbm5laMOlbGxhIG55cmFkc3RlY2tlbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDUxCittc2dpZCAiZW1wdHkgZXhlYyBjb21tYW5kIgorbXNnc3RyICJ0b210IGV4ZWMta29tbWFuZG8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MQogbXNnaWQgInJlYmFzZSBvbnRvIGdpdmVuIGJyYW5jaCBpbnN0ZWFkIG9mIHVwc3RyZWFtIgogbXNnc3RyICJvbWJhc2VyYSBtb3QgZ2l2ZW4gZ3JlbmVuIGlzdMOkbGxldCBmw7ZyIHVwcHN0csO2bSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MworbXNnaWQgInVzZSB0aGUgbWVyZ2UtYmFzZSBvZiB1cHN0cmVhbSBhbmQgYnJhbmNoIGFzIHRoZSBjdXJyZW50IGJhc2UiCittc2dzdHIgImFudsOkbmQgc2FtbWFuc2xhZ25pbmdzYmFzZW4gbWVsbGFuIHVwcHN0csO2bXMgb2NoIGdyZW4gc29tIGFrdHVlbGwgYmFzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODUKIG1zZ2lkICJhbGxvdyBwcmUtcmViYXNlIGhvb2sgdG8gcnVuIgogbXNnc3RyICJ0aWxsw6V0IHByZS1yZWJhc2Uta3JvayBhdHQga8O2cmEiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODM2CisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODcKIG1zZ2lkICJiZSBxdWlldC4gaW1wbGllcyAtLW5vLXN0YXQiCiBtc2dzdHIgInZhciB0eXN0LiBpbXBsaWNlcmFyIC0tbm8tc3RhdCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzkKLW1zZ2lkICJkaXNwbGF5IGEgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtIgotbXNnc3RyICJ2aXMgZGlmZnN0YXQgZsO2ciB2YWQgc29tIMOkbmRyYXRzIHVwcHN0csO2bXMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODQyCisjOiBidWlsdGluL3JlYmFzZS5jOjE0OTMKIG1zZ2lkICJkbyBub3Qgc2hvdyBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCiBtc2dzdHIgInZpc2EgaW50ZSBlbiBkaWZmc3RhdCBmw7ZyIHZhZCBzb20gw6RuZHJhdHMgdXBwc3Ryw7ZtcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NDUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5NgogbXNnaWQgImFkZCBhIFNpZ25lZC1vZmYtYnk6IGxpbmUgdG8gZWFjaCBjb21taXQiCiBtc2dzdHIgImzDpGdnIFwiU2lnbmVkLW9mZi1ieTpcIi1yYWQgdGlsbCB2YXJqZSBpbmNoZWNrbmluZyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NDcgYnVpbHRpbi9yZWJhc2UuYzo4NTEgYnVpbHRpbi9yZWJhc2UuYzo4NTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5OCBidWlsdGluL3JlYmFzZS5jOjE1MDIgYnVpbHRpbi9yZWJhc2UuYzoxNTA0CiBtc2dpZCAicGFzc2VkIHRvICdnaXQgYW0nIgogbXNnc3RyICJzw6RuZHMgdGlsbCBcImdpdCBhbVwiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg1NSBidWlsdGluL3JlYmFzZS5jOjg1NworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTA2IGJ1aWx0aW4vcmViYXNlLmM6MTUwOAogbXNnaWQgInBhc3NlZCB0byAnZ2l0IGFwcGx5JyIKIG1zZ3N0ciAic8OkbmRzIHRpbGwgXCJnaXQgYXBwbHlcIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NTkgYnVpbHRpbi9yZWJhc2UuYzo4NjIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxMCBidWlsdGluL3JlYmFzZS5jOjE1MTMKIG1zZ2lkICJjaGVycnktcGljayBhbGwgY29tbWl0cywgZXZlbiBpZiB1bmNoYW5nZWQiCiBtc2dzdHIgInV0ZsO2ciBjaGVycnktcGljayBww6UgYWxsYSBpbmNoZWNrbmluZ2FyLCDDpHZlbiBvbSBvw6RuZHJhZCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NjQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxNQogbXNnaWQgImNvbnRpbnVlIgogbXNnc3RyICJmb3J0c8OkdHQiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODY3CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MTgKIG1zZ2lkICJza2lwIGN1cnJlbnQgcGF0Y2ggYW5kIGNvbnRpbnVlIgogbXNnc3RyICJob3BwYSDDtnZlciBudXZhcmFuZGUgcGF0Y2ggb2NoIGZvcnRzw6R0dCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NjkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyMAogbXNnaWQgImFib3J0IGFuZCBjaGVjayBvdXQgdGhlIG9yaWdpbmFsIGJyYW5jaCIKIG1zZ3N0ciAiYXZicnl0IG9jaCBjaGVja2EgdXQgdXJzcHJ1bmdzZ3JlbmVuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTIzCiBtc2dpZCAiYWJvcnQgYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcyIKIG1zZ3N0ciAiYXZicnl0IG1lbiBiZWjDpWxsIEhFQUQgZMOkciBkZXQgw6RyIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3MworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTI0CiBtc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IGR1cmluZyBhbiBpbnRlcmFjdGl2ZSByZWJhc2UiCiBtc2dzdHIgInJlZGlnZXJhIGF0dGfDtnJhLWxpc3RhbiB1bmRlciBpbnRlcmFrdGl2IG9tYmFzZXJpbmcuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3NgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTI3CiBtc2dpZCAic2hvdyB0aGUgcGF0Y2ggZmlsZSBiZWluZyBhcHBsaWVkIG9yIG1lcmdlZCIKIG1zZ3N0ciAidmlzYSBwYXRjaGVuIHNvbSB0aWxsw6RtcGFzIGVsbGVyIHNsw6VzIHNhbW1hbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzkKLW1zZ2lkICJ1c2UgbWVyZ2luZyBzdHJhdGVnaWVzIHRvIHJlYmFzZSIKLW1zZ3N0ciAiYW52w6RuZCBzYW1tYW5zbGFnbmluZ3NzdHJhdGVnaWVyIGbDtnIgc2FtbWFuc2xhZ25pbmciCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzAKK21zZ2lkICJ1c2UgYXBwbHkgc3RyYXRlZ2llcyB0byByZWJhc2UiCittc2dzdHIgImFudsOkbmQgYXBwbGljZXJpbmdzdHJhdGVnaWVyIGbDtnIgb21iYXNlcmluZyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4ODMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUzNAorbXNnaWQgInVzZSBtZXJnaW5nIHN0cmF0ZWdpZXMgdG8gcmViYXNlIgorbXNnc3RyICJhbnbDpG5kIHNhbW1hbnNsYWduaW5nc3N0cmF0ZWdpZXIgZsO2ciBvbWJhc2VyaW5nIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzgKIG1zZ2lkICJsZXQgdGhlIHVzZXIgZWRpdCB0aGUgbGlzdCBvZiBjb21taXRzIHRvIHJlYmFzZSIKIG1zZ3N0ciAibMOldCBhbnbDpG5kYXJlbiByZWRpZ2VyYSBsaXN0YW4gw7Z2ZXIgaW5jaGVja25pbmdhciBhdHQgb21iYXNlcmEiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODg3Ci1tc2dpZCAidHJ5IHRvIHJlY3JlYXRlIG1lcmdlcyBpbnN0ZWFkIG9mIGlnbm9yaW5nIHRoZW0iCi1tc2dzdHIgImbDtnJzw7ZrIMOldGVyc2thcGEgc2FtbWFuc2xhZ25pbmdhciBpc3TDpGxsZXQgZsO2ciBhdHQgaWdub3JlcmEgZGVtIgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTQyCittc2dpZCAiKERFUFJFQ0FURUQpIHRyeSB0byByZWNyZWF0ZSBtZXJnZXMgaW5zdGVhZCBvZiBpZ25vcmluZyB0aGVtIgorbXNnc3RyICIiCisiKEFWUsOFRFMpIGbDtnJzw7ZrIMOldGVyc2thcGEgc2FtbWFuc2xhZ25pbmdhciBpc3TDpGxsZXQgZsO2ciBhdHQgaWdub3JlcmEgZGVtIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg5MQotbXNnaWQgImFsbG93IHJlcmVyZSB0byB1cGRhdGUgaW5kZXggd2l0aCByZXNvbHZlZCBjb25mbGljdCIKLW1zZ3N0ciAidGlsbMOldCByZXJlcmUgYXR0IHVwcGRhdGVyYSBpbmRleCBtZWQgbMO2c2Ega29uZmxpa3RlciIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU0NworbXNnaWQgImhvdyB0byBoYW5kbGUgY29tbWl0cyB0aGF0IGJlY29tZSBlbXB0eSIKK21zZ3N0ciAiaHVyIGluY2hlY2tuaW5nYXIgc29tIGJsaXIgdG9tbWEgc2thIGhhbnRlcmFzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg5NAotbXNnaWQgInByZXNlcnZlIGVtcHR5IGNvbW1pdHMgZHVyaW5nIHJlYmFzZSIKLW1zZ3N0ciAiYmVow6VsbCB0b21tYSBpbmNoZWNrbmluZ2FyIHVuZGVyIG9tYmFzZXJpbmciCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODk2CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NTQKIG1zZ2lkICJtb3ZlIGNvbW1pdHMgdGhhdCBiZWdpbiB3aXRoIHNxdWFzaCEvZml4dXAhIHVuZGVyIC1pIgogbXNnc3RyICJmbHl0dGEgaW5jaGVja25pbmdhciBzb20gYsO2cmphciBtZWQgc3F1YXNoIS9maXh1cCEgdW5kZXIgLWkiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTAyCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjAKIG1zZ2lkICJhdXRvbWF0aWNhbGx5IHN0YXNoL3N0YXNoIHBvcCBiZWZvcmUgYW5kIGFmdGVyIgogbXNnc3RyICJ1dGbDtnIgYXV0b21hdGlza3Qgc3Rhc2gvc3Rhc2ggcG9wIGbDtnJlIG9jaCBlZnRlciIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MDQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU2MgogbXNnaWQgImFkZCBleGVjIGxpbmVzIGFmdGVyIGVhY2ggY29tbWl0IG9mIHRoZSBlZGl0YWJsZSBsaXN0IgogbXNnc3RyICJsw6RnZyB0aWxsIGV4ZWMtcmFkZXIgZWZ0ZXIgdmFyamUgaW5jaGVja25pbmcgaSBkZW4gcmVkaWdlcmJhcmEgbGlzdGFuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkwOAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTY2CiBtc2dpZCAiYWxsb3cgcmViYXNpbmcgY29tbWl0cyB3aXRoIGVtcHR5IG1lc3NhZ2VzIgogbXNnc3RyICJ0aWxsw6V0IG9tYmFzZXJpbmcgYXYgaW5jaGVja25pbmdhciBtZWQgdG9tdCBtZWRkZWxhbmRlIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxMQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTcwCiBtc2dpZCAidHJ5IHRvIHJlYmFzZSBtZXJnZXMgaW5zdGVhZCBvZiBza2lwcGluZyB0aGVtIgogbXNnc3RyICJmw7Zyc8O2ayBvbWJhc2VyYSBzYW1tYW5zbGFnbmluZ2FyIGlzdMOkbGxldCBmw7ZyIGF0dCBpZ25vcmVyYSBkZW0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTE0CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzMKIG1zZ2lkICJ1c2UgJ21lcmdlLWJhc2UgLS1mb3JrLXBvaW50JyB0byByZWZpbmUgdXBzdHJlYW0iCiBtc2dzdHIgImFudsOkbmQgXCJtZXJnZS1iYXNlIC0tZm9yay1wb2ludFwiIGbDtnIgYXR0IGbDtnJmaW5hIHVwcHN0csO2bSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3NQogbXNnaWQgInVzZSB0aGUgZ2l2ZW4gbWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgImFudsOkbmQgYW5naXZlbiBzYW1tYW5zbGFnbmluZ3NzdHJhdGVnaSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTggYnVpbHRpbi9yZXZlcnQuYzoxMTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3NyBidWlsdGluL3JldmVydC5jOjExNQogbXNnaWQgIm9wdGlvbiIKIG1zZ3N0ciAiYWx0ZXJuYXRpdiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3OAogbXNnaWQgInBhc3MgdGhlIGFyZ3VtZW50IHRocm91Z2ggdG8gdGhlIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICJzw6RuZCBmbGFnZ2FuIHRpbGwgc2FtbWFuc2xhZ25pbmdzc3RyYXRlZ2luIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkyMgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTgxCiBtc2dpZCAicmViYXNlIGFsbCByZWFjaGFibGUgY29tbWl0cyB1cCB0byB0aGUgcm9vdChzKSIKIG1zZ3N0ciAib21iYXNlcmEgYWxsYSBuw6ViYXJhIGluY2hlY2tuaW5nYXIgdXBwIHRpbGwgcm90ZW4vcsO2dHRlcm5hIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkzOAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgZXhlYyAlcyIKLW1zZ3N0ciAia3VuZGUgaW50ZSBrw7ZyYSAlcyIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU5OAorbXNnaWQgIiIKKyJ0aGUgcmViYXNlLnVzZUJ1aWx0aW4gc3VwcG9ydCBoYXMgYmVlbiByZW1vdmVkIVxuIgorIlNlZSBpdHMgZW50cnkgaW4gJ2dpdCBoZWxwIGNvbmZpZycgZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisic3TDtmRldCBmw7ZyIHJlYmFzZS51c2VCdWlsdGluIGhhciB0YWdpdHMgYm9ydCFcbiIKKyJTZSBwb3N0ZW4gZsO2ciBkZXQgaSBcImdpdCBoZWxwIGNvbmZpZ1wiIGbDtnIgZGV0YWxqZXIuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjk1NiBnaXQtbGVnYWN5LXJlYmFzZS5zaDoyMTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTYwNAogbXNnaWQgIkl0IGxvb2tzIGxpa2UgJ2dpdCBhbScgaXMgaW4gcHJvZ3Jlc3MuIENhbm5vdCByZWJhc2UuIgogbXNnc3RyICJEZXQgdmVya2FyIHNvbSBlbiBcImdpdCBhbVwiIGvDtnJzLiBLYW4gaW50ZSBvbWJhc2VyYS4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTk3IGdpdC1sZWdhY3ktcmViYXNlLnNoOjM5NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjQ1Cittc2dpZCAiIgorImdpdCByZWJhc2UgLS1wcmVzZXJ2ZS1tZXJnZXMgaXMgZGVwcmVjYXRlZC4gVXNlIC0tcmViYXNlLW1lcmdlcyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorImdpdCByZWJhc2UgLS1wcmVzZXJ2ZS1tZXJnZXMgYXZyw6VkcyBmcsOlbi4gQW52w6RuZCAtLXJlYmFzZS1tZXJnZXMgaXN0w6RsbGV0LiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjUwCittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0ta2VlcC1iYXNlJyB3aXRoICctLW9udG8nIgorbXNnc3RyICJrYW4gaW50ZSBrb21iaW5lcmEgXCItLWtlZXAtYmFzZVwiIG1lZCBcIi0tb250b1wiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NTIKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1rZWVwLWJhc2UnIHdpdGggJy0tcm9vdCciCittc2dzdHIgImthbiBpbnRlIGtvbWJpbmVyYSBcIi0ta2VlcC1iYXNlXCIgbWVkIFwiLS1yb290XCIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1NgogbXNnaWQgIk5vIHJlYmFzZSBpbiBwcm9ncmVzcz8iCiBtc2dzdHIgIkluZ2VuIG9tYmFzZXJpbmcgcMOlZ8Olcj8iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTAwMSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MDYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY2MAogbXNnaWQgIlRoZSAtLWVkaXQtdG9kbyBhY3Rpb24gY2FuIG9ubHkgYmUgdXNlZCBkdXJpbmcgaW50ZXJhY3RpdmUgcmViYXNlLiIKIG1zZ3N0ciAiw4V0Z8OkcmRlbiAtLWVkaXQtdG9kbyBrYW4gZW5kYXN0IGFudsOkbmRhcyB1bmRlciBpbnRlcmFrdGl2IG9tYmFzZXJpbmcuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwMTUgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDEzCisjOiBidWlsdGluL3JlYmFzZS5jOjE2ODMKIG1zZ2lkICJDYW5ub3QgcmVhZCBIRUFEIgogbXNnc3RyICJLYW4gaW50ZSBsw6RzYSBIRUFEIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwMjggZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDE2CisjOiBidWlsdGluL3JlYmFzZS5jOjE2OTUKIG1zZ2lkICIiCiAiWW91IG11c3QgZWRpdCBhbGwgbWVyZ2UgY29uZmxpY3RzIGFuZCB0aGVuXG4iCiAibWFyayB0aGVtIGFzIHJlc29sdmVkIHVzaW5nIGdpdCBhZGQiCkBAIC0xNTA4MiwyMSArMTg0NDEsMTYgQEAKICJEdSBtw6VzdGUgcmVkaWdlcmEgYWxsYSBzYW1tYW5zbGFnbmluZ3Nrb25mbGlrdGVyIG9jaFxuIgogImTDpHJlZnRlciBtYXJrZXJhIGRlbSBzb20gbMO2c3RhIG1lZCBnaXQgYWRkIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwNDcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTcxNAogbXNnaWQgImNvdWxkIG5vdCBkaXNjYXJkIHdvcmt0cmVlIGNoYW5nZXMiCiBtc2dzdHIgImt1bmRlIGludGUga2FzdGEgw6RuZHJpbmdhciBpIGFyYmV0c2thdGFsb2dlbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDY2CisjOiBidWlsdGluL3JlYmFzZS5jOjE3MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG1vdmUgYmFjayB0byAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBmbHl0dGEgdGlsbGJha2EgdGlsbCAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDc3IGJ1aWx0aW4vcm0uYzozNjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IHJlbW92ZSAnJXMnIgotbXNnc3RyICJrdW5kZSBpbnRlIHRhIGJvcnQgXCIlc1wiIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjExMDMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTc3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSXQgc2VlbXMgdGhhdCB0aGVyZSBpcyBhbHJlYWR5IGEgJXMgZGlyZWN0b3J5LCBhbmRcbiIKQEAgLTE1MTE3LDM0MiArMTg0NzEsMTY2IEBACiAib2NoIGvDtnIgcHJvZ3JhbW1ldCBpZ2VuLiBKYWcgYXZzbHV0YXIgaWZhbGwgZHUgZm9ydGZhcmFuZGUgaGFyXG4iCiAibsOlZ290IGF2IHbDpHJkZSBkw6RyLlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExMjQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTgwNgogbXNnaWQgInN3aXRjaCBgQycgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKIG1zZ3N0ciAiZmxhZ2dhbiBcIkNcIiBmw7ZydsOkbnRhciBldHQgbnVtZXJpc2t0IHbDpHJkZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTYxCisjOiBidWlsdGluL3JlYmFzZS5jOjE4NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biBtb2RlOiAlcyIKIG1zZ3N0ciAiT2vDpG50IGzDpGdlOiAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTgzCisjOiBidWlsdGluL3JlYmFzZS5jOjE4NjkKIG1zZ2lkICItLXN0cmF0ZWd5IHJlcXVpcmVzIC0tbWVyZ2Ugb3IgLS1pbnRlcmFjdGl2ZSIKIG1zZ3N0ciAiLS1zdHJhdGVneSBrcsOkdmVyIC0tbWVyZ2UgZWxsZXIgLS1pbnRlcmFjdGl2ZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjI2CisjOiBidWlsdGluL3JlYmFzZS5jOjE4OTkKK21zZ2lkICJjYW5ub3QgY29tYmluZSBhcHBseSBvcHRpb25zIHdpdGggbWVyZ2Ugb3B0aW9ucyIKK21zZ3N0ciAia2FuIGludGUga29tYmluZXJhIGFwcGx5LWZsYWdnb3IgbWVkIG1lcmdlLWZsYWdnb3IiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTkxMgogIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHJlYmFzZSBiYWNrZW5kOiAlcyIKK21zZ3N0ciAiT2vDpG5kIHJlYmFzZS1iYWvDpG5kYTogJXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTkzNworbXNnaWQgIi0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyByZXF1aXJlcyAtLWV4ZWMgb3IgLS1pbnRlcmFjdGl2ZSIKK21zZ3N0ciAiLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjIGtyw6R2ZXIgLS1leGVjIGVsbGVyIC0taW50ZXJhY3RpdmUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk1NworbXNnaWQgImNhbm5vdCBjb21iaW5lICctLXByZXNlcnZlLW1lcmdlcycgd2l0aCAnLS1yZWJhc2UtbWVyZ2VzJyIKK21zZ3N0ciAia2FuIGludGUga29tYmluZXJhIFwiLS1wcmVzZXJ2ZS1tZXJnZXNcIiBtZWQgXCItLXJlYmFzZS1tZXJnZXNcIiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTYxCiBtc2dpZCAiIgotImVycm9yOiBjYW5ub3QgY29tYmluZSBpbnRlcmFjdGl2ZSBvcHRpb25zICgtLWludGVyYWN0aXZlLCAtLWV4ZWMsIC0tcmViYXNlLSIKLSJtZXJnZXMsIC0tcHJlc2VydmUtbWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250bykgd2l0aCBhbSBvcHRpb25zICIKLSIoJXMpIgorImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyciCiBtc2dzdHIgIiIKLSJmZWw6IGthbiBpbnRlIGtvbWJpbmVyYSBpbnRlcmFrdGl2YSBmbGFnZ29yICgtLWludGVyYWN0aXZlLCAtLWV4ZWMsIC0tcmViYXNlLSIKLSJtZXJnZXMsIC0tcHJlc2VydmUtbWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250bykgbWVkIGFtLWZsYWdnb3IgKCVzKSIKKyJmZWw6IGthbiBpbnRlIGtvbWJpbmVyYSBcIi0tcHJlc2VydmUtbWVyZ2VzXCIgbWVkIFwiLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjIgorIlwiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyMzEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotImVycm9yOiBjYW5ub3QgY29tYmluZSBtZXJnZSBvcHRpb25zICgtLW1lcmdlLCAtLXN0cmF0ZWd5LCAtLXN0cmF0ZWd5LW9wdGlvbikgIgotIndpdGggYW0gb3B0aW9ucyAoJXMpIgotbXNnc3RyICIiCi0iZmVsOiBrYW4gaW50ZSBrb21iaW5lcmEgc2FtbWFuc2xhZ25pbmdzZmxhZ2dvciAoLS1tZXJnZSwgLS1zdHJhdGVneSwgLS0iCi0ic3RyYXRlZ3ktb3B0aW9uKSBtZWQgYW0tZmxhZ2dvciAoJXMpIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyNTEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTM2Ci1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXByZXNlcnZlLW1lcmdlcycgd2l0aCAnLS1yZWJhc2UtbWVyZ2VzJyIKLW1zZ3N0ciAiZmVsOiBrYW4gaW50ZSBrb21iaW5lcmEgXCItLXByZXNlcnZlLW1lcmdlc1wiIG1lZCBcIi0tcmViYXNlLW1lcmdlc1wiIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyNTYgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTQyCi1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3ktb3B0aW9uJyIKLW1zZ3N0ciAiZmVsOiBrYW4gaW50ZSBrb21iaW5lcmEgXCItLXJlYmFzZS1tZXJnZXNcIiBtZWQgXCItLXN0cmF0ZWd5LW9wdGlvblwiIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyNTkgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTQ0Ci1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3knIgotbXNnc3RyICJmZWw6IGthbiBpbnRlIGtvbWJpbmVyYSBcIi0tcmViYXNlLW1lcmdlc1wiIG1lZCBcIi0tc3RyYXRlZ3lcIiIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjgzCisjOiBidWlsdGluL3JlYmFzZS5jOjE5ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB1cHN0cmVhbSAnJXMnIgotbXNnc3RyICJmZWxha3RpZyB1cHBzdHLDtm0g4oCdJXPigJ0iCittc2dzdHIgImZlbGFrdGlnIHVwcHN0csO2bSBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI4OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxOTkxCiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBuZXcgcm9vdCBjb21taXQiCiBtc2dzdHIgImt1bmRlIGludGUgc2thcGEgbnkgcm90aW5jaGVja25pbmciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTMwNworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IG5lZWQgZXhhY3RseSBvbmUgbWVyZ2UgYmFzZSB3aXRoIGJyYW5jaCIKK21zZ3N0ciAiXCIlc1wiOiBiZWjDtnZlciBwcmVjaXMgZW4gc2FtbWFuc2xhZ25pbmdzYmFzIG1lZCBncmVuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJzogbmVlZCBleGFjdGx5IG9uZSBtZXJnZSBiYXNlIgogbXNnc3RyICJcIiVzXCI6IGJlaMO2dmVyIHByZWNpcyBlbiBzYW1tYW5zbGFnbmluZ3NiYXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTMxNAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMDI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRvZXMgbm90IHBvaW50IHRvIGEgdmFsaWQgY29tbWl0ICclcyciCiBtc2dzdHIgIlBla2FyIGludGUgcMOlIGVuIGdpbHRpZyBpbmNoZWNrbmluZzogXCIlc1wiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzMzkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICclcyciCiBtc2dzdHIgIsO2ZGVzZGlnZXJ0OiBpbmdlbiBzw6VkYW4gZ3Jlbi9pbmNoZWNrbmluZzogXCIlc1wiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzNDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjM3Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkzMAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMDYyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZWY6ICVzIgogbXNnc3RyICJJbmdlbiBzw6VkYW4gcmVmZXJlbnM6ICVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzNTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA3MwogbXNnaWQgIkNvdWxkIG5vdCByZXNvbHZlIEhFQUQgdG8gYSByZXZpc2lvbiIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBiZXN0w6RtbWEgSEVBRDpzIGluY2hlY2tuaW5nIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzOTkgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjY1CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMTEKIG1zZ2lkICJDYW5ub3QgYXV0b3N0YXNoIgogbXNnc3RyICJLYW4gaW50ZSB1dGbDtnJhIFwiYXV0b3N0YXNoXCIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQwMgorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuZXhwZWN0ZWQgc3Rhc2ggcmVzcG9uc2U6ICclcyciCiBtc2dzdHIgIk92w6RudGF0IHN2YXIgZnLDpW4gc3Rhc2g6IFwiJXNcIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDA4CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgZm9yICclcyciCiBtc2dzdHIgIkt1bmRlIGludGUgc2thcGEga2F0YWxvZyBmw7ZyIFwiJXNcIiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDExCisjOiBidWlsdGluL3JlYmFzZS5jOjIxMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3JlYXRlZCBhdXRvc3Rhc2g6ICVzXG4iCiBtc2dzdHIgIlNrYXBhZGUgYXV0b3N0YXNoOiAlc1xuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MTQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyNgogbXNnaWQgImNvdWxkIG5vdCByZXNldCAtLWhhcmQiCiBtc2dzdHIgImt1bmRlIGludGUgdXRmw7ZyYSBcInJlc2V0IC0taGFyZFwiIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MTUgYnVpbHRpbi9yZXNldC5jOjExMwotIywgYy1mb3JtYXQKLW1zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKLW1zZ3N0ciAiSEVBRCDDpHIgbnUgcMOlICVzIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MzEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6Njc0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMzUKIG1zZ2lkICJQbGVhc2UgY29tbWl0IG9yIHN0YXNoIHRoZW0uIgogbXNnc3RyICJDaGVja2EgaW4gZWxsZXIgYW52w6RuZCBcInN0YXNoXCIgcMOlIGRlbS4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ1OAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyIKLW1zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSBcIiVzXCIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ3MAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzd2l0Y2ggdG8gJXMiCiBtc2dzdHIgImt1bmRlIGludGUgdsOkeGxhIHRpbGwgJXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2OTcKLSMsIHNoLWZvcm1hdAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTgwCiBtc2dpZCAiSEVBRCBpcyB1cCB0byBkYXRlLiIKIG1zZ3N0ciAiSEVBRCDDpHIgw6Agam91ci4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkN1cnJlbnQgYnJhbmNoICVzIGlzIHVwIHRvIGRhdGUuXG4iCiBtc2dzdHIgIkFrdHVlbGwgZ3JlbiAlcyDDpHIgw6Agam91ci5cbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDkxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjcwNwotIywgc2gtZm9ybWF0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxOTAKIG1zZ2lkICJIRUFEIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgogbXNnc3RyICJIRUFEIMOkciDDoCBqb3VyLCBvbWJhc2VyaW5nIGZyYW10dmluZ2FkLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDkzCisjOiBidWlsdGluL3JlYmFzZS5jOjIxOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3VycmVudCBicmFuY2ggJXMgaXMgdXAgdG8gZGF0ZSwgcmViYXNlIGZvcmNlZC5cbiIKIG1zZ3N0ciAiQWt0dWVsbCBncmVuICVzIMOkciDDoCBqb3VyLCBvbWJhc2VyaW5nIGZyYW10dmluZ2FkLlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MDEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6MjA4CisjOiBidWlsdGluL3JlYmFzZS5jOjIyMDAKIG1zZ2lkICJUaGUgcHJlLXJlYmFzZSBob29rIHJlZnVzZWQgdG8gcmViYXNlLiIKIG1zZ3N0ciAiS3Jva2VuIHByZS1yZWJhc2UgdsOkZ3JhZGUgb21iYXNlcmluZ2VuLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTA4CisjOiBidWlsdGluL3JlYmFzZS5jOjIyMDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2hhbmdlcyB0byAlczpcbiIKIG1zZ3N0ciAiw4RuZHJpbmdhciB0aWxsICVzOlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJDaGFuZ2VzIGZyb20gJXMgdG8gJXM6XG4iCiBtc2dzdHIgIsOEbmRyaW5nYXIgZnLDpW4gJXMgdGlsbCAlczpcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTM2CisjOiBidWlsdGluL3JlYmFzZS5jOjIyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uXG4iCiBtc2dzdHIgIiIKICJGw7Zyc3QsIHNwb2xhciB0aWxsYmFrYSBodXZ1ZGV0IGbDtnIgYXR0IHNwZWxhIGF2IGRpdHQgYXJiZXRlIG92YW5ww6UgZGV0Li4uXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTU0MworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjQ0CiBtc2dpZCAiQ291bGQgbm90IGRldGFjaCBIRUFEIgogbXNnc3RyICJLdW5kZSBpbnRlIGtvcHBsYSBmcsOlbiBIRUFEIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1NTIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjI1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRlZCAlcyB0byAlcy5cbiIKIG1zZ3N0ciAiU25hYmJzcG9sYWRlICVzIHRpbGwgJXMuXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjI0Ci1tc2dpZCAibm8gSEVBRD8iCi1tc2dzdHIgImluZ2V0IEhFQUQ/IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzo1MQotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAlcyIKLW1zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSB0ZW1wb3LDpHIgJXMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjU3Ci1tc2dpZCAiY291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCi1tc2dzdHIgImt1bmRlIGludGUgbWFya2VyYSBzb20gaW50ZXJha3RpdiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTAxCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBvcGVuICVzIgotbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSAlcyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTE0Ci1tc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIHRvZG8gbGlzdCIKLW1zZ3N0ciAiS3VuZGUgaW50ZSBza2FwYSBhdHRnw7ZyYS1saXN0YSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTI5Ci1tc2dpZCAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxvcHRpb25zPl0iCi1tc2dzdHIgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFs8ZmxhZ2dvcj5dIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNDgKLW1zZ2lkICJrZWVwIGVtcHR5IGNvbW1pdHMiCi1tc2dzdHIgImJlaMOlbGwgdG9tbWEgaW5jaGVja25pbmdhciIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTUwIGJ1aWx0aW4vcmV2ZXJ0LmM6MTI0Ci1tc2dpZCAiYWxsb3cgY29tbWl0cyB3aXRoIGVtcHR5IG1lc3NhZ2VzIgotbXNnc3RyICJ0aWxsw6V0IGluY2hlY2tuaW5nYXIgbWVkIHRvbXQgbWVkZGVsYW5kZSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTUxCi1tc2dpZCAicmViYXNlIG1lcmdlIGNvbW1pdHMiCi1tc2dzdHIgIm9tYmFzZXJhIHNhbW1hbnNsYWduaW5nYXIiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1MwotbXNnaWQgImtlZXAgb3JpZ2luYWwgYnJhbmNoIHBvaW50cyBvZiBjb3VzaW5zIgotbXNnc3RyICJiZWjDpWxsIHVyc3BydW5nbGlnYSBmw7ZyZ3JlbmluZ3NwdW5rdGVyIGbDtnIga3VzaW5lciIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTU1Ci1tc2dpZCAibW92ZSBjb21taXRzIHRoYXQgYmVnaW4gd2l0aCBzcXVhc2ghL2ZpeHVwISIKLW1zZ3N0ciAiZmx5dHRhIGluY2hlY2tuaW5nYXIgc29tIGlubGVkcyBtZWQgc3F1YXNoIS9maXh1cCEiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1NgotbXNnaWQgInNpZ24gY29tbWl0cyIKLW1zZ3N0ciAic2lnbmVyYSBpbmNoZWNrbmluZ2FyIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTgKLW1zZ2lkICJjb250aW51ZSByZWJhc2UiCi1tc2dzdHIgImZvcnRzw6R0dCBvbWJhc2VyaW5nIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjAKLW1zZ2lkICJza2lwIGNvbW1pdCIKLW1zZ3N0ciAiaG9wcGEgw7Z2ZXIgaW5jaGVja25pbmciCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2MQotbXNnaWQgImVkaXQgdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAicmVkaWdlcmEgYXR0Z8O2cmEtbGlzdGFuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjMKLW1zZ2lkICJzaG93IHRoZSBjdXJyZW50IHBhdGNoIgotbXNnc3RyICJ2aXNhIG51dmFyYW5kZSBwYXRjaCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTY2Ci1tc2dpZCAic2hvcnRlbiBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgImbDtnJrb3J0YSBpbmNoZWNrbmluZ3MtaWQgaSB0b2RvLWxpc3RhbiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTY4Ci1tc2dpZCAiZXhwYW5kIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAidXTDtmthIGluY2hlY2tuaW5ncy1pZCBpIHRvZG8tbGlzdGFuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzAKLW1zZ2lkICJjaGVjayB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICJrb250cm9sbGVyYSB0b2RvLWxpc3RhbiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTcyCi1tc2dpZCAicmVhcnJhbmdlIGZpeHVwL3NxdWFzaCBsaW5lcyIKLW1zZ3N0ciAib3JkbmEgb20gZml4dXAtL3NxdWFzaC1yYWRlciIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc0Ci1tc2dpZCAiaW5zZXJ0IGV4ZWMgY29tbWFuZHMgaW4gdG9kbyBsaXN0IgotbXNnc3RyICJsw6RnZyBpbiBleGVjLWtvbW1hbmRvbiBpIHRvZG8tbGlzdGFuIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzUKLW1zZ2lkICJvbnRvIgotbXNnc3RyICJvdmFucMOlIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzcKLW1zZ2lkICJyZXN0cmljdC1yZXZpc2lvbiIKLW1zZ3N0ciAicmVzdHJpY3QtcmV2aXNpb24iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NwotbXNnaWQgInJlc3RyaWN0IHJldmlzaW9uIgotbXNnc3RyICJiZWdyw6Ruc2EgcmV2aXNpb24iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3OAotbXNnaWQgInNxdWFzaC1vbnRvIgotbXNnc3RyICJzcXVhc2gtb250byIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc5Ci1tc2dpZCAic3F1YXNoIG9udG8iCi1tc2dzdHIgInRyeWNrIGlob3Agb3ZhbnDDpSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgxCi1tc2dpZCAidGhlIHVwc3RyZWFtIGNvbW1pdCIKLW1zZ3N0ciAidXBwc3Ryw7Ztc2luY2hlY2tuaW5nZW4iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MgotbXNnaWQgImhlYWQtbmFtZSIKLW1zZ3N0ciAiaGVhZC1uYW1lIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODIKLW1zZ2lkICJoZWFkIG5hbWUiCi1tc2dzdHIgIm5hbW4gcMOlIGh1dnVkIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODcKLW1zZ2lkICJyZWJhc2Ugc3RyYXRlZ3kiCi1tc2dzdHIgInNhbW1hbnNsYWduaW5nc3N0cmF0ZWdpIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODgKLW1zZ2lkICJzdHJhdGVneS1vcHRzIgotbXNnc3RyICJzdHJhdGVneS1vcHRzIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODkKLW1zZ2lkICJzdHJhdGVneSBvcHRpb25zIgotbXNnc3RyICJzdHJhdGVnaWZsYWdnb3IiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MAotbXNnaWQgInN3aXRjaC10byIKLW1zZ3N0ciAic3dpdGNoLXRvIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTEKLW1zZ2lkICJ0aGUgYnJhbmNoIG9yIGNvbW1pdCB0byBjaGVja291dCIKLW1zZ3N0ciAiZ3JlbiBlbGxlciBpbmNoZWNraW5nIGF0dCBjaGVja2EgdXQiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MgotbXNnaWQgIm9udG8tbmFtZSIKLW1zZ3N0ciAib250by1uYW1lIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTIKLW1zZ2lkICJvbnRvIG5hbWUiCi1tc2dzdHIgInDDpS1uYW1uIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTMKLW1zZ2lkICJjbWQiCi1tc2dzdHIgImttZCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkzCi1tc2dpZCAidGhlIGNvbW1hbmQgdG8gcnVuIgotbXNnc3RyICJrb21tYW5kbyBhdHQga8O2cmEiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjIyMAotbXNnaWQgIi0tW25vLV1yZWJhc2UtY291c2lucyBoYXMgbm8gZWZmZWN0IHdpdGhvdXQgLS1yZWJhc2UtbWVyZ2VzIgotbXNnc3RyICItLVtuby1dcmViYXNlLWNvdXNpbnMgaGFyIGluZ2VuIGVmZmVrdCB1dGFuIC0tcmViYXNlLW1lcmdlcyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MjI2Ci1tc2dpZCAiYSBiYXNlIGNvbW1pdCBtdXN0IGJlIHByb3ZpZGVkIHdpdGggLS11cHN0cmVhbSBvciAtLW9udG8iCi1tc2dzdHIgImVuIGJhc2luY2hlY2tuaW5nIG3DpXN0ZSBhbmdlcyBtZWQgLS11cHN0cmVhbSBlbGxlciAtLW9udG8iCi0KICM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MzMKIG1zZ2lkICJnaXQgcmVjZWl2ZS1wYWNrIDxnaXQtZGlyPiIKIG1zZ3N0ciAiZ2l0IHJlY2VpdmUtcGFjayA8Z2l0LWthdGFsb2c+IgogCi0jOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjgzMAorIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzo4MjEKIG1zZ2lkICIiCiAiQnkgZGVmYXVsdCwgdXBkYXRpbmcgdGhlIGN1cnJlbnQgYnJhbmNoIGluIGEgbm9uLWJhcmUgcmVwb3NpdG9yeVxuIgogImlzIGRlbmllZCwgYmVjYXVzZSBpdCB3aWxsIG1ha2UgdGhlIGluZGV4IGFuZCB3b3JrIHRyZWUgaW5jb25zaXN0ZW50XG4iCkBAIC0xNTQ4Miw3ICsxODY2MCw3IEBACiAiRsO2ciBhdHQgdW5kdmlrYSBkZXR0YSBtZWRkZWxhbmRlIG9jaCBmb3J0ZmFyYW5kZSBiZWjDpWxsYSBkZXRcbiIKICJub3JtYWxhIGJldGVlbmRldCwgc8OkdHQgXCJyZWNlaXZlLmRlbnlDdXJyZW50QnJhbmNoXCIgdGlsbCBcInJlZnVzZVwiLiIKIAotIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzo4NTAKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODQxCiBtc2dpZCAiIgogIkJ5IGRlZmF1bHQsIGRlbGV0aW5nIHRoZSBjdXJyZW50IGJyYW5jaCBpcyBkZW5pZWQsIGJlY2F1c2UgdGhlIG5leHRcbiIKICInZ2l0IGNsb25lJyB3b24ndCByZXN1bHQgaW4gYW55IGZpbGUgY2hlY2tlZCBvdXQsIGNhdXNpbmcgY29uZnVzaW9uLlxuIgpAQCAtMTU1MDMsMjQgKzE4NjgxLDc5IEBACiAiXG4iCiAiRsO2ciBhdHQgdW5kdmlrYSBkZXR0YSBtZWRkZWxhbmRlIGthbiBkdSBzw6R0dGEgZGV0IHRpbGwgXCJyZWZ1c2VcIi4iCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTkyOQorIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTM4CiBtc2dpZCAicXVpZXQiCiBtc2dzdHIgInR5c3QiCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk0MworIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTUyCiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIGRpcmVjdG9yeS4iCiBtc2dzdHIgIkR1IG3DpXN0ZSBhbmdlIGVuIGthdGFsb2cuIgogCi0jOiBidWlsdGluL3JlZmxvZy5jOjU2MyBidWlsdGluL3JlZmxvZy5jOjU2OAorIzogYnVpbHRpbi9yZWZsb2cuYzoxNworbXNnaWQgIiIKKyJnaXQgcmVmbG9nIGV4cGlyZSBbLS1leHBpcmU9PHRpbWU+XSBbLS1leHBpcmUtdW5yZWFjaGFibGU9PHRpbWU+XSBbLS0iCisicmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1zdGFsZS1maXhdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gWy0tYWxsXSAiCisiPHJlZnM+Li4uIgorbXNnc3RyICIiCisiZ2l0IHJlZmxvZyBleHBpcmUgWy0tZXhwaXJlPTx0aWQ+XSBbLS1leHBpcmUtdW5yZWFjaGFibGU9PHRpZD5dIFstLXJld3JpdGVdICIKKyJbLS11cGRhdGVyZWZdIFstLXN0YWxlLWZpeF0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSBbLS1hbGxdICIKKyI8cmVmZXJlbnNlcj4uLi4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MjIKK21zZ2lkICIiCisiZ2l0IHJlZmxvZyBkZWxldGUgWy0tcmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdICIKKyI8cmVmcz4uLi4iCittc2dzdHIgIiIKKyJnaXQgcmVmbG9nIGRlbGV0ZSBbLS1yZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gIgorIjxyZWZlcmVuc2VyPi4uLiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzoyNQorbXNnaWQgImdpdCByZWZsb2cgZXhpc3RzIDxyZWY+IgorbXNnc3RyICJnaXQgcmVmbG9nIGV4aXN0cyA8cmVmZXJlbnM+IgorCisjOiBidWlsdGluL3JlZmxvZy5jOjU2OCBidWlsdGluL3JlZmxvZy5jOjU3MwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRpbWVzdGFtcCIKIG1zZ3N0ciAiXCIlc1wiIMOkciBpbnRlIGVuIGdpbHRpZyB0aWRzc3TDpG1wZWwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hcmtpbmcgcmVhY2hhYmxlIG9iamVjdHMuLi4iCittc2dzdHIgIk1hcmtlcmFyIG7DpWJhcmEgb2JqZWt0Li4uIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwb2ludHMgbm93aGVyZSEiCittc2dzdHIgIiVzIHBla2FyIGluZ2Vuc3RhbnMhIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY5NgorbXNnaWQgIm5vIHJlZmxvZyBzcGVjaWZpZWQgdG8gZGVsZXRlIgorbXNnc3RyICJpbmdlbiByZWZlcmVuc2xvZ2cgYXR0IHRhIGJvcnQgYW5nYXZzIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjcwNQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSByZWZsb2c6ICVzIgorbXNnc3RyICJpbnRlIGVuIHJlZmVyZW5zbG9nZzogJXMiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzEwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHJlZmxvZyBmb3IgJyVzJyIKK21zZ3N0ciAiaW5nZW4gcmVmZXJlbnNsb2dnIGbDtnIgXCIlc1wiIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc1NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZiBmb3JtYXQ6ICVzIgorbXNnc3RyICJmZWxha3RpZ3QgcmVmZXJlbnNmb3JtYXQ6ICVzIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc2NQorbXNnaWQgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCittc2dzdHIgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcKIG1zZ2lkICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0iCiBtc2dzdHIgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNworIzogYnVpbHRpbi9yZW1vdGUuYzoxOAogbXNnaWQgIiIKICJnaXQgcmVtb3RlIGFkZCBbLXQgPGJyYW5jaD5dIFstbSA8bWFzdGVyPl0gWy1mXSBbLS10YWdzIHwgLS1uby10YWdzXSBbLS0iCiAibWlycm9yPTxmZXRjaHxwdXNoPl0gPG5hbWU+IDx1cmw+IgpAQCAtMTU1MjgsODIgKzE4NzYxLDgyIEBACiAiZ2l0IHJlbW90ZSBhZGQgWy10IDxncmVuPl0gWy1tIDxtYXN0ZXI+XSBbLWZdIFstLXRhZ3MgfCAtLW5vLXRhZ3NdIFstLSIKICJtaXJyb3I9PGZldGNofHB1c2g+XSA8bmFtbj4gPHVybD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTggYnVpbHRpbi9yZW1vdGUuYzozOAorIzogYnVpbHRpbi9yZW1vdGUuYzoxOSBidWlsdGluL3JlbW90ZS5jOjM5CiBtc2dpZCAiZ2l0IHJlbW90ZSByZW5hbWUgPG9sZD4gPG5ldz4iCiBtc2dzdHIgImdpdCByZW1vdGUgcmVuYW1lIDxnYW1tYWw+IDxueT4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTkgYnVpbHRpbi9yZW1vdGUuYzo0MworIzogYnVpbHRpbi9yZW1vdGUuYzoyMCBidWlsdGluL3JlbW90ZS5jOjQ0CiBtc2dpZCAiZ2l0IHJlbW90ZSByZW1vdmUgPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHJlbW92ZSA8bmFtbj4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjAgYnVpbHRpbi9yZW1vdGUuYzo0OAorIzogYnVpbHRpbi9yZW1vdGUuYzoyMSBidWlsdGluL3JlbW90ZS5jOjQ5CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtaGVhZCA8bmFtZT4gKC1hIHwgLS1hdXRvIHwgLWQgfCAtLWRlbGV0ZSB8IDxicmFuY2g+KSIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtaGVhZCA8bmFtbj4gKC1hIHwgLS1hdXRvIHwgLWQgfCAtLWRlbGV0ZSB8IDxncmVuPikiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjIKIG1zZ2lkICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gc2hvdyBbLW5dIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHNob3cgWy1uXSA8bmFtbj4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjMKIG1zZ2lkICJnaXQgcmVtb3RlIHBydW5lIFstbiB8IC0tZHJ5LXJ1bl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHBydW5lIFstbiB8IC0tZHJ5LXJ1bl0gPG5hbW4+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIzCisjOiBidWlsdGluL3JlbW90ZS5jOjI0CiBtc2dpZCAiIgogImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSB1cGRhdGUgWy1wIHwgLS1wcnVuZV0gWyg8Z3JvdXA+IHwgPHJlbW90ZT4pLi4uXSIKIG1zZ3N0ciAiIgogImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSB1cGRhdGUgWy1wIHwgLS1wcnVuZV0gWyg8Z3J1cHA+IHwgPGZqw6Rycj4pLi4uXSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNAorIzogYnVpbHRpbi9yZW1vdGUuYzoyNQogbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIFstLWFkZF0gPG5hbWU+IDxicmFuY2g+Li4uIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyBbLS1hZGRdIDxuYW1uPiA8Z3Jlbj4uLi4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjUgYnVpbHRpbi9yZW1vdGUuYzo3NAorIzogYnVpbHRpbi9yZW1vdGUuYzoyNiBidWlsdGluL3JlbW90ZS5jOjc1CiBtc2dpZCAiZ2l0IHJlbW90ZSBnZXQtdXJsIFstLXB1c2hdIFstLWFsbF0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIGdldC11cmwgWy0tcHVzaF0gWy0tYWxsXSA8bmFtbj4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjYgYnVpbHRpbi9yZW1vdGUuYzo3OQorIzogYnVpbHRpbi9yZW1vdGUuYzoyNyBidWlsdGluL3JlbW90ZS5jOjgwCiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIFstLXB1c2hdIDxuYW1lPiA8bmV3dXJsPiBbPG9sZHVybD5dIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgWy0tcHVzaF0gPG5hbW4+IDxueXVybD4gWzxnYW1tYWx1cmw+XSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNyBidWlsdGluL3JlbW90ZS5jOjgwCisjOiBidWlsdGluL3JlbW90ZS5jOjI4IGJ1aWx0aW4vcmVtb3RlLmM6ODEKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC11cmwgLS1hZGQgPG5hbWU+IDxuZXd1cmw+IgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgLS1hZGQgPG5hbW4+IDxueXVybD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjggYnVpbHRpbi9yZW1vdGUuYzo4MQorIzogYnVpbHRpbi9yZW1vdGUuYzoyOSBidWlsdGluL3JlbW90ZS5jOjgyCiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDxuYW1lPiA8dXJsPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDxuYW1uPiA8dXJsPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzozMworIzogYnVpbHRpbi9yZW1vdGUuYzozNAogbXNnaWQgImdpdCByZW1vdGUgYWRkIFs8b3B0aW9ucz5dIDxuYW1lPiA8dXJsPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBhZGQgWzxmbGFnZ29yPl0gPG5hbW4+IDx1cmw+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjUzCisjOiBidWlsdGluL3JlbW90ZS5jOjU0CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgPG5hbWU+IDxicmFuY2g+Li4uIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyA8bmFtbj4gPGdyZW4+Li4uIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjU0CisjOiBidWlsdGluL3JlbW90ZS5jOjU1CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgLS1hZGQgPG5hbWU+IDxicmFuY2g+Li4uIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyAtLWFkZCA8bmFtbj4gPGdyZW4+Li4uIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjU5CisjOiBidWlsdGluL3JlbW90ZS5jOjYwCiBtc2dpZCAiZ2l0IHJlbW90ZSBzaG93IFs8b3B0aW9ucz5dIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzaG93IFs8ZmxhZ2dvcj5dIDxuYW1uPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NAorIzogYnVpbHRpbi9yZW1vdGUuYzo2NQogbXNnaWQgImdpdCByZW1vdGUgcHJ1bmUgWzxvcHRpb25zPl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHBydW5lIFs8ZmxhZ2dvcj5dIDxuYW1uPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2OQorIzogYnVpbHRpbi9yZW1vdGUuYzo3MAogbXNnaWQgImdpdCByZW1vdGUgdXBkYXRlIFs8b3B0aW9ucz5dIFs8Z3JvdXA+IHwgPHJlbW90ZT5dLi4uIgogbXNnc3RyICJnaXQgcmVtb3RlIHVwZGF0ZSBbPGZsYWdnb3I+XSBbPGdydXBwPiB8IDxmasOkcnI+XS4uLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5OAorIzogYnVpbHRpbi9yZW1vdGUuYzo5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJVcGRhdGluZyAlcyIKIG1zZ3N0ciAiVXBwZGF0ZXJhciAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxCiBtc2dpZCAiIgogIi0tbWlycm9yIGlzIGRhbmdlcm91cyBhbmQgZGVwcmVjYXRlZDsgcGxlYXNlXG4iCiAiXHQgdXNlIC0tbWlycm9yPWZldGNoIG9yIC0tbWlycm9yPXB1c2ggaW5zdGVhZCIKQEAgLTE1NjExLDgyICsxODg0NCw5OCBAQAogIi0tbWlycm9yIMOkciBmYXJsaWcgb2NoIGbDtnLDpWxkcmFkOyBhbnbDpG5kXG4iCiAiXHQgLS1taXJyb3I9ZmV0Y2ggZWxsZXIgLS1taXJyb3I9cHVzaCBpc3TDpGxsZXQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ3CisjOiBidWlsdGluL3JlbW90ZS5jOjE0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG1pcnJvciBhcmd1bWVudDogJXMiCiBtc2dzdHIgIm9rw6RudCBhcmd1bWVudCB0aWxsIG1pcnJvcjogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYzCisjOiBidWlsdGluL3JlbW90ZS5jOjE2NAogbXNnaWQgImZldGNoIHRoZSByZW1vdGUgYnJhbmNoZXMiCiBtc2dzdHIgImjDpG10YSBmasOkcnJncmVuYXJuYSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY2CiBtc2dpZCAiaW1wb3J0IGFsbCB0YWdzIGFuZCBhc3NvY2lhdGVkIG9iamVjdHMgd2hlbiBmZXRjaGluZyIKIG1zZ3N0ciAiaW1wb3J0ZXJhIGFsbGEgdGFnZ2FyIG9jaCBhc3NvY2llcmFkZSBvYmpla3QgdmlkIGjDpG10bmluZyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY5CiBtc2dpZCAib3IgZG8gbm90IGZldGNoIGFueSB0YWcgYXQgYWxsICgtLW5vLXRhZ3MpIgogbXNnc3RyICJlbGxlciBow6RtdGEgaW50ZSBuw6VncmEgdGFnZ2FyIGFsbHMgKC0tbm8tdGFncykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcwCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MQogbXNnaWQgImJyYW5jaChlcykgdG8gdHJhY2siCiBtc2dzdHIgImdyZW4oYXIpIGF0dCBzcMOlcmEiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcxCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MgogbXNnaWQgIm1hc3RlciBicmFuY2giCiBtc2dzdHIgImh1dnVkZ3JlbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTc0CiBtc2dpZCAic2V0IHVwIHJlbW90ZSBhcyBhIG1pcnJvciB0byBwdXNoIHRvIG9yIGZldGNoIGZyb20iCiBtc2dzdHIgInN0w6RsbCBpbiBhcmtpdiBzb20gc3BlZ2VsIGF0dCBzw6RuZGEgZWxsZXIgdGEgZW1vdCBmcsOlbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxODUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg2CiBtc2dpZCAic3BlY2lmeWluZyBhIG1hc3RlciBicmFuY2ggbWFrZXMgbm8gc2Vuc2Ugd2l0aCAtLW1pcnJvciIKIG1zZ3N0ciAiYXR0IGFuZ2UgZW4gbWFzdGVyLWdyZW4gZ2VyIGluZ2VuIG1lbmluZyBtZWQgLS1taXJyb3IiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg3CisjOiBidWlsdGluL3JlbW90ZS5jOjE4OAogbXNnaWQgInNwZWNpZnlpbmcgYnJhbmNoZXMgdG8gdHJhY2sgbWFrZXMgc2Vuc2Ugb25seSB3aXRoIGZldGNoIG1pcnJvcnMiCiBtc2dzdHIgImF0dCBhbmdlIGdyZW5hciBhdHQgc3DDpXJhIGdlciBtZW5pbmcgYmFyYSBtZWQgaMOkbXRuaW5nc3NwZWdsYXIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk0IGJ1aWx0aW4vcmVtb3RlLmM6NjM2CisjOiBidWlsdGluL3JlbW90ZS5jOjE5NSBidWlsdGluL3JlbW90ZS5jOjY5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZW1vdGUgJXMgYWxyZWFkeSBleGlzdHMuIgogbXNnc3RyICJmasOkcnJhcmtpdmV0ICVzIGZpbm5zIHJlZGFuLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOTggYnVpbHRpbi9yZW1vdGUuYzo2NDAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk5IGJ1aWx0aW4vcmVtb3RlLmM6NzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVtb3RlIG5hbWUiCiBtc2dzdHIgIlwiJXNcIiDDpHIgaW50ZSBldHQgZ2lsdGlndCBuYW1uIHDDpSBmasOkcnJhcmtpdiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMzgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzZXR1cCBtYXN0ZXIgJyVzJyIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBza2FwYSBtYXN0ZXIgXCIlc1wiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjM0NAorIzogYnVpbHRpbi9yZW1vdGUuYzozNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGdldCBmZXRjaCBtYXAgZm9yIHJlZnNwZWMgJXMiCiBtc2dzdHIgIkt1bmRlIGludGUgaMOkbXRhIG1hcHBuaW5nIGbDtnIgcmVmZXJlbnNzcGVjaWZpa2F0aW9uICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjQ0MyBidWlsdGluL3JlbW90ZS5jOjQ1MQorIzogYnVpbHRpbi9yZW1vdGUuYzo0NTMgYnVpbHRpbi9yZW1vdGUuYzo0NjEKIG1zZ2lkICIobWF0Y2hpbmcpIgogbXNnc3RyICIobWF0Y2hhbmRlKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo0NTUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NDY1CiBtc2dpZCAiKGRlbGV0ZSkiCiBtc2dzdHIgIih0YSBib3J0KSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2MjkgYnVpbHRpbi9yZW1vdGUuYzo3NjUgYnVpbHRpbi9yZW1vdGUuYzo4NjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzZXQgJyVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbGxhIGluIFwiJXNcIiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo2NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSAlcyBjb25maWd1cmF0aW9uIHJlbW90ZS5wdXNoRGVmYXVsdCBpbjpcbiIKKyJcdCVzOiVkXG4iCisibm93IG5hbWVzIHRoZSBub24tZXhpc3RlbnQgcmVtb3RlICclcyciCittc2dzdHIgIiIKKyJLb25maWd1cmF0aW9uZW4gZsO2ciAlcyBmw7ZyIHJlbW90ZS5wdXNoRGVmYXVsdCBpOlxuIgorIlx0JXM6JWRcbiIKKyJhbmdlciBudSBkZW4gaWNrZS1leGlzdGVyYW5kZSBmasOkcnJlbiBcIiVzXCIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6Njg5IGJ1aWx0aW4vcmVtb3RlLmM6ODMyIGJ1aWx0aW4vcmVtb3RlLmM6OTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVtb3RlOiAnJXMnIgogbXNnc3RyICJJbmdlbiBzw6VkYW4gZmrDpHJyOiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NjQ2CisjOiBidWlsdGluL3JlbW90ZS5jOjcwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVuYW1lIGNvbmZpZyBzZWN0aW9uICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBieXRhIG5hbW4gcMOlIGtvbmZpZ3VyYXRpb25zc2VrdGlvbmVuIFwiJXNcIiB0aWxsIFwiJXNcIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NjYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJOb3QgdXBkYXRpbmcgbm9uLWRlZmF1bHQgZmV0Y2ggcmVmc3BlY1xuIgpAQCAtMTU2OTcsMTcgKzE4OTQ2LDE3IEBACiAiXHQlc1xuIgogIlx0VXBwZGF0ZXJhIGtvbmZpZ3VyYXRpb25lbiBtYW51ZWxsdCBvbSBuw7ZkdsOkbmRpZ3QuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjcwMgorIzogYnVpbHRpbi9yZW1vdGUuYzo3NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsZXRpbmcgJyVzJyBmYWlsZWQiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyB0YSBib3J0IFwiJXNcIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo3MzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6ODAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNyZWF0aW5nICclcycgZmFpbGVkIgogbXNnc3RyICJtaXNzbHlja2FkZXMgc2thcGEgXCIlc1wiIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjgwMgorIzogYnVpbHRpbi9yZW1vdGUuYzo4NzYKIG1zZ2lkICIiCiAiTm90ZTogQSBicmFuY2ggb3V0c2lkZSB0aGUgcmVmcy9yZW1vdGVzLyBoaWVyYXJjaHkgd2FzIG5vdCByZW1vdmVkO1xuIgogInRvIGRlbGV0ZSBpdCwgdXNlOiIKQEAgLTE1NzIxLDExOCArMTg5NzAsMTE4IEBACiAiT2JzZXJ2ZXJhOiBOw6VncmEgZ3JlbmFyIHV0YW5mw7ZyIGhpZXJhcmtpbiByZWZzL3JlbW90ZXMvIHRvZ3MgaW50ZSBib3J0O1xuIgogImbDtnIgYXR0IHRhIGJvcnQgZGVtLCBhbnbDpG5kOiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo4MTYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6ODkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgY29uZmlnIHNlY3Rpb24gJyVzJyIKIG1zZ3N0ciAiS3VuZGUgaW50ZSB0YSBib3J0IGtvbmZpZ3VyYXRpb25zc2VrdGlvbmVuIFwiJXNcIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5MTcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiBuZXcgKG5leHQgZmV0Y2ggd2lsbCBzdG9yZSBpbiByZW1vdGVzLyVzKSIKIG1zZ3N0ciAiIG55IChuw6RzdGEgaMOkbXRuaW5nIHNwYXJhciBpIHJlbW90ZXMvJXMpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkyMAorIzogYnVpbHRpbi9yZW1vdGUuYzo5OTYKIG1zZ2lkICIgdHJhY2tlZCIKIG1zZ3N0ciAiIHNww6VyYWQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTIyCisjOiBidWlsdGluL3JlbW90ZS5jOjk5OAogbXNnaWQgIiBzdGFsZSAodXNlICdnaXQgcmVtb3RlIHBydW5lJyB0byByZW1vdmUpIgogbXNnc3RyICIgZsO2cmxlZ2FkIChhbnbDpG5kIFwiZ2l0IHJlbW90ZSBwcnVuZVwiIGbDtnIgYXR0IHRhIGJvcnQpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkyNAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDAwCiBtc2dpZCAiID8/PyIKIG1zZ3N0ciAiID8/PyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NjUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGJyYW5jaC4lcy5tZXJnZTsgY2Fubm90IHJlYmFzZSBvbnRvID4gMSBicmFuY2giCiBtc2dzdHIgIm9naWx0aWcgYnJhbmNoLiVzLm1lcmdlOyBrYW4gaW50ZSBvbWJhc2VyYSDDtnZlciA+IDEgZ3JlbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgb250byByZW1vdGUgJXMiCiBtc2dzdHIgIm9tYmFzZXJhcyBpbnRlcmFrdGl2dCBww6UgZmrDpHJyZW4gJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTc2CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmViYXNlcyBpbnRlcmFjdGl2ZWx5ICh3aXRoIG1lcmdlcykgb250byByZW1vdGUgJXMiCiBtc2dzdHIgIm9tYmFzZXJhcyBpbnRlcmFrdGl2dCAobWVkIHNhbW1hbnNsYWduaW5nYXIpIHDDpSBmasOkcnJlbiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWJhc2VzIG9udG8gcmVtb3RlICVzIgogbXNnc3RyICJvbWJhc2VyYXMgcMOlIGZqw6RycmVuICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk4MworIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiBtZXJnZXMgd2l0aCByZW1vdGUgJXMiCiBtc2dzdHIgIiBzYW1tYW5zbMOlcyBtZWQgZmrDpHJyZW4gJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg2CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAibWVyZ2VzIHdpdGggcmVtb3RlICVzIgogbXNnc3RyICJzYW1tYW5zbMOlcyBtZWQgZmrDpHJyZW4gJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg5CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJS0qcyAgICBhbmQgd2l0aCByZW1vdGUgJXNcbiIKIG1zZ3N0ciAiJS0qcyAgICBvY2ggbWVkIGZqw6RycmVuICVzXG4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzMgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTA4CiBtc2dpZCAiY3JlYXRlIgogbXNnc3RyICJza2FwYSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDM1CisjOiBidWlsdGluL3JlbW90ZS5jOjExMTEKIG1zZ2lkICJkZWxldGUiCiBtc2dzdHIgInRhIGJvcnQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzOQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTE1CiBtc2dpZCAidXAgdG8gZGF0ZSIKIG1zZ3N0ciAiw6Bqb3VyIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNDIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExOAogbXNnaWQgImZhc3QtZm9yd2FyZGFibGUiCiBtc2dzdHIgImthbiBzbmFiYnNwb2xhcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQ1CisjOiBidWlsdGluL3JlbW90ZS5jOjExMjEKIG1zZ2lkICJsb2NhbCBvdXQgb2YgZGF0ZSIKIG1zZ3N0ciAibG9rYWwgZsO2csOlbGRyYWQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIGZvcmNlcyB0byAlLSpzICglcykiCiBtc2dzdHIgIiAgICAlLSpzIHR2aW5nYXIgdGlsbCAlLSpzICglcykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIHB1c2hlcyB0byAlLSpzICglcykiCiBtc2dzdHIgIiAgICAlLSpzIHPDpG5kZXIgdGlsbCAlLSpzICglcykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIGZvcmNlcyB0byAlcyIKIG1zZ3N0ciAiICAgICUtKnMgdHZpbmdhciB0aWxsICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNjIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzOAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBwdXNoZXMgdG8gJXMiCiBtc2dzdHIgIiAgICAlLSpzIHPDpG5kZXIgdGlsbCAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTMwCisjOiBidWlsdGluL3JlbW90ZS5jOjEyMDYKIG1zZ2lkICJkbyBub3QgcXVlcnkgcmVtb3RlcyIKIG1zZ3N0ciAiZnLDpWdhIGludGUgZmrDpHJyYXIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1NworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiogcmVtb3RlICVzIgogbXNnc3RyICIqIGZqw6RyciAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU4CisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBGZXRjaCBVUkw6ICVzIgogbXNnc3RyICIgIEjDpG10LVVSTDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1OSBidWlsdGluL3JlbW90ZS5jOjExNzUgYnVpbHRpbi9yZW1vdGUuYzoxMzE0CisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzUgYnVpbHRpbi9yZW1vdGUuYzoxMjUxIGJ1aWx0aW4vcmVtb3RlLmM6MTM5MAogbXNnaWQgIihubyBVUkwpIgogbXNnc3RyICIoaW5nZW4gVVJMKSIKIApAQCAtMTU4NDAsMTkzICsxOTA4OSwxODQgQEAKICMuIHdpdGggdGhlIG9uZSBpbiAiIEZldGNoIFVSTDogJXMiCiAjLiB0cmFuc2xhdGlvbi4KICMuCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzMgYnVpbHRpbi9yZW1vdGUuYzoxMTc1CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNDkgYnVpbHRpbi9yZW1vdGUuYzoxMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgUHVzaCAgVVJMOiAlcyIKIG1zZ3N0ciAiICBTw6RuZC1VUkw6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzcgYnVpbHRpbi9yZW1vdGUuYzoxMTc5IGJ1aWx0aW4vcmVtb3RlLmM6MTE4MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjUzIGJ1aWx0aW4vcmVtb3RlLmM6MTI1NSBidWlsdGluL3JlbW90ZS5jOjEyNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBIRUFEIGJyYW5jaDogJXMiCiBtc2dzdHIgIiAgSEVBRC1ncmVuOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTc3CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTMKIG1zZ2lkICIobm90IHF1ZXJpZWQpIgogbXNnc3RyICIoaW50ZSBmw7ZyZnLDpWdhZCkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjU1CiBtc2dpZCAiKHVua25vd24pIgogbXNnc3RyICIob2vDpG5kKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTgzCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiAgSEVBRCBicmFuY2ggKHJlbW90ZSBIRUFEIGlzIGFtYmlndW91cywgbWF5IGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nKTpcbiIKIG1zZ3N0ciAiICBIRUFELWdyZW4gKEhFQUQgcMOlIGZqw6RyciDDpHIgdHZldHlkaWcsIGthbiB2YXJhIGVuIGF2IGbDtmxqYW5kZSk6XG4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE5NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgUmVtb3RlIGJyYW5jaDolcyIKIG1zZ2lkX3BsdXJhbCAiICBSZW1vdGUgYnJhbmNoZXM6JXMiCiBtc2dzdHJbMF0gIiAgRmrDpHJyZ3JlbjolcyIKIG1zZ3N0clsxXSAiICBGasOkcnJncmVuYXI6JXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE5OCBidWlsdGluL3JlbW90ZS5jOjEyMjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3NCBidWlsdGluL3JlbW90ZS5jOjEzMDAKIG1zZ2lkICIgKHN0YXR1cyBub3QgcXVlcmllZCkiCiBtc2dzdHIgIiAoc3RhdHVzIGludGUgZsO2cmZyw6VnYWQpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyMDcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI4MwogbXNnaWQgIiAgTG9jYWwgYnJhbmNoIGNvbmZpZ3VyZWQgZm9yICdnaXQgcHVsbCc6IgogbXNnaWRfcGx1cmFsICIgIExvY2FsIGJyYW5jaGVzIGNvbmZpZ3VyZWQgZm9yICdnaXQgcHVsbCc6IgogbXNnc3RyWzBdICIgIExva2FsIGdyZW4ga29uZmlndXJlcmFkIGbDtnIgXCJnaXQgcHVsbFwiOiIKIG1zZ3N0clsxXSAiICBMb2thbGEgZ3JlbmFyIGtvbmZpZ3VyZXJhZGUgZsO2ciBcImdpdCBwdWxsXCI6IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyMTUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5MQogbXNnaWQgIiAgTG9jYWwgcmVmcyB3aWxsIGJlIG1pcnJvcmVkIGJ5ICdnaXQgcHVzaCciCiBtc2dzdHIgIiAgTG9rYWxhIHJlZmVyZW5zZXIgc3BlZ2xhcyBhdiBcImdpdCBwdXNoXCIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIyMQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgTG9jYWwgcmVmIGNvbmZpZ3VyZWQgZm9yICdnaXQgcHVzaCclczoiCiBtc2dpZF9wbHVyYWwgIiAgTG9jYWwgcmVmcyBjb25maWd1cmVkIGZvciAnZ2l0IHB1c2gnJXM6IgogbXNnc3RyWzBdICIgIExva2FsIHJlZmVyZW5zIGtvbmZpZ3VyZXJhZCBmw7ZyIFwiZ2l0IHB1c2hcIiVzOiIKIG1zZ3N0clsxXSAiICBMb2thbGEgcmVmZXJlbnNlciBrb25maWd1cmVyYWRlIGbDtnIgXCJnaXQgcHVzaFwiJXM6IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNDIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxOAogbXNnaWQgInNldCByZWZzL3JlbW90ZXMvPG5hbWU+L0hFQUQgYWNjb3JkaW5nIHRvIHJlbW90ZSIKIG1zZ3N0ciAic8OkdHQgcmVmcy9yZW1vdGVzLzxuYW1uPi9IRUFEIGVubGlndCBmasOkcnJlbiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjQ0CisjOiBidWlsdGluL3JlbW90ZS5jOjEzMjAKIG1zZ2lkICJkZWxldGUgcmVmcy9yZW1vdGVzLzxuYW1lPi9IRUFEIgogbXNnc3RyICJ0YSBib3J0IHJlZnMvcmVtb3Rlcy88bmFtbj4vSEVBRCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjU5CisjOiBidWlsdGluL3JlbW90ZS5jOjEzMzUKIG1zZ2lkICJDYW5ub3QgZGV0ZXJtaW5lIHJlbW90ZSBIRUFEIgogbXNnc3RyICJLYW4gaW50ZSBiZXN0w6RtbWEgSEVBRCBww6UgZmrDpHJyZW4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI2MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzM3CiBtc2dpZCAiTXVsdGlwbGUgcmVtb3RlIEhFQUQgYnJhbmNoZXMuIFBsZWFzZSBjaG9vc2Ugb25lIGV4cGxpY2l0bHkgd2l0aDoiCiBtc2dzdHIgIkZsZXJhIEhFQUQtZ3JlbmFyIHDDpSBmasOkcnJlbi4gVsOkbGogZW4gZXhwbGljaXQgbWVkOiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjcxCisjOiBidWlsdGluL3JlbW90ZS5jOjEzNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGRlbGV0ZSAlcyIKIG1zZ3N0ciAiS3VuZGUgaW50ZSB0YSBib3J0ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCByZWY6ICVzIgogbXNnc3RyICJJbnRlIGVuIGdpbHRpZyByZWZlcmVuczogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI4MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzZXR1cCAlcyIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBzdMOkbGxhIGluICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyOTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIgJXMgd2lsbCBiZWNvbWUgZGFuZ2xpbmchIgogbXNnc3RyICIgJXMga29tbWVyIGJsaSBkaW5nbGFuZGUhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMDAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIgJXMgaGFzIGJlY29tZSBkYW5nbGluZyEiCiBtc2dzdHIgIiAlcyBoYXIgYmxpdml0IGRpbmdsYW5kZSEiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlBydW5pbmcgJXMiCiBtc2dzdHIgIlJlbnNhciAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzExCisjOiBidWlsdGluL3JlbW90ZS5jOjEzODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVVJMOiAlcyIKIG1zZ3N0ciAiVVJMOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzI3CisjOiBidWlsdGluL3JlbW90ZS5jOjE0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiICogW3dvdWxkIHBydW5lXSAlcyIKIG1zZ3N0ciAiICogW3NrdWxsZSByZW5zYV0gJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMzMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNDA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAqIFtwcnVuZWRdICVzIgogbXNnc3RyICIgKiBbcmVuc2FkXSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzc1CisjOiBidWlsdGluL3JlbW90ZS5jOjE0NTEKIG1zZ2lkICJwcnVuZSByZW1vdGVzIGFmdGVyIGZldGNoaW5nIgogbXNnc3RyICJyZW5zYSBmasOkcnJhciBlZnRlciBow6RtdG5pbmciCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQzOCBidWlsdGluL3JlbW90ZS5jOjE0OTIgYnVpbHRpbi9yZW1vdGUuYzoxNTYwCisjOiBidWlsdGluL3JlbW90ZS5jOjE1MTQgYnVpbHRpbi9yZW1vdGUuYzoxNTY4IGJ1aWx0aW4vcmVtb3RlLmM6MTYzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIHJlbW90ZSAnJXMnIgogbXNnc3RyICJJbmdlbiBzw6VkYW4gZmrDpHJyIFwiJXNcIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDU0CisjOiBidWlsdGluL3JlbW90ZS5jOjE1MzAKIG1zZ2lkICJhZGQgYnJhbmNoIgogbXNnc3RyICJsw6RnZyB0aWxsIGdyZW4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ2MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM3CiBtc2dpZCAibm8gcmVtb3RlIHNwZWNpZmllZCIKIG1zZ3N0ciAiaW5nZW4gZmrDpHJyIGFuZ2F2cyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDc4CisjOiBidWlsdGluL3JlbW90ZS5jOjE1NTQKIG1zZ2lkICJxdWVyeSBwdXNoIFVSTHMgcmF0aGVyIHRoYW4gZmV0Y2ggVVJMcyIKIG1zZ3N0ciAiZnLDpWdhIHPDpG5kLVVSTDplciBpc3TDpGxsZXQgZsO2ciBow6RtdGEtVVJMOmVyIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0ODAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU1NgogbXNnaWQgInJldHVybiBhbGwgVVJMcyIKIG1zZ3N0ciAicmV0dXJuZXJhIGFsbGEgVVJMOmVyIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1MDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBVUkxzIGNvbmZpZ3VyZWQgZm9yIHJlbW90ZSAnJXMnIgogbXNnc3RyICJpbmdlbiBVUkw6ZXIgYW5naXZuYSBmw7ZyIGZqw6RycmVuIFwiJXNcIiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM0CisjOiBidWlsdGluL3JlbW90ZS5jOjE2MTAKIG1zZ2lkICJtYW5pcHVsYXRlIHB1c2ggVVJMcyIKIG1zZ3N0ciAibWFuaXB1bGVyYSBVUkw6YXIgZsO2ciBzw6RuZG5pbmciCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzNgorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEyCiBtc2dpZCAiYWRkIFVSTCIKIG1zZ3N0ciAibMOkZ2cgdGlsbCBVUkwiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzOAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjE0CiBtc2dpZCAiZGVsZXRlIFVSTHMiCiBtc2dzdHIgInRhIGJvcnQgVVJMOmFyIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1NDUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYyMQogbXNnaWQgIi0tYWRkIC0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS1hZGQgLS1kZWxldGUgZ2VyIGluZ2VuIG1lbmluZyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTg0CisjOiBidWlsdGluL3JlbW90ZS5jOjE2NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBvbGQgVVJMIHBhdHRlcm46ICVzIgogbXNnc3RyICJGZWxha3RpZyBnYW1tYWx0IFVSTC1tw7Zuc3RlcjogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU5MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggVVJMIGZvdW5kOiAlcyIKIG1zZ3N0ciAiSW5nZW4gc8OlZGFuIFVSTCBoaXR0YWRlczogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU5NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjcwCiBtc2dpZCAiV2lsbCBub3QgZGVsZXRlIGFsbCBub24tcHVzaCBVUkxzIgogbXNnc3RyICJLb21tZXIgaW50ZSB0YSBib3J0IGFsbGEgaWNrZS1zw6RuZC1VUkw6ZXIiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYxMAotbXNnaWQgImJlIHZlcmJvc2U7IG11c3QgYmUgcGxhY2VkIGJlZm9yZSBhIHN1YmNvbW1hbmQiCi1tc2dzdHIgInZhciBwcmF0c2FtOyBtw6VzdGUgc2tyaXZhcyBmw7ZyZSBldHQgdW5kZXJrb21tYW5kbyIKLQotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjQxCi0jLCBjLWZvcm1hdAotbXNnaWQgIlVua25vd24gc3ViY29tbWFuZDogJXMiCi1tc2dzdHIgIk9rw6RudCB1bmRlcmtvbW1hbmRvOiAlcyIKLQotIzogYnVpbHRpbi9yZXBhY2suYzoyMgorIzogYnVpbHRpbi9yZXBhY2suYzoyMwogbXNnaWQgImdpdCByZXBhY2sgWzxvcHRpb25zPl0iCiBtc2dzdHIgImdpdCByZXBhY2sgWzxmbGFnZ29yPl0iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MjcKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjgKIG1zZ2lkICIiCiAiSW5jcmVtZW50YWwgcmVwYWNrcyBhcmUgaW5jb21wYXRpYmxlIHdpdGggYml0bWFwIGluZGV4ZXMuICBVc2VcbiIKICItLW5vLXdyaXRlLWJpdG1hcC1pbmRleCBvciBkaXNhYmxlIHRoZSBwYWNrLndyaXRlYml0bWFwcyBjb25maWd1cmF0aW9uLiIKQEAgLTE2MDM1LDk1ICsxOTI3NSwxMzEgQEAKICJBbnbDpG5kIC0tbm8td3JpdGUtYml0bWFwLWluZGV4IGVsbGVyIGluYWt0aXZlcmEgaW5zdMOkbGxuaW5nZW5cbiIKICJwYWNrLndyaXRlYml0bWFwcyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyOTQKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MTkxCittc2dpZCAiY291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIKK21zZ3N0ciAia3VuZGUgaW50ZSBzdGFydGEgcGFjay1vYmplY3RzIGbDtnIgYXR0IHBhY2thIG9tIGtvbnRyYWt0c29iamVrdCIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyMzAgYnVpbHRpbi9yZXBhY2suYzo0MTYKK21zZ2lkICJyZXBhY2s6IEV4cGVjdGluZyBmdWxsIGhleCBvYmplY3QgSUQgbGluZXMgb25seSBmcm9tIHBhY2stb2JqZWN0cy4iCittc2dzdHIgIiIKKyJyZXBhY2s6IEbDtnJ2w6RudGFyIGtvbXBsZXR0YSBoZXgtb2JqZWt0LWlkLXJhZGVyIGVuZGFzdCBmcsOlbiBwYWNrLW9iamVjdHMuIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI1NAorbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICJrdW5kZSBpbnRlIGF2c2x1dGEgcGFjay1vYmplY3RzIGbDtnIgYXR0IHBhY2thIG9tIGtvbnRyYWt0c29iamVrdCIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyOTIKIG1zZ2lkICJwYWNrIGV2ZXJ5dGhpbmcgaW4gYSBzaW5nbGUgcGFjayIKIG1zZ3N0ciAicGFja2EgYWxsdCBpIGV0dCBlbmRhIHBha2V0IgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5NgorIzogYnVpbHRpbi9yZXBhY2suYzoyOTQKIG1zZ2lkICJzYW1lIGFzIC1hLCBhbmQgdHVybiB1bnJlYWNoYWJsZSBvYmplY3RzIGxvb3NlIgogbXNnc3RyICJzYW1tYSBzb20gLWEsIG9jaCBnw7ZyIG9uw6ViYXJhIG9iamVrdCBsw7ZzYSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzoyOTkKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk3CiBtc2dpZCAicmVtb3ZlIHJlZHVuZGFudCBwYWNrcywgYW5kIHJ1biBnaXQtcHJ1bmUtcGFja2VkIgogbXNnc3RyICJ0YSBib3J0IMO2dmVyZmzDtmRpZ2EgcGFrZXQsIG9jaCBrw7ZyIGdpdC1wcnVuZS1wYWNrZWQiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCisjOiBidWlsdGluL3JlcGFjay5jOjI5OQogbXNnaWQgInBhc3MgLS1uby1yZXVzZS1kZWx0YSB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICJzw6RuZCAtLW5vLXJldXNlLWRlbHRhIHRpbGwgZ2l0LXBhY2stb2JqZWN0cyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDMKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCiBtc2dpZCAicGFzcyAtLW5vLXJldXNlLW9iamVjdCB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICJzw6RuZCAtLW5vLXJldXNlLW9iamVjdCB0aWxsIGdpdC1wYWNrLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA1CisjOiBidWlsdGluL3JlcGFjay5jOjMwMwogbXNnaWQgImRvIG5vdCBydW4gZ2l0LXVwZGF0ZS1zZXJ2ZXItaW5mbyIKIG1zZ3N0ciAia8O2ciBpbnRlIGdpdC11cGRhdGUtc2VydmVyLWluZm8iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA4CisjOiBidWlsdGluL3JlcGFjay5jOjMwNgogbXNnaWQgInBhc3MgLS1sb2NhbCB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICJzw6RuZCAtLWxvY2FsIHRpbGwgZ2l0LXBhY2stb2JqZWN0cyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTAKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA4CiBtc2dpZCAid3JpdGUgYml0bWFwIGluZGV4IgogbXNnc3RyICJza3JpdiBiaXRrYXJ0aW5kZXgiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEyCisjOiBidWlsdGluL3JlcGFjay5jOjMxMAogbXNnaWQgInBhc3MgLS1kZWx0YS1pc2xhbmRzIHRvIGdpdC1wYWNrLW9iamVjdHMiCiBtc2dzdHIgInPDpG5kIC0tZGVsdGEtaXNsYW5kcyB0aWxsIGdpdC1wYWNrLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEzCisjOiBidWlsdGluL3JlcGFjay5jOjMxMQogbXNnaWQgImFwcHJveGlkYXRlIgogbXNnc3RyICJjaXJrYWRhdHVtIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxNAorIzogYnVpbHRpbi9yZXBhY2suYzozMTIKIG1zZ2lkICJ3aXRoIC1BLCBkbyBub3QgbG9vc2VuIG9iamVjdHMgb2xkZXIgdGhhbiB0aGlzIgogbXNnc3RyICJtZWQgLUEsIGzDtnMgaW50ZSB1cHAgb2JqZWt0IMOkbGRyZSDDpG4gZGV0dGEiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE2CisjOiBidWlsdGluL3JlcGFjay5jOjMxNAogbXNnaWQgIndpdGggLWEsIHJlcGFjayB1bnJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICJtZWQgLWEsIHBhY2thIG9tIG9uw6ViYXJhIG9iamVrdCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE2CiBtc2dpZCAic2l6ZSBvZiB0aGUgd2luZG93IHVzZWQgZm9yIGRlbHRhIGNvbXByZXNzaW9uIgogbXNnc3RyICJzdG9ybGVrIHDDpSBmw7Zuc3RlciBhbnbDpG50IGbDtnIgZGVsdGFrb21wcmltZXJpbmciCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE5IGJ1aWx0aW4vcmVwYWNrLmM6MzI1CisjOiBidWlsdGluL3JlcGFjay5jOjMxNyBidWlsdGluL3JlcGFjay5jOjMyMwogbXNnaWQgImJ5dGVzIgogbXNnc3RyICJieXRlIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyMAorIzogYnVpbHRpbi9yZXBhY2suYzozMTgKIG1zZ2lkICJzYW1lIGFzIHRoZSBhYm92ZSwgYnV0IGxpbWl0IG1lbW9yeSBzaXplIGluc3RlYWQgb2YgZW50cmllcyBjb3VudCIKIG1zZ3N0ciAic2FtbWEgc29tIG92YW4sIG1lbiBiZWdyw6Ruc2EgbWlubmVzc3Rvcmxla2VuIGlzdMOkbGxldCBmw7ZyIHBvc3RhbnRhbCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMjIKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIwCiBtc2dpZCAibGltaXRzIHRoZSBtYXhpbXVtIGRlbHRhIGRlcHRoIgogbXNnc3RyICJiZWdyw6Ruc2EgbWF4aW1hbHQgZGVsdGFkanVwIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyNAorIzogYnVpbHRpbi9yZXBhY2suYzozMjIKIG1zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gbnVtYmVyIG9mIHRocmVhZHMiCiBtc2dzdHIgImJlZ3LDpG5zYXIgbWF4aW1hbHQgYW50YWwgdHLDpWRhciIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMjYKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI0CiBtc2dpZCAibWF4aW11bSBzaXplIG9mIGVhY2ggcGFja2ZpbGUiCiBtc2dzdHIgIm1heGltYWwgc3RvcmxlayBww6UgdmFyamUgcGFrZXRmaWwiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI4CisjOiBidWlsdGluL3JlcGFjay5jOjMyNgogbXNnaWQgInJlcGFjayBvYmplY3RzIGluIHBhY2tzIG1hcmtlZCB3aXRoIC5rZWVwIgogbXNnc3RyICJwYWNrYSBvbSBvYmpla3QgaSBwYWtldCBtw6Rya3RhIG1lZCAua2VlcCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMzAKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI4CiBtc2dpZCAiZG8gbm90IHJlcGFjayB0aGlzIHBhY2siCiBtc2dzdHIgInBhY2thIGludGUgb20gZGV0dGEgcGFrZXQiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQwCisjOiBidWlsdGluL3JlcGFjay5jOjMzOAogbXNnaWQgImNhbm5vdCBkZWxldGUgcGFja3MgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCiBtc2dzdHIgImthbiBpbnRlIHRhIGJvcnQgcGFrZXQgaSBldHQgXCJwcmVjaW91cy1vYmplY3RzXCItYXJraXYiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQ0CisjOiBidWlsdGluL3JlcGFjay5jOjM0MgogbXNnaWQgIi0ta2VlcC11bnJlYWNoYWJsZSBhbmQgLUEgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1rZWVwLXVucmVhY2hhYmxlIG9jaCAtQSBrYW4gaW50ZSBhbnbDpG5kYXMgc2FtdGlkaWd0IgogCi0jOiBidWlsdGluL3JlcGFjay5jOjUyNworIzogYnVpbHRpbi9yZXBhY2suYzo0MjUKK21zZ2lkICJOb3RoaW5nIG5ldyB0byBwYWNrLiIKK21zZ3N0ciAiSW5nZXQgbnl0dCBhdHQgcGFja2EuIgorCisjOiBidWlsdGluL3JlcGFjay5jOjQ4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV0FSTklORzogU29tZSBwYWNrcyBpbiB1c2UgaGF2ZSBiZWVuIHJlbmFtZWQgYnlcbiIKKyJXQVJOSU5HOiBwcmVmaXhpbmcgb2xkLSB0byB0aGVpciBuYW1lLCBpbiBvcmRlciB0b1xuIgorIldBUk5JTkc6IHJlcGxhY2UgdGhlbSB3aXRoIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGVcbiIKKyJXQVJOSU5HOiBmaWxlLiAgQnV0IHRoZSBvcGVyYXRpb24gZmFpbGVkLCBhbmQgdGhlXG4iCisiV0FSTklORzogYXR0ZW1wdCB0byByZW5hbWUgdGhlbSBiYWNrIHRvIHRoZWlyXG4iCisiV0FSTklORzogb3JpZ2luYWwgbmFtZXMgYWxzbyBmYWlsZWQuXG4iCisiV0FSTklORzogUGxlYXNlIHJlbmFtZSB0aGVtIGluICVzIG1hbnVhbGx5OlxuIgorbXNnc3RyICIiCisiVkFSTklORzogTmFtbmVuIHDDpSBuw6VncmEgcGFrZXQgaGFyIGJ5dHRzIGdlbm9tIGF0dFxuIgorIlZBUk5JTkc6IGzDpGdnYSB0aWxsIG9sZC0gZsO2cmUgbmFtbmVuLCBmw7ZyIGF0dCBieXRhXG4iCisiVkFSTklORzogZGVtIG1vdCBkZW4gbnlhIHZlcnNpb25lbiBhdiBmaWxlbi4gTWVuXG4iCisiVkFSTklORzogb3BlcmF0aW9uZW4gbWlzc2x5Y2thZGVzLCBvY2ggZsO2cnPDtmtldCBhdHRcbiIKKyJWQVJOSU5HOiBieXRhIHRpbGxiYWthIHRpbGwgZGV0IHVyc3BydW5nbGlnYVxuIgorIlZBUk5JTkc6IG5hbW5ldCBtaXNzbHlja2FkZXMgb2Nrc8OlLlxuIgorIlZBUk5JTkc6IEJ5dCBuYW1uIHDDpSBkZW0gaSAlcyBtYW51ZWxsdDpcbiIKKworIzogYnVpbHRpbi9yZXBhY2suYzo1MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAnJXMnIgogbXNnc3RyICJtaXNzbHlja2FkZXMgdGEgYm9ydCBcIiVzXCIiCkBAIC0xNjE1MiwxMiArMTk0MjgsNyBAQAogbXNnaWQgImdpdCByZXBsYWNlIFstLWZvcm1hdD08Zm9ybWF0Pl0gWy1sIFs8cGF0dGVybj5dXSIKIG1zZ3N0ciAiZ2l0IHJlcGxhY2UgWy0tZm9ybWF0PTxmb3JtYXQ+XSBbLWwgWzxtw7Zuc3Rlcj5dXSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTggYnVpbHRpbi9yZXBsYWNlLmM6MjAzIGJ1aWx0aW4vcmVwbGFjZS5jOjIwNgotIywgYy1mb3JtYXQKLW1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmIgotbXNnc3RyICJtaXNzbHlja2FkZXMgc2zDpSB1cHAgXCIlc1wiIHNvbSBlbiBnaWx0aWcgcmVmZXJlbnMiCi0KLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjg2CisjOiBidWlsdGluL3JlcGxhY2UuYzo5MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiaW52YWxpZCByZXBsYWNlIGZvcm1hdCAnJXMnXG4iCkBAIC0xNjE2NiwyNyArMTk0MzcsMjcgQEAKICJvZ2lsdGlndCBlcnPDpHR0bmluZ3Nmb3JtYXQgXCIlc1wiXG4iCiAiZ2lsdGlnYSBmb3JtYXQgw6RyIFwic2hvcnRcIiwgXCJtZWRpdW1cIiBvY2ggXCJsb25nXCIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjEyMQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTI1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2UgcmVmICclcycgbm90IGZvdW5kIgogbXNnc3RyICJlcnPDpHR0bmluZ3NyZWZlcmVuc2VuIFwiJXNcIiBoaXR0YWRlcyBpbnRlIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoxMzcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWxldGVkIHJlcGxhY2UgcmVmICclcyciCiBtc2dzdHIgIlRvZyBib3J0IGVyc8OkdHRuaW5nc3JlZmVyZW5zZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoxNDkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE1MwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHJlZiBuYW1lIgogbXNnc3RyICJcIiVzXCIgw6RyIGludGUgZXR0IGdpbHRpZ3QgcmVmZXJlbnNuYW1uIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoxNTQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBsYWNlIHJlZiAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICJlcnPDpHR0bmluZ3NyZWZlcmVuc2VuIFwiJXNcIiBmaW5ucyByZWRhbiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTc0CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk9iamVjdHMgbXVzdCBiZSBvZiB0aGUgc2FtZSB0eXBlLlxuIgpAQCAtMTYxOTcsNzYgKzE5NDY4LDgxIEBACiAiXCIlc1wiIHBla2FyIHDDpSBldHQgZXJzYXR0IG9iamVrdCBtZWQgdHlwZW4gXCIlc1wiXG4iCiAibWVkYW4gXCIlc1wiIHBla2FyIHDDpSBldHQgZXJzw6R0dG5pbmdzb2JqZWt0IGF2IHR5cGVuIFwiJXNcIi4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjIyNQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MjI5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciB3cml0aW5nIgogbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgJXMgZsO2ciBza3Jpdm5pbmciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjIzOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MjQyCiBtc2dpZCAiY2F0LWZpbGUgcmVwb3J0ZWQgZmFpbHVyZSIKIG1zZ3N0ciAiY2F0LWZpbGUgcmFwcG9ydGVyYWRlIG1pc3NseWNrYW5kZSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjU0CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHJlYWRpbmciCiBtc2dzdHIgImthbiBpbnRlIMO2cHBuYSAlcyBmw7ZyIGzDpHNuaW5nIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyNjgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3MgogbXNnaWQgInVuYWJsZSB0byBzcGF3biBta3RyZWUiCiBtc2dzdHIgImthbiBpbnRlIHN0YXJ0YSBta3RyZWUiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3MgorIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjc2CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZnJvbSBta3RyZWUiCiBtc2dzdHIgImthbiBpbnRlIGzDpHNhIGZyw6VuIG1rdHJlZSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjgxCisjOiBidWlsdGluL3JlcGxhY2UuYzoyODUKIG1zZ2lkICJta3RyZWUgcmVwb3J0ZWQgZmFpbHVyZSIKIG1zZ3N0ciAibWt0cmVlIHJhcHBvcnRlcmFkZSBtaXNzbHlja2FuZGUiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4NQorIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg5CiBtc2dpZCAibWt0cmVlIGRpZCBub3QgcmV0dXJuIGFuIG9iamVjdCBuYW1lIgogbXNnc3RyICJta3RyZWUgcmV0dXJuZXJhZGUgaW50ZSBldHQgb2JqZWt0bmFtbiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjk0CisjOiBidWlsdGluL3JlcGxhY2UuYzoyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZzdGF0ICVzIgogbXNnc3RyICJrYW4gaW50ZSB1dGbDtnJhIFwiZnN0YXRcIiBww6UgJXMiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI5OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MzAzCiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIG9iamVjdCB0byBkYXRhYmFzZSIKIG1zZ3N0ciAia2FuIGludGUgc2tyaXZhIG9iamVrdGV0IHRpbGwgZGF0YWJhc2VuIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozMTggYnVpbHRpbi9yZXBsYWNlLmM6MzcxIGJ1aWx0aW4vcmVwbGFjZS5jOjQxNQotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDQ1CisjOiBidWlsdGluL3JlcGxhY2UuYzozMjIgYnVpbHRpbi9yZXBsYWNlLmM6Mzc4IGJ1aWx0aW4vcmVwbGFjZS5jOjQyNAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnIgogbXNnc3RyICJvYmpla3RuYW1uZXQgw6RyIGludGUgZ2lsdGlndDogXCIlc1wiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozMjIKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ2V0IG9iamVjdCB0eXBlIGZvciAlcyIKIG1zZ3N0ciAia2FuIGludGUgbMOkc2Egb2JqZWt0dHlwIGbDtnIgJXMiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMzOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MzQyCiBtc2dpZCAiZWRpdGluZyBvYmplY3QgZmlsZSBmYWlsZWQiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyByZWRpZ2VyYSBvYmpla3RmaWxlbiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzQ3CisjOiBidWlsdGluL3JlcGxhY2UuYzozNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IG9iamVjdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKIG1zZ3N0ciAibnl0dCBvYmpla3Qgw6RyIHNhbW1hIHNvbSBkZXQgZ2FtbGE6IFwiJXNcIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDA3CisjOiBidWlsdGluL3JlcGxhY2UuYzozODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlICVzIGFzIGEgY29tbWl0IgorbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthICVzIHNvbSBpbmNoZWNrbmluZyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDE2CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBtZXJnZXRhZyBpbiBjb21taXQgJyVzJyIKIG1zZ3N0ciAiZmVsYWt0aWcgc2FtbWFuc2xhZ25pbmdzdGFnZyBpIGluY2hlY2tuaW5nZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MDkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgbWVyZ2V0YWcgaW4gY29tbWl0ICclcyciCiBtc2dzdHIgImZlbGZvcm1hZCBzYW1tYW5zbGFnbmluZ3N0YWdnIGkgaW5jaGVja25pbmdlbiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQyMQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJvcmlnaW5hbCBjb21taXQgJyVzJyBjb250YWlucyBtZXJnZXRhZyAnJXMnIHRoYXQgaXMgZGlzY2FyZGVkOyB1c2UgLS1lZGl0ICIKQEAgLTE2Mjc1LDMxICsxOTU1MSwzMSBAQAogImRlbiB1cnNwcnVuZ2xpZ2EgaW5jaGVja25pbmdlbiBcIiVzXCIgaW5uZWjDpWxsZXIgc2FtbWFuc2xhZ25pbmdzdGFnZ2VuIFwiJXMiCiAiXCIgc29tIGhhciBmw7Zya2FzdGF0czsgYW52w6RuZCAtLWVkaXQgaXN0w6RsbGV0IGbDtnIgLS1ncmFmdCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDYwCisjOiBidWlsdGluL3JlcGxhY2UuYzo0NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlIG9yaWdpbmFsIGNvbW1pdCAnJXMnIGhhcyBhIGdwZyBzaWduYXR1cmUiCiBtc2dzdHIgImRlbiB1cnNwcnVuZ2xpZ2EgaW5jaGVja25pbmdlbiBcIiVzXCIgaGFyIGVuIGdwZy1zaWduYXR1ciIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDYxCisjOiBidWlsdGluL3JlcGxhY2UuYzo0NzAKIG1zZ2lkICJ0aGUgc2lnbmF0dXJlIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgcmVwbGFjZW1lbnQgY29tbWl0ISIKIG1zZ3N0ciAic2lnbmF0dXJlbiBrb21tZXIgYXR0IHRhcyBib3J0IGkgZXJzw6R0dG5pbmdzaW5jaGVja25pbmdlbiEiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDgwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSByZXBsYWNlbWVudCBjb21taXQgZm9yOiAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSBlcnPDpHR0bmluZ3NpbmNoZWNrbmluZyBmw7ZyOiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDg4CiAjLCBjLWZvcm1hdAogbXNnaWQgImdyYWZ0IGZvciAnJXMnIHVubmVjZXNzYXJ5IgogbXNnc3RyICJ5bXBuaW5nIGbDtnIgXCIlc1wiIGJlaMO2dnMgaW50ZSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDgyCisjOiBidWlsdGluL3JlcGxhY2UuYzo0OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IGNvbW1pdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKIG1zZ3N0ciAibnkgaW5jaGVja25pbmcgw6RyIHNhbW1hIHNvbSBkZW4gZ2FtbGE6IFwiJXNcIiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTE1CisjOiBidWlsdGluL3JlcGxhY2UuYzo1MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNvdWxkIG5vdCBjb252ZXJ0IHRoZSBmb2xsb3dpbmcgZ3JhZnQocyk6XG4iCkBAIC0xNjMwOCw3MSArMTk1ODQsNzEgQEAKICJrdW5kZSBpbnRlIGtvbnZlcnRlcmEgZsO2bGphbmRlIHltcG5pbmcoYXIpOlxuIgogIiVzIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1MzYKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0OAogbXNnaWQgImxpc3QgcmVwbGFjZSByZWZzIgogbXNnc3RyICJ2aXNhIGVyc8OkdHRuaW5nc3JlZmVyZW5zZXIiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzNworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ5CiBtc2dpZCAiZGVsZXRlIHJlcGxhY2UgcmVmcyIKIG1zZ3N0ciAidGEgYm9ydCBlcnPDpHR0bmluZ3NyZWZlcmVuc2VyIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1MzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MAogbXNnaWQgImVkaXQgZXhpc3Rpbmcgb2JqZWN0IgogbXNnc3RyICJyZWRpZ2VyYSBiZWZpbnRsaWd0IG9iamVrdCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM5CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTEKIG1zZ2lkICJjaGFuZ2UgYSBjb21taXQncyBwYXJlbnRzIgogbXNnc3RyICLDpG5kcmEgZW4gaW5jaGVja25pbmdzIGbDtnLDpGxkcmFyIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDAKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MgogbXNnaWQgImNvbnZlcnQgZXhpc3RpbmcgZ3JhZnQgZmlsZSIKIG1zZ3N0ciAia29udmVydGVyYSBiZWZpbnRsaWcgeW1wbmluZ3NmaWwiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUzCiBtc2dpZCAicmVwbGFjZSB0aGUgcmVmIGlmIGl0IGV4aXN0cyIKIG1zZ3N0ciAiZXJzw6R0dCByZWZlcmVuc2VuIG9tIGRlbiBmaW5ucyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQzCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTUKIG1zZ2lkICJkbyBub3QgcHJldHR5LXByaW50IGNvbnRlbnRzIGZvciAtLWVkaXQiCiBtc2dzdHIgImFudsOkbmQgaW50ZSBzbnlnZyB2aXNuaW5nIGF2IGlubmVow6VsbCBmw7ZyIC0tZWRpdCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ0CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTYKIG1zZ2lkICJ1c2UgdGhpcyBmb3JtYXQiCiBtc2dzdHIgImFudsOkbmQgZGV0dGEgZm9ybWF0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NTcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU2OQogbXNnaWQgIi0tZm9ybWF0IGNhbm5vdCBiZSB1c2VkIHdoZW4gbm90IGxpc3RpbmciCiBtc2dzdHIgIi0tZm9ybWF0IGthbiBpbnRlIGFudsOkbmRhcyB1dGFuZsO2ciBsaXN0bmluZyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY1CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NzcKIG1zZ2lkICItZiBvbmx5IG1ha2VzIHNlbnNlIHdoZW4gd3JpdGluZyBhIHJlcGxhY2VtZW50IgogbXNnc3RyICItZiBrYW4gZW5kYXN0IGFudsOkbmRhcyB2aWQgc2tyaXZuaW5nIGF2IGVyc8OkdHRuaW5nIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NjkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4MQogbXNnaWQgIi0tcmF3IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLWVkaXQiCiBtc2dzdHIgIi0tcmF3IGthbiBiYXJhIGFudsOkbmRhcyBtZWQgLS1lZGl0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NzUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4NwogbXNnaWQgIi1kIG5lZWRzIGF0IGxlYXN0IG9uZSBhcmd1bWVudCIKIG1zZ3N0ciAiLWQgYmVow7Z2ZXIgbWluc3QgZXR0IGFyZ3VtZW50IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1ODEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5MwogbXNnaWQgImJhZCBudW1iZXIgb2YgYXJndW1lbnRzIgogbXNnc3RyICJmZWwgYW50YWwgYXJndW1lbnQiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4NworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTk5CiBtc2dpZCAiLWUgbmVlZHMgZXhhY3RseSBvbmUgYXJndW1lbnQiCiBtc2dzdHIgIi1lIHRhciBleGFrdCBldHQgYXJndW1lbnQiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5MworIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA1CiBtc2dpZCAiLWcgbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IgogbXNnc3RyICItZyB0YXIgbWluc3QgZXR0IGFyZ3VtZW50IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1OTkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYxMQogbXNnaWQgIi0tY29udmVydC1ncmFmdC1maWxlIHRha2VzIG5vIGFyZ3VtZW50IgogbXNnc3RyICItLWNvbnZlcnQtZ3JhZnQtZmlsZSB0YXIgaW5nYSBhcmd1bWVudCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA1CisjOiBidWlsdGluL3JlcGxhY2UuYzo2MTcKIG1zZ2lkICJvbmx5IG9uZSBwYXR0ZXJuIGNhbiBiZSBnaXZlbiB3aXRoIC1sIgogbXNnc3RyICJlbmRhc3QgZXR0IG3Dtm5zdGVyIGthbiBhbmdlcyBtZWQgLWwiCiAKQEAgLTE2Mzg4LDEyNSArMTk2NjQsMTM3IEBACiBtc2dpZCAiJ2dpdCByZXJlcmUgZm9yZ2V0JyB3aXRob3V0IHBhdGhzIGlzIGRlcHJlY2F0ZWQiCiBtc2dzdHIgIlwiZ2l0IHJlcmVyZSBmb3JnZXRcIiB1dGFuIHPDtmt2w6RnYXIgw6RyIGbDtnLDpWxkcmF0IgogCi0jOiBidWlsdGluL3JlcmVyZS5jOjExMQorIzogYnVpbHRpbi9yZXJlcmUuYzoxMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdlbmVyYXRlIGRpZmYgZm9yICclcyciCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBza2FwYSBkaWZmIGbDtnIgXCIlc1wiIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMgogbXNnaWQgIiIKICJnaXQgcmVzZXQgWy0tbWl4ZWQgfCAtLXNvZnQgfCAtLWhhcmQgfCAtLW1lcmdlIHwgLS1rZWVwXSBbLXFdIFs8Y29tbWl0Pl0iCiBtc2dzdHIgIiIKICJnaXQgcmVzZXQgWy0tbWl4ZWQgfCAtLXNvZnQgfCAtLWhhcmQgfCAtLW1lcmdlIHwgLS1rZWVwXSBbLXFdIFs8aW5jaGVja25pbmc+XSIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMyCi1tc2dpZCAiZ2l0IHJlc2V0IFstcV0gWzx0cmVlLWlzaD5dIFstLV0gPHBhdGhzPi4uLiIKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMworbXNnaWQgImdpdCByZXNldCBbLXFdIFs8dHJlZS1pc2g+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCiBtc2dzdHIgImdpdCByZXNldCBbLXFdIFs8dHLDpGQtaWd0Pl0gWy0tXSA8c8O2a3bDpGdhcj4uLi4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMwotbXNnaWQgImdpdCByZXNldCAtLXBhdGNoIFs8dHJlZS1pc2g+XSBbLS1dIFs8cGF0aHM+Li4uXSIKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNAorbXNnaWQgIiIKKyJnaXQgcmVzZXQgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGUgWy0tcGF0aHNwZWMtZmlsZS1udWxdXSBbPHRyZWUtaXNoPl0iCittc2dzdHIgIiIKKyJnaXQgcmVzZXQgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGUgWy0tcGF0aHNwZWMtZmlsZS1udWxdXSBbPHRyw6RkLWlndD5dIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzUKK21zZ2lkICJnaXQgcmVzZXQgLS1wYXRjaCBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzcGVjPi4uLl0iCiBtc2dzdHIgImdpdCByZXNldCAtLXBhdGNoIFs8dHLDpGQtaWd0Pl0gWy0tXSBbPHPDtmt2w6RnYXI+Li4uXSIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJtaXhlZCIKIG1zZ3N0ciAiYmxhbmRhZCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJzb2Z0IgogbXNnc3RyICJtanVrIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgImhhcmQiCiBtc2dzdHIgImjDpXJkIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgIm1lcmdlIgogbXNnc3RyICJzYW1tYW5zbGFnbmluZyIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJrZWVwIgogbXNnc3RyICJiZWjDpWxsIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6ODAKKyM6IGJ1aWx0aW4vcmVzZXQuYzo4MgogbXNnaWQgIllvdSBkbyBub3QgaGF2ZSBhIHZhbGlkIEhFQUQuIgogbXNnc3RyICJEdSBoYXIgaW50ZSBlbiBnaWx0aWcgSEVBRC4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo4MgorIzogYnVpbHRpbi9yZXNldC5jOjg0CiBtc2dpZCAiRmFpbGVkIHRvIGZpbmQgdHJlZSBvZiBIRUFELiIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBoaXR0YSB0csOkZGV0IGbDtnIgSEVBRC4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo4OAorIzogYnVpbHRpbi9yZXNldC5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgJXMuIgogbXNnc3RyICJLdW5kZSBpbnRlIGhpdHRhIHRyw6RkZXQgZsO2ciAlcy4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoxOTIKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiSEVBRCBpcyBub3cgYXQgJXMiCittc2dzdHIgIkhFQUQgw6RyIG51IHDDpSAlcyIKKworIzogYnVpbHRpbi9yZXNldC5jOjE5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZG8gYSAlcyByZXNldCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UuIgogbXNnc3RyICJLYW4gaW50ZSB1dGbDtnJhIGVuICVzIMOldGVyc3TDpGxsbmluZyBtaXR0IGkgZW4gc2FtbWFuc2xhZ25pbmcuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MjkyCisjOiBidWlsdGluL3Jlc2V0LmM6Mjk0IGJ1aWx0aW4vc3Rhc2guYzo1MjAgYnVpbHRpbi9zdGFzaC5jOjU5NQorIzogYnVpbHRpbi9zdGFzaC5jOjYxOQogbXNnaWQgImJlIHF1aWV0LCBvbmx5IHJlcG9ydCBlcnJvcnMiCiBtc2dzdHIgInZhciB0eXN0LCByYXBwb3J0ZXJhIGVuZGFzdCBmZWwiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTYKIG1zZ2lkICJyZXNldCBIRUFEIGFuZCBpbmRleCIKIG1zZ3N0ciAiw6V0ZXJzdMOkbGwgSEVBRCBvY2ggaW5kZXgiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTUKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTcKIG1zZ2lkICJyZXNldCBvbmx5IEhFQUQiCiBtc2dzdHIgIsOldGVyc3TDpGxsIGVuZGFzdCBIRUFEIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mjk3IGJ1aWx0aW4vcmVzZXQuYzoyOTkKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTkgYnVpbHRpbi9yZXNldC5jOjMwMQogbXNnaWQgInJlc2V0IEhFQUQsIGluZGV4IGFuZCB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIsOldGVyc3TDpGxsIEhFQUQsIGluZGV4IG9jaCBhcmJldHNrYXRhbG9nIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzAxCisjOiBidWlsdGluL3Jlc2V0LmM6MzAzCiBtc2dpZCAicmVzZXQgSEVBRCBidXQga2VlcCBsb2NhbCBjaGFuZ2VzIgogbXNnc3RyICLDpXRlcnN0w6RsbCBIRUFEIG1lbiBiZWjDpWxsIGxva2FsYSDDpG5kcmluZ2FyIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzA3CisjOiBidWlsdGluL3Jlc2V0LmM6MzA5CiBtc2dpZCAicmVjb3JkIG9ubHkgdGhlIGZhY3QgdGhhdCByZW1vdmVkIHBhdGhzIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCiBtc2dzdHIgInJlZ2lzdHJlcmEgZW5kYXN0IGF0dCBib3J0dGFnbmEgc8O2a3bDpGdhciBrb21tZXIgbMOkZ2dhcyB0aWxsIHNlbmFyZSIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMyNQorIzogYnVpbHRpbi9yZXNldC5jOjM0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmV2aXNpb24uIgogbXNnc3RyICJLdW5kZSBpbnRlIHNsw6UgdXBwIFwiJXNcIiBzb20gZW4gZ2lsdGlnIHJldmlzaW9uLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMzMworIzogYnVpbHRpbi9yZXNldC5jOjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgdHJlZS4iCiBtc2dzdHIgIkt1bmRlIGludGUgc2zDpSB1cHAgXCIlc1wiIHNvbSBldHQgZ2lsdGlndCB0csOkZC4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNDIKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNjAKIG1zZ2lkICItLXBhdGNoIGlzIGluY29tcGF0aWJsZSB3aXRoIC0te2hhcmQsbWl4ZWQsc29mdH0iCiBtc2dzdHIgIi0tcGF0Y2ggw6RyIGlua29tcGF0aWJlbCBtZWQgLS17aGFyZCxtaXhlZCxzb2Z0fSIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM1MQorIzogYnVpbHRpbi9yZXNldC5jOjM3MAogbXNnaWQgIi0tbWl4ZWQgd2l0aCBwYXRocyBpcyBkZXByZWNhdGVkOyB1c2UgJ2dpdCByZXNldCAtLSA8cGF0aHM+JyBpbnN0ZWFkLiIKIG1zZ3N0ciAiIgogIi0tbWl4ZWQgcmVrb21tZW5kZXJhcyBpbnRlIG1lZCBzw7ZrdsOkZ2FyOyBhbnbDpG5kIFwiZ2l0IHJlc2V0IC0tIDxzw7ZrdsOkZ2FyPlwiLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM1MworIzogYnVpbHRpbi9yZXNldC5jOjM3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZG8gJXMgcmVzZXQgd2l0aCBwYXRocy4iCiBtc2dzdHIgIkthbiBpbnRlIGfDtnJhICVzIMOldGVyc3TDpGxsbmluZyBtZWQgc8O2a3bDpGdhci4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNjMKKyM6IGJ1aWx0aW4vcmVzZXQuYzozODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcmVzZXQgaXMgbm90IGFsbG93ZWQgaW4gYSBiYXJlIHJlcG9zaXRvcnkiCiBtc2dzdHIgIiVzIMOldGVyc3TDpGxsbmluZyB0aWxsw6V0cyBpbnRlIGkgZXR0IG5ha2V0IGFya2l2IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzY3CisjOiBidWlsdGluL3Jlc2V0LmM6MzkxCiBtc2dpZCAiLU4gY2FuIG9ubHkgYmUgdXNlZCB3aXRoIC0tbWl4ZWQiCiBtc2dzdHIgIi1OIGthbiBlbmRhc3QgYW52w6RuZGFzIG1lZCAtLW1peGVkIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mzg3CisjOiBidWlsdGluL3Jlc2V0LmM6NDEyCiBtc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZXNldDoiCiBtc2dzdHIgIk9rw7ZhZGUgw6RuZHJpbmdhciBlZnRlciDDpXRlcnN0w6RsbG5pbmc6IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkwCisjOiBidWlsdGluL3Jlc2V0LmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTE2NTIwLDUzICsxOTgwOCw0OCBAQAogImtvbmZpZ3VyYXRpb25zdmFyaWFiZWxuXG4iCiAicmVzZXQucXVpZXQgdGlsbCB0cnVlIGbDtnIgYXR0IGfDtnJhIGRldHRhIHRpbGwgZsO2cnZhbC5cbiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjQwMAorIzogYnVpbHRpbi9yZXNldC5jOjQyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVzZXQgaW5kZXggZmlsZSB0byByZXZpc2lvbiAnJXMnLiIKIG1zZ3N0ciAiS3VuZGUgaW50ZSDDpXRlcnN0w6RsbGEgaW5kZXhmaWxlbiB0aWxsIHZlcnNpb25lbiBcIiVzXCIuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6NDA0CisjOiBidWlsdGluL3Jlc2V0LmM6NDI5CiBtc2dpZCAiQ291bGQgbm90IHdyaXRlIG5ldyBpbmRleCBmaWxlLiIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBza3JpdmEgbnkgaW5kZXhmaWwuIgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NDAzCisjOiBidWlsdGluL3Jldi1saXN0LmM6NDk5CiBtc2dpZCAiY2Fubm90IGNvbWJpbmUgLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgYW5kIC0tbWlzc2luZyIKIG1zZ3N0ciAia2FuIGludGUga29tYmluZXJhIC0tZXhjbHVkZS1wcm9taXNvci1vYmplY3RzIG9jaCAtLW1pc3NpbmciCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0NjEKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1NjAKIG1zZ2lkICJvYmplY3QgZmlsdGVyaW5nIHJlcXVpcmVzIC0tb2JqZWN0cyIKIG1zZ3N0ciAib2JqZWt0ZmlsdHJlcmluZyBrcsOkdmVyIC0tb2JqZWN0cyIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQ2NAotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIHNwYXJzZSB2YWx1ZSAnJXMnIgotbXNnc3RyICJvZ2lsdGlndCB2w6RyZGUgZsO2ciBzcGFyc2U6IFwiJXNcIiIKLQotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjUwNQorIzogYnVpbHRpbi9yZXYtbGlzdC5jOjYxMAogbXNnaWQgInJldi1saXN0IGRvZXMgbm90IHN1cHBvcnQgZGlzcGxheSBvZiBub3RlcyIKIG1zZ3N0ciAicmV2LWxpc3Qgc3TDtmRlciBpbnRlIHZpc25pbmcgYXYgYW50ZWNrbmluZ2FyIgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NTA4Ci1tc2dpZCAiY2Fubm90IGNvbWJpbmUgLS11c2UtYml0bWFwLWluZGV4IHdpdGggb2JqZWN0IGZpbHRlcmluZyIKLW1zZ3N0ciAia2FuIGludGUga29tYmluZXJhIC0tdXNlLWJpdG1hcC1pbmRleCBtZWQgb2JqZWt0ZmlsdHJlcmluZyIKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo2MTUKK21zZ2lkICJtYXJrZWQgY291bnRpbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1vYmplY3RzIgorbXNnc3RyICJtYXJrZXJhZCByw6RrbmluZyDDpHIgaW5rb21wYXRpYmVsdCBtZWQgLS1vYmplY3RzIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQwNworIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MDgKIG1zZ2lkICJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHRpb25zPl0gLS0gWzxhcmdzPi4uLl0iCiBtc2dzdHIgImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPG9wdGlvbnM+XSAtLSBbPGFyZ3VtZW50Pi4uLl0iCiAKLSM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDEyCisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxMwogbXNnaWQgImtlZXAgdGhlIGAtLWAgcGFzc2VkIGFzIGFuIGFyZyIKIG1zZ3N0ciAiYmVow6VsbCBcIi0tXCIgc8OkbnQgc29tIGFyZ3VtZW50IgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxNAorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTUKIG1zZ2lkICJzdG9wIHBhcnNpbmcgYWZ0ZXIgdGhlIGZpcnN0IG5vbi1vcHRpb24gYXJndW1lbnQiCiBtc2dzdHIgInNsdXRhIHRvbGthIGVmdGVyIGbDtnJzdGEgYXJndW1lbnQgc29tIGludGUgw6RyIGZsYWdnYSIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTcKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE4CiBtc2dpZCAib3V0cHV0IGluIHN0dWNrIGxvbmcgZm9ybSIKIG1zZ3N0ciAidXRkYXRhIGZhc3QgaSBsw6VuZyBmb3JtIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjU1MAorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo1NTEKIG1zZ2lkICIiCiAiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IFs8b3B0aW9ucz5dIC0tIFs8YXJncz4uLi5dXG4iCiAiICAgb3I6IGdpdCByZXYtcGFyc2UgLS1zcS1xdW90ZSBbPGFyZz4uLi5dXG4iCkBAIC0xNjU5Nyw3MiArMTk4ODAsODEgQEAKIG1zZ2lkICJnaXQgY2hlcnJ5LXBpY2sgPHN1YmNvbW1hbmQ+IgogbXNnc3RyICJnaXQgY2hlcnJ5LXBpY2sgPHVuZGVya29tbWFuZG8+IgogCi0jOiBidWlsdGluL3JldmVydC5jOjkxCisjOiBidWlsdGluL3JldmVydC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGV4cGVjdHMgYSBudW1iZXIgZ3JlYXRlciB0aGFuIHplcm8iCittc2dzdHIgImZsYWdnYW4gXCIlc1wiIGFudGFyIGV0dCBudW1lcmlza3QgdsOkcmRlIHN0w7ZycmUgw6RuIG5vbGwiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6ICVzIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiCiBtc2dzdHIgIiVzOiAlcyBrYW4gaW50ZSBhbnbDpG5kYXMgbWVkICVzIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwMAorIzogYnVpbHRpbi9yZXZlcnQuYzoxMDIKIG1zZ2lkICJlbmQgcmV2ZXJ0IG9yIGNoZXJyeS1waWNrIHNlcXVlbmNlIgogbXNnc3RyICJhdnNsdXRhIHJldmVydC0gZWxsZXIgY2hlcnJ5LXBpY2stc2VrdmVucyIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCiBtc2dpZCAicmVzdW1lIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAiw6V0ZXJ1cHB0YSByZXZlcnQtIGVsbGVyIGNoZXJyeS1waWNrLXNla3ZlbnMiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAyCisjOiBidWlsdGluL3JldmVydC5jOjEwNAogbXNnaWQgImNhbmNlbCByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCiBtc2dzdHIgImF2YnJ5dCByZXZlcnQtIGVsbGVyIGNoZXJyeS1waWNrLXNla3ZlbnMiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCisjOiBidWlsdGluL3JldmVydC5jOjEwNQorbXNnaWQgInNraXAgY3VycmVudCBjb21taXQgYW5kIGNvbnRpbnVlIgorbXNnc3RyICJob3BwYSDDtnZlciBudXZhcmFuZGUgaW5jaGVja25pbmcgb2NoIGZvcnRzw6R0dCIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDcKIG1zZ2lkICJkb24ndCBhdXRvbWF0aWNhbGx5IGNvbW1pdCIKIG1zZ3N0ciAiY2hlY2thIGludGUgaW4gYXV0b21hdGlza3QiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA0CisjOiBidWlsdGluL3JldmVydC5jOjEwOAogbXNnaWQgImVkaXQgdGhlIGNvbW1pdCBtZXNzYWdlIgogbXNnc3RyICJyZWRpZ2VyYSBpbmNoZWNrbmluZ3NtZWRkZWxhbmRldCIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDcKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTExCiBtc2dpZCAicGFyZW50LW51bWJlciIKIG1zZ3N0ciAibnVtbWVyLXDDpS1mw7Zyw6RsZGVyIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwOAorIzogYnVpbHRpbi9yZXZlcnQuYzoxMTIKIG1zZ2lkICJzZWxlY3QgbWFpbmxpbmUgcGFyZW50IgogbXNnc3RyICJ2w6RsaiBmw7Zyw6RsZGVyIGbDtnIgaHV2dWRsaW5qZSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMTAKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0CiBtc2dpZCAibWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgInNhbW1hbnNsYWduaW5nc3N0cmF0ZWdpIgogCi0jOiBidWlsdGluL3JldmVydC5jOjExMgorIzogYnVpbHRpbi9yZXZlcnQuYzoxMTYKIG1zZ2lkICJvcHRpb24gZm9yIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICJhbHRlcm5hdGl2IGbDtnIgc2FtbWFuc2xhZ25pbmdzc3RyYXRlZ2kiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTIxCisjOiBidWlsdGluL3JldmVydC5jOjEyNQogbXNnaWQgImFwcGVuZCBjb21taXQgbmFtZSIKIG1zZ3N0ciAibMOkZ2cgdGlsbCBpbmNoZWNrbmluZ3NuYW1uIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEyMworIzogYnVpbHRpbi9yZXZlcnQuYzoxMjcKIG1zZ2lkICJwcmVzZXJ2ZSBpbml0aWFsbHkgZW1wdHkgY29tbWl0cyIKIG1zZ3N0ciAiYmVow6VsbCBpbmNoZWNrbmluZ2FyIHNvbSBiw7ZyamFyIHNvbSB0b21tYSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMjUKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI5CiBtc2dpZCAia2VlcCByZWR1bmRhbnQsIGVtcHR5IGNvbW1pdHMiCiBtc2dzdHIgImJlaMOlbGwgcmVkdW5kYW50YSwgdG9tbWEgaW5jaGVja25pbmdhciIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoyMTkKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjMyCiBtc2dpZCAicmV2ZXJ0IGZhaWxlZCIKIG1zZ3N0ciAiXCJyZXZlcnRcIiBtaXNzbHlja2FkZXMiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjMyCisjOiBidWlsdGluL3JldmVydC5jOjI0NQogbXNnaWQgImNoZXJyeS1waWNrIGZhaWxlZCIKIG1zZ3N0ciAiXCJjaGVycnktcGlja1wiIG1pc3NseWNrYWRlcyIKIAotIzogYnVpbHRpbi9ybS5jOjE4CisjOiBidWlsdGluL3JtLmM6MTkKIG1zZ2lkICJnaXQgcm0gWzxvcHRpb25zPl0gWy0tXSA8ZmlsZT4uLi4iCiBtc2dzdHIgImdpdCBybSBbPGZsYWdnb3I+XSBbLS1dIDxmaWw+Li4uIgogCi0jOiBidWlsdGluL3JtLmM6MjA2CisjOiBidWlsdGluL3JtLmM6MjA3CiBtc2dpZCAiIgogInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgc3RhZ2VkIGNvbnRlbnQgZGlmZmVyZW50IGZyb20gYm90aCB0aGVcbiIKICJmaWxlIGFuZCB0aGUgSEVBRDoiCkBAIC0xNjY3NCw3ICsxOTk2Niw3IEBACiBtc2dzdHJbMV0gIiIKICJmw7ZsamFuZGUgZmlsZXIgaGFyIGvDtmF0IGlubmVow6VsbCBzb20gc2tpbGplciBzaWcgYsOlZGUgZnLDpW4gZmlsZW4gb2NoIEhFQUQ6IgogCi0jOiBidWlsdGluL3JtLmM6MjExCisjOiBidWlsdGluL3JtLmM6MjEyCiBtc2dpZCAiIgogIlxuIgogIih1c2UgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCkBAIC0xNjY4MiwxMyArMTk5NzQsMTMgQEAKICJcbiIKICIoYW52w6RuZCAtZiBmw7ZyIGF0dCB0dmluZ2EgYm9ydHRhZ25pbmcpIgogCi0jOiBidWlsdGluL3JtLmM6MjE1CisjOiBidWlsdGluL3JtLmM6MjE2CiBtc2dpZCAidGhlIGZvbGxvd2luZyBmaWxlIGhhcyBjaGFuZ2VzIHN0YWdlZCBpbiB0aGUgaW5kZXg6IgogbXNnaWRfcGx1cmFsICJ0aGUgZm9sbG93aW5nIGZpbGVzIGhhdmUgY2hhbmdlcyBzdGFnZWQgaW4gdGhlIGluZGV4OiIKIG1zZ3N0clswXSAiZsO2bGphbmRlIGZpbCBoYXIgw6RuZHJpbmdhciBrw7ZhZGUgaSBpbmRleGV0OiIKIG1zZ3N0clsxXSAiZsO2bGphbmRlIGZpbGVyIGhhciDDpG5kcmluZ2FyIGvDtmFkZSBpIGluZGV4ZXQ6IgogCi0jOiBidWlsdGluL3JtLmM6MjE5IGJ1aWx0aW4vcm0uYzoyMjgKKyM6IGJ1aWx0aW4vcm0uYzoyMjAgYnVpbHRpbi9ybS5jOjIyOQogbXNnaWQgIiIKICJcbiIKICIodXNlIC0tY2FjaGVkIHRvIGtlZXAgdGhlIGZpbGUsIG9yIC1mIHRvIGZvcmNlIHJlbW92YWwpIgpAQCAtMTY2OTYsNDMgKzE5OTg4LDQ3IEBACiAiXG4iCiAiKGFudsOkbmQgLS1jYWNoZWQgZsO2ciBhdHQgYmVow6VsbGEgZmlsZW4gZWxsZXIgLWYgZsO2ciBhdHQgdHZpbmdhIGJvcnR0YWduaW5nKSIKIAotIzogYnVpbHRpbi9ybS5jOjIyNQorIzogYnVpbHRpbi9ybS5jOjIyNgogbXNnaWQgInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgbG9jYWwgbW9kaWZpY2F0aW9uczoiCiBtc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBsb2NhbCBtb2RpZmljYXRpb25zOiIKIG1zZ3N0clswXSAiZsO2bGphbmRlIGZpbCBoYXIgbG9rYWxhIMOkbmRyaW5nYXI6IgogbXNnc3RyWzFdICJmw7ZsamFuZGUgZmlsZXIgaGFyIGxva2FsYSDDpG5kcmluZ2FyOiIKIAotIzogYnVpbHRpbi9ybS5jOjI0MQorIzogYnVpbHRpbi9ybS5jOjI0MwogbXNnaWQgImRvIG5vdCBsaXN0IHJlbW92ZWQgZmlsZXMiCiBtc2dzdHIgImxpc3RhIGludGUgYm9ydHRhZ25hIGZpbGVyIgogCi0jOiBidWlsdGluL3JtLmM6MjQyCisjOiBidWlsdGluL3JtLmM6MjQ0CiBtc2dpZCAib25seSByZW1vdmUgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgInRhIGJhcmEgYm9ydCBmcsOlbiBpbmRleGV0IgogCi0jOiBidWlsdGluL3JtLmM6MjQzCisjOiBidWlsdGluL3JtLmM6MjQ1CiBtc2dpZCAib3ZlcnJpZGUgdGhlIHVwLXRvLWRhdGUgY2hlY2siCiBtc2dzdHIgIsO2dmVyc3R5ciDDoGpvdXItdGVzdGV0IgogCi0jOiBidWlsdGluL3JtLmM6MjQ0CisjOiBidWlsdGluL3JtLmM6MjQ2CiBtc2dpZCAiYWxsb3cgcmVjdXJzaXZlIHJlbW92YWwiCiBtc2dzdHIgInRpbGzDpXQgcmVrdXJzaXYgYm9ydHRhZ25pbmciCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDYKKyM6IGJ1aWx0aW4vcm0uYzoyNDgKIG1zZ2lkICJleGl0IHdpdGggYSB6ZXJvIHN0YXR1cyBldmVuIGlmIG5vdGhpbmcgbWF0Y2hlZCIKIG1zZ3N0ciAiYXZzbHV0YSBtZWQgbm9sbHN0YXR1cyDDpHZlbiBvbSBpbmdldCB0csOkZmZhZGVzIgogCi0jOiBidWlsdGluL3JtLmM6Mjg4CisjOiBidWlsdGluL3JtLmM6MjgyCittc2dpZCAiTm8gcGF0aHNwZWMgd2FzIGdpdmVuLiBXaGljaCBmaWxlcyBzaG91bGQgSSByZW1vdmU/IgorbXNnc3RyICJJbmdlbiBzw7ZrdsOkZ3NhbmdpdmVsc2UgZ2F2cy4gVmlsa2EgZmlsZXIgc2thIGphZyB0YSBib3J0PyIKKworIzogYnVpbHRpbi9ybS5jOjMwNQogbXNnaWQgInBsZWFzZSBzdGFnZSB5b3VyIGNoYW5nZXMgdG8gLmdpdG1vZHVsZXMgb3Igc3Rhc2ggdGhlbSB0byBwcm9jZWVkIgogbXNnc3RyICIiCiAibMO2YSBkaW5hIMOkbmRyaW5nYXIgaSAuZ2l0bW9kdWxlcyBlbGxlciBhbnbDpG5kIFwic3Rhc2hcIiBmw7ZyIGF0dCBmb3J0c8OkdHRhIgogCi0jOiBidWlsdGluL3JtLmM6MzA2CisjOiBidWlsdGluL3JtLmM6MzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCByZW1vdmluZyAnJXMnIHJlY3Vyc2l2ZWx5IHdpdGhvdXQgLXIiCiBtc2dzdHIgInRhciBpbnRlIGJvcnQgXCIlc1wiIHJla3Vyc2l2dCB1dGFuIC1yIgogCi0jOiBidWlsdGluL3JtLmM6MzQ1CisjOiBidWlsdGluL3JtLmM6MzYyCiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBybTogdW5hYmxlIHRvIHJlbW92ZSAlcyIKIG1zZ3N0ciAiZ2l0IHJtOiBrYW4gaW50ZSB0YSBib3J0ICVzIgpAQCAtMTY3NjUsMTggKzIwMDYxLDYgQEAKIG1zZ2lkICJwcmludCBzdGF0dXMgZnJvbSByZW1vdGUgaGVscGVyIgogbXNnc3RyICJ2aXNhIHN0YXR1cyBmcsOlbiBmasOkcnJoasOkbHBhcmUiCiAKLSM6IGJ1aWx0aW4vc2VydmUuYzo3Ci1tc2dpZCAiZ2l0IHNlcnZlIFs8b3B0aW9ucz5dIgotbXNnc3RyICJnaXQgc2VydmUgWzxmbGFnZ29yPl0iCi0KLSM6IGJ1aWx0aW4vc2VydmUuYzoxNyBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjMKLW1zZ2lkICJxdWl0IGFmdGVyIGEgc2luZ2xlIHJlcXVlc3QvcmVzcG9uc2UgZXhjaGFuZ2UiCi1tc2dzdHIgImF2c2x1dGEgb21lZGVsYmFydCBlZnRlciBmw7Zyc3RhIGFucm9wL3N2YXItdXR2w6R4bGluZyIKLQotIzogYnVpbHRpbi9zZXJ2ZS5jOjE5Ci1tc2dpZCAiZXhpdCBpbW1lZGlhdGVseSBhZnRlciBhZHZlcnRpc2luZyBjYXBhYmlsaXRpZXMiCi1tc2dzdHIgImF2c2x1dGEgb21lZGVsYmFydCBlZnRlciBrdW5nw7ZyZWxzZSBhdiBrYXBhYmlsaXRldGVyIgotCiAjOiBidWlsdGluL3Nob3J0bG9nLmM6MTQKIG1zZ2lkICJnaXQgc2hvcnRsb2cgWzxvcHRpb25zPl0gWzxyZXZpc2lvbi1yYW5nZT5dIFtbLS1dIDxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBzaG9ydGxvZyBbPGZsYWdnb3I+XSBbPHZlcnNpb25zaW50ZXJ2YWxsPl0gW1stLV0gPHPDtmt2w6RnPi4uLl0iCkBAIC0xNjgwOSw3ICsyMDA5Myw3IEBACiBtc2dpZCAiTGluZXdyYXAgb3V0cHV0IgogbXNnc3RyICJSYWRicnl0IHV0ZGF0YSIKIAotIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI5OQorIzogYnVpbHRpbi9zaG9ydGxvZy5jOjMwMQogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyBnaXZlbiBvdXRzaWRlIHJlcG9zaXRvcnkiCiBtc2dzdHIgImbDtnIgbcOlbmdhIGZsYWdnb3IgZ2l2bmEgdXRhbmbDtnIgYXJraXZldCIKIApAQCAtMTY4MzYsMTIwICsyMDEyMCwxMjAgQEAKIG1zZ3N0clswXSAiaWdub3JlcmFyICVzOyBrYW4gaW50ZSBoYW50ZXJhIG1lciDDpG4gJWQgcmVmZXJlbnMiCiBtc2dzdHJbMV0gImlnbm9yZXJhciAlczsga2FuIGludGUgaGFudGVyYSBtZXIgw6RuICVkIHJlZmVyZW5zZXIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo1NDkKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo1NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gbWF0Y2hpbmcgcmVmcyB3aXRoICVzIgogbXNnc3RyICJpbmdhIG1vdHN2YXJhbmRlIHJlZmVyZW5zZXIgbWVkICVzIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ2CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ1CiBtc2dpZCAic2hvdyByZW1vdGUtdHJhY2tpbmcgYW5kIGxvY2FsIGJyYW5jaGVzIgogbXNnc3RyICJ2aXNhIGZqw6RycnNww6VyYW5kZSBvY2ggbG9rYWxhIGdyZW5hciIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0OAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NwogbXNnaWQgInNob3cgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgogbXNnc3RyICJ2aXNhIGZqw6RycnNww6VyYW5kZSBncmVuYXIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTAKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDkKIG1zZ2lkICJjb2xvciAnKiErLScgY29ycmVzcG9uZGluZyB0byB0aGUgYnJhbmNoIgogbXNnc3RyICJmw6RyZ2EgXCIqISstXCIgZW5saWd0IGdyZW5lbiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MQogbXNnaWQgInNob3cgPG4+IG1vcmUgY29tbWl0cyBhZnRlciB0aGUgY29tbW9uIGFuY2VzdG9yIgogbXNnc3RyICJ2aXNhIDxuPiB5dHRlcmxpZ2FyZSBpbmNoZWNrbmluZ2FyIGVmdGVyIGdlbWVuc2FtIGFuZmFkZXIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTMKIG1zZ2lkICJzeW5vbnltIHRvIG1vcmU9LTEiCiBtc2dzdHIgInN5bm9ueW0gdGlsbCBtb3JlPS0xIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU1CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU0CiBtc2dpZCAic3VwcHJlc3MgbmFtaW5nIHN0cmluZ3MiCiBtc2dzdHIgInVuZGVydHljayBuYW1uc3Ryw6RuZ2FyIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU3CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU2CiBtc2dpZCAiaW5jbHVkZSB0aGUgY3VycmVudCBicmFuY2giCiBtc2dzdHIgImlua2x1ZGVyYSBha3R1ZWxsIGdyZW4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTkKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTgKIG1zZ2lkICJuYW1lIGNvbW1pdHMgd2l0aCB0aGVpciBvYmplY3QgbmFtZXMiCiBtc2dzdHIgIm5hbW5nZSBpbmNoZWNrbmluZ2FyIG1lZCBkZXJhcyBvYmpla3RuYW1uIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYxCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYwCiBtc2dpZCAic2hvdyBwb3NzaWJsZSBtZXJnZSBiYXNlcyIKIG1zZ3N0ciAidmlzYSBtw7ZqbGlnYSBzYW1tYW5zbGFnbmluZ3NiYXNlciIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MgogbXNnaWQgInNob3cgcmVmcyB1bnJlYWNoYWJsZSBmcm9tIGFueSBvdGhlciByZWYiCiBtc2dzdHIgInZpc2EgcmVmZXJlbnNlciBzb20gaW50ZSBrYW4gbsOlcyBmcsOlbiBuw6Vnb24gYW5uYW4gcmVmZXJlbnMiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjQKIG1zZ2lkICJzaG93IGNvbW1pdHMgaW4gdG9wb2xvZ2ljYWwgb3JkZXIiCiBtc2dzdHIgInZpc2EgaW5jaGVja25pbmdhciBpIHRvcG9sb2dpc2sgb3JkbmluZyIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2OAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NwogbXNnaWQgInNob3cgb25seSBjb21taXRzIG5vdCBvbiB0aGUgZmlyc3QgYnJhbmNoIgogbXNnc3RyICJ2aXNhIGVuZGFzdCBpbmNoZWNrbmluZ2FyIGludGUgcMOlIGRlbiBmw7Zyc3RhIGdyZW5lbiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2OQogbXNnaWQgInNob3cgbWVyZ2VzIHJlYWNoYWJsZSBmcm9tIG9ubHkgb25lIHRpcCIKIG1zZ3N0ciAidmlzYSBzYW1tYW5zbGFnbmluZ2FyIHNvbSBlbmRhc3Qga2FuIG7DpXMgZnLDpW4gZW4gc3BldHMiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzEKIG1zZ2lkICJ0b3BvbG9naWNhbGx5IHNvcnQsIG1haW50YWluaW5nIGRhdGUgb3JkZXIgd2hlcmUgcG9zc2libGUiCiBtc2dzdHIgInNvcnRlcmEgdG9wb2xvZ2lza3QsIGJlaMOlbGwgZGF0dW1vcmRuaW5nIG7DpHIgbcO2amxpZ3QiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzQKIG1zZ2lkICI8bj5bLDxiYXNlPl0iCiBtc2dzdHIgIjxuPlssPGJhcz5dIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6Njc2CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6Njc1CiBtc2dpZCAic2hvdyA8bj4gbW9zdCByZWNlbnQgcmVmLWxvZyBlbnRyaWVzIHN0YXJ0aW5nIGF0IGJhc2UiCiBtc2dzdHIgInZpc2EgPG4+IG55YXN0ZSByZWZsb2dncG9zdGVyIG1lZCBiw7ZyamFuIHDDpSBiYXMiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MTIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MTEKIG1zZ2lkICIiCiAiLS1yZWZsb2cgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tcmVtb3RlcywgLS1pbmRlcGVuZGVudCBvciAtLW1lcmdlLWJhc2UiCiBtc2dzdHIgIiIKICItLXJlZmxvZyDDpHIgaW5rb21wYXRpYmVsIG1lZCAtLWFsbCwgLS1yZW1vdGVzLCAtLWluZGVwZW5kZW50IGVsbGVyIC0tbWVyZ2UtIgogImJhc2UiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzUKIG1zZ2lkICJubyBicmFuY2hlcyBnaXZlbiwgYW5kIEhFQUQgaXMgbm90IHZhbGlkIgogbXNnc3RyICJpbmdhIGdyZW5hciBhbmdhdnMsIG9jaCBIRUFEIMOkciBpbnRlIGdpbHRpZ3QiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzkKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzgKIG1zZ2lkICItLXJlZmxvZyBvcHRpb24gbmVlZHMgb25lIGJyYW5jaCBuYW1lIgogbXNnc3RyICItLXJlZmxvZyBiZWjDtnZlciBldHQgbmFtbiBww6UgZW4gZ3JlbiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0MgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJvbmx5ICVkIGVudHJ5IGNhbiBiZSBzaG93biBhdCBvbmUgdGltZS4iCiBtc2dpZF9wbHVyYWwgIm9ubHkgJWQgZW50cmllcyBjYW4gYmUgc2hvd24gYXQgb25lIHRpbWUuIgogbXNnc3RyWzBdICJtYXhpbWFsdCAlZCBwb3N0ZXIga2FuIHZpc2FzIHNhbXRpZGlndC4iCiBtc2dzdHJbMV0gIm1heGltYWx0ICVkIHBvc3RlciBrYW4gdmlzYXMgc2FtdGlkaWd0LiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0NgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIHJlZiAlcyIKIG1zZ3N0ciAiaW5nZW4gc8OlZGFuIHJlZmVyZW5zICVzIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODMwCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJldi4iCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJldnMuIgogbXNnc3RyWzBdICJrYW4gaW50ZSBoYW50ZXJhIG1lciDDpG4gJWQgcmV2aXNpb24uIgogbXNnc3RyWzFdICJrYW4gaW50ZSBoYW50ZXJhIG1lciDDpG4gJWQgcmV2aXNpb25lci4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzQKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZWYuIgogbXNnc3RyICJcIiVzXCIgw6RyIGludGUgZW4gZ2lsdGlnIHJlZmVyZW5zLiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzNworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmluZCBjb21taXQgJXMgKCVzKSIKIG1zZ3N0ciAiaGl0dGFyIGludGUgaW5jaGVja25pbmcgJXMgKCVzKSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjExCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTIKIG1zZ2lkICIiCiAiZ2l0IHNob3ctcmVmIFstcSB8IC0tcXVpZXRdIFstLXZlcmlmeV0gWy0taGVhZF0gWy1kIHwgLS1kZXJlZmVyZW5jZV0gWy1zIHwgLS0iCiAiaGFzaFs9PG4+XV0gWy0tYWJicmV2Wz08bj5dXSBbLS10YWdzXSBbLS1oZWFkc10gWy0tXSBbPHBhdHRlcm4+Li4uXSIKQEAgLTE2OTU3LDQyICsyMDI0MSwzNDggQEAKICJnaXQgc2hvdy1yZWYgWy1xIHwgLS1xdWlldF0gWy0tdmVyaWZ5XSBbLS1oZWFkXSBbLWQgfCAtLWRlcmVmZXJlbmNlXSBbLXMgfCAtLSIKICJoYXNoWz08bj5dXSBbLS1hYmJyZXZbPTxuPl1dIFstLXRhZ3NdIFstLWhlYWRzXSBbLS1dIFs8bcO2bnN0ZXI+Li4uXSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjEyCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTMKIG1zZ2lkICJnaXQgc2hvdy1yZWYgLS1leGNsdWRlLWV4aXN0aW5nWz08cGF0dGVybj5dIgogbXNnc3RyICJnaXQgc2hvdy1yZWYgLS1leGNsdWRlLWV4aXN0aW5nWz08bcO2bnN0ZXI+XSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2MQorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2MgogbXNnaWQgIm9ubHkgc2hvdyB0YWdzIChjYW4gYmUgY29tYmluZWQgd2l0aCBoZWFkcykiCiBtc2dzdHIgInZpc2EgZW5kYXN0IHRhZ2dhciAoa2FuIGtvbWJpbmVyYXMgbWVkIGh1dnVkZW4pIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTYyCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYzCiBtc2dpZCAib25seSBzaG93IGhlYWRzIChjYW4gYmUgY29tYmluZWQgd2l0aCB0YWdzKSIKIG1zZ3N0ciAidmlzYSBlbmRhc3QgaHV2dWRlbiAoa2FuIGtvbWJpbmVyYXMgbWVkIHRhZ2dhcikiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjMKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjQKIG1zZ2lkICJzdHJpY3RlciByZWZlcmVuY2UgY2hlY2tpbmcsIHJlcXVpcmVzIGV4YWN0IHJlZiBwYXRoIgogbXNnc3RyICJzdHJpa3RhcmUgcmVmZXJlbnNrb250cm9sbCwga3LDpHZlciBleGFrdCByZWZlcmVuc3PDtmt2w6RnIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTY2IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjgKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjcgYnVpbHRpbi9zaG93LXJlZi5jOjE2OQogbXNnaWQgInNob3cgdGhlIEhFQUQgcmVmZXJlbmNlLCBldmVuIGlmIGl0IHdvdWxkIGJlIGZpbHRlcmVkIG91dCIKIG1zZ3N0ciAidmlzYSBIRUFELXJlZnJlbnMsIMOkdmVuIG7DpHIgZGVuIHNrdWxsZSBmaWx0cmVyYXMgdXQiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzAKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzEKIG1zZ2lkICJkZXJlZmVyZW5jZSB0YWdzIGludG8gb2JqZWN0IElEcyIKIG1zZ3N0ciAiYXZyZWZlcmVyYSB0YWdnYXIgdGlsbCBvYmpla3QtaWQiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzIKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzMKIG1zZ2lkICJvbmx5IHNob3cgU0hBMSBoYXNoIHVzaW5nIDxuPiBkaWdpdHMiCiBtc2dzdHIgInZpc2EgU0hBMS1oYXNoIGVuZGFzdCBtZWQgPG4+IHNpZmZyb3IiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzYKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzcKIG1zZ2lkICJkbyBub3QgcHJpbnQgcmVzdWx0cyB0byBzdGRvdXQgKHVzZWZ1bCB3aXRoIC0tdmVyaWZ5KSIKIG1zZ3N0ciAidmlzYSBpbnRlIHJlc3VsdGF0IHDDpSBzdGFuZGFyZCB1dCAoYW52w6RuZGJhcnQgbWVkIC0tdmVyaWZ5KSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OQogbXNnaWQgInNob3cgcmVmcyBmcm9tIHN0ZGluIHRoYXQgYXJlbid0IGluIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgInZpc2EgcmVmZXJlbnNlciBmcsOlbiBzdGFuZGFyZCBpbiBzb20gaW50ZSBmaW5ucyBpIGxva2FsdCBhcmtpdiIKIAorIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyMQorbXNnaWQgImdpdCBzcGFyc2UtY2hlY2tvdXQgKGluaXR8bGlzdHxzZXR8YWRkfGRpc2FibGUpIDxvcHRpb25zPiIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCAoaW5pdHxsaXN0fHNldHxhZGR8ZGlzYWJsZSkgPGZsYWdnb3I+IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjY0Cittc2dpZCAidGhpcyB3b3JrdHJlZSBpcyBub3Qgc3BhcnNlIChzcGFyc2UtY2hlY2tvdXQgZmlsZSBtYXkgbm90IGV4aXN0KSIKK21zZ3N0ciAiIgorImFyYmV0c2thdGFsb2dlbiDDpHIgaW50ZSBnbGVzdCAoc3BhcnNlLWNoZWNrb3V0LWZpbGVuIGthbnNrZSBpbnRlIGZpbm5zKSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyMjUKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSBmb3Igc3BhcnNlLWNoZWNrb3V0IGZpbGUiCittc2dzdHIgIm1pc3NseWNrYWRlcyBza2FwYSBrYXRhbG9nIGbDtnIgXCJzcGFyc2UtY2hlY2tvdXRcIi1maWxlbiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gc2V0IGV4dGVuc2lvbnMud29ya3RyZWVDb25maWcgc2V0dGluZyIKK21zZ3N0ciAibWlzc2x5Y2thZGVzIMOkbmRyYSBpbnN0w6RsbG5pbmdlbiBleHRlbnNpb25zLndvcmt0cmVlQ29uZmlnIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjI4MworbXNnaWQgImdpdCBzcGFyc2UtY2hlY2tvdXQgaW5pdCBbLS1jb25lXSIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCBpbml0IFstLWNvbmVdIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjMwMgorbXNnaWQgImluaXRpYWxpemUgdGhlIHNwYXJzZS1jaGVja291dCBpbiBjb25lIG1vZGUiCittc2dzdHIgImluaXRpZXJhIHNwYXJzZS1jaGVja291dCBpIGtvbmzDpGdlIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjMwOAorbXNnaWQgImluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJpbml0aWVyYSBzcGFyc2UtY2hlY2tvdXQiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyciCittc2dzdHIgIm1pc3NseWNrYWRlcyDDtnBwbmEgXCIlc1wiIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjM5OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgbm9ybWFsaXplIHBhdGggJXMiCittc2dzdHIgImt1bmRlIGludGUgbm9ybWFsaXNlcmEgc8O2a3bDpGdlbiBcIiVzXCIiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDEwCittc2dpZCAiZ2l0IHNwYXJzZS1jaGVja291dCAoc2V0fGFkZCkgKC0tc3RkaW4gfCA8cGF0dGVybnM+KSIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCAoc2V0fGFkZCkgKC0tc3RkaW4gfCA8bcO2bnN0ZXI+KSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVucXVvdGUgQy1zdHlsZSBzdHJpbmcgJyVzJyIKK21zZ3N0ciAia2FuIGludGUgdGEgYm9ydCBjaXRlcmluZyBhdiBDLXN0csOkbmcgXCIlc1wiIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjQ4OSBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjUxMworbXNnaWQgInVuYWJsZSB0byBsb2FkIGV4aXN0aW5nIHNwYXJzZS1jaGVja291dCBwYXR0ZXJucyIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBpbiBleGlzdGVyYW5kZSBtw7Zuc3RlciBmw7ZyIGdsZXMgdXRjaGVja25pbmciCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTU4Cittc2dpZCAicmVhZCBwYXR0ZXJucyBmcm9tIHN0YW5kYXJkIGluIgorbXNnc3RyICJsw6RzIG3Dtm5zdGVyIGZyw6VuIHN0YW5kYXJkIGluIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjU2NAorbXNnaWQgInNldCBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMiCittc2dzdHIgInN0w6RsbCBpbiBmaWx0ZXIgZsO2ciBnbGVzIHV0Y2hlY2tuaW5nIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjU4MQorbXNnaWQgImRpc2FibGUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJpbmFrdGl2ZXJhIGdsZXMgdXRjaGVja25pbmciCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTkzCittc2dpZCAiZXJyb3Igd2hpbGUgcmVmcmVzaGluZyB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAiZmVsIHZpZCB1cHBkYXRlcmluZyBhdiBhcmJldHNrYXRhbG9nIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjIgYnVpbHRpbi9zdGFzaC5jOjM4Cittc2dpZCAiZ2l0IHN0YXNoIGxpc3QgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCBzdGFzaCBsaXN0IFs8ZmxhZ2dvcj5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjMgYnVpbHRpbi9zdGFzaC5jOjQzCittc2dpZCAiZ2l0IHN0YXNoIHNob3cgWzxvcHRpb25zPl0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggc2hvdyBbPGZsYWdnb3I+XSBbPHN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNCBidWlsdGluL3N0YXNoLmM6NDgKK21zZ2lkICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjUKK21zZ2lkICJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjYgYnVpbHRpbi9zdGFzaC5jOjYzCittc2dpZCAiZ2l0IHN0YXNoIGJyYW5jaCA8YnJhbmNobmFtZT4gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggYnJhbmNoIDxncmVubmFtbj4gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjcgYnVpbHRpbi9zdGFzaC5jOjY4Cittc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIgorbXNnc3RyICJnaXQgc3Rhc2ggY2xlYXIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyOAorbXNnaWQgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XVxuIgorIiAgICAgICAgICBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZWRkZWxhbmRlPl1cbiIKKyIgICAgICAgICAgWy0tcGF0aHNwZWMtZnJvbS1maWxlPTxmaWw+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV1cbiIKKyIgICAgICAgICAgWy0tXSBbPHPDtmt2w6RnPi4uLl1dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MzIgYnVpbHRpbi9zdGFzaC5jOjg1Cittc2dpZCAiIgorImdpdCBzdGFzaCBzYXZlIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbPG1lc3NhZ2U+XSIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBzYXZlIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbPG1lZGRlbGFuZGU+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjUzCittc2dpZCAiZ2l0IHN0YXNoIHBvcCBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIHBvcCBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU4Cittc2dpZCAiZ2l0IHN0YXNoIGFwcGx5IFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggYXBwbHkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo3MworbXNnaWQgImdpdCBzdGFzaCBzdG9yZSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl0gWy1xfC0tcXVpZXRdIDxjb21taXQ+IgorbXNnc3RyICJnaXQgc3Rhc2ggc3RvcmUgWy1tfC0tbWVzc2FnZSA8bWVkZGVsYW5kZT5dIFstcXwtLXF1aWV0XSA8aW5jaGVja25pbmc+IgorCisjOiBidWlsdGluL3N0YXNoLmM6NzgKK21zZ2lkICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZWRkZWxhbmRlPl1cbiIKKyIgICAgICAgICAgWy0tXSBbPHPDtmt2w6RnPi4uLl1dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgc3Rhc2gtbGlrZSBjb21taXQiCittc2dzdHIgIlwiJXNcIiDDpHIgaW50ZSBlbiBcInN0YXNoXCItbGlrbmFuZGUgaW5jaGVja25pbmciCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDolcyIKK21zZ3N0ciAiRsO2ciBtw6VuZ2EgcmV2aXNpb25lciBhbmdpdm5hOiVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTYyIGdpdC1sZWdhY3ktc3Rhc2guc2g6NTQ5Cittc2dpZCAiTm8gc3Rhc2ggZW50cmllcyBmb3VuZC4iCittc2dzdHIgIkluZ2EgXCJzdGFzaFwiLXBvc3RlciBoaXR0YWRlcy4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgcmVmZXJlbmNlIgorbXNnc3RyICIlcyDDpHIgaW50ZSBlbiBnaWx0aWd0IHJlZmVyZW5zIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjI1IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzUKK21zZ2lkICJnaXQgc3Rhc2ggY2xlYXIgd2l0aCBwYXJhbWV0ZXJzIGlzIHVuaW1wbGVtZW50ZWQiCittc2dzdHIgIlwiZ2l0IHN0YXNoIGNsZWFyXCIgbWVkIHBhcmFtZXRyYXIgaGFyIGludGUgaW1wbGVtZW50ZXJhdHMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MDQKK21zZ2lkICJjYW5ub3QgYXBwbHkgYSBzdGFzaCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UiCittc2dzdHIgImthbiBpbnRlIHRpbGzDpG1wYSBlbiBcInN0YXNoXCIgbWl0dCBpIGVuIHNhbW1hbnNsYWduaW5nIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSBkaWZmICVzXiEuIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrYXBhIGRpZmYgJXNeIS4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MjIKK21zZ2lkICJjb25mbGljdHMgaW4gaW5kZXguVHJ5IHdpdGhvdXQgLS1pbmRleC4iCittc2dzdHIgImtvbmZsaWt0ZXIgaSBpbmRleGV0LiBUZXN0YSB1dGFuIC0taW5kZXguIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDI4Cittc2dpZCAiY291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKK21zZ3N0ciAia3VuZGUgaW50ZSBzcGFyYSBpbmRleHRyw6RkIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDM3Cittc2dpZCAiY291bGQgbm90IHJlc3RvcmUgdW50cmFja2VkIGZpbGVzIGZyb20gc3Rhc2giCittc2dzdHIgImt1bmRlIGludGUgw6V0ZXJzdMOkbGxhIG9zcMOlcmFkZSBmaWxlciBmcsOlbiBzdGFzaC1wb3N0IgorCisjOiBidWlsdGluL3N0YXNoLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIk1lcmdpbmcgJXMgd2l0aCAlcyIKK21zZ3N0ciAiU2zDpXIgaWhvcCAlcyBtZWQgJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0NjEgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2ODEKK21zZ2lkICJJbmRleCB3YXMgbm90IHVuc3Rhc2hlZC4iCittc2dzdHIgIkluZGV4ZXQgaGFyIGludGUgdGFnaXRzIHVwcCB1ciBcInN0YXNoXCI6ZW4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1MjIgYnVpbHRpbi9zdGFzaC5jOjYyMQorbXNnaWQgImF0dGVtcHQgdG8gcmVjcmVhdGUgdGhlIGluZGV4IgorbXNnc3RyICJmw7Zyc8O2ayDDpXRlcnNrYXBhIGluZGV4ZXQiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRHJvcHBlZCAlcyAoJXMpIgorbXNnc3RyICJLYXN0YWRlICVzICglcykiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IENvdWxkIG5vdCBkcm9wIHN0YXNoIGVudHJ5IgorbXNnc3RyICIlczogS3VuZGUgaW50ZSBrYXN0YSBcInN0YXNoXCItcG9zdCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU4MworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHN0YXNoIHJlZmVyZW5jZSIKK21zZ3N0ciAiXCIlc1wiIMOkciBpbnRlIGVuIFwic3Rhc2hcIi1yZWZlcmVucyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjYzMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjY5NQorbXNnaWQgIlRoZSBzdGFzaCBlbnRyeSBpcyBrZXB0IGluIGNhc2UgeW91IG5lZWQgaXQgYWdhaW4uIgorbXNnc3RyICJTdGFzaC1wb3N0ZW4gYmVow6VsbHMgaWZhbGwgZHUgYmVow7Z2ZXIgZGVuIGlnZW4uIgorCisjOiBidWlsdGluL3N0YXNoLmM6NjU2IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzEzCittc2dpZCAiTm8gYnJhbmNoIG5hbWUgc3BlY2lmaWVkIgorbXNnc3RyICJJbmdldCBncmVubmFtbiBhbmdhdnMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo3OTYgYnVpbHRpbi9zdGFzaC5jOjgzMworIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgdXBkYXRlICVzIHdpdGggJXMiCittc2dzdHIgIkthbiBpbnRlIHVwcGRhdGVyYSAlcyBtZWQgJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo4MTQgYnVpbHRpbi9zdGFzaC5jOjE0NzggYnVpbHRpbi9zdGFzaC5jOjE1NDMKK21zZ2lkICJzdGFzaCBtZXNzYWdlIgorbXNnc3RyICJcInN0YXNoXCItbWVkZGVsYW5kZSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjgyNAorbXNnaWQgIlwiZ2l0IHN0YXNoIHN0b3JlXCIgcmVxdWlyZXMgb25lIDxjb21taXQ+IGFyZ3VtZW50IgorbXNnc3RyICJcImdpdCBzdGFzaCBzdG9yZVwiIGtyw6R2ZXIgZXR0IDxpbmNoZWNrbmluZz4tYXJndW1lbnQiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMDQ5IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjE4Cittc2dpZCAiTm8gY2hhbmdlcyBzZWxlY3RlZCIKK21zZ3N0ciAiSW5nYSDDpG5kcmluZ2FyIHZhbGRhIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE0OSBnaXQtbGVnYWN5LXN0YXNoLnNoOjE1MAorbXNnaWQgIllvdSBkbyBub3QgaGF2ZSB0aGUgaW5pdGlhbCBjb21taXQgeWV0IgorbXNnc3RyICJEdSBoYXIgaW50ZSBkZW4gZsO2cnN0YSBpbmNoZWNrbmluZ2VuIMOkbm51IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE3NiBnaXQtbGVnYWN5LXN0YXNoLnNoOjE2NQorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IGluZGV4IHN0YXRlIgorbXNnc3RyICJLYW4gaW50ZSBzcGFyYSBha3R1ZWxsdCB0aWxsc3TDpW5kIGbDtnIgaW5kZXhldCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExODUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxODAKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgdW50cmFja2VkIGZpbGVzIgorbXNnc3RyICJLYW4gaW50ZSBzcGFyYSBvc3DDpXJhZGUgZmlsZXIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTk2IGJ1aWx0aW4vc3Rhc2guYzoxMjA1IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjAxCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIxNAorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHdvcmt0cmVlIHN0YXRlIgorbXNnc3RyICJLYW4gaW50ZSBzcGFyYSBha3R1ZWxsdCB0aWxsc3TDpW5kIGbDtnIgYXJiZXRza2F0YWxvZ2VuIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTIzMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjIzNAorbXNnaWQgIkNhbm5vdCByZWNvcmQgd29ya2luZyB0cmVlIHN0YXRlIgorbXNnc3RyICJLYW4gaW50ZSByZWdpc3RyZXJhIHRpbGxzdMOlbmQgZsO2ciBhcmJldHNrYXRhbG9nIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI4MiBnaXQtbGVnYWN5LXN0YXNoLnNoOjMzOAorbXNnaWQgIkNhbid0IHVzZSAtLXBhdGNoIGFuZCAtLWluY2x1ZGUtdW50cmFja2VkIG9yIC0tYWxsIGF0IHRoZSBzYW1lIHRpbWUiCittc2dzdHIgIkthbiBpbnRlIGFudsOkbmRhIC0tcGF0Y2ggb2NoIC0taW5jbHVkZS11bnRyYWNrZWQgZWxsZXIgLS1hbGwgc2FtdGlkaWd0IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI5OAorbXNnaWQgIkRpZCB5b3UgZm9yZ2V0IHRvICdnaXQgYWRkJz8iCittc2dzdHIgIkdsw7ZtZGUgZHUgYW52w6RuZGEgXCJnaXQgYWRkXCI/IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTMxMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjM0NgorbXNnaWQgIk5vIGxvY2FsIGNoYW5nZXMgdG8gc2F2ZSIKK21zZ3N0ciAiSW5nYSBsb2thbGEgw6RuZHJpbmdhciBhdHQgc3BhcmEiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzIwIGdpdC1sZWdhY3ktc3Rhc2guc2g6MzUxCittc2dpZCAiQ2Fubm90IGluaXRpYWxpemUgc3Rhc2giCittc2dzdHIgIkthbiBpbnRlIGluaXRpZXJhIFwic3Rhc2hcIiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMzUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTUKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBzdGF0dXMiCittc2dzdHIgIkthbiBpbnRlIHNwYXJhIGFrdHVlbGwgc3RhdHVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTM0MAorIywgYy1mb3JtYXQKK21zZ2lkICJTYXZlZCB3b3JraW5nIGRpcmVjdG9yeSBhbmQgaW5kZXggc3RhdGUgJXMiCittc2dzdHIgIlNwYXJhZGUgYXJiZXRza2F0YWxvZ2VuIG9jaCBpbmRleHN0YXR1cyAlcyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0MzAgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozODUKK21zZ2lkICJDYW5ub3QgcmVtb3ZlIHdvcmt0cmVlIGNoYW5nZXMiCittc2dzdHIgIkthbiBpbnRlIHRhIGJvcnQgw6RuZHJpbmdhciBpIGFyYmV0c2thdGFsb2dlbiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NjkgYnVpbHRpbi9zdGFzaC5jOjE1MzQKK21zZ2lkICJrZWVwIGluZGV4IgorbXNnc3RyICJiZWjDpWxsIGluZGV4ZXQiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDcxIGJ1aWx0aW4vc3Rhc2guYzoxNTM2Cittc2dpZCAic3Rhc2ggaW4gcGF0Y2ggbW9kZSIKK21zZ3N0ciAiXCJzdGFzaFwiIGkgXCJwYXRjaFwiLWzDpGdlIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3MiBidWlsdGluL3N0YXNoLmM6MTUzNworbXNnaWQgInF1aWV0IG1vZGUiCittc2dzdHIgInR5c3QgbMOkZ2UiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDc0IGJ1aWx0aW4vc3Rhc2guYzoxNTM5Cittc2dpZCAiaW5jbHVkZSB1bnRyYWNrZWQgZmlsZXMgaW4gc3Rhc2giCittc2dzdHIgInRhIG1lZCBvc3DDpXJhZGUgZmlsZXIgaSBcInN0YXNoXCIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDc2IGJ1aWx0aW4vc3Rhc2guYzoxNTQxCittc2dpZCAiaW5jbHVkZSBpZ25vcmUgZmlsZXMiCittc2dzdHIgInRhIG1lZCBpZ25vcmVyYWRlIGZpbGVyIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTYwMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZXhlYyAlcyIKK21zZ3N0ciAia3VuZGUgaW50ZSBrw7ZyYSAlcyIKKwogIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MTgKIG1zZ2lkICJnaXQgc3RyaXBzcGFjZSBbLXMgfCAtLXN0cmlwLWNvbW1lbnRzXSIKIG1zZ3N0ciAiZ2l0IHN0cmlwc3BhY2UgWy1zIHwgLS1zdHJpcC1jb21tZW50c10iCkBAIC0xNzAwMSw0OCArMjA1OTEsNDggQEAKIG1zZ2lkICJnaXQgc3RyaXBzcGFjZSBbLWMgfCAtLWNvbW1lbnQtbGluZXNdIgogbXNnc3RyICJnaXQgc3RyaXBzcGFjZSBbLWMgfCAtLWNvbW1lbnQtbGluZXNdIgogCi0jOiBidWlsdGluL3N0cmlwc3BhY2UuYzozNgorIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MzcKIG1zZ2lkICJza2lwIGFuZCByZW1vdmUgYWxsIGxpbmVzIHN0YXJ0aW5nIHdpdGggY29tbWVudCBjaGFyYWN0ZXIiCiBtc2dzdHIgImhvcHBhIMO2dmVyIG9jaCB0YSBib3J0IGFsbGEgcmFkZXIgc29tIGlubGVkcyBtZWQga29tbWVudGFyc3RlY2tlbiIKIAotIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MzkKKyM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjQwCiBtc2dpZCAicHJlcGVuZCBjb21tZW50IGNoYXJhY3RlciBhbmQgc3BhY2UgdG8gZWFjaCBsaW5lIgogbXNnc3RyICJsw6RnZyBpbiBrb21tZW50YXJzdGVja2VuIG9jaCBibGFua3N0ZWcgZsO2cnN0IHDDpSB2YXJqZSByYWQiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkzOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkV4cGVjdGluZyBhIGZ1bGwgcmVmIG5hbWUsIGdvdCAlcyIKIG1zZ3N0ciAiRsO2cnbDpG50YWRlIGZ1bGx0IHJlZmVyZW5zbmFtbiwgZmljayAlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjQKIG1zZ2lkICJzdWJtb2R1bGUtLWhlbHBlciBwcmludC1kZWZhdWx0LXJlbW90ZSB0YWtlcyBubyBhcmd1bWVudHMiCiBtc2dzdHIgInN1Ym1vZHVsZS0taGVscGVyIHByaW50LWRlZmF1bHQtcmVtb3RlIHRhciBpbmdhIGFyZ3VtZW50IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0cmlwIG9uZSBjb21wb25lbnQgb2ZmIHVybCAnJXMnIgogbXNnc3RyICJrYW4gaW50ZSB0YSBib3J0IGVuIGtvbXBvbmVudCBmcsOlbiB1cmw6ZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzYzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDEwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk1CiBtc2dpZCAiYWx0ZXJuYXRpdmUgYW5jaG9yIGZvciByZWxhdGl2ZSBwYXRocyIKIG1zZ3N0ciAiYWx0ZXJuYXRpdmEgYW5rYXJlIGbDtnIgcmVsYXRpdmEgc8O2a3bDpGdhciIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxMgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxNQogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBsaXN0IFstLXByZWZpeD08cGF0aD5dIFs8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbGlzdCBbLS1wcmVmaXg9PHPDtmt2w6RnPl0gWzxzw7ZrdsOkZz4uLi5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDY5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2MjYKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NDkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYzMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJObyB1cmwgZm91bmQgZm9yIHN1Ym1vZHVsZSBwYXRoICclcycgaW4gLmdpdG1vZHVsZXMiCiBtc2dzdHIgIkhpdHRhZGUgaW5nZW4gdXJsIGbDtnIgdW5kZXJtb2R1bHPDtmt2w6RnZW4gXCIlc1wiIGkgLmdpdG1vZHVsZXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRW50ZXJpbmcgJyVzJ1xuIgogbXNnc3RyICJHw6VyIGluIGkgXCIlc1wiXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyBmb3IgJXNcbiIKQEAgLTE3MDUxLDcgKzIwNjQxLDcgQEAKICJydW5fY29tbWFuZCByZXR1cm5lcmFkZSBpY2tlLW5vbGxzdGF0dXMgZsO2ciAlc1xuIgogIi4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NDUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyB3aGlsZSByZWN1cnNpbmcgaW4gdGhlIG5lc3RlZCAiCkBAIC0xNzA2MiwxOSArMjA2NTIsMTkgQEAKICJ1bmRlcm1vZHVsZXIgZsO2ciAlc1xuIgogIi4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjUKIG1zZ2lkICJTdXBwcmVzcyBvdXRwdXQgb2YgZW50ZXJpbmcgZWFjaCBzdWJtb2R1bGUgY29tbWFuZCIKIG1zZ3N0ciAiRMO2bGogdXRkYXRhIGZyw6VuIGbDtnIgdmFyamUgdW5kZXJtb2R1bHNrb21tYW5kbyBzb20gc3RhcnRhcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA0OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA2MwogbXNnaWQgIlJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKIG1zZ3N0ciAiUmVrdXJzZXJhIGluIGkgbsOkc3RsYWRlIHVuZGVybW9kdWxlciIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2OAotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIDxjb21tYW5kPiIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHN5bmMgWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWzxrb21tYW5kbz5dIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU3MgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFstLV0gPGNvbW1hbmQ+IgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgc3luYyBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbLS1dIFs8a29tbWFuZG8+XSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU5NQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY291bGQgbm90IGxvb2sgdXAgY29uZmlndXJhdGlvbiAnJXMnLiBBc3N1bWluZyB0aGlzIHJlcG9zaXRvcnkgaXMgaXRzIG93biAiCkBAIC0xNzA4Myw1NCArMjA2NzMsNTQgQEAKICJrdW5kZSBpbnRlIHNsw6UgdXBwIGtvbmZpZ3VyYXRpb25lbiBcIiVzXCIuIEFudGFyIGF0dCBhcmtpdmV0IMOkciBzaW4gZWdldCAiCiAib2ZmaWNpZWxsYSB1cHBzdHLDtm0uIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjYzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciB1cmwgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgIk1pc3NseWNrYWRlcyByZWdpc3RyZXJhIHVybCBmw7ZyIHVuZGVybW9kdWxzw7ZrdsOkZyBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NjcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlICclcycgKCVzKSByZWdpc3RlcmVkIGZvciBwYXRoICclcydcbiIKIG1zZ3N0ciAiVW5kZXJtb2R1bGVuIFwiJXNcIiAoJXMpIHJlZ2lzdHJlcmFkIGbDtnIgc8O2a3bDpGdlbiBcIiVzXCJcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY3NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ3YXJuaW5nOiBjb21tYW5kIHVwZGF0ZSBtb2RlIHN1Z2dlc3RlZCBmb3Igc3VibW9kdWxlICclcydcbiIKIG1zZ3N0ciAidmFybmluZzoga29tbWFuZG91cHBkYXRlcmluZ3Nsw6RnZSBmw7ZyZXNsb2dzIGbDtnIgdW5kZXJtb2R1bGVuIFwiJXNcIlxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njg0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciB1cGRhdGUgbW9kZSBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAiTWlzc2x5Y2thZGVzIHJlZ2lzdHJlcmEgdXBwZGF0ZXJpbmdzbMOkZ2UgZsO2ciB1bmRlcm1vZHVsc8O2a3bDpGcgXCIlc1wiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzA2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzEwCiBtc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IGZvciBpbml0aWFsaXppbmcgYSBzdWJtb2R1bGUiCiBtc2dzdHIgIkTDtmxqIHV0ZGF0YSBmcsOlbiBpbml0aWVyaW5nIGF2IHVuZGVybW9kdWwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MTEKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPHBhdGg+XSIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxzw7ZrdsOkZz5dIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcxNQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8b3B0aW9ucz5dIFs8cGF0aD5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPGZsYWdnb3I+XSBbPHPDtmt2w6RnPl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3ODMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjc4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Ym1vZHVsZSBtYXBwaW5nIGZvdW5kIGluIC5naXRtb2R1bGVzIGZvciBwYXRoICclcyciCiBtc2dzdHIgImhpdHRhZGUgaW5nZW4gdW5kZXJtb2R1bG1hcHBuaW5nIGkgLmdpdG1vZHVsZXMgZsO2ciBzw7ZrdsOkZ2VuIFwiJXNcIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjgyMgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjgzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIHJlZiBpbnNpZGUgdGhlIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIGJlc3TDpG1tYSBIRUFEOnMgaW5jaGVja25pbmcgaSB1bmRlcm1vZHVsZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODQ5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDE4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODY0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWN1cnNlIGludG8gc3VibW9kdWxlICclcyciCiBtc2dzdHIgIm1pc3NseWNrYWRlcyByZWt1cnNlcmEgaW4gaSB1bmRlcm1vZHVsZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODczIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTgyCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODg4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTk5CiBtc2dpZCAiU3VwcHJlc3Mgc3VibW9kdWxlIHN0YXR1cyBvdXRwdXQiCiBtc2dzdHIgIkhpbmRyYSBzdGF0dXN1dHNrcmlmdCBmw7ZyIHVuZGVybW9kdWwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODkKIG1zZ2lkICIiCiAiVXNlIGNvbW1pdCBzdG9yZWQgaW4gdGhlIGluZGV4IGluc3RlYWQgb2YgdGhlIG9uZSBzdG9yZWQgaW4gdGhlIHN1Ym1vZHVsZSAiCiAiSEVBRCIKQEAgLTE3MTM4LDQ3ICsyMDcyOCw0NyBAQAogIlZpc2EgaW5jaGVja25pbmcgZnLDpW4gaW5kZXhldCBpc3TDpGxsZXQgZsO2ciBkZW4gc29tIGxhZ3JhdHMgaSB1bmRlcm1vZHVsZW5zICIKICJIRUFEIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODc1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODkwCiBtc2dpZCAicmVjdXJzZSBpbnRvIG5lc3RlZCBzdWJtb2R1bGVzIgogbXNnc3RyICJyZWt1cnNlcmEgaW4gaSBuw6RzdGxhZGUgdW5kZXJtb2R1bGVyIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODgwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODk1CiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZSBzdGF0dXMgWy0tcXVpZXRdIFstLWNhY2hlZF0gWy0tcmVjdXJzaXZlXSBbPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZSBzdGF0dXMgWy0tcXVpdGV0XSBbLS1jYWNoZWRdIFstLXJlY3Vyc2l2ZV0gWzxzw7ZrdsOkZz4uLi5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTA0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTE5CiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIG5hbWUgPHBhdGg+IgogbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbmFtZSA8c8O2a3bDpGc+IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTY4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlN5bmNocm9uaXppbmcgc3VibW9kdWxlIHVybCBmb3IgJyVzJ1xuIgogbXNnc3RyICJTeW5rcm9uaXNlcmFyIHVuZGVybW9kdWwtdXJsIGbDtnIgXCIlc1wiXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5NzQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlZ2lzdGVyIHVybCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHJlZ2lzdHJlcmEgdXJsIGbDtnIgdW5kZXJtb2R1bHPDtmt2w6RnIFwiJXNcIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk4OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGdldCB0aGUgZGVmYXVsdCByZW1vdGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJtaXNzbHlja2FkZXMgaMOkbXRhIHN0YW5kYXJkZmrDpHJyIGbDtnIgdW5kZXJtb2R1bHPDtmt2w6RnIFwiJXNcIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk5OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHVwZGF0ZSByZW1vdGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJtaXNzbHlja2FkZXMgdXBwZGF0ZXJhIGZqw6RyciBmw7ZyIHVuZGVybW9kdWxzw7ZrdsOkZyBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDQ2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA2MQogbXNnaWQgIlN1cHByZXNzIG91dHB1dCBvZiBzeW5jaHJvbml6aW5nIHN1Ym1vZHVsZSB1cmwiCiBtc2dzdHIgIkTDtmxqIHV0ZGF0YSBmcsOlbiBzeW5rcm9uaWVyaW5nIGF2IHVuZGVybW9kdWwtdXJsIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA1MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNjgKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgc3luYyBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbPHBhdGg+XSIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHN5bmMgWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWzxzw7ZrdsOkZz5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEwNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJyBjb250YWlucyBhIC5naXQgZGlyZWN0b3J5ICh1c2UgJ3JtIC1yZicgaWYgeW91ICIKQEAgLTE3MTg3LDcgKzIwNzc3LDcgQEAKICJVbmRlcm1vZHVsc2FyYmV0c2thdGFsb2dlbiBcIiVzXCIgaW5uZWjDpWxsZXIgZW4gLmdpdC1rYXRhbG9nIChhbnbDpG5kIFwicm0gLXJmIgogIlwiIG9tIGR1IHZlcmtsaWdlbiB2aWxsIHRhIGJvcnQgZGVuIG9jaCBhbGwgZGVzcyBoaXN0b3JpaykiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTE5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiU3VibW9kdWxlIHdvcmsgdHJlZSAnJXMnIGNvbnRhaW5zIGxvY2FsIG1vZGlmaWNhdGlvbnM7IHVzZSAnLWYnIHRvIGRpc2NhcmQgIgpAQCAtMTcxOTYsMTc1ICsyMDc4NiwyMDMgQEAKICJVbmRlcm1vZHVsZW5zIGFyYmV0c2thdGFsb2cgXCIlc1wiIGhhciBsb2thbGEgw6RuZHJpbmdhcjsgXCItZlwiIGthc3RhciBib3J0ICIKICJkZW0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTI3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDbGVhcmVkIGRpcmVjdG9yeSAnJXMnXG4iCiBtc2dzdHIgIlJlbnNhZGUga2F0YWxvZ2VuIFwiJXNcIlxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBzdWJtb2R1bGUgd29yayB0cmVlICclcydcbiIKIG1zZ3N0ciAiS3VuZGUgaW50ZSB0YSBib3J0IHVuZGVybW9kdWxlbnMgYXJiZXRza2F0YWxvZyBcIiVzXCJcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMzgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZW1wdHkgc3VibW9kdWxlIGRpcmVjdG9yeSAlcyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSB0b20gdW5kZXJtb2R1bHNrYXRhbG9nICVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE1NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlICclcycgKCVzKSB1bnJlZ2lzdGVyZWQgZm9yIHBhdGggJyVzJ1xuIgogbXNnc3RyICJVbmRlcm1vZHVsZW4gXCIlc1wiICglcykgcmVnaXN0cmVyYWQgZsO2ciBzw7ZrdsOkZ2VuIFwiJXNcIlxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDAKIG1zZ2lkICJSZW1vdmUgc3VibW9kdWxlIHdvcmtpbmcgdHJlZXMgZXZlbiBpZiB0aGV5IGNvbnRhaW4gbG9jYWwgY2hhbmdlcyIKIG1zZ3N0ciAiIgogIlRhIGJvcnQgdW5kZXJtb2R1bGVycyBhcmJldHNrYXRhbG9nZXIgw6R2ZW4gb20gZGUgaW5uZWjDpWxsZXIgbG9rYWxhIMOkbmRyaW5nYXIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTg0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIwMQogbXNnaWQgIlVucmVnaXN0ZXIgYWxsIHN1Ym1vZHVsZXMiCiBtc2dzdHIgIkF2cmVnaXN0cmVyYSBhbGxhIHVuZGVybW9kdWxlciIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjA2CiBtc2dpZCAiIgogImdpdCBzdWJtb2R1bGUgZGVpbml0IFstLXF1aWV0XSBbLWYgfCAtLWZvcmNlXSBbLS1hbGwgfCBbLS1dIFs8cGF0aD4uLi5dXSIKIG1zZ3N0ciAiIgogImdpdCBzdWJtb2R1bGUgZGVpbml0IFstLXF1aWV0XSBbLWYgfCAtLWZvcmNlXSBbLS1hbGwgfCBbLS1dIFs8c8O2a3bDpGc+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjAzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIyMAogbXNnaWQgIlVzZSAnLS1hbGwnIGlmIHlvdSByZWFsbHkgd2FudCB0byBkZWluaXRpYWxpemUgYWxsIHN1Ym1vZHVsZXMiCiBtc2dzdHIgIkFudsOkbmQgXCItLWFsbFwiIG9tIGR1IHZlcmtsaWdlbiB2aWxsIGF2aW5pdGllcmEgYWxsYSB1bmRlcm1vZHVsZXIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjk3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzAwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTI4OQorbXNnaWQgIiIKKyJBbiBhbHRlcm5hdGUgY29tcHV0ZWQgZnJvbSBhIHN1cGVycHJvamVjdCdzIGFsdGVybmF0ZSBpcyBpbnZhbGlkLlxuIgorIlRvIGFsbG93IEdpdCB0byBjbG9uZSB3aXRob3V0IGFuIGFsdGVybmF0ZSBpbiBzdWNoIGEgY2FzZSwgc2V0XG4iCisic3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgdG8gJ2luZm8nIG9yLCBlcXVpdmFsZW50bHksIGNsb25lIHdpdGhcbiIKKyInLS1yZWZlcmVuY2UtaWYtYWJsZScgaW5zdGVhZCBvZiAnLS1yZWZlcmVuY2UnLiIKK21zZ3N0ciAiIgorIkVuIHN1cHBsZWFudCBiZXLDpGtuYWQgZnLDpW4gw7Z2ZXJwcm9qZWt0ZXRzIHN1cHBsZWFudCDDpHIgb2dpbHRpZy5cbiIKKyJGw7ZyIGF0dCBpIHPDpSBmYWxsIGzDpXRhIEdpdCBrbG9uYSB1dGFuIGV0dCBzdXBwbGVhbnQsIHPDpHR0XG4iCisic3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgdGlsbCBcImluZm9cIiBlbGxlciwgbGlrdsOkcmRpZ3QsIGtsb25hXG4iCisibWVkIFwiLS1yZWZlcmVuY2UtaWYtYWJsZVwiIGlzdMOkbGxldCBmw7ZyIFwiLS1yZWZlcmVuY2VcIi4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzI4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInN1Ym1vZHVsZSAnJXMnIGNhbm5vdCBhZGQgYWx0ZXJuYXRlOiAlcyIKLW1zZ3N0ciAidW5kZXJtb2R1bGVuIFwiJXNcIiBrYW4gaW50ZSBsw6RnZ2EgdGlsbCBhbHRlcm5hdGl2OiAlcyIKK21zZ3N0ciAidW5kZXJtb2R1bGVuIFwiJXNcIiBrYW4gaW50ZSBsw6RnZ2EgdGlsbCBzdXBwbGVhbnQ6ICVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMzNgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVmFsdWUgJyVzJyBmb3Igc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgaXMgbm90IHJlY29nbml6ZWQiCiBtc2dzdHIgIlbDpHJkZXQgXCIlc1wiIGkgc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgZsO2cnN0w6VzIGludGUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzQzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJWYWx1ZSAnJXMnIGZvciBzdWJtb2R1bGUuYWx0ZXJuYXRlTG9jYXRpb24gaXMgbm90IHJlY29nbml6ZWQiCiBtc2dzdHIgIlbDpHJkZXQgXCIlc1wiIGkgc3VibW9kdWxlLmFsdGVybmF0ZUxvY2F0aW9uIGbDtnJzdMOlcyBpbnRlIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzOTgKIG1zZ2lkICJ3aGVyZSB0aGUgbmV3IHN1Ym1vZHVsZSB3aWxsIGJlIGNsb25lZCB0byIKLW1zZ3N0ciAidmFyIGRlbiBueWEgdW5kZXJtb2R1bGVuIHNrYWxsIGtsb25hcyB0aWxsIgorbXNnc3RyICJ2YXIgZGVuIG55YSB1bmRlcm1vZHVsZW4gc2thIGtsb25hcyB0aWxsIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDEKIG1zZ2lkICJuYW1lIG9mIHRoZSBuZXcgc3VibW9kdWxlIgogbXNnc3RyICJuYW1uIHDDpSBkZW4gbnlhIHVuZGVybW9kdWxlbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA0CiBtc2dpZCAidXJsIHdoZXJlIHRvIGNsb25lIHRoZSBzdWJtb2R1bGUgZnJvbSIKIG1zZ3N0ciAiVVJMIGF0dCBrbG9uYSB1bmRlcm1vZHVsZW4gZnLDpW4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzgwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxMgogbXNnaWQgImRlcHRoIGZvciBzaGFsbG93IGNsb25lcyIKIG1zZ3N0ciAiZGp1cCBmw7ZyIGdydW5kYSBrbG9uZXIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzgzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxNSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyNAogbXNnaWQgImZvcmNlIGNsb25pbmcgcHJvZ3Jlc3MiCiBtc2dzdHIgInR2aW5nYSBrbG9uaW5nc2bDtnJsb3BwIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjYKK21zZ2lkICJkaXNhbGxvdyBjbG9uaW5nIGludG8gbm9uLWVtcHR5IGRpcmVjdG9yeSIKK21zZ3N0ciAiZsO2cmhpbmRyYSBrbG9uaW5nIHRpbGwgaWNrZS10b20ga2F0YWxvZyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MjQKIG1zZ2lkICIiCiAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNsb25lIFstLXByZWZpeD08cGF0aD5dIFstLXF1aWV0XSBbLS1yZWZlcmVuY2UgIgotIjxyZXBvc2l0b3J5Pl0gWy0tbmFtZSA8bmFtZT5dIFstLWRlcHRoIDxkZXB0aD5dIC0tdXJsIDx1cmw+IC0tcGF0aCA8cGF0aD4iCisiPHJlcG9zaXRvcnk+XSBbLS1uYW1lIDxuYW1lPl0gWy0tZGVwdGggPGRlcHRoPl0gWy0tc2luZ2xlLWJyYW5jaF0gLS11cmwgIgorIjx1cmw+IC0tcGF0aCA8cGF0aD4iCiBtc2dzdHIgIiIKICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY2xvbmUgWy0tcHJlZml4PTxzw7ZrdsOkZz5dIFstLXF1aWV0XSBbLS1yZWZlcmVuY2UgIgotIjxhcmt2aT5dIFstLW5hbWUgPG5hbW4+XSBbLS1kZXB0aCA8ZGp1cD5dIC0tdXJsIDx1cmw+IC0tcGF0aCA8c8O2a3bDpGc+IgorIjxhcmtpdj5dIFstLW5hbWUgPG5hbW4+XSBbLS1kZXB0aCA8ZGp1cD5dIFstLXNpbmdsZS1icmFuY2hdIC0tdXJsIDx1cmw+IC0tIgorInBhdGggPHPDtmt2w6RnPiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZnVzaW5nIHRvIGNyZWF0ZS91c2UgJyVzJyBpbiBhbm90aGVyIHN1Ym1vZHVsZSdzIGdpdCBkaXIiCittc2dzdHIgInbDpGdyYXIgc2thcGEvYW52w6RuZGEgXCIlc1wiIGkgZW4gYW5uYW4gdW5kZXJtb2R1bHMgZ2l0a2F0YWxvZyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2xvbmUgb2YgJyVzJyBpbnRvIHN1Ym1vZHVsZSBwYXRoICclcycgZmFpbGVkIgotbXNnc3RyICJtaXNzbHlja2FkZXMga2xvbmEgXCIlc1wiIHRpbGwgdW5kZXJtb2R1bHPDtmt2w6RnZW4g4oCdJXPigJ0iCittc2dzdHIgIm1pc3NseWNrYWRlcyBrbG9uYSBcIiVzXCIgdGlsbCB1bmRlcm1vZHVsc8O2a3bDpGdlbiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDMzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ2NAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXJlY3Rvcnkgbm90IGVtcHR5OiAnJXMnIgorbXNnc3RyICJrYXRhbG9nZW4gaW50ZSB0b206IFwiJXNcIiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCBzdWJtb2R1bGUgZGlyZWN0b3J5IGZvciAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIGbDpSB0YWcgaSB1bmRlcm1vZHVsa2F0YWxvZyBmw7ZyIFwiJXNcIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAiT2dpbHRpZ3QgdXBwZGF0ZXJpbmdzbMOkZ2UgXCIlc1wiIGbDtnIgdW5kZXJtb2R1bHPDtmt2w6RnIFwiJXNcIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NzMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBjb25maWd1cmVkIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICIiCiAiT2dpbHRpZ3QgdXBwZGF0ZXJpbmdzbMOkZ2UgXCIlc1wiIGtvbmZpZ3VyZXJhdCBmw7ZyIHVuZGVybW9kdWxzw7ZrdsOkZyBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTY2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYxNwogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJXMnIG5vdCBpbml0aWFsaXplZCIKIG1zZ3N0ciAiVW5kZXJtb2R1bHPDtmt2w6RnZW4gXCIlc1wiIGhhciBpbnRlIGluaXRpZXJhdHMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTcwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYyMQogbXNnaWQgIk1heWJlIHlvdSB3YW50IHRvIHVzZSAndXBkYXRlIC0taW5pdCc/IgogbXNnc3RyICJLYW5za2UgbWVuYWRlIGR1IGF0dCBhbnbDpG5kYSBcInVwZGF0ZSAtLWluaXRcIj8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjAwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTY1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyB1bm1lcmdlZCBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIkhvcHBhciDDtnZlciBlaiBzYW1tYW5zbGFnZW4gdW5kZXJtb2R1bCAlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwaW5nIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJIb3BwYXIgw7Z2ZXIgdW5kZXJtb2R1bGVuIFwiJXNcIiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3NzMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBjbG9uZSAnJXMnLiBSZXRyeSBzY2hlZHVsZWQiCiBtc2dzdHIgIk1pc3NseWNrYWRlcyBrbG9uYSBcIiVzXCIuIE55dHQgZsO2cnPDtmsgcGxhbmxhZ3QiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzg0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJyBhIHNlY29uZCB0aW1lLCBhYm9ydGluZyIKIG1zZ3N0ciAiTWlzc2x5Y2thZGVzIGtsb25hIFwiJXNcIiBmw7ZyIGFuZHJhIGfDpW5nZW4sIGF2YnJ5dGVyIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA4OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNDkKIG1zZ2lkICJwYXRoIGludG8gdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAic8O2a3bDpGcgaW51dGkgYXJiZXRza2F0YWxvZ2VuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDYKIG1zZ2lkICJwYXRoIGludG8gdGhlIHdvcmtpbmcgdHJlZSwgYWNyb3NzIG5lc3RlZCBzdWJtb2R1bGUgYm91bmRhcmllcyIKIG1zZ3N0ciAic8O2a3bDpGcgaW51dGkgYXJiZXRza2F0YWxvZ2VuLCBnZW5vbSBuw6RzdGxhZGUgdW5kZXJtb2R1bGdyw6Ruc2VyIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTAKIG1zZ2lkICJyZWJhc2UsIG1lcmdlLCBjaGVja291dCBvciBub25lIgogbXNnc3RyICJyZWJhc2UsIG1lcmdlLCBjaGVja291dCBlbGxlciBub25lIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTYKIG1zZ2lkICJDcmVhdGUgYSBzaGFsbG93IGNsb25lIHRydW5jYXRlZCB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiByZXZpc2lvbnMiCiBtc2dzdHIgIlNrYXBhIGVuIGdydW5kIGtsb24gdHJ1bmtlcmFkIHRpbGwgYW5naXZldCBhbnRhbCByZXZpc2lvbmVyIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTkKIG1zZ2lkICJwYXJhbGxlbCBqb2JzIgogbXNnc3RyICJwYXJhbGxlbGxhIGpvYmIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyMQogbXNnaWQgIndoZXRoZXIgdGhlIGluaXRpYWwgY2xvbmUgc2hvdWxkIGZvbGxvdyB0aGUgc2hhbGxvdyByZWNvbW1lbmRhdGlvbiIKLW1zZ3N0ciAib20gZGVuIGbDtnJzdGEga2xvbmVuIHNrYWxsIGbDtmxqYSByZWtvbW1lbmRhdGlvbiBmw7ZyIGdydW5kIGtsb25pbmciCittc2dzdHIgIm9tIGRlbiBmw7Zyc3RhIGtsb25lbiBza2EgZsO2bGphIHJla29tbWVuZGF0aW9uIGbDtnIgZ3J1bmQga2xvbmluZyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTIyCiBtc2dpZCAiZG9uJ3QgcHJpbnQgY2xvbmluZyBwcm9ncmVzcyIKIG1zZ3N0ciAic2tyaXYgaW50ZSBrbG9uZsO2cmxvcHAiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODczCi1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZV9jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZV9jbG9uZSBbLS1wcmVmaXg9PHPDtmt2w6RnPl0gWzxzw7ZrdsOkZz4uLi5dIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MzMKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgdXBkYXRlLWNsb25lIFstLXByZWZpeD08cGF0aD5dIFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgdXBkYXRlLWNsb25lIFstLXByZWZpeD08c8O2a3bDpGc+XSBbPHPDtmt2w6RnPi4uLl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODg2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk0NgogbXNnaWQgImJhZCB2YWx1ZSBmb3IgdXBkYXRlIHBhcmFtZXRlciIKIG1zZ3N0ciAiZmVsYWt0aWd0IHbDpHJkZSBmw7ZyIHBhcmFtZXRlcm4gdXBkYXRlIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkzNAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN1Ym1vZHVsZSAoJXMpIGJyYW5jaCBjb25maWd1cmVkIHRvIGluaGVyaXQgYnJhbmNoIGZyb20gc3VwZXJwcm9qZWN0LCBidXQgIgpAQCAtMTczNzMsNDIgKzIwOTkxLDUwIEBACiAiVW5kZXJtb2R1bGVucyAoJXMpIGdyZW4gaW5zdMOkbGxkIHDDpSBhdHQgw6RydmEgZ3JlbiBmcsOlbiBodXZ1ZHByb2pla3RldCwgbWVuICIKICJodXZ1ZHByb2pla3RldCDDpHIgaW50ZSBww6UgbsOlZ29uIGdyZW4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDU3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjExNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0IGEgcmVwb3NpdG9yeSBoYW5kbGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIGbDpSB0YWcgaSBhcmtpdmhhbmR0YWcgZsO2ciB1bmRlcm1vZHVsZW4gXCIlc1wiIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA5MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTAKIG1zZ2lkICJyZWN1cnNlIGludG8gc3VibW9kdWxlcyIKIG1zZ3N0ciAicmVrdXJzZXJhIG5lciBpIHVuZGVybW9kdWxlciIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwOTYKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZW1iZWQtZ2l0LWRpciBbPHBhdGg+Li4uXSIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGVtYmVkLWdpdC1kaXIgWzxzw7ZrdsOkZz4uLi5dIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTYKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgYWJzb3JiLWdpdC1kaXJzIFs8b3B0aW9ucz5dIFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgYWJzb3JiLWdpdC1kaXIgWzxmbGFnZ29yPl0gWzxzw7ZrdsOkZz4uLi5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMTIKIG1zZ2lkICJjaGVjayBpZiBpdCBpcyBzYWZlIHRvIHdyaXRlIHRvIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIgogbXNnc3RyICJzZSBvbSBkZXQgw6RyIHPDpGtlcnQgYXR0IHNrcml2YSB0aWxsIC5naXRtb2R1bGVzLWZpbGVuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1NwotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgbmFtZSBbdmFsdWVdIgotbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIG5hbWUgPHbDpHJkZT4iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIxNQorbXNnaWQgInVuc2V0IHRoZSBjb25maWcgaW4gdGhlIC5naXRtb2R1bGVzIGZpbGUiCittc2dzdHIgInRhIGJvcnQga29uZmlndXJhdGlvbmVuIGZyw6VuIC5naXRtb2R1bGVzLWZpbGVuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjAKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIDxuYW1lPiBbPHZhbHVlPl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgPG5hbW4+IFs8dsOkcmRlPl0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjIxCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLXVuc2V0IDxuYW1lPiIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLXVuc2V0IDxuYW1uPiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjIKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tY2hlY2std3JpdGVhYmxlIgogbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tY2hlY2std3JpdGVhYmxlIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE3NSBnaXQtc3VibW9kdWxlLnNoOjE2OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyNDEgZ2l0LXN1Ym1vZHVsZS5zaDoxNzQKICMsIHNoLWZvcm1hdAogbXNnaWQgInBsZWFzZSBtYWtlIHN1cmUgdGhhdCB0aGUgLmdpdG1vZHVsZXMgZmlsZSBpcyBpbiB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICJzZSB0aWxsIGF0dCAuZ2l0bW9kdWxlcyBmaW5ucyBpIGFyYmV0c2thdGFsb2dlbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjkxIGdpdC5jOjQzMyBnaXQuYzo2ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lc24ndCBzdXBwb3J0IC0tc3VwZXItcHJlZml4IgogbXNnc3RyICIlcyBzdMO2ZGVyIGludGUgLS1zdXBlci1wcmVmaXgiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjMxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI5NwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHN1Ym1vZHVsZS0taGVscGVyIHN1YmNvbW1hbmQiCiBtc2dzdHIgIlwiJXNcIiDDpHIgaW50ZSBldHQgZ2lsdGlndCB1bmRlcmtvbW1hbmRvIHRpbGwgc3VibW9kdWxlLS1oZWxwZXIiCkBAIC0xNzQ0NCwxNyArMjEwNzAsMTcgQEAKIAogIzogYnVpbHRpbi90YWcuYzoyNQogbXNnaWQgIiIKLSJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPGtleS1pZD5dIFstZl0gWy1tIDxtc2c+IHwgLUYgPGZpbGU+XSA8dGFnbmFtZT4gIgotIls8aGVhZD5dIgorImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8a2V5LWlkPl0gWy1mXSBbLW0gPG1zZz4gfCAtRiA8ZmlsZT5dXG4iCisiXHRcdDx0YWduYW1lPiBbPGhlYWQ+XSIKIG1zZ3N0ciAiIgotImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8bnlja2VsLWlkPl0gWy1mXSBbLW0gPG1lZGQ+IHwgLUYgPGZpbD5dIDx0YWdnbmFtbj4gIgotIls8aHV2dWQ+XSIKKyJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPG55Y2tlbC1pZD5dIFstZl0gWy1tIDxtZWRkPiB8IC1GIDxmaWw+XVxuIgorIlx0XHQ8dGFnZ25hbW4+IFs8aHV2dWQ+XSIKIAotIzogYnVpbHRpbi90YWcuYzoyNgorIzogYnVpbHRpbi90YWcuYzoyNwogbXNnaWQgImdpdCB0YWcgLWQgPHRhZ25hbWU+Li4uIgogbXNnc3RyICJnaXQgdGFnIC1kIDx0YWdnbmFtbj4uLi4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjcKKyM6IGJ1aWx0aW4vdGFnLmM6MjgKIG1zZ2lkICIiCiAiZ2l0IHRhZyAtbCBbLW5bPG51bT5dXSBbLS1jb250YWlucyA8Y29tbWl0Pl0gWy0tbm8tY29udGFpbnMgPGNvbW1pdD5dIFstLSIKICJwb2ludHMtYXQgPG9iamVjdD5dXG4iCkBAIC0xNzQ2NCwyMSArMjEwOTAsMjEgQEAKICI8aW5jaGVja25pbmc+XSBbLS1wb2ludHMtYXQgPG9iamVrdD5dXG4iCiAiXHRcdFstLWZvcm1hdD08Zm9ybWF0Pl0gWy0tW25vLV1tZXJnZWQgWzxpbmNoZWNrbmluZz5dXSBbPG3Dtm5zdGVyPi4uLl0iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjkKKyM6IGJ1aWx0aW4vdGFnLmM6MzAKIG1zZ2lkICJnaXQgdGFnIC12IFstLWZvcm1hdD08Zm9ybWF0Pl0gPHRhZ25hbWU+Li4uIgogbXNnc3RyICJnaXQgdGFnIC12IFstLWZvcm1hdD08Zm9ybWF0Pl0gPHRhZ2duYW1uPi4uLiIKIAotIzogYnVpbHRpbi90YWcuYzo4NworIzogYnVpbHRpbi90YWcuYzo4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0YWcgJyVzJyBub3QgZm91bmQuIgogbXNnc3RyICJ0YWdnZW4gXCIlc1wiIGhpdHRhZGVzIGludGUuIgogCi0jOiBidWlsdGluL3RhZy5jOjEwMworIzogYnVpbHRpbi90YWcuYzoxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCB0YWcgJyVzJyAod2FzICVzKVxuIgogbXNnc3RyICJUb2cgYm9ydCB0YWdnIFwiJXNcIiAodmFyICVzKVxuIgogCi0jOiBidWlsdGluL3RhZy5jOjEzMworIzogYnVpbHRpbi90YWcuYzoxMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTc0OTEsNyArMjExMTcsNyBAQAogIiAgJXNcbiIKICJSYWRlciBzb20gaW5sZWRzIG1lZCBcIiVjXCIgaWdub3JlcmFzLlxuIgogCi0jOiBidWlsdGluL3RhZy5jOjEzNworIzogYnVpbHRpbi90YWcuYzoxMzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTc1MDYsMzQ3ICsyMTEzMiwzNjQgQEAKICJSYWRlciBzb20gaW5sZWRzIG1lZCBcIiVjXCIga29tbWVyIGJlaMOlbGxhczsgZHUga2FuIHNqw6RsdiB0YSBib3J0IGRlbSBvbVxuIgogImR1IHZpbGwuXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTkxCisjOiBidWlsdGluL3RhZy5jOjE5OAogbXNnaWQgInVuYWJsZSB0byBzaWduIHRoZSB0YWciCiBtc2dzdHIgImt1bmRlIGludGUgc2lnbmVyYSB0YWdnZW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTkzCisjOiBidWlsdGluL3RhZy5jOjIwMAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0YWcgZmlsZSIKIG1zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgdGFnZy1maWxlbiIKIAotIzogYnVpbHRpbi90YWcuYzoyMTgKKyM6IGJ1aWx0aW4vdGFnLmM6MjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgaGF2ZSBjcmVhdGVkIGEgbmVzdGVkIHRhZy4gVGhlIG9iamVjdCByZWZlcnJlZCB0byBieSB5b3VyIG5ldyB0YWcgaXNcbiIKKyJhbHJlYWR5IGEgdGFnLiBJZiB5b3UgbWVhbnQgdG8gdGFnIHRoZSBvYmplY3QgdGhhdCBpdCBwb2ludHMgdG8sIHVzZTpcbiIKKyJcbiIKKyJcdGdpdCB0YWcgLWYgJXMgJXNee30iCittc2dzdHIgIiIKKyJEdSBoYXIgc2thcGF0IGVuIG7DpHN0bGFkIHRhZ2cuIE9iamVrdGV0IHNvbSByZWZlcmVyYXMgYXYgZGluIG55YSB0YWdnIMOkclxuIgorInJlZGFuIGVuIHRhZ2cuIE9tIGR1IHNrdWxsZSB0YWdnYSBvYmpla3RldCBkZW4gcGVrYXIgcMOlLCBhbnbDpG5kOlxuIgorIlxuIgorIlx0Z2l0IHRhZyAtZiAlcyAlc157fSIKKworIzogYnVpbHRpbi90YWcuYzoyMzIKIG1zZ2lkICJiYWQgb2JqZWN0IHR5cGUuIgogbXNnc3RyICJmZWxha3RpZyBvYmpla3R0eXAuIgogCi0jOiBidWlsdGluL3RhZy5jOjI2NworIzogYnVpbHRpbi90YWcuYzoyODQKIG1zZ2lkICJubyB0YWcgbWVzc2FnZT8iCiBtc2dzdHIgImluZ2V0IHRhZ2dtZWRkZWxhbmRlPyIKIAotIzogYnVpbHRpbi90YWcuYzoyNzQKKyM6IGJ1aWx0aW4vdGFnLmM6MjkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSB0YWcgbWVzc2FnZSBoYXMgYmVlbiBsZWZ0IGluICVzXG4iCiBtc2dzdHIgIlRhZ2dtZWRkZWxhbmRldCBoYXIgbMOkbW5hdHMgaSAlc1xuIgogCi0jOiBidWlsdGluL3RhZy5jOjM4NQorIzogYnVpbHRpbi90YWcuYzo0MDIKIG1zZ2lkICJsaXN0IHRhZyBuYW1lcyIKIG1zZ3N0ciAibGlzdGEgdGFnZ25hbW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzg3CisjOiBidWlsdGluL3RhZy5jOjQwNAogbXNnaWQgInByaW50IDxuPiBsaW5lcyBvZiBlYWNoIHRhZyBtZXNzYWdlIgogbXNnc3RyICJ2aXNhIDxuPiByYWRlciBmcsOlbiB2YXJqZSB0YWdnbWVkZGVsYW5kZSIKIAotIzogYnVpbHRpbi90YWcuYzozODkKKyM6IGJ1aWx0aW4vdGFnLmM6NDA2CiBtc2dpZCAiZGVsZXRlIHRhZ3MiCiBtc2dzdHIgInRhIGJvcnQgdGFnZ2FyIgogCi0jOiBidWlsdGluL3RhZy5jOjM5MAorIzogYnVpbHRpbi90YWcuYzo0MDcKIG1zZ2lkICJ2ZXJpZnkgdGFncyIKIG1zZ3N0ciAidmVyaWZpZXJhIHRhZ2dhciIKIAotIzogYnVpbHRpbi90YWcuYzozOTIKKyM6IGJ1aWx0aW4vdGFnLmM6NDA5CiBtc2dpZCAiVGFnIGNyZWF0aW9uIG9wdGlvbnMiCiBtc2dzdHIgIkFsdGVybmF0aXYgZsO2ciBhdHQgc2thcGEgdGFnZ2FyIgogCi0jOiBidWlsdGluL3RhZy5jOjM5NAorIzogYnVpbHRpbi90YWcuYzo0MTEKIG1zZ2lkICJhbm5vdGF0ZWQgdGFnLCBuZWVkcyBhIG1lc3NhZ2UiCiBtc2dzdHIgImFubm90ZXJhZCB0YWdnLCBiZWjDtnZlciBtZWRkZWxhbmRlIgogCi0jOiBidWlsdGluL3RhZy5jOjM5NgorIzogYnVpbHRpbi90YWcuYzo0MTMKIG1zZ2lkICJ0YWcgbWVzc2FnZSIKIG1zZ3N0ciAidGFnZ21lZGRlbGFuZGUiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzk4CisjOiBidWlsdGluL3RhZy5jOjQxNQogbXNnaWQgImZvcmNlIGVkaXQgb2YgdGFnIG1lc3NhZ2UiCiBtc2dzdHIgInR2aW5nYSByZWRpZ2VyaW5nIGF2IGluY2hlY2tuaW5nc21lZGRlbGFuZGUiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzk5CisjOiBidWlsdGluL3RhZy5jOjQxNgogbXNnaWQgImFubm90YXRlZCBhbmQgR1BHLXNpZ25lZCB0YWciCiBtc2dzdHIgImFubm90ZXJhZCBvY2ggR1BHLXNpZ25lcmFkIHRhZ2ciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDAzCisjOiBidWlsdGluL3RhZy5jOjQxOQogbXNnaWQgInVzZSBhbm90aGVyIGtleSB0byBzaWduIHRoZSB0YWciCiBtc2dzdHIgImFudsOkbmQgYW5uYW4gbnlja2VsIGbDtnIgYXR0IHNpZ25lcmEgdGFnZ2VuIgogCi0jOiBidWlsdGluL3RhZy5jOjQwNAorIzogYnVpbHRpbi90YWcuYzo0MjAKIG1zZ2lkICJyZXBsYWNlIHRoZSB0YWcgaWYgZXhpc3RzIgogbXNnc3RyICJlcnPDpHR0IHRhZ2dlbiBvbSBkZW4gZmlubnMiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA1IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2OQorIzogYnVpbHRpbi90YWcuYzo0MjEgYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY5CiBtc2dpZCAiY3JlYXRlIGEgcmVmbG9nIgogbXNnc3RyICJza2FwYSBlbiByZWZsb2ciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA3CisjOiBidWlsdGluL3RhZy5jOjQyMwogbXNnaWQgIlRhZyBsaXN0aW5nIG9wdGlvbnMiCiBtc2dzdHIgIkFsdGVybmF0aXYgZsO2ciBsaXN0bmluZyBhdiB0YWdnYXIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA4CisjOiBidWlsdGluL3RhZy5jOjQyNAogbXNnaWQgInNob3cgdGFnIGxpc3QgaW4gY29sdW1ucyIKIG1zZ3N0ciAibGlzdGEgdGFnZ2FyIGkgc3BhbHRlciIKIAotIzogYnVpbHRpbi90YWcuYzo0MDkgYnVpbHRpbi90YWcuYzo0MTEKKyM6IGJ1aWx0aW4vdGFnLmM6NDI1IGJ1aWx0aW4vdGFnLmM6NDI3CiBtc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICJ2aXNhIGVuZGFzdCB0YWdnYXIgc29tIGlubmVow6VsbGVyIGluY2hlY2tuaW5nZW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDEwIGJ1aWx0aW4vdGFnLmM6NDEyCisjOiBidWlsdGluL3RhZy5jOjQyNiBidWlsdGluL3RhZy5jOjQyOAogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAidmlzYSBlbmRhc3QgdGFnZ2FyIHNvbSBpbnRlIGlubmVow6VsbGVyIGluY2hlY2tuaW5nZW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDEzCisjOiBidWlsdGluL3RhZy5jOjQyOQogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGFyZSBtZXJnZWQiCiBtc2dzdHIgInZpc2EgZW5kYXN0IHRhZ2dhciBzb20gc2xhZ2l0cyBzYW1tYW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDE0CisjOiBidWlsdGluL3RhZy5jOjQzMAogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGFyZSBub3QgbWVyZ2VkIgogbXNnc3RyICJ2aXNhIGVuZGFzdCB0YWdnYXIgc29tIGVqIHNsYWdpdHMgc2FtbWFuIgogCi0jOiBidWlsdGluL3RhZy5jOjQxOQorIzogYnVpbHRpbi90YWcuYzo0MzQKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3Mgb2YgdGhlIG9iamVjdCIKIG1zZ3N0ciAidmlzYSBlbmRhc3QgdGFnZ2FyIGbDtnIgb2JqZWt0ZXQiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDYzCisjOiBidWlsdGluL3RhZy5jOjQ4MgogbXNnaWQgIi0tY29sdW1uIGFuZCAtbiBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWNvbHVtbiBvY2ggLW4gw6RyIGlua29tcGF0aWJsYSIKIAotIzogYnVpbHRpbi90YWcuYzo0ODUKKyM6IGJ1aWx0aW4vdGFnLmM6NTA0CiBtc2dpZCAiLW4gb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgIkZsYWdnYW4gLW4gw6RyIGVuZGFzdCB0aWxsw6V0ZW4gaSBsaXN0bMOkZ2UiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDg3CisjOiBidWlsdGluL3RhZy5jOjUwNgogbXNnaWQgIi0tY29udGFpbnMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgIkZsYWdnYW4gLS1jb250YWlucyDDpHIgZW5kYXN0IHRpbGzDpXRlbiBpIGxpc3Rsw6RnZSIKIAotIzogYnVpbHRpbi90YWcuYzo0ODkKKyM6IGJ1aWx0aW4vdGFnLmM6NTA4CiBtc2dpZCAiLS1uby1jb250YWlucyBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAiRmxhZ2dhbiAtLW5vLWNvbnRhaW5zIMOkciBlbmRhc3QgdGlsbMOldGVuIGkgbGlzdGzDpGdlIgogCi0jOiBidWlsdGluL3RhZy5jOjQ5MQorIzogYnVpbHRpbi90YWcuYzo1MTAKIG1zZ2lkICItLXBvaW50cy1hdCBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAiRmxhZ2dhbiAtLXBvaW50cy1hdCDDpHIgZW5kYXN0IHRpbGzDpXRlbiBpIGxpc3Rsw6RnZSIKIAotIzogYnVpbHRpbi90YWcuYzo0OTMKKyM6IGJ1aWx0aW4vdGFnLmM6NTEyCiBtc2dpZCAiLS1tZXJnZWQgYW5kIC0tbm8tbWVyZ2VkIG9wdGlvbnMgYXJlIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgIkZsYWdnb3JuYSAtLW1lcmdlZCBvY2ggLS1uby1tZXJnZWQgw6RyIGVuZGFzdCB0aWxsw6V0bmEgaSBsaXN0bMOkZ2UiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTA0CisjOiBidWlsdGluL3RhZy5jOjUyMwogbXNnaWQgIm9ubHkgb25lIC1GIG9yIC1tIG9wdGlvbiBpcyBhbGxvd2VkLiIKIG1zZ3N0ciAiZW5kYXN0IGVuIGF2IGZsYWdnb3JuYSAtRiBlbGxlciAtbSB0aWxsw6V0cy4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTIzCisjOiBidWlsdGluL3RhZy5jOjU0MgogbXNnaWQgInRvbyBtYW55IHBhcmFtcyIKIG1zZ3N0ciAiZsO2ciBtw6VuZ2EgcGFyYW1ldHJhciIKIAotIzogYnVpbHRpbi90YWcuYzo1MjkKKyM6IGJ1aWx0aW4vdGFnLmM6NTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgdGFnIG5hbWUuIgogbXNnc3RyICJcIiVzXCIgw6RyIGludGUgZXR0IGdpbHRpZ3QgdGFnZ25hbW4uIgogCi0jOiBidWlsdGluL3RhZy5jOjUzNAorIzogYnVpbHRpbi90YWcuYzo1NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFnICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgInRhZ2dlbiBcIiVzXCIgZmlubnMgcmVkYW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTY1CisjOiBidWlsdGluL3RhZy5jOjU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJVcGRhdGVkIHRhZyAnJXMnICh3YXMgJXMpXG4iCiBtc2dzdHIgIlVwcGRhdGVyYWQgdGFnZyBcIiVzXCIgKHZhciAlcylcbiIKIAotIzogYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjUwMAorIzogYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjUwMgogbXNnaWQgIlVucGFja2luZyBvYmplY3RzIgogbXNnc3RyICJQYWNrYXIgdXBwIG9iamVrdCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAlcyIKIG1zZ3N0ciAibWlzc2x5Y2thZGVzIHNrYXBhIGthdGFsb2dlbiAlcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBmaWxlICVzIgogbXNnc3RyICJtaXNzbHlja2FkZXMgc2thcGEgZmlsZW4gJXMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIGZpbGUgJXMiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyB0YSBib3J0IGZpbGVuICVzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExMyBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxOQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTUgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSBkaXJlY3RvcnkgJXMiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyB0YSBib3J0IGthdGFsb2dlbiAlcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMzgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRlc3RpbmcgbXRpbWUgaW4gJyVzJyAiCiBtc2dzdHIgIlRlc3RhciBtdGltZSBpIFwiJXNcIiAiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTUyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE1NAogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGFkZGluZyBhIG5ldyBmaWxlIgogbXNnc3RyICJzdGF0LWluZm9ybWF0aW9uZW4gZsO2ciBlbiBrYXRhbG9nIMOkbmRyYXMgaW50ZSBuw6RyIG55YSBmaWxlciBsw6RnZ3MgdGlsbCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNjUKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTY3CiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgYWRkaW5nIGEgbmV3IGRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogInN0YXQtaW5mb3JtYXRpb25lbiBmw7ZyIGVuIGthdGFsb2cgw6RuZHJhcyBpbnRlIG7DpHIgbnlhIGthdGFsb2dlciBsw6RnZ3MgdGlsbCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNzgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTgwCiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBjaGFuZ2VzIGFmdGVyIHVwZGF0aW5nIGEgZmlsZSIKIG1zZ3N0ciAic3RhdC1pbmZvcm1hdGlvbmVuIGbDtnIgZW4ga2F0YWxvZyDDpG5kcmFzIG7DpHIgZmlsZXIgdXBwZGF0ZXJhcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxODkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTkxCiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBjaGFuZ2VzIGFmdGVyIGFkZGluZyBhIGZpbGUgaW5zaWRlIHN1YmRpcmVjdG9yeSIKIG1zZ3N0ciAiIgogInN0YXQtaW5mb3JtYXRpb25lbiBmw7ZyIGVuIGthdGFsb2cgw6RuZHJhcyBuw6RyIGZpbGVyIGzDpGdncyB0aWxsIGkgZW4gIgogInVuZGVya2F0YWxvZyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMDAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjAyCiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgZGVsZXRpbmcgYSBmaWxlIgogbXNnc3RyICJzdGF0LWluZm9ybWF0aW9uZW4gZsO2ciBlbiBrYXRhbG9nIMOkbmRyYXMgaW50ZSBuw6RyIGVuIGZpbCB0YXMgYm9ydCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjE1CiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgZGVsZXRpbmcgYSBkaXJlY3RvcnkiCiBtc2dzdHIgInN0YXQtaW5mb3JtYXRpb25lbiBmw7ZyIGVuIGthdGFsb2cgw6RuZHJhcyBpbnRlIG7DpHIgZW4ga2F0YWxvZyB0YXMgYm9ydCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMjAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIyCiBtc2dpZCAiIE9LIgogbXNnc3RyICIgT0siCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6NTg4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjU5MQogbXNnaWQgImdpdCB1cGRhdGUtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKIG1zZ3N0ciAiZ2l0IHVwZGF0ZS1pbmRleCBbPGZsYWdnb3I+XSBbLS1dIFs8ZmlsPi4uLl0iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTYxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3NAogbXNnaWQgImNvbnRpbnVlIHJlZnJlc2ggZXZlbiB3aGVuIGluZGV4IG5lZWRzIHVwZGF0ZSIKIG1zZ3N0ciAiZm9ydHPDpHR0IHVwcGRhdGVyYSDDpHZlbiBuw6RyIGluZGV4IGludGUgw6RyIMOgam91ciIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NjQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTc3CiBtc2dpZCAicmVmcmVzaDogaWdub3JlIHN1Ym1vZHVsZXMiCiBtc2dzdHIgInJlZnJlc2g6IGlnbm9yZXJhIHVuZGVybW9kdWxlciIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NjcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgwCiBtc2dpZCAiZG8gbm90IGlnbm9yZSBuZXcgZmlsZXMiCiBtc2dzdHIgImlnbm9yZXJhIGludGUgbnlhIGZpbGVyIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODIKIG1zZ2lkICJsZXQgZmlsZXMgcmVwbGFjZSBkaXJlY3RvcmllcyBhbmQgdmljZS12ZXJzYSIKIG1zZ3N0ciAibMOldCBmaWxlciBlcnPDpHR0YSBrYXRhbG9nZXIgb2NoIG9tdsOkbnQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTcxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NAogbXNnaWQgIm5vdGljZSBmaWxlcyBtaXNzaW5nIGZyb20gd29ya3RyZWUiCiBtc2dzdHIgImzDpGdnIG3DpHJrZSB0aWxsIGZpbGVyIHNvbSBzYWtuYXMgaSBhcmJldHNrYXRhbG9nZW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTczCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NgogbXNnaWQgInJlZnJlc2ggZXZlbiBpZiBpbmRleCBjb250YWlucyB1bm1lcmdlZCBlbnRyaWVzIgogbXNnc3RyICJ1cHBkYXRlcmEgw6R2ZW4gb20gaW5kZXhldCBpbm5laMOlbGxlciBlaiBzYW1tYW5zbGFnbmEgcG9zdGVyIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3NgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODkKIG1zZ2lkICJyZWZyZXNoIHN0YXQgaW5mb3JtYXRpb24iCiBtc2dzdHIgInVwcGRhdGVyYSBzdGF0dXNpbmZvcm1hdGlvbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTkzCiBtc2dpZCAibGlrZSAtLXJlZnJlc2gsIGJ1dCBpZ25vcmUgYXNzdW1lLXVuY2hhbmdlZCBzZXR0aW5nIgogbXNnc3RyICJzb20gLS1yZWZyZXNoLCBtZW4gaWdub3JlcmEgYXNzdW1lLXVuY2hhbmdlZC1pbnN0w6RsbG5pbmciCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NwogbXNnaWQgIjxtb2RlPiw8b2JqZWN0Piw8cGF0aD4iCiBtc2dzdHIgIjxsw6RnZT4sPG9iamVrdD4sPHPDtmt2w6RnPiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODUKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk4CiBtc2dpZCAiYWRkIHRoZSBzcGVjaWZpZWQgZW50cnkgdG8gdGhlIGluZGV4IgogbXNnc3RyICJsw6RnZyB0aWxsIGFuZ2l2ZW4gcG9zdCBpIGluZGV4ZXQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDgKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIFwibm90IGNoYW5naW5nXCIiCiBtc2dzdHIgIm1hcmtlcmEgZmlsZXIgc29tIFwiw6RuZHJhcyBpbnRlXCIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTEKIG1zZ2lkICJjbGVhciBhc3N1bWVkLXVuY2hhbmdlZCBiaXQiCiBtc2dzdHIgInJlbnNhIFwiYXNzdW1lLXVuY2hhbmdlZFwiLWJpdGVuIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNAogbXNnaWQgIm1hcmsgZmlsZXMgYXMgXCJpbmRleC1vbmx5XCIiCiBtc2dzdHIgIm1hcmtlcmEgZmlsZXIgc29tIFwiZW5kYXN0IGluZGV4XCIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwMworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDE3CiBtc2dpZCAiY2xlYXIgc2tpcC13b3JrdHJlZSBiaXQiCiBtc2dzdHIgInTDtm0gXCJza2lwLXdvcmt0cmVlXCItYml0ZW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwNgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDIwCittc2dpZCAiZG8gbm90IHRvdWNoIGluZGV4LW9ubHkgZW50cmllcyIKK21zZ3N0ciAicsO2ciBpbnRlIFwiZW5kYXN0IGluZGV4XCItcG9zdGVyIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjIKIG1zZ2lkICJhZGQgdG8gaW5kZXggb25seTsgZG8gbm90IGFkZCBjb250ZW50IHRvIG9iamVjdCBkYXRhYmFzZSIKIG1zZ3N0ciAibMOkZ2cgZW5kYXN0IHRpbGwgaW5kZXhldDsgbMOkZ2cgaW50ZSB0aWxsIGlubmVow6VsbGV0IGkgb2JqZWt0ZGF0YWJhc2VuIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNAogbXNnaWQgInJlbW92ZSBuYW1lZCBwYXRocyBldmVuIGlmIHByZXNlbnQgaW4gd29ya3RyZWUiCiBtc2dzdHIgInRhIGJvcnQgbmFtbmdpdm5hIHPDtmt2w6RnYXIgw6R2ZW4gb20gZGUgZmlubnMgaSBhcmJldHNrYXRhbG9nZW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI2CiBtc2dpZCAid2l0aCAtLXN0ZGluOiBpbnB1dCBsaW5lcyBhcmUgdGVybWluYXRlZCBieSBudWxsIGJ5dGVzIgogbXNnc3RyICJtZWQgLS1zdGRpbjogaW5kYXRhcmFkZXIgdGVybWluZXJhcyBtZWQgbnVsbC1ieXRlIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTIKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyOAogbXNnaWQgInJlYWQgbGlzdCBvZiBwYXRocyB0byBiZSB1cGRhdGVkIGZyb20gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgImzDpHMgbGlzdGEgw7Z2ZXIgc8O2a3bDpGdhciBhdHQgdXBwZGF0ZXJhIGZyw6VuIHN0YW5kYXJkIGluIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzMgogbXNnaWQgImFkZCBlbnRyaWVzIGZyb20gc3RhbmRhcmQgaW5wdXQgdG8gdGhlIGluZGV4IgogbXNnc3RyICJsw6RnZyBwb3N0ZXIgZnLDpW4gc3RhbmRhcmQgaW4gdGlsbCBpbmRleGV0IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzNgogbXNnaWQgInJlcG9wdWxhdGUgc3RhZ2VzICMyIGFuZCAjMyBmb3IgdGhlIGxpc3RlZCBwYXRocyIKIG1zZ3N0ciAiw6V0ZXJmeWxsIGV0YXBwIDIgb2NoIDMgZnLDpW4gYW5naXZuYSBzw7ZrdsOkZ2FyIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0MAogbXNnaWQgIm9ubHkgdXBkYXRlIGVudHJpZXMgdGhhdCBkaWZmZXIgZnJvbSBIRUFEIgogbXNnc3RyICJ1cHBkYXRlcmEgZW5kYXN0IHBvc3RlciBzb20gc2tpbGplciBzaWcgZnLDpW4gSEVBRCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDQKIG1zZ2lkICJpZ25vcmUgZmlsZXMgbWlzc2luZyBmcm9tIHdvcmt0cmVlIgogbXNnc3RyICJpZ25vcmVyYSBmaWxlciBzb20gc2FrbmFzIGkgYXJiZXRza2F0YWxvZ2VuIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NwogbXNnaWQgInJlcG9ydCBhY3Rpb25zIHRvIHN0YW5kYXJkIG91dHB1dCIKIG1zZ3N0ciAicmFwcG9ydGVyYSDDpXRnw6RyZGVyIHDDpSBzdGFuZGFyZCB1dCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDMzCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDkKIG1zZ2lkICIoZm9yIHBvcmNlbGFpbnMpIGZvcmdldCBzYXZlZCB1bnJlc29sdmVkIGNvbmZsaWN0cyIKIG1zZ3N0ciAiKGbDtnIgcG9yc2xpbikgZ2zDtm0gc3BhcmFkZSBvbMO2c3RhIGtvbmZsaWt0ZXIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzNworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDUzCiBtc2dpZCAid3JpdGUgaW5kZXggaW4gdGhpcyBmb3JtYXQiCiBtc2dzdHIgInNrcml2IGluZGV4IGkgZGV0dGEgZm9ybWF0IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1NQogbXNnaWQgImVuYWJsZSBvciBkaXNhYmxlIHNwbGl0IGluZGV4IgogbXNnc3RyICJha3RpdmVyYSBlbGxlciBpbmFrdGl2ZXJhIGRlbGF0IGluZGV4IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1NwogbXNnaWQgImVuYWJsZS9kaXNhYmxlIHVudHJhY2tlZCBjYWNoZSIKIG1zZ3N0ciAiYWt0aXZlcmEvaW5ha3RpdmVyYSBvc3DDpXJhZCBjYWNoZSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQzCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTkKIG1zZ2lkICJ0ZXN0IGlmIHRoZSBmaWxlc3lzdGVtIHN1cHBvcnRzIHVudHJhY2tlZCBjYWNoZSIKIG1zZ3N0ciAidGVzdGEgb20gZmlsc3lzdGVtZXQgc3TDtmRlciBvc3DDpXJhZCBjYWNoZSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjEKIG1zZ2lkICJlbmFibGUgdW50cmFja2VkIGNhY2hlIHdpdGhvdXQgdGVzdGluZyB0aGUgZmlsZXN5c3RlbSIKIG1zZ3N0ciAiYWt0aXZlcmEgb3Nww6VyYWQgY2FjaGUgdXRhbiBhdHQgdGVzdGEgZmlsc3lzdGVtZXQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDYzCiBtc2dpZCAid3JpdGUgb3V0IHRoZSBpbmRleCBldmVuIGlmIGlzIG5vdCBmbGFnZ2VkIGFzIGNoYW5nZWQiCiBtc2dzdHIgInNrcml2IHV0IGluZGV4ZXQgw6R2ZW4gb20gZGV0IGludGUgYW5naXZpdHMgc29tIMOkbmRyYXQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDY1CiBtc2dpZCAiZW5hYmxlIG9yIGRpc2FibGUgZmlsZSBzeXN0ZW0gbW9uaXRvciIKIG1zZ3N0ciAiYWt0aXZlcmEgZWxsZXIgaW5ha3RpdmVyYSBmaWxzeXN0ZW1zw7Z2ZXJ2YWtuaW5nIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2NwogbXNnaWQgIm1hcmsgZmlsZXMgYXMgZnNtb25pdG9yIHZhbGlkIgogbXNnc3RyICJtYXJrZXJhIGZpbGVyIHNvbSBcImZzbW9uaXRvciB2YWxpZFwiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA3MAogbXNnaWQgImNsZWFyIGZzbW9uaXRvciB2YWxpZCBiaXQiCiBtc2dzdHIgInTDtm0gXCJmc21vbml0b3IgdmFsaWRcIi1iaXQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE1MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTczCiBtc2dpZCAiIgogImNvcmUuc3BsaXRJbmRleCBpcyBzZXQgdG8gZmFsc2U7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCB0byAiCiAiZW5hYmxlIHNwbGl0IGluZGV4IgpAQCAtMTc4NTQsNyArMjE0OTcsNyBAQAogImNvcmUuc3BsaXRJbmRleCDDpHIgc2F0dCB0aWxsIGZhbHNlOyB0YSBib3J0IGVsbGVyIMOkbmRyYSBkZXQgb20gZHUgdmVya2xpZ2VuICIKICJ2aWxsIGFrdGl2ZXJhIGRlbGF0IGluZGV4IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNjIKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4MgogbXNnaWQgIiIKICJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCB0byAiCiAiZGlzYWJsZSBzcGxpdCBpbmRleCIKQEAgLTE3ODYyLDcgKzIxNTA1LDcgQEAKICJjb3JlLnNwbGl0SW5kZXggw6RyIHNhdHQgdGlsbCB0cnVlOyB0YSBib3J0IGVsbGVyIMOkbmRyYSBkZXQgb20gZHUgdmVya2xpZ2VuICIKICJ2aWxsIGluYWt0aXZlcmEgZGVsYXQgaW5kZXgiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTk0CiBtc2dpZCAiIgogImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCiAidG8gZGlzYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgpAQCAtMTc4NzAsMTEgKzIxNTEzLDExIEBACiAiY29yZS51bnRyYWNrZWRDYWNoZSDDpHIgc2F0dCB0aWxsIHRydWU7IHRhIGJvcnQgZWxsZXIgw6RuZHJhIGRldCBvbSBkdSAiCiAidmVya2xpZ2VuIHZpbGwgaW5ha3RpdmVyYSBkZW4gb3Nww6VyYWRlIGNhY2hlbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTc3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExOTgKIG1zZ2lkICJVbnRyYWNrZWQgY2FjaGUgZGlzYWJsZWQiCiBtc2dzdHIgIk9zcMOlcmFkIGNhY2hlIMOkciBpbmFrdGl2ZXJhZCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTg1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDYKIG1zZ2lkICIiCiAiY29yZS51bnRyYWNrZWRDYWNoZSBpcyBzZXQgdG8gZmFsc2U7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCiAidG8gZW5hYmxlIHRoZSB1bnRyYWNrZWQgY2FjaGUiCkBAIC0xNzg4MiwyNiArMjE1MjUsMjYgQEAKICJjb3JlLnVudHJhY2tlZENhY2hlIMOkciBzYXR0IHRpbGwgZmFsc2U7IHRhIGJvcnQgZWxsZXIgw6RuZHJhIGRldCBvbSBkdSAiCiAidmVya2xpZ2VuIHZpbGwgYWt0aXZlcmEgZGVuIG9zcMOlcmFkZSBjYWNoZW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVudHJhY2tlZCBjYWNoZSBlbmFibGVkIGZvciAnJXMnIgogbXNnc3RyICJPc3DDpXJhZCBjYWNoZSDDpHIgYWt0aXZlcmFkIGbDtnIgXCIlc1wiIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExOTcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIxOAogbXNnaWQgImNvcmUuZnNtb25pdG9yIGlzIHVuc2V0OyBzZXQgaXQgaWYgeW91IHJlYWxseSB3YW50IHRvIGVuYWJsZSBmc21vbml0b3IiCiBtc2dzdHIgImNvcmUuZnNtb25pdG9yIGludGUgc2F0dDsgc8OkdHQgb20gZHUgdmVya2xpZ2VuIHZpbGwgYWt0aXZlcmEgZnNtb25pdG9yIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyMgogbXNnaWQgImZzbW9uaXRvciBlbmFibGVkIgogbXNnc3RyICJmc21vbml0b3IgYWt0aXZlcmF0IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyNQogbXNnaWQgIiIKICJjb3JlLmZzbW9uaXRvciBpcyBzZXQ7IHJlbW92ZSBpdCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZGlzYWJsZSBmc21vbml0b3IiCiBtc2dzdHIgIiIKICJjb3JlLmZzbW9uaXRvciDDpHIgc2F0dDsgdGEgYm9ydCBvbSBkdSB2ZXJrbGlnZW4gdmlsbCBpbmFrdGl2ZXJhIGZzbW9uaXRvciIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMjkKIG1zZ2lkICJmc21vbml0b3IgZGlzYWJsZWQiCiBtc2dzdHIgImZzbW9uaXRvciBpbmFrdGl2ZXJhdCIKIApAQCAtMTc5NDUsNiArMjE1ODgsMTAgQEAKIG1zZ2lkICJnaXQgdXBsb2FkLXBhY2sgWzxvcHRpb25zPl0gPGRpcj4iCiBtc2dzdHIgImdpdCB1cGxvYWQtcGFjayBbPGZsYWdnb3I+XSA8a2F0YWxvZz4iCiAKKyM6IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyMyB0L2hlbHBlci90ZXN0LXNlcnZlLXYyLmM6MTcKK21zZ2lkICJxdWl0IGFmdGVyIGEgc2luZ2xlIHJlcXVlc3QvcmVzcG9uc2UgZXhjaGFuZ2UiCittc2dzdHIgImF2c2x1dGEgb21lZGVsYmFydCBlZnRlciBmw7Zyc3RhIGFucm9wL3N2YXItdXR2w6R4bGluZyIKKwogIzogYnVpbHRpbi91cGxvYWQtcGFjay5jOjI1CiBtc2dpZCAiZXhpdCBpbW1lZGlhdGVseSBhZnRlciBpbml0aWFsIHJlZiBhZHZlcnRpc2VtZW50IgogbXNnc3RyICJhdnNsdXRhIG9tZWRlbGJhcnQgZWZ0ZXIgaW5sZWRhbmRlIGt1bmfDtnJlbHNlIGF2IHJlZmVyZW5zZXIiCkBAIC0xNzk1NywxNSArMjE2MDQsMTUgQEAKIG1zZ2lkICJpbnRlcnJ1cHQgdHJhbnNmZXIgYWZ0ZXIgPG4+IHNlY29uZHMgb2YgaW5hY3Rpdml0eSIKIG1zZ3N0ciAiYXZicnl0IMO2dmVyZsO2cmluZ2VuIGVmdGVyIDxuPiBzZWt1bmRlcnMgaW5ha3Rpdml0ZXQiCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjIwCisjOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzoxOQogbXNnaWQgImdpdCB2ZXJpZnktY29tbWl0IFstdiB8IC0tdmVyYm9zZV0gPGNvbW1pdD4uLi4iCiBtc2dzdHIgImdpdCB2ZXJpZnktY29tbWl0IFstdiB8IC0tdmVyYm9zZV0gPGluY2hlY2tuaW5nPi4uLiIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NzYKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjY4CiBtc2dpZCAicHJpbnQgY29tbWl0IGNvbnRlbnRzIgogbXNnc3RyICJ2aXNhIGlubmVow6VsbCBmw7ZyIGluY2hlY2tuaW5nIgogCi0jOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo3NyBidWlsdGluL3ZlcmlmeS10YWcuYzozOAorIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NjkgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzcKIG1zZ2lkICJwcmludCByYXcgZ3BnIHN0YXR1cyBvdXRwdXQiCiBtc2dzdHIgInZpc2EgcsOlYSBncGctc3RhdHVzZGF0YSIKIApAQCAtMTc5ODEsMTEgKzIxNjI4LDExIEBACiBtc2dpZCAic2hvdyBzdGF0aXN0aWNzIG9ubHkiCiBtc2dzdHIgInZpc2EgZW5kYXN0IHN0YXRpc3RpayIKIAotIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MTkKKyM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjE4CiBtc2dpZCAiZ2l0IHZlcmlmeS10YWcgWy12IHwgLS12ZXJib3NlXSBbLS1mb3JtYXQ9PGZvcm1hdD5dIDx0YWc+Li4uIgogbXNnc3RyICJnaXQgdmVyaWZ5LXRhZyBbLXYgfCAtLXZlcmJvc2VdIFstLWZvcm1hdD08Zm9ybWF0XSA8dGFnZz4uLi4iCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM3CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzozNgogbXNnaWQgInByaW50IHRhZyBjb250ZW50cyIKIG1zZ3N0ciAidmlzYSBpbm5laMOlbGwgZsO2ciB0YWciCiAKQEAgLTE4MDE3LDcgKzIxNjY0LDcgQEAKIG1zZ2lkICJnaXQgd29ya3RyZWUgdW5sb2NrIDxwYXRoPiIKIG1zZ3N0ciAiZ2l0IHdvcmt0cmVlIHVubG9jayA8c8O2a3bDpGc+IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjAgYnVpbHRpbi93b3JrdHJlZS5jOjg3MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjYwIGJ1aWx0aW4vd29ya3RyZWUuYzo4OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSAnJXMnIgogbXNnc3RyICJtaXNzbHlja2FkZXMgdGEgYm9ydCBcIiVzXCIiCkBAIC0xODA2OSwxMiArMjE3MTYsMTIgQEAKIG1zZ2lkICInJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICJcIiVzXCIgZmlubnMgcmVkYW4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlLWFkZCB3b3JrdHJlZSAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIGzDpGdnYSBpbiBhcmJldHNrYXRhbG9nZW4gXCIlc1wiIGlnZW4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTYKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcycgaXMgYSBtaXNzaW5nIGJ1dCBsb2NrZWQgd29ya3RyZWU7XG4iCkBAIC0xODA4NCw3ICsyMTczMSw3IEBACiAiYW52w6RuZCBcImFkZCAtZiAtZlwiIGbDtnIgYXR0IMO2dmVyc3R5cmEsIGVsbGVyIFwidW5sb2NrXCIgb2NoIFwicHJ1bmVcIiBlbGxlciAiCiAiXCJyZW1vdmVcIiBmw7ZyIGF0dCByZW5zYSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBpcyBhIG1pc3NpbmcgYnV0IGFscmVhZHkgcmVnaXN0ZXJlZCB3b3JrdHJlZTtcbiIKQEAgLTE4MDk0LDEyMSArMjE3NDEsMTIxIEBACiAiYW52w6RuZCBcImFkZCAtZlwiIGbDtnIgYXR0IMO2dmVyc3R5cmEsIGVsbGVyIFwicHJ1bmVcIiBlbGxlciBcInJlbW92ZVwiIGbDtnIgIgogImF0dCByZW5zYSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjMwOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjMwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBvZiAnJXMnIgogbXNnc3RyICJrdW5kZSBpbnRlIHNrYXBhIGthdGFsb2dlbiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MjggYnVpbHRpbi93b3JrdHJlZS5jOjQzNAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMiBidWlsdGluL3dvcmt0cmVlLmM6NDM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAobmV3IGJyYW5jaCAnJXMnKSIKIG1zZ3N0ciAiRsO2cmJlcmVkZXIgYXJiZXRza2F0YWxvZyAobnkgZ3JlbiBcIiVzXCIpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDMwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAocmVzZXR0aW5nIGJyYW5jaCAnJXMnOyB3YXMgYXQgJXMpIgogbXNnc3RyICJGw7ZyYmVyZWRlciBhcmJldHNrYXRhbG9nICjDpXRlcnN0w6RsbGVyIGdyZW4gXCIlc1wiOyB2YXIgcMOlICVzKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKGNoZWNraW5nIG91dCAnJXMnKSIKIG1zZ3N0ciAiRsO2cmJlcmVkZXIgYXJiZXRza2F0YWxvZyAoY2hlY2thciB1dCBcIiVzXCIpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDQ1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAoZGV0YWNoZWQgSEVBRCAlcykiCiBtc2dzdHIgIkbDtnJiZXJlZGVyIGFyYmV0c2thdGFsb2cgKGZyw6Vua29wcGxhdCBIRUFEICVzKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ4NgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MAogbXNnaWQgImNoZWNrb3V0IDxicmFuY2g+IGV2ZW4gaWYgYWxyZWFkeSBjaGVja2VkIG91dCBpbiBvdGhlciB3b3JrdHJlZSIKIG1zZ3N0ciAiIgogImNoZWNrYSB1dCA8Z3Jlbj4gw6R2ZW4gb20gZGVuIHJlZGFuIMOkciB1dGNoZWNrYWQgaSBlbiBhbm5hbiBhcmJldHNrYXRhbG9nIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDg5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDkzCiBtc2dpZCAiY3JlYXRlIGEgbmV3IGJyYW5jaCIKIG1zZ3N0ciAic2thcGEgZW4gbnkgZ3JlbiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NQogbXNnaWQgImNyZWF0ZSBvciByZXNldCBhIGJyYW5jaCIKIG1zZ3N0ciAic2thcGEgZWxsZXIgw6V0ZXJzdMOkbGwgZW4gZ3JlbiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NwogbXNnaWQgInBvcHVsYXRlIHRoZSBuZXcgd29ya2luZyB0cmVlIgogbXNnc3RyICJiZWZvbGthIGRlbiBueWEgYXJiZXRza2F0YWxvZ2VuIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDk0CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk4CiBtc2dpZCAia2VlcCB0aGUgbmV3IHdvcmtpbmcgdHJlZSBsb2NrZWQiCiBtc2dzdHIgImzDpXQgYXJiZXRza2F0YWxvZ2VuIGbDtnJibGkgbMOlc3QiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTcKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDEKIG1zZ2lkICJzZXQgdXAgdHJhY2tpbmcgbW9kZSAoc2VlIGdpdC1icmFuY2goMSkpIgogbXNnc3RyICJzdMOkbGwgaW4gc3DDpXJuaW5nc2zDpGdlIChzZSBnaXQtYnJhbmNoKDEpKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwMAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwNAogbXNnaWQgInRyeSB0byBtYXRjaCB0aGUgbmV3IGJyYW5jaCBuYW1lIHdpdGggYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgogbXNnc3RyICJmw7Zyc8O2ayBtYXRjaGEgbmFtbiBww6UgbnkgZ3JlbiBtb3QgZW4gZmrDpHJyc3DDpXJhbmRlIGdyZW4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MTIKIG1zZ2lkICItYiwgLUIsIGFuZCAtLWRldGFjaCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICItYiwgLUIgb2NoIC0tZGV0YWNoIMOkciDDtm1zZXNpZGlndCB1dGVzbHV0YW5kZSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjU2OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjU3MwogbXNnaWQgIi0tW25vLV10cmFjayBjYW4gb25seSBiZSB1c2VkIGlmIGEgbmV3IGJyYW5jaCBpcyBjcmVhdGVkIgogbXNnc3RyICItLVtuby1ddHJhY2sga2FuIGVuZGFzdCBhbnbDpG5kYXMgbsOkciBueSBncmFuIHNrYXBhcyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY2OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY3MwogbXNnaWQgInJlYXNvbiBmb3IgbG9ja2luZyIKIG1zZ3N0ciAib3JzYWsgdGlsbCBsw6VzIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjgxIGJ1aWx0aW4vd29ya3RyZWUuYzo3MTQgYnVpbHRpbi93b3JrdHJlZS5jOjc3MgotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg5OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4NSBidWlsdGluL3dvcmt0cmVlLmM6NzE4IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTIKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIlwiJXNcIiDDpHIgaW50ZSBlbiBhcmJldHNrYXRhbG9nIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjgzIGJ1aWx0aW4vd29ya3RyZWUuYzo3MTYKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODcgYnVpbHRpbi93b3JrdHJlZS5jOjcyMAogbXNnaWQgIlRoZSBtYWluIHdvcmtpbmcgdHJlZSBjYW5ub3QgYmUgbG9ja2VkIG9yIHVubG9ja2VkIgogbXNnc3RyICJIdXZ1ZGFyYmV0c2thdGFsb2dlbiBrYW4gaW50ZSBsw6VzYXMgZWxsZXIgbMOlc2FzIHVwcCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5MgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFscmVhZHkgbG9ja2VkLCByZWFzb246ICVzIgogbXNnc3RyICJcIiVzXCIgw6RyIHJlZGFuIGzDpXN0LCBvcnNhazogJXMiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2OTAKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbHJlYWR5IGxvY2tlZCIKIG1zZ3N0ciAiXCIlc1wiIMOkciByZWRhbiBsw6VzdCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjcxOAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjcyMgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBsb2NrZWQiCiBtc2dzdHIgIlwiJXNcIiDDpHIgaW50ZSBsw6VzdCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc0MworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc2MwogbXNnaWQgIndvcmtpbmcgdHJlZXMgY29udGFpbmluZyBzdWJtb2R1bGVzIGNhbm5vdCBiZSBtb3ZlZCBvciByZW1vdmVkIgogbXNnc3RyICJhcmJldHNrYXRhbG9nZXIgbWVkIHVuZGVybW9kdWxlciBrYW4gaW50ZSBmbHl0dGFzIGVsbGVyIHRhcyBib3J0IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzUxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzcxCiBtc2dpZCAiZm9yY2UgbW92ZSBldmVuIGlmIHdvcmt0cmVlIGlzIGRpcnR5IG9yIGxvY2tlZCIKIG1zZ3N0ciAidHZpbmdhIGZseXR0bmluZyDDpHZlbiBvbSBhcmJldHNrYXRhbG9nZW4gw6RyIHNtdXRzaWcgZWxsZXIgbMOlc3QiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NzQgYnVpbHRpbi93b3JrdHJlZS5jOjkwMQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5NCBidWlsdGluL3dvcmt0cmVlLmM6OTIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYSBtYWluIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiXCIlc1wiIMOkciBpbnRlIGVuIGh1dnVkYXJiZXRza2F0YWxvZyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZmlndXJlIG91dCBkZXN0aW5hdGlvbiBuYW1lIGZyb20gJyVzJyIKIG1zZ3N0ciAia3VuZGUgaW50ZSBsaXN0YSB1dCBtw6VsbmFtbiBmcsOlbiBcIiVzXCIiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3ODUKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFyZ2V0ICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIm3DpWxldCBcIiVzXCIgZmlubnMgcmVkYW4iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNhbm5vdCBtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZSwgbG9jayByZWFzb246ICVzXG4iCkBAIC0xODIxNyw3ICsyMTg2NCw3IEBACiAia2FuIGludGUgZmx5dHRhIGVuIGzDpXN0IGFyYmV0c2thdGFsb2csIG9yc2FrIHRpbGwgbMOlczogJXNcbiIKICJhbnbDpG5kIFwibW92ZSAtZiAtZlwiIGbDtnIgYXR0IMO2dmVyc3R5cmEsIGVsbGVyIGzDpXMgdXBwIGbDtnJzdCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxNQogbXNnaWQgIiIKICJjYW5ub3QgbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWU7XG4iCiAidXNlICdtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCkBAIC0xODIyNSwzNiArMjE4NzIsMzggQEAKICJrYW4gaW50ZSBmbHl0dGEgZW4gbMOlc3QgYXJiZXRza2F0YWxvZztcbiIKICJhbnbDpG5kIFwibW92ZSAtZiAtZlwiIGbDtnIgYXR0IMO2dmVyc3R5cmEsIGVsbGVyIGzDpXMgdXBwIGbDtnJzdCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ2YWxpZGF0aW9uIGZhaWxlZCwgY2Fubm90IG1vdmUgd29ya2luZyB0cmVlOiAlcyIKIG1zZ3N0ciAia29udHJvbGwgbWlzc2x5Y2thZGVzLCBrYW4gaW50ZSBmbHl0dGEgYXJiZXRza2F0YWxvZzogJXMiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG1vdmUgJyVzJyB0byAnJXMnIgogbXNnc3RyICJtaXNzbHlja2FkZXMgZmx5dHRhIFwiJXNcIiB0aWxsIFwiJXNcIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg1MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcnVuICdnaXQgc3RhdHVzJyBvbiAnJXMnIgogbXNnc3RyICJtaXNzbHlja2FkZXMga8O2cmEgXCJnaXQgc3RhdHVzXCIgcMOlIFwiJXNcIiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg1NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg3NQogIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGlzIGRpcnR5LCB1c2UgLS1mb3JjZSB0byBkZWxldGUgaXQiCi1tc2dzdHIgIlwiJXNcIiDDpHIgc211dHNpZ3QsIGFudsOkbmQgLS1mb3JjZSBmw7ZyIGF0dCB0YSBib3J0IGRldCIKK21zZ2lkICInJXMnIGNvbnRhaW5zIG1vZGlmaWVkIG9yIHVudHJhY2tlZCBmaWxlcywgdXNlIC0tZm9yY2UgdG8gZGVsZXRlIGl0IgorbXNnc3RyICIiCisiXCIlc1wiIGlubmVow6VsbGVyIMOkbmRyYWRlIGVsbGVyIG9zcMOlcmFkZSBmaWxlciwgYW52w6RuZCAtLWZvcmNlIGbDtnIgYXR0IHRhICIKKyJib3J0IGRldCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg2MAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcnVuICdnaXQgc3RhdHVzJyBvbiAnJXMnLCBjb2RlICVkIgogbXNnc3RyICJtaXNzbHlja2FkZXMga8O2cmEgXCJnaXQgc3RhdHVzXCIgcMOlIFwiJXNcIiwga29kICVkIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODgzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTAzCiBtc2dpZCAiZm9yY2UgcmVtb3ZhbCBldmVuIGlmIHdvcmt0cmVlIGlzIGRpcnR5IG9yIGxvY2tlZCIKIG1zZ3N0ciAidHZpbmdhIHRhIGJvcnQgw6R2ZW4gb20gYXJiZXRza2F0YWxvZ2VuIMOkciBzbXV0c2lnIGVsbGVyIGzDpXN0IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6OTA2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjYW5ub3QgcmVtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZSwgbG9jayByZWFzb246ICVzXG4iCkBAIC0xODI2Myw3ICsyMTkxMiw3IEBACiAia2FuIGludGUgdGEgYm9ydCBlbiBsw6VzdCBhcmJldHNrYXRhbG9nLCBvcnNhayB0aWxsIGzDpXNldDogJXNcbiIKICJhbnbDpG5kIFwicmVtb3ZlIC1mIC1mXCIgZsO2ciBhdHQgw7Z2ZXJzdHlyYSwgZWxsZXIgbMOlcyB1cHAgZsO2cnN0IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6OTA4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTI4CiBtc2dpZCAiIgogImNhbm5vdCByZW1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlO1xuIgogInVzZSAncmVtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCkBAIC0xODI3MSwyOCArMjE5MjAsNDMgQEAKICJrYW4gaW50ZSB0YSBib3J0IGVuIGzDpXN0IGFyYmV0c2thdGFsb2c7XG4iCiAiYW52w6RuZCBcInJlbW92ZSAtZiAtZlwiIGbDtnIgYXR0IMO2dmVyc3R5cmEsIGVsbGVyIGzDpXMgdXBwIGbDtnJzdCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkxMQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ2YWxpZGF0aW9uIGZhaWxlZCwgY2Fubm90IHJlbW92ZSB3b3JraW5nIHRyZWU6ICVzIgogbXNnc3RyICJrb250cm9sbCBtaXNzbHlja2FkZXMsIGthbiBpbnRlIHRhIGJvcnQgYXJiZXRza2F0YWxvZzogJXMiCiAKLSM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjE0CisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzoxNQogbXNnaWQgImdpdCB3cml0ZS10cmVlIFstLW1pc3Npbmctb2tdIFstLXByZWZpeD08cHJlZml4Pi9dIgogbXNnc3RyICJnaXQgd3JpdGUtdHJlZSBbLS1taXNzaW5nLW9rXSBbLS1wcmVmaXg9PHByZWZpeD4vXSIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjcKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI4CiBtc2dpZCAiPHByZWZpeD4vIgogbXNnc3RyICI8cHJlZml4Pi8iCiAKLSM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI4CisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyOQogbXNnaWQgIndyaXRlIHRyZWUgb2JqZWN0IGZvciBhIHN1YmRpcmVjdG9yeSA8cHJlZml4PiIKIG1zZ3N0ciAidmlzYSB0csOkZG9iamVrdCBmw7ZyIHVuZGVya2F0YWxvZ2VuIDxwcmVmaXg+IgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzozMAorIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MzEKIG1zZ2lkICJvbmx5IHVzZWZ1bCBmb3IgZGVidWdnaW5nIgogbXNnc3RyICJlbmRhc3QgYW52w6RuZGJhcnQgdmlkIGZlbHPDtmtuaW5nIgogCi0jOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyMjIKKyM6IGZhc3QtaW1wb3J0LmM6MzEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFeHBlY3RlZCAnbWFyaycgY29tbWFuZCwgZ290ICVzIgorbXNnc3RyICJGw7ZydsOkbnRhZGUgXCJtYXJrXCIta29tbWFuZG8sIGZpY2sgJXMiCisKKyM6IGZhc3QtaW1wb3J0LmM6MzEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJFeHBlY3RlZCAndG8nIGNvbW1hbmQsIGdvdCAlcyIKK21zZ3N0ciAiRsO2cnbDpG50YWRlIFwidG9cIi1rb21tYW5kbywgZmljayAlcyIKKworIzogZmFzdC1pbXBvcnQuYzozMjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImZlYXR1cmUgJyVzJyBmb3JiaWRkZW4gaW4gaW5wdXQgd2l0aG91dCAtLWFsbG93LXVuc2FmZS1mZWF0dXJlcyIKK21zZ3N0ciAiZnVua3Rpb25lbiBcIiVzXCIgZsO2cmJqdWRlbiBpIGluZGF0YSB1dGFuIC0tYWxsb3ctdW5zYWZlLWZlYXR1cmVzIgorCisjOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBwZXJtaXNzaW9ucyBvbiB5b3VyIHNvY2tldCBkaXJlY3RvcnkgYXJlIHRvbyBsb29zZTsgb3RoZXJcbiIKQEAgLTE4MzA1LDcgKzIxOTY5LDcgQEAKICJcbiIKICJcdGNobW9kIDA3MDAgJXMiCiAKLSM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjI3MQorIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjcyCiBtc2dpZCAicHJpbnQgZGVidWdnaW5nIG1lc3NhZ2VzIHRvIHN0ZGVyciIKIG1zZ3N0ciAic2tyaXYgZmVsc8O2a25pbmdzbWVkZGVsYW5kZW4gcMOlIHN0YW5kYXJkIGZlbCIKIApAQCAtMTgzMTgsNiArMjE5ODIsMTQgQEAKIG1zZ2lkICJ0b28gbWFueSBjb21taXRzIG1hcmtlZCByZWFjaGFibGUiCiBtc2dzdHIgImbDtnIgbcOlbmdhIGluY2hlY2tuaW5nYXIgbWFya2VyYWRlIG7DpWJhcmEiCiAKKyM6IHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzo3Cittc2dpZCAidGVzdC10b29sIHNlcnZlLXYyIFs8b3B0aW9ucz5dIgorbXNnc3RyICJ0ZXN0LXRvb2wgc2VydmUtdjIgWzxmbGFnZ29yPl0iCisKKyM6IHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzoxOQorbXNnaWQgImV4aXQgaW1tZWRpYXRlbHkgYWZ0ZXIgYWR2ZXJ0aXNpbmcgY2FwYWJpbGl0aWVzIgorbXNnc3RyICJhdnNsdXRhIG9tZWRlbGJhcnQgZWZ0ZXIga3VuZ8O2cmVsc2UgYXYga2FwYWJpbGl0ZXRlciIKKwogIzogZ2l0LmM6MjcKIG1zZ2lkICIiCiAiZ2l0IFstLXZlcnNpb25dIFstLWhlbHBdIFstQyA8cGF0aD5dIFstYyA8bmFtZT49PHZhbHVlPl1cbiIKQEAgLTE4MzM5LDEwMCArMjIwMTEsMTUyIEBACiBtc2dpZCAiIgogIidnaXQgaGVscCAtYScgYW5kICdnaXQgaGVscCAtZycgbGlzdCBhdmFpbGFibGUgc3ViY29tbWFuZHMgYW5kIHNvbWVcbiIKICJjb25jZXB0IGd1aWRlcy4gU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIG9yICdnaXQgaGVscCA8Y29uY2VwdD4nXG4iCi0idG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC4iCisidG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC5cbiIKKyJTZWUgJ2dpdCBoZWxwIGdpdCcgZm9yIGFuIG92ZXJ2aWV3IG9mIHRoZSBzeXN0ZW0uIgogbXNnc3RyICIiCiAiXCJnaXQgaGVscCAtYVwiIG9jaCBcImdpdCBoZWxwIC1nXCIgdmlzYXIgdGlsbGfDpG5nbGlnYSB1bmRlcmtvbW1hbmRvbiBvY2hcbiIKICJuw6VncmEga29uY2VwdHbDpGdsZWRuaW5nYXIuIFNlIFwiZ2l0IGhlbHAgPGtvbW1hbmRvPlwiIGVsbGVyIFwiZ2l0IGhlbHBcbiIKLSI8a29uY2VwdD5cIiBmw7ZyIGF0dCBsw6RzYSBtZXIgb20gc3BlY2lmaWthIHVuZGVya29tbWFuZG9uIG9jaCBrb25jZXB0LiIKKyI8a29uY2VwdD5cIiBmw7ZyIGF0dCBsw6RzYSBtZXIgb20gc3BlY2lmaWthIHVuZGVya29tbWFuZG9uIG9jaCBrb25jZXB0LlxuIgorIlNlZSBcImdpdCBoZWxwIGdpdFwiIGbDtnIgZW4gw7Z2ZXJzaWt0IMO2dmVyIHN5c3RlbWV0LiIKIAotIzogZ2l0LmM6MTczCisjOiBnaXQuYzoxODYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtLWdpdC1kaXJcbiIKIG1zZ3N0ciAiaW5nZW4ga2F0YWxvZyBhbmdhdnMgZsO2ciAtLWdpdC1kaXJcbiIKIAotIzogZ2l0LmM6MTg3CisjOiBnaXQuYzoyMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gbmFtZXNwYWNlIGdpdmVuIGZvciAtLW5hbWVzcGFjZVxuIgogbXNnc3RyICJpbmdlbiBuYW1ucnltZCBhbmdhdnMgZsO2ciAtLW5hbWVzcGFjZVxuIgogCi0jOiBnaXQuYzoyMDEKKyM6IGdpdC5jOjIxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBkaXJlY3RvcnkgZ2l2ZW4gZm9yIC0td29yay10cmVlXG4iCiBtc2dzdHIgImluZ2VuIGthdGFsb2cgYW5nYXZzIGbDtnIgLS13b3JrLXRyZWVcbiIKIAotIzogZ2l0LmM6MjE1CisjOiBnaXQuYzoyMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gcHJlZml4IGdpdmVuIGZvciAtLXN1cGVyLXByZWZpeFxuIgogbXNnc3RyICJpbmdldCBwcmVmaXggYW5nYXZzIGbDtnIgLS1zdXBlci1wcmVmaXhcbiIKIAotIzogZ2l0LmM6MjM3CisjOiBnaXQuYzoyNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiLWMgZXhwZWN0cyBhIGNvbmZpZ3VyYXRpb24gc3RyaW5nXG4iCiBtc2dzdHIgIi1jIGbDtnJ2w6RudGFyIGVuIGtvbmZpZ3VyYXRpb25zc3Ryw6RuZ1xuIgogCi0jOiBnaXQuYzoyNzUKKyM6IGdpdC5jOjI4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBkaXJlY3RvcnkgZ2l2ZW4gZm9yIC1DXG4iCiBtc2dzdHIgImluZ2VuIGthdGFsb2cgYW5nYXZzIGbDtnIgLUNcbiIKIAotIzogZ2l0LmM6MzAwCisjOiBnaXQuYzozMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvcHRpb246ICVzXG4iCiBtc2dzdHIgIm9rw6RuZCBmbGFnZ2E6ICVzXG4iCiAKLSM6IGdpdC5jOjcxOQorIzogZ2l0LmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIGV4cGFuZGluZyBhbGlhcyAnJXMnOiAnJXMnIgorbXNnc3RyICJ2aWQgZXhwYW5kZXJpbmcgYXYgYWxpYXNldCBcIiVzXCI6IFwiJXNcIiIKKworIzogZ2l0LmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbGlhcyAnJXMnIGNoYW5nZXMgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIllvdSBjYW4gdXNlICchZ2l0JyBpbiB0aGUgYWxpYXMgdG8gZG8gdGhpcyIKK21zZ3N0ciAiIgorImFsaWFzZXQgXCIlc1wiIMOkbmRyYXIgbWlsasO2dmFyaWFibGVyLlxuIgorIkR1IGthbiBhbnbDpG5kYSBcIiFnaXRcIiBpIGFsaWFzZXQgZsO2ciBhdHQgZ8O2cmEgZGV0IgorCisjOiBnaXQuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgYWxpYXMgZm9yICVzIgorbXNnc3RyICJ0b210IGFsaWFzIGbDtnIgJXMiCisKKyM6IGdpdC5jOjM3OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWN1cnNpdmUgYWxpYXM6ICVzIgorbXNnc3RyICJyZWt1cnNpdnQgYWxpYXM6ICVzIgorCisjOiBnaXQuYzo0NTkKK21zZ2lkICJ3cml0ZSBmYWlsdXJlIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAic2tyaXZmZWwgcMOlIHN0YW5kYXJkIHV0IgorCisjOiBnaXQuYzo0NjEKK21zZ2lkICJ1bmtub3duIHdyaXRlIGZhaWx1cmUgb24gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICJva8OkbnQgc2tyaXZmZWwgcMOlIHN0YW5kYXJkIHV0IgorCisjOiBnaXQuYzo0NjMKK21zZ2lkICJjbG9zZSBmYWlsZWQgb24gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICJzdMOkbmcgbWlzc2x5Y2thZGVzIHDDpSBzdGFuZGFyZCB1dCIKKworIzogZ2l0LmM6NzkzCiAjLCBjLWZvcm1hdAogbXNnaWQgImFsaWFzIGxvb3AgZGV0ZWN0ZWQ6IGV4cGFuc2lvbiBvZiAnJXMnIGRvZXMgbm90IHRlcm1pbmF0ZTolcyIKIG1zZ3N0ciAiYWxpYXMtc2xpbmdhIGRldGVrdGVyYWRlczogZXhwYW5zaW9uZW4gYXYgXCIlc1wiIGF2c2x1dGFzIGFsZHJpZzolcyIKIAotIzogZ2l0LmM6ODAyCisjOiBnaXQuYzo4NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGhhbmRsZSAlcyBhcyBhIGJ1aWx0aW4iCittc2dzdHIgImthbiBpbnRlIGhhbnRlcmEgJXMgc29tIGluYnlnZ2QiCisKKyM6IGdpdC5jOjg1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXNhZ2U6ICVzXG4iCisiXG4iCittc2dzdHIgIiIKKyJhbnbDpG5kbmluZzogJXNcbiIKKyJcbiIKKworIzogZ2l0LmM6ODc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGFuc2lvbiBvZiBhbGlhcyAnJXMnIGZhaWxlZDsgJyVzJyBpcyBub3QgYSBnaXQgY29tbWFuZFxuIgogbXNnc3RyICIiCiAiZXhwYW5kZXJpbmcgYXYgYWxpYXMgXCIlc1wiIG1pc3NseWNrYWRlczsgXCIlc1wiIMOkciBpbnRlIGV0dCBnaXQta29tbWFuZG9cbiIKIAotIzogZ2l0LmM6ODE0CisjOiBnaXQuYzo4ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJ1biBjb21tYW5kICclcyc6ICVzXG4iCiBtc2dzdHIgIm1pc3NseWNrYWRlcyBrw7ZyYSBrb21tYW5kb3QgXCIlc1wiOiAlc1xuIgogCi0jOiBodHRwLmM6Mzc0CisjOiBodHRwLmM6Mzc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5lZ2F0aXZlIHZhbHVlIGZvciBodHRwLnBvc3RidWZmZXI7IGRlZmF1bHRpbmcgdG8gJWQiCiBtc2dzdHIgImh0dHAucG9zdGJ1ZmZlciBoYXIgbmVnYXRpdnQgdsOkcmRlOyBhbnbDpG5kZXIgZsO2cnZhbGV0ICVkIgogCi0jOiBodHRwLmM6Mzk1CisjOiBodHRwLmM6Mzk5CiBtc2dpZCAiRGVsZWdhdGlvbiBjb250cm9sIGlzIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy4yMi4wIgogbXNnc3RyICJEZWxlZ2VyYWQgc3R5cm5pbmcgc3TDtmRzIGludGUgYXYgY1VSTCA8IDcuMjIuMCIKIAotIzogaHR0cC5jOjQwNAorIzogaHR0cC5jOjQwOAogbXNnaWQgIlB1YmxpYyBrZXkgcGlubmluZyBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuNDQuMCIKIG1zZ3N0ciAiRmFzdG7DpWxuaW5nIGF2IMO2cHBlbiBueWNrZWwgc3TDtmRzIGludGUgYXYgY1VSTCA8IDcuNDQuMCIKIAotIzogaHR0cC5jOjgzNworIzogaHR0cC5jOjg3NgogbXNnaWQgIkNVUkxTU0xPUFRfTk9fUkVWT0tFIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy40NC4wIgogbXNnc3RyICJDVVJMU1NMT1BUX05PX1JFVk9LRSBzdMO2ZHMgaW50ZSBhdiBjVVJMIDwgNy40NC4wIgogCi0jOiBodHRwLmM6OTEwCisjOiBodHRwLmM6OTQ5CiBtc2dpZCAiUHJvdG9jb2wgcmVzdHJpY3Rpb25zIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy4xOS40IgogbXNnc3RyICJQcnRva29sbGJlZ3LDpG5zbmluZ2FyIHN0w7ZkcyBpbnRlIGF2IGNVUkwgPCA3LjE5LjQiCiAKLSM6IGh0dHAuYzoxMDQ2CisjOiBodHRwLmM6MTA4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJVbnN1cHBvcnRlZCBTU0wgYmFja2VuZCAnJXMnLiBTdXBwb3J0ZWQgU1NMIGJhY2tlbmRzOiIKIG1zZ3N0ciAiU1NMLWJha8OkbmRhbiBcIiVzXCIgc3TDtmRzIGludGUuIERlc3NhIFNTTC1iYWvDpG5kb3Igc3TDtmRzOiIKIAotIzogaHR0cC5jOjEwNTMKKyM6IGh0dHAuYzoxMDkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzZXQgU1NMIGJhY2tlbmQgdG8gJyVzJzogY1VSTCB3YXMgYnVpbHQgd2l0aG91dCBTU0wgYmFja2VuZHMiCiBtc2dzdHIgIkthbiBpbnRlIHPDpHR0YSBTU0wtYmFrw6RuZGEgdGlsbCBcIiVzXCI6IGNVUkwgYnlnZ2RlcyB1dGFuIFNTTC1iYWvDpG5kb3IiCiAKLSM6IGh0dHAuYzoxMDU3CisjOiBodHRwLmM6MTA5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc2V0IFNTTCBiYWNrZW5kIHRvICclcyc6IGFscmVhZHkgc2V0IgogbXNnc3RyICJLdW5kZSBpbnRlIHPDpHR0YSBTU0wtYmFrw6RuZGEgdGlsbCBcIiVzXCI6IHJlZGFuIHZhbHQiCiAKLSM6IGh0dHAuYzoxOTIxCisjOiBodHRwLmM6MTk2NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5hYmxlIHRvIHVwZGF0ZSB1cmwgYmFzZSBmcm9tIHJlZGlyZWN0aW9uOlxuIgpAQCAtMTg0NDMsMzkgKzIyMTY3LDE3NiBAQAogIiAgICAgICAgYmFkIG9tOiAlc1xuIgogIiAgb21kaXJpZ2VyaW5nOiAlcyIKIAotIzogcmVtb3RlLWN1cmwuYzo0MDEKKyM6IHJlbW90ZS1jdXJsLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcXVvdGluZyBpbiBwdXNoLW9wdGlvbiB2YWx1ZTogJyVzJyIKK21zZ3N0ciAiZmVsYWt0aWcgY2l0ZXJpbmcgcMOlIHbDpHJkZSBmw7ZyIHB1c2gtb3B0aW9uOiBcIiVzXCIiCisKKyM6IHJlbW90ZS1jdXJsLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzaW5mby9yZWZzIG5vdCB2YWxpZDogaXMgdGhpcyBhIGdpdCByZXBvc2l0b3J5PyIKK21zZ3N0ciAiJXNpbmZvL3JlZnMgaW50ZSBnaWx0aWc6IMOkciBkZXR0YSBldHQgZ2l0LWFya2l2PyIKKworIzogcmVtb3RlLWN1cmwuYzozNjQKK21zZ2lkICJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZXhwZWN0ZWQgc2VydmljZSwgZ290IGZsdXNoIHBhY2tldCIKK21zZ3N0ciAib2dpbHRpZ3Qgc3ZhciBmcsOlbiBzZXJ2ZXJuOyBmw7ZydsOkbnRhZGUgdGrDpG5zdCwgZmljayBmbHVzaC1wYWtldCIKKworIzogcmVtb3RlLWN1cmwuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzZXJ2ZXIgcmVzcG9uc2U7IGdvdCAnJXMnIgorbXNnc3RyICJvZ2lsdGlndCBzdmFyIGZyw6VuIHNlcnZlcm47IGZpY2sgXCIlc1wiIgorCisjOiByZW1vdGUtY3VybC5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZXBvc2l0b3J5ICclcycgbm90IGZvdW5kIgorbXNnc3RyICJhcmtpdmV0IFwiJXNcIiBoaXR0YWRlcyBpbnRlIgorCisjOiByZW1vdGUtY3VybC5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGlvbiBmYWlsZWQgZm9yICclcyciCittc2dzdHIgIkF1dGVudGlzZXJpbmcgbWlzc2x5Y2thZGVzIFwiJXNcIiIKKworIzogcmVtb3RlLWN1cmwuYzo0NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyAnJXMnOiAlcyIKK21zZ3N0ciAia2FuIGludGUga29tbWEgw6V0IFwiJXNcIjogJXMiCisKKyM6IHJlbW90ZS1jdXJsLmM6NDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZGlyZWN0aW5nIHRvICVzIgogbXNnc3RyICJvbWRpcmlnZXJhciB0aWxsICVzIgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo2MAorIzogcmVtb3RlLWN1cmwuYzo1OTMKK21zZ2lkICJzaG91bGRuJ3QgaGF2ZSBFT0Ygd2hlbiBub3QgZ2VudGxlIG9uIEVPRiIKK21zZ3N0ciAiYm9yZGUgaW50ZSBoYSBFT0YgbsOkciBpbnRlIGbDtnJzaWt0aWcgcMOlIEVPRiIKKworIzogcmVtb3RlLWN1cmwuYzo2NzMKK21zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIHJwYyBwb3N0IGRhdGEgLSB0cnkgaW5jcmVhc2luZyBodHRwLnBvc3RCdWZmZXIiCittc2dzdHIgImt1bmRlIGludGUgc3BvbGEgdGlsbGJha2EgcnBjLXBvc3RkYXRhIC0gZsO2cnPDtmsgw7ZrYSBodHRwLnBvc3RCdWZmZXIiCisKKyM6IHJlbW90ZS1jdXJsLmM6NzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIlJQQyBmYWlsZWQ7ICVzIgorbXNnc3RyICJSUEMgbWlzc2x5Y2thZGVzOyAlcyIKKworIzogcmVtb3RlLWN1cmwuYzo3NzMKK21zZ2lkICJjYW5ub3QgaGFuZGxlIHB1c2hlcyB0aGlzIGJpZyIKK21zZ3N0ciAia2FuIGludGUgaGFudGVyYSBzw6Ugc3RvcmEgc8OkbmRuaW5nYXIiCisKKyM6IHJlbW90ZS1jdXJsLmM6ODg4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkZWZsYXRlIHJlcXVlc3Q7IHpsaWIgZGVmbGF0ZSBlcnJvciAlZCIKK21zZ3N0ciAia2FuIGludGUgcGFja2EgdXBwIGFucm9wOyB6bGliLWRlZmxhdGUtZmVsICVkIgorCisjOiByZW1vdGUtY3VybC5jOjg5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGVuZCBlcnJvciAlZCIKK21zZ3N0ciAia2FuIGludGUgcGFja2EgdXBwIGFucm9wOyB6bGliLXNsdXRmZWwgJWQiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTAyMworbXNnaWQgImR1bWIgaHR0cCB0cmFuc3BvcnQgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IGNhcGFiaWxpdGllcyIKK21zZ3N0ciAiZHVtIGh0dHAtdHJhbnNwb3J0IHN0w7ZkZXIgaW50ZSBncnVuZGEgYXJraXYiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTAzOAorbXNnaWQgImZldGNoIGZhaWxlZC4iCittc2dzdHIgIm1vdHRhZ25pbmcgbWlzc2x5Y2thZGVzLiIKKworIzogcmVtb3RlLWN1cmwuYzoxMDg2Cittc2dpZCAiY2Fubm90IGZldGNoIGJ5IHNoYTEgb3ZlciBzbWFydCBodHRwIgorbXNnc3RyICJrYW4gaW50ZSBow6RtdGEgbWVkIHNoYTEgw7Z2ZXIgc21hcnQgaHR0cCIKKworIzogcmVtb3RlLWN1cmwuYzoxMTMwIHJlbW90ZS1jdXJsLmM6MTEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogZXhwZWN0ZWQgc2hhL3JlZiwgZ290ICclcyciCittc2dzdHIgInByb3Rva29sbGZlbDogZsO2cnbDpG50YWRlIHNoYS9yZWYsIGZpY2sgXCIlc1wiIgorCisjOiByZW1vdGUtY3VybC5jOjExNDggcmVtb3RlLWN1cmwuYzoxMjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgJXMiCittc2dzdHIgImh0dHAtdHJhbnNwb3J0ZW4gc3TDtmRlciBpbnRlICVzIgorCisjOiByZW1vdGUtY3VybC5jOjExODQKK21zZ2lkICJnaXQtaHR0cC1wdXNoIGZhaWxlZCIKK21zZ3N0ciAiZ2l0LWh0dHAtcHVzaCBtaXNzbHlja2FkZXMiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTM2OQorbXNnaWQgInJlbW90ZS1jdXJsOiB1c2FnZTogZ2l0IHJlbW90ZS1jdXJsIDxyZW1vdGU+IFs8dXJsPl0iCittc2dzdHIgInJlbW90ZS1jdXJsOiBhbnbDpG5kbmluZzogZ2l0IHJlbW90ZS1jdXJsIDxmasOkcnI+IFs8dXJsPl0iCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQwMQorbXNnaWQgInJlbW90ZS1jdXJsOiBlcnJvciByZWFkaW5nIGNvbW1hbmQgc3RyZWFtIGZyb20gZ2l0IgorbXNnc3RyICJyZW1vdGUtY3VybDogZmVsIHZpZCBsw6RzbmluZyBhdiBrb21tYW5kb3N0csO2bSBmcsOlbiBnaXQiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQwOAorbXNnaWQgInJlbW90ZS1jdXJsOiBmZXRjaCBhdHRlbXB0ZWQgd2l0aG91dCBhIGxvY2FsIHJlcG8iCittc2dzdHIgInJlbW90ZS1jdXJsOiBmw7Zyc8O2a3RlIHRhIGVtb3QgdXRhbiBsb2thbHQgYXJraXYiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdGUtY3VybDogdW5rbm93biBjb21tYW5kICclcycgZnJvbSBnaXQiCittc2dzdHIgInJlbW90ZS1jdXJsOiBva8OkbnQga29tbWFuZG8gXCIlc1wiIGZyw6VuIGdpdCIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6ODUKIG1zZ2lkICJhcmdzIgogbXNnc3RyICJhcmd1bWVudCIKIAotIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6NjEKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjg2CiBtc2dpZCAib2JqZWN0IGZpbHRlcmluZyIKIG1zZ3N0ciAib2JqZWt0ZmlsdHJlcmluZyIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjE1NAorIzogcGFyc2Utb3B0aW9ucy5oOjE4MwogbXNnaWQgImV4cGlyeS1kYXRlIgogbXNnc3RyICJnaWx0aWctdGlsbCIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjE2OQorIzogcGFyc2Utb3B0aW9ucy5oOjE5NwogbXNnaWQgIm5vLW9wIChiYWNrd2FyZCBjb21wYXRpYmlsaXR5KSIKIG1zZ3N0ciAiaW5nZW4gZnVua3Rpb24gKGJha8OldGtvbXBhdGliaWxpdGV0KSIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjI2MQorIzogcGFyc2Utb3B0aW9ucy5oOjMwOQogbXNnaWQgImJlIG1vcmUgdmVyYm9zZSIKIG1zZ3N0ciAidmFyIG1lciBwcmF0c2FtIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MjYzCisjOiBwYXJzZS1vcHRpb25zLmg6MzExCiBtc2dpZCAiYmUgbW9yZSBxdWlldCIKIG1zZ3N0ciAidmFyIG1lciB0eXN0IgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MjY5CisjOiBwYXJzZS1vcHRpb25zLmg6MzE3CiBtc2dpZCAidXNlIDxuPiBkaWdpdHMgdG8gZGlzcGxheSBTSEEtMXMiCiBtc2dzdHIgImFudsOkbmQgPG4+IHNpZmZyb3IgZsO2ciBhdHQgdmlzYSBTSEEtMTpvciIKIAorIzogcGFyc2Utb3B0aW9ucy5oOjMzNgorbXNnaWQgImhvdyB0byBzdHJpcCBzcGFjZXMgYW5kICNjb21tZW50cyBmcm9tIG1lc3NhZ2UiCittc2dzdHIgImh1ciBibGFua3N0ZWcgb2NoICNrb21tZW50YXJlciBza2EgdGFzIGJvcnQgZnLDpW4gbWVkZGVsYW5kZSIKKworIzogcGFyc2Utb3B0aW9ucy5oOjMzNworbXNnaWQgInJlYWQgcGF0aHNwZWMgZnJvbSBmaWxlIgorbXNnc3RyICJsw6RzIHPDtmt2w6Rnc2FuZ2l2ZWxzZSBmcsOlbiBmaWwiCisKKyM6IHBhcnNlLW9wdGlvbnMuaDozMzgKK21zZ2lkICIiCisid2l0aCAtLXBhdGhzcGVjLWZyb20tZmlsZSwgcGF0aHNwZWMgZWxlbWVudHMgYXJlIHNlcGFyYXRlZCB3aXRoIE5VTCBjaGFyYWN0ZXIiCittc2dzdHIgIm1lZCAtLXBhdGhzcGVjLWZyb20tZmlsZSwgc8O2a3bDpGdzYW5naXZlbHNlciBhdmRlbGFzIG1lZCBOVUwtdGVja2VuIgorCisjOiByZWYtZmlsdGVyLmg6MTAxCittc2dpZCAia2V5IgorbXNnc3RyICJueWNrZWwiCisKKyM6IHJlZi1maWx0ZXIuaDoxMDEKK21zZ2lkICJmaWVsZCBuYW1lIHRvIHNvcnQgb24iCittc2dzdHIgImbDpGx0bmFtbiBhdHQgc29ydGVyYSBww6UiCisKKyM6IHJlcmVyZS5oOjQ0Cittc2dpZCAidXBkYXRlIHRoZSBpbmRleCB3aXRoIHJldXNlZCBjb25mbGljdCByZXNvbHV0aW9uIGlmIHBvc3NpYmxlIgorbXNnc3RyICJ1cHBkYXRlcmEgaW5kZXhldCBtZWQgw6V0ZXJhbnbDpG5kIGtvbmZsaWt0bMO2c25pbmcgb20gbcO2amxpZ3QiCisKKyM6IHd0LXN0YXR1cy5oOjY3Cittc2dpZCAiSEVBRCBkZXRhY2hlZCBhdCAiCittc2dzdHIgIkhFQUQgZnLDpW5rb3BwbGFkIHZpZCAiCisKKyM6IHd0LXN0YXR1cy5oOjY4Cittc2dpZCAiSEVBRCBkZXRhY2hlZCBmcm9tICIKK21zZ3N0ciAiSEVBRCBmcsOlbmtvcHBsYWQgZnLDpW4gIgorCiAjOiBjb21tYW5kLWxpc3QuaDo1MAogbXNnaWQgIkFkZCBmaWxlIGNvbnRlbnRzIHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiTMOkZ2cgZmlsaW5uZWjDpWxsIHRpbGwgaW5kZXhldCIKQEAgLTE4NTE5LDcgKzIyMzgwLDcgQEAKICM6IGNvbW1hbmQtbGlzdC5oOjYwCiBtc2dpZCAiUHJvdmlkZSBjb250ZW50IG9yIHR5cGUgYW5kIHNpemUgaW5mb3JtYXRpb24gZm9yIHJlcG9zaXRvcnkgb2JqZWN0cyIKIG1zZ3N0ciAiIgotIlZpc2EgaW5uZWjDpWxsZXIgZWxsZXIgdHlwLSBvY2ggc3Rvcmxla3NpbmZvcm1hdGlvbiBmw7ZyIG9iamVrdCBpIGFya2l2ZXQuIgorIlZpc2EgaW5uZWjDpWxsZXIgZWxsZXIgdHlwLSBvY2ggc3Rvcmxla3NpbmZvcm1hdGlvbiBmw7ZyIG9iamVrdCBpIGFya2l2ZXQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjYxCiBtc2dpZCAiRGlzcGxheSBnaXRhdHRyaWJ1dGVzIGluZm9ybWF0aW9uIgpAQCAtMTg2MzUsNyArMjI0OTYsNyBAQAogCiAjOiBjb21tYW5kLWxpc3QuaDo4OQogbXNnaWQgIkNvbXBhcmVzIHRoZSBjb250ZW50IGFuZCBtb2RlIG9mIGJsb2JzIGZvdW5kIHZpYSB0d28gdHJlZSBvYmplY3RzIgotbXNnc3RyICJWaXNhciBpbm5laMOlbGwgb2NoIGzDpGdlIGbDtnIgYmxvYjphciBzb20gaGl0dGF0cyB2aWEgdHbDpSB0csOkZG9iamVrdCIKK21zZ3N0ciAiVmlzYXIgaW5uZWjDpWxsIG9jaCBsw6RnZSBmw7ZyIGJsb2JiYXIgc29tIGhpdHRhdHMgdmlhIHR2w6UgdHLDpGRvYmpla3QiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjkwCiBtc2dpZCAiU2hvdyBjaGFuZ2VzIHVzaW5nIGNvbW1vbiBkaWZmIHRvb2xzIgpAQCAtMTg2ODMsNyArMjI1NDQsNyBAQAogCiAjOiBjb21tYW5kLWxpc3QuaDoxMDEKIG1zZ2lkICJFeHRyYWN0IGNvbW1pdCBJRCBmcm9tIGFuIGFyY2hpdmUgY3JlYXRlZCB1c2luZyBnaXQtYXJjaGl2ZSIKLW1zZ3N0ciAiSMOkbXRhIGluY2hlY2tuaW5ncy1JRCBmcsOlbiBldHQgYXJraXYgc2thcGF0IG1lZCBnaXQtYXJjaGl2ZSIKK21zZ3N0ciAiSMOkbXRhIGluY2hlY2tuaW5ncy1pZCBmcsOlbiBldHQgYXJraXYgc2thcGF0IG1lZCBnaXQtYXJjaGl2ZSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTAyCiBtc2dpZCAiUHJpbnQgbGluZXMgbWF0Y2hpbmcgYSBwYXR0ZXJuIgpAQCAtMTg2OTUsNyArMjI1NTYsNyBAQAogCiAjOiBjb21tYW5kLWxpc3QuaDoxMDQKIG1zZ2lkICJDb21wdXRlIG9iamVjdCBJRCBhbmQgb3B0aW9uYWxseSBjcmVhdGVzIGEgYmxvYiBmcm9tIGEgZmlsZSIKLW1zZ3N0ciAiQmVyw6RrbmEgb2JqZWt0LUlEIG9jaCBtw7ZqbGlnZW4gc2thcGEgZW4gYmxvYiBmcsOlbiBlbiBmaWwiCittc2dzdHIgIkJlcsOka25hIG9iamVrdC1pZCBvY2ggbcO2amxpZ2VuIHNrYXBhIGVuIGJsb2IgZnLDpW4gZW4gZmlsIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxMDUKIG1zZ2lkICJEaXNwbGF5IGhlbHAgaW5mb3JtYXRpb24gYWJvdXQgR2l0IgpAQCAtMTg3MzAsOSArMjI1OTEsOSBAQAogbXNnc3RyICJPbWVkZWxiYXJ0IGJsw6RkZHJhIGkgZGluIGFyYmV0c2thdGFsb2cgbWVkIGdpdHdlYiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTEzCi1tc2dpZCAiYWRkIG9yIHBhcnNlIHN0cnVjdHVyZWQgaW5mb3JtYXRpb24gaW4gY29tbWl0IG1lc3NhZ2VzIgorbXNnaWQgIkFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKIG1zZ3N0ciAiIgotImzDpGdnIHRpbGwgZWxsZXIgdG9sa2Egc3RydWt0dXJlcmFkIGluZm9ybWF0aW9uIGkgaW5jaGVja25pbmdzbWVkZGVsYW5kZW4iCisiTMOkZ2cgdGlsbCBlbGxlciB0b2xrYSBzdHJ1a3R1cmVyYWQgaW5mb3JtYXRpb24gaSBpbmNoZWNrbmluZ3NtZWRkZWxhbmRlbiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTE0CiBtc2dpZCAiVGhlIEdpdCByZXBvc2l0b3J5IGJyb3dzZXIiCkBAIC0xODkwNCwyMjEgKzIyNzY1LDIzMyBAQAogbXNnc3RyICLDhXRlcnN0w6RsbCBha3R1ZWxsIEhFQUQgdGlsbCBhbmdpdmV0IHRpbGxzdMOlbmQiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE1NgorbXNnaWQgIlJlc3RvcmUgd29ya2luZyB0cmVlIGZpbGVzIgorbXNnc3RyICLDhXRlcnN0w6RsbCBmaWxlciBpIGFyYmV0c2thdGFsb2dlbiIKKworIzogY29tbWFuZC1saXN0Lmg6MTU3CiBtc2dpZCAiUmV2ZXJ0IHNvbWUgZXhpc3RpbmcgY29tbWl0cyIKIG1zZ3N0ciAiw4V0ZXJzdMOkbGwgbsOlZ3JhIGJlZmludGxpZ2EgaW5jaGVja25pbmdhciIKIAotIzogY29tbWFuZC1saXN0Lmg6MTU3CisjOiBjb21tYW5kLWxpc3QuaDoxNTgKIG1zZ2lkICJMaXN0cyBjb21taXQgb2JqZWN0cyBpbiByZXZlcnNlIGNocm9ub2xvZ2ljYWwgb3JkZXIiCiBtc2dzdHIgIlZpc2EgaW5jaGVja25pbmdzb2JqZWt0IGkgb212w6RuZCBrcm9ub2xvZ2lzayBvcmRuaW5nIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNTgKKyM6IGNvbW1hbmQtbGlzdC5oOjE1OQogbXNnaWQgIlBpY2sgb3V0IGFuZCBtYXNzYWdlIHBhcmFtZXRlcnMiCiBtc2dzdHIgIlBsb2NrYSB1dCBvY2ggbWFzc2VyYSBwYXJhbWV0cmFyIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNTkKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MAogbXNnaWQgIlJlbW92ZSBmaWxlcyBmcm9tIHRoZSB3b3JraW5nIHRyZWUgYW5kIGZyb20gdGhlIGluZGV4IgogbXNnc3RyICJUYSBib3J0IGZpbGVyIGZyw6VuIGFyYmV0c2thdGFsb2dlbiBvY2ggZnLDpW4gaW5kZXhldCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTYwCisjOiBjb21tYW5kLWxpc3QuaDoxNjEKIG1zZ2lkICJTZW5kIGEgY29sbGVjdGlvbiBvZiBwYXRjaGVzIGFzIGVtYWlscyIKIG1zZ3N0ciAiU8OkbmQgZW4gdXBwc8OkdHRuaW5nIHBhdGNoYXIgc29tIGUtcG9zdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTYxCisjOiBjb21tYW5kLWxpc3QuaDoxNjIKIG1zZ2lkICJQdXNoIG9iamVjdHMgb3ZlciBHaXQgcHJvdG9jb2wgdG8gYW5vdGhlciByZXBvc2l0b3J5IgogbXNnc3RyICJTw6RuZCBvYmpla3Qgw7Z2ZXIgR2l0LXByb3Rva29sbGV0IHRpbGwgYW5uYXQgYXJraXYiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2MgorIzogY29tbWFuZC1saXN0Lmg6MTYzCiBtc2dpZCAiUmVzdHJpY3RlZCBsb2dpbiBzaGVsbCBmb3IgR2l0LW9ubHkgU1NIIGFjY2VzcyIKIG1zZ3N0ciAiQmVncsOkbnNhdCBpbmxvZ2duaW5nc3NrYWwgZsO2ciBTU0gtw6V0a29tc3QgdGlsbCBiYXJhIEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTYzCisjOiBjb21tYW5kLWxpc3QuaDoxNjQKIG1zZ2lkICJTdW1tYXJpemUgJ2dpdCBsb2cnIG91dHB1dCIKIG1zZ3N0ciAiU3VtbWVyYSBcImdpdCBsb2dcIi11dGRhdGEiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NAorIzogY29tbWFuZC1saXN0Lmg6MTY1CiBtc2dpZCAiU2hvdyB2YXJpb3VzIHR5cGVzIG9mIG9iamVjdHMiCiBtc2dzdHIgIlZpc2Egb2xpa2Egc29ydGVycyBvYmpla3QiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NQorIzogY29tbWFuZC1saXN0Lmg6MTY2CiBtc2dpZCAiU2hvdyBicmFuY2hlcyBhbmQgdGhlaXIgY29tbWl0cyIKIG1zZ3N0ciAiVmlzYSBncmVuYXIgb2NoIGRlcmFzIGluY2hlY2tuaW5nYXIiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NgorIzogY29tbWFuZC1saXN0Lmg6MTY3CiBtc2dpZCAiU2hvdyBwYWNrZWQgYXJjaGl2ZSBpbmRleCIKIG1zZ3N0ciAiU2thcGEgcGFja2F0IGFya2l2aW5kZXgiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NworIzogY29tbWFuZC1saXN0Lmg6MTY4CiBtc2dpZCAiTGlzdCByZWZlcmVuY2VzIGluIGEgbG9jYWwgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiVmlzYSByZWZlcmVuc2VyIGkgZXR0IGxva2FsdCBhcmtpdiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTY4CisjOiBjb21tYW5kLWxpc3QuaDoxNjkKIG1zZ2lkICJHaXQncyBpMThuIHNldHVwIGNvZGUgZm9yIHNoZWxsIHNjcmlwdHMiCiBtc2dzdHIgIkdpdDpzIGkxOG4tc3RhcnRrb2QgZsO2ciBza2Fsc2tyaXB0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjkKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MAogbXNnaWQgIkNvbW1vbiBHaXQgc2hlbGwgc2NyaXB0IHNldHVwIGNvZGUiCiBtc2dzdHIgIkdlbWVuc2FtIHNrcmlwdHN0YXJ0a29kIGbDtnIgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzAKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MQorbXNnaWQgIkluaXRpYWxpemUgYW5kIG1vZGlmeSB0aGUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJJbml0aWVyYSBvY2ggbW9kaWZpZXJhIHNwYXJzZS1jaGVja291dCIKKworIzogY29tbWFuZC1saXN0Lmg6MTcyCiBtc2dpZCAiU3Rhc2ggdGhlIGNoYW5nZXMgaW4gYSBkaXJ0eSB3b3JraW5nIGRpcmVjdG9yeSBhd2F5IgogbXNnc3RyICJTcGFyYSB1bmRhbiDDpG5kcmluZ2FyIGkgZW4gbG9ydGlnIGFyYmV0c2thdGFsb2ciCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3MQorIzogY29tbWFuZC1saXN0Lmg6MTczCiBtc2dpZCAiQWRkIGZpbGUgY29udGVudHMgdG8gdGhlIHN0YWdpbmcgYXJlYSIKIG1zZ3N0ciAiTMOkZ2cgZmlsaW5uZWjDpWxsZXQgdGlsbCBpbmRleGV0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzIKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NAogbXNnaWQgIlNob3cgdGhlIHdvcmtpbmcgdHJlZSBzdGF0dXMiCiBtc2dzdHIgIlZpc2Egc3RhdHVzIGbDtnIgYXJiZXRza2F0YWxvZ2VuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzMKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NQogbXNnaWQgIlJlbW92ZSB1bm5lY2Vzc2FyeSB3aGl0ZXNwYWNlIgogbXNnc3RyICJUYSBib3J0IG9uw7ZkaWdhIGJsYW5rc3RlZyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc0CisjOiBjb21tYW5kLWxpc3QuaDoxNzYKIG1zZ2lkICJJbml0aWFsaXplLCB1cGRhdGUgb3IgaW5zcGVjdCBzdWJtb2R1bGVzIgogbXNnc3RyICJJbml0aWVyYSwgdXBwZGF0ZXJhIGVsbGVyIGluc3Bla3RlcmEgdW5kZXJtb2R1bGVyIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzUKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NwogbXNnaWQgIkJpZGlyZWN0aW9uYWwgb3BlcmF0aW9uIGJldHdlZW4gYSBTdWJ2ZXJzaW9uIHJlcG9zaXRvcnkgYW5kIEdpdCIKIG1zZ3N0ciAiRHViYmVscmlrdGFkIHZlcmthbiBtZWxsYW4gZXR0IFN1YnZlcnNpb24tYXJraXYgb2NoIEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc2CisjOiBjb21tYW5kLWxpc3QuaDoxNzgKK21zZ2lkICJTd2l0Y2ggYnJhbmNoZXMiCittc2dzdHIgIkJ5dCBncmVuIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzkKIG1zZ2lkICJSZWFkLCBtb2RpZnkgYW5kIGRlbGV0ZSBzeW1ib2xpYyByZWZzIgogbXNnc3RyICJMw6RzLCBtb2RpZmllcmEgZWxsZXIgdGEgYm9ydCBzeW1ib2xpc2sgcmVmZXJlbnMiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3NworIzogY29tbWFuZC1saXN0Lmg6MTgwCiBtc2dpZCAiQ3JlYXRlLCBsaXN0LCBkZWxldGUgb3IgdmVyaWZ5IGEgdGFnIG9iamVjdCBzaWduZWQgd2l0aCBHUEciCiBtc2dzdHIgIlNrYXBhLCB2aXNhLCB0YSBib3J0IGVsbGVyIHZlcmlmaWVyYSBHUEctc2lnbmVyYXQgdGFnZ29iamVrdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc4CisjOiBjb21tYW5kLWxpc3QuaDoxODEKIG1zZ2lkICJDcmVhdGVzIGEgdGVtcG9yYXJ5IGZpbGUgd2l0aCBhIGJsb2IncyBjb250ZW50cyIKIG1zZ3N0ciAiU2thcGFyIHRlbXBvcsOkcmEgZmlsZXIgbWVkIGlubmVow6VsbGV0IGZyw6VuIGVuIGJsb2IiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3OQorIzogY29tbWFuZC1saXN0Lmg6MTgyCiBtc2dpZCAiVW5wYWNrIG9iamVjdHMgZnJvbSBhIHBhY2tlZCBhcmNoaXZlIgogbXNnc3RyICJQYWNrYSB1cHAgb2JqZWt0IGZyw6VuIGV0dCBwYWthdCBhcmtpdiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTgwCisjOiBjb21tYW5kLWxpc3QuaDoxODMKIG1zZ2lkICJSZWdpc3RlciBmaWxlIGNvbnRlbnRzIGluIHRoZSB3b3JraW5nIHRyZWUgdG8gdGhlIGluZGV4IgogbXNnc3RyICJSZWdpc3RyZXJhIGZpbGlubmVow6VsbGV0IGZyw6VuIGFyYmV0c2thdGFsb2dlbiBpIGluZGV4ZXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4MQorIzogY29tbWFuZC1saXN0Lmg6MTg0CiBtc2dpZCAiVXBkYXRlIHRoZSBvYmplY3QgbmFtZSBzdG9yZWQgaW4gYSByZWYgc2FmZWx5IgogbXNnc3RyICJVcHBkYXRlcmEgb2JqZWt0bmFtbmV0IGkgZW4gcmVmZXJlbnMgcMOlIGV0dCBzw6RrZXJ0IHPDpHR0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODIKKyM6IGNvbW1hbmQtbGlzdC5oOjE4NQogbXNnaWQgIlVwZGF0ZSBhdXhpbGlhcnkgaW5mbyBmaWxlIHRvIGhlbHAgZHVtYiBzZXJ2ZXJzIgogbXNnc3RyICJVcHBkYXRlcmEgdGlsbMOkZ2dzaW5mb2ZpbCBmw7ZyIGF0dCBoasOkbHBhIGR1bW1hIHNlcnZyYXIiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4MworIzogY29tbWFuZC1saXN0Lmg6MTg2CiBtc2dpZCAiU2VuZCBhcmNoaXZlIGJhY2sgdG8gZ2l0LWFyY2hpdmUiCiBtc2dzdHIgIlPDpG5kIGFya2l2ZXQgdGlsbGJha2EgdGlsbCBnaXQtYXJjaGl2ZSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg0CisjOiBjb21tYW5kLWxpc3QuaDoxODcKIG1zZ2lkICJTZW5kIG9iamVjdHMgcGFja2VkIGJhY2sgdG8gZ2l0LWZldGNoLXBhY2siCiBtc2dzdHIgIlPDpG5kIHBhY2thZGUgb2JqZWt0IHRpbGxiYWthIHRpbGwgZ2l0LWZldGNoLXBhY2siCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4NQorIzogY29tbWFuZC1saXN0Lmg6MTg4CiBtc2dpZCAiU2hvdyBhIEdpdCBsb2dpY2FsIHZhcmlhYmxlIgogbXNnc3RyICJWaXNhIGVuIGxvZ2lzayBHaXQtdmFyaWFiZWwiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4NgorIzogY29tbWFuZC1saXN0Lmg6MTg5CiBtc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgY29tbWl0cyIKIG1zZ3N0ciAiS29udHJvbGxlcmEgR1BHLXNpZ25hdHVyZXIgZsO2ciBpbmNoZWNrbmluZ2FyIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODcKKyM6IGNvbW1hbmQtbGlzdC5oOjE5MAogbXNnaWQgIlZhbGlkYXRlIHBhY2tlZCBHaXQgYXJjaGl2ZSBmaWxlcyIKIG1zZ3N0ciAiQmVrcsOkZnRhIHBhY2thZGUgR2l0LWFya2l2ZmlsZXIiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4OAorIzogY29tbWFuZC1saXN0Lmg6MTkxCiBtc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgdGFncyIKIG1zZ3N0ciAiS29udHJvbGxlcmEgR1BHLXNpZ25hdHVyZXIgaSB0YWdnYXIiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4OQorIzogY29tbWFuZC1saXN0Lmg6MTkyCiBtc2dpZCAiR2l0IHdlYiBpbnRlcmZhY2UgKHdlYiBmcm9udGVuZCB0byBHaXQgcmVwb3NpdG9yaWVzKSIKIG1zZ3N0ciAiR2l0LXdlYmJncsOkbnNzbml0dCAod2ViYmZyYW3DpG5kYSBmw7ZyIEdpdC1hcmtpdikiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MAorIzogY29tbWFuZC1saXN0Lmg6MTkzCiBtc2dpZCAiU2hvdyBsb2dzIHdpdGggZGlmZmVyZW5jZSBlYWNoIGNvbW1pdCBpbnRyb2R1Y2VzIgogbXNnc3RyICJWaXNhIGxvZ2dhciBtZWQgZGlmZmVyZW5zZXIgdmFyamUgaW5jaGVja25pbmcgaW50cm9kdWNlcmFyIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTEKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NAogbXNnaWQgIk1hbmFnZSBtdWx0aXBsZSB3b3JraW5nIHRyZWVzIgogbXNnc3RyICJIYW50ZXJhIHl0dGVybGlnYXJlIGFyYmV0c2thdGFsb2dlciIKIAotIzogY29tbWFuZC1saXN0Lmg6MTkyCisjOiBjb21tYW5kLWxpc3QuaDoxOTUKIG1zZ2lkICJDcmVhdGUgYSB0cmVlIG9iamVjdCBmcm9tIHRoZSBjdXJyZW50IGluZGV4IgogbXNnc3RyICJTa2FwYSBldHQgdHLDpGRvYmpla3QgZnLDpW4gYWt0dWVsbHQgaW5kZXgiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MworIzogY29tbWFuZC1saXN0Lmg6MTk2CiBtc2dpZCAiRGVmaW5pbmcgYXR0cmlidXRlcyBwZXIgcGF0aCIKIG1zZ3N0ciAiRGVmaW5pZXJhciBhdHRyaWJ1dCBwZXIgc8O2a3bDpGciCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5NAorIzogY29tbWFuZC1saXN0Lmg6MTk3CiBtc2dpZCAiR2l0IGNvbW1hbmQtbGluZSBpbnRlcmZhY2UgYW5kIGNvbnZlbnRpb25zIgogbXNnc3RyICJHaXRzIGtvbW1hbmRvcmFkc2dyw6Ruc3NuaXR0IG9jaCAta29udmVudGlvbmVyIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTUKKyM6IGNvbW1hbmQtbGlzdC5oOjE5OAogbXNnaWQgIkEgR2l0IGNvcmUgdHV0b3JpYWwgZm9yIGRldmVsb3BlcnMiCiBtc2dzdHIgIkdydW5kbMOkZ2dhbmRlIEdpdC1oYW5kbGVkbmluZyBmw7ZyIHV0dmVja2xhcmUiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5NgorIzogY29tbWFuZC1saXN0Lmg6MTk5CiBtc2dpZCAiR2l0IGZvciBDVlMgdXNlcnMiCiBtc2dzdHIgIkdpdCBmw7ZyIENWUy1hbnbDpG5kYXJlIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTcKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMAogbXNnaWQgIlR3ZWFraW5nIGRpZmYgb3V0cHV0IgogbXNnc3RyICJKdXN0cmVhIGRpZmYtdXRkYXRhIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTgKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMQogbXNnaWQgIkEgdXNlZnVsIG1pbmltdW0gc2V0IG9mIGNvbW1hbmRzIGZvciBFdmVyeWRheSBHaXQiCiBtc2dzdHIgIkV0dCBhbnbDpG5kYmFydCBtaW5zdGEgdXBwc8OkdHRuaW5nIGtvbW1hbmRvbiBmw7ZyIHZhcmRhZ3MtR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTkKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMgogbXNnaWQgIkEgR2l0IEdsb3NzYXJ5IgogbXNnc3RyICJFbiBHaXQtb3JkbGlzdGEiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwMAorIzogY29tbWFuZC1saXN0Lmg6MjAzCiBtc2dpZCAiSG9va3MgdXNlZCBieSBHaXQiCiBtc2dzdHIgIktyb2thciBzb20gYW52w6RuZHMgYXYgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDEKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNAogbXNnaWQgIlNwZWNpZmllcyBpbnRlbnRpb25hbGx5IHVudHJhY2tlZCBmaWxlcyB0byBpZ25vcmUiCiBtc2dzdHIgIkFuZ2UgYXZzaWt0bGlnZW4gb3Nww6VyYWRlIGZpbGVyIGF0dCBpZ25vcmVyYSIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAyCisjOiBjb21tYW5kLWxpc3QuaDoyMDUKIG1zZ2lkICJEZWZpbmluZyBzdWJtb2R1bGUgcHJvcGVydGllcyIKIG1zZ3N0ciAiQW5nZSBlZ2Vuc2thcGVyIGbDtnIgdW5kZXJtb2R1bGVyIgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDMKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNgogbXNnaWQgIkdpdCBuYW1lc3BhY2VzIgogbXNnc3RyICJHaXQtbmFtbnJ5bWRlciIKIAotIzogY29tbWFuZC1saXN0Lmg6MjA0CisjOiBjb21tYW5kLWxpc3QuaDoyMDcKIG1zZ2lkICJHaXQgUmVwb3NpdG9yeSBMYXlvdXQiCiBtc2dzdHIgIkdpdHMgYXJraXZsYXlvdXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwNQorIzogY29tbWFuZC1saXN0Lmg6MjA4CiBtc2dpZCAiU3BlY2lmeWluZyByZXZpc2lvbnMgYW5kIHJhbmdlcyBmb3IgR2l0IgogbXNnc3RyICJBbmdlIHZlcnNpb25lciBvY2ggaW50ZXJ2YWxsIGkgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDYKKyM6IGNvbW1hbmQtbGlzdC5oOjIwOQorbXNnaWQgIk1vdW50aW5nIG9uZSByZXBvc2l0b3J5IGluc2lkZSBhbm90aGVyIgorbXNnc3RyICJNb250ZXJhciBldHQgYXJraXYgaW51dGkgZXR0IGFubmF0IgorCisjOiBjb21tYW5kLWxpc3QuaDoyMTAKIG1zZ2lkICJBIHR1dG9yaWFsIGludHJvZHVjdGlvbiB0byBHaXQ6IHBhcnQgdHdvIgogbXNnc3RyICJJbnRyb2R1a3Rpb24gdGlsbCBHaXQ6IGRlbCB0dsOlIgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDcKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMQogbXNnaWQgIkEgdHV0b3JpYWwgaW50cm9kdWN0aW9uIHRvIEdpdCIKIG1zZ3N0ciAiSW50cm9kdWt0aW9uIHRpbGwgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDgKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMgogbXNnaWQgIkFuIG92ZXJ2aWV3IG9mIHJlY29tbWVuZGVkIHdvcmtmbG93cyB3aXRoIEdpdCIKIG1zZ3N0ciAiw5Z2ZXJzaWt0IMO2dmVyIHJla29tbWVuZGVyYWRlIGFyYmV0c2Zsw7ZkZW4gbWVkIEdpdCIKIAotIzogcmVyZXJlLmg6NDQKLW1zZ2lkICJ1cGRhdGUgdGhlIGluZGV4IHdpdGggcmV1c2VkIGNvbmZsaWN0IHJlc29sdXRpb24gaWYgcG9zc2libGUiCi1tc2dzdHIgInVwcGRhdGVyYSBpbmRleGV0IG1lZCDDpXRlcmFudsOkbmQga29uZmxpa3Rsw7ZzbmluZyBvbSBtw7ZqbGlndCIKLQogIzogZ2l0LWJpc2VjdC5zaDo1NAogbXNnaWQgIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiIgogbXNnc3RyICJEdSBtw6VzdGUgc3RhcnRhIG1lZCBcImdpdCBiaXNlY3Qgc3RhcnRcIiIKQEAgLTE5MTMwLDE0MCArMjMwMDMsNDkgQEAKIG1zZ2lkICJEbyB5b3Ugd2FudCBtZSB0byBkbyBpdCBmb3IgeW91IFtZL25dPyAiCiBtc2dzdHIgIlZpbGwgZHUgYXR0IGphZyBza2EgZ8O2cmEgZGV0IMOldCBkaWcgW1k9amEvTj1uZWpdPyAiCiAKLSM6IGdpdC1iaXNlY3Quc2g6MTIxCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJ1bnJlY29nbmlzZWQgb3B0aW9uOiAnJGFyZyciCi1tc2dzdHIgImZsYWdnYW4ga8Okbm5zIGludGUgaWdlbjogXCIkYXJnXCIiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTI1Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICInJGFyZycgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGEgdmFsaWQgcmV2aXNpb24iCi1tc2dzdHIgIlwiJGFyZ1wiIHZlcmthciBpbnRlIHZhcmEgZW4gZ2lsdGlnIHJldmlzaW9uIgotCi0jOiBnaXQtYmlzZWN0LnNoOjE1NAotbXNnaWQgIkJhZCBIRUFEIC0gSSBuZWVkIGEgSEVBRCIKLW1zZ3N0ciAiRmVsYWt0aWd0IEhFQUQgLSBKYWcgYmVow7Z2ZXIgZXR0IEhFQUQiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTY3Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iQ2hlY2tpbmcgb3V0ICckc3RhcnRfaGVhZCcgZmFpbGVkLiBUcnkgJ2dpdCBiaXNlY3QgcmVzZXQgPHZhbGlkLWJyYW5jaD4nLiIKLW1zZ3N0ciAiIgotIk1pc3NseWNrYWRlcyBjaGVja2EgdXQgXCIkc3RhcnRfaGVhZFwiLiBGw7Zyc8O2ayBcImdpdCBiaXNlY3QgcmVzZXQgIgotIjxnaWx0aWdfZ3Jlbj7igJ0uIgotCi0jIGNvZ2l0by1yZWxhdGVyYXQKLSM6IGdpdC1iaXNlY3Quc2g6MTc3Ci1tc2dpZCAid29uJ3QgYmlzZWN0IG9uIGNnLXNlZWsnZWQgdHJlZSIKLW1zZ3N0ciAia8O2ciBpbnRlIFwiYmlzZWN0XCIgcMOlIHRyw6RkIGTDpHIgXCJjZy1zZWVrXCIgYW52w6RudHMiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTgxCi1tc2dpZCAiQmFkIEhFQUQgLSBzdHJhbmdlIHN5bWJvbGljIHJlZiIKLW1zZ3N0ciAiRmVsYWt0aWd0IEhFQUQgLSBrb25zdGlnIHN5bWJvbGlzayByZWZlcmVucyIKLQotIzogZ2l0LWJpc2VjdC5zaDoyMzMKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkJhZCBiaXNlY3Rfd3JpdGUgYXJndW1lbnQ6ICRzdGF0ZSIKLW1zZ3N0ciAiRmVsYWt0aWd0IGFyZ3VtZW50IHRpbGwgYmlzZWN0X3dyaXRlOiAkc3RhdGUiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MjQ2CisjOiBnaXQtYmlzZWN0LnNoOjEwMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQmFkIHJldiBpbnB1dDogJGFyZyIKIG1zZ3N0ciAiRmVsYWt0aWcgcmV2LWluZGF0YTogJGFyZyIKIAotIzogZ2l0LWJpc2VjdC5zaDoyNjUKKyM6IGdpdC1iaXNlY3Quc2g6MTIxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJCYWQgcmV2IGlucHV0OiAkYmlzZWN0ZWRfaGVhZCIKIG1zZ3N0ciAiRmVsYWt0aWcgcmV2LWluZGF0YTogJGJpc2VjdGVkX2hlYWQiCiAKLSM6IGdpdC1iaXNlY3Quc2g6Mjc0CisjOiBnaXQtYmlzZWN0LnNoOjEzMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQmFkIHJldiBpbnB1dDogJHJldiIKIG1zZ3N0ciAiRmVsYWt0aWcgcmV2LWluZGF0YTogJHJldiIKIAotIzogZ2l0LWJpc2VjdC5zaDoyODMKKyM6IGdpdC1iaXNlY3Quc2g6MTM5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInZ2l0IGJpc2VjdCAkVEVSTV9CQUQnIGNhbiB0YWtlIG9ubHkgb25lIGFyZ3VtZW50LiIKIG1zZ3N0ciAiXCJnaXQgYmlzZWN0ICRURVJNX0JBRFwiIGthbiBiYXJhIHRhIGV0dCBhcmd1bWVudC4iCiAKLSM6IGdpdC1iaXNlY3Quc2g6MzA2Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJXYXJuaW5nOiBiaXNlY3Rpbmcgb25seSB3aXRoIGEgJFRFUk1fQkFEIGNvbW1pdC4iCi1tc2dzdHIgIiIKLSJWYXJuaW5nOiB1dGbDtnIgXCJiaXNlY3RcIiBtZWQgZW5kYXN0IGVuIGTDpWxpZyAoXCIkVEVSTV9CQURcIikgaW5jaGVja25pbmcuIgotCi0jLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW1ldIGFuZCBbbl0gaW4geW91cgotIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAotIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1iaXNlY3Quc2g6MzEyCi1tc2dpZCAiQXJlIHlvdSBzdXJlIFtZL25dPyAiCi1tc2dzdHIgIsOEciBkdSBzw6RrZXIgW1k9amEvTj1uZWpdPyAiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MzI0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iWW91IG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJGJhZF9zeW4gYW5kIG9uZSAkZ29vZF9zeW4gcmV2aXNpb24uXG4iCi0iKFlvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGFuZCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgZm9yIHRoYXQuKSIKLW1zZ3N0ciAiIgotIkR1IG3DpXN0ZSBhbmdlIMOldG1pbnN0b25lIGVuIGTDpWxpZyAoXCIkYmFkX3N5blwiKSBvY2ggZW4gYnJhIChcIiRnb29kX3N5blwiKSAiCi0idmVyc2lvbi5cbiIKLSIoRHUga2FuIGFudsOkbmRhIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIG9jaCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgZsO2ciAiCi0iZGV0dGEuKSIKLQotIzogZ2l0LWJpc2VjdC5zaDozMjcKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKLSJZb3UgdGhlbiBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICRnb29kX3N5biBhbmQgb25lICRiYWRfc3luIHJldmlzaW9uLlxuIgotIihZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJGJhZF9zeW5cIiBhbmQgXCJnaXQgYmlzZWN0ICRnb29kX3N5blwiIGZvciB0aGF0LikiCi1tc2dzdHIgIiIKLSJEdSBtw6VzdGUgc3RhcnRhIG1lZCBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKLSJEdSBtw6VzdGUgc2VkYW4gYW5nZSDDpXRtaW5zdG9uZSBlbiBicmEgKFwiJGdvb2Rfc3luXCIpIG9jaCBlbiBkw6VsaWcgIgotIihcIiRiYWRfc3luXCIpIHZlcnNpb24uXG4iCi0iKER1IGthbiBhbnbDpG5kYSBcImdpdCBiaXNlY3QgJGJhZF9zeW5cIiBvY2ggXCJnaXQgYmlzZWN0ICRnb29kX3N5blwiIGbDtnIgIgotImRldHRhLikiCi0KLSM6IGdpdC1iaXNlY3Quc2g6Mzk4IGdpdC1iaXNlY3Quc2g6NTEyCi1tc2dpZCAiV2UgYXJlIG5vdCBiaXNlY3RpbmcuIgotbXNnc3RyICJWaSB1dGbDtnIgaW5nZW4gYmlzZWN0IGbDtnIgdGlsbGbDpGxsZXQuIgotCi0jOiBnaXQtYmlzZWN0LnNoOjQwNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJyRpbnZhbGlkJyBpcyBub3QgYSB2YWxpZCBjb21taXQiCi1tc2dzdHIgIlwiJGludmFsaWRcIiDDpHIgaW50ZSBlbiBnaWx0aWcgaW5jaGVja25pbmciCi0KLSM6IGdpdC1iaXNlY3Quc2g6NDE0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iQ291bGQgbm90IGNoZWNrIG91dCBvcmlnaW5hbCBIRUFEICckYnJhbmNoJy5cbiIKLSJUcnkgJ2dpdCBiaXNlY3QgcmVzZXQgPGNvbW1pdD4nLiIKLW1zZ3N0ciAiIgotIkt1bmRlIGludGUgY2hlY2thIHV0IG9yaWdpbmFsLUhFQUQgXCIkYnJhbmNoXCIuXG4iCi0iRsO2cnPDtmsgXCJnaXQgYmlzZWN0IHJlc2V0IDxpbmNoZWNrbmluZz5cIi4iCi0KLSM6IGdpdC1iaXNlY3Quc2g6NDIyCisjOiBnaXQtYmlzZWN0LnNoOjIwOQogbXNnaWQgIk5vIGxvZ2ZpbGUgZ2l2ZW4iCiBtc2dzdHIgIkluZ2VuIGxvZ2dmaWwgYW5naXZlbiIKIAotIzogZ2l0LWJpc2VjdC5zaDo0MjMKKyM6IGdpdC1iaXNlY3Quc2g6MjEwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCAkZmlsZSBmb3IgcmVwbGF5aW5nIgogbXNnc3RyICJrYW4gaW50ZSBsw6RzYSAkZmlsZSBmw7ZyIHVwcHNwZWxuaW5nIgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ0NAorIzogZ2l0LWJpc2VjdC5zaDoyMzIKIG1zZ2lkICI/PyB3aGF0IGFyZSB5b3UgdGFsa2luZyBhYm91dD8iCiBtc2dzdHIgIj8/IHZhZCBtZW5hciBkdT8iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDUzCisjOiBnaXQtYmlzZWN0LnNoOjI0MQogbXNnaWQgImJpc2VjdCBydW4gZmFpbGVkOiBubyBjb21tYW5kIHByb3ZpZGVkLiIKIG1zZ3N0ciAiYmlzZWN0LWvDtnJuaW5nIG1pc3NseWNrYWRlczogaW5nZXQga29tbWFuZG8gZ2F2cy4iCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDU4CisjOiBnaXQtYmlzZWN0LnNoOjI0NgogIywgc2gtZm9ybWF0CiBtc2dpZCAicnVubmluZyAkY29tbWFuZCIKIG1zZ3N0ciAia8O2ciAkY29tbWFuZCIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NjUKKyM6IGdpdC1iaXNlY3Quc2g6MjUzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiYmlzZWN0IHJ1biBmYWlsZWQ6XG4iCkBAIC0xOTI3MiwxMSArMjMwNTQsMTEgQEAKICJcImJpc2VjdFwiLWvDtnJuaW5nZW4gbWlzc2x5Y2thZGVzOlxuIgogImZlbGtvZCAkcmVzIGZyw6VuIFwiJGNvbW1hbmRcIiDDpHIgPCAwIGVsbGVyID49IDEyOCIKIAotIzogZ2l0LWJpc2VjdC5zaDo0OTEKKyM6IGdpdC1iaXNlY3Quc2g6Mjc5CiBtc2dpZCAiYmlzZWN0IHJ1biBjYW5ub3QgY29udGludWUgYW55IG1vcmUiCiBtc2dzdHIgIlwiYmlzZWN0XCIta8O2cm5pbmdlbiBrYW4gaW50ZSBmb3J0c8OkdHRhIGzDpG5ncmUiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDk3CisjOiBnaXQtYmlzZWN0LnNoOjI4NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogImJpc2VjdCBydW4gZmFpbGVkOlxuIgpAQCAtMTkyODUsMjggKzIzMDY3LDEzIEBACiAiXCJiaXNlY3RcIi1rw7ZybmluZ2VuIG1pc3NseWNrYWRlczpcbiIKICJcImJpc2VjdF9zdGF0ZSAkc3RhdGVcIiBhdnNsdXRhZGVzIG1lZCBmZWxrb2RlbiAkcmVzIgogCi0jOiBnaXQtYmlzZWN0LnNoOjUwNAorIzogZ2l0LWJpc2VjdC5zaDoyOTIKIG1zZ2lkICJiaXNlY3QgcnVuIHN1Y2Nlc3MiCiBtc2dzdHIgIlwiYmlzZWN0XCIta8O2cm5pbmdlbiBseWNrYWRlcyIKIAotIzogZ2l0LWJpc2VjdC5zaDo1MzMKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkludmFsaWQgY29tbWFuZDogeW91J3JlIGN1cnJlbnRseSBpbiBhICRURVJNX0JBRC8kVEVSTV9HT09EIGJpc2VjdC4iCi1tc2dzdHIgIiIKLSJPZ2lsdGlndCBrb21tYW5kbzogZHUgdXRmw7ZyIGp1c3QgbnUgZW4gXCJiaXNlY3RcIiBtZWQgJFRFUk1fQkFELyRURVJNX0dPT0QuIgotCi0jOiBnaXQtYmlzZWN0LnNoOjU2NwotbXNnaWQgIm5vIHRlcm1zIGRlZmluZWQiCi1tc2dzdHIgImluZ2EgdGVybWVyIGFuZ2l2bmEiCi0KLSM6IGdpdC1iaXNlY3Quc2g6NTg0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iaW52YWxpZCBhcmd1bWVudCAkYXJnIGZvciAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCi0iU3VwcG9ydGVkIG9wdGlvbnMgYXJlOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGFuZCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgotbXNnc3RyICIiCi0ib2dpbHRpZ3QgYXJndW1lbnQgJGFyZyBmw7ZyIFwiZ2l0IGJpc2VjdCB0ZXJtc1wiLlxuIgotIkZsYWdnb3Igc29tIHN0w7ZkcyDDpHI6IC0tdGVybS1nb29kfC0tdGVybS1vbGQgb2NoIC0tdGVybS1iYWR8LS10ZXJtLW5ldy4iCisjOiBnaXQtYmlzZWN0LnNoOjMwMAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLiIKK21zZ3N0ciAiVmkgdXRmw7ZyIGluZ2VuIGJpc2VjdCBmw7ZyIHRpbGxmw6RsbGV0LiIKIAogIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6NDYKIG1zZ2lkICIiCkBAIC0xOTM0OCwyODggKzIzMTE1LDEyOCBAQAogbXNnaWQgIlNpbXBsZSBtZXJnZSBkaWQgbm90IHdvcmssIHRyeWluZyBhdXRvbWF0aWMgbWVyZ2UuIgogbXNnc3RyICJFbmtlbCBzYW1tYW5zbGFnbmluZyBtaXNzbHlja2FkZXMsIGbDtnJzw7ZrZXIgYXV0b21hdGlzayBzYW1tYW5zbGFnbmluZy4iCiAKLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQzNAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IG1vdmUgYmFjayB0byAkaGVhZF9uYW1lIgotbXNnc3RyICJLdW5kZSBpbnRlIGZseXR0YSB0aWxsYmFrYSB0aWxsICRoZWFkX25hbWUiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQ2MAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIkl0IHNlZW1zIHRoYXQgdGhlcmUgaXMgYWxyZWFkeSBhICRzdGF0ZV9kaXJfYmFzZSBkaXJlY3RvcnksIGFuZFxuIgotIkkgd29uZGVyIGlmIHlvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIHJlYmFzZS4gIElmIHRoYXQgaXMgdGhlXG4iCi0iY2FzZSwgcGxlYXNlIHRyeVxuIgotIlx0JGNtZF9saXZlX3JlYmFzZVxuIgotIklmIHRoYXQgaXMgbm90IHRoZSBjYXNlLCBwbGVhc2VcbiIKLSJcdCRjbWRfY2xlYXJfc3RhbGVfcmViYXNlXG4iCi0iYW5kIHJ1biBtZSBhZ2Fpbi4gIEkgYW0gc3RvcHBpbmcgaW4gY2FzZSB5b3Ugc3RpbGwgaGF2ZSBzb21ldGhpbmdcbiIKLSJ2YWx1YWJsZSB0aGVyZS4iCi1tc2dzdHIgIiIKLSJEZXQgdmVya2FyIHNvbSBrYXRhbG9nZW4gJHN0YXRlX2Rpcl9iYXNlIHJlZGFuIGV4aXN0ZXJhciwgb2NoXG4iCi0iamFnIHVuZHJhciBvbSBkdSByZWRhbiDDpHIgbWl0dCBpIGVuIGFubmFuIG9tYmFzZXJpbmcuIE9tIHPDpSDDpHJcbiIKLSJmYWxsZXQsIGbDtnJzw7ZrXG4iCi0iXHQkY21kX2xpdmVfcmViYXNlXG4iCi0iT20gc8OlIGludGUgw6RyIGZhbGxldCwga8O2clxuIgotIlx0JGNtZF9jbGVhcl9zdGFsZV9yZWJhc2VcbiIKLSJvY2gga8O2ciBwcm9ncmFtbWV0IGlnZW4uIEphZyBhdnNsdXRhciBpZmFsbCBkdSBmb3J0ZmFyYW5kZSBoYXJcbiIKLSJuw6Vnb3QgYXYgdsOkcmRlIGTDpHIuIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1MjUKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tc2lnbm9mZicgd2l0aCAnLS1wcmVzZXJ2ZS1tZXJnZXMnIgotbXNnc3RyICJmZWw6IGthbiBpbnRlIGtvbWJpbmVyYSBcIi0tc2lnbm9mZlwiIG1lZCBcIi0tcHJlc2VydmUtbWVyZ2VzXCIiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU3MAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCB1cHN0cmVhbSAnJHVwc3RyZWFtX25hbWUnIgotbXNnc3RyICJvZ2lsdGlnIHVwcHN0csO2bSBcIiR1cHN0cmVhbV9uYW1lXCIiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU5NAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJG9udG9fbmFtZTogdGhlcmUgYXJlIG1vcmUgdGhhbiBvbmUgbWVyZ2UgYmFzZXMiCi1tc2dzdHIgIiRvbnRvX25hbWU6IG1lciDDpG4gZW4gc2FtbWFuc2xhZ25pbmdzYmFzIGZpbm5zIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1OTcgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjAxCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICIkb250b19uYW1lOiB0aGVyZSBpcyBubyBtZXJnZSBiYXNlIgotbXNnc3RyICIkb250b19uYW1lOiBpbmdlbiBzYW1tYW5zbGFnbmluZ3NiYXMgZmlubnMiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjYwNgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBjb21taXQ6ICRvbnRvX25hbWUiCi1tc2dzdHIgIlBla2EgcMOlIGVuIGdpbHRpZyBpbmNoZWNrbmluZzogJG9udG9fbmFtZSIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjMyCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICckYnJhbmNoX25hbWUnIgotbXNnc3RyICLDtmRlc2RpZ2VydDogaW5nZW4gc8OlZGFuIGdyZW4vaW5jaGVja25pbmc6ICRicmFuY2hfbmFtZSIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjcwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJHN0YXNoX2FiYnJldiIKLW1zZ3N0ciAiU2thcGFkZSBhdXRvc3Rhc2g6ICRzdGFzaF9hYmJyZXYiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjY5OQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUuIgotbXNnc3RyICJBa3R1ZWxsIGdyZW4gJGJyYW5jaF9uYW1lIMOkciDDoCBqb3VyLiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzA5Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDdXJyZW50IGJyYW5jaCAkYnJhbmNoX25hbWUgaXMgdXAgdG8gZGF0ZSwgcmViYXNlIGZvcmNlZC4iCi1tc2dzdHIgIkFrdHVlbGwgZ3JlbiAkYnJhbmNoX25hbWUgw6RyIMOgIGpvdXIsIG9tYmFzZXJpbmcgZnJhbXR2aW5nYWQuIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MjMKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkNoYW5nZXMgdG8gJG9udG86IgotbXNnc3RyICLDhG5kcmluZ2FyIHRpbGwgJG9udG86IgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MjUKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkNoYW5nZXMgZnJvbSAkbWIgdG8gJG9udG86IgotbXNnc3RyICLDhG5kcmluZ2FyIGZyw6VuICRtYiB0aWxsICRvbnRvOiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzM2Ci1tc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uIgotbXNnc3RyICIiCi0iRsO2cnN0LCBzcG9sYXIgdGlsbGJha2EgaHV2dWRldCBmw7ZyIGF0dCBzcGVsYSBhdiBkaXR0IGFyYmV0ZSBvdmFucMOlIGRldC4uLiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzQ2Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJGYXN0LWZvcndhcmRlZCAkYnJhbmNoX25hbWUgdG8gJG9udG9fbmFtZS4iCi1tc2dzdHIgIlNuYWJic3BvbGFkZSAkYnJhbmNoX25hbWUgdGlsbCAkb250b19uYW1lLiIKLQotIzogZ2l0LXN0YXNoLnNoOjYxCi1tc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIHdpdGggcGFyYW1ldGVycyBpcyB1bmltcGxlbWVudGVkIgotbXNnc3RyICJcImdpdCBzdGFzaCBjbGVhclwiIG1lZCBwYXJhbWV0cmFyIGhhciBpbnRlIGltcGxlbWVudGVyYXRzIgotCi0jOiBnaXQtc3Rhc2guc2g6MTA4Ci1tc2dpZCAiWW91IGRvIG5vdCBoYXZlIHRoZSBpbml0aWFsIGNvbW1pdCB5ZXQiCi1tc2dzdHIgIkR1IGhhciBpbnRlIGRlbiBmw7Zyc3RhIGluY2hlY2tuaW5nZW4gw6RubnUiCi0KLSM6IGdpdC1zdGFzaC5zaDoxMjMKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBpbmRleCBzdGF0ZSIKLW1zZ3N0ciAiS2FuIGludGUgc3BhcmEgYWt0dWVsbHQgdGlsbHN0w6VuZCBmw7ZyIGluZGV4ZXQiCi0KLSM6IGdpdC1zdGFzaC5zaDoxMzgKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgdW50cmFja2VkIGZpbGVzIgotbXNnc3RyICJLYW4gaW50ZSBzcGFyYSBvc3DDpXJhZGUgZmlsZXIiCi0KLSM6IGdpdC1zdGFzaC5zaDoxNTggZ2l0LXN0YXNoLnNoOjE3MQotbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHdvcmt0cmVlIHN0YXRlIgotbXNnc3RyICJLYW4gaW50ZSBzcGFyYSBha3R1ZWxsdCB0aWxsc3TDpW5kIGbDtnIgYXJiZXRza2F0YWxvZ2VuIgotCi0jOiBnaXQtc3Rhc2guc2g6MTc1Ci1tc2dpZCAiTm8gY2hhbmdlcyBzZWxlY3RlZCIKLW1zZ3N0ciAiSW5nYSDDpG5kcmluZ2FyIHZhbGRhIgotCi0jOiBnaXQtc3Rhc2guc2g6MTc4CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIyMQogbXNnaWQgIkNhbm5vdCByZW1vdmUgdGVtcG9yYXJ5IGluZGV4IChjYW4ndCBoYXBwZW4pIgogbXNnc3RyICJLYW4gaW50ZSB0YSBib3J0IHRlbXBvcsOkcnQgaW5kZXggKGthbiBpbnRlIGludHLDpGZmYSkiCiAKLSM6IGdpdC1zdGFzaC5zaDoxOTEKLW1zZ2lkICJDYW5ub3QgcmVjb3JkIHdvcmtpbmcgdHJlZSBzdGF0ZSIKLW1zZ3N0ciAiS2FuIGludGUgcmVnaXN0cmVyYSB0aWxsc3TDpW5kIGbDtnIgYXJiZXRza2F0YWxvZyIKLQotIzogZ2l0LXN0YXNoLnNoOjIyOQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyNzIKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCB1cGRhdGUgJHJlZl9zdGFzaCB3aXRoICR3X2NvbW1pdCIKIG1zZ3N0ciAiS2FuIGludGUgdXBwZGF0ZXJhICRyZWZfc3Rhc2ggbWVkICR3X2NvbW1pdCIKIAotIzogZ2l0LXN0YXNoLnNoOjI4MQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMjQKICMsIHNoLWZvcm1hdAogbXNnaWQgImVycm9yOiB1bmtub3duIG9wdGlvbiBmb3IgJ3N0YXNoIHB1c2gnOiAkb3B0aW9uIgogbXNnc3RyICJmZWw6IG9rw6RuZCBmbGFnZ2EgZsO2ciBcInN0YXNoIHB1c2hcIjogJG9wdGlvbiIKIAotIzogZ2l0LXN0YXNoLnNoOjI5NQotbXNnaWQgIkNhbid0IHVzZSAtLXBhdGNoIGFuZCAtLWluY2x1ZGUtdW50cmFja2VkIG9yIC0tYWxsIGF0IHRoZSBzYW1lIHRpbWUiCi1tc2dzdHIgIkthbiBpbnRlIGFudsOkbmRhIC0tcGF0Y2ggb2NoIC0taW5jbHVkZS11bnRyYWNrZWQgZWxsZXIgLS1hbGwgc2FtdGlkaWd0IgotCi0jOiBnaXQtc3Rhc2guc2g6MzAzCi1tc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgotbXNnc3RyICJJbmdhIGxva2FsYSDDpG5kcmluZ2FyIGF0dCBzcGFyYSIKLQotIzogZ2l0LXN0YXNoLnNoOjMwOAotbXNnaWQgIkNhbm5vdCBpbml0aWFsaXplIHN0YXNoIgotbXNnc3RyICJLYW4gaW50ZSBpbml0aWVyYSBcInN0YXNoXCIiCi0KLSM6IGdpdC1zdGFzaC5zaDozMTIKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBzdGF0dXMiCi1tc2dzdHIgIkthbiBpbnRlIHNwYXJhIGFrdHVlbGwgc3RhdHVzIgotCi0jOiBnaXQtc3Rhc2guc2g6MzEzCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjM1NgogIywgc2gtZm9ybWF0CiBtc2dpZCAiU2F2ZWQgd29ya2luZyBkaXJlY3RvcnkgYW5kIGluZGV4IHN0YXRlICRzdGFzaF9tc2ciCiBtc2dzdHIgIlNwYXJhZGUgYXJiZXRza2F0YWxvZ2VuIG9jaCBpbmRleHN0YXR1cyAkc3Rhc2hfbXNnIgogCi0jOiBnaXQtc3Rhc2guc2g6MzQyCi1tc2dpZCAiQ2Fubm90IHJlbW92ZSB3b3JrdHJlZSBjaGFuZ2VzIgotbXNnc3RyICJLYW4gaW50ZSB0YSBib3J0IMOkbmRyaW5nYXIgaSBhcmJldHNrYXRhbG9nZW4iCi0KLSM6IGdpdC1zdGFzaC5zaDo0OTAKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NTM2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG9wdGlvbjogJG9wdCIKIG1zZ3N0ciAib2vDpG5kIGZsYWdnYTogJG9wdCIKIAotIzogZ2l0LXN0YXNoLnNoOjUwMwotbXNnaWQgIk5vIHN0YXNoIGVudHJpZXMgZm91bmQuIgotbXNnc3RyICJJbmdhIFwic3Rhc2jigJ0tcG9zdGVyIGhpdHRhZGVzLiIKLQotIzogZ2l0LXN0YXNoLnNoOjUxMAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NTYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlRvbyBtYW55IHJldmlzaW9ucyBzcGVjaWZpZWQ6ICRSRVYiCiBtc2dzdHIgIkbDtnIgbcOlbmdhIHJldmlzaW9uZXIgYW5naXZuYTogJFJFViIKIAotIzogZ2l0LXN0YXNoLnNoOjUyNQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NzEKICMsIHNoLWZvcm1hdAogbXNnaWQgIiRyZWZlcmVuY2UgaXMgbm90IGEgdmFsaWQgcmVmZXJlbmNlIgogbXNnc3RyICIkcmVmZXJlbmNlIMOkciBpbnRlIGVuIGdpbHRpZyByZWZlcmVucyIKIAotIzogZ2l0LXN0YXNoLnNoOjU1MworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1OTkKICMsIHNoLWZvcm1hdAogbXNnaWQgIickYXJncycgaXMgbm90IGEgc3Rhc2gtbGlrZSBjb21taXQiCiBtc2dzdHIgIlwiJGFyZ3NcIiDDpHIgaW50ZSBlbiBcInN0YXNoXCItbGlrbmFuZGUgaW5jaGVja25pbmciCiAKLSM6IGdpdC1zdGFzaC5zaDo1NjQKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjEwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJGFyZ3MnIGlzIG5vdCBhIHN0YXNoIHJlZmVyZW5jZSIKIG1zZ3N0ciAiXCIkYXJnc1wiIMOkciBpbnRlIGVuIFwic3Rhc2hcIi1yZWZlcmVucyIKIAotIzogZ2l0LXN0YXNoLnNoOjU3MgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MTgKIG1zZ2lkICJ1bmFibGUgdG8gcmVmcmVzaCBpbmRleCIKIG1zZ3N0ciAia2FuIGludGUgdXBwZGF0ZXJhIGluZGV4ZXQiCiAKLSM6IGdpdC1zdGFzaC5zaDo1NzYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjIyCiBtc2dpZCAiQ2Fubm90IGFwcGx5IGEgc3Rhc2ggaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIgogbXNnc3RyICJLYW4gaW50ZSB0aWxsw6RtcGEgZW4gXCJzdGFzaFwiIG1pdHQgaSBlbiBzYW1tYW5zbGFnbmluZyIKIAotIzogZ2l0LXN0YXNoLnNoOjU4NAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MzAKIG1zZ2lkICJDb25mbGljdHMgaW4gaW5kZXguIFRyeSB3aXRob3V0IC0taW5kZXguIgogbXNnc3RyICJLb25mbGlrdGVyIGkgaW5kZXhldC4gVGVzdGEgdXRhbiAtLWluZGV4LiIKIAotIzogZ2l0LXN0YXNoLnNoOjU4NgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MzIKIG1zZ2lkICJDb3VsZCBub3Qgc2F2ZSBpbmRleCB0cmVlIgogbXNnc3RyICJLdW5kZSBpbnRlIHNwYXJhIGluZGV4dHLDpGQiCiAKLSM6IGdpdC1zdGFzaC5zaDo1OTUKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjQxCiBtc2dpZCAiQ291bGQgbm90IHJlc3RvcmUgdW50cmFja2VkIGZpbGVzIGZyb20gc3Rhc2ggZW50cnkiCiBtc2dzdHIgIkt1bmRlIGludGUgw6V0ZXJzdMOkbGxhIG9zcMOlcmFkZSBmaWxlciBmcsOlbiBzdGFzaC1wb3N0IgogCi0jOiBnaXQtc3Rhc2guc2g6NjIwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjY2NgogbXNnaWQgIkNhbm5vdCB1bnN0YWdlIG1vZGlmaWVkIGZpbGVzIgogbXNnc3RyICJLYW4gaW50ZSB0YSBib3J0IMOkbmRyYWRlIGZpbGVyIHVyIGvDtm4iCiAKLSM6IGdpdC1zdGFzaC5zaDo2MzUKLW1zZ2lkICJJbmRleCB3YXMgbm90IHVuc3Rhc2hlZC4iCi1tc2dzdHIgIkluZGV4ZXQgaGFyIGludGUgdGFnaXRzIHVyIGvDtm4uIgotCi0jOiBnaXQtc3Rhc2guc2g6NjQ5Ci1tc2dpZCAiVGhlIHN0YXNoIGVudHJ5IGlzIGtlcHQgaW4gY2FzZSB5b3UgbmVlZCBpdCBhZ2Fpbi4iCi1tc2dzdHIgIlN0YXNoLXBvc3RlbiBiZWjDpWxscyBpZmFsbCBkdSBiZWjDtnZlciBkZW4gaWdlbi4iCi0KLSM6IGdpdC1zdGFzaC5zaDo2NTgKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzA0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJEcm9wcGVkICR7UkVWfSAoJHMpIgogbXNnc3RyICJLYXN0YWRlICR7UkVWfSAoJHMpIgogCi0jOiBnaXQtc3Rhc2guc2g6NjU5CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjcwNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJHtSRVZ9OiBDb3VsZCBub3QgZHJvcCBzdGFzaCBlbnRyeSIKIG1zZ3N0ciAiJHtSRVZ9OiBLdW5kZSBpbnRlIGthc3RhIFwic3Rhc2hcIi1wb3N0IgogCi0jOiBnaXQtc3Rhc2guc2g6NjY3Ci1tc2dpZCAiTm8gYnJhbmNoIG5hbWUgc3BlY2lmaWVkIgotbXNnc3RyICJJbmdldCBncmVubmFtbiBhbmdhdnMiCi0KLSM6IGdpdC1zdGFzaC5zaDo3NDYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzkyCiBtc2dpZCAiKFRvIHJlc3RvcmUgdGhlbSB0eXBlIFwiZ2l0IHN0YXNoIGFwcGx5XCIpIgogbXNnc3RyICIoRsO2ciBhdHQgw6V0ZXJzdMOkbGxhIGRlbSwgc2tyaXYgXCJnaXQgc3Rhc2ggYXBwbHlcIikiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MTk4CisjOiBnaXQtc3VibW9kdWxlLnNoOjIwMwogbXNnaWQgIlJlbGF0aXZlIHBhdGggY2FuIG9ubHkgYmUgdXNlZCBmcm9tIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICJSZWxhdGl2IHPDtmt2w6RnIGthbiBlbmRhc3QgYW52w6RuZGFzIGZyw6VuIGFyYmV0c2thdGFsb2dlbnMgdG9wcG5pdsOlIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjIwOAorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMTMKICMsIHNoLWZvcm1hdAogbXNnaWQgInJlcG8gVVJMOiAnJHJlcG8nIG11c3QgYmUgYWJzb2x1dGUgb3IgYmVnaW4gd2l0aCAuL3wuLi8iCiBtc2dzdHIgImFya2l2LVVSTDogXCIkcmVwb1wiIG3DpXN0ZSB2YXJhIGFic29sdXQgZWxsZXIgYsO2cmphIG1lZCAuL3wuLi8iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjI3CisjOiBnaXQtc3VibW9kdWxlLnNoOjIzMgogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXgiCiBtc2dzdHIgIlwiJHNtX3BhdGhcIiBmaW5ucyByZWRhbiBpIGluZGV4ZXQiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjMwCisjOiBnaXQtc3VibW9kdWxlLnNoOjIzNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXggYW5kIGlzIG5vdCBhIHN1Ym1vZHVsZSIKIG1zZ3N0ciAiXCIkc21fcGF0aFwiIGZpbm5zIHJlZGFuIGkgaW5kZXhldCBvY2ggw6RyIGludGUgZW4gdW5kZXJtb2R1bCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjQyCiAjLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iVGhlIGZvbGxvd2luZyBwYXRoIGlzIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczpcbiIKLSIkc21fcGF0aFxuIgotIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIGl0LiIKLW1zZ3N0ciAiIgotIkbDtmxqYW5kZSBzw7ZrdsOkZ2FyIGlnbm9yZXJhcyBhdiBlbiBhdiBkaW5hIC5naXRpZ25vcmUtZmlsZXI6XG4iCi0iJHNtX3BhdGhcbiIKLSJBbnbDpG5kIC1mIG9tIGR1IHZlcmtsaWdlbiB2aWxsIGzDpGdnYSB0aWxsIGRlbi4iCittc2dpZCAiJyRzbV9wYXRoJyBkb2VzIG5vdCBoYXZlIGEgY29tbWl0IGNoZWNrZWQgb3V0IgorbXNnc3RyICJcIiRzbV9wYXRoXCIgaGFyIGludGUgbsOlZ29uIHV0Y2hlY2thZCBpbmNoZWNrbmluZyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNTkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjczCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJBZGRpbmcgZXhpc3RpbmcgcmVwbyBhdCAnJHNtX3BhdGgnIHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiTMOkZ2dlciB0aWxsIGJlZmludGxpZ3QgYXJraXYgaSBcIiRzbV9wYXRoXCIgaSBpbmRleGV0IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI2MQorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzUKICMsIHNoLWZvcm1hdAogbXNnaWQgIickc21fcGF0aCcgYWxyZWFkeSBleGlzdHMgYW5kIGlzIG5vdCBhIHZhbGlkIGdpdCByZXBvIgogbXNnc3RyICJcIiRzbV9wYXRoXCIgZmlubnMgcmVkYW4gb2NoIMOkciBpbnRlIGV0dCBnaWx0aWd0IGdpdC1hcmtpdiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNjkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjgzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJBIGdpdCBkaXJlY3RvcnkgZm9yICckc21fbmFtZScgaXMgZm91bmQgbG9jYWxseSB3aXRoIHJlbW90ZShzKToiCiBtc2dzdHIgIkVuIGdpdC1rYXRhbG9nIGbDtnIgXCIkc21fbmFtZVwiIGhpdHRhZGVzIGxva2FsdCBtZWQgZmrDpHJyKGFyKToiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjcxCisjOiBnaXQtc3VibW9kdWxlLnNoOjI4NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3YW50IHRvIHJldXNlIHRoaXMgbG9jYWwgZ2l0IGRpcmVjdG9yeSBpbnN0ZWFkIG9mIGNsb25pbmcgYWdhaW4gZnJvbVxuIgpAQCAtMTk2NDcsMzcgKzIzMjU0LDM3IEBACiAiYXJraXYgZWxsZXIgb20gZHUgw6RyIG9zw6RrZXIgcMOlIHZhZCBkZXQgaMOkciBiZXR5ZGVyLCB2w6RsaiBldHQgYW5uYXQgbmFtbiBtZWRcbiIKICJmbGFnZ2FuIFwiLS1uYW1lXCIuIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI3NworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYWN0aXZhdGluZyBsb2NhbCBnaXQgZGlyZWN0b3J5IGZvciBzdWJtb2R1bGUgJyRzbV9uYW1lJy4iCiBtc2dzdHIgIkFrdGl2ZXJhciBsb2thbCBnaXQta2F0YWxvZyBmw7ZyIHVuZGVybW9kdWxlbiBcIiRzbV9uYW1lXCIgcMOlIG55dHQuIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI4OQorIzogZ2l0LXN1Ym1vZHVsZS5zaDozMDMKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBjaGVja291dCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAiS2FuIGludGUgY2hlY2thIHV0IHVuZGVybW9kdWxlbiBcIiRzbV9wYXRoXCIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6Mjk0CisjOiBnaXQtc3VibW9kdWxlLnNoOjMwOAogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGFkZCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAiTWlzc2x5Y2thZGVzIGzDpGdnYSB0aWxsIHVuZGVybW9kdWxlbiBcIiRzbV9wYXRoXCIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MzAzCisjOiBnaXQtc3VibW9kdWxlLnNoOjMxNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICJNaXNzbHlja2FkZXMgcmVnaXN0cmVyYSB1bmRlcm1vZHVsZW4gXCIkc21fcGF0aFwiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU2MworIzogZ2l0LXN1Ym1vZHVsZS5zaDo1OTAKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBmaW5kIGN1cnJlbnQgcmV2aXNpb24gaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIkthbiBpbnRlIGhpdHRhIGFrdHVlbGwgcmV2aXNpb24gaSB1bmRlcm1vZHVsc8O2a3bDpGdlbiBcIiRkaXNwbGF5cGF0aFwiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU3MworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDAKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJHNtX3BhdGgnIgogbXNnc3RyICJLYW4gaW50ZSBow6RtdGEgaSB1bmRlcm1vZHVsc8O2a3bDpGcgXCIkc21fcGF0aFwiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU3OAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJVbmFibGUgdG8gZmluZCBjdXJyZW50ICR7cmVtb3RlX25hbWV9LyR7YnJhbmNofSByZXZpc2lvbiBpbiBzdWJtb2R1bGUgcGF0aCAiCkBAIC0xOTY4NiwxMiArMjMyOTMsMTYgQEAKICJLYW4gaW50ZSBoaXR0YSBha3R1ZWxsIHJldmlzaW9uIGbDtnIgJHtyZW1vdGVfbmFtZX0vJHticmFuY2h9IGkgIgogInVuZGVybW9kdWxzw7ZrdsOkZ2VuIFwiJHNtX3BhdGhcIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1OTYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjIzCiAjLCBzaC1mb3JtYXQKLW1zZ2lkICJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCi1tc2dzdHIgIkthbiBpbnRlIGjDpG10YSBpIHVuZGVybW9kdWxzw7ZrdsOkZyBcIiRkaXNwbGF5cGF0aFwiIgorbXNnaWQgIiIKKyJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc7IHRyeWluZyB0byBkaXJlY3RseSBmZXRjaCAiCisiJHNoYTE6IgorbXNnc3RyICIiCisiS2FuIGludGUgaMOkbXRhIGkgdW5kZXJtb2R1bHPDtmt2w6RnIFwiJGRpc3BsYXlwYXRoXCI7IGbDtnJzw7ZrdGUgaMOkbXRhICRzaGExICIKKyJkaXJla3Q6IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYwMgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjkKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJGZXRjaGVkIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnLCBidXQgaXQgZGlkIG5vdCBjb250YWluICRzaGExLiAiCkBAIC0xOTcwMCw3MiArMjMzMTEsNzIgQEAKICJIw6RtdGFkZSBpIHVuZGVybW9kdWxzc8O2a3bDpGdlbiBcIiRkaXNwbGF5cGF0aFwiLCBtZW4gZGVuIGlubmVow7ZsbCBpbnRlICRzaGExLiAiCiAiRGlyZWt0IGjDpG10bmluZyBhdiBpbmNoZWNrbmluZ2VuIG1pc3NseWNrYWRlcy4iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjA5CisjOiBnaXQtc3VibW9kdWxlLnNoOjYzNgogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGNoZWNrb3V0ICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIkthbiBpbnRlIGNoZWNrYSB1dCBcIiRzaGExXCIgaSB1bmRlcm1vZHVsc8O2a3bDpGdlbiBcIiRkaXNwbGF5cGF0aFwiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYxMAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MzcKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiBjaGVja2VkIG91dCAnJHNoYTEnIgogbXNnc3RyICJVbmRlcm1vZHVsc8O2a3bDpGdlbiBcIiRkaXNwbGF5cGF0aFwiOiBjaGVja2FkZSB1dCBcIiRzaGExXCIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjE0CisjOiBnaXQtc3VibW9kdWxlLnNoOjY0MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIHJlYmFzZSAnJHNoYTEnIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICJLYW4gaW50ZSBvbWJhc2VyYSBcIiRzaGExXCIgaSB1bmRlcm1vZHVsc8O2a3bDpGdlbiBcIiRkaXNwbGF5cGF0aFwiIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYxNQorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDIKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiByZWJhc2VkIGludG8gJyRzaGExJyIKIG1zZ3N0ciAiVW5kZXJtb2R1bHPDtmt2w6RnZW4gXCIkZGlzcGxheXBhdGhcIjogb21iYXNlcmFkZSBpbiBpIFwiJHNoYTFcIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjAKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQ3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gbWVyZ2UgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiS2FuIGludGUgc2zDpSBpaG9wIFwiJHNoYTFcIiBpIHVuZGVybW9kdWxzw7ZrdsOkZ2VuIFwiJGRpc3BsYXlwYXRoXCIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjIxCisjOiBnaXQtc3VibW9kdWxlLnNoOjY0OAogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IG1lcmdlZCBpbiAnJHNoYTEnIgogbXNnc3RyICJVbmRlcm1vZHVsc8O2a3bDpGdlbiBcIiRkaXNwbGF5cGF0aFwiOiBzYW1tYW5zbGFnZW4gaSBcIiRzaGExXCIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjI2CisjOiBnaXQtc3VibW9kdWxlLnNoOjY1MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRXhlY3V0aW9uIG9mICckY29tbWFuZCAkc2hhMScgZmFpbGVkIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICIiCiAiTWlzc2x5Y2thZGVzIGvDtnJhIFwiJGNvbW1hbmQgJHNoYTFcIiBpIHVuZGVybW9kdWxzw7ZrdsOkZ2VuIFwiJGRpc3BsYXlwYXRoXCIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjI3CisjOiBnaXQtc3VibW9kdWxlLnNoOjY1NAogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6ICckY29tbWFuZCAkc2hhMSciCiBtc2dzdHIgIlVuZGVybW9kdWxzw7ZrdsOkZ2VuIFwiJGRpc3BsYXlwYXRoXCI6IFwiJGNvbW1hbmQgJHNoYTFcIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NTgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Njg1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICJNaXNzbHlja2FkZXMgcmVrdXJzZXJhIGluIGkgdW5kZXJtb2R1bHPDtmt2w6RnZW4gXCIkZGlzcGxheXBhdGhcIiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo3NTQKKyM6IGdpdC1zdWJtb2R1bGUuc2g6ODk2CiBtc2dpZCAiVGhlIC0tY2FjaGVkIG9wdGlvbiBjYW5ub3QgYmUgdXNlZCB3aXRoIHRoZSAtLWZpbGVzIG9wdGlvbiIKIG1zZ3N0ciAiRmxhZ2dhbiAtLWNhY2hlZCBrYW4gaW50ZSBhbnbDpG5kYXMgbWVkIGZsYWdnYW4gLS1maWxlcyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MDYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTQ4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG1vZGUgJG1vZF9kc3QiCiBtc2dzdHIgIm92w6RudGF0IGzDpGdlICRtb2RfZHN0IgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjgyNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NjgKICMsIHNoLWZvcm1hdAogbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX3NyYyIKIG1zZ3N0ciAiICBWYXJuaW5nOiAkZGlzcGxheV9uYW1lIGlubmVow6VsbGVyIGludGUgaW5jaGVja25pbmdlbiAkc2hhMV9zcmMiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODI5CisjOiBnaXQtc3VibW9kdWxlLnNoOjk3MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXQgJHNoYTFfZHN0IgogbXNnc3RyICIgIFZhcm5pbmc6ICRkaXNwbGF5X25hbWUgaW5uZWjDpWxsZXIgaW50ZSBpbmNoZWNrbmluZ2VuICRzaGExX2RzdCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MzIKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTc0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdHMgJHNoYTFfc3JjIGFuZCAkc2hhMV9kc3QiCiBtc2dzdHIgIiIKQEAgLTE5Nzc3LDEyICsyMzM4OCwyMSBAQAogbXNnaWQgIlNlZSBnaXQtJHtjbWR9KDEpIGZvciBkZXRhaWxzLiIKIG1zZ3N0ciAiU2UgZ2l0LSR7Y21kfSgxKSBmw7ZyIGRldGFsamVyLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEzNgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEwOQorbXNnaWQgIkFwcGxpZWQgYXV0b3N0YXNoLiIKK21zZ3N0ciAiVGlsbMOkbXBhZGUgYXV0b3N0YXNoLiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjExMgorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN0b3JlICRzdGFzaF9zaGExIgorbXNnc3RyICJLYW4gaW50ZSBzcGFyYSAkc3Rhc2hfc2hhMSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE5MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiUmViYXNpbmcgKCRuZXdfY291bnQvJHRvdGFsKSIKIG1zZ3N0ciAiT21iYXNlcmFyICgkbmV3X2NvdW50LyR0b3RhbCkiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNTIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMDcKIG1zZ2lkICIiCiAiXG4iCiAiQ29tbWFuZHM6XG4iCkBAIC0xOTgyMyw3ICsyMzQ0Myw3IEBACiAiXG4iCiAiRHUga2FuIGJ5dGEgb3JkbmluZyBww6UgcmFkZXJuYTsgZGUgdXRmw7ZycyB1cHBpZnLDpW4gb2NoIG5lZC5cbiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIxNQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI3MAogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBjYW4gYW1lbmQgdGhlIGNvbW1pdCBub3csIHdpdGhcbiIKQEAgLTE5ODQyLDgzICsyMzQ2Miw4MyBAQAogIlxuIgogIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mjk1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIkc2hhMTogbm90IGEgY29tbWl0IHRoYXQgY2FuIGJlIHBpY2tlZCIKIG1zZ3N0ciAiJHNoYTE6IGludGUgZW4gaW5jaGVja25pbmcgc29tIGthbiB2w6RsamFzIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mjc5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzM0CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIGNvbW1pdCBuYW1lOiAkc2hhMSIKIG1zZ3N0ciAiRmVsYWt0aWd0IGluY2hlY2tuaW5nc25hbW46ICRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzA5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzY0CiBtc2dpZCAiQ2Fubm90IHdyaXRlIGN1cnJlbnQgY29tbWl0J3MgcmVwbGFjZW1lbnQgc2hhMSIKIG1zZ3N0ciAiS2FuIGludGUgc2tyaXZhIGVyc8OkdHRuaW5ncy1zaGExIGbDtnIgYWt0dWVsbCBpbmNoZWNrbmluZyIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFzdC1mb3J3YXJkIHRvICRzaGExIgogbXNnc3RyICJTbmFiYnNwb2xhZGUgdGlsbCAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2MgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGZhc3QtZm9yd2FyZCB0byAkc2hhMSIKIG1zZ3N0ciAiS2FuIGludGUgc25hYmJzcG9sYSB0aWxsICRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzcxCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDI2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgbW92ZSBIRUFEIHRvICRmaXJzdF9wYXJlbnQiCiBtc2dzdHIgIkthbiBpbnRlIGZseXR0YSBIRUFEIHRpbGwgJGZpcnN0X3BhcmVudCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM3NgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQzMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gc3F1YXNoIGEgbWVyZ2U6ICRzaGExIgogbXNnc3RyICJWw6RncmFyIHV0ZsO2cmEgXCJzcXVhc2hcIiBww6UgZW4gc2FtbWFuc2xhZ25pbmc6ICRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mzk0CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQ5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJFcnJvciByZWRvaW5nIG1lcmdlICRzaGExIgogbXNnc3RyICJGZWwgbsOkciBzYW1tYW5zbGFnbmluZ2VuICRzaGExIHNrdWxsZSBnw7ZyYXMgb20iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MDMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NTgKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBwaWNrICRzaGExIgogbXNnc3RyICJLdW5kZSBpbnRlIHbDpGxqYSAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxMgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ2NwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyB0aGUgY29tbWl0IG1lc3NhZ2UgIyR7bn06IgogbXNnc3RyICJEZXQgaMOkciDDpHIgaW5jaGVja25pbmdzbWVkZGVsYW5kZSAke259OiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ3MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhlIGNvbW1pdCBtZXNzYWdlICMke259IHdpbGwgYmUgc2tpcHBlZDoiCiBtc2dzdHIgIkluY2hlY2tuaW5nc21lZGRlbGFuZGUgJHtufSBrb21tZXIgaG9wcGFzIMO2dmVyOiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQyOAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ4MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mICRjb3VudCBjb21taXQuIgogbXNnaWRfcGx1cmFsICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJGNvdW50IGNvbW1pdHMuIgogbXNnc3RyWzBdICJEZXQgaMOkciDDpHIgZW4ga29tYmluYXRpb24gYXYgJGNvdW50IGluY2hlY2tuaW5nLiIKIG1zZ3N0clsxXSAiRGV0IGjDpHIgw6RyIGVuIGtvbWJpbmF0aW9uIGF2ICRjb3VudCBpbmNoZWNrbmluZ2FyLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQzNworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHdyaXRlICRmaXh1cF9tc2ciCiBtc2dzdHIgIkthbiBpbnRlIHNrcml2YSAkZml4dXBfbXNnIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDk1CiBtc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mIDIgY29tbWl0cy4iCiBtc2dzdHIgIkRldCBow6RyIMOkciBlbiBrb21iaW5hdGlvbiBhdiAyIGluY2hlY2tuaW5nYXIuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDgxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1MjQKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1MjcKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1MzYgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU3OQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU4MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICRzaGExLi4uICRyZXN0IgogbXNnc3RyICJLdW5kZSBpbnRlIHRpbGzDpG1wYSAkc2hhMS4uLiAkcmVzdCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU1NgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYxMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIkNvdWxkIG5vdCBhbWVuZCBjb21taXQgYWZ0ZXIgc3VjY2Vzc2Z1bGx5IHBpY2tpbmcgJHNoYTEuLi4gJHJlc3RcbiIKQEAgLTE5OTMyLDMxICsyMzU1MiwzMSBAQAogInByZS1jb21taXQta3Jva2VuIG1pc3NseWNrYWRlcy4gT20gcHJlLWNvbW1pdC1rcm9rZW4gbWlzc2x5Y2thZGVzIGthbnNrZVxuIgogImR1IG3DpXN0ZSBsw7ZzYSBwcm9ibGVtZXQgaW5uYW4gZHUga2FuIHNrcml2YSBvbSBpbmNoZWNrbmluZ3NtZWRkZWxhbmRldC4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1NzEKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MjYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN0b3BwZWQgYXQgJHNoYTFfYWJicmV2Li4uICRyZXN0IgogbXNnc3RyICJTdG9wcGFkZSBww6UgJHNoYTFfYWJicmV2Li4uICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTg2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJyRzcXVhc2hfc3R5bGUnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgIkthbiBpbnRlIHV0ZsO2cmEgXCIkc3F1YXNoX3N0eWxlXCIgdXRhbiBlbiBmw7ZyZWfDpWVuZGUgaW5jaGVja25pbmciCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MjgKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2ODMKICMsIHNoLWZvcm1hdAogbXNnaWQgIkV4ZWN1dGluZzogJHJlc3QiCiBtc2dzdHIgIkvDtnI6ICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjM2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJFeGVjdXRpb24gZmFpbGVkOiAkcmVzdCIKIG1zZ3N0ciAiS8O2cm5pbmcgbWlzc2x5Y2thZGVzOiAkcmVzdCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYzOAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY5MwogbXNnaWQgImFuZCBtYWRlIGNoYW5nZXMgdG8gdGhlIGluZGV4IGFuZC9vciB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICJvY2ggZ2pvcmRlIMOkbmRyaW5nYXIgdGlsbCBpbmRleGV0IG9jaC9lbGxlciBhcmJldHNrYXRhbG9nZW4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NDAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTUKIG1zZ2lkICIiCiAiWW91IGNhbiBmaXggdGhlIHByb2JsZW0sIGFuZCB0aGVuIHJ1blxuIgogIlxuIgpAQCAtMTk5NjcsNyArMjM1ODcsNyBAQAogIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgogCiAjLiBUUkFOU0xBVE9SUzogYWZ0ZXIgdGhlc2UgbGluZXMgaXMgYSBjb21tYW5kIHRvIGJlIGlzc3VlZCBieSB0aGUgdXNlcgotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY1MworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcwOAogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIkV4ZWN1dGlvbiBzdWNjZWVkZWQ6ICRyZXN0XG4iCkBAIC0xOTk4MiwyNSArMjM2MDIsMjUgQEAKICJcbiIKICJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY2NAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcxOQogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5rbm93biBjb21tYW5kOiAkY29tbWFuZCAkc2hhMSAkcmVzdCIKIG1zZ3N0ciAiT2vDpG50IGtvbW1hbmRvOiAkY29tbWFuZCAkc2hhMSAkcmVzdCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY2NQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcyMAogbXNnaWQgIlBsZWFzZSBmaXggdGhpcyB1c2luZyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycuIgogbXNnc3RyICJSw6R0dGEgZGV0IG1lZCBcImdpdCByZWJhc2UgLS1lZGl0LXRvZG9cIi4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MDAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NTUKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Y2Nlc3NmdWxseSByZWJhc2VkIGFuZCB1cGRhdGVkICRoZWFkX25hbWUuIgogbXNnc3RyICJMeWNrYWRlcyBvbWJhc2VyYSBvY2ggdXBwZGF0ZXJhICRoZWFkX25hbWUuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzU3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODEyCiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgogbXNnc3RyICJLdW5kZSBpbnRlIHRhIGJvcnQgQ0hFUlJZX1BJQ0tfSEVBRCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc2MgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgxNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBoYXZlIHN0YWdlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLlxuIgpAQCAtMjAwMTksMTEgKzIzNjM5LDExIEBACiBtc2dzdHIgIiIKICJEdSBoYXIga8O2YWRlIMOkbmRyaW5nYXIgaSBkaW4gYXJiZXRza2F0YWxvZy5cbiIKICJPbSBkZXQgw6RyIG1lbmluZ2VuIGF0dCDDpG5kcmluZ2FybmFcbiIKLSJza2FsbCBsw6RnZ2FzIGluIGkgZsO2cmVnw6VlbmRlIGluY2hlY2tuaW5nLCBrw7ZyOlxuIgorInNrYSBsw6RnZ2FzIGluIGkgZsO2cmVnw6VlbmRlIGluY2hlY2tuaW5nLCBrw7ZyOlxuIgogIlxuIgogIiAgZ2l0IGNvbW1pdCAtLWFtZW5kICRncGdfc2lnbl9vcHRfcXVvdGVkXG4iCiAiXG4iCi0iT20gZGUgc2thbGwgY2hlY2thcyBpbiBpIGVuIGVnZW4gaW5jaGVja25pbmcsIGvDtnI6XG4iCisiT20gZGUgc2thIGNoZWNrYXMgaW4gaSBlbiBlZ2VuIGluY2hlY2tuaW5nLCBrw7ZyOlxuIgogIlxuIgogIiAgZ2l0IGNvbW1pdCAkZ3BnX3NpZ25fb3B0X3F1b3RlZFxuIgogIlxuIgpAQCAtMjAwMzEsNTIgKzIzNjUxLDU2IEBACiAiXG4iCiAiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc3OQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgzNAogbXNnaWQgIkVycm9yIHRyeWluZyB0byBmaW5kIHRoZSBhdXRob3IgaWRlbnRpdHkgdG8gYW1lbmQgY29tbWl0IgogbXNnc3RyICJGZWwgdmlkIGbDtnJzw7ZrIGF0dCBoaXR0YSBmw7ZyZmF0dGFyaWRlbnRpdGV0IGbDtnIgYXR0IHV0w7ZrYSBpbmNoZWNrbmluZyIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc4NAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgzOQogbXNnaWQgIiIKICJZb3UgaGF2ZSB1bmNvbW1pdHRlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLiBQbGVhc2UgY29tbWl0IHRoZW1cbiIKICJmaXJzdCBhbmQgdGhlbiBydW4gJ2dpdCByZWJhc2UgLS1jb250aW51ZScgYWdhaW4uIgogbXNnc3RyICIiCiAiRHUgaGFyIMOkbmRyaW5nYXIgaSBhcmJldHNrYXRhbG9nZW4gc29tIGludGUgY2hlY2thdHMgaW4uIENoZWNrYSBpbiBkZW1cbiIKLSJmw7Zyc3Qgb2NoIGvDtnIgc2VkYW4gXCJnaXQgcmViYXNlIC0tY29udGludXRlXCIgaWdlbi4iCisiZsO2cnN0IG9jaCBrw7ZyIHNlZGFuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIgaWdlbi4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3ODkgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc5MworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg0NCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ4CiBtc2dpZCAiQ291bGQgbm90IGNvbW1pdCBzdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIkt1bmRlIGludGUgY2hlY2thIGluIGvDtmFkZSDDpG5kcmluZ2FyLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgyNCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTEwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODc5IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NjUKIG1zZ2lkICJDb3VsZCBub3QgZXhlY3V0ZSBlZGl0b3IiCiBtc2dzdHIgIkt1bmRlIGludGUgc3RhcnRhIHRleHRyZWRpZ2VyYXJlIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ1CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTAwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgY2hlY2tvdXQgJHN3aXRjaF90byIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBjaGVja2EgdXQgJHN3aXRjaF90byIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1MgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwNwogbXNnaWQgIk5vIEhFQUQ/IgogbXNnc3RyICJJbmdldCBIRUFEPyIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1MworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwOAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJHN0YXRlX2RpciIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBza2FwYSB0ZW1wb3LDpHIgJHN0YXRlX2RpciIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1NgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkxMQogbXNnaWQgIkNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgogbXNnc3RyICJLdW5kZSBpbnRlIG1hcmtlcmEgc29tIGludGVyYWt0aXYiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4ODgKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDMKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgb250byAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmQpIgogbXNnaWRfcGx1cmFsICJSZWJhc2UgJHNob3J0cmV2aXNpb25zIG9udG8gJHNob3J0b250byAoJHRvZG9jb3VudCBjb21tYW5kcykiCiBtc2dzdHJbMF0gIk9tYmFzZXJhICRzaG9ydHJldmlzaW9ucyBww6UgJHNob3J0b250byAoJHRvZG9jb3VudCBpbmNoZWNrbmluZykiCiBtc2dzdHJbMV0gIk9tYmFzZXJhICRzaG9ydHJldmlzaW9ucyBww6UgJHNob3J0b250byAoJHRvZG9jb3VudCBpbmNoZWNrbmluZ2FyKSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0MiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTQ3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTU1Cittc2dpZCAiTm90ZSB0aGF0IGVtcHR5IGNvbW1pdHMgYXJlIGNvbW1lbnRlZCBvdXQiCittc2dzdHIgIk9ic2VydmVyYSBhdHQgdG9tbWEgaW5jaGVja25pbmdhciDDpHIgdXRrb21tZW50ZXJhZGUiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5OTcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEwMDIKIG1zZ2lkICJDb3VsZCBub3QgaW5pdCByZXdyaXR0ZW4gY29tbWl0cyIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBpbml0aWVyYSBvbXNrcml2bmEgaW5jaGVja25pbmdhciIKIApAQCAtMjAwODUsMTM3ICsyMzcwOSw3NSBAQAogbXNnaWQgInVzYWdlOiAkZGFzaGxlc3MgJFVTQUdFIgogbXNnc3RyICJhbnbDpG5kOiAkZGFzaGxlc3MgJFVTQUdFIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MTkwCisjOiBnaXQtc2gtc2V0dXAuc2g6MTkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgY2hkaXIgdG8gJGNkdXAsIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICJLdW5kZSBpbnRlIGJ5dGEga2F0YWxvZyB0aWxsICRjZHVwLCB0b3Bwbml2w6VuIHDDpSBhcmJldHNrYXRhbG9nZW4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoxOTkgZ2l0LXNoLXNldHVwLnNoOjIwNgorIzogZ2l0LXNoLXNldHVwLnNoOjIwMCBnaXQtc2gtc2V0dXAuc2g6MjA3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJmYXRhbDogJHByb2dyYW1fbmFtZSBjYW5ub3QgYmUgdXNlZCB3aXRob3V0IGEgd29ya2luZyB0cmVlLiIKIG1zZ3N0ciAiw7ZkZXNkaWdldHJ0OiAkcHJvZ3JhbV9uYW1lIGthbiBpbnRlIGFudsOkbmRhcyB1dGFuIGFyYmV0c2thdGFsb2cuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjIwCisjOiBnaXQtc2gtc2V0dXAuc2g6MjIxCiBtc2dpZCAiQ2Fubm90IHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIkthbiBpbnRlIG9tYmFzZXJhOiBEdSBoYXIgb2vDtmFkZSDDpG5kcmluZ2FyLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjIyMworIzogZ2l0LXNoLXNldHVwLnNoOjIyNAogbXNnaWQgIkNhbm5vdCByZXdyaXRlIGJyYW5jaGVzOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiS2FuIGludGUgc2tyaXZhIG9tIGdyZW5hcjogRHUgaGFyIG9rw7ZhZGUgw6RuZHJpbmdhci4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjYKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjcKIG1zZ2lkICJDYW5ub3QgcHVsbCB3aXRoIHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIkthbiBpbnRlIGjDpG10YSBtZWQgb21iYXNlcmluZzogRHUgaGFyIG9rw7ZhZGUgw6RuZHJpbmdhci4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjkKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCAkYWN0aW9uOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiS2FuIGludGUgJGFjdGlvbjogRHUgaGFyIG9rw7ZhZGUgw6RuZHJpbmdhci4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyNDIKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNDMKIG1zZ2lkICJDYW5ub3QgcmViYXNlOiBZb3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAiS2FuIGludGUgb21iYXNlcmE6IERpdHQgaW5kZXggaW5uZWjDpWxsZXIgw6RuZHJpbmdhciBzb20gaW50ZSBjaGVja2F0cyBpbi4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyNDUKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNDYKIG1zZ2lkICJDYW5ub3QgcHVsbCB3aXRoIHJlYmFzZTogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogIkthbiBpbnRlIGjDpG10YSBtZWQgb21iYXNlcmluZzogRGl0dCBpbmRleCBpbm5laMOlbGxlciBvaW5jaGVja2FkZSDDpG5kcmluZ2FyLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjI0OAorIzogZ2l0LXNoLXNldHVwLnNoOjI0OQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90ICRhY3Rpb246IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICJLYW4gaW50ZSAkYWN0aW9uOiBEaXR0IGluZGV4IGlubmVow6VsbGVyIMOkbmRyaW5nYXIgc29tIGludGUgY2hlY2thdHMgaW4uIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjUyCisjOiBnaXQtc2gtc2V0dXAuc2g6MjUzCiBtc2dpZCAiQWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICJEZXNzdXRvbSBpbm5laMOlbGxlciBkaXQgaW5kZXggw6RuZHJpbmdhciBzb20gaW50ZSBoYXIgY2hlY2thdHMgaW4uIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MzcyCisjOiBnaXQtc2gtc2V0dXAuc2g6MzczCiBtc2dpZCAiWW91IG5lZWQgdG8gcnVuIHRoaXMgY29tbWFuZCBmcm9tIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlLiIKIG1zZ3N0ciAiRHUgbcOlc3RlIGvDtnJhIGtvbW1hbmRvdCBmcsOlbiBhcmJldHNrYXRhbG9nZW5zIHRvcHBuaXbDpS4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDozNzcKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzgKIG1zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIGFic29sdXRlIHBhdGggb2YgZ2l0IGRpcmVjdG9yeSIKIG1zZ3N0ciAiS3VuZGUgaW50ZSBiZXN0w6RtbWEgYWJzb2x1dCBzw7ZrdsOkZyB0aWxsIGdpdC1rYXRhbG9nZW4iCiAKICMuIFRSQU5TTEFUT1JTOiB5b3UgY2FuIGFkanVzdCB0aGlzIHRvIGFsaWduICJnaXQgYWRkIC1pIiBzdGF0dXMgbWVudQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTYKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEyCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiUxMnMgJTEycyAlcyIKIG1zZ3N0ciAiJTEycyAlMTJzICVzIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NwotbXNnaWQgInN0YWdlZCIKLW1zZ3N0ciAia8O2YWQiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTk3Ci1tc2dpZCAidW5zdGFnZWQiCi1tc2dzdHIgImVqIGvDtmFkIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI1MyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI3OAotbXNnaWQgImJpbmFyeSIKLW1zZ3N0ciAiYmluw6RyIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxNgotbXNnaWQgIm5vdGhpbmciCi1tc2dzdHIgImluZ2VudGluZyIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyOTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMTMKLW1zZ2lkICJ1bmNoYW5nZWQiCi1tc2dzdHIgIm/DpG5kcmFkIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYwOQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJhZGRlZCAlZCBwYXRoXG4iCi1tc2dpZF9wbHVyYWwgImFkZGVkICVkIHBhdGhzXG4iCi1tc2dzdHJbMF0gImxhZGUgdGlsbCAlZCBzw7ZrdsOkZ1xuIgotbXNnc3RyWzFdICJsYWRlIHRpbGwgJWQgc8O2a3bDpGdhclxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYxMgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJ1cGRhdGVkICVkIHBhdGhcbiIKLW1zZ2lkX3BsdXJhbCAidXBkYXRlZCAlZCBwYXRoc1xuIgotbXNnc3RyWzBdICJ1cHBkYXRlcmFkZSAlZCBzw7ZrdsOkZ1xuIgotbXNnc3RyWzFdICJ1cHBkYXRlcmFkZSAlZCBzw7ZrdsOkZ2FyXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjE1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgInJldmVydGVkICVkIHBhdGhcbiIKLW1zZ2lkX3BsdXJhbCAicmV2ZXJ0ZWQgJWQgcGF0aHNcbiIKLW1zZ3N0clswXSAiw6V0ZXJzdMOkbGxkZSAlZCBzw7ZrdsOkZ1xuIgotbXNnc3RyWzFdICLDpXRlcnN0w6RsbGRlICVkIHPDtmt2w6RnYXJcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjM0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgInRvdWNoZWQgJWQgcGF0aFxuIgogbXNnaWRfcGx1cmFsICJ0b3VjaGVkICVkIHBhdGhzXG4iCiBtc2dzdHJbMF0gInLDtnJkZSAlZCBzw7ZrdsOkZ1xuIgogbXNnc3RyWzFdICJyw7ZyZGUgJWQgc8O2a3bDpGdhclxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyNwotbXNnaWQgIlVwZGF0ZSIKLW1zZ3N0ciAiVXBwZGF0ZXJhIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzOQotbXNnaWQgIlJldmVydCIKLW1zZ3N0ciAiw4V0ZXJzdMOkbGwiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjYyCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIm5vdGU6ICVzIGlzIHVudHJhY2tlZCBub3cuXG4iCi1tc2dzdHIgIm9ic2VydmVyYTogJXMgc3DDpXJhcyBpbnRlIGzDpG5ncmUuXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjczCi1tc2dpZCAiQWRkIHVudHJhY2tlZCIKLW1zZ3N0ciAiTMOkZ2cgdGlsbCBvc3DDpXJhZCIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NzkKLW1zZ2lkICJObyB1bnRyYWNrZWQgZmlsZXMuXG4iCi1tc2dzdHIgIkluZ2Egb3Nww6VyYWRlIGZpbGVyLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwMzMKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA1MwogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3Igc3RhZ2luZy4iCkBAIC0yMDIyMyw3ICsyMzc4NSw3IEBACiAiT20gcGF0Y2hlbiBrYW4gYXBwbGljZXJhcyByZW50IGtvbW1lciBkZXQgcmVkaWdlcmFkZSBzdHlja2V0IGF0dFxuIgogImvDtmFzIG9tZWRlbGJhcnQuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwMzYKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA1NgogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3Igc3Rhc2hpbmcuIgpAQCAtMjAyMzEsNyArMjM3OTMsNyBAQAogIk9tIHBhdGNoZW4ga2FuIGFwcGxpY2VyYXMgcmVudCBrb21tZXIgZGV0IHJlZGlnZXJhZGUgc3R5Y2tldCBhdHRcbiIKICJsw6RnZ2FzIHRpbGwgaSBcInN0YXNoXCIgb21lZGVsYmFydC4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTAzOQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDU5CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciB1bnN0YWdpbmcuIgpAQCAtMjAyMzksNyArMjM4MDEsOCBAQAogIk9tIHBhdGNoZW4ga2FuIGFwcGxpY2VyYXMgcmVudCBrb21tZXIgZGV0IHJlZGlnZXJhZGUgc3R5Y2tldCBhdHRcbiIKICJ0YXMgYm9ydCBmcsOlbiBrw7ZuIG9tZWRlbGJhcnQuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNDIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDUxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDcxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNzcKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIGFwcGx5aW5nLiIKQEAgLTIwMjQ3LDcgKzIzODEwLDggQEAKICJPbSBwYXRjaGVuIGthbiBhcHBsaWNlcmFzIHJlbnQga29tbWVyIGRldCByZWRpZ2VyYWRlIHN0eWNrZXQgYXR0XG4iCiAibWFya2VyYXMgZsO2ciBhcHBsaWNlcmluZyBvbWVkZWxiYXJ0LiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDQ1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA0OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDY1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA2OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDc0CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBkaXNjYXJkaW5nLiIKQEAgLTIwMjU1LDE2ICsyMzgxOSwxMiBAQAogIk9tIHBhdGNoZW4ga2FuIGFwcGxpY2VyYXMgcmVudCBrb21tZXIgZGV0IHJlZGlnZXJhZGUgc3R5Y2tldCBhdHRcbiIKICJtYXJrZXJhcyBmw7ZyIGthc3RhIG9tZWRlbGJhcnQuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwODUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExMQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3Igd3JpdGluZzogJXMiCiBtc2dzdHIgIm1pc3NseWNrYWRlcyDDtnBwbmEgc3R5Y2tlcmVkaWdlcmluZ3NmaWwgZsO2ciBza3Jpdm5pbmc6ICVzIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwODYKLW1zZ2lkICJNYW51YWwgaHVuayBlZGl0IG1vZGUgLS0gc2VlIGJvdHRvbSBmb3IgYSBxdWljayBndWlkZS5cbiIKLW1zZ3N0ciAiTWFudWVsbHQgc3R5Y2tlcmVkaWdlcmluZ3Nsw6RnZSAtLSBzZSBuZWRlcnN0IGbDtnIgc25hYmJndWlkZS5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDkyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogIi0tLVxuIgpAQCAtMjAyNzcsMzYgKzIzODM3LDEyIEBACiAiVGEgYm9ydCBcIiVzXCIgcmFkZXIgZ2Vub20gYXR0IHJhZGVyYSBkZW0uXG4iCiAiUmFkZXIgc29tIGLDtnJqYXIgbWVkICVzIGtvbW1lciBhdHQgdGFzIGJvcnQuXG4iCiAKLSMuIFRSQU5TTEFUT1JTOiAnaXQnIHJlZmVycyB0byB0aGUgcGF0Y2ggbWVudGlvbmVkIGluIHRoZSBwcmV2aW91cyBtZXNzYWdlcy4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTEwMAotbXNnaWQgIiIKLSJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSBnaXZlbiBhbiBvcHBvcnR1bml0eSB0b1xuIgotImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlIHJlbW92ZWQsIHRoZW4gdGhlIGVkaXQgaXNcbiIKLSJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIKLW1zZ3N0ciAiIgotIk9tIHBhdGNoZW4gaW50ZSBrYW4gYXBwbGljZXJhcyByZW50IGtvbW1lciBkdSBmw6UgZW4gbcO2amxpZ2hldCBhdHRcbiIKLSJyZWRpZ2VyYSBkZW4gaWdlbi4gT20gYWxsYSByYWRlciBpIGV0dCBzdHlja2UgdGFzIGJvcnQgYXZicnl0c1xuIgotInJlZGlnZXJpbmdlbiBvY2ggc3R5Y2tldCBsw6RtbmFzIG9mw7Zyw6RuZHJhdC5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTE0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExNDAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gaHVuayBlZGl0IGZpbGUgZm9yIHJlYWRpbmc6ICVzIgogbXNnc3RyICJtaXNzbHlja2FkZXMgw7ZwcG5hIHN0eWNrZXNyZWRpZ2VyaW5nc2ZpbCBmw7ZyIGzDpHNuaW5nOiAlcyIKIAotIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KLSMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dAotIy4gYXQgdGhpcyBwb2ludC4KLSMuIENvbnNpZGVyIHRyYW5zbGF0aW5nIChzYXlpbmcgIm5vIiBkaXNjYXJkcyEpIGFzCi0jLiAoc2F5aW5nICJuIiBmb3IgIm5vIiBkaXNjYXJkcyEpIGlmIHRoZSB0cmFuc2xhdGlvbgotIy4gb2YgdGhlIHdvcmQgIm5vIiBkb2VzIG5vdCBzdGFydCB3aXRoIG4uCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMTMKLW1zZ2lkICIiCi0iWW91ciBlZGl0ZWQgaHVuayBkb2VzIG5vdCBhcHBseS4gRWRpdCBhZ2FpbiAoc2F5aW5nIFwibm9cIiBkaXNjYXJkcyEpIFt5L25dPyAiCi1tc2dzdHIgIiIKLSJEaXR0IHJlZGlnZXJhZGUgc3R5Y2tlIGthbiBpbnRlIGFwcGxpY2VyYXMuIFJlZGlnZXJhIGlnZW4gKFwibmVqXCIga2FzdGFyISkgIgotIlt5L25dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIyMgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjQ4CiBtc2dpZCAiIgogInkgLSBzdGFnZSB0aGlzIGh1bmtcbiIKICJuIC0gZG8gbm90IHN0YWdlIHRoaXMgaHVua1xuIgpAQCAtMjAzMjAsNyArMjM4NTYsNyBAQAogImEgLSBrw7ZhIHN0eWNrZXQgb2NoIGFsbGEgZsO2bGphbmRlIGkgZmlsZW5cbiIKICJkIC0ga8O2YSBpbnRlIHN0eWNrZXQgZWxsZXIgbsOlZ290IGF2IGRlIGbDtmxqYW5kZSBpIGZpbGVuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMjgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI1NAogbXNnaWQgIiIKICJ5IC0gc3Rhc2ggdGhpcyBodW5rXG4iCiAibiAtIGRvIG5vdCBzdGFzaCB0aGlzIGh1bmtcbiIKQEAgLTIwMzM0LDcgKzIzODcwLDcgQEAKICJhIC0gXCJzdGFzaFwiOmEgc3R5Y2tldCBvY2ggYWxsYSBmw7ZsamFuZGUgaSBmaWxlblxuIgogImQgLSBcInN0YXNoXCI6YSBpbnRlIHN0eWNrZXQgZWxsZXIgbsOlZ290IGF2IGRlIGbDtmxqYW5kZSBpIGZpbGVuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMzQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI2MAogbXNnaWQgIiIKICJ5IC0gdW5zdGFnZSB0aGlzIGh1bmtcbiIKICJuIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rXG4iCkBAIC0yMDM0OCw3ICsyMzg4NCw3IEBACiAiYSAtIHRhIGJvcnQgc3R5Y2tldCBvY2ggYWxsYSBmw7ZsamFuZGUgaSBmaWxlbiBmcsOlbiBrw7ZuXG4iCiAiZCAtIHRhIGludGUgYm9ydCBzdHlja2V0IGVsbGVyIG7DpWdvdCBhdiBkZSBmw7ZsamFuZGUgaSBmaWxlbiBmcsOlbiBrw7ZuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNDAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI2NgogbXNnaWQgIiIKICJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4XG4iCiAibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKQEAgLTIwMzYyLDcgKzIzODk4LDcgQEAKICJhIC0gYXBwbGljZXJhIHN0eWNrZXQgb2NoIGFsbGEgZsO2bGphbmRlIGkgZmlsZW5cbiIKICJkIC0gYXBwbGljZXJhIGludGUgc3R5Y2tldCBlbGxlciBuw6Vnb3QgYXYgZGUgZsO2bGphbmRlIGkgZmlsZW4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0NgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5MAogbXNnaWQgIiIKICJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgogIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgpAQCAtMjAzNzYsNyArMjM5MTIsNyBAQAogImEgLSBmw7Zya2FzdGEgc3R5Y2tldCBvY2ggYWxsYSBmw7ZsamFuZGUgaSBmaWxlblxuIgogImQgLSBmw7Zya2FzdGEgaW50ZSBzdHlja2V0IGVsbGVyIG7DpWdvdCBhdiBkZSBmw7ZsamFuZGUgaSBmaWxlbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjUyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNzgKIG1zZ2lkICIiCiAieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCiAibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgpAQCAtMjAzOTAsNyArMjM5MjYsNyBAQAogImEgLSBmw7Zya2FzdGEgc3R5Y2tldCBvY2ggYWxsYSBmw7ZsamFuZGUgaSBmaWxlblxuIgogImQgLSBmw7Zya2FzdGEgaW50ZSBzdHlja2V0IGVsbGVyIG7DpWdvdCBhdiBkZSBmw7ZsamFuZGUgaSBmaWxlbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjU4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyODQKIG1zZ2lkICIiCiAieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKICJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKQEAgLTIwNDA0LDcgKzIzOTQwLDIxIEBACiAiYSAtIGFwcGxpY2VyYSBzdHlja2V0IG9jaCBhbGxhIGbDtmxqYW5kZSBpIGZpbGVuXG4iCiAiZCAtIGFwcGxpY2VyYSBpbnRlIHN0eWNrZXQgZWxsZXIgbsOlZ290IGF2IGRlIGbDtmxqYW5kZSBpIGZpbGVuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNzMKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5NgorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSBhcHBsaWNlcmEgc3R5Y2tldCBww6UgYXJiZXRza2F0YWxvZ2VuXG4iCisibiAtIGFwcGxpY2VyYSBpbnRlIHN0eWNrZXQgcMOlIGFyYmV0c2thdGFsb2dlblxuIgorInEgLSBhdnNsdXRhOyBhcHBsaWNlcmEgaW50ZSBzdHlja2V0IGVsbGVyIG7DpWdvdCBhdiBkZSBmw7ZsamFuZGVcbiIKKyJhIC0gYXBwbGljZXJhIHN0eWNrZXQgb2NoIGFsbGEgZsO2bGphbmRlIGkgZmlsZW5cbiIKKyJkIC0gYXBwbGljZXJhIGludGUgc3R5Y2tldCBlbGxlciBuw6Vnb3QgYXYgZGUgZsO2bGphbmRlIGkgZmlsZW4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMxMQogbXNnaWQgIiIKICJnIC0gc2VsZWN0IGEgaHVuayB0byBnbyB0b1xuIgogIi8gLSBzZWFyY2ggZm9yIGEgaHVuayBtYXRjaGluZyB0aGUgZ2l2ZW4gcmVnZXhcbiIKQEAgLTIwNDI2LDIxMSArMjM5NzYsODUgQEAKICJlIC0gcmVkaWdlcmEgYWt0dWVsbHQgc3R5Y2tlIG1hbnVlbGx0XG4iCiAiPyAtIHZpc2EgaGrDpGxwXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQyCiBtc2dpZCAiVGhlIHNlbGVjdGVkIGh1bmtzIGRvIG5vdCBhcHBseSB0byB0aGUgaW5kZXghXG4iCiBtc2dzdHIgIk1hcmtlcmFkZSBzdHlja2VuIGthbiBpbnRlIGFwcGxpY2VyYXMgcMOlIGluZGV4ZXQhXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwNQotbXNnaWQgIkFwcGx5IHRoZW0gdG8gdGhlIHdvcmt0cmVlIGFueXdheT8gIgotbXNnc3RyICJBcHBsaWNlcmEgZGVtIHDDpSBhcmJldHNrYXRhbG9nZW4gdHJvdHMgZGV0PyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwOAotbXNnaWQgIk5vdGhpbmcgd2FzIGFwcGxpZWQuXG4iCi1tc2dzdHIgIkluZ2VudGluZyBhcHBsaWNlcmFkZXMuXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMxOQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzU3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIHVubWVyZ2VkOiAlc1xuIgogbXNnc3RyICJpZ25vcmVyYXIgZWogc2FtbWFuc2xhZ2VuOiAlc1xuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMjgKLW1zZ2lkICJPbmx5IGJpbmFyeSBmaWxlcyBjaGFuZ2VkLlxuIgotbXNnc3RyICJFbmRhc3QgYmluw6RyYSBmaWxlciDDpG5kcmFkZS5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzMwCi1tc2dpZCAiTm8gY2hhbmdlcy5cbiIKLW1zZ3N0ciAiSW5nYSDDpG5kcmluZ2FyLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMzgKLW1zZ2lkICJQYXRjaCB1cGRhdGUiCi1tc2dzdHIgIlVwcGRhdGVyYSBwYXRjaCIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjgKICMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkvDtmEgw6RuZHJhdCBsw6RnZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiQXBwbGljZXJhIMOkbmRyYXQgbMOkZ2UgcMOlIGFyYmV0c2thdGFsb2dlbiBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjkKICMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkvDtmEgYm9ydHRhZ25pbmcgW3ksbixxLGEsZCVzLD9dPyAiCittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkFwcGxpY2VyYSBib3J0dGFnbmluZyBww6UgYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ3MAogIywgcGVybC1mb3JtYXQKLW1zZ2lkICJTdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkvDtmEgc3R5Y2tldCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkFwcGxpY2VyYSBzdHlja2V0IHDDpSBhcmJldHNrYXRhbG9nZW4gW3ksbixxLGEsZCVzLD9dPyAiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5NQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJTdGFzaCBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiU3Rhc2g6YSDDpG5kcmF0IGzDpGdlIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTYKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3Rhc2ggZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIlN0YXNoOmEgYm9ydHRhZ25pbmcgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5NwotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJTdGFzaCB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIlN0YXNoOmEgc3R5Y2tldCBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAwCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlVuc3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIlRhIGJvcnQgw6RuZHJhdCBsw6RnZSBmcsOlbiBrw7ZuIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDEKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiVW5zdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiVGEgYm9ydCBib3J0dGFnbmluZyBmcsOlbiBrw7ZuIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiVW5zdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIlRhIGJvcnQgc3R5Y2tldCBmcsOlbiBrw7ZuIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDUKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkFwcGxpY2VyYSDDpG5kcmF0IGzDpGdlIHDDpSBpbmRleGV0IFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDYKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkFwcGxpY2VyYSBib3J0dGFnbmluZyBww6UgaW5kZXhldCBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDA3Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiQXBwbGljZXJhIHN0eWNrZXQgcMOlIGluZGV4ZXQgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxMAotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkthc3RhIMOkbmRyYXQgbMOkZ2UgZnLDpW4gYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTEKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCBkZWxldGlvbiBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJLYXN0YSBib3J0dGFnbmluZyBmcsOlbiBhcmJldHNrYXRhbG9nZW4gW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxMgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJLYXN0YSBzdHlja2V0IGZyw6VuIGFyYmV0c2thdGFsb2dlbiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkthc3RhIMOkbmRyYXQgbMOkZ2UgZnLDpW4gaW5kZXhldCBvY2ggYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTYKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCBkZWxldGlvbiBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiS2FzdGEgYm9ydHRhZ25pbmcgZnLDpW4gaW5kZXhldCBvY2ggYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTcKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkthc3RhIHN0eWNrZXQgZnLDpW4gaW5kZXhldCBvY2ggYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjAKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJBcHBsaWNlcmEgw6RuZHJhdCBsw6RnZSBww6UgaW5kZXhldCBvY2ggYXJiZXRza2F0YWxvZ2VuIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjEKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJBcHBsaWNlcmEgYm9ydHRhZ25pbmcgcMOlIGluZGV4ZXQgb2NoIGFyYmV0c2thdGFsb2dlbiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDIyCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkFwcGxpY2VyYSBzdHlja2V0IHDDpSBpbmRleGV0IG9jaCBhcmJldHNrYXRhbG9nZW4gW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTUyMgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTcwCiBtc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gZ290b1xuIgogbXNnc3RyICJJbmdhIGFuZHJhIHN0eWNrZW4gYXR0IGfDpSB0aWxsXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTUyOQotbXNnaWQgImdvIHRvIHdoaWNoIGh1bmsgKDxyZXQ+IHRvIHNlZSBtb3JlKT8gIgotbXNnc3RyICJnw6UgdGlsbCB2aWxrZXQgc3R5Y2tlICg8cmV0PiBmw7ZyIGF0dCBzZSBmbGVyKT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MzEKLW1zZ2lkICJnbyB0byB3aGljaCBodW5rPyAiCi1tc2dzdHIgImfDpSB0aWxsIHZpbGtldCBzdHlja2U/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1ODgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBudW1iZXI6ICclcydcbiIKIG1zZ3N0ciAiT2dpbHRpZ3Qgc2lmZmVydsOkcmRlOiBcIiVzXCJcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQ1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1OTMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU29ycnksIG9ubHkgJWQgaHVuayBhdmFpbGFibGUuXG4iCiBtc2dpZF9wbHVyYWwgIlNvcnJ5LCBvbmx5ICVkIGh1bmtzIGF2YWlsYWJsZS5cbiIKIG1zZ3N0clswXSAiQmVrbGFnYXIsIGRldCBmaW5ucyBiYXJhICVkIHN0eWNrZS5cbiIKIG1zZ3N0clsxXSAiQmVrbGFnYXIsIGRldCBmaW5ucyBiYXJhICVkIHN0eWNrZW4uXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjE5CiBtc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gc2VhcmNoXG4iCiBtc2dzdHIgIkluZ2EgYW5kcmEgc3R5Y2tlbiBhdHQgc8O2a2EgZWZ0ZXJcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTc1Ci1tc2dpZCAic2VhcmNoIGZvciByZWdleD8gIgotbXNnc3RyICJzw7ZrIGVmdGVyIHJlZ3VsasOkcnQgdXR0cnljaz8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1ODgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYzNgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJNYWxmb3JtZWQgc2VhcmNoIHJlZ2V4cCAlczogJXNcbiIKIG1zZ3N0ciAiRmVsYWt0aWd0IGZvcm1hdCBww6UgcmVndWxqw6RydCBzw7ZrdXR0cnljayAlczogJXNcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTk4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NDYKIG1zZ2lkICJObyBodW5rIG1hdGNoZXMgdGhlIGdpdmVuIHBhdHRlcm5cbiIKIG1zZ3N0ciAiSW5nYSBzdHlja2VuIG1vdHN2YXJhciBnaXZldCBtw7Zuc3RlclxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MTAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjMyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjgwCiBtc2dpZCAiTm8gcHJldmlvdXMgaHVua1xuIgogbXNnc3RyICJJbmdldCBmw7ZyZWfDpWVuZGUgc3R5Y2tlXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MzgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY2NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2ODYKIG1zZ2lkICJObyBuZXh0IGh1bmtcbiIKIG1zZ3N0ciAiSW5nZXQgZsO2bGphbmRlIHN0eWNrZVxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NDQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY5MgogbXNnaWQgIlNvcnJ5LCBjYW5ub3Qgc3BsaXQgdGhpcyBodW5rXG4iCiBtc2dzdHIgIkJla2xhZ2FyLCBrYW4gaW50ZSBkZWxhIHN0eWNrZXRcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjUwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2OTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU3BsaXQgaW50byAlZCBodW5rLlxuIgogbXNnaWRfcGx1cmFsICJTcGxpdCBpbnRvICVkIGh1bmtzLlxuIgogbXNnc3RyWzBdICJEZWxhIGkgJWQgc3R5Y2tlLlxuIgogbXNnc3RyWzFdICJEZWxhIGkgJWQgc3R5Y2tlbi5cbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjYwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3MDgKIG1zZ2lkICJTb3JyeSwgY2Fubm90IGVkaXQgdGhpcyBodW5rXG4iCiBtc2dzdHIgIkJla2xhZ2FyLCBrYW4gaW50ZSByZWRpZ2VyYSBzdHlja2V0XG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcwNgotbXNnaWQgIlJldmlldyBkaWZmIgotbXNnc3RyICJHcmFuc2thIGRpZmYiCi0KICMuIFRSQU5TTEFUT1JTOiBwbGVhc2UgZG8gbm90IHRyYW5zbGF0ZSB0aGUgY29tbWFuZCBuYW1lcwogIy4gJ3N0YXR1cycsICd1cGRhdGUnLCAncmV2ZXJ0JywgZXRjLgotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzI1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NzMKIG1zZ2lkICIiCiAic3RhdHVzICAgICAgICAtIHNob3cgcGF0aHMgd2l0aCBjaGFuZ2VzXG4iCiAidXBkYXRlICAgICAgICAtIGFkZCB3b3JraW5nIHRyZWUgc3RhdGUgdG8gdGhlIHN0YWdlZCBzZXQgb2YgY2hhbmdlc1xuIgpAQCAtMjA2NDcsMTggKzI0MDcxLDE5IEBACiAiZGlmZiAgICAgICAgICAtIHZpc2EgZGlmZiBtZWxsYW4gSEVBRCBvY2ggaW5kZXhcbiIKICJhZGQgdW50cmFja2VkIC0gbMOkZ2cgdGlsbCBpbm5laMOlbGwgaSBvc3DDpXJhZGUgZmlsZXIgdGlsbCBrw7ZhZGUgw6RuZHJpbmdhclxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NDIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzQ3Ci0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NTAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzU3Ci0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzY3CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzk1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODA1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MDggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODE1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODI1CiBtc2dpZCAibWlzc2luZyAtLSIKIG1zZ3N0ciAic2FrbmFkIC0tIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjMKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyMQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIC0tcGF0Y2ggbW9kZTogJXMiCiBtc2dzdHIgIm9rw6RudCBsw6RnZSBmw7ZyIC0tcGF0Y2g6ICVzIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzc1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MjcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODMzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgImludmFsaWQgYXJndW1lbnQgJXMsIGV4cGVjdGluZyAtLSIKIG1zZ3N0ciAiZmVsYWt0aWd0IGFyZ3VtZW50ICVzLCBmw7ZydsOkbnRhciAtLSIKQEAgLTIwNjcxLDMxICsyNDA5NiwzMSBAQAogbXNnaWQgImxvY2FsIHRpbWUgb2Zmc2V0IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAyNCBob3Vyc1xuIgogbXNnc3RyICJsb2thbCB0aWRzem9uZsO2cnNranV0bmluZyBzdMO2cnJlIMOkbiBlbGxlciBsaWthIG1lZCAyNCB0aW1tYXJcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoyMTkgZ2l0LXNlbmQtZW1haWwucGVybDoyMjUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjIzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MjI5CiBtc2dpZCAidGhlIGVkaXRvciBleGl0ZWQgdW5jbGVhbmx5LCBhYm9ydGluZyBldmVyeXRoaW5nIgogbXNnc3RyICJ0ZXh0cmVkaWdlcmluZ3Nwcm9ncmFtbWV0IGF2c2x1dGFkZXMgbWVkIGZlbCwgYXZicnl0ZXIgYWxsdGluZyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzEwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGNvbnRhaW5zIGFuIGludGVybWVkaWF0ZSB2ZXJzaW9uIG9mIHRoZSBlbWFpbCB5b3Ugd2VyZSBjb21wb3NpbmcuXG4iCiBtc2dzdHIgIiIKICJcIiVzXCIgaW5uZWjDpWxsZXIgZW4gbWVsbGFubGlnZ2FuZGUgdmVyc2lvbiBhdiBlLXBvc3RicmV2ZXQgZHUgc2tyZXYuXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzA3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMxNQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICInJXMuZmluYWwnIGNvbnRhaW5zIHRoZSBjb21wb3NlZCBlbWFpbC5cbiIKIG1zZ3N0ciAiXCIlcy5maW5hbFwiIGlubmVow6VsbGVyIGRldCBza3Jpdm5hIGJyZXZldC5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMjYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDA4CiBtc2dpZCAiLS1kdW1wLWFsaWFzZXMgaW5jb21wYXRpYmxlIHdpdGggb3RoZXIgb3B0aW9uc1xuIgogbXNnc3RyICItLWR1bXAtYWxpYXMgw6RyIGlua29tcGF0aWJlbHQgbWVkIGFuZHJhIGZsYWdnb3JcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozOTUgZ2l0LXNlbmQtZW1haWwucGVybDo2NTAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDgxIGdpdC1zZW5kLWVtYWlsLnBlcmw6NjgzCiBtc2dpZCAiQ2Fubm90IHJ1biBnaXQgZm9ybWF0LXBhdGNoIGZyb20gb3V0c2lkZSBhIHJlcG9zaXRvcnlcbiIKIG1zZ3N0ciAiS2FuIGludGUga8O2cmEgZ2l0IGZvcm1hdC1wYXRjaCBmcsOlbiB1dGFuZsO2ciBhcmtpdmV0XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Mzk4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ4NAogbXNnaWQgIiIKICJgYmF0Y2gtc2l6ZWAgYW5kIGByZWxvZ2luYCBtdXN0IGJlIHNwZWNpZmllZCB0b2dldGhlciAodmlhIGNvbW1hbmQtbGluZSBvciAiCiAiY29uZmlndXJhdGlvbiBvcHRpb24pXG4iCkBAIC0yMDcwMywzNyArMjQxMjgsMzcgQEAKICJcImJhdGNoLXNpemVcIiBvY2ggXCJyZWxvZ2luXCIgbcOlc3RlIGFuZ2VzIHRpbGxzYW1tYW5zICh2aWEga29tbWFuZG9yYWQgIgogImVsbGVyIGtvbmZpZ3VyYXRpb25zZmxhZ2dhKVxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ2OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo0OTcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiVW5rbm93biAtLXN1cHByZXNzLWNjIGZpZWxkOiAnJXMnXG4iCiBtc2dzdHIgIk9rw6RudCBmw6RsdCBpIC0tc3VwcHJlc3MtY2M6IFwiJXNcIlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ5NworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiVW5rbm93biAtLWNvbmZpcm0gc2V0dGluZzogJyVzJ1xuIgogbXNnc3RyICJPa8OkbmQgaW5zdMOkbGxuaW5nIGkgLS1jb25maXJtOiBcIiVzXCJcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTU2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IHNlbmRtYWlsIGFsaWFzIHdpdGggcXVvdGVzIGlzIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCiBtc2dzdHIgInZhcm5pbmc6IHNlbmRtYWlsLWFsaWFzIG1lZCBjaXRhdGlvbnN0ZWNrZW4gc3TDtmRzIGludGUuICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTI3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU1OAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ3YXJuaW5nOiBgOmluY2x1ZGU6YCBub3Qgc3VwcG9ydGVkOiAlc1xuIgogbXNnc3RyICJ2YXJuaW5nOiBcIjppbmNsdWRlOlwiIHN0w7ZkcyBpbnRlOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyOQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NjAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogYC9maWxlYCBvciBgfHBpcGVgIHJlZGlyZWN0aW9uIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCiBtc2dzdHIgInZhcm5pbmc6IG9tZGlyaWdlcmluZyB0aWwgXCIvZmlsXCIgZWxsZXIgXCJ8csO2clwiIHN0w7ZkcyBpbnRlOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUzNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NjUKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogc2VuZG1haWwgbGluZSBpcyBub3QgcmVjb2duaXplZDogJXNcbiIKIG1zZ3N0ciAidmFybmluZzogc2VuZG1haWwtcmFkZW4ga8Okbm5zIGludGUgaWdlbjogJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2MTYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjQ5CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICJGaWxlICclcycgZXhpc3RzIGJ1dCBpdCBjb3VsZCBhbHNvIGJlIHRoZSByYW5nZSBvZiBjb21taXRzXG4iCkBAIC0yMDc0OCwxMiArMjQxNzMsMTIgQEAKICIgICAgKiBTw6RnYSBcIi4vJXNcIiBvbSBkdSBtZW5hciBlbiBmaWw7IGVsbGVyXG4iCiAiICAgICogQW5nZSBmbGFnZ2FuIC0tZm9ybWF0LXBhdGNoIG9tIGR1IG1lbmFyIGV0dCBpbnRlcnZhbGwuXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjM3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY3MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbmRpciAlczogJXMiCiBtc2dzdHIgIk1pc3NseWNrYWRlcyB1dGbDtnJhIG9wZW5kaXIgJXM6ICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY2MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo2OTQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogImZhdGFsOiAlczogJXNcbiIKQEAgLTIwNzYyLDcgKzI0MTg3LDcgQEAKICLDtmRlc2RpZ2VydDogJXM6ICVzXG4iCiAidmFybmluZzogaW5nYSBwYXRjaGFyIGhhciBzw6RudHNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NzIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzA1CiBtc2dpZCAiIgogIlxuIgogIk5vIHBhdGNoIGZpbGVzIHNwZWNpZmllZCFcbiIKQEAgLTIwNzcyLDE3ICsyNDE5NywxNyBAQAogIkluZ2EgcGF0Y2hmaWxlciBhbmdhdnMhXG4iCiAiXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Njg1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcxOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJObyBzdWJqZWN0IGxpbmUgaW4gJXM/IgogbXNnc3RyICJJbmdlbiDDpHJlbmRlcmFkIGkgJXM/IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY5NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MjgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW4gZm9yIHdyaXRpbmcgJXM6ICVzIgogbXNnc3RyICJLdW5kZSBpbnRlIMO2cHBuYSBmw7ZyIHNrcml2bmluZyAlczogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzA2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjczOQogbXNnaWQgIiIKICJMaW5lcyBiZWdpbm5pbmcgaW4gXCJHSVQ6XCIgd2lsbCBiZSByZW1vdmVkLlxuIgogIkNvbnNpZGVyIGluY2x1ZGluZyBhbiBvdmVyYWxsIGRpZmZzdGF0IG9yIHRhYmxlIG9mIGNvbnRlbnRzXG4iCkBAIC0yMDc5NiwzOCArMjQyMjEsMzggQEAKICJcbiIKICJSZW5zYSBicmV2a3JvcHBlbiBvbSBkdSBpbnRlIHZpbGwgc8OkbmRhIG7DpWdvbiBzYW1tYW5mYXR0bmluZy5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MzAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzYzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBvcGVuICVzOiAlcyIKIG1zZ3N0ciAiTWlzc2x5Y2thZGVzIMO2cHBuYSAlczogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzQ3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc4MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiAlcy5maW5hbDogJXMiCiBtc2dzdHIgIk1pc3NseWNrYWRlcyDDtnBwbmEgJXMuZmluYWw6ICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc5MAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo4MjMKIG1zZ2lkICJTdW1tYXJ5IGVtYWlsIGlzIGVtcHR5LCBza2lwcGluZyBpdFxuIgogbXNnc3RyICJTYW1tYW5mYXR0YW5kZSBicmV2IHRvbXQsIGhvcHBhciDDtnZlclxuIgogCiAjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGtlZXAgW3kvTl0gYXMgaXMuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjgyNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo4NTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHVzZSA8JXM+IFt5L05dPyAiCiBtc2dzdHIgIsOEciBkdSBzw6RrZXIgcMOlIGF0dCBkdSB2aWxsIGFudsOkbmRhIDwlcz4gW1k9amEsIE49bmVqXT8gIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjg4MAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MTMKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyBmaWxlcyBhcmUgOGJpdCwgYnV0IGRvIG5vdCBkZWNsYXJlIGEgQ29udGVudC1UcmFuc2Zlci0iCiAiRW5jb2RpbmcuXG4iCiBtc2dzdHIgIiIKICJGw7ZsamFuZGUgZmlsZXIgw6RyIMOldHRhYml0YXJzLCBtZW4gYW5nZXIgaW50ZSBlbiBDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjg4NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MTgKIG1zZ2lkICJXaGljaCA4Yml0IGVuY29kaW5nIHNob3VsZCBJIGRlY2xhcmUgW1VURi04XT8gIgotbXNnc3RyICJWaWxrZW4gw6V0dGFiaXRhcnN0ZWNrZW5rb2RuaW5nIHNrYWxsIGphZyBhbmdlIFtVVEYtOF0/ICIKK21zZ3N0ciAiVmlsa2VuIMOldHRhYml0YXJzdGVja2Vua29kbmluZyBza2EgamFnIGFuZ2UgW1VURi04XT8gIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjg5MworIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MjYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogIlJlZnVzaW5nIHRvIHNlbmQgYmVjYXVzZSB0aGUgcGF0Y2hcbiIKQEAgLTIwODQwLDIxICsyNDI2NSwyMSBAQAogImhhciBtYWxsw6RyZW5kZXQgXCIqKiogU1VCSkVDVCBIRVJFICoqKlwiLiBBbnbDpG5kIC0tZm9yY2Ugb20gZHUgdmVya2xpZ2VuICIKICJ2aWxsIHPDpG5kYS5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MTIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTQ1CiBtc2dpZCAiVG8gd2hvbSBzaG91bGQgdGhlIGVtYWlscyBiZSBzZW50IChpZiBhbnlvbmUpPyIKLW1zZ3N0ciAiVGlsbCB2ZW0gc2thbGwgYnJldmVuIHPDpG5kYXMgKG9tIG7DpWdvbik/IgorbXNnc3RyICJUaWxsIHZlbSBza2EgYnJldmVuIHPDpG5kYXMgKG9tIG7DpWdvbik/IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkzMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NjMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZmF0YWw6IGFsaWFzICclcycgZXhwYW5kcyB0byBpdHNlbGZcbiIKIG1zZ3N0ciAiw7ZkZXNkaWdlcnQ6IGFsaWFzZXQgXCIlc1wiIGV4cGFuZGVyYXIgdGlsbCBzaWcgc2rDpGx2XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTQyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjk3NQogbXNnaWQgIk1lc3NhZ2UtSUQgdG8gYmUgdXNlZCBhcyBJbi1SZXBseS1UbyBmb3IgdGhlIGZpcnN0IGVtYWlsIChpZiBhbnkpPyAiCiBtc2dzdHIgIiIKICJNZXNzYWdlLUlEIGF0dCBhbnbDpG5kYSBzb20gSW4tUmVwbHktVG8gZsO2ciBkZXQgZsO2cnN0YSBicmV2ZXQgKG9tIG7DpWdvdCk/ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDAwIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAwOAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDMzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTA0MQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJlcnJvcjogdW5hYmxlIHRvIGV4dHJhY3QgYSB2YWxpZCBhZGRyZXNzIGZyb206ICVzXG4iCiBtc2dzdHIgImZlbDoga3VuZGUgaW50ZSBmw6UgZnJhbSBlbiBnaWx0aWcgYWRyZXNzIGZyw6VuOiAlc1xuIgpAQCAtMjA4NjIsMTYgKzI0Mjg3LDE2IEBACiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3FdIFtkXSBbZV0gaW4geW91cgogIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAogIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAxMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDQ1CiBtc2dpZCAiV2hhdCB0byBkbyB3aXRoIHRoaXMgYWRkcmVzcz8gKFtxXXVpdHxbZF1yb3B8W2VdZGl0KTogIgogbXNnc3RyICJWYWQgdmlsbCBkdSBnw7ZyYSBtZWQgYWRyZXNzZW4/IChxPWF2c2x1dGEsIGQ9a2FzdGEsIGU9cmVkaWdlcmEpOiAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTMyOQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMzYyCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkNBIHBhdGggXCIlc1wiIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJDQS1zw7ZrdsOkZ2VuIFwiJXNcIiBmaW5ucyBpbnRlIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0MTIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ0NQogbXNnaWQgIiIKICIgICAgVGhlIENjIGxpc3QgYWJvdmUgaGFzIGJlZW4gZXhwYW5kZWQgYnkgYWRkaXRpb25hbFxuIgogIiAgICBhZGRyZXNzZXMgZm91bmQgaW4gdGhlIHBhdGNoIGNvbW1pdCBtZXNzYWdlLiBCeSBkZWZhdWx0XG4iCkBAIC0yMDg5OCwxMjQgKzI0MzIzLDEyNCBAQAogIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFt5XSBbbl0gW2VdIFtxXSBbYV0gaW4geW91cgogIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAogIy4gYXQgdGhpcyBwb2ludC4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQyNworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDYwCiBtc2dpZCAiU2VuZCB0aGlzIGVtYWlsPyAoW3ldZXN8W25db3xbZV1kaXR8W3FddWl0fFthXWxsKTogIgogbXNnc3RyICJTw6RuZGEgYnJldmV0PyAoeT1qYSwgbj1uZWosIGU9cmVkaWdlcmEsIHE9YXZzbHV0YSwgYT1hbGxhKTogIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0MzAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ2MwogbXNnaWQgIlNlbmQgdGhpcyBlbWFpbCByZXBseSByZXF1aXJlZCIKIG1zZ3N0ciAiU3ZhciBrcsOkdnMgcMOlIGZyw6VnYW4gXCJTw6RuZGEgYnJldmV0P1wiIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NTgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ5MQogbXNnaWQgIlRoZSByZXF1aXJlZCBTTVRQIHNlcnZlciBpcyBub3QgcHJvcGVybHkgZGVmaW5lZC4iCiBtc2dzdHIgIk7DtmR2w6RuZGlnIFNNVFAtc2VydmVyIGhhciBpbnRlIGFuZ2l2aXRzIGtvcnJla3QuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MDUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUzOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBTVEFSVFRMUyEgJXMiCiBtc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBpbnRlIFNNQVJUVExTISAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTEwIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUxNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTVEFSVFRMUyBmYWlsZWQhICVzIgogbXNnc3RyICJTVEFSVFRMUyBtaXNzbHlja2FkZXMhICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MjMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU1NgogbXNnaWQgIlVuYWJsZSB0byBpbml0aWFsaXplIFNNVFAgcHJvcGVybHkuIENoZWNrIGNvbmZpZyBhbmQgdXNlIC0tc210cC1kZWJ1Zy4iCiBtc2dzdHIgIiIKICJLYW4gaW50ZSBpbml0aWVyYSBTTVRQIGtvcnJla3QuIEtvbnRyb2xsZXJhIGluc3TDpGxsbmluZ2FybmEgb2NoIGFudsOkbmQgLS0iCiAic210cC1kZWJ1Zy4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBzZW5kICVzXG4iCiBtc2dzdHIgIk1pc3NseWNrYWRlcyBzw6RuZGEgJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRHJ5LVNlbnQgJXNcbiIKIG1zZ3N0ciAiVGVzdC1Tw6RuZGUgJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU2VudCAlc1xuIgogbXNnc3RyICJTw6RuZGUgJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzkKIG1zZ2lkICJEcnktT0suIExvZyBzYXlzOlxuIgogbXNnc3RyICJUZXN0LU9LLiBMb2dnZW4gc8OkZ2VyOlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3OQogbXNnaWQgIk9LLiBMb2cgc2F5czpcbiIKIG1zZ3N0ciAiT0suIExvZ2dlbiBzw6RnZXI6XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU1OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTkxCiBtc2dpZCAiUmVzdWx0OiAiCiBtc2dzdHIgIlJlc3VsdGF0OiAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU2MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTk0CiBtc2dpZCAiUmVzdWx0OiBPS1xuIgogbXNnc3RyICJSZXN1bHRhdDogT0tcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MTIKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgb3BlbiBmaWxlICVzIgogbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgZmlsZW4gJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTYyNiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NDYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY1OSBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NzkKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKG1ib3gpIEFkZGluZyBjYzogJXMgZnJvbSBsaW5lICclcydcbiIKIG1zZ3N0ciAiKG1ib3gpIEzDpGdnZXIgdGlsbCBjYzogJXMgZnLDpW4gcmFkZW4gXCIlc1wiXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTYzMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjY1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihtYm94KSBBZGRpbmcgdG86ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIihtYm94KSBMw6RnZ2VyIHRpbGwgdG86ICVzIGZyw6VuIHJhZGVuIFwiJXNcIlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2ODUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTcxOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIobm9uLW1ib3gpIEFkZGluZyBjYzogJXMgZnJvbSBsaW5lICclcydcbiIKIG1zZ3N0ciAiKGlja2UtbWJveCkgTMOkZ2dlciB0aWxsIGNjOiAlcyBmcsOlbiByYWRlbiBcIiVzXCJcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzIwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE3NTMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKGJvZHkpIEFkZGluZyBjYzogJXMgZnJvbSBsaW5lICclcydcbiIKIG1zZ3N0ciAiKGtyb3BwKSBMw6RnZ2VyIHRpbGwgY2M6ICVzIGZyw6VuIHJhZGVuIFwiJXNcIlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4MzEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg2NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoJXMpIENvdWxkIG5vdCBleGVjdXRlICclcyciCiBtc2dzdHIgIiglcykgS3VuZGUgaW50ZSBrw7ZyYSBcIiVzXCIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTgzOAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODcxCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiglcykgQWRkaW5nICVzOiAlcyBmcm9tOiAnJXMnXG4iCiBtc2dzdHIgIiglcykgTMOkZ2dlciB0aWxsICVzOiAlcyBmcsOlbjogXCIlc1wiXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg0MgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODc1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiglcykgZmFpbGVkIHRvIGNsb3NlIHBpcGUgdG8gJyVzJyIKIG1zZ3N0ciAiKCVzKSBtaXNzbHlja2FkZXMgc3TDpG5nYSByw7ZyZXQgdGlsbCBcIiVzXCIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg3MgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTA1CiBtc2dpZCAiY2Fubm90IHNlbmQgbWVzc2FnZSBhcyA3Yml0IgogbXNnc3RyICJrYW4gaW50ZSBzw6RuZGEgYnJldiBzb20gc2p1Yml0YXJzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4ODAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkxMwogbXNnaWQgImludmFsaWQgdHJhbnNmZXIgZW5jb2RpbmciCiBtc2dzdHIgIm9naWx0aWcgw7Z2ZXJmw7ZyaW5nc2tvbmRuaW5nIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MjEgZ2l0LXNlbmQtZW1haWwucGVybDoxOTczIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk4MworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTU0IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjAwNiBnaXQtc2VuZC1lbWFpbC5wZXJsOjIwMTYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzXG4iCiBtc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hICVzOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MjQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk1NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIlczogcGF0Y2ggY29udGFpbnMgYSBsaW5lIGxvbmdlciB0aGFuIDk5OCBjaGFyYWN0ZXJzIgogbXNnc3RyICIlczogcGF0Y2hlbiBpbm5laMOlbGxlciBlbiByYWQgbMOkbmdyZSDDpG4gOTk4IHRlY2tlbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTQxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NzQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU2tpcHBpbmcgJXMgd2l0aCBiYWNrdXAgc3VmZml4ICclcycuXG4iCiBtc2dzdHIgIiIKQEAgLTIxMDIzLDIxICsyNDQ0OCw0MDEgQEAKICJzw6RrZXJoZXRza29waW9yLlxuIgogCiAjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGtlZXAgIlt5fE5dIiBhcyBpcy4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk0NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTc4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkRvIHlvdSByZWFsbHkgd2FudCB0byBzZW5kICVzPyBbeXxOXTogIgogbXNnc3RyICJWaWxsIGR1IHZlcmtsaWdlbiBzw6RuZGEgJXM/IFt5PWphLCBuPW5lal06ICIKIAorI34gbXNnaWQgIntkcm9wLGtlZXAsYXNrfSIKKyN+IG1zZ3N0ciAie2Ryb3Asa2VlcCxhc2t9IgorCisjfiBtc2dpZCAiU3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixhLHEsZCVzLD9dPyAiCisjfiBtc2dzdHIgIkvDtmEgw6RuZHJhdCBsw6RnZSBbeSxuLGEscSxkJXMsP10/ICIKKworI34gbXNnaWQgIlN0YWdlIGRlbGV0aW9uIFt5LG4sYSxxLGQlcyw/XT8gIgorI34gbXNnc3RyICJLw7ZhIGJvcnR0YWduaW5nIFt5LG4sYSxxLGQlcyw/XT8gIgorCisjfiBtc2dpZCAiU3RhZ2UgdGhpcyBodW5rIFt5LG4sYSxxLGQlcyw/XT8gIgorI34gbXNnc3RyICJLw7ZhIHN0eWNrZXQgW3ksbixhLHEsZCVzLD9dPyAiCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKKyN+ICJtYXJrZWQgZm9yIHN0YWdpbmcuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJPbSBwYXRjaGVuIGthbiBhcHBsaWNlcmFzIHJlbnQga29tbWVyIGRldCByZWRpZ2VyYWRlIHN0eWNrZXQgYXR0XG4iCisjfiAia8O2YXMgb21lZGVsYmFydC5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCisjfiAibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKKyN+ICJxIC0gcXVpdDsgZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisjfiAiYSAtIHN0YWdlIHRoaXMgYW5kIGFsbCB0aGUgcmVtYWluaW5nIGh1bmtzXG4iCisjfiAiZCAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgbm9yIGFueSBvZiB0aGUgcmVtYWluaW5nIGh1bmtzXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJ5IC0ga8O2YSBzdHlja2V0XG4iCisjfiAibiAtIGvDtmEgaW50ZSBzdHlja2V0XG4iCisjfiAicSAtIGF2c2x1dGE7IGvDtmEgaW50ZSBzdHlja2V0IGVsbGVyIG7DpWdvdCBhdiBkZSBmw7ZsamFuZGVcbiIKKyN+ICJhIC0ga8O2YSBkZXR0YSBvY2ggYWxsYSBmw7ZsamFuZGUgc3R5Y2tlblxuIgorI34gImQgLSBrw7ZhIGludGUgc3R5Y2tldCBlbGxlciBuw6Vnb3QgYXYgZGUgc3R5Y2tlbiBzb20gZsO2bGplclxuIgorCisjfiBtc2dpZCAiY291bGQgbm90IGNvcHkgJyVzJyB0byAnJXMnLiIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBrb3BpZXJhIFwiJXNcIiB0aWxsIFwiJXNcIi4iCisKKyN+IG1zZ2lkICJtYWxmb3JtZWQgaWRlbnQgbGluZSIKKyN+IG1zZ3N0ciAiZmVsYWt0aWcgaWRlbnQtcmFkIgorCisjfiBtc2dpZCAiY29ycnVwdGVkIGF1dGhvciB3aXRob3V0IGRhdGUgaW5mb3JtYXRpb24iCisjfiBtc2dzdHIgInRyYXNpZyBmw7ZyZmF0dGFyZSB1dGFuIGRhdHVtaW5mb3JtYXRpb24iCisKKyN+IG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyUuKnMnIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthIFwiJS4qc1wiIgorCisjfiBtc2dpZCAiY291bGQgbm90IGNoZWNrb3V0ICVzIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGNoZWNrYSB1dCAlcyIKKworI34gbXNnaWQgImZpbGVuYW1lIGluIHRyZWUgZW50cnkgY29udGFpbnMgYmFja3NsYXNoOiAnJXMnIgorI34gbXNnc3RyICJmaWxuYW1uZXQgaSB0csOkZGV0IGlubmVow6VsbGVyIG9tdsOkbnQgc25lZHN0cmVjazogXCIlc1wiIgorCisjfiBtc2dpZCAiVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgdGhlbS5cbiIKKyN+IG1zZ3N0ciAiQW52w6RuZCAtZiBvbSBkdSB2ZXJrbGlnZW4gdmlsbCBsw6RnZ2EgdGlsbCBkZW0uXG4iCisKKyN+IG1zZ2lkICJNYXliZSB5b3Ugd2FudGVkIHRvIHNheSAnZ2l0IGFkZCAuJz9cbiIKKyN+IG1zZ3N0ciAiS2Fuc2tlIG1lbmFkZSBkdSBhdHQgc2tyaXZhIFwiZ2l0IGFkZCAuXCI/XG4iCisKKyN+IG1zZ2lkICJwYWNrZmlsZSBpcyBpbnZhbGlkOiAlcyIKKyN+IG1zZ3N0ciAicGFja2ZpbCDDpHIgb2dpbHRpZzogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBwYWNrZmlsZSBmb3IgcmV1c2U6ICVzIgorI34gbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgcGFja2ZpbCBmw7ZyIMOldGVyYW52w6RuZG5pbmc6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgaW4gcmV1c2VkIHBhY2tmaWxlIgorI34gbXNnc3RyICJrYW4gaW50ZSBzw7ZrYSBpIMOldGVyYW52w6RuZCBwYWNrZmlsIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZnJvbSByZXVzZWQgcGFja2ZpbGUiCisjfiBtc2dzdHIgImthbiBpbnRlIGzDpHNhIGZyw6VuIMOldGVyYW52w6RuZCBwYWNrZmlsIgorCisjfiBtc2dpZCAibm8gSEVBRD8iCisjfiBtc2dzdHIgImluZ2V0IEhFQUQ/IgorCisjfiBtc2dpZCAibWFrZSBjb21taXR0ZXIgZGF0ZSBtYXRjaCBhdXRob3IgZGF0ZSIKKyN+IG1zZ3N0ciAic8OkdHQgaW5jaGVja25pbmdzZGF0dW0gdGlsbCBmw7ZyZmF0dGFyZGF0dW0iCisKKyN+IG1zZ2lkICJpZ25vcmUgYXV0aG9yIGRhdGUgYW5kIHVzZSBjdXJyZW50IGRhdGUiCisjfiBtc2dzdHIgImlnbm9yZXJhIGbDtnJmYXR0YXJkYXR1bSBvY2ggYW52w6RuZCBudXZhcmFuZGUiCisKKyN+IG1zZ2lkICJzeW5vbnltIG9mIC0tcmVzZXQtYXV0aG9yLWRhdGUiCisjfiBtc2dzdHIgInN5bm9ueW0gZsO2ciAtLXJlc2V0LWF1dGhvci1kYXRlIgorCisjfiBtc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSIKKyN+IG1zZ3N0ciAiaWdub3JlcmEgw6RuZHJpbmdhciBpIGJsYW5rc3RlZyIKKworI34gbXNnaWQgInByZXNlcnZlIGVtcHR5IGNvbW1pdHMgZHVyaW5nIHJlYmFzZSIKKyN+IG1zZ3N0ciAiYmVow6VsbCB0b21tYSBpbmNoZWNrbmluZ2FyIHVuZGVyIG9tYmFzZXJpbmciCisKKyN+IG1zZ2lkICJjYW5ub3QgY29tYmluZSAtLXVzZS1iaXRtYXAtaW5kZXggd2l0aCBvYmplY3QgZmlsdGVyaW5nIgorI34gbXNnc3RyICJrYW4gaW50ZSBrb21iaW5lcmEgLS11c2UtYml0bWFwLWluZGV4IG1lZCBvYmpla3RmaWx0cmVyaW5nIgorCisjfiBtc2dpZCAiIgorI34gIlRoZSBmb2xsb3dpbmcgcGF0aCBpcyBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCisjfiAiJHNtX3BhdGhcbiIKKyN+ICJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCBpdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJGw7ZsamFuZGUgc8O2a3bDpGdhciBpZ25vcmVyYXMgYXYgZW4gYXYgZGluYSAuZ2l0aWdub3JlLWZpbGVyOlxuIgorI34gIiRzbV9wYXRoXG4iCisjfiAiQW52w6RuZCAtZiBvbSBkdSB2ZXJrbGlnZW4gdmlsbCBsw6RnZ2EgdGlsbCBkZW4uIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGdldCB0cmVlIGZvciAlcyIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBow6RtdGEgdHLDpGRldCBww6UgJXMiCisKKyN+IG1zZ2lkICJVc2UgYW4gZXhwZXJpbWVudGFsIGhldXJpc3RpYyB0byBpbXByb3ZlIGRpZmZzIgorI34gbXNnc3RyICJBbnbDpG5kIGVuIGV4cGVyaW1lbnRlbGwgYWxnb3JpdG0gZsO2ciBhdHQgZsO2cmLDpHR0cmEgZGlmZmFyIgorCisjfiBtc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKKyN+IG1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyIDxvYmprYXQ+XSIKKworI34gbXNnaWQgImdpdCBjb21taXQtZ3JhcGggcmVhZCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKKyN+IG1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCByZWFkIFstLW9iamVjdC1kaXIgPG9iamthdD5dIgorCisjfiBtc2dpZCAidW5rbm93biBjb3JlLnVudHJhY2tlZENhY2hlIHZhbHVlICclcyc7IHVzaW5nICdrZWVwJyBkZWZhdWx0IHZhbHVlIgorI34gbXNnc3RyICIiCisjfiAib2vDpG50IHbDpHJkZSBcIiVzXCIgZsO2ciBjb3JlLnVudHJhY2tlZENhY2hlOyBhbnbDpG5kZXIgc3RhbmRhcmR2w6RyZGV0IFwia2VlcCIKKyN+ICJcIiIKKworI34gbXNnaWQgImNhbm5vdCBjaGFuZ2UgcGFydGlhbCBjbG9uZSBwcm9taXNvciByZW1vdGUiCisjfiBtc2dzdHIgImthbiBpbnRlIMOkbmRyYSBrb250cmFrdHNmasOkcnIgZsO2ciBkZWx2aXMga2xvbmluZyIKKworI34gbXNnaWQgImVycm9yIGJ1aWxkaW5nIHRyZWVzIgorI34gbXNnc3RyICJmZWwgdmlkIGJ5Z2dhbmRlIGF2IHRyw6RkIgorCisjfiBtc2dpZCAiaW52YWxpZCBkYXRlIGZvcm1hdCAnJXMnIGluICclcyciCisjfiBtc2dzdHIgIm9naWx0aWd0IGRhdHVtZm9ybWF0IFwiJXNcIiBpIFwiJXNcIiIKKworI34gbXNnaWQgIndyaXRpbmcgcm9vdCBjb21taXQiCisjfiBtc2dzdHIgInNrcml2ZXIgcm90aW5jaGVja25pbmciCisKKyN+IG1zZ2lkICJzdGFnZWQgY2hhbmdlcyBpbiB0aGUgZm9sbG93aW5nIGZpbGVzIG1heSBiZSBsb3N0OiAlcyIKKyN+IG1zZ3N0ciAia8O2YWRlIMOkbmRyaW5nYXIgaSBmw7ZsamFuZGUgZmlsZXIga2FuIGfDpSBmw7ZybG9yYWRlOiAlcyIKKworI34gbXNnaWQgIiIKKyN+ICItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdpdGggdGhlIHJlbW90ZSBjb25maWd1cmVkIGluIGV4dGVuc2lvbnMuIgorI34gInBhcnRpYWxDbG9uZSIKKyN+IG1zZ3N0ciAiIgorI34gIi0tZmlsdGVyIGthbiBlbmRhc3QgYW52w6RuZGFzIG1lZCBmasOkcnJlbiBrb25maWd1cmVyYWQgaSBleHRlbnNpb25zLiIKKyN+ICJwYXJ0aWFsQ2xvbmUiCisKKyN+IG1zZ2lkICJ2ZXJpZnkgY29tbWl0LW1zZyBob29rIgorI34gbXNnc3RyICJiZWtyw6RmdGEgY29tbWl0LW1zZy1rcm9rIgorCisjfiBtc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneS1vcHRpb24nIgorI34gbXNnc3RyICJrYW4gaW50ZSBrb21iaW5lcmEgXCItLXJlYmFzZS1tZXJnZXNcIiBtZWQgXCItLXN0cmF0ZWd5LW9wdGlvblwiIgorCisjfiBtc2dpZCAiaW52YWxpZCBzcGFyc2UgdmFsdWUgJyVzJyIKKyN+IG1zZ3N0ciAib2dpbHRpZ3QgdsOkcmRlIGbDtnIgc3BhcnNlOiBcIiVzXCIiCisKKyN+IG1zZ2lkICIiCisjfiAiRmV0Y2ggbm9ybWFsbHkgaW5kaWNhdGVzIHdoaWNoIGJyYW5jaGVzIGhhZCBhIGZvcmNlZCB1cGRhdGUsIGJ1dCB0aGF0ICIKKyN+ICJjaGVjayBoYXMgYmVlbiBkaXNhYmxlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJIw6RtdG5pbmcgdmlzYXIgdmFubGlndHZpcyB2aWxrYSBncmVuYXIgc29tIGhhciBlbiB0dmluZ2FkIHVwcGRhdGVyaW5nLCAiCisjfiAibWVuIGRldCB0ZXN0ZXQgaGFyIHNsYWdpdHMgYXYuIgorCisjfiBtc2dpZCAiIgorI34gIm9yIHJ1biAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyBmYWxzZScgdG8gYXZvaWQgdGhpcyBjaGVjay5cbiIKKyN+IG1zZ3N0ciAiIgorI34gImVsbGVyIGvDtnIgXCJnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzIGZhbHNlXCIgZsO2ciB1bmR2aWthICIKKyN+ICJ0ZXN0ZXQuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAibG9nLm1haWxtYXAgaXMgbm90IHNldDsgaXRzIGltcGxpY2l0IHZhbHVlIHdpbGwgY2hhbmdlIGluIGFuXG4iCisjfiAidXBjb21pbmcgcmVsZWFzZS4gVG8gc3F1ZWxjaCB0aGlzIG1lc3NhZ2UgYW5kIHByZXNlcnZlIGN1cnJlbnRcbiIKKyN+ICJiZWhhdmlvdXIsIHNldCB0aGUgbG9nLm1haWxtYXAgY29uZmlndXJhdGlvbiB2YWx1ZSB0byBmYWxzZS5cbiIKKyN+ICJcbiIKKyN+ICJUbyBzcXVlbGNoIHRoaXMgbWVzc2FnZSBhbmQgYWRvcHQgdGhlIG5ldyBiZWhhdmlvdXIgbm93LCBzZXQgdGhlXG4iCisjfiAibG9nLm1haWxtYXAgY29uZmlndXJhdGlvbiB2YWx1ZSB0byB0cnVlLlxuIgorI34gIlxuIgorI34gIlNlZSAnZ2l0IGhlbHAgY29uZmlnJyBhbmQgc2VhcmNoIGZvciAnbG9nLm1haWxtYXAnIGZvciBmdXJ0aGVyICIKKyN+ICJpbmZvcm1hdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJsb2cubWFpbG1hcCBoYXIgaW50ZSBzYXR0czogZsO2cnZhbGV0IGtvbW1lciDDpG5kcmFzIGkgZW4ga29tbWFuZGVcbiIKKyN+ICJ2ZXJzaW9uLiBGw7ZyIGF0dCBkw7ZsamEgZGV0IGjDpHIgbWVkZGVsYW5kZXQgb2NoIGJlaMOlbGxhIG51dmFyYW5kZVxuIgorI34gImJldGVlbmRlLCBzw6R0dCBrb25maWd1cmF0aW9uc3ZhcmlhYmVsbiBsb2cubWFpbG1hcCB0aWxsIGZhbHNlLlxuIgorI34gIlxuIgorI34gIkbDtnIgYXR0IGTDtmxqYSBkZXQgaMOkciBtZWRkZWxhbmRldCBvY2ggYW52w6RuZGEgZGV0IG55YSBiZXRlZW5kZXQsXG4iCisjfiAic8OkdHQga29uZmlndXJhdGlvbnN2YXJpYWJlbG4gbG9nLm1haWxtYXAgdGlsbCB0cnVlLlxuIgorI34gIlxuIgorI34gIlNlIFwiZ2l0IGhlbHAgY29uZmlnXCIgb2NoIHPDtmsgZWZ0ZXIgXCJsb2cubWFpbG1hcFwiIGbDtnIgbWVyIGluZm9ybWF0aW9uLiIKKworI34gbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2tfZGV0YWlsZWQiCisjfiBtc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBcIm11bHRpX2Fja19kZXRhaWxlZFwiIgorCisjfiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIG5vLWRvbmUiCisjfiBtc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBcIm5vLWRvbmVcIiIKKworI34gbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2siCisjfiBtc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBcIm11bHRpX2Fja1wiIgorCisjfiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIHNpZGUtYmFuZC02NGsiCisjfiBtc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBcInNpZGUtYmFuZC02NGtcIiIKKworI34gbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBzaWRlLWJhbmQiCisjfiBtc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBcInNpZGUtYmFuZFwiIgorCisjfiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIGFsbG93LXRpcC1zaGExLWluLXdhbnQiCisjfiBtc2dzdHIgIlNlcnZlcm4gc3TDtmRlciBcImFsbG93LXRpcC1zaGExLWluLXdhbnRcIiIKKworI34gbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBhbGxvdy1yZWFjaGFibGUtc2hhMS1pbi13YW50IgorI34gbXNnc3RyICJTZXJ2ZXJuIHN0w7ZkZXIgXCJhbGxvdy1yZWFjaGFibGUtc2hhMS1pbi13YW50XCIiCisKKyN+IG1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgb2ZzLWRlbHRhIgorI34gbXNnc3RyICJTZXJ2ZXJuIHN0w7ZkZXIgXCJvZnMtZGVsdGFcIiIKKworI34gbXNnaWQgIihIRUFEIGRldGFjaGVkIGF0ICVzKSIKKyN+IG1zZ3N0ciAiKEhFQUQgZnLDpW5rb3BwbGF0IHZpZCAlcykiCisKKyN+IG1zZ2lkICIoSEVBRCBkZXRhY2hlZCBmcm9tICVzKSIKKyN+IG1zZ3N0ciAiKEhFQUQgZnLDpW5rb3BwbGF0IGZyw6VuICVzKSIKKworI34gbXNnaWQgIkNoZWNraW5nIG91dCBmaWxlcyIKKyN+IG1zZ3N0ciAiQ2hlY2thciB1dCBmaWxlciIKKworI34gbXNnaWQgImNhbm5vdCBiZSBpbnRlcmFjdGl2ZSB3aXRob3V0IHN0ZGluIGNvbm5lY3RlZCB0byBhIHRlcm1pbmFsLiIKKyN+IG1zZ3N0ciAiIgorI34gImthbiBpbnRlIHZhcmEgaW50ZXJha3RpdiBvbSBzdGFuZGFyZCBpbiBpbnRlIMOkciBhbnNsdXRlbiB0aWxsIGVuIHRlcm1pbmFsLiIKKworI34gbXNnaWQgImZhaWxlZCB0byBzdGF0ICVzXG4iCisjfiBtc2dzdHIgIm1pc3NseWNrYWRlcyB0YSBzdGF0dXMgcMOlICVzXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgeW91IHdpc2ggdG8gc2tpcCB0aGlzIGNvbW1pdCwgdXNlOlxuIgorI34gIlxuIgorI34gIiAgICBnaXQgcmVzZXRcbiIKKyN+ICJcbiIKKyN+ICJUaGVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB3aWxsIHJlc3VtZSBjaGVycnktcGlja2luZ1xuIgorI34gInRoZSByZW1haW5pbmcgY29tbWl0cy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIk9tIGR1IHZpbGwgaG9wcGEgw7Z2ZXIgaW5jaGVja25pbmdlbiwgYW52w6RuZDpcbiIKKyN+ICJcbiIKKyN+ICIgICAgZ2l0IHJlc2V0XG4iCisjfiAiXG4iCisjfiAiXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIGtvbW1lciBkw6RyZWZ0ZXIgYXR0IMOldGVydXBwdGFcbiIKKyN+ICJjaGVycnktcGljayBmw7ZyIMOldGVyc3TDpWVuZGUgaW5jaGVja25pbmdhci5cbiIKKworI34gbXNnaWQgInVucmVjb2duaXplZCB2ZXJiOiAlcyIKKyN+IG1zZ3N0ciAib2vDpG50IHZlcmI6ICVzIgorCisjfiBtc2dpZCAiaGFzaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCisjfiBtc2dzdHIgImhhc2gtdmVyc2lvbmVuICVYIHN0w6RtbWVyIGludGUgbWVkIHZlcnNpb25lbiAlWCIKKworI34gbXNnaWQgIm9wdGlvbiAnJXMnIHJlcXVpcmVzIGEgdmFsdWUiCisjfiBtc2dzdHIgImZsYWdnYW4gXCIlc1wiIGJlaMO2dmVyIGV0dCB2w6RyZGUiCisKKyN+IG1zZ2lkICJjb3VsZCBub3QgdHJhbnNmb3JtIHRoZSB0b2RvIGxpc3QiCisjfiBtc2dzdHIgImt1bmRlIGludGUgdHJhbnNmb3JtZXJhIGF0dCBnw7ZyYS1saXN0YW4iCisKKyN+IG1zZ2lkICJkZWZhdWx0IgorI34gbXNnc3RyICJzdGFuZGFyZCIKKworI34gbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciCisjfiBtc2dzdHIgIkt1bmRlIGludGUgc2thcGEga2F0YWxvZ2VuIFwiJXNcIiIKKworI34gbXNnaWQgImFsbG93IHJlcmVyZSB0byB1cGRhdGUgaW5kZXggd2l0aCByZXNvbHZlZCBjb25mbGljdCIKKyN+IG1zZ3N0ciAidGlsbMOldCByZXJlcmUgYXR0IHVwcGRhdGVyYSBpbmRleCBtZWQgbMO2c2Ega29uZmxpa3RlciIKKworI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuICVzIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSAlcyIKKworI34gbXNnaWQgIkNvdWxkIG5vdCBtb3ZlIGJhY2sgdG8gJGhlYWRfbmFtZSIKKyN+IG1zZ3N0ciAiS3VuZGUgaW50ZSBmbHl0dGEgdGlsbGJha2EgdGlsbCAkaGVhZF9uYW1lIgorCisjfiBtc2dpZCAiIgorI34gIkl0IHNlZW1zIHRoYXQgdGhlcmUgaXMgYWxyZWFkeSBhICRzdGF0ZV9kaXJfYmFzZSBkaXJlY3RvcnksIGFuZFxuIgorI34gIkkgd29uZGVyIGlmIHlvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIHJlYmFzZS4gIElmIHRoYXQgaXMgdGhlXG4iCisjfiAiY2FzZSwgcGxlYXNlIHRyeVxuIgorI34gIlx0JGNtZF9saXZlX3JlYmFzZVxuIgorI34gIklmIHRoYXQgaXMgbm90IHRoZSBjYXNlLCBwbGVhc2VcbiIKKyN+ICJcdCRjbWRfY2xlYXJfc3RhbGVfcmViYXNlXG4iCisjfiAiYW5kIHJ1biBtZSBhZ2Fpbi4gIEkgYW0gc3RvcHBpbmcgaW4gY2FzZSB5b3Ugc3RpbGwgaGF2ZSBzb21ldGhpbmdcbiIKKyN+ICJ2YWx1YWJsZSB0aGVyZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEZXQgdmVya2FyIHNvbSBrYXRhbG9nZW4gJHN0YXRlX2Rpcl9iYXNlIHJlZGFuIGV4aXN0ZXJhciwgb2NoXG4iCisjfiAiamFnIHVuZHJhciBvbSBkdSByZWRhbiDDpHIgbWl0dCBpIGVuIGFubmFuIG9tYmFzZXJpbmcuIE9tIHPDpSDDpHJcbiIKKyN+ICJmYWxsZXQsIGbDtnJzw7ZrXG4iCisjfiAiXHQkY21kX2xpdmVfcmViYXNlXG4iCisjfiAiT20gc8OlIGludGUgw6RyIGZhbGxldCwga8O2clxuIgorI34gIlx0JGNtZF9jbGVhcl9zdGFsZV9yZWJhc2VcbiIKKyN+ICJvY2gga8O2ciBwcm9ncmFtbWV0IGlnZW4uIEphZyBhdnNsdXRhciBpZmFsbCBkdSBmb3J0ZmFyYW5kZSBoYXJcbiIKKyN+ICJuw6Vnb3QgYXYgdsOkcmRlIGTDpHIuIgorCisjfiBtc2dpZCAiIgorI34gImZhdGFsOiBjYW5ub3QgY29tYmluZSBhbSBvcHRpb25zIHdpdGggZWl0aGVyIGludGVyYWN0aXZlIG9yIG1lcmdlIG9wdGlvbnMiCisjfiBtc2dzdHIgIiIKKyN+ICLDtmRlc2RpZ2VydDoga2FuIGludGUga29tYmluZXJhIGFtLWZsYWdnb3IgbWVkIGFudGluZ2VuIGludGVyYWt0aXYtIGVsbGVyICIKKyN+ICJzYW1tYW5zbGFnbmluZ3NmbGFnZ29yIgorCisjfiBtc2dpZCAiZmF0YWw6IGNhbm5vdCBjb21iaW5lICctLXNpZ25vZmYnIHdpdGggJy0tcHJlc2VydmUtbWVyZ2VzJyIKKyN+IG1zZ3N0ciAiIgorI34gIsO2ZGVzZGlnZXJ0OiBrYW4gaW50ZSBrb21iaW5lcmEgXCItLXNpZ25vZmZcIiBtZWQgXCItLXByZXNlcnZlLW1lcmdlc1wiIgorCisjfiBtc2dpZCAiZmF0YWw6IGNhbm5vdCBjb21iaW5lICctLXByZXNlcnZlLW1lcmdlcycgd2l0aCAnLS1yZWJhc2UtbWVyZ2VzJyIKKyN+IG1zZ3N0ciAiIgorI34gIsO2ZGVzZGlnZXJ0OiBrYW4gaW50ZSBrb21iaW5lcmEgXCItLXByZXNlcnZlLW1lcmdlc1wiIG1lZCBcIi0tcmViYXNlLW1lcmdlcyIKKyN+ICJcIiIKKworI34gbXNnaWQgImZhdGFsOiBjYW5ub3QgY29tYmluZSAnLS1yZWJhc2UtbWVyZ2VzJyB3aXRoICctLXN0cmF0ZWd5LW9wdGlvbiciCisjfiBtc2dzdHIgIiIKKyN+ICLDtmRlc2RpZ2VydDoga2FuIGludGUga29tYmluZXJhIFwiLS1yZWJhc2UtbWVyZ2VzXCIgbWVkIFwiLS1zdHJhdGVneS1vcHRpb24iCisjfiAiXCIiCisKKyN+IG1zZ2lkICJmYXRhbDogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneSciCisjfiBtc2dzdHIgIiIKKyN+ICLDtmRlc2RpZ2VydDoga2FuIGludGUga29tYmluZXJhIFwiLS1yZWJhc2UtbWVyZ2VzXCIgbWVkIFwiLS1zdHJhdGVneVwiIgorCisjfiBtc2dpZCAiaW52YWxpZCB1cHN0cmVhbSAnJHVwc3RyZWFtX25hbWUnIgorI34gbXNnc3RyICJvZ2lsdGlnIHVwcHN0csO2bSBcIiR1cHN0cmVhbV9uYW1lXCIiCisKKyN+IG1zZ2lkICIkb250b19uYW1lOiB0aGVyZSBhcmUgbW9yZSB0aGFuIG9uZSBtZXJnZSBiYXNlcyIKKyN+IG1zZ3N0ciAiJG9udG9fbmFtZTogbWVyIMOkbiBlbiBzYW1tYW5zbGFnbmluZ3NiYXMgZmlubnMiCisKKyN+IG1zZ2lkICIkb250b19uYW1lOiB0aGVyZSBpcyBubyBtZXJnZSBiYXNlIgorI34gbXNnc3RyICIkb250b19uYW1lOiBpbmdlbiBzYW1tYW5zbGFnbmluZ3NiYXMgZmlubnMiCisKKyN+IG1zZ2lkICJEb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIGNvbW1pdDogJG9udG9fbmFtZSIKKyN+IG1zZ3N0ciAiUGVrYSBww6UgZW4gZ2lsdGlnIGluY2hlY2tuaW5nOiAkb250b19uYW1lIgorCisjfiBtc2dpZCAiZmF0YWw6IG5vIHN1Y2ggYnJhbmNoL2NvbW1pdCAnJGJyYW5jaF9uYW1lJyIKKyN+IG1zZ3N0ciAiw7ZkZXNkaWdlcnQ6IGluZ2VuIHPDpWRhbiBncmVuL2luY2hlY2tuaW5nOiAkYnJhbmNoX25hbWUiCisKKyN+IG1zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJHN0YXNoX2FiYnJldiIKKyN+IG1zZ3N0ciAiU2thcGFkZSBhdXRvc3Rhc2g6ICRzdGFzaF9hYmJyZXYiCisKKyN+IG1zZ2lkICJDdXJyZW50IGJyYW5jaCAkYnJhbmNoX25hbWUgaXMgdXAgdG8gZGF0ZS4iCisjfiBtc2dzdHIgIkFrdHVlbGwgZ3JlbiAkYnJhbmNoX25hbWUgw6RyIMOgIGpvdXIuIgorCisjfiBtc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgorI34gbXNnc3RyICJBa3R1ZWxsIGdyZW4gJGJyYW5jaF9uYW1lIMOkciDDoCBqb3VyLCBvbWJhc2VyaW5nIGZyYW10dmluZ2FkLiIKKworI34gbXNnaWQgIkNoYW5nZXMgdG8gJG9udG86IgorI34gbXNnc3RyICLDhG5kcmluZ2FyIHRpbGwgJG9udG86IgorCisjfiBtc2dpZCAiQ2hhbmdlcyBmcm9tICRtYiB0byAkb250bzoiCisjfiBtc2dzdHIgIsOEbmRyaW5nYXIgZnLDpW4gJG1iIHRpbGwgJG9udG86IgorCisjfiBtc2dpZCAiRmFzdC1mb3J3YXJkZWQgJGJyYW5jaF9uYW1lIHRvICRvbnRvX25hbWUuIgorI34gbXNnc3RyICJTbmFiYnNwb2xhZGUgJGJyYW5jaF9uYW1lIHRpbGwgJG9udG9fbmFtZS4iCisKKyN+IG1zZ2lkICJGaXJzdCwgcmV3aW5kaW5nIGhlYWQgdG8gcmVwbGF5IHlvdXIgd29yayBvbiB0b3Agb2YgaXQuLi4iCisjfiBtc2dzdHIgIiIKKyN+ICJGw7Zyc3QsIHNwb2xhciB0aWxsYmFrYSBodXZ1ZGV0IGbDtnIgYXR0IHNwZWxhIGF2IGRpdHQgYXJiZXRlIG92YW5ww6UgZGV0Li4uIgorCisjfiBtc2dpZCAiaWdub3JpbmcgdW5rbm93biBjb2xvci1tb3ZlZC13cyBtb2RlICclcyciCisjfiBtc2dzdHIgImlnbm9yZXJhciBva8OkbnQgbMOkZ2UgZsO2ciBjb2xvci1tb2RlLXdzIFwiJXNcIiIKKworI34gbXNnaWQgIm9ubHkgJ3RyZWU6MCcgaXMgc3VwcG9ydGVkIgorI34gbXNnc3RyICJlbmRhc3QgXCJ0cmVlOjBcIiBzdMO2ZHMiCisKKyN+IG1zZ2lkICJSZW5hbWluZyAlcyB0byAlcyBhbmQgJXMgdG8gJXMgaW5zdGVhZCIKKyN+IG1zZ3N0ciAiQnl0ZXIgbmFtbiBww6UgJXMgdGlsbCAlcyBvY2ggJXMgdGlsbCAlcyBpc3TDpGxsZXQiCisKKyN+IG1zZ2lkICJBZGRpbmcgbWVyZ2VkICVzIgorI34gbXNnc3RyICJMw6RnZ2VyIHRpbGwgc2FtbWFuc2xhZ2VuICVzIgorCisjfiBtc2dpZCAiSW50ZXJuYWwgZXJyb3IiCisjfiBtc2dzdHIgIkludGVybnQgZmVsIgorCisjfiBtc2dpZCAibWFpbmxpbmUgd2FzIHNwZWNpZmllZCBidXQgY29tbWl0ICVzIGlzIG5vdCBhIG1lcmdlLiIKKyN+IG1zZ3N0ciAiaHV2dWRsaW5qZSBhbmdhdnMsIG1lbiBpbmNoZWNrbmluZ2VuICVzIMOkciBpbnRlIGVuIHNhbW1hbnNsYWduaW5nLiIKKworI34gbXNnaWQgInVuYWJsZSB0byB3cml0ZSBzaGExIGZpbGVuYW1lICVzIgorI34gbXNnc3RyICJrYW4gaW50ZSBza3JpdmEgc2hhMS1maWxuYW1uICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHJlYWQgc2hhMV9maWxlIGZvciAlcyIKKyN+IG1zZ3N0ciAia2FuIGludGUgbMOkc2Egc2hhMV9maWxlIGbDtnIgJXMiCisKKyN+IG1zZ2lkICIiCisjfiAiZXJyb3I6IGNhbm5vdCBjb21iaW5lIGludGVyYWN0aXZlIG9wdGlvbnMgKC0taW50ZXJhY3RpdmUsIC0tZXhlYywgLS0iCisjfiAicmViYXNlLW1lcmdlcywgLS1wcmVzZXJ2ZS1tZXJnZXMsIC0ta2VlcC1lbXB0eSwgLS1yb290ICsgLS1vbnRvKSB3aXRoIGFtICIKKyN+ICJvcHRpb25zICglcykiCisjfiBtc2dzdHIgIiIKKyN+ICJmZWw6IGthbiBpbnRlIGtvbWJpbmVyYSBpbnRlcmFrdGl2YSBmbGFnZ29yICgtLWludGVyYWN0aXZlLCAtLWV4ZWMsIC0tIgorI34gInJlYmFzZS1tZXJnZXMsIC0tcHJlc2VydmUtbWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250bykgbWVkIGFtLSIKKyN+ICJmbGFnZ29yICglcykiCisKKyN+IG1zZ2lkICIiCisjfiAiZXJyb3I6IGNhbm5vdCBjb21iaW5lIG1lcmdlIG9wdGlvbnMgKC0tbWVyZ2UsIC0tc3RyYXRlZ3ksIC0tc3RyYXRlZ3ktIgorI34gIm9wdGlvbikgd2l0aCBhbSBvcHRpb25zICglcykiCisjfiBtc2dzdHIgIiIKKyN+ICJmZWw6IGthbiBpbnRlIGtvbWJpbmVyYSBzYW1tYW5zbGFnbmluZ3NmbGFnZ29yICgtLW1lcmdlLCAtLXN0cmF0ZWd5LCAtLSIKKyN+ICJzdHJhdGVneS1vcHRpb24pIG1lZCBhbS1mbGFnZ29yICglcykiCisKKyN+IG1zZ2lkICJ1bnJlY29nbmlzZWQgb3B0aW9uOiAnJGFyZyciCisjfiBtc2dzdHIgImZsYWdnYW4ga8Okbm5zIGludGUgaWdlbjogXCIkYXJnXCIiCisKKyN+IG1zZ2lkICInJGludmFsaWQnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIKKyN+IG1zZ3N0ciAiXCIkaW52YWxpZFwiIMOkciBpbnRlIGVuIGdpbHRpZyBpbmNoZWNrbmluZyIKKwogI34gbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJXMnIChsb29raW5nIGZvciAnJXMnKSIKICN+IG1zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSBcIiVzXCIgKGxldGFyIGVmdGVyIFwiJXNcIikiCiAKLSN+IG1zZ2lkICJiYWQgcXVvdGluZyBvbiAlcyB2YWx1ZSBpbiAnJXMnIgotI34gbXNnc3RyICJmZWxha3RpZyBjaXRlcmluZyBww6UgJXMtdsOkcmRlIGkgXCIlc1wiIgotCi0jfiBtc2dpZCAiQ291bGQgbm90IHVuc2V0IGNvcmUud29ya3RyZWUgc2V0dGluZyBpbiBzdWJtb2R1bGUgJyVzJyIKLSN+IG1zZ3N0ciAiIgotI34gIkt1bmRlIGludGUgdGEgYm9ydCBpbnN0w6RsbG5pbmdlbiBjb3JlLndvcmt0cmVlIGkgdW5kZXJtb2R1bGVuIFwiJXNcIiIKLQogI34gbXNnaWQgImRlcHJlY2F0ZWQgc3lub255bSBmb3IgLS1jcmVhdGUtcmVmbG9nIgogI34gbXNnc3RyICJhdnLDpWRkIHN5bm9ueW0gZsO2ciAtLWNyZWF0ZS1yZWZsb2ciCiAKQEAgLTIxMDU5LDEyICsyNDg2NCw2IEBACiAjfiBtc2dpZCAiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUiCiAjfiBtc2dzdHIgImthbiBpbnRlIHRhIGJvcnQgZW4gbMOlc3QgYXJiZXRza2F0YWxvZyIKIAotI34gbXNnaWQgIkFwcGxpZWQgYXV0b3N0YXNoLiIKLSN+IG1zZ3N0ciAiVGlsbMOkbXBhZGUgYXV0b3N0YXNoLiIKLQotI34gbXNnaWQgIkNhbm5vdCBzdG9yZSAkc3Rhc2hfc2hhMSIKLSN+IG1zZ3N0ciAiS2FuIGludGUgc3BhcmEgJHN0YXNoX3NoYTEiCi0KICN+IG1zZ2lkICIiCiAjfiAiXG4iCiAjfiAiXHRIb3dldmVyLCBpZiB5b3UgcmVtb3ZlIGV2ZXJ5dGhpbmcsIHRoZSByZWJhc2Ugd2lsbCBiZSBhYm9ydGVkLlxuIgpAQCAtMjExNTgsOSArMjQ5NTcsNiBAQAogI34gbXNnaWQgImNvdWxkIG5vdCB0cnVuY2F0ZSAnJXMnIgogI34gbXNnc3RyICJrdW5kZSBpbnRlIHRydW5rZXJhIFwiJXNcIiIKIAotI34gbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggJyVzJyIKLSN+IG1zZ3N0ciAia3VuZGUgaW50ZSBhdnNsdXRhIFwiJXNcIiIKLQogI34gbXNnaWQgImNvdWxkIG5vdCBjbG9zZSAlcyIKICN+IG1zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbmdhICVzIgogCkBAIC0yMTE3Myw5ICsyNDk2OSw2IEBACiAjfiBtc2dpZCAiRG9uJ3Qga25vdyBob3cgdG8gY2xvbmUgJXMiCiAjfiBtc2dzdHIgIlZldCBpbnRlIGh1ciBtYW4ga2xvbmFyICVzIgogCi0jfiBtc2dpZCAic2hvdyBpZ25vcmVkIGZpbGVzIgotI34gbXNnc3RyICJ2aXNhIGlnbm9yZXJhZGUgZmlsZXIiCi0KICN+IG1zZ2lkICJEb24ndCBrbm93IGhvdyB0byBmZXRjaCBmcm9tICVzIgogI34gbXNnc3RyICJWZXQgaW50ZSBodXIgbWFuIGjDpG10YXIgZnLDpW4gJXMiCiAKQEAgLTIxMjI5LDkgKzI1MDIyLDYgQEAKICN+IG1zZ2lkICJiYXNlbmFtZSIKICN+IG1zZ3N0ciAiYmFzbmFtbiIKIAotI34gbXNnaWQgInByZXBlbmQgcGFyZW50IHByb2plY3QncyBiYXNlbmFtZSB0byBvdXRwdXQiCi0jfiBtc2dzdHIgImzDpGdnIHRpbGwgZsO2csOkbGRyYXByb2pla3RldHMgYmFzbmFtbiBpIHV0ZGF0YSIKLQogI34gbXNnaWQgIiIKICN+ICJXYXJuaW5nOiB0aGUgU0hBLTEgaXMgbWlzc2luZyBvciBpc24ndCBhIGNvbW1pdCBpbiB0aGUgZm9sbG93aW5nIGxpbmU6XG4iCiAjfiAiIC0gJGxpbmUiCkBAIC0yMTI0OSw5ICsyNTAzOSw2IEBACiAjfiBtc2dpZCAiT3IgeW91IGNhbiBhYm9ydCB0aGUgcmViYXNlIHdpdGggJ2dpdCByZWJhc2UgLS1hYm9ydCcuIgogI34gbXNnc3RyICJFbGxlciBzw6Uga2FuIGR1IGF2YnJ5dGEgb21iYXNlcmluZ2VuIG1lZCBcImdpdCByZWJhc2UgLS1hYm9ydFwiLiIKIAotI34gbXNnaWQgIkNvdWxkIG5vdCBvcGVuIGZpbGUgJyVzJyIKLSN+IG1zZ3N0ciAiS3VuZGUgaW50ZSDDtnBwbmEgZmlsZW4gXCIlc1wiIgotCiAjfiBtc2dpZCAiaW4gJTAuMWYgc2Vjb25kcyBhdXRvbWF0aWNhbGx5Li4uIgogI34gbXNnc3RyICJhdXRvbWF0aXNrdCBvbSAlMC4xZiBzZWt1bmRlci4uLiIKIApAQCAtMjEyNjksNyArMjUwNTYsNyBAQAogI34gIkRpZCB5b3UgZm9yZ2V0IHRvIHVzZSAnZ2l0IGFkZCc/IgogI34gbXNnc3RyICIiCiAjfiAiRHUgaGFyIGZvcnRmYXJhbmRlIHPDtmt2w6RnYXIgc29tIGludGUgc2xhZ2l0cyBzYW1tYW4gaSBkaXR0IGluZGV4LlxuIgotI34gIkdsw7ZtZGUgZHUgYW52w6RuZGEgXCJnaXQgYWRkXCI/IgorI34gIkdsw7ZtZGUgZHUgYXR0IGFudsOkbmRhIFwiZ2l0IGFkZFwiPyIKIAogI34gbXNnaWQgIiIKICN+ICJDYW5ub3QgdXBkYXRlIHBhdGhzIGFuZCBzd2l0Y2ggdG8gYnJhbmNoICclcycgYXQgdGhlIHNhbWUgdGltZS5cbiIKQEAgLTIxMzIwLDkgKzI1MTA3LDYgQEAKICN+IG1zZ2lkICJyZWYgJyVzJyBkb2VzIG5vdCBoYXZlICVsZCBjb21wb25lbnRzIHRvIDpzdHJpcCIKICN+IG1zZ3N0ciAicmVmZXJlbnNlbiBcIiVzXCIgaGFyIGludGUgJWxkIGtvbXBvbmVudGVyIGbDtnIgOnN0cmlwIgogCi0jfiBtc2dpZCAidW5rbm93biAlLipzIGZvcm1hdCAlcyIKLSN+IG1zZ3N0ciAib2vDpG50IFwiJS4qc1wiLWZvcm1hdCAlcyIKLQogI34gbXNnaWQgIlslczogZ29uZV0iCiAjfiBtc2dzdHIgIlslczogZsO2cnN2dW5uZW5dIgogCkBAIC0yMTQwMSw5ICsyNTE4NSw2IEBACiAjfiBtc2dpZCAiQ2Fubm90IGNoZXJyeS1waWNrIGR1cmluZyBhbm90aGVyIGNoZXJyeS1waWNrLiIKICN+IG1zZ3N0ciAiS2FuIGludGUgdXRmw7ZyYSBcImNoZXJyeS1waWNrXCIgdW5kZXIgZW4gYW5uYW4gXCJjaGVycnktcGlja1wiLiIKIAotI34gbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBsaW5lICVkLiIKLSN+IG1zZ3N0ciAiS2FuIGludGUgdG9sa2EgcmFkICVkLiIKLQogI34gbXNnaWQgIkNvdWxkIG5vdCBvcGVuICVzIgogI34gbXNnc3RyICJLdW5kZSBpbnRlIMO2cHBuYSAlcyIKIApAQCAtMjE0MTMsOSArMjUxOTQsNiBAQAogI34gbXNnaWQgIiVzOiAlcyIKICN+IG1zZ3N0ciAiJXM6ICVzIgogCi0jfiBtc2dpZCAiY2Fubm90IG9wZW4gJXM6ICVzIgotI34gbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgJXM6ICVzIgotCiAjfiBtc2dpZCAiWW91IG5lZWQgdG8gc2V0IHlvdXIgY29tbWl0dGVyIGluZm8gZmlyc3QiCiAjfiBtc2dzdHIgIkR1IG3DpXN0ZSBzdMOkbGxhIGluIGRpbiBpbmNoZWNrYXJpbmZvcm1hdGlvbiBmw7Zyc3QiCiAKQEAgLTIxNjQ1LDkgKzI1NDIzLDYgQEAKICN+IG1zZ2lkICInJXMnOiAlcyIKICN+IG1zZ3N0ciAiXCIlc1wiOiAlcyIKIAotI34gbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgJyVzJzogJXMiCi0jfiBtc2dzdHIgImthbiBpbnRlIGtvbW1hIMOldCBcIiVzXCI6ICVzIgotCiAjfiBtc2dpZCAiICAgIGdpdCBicmFuY2ggLWQgJXNcbiIKICN+IG1zZ3N0ciAiICAgIGdpdCBicmFuY2ggLWQgJXNcbiIKIApAQCAtMjE2NjQsOSArMjU0MzksNiBAQAogI34gbXNnaWQgImZhaWxlZCB0byByZW1vdmU6ICVzIgogI34gbXNnc3RyICJtaXNzbHlja2FkZXMgdGEgYm9ydDogJXMiCiAKLSN+IG1zZ2lkICJUaGUgLS1leGVjIG9wdGlvbiBtdXN0IGJlIHVzZWQgd2l0aCB0aGUgLS1pbnRlcmFjdGl2ZSBvcHRpb24iCi0jfiBtc2dzdHIgIkZsYWdnYW4gLS1leGVjIG3DpXN0ZSBhbnbDpG5kYXMgdGlsbHNhbW1hbnMgbWVkIGZsYWdnYW4gLS1pbnRlcmFjdGl2ZSIKLQogI34gbXNnaWQgIiIKICN+ICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyBub3QgaW5pdGlhbGl6ZWRcbiIKICN+ICJNYXliZSB5b3Ugd2FudCB0byB1c2UgJ3VwZGF0ZSAtLWluaXQnPyIKQEAgLTIxNzM1LDkgKzI1NTA3LDYgQEAKICN+IG1zZ2lkICJDb3VsZCBub3QgYXBwZW5kICclcyciCiAjfiBtc2dzdHIgIkt1bmRlIGludGUgbMOkZ2dhIHRpbGwgcMOlIFwiJXNcIiIKIAotI34gbXNnaWQgIk1pc3NpbmcgYXV0aG9yOiAlcyIKLSN+IG1zZ3N0ciAiRsO2cmZhdHRhcmUgc2FrbmFzOiAlcyIKLQogI34gbXNnaWQgIlRlc3RpbmcgIgogI34gbXNnc3RyICJUZXN0YXIiCiAKQEAgLTIxNzk1LDkgKzI1NTY0LDYgQEAKICN+IG1zZ2lkICJvcHRpb24gJXMgZG9lcyBub3QgYWNjZXB0IG5lZ2F0aXZlIGZvcm0iCiAjfiBtc2dzdHIgImZsYWdnYW4gJXMgZ29kdGFyIGludGUgbmVnYXRpdiBmb3JtIgogCi0jfiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIHZhbHVlICclcycgZm9yIG9wdGlvbiAlcyIKLSN+IG1zZ3N0ciAia3VuZGUgaW50ZSB0b2xrYSB2w6RyZGV0IFwiJXNcIiBmw7ZyIGZsYWdnYW4gJXMiCi0KICN+IG1zZ2lkICItYiBhbmQgLUIgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKICN+IG1zZ3N0ciAiLWIgb2NoIC1CIGthbiBpbnRlIGFudsOkbmRhcyBzYW10aWRpZ3QiCiAKQEAgLTIxODk4LDkgKzI1NjY0LDYgQEAKICN+IG1zZ2lkICIlczogY2Fubm90IGxvY2sgdGhlIHJlZiIKICN+IG1zZ3N0ciAiJXM6IGthbiBpbnRlIGzDpXNhIHJlZmVyZW5zZW4iCiAKLSN+IG1zZ2lkICIlczogY2Fubm90IHVwZGF0ZSB0aGUgcmVmIgotI34gbXNnc3RyICIlczoga2FuIGludGUgdXBwZGF0ZXJhIHJlZmVyZW5zZW4iCi0KICN+IG1zZ2lkICJjb21taXQgaGFzIGVtcHR5IG1lc3NhZ2UiCiAjfiBtc2dzdHIgImluY2hlY2tuaW5nZW4gaGFyIGV0dCB0b210IG1lZGRlbGFuZGUiCiAKZGlmZiAtLWdpdCBhL3BvL3RyLnBvIGIvcG8vdHIucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTc0ODI5NwotLS0gL2Rldi9udWxsCisrKyBiL3BvL3RyLnBvCkBAIC0wLDAgKzEsMjQ1NjMgQEAKKyMgVHVya2lzaCB0cmFuc2xhdGlvbnMgZm9yIEdpdAorIyBHaXQgVMO8cmvDp2Ugw6dldmlyaWxlcmkKKyMgQ29weXJpZ2h0IChDKSAyMDIwIEVtaXIgU0FSSSA8Yml0aWdjaGlAbWUuY29tPgorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgR2l0IHBhY2thZ2UuCisjIEVtaXIgU0FSSSA8Yml0aWdjaGlAbWUuY29tPiwgMjAyMAorIworIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgIworIyAgICAgR2l0IFTDvHJrw6dlIGthdnJhbWxhciBkaXppbmkgLyBHaXQgVHVya2lzaCBHbG9zc2FyeSAgICAjCisjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjCisjIMSwbmdpbGl6Y2UgICAgICAgICAgICAgICAgICAgfCBUw7xya8OnZSAgICAgICAgICAgICAgICAgICAgICAjCisjIOKAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAkyMKKyMgMy13YXkgbWVyZ2UgICAgICAgICAgICAgICAgIHwgMyB5w7ZubMO8IGJpcmxlxZ90aXJtZSAgICAgICAgICMKKyMgYmFyZSByZXBvc2l0b3J5ICAgICAgICAgICAgIHwgw6fEsXBsYWsgZGVwbyAgICAgICAgICAgICAgICAgIworIyBibG9iIG9iamVjdCAgICAgICAgICAgICAgICAgfCBpa2lsaSBuZXNuZSAgICAgICAgICAgICAgICAgIworIyBicmFuY2ggICAgICAgICAgICAgICAgICAgICAgfCBkYWwgICAgICAgICAgICAgICAgICAgICAgICAgIworIyBidW5kbGUgICAgICAgICAgICAgICAgICAgICAgfCBkZW1ldCAgICAgICAgICAgICAgICAgICAgICAgIworIyBjaGVja291dCAgICAgICAgICAgICAgICAgICAgfCDDp8Sxa8SxxZ8geWFwxLFtL3lhcG1hayAgICAgICAgICAjCisjIGNodW5rICAgICAgICAgICAgICAgICAgICAgICB8IGlyaSBwYXLDp2EgICAgICAgICAgICAgICAgICAgIworIyBjbG9uZSAgICAgICAgICAgICAgICAgICAgICAgfCBrbG9uKGxhbWFrKSAgICAgICAgICAgICAgICAgIworIyBjb21taXQgKGFkKSAgICAgICAgICAgICAgICAgfCBnw7ZuZGVyaSAgICAgICAgICAgICAgICAgICAgICMKKyMgY29tbWl0IChleWwuKSAgICAgICAgICAgICAgIHwgZ8O2bmRlcm1layAgICAgICAgICAgICAgICAgICAjCisjIGNvbW1pdGlzaCAgICAgICAgICAgICAgICAgICB8IGfDtm5kZXJpbXNpICAgICAgICAgICAgICAgICAgIworIyBjb25mbGljdCAgICAgICAgICAgICAgICAgICAgfCDDp2FrxLHFn21hICAgICAgICAgICAgICAgICAgICAgIworIyBkYW5nbGluZyBvYmplY3QgICAgICAgICAgICAgfCBzYWxsYW5hbiBuZXNuZSAgICAgICAgICAgICAgIworIyBkZXRhY2hlZCBIRUFEICAgICAgICAgICAgICAgfCBheXLEsWsgSEVBRCAgICAgICAgICAgICAgICAgICMKKyMgZGlydHkgICAgICAgICAgICAgICAgICAgICAgIHwga2lybGkgICAgICAgICAgICAgICAgICAgICAgICMKKyMgZXZpbCBtZXJnZSAgICAgICAgICAgICAgICAgIHwgdcSfdXJzdXogYmlybGXFn3Rpcm1lICAgICAgICAgIworIyBmYXN0LWZvcndhcmQgICAgICAgICAgICAgICAgfCBpbGVyaSBzYXLEsW0vc2FybWFrICAgICAgICAgICMKKyMgZmV0Y2ggICAgICAgICAgICAgICAgICAgICAgIHwgZ2V0aXJtZShrKSAgICAgICAgICAgICAgICAgICMKKyMgZml4dXAgICAgICAgICAgICAgICAgICAgICAgIHwgZMO8emVsdG1layAgICAgICAgICAgICAgICAgICAjCisjIGdyYWZ0ICAgICAgICAgICAgICAgICAgICAgICB8IGHFn8SxICAgICAgICAgICAgICAgICAgICAgICAgICMKKyMgaGFzaCAgICAgICAgICAgICAgICAgICAgICAgIHwgc2HEn2xhbWEgICAgICAgICAgICAgICAgICAgICAjCisjIGhlYWQgICAgICAgICAgICAgICAgICAgICAgICB8IGRhbCB1Y3UgICAgICAgICAgICAgICAgICAgICAjCisjIGh1bmsgICAgICAgICAgICAgICAgICAgICAgICB8IHBhcsOnYSAgICAgICAgICAgICAgICAgICAgICAgIworIyBpbmZsYXRlICAgICAgICAgICAgICAgICAgICAgfCBzw7ZuZMO8cm1layAgICAgICAgICAgICAgICAgICAjCisjIGluaXQgICAgICAgICAgICAgICAgICAgICAgICB8IGlsa2xlbmRpcm1layAgICAgICAgICAgICAgICAjCisjIG1hcmsgICAgICAgICAgICAgICAgICAgICAgICB8IGltKGxlbWVrKSAgICAgICAgICAgICAgICAgICAjCisjIG1lcmdlICAgICAgICAgICAgICAgICAgICAgICB8IGJpcmxlxZ90aXJtZShrKSAgICAgICAgICAgICAgIworIyBvY3RvcHVzICAgICAgICAgICAgICAgICAgICAgfCBhaHRhcG90ICAgICAgICAgICAgICAgICAgICAgIworIyBvdmVybGF5ICAgICAgICAgICAgICAgICAgICAgfCB5ZXJwYXlsYcWfxLFtICAgICAgICAgICAgICAgICAjCisjIHBhY2sgICAgICAgICAgICAgICAgICAgICAgICB8IHBha2V0ICAgICAgICAgICAgICAgICAgICAgICAjCisjIHBhcmVudCAgICAgICAgICAgICAgICAgICAgICB8IMO8c3Qgw7ZnZSAgICAgICAgICAgICAgICAgICAgICMKKyMgcGF0Y2ggICAgICAgICAgICAgICAgICAgICAgIHwgeWFtYSAgICAgICAgICAgICAgICAgICAgICAgICMKKyMgcGF0aHNwZWMgICAgICAgICAgICAgICAgICAgIHwgeW9sIGJlbGlydGVjaSAgICAgICAgICAgICAgICMKKyMgcGF0dGVybiAgICAgICAgICAgICAgICAgICAgIHwgZGl6Z2kgICAgICAgICAgICAgICAgICAgICAgICMKKyMgcG9yY2VsYWluICAgICAgICAgICAgICAgICAgIHwgb2t1bmFiaWxpciAgICAgICAgICAgICAgICAgICMKKyMgcHJ1bmUgICAgICAgICAgICAgICAgICAgICAgIHwgYnVkYW1hayAgICAgICAgICAgICAgICAgICAgICMKKyMgcHNldWRvcmVmICAgICAgICAgICAgICAgICAgIHwgeWFsYW5jxLFrdGFuIGJhxZ92dXJ1ICAgICAgICAgIworIyBwdWxsICAgICAgICAgICAgICAgICAgICAgICAgfCDDp2VrbWUoaykgICAgICAgICAgICAgICAgICAgICMKKyMgcHVzaCAgICAgICAgICAgICAgICAgICAgICAgIHwgaXRtZShrKSAgICAgICAgICAgICAgICAgICAgICMKKyMgcmViYXNlICAgICAgICAgICAgICAgICAgICAgIHwgeWVuaWRlbiB0ZW1lbGxlbmRpcm1lKGspICAgICMKKyMgcmVjb3JkICAgICAgICAgICAgICAgICAgICAgIHwga2F5xLF0IHlheihtYWspICAgICAgICAgICAgICAjCisjIHJlZiAgICAgICAgICAgICAgICAgICAgICAgICB8IGJhxZ92dXJ1ICAgICAgICAgICAgICAgICAgICAgIworIyByZWZsb2cgICAgICAgICAgICAgICAgICAgICAgfCBiYcWfdnVydSBnw7xubMO8xJ/DvCAgICAgICAgICAgICAjCisjIHJlZnNwZWMgICAgICAgICAgICAgICAgICAgICB8IGJhxZ92dXJ1IGJlbGlydGVjaSAgICAgICAgICAgIworIyByZWdpc3RlciAgICAgICAgICAgICAgICAgICAgfCBrYXnEsXQgeWFwKG1haykgICAgICAgICAgICAgICMKKyMgcmVtb3RlICAgICAgICAgICAgICAgICAgICAgIHwgdXphayBrb251bSAgICAgICAgICAgICAgICAgICMKKyMgcmVtb3RlIHJlcG9zaXRvcnkgICAgICAgICAgIHwgdXphayBkZXBvICAgICAgICAgICAgICAgICAgICMKKyMgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCAgICAgIHwgdXphayBpemxlbWUgZGFsxLEgICAgICAgICAgICAjCisjIHJlcG9zaXRvcnkgICAgICAgICAgICAgICAgICB8IGRlcG8gICAgICAgICAgICAgICAgICAgICAgICAjCisjIHJlc29sdmUgICAgICAgICAgICAgICAgICAgICB8IMOnw7Z6w7xtL8Onw7Z6bWVrICAgICAgICAgICAgICAgICMKKyMgcmV2ZXJ0ICAgICAgICAgICAgICAgICAgICAgIHwgZ2VyaSBhbChtYWspICAgICAgICAgICAgICAgICMKKyMgcmV3aW5kICAgICAgICAgICAgICAgICAgICAgIHwgZ2VyaSBzYXIobWFrKSAgICAgICAgICAgICAgICMKKyMgc2F2ZSAgICAgICAgICAgICAgICAgICAgICAgIHwga2F5ZGV0KG1laykgICAgICAgICAgICAgICAgICMKKyMgc2hhbGxvdyBjbG9uZSAgICAgICAgICAgICAgIHwgc8SxxJ8ga2xvbiAgICAgICAgICAgICAgICAgICAgIworIyBzaGFsbG93IHJlcG9zaXRvcnkgICAgICAgICAgfCBzxLHEnyBkZXBvICAgICAgICAgICAgICAgICAgICAjCisjIHNwYXJzZS1jaGVja291dCAgICAgICAgICAgICB8IGFyYWzEsWtsxLEgw6fEsWvEscWfICAgICAgICAgICAgICAjCisjIHNxdWFzaCAgICAgICAgICAgICAgICAgICAgICB8IHTEsWvEscWfdMSxcihtYWspICAgICAgICAgICAgICAgIworIyBzdGFnZSAgICAgICAgICAgICAgICAgICAgICAgfCBoYXrEsXJsYShtYWspICAgICAgICAgICAgICAgICMKKyMgc3RhZ2luZyBhcmVhICAgICAgICAgICAgICAgIHwgKGfDtm5kZXJpKSBoYXrEsXJsYW1hIGFsYW7EsSAgICMKKyMgc3Rhc2ggICAgICAgICAgICAgICAgICAgICAgIHwgenVsYShsYW1haykgICAgICAgICAgICAgICAgICMKKyMgc3RyaW5nICAgICAgICAgICAgICAgICAgICAgIHwgZGl6aSAgICAgICAgICAgICAgICAgICAgICAgICMKKyMgc3ViZGlyZWN0b3J5ICAgICAgICAgICAgICAgIHwgYWx0ZGl6aW4gICAgICAgICAgICAgICAgICAgICMKKyMgc3VibW9kdWxlICAgICAgICAgICAgICAgICAgIHwgYWx0bW9kw7xsICAgICAgICAgICAgICAgICAgICAjCisjIHN5bWxpbmsgICAgICAgICAgICAgICAgICAgICB8IHNlbWJvbGlrIGJhxJ8gICAgICAgICAgICAgICAgIworIyBzeW1yZWYgICAgICAgICAgICAgICAgICAgICAgfCBzZW1ib2xpayBiYcWfdnVydSAgICAgICAgICAgICMKKyMgdGFnICAgICAgICAgICAgICAgICAgICAgICAgIHwgZXRpa2V0ICAgICAgICAgICAgICAgICAgICAgICMKKyMgdGVtcGxhdGUgICAgICAgICAgICAgICAgICAgIHwgxZ9hYmxvbiAgICAgICAgICAgICAgICAgICAgICAjCisjIHRvcGljIGJyYW5jaCAgICAgICAgICAgICAgICB8IGtpxZ9pc2VsIGRhbCAgICAgICAgICAgICAgICAgIworIyB0cmFpbGVyICAgICAgICAgICAgICAgICAgICAgfCBhcnRiaWxnaSAgICAgICAgICAgICAgICAgICAgIworIyB0cmVlICAgICAgICAgICAgICAgICAgICAgICAgfCBhxJ9hw6cgICAgICAgICAgICAgICAgICAgICAgICAjCisjIHRyZWVpc2ggICAgICAgICAgICAgICAgICAgICB8IGHEn2FjxLFtc8SxICAgICAgICAgICAgICAgICAgICAjCisjIHVuc3RhZ2UgICAgICAgICAgICAgICAgICAgICB8IGhhesSxcmzEsWt0YW4gw6fEsWthcihtYWspICAgICAgIworIyB1cHN0cmVhbSAgICAgICAgICAgICAgICAgICAgfCDDvHN0a2F5bmFrICAgICAgICAgICAgICAgICAgICMKKyMgd29ya3RyZWUvd29ya2luZyB0cmVlICAgICAgIHwgw6dhbMSxxZ9tYSBhxJ9hY8SxICAgICAgICAgICAgICAgIworIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgIworIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogR2l0IFR1cmtpc2ggTG9jYWxpemF0aW9uIFByb2plY3RcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogR2l0IE1haWxpbmcgTGlzdCA8Z2l0QHZnZXIua2VybmVsLm9yZz5cbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAyMC0wMy0xMSAxNToyNiswODAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAyMC0wMy0xMCAyMzowMCswMzAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBFbWlyIFNBUkkgPGJpdGlnY2hpQG1lLmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBUdXJraXNoIChodHRwczovL2dpdGh1Yi5jb20vYml0aWdjaGkvZ2l0LXBvLylcbiIKKyJMYW5ndWFnZTogdHJcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD0obiAhPSAxKTtcbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MzY4CisjLCBjLWZvcm1hdAorbXNnaWQgIkh1aCAoJXMpPyIKK21zZ3N0ciAiUGFyZG9uICglcyk/IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo1MjEgYWRkLWludGVyYWN0aXZlLmM6ODIyIHNlcXVlbmNlci5jOjMxMjQKKyM6IHNlcXVlbmNlci5jOjM1NjIgYnVpbHRpbi9yZWJhc2UuYzo4NzUgYnVpbHRpbi9yZWJhc2UuYzoxNjg3CisjOiBidWlsdGluL3JlYmFzZS5jOjIwODYgYnVpbHRpbi9yZWJhc2UuYzoyMTMwCittc2dpZCAiY291bGQgbm90IHJlYWQgaW5kZXgiCittc2dzdHIgImluZGVrcyBva3VuYW1hZMSxIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo1NzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyNjkKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjk0Cittc2dpZCAiYmluYXJ5IgorbXNnc3RyICJpa2lsaSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjM0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjc4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMzMgorbXNnaWQgIm5vdGhpbmciCittc2dzdHIgImhpw6diaXIgxZ9leSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjM1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzE0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMyOQorbXNnaWQgInVuY2hhbmdlZCIKK21zZ3N0ciAiZGXEn2nFn3RpcmlsbWVtacWfIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2NzIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NDMKK21zZ2lkICJVcGRhdGUiCittc2dzdHIgIkfDvG5jZWxsZSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njg5IGFkZC1pbnRlcmFjdGl2ZS5jOjg3NworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhZ2UgJyVzJyIKK21zZ3N0ciAiJyVzJyBoYXrEsXJsYW5hbWFkxLEiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY5NSBhZGQtaW50ZXJhY3RpdmUuYzo4ODQgc2VxdWVuY2VyLmM6MzMxNworIzogYnVpbHRpbi9yZWJhc2UuYzo4OTkKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgaW5kZXgiCittc2dzdHIgImluZGVrcyB5YXrEsWxhbWFkxLEiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAidXBkYXRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInVwZGF0ZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAiJWQgeW9sIGfDvG5jZWxsZW5kaVxuIgorbXNnc3RyWzFdICIlZCB5b2wgZ8O8bmNlbGxlbmRpXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjcxNiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3OAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAibm90ZTogJXMgaXMgdW50cmFja2VkIG5vdy5cbiIKK21zZ3N0ciAibm90OiAlcyBhcnTEsWsgaXpsZW5taXlvci5cbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NzIxIGFwcGx5LmM6NDExMCBidWlsdGluL2NoZWNrb3V0LmM6MjgxCisjOiBidWlsdGluL3Jlc2V0LmM6MTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ha2VfY2FjaGVfZW50cnkgZmFpbGVkIGZvciBwYXRoICclcyciCittc2dzdHIgIiclcycgeW9sdSBpw6dpbiBtYWtlX2NhY2hlX2VudHJ5IGJhxZ9hcsSxc8SxeiBvbGR1IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3NTEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NTUKK21zZ2lkICJSZXZlcnQiCittc2dzdHIgIkdlcmkgYWwiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjc2NworbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBIRUFEXnt0cmVlfSIKK21zZ3N0ciAiSEVBRF57dHJlZX0gYXlyxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjgwNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzMQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAicmV2ZXJ0ZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJyZXZlcnRlZCAlZCBwYXRoc1xuIgorbXNnc3RyWzBdICIlZCB5b2wgZ2VyaSBhbMSxbmTEsVxuIgorbXNnc3RyWzFdICIlZCB5b2wgZ2VyaSBhbMSxbmTEsVxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4NTYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gdW50cmFja2VkIGZpbGVzLlxuIgorbXNnc3RyICLEsHpsZW5tZXllbiBkb3N5YSB5b2suXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjg2MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY4OQorbXNnaWQgIkFkZCB1bnRyYWNrZWQiCittc2dzdHIgIsSwemxlbm1leWVubGVyaSBla2xlIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo4ODcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MjUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgImFkZGVkICVkIHBhdGhcbiIKK21zZ2lkX3BsdXJhbCAiYWRkZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAiJWQgeW9sIGVrbGVuZGlcbiIKK21zZ3N0clsxXSAiJWQgeW9sIGVrbGVuZGlcbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHVubWVyZ2VkOiAlcyIKK21zZ3N0ciAiYmlybGXFn3RpcmlsbWV5ZW5sZXIgeW9rIHNhecSxbMSxeW9yOiAlcyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTI5IGFkZC1wYXRjaC5jOjE2NzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzY2CisjLCBjLWZvcm1hdAorbXNnaWQgIk9ubHkgYmluYXJ5IGZpbGVzIGNoYW5nZWQuXG4iCittc2dzdHIgIllhbG7EsXpjYSBpa2lsaSBkb3N5YWxhciBkZcSfacWfdGlyaWxkaS5cbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTMxIGFkZC1wYXRjaC5jOjE2NzMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzY4CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGNoYW5nZXMuXG4iCittc2dzdHIgIkRlxJ9pxZ9pa2xpayB5b2suXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkzNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNzYKK21zZ2lkICJQYXRjaCB1cGRhdGUiCittc2dzdHIgIllhbWEgZ8O8bmNlbGxlbWVzaSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTc0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1NAorbXNnaWQgIlJldmlldyBkaWZmIgorbXNnc3RyICJkaWZmJ2kgZ8O2emRlbiBnZcOnaXIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDIKK21zZ2lkICJzaG93IHBhdGhzIHdpdGggY2hhbmdlcyIKK21zZ3N0ciAiZGXEn2nFn3RpcmlsbWnFnyB5b2xsYXLEsSBnw7ZzdGVyIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA0Cittc2dpZCAiYWRkIHdvcmtpbmcgdHJlZSBzdGF0ZSB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIgorbXNnc3RyICJoYXrEsXJsYW5hbiBkZcSfacWfaWtsaWtsZXJlIMOnYWzEscWfbWEgYcSfYWPEsSBkdXJ1bXVudSBla2xlIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA2Cittc2dpZCAicmV2ZXJ0IHN0YWdlZCBzZXQgb2YgY2hhbmdlcyBiYWNrIHRvIHRoZSBIRUFEIHZlcnNpb24iCittc2dzdHIgImhhesSxcmxhbmFuIGRlxJ9pxZ9pa2xpa2xlcmkgSEVBRCBzw7xyw7xtw7xuZSBnZXJpIGFsIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA4Cittc2dpZCAicGljayBodW5rcyBhbmQgdXBkYXRlIHNlbGVjdGl2ZWx5IgorbXNnc3RyICJwYXLDp2FsYXLEsSBzZcOnIHZlIHNlw6dlcmVrIGfDvG5jZWxsZSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAxMAorbXNnaWQgInZpZXcgZGlmZiBiZXR3ZWVuIEhFQUQgYW5kIGluZGV4IgorbXNnc3RyICJIRUFEIHZlIGluZGVrcyBhcmFzxLFuZGFraSBkaWZmJ2kgZ8O2ciIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAxMgorbXNnaWQgImFkZCBjb250ZW50cyBvZiB1bnRyYWNrZWQgZmlsZXMgdG8gdGhlIHN0YWdlZCBzZXQgb2YgY2hhbmdlcyIKK21zZ3N0ciAiaXpsZW5tZXllbiBkb3N5YWxhcsSxbiBpw6dlcmnEn2luaSBoYXrEsXJsYW5hbiBkZcSfacWfaWtsaWtsZXJlIGVrbGUiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjAgYWRkLWludGVyYWN0aXZlLmM6MTA2OQorbXNnaWQgIlByb21wdCBoZWxwOiIKK21zZ3N0ciAixLBzdGVtIHlhcmTEsW3EsToiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjIKK21zZ2lkICJzZWxlY3QgYSBzaW5nbGUgaXRlbSIKK21zZ3N0ciAidGVrIGJpciDDtmdlIHNlw6ciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjQKK21zZ2lkICJzZWxlY3QgYSByYW5nZSBvZiBpdGVtcyIKK21zZ3N0ciAiYmlyIMO2Z2UgZXJpbWkgc2XDpyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyNgorbXNnaWQgInNlbGVjdCBtdWx0aXBsZSByYW5nZXMiCittc2dzdHIgImJpcmRlbiDDp29rIGVyaW0gc2XDpyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyOCBhZGQtaW50ZXJhY3RpdmUuYzoxMDczCittc2dpZCAic2VsZWN0IGl0ZW0gYmFzZWQgb24gdW5pcXVlIHByZWZpeCIKK21zZ3N0ciAiYmVuemVyc2l6IMO2bmVrZSBkYXlhbmFyYWsgw7ZnZSBzZcOnIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDMwCittc2dpZCAidW5zZWxlY3Qgc3BlY2lmaWVkIGl0ZW1zIgorbXNnc3RyICJiZWxpcnRpbGVuIMO2Z2VsZXJpbiBzZcOnaW1pbmkga2FsZMSxciIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAzMgorbXNnaWQgImNob29zZSBhbGwgaXRlbXMiCittc2dzdHIgInTDvG0gw7ZnZWxlcmkgc2XDpyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAzNAorbXNnaWQgIihlbXB0eSkgZmluaXNoIHNlbGVjdGluZyIKK21zZ3N0ciAiKGJvxZ8pIHNlw6dpbWkgYml0aXIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwNzEKK21zZ2lkICJzZWxlY3QgYSBudW1iZXJlZCBpdGVtIgorbXNnc3RyICJudW1hcmFsYW5kxLFyxLFsbcSxxZ8gYmlyIMO2Z2Ugc2XDpyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3NQorbXNnaWQgIihlbXB0eSkgc2VsZWN0IG5vdGhpbmciCittc2dzdHIgIihib8WfKSBoacOnYmlyIMWfZXkgc2XDp21lIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDgzIGJ1aWx0aW4vY2xlYW4uYzo4MjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODUxCittc2dpZCAiKioqIENvbW1hbmRzICoqKiIKK21zZ3N0ciAiKioqIEtvbXV0bGFyICoqKiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA4NCBidWlsdGluL2NsZWFuLmM6ODIzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTg0OAorbXNnaWQgIldoYXQgbm93IgorbXNnc3RyICLFnmltZGkgbmUiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJzdGFnZWQiCittc2dzdHIgImhhesSxcmxhbm3EscWfIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTM2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEzCittc2dpZCAidW5zdGFnZWQiCittc2dzdHIgImhhesSxcmxhbm1hbcSxxZ8iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgYXBwbHkuYzo0OTY3IGFwcGx5LmM6NDk3MCBidWlsdGluL2FtLmM6MjI1MQorIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9jbG9uZS5jOjEyMyBidWlsdGluL2ZldGNoLmM6MTQ0CisjOiBidWlsdGluL21lcmdlLmM6Mjc0IGJ1aWx0aW4vcHVsbC5jOjE4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTQ4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEzCittc2dpZCAicGF0aCIKK21zZ3N0ciAieW9sIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTQzCittc2dpZCAiY291bGQgbm90IHJlZnJlc2ggaW5kZXgiCittc2dzdHIgImluZGVrcyB5ZW5pbGVuZW1lZGkiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExNTcgYnVpbHRpbi9jbGVhbi5jOjc4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnllLlxuIgorbXNnc3RyICJIb8Wfw6dhIGthbC5cbiIKKworIzogYWRkLXBhdGNoLmM6MzMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiS2lwIGRlxJ9pxZ9pbWkgaGF6xLFybGFuc8SxbiBtxLEgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjM0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQyOQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIlNpbG1lIGhhesSxcmxhbnPEsW4gbcSxIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzozNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiQnUgcGFyw6dhIGhhesSxcmxhbnPEsW4gbcSxIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzozNworbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJzdGFnaW5nLiIKK21zZ3N0ciAiIgorIkXEn2VyIHlhbWEgc29ydW5zdXpjYSB1eWd1bGFuxLFyc2EgZMO8emVubGVuZW4gcGFyw6dhIGRlcmhhbCBoYXrEsXJsYW1hIGnDp2luICIKKyJpbWxlbmVjZWt0aXIuIgorCisjOiBhZGQtcGF0Y2guYzo0MAorbXNnaWQgIiIKKyJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHN0YWdlIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIGJ1IHBhcsOnYXnEsSBoYXrEsXJsYVxuIgorIm4gLSBidSBwYXLDp2F5xLEgaGF6xLFybGFtYVxuIgorInEgLSDDp8SxazsgYnUgcGFyw6dhecSxIHZleWEga2FsYW5sYXJkYW4gaGVyaGFuZ2kgYmlyaW5pIGhhesSxcmxhbWFcbiIKKyJhIC0gYnUgcGFyw6dhecSxIHZlIHNvbnJha2kgdMO8bSBwYXLDp2FsYXLEsSBoYXrEsXJsYVxuIgorImQgLSBidSBwYXLDp2F5xLEgdmV5YSBzb25yYWtpIHBhcsOnYWxhcmRhbiBoZXJoYW5naSBiaXJpbmkgaGF6xLFybGFtYVxuIgorCisjOiBhZGQtcGF0Y2guYzo1NCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzMKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YXNoIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJLaXAgZGXEn2nFn2ltaSB6dWxhbGFuc8SxbiBtxLEgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjU1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzNAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3Rhc2ggZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIlNpbG1lIHp1bGFsYW5zxLFuIG3EsSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NTYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkJ1IHBhcsOnYSB6dWxhbGFuc8SxbiBtxLEgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjU4Cittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorInN0YXNoaW5nLiIKK21zZ3N0ciAiIgorIkXEn2VyIHlhbWEgc29ydW5zdXpjYSB1eWd1bGFuxLFyc2EgZMO8emVubGVuZW4gcGFyw6dhIGRlcmhhbCB6dWxhbGFtYSBpw6dpbiAiCisiaW1sZW5lY2VrdGlyLiIKKworIzogYWRkLXBhdGNoLmM6NjEKK21zZ2lkICIiCisieSAtIHN0YXNoIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFzaCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFzaCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBidSBwYXLDp2F5xLEgenVsYWxhXG4iCisibiAtIGJ1IHBhcsOnYXnEsSB6dWxhbGFtYVxuIgorInEgLSDDp8SxazsgYnUgcGFyw6dhecSxIHZleWEga2FsYW5sYXJkYW4gaGVyaGFuZ2kgYmlyaW5pIHp1bGFsYW1hXG4iCisiYSAtIGJ1IHBhcsOnYXnEsSB2ZSBzb25yYWtpIHTDvG0gcGFyw6dhbGFyxLEgenVsYWxhXG4iCisiZCAtIGJ1IHBhcsOnYXnEsSB2ZXlhIHNvbnJha2kgcGFyw6dhbGFyZGFuIGhlcmhhbmdpIGJpcmluaSB6dWxhbGFtYVxuIgorCisjOiBhZGQtcGF0Y2guYzo3NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIktpcCBkZcSfacWfaW1pIGhhesSxcmzEsWt0YW4gw6fEsWthcsSxbHPEsW4gbcSxIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo3OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzkKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIlNpbG1lIGhhesSxcmzEsWt0YW4gw6fEsWthcsSxbHPEsW4gbcSxIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo3OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJCdSBwYXLDp2EgaGF6xLFybMSxa3RhbiDDp8Sxa2FyxLFsc8SxbiBtxLEgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjgxCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorInVuc3RhZ2luZy4iCittc2dzdHIgIiIKKyJFxJ9lciB5YW1hIHNvcnVuc3V6Y2EgdXlndWxhbsSxcnNhLCBkw7x6ZW5sZW5lbiBwYXLDp2EgZGVyaGFsIGhhesSxcmzEsWt0YW4gIgorIsOnxLFrYXLEsW0gacOnaW4gaW1sZW5lY2VrdGlyLiIKKworIzogYWRkLXBhdGNoLmM6ODQKK21zZ2lkICIiCisieSAtIHVuc3RhZ2UgdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVua1xuIgorInEgLSBxdWl0OyBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSB1bnN0YWdlIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gYnUgcGFyw6dhecSxIGhhesSxcmzEsWt0YW4gw6fEsWthclxuIgorIm4gLSBidSBwYXLDp2F5xLEgaGF6xLFybMSxa3RhbiDDp8Sxa2FybWFcbiIKKyJxIC0gw6fEsWs7IGJ1IHBhcsOnYXnEsSB2ZXlhIGthbGFubGFyZGFuIGhlcmhhbmdpIGJpcmluaSBoYXrEsXJsxLFrdGFuIMOnxLFrYXJtYVxuIgorImEgLSBidSBwYXLDp2F5xLEgdmUgc29ucmFraSB0w7xtIHBhcsOnYWxhcsSxIGhhesSxcmzEsWt0YW4gw6fEsWthclxuIgorImQgLSBidSBwYXLDp2F5xLEgdmV5YSBzb25yYWtpIHBhcsOnYWxhcmRhbiBoZXJoYW5naSBiaXJpbmkgaGF6xLFybMSxa3RhbiDDp8Sxa2FybWFcbiIKKworIzogYWRkLXBhdGNoLmM6OTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiS2lwIGRlxJ9pxZ9pbWkgaW5kZWtzZSB1eWd1bGFuc8SxbiBtxLEgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEwMCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJTaWxtZSBpbmRla3NlIHV5Z3VsYW5zxLFuIG3EsSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJCdSBwYXLDp2EgaW5kZWtzZSB1eWd1bGFuc8SxbiBtxLEgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEwMyBhZGQtcGF0Y2guYzoxNjggYWRkLXBhdGNoLmM6MjExCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorImFwcGx5aW5nLiIKK21zZ3N0ciAiIgorIkXEn2VyIHlhbWEgc29ydW5zdXpjYSB1eWd1bGFuxLFyc2EgZMO8emVubGVuZW4gcGFyw6dhIGRlcmhhbCB1eWd1bGFtYSBpw6dpbiAiCisiaW1sZW5lY2VrdGlyLiIKKworIzogYWRkLXBhdGNoLmM6MTA2Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gYnUgcGFyw6dhecSxIGluZGVrc2UgdXlndWxhXG4iCisibiAtIGJ1IHBhcsOnYXnEsSBpbmRla3NlIHV5Z3VsYW1hXG4iCisicSAtIMOnxLFrOyBidSBwYXLDp2F5xLEgdmV5YSBrYWxhbmxhcmRhbiBoZXJoYW5naSBiaXJpbmkgdXlndWxhbWFcbiIKKyJhIC0gYnUgcGFyw6dhecSxIHZlIHNvbnJha2kgdMO8bSBwYXLDp2FsYXLEsSB1eWd1bGFcbiIKKyJkIC0gYnUgcGFyw6dhecSxIHZleWEgc29ucmFraSBwYXLDp2FsYXJkYW4gaGVyaGFuZ2kgYmlyaW5pIHV5Z3VsYW1hXG4iCisKKyM6IGFkZC1wYXRjaC5jOjEyMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2MworIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJLaXAgZGXEn2nFn2ltaSDDp2FsxLHFn21hIGHEn2FjxLFuZGFuIGF0xLFsc8SxbiBtxLEgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyMiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDkKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2NAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBkZWxldGlvbiBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJTaWxtZSDDp2FsxLHFn21hIGHEn2FjxLFuZGFuIGF0xLFsc8SxbiBtxLEgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyMyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiQnUgcGFyw6dhIMOnYWzEscWfbWEgYcSfYWPEsW5kYW4gYXTEsWxzxLFuIG3EsSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTI1IGFkZC1wYXRjaC5jOjE0NyBhZGQtcGF0Y2guYzoxOTAKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisiZGlzY2FyZGluZy4iCittc2dzdHIgIiIKKyJFxJ9lciB5YW1hIHNvcnVuc3V6Y2EgdXlndWxhbsSxcnNhIGTDvHplbmxlbmVuIHBhcsOnYSBkZXJoYWwgxLFza2FydGF5YSDDp8Sxa2FyxLFtICIKKyJpw6dpbiBpbWxlbmVjZWt0aXIuIgorCisjOiBhZGQtcGF0Y2guYzoxMjggYWRkLXBhdGNoLmM6MTkzCittc2dpZCAiIgorInkgLSBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGRpc2NhcmQgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBidSBwYXLDp2F5xLEgw6dhbMSxxZ9tYSBhxJ9hY8SxbmRhbiBhdFxuIgorIm4gLSBidSBwYXLDp2F5xLEgw6dhbMSxxZ9tYSBhxJ9hY8SxbmRhbiBhdG1hXG4iCisicSAtIMOnxLFrOyBidSBwYXLDp2F5xLEgdmV5YSBrYWxhbmxhcmRhbiBoZXJoYW5naSBiaXJpbmkgYXRtYVxuIgorImEgLSBidSBwYXLDp2F5xLEgdmUgc29ucmFraSB0w7xtIHBhcsOnYWxhcsSxIGF0XG4iCisiZCAtIGJ1IHBhcsOnYXnEsSB2ZXlhIHNvbnJha2kgcGFyw6dhbGFyZGFuIGhlcmhhbmdpIGJpcmluaSBhdG1hXG4iCisKKyM6IGFkZC1wYXRjaC5jOjE0MyBhZGQtcGF0Y2guYzoxODYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDUzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICIiCisiS2lwIGRlxJ9pxZ9pbWkgaW5kZWtzdGVuIHZlIMOnYWzEscWfbWEgYcSfYWPEsW5kYW4gYXTEsWxzxLFuIG3EsSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ0IGFkZC1wYXRjaC5jOjE4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIlNpbG1lIGluZGVrc3RlbiB2ZSDDp2FsxLHFn21hIGHEn2FjxLFuZGFuIGF0xLFsc8SxbiBtxLEgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE0NSBhZGQtcGF0Y2guYzoxODggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDU1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiQnUgcGFyw6dhIGluZGVrc3RlbiB2ZSDDp2FsxLHFn21hIGHEn2FjxLFuZGFuIGF0xLFsc8SxbiBtxLEgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE1MAorbXNnaWQgIiIKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGRpc2NhcmQgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBidSBwYXLDp2F5xLEgw6dhbMSxxZ9tYSBhxJ9hY8SxbmRhbiB2ZSBpbmRla3N0ZW4gYXRcbiIKKyJuIC0gYnUgcGFyw6dhecSxIMOnYWzEscWfbWEgYcSfYWPEsW5kYW4gdmUgaW5kZWtzdGVuIGF0bWFcbiIKKyJxIC0gw6fEsWs7IGJ1IHBhcsOnYXnEsSB2ZXlhIGthbGFubGFyZGFuIGhlcmhhbmdpIGJpcmluaSBhdG1hXG4iCisiYSAtIGJ1IHBhcsOnYXnEsSB2ZSBzb25yYWtpIHTDvG0gcGFyw6dhbGFyxLEgYXRcbiIKKyJkIC0gYnUgcGFyw6dhecSxIHZleWEgc29ucmFraSBwYXLDp2FsYXJkYW4gaGVyaGFuZ2kgYmlyaW5pIGF0bWFcbiIKKworIzogYWRkLXBhdGNoLmM6MTY0IGFkZC1wYXRjaC5jOjIwNyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiIgorIktpcCBkZcSfacWfaW1pIGluZGVrc2UgdmUgw6dhbMSxxZ9tYSBhxJ9hY8SxbmEgdXlndWxhbnPEsW4gbcSxIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNjUgYWRkLXBhdGNoLmM6MjA4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1OQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJTaWxtZSBpbmRla3NlIHZlIMOnYWzEscWfbWEgYcSfYWPEsW5hIHV5Z3VsYW5zxLFuIG3EsSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTY2IGFkZC1wYXRjaC5jOjIwOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkJ1IHBhcsOnYSBpbmRla3NlIHZlIMOnYWzEscWfbWEgYcSfYWPEsW5hIHV5Z3VsYW5zxLFuIG3EsSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTcxCittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSBidSBwYXLDp2F5xLEgaW5kZWtzZSB2ZSDDp2FsxLHFn21hIGHEn2FjxLFuYSB1eWd1bGFcbiIKKyJuIC0gYnUgcGFyw6dhecSxIGluZGVrc2UgdmUgw6dhbMSxxZ9tYSBhxJ9hY8SxbmEgdXlndWxhbWFcbiIKKyJxIC0gw6fEsWs7IGJ1IHBhcsOnYXnEsSB2ZXlhIGthbGFubGFyZGFuIGhlcmhhbmdpIGJpcmluaSB1eWd1bGFtYVxuIgorImEgLSBidSBwYXLDp2F5xLEgdmUgc29ucmFraSB0w7xtIHBhcsOnYWxhcsSxIHV5Z3VsYVxuIgorImQgLSBidSBwYXLDp2F5xLEgdmV5YSBzb25yYWtpIHBhcsOnYWxhcmRhbiBoZXJoYW5naSBiaXJpbmkgdXlndWxhbWFcbiIKKworIzogYWRkLXBhdGNoLmM6MjE0Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gYnUgcGFyw6dhecSxIMOnYWzEscWfbWEgYcSfYWPEsW5hIHV5Z3VsYVxuIgorIm4gLSBidSBwYXLDp2F5xLEgw6dhbMSxxZ9tYSBhxJ9hY8SxbmEgdXlndWxhbWFcbiIKKyJxIC0gw6fEsWs7IGJ1IHBhcsOnYXnEsSB2ZXlhIGthbGFubGFyZGFuIGhlcmhhbmdpIGJpcmluaSB1eWd1bGFtYVxuIgorImEgLSBidSBwYXLDp2F5xLEgdmUgc29ucmFraSB0w7xtIHBhcsOnYWxhcsSxIHV5Z3VsYVxuIgorImQgLSBidSBwYXLDp2F5xLEgdmV5YSBzb25yYWtpIHBhcsOnYWxhcmRhbiBoZXJoYW5naSBiaXJpbmkgdXlndWxhbWFcbiIKKworIzogYWRkLXBhdGNoLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciAnJS4qcyciCittc2dzdHIgInBhcsOnYSDDvHN0YmlsZ2lzaSAnJS4qcycgYXlyxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IGFkZC1wYXRjaC5jOjMzNyBhZGQtcGF0Y2guYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbG9yZWQgaHVuayBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICJyZW5rbGVuZGlyaWxtacWfIHBhcsOnYSDDvHN0YmlsZ2lzaSAnJS4qcycgYXlyxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IGFkZC1wYXRjaC5jOjM5NQorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBkaWZmIgorbXNnc3RyICJkaWZmIGF5csSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBhZGQtcGF0Y2guYzo0MTQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29sb3JlZCBkaWZmIgorbXNnc3RyICJyZW5rbGVuZGlyaWxtacWfIGRpZmYgYXlyxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IGFkZC1wYXRjaC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcnVuICclcyciCittc2dzdHIgIiclcycgw6dhbMSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBhZGQtcGF0Y2guYzo1ODcKK21zZ2lkICJtaXNtYXRjaGVkIG91dHB1dCBmcm9tIGludGVyYWN0aXZlLmRpZmZGaWx0ZXIiCittc2dzdHIgImludGVyYWN0aXZlLmRpZmZGaWx0ZXIgw7ZnZXNpbmRlbiBlxZ9sZcWfbWV5ZW4gw6fEsWt0xLEiCisKKyM6IGFkZC1wYXRjaC5jOjU4OAorbXNnaWQgIiIKKyJZb3VyIGZpbHRlciBtdXN0IG1haW50YWluIGEgb25lLXRvLW9uZSBjb3JyZXNwb25kZW5jZVxuIgorImJldHdlZW4gaXRzIGlucHV0IGFuZCBvdXRwdXQgbGluZXMuIgorbXNnc3RyICIiCisiU8O8emdlY2luaXoga2VuZGlzaW5pbiBnaXJkaSB2ZSDDp8Sxa3TEsSBzYXTEsXJsYXLEsSBhcmFzxLFuZGFcbiIKKyJiaXJlYmlyIGthcsWfxLFsxLFrIHNhxJ9sYW1hbMSxZMSxci4iCisKKyM6IGFkZC1wYXRjaC5jOjc2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZXhwZWN0ZWQgY29udGV4dCBsaW5lICMlZCBpblxuIgorIiUuKnMiCittc2dzdHIgIiIKKyLFn3VyYWRhIGJhxJ9sYW0gc2F0xLFyxLEgIyVkIGJla2xlbml5b3JkdTpcbiIKKyIlLipzIgorCisjOiBhZGQtcGF0Y2guYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImh1bmtzIGRvIG5vdCBvdmVybGFwOlxuIgorIiUuKnNcbiIKKyJcdGRvZXMgbm90IGVuZCB3aXRoOlxuIgorIiUuKnMiCittc2dzdHIgIiIKKyJwYXLDp2FsYXIgw7xzdCDDvHN0ZSBiaW5taXlvcjpcbiIKKyIlLipzXG4iCisiXHTFn3VudW5sYSBiaXRtaXlvcjpcbiIKKyIlLipzIgorCisjOiBhZGQtcGF0Y2guYzoxMDUyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExMgorbXNnaWQgIk1hbnVhbCBodW5rIGVkaXQgbW9kZSAtLSBzZWUgYm90dG9tIGZvciBhIHF1aWNrIGd1aWRlLlxuIgorbXNnc3RyICJFbCBpbGUgcGFyw6dhIGTDvHplbmxlbWUga2lwaSAtLSBoxLF6bMSxY2Egw7bEn3Jlbm1layBpw6dpbiBhxZ9hxJ/EsXlhIGJha8Sxbi5cbiIKKworIzogYWRkLXBhdGNoLmM6MTA1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0tXG4iCisiVG8gcmVtb3ZlICclYycgbGluZXMsIG1ha2UgdGhlbSAnICcgbGluZXMgKGNvbnRleHQpLlxuIgorIlRvIHJlbW92ZSAnJWMnIGxpbmVzLCBkZWxldGUgdGhlbS5cbiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICVjIHdpbGwgYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorIi0tLVxuIgorIiclYycgc2F0xLFyIGthbGTEsXJtYWsgacOnaW4gb25sYXLEsSAnICcgc2F0xLFyIHlhcMSxbiAoYmHEn2xhbSkuXG4iCisiJyVjJyBzYXTEsXIga2FsZMSxcm1hayBpw6dpbiBvbmxhcsSxIHNpbGluLlxuIgorIiVjIGthbGTEsXLEsWxhY2FrLlxuIgorCisjLiBUUkFOU0xBVE9SUzogJ2l0JyByZWZlcnMgdG8gdGhlIHBhdGNoIG1lbnRpb25lZCBpbiB0aGUgcHJldmlvdXMgbWVzc2FnZXMuCisjOiBhZGQtcGF0Y2guYzoxMDcwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTEyNgorbXNnaWQgIiIKKyJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSBnaXZlbiBhbiBvcHBvcnR1bml0eSB0b1xuIgorImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlIHJlbW92ZWQsIHRoZW4gdGhlIGVkaXQgaXNcbiIKKyJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIKK21zZ3N0ciAiIgorIkXEn2VyIHNvcnVuc3V6Y2EgdXlndWxhbmFtYXpzYSB5ZW5pZGVuIGTDvHplbmxlbWVuaXogacOnaW4gYmlyIG9sYW5ha1xuIgorInN1bnVsYWNha3TEsXIuIFBhcsOnYW7EsW4gdMO8bSBzYXTEsXJsYXLEsSBrYWxkxLFyxLFsxLFyc2EgZMO8emVubGVtZSBkdXJkdXJ1bHVyXG4iCisidmUgcGFyw6dhIGRlxJ9pxZ90aXJpbG1lZGVuIGLEsXJha8SxbMSxci5cbiIKKworIzogYWRkLXBhdGNoLmM6MTEwMworbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciIKK21zZ3N0ciAicGFyw6dhIMO8c3RiaWxnaXNpIGF5csSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBhZGQtcGF0Y2guYzoxMTQ4Cittc2dpZCAiJ2dpdCBhcHBseSAtLWNhY2hlZCcgZmFpbGVkIgorbXNnc3RyICInZ2l0IGFwcGx5IC0tY2FjaGVkJyBiYcWfYXLEsXPEsXogb2xkdSIKKworIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KKyMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dCBhdCB0aGlzIHBvaW50LgorIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKKyMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCisjLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KKyMuCisjLiBUUkFOU0xBVE9SUzogZG8gbm90IHRyYW5zbGF0ZSBbeS9uXQorIy4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCB0aGF0IGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKKyMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCisjLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KKyM6IGFkZC1wYXRjaC5jOjEyMTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjM5Cittc2dpZCAiIgorIllvdXIgZWRpdGVkIGh1bmsgZG9lcyBub3QgYXBwbHkuIEVkaXQgYWdhaW4gKHNheWluZyBcIm5vXCIgZGlzY2FyZHMhKSBbeS9uXT8gIgorbXNnc3RyICIiCisiRMO8emVubGVkacSfaW5peiBwYXLDp2EgdXlndWxhbmFtxLF5b3IuIFllbmlkZW4gZMO8emVubGVuc2luIG1pIChcIm4gKGhhecSxcilcIiAiCisiZGVtZWsgaXB0YWwgZWRlciEpIFt5L25dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyNjEKK21zZ2lkICJUaGUgc2VsZWN0ZWQgaHVua3MgZG8gbm90IGFwcGx5IHRvIHRoZSBpbmRleCEiCittc2dzdHIgIlNlw6dpbGkgcGFyw6dhbGFyIGluZGVrc2UgdXlndWxhbmFtxLF5b3IhIgorCisjOiBhZGQtcGF0Y2guYzoxMjYyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM0MworbXNnaWQgIkFwcGx5IHRoZW0gdG8gdGhlIHdvcmt0cmVlIGFueXdheT8gIgorbXNnc3RyICLDh2FsxLHFn21hIGHEn2FjxLFuYSB5aW5lIGRlIHV5Z3VsYW5zxLFuIG3EsT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjY5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM0NgorbXNnaWQgIk5vdGhpbmcgd2FzIGFwcGxpZWQuXG4iCittc2dzdHIgIkhpw6diaXIgxZ9leSB1eWd1bGFubWFkxLEuXG4iCisKKyM6IGFkZC1wYXRjaC5jOjEzMjYKK21zZ2lkICIiCisiaiAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBuZXh0IHVuZGVjaWRlZCBodW5rXG4iCisiSiAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBuZXh0IGh1bmtcbiIKKyJrIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIHByZXZpb3VzIHVuZGVjaWRlZCBodW5rXG4iCisiSyAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBwcmV2aW91cyBodW5rXG4iCisiZyAtIHNlbGVjdCBhIGh1bmsgdG8gZ28gdG9cbiIKKyIvIC0gc2VhcmNoIGZvciBhIGh1bmsgbWF0Y2hpbmcgdGhlIGdpdmVuIHJlZ2V4XG4iCisicyAtIHNwbGl0IHRoZSBjdXJyZW50IGh1bmsgaW50byBzbWFsbGVyIGh1bmtzXG4iCisiZSAtIG1hbnVhbGx5IGVkaXQgdGhlIGN1cnJlbnQgaHVua1xuIgorIj8gLSBwcmludCBoZWxwXG4iCittc2dzdHIgIiIKKyJqIC0gYnUgcGFyw6dhIGnDp2luIHNvbnJhIGthcmFyIHZlciwgYmlyIHNvbnJha2kga2FyYXIgdmVyaWxtZW1pxZ8gcGFyw6dhecSxIGfDtnJcbiIKKyJKIC0gYnUgcGFyw6dhIGnDp2luIHNvbnJhIGthcmFyIHZlciwgYmlyIHNvbnJha2kgcGFyw6dhecSxIGfDtnJcbiIKKyJrIC0gYnUgcGFyw6dhIGnDp2luIHNvbnJhIGthcmFyIHZlciwgYmlyIMO2bmNla2kga2FyYXIgdmVyaWxtZW1pxZ8gcGFyw6dhecSxIGfDtnJcbiIKKyJLIC0gYnUgcGFyw6dhIGnDp2luIHNvbnJhIGthcmFyIHZlciwgYmlyIMO2bmNla2kgcGFyw6dhecSxIGfDtnJcbiIKKyJnIC0gZ2lkaWxlY2VrIGJpciBwYXLDp2Egc2XDp1xuIgorIi8gLSB2ZXJpbGVuIGTDvHplbmxpIGlmYWRlIGlsZSBlxZ9sZcWfZW4gYmlyIHBhcsOnYSBhcmFcbiIKKyJzIC0gZ2XDp2VybGkgcGFyw6dhecSxIGRhaGEgdWZhayBwYXLDp2FsYXJhIGLDtmxcbiIKKyJlIC0gZ2XDp2VybGkgcGFyw6dhecSxIGVsIGlsZSBkw7x6ZW5sZVxuIgorIj8gLSB5YXJkxLFtxLEgeWF6ZMSxclxuIgorCisjOiBhZGQtcGF0Y2guYzoxNDQ3IGFkZC1wYXRjaC5jOjE0NTcKK21zZ2lkICJObyBwcmV2aW91cyBodW5rIgorbXNnc3RyICLDlm5jZXNpbmRlIHBhcsOnYSB5b2siCisKKyM6IGFkZC1wYXRjaC5jOjE0NTIgYWRkLXBhdGNoLmM6MTQ2MgorbXNnaWQgIk5vIG5leHQgaHVuayIKK21zZ3N0ciAiU29ucmFzxLFuZGEgcGFyw6dhIHlvayIKKworIzogYWRkLXBhdGNoLmM6MTQ2OAorbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIGdvdG8iCittc2dzdHIgIkdpZGlsZWNlayBiYcWfa2EgYmlyIHBhcsOnYSB5b2siCisKKyM6IGFkZC1wYXRjaC5jOjE0NzkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTc3Cittc2dpZCAiZ28gdG8gd2hpY2ggaHVuayAoPHJldD4gdG8gc2VlIG1vcmUpPyAiCittc2dzdHIgImhhbmdpIHBhcsOnYXlhIGdpZGlsc2luIChkYWhhIGZhemxhIGfDtnJtZWsgacOnaW4gPHJldD4pPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE0ODAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTc5Cittc2dpZCAiZ28gdG8gd2hpY2ggaHVuaz8gIgorbXNnc3RyICJoYW5naSBwYXLDp2F5YSBnaWRpbHNpbj8gIgorCisjOiBhZGQtcGF0Y2guYzoxNDkxCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgbnVtYmVyOiAnJXMnIgorbXNnc3RyICJHZcOnZXJzaXogc2F5xLE6ICclcyciCisKKyM6IGFkZC1wYXRjaC5jOjE0OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiU29ycnksIG9ubHkgJWQgaHVuayBhdmFpbGFibGUuIgorbXNnaWRfcGx1cmFsICJTb3JyeSwgb25seSAlZCBodW5rcyBhdmFpbGFibGUuIgorbXNnc3RyWzBdICLDnHpnw7xuw7xtLCB5YWxuxLF6Y2EgJWQgcGFyw6dhIGt1bGxhbsSxbGFiaWxpci4iCittc2dzdHJbMV0gIsOcemfDvG7DvG0sIHlhbG7EsXpjYSAlZCBwYXLDp2Ega3VsbGFuxLFsYWJpbGlyLiIKKworIzogYWRkLXBhdGNoLmM6MTUwNQorbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIHNlYXJjaCIKK21zZ3N0ciAiQXJhbmFjYWsgYmHFn2thIHBhcsOnYSB5b2siCisKKyM6IGFkZC1wYXRjaC5jOjE1MTEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjIzCittc2dpZCAic2VhcmNoIGZvciByZWdleD8gIgorbXNnc3RyICJkw7x6ZW5saSBpZmFkZSBhcmFuc8SxbiBtxLE/ICIKKworIzogYWRkLXBhdGNoLmM6MTUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJNYWxmb3JtZWQgc2VhcmNoIHJlZ2V4cCAlczogJXMiCittc2dzdHIgIkhhdGFsxLEgb2x1xZ90dXJ1bG11xZ8gZMO8emVubGkgaWZhZGUgJXM6ICVzIgorCisjOiBhZGQtcGF0Y2guYzoxNTQzCittc2dpZCAiTm8gaHVuayBtYXRjaGVzIHRoZSBnaXZlbiBwYXR0ZXJuIgorbXNnc3RyICJWZXJpbGVuIGRpemdpIGlsZSBlxZ9sZcWfZW4gYmlyIHBhcsOnYSB5b2siCisKKyM6IGFkZC1wYXRjaC5jOjE1NTAKK21zZ2lkICJTb3JyeSwgY2Fubm90IHNwbGl0IHRoaXMgaHVuayIKK21zZ3N0ciAiw5x6Z8O8bsO8bSwgYnUgcGFyw6dhIGLDtmzDvG5lbWl5b3IiCisKKyM6IGFkZC1wYXRjaC5jOjE1NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3BsaXQgaW50byAlZCBodW5rcy4iCittc2dzdHIgIiVkIHBhcsOnYXlhIGLDtmzDvG5kw7wuIgorCisjOiBhZGQtcGF0Y2guYzoxNTU4Cittc2dpZCAiU29ycnksIGNhbm5vdCBlZGl0IHRoaXMgaHVuayIKK21zZ3N0ciAiw5x6Z8O8bsO8bSwgYnUgcGFyw6dhIGTDvHplbmxlbmVtaXlvciIKKworIzogYWRkLXBhdGNoLmM6MTYwOQorbXNnaWQgIidnaXQgYXBwbHknIGZhaWxlZCIKK21zZ3N0ciAiJ2dpdCBhcHBseScgYmHFn2FyxLFzxLF6IG9sZHUiCisKKyM6IGFkdmljZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIlc2hpbnQ6ICUuKnMlc1xuIgorbXNnc3RyICIlc2lwdWN1OiAlLipzJXNcbiIKKworIzogYWR2aWNlLmM6MTY4Cittc2dpZCAiQ2hlcnJ5LXBpY2tpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgorbXNnc3RyICJTZcOnLWFsIHlhcMSxbGFtxLF5b3Igw6fDvG5rw7wgYmlybGXFn3RpcmlsbWVtacWfIGRvc3lhbGFyxLFuxLF6IHZhci4iCisKKyM6IGFkdmljZS5jOjE3MAorbXNnaWQgIkNvbW1pdHRpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgorbXNnc3RyICJHw7ZuZGVyaSB5YXDEsWxhbcSxeW9yIMOnw7xua8O8IGJpcmxlxZ90aXJpbG1lbWnFnyBkb3N5YWxhcsSxbsSxeiB2YXIuIgorCisjOiBhZHZpY2UuYzoxNzIKK21zZ2lkICJNZXJnaW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKK21zZ3N0ciAiQmlybGXFn3Rpcm1lIHlhcMSxbGFtxLF5b3Igw6fDvG5rw7wgYmlybGXFn3RpcmlsbWVtacWfIGRvc3lhbGFyxLFuxLF6IHZhci4iCisKKyM6IGFkdmljZS5jOjE3NAorbXNnaWQgIlB1bGxpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgorbXNnc3RyICLDh2VrbWUgeWFwxLFsYW3EsXlvciDDp8O8bmvDvCBiaXJsZcWfdGlyaWxtZW1pxZ8gZG9zeWFsYXLEsW7EsXogdmFyLiIKKworIzogYWR2aWNlLmM6MTc2Cittc2dpZCAiUmV2ZXJ0aW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKK21zZ3N0ciAiR2VyaXllIGFsbWEgeWFwxLFsYW3EsXlvciDDp8O8bmvDvCBiaXJsZcWfdGlyaWxtZW1pxZ8gZG9zeWFsYXLEsW7EsXogdmFyLiIKKworIzogYWR2aWNlLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkl0IGlzIG5vdCBwb3NzaWJsZSB0byAlcyBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKK21zZ3N0ciAiJXMgeWFwxLFsYW3EsXlvciDDp8O8bmvDvCBiaXJsZcWfdGlyaWxtZW1pxZ8gZG9zeWFsYXLEsW7EsXogdmFyLiIKKworIzogYWR2aWNlLmM6MTg2Cittc2dpZCAiIgorIkZpeCB0aGVtIHVwIGluIHRoZSB3b3JrIHRyZWUsIGFuZCB0aGVuIHVzZSAnZ2l0IGFkZC9ybSA8ZmlsZT4nXG4iCisiYXMgYXBwcm9wcmlhdGUgdG8gbWFyayByZXNvbHV0aW9uIGFuZCBtYWtlIGEgY29tbWl0LiIKK21zZ3N0ciAiIgorIk9ubGFyxLEgw6dhbMSxxZ9tYSBhxJ9hY8SxbmRhIG9uYXLEsW4sIGFyZMSxbmRhbiBoYXrEsXJsxLHEn8SxIGJpdGlybWVrIGnDp2luIHV5Z3VuXG4iCisiZ8O2csO8bGTDvMSfw7wgYmnDp2ltZGUgJ2dpdCBhZGQvcm0gPGRvc3lhPicgeWFwdMSxa3RhbiBzb25yYSBiaXIgZ8O2bmRlcmkgeWFwxLFuLiIKKworIzogYWR2aWNlLmM6MTk0Cittc2dpZCAiRXhpdGluZyBiZWNhdXNlIG9mIGFuIHVucmVzb2x2ZWQgY29uZmxpY3QuIgorbXNnc3RyICLDh8O2esO8bWUga2F2dcWfdHVydWxtYW3EscWfIGJpciDDp2FrxLHFn21hZGFuIGRvbGF5xLEgw6fEsWvEsWzEsXlvci4iCisKKyM6IGFkdmljZS5jOjE5OSBidWlsdGluL21lcmdlLmM6MTMzNQorbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBtZXJnZSAoTUVSR0VfSEVBRCBleGlzdHMpLiIKK21zZ3N0ciAiQmlybGXFn3Rpcm1lbml6aSBzb251w6dsYW5kxLFybWFkxLFuxLF6IChNRVJHRV9IRUFEIG1ldmN1dCkuIgorCisjOiBhZHZpY2UuYzoyMDEKK21zZ2lkICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIG1lcmdpbmcuIgorbXNnc3RyICJCaXJsZcWfdGlybWUgw7ZuY2VzaW5kZSBkZcSfacWfaWtsaWtsZXJpbml6aSBnw7ZuZGVyaW4uIgorCisjOiBhZHZpY2UuYzoyMDIKK21zZ2lkICJFeGl0aW5nIGJlY2F1c2Ugb2YgdW5maW5pc2hlZCBtZXJnZS4iCittc2dzdHIgIlRhbWFtbGFubWFtxLHFnyBiaXJsZcWfdGlybWVkZW4gZG9sYXnEsSDDp8Sxa8SxbMSxeW9yLiIKKworIzogYWR2aWNlLmM6MjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJOb3RlOiBzd2l0Y2hpbmcgdG8gJyVzJy5cbiIKKyJcbiIKKyJZb3UgYXJlIGluICdkZXRhY2hlZCBIRUFEJyBzdGF0ZS4gWW91IGNhbiBsb29rIGFyb3VuZCwgbWFrZSBleHBlcmltZW50YWxcbiIKKyJjaGFuZ2VzIGFuZCBjb21taXQgdGhlbSwgYW5kIHlvdSBjYW4gZGlzY2FyZCBhbnkgY29tbWl0cyB5b3UgbWFrZSBpbiB0aGlzXG4iCisic3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHN3aXRjaGluZyBiYWNrIHRvIGEgYnJhbmNoLlxuIgorIlxuIgorIklmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIG5ldyBicmFuY2ggdG8gcmV0YWluIGNvbW1pdHMgeW91IGNyZWF0ZSwgeW91IG1heVxuIgorImRvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1jIHdpdGggdGhlIHN3aXRjaCBjb21tYW5kLiBFeGFtcGxlOlxuIgorIlxuIgorIiAgZ2l0IHN3aXRjaCAtYyA8bmV3LWJyYW5jaC1uYW1lPlxuIgorIlxuIgorIk9yIHVuZG8gdGhpcyBvcGVyYXRpb24gd2l0aDpcbiIKKyJcbiIKKyIgIGdpdCBzd2l0Y2ggLVxuIgorIlxuIgorIlR1cm4gb2ZmIHRoaXMgYWR2aWNlIGJ5IHNldHRpbmcgY29uZmlnIHZhcmlhYmxlIGFkdmljZS5kZXRhY2hlZEhlYWQgdG8gIgorImZhbHNlXG4iCisiXG4iCittc2dzdHIgIiIKKyJOb3Q6IMWedXJheWEgZ2XDp2lsaXlvcjogJyVzJy5cbiIKKyJcbiIKKyLFnnUgYW5kYSAnYXlyxLFrIEhFQUQnIGR1cnVtdW5kYXPEsW7EsXouIE9yYXlhIGJ1cmF5YSBiYWthYmlsaXIsIGRlbmV5c2VsXG4iCisiZGXEn2nFn2lrbGlrbGVyIHlhcMSxcCBnw7ZuZGVyZWJpbGlyIHZleWEgYmHFn2thIGJpciBkYWxhIGdlw6dlcmVrIHlhcHTEscSfxLFuxLF6XG4iCisidMO8bSBnw7ZuZGVyaWxlcmkgYmHFn2thIGhpw6diaXIgZGFsYSBldGtpIGV0bWVkZW4gZ2VyaSBhbGFiaWxpcnNpbml6LlxuIgorIlxuIgorIllhcHTEscSfxLFuxLF6IGfDtm5kZXJpbGVyaSB0dXRtYWsgacOnaW4geWVuaSBiaXIgZGFsIG9sdcWfdHVybWFrIGlzdGVyc2VuaXogYnVudVxuIgorIsWfaW1kaSB2ZXlhIGRhaGEgc29ucmEgc3dpdGNoIGtvbXV0dW5hIC1jIGVrbGV5ZXJlayB5YXBhYmlsaXJzaW5pei4gw5ZybmVrOlxuIgorIlxuIgorIlx0Z2l0IHN3aXRjaCAtYyA8eWVuaS1kYWwtYWTEsT5cbiIKKyJcbiIKKyJCdSBpxZ9sZW1pIMWfdW51bmxhIGdlcmkgYWxhYmlsaXJzaW5pejpcbiIKKyJcbiIKKyJcdGdpdCBzd2l0Y2ggLVxuIgorIlxuIgorIkJ1IMO2xJ/DvGTDvCBhZHZpY2UuZGV0YWNoZWRIZWFkIHlhcMSxbGFuZMSxcm1hIGRlxJ9pxZ9rZW5pbmkgZmFsc2UgeWFwYXJha1xuIgorImthcGF0YWJpbGlyc2luaXouXG4iCisiXG4iCisKKyM6IGFsaWFzLmM6NTAKK21zZ2lkICJjbWRsaW5lIGVuZHMgd2l0aCBcXCIKK21zZ3N0ciAia29tdXQgc2F0xLFyxLEgXFwgaWxlIGJpdGl5b3IiCisKKyM6IGFsaWFzLmM6NTEKK21zZ2lkICJ1bmNsb3NlZCBxdW90ZSIKK21zZ3N0ciAia2FwYXTEsWxtYW3EscWfIHTEsXJuYWsiCisKKyM6IGFwcGx5LmM6NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2Ugb3B0aW9uICclcyciCittc2dzdHIgInRhbsSxbWxhbmFtYXlhbiBib8WfbHVrIHNlw6dlbmXEn2kgJyVzJyIKKworIzogYXBwbHkuYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgd2hpdGVzcGFjZSBpZ25vcmUgb3B0aW9uICclcyciCittc2dzdHIgInRhbsSxbWxhbmFtYXlhbiBib8WfbHVrIHlvayBzYXltYSBzZcOnZW5lxJ9pICclcyciCisKKyM6IGFwcGx5LmM6MTM1Cittc2dpZCAiLS1yZWplY3QgYW5kIC0tM3dheSBjYW5ub3QgYmUgdXNlZCB0b2dldGhlci4iCittc2dzdHIgIi0tcmVqZWN0IHZlIC0tM3dheSBiaXJsaWt0ZSBrdWxsYW7EsWxhbWF6LiIKKworIzogYXBwbHkuYzoxMzcKK21zZ2lkICItLWNhY2hlZCBhbmQgLS0zd2F5IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyLiIKK21zZ3N0ciAiLS1jYWNoZWQgdmUgLS0zd2F5IGJpcmxpa3RlIGt1bGxhbsSxbGFtYXouIgorCisjOiBhcHBseS5jOjE0MAorbXNnaWQgIi0tM3dheSBvdXRzaWRlIGEgcmVwb3NpdG9yeSIKK21zZ3N0ciAiLTN3YXkgYmlyIGRlcG8gZMSxxZ/EsW5kYSIKKworIzogYXBwbHkuYzoxNTEKK21zZ2lkICItLWluZGV4IG91dHNpZGUgYSByZXBvc2l0b3J5IgorbXNnc3RyICItLWluZGV4IGJpciBkZXBvIGTEscWfxLFuZGEiCisKKyM6IGFwcGx5LmM6MTU0Cittc2dpZCAiLS1jYWNoZWQgb3V0c2lkZSBhIHJlcG9zaXRvcnkiCittc2dzdHIgIi0tY2FjaGVkIGJpciBkZXBvIGTEscWfxLFuZGEiCisKKyM6IGFwcGx5LmM6ODAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBwcmVwYXJlIHRpbWVzdGFtcCByZWdleHAgJXMiCittc2dzdHIgIlphbWFuIGRhbWdhc8SxIGTDvHplbmxpIGlmYWRlc2kgJXMgaGF6xLFybGFuYW3EsXlvciIKKworIzogYXBwbHkuYzo4MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVnZXhlYyByZXR1cm5lZCAlZCBmb3IgaW5wdXQ6ICVzIgorbXNnc3RyICJkw7x6ZW5saSBpZmFkZSBnaXJkaSBpw6dpbiAlZCBkw7ZuZMO8cmTDvDogJXMiCisKKyM6IGFwcGx5LmM6ODg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaW5kIGZpbGVuYW1lIGluIHBhdGNoIGF0IGxpbmUgJWQiCittc2dzdHIgInlhbWFuxLFuICVkLiBzYXTEsXLEsW5kYSBkb3N5YSBhZMSxIGJ1bHVuYW3EsXlvciAiCisKKyM6IGFwcGx5LmM6OTIyCisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gZXhwZWN0ZWQgL2Rldi9udWxsLCBnb3QgJXMgb24gbGluZSAlZCIKK21zZ3N0ciAiIgorImdpdCBhcHBseTogaGF0YWzEsSBnaXQtZGlmZiAtIC9kZXYvbnVsbCBiZWtsZW5peW9yZHUsICVzIGFsxLFuZMSxLCBzYXTEsXIgJWQiCisKKyM6IGFwcGx5LmM6OTI4CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gaW5jb25zaXN0ZW50IG5ldyBmaWxlbmFtZSBvbiBsaW5lICVkIgorbXNnc3RyICJnaXQgYXBwbHk6IGhhdGFsxLEgZ2l0LWRpZmYgLSAlZC4gc2F0xLFyZGEgdHV0YXJzxLF6IHllbmkgZG9zeWEgYWTEsSIKKworIzogYXBwbHkuYzo5MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBpbmNvbnNpc3RlbnQgb2xkIGZpbGVuYW1lIG9uIGxpbmUgJWQiCittc2dzdHIgImdpdCBhcHBseTogaGF0YWzEsSBnaXQtZGlmZiAtICVkLiBzYXTEsXJkYSB0dXRhcnPEsXogZXNraSBkb3N5YSBhZMSxIgorCisjOiBhcHBseS5jOjkzNAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGV4cGVjdGVkIC9kZXYvbnVsbCBvbiBsaW5lICVkIgorbXNnc3RyICJnaXQgYXBwbHk6IGhhdGFsxLEgZ2l0LWRpZmYgLSAlZC4gc2F0xLFyZGEgL2Rldi9udWxsIGJla2xlbml5b3JkdSIKKworIzogYXBwbHkuYzo5NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBtb2RlIG9uIGxpbmUgJWQ6ICVzIgorbXNnc3RyICIlZC4gc2F0xLFyZGEgZ2XDp2Vyc2l6IGtpcDogJXMiCisKKyM6IGFwcGx5LmM6MTI4MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbmNvbnNpc3RlbnQgaGVhZGVyIGxpbmVzICVkIGFuZCAlZCIKK21zZ3N0ciAidHV0YXJzxLF6IMO8c3RiaWxnaSBzYXTEsXJsYXLEsSAlZCB2ZSAlZCIKKworIzogYXBwbHkuYzoxMzcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gd2hlbiByZW1vdmluZyAlZCBsZWFkaW5nIHBhdGhuYW1lICIKKyJjb21wb25lbnQgKGxpbmUgJWQpIgorbXNnaWRfcGx1cmFsICIiCisiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIHdoZW4gcmVtb3ZpbmcgJWQgbGVhZGluZyBwYXRobmFtZSAiCisiY29tcG9uZW50cyAobGluZSAlZCkiCittc2dzdHJbMF0gIiIKKyIlZCDDtm5jw7wgeW9sIGFkxLEgYmlsZcWfZW5pIGthbGTEsXLEsWzEsXJrZW4gZ2l0IGRpZmYgw7xzdGJpbGdpc2kgZG9zeWEgYWTEsSAiCisiYmlsZ2lzaW5lIGl5ZSBkZcSfaWwgKCVkLiBzYXTEsXIpIgorbXNnc3RyWzFdICIiCisiJWQgw7ZuY8O8IHlvbCBhZMSxIGJpbGXFn2VuaSBrYWxkxLFyxLFsxLFya2VuIGdpdCBkaWZmIMO8c3RiaWxnaXNpIGRvc3lhIGFkxLEgIgorImJpbGdpc2luZSBpeWUgZGXEn2lsICglZC4gc2F0xLFyKSIKKworIzogYXBwbHkuYzoxMzg1CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBkaWZmIGhlYWRlciBsYWNrcyBmaWxlbmFtZSBpbmZvcm1hdGlvbiAobGluZSAlZCkiCittc2dzdHIgImdpdCBkaWZmIMO8c3RiaWxnaXNpIGRvc3lhIGFkxLEgYmlsZ2lzaW5lIGl5ZSBkZcSfaWwgKCVkLiBzYXTEsXIpIgorCisjOiBhcHBseS5jOjE0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVjb3VudDogdW5leHBlY3RlZCBsaW5lOiAlLipzIgorbXNnc3RyICJyZWNvdW50OiBiZWtsZW5tZWRpayBzYXTEsXI6ICUuKnMiCisKKyM6IGFwcGx5LmM6MTU1MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRjaCBmcmFnbWVudCB3aXRob3V0IGhlYWRlciBhdCBsaW5lICVkOiAlLipzIgorbXNnc3RyICIlZC4gc2F0xLFyZGEgw7xzdGJpbGdpc2kgb2xtYXlhbiB5YW1hIHBhcsOnYWPEscSfxLE6ICUuKnMiCisKKyM6IGFwcGx5LmM6MTc1MworbXNnaWQgIm5ldyBmaWxlIGRlcGVuZHMgb24gb2xkIGNvbnRlbnRzIgorbXNnc3RyICJ5ZW5pIGRvc3lhIGVza2kgacOnZXJpxJ9lIGdlcmVrc2luaW0gZHV5dXlvciIKKworIzogYXBwbHkuYzoxNzU1Cittc2dpZCAiZGVsZXRlZCBmaWxlIHN0aWxsIGhhcyBjb250ZW50cyIKK21zZ3N0ciAic2lsaW5lbiBkb3N5YSBpw6dpbmRlIGjDomzDoiBiaXIgxZ9leWxlciB2YXIiCisKKyM6IGFwcGx5LmM6MTc4OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3JydXB0IHBhdGNoIGF0IGxpbmUgJWQiCittc2dzdHIgImhhc2FybMSxIHlhbWEsICVkLiBzYXTEsXIiCisKKyM6IGFwcGx5LmM6MTgyNgorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgZmlsZSAlcyBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKK21zZ3N0ciAiJXMgeWVuaSBkb3N5YXPEsSBlc2tpIGnDp2VyacSfZSBnZXJla3NpbmltIGR1eXV5b3IiCisKKyM6IGFwcGx5LmM6MTgyOAorIywgYy1mb3JtYXQKK21zZ2lkICJkZWxldGVkIGZpbGUgJXMgc3RpbGwgaGFzIGNvbnRlbnRzIgorbXNnc3RyICIlcyBzaWxpbmVuIGRvc3lhc8SxbsSxbiBpw6dpbmRlIGjDomzDoiBiaXIgxZ9leWxlciB2YXIiCisKKyM6IGFwcGx5LmM6MTgzMQorIywgYy1mb3JtYXQKK21zZ2lkICIqKiB3YXJuaW5nOiBmaWxlICVzIGJlY29tZXMgZW1wdHkgYnV0IGlzIG5vdCBkZWxldGVkIgorbXNnc3RyICIqKiB1eWFyxLE6ICVzIGRvc3lhc8SxIGJvxZ8gZHVydW1hIGdlbGlyIGFuY2FrIHNpbGlubWV6IgorCisjOiBhcHBseS5jOjE5NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29ycnVwdCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZDogJS4qcyIKK21zZ3N0ciAiaGFzYXJsxLEgaWtpbGkgeWFtYSwgJWQuIHNhdMSxcjogJS4qcyIKKworIzogYXBwbHkuYzoyMDE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZCIKK21zZ3N0ciAidGFuxLFtbGFuYW1heWFuIGlraWxpIHlhbWEsICVkLiBzYXTEsXIiCisKKyM6IGFwcGx5LmM6MjE3NworIywgYy1mb3JtYXQKK21zZ2lkICJwYXRjaCB3aXRoIG9ubHkgZ2FyYmFnZSBhdCBsaW5lICVkIgorbXNnc3RyICJ5YWxuxLF6Y2EgYW5sYW1zxLF6IHZlcmkgacOnZXJlbiB5YW1hLCAlZC4gc2F0xLFyIgorCisjOiBhcHBseS5jOjIyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgc3ltbGluayAlcyIKK21zZ3N0ciAiJXMgc2VtYm9saWsgYmHEn8SxIG9rdW5hbcSxeW9yIgorCisjOiBhcHBseS5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3IgcmVhZCAlcyIKK21zZ3N0ciAiJXMgYcOnxLFsYW3EsXlvciB2ZXlhIG9rdW5hbcSxeW9yIgorCisjOiBhcHBseS5jOjI5MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzdGFydCBvZiBsaW5lOiAnJWMnIgorbXNnc3RyICJnZcOnZXJzaXogc2F0xLFyIGJhxZ9sYW5nxLFjxLE6ICclYyciCisKKyM6IGFwcGx5LmM6MzA1NworIywgYy1mb3JtYXQKK21zZ2lkICJIdW5rICMlZCBzdWNjZWVkZWQgYXQgJWQgKG9mZnNldCAlZCBsaW5lKS4iCittc2dpZF9wbHVyYWwgIkh1bmsgIyVkIHN1Y2NlZWRlZCBhdCAlZCAob2Zmc2V0ICVkIGxpbmVzKS4iCittc2dzdHJbMF0gIlBhcsOnYSAjJWQgYmHFn2FyxLFsxLEgb2xkdSwgJWQgKCVkIHNhdMSxciBvZnNldCkuIgorbXNnc3RyWzFdICJQYXLDp2EgIyVkIGJhxZ9hcsSxbMSxIG9sZHUsICVkICglZCBzYXTEsXIgb2ZzZXQpLiIKKworIzogYXBwbHkuYzozMDY5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbnRleHQgcmVkdWNlZCB0byAoJWxkLyVsZCkgdG8gYXBwbHkgZnJhZ21lbnQgYXQgJWQiCittc2dzdHIgIiIKKyJCYcSfbGFtIMWfdW5hIGluZGlyaWxkaTogKCVsZC8lbGQpICglZCBrb251bXVuZGFraSBwYXLDp2FjxLHEn8SxIHV5Z3VsYW1hayBpw6dpbikiCisKKyM6IGFwcGx5LmM6MzA3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgc2VhcmNoaW5nIGZvcjpcbiIKKyIlLipzIgorbXNnc3RyICIiCisixZ91bnUgYXJhcmtlbjpcbiIKKyIlLipzIgorCisjOiBhcHBseS5jOjMwOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyBiaW5hcnkgcGF0Y2ggZGF0YSBmb3IgJyVzJyIKK21zZ3N0ciAiJyVzJyBpw6dpbiBpa2lsaSB5YW1hIHZlcmlzaSBla3NpayIKKworIzogYXBwbHkuYzozMTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZXZlcnNlLWFwcGx5IGEgYmluYXJ5IHBhdGNoIHdpdGhvdXQgdGhlIHJldmVyc2UgaHVuayB0byAnJXMnIgorbXNnc3RyICInJXMnIHBhcsOnYXPEsSBnZXJpIGFsxLFubWFkYW4gYmlyIGlraWxpIHlhbWEgcmV2ZXJzZS1hcHBseSB5YXDEsWxhbcSxeW9yIgorCisjOiBhcHBseS5jOjMxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGFwcGx5IGJpbmFyeSBwYXRjaCB0byAnJXMnIHdpdGhvdXQgZnVsbCBpbmRleCBsaW5lIgorbXNnc3RyICJ0YW0gaW5kZWtzIHNhdMSxcsSxIG9sbWFkYW4gJyVzJyDDvHplcmluZSBiaXIgaWtpbGkgeWFtYSB1eWd1bGFuYW3EsXlvciIKKworIzogYXBwbHkuYzozMTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0aGUgcGF0Y2ggYXBwbGllcyB0byAnJXMnICglcyksIHdoaWNoIGRvZXMgbm90IG1hdGNoIHRoZSBjdXJyZW50IGNvbnRlbnRzLiIKK21zZ3N0ciAiQnUgeWFtYSBnZcOnZXJsaSBpw6dlcmlrIGlsZSBlxZ9sZcWfbWV5ZW4gJyVzJyDDvHplcmluZSB1eWd1bGFuxLFyICglcykuIgorCisjOiBhcHBseS5jOjMxNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlIHBhdGNoIGFwcGxpZXMgdG8gYW4gZW1wdHkgJyVzJyBidXQgaXQgaXMgbm90IGVtcHR5IgorbXNnc3RyICJ5YW1hIGJvxZ8gYmlyICclcycgw7x6ZXJpbmUgdXlndWxhbsSxciwgYW5jYWsgbyBib8WfIGRlxJ9pbCIKKworIzogYXBwbHkuYzozMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgInRoZSBuZWNlc3NhcnkgcG9zdGltYWdlICVzIGZvciAnJXMnIGNhbm5vdCBiZSByZWFkIgorbXNnc3RyICJnZXJla2VuIHNvbmfDtnLDvG50w7wgJXMgKCclcycgacOnaW4pIG9rdW5hbcSxeW9yIgorCisjOiBhcHBseS5jOjMyMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmluYXJ5IHBhdGNoIGRvZXMgbm90IGFwcGx5IHRvICclcyciCittc2dzdHIgImlraWxpIHlhbWEgJyVzJyDDvHplcmluZSB1eWd1bGFuYW3EsXlvciIKKworIzogYXBwbHkuYzozMjA5CisjLCBjLWZvcm1hdAorbXNnaWQgImJpbmFyeSBwYXRjaCB0byAnJXMnIGNyZWF0ZXMgaW5jb3JyZWN0IHJlc3VsdCAoZXhwZWN0aW5nICVzLCBnb3QgJXMpIgorbXNnc3RyICIiCisiJyVzJyDDvHplcmluZSBpa2lsaSB5YW1hIHlhbmzEscWfIHNvbnXDpyBkb8SfdXJ1eW9yICglcyBiZWtsZW5peW9yZHUsICVzIGFsxLFuZMSxKSIKKworIzogYXBwbHkuYzozMjMwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGNoIGZhaWxlZDogJXM6JWxkIgorbXNnc3RyICJ5YW1hIGJhxZ9hcsSxc8SxeiBvbGR1OiAlczolbGQiCisKKyM6IGFwcGx5LmM6MzM1MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY2hlY2tvdXQgJXMiCittc2dzdHIgIiVzIMOnxLFrxLHFn8SxIHlhcMSxbGFtxLF5b3IiCisKKyM6IGFwcGx5LmM6MzQwNSBhcHBseS5jOjM0MTYgYXBwbHkuYzozNDYyIG1pZHguYzo2MSBzZXR1cC5jOjI5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCAlcyIKK21zZ3N0ciAiJXMgb2t1bmFtYWTEsSIKKworIzogYXBwbHkuYzozNDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWRpbmcgZnJvbSAnJXMnIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCittc2dzdHIgIiclcycgYmlyIHNlbWJvbGlrIGJhxJ/EsW4gw7Z0ZXNpbmRlbiBva3VudXlvciIKKworIzogYXBwbHkuYzozNDQyIGFwcGx5LmM6MzY4NQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICVzIGhhcyBiZWVuIHJlbmFtZWQvZGVsZXRlZCIKK21zZ3N0ciAiJXMgeW9sdSB5ZW5pZGVuIGFkbGFuZMSxcsSxbGTEsS9zaWxpbmRpIgorCisjOiBhcHBseS5jOjM1MjggYXBwbHkuYzozNzAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkb2VzIG5vdCBleGlzdCBpbiBpbmRleCIKK21zZ3N0ciAiJXM6IGluZGVrc3RlIGJ1bHVubXV5b3IiCisKKyM6IGFwcGx5LmM6MzUzNyBhcHBseS5jOjM3MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRvZXMgbm90IG1hdGNoIGluZGV4IgorbXNnc3RyICIlczogaW5kZWtzIGlsZSBlxZ9sZcWfbWl5b3IiCisKKyM6IGFwcGx5LmM6MzU3MgorbXNnaWQgInJlcG9zaXRvcnkgbGFja3MgdGhlIG5lY2Vzc2FyeSBibG9iIHRvIGZhbGwgYmFjayBvbiAzLXdheSBtZXJnZS4iCittc2dzdHIgIiIKKyJEZXBvIDMgecO2bmzDvCBiaXJsZcWfdGlybWV5ZSBnZXJpIMOnZWtpbGViaWxtZSBpw6dpbiBnZXJla2VuIGlraWxpIG5lc25leWUgaXllICIKKyJkZcSfaWwuIgorCisjOiBhcHBseS5jOjM1NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFsbGluZyBiYWNrIHRvIHRocmVlLXdheSBtZXJnZS4uLlxuIgorbXNnc3RyICIzIHnDtm5sw7wgYmlybGXFn3Rpcm1leWUgZ2VyaSDDp2VraWxpbml5b3IuLi5cbiIKKworIzogYXBwbHkuYzozNTkxIGFwcGx5LmM6MzU5NQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCB0aGUgY3VycmVudCBjb250ZW50cyBvZiAnJXMnIgorbXNnc3RyICInJXMnIMO2Z2VzaW5pbiBnZcOnZXJsaSBpw6dlcmnEn2kgb2t1bmFtxLF5b3IiCisKKyM6IGFwcGx5LmM6MzYwNworIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gZmFsbCBiYWNrIG9uIHRocmVlLXdheSBtZXJnZS4uLlxuIgorbXNnc3RyICIzIHnDtm5sw7wgYmlybGXFn3Rpcm1leWUgZ2VyaSDDp2VraW5pbGVtZWRpLi4uXG4iCisKKyM6IGFwcGx5LmM6MzYyMQorIywgYy1mb3JtYXQKK21zZ2lkICJBcHBsaWVkIHBhdGNoIHRvICclcycgd2l0aCBjb25mbGljdHMuXG4iCittc2dzdHIgIiclcycgw7x6ZXJpbmUgeWFtYSDDp2FrxLHFn21hbGFybGEgYmlybGlrdGUgdXlndWxhbmTEsS5cbiIKKworIzogYXBwbHkuYzozNjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyBjbGVhbmx5LlxuIgorbXNnc3RyICInJXMnIMO8emVyaW5lIHlhbWEgc29ydW5zdXpjYSB1eWd1bGFuZMSxLlxuIgorCisjOiBhcHBseS5jOjM2NTIKK21zZ2lkICJyZW1vdmFsIHBhdGNoIGxlYXZlcyBmaWxlIGNvbnRlbnRzIgorbXNnc3RyICJrYWxkxLFybWEgeWFtYXPEsSBkb3N5YSBpw6dlcmnEn2luaSBixLFyYWvEsXIiCisKKyM6IGFwcGx5LmM6MzcyNQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogd3JvbmcgdHlwZSIKK21zZ3N0ciAiJXM6IHlhbmzEscWfIHTDvHIiCisKKyM6IGFwcGx5LmM6MzcyNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBoYXMgdHlwZSAlbywgZXhwZWN0ZWQgJW8iCittc2dzdHIgIiVzLCAlbyB0w7xyw7xuZSBpeWUsICVvIGJla2xlbml5b3JkdSIKKworIzogYXBwbHkuYzozODc4IGFwcGx5LmM6Mzg4MCByZWFkLWNhY2hlLmM6ODMwIHJlYWQtY2FjaGUuYzo4NTYKKyM6IHJlYWQtY2FjaGUuYzoxMzI1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGF0aCAnJXMnIgorbXNnc3RyICJnZcOnZXJzaXogeW9sICclcyciCisKKyM6IGFwcGx5LmM6MzkzNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgiCittc2dzdHIgIiVzOiBpbmRla3N0ZSBoYWxpaGF6xLFyZGEgdmFyIgorCisjOiBhcHBseS5jOjM5MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGFscmVhZHkgZXhpc3RzIGluIHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICIlczogw6dhbMSxxZ9tYSBkaXppbmluZGUgaGFsaWhhesSxcmRhIHZhciIKKworIzogYXBwbHkuYzozOTU5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSIKK21zZ3N0ciAixZ91bnVuIHllbmkga2lwaSAoJW8pOiAlcywgZXNraSBraXAgKCVvKSBpbGUgZcWfbGXFn21peW9yICIKKworIzogYXBwbHkuYzozOTY0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSBvZiAlcyIKK21zZ3N0ciAixZ91bnVuIHllbmkga2lwaSAoJW8pOiAlcywgxZ91bnVuIGVza2kga2lwaSAoJW8pOiAlcywgaWxlIGXFn2xlxZ9taXlvciIKKworIzogYXBwbHkuYzozOTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImFmZmVjdGVkIGZpbGUgJyVzJyBpcyBiZXlvbmQgYSBzeW1ib2xpYyBsaW5rIgorbXNnc3RyICJldGtpbGVuZW4gZG9zeWEgJyVzJyBiaXIgc2VtYm9saWsgYmHEn8SxbiDDtnRlc2luZGUiCisKKyM6IGFwcGx5LmM6Mzk4OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogcGF0Y2ggZG9lcyBub3QgYXBwbHkiCittc2dzdHIgIiVzOiB5YW1hIHV5Z3VsYW5hbcSxeW9yIgorCisjOiBhcHBseS5jOjQwMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgcGF0Y2ggJXMuLi4iCittc2dzdHIgIiVzIHlhbWFzxLEgZGVuZXRsZW5peW9yLi4uIgorCisjOiBhcHBseS5jOjQwOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hhMSBpbmZvcm1hdGlvbiBpcyBsYWNraW5nIG9yIHVzZWxlc3MgZm9yIHN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiJXMgYWx0bW9kw7xsw7wgacOnaW4gc2hhMSBiaWxnaXNpIGVrc2lrIHZleWEgeWFyYXJzxLF6IgorCisjOiBhcHBseS5jOjQxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibW9kZSBjaGFuZ2UgZm9yICVzLCB3aGljaCBpcyBub3QgaW4gY3VycmVudCBIRUFEIgorbXNnc3RyICJnZcOnZXJsaSBIRUFEJ2RlIG9sbWF5YW4gJXMgacOnaW4ga2lwIGRlxJ9pxZ9pbWkiCisKKyM6IGFwcGx5LmM6NDEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJzaGExIGluZm9ybWF0aW9uIGlzIGxhY2tpbmcgb3IgdXNlbGVzcyAoJXMpLiIKK21zZ3N0ciAic2hhMSBiaWxnaXNpIGVrc2lrIHZleWEgeWFyYXJzxLF6ICglcykuIgorCisjOiBhcHBseS5jOjQxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGFkZCAlcyB0byB0ZW1wb3JhcnkgaW5kZXgiCittc2dzdHIgIiVzIGdlw6dpY2kgaW5kZWtzZSBla2xlbmVtZWRpIgorCisjOiBhcHBseS5jOjQxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHdyaXRlIHRlbXBvcmFyeSBpbmRleCB0byAlcyIKK21zZ3N0ciAiZ2XDp2ljaSBpbmRla3MgxZ91cmF5YSB5YXrEsWxhbWFkxLE6ICVzIgorCisjOiBhcHBseS5jOjQyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlcyBmcm9tIGluZGV4IgorbXNnc3RyICIlcyBpbmRla3N0ZW4ga2FsZMSxcsSxbGFtxLF5b3IiCisKKyM6IGFwcGx5LmM6NDI5NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3JydXB0IHBhdGNoIGZvciBzdWJtb2R1bGUgJXMiCittc2dzdHIgIiVzIGFsdG1vZMO8bMO8IGnDp2luIGhhc2FybMSxIHlhbWEiCisKKyM6IGFwcGx5LmM6NDMwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXdseSBjcmVhdGVkIGZpbGUgJyVzJyIKK21zZ3N0ciAieWVuaSBvbHXFn3R1cnVsYW4gJyVzJyBkb3N5YXPEsW7EsW4gYmlsZ2lsZXJpIGFsxLFuYW3EsXlvciIKKworIzogYXBwbHkuYzo0MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYmFja2luZyBzdG9yZSBmb3IgbmV3bHkgY3JlYXRlZCBmaWxlICVzIgorbXNnc3RyICJ5ZW5pIG9sdcWfdHVydWxhbiAlcyBkb3N5YXPEsSBpw6dpbiB5YXJkxLFtY8SxIGJlbGxlayBvbHXFn3R1cnVsYW3EsXlvciIKKworIzogYXBwbHkuYzo0MzE2IGFwcGx5LmM6NDQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWRkIGNhY2hlIGVudHJ5IGZvciAlcyIKK21zZ3N0ciAiJXMgacOnaW4gw7ZuYmVsbGVrIGdpcmRpc2kgZWtsZW5lbWl5b3IiCisKKyM6IGFwcGx5LmM6NDM1OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gJyVzJyIKK21zZ3N0ciAixZ91cmF5YSB5YXrEsWxhbWFkxLE6ICclcyciCisKKyM6IGFwcGx5LmM6NDM2MworIywgYy1mb3JtYXQKK21zZ2lkICJjbG9zaW5nIGZpbGUgJyVzJyIKK21zZ3N0ciAiJyVzJyBkb3N5YXPEsSBrYXBhdMSxbMSxeW9yIgorCisjOiBhcHBseS5jOjQ0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyBtb2RlICVvIgorbXNnc3RyICInJXMnIGRvc3lhc8SxIHlhesSxbGFtxLF5b3IsICVvIGtpcGkiCisKKyM6IGFwcGx5LmM6NDUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJBcHBsaWVkIHBhdGNoICVzIGNsZWFubHkuIgorbXNnc3RyICIlcyB5YW1hc8SxIHNvcnVuc3V6Y2EgdXlndWxhbmTEsS4iCisKKyM6IGFwcGx5LmM6NDUzOQorbXNnaWQgImludGVybmFsIGVycm9yIgorbXNnc3RyICJpw6cgaGF0YSIKKworIzogYXBwbHkuYzo0NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdC4uLiIKK21zZ2lkX3BsdXJhbCAiQXBwbHlpbmcgcGF0Y2ggJSVzIHdpdGggJWQgcmVqZWN0cy4uLiIKK21zZ3N0clswXSAiJSVzIHlhbWFzxLEgJWQgZ2VyaSDDp2V2aXJtZSBpbGUgdXlndWxhbsSxeW9yLi4uIgorbXNnc3RyWzFdICIlJXMgeWFtYXPEsSAlZCBnZXJpIMOnZXZpcm1lIGlsZSB1eWd1bGFuxLF5b3IuLi4iCisKKyM6IGFwcGx5LmM6NDU1MworIywgYy1mb3JtYXQKK21zZ2lkICJ0cnVuY2F0aW5nIC5yZWogZmlsZW5hbWUgdG8gJS4qcy5yZWoiCittc2dzdHIgIi5yZWogZG9zeWEgYWTEsSAlLipzLnJlaiBvbGFyYWsga8Sxc2FsdMSxbMSxeW9yIgorCisjOiBhcHBseS5jOjQ1NjEgYnVpbHRpbi9mZXRjaC5jOjkwMSBidWlsdGluL2ZldGNoLmM6MTIwMQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiAlcyIKK21zZ3N0ciAiJXMgYcOnxLFsYW3EsXlvciIKKworIzogYXBwbHkuYzo0NTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIkh1bmsgIyVkIGFwcGxpZWQgY2xlYW5seS4iCittc2dzdHIgIlBhcsOnYSAjJWQgc29ydW5zdXpjYSB1eWd1bGFuZMSxLiIKKworIzogYXBwbHkuYzo0NTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlamVjdGVkIGh1bmsgIyVkLiIKK21zZ3N0ciAiUGFyw6dhICVkIGdlcmkgw6dldnJpbGRpLiIKKworIzogYXBwbHkuYzo0Njk4CisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXBwZWQgcGF0Y2ggJyVzJy4iCittc2dzdHIgIiclcycgeWFtYXPEsSBhdGxhbmTEsS4iCisKKyM6IGFwcGx5LmM6NDcwNgorbXNnaWQgInVucmVjb2duaXplZCBpbnB1dCIKK21zZ3N0ciAidGFuxLFtbGFuYW1heWFuIGdpcmRpIgorCisjOiBhcHBseS5jOjQ3MjYKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBpbmRleCBmaWxlIgorbXNnc3RyICJpbmRla3MgZG9zeWFzxLEgb2t1bmFtxLF5b3IiCisKKyM6IGFwcGx5LmM6NDg4MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBvcGVuIHBhdGNoICclcyc6ICVzIgorbXNnc3RyICInJXMnIHlhbWFzxLEgYcOnxLFsYW3EsXlvcjogJXMiCisKKyM6IGFwcGx5LmM6NDkxMAorIywgYy1mb3JtYXQKK21zZ2lkICJzcXVlbGNoZWQgJWQgd2hpdGVzcGFjZSBlcnJvciIKK21zZ2lkX3BsdXJhbCAic3F1ZWxjaGVkICVkIHdoaXRlc3BhY2UgZXJyb3JzIgorbXNnc3RyWzBdICIlZCBib8WfbHVrIGhhdGFzxLEgc3VzdHVydWxkdSIKK21zZ3N0clsxXSAiJWQgYm/Fn2x1ayBoYXRhc8SxIHN1c3R1cnVsZHUiCisKKyM6IGFwcGx5LmM6NDkxNiBhcHBseS5jOjQ5MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgbGluZSBhZGRzIHdoaXRlc3BhY2UgZXJyb3JzLiIKK21zZ2lkX3BsdXJhbCAiJWQgbGluZXMgYWRkIHdoaXRlc3BhY2UgZXJyb3JzLiIKK21zZ3N0clswXSAiJWQgc2F0xLFyIGJvxZ9sdWsgaGF0YXPEsSBla2xpeW9yLiIKK21zZ3N0clsxXSAiJWQgc2F0xLFyIGJvxZ9sdWsgaGF0YXPEsSBla2xpeW9yLiIKKworIzogYXBwbHkuYzo0OTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIGxpbmUgYXBwbGllZCBhZnRlciBmaXhpbmcgd2hpdGVzcGFjZSBlcnJvcnMuIgorbXNnaWRfcGx1cmFsICIlZCBsaW5lcyBhcHBsaWVkIGFmdGVyIGZpeGluZyB3aGl0ZXNwYWNlIGVycm9ycy4iCittc2dzdHJbMF0gIkJvxZ9sdWsgaGF0YWxhcsSxIGTDvHplbHRpbGRpa3RlbiBzb25yYSAlZCBzYXTEsXIgdXlndWxhbmTEsS4iCittc2dzdHJbMV0gIkJvxZ9sdWsgaGF0YWxhcsSxIGTDvHplbHRpbGRpa3RlbiBzb25yYSAlZCBzYXTEsXIgdXlndWxhbmTEsS4iCisKKyM6IGFwcGx5LmM6NDk0MCBidWlsdGluL2FkZC5jOjYxMiBidWlsdGluL212LmM6MzAxIGJ1aWx0aW4vcm0uYzo0MDYKK21zZ2lkICJVbmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCittc2dzdHIgIlllbmkgaW5kZWtzIGRvc3lhc8SxIHlhesSxbGFtxLF5b3IiCisKKyM6IGFwcGx5LmM6NDk2OAorbXNnaWQgImRvbid0IGFwcGx5IGNoYW5nZXMgbWF0Y2hpbmcgdGhlIGdpdmVuIHBhdGgiCittc2dzdHIgInZlcmlsZW4geW9sIGlsZSBlxZ9sZcWfZW4gZGXEn2nFn2lrbGlrbGVyaSB1eWd1bGFtYSIKKworIzogYXBwbHkuYzo0OTcxCittc2dpZCAiYXBwbHkgY2hhbmdlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCIKK21zZ3N0ciAidmVyaWxlbiB5b2wgaWxlIGXFn2xlxZ9lbiBkZcSfacWfaWtsaWtsZXJpIHV5Z3VsYSIKKworIzogYXBwbHkuYzo0OTczIGJ1aWx0aW4vYW0uYzoyMjYwCittc2dpZCAibnVtIgorbXNnc3RyICJzYXnEsSIKKworIzogYXBwbHkuYzo0OTc0Cittc2dpZCAicmVtb3ZlIDxudW0+IGxlYWRpbmcgc2xhc2hlcyBmcm9tIHRyYWRpdGlvbmFsIGRpZmYgcGF0aHMiCittc2dzdHIgImdlbGVuZWtzZWwgZGlmZiB5b2xsYXLEsW5kYW4gPHNhecSxPiDDtm5jw7wgZcSfaWsgw6dpemdpeWkga2FsZMSxciIKKworIzogYXBwbHkuYzo0OTc3Cittc2dpZCAiaWdub3JlIGFkZGl0aW9ucyBtYWRlIGJ5IHRoZSBwYXRjaCIKK21zZ3N0ciAieWFtYW7EsW4geWFwdMSxxJ/EsSBla2xlbWVsZXJpIHlvayBzYXkiCisKKyM6IGFwcGx5LmM6NDk3OQorbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBvdXRwdXQgZGlmZnN0YXQgZm9yIHRoZSBpbnB1dCIKK21zZ3N0ciAieWFtYXnEsSB1eWd1bGFtYSB5ZXJpbmUgZ2lyZGkgacOnaW4gZGlmZnN0YXQnxLEgw6fEsWt0xLEgdmVyIgorCisjOiBhcHBseS5jOjQ5ODMKK21zZ2lkICJzaG93IG51bWJlciBvZiBhZGRlZCBhbmQgZGVsZXRlZCBsaW5lcyBpbiBkZWNpbWFsIG5vdGF0aW9uIgorbXNnc3RyICJla2xlbmVuIHZlIHNpbGluZW4gc2F0xLFybGFyxLFuIHNhecSxc8SxbsSxIG9ubHVrIGJpcmltZGUgZ8O2c3RlciIKKworIzogYXBwbHkuYzo0OTg1Cittc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIG91dHB1dCBhIHN1bW1hcnkgZm9yIHRoZSBpbnB1dCIKK21zZ3N0ciAieWFtYXnEsSB1eWd1bGFtYSB5ZXJpbmUgZ2lyZGkgacOnaW4gYmlyIMO2emV0IMOnxLFrdMSxc8SxIHZlciIKKworIzogYXBwbHkuYzo0OTg3Cittc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIHNlZSBpZiB0aGUgcGF0Y2ggaXMgYXBwbGljYWJsZSIKK21zZ3N0ciAieWFtYXnEsSB1eWd1bGFtYSB5ZXJpbmUgeWFtYW7EsW4gdXlndWxhbmFiaWxpciBvbHVwIG9sbWFkxLHEn8SxbmEgYmFrIgorCisjOiBhcHBseS5jOjQ5ODkKK21zZ2lkICJtYWtlIHN1cmUgdGhlIHBhdGNoIGlzIGFwcGxpY2FibGUgdG8gdGhlIGN1cnJlbnQgaW5kZXgiCittc2dzdHIgInlhbWFuxLFuIGdlw6dlcmxpIGluZGVrc2UgdXlndWxhbmFiaWxpciBvbGR1xJ91bmRhbiBlbWluIG9sIgorCisjOiBhcHBseS5jOjQ5OTEKK21zZ2lkICJtYXJrIG5ldyBmaWxlcyB3aXRoIGBnaXQgYWRkIC0taW50ZW50LXRvLWFkZGAiCittc2dzdHIgInllbmkgZG9zeWFsYXLEsSBgZ2l0IGFkZCAtLWludGVudC10by1hZGRgIGlsZSBpbWxlIgorCisjOiBhcHBseS5jOjQ5OTMKK21zZ2lkICJhcHBseSBhIHBhdGNoIHdpdGhvdXQgdG91Y2hpbmcgdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiw6dhbMSxxZ9tYSBhxJ9hY8SxbmEgZG9rdW5tYWRhbiBiaXIgeWFtYSB1eWd1bGEiCisKKyM6IGFwcGx5LmM6NDk5NQorbXNnaWQgImFjY2VwdCBhIHBhdGNoIHRoYXQgdG91Y2hlcyBvdXRzaWRlIHRoZSB3b3JraW5nIGFyZWEiCittc2dzdHIgIsOnYWzEscWfbWEgYcSfYWPEsW7EsW4gZMSxxZ/EsW5hIGRva3VuYW4gYmlyIHlhbWF5xLEga2FidWwgZXQiCisKKyM6IGFwcGx5LmM6NDk5OAorbXNnaWQgImFsc28gYXBwbHkgdGhlIHBhdGNoICh1c2Ugd2l0aCAtLXN0YXQvLS1zdW1tYXJ5Ly0tY2hlY2spIgorbXNnc3RyICJlayBvbGFyYWsgeWFtYXnEsSBkYSB1eWd1bGEgKC0tc3RhdC8tLXN1bW1hcnkvLS1jaGVjayBpbGUga3VsbGFuKSIKKworIzogYXBwbHkuYzo1MDAwCittc2dpZCAiYXR0ZW1wdCB0aHJlZS13YXkgbWVyZ2UgaWYgYSBwYXRjaCBkb2VzIG5vdCBhcHBseSIKK21zZ3N0ciAiYmlyIHlhbWEgdXlndWxhbmFtxLF5b3JzYSAzIHnDtm5sw7wgYmlybGXFn3Rpcm1lIGRlbmUiCisKKyM6IGFwcGx5LmM6NTAwMgorbXNnaWQgImJ1aWxkIGEgdGVtcG9yYXJ5IGluZGV4IGJhc2VkIG9uIGVtYmVkZGVkIGluZGV4IGluZm9ybWF0aW9uIgorbXNnc3RyICJnw7Ztw7xsw7wgaW5kZWtzIGJpbGdpc2luaSB0ZW1lbCBhbGFuIGdlw6dpY2kgYmlyIGluZGVrcyBvbHXFn3R1ciIKKworIzogYXBwbHkuYzo1MDA1IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzMgYnVpbHRpbi9scy1maWxlcy5jOjUyNAorbXNnaWQgInBhdGhzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgorbXNnc3RyICJ5b2xsYXIgTlVMIGthcmFrdGVyaSBpbGUgYXlyxLFsxLFyIgorCisjOiBhcHBseS5jOjUwMDcKK21zZ2lkICJlbnN1cmUgYXQgbGVhc3QgPG4+IGxpbmVzIG9mIGNvbnRleHQgbWF0Y2giCittc2dzdHIgImVuIGF6IDxuPiBiYcSfbGFtIHNhdMSxcsSxbsSxbiBlxZ9sZcWfdGnEn2luZGVuIGVtaW4gb2wiCisKKyM6IGFwcGx5LmM6NTAwOCBidWlsdGluL2FtLmM6MjIzOSBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk4CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMCBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU3IGJ1aWx0aW4vcmViYXNlLmM6MTUwOAorbXNnaWQgImFjdGlvbiIKK21zZ3N0ciAiZXlsZW0iCisKKyM6IGFwcGx5LmM6NTAwOQorbXNnaWQgImRldGVjdCBuZXcgb3IgbW9kaWZpZWQgbGluZXMgdGhhdCBoYXZlIHdoaXRlc3BhY2UgZXJyb3JzIgorbXNnc3RyICJib8WfbHVrIGhhdGFzxLEgacOnZXJlbiB5ZW5pIHZleWEgZGXEn2nFn3RpcmlsbWnFnyBzYXTEsXJsYXLEsSBhbGfEsWxhIgorCisjOiBhcHBseS5jOjUwMTIgYXBwbHkuYzo1MDE1Cittc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSB3aGVuIGZpbmRpbmcgY29udGV4dCIKK21zZ3N0ciAiYmHEn2xhbSBidWx1cmtlbiBib8WfbHVrIGRlxJ9pxZ9pa2xpa2xlcmluaSB5b2sgc2F5IgorCisjOiBhcHBseS5jOjUwMTgKK21zZ2lkICJhcHBseSB0aGUgcGF0Y2ggaW4gcmV2ZXJzZSIKK21zZ3N0ciAieWFtYXnEsSB0ZXJzdGVuIHV5Z3VsYSIKKworIzogYXBwbHkuYzo1MDIwCittc2dpZCAiZG9uJ3QgZXhwZWN0IGF0IGxlYXN0IG9uZSBsaW5lIG9mIGNvbnRleHQiCittc2dzdHIgImVuIGF6IGJpciBzYXTEsXIgYmHEn2xhbSBiZWtsZW1lIgorCisjOiBhcHBseS5jOjUwMjIKK21zZ2lkICJsZWF2ZSB0aGUgcmVqZWN0ZWQgaHVua3MgaW4gY29ycmVzcG9uZGluZyAqLnJlaiBmaWxlcyIKK21zZ3N0ciAicmVkZGVkaWxtacWfIHBhcsOnYWxhcsSxIGlsZ2lsaSAqLnJlaiBkb3N5YWxhcsSxbmRhIGLEsXJhayIKKworIzogYXBwbHkuYzo1MDI0Cittc2dpZCAiYWxsb3cgb3ZlcmxhcHBpbmcgaHVua3MiCittc2dzdHIgIsO8c3Qgw7xzdGUgYmluZW4gcGFyw6dhbGFyYSBpemluIHZlciIKKworIzogYXBwbHkuYzo1MDI1IGJ1aWx0aW4vYWRkLmM6MzIzIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MCBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5OCBidWlsdGluL2ZzY2suYzo3NzQKKyM6IGJ1aWx0aW4vbG9nLmM6MjE2NiBidWlsdGluL212LmM6MTIzIGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI4Cittc2dpZCAiYmUgdmVyYm9zZSIKK21zZ3N0ciAiYXlyxLFudMSxIHZlciIKKworIzogYXBwbHkuYzo1MDI3Cittc2dpZCAidG9sZXJhdGUgaW5jb3JyZWN0bHkgZGV0ZWN0ZWQgbWlzc2luZyBuZXctbGluZSBhdCB0aGUgZW5kIG9mIGZpbGUiCittc2dzdHIgImRvc3lhIHNvbnVuZGEgeWFubMSxxZ9sxLFrbGEgYWxnxLFsYW5hbiBla3NpayB5ZW5pc2F0xLFyxLEgaG/FnyBnw7ZyIgorCisjOiBhcHBseS5jOjUwMzAKK21zZ2lkICJkbyBub3QgdHJ1c3QgdGhlIGxpbmUgY291bnRzIGluIHRoZSBodW5rIGhlYWRlcnMiCittc2dzdHIgInBhcsOnYSDDvHN0YmlsZ2lzaW5kZWtpIHNhdMSxciBzYXnEsW3EsW5hIGfDvHZlbm1lIgorCisjOiBhcHBseS5jOjUwMzIgYnVpbHRpbi9hbS5jOjIyNDgKK21zZ2lkICJyb290IgorbXNnc3RyICJrw7ZrIgorCisjOiBhcHBseS5jOjUwMzMKK21zZ2lkICJwcmVwZW5kIDxyb290PiB0byBhbGwgZmlsZW5hbWVzIgorbXNnc3RyICJ0w7xtIGRvc3lhIGFkbGFyxLFuxLFuIGJhxZ/EsW5hIDxrw7ZrPiBla2xlIgorCisjOiBhcmNoaXZlLmM6MTQKK21zZ2lkICJnaXQgYXJjaGl2ZSBbPG9wdGlvbnM+XSA8dHJlZS1pc2g+IFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgYXJjaGl2ZSBbPHNlw6dlbmVrbGVyPl0gPGHEn2FjxLFtc8SxPiBbPHlvbD4uLi5dIgorCisjOiBhcmNoaXZlLmM6MTUKK21zZ2lkICJnaXQgYXJjaGl2ZSAtLWxpc3QiCittc2dzdHIgImdpdCBhcmNoaXZlIC0tbGlzdCIKKworIzogYXJjaGl2ZS5jOjE2Cittc2dpZCAiIgorImdpdCBhcmNoaXZlIC0tcmVtb3RlIDxyZXBvPiBbLS1leGVjIDxjbWQ+XSBbPG9wdGlvbnM+XSA8dHJlZS1pc2g+IFs8cGF0aD4uLi5dIgorbXNnc3RyICIiCisiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPGRlcG8+IFstLWV4ZWMgPGtvbXV0Pl0gWzxzw6dua2xyPl0gPGHEn2FjxLFtc8SxPiBbPHlvbD4uLi5dIgorCisjOiBhcmNoaXZlLmM6MTcKK21zZ2lkICJnaXQgYXJjaGl2ZSAtLXJlbW90ZSA8cmVwbz4gWy0tZXhlYyA8Y21kPl0gLS1saXN0IgorbXNnc3RyICJnaXQgYXJjaGl2ZSAtLXJlbW90ZSA8ZGVwbz4gWy0tZXhlYyA8a29tdXQ+XSAtLWxpc3QiCisKKyM6IGFyY2hpdmUuYzozNzIgYnVpbHRpbi9hZGQuYzoxODEgYnVpbHRpbi9hZGQuYzo1ODggYnVpbHRpbi9ybS5jOjMxNQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoc3BlYyAnJXMnIGRpZCBub3QgbWF0Y2ggYW55IGZpbGVzIgorbXNnc3RyICJ5b2wgYmVsaXJ0ZWNpICclcycgaGnDp2JpciBkb3N5YSBpbGUgZcWfbGXFn21lZGkiCisKKyM6IGFyY2hpdmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCByZWY6ICUuKnMiCittc2dzdHIgImLDtnlsZSBiaXIgYmHFn3Z1cnUgeW9rOiAlLipzIgorCisjOiBhcmNoaXZlLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAlcyIKK21zZ3N0ciAiZ2XDp2VybGkgYmlyIG5lc25lIGFkxLEgZGXEn2lsOiAlcyIKKworIzogYXJjaGl2ZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB0cmVlIG9iamVjdDogJXMiCittc2dzdHIgImJpciBhxJ9hw6cgbmVzbmVzaSBkZcSfaWw6ICVzIgorCisjOiBhcmNoaXZlLmM6NDI2Cittc2dpZCAiY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSBpcyB1bnRyYWNrZWQiCittc2dzdHIgImdlw6dlcmxpIMOnYWzEscWfbWEgZGl6aW5pIGl6bGVubWl5b3IiCisKKyM6IGFyY2hpdmUuYzo0NTcKK21zZ2lkICJmbXQiCittc2dzdHIgImJpw6dpbSIKKworIzogYXJjaGl2ZS5jOjQ1NworbXNnaWQgImFyY2hpdmUgZm9ybWF0IgorbXNnc3RyICJhcsWfaXYgYmnDp2ltaSIKKworIzogYXJjaGl2ZS5jOjQ1OCBidWlsdGluL2xvZy5jOjE2NTMKK21zZ2lkICJwcmVmaXgiCittc2dzdHIgIsO2bmVrIgorCisjOiBhcmNoaXZlLmM6NDU5Cittc2dpZCAicHJlcGVuZCBwcmVmaXggdG8gZWFjaCBwYXRobmFtZSBpbiB0aGUgYXJjaGl2ZSIKK21zZ3N0ciAiw7ZuZWtpIGFyxZ9pdmRla2kgdMO8bSB5b2wgYWRsYXLEsW7EsW4gYmHFn8SxbmEgZWtsZSIKKworIzogYXJjaGl2ZS5jOjQ2MCBidWlsdGluL2JsYW1lLmM6ODYxIGJ1aWx0aW4vYmxhbWUuYzo4NjUgYnVpbHRpbi9ibGFtZS5jOjg2NgorIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExNyBidWlsdGluL2NvbmZpZy5jOjEzMCBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2MgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjQgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjggYnVpbHRpbi9ncmVwLmM6ODg3CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA1IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjAgYnVpbHRpbi9scy1maWxlcy5jOjU2MworIzogYnVpbHRpbi9ub3Rlcy5jOjQxMiBidWlsdGluL25vdGVzLmM6NTc4IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTIzCisjOiBwYXJzZS1vcHRpb25zLmg6MTkwCittc2dpZCAiZmlsZSIKK21zZ3N0ciAiZG9zeWEiCisKKyM6IGFyY2hpdmUuYzo0NjEgYnVpbHRpbi9hcmNoaXZlLmM6OTAKK21zZ2lkICJ3cml0ZSB0aGUgYXJjaGl2ZSB0byB0aGlzIGZpbGUiCittc2dzdHIgImFyxZ9pdmkgYnUgZG9zeWF5YSB5YXoiCisKKyM6IGFyY2hpdmUuYzo0NjMKK21zZ2lkICJyZWFkIC5naXRhdHRyaWJ1dGVzIGluIHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICLDp2FsxLHFn21hIGRpemluaW5kZWtpIC5naXRhdHRyaWJ1dGVzJ3Ugb2t1IgorCisjOiBhcmNoaXZlLmM6NDY0Cittc2dpZCAicmVwb3J0IGFyY2hpdmVkIGZpbGVzIG9uIHN0ZGVyciIKK21zZ3N0ciAiYXLFn2l2bGVubWnFnyBkb3N5YWxhcsSxIHN0ZGVycidkZSByYXBvcmxhIgorCisjOiBhcmNoaXZlLmM6NDY1Cittc2dpZCAic3RvcmUgb25seSIKK21zZ3N0ciAieWFsbsSxemNhIGRlcG9sYSIKKworIzogYXJjaGl2ZS5jOjQ2NgorbXNnaWQgImNvbXByZXNzIGZhc3RlciIKK21zZ3N0ciAiZGFoYSBoxLF6bMSxIHPEsWvEscWfdMSxciIKKworIzogYXJjaGl2ZS5jOjQ3NAorbXNnaWQgImNvbXByZXNzIGJldHRlciIKK21zZ3N0ciAiZGFoYSBpeWkgc8Sxa8SxxZ90xLFyIgorCisjOiBhcmNoaXZlLmM6NDc3Cittc2dpZCAibGlzdCBzdXBwb3J0ZWQgYXJjaGl2ZSBmb3JtYXRzIgorbXNnc3RyICJkZXN0ZWtsZW5lbiBhcsWfaXYgYmnDp2ltbGVyaW5pIGxpc3RlbGUiCisKKyM6IGFyY2hpdmUuYzo0NzkgYnVpbHRpbi9hcmNoaXZlLmM6OTEgYnVpbHRpbi9jbG9uZS5jOjExMyBidWlsdGluL2Nsb25lLmM6MTE2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxMQorbXNnaWQgInJlcG8iCittc2dzdHIgImRlcG8iCisKKyM6IGFyY2hpdmUuYzo0ODAgYnVpbHRpbi9hcmNoaXZlLmM6OTIKK21zZ2lkICJyZXRyaWV2ZSB0aGUgYXJjaGl2ZSBmcm9tIHJlbW90ZSByZXBvc2l0b3J5IDxyZXBvPiIKK21zZ3N0ciAiYXLFn2l2aSB1emFrIGtvbnVtIGRlcG9zdSA8ZGVwbz4nZGFuIGFsIgorCisjOiBhcmNoaXZlLmM6NDgxIGJ1aWx0aW4vYXJjaGl2ZS5jOjkzIGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTgKK21zZ2lkICJjb21tYW5kIgorbXNnc3RyICJrb211dCIKKworIzogYXJjaGl2ZS5jOjQ4MiBidWlsdGluL2FyY2hpdmUuYzo5NAorbXNnaWQgInBhdGggdG8gdGhlIHJlbW90ZSBnaXQtdXBsb2FkLWFyY2hpdmUgY29tbWFuZCIKK21zZ3N0ciAidXphayBrb251bSBrb211dHUgZ2l0LXVwbG9hZC1hcmNoaXZlJ2Ugb2xhbiB5b2wiCisKKyM6IGFyY2hpdmUuYzo0ODkKK21zZ2lkICJVbmV4cGVjdGVkIG9wdGlvbiAtLXJlbW90ZSIKK21zZ3N0ciAiQmVrbGVubWVkaWsgc2XDp2VuZWsgLS1yZW1vdGUiCisKKyM6IGFyY2hpdmUuYzo0OTEKK21zZ2lkICJPcHRpb24gLS1leGVjIGNhbiBvbmx5IGJlIHVzZWQgdG9nZXRoZXIgd2l0aCAtLXJlbW90ZSIKK21zZ3N0ciAiLS1leGVjIHNlw6dlbmXEn2kgeWFsbsSxemNhIC0tcmVtb3RlIGlsZSBiaXJsaWt0ZSBrdWxsYW7EsWxhYmlsaXIiCisKKyM6IGFyY2hpdmUuYzo0OTMKK21zZ2lkICJVbmV4cGVjdGVkIG9wdGlvbiAtLW91dHB1dCIKK21zZ3N0ciAiQmVrbGVubWVkaWsgc2XDp2VuZWsgLS1vdXRwdXQiCisKKyM6IGFyY2hpdmUuYzo1MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5rbm93biBhcmNoaXZlIGZvcm1hdCAnJXMnIgorbXNnc3RyICJCaWxpbm1leWVuIGFyxZ9pdiBiacOnaW1pICclcyciCisKKyM6IGFyY2hpdmUuYzo1MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXJndW1lbnQgbm90IHN1cHBvcnRlZCBmb3IgZm9ybWF0ICclcyc6IC0lZCIKK21zZ3N0ciAiJyVzJyBiacOnaW1pIGnDp2luIGRlc3Rla2xlbm1leWVuIGRlxJ9pxZ9rZW46IC0lZCIKKworIzogYXJjaGl2ZS10YXIuYzoxMjUgYXJjaGl2ZS16aXAuYzozNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0cmVhbSBibG9iICVzIgorbXNnc3RyICIlcyBpa2lsaSBuZXNuZXNpIGFrxLF0xLFsYW3EsXlvciIKKworIzogYXJjaGl2ZS10YXIuYzoyNjYgYXJjaGl2ZS16aXAuYzozNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5zdXBwb3J0ZWQgZmlsZSBtb2RlOiAwJW8gKFNIQTE6ICVzKSIKK21zZ3N0ciAiZGVzdGVrbGVubWV5ZW4gZG9zeWEga2lwaTogMCVvIChTSEExOiAlcykiCisKKyM6IGFyY2hpdmUtdGFyLmM6MjkzIGFyY2hpdmUtemlwLmM6MzU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICVzIgorbXNnc3RyICIlcyBva3VuYW3EsXlvciIKKworIzogYXJjaGl2ZS10YXIuYzo0NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXJ0ICclcycgZmlsdGVyIgorbXNnc3RyICInJXMnIHPDvHpnZWNpIGJhxZ9sYXTEsWxhbcSxeW9yIgorCisjOiBhcmNoaXZlLXRhci5jOjQ2OAorbXNnaWQgInVuYWJsZSB0byByZWRpcmVjdCBkZXNjcmlwdG9yIgorbXNnc3RyICJhw6fEsWtsYXnEsWPEsSB5ZW5pZGVuIHnDtm5sZW5kaXJpbGVtaXlvciIKKworIzogYXJjaGl2ZS10YXIuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBmaWx0ZXIgcmVwb3J0ZWQgZXJyb3IiCittc2dzdHIgIiclcycgc8O8emdlY2kgaGF0YSBiaWxkaXJkaSIKKworIzogYXJjaGl2ZS16aXAuYzozMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCBpcyBub3QgdmFsaWQgVVRGLTg6ICVzIgorbXNnc3RyICJ5b2wgZ2XDp2VybGkgVVRGLTggZGXEn2lsOiAlcyIKKworIzogYXJjaGl2ZS16aXAuYzozMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCB0b28gbG9uZyAoJWQgY2hhcnMsIFNIQTE6ICVzKTogJXMiCittc2dzdHIgInlvbCDDp29rIHV6dW4gKCVkIGthcmFrdGVyLCBTSEExOiAlcyk6ICVzIgorCisjOiBhcmNoaXZlLXppcC5jOjQ4MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIzMSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkZWZsYXRlIGVycm9yICglZCkiCittc2dzdHIgInPDtm5kw7xybWUgaGF0YXPEsSAoJWQpIgorCisjOiBhcmNoaXZlLXppcC5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICJ0aW1lc3RhbXAgdG9vIGxhcmdlIGZvciB0aGlzIHN5c3RlbTogJTxQUkl1TUFYPiIKK21zZ3N0ciAiemFtYW4gZGFtZ2FzxLEgYnUgc2lzdGVtIGnDp2luIMOnb2sgYsO8ecO8azogJTxQUkl1TUFYPiIKKworIzogYXR0ci5jOjIxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlLipzIGlzIG5vdCBhIHZhbGlkIGF0dHJpYnV0ZSBuYW1lIgorbXNnc3RyICIlLipzIGdlw6dlcmxpIGJpciDDtnpuaXRlbGlrIGFkxLEgZGXEn2lsIgorCisjOiBhdHRyLmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIG5vdCBhbGxvd2VkOiAlczolZCIKK21zZ3N0ciAiJXMgaXppbiB2ZXJpbG1peW9yOiAlczolZCIKKworIzogYXR0ci5jOjQwOQorbXNnaWQgIiIKKyJOZWdhdGl2ZSBwYXR0ZXJucyBhcmUgaWdub3JlZCBpbiBnaXQgYXR0cmlidXRlc1xuIgorIlVzZSAnXFwhJyBmb3IgbGl0ZXJhbCBsZWFkaW5nIGV4Y2xhbWF0aW9uLiIKK21zZ3N0ciAiIgorIk5lZ2F0aWYgZGl6Z2lsZXIgZ2l0IMO2em5pdGVsaWtsZXJpbmRlIHlvayBzYXnEsWzEsXIuXG4iCisiR2Vyw6dlayDDtm5jw7wgw7xubGVtIGnDp2luICdcXCEnIGt1bGxhbsSxbi4iCisKKyM6IGJpc2VjdC5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJCYWRseSBxdW90ZWQgY29udGVudCBpbiBmaWxlICclcyc6ICVzIgorbXNnc3RyICInJXMnIGRvc3lhc8SxbmRhIGhhdGFsxLEgdMSxcm5hxJ9hIGFsxLFubcSxxZ8gacOnZXJpazogJXMiCisKKyM6IGJpc2VjdC5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJXZSBjYW5ub3QgYmlzZWN0IG1vcmUhXG4iCittc2dzdHIgIkRhaGEgZmF6bGEgaWtpbGkgYXJhbWEgeWFwYW3EsXlvcnV6IVxuIgorCisjOiBiaXNlY3QuYzo3NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm90IGEgdmFsaWQgY29tbWl0IG5hbWUgJXMiCittc2dzdHIgIkdlw6dlcmxpIGJpciBnw7ZuZGVyaSBhZMSxIGRlxJ9pbDogJXMiCisKKyM6IGJpc2VjdC5jOjc3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIG1lcmdlIGJhc2UgJXMgaXMgYmFkLlxuIgorIlRoaXMgbWVhbnMgdGhlIGJ1ZyBoYXMgYmVlbiBmaXhlZCBiZXR3ZWVuICVzIGFuZCBbJXNdLlxuIgorbXNnc3RyICIiCisiQmlybGXFn3Rpcm1lIHRlbWVsaSAlcyBoYXRhbMSxLlxuIgorIkJ1IGRlbWVrIG9sdXlvciBraSBoYXRhICVzIHZlIFslc10gYXJhc8SxbmRhIGTDvHplbHRpbG1pxZ8uXG4iCisKKyM6IGJpc2VjdC5jOjc3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIG1lcmdlIGJhc2UgJXMgaXMgbmV3LlxuIgorIlRoZSBwcm9wZXJ0eSBoYXMgY2hhbmdlZCBiZXR3ZWVuICVzIGFuZCBbJXNdLlxuIgorbXNnc3RyICIiCisiQmlybGXFn3Rpcm1lIHRlbWVsaSAlcyB5ZW5pLlxuIgorIsOWemVsbGlrICVzIHZlIFslc10gYXJhc8SxbmRhIGRlxJ9pxZ9tacWfLlxuIgorCisjOiBiaXNlY3QuYzo3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBtZXJnZSBiYXNlICVzIGlzICVzLlxuIgorIlRoaXMgbWVhbnMgdGhlIGZpcnN0ICclcycgY29tbWl0IGlzIGJldHdlZW4gJXMgYW5kIFslc10uXG4iCittc2dzdHIgIiIKKyJCaXJsZcWfdGlybWUgdGVtZWxpICVzICVzLlxuIgorIkJ1IGRlbWVrIG9sdXlvciBraSBpbGsgJyVzJyBnw7ZuZGVyaXNpICVzIHZlIFslc10gYXJhc8SxbmRhLlxuIgorCisjOiBiaXNlY3QuYzo3ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNvbWUgJXMgcmV2cyBhcmUgbm90IGFuY2VzdG9ycyBvZiB0aGUgJXMgcmV2LlxuIgorImdpdCBiaXNlY3QgY2Fubm90IHdvcmsgcHJvcGVybHkgaW4gdGhpcyBjYXNlLlxuIgorIk1heWJlIHlvdSBtaXN0b29rICVzIGFuZCAlcyByZXZzP1xuIgorbXNnc3RyICIiCisiQmF6xLEgJXMgcmV2aXp5b25sYXLEsSAlcyByZXZpenlvbnVudW4gYXRhc8SxIGRlxJ9pbC5cbiIKKyJnaXQgYmlzZWN0IGJ1IGR1cnVtZGEgZMO8emfDvG5jZSDDp2FsxLHFn2FtYXouXG4iCisiJXMgdmUgJXMgcmV2aXp5b25sYXLEsW7EsSBiaXJiaXJpbmUgbWkga2FyxLHFn3TEsXJkxLFuxLF6P1xuIgorCisjOiBiaXNlY3QuYzo4MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRoZSBtZXJnZSBiYXNlIGJldHdlZW4gJXMgYW5kIFslc10gbXVzdCBiZSBza2lwcGVkLlxuIgorIlNvIHdlIGNhbm5vdCBiZSBzdXJlIHRoZSBmaXJzdCAlcyBjb21taXQgaXMgYmV0d2VlbiAlcyBhbmQgJXMuXG4iCisiV2UgY29udGludWUgYW55d2F5LiIKK21zZ3N0ciAiIgorIiVzIHZlIFslc10gYXJhc8SxbmRha2kgYmlybGXFn3Rpcm1lIHRlbWVsaSBhdGxhbm1hbMSxLlxuIgorIiVzIGfDtm5kZXJpc2luaW4gJXMgdmUgWyVzXSBhcmFzxLFuZGEgb2xkdcSfdW5kYW4gZW1pbiBvbGFtxLF5b3J1ei5cbiIKKyJZaW5lIGRlIHPDvHJkw7xyZWNlxJ9pei4iCisKKyM6IGJpc2VjdC5jOjg0MAorIywgYy1mb3JtYXQKK21zZ2lkICJCaXNlY3Rpbmc6IGEgbWVyZ2UgYmFzZSBtdXN0IGJlIHRlc3RlZFxuIgorbXNnc3RyICLEsGtpbGkgYXJhbWE6IEJpciBiaXJsZcWfdGlybWUgdGVtZWxpIHPEsW5hbm1hbMSxXG4iCisKKyM6IGJpc2VjdC5jOjg5MAorIywgYy1mb3JtYXQKK21zZ2lkICJhICVzIHJldmlzaW9uIGlzIG5lZWRlZCIKK21zZ3N0ciAiYmlyICVzIHJldml6eW9udSBnZXJla2l5b3IiCisKKyM6IGJpc2VjdC5jOjkyMCBidWlsdGluL25vdGVzLmM6MTc3IGJ1aWx0aW4vdGFnLmM6MjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICInJXMnIGRvc3lhc8SxIG9sdcWfdHVydWxhbWFkxLEiCisKKyM6IGJpc2VjdC5jOjk2NiBidWlsdGluL21lcmdlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIGZpbGUgJyVzJyIKK21zZ3N0ciAiJyVzJyBkb3N5YXPEsSBva3VuYW1hZMSxIgorCisjOiBiaXNlY3QuYzo5OTcKK21zZ2lkICJyZWFkaW5nIGJpc2VjdCByZWZzIGZhaWxlZCIKK21zZ3N0ciAiaWtpbGkgYXJhbWEgYmHFn3Z1cnVsYXLEsW7EsSBva3VtYSBiYcWfYXLEsXPEsXogb2xkdSIKKworIzogYmlzZWN0LmM6MTAxOQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB3YXMgYm90aCAlcyBhbmQgJXNcbiIKK21zZ3N0ciAiJXMgaGVtICVzIGhlbSAlcyBpZGlcbiIKKworIzogYmlzZWN0LmM6MTAyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTm8gdGVzdGFibGUgY29tbWl0IGZvdW5kLlxuIgorIk1heWJlIHlvdSBzdGFydGVkIHdpdGggYmFkIHBhdGggcGFyYW1ldGVycz9cbiIKK21zZ3N0ciAiIgorIlPEsW5hbmFiaWxpciBiaXIgZ8O2bmRlcmkgYnVsdW5hbWFkxLEuXG4iCisiSGF0YWzEsSB5b2wgcGFyYW1ldHJlbGVyaSBpbGUgbWkgYmHFn2xhZMSxbsSxej9cbiIKKworIzogYmlzZWN0LmM6MTA1NworIywgYy1mb3JtYXQKK21zZ2lkICIocm91Z2hseSAlZCBzdGVwKSIKK21zZ2lkX3BsdXJhbCAiKHJvdWdobHkgJWQgc3RlcHMpIgorbXNnc3RyWzBdICIoYcWfYcSfxLEgeXVrYXLEsSAlZCBhZMSxbSkiCittc2dzdHJbMV0gIihhxZ9hxJ/EsSB5dWthcsSxICVkIGFkxLFtKSIKKworIy4gVFJBTlNMQVRPUlM6IHRoZSBsYXN0ICVzIHdpbGwgYmUgcmVwbGFjZWQgd2l0aCAiKHJvdWdobHkgJWQKKyMuIHN0ZXBzKSIgdHJhbnNsYXRpb24uCisjLgorIzogYmlzZWN0LmM6MTA2MworIywgYy1mb3JtYXQKK21zZ2lkICJCaXNlY3Rpbmc6ICVkIHJldmlzaW9uIGxlZnQgdG8gdGVzdCBhZnRlciB0aGlzICVzXG4iCittc2dpZF9wbHVyYWwgIkJpc2VjdGluZzogJWQgcmV2aXNpb25zIGxlZnQgdG8gdGVzdCBhZnRlciB0aGlzICVzXG4iCittc2dzdHJbMF0gIsSwa2lsaSBhcmFtYTogxZ51bmRhbiBzb25yYSBzxLFuYW5hY2FrICVkIHJldml6eW9uIGthbGTEsTogJXNcbiIKK21zZ3N0clsxXSAixLBraWxpIGFyYW1hOiDFnnVuZGFuIHNvbnJhIHPEsW5hbmFjYWsgJWQgcmV2aXp5b24ga2FsZMSxOiAlc1xuIgorCisjOiBibGFtZS5jOjI3MDAKK21zZ2lkICItLWNvbnRlbnRzIGFuZCAtLXJldmVyc2UgZG8gbm90IGJsZW5kIHdlbGwuIgorbXNnc3RyICItLWNvbnRlbnRzIHZlIC0tcmV2ZXJzZSBiaXJsaWt0ZSBwZWsgaXlpIGdpdG1peW9yLiIKKworIzogYmxhbWUuYzoyNzE0Cittc2dpZCAiY2Fubm90IHVzZSAtLWNvbnRlbnRzIHdpdGggZmluYWwgY29tbWl0IG9iamVjdCBuYW1lIgorbXNnc3RyICItLWNvbnRlbnRzIHNvbiBnw7ZuZGVyaSBuZXNuZXNpIGFkxLEgaWxlIGt1bGxhbsSxbGFtxLF5b3IiCisKKyM6IGJsYW1lLmM6MjczNQorbXNnaWQgIi0tcmV2ZXJzZSBhbmQgLS1maXJzdC1wYXJlbnQgdG9nZXRoZXIgcmVxdWlyZSBzcGVjaWZpZWQgbGF0ZXN0IGNvbW1pdCIKK21zZ3N0ciAiIgorIi0tcmV2ZXJzZSB2ZSAtLWZpcnN0LXBhcmVudCBiaXJsaWt0ZSBlbiBzb24gZ8O2bmRlcmluaW4gYmVsaXJ0aWxtZXNpIGdlcmVrIgorCisjOiBibGFtZS5jOjI3NDQgYnVuZGxlLmM6MTY3IHJlZi1maWx0ZXIuYzoyMjAzIHJlbW90ZS5jOjE5NDIgc2VxdWVuY2VyLmM6MjAwNgorIzogc2VxdWVuY2VyLmM6NDM1OCBzdWJtb2R1bGUuYzo4NDcgYnVpbHRpbi9jb21taXQuYzoxMDQ1IGJ1aWx0aW4vbG9nLmM6Mzg4CisjOiBidWlsdGluL2xvZy5jOjk5MSBidWlsdGluL2xvZy5jOjE1MjAgYnVpbHRpbi9sb2cuYzoxOTI1IGJ1aWx0aW4vbG9nLmM6MjIxNQorIzogYnVpbHRpbi9tZXJnZS5jOjQxMiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkwCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MTkyCittc2dpZCAicmV2aXNpb24gd2FsayBzZXR1cCBmYWlsZWQiCittc2dzdHIgInJldml6eW9uZGEgZ2V6aW5tZSBheWFybGFtYXPEsSBiYcWfYXLEsXPEsXogb2xkdSIKKworIzogYmxhbWUuYzoyNzYyCittc2dpZCAiIgorIi0tcmV2ZXJzZSAtLWZpcnN0LXBhcmVudCB0b2dldGhlciByZXF1aXJlIHJhbmdlIGFsb25nIGZpcnN0LXBhcmVudCBjaGFpbiIKK21zZ3N0ciAiIgorIi0tcmV2ZXJzZSAtLWZpcnN0LXBhcmVudCBiaXJsaWt0ZSBpbGsgw7xzdCDDtmdlIHppbmNpcmluaW4geWFuxLFuZGEgZXJpbSAiCisiZ2VyZWt0aXJpeW9yIgorCisjOiBibGFtZS5jOjI3NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCBwYXRoICVzIGluICVzIgorbXNnc3RyICLFn3VyYWRhICVzIHlvbHUgYnVsdW5hbWFkxLE6ICVzIgorCisjOiBibGFtZS5jOjI3ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgYmxvYiAlcyBmb3IgcGF0aCAlcyIKK21zZ3N0ciAiJXMgaWtpbGkgbmVzbmVzaSAlcyB5b2x1bmRhIG9rdW5hbcSxeW9yIgorCisjOiBicmFuY2guYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQWZ0ZXIgZml4aW5nIHRoZSBlcnJvciBjYXVzZSB5b3UgbWF5IHRyeSB0byBmaXggdXBcbiIKKyJ0aGUgcmVtb3RlIHRyYWNraW5nIGluZm9ybWF0aW9uIGJ5IGludm9raW5nXG4iCisiXCJnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvPSVzJXMlc1wiLiIKK21zZ3N0ciAiIgorIlxuIgorIkhhdGEgbmVkZW5pbmkgb3J0YWRhbiBrYWxkxLFyZMSxa3RhbiBzb25yYSB1emFrIGtvbnVtIGl6bGVtZVxuIgorImJpbGdpc2luaSBvbmFybWF5xLEgxZ91bnUgw6dhbMSxxZ90xLFyYXJhayBkZW5leWViaWxpcnNpbml6OlxuIgorIlwiZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10bz0lcyVzJXNcIi4iCisKKyM6IGJyYW5jaC5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdCBzZXR0aW5nIGJyYW5jaCAlcyBhcyBpdHMgb3duIHVwc3RyZWFtLiIKK21zZ3N0ciAiJXMgZGFsxLEga2VuZGkgw7xzdCBrYXluYcSfxLEgb2xhcmFrIGF5YXJsYW5hbWF6LiIKKworIzogYnJhbmNoLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIHJlbW90ZSBicmFuY2ggJyVzJyBmcm9tICclcycgYnkgcmViYXNpbmcuIgorbXNnc3RyICIiCisiJyVzJyBkYWzEsSAnJXMnIHV6YWsgZGFsxLFuxLEgeWVuaWRlbiB0ZW1lbGxlbmRpcm1lIGlsZSAlcyBrb251bXVuZGFuIGl6bGVtZWsgIgorIsO8emVyZSBheWFybGFuZMSxLiIKKworIzogYnJhbmNoLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIHJlbW90ZSBicmFuY2ggJyVzJyBmcm9tICclcycuIgorbXNnc3RyICInJXMnIGRhbMSxICclcycgdXphayBkYWzEsW7EsSAlcyBrb251bXVuZGFuIGl6bGVtZWsgw7x6ZXJlIGF5YXJsYW5kxLEuIgorCisjOiBicmFuY2guYzo5OAorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycgYnkgcmViYXNpbmcuIgorbXNnc3RyICIiCisiJyVzJyBkYWzEsSAnJXMnIHllcmVsIGRhbMSxbsSxIHllbmlkZW4gdGVtZWxsZW5kaXJtZSBpbGUgaXpsZW1layDDvHplcmUgYXlhcmxhbmTEsSIKKworIzogYnJhbmNoLmM6OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIGJyYW5jaCAnJXMnLiIKK21zZ3N0ciAiJyVzJyBkYWzEsSAnJXMnIHllcmVsIGRhbMSxbsSxIGl6bGVtZWsgw7x6ZXJlIGF5YXJsYW5kxLEuIgorCisjOiBicmFuY2guYzoxMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIHJlbW90ZSByZWYgJyVzJyBieSByZWJhc2luZy4iCittc2dzdHIgIiIKKyInJXMnIGRhbMSxICclcycgdXphayBiYcWfdnVydXN1bnUgeWVuaWRlbiB0ZW1lbGxlbmRpcm1lIGlsZSBpemxlbWVrIMO8emVyZSAiCisiYXlhcmxhbmTEsS4iCisKKyM6IGJyYW5jaC5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIHJlZiAnJXMnLiIKK21zZ3N0ciAiJyVzJyBkYWzEsSAnJXMnIHV6YWsgYmHFn3Z1cnVzdW51IGl6bGVtZWsgw7x6ZXJlIGF5YXJsYW5kxLEuIgorCisjOiBicmFuY2guYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIHJlZiAnJXMnIGJ5IHJlYmFzaW5nLiIKK21zZ3N0ciAiIgorIiclcycgZGFsxLEgJyVzJyB5ZXJlbCBiYcWfdnVydXN1bnUgeWVuaWRlbiB0ZW1lbGxlbmRpcm1lIGlsZSBpemxlbWVrIMO8emVyZSAiCisiYXlhcmxhbmTEsS4iCisKKyM6IGJyYW5jaC5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycuIgorbXNnc3RyICInJXMnIGRhbMSxICclcycgeWVyZWwgYmHFn3Z1cnVzdW51IGl6bGVtZWsgw7x6ZXJlIGF5YXJsYW5kxLEuIgorCisjOiBicmFuY2guYzoxMTkKK21zZ2lkICJVbmFibGUgdG8gd3JpdGUgdXBzdHJlYW0gYnJhbmNoIGNvbmZpZ3VyYXRpb24iCittc2dzdHIgIsOcc3RrYXluYWsgZGFsIHlhcMSxbGFuZMSxcm1hc8SxIHlhesSxbGFtxLF5b3IiCisKKyM6IGJyYW5jaC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICJOb3QgdHJhY2tpbmc6IGFtYmlndW91cyBpbmZvcm1hdGlvbiBmb3IgcmVmICVzIgorbXNnc3RyICLEsHpsZW5taXlvcjogJXMgYmHFn3Z1cnVzdSBpw6dpbiBiZWxpcnNpeiBiaWxnaSIKKworIzogYnJhbmNoLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgYnJhbmNoIG5hbWUuIgorbXNnc3RyICInJXMnIGdlw6dlcmxpIGJpciBkYWwgYWTEsSBkZcSfaWwuIgorCisjOiBicmFuY2guYzoyMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQSBicmFuY2ggbmFtZWQgJyVzJyBhbHJlYWR5IGV4aXN0cy4iCittc2dzdHIgIiclcycgYWTEsW5kYSBiaXIgZGFsIGhhbGloYXrEsXJkYSB2YXIuIgorCisjOiBicmFuY2guYzoyMTMKK21zZ2lkICJDYW5ub3QgZm9yY2UgdXBkYXRlIHRoZSBjdXJyZW50IGJyYW5jaC4iCittc2dzdHIgIkdlw6dlcmxpIGRhbCB6b3JsYSBnw7xuY2VsbGVuZW1peW9yLiIKKworIzogYnJhbmNoLmM6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBzZXR1cCB0cmFja2luZyBpbmZvcm1hdGlvbjsgc3RhcnRpbmcgcG9pbnQgJyVzJyBpcyBub3QgYSBicmFuY2guIgorbXNnc3RyICLEsHpsZW1lIGJpbGdpc2kgYXlhcmxhbmFtxLF5b3I7IGJhxZ9sYW5nxLHDpyBub2t0YXPEsSAnJXMnIGJpciBkYWwgZGXEn2lsLiIKKworIzogYnJhbmNoLmM6MjM1CisjLCBjLWZvcm1hdAorbXNnaWQgInRoZSByZXF1ZXN0ZWQgdXBzdHJlYW0gYnJhbmNoICclcycgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgImlzdGVuZW4gw7xzdGtheW5hayBkYWzEsSAnJXMnIG1ldmN1dCBkZcSfaWwiCisKKyM6IGJyYW5jaC5jOjIzNworbXNnaWQgIiIKKyJcbiIKKyJJZiB5b3UgYXJlIHBsYW5uaW5nIG9uIGJhc2luZyB5b3VyIHdvcmsgb24gYW4gdXBzdHJlYW1cbiIKKyJicmFuY2ggdGhhdCBhbHJlYWR5IGV4aXN0cyBhdCB0aGUgcmVtb3RlLCB5b3UgbWF5IG5lZWQgdG9cbiIKKyJydW4gXCJnaXQgZmV0Y2hcIiB0byByZXRyaWV2ZSBpdC5cbiIKKyJcbiIKKyJJZiB5b3UgYXJlIHBsYW5uaW5nIHRvIHB1c2ggb3V0IGEgbmV3IGxvY2FsIGJyYW5jaCB0aGF0XG4iCisid2lsbCB0cmFjayBpdHMgcmVtb3RlIGNvdW50ZXJwYXJ0LCB5b3UgbWF5IHdhbnQgdG8gdXNlXG4iCisiXCJnaXQgcHVzaCAtdVwiIHRvIHNldCB0aGUgdXBzdHJlYW0gY29uZmlnIGFzIHlvdSBwdXNoLiIKK21zZ3N0ciAiIgorIlxuIgorIkXEn2VyIMOnYWzEscWfbWFuxLF6xLEgdXphayBrb251bWRhIGhhbGloYXrEsXJkYSB2YXIgb2xhbiBiaXIgZGFsXG4iCisiw7x6ZXJpbmUgdGVtZWxsZW5kaXJtZXlpIHRhc2FybMSxeW9yc2FuxLF6IMO2bmNlIFwiZ2l0IGZldGNoXCJcbiIKKyLDp2FsxLHFn3TEsXJhcmFrIG9udSBnZXRpcm1lbml6IGdlcmVrZWJpbGlyLlxuIgorIlxuIgorIkXEn2VyIHV6YWsga29udW1kYWtpIGXFn2luaSBpemxleWVjZWsgeWVyZWwgYmlyIGRhbCBpdG1leWlcbiIKKyJ0YXNhcmzEsXlvcnNhbsSxeiBpdG1lIHPEsXJhc8SxbmRhIMO8c3RrYXluYWsgeWFwxLFsYW5kxLFybWFzxLFuxLFcbiIKKyJkYSBheWFybGFtYWsgacOnaW4gXCJnaXQgcHVzaCAtdVwiIGt1bGxhbm1hayBpc3RleWViaWxpcnNpbml6LiIKKworIzogYnJhbmNoLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnLiIKK21zZ3N0ciAiR2XDp2VybGkgYmlyIG5lc25lIGFkxLEgZGXEn2lsOiAnJXMnLiIKKworIzogYnJhbmNoLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFtYmlndW91cyBvYmplY3QgbmFtZTogJyVzJy4iCittc2dzdHIgIkJlbGlyc2l6IG5lc25lIGFkxLE6ICclcycuIgorCisjOiBicmFuY2guYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm90IGEgdmFsaWQgYnJhbmNoIHBvaW50OiAnJXMnLiIKK21zZ3N0ciAiR2XDp2VybGkgYmlyIGRhbCBub2t0YXPEsSBkZcSfaWw6ICclcycuIgorCisjOiBicmFuY2guYzozNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBhbHJlYWR5IGNoZWNrZWQgb3V0IGF0ICclcyciCittc2dzdHIgIiclcycgw6fEsWvEscWfxLEgJyVzJyBrb251bXVuZGEgaGFsaWhhesSxcmRhIHlhcMSxbG3EscWfIgorCisjOiBicmFuY2guYzozODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiSEVBRCBvZiB3b3JraW5nIHRyZWUgJXMgaXMgbm90IHVwZGF0ZWQiCittc2dzdHIgIiVzIMOnYWzEscWfbWEgYcSfYWPEsW7EsW4gSEVBRCdpIGfDvG5jZWxsZW5tZW1pxZ8iCisKKyM6IGJ1bmRsZS5jOjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgbG9vayBsaWtlIGEgdjIgYnVuZGxlIGZpbGUiCittc2dzdHIgIiclcycgYmlyIHYyIGRlbWV0IGRvc3lhc8SxIGdpYmkgZ8O2csO8bm3DvHlvciIKKworIzogYnVuZGxlLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIGhlYWRlcjogJXMlcyAoJWQpIgorbXNnc3RyICJ0YW7EsW1sYW5hbWF5YW4gw7xzdGJpbGdpOiAlcyVzICglZCkiCisKKyM6IGJ1bmRsZS5jOjkwIHJlcmVyZS5jOjQ4MCByZXJlcmUuYzo2OTAgc2VxdWVuY2VyLmM6MjI1OCBzZXF1ZW5jZXIuYzozMDE2CisjOiBidWlsdGluL2NvbW1pdC5jOjgxNQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIgorbXNnc3RyICInJXMnIGHDp8SxbGFtYWTEsSIKKworIzogYnVuZGxlLmM6MTQzCittc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyB0aGVzZSBwcmVyZXF1aXNpdGUgY29tbWl0czoiCittc2dzdHIgIkRlcG8gYcWfYcSfxLFkYWtpIMO2bmNlZGVuIGdlcmVrZW4gZ8O2bmRlcmlsZXJlIGl5ZSBkZcSfaWw6IgorCisjOiBidW5kbGUuYzoxNDYKK21zZ2lkICJuZWVkIGEgcmVwb3NpdG9yeSB0byB2ZXJpZnkgYSBidW5kbGUiCittc2dzdHIgImJpciBkZW1ldGkgZG/En3J1bGFtYWsgacOnaW4gYmlyIGRlcG8gZ2VyZWtpeW9yIgorCisjOiBidW5kbGUuYzoxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlIGJ1bmRsZSBjb250YWlucyB0aGlzIHJlZjoiCittc2dpZF9wbHVyYWwgIlRoZSBidW5kbGUgY29udGFpbnMgdGhlc2UgJWQgcmVmczoiCittc2dzdHJbMF0gIkRlbWV0IMWfdSBiYcWfdnVydXl1IGnDp2VyaXlvcjoiCittc2dzdHJbMV0gIkRlbWV0IMWfdSAlZCBiYcWfdnVydXl1IGnDp2VyaXlvcjoiCisKKyM6IGJ1bmRsZS5jOjIwNAorbXNnaWQgIlRoZSBidW5kbGUgcmVjb3JkcyBhIGNvbXBsZXRlIGhpc3RvcnkuIgorbXNnc3RyICJEZW1ldCB0YW0gYmlyIGdlw6dtacWfIGtheWTEsW7EsSB5YXphci4iCisKKyM6IGJ1bmRsZS5jOjIwNgorIywgYy1mb3JtYXQKK21zZ2lkICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoaXMgcmVmOiIKK21zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSByZXF1aXJlcyB0aGVzZSAlZCByZWZzOiIKK21zZ3N0clswXSAiRGVtZXQgxZ91IGfDtm5kZXJpeWkgZ2VyZWt0aXJpeW9yOiIKK21zZ3N0clsxXSAiRGVtZXQgxZ91ICVkIGfDtm5kZXJpeWkgZ2VyZWt0aXJpeW9yOiIKKworIzogYnVuZGxlLmM6MjczCittc2dpZCAidW5hYmxlIHRvIGR1cCBidW5kbGUgZGVzY3JpcHRvciIKK21zZ3N0ciAiZGVtZXQgYcOnxLFrbGF5xLFjxLFzxLEgw6dvxJ9hbHTEsWxhbcSxeW9yIgorCisjOiBidW5kbGUuYzoyODAKK21zZ2lkICJDb3VsZCBub3Qgc3Bhd24gcGFjay1vYmplY3RzIgorbXNnc3RyICJwYWNrLW9iamVjdHMgb3J0YXlhIMOnxLFrYXLEsWxhbWFkxLEiCisKKyM6IGJ1bmRsZS5jOjI5MQorbXNnaWQgInBhY2stb2JqZWN0cyBkaWVkIgorbXNnc3RyICJwYWNrLW9iamVjdHMgc29ubGFuZMSxIgorCisjOiBidW5kbGUuYzozMzMKK21zZ2lkICJyZXYtbGlzdCBkaWVkIgorbXNnc3RyICJyZXYtbGlzdCBzb25sYW5kxLEiCisKKyM6IGJ1bmRsZS5jOjM4MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWYgJyVzJyBpcyBleGNsdWRlZCBieSB0aGUgcmV2LWxpc3Qgb3B0aW9ucyIKK21zZ3N0ciAiJyVzJyBiYcWfdnVydXN1IHJldml6eW9uIGxpc3Rlc2kgc2XDp2VuZWtsZXJpIHRhcmFmxLFuZGFuIGTEscWfbGFuZMSxIgorCisjOiBidW5kbGUuYzo0NjEgYnVpbHRpbi9sb2cuYzoyMDMgYnVpbHRpbi9sb2cuYzoxODE0IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAidGFuxLFtbGFuYW1heWFuIGRlxJ9pxZ9rZW46ICVzIgorCisjOiBidW5kbGUuYzo0NjkKK21zZ2lkICJSZWZ1c2luZyB0byBjcmVhdGUgZW1wdHkgYnVuZGxlLiIKK21zZ3N0ciAiQm/FnyBkZW1ldCBvbHXFn3R1cm1hIHJlZGRlZGlsaXlvci4iCisKKyM6IGJ1bmRsZS5jOjQ3OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlICclcyciCittc2dzdHIgIiclcycgb2x1xZ90dXJ1bGFtxLF5b3IiCisKKyM6IGJ1bmRsZS5jOjUwNAorbXNnaWQgImluZGV4LXBhY2sgZGllZCIKK21zZ3N0ciAiaW5kZXgtcGFjayBzb25sYW5kxLEiCisKKyM6IGNvbG9yLmM6MzI5CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29sb3IgdmFsdWU6ICUuKnMiCittc2dzdHIgImdlw6dlcnNpeiByZW5rIGRlxJ9lcmk6ICUuKnMiCisKKyM6IGNvbW1pdC5jOjUxIHNlcXVlbmNlci5jOjI3MTkgYnVpbHRpbi9hbS5jOjM1OSBidWlsdGluL2FtLmM6NDAzCisjOiBidWlsdGluL2FtLmM6MTM3MSBidWlsdGluL2FtLmM6MjAxNCBidWlsdGluL3JlcGxhY2UuYzo0NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlICVzIgorbXNnc3RyICIlcyBheXLEscWfdMSxcsSxbGFtYWTEsSIKKworIzogY29tbWl0LmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgaXMgbm90IGEgY29tbWl0ISIKK21zZ3N0ciAiJXMgJXMgYmlyIGfDtm5kZXJpIGRlxJ9pbCEiCisKKyM6IGNvbW1pdC5jOjE5MworbXNnaWQgIiIKKyJTdXBwb3J0IGZvciA8R0lUX0RJUj4vaW5mby9ncmFmdHMgaXMgZGVwcmVjYXRlZFxuIgorImFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgR2l0IHZlcnNpb24uXG4iCisiXG4iCisiUGxlYXNlIHVzZSBcImdpdCByZXBsYWNlIC0tY29udmVydC1ncmFmdC1maWxlXCJcbiIKKyJ0byBjb252ZXJ0IHRoZSBncmFmdHMgaW50byByZXBsYWNlIHJlZnMuXG4iCisiXG4iCisiVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5IHJ1bm5pbmdcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmdyYWZ0RmlsZURlcHJlY2F0ZWQgZmFsc2VcIiIKK21zZ3N0ciAiIgorIjxHSVRfRElSPi9pbmZvL2dyYWZ0cyBkZXN0ZcSfaSBhcnTEsWsga3VsbGFuxLFtIGTEscWfxLFcbiIKKyJ2ZSBpbGVyaWtpIGJpciBHaXQgc8O8csO8bcO8bmRlIGthbGTEsXLEsWxhY2FrLlxuIgorIlxuIgorIkHFn8SxbGFyxLEgZGXEn2nFn3Rpcm1lIGJhxZ92dXJ1bGFyxLFuYSBkw7Zuw7zFn3TDvHJtZWsgacOnaW5cbiIKKyJsw7x0ZmVuIFwiZ2l0IHJlcGxhY2UgLS1jb252ZXJ0LWdyYWZ0LWZpbGVcIiBrdWxsYW7EsW4uXG4iCisiXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5ncmFmdEZpbGVEZXByZWNhdGVkIGZhbHNlXCJcbiIKKyJrdWxsYW5hcmFrIGJ1IGlsZXRpeWkga2FwYXRhYmlsaXJzaW5pei4iCisKKyM6IGNvbW1pdC5jOjExNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29tbWl0ICVzIGhhcyBhbiB1bnRydXN0ZWQgR1BHIHNpZ25hdHVyZSwgYWxsZWdlZGx5IGJ5ICVzLiIKK21zZ3N0ciAiIgorIiVzIGfDtm5kZXJpc2luaW4gZ8O8dmVuaWxtZXllbiBiaXIgR1BHIGltemFzxLEgdmFyLCBpZGRpYXlhIGfDtnJlICVzIHRhcmFmxLFuZGFuLiIKKworIzogY29tbWl0LmM6MTE1NworIywgYy1mb3JtYXQKK21zZ2lkICJDb21taXQgJXMgaGFzIGEgYmFkIEdQRyBzaWduYXR1cmUgYWxsZWdlZGx5IGJ5ICVzLiIKK21zZ3N0ciAiJXMgZ8O2bmRlcmlzaW5pbiBoYXRhbMSxIGJpciBHUEcgaW16YXPEsSB2YXIsIGlkZGlheWEgZ8O2cmUgJXMgdGFyYWbEsW5kYW4uIgorCisjOiBjb21taXQuYzoxMTYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIGEgR1BHIHNpZ25hdHVyZS4iCittc2dzdHIgIiVzIGfDtm5kZXJpc2luaW4gYmlyIEdQRyBpbXphc8SxIHlvay4iCisKKyM6IGNvbW1pdC5jOjExNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29tbWl0ICVzIGhhcyBhIGdvb2QgR1BHIHNpZ25hdHVyZSBieSAlc1xuIgorbXNnc3RyICIlcyBnw7ZuZGVyaXNpbmluICVzIHRhcmFmxLFuZGFuIHNhxJ9sYW5hbiBkw7x6Z8O8biBiaXIgR1BHIGltemFzxLEgdmFyXG4iCisKKyM6IGNvbW1pdC5jOjE0MTcKK21zZ2lkICIiCisiV2FybmluZzogY29tbWl0IG1lc3NhZ2UgZGlkIG5vdCBjb25mb3JtIHRvIFVURi04LlxuIgorIllvdSBtYXkgd2FudCB0byBhbWVuZCBpdCBhZnRlciBmaXhpbmcgdGhlIG1lc3NhZ2UsIG9yIHNldCB0aGUgY29uZmlnXG4iCisidmFyaWFibGUgaTE4bi5jb21taXRlbmNvZGluZyB0byB0aGUgZW5jb2RpbmcgeW91ciBwcm9qZWN0IHVzZXMuXG4iCittc2dzdHIgIiIKKyJVeWFyxLE6IEfDtm5kZXJpIGlsZXRpc2kgVVRGLTgnZSB1eW1hZMSxLlxuIgorIsSwbGV0aXlpIGTDvHplbHR0aWt0ZW4gc29ucmEgYnVudSBkZcSfacWfdGlybWVrIGlzdGV5ZWJpbGlyIHZleWFcbiIKKyJpMThuLmNvbW1pdGVuY29kaW5nIHlhcMSxbGFuZMSxcm1hIGRlxJ9pxZ9rZW5pbmkgcHJvamVuaXppbiBrdWxsYW5kxLHEn8SxXG4iCisia29kbGFtYSBpbGUgZGXEn2nFn3Rpcm1layBpc3RleWViaWxpcnNpbml6LlxuIgorCisjOiBjb21taXQtZ3JhcGguYzoxMjIKK21zZ2lkICJjb21taXQtZ3JhcGggZmlsZSBpcyB0b28gc21hbGwiCittc2dzdHIgImNvbW1pdC1ncmFwaCBkb3N5YXPEsSBwZWsga8O8w6fDvGsiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggc2lnbmF0dXJlICVYIGRvZXMgbm90IG1hdGNoIHNpZ25hdHVyZSAlWCIKK21zZ3N0ciAiY29tbWl0LWdyYXBoIGltemFzxLEgJVgsICVYIGlsZSBlxZ9sZcWfbWl5b3IiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgorbXNnc3RyICJjb21taXQtZ3JhcGggc8O8csO8bcO8ICV4LCAlWCBpbGUgZcWfbGXFn21peW9yIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGhhc2ggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgorbXNnc3RyICJjb21taXQtZ3JhcGggc2HEn2xhbWEgc8O8csO8bcO8ICVYLCAlWCBpbGUgZcWfbGXFn21peW9yIgorCisjOiBjb21taXQtZ3JhcGguYzoyMjYKK21zZ2lkICJjb21taXQtZ3JhcGggY2h1bmsgbG9va3VwIHRhYmxlIGVudHJ5IG1pc3Npbmc7IGZpbGUgbWF5IGJlIGluY29tcGxldGUiCittc2dzdHIgIiIKKyJjb21taXQtZ3JhcGggaXJpIHBhcsOnYSBhcmFtYSB0YWJsb3N1IGdpcmRpc2kgZWtzaWs7IGRvc3lhIHRhbSBvbG1heWFiaWxpciIKKworIzogY29tbWl0LWdyYXBoLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBpbXByb3BlciBjaHVuayBvZmZzZXQgJTA4eCUwOHgiCittc2dzdHIgImNvbW1pdC1ncmFwaCBiacOnaW1zaXogaXJpIHBhcsOnYSBvZnNldGkgJTA4eCUwOHgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjI4MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggY2h1bmsgaWQgJTA4eCBhcHBlYXJzIG11bHRpcGxlIHRpbWVzIgorbXNnc3RyICJjb21taXQtZ3JhcGggaXJpIHBhcsOnYSBudW1hcmFzxLEgJTA4eCBiaXJkZW4gw6dvayBnw7Zyw7xuw7x5b3IiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjM0MworbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgbm8gYmFzZSBncmFwaHMgY2h1bmsiCittc2dzdHIgImNvbW1pdC1ncmFwaCB0ZW1lbCBncmFmacSfaSBpcmkgcGFyw6dhc8SxbmEgaXllIGRlxJ9pbCIKKworIzogY29tbWl0LWdyYXBoLmM6MzUzCittc2dpZCAiY29tbWl0LWdyYXBoIGNoYWluIGRvZXMgbm90IG1hdGNoIgorbXNnc3RyICJjb21taXQtZ3JhcGggemluY2lyaSBlxZ9sZcWfbWl5b3IiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdC1ncmFwaCBjaGFpbjogbGluZSAnJXMnIG5vdCBhIGhhc2giCittc2dzdHIgImdlw6dlcnNpeiBjb21taXQtZ3JhcGggemluY2lyaTogJyVzJy4gc2F0xLFyIGJpciBzYcSfbGFtYSBkZcSfaWwiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjQyNQorbXNnaWQgInVuYWJsZSB0byBmaW5kIGFsbCBjb21taXQtZ3JhcGggZmlsZXMiCittc2dzdHIgInTDvG0gY29tbWl0LWdyYXBoIGRvc3lhbGFyxLEgYnVsdW5hbcSxeW9yIgorCisjOiBjb21taXQtZ3JhcGguYzo1NTggY29tbWl0LWdyYXBoLmM6NjE4Cittc2dpZCAiaW52YWxpZCBjb21taXQgcG9zaXRpb24uIGNvbW1pdC1ncmFwaCBpcyBsaWtlbHkgY29ycnVwdCIKK21zZ3N0ciAiZ2XDp2Vyc2l6IGfDtm5kZXJpIGtvbnVtdS4gY29tbWl0LWdyYXBoIGLDvHnDvGsgb2xhc8SxbMSxa2xhIGhhc2FyIGfDtnJtw7zFnyIKKworIzogY29tbWl0LWdyYXBoLmM6NTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5kIGNvbW1pdCAlcyIKK21zZ3N0ciAiJXMgZ8O2bmRlcmlzaSBidWx1bmFtYWTEsSIKKworIzogY29tbWl0LWdyYXBoLmM6ODUyIGJ1aWx0aW4vYW0uYzoxMjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21taXQgJXMiCittc2dzdHIgIiVzIGfDtm5kZXJpc2kgYXlyxLHFn3TEsXLEsWxhbcSxeW9yIgorCisjOiBjb21taXQtZ3JhcGguYzoxMDExIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjc4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IHR5cGUgb2Ygb2JqZWN0ICVzIgorbXNnc3RyICIlcyBuZXNuZXNpbmluIHTDvHLDvCBhbMSxbmFtxLF5b3IiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNDMKK21zZ2lkICJMb2FkaW5nIGtub3duIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJHw7ZuZGVyaSBncmFmacSfaW5kZWtpIGJpbGluZW4gZ8O2bmRlcmlsZXIgecO8a2xlbml5b3IiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNjAKK21zZ2lkICJFeHBhbmRpbmcgcmVhY2hhYmxlIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICJHw7ZuZGVyaSBncmFmacSfaW5kZWtpIHVsYcWfxLFsYWJpbGlyIGfDtm5kZXJpbGVyIGdlbmnFn2xldGlsaXlvciIKKworIzogY29tbWl0LWdyYXBoLmM6MTA3OQorbXNnaWQgIkNsZWFyaW5nIGNvbW1pdCBtYXJrcyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIkfDtm5kZXJpIGdyYWZpxJ9pbmRla2kgZ8O2bmRlcmkgaW1sZXJpIHRlbWl6bGVuaXlvciIKKworIzogY29tbWl0LWdyYXBoLmM6MTA5OAorbXNnaWQgIkNvbXB1dGluZyBjb21taXQgZ3JhcGggZ2VuZXJhdGlvbiBudW1iZXJzIgorbXNnc3RyICJHw7ZuZGVyaSBncmFmacSfaSBrdcWfYWsgc2F5xLFsYXLEsSBoZXNhcGxhbsSxeW9yIgorCisjOiBjb21taXQtZ3JhcGguYzoxMTczCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGluICVkIHBhY2siCittc2dpZF9wbHVyYWwgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGluICVkIHBhY2tzIgorbXNnc3RyWzBdICJHw7ZuZGVyaSBncmFmacSfaSBpw6dpbiBnw7ZuZGVyaWxlciAlZCBwYWtldHRlIGJ1bHVudXlvciIKK21zZ3N0clsxXSAiR8O2bmRlcmkgZ3JhZmnEn2kgacOnaW4gZ8O2bmRlcmlsZXIgJWQgcGFrZXR0ZSBidWx1bnV5b3IiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjExODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgYWRkaW5nIHBhY2sgJXMiCittc2dzdHIgIiVzIHBha2V0aSBla2xlbmlya2VuIGhhdGEiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBpbmRleCBmb3IgJXMiCittc2dzdHIgIiVzIGnDp2luIGluZGVrcyBhw6fEsWzEsXJrZW4gaGF0YSIKKworIzogY29tbWl0LWdyYXBoLmM6MTIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBmcm9tICVkIHJlZiIKK21zZ2lkX3BsdXJhbCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggZnJvbSAlZCByZWZzIgorbXNnc3RyWzBdICJHw7ZuZGVyaSBncmFmacSfaSBpw6dpbiBnw7ZuZGVyaWxlciAlZCBiYcWfdnVydWRhbiBidWx1bnV5b3IiCittc2dzdHJbMV0gIkfDtm5kZXJpIGdyYWZpxJ9pIGnDp2luIGfDtm5kZXJpbGVyICVkIGJhxZ92dXJ1ZGFuIGJ1bHVudXlvciIKKworIzogY29tbWl0LWdyYXBoLmM6MTIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdCBvYmplY3QgaWQ6ICVzIgorbXNnc3RyICJnZcOnZXJzaXogZ8O2bmRlcmkgbmVzbmUgbnVtYXJhc8SxOiAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTI0OQorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGFtb25nIHBhY2tlZCBvYmplY3RzIgorbXNnc3RyICIiCisiR8O2bmRlcmkgZ3JhZmnEn2kgacOnaW4gZ8O2bmRlcmlsZXIgcGFrZXRsZW5tacWfIG5lc25lbGVyIGFyYXPEsW5kYW4gYnVsdW51eW9yIgorCisjOiBjb21taXQtZ3JhcGguYzoxMjY0Cittc2dpZCAiQ291bnRpbmcgZGlzdGluY3QgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIkfDtm5kZXJpIGdyYWZpxJ9pbmRla2kgYmVsaXJnaW4gZ8O2bmRlcmlsZXIgc2F5xLFsxLF5b3IiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyOTQKK21zZ2lkICJGaW5kaW5nIGV4dHJhIGVkZ2VzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiR8O2bmRlcmkgZ3JhZmnEn2luZGVraSBlayBzxLFuxLFybGFyIGJ1bHVudXlvciIKKworIzogY29tbWl0LWdyYXBoLmM6MTM0MAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBjb3JyZWN0IG51bWJlciBvZiBiYXNlIGdyYXBoIGlkcyIKK21zZ3N0ciAidGVtZWwgZ3JhZmnEn2kgbnVtYXJhbGFyxLFuxLFuIGRvxJ9ydSBzYXnEsXPEsSB5YXrEsWxhbWFkxLEiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEzNzMgbWlkeC5jOjgxNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgb2YgJXMiCittc2dzdHIgIiVzIMO2bmPDvCBkaXppbmxlcmkgb2x1xZ90dXJ1bGFtxLF5b3IiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEzODUgYnVpbHRpbi9pbmRleC1wYWNrLmM6MzA2IGJ1aWx0aW4vcmVwYWNrLmM6MjQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgJyVzJyIKK21zZ3N0ciAiJyVzJyBvbHXFn3R1cnVsYW3EsXlvciIKKworIzogY29tbWl0LWdyYXBoLmM6MTQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJXcml0aW5nIG91dCBjb21taXQgZ3JhcGggaW4gJWQgcGFzcyIKK21zZ2lkX3BsdXJhbCAiV3JpdGluZyBvdXQgY29tbWl0IGdyYXBoIGluICVkIHBhc3NlcyIKK21zZ3N0clswXSAiR8O2bmRlcmkgZ3JhZmnEn2kgJWQgZ2XDp2nFn3RlIHlhesSxbMSxeW9yIgorbXNnc3RyWzFdICJHw7ZuZGVyaSBncmFmacSfaSAlZCBnZcOnacWfdGUgeWF6xLFsxLF5b3IiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0ODYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjb21taXQtZ3JhcGggY2hhaW4gZmlsZSIKK21zZ3N0ciAiY29tbWl0LWdyYXBoIHppbmNpciBkb3N5YXPEsSBhw6fEsWxhbcSxeW9yIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDk4Cittc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSBiYXNlIGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICJ0ZW1lbCBjb21taXQtZ3JhcGggZG9zeWFzxLEgeWVuaWRlbiBhZGxhbmTEsXLEsWxhbWFkxLEiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE1MTgKK21zZ2lkICJmYWlsZWQgdG8gcmVuYW1lIHRlbXBvcmFyeSBjb21taXQtZ3JhcGggZmlsZSIKK21zZ3N0ciAiZ2XDp2ljaSBjb21taXQtZ3JhcGggZG9zeWFzxLEgeWVuaWRlbiBhZGxhbmTEsXLEsWxhbWFkxLEiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2MzEKK21zZ2lkICJTY2FubmluZyBtZXJnZWQgY29tbWl0cyIKK21zZ3N0ciAiQmlybGXFn3RpcmlsZW4gZ8O2bmRlcmlsZXIgdGFyYW7EsXlvciIKKworIzogY29tbWl0LWdyYXBoLmM6MTY0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGR1cGxpY2F0ZSBjb21taXQgaWQgJXMiCittc2dzdHIgImJla2xlbm1lZGlrIHlpbmVsZW5tacWfIGfDtm5kZXJpIG51bWFyYXPEsSAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTY2NQorbXNnaWQgIk1lcmdpbmcgY29tbWl0LWdyYXBoIgorbXNnc3RyICJjb21taXQtZ3JhcGggYmlybGXFn3RpcmlsaXlvciIKKworIzogY29tbWl0LWdyYXBoLmM6MTg0NAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGUgY29tbWl0IGdyYXBoIGZvcm1hdCBjYW5ub3Qgd3JpdGUgJWQgY29tbWl0cyIKK21zZ3N0ciAiZ8O2bmRlcmkgZ3JhZmnEn2kgYmnDp2ltaSAlZCBnw7ZuZGVyaXlpIHlhemFtxLF5b3IiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE4NTUKK21zZ2lkICJ0b28gbWFueSBjb21taXRzIHRvIHdyaXRlIGdyYXBoIgorbXNnc3RyICJncmFmaWsgeWF6YWJpbG1layBpw6dpbiDDp29rIGZhemxhIGfDtm5kZXJpIgorCisjOiBjb21taXQtZ3JhcGguYzoxOTQ0Cittc2dpZCAidGhlIGNvbW1pdC1ncmFwaCBmaWxlIGhhcyBpbmNvcnJlY3QgY2hlY2tzdW0gYW5kIGlzIGxpa2VseSBjb3JydXB0IgorbXNnc3RyICIiCisiY29tbWl0LWdyYXBoIGRvc3lhc8SxbsSxbiBzYcSfbGFtYSB0b3BsYW3EsSB5YW5sxLHFnyB2ZSBiw7x5w7xrIG9sYXPEsWzEsWtsYSBoYXNhciAiCisiZ8O2cm3DvMWfIgorCisjOiBjb21taXQtZ3JhcGguYzoxOTU0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IE9JRCBvcmRlcjogJXMgdGhlbiAlcyIKK21zZ3N0ciAiY29tbWl0LWdyYXBoIGhhdGFsxLEgbmVzbmUgdGFuxLFtbGF5xLFjxLEgc8SxcmFzxLFuYSBpeWU6ICVzLCBzb25yYSAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTk2NCBjb21taXQtZ3JhcGguYzoxOTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IGZhbm91dCB2YWx1ZTogZmFub3V0WyVkXSA9ICV1ICE9ICV1IgorbXNnc3RyICJjb21taXQtZ3JhcGggaGF0YWzEsSBmYW5vdXQgZGXEn2VyaW5lIGl5ZTogZmFub3V0WyVkXSA9ICV1ICE9ICV1IgorCisjOiBjb21taXQtZ3JhcGguYzoxOTcxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSBjb21taXQgJXMgZnJvbSBjb21taXQtZ3JhcGgiCittc2dzdHIgIiVzIGfDtm5kZXJpc2kgY29tbWl0LWdyYXBoJ3RhbiBheXLEscWfdMSxcsSxbGFtYWTEsSIKKworIzogY29tbWl0LWdyYXBoLmM6MTk4OQorbXNnaWQgIlZlcmlmeWluZyBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiR8O2bmRlcmkgZ3JhZmnEn2luZGVraSBnw7ZuZGVyaWxlciBkb8SfcnVsYW7EsXlvciIKKworIzogY29tbWl0LWdyYXBoLmM6MjAwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgY29tbWl0ICVzIGZyb20gb2JqZWN0IGRhdGFiYXNlIGZvciBjb21taXQtZ3JhcGgiCittc2dzdHIgIiIKKyIlcyBnw7ZuZGVyaXNpIGNvbW1pdC1ncmFwaCBpw6dpbiBvbGFuIG5lc25lIHZlcml0YWJhbsSxbmRhbiBheXLEscWfdMSxcsSxbGFtYWTEsSIKKworIzogY29tbWl0LWdyYXBoLmM6MjAxMAorIywgYy1mb3JtYXQKK21zZ2lkICJyb290IHRyZWUgT0lEIGZvciBjb21taXQgJXMgaW4gY29tbWl0LWdyYXBoIGlzICVzICE9ICVzIgorbXNnc3RyICIiCisiY29tbWl0LWdyYXBoJ3Rla2kgJXMgZ8O2bmRlcmlzaSBpw6dpbiBvbGFuIGvDtmsgYcSfYcOnIG5lc25lIHRhbsSxbWxhecSxY8Sxc8SxICVzICE9ICIKKyIlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MjAyMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggcGFyZW50IGxpc3QgZm9yIGNvbW1pdCAlcyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiJXMgZ8O2bmRlcmlzaSBpw6dpbiBvbGFuIGNvbW1pdC1ncmFwaCDDvHN0IMO2Z2UgbGlzdGVzaSDDp29rIHV6dW4iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBmb3IgJXMgaXMgJXMgIT0gJXMiCittc2dzdHIgIiVzIGnDp2luIG9sYW4gY29tbWl0LWdyYXBoIMO8c3Qgw7ZnZXNpICVzICE9ICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgbGlzdCBmb3IgY29tbWl0ICVzIHRlcm1pbmF0ZXMgZWFybHkiCittc2dzdHIgIiIKKyIlcyBnw7ZuZGVyaXNpIGnDp2luIG9sYW4gY29tbWl0LWdyYXBoIMO8c3Qgw7ZnZSBsaXN0ZXNpIGVya2VuZGVuIHNvbmxhbsSxeW9yIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb21taXQtZ3JhcGggaGFzIGdlbmVyYXRpb24gbnVtYmVyIHplcm8gZm9yIGNvbW1pdCAlcywgYnV0IG5vbi16ZXJvIGVsc2V3aGVyZSIKK21zZ3N0ciAiIgorIiVzIGfDtm5kZXJpc2kgacOnaW4gY29tbWl0LWdyYXBoIGt1xZ9hayBzYXnEsXPEsSBzxLFmxLFyIGFuY2FrIGJhxZ9rYSB5ZXJsZXJkZSAiCisic8SxZsSxcmRhbiBmYXJrbMSxIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb21taXQtZ3JhcGggaGFzIG5vbi16ZXJvIGdlbmVyYXRpb24gbnVtYmVyIGZvciBjb21taXQgJXMsIGJ1dCB6ZXJvIGVsc2V3aGVyZSIKK21zZ3N0ciAiIgorIiVzIGfDtm5kZXJpc2kgacOnaW4gY29tbWl0LWdyYXBoIGt1xZ9hayBzYXnEsXPEsSBzxLFmxLFyZGFuIGZhcmtsxLEsIGFuY2FrIGJhxZ9rYSAiCisieWVybGVyZGUgc8SxZsSxciIKKworIzogY29tbWl0LWdyYXBoLmM6MjA2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggZ2VuZXJhdGlvbiBmb3IgY29tbWl0ICVzIGlzICV1ICE9ICV1IgorbXNnc3RyICIlcyBnw7ZuZGVyaXNpIGnDp2luIGNvbW1pdC1ncmFwaCBrdcWfYcSfxLEgJXUgIT0gJXUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0IGRhdGUgZm9yIGNvbW1pdCAlcyBpbiBjb21taXQtZ3JhcGggaXMgJTxQUkl1TUFYPiAhPSAlPFBSSXVNQVg+IgorbXNnc3RyICIiCisiJXMgZ8O2bmRlcmlzaSBpw6dpbiBjb21taXQtZ3JhcGggacOnaW5kZWtpIGfDtm5kZXJpIHRhcmloaSAlPFBSSXVNQVg+ICE9ICIKKyIlPFBSSXVNQVg+IgorCisjOiBjb21wYXQvb2JzdGFjay5jOjQwNiBjb21wYXQvb2JzdGFjay5jOjQwOAorbXNnaWQgIm1lbW9yeSBleGhhdXN0ZWQiCittc2dzdHIgImJlbGxlayB0w7xrZW5kaSIKKworIzogY29uZmlnLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJleGNlZWRlZCBtYXhpbXVtIGluY2x1ZGUgZGVwdGggKCVkKSB3aGlsZSBpbmNsdWRpbmdcbiIKKyJcdCVzXG4iCisiZnJvbVxuIgorIlx0JXNcbiIKKyJUaGlzIG1pZ2h0IGJlIGR1ZSB0byBjaXJjdWxhciBpbmNsdWRlcy4iCittc2dzdHIgIiIKKyLFn3UgacOnZXJpbGlya2VuIG9sYWJpbGVjZWsgZW4gw6dvayBpw6dlcm1lIGRlcmlubGnEn2kgKCVkKSBhxZ/EsWxkxLFcbiIKKyJcdCVzXG4iCisixZ91cmFkYW46XG4iCisiXHQlc1xuIgorIkJ1IGRhaXJlc2VsIGnDp2VybWVsZXJkZW4gZG9sYXnEsSBvbGFiaWxpci4iCisKKyM6IGNvbmZpZy5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZXhwYW5kIGluY2x1ZGUgcGF0aCAnJXMnIgorbXNnc3RyICJpw6dlcm1lIHlvbHUgJyVzJyBnZW5pxZ9sZXRpbGVtZWRpIgorCisjOiBjb25maWcuYzoxNTEKK21zZ2lkICJyZWxhdGl2ZSBjb25maWcgaW5jbHVkZXMgbXVzdCBjb21lIGZyb20gZmlsZXMiCittc2dzdHIgImfDtnJlY2VsaSB5YXDEsWxhbmTEsXJtYSBpw6dlcm1lbGVyaSBkb3N5YWxhcmRhbiBnZWxtZWxpIgorCisjOiBjb25maWcuYzoxOTcKK21zZ2lkICJyZWxhdGl2ZSBjb25maWcgaW5jbHVkZSBjb25kaXRpb25hbHMgbXVzdCBjb21lIGZyb20gZmlsZXMiCittc2dzdHIgImfDtnJlY2VsaSB5YXDEsWxhbmTEsXJtYSBpw6dlcm1lIGtvxZ91bGx1bGFyxLEgZG9zeWFsYXJkYW4gZ2VsbWVsaSIKKworIzogY29uZmlnLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgImtleSBkb2VzIG5vdCBjb250YWluIGEgc2VjdGlvbjogJXMiCittc2dzdHIgImFuYWh0YXIgYmlyIGLDtmzDvG0gacOnZXJtaXlvcjogJXMiCisKKyM6IGNvbmZpZy5jOjM4MgorIywgYy1mb3JtYXQKK21zZ2lkICJrZXkgZG9lcyBub3QgY29udGFpbiB2YXJpYWJsZSBuYW1lOiAlcyIKK21zZ3N0ciAiYW5haHRhciBiaXIgZGXEn2nFn2tlbiBhZMSxIGnDp2VybWl5b3I6ICVzIgorCisjOiBjb25maWcuYzo0MDYgc2VxdWVuY2VyLmM6MjQ0NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGtleTogJXMiCittc2dzdHIgImdlw6dlcnNpeiBhbmFodGFyOiAlcyIKKworIzogY29uZmlnLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQga2V5IChuZXdsaW5lKTogJXMiCittc2dzdHIgImdlw6dlcnNpeiBhbmFodGFyICh5ZW5pc2F0xLFyKTogJXMiCisKKyM6IGNvbmZpZy5jOjQ0OCBjb25maWcuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYm9ndXMgY29uZmlnIHBhcmFtZXRlcjogJXMiCittc2dzdHIgImTDvHptZWNlIHlhcMSxbGFuZMSxcm1hIHBhcmFtZXRyZXNpOiAlcyIKKworIzogY29uZmlnLmM6NDk1CisjLCBjLWZvcm1hdAorbXNnaWQgImJvZ3VzIGZvcm1hdCBpbiAlcyIKK21zZ3N0ciAiJXMgacOnaW5kZSBkw7x6bWVjZSBiacOnaW0iCisKKyM6IGNvbmZpZy5jOjgyMQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gYmxvYiAlcyIKK21zZ3N0ciAiaGF0YWzEsSB5YXDEsWxhbmTEsXJtYSBzYXTEsXLEsSAlZCwgJXMgaWtpbGkgbmVzbmVzaSBpw6dpbmRlIgorCisjOiBjb25maWcuYzo4MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGZpbGUgJXMiCittc2dzdHIgImhhdGFsxLEgeWFwxLFsYW5kxLFybWEgc2F0xLFyxLEgJWQsICVzIGRvc3lhc8SxIGnDp2luZGUiCisKKyM6IGNvbmZpZy5jOjgyOQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgInN0YW5kYXJ0IGdpcmRpIGnDp2luZGUgaGF0YWzEsSB5YXDEsWxhbmTEsXJtYSBzYXTEsXLEsSAlZCIKKworIzogY29uZmlnLmM6ODMzCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBzdWJtb2R1bGUtYmxvYiAlcyIKK21zZ3N0ciAiaGF0YWzEsSB5YXDEsWxhbmTEsXJtYSBzYXTEsXLEsSAlZCwgJXMgYWx0bW9kw7xsIGlraWxpIG5lc25lc2kgacOnaW5kZSIKKworIzogY29uZmlnLmM6ODM3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBjb21tYW5kIGxpbmUgJXMiCittc2dzdHIgImhhdGFsxLEgeWFwxLFsYW5kxLFybWEgc2F0xLFyxLEgJWQsICVzIGtvbXV0IHNhdMSxcsSxIGnDp2luZGUiCisKKyM6IGNvbmZpZy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gJXMiCittc2dzdHIgImhhdGFsxLEgeWFwxLFsYW5kxLFybWEgc2F0xLFyxLEgJWQsICVzIGnDp2luZGUiCisKKyM6IGNvbmZpZy5jOjk3OAorbXNnaWQgIm91dCBvZiByYW5nZSIKK21zZ3N0ciAiZXJpbSBkxLHFn8SxIgorCisjOiBjb25maWcuYzo5NzgKK21zZ2lkICJpbnZhbGlkIHVuaXQiCittc2dzdHIgImdlw6dlcnNpeiBiaXJpbSIKKworIzogY29uZmlnLmM6OTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnOiAlcyIKK21zZ3N0ciAiaGF0YWzEsSBzYXnEsXNhbCB5YXDEsWxhbmTEsXJtYSBkZcSfZXJpICclcycsICclcycgacOnaW46ICVzIgorCisjOiBjb25maWcuYzo5OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gYmxvYiAlczogJXMiCittc2dzdHIgIiIKKyJoYXRhbMSxIHNhecSxc2FsIHlhcMSxbGFuZMSxcm1hIGRlxJ9lcmkgJyVzJywgJyVzJyBpw6dpbiwgJXMgaWtpbGkgbmVzbmVzaSBpw6dpbmRlOiAiCisiJXMiCisKKyM6IGNvbmZpZy5jOjEwMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gZmlsZSAlczogJXMiCittc2dzdHIgIiIKKyJoYXRhbMSxIHNhecSxc2FsIHlhcMSxbGFuZMSxcm1hIGRlxJ9lcmkgJyVzJywgJyVzJyBpw6dpbiwgJXMgZG9zeWFzxLEgacOnaW5kZTogJXMiCisKKyM6IGNvbmZpZy5jOjEwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gc3RhbmRhcmQgaW5wdXQ6ICVzIgorbXNnc3RyICIiCisiaGF0YWzEsSBzYXnEsXNhbCB5YXDEsWxhbmTEsXJtYSBkZcSfZXJpICclcycsICclcycgacOnaW4sIHN0YW5kYXJ0IGdpcmRpIGnDp2luZGU6ICVzIgorCisjOiBjb25maWcuYzoxMDA3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN1Ym1vZHVsZS1ibG9iICVzOiAlcyIKK21zZ3N0ciAiIgorImhhdGFsxLEgc2F5xLFzYWwgeWFwxLFsYW5kxLFybWEgZGXEn2VyaSAnJXMnLCAnJXMnIGnDp2luLCAlcyBhbHRtb2TDvGwgaWtpbGkgIgorIm5lc25lc2kgacOnaW5kZTogJXMiCisKKyM6IGNvbmZpZy5jOjEwMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gY29tbWFuZCBsaW5lICVzOiAlcyIKK21zZ3N0ciAiIgorImhhdGFsxLEgc2F5xLFzYWwgeWFwxLFsYW5kxLFybWEgZGXEn2VyaSAnJXMnLCAnJXMnIGnDp2luLCAlcyBrb211dCBzYXTEsXLEsSBpw6dpbmRlOiAiCisiJXMiCisKKyM6IGNvbmZpZy5jOjEwMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gJXM6ICVzIgorbXNnc3RyICJoYXRhbMSxIHNhecSxc2FsIHlhcMSxbGFuZMSxcm1hIGRlxJ9lcmkgJyVzJywgJyVzJyBpw6dpbiwgJXMgacOnaW5kZTogJXMiCisKKyM6IGNvbmZpZy5jOjExMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGV4cGFuZCB1c2VyIGRpciBpbjogJyVzJyIKK21zZ3N0ciAixZ91cmFkYWtpIGt1bGxhbsSxY8SxIGRpemluaSBnZW5pxZ9sZXRpbGVtZWRpOiAnJXMnIgorCisjOiBjb25maWcuYzoxMTE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZm9yICclcycgaXMgbm90IGEgdmFsaWQgdGltZXN0YW1wIgorbXNnc3RyICIlcycsICclcycgacOnaW4gZ2XDp2VybGkgYmlyIHphbWFuIGRhbWdhc8SxIGRlxJ9pbCIKKworIzogY29uZmlnLmM6MTIwOAorIywgYy1mb3JtYXQKK21zZ2lkICJhYmJyZXYgbGVuZ3RoIG91dCBvZiByYW5nZTogJWQiCittc2dzdHIgImvEsXNhbHRtYSB1enVubHXEn3UgZXJpbSBkxLHFn8SxbmRhOiAlZCIKKworIzogY29uZmlnLmM6MTIyMiBjb25maWcuYzoxMjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCB6bGliIGNvbXByZXNzaW9uIGxldmVsICVkIgorbXNnc3RyICJoYXRhbMSxIHpsaWIgc8Sxa8SxxZ90xLFybWEgZMO8emV5aSAlZCIKKworIzogY29uZmlnLmM6MTMyNQorbXNnaWQgImNvcmUuY29tbWVudENoYXIgc2hvdWxkIG9ubHkgYmUgb25lIGNoYXJhY3RlciIKK21zZ3N0ciAiY29yZS5jb21tZW50Q2hhciB5YWxuxLF6Y2EgYmlyIGthcmFrdGVyIG9sbWFsxLEiCisKKyM6IGNvbmZpZy5jOjEzNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBtb2RlIGZvciBvYmplY3QgY3JlYXRpb246ICVzIgorbXNnc3RyICJuZXNuZSBvbHXFn3R1cm1hIGnDp2luIGdlw6dlcnNpeiBraXA6ICVzIgorCisjOiBjb25maWcuYzoxNDMwCisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCB2YWx1ZSBmb3IgJXMiCittc2dzdHIgIiVzIGnDp2luIGhhdGFsxLEgb2x1xZ90dXJ1bG11xZ8gZGXEn2VyIgorCisjOiBjb25maWcuYzoxNDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCB2YWx1ZSBmb3IgJXM6ICVzIgorbXNnc3RyICIlcyBpw6dpbiBoYXRhbMSxIG9sdcWfdHVydWxtdcWfIGRlxJ9lcjogJXMiCisKKyM6IGNvbmZpZy5jOjE0NTcKK21zZ2lkICJtdXN0IGJlIG9uZSBvZiBub3RoaW5nLCBtYXRjaGluZywgc2ltcGxlLCB1cHN0cmVhbSBvciBjdXJyZW50IgorbXNnc3RyICJub3RoaW5nLCBtYXRjaGluZywgc2ltcGxlLCB1cHN0cmVhbSB2ZXlhIGN1cnJlbnQgacOnaW5kZW4gYmlyaSBvbG1hbMSxIgorCisjOiBjb25maWcuYzoxNTE4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU0MQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgcGFjayBjb21wcmVzc2lvbiBsZXZlbCAlZCIKK21zZ3N0ciAiaGF0YWzEsSBwYWtldCBzxLFrxLHFn3TEsXJtYSBkw7x6ZXlpICVkIgorCisjOiBjb25maWcuYzoxNjM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb2FkIGNvbmZpZyBibG9iIG9iamVjdCAnJXMnIgorbXNnc3RyICInJXMnIHlhcMSxbGFuZMSxcm1hIGlraWxpIG5lc25lc2kgecO8a2xlbmVtaXlvciIKKworIzogY29uZmlnLmM6MTY0MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZlcmVuY2UgJyVzJyBkb2VzIG5vdCBwb2ludCB0byBhIGJsb2IiCittc2dzdHIgIiclcycgYmHFn3Z1cnVzdSBpa2lsaSBiaXIgbmVzbmV5ZSBpxZ9hcmV0IGV0bWl5b3IiCisKKyM6IGNvbmZpZy5jOjE2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgY29uZmlnIGJsb2IgJyVzJyIKK21zZ3N0ciAiJyVzJyB5YXDEsWxhbmTEsXJtYSBpa2lsaSBuZXNuZXNpIMOnw7Z6w7xsZW1peW9yIgorCisjOiBjb25maWcuYzoxNjg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSAlcyIKK21zZ3N0ciAiJXMgYXlyxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IGNvbmZpZy5jOjE3NDMKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWFuZC1saW5lIGNvbmZpZyIKK21zZ3N0ciAia29tdXQgc2F0xLFyxLEgeWFwxLFsYW5kxLFybWFzxLEgYXlyxLHFn3TEsXLEsWxhbcSxeW9yIgorCisjOiBjb25maWcuYzoyMDk3Cittc2dpZCAidW5rbm93biBlcnJvciBvY2N1cnJlZCB3aGlsZSByZWFkaW5nIHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIgorbXNnc3RyICJ5YXDEsWxhbmTEsXJtYSBkb3N5YWxhcsSxIG9rdW51cmtlbiBiZWtsZW5tZWRpayBiaXIgaGF0YSBvbHXFn3R1IgorCisjOiBjb25maWcuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXM6ICclcyciCittc2dzdHIgIkdlw6dlcnNpeiAlczogJyVzJyIKKworIzogY29uZmlnLmM6MjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJzcGxpdEluZGV4Lm1heFBlcmNlbnRDaGFuZ2UgdmFsdWUgJyVkJyBzaG91bGQgYmUgYmV0d2VlbiAwIGFuZCAxMDAiCittc2dzdHIgInNwbGl0SW5kZXgubWF4UGVyY2VudENoYW5nZSBkZcSfZXJpICclZCcgMCB2ZSAxMDAgYXJhc8SxbmRhIG9sbWFsxLEiCisKKyM6IGNvbmZpZy5jOjIzNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlICclcycgZnJvbSBjb21tYW5kLWxpbmUgY29uZmlnIgorbXNnc3RyICInJXMnIGtvbXV0IHNhdMSxcsSxIHlhcMSxbGFuZMSxcm1hc8SxbmRhbiBheXLEscWfdMSxcsSxbGFtxLF5b3IiCisKKyM6IGNvbmZpZy5jOjIzNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGNvbmZpZyB2YXJpYWJsZSAnJXMnIGluIGZpbGUgJyVzJyBhdCBsaW5lICVkIgorbXNnc3RyICJoYXRhbMSxIHlhcMSxbGFuZMSxcm1hIGRlxJ9pxZ9rZW5pICclcycsICclcycgZG9zeWFzxLEgJWQuIHNhdMSxcmRhIgorCisjOiBjb25maWcuYzoyNDQxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgc2VjdGlvbiBuYW1lICclcyciCittc2dzdHIgImdlw6dlcnNpeiBiw7Zsw7xtIGFkxLEgJyVzJyIKKworIzogY29uZmlnLmM6MjQ3MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBoYXMgbXVsdGlwbGUgdmFsdWVzIgorbXNnc3RyICIlcyBiaXJkZW4gw6dvayBkZcSfZXJlIGl5ZSIKKworIzogY29uZmlnLmM6MjUwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgbmV3IGNvbmZpZ3VyYXRpb24gZmlsZSAlcyIKK21zZ3N0ciAieWVuaSB5YXDEsWxhbmTEsXJtYSBkb3N5YXPEsSAlcyB5YXrEsWxhbWFkxLEiCisKKyM6IGNvbmZpZy5jOjI3NTQgY29uZmlnLmM6MzA3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgbG9jayBjb25maWcgZmlsZSAlcyIKK21zZ3N0ciAiJXMgeWFwxLFsYW5kxLFybWEgZG9zeWFzxLEga2lsaXRsZW5lbWVkaSIKKworIzogY29uZmlnLmM6Mjc2NQorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuaW5nICVzIgorbXNnc3RyICIlcyBhw6fEsWzEsXlvciIKKworIzogY29uZmlnLmM6MjgwMCBidWlsdGluL2NvbmZpZy5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhdHRlcm46ICVzIgorbXNnc3RyICJnZcOnZXJzaXogZGl6Z2k6ICVzIgorCisjOiBjb25maWcuYzoyODI1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29uZmlnIGZpbGUgJXMiCittc2dzdHIgImdlw6dlcnNpeiB5YXDEsWxhbmTEsXJtYSBkb3N5YXPEsSAlcyIKKworIzogY29uZmlnLmM6MjgzOCBjb25maWcuYzozMDkxCisjLCBjLWZvcm1hdAorbXNnaWQgImZzdGF0IG9uICVzIGZhaWxlZCIKK21zZ3N0ciAiJXMgw7x6ZXJpbmRlIGZzdGF0IGJhxZ9hcsSxc8SxeiBvbGR1IgorCisjOiBjb25maWcuYzoyODQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtbWFwICclcyciCittc2dzdHIgIiclcycgbW1hcCB5YXDEsWxhbcSxeW9yIgorCisjOiBjb25maWcuYzoyODU4IGNvbmZpZy5jOjMwOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2htb2Qgb24gJXMgZmFpbGVkIgorbXNnc3RyICIlcyDDvHplcmluZGUgY2htb2QgYmHFn2FyxLFzxLF6IG9sZHUiCisKKyM6IGNvbmZpZy5jOjI5NDMgY29uZmlnLmM6MzE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29uZmlnIGZpbGUgJXMiCittc2dzdHIgIiVzIHlhcMSxbGFuZMSxcm1hIGRvc3lhc8SxIHlhesSxbGFtYWTEsSIKKworIzogY29uZmlnLmM6Mjk3NworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc2V0ICclcycgdG8gJyVzJyIKK21zZ3N0ciAiJyVzJywgJyVzJyBvbGFyYWsgYXlhcmxhbmFtYWTEsSIKKworIzogY29uZmlnLmM6Mjk3OSBidWlsdGluL3JlbW90ZS5jOjY1NSBidWlsdGluL3JlbW90ZS5jOjg0OSBidWlsdGluL3JlbW90ZS5jOjg1NworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgdW5zZXQgJyVzJyIKK21zZ3N0ciAiJyVzJyBheWFyxLEgZ2VyaSBhbMSxbmFtYWTEsSIKKworIzogY29uZmlnLmM6MzA2OQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHNlY3Rpb24gbmFtZTogJXMiCittc2dzdHIgImdlw6dlcnNpeiBiw7Zsw7xtIGFkxLE6ICVzIgorCisjOiBjb25maWcuYzozMjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgdmFsdWUgZm9yICclcyciCittc2dzdHIgIiclcycgacOnaW4gZGXEn2VyIGVrc2lrIgorCisjOiBjb25uZWN0LmM6NjEKK21zZ2lkICJ0aGUgcmVtb3RlIGVuZCBodW5nIHVwIHVwb24gaW5pdGlhbCBjb250YWN0IgorbXNnc3RyICJ1emFrIHXDpyBpbGsgaWxldGnFn2ltbGUgYmlybGlrdGUgaGF0dMSxIGthcGF0dMSxIgorCisjOiBjb25uZWN0LmM6NjMKK21zZ2lkICIiCisiQ291bGQgbm90IHJlYWQgZnJvbSByZW1vdGUgcmVwb3NpdG9yeS5cbiIKKyJcbiIKKyJQbGVhc2UgbWFrZSBzdXJlIHlvdSBoYXZlIHRoZSBjb3JyZWN0IGFjY2VzcyByaWdodHNcbiIKKyJhbmQgdGhlIHJlcG9zaXRvcnkgZXhpc3RzLiIKK21zZ3N0ciAiIgorIlV6YWsga29udW0gZGVwb3N1IG9rdW5hbWFkxLEuXG4iCisiXG4iCisiTMO8dGZlbiBkb8SfcnUgZXJpxZ9pbSBoYWtsYXLEsW5hIGl5ZSBvbGR1xJ91bnV6ZGFuIHZlXG4iCisiZGVwb251biB2YXIgb2xkdcSfdW5kYW4gZW1pbiBvbHVuLiIKKworIzogY29ubmVjdC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInNlcnZlciBkb2Vzbid0IHN1cHBvcnQgJyVzJyIKK21zZ3N0ciAic3VudWN1ICclcycgZGVzdGVrbGVtaXlvciIKKworIzogY29ubmVjdC5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJzZXJ2ZXIgZG9lc24ndCBzdXBwb3J0IGZlYXR1cmUgJyVzJyIKK21zZ3N0ciAic3VudWN1ICclcycgw7Z6ZWxsacSfaW5pIGRlc3Rla2xlbWl5b3IiCisKKyM6IGNvbm5lY3QuYzoxMTQKK21zZ2lkICJleHBlY3RlZCBmbHVzaCBhZnRlciBjYXBhYmlsaXRpZXMiCittc2dzdHIgInlldGVuZWtsZXJkZW4gc29ucmEgZmxvxZ8gYmVrbGVuaXlvcmR1IgorCisjOiBjb25uZWN0LmM6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGNhcGFiaWxpdGllcyBhZnRlciBmaXJzdCBsaW5lICclcyciCittc2dzdHIgIiclcycgaWxrIHNhdMSxcsSxbmRhbiBzb25yYSB5ZXRlbmVrbGVyIHlvayBzYXnEsWzEsXlvciIKKworIzogY29ubmVjdC5jOjI1MgorbXNnaWQgInByb3RvY29sIGVycm9yOiB1bmV4cGVjdGVkIGNhcGFiaWxpdGllc157fSIKK21zZ3N0ciAicHJvdG9rb2wgaGF0YXPEsTogYmVrbGVubWVkaWsgeWV0ZW5la2xlcl57fSIKKworIzogY29ubmVjdC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogZXhwZWN0ZWQgc2hhbGxvdyBzaGEtMSwgZ290ICclcyciCittc2dzdHIgInByb3Rva29sIGhhdGFzxLE6IHPEscSfIHNoYS0xIGJla2xlbml5b3JkdSwgJyVzJyBhbMSxbmTEsSIKKworIzogY29ubmVjdC5jOjI3NQorbXNnaWQgInJlcG9zaXRvcnkgb24gdGhlIG90aGVyIGVuZCBjYW5ub3QgYmUgc2hhbGxvdyIKK21zZ3N0ciAiZGnEn2VyIHXDp3Rha2kgZGVwbyBzxLHEnyBvbGFtYXoiCisKKyM6IGNvbm5lY3QuYzozMTMKK21zZ2lkICJpbnZhbGlkIHBhY2tldCIKK21zZ3N0ciAiZ2XDp2Vyc2l6IHBha2V0IgorCisjOiBjb25uZWN0LmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInByb3RvY29sIGVycm9yOiB1bmV4cGVjdGVkICclcyciCittc2dzdHIgInByb3Rva29sIGhhdGFzxLE6IGJla2xlbm1lZGlrICclcyciCisKKyM6IGNvbm5lY3QuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBscy1yZWZzIHJlc3BvbnNlOiAlcyIKK21zZ3N0ciAiZ2XDp2Vyc2l6IGxzLXJlZnMgeWFuxLF0xLE6ICVzIgorCisjOiBjb25uZWN0LmM6NDQ1Cittc2dpZCAiZXhwZWN0ZWQgZmx1c2ggYWZ0ZXIgcmVmIGxpc3RpbmciCittc2dzdHIgImJhxZ92dXJ1IGxpc3RlbGVtZXNpbmRlbiBzb25yYSBmbG/FnyBiZWtsZW5peW9yZHUiCisKKyM6IGNvbm5lY3QuYzo1NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvdG9jb2wgJyVzJyBpcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICInJXMnIHByb3Rva29sw7wgZGVzdGVrbGVubWl5b3IiCisKKyM6IGNvbm5lY3QuYzo1OTUKK21zZ2lkICJ1bmFibGUgdG8gc2V0IFNPX0tFRVBBTElWRSBvbiBzb2NrZXQiCittc2dzdHIgInNva2V0IMO8emVyaW5kZSBTT19LRUVQQUxJVkUgYXlhcmxhbmFtxLF5b3IiCisKKyM6IGNvbm5lY3QuYzo2MzUgY29ubmVjdC5jOjY5OAorIywgYy1mb3JtYXQKK21zZ2lkICJMb29raW5nIHVwICVzIC4uLiAiCittc2dzdHIgIiVzIGFyYW7EsXlvci4uLiIKKworIzogY29ubmVjdC5jOjYzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbG9vayB1cCAlcyAocG9ydCAlcykgKCVzKSIKK21zZ3N0ciAiJXMgYXJhbmFtxLF5b3IgKGthcMSxICVzKSAoJXMpIgorCisjLiBUUkFOU0xBVE9SUzogdGhpcyBpcyB0aGUgZW5kIG9mICJMb29raW5nIHVwICVzIC4uLiAiCisjOiBjb25uZWN0LmM6NjQzIGNvbm5lY3QuYzo3MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRvbmUuXG4iCisiQ29ubmVjdGluZyB0byAlcyAocG9ydCAlcykgLi4uICIKK21zZ3N0ciAiIgorImJpdHRpLlxuIgorIsWedXJheWEgYmHEn2xhbsSxeW9yOiAlcyAoa2FwxLEgJXMpLi4uIgorCisjOiBjb25uZWN0LmM6NjY1IGNvbm5lY3QuYzo3NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjb25uZWN0IHRvICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisixZ91cmF5YSBiYcSfbGFuYW3EsXlvcjogJXM6XG4iCisiJXMiCisKKyMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkNvbm5lY3RpbmcgdG8gJXMgKHBvcnQgJXMpIC4uLiAiCisjOiBjb25uZWN0LmM6NjcxIGNvbm5lY3QuYzo3NDgKK21zZ2lkICJkb25lLiIKK21zZ3N0ciAiYml0dGkuIgorCisjOiBjb25uZWN0LmM6NzAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzICglcykiCittc2dzdHIgIiVzIGFyYW5hbcSxeW9yICglcykiCisKKyM6IGNvbm5lY3QuYzo3MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBwb3J0ICVzIgorbXNnc3RyICJiaWxpbm1leWVuIGthcMSxICVzIgorCisjOiBjb25uZWN0LmM6ODQ1IGNvbm5lY3QuYzoxMTc1CisjLCBjLWZvcm1hdAorbXNnaWQgInN0cmFuZ2UgaG9zdG5hbWUgJyVzJyBibG9ja2VkIgorbXNnc3RyICJnYXJpcCBtYWtpbmUgYWTEsSAnJXMnIGVuZ2VsbGVuZGkiCisKKyM6IGNvbm5lY3QuYzo4NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAic3RyYW5nZSBwb3J0ICclcycgYmxvY2tlZCIKK21zZ3N0ciAiZ2FyaXAga2FwxLEgJyVzJyBlbmdlbGxlbmRpIgorCisjOiBjb25uZWN0LmM6ODU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGFydCBwcm94eSAlcyIKK21zZ3N0ciAidmVraWwgJXMgYmHFn2xhdMSxbGFtxLF5b3IiCisKKyM6IGNvbm5lY3QuYzo5MjgKK21zZ2lkICJubyBwYXRoIHNwZWNpZmllZDsgc2VlICdnaXQgaGVscCBwdWxsJyBmb3IgdmFsaWQgdXJsIHN5bnRheCIKK21zZ3N0ciAieW9sIGJlbGlydGlsbWVkaTsgZ2XDp2VybGkgdXJsIHPDtnpkaXppbWkgacOnaW4gJ2dpdCBoZWxwIHB1bGwnIHlhesSxbiIKKworIzogY29ubmVjdC5jOjExMjMKK21zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IC00IgorbXNnc3RyICJzc2ggZGXEn2nFn2lrIGJpw6dpbWkgJ3NpbXBsZScgLTQgZGVzdGVrbGVtaXlvciIKKworIzogY29ubmVjdC5jOjExMzUKK21zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IC02IgorbXNnc3RyICJzc2ggZGXEn2nFn2lrIGJpw6dpbWkgJ3NpbXBsZScgLTYgZGVzdGVrbGVtaXlvciIKKworIzogY29ubmVjdC5jOjExNTIKK21zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IHNldHRpbmcgcG9ydCIKK21zZ3N0ciAic3NoIGRlxJ9pxZ9payBiacOnaW1pICdzaW1wbGUnIGthcMSxIGF5YXJsYW1hecSxIGRlc3Rla2xlbWl5b3IiCisKKyM6IGNvbm5lY3QuYzoxMjY0CisjLCBjLWZvcm1hdAorbXNnaWQgInN0cmFuZ2UgcGF0aG5hbWUgJyVzJyBibG9ja2VkIgorbXNnc3RyICJnYXJpcCB5b2wgYWTEsSAnJXMnIGVuZ2VsbGVuZGkiCisKKyM6IGNvbm5lY3QuYzoxMzExCittc2dpZCAidW5hYmxlIHRvIGZvcmsiCittc2dzdHIgIsOnYXRhbGxhbmFtxLF5b3IiCisKKyM6IGNvbm5lY3RlZC5jOjk4IGJ1aWx0aW4vZnNjay5jOjIwOCBidWlsdGluL3BydW5lLmM6NDMKK21zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkiCittc2dzdHIgIkJhxJ9sYW50xLEgZGVuZXRsZW5peW9yIgorCisjOiBjb25uZWN0ZWQuYzoxMTAKK21zZ2lkICJDb3VsZCBub3QgcnVuICdnaXQgcmV2LWxpc3QnIgorbXNnc3RyICInZ2l0IHJldi1saXN0JyDDp2FsxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IGNvbm5lY3RlZC5jOjEzMAorbXNnaWQgImZhaWxlZCB3cml0ZSB0byByZXYtbGlzdCIKK21zZ3N0ciAicmV2LWxpc3QgeWF6xLFsYW1hZMSxIgorCisjOiBjb25uZWN0ZWQuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcmV2LWxpc3QncyBzdGRpbiIKK21zZ3N0ciAicmV2LWxpc3QnaW4gc3RkaW4naSBrYXBhdMSxbGFtYWTEsSIKKworIzogY29udmVydC5jOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGNybGZfYWN0aW9uICVkIgorbXNnc3RyICJpemluIHZlcmlsbWV5ZW4gY3JsZl9hY3Rpb24gJWQiCisKKyM6IGNvbnZlcnQuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ1JMRiB3b3VsZCBiZSByZXBsYWNlZCBieSBMRiBpbiAlcyIKK21zZ3N0ciAiQ1JMRiAlcyBpw6dpbmRlIExGIGlsZSBkZcSfacWfdGlyaWxlY2VrIgorCisjOiBjb252ZXJ0LmM6MjA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDUkxGIHdpbGwgYmUgcmVwbGFjZWQgYnkgTEYgaW4gJXMuXG4iCisiVGhlIGZpbGUgd2lsbCBoYXZlIGl0cyBvcmlnaW5hbCBsaW5lIGVuZGluZ3MgaW4geW91ciB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorIkNSTEYgJXMgacOnaW5kZSBMRiBpbGUgZGXEn2nFn3RpcmlsZWNlay5cbiIKKyJEb3N5YSBzaXppbiDDp2FsxLHFn21hIGRpemluaW5pemRlIGtlbmRpIG9yaWppbmFsIHNhdMSxciBzb25sYXLEsW5hIGl5ZSBvbGFjYWsuIgorCisjOiBjb252ZXJ0LmM6MjE3CisjLCBjLWZvcm1hdAorbXNnaWQgIkxGIHdvdWxkIGJlIHJlcGxhY2VkIGJ5IENSTEYgaW4gJXMiCittc2dzdHIgIkxGICVzIGnDp2luZGUgQ1JMRiBpbGUgZGXEn2nFn3RpcmlsZWNlayIKKworIzogY29udmVydC5jOjIxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTEYgd2lsbCBiZSByZXBsYWNlZCBieSBDUkxGIGluICVzLlxuIgorIlRoZSBmaWxlIHdpbGwgaGF2ZSBpdHMgb3JpZ2luYWwgbGluZSBlbmRpbmdzIGluIHlvdXIgd29ya2luZyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKyJMRiAlcyBpw6dpbmRlIENSTEYgaWxlIGRlxJ9pxZ90aXJpbGVjZWsuXG4iCisiRG9zeWEgc2l6aW4gw6dhbMSxxZ9tYSBkaXppbmluaXpkZSBrZW5kaSBvcmlqaW5hbCBzYXTEsXIgc29ubGFyxLFuYSBpeWUgb2xhY2FrLiIKKworIzogY29udmVydC5jOjI4NAorIywgYy1mb3JtYXQKK21zZ2lkICJCT00gaXMgcHJvaGliaXRlZCBpbiAnJXMnIGlmIGVuY29kZWQgYXMgJXMiCittc2dzdHIgIkJPTSAnJXMnIGnDp2luZGUgeWFzYWtsxLEsIGXEn2VyICVzIG9sYXJhayBrb2RsYW5txLHFn3NhIgorCisjOiBjb252ZXJ0LmM6MjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZmlsZSAnJXMnIGNvbnRhaW5zIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lLipzIGFzICIKKyJ3b3JraW5nLXRyZWUtZW5jb2RpbmcuIgorbXNnc3RyICIiCisiJyVzJyBkb3N5YXPEsSBiaXIgYmF5dCBzxLFyYSBpbWkgKEJPTSkgacOnZXJpeW9yLiBMw7x0ZmVuIMOnYWzEscWfbWEgYcSfYWPEsSAiCisia29kbGFtYXPEsSBpw6dpbiBVVEYtJS4qcyBrdWxsYW7EsW4uIgorCisjOiBjb252ZXJ0LmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkJPTSBpcyByZXF1aXJlZCBpbiAnJXMnIGlmIGVuY29kZWQgYXMgJXMiCittc2dzdHIgIkJPTSAnJXMnIGnDp2luZGUgZ2VyZWtsaSwgZcSfZXIgJXMgb2xhcmFrIGtvZGxhbm3EscWfc2EiCisKKyM6IGNvbnZlcnQuYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmaWxlICclcycgaXMgbWlzc2luZyBhIGJ5dGUgb3JkZXIgbWFyayAoQk9NKS4gUGxlYXNlIHVzZSBVVEYtJXNCRSBvciBVVEYtIgorIiVzTEUgKGRlcGVuZGluZyBvbiB0aGUgYnl0ZSBvcmRlcikgYXMgd29ya2luZy10cmVlLWVuY29kaW5nLiIKK21zZ3N0ciAiIgorIiclcycgZG9zeWFzxLFuZGEgYmlyIGJheXQgc8SxcmEgaW1pIChCT00pIGVrc2lrLiBMw7x0ZmVuIMOnYWzEscWfbWEgYcSfYWPEsSAiCisia29kbGFtYXPEsSBpw6dpbiBVVEYtJXNCRSB2ZXlhIFVURi0lc0xFIChiYXl0IHPEsXJhc8SxbmEgZ8O2cmUpIGt1bGxhbsSxbi4iCisKKyM6IGNvbnZlcnQuYzo0MTkgY29udmVydC5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZW5jb2RlICclcycgZnJvbSAlcyB0byAlcyIKK21zZ3N0ciAiJyVzJywgJXMgZGXEn2VyaW5kZW4gJXMgZGXEn2VyaW5lIGtvZGxhbmFtYWTEsSIKKworIzogY29udmVydC5jOjQ2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlbmNvZGluZyAnJXMnIGZyb20gJXMgdG8gJXMgYW5kIGJhY2sgaXMgbm90IHRoZSBzYW1lIgorbXNnc3RyICIiCisiJyVzJyBrb2RsYW1hc8SxbsSxICVzIC0+ICVzIGJpw6dpbWluZGUgeWFwxLFwIHRlcnNpbmUgZMO2bmTDvHJtZWsgYXluxLEgxZ9leSBkZcSfaWwiCisKKyM6IGNvbnZlcnQuYzo2NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZvcmsgdG8gcnVuIGV4dGVybmFsIGZpbHRlciAnJXMnIgorbXNnc3RyICInJXMnIGTEscWfIHPDvHpnZWNpbmkgw6dhbMSxxZ90xLFybWFrIGnDp2luIMOnYXRhbGxhbWEgeWFwxLFsYW3EsXlvciIKKworIzogY29udmVydC5jOjY4OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZmVlZCB0aGUgaW5wdXQgdG8gZXh0ZXJuYWwgZmlsdGVyICclcyciCittc2dzdHIgImdpcmRpICclcycgZMSxxZ8gc8O8emdlY2luZSBiZXNsZW5lbWl5b3IiCisKKyM6IGNvbnZlcnQuYzo2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkICVkIgorbXNnc3RyICInJXMnIGTEscWfIHPDvHpnZWNpICVkIGnDp2luIGJhxZ9hcsSxc8SxeiBvbGR1IgorCisjOiBjb252ZXJ0LmM6NzMwIGNvbnZlcnQuYzo3MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBmcm9tIGV4dGVybmFsIGZpbHRlciAnJXMnIGZhaWxlZCIKK21zZ3N0ciAiJyVzJyBkxLHFnyBzw7x6Z2VjaW5kZW4gb2t1bWEgYmHFn2FyxLFzxLF6IG9sZHUiCisKKyM6IGNvbnZlcnQuYzo3MzYgY29udmVydC5jOjc5MQorIywgYy1mb3JtYXQKK21zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQiCittc2dzdHIgIiclcycgZMSxxZ8gc8O8emdlY2kgYmHFn2FyxLFzxLF6IG9sZHUiCisKKyM6IGNvbnZlcnQuYzo4MzkKK21zZ2lkICJ1bmV4cGVjdGVkIGZpbHRlciB0eXBlIgorbXNnc3RyICJiZWtsZW5tZWRpayBzw7x6Z2XDpyB0w7xyw7wiCisKKyM6IGNvbnZlcnQuYzo4NTAKK21zZ2lkICJwYXRoIG5hbWUgdG9vIGxvbmcgZm9yIGV4dGVybmFsIGZpbHRlciIKK21zZ3N0ciAiZMSxxZ8gc8O8emdlw6cgacOnaW4geW9sIGFkxLEgcGVrIHV6dW4iCisKKyM6IGNvbnZlcnQuYzo5MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4dGVybmFsIGZpbHRlciAnJXMnIGlzIG5vdCBhdmFpbGFibGUgYW55bW9yZSBhbHRob3VnaCBub3QgYWxsIHBhdGhzIGhhdmUgIgorImJlZW4gZmlsdGVyZWQiCittc2dzdHIgIiIKKyInJXMnIGTEscWfIHPDvHpnZWNpIGFydMSxayBrdWxsYW7EsWxhbcSxeW9yLCBhbmNhayB0w7xtIHlvbGxhcsSxbiBzw7x6w7xtw7wgYml0bWVkaSIKKworIzogY29udmVydC5jOjEyMjMKK21zZ2lkICJ0cnVlL2ZhbHNlIGFyZSBubyB2YWxpZCB3b3JraW5nLXRyZWUtZW5jb2RpbmdzIgorbXNnc3RyICJkb8SfcnUveWFubMSxxZ8gZ2XDp2VybGkgYmlyIMOnYWzEscWfbWEgYcSfYWPEsSBrb2RsYW1hc8SxIGRlxJ9pbCIKKworIzogY29udmVydC5jOjE0MTEgY29udmVydC5jOjE0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNsZWFuIGZpbHRlciAnJXMnIGZhaWxlZCIKK21zZ3N0ciAiJXM6IHRlbWl6IHPDvHpnZcOnICclcycgYmHFn2FyxLFzxLF6IG9sZHUiCisKKyM6IGNvbnZlcnQuYzoxNDg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBzbXVkZ2UgZmlsdGVyICVzIGZhaWxlZCIKK21zZ3N0ciAiJXM6IGtpciBzw7x6Z2VjaSAlcyBiYcWfYXLEsXPEsXogb2xkdSIKKworIzogZGF0ZS5jOjEzOAorbXNnaWQgImluIHRoZSBmdXR1cmUiCittc2dzdHIgImdlbGVjZWt0ZSIKKworIzogZGF0ZS5jOjE0NAorIywgYy1mb3JtYXQKK21zZ2lkICIlPFBSSXVNQVg+IHNlY29uZCBhZ28iCittc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gc2Vjb25kcyBhZ28iCittc2dzdHJbMF0gIiU8UFJJdU1BWD4gc2FuaXllIMO2bmNlIgorbXNnc3RyWzFdICIlPFBSSXVNQVg+IHNhbml5ZSDDtm5jZSIKKworIzogZGF0ZS5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICIlPFBSSXVNQVg+IG1pbnV0ZSBhZ28iCittc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gbWludXRlcyBhZ28iCittc2dzdHJbMF0gIiU8UFJJdU1BWD4gZGFraWthIMO2bmNlIgorbXNnc3RyWzFdICIlPFBSSXVNQVg+IGRha2lrYSDDtm5jZSIKKworIzogZGF0ZS5jOjE1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlPFBSSXVNQVg+IGhvdXIgYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IGhvdXJzIGFnbyIKK21zZ3N0clswXSAiJTxQUkl1TUFYPiBzYWF0IMO2bmNlIgorbXNnc3RyWzFdICIlPFBSSXVNQVg+IHNhYXQgw7ZuY2UiCisKKyM6IGRhdGUuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJTxQUkl1TUFYPiBkYXkgYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IGRheXMgYWdvIgorbXNnc3RyWzBdICIlPFBSSXVNQVg+IGfDvG4gw7ZuY2UiCittc2dzdHJbMV0gIiU8UFJJdU1BWD4gZ8O8biDDtm5jZSIKKworIzogZGF0ZS5jOjE3MQorIywgYy1mb3JtYXQKK21zZ2lkICIlPFBSSXVNQVg+IHdlZWsgYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHdlZWtzIGFnbyIKK21zZ3N0clswXSAiJTxQUkl1TUFYPiBoYWZ0YSDDtm5jZSIKK21zZ3N0clsxXSAiJTxQUkl1TUFYPiBoYWZ0YSDDtm5jZSIKKworIzogZGF0ZS5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlPFBSSXVNQVg+IG1vbnRoIGFnbyIKK21zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtb250aHMgYWdvIgorbXNnc3RyWzBdICIlPFBSSXVNQVg+IGF5IMO2bmNlIgorbXNnc3RyWzFdICIlPFBSSXVNQVg+IGF5IMO2bmNlIgorCisjOiBkYXRlLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiU8UFJJdU1BWD4geWVhciIKK21zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiB5ZWFycyIKK21zZ3N0clswXSAiJTxQUkl1TUFYPiB5xLFsIgorbXNnc3RyWzFdICIlPFBSSXVNQVg+IHnEsWwiCisKKyMuIFRSQU5TTEFUT1JTOiAiJXMiIGlzICI8bj4geWVhcnMiCisjOiBkYXRlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzLCAlPFBSSXVNQVg+IG1vbnRoIGFnbyIKK21zZ2lkX3BsdXJhbCAiJXMsICU8UFJJdU1BWD4gbW9udGhzIGFnbyIKK21zZ3N0clswXSAiJXMsICU8UFJJdU1BWD4gYXkgw7ZuY2UiCittc2dzdHJbMV0gIiVzLCAlPFBSSXVNQVg+IGF5IMO2bmNlIgorCisjOiBkYXRlLmM6MTk3IGRhdGUuYzoyMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJTxQUkl1TUFYPiB5ZWFyIGFnbyIKK21zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiB5ZWFycyBhZ28iCittc2dzdHJbMF0gIiU8UFJJdU1BWD4gecSxbCDDtm5jZSIKK21zZ3N0clsxXSAiJTxQUkl1TUFYPiB5xLFsIMO2bmNlIgorCisjOiBkZWx0YS1pc2xhbmRzLmM6MjcyCittc2dpZCAiUHJvcGFnYXRpbmcgaXNsYW5kIG1hcmtzIgorbXNnc3RyICJEZWx0YSBhZGFzxLEgaW1sZXJpIHlhecSxbMSxeW9yIgorCisjOiBkZWx0YS1pc2xhbmRzLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCB0cmVlIG9iamVjdCAlcyIKK21zZ3N0ciAiaGF0YWzEsSBhxJ9hw6cgbmVzbmVzaSAlcyIKKworIzogZGVsdGEtaXNsYW5kcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbG9hZCBpc2xhbmQgcmVnZXggZm9yICclcyc6ICVzIgorbXNnc3RyICInJXMnIGnDp2luIGRlbHRhIGFkYXPEsSBkw7x6ZW5saSBpZmFkZXNpIHnDvGtsZW5lbWVkaTogJXMiCisKKyM6IGRlbHRhLWlzbGFuZHMuYzozOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaXNsYW5kIHJlZ2V4IGZyb20gY29uZmlnIGhhcyB0b28gbWFueSBjYXB0dXJlIGdyb3VwcyAobWF4PSVkKSIKK21zZ3N0ciAiIgorInlhcMSxbGFuZMSxcm1hbsSxbiBkZWx0YSBhZGFzxLEgZMO8emVubGkgaWZhZGVzaW5kZSDDp29rIGZhemxhIHlha2FsYW1hIGdydWJ1IHZhciAiCisiKGVuIMOnb2sgJWQpIgorCisjOiBkZWx0YS1pc2xhbmRzLmM6NDY3CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hcmtlZCAlZCBpc2xhbmRzLCBkb25lLlxuIgorbXNnc3RyICIlZCBkZWx0YSBhZGFzxLEgaW1sZW5kaSwgYml0dGkuXG4iCisKKyM6IGRpZmZjb3JlLW9yZGVyLmM6MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3JkZXJmaWxlICclcyciCittc2dzdHIgIm9yZGVyZmlsZSAnJXMnIG9rdW5hbWFkxLEiCisKKyM6IGRpZmZjb3JlLXJlbmFtZS5jOjU0MworbXNnaWQgIlBlcmZvcm1pbmcgaW5leGFjdCByZW5hbWUgZGV0ZWN0aW9uIgorbXNnc3RyICJLZXNpbiBvbG1heWFuIHllbmlkZW4gYWRsYW5kxLFybWEgYWxnxLFsYW1hc8SxIGdlcsOnZWtsZcWfdGlyaWxpeW9yIgorCisjOiBkaWZmLW5vLWluZGV4LmM6MjM4Cittc2dpZCAiZ2l0IGRpZmYgLS1uby1pbmRleCBbPG9wdGlvbnM+XSA8cGF0aD4gPHBhdGg+IgorbXNnc3RyICJnaXQgZGlmZiAtLW5vLWluZGV4IFs8c2XDp2VuZWtsZXI+XSA8eW9sPiA8eW9sPiIKKworIzogZGlmZi1uby1pbmRleC5jOjI2MworbXNnaWQgIiIKKyJOb3QgYSBnaXQgcmVwb3NpdG9yeS4gVXNlIC0tbm8taW5kZXggdG8gY29tcGFyZSB0d28gcGF0aHMgb3V0c2lkZSBhIHdvcmtpbmcgIgorInRyZWUiCittc2dzdHIgIiIKKyJCaXIgZ2l0IGRlcG9zdSBkZcSfaWwuIEJpciDDp2FsxLHFn21hIGHEn2FjxLFuxLFuIGTEscWfxLFuZGFraSBpa2kgeW9sdSBrYXLFn8SxbGHFn3TEsXJtYWsgIgorImnDp2luIC0tbm8taW5kZXgga3VsbGFuxLFuLiIKKworIzogZGlmZi5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICIgIEZhaWxlZCB0byBwYXJzZSBkaXJzdGF0IGN1dC1vZmYgcGVyY2VudGFnZSAnJXMnXG4iCittc2dzdHIgIiAgZGlyc3RhdCBrZXNpbSB5w7x6ZGVzaSAnJXMnIGF5csSxxZ90xLFyxLFsYW1hZMSxXG4iCisKKyM6IGRpZmYuYzoxNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBVbmtub3duIGRpcnN0YXQgcGFyYW1ldGVyICclcydcbiIKK21zZ3N0ciAiICBCaWxpbm1leWVuIGRpcnN0YXQgcGFyYW1ldHJlc2kgJyVzJ1xuIgorCisjOiBkaWZmLmM6Mjk2Cittc2dpZCAiIgorImNvbG9yIG1vdmVkIHNldHRpbmcgbXVzdCBiZSBvbmUgb2YgJ25vJywgJ2RlZmF1bHQnLCAnYmxvY2tzJywgJ3plYnJhJywgIgorIidkaW1tZWQtemVicmEnLCAncGxhaW4nIgorbXNnc3RyICIiCisiXCJjb2xvci1tb3ZlZFwiIGF5YXLEsSAnbm8nLCAnZGVmYXVsdCcsICdibG9ja3MnLCAnemVicmEnLCAnZGltbWVkLXplYnJhJywgIgorIidwbGFpbicgc2XDp2VuZWtsZXJpbmRlbiBiaXJpIG9sbWFsxLFkxLFyIgorCisjOiBkaWZmLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmtub3duIGNvbG9yLW1vdmVkLXdzIG1vZGUgJyVzJywgcG9zc2libGUgdmFsdWVzIGFyZSAnaWdub3JlLXNwYWNlLWNoYW5nZScsICIKKyInaWdub3JlLXNwYWNlLWF0LWVvbCcsICdpZ25vcmUtYWxsLXNwYWNlJywgJ2FsbG93LWluZGVudGF0aW9uLWNoYW5nZSciCittc2dzdHIgIiIKKyJiaWxpbm1leWVuIGNvbG9yLW1vdmVkLXdzIGtpcGkgJyVzJywgb2xhYmlsZWNlayBkZcSfZXJsZXI6ICdpZ25vcmUtc3BhY2UtIgorImNoYW5nZScsICdpZ25vcmUtc3BhY2UtYXQtZW9sJywgJ2lnbm9yZS1hbGwtc3BhY2UnICdhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UnIgorCisjOiBkaWZmLmM6MzMyCittc2dpZCAiIgorImNvbG9yLW1vdmVkLXdzOiBhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UgY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgIgorIndoaXRlc3BhY2UgbW9kZXMiCittc2dzdHIgIiIKKyJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGRpxJ9lciBib8WfbHVrIGtpcGxlcmkgaWxlIGJpcmxpa3RlICIKKyJrdWxsYW7EsWxhbWF6IgorCisjOiBkaWZmLmM6NDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVua25vd24gdmFsdWUgZm9yICdkaWZmLnN1Ym1vZHVsZScgY29uZmlnIHZhcmlhYmxlOiAnJXMnIgorbXNnc3RyICInZGlmZi5zdWJtb2R1bGUnIHlhcMSxbGFuZMSxcm1hIGRlxJ9pxZ9rZW5pIGnDp2luIGJpbGlubWV5ZW4gZGXEn2VyOiAnJXMnIgorCisjOiBkaWZmLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3VuZCBlcnJvcnMgaW4gJ2RpZmYuZGlyc3RhdCcgY29uZmlnIHZhcmlhYmxlOlxuIgorIiVzIgorbXNnc3RyICIiCisiJ2RpZmYuZGlyc3RhdCcgeWFwxLFsYW5kxLFybWEgZGXEn2nFn2tlbmluZGUgaGF0YWxhciBidWx1bmR1OlxuIgorIiVzIgorCisjOiBkaWZmLmM6NDIwMgorIywgYy1mb3JtYXQKK21zZ2lkICJleHRlcm5hbCBkaWZmIGRpZWQsIHN0b3BwaW5nIGF0ICVzIgorbXNnc3RyICJkxLHFnyBkaWZmIHNvbmxhbmTEsSwgJXMga29udW11bmRhIGR1cmR1IgorCisjOiBkaWZmLmM6NDU0NworbXNnaWQgIi0tbmFtZS1vbmx5LCAtLW5hbWUtc3RhdHVzLCAtLWNoZWNrIGFuZCAtcyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICItLW5hbWUtb25seSwgLS1uYW1lLXN0YXR1cywgLS1jaGVjayB2ZSAtcyBiaXJsaWt0ZSBrdWxsYW7EsWxtYXoiCisKKyM6IGRpZmYuYzo0NTUwCittc2dpZCAiLUcsIC1TIGFuZCAtLWZpbmQtb2JqZWN0IGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIi1HLCAtUyB2ZSAtLWZpbmQtb2JqZWN0IGJpcmxpa3RlIGt1bGxhbsSxbG1heiIKKworIzogZGlmZi5jOjQ2MjgKK21zZ2lkICItLWZvbGxvdyByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXRoc3BlYyIKK21zZ3N0ciAiLS1mb2xsb3cgdGFtIG9sYXJhayB5YWxuxLF6Y2EgYmlyIHlvbCBiZWxpcnRlY2kgZ2VyZWt0aXJpeW9yIgorCisjOiBkaWZmLmM6NDY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIC0tc3RhdCB2YWx1ZTogJXMiCittc2dzdHIgImdlw6dlcnNpeiAtLXN0YXQgZGXEn2VyaTogJXMiCisKKyM6IGRpZmYuYzo0NjgxIGRpZmYuYzo0Njg2IGRpZmYuYzo0NjkxIGRpZmYuYzo0Njk2IGRpZmYuYzo1MjA5CisjOiBwYXJzZS1vcHRpb25zLmM6MTk3IHBhcnNlLW9wdGlvbnMuYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKK21zZ3N0ciAiJXMgYmlyIHNhecSxc2FsIGRlxJ9lciBiZWtsaXlvciIKKworIzogZGlmZi5jOjQ3MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZhaWxlZCB0byBwYXJzZSAtLWRpcnN0YXQvLVggb3B0aW9uIHBhcmFtZXRlcjpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIi0tZGlyc3RhdC8tWCBzZcOnZW5layBwYXJhbWV0cmVzaSBheXLEscWfdMSxcsSxbGFtYWTEsTpcbiIKKyIlcyIKKworIzogZGlmZi5jOjQ3OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjaGFuZ2UgY2xhc3MgJyVjJyBpbiAtLWRpZmYtZmlsdGVyPSVzIgorbXNnc3RyICLFn3VyYWRhIGJpbGlubWV5ZW4gZGXEn2nFn2lrbGlrIHPEsW7EsWbEsSAnJWMnOiAtZGlmZi1maWx0ZXI9JXMiCisKKyM6IGRpZmYuYzo0ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdmFsdWUgYWZ0ZXIgd3MtZXJyb3ItaGlnaGxpZ2h0PSUuKnMiCittc2dzdHIgIsWfdW5kYW4gc29ucmEgYmlsaW5tZXllbiBkZcSfZXI6IHdzLWVycm9yLWhpZ2hsaWdodD0lLipzIgorCisjOiBkaWZmLmM6NDgzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSAnJXMnIgorbXNnc3RyICInJXMnIMOnw7Z6w7xsZW1peW9yIgorCisjOiBkaWZmLmM6NDg4NiBkaWZmLmM6NDg5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIDxuPi88bT4gZm9ybSIKK21zZ3N0ciAiJXMgPG4+LzxtPiBiacOnaW1pIGJla2xpeW9yIgorCisjOiBkaWZmLmM6NDkwNAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIGEgY2hhcmFjdGVyLCBnb3QgJyVzJyIKK21zZ3N0ciAiJXMgYmlyIGthcmFrdGVyIGJla2xpeW9yLCAnJXMnIGFsZMSxIgorCisjOiBkaWZmLmM6NDkyNQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS1jb2xvci1tb3ZlZCBhcmd1bWVudDogJXMiCittc2dzdHIgImhhdGFsxLEgLS1jb2xvci1tb3ZlZCBkZcSfacWfa2VuaTogJXMiCisKKyM6IGRpZmYuYzo0OTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgbW9kZSAnJXMnIGluIC0tY29sb3ItbW92ZWQtd3MiCittc2dzdHIgIi0tY29sb3ItbW92ZWQtd3MgacOnaW5kZSBnZcOnZXJzaXoga2lwICclcyciCisKKyM6IGRpZmYuYzo0OTg0Cittc2dpZCAiIgorIm9wdGlvbiBkaWZmLWFsZ29yaXRobSBhY2NlcHRzIFwibXllcnNcIiwgXCJtaW5pbWFsXCIsIFwicGF0aWVuY2VcIiBhbmQgIgorIlwiaGlzdG9ncmFtXCIiCittc2dzdHIgIiIKKyJkaWZmLWFsZ29yaXRobSBzZcOnZW5lxJ9pIMWfdW5sYXLEsSBrYWJ1bCBlZGVyOiBcIm15ZXJzXCIsIFwibWluaW1hbFwiLCAiCisiXCJwYXRpZW5jZVwiIHZlIFwiaGlzdG9ncmFtXCIiCisKKyM6IGRpZmYuYzo1MDIwIGRpZmYuYzo1MDQwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgYXJndW1lbnQgdG8gJXMiCittc2dzdHIgIiVzIGnDp2luIGdlw6dlcnNpeiBkZcSfacWfa2VuIgorCisjOiBkaWZmLmM6NTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgLS1zdWJtb2R1bGUgb3B0aW9uIHBhcmFtZXRlcjogJyVzJyIKK21zZ3N0ciAiLS1zdWJtb2R1bGUgc2XDp2VuZWsgcGFyYW1ldHJlc2kgYXlyxLHFn3TEsXLEsWxhbWFkxLE6ICclcyciCisKKyM6IGRpZmYuYzo1MjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLXdvcmQtZGlmZiBhcmd1bWVudDogJXMiCittc2dzdHIgImhhdGFsxLEgLS13b3JkLWRpZmYgZGXEn2nFn2tlbmk6ICVzIgorCisjOiBkaWZmLmM6NTI1NworbXNnaWQgIkRpZmYgb3V0cHV0IGZvcm1hdCBvcHRpb25zIgorbXNnc3RyICJEaWZmIMOnxLFrdMSxc8SxIGJpw6dpbWxlbmRpcm1lIHNlw6dlbmVrbGVyaSIKKworIzogZGlmZi5jOjUyNTkgZGlmZi5jOjUyNjUKK21zZ2lkICJnZW5lcmF0ZSBwYXRjaCIKK21zZ3N0ciAieWFtYSBvbHXFn3R1ciIKKworIzogZGlmZi5jOjUyNjIgYnVpbHRpbi9sb2cuYzoxNzMKK21zZ2lkICJzdXBwcmVzcyBkaWZmIG91dHB1dCIKK21zZ3N0ciAiZGlmZiDDp8Sxa3TEsXPEsW7EsSBnaXpsZSIKKworIzogZGlmZi5jOjUyNjcgZGlmZi5jOjUzODEgZGlmZi5jOjUzODgKK21zZ2lkICI8bj4iCittc2dzdHIgIjxuPiIKKworIzogZGlmZi5jOjUyNjggZGlmZi5jOjUyNzEKK21zZ2lkICJnZW5lcmF0ZSBkaWZmcyB3aXRoIDxuPiBsaW5lcyBjb250ZXh0IgorbXNnc3RyICJkaWZmJ2xlcmkgPG4+IHNhdMSxciBiYcSfbGFtbMSxIG9sdcWfdHVyIgorCisjOiBkaWZmLmM6NTI3MworbXNnaWQgImdlbmVyYXRlIHRoZSBkaWZmIGluIHJhdyBmb3JtYXQiCittc2dzdHIgImRpZmYnaSBoYW0gYmnDp2ltZGUgb2x1xZ90dXIiCisKKyM6IGRpZmYuYzo1Mjc2Cittc2dpZCAic3lub255bSBmb3IgJy1wIC0tcmF3JyIKK21zZ3N0ciAiJy1wIC0tcmF3IGXFn2FubGFtbMSxc8SxIgorCisjOiBkaWZmLmM6NTI4MAorbXNnaWQgInN5bm9ueW0gZm9yICctcCAtLXN0YXQnIgorbXNnc3RyICInLXAgLS1zdGF0IGXFn2FubGFtbMSxc8SxIgorCisjOiBkaWZmLmM6NTI4NAorbXNnaWQgIm1hY2hpbmUgZnJpZW5kbHkgLS1zdGF0IgorbXNnc3RyICJtYWtpbmVkZSBva3VuYWJpbGVuIC0tc3RhdCIKKworIzogZGlmZi5jOjUyODcKK21zZ2lkICJvdXRwdXQgb25seSB0aGUgbGFzdCBsaW5lIG9mIC0tc3RhdCIKK21zZ3N0ciAiLS1zdGF0J8SxbiB5YWxuxLF6Y2Egc29uIHNhdMSxcsSxbsSxIMOnxLFrdMSxIHZlciIKKworIzogZGlmZi5jOjUyODkgZGlmZi5jOjUyOTcKK21zZ2lkICI8cGFyYW0xLHBhcmFtMj4uLi4iCittc2dzdHIgIjxwYXJhbTEscGFyYW0yPi4uLiIKKworIzogZGlmZi5jOjUyOTAKK21zZ2lkICIiCisib3V0cHV0IHRoZSBkaXN0cmlidXRpb24gb2YgcmVsYXRpdmUgYW1vdW50IG9mIGNoYW5nZXMgZm9yIGVhY2ggc3ViLWRpcmVjdG9yeSIKK21zZ3N0ciAiIgorImhlciBhbHQgZGl6aW4gacOnaW4gZ8O2cmVjZWxpIGJpciBtaWt0YXIgZGXEn2nFn2lrbGnEn2luIGRhxJ/EsXTEsW3EsW7EsSDDp8Sxa3TEsSB2ZXIiCisKKyM6IGRpZmYuYzo1Mjk0Cittc2dpZCAic3lub255bSBmb3IgLS1kaXJzdGF0PWN1bXVsYXRpdmUiCittc2dzdHIgIi0tZGlyc3RhdC1jdW11bGF0aXZlIGXFn2FubGFtbMSxc8SxIgorCisjOiBkaWZmLmM6NTI5OAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1maWxlcyxwYXJhbTEscGFyYW0yLi4uIgorbXNnc3RyICItLWRpcnN0YXQ9ZmlsZXMscGFyYW0xLHBhcmFtMi4uLiBlxZ9hbmxhbWzEsXPEsSIKKworIzogZGlmZi5jOjUzMDIKK21zZ2lkICJ3YXJuIGlmIGNoYW5nZXMgaW50cm9kdWNlIGNvbmZsaWN0IG1hcmtlcnMgb3Igd2hpdGVzcGFjZSBlcnJvcnMiCittc2dzdHIgIiIKKyJkZcSfacWfaWtsaWtsZXIgw6dha8SxxZ9tYSBpbWxleWljaWxlcmkgdmV5YSBib8WfbHVrIGhhdGFsYXLEsSBkb8SfdXJ1eW9yc2EgdXlhciIKKworIzogZGlmZi5jOjUzMDUKK21zZ2lkICJjb25kZW5zZWQgc3VtbWFyeSBzdWNoIGFzIGNyZWF0aW9ucywgcmVuYW1lcyBhbmQgbW9kZSBjaGFuZ2VzIgorbXNnc3RyICIiCisic8Sxa8SxxZ/EsWsgw7Z6ZXQ7IMO2cm4uIG9sdcWfdW1sYXIsIHllbmlkZW4gYWRsYW5kxLFybWFsYXIgdmUga2lwIGRlxJ9pxZ9pa2xpa2xlcmkiCisKKyM6IGRpZmYuYzo1MzA4Cittc2dpZCAic2hvdyBvbmx5IG5hbWVzIG9mIGNoYW5nZWQgZmlsZXMiCittc2dzdHIgInlhbG7EsXpjYSBkZcSfacWfdGlyaWxlbiBkb3N5YWxhcsSxbiBhZGxhcsSxbsSxIGfDtnN0ZXIiCisKKyM6IGRpZmYuYzo1MzExCittc2dpZCAic2hvdyBvbmx5IG5hbWVzIGFuZCBzdGF0dXMgb2YgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAieWFsbsSxemNhIGRlxJ9pxZ90aXJpbGVuIGRvc3lhbGFyxLFuIGFkbGFyxLFuxLEgdmUgZHVydW1sYXLEsW7EsSBnw7ZzdGVyIgorCisjOiBkaWZmLmM6NTMxMworbXNnaWQgIjx3aWR0aD5bLDxuYW1lLXdpZHRoPlssPGNvdW50Pl1dIgorbXNnc3RyICI8Z2VuacWfbGlrPlssPGFkLWdlbmnFn2xpaz5bLDxzYXnEsW0+XV0iCisKKyM6IGRpZmYuYzo1MzE0Cittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQiCittc2dzdHIgImRpZmZzdGF0IG9sdcWfdHVyIgorCisjOiBkaWZmLmM6NTMxNiBkaWZmLmM6NTMxOSBkaWZmLmM6NTMyMgorbXNnaWQgIjx3aWR0aD4iCittc2dzdHIgIjxnZW5pxZ9saWs+IgorCisjOiBkaWZmLmM6NTMxNworbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiB3aWR0aCIKK21zZ3N0ciAiZGlmZnN0YXQnxLEgdmVyaWxtacWfIGJpciBnZW5pxZ9saWsgaWxlIG9sdcWfdHVyIgorCisjOiBkaWZmLmM6NTMyMAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBuYW1lIHdpZHRoIgorbXNnc3RyICJkaWZmc3RhdCfEsSB2ZXJpbG1pxZ8gYmlyIGFkIGdlbmnFn2xpxJ9pIGlsZSBvbHXFn3R1ciIKKworIzogZGlmZi5jOjUzMjMKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGEgZ2l2ZW4gZ3JhcGggd2lkdGgiCittc2dzdHIgImRpZmZzdGF0J8SxIHZlcmlsbWnFnyBiaXIgZ3JhZmlrIGdlbmnFn2xpxJ9pIGlsZSBvbHXFn3R1ciIKKworIzogZGlmZi5jOjUzMjUKK21zZ2lkICI8Y291bnQ+IgorbXNnc3RyICI8c2F5xLFtPiIKKworIzogZGlmZi5jOjUzMjYKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGxpbWl0ZWQgbGluZXMiCittc2dzdHIgImRpZmZzdGF0J8SxIGvEsXPEsXRsxLEgc2F0xLFybGFybGEgb2x1xZ90dXIiCisKKyM6IGRpZmYuYzo1MzI5Cittc2dpZCAiZ2VuZXJhdGUgY29tcGFjdCBzdW1tYXJ5IGluIGRpZmZzdGF0IgorbXNnc3RyICJkaWZmc3RhdCBpw6dpbmRlIHVmYWsgw7Z6ZXQgb2x1xZ90dXIiCisKKyM6IGRpZmYuYzo1MzMyCittc2dpZCAib3V0cHV0IGEgYmluYXJ5IGRpZmYgdGhhdCBjYW4gYmUgYXBwbGllZCIKK21zZ3N0ciAidXlndWxhbmFiaWxpciBiaXIgaWtpbGkgZGlmZiDDp8Sxa3TEsXPEsSB2ZXIiCisKKyM6IGRpZmYuYzo1MzM1Cittc2dpZCAic2hvdyBmdWxsIHByZS0gYW5kIHBvc3QtaW1hZ2Ugb2JqZWN0IG5hbWVzIG9uIHRoZSBcImluZGV4XCIgbGluZXMiCittc2dzdHIgIlwiaW5kZXhcIiBzYXTEsXJsYXLEsW5kYSB0YW0gw7ZuIHZlIHNvbmfDtnLDvG50w7wgbmVzbmUgYWRsYXLEsW7EsSBnw7ZzdGVyIgorCisjOiBkaWZmLmM6NTMzNworbXNnaWQgInNob3cgY29sb3JlZCBkaWZmIgorbXNnc3RyICJyZW5rbGkgZGlmZiBnw7ZzdGVyIgorCisjOiBkaWZmLmM6NTMzOAorbXNnaWQgIjxraW5kPiIKK21zZ3N0ciAiPHTDvHI+IgorCisjOiBkaWZmLmM6NTMzOQorbXNnaWQgIiIKKyJoaWdobGlnaHQgd2hpdGVzcGFjZSBlcnJvcnMgaW4gdGhlICdjb250ZXh0JywgJ29sZCcgb3IgJ25ldycgbGluZXMgaW4gdGhlICIKKyJkaWZmIgorbXNnc3RyICIiCisiZGlmZid0ZWtpIGJvxZ9sdWsgaGF0YWxhcsSxbsSxICdjb250ZXh0JywgJ29sZCcgdmV5YSAnbmV3JyBzYXTEsXJsYXLEsW5kYSB2dXJndWxhIgorCisjOiBkaWZmLmM6NTM0MgorbXNnaWQgIiIKKyJkbyBub3QgbXVuZ2UgcGF0aG5hbWVzIGFuZCB1c2UgTlVMcyBhcyBvdXRwdXQgZmllbGQgdGVybWluYXRvcnMgaW4gLS1yYXcgb3IgIgorIi0tbnVtc3RhdCIKK21zZ3N0ciAiIgorIi0tcmF3IHZleWEgLS1udW1zdGF0IGnDp2luZGUgeW9sIGFkbGFyxLFuxLEgdGFocmlwIGV0bWUgdmUgw6fEsWt0xLEgYWxhbsSxICIKKyJzb25sYW5kxLFyxLFjxLFsYXLEsSBvbGFyYWsgTlVMJ2xhcsSxIGt1bGxhbiIKKworIzogZGlmZi5jOjUzNDUgZGlmZi5jOjUzNDggZGlmZi5jOjUzNTEgZGlmZi5jOjU0NTcKK21zZ2lkICI8cHJlZml4PiIKK21zZ3N0ciAiPMO2bmVrPiIKKworIzogZGlmZi5jOjUzNDYKK21zZ2lkICJzaG93IHRoZSBnaXZlbiBzb3VyY2UgcHJlZml4IGluc3RlYWQgb2YgXCJhL1wiIgorbXNnc3RyICJcImEvXCIgeWVyaW5lIHZlcmlsbWnFnyBrYXluYWsgw7ZuZWtpbmkgZ8O2c3RlciIKKworIzogZGlmZi5jOjUzNDkKK21zZ2lkICJzaG93IHRoZSBnaXZlbiBkZXN0aW5hdGlvbiBwcmVmaXggaW5zdGVhZCBvZiBcImIvXCIiCittc2dzdHIgIlwiYi9cInllcmluZSB2ZXJpbG1pxZ8ga2F5bmFrIMO2bmVraW5pIGfDtnN0ZXIiCisKKyM6IGRpZmYuYzo1MzUyCittc2dpZCAicHJlcGVuZCBhbiBhZGRpdGlvbmFsIHByZWZpeCB0byBldmVyeSBsaW5lIG9mIG91dHB1dCIKK21zZ3N0ciAiw6fEsWt0xLFuxLFuIGhlciBzYXTEsXLEsW7EsW4gYmHFn8SxbmEgZWsgYmlyIMO2bmVrIGVrbGUiCisKKyM6IGRpZmYuYzo1MzU1Cittc2dpZCAiZG8gbm90IHNob3cgYW55IHNvdXJjZSBvciBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgImhpw6diaXIga2F5bmFrIHZlIGhlZGVmIMO2bmVraW5pIGfDtnN0ZXJtZSIKKworIzogZGlmZi5jOjUzNTgKK21zZ2lkICJzaG93IGNvbnRleHQgYmV0d2VlbiBkaWZmIGh1bmtzIHVwIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGxpbmVzIgorbXNnc3RyICJkaWZmIHBhcsOnYWxhcsSxIGFyYXPEsW5kYWtpIGJhxJ9sYW3EsSBiZWxpcnRpbGVuIHNhdMSxciBzYXnEsXPEsSBrYWRhciBnw7ZzdGVyIgorCisjOiBkaWZmLmM6NTM2MiBkaWZmLmM6NTM2NyBkaWZmLmM6NTM3MgorbXNnaWQgIjxjaGFyPiIKK21zZ3N0ciAiPGthcmFrdGVyPiIKKworIzogZGlmZi5jOjUzNjMKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBuZXcgbGluZSBpbnN0ZWFkIG9mICcrJyIKK21zZ3N0ciAieWVuaSBzYXTEsXLEsSBiZWxpcnRtZWsgacOnaW4gJysnIHllcmluZSBrdWxsYW7EsWxhY2FrIGthcmFrdGVyaSBiZWxpcmxlIgorCisjOiBkaWZmLmM6NTM2OAorbXNnaWQgInNwZWNpZnkgdGhlIGNoYXJhY3RlciB0byBpbmRpY2F0ZSBhbiBvbGQgbGluZSBpbnN0ZWFkIG9mICctJyIKK21zZ3N0ciAiZXNraSBzYXTEsXLEsSBiZWxpcnRtZWsgacOnaW4gJy0nIHllcmluZSBrdWxsYW7EsWxhY2FrIGthcmFrdGVyaSBiZWxpcmxlIgorCisjOiBkaWZmLmM6NTM3MworbXNnaWQgInNwZWNpZnkgdGhlIGNoYXJhY3RlciB0byBpbmRpY2F0ZSBhIGNvbnRleHQgaW5zdGVhZCBvZiAnICciCittc2dzdHIgImJhxJ9sYW0gYmVsaXJ0bWVrIGnDp2luICcgJyB5ZXJpbmUga3VsbGFuxLFsYWNhayBrYXJha3RlcmkgYmVsaXJsZSIKKworIzogZGlmZi5jOjUzNzYKK21zZ2lkICJEaWZmIHJlbmFtZSBvcHRpb25zIgorbXNnc3RyICJEaWZmIHllbmlkZW4gYWRsYW5kxLFybWEgc2XDp2VuZWtsZXJpIgorCisjOiBkaWZmLmM6NTM3NworbXNnaWQgIjxuPlsvPG0+XSIKK21zZ3N0ciAiPG4+Wy88bT5dIgorCisjOiBkaWZmLmM6NTM3OAorbXNnaWQgImJyZWFrIGNvbXBsZXRlIHJld3JpdGUgY2hhbmdlcyBpbnRvIHBhaXJzIG9mIGRlbGV0ZSBhbmQgY3JlYXRlIgorbXNnc3RyICJ0YW0geWVuaWRlbiB5YXrEsW0gZGXEn2nFn2lrbGlrbGVyaW5pIHNpbG1lIHZlIG9sdcWfdHVybWEgb2xhcmFrIGF5xLFyIgorCisjOiBkaWZmLmM6NTM4MgorbXNnaWQgImRldGVjdCByZW5hbWVzIgorbXNnc3RyICJ5ZW5pZGVuIGFkbGFuZMSxcm1hbGFyxLEgYWxnxLFsYSIKKworIzogZGlmZi5jOjUzODYKK21zZ2lkICJvbWl0IHRoZSBwcmVpbWFnZSBmb3IgZGVsZXRlcyIKK21zZ3N0ciAic2lsbWVsZXIgacOnaW4gw7ZuZ8O2csO8bnTDvHnDvCBhdGxhIgorCisjOiBkaWZmLmM6NTM4OQorbXNnaWQgImRldGVjdCBjb3BpZXMiCittc2dzdHIgImtvcHlhbGFyxLEgYWxnxLFsYSIKKworIzogZGlmZi5jOjUzOTMKK21zZ2lkICJ1c2UgdW5tb2RpZmllZCBmaWxlcyBhcyBzb3VyY2UgdG8gZmluZCBjb3BpZXMiCittc2dzdHIgImRlxJ9pxZ90aXJpbG1lbWnFnyBkb3N5YWxhcsSxIGtvcHlhbGFyxLEgYnVsbWFrIGnDp2luIGtheW5hayBvbGFyYWsga3VsbGFuIgorCisjOiBkaWZmLmM6NTM5NQorbXNnaWQgImRpc2FibGUgcmVuYW1lIGRldGVjdGlvbiIKK21zZ3N0ciAieWVuaWRlbiBhZGxhbmTEsXJtYSBhbGfEsWxhbWFzxLFuxLEgZGV2cmUgZMSxxZ/EsSBixLFyYWsiCisKKyM6IGRpZmYuYzo1Mzk4Cittc2dpZCAidXNlIGVtcHR5IGJsb2JzIGFzIHJlbmFtZSBzb3VyY2UiCittc2dzdHIgImJvxZ8gaWtpbGkgbmVzbmVsZXJpIHllbmlkZW4gYWRsYW5kxLFybWEga2F5bmHEn8SxIG9sYXJhayBrdWxsYW4iCisKKyM6IGRpZmYuYzo1NDAwCittc2dpZCAiY29udGludWUgbGlzdGluZyB0aGUgaGlzdG9yeSBvZiBhIGZpbGUgYmV5b25kIHJlbmFtZXMiCittc2dzdHIgIiIKKyJiaXIgZG9zeWFuxLFuIGdlw6dtacWfaW5pIGxpc3RlbGVtZXlpIHllbmlkZW4gYWRsYW5kxLFybWFsYXLEsW4gw7Z0ZXNpbmRlIHPDvHJkw7xyIgorCisjOiBkaWZmLmM6NTQwMworbXNnaWQgIiIKKyJwcmV2ZW50IHJlbmFtZS9jb3B5IGRldGVjdGlvbiBpZiB0aGUgbnVtYmVyIG9mIHJlbmFtZS9jb3B5IHRhcmdldHMgZXhjZWVkcyAiCisiZ2l2ZW4gbGltaXQiCittc2dzdHIgIiIKKyJlxJ9lciB5ZW5pZGVuIGFkbGFuZMSxcm1hL2tvcHlhbGFtYSBoZWRlZmxlcmluaW4gc2F5xLFzxLEgdmVyaWxlbiBzxLFuxLFyxLEgYcWfYXJzYSAiCisieWVuaWRlbiBhZGxhbmTEsXJtYS9rb3B5YWxhbWEgYWxnxLFsYW1hc8SxbsSxIMO2bmxlIgorCisjOiBkaWZmLmM6NTQwNQorbXNnaWQgIkRpZmYgYWxnb3JpdGhtIG9wdGlvbnMiCittc2dzdHIgIkRpZmYgYWxnb3JpdG1hIHNlw6dlbmVrbGVyaSIKKworIzogZGlmZi5jOjU0MDcKK21zZ2lkICJwcm9kdWNlIHRoZSBzbWFsbGVzdCBwb3NzaWJsZSBkaWZmIgorbXNnc3RyICJvbGFiaWxlY2VrIGVuIGvDvMOnw7xrIGRpZmYnaSDDvHJldCIKKworIzogZGlmZi5jOjU0MTAKK21zZ2lkICJpZ25vcmUgd2hpdGVzcGFjZSB3aGVuIGNvbXBhcmluZyBsaW5lcyIKK21zZ3N0ciAic2F0xLFybGFyxLEga2FyxZ/EsWxhxZ90xLFyxLFya2VuIGJvxZ9sdWtsYXLEsSB5b2sgc2F5IgorCisjOiBkaWZmLmM6NTQxMworbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIGFtb3VudCBvZiB3aGl0ZXNwYWNlIgorbXNnc3RyICJib8WfbHVrIHNhecSxc8SxbmRha2kgZGXEn2nFn2lrbGlrbGVyaSB5b2sgc2F5IgorCisjOiBkaWZmLmM6NTQxNgorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIHdoaXRlc3BhY2UgYXQgRU9MIgorbXNnc3RyICJzYXTEsXIgc29udW5kYWtpIGJvxZ9sdWsgZGXEn2nFn2lrbGlrbGVyaW5pIHlvayBzYXkiCisKKyM6IGRpZmYuYzo1NDE5Cittc2dpZCAiaWdub3JlIGNhcnJpZXItcmV0dXJuIGF0IHRoZSBlbmQgb2YgbGluZSIKK21zZ3N0ciAic2F0xLFyIHNvbnVuZGFraSBzYXTEsXJiYcWfxLEga2FyYWt0ZXJpbmkgeW9rIHNheSIKKworIzogZGlmZi5jOjU0MjIKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyB3aG9zZSBsaW5lcyBhcmUgYWxsIGJsYW5rIgorbXNnc3RyICJzYXTEsXJsYXLEsW7EsW4gdMO8bcO8IGJvxZ8gb2xhbiBkZcSfacWfaWtsaWtsZXJpIHlvayBzYXkiCisKKyM6IGRpZmYuYzo1NDI1Cittc2dpZCAiaGV1cmlzdGljIHRvIHNoaWZ0IGRpZmYgaHVuayBib3VuZGFyaWVzIGZvciBlYXN5IHJlYWRpbmciCittc2dzdHIgImRpZmYgcGFyw6dhIHPEsW7EsXJsYXLEsW7EsSBrb2xheSBva3VtYSBpw6dpbiBidWxndXNhbCBvbGFyYWsga2F5ZMSxciIKKworIzogZGlmZi5jOjU0MjgKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcInBhdGllbmNlIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgImRpZmYnaSBcInBhdGllbmNlIGRpZmZcIiBhbGdvcml0bWFzxLFuxLEga3VsbGFuYXJhayBvbHXFn3R1ciIKKworIzogZGlmZi5jOjU0MzIKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcImhpc3RvZ3JhbSBkaWZmXCIgYWxnb3JpdGhtIgorbXNnc3RyICJkaWZmJ2kgXCJoaXN0b2dyYW0gZGlmZlwiIGFsZ29yaXRtYXPEsW7EsSBrdWxsYW5hcmFrIG9sdcWfdHVyIgorCisjOiBkaWZmLmM6NTQzNAorbXNnaWQgIjxhbGdvcml0aG0+IgorbXNnc3RyICI8YWxnb3JpdG1hPiIKKworIzogZGlmZi5jOjU0MzUKK21zZ2lkICJjaG9vc2UgYSBkaWZmIGFsZ29yaXRobSIKK21zZ3N0ciAiYmlyIGRpZmYgYWxnb3JpdG1hc8SxIHNlw6ciCisKKyM6IGRpZmYuYzo1NDM3Cittc2dpZCAiPHRleHQ+IgorbXNnc3RyICI8bWV0aW4+IgorCisjOiBkaWZmLmM6NTQzOAorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwiYW5jaG9yZWQgZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAiZGlmZidpIFwiYW5jaG9yZWQgZGlmZlwiIGFsZ29yaXRtYXPEsW7EsSBrdWxsYW5hcmFrIG9sdcWfdHVyIgorCisjOiBkaWZmLmM6NTQ0MCBkaWZmLmM6NTQ0OSBkaWZmLmM6NTQ1MgorbXNnaWQgIjxtb2RlPiIKK21zZ3N0ciAiPGtpcD4iCisKKyM6IGRpZmYuYzo1NDQxCittc2dpZCAic2hvdyB3b3JkIGRpZmYsIHVzaW5nIDxtb2RlPiB0byBkZWxpbWl0IGNoYW5nZWQgd29yZHMiCittc2dzdHIgIiIKKyJzw7Z6Y8O8ayBkaWZmJ2luaSBkZcSfacWfdGlyaWxlbiBzw7Z6Y8O8a2xlcmkgc8SxbsSxcmxhbmTEsXJtYWsgacOnaW4gPGtpcD4ga3VsbGFuYXJhayAiCisiZ8O2c3RlciIKKworIzogZGlmZi5jOjU0NDMgZGlmZi5jOjU0NDYgZGlmZi5jOjU0OTEKK21zZ2lkICI8cmVnZXg+IgorbXNnc3RyICI8aWZhZGU+IgorCisjOiBkaWZmLmM6NTQ0NAorbXNnaWQgInVzZSA8cmVnZXg+IHRvIGRlY2lkZSB3aGF0IGEgd29yZCBpcyIKK21zZ3N0ciAiYmlyIHPDtnpjw7zEn8O8biBuZSBvbGR1xJ91bmEga2FyYXIgdmVybWVrIGnDp2luIDxpZmFkZT4ga3VsbGFuIgorCisjOiBkaWZmLmM6NTQ0NworbXNnaWQgImVxdWl2YWxlbnQgdG8gLS13b3JkLWRpZmY9Y29sb3IgLS13b3JkLWRpZmYtcmVnZXg9PHJlZ2V4PiIKK21zZ3N0ciAixZ91bmEgZcWfZGXEn2VyOiAtLXdvcmQtZGlmZj1jb2xvciAtLXdvcmQtZGlmZi1yZWdleD08aWZhZGU+IgorCisjOiBkaWZmLmM6NTQ1MAorbXNnaWQgIm1vdmVkIGxpbmVzIG9mIGNvZGUgYXJlIGNvbG9yZWQgZGlmZmVyZW50bHkiCittc2dzdHIgInRhxZ/EsW5hbiBrb2Qgc2F0xLFybGFyxLEgZmFya2zEsSByZW5rbGVuZGlyaWxpciIKKworIzogZGlmZi5jOjU0NTMKK21zZ2lkICJob3cgd2hpdGUgc3BhY2VzIGFyZSBpZ25vcmVkIGluIC0tY29sb3ItbW92ZWQiCittc2dzdHIgImJvxZ9sdWtsYXIgLS1jb2xvci1tb3ZlZCBpw6dpbmRlIG5hc8SxbCB5b2sgc2F5xLFsxLFyIgorCisjOiBkaWZmLmM6NTQ1NgorbXNnaWQgIk90aGVyIGRpZmYgb3B0aW9ucyIKK21zZ3N0ciAiRGnEn2VyIGRpZmYgc2XDp2VuZWtsZXJpIgorCisjOiBkaWZmLmM6NTQ1OAorbXNnaWQgIndoZW4gcnVuIGZyb20gc3ViZGlyLCBleGNsdWRlIGNoYW5nZXMgb3V0c2lkZSBhbmQgc2hvdyByZWxhdGl2ZSBwYXRocyIKK21zZ3N0ciAiIgorImFsdGRpemluZGVuIMOnYWzEscWfdMSxcsSxbGTEscSfxLFuZGEgZMSxxZ9hcsSxZGFraSBkZcSfacWfaWtsaWtsZXJpIGhhcmnDpyB0dXQgdmUgIgorImfDtnJlY2VsaSB5b2xsYXLEsSBnw7ZzdGVyIgorCisjOiBkaWZmLmM6NTQ2MgorbXNnaWQgInRyZWF0IGFsbCBmaWxlcyBhcyB0ZXh0IgorbXNnc3RyICJ0w7xtIGRvc3lhbGFyxLEgbWV0aW4gb2xhcmFrIHZhcnNheSIKKworIzogZGlmZi5jOjU0NjQKK21zZ2lkICJzd2FwIHR3byBpbnB1dHMsIHJldmVyc2UgdGhlIGRpZmYiCittc2dzdHIgImlraSBnaXJkaXlpIGRlxJ9pxZ90aXIsIGRpZmYnaSB0ZXJzaW5lIGTDtm5kw7xyIgorCisjOiBkaWZmLmM6NTQ2NgorbXNnaWQgImV4aXQgd2l0aCAxIGlmIHRoZXJlIHdlcmUgZGlmZmVyZW5jZXMsIDAgb3RoZXJ3aXNlIgorbXNnc3RyICJheXLEsW1sYXIgdmFyc2EgMSBpbGUsIHlva3NhIDAgaWxlIMOnxLFrIgorCisjOiBkaWZmLmM6NTQ2OAorbXNnaWQgImRpc2FibGUgYWxsIG91dHB1dCBvZiB0aGUgcHJvZ3JhbSIKK21zZ3N0ciAidMO8bSBwcm9ncmFtIMOnxLFrdMSxc8SxbsSxIGRldnJlIGTEscWfxLEgYsSxcmFrIgorCisjOiBkaWZmLmM6NTQ3MAorbXNnaWQgImFsbG93IGFuIGV4dGVybmFsIGRpZmYgaGVscGVyIHRvIGJlIGV4ZWN1dGVkIgorbXNnc3RyICJiaXIgZMSxxZ8gZGlmZiB5YXJkxLFtY8Sxc8SxbsSxbiDDp2FsxLHFn3TEsXLEsWxtYXPEsW5hIGl6aW4gdmVyIgorCisjOiBkaWZmLmM6NTQ3MgorbXNnaWQgInJ1biBleHRlcm5hbCB0ZXh0IGNvbnZlcnNpb24gZmlsdGVycyB3aGVuIGNvbXBhcmluZyBiaW5hcnkgZmlsZXMiCittc2dzdHIgIiIKKyJpa2lsaSBkb3N5YWxhcsSxIGthcsWfxLFsYcWfdMSxcsSxcmtlbiBkxLHFnyBtZXRpbiBkw7Zuw7zFn3TDvHJtZSBzw7x6Z2XDp2xlcmluaSDDp2FsxLHFn3TEsXIiCisKKyM6IGRpZmYuYzo1NDc0Cittc2dpZCAiPHdoZW4+IgorbXNnc3RyICI8bmUtemFtYW4+IgorCisjOiBkaWZmLmM6NTQ3NQorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIHRvIHN1Ym1vZHVsZXMgaW4gdGhlIGRpZmYgZ2VuZXJhdGlvbiIKK21zZ3N0ciAiZGlmZiBvbHXFn3R1cnVya2VuIGFsdG1vZMO8bGxlcmUgb2xhbiBkZcSfacWfaWtsaWtsZXJpIHlvayBzYXkiCisKKyM6IGRpZmYuYzo1NDc4Cittc2dpZCAiPGZvcm1hdD4iCittc2dzdHIgIjxiacOnaW0+IgorCisjOiBkaWZmLmM6NTQ3OQorbXNnaWQgInNwZWNpZnkgaG93IGRpZmZlcmVuY2VzIGluIHN1Ym1vZHVsZXMgYXJlIHNob3duIgorbXNnc3RyICJhbHRtb2TDvGxsZXJkZWtpIGRlxJ9pxZ9pa2xpa2xlcmluIG5hc8SxbCBnw7ZzdGVyaWxlY2XEn2luaSBiZWxpcnQiCisKKyM6IGRpZmYuYzo1NDgzCittc2dpZCAiaGlkZSAnZ2l0IGFkZCAtTicgZW50cmllcyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAiaW5kZWtzdGVuICdnaXQgYWRkIC1OJyBnaXJkaWxlcmluaSBnaXpsZSIKKworIzogZGlmZi5jOjU0ODYKK21zZ2lkICJ0cmVhdCAnZ2l0IGFkZCAtTicgZW50cmllcyBhcyByZWFsIGluIHRoZSBpbmRleCIKK21zZ3N0ciAiaW5kZWtzdGUgJ2dpdCBhZGQgLU4nIGdpcmRpbGVyaW5lIGdlcsOnZWttacWfIGdpYmkgZGF2cmFuIgorCisjOiBkaWZmLmM6NTQ4OAorbXNnaWQgIjxzdHJpbmc+IgorbXNnc3RyICI8ZGl6aT4iCisKKyM6IGRpZmYuYzo1NDg5Cittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisic3RyaW5nIgorbXNnc3RyICJiZWxpcnRpbGVuIGRpemluaW4gZ8O2csO8bG1lIHNhecSxc8SxbsSxIGRlxJ9pxZ90aXJlbiBheXLEsW1sYXJhIGJhayIKKworIzogZGlmZi5jOjU0OTIKK21zZ2lkICIiCisibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkICIKKyJyZWdleCIKK21zZ3N0ciAiYmVsaXJ0aWxlbiBkw7x6ZW5saSBpZmFkZW5pbiBnw7Zyw7xsbWUgc2F5xLFzxLFuxLEgZGXEn2nFn3RpcmVuIGF5csSxbWxhcmEgYmFrIgorCisjOiBkaWZmLmM6NTQ5NQorbXNnaWQgInNob3cgYWxsIGNoYW5nZXMgaW4gdGhlIGNoYW5nZXNldCB3aXRoIC1TIG9yIC1HIgorbXNnc3RyICJkZcSfacWfaWtsaWsgc2V0aW5kZSAtUyB2ZXlhIC1HIGnDp2VyZW4gdMO8bSBkZcSfacWfaWtsaWtsZXJpIGfDtnN0ZXIiCisKKyM6IGRpZmYuYzo1NDk4Cittc2dpZCAidHJlYXQgPHN0cmluZz4gaW4gLVMgYXMgZXh0ZW5kZWQgUE9TSVggcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICItUyBpw6dpbmRla2kgPGRpemk+J3lpIGdlbmnFn2xldGlsbWnFnyBQT1NJWCBkw7x6ZW5saSBpZmFkZXNpIG9sYXJhayBpxZ9sZSIKKworIzogZGlmZi5jOjU1MDEKK21zZ2lkICJjb250cm9sIHRoZSBvcmRlciBpbiB3aGljaCBmaWxlcyBhcHBlYXIgaW4gdGhlIG91dHB1dCIKK21zZ3N0ciAiZG9zeWFsYXLEsW4gw6fEsWt0xLFkYSBoYW5naSBzxLFyYXlsYSBnw7Zyw7xuZWNlxJ9pbmkgZGVuZXRsZSIKKworIzogZGlmZi5jOjU1MDIKK21zZ2lkICI8b2JqZWN0LWlkPiIKK21zZ3N0ciAiPG5lc25lLW5vPiIKKworIzogZGlmZi5jOjU1MDMKK21zZ2lkICIiCisibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkICIKKyJvYmplY3QiCittc2dzdHIgImJlbGlydGlsZW4gbmVzbmVuaW4gZ8O2csO8bG1lIHNhecSxc8SxbsSxIGRlxJ9pxZ90aXJlbiBheXLEsW1sYXJhIGJhayIKKworIzogZGlmZi5jOjU1MDUKK21zZ2lkICJbKEF8Q3xEfE18UnxUfFV8WHxCKS4uLlsqXV0iCittc2dzdHIgIlsoQXxDfER8TXxSfFR8VXxYfEIpLi4uWypdXSIKKworIzogZGlmZi5jOjU1MDYKK21zZ2lkICJzZWxlY3QgZmlsZXMgYnkgZGlmZiB0eXBlIgorbXNnc3RyICJkb3N5YWxhcsSxIGRpZmYgdMO8csO8bmUgZ8O2cmUgc2XDpyIKKworIzogZGlmZi5jOjU1MDgKK21zZ2lkICI8ZmlsZT4iCittc2dzdHIgIjxkb3N5YT4iCisKKyM6IGRpZmYuYzo1NTA5Cittc2dpZCAiT3V0cHV0IHRvIGEgc3BlY2lmaWMgZmlsZSIKK21zZ3N0ciAiYmVsaXJsaSBiaXIgZG9zeWF5YSDDp8Sxa3TEsSB2ZXIiCisKKyM6IGRpZmYuYzo2MTY0Cittc2dpZCAiaW5leGFjdCByZW5hbWUgZGV0ZWN0aW9uIHdhcyBza2lwcGVkIGR1ZSB0byB0b28gbWFueSBmaWxlcy4iCittc2dzdHIgIiIKKyJLZXNpbiBvbG1heWFuIHllbmlkZW4gYWRsYW5kxLFybWEgYWxnxLFsYW1hc8SxIMOnb2sgZmF6bGEgZG9zeWEgb2xtYXPEsW5kYW4gIgorImRvbGF5xLEgYXRsYW5kxLEuIgorCisjOiBkaWZmLmM6NjE2NworbXNnaWQgIm9ubHkgZm91bmQgY29waWVzIGZyb20gbW9kaWZpZWQgcGF0aHMgZHVlIHRvIHRvbyBtYW55IGZpbGVzLiIKK21zZ3N0ciAiIgorIsOHb2sgZmF6bGEgZG9zeWEgb2xtYXPEsW5kYW4gZG9sYXnEsSB5YWxuxLF6Y2EgZGXEn2nFn3RpcmlsZW4geW9sbGFyZGFuIGtvcHlhbGFyICIKKyJidWx1bmR1LiIKKworIzogZGlmZi5jOjYxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInlvdSBtYXkgd2FudCB0byBzZXQgeW91ciAlcyB2YXJpYWJsZSB0byBhdCBsZWFzdCAlZCBhbmQgcmV0cnkgdGhlIGNvbW1hbmQuIgorbXNnc3RyICIiCisiJXMgZGXEn2nFn2tlbmluaXppIGVuIGF6xLFuZGFuICVkIG9sYXJhayBheWFybGFtYWsgdmUga29tdXR1IHllbmlkZW4gZGVuZW1layAiCisiaXN0ZXllYmlsaXJzaW5pei4iCisKKyM6IGRpci5jOjU1NQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoc3BlYyAnJXMnIGRpZCBub3QgbWF0Y2ggYW55IGZpbGUocykga25vd24gdG8gZ2l0IgorbXNnc3RyICJ5b2wgYmVsaXJ0ZWNpICclcycgZ2l0J2luIHRhbsSxZMSxxJ/EsSBoZXJoYW5naSBiaXIgZG9zeWEgaWxlIGXFn2xlxZ9tZWRpIgorCisjOiBkaXIuYzo2OTUgZGlyLmM6NzI0IGRpci5jOjczNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgcGF0dGVybjogJyVzJyIKK21zZ3N0ciAidGFuxLFtbGFuYW1heWFuIGRpemdpOiAnJXMnIgorCisjOiBkaXIuYzo3NTQgZGlyLmM6NzY4CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBuZWdhdGl2ZSBwYXR0ZXJuOiAnJXMnIgorbXNnc3RyICJ0YW7EsW1sYW5hbWF5YW4gbmVnYXRpZiBkaXpnaTogJyVzJyIKKworIzogZGlyLmM6Nzg2CisjLCBjLWZvcm1hdAorbXNnaWQgInlvdXIgc3BhcnNlLWNoZWNrb3V0IGZpbGUgbWF5IGhhdmUgaXNzdWVzOiBwYXR0ZXJuICclcycgaXMgcmVwZWF0ZWQiCittc2dzdHIgInNwYXJzZS1jaGVja291dCBkb3N5YW7EsXrEsW4gc29ydW5sYXLEsSBvbGFiaWxpcjogJyVzJyBkaXpnaXNpIHlpbmVsZW5tacWfIgorCisjOiBkaXIuYzo3OTYKK21zZ2lkICJkaXNhYmxpbmcgY29uZSBwYXR0ZXJuIG1hdGNoaW5nIgorbXNnc3RyICJrb25pIGRpemdpIGXFn2xlxZ9tZXNpIGRldnJlIGTEscWfxLEgYsSxcmFrxLFsxLF5b3IiCisKKyM6IGRpci5jOjExNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHVzZSAlcyBhcyBhbiBleGNsdWRlIGZpbGUiCittc2dzdHIgIiVzIGJpciAnZXhjbHVkZScgZG9zeWFzxLEgb2xhcmFrIGt1bGxhbsSxbGFtxLF5b3IiCisKKyM6IGRpci5jOjIxNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiclcycgZGl6aW5pIGHDp8SxbGFtYWTEsSIKKworIzogZGlyLmM6MjQ3OQorbXNnaWQgImZhaWxlZCB0byBnZXQga2VybmVsIG5hbWUgYW5kIGluZm9ybWF0aW9uIgorbXNnc3RyICLDp2VraXJkZWsgYWTEsSB2ZSBiaWxnaXNpIGFsxLFuYW1hZMSxIgorCisjOiBkaXIuYzoyNjAzCittc2dpZCAidW50cmFja2VkIGNhY2hlIGlzIGRpc2FibGVkIG9uIHRoaXMgc3lzdGVtIG9yIGxvY2F0aW9uIgorbXNnc3RyICJpemxlbm1leWVuIMO2bmJlbGxlayBidSBzaXN0ZW1kZSB2ZXlhIGtvbnVtZGEgZGV2cmUgZMSxxZ/EsSBixLFyYWvEsWxtxLHFnyIKKworIzogZGlyLmM6MzQwNworIywgYy1mb3JtYXQKK21zZ2lkICJpbmRleCBmaWxlIGNvcnJ1cHQgaW4gcmVwbyAlcyIKK21zZ3N0ciAiJXMgZGVwb3N1bmRha2kgaW5kZWtzIGRvc3lhc8SxIGhhc2FybMSxIgorCisjOiBkaXIuYzozNDUyIGRpci5jOjM0NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcmllcyBmb3IgJXMiCittc2dzdHIgIiVzIGnDp2luIGRpemlubGVyIG9sdcWfdHVydWxhbWFkxLEiCisKKyM6IGRpci5jOjM0ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG1pZ3JhdGUgZ2l0IGRpcmVjdG9yeSBmcm9tICclcycgdG8gJyVzJyIKK21zZ3N0ciAiZ2l0IGRpemluaSAnJXMnIGtvbnVtdW5kYW4gJyVzJyBrb251bXVuYSBnw7bDpyBldHRpcmlsZW1lZGkiCisKKyM6IGVkaXRvci5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImhpbnQ6IFdhaXRpbmcgZm9yIHlvdXIgZWRpdG9yIHRvIGNsb3NlIHRoZSBmaWxlLi4uJWMiCittc2dzdHIgIsSwcHVjdTogRMO8emVubGV5aWNpbml6aW4gZG9zeWF5xLEga2FwYXRtYXPEsSBiZWtsZW5peW9yLi4uJWMiCisKKyM6IGVudHJ5LmM6MTc4Cittc2dpZCAiRmlsdGVyaW5nIGNvbnRlbnQiCittc2dzdHIgIsSww6dlcmlrIHPDvHrDvGzDvHlvciIKKworIzogZW50cnkuYzo0NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICInJXMnIGRvc3lhc8SxbsSxbiBiaWxnaWxlcmkgYWzEsW5hbWFkxLEiCisKKyM6IGVudmlyb25tZW50LmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBnaXQgbmFtZXNwYWNlIHBhdGggXCIlc1wiIgorbXNnc3RyICJoYXRhbMSxIGdpdCBhZCBhbGFuxLEgeW9sdSBcIiVzXCIiCisKKyM6IGVudmlyb25tZW50LmM6MzMxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzZXQgR0lUX0RJUiB0byAnJXMnIgorbXNnc3RyICJHSVRfRElSIMWfdW5hIGF5YXJsYW5hbWFkxLE6ICclcyciCisKKyM6IGV4ZWMtY21kLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IGFyZ3MgdG8gcnVuICVzIgorbXNnc3RyICIlcyDDp2FsxLHFn3TEsXJtYWsgacOnaW4gw6dvayBmYXpsYSBkZcSfacWfa2VuIgorCisjOiBmZXRjaC1wYWNrLmM6MTUwCittc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIHNoYWxsb3cgbGlzdCIKK21zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6IHPEscSfIGJpciBsaXN0ZSBiZWtsZW5peW9yZHUiCisKKyM6IGZldGNoLXBhY2suYzoxNTMKK21zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgYSBmbHVzaCBwYWNrZXQgYWZ0ZXIgc2hhbGxvdyBsaXN0IgorbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogc8SxxJ8gbGlzdGVkZW4gc29ucmEgZmxvxZ8gcGFrZXRpIGJla2xlbml5b3JkdSIKKworIzogZmV0Y2gtcGFjay5jOjE2NAorbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgYSBmbHVzaCBwYWNrZXQiCittc2dzdHIgImdpdCBmZXRjaC1wYWNrOiBBQ0svTkFLIGJla2xlbml5b3JkdSwgZmxvxZ8gcGFrZXQgYWzEsW5kxLEiCisKKyM6IGZldGNoLXBhY2suYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCAnJXMnIgorbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogQUNLL05BSyBiZWtsZW5peW9yZHUsICclcycgYWzEsW5kxLEiCisKKyM6IGZldGNoLXBhY2suYzoxOTUKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gcmVtb3RlIgorbXNnc3RyICJ1emFrIGtvbnVtYSB5YXrEsWxhbcSxeW9yIgorCisjOiBmZXRjaC1wYWNrLmM6MjU3Cittc2dpZCAiLS1zdGF0ZWxlc3MtcnBjIHJlcXVpcmVzIG11bHRpX2Fja19kZXRhaWxlZCIKK21zZ3N0ciAiLS1zdGF0ZWxlc3MtcnBjIG11bHRpX2Fja19kZXRhaWxlZCBnZXJla3Rpcml5b3IiCisKKyM6IGZldGNoLXBhY2suYzozNTYgZmV0Y2gtcGFjay5jOjEzNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzaGFsbG93IGxpbmU6ICVzIgorbXNnc3RyICJnZcOnZXJzaXogc8SxxJ8gc2F0xLFyOiAlcyIKKworIzogZmV0Y2gtcGFjay5jOjM2MiBmZXRjaC1wYWNrLmM6MTM0NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHVuc2hhbGxvdyBsaW5lOiAlcyIKK21zZ3N0ciAiZ2XDp2Vyc2l6IHPEscSfIG9sbWF5YW4gc2F0xLFyOiAlcyIKKworIzogZmV0Y2gtcGFjay5jOjM2NCBmZXRjaC1wYWNrLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3Qgbm90IGZvdW5kOiAlcyIKK21zZ3N0ciAibmVzbmUgYnVsdW5hbWFkxLE6ICVzIgorCisjOiBmZXRjaC1wYWNrLmM6MzY3IGZldGNoLXBhY2suYzoxMzUxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIG9iamVjdDogJXMiCittc2dzdHIgIm5lc25lIGnDp2luZGUgaGF0YTogJXMiCisKKyM6IGZldGNoLXBhY2suYzozNjkgZmV0Y2gtcGFjay5jOjEzNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc2hhbGxvdyBmb3VuZDogJXMiCittc2dzdHIgInPEscSfIGJ1bHVuYW1hZMSxOiAlcyIKKworIzogZmV0Y2gtcGFjay5jOjM3MiBmZXRjaC1wYWNrLmM6MTM1NworIywgYy1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBzaGFsbG93L3Vuc2hhbGxvdywgZ290ICVzIgorbXNnc3RyICJzxLHEny9zxLHEnyBvbG1heWFuIGJla2xlbml5b3JkdSwgJXMgYWzEsW5kxLEiCisKKyM6IGZldGNoLXBhY2suYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ290ICVzICVkICVzIgorbXNnc3RyICIlcyAlZCAlcyBhbMSxbmTEsSIKKworIzogZmV0Y2gtcGFjay5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdCAlcyIKK21zZ3N0ciAiZ2XDp2Vyc2l6IGfDtm5kZXJpICVzIgorCisjOiBmZXRjaC1wYWNrLmM6NDYyCittc2dpZCAiZ2l2aW5nIHVwIgorbXNnc3RyICJ2YXpnZcOnaWxpeW9yIgorCisjOiBmZXRjaC1wYWNrLmM6NDc1IHByb2dyZXNzLmM6MzIzCittc2dpZCAiZG9uZSIKK21zZ3N0ciAiYml0dGkiCisKKyM6IGZldGNoLXBhY2suYzo0ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ290ICVzICglZCkgJXMiCittc2dzdHIgIiVzICglZCkgJXMgYWzEsW5kxLEiCisKKyM6IGZldGNoLXBhY2suYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWFya2luZyAlcyBhcyBjb21wbGV0ZSIKK21zZ3N0ciAiJXMgdGFtYW0gb2xhcmFrIGltbGVuaXlvciIKKworIzogZmV0Y2gtcGFjay5jOjc1NAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHJlYWR5IGhhdmUgJXMgKCVzKSIKK21zZ3N0ciAiJXMgaGFsaWhhesSxcmRhIHZhciAoJXMpIgorCisjOiBmZXRjaC1wYWNrLmM6ODE4Cittc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCittc2dzdHIgImZldGNoLXBhY2s6IHlhbmJhbnQgw6dvxJ91bGxhbWEgw6fDtnrDvGPDvHPDvCBheXLEsSDDp2F0YWxsYW5hbcSxeW9yIgorCisjOiBmZXRjaC1wYWNrLmM6ODI2Cittc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBwYWNrIGhlYWRlciIKK21zZ3N0ciAicHJvdG9rb2wgaGF0YXPEsTogaGF0YWzEsSBwYWtldCDDvHN0YmlsZ2lzaSIKKworIzogZmV0Y2gtcGFjay5jOjkwMAorIywgYy1mb3JtYXQKK21zZ2lkICJmZXRjaC1wYWNrOiB1bmFibGUgdG8gZm9yayBvZmYgJXMiCittc2dzdHIgImZldGNoLXBhY2s6ICVzIGF5csSxIMOnYXRhbGxhbmFtxLF5b3IiCisKKyM6IGZldGNoLXBhY2suYzo5MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZmFpbGVkIgorbXNnc3RyICIlcyBiYcWfYXLEsXPEsXogb2xkdSIKKworIzogZmV0Y2gtcGFjay5jOjkxOAorbXNnaWQgImVycm9yIGluIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCittc2dzdHIgInlhbmJhbnQgw6dvxJ91bGxhbWEgw6fDtnrDvGPDvHPDvG5kZSBoYXRhIgorCisjOiBmZXRjaC1wYWNrLmM6OTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNlcnZlciB2ZXJzaW9uIGlzICUuKnMiCittc2dzdHIgIlN1bnVjdSBzw7xyw7xtw7wgJS4qcyIKKworIzogZmV0Y2gtcGFjay5jOjk3MCBmZXRjaC1wYWNrLmM6OTc2IGZldGNoLXBhY2suYzo5NzkgZmV0Y2gtcGFjay5jOjk4NQorIzogZmV0Y2gtcGFjay5jOjk4OSBmZXRjaC1wYWNrLmM6OTkzIGZldGNoLXBhY2suYzo5OTcgZmV0Y2gtcGFjay5jOjEwMDEKKyM6IGZldGNoLXBhY2suYzoxMDA1IGZldGNoLXBhY2suYzoxMDA5IGZldGNoLXBhY2suYzoxMDEzIGZldGNoLXBhY2suYzoxMDE3CisjOiBmZXRjaC1wYWNrLmM6MTAyMyBmZXRjaC1wYWNrLmM6MTAyOSBmZXRjaC1wYWNrLmM6MTAzNCBmZXRjaC1wYWNrLmM6MTAzOQorIywgYy1mb3JtYXQKK21zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgJXMiCittc2dzdHIgIlN1bnVjdSAlcyBkZXN0ZWtsaXlvciIKKworIzogZmV0Y2gtcGFjay5jOjk3MgorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2xpZW50cyIKK21zZ3N0ciAiU3VudWN1IHPEscSfIGlzdGVtY2lsZXJpIGRlc3Rla2xlbWl5b3IiCisKKyM6IGZldGNoLXBhY2suYzoxMDMyCittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1zaGFsbG93LXNpbmNlIgorbXNnc3RyICJTdW51Y3UgLS1zaGFsbG93LXNpbmNlIGRlc3Rla2xlbWl5b3IiCisKKyM6IGZldGNoLXBhY2suYzoxMDM3Cittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1zaGFsbG93LWV4Y2x1ZGUiCittc2dzdHIgIlN1bnVjdSAtLXNoYWxsb3ctZXhjbHVkZSBkZXN0ZWtsZW1peW9yIgorCisjOiBmZXRjaC1wYWNrLmM6MTA0MQorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tZGVlcGVuIgorbXNnc3RyICJTdW51Y3UgLS1kZWVwZW4gZGVzdGVrbGVtaXlvciIKKworIzogZmV0Y2gtcGFjay5jOjEwNTgKK21zZ2lkICJubyBjb21tb24gY29tbWl0cyIKK21zZ3N0ciAib3J0YWsgZ8O2bmRlcmkgeW9rIgorCisjOiBmZXRjaC1wYWNrLmM6MTA3MCBmZXRjaC1wYWNrLmM6MTUzNgorbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBmZXRjaCBmYWlsZWQuIgorbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogZ2V0aXJtZSBiYcWfYXLEsXPEsXoiCisKKyM6IGZldGNoLXBhY2suYzoxMjA5Cittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyByZXF1ZXN0cyIKK21zZ3N0ciAiU3VudWN1IHPEscSfIGlzdGVrbGVyaSBkZXN0ZWtsZW1peW9yIgorCisjOiBmZXRjaC1wYWNrLmM6MTIxNgorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBmaWx0ZXIiCittc2dzdHIgIlN1bnVjdSBzw7x6Z2XDpyBkZXN0ZWtsaXlvciIKKworIzogZmV0Y2gtcGFjay5jOjEyMzkKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcmVxdWVzdCB0byByZW1vdGUiCittc2dzdHIgInV6YWsga29udW1hIGlzdGVrIHlhesSxbGFtxLF5b3IiCisKKyM6IGZldGNoLXBhY2suYzoxMjU3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgc2VjdGlvbiBoZWFkZXIgJyVzJyIKK21zZ3N0ciAiYsO2bMO8bSDDvHN0YmlsZ2lzaSAnJXMnIG9rdW51cmtlbiBoYXRhIgorCisjOiBmZXRjaC1wYWNrLmM6MTI2MworIywgYy1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCAnJXMnLCByZWNlaXZlZCAnJXMnIgorbXNnc3RyICInJXMnIGJla2xlbml5b3JkdSwgJyVzJyBhbMSxbmTEsSIKKworIzogZmV0Y2gtcGFjay5jOjEzMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBhY2tub3dsZWRnbWVudCBsaW5lOiAnJXMnIgorbXNnc3RyICJiZWtsZW5tZWRpayBhbMSxbmTEsSBzYXTEsXLEsTogJyVzJyIKKworIzogZmV0Y2gtcGFjay5jOjEzMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBhY2tzOiAlZCIKK21zZ3N0ciAiYWzEsW5kxLFsYXIgacWfbGVuaXJrZW4gaGF0YTogJWQiCisKKyM6IGZldGNoLXBhY2suYzoxMzE4Cittc2dpZCAiZXhwZWN0ZWQgcGFja2ZpbGUgdG8gYmUgc2VudCBhZnRlciAncmVhZHknIgorbXNnc3RyICJwYWtldCBkb3N5YXPEsW7EsW4gJ3JlYWR5J2RlbiBzb25yYSBnw7ZuZGVyaWxtZXNpIGdlcmVraXlvcmR1IgorCisjOiBmZXRjaC1wYWNrLmM6MTMyMAorbXNnaWQgImV4cGVjdGVkIG5vIG90aGVyIHNlY3Rpb25zIHRvIGJlIHNlbnQgYWZ0ZXIgbm8gJ3JlYWR5JyIKK21zZ3N0ciAiJ3JlYWR5JyBcInlva1wiIGlrZW4gYmHFn2thIGhpw6diaXIgYsO2bMO8bcO8biBnw7ZuZGVyaWxtZW1lc2kgZ2VyZWtpeW9yZHUiCisKKyM6IGZldGNoLXBhY2suYzoxMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHByb2Nlc3Npbmcgc2hhbGxvdyBpbmZvOiAlZCIKK21zZ3N0ciAic8SxxJ8gYmlsZ2kgacWfbGVuaXJrZW4gaGF0YTogJWQiCisKKyM6IGZldGNoLXBhY2suYzoxNDA5CisjLCBjLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIHdhbnRlZC1yZWYsIGdvdCAnJXMnIgorbXNnc3RyICJ3YW50ZWQtcmVmIGJla2xlbml5b3JkdSwgJyVzJyBhbMSxbmTEsSIKKworIzogZmV0Y2gtcGFjay5jOjE0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCB3YW50ZWQtcmVmOiAnJXMnIgorbXNnc3RyICJiZWtsZW5tZWRpayB3YW50ZWQtcmVmOiAnJXMnIgorCisjOiBmZXRjaC1wYWNrLmM6MTQxOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBwcm9jZXNzaW5nIHdhbnRlZCByZWZzOiAlZCIKK21zZ3N0ciAiYXJhbmFuIGJhxZ92dXJ1bGFyIGnFn2xlbmlya2VuIGhhdGE6ICVkIgorCisjOiBmZXRjaC1wYWNrLmM6MTc2MgorbXNnaWQgIm5vIG1hdGNoaW5nIHJlbW90ZSBoZWFkIgorbXNnc3RyICJlxZ9sZcWfZW4gdXphayBkYWwgdWN1IHlvayIKKworIzogZmV0Y2gtcGFjay5jOjE3ODUgYnVpbHRpbi9jbG9uZS5jOjY4OQorbXNnaWQgInJlbW90ZSBkaWQgbm90IHNlbmQgYWxsIG5lY2Vzc2FyeSBvYmplY3RzIgorbXNnc3RyICJ1emFrIGtvbnVtIGdlcmVrZW4gdMO8bSBuZXNuZWxlcmkgZ8O2bmRlcm1lZGkiCisKKyM6IGZldGNoLXBhY2suYzoxODEyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggcmVtb3RlIHJlZiAlcyIKK21zZ3N0ciAiYsO2eWxlIGJpciB1emFrIGJhxZ92dXJ1IHlvazogJXMiCisKKyM6IGZldGNoLXBhY2suYzoxODE1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBhbGxvdyByZXF1ZXN0IGZvciB1bmFkdmVydGlzZWQgb2JqZWN0ICVzIgorbXNnc3RyICJTdW51Y3UgJXMgdGFuxLF0xLFsbWFtxLHFnyBuZXNuZXNpIGnDp2luIGlzdGXEn2UgaXppbiB2ZXJtaXlvciIKKworIzogZ3BnLWludGVyZmFjZS5jOjQwOAorbXNnaWQgImdwZyBmYWlsZWQgdG8gc2lnbiB0aGUgZGF0YSIKK21zZ3N0ciAiZ3BnIHZlcml5aSBpbXphbGF5YW1hZMSxIgorCisjOiBncGctaW50ZXJmYWNlLmM6NDM0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZSIKK21zZ3N0ciAiZ2XDp2ljaSBkb3N5YSBvbHXFn3R1cnVsYW1hZMSxIgorCisjOiBncGctaW50ZXJmYWNlLmM6NDM3CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB3cml0aW5nIGRldGFjaGVkIHNpZ25hdHVyZSB0byAnJXMnIgorbXNnc3RyICLFn3VuYSBheXLEsWsgaW16YSB5YXrEsWxhbWFkxLE6ICclcyciCisKKyM6IGdyYXBoLmM6OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JlIGludmFsaWQgY29sb3IgJyUuKnMnIGluIGxvZy5ncmFwaENvbG9ycyIKK21zZ3N0ciAibG9nLmdyYXBoQ29sb3JzIGnDp2luZGVraSAnJS4qcycgZ2XDp2Vyc2l6IHJlbmdpbmkgeW9rIHNheSIKKworIzogZ3JlcC5jOjY2OAorbXNnaWQgIiIKKyJnaXZlbiBwYXR0ZXJuIGNvbnRhaW5zIE5VTEwgYnl0ZSAodmlhIC1mIDxmaWxlPikuIFRoaXMgaXMgb25seSBzdXBwb3J0ZWQgIgorIndpdGggLVAgdW5kZXIgUENSRSB2MiIKK21zZ3N0ciAiIgorInZlcmlsZW4gZGl6Z2kgTlVMTCBiYXl0xLEgacOnZXJpeW9yICgtZiA8ZG9zeWE+IGlsZSkuIEJ1IHlhbG7EsXpjYSBQQ1JFIHYyICIKKyJhbHTEsW5kYSAtUCBpbGUgZGVzdGVrbGVuaXIiCisKKyM6IGdyZXAuYzoyMTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IHVuYWJsZSB0byByZWFkICVzIgorbXNnc3RyICInJXMnOiAlcyBva3VuYW3EsXlvciIKKworIzogZ3JlcC5jOjIxNDUgc2V0dXAuYzoxNjYgYnVpbHRpbi9jbG9uZS5jOjQxMSBidWlsdGluL2RpZmYuYzo4MgorIzogYnVpbHRpbi9ybS5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJXMnIgorbXNnc3RyICInJXMnIGRvc3lhc8SxbsSxbiBiaWxnaWxlcmkgYWzEsW5hbWFkxLEiCisKKyM6IGdyZXAuYzoyMTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IHNob3J0IHJlYWQiCittc2dzdHIgIiclcyc6IGvEsXNhIG9rdW1hIgorCisjOiBoZWxwLmM6MjMKK21zZ2lkICJzdGFydCBhIHdvcmtpbmcgYXJlYSAoc2VlIGFsc286IGdpdCBoZWxwIHR1dG9yaWFsKSIKK21zZ3N0ciAiYmlyIMOnYWzEscWfbWEgYWxhbsSxIGJhxZ9sYXTEsW4gKGF5csSxY2EgYmt6OiBnaXQgaGVscCB0dXRvcmlhbCkiCisKKyM6IGhlbHAuYzoyNAorbXNnaWQgIndvcmsgb24gdGhlIGN1cnJlbnQgY2hhbmdlIChzZWUgYWxzbzogZ2l0IGhlbHAgZXZlcnlkYXkpIgorbXNnc3RyICJnw7xuY2VsIGRlxJ9pxZ9pa2xpa2xlciDDvHplcmluZGUgw6dhbMSxxZ/EsW4gKGF5csSxY2EgYmt6OiBnaXQgaGVscCBldmVyeWRheSkiCisKKyM6IGhlbHAuYzoyNQorbXNnaWQgImV4YW1pbmUgdGhlIGhpc3RvcnkgYW5kIHN0YXRlIChzZWUgYWxzbzogZ2l0IGhlbHAgcmV2aXNpb25zKSIKK21zZ3N0ciAiZ2XDp21pxZ9pIHZlIGR1cnVtdSBnw7Z6ZGVuIGdlw6dpcmluIChheXLEsWNhIGJrejogZ2l0IGhlbHAgcmV2aXNpb25zKSIKKworIzogaGVscC5jOjI2Cittc2dpZCAiZ3JvdywgbWFyayBhbmQgdHdlYWsgeW91ciBjb21tb24gaGlzdG9yeSIKK21zZ3N0ciAib3J0YWsgZ2XDp21pxZ9pbml6aSBiw7x5w7x0w7xuLCBpbWxleWluIHZlIGdlbGnFn3RpcmluIgorCisjOiBoZWxwLmM6MjcKK21zZ2lkICJjb2xsYWJvcmF0ZSAoc2VlIGFsc286IGdpdCBoZWxwIHdvcmtmbG93cykiCittc2dzdHIgImJpcmxpa3RlIMOnYWzEscWfxLFuIChheXLEsWNhIGJrejogZ2l0IGhlbHAgd29ya2Zsb3dzKSIKKworIzogaGVscC5jOjMxCittc2dpZCAiTWFpbiBQb3JjZWxhaW4gQ29tbWFuZHMiCittc2dzdHIgIkFuYSBLb211dGxhciIKKworIzogaGVscC5jOjMyCittc2dpZCAiQW5jaWxsYXJ5IENvbW1hbmRzIC8gTWFuaXB1bGF0b3JzIgorbXNnc3RyICJZYW4gS29tdXRsYXIgLyBZw7ZubGVuZGlyaWNpbGVyIgorCisjOiBoZWxwLmM6MzMKK21zZ2lkICJBbmNpbGxhcnkgQ29tbWFuZHMgLyBJbnRlcnJvZ2F0b3JzIgorbXNnc3RyICJZYW4gS29tdXRsYXIgLyBTb3JndWN1bGFyIgorCisjOiBoZWxwLmM6MzQKK21zZ2lkICJJbnRlcmFjdGluZyB3aXRoIE90aGVycyIKK21zZ3N0ciAiQmHFn2thbGFyxLEgaWxlIEV0a2lsZcWfaW0iCisKKyM6IGhlbHAuYzozNQorbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIE1hbmlwdWxhdG9ycyIKK21zZ3N0ciAiRMO8xZ/DvGsgRMO8emV5bGkgS29tdXRsYXIgLyBZw7ZubGVuZGlyaWNpbGVyIgorCisjOiBoZWxwLmM6MzYKK21zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBJbnRlcnJvZ2F0b3JzIgorbXNnc3RyICJEw7zFn8O8ayBEw7x6ZXlsaSBLb211dGxhciAvIFNvcmd1Y3VsYXIiCisKKyM6IGhlbHAuYzozNworbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIFN5bmNpbmcgUmVwb3NpdG9yaWVzIgorbXNnc3RyICJEw7zFn8O8ayBEw7x6ZXlsaSBLb211dGxhciAvIERlcG8gRcWfaXRsZW1lIgorCisjOiBoZWxwLmM6MzgKK21zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBJbnRlcm5hbCBIZWxwZXJzIgorbXNnc3RyICJEw7zFn8O8ayBEw7x6ZXlsaSBLb211dGxhciAvIMSww6cgWWFyZMSxbWPEsWxhciIKKworIzogaGVscC5jOjI5OAorIywgYy1mb3JtYXQKK21zZ2lkICJhdmFpbGFibGUgZ2l0IGNvbW1hbmRzIGluICclcyciCittc2dzdHIgIiclcycgacOnaW5kZWtpIGt1bGxhbsSxbGFiaWxpciBnaXQga29tdXRsYXLEsSIKKworIzogaGVscC5jOjMwNQorbXNnaWQgImdpdCBjb21tYW5kcyBhdmFpbGFibGUgZnJvbSBlbHNld2hlcmUgb24geW91ciAkUEFUSCIKK21zZ3N0ciAiJFBBVEggacOnaW5kZWtpIGJhxZ9rYSB5ZXJsZXJkZW4ga3VsbGFuxLFsYWJpbGVuIGdpdCBrb211dGxhcsSxIgorCisjOiBoZWxwLmM6MzE0Cittc2dpZCAiVGhlc2UgYXJlIGNvbW1vbiBHaXQgY29tbWFuZHMgdXNlZCBpbiB2YXJpb3VzIHNpdHVhdGlvbnM6IgorbXNnc3RyICLDh2XFn2l0bGkgZHVydW1sYXJkYSBrdWxsYW7EsWxhbiB0ZW1lbCBHaXQga29tdXRsYXLEsSBhxZ9hxJ/EsWRhZMSxcjoiCisKKyM6IGhlbHAuYzozNjMgZ2l0LmM6OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5zdXBwb3J0ZWQgY29tbWFuZCBsaXN0aW5nIHR5cGUgJyVzJyIKK21zZ3N0ciAiZGVzdGVrbGVubWV5ZW4ga29tdXQgbGlzdGVsZW1lIHTDvHLDvCAnJXMnIgorCisjOiBoZWxwLmM6NDAzCittc2dpZCAiVGhlIGNvbW1vbiBHaXQgZ3VpZGVzIGFyZToiCittc2dzdHIgIllheWfEsW4gR2l0IGvEsWxhdnV6bGFyxLE6IgorCisjOiBoZWxwLmM6NTEyCittc2dpZCAiU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIHRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIgorbXNnc3RyICJCZWxpcmxpIGJpciBhbHRrb211dCDDvHplcmluZSBva3VtYWsgacOnaW4gJ2dpdCBoZWxwIDxrb211dD4nIGt1bGxhbsSxbiIKKworIzogaGVscC5jOjUxNworbXNnaWQgIkV4dGVybmFsIGNvbW1hbmRzIgorbXNnc3RyICJExLHFnyBrb211dGxhciIKKworIzogaGVscC5jOjUzMgorbXNnaWQgIkNvbW1hbmQgYWxpYXNlcyIKK21zZ3N0ciAiS29tdXQgYXJtYWxhcsSxIgorCisjOiBoZWxwLmM6NTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyInJXMnIGFwcGVhcnMgdG8gYmUgYSBnaXQgY29tbWFuZCwgYnV0IHdlIHdlcmUgbm90XG4iCisiYWJsZSB0byBleGVjdXRlIGl0LiBNYXliZSBnaXQtJXMgaXMgYnJva2VuPyIKK21zZ3N0ciAiIgorIiclcycgYmlyIGdpdCBrb211dHUgZ2liaSBnw7Zyw7xuw7x5b3IsIGFuY2FrIGJpeiBvbnVcbiIKKyLDp2FsxLHFn3TEsXJhbWFkxLFrLiBnaXQtJXMgYm96dWsgb2xhYmlsaXIgbWk/IgorCisjOiBoZWxwLmM6NjU1Cittc2dpZCAiVWggb2guIFlvdXIgc3lzdGVtIHJlcG9ydHMgbm8gR2l0IGNvbW1hbmRzIGF0IGFsbC4iCittc2dzdHIgIlTDvGguIFNpc3RlbWluaXogaGnDp2JpciBHaXQga29tdXR1bnUgYmlsZGlybWl5b3IuIgorCisjOiBoZWxwLmM6Njc3CisjLCBjLWZvcm1hdAorbXNnaWQgIldBUk5JTkc6IFlvdSBjYWxsZWQgYSBHaXQgY29tbWFuZCBuYW1lZCAnJXMnLCB3aGljaCBkb2VzIG5vdCBleGlzdC4iCittc2dzdHIgIiIKKyJVWUFSSTogJyVzJyBhZMSxbmRhIGJpciBHaXQga29tdXR1bnUgw6dhxJ/EsXJkxLFuxLF6LCBhbmNhayBiw7Z5bGUgYmlyIGtvbXV0IHlvay4iCisKKyM6IGhlbHAuYzo2ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29udGludWluZyB1bmRlciB0aGUgYXNzdW1wdGlvbiB0aGF0IHlvdSBtZWFudCAnJXMnLiIKK21zZ3N0ciAiJyVzJyBkZW1layBpc3RlZGnEn2luaXogdmFyc2F5xLFsYXJhayBzw7xyZMO8csO8bMO8eW9yLiIKKworIzogaGVscC5jOjY4NworIywgYy1mb3JtYXQKK21zZ2lkICJDb250aW51aW5nIGluICUwLjFmIHNlY29uZHMsIGFzc3VtaW5nIHRoYXQgeW91IG1lYW50ICclcycuIgorbXNnc3RyICIlMC4xZiBzYW5peWUgacOnaW5kZSBzw7xyZMO8csO8bMO8eW9yLCAnJXMnIGRlbWVrIGlzdGVkacSfaW5peiB2YXJzYXnEsWxhY2FrLiIKKworIzogaGVscC5jOjY5NQorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQ6ICclcycgaXMgbm90IGEgZ2l0IGNvbW1hbmQuIFNlZSAnZ2l0IC0taGVscCcuIgorbXNnc3RyICJnaXQ6ICclcycgYmlyIGdpdCBrb211dHUgZGXEn2lsLiBZYXJkxLFtIGnDp2luOiAnZ2l0IC0taGVscCcuIgorCisjOiBoZWxwLmM6Njk5Cittc2dpZCAiIgorIlxuIgorIlRoZSBtb3N0IHNpbWlsYXIgY29tbWFuZCBpcyIKK21zZ2lkX3BsdXJhbCAiIgorIlxuIgorIlRoZSBtb3N0IHNpbWlsYXIgY29tbWFuZHMgYXJlIgorbXNnc3RyWzBdICIiCisiXG4iCisiQnVuYSBlbiB5YWvEsW4ga29tdXQ6IgorbXNnc3RyWzFdICIiCisiXG4iCisiQnVuYSBlbiB5YWvEsW4ga29tdXRsYXI6IgorCisjOiBoZWxwLmM6NzE0Cittc2dpZCAiZ2l0IHZlcnNpb24gWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCB2ZXJzaW9uIFs8c2XDp2VuZWtsZXI+XSIKKworIzogaGVscC5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogJXMgLSAlcyIKK21zZ3N0ciAiJXM6ICVzIC0gJXMiCisKKyM6IGhlbHAuYzo3ODcKK21zZ2lkICIiCisiXG4iCisiRGlkIHlvdSBtZWFuIHRoaXM/IgorbXNnaWRfcGx1cmFsICIiCisiXG4iCisiRGlkIHlvdSBtZWFuIG9uZSBvZiB0aGVzZT8iCittc2dzdHJbMF0gIiIKKyJcbiIKKyLFnnVudSBtdSBkZW1layBpc3RlZGluaXo/IgorbXNnc3RyWzFdICIiCisiXG4iCisixZ51bmxhcmRhbiBiaXJpbmkgbWkgZGVtZWsgaXN0ZWRpbml6PyIKKworIzogaWRlbnQuYzozNDkKK21zZ2lkICIiCisiXG4iCisiKioqIFBsZWFzZSB0ZWxsIG1lIHdobyB5b3UgYXJlLlxuIgorIlxuIgorIlJ1blxuIgorIlxuIgorIiAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLmVtYWlsIFwieW91QGV4YW1wbGUuY29tXCJcbiIKKyIgIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5uYW1lIFwiWW91ciBOYW1lXCJcbiIKKyJcbiIKKyJ0byBzZXQgeW91ciBhY2NvdW50J3MgZGVmYXVsdCBpZGVudGl0eS5cbiIKKyJPbWl0IC0tZ2xvYmFsIHRvIHNldCB0aGUgaWRlbnRpdHkgb25seSBpbiB0aGlzIHJlcG9zaXRvcnkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyIqKiogTMO8dGZlbiBiYW5hIGtpbSBvbGR1xJ91bnV6dSBzw7Z5bGV5aW4uXG4iCisiXG4iCisiSGVzYWLEsW7EsXrEsW4gw7ZudGFuxLFtbMSxIGtpbWxpxJ9pbmkgYXlhcmxhbWFrIGnDp2luXG4iCisiXG4iCisiXHRnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIubmFtZSBcIkFkxLFuxLF6XCJcbiIKKyJcdGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5lbWFpbCBcInNpekBlLXBvc3RhLmNvbVwiXG4iCisiXG4iCisia29tdXRsYXLEsW7EsSDDp2FsxLHFn3TEsXLEsW4uXG4iCisiS2ltbGnEn2luaXppIHlhbG7EsXpjYSBidSBkZXBvIGnDp2luIGdlw6dlcmxpIGvEsWxtYWsgaXN0ZXJzZW5peiAtLWdsb2JhbFxuIgorImRlxJ9pxZ9rZW5pbmkga3VsbGFubWF5xLFuLlxuIgorIlxuIgorCisjOiBpZGVudC5jOjM3OQorbXNnaWQgIm5vIGVtYWlsIHdhcyBnaXZlbiBhbmQgYXV0by1kZXRlY3Rpb24gaXMgZGlzYWJsZWQiCittc2dzdHIgImJpciBlLXBvc3RhIHZlcmlsbWVkaSB2ZSBrZW5kaWxpxJ9pbmRlbiBhbGfEsWxhbWEgZGV2cmUgZMSxxZ/EsSIKKworIzogaWRlbnQuYzozODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGF1dG8tZGV0ZWN0IGVtYWlsIGFkZHJlc3MgKGdvdCAnJXMnKSIKK21zZ3N0ciAiZS1wb3N0YSBhZHJlc2kga2VuZGlsacSfaW5kZW4gYWxnxLFsYW5hbcSxeW9yICgnJXMnIGFsxLFuZMSxKSIKKworIzogaWRlbnQuYzo0MDEKK21zZ2lkICJubyBuYW1lIHdhcyBnaXZlbiBhbmQgYXV0by1kZXRlY3Rpb24gaXMgZGlzYWJsZWQiCittc2dzdHIgImJpciBhZCB2ZXJpbG1lZGkgdmUga2VuZGlsacSfaW5kZW4gYWxnxLFsYW1hIGRldnJlIGTEscWfxLEiCisKKyM6IGlkZW50LmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhdXRvLWRldGVjdCBuYW1lIChnb3QgJyVzJykiCittc2dzdHIgImFkIGtlbmRpbGnEn2luZGVuIGFsZ8SxbGFuYW3EsXlvciAoJyVzJyBhbMSxbmTEsSkiCisKKyM6IGlkZW50LmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGlkZW50IG5hbWUgKGZvciA8JXM+KSBub3QgYWxsb3dlZCIKK21zZ3N0ciAiYm/FnyB0YW7EsW1sYXnEsWPEsSBhZMSxbmEgKDwlcz4gacOnaW4pIGl6aW4gdmVyaWxtaXlvciIKKworIzogaWRlbnQuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSBjb25zaXN0cyBvbmx5IG9mIGRpc2FsbG93ZWQgY2hhcmFjdGVyczogJXMiCittc2dzdHIgImFkIHlhbG7EsXpjYSBpemluIHZlcmlsbWV5ZW4ga2FyYWt0ZXJsZXJkZW4gb2x1xZ91eW9yOiAlcyIKKworIzogaWRlbnQuYzo0MzYgYnVpbHRpbi9jb21taXQuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBkYXRlIGZvcm1hdDogJXMiCittc2dzdHIgImdlw6dlcnNpeiB0YXJpaCBiacOnaW1pOiAlcyIKKworIzogbGlzdC1vYmplY3RzLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImVudHJ5ICclcycgaW4gdHJlZSAlcyBoYXMgdHJlZSBtb2RlLCBidXQgaXMgbm90IGEgdHJlZSIKK21zZ3N0ciAiJyVzJyBnaXJkaXNpICglcyBhxJ9hY8SxbmRhKSBhxJ9hw6cga2lwaW5lIGl5ZSwgYW5jYWsgYmlyIGHEn2HDpyBkZcSfaWwiCisKKyM6IGxpc3Qtb2JqZWN0cy5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJlbnRyeSAnJXMnIGluIHRyZWUgJXMgaGFzIGJsb2IgbW9kZSwgYnV0IGlzIG5vdCBhIGJsb2IiCittc2dzdHIgIiIKKyInJXMnIGdpcmRpc2kgKCVzIGHEn2FjxLFuZGEpIGlraWxpIG5lc25lIGtpcGluZSBpeWUsIGFuY2FrIGJpciBpa2lsaSBnZW5pxZ8gIgorIm5lc25lIGRlxJ9pbCIKKworIzogbGlzdC1vYmplY3RzLmM6Mzc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb2FkIHJvb3QgdHJlZSBmb3IgY29tbWl0ICVzIgorbXNnc3RyICIlcyBnw7ZuZGVyaXNpIGnDp2luIGvDtmsgYcSfYWPEsSB5w7xrbGVuZW1peW9yIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLmM6NDkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3Mgc3BhcnNlIGJsb2IgaW4gJyVzJyIKK21zZ3N0ciAiJyVzJyBpw6dpbmRla2kgYXJhbMSxa2zEsSBpa2lsaSBuZXNuZXllIGVyacWfaWxlbWl5b3IiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXIuYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIHNwYXJzZSBmaWx0ZXIgZGF0YSBpbiAlcyIKK21zZ3N0ciAiJXMgacOnaW5kZWtpIGFyYWzEsWtsxLEgc8O8emdlw6cgdmVyaXNpIGF5csSxxZ90xLFyxLFsYW3EsXlvciIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6NTgKK21zZ2lkICJleHBlY3RlZCAndHJlZTo8ZGVwdGg+JyIKK21zZ3N0ciAiJ3RyZWU6PGRlcmlubGlrPicgYmVrbGVuaXlvcmR1IgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo3MworbXNnaWQgInNwYXJzZTpwYXRoIGZpbHRlcnMgc3VwcG9ydCBoYXMgYmVlbiBkcm9wcGVkIgorbXNnc3RyICJzcGFyc2U6cGF0aCBzw7x6Z2XDp2xlcmkgZGVzdGXEn2kgYXJ0xLFrIHlvayIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBmaWx0ZXItc3BlYyAnJXMnIgorbXNnc3RyICJnZcOnZXJzaXogZmlsdGVyLXNwZWMgJyVzJyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm11c3QgZXNjYXBlIGNoYXIgaW4gc3ViLWZpbHRlci1zcGVjOiAnJWMnIgorbXNnc3RyICJzdWItZmlsdGVyLXNwZWMgacOnaW5kZSBrYcOnxLHFnyBrYXJha3Rlcmkgb2xtYWzEsTogJyVjJyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTQ0Cittc2dpZCAiZXhwZWN0ZWQgc29tZXRoaW5nIGFmdGVyIGNvbWJpbmU6IgorbXNnc3RyICJiaXJsaWt0ZSBrdWxsYW7EsW1kYW4gc29ucmEgYmlyIMWfZXlsZXIgYmVrbGVuaXlvcmR1OiIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MjI2Cittc2dpZCAibXVsdGlwbGUgZmlsdGVyLXNwZWNzIGNhbm5vdCBiZSBjb21iaW5lZCIKK21zZ3N0ciAiw6dva2x1IGZpbHRlci1zcGVjcyBiaXJsaWt0ZSBrdWxsYW7EsWxhbWF6IgorCisjOiBsb2NrZmlsZS5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVW5hYmxlIHRvIGNyZWF0ZSAnJXMubG9jayc6ICVzLlxuIgorIlxuIgorIkFub3RoZXIgZ2l0IHByb2Nlc3Mgc2VlbXMgdG8gYmUgcnVubmluZyBpbiB0aGlzIHJlcG9zaXRvcnksIGUuZy5cbiIKKyJhbiBlZGl0b3Igb3BlbmVkIGJ5ICdnaXQgY29tbWl0Jy4gUGxlYXNlIG1ha2Ugc3VyZSBhbGwgcHJvY2Vzc2VzXG4iCisiYXJlIHRlcm1pbmF0ZWQgdGhlbiB0cnkgYWdhaW4uIElmIGl0IHN0aWxsIGZhaWxzLCBhIGdpdCBwcm9jZXNzXG4iCisibWF5IGhhdmUgY3Jhc2hlZCBpbiB0aGlzIHJlcG9zaXRvcnkgZWFybGllcjpcbiIKKyJyZW1vdmUgdGhlIGZpbGUgbWFudWFsbHkgdG8gY29udGludWUuIgorbXNnc3RyICIiCisiJyVzLmxvY2snIG9sdcWfdHVydWxhbcSxeW9yOiAlcy5cbiIKKyJcbiIKKyJCdSBkZXBvZGEgYmHFn2thIGJpciBnaXQgacWfbGVtaSDDp2FsxLHFn8SxeW9yIGdpYmkgZ8O2csO8bsO8eW9yLCDDtnJuZcSfaW5cbiIKKyInZ2l0IGNvbW1pdCcga3VsbGFuxLFsYXJhayBhw6fEsWxtxLHFnyBiaXIgZMO8emVubGV5aWNpLiBMw7x0ZmVuIHTDvG0gacWfbGVtbGVyaW5cbiIKKyJzb25sYW5kxLFyxLFsZMSxxJ/EsW5kYW4gZW1pbiBvbHVuIHZlIHllbmlkZW4gZGVuZXlpbi4gRcSfZXIgaMOibMOiIGJhxZ9hcsSxc8SxelxuIgorIm9sdXlvcnNhIGJpciBnaXQgacWfbGVtaSBidSBkZXBvIGnDp2luZGUgZGFoYSDDtm5jZWRlbiDDp2FrxLFsbcSxxZ8gb2xhYmlsaXI6XG4iCisiU8O8cmTDvHJtZWsgacOnaW4gZG9zeWF5xLEgZWwgaWxlIGthbGTEsXLEsW4uIgorCisjOiBsb2NrZmlsZS5jOjE1OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gY3JlYXRlICclcy5sb2NrJzogJXMiCittc2dzdHIgIiclcy5sb2NrJyBvbHXFn3R1cnVsYW3EsXlvcjogJXMiCisKKyM6IG1lcmdlLmM6NDEKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCB0aGUgY2FjaGUiCittc2dzdHIgIsO2bmJlbGxlayBva3VuYW1hZMSxIgorCisjOiBtZXJnZS5jOjEwNyByZXJlcmUuYzo3MjAgYnVpbHRpbi9hbS5jOjE4NzkgYnVpbHRpbi9hbS5jOjE5MTMKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo1NDEgYnVpbHRpbi9jaGVja291dC5jOjgwMCBidWlsdGluL2Nsb25lLmM6ODEwCisjOiBidWlsdGluL3N0YXNoLmM6MjY1Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgorbXNnc3RyICJ5ZW5pIGluZGVrcyBkb3N5YXPEsSB5YXrEsWxhbcSxeW9yIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNTYKK21zZ2lkICIoYmFkIGNvbW1pdClcbiIKK21zZ3N0ciAiKGhhdGFsxLEgZ8O2bmRlcmkpXG4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3OQorIywgYy1mb3JtYXQKK21zZ2lkICJhZGRfY2FjaGVpbmZvIGZhaWxlZCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCittc2dzdHIgIiIKKyJhZGRfY2FjaGVpbmZvICclcycgeW9sdSBpw6dpbiBiYcWfYXLEsXPEsXogb2xkdTsgYmlybGXFn3Rpcm1lIGlwdGFsIGVkaWxpeW9yLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgImFkZF9jYWNoZWluZm8gZmFpbGVkIHRvIHJlZnJlc2ggZm9yIHBhdGggJyVzJzsgbWVyZ2UgYWJvcnRpbmcuIgorbXNnc3RyICJhZGRfY2FjaGVpbmZvICclcycgeW9sdSBpw6dpbiB5ZW5pbGVuZW1lZGk7IGJpcmxlxZ90aXJtZSBpcHRhbCBlZGlsaXlvci4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg3NAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBhdGggJyVzJyVzIgorbXNnc3RyICInJXMnJXMgeW9sdSBvbHXFn3R1cnVsYW1hZMSxIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo4ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgdG8gbWFrZSByb29tIGZvciBzdWJkaXJlY3RvcnlcbiIKK21zZ3N0ciAiQWx0ZGl6aW5lIHllciBhw6dtYWsgacOnaW4gJXMga2FsZMSxcsSxbMSxeW9yXG4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg5OSBtZXJnZS1yZWN1cnNpdmUuYzo5MTgKK21zZ2lkICI6IHBlcmhhcHMgYSBEL0YgY29uZmxpY3Q/IgorbXNnc3RyICI6IGJpciBEL0Ygw6dha8SxxZ9tYXPEsSBvbGFiaWxpciBtaT8iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkwOAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICclcyciCittc2dzdHIgIiclcycga29udW11bmRha2kgaXpsZW5tZXllbiBkb3N5YXnEsSBrYXliZXRtZSByZWRkZWRpbGl5b3IiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk0OSBidWlsdGluL2NhdC1maWxlLmM6NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgb2JqZWN0ICVzICclcyciCittc2dzdHIgIiVzICclcycgbmVzbmVzaSBva3VuYW3EsXlvciIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTU0CisjLCBjLWZvcm1hdAorbXNnaWQgImJsb2IgZXhwZWN0ZWQgZm9yICVzICclcyciCittc2dzdHIgIiVzICclcycgacOnaW4gaWtpbGkgbmVzbmUgYmVrbGVuaXlvcmR1IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJzogJXMiCittc2dzdHIgIiclcycgYcOnxLFsYW1hZMSxOiAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTkwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW1saW5rICclcyc6ICVzIgorbXNnc3RyICInJXMnIGnDp2luIHNlbWJvbGlrIGJhxJ8gb2x1xZ90dXJ1bGFtYWTEsTogJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk5NQorIywgYy1mb3JtYXQKK21zZ2lkICJkbyBub3Qga25vdyB3aGF0IHRvIGRvIHdpdGggJTA2byAlcyAnJXMnIgorbXNnc3RyICLFn3VudW5sYSBuZSB5YXDEsWxhY2HEn8SxIGJpbGlubWl5b3I6ICUwNm8gJXMgJyVzJyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTE5MQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChub3QgY2hlY2tlZCBvdXQpIgorbXNnc3RyICIlcyBhbHRtb2TDvGzDvCBiaXJsZcWfdGlyaWxlbWVkaSAow6fEsWvEscWfIHlhcMSxbG1hZMSxKSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChjb21taXRzIG5vdCBwcmVzZW50KSIKK21zZ3N0ciAiJXMgYWx0bW9kw7xsw7wgYmlybGXFn3RpcmlsZW1lZGkgKGfDtm5kZXJpbGVyIG1ldmN1dCBkZcSfaWwpIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKGNvbW1pdHMgZG9uJ3QgZm9sbG93IG1lcmdlLWJhc2UpIgorbXNnc3RyICIlcyBhbHRtb2TDvGzDvCBiaXJsZcWfdGlyaWxlbWVkaSAoZ8O2bmRlcmlsZXIgbWVyZ2UtYmFzZSdpIHRha2lwIGV0bWl5b3IpIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjEzIG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFzdC1mb3J3YXJkaW5nIHN1Ym1vZHVsZSAlcyB0byB0aGUgZm9sbG93aW5nIGNvbW1pdDoiCittc2dzdHIgIiVzIGFsdG1vZMO8bMO8IMWfdSBnw7ZuZGVyaXllIGlsZXJpIHNhcsSxbMSxeW9yOiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxNiBtZXJnZS1yZWN1cnNpdmUuYzoxMjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMiCittc2dzdHIgIiVzIGFsdG1vZMO8bMO8IGlsZXJpIHNhcsSxbMSxeW9yIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG1lcmdlIGZvbGxvd2luZyBjb21taXRzIG5vdCBmb3VuZCkiCittc2dzdHIgIiIKKyIlcyBhbHRtb2TDvGzDvCBiaXJsZcWfdGlyaWxlbWVkaSAoZ8O2bmRlcmlsZXJpIHRha2lwIGVkZW4gYmlybGXFn3Rpcm1lIGJ1bHVuYW1hZMSxKSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChub3QgZmFzdC1mb3J3YXJkKSIKK21zZ3N0ciAiJXMgYWx0bW9kw7xsw7wgYmlybGXFn3RpcmlsZW1lZGkgKGlsZXJpIHNhcsSxbSBkZcSfaWwpIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU2Cittc2dpZCAiRm91bmQgYSBwb3NzaWJsZSBtZXJnZSByZXNvbHV0aW9uIGZvciB0aGUgc3VibW9kdWxlOlxuIgorbXNnc3RyICLFnnUgYWx0bW9kw7xsIGnDp2luIG9sYXPEsSBiaXIgYmlybGXFn3Rpcm1lIMOnw7Z6w7xtw7wgYnVsdW5kdTpcbiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSWYgdGhpcyBpcyBjb3JyZWN0IHNpbXBseSBhZGQgaXQgdG8gdGhlIGluZGV4IGZvciBleGFtcGxlXG4iCisiYnkgdXNpbmc6XG4iCisiXG4iCisiICBnaXQgdXBkYXRlLWluZGV4IC0tY2FjaGVpbmZvIDE2MDAwMCAlcyBcIiVzXCJcbiIKKyJcbiIKKyJ3aGljaCB3aWxsIGFjY2VwdCB0aGlzIHN1Z2dlc3Rpb24uXG4iCittc2dzdHIgIiIKKyJFxJ9lciBidSBkb8SfcnV5c2EgeWFsbsSxemNhIGluZGVrc2UgZWtsZXlpbiwgw7ZybmXEn2luYnUgw7ZuZXJpeWkga2FidWwgZWRlY2VrOlxuIgorIlxuIgorIlx0Z2l0IHVwZGF0ZS1pbmRleCAtLWNhY2hlaW5mbyAxNjAwMDAgJXMgXCIlc1wiXG4iCisiXG4iCisia29tdXR1bnUga3VsbGFubWFuxLF6IHlldGVybGlkaXIuXG4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobXVsdGlwbGUgbWVyZ2VzIGZvdW5kKSIKK21zZ3N0ciAiJXMgYWx0bW9kw7xsw7wgYmlybGXFn3RpcmlsZW1lZGkgKGJpcmRlbiDDp29rIGJpcmxlxZ90aXJtZSBidWx1bmR1KSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM0MQorbXNnaWQgIkZhaWxlZCB0byBleGVjdXRlIGludGVybmFsIG1lcmdlIgorbXNnc3RyICLEsMOnIGJpcmxlxZ90aXJtZSDDp2FsxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGFkZCAlcyB0byBkYXRhYmFzZSIKK21zZ3N0ciAiJXMgdmVyaXRhYmFuxLFuYSBla2xlbmVtZWRpIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dG8tbWVyZ2luZyAlcyIKK21zZ3N0ciAiJXMga2VuZGlsacSfaW5kZW4gYmlybGXFn3RpcmlsaXlvciIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJFcnJvcjogUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlczsgd3JpdGluZyB0byAlcyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIkhhdGE6ICVzIGtvbnVtdW5kYWtpIGl6bGVubWV5ZW4gZG9zeWF5xLEga2F5YmV0bWUgcmVkZGVkaWxpeW9yLCBidW51biB5ZXJpbmUgIgorIiVzIGtvbnVtdW5hIHlhesSxbGFjYWsuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgbGVmdCAiCisiaW4gdHJlZS4iCittc2dzdHIgIiIKKyLDh0FLScWeTUEgKCVzL3NpbG1lKTogJXMgc2lsaW5kaSAoJXMgacOnaW5kZSkgdmUgJXMgKCVzIGnDp2luZGUpLiAlcyAoJXMpIHPDvHLDvG3DvCAiCisiYcSfYcOndGEgYsSxcmFrxLFsZMSxLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ3OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIHRvICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzICIKKyJsZWZ0IGluIHRyZWUuIgorbXNnc3RyICIiCisiw4dBS0nFnk1BICglcy9zaWxtZSk6ICVzIHNpbGluZGkgKCVzIGnDp2luZGUpIHZlICVzIMWfdXJheWE6ICVzICglcyBpw6dpbmRlKS4gJXMgIgorIiglcykgc8O8csO8bcO8IGHEn2HDp3RhIGLEsXJha8SxbGTEsS4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0ICIKKyJpbiB0cmVlIGF0ICVzLiIKK21zZ3N0ciAiIgorIsOHQUtJxZ5NQSAoJXMvc2lsbWUpOiAlcyBzaWxpbmRpICglcyBpw6dpbmRlKSB2ZSAlcyAoJXMgacOnaW5kZSkuICVzICglcykgc8O8csO8bcO8ICIKKyJhxJ9hw6d0YSAlcyBrb251bXVuZGEgYsSxcmFrxLFsZMSxLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIHRvICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzICIKKyJsZWZ0IGluIHRyZWUgYXQgJXMuIgorbXNnc3RyICIiCisiw4dBS0nFnk1BICglcy9zaWxtZSk6ICVzIHNpbGluZGkgKCVzIGnDp2luZGUpIHZlICVzIMWfdXJheWE6ICVzICglcyBpw6dpbmRlKS4gJXMgIgorIiglcykgc8O8csO8bcO8IGHEn2HDp3RhICVzIGtvbnVtdW5kYSBixLFyYWvEsWxkxLEuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTI2Cittc2dpZCAicmVuYW1lIgorbXNnc3RyICJ5ZW5pZGVuIGFkbGFuZMSxciIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUyNgorbXNnaWQgInJlbmFtZWQiCittc2dzdHIgInllbmlkZW4gYWRsYW5kxLFyxLFsZMSxIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTc3IG1lcmdlLXJlY3Vyc2l2ZS5jOjI0NzIgbWVyZ2UtcmVjdXJzaXZlLmM6MzExNworIywgYy1mb3JtYXQKK21zZ2lkICJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgJXMiCittc2dzdHIgIiVzIGtvbnVtdW5kYWtpIGtpcmxpIGRvc3lhecSxIGtheWJldG1lIHJlZGRlZGlsaXlvciIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTU4NworIywgYy1mb3JtYXQKK21zZ2lkICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzLCBldmVuIHRob3VnaCBpdCdzIGluIHRoZSB3YXkuIgorbXNnc3RyICIiCisiRW5nZWwgb2xkdcSfdSBoYWxkZSAlcyBrb251bXVuZGFraSBpemxlbm1leWVuIGRvc3lhecSxIGtheWJldG1lIHJlZGRlZGlsaXlvci4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9hZGQpOiBSZW5hbWUgJXMtPiVzIGluICVzLiAgQWRkZWQgJXMgaW4gJXMiCittc2dzdHIgIiIKKyLDh0FLScWeTUEgKHllbmlkZW4gYWRsYW5kxLFyL2VrbGUpOiAlcy0+JXMgb2xhcmFrIGFkbGFuZMSxcsSxbGTEsSAoJXMgacOnaW5kZSkuICVzICIKKyJla2xlbmRpICglcyBpw6dpbmRlKS4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgYSBkaXJlY3RvcnkgaW4gJXMgYWRkaW5nIGFzICVzIGluc3RlYWQiCittc2dzdHIgIiVzIGJpciBkaXppbiAoJXMgacOnaW5kZSksIGJ1bnVuIHllcmluZSAlcyBvbGFyYWsgZWtsZW5peW9yIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXM7IGFkZGluZyBhcyAlcyBpbnN0ZWFkIgorbXNnc3RyICIiCisiJXMga29udW11bmRha2kgaXpsZW5tZXllbiBkb3N5YXnEsSBrYXliZXRtZSByZWRkZWRpbGl5b3IsIGJ1bnVuIHllcmluZSAlcyAiCisib2xhcmFrIGVrbGVuaXlvciIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTcwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiBSZW5hbWUgXCIlc1wiLT5cIiVzXCIgaW4gYnJhbmNoIFwiJXNcIiByZW5hbWUgXCIlcyIKKyJcIi0+XCIlc1wiIGluIFwiJXNcIiVzIgorbXNnc3RyICIiCisiw4dBS0nFnk1BICh5LiBhZGxhbmTEsXIveS4gYWRsYW5kxLFyKTogXCIlc1wiLT5cIiVzXCIgb2xhcmFrIGFkbGFuZMSxciAoXCIlc1wiICIKKyJkYWzEsW5kYSksIFwiJXNcIi0+XCIlc1wiIG9sYXJhayBhZGxhbmTEsXIgKFwiJXNcIiVzIGnDp2luZGUpIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzEzCittc2dpZCAiIChsZWZ0IHVucmVzb2x2ZWQpIgorbXNnc3RyICIgKMOnw7Z6w7xsbWVkZW4gYsSxcmFrxLFsZMSxKSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTc5MworIywgYy1mb3JtYXQKK21zZ2lkICJDT05GTElDVCAocmVuYW1lL3JlbmFtZSk6IFJlbmFtZSAlcy0+JXMgaW4gJXMuIFJlbmFtZSAlcy0+JXMgaW4gJXMiCittc2dzdHIgIiIKKyLDh0FLScWeTUEgKHkuIGFkbGFuZMSxci95LiBhZGxhbmTEsXIpOiAlcy0+JXMgb2xhcmFrIGFkbGFuZMSxciAoJXMgacOnaW5kZSkuICVzLT4iCisiJXMgb2xhcmFrIGFkbGFuZMSxciAoJXMgacOnaW5kZSkiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChkaXJlY3RvcnkgcmVuYW1lIHNwbGl0KTogVW5jbGVhciB3aGVyZSB0byBwbGFjZSAlcyBiZWNhdXNlICIKKyJkaXJlY3RvcnkgJXMgd2FzIHJlbmFtZWQgdG8gbXVsdGlwbGUgb3RoZXIgZGlyZWN0b3JpZXMsIHdpdGggbm8gZGVzdGluYXRpb24gIgorImdldHRpbmcgYSBtYWpvcml0eSBvZiB0aGUgZmlsZXMuIgorbXNnc3RyICIiCisiw4dBS0nFnk1BOiAoZGl6aW4geWVuaWRlbiBhZGxhbmTEsXJtYSBheXLEsWxtYXPEsSk6ICVzIMO2Z2VzaW5pbiBuZXJleWUgIgorInllcmxlxZ90aXJpbGVjZcSfaSBiZWxpcnNpeiDDp8O8bmvDvCAlcyBkaXppbmkgYmlyZGVuIMOnb2sgYmHFn2thIGRpemluZSB5ZW5pZGVuICIKKyJhZGxhbmTEsXLEsWzEsXJrZW4gaGnDp2JpciBoZWRlZiBkb3N5YWxhcsSxbiBiw7x5w7xrIMOnb8SfdW5sdcSfdW51IGFsbWFkxLEuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoaW1wbGljaXQgZGlyIHJlbmFtZSk6IEV4aXN0aW5nIGZpbGUvZGlyIGF0ICVzIGluIHRoZSB3YXkgb2YgIgorImltcGxpY2l0IGRpcmVjdG9yeSByZW5hbWUocykgcHV0dGluZyB0aGUgZm9sbG93aW5nIHBhdGgocykgdGhlcmU6ICVzLiIKK21zZ3N0ciAiIgorIsOHQUtJxZ5NQSAow7ZydMO8bMO8IGRpemluIHllbmlkZW4gYWRsYW5kxLFybWEpOiAlcyBrb251bXVuZGFraSBtZXZjdXQgZG9zeWEvZGl6aW4gIgorIsO2cnTDvGzDvCB5ZW5pZGVuIGFkbGFuZMSxcm1hbsSxbiBhxZ9hxJ/EsWRha2kgeW9sbGFyxLEgb3JheWEga295bWFzxLFuYSBlbmdlbCBvbHV5b3I6ICIKKyIlcy4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogQ2Fubm90IG1hcCBtb3JlIHRoYW4gb25lIHBhdGggdG8gJXM7ICIKKyJpbXBsaWNpdCBkaXJlY3RvcnkgcmVuYW1lcyB0cmllZCB0byBwdXQgdGhlc2UgcGF0aHMgdGhlcmU6ICVzIgorbXNnc3RyICIiCisiw4dBS0nFnk1BICjDtnJ0w7xsw7wgZGl6aW4geWVuaWRlbiBhZGxhbmTEsXJtYSk6ICVzIGnDp2luIGJpcmRlbiDDp29rIHlvbCAiCisiZcWfbGVtbGVuZW1peW9yOyDDtnJ0w7xsw7wgZGl6aW4geWVuaWRlbiBhZGxhbmTEsXJtYWxhcsSxIGHFn2HEn8SxZGFraSB5b2xsYXLEsSBvcmF5YSAiCisia295bWF5xLEgZGVuZWRpOiAlcy4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIGRpcmVjdG9yeSAlcy0+JXMgaW4gJXMuIFJlbmFtZSBkaXJlY3RvcnkgJXMtIgorIj4lcyBpbiAlcyIKK21zZ3N0ciAiIgorIsOHQUtJxZ5NQSAoeS4gYWRsYW5kxLFyL3kuIGFkbGFuZMSxcik6IERpemluaSAlcy0+JXMgb2xhcmFrIGFkbGFuZMSxciAoJXMgIgorImnDp2luZGUpLiBEaXppbmkgJXMtPiVzIG9sYXJhayBhZGxhbmTEsXIgKCVzIGnDp2luZGUpLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV0FSTklORzogQXZvaWRpbmcgYXBwbHlpbmcgJXMgLT4gJXMgcmVuYW1lIHRvICVzLCBiZWNhdXNlICVzIGl0c2VsZiB3YXMgIgorInJlbmFtZWQuIgorbXNnc3RyICIiCisiVVlBUkk6ICVzIC0+ICVzIHllbmlkZW4gYWRsYW5kxLFybWFzxLFuxLEgJXMgw7ZnZXNpbmUgdXlndWxhbWFkYW4ga2HDp8SxbsSxbMSxeW9yLCAiCisiw6fDvG5rw7wgJXMgw7ZnZXNpbmluIGtlbmRpc2kgeWVuaWRlbiBhZGxhbmTEsXLEsWxkxLEuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyOTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCAlcyIKK21zZ3N0ciAiJXMgbmVzbmVzaSBva3VuYW3EsXlvciIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjk2NAorIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgJXMgaXMgbm90IGEgYmxvYiIKK21zZ3N0ciAiJXMgbmVzbmVzaSBpa2lsaSBiaXIgbmVzbmUgZGXEn2lsIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDI4Cittc2dpZCAibW9kaWZ5IgorbXNnc3RyICJkZcSfacWfdGlyIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDI4Cittc2dpZCAibW9kaWZpZWQiCittc2dzdHIgImRlxJ9pxZ90aXJpbG1pxZ8iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDAKK21zZ2lkICJjb250ZW50IgorbXNnc3RyICJpw6dlcmlrIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDQ0Cittc2dpZCAiYWRkL2FkZCIKK21zZ3N0ciAiZWtsZS9la2xlIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDY3CisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXBwZWQgJXMgKG1lcmdlZCBzYW1lIGFzIGV4aXN0aW5nKSIKK21zZ3N0ciAiJXMgYXRsYW5kxLEgKG1ldmN1dCBpbGUgYXluxLEgYmnDp2ltZGUgYmlybGXFn3RpcmlsZGkpIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDg5IGdpdC1zdWJtb2R1bGUuc2g6MTAwMworbXNnaWQgInN1Ym1vZHVsZSIKK21zZ3N0ciAiYWx0bW9kw7xsIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUICglcyk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgorbXNnc3RyICLDh0FLScWeTUEgKCVzKTogJXMgacOnaW5kZSBiaXJsZcWfdGlybWUgw6dha8SxxZ9tYXPEsSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzEyMAorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgYXMgJXMgaW5zdGVhZCIKK21zZ3N0ciAiQnVudW4geWVyaW5lICVzIG9sYXJhayBla2xlbml5b3IiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhdGggdXBkYXRlZDogJXMgYWRkZWQgaW4gJXMgaW5zaWRlIGEgZGlyZWN0b3J5IHRoYXQgd2FzIHJlbmFtZWQgaW4gJXM7ICIKKyJtb3ZpbmcgaXQgdG8gJXMuIgorbXNnc3RyICIiCisiWW9sIGfDvG5jZWxsZW5kaTogJXMsICglcyBpw6dpbmRlIGVrbGVuZW4pICVzIGnDp2luZGUgeWVuaWRlbiBhZGxhbmTEsXLEsWxhbiBiaXIgIgorImRpemluZGU7IG9udSAlcyBrb251bXVuYSB0YcWfxLFkxLEuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoZmlsZSBsb2NhdGlvbik6ICVzIGFkZGVkIGluICVzIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkICIKKyJpbiAlcywgc3VnZ2VzdGluZyBpdCBzaG91bGQgcGVyaGFwcyBiZSBtb3ZlZCB0byAlcy4iCittc2dzdHIgIiIKKyLDh0FLScWeTUEgKGRvc3lhIGtvbnVtdSk6ICVzLCAoJXMgacOnaW5kZSBla2xlbmVuKSAlcyBpw6dpbmRlIHllbmlkZW4gIgorImFkbGFuZMSxcsSxbGFuIGJpciBkaXppbmRlLCBiZWxraSBkZSAlcyBrb251bXVuYSB0YcWfxLFubWFsxLEuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYXRoIHVwZGF0ZWQ6ICVzIHJlbmFtZWQgdG8gJXMgaW4gJXMsIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkIGluICIKKyIlczsgbW92aW5nIGl0IHRvICVzLiIKK21zZ3N0ciAiIgorIllvbCBnw7xuY2VsbGVuZGk6ICVzLCAlcyBvbGFyYWsgeWVuaWRlbiBhZGxhbmTEsXLEsWxkxLEgKCVzIGnDp2luZGUpLCAlcyBpw6dpbmRlICIKKyJ5ZW5pZGVuIGFkbGFuZMSxcsSxbGFuIGJpciBkaXppbmRlOyBvbnUgJXMga29udW11bmEgdGHFn8SxZMSxLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGZpbGUgbG9jYXRpb24pOiAlcyByZW5hbWVkIHRvICVzIGluICVzLCBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCAiCisid2FzIHJlbmFtZWQgaW4gJXMsIHN1Z2dlc3RpbmcgaXQgc2hvdWxkIHBlcmhhcHMgYmUgbW92ZWQgdG8gJXMuIgorbXNnc3RyICIiCisiw4dBS0nFnk1BIChkb3N5YSBrb251bXUpOiAlcywgJXMgb2xhcmFrIHllbmlkZW4gYWRsYW5kxLFyxLFsZMSxICglcyBpw6dpbmRlKSwgJXMgIgorImnDp2luZGUgeWVuaWRlbiBhZGxhbmTEsXLEsWxhbiBiaXIgZGl6aW5kZSwgYmVsa2kgZGUgJXMga29udW11bmEgdGHFn8Sxbm1hbMSxLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMyNworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlcyIKK21zZ3N0ciAiJXMga2FsZMSxcsSxbMSxeW9yIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzUwCittc2dpZCAiZmlsZS9kaXJlY3RvcnkiCittc2dzdHIgImRvc3lhL2RpemluIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzU1Cittc2dpZCAiZGlyZWN0b3J5L2ZpbGUiCittc2dzdHIgImRpemluL2Rvc3lhIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUICglcyk6IFRoZXJlIGlzIGEgZGlyZWN0b3J5IHdpdGggbmFtZSAlcyBpbiAlcy4gQWRkaW5nICVzIGFzICVzIgorbXNnc3RyICIiCisiw4dBS0nFnk1BICglcyk6ICVzIGFkxLF5bGEgYmlyIGRpemluIHZhciAoJXMgacOnaW5kZSkuICVzLCAlcyBvbGFyYWsgZWtsZW5peW9yLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM3MQorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgJXMiCittc2dzdHIgIiVzIGVrbGVuaXlvciIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM4MAorIywgYy1mb3JtYXQKK21zZ2lkICJDT05GTElDVCAoYWRkL2FkZCk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgorbXNnc3RyICLDh0FLScWeTUEgKGVrbGUvZWtsZSk6ICVzIGnDp2luZGUgYmlybGXFn3Rpcm1lIMOnYWvEscWfbWFzxLEiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MjQKK21zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUhIgorbXNnc3RyICJIZXIgxZ9leSBnw7xuY2VsISIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQzMworIywgYy1mb3JtYXQKK21zZ2lkICJtZXJnaW5nIG9mIHRyZWVzICVzIGFuZCAlcyBmYWlsZWQiCittc2dzdHIgIiVzIHZlICVzIGHEn2HDp2xhcsSxbsSxbiBiaXJsZcWfdGlyaWxtZXNpIGJhxZ9hcsSxc8SxeiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzNworbXNnaWQgIk1lcmdpbmc6IgorbXNnc3RyICJCaXJsZcWfdGlyaWxpeW9yOiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzU1MAorIywgYy1mb3JtYXQKK21zZ2lkICJmb3VuZCAldSBjb21tb24gYW5jZXN0b3I6IgorbXNnaWRfcGx1cmFsICJmb3VuZCAldSBjb21tb24gYW5jZXN0b3JzOiIKK21zZ3N0clswXSAiJXUgb3J0YWsgYXRhIGJ1bHVuZHU6IgorbXNnc3RyWzFdICIldSBvcnRhayBhdGEgYnVsdW5kdToiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM2MDAKK21zZ2lkICJtZXJnZSByZXR1cm5lZCBubyBjb21taXQiCittc2dzdHIgImJpcmxlxZ90aXJtZSBoZXJoYW5naSBiaXIgZ8O2bmRlcmkgZMO2bmTDvHJtZWRpIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKKyIgICVzIgorbXNnc3RyICIiCisiQmlybGXFn3Rpcm1lIGlsZSBhxZ9hxJ/EsWRha2kgZG9zeWFsYXJkYWtpIHllcmVsIGRlxJ9pxZ9pa2xpa2xlcmluIMO8emVyaW5lICIKKyJ5YXrEsWxhY2FrOlxuIgorIlx0JXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnIgorbXNnc3RyICInJXMnIG5lc25lc2kgYXlyxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3NzQgYnVpbHRpbi9tZXJnZS5jOjY5NyBidWlsdGluL21lcmdlLmM6ODc3Cittc2dpZCAiVW5hYmxlIHRvIHdyaXRlIGluZGV4LiIKK21zZ3N0ciAixLBuZGVrcyB5YXrEsWxhbWFkxLEuIgorCisjOiBtaWR4LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGktcGFjay1pbmRleCBmaWxlICVzIGlzIHRvbyBzbWFsbCIKK21zZ3N0ciAibXVsdGktcGFjay1pbmRleCBkb3N5YXPEsSAlcyBwZWsga8O8w6fDvGsiCisKKyM6IG1pZHguYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHNpZ25hdHVyZSAweCUwOHggZG9lcyBub3QgbWF0Y2ggc2lnbmF0dXJlIDB4JTA4eCIKK21zZ3N0ciAibXVsdGktcGFjay1pbmRleCBpbXphc8SxIDB4JTA4eCwgMHglMDh4IGltemFzxLEgaWxlIGXFn2xlxZ9taXlvciIKKworIzogbWlkeC5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpLXBhY2staW5kZXggdmVyc2lvbiAlZCBub3QgcmVjb2duaXplZCIKK21zZ3N0ciAibXVsdGktcGFjay1pbmRleCBzw7xyw7xtw7wgJWQgdGFuxLFtbGFuYW3EsXlvciIKKworIzogbWlkeC5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImhhc2ggdmVyc2lvbiAldSBkb2VzIG5vdCBtYXRjaCIKK21zZ3N0ciAic2HEn2xhbWEgc8O8csO8bcO8ICV1IGXFn2xlxZ9taXlvciIKKworIzogbWlkeC5jOjEwOAorbXNnaWQgImludmFsaWQgY2h1bmsgb2Zmc2V0ICh0b28gbGFyZ2UpIgorbXNnc3RyICJnZcOnZXJzaXogaXJpIHBhcsOnYSBvZnNldGkgKMOnb2sgZ2VuacWfKSIKKworIzogbWlkeC5jOjEzMgorbXNnaWQgInRlcm1pbmF0aW5nIG11bHRpLXBhY2staW5kZXggY2h1bmsgaWQgYXBwZWFycyBlYXJsaWVyIHRoYW4gZXhwZWN0ZWQiCittc2dzdHIgIiIKKyJtdWx0aS1wYWNrLWluZGV4IGlyaSBwYXLDp2FzxLEgc29ubGFuZMSxcsSxbMSxeW9yLCBudW1hcmFzxLEgYmVrbGVuZW5kZW4gw7ZuY2UgIgorImfDtnLDvG7DvHlvciIKKworIzogbWlkeC5jOjE0NQorbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBwYWNrLW5hbWUgY2h1bmsiCittc2dzdHIgIm11bHRpLXBhY2staW5kZXgndGVuIGdlcmVrbGkgcGFjay1uYW1lIGlyaSBwYXLDp2FzxLEgZWtzaWsiCisKKyM6IG1pZHguYzoxNDcKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgT0lEIGZhbm91dCBjaHVuayIKK21zZ3N0ciAibXVsdGktcGFjay1pbmRleCd0ZW4gZ2VyZWtsaSBPSUQgZmFub3V0IGlyaSBwYXLDp2FzxLEgZWtzaWsiCisKKyM6IG1pZHguYzoxNDkKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgT0lEIGxvb2t1cCBjaHVuayIKK21zZ3N0ciAibXVsdGktcGFjay1pbmRleCd0ZW4gZ2VyZWtsaSBPSUQgYXJhbWEgaXJpIHBhcsOnYXPEsSBla3NpayIKKworIzogbWlkeC5jOjE1MQorbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBvYmplY3Qgb2Zmc2V0cyBjaHVuayIKK21zZ3N0ciAibXVsdGktcGFjay1pbmRleCd0ZW4gZ2VyZWtsaSBuZXNuZSBvZnNldGxlcmkgaXJpIHBhcsOnYXPEsSBla3NpayIKKworIzogbWlkeC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHBhY2sgbmFtZXMgb3V0IG9mIG9yZGVyOiAnJXMnIGJlZm9yZSAnJXMnIgorbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4IHBha2V0IGFkbGFyxLFuxLFuIHPEsXJhc8SxejogJyVzJyDFn3VuZGFuIMO2bmNlOiAnJXMnIgorCisjOiBtaWR4LmM6MjEwCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBwYWNrLWludC1pZDogJXUgKCV1IHRvdGFsIHBhY2tzKSIKK21zZ3N0ciAiaGF0YWzEsSBwYWNrLWludC1pZDogJXUgKCV1IHRvcGxhbSBwYWtldCkiCisKKyM6IG1pZHguYzoyNjAKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHN0b3JlcyBhIDY0LWJpdCBvZmZzZXQsIGJ1dCBvZmZfdCBpcyB0b28gc21hbGwiCittc2dzdHIgIm11bHRpLXBhY2staW5kZXggYmlyIDY0IGJpdCBvZnNldCBkZXBvbHV5b3IsIGFuY2FrIG9mZl90IHBlayBrw7zDp8O8ayIKKworIzogbWlkeC5jOjI4OAorbXNnaWQgImVycm9yIHByZXBhcmluZyBwYWNrZmlsZSBmcm9tIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgInBha2V0IGRvc3lhc8SxIG11bHRpLXBhY2staW5kZXgndGVuIGhhesSxcmxhbsSxcmtlbiBoYXRhIgorCisjOiBtaWR4LmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBhZGQgcGFja2ZpbGUgJyVzJyIKK21zZ3N0ciAicGFrZXQgZG9zeWFzxLEgJyVzJyBla2xlbmVtZWRpIgorCisjOiBtaWR4LmM6NDc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2staW5kZXggJyVzJyIKK21zZ3N0ciAicGFjay1pbmRleCAnJXMnIGHDp8SxbGFtYWTEsSIKKworIzogbWlkeC5jOjUzOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbG9jYXRlIG9iamVjdCAlZCBpbiBwYWNrZmlsZSIKK21zZ3N0ciAiJWQgbmVzbmVzaSBwYWtldCBkb3N5YXPEsW5kYSBidWx1bmFtYWTEsSIKKworIzogbWlkeC5jOjg0MgorbXNnaWQgIkFkZGluZyBwYWNrZmlsZXMgdG8gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAiUGFrZXQgZG9zeWFsYXLEsSBtdWx0aS1wYWNrLWluZGV4J2UgZWtsZW5peW9yIgorCisjOiBtaWR4LmM6ODc1CisjLCBjLWZvcm1hdAorbXNnaWQgImRpZCBub3Qgc2VlIHBhY2stZmlsZSAlcyB0byBkcm9wIgorbXNnc3RyICJixLFyYWvEsWxhY2FrIHBhY2stZmlsZSAlcyBnw7Zyw7xsbWVkaSIKKworIzogbWlkeC5jOjk3MworbXNnaWQgIldyaXRpbmcgY2h1bmtzIHRvIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIsSwcmkgcGFyw6dhbGFyIG11bHRpLXBhY2staW5kZXgnZSB5YXrEsWzEsXlvciIKKworIzogbWlkeC5jOjEwNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsZWFyIG11bHRpLXBhY2staW5kZXggYXQgJXMiCittc2dzdHIgIm11bHRpLXBhY2staW5kZXggJXMga29udW11bmRhIHRlbWl6bGVuZW1lZGkiCisKKyM6IG1pZHguYzoxMTA4Cittc2dpZCAiTG9va2luZyBmb3IgcmVmZXJlbmNlZCBwYWNrZmlsZXMiCittc2dzdHIgIkJhxZ92dXJ1bG11xZ8gcGFrZXQgZG9zeWFsYXLEsSBhcmFuxLF5b3IiCisKKyM6IG1pZHguYzoxMTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvaWQgZmFub3V0IG91dCBvZiBvcmRlcjogZmFub3V0WyVkXSA9ICU8UFJJeDMyPiA+ICU8UFJJeDMyPiA9IGZhbm91dFslZF0iCittc2dzdHIgIm9pZCBmYW5vdXQgc8SxcmFzxLF6OiBmYW5vdXRbJWRdID0gJTxQUkl4MzI+ID4gJTxQUkl4MzI+ID0gZmFub3V0WyVkXSIKKworIzogbWlkeC5jOjExMjgKK21zZ2lkICJWZXJpZnlpbmcgT0lEIG9yZGVyIGluIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIm11bHRpLXBhY2staW5kZXggacOnaW5kZWtpIE9JRCBzxLFyYXPEsSBkb8SfcnVsYW7EsXlvciIKKworIzogbWlkeC5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAib2lkIGxvb2t1cCBvdXQgb2Ygb3JkZXI6IG9pZFslZF0gPSAlcyA+PSAlcyA9IG9pZFslZF0iCittc2dzdHIgIm9pZCBhcmFtYXPEsSBzxLFyYXPEsXo6IG9pZFslZF0gPSAlcyA+PSAlcyA9IG9pZFslZF0iCisKKyM6IG1pZHguYzoxMTU3Cittc2dpZCAiU29ydGluZyBvYmplY3RzIGJ5IHBhY2tmaWxlIgorbXNnc3RyICJOZXNuZWxlciBwYWtldCBkb3N5YXPEsW5hIGfDtnJlIHPEsXJhbGFuxLF5b3IiCisKKyM6IG1pZHguYzoxMTY0Cittc2dpZCAiVmVyaWZ5aW5nIG9iamVjdCBvZmZzZXRzIgorbXNnc3RyICJOZXNuZSBvZnNldGxlcmkgZG/En3J1bGFuxLF5b3IiCisKKyM6IG1pZHguYzoxMTgwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsb2FkIHBhY2sgZW50cnkgZm9yIG9pZFslZF0gPSAlcyIKK21zZ3N0ciAixZ91bnVuIGnDp2luIHBha2V0IGdpcmRpc2kgecO8a2xlbmVtZWRpOiBvaWRbJWRdID0gJXMiCisKKyM6IG1pZHguYzoxMTg2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsb2FkIHBhY2staW5kZXggZm9yIHBhY2tmaWxlICVzIgorbXNnc3RyICJwYWtldCBkb3N5YXPEsSAlcyBpw6dpbiBwYWNrLWluZGV4IHnDvGtsZW5lbWVkaSIKKworIzogbWlkeC5jOjExOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5jb3JyZWN0IG9iamVjdCBvZmZzZXQgZm9yIG9pZFslZF0gPSAlczogJTxQUkl4NjQ+ICE9ICU8UFJJeDY0PiIKK21zZ3N0ciAixZ91bnVuIGnDp2luIHlhbmzEscWfIG5lc25lIG9mc2V0aTogb2lkWyVkXSA9ICVzOiAlPFBSSXg2ND4gIT0gJTxQUkl4NjQ+IgorCisjOiBtaWR4LmM6MTIyMAorbXNnaWQgIkNvdW50aW5nIHJlZmVyZW5jZWQgb2JqZWN0cyIKK21zZ3N0ciAiQmHFn3Z1cnVsbXXFnyBuZXNuZWxlciBzYXnEsWzEsXlvciIKKworIzogbWlkeC5jOjEyMzAKK21zZ2lkICJGaW5kaW5nIGFuZCBkZWxldGluZyB1bnJlZmVyZW5jZWQgcGFja2ZpbGVzIgorbXNnc3RyICJCYcWfdnVydWxtYW3EscWfIHBha2V0IGRvc3lhbGFyxLEgYnVsdW51eW9yIHZlIHNpbGluaXlvciIKKworIzogbWlkeC5jOjEzODgKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgcGFjay1vYmplY3RzIgorbXNnc3RyICJwYWNrLW9iamVjdHMgYmHFn2xhdMSxbGFtYWTEsSIKKworIzogbWlkeC5jOjE0MDcKK21zZ2lkICJjb3VsZCBub3QgZmluaXNoIHBhY2stb2JqZWN0cyIKK21zZ3N0ciAicGFjay1vYmplY3RzIGJpdGlyaWxlbWVkaSIKKworIzogbmFtZS1oYXNoLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbGF6eV9kaXIgdGhyZWFkOiAlcyIKK21zZ3N0ciAibGF6eV9kaXIgacWfIHBhcsOnYWPEscSfxLEgb2x1xZ90dXJ1bGFtxLF5b3I6ICVzIgorCisjOiBuYW1lLWhhc2guYzo1NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsYXp5X25hbWUgdGhyZWFkOiAlcyIKK21zZ3N0ciAibGF6eV9uYW1lIG9sdcWfdHVydWxhbcSxeW9yOiAlcyIKKworIzogbmFtZS1oYXNoLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBqb2luIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgorbXNnc3RyICJsYXp5X25hbWUgacWfIHBhcsOnYWPEscSfxLEgdWN1IGJpcmxlxZ90aXJpbGVtaXlvcjogJXMiCisKKyM6IG5vdGVzLW1lcmdlLmM6Mjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgcHJldmlvdXMgbm90ZXMgbWVyZ2UgKCVzIGV4aXN0cykuXG4iCisiUGxlYXNlLCB1c2UgJ2dpdCBub3RlcyBtZXJnZSAtLWNvbW1pdCcgb3IgJ2dpdCBub3RlcyBtZXJnZSAtLWFib3J0JyB0byAiCisiY29tbWl0L2Fib3J0IHRoZSBwcmV2aW91cyBtZXJnZSBiZWZvcmUgeW91IHN0YXJ0IGEgbmV3IG5vdGVzIG1lcmdlLiIKK21zZ3N0ciAiIgorIkJpciDDtm5jZWtpIG5vdCBiaXJsZcWfdGlybWVuaXppIHNvbnXDp2xhbmTEsXJtYWTEsW7EsXogKCVzIHZhcikuXG4iCisiTMO8dGZlbiBiYcWfa2EgYmlyIG5vdCBiaXJsZcWfdGlybWVzaW5lIGJhxZ9sYW1hZGFuIMO2bmNlICdnaXQgbm90ZXMgbWVyZ2UgLS0iCisiY29tbWl0JyB2ZXlhICdnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCcga3VsbGFuYXJhayBiaXIgw7ZuY2VraSBiaXJsZcWfdGlybWV5aSAiCisiZ8O2bmRlcmluL2R1cmR1cnVuLiIKKworIzogbm90ZXMtbWVyZ2UuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG5vdGVzIG1lcmdlICglcyBleGlzdHMpLiIKK21zZ3N0ciAiTm90bGFyIGJpcmxlxZ90aXJtZW5pemkgc29udcOnbGFuZMSxcm1hZMSxbsSxeiAoJXMgdmFyKS4iCisKKyM6IG5vdGVzLXV0aWxzLmM6NDYKK21zZ2lkICJDYW5ub3QgY29tbWl0IHVuaW5pdGlhbGl6ZWQvdW5yZWZlcmVuY2VkIG5vdGVzIHRyZWUiCittc2dzdHIgIsSwbGtsZW5kaXJpbG1lbWnFny9CYcWfdnVydWxtYW3EscWfIG5vdCBhxJ9hY8SxIGfDtm5kZXJpbGVtaXlvciIKKworIzogbm90ZXMtdXRpbHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmFkIG5vdGVzLnJld3JpdGVNb2RlIHZhbHVlOiAnJXMnIgorbXNnc3RyICJIYXRhbMSxIG5vdGVzLnJld3JpdGVNb2RlIGRlxJ9lcmk6ICclcyciCisKKyM6IG5vdGVzLXV0aWxzLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlZnVzaW5nIHRvIHJld3JpdGUgbm90ZXMgaW4gJXMgKG91dHNpZGUgb2YgcmVmcy9ub3Rlcy8pIgorbXNnc3RyICIlcyBpw6dpbmRla2kgbm90bGFyxLEgeWVuaWRlbiB5YXptYSByZWRkZWRpbGl5b3IgKHJlZnMvbm90ZXMvIGTEscWfxLFuZGEpIgorCisjLiBUUkFOU0xBVE9SUzogVGhlIGZpcnN0ICVzIGlzIHRoZSBuYW1lIG9mCisjLiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUsIHRoZSBzZWNvbmQgJXMgaXMKKyMuIGl0cyB2YWx1ZS4KKyMuCisjOiBub3Rlcy11dGlscy5jOjE0NQorIywgYy1mb3JtYXQKK21zZ2lkICJCYWQgJXMgdmFsdWU6ICclcyciCittc2dzdHIgIkhhdGFsxLEgJXMgZGXEn2VyaTogJyVzJyIKKworIzogb2JqZWN0LmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBvYmplY3QgdHlwZSBcIiVzXCIiCittc2dzdHIgImdlw6dlcnNpeiBuZXNuZSB0w7xyw7wgXCIlc1wiIgorCisjOiBvYmplY3QuYzoxNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0ICVzIGlzIGEgJXMsIG5vdCBhICVzIgorbXNnc3RyICIlcyBuZXNuZXNpIGJpciAlcywgJXMgZGXEn2lsIgorCisjOiBvYmplY3QuYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0ICVzIGhhcyB1bmtub3duIHR5cGUgaWQgJWQiCittc2dzdHIgIiVzIG5lc25lc2kgJWQgYmlsaW5tZXllbiB0w7xyIG51bWFyYXPEsW5hIGl5ZSIKKworIzogb2JqZWN0LmM6MjQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBvYmplY3Q6ICVzIgorbXNnc3RyICJuZXNuZSBheXLEscWfdMSxcsSxbGFtxLF5b3I6ICVzIgorCisjOiBvYmplY3QuYzoyNjYgb2JqZWN0LmM6Mjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImhhc2ggbWlzbWF0Y2ggJXMiCittc2dzdHIgInNhxJ9sYW1hIHV5dcWfbWF6bMSxxJ/EsSAlcyIKKworIzogcGFja2ZpbGUuYzo2MjkKK21zZ2lkICJvZmZzZXQgYmVmb3JlIGVuZCBvZiBwYWNrZmlsZSAoYnJva2VuIC5pZHg/KSIKK21zZ3N0ciAib2ZzZXQgcGFrZXQgZG9zeWFzxLFuxLFuIHNvbnVuZGFuIMO2bmNlIChib3p1ayAuaWR4PykiCisKKyM6IHBhY2tmaWxlLmM6MTg5OQorIywgYy1mb3JtYXQKK21zZ2lkICJvZmZzZXQgYmVmb3JlIHN0YXJ0IG9mIHBhY2sgaW5kZXggZm9yICVzIChjb3JydXB0IGluZGV4PykiCittc2dzdHIgIm9mc2V0ICVzIGnDp2luIHBha2V0IGluZGVrc2luaW4gYmHFn2xhbmfEsWPEsW5kYW4gw7ZuY2UgKGhhc2FybMSxIGluZGVrcz8pIgorCisjOiBwYWNrZmlsZS5jOjE5MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Zmc2V0IGJleW9uZCBlbmQgb2YgcGFjayBpbmRleCBmb3IgJXMgKHRydW5jYXRlZCBpbmRleD8pIgorbXNnc3RyICJvZnNldCAlcyBpw6dpbiBwYWtldCBpbmRla3NpbmluIHNvbnVuZGFuIMO2dGVkZSAoa8SxcnDEsWxtxLHFnyBpbmRleD8pIgorCisjOiBwYWNrLWJpdG1hcC5jOjgwMCBwYWNrLWJpdG1hcC5jOjgwNiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGdldCBzaXplIG9mICVzIgorbXNnc3RyICIlcyBib3l1dHUgYWzEsW5hbcSxeW9yIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVxdWlyZXMgYSB2YWx1ZSIKK21zZ3N0ciAiJXMgYmlyIGRlxJ9lciBnZXJla3Rpcml5b3IiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAlcyIKK21zZ3N0ciAiJXMsICVzIGlsZSB1eXVtc3V6IgorCisjOiBwYXJzZS1vcHRpb25zLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgOiBpbmNvbXBhdGlibGUgd2l0aCBzb21ldGhpbmcgZWxzZSIKK21zZ3N0ciAiJXM6IGJhxZ9rYSBiaXIgxZ9leWxlIHV5dW1zdXoiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MiBwYXJzZS1vcHRpb25zLmM6OTYgcGFyc2Utb3B0aW9ucy5jOjMxNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0YWtlcyBubyB2YWx1ZSIKK21zZ3N0ciAiJXMgYmlyIGRlxJ9lciBhbG3EsXlvciIKKworIzogcGFyc2Utb3B0aW9ucy5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzbid0IGF2YWlsYWJsZSIKK21zZ3N0ciAiJXMga3VsbGFuxLFsYWJpbGlyIGRlxJ9pbCIKKworIzogcGFyc2Utb3B0aW9ucy5jOjIxNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIGEgbm9uLW5lZ2F0aXZlIGludGVnZXIgdmFsdWUgd2l0aCBhbiBvcHRpb25hbCBrL20vZyBzdWZmaXgiCittc2dzdHIgIiVzIG5lZ2F0aWYgb2xtYXlhbiBiaXIgdGFtc2F5xLEgYmVrbGl5b3IsIGlzdGXEn2UgYmHEn2zEsSBrL20vZyBla2kgaWxlIgorCisjOiBwYXJzZS1vcHRpb25zLmM6Mzg2CisjLCBjLWZvcm1hdAorbXNnaWQgImFtYmlndW91cyBvcHRpb246ICVzIChjb3VsZCBiZSAtLSVzJXMgb3IgLS0lcyVzKSIKK21zZ3N0ciAiYmVsaXJzaXogc2XDp2VuZWs6ICVzICgtLSVzJXMgdmV5YSAtLSVzJXMgb2xhYmlsaXIpIgorCisjOiBwYXJzZS1vcHRpb25zLmM6NDIwIHBhcnNlLW9wdGlvbnMuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIHlvdSBtZWFuIGAtLSVzYCAod2l0aCB0d28gZGFzaGVzKT8iCittc2dzdHIgIsWfdW51IG11IGRlbWVrIGlzdGVkaW5pejogJy0tJXMnIChpa2kgdGlyZSBpbGUpPyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJiaWxpbm1leWVuIHNlw6dlbmVrICclcyciCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBzd2l0Y2ggYCVjJyIKK21zZ3N0ciAiYmlsaW5tZXllbiBhbmFodGFyICclYyciCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBub24tYXNjaWkgb3B0aW9uIGluIHN0cmluZzogYCVzJyIKK21zZ3N0ciAiZGl6aSBpw6dpbmRlIGJpbGlubWV5ZW4gYXNjaWkgZMSxxZ/EsSBzZcOnZW5lazogJyVzJyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg4NQorbXNnaWQgIi4uLiIKK21zZ3N0ciAiLi4uIgorCisjOiBwYXJzZS1vcHRpb25zLmM6OTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVzYWdlOiAlcyIKK21zZ3N0ciAia3VsbGFuxLFtOiAlcyIKKworIy4gVFJBTlNMQVRPUlM6IHRoZSBjb2xvbiBoZXJlIHNob3VsZCBhbGlnbiB3aXRoIHRoZQorIy4gb25lIGluICJ1c2FnZTogJXMiIHRyYW5zbGF0aW9uLgorIy4KKyM6IHBhcnNlLW9wdGlvbnMuYzo5MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgb3I6ICVzIgorbXNnc3RyICIgICAgdmV5YTogJXMiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo5MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICVzIgorbXNnc3RyICIgICAgJXMiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo5NTIKK21zZ2lkICItTlVNIgorbXNnc3RyICItU0FZSSIKKworIzogcGFyc2Utb3B0aW9ucy5jOjk2NgorIywgYy1mb3JtYXQKK21zZ2lkICJhbGlhcyBvZiAtLSVzIgorbXNnc3RyICLFn3VudW4gYXJtYXPEsTogLS0lcyIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjIwIHBhcnNlLW9wdGlvbnMtY2IuYzoyNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICInJXMnIHNlw6dlbmXEn2kgc2F5xLFzYWwgYmlyIGRlxJ9lciBiZWtsaXlvciIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBleHBpcmF0aW9uIGRhdGUgJyVzJyIKK21zZ3N0ciAiaGF0YWzEsSBvbHXFn3R1cnVsbXXFnyBzb24ga3VsbGFuxLFtIHRhcmloaSAnJXMnIgorCisjOiBwYXJzZS1vcHRpb25zLWNiLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBcImFsd2F5c1wiLCBcImF1dG9cIiwgb3IgXCJuZXZlclwiIgorbXNnc3RyICInJXMnIHNlw6dlbmXEn2kgXCJhbHdheXNcIiwgXCJhdXRvXCIgdmV5YSBcIm5ldmVyXCIgYmVrbGl5b3IiCisKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzoxMzAgcGFyc2Utb3B0aW9ucy1jYi5jOjE0NworIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IG5hbWUgJyVzJyIKK21zZ3N0ciAiaGF0YWzEsSBvbHXFn3R1cnVsbXXFnyBuZXNuZSBhZMSxICclcyciCisKKyM6IHBhdGguYzo5MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IG1ha2UgJXMgd3JpdGFibGUgYnkgZ3JvdXAiCittc2dzdHIgIiVzIGdydXAgaWxlIHlhesSxbGFiaWxpciB5YXDEsWxhbWFkxLEiCisKKyM6IHBhdGhzcGVjLmM6MTMwCittc2dpZCAiRXNjYXBlIGNoYXJhY3RlciAnXFwnIG5vdCBhbGxvd2VkIGFzIGxhc3QgY2hhcmFjdGVyIGluIGF0dHIgdmFsdWUiCittc2dzdHIgIkthw6fEscWfIGthcmFrdGVyaSAnXFwnIGF0dHIgZGXEn2VyaW5kZWtpIHNvbiBrYXJha3RlciBvbGFyYWsga3VsbGFuxLFsYW1heiIKKworIzogcGF0aHNwZWMuYzoxNDgKK21zZ2lkICJPbmx5IG9uZSAnYXR0cjonIHNwZWNpZmljYXRpb24gaXMgYWxsb3dlZC4iCittc2dzdHIgIllhbG7EsXpjYSBiaXIgJ2F0dHI6JyBiZWxpcnRpbWluZSBpemluIHZlcmlsaXIuIgorCisjOiBwYXRoc3BlYy5jOjE1MQorbXNnaWQgImF0dHIgc3BlYyBtdXN0IG5vdCBiZSBlbXB0eSIKK21zZ3N0ciAiYXR0ciBiZWxpcnRlY2kgYm/FnyBvbG1hbWFsxLEiCisKKyM6IHBhdGhzcGVjLmM6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgYXR0cmlidXRlIG5hbWUgJXMiCittc2dzdHIgImdlw6dlcnNpeiDDtnpuaXRlbGlrIGFkxLEgJXMiCisKKyM6IHBhdGhzcGVjLmM6MjU5Cittc2dpZCAiZ2xvYmFsICdnbG9iJyBhbmQgJ25vZ2xvYicgcGF0aHNwZWMgc2V0dGluZ3MgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiZ2xvYmFsICdnbG9iJyB2ZSAnbm9nbG9iJyB5b2wgYmVsaXJ0ZWNpIGF5YXJsYXLEsSBiaXJiaXJpeWxlIHV5dW1zdXoiCisKKyM6IHBhdGhzcGVjLmM6MjY2Cittc2dpZCAiIgorImdsb2JhbCAnbGl0ZXJhbCcgcGF0aHNwZWMgc2V0dGluZyBpcyBpbmNvbXBhdGlibGUgd2l0aCBhbGwgb3RoZXIgZ2xvYmFsICIKKyJwYXRoc3BlYyBzZXR0aW5ncyIKK21zZ3N0ciAiIgorImdsb2JhbCAnbGl0ZXJhbCcgeW9sIGJlbGlydGVjaSBheWFyxLEgZGnEn2VyIHTDvG0gZ2xvYmFsIHlvbCBiZWxpcnRlY2kgIgorImF5YXJsYXLEsXlsYSB1eXVtc3V6IgorCisjOiBwYXRoc3BlYy5jOjMwNgorbXNnaWQgImludmFsaWQgcGFyYW1ldGVyIGZvciBwYXRoc3BlYyBtYWdpYyAncHJlZml4JyIKK21zZ3N0ciAieW9sIGJlbGlydGVjaSBzaWhyaSAncHJlZml4JyBpw6dpbiBnZcOnZXJzaXogcGFyYW1ldHJlIgorCisjOiBwYXRoc3BlYy5jOjMyNworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHBhdGhzcGVjIG1hZ2ljICclLipzJyBpbiAnJXMnIgorbXNnc3RyICJHZcOnZXJzaXogeW9sIGJlbGlydGVjaSBzaWhyaSAnJS4qcycgKCVzIGnDp2luZGUpIgorCisjOiBwYXRoc3BlYy5jOjMzMgorIywgYy1mb3JtYXQKK21zZ2lkICJNaXNzaW5nICcpJyBhdCB0aGUgZW5kIG9mIHBhdGhzcGVjIG1hZ2ljIGluICclcyciCittc2dzdHIgIiclcycgacOnaW5kZWtpIHlvbCBiZWxpcnRlY2kgc2locmluaW4gc29udW5kYSBla3NpayAnKSciCisKKyM6IHBhdGhzcGVjLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgIlVuaW1wbGVtZW50ZWQgcGF0aHNwZWMgbWFnaWMgJyVjJyBpbiAnJXMnIgorbXNnc3RyICJZZXJpbmUgZ2V0aXJpbG1lbWnFnyB5b2wgYmVsaXJ0ZWNpIHNpaHJpICclYycgKCclcycgacOnaW5kZSkiCisKKyM6IHBhdGhzcGVjLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiAnbGl0ZXJhbCcgYW5kICdnbG9iJyBhcmUgaW5jb21wYXRpYmxlIgorbXNnc3RyICIlczogJ2xpdGVyYWwnIHZlICdnbG9iJyBiaXJiaXJpeWxlIHV5dW1zdXoiCisKKyM6IHBhdGhzcGVjLmM6NDQyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiAnJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSBhdCAnJXMnIgorbXNnc3RyICIlczogJyVzJywgJyVzJyBrb251bXVuZGEgZGVwbyBkxLHFn8SxbmRhIgorCisjOiBwYXRoc3BlYy5jOjUxNworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIChtbmVtb25pYzogJyVjJykiCittc2dzdHIgIiclcycgKGJlbGxldGVuOiAnJWMnKSIKKworIzogcGF0aHNwZWMuYzo1MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHBhdGhzcGVjIG1hZ2ljIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBjb21tYW5kOiAlcyIKK21zZ3N0ciAiJXM6IHlvbCBiZWxpcnRlY2kgc2locmkgYnUga29tdXQgdGFyYWbEsW5kYW4gZGVzdGVrbGVubWl5b3I6ICVzIgorCisjOiBwYXRoc3BlYy5jOjU5NAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoc3BlYyAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCittc2dzdHIgInlvbCBiZWxpcnRlY2kgJyVzJyBiaXIgc2VtYm9saWsgYmHEn8SxbiDDtnRlc2luZGUiCisKKyM6IHBhdGhzcGVjLmM6NjM5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgaXMgYmFkbHkgcXVvdGVkOiAlcyIKK21zZ3N0ciAic2F0xLFyZGEgaGF0YWzEsSB0xLFybmFrbGFyOiAlcyIKKworIzogcGt0LWxpbmUuYzo5MgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmbHVzaCBwYWNrZXQiCittc2dzdHIgImZsb8WfIHBha2V0aSB5YXrEsWxhbcSxeW9yIgorCisjOiBwa3QtbGluZS5jOjk5Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGRlbGltIHBhY2tldCIKK21zZ3N0ciAic8SxbsSxcmxhbmTEsXJhbiBwYWtldCB5YXrEsWxhbcSxeW9yIgorCisjOiBwa3QtbGluZS5jOjEwNgorbXNnaWQgImZsdXNoIHBhY2tldCB3cml0ZSBmYWlsZWQiCittc2dzdHIgImZsb8WfIHBha2V0aSB5YXrEsW3EsSBiYcWfYXLEsXPEsXoiCisKKyM6IHBrdC1saW5lLmM6MTQ2IHBrdC1saW5lLmM6MjMyCittc2dpZCAicHJvdG9jb2wgZXJyb3I6IGltcG9zc2libHkgbG9uZyBsaW5lIgorbXNnc3RyICJwcm90b2tvbCBoYXRhc8SxOiBvbGFuYWtzxLF6IHV6dW4gc2F0xLFyIgorCisjOiBwa3QtbGluZS5jOjE2MiBwa3QtbGluZS5jOjE2NAorbXNnaWQgInBhY2tldCB3cml0ZSB3aXRoIGZvcm1hdCBmYWlsZWQiCittc2dzdHIgImJpw6dpbWxlbmRpcmlsbWnFnyBwYWtldCB5YXrEsW3EsSBiYcWfYXLEsXPEsXoiCisKKyM6IHBrdC1saW5lLmM6MTk2Cittc2dpZCAicGFja2V0IHdyaXRlIGZhaWxlZCAtIGRhdGEgZXhjZWVkcyBtYXggcGFja2V0IHNpemUiCittc2dzdHIgInBha2V0IHlhesSxbcSxIGJhxZ9hcsSxc8SxeiAtIHZlcmkgb2xhYmlsZWNlayBlbiDDp29rIHBha2V0IGJveXV0dW51IGHFn8SxeW9yIgorCisjOiBwa3QtbGluZS5jOjIwMyBwa3QtbGluZS5jOjIxMAorbXNnaWQgInBhY2tldCB3cml0ZSBmYWlsZWQiCittc2dzdHIgInBha2V0IHlhesSxbcSxIGJhxZ9hcsSxc8SxeiIKKworIzogcGt0LWxpbmUuYzoyOTUKK21zZ2lkICJyZWFkIGVycm9yIgorbXNnc3RyICJva3VtYSBoYXRhc8SxIgorCisjOiBwa3QtbGluZS5jOjMwMworbXNnaWQgInRoZSByZW1vdGUgZW5kIGh1bmcgdXAgdW5leHBlY3RlZGx5IgorbXNnc3RyICJ1emFrIGtvbnVtIGJla2xlbm1lZGlrIGJpw6dpbWRlIGhhdHTEsSBrYXBhdHTEsSIKKworIzogcGt0LWxpbmUuYzozMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBsaW5lIGxlbmd0aCBjaGFyYWN0ZXI6ICUuNHMiCittc2dzdHIgInByb3Rva29sIGhhdGFzxLE6IGhhdGFsxLEgc2F0xLFyIHV6dW5sdcSfdSBrYXJha3Rlcmk6ICUuNHMiCisKKyM6IHBrdC1saW5lLmM6MzQxIHBrdC1saW5lLmM6MzQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInByb3RvY29sIGVycm9yOiBiYWQgbGluZSBsZW5ndGggJWQiCittc2dzdHIgInByb3Rva29sIGhhdGFzxLE6IGhhdGFsxLEgc2F0xLFyIHV6dW5sdcSfdSAlZCIKKworIzogcGt0LWxpbmUuYzozNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlIGVycm9yOiAlcyIKK21zZ3N0ciAidXphayBrb251bSBoYXRhc8SxOiAlcyIKKworIzogcHJlbG9hZC1pbmRleC5jOjExOQorbXNnaWQgIlJlZnJlc2hpbmcgaW5kZXgiCittc2dzdHIgIsSwbmRla3MgeWVuaWxlbml5b3IiCisKKyM6IHByZWxvYWQtaW5kZXguYzoxMzgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0aHJlYWRlZCBsc3RhdDogJXMiCittc2dzdHIgImnFnyBwYXLDp2FjxLFrbGFyxLFuYSBheXLEsWxtxLHFnyAnbHN0YXQnIG9sdcWfdHVydWxhbcSxeW9yOiAlcyIKKworIzogcHJldHR5LmM6OTgxCittc2dpZCAidW5hYmxlIHRvIHBhcnNlIC0tcHJldHR5IGZvcm1hdCIKK21zZ3N0ciAiLS1wcmV0dHkgYmnDp2ltaSBheXLEscWfdMSxcsSxbGFtxLF5b3IiCisKKyM6IHByb21pc29yLXJlbW90ZS5jOjIzCittc2dpZCAiUmVtb3RlIHdpdGggbm8gVVJMIgorbXNnc3RyICJVUkwnc2kgb2xtYXlhbiB1emFrIGtvbnVtIgorCisjOiBwcm9taXNvci1yZW1vdGUuYzo1OAorIywgYy1mb3JtYXQKK21zZ2lkICJwcm9taXNvciByZW1vdGUgbmFtZSBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIgorbXNnc3RyICJ2YWF0w6dpIHV6YWsga29udW0gYWTEsSAnLycgaWxlIGJhxZ9sYXlhbWF6OiAlcyIKKworIzogcmFuZ2UtZGlmZi5jOjc1Cittc2dpZCAiY291bGQgbm90IHN0YXJ0IGBsb2dgIgorbXNnc3RyICInbG9nJyBiYcWfbGF0xLFsYW1hZMSxIgorCisjOiByYW5nZS1kaWZmLmM6NzcKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBgbG9nYCBvdXRwdXQiCittc2dzdHIgIidsb2cnIMOnxLFrdMSxc8SxIG9rdW5hbWFkxLEiCisKKyM6IHJhbmdlLWRpZmYuYzo5NiBzZXF1ZW5jZXIuYzo1MDIwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgJyVzJyIKK21zZ3N0ciAiJyVzJyBnw7ZuZGVyaXNpIGF5csSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiByYW5nZS1kaWZmLmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBnaXQgaGVhZGVyICclLipzJyIKK21zZ3N0ciAiZ2l0IMO8c3RiaWxnaXNpICclLipzJyBheXLEscWfdMSxcsSxbGFtYWTEsSIKKworIzogcmFuZ2UtZGlmZi5jOjI4NQorbXNnaWQgImZhaWxlZCB0byBnZW5lcmF0ZSBkaWZmIgorbXNnc3RyICJkaWZmIG9sdcWfdHVydWxhbWFkxLEiCisKKyM6IHJhbmdlLWRpZmYuYzo1MTggcmFuZ2UtZGlmZi5jOjUyMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgbG9nIGZvciAnJXMnIgorbXNnc3RyICInJXMnIGfDvG5sw7zEn8O8IGF5csSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiByZWFkLWNhY2hlLmM6NjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIndpbGwgbm90IGFkZCBmaWxlIGFsaWFzICclcycgKCclcycgYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgpIgorbXNnc3RyICJkb3N5YSBhcm1hc8SxICclcycgZWtsZW5tZXllY2VrICgnJXMnIGluZGVrc3RlIGhhbGloYXrEsXJkYSB2YXIpIgorCisjOiByZWFkLWNhY2hlLmM6Njk2Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBhbiBlbXB0eSBibG9iIGluIHRoZSBvYmplY3QgZGF0YWJhc2UiCittc2dzdHIgIm5lc25lIHZlcml0YWJhbsSxbmRhIGJvxZ8gaWtpbGkgYmlyIG5lc25lIG9sdcWfdHVydWxhbcSxeW9yIgorCisjOiByZWFkLWNhY2hlLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW4gb25seSBhZGQgcmVndWxhciBmaWxlcywgc3ltYm9saWMgbGlua3Mgb3IgZ2l0LWRpcmVjdG9yaWVzIgorbXNnc3RyICIiCisiJXM6IHlhbG7EsXpjYSBzxLFyYWRhbiBkb3N5YWxhciwgc2VtYm9saWsgYmHEn2xhciB2ZSBnaXQgZGl6aW5sZXJpIGVrbGVuZWJpbGlyIgorCisjOiByZWFkLWNhY2hlLmM6NzIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgaGF2ZSBhIGNvbW1pdCBjaGVja2VkIG91dCIKK21zZ3N0ciAiJyVzJyDDp8Sxa8SxxZ/EsSB5YXDEsWxtxLHFnyBiaXIgZ8O2bmRlcml5ZSBpeWUgZGXEn2lsIgorCisjOiByZWFkLWNhY2hlLmM6Nzc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbmRleCBmaWxlICclcyciCittc2dzdHIgIiclcycgZG9zeWFzxLEgaW5kZWtzbGVuZW1peW9yIgorCisjOiByZWFkLWNhY2hlLmM6Nzk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhZGQgJyVzJyB0byBpbmRleCIKK21zZ3N0ciAiJyVzJyBpbmRla3NlIGVrbGVuZW1peW9yIgorCisjOiByZWFkLWNhY2hlLmM6ODA1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICclcyciCittc2dzdHIgIiclcycgZG9zeWFzxLFuxLFuIGJpbGdpbGVyaSBhbMSxbmFtxLF5b3IiCisKKyM6IHJlYWQtY2FjaGUuYzoxMzMwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgYXBwZWFycyBhcyBib3RoIGEgZmlsZSBhbmQgYXMgYSBkaXJlY3RvcnkiCittc2dzdHIgIiclcycgaGVtIGJpciBkb3N5YSBoZW0gZGUgYmlyIGRpemluIG9sYXJhayBnw7Zyw7xuw7x5b3IiCisKKyM6IHJlYWQtY2FjaGUuYzoxNTM2Cittc2dpZCAiUmVmcmVzaCBpbmRleCIKK21zZ3N0ciAixLBuZGVrc2kgeWVuaWxlIgorCisjOiByZWFkLWNhY2hlLmM6MTY1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5kZXgudmVyc2lvbiBzZXQsIGJ1dCB0aGUgdmFsdWUgaXMgaW52YWxpZC5cbiIKKyJVc2luZyB2ZXJzaW9uICVpIgorbXNnc3RyICIiCisiaW5kZXgudmVyc2lvbiBheWFybGFubcSxxZ8sIGFuY2FrIGRlxJ9lciBnZcOnZXJzaXouXG4iCisiJWkgc8O8csO8bcO8IGt1bGxhbsSxbMSxeW9yIgorCisjOiByZWFkLWNhY2hlLmM6MTY2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiR0lUX0lOREVYX1ZFUlNJT04gc2V0LCBidXQgdGhlIHZhbHVlIGlzIGludmFsaWQuXG4iCisiVXNpbmcgdmVyc2lvbiAlaSIKK21zZ3N0ciAiIgorIkdJVF9JTkRFWF9WRVJTSU9OIGF5YXJsYW5txLHFnywgYW5jYWsgZGXEn2VyIGdlw6dlcnNpei5cbiIKKyIlaSBzw7xyw7xtw7wga3VsbGFuxLFsxLF5b3IiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzE3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaWduYXR1cmUgMHglMDh4IgorbXNnc3RyICJoYXRhbMSxIGltemEgMHglMDh4IgorCisjOiByZWFkLWNhY2hlLmM6MTcyMAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgaW5kZXggdmVyc2lvbiAlZCIKK21zZ3N0ciAiaGF0YWzEsSBpbmRla3Mgc8O8csO8bcO8ICVkIgorCisjOiByZWFkLWNhY2hlLmM6MTcyOQorbXNnaWQgImJhZCBpbmRleCBmaWxlIHNoYTEgc2lnbmF0dXJlIgorbXNnc3RyICJoYXRhbMSxIGluZGVrcyBkb3N5YXPEsSBzaGExIGltemFzxLEiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzU5CisjLCBjLWZvcm1hdAorbXNnaWQgImluZGV4IHVzZXMgJS40cyBleHRlbnNpb24sIHdoaWNoIHdlIGRvIG5vdCB1bmRlcnN0YW5kIgorbXNnc3RyICJpbmRla3MgYml6aW0gYW5sYW1hZMSxxJ/EsW3EsXogJS40cyBpbXphc8SxIGt1bGxhbsSxeW9yIgorCisjOiByZWFkLWNhY2hlLmM6MTc2MQorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlLjRzIGV4dGVuc2lvbiIKK21zZ3N0ciAiJS40cyB1emFudMSxc8SxIHlvayBzYXnEsWzEsXlvciIKKworIzogcmVhZC1jYWNoZS5jOjE3OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBpbmRleCBlbnRyeSBmb3JtYXQgMHglMDh4IgorbXNnc3RyICJiaWxpbm1leWVuIGluZGVrcyBnaXJkaXNpIGJpw6dpbWkgMHglMDh4IgorCisjOiByZWFkLWNhY2hlLmM6MTgxNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgbmFtZSBmaWVsZCBpbiB0aGUgaW5kZXgsIG5lYXIgcGF0aCAnJXMnIgorbXNnc3RyICJpbmRla3N0ZSBoYXRhbMSxIG9sdcWfdHVydWxtdcWfIGFkIGFsYW7EsSwgJyVzJyB5b2x1IHlha8SxbsSxbmRhIgorCisjOiByZWFkLWNhY2hlLmM6MTg3MQorbXNnaWQgInVub3JkZXJlZCBzdGFnZSBlbnRyaWVzIGluIGluZGV4IgorbXNnc3RyICJpbmRla3N0ZSBzxLFyYXPEsXogaGF6xLFybGFtYSBhbGFuxLEgZ2lyZGlsZXJpIgorCisjOiByZWFkLWNhY2hlLmM6MTg3NAorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGFnZSBlbnRyaWVzIGZvciBtZXJnZWQgZmlsZSAnJXMnIgorbXNnc3RyICJiaXJsZcWfdGlyaWxtacWfIGRvc3lhICclcycgacOnaW4gw6dva2x1IGhhesSxcmxhbWEgYWxhbsSxIGdpcmRpbGVyaSIKKworIzogcmVhZC1jYWNoZS5jOjE4NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5vcmRlcmVkIHN0YWdlIGVudHJpZXMgZm9yICclcyciCittc2dzdHIgIiclcycgacOnaW4gc8SxcmFzxLF6IGhhesSxcmxhbWEgYWxhbsSxIGdpcmRpbGVyaSIKKworIzogcmVhZC1jYWNoZS5jOjE5ODMgcmVhZC1jYWNoZS5jOjIyNzEgcmVyZXJlLmM6NTY1IHJlcmVyZS5jOjU5OSByZXJlcmUuYzoxMTExCisjOiBzdWJtb2R1bGUuYzoxNjE5IGJ1aWx0aW4vYWRkLmM6NTMyIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTgxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDcwIGJ1aWx0aW4vY2hlY2tvdXQuYzo2NTYgYnVpbHRpbi9jbGVhbi5jOjk2NworIzogYnVpbHRpbi9jb21taXQuYzozNjcgYnVpbHRpbi9kaWZmLXRyZWUuYzoxMjAgYnVpbHRpbi9ncmVwLmM6NDg1CisjOiBidWlsdGluL212LmM6MTQ1IGJ1aWx0aW4vcmVzZXQuYzoyNDYgYnVpbHRpbi9ybS5jOjI5MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjMzMgorbXNnaWQgImluZGV4IGZpbGUgY29ycnVwdCIKK21zZ3N0ciAiaW5kZWtzIGRvc3lhc8SxIGhhc2FyIGfDtnJtw7zFnyIKKworIzogcmVhZC1jYWNoZS5jOjIxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsb2FkX2NhY2hlX2VudHJpZXMgdGhyZWFkOiAlcyIKK21zZ3N0ciAibG9hZF9jYWNoZV9lbnRyaWVzIGnFnyBwYXLDp2FjxLHEn8SxIG9sdcWfdHVydWxhbcSxeW9yOiAlcyIKKworIzogcmVhZC1jYWNoZS5jOjIxMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGpvaW4gbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCittc2dzdHIgImxvYWRfY2FjaGVfZW50cmllcyBpxZ8gcGFyw6dhY8SxxJ/EsSB1Y3UgYmlybGXFn3RpcmlsZW1peW9yOiAlcyIKKworIzogcmVhZC1jYWNoZS5jOjIxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGluZGV4IGZpbGUgb3BlbiBmYWlsZWQiCittc2dzdHIgIiVzOiBpbmRla3MgZG9zeWFzxLEgYcOnxLFsYW1hZMSxIgorCisjOiByZWFkLWNhY2hlLmM6MjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2Fubm90IHN0YXQgdGhlIG9wZW4gaW5kZXgiCittc2dzdHIgIiVzOiBhw6fEsWsgaW5kZWtzaW4gYmlsZ2lsZXJpIGFsxLFuYW3EsXlvciIKKworIzogcmVhZC1jYWNoZS5jOjIxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGluZGV4IGZpbGUgc21hbGxlciB0aGFuIGV4cGVjdGVkIgorbXNnc3RyICIlczogaW5kZWtzIGRvc3lhc8SxIGJla2xlbmVuZGVuIGRhaGEga8O8w6fDvGsiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gbWFwIGluZGV4IGZpbGUiCittc2dzdHIgIiVzOiBpbmRla3MgZG9zeWFzxLEgZcWfbGVtbGVuZW1peW9yIgorCisjOiByZWFkLWNhY2hlLmM6MjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxvYWRfaW5kZXhfZXh0ZW5zaW9ucyB0aHJlYWQ6ICVzIgorbXNnc3RyICJsb2FkX2luZGV4X2V4dGVuc2lvbnMgacWfIHBhcsOnYWPEscSfxLEgb2x1xZ90dXJ1bGFtxLF5b3I6ICVzIgorCisjOiByZWFkLWNhY2hlLmM6MjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gam9pbiBsb2FkX2luZGV4X2V4dGVuc2lvbnMgdGhyZWFkOiAlcyIKK21zZ3N0ciAibG9hZF9pbmRleF9leHRlbnNpb25zIGnFnyBwYXLDp2FjxLHEn8SxIHVjdSBiaXJsZcWfdGlyaWxlbWl5b3I6ICVzIgorCisjOiByZWFkLWNhY2hlLmM6MjI4MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZnJlc2hlbiBzaGFyZWQgaW5kZXggJyVzJyIKK21zZ3N0ciAicGF5bGHFn8SxbGFuIGluZGVrcyAnJXMnIHRhemVsZW5lbWVkaSIKKworIzogcmVhZC1jYWNoZS5jOjIzMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYnJva2VuIGluZGV4LCBleHBlY3QgJXMgaW4gJXMsIGdvdCAlcyIKK21zZ3N0ciAiYm96dWsgaW5kZWtzLCAlcyBiZWtsZW5peW9yZHUgKCVzIGnDp2luZGUpLCAlcyBhbMSxbmTEsSIKKworIzogcmVhZC1jYWNoZS5jOjMwMjYgc3RyYnVmLmM6MTE2MCB3cmFwcGVyLmM6NjIyIGJ1aWx0aW4vbWVyZ2UuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjbG9zZSAnJXMnIgorbXNnc3RyICInJXMnIGthcGF0xLFsYW1hZMSxIgorCisjOiByZWFkLWNhY2hlLmM6MzEyOSBzZXF1ZW5jZXIuYzoyMzQzIHNlcXVlbmNlci5jOjM5NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgJyVzJyIKK21zZ3N0ciAiJyVzJyBiaWxnaWxlcmkgYWzEsW5hbWFkxLEiCisKKyM6IHJlYWQtY2FjaGUuYzozMTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGdpdCBkaXI6ICVzIgorbXNnc3RyICJnaXQgZGl6aW5pIGHDp8SxbGFtxLF5b3I6ICVzIgorCisjOiByZWFkLWNhY2hlLmM6MzE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdW5saW5rOiAlcyIKK21zZ3N0ciAiYmHEn2xhbnTEsSBrZXNpbGVtaXlvcjogJXMiCisKKyM6IHJlYWQtY2FjaGUuYzozMTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmaXggcGVybWlzc2lvbiBiaXRzIG9uICclcyciCittc2dzdHIgIiclcycgw7x6ZXJpbmRla2kgaXppbiBiaXRsZXJpIG9uYXLEsWxhbcSxeW9yIgorCisjOiByZWFkLWNhY2hlLmM6MzMyOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2Fubm90IGRyb3AgdG8gc3RhZ2UgIzAiCittc2dzdHIgIiVzOiAjMCBudW1hcmFsxLEgaGF6xLFybGFtYSBhbGFuxLFuYSBixLFyYWvEsWxhbcSxeW9yIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMQorbXNnaWQgIiIKKyJZb3UgY2FuIGZpeCB0aGlzIHdpdGggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLSIKKyJjb250aW51ZScuXG4iCisiT3IgeW91IGNhbiBhYm9ydCB0aGUgcmViYXNlIHdpdGggJ2dpdCByZWJhc2UgLS1hYm9ydCcuXG4iCittc2dzdHIgIiIKKyJCdW51ICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyBpbGUgZMO8emVsdGViaWxpciB2ZSBhcmTEsW5kYW4gJ2dpdCByZWJhc2UgLS0iCisiY29udGludWUnIHlhcGFiaWxpcnNpbml6LlxuIgorIlllbmlkZW4gdGVtZWxsZW5kaXJtZXlpIGR1cmR1cm1hayBpc3RlcnNlbml6ICdnaXQgcmViYXNlIC0tYWJvcnQnIHlhcMSxbi5cbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVucmVjb2duaXplZCBzZXR0aW5nICVzIGZvciBvcHRpb24gcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2suIElnbm9yaW5nLiIKK21zZ3N0ciAiIgorInJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrIHNlw6dlbmXEn2kgacOnaW4gdGFuxLFtbGFuYW1heWFuICVzIGF5YXLEsS4gWW9rICIKKyJzYXnEsWzEsXlvci4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQyCittc2dpZCAiIgorIlxuIgorIkNvbW1hbmRzOlxuIgorInAsIHBpY2sgPGNvbW1pdD4gPSB1c2UgY29tbWl0XG4iCisiciwgcmV3b3JkIDxjb21taXQ+ID0gdXNlIGNvbW1pdCwgYnV0IGVkaXQgdGhlIGNvbW1pdCBtZXNzYWdlXG4iCisiZSwgZWRpdCA8Y29tbWl0PiA9IHVzZSBjb21taXQsIGJ1dCBzdG9wIGZvciBhbWVuZGluZ1xuIgorInMsIHNxdWFzaCA8Y29tbWl0PiA9IHVzZSBjb21taXQsIGJ1dCBtZWxkIGludG8gcHJldmlvdXMgY29tbWl0XG4iCisiZiwgZml4dXAgPGNvbW1pdD4gPSBsaWtlIFwic3F1YXNoXCIsIGJ1dCBkaXNjYXJkIHRoaXMgY29tbWl0J3MgbG9nIG1lc3NhZ2VcbiIKKyJ4LCBleGVjIDxjb21tYW5kPiA9IHJ1biBjb21tYW5kICh0aGUgcmVzdCBvZiB0aGUgbGluZSkgdXNpbmcgc2hlbGxcbiIKKyJiLCBicmVhayA9IHN0b3AgaGVyZSAoY29udGludWUgcmViYXNlIGxhdGVyIHdpdGggJ2dpdCByZWJhc2UgLS1jb250aW51ZScpXG4iCisiZCwgZHJvcCA8Y29tbWl0PiA9IHJlbW92ZSBjb21taXRcbiIKKyJsLCBsYWJlbCA8bGFiZWw+ID0gbGFiZWwgY3VycmVudCBIRUFEIHdpdGggYSBuYW1lXG4iCisidCwgcmVzZXQgPGxhYmVsPiA9IHJlc2V0IEhFQUQgdG8gYSBsYWJlbFxuIgorIm0sIG1lcmdlIFstQyA8Y29tbWl0PiB8IC1jIDxjb21taXQ+XSA8bGFiZWw+IFsjIDxvbmVsaW5lPl1cbiIKKyIuICAgICAgIGNyZWF0ZSBhIG1lcmdlIGNvbW1pdCB1c2luZyB0aGUgb3JpZ2luYWwgbWVyZ2UgY29tbWl0J3NcbiIKKyIuICAgICAgIG1lc3NhZ2UgKG9yIHRoZSBvbmVsaW5lLCBpZiBubyBvcmlnaW5hbCBtZXJnZSBjb21taXQgd2FzXG4iCisiLiAgICAgICBzcGVjaWZpZWQpLiBVc2UgLWMgPGNvbW1pdD4gdG8gcmV3b3JkIHRoZSBjb21taXQgbWVzc2FnZS5cbiIKKyJcbiIKKyJUaGVzZSBsaW5lcyBjYW4gYmUgcmUtb3JkZXJlZDsgdGhleSBhcmUgZXhlY3V0ZWQgZnJvbSB0b3AgdG8gYm90dG9tLlxuIgorbXNnc3RyICIiCisiXG4iCisiS29tdXRsYXI6XG4iCisicCwgcGljayA8Z8O2bmRlcmk+ID0gZ8O2bmRlcml5aSBrdWxsYW5cbiIKKyJyLCByZXdvcmQgPGfDtm5kZXJpPiA9IGfDtm5kZXJpeWkga3VsbGFuLCBhbmNhayBnw7ZuZGVyaSBpbGV0aXNpbmkgZMO8emVubGVcbiIKKyJlLCBlZGl0IDxnw7ZuZGVyaT4gPSBnw7ZuZGVyaXlpIGt1bGxhbiwgYW5jYWsgZGXEn2nFn3Rpcm1layBpw6dpbiBkdXJcbiIKKyJzLCBzcXVhc2ggPGfDtm5kZXJpPiA9IGfDtm5kZXJpeWkga3VsbGFuLCBhbmNhayDDtm5jZWtpIGfDtm5kZXJpIGnDp2luZSBrYXLEscWfdMSxclxuIgorImYsIGZpeHVwIDxnw7ZuZGVyaT4gPSBcInNxdWFzaFwiIGdpYmksIGFuY2FrIGJ1IGfDtm5kZXJpbmluIGfDvG5sw7xrIGlsZXRpc2luaSAiCisiYXRcbiIKKyJ4LCBleGVjIDxrb211dD4gPSBrb211dHUgKHNhdMSxcsSxbiBnZXJpIGthbGFuxLEpIGthYnVrIGt1bGxhbmFyYWsgw6dhbMSxxZ90xLFyXG4iCisiYiwgYnJlYWsgPSBidXJhZGEgZHVyIChkYWhhIHNvbnJhIHPDvHJkw7xybWVrIGnDp2luICdnaXQgcmViYXNlIC0tY29udGludWUnKVxuIgorImQsIGRyb3AgPGfDtm5kZXJpPiA9IGfDtm5kZXJpeWkga2FsZMSxclxuIgorImwsIGxhYmVsIDxldGlrZXQ+ID0gZ2XDp2VybGkgSEVBRCdpIGJpciBhZCBpbGUgZXRpa2V0bGVcbiIKKyJ0LCByZXNldCA8ZXRpa2V0PiA9IEhFQUQnaSBiaXIgZXRpa2V0ZSBzxLFmxLFybGFcbiIKKyJtLCBtZXJnZSBbLUMgPGfDtm5kZXJpPiB8IC1jIDxnw7ZuZGVyaT5dIDxldGlrZXQ+IFsjIDx0ZWtzYXTEsXI+XVxuIgorIi4gICAgICAgb3JpamluYWwgYmlybGXFn3Rpcm1lIGfDtm5kZXJpc2kgaWxldGlzaW5pIGt1bGxhbmFyYWsgYmlyXG4iCisiLiAgICAgICBiaXJsZcWfdGlybWUgZ8O2bmRlcmlzaSBvbHXFn3R1ciAodmV5YSB0ZWtzYXTEsXIsIGXEn2VyIGJpciBvcmlqaW5hbFxuIgorIi4gICAgICAgYmlybGXFn3Rpcm1lIGfDtm5kZXJpc2kgYmVsaXJ0aWxtZW1pxZ9zZSkuIEfDtm5kZXJpIGlsZXRpc2luaSB5ZW5pZGVuXG4iCisiLiAgICAgICB5YXptYWsgacOnaW4gLWMgPGfDtm5kZXJpPiBrdWxsYW7EsW4uXG4iCisiXG4iCisiQnUgc2F0xLFybGFyIHllbmlkZW4gc8SxcmFsYW5hYmlsaXJsZXIsIHl1a2FyxLFkYW4gYcWfYcSfxLF5YSDDp2FsxLHFn3TEsXLEsWzEsXJsYXIuXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kKSIKK21zZ2lkX3BsdXJhbCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmRzKSIKK21zZ3N0clswXSAiJXMgw7ZnZXNpbmkgJXMgw7x6ZXJpbmUgeWVuaWRlbiB0ZW1lbGxlbmRpciAoJWQga29tdXQpIgorbXNnc3RyWzFdICIlcyDDtmdlc2luaSAlcyDDvHplcmluZSB5ZW5pZGVuIHRlbWVsbGVuZGlyICglZCBrb211dCkiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjcyIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMjgKK21zZ2lkICIiCisiXG4iCisiRG8gbm90IHJlbW92ZSBhbnkgbGluZS4gVXNlICdkcm9wJyBleHBsaWNpdGx5IHRvIHJlbW92ZSBhIGNvbW1pdC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkhpw6diaXIgc2F0xLFyxLEga2FsZMSxcm1hecSxbi4gQmlyIGfDtm5kZXJpeWkga2FsZMSxcm1hayBpw6dpbiAnZHJvcCd1IGHDp8Sxa8OnYSAiCisia3VsbGFuxLFuLlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3NSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjMyCittc2dpZCAiIgorIlxuIgorIklmIHlvdSByZW1vdmUgYSBsaW5lIGhlcmUgVEhBVCBDT01NSVQgV0lMTCBCRSBMT1NULlxuIgorbXNnc3RyICIiCisiXG4iCisiQnVyYWRha2kgYmlyIHNhdMSxcsSxIGthbGTEsXLEsXJzYW7EsXogTyBHw5ZOREVSxLAgVMOcTcOcWUxFIEtBWUJPTEFDQUsuXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjgxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NzEKK21zZ2lkICIiCisiXG4iCisiWW91IGFyZSBlZGl0aW5nIHRoZSB0b2RvIGZpbGUgb2YgYW4gb25nb2luZyBpbnRlcmFjdGl2ZSByZWJhc2UuXG4iCisiVG8gY29udGludWUgcmViYXNlIGFmdGVyIGVkaXRpbmcsIHJ1bjpcbiIKKyIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJTw7xybWVrdGUgb2xhbiBiaXIgZXRraWxlxZ9pbWxpIHllbmlkZW4gdGVtZWxsZW5kaXJtZW5pbiB5YXDEsWxhY2FrbGFyICIKKyJkb3N5YXPEsW7EsSBkw7x6ZW5sZW1la3Rlc2luaXouXG4iCisiRMO8emVubGVtZW5pbiBhcmTEsW5kYW4geWVuaWRlbiB0ZW1lbGxlbmRpcm1leWkgc8O8cmTDvHJtZWsgacOnaW4gxZ91bnUga3VsbGFuxLFuOlxuIgorIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCisiXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjg2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDgKK21zZ2lkICIiCisiXG4iCisiSG93ZXZlciwgaWYgeW91IHJlbW92ZSBldmVyeXRoaW5nLCB0aGUgcmViYXNlIHdpbGwgYmUgYWJvcnRlZC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIkXEn2VyIGtpLCBoZXIgxZ9leWkga2FsZMSxcsSxcnNhbsSxeiB5ZW5pZGVuIHRlbWVsbGVuZGlybWUgaXB0YWwgZWRpbGVjZWt0aXIuXG4iCisiXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjExMCByZXJlcmUuYzo0ODUgcmVyZXJlLmM6NjkyIHNlcXVlbmNlci5jOjM0NDQKKyM6IHNlcXVlbmNlci5jOjM0NzAgc2VxdWVuY2VyLmM6NTEyNSBidWlsdGluL2ZzY2suYzozNDYgYnVpbHRpbi9yZWJhc2UuYzoyNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHdyaXRlICclcyciCittc2dzdHIgIiclcycgeWF6xLFsYW1hZMSxIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMTYgYnVpbHRpbi9yZWJhc2UuYzoxODQgYnVpbHRpbi9yZWJhc2UuYzoyMTAKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnLiIKK21zZ3N0ciAiJyVzJyB5YXrEsWxhbWFkxLEuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldhcm5pbmc6IHNvbWUgY29tbWl0cyBtYXkgaGF2ZSBiZWVuIGRyb3BwZWQgYWNjaWRlbnRhbGx5LlxuIgorIkRyb3BwZWQgY29tbWl0cyAobmV3ZXIgdG8gb2xkZXIpOlxuIgorbXNnc3RyICIiCisiVXlhcsSxOiBCYXrEsSBnw7ZuZGVyaWxlciB5YW5sxLHFn2zEsWtsYSBixLFyYWvEsWxtxLHFnyBvbGFiaWxpci5cbiIKKyJCxLFyYWvEsWxhbiBnw7ZuZGVyaWxlcjogKHllbmlkZW4gZXNraXllKTpcbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUbyBhdm9pZCB0aGlzIG1lc3NhZ2UsIHVzZSBcImRyb3BcIiB0byBleHBsaWNpdGx5IHJlbW92ZSBhIGNvbW1pdC5cbiIKKyJcbiIKKyJVc2UgJ2dpdCBjb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2snIHRvIGNoYW5nZSB0aGUgbGV2ZWwgb2YgIgorIndhcm5pbmdzLlxuIgorIlRoZSBwb3NzaWJsZSBiZWhhdmlvdXJzIGFyZTogaWdub3JlLCB3YXJuLCBlcnJvci5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkJ1IGlsZXRpZGVuIGthw6fEsW5tYWsgacOnaW4sIGJpciBnw7ZuZGVyaXlpIGthbGTEsXLEsXJrZW4gYcOnxLFrw6dhIFwiZHJvcFwiICIKKyJrdWxsYW7EsW4uXG4iCisiVXlhcsSxbGFyxLFuIGTDvHpleWluaSBkZcSfacWfdGlybWVrIGnDp2luICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyAiCisia3VsbGFuxLFuLlxuIgorIkt1bGxhbsSxbGFiaWxpciBkYXZyYW7EscWfbGFyOiBpZ25vcmUsIHdhcm4sIGVycm9yLlxuIgorIlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoyMzMgcmViYXNlLWludGVyYWN0aXZlLmM6MjM4IHNlcXVlbmNlci5jOjIyNjIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTcwIGJ1aWx0aW4vcmViYXNlLmM6MTk1IGJ1aWx0aW4vcmViYXNlLmM6MjIxCisjOiBidWlsdGluL3JlYmFzZS5jOjI0NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCAnJXMnLiIKK21zZ3N0ciAiJyVzJyBva3VuYW1hZMSxLiIKKworIzogcmVmcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIG9iamVjdCEiCittc2dzdHIgIiVzIGdlw6dlcmxpIGJpciBuZXNuZXllIGnFn2FyZXQgZXRtaXlvciEiCisKKyM6IHJlZnMuYzo2NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGFuZ2xpbmcgc3ltcmVmICVzIgorbXNnc3RyICJzYXJrYW4gc2VtYm9saWsgYmHFn3Z1cnUgJXMgeW9rIHNhecSxbMSxeW9yIgorCisjOiByZWZzLmM6NjY5IHJlZi1maWx0ZXIuYzoyMDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGJyb2tlbiByZWYgJXMiCittc2dzdHIgImJvenVrIGJhxZ92dXJ1ICVzIHlvayBzYXnEsWzEsXlvciIKKworIzogcmVmcy5jOjgwNAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nOiAlcyIKK21zZ3N0ciAiJyVzJyB5YXptYSBpw6dpbiBhw6fEsWxhbWFkxLE6ICVzIgorCisjOiByZWZzLmM6ODE0IHJlZnMuYzo4NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgcmVmICclcyciCittc2dzdHIgIiclcycgYmHFn3Z1cnVzdSBva3VuYW1hZMSxIgorCisjOiByZWZzLmM6ODIwCisjLCBjLWZvcm1hdAorbXNnaWQgInJlZiAnJXMnIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICInJXMnIGJhxZ92dXJ1c3UgaGFsaWhhesSxcmRhIHZhciIKKworIzogcmVmcy5jOjgyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIG9iamVjdCBJRCB3aGVuIHdyaXRpbmcgJyVzJyIKK21zZ3N0ciAiJyVzJyB5YXrEsWzEsXJrZW4gYmVrbGVubWVkaWsgbmVzbmUgbnVtYXJhc8SxIgorCisjOiByZWZzLmM6ODMzIHNlcXVlbmNlci5jOjQwNyBzZXF1ZW5jZXIuYzoyNzAxIHNlcXVlbmNlci5jOjI5MDUKKyM6IHNlcXVlbmNlci5jOjI5MTkgc2VxdWVuY2VyLmM6MzE3NyBzZXF1ZW5jZXIuYzo1MDM2IHN0cmJ1Zi5jOjExNTcKKyM6IHdyYXBwZXIuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHdyaXRlIHRvICclcyciCittc2dzdHIgIsWfdXJheWEgeWF6xLFsYW1hZMSxOiAnJXMnIgorCisjOiByZWZzLmM6ODYwIHN0cmJ1Zi5jOjExNTUgd3JhcHBlci5jOjE4OCB3cmFwcGVyLmM6MzU4IGJ1aWx0aW4vYW0uYzo3MTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTAyOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nIgorbXNnc3RyICInJXMnIHlhem1hIGnDp2luIGHDp8SxbGFtYWTEsSIKKworIzogcmVmcy5jOjg2NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIG9iamVjdCBJRCB3aGVuIGRlbGV0aW5nICclcyciCittc2dzdHIgIiclcycgc2lsaW5pcmtlbiBiZWtsZW5tZWRpayBuZXNuZSBudW1hcmFzxLEiCisKKyM6IHJlZnMuYzo5OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciByZWYgJXMgaGFzIGdhcCBhZnRlciAlcyIKK21zZ3N0ciAiJXMgYmHFn3Z1cnVzdSBpw6dpbiBvbGFuIGfDvG5sw7xrdGUgJXMgc29ucmFzxLFuZGEgYm/Fn2x1ayB2YXIiCisKKyM6IHJlZnMuYzoxMDA0CisjLCBjLWZvcm1hdAorbXNnaWQgImxvZyBmb3IgcmVmICVzIHVuZXhwZWN0ZWRseSBlbmRlZCBvbiAlcyIKK21zZ3N0ciAiIgorIiVzIGJhxZ92dXJ1c3UgacOnaW4gb2xhbiBnw7xubMO8ayAlcyBrb251bXVuZGEgYmVrbGVubWVkaWsgYmlyIGJpw6dpbWRlIHNvbmxhbmTEsSIKKworIzogcmVmcy5jOjEwNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciAlcyBpcyBlbXB0eSIKK21zZ3N0ciAiJXMgacOnaW4gb2xhbiBnw7xubMO8ayBib8WfIgorCisjOiByZWZzLmM6MTE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byB1cGRhdGUgcmVmIHdpdGggYmFkIG5hbWUgJyVzJyIKK21zZ3N0ciAiaGF0YWzEsSBhZGEgaXllICclcycgYmHFn3Z1cnVzdW51IGfDvG5jZWxsZW1lIHJlZGRlZGlsaXlvciIKKworIzogcmVmcy5jOjEyMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidXBkYXRlX3JlZiBmYWlsZWQgZm9yIHJlZiAnJXMnOiAlcyIKK21zZ3N0ciAiJyVzJyBiYcWfdnVydXN1IGnDp2luIHVwZGF0ZV9yZWYgYmHFn2FyxLFzxLF6IG9sZHU6ICVzIgorCisjOiByZWZzLmM6MjAyMworIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSB1cGRhdGVzIGZvciByZWYgJyVzJyBub3QgYWxsb3dlZCIKK21zZ3N0ciAiJyVzJyBiYcWfdnVydXN1IGnDp2luIGJpcmRlbiDDp29rIGfDvG5jZWxsZW1leWUgaXppbiB2ZXJpbG1peW9yIgorCisjOiByZWZzLmM6MjA1NQorbXNnaWQgInJlZiB1cGRhdGVzIGZvcmJpZGRlbiBpbnNpZGUgcXVhcmFudGluZSBlbnZpcm9ubWVudCIKK21zZ3N0ciAiYmHFn3Z1cnUgZ8O8bmNlbGxlbWVsZXJpIGthcmFudGluYSBvcnRhbcSxIGnDp2luZGUgeWFzYWsiCisKKyM6IHJlZnMuYzoyMTUxIHJlZnMuYzoyMTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZXhpc3RzOyBjYW5ub3QgY3JlYXRlICclcyciCittc2dzdHIgIiclcycgbWV2Y3V0OyAnJXMnIG9sdcWfdHVydWxhbcSxeW9yIgorCisjOiByZWZzLmM6MjE1NyByZWZzLmM6MjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcHJvY2VzcyAnJXMnIGFuZCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUiCittc2dzdHIgIiclcycgdmUgJyVzJyBheW7EsSBhbmRhIGnFn2xlbmVtaXlvciIKKworIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVtb3ZlIHJlZmVyZW5jZSAlcyIKK21zZ3N0ciAiJXMgYmHFn3Z1cnVzdSBrYWxkxLFyxLFsYW1hZMSxIgorCisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjQ3IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQxCisjOiByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZGVsZXRlIHJlZmVyZW5jZSAlczogJXMiCittc2dzdHIgIiVzIGJhxZ92dXJ1c3Ugc2lsaW5lbWVkaTogJXMiCisKKyM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNTAgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGRlbGV0ZSByZWZlcmVuY2VzOiAlcyIKK21zZ3N0ciAiYmHFn3Z1cnVsYXIgc2lsaW5lbWVkaTogJXMiCisKKyM6IHJlZnNwZWMuYzoxMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWZzcGVjICclcyciCittc2dzdHIgImdlw6dlcnNpeiBiYcWfdnVydSBiZWxpcnRlY2kgJyVzJyIKKworIzogcmVmLWZpbHRlci5jOjQyIHd0LXN0YXR1cy5jOjE5MzgKK21zZ2lkICJnb25lIgorbXNnc3RyICJnaXR0aSIKKworIzogcmVmLWZpbHRlci5jOjQzCisjLCBjLWZvcm1hdAorbXNnaWQgImFoZWFkICVkIgorbXNnc3RyICIlZCDDtm7DvG5kZSIKKworIzogcmVmLWZpbHRlci5jOjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImJlaGluZCAlZCIKK21zZ3N0ciAiJWQgYXJrYXPEsW5kYSIKKworIzogcmVmLWZpbHRlci5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImFoZWFkICVkLCBiZWhpbmQgJWQiCittc2dzdHIgIiVkIMO2bsO8bmRlLCAlZCBhcmthc8SxbmRhIgorCisjOiByZWYtZmlsdGVyLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIGZvcm1hdDogJSUoY29sb3I6PGNvbG9yPikiCittc2dzdHIgImJla2xlbmVuIGJpw6dpbTogJSUoY29sb3I6PHJlbms+KSIKKworIzogcmVmLWZpbHRlci5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgY29sb3I6ICUlKGNvbG9yOiVzKSIKK21zZ3N0ciAidGFuxLFtbGFuYW1heWFuIHJlbms6ICUlKGNvbG9yOiVzKSIKKworIzogcmVmLWZpbHRlci5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6bHN0cmlwPSVzIgorbXNnc3RyICJUYW1zYXnEsSBkZcSfZXJpIMWfdW51IGJla2xpeW9yZHU6IHJlZm5hbWU6bHN0cmlwPSVzIgorCisjOiByZWYtZmlsdGVyLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludGVnZXIgdmFsdWUgZXhwZWN0ZWQgcmVmbmFtZTpyc3RyaXA9JXMiCittc2dzdHIgIlRhbXNhecSxIGRlxJ9lcmkgxZ91bnUgYmVrbGl5b3JkdTogcmVmbmFtZTpyc3RyaXA9JXMiCisKKyM6IHJlZi1maWx0ZXIuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkICUlKCVzKSBhcmd1bWVudDogJXMiCittc2dzdHIgInRhbsSxbWxhbmFtYXlhbiAlJSglcykgZGXEn2nFn2tlbmk6ICVzIgorCisjOiByZWYtZmlsdGVyLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiUlKG9iamVjdHR5cGUpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnc3RyICIlJShvYmplY3R0eXBlKSBkZcSfacWfa2VuIGFsbcSxeW9yIgorCisjOiByZWYtZmlsdGVyLmM6MjcyCisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCAlJShvYmplY3RzaXplKSBhcmd1bWVudDogJXMiCittc2dzdHIgInRhbsSxbWxhbmFtYXlhbiAlJShvYmplY3RzaXplKSBkZcSfacWfa2VuaTogJXMiCisKKyM6IHJlZi1maWx0ZXIuYzoyODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJSUoZGVsdGFiYXNlKSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKK21zZ3N0ciAiJSUoZGVsdGFiYXNlKSBkZcSfacWfa2VuIGFsbcSxeW9yIgorCisjOiByZWYtZmlsdGVyLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiUlKGJvZHkpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnc3RyICIlJShib2R5KSBkZcSfacWfa2VuIGFsbcSxeW9yIgorCisjOiByZWYtZmlsdGVyLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiUlKHN1YmplY3QpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnc3RyICIlJShzdWJqZWN0KSBkZcSfacWfa2VuIGFsbcSxeW9yIgorCisjOiByZWYtZmlsdGVyLmM6MzIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gJSUodHJhaWxlcnMpIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiYmlsaW5tZXllbiAlJSh0cmFpbGVycykgZGXEn2nFn2tlbmk6ICVzIgorCisjOiByZWYtZmlsdGVyLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBvc2l0aXZlIHZhbHVlIGV4cGVjdGVkIGNvbnRlbnRzOmxpbmVzPSVzIgorbXNnc3RyICJwb3ppdGlmIGRlxJ9lciDFn3VudSBiZWtsaXlvcmR1OiBjb250ZW50czpsaW5lcz0lcyIKKworIzogcmVmLWZpbHRlci5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUoY29udGVudHMpIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAidGFuxLFtbGFuYW1heWFuICUlKGNvbnRlbnRzKSBkZcSfacWfa2VuaTogJXMiCisKKyM6IHJlZi1maWx0ZXIuYzozNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAicG9zaXRpdmUgdmFsdWUgZXhwZWN0ZWQgb2JqZWN0bmFtZTpzaG9ydD0lcyIKK21zZ3N0ciAicG96aXRpZiBkZcSfZXIgxZ91bnUgYmVrbGl5b3JkdTogb2JqZWN0bmFtZTpzaG9ydD0lcyIKKworIzogcmVmLWZpbHRlci5jOjM3MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUob2JqZWN0bmFtZSkgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJ0YW7EsW1sYW5hbWF5YW4gJSUob2JqZWN0bmFtZSkgZGXEn2nFn2tlbmk6ICVzIgorCisjOiByZWYtZmlsdGVyLmM6NDAzCisjLCBjLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIGZvcm1hdDogJSUoYWxpZ246PHdpZHRoPiw8cG9zaXRpb24+KSIKK21zZ3N0ciAiYmVrbGVuZW4gYmnDp2ltOiAlJShhbGlnbjo8Z2VuacWfbGlrPiw8a29udW0+KSIKKworIzogcmVmLWZpbHRlci5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgcG9zaXRpb246JXMiCittc2dzdHIgInRhbsSxbWxhbmFtYXlhbiBrb251bTolcyIKKworIzogcmVmLWZpbHRlci5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgd2lkdGg6JXMiCittc2dzdHIgInRhbsSxbWxhbmFtYXlhbiBnZW5pxZ9saWs6JXMiCisKKyM6IHJlZi1maWx0ZXIuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkICUlKGFsaWduKSBhcmd1bWVudDogJXMiCittc2dzdHIgInRhbsSxbWxhbmFtYXlhbiAlJShhbGlnbikgZGXEn2nFn2tlbmk6ICVzIgorCisjOiByZWYtZmlsdGVyLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgInBvc2l0aXZlIHdpZHRoIGV4cGVjdGVkIHdpdGggdGhlICUlKGFsaWduKSBhdG9tIgorbXNnc3RyICJwb3ppdGlmIGdlbmnFn2xpayAlJShhbGlnbikgw7ZnZWNpxJ9pIGlsZSBiaXJsaWt0ZSBiZWtsZW5peW9yZHUiCisKKyM6IHJlZi1maWx0ZXIuYzo0NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkICUlKGlmKSBhcmd1bWVudDogJXMiCittc2dzdHIgInRhbsSxbWxhbmFtYXlhbiAlJShpZikgZGXEn2nFn2tlbmk6ICVzIgorCisjOiByZWYtZmlsdGVyLmM6NTU5CisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBmaWVsZCBuYW1lOiAlLipzIgorbXNnc3RyICJoYXRhbMSxIG9sdcWfdHVydWxtdcWfIGFsYW4gYWTEsTogJS4qcyIKKworIzogcmVmLWZpbHRlci5jOjU4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZpZWxkIG5hbWU6ICUuKnMiCittc2dzdHIgImJpbGlubWV5ZW4gYWxhbiBhZMSxOiAlLipzIgorCisjOiByZWYtZmlsdGVyLmM6NTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJub3QgYSBnaXQgcmVwb3NpdG9yeSwgYnV0IHRoZSBmaWVsZCAnJS4qcycgcmVxdWlyZXMgYWNjZXNzIHRvIG9iamVjdCBkYXRhIgorbXNnc3RyICIiCisiYmlyIGdpdCBkZXBvc3UgZGXEn2lsLCBhbmNhayAnJS4qcycgYWxhbsSxIG5lc25lIHZlcmlzaW5lIGVyacWfaW0gZ2VyZWt0aXJpeW9yIgorCisjOiByZWYtZmlsdGVyLmM6NzE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUoaWYpIGF0b20gdXNlZCB3aXRob3V0IGEgJSUodGhlbikgYXRvbSIKK21zZ3N0ciAiYmnDp2ltOiAlJShpZikgw7ZnZWNpxJ9pIGJpciAlJSh0aGVuKSDDtmdlY2nEn2kgb2xtYWRhbiBrdWxsYW7EsWxkxLEiCisKKyM6IHJlZi1maWx0ZXIuYzo3NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgd2l0aG91dCBhbiAlJShpZikgYXRvbSIKK21zZ3N0ciAiYmnDp2ltOiAlJSh0aGVuKSDDtmdlY2nEn2kgYmlyICUlKGlmKSDDtmdlY2nEn2kgb2xtYWRhbiBrdWxsYW7EsWxkxLEiCisKKyM6IHJlZi1maWx0ZXIuYzo3NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgbW9yZSB0aGFuIG9uY2UiCittc2dzdHIgImJpw6dpbTogJSUodGhlbikgw7ZnZWNpxJ9pIGJpcmRlbiDDp29rIGtleiBrdWxsYW7EsWxkxLEiCisKKyM6IHJlZi1maWx0ZXIuYzo3ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgYWZ0ZXIgJSUoZWxzZSkiCittc2dzdHIgImJpw6dpbTogJSUodGhlbikgw7ZnZWNpxJ9pICUlKGVsc2UpIMO2Z2VjacSfaW5kZW4gc29ucmEga3VsbGFuxLFsZMSxIgorCisjOiByZWYtZmlsdGVyLmM6ODA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIHdpdGhvdXQgYW4gJSUoaWYpIGF0b20iCittc2dzdHIgImJpw6dpbTogJSUoZWxzZSkgw7ZnZWNpxJ9pIGJpciAlJShpZikgw7ZnZWNpxJ9pIG9sbWFkYW4ga3VsbGFuxLFsZMSxIgorCisjOiByZWYtZmlsdGVyLmM6ODExCisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIHdpdGhvdXQgYSAlJSh0aGVuKSBhdG9tIgorbXNnc3RyICJiacOnaW06ICUlKGVsc2UpIMO2Z2VjacSfaSBiaXIgJSUodGhlbikgw7ZnZWNpxJ9pIG9sbWFkYW4ga3VsbGFuxLFsZMSxIgorCisjOiByZWYtZmlsdGVyLmM6ODEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgorbXNnc3RyICJiacOnaW06ICUlKGVsc2UpIMO2Z2VjacSfaSBiaXJkZW4gw6dvayBrZXoga3VsbGFuxLFsZMSxIgorCisjOiByZWYtZmlsdGVyLmM6ODI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUoZW5kKSBhdG9tIHVzZWQgd2l0aG91dCBjb3JyZXNwb25kaW5nIGF0b20iCittc2dzdHIgImJpw6dpbTogJSUoZW5kKSDDtmdlY2nEn2kgZcWfIMO2Z2VjacSfaSBvbG1hZGFuIGt1bGxhbsSxbGTEsSIKKworIzogcmVmLWZpbHRlci5jOjg4NQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgZm9ybWF0IHN0cmluZyAlcyIKK21zZ3N0ciAiaGF0YWzEsSBvbHXFn3R1cnVsbXXFnyBiacOnaW0gZGl6aXNpICVzIgorCisjOiByZWYtZmlsdGVyLmM6MTQ4OAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nICVzIgorbXNnc3RyICJkYWwgeW9rLCAlcyB5ZW5pZGVuIHRlbWVsbGVuZGlyaWxpeW9yIgorCisjOiByZWYtZmlsdGVyLmM6MTQ5MQorIywgYy1mb3JtYXQKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nIGRldGFjaGVkIEhFQUQgJXMiCittc2dzdHIgImRhbCB5b2ssIGF5csSxayBIRUFEICVzIHllbmlkZW4gdGVtZWxsZW5kaXJpbGl5b3IiCisKKyM6IHJlZi1maWx0ZXIuYzoxNDk0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGJyYW5jaCwgYmlzZWN0IHN0YXJ0ZWQgb24gJXMiCittc2dzdHIgImRhbCB5b2ssIGlraWxpIGFyYW1hICVzIMO8emVyaW5kZSBiYcWfbGFkxLEiCisKKyM6IHJlZi1maWx0ZXIuYzoxNTA0Cittc2dpZCAibm8gYnJhbmNoIgorbXNnc3RyICJkYWwgeW9rIgorCisjOiByZWYtZmlsdGVyLmM6MTU0MCByZWYtZmlsdGVyLmM6MTc0OQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIG9iamVjdCAlcyBmb3IgJXMiCittc2dzdHIgImVrc2lrIG5lc25lICVzICglcyBpw6dpbikiCisKKyM6IHJlZi1maWx0ZXIuYzoxNTUwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnNlX29iamVjdF9idWZmZXIgZmFpbGVkIG9uICVzIGZvciAlcyIKK21zZ3N0ciAicGFyc2Vfb2JqZWN0X2J1ZmZlciAlcyDDvHplcmluZGUgYmHFn2FyxLFzxLF6IG9sZHUgKCVzIGnDp2luKSIKKworIzogcmVmLWZpbHRlci5jOjIwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIG9iamVjdCBhdCAnJXMnIgorbXNnc3RyICInJXMnIGtvbnVtdW5kYSBoYXRhbMSxIG9sdcWfdHVydWxtdcWfIG5lc25lIgorCisjOiByZWYtZmlsdGVyLmM6MjA5MworIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyByZWYgd2l0aCBicm9rZW4gbmFtZSAlcyIKK21zZ3N0ciAiYm96dWsgYWRhIGl5ZSAlcyBiYcWfdnVydXN1IHlvayBzYXnEsWzEsXlvciIKKworIzogcmVmLWZpbHRlci5jOjIzODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJShlbmQpIGF0b20gbWlzc2luZyIKK21zZ3N0ciAiYmnDp2ltOiAlJShlbmQpIMO2Z2VjacSfaSBla3NpayIKKworIzogcmVmLWZpbHRlci5jOjI0ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1tZXJnZWQiCittc2dzdHIgIiclcycgc2XDp2VuZcSfaSAtLW1lcmdlZCBpbGUgdXl1bXN1eiIKKworIzogcmVmLWZpbHRlci5jOjI0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1uby1tZXJnZWQiCittc2dzdHIgIiclcycgc2XDp2VuZcSfaSAtLW5vLW1lcmdlZCBpbGUgdXl1bXN1eiIKKworIzogcmVmLWZpbHRlci5jOjI1MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIG9iamVjdCBuYW1lICVzIgorbXNnc3RyICJoYXRhbMSxIG9sdcWfdHVydWxtdcWfIG5lc25lIGFkxLEgJXMiCisKKyM6IHJlZi1maWx0ZXIuYzoyNTA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIG11c3QgcG9pbnQgdG8gYSBjb21taXQiCittc2dzdHIgIiclcycgYmlyIGfDtm5kZXJpeWUgacWfYXJldCBldG1lbGkiCisKKyM6IHJlbW90ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25maWcgcmVtb3RlIHNob3J0aGFuZCBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIgorbXNnc3RyICJ1emFrIGtvbnVtIHlhcMSxbGFuZMSxcm1hIHN0ZW5vZ3JhZmlzaSAnLycgaWxlIGJhxZ9sYXlhbWF6OiAlcyIKKworIzogcmVtb3RlLmM6NDE0Cittc2dpZCAibW9yZSB0aGFuIG9uZSByZWNlaXZlcGFjayBnaXZlbiwgdXNpbmcgdGhlIGZpcnN0IgorbXNnc3RyICJiaXJkZW4gZmF6bGEgcmVjZWl2ZXBhY2sgdmVyaWxkaSwgYmlyaW5jaXNpIGt1bGxhbsSxbMSxeW9yIgorCisjOiByZW1vdGUuYzo0MjIKK21zZ2lkICJtb3JlIHRoYW4gb25lIHVwbG9hZHBhY2sgZ2l2ZW4sIHVzaW5nIHRoZSBmaXJzdCIKK21zZ3N0ciAiYmlyZGVuIGZhemxhIHVwbG9hZHBhY2sgdmVyaWxkaSwgYmlyaW5jaXNpIGt1bGxhbsSxbMSxeW9yIgorCisjOiByZW1vdGUuYzo2MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IGZldGNoIGJvdGggJXMgYW5kICVzIHRvICVzIgorbXNnc3RyICJIZW0gJXMgaGVtICVzIMWfdXJheWEgZ2V0aXJpbGVtaXlvcjogJXMiCisKKyM6IHJlbW90ZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB1c3VhbGx5IHRyYWNrcyAlcywgbm90ICVzIgorbXNnc3RyICIlcyBnZW5lbGRlICVzIMO2Z2VzaW5pIGl6bGVyLCAlcyBkZcSfaWwiCisKKyM6IHJlbW90ZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0cmFja3MgYm90aCAlcyBhbmQgJXMiCittc2dzdHIgIiVzIGhlbSAlcyBoZW0gJXMgw7ZnZWxlcmluaSBpemxlciIKKworIzogcmVtb3RlLmM6Njg4CisjLCBjLWZvcm1hdAorbXNnaWQgImtleSAnJXMnIG9mIHBhdHRlcm4gaGFkIG5vICcqJyIKK21zZ3N0ciAiZGl6Z2luaW4gJyVzJyBhbmFodGFyxLFuZGEnKicgeW9rdHUiCisKKyM6IHJlbW90ZS5jOjY5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSAnJXMnIG9mIHBhdHRlcm4gaGFzIG5vICcqJyIKK21zZ3N0ciAiZGl6Z2luaW4gJyVzJyBkZcSfZXJpbmRlICcqJyB5b2siCisKKyM6IHJlbW90ZS5jOjEwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgZG9lcyBub3QgbWF0Y2ggYW55IgorbXNnc3RyICJrYXluYWsgYmHFn3Z1cnUgYmVsaXJ0ZWNpICVzIGJhxZ9rYSBoacOnYmlyIMWfZXlsZSBlxZ9sZcWfbWl5b3IiCisKKyM6IHJlbW90ZS5jOjEwMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgbWF0Y2hlcyBtb3JlIHRoYW4gb25lIgorbXNnc3RyICJrYXluYWsgYmHFn3Z1cnUgYmVsaXJ0ZWNpICVzIGJpcmRlbiBmYXpsYXPEsSBpbGUgZcWfbGXFn2l5b3IiCisKKyMuIFRSQU5TTEFUT1JTOiAibWF0Y2hlcyAnJXMnJSIgaXMgdGhlIDxkc3Q+IHBhcnQgb2YgImdpdCBwdXNoCisjLiA8cmVtb3RlPiA8c3JjPjo8ZHN0PiIgcHVzaCwgYW5kICJiZWluZyBwdXNoZWQgKCclcycpIiBpcworIy4gdGhlIDxzcmM+LgorIy4KKyM6IHJlbW90ZS5jOjEwMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBkZXN0aW5hdGlvbiB5b3UgcHJvdmlkZWQgaXMgbm90IGEgZnVsbCByZWZuYW1lIChpLmUuLFxuIgorInN0YXJ0aW5nIHdpdGggXCJyZWZzL1wiKS4gV2UgdHJpZWQgdG8gZ3Vlc3Mgd2hhdCB5b3UgbWVhbnQgYnk6XG4iCisiXG4iCisiLSBMb29raW5nIGZvciBhIHJlZiB0aGF0IG1hdGNoZXMgJyVzJyBvbiB0aGUgcmVtb3RlIHNpZGUuXG4iCisiLSBDaGVja2luZyBpZiB0aGUgPHNyYz4gYmVpbmcgcHVzaGVkICgnJXMnKVxuIgorIiAgaXMgYSByZWYgaW4gXCJyZWZzL3toZWFkcyx0YWdzfS9cIi4gSWYgc28gd2UgYWRkIGEgY29ycmVzcG9uZGluZ1xuIgorIiAgcmVmcy97aGVhZHMsdGFnc30vIHByZWZpeCBvbiB0aGUgcmVtb3RlIHNpZGUuXG4iCisiXG4iCisiTmVpdGhlciB3b3JrZWQsIHNvIHdlIGdhdmUgdXAuIFlvdSBtdXN0IGZ1bGx5IHF1YWxpZnkgdGhlIHJlZi4iCittc2dzdHIgIiIKKyJTYcSfbGFkxLHEn8SxbsSxeiBrYXluYWsgdGFtIGJpciBiYcWfdnVydSBiZWxpcnRlY2kgZGXEn2lsICjDtnJuZcSfaW4gXCJyZWZzL1wiXG4iCisiaWxlIGJhxZ9sYW3EsXlvci4gQnVudW5sYSBuZSBkZW1layBpc3RlZGnEn2luaXppIGJ1bGFiaWxtZWsgacOnaW46XG4iCisiXG4iCisiLSBVemFrIGtvbnVtZGEgJyVzJyBpbGUgZcWfbGXFn2VuIGJpciBiYcWfdnVydSBhcmFkxLFrLlxuIgorIi0gxLB0aWxlbiA8a2F5bmFrPifEsW4gKCclcycpIFwicmVmcy97aGVhZHMsdGFnc30vXCIgacOnaW5kZSBiaXJcbiIKKyIgIGJhxZ92dXJ1IG9sdXAgb2xtYWTEscSfxLFuYSBiYWt0xLFrLiBFxJ9lciDDtnlsZXlzZSB1emFrIGtvbnVtIHRhcmFmxLFuZGFcbiIKKyIgIGXFn2xlxZ9lbiBiaXIgcmVmcy97aGVhZHMsdGFnc30vIMO2bmVraSBla2xlZGlrLlxuIgorIlxuIgorIkhpw6diaXJpIGnFn2UgeWFyYW1hZMSxLCBiaXogZGUgYsSxcmFrdMSxay4gQmHFn3Z1cnV5dSB0YW0gb2xhcmFrICIKKyJuaXRlbGVuZGlybWVsaXNpbml6LiIKKworIzogcmVtb3RlLmM6MTA0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSBjb21taXQgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byBjcmVhdGUgYSBuZXcgYnJhbmNoIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy9oZWFkcy8lcyc/IgorbXNnc3RyICIiCisiQmHFn3Z1cnUgYmVsaXJ0ZWNpbmluIDxrYXluYWs+IGvEsXNtxLEgYmlyIGfDtm5kZXJpIG5lc25lc2kuXG4iCisiJyVzOnJlZnMvaGVhZHMvJXMnIGtvbnVtdW5hIGl0ZXJlayB5ZW5pIGJpciBkYWwgbcSxXG4iCisib2x1xZ90dXJtYWsgaXN0ZWRpbml6PyIKKworIzogcmVtb3RlLmM6MTA0OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSB0YWcgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byBjcmVhdGUgYSBuZXcgdGFnIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKyJCYcWfdnVydSBiZWxpcnRlY2luaW4gPGtheW5haz4ga8Sxc23EsSBiaXIgZXRpa2V0IG5lc25lc2kuXG4iCisiJyVzOnJlZnMvdGFncy8lcycga29udW11bmEgaXRlcmVrIHllbmkgYmlyIGV0aWtldCBtaVxuIgorIm9sdcWfdHVybWFrIGlzdGVkaW5pej8iCisKKyM6IHJlbW90ZS5jOjEwNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgdHJlZSBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHRhZyBhIG5ldyB0cmVlIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKyJCYcWfdnVydSBiZWxpcnRlY2luaW4gPGtheW5haz4ga8Sxc23EsSBiaXIgYcSfYcOnIG5lc25lc2kuXG4iCisiJyVzOnJlZnMvdGFncy8lcycga29udW11bmEgaXRlcmVrIHllbmkgYmlyIGHEn2HDpyBtxLFcbiIKKyJldGlrZXRsZW1layBpc3RlZGluaXo/IgorCisjOiByZW1vdGUuYzoxMDU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIGJsb2Igb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byB0YWcgYSBuZXcgYmxvYiBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisiQmHFn3Z1cnUgYmVsaXJ0ZWNpbmluIDxrYXluYWs+IGvEsXNtxLEgaWtpbGkgYmlyIG5lc25lLlxuIgorIiclczpyZWZzL3RhZ3MvJXMnIGtvbnVtdW5hIGl0ZXJlayB5ZW5pIGlraWxpIGJpciBuZXNuZSBtaVxuIgorImV0aWtldGxlbWVrIGlzdGVkaW5pej8iCisKKyM6IHJlbW90ZS5jOjEwOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY2Fubm90IGJlIHJlc29sdmVkIHRvIGJyYW5jaCIKK21zZ3N0ciAiJXMgZGFsYSDDp8O2esO8bGVtaXlvciIKKworIzogcmVtb3RlLmM6MTEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlICclcyc6IHJlbW90ZSByZWYgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIiclcycgc2lsaW5lbWl5b3I6IHV6YWsgYmHFn3Z1cnUgeW9rIgorCisjOiByZW1vdGUuYzoxMTE4CisjLCBjLWZvcm1hdAorbXNnaWQgImRzdCByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAiaGVkZWYgYmHFn3Z1cnUgYmVsaXJ0ZWNpICVzIGJpcmRlbiBmYXpsYXPEsSBpbGUgZcWfbGXFn2l5b3IiCisKKyM6IHJlbW90ZS5jOjExMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHN0IHJlZiAlcyByZWNlaXZlcyBmcm9tIG1vcmUgdGhhbiBvbmUgc3JjIgorbXNnc3RyICJoZWRlZiBiYcWfdnVydXN1ICVzIGJpcmRlbiDDp29rIGtheW5ha3RhbiBhbMSxeW9yIgorCisjOiByZW1vdGUuYzoxNjI4IHJlbW90ZS5jOjE3MjkKK21zZ2lkICJIRUFEIGRvZXMgbm90IHBvaW50IHRvIGEgYnJhbmNoIgorbXNnc3RyICJIRUFEIGJpciBkYWxhIGnFn2FyZXQgZXRtaXlvciIKKworIzogcmVtb3RlLmM6MTYzNworIywgYy1mb3JtYXQKK21zZ2lkICJubyBzdWNoIGJyYW5jaDogJyVzJyIKK21zZ3N0ciAiYsO2eWxlIGJpciBkYWwgeW9rOiAnJXMnIgorCisjOiByZW1vdGUuYzoxNjQwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHVwc3RyZWFtIGNvbmZpZ3VyZWQgZm9yIGJyYW5jaCAnJXMnIgorbXNnc3RyICInJXMnIGRhbMSxIGnDp2luIMO8c3RrYXluYWsgeWFwxLFsYW5kxLFybWFzxLEgeW9rIgorCisjOiByZW1vdGUuYzoxNjQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVwc3RyZWFtIGJyYW5jaCAnJXMnIG5vdCBzdG9yZWQgYXMgYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICLDvHN0a2F5bmFrIGRhbMSxICclcycgYmlyIHV6YWsgaXpsZW1lIGRhbMSxIG9sYXJhayBkZXBvbGFubcSxeW9yIgorCisjOiByZW1vdGUuYzoxNjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInB1c2ggZGVzdGluYXRpb24gJyVzJyBvbiByZW1vdGUgJyVzJyBoYXMgbm8gbG9jYWwgdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICJpdG1lIGhlZGVmaSAnJXMnICgnJXMnIHV6YWsga29udW11bmRhKSB5ZXJlbCBpemxlbWUgZGFsxLFuYSBpeWUgZGXEn2lsIgorCisjOiByZW1vdGUuYzoxNjczCisjLCBjLWZvcm1hdAorbXNnaWQgImJyYW5jaCAnJXMnIGhhcyBubyByZW1vdGUgZm9yIHB1c2hpbmciCittc2dzdHIgIiclcycgZGFsxLFuxLFuIGl0bWUgacOnaW4gdXphayBrb251bXUgeW9rIgorCisjOiByZW1vdGUuYzoxNjgzCisjLCBjLWZvcm1hdAorbXNnaWQgInB1c2ggcmVmc3BlY3MgZm9yICclcycgZG8gbm90IGluY2x1ZGUgJyVzJyIKK21zZ3N0ciAiJyVzJyBpw6dpbiBvbGFuIGJhxZ92dXJ1IGJlbGlydGXDp2xlcmkgJyVzJyBpw6dlcm1peW9yIgorCisjOiByZW1vdGUuYzoxNjk2Cittc2dpZCAicHVzaCBoYXMgbm8gZGVzdGluYXRpb24gKHB1c2guZGVmYXVsdCBpcyAnbm90aGluZycpIgorbXNnc3RyICJpdGlsZWNlayBiaXIgaGVkZWYgeW9rIChwdXNoLmRlZmF1bHQ6ICdub3RoaW5nJykiCisKKyM6IHJlbW90ZS5jOjE3MTgKK21zZ2lkICJjYW5ub3QgcmVzb2x2ZSAnc2ltcGxlJyBwdXNoIHRvIGEgc2luZ2xlIGRlc3RpbmF0aW9uIgorbXNnc3RyICJ0ZWsgYmlyIGtvbnVtYSAnc2ltcGxlJyBpdG1lIMOnw7Z6w7xsZW1peW9yIgorCisjOiByZW1vdGUuYzoxODQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiAlcyIKK21zZ3N0ciAidXphayBiYcWfdnVydSAlcyBidWx1bmFtYWTEsSIKKworIzogcmVtb3RlLmM6MTg1NworIywgYy1mb3JtYXQKK21zZ2lkICIqIElnbm9yaW5nIGZ1bm55IHJlZiAnJXMnIGxvY2FsbHkiCittc2dzdHIgIiogRcSfbGVuY2VsaSBiYcWfdnVydSAnJXMnIHllcmVsIG9sYXJhayB5b2sgc2F5xLFsxLF5b3IiCisKKyM6IHJlbW90ZS5jOjIwMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91ciBicmFuY2ggaXMgYmFzZWQgb24gJyVzJywgYnV0IHRoZSB1cHN0cmVhbSBpcyBnb25lLlxuIgorbXNnc3RyICJEYWzEsW7EsXogJyVzJyB0ZW1lbGxpLCBhbmNhayDDvHN0a2F5bmFrIGdpdG1pxZ8uXG4iCisKKyM6IHJlbW90ZS5jOjIwMjQKK21zZ2lkICIgICh1c2UgXCJnaXQgYnJhbmNoIC0tdW5zZXQtdXBzdHJlYW1cIiB0byBmaXh1cClcbiIKK21zZ3N0ciAiICAoZMO8emVsdG1layBpw6dpbiBcImdpdCBicmFuY2ggLS11bnNldC11cHN0cmVhbVwiIGt1bGxhbilcbiIKKworIzogcmVtb3RlLmM6MjAyNworIywgYy1mb3JtYXQKK21zZ2lkICJZb3VyIGJyYW5jaCBpcyB1cCB0byBkYXRlIHdpdGggJyVzJy5cbiIKK21zZ3N0ciAiRGFsxLFuxLF6ICclcycgaWxlIGfDvG5jZWwuXG4iCisKKyM6IHJlbW90ZS5jOjIwMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91ciBicmFuY2ggYW5kICclcycgcmVmZXIgdG8gZGlmZmVyZW50IGNvbW1pdHMuXG4iCittc2dzdHIgIlNpemluIGRhbMSxbsSxeiB2ZSAnJXMnIGJhxZ9rYSBnw7ZuZGVyaWxlcmUgYmHFn3Z1cnV5b3IuXG4iCisKKyM6IHJlbW90ZS5jOjIwMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAodXNlIFwiJXNcIiBmb3IgZGV0YWlscylcbiIKK21zZ3N0ciAiICAoYXlyxLFudMSxbGFyIGnDp2luIFwiJXNcIiBrdWxsYW7EsW4pXG4iCisKKyM6IHJlbW90ZS5jOjIwMzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91ciBicmFuY2ggaXMgYWhlYWQgb2YgJyVzJyBieSAlZCBjb21taXQuXG4iCittc2dpZF9wbHVyYWwgIllvdXIgYnJhbmNoIGlzIGFoZWFkIG9mICclcycgYnkgJWQgY29tbWl0cy5cbiIKK21zZ3N0clswXSAiRGFsxLFuxLF6ICclcycgZGFsxLFuZGFuICVkIGfDtm5kZXJpIGlsZXJpZGUuXG4iCittc2dzdHJbMV0gIkRhbMSxbsSxeiAnJXMnIGRhbMSxbmRhbiAlZCBnw7ZuZGVyaSBpbGVyaWRlLlxuIgorCisjOiByZW1vdGUuYzoyMDQ0Cittc2dpZCAiICAodXNlIFwiZ2l0IHB1c2hcIiB0byBwdWJsaXNoIHlvdXIgbG9jYWwgY29tbWl0cylcbiIKK21zZ3N0ciAiICAoeWVyZWwgZ8O2bmRlcmlsZXJpbml6aSB5YXnEsW1sYW1hayBpw6dpbiBcImdpdCBwdXNoXCIga3VsbGFuxLFuKVxuIgorCisjOiByZW1vdGUuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIllvdXIgYnJhbmNoIGlzIGJlaGluZCAnJXMnIGJ5ICVkIGNvbW1pdCwgYW5kIGNhbiBiZSBmYXN0LWZvcndhcmRlZC5cbiIKK21zZ2lkX3BsdXJhbCAiIgorIllvdXIgYnJhbmNoIGlzIGJlaGluZCAnJXMnIGJ5ICVkIGNvbW1pdHMsIGFuZCBjYW4gYmUgZmFzdC1mb3J3YXJkZWQuXG4iCittc2dzdHJbMF0gIkRhbMSxbsSxeiAnJXMnIGRhbMSxbmRhbiAlZCBnw7ZuZGVyaSBnZXJpZGUgdmUgaWxlcmkgc2FyxLFsYWJpbGlyLlxuIgorbXNnc3RyWzFdICJEYWzEsW7EsXogJyVzJyBkYWzEsW5kYW4gJWQgZ8O2bmRlcmkgZ2VyaWRlIHZlIGlsZXJpIHNhcsSxbGFiaWxpci5cbiIKKworIzogcmVtb3RlLmM6MjA1NQorbXNnaWQgIiAgKHVzZSBcImdpdCBwdWxsXCIgdG8gdXBkYXRlIHlvdXIgbG9jYWwgYnJhbmNoKVxuIgorbXNnc3RyICIgICh5ZXJlbCBkYWzEsW7EsXrEsSBnw7xuY2VsbGVtZWsgacOnaW4gXCJnaXQgcHVsbFwiIGt1bGxhbsSxbilcbiIKKworIzogcmVtb3RlLmM6MjA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBicmFuY2ggYW5kICclcycgaGF2ZSBkaXZlcmdlZCxcbiIKKyJhbmQgaGF2ZSAlZCBhbmQgJWQgZGlmZmVyZW50IGNvbW1pdCBlYWNoLCByZXNwZWN0aXZlbHkuXG4iCittc2dpZF9wbHVyYWwgIiIKKyJZb3VyIGJyYW5jaCBhbmQgJyVzJyBoYXZlIGRpdmVyZ2VkLFxuIgorImFuZCBoYXZlICVkIGFuZCAlZCBkaWZmZXJlbnQgY29tbWl0cyBlYWNoLCByZXNwZWN0aXZlbHkuXG4iCittc2dzdHJbMF0gIiIKKyJTaXppbiBkYWzEsW7EsXogdmUgJyVzJyBiaXJiaXJpbmRlbiB1emFrbGHFn23EscWfIHZlIHPEsXJhc8SxeWxhXG4iCisiaGVyIGJpcmluZGUgJWQgdmUgJWQgZ8O2bmRlcmkgdmFyLlxuIgorbXNnc3RyWzFdICIiCisiU2l6aW4gZGFsxLFuxLF6IHZlICclcycgYmlyYmlyaW5kZW4gdXpha2xhxZ9txLHFnyB2ZSBzxLFyYXPEsXlsYVxuIgorImhlciBiaXJpbmRlICVkIHZlICVkIGfDtm5kZXJpIHZhci5cbiIKKworIzogcmVtb3RlLmM6MjA2OAorbXNnaWQgIiAgKHVzZSBcImdpdCBwdWxsXCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycylcbiIKK21zZ3N0ciAiICAodXphayBkYWzEsSBrZW5kaSBkYWzEsW7EsXphIGJpcmxlxZ90aXJtZWsgacOnaW4gXCJnaXQgcHVsbFwiIGt1bGxhbsSxbilcbiIKKworIzogcmVtb3RlLmM6MjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcGFyc2UgZXhwZWN0ZWQgb2JqZWN0IG5hbWUgJyVzJyIKK21zZ3N0ciAiYmVrbGVuZW4gbmVzbmUgYWTEsSAnJXMnIGF5csSxxZ90xLFyxLFsYW3EsXlvciIKKworIzogcmVwbGFjZS1vYmplY3QuYzoyMQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgcmVwbGFjZSByZWYgbmFtZTogJXMiCittc2dzdHIgImhhdGFsxLEgZGXEn2nFn3Rpcm1lIGJhxZ92dXJ1c3UgYWTEsTogJXMiCisKKyM6IHJlcGxhY2Utb2JqZWN0LmM6MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHJlcGxhY2UgcmVmOiAlcyIKK21zZ3N0ciAieWluZWxlbm1pxZ8gZGXEn2nFn3Rpcm1lIGJhxZ92dXJ1c3U6ICVzIgorCisjOiByZXBsYWNlLW9iamVjdC5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlcGxhY2UgZGVwdGggdG9vIGhpZ2ggZm9yIG9iamVjdCAlcyIKK21zZ3N0ciAiJXMgbmVzbmVzaSBpw6dpbiBkZcSfacWfdGlybWUgZGVyaW5sacSfaSBwZWsgecO8a3NlayIKKworIzogcmVyZXJlLmM6MjE3IHJlcmVyZS5jOjIyNiByZXJlcmUuYzoyMjkKK21zZ2lkICJjb3JydXB0IE1FUkdFX1JSIgorbXNnc3RyICJoYXNhciBnw7ZybcO8xZ8gTUVSR0VfUlIiCisKKyM6IHJlcmVyZS5jOjI2NCByZXJlcmUuYzoyNjkKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcmVyZXJlIHJlY29yZCIKK21zZ3N0ciAicmVyZXJlIGtheWTEsSB5YXrEsWxhbcSxeW9yIgorCisjOiByZXJlcmUuYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlcmUgd2VyZSBlcnJvcnMgd2hpbGUgd3JpdGluZyAnJXMnICglcykiCittc2dzdHIgIiclcycgeWF6xLFsxLFya2VuIGhhdGFsYXIgdmFyZMSxICglcykiCisKKyM6IHJlcmVyZS5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggJyVzJyIKK21zZ3N0ciAiJyVzJyBmbG/FnyB5YXDEsWxhbWFkxLEiCisKKyM6IHJlcmVyZS5jOjUwMyByZXJlcmUuYzoxMDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb25mbGljdCBodW5rcyBpbiAnJXMnIgorbXNnc3RyICInJXMnIGnDp2luZGVraSDDp2FrxLHFn2FuIHBhcsOnYWxhciBheXLEscWfdMSxcsSxbGFtYWTEsSIKKworIzogcmVyZXJlLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB1dGltZSgpIG9uICclcyciCittc2dzdHIgIiclcycgw7x6ZXJpbmRlIHV0aW1lKCkgYmHFn2FyxLFzxLF6IgorCisjOiByZXJlcmUuYzo2OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAid3JpdGluZyAnJXMnIGZhaWxlZCIKK21zZ3N0ciAiJyVzJyB5YXrEsWxhbWFkxLEiCisKKyM6IHJlcmVyZS5jOjcxNAorIywgYy1mb3JtYXQKK21zZ2lkICJTdGFnZWQgJyVzJyB1c2luZyBwcmV2aW91cyByZXNvbHV0aW9uLiIKK21zZ3N0ciAiJyVzJyBiaXIgw7ZuY2VraSDDp8O2esO8bSBrdWxsYW7EsWxhcmFrIGhhesSxcmxhbWEgYWxhbsSxbmEgYWzEsW5kxLEiCisKKyM6IHJlcmVyZS5jOjc1MworIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCByZXNvbHV0aW9uIGZvciAnJXMnLiIKK21zZ3N0ciAiJyVzJyBpw6dpbiDDp8O2esO8bSBrYXlkZWRpbGRpLiIKKworIzogcmVyZXJlLmM6Nzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlc29sdmVkICclcycgdXNpbmcgcHJldmlvdXMgcmVzb2x1dGlvbi4iCittc2dzdHIgIiclcycgYmlyIMO2bmNla2kgw6fDtnrDvG0ga3VsbGFuxLFsYXJhayDDp8O2esO8bGTDvC4iCisKKyM6IHJlcmVyZS5jOjgwMworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgdW5saW5rIHN0cmF5ICclcyciCittc2dzdHIgIiclcycgYmHFn8SxYm/Fn3VudW4gYmHEn2xhbnTEsXPEsSBrZXNpbGVtaXlvciIKKworIzogcmVyZXJlLmM6ODA3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIHByZWltYWdlIGZvciAnJXMnIgorbXNnc3RyICInJXMnIGnDp2luIMO2bmfDtnLDvG50w7wga2F5ZGVkaWxkaSIKKworIzogcmVyZXJlLmM6ODgxIHN1Ym1vZHVsZS5jOjIwNzggYnVpbHRpbi9sb2cuYzoxODcxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ1NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICInJXMnIGRpemluaSBvbHXFn3R1cnVsYW1hZMSxIgorCisjOiByZXJlcmUuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1cGRhdGUgY29uZmxpY3RlZCBzdGF0ZSBpbiAnJXMnIgorbXNnc3RyICInJXMnIGnDp2luZGVraSDDp2FrxLHFn2FuIGR1cnVtIGfDvG5jZWxsZW5lbWVkaSIKKworIzogcmVyZXJlLmM6MTA2OCByZXJlcmUuYzoxMDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHJlbWVtYmVyZWQgcmVzb2x1dGlvbiBmb3IgJyVzJyIKK21zZ3N0ciAiJyVzJyBpw6dpbiBoYXTEsXJsYW5hbiDDp8O2esO8bSB5b2siCisKKyM6IHJlcmVyZS5jOjEwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHVubGluayAnJXMnIgorbXNnc3RyICInJXMnIGJhxJ9sYW50xLFzxLEga2VzaWxlbWl5b3IiCisKKyM6IHJlcmVyZS5jOjEwODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRlZCBwcmVpbWFnZSBmb3IgJyVzJyIKK21zZ3N0ciAiJyVzJyBpw6dpbiDDtm5nw7Zyw7xudMO8IGfDvG5jZWxsZW5kaSIKKworIzogcmVyZXJlLmM6MTA5NgorIywgYy1mb3JtYXQKK21zZ2lkICJGb3Jnb3QgcmVzb2x1dGlvbiBmb3IgJyVzJ1xuIgorbXNnc3RyICInJXMnIGnDp2luIMOnw7Z6w7xtIHVudXR1bGR1XG4iCisKKyM6IHJlcmVyZS5jOjExOTkKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiByci1jYWNoZSBkaXJlY3RvcnkiCittc2dzdHIgInJyLWNhY2hlIGRpemluaSBhw6fEsWxhbcSxeW9yIgorCisjOiByZXZpc2lvbi5jOjI0OTcKK21zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoIGFwcGVhcnMgdG8gYmUgYnJva2VuIgorbXNnc3RyICJnZcOnZXJsaSBkYWzEsW7EsXogYm96dWsgZ2liaSBnw7Zyw7xuw7x5b3IiCisKKyM6IHJldmlzaW9uLmM6MjUwMAorIywgYy1mb3JtYXQKK21zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoICclcycgZG9lcyBub3QgaGF2ZSBhbnkgY29tbWl0cyB5ZXQiCittc2dzdHIgImdlw6dlcmxpIGRhbMSxbsSxeiAnJXMnIGnDp2luZGUgaGVuw7x6IGJpciBnw7ZuZGVyaSB5b2siCisKKyM6IHJldmlzaW9uLmM6MjcwOAorbXNnaWQgIi0tZmlyc3QtcGFyZW50IGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYmlzZWN0IgorbXNnc3RyICItLWZpcnN0LXBhcmVudCwgLS1iaXNlY3QgaWxlIHV5dW1zdXoiCisKKyM6IHJldmlzaW9uLmM6MjcxMgorbXNnaWQgIi1MIGRvZXMgbm90IHlldCBzdXBwb3J0IGRpZmYgZm9ybWF0cyBiZXNpZGVzIC1wIGFuZCAtcyIKK21zZ3N0ciAiLUwsIC1wIHZlIC1zIGTEscWfxLFuZGEgYmHFn2thIGRpZmYgYmnDp2ltbGVyaW5pIGhlbsO8eiBkZXN0ZWtsZW1peW9yIgorCisjOiBydW4tY29tbWFuZC5jOjc2MworbXNnaWQgIm9wZW4gL2Rldi9udWxsIGZhaWxlZCIKK21zZ3N0ciAiL2Rldi9udWxsIGHDp8SxbGFtYWTEsSIKKworIzogcnVuLWNvbW1hbmQuYzoxMjY5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgYXN5bmMgdGhyZWFkOiAlcyIKK21zZ3N0ciAiYXN5bmMgacWfIHBhcsOnYWPEscSfxLEgb2x1xZ90dXJ1bGFtYWTEsTogJXMiCisKKyM6IHJ1bi1jb21tYW5kLmM6MTMzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlICclcycgaG9vayB3YXMgaWdub3JlZCBiZWNhdXNlIGl0J3Mgbm90IHNldCBhcyBleGVjdXRhYmxlLlxuIgorIllvdSBjYW4gZGlzYWJsZSB0aGlzIHdhcm5pbmcgd2l0aCBgZ2l0IGNvbmZpZyBhZHZpY2UuaWdub3JlZEhvb2sgZmFsc2VgLiIKK21zZ3N0ciAiIgorIiclcycga2FuY2FzxLEgeW9rIHNhecSxbGTEsSDDp8O8bmvDvCBiaXIgw6dhbMSxxZ90xLFyxLFsYWJpbGlyIG9sYXJhayBheWFybGFubWFtxLHFny5cbiIKKyJCdSB1eWFyxLF5xLEgJ2dpdCBjb25maWcgYWR2aWNlLmlnbm9yZWRIb29rIGZhbHNlJyBpbGUga2FwYXRhYmlsaXJzaW5pei4iCisKKyM6IHNlbmQtcGFjay5jOjE0NAorbXNnaWQgInVuZXhwZWN0ZWQgZmx1c2ggcGFja2V0IHdoaWxlIHJlYWRpbmcgcmVtb3RlIHVucGFjayBzdGF0dXMiCittc2dzdHIgInV6YWsga29udW0gYcOnxLFtIGR1cnVtdSBva3VudXJrZW4gYmVrbGVubWVkaWsgZmxvxZ8gcGFrZXRpIgorCisjOiBzZW5kLXBhY2suYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIHJlbW90ZSB1bnBhY2sgc3RhdHVzOiAlcyIKK21zZ3N0ciAidXphayBrb251bSBhw6fEsW0gZHVydW11IGF5csSxxZ90xLFyxLFsYW1hZMSxOiAlcyIKKworIzogc2VuZC1wYWNrLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW90ZSB1bnBhY2sgZmFpbGVkOiAlcyIKK21zZ3N0ciAidXphayBrb251bSBhw6fEsW3EsSBiYcWfYXLEsXPEsXo6ICVzIgorCisjOiBzZW5kLXBhY2suYzozMDkKK21zZ2lkICJmYWlsZWQgdG8gc2lnbiB0aGUgcHVzaCBjZXJ0aWZpY2F0ZSIKK21zZ3N0ciAiaXRtZSBzZXJ0aWZpa2FzxLEgaW16YWxhbmFtYWTEsSIKKworIzogc2VuZC1wYWNrLmM6NDIzCittc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCAtLXNpZ25lZCBwdXNoIgorbXNnc3RyICJhbMSxY8SxIHXDpyAtLXNpZ25lZCBpdG1leWkgZGVzdGVrbGVtaXlvciIKKworIzogc2VuZC1wYWNrLmM6NDI1Cittc2dpZCAiIgorIm5vdCBzZW5kaW5nIGEgcHVzaCBjZXJ0aWZpY2F0ZSBzaW5jZSB0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tIgorInNpZ25lZCBwdXNoIgorbXNnc3RyICIiCisiYWzEsWPEsSB1w6cgLS1zaWduZWQgaXRtZXlpIGRlc3Rla2xlbWVkacSfaW5kZW4gZG9sYXnEsSBiaXIgaXRtZSBzZXJ0aWZpa2FzxLEgIgorImfDtm5kZXJpbG1peW9yIgorCisjOiBzZW5kLXBhY2suYzo0MzcKK21zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tYXRvbWljIHB1c2giCittc2dzdHIgImFsxLFjxLEgdcOnIC0tYXRvbWljIGl0bWV5aSBkZXN0ZWtsZW1peW9yIgorCisjOiBzZW5kLXBhY2suYzo0NDIKK21zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IHB1c2ggb3B0aW9ucyIKK21zZ3N0ciAiYWzEsWPEsSB1w6cgaXRtZSBzZcOnZW5la2xlcmluaSBkZXN0ZWtsZW1peW9yIgorCisjOiBzZXF1ZW5jZXIuYzoxOTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21taXQgbWVzc2FnZSBjbGVhbnVwIG1vZGUgJyVzJyIKK21zZ3N0ciAiZ2XDp2Vyc2l6IGfDtm5kZXJpIGlsZXRpc2kgdGVtaXpsZW1lIGtpcGkgJyVzJyIKKworIzogc2VxdWVuY2VyLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgJyVzJyIKK21zZ3N0ciAiJyVzJyBzaWxpbmVtZWRpIgorCisjOiBzZXF1ZW5jZXIuYzozMTUgYnVpbHRpbi9yZWJhc2UuYzo3ODUgYnVpbHRpbi9yZWJhc2UuYzoxNzUwIGJ1aWx0aW4vcm0uYzozODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlbW92ZSAnJXMnIgorbXNnc3RyICInJXMnIGthbGTEsXLEsWxhbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjMyNQorbXNnaWQgInJldmVydCIKK21zZ3N0ciAiZ2VyaSBhbCIKKworIzogc2VxdWVuY2VyLmM6MzI3Cittc2dpZCAiY2hlcnJ5LXBpY2siCittc2dzdHIgInNlw6ctYWwiCisKKyM6IHNlcXVlbmNlci5jOjMyOQorbXNnaWQgInJlYmFzZSIKK21zZ3N0ciAieWVuaWRlbiB0ZW1lbGxlbmRpciIKKworIzogc2VxdWVuY2VyLmM6MzMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uOiAlZCIKK21zZ3N0ciAiYmlsaW5tZXllbiBleWxlbTogJWQiCisKKyM6IHNlcXVlbmNlci5jOjM4OQorbXNnaWQgIiIKKyJhZnRlciByZXNvbHZpbmcgdGhlIGNvbmZsaWN0cywgbWFyayB0aGUgY29ycmVjdGVkIHBhdGhzXG4iCisid2l0aCAnZ2l0IGFkZCA8cGF0aHM+JyBvciAnZ2l0IHJtIDxwYXRocz4nIgorbXNnc3RyICIiCisiw6dha8SxxZ9tYWxhcsSxIMOnw7Z6ZMO8a3RlbiBzb25yYSBkb8SfcnVzdSB2ZXJpbGVuIHlvbGxhcsSxICdnaXQgYWRkIDx5b2xsYXI+J1xuIgorInZleWEgJ2dpdCBybSA8eW9sbGFyPicgaWxlIGltbGV5aW4iCisKKyM6IHNlcXVlbmNlci5jOjM5MgorbXNnaWQgIiIKKyJhZnRlciByZXNvbHZpbmcgdGhlIGNvbmZsaWN0cywgbWFyayB0aGUgY29ycmVjdGVkIHBhdGhzXG4iCisid2l0aCAnZ2l0IGFkZCA8cGF0aHM+JyBvciAnZ2l0IHJtIDxwYXRocz4nXG4iCisiYW5kIGNvbW1pdCB0aGUgcmVzdWx0IHdpdGggJ2dpdCBjb21taXQnIgorbXNnc3RyICIiCisiw6dha8SxxZ9tYWxhcsSxIMOnw7Z6ZMO8a3RlbiBzb25yYSBkb8SfcnVzdSB2ZXJpbGVuIHlvbGxhcsSxICdnaXQgYWRkIDx5b2xsYXI+J1xuIgorInZleWEgJ2dpdCBybSA8eW9sbGFyPicgaWxlIGltbGV5aW4gdmUgw6fEsWthbiBzb251Y3VcbiIKKyInZ2l0IGNvbW1pdCcgaWxlIGfDtm5kZXJpbiIKKworIzogc2VxdWVuY2VyLmM6NDA1IHNlcXVlbmNlci5jOjI5MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGxvY2sgJyVzJyIKK21zZ3N0ciAiJyVzJyBraWxpdGxlbmVtZWRpIgorCisjOiBzZXF1ZW5jZXIuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHdyaXRlIGVvbCB0byAnJXMnIgorbXNnc3RyICJzYXTEsXIgc29udSDFn3VyYXlhIHlhesSxbGFtYWTEsTogJyVzJyIKKworIzogc2VxdWVuY2VyLmM6NDE3IHNlcXVlbmNlci5jOjI3MDYgc2VxdWVuY2VyLmM6MjkwNyBzZXF1ZW5jZXIuYzoyOTIxCisjOiBzZXF1ZW5jZXIuYzozMTg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmaW5hbGl6ZSAnJXMnIgorbXNnc3RyICInJXMnIHRhbWFtbGFuYW1hZMSxIgorCisjOiBzZXF1ZW5jZXIuYzo0NDAgc2VxdWVuY2VyLmM6MTYxMyBzZXF1ZW5jZXIuYzoyNzI2IHNlcXVlbmNlci5jOjMxNjcKKyM6IHNlcXVlbmNlci5jOjMyNzYgYnVpbHRpbi9hbS5jOjI0OSBidWlsdGluL2NvbW1pdC5jOjc4NyBidWlsdGluL21lcmdlLmM6MTEyMAorIzogYnVpbHRpbi9yZWJhc2UuYzo1OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgJyVzJyIKK21zZ3N0ciAiJyVzJyBva3VuYW1hZMSxIgorCisjOiBzZXF1ZW5jZXIuYzo0NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAieW91ciBsb2NhbCBjaGFuZ2VzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzLiIKK21zZ3N0ciAiJXMgaWxlIHllcmVsIGRlxJ9pxZ9pa2xpa2xlcmluaXppbiDDvHplcmluZSB5YXrEsWxhY2FrdMSxci4iCisKKyM6IHNlcXVlbmNlci5jOjQ3MAorbXNnaWQgImNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSB0byBwcm9jZWVkLiIKK21zZ3N0ciAixLBsZXJsZW1layBpw6dpbiBkZcSfacWfaWtsaWtsZXJpbml6aSBnw7ZuZGVyaW4gdmV5YSB6dWxhbGF5xLFuLiIKKworIzogc2VxdWVuY2VyLmM6NTAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYXN0LWZvcndhcmQiCittc2dzdHIgIiVzOiBpbGVyaSBzYXIiCisKKyM6IHNlcXVlbmNlci5jOjU0MSBidWlsdGluL3RhZy5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGNsZWFudXAgbW9kZSAlcyIKK21zZ3N0ciAiR2XDp2Vyc2l6IHRlbWl6bGlrIGtpcGkgJXMiCisKKyMuIFRSQU5TTEFUT1JTOiAlcyB3aWxsIGJlICJyZXZlcnQiLCAiY2hlcnJ5LXBpY2siIG9yCisjLiAicmViYXNlIi4KKyMuCisjOiBzZXF1ZW5jZXIuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IFVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKK21zZ3N0ciAiJXM6IFllbmkgaW5kZWtzIGRvc3lhc8SxIHlhesSxbGFtxLF5b3IiCisKKyM6IHNlcXVlbmNlci5jOjY1MgorbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgY2FjaGUgdHJlZSIKK21zZ3N0ciAiw7ZuYmVsbGVrIGHEn2FjxLEgZ8O8bmNlbGxlbmVtaXlvciIKKworIzogc2VxdWVuY2VyLmM6NjY2Cittc2dpZCAiY291bGQgbm90IHJlc29sdmUgSEVBRCBjb21taXQiCittc2dzdHIgIkhFQUQgZ8O2bmRlcmlzaSDDp8O2esO8bGVtZWRpIgorCisjOiBzZXF1ZW5jZXIuYzo3NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8ga2V5IHByZXNlbnQgaW4gJyUuKnMnIgorbXNnc3RyICInJS4qcycgacOnaW5kZSBiaXIgYW5haHRhciB5b2siCisKKyM6IHNlcXVlbmNlci5jOjc1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVxdW90ZSB2YWx1ZSBvZiAnJXMnIgorbXNnc3RyICInJXMnIMO2Z2VzaW5pbiB0xLFybmFrbGFyxLEga2FsZMSxcsSxbGFtxLF5b3IiCisKKyM6IHNlcXVlbmNlci5jOjc5NCB3cmFwcGVyLmM6MTkwIHdyYXBwZXIuYzozNjAgYnVpbHRpbi9hbS5jOjcxMAorIzogYnVpbHRpbi9hbS5jOjgwMiBidWlsdGluL21lcmdlLmM6MTExNyBidWlsdGluL3JlYmFzZS5jOjEwNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiJyVzJyBva3VtYSBpw6dpbiBhw6fEsWxhbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjgwNAorbXNnaWQgIidHSVRfQVVUSE9SX05BTUUnIGFscmVhZHkgZ2l2ZW4iCittc2dzdHIgIidHSVRfQVVUSE9SX05BTUUnIGhhbGloYXrEsXJkYSB2ZXJpbG1pxZ8iCisKKyM6IHNlcXVlbmNlci5jOjgwOQorbXNnaWQgIidHSVRfQVVUSE9SX0VNQUlMJyBhbHJlYWR5IGdpdmVuIgorbXNnc3RyICInR0lUX0FVVEhPUl9FTUFJTCcgaGFsaWhhesSxcmRhIHZlcmlsbWnFnyIKKworIzogc2VxdWVuY2VyLmM6ODE0Cittc2dpZCAiJ0dJVF9BVVRIT1JfREFURScgYWxyZWFkeSBnaXZlbiIKK21zZ3N0ciAiJ0dJVF9BVVRIT1JfREFURScgaGFsaWhhesSxcmRhIHZlcmlsbWnFnyIKKworIzogc2VxdWVuY2VyLmM6ODE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdmFyaWFibGUgJyVzJyIKK21zZ3N0ciAiYmlsaW5tZXllbiBkZcSfacWfa2VuICclcyciCisKKyM6IHNlcXVlbmNlci5jOjgyMworbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfTkFNRSciCittc2dzdHIgIidHSVRfQVVUSE9SX05BTUUnIGVrc2lrIgorCisjOiBzZXF1ZW5jZXIuYzo4MjUKK21zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX0VNQUlMJyIKK21zZ3N0ciAiJ0dJVF9BVVRIT1JfRU1BSUwnIGVrc2lrIgorCisjOiBzZXF1ZW5jZXIuYzo4MjcKK21zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX0RBVEUnIgorbXNnc3RyICInR0lUX0FVVEhPUl9EQVRFJyBla3NpayIKKworIzogc2VxdWVuY2VyLmM6ODc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ5b3UgaGF2ZSBzdGFnZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZVxuIgorIklmIHRoZXNlIGNoYW5nZXMgYXJlIG1lYW50IHRvIGJlIHNxdWFzaGVkIGludG8gdGhlIHByZXZpb3VzIGNvbW1pdCwgcnVuOlxuIgorIlxuIgorIiAgZ2l0IGNvbW1pdCAtLWFtZW5kICVzXG4iCisiXG4iCisiSWYgdGhleSBhcmUgbWVhbnQgdG8gZ28gaW50byBhIG5ldyBjb21taXQsIHJ1bjpcbiIKKyJcbiIKKyIgIGdpdCBjb21taXQgJXNcbiIKKyJcbiIKKyJJbiBib3RoIGNhc2VzLCBvbmNlIHlvdSdyZSBkb25lLCBjb250aW51ZSB3aXRoOlxuIgorIlxuIgorIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCittc2dzdHIgIiIKKyLDh2FsxLHFn21hIGHEn2FjxLFuxLF6ZGEgaGF6xLFybGFubcSxxZ8gZGXEn2nFn2lrbGlrbGVyaW5peiB2YXIuXG4iCisiQnUgZGXEn2nFn2lrbGlrbGVyaW4gYmlyIMO2bmNla2kgZ8O2bmRlcml5bGUgZ2l0bWnFnyBvbG1hc8SxIGdlcmVraXlvcnNhOlxuIgorIlxuIgorIlx0Z2l0IGNvbW1pdCAtLWFtZW5kICVzIGtvbXV0dW51IMOnYWzEscWfdMSxcsSxbi5cbiIKKyJcbiIKKyJCdW5sYXIgacOnaW4geWVuaSBiaXIgZ8O2bmRlcmkgaGF6xLFybGFtYWsgaXN0aXlvcnNhbsSxejpcbiIKKyJcbiIKKyJcdGdpdCBjb21taXQgJXMga29tdXR1bnUgw6dhbMSxxZ90xLFyxLFuLlxuIgorIlxuIgorIkhlciBpa2kgZHVydW1kYSBkYSBpxZ9pbml6IGJpdHRpa3RlbiBzb25yYTpcbiIKKyJcbiIKKyJcdGdpdCByZWJhc2UgLS1jb250aW51ZSBrb211dHUgaWxlIHPDvHJkw7xyw7xuLlxuIgorCisjOiBzZXF1ZW5jZXIuYzoxMTQ4Cittc2dpZCAiJ3ByZXBhcmUtY29tbWl0LW1zZycgaG9vayBmYWlsZWQiCittc2dzdHIgIidwcmVwYXJlLWNvbW1pdC1tc2cnIGJhxZ9hcsSxc8SxeiBvbGR1IgorCisjOiBzZXF1ZW5jZXIuYzoxMTU0Cittc2dpZCAiIgorIllvdXIgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyB3ZXJlIGNvbmZpZ3VyZWQgYXV0b21hdGljYWxseSBiYXNlZFxuIgorIm9uIHlvdXIgdXNlcm5hbWUgYW5kIGhvc3RuYW1lLiBQbGVhc2UgY2hlY2sgdGhhdCB0aGV5IGFyZSBhY2N1cmF0ZS5cbiIKKyJZb3UgY2FuIHN1cHByZXNzIHRoaXMgbWVzc2FnZSBieSBzZXR0aW5nIHRoZW0gZXhwbGljaXRseS4gUnVuIHRoZVxuIgorImZvbGxvd2luZyBjb21tYW5kIGFuZCBmb2xsb3cgdGhlIGluc3RydWN0aW9ucyBpbiB5b3VyIGVkaXRvciB0byBlZGl0XG4iCisieW91ciBjb25maWd1cmF0aW9uIGZpbGU6XG4iCisiXG4iCisiICAgIGdpdCBjb25maWcgLS1nbG9iYWwgLS1lZGl0XG4iCisiXG4iCisiQWZ0ZXIgZG9pbmcgdGhpcywgeW91IG1heSBmaXggdGhlIGlkZW50aXR5IHVzZWQgZm9yIHRoaXMgY29tbWl0IHdpdGg6XG4iCisiXG4iCisiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgorbXNnc3RyICIiCisiQWTEsW7EsXogdmUgZS1wb3N0YSBhZHJlc2luaXoga3VsbGFuxLFjxLEgYWTEsW7EsXogdmUgbWFraW5lIGFkxLEgdGVtZWwgYWzEsW5hcmFrXG4iCisia2VuZGlsacSfaW5kZW4geWFwxLFsYW5kxLFyxLFsZMSxLiBMw7x0ZmVuIGRvxJ9ydSBvbHVwIG9sbWFkxLHEn8SxbsSxIGRlbmV0bGV5aW4uXG4iCisiQnUgaWxldGl5aSBvbmxhcsSxIGVsIGlsZSBiZWxpcnRlcmVrIGdpemxleWViaWxpcnNpbml6LiBBxZ9hxJ/EsWRha2kga29tdXR1XG4iCisiw6dhbMSxxZ90xLFyxLFuIHZlIHlhcMSxbGFuZMSxcm1hIGRvc3lhbsSxesSxIGTDvHplbmxlbWVrIGnDp2luIGTDvHplbmxleWljaW5pemRla2lcbiIKKyJ5w7ZuZXJnZWxlcmkgaXpsZXlpbjpcbiIKKyJcbiIKKyJcdGdpdCBjb25maWcgLS1nbG9iYWwgLS1lZGl0XG4iCisiXG4iCisiQnVuZGFuIHNvbnJhIGJ1IGfDtm5kZXJpIGnDp2luIGt1bGxhbsSxbGFuIGtpbWxpxJ9pIGTDvHplbHRtZWsgaXN0ZXllYmlsaXJzaW5pejpcbiIKKyJcbiIKKyJcdGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgorCisjOiBzZXF1ZW5jZXIuYzoxMTY3Cittc2dpZCAiIgorIllvdXIgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyB3ZXJlIGNvbmZpZ3VyZWQgYXV0b21hdGljYWxseSBiYXNlZFxuIgorIm9uIHlvdXIgdXNlcm5hbWUgYW5kIGhvc3RuYW1lLiBQbGVhc2UgY2hlY2sgdGhhdCB0aGV5IGFyZSBhY2N1cmF0ZS5cbiIKKyJZb3UgY2FuIHN1cHByZXNzIHRoaXMgbWVzc2FnZSBieSBzZXR0aW5nIHRoZW0gZXhwbGljaXRseTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLm5hbWUgXCJZb3VyIE5hbWVcIlxuIgorIiAgICBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIuZW1haWwgeW91QGV4YW1wbGUuY29tXG4iCisiXG4iCisiQWZ0ZXIgZG9pbmcgdGhpcywgeW91IG1heSBmaXggdGhlIGlkZW50aXR5IHVzZWQgZm9yIHRoaXMgY29tbWl0IHdpdGg6XG4iCisiXG4iCisiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgorbXNnc3RyICIiCisiQWTEsW7EsXogdmUgZS1wb3N0YSBhZHJlc2luaXoga3VsbGFuxLFjxLEgYWTEsW7EsXogdmUgbWFraW5lIGFkxLEgdGVtZWwgYWzEsW5hcmFrXG4iCisia2VuZGlsacSfaW5kZW4geWFwxLFsYW5kxLFyxLFsZMSxLiBMw7x0ZmVuIGRvxJ9ydSBvbHVwIG9sbWFkxLHEn8SxbsSxIGRlbmV0bGV5aW4uXG4iCisiQnUgaWxldGl5aSBvbmxhcsSxIGVsIGlsZSBiZWxpcnRlcmVrIGdpemxleWViaWxpcnNpbml6OlxuIgorIlxuIgorIlx0Z2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLm5hbWUgXCJBZMSxbsSxelwiXG4iCisiXHRnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIuZW1haWwgXCJzaXpAZS1wb3N0YS5jb21cIlxuIgorIlxuIgorIkJ1bmRhbiBzb25yYSBidSBnw7ZuZGVyaSBpw6dpbiBrdWxsYW7EsWxhbiBraW1sacSfaSBkw7x6ZWx0bWVrIGlzdGV5ZWJpbGlyc2luaXo6XG4iCisiXG4iCisiXHRnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKKworIzogc2VxdWVuY2VyLmM6MTIwOQorbXNnaWQgImNvdWxkbid0IGxvb2sgdXAgbmV3bHkgY3JlYXRlZCBjb21taXQiCittc2dzdHIgInllbmkgb2x1xZ90dXJ1bGFuIGfDtm5kZXJpIGFyYW5hbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjEyMTEKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgbmV3bHkgY3JlYXRlZCBjb21taXQiCittc2dzdHIgInllbmkgb2x1xZ90dXJ1bGFuIGfDtm5kZXJpIGF5csSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBzZXF1ZW5jZXIuYzoxMjU3Cittc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgSEVBRCBhZnRlciBjcmVhdGluZyBjb21taXQiCittc2dzdHIgIkhFQUQsIGfDtm5kZXJpIG9sdcWfdHVyZHVrdGFuIHNvbnJhIMOnw7Z6w7xsZW1peW9yIgorCisjOiBzZXF1ZW5jZXIuYzoxMjU5Cittc2dpZCAiZGV0YWNoZWQgSEVBRCIKK21zZ3N0ciAiYXlyxLFrIEhFQUQiCisKKyM6IHNlcXVlbmNlci5jOjEyNjMKK21zZ2lkICIgKHJvb3QtY29tbWl0KSIKK21zZ3N0ciAiIChrw7ZrIGfDtm5kZXJpKSIKKworIzogc2VxdWVuY2VyLmM6MTI4NAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBIRUFEIgorbXNnc3RyICJIRUFEIGF5csSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBzZXF1ZW5jZXIuYzoxMjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgJXMgaXMgbm90IGEgY29tbWl0ISIKK21zZ3N0ciAiSEVBRCAlcyBiaXIgZ8O2bmRlcmkgZGXEn2lsIgorCisjOiBzZXF1ZW5jZXIuYzoxMjkwIHNlcXVlbmNlci5jOjEzNjQgYnVpbHRpbi9jb21taXQuYzoxNTc0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIEhFQUQgY29tbWl0IgorbXNnc3RyICJIRUFEIGfDtm5kZXJpc2kgYXlyxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjEzNDIgc2VxdWVuY2VyLmM6MTk2OAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21taXQgYXV0aG9yIgorbXNnc3RyICJnw7ZuZGVyaSB5YXphcsSxIGF5csSxxZ90xLFyxLFsYW3EsXlvciIKKworIzogc2VxdWVuY2VyLmM6MTM1MyBidWlsdGluL2FtLmM6MTU2NiBidWlsdGluL21lcmdlLmM6Njg3Cittc2dpZCAiZ2l0IHdyaXRlLXRyZWUgZmFpbGVkIHRvIHdyaXRlIGEgdHJlZSIKK21zZ3N0ciAiZ2l0IHdyaXRlLXRyZWUgYmlyIGHEn2FjYSB5YXphbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjEzODYgc2VxdWVuY2VyLmM6MTQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBjb21taXQgbWVzc2FnZSBmcm9tICclcyciCittc2dzdHIgIiclcycga29udW11bmRhbiBnw7ZuZGVyaSBpbGV0aXNpIG9rdW5hbcSxeW9yIgorCisjOiBzZXF1ZW5jZXIuYzoxNDEzIGJ1aWx0aW4vYW0uYzoxNTg4IGJ1aWx0aW4vY29tbWl0LmM6MTY3MyBidWlsdGluL21lcmdlLmM6ODg2CisjOiBidWlsdGluL21lcmdlLmM6OTExCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGNvbW1pdCBvYmplY3QiCittc2dzdHIgImfDtm5kZXJpIG5lc25lc2kgeWF6xLFsYW1hZMSxIgorCisjOiBzZXF1ZW5jZXIuYzoxNDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgJXMiCittc2dzdHIgIiVzIGfDtm5kZXJpc2kgYXlyxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjE0NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIHBhcmVudCBjb21taXQgJXMiCittc2dzdHIgIsO8c3QgZ8O2bmRlcmkgJXMgYXlyxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjE1NjIgc2VxdWVuY2VyLmM6MTY3MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbW1hbmQ6ICVkIgorbXNnc3RyICJiaWxpbm1leWVuIGtvbXV0OiAlZCIKKworIzogc2VxdWVuY2VyLmM6MTYyMCBzZXF1ZW5jZXIuYzoxNjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAlZCBjb21taXRzLiIKK21zZ3N0ciAiQnUgJWQgZ8O2bmRlcmluaW4gYmlyIGJpcmxlxZ9pbWkuIgorCisjOiBzZXF1ZW5jZXIuYzoxNjMwCittc2dpZCAibmVlZCBhIEhFQUQgdG8gZml4dXAiCittc2dzdHIgImTDvHplbHRtZWsgacOnaW4gYmlyIEhFQUQgZ2VyZWtpeW9yIgorCisjOiBzZXF1ZW5jZXIuYzoxNjMyIHNlcXVlbmNlci5jOjMyMTIKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBIRUFEIgorbXNnc3RyICJIRUFEIG9rdW5hbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjE2MzQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBIRUFEJ3MgY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIkhFQUQnaW4gZ8O2bmRlcmkgaWxldGlzaSBva3VuYW1hZMSxIgorCisjOiBzZXF1ZW5jZXIuYzoxNjQwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCB3cml0ZSAnJXMnIgorbXNnc3RyICInJXMnIHlhesSxbGFtxLF5b3IiCisKKyM6IHNlcXVlbmNlci5jOjE2NDcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5NgorbXNnaWQgIlRoaXMgaXMgdGhlIDFzdCBjb21taXQgbWVzc2FnZToiCittc2dzdHIgIkJpcmluY2kgZ8O2bmRlcmkgaWxldGlzaSBidToiCisKKyM6IHNlcXVlbmNlci5jOjE2NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgY29tbWl0IG1lc3NhZ2Ugb2YgJXMiCittc2dzdHIgIiVzIGfDtm5kZXJpIGlsZXRpc2kgb2t1bmFtYWTEsSIKKworIzogc2VxdWVuY2VyLmM6MTY2MgorIywgYy1mb3JtYXQKK21zZ2lkICJUaGlzIGlzIHRoZSBjb21taXQgbWVzc2FnZSAjJWQ6IgorbXNnc3RyICJHw7ZuZGVyaSBpbGV0aXNpICMlZCBidToiCisKKyM6IHNlcXVlbmNlci5jOjE2NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlIGNvbW1pdCBtZXNzYWdlICMlZCB3aWxsIGJlIHNraXBwZWQ6IgorbXNnc3RyICJHw7ZuZGVyaSBpbGV0aXNpICMlZCBhdGxhbmFjYWs6IgorCisjOiBzZXF1ZW5jZXIuYzoxNzU2Cittc2dpZCAieW91ciBpbmRleCBmaWxlIGlzIHVubWVyZ2VkLiIKK21zZ3N0ciAiaW5kZWtzIGRvc3lhbsSxeiBiaXJsZcWfdGlyaWxtZW1pxZ8iCisKKyM6IHNlcXVlbmNlci5jOjE3NjMKK21zZ2lkICJjYW5ub3QgZml4dXAgcm9vdCBjb21taXQiCittc2dzdHIgImvDtmsgZ8O2bmRlcmkgZMO8emVsdGlsZW1peW9yIgorCisjOiBzZXF1ZW5jZXIuYzoxNzgyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdCAlcyBpcyBhIG1lcmdlIGJ1dCBubyAtbSBvcHRpb24gd2FzIGdpdmVuLiIKK21zZ3N0ciAiJXMgZ8O2bmRlcmlzaSBiaXIgYmlybGXFn3Rpcm1lLCBhbmNhayBiaXIgLW0gc2XDp2VuZcSfaSB2ZXJpbG1lZGkuIgorCisjOiBzZXF1ZW5jZXIuYzoxNzkwIHNlcXVlbmNlci5jOjE3OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0ICVzIGRvZXMgbm90IGhhdmUgcGFyZW50ICVkIgorbXNnc3RyICIlcyBnw7ZuZGVyaXNpbmluICVkIGRpeWUgYmlyIMO8c3Qgw7ZnZXNpIHlvayIKKworIzogc2VxdWVuY2VyLmM6MTgwNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZ2V0IGNvbW1pdCBtZXNzYWdlIGZvciAlcyIKK21zZ3N0ciAiJXMgZ8O2bmRlcmkgaWxldGlzaSBhbMSxbmFtxLF5b3IiCisKKyMuIFRSQU5TTEFUT1JTOiBUaGUgZmlyc3QgJXMgd2lsbCBiZSBhICJ0b2RvIiBjb21tYW5kIGxpa2UKKyMuICJyZXZlcnQiIG9yICJwaWNrIiwgdGhlIHNlY29uZCAlcyBhIFNIQTEuCisjOiBzZXF1ZW5jZXIuYzoxODIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW5ub3QgcGFyc2UgcGFyZW50IGNvbW1pdCAlcyIKK21zZ3N0ciAiJXM6IMO8c3QgZ8O2bmRlcmkgJXMgYXlyxLHFn3TEsXLEsWxhbcSxeW9yIgorCisjOiBzZXF1ZW5jZXIuYzoxODg4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICInJXMnLCAnJXMnIG9sYXJhayB5ZW5pZGVuIGFkbGFuZMSxcsSxbGFtYWTEsSIKKworIzogc2VxdWVuY2VyLmM6MTk0MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmV2ZXJ0ICVzLi4uICVzIgorbXNnc3RyICIlcyBnZXJpIGFsxLFuYW1hZMSxLi4uICVzIgorCisjOiBzZXF1ZW5jZXIuYzoxOTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBhcHBseSAlcy4uLiAlcyIKK21zZ3N0ciAiJXMgdXlndWxhbmFtYWTEsS4uLiAlcyIKKworIzogc2VxdWVuY2VyLmM6MTk2MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcm9wcGluZyAlcyAlcyAtLSBwYXRjaCBjb250ZW50cyBhbHJlYWR5IHVwc3RyZWFtXG4iCittc2dzdHIgIiVzICVzIGLEsXJha8SxbMSxeW9yIC0tIHlhbWEgacOnZXJpxJ9pIGhhbGloYXrEsXJkYSDDvHN0a2F5bmFrdGFcbiIKKworIzogc2VxdWVuY2VyLmM6MjAxOAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIKK21zZ3N0ciAiZ2l0ICVzOiBpbmRla3Mgb2t1bmFtYWTEsSIKKworIzogc2VxdWVuY2VyLmM6MjAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWZyZXNoIHRoZSBpbmRleCIKK21zZ3N0ciAiZ2l0ICVzOiBpbmRla3MgeWVuaWxlbmVtZWRpIgorCisjOiBzZXF1ZW5jZXIuYzoyMTAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRvZXMgbm90IGFjY2VwdCBhcmd1bWVudHM6ICclcyciCittc2dzdHIgIiVzIGRlxJ9pxZ9rZW4ga2FidWwgZXRtaXlvcjogJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MjExMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGFyZ3VtZW50cyBmb3IgJXMiCittc2dzdHIgIiVzIGnDp2luIGVrc2lrIGRlxJ9pxZ9rZW4iCisKKyM6IHNlcXVlbmNlci5jOjIxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlICclcyciCittc2dzdHIgIiclcycgYXlyxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjIyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lICVkOiAlLipzIgorbXNnc3RyICJnZcOnZXJzaXogc2F0xLFyICVkOiAlLipzIgorCisjOiBzZXF1ZW5jZXIuYzoyMjE0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCAnJXMnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCittc2dzdHIgIsO2bmNlc2luZGUgYmlyIGfDtm5kZXJpIG9sbWFkYW4gJyVzJyB5YXDEsWxhbcSxeW9yIgorCisjOiBzZXF1ZW5jZXIuYzoyMjk4Cittc2dpZCAiY2FuY2VsbGluZyBhIGNoZXJyeSBwaWNraW5nIGluIHByb2dyZXNzIgorbXNnc3RyICJzw7xybWVrdGUgb2xhbiBiaXIgc2XDpy1hbCBpcHRhbCBlZGlsaXlvciIKKworIzogc2VxdWVuY2VyLmM6MjMwNQorbXNnaWQgImNhbmNlbGxpbmcgYSByZXZlcnQgaW4gcHJvZ3Jlc3MiCittc2dzdHIgInPDvHJtZWt0ZSBvbGFuIGJpciBnZXJpIGFsIGlwdGFsIGVkaWxpeW9yIgorCisjOiBzZXF1ZW5jZXIuYzoyMzQ5Cittc2dpZCAicGxlYXNlIGZpeCB0aGlzIHVzaW5nICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJy4iCittc2dzdHIgImzDvHRmZW4gYnVudSAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycga3VsbGFuYXJhayBvbmFyxLFuLiIKKworIzogc2VxdWVuY2VyLmM6MjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnVzYWJsZSBpbnN0cnVjdGlvbiBzaGVldDogJyVzJyIKK21zZ3N0ciAia3VsbGFuxLFsYWJpbGlyIG9sbWF5YW4gecO2bmVyZ2UgdGFibG9zdTogJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MjM1NgorbXNnaWQgIm5vIGNvbW1pdHMgcGFyc2VkLiIKK21zZ3N0ciAiSGnDp2JpciBnw7ZuZGVyaSBheXLEscWfdMSxcsSxbG1hZMSxLiIKKworIzogc2VxdWVuY2VyLmM6MjM2NworbXNnaWQgImNhbm5vdCBjaGVycnktcGljayBkdXJpbmcgYSByZXZlcnQuIgorbXNnc3RyICJiaXIgZ2VyaSBhbCBzxLFyYXPEsW5kYSBzZcOnLWFsIHlhcMSxbGFtxLF5b3IiCisKKyM6IHNlcXVlbmNlci5jOjIzNjkKK21zZ2lkICJjYW5ub3QgcmV2ZXJ0IGR1cmluZyBhIGNoZXJyeS1waWNrLiIKK21zZ3N0ciAiYmlyIHNlw6ctYWwgc8SxcmFzxLFuZGEgZ2VyaSBhbCB5YXDEsWxhbcSxeW9yIgorCisjOiBzZXF1ZW5jZXIuYzoyNDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdmFsdWUgZm9yICVzOiAlcyIKK21zZ3N0ciAiJXMgacOnaW4gZ2XDp2Vyc2l6IGRlxJ9lcjogJXMiCisKKyM6IHNlcXVlbmNlci5jOjI1NDAKK21zZ2lkICJ1bnVzYWJsZSBzcXVhc2gtb250byIKK21zZ3N0ciAia3VsbGFuxLFsYWJpbGlyIG9sbWF5YW4gc3F1YXNoLW9udG8iCisKKyM6IHNlcXVlbmNlci5jOjI1NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIG9wdGlvbnMgc2hlZXQ6ICclcyciCittc2dzdHIgImhhdGFsxLEgb2x1xZ90dXJ1bG11xZ8gc2XDp2VuZWtsZXIgdGFibG9zdTogJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MjY0NCBzZXF1ZW5jZXIuYzo0MzYxCittc2dpZCAiZW1wdHkgY29tbWl0IHNldCBwYXNzZWQiCittc2dzdHIgImJvxZ8gZ8O2bmRlcmkgc2V0aSBha3RhcsSxbGTEsSIKKworIzogc2VxdWVuY2VyLmM6MjY2MAorbXNnaWQgInJldmVydCBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgorbXNnc3RyICJnZXJpIGFsIGhhbGloYXrEsXJkYSBzw7xyw7x5b3IiCisKKyM6IHNlcXVlbmNlci5jOjI2NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5IFwiZ2l0IHJldmVydCAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKK21zZ3N0ciAiXCJnaXQgcmV2ZXJ0ICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIGRlbmV5aW4iCisKKyM6IHNlcXVlbmNlci5jOjI2NjUKK21zZ2lkICJjaGVycnktcGljayBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgorbXNnc3RyICJzZcOnLWFsIGhhbGloYXrEsXJkYSBzw7xyw7x5b3IiCisKKyM6IHNlcXVlbmNlci5jOjI2NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5IFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIgorbXNnc3RyICJcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiBkZW5leWluIgorCisjOiBzZXF1ZW5jZXIuYzoyNjgxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgc2VxdWVuY2VyIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJhcmTEscWfdMSxcsSxY8SxIGRpemluaSAnJXMnIG9sdcWfdHVydWxhbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjI2OTYKK21zZ2lkICJjb3VsZCBub3QgbG9jayBIRUFEIgorbXNnc3RyICJIRUFEIGtpbGl0bGVuZW1lZGkiCisKKyM6IHNlcXVlbmNlci5jOjI3NTYgc2VxdWVuY2VyLmM6NDA5OQorbXNnaWQgIm5vIGNoZXJyeS1waWNrIG9yIHJldmVydCBpbiBwcm9ncmVzcyIKK21zZ3N0ciAic8O8cmVuIGJpciBzZcOnLWFsIHZleWEgZ2VyaSBhbCB5b2siCisKKyM6IHNlcXVlbmNlci5jOjI3NTggc2VxdWVuY2VyLmM6Mjc2OQorbXNnaWQgImNhbm5vdCByZXNvbHZlIEhFQUQiCittc2dzdHIgIkhFQUQgw6fDtnrDvGxlbWl5b3IiCisKKyM6IHNlcXVlbmNlci5jOjI3NjAgc2VxdWVuY2VyLmM6MjgwNAorbXNnaWQgImNhbm5vdCBhYm9ydCBmcm9tIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIgorbXNnc3RyICJkYWhhIGRvxJ9tYW3EscWfIGJpciBkYWxkYW4gaXB0YWwgZWRpbGVtaXlvciIKKworIzogc2VxdWVuY2VyLmM6Mjc5MCBidWlsdGluL2dyZXAuYzo3MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gJyVzJyIKK21zZ3N0ciAiJyVzJyBhw6fEsWxhbcSxeW9yIgorCisjOiBzZXF1ZW5jZXIuYzoyNzkyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICclcyc6ICVzIgorbXNnc3RyICInJXMnIG9rdW5hbcSxeW9yOiAlcyIKKworIzogc2VxdWVuY2VyLmM6Mjc5MworbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUiCittc2dzdHIgImJla2xlbm1lZGlrIGRvc3lhIHNvbnUiCisKKyM6IHNlcXVlbmNlci5jOjI3OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3RvcmVkIHByZS1jaGVycnktcGljayBIRUFEIGZpbGUgJyVzJyBpcyBjb3JydXB0IgorbXNnc3RyICJkZXBvbGFubcSxxZ8gc2XDpy1hbCDDtm5jZXNpIEhFQUQgZG9zeWFzxLEgJyVzJyBoYXNhciBnw7ZybcO8xZ8iCisKKyM6IHNlcXVlbmNlci5jOjI4MTAKK21zZ2lkICJZb3Ugc2VlbSB0byBoYXZlIG1vdmVkIEhFQUQuIE5vdCByZXdpbmRpbmcsIGNoZWNrIHlvdXIgSEVBRCEiCittc2dzdHIgIkhFQUQnaSB0YcWfxLFtxLHFnyBnw7Zyw7xuw7x5b3JzdW51ei4gR2VyaSBzYXLEsWxtxLF5b3IsIEhFQUQnaW5pemkgZGVuZXRsZXlpbiEiCisKKyM6IHNlcXVlbmNlci5jOjI4NTEKK21zZ2lkICJubyByZXZlcnQgaW4gcHJvZ3Jlc3MiCittc2dzdHIgInPDvHJlbiBiaXIgZ2VyaSBhbCB5b2siCisKKyM6IHNlcXVlbmNlci5jOjI4NTkKK21zZ2lkICJubyBjaGVycnktcGljayBpbiBwcm9ncmVzcyIKK21zZ3N0ciAic8O8cmVuIGJpciBzZcOnLWFsIHlvayIKKworIzogc2VxdWVuY2VyLmM6Mjg2OQorbXNnaWQgImZhaWxlZCB0byBza2lwIHRoZSBjb21taXQiCittc2dzdHIgImfDtm5kZXJpIGF0bGFuYW1hZMSxIgorCisjOiBzZXF1ZW5jZXIuYzoyODc2Cittc2dpZCAidGhlcmUgaXMgbm90aGluZyB0byBza2lwIgorbXNnc3RyICJhdGxhbmFjYWsgYmlyIMWfZXkgeW9rIgorCisjOiBzZXF1ZW5jZXIuYzoyODc5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJoYXZlIHlvdSBjb21taXR0ZWQgYWxyZWFkeT9cbiIKKyJ0cnkgXCJnaXQgJXMgLS1jb250aW51ZVwiIgorbXNnc3RyICIiCisiR8O2bmRlcml5aSB5YXB0xLFuxLF6IG3EsT9cbiIKKyJcImdpdCAlcyAtLWNvbnRpbnVlXCIgZGVuZXlpbi5cIiIKKworIzogc2VxdWVuY2VyLmM6MzAwMyBzZXF1ZW5jZXIuYzo0MDExCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB1cGRhdGUgJXMiCittc2dzdHIgIiVzIGfDvG5jZWxsZW5lbWVkaSIKKworIzogc2VxdWVuY2VyLmM6MzA0MiBzZXF1ZW5jZXIuYzozOTkxCittc2dpZCAiY2Fubm90IHJlYWQgSEVBRCIKK21zZ3N0ciAiSEVBRCBva3VuYW3EsXlvciIKKworIzogc2VxdWVuY2VyLmM6MzA1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY29weSAnJXMnIHRvICclcyciCittc2dzdHIgIiclcycsICclcycga29udW11bmEga29weWFsYW5hbcSxeW9yIgorCisjOiBzZXF1ZW5jZXIuYzozMDY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgY2FuIGFtZW5kIHRoZSBjb21taXQgbm93LCB3aXRoXG4iCisiXG4iCisiICBnaXQgY29tbWl0IC0tYW1lbmQgJXNcbiIKKyJcbiIKKyJPbmNlIHlvdSBhcmUgc2F0aXNmaWVkIHdpdGggeW91ciBjaGFuZ2VzLCBydW5cbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorbXNnc3RyICIiCisiR8O2bmRlcml5aSDFn2ltZGkgxZ91IGtvbXV0bGEgZGXEn2nFn3RpcmViaWxpcnNpbml6OlxuIgorIlxuIgorIlx0Z2l0IGNvbW1pdCAtLWFtZW5kICVzXG4iCisiXG4iCisiRGXEn2nFn2lrbGlrbGVyaW5pemRlbiBtZW1udW5zYW7EsXogxZ91IGtvbXV0bGEgc8O8cmTDvHLDvG46XG4iCisiXG4iCisiXHRnaXQgcmViYXNlIC0tY29udGludWVcbiIKKworIzogc2VxdWVuY2VyLmM6MzA3NworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgYXBwbHkgJXMuLi4gJS4qcyIKK21zZ3N0ciAiJXMgdXlndWxhbmFtxLF5b3IuLi4gJS4qcyIKKworIzogc2VxdWVuY2VyLmM6MzA4NAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgbWVyZ2UgJS4qcyIKK21zZ3N0ciAiJS4qcyBiaXJsZcWfdGlyaWxlbWVkaSIKKworIzogc2VxdWVuY2VyLmM6MzA5OCBzZXF1ZW5jZXIuYzozMTAyIGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNvcHkgJyVzJyB0byAnJXMnIgorbXNnc3RyICInJXMnLCAnJXMnIGtvbnVtdW5hIGtvcHlhbGFuYW1hZMSxIgorCisjOiBzZXF1ZW5jZXIuYzozMTI5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJleGVjdXRpb24gZmFpbGVkOiAlc1xuIgorIiVzWW91IGNhbiBmaXggdGhlIHByb2JsZW0sIGFuZCB0aGVuIHJ1blxuIgorIlxuIgorIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCisiXG4iCittc2dzdHIgIiIKKyLDh2FsxLHFn3TEsXJtYSBiYcWfYXLEsXPEsXo6ICVzXG4iCisiJXNTb3J1bnUgw6fDtnrDvHAgc8O8cmTDvHJtZWsgacOnaW4gxZ91bnUgw6dhbMSxxZ90xLFyxLFuOlxuIgorIlxuIgorIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCisiXG4iCisKKyM6IHNlcXVlbmNlci5jOjMxMzUKK21zZ2lkICJhbmQgbWFkZSBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZVxuIgorbXNnc3RyICJ2ZSBpbmRla3NlIHZlL3ZleWEgw6dhbMSxxZ9tYSBhxJ9hY8SxbmEgZGXEn2nFn2lrbGlrbGVyIHlhcMSxbGTEsVxuIgorCisjOiBzZXF1ZW5jZXIuYzozMTQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJleGVjdXRpb24gc3VjY2VlZGVkOiAlc1xuIgorImJ1dCBsZWZ0IGNoYW5nZXMgdG8gdGhlIGluZGV4IGFuZC9vciB0aGUgd29ya2luZyB0cmVlXG4iCisiQ29tbWl0IG9yIHN0YXNoIHlvdXIgY2hhbmdlcywgYW5kIHRoZW4gcnVuXG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKyJcbiIKK21zZ3N0ciAiIgorIsOHYWzEscWfdMSxcm1hIGJhxZ9hcsSxbMSxIG9sZHU6ICVzLFxuIgorImFuY2FrIGluZGVrc2luaXplIHZlL3ZleWEgw6dhbMSxxZ9tYSBhxJ9hY8SxbsSxemEgZGXEn2nFn2lrbGlrbGVyIGLEsXJha3TEsVxuIgorIkRlxJ9pxZ9pa2xpa2xlcmluaXppIGfDtm5kZXJpbiB2ZXlhIHp1bGFsYXnEsW4sIGFyZMSxbmRhbiDFn3VudSDDp2FsxLHFn3TEsXLEsW46XG4iCisiXG4iCisiXHRnaXQgcmViYXNlIC0tY29udGludWVcbiIKKyJcbiIKKworIzogc2VxdWVuY2VyLmM6MzIwMgorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGxhYmVsIG5hbWU6ICclLipzJyIKK21zZ3N0ciAiaXppbiB2ZXJpbG1leWVuIGV0aWtldCBhZMSxOiAnJS4qcyciCisKKyM6IHNlcXVlbmNlci5jOjMyNTYKK21zZ2lkICJ3cml0aW5nIGZha2Ugcm9vdCBjb21taXQiCittc2dzdHIgInNhaHRlIGvDtmsgZ8O2bmRlcmkgeWF6xLFsxLF5b3IiCisKKyM6IHNlcXVlbmNlci5jOjMyNjEKK21zZ2lkICJ3cml0aW5nIHNxdWFzaC1vbnRvIgorbXNnc3RyICJzcXVhc2gtb250byB5YXrEsWzEsXlvciIKKworIzogc2VxdWVuY2VyLmM6MzI5OSBidWlsdGluL3JlYmFzZS5jOjg4MCBidWlsdGluL3JlYmFzZS5jOjg4NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzIgorbXNnc3RyICLFn3VudW4gYcSfYWPEsSBidWx1bmFtYWTEsTogJXMiCisKKyM6IHNlcXVlbmNlci5jOjMzNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlc29sdmUgJyVzJyIKK21zZ3N0ciAiJyVzJyDDp8O2esO8bGVtZWRpIgorCisjOiBzZXF1ZW5jZXIuYzozMzc1Cittc2dpZCAiY2Fubm90IG1lcmdlIHdpdGhvdXQgYSBjdXJyZW50IHJldmlzaW9uIgorbXNnc3RyICJnw7xuY2VsIGJpciByZXZpenlvbiBvbG1hZGFuIGJpcmxlxZ90aXJpbGVtaXlvciIKKworIzogc2VxdWVuY2VyLmM6MzM5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJyUuKnMnIgorbXNnc3RyICInJS4qcycgYXlyxLHFn3TEsXLEsWxhbcSxeW9yIgorCisjOiBzZXF1ZW5jZXIuYzozNDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGhpbmcgdG8gbWVyZ2U6ICclLipzJyIKK21zZ3N0ciAiYmlybGXFn3RpcmlsZWNlayBiaXIgxZ9leSB5b2s6ICclLipzJyIKKworIzogc2VxdWVuY2VyLmM6MzQxOAorbXNnaWQgIm9jdG9wdXMgbWVyZ2UgY2Fubm90IGJlIGV4ZWN1dGVkIG9uIHRvcCBvZiBhIFtuZXcgcm9vdF0iCittc2dzdHIgImFodGFwb3QgYmlybGXFn3Rpcm1lc2kgYmlyIFt5ZW5pIGvDtmtdw7xuIMO8emVyaW5kZSDDp2FsxLHFn3TEsXLEsWxhbWF6IgorCisjOiBzZXF1ZW5jZXIuYzozNDM0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZXQgY29tbWl0IG1lc3NhZ2Ugb2YgJyVzJyIKK21zZ3N0ciAiJyVzJyBnw7ZuZGVyaXNpbmluIGfDtm5kZXJpIGlsZXRpc2kgYWzEsW5hbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjM1OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGV2ZW4gYXR0ZW1wdCB0byBtZXJnZSAnJS4qcyciCittc2dzdHIgIsWfdW51IGJpcmxlxZ90aXJtZSBnaXJpxZ9pbWluZGUgYnVsdW51bGFtYWTEsSBiaWxlOiAnJS4qcyciCisKKyM6IHNlcXVlbmNlci5jOjM2MTAKK21zZ2lkICJtZXJnZTogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgorbXNnc3RyICJtZXJnZTogWWVuaSBpbmRla3MgZG9zeWFzxLEgeWF6xLFsYW3EsXlvciIKKworIzogc2VxdWVuY2VyLmM6MzY3OSBidWlsdGluL3JlYmFzZS5jOjczNworIywgYy1mb3JtYXQKK21zZ2lkICJBcHBsaWVkIGF1dG9zdGFzaC5cbiIKK21zZ3N0ciAiS2VuZGlsacSfaW5kZW4genVsYWxhbWEgdXlndWxhbmTEsS5cbiIKKworIzogc2VxdWVuY2VyLmM6MzY5MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RvcmUgJXMiCittc2dzdHIgIiVzIGRlcG9sYW5hbcSxeW9yIgorCisjOiBzZXF1ZW5jZXIuYzozNjk0IGJ1aWx0aW4vcmViYXNlLmM6NzUzIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFwcGx5aW5nIGF1dG9zdGFzaCByZXN1bHRlZCBpbiBjb25mbGljdHMuXG4iCisiWW91ciBjaGFuZ2VzIGFyZSBzYWZlIGluIHRoZSBzdGFzaC5cbiIKKyJZb3UgY2FuIHJ1biBcImdpdCBzdGFzaCBwb3BcIiBvciBcImdpdCBzdGFzaCBkcm9wXCIgYXQgYW55IHRpbWUuXG4iCittc2dzdHIgIiIKKyJLZW5kaWxpxJ9pbmRlbiB6dWxhbGFtYSB1eWd1bGFtYXPEsSDDp2FrxLHFn21hbGFyYSBuZWRlbiBvbGR1LlxuIgorIkRlxJ9pxZ9pa2xpa2xlcmluaXogenVsYSBpw6dlcmlzaW5kZSBnw7x2ZW5kZS5cbiIKKyLEsHN0ZWRpxJ9pbml6IHphbWFuIFwiZ2l0IHN0YXNoIHBvcFwiIHZleWEgXCJnaXQgc3Rhc2ggZHJvcFwiIHlhcGFiaWxpcnNpbml6LlxuIgorCisjOiBzZXF1ZW5jZXIuYzozNzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBub3QgYSB2YWxpZCBPSUQiCittc2dzdHIgIiVzOiBnZcOnZXJsaSBiaXIgT0lEIGRlxJ9pbCIKKworIzogc2VxdWVuY2VyLmM6Mzc2MCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzc5Cittc2dpZCAiY291bGQgbm90IGRldGFjaCBIRUFEIgorbXNnc3RyICJIRUFEIGF5csSxbGFtYWTEsSIKKworIzogc2VxdWVuY2VyLmM6Mzc3NQorIywgYy1mb3JtYXQKK21zZ2lkICJTdG9wcGVkIGF0IEhFQURcbiIKK21zZ3N0ciAiSEVBRCdkZSBkdXJ1bGR1XG4iCisKKyM6IHNlcXVlbmNlci5jOjM3NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3RvcHBlZCBhdCAlc1xuIgorbXNnc3RyICIlcyBrb251bXVuZGEgZHVydWxkdVxuIgorCisjOiBzZXF1ZW5jZXIuYzozNzg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3VsZCBub3QgZXhlY3V0ZSB0aGUgdG9kbyBjb21tYW5kXG4iCisiXG4iCisiICAgICUuKnNcbiIKKyJJdCBoYXMgYmVlbiByZXNjaGVkdWxlZDsgVG8gZWRpdCB0aGUgY29tbWFuZCBiZWZvcmUgY29udGludWluZywgcGxlYXNlXG4iCisiZWRpdCB0aGUgdG9kbyBsaXN0IGZpcnN0OlxuIgorIlxuIgorIiAgICBnaXQgcmViYXNlIC0tZWRpdC10b2RvXG4iCisiICAgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorbXNnc3RyICIiCisidG9kbyBrb211dHUgw6dhbMSxxZ90xLFyxLFsYW1hZMSxLlxuIgorIlxuIgorIlx0JS4qc1xuIgorIlllbmlkZW4gemFtYW5sYW5kxLE7IHPDvHJkw7xybWVkZW4gw7ZuY2Uga29tdXR1IGTDvHplbmxlbWVrIGnDp2luIGzDvHRmZW5cbiIKKyLDtm5jZSB5YXDEsWxhY2FrbGFyIGxpc3Rlc2luaSBkw7x6ZW5sZXlpbjpcbiIKKyJcbiIKKyJcdGdpdCByZWJhc2UgLS1lZGl0LXRvZG9cbiIKKyJcdGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorCisjOiBzZXF1ZW5jZXIuYzozODY5CisjLCBjLWZvcm1hdAorbXNnaWQgIlN0b3BwZWQgYXQgJXMuLi4gICUuKnNcbiIKK21zZ3N0ciAiJXMga29udW11bmRhIGR1cnVsZHUuLi4gJS4qc1xuIgorCisjOiBzZXF1ZW5jZXIuYzozOTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tbWFuZCAlZCIKK21zZ3N0ciAiYmlsaW5tZXllbiBrb211dCAlZCIKKworIzogc2VxdWVuY2VyLmM6Mzk5OQorbXNnaWQgImNvdWxkIG5vdCByZWFkIG9yaWctaGVhZCIKK21zZ3N0ciAib3JpZy1oZWFkIG9rdW5hbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjQwMDQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCAnb250byciCittc2dzdHIgIidvbnRvJyBva3VuYW1hZMSxIgorCisjOiBzZXF1ZW5jZXIuYzo0MDE4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB1cGRhdGUgSEVBRCB0byAlcyIKK21zZ3N0ciAiSEVBRCDFn3VyYXlhIGfDvG5jZWxsZW5lbWVkaTogJXMiCisKKyM6IHNlcXVlbmNlci5jOjQxMTEKK21zZ2lkICJjYW5ub3QgcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiWWVuaWRlbiB0ZW1lbGxlbmRpcmlsZW1peW9yOiBIYXrEsXJsYW5tYW3EscWfIGRlxJ9pxZ9pa2xpa2xlcmluaXogdmFyLiIKKworIzogc2VxdWVuY2VyLmM6NDEyMAorbXNnaWQgImNhbm5vdCBhbWVuZCBub24tZXhpc3RpbmcgY29tbWl0IgorbXNnc3RyICJ2YXIgb2xtYXlhbiBnw7ZuZGVyaSBkZcSfacWfdGlyaWxlbWl5b3IiCisKKyM6IHNlcXVlbmNlci5jOjQxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBmaWxlOiAnJXMnIgorbXNnc3RyICJnZcOnZXJzaXogZG9zeWE6ICclcyciCisKKyM6IHNlcXVlbmNlci5jOjQxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb250ZW50czogJyVzJyIKK21zZ3N0ciAiZ2XDp2Vyc2l6IGnDp2VyaWs6ICclcyciCisKKyM6IHNlcXVlbmNlci5jOjQxMjcKK21zZ2lkICIiCisiXG4iCisiWW91IGhhdmUgdW5jb21taXR0ZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS4gUGxlYXNlLCBjb21taXQgdGhlbVxuIgorImZpcnN0IGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJyBhZ2Fpbi4iCittc2dzdHIgIiIKKyJcbiIKKyLDh2FsxLHFn21hIGHEn2FjxLFuxLF6ZGEgZ8O2bmRlcmlsbWVtacWfIGRlxJ9pxZ9pa2xpa2xlcmluaXogdmFyLiBMw7x0ZmVuIMO2bmNlXG4iCisib25sYXLEsSBnw7ZuZGVyaW4gdmUgYXJkxLFuZGFuICdnaXQgcmViYXNlIC0tY29udGludWUnIHlhcMSxbi4iCisKKyM6IHNlcXVlbmNlci5jOjQxNjMgc2VxdWVuY2VyLmM6NDIwMgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZmlsZTogJyVzJyIKK21zZ3N0ciAiZG9zeWEgeWF6xLFsYW1hZMSxOiAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzo0MjE3Cittc2dpZCAiY291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgorbXNnc3RyICJDSEVSUllfUElDS19IRUFEIGthbGTEsXLEsWxhbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjQyMjQKK21zZ2lkICJjb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiSGF6xLFybGFubcSxxZ8gZGXEn2nFn2lrbGlrbGVyIGfDtm5kZXJpbGVtZWRpLiIKKworIzogc2VxdWVuY2VyLmM6NDMzOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2FuJ3QgY2hlcnJ5LXBpY2sgYSAlcyIKK21zZ3N0ciAiJXM6IEJpciAlcyBzZcOnaXAgYWzEsW5hbcSxeW9yIgorCisjOiBzZXF1ZW5jZXIuYzo0MzQyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBiYWQgcmV2aXNpb24iCittc2dzdHIgIiVzIGhhdGFsxLEgcmV2aXp5b24iCisKKyM6IHNlcXVlbmNlci5jOjQzNzcKK21zZ2lkICJjYW4ndCByZXZlcnQgYXMgaW5pdGlhbCBjb21taXQiCittc2dzdHIgImlsayBnw7ZuZGVyaSBnZXJpIGFsxLFuYW1heiIKKworIzogc2VxdWVuY2VyLmM6NDg0NgorbXNnaWQgIm1ha2Vfc2NyaXB0OiB1bmhhbmRsZWQgb3B0aW9ucyIKK21zZ3N0ciAibWFrZV9zY3JpcHQ6IGVsZSBhbMSxbm1heWFuIHNlw6dlbmVrbGVyIgorCisjOiBzZXF1ZW5jZXIuYzo0ODQ5Cittc2dpZCAibWFrZV9zY3JpcHQ6IGVycm9yIHByZXBhcmluZyByZXZpc2lvbnMiCittc2dzdHIgIm1ha2Vfc2NyaXB0OiByZXZpenlvbmxhciBoYXrEsXJsYW7EsXJrZW4gaGF0YSIKKworIzogc2VxdWVuY2VyLmM6NTA4MyBzZXF1ZW5jZXIuYzo1MTAwCittc2dpZCAibm90aGluZyB0byBkbyIKK21zZ3N0ciAieWFwxLFsYWNhayBiaXIgxZ9leSB5b2siCisKKyM6IHNlcXVlbmNlci5jOjUxMTkKK21zZ2lkICJjb3VsZCBub3Qgc2tpcCB1bm5lY2Vzc2FyeSBwaWNrIGNvbW1hbmRzIgorbXNnc3RyICJnZXJla2xpIG9sbWF5YW4gc2XDp2ltIGtvbXV0bGFyxLEgYXRsYW5hbWFkxLEiCisKKyM6IHNlcXVlbmNlci5jOjUyMTMKK21zZ2lkICJ0aGUgc2NyaXB0IHdhcyBhbHJlYWR5IHJlYXJyYW5nZWQuIgorbXNnc3RyICJiZXRpayBoYWxpaGF6xLFyZGEgeWVuaWRlbiBkw7x6ZW5sZW5tacWfdGkiCisKKyM6IHNldHVwLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IGF0ICclcyciCittc2dzdHIgIiclcycsICclcycga29udW11bmRhIGRlcG8gZMSxxZ/EsW5kYSIKKworIzogc2V0dXAuYzoxNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBubyBzdWNoIHBhdGggaW4gdGhlIHdvcmtpbmcgdHJlZS5cbiIKKyJVc2UgJ2dpdCA8Y29tbWFuZD4gLS0gPHBhdGg+Li4uJyB0byBzcGVjaWZ5IHBhdGhzIHRoYXQgZG8gbm90IGV4aXN0IGxvY2FsbHkuIgorbXNnc3RyICIiCisiJXM6IMOHYWzEscWfbWEgYcSfYWPEsW5kYSBiw7Z5bGUgYmlyIHlvbCB5b2suXG4iCisiWWVyZWxkZSB2YXIgb2xtYXlhbiB5b2xsYXLEsSBiZWxpcnRtZWsgacOnaW4gJ2dpdCA8a29tdXQ+IC0tIDx5b2w+Li4uIGt1bGxhbsSxbi4iCisKKyM6IHNldHVwLmM6MTg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbWJpZ3VvdXMgYXJndW1lbnQgJyVzJzogdW5rbm93biByZXZpc2lvbiBvciBwYXRoIG5vdCBpbiB0aGUgd29ya2luZyB0cmVlLlxuIgorIlVzZSAnLS0nIHRvIHNlcGFyYXRlIHBhdGhzIGZyb20gcmV2aXNpb25zLCBsaWtlIHRoaXM6XG4iCisiJ2dpdCA8Y29tbWFuZD4gWzxyZXZpc2lvbj4uLi5dIC0tIFs8ZmlsZT4uLi5dJyIKK21zZ3N0ciAiIgorIkJlbGlyc2l6IGRlxJ9pxZ9rZW4gJyVzJzogw4dhbMSxxZ9tYSBhxJ9hY8SxbmRhIG9sbWF5YW4gYmlsaW5tZXllbiByZXZpenlvbiB2ZXlhICIKKyJ5b2wuXG4iCisiWW9sbGFyxLEgcmV2aXp5b25sYXJkYW4gYXnEsXJtYWsgacOnaW4gJy0tJyBrdWxsYW7EsW4sIMWfw7Z5bGU6XG4iCisiJ2dpdCA8a29tdXQ+IFs8cmV2aXp5b24+Li4uXSAtLSBbPGRvc3lhPi4uLl0nIgorCisjOiBzZXR1cC5jOjI1NAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gJyVzJyBtdXN0IGNvbWUgYmVmb3JlIG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICInJXMnIHNlw6dlbmXEn2kgc2XDp2VuZWsgb2xtYXlhbiBkZcSfacWfa2VubGVyZGVuIMO2bmNlIGdlbG1lbGkiCisKKyM6IHNldHVwLmM6MjczCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbWJpZ3VvdXMgYXJndW1lbnQgJyVzJzogYm90aCByZXZpc2lvbiBhbmQgZmlsZW5hbWVcbiIKKyJVc2UgJy0tJyB0byBzZXBhcmF0ZSBwYXRocyBmcm9tIHJldmlzaW9ucywgbGlrZSB0aGlzOlxuIgorIidnaXQgPGNvbW1hbmQ+IFs8cmV2aXNpb24+Li4uXSAtLSBbPGZpbGU+Li4uXSciCittc2dzdHIgIiIKKyJCZWxpcnNpeiBkZcSfacWfa2VuICclcyc6IEhlbSBkZcSfacWfa2VuIGhlbSBkb3N5YSBhZMSxLlxuIgorIllvbGxhcsSxIHJldml6eW9ubGFyZGFuIGF5xLFybWFrIGnDp2luICctLScga3VsbGFuxLFuLCDFn8O2eWxlOlxuIgorIidnaXQgPGtvbXV0PiBbPHJldml6eW9uPi4uLl0gLS0gWzxkb3N5YT4uLi5dJyIKKworIzogc2V0dXAuYzo0MDkKK21zZ2lkICJ1bmFibGUgdG8gc2V0IHVwIHdvcmsgdHJlZSB1c2luZyBpbnZhbGlkIGNvbmZpZyIKK21zZ3N0ciAiZ2XDp2Vyc2l6IHlhcMSxbGFuZMSxcm1hIGt1bGxhbsSxbGFyYWsgw6dhbMSxxZ9tYSBhxJ9hY8SxIGt1cnVsYW3EsXlvciIKKworIzogc2V0dXAuYzo0MTMKK21zZ2lkICJ0aGlzIG9wZXJhdGlvbiBtdXN0IGJlIHJ1biBpbiBhIHdvcmsgdHJlZSIKK21zZ3N0ciAiYnUgacWfbGVtIGJpciDDp2FsxLHFn21hIGHEn2FjxLEgacOnaW5kZSDDp2FsxLHFn3TEsXLEsWxtYWzEsSIKKworIzogc2V0dXAuYzo1NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0ZWQgZ2l0IHJlcG8gdmVyc2lvbiA8PSAlZCwgZm91bmQgJWQiCittc2dzdHIgIkJla2xlbmVuIGdpdCByZXBvIHPDvHLDvG3DvCA8PSAlZCwgJWQgYnVsdW5kdSIKKworIzogc2V0dXAuYzo1NjcKK21zZ2lkICJ1bmtub3duIHJlcG9zaXRvcnkgZXh0ZW5zaW9ucyBmb3VuZDoiCittc2dzdHIgImJpbGlubWV5ZW4gZGVwbyBnZW5pxZ9sZXRtZWxlcmkgYnVsdW5kdToiCisKKyM6IHNldHVwLmM6NTg2CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIG9wZW5pbmcgJyVzJyIKK21zZ3N0ciAiJyVzJyBhw6fEsWzEsXJrZW4gaGF0YSIKKworIzogc2V0dXAuYzo1ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGxhcmdlIHRvIGJlIGEgLmdpdCBmaWxlOiAnJXMnIgorbXNnc3RyICJiaXIgLmdpdCBkb3N5YXPEsSBvbGFiaWxtZWsgacOnaW4gw6dvayBiw7x5w7xrOiAnJXMnIgorCisjOiBzZXR1cC5jOjU5MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIgorbXNnc3RyICIlcyBva3VudXJrZW4gaGF0YSIKKworIzogc2V0dXAuYzo1OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBnaXRmaWxlIGZvcm1hdDogJXMiCittc2dzdHIgImdlw6dlcnNpeiBnaXRmaWxlIGJpw6dpbWk6ICVzIgorCisjOiBzZXR1cC5jOjU5NAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYXRoIGluIGdpdGZpbGU6ICVzIgorbXNnc3RyICJnaXRmaWxlIGnDp2luZGUgeW9sIHlvazogJXMiCisKKyM6IHNldHVwLmM6NTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5OiAlcyIKK21zZ3N0ciAiYmlyIGdpdCBkZXBvc3UgZGXEn2lsOiAlcyIKKworIzogc2V0dXAuYzo2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyQlcycgdG9vIGJpZyIKK21zZ3N0ciAiJyQlcycgw6dvayBiw7x5w7xrIgorCisjOiBzZXR1cC5jOjcwOQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeTogJyVzJyIKK21zZ3N0ciAiYmlyIGdpdCBkZXBvc3UgZGXEn2lsOiAnJXMnIgorCisjOiBzZXR1cC5jOjczOCBzZXR1cC5jOjc0MCBzZXR1cC5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY2hkaXIgdG8gJyVzJyIKK21zZ3N0ciAiJyVzJyBrb251bXVuYSBjaGRpciB5YXDEsWxhbcSxeW9yIgorCisjOiBzZXR1cC5jOjc0MyBzZXR1cC5jOjc5OSBzZXR1cC5jOjgwOSBzZXR1cC5jOjg0OCBzZXR1cC5jOjg1NgorbXNnaWQgImNhbm5vdCBjb21lIGJhY2sgdG8gY3dkIgorbXNnc3RyICJjd2QneWUgZ2VyaSBkw7Zuw7xsZW1peW9yIgorCisjOiBzZXR1cC5jOjg3MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJSpzJXMlcyciCittc2dzdHIgIiclKnMlcyVzJyBiaWxnaWxlcmkgYWzEsW5hbWFkxLEiCisKKyM6IHNldHVwLmM6MTEwOAorbXNnaWQgIlVuYWJsZSB0byByZWFkIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkiCittc2dzdHIgIsWedSBhbmtpIMOnYWzEscWfbWEgZGl6aW5pIG9rdW5hbcSxeW9yIgorCisjOiBzZXR1cC5jOjExMTcgc2V0dXAuYzoxMTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjaGFuZ2UgdG8gJyVzJyIKK21zZ3N0ciAixZ91cmF5YSBkZcSfacWfdGlyaWxlbWl5b3I6ICclcyciCisKKyM6IHNldHVwLmM6MTEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeSAob3IgYW55IG9mIHRoZSBwYXJlbnQgZGlyZWN0b3JpZXMpOiAlcyIKK21zZ3N0ciAiYmlyIGdpdCBkZXBvc3UgKHZleWEgw7xzdCBkaXppbmxlcmluZGVuIGJpcmlzaSkgZGXEn2lsOiAlcyIKKworIzogc2V0dXAuYzoxMTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJub3QgYSBnaXQgcmVwb3NpdG9yeSAob3IgYW55IHBhcmVudCB1cCB0byBtb3VudCBwb2ludCAlcylcbiIKKyJTdG9wcGluZyBhdCBmaWxlc3lzdGVtIGJvdW5kYXJ5IChHSVRfRElTQ09WRVJZX0FDUk9TU19GSUxFU1lTVEVNIG5vdCBzZXQpLiIKK21zZ3N0ciAiIgorIkJpciBnaXQgZGVwb3N1IHZleWEgKCVzIGJhxJ9sYW1hIG5va3Rhc8SxbmEga2FkYXIgb2xhbiDDvHN0w7wpIGRlxJ9pbFxuIgorIkRvc3lhIHNpc3RlbWkgc8SxbsSxcsSxbmRhIGR1cnVsdXlvciAoR0lUX0RJU0NPVkVSWV9BQ1JPU1NfRklMRVNZU1RFTSAiCisiYXlhcmxhbm1hbcSxxZ8pLiIKKworIzogc2V0dXAuYzoxMjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwcm9ibGVtIHdpdGggY29yZS5zaGFyZWRSZXBvc2l0b3J5IGZpbGVtb2RlIHZhbHVlICgwJS4zbykuXG4iCisiVGhlIG93bmVyIG9mIGZpbGVzIG11c3QgYWx3YXlzIGhhdmUgcmVhZCBhbmQgd3JpdGUgcGVybWlzc2lvbnMuIgorbXNnc3RyICIiCisiY29yZS5zaGFyZWRSZXBvc2l0b3J5IGRvc3lhIGtpcGkgZGXEn2VyaSBpbGUgc29ydW4gKDAlLjNvKS5cbiIKKyJEb3N5YWxhcsSxbiBzYWhpYmluaW4gaGVyIHphbWFuIG9rdW1hIHZlIHlhem1hIGl6bmkgb2xtYXPEsSBnZXJla2lyLiIKKworIzogc2V0dXAuYzoxMjg5Cittc2dpZCAib3BlbiAvZGV2L251bGwgb3IgZHVwIGZhaWxlZCIKK21zZ3N0ciAiL2Rldi9udWxsIGHDp8SxbG1hc8SxIHZleWEgYcOnxLFrbGF5xLFjxLEgw6dvxJ9hbHTEsWxtYXPEsSBiYcWfYXLEsXPEsXoiCisKKyM6IHNldHVwLmM6MTMwNAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICLDp2F0YWxsYW1hIGJhxZ9hcsSxc8SxeiIKKworIzogc2V0dXAuYzoxMzA5Cittc2dpZCAic2V0c2lkIGZhaWxlZCIKK21zZ3N0ciAic2V0c2lkIGJhxZ9hcsSxc8SxeiIKKworIzogc2hhMS1maWxlLmM6NDUyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCBkaXJlY3RvcnkgJXMgZG9lcyBub3QgZXhpc3Q7IGNoZWNrIC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiCittc2dzdHIgIm5lc25lIGRpemluaSAlcyB5b2s7IMWfdXJhecSxIGRlbmV0bGV5aW46IC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiCisKKyM6IHNoYTEtZmlsZS5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbm9ybWFsaXplIGFsdGVybmF0ZSBvYmplY3QgcGF0aDogJXMiCittc2dzdHIgImFsdGVybmF0aWYgbmVzbmUgeW9sdSBvbGHEn2FubGHFn3TEsXLEsWxhbcSxeW9yOiAlcyIKKworIzogc2hhMS1maWxlLmM6NTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpZ25vcmluZyBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlcywgbmVzdGluZyB0b28gZGVlcCIKK21zZ3N0ciAiJXM6IGFsdGVybmF0aWYgbmVzbmUgZGVwb2xhcsSxIHlvayBzYXnEsWzEsXlvciwgacOnIGnDp2UgZ2XDp21lIHBlayBkZXJpbiIKKworIzogc2hhMS1maWxlLmM6NTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgb2JqZWN0IGRpcmVjdG9yeTogJXMiCittc2dzdHIgIm5lc25lIGRpemluaSBvbGHEn2FubGHFn3TEsXLEsWxhbcSxeW9yOiAlcyIKKworIzogc2hhMS1maWxlLmM6NjI1Cittc2dpZCAidW5hYmxlIHRvIGZkb3BlbiBhbHRlcm5hdGVzIGxvY2tmaWxlIgorbXNnc3RyICJhbHRlcm5hdGlmbGVyIGtpbGl0IGRvc3lhc8SxIGZkb3BlbiB5YXDEsWxhbcSxeW9yIgorCisjOiBzaGExLWZpbGUuYzo2NDMKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBhbHRlcm5hdGVzIGZpbGUiCittc2dzdHIgImFsdGVybmF0aWZsZXIgZG9zeWFzxLEgb2t1bmFtxLF5b3IiCisKKyM6IHNoYTEtZmlsZS5jOjY1MAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIG5ldyBhbHRlcm5hdGVzIGZpbGUgaW50byBwbGFjZSIKK21zZ3N0ciAieWVuaSBhbHRlcm5hdGlmbGVyIGRvc3lhc8SxIHllcmluZSB0YcWfxLFuYW3EsXlvciIKKworIzogc2hhMS1maWxlLmM6Njg1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiJyVzJyBkaXllIGJpciB5b2wgeW9rIgorCisjOiBzaGExLWZpbGUuYzo3MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBhcyBhIGxpbmtlZCBjaGVja291dCBpcyBub3Qgc3VwcG9ydGVkIHlldC4iCittc2dzdHIgIiIKKyJCYcSfbGFudMSxIHlhcMSxbG3EscWfIMOnxLFrxLHFnyBvbGFyYWsgJyVzJyBiYcWfdnVydSBkZXBvc3UgaGVuw7x6IGRlc3Rla2xlbm1peW9yLiIKKworIzogc2hhMS1maWxlLmM6NzE3CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgbm90IGEgbG9jYWwgcmVwb3NpdG9yeS4iCittc2dzdHIgIkJhxZ92dXJ1IGRlcG9zdSAnJXMnIHllcmVsIGJpciBkZXBvIGRlxJ9pbC4iCisKKyM6IHNoYTEtZmlsZS5jOjcyMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIHNoYWxsb3ciCittc2dzdHIgImJhxZ92dXJ1IGRlcG9zdSAnJXMnIHPEscSfIgorCisjOiBzaGExLWZpbGUuYzo3MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBpcyBncmFmdGVkIgorbXNnc3RyICJiYcWfdnVydSBkZXBvc3UgJyVzJyBhxZ/EsWzEsSIKKworIzogc2hhMS1maWxlLmM6NzkxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgbGluZSB3aGlsZSBwYXJzaW5nIGFsdGVybmF0ZSByZWZzOiAlcyIKK21zZ3N0ciAiYWx0ZXJuYXRpZiBiYcWfdnVydWxhciBheXLEscWfdMSxcsSxbMSxcmtlbiBnZcOnZXJzaXogc2F0xLFyOiAlcyIKKworIzogc2hhMS1maWxlLmM6OTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImF0dGVtcHRpbmcgdG8gbW1hcCAlPFBSSXVNQVg+IG92ZXIgbGltaXQgJTxQUkl1TUFYPiIKK21zZ3N0ciAiJTxQUkl1TUFYPiwgJTxQUkl1TUFYPiBzxLFuxLFyxLEgw7x6ZXJpbmRlbiBtbWFwIHlhcMSxbG1heWEgw6dhbMSxxZ/EsWzEsXlvciIKKworIzogc2hhMS1maWxlLmM6OTY0Cittc2dpZCAibW1hcCBmYWlsZWQiCittc2dzdHIgIm1tYXAgYmHFn2FyxLFzxLF6IgorCisjOiBzaGExLWZpbGUuYzoxMTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCBmaWxlICVzIGlzIGVtcHR5IgorbXNnc3RyICJuZXNuZSBkb3N5YXPEsSAlcyBib8WfIgorCisjOiBzaGExLWZpbGUuYzoxMjYzIHNoYTEtZmlsZS5jOjI0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29ycnVwdCBsb29zZSBvYmplY3QgJyVzJyIKK21zZ3N0ciAiaGFzYXIgZ8O2cm3DvMWfIGdldsWfZWsgbmVzbmUgJyVzJyIKKworIzogc2hhMS1maWxlLmM6MTI2NSBzaGExLWZpbGUuYzoyNDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImdhcmJhZ2UgYXQgZW5kIG9mIGxvb3NlIG9iamVjdCAnJXMnIgorbXNnc3RyICJnZXbFn2VrIG5lc25lICclcycgc29udW5kYSBhbmxhbXPEsXogdmVyaSIKKworIzogc2hhMS1maWxlLmM6MTMwNworbXNnaWQgImludmFsaWQgb2JqZWN0IHR5cGUiCittc2dzdHIgImdlw6dlcnNpeiBuZXNuZSB0w7xyw7wiCisKKyM6IHNoYTEtZmlsZS5jOjEzOTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVucGFjayAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIKK21zZ3N0ciAiJXMgw7xzdGJpbGdpc2kgLS1hbGxvdy11bmtub3duLXR5cGUgaWxlIGHDp8SxbGFtxLF5b3IiCisKKyM6IHNoYTEtZmlsZS5jOjEzOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVucGFjayAlcyBoZWFkZXIiCittc2dzdHIgIiVzIMO8c3RiaWxnaXNpIGHDp8SxbGFtxLF5b3IiCisKKyM6IHNoYTEtZmlsZS5jOjE0MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciB3aXRoIC0tYWxsb3ctdW5rbm93bi10eXBlIgorbXNnc3RyICIlcyDDvHN0YmlsZ2lzaSBwYWtldGkgLS1hbGxvdy11bmtub3duLXR5cGUgaWxlIGF5csSxxZ90xLFyxLFsYW3EsXlvciIKKworIzogc2hhMS1maWxlLmM6MTQwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJXMgaGVhZGVyIgorbXNnc3RyICIlcyDDvHN0YmlsZ2lzaSBheXLEscWfdMSxcsSxbGFtxLF5b3IiCisKKyM6IHNoYTEtZmlsZS5jOjE2MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb2JqZWN0ICVzIgorbXNnc3RyICIlcyBuZXNuZXNpIG9rdW5hbWFkxLEiCisKKyM6IHNoYTEtZmlsZS5jOjE2MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVwbGFjZW1lbnQgJXMgbm90IGZvdW5kIGZvciAlcyIKK21zZ3N0ciAiJXMgeWVkZcSfaSAlcyBpw6dpbiBidWx1bmFtYWTEsSIKKworIzogc2hhMS1maWxlLmM6MTYzNworIywgYy1mb3JtYXQKK21zZ2lkICJsb29zZSBvYmplY3QgJXMgKHN0b3JlZCBpbiAlcykgaXMgY29ycnVwdCIKK21zZ3N0ciAiJXMgZ2V2xZ9layBuZXNuZXNpICglcyBpw6dpbmRlIGRlcG9sYW7EsXlvcikgaGFzYXIgZ8O2cm3DvMWfIgorCisjOiBzaGExLWZpbGUuYzoxNjQxCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2tlZCBvYmplY3QgJXMgKHN0b3JlZCBpbiAlcykgaXMgY29ycnVwdCIKK21zZ3N0ciAicGFrZXRsZW5tacWfIG5lc25lICVzICglcyBpw6dpbmRlIGRlcG9sYW7EsXlvcikgaGFzYXIgZ8O2cm3DvMWfIgorCisjOiBzaGExLWZpbGUuYzoxNzQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICVzIgorbXNnc3RyICIlcyBkb3N5YXPEsSB5YXrEsWxhbcSxeW9yIgorCisjOiBzaGExLWZpbGUuYzoxNzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgcGVybWlzc2lvbiB0byAnJXMnIgorbXNnc3RyICInJXMnIMO2Z2VzaW5lIGl6aW4gYXlhcmxhbmFtxLF5b3IiCisKKyM6IHNoYTEtZmlsZS5jOjE3NjAKK21zZ2lkICJmaWxlIHdyaXRlIGVycm9yIgorbXNnc3RyICJkb3N5YSB5YXrEsW0gaGF0YXPEsSIKKworIzogc2hhMS1maWxlLmM6MTc4MAorbXNnaWQgImVycm9yIHdoZW4gY2xvc2luZyBsb29zZSBvYmplY3QgZmlsZSIKK21zZ3N0ciAiZ2V2xZ9layBuZXNuZSBkb3N5YXPEsSBrYXBhdMSxbMSxcmtlbiBoYXRhIgorCisjOiBzaGExLWZpbGUuYzoxODQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3VmZmljaWVudCBwZXJtaXNzaW9uIGZvciBhZGRpbmcgYW4gb2JqZWN0IHRvIHJlcG9zaXRvcnkgZGF0YWJhc2UgJXMiCittc2dzdHIgIiVzIGRlcG8gdmVyaXRhYmFuxLFuYSBuZXNuZSBla2xlbWVrIGnDp2luIHlldGVyc2l6IGl6aW4iCisKKyM6IHNoYTEtZmlsZS5jOjE4NDcKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBmaWxlIgorbXNnc3RyICJnZcOnaWNpIGRvc3lhIG9sdcWfdHVydWxhbcSxeW9yIgorCisjOiBzaGExLWZpbGUuYzoxODcxCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGxvb3NlIG9iamVjdCBmaWxlIgorbXNnc3RyICJnZXbFn2VrIG5lc25lIGRvc3lhc8SxIHlhesSxbGFtxLF5b3IiCisKKyM6IHNoYTEtZmlsZS5jOjE4NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgbmV3IG9iamVjdCAlcyAoJWQpIgorbXNnc3RyICJ5ZW5pIG5lc25lICVzIHPDtm5kw7xyw7xsZW1peW9yICglZCkiCisKKyM6IHNoYTEtZmlsZS5jOjE4ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVmbGF0ZUVuZCBvbiBvYmplY3QgJXMgZmFpbGVkICglZCkiCittc2dzdHIgIiVzIG5lc25lc2kgw7x6ZXJpbmRlIGRlZmxhdGVFbmQgYmHFn2FyxLFzxLF6IG9sZHUgKCVkKSIKKworIzogc2hhMS1maWxlLmM6MTg4NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mdXNlZCBieSB1bnN0YWJsZSBvYmplY3Qgc291cmNlIGRhdGEgZm9yICVzIgorbXNnc3RyICIlcyBpw6dpbiBvbGFuIG5lc25lIGtheW5hayB2ZXJpc2luZGVuIGRvbGF5xLEga2FmYSBrYXLEscWfxLFrbMSxxJ/EsSIKKworIzogc2hhMS1maWxlLmM6MTg5NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjEwNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHV0aW1lKCkgb24gJXMiCittc2dzdHIgIiVzIMO8emVyaW5kZSB1dGltZSgpIGJhxZ9hcsSxc8SxeiIKKworIzogc2hhMS1maWxlLmM6MTk3MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgZm9yICVzIgorbXNnc3RyICIlcyBpw6dpbiBuZXNuZSBva3VuYW3EsXlvciIKKworIzogc2hhMS1maWxlLmM6MjAxMQorbXNnaWQgImNvcnJ1cHQgY29tbWl0IgorbXNnc3RyICJoYXNhciBnw7ZybcO8xZ8gZ8O2bmRlcmkiCisKKyM6IHNoYTEtZmlsZS5jOjIwMTkKK21zZ2lkICJjb3JydXB0IHRhZyIKK21zZ3N0ciAiaGFzYXIgZ8O2cm3DvMWfIGV0aWtldCIKKworIzogc2hhMS1maWxlLmM6MjExOQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIHdoaWxlIGluZGV4aW5nICVzIgorbXNnc3RyICIlcyBpbmRla3NsZW5pcmtlbiBva3VtYSBoYXRhc8SxIgorCisjOiBzaGExLWZpbGUuYzoyMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInNob3J0IHJlYWQgd2hpbGUgaW5kZXhpbmcgJXMiCittc2dzdHIgIiVzIGluZGVrc2xlbmlya2VuIGvEsXNhIHJlYWQiCisKKyM6IHNoYTEtZmlsZS5jOjIxOTUgc2hhMS1maWxlLmM6MjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGluc2VydCBpbnRvIGRhdGFiYXNlIgorbXNnc3RyICIlczogdmVyaXRhYmFuxLFuYSBla2xlbWUgYmHFn2FyxLFzxLF6IgorCisjOiBzaGExLWZpbGUuYzoyMjExCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bnN1cHBvcnRlZCBmaWxlIHR5cGUiCittc2dzdHIgIiVzOiBkZXN0ZWtsZW5tZXllbiBkb3N5YSB0w7xyw7wiCisKKyM6IHNoYTEtZmlsZS5jOjIyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgb2JqZWN0IgorbXNnc3RyICIlcyBnZcOnZXJsaSBiaXIgbmVzbmUgZGXEn2lsIgorCisjOiBzaGExLWZpbGUuYzoyMjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkICclcycgb2JqZWN0IgorbXNnc3RyICIlcyBnZcOnZXJsaSBiaXIgJyVzJyBuZXNuZXNpIGRlxJ9pbCIKKworIzogc2hhMS1maWxlLmM6MjI2NCBidWlsdGluL2luZGV4LXBhY2suYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMiCittc2dzdHIgIiVzIGHDp8SxbGFtxLF5b3IiCisKKyM6IHNoYTEtZmlsZS5jOjI0NTQgc2hhMS1maWxlLmM6MjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJoYXNoIG1pc21hdGNoIGZvciAlcyAoZXhwZWN0ZWQgJXMpIgorbXNnc3RyICIlcyBpw6dpbiBzYcSfbGFtYSB1eXXFn21hemzEscSfxLEgKCVzIGJla2xlbml5b3JkdSkiCisKKyM6IHNoYTEtZmlsZS5jOjI0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1tYXAgJXMiCittc2dzdHIgIiVzIG1tYXAgeWFwxLFsYW1hZMSxIgorCisjOiBzaGExLWZpbGUuYzoyNDgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgaGVhZGVyIG9mICVzIgorbXNnc3RyICIlcyDDvHN0YmlsZ2lzaSBhw6fEsWxhbcSxeW9yIgorCisjOiBzaGExLWZpbGUuYzoyNDg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBoZWFkZXIgb2YgJXMiCittc2dzdHIgIiVzIMO8c3RiaWxnaXNpIGF5csSxxZ90xLFyxLFsYW3EsXlvciIKKworIzogc2hhMS1maWxlLmM6MjUwMAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdW5wYWNrIGNvbnRlbnRzIG9mICVzIgorbXNnc3RyICIlcyBpw6dlcmnEn2kgYcOnxLFsYW3EsXlvciIKKworIzogc2hhMS1uYW1lLmM6NDg2CisjLCBjLWZvcm1hdAorbXNnaWQgInNob3J0IFNIQTEgJXMgaXMgYW1iaWd1b3VzIgorbXNnc3RyICJrxLFzYSBTSEExICVzIGJlbGlyc2l6IgorCisjOiBzaGExLW5hbWUuYzo0OTcKK21zZ2lkICJUaGUgY2FuZGlkYXRlcyBhcmU6IgorbXNnc3RyICJBZGF5bGFyOiIKKworIzogc2hhMS1uYW1lLmM6Nzk2Cittc2dpZCAiIgorIkdpdCBub3JtYWxseSBuZXZlciBjcmVhdGVzIGEgcmVmIHRoYXQgZW5kcyB3aXRoIDQwIGhleCBjaGFyYWN0ZXJzXG4iCisiYmVjYXVzZSBpdCB3aWxsIGJlIGlnbm9yZWQgd2hlbiB5b3UganVzdCBzcGVjaWZ5IDQwLWhleC4gVGhlc2UgcmVmc1xuIgorIm1heSBiZSBjcmVhdGVkIGJ5IG1pc3Rha2UuIEZvciBleGFtcGxlLFxuIgorIlxuIgorIiAgZ2l0IHN3aXRjaCAtYyAkYnIgJChnaXQgcmV2LXBhcnNlIC4uLilcbiIKKyJcbiIKKyJ3aGVyZSBcIiRiclwiIGlzIHNvbWVob3cgZW1wdHkgYW5kIGEgNDAtaGV4IHJlZiBpcyBjcmVhdGVkLiBQbGVhc2VcbiIKKyJleGFtaW5lIHRoZXNlIHJlZnMgYW5kIG1heWJlIGRlbGV0ZSB0aGVtLiBUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnlcbiIKKyJydW5uaW5nIFwiZ2l0IGNvbmZpZyBhZHZpY2Uub2JqZWN0TmFtZVdhcm5pbmcgZmFsc2VcIiIKK21zZ3N0ciAiIgorIkdpdCBub3JtYWxkZSBoacOnYmlyIHphbWFuIDQwIG9uYWx0xLFsxLEga2FyYWt0ZXJsZXJsZSBiaXRlbiBiaXIgYmHFn3Z1cnVcbiIKKyJvbHXFn3R1cm1heiwgw6fDvG5rw7wgNDAgb25hbHTEsWzEsSBiaXIgYmHFn3Z1cnUsIG9udSBiZWxpcmxlZGnEn2luaXogemFtYW4geW9rXG4iCisic2F5xLFsYWNha3TEsXIuIEJ1IGJhxZ92dXJ1bGFyIHlhbmzEscWfbMSxa2xhIG9sdcWfdHVydWxtdcWfIG9sYWJpbGlyLiDDlnJuZcSfaW46XG4iCisiXG4iCisiXHRnaXQgc3dpdGNoIC1jICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgorIlxuIgorImtvbXV0dW5kYSBcIiRiclwiIGJpciDFn2VraWxkZSBib8WfIGthbG3EscWfIHZlIDQwIG9uYWx0xLFsxLEgYmlyIGJhxZ92dXJ1XG4iCisib2x1xZ90dXJ1bG11xZ8uIEzDvHRmZW4gYnUgYmHFn3Z1cnVsYXLEsSBpbmNlbGV5aW4gdmUgZ2VyZWtpcnNlIHNpbGluLiBCdSAiCisiaWxldGl5aVxuIgorImthcGF0bWFrIGnDp2luIFwiZ2l0IGNvbmZpZyBhZHZpY2Uub2JqZWN0TmFtZVdhcm5pbmdcIiB5YXDEsW4uIgorCisjOiBzaGExLW5hbWUuYzo5MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciAnJS4qcycgb25seSBnb2VzIGJhY2sgdG8gJXMiCittc2dzdHIgIiclLipzJyBnw7xubMO8xJ/DvCB5YWxuxLF6Y2EgxZ91bmEgZ2VyaSBnaWRlcjogJXMiCisKKyM6IHNoYTEtbmFtZS5jOjkyNAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2cgZm9yICclLipzJyBvbmx5IGhhcyAlZCBlbnRyaWVzIgorbXNnc3RyICInJS4qcycgZ8O8bmzDvMSfw7xuZGUgeWFsbsSxemNhICVkIGdpcmRpIHZhciIKKworIzogc2hhMS1uYW1lLmM6MTY4OQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gJyUuKnMnIgorbXNnc3RyICInJXMnIHlvbHUgZGlzayDDvHplcmluZGUgbWV2Y3V0LCBhbmNhayAnJS4qcycgacOnaW5kZSBkZcSfaWwiCisKKyM6IHNoYTEtbmFtZS5jOjE2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBleGlzdHMsIGJ1dCBub3QgJyVzJ1xuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnJS4qczolcycgYWthICclLipzOi4vJXMnPyIKK21zZ3N0ciAiIgorIiclcycgeW9sdSBtZXZjdXQsIGFuY2FrICclcycgZGXEn2lsXG4iCisixLBwdWN1OiDFnnVudSBtdSBkZW1layBpc3RlZGluaXo6ICclLipzOiVzJywgbmFtLcSxIGRpxJ9lciAnJS4qczouLyVzJz8iCisKKyM6IHNoYTEtbmFtZS5jOjE3MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGV4aXN0IGluICclLipzJyIKK21zZ3N0ciAiJyVzJyB5b2x1ICclLipzJyBpw6dpbmRlIG1ldmN1dCBkZcSfaWwiCisKKyM6IHNoYTEtbmFtZS5jOjE3MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBpcyBpbiB0aGUgaW5kZXgsIGJ1dCBub3QgYXQgc3RhZ2UgJWRcbiIKKyJoaW50OiBEaWQgeW91IG1lYW4gJzolZDolcyc/IgorbXNnc3RyICIiCisiJyVzJyB5b2x1IGluZGVrc3RlLCBhbmNhayAlZCBudW1hcmFsxLEgYWxhbmRhIGRlxJ9pbFxuIgorIsSwcHVjdTogxZ51bnUgbXUgZGVtZWsgaXN0ZWRpbml6OiAnOiVkOiVzJz8iCisKKyM6IHNoYTEtbmFtZS5jOjE3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBpcyBpbiB0aGUgaW5kZXgsIGJ1dCBub3QgJyVzJ1xuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnOiVkOiVzJyBha2EgJzolZDouLyVzJz8iCittc2dzdHIgIiIKKyInJXMnIHlvbHUgaW5kZWtzdGUsIGFuY2FrICclcycgZGXEn2lsXG4iCisixLBwdWN1OiDFnnVudSBtdSBkZW1layBpc3RlZGluaXo6ICclZDolcycsIG5hbS3EsSBkacSfZXIgJzolZDouLyVzJz8iCisKKyM6IHNoYTEtbmFtZS5jOjE3NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGV4aXN0cyBvbiBkaXNrLCBidXQgbm90IGluIHRoZSBpbmRleCIKK21zZ3N0ciAiJyVzJyB5b2x1IGRpc2t0ZSBtZXZjdXQsIGFuY2FrIGluZGVrc3RlIGRlxJ9pbCIKKworIzogc2hhMS1uYW1lLmM6MTc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZG9lcyBub3QgZXhpc3QgKG5laXRoZXIgb24gZGlzayBub3IgaW4gdGhlIGluZGV4KSIKK21zZ3N0ciAiJyVzJyBkaXllIGJpciB5b2wgeW9rIChuZSBkaXNrdGUgbmUgZGUgaW5kZWtzdGUpIgorCisjOiBzaGExLW5hbWUuYzoxNzcxCittc2dpZCAicmVsYXRpdmUgcGF0aCBzeW50YXggY2FuJ3QgYmUgdXNlZCBvdXRzaWRlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiZ8O2cmVjZWxpIHlvbCBzw7Z6ZGl6aW1pIMOnYWzEscWfbWEgYcSfYWPEsSBkxLHFn8SxbmRhIGt1bGxhbsSxbGFtYXoiCisKKyM6IHNoYTEtbmFtZS5jOjE5MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBvYmplY3QgbmFtZSAnJS4qcycuIgorbXNnc3RyICJnZcOnZXJzaXogbmVzbmUgYWTEsTogJyUuKnMnIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggZ2liaWJ5dGUKKyM6IHN0cmJ1Zi5jOjgzNworIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBHaUIiCittc2dzdHIgIiV1LiUyLjJ1IEdpQiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGdpYmlieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEdpQi9zIgorbXNnc3RyICIldS4lMi4ydSBHaUIvc24iCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBtZWJpYnl0ZQorIzogc3RyYnVmLmM6ODQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IE1pQiIKK21zZ3N0ciAiJXUuJTIuMnUgTWlCIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggbWViaWJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgTWlCL3MiCittc2dzdHIgIiV1LiUyLjJ1IE1pQi9zbiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGtpYmlieXRlCisjOiBzdHJidWYuYzo4NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgS2lCIgorbXNnc3RyICIldS4lMi4ydSBLaUIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBraWJpYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjg1OAorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBLaUIvcyIKK21zZ3N0ciAiJXUuJTIuMnUgS2lCL3NuIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggYnl0ZQorIzogc3RyYnVmLmM6ODY0CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1IGJ5dGUiCittc2dpZF9wbHVyYWwgIiV1IGJ5dGVzIgorbXNnc3RyWzBdICIldSBiYXl0IgorbXNnc3RyWzFdICIldSBiYXl0IgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjg2NgorIywgYy1mb3JtYXQKK21zZ2lkICIldSBieXRlL3MiCittc2dpZF9wbHVyYWwgIiV1IGJ5dGVzL3MiCittc2dzdHJbMF0gIiV1IGJheXQvc24iCittc2dzdHJbMV0gIiV1IGJheXQvc24iCisKKyM6IHN0cmJ1Zi5jOjExNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGVkaXQgJyVzJyIKK21zZ3N0ciAiJyVzJyBkw7x6ZW5sZW5lbWVkaSIKKworIzogc3VibW9kdWxlLmM6MTE0IHN1Ym1vZHVsZS5jOjE0MworbXNnaWQgIkNhbm5vdCBjaGFuZ2UgdW5tZXJnZWQgLmdpdG1vZHVsZXMsIHJlc29sdmUgbWVyZ2UgY29uZmxpY3RzIGZpcnN0IgorbXNnc3RyICIiCisiQmlybGXFn3RpcmlsbWVtacWfIC5naXRtb2R1bGVzIGRlxJ9pxZ90aXJpbGVtaXlvciwgw7ZuY2UgYmlybGXFn3Rpcm1lICIKKyLDp2FrxLHFn21hbGFyxLFuxLEgw6fDtnrDvG4iCisKKyM6IHN1Ym1vZHVsZS5jOjExOCBzdWJtb2R1bGUuYzoxNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGZpbmQgc2VjdGlvbiBpbiAuZ2l0bW9kdWxlcyB3aGVyZSBwYXRoPSVzIgorbXNnc3RyICIuZ2l0bW9kdWxlcyBpw6dpbmRlIHBhdGg9JXMgb2xhbiBiw7Zsw7xtIGJ1bHVuYW1hZMSxIgorCisjOiBzdWJtb2R1bGUuYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHJlbW92ZSAuZ2l0bW9kdWxlcyBlbnRyeSBmb3IgJXMiCittc2dzdHIgIiVzIGnDp2luIC5naXRtb2R1bGVzIGdpcmRpc2kga2FsZMSxcsSxbGFtYWTEsSIKKworIzogc3VibW9kdWxlLmM6MTY1Cittc2dpZCAic3RhZ2luZyB1cGRhdGVkIC5naXRtb2R1bGVzIGZhaWxlZCIKK21zZ3N0ciAiZ8O8bmNlbGxlbm1pxZ8gLmdpdG1vZHVsZXMndSBoYXrEsXJsYW1hIGJhxZ9hcsSxc8SxeiBvbGR1IgorCisjOiBzdWJtb2R1bGUuYzozMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW4gdW5wb3B1bGF0ZWQgc3VibW9kdWxlICclcyciCittc2dzdHIgImnDp2kgZG9sZHVydWxtYW3EscWfICclcycgYWx0bW9kw7xsw7xuZGUiCisKKyM6IHN1Ym1vZHVsZS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJQYXRoc3BlYyAnJXMnIGlzIGluIHN1Ym1vZHVsZSAnJS4qcyciCittc2dzdHIgIllvbCBiZWxpcnRlY2kgJyVzJyAnJS4qcycgYWx0bW9kw7xsw7xuZGUiCisKKyM6IHN1Ym1vZHVsZS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS1pZ25vcmUtc3VibW9kdWxlcyBhcmd1bWVudDogJXMiCittc2dzdHIgImhhdGFsxLEgLS1pZ25vcmUtc3VibW9kdWxlcyBkZcSfacWfa2VuaTogJXMiCisKKyM6IHN1Ym1vZHVsZS5jOjgxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU3VibW9kdWxlIGluIGNvbW1pdCAlcyBhdCBwYXRoOiAnJXMnIGNvbGxpZGVzIHdpdGggYSBzdWJtb2R1bGUgbmFtZWQgdGhlICIKKyJzYW1lLiBTa2lwcGluZyBpdC4iCittc2dzdHIgIiIKKyIlcyBnw7ZuZGVyaXNpbmRlICclcycgeW9sdW5kYSBidWx1bmFuIGFsdG1vZMO8bCwgYXluxLEgYWRsxLEgYmlyIGFsdG1vZMO8bGxlICIKKyLDp2FycMSxxZ/EsXlvci4gQXRsYW7EsXlvci4iCisKKyM6IHN1Ym1vZHVsZS5jOjkxMAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJtb2R1bGUgZW50cnkgJyVzJyAoJXMpIGlzIGEgJXMsIG5vdCBhIGNvbW1pdCIKK21zZ3N0ciAiYWx0bW9kw7xsIGdpcmRpc2kgJyVzJyAoJXMpIGJpciAlcywgZ8O2bmRlcmkgZGXEn2lsIgorCisjOiBzdWJtb2R1bGUuYzo5OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvdWxkIG5vdCBydW4gJ2dpdCByZXYtbGlzdCA8Y29tbWl0cz4gLS1ub3QgLS1yZW1vdGVzIC1uIDEnIGNvbW1hbmQgaW4gIgorInN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiIgorIiclcycgYWx0bW9kw7xsw7xuZGUgJ2dpdCByZXYtbGlzdCA8Y29tbWl0cz4gLS1ub3QgLS1yZW1vdGVzIC1uIDEnICIKKyLDp2FsxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IHN1Ym1vZHVsZS5jOjExMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvY2VzcyBmb3Igc3VibW9kdWxlICclcycgZmFpbGVkIgorbXNnc3RyICInJXMnIGFsdG1vZMO8bMO8IGnDp2luIGnFn2xlbSBiYcWfYXLEsXPEsXogb2xkdSIKKworIzogc3VibW9kdWxlLmM6MTE0NyBidWlsdGluL2JyYW5jaC5jOjY4MCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA0NQorbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlIEhFQUQgYXMgYSB2YWxpZCByZWYuIgorbXNnc3RyICJIRUFEIGdlw6dlcmxpIGJpciBiYcWfdnVydSBvbGFyYWsgw6fDtnrDvGxlbWVkaS4iCisKKyM6IHN1Ym1vZHVsZS5jOjExNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHVzaGluZyBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICInJXMnIGFsdG1vZMO8bMO8IGl0aWxpeW9yXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjExNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIHB1c2ggc3VibW9kdWxlICclcydcbiIKK21zZ3N0ciAiJyVzJyBhbHRtb2TDvGzDvCBpdGlsZW1peW9yXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjE0NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmV0Y2hpbmcgc3VibW9kdWxlICVzJXNcbiIKK21zZ3N0ciAiJXMlcyBhbHRtb2TDvGzDvCBnZXRpcmlsaXlvclxuIgorCisjOiBzdWJtb2R1bGUuYzoxNDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBhY2Nlc3Mgc3VibW9kdWxlICclcydcbiIKK21zZ3N0ciAiJyVzJyBhbHRtb2TDvGzDvG5lIGVyacWfaWxlbWVkaVxuIgorCisjOiBzdWJtb2R1bGUuYzoxNjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFcnJvcnMgZHVyaW5nIHN1Ym1vZHVsZSBmZXRjaDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIkFsdG1vZMO8bCBnZXRpcmlsaXJrZW4gaGF0YTpcbiIKKyIlcyIKKworIzogc3VibW9kdWxlLmM6MTY2MgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCByZWNvZ25pemVkIGFzIGEgZ2l0IHJlcG9zaXRvcnkiCittc2dzdHIgIiclcycgYmlyIGdpdCBkZXBvc3Ugb2xhcmFrIHRhbsSxbWxhbmFtYWTEsSIKKworIzogc3VibW9kdWxlLmM6MTY3OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcnVuICdnaXQgc3RhdHVzIC0tcG9yY2VsYWluPTInIGluIHN1Ym1vZHVsZSAlcyIKK21zZ3N0ciAiJyVzJyBhbHRtb2TDvGzDvCBpw6dpbmRlICdnaXQgc3RhdHVzIC0tcG9yY2VsYWluPTInIMOnYWzEscWfdMSxcsSxbGFtYWTEsSIKKworIzogc3VibW9kdWxlLmM6MTcyMAorIywgYy1mb3JtYXQKK21zZ2lkICInZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbj0yJyBmYWlsZWQgaW4gc3VibW9kdWxlICVzIgorbXNnc3RyICInJXMnIGFsdG1vZMO8bMO8IGnDp2luZGUgJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgYmHFn2FyxLFzxLF6IG9sZHUiCisKKyM6IHN1Ym1vZHVsZS5jOjE4MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXJ0ICdnaXQgc3RhdHVzJyBpbiBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiJyVzJyBhbHRtb2TDvGzDvCBpw6dpbmRlICdnaXQgc3RhdHVzJyBiYcWfbGF0xLFsYW1hZMSxIgorCisjOiBzdWJtb2R1bGUuYzoxODEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBydW4gJ2dpdCBzdGF0dXMnIGluIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICInJXMnIGFsdG1vZMO8bMO8IGnDp2luZGUgJ2dpdCBzdGF0dXMnIMOnYWzEscWfdMSxcsSxbGFtYWTEsSIKKworIzogc3VibW9kdWxlLmM6MTgyOAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgdW5zZXQgY29yZS53b3JrdHJlZSBzZXR0aW5nIGluIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICInJXMnIGFsdG1vZMO8bMO8IGnDp2luZGUgY29yZS53b3JrdHJlZSBheWFyxLEga2FwYXTEsWxhbWFkxLEiCisKKyM6IHN1Ym1vZHVsZS5jOjE4NTUgc3VibW9kdWxlLmM6MjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICInJXMnIGFsdG1vZMO8bMO8bmUgw7Z6eWluZWxlbmVtZWRpIgorCisjOiBzdWJtb2R1bGUuYzoxODc2Cittc2dpZCAiY291bGQgbm90IHJlc2V0IHN1Ym1vZHVsZSBpbmRleCIKK21zZ3N0ciAiYWx0bW9kw7xsIGluZGVrc2kgc8SxZsSxcmxhbmFtYWTEsSIKKworIzogc3VibW9kdWxlLmM6MTkxOAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJtb2R1bGUgJyVzJyBoYXMgZGlydHkgaW5kZXgiCittc2dzdHIgIiclcycgYWx0bW9kw7xsw7wgaW5kZWtzaSBraXJsaSIKKworIzogc3VibW9kdWxlLmM6MTk3MAorIywgYy1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgJyVzJyBjb3VsZCBub3QgYmUgdXBkYXRlZC4iCittc2dzdHIgIiclcycgYWx0bW9kw7xsw7wgZ8O8bmNlbGxlbmVtZWRpLiIKKworIzogc3VibW9kdWxlLmM6MjAzOAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJtb2R1bGUgZ2l0IGRpciAnJXMnIGlzIGluc2lkZSBnaXQgZGlyICclLipzJyIKK21zZ3N0ciAiYWx0bW9kw7xsIGdpdCBkaXppbmkgJyVzJywgJyUuKnMnIGdpdCBkaXppbmkgacOnaW5kZSIKKworIzogc3VibW9kdWxlLmM6MjA1OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVsb2NhdGVfZ2l0ZGlyIGZvciBzdWJtb2R1bGUgJyVzJyB3aXRoIG1vcmUgdGhhbiBvbmUgd29ya3RyZWUgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAiIgorInJlbG9jYXRlX2dpdGRpciBiaXJkZW4gw6dvayDDp2FsxLHFn21hIGHEn2HDp2zEsSAnJXMnIGFsdG1vZMO8bMO8IGnDp2luIGRlc3Rla2xlbm1peW9yIgorCisjOiBzdWJtb2R1bGUuYzoyMDcxIHN1Ym1vZHVsZS5jOjIxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGxvb2t1cCBuYW1lIGZvciBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiJyVzJyBhbHRtb2TDvGzDvCBhZMSxIGJha8SxbGFtYWTEsSIKKworIzogc3VibW9kdWxlLmM6MjA3NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBtb3ZlICclcycgaW50byBhbiBleGlzdGluZyBnaXQgZGlyIgorbXNnc3RyICInJXMnIMO2Z2VzaW5pIG1ldmN1dCBiaXIgZ2l0IGRpemluaW5lIHRhxZ/EsW1hIHJlZGRlZGlsaXlvciIKKworIzogc3VibW9kdWxlLmM6MjA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTWlncmF0aW5nIGdpdCBkaXJlY3Rvcnkgb2YgJyVzJXMnIGZyb21cbiIKKyInJXMnIHRvXG4iCisiJyVzJ1xuIgorbXNnc3RyICIiCisiJyVzJXMnIGdpdCBkaXppbmkgZ8O2w6cgZXR0aXJpbGl5b3I6XG4iCisixZ91cmFkYW46ICclcydcbiIKKyLFn3VyYXlhOiAnJXMnXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjIyMDkKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgbHMtZmlsZXMgaW4gLi4iCittc2dzdHIgImxzLWZpbGVzIMWfdXJhZGEgYmHFn2xhdMSxbGFtYWTEsSAuLiIKKworIzogc3VibW9kdWxlLmM6MjI0OAorIywgYy1mb3JtYXQKK21zZ2lkICJscy10cmVlIHJldHVybmVkIHVuZXhwZWN0ZWQgcmV0dXJuIGNvZGUgJWQiCittc2dzdHIgImxzLXRyZWUgYmVrbGVubWVkaWsgYmlyIGJpw6dpbWRlICVkIGtvZHUgaWxlIMOnxLFrdMSxIgorCisjOiBzdWJtb2R1bGUtY29uZmlnLmM6MjM2CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHN1c3BpY2lvdXMgc3VibW9kdWxlIG5hbWU6ICVzIgorbXNnc3RyICJrdcWfa3UgZG/En3VyYW4gYWx0bW9kw7xsIHlvayBzYXnEsWzEsXlvcjogJXMiCisKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzozMDMKK21zZ2lkICJuZWdhdGl2ZSB2YWx1ZXMgbm90IGFsbG93ZWQgZm9yIHN1Ym1vZHVsZS5mZXRjaGpvYnMiCittc2dzdHIgInN1Ym1vZHVsZS5mZXRjaGpvYnMgacOnaW4gbmVnYXRpZiBkZcSfZXJsZXJlIGl6aW4gdmVyaWxtaXlvciIKKworIzogc3VibW9kdWxlLWNvbmZpZy5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAnJXMnIHdoaWNoIG1heSBiZSBpbnRlcnByZXRlZCBhcyBhIGNvbW1hbmQtbGluZSBvcHRpb246ICVzIgorbXNnc3RyICIiCisiJyVzJyBiaXIga29tdXQgc2F0xLFyxLEgc2XDp2VuZcSfaSBvbGFyYWsgeW9ydW1sYW5hYmlsZWNlxJ9pbmRlbiB5b2sgc2F5xLFsxLF5b3I6ICVzIgorCisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdmFsdWUgZm9yICVzIgorbXNnc3RyICIlcyBpw6dpbiBnZcOnZXJzaXogZGXEn2VyIgorCisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCB1cGRhdGUgLmdpdG1vZHVsZXMgZW50cnkgJXMiCittc2dzdHIgIi5naXRtb2R1bGVzIGdpcmRpc2kgJXMgZ8O8bmNlbGxlbmVtZWRpIgorCisjOiB0cmFpbGVyLmM6MjM4CisjLCBjLWZvcm1hdAorbXNnaWQgInJ1bm5pbmcgdHJhaWxlciBjb21tYW5kICclcycgZmFpbGVkIgorbXNnc3RyICInJXMnIGFydGJpbGdpIGtvbXV0dW51IMOnYWzEscWfdMSxcm1hIGJhxZ9hcsSxc8SxeiBvbGR1IgorCisjOiB0cmFpbGVyLmM6NDg1IHRyYWlsZXIuYzo0OTAgdHJhaWxlci5jOjQ5NSB0cmFpbGVyLmM6NTQ5IHRyYWlsZXIuYzo1NTMKKyM6IHRyYWlsZXIuYzo1NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB2YWx1ZSAnJXMnIGZvciBrZXkgJyVzJyIKK21zZ3N0ciAiYmlsaW5tZXllbiBkZcSfZXIgJyVzJyAoJyVzJyBhbmFodGFyxLEgacOnaW4pIgorCisjOiB0cmFpbGVyLmM6NTM5IHRyYWlsZXIuYzo1NDQgYnVpbHRpbi9yZW1vdGUuYzoyOTggYnVpbHRpbi9yZW1vdGUuYzozMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAibW9yZSB0aGFuIG9uZSAlcyIKK21zZ3N0ciAiYmlyZGVuIMOnb2sgJXMiCisKKyM6IHRyYWlsZXIuYzo3MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdHJhaWxlciB0b2tlbiBpbiB0cmFpbGVyICclLipzJyIKK21zZ3N0ciAiJyUuKnMnIGFydGJpbGdpc2kgacOnaW5kZSBib8WfIGFydGJpbGdpIHNpbWdlc2kiCisKKyM6IHRyYWlsZXIuYzo3NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgaW5wdXQgZmlsZSAnJXMnIgorbXNnc3RyICInJXMnIGdpcmRpIGRvc3lhc8SxIG9rdW5hbWFkxLEiCisKKyM6IHRyYWlsZXIuYzo3NTMKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBmcm9tIHN0ZGluIgorbXNnc3RyICJzdGRpbidkZW4gb2t1bmFtYWTEsSIKKworIzogdHJhaWxlci5jOjEwMTEgd3JhcHBlci5jOjY2NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCAlcyIKK21zZ3N0ciAiJXMgZG9zeWEgYmlsZ2lsZXJpIGFsxLFuYW1hZMSxIgorCisjOiB0cmFpbGVyLmM6MTAxMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlICVzIGlzIG5vdCBhIHJlZ3VsYXIgZmlsZSIKK21zZ3N0ciAiJXMgZG9zeWFzxLEgc8SxcmFkYW4gYmlyIGRvc3lhIGRlxJ9pbCIKKworIzogdHJhaWxlci5jOjEwMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAlcyBpcyBub3Qgd3JpdGFibGUgYnkgdXNlciIKK21zZ3N0ciAiJXMgZG9zeWFzxLEga3VsbGFuxLFjxLEgdGFyYWbEsW5kYW4geWF6xLFsYWJpbGlyIGRlxJ9pbCIKKworIzogdHJhaWxlci5jOjEwMjcKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0ZW1wb3JhcnkgZmlsZSIKK21zZ3N0ciAiZ2XDp2ljaSBkb3N5YSBhw6fEsWxhbWFkxLEiCisKKyM6IHRyYWlsZXIuYzoxMDY3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZW5hbWUgdGVtcG9yYXJ5IGZpbGUgdG8gJXMiCittc2dzdHIgImdlw6dpY2kgZG9zeWEgYWTEsSAlcyBvbGFyYWsgZGXEn2nFn3RpcmlsZW1lZGkiCisKKyM6IHRyYW5zcG9ydC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCBzZXQgdXBzdHJlYW0gb2YgJyVzJyB0byAnJXMnIG9mICclcydcbiIKK21zZ3N0ciAiJyVzJyDDvHN0IGtheW5hxJ/EsSAnJXMnIChrYXluYWs6ICclcycpIG9sYXJhayBheWFybGFuYWNha1xuIgorCisjOiB0cmFuc3BvcnQuYzoxNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgYnVuZGxlICclcyciCittc2dzdHIgIiclcycgZGVtZXRpIG9rdW5hbWFkxLEiCisKKyM6IHRyYW5zcG9ydC5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmFuc3BvcnQ6IGludmFsaWQgZGVwdGggb3B0aW9uICclcyciCittc2dzdHIgInRyYW5zcG9ydDogR2XDp2Vyc2l6IGRlcmlubGlrIHNlw6dlbmXEn2kgJyVzJyIKKworIzogdHJhbnNwb3J0LmM6MjY2Cittc2dpZCAic2VlIHByb3RvY29sLnZlcnNpb24gaW4gJ2dpdCBoZWxwIGNvbmZpZycgZm9yIG1vcmUgZGV0YWlscyIKK21zZ3N0ciAiYXlyxLFudMSxbGFyIGnDp2luICdnaXQgaGVscCBjb25maWcnIGnDp2luZGUgcHJvdG9jb2wudmVyc2lvbidhIGJha8SxbiIKKworIzogdHJhbnNwb3J0LmM6MjY3Cittc2dpZCAic2VydmVyIG9wdGlvbnMgcmVxdWlyZSBwcm90b2NvbCB2ZXJzaW9uIDIgb3IgbGF0ZXIiCittc2dzdHIgInN1bnVjdSBzZcOnZW5la2xlcmkgcHJvdG9rb2wgc8O8csO8bSAyIHZleWEgc29ucmFzxLFuxLEgZ2VyZWt0aXJpciIKKworIzogdHJhbnNwb3J0LmM6NjMyCittc2dpZCAiY291bGQgbm90IHBhcnNlIHRyYW5zcG9ydC5jb2xvci4qIGNvbmZpZyIKK21zZ3N0ciAidHJhbnNwb3J0LmNvbG9yLiogeWFwxLFsYW5kxLFybWFzxLEgYXlyxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IHRyYW5zcG9ydC5jOjcwNQorbXNnaWQgInN1cHBvcnQgZm9yIHByb3RvY29sIHYyIG5vdCBpbXBsZW1lbnRlZCB5ZXQiCittc2dzdHIgInByb3Rva29sIHYyIGRlc3RlxJ9pIGhlbsO8eiB5ZXJpbmUgZ2V0aXJpbG1lZGkiCisKKyM6IHRyYW5zcG9ydC5jOjgzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHZhbHVlIGZvciBjb25maWcgJyVzJzogJXMiCittc2dzdHIgIiclcycgeWFwxLFsYW5kxLFybWFzxLEgacOnaW4gYmlsaW5tZXllbiBkZcSfZXI6ICVzIgorCisjOiB0cmFuc3BvcnQuYzo4OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJhbnNwb3J0ICclcycgbm90IGFsbG93ZWQiCittc2dzdHIgIiclcycgdGHFn8SxecSxY8Sxc8SxbmEgaXppbiB2ZXJpbG1peW9yIgorCisjOiB0cmFuc3BvcnQuYzo5NDkKK21zZ2lkICJnaXQtb3Zlci1yc3luYyBpcyBubyBsb25nZXIgc3VwcG9ydGVkIgorbXNnc3RyICJnaXQtb3Zlci1yc3luYyBhcnTEsWsgZGVzdGVrbGVubWl5b3IiCisKKyM6IHRyYW5zcG9ydC5jOjEwNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgc3VibW9kdWxlIHBhdGhzIGNvbnRhaW4gY2hhbmdlcyB0aGF0IGNhblxuIgorIm5vdCBiZSBmb3VuZCBvbiBhbnkgcmVtb3RlOlxuIgorbXNnc3RyICIiCisiQcWfYcSfxLFkYWtpIGFsdG1vZMO8bCB5b2xsYXLEsSBiYcWfa2EgaGnDp2JpciB1emFrIGtvbnVtZGEgYnVsdW5hbWF5YW5cbiIKKyJkZcSfacWfaWtsaWtsZXIgacOnZXJpeW9yOlxuIgorCisjOiB0cmFuc3BvcnQuYzoxMDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJQbGVhc2UgdHJ5XG4iCisiXG4iCisiXHRnaXQgcHVzaCAtLXJlY3Vyc2Utc3VibW9kdWxlcz1vbi1kZW1hbmRcbiIKKyJcbiIKKyJvciBjZCB0byB0aGUgcGF0aCBhbmQgdXNlXG4iCisiXG4iCisiXHRnaXQgcHVzaFxuIgorIlxuIgorInRvIHB1c2ggdGhlbSB0byBhIHJlbW90ZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIkzDvHRmZW5cbiIKKyJcbiIKKyJcdGdpdCBwdXNoIC0tcmVjdXJzZS1zdWJtb2R1bGVzPW9uLWRlbWFuZFxuIgorIlxuIgorImRlbmV5aW4gdmV5YSBiaXIgdXphayBrb251bWEgaXRtZWsgacOnaW4geW9sYSBjZCB5YXDEsXBcbiIKKyJcbiIKKyJcdGdpdCBwdXNoXG4iCisiXG4iCisia3VsbGFuxLFuLlxuIgorIlxuIgorCisjOiB0cmFuc3BvcnQuYzoxMDU2Cittc2dpZCAiQWJvcnRpbmcuIgorbXNnc3RyICLEsHB0YWwgZWRpbGl5b3IiCisKKyM6IHRyYW5zcG9ydC5jOjEyMDEKK21zZ2lkICJmYWlsZWQgdG8gcHVzaCBhbGwgbmVlZGVkIHN1Ym1vZHVsZXMiCittc2dzdHIgImdlcmVrZW4gdMO8bSBhbHRtb2TDvGxsZXIgaXRpbGVtZWRpIgorCisjOiB0cmFuc3BvcnQuYzoxMzQ1IHRyYW5zcG9ydC1oZWxwZXIuYzo2NTcKK21zZ2lkICJvcGVyYXRpb24gbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbCIKK21zZ3N0ciAiacWfbGVtIHByb3Rva29sIHRhcmFmxLFuZGFuIGRlc3Rla2xlbm1peW9yIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjEgdHJhbnNwb3J0LWhlbHBlci5jOjkwCittc2dpZCAiZnVsbCB3cml0ZSB0byByZW1vdGUgaGVscGVyIGZhaWxlZCIKK21zZ3N0ciAidXphayBrb251bSB5YXJkxLFtY8Sxc8SxbmEgdGFtIHlhesSxbSBiYcWfYXLEsXPEsXoiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbmQgcmVtb3RlIGhlbHBlciBmb3IgJyVzJyIKK21zZ3N0ciAiJyVzJyBpw6dpbiB1emFrIGtvbnVtIHlhcmTEsW1jxLFzxLEgYnVsdW5hbWFkxLEiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNjAgdHJhbnNwb3J0LWhlbHBlci5jOjU3MQorbXNnaWQgImNhbid0IGR1cCBoZWxwZXIgb3V0cHV0IGZkIgorbXNnc3RyICJ1emFrIGtvbnVtIHlhcmTEsW1jxLFzxLEgw6fEsWt0xLFzxLEgacOnaW4gZG9zeWEgYcOnxLFrbGF5xLFjxLFzxLEgw6dvxJ9hbHTEsWxhbcSxeW9yIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmtub3duIG1hbmRhdG9yeSBjYXBhYmlsaXR5ICVzOyB0aGlzIHJlbW90ZSBoZWxwZXIgcHJvYmFibHkgbmVlZHMgbmV3ZXIgIgorInZlcnNpb24gb2YgR2l0IgorbXNnc3RyICIiCisiYmlsaW5tZXllbiB6b3J1bmx1ICVzIHlldGVuZcSfaTsgYnUgdXphayBrb251bSB5YXJkxLFtY8Sxc8SxIGLDvHnDvGsgb2xhc8SxbMSxa2xhICIKKyJHaXQnaW4gZGFoYSB5ZW5pIGJpciBzw7xyw7xtw7xuZSBnZXJla3NpbmltIGR1eXV5b3IiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyMTcKK21zZ2lkICJ0aGlzIHJlbW90ZSBoZWxwZXIgc2hvdWxkIGltcGxlbWVudCByZWZzcGVjIGNhcGFiaWxpdHkiCittc2dzdHIgImJ1IHV6YWsga29udW0geWFyZMSxbWPEsXPEsSByZWZzcGVjIHlhcGFiaWxpcmxpxJ9pbmkgeWVyaW5lIGdldGlybWVsaSIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjI4NCB0cmFuc3BvcnQtaGVscGVyLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHVuZXhwZWN0ZWRseSBzYWlkOiAnJXMnIgorbXNnc3RyICIlcyBiZWtsZW5tZWRpayBiaXIgYmnDp2ltZGUgxZ91bnUgc8O2eWxlZGk6ICclcyciCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgYWxzbyBsb2NrZWQgJXMiCittc2dzdHIgIiVzIGF5csSxY2EgxZ91bnUga2lsaXRsZWRpOiAlcyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjQ5MworbXNnaWQgImNvdWxkbid0IHJ1biBmYXN0LWltcG9ydCIKK21zZ3N0ciAiZmFzdC1pbXBvcnQgw6dhbMSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTE2Cittc2dpZCAiZXJyb3Igd2hpbGUgcnVubmluZyBmYXN0LWltcG9ydCIKK21zZ3N0ciAiZmFzdC1pbXBvcnQgw6dhbMSxxZ90xLFyxLFsxLFya2VuIGhhdGEiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1NDUgdHJhbnNwb3J0LWhlbHBlci5jOjExMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgcmVmICVzIgorbXNnc3RyICIlcyBiYcWfdnVydXN1IG9rdW5hbWFkxLEiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biByZXNwb25zZSB0byBjb25uZWN0OiAlcyIKK21zZ3N0ciAiJ2Nvbm5lY3QnZSBiaWxpbm1leWVuIHlhbsSxdDogJXMiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MTIKK21zZ2lkICJzZXR0aW5nIHJlbW90ZSBzZXJ2aWNlIHBhdGggbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbCIKK21zZ3N0ciAidXphayBzZXJ2aXMgeW9sdSBheWFybGFtYSBwcm90b2tvbGNlIGRlc3Rla2xlbm1peW9yIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjE0Cittc2dpZCAiaW52YWxpZCByZW1vdGUgc2VydmljZSBwYXRoIgorbXNnc3RyICJnZcOnZXJzaXogdXphayBrb251bSBzZXJ2aXMgeW9sdSIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjY2MAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBjb25uZWN0IHRvIHN1YnNlcnZpY2UgJXMiCittc2dzdHIgIiVzIGFsdHNlcnZpc2luZSBiYcSfbGFuYW3EsXlvciIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjczNgorIywgYy1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBvay9lcnJvciwgaGVscGVyIHNhaWQgJyVzJyIKK21zZ3N0ciAidGFtYW0vaGF0YSBiZWtsZW5peW9yZHUsIHlhcmTEsW1jxLEgxZ91bnUgc8O2eWxlZGk6ICclcyciCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo3ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGVscGVyIHJlcG9ydGVkIHVuZXhwZWN0ZWQgc3RhdHVzIG9mICVzIgorbXNnc3RyICJ5YXJkxLFtY8SxICVzIGJla2xlbm1lZGlrIGR1cnVtdSBiaWxkaXJkaSIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjg1MAorIywgYy1mb3JtYXQKK21zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCBkcnktcnVuIgorbXNnc3RyICIlcyB5YXJkxLFtY8Sxc8SxICdkcnktcnVuJyBkZXN0ZWtsZW1peW9yIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODUzCisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIgorbXNnc3RyICIlcyB5YXJkxLFtY8Sxc8SxIC0tc2lnbmVkIGRlc3Rla2xlbWl5b3IiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgLS1zaWduZWQ9aWYtYXNrZWQiCittc2dzdHIgIiVzIHlhcmTEsW1jxLFzxLEgLS1zaWduZWQ9aWYtYXNrZWQgZGVzdGVrbGVtaXlvciIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjg2MQorIywgYy1mb3JtYXQKK21zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAtLWF0b21pYyIKK21zZ3N0ciAiJXMgeWFyZMSxbWPEsXPEsSAtLWF0b21pYyBkZXN0ZWtsZW1peW9yIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODY3CisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0ICdwdXNoLW9wdGlvbiciCittc2dzdHIgIiVzIHlhcmTEsW1jxLFzxLEgJ3B1c2gtb3B0aW9uJyBkZXN0ZWtsZW1peW9yIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6OTY1Cittc2dpZCAicmVtb3RlLWhlbHBlciBkb2Vzbid0IHN1cHBvcnQgcHVzaDsgcmVmc3BlYyBuZWVkZWQiCittc2dzdHIgInJlbW90ZS1oZWxwZXIgaXRtZSBkZXN0ZWtsZW1peW9yOyBiYcWfdnVydSBiZWxpcnRlY2kgZ2VyZWtsaSIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjk3MAorIywgYy1mb3JtYXQKK21zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAnZm9yY2UnIgorbXNnc3RyICIlcyB5YXJkxLFtY8Sxc8SxICdmb3JjZScgZGVzdGVrbGVtaXlvciIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMTcKK21zZ2lkICJjb3VsZG4ndCBydW4gZmFzdC1leHBvcnQiCittc2dzdHIgImZhc3QtZXhwb3J0IMOnYWzEscWfdMSxcsSxbGFtYWTEsSIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMjIKK21zZ2lkICJlcnJvciB3aGlsZSBydW5uaW5nIGZhc3QtZXhwb3J0IgorbXNnc3RyICJmYXN0LWV4cG9ydCDDp2FsxLHFn3TEsXLEsWzEsXJrZW4gaGF0YSIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk5vIHJlZnMgaW4gY29tbW9uIGFuZCBub25lIHNwZWNpZmllZDsgZG9pbmcgbm90aGluZy5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgc3BlY2lmeSBhIGJyYW5jaCBzdWNoIGFzICdtYXN0ZXInLlxuIgorbXNnc3RyICIiCisiT3J0YWsgYmHFn3Z1cnUgeW9rIHZlIGhpw6cgYmVsaXJ0aWxtZW1pxZ87IGJpciDFn2V5IHlhcMSxbG1heWFjYWsuXG4iCisiQmVsa2kgZGUgYmlyIGRhbCBiZWxpcnRtZWxpc2luaXosIMO2cm5lxJ9pbjogJ21hc3RlcicuXG4iCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCByZXNwb25zZSBpbiByZWYgbGlzdDogJXMiCittc2dzdHIgImJhxZ92dXJ1IGxpc3Rlc2luZGUgaGF0YWzEsSBvbHXFn3R1cnVsbXXFnyB5YW7EsXQ6ICVzIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI3MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkKCVzKSBmYWlsZWQiCittc2dzdHIgInJlYWQoJXMpIGJhxZ9hcsSxc8SxeiBvbGR1IgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ3cml0ZSglcykgZmFpbGVkIgorbXNnc3RyICJ3cml0ZSglcykgYmHFn2FyxLFzxLF6IG9sZHUiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRocmVhZCBmYWlsZWQiCittc2dzdHIgIiVzIGnFnyBwYXLDp2FjxLHEn8SxIGJhxZ9hcsSxc8SxeiBvbGR1IgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0aHJlYWQgZmFpbGVkIHRvIGpvaW46ICVzIgorbXNnc3RyICIlcyBpxZ8gcGFyw6dhY8SxxJ/EsSBla2xlbmVtZWRpOiAlcyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNzEgdHJhbnNwb3J0LWhlbHBlci5jOjEzNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhcnQgdGhyZWFkIGZvciBjb3B5aW5nIGRhdGE6ICVzIgorbXNnc3RyICJ2ZXJpIGtvcHlhbGFtYSBpw6dpbiBpxZ8gcGFyw6dhY8SxxJ/EsSBiYcWfbGF0xLFsYW3EsXlvcjogJXMiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHByb2Nlc3MgZmFpbGVkIHRvIHdhaXQiCittc2dzdHIgIiVzIGnFn2xlbWkgYmVrbGV5ZW1lZGkiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHByb2Nlc3MgZmFpbGVkIgorbXNnc3RyICIlcyBpxZ9sZW1pIGJhxZ9hcsSxc8SxeiBvbGR1IgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQzNCB0cmFuc3BvcnQtaGVscGVyLmM6MTQ0MworbXNnaWQgImNhbid0IHN0YXJ0IHRocmVhZCBmb3IgY29weWluZyBkYXRhIgorbXNnc3RyICJ2ZXJpIGtvcHlhbGFtYSBpw6dpbiBpxZ8gcGFyw6dhY8SxxJ/EsSBiYcWfbGF0xLFsYW3EsXlvciIKKworIzogdHJlZS13YWxrLmM6MzIKK21zZ2lkICJ0b28tc2hvcnQgdHJlZSBvYmplY3QiCittc2dzdHIgImHEn2HDpyBuZXNuZXNpIMOnb2sga8Sxc2EiCisKKyM6IHRyZWUtd2Fsay5jOjM4Cittc2dpZCAibWFsZm9ybWVkIG1vZGUgaW4gdHJlZSBlbnRyeSIKK21zZ3N0ciAiYcSfYcOnIGdpcmRpc2luZGUgaGF0YWzEsSBvbHXFn3R1cnVsbXXFnyBraXAiCisKKyM6IHRyZWUtd2Fsay5jOjQyCittc2dpZCAiZW1wdHkgZmlsZW5hbWUgaW4gdHJlZSBlbnRyeSIKK21zZ3N0ciAiYcSfYcOnIGdpcmRpc2luZGUgYm/FnyBkb3N5YSBhZMSxIgorCisjOiB0cmVlLXdhbGsuYzoxMTcKK21zZ2lkICJ0b28tc2hvcnQgdHJlZSBmaWxlIgorbXNnc3RyICJhxJ9hw6cgZG9zeWFzxLEgw6dvayBrxLFzYSIKKworIzogdW5wYWNrLXRyZWVzLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBjaGVja291dDpcbiIKKyIlJXNQbGVhc2UgY29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIGJlZm9yZSB5b3Ugc3dpdGNoIGJyYW5jaGVzLiIKK21zZ3N0ciAiIgorIsOHxLFrxLHFnyB5YXDEsWxhcmFrIGHFn2HEn8SxZGFraSBkb3N5YWxhcmRha2kgeWVyZWwgZGXEn2nFn2lrbGlrbGVyaW4gw7x6ZXJpbmUgIgorInlhesSxbGFjYWs6XG4iCisiJSVzTMO8dGZlbiBkYWwgZGXEn2nFn3Rpcm1lZGVuIMO2bmNlIGRlxJ9pxZ9pa2xpa2xlcmluaXppIGfDtm5kZXJpbiB2ZXlhIHp1bGFsYXnEsW4uIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IGNoZWNrb3V0OlxuIgorIiUlcyIKK21zZ3N0ciAiIgorIsOHxLFrxLHFnyB5YXDEsWxhcmFrIGHFn2HEn8SxZGFraSBkb3N5YWxhcmRha2kgeWVyZWwgZGXEn2nFn2lrbGlrbGVyaW4gw7x6ZXJpbmUgIgorInlhesSxbGFjYWs6XG4iCisiJSVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgorIiUlc1BsZWFzZSBjb21taXQgeW91ciBjaGFuZ2VzIG9yIHN0YXNoIHRoZW0gYmVmb3JlIHlvdSBtZXJnZS4iCittc2dzdHIgIiIKKyJCaXJsZcWfdGlybWUgaWxlIGHFn2HEn8SxZGFraSBkb3N5YWxhcmRha2kgeWVyZWwgZGXEn2nFn2lrbGlrbGVyaW4gw7x6ZXJpbmUgIgorInlhesSxbGFjYWs6XG4iCisiJSVzTMO8dGZlbiBiaXJsZcWfdGlybWVkZW4gw7ZuY2UgZGXEn2nFn2lrbGlrbGVyaW5pemkgZ8O2bmRlcmluIHZleWEgenVsYWxhecSxbi4iCisKKyM6IHVucGFjay10cmVlcy5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCisiJSVzIgorbXNnc3RyICIiCisiQmlybGXFn3Rpcm1lIGlsZSBhxZ9hxJ/EsWRha2kgZG9zeWFsYXJkYWtpIHllcmVsIGRlxJ9pxZ9pa2xpa2xlcmluIMO8emVyaW5lICIKKyJ5YXrEsWxhY2FrOlxuIgorIiUlcyIKKworIzogdW5wYWNrLXRyZWVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKKyIlJXNQbGVhc2UgY29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIGJlZm9yZSB5b3UgJXMuIgorbXNnc3RyICIiCisiJXMgaWxlIGHFn2HEn8SxZGFraSBkb3N5YWxhcmRha2kgeWVyZWwgZGXEn2nFn2lrbGlrbGVyaW4gw7x6ZXJpbmUgeWF6xLFsYWNhazpcbiIKKyIlJXNMw7x0ZmVuICVzIHlhcG1hZGFuIMO2bmNlIGRlxJ9pxZ9pa2xpa2xlcmluaXppIGfDtm5kZXJpbiB2ZXlhIHp1bGFsYXnEsW4uIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgorIiUlcyIKK21zZ3N0ciAiIgorIiVzIGlsZSBhxZ9hxJ/EsWRha2kgZG9zeWFsYXJkYWtpIHllcmVsIGRlxJ9pxZ9pa2xpa2xlcmluIMO8emVyaW5lIHlhesSxbGFjYWs6XG4iCisiJSVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVwZGF0aW5nIHRoZSBmb2xsb3dpbmcgZGlyZWN0b3JpZXMgd291bGQgbG9zZSB1bnRyYWNrZWQgZmlsZXMgaW4gdGhlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIkHFn2HEn8SxZGFraSBkaXppbmxlciBnw7xuY2VsbGVuZXJlayBpw6dsZXJpbmRla2kgaXpsZW5tZXllbiBkb3N5YWxhciAiCisia2F5YmVkaWxlY2VrOlxuIgorIiVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IGNoZWNrb3V0OlxuIgorIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3Ugc3dpdGNoIGJyYW5jaGVzLiIKK21zZ3N0ciAiIgorIsOHxLFrxLHFnyB5YXDEsWxhcmFrIGHFn2HEn8SxZGFraSBpemxlbm1leWVuIMOnYWzEscWfbWEgYcSfYWPEsSBkb3N5YWxhcsSxIGthbGTEsXLEsWxhY2FrOlxuIgorIiUlc0zDvHRmZW4gZGFsIGRlxJ9pxZ90aXJtZWRlbiDDtm5jZSBvbmxhcsSxIHRhxZ/EsXnEsW4gdmV5YSBrYWxkxLFyxLFuLiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKKyIlJXMiCittc2dzdHIgIiIKKyLDh8Sxa8SxxZ8geWFwxLFsYXJhayBhxZ9hxJ/EsWRha2kgaXpsZW5tZXllbiDDp2FsxLHFn21hIGHEn2FjxLEgZG9zeWFsYXLEsSBrYWxkxLFyxLFsYWNhazpcbiIKKyIlJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgbWVyZ2U6XG4iCisiJSVzUGxlYXNlIG1vdmUgb3IgcmVtb3ZlIHRoZW0gYmVmb3JlIHlvdSBtZXJnZS4iCittc2dzdHIgIiIKKyJCaXJsZcWfdGlybWUgaWxlIGHFn2HEn8SxZGFraSBpemxlbm1leWVuIMOnYWzEscWfbWEgYcSfYWPEsSBkb3N5YWxhcsSxIGthbGTEsXLEsWxhY2FrOlxuIgorIiUlc0zDvHRmZW4gYmlybGXFn3Rpcm1lZGVuIMO2bmNlIG9ubGFyxLEgdGHFn8SxecSxbiB2ZXlhIGthbGTEsXLEsW4uIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgorIiUlcyIKK21zZ3N0ciAiIgorIkJpcmxlxZ90aXJtZSBpbGUgYcWfYcSfxLFkYWtpIGl6bGVubWV5ZW4gw6dhbMSxxZ9tYSBhxJ9hY8SxIGRvc3lhbGFyxLEga2FsZMSxcsSxbGFjYWs6XG4iCisiJSVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5ICVzOlxuIgorIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3UgJXMuIgorbXNnc3RyICIiCisiJXMgaWxlIGHFn2HEn8SxZGFraSBpemxlbm1leWVuIMOnYWzEscWfbWEgYcSfYWPEsSBkb3N5YWxhcsSxIGthbGTEsXLEsWxhY2FrOlxuIgorIiUlc0zDvHRmZW4gJXMgeWFwbWFkYW4gw7ZuY2Ugb25sYXLEsSB0YcWfxLF5xLFuIHZleWEga2FsZMSxcsSxbi4iCisKKyM6IHVucGFjay10cmVlcy5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgJXM6XG4iCisiJSVzIgorbXNnc3RyICIiCisiJXMgaWxlIGHFn2HEn8SxZGFraSBpemxlbm1leWVuIMOnYWzEscWfbWEgYcSfYWPEsSBkb3N5YWxhcsSxIGthbGTEsXLEsWxhY2FrOlxuIgorIiUlcyIKKworIzogdW5wYWNrLXRyZWVzLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgIgorImNoZWNrb3V0OlxuIgorIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3Ugc3dpdGNoIGJyYW5jaGVzLiIKK21zZ3N0ciAiIgorIsOHxLFrxLHFnyB5YXDEsWxhcmFrIGHFn2HEn8SxZGFraSBpemxlbm1leWVuIMOnYWzEscWfbWEgYcSfYWPEsSBkb3N5YWxhcsSxbsSxbiDDvHplcmluZSAiCisieWF6xLFsYWNhazpcbiIKKyIlJXNMw7x0ZmVuIGRhbCBkZcSfacWfdGlybWVkZW4gw7ZuY2Ugb25sYXLEsSB0YcWfxLF5xLFuIHZleWEga2FsZMSxcsSxbi4iCisKKyM6IHVucGFjay10cmVlcy5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICIKKyJjaGVja291dDpcbiIKKyIlJXMiCittc2dzdHIgIiIKKyLDh8Sxa8SxxZ8geWFwxLFsYXJhayBhxZ9hxJ/EsWRha2kgaXpsZW5tZXllbiDDp2FsxLHFn21hIGHEn2FjxLEgZG9zeWFsYXLEsW7EsW4gw7x6ZXJpbmUgIgorInlhesSxbGFjYWs6XG4iCisiJSVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKKyIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91IG1lcmdlLiIKK21zZ3N0ciAiIgorIkJpcmxlxZ90aXJtZSBpbGUgYcWfYcSfxLFkYWtpIGl6bGVubWV5ZW4gw6dhbMSxxZ9tYSBhxJ9hY8SxIGRvc3lhbGFyxLFuxLFuIMO8emVyaW5lICIKKyJ5YXrEsWxhY2FrOlxuIgorIiUlc0zDvHRmZW4gYmlybGXFn3Rpcm1lZGVuIMO2bmNlIG9ubGFyxLEgdGHFn8SxecSxbiB2ZXlhIGthbGTEsXLEsW4uIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKKyIlJXMiCittc2dzdHIgIiIKKyJCaXJsZcWfdGlybWUgaWxlIGHFn2HEn8SxZGFraSBpemxlbm1leWVuIMOnYWzEscWfbWEgYcSfYWPEsSBkb3N5YWxhcsSxbsSxbiDDvHplcmluZSAiCisieWF6xLFsYWNhazpcbiIKKyIlJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjE1OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgorIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3UgJXMuIgorbXNnc3RyICIiCisiJXMgaWxlIGHFn2HEn8SxZGFraSBpemxlbm1leWVuIMOnYWzEscWfbWEgYcSfYWPEsSBkb3N5YWxhcsSxbsSxbiDDvHplcmluZSB5YXrEsWxhY2FrOlxuIgorIiUlc0zDvHRmZW4gJXMgeWFwbWFkYW4gw7ZuY2Ugb25sYXLEsSB0YcWfxLF5xLFuIHZleWEga2FsZMSxcsSxbi4iCisKKyM6IHVucGFjay10cmVlcy5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgorIiUlcyIKK21zZ3N0ciAiIgorIiVzIGlsZSBhxZ9hxJ/EsWRha2kgaXpsZW5tZXllbiDDp2FsxLHFn21hIGHEn2FjxLEgZG9zeWFsYXLEsW7EsW4gw7x6ZXJpbmUgeWF6xLFsYWNhazpcbiIKKyIlJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJFbnRyeSAnJXMnIG92ZXJsYXBzIHdpdGggJyVzJy4gIENhbm5vdCBiaW5kLiIKK21zZ3N0ciAiJyVzJyBnaXJkaXNpICclcycgaWxlIMO8c3Qgw7xzdGUgYmluaXlvci4gQmHEn2xhbmFtxLF5b3IuIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNhbm5vdCB1cGRhdGUgc3BhcnNlIGNoZWNrb3V0OiB0aGUgZm9sbG93aW5nIGVudHJpZXMgYXJlIG5vdCB1cCB0byBkYXRlOlxuIgorIiVzIgorbXNnc3RyICIiCisiQXJhbMSxa2zEsSDDp8Sxa8SxxZ8gZ8O8bmNlbGxlbmVtaXlvcjogQcWfYcSfxLFkYWtpIGdpcmRpbGVyIGfDvG5jZWwgZGXEn2lsOlxuIgorIiVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IHNwYXJzZSBjaGVja291dCAiCisidXBkYXRlOlxuIgorIiVzIgorbXNnc3RyICIiCisiQXJhbMSxa2zEsSDDp8Sxa8SxxZ8gZ8O8bmNlbGxlbWVzaSBpbGUgYcWfYcSfxLFkYWtpIMOnYWzEscWfbWEgYcSfYWPEsSBkb3N5YWxhcsSxbsSxbiDDvHplcmluZSAiCisieWF6xLFsYWNhazpcbiIKKyIlcyIKKworIzogdW5wYWNrLXRyZWVzLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IHNwYXJzZSBjaGVja291dCAiCisidXBkYXRlOlxuIgorIiVzIgorbXNnc3RyICIiCisiQXJhbMSxa2zEsSDDp8Sxa8SxxZ8gZ8O8bmNlbGxlbWVzaSBpbGUgYcWfYcSfxLFkYWtpIMOnYWzEscWfbWEgYcSfYWPEsSBkb3N5YWxhcsSxICIKKyJrYWxkxLFyxLFsYWNhazpcbiIKKyIlcyIKKworIzogdW5wYWNrLXRyZWVzLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDYW5ub3QgdXBkYXRlIHN1Ym1vZHVsZTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIkFsdG1vZMO8bCBnw7xuY2VsbGVuZW1peW9yOlxuIgorIiVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWJvcnRpbmdcbiIKK21zZ3N0ciAixLBwdGFsIGVkaWxpeW9yXG4iCisKKyM6IHVucGFjay10cmVlcy5jOjMxNworbXNnaWQgIlVwZGF0aW5nIGZpbGVzIgorbXNnc3RyICJEb3N5YWxhciBnw7xuY2VsbGVuaXlvciIKKworIzogdW5wYWNrLXRyZWVzLmM6MzQ5Cittc2dpZCAiIgorInRoZSBmb2xsb3dpbmcgcGF0aHMgaGF2ZSBjb2xsaWRlZCAoZS5nLiBjYXNlLXNlbnNpdGl2ZSBwYXRoc1xuIgorIm9uIGEgY2FzZS1pbnNlbnNpdGl2ZSBmaWxlc3lzdGVtKSBhbmQgb25seSBvbmUgZnJvbSB0aGUgc2FtZVxuIgorImNvbGxpZGluZyBncm91cCBpcyBpbiB0aGUgd29ya2luZyB0cmVlOlxuIgorbXNnc3RyICIiCisiQcWfYcSfxLFkYWtpIHlvbGxhciBiaXJiaXJpeWxlIMOnYXJwxLHFn3TEsSAow7Zybi4gQsOcWcOcSy9rw7zDp8O8ayBoYXJmIGR1eWFybMSxXG4iCisib2xtYXlhbiBkb3N5YSBzaXN0ZW1pbmRlIELDnFnDnEsva8O8w6fDvGsgaGFyZiBkdXlhcmzEsSB5b2xsYXIpIHZlIGF5bsSxIMOnYXJwxLHFn2FuXG4iCisiZ3J1cHRhbiB5YWxuxLF6Y2EgYmlyIHRhbmVzaSDDp2FsxLHFn21hIGHEn2FjxLFuZGE6XG4iCisKKyM6IHVucGFjay10cmVlcy5jOjE0NDUKK21zZ2lkICJVcGRhdGluZyBpbmRleCBmbGFncyIKK21zZ3N0ciAixLBuZGVrcyBiYXlyYWtsYXLEsSBnw7xuY2VsbGVuaXlvciIKKworIzogdXJsbWF0Y2guYzoxNjMKK21zZ2lkICJpbnZhbGlkIFVSTCBzY2hlbWUgbmFtZSBvciBtaXNzaW5nICc6Ly8nIHN1ZmZpeCIKK21zZ3N0ciAiZ2XDp2Vyc2l6IFVSTCDFn2VtYXPEsSB2ZXlhIGVrc2lrICc6Ly8nIGVraSIKKworIzogdXJsbWF0Y2guYzoxODcgdXJsbWF0Y2guYzozNDYgdXJsbWF0Y2guYzo0MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAlWFggZXNjYXBlIHNlcXVlbmNlIgorbXNnc3RyICJnZcOnZXJzaXogJVhYIGthw6fEscWfIHPEsXJhc8SxIgorCisjOiB1cmxtYXRjaC5jOjIxNQorbXNnaWQgIm1pc3NpbmcgaG9zdCBhbmQgc2NoZW1lIGlzIG5vdCAnZmlsZTonIgorbXNnc3RyICJhbmEgYmlsZ2lzYXlhciBla3NpayB2ZSDFn2VtYSAnZmlsZTonIGRlxJ9pbCIKKworIzogdXJsbWF0Y2guYzoyMzIKK21zZ2lkICJhICdmaWxlOicgVVJMIG1heSBub3QgaGF2ZSBhIHBvcnQgbnVtYmVyIgorbXNnc3RyICJiaXIgJ2ZpbGU6JyBVUkwnc2luaW4ga2FwxLEgbnVtYXJhc8SxIG9sbWF5YWJpbGlyIgorCisjOiB1cmxtYXRjaC5jOjI0NworbXNnaWQgImludmFsaWQgY2hhcmFjdGVycyBpbiBob3N0IG5hbWUiCittc2dzdHIgImFuYSBiaWxnaXNheWFyIGFkxLFuZGEgZ2XDp2Vyc2l6IGthcmFrdGVyIgorCisjOiB1cmxtYXRjaC5jOjI5MiB1cmxtYXRjaC5jOjMwMworbXNnaWQgImludmFsaWQgcG9ydCBudW1iZXIiCittc2dzdHIgImdlw6dlcnNpeiBrYXDEsSBudW1hcmFzxLEiCisKKyM6IHVybG1hdGNoLmM6MzcxCittc2dpZCAiaW52YWxpZCAnLi4nIHBhdGggc2VnbWVudCIKK21zZ3N0ciAiZ2XDp2Vyc2l6ICcuLicgeW9sIGtlc2ltaSIKKworIzogd2Fsa2VyLmM6MTcwCittc2dpZCAiRmV0Y2hpbmcgb2JqZWN0cyIKK21zZ3N0ciAiTmVzbmVsZXIgZ2V0aXJpbGl5b3IiCisKKyM6IHdvcmt0cmVlLmM6MjU5IGJ1aWx0aW4vYW0uYzoyMDk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkICclcyciCittc2dzdHIgIiclcycgb2t1bmFtYWTEsSIKKworIzogd29ya3RyZWUuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBhdCBtYWluIHdvcmtpbmcgdHJlZSBpcyBub3QgdGhlIHJlcG9zaXRvcnkgZGlyZWN0b3J5IgorbXNnc3RyICJhbmEgw6dhbMSxxZ9tYSBhxJ9hY8SxbmRha2kgJyVzJyBkZXBvIGRpemluaSBkZcSfaWwiCisKKyM6IHdvcmt0cmVlLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmlsZSBkb2VzIG5vdCBjb250YWluIGFic29sdXRlIHBhdGggdG8gdGhlIHdvcmtpbmcgdHJlZSBsb2NhdGlvbiIKK21zZ3N0ciAiJyVzJyBkb3N5YXPEsSDDp2FsxLHFn21hIGHEn2FjxLEga29udW11bmEgb2xhbiB0YW0geW9sdSBpw6dlcm1peW9yIgorCisjOiB3b3JrdHJlZS5jOjMyOAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICInJXMnIG1ldmN1dCBkZcSfaWwiCisKKyM6IHdvcmt0cmVlLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgLmdpdCBmaWxlLCBlcnJvciBjb2RlICVkIgorbXNnc3RyICInJXMnIGJpciAuZ2l0IGRvc3lhc8SxIGRlxJ9pbCwgaGF0YSBrb2R1ICVkIgorCisjOiB3b3JrdHJlZS5jOjM0MgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IHBvaW50IGJhY2sgdG8gJyVzJyIKK21zZ3N0ciAiJyVzJyDFn3VuYSBnZXJpIGnFn2FyZXQgZXRtaXlvcjogJyVzJyIKKworIzogd3JhcHBlci5jOjE4NiB3cmFwcGVyLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHJlYWRpbmcgYW5kIHdyaXRpbmciCittc2dzdHIgIiclcycgb2t1bWEgdmUgeWF6bWEgacOnaW4gYcOnxLFsYW1hZMSxIgorCisjOiB3cmFwcGVyLmM6Mzg3IHdyYXBwZXIuYzo1ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyAnJXMnIgorbXNnc3RyICInJXMnIGVyacWfaWxlbWl5b3IiCisKKyM6IHdyYXBwZXIuYzo1OTYKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkiCittc2dzdHIgImdlw6dlcmxpIMOnYWzEscWfbWEgZGl6aW5pIGFsxLFuYW3EsXlvciIKKworIzogd3Qtc3RhdHVzLmM6MTU4Cittc2dpZCAiVW5tZXJnZWQgcGF0aHM6IgorbXNnc3RyICJCaXJsZcWfdGlyaWxtZW1pxZ8geW9sbGFyOiIKKworIzogd3Qtc3RhdHVzLmM6MTg3IHd0LXN0YXR1cy5jOjIxOQorbXNnaWQgIiAgKHVzZSBcImdpdCByZXN0b3JlIC0tc3RhZ2VkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgorbXNnc3RyICIiCisiICAoaGF6xLFybMSxa3RhbiDDp8Sxa2FybWFrIGnDp2luIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGRvc3lhPi4uLlwiIGt1bGxhbsSxbikiCisKKyM6IHd0LXN0YXR1cy5jOjE5MCB3dC1zdGF0dXMuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zb3VyY2U9JXMgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiIKKyIgIChoYXrEsXJsxLFrdGFuIMOnxLFrYXJtYWsgacOnaW4gXCJnaXQgcmVzdG9yZSAtLXNvdXJjZT0lcyAtLXN0YWdlZCA8ZG9zeWE+Li4uXCIgIgorImt1bGxhbsSxbikiCisKKyM6IHd0LXN0YXR1cy5jOjE5MyB3dC1zdGF0dXMuYzoyMjUKK21zZ2lkICIgICh1c2UgXCJnaXQgcm0gLS1jYWNoZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiAgKGhhesSxcmzEsWt0YW4gw6fEsWthcm1hayBpw6dpbiBcImdpdCBybSAtLWNhY2hlZCA8ZG9zeWE+Li4uXCIga3VsbGFuxLFuKSIKKworIzogd3Qtc3RhdHVzLmM6MTk3Cittc2dpZCAiICAodXNlIFwiZ2l0IGFkZCA8ZmlsZT4uLi5cIiB0byBtYXJrIHJlc29sdXRpb24pIgorbXNnc3RyICIgIChoYXrEsXJsxLHEn8SxIGJpdGlybWVrIGnDp2luIFwiZ2l0IGFkZCA8ZG9zeWE+Li4uXCIga3VsbGFuxLFuKSIKKworIzogd3Qtc3RhdHVzLmM6MTk5IHd0LXN0YXR1cy5jOjIwMworbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQvcm0gPGZpbGU+Li4uXCIgYXMgYXBwcm9wcmlhdGUgdG8gbWFyayByZXNvbHV0aW9uKSIKK21zZ3N0ciAiIgorIiAgKGhhesSxcmzEscSfxLEgYml0aXJtZWsgacOnaW4gdXlndW4gYmlyIGJpw6dpbWRlIFwiZ2l0IGFkZC9ybSA8ZG9zeWE+Li4uXCIgIgorImt1bGxhbsSxbikiCisKKyM6IHd0LXN0YXR1cy5jOjIwMQorbXNnaWQgIiAgKHVzZSBcImdpdCBybSA8ZmlsZT4uLi5cIiB0byBtYXJrIHJlc29sdXRpb24pIgorbXNnc3RyICIgIChoYXrEsXJsxLHEn8SxIGJpdGlybWVrIGnDp2luIFwiZ2l0IHJtIDxkb3N5YT4uLi5cIiBrdWxsYW7EsW4pIgorCisjOiB3dC1zdGF0dXMuYzoyMTEgd3Qtc3RhdHVzLmM6MTA3NAorbXNnaWQgIkNoYW5nZXMgdG8gYmUgY29tbWl0dGVkOiIKK21zZ3N0ciAiR8O2bmRlcmlsZWNlayBkZcSfacWfaWtsaWtsZXI6IgorCisjOiB3dC1zdGF0dXMuYzoyMzQgd3Qtc3RhdHVzLmM6MTA4MworbXNnaWQgIkNoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OiIKK21zZ3N0ciAiR8O2bmRlcmkgacOnaW4gaGF6xLFybGFubWFtxLHFnyBkZcSfacWfaWtsaWtsZXI6IgorCisjOiB3dC1zdGF0dXMuYzoyMzgKK21zZ2lkICIgICh1c2UgXCJnaXQgYWRkIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKK21zZ3N0ciAiIgorIiAgKGfDtm5kZXJpbGVjZWtsZXJpIGfDvG5jZWxsZW1layBpw6dpbiBcImdpdCBhZGQgPGRvc3lhPi4uLlwiIGt1bGxhbsSxbikiCisKKyM6IHd0LXN0YXR1cy5jOjI0MAorbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQvcm0gPGZpbGU+Li4uXCIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIgorbXNnc3RyICIiCisiICAoZ8O2bmRlcmlsZWNla2xlcmkgZ8O8bmNlbGxlbWVrIGnDp2luIFwiZ2l0IGFkZC9ybSA8ZG9zeWE+Li4uXCIga3VsbGFuxLFuKSIKKworIzogd3Qtc3RhdHVzLmM6MjQxCittc2dpZCAiIgorIiAgKHVzZSBcImdpdCByZXN0b3JlIDxmaWxlPi4uLlwiIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkiCittc2dzdHIgIiIKKyIgICjDp2FsxLHFn21hIGRpemluaW5kZWtpIGRlxJ9pxZ9pa2xpa2xlcmkgYXRtYWsgacOnaW4gXCJnaXQgcmVzdG9yZSA8ZG9zeWE+Li4uXCIgIgorImt1bGxhbsSxbikiCisKKyM6IHd0LXN0YXR1cy5jOjI0MworbXNnaWQgIiAgKGNvbW1pdCBvciBkaXNjYXJkIHRoZSB1bnRyYWNrZWQgb3IgbW9kaWZpZWQgY29udGVudCBpbiBzdWJtb2R1bGVzKSIKK21zZ3N0ciAiICAoYWx0bW9kw7xsbGVyZGVraSBpemxlbm1leWVuL2RlxJ9pxZ90aXJpbGVuIGnDp2VyacSfaSBnw7ZuZGVyIHZleWEgYXQpIgorCisjOiB3dC1zdGF0dXMuYzoyNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAodXNlIFwiZ2l0ICVzIDxmaWxlPi4uLlwiIHRvIGluY2x1ZGUgaW4gd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCittc2dzdHIgIiAgKGfDtm5kZXJpbGVjZWtsZXIgYXJhc8SxbmEga295bWFrIGnDp2luIFwiZ2l0ICVzIDxkb3N5YT4uLi5cIiBrdWxsYW7EsW4pIgorCisjOiB3dC1zdGF0dXMuYzoyNjgKK21zZ2lkICJib3RoIGRlbGV0ZWQ6IgorbXNnc3RyICJpa2ltaXogZGUgc2lsZGlrOiIKKworIzogd3Qtc3RhdHVzLmM6MjcwCittc2dpZCAiYWRkZWQgYnkgdXM6IgorbXNnc3RyICJiaXogZWtsZWRpazoiCisKKyM6IHd0LXN0YXR1cy5jOjI3MgorbXNnaWQgImRlbGV0ZWQgYnkgdGhlbToiCittc2dzdHIgIm9ubGFyIHNpbGRpOiIKKworIzogd3Qtc3RhdHVzLmM6Mjc0Cittc2dpZCAiYWRkZWQgYnkgdGhlbToiCittc2dzdHIgIm9ubGFyIGVrbGVkaToiCisKKyM6IHd0LXN0YXR1cy5jOjI3NgorbXNnaWQgImRlbGV0ZWQgYnkgdXM6IgorbXNnc3RyICJiaXogc2lsZGlrOiIKKworIzogd3Qtc3RhdHVzLmM6Mjc4Cittc2dpZCAiYm90aCBhZGRlZDoiCittc2dzdHIgImlraW1peiBkZSBla2xlZGlrOiIKKworIzogd3Qtc3RhdHVzLmM6MjgwCittc2dpZCAiYm90aCBtb2RpZmllZDoiCittc2dzdHIgImlraW1peiBkZSBkZcSfacWfdGlyZGlrOiIKKworIzogd3Qtc3RhdHVzLmM6MjkwCittc2dpZCAibmV3IGZpbGU6IgorbXNnc3RyICJ5ZW5pIGRvc3lhOiIKKworIzogd3Qtc3RhdHVzLmM6MjkyCittc2dpZCAiY29waWVkOiIKK21zZ3N0ciAia29weWFsYW5kxLE6IgorCisjOiB3dC1zdGF0dXMuYzoyOTQKK21zZ2lkICJkZWxldGVkOiIKK21zZ3N0ciAic2lsaW5kaToiCisKKyM6IHd0LXN0YXR1cy5jOjI5NgorbXNnaWQgIm1vZGlmaWVkOiIKK21zZ3N0ciAiZGXEn2nFn3RpcmlsZGk6IgorCisjOiB3dC1zdGF0dXMuYzoyOTgKK21zZ2lkICJyZW5hbWVkOiIKK21zZ3N0ciAieWVuaWRlbiBhZGxhbmTEsXLEsWxkxLE6IgorCisjOiB3dC1zdGF0dXMuYzozMDAKK21zZ2lkICJ0eXBlY2hhbmdlOiIKK21zZ3N0ciAidMO8csO8IGRlxJ9pxZ90aXJpbGRpOiIKKworIzogd3Qtc3RhdHVzLmM6MzAyCittc2dpZCAidW5rbm93bjoiCittc2dzdHIgImJpbGlubWl5b3IiCisKKyM6IHd0LXN0YXR1cy5jOjMwNAorbXNnaWQgInVubWVyZ2VkOiIKK21zZ3N0ciAiYmlybGXFn3RpcmlsbWVkaToiCisKKyM6IHd0LXN0YXR1cy5jOjM4NAorbXNnaWQgIm5ldyBjb21taXRzLCAiCittc2dzdHIgInllbmkgZ8O2bmRlcmlsZXIsICIKKworIzogd3Qtc3RhdHVzLmM6Mzg2Cittc2dpZCAibW9kaWZpZWQgY29udGVudCwgIgorbXNnc3RyICJkZcSfacWfdGlyaWxlbiBpw6dlcmlrLCAiCisKKyM6IHd0LXN0YXR1cy5jOjM4OAorbXNnaWQgInVudHJhY2tlZCBjb250ZW50LCAiCittc2dzdHIgIml6bGVubWV5ZW4gacOnZXJpaywgIgorCisjOiB3dC1zdGF0dXMuYzo5MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91ciBzdGFzaCBjdXJyZW50bHkgaGFzICVkIGVudHJ5IgorbXNnaWRfcGx1cmFsICJZb3VyIHN0YXNoIGN1cnJlbnRseSBoYXMgJWQgZW50cmllcyIKK21zZ3N0clswXSAiWnVsYW7EsXpkYSDFn3UgYW5kYSAlZCBnaXJkaSB2YXIiCittc2dzdHJbMV0gIlp1bGFuxLF6ZGEgxZ91IGFuZGEgJWQgZ2lyZGkgdmFyIgorCisjOiB3dC1zdGF0dXMuYzo5MzgKK21zZ2lkICJTdWJtb2R1bGVzIGNoYW5nZWQgYnV0IG5vdCB1cGRhdGVkOiIKK21zZ3N0ciAiRGXEn2nFn3RpcmlsZW4gYW5jYWsgZ8O8bmNlbGxlbm1leWVuIGFsdG1vZMO8bGxlcjoiCisKKyM6IHd0LXN0YXR1cy5jOjk0MAorbXNnaWQgIlN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCittc2dzdHIgIkfDtm5kZXJpbGVjZWsgYWx0bW9kw7xsIGRlxJ9pxZ9pa2xpa2xlcmk6IgorCisjOiB3dC1zdGF0dXMuYzoxMDIyCittc2dpZCAiIgorIkRvIG5vdCBtb2RpZnkgb3IgcmVtb3ZlIHRoZSBsaW5lIGFib3ZlLlxuIgorIkV2ZXJ5dGhpbmcgYmVsb3cgaXQgd2lsbCBiZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorIll1a2FyxLFkYWtpIHNhdMSxcsSxIGRlxJ9pxZ90aXJtZXlpbiB2ZXlhIGthbGTEsXJtYXnEsW4uXG4iCisiQWx0xLFuZGFraSBoZXIgxZ9leSB5b2sgc2F5xLFsYWNha3TEsXIuIgorCisjOiB3dC1zdGF0dXMuYzoxMTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBjb21wdXRlIHRoZSBicmFuY2ggYWhlYWQvYmVoaW5kIHZhbHVlcy5cbiIKKyJZb3UgY2FuIHVzZSAnLS1uby1haGVhZC1iZWhpbmQnIHRvIGF2b2lkIHRoaXMuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJEYWwgw7Zuw7xuZGUvYXJrYXPEsW5kYSBkZcSfZXJsZXJpbmkgaGVzYXBsYW1hICUuMmYgc2FuaXllIHPDvHJkw7wuXG4iCisiQnVuZGFuIGthw6fEsW5tYWsgacOnaW4gLS1uby1haGVhZC1iZWhpbmQga3VsbGFuYWJpbGlyc2luaXouXG4iCisKKyM6IHd0LXN0YXR1cy5jOjExNDQKK21zZ2lkICJZb3UgaGF2ZSB1bm1lcmdlZCBwYXRocy4iCittc2dzdHIgIkJpcmxlxZ90aXJpbG1lbWnFnyB5b2xsYXLEsW7EsXogdmFyLiIKKworIzogd3Qtc3RhdHVzLmM6MTE0NworbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjb21taXRcIikiCittc2dzdHIgIiAgKMOnYWvEscWfbWFsYXLEsSBvbmFyIHZlIFwiZ2l0IGNvbW1pdFwiIMOnYWzEscWfdMSxcikiCisKKyM6IHd0LXN0YXR1cy5jOjExNDkKK21zZ2lkICIgICh1c2UgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIHRvIGFib3J0IHRoZSBtZXJnZSkiCittc2dzdHIgIiAgKGJpcmxlxZ90aXJtZXlpIGlwdGFsIGV0bWVrIGnDp2luIFwiZ2l0IG1lcmdlIC0tYWJvcnRcIiBrdWxsYW7EsW4pIgorCisjOiB3dC1zdGF0dXMuYzoxMTUzCittc2dpZCAiQWxsIGNvbmZsaWN0cyBmaXhlZCBidXQgeW91IGFyZSBzdGlsbCBtZXJnaW5nLiIKK21zZ3N0ciAiVMO8bSDDp2FrxLHFn21hbGFyIG9uYXLEsWxkxLEgYW5jYWsgc2l6IGjDomzDoiBiaXJsZcWfdGlyaXlvcnN1bnV6LiIKKworIzogd3Qtc3RhdHVzLmM6MTE1NgorbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXRcIiB0byBjb25jbHVkZSBtZXJnZSkiCittc2dzdHIgIiAgKGJpcmxlxZ90aXJtZXlpIHNvbnXDp2xhbmTEsXJtYWsgacOnaW4gXCJnaXQgY29tbWl0XCIga3VsbGFuxLFuKSIKKworIzogd3Qtc3RhdHVzLmM6MTE2NQorbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbiBhbSBzZXNzaW9uLiIKK21zZ3N0ciAiQmlyICdhbScgb3R1cnVtdW51biB0YW0gb3J0YXPEsW5kYXPEsW7EsXouIgorCisjOiB3dC1zdGF0dXMuYzoxMTY4Cittc2dpZCAiVGhlIGN1cnJlbnQgcGF0Y2ggaXMgZW1wdHkuIgorbXNnc3RyICJNZXZjdXQgeWFtYSBib8WfLiIKKworIzogd3Qtc3RhdHVzLmM6MTE3MgorbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHRoZW4gcnVuIFwiZ2l0IGFtIC0tY29udGludWVcIikiCittc2dzdHIgIiAgKMOnYWvEscWfbWFsYXLEsSBvbmFyIHZlIGFyZMSxbmRhbiBcImdpdCBhbSAtLWNvbnRpbnVlXCIgw6dhbMSxxZ90xLFyKSIKKworIzogd3Qtc3RhdHVzLmM6MTE3NAorbXNnaWQgIiAgKHVzZSBcImdpdCBhbSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgorbXNnc3RyICIgIChidSB5YW1hecSxIGF0bGFtYWsgacOnaW4gXCJnaXQgYW0gLS1za2lwXCIga3VsbGFuxLFuIgorCisjOiB3dC1zdGF0dXMuYzoxMTc2Cittc2dpZCAiICAodXNlIFwiZ2l0IGFtIC0tYWJvcnRcIiB0byByZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2gpIgorbXNnc3RyICIgIChpbGsgZGFsxLEgZXNraSBkdXJ1bXVuYSBnZXRpcm1layBpw6dpbiBcImdpdCBhbSAtLWFib3J0XCIga3VsbGFuxLFuKSIKKworIzogd3Qtc3RhdHVzLmM6MTMwOQorbXNnaWQgImdpdC1yZWJhc2UtdG9kbyBpcyBtaXNzaW5nLiIKK21zZ3N0ciAiZ2l0LXJlYmFzZS10b2RvIGVrc2lrIgorCisjOiB3dC1zdGF0dXMuYzoxMzExCittc2dpZCAiTm8gY29tbWFuZHMgZG9uZS4iCittc2dzdHIgIlllcmluZSBnZXRpcmlsZW4gYmlyIGtvbXV0IHlvay4iCisKKyM6IHd0LXN0YXR1cy5jOjEzMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiTGFzdCBjb21tYW5kIGRvbmUgKCVkIGNvbW1hbmQgZG9uZSk6IgorbXNnaWRfcGx1cmFsICJMYXN0IGNvbW1hbmRzIGRvbmUgKCVkIGNvbW1hbmRzIGRvbmUpOiIKK21zZ3N0clswXSAiU29uIHllcmluZSBnZXRpcmlsZW4ga29tdXQgKHRvcGxhbWRhICVkIGtvbXV0KToiCittc2dzdHJbMV0gIlNvbiB5ZXJpbmUgZ2V0aXJpbGVuIGtvbXV0bGFyICh0b3BsYW1kYSAlZCBrb211dCk6IgorCisjOiB3dC1zdGF0dXMuYzoxMzI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgKHNlZSBtb3JlIGluIGZpbGUgJXMpIgorbXNnc3RyICIgIChlayBiaWxnaSBpw6dpbiAlcyBkb3N5YXPEsW5hIGJha8SxbikiCisKKyM6IHd0LXN0YXR1cy5jOjEzMzAKK21zZ2lkICJObyBjb21tYW5kcyByZW1haW5pbmcuIgorbXNnc3RyICJLYWxhbiBrb211dCB5b2suIgorCisjOiB3dC1zdGF0dXMuYzoxMzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIk5leHQgY29tbWFuZCB0byBkbyAoJWQgcmVtYWluaW5nIGNvbW1hbmQpOiIKK21zZ2lkX3BsdXJhbCAiTmV4dCBjb21tYW5kcyB0byBkbyAoJWQgcmVtYWluaW5nIGNvbW1hbmRzKToiCittc2dzdHJbMF0gIlPEsXJhZGFraSB5ZXJpbmUgZ2V0aXJpbGVjZWsga29tdXQgKCVkIGthbGFuIGtvbXV0KToiCittc2dzdHJbMV0gIlPEsXJhZGFraSB5ZXJpbmUgZ2V0aXJpbGVjZWsga29tdXRsYXIgKCVkIGthbGFuIGtvbXV0KToiCisKKyM6IHd0LXN0YXR1cy5jOjEzNDEKK21zZ2lkICIgICh1c2UgXCJnaXQgcmViYXNlIC0tZWRpdC10b2RvXCIgdG8gdmlldyBhbmQgZWRpdCkiCittc2dzdHIgIiAgKGfDtnLDvG50w7xsZW1lIHZlIGTDvHplbmxlbWUgacOnaW4gXCJnaXQgcmViYXNlIC0tZWRpdC10b2RvXCIga3VsbGFuxLFuKSIKKworIzogd3Qtc3RhdHVzLmM6MTM1MworIywgYy1mb3JtYXQKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKK21zZ3N0ciAixZ51IGFuZGEgJyVzJyBkYWzEsW7EsSAnJXMnIMO8emVyaW5lIHllbmlkZW4gdGVtZWxsZW5kaXJpeW9yc3VudXouIgorCisjOiB3dC1zdGF0dXMuYzoxMzU4Cittc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmViYXNpbmcuIgorbXNnc3RyICLFnnUgYW5kYSB5ZW5pZGVuIHRlbWVsbGVuZGlybWUgeWFwbWFrdGFzxLFuxLF6LiIKKworIzogd3Qtc3RhdHVzLmM6MTM3MQorbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHRoZW4gcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgorbXNnc3RyICIgICjDp2FrxLHFn21hbGFyxLEgw6fDtnrDvG4gdmUgYXJkxLFuZGFuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIgw6dhbMSxxZ90xLFyKSIKKworIzogd3Qtc3RhdHVzLmM6MTM3MworbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKK21zZ3N0ciAiICAoYnUgeWFtYXnEsSBhdGxhbWFrIGnDp2luIFwiZ2l0IHJlYmFzZSAtLXNraXBcIiBrdWxsYW7EsW4pIgorCisjOiB3dC1zdGF0dXMuYzoxMzc1Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWFib3J0XCIgdG8gY2hlY2sgb3V0IHRoZSBvcmlnaW5hbCBicmFuY2gpIgorbXNnc3RyICIgIChpbGsgZGFsxLEgw6fEsWvEscWfIHlhcG1hayBpw6dpbiBcImdpdCByZWJhc2UgLS1hYm9ydFwiIGt1bGxhbsSxbikiCisKKyM6IHd0LXN0YXR1cy5jOjEzODIKK21zZ2lkICIgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCittc2dzdHIgIiAgKHTDvG0gw6dha8SxxZ9tYWxhciBvbmFyxLFsZMSxOiBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiIMOnYWzEscWfdMSxcikiCisKKyM6IHd0LXN0YXR1cy5jOjEzODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBhcmUgY3VycmVudGx5IHNwbGl0dGluZyBhIGNvbW1pdCB3aGlsZSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKK21zZ3N0ciAiIgorIsWedSBhbmRhICclcycgZGFsxLFuxLEgJyVzJyDDvHplcmluZSB5ZW5pZGVuIHRlbWVsbGVuZGlyaXJrZW4gYmlyIGfDtm5kZXJpeWkgIgorInBhcsOnYWxhcmEgYsO2bMO8eW9yc3VudXouIgorCisjOiB3dC1zdGF0dXMuYzoxMzkxCittc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgc3BsaXR0aW5nIGEgY29tbWl0IGR1cmluZyBhIHJlYmFzZS4iCittc2dzdHIgIiIKKyLFnnUgYW5kYSBiaXIgeWVuaWRlbiB0ZW1lbGxlbmRpcm1lIHPEsXJhc8SxbmRhIGJpciBnw7ZuZGVyaXlpIHBhcsOnYWxhcmEgIgorImLDtmzDvHlvcnN1bnV6LiIKKworIzogd3Qtc3RhdHVzLmM6MTM5NAorbXNnaWQgIiAgKE9uY2UgeW91ciB3b3JraW5nIGRpcmVjdG9yeSBpcyBjbGVhbiwgcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgorbXNnc3RyICIiCisiICAow4dhbMSxxZ9tYSBkaXppbmluaXogdGVtaXpsZW5kacSfaW5kZSBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiIMOnYWzEscWfdMSxcikiCisKKyM6IHd0LXN0YXR1cy5jOjEzOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgZWRpdGluZyBhIGNvbW1pdCB3aGlsZSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKK21zZ3N0ciAiIgorIsWedSBhbmRhICclcycgZGFsxLFuxLEgJyVzJyDDvHplcmluZSB5ZW5pZGVuIHRlbWVsbGVuZGlyaXJrZW4gYmlyIGfDtm5kZXJpeWkgIgorImTDvHplbmxpeW9yc3VudXouIgorCisjOiB3dC1zdGF0dXMuYzoxNDAzCittc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgZWRpdGluZyBhIGNvbW1pdCBkdXJpbmcgYSByZWJhc2UuIgorbXNnc3RyICIiCisixZ51IGFuZGEgYmlyIHllbmlkZW4gdGVtZWxsZW5kaXJtZSBzxLFyYXPEsW5kYSBiaXIgZ8O2bmRlcml5aSBkw7x6ZW5saXlvcnN1bnV6LiIKKworIzogd3Qtc3RhdHVzLmM6MTQwNgorbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXQgLS1hbWVuZFwiIHRvIGFtZW5kIHRoZSBjdXJyZW50IGNvbW1pdCkiCittc2dzdHIgIiAgKGdlw6dlcmxpIGfDtm5kZXJpeWkgZGXEn2nFn3Rpcm1layBpw6dpbiBcImdpdCBjb21taXQgLS1hbWVuZFwiIGt1bGxhbsSxbikiCisKKyM6IHd0LXN0YXR1cy5jOjE0MDgKK21zZ2lkICIiCisiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIgb25jZSB5b3UgYXJlIHNhdGlzZmllZCB3aXRoIHlvdXIgY2hhbmdlcykiCittc2dzdHIgIiIKKyIgIChkZcSfacWfaWtsaWtsZXJpbml6ZGVuIG1lbW51bnNhbsSxeiBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiIGt1bGxhbsSxbikiCisKKyM6IHd0LXN0YXR1cy5jOjE0MTkKK21zZ2lkICJDaGVycnktcGljayBjdXJyZW50bHkgaW4gcHJvZ3Jlc3MuIgorbXNnc3RyICJTZcOnLWFsIMWfdSBhbmRhIHPDvHJtZWt0ZS4iCisKKyM6IHd0LXN0YXR1cy5jOjE0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgY2hlcnJ5LXBpY2tpbmcgY29tbWl0ICVzLiIKK21zZ3N0ciAixZ51IGFuZGEgJXMgZ8O2bmRlcmlzaW5pIHNlw6ctYWwgeWFwxLF5b3JzdW51ei4iCisKKyM6IHd0LXN0YXR1cy5jOjE0MjkKK21zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiKSIKK21zZ3N0ciAiICAow6dha8SxxZ9tYWxhcsSxIG9uYXIgdmUgXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIMOnYWzEscWfdMSxcikiCisKKyM6IHd0LXN0YXR1cy5jOjE0MzIKK21zZ2lkICIgIChydW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIHRvIGNvbnRpbnVlKSIKK21zZ3N0ciAiICAoc8O8cmTDvHJtZWsgacOnaW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIMOnYWzEscWfdMSxcikiCisKKyM6IHd0LXN0YXR1cy5jOjE0MzUKK21zZ2lkICIgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiKSIKK21zZ3N0ciAiICAodMO8bSDDp2FrxLHFn21hbGFyIG9uYXLEsWxkxLE6IFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiDDp2FsxLHFn3TEsXIpIgorCisjOiB3dC1zdGF0dXMuYzoxNDM3Cittc2dpZCAiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCittc2dzdHIgIiAgKGJ1IHlhbWF5xLEgYXRsYW1hayBpw6dpbiBcImdpdCBjaGVycnktcGljayAtLXNraXBcIiBrdWxsYW7EsW4pIgorCisjOiB3dC1zdGF0dXMuYzoxNDM5Cittc2dpZCAiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnRcIiB0byBjYW5jZWwgdGhlIGNoZXJyeS1waWNrIG9wZXJhdGlvbikiCittc2dzdHIgIiAgKHNlw6ctYWwgacWfbGVtaW5pIGlwdGFsIGnDp2luIFwiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnRcIiBrdWxsYW7EsW4pIgorCisjOiB3dC1zdGF0dXMuYzoxNDQ5Cittc2dpZCAiUmV2ZXJ0IGN1cnJlbnRseSBpbiBwcm9ncmVzcy4iCittc2dzdHIgIkdlcml5ZSBhbCDFn3UgYW5kYSBzw7xybWVrdGUuIgorCisjOiB3dC1zdGF0dXMuYzoxNDUyCisjLCBjLWZvcm1hdAorbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJldmVydGluZyBjb21taXQgJXMuIgorbXNnc3RyICLFnnUgYW5kYSAlcyBnw7ZuZGVyaXNpbmkgZ2VyaSBhbMSxeW9yc3VudXouIgorCisjOiB3dC1zdGF0dXMuYzoxNDU4Cittc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgorbXNnc3RyICIgICjDp2FrxLHFn21hbGFyxLEgb25hciB2ZSBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiIMOnYWzEscWfdMSxcikiCisKKyM6IHd0LXN0YXR1cy5jOjE0NjEKK21zZ2lkICIgIChydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIiB0byBjb250aW51ZSkiCittc2dzdHIgIiAgKHPDvHJkw7xybWVrIGnDp2luIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIgw6dhbMSxxZ90xLFyKSIKKworIzogd3Qtc3RhdHVzLmM6MTQ2NAorbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiKSIKK21zZ3N0ciAiICAodMO8bSDDp2FrxLHFn21hbGFyIG9uYXLEsWxkxLE6IFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIgw6dhbMSxxZ90xLFyKSIKKworIzogd3Qtc3RhdHVzLmM6MTQ2NgorbXNnaWQgIiAgKHVzZSBcImdpdCByZXZlcnQgLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKK21zZ3N0ciAiICAoYnUgeWFtYXnEsSBhdGxhbWFrIGnDp2luIFwiZ2l0IHJldmVydCAtLXNraXBcIiBrdWxsYW7EsW4pIgorCisjOiB3dC1zdGF0dXMuYzoxNDY4Cittc2dpZCAiICAodXNlIFwiZ2l0IHJldmVydCAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSByZXZlcnQgb3BlcmF0aW9uKSIKK21zZ3N0ciAiICAoZ2VyaSBhbCBpxZ9sZW1pbmkgaXB0YWwgacOnaW4gXCJnaXQgcmV2ZXJ0IC0tYWJvcnRcIiBrdWxsYW7EsW4pIgorCisjOiB3dC1zdGF0dXMuYzoxNDc4CisjLCBjLWZvcm1hdAorbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGJpc2VjdGluZywgc3RhcnRlZCBmcm9tIGJyYW5jaCAnJXMnLiIKK21zZ3N0ciAixZ51IGFuZGEgaWtpbGkgYXJhbWEgeWFwxLF5b3JzdW51eiwgJyVzJyBkYWzEsW5kYW4gYmHFn2xhbmTEsS4iCisKKyM6IHd0LXN0YXR1cy5jOjE0ODIKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcuIgorbXNnc3RyICLFnnUgYW5kYSBpa2lsaSBhcmFtYSB5YXDEsXlvcnN1bnV6IgorCisjOiB3dC1zdGF0dXMuYzoxNDg1Cittc2dpZCAiICAodXNlIFwiZ2l0IGJpc2VjdCByZXNldFwiIHRvIGdldCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBicmFuY2gpIgorbXNnc3RyICIgIChpbGsgZGFsYSBkw7ZubWVrIGnDp2luIFwiZ2l0IGJpc2VjdCByZXNldFwiIGt1bGxhbsSxbikiCisKKyM6IHd0LXN0YXR1cy5jOjE2OTQKK21zZ2lkICJPbiBicmFuY2ggIgorbXNnc3RyICLFnnUgZGFsZGE6ICIKKworIzogd3Qtc3RhdHVzLmM6MTcwMQorbXNnaWQgImludGVyYWN0aXZlIHJlYmFzZSBpbiBwcm9ncmVzczsgb250byAiCittc2dzdHIgIsWfdW51biDDvHplcmluZSBldGtpbGXFn2ltbGkgeWVuaWRlbiB0ZW1lbGxlbmRpcm1lIHPDvHJtZWt0ZTogIgorCisjOiB3dC1zdGF0dXMuYzoxNzAzCittc2dpZCAicmViYXNlIGluIHByb2dyZXNzOyBvbnRvICIKK21zZ3N0ciAixZ91bnVuIMO8emVyaW5lIHllbmlkZW4gdGVtZWxsZW5kaXJtZSBzw7xybWVrdGU6ICIKKworIzogd3Qtc3RhdHVzLmM6MTcxMworbXNnaWQgIk5vdCBjdXJyZW50bHkgb24gYW55IGJyYW5jaC4iCittc2dzdHIgIsWedSBhbmRhIGJpciBkYWwgw7x6ZXJpbmRlIGRlxJ9pbC4iCisKKyM6IHd0LXN0YXR1cy5jOjE3MzAKK21zZ2lkICJJbml0aWFsIGNvbW1pdCIKK21zZ3N0ciAixLBsayBnw7ZuZGVyaSIKKworIzogd3Qtc3RhdHVzLmM6MTczMQorbXNnaWQgIk5vIGNvbW1pdHMgeWV0IgorbXNnc3RyICJIZW7DvHogYmlyIGfDtm5kZXJpIHlvayIKKworIzogd3Qtc3RhdHVzLmM6MTc0NQorbXNnaWQgIlVudHJhY2tlZCBmaWxlcyIKK21zZ3N0ciAixLB6bGVubWV5ZW4gZG9zeWFsYXIiCisKKyM6IHd0LXN0YXR1cy5jOjE3NDcKK21zZ2lkICJJZ25vcmVkIGZpbGVzIgorbXNnc3RyICJZb2sgc2F5xLFsYW4gZG9zeWFsYXIiCisKKyM6IHd0LXN0YXR1cy5jOjE3NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGVudW1lcmF0ZSB1bnRyYWNrZWQgZmlsZXMuICdzdGF0dXMgLXVubydcbiIKKyJtYXkgc3BlZWQgaXQgdXAsIGJ1dCB5b3UgaGF2ZSB0byBiZSBjYXJlZnVsIG5vdCB0byBmb3JnZXQgdG8gYWRkXG4iCisibmV3IGZpbGVzIHlvdXJzZWxmIChzZWUgJ2dpdCBoZWxwIHN0YXR1cycpLiIKK21zZ3N0ciAiIgorIsSwemxlbm1leWVuIGRvc3lhbGFyxLFuIHNhecSxcCBkw7Zrw7xsbWVzaSAlLjJmIHNhbml5ZSBzw7xyZMO8LiAnc3RhdHVzIC11bm8nIGJ1bnVcbiIKKyJoxLF6bGFuZMSxcmFiaWxpciwgYW5jYWsgeWVuaSBkb3N5YWxhcsSxIGtlbmRpbml6aW4gZWtsZW1leWkgdW51dG1hbWFzxLFcbiIKKyJrb251c3VuZGEgZGlra2F0bGkgb2xtYWzEsXPEsW7EsXogKGVrIGJpbGdpIGnDp2luICdnaXQgaGVscCBzdGF0dXMnKS4iCisKKyM6IHd0LXN0YXR1cy5jOjE3NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW50cmFja2VkIGZpbGVzIG5vdCBsaXN0ZWQlcyIKK21zZ3N0ciAixLB6bGVubWV5ZW4gZG9zeWFsYXIgbGlzdGVsZW5taXlvciVzIgorCisjOiB3dC1zdGF0dXMuYzoxNzU5Cittc2dpZCAiICh1c2UgLXUgb3B0aW9uIHRvIHNob3cgdW50cmFja2VkIGZpbGVzKSIKK21zZ3N0ciAiIChpemxlbm1leWVuIGRvc3lhbGFyxLEgZ8O2c3Rlcm1layBpw6dpbiAtdSBzZcOnZW5lxJ9pbmkga3VsbGFuxLFuKSIKKworIzogd3Qtc3RhdHVzLmM6MTc2NQorbXNnaWQgIk5vIGNoYW5nZXMiCittc2dzdHIgIkRlxJ9pxZ9pa2xpayB5b2siCisKKyM6IHd0LXN0YXR1cy5jOjE3NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXQgKHVzZSBcImdpdCBhZGRcIiBhbmQvb3IgXCJnaXQgY29tbWl0IC1hXCIpXG4iCittc2dzdHIgIiIKKyJHw7ZuZGVyaXllIGVrbGVuZW4gZGXEn2nFn2lrbGlrIHlvayAoXCJnaXQgYWRkXCIgdmUvdmV5YSBcImdpdCBjb21taXQgLWFcIiAiCisia3VsbGFuxLFuKVxuIgorCisjOiB3dC1zdGF0dXMuYzoxNzczCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGNoYW5nZXMgYWRkZWQgdG8gY29tbWl0XG4iCittc2dzdHIgIkfDtm5kZXJpeWUgZWtsZW5lbiBkZcSfacWfaWtsaWsgeW9rXG4iCisKKyM6IHd0LXN0YXR1cy5jOjE3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm5vdGhpbmcgYWRkZWQgdG8gY29tbWl0IGJ1dCB1bnRyYWNrZWQgZmlsZXMgcHJlc2VudCAodXNlIFwiZ2l0IGFkZFwiIHRvICIKKyJ0cmFjaylcbiIKK21zZ3N0ciAiIgorImfDtm5kZXJpeWUgYmlyIMWfZXkgZWtsZW5tZWRpIGFuY2FrIGl6bGVubWV5ZW4gZG9zeWFsYXIgdmFyIChpemxlbWVrIGnDp2luXG4iCisiXCJnaXQgYWRkXCIga3VsbGFuxLFuKVxuIgorCisjOiB3dC1zdGF0dXMuYzoxNzc5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGhpbmcgYWRkZWQgdG8gY29tbWl0IGJ1dCB1bnRyYWNrZWQgZmlsZXMgcHJlc2VudFxuIgorbXNnc3RyICJnw7ZuZGVyaXllIGJpciDFn2V5IGVrbGVubWVkaSBhbmNhayBpemxlbm1leWVuIGRvc3lhbGFyIHZhclxuIgorCisjOiB3dC1zdGF0dXMuYzoxNzgyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0IChjcmVhdGUvY29weSBmaWxlcyBhbmQgdXNlIFwiZ2l0IGFkZFwiIHRvIHRyYWNrKVxuIgorbXNnc3RyICIiCisiR8O2bmRlcmlsZWNlayBiaXIgxZ9leSB5b2sgKGRvc3lhbGFyIG9sdcWfdHVydW4va29weWFsYXnEsW4gdmUgaXpsZW1layBpw6dpbiAiCisiXCJnaXQgYWRkXCIga3VsbGFuxLFuKVxuIgorCisjOiB3dC1zdGF0dXMuYzoxNzg1IHd0LXN0YXR1cy5jOjE3OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aGluZyB0byBjb21taXRcbiIKK21zZ3N0ciAiR8O2bmRlcmlsZWNlayBiaXIgxZ9leSB5b2tcbiIKKworIzogd3Qtc3RhdHVzLmM6MTc4OAorIywgYy1mb3JtYXQKK21zZ2lkICJub3RoaW5nIHRvIGNvbW1pdCAodXNlIC11IHRvIHNob3cgdW50cmFja2VkIGZpbGVzKVxuIgorbXNnc3RyICIiCisiR8O2bmRlcmlsZWNlayBiaXIgxZ9leSB5b2sgKGl6bGVubWV5ZW4gZG9zeWFsYXLEsSBnw7ZzdGVybWVrIGnDp2luIC11IGt1bGxhbsSxbilcbiIKKworIzogd3Qtc3RhdHVzLmM6MTc5MgorIywgYy1mb3JtYXQKK21zZ2lkICJub3RoaW5nIHRvIGNvbW1pdCwgd29ya2luZyB0cmVlIGNsZWFuXG4iCittc2dzdHIgIkfDtm5kZXJpbGVjZWsgYmlyIMWfZXkgeW9rLCDDp2FsxLHFn21hIGHEn2FjxLEgdGVtaXpcbiIKKworIzogd3Qtc3RhdHVzLmM6MTkwNQorbXNnaWQgIk5vIGNvbW1pdHMgeWV0IG9uICIKK21zZ3N0ciAixZ51cmFkYSBoZW7DvHogYmlyIGfDtm5kZXJpIHlvazogIgorCisjOiB3dC1zdGF0dXMuYzoxOTA5Cittc2dpZCAiSEVBRCAobm8gYnJhbmNoKSIKK21zZ3N0ciAiSEVBRCAoZGFsIHlvaykiCisKKyM6IHd0LXN0YXR1cy5jOjE5NDAKK21zZ2lkICJkaWZmZXJlbnQiCittc2dzdHIgImRlxJ9pxZ9payIKKworIzogd3Qtc3RhdHVzLmM6MTk0MiB3dC1zdGF0dXMuYzoxOTUwCittc2dpZCAiYmVoaW5kICIKK21zZ3N0ciAixZ91bnVuIGFya2FzxLFuZGE6ICIKKworIzogd3Qtc3RhdHVzLmM6MTk0NSB3dC1zdGF0dXMuYzoxOTQ4Cittc2dpZCAiYWhlYWQgIgorbXNnc3RyICLFn3VudW4gw7Zuw7xuZGU6ICIKKworIy4gVFJBTlNMQVRPUlM6IHRoZSBhY3Rpb24gaXMgZS5nLiAicHVsbCB3aXRoIHJlYmFzZSIKKyM6IHd0LXN0YXR1cy5jOjI0NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90ICVzOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiJXMgeWFwxLFsYW3EsXlvcjogSGF6xLFybGFubWFtxLHFnyBkZcSfacWfaWtsaWtsZXJpbml6IHZhci4iCisKKyM6IHd0LXN0YXR1cy5jOjI0NzYKK21zZ2lkICJhZGRpdGlvbmFsbHksIHlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCittc2dzdHIgIkVrIG9sYXJhaywgaW5kZWtzaW5peiBnw7ZuZGVyaWxtZW1pxZ8gZGXEn2nFn2lrbGlrbGVyIGnDp2VyaXlvci4iCisKKyM6IHd0LXN0YXR1cy5jOjI0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90ICVzOiBZb3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgorbXNnc3RyICIlcyB5YXDEsWxhbcSxeW9yOiDEsG5kZWtzaW5peiBnw7ZuZGVyaWxtZW1pxZ8gZGXEn2nFn2lrbGlrbGVyIGnDp2VyaXlvci4iCisKKyM6IGNvbXBhdC9wcmVjb21wb3NlX3V0ZjguYzo1OCBidWlsdGluL2Nsb25lLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgJyVzJyIKK21zZ3N0ciAiJyVzJyBiYcSfbGFudMSxc8SxIGtlc2lsZW1lZGkiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MjYKK21zZ2lkICJnaXQgYWRkIFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKK21zZ3N0ciAiZ2l0IGFkZCBbPHNlw6dlbmVrbGVyPl0gWy0tXSA8eW9sLWJscnTDpz4uLi4iCisKKyM6IGJ1aWx0aW4vYWRkLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkaWZmIHN0YXR1cyAlYyIKK21zZ3N0ciAiYmVrbGVubWVkaWsgZGlmZiBkdXJ1bXUgJWMiCisKKyM6IGJ1aWx0aW4vYWRkLmM6OTMgYnVpbHRpbi9jb21taXQuYzoyODgKK21zZ2lkICJ1cGRhdGluZyBmaWxlcyBmYWlsZWQiCittc2dzdHIgImRvc3lhbGFyxLEgZ8O8bmNlbGxlbWUgYmHFn2FyxLFzxLF6IgorCisjOiBidWlsdGluL2FkZC5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmUgJyVzJ1xuIgorbXNnc3RyICJrYWxkxLFyOiAnJXMnXG4iCisKKyM6IGJ1aWx0aW4vYWRkLmM6MTc4Cittc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZWZyZXNoaW5nIHRoZSBpbmRleDoiCittc2dzdHIgIsSwbmRla3NpIHllbmlsZWRpa3RlbiBzb25yYSBoYXrEsXJsYW5tYW3EscWfIGRlxJ9pxZ9pa2xpa2xlcjoiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MjY2IGJ1aWx0aW4vcmV2LXBhcnNlLmM6ODk5Cittc2dpZCAiQ291bGQgbm90IHJlYWQgdGhlIGluZGV4IgorbXNnc3RyICLEsG5kZWtzIG9rdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vYWRkLmM6Mjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmcuIgorbXNnc3RyICInJXMnIHlhesSxbSBpw6dpbiBhw6fEsWxhbWFkxLEuIgorCisjOiBidWlsdGluL2FkZC5jOjI4MQorbXNnaWQgIkNvdWxkIG5vdCB3cml0ZSBwYXRjaCIKK21zZ3N0ciAiWWFtYSB5YXrEsWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg0Cittc2dpZCAiZWRpdGluZyBwYXRjaCBmYWlsZWQiCittc2dzdHIgInlhbWF5xLEgZMO8emVubGVtZSBiYcWfYXLEsXPEsXoiCisKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBzdGF0ICclcyciCittc2dzdHIgIiclcycgZG9zeWEgYmlsZ2lsZXJpIGFsxLFuYW1hZMSxIgorCisjOiBidWlsdGluL2FkZC5jOjI4OQorbXNnaWQgIkVtcHR5IHBhdGNoLiBBYm9ydGVkLiIKK21zZ3N0ciAiQm/FnyB5YW1hLiDEsHB0YWwgZWRpbGRpLiIKKworIzogYnVpbHRpbi9hZGQuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGFwcGx5ICclcyciCittc2dzdHIgIiclcycgdXlndWxhbmFtYWTEsSIKKworIzogYnVpbHRpbi9hZGQuYzozMDIKK21zZ2lkICJUaGUgZm9sbG93aW5nIHBhdGhzIGFyZSBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCittc2dzdHIgIiIKKyJBxZ9hxJ/EsWRha2kgeW9sbGFyIHNpemluIC5naXRpZ25vcmUgZG9zeWFsYXLEsW7EsXrEsW4gYmlyaSB0YXJhZsSxbmRhbiB5b2sgIgorInNhecSxbMSxeW9yOlxuIgorCisjOiBidWlsdGluL2FkZC5jOjMyMiBidWlsdGluL2NsZWFuLmM6OTEwIGJ1aWx0aW4vZmV0Y2guYzoxNjMgYnVpbHRpbi9tdi5jOjEyNAorIzogYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1NiBidWlsdGluL3B1bGwuYzoyMDMgYnVpbHRpbi9wdXNoLmM6NTQ4CisjOiBidWlsdGluL3JlbW90ZS5jOjE0MjEgYnVpbHRpbi9ybS5jOjI0MiBidWlsdGluL3NlbmQtcGFjay5jOjE2NQorbXNnaWQgImRyeSBydW4iCittc2dzdHIgInPEsW5hbWEgdHVydSIKKworIzogYnVpbHRpbi9hZGQuYzozMjUKK21zZ2lkICJpbnRlcmFjdGl2ZSBwaWNraW5nIgorbXNnc3RyICJldGtpbGXFn2ltbGkgc2XDp2ltIgorCisjOiBidWlsdGluL2FkZC5jOjMyNiBidWlsdGluL2NoZWNrb3V0LmM6MTUxMSBidWlsdGluL3Jlc2V0LmM6MzA3Cittc2dpZCAic2VsZWN0IGh1bmtzIGludGVyYWN0aXZlbHkiCittc2dzdHIgInBhcsOnYWxhcsSxIGV0a2lsZcWfaW1saSBvbGFyYWsgc2XDpyIKKworIzogYnVpbHRpbi9hZGQuYzozMjcKK21zZ2lkICJlZGl0IGN1cnJlbnQgZGlmZiBhbmQgYXBwbHkiCittc2dzdHIgImdlw6dlcmxpIGRpZmYnaSBkw7x6ZW5sZSB2ZSB1eWd1bGEiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzI4Cittc2dpZCAiYWxsb3cgYWRkaW5nIG90aGVyd2lzZSBpZ25vcmVkIGZpbGVzIgorbXNnc3RyICJiYcWfa2EgdMO8cmzDvCB5b2sgc2F5xLFsYW4gZG9zeWFsYXLEsW4gZWtsZW5tZXNpbmUgaXppbiB2ZXIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzI5Cittc2dpZCAidXBkYXRlIHRyYWNrZWQgZmlsZXMiCittc2dzdHIgIml6bGVuZW4gZG9zeWFsYXLEsSBnw7xuY2VsbGUiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzMwCittc2dpZCAicmVub3JtYWxpemUgRU9MIG9mIHRyYWNrZWQgZmlsZXMgKGltcGxpZXMgLXUpIgorbXNnc3RyICJpemxlbmVuIGRvc3lhbGFyxLFuIHNhdMSxciBzb25sYXLEsW7EsSB5ZW5pZGVuIG9sYcSfYW5sYcWfdMSxciAoLXUgaW1hIGVkZXIpIgorCisjOiBidWlsdGluL2FkZC5jOjMzMQorbXNnaWQgInJlY29yZCBvbmx5IHRoZSBmYWN0IHRoYXQgdGhlIHBhdGggd2lsbCBiZSBhZGRlZCBsYXRlciIKK21zZ3N0ciAieWFsbsSxemNhIHlvbHVuIHNvbnJhIGVrbGVuZWNlxJ9pIGdlcsOnZcSfaW5pbiBrYXlkxLFuxLEgeWF6IgorCisjOiBidWlsdGluL2FkZC5jOjMzMgorbXNnaWQgImFkZCBjaGFuZ2VzIGZyb20gYWxsIHRyYWNrZWQgYW5kIHVudHJhY2tlZCBmaWxlcyIKK21zZ3N0ciAidMO8bSBpemxlbmVuL2l6bGVubWV5ZW4gZG9zeWFsYXJkYW4gZGXEn2nFn2lrbGlrbGVyaSBla2xlIgorCisjOiBidWlsdGluL2FkZC5jOjMzNQorbXNnaWQgImlnbm9yZSBwYXRocyByZW1vdmVkIGluIHRoZSB3b3JraW5nIHRyZWUgKHNhbWUgYXMgLS1uby1hbGwpIgorbXNnc3RyICLDp2FsxLHFn21hIGHEn2FjxLFuZGEga2FsZMSxcsSxbGFuIHlvbGxhcsSxIHlvayBzYXkgKC0tbm8tYWxsIGlsZSBheW7EsSkiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzM3Cittc2dpZCAiZG9uJ3QgYWRkLCBvbmx5IHJlZnJlc2ggdGhlIGluZGV4IgorbXNnc3RyICJla2xlbWUsIHlhbG7EsXpjYSBpbmRla3NpIHllbmlsZSIKKworIzogYnVpbHRpbi9hZGQuYzozMzgKK21zZ2lkICJqdXN0IHNraXAgZmlsZXMgd2hpY2ggY2Fubm90IGJlIGFkZGVkIGJlY2F1c2Ugb2YgZXJyb3JzIgorbXNnc3RyICJ5YWxuxLF6Y2EgaGF0YWxhcmRhbiBkb2xhecSxIGVrbGVuZW1leWVuIGRvc3lhbGFyxLEgYXRsYSIKKworIzogYnVpbHRpbi9hZGQuYzozMzkKK21zZ2lkICJjaGVjayBpZiAtIGV2ZW4gbWlzc2luZyAtIGZpbGVzIGFyZSBpZ25vcmVkIGluIGRyeSBydW4iCittc2dzdHIgIiIKKyJkb3N5YWxhcsSxbiAtZWtzaWsgb2xzYWxhciBiaWxlLSBzxLFuYW1hIHR1cnVuZGEgeW9rIHNhecSxbMSxcCBzYXnEsWxtYWTEscSfxLFuxLEgIgorImRlbmV0bGUiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzQxIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwNAorbXNnaWQgIm92ZXJyaWRlIHRoZSBleGVjdXRhYmxlIGJpdCBvZiB0aGUgbGlzdGVkIGZpbGVzIgorbXNnc3RyICJsaXN0ZWxlbmVuIGRvc3lhbGFyxLFuIMOnYWzEscWfdMSxcsSxbGFiaWxpciBrxLFzxLFtbGFyxLFuxLEgZ2XDp2Vyc2l6IGvEsWwiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzQzCittc2dpZCAid2FybiB3aGVuIGFkZGluZyBhbiBlbWJlZGRlZCByZXBvc2l0b3J5IgorbXNnc3RyICJnw7Ztw7xsw7wgYmlyIGRlcG8gZWtsZW5pcmtlbiB1eWFyIgorCisjOiBidWlsdGluL2FkZC5jOjM0NQorbXNnaWQgImJhY2tlbmQgZm9yIGBnaXQgc3Rhc2ggLXBgIgorbXNnc3RyICInZ2l0IHN0YXNoIC1wJyBpw6dpbiBhcmthIHXDpyIKKworIzogYnVpbHRpbi9hZGQuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSd2ZSBhZGRlZCBhbm90aGVyIGdpdCByZXBvc2l0b3J5IGluc2lkZSB5b3VyIGN1cnJlbnQgcmVwb3NpdG9yeS5cbiIKKyJDbG9uZXMgb2YgdGhlIG91dGVyIHJlcG9zaXRvcnkgd2lsbCBub3QgY29udGFpbiB0aGUgY29udGVudHMgb2ZcbiIKKyJ0aGUgZW1iZWRkZWQgcmVwb3NpdG9yeSBhbmQgd2lsbCBub3Qga25vdyBob3cgdG8gb2J0YWluIGl0LlxuIgorIklmIHlvdSBtZWFudCB0byBhZGQgYSBzdWJtb2R1bGUsIHVzZTpcbiIKKyJcbiIKKyJcdGdpdCBzdWJtb2R1bGUgYWRkIDx1cmw+ICVzXG4iCisiXG4iCisiSWYgeW91IGFkZGVkIHRoaXMgcGF0aCBieSBtaXN0YWtlLCB5b3UgY2FuIHJlbW92ZSBpdCBmcm9tIHRoZVxuIgorImluZGV4IHdpdGg6XG4iCisiXG4iCisiXHRnaXQgcm0gLS1jYWNoZWQgJXNcbiIKKyJcbiIKKyJTZWUgXCJnaXQgaGVscCBzdWJtb2R1bGVcIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJNZXZjdXQgZGVwb251enVuIGnDp2luZSBiYcWfa2EgYmlyIGdpdCBkZXBvc3UgZWtsZWRpbml6LlxuIgorIkTEscWfIGRlcG9udW4ga2xvbmxhcsSxIGfDtm3DvGxlbiBkZXBvbnVuIGnDp2VyacSfaW5pIGnDp2VybWV6IHZlIG9ubGFyxLFcbiIKKyJuYXPEsWwgYWxhYmlsZWNlxJ9pbmkgYmlsZW1lei4gRcSfZXIgYmlyIGFsdG1vZMO8bCBla2xlbWVrIGlzdGVkaXlzZW5pelxuIgorIsWfdW51IGt1bGxhbsSxbjpcbiIKKyJcbiIKKyJcdGdpdCBzdWJtb2R1bGUgYWRkIDx1cmw+ICVzXG4iCisiXG4iCisiRcSfZXIgYnUgeW9sdSB5YW5sxLHFn2zEsWtsYSBla2xlZGl5c2VuaXogYcWfYcSfxLFkYWtpIGtvbXV0bGEgaW5kZWtzdGVuXG4iCisia2FsZMSxcmFiaWxpcnNpbml6OlxuIgorIlxuIgorIlx0Z2l0IHJtIC0tY2FjaGVkICVzXG4iCisiXG4iCisiRWsgYmlsZ2kgacOnaW46IFwiZ2l0IGhlbHAgc3VibW9kdWxlXCIuIgorCisjOiBidWlsdGluL2FkZC5jOjM5MQorIywgYy1mb3JtYXQKK21zZ2lkICJhZGRpbmcgZW1iZWRkZWQgZ2l0IHJlcG9zaXRvcnk6ICVzIgorbXNnc3RyICJnw7Ztw7xsw7wgZ2l0IGRlcG9zdSBla2xlbml5b3I6ICVzIgorCisjOiBidWlsdGluL2FkZC5jOjQxMAorbXNnaWQgIiIKKyJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCB0aGVtLlxuIgorIlR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieSBydW5uaW5nXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRJZ25vcmVkRmlsZSBmYWxzZVwiIgorbXNnc3RyICIiCisiR2Vyw6dla3RlbiBla2xlbWVrIGlzdGl5b3JzYW7EsXogLWYga3VsbGFuxLFuLlxuIgorIkJ1IGlsZXRpeWkgJ2dpdCBjb25maWcgYWR2aWNlLmFkZElnbm9yZWRGaWxlIGZhbHNlJ1xuIgorImt1bGxhbmFyYWsga2FwYXRhYmlsaXJzaW5pei4iCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDE5Cittc2dpZCAiYWRkaW5nIGZpbGVzIGZhaWxlZCIKK21zZ3N0ciAiZG9zeWEgZWtsZW1lIGJhxZ9hcsSxc8SxeiIKKworIzogYnVpbHRpbi9hZGQuYzo0NDcgYnVpbHRpbi9jb21taXQuYzozNDgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWludGVyYWN0aXZlLy0tcGF0Y2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlLCAtLWludGVyYWN0aXZlLy0tcGF0Y2ggaWxlIHV5dW1zdXoiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDY0Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1lZGl0IgorbXNnc3RyICItLXBhdGhzcGVjLWZyb20tZmlsZSwgLS1lZGl0IGlsZSB1eXVtc3V6IgorCisjOiBidWlsdGluL2FkZC5jOjQ3NgorbXNnaWQgIi1BIGFuZCAtdSBhcmUgbXV0dWFsbHkgaW5jb21wYXRpYmxlIgorbXNnc3RyICItQSB2ZSAtdSBrYXLFn8SxbMSxa2zEsSBvbGFyYWsgdXl1bWx1IgorCisjOiBidWlsdGluL2FkZC5jOjQ3OQorbXNnaWQgIk9wdGlvbiAtLWlnbm9yZS1taXNzaW5nIGNhbiBvbmx5IGJlIHVzZWQgdG9nZXRoZXIgd2l0aCAtLWRyeS1ydW4iCittc2dzdHIgIiIKKyItLWlnbm9yZS1taXNzaW5nIHNlw6dlbmXEn2kgeWFsbsSxemNhIC0tZHJ5LXJ1biBzZcOnZW5lxJ9pIGlsZSBiaXJsaWt0ZSAiCisia3VsbGFuxLFsYWJpbGlyIgorCisjOiBidWlsdGluL2FkZC5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICItLWNobW9kIHBhcmFtICclcycgbXVzdCBiZSBlaXRoZXIgLXggb3IgK3giCittc2dzdHIgIi0tY2htb2QgcGFyYW0gJyVzJyB5YSAteCB5YSBkYSAreCBvbG1hbMSxZMSxciIKKworIzogYnVpbHRpbi9hZGQuYzo1MDEgYnVpbHRpbi9jaGVja291dC5jOjE2NzUgYnVpbHRpbi9jb21taXQuYzozNTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMjcgYnVpbHRpbi9ybS5jOjI3MiBidWlsdGluL3N0YXNoLmM6MTUwOQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgeW9sIGJlbGlydGVjaSBkZcSfacWfa2VubGVyaSBpbGUgdXl1bXN1eiIKKworIzogYnVpbHRpbi9hZGQuYzo1MDggYnVpbHRpbi9jaGVja291dC5jOjE2ODcgYnVpbHRpbi9jb21taXQuYzozNjAKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMzMgYnVpbHRpbi9ybS5jOjI3OCBidWlsdGluL3N0YXNoLmM6MTUxNQorbXNnaWQgIi0tcGF0aHNwZWMtZmlsZS1udWwgcmVxdWlyZXMgLS1wYXRoc3BlYy1mcm9tLWZpbGUiCittc2dzdHIgIi0tcGF0aHNwZWMtZmlsZS1udWwsIC0tcGF0aHNwZWMtZnJvbS1maWxlIGdlcmVrdGlyaXlvciIKKworIzogYnVpbHRpbi9hZGQuYzo1MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm90aGluZyBzcGVjaWZpZWQsIG5vdGhpbmcgYWRkZWQuXG4iCittc2dzdHIgIkhpw6diaXIgxZ9leSBiZWxpcnRpbG1lZGksIGhpw6diaXIgxZ9leSBla2xlbm1lZGkuXG4iCisKKyM6IGJ1aWx0aW4vYWRkLmM6NTE0Cittc2dpZCAiIgorIk1heWJlIHlvdSB3YW50ZWQgdG8gc2F5ICdnaXQgYWRkIC4nP1xuIgorIlR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieSBydW5uaW5nXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRFbXB0eVBhdGhzcGVjIGZhbHNlXCIiCittc2dzdHIgIiIKKyInZ2l0IGFkZCAuJyBtxLEgZGVtZWsgaXN0ZWRpbml6P1xuIgorIkJ1IGlsZXRpeWkgJ2dpdCBjb25maWcgYWR2aWNlLmFkZEVtcHR5UGF0aHNwZWMgZmFsc2UnXG4iCisieWFwYXJhayBrYXBhdGFiaWxpcnNpbml6LiIKKworIzogYnVpbHRpbi9hbS5jOjM1MgorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBhdXRob3Igc2NyaXB0IgorbXNnc3RyICJ5YXphciBiZXRpxJ9pIGF5csSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBidWlsdGluL2FtLmM6NDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgd2FzIGRlbGV0ZWQgYnkgdGhlIGFwcGx5cGF0Y2gtbXNnIGhvb2siCittc2dzdHIgIiclcycgYXBwbHlwYXRjaC1tc2cga2FuY2FzxLEgdGFyYWbEsW5kYW4gc2lsaW5kaSIKKworIzogYnVpbHRpbi9hbS5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICJNYWxmb3JtZWQgaW5wdXQgbGluZTogJyVzJy4iCittc2dzdHIgIkhhdGFsxLEgb2x1xZ90dXJ1bG11xZ8gZ2lyZGkgc2F0xLFyxLE6ICclcycuIgorCisjOiBidWlsdGluL2FtLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBjb3B5IG5vdGVzIGZyb20gJyVzJyB0byAnJXMnIgorbXNnc3RyICJOb3RsYXLEsW4gJyVzJyBrb251bXVuZGFuICclcycga29udW11bmEga29weWFsYW5tYXPEsSBiYcWfYXLEsXPEsXoiCisKKyM6IGJ1aWx0aW4vYW0uYzo1NDIKK21zZ2lkICJmc2VlayBmYWlsZWQiCittc2dzdHIgImZzZWVrIGJhxZ9hcsSxc8SxeiBvbGR1IgorCisjOiBidWlsdGluL2FtLmM6NzMwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBwYXRjaCAnJXMnIgorbXNnc3RyICInJXMnIHlhbWFzxLEgYXlyxLHFn3TEsXLEsWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vYW0uYzo3OTUKK21zZ2lkICJPbmx5IG9uZSBTdEdJVCBwYXRjaCBzZXJpZXMgY2FuIGJlIGFwcGxpZWQgYXQgb25jZSIKK21zZ3N0ciAiQmlyIGtlcmVkZSB5YWxuxLF6Y2EgYmlyIFN0R0lUIHlhbWEgc2VyaXNpIHV5Z3VsYW5hYmlsaXIiCisKKyM6IGJ1aWx0aW4vYW0uYzo4NDMKK21zZ2lkICJpbnZhbGlkIHRpbWVzdGFtcCIKK21zZ3N0ciAiZ2XDp2Vyc2l6IHphbWFuIGRhbWdhc8SxIgorCisjOiBidWlsdGluL2FtLmM6ODQ4IGJ1aWx0aW4vYW0uYzo4NjAKK21zZ2lkICJpbnZhbGlkIERhdGUgbGluZSIKK21zZ3N0ciAiZ2XDp2Vyc2l6IHRhcmloIHNhdMSxcsSxIgorCisjOiBidWlsdGluL2FtLmM6ODU1Cittc2dpZCAiaW52YWxpZCB0aW1lem9uZSBvZmZzZXQiCittc2dzdHIgImdlw6dlcnNpeiB6YW1hbiBkaWxpbWkgb2ZzZXRpIgorCisjOiBidWlsdGluL2FtLmM6OTQ4Cittc2dpZCAiUGF0Y2ggZm9ybWF0IGRldGVjdGlvbiBmYWlsZWQuIgorbXNnc3RyICJZYW1hIGJpw6dpbWkgYWxnxLFsYW1hc8SxIGJhxZ9hcsSxc8Sxei4iCisKKyM6IGJ1aWx0aW4vYW0uYzo5NTMgYnVpbHRpbi9jbG9uZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICInJXMnIGRpemluaSBvbHXFn3R1cnVsYW1hZMSxIgorCisjOiBidWlsdGluL2FtLmM6OTU4Cittc2dpZCAiRmFpbGVkIHRvIHNwbGl0IHBhdGNoZXMuIgorbXNnc3RyICJZYW1hbGFyIHBhcsOnYWxhbsSxcCBiw7Zsw7xuZW1lZGkuIgorCisjOiBidWlsdGluL2FtLmM6MTA4OQorIywgYy1mb3JtYXQKK21zZ2lkICJXaGVuIHlvdSBoYXZlIHJlc29sdmVkIHRoaXMgcHJvYmxlbSwgcnVuIFwiJXMgLS1jb250aW51ZVwiLiIKK21zZ3N0ciAiQnUgc29ydW51IMOnw7Z6ZMO8xJ/DvG7DvHpkZSBcIiVzIC0tY29udGludWVcIiDDp2FsxLHFn3TEsXLEsW4uIgorCisjOiBidWlsdGluL2FtLmM6MTA5MAorIywgYy1mb3JtYXQKK21zZ2lkICJJZiB5b3UgcHJlZmVyIHRvIHNraXAgdGhpcyBwYXRjaCwgcnVuIFwiJXMgLS1za2lwXCIgaW5zdGVhZC4iCittc2dzdHIgIkXEn2VyIGJ1IHlhbWF5xLEgYXRsYW1hecSxIHllxJ9saXlvcnNhbsSxeiBcIiVzIC0tc2tpcFwiIMOnYWzEscWfdMSxcsSxbi4iCisKKyM6IGJ1aWx0aW4vYW0uYzoxMDkxCisjLCBjLWZvcm1hdAorbXNnaWQgIlRvIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgc3RvcCBwYXRjaGluZywgcnVuIFwiJXMgLS1hYm9ydFwiLiIKK21zZ3N0ciAiIgorIsSwbGsgZGFsxLEgZXNraSBkdXJ1bXVuYSBnZXRpcmlwIHlhbWFsYW1hecSxIGR1cmR1cm1hayBpw6dpbiBcIiVzIC0tYWJvcnRcIiAiCisiw6dhbMSxxZ90xLFyLiIKKworIzogYnVpbHRpbi9hbS5jOjExNzQKK21zZ2lkICJQYXRjaCBzZW50IHdpdGggZm9ybWF0PWZsb3dlZDsgc3BhY2UgYXQgdGhlIGVuZCBvZiBsaW5lcyBtaWdodCBiZSBsb3N0LiIKK21zZ3N0ciAiIgorIllhbWEgZm9ybWF0PWZsb3dlZCBpbGUgZ8O2bmRlcmlsZGk7IHNhdMSxciBzb25sYXLEsW5kYWtpIGJvxZ9sdWsga2F5Ym9sbXXFnyAiCisib2xhYmlsaXIuIgorCisjOiBidWlsdGluL2FtLmM6MTIwMgorbXNnaWQgIlBhdGNoIGlzIGVtcHR5LiIKK21zZ3N0ciAiWWFtYSBib8WfLiIKKworIzogYnVpbHRpbi9hbS5jOjEyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyBhdXRob3IgbGluZSBpbiBjb21taXQgJXMiCittc2dzdHIgIiVzIGfDtm5kZXJpc2luZGUgeWF6YXIgc2F0xLFyxLEgZWtzaWsiCisKKyM6IGJ1aWx0aW4vYW0uYzoxMjcwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaWRlbnQgbGluZTogJS4qcyIKK21zZ3N0ciAiZ2XDp2Vyc2l6IHRhbsSxbWxhbWEgc2F0xLFyxLE6ICUuKnMiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNDg5Cittc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyBuZWNlc3NhcnkgYmxvYnMgdG8gZmFsbCBiYWNrIG9uIDMtd2F5IG1lcmdlLiIKK21zZ3N0ciAiIgorIkRlcG8gMyB5w7ZubMO8IGJpcmxlxZ90aXJtZXllIGdlcmkgw6dla2lsZWJpbG1lIGnDp2luIGdlcmVrZW4gaWtpbGkgbmVzbmVsZXJlIGl5ZSAiCisiZGXEn2lsLiIKKworIzogYnVpbHRpbi9hbS5jOjE0OTEKK21zZ2lkICJVc2luZyBpbmRleCBpbmZvIHRvIHJlY29uc3RydWN0IGEgYmFzZSB0cmVlLi4uIgorbXNnc3RyICJCaXIgdGVtZWwgYcSfYWPEsW7EsSB5ZW5pZGVuIHlhcG1hayBpw6dpbiBpbmRla3MgYmlsZ2lzaSBrdWxsYW7EsWzEsXlvci4uLiIKKworIzogYnVpbHRpbi9hbS5jOjE1MTAKK21zZ2lkICIiCisiRGlkIHlvdSBoYW5kIGVkaXQgeW91ciBwYXRjaD9cbiIKKyJJdCBkb2VzIG5vdCBhcHBseSB0byBibG9icyByZWNvcmRlZCBpbiBpdHMgaW5kZXguIgorbXNnc3RyICIiCisiWWFtYW7EsXrEsSBlbGxlIG1pIGTDvHplbmxlZGluaXo/XG4iCisiS2VuZGkgaW5kZWtzaW5kZSBrYXlkxLEgeWF6xLFsYW4gaWtpbGkgbmVzbmVsZXJlIHV5Z3VsYW5hbcSxeW9yLiIKKworIzogYnVpbHRpbi9hbS5jOjE1MTYKK21zZ2lkICJGYWxsaW5nIGJhY2sgdG8gcGF0Y2hpbmcgYmFzZSBhbmQgMy13YXkgbWVyZ2UuLi4iCittc2dzdHIgIlRlbWVsaSB5YW1hbGFtYXlhIHZlIDMgecO2bmzDvCBiaXJsZcWfdGlybWV5ZSBnZXJpIMOnZWtpbGluaXlvci4uLiIKKworIzogYnVpbHRpbi9hbS5jOjE1NDIKK21zZ2lkICJGYWlsZWQgdG8gbWVyZ2UgaW4gdGhlIGNoYW5nZXMuIgorbXNnc3RyICJEZcSfacWfaWtsaWtsZXIgYmlybGXFn3RpcmlsZW1lZGkuIgorCisjOiBidWlsdGluL2FtLmM6MTU3NAorbXNnaWQgImFwcGx5aW5nIHRvIGFuIGVtcHR5IGhpc3RvcnkiCittc2dzdHIgImJvxZ8gYmlyIGdlw6dtacWfZSB1eWd1bGFuxLF5b3IiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNjIxIGJ1aWx0aW4vYW0uYzoxNjI1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZXN1bWU6ICVzIGRvZXMgbm90IGV4aXN0LiIKK21zZ3N0ciAic8O8cmTDvHLDvGxlbWl5b3I6ICVzIHlvayIKKworIzogYnVpbHRpbi9hbS5jOjE2NDMKK21zZ2lkICJDb21taXQgQm9keSBpczoiCittc2dzdHIgIkfDtm5kZXJpIGfDtnZkZXNpOiIKKworIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFt5XSwgW25dLCBbZV0sIFt2XSBhbmQgW2FdCisjLiBpbiB5b3VyIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2gKKyMuIGlucHV0IGF0IHRoaXMgcG9pbnQuCisjLgorIzogYnVpbHRpbi9hbS5jOjE2NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXBwbHk/IFt5XWVzL1tuXW8vW2VdZGl0L1t2XWlldyBwYXRjaC9bYV1jY2VwdCBhbGw6ICIKK21zZ3N0ciAiIgorIlV5Z3VsYT8gW3ldZXZldC9bbl1oYXnEsXIvZMO8eltlXW5sZS9bdl15YW1hecSxIGfDtnLDvG50w7xsZS90w7xtw7xuw7wga1thXWJ1bCBldDogIgorCisjOiBidWlsdGluL2FtLmM6MTcwMCBidWlsdGluL2NvbW1pdC5jOjM5OAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBpbmRleCBmaWxlIgorbXNnc3RyICJpbmRla3MgZG9zeWFzxLEgeWF6xLFsYW3EsXlvciIKKworIzogYnVpbHRpbi9hbS5jOjE3MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGlydHkgaW5kZXg6IGNhbm5vdCBhcHBseSBwYXRjaGVzIChkaXJ0eTogJXMpIgorbXNnc3RyICJLaXJsaSBpbmRla3M6IFlhbWFsYXIgdXlndWxhbmFtxLF5b3IgKGtpcmxpOiAlcykiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNzQ0IGJ1aWx0aW4vYW0uYzoxODEyCisjLCBjLWZvcm1hdAorbXNnaWQgIkFwcGx5aW5nOiAlLipzIgorbXNnc3RyICJVeWd1bGFuxLF5b3I6ICUuKnMiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNzYxCittc2dpZCAiTm8gY2hhbmdlcyAtLSBQYXRjaCBhbHJlYWR5IGFwcGxpZWQuIgorbXNnc3RyICJEZcSfacWfaWtsaWsgeW9rIC0tIFlhbWEgaGFsaWhhesSxcmRhIHV5Z3VsYW5kxLEuIgorCisjOiBidWlsdGluL2FtLmM6MTc2NworIywgYy1mb3JtYXQKK21zZ2lkICJQYXRjaCBmYWlsZWQgYXQgJXMgJS4qcyIKK21zZ3N0ciAiWWFtYSDFn3VyYWRhIGJhxZ9hcsSxc8SxeiBvbGR1OiAlcyAlLipzIgorCisjOiBidWlsdGluL2FtLmM6MTc3MQorbXNnaWQgIlVzZSAnZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoPWRpZmYnIHRvIHNlZSB0aGUgZmFpbGVkIHBhdGNoIgorbXNnc3RyICIiCisiQmHFn2FyxLFzxLF6IG9sYW4geWFtYXnEsSBnw7ZybWVrIGnDp2luICdnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2g9ZGlmZicga3VsbGFuxLFuIgorCisjOiBidWlsdGluL2FtLmM6MTgxNQorbXNnaWQgIiIKKyJObyBjaGFuZ2VzIC0gZGlkIHlvdSBmb3JnZXQgdG8gdXNlICdnaXQgYWRkJz9cbiIKKyJJZiB0aGVyZSBpcyBub3RoaW5nIGxlZnQgdG8gc3RhZ2UsIGNoYW5jZXMgYXJlIHRoYXQgc29tZXRoaW5nIGVsc2VcbiIKKyJhbHJlYWR5IGludHJvZHVjZWQgdGhlIHNhbWUgY2hhbmdlczsgeW91IG1pZ2h0IHdhbnQgdG8gc2tpcCB0aGlzIHBhdGNoLiIKK21zZ3N0ciAiIgorIkRlxJ9pxZ9pa2xpayB5b2sgLSAnZ2l0IGFkZCcgeWFwbWF5xLEgbcSxIHVudXR0dW51ej9cbiIKKyJIYXrEsXJsYW5hY2FrIGJhxZ9rYSBiaXIgxZ9leSBrYWxtYWTEsXlzYSBiw7x5w7xrIG9sYXPEsWzEsWtsYSBiYcWfa2EgYmlyIMWfZXlcbiIKKyJheW7EsSBkZcSfacWfaWtsaWtsZXJpIHV5Z3VsYW3EscWfIG9sYWJpbGlyOyBidSB5YW1hecSxIGF0bGFtYWsgaXN0ZXllYmlsaXJzaW5pei4iCisKKyM6IGJ1aWx0aW4vYW0uYzoxODIyCittc2dpZCAiIgorIllvdSBzdGlsbCBoYXZlIHVubWVyZ2VkIHBhdGhzIGluIHlvdXIgaW5kZXguXG4iCisiWW91IHNob3VsZCAnZ2l0IGFkZCcgZWFjaCBmaWxlIHdpdGggcmVzb2x2ZWQgY29uZmxpY3RzIHRvIG1hcmsgdGhlbSBhcyAiCisic3VjaC5cbiIKKyJZb3UgbWlnaHQgcnVuIGBnaXQgcm1gIG9uIGEgZmlsZSB0byBhY2NlcHQgXCJkZWxldGVkIGJ5IHRoZW1cIiBmb3IgaXQuIgorbXNnc3RyICIiCisixLBuZGVrc2luaXpkZSBow6Jsw6IgYmlybGXFn3RpcmlsbWVtacWfIHlvbGxhciB2YXIuXG4iCisiw4dha8SxxZ9tYWxhcsSxIMOnw7Z6w7xsZW4gdMO8bSBkb3N5YWxhcsSxICdnaXQgYWRkJyBpbGUgw6fDtnrDvGxkw7wgb2xhcmFrICIKKyJpbWxlbWVsaXNpbml6LlxuIgorIkJpciBkb3N5YW7EsW4gXCJvbmxhciBzaWxkaVwiIG9sZHXEn3VudSBrYWJ1bCBldG1layBpw6dpbiBkb3N5YSBpbGUgJ2dpdCBybScgIgorInlhcGFiaWxpcnNpbml6LiIKKworIzogYnVpbHRpbi9hbS5jOjE5MjkgYnVpbHRpbi9hbS5jOjE5MzMgYnVpbHRpbi9hbS5jOjE5NDUgYnVpbHRpbi9yZXNldC5jOjM0NgorIzogYnVpbHRpbi9yZXNldC5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcycuIgorbXNnc3RyICInJXMnIG5lc25lc2kgYXlyxLHFn3TEsXLEsWxhbWFkxLEuIgorCisjOiBidWlsdGluL2FtLmM6MTk4MQorbXNnaWQgImZhaWxlZCB0byBjbGVhbiBpbmRleCIKK21zZ3N0ciAiaW5kZWtzIHRlbWl6bGVuZW1lZGkiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMDI1Cittc2dpZCAiIgorIllvdSBzZWVtIHRvIGhhdmUgbW92ZWQgSEVBRCBzaW5jZSB0aGUgbGFzdCAnYW0nIGZhaWx1cmUuXG4iCisiTm90IHJld2luZGluZyB0byBPUklHX0hFQUQiCittc2dzdHIgIiIKKyJTb24gJ2FtJyBiYcWfYXLEsXPEsXpsxLHEn8SxbmRhbiBidSB5YW5hIEhFQUQnaSBoYXJla2V0IGV0dGlybWnFnyBnw7Zyw7xuw7x5b3JzdW51ei5cbiIKKyJPUklHX0hFQUQnZSBnZXJpIHNhcsSxbG3EsXlvci4iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yIC0tcGF0Y2gtZm9ybWF0OiAlcyIKK21zZ3N0ciAiR2XDp2Vyc2l6IC0tcGF0Y2gtZm9ybWF0IGRlxJ9lcmk6ICVzIgorCisjOiBidWlsdGluL2FtLmM6MjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciAtLXNob3ctY3VycmVudC1wYXRjaDogJXMiCittc2dzdHIgIi0tc2hvdy1jdXJyZW50LXBhdGNoIGnDp2luIGdlw6dlcnNpeiBkZcSfZXI6ICVzIgorCisjOiBidWlsdGluL2FtLmM6MjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLXNob3ctY3VycmVudC1wYXRjaD0lcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLXNob3ctY3VycmVudC1wYXRjaD0lcyIKK21zZ3N0ciAiLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMsIC0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIGlsZSB1eXVtc3V6IgorCisjOiBidWlsdGluL2FtLmM6MjIwNworbXNnaWQgImdpdCBhbSBbPG9wdGlvbnM+XSBbKDxtYm94PiB8IDxNYWlsZGlyPikuLi5dIgorbXNnc3RyICJnaXQgYW0gWzxzZcOnZW5la2xlcj5dIFsoPG1ib3g+IHwgPHBvc3RhLWRpemluPikuLi5dIgorCisjOiBidWlsdGluL2FtLmM6MjIwOAorbXNnaWQgImdpdCBhbSBbPG9wdGlvbnM+XSAoLS1jb250aW51ZSB8IC0tc2tpcCB8IC0tYWJvcnQpIgorbXNnc3RyICJnaXQgYW0gWzxzZcOnZW5la2xlcj5dICgtLWNvbnRpbnVlIHwgLS1za2lwIHwgLS1hYm9ydCkiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjE0Cittc2dpZCAicnVuIGludGVyYWN0aXZlbHkiCittc2dzdHIgImV0a2lsZcWfaW1saSBvbGFyYWsgw6dhbMSxxZ90xLFyIgorCisjOiBidWlsdGluL2FtLmM6MjIxNgorbXNnaWQgImhpc3RvcmljYWwgb3B0aW9uIC0tIG5vLW9wIgorbXNnc3RyICJ0YXJpaGkgc2XDp2VuZWsgLS0gbm8tb3AiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjE4Cittc2dpZCAiYWxsb3cgZmFsbCBiYWNrIG9uIDN3YXkgbWVyZ2luZyBpZiBuZWVkZWQiCittc2dzdHIgImdlcmVraXJzZSAzIHnDtm5sw7wgYmlybGXFn3Rpcm1leWUgZ2VyaSDDp2VraWxtZXllIGl6aW4gdmVyIgorCisjOiBidWlsdGluL2FtLmM6MjIxOSBidWlsdGluL2luaXQtZGIuYzo0OTQgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1OAorIzogYnVpbHRpbi9yZXBhY2suYzozMDQgYnVpbHRpbi9zdGFzaC5jOjgxMgorbXNnaWQgImJlIHF1aWV0IgorbXNnc3RyICJzZXNzaXogb2wiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjIxCittc2dpZCAiYWRkIGEgU2lnbmVkLW9mZi1ieSBsaW5lIHRvIHRoZSBjb21taXQgbWVzc2FnZSIKK21zZ3N0ciAiZ8O2bmRlcmkgaWxldGlzaW5lIGJpciBTaWduZWQtb2ZmLWJ5IHNhdMSxcsSxIGVrbGUiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjI0Cittc2dpZCAicmVjb2RlIGludG8gdXRmOCAoZGVmYXVsdCkiCittc2dzdHIgInV0Zjggb2xhcmFrIHllbmlkZW4ga29kbGEgKMO2bnRhbsSxbWzEsSkiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjI2Cittc2dpZCAicGFzcyAtayBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKK21zZ3N0ciAiJ2dpdC1tYWlsaW5mbyd5YSAtayBiYXlyYcSfxLFuxLEgZ2XDp2lyIgorCisjOiBidWlsdGluL2FtLmM6MjIyOAorbXNnaWQgInBhc3MgLWIgZmxhZyB0byBnaXQtbWFpbGluZm8iCittc2dzdHIgIidnaXQtbWFpbGluZm8neWEgLWIgYmF5cmHEn8SxbsSxIGdlw6dpciIKKworIzogYnVpbHRpbi9hbS5jOjIyMzAKK21zZ2lkICJwYXNzIC1tIGZsYWcgdG8gZ2l0LW1haWxpbmZvIgorbXNnc3RyICInZ2l0LW1haWxpbmZvJ3lhIC1tIGJheXJhxJ/EsW7EsSBnZcOnaXIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjMyCittc2dpZCAicGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGZvciBtYm94IGZvcm1hdCIKK21zZ3N0ciAiJ2dpdC1tYWlsc3BsaXQnZSBtYm94IGJpw6dpbWkgacOnaW4gLS1rZWVwLWNyIGJheXJhxJ/EsW7EsSBnZcOnaXIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjM1Cittc2dpZCAiZG8gbm90IHBhc3MgLS1rZWVwLWNyIGZsYWcgdG8gZ2l0LW1haWxzcGxpdCBpbmRlcGVuZGVudCBvZiBhbS5rZWVwY3IiCittc2dzdHIgIiIKKyInZ2l0LW1haWxzcGxpdCdlICdhbS5rZWVwY3InZGFuIGJhxJ/EsW1zxLF6IG9sYXJhayAtLWtlZXAtY3IgYmF5cmHEn8SxbsSxIGdlw6dpcm1lIgorCisjOiBidWlsdGluL2FtLmM6MjIzOAorbXNnaWQgInN0cmlwIGV2ZXJ5dGhpbmcgYmVmb3JlIGEgc2Npc3NvcnMgbGluZSIKK21zZ3N0ciAiYmlyIGtlc2ltIMOnaXpnaXNpbmRlbiDDtm5jZWtpIGhlciDFn2V5aSDDp8Sxa2FyIgorCisjOiBidWlsdGluL2FtLmM6MjI0MCBidWlsdGluL2FtLmM6MjI0MyBidWlsdGluL2FtLmM6MjI0NiBidWlsdGluL2FtLmM6MjI0OQorIzogYnVpbHRpbi9hbS5jOjIyNTIgYnVpbHRpbi9hbS5jOjIyNTUgYnVpbHRpbi9hbS5jOjIyNTggYnVpbHRpbi9hbS5jOjIyNjEKKyM6IGJ1aWx0aW4vYW0uYzoyMjY3Cittc2dpZCAicGFzcyBpdCB0aHJvdWdoIGdpdC1hcHBseSIKK21zZ3N0ciAiZ2l0LWFwcGx5IGFyYWPEsWzEscSfxLF5bGEgZ2XDp2lyIgorCisjOiBidWlsdGluL2FtLmM6MjI1NyBidWlsdGluL2NvbW1pdC5jOjEzOTEgYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcwCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzMgYnVpbHRpbi9ncmVwLmM6ODcxIGJ1aWx0aW4vbWVyZ2UuYzoyNTAKKyM6IGJ1aWx0aW4vcHVsbC5jOjE0MCBidWlsdGluL3B1bGwuYzoxOTkgYnVpbHRpbi9yZWJhc2UuYzoxNTA1CisjOiBidWlsdGluL3JlcGFjay5jOjMxNSBidWlsdGluL3JlcGFjay5jOjMxOSBidWlsdGluL3JlcGFjay5jOjMyMQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MCBidWlsdGluL3Nob3ctcmVmLmM6MTcyIGJ1aWx0aW4vdGFnLmM6NDAzCisjOiBwYXJzZS1vcHRpb25zLmg6MTU0IHBhcnNlLW9wdGlvbnMuaDoxNzUgcGFyc2Utb3B0aW9ucy5oOjMxNgorbXNnaWQgIm4iCittc2dzdHIgIm4iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjYzIGJ1aWx0aW4vYnJhbmNoLmM6NjYxIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NiBidWlsdGluL3RhZy5jOjQzNyBidWlsdGluL3ZlcmlmeS10YWcuYzozOAorbXNnaWQgImZvcm1hdCIKK21zZ3N0ciAiYmnDp2ltIgorCisjOiBidWlsdGluL2FtLmM6MjI2NAorbXNnaWQgImZvcm1hdCB0aGUgcGF0Y2goZXMpIGFyZSBpbiIKK21zZ3N0ciAieWFtYSBiacOnaW1pIgorCisjOiBidWlsdGluL2FtLmM6MjI3MAorbXNnaWQgIm92ZXJyaWRlIGVycm9yIG1lc3NhZ2Ugd2hlbiBwYXRjaCBmYWlsdXJlIG9jY3VycyIKK21zZ3N0ciAieWFtYSBiYcWfYXLEsXPEsXogb2xkdcSfdW5kYSBoYXRhIGlsZXRpc2luaSBnZcOnZXJzaXoga8SxbCIKKworIzogYnVpbHRpbi9hbS5jOjIyNzIKK21zZ2lkICJjb250aW51ZSBhcHBseWluZyBwYXRjaGVzIGFmdGVyIHJlc29sdmluZyBhIGNvbmZsaWN0IgorbXNnc3RyICJiaXIgw6dha8SxxZ9tYXnEsSDDp8O2emTDvGt0ZW4gc29ucmEgeWFtYWxhcsSxIHV5Z3VsYW1hecSxIHPDvHJkw7xyIgorCisjOiBidWlsdGluL2FtLmM6MjI3NQorbXNnaWQgInN5bm9ueW1zIGZvciAtLWNvbnRpbnVlIgorbXNnc3RyICItLWNvbnRpbnVlIGXFn2FubGFtbMSxbGFyxLEiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjc4Cittc2dpZCAic2tpcCB0aGUgY3VycmVudCBwYXRjaCIKK21zZ3N0ciAiZ2XDp2VybGkgeWFtYXnEsSBhdGxhIgorCisjOiBidWlsdGluL2FtLmM6MjI4MQorbXNnaWQgInJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgYWJvcnQgdGhlIHBhdGNoaW5nIG9wZXJhdGlvbi4iCittc2dzdHIgImlsayBkYWzEsSBlc2tpIGR1cnVtdW5hIGdldGlyIHZlIHlhbWFsYW1hIGnFn2xlbWluaSBpcHRhbCBldCIKKworIzogYnVpbHRpbi9hbS5jOjIyODQKK21zZ2lkICJhYm9ydCB0aGUgcGF0Y2hpbmcgb3BlcmF0aW9uIGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMuIgorbXNnc3RyICJ5YW1hbGFtYSBpxZ9sZW1pbmkgaXB0YWwgZXQgYW5jYWsgSEVBRCdpIG9sZHXEn3UgeWVyZGUgYsSxcmFrIgorCisjOiBidWlsdGluL2FtLmM6MjI4OAorbXNnaWQgInNob3cgdGhlIHBhdGNoIGJlaW5nIGFwcGxpZWQiCittc2dzdHIgInV5Z3VsYW5tYWt0YSBvbGFuIHlhbWF5xLEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9hbS5jOjIyOTMKK21zZ2lkICJsaWUgYWJvdXQgY29tbWl0dGVyIGRhdGUiCittc2dzdHIgImfDtm5kZXJpY2kgdGFyaWhpIGhha2vEsW5kYSB5YWxhbiBzw7Z5bGUiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjk1Cittc2dpZCAidXNlIGN1cnJlbnQgdGltZXN0YW1wIGZvciBhdXRob3IgZGF0ZSIKK21zZ3N0ciAieWF6YXIgdGFyaWhpIGnDp2luIGdlw6dlcmxpIHphbWFuIGRhbWdhc8SxbsSxIGt1bGxhbiIKKworIzogYnVpbHRpbi9hbS5jOjIyOTcgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMCBidWlsdGluL2NvbW1pdC5jOjE1MTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODcgYnVpbHRpbi9wdWxsLmM6MTc0IGJ1aWx0aW4vcmViYXNlLmM6NTE3CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NTYgYnVpbHRpbi9yZXZlcnQuYzoxMTcgYnVpbHRpbi90YWcuYzo0MTgKK21zZ2lkICJrZXktaWQiCittc2dzdHIgImtleS1pZCIKKworIzogYnVpbHRpbi9hbS5jOjIyOTggYnVpbHRpbi9yZWJhc2UuYzo1MTggYnVpbHRpbi9yZWJhc2UuYzoxNTU3Cittc2dpZCAiR1BHLXNpZ24gY29tbWl0cyIKK21zZ3N0ciAiR1BHIGltemFsxLEgZ8O2bmRlcmlsZXIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzAxCittc2dpZCAiKGludGVybmFsIHVzZSBmb3IgZ2l0LXJlYmFzZSkiCittc2dzdHIgIihnaXQtcmViYXNlIGnDp2luIGnDpyBrdWxsYW7EsW0pIgorCisjOiBidWlsdGluL2FtLmM6MjMxOQorbXNnaWQgIiIKKyJUaGUgLWIvLS1iaW5hcnkgb3B0aW9uIGhhcyBiZWVuIGEgbm8tb3AgZm9yIGxvbmcgdGltZSwgYW5kXG4iCisiaXQgd2lsbCBiZSByZW1vdmVkLiBQbGVhc2UgZG8gbm90IHVzZSBpdCBhbnltb3JlLiIKK21zZ3N0ciAiIgorIi1iLy0tYmluYXJ5IHNlw6dlbmXEn2kgdXp1bmNhIGJpciBzw7xyZWRpciBkw7x6Z8O8biDDp2FsxLHFn23EsXlvcmR1IHZlXG4iCisieWFrxLFuZGEga2FsZMSxcsSxbGFjYWsuIEzDvHRmZW4gYXJ0xLFrIGt1bGxhbm1hecSxbi4iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzI2Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgdGhlIGluZGV4IgorbXNnc3RyICJpbmRla3Mgb2t1bmFtYWTEsSIKKworIzogYnVpbHRpbi9hbS5jOjIzNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJldmlvdXMgcmViYXNlIGRpcmVjdG9yeSAlcyBzdGlsbCBleGlzdHMgYnV0IG1ib3ggZ2l2ZW4uIgorbXNnc3RyICIiCisiQmlyIMO2bmNla2kgeWVuaWRlbiB0ZW1lbGxlbmRpcm1lIGRpemluaSAlcyBow6Jsw6IgbWV2Y3V0IGFuY2FrIG1ib3ggdmVyaWxkaS4iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTdHJheSAlcyBkaXJlY3RvcnkgZm91bmQuXG4iCisiVXNlIFwiZ2l0IGFtIC0tYWJvcnRcIiB0byByZW1vdmUgaXQuIgorbXNnc3RyICIiCisiQmHFn8SxYm/FnyAlcyBkaXppbmkgYnVsdW5kdS5cbiIKKyJLYWxkxLFybWFrIGnDp2luIFwiZ2l0IGFtIC0tYWJvcnRcIiBrdWxsYW7EsW4uIgorCisjOiBidWlsdGluL2FtLmM6MjM3MQorbXNnaWQgIlJlc29sdmUgb3BlcmF0aW9uIG5vdCBpbiBwcm9ncmVzcywgd2UgYXJlIG5vdCByZXN1bWluZy4iCittc2dzdHIgIllhcMSxbG1ha3RhIG9sYW4gYmlyIMOnw7Z6w7xtIGnFn2xlbWkgeW9rLCBzw7xyZMO8cm3DvHlvcnV6LiIKKworIzogYnVpbHRpbi9hbS5jOjIzODEKK21zZ2lkICJpbnRlcmFjdGl2ZSBtb2RlIHJlcXVpcmVzIHBhdGNoZXMgb24gdGhlIGNvbW1hbmQgbGluZSIKK21zZ3N0ciAiZXRraWxlxZ9pbWxpIGtpcCB5YW1hbsSxbiBrb211dCBzYXTEsXLEsW5kYSBvbG1hc8SxbsSxIGdlcmVrdGlyaXIiCisKKyM6IGJ1aWx0aW4vYXBwbHkuYzo4Cittc2dpZCAiZ2l0IGFwcGx5IFs8b3B0aW9ucz5dIFs8cGF0Y2g+Li4uXSIKK21zZ3N0ciAiZ2l0IGFwcGx5IFs8c2XDp2VuZWtsZXI+XSBbPHBhdGNoPi4uLl0iCisKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjE3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgYXJjaGl2ZSBmaWxlICclcyciCittc2dzdHIgImFyxZ9pdiBkb3N5YXPEsSAnJXMnIG9sdcWfdHVydWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjIwCittc2dpZCAiY291bGQgbm90IHJlZGlyZWN0IG91dHB1dCIKK21zZ3N0ciAiw6fEsWt0xLEgeWVuaWRlbiB5w7ZubGVuZGlyaWxlbWVkaSIKKworIzogYnVpbHRpbi9hcmNoaXZlLmM6MzcKK21zZ2lkICJnaXQgYXJjaGl2ZTogUmVtb3RlIHdpdGggbm8gVVJMIgorbXNnc3RyICJnaXQgYXJjaGl2ZTogVVJMJ3NpIG9sbWF5YW4gdXphayBrb251bSIKKworIzogYnVpbHRpbi9hcmNoaXZlLmM6NjEKK21zZ2lkICJnaXQgYXJjaGl2ZTogZXhwZWN0ZWQgQUNLL05BSywgZ290IGEgZmx1c2ggcGFja2V0IgorbXNnc3RyICJnaXQgYXJjaGl2ZTogQUNLL05BSyBiZWtsZW5peW9yZHUsIGZsb8WfIHBha2V0aSBhbMSxbmTEsSIKKworIzogYnVpbHRpbi9hcmNoaXZlLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGFyY2hpdmU6IE5BQ0sgJXMiCittc2dzdHIgImdpdCBhcmNoaXZlIE5BQ0sgJXMiCisKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY1Cittc2dpZCAiZ2l0IGFyY2hpdmU6IHByb3RvY29sIGVycm9yIgorbXNnc3RyICJnaXQgYXJjaGl2ZTogUHJvdG9rb2wgaGF0YXPEsSIKKworIzogYnVpbHRpbi9hcmNoaXZlLmM6NjkKK21zZ2lkICJnaXQgYXJjaGl2ZTogZXhwZWN0ZWQgYSBmbHVzaCIKK21zZ3N0ciAiZ2l0IGFyY2hpdmU6IGZsb8WfIGJla2xlbml5b3JkdSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyCittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tbmV4dC1hbGwgWy0tbm8tY2hlY2tvdXRdIgorbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCBbLS1uby1jaGVja291dF0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMworbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDxiYWRfdGVybT4gPGdvb2RfdGVybT4iCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDxrw7Z0w7xfdGVyaW0+IDxpeWlfdGVyaW0+IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjQKK21zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtY2xlYW4tc3RhdGUiCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jbGVhbi1zdGF0ZSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI1Cittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXJlc2V0IFs8Y29tbWl0Pl0iCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1yZXNldCBbPGfDtm5kZXJpPl0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNgorbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtd3JpdGUgWy0tbm8tbG9nXSA8c3RhdGU+IDxyZXZpc2lvbj4gPGdvb2RfdGVybT4gIgorIjxiYWRfdGVybT4iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtd3JpdGUgWy0tbm8tbG9nXSA8ZHVydW0+IDxyZXZpenlvbj4gPGl5aV90ZXJpbT4gIgorIjxrw7Z0w7xfdGVyaW0+IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjcKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNoZWNrLWFuZC1zZXQtdGVybXMgPGNvbW1hbmQ+IDxnb29kX3Rlcm0+ICIKKyI8YmFkX3Rlcm0+IgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNoZWNrLWFuZC1zZXQtdGVybXMgPGtvbXV0PiA8aXlpX3RlcmltPiAiCisiPGvDtnTDvF90ZXJpbT4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOAorbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrIDxnb29kX3Rlcm0+IDxiYWRfdGVybT4gWzx0ZXJtPl0iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtbmV4dC1jaGVjayA8aXlpX3RlcmltPiA8a8O2dMO8X3RlcmltPiBbPHRlcmltPl0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOQorbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtdGVybXMgWy0tdGVybS1nb29kIHwgLS10ZXJtLW9sZCB8IC0tdGVybS1iYWQgfCAtLSIKKyJ0ZXJtLW5ld10iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtdGVybXMgWy0tdGVybS1nb29kIHwgLS10ZXJtLW9sZCB8IC0tdGVybS1iYWQgfCAtLSIKKyJ0ZXJtLW5ld10iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMAorbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtc3RhcnQgWy0tdGVybS17b2xkLGdvb2R9PTx0ZXJtPiAtLXRlcm0te25ldyxiYWR9IgorIj08dGVybT5dWy0tbm8tY2hlY2tvdXRdIFs8YmFkPiBbPGdvb2Q+Li4uXV0gWy0tXSBbPHBhdGhzPi4uLl0iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtc3RhcnQgWy0tdGVybS17b2xkLGdvb2R9PTx0ZXJpbT4gLS10ZXJtLXtuZXcsYmFkfSIKKyI9PHRlcmltPl1bLS1uby1jaGVja291dF0gWzxrw7Z0w7w+IFs8aXlpPi4uLl1dIFstLV0gWzx5b2xsYXI+Li4uXSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgdGVybSIKK21zZ3N0ciAiJyVzJyBnZcOnZXJsaSBiaXIgdGVyaW0gZGXEn2lsIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgdXNlIHRoZSBidWlsdGluIGNvbW1hbmQgJyVzJyBhcyBhIHRlcm0iCittc2dzdHIgIiclcyB5ZXJsZcWfaWsga29tdXR1IGJpciB0ZXJpbSBvbGFyYWsga3VsbGFuxLFsYW3EsXlvciIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBjaGFuZ2UgdGhlIG1lYW5pbmcgb2YgdGhlIHRlcm0gJyVzJyIKK21zZ3N0ciAiJyVzJyB0ZXJpbWluaW4gYW5sYW3EsSBkZcSfacWfdGlyaWxlbWl5b3IiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMTEKK21zZ2lkICJwbGVhc2UgdXNlIHR3byBkaWZmZXJlbnQgdGVybXMiCittc2dzdHIgImzDvHRmZW4gaWtpIGRlxJ9pxZ9payB0ZXJpbSBrdWxsYW7EsW4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMTgKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgZmlsZSBCSVNFQ1RfVEVSTVMiCittc2dzdHIgIkJJU0VDVF9URVJNUyBkb3N5YXPEsSBhw6fEsWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2UgYXJlIG5vdCBiaXNlY3RpbmcuXG4iCittc2dzdHIgIsSwa2lsaSBhcmFtYSB5YXBtxLF5b3J1ei5cbiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIKK21zZ3N0ciAiJyVzJyBnZcOnZXJsaSBiaXIgZ8O2bmRlcmkgZGXEn2lsIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb3VsZCBub3QgY2hlY2sgb3V0IG9yaWdpbmFsIEhFQUQgJyVzJy4gVHJ5ICdnaXQgYmlzZWN0IHJlc2V0IDxjb21taXQ+Jy4iCittc2dzdHIgIiIKKyJPcmlqaW5hbCBIRUFEICclcycgw6fEsWvEscWfxLEgeWFwxLFsYW1hZMSxLiAnZ2l0IGJpc2VjdCByZXNldCA8Z8O2bmRlcmk+JyBkZW5leWluLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAiSGF0YWzEsSBiaXNlY3Rfd3JpdGUgZGXEn2nFn2tlbmk6ICVzIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGdldCB0aGUgb2lkIG9mIHRoZSByZXYgJyVzJyIKK21zZ3N0ciAiJyVzJyByZXZpenlvbnVudW4gb2lkJ3NpIGFsxLFuYW1hZMSxIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gdGhlIGZpbGUgJyVzJyIKK21zZ3N0ciAiJyVzJyBkb3N5YXPEsSBhw6fEsWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBjb21tYW5kOiB5b3UncmUgY3VycmVudGx5IGluIGEgJXMvJXMgYmlzZWN0IgorbXNnc3RyICJHZcOnZXJzaXoga29tdXQ6IMWedSBhbmRhIGJpciAlcy8lcyBpa2lsaSBhcmFtYXPEsW5kYXPEsW7EsXoiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICVzIGFuZCAlcyByZXZpc2lvbi5cbiIKKyJZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJXNcIiBhbmQgXCJnaXQgYmlzZWN0ICVzXCIgZm9yIHRoYXQuIgorbXNnc3RyICIiCisiQmFuYSBlbiBhesSxbmRhbiBiaXIgJXMgdmUgJXMgcmV2aXp5b251IHZlcm1lbml6IGdlcmVraXlvci5cbiIKKyJCdW51biBpw6dpbiBcImdpdCBiaXNlY3QgJXNcIiB2ZSBcImdpdCBiaXNlY3QgJXNcIiBrdWxsYW5hYmlsaXJzaW5pei4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgorIllvdSB0aGVuIG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJXMgYW5kICVzIHJldmlzaW9uLlxuIgorIllvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAlc1wiIGFuZCBcImdpdCBiaXNlY3QgJXNcIiBmb3IgdGhhdC4iCittc2dzdHIgIiIKKyJcImdpdCBiaXNlY3Qgc3RhcnRcIiBpbGUgYmHFn2xhbWFsxLFzxLFuxLF6LlxuIgorIkJ1bmRhbiBzb25yYSBiYW5hIGVuIGF6xLFuZGFuIGJpciAlcyB2ZSAlcyByZXZpenlvbnUgdmVybWVuaXogZ2VyZWtpeW9yLlxuIgorIkJ1bnVuIGnDp2luIFwiZ2l0IGJpc2VjdCAlc1wiIHZlIFwiZ2l0IGJpc2VjdCAlc1wiIGt1bGxhbmFiaWxpcnNpbml6LiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJiaXNlY3Rpbmcgb25seSB3aXRoIGEgJXMgY29tbWl0IgorbXNnc3RyICJ5YWxuxLF6Y2EgYmlyICVzIGfDtm5kZXJpc2kgaWxlIGlraWxpIGFyYW1hIHlhcMSxbMSxeW9yIgorCisjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW1ldIGFuZCBbbl0gaW4geW91cgorIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAorIy4gYXQgdGhpcyBwb2ludC4KKyMuCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzE4Cittc2dpZCAiQXJlIHlvdSBzdXJlIFtZL25dPyAiCittc2dzdHIgIkVtaW4gbWlzaW5peiBbWS9uXT8gIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Mzc5Cittc2dpZCAibm8gdGVybXMgZGVmaW5lZCIKK21zZ3N0ciAiaGnDp2JpciB0ZXJpbSB0YW7EsW1sYW5tYWTEsSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBjdXJyZW50IHRlcm1zIGFyZSAlcyBmb3IgdGhlIG9sZCBzdGF0ZVxuIgorImFuZCAlcyBmb3IgdGhlIG5ldyBzdGF0ZS5cbiIKK21zZ3N0ciAiIgorIk1ldmN1dCB0ZXJpbWxlcmluaXogZXNraSBkdXJ1bSBpw6dpbiAlcyB2ZVxuIgorInllbmkgZHVydW0gacOnaW4gJXMuXG4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgYXJndW1lbnQgJXMgZm9yICdnaXQgYmlzZWN0IHRlcm1zJy5cbiIKKyJTdXBwb3J0ZWQgb3B0aW9ucyBhcmU6IC0tdGVybS1nb29kfC0tdGVybS1vbGQgYW5kIC0tdGVybS1iYWR8LS10ZXJtLW5ldy4iCittc2dzdHIgIiIKKyInZ2l0IGJpc2VjdCB0ZXJtcycgacOnaW4gZ2XDp2Vyc2l6IGRlxJ9pxZ9rZW4gJXMuXG4iCisiRGVzdGVrbGVuZW4gc2XDp2VuZWtsZXI6IC0tdGVybS1nb29kfC0tdGVybS1vbGQgdmUgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgb3B0aW9uOiAnJXMnIgorbXNnc3RyICJ0YW7EsW1sYW5hbWF5YW4gc2XDp2VuZWs6ICclcyciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYSB2YWxpZCByZXZpc2lvbiIKK21zZ3N0ciAiJyVzJyBnZcOnZXJsaSBiaXIgcmV2aXp5b24gZGXEn2lsIGdpYmkgZ8O2csO8bsO8eW9yIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTE0Cittc2dpZCAiYmFkIEhFQUQgLSBJIG5lZWQgYSBIRUFEIgorbXNnc3RyICJoYXRhbMSxIEhFQUQgLSBCYW5hIGJpciBIRUFEIGdlcmVrIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTI5CisjLCBjLWZvcm1hdAorbXNnaWQgImNoZWNraW5nIG91dCAnJXMnIGZhaWxlZC4gVHJ5ICdnaXQgYmlzZWN0IHN0YXJ0IDx2YWxpZC1icmFuY2g+Jy4iCittc2dzdHIgIiclcycgw6fEsWvEscWfIHlhcMSxbcSxIGJhxZ9hcsSxc8Sxei4gJ2dpdCBiaXNlY3Qgc3RhcnQgPGdlw6dlcmxpLWRhbD4nIGRlbmV5aW4uIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTUwCittc2dpZCAid29uJ3QgYmlzZWN0IG9uIGNnLXNlZWsnZWQgdHJlZSIKK21zZ3N0ciAiY2ctc2VlayB5YXDEsWxtxLHFnyBiaXIgYcSfYcOndGEgaWtpbGkgYXJhbWEgeWFwxLFsbWF5YWNhayIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU1MworbXNnaWQgImJhZCBIRUFEIC0gc3RyYW5nZSBzeW1ib2xpYyByZWYiCittc2dzdHIgImhhdGFsxLEgSEVBRCAtIHR1aGFmIHNlbWJvbGlrIGJhxZ92dXJ1IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTc3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmOiAnJXMnIgorbXNnc3RyICJnZcOnZXJzaXogYmHFn3Z1cnU6ICclcyciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzMKK21zZ2lkICJwZXJmb3JtICdnaXQgYmlzZWN0IG5leHQnIgorbXNnc3RyICInZ2l0IGJpc2VjdCBuZXh0JyBnZXLDp2VrbGXFn3RpciIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzNQorbXNnaWQgIndyaXRlIHRoZSB0ZXJtcyB0byAuZ2l0L0JJU0VDVF9URVJNUyIKK21zZ3N0ciAidGVyaW1sZXJpIC5naXQvQklTRUNUX1RFUk1TIGtvbnVtdW5hIHlheiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzNworbXNnaWQgImNsZWFudXAgdGhlIGJpc2VjdGlvbiBzdGF0ZSIKK21zZ3N0ciAiaWtpbGkgYXJhbWEgZHVydW11bnUgdGVtaXpsZSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzOQorbXNnaWQgImNoZWNrIGZvciBleHBlY3RlZCByZXZzIgorbXNnc3RyICJiZWtsZW5lbiBiYcWfdnVydWxhciBpw6dpbiBkZW5ldGxlIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQxCittc2dpZCAicmVzZXQgdGhlIGJpc2VjdGlvbiBzdGF0ZSIKK21zZ3N0ciAiaWtpbGkgYXJhbWEgZHVydW11bnUgc8SxZsSxcmxhIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQzCittc2dpZCAid3JpdGUgb3V0IHRoZSBiaXNlY3Rpb24gc3RhdGUgaW4gQklTRUNUX0xPRyIKK21zZ3N0ciAiaWtpbGkgYXJhbWEgZHVydW11bnUgQklTRUNUX0xPRyBpw6dpbmUgeWF6IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ1Cittc2dpZCAiY2hlY2sgYW5kIHNldCB0ZXJtcyBpbiBhIGJpc2VjdGlvbiBzdGF0ZSIKK21zZ3N0ciAiYmlyIGlraWxpIGFyYW1hIGR1cnVtdW5kYWtpIHRlcmltbGVyaSBkZW5ldGxlIHZlIGF5YXJsYSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0NworbXNnaWQgImNoZWNrIHdoZXRoZXIgYmFkIG9yIGdvb2QgdGVybXMgZXhpc3QiCittc2dzdHIgIml5aSB2ZXlhIGvDtnTDvCB0ZXJpbWxlcmluIG9sdXAgb2xtYWTEscSfxLFuxLEgZGVuZXRsZSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0OQorbXNnaWQgInByaW50IG91dCB0aGUgYmlzZWN0IHRlcm1zIgorbXNnc3RyICJpa2lsaSBhcmFtYSB0ZXJpbWxlcmluaSB5YXpkxLFyIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUxCittc2dpZCAic3RhcnQgdGhlIGJpc2VjdCBzZXNzaW9uIgorbXNnc3RyICJpa2lsaSBhcmFtYSBvdHVydW11bnUgYmHFn2xhdCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY1MworbXNnaWQgInVwZGF0ZSBCSVNFQ1RfSEVBRCBpbnN0ZWFkIG9mIGNoZWNraW5nIG91dCB0aGUgY3VycmVudCBjb21taXQiCittc2dzdHIgImdlw6dlcmxpIGfDtm5kZXJpeWkgw6fEsWvEscWfIHlhcG1hayB5ZXJpbmUgQklTRUNUX0hFQUQgZ8O8bmNlbGxlIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjU1Cittc2dpZCAibm8gbG9nIGZvciBCSVNFQ1RfV1JJVEUiCittc2dzdHIgIkJJU0VDVF9XUklURSBpw6dpbiBnw7xubMO8ayB5b2siCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NzMKK21zZ2lkICItLXdyaXRlLXRlcm1zIHJlcXVpcmVzIHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0td3JpdGUtdGVybXMgaWtpIGRlxJ9pxZ9rZW4gZ2VyZWt0aXJpeW9yIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njc3Cittc2dpZCAiLS1iaXNlY3QtY2xlYW4tc3RhdGUgcmVxdWlyZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLWJpc2VjdC1jbGVhbi1zdGF0ZSBiaXIgZGXEn2nFn2tlbiBnZXJla3Rpcm1peW9yIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njg0Cittc2dpZCAiLS1iaXNlY3QtcmVzZXQgcmVxdWlyZXMgZWl0aGVyIG5vIGFyZ3VtZW50IG9yIGEgY29tbWl0IgorbXNnc3RyICItLWJpc2VjdC1yZXNldCBiaXIgZGXEn2nFn2tlbiB2ZXlhIGfDtm5kZXJpIGdlcmVrdGlybWl5b3IiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2ODgKK21zZ2lkICItLWJpc2VjdC13cml0ZSByZXF1aXJlcyBlaXRoZXIgNCBvciA1IGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1iaXNlY3Qtd3JpdGUgNCB2ZXlhIDUgZGXEn2nFn2tlbiBnZXJla3Rpcml5b3IiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2OTQKK21zZ2lkICItLWNoZWNrLWFuZC1zZXQtdGVybXMgcmVxdWlyZXMgMyBhcmd1bWVudHMiCittc2dzdHIgIi0tY2hlY2stYW5kLXNldC10ZXJtcyAzIGRlxJ9pxZ9rZW4gZ2VyZWt0aXJpeW9yIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzAwCittc2dpZCAiLS1iaXNlY3QtbmV4dC1jaGVjayByZXF1aXJlcyAyIG9yIDMgYXJndW1lbnRzIgorbXNnc3RyICItLWJpc2VjdC1uZXh0LWNoZWNrIDIgdmV5YSAzIGRlxJ9pxZ9rZW4gZ2VyZWt0aXJpeW9yIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzA2Cittc2dpZCAiLS1iaXNlY3QtdGVybXMgcmVxdWlyZXMgMCBvciAxIGFyZ3VtZW50IgorbXNnc3RyICItLWJpc2VjdC10ZXJtcyAwIHZleWEgMSBkZcSfacWfa2VuIGdlcmVrdGlyaXlvciIKKworIzogYnVpbHRpbi9ibGFtZS5jOjMxCittc2dpZCAiZ2l0IGJsYW1lIFs8b3B0aW9ucz5dIFs8cmV2LW9wdHM+XSBbPHJldj5dIFstLV0gPGZpbGU+IgorbXNnc3RyICJnaXQgYmxhbWUgWzxzZcOnZW5la2xlcj5dIFs8cmV2LXPDp25rPl0gWzxyZXY+XSBbLS1dIDxkb3N5YT4iCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzozNgorbXNnaWQgIjxyZXYtb3B0cz4gYXJlIGRvY3VtZW50ZWQgaW4gZ2l0LXJldi1saXN0KDEpIgorbXNnc3RyICI8cmV2LXPDp25rPiwgZ2l0LXJldi1saXN0KDEpIGnDp2luZGUgYmVsZ2VsZW5kaXJpbG1pxZ90aXIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXhwZWN0aW5nIGEgY29sb3I6ICVzIgorbXNnc3RyICJiaXIgcmVuayBiZWtsZW5peW9yOiAlcyIKKworIzogYnVpbHRpbi9ibGFtZS5jOjQxNgorbXNnaWQgIm11c3QgZW5kIHdpdGggYSBjb2xvciIKK21zZ3N0ciAiYmlyIHJlbmsgaWxlIGJpdG1lbGkiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb2xvciAnJXMnIGluIGNvbG9yLmJsYW1lLnJlcGVhdGVkTGluZXMiCittc2dzdHIgImNvbG9yLmJsYW1lLnJlcGVhdGVkTGluZXMgacOnaW5kZSBnZcOnZXJzaXogcmVuayAnJXMnIgorCisjOiBidWlsdGluL2JsYW1lLmM6NzQ3Cittc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgYmxhbWUuY29sb3JpbmciCittc2dzdHIgImJsYW1lLmNvbG9yaW5nIGnDp2luIGdlw6dlcnNpeiBkZcSfZXIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpbmQgcmV2aXNpb24gJXMgdG8gaWdub3JlIgorbXNnc3RyICJ5b2sgc2F5bWFrIGnDp2luICVzIHJldml6eW9udSBidWx1bmFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDQKK21zZ2lkICJTaG93IGJsYW1lIGVudHJpZXMgYXMgd2UgZmluZCB0aGVtLCBpbmNyZW1lbnRhbGx5IgorbXNnc3RyICJnZW5lbCBiYWvEscWfIGdpcmRpbGVyaW5pIGJ1bGR1a8OnYSBhcnRhbiBiacOnaW1kZSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ1Cittc2dpZCAiU2hvdyBibGFuayBTSEEtMSBmb3IgYm91bmRhcnkgY29tbWl0cyAoRGVmYXVsdDogb2ZmKSIKK21zZ3N0ciAic8SxbsSxciBnw7ZuZGVyaWxlcmkgacOnaW4gYm/FnyBTSEEtMSBnw7ZzdGVyICjDlm50YW7EsW1sxLE6IEthcGFsxLEpIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ2Cittc2dpZCAiRG8gbm90IHRyZWF0IHJvb3QgY29tbWl0cyBhcyBib3VuZGFyaWVzIChEZWZhdWx0OiBvZmYpIgorbXNnc3RyICJrw7ZrIGfDtm5kZXJpbGVyaW5pIHPEsW7EsXIgb2xhcmFrIHZhcnNheW1hICjDlm50YW7EsW1sxLE6IEthcGFsxLEpIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ3Cittc2dpZCAiU2hvdyB3b3JrIGNvc3Qgc3RhdGlzdGljcyIKK21zZ3N0ciAiacWfIG1hbGl5ZXQgaXN0YXRpc3Rpa2xlcmluaSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ4Cittc2dpZCAiRm9yY2UgcHJvZ3Jlc3MgcmVwb3J0aW5nIgorbXNnc3RyICJkdXJ1bSBiaWxkaXJtZXlpIHpvcmxhIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ5Cittc2dpZCAiU2hvdyBvdXRwdXQgc2NvcmUgZm9yIGJsYW1lIGVudHJpZXMiCittc2dzdHIgImdlbmVsIGJha8SxxZ8gZ2lyZGlsZXJpIGnDp2luIMOnxLFrdMSxIHNrb3J1bnUgZ8O2c3RlciIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg1MAorbXNnaWQgIlNob3cgb3JpZ2luYWwgZmlsZW5hbWUgKERlZmF1bHQ6IGF1dG8pIgorbXNnc3RyICJvcmlqaW5hbCBkb3N5YSBhZMSxbsSxIGfDtnN0ZXIgKMOWbnRhbsSxbWzEsTogT3RvbWF0aWspIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODUxCittc2dpZCAiU2hvdyBvcmlnaW5hbCBsaW5lbnVtYmVyIChEZWZhdWx0OiBvZmYpIgorbXNnc3RyICJvcmlqaW5hbCBzYXTEsXIgbnVtYXJhc8SxbsSxIGfDtnN0ZXIgKMOWbnRhbsSxbWzEsTogS2FwYWzEsSkiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTIKK21zZ2lkICJTaG93IGluIGEgZm9ybWF0IGRlc2lnbmVkIGZvciBtYWNoaW5lIGNvbnN1bXB0aW9uIgorbXNnc3RyICJtYWtpbmUgacWfbGVtZXNpIGnDp2luIHRhc2FybGFubcSxxZ8gYmlyIGJpw6dpbWRlIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTMKK21zZ2lkICJTaG93IHBvcmNlbGFpbiBmb3JtYXQgd2l0aCBwZXItbGluZSBjb21taXQgaW5mb3JtYXRpb24iCittc2dzdHIgIm9rdW5hYmlsaXIgYmnDp2ltZGUgaGVyIHNhdMSxciBpw6dpbiBnw7ZuZGVyaSBiaWxnaXNpIGlsZSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODU0Cittc2dpZCAiVXNlIHRoZSBzYW1lIG91dHB1dCBtb2RlIGFzIGdpdC1hbm5vdGF0ZSAoRGVmYXVsdDogb2ZmKSIKK21zZ3N0ciAiZ2l0LWFubm90YXRlIGlsZSBheW7EsSDDp8Sxa3TEsSBraXBpbmkga3VsbGFuICjDlm50YW7EsW1sxLE6IEthcGFsxLEpIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODU1Cittc2dpZCAiU2hvdyByYXcgdGltZXN0YW1wIChEZWZhdWx0OiBvZmYpIgorbXNnc3RyICJoYW0gemFtYW4gZGFtZ2FzxLFuxLEgZ8O2c3RlciAow5ZudGFuxLFtbMSxOiBLYXBhbMSxKSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg1NgorbXNnaWQgIlNob3cgbG9uZyBjb21taXQgU0hBMSAoRGVmYXVsdDogb2ZmKSIKK21zZ3N0ciAidXp1biBnw7ZuZGVyaSBTSEExJ2luaSBnw7ZzdGVyICjDlm50YW7EsW1sxLE6IEthcGFsxLEpIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODU3Cittc2dpZCAiU3VwcHJlc3MgYXV0aG9yIG5hbWUgYW5kIHRpbWVzdGFtcCAoRGVmYXVsdDogb2ZmKSIKK21zZ3N0ciAieWF6YXIgYWTEsW7EsSB2ZSB6YW1hbiBkYW1nYXPEsW7EsSBnaXpsZSAow5ZudGFuxLFtbMSxOiBLYXBhbMSxKSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg1OAorbXNnaWQgIlNob3cgYXV0aG9yIGVtYWlsIGluc3RlYWQgb2YgbmFtZSAoRGVmYXVsdDogb2ZmKSIKK21zZ3N0ciAieWF6YXIgYWTEsSB5ZXJpbmUgZS1wb3N0YXPEsW7EsSBnw7ZzdGVyICjDlm50YW7EsW1sxLE6IEthcGFsxLEpIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODU5Cittc2dpZCAiSWdub3JlIHdoaXRlc3BhY2UgZGlmZmVyZW5jZXMiCittc2dzdHIgImJvxZ9sdWsgYXlyxLFtbGFyxLFuxLEgeW9rIHNheSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MCBidWlsdGluL2xvZy5jOjE3MDIKK21zZ2lkICJyZXYiCittc2dzdHIgInJldml6eW9uIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYwCittc2dpZCAiSWdub3JlIDxyZXY+IHdoZW4gYmxhbWluZyIKK21zZ3N0ciAic3XDp2xhcmtlbiA8cmV2aXp5b24+J3UgeW9rIHNheSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MQorbXNnaWQgIklnbm9yZSByZXZpc2lvbnMgZnJvbSA8ZmlsZT4iCittc2dzdHIgIjxkb3N5YT4nZGFuIG9sYW4gcmV2aXp5b25sYXLEsSB5b2sgc2F5IgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYyCittc2dpZCAiY29sb3IgcmVkdW5kYW50IG1ldGFkYXRhIGZyb20gcHJldmlvdXMgbGluZSBkaWZmZXJlbnRseSIKK21zZ3N0ciAiYmlyIMO2bmNla2kgZG9zeWFkYW4gZ2VyZWtzaXogw7xzdHZlcml5aSBiYcWfa2EgYmnDp2ltZGUgcmVua2xlbmRpciIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MworbXNnaWQgImNvbG9yIGxpbmVzIGJ5IGFnZSIKK21zZ3N0ciAic2F0xLFybGFyxLEgeWHFn8SxbmEgZ8O2cmUgcmVua2xlbmRpciIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2NAorbXNnaWQgIlNwZW5kIGV4dHJhIGN5Y2xlcyB0byBmaW5kIGJldHRlciBtYXRjaCIKK21zZ3N0ciAiZGFoYSBpeWkgZcWfbGXFn21lIGJ1bG1hayBpw6dpbiBlayBkw7ZuZ8O8bGVyIGhhcmNhIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODY1Cittc2dpZCAiVXNlIHJldmlzaW9ucyBmcm9tIDxmaWxlPiBpbnN0ZWFkIG9mIGNhbGxpbmcgZ2l0LXJldi1saXN0IgorbXNnc3RyICJnaXQtcmV2LWxpc3Qgw6dhxJ/EsXJtYSB5ZXJpbmUgPGRvc3lhPidkYW4gb2xhbiByZXZpenlvbmxhcsSxIGt1bGxhbiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2NgorbXNnaWQgIlVzZSA8ZmlsZT4ncyBjb250ZW50cyBhcyB0aGUgZmluYWwgaW1hZ2UiCittc2dzdHIgIjxkb3N5YT4nbsSxbiBpw6dlcmnEn2luaSBzb24gZ8O2csO8bnTDvCBvbGFyYWsga3VsbGFuIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODY3IGJ1aWx0aW4vYmxhbWUuYzo4NjgKK21zZ2lkICJzY29yZSIKK21zZ3N0ciAic2tvciIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2NworbXNnaWQgIkZpbmQgbGluZSBjb3BpZXMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCittc2dzdHIgInNhdMSxciBrb3B5YWxhcsSxbsSxIGRvc3lhbGFyIGnDp2luZGUgdmUgYXJhc8SxbmRhIGFyYSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2OAorbXNnaWQgIkZpbmQgbGluZSBtb3ZlbWVudHMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCittc2dzdHIgInNhdMSxciBoYXJla2V0bGVyaW5pIGRvc3lhbGFyIGnDp2luZGUgdmUgYXJhc8SxbmRhIGFyYSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2OQorbXNnaWQgIm4sbSIKK21zZ3N0ciAibixtIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODY5Cittc2dpZCAiUHJvY2VzcyBvbmx5IGxpbmUgcmFuZ2UgbixtLCBjb3VudGluZyBmcm9tIDEiCittc2dzdHIgIjEnZGVuIHNheW1heWEgYmHFn2xheWFyYWsgeWFsbsSxemNhIG4sbSBzYXTEsXIgYXJhbMSxxJ/EsW7EsSBpxZ9sZSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjkyMQorbXNnaWQgIi0tcHJvZ3Jlc3MgY2FuJ3QgYmUgdXNlZCB3aXRoIC0taW5jcmVtZW50YWwgb3IgcG9yY2VsYWluIGZvcm1hdHMiCittc2dzdHIgIi0tcHJvZ3Jlc3MsIC0taW5jcmVtZW50YWwgdmV5YSBva3VuYWJpbGlyIGJpw6dpbWxlcmxlIGt1bGxhbsSxbGFtYXoiCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIHN0cmluZyBpcyB1c2VkIHRvIHRlbGwgdXMgdGhlCisjLiBtYXhpbXVtIGRpc3BsYXkgd2lkdGggZm9yIGEgcmVsYXRpdmUgdGltZXN0YW1wIGluCisjLiAiZ2l0IGJsYW1lIiBvdXRwdXQuICBGb3IgQyBsb2NhbGUsICI0IHllYXJzLCAxMQorIy4gbW9udGhzIGFnbyIsIHdoaWNoIHRha2VzIDIyIHBsYWNlcywgaXMgdGhlIGxvbmdlc3QKKyMuIGFtb25nIHZhcmlvdXMgZm9ybXMgb2YgcmVsYXRpdmUgdGltZXN0YW1wcywgYnV0CisjLiB5b3VyIGxhbmd1YWdlIG1heSBuZWVkIG1vcmUgb3IgZmV3ZXIgZGlzcGxheQorIy4gY29sdW1ucy4KKyMuCisjOiBidWlsdGluL2JsYW1lLmM6OTcyCittc2dpZCAiNCB5ZWFycywgMTEgbW9udGhzIGFnbyIKK21zZ3N0ciAiNCB5xLFsIDExIGF5IMO2bmNlIgorCisjOiBidWlsdGluL2JsYW1lLmM6MTA3OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlICVzIGhhcyBvbmx5ICVsdSBsaW5lIgorbXNnaWRfcGx1cmFsICJmaWxlICVzIGhhcyBvbmx5ICVsdSBsaW5lcyIKK21zZ3N0clswXSAiJXMgZG9zeWFzxLFuZGEgeWFsbsSxemNhICVsdSBzYXTEsXIgdmFyIgorbXNnc3RyWzFdICIlcyBkb3N5YXPEsW5kYSB5YWxuxLF6Y2EgJWx1IHNhdMSxciB2YXIiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzoxMTI1Cittc2dpZCAiQmxhbWluZyBsaW5lcyIKK21zZ3N0ciAiR2VuZWwgYmFrxLHFnyBzYXTEsXJsYXLEsSIKKworIzogYnVpbHRpbi9icmFuY2guYzoyOQorbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1yIHwgLWFdIFstLW1lcmdlZCB8IC0tbm8tbWVyZ2VkXSIKK21zZ3N0ciAiZ2l0IGJyYW5jaCBbPHNlw6dlbmVrbGVyPl0gWy1yIHwgLWFdIFstLW1lcmdlZCB8IC0tbm8tbWVyZ2VkXSIKKworIzogYnVpbHRpbi9icmFuY2guYzozMAorbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1sXSBbLWZdIDxicmFuY2gtbmFtZT4gWzxzdGFydC1wb2ludD5dIgorbXNnc3RyICJnaXQgYnJhbmNoIFs8c2XDp2VuZWtsZXI+XSBbLWxdIFstZl0gPGRhbC1hZMSxPiBbPGJhxZ9sYW1hLW5va3Rhc8SxPl0iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MzEKK21zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstcl0gKC1kIHwgLUQpIDxicmFuY2gtbmFtZT4uLi4iCittc2dzdHIgImdpdCBicmFuY2ggWzxzZcOnZW5la2xlcj5dIFstcl0gKC1kIHwgLUQpIDxkYWwtYWTEsT4uLi4iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MzIKK21zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dICgtbSB8IC1NKSBbPG9sZC1icmFuY2g+XSA8bmV3LWJyYW5jaD4iCittc2dzdHIgImdpdCBicmFuY2ggWzxzZcOnZW5la2xlcj5dICgtbSB8IC1NKSBbPGVza2ktZGFsPl0gPHllbmktZGFsPiIKKworIzogYnVpbHRpbi9icmFuY2guYzozMworbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gKC1jIHwgLUMpIFs8b2xkLWJyYW5jaD5dIDxuZXctYnJhbmNoPiIKK21zZ3N0ciAiZ2l0IGJyYW5jaCBbPHNlw6dlbmVrbGVyPl0gKC1jIHwgLUMpIFs8ZXNraS1kYWw+XSA8eWVuaS1kYWw+IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjM0Cittc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSBbLXIgfCAtYV0gWy0tcG9pbnRzLWF0XSIKK21zZ3N0ciAiZ2l0IGJyYW5jaCBbPHNlw6dlbmVrbGVyPl0gWy1yIHwgLWFdIFstLXBvaW50cy1hdF0iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MzUKK21zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstciB8IC1hXSBbLS1mb3JtYXRdIgorbXNnc3RyICJnaXQgYnJhbmNoIFs8c2XDp2VuZWtsZXI+XSBbLXIgfCAtYV0gWy0tZm9ybWF0XSIKKworIzogYnVpbHRpbi9icmFuY2guYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRlbGV0aW5nIGJyYW5jaCAnJXMnIHRoYXQgaGFzIGJlZW4gbWVyZ2VkIHRvXG4iCisiICAgICAgICAgJyVzJywgYnV0IG5vdCB5ZXQgbWVyZ2VkIHRvIEhFQUQuIgorbXNnc3RyICIiCisiJyVzJyBkYWzEsSBzaWxpbml5b3I6IEJ1IGRhbCAnJXMnXG4iCisiICAgICAgICAgZGFsxLFuYSBiaXJsZcWfdGlyaWxtacWfLCBhbmNhayBIRUFEJ2UgaGVuw7x6IGJpcmxlxZ90aXJpbG1lbWnFnyIKKworIzogYnVpbHRpbi9icmFuY2guYzoxNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm5vdCBkZWxldGluZyBicmFuY2ggJyVzJyB0aGF0IGlzIG5vdCB5ZXQgbWVyZ2VkIHRvXG4iCisiICAgICAgICAgJyVzJywgZXZlbiB0aG91Z2ggaXQgaXMgbWVyZ2VkIHRvIEhFQUQuIgorbXNnc3RyICIiCisiJyVzJyBkYWzEsSBzaWxpbm1peW9yOiBCdSBkYWwgSEVBRCdlIGJpcmxlxZ90aXJpbG1pxZ8gb2xtYXPEsW5hIHJhxJ9tZW5cbiIKKyIgICAgICAgICAnJXMnIGRhbMSxbmEgYmlybGXFn3RpcmlsbWVtacWfLiIKKworIzogYnVpbHRpbi9icmFuY2guYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGRuJ3QgbG9vayB1cCBjb21taXQgb2JqZWN0IGZvciAnJXMnIgorbXNnc3RyICInJXMnIGnDp2luIGfDtm5kZXJpIG5lc25lc2kgYXJhbmFtYWTEsSIKKworIzogYnVpbHRpbi9icmFuY2guYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBicmFuY2ggJyVzJyBpcyBub3QgZnVsbHkgbWVyZ2VkLlxuIgorIklmIHlvdSBhcmUgc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgaXQsIHJ1biAnZ2l0IGJyYW5jaCAtRCAlcycuIgorbXNnc3RyICIiCisiJyVzJyBkYWzEsSB0w7xtw7x5bGUgYmlybGXFn3RpcmlsbWVtacWfLlxuIgorIkXEn2VyIHNpbG1layBpc3RlZGnEn2luaXpkZW4gZW1pbnNlbml6ICdnaXQgYnJhbmNoIC1EICVzJyDDp2FsxLHFn3TEsXLEsW4uIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjE4OQorbXNnaWQgIlVwZGF0ZSBvZiBjb25maWctZmlsZSBmYWlsZWQiCittc2dzdHIgImNvbmZpZy1maWxlIGfDvG5jZWxsZW1lc2kgYmHFn2FyxLFzxLF6IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjIyMAorbXNnaWQgImNhbm5vdCB1c2UgLWEgd2l0aCAtZCIKK21zZ3N0ciAiLWEsIC1kIGlsZSBrdWxsYW7EsWxhbcSxeW9yIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjIyNgorbXNnaWQgIkNvdWxkbid0IGxvb2sgdXAgY29tbWl0IG9iamVjdCBmb3IgSEVBRCIKK21zZ3N0ciAiSEVBRCBpw6dpbiBnw7ZuZGVyaSBuZXNuZXNpIGFyYW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjQwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBkZWxldGUgYnJhbmNoICclcycgY2hlY2tlZCBvdXQgYXQgJyVzJyIKK21zZ3N0ciAixZ51cmFkYSDDp8Sxa8SxxZ8geWFwxLFsbcSxxZ8gJyVzJyBkYWzEsSBzaWxpbmVtaXlvcjogJyVzJyIKKworIzogYnVpbHRpbi9icmFuY2guYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlLXRyYWNraW5nIGJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCittc2dzdHIgInV6YWsgaXpsZW1lIGRhbMSxICclcycgYnVsdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgImJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCittc2dzdHIgIiclcycgZGFsxLEgYnVsdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVycm9yIGRlbGV0aW5nIHJlbW90ZS10cmFja2luZyBicmFuY2ggJyVzJyIKK21zZ3N0ciAiVXphayBpemxlbWUgZGFsxLEgJyVzJyBzaWxpbmlya2VuIGhhdGEiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkVycm9yIGRlbGV0aW5nIGJyYW5jaCAnJXMnIgorbXNnc3RyICInJXMnIGRhbMSxIHNpbGluaXJrZW4gaGF0YSIKKworIzogYnVpbHRpbi9icmFuY2guYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICVzICh3YXMgJXMpLlxuIgorbXNnc3RyICJVemFrIGl6bGVtZSBkYWzEsSAlcyBzaWxpbmRpICglcyBpZGkpLlxuIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjI4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkIGJyYW5jaCAlcyAod2FzICVzKS5cbiIKK21zZ3N0ciAiJXMgZGFsxLEgc2lsaW5kaSAoJXMgaWRpKS5cbiIKKworIzogYnVpbHRpbi9icmFuY2guYzo0MjkgYnVpbHRpbi90YWcuYzo2MQorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBmb3JtYXQgc3RyaW5nIgorbXNnc3RyICJiacOnaW0gZGl6aXNpIGF5csSxxZ90xLFyxLFsYW3EsXlvciIKKworIzogYnVpbHRpbi9icmFuY2guYzo0NjAKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIgorbXNnc3RyICJIRUFEIMOnw7Z6w7xsZW1lZGkiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDY2CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgKCVzKSBwb2ludHMgb3V0c2lkZSBvZiByZWZzL2hlYWRzLyIKK21zZ3N0ciAiSEVBRCAoJXMpLCByZWZzL2hlYWRzLyBkxLHFn8SxbmEgacWfYXJldCBlZGl5b3IiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAlcyBpcyBiZWluZyByZWJhc2VkIGF0ICVzIgorbXNnc3RyICIlcyBkYWzEsSAlcyBrb251bXVuZGEgeWVuaWRlbiB0ZW1lbGxlbmRpcmlsaXlvciIKKworIzogYnVpbHRpbi9icmFuY2guYzo0ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICVzIGlzIGJlaW5nIGJpc2VjdGVkIGF0ICVzIgorbXNnc3RyICIlcyBkYWzEsSAlcyBrb251bXVuZGEgaWtpbGkgYXJhbsSxeW9yIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjUwMgorbXNnaWQgImNhbm5vdCBjb3B5IHRoZSBjdXJyZW50IGJyYW5jaCB3aGlsZSBub3Qgb24gYW55LiIKK21zZ3N0ciAiYmlyIGRhbMSxbiDDvHplcmluZGUgZGXEn2lsa2VuIGdlw6dlcmxpIGRhbCBrb3B5YWxhbmFtYXoiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTA0Cittc2dpZCAiY2Fubm90IHJlbmFtZSB0aGUgY3VycmVudCBicmFuY2ggd2hpbGUgbm90IG9uIGFueS4iCittc2dzdHIgImJpciBkYWzEsW4gw7x6ZXJpbmRlIGRlxJ9pbGtlbiBnZcOnZXJsaSBkYWwgeWVuaWRlbiBhZGxhbmTEsXLEsWxhbWF6IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjUxNQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGJyYW5jaCBuYW1lOiAnJXMnIgorbXNnc3RyICJHZcOnZXJzaXogZGFsIGFkxLE6ICclcyciCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQyCittc2dpZCAiQnJhbmNoIHJlbmFtZSBmYWlsZWQiCittc2dzdHIgIkRhbCB5ZW5pZGVuIGFkbGFuZMSxcm1hc8SxIGJhxZ9hcsSxc8SxeiIKKworIzogYnVpbHRpbi9icmFuY2guYzo1NDQKK21zZ2lkICJCcmFuY2ggY29weSBmYWlsZWQiCittc2dzdHIgIkRhbCBrb3B5YWxhbWFzxLEgYmHFn2FyxLFzxLF6IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjU0OAorIywgYy1mb3JtYXQKK21zZ2lkICJDcmVhdGVkIGEgY29weSBvZiBhIG1pc25hbWVkIGJyYW5jaCAnJXMnIgorbXNnc3RyICJZYW5sxLHFnyBhZGxhbmTEsXLEsWxhbiAnJXMnIGRhbMSxbsSxbiBiaXIga29weWFzxLEgb2x1xZ90dXJ1bGR1IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjU1MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW5hbWVkIGEgbWlzbmFtZWQgYnJhbmNoICclcycgYXdheSIKK21zZ3N0ciAiWWFubMSxxZ8gYWRsYW5kxLFyxLFsYW4gJyVzJyBkYWzEsSB5ZW5pZGVuIGFkbGFuZMSxcsSxbGTEsSIKKworIzogYnVpbHRpbi9icmFuY2guYzo1NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoIHJlbmFtZWQgdG8gJXMsIGJ1dCBIRUFEIGlzIG5vdCB1cGRhdGVkISIKK21zZ3N0ciAiRGFsICVzIG9sYXJhayB5ZW5pZGVuIGFkbGFuZMSxcsSxbGTEsSwgYW5jYWsgSEVBRCBnw7xuY2VsbGVubWVkaSEiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTY2Cittc2dpZCAiQnJhbmNoIGlzIHJlbmFtZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgorbXNnc3RyICJEYWwgeWVuaWRlbiBhZGxhbmTEsXLEsWxkxLEsIGFuY2FrIGNvbmZpZy1maWxlIGfDvG5jZWxsZW1lc2kgYmHFn2FyxLFzxLF6IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjU2OAorbXNnaWQgIkJyYW5jaCBpcyBjb3BpZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgorbXNnc3RyICJEYWwga29weWFsYW5kxLEsIGFuY2FrIGNvbmZpZy1maWxlIGfDvG5jZWxsZW1lc2kgYmHFn2FyxLFzxLF6IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjU4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGxlYXNlIGVkaXQgdGhlIGRlc2NyaXB0aW9uIGZvciB0aGUgYnJhbmNoXG4iCisiICAlc1xuIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIHN0cmlwcGVkLlxuIgorbXNnc3RyICIiCisiTMO8dGZlbiBkYWwgYcOnxLFrbGFtYXPEsW7EsSBkw7x6ZW5sZXlpbjpcbiIKKyJcdCVzXG4iCisiJyVjJyBpbGUgYmHFn2xheWFuIHNhdMSxcmxhciDDp8Sxa2FyxLFsYWNha3TEsXIuXG4iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjE4Cittc2dpZCAiR2VuZXJpYyBvcHRpb25zIgorbXNnc3RyICJHZW5lbCBzZcOnZW5la2xlciIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MjAKK21zZ2lkICJzaG93IGhhc2ggYW5kIHN1YmplY3QsIGdpdmUgdHdpY2UgZm9yIHVwc3RyZWFtIGJyYW5jaCIKK21zZ3N0ciAic2HEn2xhbWF5xLEgdmUga29udXl1IGfDtnN0ZXIsIMO8c3RrYXluYWsgZGFsxLEgacOnaW4gaWtpIGtleiB2ZXIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIxCittc2dpZCAic3VwcHJlc3MgaW5mb3JtYXRpb25hbCBtZXNzYWdlcyIKK21zZ3N0ciAiYmlsZ2kgaWxldGlsZXJpbmkgZ2l6bGUiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIyCittc2dpZCAic2V0IHVwIHRyYWNraW5nIG1vZGUgKHNlZSBnaXQtcHVsbCgxKSkiCittc2dzdHIgIml6bGVtZSBraXBpbmkgYXlhcmxhIChiaWxnaSBpw6dpbjogZ2l0LXB1bGwoMSkpIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNAorbXNnaWQgImRvIG5vdCB1c2UiCittc2dzdHIgImt1bGxhbm1hIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNiBidWlsdGluL3JlYmFzZS5jOjUxMworbXNnaWQgInVwc3RyZWFtIgorbXNnc3RyICLDvHN0a2F5bmFrIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNgorbXNnaWQgImNoYW5nZSB0aGUgdXBzdHJlYW0gaW5mbyIKK21zZ3N0ciAiw7xzdGtheW5hayBiaWxnaXNpbmkgZGXEn2nFn3RpciIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MjcKK21zZ2lkICJ1bnNldCB0aGUgdXBzdHJlYW0gaW5mbyIKK21zZ3N0ciAiw7xzdGtheW5hayBiaWxnaXNpbmkga2FsZMSxciIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MjgKK21zZ2lkICJ1c2UgY29sb3JlZCBvdXRwdXQiCittc2dzdHIgInJlbmtsZW5kaXJpbG1pxZ8gw6fEsWt0xLEga3VsbGFuIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyOQorbXNnaWQgImFjdCBvbiByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMiCittc2dzdHIgInV6YWsgaXpsZXllbiBkYWxsYXJkYSBpxZ8geWFwIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYzMSBidWlsdGluL2JyYW5jaC5jOjYzMworbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBjb250YWluIHRoZSBjb21taXQiCittc2dzdHIgInlhbG7EsXpjYSBnw7ZuZGVyaXlpIGnDp2VyZW4gZGFsbGFyxLEgeWF6ZMSxciIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MzIgYnVpbHRpbi9icmFuY2guYzo2MzQKK21zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgorbXNnc3RyICJ5YWxuxLF6Y2EgZ8O2bmRlcml5aSBpw6dlcm1leWVuIGRhbGxhcsSxIHlhemTEsXIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM3Cittc2dpZCAiU3BlY2lmaWMgZ2l0LWJyYW5jaCBhY3Rpb25zOiIKK21zZ3N0ciAiw5Z6ZWwgZ2l0LWJyYW5jaCBleWxlbWxlcmk6IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYzOAorbXNnaWQgImxpc3QgYm90aCByZW1vdGUtdHJhY2tpbmcgYW5kIGxvY2FsIGJyYW5jaGVzIgorbXNnc3RyICJoZW0gdXphayBpemxleWVuIGhlbSBkZSB5ZXJlbCBkYWxsYXLEsSBsaXN0ZWxlIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0MAorbXNnaWQgImRlbGV0ZSBmdWxseSBtZXJnZWQgYnJhbmNoIgorbXNnc3RyICJ0w7xtw7x5bGUgYmlybGXFn3RpcmlsZW4gZGFsxLEgc2lsIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0MQorbXNnaWQgImRlbGV0ZSBicmFuY2ggKGV2ZW4gaWYgbm90IG1lcmdlZCkiCittc2dzdHIgImRhbMSxIHNpbCAoYmlybGXFn3RpcmlsbWVtacWfIG9sc2EgYmlsZSkiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQyCittc2dpZCAibW92ZS9yZW5hbWUgYSBicmFuY2ggYW5kIGl0cyByZWZsb2ciCittc2dzdHIgImJpciBkYWzEsSB2ZSBvbnVuIGJhxZ92dXJ1IGfDvG5sw7zEn8O8bsO8IHRhxZ/EsS95ZW5pZGVuIGFkbGFuZMSxciIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDMKK21zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCwgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgorbXNnc3RyICJiaXIgZGFsxLEgdGHFn8SxL3llbmlkZW4gYWRsYW5kxLFyLCBoZWRlZiB2YXIgb2xzYSBiaWxlIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NAorbXNnaWQgImNvcHkgYSBicmFuY2ggYW5kIGl0cyByZWZsb2ciCittc2dzdHIgImJpciBkYWzEsSB2ZSBvbnVuIGJhxZ92dXJ1IGfDvG5sw7zEn8O8bsO8IGtvcHlhbGEiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ1Cittc2dpZCAiY29weSBhIGJyYW5jaCwgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgorbXNnc3RyICJiaXIgZGFsxLEga29weWFsYSwgaGVkZWYgdmFyIG9sc2EgYmlsZSIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDYKK21zZ2lkICJsaXN0IGJyYW5jaCBuYW1lcyIKK21zZ3N0ciAiZGFsIGFkbGFyxLFuxLEgbGlzdGVsZSIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDcKK21zZ2lkICJzaG93IGN1cnJlbnQgYnJhbmNoIG5hbWUiCittc2dzdHIgImdlw6dlcmxpIGRhbCBhZMSxbsSxIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ4Cittc2dpZCAiY3JlYXRlIHRoZSBicmFuY2gncyByZWZsb2ciCittc2dzdHIgImRhbMSxbiBiYcWfdnVydSBnw7xubMO8xJ/DvG7DvCBvbHXFn3R1ciIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NTAKK21zZ2lkICJlZGl0IHRoZSBkZXNjcmlwdGlvbiBmb3IgdGhlIGJyYW5jaCIKK21zZ3N0ciAiZGFsxLFuIGHDp8Sxa2xhbWFzxLFuxLEgZMO8emVubGUiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUxCittc2dpZCAiZm9yY2UgY3JlYXRpb24sIG1vdmUvcmVuYW1lLCBkZWxldGlvbiIKK21zZ3N0ciAiem9ybGEgb2x1xZ90dXIsIHRhxZ/EsS95ZW5pZGVuIGFkbGFuZMSxciwgc2lsIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY1MgorbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBhcmUgbWVyZ2VkIgorbXNnc3RyICJ5YWxuxLF6Y2EgYmlybGXFn3RpcmlsZW4gZGFsbGFyxLEgeWF6ZMSxciIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NTMKK21zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCittc2dzdHIgInlhbG7EsXpjYSBiaXJsZcWfdGlyaWxtZXllbiBkYWxsYXLEsSB5YXpkxLFyIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY1NAorbXNnaWQgImxpc3QgYnJhbmNoZXMgaW4gY29sdW1ucyIKK21zZ3N0ciAiZGFsbGFyxLEgc8O8dHVubGFybGEgbGlzdGVsZSIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NTcgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MiBidWlsdGluL25vdGVzLmM6NDE1CisjOiBidWlsdGluL25vdGVzLmM6NDE4IGJ1aWx0aW4vbm90ZXMuYzo1ODEgYnVpbHRpbi9ub3Rlcy5jOjU4NAorIzogYnVpbHRpbi90YWcuYzo0MzMKK21zZ2lkICJvYmplY3QiCittc2dzdHIgIm5lc25lIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY1OAorbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgb2YgdGhlIG9iamVjdCIKK21zZ3N0ciAieWFsbsSxemNhIG5lc25lbmluIGRhbGxhcsSxbsSxIHlhemTEsXIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjYwIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDggYnVpbHRpbi90YWcuYzo0NDAKK21zZ2lkICJzb3J0aW5nIGFuZCBmaWx0ZXJpbmcgYXJlIGNhc2UgaW5zZW5zaXRpdmUiCittc2dzdHIgInPEsXJhbGFtYSB2ZSBzw7x6bWUgQsOcWcOcSy9rw7zDp8O8ayBoYXJmIGR1eWFybMSxIGRlxJ9pbGRpciIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NjEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOCBidWlsdGluL3RhZy5jOjQzOAorIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzgKK21zZ2lkICJmb3JtYXQgdG8gdXNlIGZvciB0aGUgb3V0cHV0IgorbXNnc3RyICLDp8Sxa3TEsSBpw6dpbiBrdWxsYW7EsWxhY2FrIGJpw6dpbSIKKworIzogYnVpbHRpbi9icmFuY2guYzo2ODQgYnVpbHRpbi9jbG9uZS5jOjc4NQorbXNnaWQgIkhFQUQgbm90IGZvdW5kIGJlbG93IHJlZnMvaGVhZHMhIgorbXNnc3RyICJIRUFELCByZWZzL2hlYWRzIGFsdMSxbmRhIGJ1bHVuYW1hZMSxISIKKworIzogYnVpbHRpbi9icmFuY2guYzo3MDgKK21zZ2lkICItLWNvbHVtbiBhbmQgLS12ZXJib3NlIGFyZSBpbmNvbXBhdGlibGUiCittc2dzdHIgIi0tY29sdW1uIHZlIC0tdmVyYm9zZSBiaXJiaXJpeWxlIHV5dW1zdXoiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzIzIGJ1aWx0aW4vYnJhbmNoLmM6Nzc3IGJ1aWx0aW4vYnJhbmNoLmM6Nzg2Cittc2dpZCAiYnJhbmNoIG5hbWUgcmVxdWlyZWQiCittc2dzdHIgImRhbCBhZMSxIGdlcmVrbGkiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzUzCittc2dpZCAiQ2Fubm90IGdpdmUgZGVzY3JpcHRpb24gdG8gZGV0YWNoZWQgSEVBRCIKK21zZ3N0ciAiQXlyxLFsbcSxxZ8gSEVBRCdlIGHDp8Sxa2xhbWEgdmVyaWxlbWl5b3IiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzU4Cittc2dpZCAiY2Fubm90IGVkaXQgZGVzY3JpcHRpb24gb2YgbW9yZSB0aGFuIG9uZSBicmFuY2giCittc2dzdHIgImJpcmRlbiDDp29rIGRhbMSxbiBhw6fEsWtsYW1hc8SxIGTDvHplbmxlbmVtaXlvciIKKworIzogYnVpbHRpbi9icmFuY2guYzo3NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gY29tbWl0IG9uIGJyYW5jaCAnJXMnIHlldC4iCittc2dzdHIgIiclcycgZGFsxLFuZGEgaGVuw7x6IGJpciBnw7ZuZGVyaSB5b2suIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjc2OAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBicmFuY2ggbmFtZWQgJyVzJy4iCittc2dzdHIgIiclcycgYWTEsW5kYSBiaXIgZGFsIHlvay4iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzgzCittc2dpZCAidG9vIG1hbnkgYnJhbmNoZXMgZm9yIGEgY29weSBvcGVyYXRpb24iCittc2dzdHIgImJpciBrb3B5YWxhbWEgacWfbGVtaSBpw6dpbiDDp29rIGZhemxhIGRhbCIKKworIzogYnVpbHRpbi9icmFuY2guYzo3OTIKK21zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgZm9yIGEgcmVuYW1lIG9wZXJhdGlvbiIKK21zZ3N0ciAiYmlyIHllbmlkZW4gYWRsYW5kxLFybWEgacWfbGVtaSBpw6dpbiDDp29rIGZhemxhIGRlxJ9pxZ9rZW4iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzk3Cittc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIHRvIHNldCBuZXcgdXBzdHJlYW0iCittc2dzdHIgInllbmkgw7xzdGtheW5hayBheWFybGFtYWsgacOnaW4gw6dvayBmYXpsYSBkZcSfacWfa2VuIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjgwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY291bGQgbm90IHNldCB1cHN0cmVhbSBvZiBIRUFEIHRvICVzIHdoZW4gaXQgZG9lcyBub3QgcG9pbnQgdG8gYW55IGJyYW5jaC4iCittc2dzdHIgIiIKKyJIRUFEJ2luIMO8c3Qga2F5bmHEn8SxICVzIG9sYXJhayBheWFybGFuYW1hZMSxLCDDp8O8bmvDvCBoZXJoYW5naSBiaXIgZGFsYSBpxZ9hcmV0ICIKKyJldG1peW9yLiIKKworIzogYnVpbHRpbi9icmFuY2guYzo4MDQgYnVpbHRpbi9icmFuY2guYzo4MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCBicmFuY2ggJyVzJyIKK21zZ3N0ciAiJyVzJyBkaXllIGJpciBkYWwgeW9rIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjgwOAorIywgYy1mb3JtYXQKK21zZ2lkICJicmFuY2ggJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiJyVzJyBkaXllIGJpciBkYWwgbWV2Y3V0IGRlxJ9pbCIKKworIzogYnVpbHRpbi9icmFuY2guYzo4MjEKK21zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgdG8gdW5zZXQgdXBzdHJlYW0iCittc2dzdHIgIsO8c3Qga2F5bmHEn8SxIGthbGTEsXJtYWsgacOnaW4gw6dvayBmYXpsYSBkZcSfacWfa2VuIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjgyNQorbXNnaWQgImNvdWxkIG5vdCB1bnNldCB1cHN0cmVhbSBvZiBIRUFEIHdoZW4gaXQgZG9lcyBub3QgcG9pbnQgdG8gYW55IGJyYW5jaC4iCittc2dzdHIgIiIKKyJIRUFEJ2luIMO8c3Qga2F5bmHEn8SxIGthbGTEsXLEsWxhbWFkxLEsIMOnw7xua8O8IGhlcmhhbmdpIGJpciBkYWxhIGnFn2FyZXQgZXRtaXlvci4iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODMxCisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIGhhcyBubyB1cHN0cmVhbSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiJyVzJyBkYWzEsW7EsW4gw7xzdGtheW5hayBiaWxnaXNpIHlvayIKKworIzogYnVpbHRpbi9icmFuY2guYzo4NDEKK21zZ2lkICIiCisiVGhlIC1hLCBhbmQgLXIsIG9wdGlvbnMgdG8gJ2dpdCBicmFuY2gnIGRvIG5vdCB0YWtlIGEgYnJhbmNoIG5hbWUuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHVzZTogLWF8LXIgLS1saXN0IDxwYXR0ZXJuPj8iCittc2dzdHIgIiIKKyInZ2l0IGJyYW5jaCdpbiAtYSB2ZSAtciBzZcOnZW5la2xlcmkgYmlyIGRhbCBhZMSxIGFsbWF6LlxuIgorIsWedW51IG11IGRlbWVrIGlzdGVkaW5pejogLWF8LXIgLS1saXN0IDxkaXpnaT4/IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjg0NQorbXNnaWQgIiIKKyJ0aGUgJy0tc2V0LXVwc3RyZWFtJyBvcHRpb24gaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZC4gUGxlYXNlIHVzZSAnLS10cmFjaycgb3IgIgorIictLXNldC11cHN0cmVhbS10bycgaW5zdGVhZC4iCittc2dzdHIgIiIKKyItLXNldC11cHN0cmVhbSBzZcOnZW5lxJ9pIGFydMSxayBkZXN0ZWtsZW5taXlvci4gTMO8dGZlbiAtLXRyYWNrIHZleWEgLS1zZXQtIgorInVwc3RyZWFtLXRvIGt1bGxhbsSxbi4iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTUgYnVpbHRpbi9idW5kbGUuYzoyMworbXNnaWQgImdpdCBidW5kbGUgY3JlYXRlIFs8b3B0aW9ucz5dIDxmaWxlPiA8Z2l0LXJldi1saXN0IGFyZ3M+IgorbXNnc3RyICJnaXQgYnVuZGxlIGNyZWF0ZSBbPHNlw6dlbmVrbGVyPl0gPGRvc3lhPiA8Z2l0LXJldi1saXN0ZSBkZcSfacWfa2VubGVyPiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxNiBidWlsdGluL2J1bmRsZS5jOjI4Cittc2dpZCAiZ2l0IGJ1bmRsZSB2ZXJpZnkgWzxvcHRpb25zPl0gPGZpbGU+IgorbXNnc3RyICJnaXQgYnVuZGxlIHZlcmlmeSBbPHNlw6dlbmVrbGVyPl0gPGRvc3lhPiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxNyBidWlsdGluL2J1bmRsZS5jOjMzCittc2dpZCAiZ2l0IGJ1bmRsZSBsaXN0LWhlYWRzIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSBsaXN0LWhlYWRzIDxkb3N5YT4gWzxiYcWfdnVydS1hZMSxPi4uLl0iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTggYnVpbHRpbi9idW5kbGUuYzozOAorbXNnaWQgImdpdCBidW5kbGUgdW5idW5kbGUgPGZpbGU+IFs8cmVmbmFtZT4uLi5dIgorbXNnc3RyICJnaXQgYnVuZGxlIHVuYnVuZGxlIDxkb3N5YT4gWzxiYcWfdnVydS1hZMSxPi4uLl0iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NjYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzc1Cittc2dpZCAiZG8gbm90IHNob3cgcHJvZ3Jlc3MgbWV0ZXIiCittc2dzdHIgImlsZXJsZW1lIMOndWJ1xJ91bnUgZ8O2c3Rlcm1lIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjY4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM3NworbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIiCittc2dzdHIgImlsZXJsZW1lIMOndWJ1xJ91bnUgZ8O2c3RlciIKKworIzogYnVpbHRpbi9idW5kbGUuYzo3MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzkKK21zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKK21zZ3N0ciAiaWxlcmxlbWUgw6d1YnXEn3VudSBuZXNuZSB5YXrEsW3EsSBhxZ9hbWFzxLEgc8SxcmFzxLFuZGEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9idW5kbGUuYzo3MyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODIKK21zZ2lkICJzaW1pbGFyIHRvIC0tYWxsLXByb2dyZXNzIHdoZW4gcHJvZ3Jlc3MgbWV0ZXIgaXMgc2hvd24iCittc2dzdHIgImlsZXJsZW1lIMOndWJ1xJ91IGfDtnN0ZXJpbGRpxJ9pbmRlIC0tYWxsLXByb2dyZXNzJ2UgYmVuemVyIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjkzCittc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKK21zZ3N0ciAiQmlyIGRlbWV0IG9sdcWfdHVybWFrIGnDp2luIGJpciBkZXBvIGdlcmVrbGkuIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjEwNAorbXNnaWQgImRvIG5vdCBzaG93IGJ1bmRsZSBkZXRhaWxzIgorbXNnc3RyICJkZW1ldCBheXLEsW50xLFsYXLEsW7EsSBnw7ZzdGVybWUiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG9rYXlcbiIKK21zZ3N0ciAiJXMgdGFtYW1cbiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxNjAKK21zZ2lkICJOZWVkIGEgcmVwb3NpdG9yeSB0byB1bmJ1bmRsZS4iCittc2dzdHIgIkRlbWV0aSDDp8O2em1layBpw6dpbiBiaXIgZGVwbyBnZXJla2xpIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE2OCBidWlsdGluL3JlbW90ZS5jOjE2ODYKK21zZ2lkICJiZSB2ZXJib3NlOyBtdXN0IGJlIHBsYWNlZCBiZWZvcmUgYSBzdWJjb21tYW5kIgorbXNnc3RyICJheXLEsW50xLFsxLEgYW5sYXQ7IGJpciBhbHRrb211dHRhbiDDtm5jZSB5ZXJsZcWfdGlyaWxtZWxpZGlyIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE5MCBidWlsdGluL3JlbW90ZS5jOjE3MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5rbm93biBzdWJjb21tYW5kOiAlcyIKK21zZ3N0ciAiQmlsaW5tZXllbiBhbHRrb211dDogJXMiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1OTUKK21zZ2lkICIiCisiZ2l0IGNhdC1maWxlICgtdCBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1lIHwgLSIKKyJwIHwgPHR5cGU+IHwgLS10ZXh0Y29udiB8IC0tZmlsdGVycykgWy0tcGF0aD08cGF0aD5dIDxvYmplY3Q+IgorbXNnc3RyICIiCisiZ2l0IGNhdC1maWxlICgtdCBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLXMgWy0tYWxsb3ctdW5rbm93bi10eXBlXSB8IC1lIHwgLSIKKyJwIHwgPHTDvHI+IHwgLS10ZXh0Y29udiB8IC0tZmlsdGVycykgWy0tcGF0aD08eW9sPl0gPG5lc25lPiIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU5NgorbXNnaWQgIiIKKyJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCisiZmlsdGVyc10iCittc2dzdHIgIiIKKyJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCisiZmlsdGVyc10iCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MTcKK21zZ2lkICJvbmx5IG9uZSBiYXRjaCBvcHRpb24gbWF5IGJlIHNwZWNpZmllZCIKK21zZ3N0ciAieWFsbsSxemNhIGJpciB0b3BsdSBpxZ8gc2XDp2VuZcSfaSBiZWxpcnRpbGViaWxpciIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNQorbXNnaWQgIjx0eXBlPiBjYW4gYmUgb25lIG9mOiBibG9iLCB0cmVlLCBjb21taXQsIHRhZyIKK21zZ3N0ciAiPHTDvHI+IHlhbG7EsXpjYSDFn3VubGFyZGFuIGJpcmkgb2xhYmlsaXI6IGJsb2IsIHRyZWUsIGNvbW1pdCwgdGFnIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM2Cittc2dpZCAic2hvdyBvYmplY3QgdHlwZSIKK21zZ3N0ciAibmVzbmUgdMO8csO8bsO8IGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzcKK21zZ2lkICJzaG93IG9iamVjdCBzaXplIgorbXNnc3RyICJuZXNuZSBib3l1dHVudSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM5Cittc2dpZCAiZXhpdCB3aXRoIHplcm8gd2hlbiB0aGVyZSdzIG5vIGVycm9yIgorbXNnc3RyICJoYXRhIHlva3NhIHPEsWbEsXIga29kdXlsYSDDp8SxayIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MAorbXNnaWQgInByZXR0eS1wcmludCBvYmplY3QncyBjb250ZW50IgorbXNnc3RyICJuZXNuZSBpw6dlcmnEn2luaSBob8WfIGJpw6dpbWRlIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDIKK21zZ2lkICJmb3IgYmxvYiBvYmplY3RzLCBydW4gdGV4dGNvbnYgb24gb2JqZWN0J3MgY29udGVudCIKK21zZ3N0ciAiaWtpbGkgbmVzbmVsZXIgacOnaW4gbmVzbmUgacOnZXJpxJ9pIMO8emVyaW5kZSB0ZXh0Y29udiDDp2FsxLHFn3TEsXIiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDQKK21zZ2lkICJmb3IgYmxvYiBvYmplY3RzLCBydW4gZmlsdGVycyBvbiBvYmplY3QncyBjb250ZW50IgorbXNnc3RyICJpa2lsaSBuZXNuZWxlciBpw6dpbiBuZXNuZSBpw6dlcmnEn2kgw7x6ZXJpbmRlIHPDvHpnZcOnbGVyIMOnYWzEscWfdMSxciIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NSBnaXQtc3VibW9kdWxlLnNoOjEwMDIKK21zZ2lkICJibG9iIgorbXNnc3RyICJpa2lsaSBuZXNuZSIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NgorbXNnaWQgInVzZSBhIHNwZWNpZmljIHBhdGggZm9yIC0tdGV4dGNvbnYvLS1maWx0ZXJzIgorbXNnc3RyICItLXRleHRjb252Ly0tZmlsdGVycyBpw6dpbiBiZWxpcmxpIGJpciB5b2wga3VsbGFuIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ4Cittc2dpZCAiYWxsb3cgLXMgYW5kIC10IHRvIHdvcmsgd2l0aCBicm9rZW4vY29ycnVwdCBvYmplY3RzIgorbXNnc3RyICItcyB2ZSAtdCduaW4gYm96dWsvaGFzYXIgZ8O2cm3DvMWfIG5lc25lbGVybGUgw6dhbMSxxZ9tYXPEsW5hIGl6aW4gdmVyIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ5Cittc2dpZCAiYnVmZmVyIC0tYmF0Y2ggb3V0cHV0IgorbXNnc3RyICItLWJhdGNoIMOnxLFrdMSxc8SxbsSxIGFyYWJlbGxlxJ9lIGFsIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjUxCittc2dpZCAic2hvdyBpbmZvIGFuZCBjb250ZW50IG9mIG9iamVjdHMgZmVkIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJzdGFuZGFydCBnaXJkaSdkZW4gYmVzbGVuZW4gbmVzbmVsZXJpbiBiaWxnaXNpbmkgdmUgacOnZXJpxJ9pbmkgZ8O2c3RlciIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1NQorbXNnaWQgInNob3cgaW5mbyBhYm91dCBvYmplY3RzIGZlZCBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAic3RhbmRhcnQgZ2lyZGknZGVuIGJlc2xlbmVuIG5lc25lbGVyIGhha2vEsW5kYSBiaWxnaSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjU5Cittc2dpZCAiZm9sbG93IGluLXRyZWUgc3ltbGlua3MgKHVzZWQgd2l0aCAtLWJhdGNoIG9yIC0tYmF0Y2gtY2hlY2spIgorbXNnc3RyICIiCisiYcSfYcOnIGnDp2kgc2VtYm9saWsgYmHEn2xhcsSxIGl6bGUgKC0tYmF0Y2ggdmV5YSAtLWJhdGNoLWNoZWNrIGlsZSBrdWxsYW7EsWzEsXIpIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjYxCittc2dpZCAic2hvdyBhbGwgb2JqZWN0cyB3aXRoIC0tYmF0Y2ggb3IgLS1iYXRjaC1jaGVjayIKK21zZ3N0ciAiLS1iYXRjaCB2ZXlhIC0tYmF0Y2gtY2hlY2sgaWxlIG9sYW4gdMO8bSBuZXNuZWxlcmkgZ8O2c3RlciIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY2MworbXNnaWQgImRvIG5vdCBvcmRlciAtLWJhdGNoLWFsbC1vYmplY3RzIG91dHB1dCIKK21zZ3N0ciAiLS1iYXRjaC1hbGwtb2JqZWN0cyDDp8Sxa3TEsXPEsW7EsSBzxLFyYWxhbWEiCisKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjEzCittc2dpZCAiZ2l0IGNoZWNrLWF0dHIgWy1hIHwgLS1hbGwgfCA8YXR0cj4uLi5dIFstLV0gPHBhdGhuYW1lPi4uLiIKK21zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgWy1hIHwgLS1hbGwgfCA8w7Z6bml0ZWxpaz4uLi5dIFstLV0gPHlvbC1hZMSxPi4uLiIKKworIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTQKK21zZ2lkICJnaXQgY2hlY2stYXR0ciAtLXN0ZGluIFstel0gWy1hIHwgLS1hbGwgfCA8YXR0cj4uLi5dIgorbXNnc3RyICJnaXQgY2hlY2stYXR0ciAtLXN0ZGluIFstel0gWy1hIHwgLS1hbGwgfCA8w7Z6bml0ZWxpaz4uLi5dIgorCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMQorbXNnaWQgInJlcG9ydCBhbGwgYXR0cmlidXRlcyBzZXQgb24gZmlsZSIKK21zZ3N0ciAidMO8bSBkb3N5YSDDtnpuaXRlbGlrbGVyaW5pIGJpbGRpciIKKworIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjIKK21zZ2lkICJ1c2UgLmdpdGF0dHJpYnV0ZXMgb25seSBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAieWFsbsSxemNhIGluZGVrc3Rla2kgLmdpdGF0dHJpYnV0ZXMndSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIzIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjUgYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMgorbXNnaWQgInJlYWQgZmlsZSBuYW1lcyBmcm9tIHN0ZGluIgorbXNnc3RyICJkb3N5YSBhZGxhcsSxbsSxIHN0ZGluJ2RlbiBva3UiCisKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjI1IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjcKK21zZ2lkICJ0ZXJtaW5hdGUgaW5wdXQgYW5kIG91dHB1dCByZWNvcmRzIGJ5IGEgTlVMIGNoYXJhY3RlciIKK21zZ3N0ciAiZ2lyZGkgdmUgw6fEsWt0xLEga2F5xLF0bGFyxLFuxLEgYmlyIE5VTCBrYXJha3RlcmkgaWxlIHNvbmxhbmTEsXIiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjEgYnVpbHRpbi9jaGVja291dC5jOjE0NjQgYnVpbHRpbi9nYy5jOjUzNworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5OQorbXNnaWQgInN1cHByZXNzIHByb2dyZXNzIHJlcG9ydGluZyIKK21zZ3N0ciAiaWxlcmxlbWUgYmlsZGlyaW1pbmkgZ2l6bGUiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjkKK21zZ2lkICJzaG93IG5vbi1tYXRjaGluZyBpbnB1dCBwYXRocyIKK21zZ3N0ciAiZcWfbGXFn21leWVuIGdpcmRpIHlvbGxhcsSxbsSxIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzEKK21zZ2lkICJpZ25vcmUgaW5kZXggd2hlbiBjaGVja2luZyIKK21zZ3N0ciAiZGVuZXRsZXJrZW4gaW5kZWtzaSB5b2sgc2F5IgorCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2MworbXNnaWQgImNhbm5vdCBzcGVjaWZ5IHBhdGhuYW1lcyB3aXRoIC0tc3RkaW4iCittc2dzdHIgInlvbCBhZGxhcsSxIC0tc3RkaW4gaWxlIGJlbGlydGlsZW1peW9yIgorCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2NgorbXNnaWQgIi16IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLXN0ZGluIgorbXNnc3RyICIteiB5YWxuxLF6Y2EgLS1zdGRpbiBpbGUgYmlyIGFubGFtIGlmYWRlIGVkZXIiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY4Cittc2dpZCAibm8gcGF0aCBzcGVjaWZpZWQiCittc2dzdHIgImJpciB5b2wgYmVsaXJ0aWxtZWRpIgorCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3MgorbXNnaWQgIi0tcXVpZXQgaXMgb25seSB2YWxpZCB3aXRoIGEgc2luZ2xlIHBhdGhuYW1lIgorbXNnc3RyICItLXF1aWV0IHlhbG7EsXpjYSB0ZWsgYmlyIHlvbCBhZMSxIGlsZSBnZcOnZXJsaWRpciIKKworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzQKK21zZ2lkICJjYW5ub3QgaGF2ZSBib3RoIC0tcXVpZXQgYW5kIC0tdmVyYm9zZSIKK21zZ3N0ciAiaGVtIC0tcXVpZXQgaGVtIC0tdmVyYm9zZSBiaXJsaWt0ZSBrdWxsYW7EsWxhbWF6IgorCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3NworbXNnaWQgIi0tbm9uLW1hdGNoaW5nIGlzIG9ubHkgdmFsaWQgd2l0aCAtLXZlcmJvc2UiCittc2dzdHIgIi0tbm9uLW1hdGNoaW5nIHlhbG7EsXpjYSAtLXZlcmJvc2UgaWxlIGdlw6dlcmxpZGlyIgorCisjOiBidWlsdGluL2NoZWNrLW1haWxtYXAuYzo5Cittc2dpZCAiZ2l0IGNoZWNrLW1haWxtYXAgWzxvcHRpb25zPl0gPGNvbnRhY3Q+Li4uIgorbXNnc3RyICJnaXQgY2hlY2stbWFpbG1hcCBbPHNlw6dlbmVrbGVyPl0gPGNvbnRhY3Q+Li4uIgorCisjOiBidWlsdGluL2NoZWNrLW1haWxtYXAuYzoxNAorbXNnaWQgImFsc28gcmVhZCBjb250YWN0cyBmcm9tIHN0ZGluIgorbXNnc3RyICJzdGRpbidkZW4ga2nFn2lsZXJpIGRlIG9rdSIKKworIzogYnVpbHRpbi9jaGVjay1tYWlsbWFwLmM6MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbnRhY3Q6ICVzIgorbXNnc3RyICJracWfaSBheXLEscWfdMSxcsSxbGFtYWTEsTogJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2stbWFpbG1hcC5jOjQ4Cittc2dpZCAibm8gY29udGFjdHMgc3BlY2lmaWVkIgorbXNnc3RyICJracWfaSBiZWxpcnRpbG1lZGkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxMzEKK21zZ2lkICJnaXQgY2hlY2tvdXQtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKK21zZ3N0ciAiZ2l0IGNoZWNrb3V0LWluZGV4IFs8c2XDp2VuZWtsZXI+XSBbLS1dIFs8ZG9zeWE+Li4uXSIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE0OAorbXNnaWQgInN0YWdlIHNob3VsZCBiZSBiZXR3ZWVuIDEgYW5kIDMgb3IgYWxsIgorbXNnc3RyICJzdGFnZSAxIHZlIDMgYXJhc8SxbmRhIHZleWEgdMO8bcO8IG9sbWFsxLFkxLFyIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY0Cittc2dpZCAiY2hlY2sgb3V0IGFsbCBmaWxlcyBpbiB0aGUgaW5kZXgiCittc2dzdHIgImluZGVrc3Rla2kgdMO8bSBkb3N5YWxhcsSxIMOnxLFrxLHFnyB5YXAiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjUKK21zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgZXhpc3RpbmcgZmlsZXMiCittc2dzdHIgIm1ldmN1dCBkb3N5YWxhcsSxbiDDvHplcmluZSB5YXrEsWxtYXPEsW7EsSB6b3JsYSIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NworbXNnaWQgIm5vIHdhcm5pbmcgZm9yIGV4aXN0aW5nIGZpbGVzIGFuZCBmaWxlcyBub3QgaW4gaW5kZXgiCittc2dzdHIgIm1ldmN1dCBkb3N5YWxhciB2ZSBpbmRla3N0ZSBvbG1heWFuIGRvc3lhbGFyIGnDp2luIHV5YXJtYSIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2OQorbXNnaWQgImRvbid0IGNoZWNrb3V0IG5ldyBmaWxlcyIKK21zZ3N0ciAieWVuaSBkb3N5YWxhcsSxIMOnxLFrxLHFnyB5YXBtYSIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3MQorbXNnaWQgInVwZGF0ZSBzdGF0IGluZm9ybWF0aW9uIGluIHRoZSBpbmRleCBmaWxlIgorbXNnc3RyICJpbmRla3MgZG9zeWFzxLFuZGFraSBkb3N5YSBiaWxnaWxlcmluaSBnw7xuY2VsbGUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzUKK21zZ2lkICJyZWFkIGxpc3Qgb2YgcGF0aHMgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgInlvbGxhcsSxbiBsaXN0ZXNpbmkgc3RhbmRhcnQgZ2lyZGknZGVuIG9rdSIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NworbXNnaWQgIndyaXRlIHRoZSBjb250ZW50IHRvIHRlbXBvcmFyeSBmaWxlcyIKK21zZ3N0ciAiacOnZXJpxJ9pIGdlw6dpY2kgZG9zeWFsYXJhIHlheiIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3OCBidWlsdGluL2NvbHVtbi5jOjMxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTEgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NzIKK21zZ2lkICJzdHJpbmciCittc2dzdHIgImRpemkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzkKK21zZ2lkICJ3aGVuIGNyZWF0aW5nIGZpbGVzLCBwcmVwZW5kIDxzdHJpbmc+IgorbXNnc3RyICJkb3N5YWxhciBvbHXFn3R1cnVya2VuIGJhxZ/EsW5hIDxkaXppPiBla2xlIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTgxCittc2dpZCAiY29weSBvdXQgdGhlIGZpbGVzIGZyb20gbmFtZWQgc3RhZ2UiCittc2dzdHIgImRvc3lhbGFyxLEgYWTEsSB2ZXJpbGVuIGFsYW5kYW4ga29weWFsYSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjMxCittc2dpZCAiZ2l0IGNoZWNrb3V0IFs8b3B0aW9ucz5dIDxicmFuY2g+IgorbXNnc3RyICJnaXQgY2hlY2tvdXQgWzxzZcOnZW5la2xlcj5dIDxkYWw+IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzIKK21zZ2lkICJnaXQgY2hlY2tvdXQgWzxvcHRpb25zPl0gWzxicmFuY2g+XSAtLSA8ZmlsZT4uLi4iCittc2dzdHIgImdpdCBjaGVja291dCBbPHNlw6dlbmVrbGVyPl0gWzxkYWw+XSAtLSA8ZG9zeWE+Li4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzcKK21zZ2lkICJnaXQgc3dpdGNoIFs8b3B0aW9ucz5dIFs8YnJhbmNoPl0iCittc2dzdHIgImdpdCBzd2l0Y2ggWzxzZcOnZW5la2xlcj5dIFs8ZGFsPl0iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MgorbXNnaWQgImdpdCByZXN0b3JlIFs8b3B0aW9ucz5dIFstLXNvdXJjZT08YnJhbmNoPl0gPGZpbGU+Li4uIgorbXNnc3RyICJnaXQgcmVzdG9yZSBbPHNlw6dlbmVrbGVyPl0gWy0tc291cmNlPTxkYWw+XSA8ZG9zeWE+Li4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc1IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgb3VyIHZlcnNpb24iCittc2dzdHIgIiclcycgeW9sdSBiaXpkZWtpIHPDvHLDvG1lIGl5ZSBkZcSfaWwiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSB0aGVpciB2ZXJzaW9uIgorbXNnc3RyICInJXMnIHlvbHUgb25sYXJkYWtpIHPDvHLDvG1lIGl5ZSBkZcSfaWwiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgYWxsIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKK21zZ3N0ciAiJyVzJyB5b2x1IGdlcmVrZW4gdMO8bSBzw7xyw7xtbGVyZSBpeWUgZGXEn2lsIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKK21zZ3N0ciAiJyVzJyB5b2x1IGdlcmVrZW4gc8O8csO8bWxlcmUgaXllIGRlxJ9pbCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjI2MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcyc6IGNhbm5vdCBtZXJnZSIKK21zZ3N0ciAiJyVzJyB5b2x1OiBCaXJsZcWfdGlyaWxlbWl5b3IiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGFkZCBtZXJnZSByZXN1bHQgZm9yICclcyciCittc2dzdHIgIiclcycgacOnaW4gYmlybGXFn3Rpcm1lIHNvbnXDp2xhcsSxIGVrbGVuZW1peW9yIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY3JlYXRlZCAlZCBtZXJnZSBjb25mbGljdCIKK21zZ2lkX3BsdXJhbCAiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0cyIKK21zZ3N0clswXSAiJWQgYmlybGXFn3Rpcm1lIMOnYWvEscWfbWFzxLEgeWVuaWRlbiBvbHXFn3R1cnVsZHUiCittc2dzdHJbMV0gIiVkIGJpcmxlxZ90aXJtZSDDp2FrxLHFn21hc8SxIHllbmlkZW4gb2x1xZ90dXJ1bGR1IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0ZWQgJWQgcGF0aCBmcm9tICVzIgorbXNnaWRfcGx1cmFsICJVcGRhdGVkICVkIHBhdGhzIGZyb20gJXMiCittc2dzdHJbMF0gIiVkIHlvbCDFn3VyYWRhbiBnw7xuY2VsbGVuZGk6ICVzIgorbXNnc3RyWzFdICIlZCB5b2wgxZ91cmFkYW4gZ8O8bmNlbGxlbmRpOiAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4OQorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSB0aGUgaW5kZXgiCittc2dpZF9wbHVyYWwgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSB0aGUgaW5kZXgiCittc2dzdHJbMF0gIiVkIHlvbCBpbmRla3N0ZW4gZ8O8bmNlbGxlbmRpIgorbXNnc3RyWzFdICIlZCB5b2wgaW5kZWtzdGVuIGfDvG5jZWxsZW5kaSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQxMiBidWlsdGluL2NoZWNrb3V0LmM6NDE1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHVwZGF0aW5nIHBhdGhzIgorbXNnc3RyICInJXMnIGfDvG5jZWxsZW5tZWt0ZSBvbGFuIHlvbGxhcmxhIGt1bGxhbsSxbGFtYXoiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MjUgYnVpbHRpbi9jaGVja291dC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiCittc2dzdHIgIiclcycsICVzIGlsZSBiaXJsaWt0ZSBrdWxsYW7EsWxhbWF6IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCB1cGRhdGUgcGF0aHMgYW5kIHN3aXRjaCB0byBicmFuY2ggJyVzJyBhdCB0aGUgc2FtZSB0aW1lLiIKK21zZ3N0ciAiQXluxLEgYW5kYSBoZW0geW9sbGFyxLEgZ8O8bmNlbGxleWlwIGhlbSBkZSAnJXMnIGRhbMSxbmEgZ2XDp2lsZW1peW9yLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICJuZWl0aGVyICclcycgb3IgJyVzJyBpcyBzcGVjaWZpZWQiCittc2dzdHIgIm5lICclcycgbmUgZGUgJyVzJyBiZWxpcnRpbG1pxZ8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBtdXN0IGJlIHVzZWQgd2hlbiAnJXMnIGlzIG5vdCBzcGVjaWZpZWQiCittc2dzdHIgIiclcycsICclcycgw7ZnZXNpbmluIGJlbGlydGlsbWVkacSfaSBkdXJ1bWxhcmRhIGt1bGxhbsSxbG1hbMSxZMSxciIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQ0NSBidWlsdGluL2NoZWNrb3V0LmM6NDUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgb3IgJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgorbXNnc3RyICInJXMnIHZleWEgJyVzJywgJXMgaWxlIGJpcmxpa3RlIGt1bGxhbsSxbGFtYXoiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo1MDkgYnVpbHRpbi9jaGVja291dC5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgaXMgdW5tZXJnZWQiCittc2dzdHIgIiclcycgeW9sdSBiaXJsZcWfdGlyaWxtZW1pxZ8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2ODQgYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoxMDYKK21zZ2lkICJ5b3UgbmVlZCB0byByZXNvbHZlIHlvdXIgY3VycmVudCBpbmRleCBmaXJzdCIKK21zZ3N0ciAiw7ZuY2UgZ2XDp2VybGkgaW5kZWtzaW5pemkgw6fDtnptZWxpc2luaXoiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNhbm5vdCBjb250aW51ZSB3aXRoIHN0YWdlZCBjaGFuZ2VzIGluIHRoZSBmb2xsb3dpbmcgZmlsZXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJhxZ9hxJ/EsWRha2kgaGF6xLFybGFubcSxxZ8gZGXEn2nFn2lrbGlrbGVyIGnDp2VyZW4gZG9zeWFsYXJsYSBzw7xyZMO8csO8bGVtaXlvcjpcbiIKKyIlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjgzNworIywgYy1mb3JtYXQKK21zZ2lkICJDYW4gbm90IGRvIHJlZmxvZyBmb3IgJyVzJzogJXNcbiIKK21zZ3N0ciAiJyVzJyBpw6dpbiBiYcWfdnVydSBnw7xubMO8xJ/DvCB5YXDEsWxhbcSxeW9yOiAlc1xuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODc5Cittc2dpZCAiSEVBRCBpcyBub3cgYXQiCittc2dzdHIgIkhFQUQgxZ9pbWRpIMWfdXJhZGE6IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODgzIGJ1aWx0aW4vY2xvbmUuYzo3MTcKK21zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIEhFQUQiCittc2dzdHIgIkhFQUQgZ8O8bmNlbGxlbmVtaXlvciIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjg4NworIywgYy1mb3JtYXQKK21zZ2lkICJSZXNldCBicmFuY2ggJyVzJ1xuIgorbXNnc3RyICInJXMnIGRhbMSxIHPEsWbEsXJsYW5kxLEuXG4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWxyZWFkeSBvbiAnJXMnXG4iCittc2dzdHIgIkhhbGloYXrEsXJkYSAnJXMnIMO8emVyaW5kZVxuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODk0CisjLCBjLWZvcm1hdAorbXNnaWQgIlN3aXRjaGVkIHRvIGFuZCByZXNldCBicmFuY2ggJyVzJ1xuIgorbXNnc3RyICInJXMnIGRhbMSxbmEgZ2XDp2lsZGkgdmUgc8SxZsSxcmxhbmTEsS5cbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjg5NiBidWlsdGluL2NoZWNrb3V0LmM6MTMyMAorIywgYy1mb3JtYXQKK21zZ2lkICJTd2l0Y2hlZCB0byBhIG5ldyBicmFuY2ggJyVzJ1xuIgorbXNnc3RyICJZZW5pICclcycgZGFsxLFuYSBnZcOnaWxkaS5cbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjg5OAorIywgYy1mb3JtYXQKK21zZ2lkICJTd2l0Y2hlZCB0byBicmFuY2ggJyVzJ1xuIgorbXNnc3RyICInJXMnIGRhbMSxbmEgZ2XDp2lsZGkuXG4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIC4uLiBhbmQgJWQgbW9yZS5cbiIKK21zZ3N0ciAiLi4uIHZlICVkIGRhaGEuXG4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldhcm5pbmc6IHlvdSBhcmUgbGVhdmluZyAlZCBjb21taXQgYmVoaW5kLCBub3QgY29ubmVjdGVkIHRvXG4iCisiYW55IG9mIHlvdXIgYnJhbmNoZXM6XG4iCisiXG4iCisiJXNcbiIKK21zZ2lkX3BsdXJhbCAiIgorIldhcm5pbmc6IHlvdSBhcmUgbGVhdmluZyAlZCBjb21taXRzIGJlaGluZCwgbm90IGNvbm5lY3RlZCB0b1xuIgorImFueSBvZiB5b3VyIGJyYW5jaGVzOlxuIgorIlxuIgorIiVzXG4iCittc2dzdHJbMF0gIiIKKyJVeWFyxLE6IEFya2FuxLF6ZGEgZGFsbGFyxLFuxLF6ZGFuIGhpw6diaXJpbmUgYmHEn2zEsSBvbG1hecSxbiAlZCBnw7ZuZGVyaVxuIgorImLEsXJha8SxeW9yc3VudXo6XG4iCisiXG4iCisiJXNcbiIKK21zZ3N0clsxXSAiIgorIlV5YXLEsTogQXJrYW7EsXpkYSBkYWxsYXLEsW7EsXpkYW4gaGnDp2JpcmluZSBiYcSfbMSxIG9sbWF5xLFuICVkIGfDtm5kZXJpXG4iCisiYsSxcmFrxLF5b3JzdW51ejpcbiIKKyJcbiIKKyIlc1xuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJJZiB5b3Ugd2FudCB0byBrZWVwIGl0IGJ5IGNyZWF0aW5nIGEgbmV3IGJyYW5jaCwgdGhpcyBtYXkgYmUgYSBnb29kIHRpbWVcbiIKKyJ0byBkbyBzbyB3aXRoOlxuIgorIlxuIgorIiBnaXQgYnJhbmNoIDxuZXctYnJhbmNoLW5hbWU+ICVzXG4iCisiXG4iCittc2dpZF9wbHVyYWwgIiIKKyJJZiB5b3Ugd2FudCB0byBrZWVwIHRoZW0gYnkgY3JlYXRpbmcgYSBuZXcgYnJhbmNoLCB0aGlzIG1heSBiZSBhIGdvb2QgdGltZVxuIgorInRvIGRvIHNvIHdpdGg6XG4iCisiXG4iCisiIGdpdCBicmFuY2ggPG5ldy1icmFuY2gtbmFtZT4gJXNcbiIKKyJcbiIKK21zZ3N0clswXSAiIgorIkXEn2VyIGJ1bnUgeWVuaSBiaXIgZGFsIG9sdcWfdHVydXAgdHV0bWFrIGlzdGl5b3JzYW7EsXogxZ9pbWRpIGJ1bnUgeWFwbWFrXG4iCisiacOnaW4gaXlpIGJpciB6YW1hbiBvbGFiaWxpcjpcbiIKKyJcbiIKKyJcdGdpdCBicmFuY2ggPHllbmktZGFsLWFkxLE+ICVzXG4iCisiXG4iCittc2dzdHJbMV0gIiIKKyJFxJ9lciBidW5sYXLEsSB5ZW5pIGJpciBkYWwgb2x1xZ90dXJ1cCB0dXRtYWsgaXN0aXlvcnNhbsSxeiDFn2ltZGkgYnVudSB5YXBtYWtcbiIKKyJpw6dpbiBpeWkgYmlyIHphbWFuIG9sYWJpbGlyOlxuIgorIlxuIgorIlx0Z2l0IGJyYW5jaCA8eWVuaS1kYWwtYWTEsT4gJXNcbiIKKyJcbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEwMDkKK21zZ2lkICJpbnRlcm5hbCBlcnJvciBpbiByZXZpc2lvbiB3YWxrIgorbXNnc3RyICJyZXZpenlvbmxhcmRhIGdlemluaXJrZW4gacOnIGhhdGEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDEzCittc2dpZCAiUHJldmlvdXMgSEVBRCBwb3NpdGlvbiB3YXMiCittc2dzdHIgIsOWbmNla2kgSEVBRCBrb251bXUgxZ91eWR1OiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEwNTMgYnVpbHRpbi9jaGVja291dC5jOjEzMTUKK21zZ2lkICJZb3UgYXJlIG9uIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIgorbXNnc3RyICJIZW7DvHogZG/En21hbcSxxZ8gYmlyIGRhbCDDvHplcmluZGVzaW5peiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjExMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiclcycgY291bGQgYmUgYm90aCBhIGxvY2FsIGZpbGUgYW5kIGEgdHJhY2tpbmcgYnJhbmNoLlxuIgorIlBsZWFzZSB1c2UgLS0gKGFuZCBvcHRpb25hbGx5IC0tbm8tZ3Vlc3MpIHRvIGRpc2FtYmlndWF0ZSIKK21zZ3N0ciAiIgorIiclcycgaGVtIGJpciB5ZXJlbCBkb3N5YSBoZW0gZGUgYmlyIGl6bGVtZSBkYWzEsSBvbGFiaWxpci5cbiIKKyJMw7x0ZmVuIC0tICh2ZSBpc3RlxJ9lIGJhxJ9sxLEgb2xhcmFrIC0tbm8tZ3Vlc3MpIGt1bGxhbsSxcCBiZWxpcnNpemxpxJ9pIGdpZGVyaW4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTEzNQorbXNnaWQgIiIKKyJJZiB5b3UgbWVhbnQgdG8gY2hlY2sgb3V0IGEgcmVtb3RlIHRyYWNraW5nIGJyYW5jaCBvbiwgZS5nLiAnb3JpZ2luJyxcbiIKKyJ5b3UgY2FuIGRvIHNvIGJ5IGZ1bGx5IHF1YWxpZnlpbmcgdGhlIG5hbWUgd2l0aCB0aGUgLS10cmFjayBvcHRpb246XG4iCisiXG4iCisiICAgIGdpdCBjaGVja291dCAtLXRyYWNrIG9yaWdpbi88bmFtZT5cbiIKKyJcbiIKKyJJZiB5b3UnZCBsaWtlIHRvIGFsd2F5cyBoYXZlIGNoZWNrb3V0cyBvZiBhbiBhbWJpZ3VvdXMgPG5hbWU+IHByZWZlclxuIgorIm9uZSByZW1vdGUsIGUuZy4gdGhlICdvcmlnaW4nIHJlbW90ZSwgY29uc2lkZXIgc2V0dGluZ1xuIgorImNoZWNrb3V0LmRlZmF1bHRSZW1vdGU9b3JpZ2luIGluIHlvdXIgY29uZmlnLiIKK21zZ3N0ciAiIgorIkXEn2VyIGJpciB1emFrIGl6bGVtZSBkYWzEsW7EsSDDp8Sxa8SxxZ8geWFwbWFrIGlzdGVkaXlzZW5peiDDtnJuLiAnb3JpZ2luJyxcbiIKKyJidW51IGFkxLEgLS10cmFjayBzZcOnZW5lxJ9pIGlsZSB0YW0gb2xhcmFrIG5pdGVsZW5kaXJpcCB5YXBhYmlsaXJzaW5pei5cbiIKKyJcbiIKKyJcdGdpdCBjaGVja291dCAtLXRyYWNrIG9yaWdpbi88YWQ+XG4iCisiXG4iCisiRcSfZXIgaGVyIHphbWFuIGJlbGlyc2l6IDxhZD4gw6fEsWvEscWfbGFyxLFuxLFuIGJpciB1emFrIGtvbnVtdSB0ZXJjaWggZXRtZXNpbmlcbiIKKyJpc3RlcnNlbml6LCDDtnJuLiAnb3JpZ2luJywgeWFwxLFsYW5kxLFybWFuxLF6ZGEgY2hlY2tvdXQuZGVmYXVsdHNSZW1vdGU9b3JpZ2luXG4iCisiYXlhcsSxbsSxIHlhcG1hecSxIGTDvMWfw7xuw7xuLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjExNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBtYXRjaGVkIG11bHRpcGxlICglZCkgcmVtb3RlIHRyYWNraW5nIGJyYW5jaGVzIgorbXNnc3RyICInJXMnIGJpcmRlbiDDp29rICglZCkgdXphayBpemxlbWUgZGFsxLF5bGEgZcWfbGXFn3RpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTIxMQorbXNnaWQgIm9ubHkgb25lIHJlZmVyZW5jZSBleHBlY3RlZCIKK21zZ3N0ciAieWFsbsSxemNhIGJpciBiYcWfdnVydSBiZWtsZW5peW9yZHUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9ubHkgb25lIHJlZmVyZW5jZSBleHBlY3RlZCwgJWQgZ2l2ZW4uIgorbXNnc3RyICJ5YWxuxLF6Y2EgYmlyIGJhxZ92dXJ1IGJla2xlbml5b3JkdSwgJWQgdmVyaWxkaSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyNzQgYnVpbHRpbi93b3JrdHJlZS5jOjI4MyBidWlsdGluL3dvcmt0cmVlLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKK21zZ3N0ciAiZ2XDp2Vyc2l6IGJhxZ92dXJ1OiAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyODcgYnVpbHRpbi9jaGVja291dC5jOjE2NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIGlzIG5vdCBhIHRyZWU6ICVzIgorbXNnc3RyICJiYcWfdnVydSBiaXIgYcSfYWNhIGRlxJ9pbDogJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM0CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgdGFnICclcyciCittc2dzdHIgImJpciBkYWwgYmVrbGVuaXlvcmR1LCAnJXMnIGV0aWtldGkgYWzEsW5kxLEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgcmVtb3RlIGJyYW5jaCAnJXMnIgorbXNnc3RyICJiaXIgZGFsIGJla2xlbml5b3JkdSwgJyVzJyB1emFrIGRhbCBhbMSxbmTEsSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMzcgYnVpbHRpbi9jaGVja291dC5jOjEzNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCAnJXMnIgorbXNnc3RyICJiaXIgZGFsIGJla2xlbml5b3JkdSwgJyVzJyBhbMSxbmTEsSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCBjb21taXQgJyVzJyIKK21zZ3N0ciAiYmlyIGRhbCBiZWtsZW5peW9yZHUsICclcycgZ8O2bmRlcmlzaSBhbMSxbmTEsSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNTYKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgbWVyZ2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IG1lcmdlIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorIkJpcmxlxZ90aXJtZSB5YXBhcmtlbiBkYWwgZGXEn2nFn3RpcmlsZW1peW9yLlxuIgorIlwiZ2l0IG1lcmdlIC0tcXVpdFwiIHZleWEgXCJnaXQgd29ya3RyZWUgYWRkXCIgeWFwbWF5xLEgZMO8xZ/DvG7DvG4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2MAorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCBpbiB0aGUgbWlkZGxlIG9mIGFuIGFtIHNlc3Npb25cbiIKKyJDb25zaWRlciBcImdpdCBhbSAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyJCaXIgXCJhbVwiIG90dXJ1bXVudW4gb3J0YXPEsW5kYSBkYWwgZGXEn2nFn3RpcmlsZW1peW9yLlxuIgorIlwiZ2l0IGFtIC0tcXVpdFwiIHZleWEgXCJnaXQgd29ya3RyZWUgYWRkXCIgeWFwbWF5xLEgZMO8xZ/DvG7DvG4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2NAorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSByZWJhc2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IHJlYmFzZSAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyJZZW5pZGVuIHRlbWVsbGVuZGlybWUgeWFwYXJrZW4gZGFsIGRlxJ9pxZ90aXJpbGVtaXlvci5cbiIKKyJcImdpdCByZWJhc2UgLS1xdWl0XCIgdmV5YSBcImdpdCB3b3JrdHJlZSBhZGRcIiB5YXBtYXnEsSBkw7zFn8O8bsO8bi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY4Cittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIGNoZXJyeS1waWNraW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgY2hlcnJ5LXBpY2sgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisiU2XDpy1hbCB5YXBhcmtlbiBkYWwgZGXEn2nFn3RpcmlsZW1peW9yLlxuIgorIlwiZ2l0IGNoZXJyeS1waWNrIC0tcXVpdFwiIHZleWEgXCJnaXQgd29ya3RyZWUgYWRkXCIgeWFwbWF5xLEgZMO8xZ/DvG7DvG4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM3MgorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSByZXZlcnRpbmdcbiIKKyJDb25zaWRlciBcImdpdCByZXZlcnQgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisiR2VyaSBhbCB5YXBhcmtlbiBkYWwgZGXEn2nFn3RpcmlsZW1peW9yLlxuIgorIlwiZ2l0IHJldmVydCAtLXF1aXRcIiB2ZXlhIFwiZ2l0IHdvcmt0cmVlIGFkZFwiIHlhcG1hecSxIGTDvMWfw7xuw7xuLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzYKK21zZ2lkICJ5b3UgYXJlIHN3aXRjaGluZyBicmFuY2ggd2hpbGUgYmlzZWN0aW5nIgorbXNnc3RyICJpa2lsaSBhcmFtYSB5YXBhcmtlbiBkYWwgZGXEn2nFn3Rpcml5b3JzdW51eiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzODMKK21zZ2lkICJwYXRocyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKK21zZ3N0ciAiZGFsIGRlxJ9pxZ90aXJpbGlya2VuIHlvbGxhciBrdWxsYW7EsWxhbWF6IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM4NiBidWlsdGluL2NoZWNrb3V0LmM6MTM5MCBidWlsdGluL2NoZWNrb3V0LmM6MTM5NAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgorbXNnc3RyICJkYWwgZGXEn2nFn3RpcmlsaXJrZW4gJyVzJyBrdWxsYW7EsWxhbWF6IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM5OCBidWlsdGluL2NoZWNrb3V0LmM6MTQwMSBidWlsdGluL2NoZWNrb3V0LmM6MTQwNAorIzogYnVpbHRpbi9jaGVja291dC5jOjE0MDkgYnVpbHRpbi9jaGVja291dC5jOjE0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICclcyciCittc2dzdHIgIiclcycsICclcycgaWxlIGJpcmxpa3RlIGt1bGxhbsSxbGFtYXoiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDExCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IHRha2UgPHN0YXJ0LXBvaW50PiIKK21zZ3N0ciAiJyVzJywgPGJhxZ9sYW1hLW5va3Rhc8SxPiBhbGFtYXoiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDE5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBzd2l0Y2ggYnJhbmNoIHRvIGEgbm9uLWNvbW1pdCAnJXMnIgorbXNnc3RyICJEYWwgZ8O2bmRlcmkgb2xtYXlhbiAnJXMnIMO2Z2VzaW5lIGRlxJ9pxZ90aXJpbGVtZXoiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDI2Cittc2dpZCAibWlzc2luZyBicmFuY2ggb3IgY29tbWl0IGFyZ3VtZW50IgorbXNnc3RyICJkYWwgdmV5YSBnw7ZuZGVyaSBkZcSfacWfa2VuaSBla3NpayIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NjggYnVpbHRpbi9jbG9uZS5jOjkxIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzIKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM1IGJ1aWx0aW4vZmV0Y2guYzoxNjcgYnVpbHRpbi9tZXJnZS5jOjI4NgorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjcgYnVpbHRpbi9wdWxsLmM6MTE4IGJ1aWx0aW4vcHVzaC5jOjU2MworIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzQKK21zZ2lkICJmb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCittc2dzdHIgImR1cnVtIGJlbGlydG1leWkgem9ybGEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDY5Cittc2dpZCAicGVyZm9ybSBhIDMtd2F5IG1lcmdlIHdpdGggdGhlIG5ldyBicmFuY2giCittc2dzdHIgInllbmkgZGFsIGlsZSBiaXIgMyB5w7ZubMO8IGJpcmxlxZ90aXJtZSBnZXLDp2VrbGXFn3RpciIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NzAgYnVpbHRpbi9sb2cuYzoxNjkwIHBhcnNlLW9wdGlvbnMuaDozMjIKK21zZ2lkICJzdHlsZSIKK21zZ3N0ciAic3RpbCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NzEKK21zZ2lkICJjb25mbGljdCBzdHlsZSAobWVyZ2Ugb3IgZGlmZjMpIgorbXNnc3RyICLDp2FrxLHFn21hIHN0aWxpIChiaXJsZcWfdGlybWUgdmV5YSBkaWZmMykiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDgzIGJ1aWx0aW4vd29ya3RyZWUuYzo0OTYKK21zZ2lkICJkZXRhY2ggSEVBRCBhdCBuYW1lZCBjb21taXQiCittc2dzdHIgImFkxLEgdmVyaWxlbiBnw7ZuZGVyaWRlIEhFQUQnaSBhecSxciIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODQKK21zZ2lkICJzZXQgdXBzdHJlYW0gaW5mbyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAieWVuaSBkYWwgacOnaW4gw7xzdGtheW5hayBiaWxnaXNpIGF5YXJsYSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODYKK21zZ2lkICJmb3JjZSBjaGVja291dCAodGhyb3cgYXdheSBsb2NhbCBtb2RpZmljYXRpb25zKSIKK21zZ3N0ciAiem9ybGEgw6fEsWvEscWfIHlhcCAoeWVyZWwgZGXEn2nFn2lrbGlrbGVyaSDDp8O2cGUgYXQpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4OAorbXNnaWQgIm5ldy1icmFuY2giCittc2dzdHIgInllbmkgZGFsIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4OAorbXNnaWQgIm5ldyB1bnBhcmVudGVkIGJyYW5jaCIKK21zZ3N0ciAieWVuaSDDvHN0IMO2Z2VzaSBvbG1heWFuIGRhbCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0OTAgYnVpbHRpbi9tZXJnZS5jOjI4OQorbXNnaWQgInVwZGF0ZSBpZ25vcmVkIGZpbGVzIChkZWZhdWx0KSIKK21zZ3N0ciAieW9rIHNhecSxbGFuIGRvc3lhbGFyxLEgZ8O8bmNlbGxlICjDtm50YW7EsW1sxLEpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ5MworbXNnaWQgImRvIG5vdCBjaGVjayBpZiBhbm90aGVyIHdvcmt0cmVlIGlzIGhvbGRpbmcgdGhlIGdpdmVuIHJlZiIKK21zZ3N0ciAiIgorInZlcmlsZW4gYmHFn3Z1cnV5dSBiYcWfa2EgYmlyIMOnYWzEscWfbWEgYcSfYWPEsW7EsW4gdHV0dXAgdHV0bWFkxLHEn8SxbsSxIGRlbmV0bGVtZSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MDYKK21zZ2lkICJjaGVja291dCBvdXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCittc2dzdHIgImJpcmxlxZ90aXJpbG1leWVuIGRvc3lhbGFyIGnDp2luIGJpemltIHPDvHLDvG3DvCDDp8Sxa8SxxZ8geWFwIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTUwOQorbXNnaWQgImNoZWNrb3V0IHRoZWlyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgorbXNnc3RyICJiaXJsZcWfdGlyaWxtZXllbiBkb3N5YWxhciBpw6dpbiBvbmxhcsSxbiBzw7xyw7xtw7xuw7wgw6fEsWvEscWfIHlhcCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MTMKK21zZ2lkICJkbyBub3QgbGltaXQgcGF0aHNwZWNzIHRvIHNwYXJzZSBlbnRyaWVzIG9ubHkiCittc2dzdHIgInlvbCBiZWxpcnRlw6dsZXJpbmkgeWFsbsSxemNhIGFyYWzEsWtsxLEgZ2lyZGlsZXJlIGvEsXPEsXRsYW1hIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTU2NQorbXNnaWQgIi1iLCAtQiBhbmQgLS1vcnBoYW4gYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLWIsIC1CIHZlIC0tb3JwaGFuIGJpcmxpa3RlIGt1bGxhbsSxbG1heiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1NjgKK21zZ2lkICItcCBhbmQgLS1vdmVybGF5IGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIi1wIHZlIC0tb3ZlcmxheSBiaXJsaWt0ZSBrdWxsYW7EsWxtYXoiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjA1Cittc2dpZCAiLS10cmFjayBuZWVkcyBhIGJyYW5jaCBuYW1lIgorbXNnc3RyICItLXRyYWNrIGnDp2luIGJpciBkYWwgYWTEsSBnZXJla2xpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTYxMAorbXNnaWQgIm1pc3NpbmcgYnJhbmNoIG5hbWU7IHRyeSAtYiIKK21zZ3N0ciAiZWtzaWsgZGFsIGFkxLE7IC1iIGRlbmV5aW4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlICVzIgorbXNnc3RyICIlcyDDp8O2esO8bGVtZWRpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY1OAorbXNnaWQgImludmFsaWQgcGF0aCBzcGVjaWZpY2F0aW9uIgorbXNnc3RyICJnZcOnZXJzaXogeW9sIGJlbGlydGltaSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBjb21taXQgYW5kIGEgYnJhbmNoICclcycgY2Fubm90IGJlIGNyZWF0ZWQgZnJvbSBpdCIKK21zZ3N0ciAiJyVzJyBiaXIgZ8O2bmRlcmkgZGXEn2lsIHZlIG9uZGFuIGJpciAnJXMnIGRhbMSxIG9sdcWfdHVydWxhbWF6IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY2OQorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY2hlY2tvdXQ6IC0tZGV0YWNoIGRvZXMgbm90IHRha2UgYSBwYXRoIGFyZ3VtZW50ICclcyciCittc2dzdHIgImdpdCBjaGVja291dDogLS1kZXRhY2ggYmlyICclcycgeW9sIGRlxJ9pxZ9rZW5pIGFsbcSxeW9yIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY3OAorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tZGV0YWNoIgorbXNnc3RyICItLXBhdGhzcGVjLWZyb20tZmlsZSwgLS1kZXRhY2ggaWxlIHV5dW1zdXoiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjgxIGJ1aWx0aW4vcmVzZXQuYzozMjQgYnVpbHRpbi9zdGFzaC5jOjE1MDYKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLXBhdGNoIgorbXNnc3RyICItLXBhdGhzcGVjLWZyb20tZmlsZSwgLS1wYXRjaCBpbGUgdXl1bXN1eiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2OTIKK21zZ2lkICIiCisiZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgYW5kIC0tbWVyZ2UgYXJlIGluY29tcGF0aWJsZSB3aGVuXG4iCisiY2hlY2tpbmcgb3V0IG9mIHRoZSBpbmRleC4iCittc2dzdHIgIiIKKyJnaXQgY2hlY2tvdXQ6IC0tb3Vycy8tLXRoZWlycywgLS1mb3JjZSB2ZSAtLW1lcmdlIGluZGVrcyDDp8Sxa8SxxZ/EsSB5YXDEsWzEsXJrZW5cbiIKKyJiaXJsaWt0ZSBrdWxsYW7EsWxhbWF6IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY5NworbXNnaWQgInlvdSBtdXN0IHNwZWNpZnkgcGF0aChzKSB0byByZXN0b3JlIgorbXNnc3RyICJlc2tpIGR1cnVtdW5hIGdldGlyaWxlY2VrIHlvbGxhcsSxIGJlbGlydG1lbGlzaW5peiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjMgYnVpbHRpbi9jaGVja291dC5jOjE3MjUgYnVpbHRpbi9jaGVja291dC5jOjE3NzQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc2IGJ1aWx0aW4vY2xvbmUuYzoxMjEgYnVpbHRpbi9yZW1vdGUuYzoxNzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcyIGJ1aWx0aW4vd29ya3RyZWUuYzo0OTIgYnVpbHRpbi93b3JrdHJlZS5jOjQ5NAorbXNnaWQgImJyYW5jaCIKK21zZ3N0ciAiZGFsIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyNAorbXNnaWQgImNyZWF0ZSBhbmQgY2hlY2tvdXQgYSBuZXcgYnJhbmNoIgorbXNnc3RyICJ5ZW5pIGJpciBkYWwgb2x1xZ90dXIgdmUgw6fEsWvEscWfIHlhcCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjYKK21zZ2lkICJjcmVhdGUvcmVzZXQgYW5kIGNoZWNrb3V0IGEgYnJhbmNoIgorbXNnc3RyICJiaXIgZGFsIG9sdcWfdHVyL3PEsWbEsXJsYSB2ZSDDp8Sxa8SxxZ8geWFwIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyNworbXNnaWQgImNyZWF0ZSByZWZsb2cgZm9yIG5ldyBicmFuY2giCittc2dzdHIgInllbmkgZGFsIGnDp2luIGJhxZ92dXJ1IGfDvG5sw7zEn8O8IG9sdcWfdHVyIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyOQorbXNnaWQgInNlY29uZCBndWVzcyAnZ2l0IGNoZWNrb3V0IDxuby1zdWNoLWJyYW5jaD4nIChkZWZhdWx0KSIKK21zZ3N0ciAiJ2dpdCBjaGVja291dCA8YsO2eWxlLWJpci1kYWwteW9rPidhIHRlbWtpbmxpIHlha2xhxZ8gKMO2bnRhbsSxbWzEsSkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzMwCittc2dpZCAidXNlIG92ZXJsYXkgbW9kZSAoZGVmYXVsdCkiCittc2dzdHIgInllcnBheWxhxZ/EsW0ga2lwaW5pIGt1bGxhbiAow7ZudGFuxLFtbMSxKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzUKK21zZ2lkICJjcmVhdGUgYW5kIHN3aXRjaCB0byBhIG5ldyBicmFuY2giCittc2dzdHIgInllbmkgYmlyIGRhbCBvbHXFn3R1ciB2ZSBvbmEgZ2XDpyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzcKK21zZ2lkICJjcmVhdGUvcmVzZXQgYW5kIHN3aXRjaCB0byBhIGJyYW5jaCIKK21zZ3N0ciAiYmlyIGRhbCBvbHXFn3R1ci9zxLFmxLFybGEgdmUgb25hIGdlw6ciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc5Cittc2dpZCAic2Vjb25kIGd1ZXNzICdnaXQgc3dpdGNoIDxuby1zdWNoLWJyYW5jaD4nIgorbXNnc3RyICInZ2l0IHN3aXRjaCA8YsO2eWxlLWJpci1kYWwteW9rPidhIHRlbWtpbmxpIHlha2xhxZ8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzgxCittc2dpZCAidGhyb3cgYXdheSBsb2NhbCBtb2RpZmljYXRpb25zIgorbXNnc3RyICJ5ZXJlbCBkZcSfacWfaWtsaWtsZXJpIMOnw7ZwZSBhdCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTMKK21zZ2lkICJ3aGljaCB0cmVlLWlzaCB0byBjaGVja291dCBmcm9tIgorbXNnc3RyICLDp8Sxa8SxxZ8geWFwxLFsYWNhayBhxJ9hY8SxbXPEsSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTUKK21zZ2lkICJyZXN0b3JlIHRoZSBpbmRleCIKK21zZ3N0ciAiaW5kZWtzaSBlc2tpIGR1cnVtdW5hIGdldGlyIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxNworbXNnaWQgInJlc3RvcmUgdGhlIHdvcmtpbmcgdHJlZSAoZGVmYXVsdCkiCittc2dzdHIgIsOnYWzEscWfbWEgYcSfYWPEsW7EsSBlc2tpIGR1cnVtdW5hIGdldGlyIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxOQorbXNnaWQgImlnbm9yZSB1bm1lcmdlZCBlbnRyaWVzIgorbXNnc3RyICJiaXJsZcWfdGlyaWxtZW1pxZ8gZ2lyZGlsZXJpIHlvayBzYXkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODIwCittc2dpZCAidXNlIG92ZXJsYXkgbW9kZSIKK21zZ3N0ciAieWVycGF5bGHFn8SxbSBraXBpbmkga3VsbGFuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MjgKK21zZ2lkICIiCisiZ2l0IGNsZWFuIFstZF0gWy1mXSBbLWldIFstbl0gWy1xXSBbLWUgPHBhdHRlcm4+XSBbLXggfCAtWF0gWy0tXSA8cGF0aHM+Li4uIgorbXNnc3RyICIiCisiZ2l0IGNsZWFuIFstZF0gWy1mXSBbLWldIFstbl0gWy1xXSBbLWUgPGRpemdpPl0gWy14IHwgLVhdIFstLV0gPHlvbGxhcj4uLi4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMgorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlc1xuIgorbXNnc3RyICIlcyBrYWxkxLFyxLFsxLF5b3JcbiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjMzCisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSAlc1xuIgorbXNnc3RyICIlcyBrYWxkxLFyxLFsYWNha1xuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBpbmcgcmVwb3NpdG9yeSAlc1xuIgorbXNnc3RyICIlcyBkaXppbmkgYXRsYW7EsXlvclxuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgc2tpcCByZXBvc2l0b3J5ICVzXG4iCittc2dzdHIgIiVzIGRpemluaSBhdGxhbmFjYWtcbiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjM2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgJXMiCittc2dzdHIgIiVzIGthbGTEsXLEsWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgbHN0YXQgJXNcbiIKK21zZ3N0ciAiJXMgJ2xzdGF0JyB5YXDEsWxhbWFkxLFcbiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjMwMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUHJvbXB0IGhlbHA6XG4iCisiMSAgICAgICAgICAtIHNlbGVjdCBhIG51bWJlcmVkIGl0ZW1cbiIKKyJmb28gICAgICAgIC0gc2VsZWN0IGl0ZW0gYmFzZWQgb24gdW5pcXVlIHByZWZpeFxuIgorIiAgICAgICAgICAgLSAoZW1wdHkpIHNlbGVjdCBub3RoaW5nXG4iCittc2dzdHIgIiIKKyLEsHN0ZW0geWFyZMSxbcSxOlxuIgorIjEgICAgICAgICAgLSBudW1hcmFsYW5kxLFyxLFsbcSxxZ8gYmlyIMO2Z2Ugc2XDp1xuIgorImZvbyAgICAgICAgLSBiZW56ZXJzaXogw7ZuZWtlIGRheWFuYXJhayBiaXIgw7ZnZSBzZcOnXG4iCisiICAgICAgICAgICAtIChib8WfKSBoacOnYmlyIMWfZXkgc2XDp21lXG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMDUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlByb21wdCBoZWxwOlxuIgorIjEgICAgICAgICAgLSBzZWxlY3QgYSBzaW5nbGUgaXRlbVxuIgorIjMtNSAgICAgICAgLSBzZWxlY3QgYSByYW5nZSBvZiBpdGVtc1xuIgorIjItMyw2LTkgICAgLSBzZWxlY3QgbXVsdGlwbGUgcmFuZ2VzXG4iCisiZm9vICAgICAgICAtIHNlbGVjdCBpdGVtIGJhc2VkIG9uIHVuaXF1ZSBwcmVmaXhcbiIKKyItLi4uICAgICAgIC0gdW5zZWxlY3Qgc3BlY2lmaWVkIGl0ZW1zXG4iCisiKiAgICAgICAgICAtIGNob29zZSBhbGwgaXRlbXNcbiIKKyIgICAgICAgICAgIC0gKGVtcHR5KSBmaW5pc2ggc2VsZWN0aW5nXG4iCittc2dzdHIgIiIKKyLEsHN0ZW0geWFyZMSxbcSxOjEgICAgICAgICAgLSB0ZWsgYmlyIMO2Z2Ugc2XDp1xuIgorIjMtNSAgICAgICAgLSBiaXIgw7ZnZSBhcmFsxLHEn8SxIHNlw6dcbiIKKyIyLTMsNi05ICAgIC0gYmlyZGVuIMOnb2sgZXJpbSBzZcOnXG4iCisiZm9vICAgICAgICAtIGJlbnplcnNpeiDDtm5la2UgZGF5YW5hcmFrIGJpciDDtmdlIHNlw6dcbiIKKyItLi4uICAgICAgIC0gYmVsaXJ0aWxlbiDDtmdlbGVyaW4gc2XDp2ltaW5pIGthbGTEsXJcbiIKKyIqICAgICAgICAgIC0gdMO8bSDDtmdlbGVyaSBzZcOnXG4iCisiICAgICAgICAgICAtIChib8WfKSBzZcOnaW1pIGJpdGlyXG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo1MjEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NzAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTc1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJIdWggKCVzKT9cbiIKK21zZ3N0ciAiUGFyZG9uICglcyk/XG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo2NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5wdXQgaWdub3JlIHBhdHRlcm5zPj4gIgorbXNnc3RyICJHaXJkaSB5b2sgc2F5bWEgZGl6Z2lsZXJpPj4gIgorCisjOiBidWlsdGluL2NsZWFuLmM6NzAwCisjLCBjLWZvcm1hdAorbXNnaWQgIldBUk5JTkc6IENhbm5vdCBmaW5kIGl0ZW1zIG1hdGNoZWQgYnk6ICVzIgorbXNnc3RyICJVWUFSSTogxZ51bnVubGEgZcWfbGXFn2VuIMO2Z2VsZXIgYnVsdW5hbcSxeW9yOiAlcyIKKworIzogYnVpbHRpbi9jbGVhbi5jOjcyMQorbXNnaWQgIlNlbGVjdCBpdGVtcyB0byBkZWxldGUiCittc2dzdHIgIlNpbGluZWNlayDDtmdlbGVyaSBzZcOnaW4iCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8ga2VlcCBbeS9OXSBhcyBpcworIzogYnVpbHRpbi9jbGVhbi5jOjc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmUgJXMgW3kvTl0/ICIKK21zZ3N0ciAiJXMga2FsZMSxcsSxbHPEsW4gbcSxIFt5L05dPyAiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3OTUKK21zZ2lkICIiCisiY2xlYW4gICAgICAgICAgICAgICAtIHN0YXJ0IGNsZWFuaW5nXG4iCisiZmlsdGVyIGJ5IHBhdHRlcm4gICAtIGV4Y2x1ZGUgaXRlbXMgZnJvbSBkZWxldGlvblxuIgorInNlbGVjdCBieSBudW1iZXJzICAgLSBzZWxlY3QgaXRlbXMgdG8gYmUgZGVsZXRlZCBieSBudW1iZXJzXG4iCisiYXNrIGVhY2ggICAgICAgICAgICAtIGNvbmZpcm0gZWFjaCBkZWxldGlvbiAobGlrZSBcInJtIC1pXCIpXG4iCisicXVpdCAgICAgICAgICAgICAgICAtIHN0b3AgY2xlYW5pbmdcbiIKKyJoZWxwICAgICAgICAgICAgICAgIC0gdGhpcyBzY3JlZW5cbiIKKyI/ICAgICAgICAgICAgICAgICAgIC0gaGVscCBmb3IgcHJvbXB0IHNlbGVjdGlvbiIKK21zZ3N0ciAiIgorImNsZWFuICAgICAgICAgICAgICAgLSB0ZW1pemxpxJ9lIGJhxZ9sYVxuIgorImZpbHRlciBieSBwYXR0ZXJuICAgLSBzaWxpbm1leWVjZWsgw7ZnZWxlcmkgYmVsaXJsZVxuIgorInNlbGVjdCBieSBudW1iZXJzICAgLSBzaWxpbmVjZWsgw7ZnZWxlcmkgc2F5xLFsYXLEsSBpbGUgc2XDp1xuIgorImFzayBlYWNoICAgICAgICAgICAgLSBoZXIgc2lsbWV5aSBvbmF5bGEgKFwicm0gLWlcIiBnaWJpKVxuIgorInF1aXQgICAgICAgICAgICAgICAgLSB0ZW1pemxpxJ9pIGR1cmR1clxuIgorImhlbHAgICAgICAgICAgICAgICAgLSBidSBla3JhbsSxIGfDtnLDvG50w7xsZVxuIgorIj8gICAgICAgICAgICAgICAgICAgLSBpc3RlbSBzZcOnaW1pIGnDp2luIHlhcmTEsW0iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo4MzEKK21zZ2lkICJXb3VsZCByZW1vdmUgdGhlIGZvbGxvd2luZyBpdGVtOiIKK21zZ2lkX3BsdXJhbCAiV291bGQgcmVtb3ZlIHRoZSBmb2xsb3dpbmcgaXRlbXM6IgorbXNnc3RyWzBdICJBxZ9hxJ/EsWRha2kgw7ZnZSBrYWxkxLFyxLFsYWNhazoiCittc2dzdHJbMV0gIkHFn2HEn8SxZGFraSDDtmdlbGVyIGthbGTEsXLEsWxhY2FrOiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjg0NworbXNnaWQgIk5vIG1vcmUgZmlsZXMgdG8gY2xlYW4sIGV4aXRpbmcuIgorbXNnc3RyICJUZW1pemxlbmVjZWsgYmHFn2thIGRvc3lhIHlvaywgw6fEsWvEsWzEsXlvci4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MDkKK21zZ2lkICJkbyBub3QgcHJpbnQgbmFtZXMgb2YgZmlsZXMgcmVtb3ZlZCIKK21zZ3N0ciAia2FsZMSxcsSxbGFuIGRvc3lhbGFyxLFuIGFkbGFyxLFuxLEgeWF6ZMSxcm1hIgorCisjOiBidWlsdGluL2NsZWFuLmM6OTExCittc2dpZCAiZm9yY2UiCittc2dzdHIgInpvcmxhIgorCisjOiBidWlsdGluL2NsZWFuLmM6OTEyCittc2dpZCAiaW50ZXJhY3RpdmUgY2xlYW5pbmciCittc2dzdHIgImV0a2lsZcWfaW1saSB0ZW1pemxpayIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkxNAorbXNnaWQgInJlbW92ZSB3aG9sZSBkaXJlY3RvcmllcyIKK21zZ3N0ciAiZGl6aW5sZXJpIHTDvG3DvHlsZSBrYWxkxLFyIgorCisjOiBidWlsdGluL2NsZWFuLmM6OTE1IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjIgYnVpbHRpbi9kZXNjcmliZS5jOjU2NAorIzogYnVpbHRpbi9ncmVwLmM6ODg5IGJ1aWx0aW4vbG9nLmM6MTc3IGJ1aWx0aW4vbG9nLmM6MTc5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU3IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjYgYnVpbHRpbi9uYW1lLXJldi5jOjUyOAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OQorbXNnaWQgInBhdHRlcm4iCittc2dzdHIgImRpemdpIgorCisjOiBidWlsdGluL2NsZWFuLmM6OTE2Cittc2dpZCAiYWRkIDxwYXR0ZXJuPiB0byBpZ25vcmUgcnVsZXMiCittc2dzdHIgInlvayBzYXltYSBrdXJhbGxhcsSxbmEgPGRpemdpPiBla2xlIgorCisjOiBidWlsdGluL2NsZWFuLmM6OTE3Cittc2dpZCAicmVtb3ZlIGlnbm9yZWQgZmlsZXMsIHRvbyIKK21zZ3N0ciAieW9rIHNhecSxbGFuIGRvc3lhbGFyIGRhIGthbGTEsXLEsWxkxLEiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTkKK21zZ2lkICJyZW1vdmUgb25seSBpZ25vcmVkIGZpbGVzIgorbXNnc3RyICJ5YWxuxLF6Y2EgeW9rIHNhecSxbGFuIGRvc3lhbGFyxLEga2FsZMSxciIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkzNworbXNnaWQgIi14IGFuZCAtWCBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKK21zZ3N0ciAiLXggdmUgLVggYmlybGlrdGUga3VsbGFuxLFsYW1heiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjk0MQorbXNnaWQgIiIKKyJjbGVhbi5yZXF1aXJlRm9yY2Ugc2V0IHRvIHRydWUgYW5kIG5laXRoZXIgLWksIC1uLCBub3IgLWYgZ2l2ZW47IHJlZnVzaW5nIHRvICIKKyJjbGVhbiIKK21zZ3N0ciAiIgorImNsZWFuLnJlcXVpcmVGb3JjZSAndHJ1ZScgb2xhcmFrIGF5YXJsYW5txLHFnyB2ZSBuZSAtaSwgbmUgLW4sIG5lIGRlIC1mICIKKyJ2ZXJpbG1pxZ87IHRlbWl6bGVtZSByZWRkZWRpbGl5b3IiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5NDQKK21zZ2lkICIiCisiY2xlYW4ucmVxdWlyZUZvcmNlIGRlZmF1bHRzIHRvIHRydWUgYW5kIG5laXRoZXIgLWksIC1uLCBub3IgLWYgZ2l2ZW47ICIKKyJyZWZ1c2luZyB0byBjbGVhbiIKK21zZ3N0ciAiIgorImNsZWFuLnJlcXVpcmVGb3JjZSDDtm50YW7EsW1sxLEgb2xhcmFrICd0cnVlJyB2ZSBuZSAtaSwgbmUgLW4sIG5lIGRlIC1mICIKKyJ2ZXJpbG1pxZ87IHRlbWl6bGVtZSByZWRkZWRpbGl5b3IiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NQorbXNnaWQgImdpdCBjbG9uZSBbPG9wdGlvbnM+XSBbLS1dIDxyZXBvPiBbPGRpcj5dIgorbXNnc3RyICJnaXQgY2xvbmUgWzxzZcOnZW5la2xlcj5dIFstLV0gPGRlcG8+IFs8ZGl6aW4+XSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjkzCittc2dpZCAiZG9uJ3QgY3JlYXRlIGEgY2hlY2tvdXQiCittc2dzdHIgIsOnxLFrxLHFnyB5YXBtYSEiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NCBidWlsdGluL2Nsb25lLmM6OTYgYnVpbHRpbi9pbml0LWRiLmM6NDg5Cittc2dpZCAiY3JlYXRlIGEgYmFyZSByZXBvc2l0b3J5IgorbXNnc3RyICLDp8SxcGxhayBiaXIgZGVwbyBvbHXFn3R1ciIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk4Cittc2dpZCAiY3JlYXRlIGEgbWlycm9yIHJlcG9zaXRvcnkgKGltcGxpZXMgYmFyZSkiCittc2dzdHIgImJpciB5YW5zxLEgZGVwbyBvbHXFn3R1ciAow6fEsXBsYWsgaW1hIGVkZXIpIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTAwCittc2dpZCAidG8gY2xvbmUgZnJvbSBhIGxvY2FsIHJlcG9zaXRvcnkiCittc2dzdHIgImJpciB5ZXJlbCBkZXBvZGFuIGtsb25sYSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwMgorbXNnaWQgImRvbid0IHVzZSBsb2NhbCBoYXJkbGlua3MsIGFsd2F5cyBjb3B5IgorbXNnc3RyICJ5ZXJlbCBzYWJpdCBiYcSfbGFyxLEga3VsbGFubWEsIGhlciB6YW1hbiBrb3B5YWxhIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTA0Cittc2dpZCAic2V0dXAgYXMgc2hhcmVkIHJlcG9zaXRvcnkiCittc2dzdHIgInBheWxhxZ/EsWxhbiBkZXBvIGF5YXJsYSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwNworbXNnaWQgInBhdGhzcGVjIgorbXNnc3RyICJ5b2wgYmVsaXJ0ZWNpIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTA3Cittc2dpZCAiaW5pdGlhbGl6ZSBzdWJtb2R1bGVzIGluIHRoZSBjbG9uZSIKK21zZ3N0ciAia2xvbiBpw6dlcmlzaW5kZWtpIGFsdG1vZMO8bGxlcmkgaWxrbGVuZGlyIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTEwCittc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgY2xvbmVkIGluIHBhcmFsbGVsIgorbXNnc3RyICJwYXJhbGVsZGUga2xvbmxhbmFuIGFsdG1vZMO8bGxlcmluIHNhecSxc8SxIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTExIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NgorbXNnaWQgInRlbXBsYXRlLWRpcmVjdG9yeSIKK21zZ3N0ciAixZ9hYmxvbiBkaXppbmkiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTIgYnVpbHRpbi9pbml0LWRiLmM6NDg3Cittc2dpZCAiZGlyZWN0b3J5IGZyb20gd2hpY2ggdGVtcGxhdGVzIHdpbGwgYmUgdXNlZCIKK21zZ3N0ciAixZ9hYmxvbmxhcsSxbiBrdWxsYW7EsWxhY2HEn8SxIGRpemluIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTE0IGJ1aWx0aW4vY2xvbmUuYzoxMTYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTEyCittc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkiCittc2dzdHIgImJhxZ92dXJ1IGRlcG9zdSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExOCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTQKK21zZ2lkICJ1c2UgLS1yZWZlcmVuY2Ugb25seSB3aGlsZSBjbG9uaW5nIgorbXNnc3RyICItLXJlZmVyZW5jZSfEsSB5YWxuxLF6Y2Ega2xvbmxhcmtlbiBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTkgYnVpbHRpbi9jb2x1bW4uYzoyNyBidWlsdGluL21lcmdlLWZpbGUuYzo0NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQxIGJ1aWx0aW4vcmVwYWNrLmM6MzI3Cittc2dpZCAibmFtZSIKK21zZ3N0ciAiYWQiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjAKK21zZ2lkICJ1c2UgPG5hbWU+IGluc3RlYWQgb2YgJ29yaWdpbicgdG8gdHJhY2sgdXBzdHJlYW0iCittc2dzdHIgIsO8c3RrYXluYcSfxLEgaXpsZW1layBpw6dpbiAnb3JpZ2luJyB5ZXJpbmUgPGFkPiBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjIKK21zZ2lkICJjaGVja291dCA8YnJhbmNoPiBpbnN0ZWFkIG9mIHRoZSByZW1vdGUncyBIRUFEIgorbXNnc3RyICJ1emFrIGtvbnVtdW4gSEVBRCdpIHllcmluZSA8ZGFsPifEsSDDp8Sxa8SxxZ8geWFwIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI0Cittc2dpZCAicGF0aCB0byBnaXQtdXBsb2FkLXBhY2sgb24gdGhlIHJlbW90ZSIKK21zZ3N0ciAidXphayBrb251bWRha2kgZ2l0LXVwbG9hZC1wYWNrJ2Ugb2xhbiB5b2wiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjUgYnVpbHRpbi9mZXRjaC5jOjE2OCBidWlsdGluL2dyZXAuYzo4MjgKKyM6IGJ1aWx0aW4vcHVsbC5jOjIwNworbXNnaWQgImRlcHRoIgorbXNnc3RyICJkZXJpbmxpayIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEyNgorbXNnaWQgImNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgb2YgdGhhdCBkZXB0aCIKK21zZ3N0ciAidmVyaWxlbiBkZXJpbmxpa3RlIHPEscSfIGJpciBkZXBvIG9sdcWfdHVyIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI3IGJ1aWx0aW4vZmV0Y2guYzoxNzAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDMwCittc2dpZCAidGltZSIKK21zZ3N0ciAiemFtYW4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjgKK21zZ2lkICJjcmVhdGUgYSBzaGFsbG93IGNsb25lIHNpbmNlIGEgc3BlY2lmaWMgdGltZSIKK21zZ3N0ciAidmVyaWxlbiB6YW1hbmRhbiBzb25yYXPEsW7EsSBpw6dlcmVuIGJpciBzxLHEnyBkZXBvIG9sdcWfdHVyIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI5IGJ1aWx0aW4vZmV0Y2guYzoxNzIgYnVpbHRpbi9mZXRjaC5jOjE5NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgwCittc2dpZCAicmV2aXNpb24iCittc2dzdHIgInJldml6eW9uIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTMwIGJ1aWx0aW4vZmV0Y2guYzoxNzMKK21zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IGNsb25lLCBleGNsdWRpbmcgcmV2IgorbXNnc3RyICJyZXZpenlvbnUgaGFyacOnIHR1dGFyYWsgc8SxxJ8ga2xvbnVuIGdlw6dtacWfaW5pIGRlcmlubGXFn3RpciIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEzMiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjgKK21zZ2lkICJjbG9uZSBvbmx5IG9uZSBicmFuY2gsIEhFQUQgb3IgLS1icmFuY2giCittc2dzdHIgInlhbG7EsXpjYSBiaXIgZGFsIGtsb25sYSwgSEVBRCB2ZXlhIC0tYnJhbmNoIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTM0Cittc2dpZCAiZG9uJ3QgY2xvbmUgYW55IHRhZ3MsIGFuZCBtYWtlIGxhdGVyIGZldGNoZXMgbm90IHRvIGZvbGxvdyB0aGVtIgorbXNnc3RyICJldGlrZXQga2xvbmxhbWEgdmUgc29ucmFraSBnZXRpcm1lbGVyIGRlIG9ubGFyxLEgaXpsZW1lc2luIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTM2Cittc2dpZCAiYW55IGNsb25lZCBzdWJtb2R1bGVzIHdpbGwgYmUgc2hhbGxvdyIKK21zZ3N0ciAia2xvbmxhbmFuIGFsdG1vZMO8bGxlciBzxLHEnyBvbGFjYWsiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzcgYnVpbHRpbi9pbml0LWRiLmM6NDk1Cittc2dpZCAiZ2l0ZGlyIgorbXNnc3RyICJnaXQgZGl6aW5pIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTM4IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5NgorbXNnaWQgInNlcGFyYXRlIGdpdCBkaXIgZnJvbSB3b3JraW5nIHRyZWUiCittc2dzdHIgImdpdCBkaXppbmluaSDDp2FsxLHFn21hIGHEn2FjxLFuZGFuIGF5xLFyIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTM5Cittc2dpZCAia2V5PXZhbHVlIgorbXNnc3RyICJhbmFodGFyPWRlxJ9lciIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0MAorbXNnaWQgInNldCBjb25maWcgaW5zaWRlIHRoZSBuZXcgcmVwb3NpdG9yeSIKK21zZ3N0ciAieWFwxLFsYW5kxLFybWF5xLEgeWVuaSBkZXBvbnVuIGnDp2luZGUgYXlhcmxhIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQyIGJ1aWx0aW4vZmV0Y2guYzoxOTAgYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9wdXNoLmM6NTczIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTcyCittc2dpZCAic2VydmVyLXNwZWNpZmljIgorbXNnc3RyICJzdW51Y3V5YSDDtnplbCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0MiBidWlsdGluL2ZldGNoLmM6MTkwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzYKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3MyBidWlsdGluL3NlbmQtcGFjay5jOjE3MworbXNnaWQgIm9wdGlvbiB0byB0cmFuc21pdCIKK21zZ3N0ciAiaWxldG1lIHNlw6dlbmXEn2kiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDMgYnVpbHRpbi9mZXRjaC5jOjE5MSBidWlsdGluL3B1bGwuYzoyMjAKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3NAorbXNnaWQgInVzZSBJUHY0IGFkZHJlc3NlcyBvbmx5IgorbXNnc3RyICJ5YWxuxLF6Y2EgSVB2NCBhZHJlc2xlcmkga3VsbGFuIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQ1IGJ1aWx0aW4vZmV0Y2guYzoxOTMgYnVpbHRpbi9wdWxsLmM6MjIzCisjOiBidWlsdGluL3B1c2guYzo1NzYKK21zZ2lkICJ1c2UgSVB2NiBhZGRyZXNzZXMgb25seSIKK21zZ3N0ciAieWFsbsSxemNhIElQdjYgYWRyZXNsZXJpIGt1bGxhbiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0OQorbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIHVzZSB0aGVpciByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICJrbG9ubGFuYW4gaGVyaGFuZ2kgYmlyIGFsdG1vZMO8bCBrZW5kaSB1emFrIGl6bGVtZSBkYWxsYXLEsW7EsSBrdWxsYW5hY2FrIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTUxCittc2dpZCAiaW5pdGlhbGl6ZSBzcGFyc2UtY2hlY2tvdXQgZmlsZSB0byBpbmNsdWRlIG9ubHkgZmlsZXMgYXQgcm9vdCIKK21zZ3N0ciAiIgorInNwYXJzZS1jaGVja291dCBkb3N5YXPEsW7EsSB5YWxuxLF6Y2Ega8O2a3Rla2kgZG9zeWFsYXLEsSBpw6dlcmVjZWsgYmnDp2ltZGUgIgorImlsa2xlbmRpciIKKworIzogYnVpbHRpbi9jbG9uZS5jOjI4NworbXNnaWQgIiIKKyJObyBkaXJlY3RvcnkgbmFtZSBjb3VsZCBiZSBndWVzc2VkLlxuIgorIlBsZWFzZSBzcGVjaWZ5IGEgZGlyZWN0b3J5IG9uIHRoZSBjb21tYW5kIGxpbmUiCittc2dzdHIgIiIKKyJCaXIgZGl6aW4gYWTEsSB0YWhtaW4gZWRpbGVtZWRpLlxuIgorIkzDvHRmZW4ga29tdXQgc2F0xLFyxLFuZGEgYmlyIGRpemluIGJlbGlydGluLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjM0MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbmZvOiBDb3VsZCBub3QgYWRkIGFsdGVybmF0ZSBmb3IgJyVzJzogJXNcbiIKK21zZ3N0ciAiaW5mbzogJyVzJyBpw6dpbiBhbHRlcm5hdGlmIGVrbGVuZW1lZGk6ICVzXG4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhpc3RzIGFuZCBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIiVzIHZhciB2ZSBiaXIgZGl6aW4gZGXEn2lsIgorCisjOiBidWlsdGluL2Nsb25lLmM6NDMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGFydCBpdGVyYXRvciBvdmVyICclcyciCittc2dzdHIgInlpbmVsZXlpY2kgJyVzJyDDvHplcmluZGVuIMOnYWzEscWfdMSxcsSxbGFtYWTEsSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGxpbmsgJyVzJyIKK21zZ3N0ciAiJyVzJyBiYcSfxLEgb2x1xZ90dXJ1bGFtYWTEsSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjQ2NAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY29weSBmaWxlIHRvICclcyciCittc2dzdHIgImRvc3lhIMWfdXJheWEga29weWFsYW5hbWFkxLE6ICclcyciCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGl0ZXJhdGUgb3ZlciAnJXMnIgorbXNnc3RyICInJXMnIMO8emVyaW5kZSB5aW5lbGVuZW1lZGkiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZS5cbiIKK21zZ3N0ciAiYml0dGkuXG4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo1MDgKK21zZ2lkICIiCisiQ2xvbmUgc3VjY2VlZGVkLCBidXQgY2hlY2tvdXQgZmFpbGVkLlxuIgorIllvdSBjYW4gaW5zcGVjdCB3aGF0IHdhcyBjaGVja2VkIG91dCB3aXRoICdnaXQgc3RhdHVzJ1xuIgorImFuZCByZXRyeSB3aXRoICdnaXQgcmVzdG9yZSAtLXNvdXJjZT1IRUFEIDovJ1xuIgorbXNnc3RyICIiCisiS2xvbmxhbWEgYmHFn2FyxLFsxLEgb2xkdSwgYW5jYWsgw6fEsWvEscWfIHlhcMSxbGFtYWTEsS5cbiIKKyJOZXlpbiDDp8Sxa8SxxZ8geWFwxLFsxLFwIHlhcMSxbG1hZMSxxJ/EsW7EsSAnZ2l0IHN0YXR1cycgaWxlIGluY2VsZXllYmlsaXJcbiIKKyJ2ZSAnZ2l0IHJlc3RvcmUgLS1zb3VyY2U9SEVBRCcgaWxlIHllbmlkZW4gZGVuZXllYmlsaXJzaW5pei5cbiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgZmluZCByZW1vdGUgYnJhbmNoICVzIHRvIGNsb25lLiIKK21zZ3N0ciAiS2xvbmxhbmFjYWsgJXMgdXphayBkYWwgYnVsdW5hbWFkxLEuIgorCisjOiBidWlsdGluL2Nsb25lLmM6NzA1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgJXMiCittc2dzdHIgIiVzIGfDvG5jZWxsZW5lbWl5b3IiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo3NTMKK21zZ2lkICJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgInNwYXJzZS1jaGVja291dCBpbGtsZW5kaXJpbGVtZWRpIgorCisjOiBidWlsdGluL2Nsb25lLmM6Nzc2Cittc2dpZCAicmVtb3RlIEhFQUQgcmVmZXJzIHRvIG5vbmV4aXN0ZW50IHJlZiwgdW5hYmxlIHRvIGNoZWNrb3V0LlxuIgorbXNnc3RyICIiCisidXphayBrb251bSBIRUFEJ2kgdmFyIG9sbWF5YW4gYmHFn3Z1cnV5YSBiYcSfbGFuxLF5b3IsIMOnxLFrxLHFnyB5YXDEsWxhbcSxeW9yLlxuIgorCisjOiBidWlsdGluL2Nsb25lLmM6ODA3Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrb3V0IHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiw6dhbMSxxZ9tYSBhxJ9hY8SxIMOnxLFrxLHFnyB5YXDEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL2Nsb25lLmM6ODYyCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHBhcmFtZXRlcnMgdG8gY29uZmlnIGZpbGUiCittc2dzdHIgInBhcmFtZXRyZWxlciB5YXDEsWxhbmTEsXJtYSBkb3N5YXPEsW5hIHlhesSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MjUKK21zZ2lkICJjYW5ub3QgcmVwYWNrIHRvIGNsZWFuIHVwIgorbXNnc3RyICJ0ZW1pemxpayBpw6dpbiB5ZW5pZGVuIHBha2V0bGVuZW1peW9yIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTI3Cittc2dpZCAiY2Fubm90IHVubGluayB0ZW1wb3JhcnkgYWx0ZXJuYXRlcyBmaWxlIgorbXNnc3RyICJnZcOnaWNpIGFsdGVybmF0aWZsZXIgZG9zeWFzxLFuxLFuIGJhxJ9sYW50xLFzxLEga2VzaWxlbWl5b3IiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NjUgYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTUwCittc2dpZCAiVG9vIG1hbnkgYXJndW1lbnRzLiIKK21zZ3N0ciAiw4dvayBmYXpsYSBkZcSfacWfa2VuLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk2OQorbXNnaWQgIllvdSBtdXN0IHNwZWNpZnkgYSByZXBvc2l0b3J5IHRvIGNsb25lLiIKK21zZ3N0ciAiS2xvbmxhbWFrIGnDp2luIGJpciBkZXBvIGJlbGlydG1lbGlzaW5pei4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1iYXJlIGFuZCAtLW9yaWdpbiAlcyBvcHRpb25zIGFyZSBpbmNvbXBhdGlibGUuIgorbXNnc3RyICItLWJhcmUgdmUgLS1vcmlnaW4gJXMgc2XDp2VuZWtsZXJpIGJpcmJpcml5bGUgdXl1bXN1ei4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5ODUKK21zZ2lkICItLWJhcmUgYW5kIC0tc2VwYXJhdGUtZ2l0LWRpciBhcmUgaW5jb21wYXRpYmxlLiIKK21zZ3N0ciAiLS1iYXJlIHZlIC0tc2VwYXJhdGUtZ2l0LWRpciBiaXJiaXJpeWxlIHV5dW1zdXouIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlcG9zaXRvcnkgJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiJyVzJyBkZXBvc3UgbWV2Y3V0IGRlxJ9pbCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwMDQgYnVpbHRpbi9mZXRjaC5jOjE3OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVwdGggJXMgaXMgbm90IGEgcG9zaXRpdmUgbnVtYmVyIgorbXNnc3RyICIlcyBkZXJpbmxpxJ9pIHBveml0aWYgYmlyIHNhecSxIGRlxJ9pbCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVzdGluYXRpb24gcGF0aCAnJXMnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYW4gZW1wdHkgZGlyZWN0b3J5LiIKK21zZ3N0ciAiSGVkZWYgeW9sdSAnJXMnIGhhbGloYXrEsXJkYSBtZXZjdXQgdmUgYm/FnyBiaXIgZGl6aW4gZGXEn2lsLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAid29ya2luZyB0cmVlICclcycgYWxyZWFkeSBleGlzdHMuIgorbXNnc3RyICLDh2FsxLHFn21hIGHEn2FjxLEgJyVzJyBoYWxpaGF6xLFyZGEgbWV2Y3V0LiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwMzkgYnVpbHRpbi9jbG9uZS5jOjEwNjAgYnVpbHRpbi9kaWZmdG9vbC5jOjI3MQorIzogYnVpbHRpbi9sb2cuYzoxODY2IGJ1aWx0aW4vd29ya3RyZWUuYzoyOTUgYnVpbHRpbi93b3JrdHJlZS5jOjMyNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgb2YgJyVzJyIKK21zZ3N0ciAixZ91bnVuIMO2bmPDvCBkaXppbmxlcmkgb2x1xZ90dXJ1bGFtYWTEsTogJyVzJyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSB3b3JrIHRyZWUgZGlyICclcyciCittc2dzdHIgIiclcycgw6dhbMSxxZ9tYSBhxJ9hY8SxIGRpemluaSBvbHXFn3R1cnVsYW1hZMSxIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTA2NAorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9uaW5nIGludG8gYmFyZSByZXBvc2l0b3J5ICclcycuLi5cbiIKK21zZ3N0ciAiJyVzJyDDp8SxcGxhayBkZXBvc3VuYSBrbG9ubGFuxLF5b3IuLi5cbiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvbmluZyBpbnRvICclcycuLi5cbiIKK21zZ3N0ciAixZ51cmF5YSBrbG9ubGFuxLF5b3I6ICclcycuLi5cbiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwOTAKK21zZ2lkICIiCisiY2xvbmUgLS1yZWN1cnNpdmUgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBib3RoIC0tcmVmZXJlbmNlIGFuZCAtLXJlZmVyZW5jZS1pZi0iCisiYWJsZSIKK21zZ3N0ciAiIgorImNsb25lIC0tcmVjdXJzaXZlIGhlbSAtLXJlZmVyZW5jZSBoZW0gLS1yZWZlcmVuY2UtaWYtYWJsZSBpbGUgdXl1bWx1IGRlxJ9pbCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExNTQKK21zZ2lkICItLWRlcHRoIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKK21zZ3N0ciAiLS1kZXB0aCB5ZXJlbCBrbG9ubGFyZGEgeW9rIHNhecSxbMSxcjsgeWVyaW5lIGZpbGU6Ly8ga3VsbGFuxLFuLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExNTYKK21zZ2lkICItLXNoYWxsb3ctc2luY2UgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgorbXNnc3RyICItLXNoYWxsb3ctc2luY2UgeWVyZWwga2xvbmxhcmRhIHlvayBzYXnEsWzEsXI7IHllcmluZSBmaWxlOi8vIGt1bGxhbsSxbi4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTU4Cittc2dpZCAiLS1zaGFsbG93LWV4Y2x1ZGUgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgorbXNnc3RyICIiCisiLS1zaGFsbG93LWV4Y2x1ZGUgeWVyZWwga2xvbmxhcmRhIHlvayBzYXnEsWzEsXI7IHllcmluZSBmaWxlOi8vIGt1bGxhbsSxbi4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTYwCittc2dpZCAiLS1maWx0ZXIgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgorbXNnc3RyICItLWZpbHRlciB5ZXJlbCBrbG9ubGFyZGEgeW9rIHNhecSxbMSxcjsgeWVyaW5lIGZpbGU6Ly8ga3VsbGFuxLFuLiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExNjMKK21zZ2lkICJzb3VyY2UgcmVwb3NpdG9yeSBpcyBzaGFsbG93LCBpZ25vcmluZyAtLWxvY2FsIgorbXNnc3RyICJrYXluYWsgZGVwbyBzxLHEnywgLS1sb2NhbCB5b2sgc2F5xLFsxLF5b3IiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTY4Cittc2dpZCAiLS1sb2NhbCBpcyBpZ25vcmVkIgorbXNnc3RyICItLWxvY2FsIHlvayBzYXnEsWxkxLEiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjQzIGJ1aWx0aW4vY2xvbmUuYzoxMjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW90ZSBicmFuY2ggJXMgbm90IGZvdW5kIGluIHVwc3RyZWFtICVzIgorbXNnc3RyICIlcyB1emFrIGRhbMSxICVzIMO8c3RrYXluYcSfxLFuZGEgYnVsdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjU0Cittc2dpZCAiWW91IGFwcGVhciB0byBoYXZlIGNsb25lZCBhbiBlbXB0eSByZXBvc2l0b3J5LiIKK21zZ3N0ciAiQm/FnyBiaXIgZGVwb3l1IGtsb25sYW3EscWfIGfDtnLDvG7DvHlvcnN1bnV6LiIKKworIzogYnVpbHRpbi9jb2x1bW4uYzoxMAorbXNnaWQgImdpdCBjb2x1bW4gWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCBjb2x1bW4gWzxzZcOnZW5la2xlcj5dIgorCisjOiBidWlsdGluL2NvbHVtbi5jOjI3Cittc2dpZCAibG9va3VwIGNvbmZpZyB2YXJzIgorbXNnc3RyICJ5YXDEsWxhbmTEsXJtYSBkZcSfacWfa2VubGVyaW5pIGFyYSIKKworIzogYnVpbHRpbi9jb2x1bW4uYzoyOCBidWlsdGluL2NvbHVtbi5jOjI5Cittc2dpZCAibGF5b3V0IHRvIHVzZSIKK21zZ3N0ciAia3VsbGFuxLFsYWNhayB5ZXJsZcWfaW0iCisKKyM6IGJ1aWx0aW4vY29sdW1uLmM6MzAKK21zZ2lkICJNYXhpbXVtIHdpZHRoIgorbXNnc3RyICJvbGFiaWxlY2VrIGVuIMOnb2sgZ2VuacWfbGlrIgorCisjOiBidWlsdGluL2NvbHVtbi5jOjMxCittc2dpZCAiUGFkZGluZyBzcGFjZSBvbiBsZWZ0IGJvcmRlciIKK21zZ3N0ciAic29sIGtlbmFyZGFraSBkb2xndSBib8WfbHXEn3UiCisKKyM6IGJ1aWx0aW4vY29sdW1uLmM6MzIKK21zZ2lkICJQYWRkaW5nIHNwYWNlIG9uIHJpZ2h0IGJvcmRlciIKK21zZ3N0ciAic2HEnyBrZW5hcmRha2kgZG9sZ3UgYm/Fn2x1xJ91IgorCisjOiBidWlsdGluL2NvbHVtbi5jOjMzCittc2dpZCAiUGFkZGluZyBzcGFjZSBiZXR3ZWVuIGNvbHVtbnMiCittc2dzdHIgInPDvHR1bmxhciBhcmFzxLFuZGFraSBkb2xndSBib8WfbHXEn3UiCisKKyM6IGJ1aWx0aW4vY29sdW1uLmM6NTEKK21zZ2lkICItLWNvbW1hbmQgbXVzdCBiZSB0aGUgZmlyc3QgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZCBpbGsgZGXEn2nFn2tlbiBvbG1hbMSxIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTgKK21zZ2lkICIiCisiZ2l0IGNvbW1pdC10cmVlIFsoLXAgPHBhcmVudD4pLi4uXSBbLVNbPGtleWlkPl1dIFsoLW0gPG1lc3NhZ2U+KS4uLl0gWygtRiAiCisiPGZpbGU+KS4uLl0gPHRyZWU+IgorbXNnc3RyICIiCisiZ2l0IGNvbW1pdC10cmVlIFsoLXAgPMO8c3Qtw7ZnZT4pLi4uXSBbLVNbPGFuYWh0b3Itbm8+XV0gWygtbSA8aWxldGk+KS4uLl0gWygtIgorIkYgPGRvc3lhPikuLi5dIDxhxJ9hw6c+IgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhcmVudCAlcyBpZ25vcmVkIgorbXNnc3RyICJ5aW5lbGVubWnFnyDDvHN0IMO2Z2UgJXMgeW9rIHNhecSxbGTEsSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjU2IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMzYgYnVpbHRpbi9sb2cuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0IG5hbWUgJXMiCittc2dzdHIgIiVzIGdlw6dlcmxpIGJpciBuZXNuZSBhZMSxIGRlxJ9pbCIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIG9wZW4gJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiAnJXMnIGHDp8SxbGFtYWTEsSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk2CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQgJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiAnJXMnIG9rdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzo5OAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byBjbG9zZSAnJXMnIgorbXNnc3RyICJnaXQgY29tbWl0LXRyZWU6ICclcycga2FwYXTEsWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTEKK21zZ2lkICJwYXJlbnQiCittc2dzdHIgIsO8c3Qgw7ZnZSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExMgorbXNnaWQgImlkIG9mIGEgcGFyZW50IGNvbW1pdCBvYmplY3QiCittc2dzdHIgImJpciDDvHN0IGfDtm5kZXJpIMO2Z2VzaW5pbiBubydzdSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExNCBidWlsdGluL2NvbW1pdC5jOjE1MDEgYnVpbHRpbi9tZXJnZS5jOjI3MQorIzogYnVpbHRpbi9ub3Rlcy5jOjQwOSBidWlsdGluL25vdGVzLmM6NTc1IGJ1aWx0aW4vc3Rhc2guYzoxNDc3CisjOiBidWlsdGluL3RhZy5jOjQxMgorbXNnaWQgIm1lc3NhZ2UiCittc2dzdHIgImlsZXRpIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE1IGJ1aWx0aW4vY29tbWl0LmM6MTUwMQorbXNnaWQgImNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICJnw7ZuZGVyaSBpbGV0aXNpIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE4Cittc2dpZCAicmVhZCBjb21taXQgbG9nIG1lc3NhZ2UgZnJvbSBmaWxlIgorbXNnc3RyICJnw7ZuZGVyaSBnw7xubMO8ayBpbGV0aXNpbmkgZG9zeWFkYW4gb2t1IgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTIxIGJ1aWx0aW4vY29tbWl0LmM6MTUxMyBidWlsdGluL21lcmdlLmM6Mjg4CisjOiBidWlsdGluL3B1bGwuYzoxNzUgYnVpbHRpbi9yZXZlcnQuYzoxMTgKK21zZ2lkICJHUEcgc2lnbiBjb21taXQiCittc2dzdHIgImfDtm5kZXJpeWkgR1BHIGlsZSBpbXphbGEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMzMKK21zZ2lkICJtdXN0IGdpdmUgZXhhY3RseSBvbmUgdHJlZSIKK21zZ3N0ciAiYmlyIHRhbSBhxJ9hw6cgdmVybWVsaSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjE0MAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQiCittc2dzdHIgImdpdCBjb21taXQtdHJlZTogb2t1bmFtYWTEsSIKKworIzogYnVpbHRpbi9jb21taXQuYzo0MQorbXNnaWQgImdpdCBjb21taXQgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgorbXNnc3RyICJnaXQgY29tbWl0IFs8c2XDp2VuZWtsZXI+XSBbLS1dIDx5b2wtYmxydMOnPi4uLiIKKworIzogYnVpbHRpbi9jb21taXQuYzo0NgorbXNnaWQgImdpdCBzdGF0dXMgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgorbXNnc3RyICJnaXQgc3RhdHVzIFs8c2XDp2VuZWtsZXI+XSBbLS1dIDx5b2wtYmxydMOnPi4uLiIKKworIzogYnVpbHRpbi9jb21taXQuYzo1MQorbXNnaWQgIiIKKyJZb3UgYXNrZWQgdG8gYW1lbmQgdGhlIG1vc3QgcmVjZW50IGNvbW1pdCwgYnV0IGRvaW5nIHNvIHdvdWxkIG1ha2VcbiIKKyJpdCBlbXB0eS4gWW91IGNhbiByZXBlYXQgeW91ciBjb21tYW5kIHdpdGggLS1hbGxvdy1lbXB0eSwgb3IgeW91IGNhblxuIgorInJlbW92ZSB0aGUgY29tbWl0IGVudGlyZWx5IHdpdGggXCJnaXQgcmVzZXQgSEVBRF5cIi5cbiIKK21zZ3N0ciAiIgorIkVuIHNvbiB5YXDEsWxhbiBnw7ZuZGVyaXlpIGRlxJ9pxZ90aXJtZWsgaXN0ZWRpbml6LCBhbmNhayBidSBvbnVcbiIKKyJib8WfYWx0YWNha3TEsXIuIEtvbXV0dW51enUgLS1hbGxvdy1lbXB0eSBpbGUgeWluZWxleWViaWxpciB2ZXlhXG4iCisiZ8O2bmRlcml5aSBcImdpdCByZXNldCBIRUFEXlwiIGlsZSB0w7xtw7x5bGUga2FsZMSxcmFiaWxpcnNpbml6LlxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjU2Cittc2dpZCAiIgorIlRoZSBwcmV2aW91cyBjaGVycnktcGljayBpcyBub3cgZW1wdHksIHBvc3NpYmx5IGR1ZSB0byBjb25mbGljdCByZXNvbHV0aW9uLlxuIgorIklmIHlvdSB3aXNoIHRvIGNvbW1pdCBpdCBhbnl3YXksIHVzZTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5XG4iCisiXG4iCittc2dzdHIgIiIKKyJCaXIgw7ZuY2VraSBzZcOnLWFsIGLDvHnDvGsgb2xhc8SxbMSxa2xhIMOnYWvEscWfbWEgw6fDtnrDvG3DvG5kZW4gZG9sYXnEsSDFn3UgYW5kYSBib8WfLlxuIgorIllpbmUgZGUgZ8O2bmRlcm1layBpc3RlcnNlbml6IMWfdW51IGt1bGxhbsSxbjpcbiIKKyJcbiIKKyJcdGdpdCBjb21taXQgLS1hbGxvdy1lbXB0eVxuIgorIlxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjYzCittc2dpZCAiT3RoZXJ3aXNlLCBwbGVhc2UgdXNlICdnaXQgY2hlcnJ5LXBpY2sgLS1za2lwJ1xuIgorbXNnc3RyICJBa3NpIGR1cnVtZGEgbMO8dGZlbiAnZ2l0IGNoZXJyeS1waWNrIC0tc2tpcCcga3VsbGFuxLFuLlxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjY2Cittc2dpZCAiIgorImFuZCB0aGVuIHVzZTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcbiIKKyJcbiIKKyJ0byByZXN1bWUgY2hlcnJ5LXBpY2tpbmcgdGhlIHJlbWFpbmluZyBjb21taXRzLlxuIgorIklmIHlvdSB3aXNoIHRvIHNraXAgdGhpcyBjb21taXQsIHVzZTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFxuIgorIlxuIgorbXNnc3RyICIiCisidmUgc29ucmEgZ2VyaSBrYWxhbiBnw7ZuZGVyaWxlcmkgc2XDpy1hbCB5YXBtYXnEsSBzw7xyZMO8cm1layBpw6dpbjpcbiIKKyJcbiIKKyJcdGdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXG4iCisiXG4iCisia3VsbGFuxLFuLlxuIgorIkJ1IGfDtm5kZXJpeWkgYXRsYW1hayBpc3RlcnNlbml6IMWfdW51IGt1bGxhbsSxbjpcbiIKKyJcbiIKKyJcdGdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXG4iCisiXG4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzE1Cittc2dpZCAiZmFpbGVkIHRvIHVucGFjayBIRUFEIHRyZWUgb2JqZWN0IgorbXNnc3RyICJIRUFEIGHEn2HDpyBuZXNuZXNpIGHDp8SxbGFtYWTEsSIKKworIzogYnVpbHRpbi9jb21taXQuYzozNTEKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlLCAtYSBpbGUgYmlyIGFubGFtIGlmYWRlIGV0bWl5b3IiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzY0Cittc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgorbXNnc3RyICItLWluY2x1ZGUvLS1vbmx5IGnDp2VybWV5ZW4geW9sbGFyIGJpciBhbmxhbSBpZmFkZSBldG1peW9yLiIKKworIzogYnVpbHRpbi9jb21taXQuYzozNzYKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBpbmRleCIKK21zZ3N0ciAiZ2XDp2ljaSBpbmRla3Mgb2x1xZ90dXJ1bGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzg1Cittc2dpZCAiaW50ZXJhY3RpdmUgYWRkIGZhaWxlZCIKK21zZ3N0ciAiZXRraWxlxZ9pbWxpIGVrbGVtZSBiYcWfYXLEsXPEsXoiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDAwCittc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSB0ZW1wb3JhcnkgaW5kZXgiCittc2dzdHIgImdlw6dpY2kgaW5kZWtzIGfDvG5jZWxsZW5lbWl5b3IiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDAyCittc2dpZCAiRmFpbGVkIHRvIHVwZGF0ZSBtYWluIGNhY2hlIHRyZWUiCittc2dzdHIgIkFuYSDDtm5iZWxsZWsgYcSfYWPEsSBnw7xuY2VsbGVuZW1lZGkiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDI3IGJ1aWx0aW4vY29tbWl0LmM6NDUwIGJ1aWx0aW4vY29tbWl0LmM6NDk2Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ld19pbmRleCBmaWxlIgorbXNnc3RyICJuZXdfaW5kZXhfZmlsZSB5YXrEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjQ3OQorbXNnaWQgImNhbm5vdCBkbyBhIHBhcnRpYWwgY29tbWl0IGR1cmluZyBhIG1lcmdlLiIKK21zZ3N0ciAiQmlyIGJpcmxlxZ90aXJtZSBzxLFyYXPEsW5kYSBrxLFzbWkgZ8O2bmRlcmkgeWFwxLFsYW1hei4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDgxCittc2dpZCAiY2Fubm90IGRvIGEgcGFydGlhbCBjb21taXQgZHVyaW5nIGEgY2hlcnJ5LXBpY2suIgorbXNnc3RyICJCaXIgc2XDpy1hbCBzxLFyYXPEsW5kYSBrxLFzbWkgZ8O2bmRlcmkgeWFwxLFsYW1hei4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDg5Cittc2dpZCAiY2Fubm90IHJlYWQgdGhlIGluZGV4IgorbXNnc3RyICJpbmRla3Mgb2t1bmFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTA4Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRlbXBvcmFyeSBpbmRleCBmaWxlIgorbXNnc3RyICJnZcOnaWNpIGluZGVrcyBkb3N5YXPEsSB5YXrEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjYwNgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgJyVzJyBsYWNrcyBhdXRob3IgaGVhZGVyIgorbXNnc3RyICInJXMnIGfDtm5kZXJpc2luZGUgeWF6YXIgw7xzdGJpbGdpc2kgeW9rIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgJyVzJyBoYXMgbWFsZm9ybWVkIGF1dGhvciBsaW5lIgorbXNnc3RyICInJXMnIGfDtm5kZXJpc2luZGVraSB5YXphciBzYXTEsXLEsSBoYXRhbMSxIG9sdcWfdHVydWxtdcWfIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjYyNworbXNnaWQgIm1hbGZvcm1lZCAtLWF1dGhvciBwYXJhbWV0ZXIiCittc2dzdHIgImhhdGFsxLEgb2x1xZ90dXJ1bG11xZ8gLS1hdXRob3IgcGFyYW1ldHJlc2kiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjgwCittc2dpZCAiIgorInVuYWJsZSB0byBzZWxlY3QgYSBjb21tZW50IGNoYXJhY3RlciB0aGF0IGlzIG5vdCB1c2VkXG4iCisiaW4gdGhlIGN1cnJlbnQgY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIiIKKyJtZXZjdXQgZ8O2bmRlcmkgaWxldGlzaW5kZSBrdWxsYW7EsWxtYXlhbiBiaXIgeW9ydW1cbiIKKyJrYXJha3Rlcmkgc2XDp2lsZW1peW9yIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjcxOCBidWlsdGluL2NvbW1pdC5jOjc1MSBidWlsdGluL2NvbW1pdC5jOjEwOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGxvb2t1cCBjb21taXQgJXMiCittc2dzdHIgIiVzIGfDtm5kZXJpc2kgYXJhbmFtYWTEsSIKKworIzogYnVpbHRpbi9jb21taXQuYzo3MzAgYnVpbHRpbi9zaG9ydGxvZy5jOjMxOQorIywgYy1mb3JtYXQKK21zZ2lkICIocmVhZGluZyBsb2cgbWVzc2FnZSBmcm9tIHN0YW5kYXJkIGlucHV0KVxuIgorbXNnc3RyICIoZ8O8bmzDvGsgaWxldGlzaSBzdGFuZGFydCBnaXJkaSdkZW4gb2t1bnV5b3IpXG4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzMyCittc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZyb20gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgImfDvG5sw7xrIHN0YW5kYXJ0IGdpcmRpJ2RlbiBva3VuYW1hZMSxIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjczNgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBsb2cgZmlsZSAnJXMnIgorbXNnc3RyICJnw7xubMO8ayBkb3N5YXPEsSAnJXMnIG9rdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzY3IGJ1aWx0aW4vY29tbWl0LmM6NzgzCittc2dpZCAiY291bGQgbm90IHJlYWQgU1FVQVNIX01TRyIKK21zZ3N0ciAiU1FVQVNIX01TRyBva3VuYW1hZMSxIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjc3NAorbXNnaWQgImNvdWxkIG5vdCByZWFkIE1FUkdFX01TRyIKK21zZ3N0ciAiTUVSR0VfTVNHIG9rdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODM0Cittc2dpZCAiY291bGQgbm90IHdyaXRlIGNvbW1pdCB0ZW1wbGF0ZSIKK21zZ3N0ciAiZ8O2bmRlcmkgxZ9hYmxvbnUgeWF6xLFsYW1hZMSxIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjg1MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiSXQgbG9va3MgbGlrZSB5b3UgbWF5IGJlIGNvbW1pdHRpbmcgYSBtZXJnZS5cbiIKKyJJZiB0aGlzIGlzIG5vdCBjb3JyZWN0LCBwbGVhc2UgcmVtb3ZlIHRoZSBmaWxlXG4iCisiXHQlc1xuIgorImFuZCB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJcbiIKKyJHw7Zyw7xuw7zFn2UgYmFrxLFsxLFyc2EgYmlyIGJpcmxlxZ90aXJtZSBnw7ZuZGVyaXlvcnN1bnV6LlxuIgorIkXEn2VyIGJ1IGRvxJ9ydSBkZcSfaWxzZSBsw7x0ZmVuIMWfdSBkb3N5YXnEsSBrYWxkxLFyxLFuOlxuIgorIlx0JXNcbiIKKyJ2ZSB5ZW5pZGVuIGRlbmV5aW4uXG4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJJdCBsb29rcyBsaWtlIHlvdSBtYXkgYmUgY29tbWl0dGluZyBhIGNoZXJyeS1waWNrLlxuIgorIklmIHRoaXMgaXMgbm90IGNvcnJlY3QsIHBsZWFzZSByZW1vdmUgdGhlIGZpbGVcbiIKKyJcdCVzXG4iCisiYW5kIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkfDtnLDvG7DvMWfZSBnw7ZyZSBiaXIgc2XDpy1hbCBnw7ZuZGVyaXlvcnN1bnV6LlxuIgorIkXEn2VyIGJ1IGRvxJ9ydSBkZcSfaWxzZSBsw7x0ZmVuIMWfdSBkb3N5YXnEsSBrYWxkxLFyxLFuOlxuIgorIlx0JXNcbiIKKyJ2ZSB5ZW5pZGVuIGRlbmV5aW4uXG4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODcxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQbGVhc2UgZW50ZXIgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB5b3VyIGNoYW5nZXMuIExpbmVzIHN0YXJ0aW5nXG4iCisid2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCittc2dzdHIgIiIKKyJMw7x0ZmVuIGRlxJ9pxZ9pa2xpa2xlcmluaXogacOnaW4gYmlyIGfDtm5kZXJpIGlsZXRpc2kgZ2lyaW4uICclYycgaWxlIGJhxZ9sYXlhblxuIgorInNhdMSxcmxhciB5b2sgc2F5xLFsYWNha3TEsXIuIEJvxZ8gYmlyIGlsZXRpIGfDtm5kZXJpeWkgaXB0YWwgZWRlci5cbiIKKworIzogYnVpbHRpbi9jb21taXQuYzo4NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBsZWFzZSBlbnRlciB0aGUgY29tbWl0IG1lc3NhZ2UgZm9yIHlvdXIgY2hhbmdlcy4gTGluZXMgc3RhcnRpbmdcbiIKKyJ3aXRoICclYycgd2lsbCBiZSBrZXB0OyB5b3UgbWF5IHJlbW92ZSB0aGVtIHlvdXJzZWxmIGlmIHlvdSB3YW50IHRvLlxuIgorIkFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCittc2dzdHIgIiIKKyJMw7x0ZmVuIGRlxJ9pxZ9pa2xpa2xlcmluaXogacOnaW4gYmlyIGfDtm5kZXJpIGlsZXRpc2kgZ2lyaW4uICclYycgaWxlIGJhxZ9sYXlhblxuIgorInNhdMSxcmxhciB0dXR1bGFjYWt0xLFyOyBpc3RlcnNlbml6IG9ubGFyxLEga2FsZMSxcmFiaWxpcnNpbml6LlxuIgorIkJvxZ8gYmlyIGlsZXRpIGfDtm5kZXJpeWkgaXB0YWwgZWRlci5cbiIKKworIzogYnVpbHRpbi9jb21taXQuYzo4OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXNBdXRob3I6ICAgICUuKnMgPCUuKnM+IgorbXNnc3RyICIlc1lhemFyOiAgICAgJS4qcyA8JS4qcz4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzRGF0ZTogICAgICAlcyIKK21zZ3N0ciAiJXNUYXJpaDogICAgICVzIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjkxMQorIywgYy1mb3JtYXQKK21zZ2lkICIlc0NvbW1pdHRlcjogJS4qcyA8JS4qcz4iCittc2dzdHIgIiVzR8O2bmRlcmVuOiAgJS4qcyA8JS4qcz4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTI5Cittc2dpZCAiQ2Fubm90IHJlYWQgaW5kZXgiCittc2dzdHIgIsSwbmRla3Mgb2t1bmFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTk3Cittc2dpZCAiRXJyb3IgYnVpbGRpbmcgdHJlZXMiCittc2dzdHIgIkHEn2HDp2xhciB5YXDEsWzEsXJrZW4gaGF0YSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMDExIGJ1aWx0aW4vdGFnLmM6Mjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBsZWFzZSBzdXBwbHkgdGhlIG1lc3NhZ2UgdXNpbmcgZWl0aGVyIC1tIG9yIC1GIG9wdGlvbi5cbiIKK21zZ3N0ciAiTMO8dGZlbiBpbGV0aXlpIC1tIHZleWEgLUYgc2XDp2VuZcSfaW5pIGt1bGxhbmFyYWsgZGVzdGVrbGV5aW4uXG4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA1NQorIywgYy1mb3JtYXQKK21zZ2lkICItLWF1dGhvciAnJXMnIGlzIG5vdCAnTmFtZSA8ZW1haWw+JyBhbmQgbWF0Y2hlcyBubyBleGlzdGluZyBhdXRob3IiCittc2dzdHIgIiIKKyItLWF1dGhvciAnJXMnLCAnQWQgPGUtcG9zdGE+JyBiacOnaW1pbmRlIGRlxJ9pbCB2ZSBtZXZjdXQgYmlyIHlhemFybGEgIgorImXFn2xlxZ9taXlvciIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMDY5CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgaWdub3JlZCBtb2RlICclcyciCittc2dzdHIgIkdlw6dlcnNpeiB5b2sgc2F5xLFsYW5sYXLEsSBnw7ZzdGVyIGtpcGkgJyVzJyIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMDg3IGJ1aWx0aW4vY29tbWl0LmM6MTMyNworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHVudHJhY2tlZCBmaWxlcyBtb2RlICclcyciCittc2dzdHIgIkdlw6dlcnNpeiBpemxlbm1leWVuIGRvc3lhbGFyxLEgZ8O2c3RlciBraXBpICclcyciCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNworbXNnaWQgIi0tbG9uZyBhbmQgLXogYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiLS1sb25nIHZlIC16IGJpcmJpcml5bGUgdXl1bXN1eiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTcxCittc2dpZCAiVXNpbmcgYm90aCAtLXJlc2V0LWF1dGhvciBhbmQgLS1hdXRob3IgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiSGVtIC0tcmVzZXQtYXV0aG9yIHZlIGhlbSAtLWF1dGhvciBiaXJsaWt0ZSBiaXIgYW5sYW0gaWZhZGUgZXRtaXlvciIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTgwCittc2dpZCAiWW91IGhhdmUgbm90aGluZyB0byBhbWVuZC4iCittc2dzdHIgIkRlxJ9pxZ90aXJlY2VrIGJpciDFn2V5aW5peiB5b2suIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjExODMKK21zZ2lkICJZb3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSAtLSBjYW5ub3QgYW1lbmQuIgorbXNnc3RyICJCaXIgYmlybGXFn3Rpcm1lbmluIHRhbSBvcnRhc8SxbmRhc8SxbsSxeiAtLSBkZcSfacWfdGlybWUgeWFwxLFsYW3EsXlvci4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4NQorbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhIGNoZXJyeS1waWNrIC0tIGNhbm5vdCBhbWVuZC4iCittc2dzdHIgIkJpciBzZcOnLWFsJ8SxbiB0YW0gb3J0YXPEsW5kYXPEsW7EsXogLS0gZGXEn2nFn3Rpcm1lIHlhcMSxbGFtxLF5b3IuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjExODgKK21zZ2lkICJPcHRpb25zIC0tc3F1YXNoIGFuZCAtLWZpeHVwIGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIgorbXNnc3RyICItLXNxdWFzaCB2ZSAtLWZpeHVwIHNlw6dlbmVrbGVyaSBiaXJsaWt0ZSBrdWxsYW7EsWxhbWF6IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjExOTgKK21zZ2lkICJPbmx5IG9uZSBvZiAtYy8tQy8tRi8tLWZpeHVwIGNhbiBiZSB1c2VkLiIKK21zZ3N0ciAiLWMvLUMvLUYvLS1maXh1cCBhcmFzxLFuZGFuIHlhbG7EsXpjYSBiaXIgdGFuZXNpIGt1bGxhbsSxbGFiaWxpci4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIwMAorbXNnaWQgIk9wdGlvbiAtbSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCAtYy8tQy8tRi4iCittc2dzdHIgIi1tIHNlw6dlbmXEn2kgLWMvLUMvLUYgaWxlIGJpcmxpa3RlIGt1bGxhbsSxbGFtYXouIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEyMDgKK21zZ2lkICItLXJlc2V0LWF1dGhvciBjYW4gYmUgdXNlZCBvbmx5IHdpdGggLUMsIC1jIG9yIC0tYW1lbmQuIgorbXNnc3RyICIiCisiLS1yZXNldC1hdXRob3IgeWFsbsSxemNhIC1DLCAtYyB2ZXlhIC0tYW1lbmQgaWxlIGJpcmxpa3RlIGt1bGxhbsSxbGFiaWxpci4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIyNQorbXNnaWQgIk9ubHkgb25lIG9mIC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIGNhbiBiZSB1c2VkLiIKK21zZ3N0ciAiIgorIi0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIGFyYXPEsW5kYW4geWFsbsSxemNhIGJpciB0YW5lc2kgIgorImt1bGxhbsSxbGFiaWxpci4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIzMQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRocyAnJXMgLi4uJyB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgIiclcyAuLi4nIHlvbGxhcsSxIC1hIGlsZSBiaXIgYW5sYW0gaWZhZGUgZXRtaXlvciIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzYyIGJ1aWx0aW4vY29tbWl0LmM6MTUyNAorbXNnaWQgInNob3cgc3RhdHVzIGNvbmNpc2VseSIKK21zZ3N0ciAiZHVydW11IGvEsXNhY2EgZ8O2c3RlciIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzY0IGJ1aWx0aW4vY29tbWl0LmM6MTUyNgorbXNnaWQgInNob3cgYnJhbmNoIGluZm9ybWF0aW9uIgorbXNnc3RyICJkYWwgYmlsZ2lzaW5pIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2NgorbXNnaWQgInNob3cgc3Rhc2ggaW5mb3JtYXRpb24iCittc2dzdHIgInp1bGEgYmlsZ2lzaW5pIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2OCBidWlsdGluL2NvbW1pdC5jOjE1MjgKK21zZ2lkICJjb21wdXRlIGZ1bGwgYWhlYWQvYmVoaW5kIHZhbHVlcyIKK21zZ3N0ciAidGFtIMO2bsO8bmRlL2Fya2FzxLFuZGEgZGXEn2VybGVyaW5pIGhlc2FwbGEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3MAorbXNnaWQgInZlcnNpb24iCittc2dzdHIgInPDvHLDvG0iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3MCBidWlsdGluL2NvbW1pdC5jOjE1MzAgYnVpbHRpbi9wdXNoLmM6NTQ5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjQzCittc2dpZCAibWFjaGluZS1yZWFkYWJsZSBvdXRwdXQiCittc2dzdHIgIm1ha2luZSB0YXJhZsSxbmRhbiBva3VuYWJpbGlyIMOnxLFrdMSxIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzMgYnVpbHRpbi9jb21taXQuYzoxNTMyCittc2dpZCAic2hvdyBzdGF0dXMgaW4gbG9uZyBmb3JtYXQgKGRlZmF1bHQpIgorbXNnc3RyICJkdXJ1bXUgdXp1biBiacOnaW1kZSBnw7ZzdGVyICjDtm50YW7EsW1sxLEpIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzYgYnVpbHRpbi9jb21taXQuYzoxNTM1Cittc2dpZCAidGVybWluYXRlIGVudHJpZXMgd2l0aCBOVUwiCittc2dzdHIgImdpcmRpbGVyaSBOVUwgaWxlIHNvbmxhbmTEsXIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3OCBidWlsdGluL2NvbW1pdC5jOjEzODIgYnVpbHRpbi9jb21taXQuYzoxNTM4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1MyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTkgYnVpbHRpbi9yZWJhc2UuYzoxNTY5IHBhcnNlLW9wdGlvbnMuaDozMzYKK21zZ2lkICJtb2RlIgorbXNnc3RyICJraXAiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3OSBidWlsdGluL2NvbW1pdC5jOjE1MzgKK21zZ2lkICJzaG93IHVudHJhY2tlZCBmaWxlcywgb3B0aW9uYWwgbW9kZXM6IGFsbCwgbm9ybWFsLCBuby4gKERlZmF1bHQ6IGFsbCkiCittc2dzdHIgIiIKKyJpemxlbm1leWVuIGRvc3lhbGFyxLEgZ8O2c3RlciwgaXN0LiBiYcSfbMSxIGtpcGxlcjogYWxsLCBub3JtYWwsIG5vICjDlm50YW7EsW0uOiAiCisiYWxsKSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzgzCittc2dpZCAiIgorInNob3cgaWdub3JlZCBmaWxlcywgb3B0aW9uYWwgbW9kZXM6IHRyYWRpdGlvbmFsLCBtYXRjaGluZywgbm8uIChEZWZhdWx0OiAiCisidHJhZGl0aW9uYWwpIgorbXNnc3RyICIiCisieW9rIHNhecSxbGFuIGRvc3lhbGFyxLEgZ8O2c3RlciwgaXN0ZcSfZSBiYcSfbMSxIGtpcGxlcjogdHJhZGl0aW9uYWwgKGdlbGVuZWtzZWwpICIKKyJtYXRjaGluZyAoZcWfbGXFn2VuKSwgbm8gKGhhecSxcikgKMOWbnRhbsSxbWzEsTogdHJhZGl0aW9uYWwpLiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzg1IHBhcnNlLW9wdGlvbnMuaDoxOTIKK21zZ2lkICJ3aGVuIgorbXNnc3RyICJuZSB6YW1hbiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzg2Cittc2dpZCAiIgorImlnbm9yZSBjaGFuZ2VzIHRvIHN1Ym1vZHVsZXMsIG9wdGlvbmFsIHdoZW46IGFsbCwgZGlydHksIHVudHJhY2tlZC4gIgorIihEZWZhdWx0OiBhbGwpIgorbXNnc3RyICIiCisiYWx0bW9kw7xsbGVyZSBvbGFuIGRlxJ9pxZ9pa2xpa2xlcmkgeW9rIHNheSwgaXN0ZcSfZSBiYcSfbMSxIG5lIHphbWFuOiBhbGwgIgorIihoZXBzaSksIGRpcnR5IChraXJsaSksIHVudHJhY2tlZCAoaXpsZW5tZXllbikgKMOWbnRhbsSxbWzEsTogYWxsKS4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4OAorbXNnaWQgImxpc3QgdW50cmFja2VkIGZpbGVzIGluIGNvbHVtbnMiCittc2dzdHIgIml6bGVubWV5ZW4gZG9zeWFsYXLEsSBzw7x0dW5sYXJsYSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzODkKK21zZ2lkICJkbyBub3QgZGV0ZWN0IHJlbmFtZXMiCittc2dzdHIgInllbmlkZW4gYWRsYW5kxLFybWFsYXLEsSBhbGfEsWxhbWEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM5MQorbXNnaWQgImRldGVjdCByZW5hbWVzLCBvcHRpb25hbGx5IHNldCBzaW1pbGFyaXR5IGluZGV4IgorbXNnc3RyICIiCisieWVuaWRlbiBhZGxhbmTEsXJtYWxhcsSxIGFsZ8SxbGEsIGlzdGXEn2UgYmHEn2zEsSBvbGFyYWsgYmVuemVybGlrIGluZGVrc2kgYXlhcmxhIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0MTEKK21zZ2lkICJVbnN1cHBvcnRlZCBjb21iaW5hdGlvbiBvZiBpZ25vcmVkIGFuZCB1bnRyYWNrZWQtZmlsZXMgYXJndW1lbnRzIgorbXNnc3RyICIiCisiWW9rIHNhecSxbGFuIHZlIGl6bGVubWV5ZW4gZG9zeWFsYXIgZGXEn2nFn2tlbmxlcmluaW4gZGVzdGVrbGVubWV5ZW4gYmlybGlrdGUgIgorImt1bGxhbsSxbcSxIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTQKK21zZ2lkICJzdXBwcmVzcyBzdW1tYXJ5IGFmdGVyIHN1Y2Nlc3NmdWwgY29tbWl0IgorbXNnc3RyICJiYcWfYXLEsWzEsSBnw7ZuZGVyaW5pbiBhcmTEsW5kYW4gw7Z6ZXRpIGdpemxlIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTUKK21zZ2lkICJzaG93IGRpZmYgaW4gY29tbWl0IG1lc3NhZ2UgdGVtcGxhdGUiCittc2dzdHIgImRpZmYnaSBnw7ZuZGVyaSBpbGV0aXNpIMWfYWJsb251bmRhIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NworbXNnaWQgIkNvbW1pdCBtZXNzYWdlIG9wdGlvbnMiCittc2dzdHIgIkfDtm5kZXJpIGlsZXRpc2kgc2XDp2VuZWtsZXJpIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTggYnVpbHRpbi9tZXJnZS5jOjI3NSBidWlsdGluL3RhZy5jOjQxNAorbXNnaWQgInJlYWQgbWVzc2FnZSBmcm9tIGZpbGUiCittc2dzdHIgImlsZXRpeWkgZG9zeWFkYW4gb2t1IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTkKK21zZ2lkICJhdXRob3IiCittc2dzdHIgInlhemFyIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTkKK21zZ2lkICJvdmVycmlkZSBhdXRob3IgZm9yIGNvbW1pdCIKK21zZ3N0ciAiZ8O2bmRlcmkgeWF6YXLEsW7EsSBnZcOnZXJzaXoga8SxbCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTAwIGJ1aWx0aW4vZ2MuYzo1MzgKK21zZ2lkICJkYXRlIgorbXNnc3RyICJ0YXJpaCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTAwCittc2dpZCAib3ZlcnJpZGUgZGF0ZSBmb3IgY29tbWl0IgorbXNnc3RyICJnw7ZuZGVyaSB0YXJpaGluaSBnZcOnZXJzaXoga8SxbCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTAyIGJ1aWx0aW4vY29tbWl0LmM6MTUwMyBidWlsdGluL2NvbW1pdC5jOjE1MDQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNSBwYXJzZS1vcHRpb25zLmg6MzI4IHJlZi1maWx0ZXIuaDo5MgorbXNnaWQgImNvbW1pdCIKK21zZ3N0ciAiZ8O2bmRlcmkiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMgorbXNnaWQgInJldXNlIGFuZCBlZGl0IG1lc3NhZ2UgZnJvbSBzcGVjaWZpZWQgY29tbWl0IgorbXNnc3RyICJiZWxpcnRpbGVuIGfDtm5kZXJpbmluIGlsZXRpc2luaSBkw7x6ZW5sZSB2ZSB5ZW5pZGVuIGt1bGxhbiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTAzCittc2dpZCAicmV1c2UgbWVzc2FnZSBmcm9tIHNwZWNpZmllZCBjb21taXQiCittc2dzdHIgImJlbGlydGlsZW4gZ8O2bmRlcmluaW4gaWxldGlzaW5pIHllbmlkZW4ga3VsbGFuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDQKK21zZ2lkICJ1c2UgYXV0b3NxdWFzaCBmb3JtYXR0ZWQgbWVzc2FnZSB0byBmaXh1cCBzcGVjaWZpZWQgY29tbWl0IgorbXNnc3RyICIiCisiYmVsaXJ0aWxlbiBnw7ZuZGVyaXlpIGTDvHplbHRtZWsgacOnaW4ga2VuZGlsacSfaW5kZW4gdMSxa8SxxZ90xLFybWEgdGFyYWbEsW5kYW4gIgorImJpw6dpbWxlbmRpcmlsZW4gaWxldGl5aSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNQorbXNnaWQgInVzZSBhdXRvc3F1YXNoIGZvcm1hdHRlZCBtZXNzYWdlIHRvIHNxdWFzaCBzcGVjaWZpZWQgY29tbWl0IgorbXNnc3RyICIiCisiYmVsaXJ0aWxlbiBnw7ZuZGVyaXlpIHTEsWvEscWfdMSxcm1hayBpw6dpbiBrZW5kaWxpxJ9pbmRlbiB0xLFrxLHFn3TEsXJtYSB0YXJhZsSxbmRhbiAiCisiYmnDp2ltbGVuZGlyaWxlbiBpbGV0aXlpIGt1bGxhbiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTA2Cittc2dpZCAidGhlIGNvbW1pdCBpcyBhdXRob3JlZCBieSBtZSBub3cgKHVzZWQgd2l0aCAtQy8tYy8tLWFtZW5kKSIKK21zZ3N0ciAiIgorImfDtm5kZXJpbmluIHlhemFyxLEgxZ91IGFuZGFuIGl0aWJhcmVuIGJlbmltICgtQy8tYy8tLWFtZW5kIGlsZSBrdWxsYW7EsWxkxLEpIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDcgYnVpbHRpbi9sb2cuYzoxNjM0IGJ1aWx0aW4vbWVyZ2UuYzoyOTAKKyM6IGJ1aWx0aW4vcHVsbC5jOjE0NCBidWlsdGluL3JldmVydC5jOjExMAorbXNnaWQgImFkZCBTaWduZWQtb2ZmLWJ5OiIKK21zZ3N0ciAiU2lnbmVkLW9mZi1ieTogZWtsZSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTA4Cittc2dpZCAidXNlIHNwZWNpZmllZCB0ZW1wbGF0ZSBmaWxlIgorbXNnc3RyICJiZWxpcnRpbGVuIMWfYWJsb24gZG9zeWFzxLFuxLEga3VsbGFuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDkKK21zZ2lkICJmb3JjZSBlZGl0IG9mIGNvbW1pdCIKK21zZ3N0ciAiZ8O2bmRlcml5aSB6b3JsYSBkw7x6ZW5sZSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTExCittc2dpZCAiaW5jbHVkZSBzdGF0dXMgaW4gY29tbWl0IG1lc3NhZ2UgdGVtcGxhdGUiCittc2dzdHIgImfDtm5kZXJpIGlsZXRpc2kgxZ9hYmxvbnVuZGEgZHVydW11IGnDp2VyIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTYKK21zZ2lkICJDb21taXQgY29udGVudHMgb3B0aW9ucyIKK21zZ3N0ciAiR8O2bmRlcmkgacOnZXJpxJ9pIHNlw6dlbmVrbGVyaSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTE3Cittc2dpZCAiY29tbWl0IGFsbCBjaGFuZ2VkIGZpbGVzIgorbXNnc3RyICJkZcSfacWfdGlyaWxlbiB0w7xtIGRvc3lhbGFyxLEgZ8O2bmRlciIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTE4Cittc2dpZCAiYWRkIHNwZWNpZmllZCBmaWxlcyB0byBpbmRleCBmb3IgY29tbWl0IgorbXNnc3RyICJiZWxpcnRpbGVuIGRvc3lhbGFyxLEgZ8O2bmRlcmkgacOnaW4gaW5kZWtzZSBla2xlIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTkKK21zZ2lkICJpbnRlcmFjdGl2ZWx5IGFkZCBmaWxlcyIKK21zZ3N0ciAiZG9zeWFsYXLEsSBldGtpbGXFn2ltbGkgb2xhcmFrIGVrbGUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMAorbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGNoYW5nZXMiCittc2dzdHIgImRlxJ9pxZ9pa2xpa2xlcmkgZXRraWxlxZ9pbWxpIG9sYXJhayBla2xlIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjEKK21zZ2lkICJjb21taXQgb25seSBzcGVjaWZpZWQgZmlsZXMiCittc2dzdHIgInlhbG7EsXpjYSBiZWxpcnRpbGVuIGRvc3lhbGFyxLEgZ8O2bmRlciIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTIyCittc2dpZCAiYnlwYXNzIHByZS1jb21taXQgYW5kIGNvbW1pdC1tc2cgaG9va3MiCittc2dzdHIgInByZS1jb21taXQgdmUgY29tbWl0LW1zZyBrYW5jYWxhcsSxbsSxIGF0bGEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMworbXNnaWQgInNob3cgd2hhdCB3b3VsZCBiZSBjb21taXR0ZWQiCittc2dzdHIgIm5leWluIGfDtm5kZXJpbGVjZcSfaW5pIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUzNgorbXNnaWQgImFtZW5kIHByZXZpb3VzIGNvbW1pdCIKK21zZ3N0ciAiw7ZuY2VraSBnw7ZuZGVyaXlpIGRlxJ9pxZ90aXIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUzNworbXNnaWQgImJ5cGFzcyBwb3N0LXJld3JpdGUgaG9vayIKK21zZ3N0ciAicG9zdC1yZXdyaXRlIGthbmNhc8SxbsSxIGF0bGEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTU0NAorbXNnaWQgIm9rIHRvIHJlY29yZCBhbiBlbXB0eSBjaGFuZ2UiCittc2dzdHIgImJvxZ8gYmlyIGRlxJ9pxZ9pa2xpxJ9pbiBrYXlkxLEgeWF6xLFsYWJpbGlyIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1NDYKK21zZ2lkICJvayB0byByZWNvcmQgYSBjaGFuZ2Ugd2l0aCBhbiBlbXB0eSBtZXNzYWdlIgorbXNnc3RyICJib8WfIGlsZXRpbGkgYmlyIGRlxJ9pxZ9pa2xpxJ9pbiBrYXlkxLEgeWF6xLFsYWJpbGlyIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29ycnVwdCBNRVJHRV9IRUFEIGZpbGUgKCVzKSIKK21zZ3N0ciAiSGFzYXIgZ8O2cm3DvMWfIE1FUkdFX0hFQUQgZG9zeWFzxLEgKCVzKSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNjI2Cittc2dpZCAiY291bGQgbm90IHJlYWQgTUVSR0VfTU9ERSIKK21zZ3N0ciAiTUVSR0VfTU9ERSBva3VuYW1hZMSxIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgY29tbWl0IG1lc3NhZ2U6ICVzIgorbXNnc3RyICJnw7ZuZGVyaSBpbGV0aXNpIG9rdW5hbWFkxLE6ICVzIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWJvcnRpbmcgY29tbWl0IGR1ZSB0byBlbXB0eSBjb21taXQgbWVzc2FnZS5cbiIKK21zZ3N0ciAiR8O2bmRlcmkgaWxldGlzaW5pbiBib8WfIG9sbWFzxLEgbmVkZW5peWxlIGfDtm5kZXJpIGlwdGFsIGVkaWxpeW9yLlxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE2NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWJvcnRpbmcgY29tbWl0OyB5b3UgZGlkIG5vdCBlZGl0IHRoZSBtZXNzYWdlLlxuIgorbXNnc3RyICJHw7ZuZGVyaSBpcHRhbCBlZGlsaXlvcjsgaWxldGl5aSBkw7x6ZW5sZW1lZGluaXouXG4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY5MQorbXNnaWQgIiIKKyJyZXBvc2l0b3J5IGhhcyBiZWVuIHVwZGF0ZWQsIGJ1dCB1bmFibGUgdG8gd3JpdGVcbiIKKyJuZXdfaW5kZXggZmlsZS4gQ2hlY2sgdGhhdCBkaXNrIGlzIG5vdCBmdWxsIGFuZCBxdW90YSBpc1xuIgorIm5vdCBleGNlZWRlZCwgYW5kIHRoZW4gXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA6L1wiIHRvIHJlY292ZXIuIgorbXNnc3RyICIiCisiRGVwbyBnw7xuY2VsbGVuZGksIGFuY2FrIG5ld19pbmRleCBkb3N5YXPEsSB5YXrEsWxhbcSxeW9yLlxuIgorIkRpc2tpbiBkb2x1IG9sdXAgb2xtYWTEscSfxLFuxLEgdmUga290YW7EsXrEsSBhxZ/EsXAgYcWfbWFkxLHEn8SxbsSxesSxIGRlbmV0bGV5aW4sXG4iCisic29ucmEga3VydGFybWFrIGnDp2luIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgOi9cIiBrdWxsYW7EsW4uIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjExIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTcKK21zZ2lkICIiCisiZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tc2hhbGxvd10gWy0tW25vLV1wcm9ncmVzc10iCittc2dzdHIgIiIKKyJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxuc25kem4+XSBbLS1zaGFsbG93XSBbLS1bbm8tXXByb2dyZXNzXSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIyCittc2dpZCAiIgorImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tYXBwZW5kfC0tc3BsaXRdIFstLSIKKyJyZWFjaGFibGV8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIFstLVtuby1dcHJvZ3Jlc3NdIDxzcGxpdCBvcHRpb25zPiIKK21zZ3N0ciAiIgorImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8bnNuZHpuPl0gWy0tYXBwZW5kfC0tc3BsaXRdIFstLSIKKyJyZWFjaGFibGV8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIFstLVtuby1dcHJvZ3Jlc3NdIDxiw7Zsw7xtLXPDp25rbHI+IgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5kIG9iamVjdCBkaXJlY3RvcnkgbWF0Y2hpbmcgJXMiCittc2dzdHIgIiclcycgaWxlIGXFn2xlxZ9lbiBuZXNuZSBkaXppbmkgYnVsdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NjggYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjUKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjEwIGJ1aWx0aW4vZmV0Y2guYzoxNzkgYnVpbHRpbi9sb2cuYzoxNjU3Cittc2dpZCAiZGlyIgorbXNnc3RyICJkaXppbiIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo2OSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyNgorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMTEKK21zZ2lkICJUaGUgb2JqZWN0IGRpcmVjdG9yeSB0byBzdG9yZSB0aGUgZ3JhcGgiCittc2dzdHIgIkdyYWZpxJ9pbiBkZXBvbGFuYWNhxJ/EsSBuZXNuZSBkaXppbmkiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzEKK21zZ2lkICJpZiB0aGUgY29tbWl0LWdyYXBoIGlzIHNwbGl0LCBvbmx5IHZlcmlmeSB0aGUgdGlwIGZpbGUiCittc2dzdHIgImNvbW1pdC1ncmFwaCBwYXLDp2FsYXJhIGLDtmzDvG5tw7zFn3NlIHlhbG7EsXpjYSB1w6cgZG9zeWF5xLEgZG/En3J1bGEiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6OTQgdC9oZWxwZXIvdGVzdC1yZWFkLWdyYXBoLmM6MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IG9wZW4gY29tbWl0LWdyYXBoICclcyciCittc2dzdHIgImNvbW1pdC1ncmFwaCAnJXMnIGHDp8SxbGFtYWTEsSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjgKK21zZ2lkICJzdGFydCB3YWxrIGF0IGFsbCByZWZzIgorbXNnc3RyICJ0w7xtIGJhxZ92dXJ1bGFyZGEgZ2V6aW5tZXlpIGJhxZ9sYXQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMwCittc2dpZCAic2NhbiBwYWNrLWluZGV4ZXMgbGlzdGVkIGJ5IHN0ZGluIGZvciBjb21taXRzIgorbXNnc3RyICJzdGRpbiB0YXJhZsSxbmRhbiBsaXN0ZWxlbmVuIHBha2V0IGluZGVrc2xlcmluaSB0YXJhIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzMgorbXNnaWQgInN0YXJ0IHdhbGsgYXQgY29tbWl0cyBsaXN0ZWQgYnkgc3RkaW4iCittc2dzdHIgInN0ZGluIHRhcmFmxLFuZGFuIGxpc3RlbGVuZW4gdMO8bSBnw7ZuZGVyaWxlcmRlIGdlemlubWV5aSBiYcWfbGF0IgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNAorbXNnaWQgImluY2x1ZGUgYWxsIGNvbW1pdHMgYWxyZWFkeSBpbiB0aGUgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgImhhbGloYXrEsXJkYSBjb21taXQtZ3JhcGggZG9zeWFzxLFuZGEgYnVsdW5hbiB0w7xtIGfDtm5kZXJpbGVyaSBpw6dlciIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzcKK21zZ2lkICJhbGxvdyB3cml0aW5nIGFuIGluY3JlbWVudGFsIGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICJhcnRhbiBiaXIgY29tbWl0LWdyYXBoIGRvc3lhc8SxbsSxbiB5YXrEsW3EsW5hIGl6aW4gdmVyIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzOSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0MworbXNnaWQgIm1heGltdW0gbnVtYmVyIG9mIGNvbW1pdHMgaW4gYSBub24tYmFzZSBzcGxpdCBjb21taXQtZ3JhcGgiCittc2dzdHIgIiIKKyJiaXIgdGVtZWwgb2xtYXlhbiBwYXLDp2FsYXJhIGLDtmzDvG5tw7zFnyBjb21taXQtZ3JhcGggacOnaW5kZSBlbiDDp29rIG9sYWJpbGVjZWsgIgorImfDtm5kZXJpIHNhecSxc8SxIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0MQorbXNnaWQgIm1heGltdW0gcmF0aW8gYmV0d2VlbiB0d28gbGV2ZWxzIG9mIGEgc3BsaXQgY29tbWl0LWdyYXBoIgorbXNnc3RyICIiCisiYsO2bMO8bm3DvMWfIGJpciBjb21taXQtZ3JhcGgnxLFuIGlraSBkw7x6ZXlpIGFyYXPEsW5kYSBvbGFiaWxlY2VrIGVuIGLDvHnDvGsgb3JhbiIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNTkKK21zZ2lkICJ1c2UgYXQgbW9zdCBvbmUgb2YgLS1yZWFjaGFibGUsIC0tc3RkaW4tY29tbWl0cywgb3IgLS1zdGRpbi1wYWNrcyIKK21zZ3N0ciAiIgorIi0tcmVhY2hhYmxlLCAtLXN0ZGluLWNvbW1pdHMgdmV5YSAtLXN0ZGluLXBhY2tzJ3RlbiBlbiDDp29rIGJpcmluaSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTEKK21zZ2lkICJnaXQgY29uZmlnIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgY29uZmlnIFs8c2XDp2VuZWtsZXI+XSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMDQgYnVpbHRpbi9lbnYtLWhlbHBlci5jOjIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCAtLXR5cGUgYXJndW1lbnQsICVzIgorbXNnc3RyICJ0YW7EsW1sYW5hbWF5YW4gLS10eXBlIGRlxJ9pxZ9rZW5pLCAlcyIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMTYKK21zZ2lkICJvbmx5IG9uZSB0eXBlIGF0IGEgdGltZSIKK21zZ3N0ciAiYmlyIGtlcmVkZSB5YWxuxLF6Y2EgYmlyIHTDvHIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI1Cittc2dpZCAiQ29uZmlnIGZpbGUgbG9jYXRpb24iCittc2dzdHIgIllhcMSxbGFuZMSxcm1hIGRvc3lhc8SxIGtvbnVtdSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMjYKK21zZ2lkICJ1c2UgZ2xvYmFsIGNvbmZpZyBmaWxlIgorbXNnc3RyICJnbG9iYWwgeWFwxLFsYW5kxLFybWEgZG9zeWFzxLEga3VsbGFuIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEyNworbXNnaWQgInVzZSBzeXN0ZW0gY29uZmlnIGZpbGUiCittc2dzdHIgInNpc3RlbSB5YXDEsWxhbmTEsXJtYSBkb3N5YXPEsSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI4Cittc2dpZCAidXNlIHJlcG9zaXRvcnkgY29uZmlnIGZpbGUiCittc2dzdHIgImRlcG8geWFwxLFsYW5kxLFybWEgZG9zeWFzxLEga3VsbGFuIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEyOQorbXNnaWQgInVzZSBwZXItd29ya3RyZWUgY29uZmlnIGZpbGUiCittc2dzdHIgImhlciDDp2FsxLHFn21hIGHEn2FjxLFuYSDDtnplbCBiaXIgeWFwxLFsYW5kxLFybWEgZG9zeWFzxLEga3VsbGFuIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMAorbXNnaWQgInVzZSBnaXZlbiBjb25maWcgZmlsZSIKK21zZ3N0ciAidmVyaWxlbiB5YXDEsWxhbmTEsXJtYSBkb3N5YXPEsW7EsSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMxCittc2dpZCAiYmxvYi1pZCIKK21zZ3N0ciAiaWtpbGkgbmVzbmUgbnVtYXJhc8SxIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMQorbXNnaWQgInJlYWQgY29uZmlnIGZyb20gZ2l2ZW4gYmxvYiBvYmplY3QiCittc2dzdHIgInZlcmlsZW4gaWtpbGkgbmVzbmVkZW4geWFwxLFsYW5kxLFybWF5xLEgb2t1IgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMgorbXNnaWQgIkFjdGlvbiIKK21zZ3N0ciAiRXlsZW0iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMzCittc2dpZCAiZ2V0IHZhbHVlOiBuYW1lIFt2YWx1ZS1yZWdleF0iCittc2dzdHIgImRlxJ9lciBhbDogYWQgW2TDvHplbmxpIGlmYWRlIGRlxJ9lcmldIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzNAorbXNnaWQgImdldCBhbGwgdmFsdWVzOiBrZXkgW3ZhbHVlLXJlZ2V4XSIKK21zZ3N0ciAidMO8bSBkZcSfZXJsZXJpIGFsOiBhbmFodGFyIFtkw7x6ZW5saSBpZmFkZSBkZcSfZXJpXSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMzUKK21zZ2lkICJnZXQgdmFsdWVzIGZvciByZWdleHA6IG5hbWUtcmVnZXggW3ZhbHVlLXJlZ2V4XSIKK21zZ3N0ciAiIgorImTDvHplbmxpIGlmYWRlIGnDp2luIGRlxJ9lcmxlcmkgYWw6IGTDvHplbmxpIGlmYWRlIGFkxLEgW2TDvHplbmxpIGlmYWRlIGRlxJ9lcmldIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzNgorbXNnaWQgImdldCB2YWx1ZSBzcGVjaWZpYyBmb3IgdGhlIFVSTDogc2VjdGlvblsudmFyXSBVUkwiCittc2dzdHIgIlVSTCBpw6dpbiDDtnplbCBvbGFuIGRlxJ9lcmkgYWw6IGLDtmzDvG1bLnZhcl0gVVJMIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzNworbXNnaWQgInJlcGxhY2UgYWxsIG1hdGNoaW5nIHZhcmlhYmxlczogbmFtZSB2YWx1ZSBbdmFsdWVfcmVnZXhdIgorbXNnc3RyICJ0w7xtIGXFn2xlxZ9lbiBkZcSfacWfa2VubGVyaSBkZcSfacWfdGlyOiBhZCBkZcSfZXIgW2TDvHplbmxpIGlmYWRlIGRlxJ9lcmldIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzOAorbXNnaWQgImFkZCBhIG5ldyB2YXJpYWJsZTogbmFtZSB2YWx1ZSIKK21zZ3N0ciAieWVuaSBiaXIgZGXEn2nFn2tlbiBla2xlOiBhZCBkZcSfZXIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM5Cittc2dpZCAicmVtb3ZlIGEgdmFyaWFibGU6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKK21zZ3N0ciAiYmlyIGRlxJ9pxZ9rZW4ga2FsZMSxcjogYWQgW2TDvHplbmxpIGlmYWRlIGRlxJ9lcmldIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0MAorbXNnaWQgInJlbW92ZSBhbGwgbWF0Y2hlczogbmFtZSBbdmFsdWUtcmVnZXhdIgorbXNnc3RyICJ0w7xtIGXFn2xlxZ9tZWxlcmkga2FsZMSxcjogYWQgW2TDvHplbmxpIGlmYWRlIGRlxJ9lcmldIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0MQorbXNnaWQgInJlbmFtZSBzZWN0aW9uOiBvbGQtbmFtZSBuZXctbmFtZSIKK21zZ3N0ciAiYsO2bMO8bcO8IHllbmlkZW4gYWRsYW5kxLFyOiBlc2tpX2FkIHllbmlfYWQiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQyCittc2dpZCAicmVtb3ZlIGEgc2VjdGlvbjogbmFtZSIKK21zZ3N0ciAiYmlyIGLDtmzDvG3DvCBrYWxkxLFyOiBhZCIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNDMKK21zZ2lkICJsaXN0IGFsbCIKK21zZ3N0ciAidMO8bcO8bsO8IGxpc3RlbGUiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ0Cittc2dpZCAib3BlbiBhbiBlZGl0b3IiCittc2dzdHIgImJpciBkw7x6ZW5sZXlpY2kgYcOnIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0NQorbXNnaWQgImZpbmQgdGhlIGNvbG9yIGNvbmZpZ3VyZWQ6IHNsb3QgW2RlZmF1bHRdIgorbXNnc3RyICJ5YXDEsWxhbmTEsXLEsWxhbiByZW5naSBidWw6IHl1dmEgW8O2bnRhbsSxbWzEsV0iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ2Cittc2dpZCAiZmluZCB0aGUgY29sb3Igc2V0dGluZzogc2xvdCBbc3Rkb3V0LWlzLXR0eV0iCittc2dzdHIgInJlbmsgYXlhcsSxbsSxIGJ1bDogeXV2YSBbc3Rkb3V0IHR0eV0iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ3Cittc2dpZCAiVHlwZSIKK21zZ3N0ciAiVMO8ciIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNDggYnVpbHRpbi9lbnYtLWhlbHBlci5jOjM4Cittc2dpZCAidmFsdWUgaXMgZ2l2ZW4gdGhpcyB0eXBlIgorbXNnc3RyICJkZcSfZXIgYnUgdMO8cmRlIHZlcmlsZGkiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ5Cittc2dpZCAidmFsdWUgaXMgXCJ0cnVlXCIgb3IgXCJmYWxzZVwiIgorbXNnc3RyICJkZcSfZXIgXCJ0cnVlXCIgKGRvxJ9ydSkgdmV5YSBcImZhbHNlXCIgKHlhbmzEscWfKSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNTAKK21zZ2lkICJ2YWx1ZSBpcyBkZWNpbWFsIG51bWJlciIKK21zZ3N0ciAiZGXEn2VyIG9uZGFsxLFrIHNhecSxIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MQorbXNnaWQgInZhbHVlIGlzIC0tYm9vbCBvciAtLWludCIKK21zZ3N0ciAiZGXEn2VyIC0tYm9vbCB2ZXlhIC0taW50IgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MgorbXNnaWQgInZhbHVlIGlzIGEgcGF0aCAoZmlsZSBvciBkaXJlY3RvcnkgbmFtZSkiCittc2dzdHIgImRlxJ9lciBiaXIgeW9sIChkb3N5YSB2ZXlhIGRpemluIGFkxLEpIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MworbXNnaWQgInZhbHVlIGlzIGFuIGV4cGlyeSBkYXRlIgorbXNnc3RyICJkZcSfZXIgYmlyIHNvbiBrdWxsYW7EsW0gdGFyaWhpIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1NAorbXNnaWQgIk90aGVyIgorbXNnc3RyICJEacSfZXIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU1Cittc2dpZCAidGVybWluYXRlIHZhbHVlcyB3aXRoIE5VTCBieXRlIgorbXNnc3RyICJkZcSfZXJsZXJpIE5VTCBiYXl0xLEgaWxlIHNvbmxhbmTEsXIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU2Cittc2dpZCAic2hvdyB2YXJpYWJsZSBuYW1lcyBvbmx5IgorbXNnc3RyICJ5YWxuxLF6Y2EgZGXEn2nFn2tlbiBhZGxhcsSxbsSxIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU3Cittc2dpZCAicmVzcGVjdCBpbmNsdWRlIGRpcmVjdGl2ZXMgb24gbG9va3VwIgorbXNnc3RyICJhcmFtYSBzxLFyYXPEsW5kYSBpw6dlcm1lIHnDtm5lcmdlbGVyaW5lIHV5IgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1OAorbXNnaWQgInNob3cgb3JpZ2luIG9mIGNvbmZpZyAoZmlsZSwgc3RhbmRhcmQgaW5wdXQsIGJsb2IsIGNvbW1hbmQgbGluZSkiCittc2dzdHIgIiIKKyJ5YXDEsWxhbmTEsXJtYW7EsW4ga8O2a2VuaW5pIGfDtnN0ZXIgKGRvc3lhLCBzdGRpbiwgaWtpbGkgbmVzbmUsIGtvbXV0IHNhdMSxcsSxKSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNTkKK21zZ2lkICJzaG93IHNjb3BlIG9mIGNvbmZpZyAod29ya3RyZWUsIGxvY2FsLCBnbG9iYWwsIHN5c3RlbSwgY29tbWFuZCkiCittc2dzdHIgIiIKKyJ5YXDEsWxhbmTEsXJtYW7EsW4ga2Fwc2FtxLFuxLEgZ8O2c3RlciAow6dhbMSxxZ9tYSBhxJ9hY8SxLCB5ZXJlbCwgZ2xvYmFsLCBzaXN0ZW0sICIKKyJrb211dCkiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTYwIGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MAorbXNnaWQgInZhbHVlIgorbXNnc3RyICJkZcSfZXIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTYwCittc2dpZCAid2l0aCAtLWdldCwgdXNlIGRlZmF1bHQgdmFsdWUgd2hlbiBtaXNzaW5nIGVudHJ5IgorbXNnc3RyICItLWdldCBpbGUgZ2lyZGkgdmVyaWxtZW1pxZ9zZSDDtm50YW7EsW1sxLEgZGXEn2VyaSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIndyb25nIG51bWJlciBvZiBhcmd1bWVudHMsIHNob3VsZCBiZSAlZCIKK21zZ3N0ciAieWFubMSxxZ8gZGXEn2nFn2tlbiBzYXnEsXPEsSwgJWQgb2xtYWzEsSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAid3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cywgc2hvdWxkIGJlIGZyb20gJWQgdG8gJWQiCittc2dzdHIgInlhbmzEscWfIGRlxJ9pxZ9rZW4gc2F5xLFzxLEsICVkIGlsZSAlZCBhcmFzxLFuZGEgb2xtYWzEsSIKKworIzogYnVpbHRpbi9jb25maWcuYzozMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBrZXkgcGF0dGVybjogJXMiCittc2dzdHIgImdlw6dlcnNpeiBhbmFodGFyIGRpemdpc2k6ICVzIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjM2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZm9ybWF0IGRlZmF1bHQgY29uZmlnIHZhbHVlOiAlcyIKK21zZ3N0ciAiw7ZudGFuxLFtbMSxIHlhcMSxbGFuZMSxcm1hIGRlxJ9lcmkgYmnDp2ltbGVuZGlyaWxlbWVkaTogJXMiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBwYXJzZSBjb2xvciAnJXMnIgorbXNnc3RyICJyZW5rIGF5csSxxZ90xLFyxLFsYW3EsXlvcjogJyVzJyIKKworIzogYnVpbHRpbi9jb25maWcuYzo0NTkKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgZGVmYXVsdCBjb2xvciB2YWx1ZSIKK21zZ3N0ciAiw7ZudGFuxLFtbMSxIHJlbmsgZGXEn2VyaSBheXLEscWfdMSxcsSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTEyIGJ1aWx0aW4vY29uZmlnLmM6NzY4Cittc2dpZCAibm90IGluIGEgZ2l0IGRpcmVjdG9yeSIKK21zZ3N0ciAiYmlyIGdpdCBkaXppbmluZGUgZGXEn2lsIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjUxNQorbXNnaWQgIndyaXRpbmcgdG8gc3RkaW4gaXMgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAic3RkaW4nZSB5YXptYSBkZXN0ZWtsZW5taXlvciIKKworIzogYnVpbHRpbi9jb25maWcuYzo1MTgKK21zZ2lkICJ3cml0aW5nIGNvbmZpZyBibG9icyBpcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICJ5YXDEsWxhbmTEsXJtYSBpa2lsaSBuZXNuZWxlcmkgeWF6xLFtxLEgZGVzdGVrbGVubWl5b3IiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIjIFRoaXMgaXMgR2l0J3MgcGVyLXVzZXIgY29uZmlndXJhdGlvbiBmaWxlLlxuIgorIlt1c2VyXVxuIgorIiMgUGxlYXNlIGFkYXB0IGFuZCB1bmNvbW1lbnQgdGhlIGZvbGxvd2luZyBsaW5lczpcbiIKKyIjXHRuYW1lID0gJXNcbiIKKyIjXHRlbWFpbCA9ICVzXG4iCittc2dzdHIgIiIKKyIjIEJ1IEdpdCdpbiBrdWxsYW7EsWPEsXlhIMO2emVsIHlhcMSxbGFuZMSxcm1hIGRvc3lhc8SxZMSxci5cbiIKKyJba3VsbGFuxLFjxLFdXG4iCisiTMO8dGZlbiBhxZ9hxJ/EsWRha2kgc2F0xLFybGFyxLEgeW9ydW1kYW4gw6fEsWthcsSxbiB2ZSDDtnplbGxlxZ90aXJpbjpcbiIKKyIjXHRhZCA9ICVzXG4iCisiI1x0ZS1wb3N0YSA9ICVzXG4iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjI3Cittc2dpZCAib25seSBvbmUgY29uZmlnIGZpbGUgYXQgYSB0aW1lIgorbXNnc3RyICJiaXIga2VyZWRlIHlhbG7EsXpjYSBiaXIgeWFwxLFsYW5kxLFybWEgZG9zeWFzxLEiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjMyCittc2dpZCAiLS1sb2NhbCBjYW4gb25seSBiZSB1c2VkIGluc2lkZSBhIGdpdCByZXBvc2l0b3J5IgorbXNnc3RyICItLWxvY2FsIHlhbG7EsXpjYSBiaXIgZ2l0IGRlcG9zdSBpw6dpbmRlIGt1bGxhbsSxbGFiaWxpciIKKworIzogYnVpbHRpbi9jb25maWcuYzo2MzUKK21zZ2lkICItLWJsb2IgY2FuIG9ubHkgYmUgdXNlZCBpbnNpZGUgYSBnaXQgcmVwb3NpdG9yeSIKK21zZ3N0ciAiLS1ibG9iIHlhbG7EsXpjYSBiaXIgZ2l0IGRlcG9zdSBpw6dpbmRlIGt1bGxhbsSxbGFiaWxpciIKKworIzogYnVpbHRpbi9jb25maWcuYzo2NTUKK21zZ2lkICIkSE9NRSBub3Qgc2V0IgorbXNnc3RyICIkSE9NRSBheWFybGFubWFtxLHFnyIKKworIzogYnVpbHRpbi9jb25maWcuYzo2NzkKK21zZ2lkICIiCisiLS13b3JrdHJlZSBjYW5ub3QgYmUgdXNlZCB3aXRoIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMgdW5sZXNzIHRoZSBjb25maWdcbiIKKyJleHRlbnNpb24gd29ya3RyZWVDb25maWcgaXMgZW5hYmxlZC4gUGxlYXNlIHJlYWQgXCJDT05GSUdVUkFUSU9OIEZJTEVcIlxuIgorInNlY3Rpb24gaW4gXCJnaXQgaGVscCB3b3JrdHJlZVwiIGZvciBkZXRhaWxzIgorbXNnc3RyICIiCisiLS13b3JrdHJlZSwgd29ya3RyZWVDb25maWcgeWFwxLFsYW5kxLFybWEgZ2VuacWfbGV0bWVzaSBldGtpbmxlxZ90aXJpbG1lZGnEn2lcbiIKKyJzw7xyZWNlIGJpcmRlbiDDp29rIMOnYWzEscWfbWEgYcSfYWPEsSBpbGUgYmlybGlrdGUga3VsbGFuxLFsYW1hei4gQXlyxLFudMSxbGFyIGnDp2luXG4iCisibMO8dGZlbiBcImdpdCBoZWxwIHdvcmt0cmVlXCIgacOnaW5kZWtpIFwiQ09ORklHVVJBVElPTiBGSUxFXCIgYsO2bMO8bcO8bsO8IG9rdXl1bi4iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzE0Cittc2dpZCAiLS1nZXQtY29sb3IgYW5kIHZhcmlhYmxlIHR5cGUgYXJlIGluY29oZXJlbnQiCittc2dzdHIgIi0tZ2V0LWNvbG9yIHZlIGRlxJ9pxZ9rZW4gdMO8csO8IHR1dGFyc8SxeiIKKworIzogYnVpbHRpbi9jb25maWcuYzo3MTkKK21zZ2lkICJvbmx5IG9uZSBhY3Rpb24gYXQgYSB0aW1lIgorbXNnc3RyICJiaXIga2VyZWRlIHlhbG7EsXpjYSBiaXIgZXlsZW0iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzMyCittc2dpZCAiLS1uYW1lLW9ubHkgaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tbGlzdCBvciAtLWdldC1yZWdleHAiCittc2dzdHIgIi0tbmFtZS1vbmx5IHlhbG7EsXpjYSDFn3VubGFyYSB1eWd1bGFuYWJpbGlyOiAtLWxpc3QsIC0tZ2V0LXJlZ2V4cCIKKworIzogYnVpbHRpbi9jb25maWcuYzo3MzgKK21zZ2lkICIiCisiLS1zaG93LW9yaWdpbiBpcyBvbmx5IGFwcGxpY2FibGUgdG8gLS1nZXQsIC0tZ2V0LWFsbCwgLS1nZXQtcmVnZXhwLCBhbmQgLS0iCisibGlzdCIKK21zZ3N0ciAiIgorIi0tc2hvdy1vcmlnaW4geWFsbsSxemNhIMWfdW5sYXJhIHV5Z3VsYW5hYmlsaXI6IC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCAiCisidmUgLS1saXN0IgorCisjOiBidWlsdGluL2NvbmZpZy5jOjc0NAorbXNnaWQgIi0tZGVmYXVsdCBpcyBvbmx5IGFwcGxpY2FibGUgdG8gLS1nZXQiCittc2dzdHIgIi0tZGVmYXVsdCB5YWxuxLF6Y2EgxZ91bmEgdXlndWxhbmFiaWxpcjogLS1nZXQiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGNvbmZpZyBmaWxlICclcyciCittc2dzdHIgIiclcycgeWFwxLFsYW5kxLFybWEgZG9zeWFzxLEgb2t1bmFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzYwCittc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBjb25maWcgZmlsZShzKSIKK21zZ3N0ciAieWFwxLFsYW5kxLFybWEgZG9zeWFsYXLEsSBpxZ9sZW5pcmtlbiBoYXRhIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjc3MAorbXNnaWQgImVkaXRpbmcgc3RkaW4gaXMgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAic3RkaW4naSBkw7x6ZW5sZW1lIGRlc3Rla2xlbm1peW9yIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjc3MgorbXNnaWQgImVkaXRpbmcgYmxvYnMgaXMgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAiaWtpbGkgbmVzbmVsZXJpIGTDvHplbmxlbWUgZGVzdGVrbGVubWl5b3IiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6Nzg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgY29uZmlndXJhdGlvbiBmaWxlICVzIgorbXNnc3RyICIlcyB5YXDEsWxhbmTEsXJtYSBkb3N5YXPEsSBvbHXFn3R1cnVsYW3EsXlvciIKKworIzogYnVpbHRpbi9jb25maWcuYzo3OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNhbm5vdCBvdmVyd3JpdGUgbXVsdGlwbGUgdmFsdWVzIHdpdGggYSBzaW5nbGUgdmFsdWVcbiIKKyIgICAgICAgVXNlIGEgcmVnZXhwLCAtLWFkZCBvciAtLXJlcGxhY2UtYWxsIHRvIGNoYW5nZSAlcy4iCittc2dzdHIgIiIKKyJUZWsgYmlyIGRlxJ9lciBpbGUgYmlyZGVuIMOnb2sgZGXEn2VyaW4gw7x6ZXJpbmUgeWF6xLFsYW3EsXlvci5cbiIKKyIgICAgICAgJXMgZGXEn2VyaW5pIGRlxJ9pxZ90aXJtZWsgacOnaW4gYmlyIGTDvHplbmxpIGlmYWRlLCAtLWFkZCB2ZXlhIC0tcmVwbGFjZS0iCisiYWxsIGt1bGxhbsSxbi4iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6ODczIGJ1aWx0aW4vY29uZmlnLmM6ODg0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggc2VjdGlvbjogJXMiCittc2dzdHIgImLDtnlsZSBiaXIgYsO2bMO8bSB5b2s6ICVzIgorCisjOiBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5MAorbXNnaWQgImdpdCBjb3VudC1vYmplY3RzIFstdl0gWy1IIHwgLS1odW1hbi1yZWFkYWJsZV0iCittc2dzdHIgImdpdCBjb3VudC1vYmplY3RzIFstdl0gWy1IIHwgLS1odW1hbi1yZWFkYWJsZV0iCisKKyM6IGJ1aWx0aW4vY291bnQtb2JqZWN0cy5jOjEwMAorbXNnaWQgInByaW50IHNpemVzIGluIGh1bWFuIHJlYWRhYmxlIGZvcm1hdCIKK21zZ3N0ciAieWF6ZMSxcm1hIGJveXV0bGFyxLEga2nFn2kgdGFyYWbEsW5kYW4gb2t1bmFiaWxpciBiacOnaW1kZSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjI2Cittc2dpZCAiZ2l0IGRlc2NyaWJlIFs8b3B0aW9ucz5dIFs8Y29tbWl0LWlzaD4uLi5dIgorbXNnc3RyICJnaXQgZGVzY3JpYmUgWzxzZcOnZW5la2xlcj5dIFs8Z8O2bmRlcmltc2k+Li4uXSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3Cittc2dpZCAiZ2l0IGRlc2NyaWJlIFs8b3B0aW9ucz5dIC0tZGlydHkiCittc2dzdHIgImdpdCBkZXNjcmliZSBbPHNlw6dlbmVrbGVyPl0gLS1kaXJ0eSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjYyCittc2dpZCAiaGVhZCIKK21zZ3N0ciAiZGFsIHVjdSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjYyCittc2dpZCAibGlnaHR3ZWlnaHQiCittc2dzdHIgImhhZmlmIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjIKK21zZ2lkICJhbm5vdGF0ZWQiCittc2dzdHIgImVrIGHDp8Sxa2xhbWFsxLEiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW5ub3RhdGVkIHRhZyAlcyBub3QgYXZhaWxhYmxlIgorbXNnc3RyICIlcyBlayBhw6fEsWtsYW1hbMSxIGV0aWtldGkgbWV2Y3V0IGRlxJ9pbCIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbm5vdGF0ZWQgdGFnICVzIGhhcyBubyBlbWJlZGRlZCBuYW1lIgorbXNnc3RyICIlcyBlayBhw6fEsWtsYW1hbMSxIGV0aWtldGluZGUgZ8O2bcO8bMO8IGFkIHlvayIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0YWcgJyVzJyBpcyByZWFsbHkgJyVzJyBoZXJlIgorbXNnc3RyICInJXMnIGV0aWtldGkgZ2Vyw6dla3RlIGJ1cmFkYSAnJXMnIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI1CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHRhZyBleGFjdGx5IG1hdGNoZXMgJyVzJyIKK21zZ3N0ciAiJyVzJyBpbGUgaGVyaGFuZ2kgYmlyIGV0aWtldCB0YW0gb2xhcmFrIGXFn2xlxZ9taXlvciIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyNworIywgYy1mb3JtYXQKK21zZ2lkICJObyBleGFjdCBtYXRjaCBvbiByZWZzIG9yIHRhZ3MsIHNlYXJjaGluZyB0byBkZXNjcmliZVxuIgorbXNnc3RyICIiCisiS2VzaW4gb2xhcmFrIGXFn2xlxZ9lbiBiYcWfdnVydSB2ZXlhIGV0aWtldCB5b2ssIGJldGltbGVtZWsgacOnaW4gYXJhbsSxeW9yXG4iCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluaXNoZWQgc2VhcmNoIGF0ICVzXG4iCittc2dzdHIgImFyYW1hIMWfdXJhZGEgYml0aXJpbGRpOiAlc1xuIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJObyBhbm5vdGF0ZWQgdGFncyBjYW4gZGVzY3JpYmUgJyVzJy5cbiIKKyJIb3dldmVyLCB0aGVyZSB3ZXJlIHVuYW5ub3RhdGVkIHRhZ3M6IHRyeSAtLXRhZ3MuIgorbXNnc3RyICIiCisiSGnDp2JpciBlayBhw6fEsWtsYW1hbMSxIGV0aWtldCDFn3VudSBiZXRpbWxleWVtaXlvcjogJyVzJy5cbiIKKyJCdW51biB5YW7EsW5kYSBlayBhw6fEsWtsYW1hc8SxIG9sbWF5YW4gZXRpa2V0bGVyIHZhcmTEsSwgLS10YWdzIGRlbmV5aW4uIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJObyB0YWdzIGNhbiBkZXNjcmliZSAnJXMnLlxuIgorIlRyeSAtLWFsd2F5cywgb3IgY3JlYXRlIHNvbWUgdGFncy4iCittc2dzdHIgIiIKKyLFnnVudSBoacOnYmlyIGV0aWtldCBiZXRpbWxleWVtZXo6ICclcycuXG4iCisiLS1hbHdheXMgZGVuZXlpbiB2ZXlhIGJpcmthw6cgZXRpa2V0IG9sdcWfdHVydW4uIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgInRyYXZlcnNlZCAlbHUgY29tbWl0c1xuIgorbXNnc3RyICIlbHUgZ8O2bmRlcmkga2F0ZWRpbGRpXG4iCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1vcmUgdGhhbiAlaSB0YWdzIGZvdW5kOyBsaXN0ZWQgJWkgbW9zdCByZWNlbnRcbiIKKyJnYXZlIHVwIHNlYXJjaCBhdCAlc1xuIgorbXNnc3RyICIiCisiJWkgZXRpa2V0dGVuIGZhemxhIGV0aWtldCBidWx1bmR1OyBlbiBzb24gJWkgbGlzdGVsZW5kaVxuIgorIsWfdSBrb251bWRhIGFyYW1hIGLEsXJha8SxbGTEsTogJXNcbiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJkZXNjcmliZSAlc1xuIgorbXNnc3RyICLFn3VudSB0YW7EsW1sYTogJXNcbiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyOQorIywgYy1mb3JtYXQKK21zZ2lkICJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIKK21zZ3N0ciAiJXMgZ2XDp2VybGkgYmlyIG5lc25lIGFkxLEgZGXEn2lsIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5laXRoZXIgYSBjb21taXQgbm9yIGJsb2IiCittc2dzdHIgIiVzIG5lIGJpciBnw7ZuZGVyaSBuZSBkZSBpa2lsaSBuZXNuZSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MQorbXNnaWQgImZpbmQgdGhlIHRhZyB0aGF0IGNvbWVzIGFmdGVyIHRoZSBjb21taXQiCittc2dzdHIgImfDtm5kZXJpbmluIGFyZMSxbmRhbiBnZWxlbiBldGlrZXRpIGJ1bCIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MgorbXNnaWQgImRlYnVnIHNlYXJjaCBzdHJhdGVneSBvbiBzdGRlcnIiCittc2dzdHIgInN0ZGVycidkZWtpIGFyYW1hIHN0cmF0ZWppc2luaSBhecSxa2xhIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUzCittc2dpZCAidXNlIGFueSByZWYiCittc2dzdHIgImhlcmhhbmdpIGJpciBiYcWfdnVydXl1IGt1bGxhbiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NAorbXNnaWQgInVzZSBhbnkgdGFnLCBldmVuIHVuYW5ub3RhdGVkIgorbXNnc3RyICJoZXJoYW5naSBiaXIgZXRpa2V0aSBrdWxsYW4sIGVrIGHDp8Sxa2xhbWFzxLEgb2xtYXNhIGJpbGUiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTUKK21zZ2lkICJhbHdheXMgdXNlIGxvbmcgZm9ybWF0IgorbXNnc3RyICJoZXIgemFtYW4gdXp1biBiacOnaW1pIGt1bGxhbiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NgorbXNnaWQgIm9ubHkgZm9sbG93IGZpcnN0IHBhcmVudCIKK21zZ3N0ciAieWFsbsSxemNhIGlsayDDvHN0IMO2Z2V5aSBpemxlIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU5Cittc2dpZCAib25seSBvdXRwdXQgZXhhY3QgbWF0Y2hlcyIKK21zZ3N0ciAieWFsbsSxemNhIGtlc2luIGXFn2xlxZ9tZWxlcmkgw6fEsWt0xLEgdmVyIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTYxCittc2dpZCAiY29uc2lkZXIgPG4+IG1vc3QgcmVjZW50IHRhZ3MgKGRlZmF1bHQ6IDEwKSIKK21zZ3N0ciAiPG4+IGVuIHNvbiBldGlrZXRpIGRpa2thdGUgYWwgKMO2bnRhbsSxbWzEsTogMTApIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTYzCittc2dpZCAib25seSBjb25zaWRlciB0YWdzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKK21zZ3N0ciAieWFsbsSxemNhIDxkaXpnaT4gaWxlIGXFn2xlxZ9lbiBldGlrZXRsZXJpIGRpa2thdGUgYWwiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjUKK21zZ2lkICJkbyBub3QgY29uc2lkZXIgdGFncyBtYXRjaGluZyA8cGF0dGVybj4iCittc2dzdHIgIjxkaXpnaT4gaWxlIGXFn2xlxZ9lbiBldGlrZXRsZXJpIGRpa2thdGUgYWxtYSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2NyBidWlsdGluL25hbWUtcmV2LmM6NTM1Cittc2dpZCAic2hvdyBhYmJyZXZpYXRlZCBjb21taXQgb2JqZWN0IGFzIGZhbGxiYWNrIgorbXNnc3RyICJrxLFzYWx0xLFsbcSxxZ8gZ8O2bmRlcmkgbmVzbmVzaW5pIGdlcmkgw6dla2lsaW5lY2VrIG5lc25lIG9sYXJhayBnw7ZzdGVyIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTY4IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NzEKK21zZ2lkICJtYXJrIgorbXNnc3RyICJpbSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2OQorbXNnaWQgImFwcGVuZCA8bWFyaz4gb24gZGlydHkgd29ya2luZyB0cmVlIChkZWZhdWx0OiBcIi1kaXJ0eVwiKSIKK21zZ3N0ciAiPGltPidpIGtpcmxpIMOnYWzEscWfbWEgYcSfYWPEsW5hIGlsacWfdGlyICjDtm50YW7EsW1sxLE6IFwiLWRpcnR5XCIpIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTcyCittc2dpZCAiYXBwZW5kIDxtYXJrPiBvbiBicm9rZW4gd29ya2luZyB0cmVlIChkZWZhdWx0OiBcIi1icm9rZW5cIikiCittc2dzdHIgIjxpbT4naSBib3p1ayDDp2FsxLHFn21hIGHEn2FjxLFuYSBpbGnFn3RpciAow7ZudGFuxLFtbMSxOiBcIi1icm9rZW5cIikiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1OTAKK21zZ2lkICItLWxvbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hYmJyZXY9MCIKK21zZ3N0ciAiLS1sb25nLCAtLWFiYnJldj0wIGlsZSB1eXVtc3V6IgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjE5Cittc2dpZCAiTm8gbmFtZXMgZm91bmQsIGNhbm5vdCBkZXNjcmliZSBhbnl0aGluZy4iCittc2dzdHIgIkhpw6diaXIgYWQgYnVsdW5hbWFkxLEsIGhpw6diaXIgxZ9leSBiZXRpbWxlbmVtaXlvci4iCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NzAKK21zZ2lkICItLWRpcnR5IGlzIGluY29tcGF0aWJsZSB3aXRoIGNvbW1pdC1pc2hlcyIKK21zZ3N0ciAiLS1kaXJ0eSwgZ8O2bmRlcmltc2lsZXJsZSB1eXVtc3V6IgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjcyCittc2dpZCAiLS1icm9rZW4gaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgorbXNnc3RyICItLWJyb2tlbiwgZ8O2bmRlcmltc2lsZXJsZSB1eXVtc3V6IgorCisjOiBidWlsdGluL2RpZmYuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnOiBub3QgYSByZWd1bGFyIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiJyVzJzogU8SxcmFkYW4gYmlyIGRvc3lhIHZleWEgc2VtYm9saWsgYmHEnyBkZcSfaWwiCisKKyM6IGJ1aWx0aW4vZGlmZi5jOjIzNQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG9wdGlvbjogJXMiCittc2dzdHIgImdlw6dlcnNpeiBzZcOnZW5lazogJXMiCisKKyM6IGJ1aWx0aW4vZGlmZi5jOjM1MAorbXNnaWQgIk5vdCBhIGdpdCByZXBvc2l0b3J5IgorbXNnc3RyICJCaXIgZ2l0IGRlcG9zdSBkZcSfaWwiCisKKyM6IGJ1aWx0aW4vZGlmZi5jOjM5NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG9iamVjdCAnJXMnIGdpdmVuLiIKK21zZ3N0ciAiZ2XDp2Vyc2l6IG5lc25lICclcycgdmVyaWxkaSIKKworIzogYnVpbHRpbi9kaWZmLmM6NDAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm1vcmUgdGhhbiB0d28gYmxvYnMgZ2l2ZW46ICclcyciCittc2dzdHIgImlraWRlbiDDp29rIGlraWxpIG5lc25lIHZlcmlsZGk6ICclcyciCisKKyM6IGJ1aWx0aW4vZGlmZi5jOjQwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmhhbmRsZWQgb2JqZWN0ICclcycgZ2l2ZW4uIgorbXNnc3RyICJlbGUgYWzEsW5tYXlhbiBuZXNuZSAnJXMnIHZlcmlsZGkiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzozMAorbXNnaWQgImdpdCBkaWZmdG9vbCBbPG9wdGlvbnM+XSBbPGNvbW1pdD4gWzxjb21taXQ+XV0gWy0tXSBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IGRpZmZ0b29sIFs8c2XDp2VuZWtsZXI+XSBbPGfDtm5kZXJpPiBbPGfDtm5kZXJpPl1dIFstLV0gWzx5b2w+Li4uXSIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQ6ICVkIgorbXNnc3RyICJiYcWfYXLEsXPEsXo6ICVkIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6MzAyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIHN5bWxpbmsgJXMiCittc2dzdHIgIiVzIHNlbWJvbGlrIGJhxJ/EsSBva3VuYW1hZMSxIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIHN5bWxpbmsgZmlsZSAlcyIKK21zZ3N0ciAiJXMgc2VtYm9saWsgYmHEnyBkb3N5YXPEsSBva3VuYW1hZMSxIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIG9iamVjdCAlcyBmb3Igc3ltbGluayAlcyIKK21zZ3N0ciAiJXMgbmVzbmVzaSAlcyBzZW1ib2xpayBiYcSfxLEgacOnaW4gb2t1bmFtYWTEsSIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjQxMworbXNnaWQgIiIKKyJjb21iaW5lZCBkaWZmIGZvcm1hdHMoJy1jJyBhbmQgJy0tY2MnKSBhcmUgbm90IHN1cHBvcnRlZCBpblxuIgorImRpcmVjdG9yeSBkaWZmIG1vZGUoJy1kJyBhbmQgJy0tZGlyLWRpZmYnKS4iCittc2dzdHIgIiIKKyJCaXJsZcWfdGlyaWxtacWfIGRpZmYgYmnDp2ltbGVyaSAoLWMgdmUgLS1jYykgZGl6aW4gZGlmZiBraXBpbmRlXG4iCisiKC1kIHZlIC0tZGlyLWRpZmYpIGRlc3Rla2xlbm1peW9yLiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjYzNAorIywgYy1mb3JtYXQKK21zZ2lkICJib3RoIGZpbGVzIG1vZGlmaWVkOiAnJXMnIGFuZCAnJXMnLiIKK21zZ3N0ciAiSGVyIGlraSBkb3N5YSBkYSBkZcSfacWfdGlyaWxkaTogJyVzJyB2ZSAnJXMnLiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjYzNgorbXNnaWQgIndvcmtpbmcgdHJlZSBmaWxlIGhhcyBiZWVuIGxlZnQuIgorbXNnc3RyICLDh2FsxLHFn21hIGHEn2FjxLEgZG9zeWFzxLEgYsSxcmFrxLFsZMSxLiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0NworIywgYy1mb3JtYXQKK21zZ2lkICJ0ZW1wb3JhcnkgZmlsZXMgZXhpc3QgaW4gJyVzJy4iCittc2dzdHIgIiclcycga29udW11bmRhIGdlw6dpY2kgZG9zeWFsYXIgdmFyLiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY0OAorbXNnaWQgInlvdSBtYXkgd2FudCB0byBjbGVhbnVwIG9yIHJlY292ZXIgdGhlc2UuIgorbXNnc3RyICJCdW5sYXLEsSB0ZW1pemxlbWVrIHZleWEga3VydGFybWFrIGlzdGV5ZWJpbGlyc2luaXouIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6Njk3Cittc2dpZCAidXNlIGBkaWZmLmd1aXRvb2xgIGluc3RlYWQgb2YgYGRpZmYudG9vbGAiCittc2dzdHIgIidkaWZmLnRvb2wnIHllcmluZSAnZGlmZi5ndWl0b29sJyBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTkKK21zZ2lkICJwZXJmb3JtIGEgZnVsbC1kaXJlY3RvcnkgZGlmZiIKK21zZ3N0ciAiYmlyIHRhbSBkaXppbiBkaWZmJ2kgZ2Vyw6dla2xlxZ90aXIiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDEKK21zZ2lkICJkbyBub3QgcHJvbXB0IGJlZm9yZSBsYXVuY2hpbmcgYSBkaWZmIHRvb2wiCittc2dzdHIgImJpciBkaWZmIGFyYWPEsSDDp2FsxLHFn3TEsXJtYWRhbiDDtm5jZSBzb3JtYSIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNgorbXNnaWQgInVzZSBzeW1saW5rcyBpbiBkaXItZGlmZiBtb2RlIgorbXNnc3RyICJkaXItZGlmZiBraXBpbmRlIHNlbWJvbGlrIGJhxJ9sYXIga3VsbGFuIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzA3Cittc2dpZCAidG9vbCIKK21zZ3N0ciAiYXJhw6ciCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDgKK21zZ2lkICJ1c2UgdGhlIHNwZWNpZmllZCBkaWZmIHRvb2wiCittc2dzdHIgImJlbGlydGlsZW4gZGlmZiBhcmFjxLFuxLEga3VsbGFuIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEwCittc2dpZCAicHJpbnQgYSBsaXN0IG9mIGRpZmYgdG9vbHMgdGhhdCBtYXkgYmUgdXNlZCB3aXRoIGAtLXRvb2xgIgorbXNnc3RyICInLXRvb2wnIGlsZSBiaXJsaWt0ZSBrdWxsYW7EsWxhYmlsZWNlayBkaWZmIGFyYcOnbGFyxLFuxLFuIGxpc3Rlc2luaSDDp8Sxa2FyIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEzCittc2dpZCAiIgorIm1ha2UgJ2dpdC1kaWZmdG9vbCcgZXhpdCB3aGVuIGFuIGludm9rZWQgZGlmZiB0b29sIHJldHVybnMgYSBub24gLSB6ZXJvIGV4aXQgIgorImNvZGUiCittc2dzdHIgIiIKKyLDp2FsxLHFn3TEsXLEsWxhbiBiaXIgZGlmZiBhcmFjxLEgc8SxZsSxciBvbG1heWFuIGJpciDDp8Sxa8SxxZ8ga29kdSBkw7ZuZMO8cmTDvMSfw7xuZGUgJ2dpdC0iCisiZGlmZnRvb2wndW4gw6fEsWvEscWfIHlhcG1hc8SxbsSxIHNhxJ9sYSIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxNgorbXNnaWQgInNwZWNpZnkgYSBjdXN0b20gY29tbWFuZCBmb3Igdmlld2luZyBkaWZmcyIKK21zZ3N0ciAiZGlmZidsZXJpIGfDtnLDvG50w7xsZW1layBpw6dpbiDDtnplbCBiaXIga29tdXQgYmVsaXJsZSIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxNworbXNnaWQgInBhc3NlZCB0byBgZGlmZmAiCittc2dzdHIgIidkaWZmJ2UgYWt0YXLEsWxkxLEiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzIKK21zZ2lkICJkaWZmdG9vbCByZXF1aXJlcyB3b3JrdHJlZSBvciAtLW5vLWluZGV4IgorbXNnc3RyICJkaWZmdG9vbCwgw6dhbMSxxZ9tYSBhxJ9hY8SxIHZleWEgLS1uby1pbmRleCBnZXJla3Rpcml5b3IiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzkKK21zZ2lkICItLWRpci1kaWZmIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8taW5kZXgiCittc2dzdHIgIi1kaXItZGlmZiwgLS1uby1pbmRleCBpbGUgdXl1bXN1eiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc0MgorbXNnaWQgIi0tZ3VpLCAtLXRvb2wgYW5kIC0tZXh0Y21kIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIi0tZ3VpLCAtLXRvb2wgdmUgLS1leHRjbWQgYmlybGlrdGUga3VsbGFuxLFsYW1heiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc1MAorbXNnaWQgIm5vIDx0b29sPiBnaXZlbiBmb3IgLS10b29sPTx0b29sPiIKK21zZ3N0ciAiLS10b29sPTxhcmHDpz4gacOnaW4gYmlyIDxhcmHDpz4gdmVyaWxtZWRpIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzU3Cittc2dpZCAibm8gPGNtZD4gZ2l2ZW4gZm9yIC0tZXh0Y21kPTxjbWQ+IgorbXNnc3RyICItLWV4dGNtZD08a29tdXQ+IGnDp2luIGJpciA8a29tdXQ+IHZlcmlsbWVkaSIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjYKK21zZ2lkICJnaXQgZW52LS1oZWxwZXIgLS10eXBlPVtib29sfHVsb25nXSA8b3B0aW9ucz4gPGVudi12YXI+IgorbXNnc3RyICJnaXQgZW52LS1oZWxwZXIgLS10eXBlPVtib29sfHVsb25nXSA8c2XDp2VuZWtsZXI+IDxvcnRhbS1kxJ/Fn2tuPiIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjM3IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAorbXNnaWQgInR5cGUiCittc2dzdHIgInTDvHIiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MQorbXNnaWQgImRlZmF1bHQgZm9yIGdpdF9lbnZfKiguLi4pIHRvIGZhbGwgYmFjayBvbiIKK21zZ3N0ciAiZ2l0X2Vudl8qKC4uLiknxLFuIGdlcmkgw6dla2lsZWNlxJ9pIMO2bnRhbsSxbWzEsSIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjQzCittc2dpZCAiYmUgcXVpZXQgb25seSB1c2UgZ2l0X2Vudl8qKCkgdmFsdWUgYXMgZXhpdCBjb2RlIgorbXNnc3RyICJzZXNzaXogb2wsIHlhbG7EsXpjYSBnaXRfZW52KigpIGRlxJ9lcmluaSDDp8Sxa8SxxZ8ga29kdSBvbGFyYWsga3VsbGFuIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAtLWRlZmF1bHQnIGV4cGVjdHMgYSBib29sZWFuIHZhbHVlIHdpdGggYC0tdHlwZT1ib29sYCwgbm90IGAlc2AiCittc2dzdHIgIiIKKyItLWRlZmF1bHQgc2XDp2VuZcSfaSwgLS10eXBlPWJvb2wgaWxlIGJpcmxpa3RlIGJpciBCb29sZSBkZcSfZXJpIGJla2xpeW9yLCAnJXMnICIKKyJkZcSfaWwiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisib3B0aW9uIGAtLWRlZmF1bHQnIGV4cGVjdHMgYW4gdW5zaWduZWQgbG9uZyB2YWx1ZSB3aXRoIGAtLXR5cGU9dWxvbmdgLCBub3QgYCIKKyIlc2AiCittc2dzdHIgIiIKKyItLWRlZmF1bHQgc2XDp2VuZcSfaSwgLS10eXBlPXVsb25nIGlsZSBiaXJsaWt0ZSBiaXIgaW16YWxhbm1hbcSxxZ8gdXp1biBkZcSfZXIgIgorImJla2xpeW9yLCAnJXMnIGRlxJ9pbCIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjI5Cittc2dpZCAiZ2l0IGZhc3QtZXhwb3J0IFtyZXYtbGlzdC1vcHRzXSIKK21zZ3N0ciAiZ2l0IGZhc3QtZXhwb3J0IFtyZXYtbGlzdC1vcHRzXSIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjg1MworbXNnaWQgIkVycm9yOiBDYW5ub3QgZXhwb3J0IG5lc3RlZCB0YWdzIHVubGVzcyAtLW1hcmstdGFncyBpcyBzcGVjaWZpZWQuIgorbXNnc3RyICIiCisiSGF0YTogxLDDpyBpw6dlIGdlw6dtacWfIGV0aWtldGxlciAtLW1hcmstdGFncyBiZWxpcnRpbG1lZGnEn2kgc8O8cmVjZSBkxLHFn2EgIgorImFrdGFyxLFsYW1hei4iCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTUyCittc2dpZCAic2hvdyBwcm9ncmVzcyBhZnRlciA8bj4gb2JqZWN0cyIKK21zZ3N0ciAiPG4+IG5lc25lZGVuIHNvbnJhIGlsZXJsZW1leWkgZ8O2c3RlciIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTQKK21zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2Ygc2lnbmVkIHRhZ3MiCittc2dzdHIgImltemFsYW5hbiBldGlrZXRsZXJpbiBuYXPEsWwgacWfbGVuZWNlxJ9pbmkgc2XDp2luIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NworbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiB0YWdzIHRoYXQgdGFnIGZpbHRlcmVkIG9iamVjdHMiCittc2dzdHIgIm5lc25lbGVyY2Ugc8O8esO8bGVuIGV0aWtldGxlcmluIG5hc8SxbCBpxZ9sZW5lY2XEn2luaSBzZcOnaW4iCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTYwCittc2dpZCAic2VsZWN0IGhhbmRsaW5nIG9mIGNvbW1pdCBtZXNzYWdlcyBpbiBhbiBhbHRlcm5hdGUgZW5jb2RpbmciCittc2dzdHIgImJhxZ9rYSBiaXIga29kbGFtYXlhIGl5ZSBnw7ZuZGVyaSBpbGV0aWxlcmluaW4gbmFzxLFsIGnFn2xlbmVjZcSfaW5pIHNlw6dpbiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjMKK21zZ2lkICJEdW1wIG1hcmtzIHRvIHRoaXMgZmlsZSIKK21zZ3N0ciAiaW1sZXJpIGJ1IGRvc3lheWEgYm/Fn2FsdCIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjUKK21zZ2lkICJJbXBvcnQgbWFya3MgZnJvbSB0aGlzIGZpbGUiCittc2dzdHIgImltbGVyaSBidSBkb3N5YWRhbiBpw6dlIGFrdGFyIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2OQorbXNnaWQgIkltcG9ydCBtYXJrcyBmcm9tIHRoaXMgZmlsZSBpZiBpdCBleGlzdHMiCittc2dzdHIgImXEn2VyIHZhcnNhIGJ1IGRvc3lhZGFuIGltbGVyaSBpw6dlIGFrdGFyIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3MQorbXNnaWQgIkZha2UgYSB0YWdnZXIgd2hlbiB0YWdzIGxhY2sgb25lIgorbXNnc3RyICJldGlrZXRsZXJpbiBiaXIgZXRpa2V0bGV5aWNpc2kgeW9rc2EgdmFybcSxxZ8gZ2liaSBkYXZyYW4iCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTczCittc2dpZCAiT3V0cHV0IGZ1bGwgdHJlZSBmb3IgZWFjaCBjb21taXQiCittc2dzdHIgImhlciBnw7ZuZGVyaSBpw6dpbiB0w7xtIGHEn2FjxLFuIMOnxLFrdMSxc8SxbsSxIHZlciIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzUKK21zZ2lkICJVc2UgdGhlIGRvbmUgZmVhdHVyZSB0byB0ZXJtaW5hdGUgdGhlIHN0cmVhbSIKK21zZ3N0ciAiYWvEscWfxLEgc29ubGFuZMSxcm1hayBpw6dpbiAnZG9uZScgw7Z6ZWxsacSfaW5pIGt1bGxhbiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzYKK21zZ2lkICJTa2lwIG91dHB1dCBvZiBibG9iIGRhdGEiCittc2dzdHIgImlraWxpIG5lc25lIHZlcmlzaSDDp8Sxa3TEsXPEsW7EsSBhdGxhIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NyBidWlsdGluL2xvZy5jOjE3MDUKK21zZ2lkICJyZWZzcGVjIgorbXNnc3RyICJiYcWfdnVydSBiZWxpcnRlY2kiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc4Cittc2dpZCAiQXBwbHkgcmVmc3BlYyB0byBleHBvcnRlZCByZWZzIgorbXNnc3RyICJiYcWfdnVydSBiZWxpcnRlY2luaSBkxLHFn2EgYWt0YXLEsWxhbiBiYcWfdnVydWxhcmEgYWt0YXIiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc5Cittc2dpZCAiYW5vbnltaXplIG91dHB1dCIKK21zZ3N0ciAiw6fEsWt0xLEga2ltbGnEn2luaSBnaXpsZSIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODEKK21zZ2lkICJSZWZlcmVuY2UgcGFyZW50cyB3aGljaCBhcmUgbm90IGluIGZhc3QtZXhwb3J0IHN0cmVhbSBieSBvYmplY3QgaWQiCittc2dzdHIgIidmYXN0LWV4cG9ydCcgYWvEscWfxLFuZGEgb2xtYXlhbiDDvHN0IMO2Z2VsZXJlIG5lc25lIG51bWFyYXPEsSBpbGUgYmHFn3Z1ciIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODMKK21zZ2lkICJTaG93IG9yaWdpbmFsIG9iamVjdCBpZHMgb2YgYmxvYnMvY29tbWl0cyIKK21zZ3N0ciAiaWtpbGkgbmVzbmVsZXJpbi9nw7ZuZGVyaWxlcmluIG9yaWppbmFsIG5lc25lIG51bWFyYWxhcsSxbsSxIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTg1Cittc2dpZCAiTGFiZWwgdGFncyB3aXRoIG1hcmsgaWRzIgorbXNnc3RyICJldGlrZXRsZXJpIGltIG51bWFyYWxhcsSxeWxhIGFkbGFuZMSxciIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEyMjAKK21zZ2lkICJDYW5ub3QgcGFzcyBib3RoIC0taW1wb3J0LW1hcmtzIGFuZCAtLWltcG9ydC1tYXJrcy1pZi1leGlzdHMiCittc2dzdHIgIkhlbSAtLWltcG9ydC1tYXJrcyB2ZSBoZW0gLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzIGFrdGFyxLFsYW1hZMSxIgorCisjOiBidWlsdGluL2ZldGNoLmM6MzQKK21zZ2lkICJnaXQgZmV0Y2ggWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCittc2dzdHIgImdpdCBmZXRjaCBbPHNlw6dlbmVrbGVyPl0gWzxkZXBvPiBbPGLFn3ZyLWJscnTDpz4uLi5dXSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjM1Cittc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIDxncm91cD4iCittc2dzdHIgImdpdCBmZXRjaCBbPHNlw6dlbmVrbGVyPl0gPGdydXA+IgorCisjOiBidWlsdGluL2ZldGNoLmM6MzYKK21zZ2lkICJnaXQgZmV0Y2ggLS1tdWx0aXBsZSBbPG9wdGlvbnM+XSBbKDxyZXBvc2l0b3J5PiB8IDxncm91cD4pLi4uXSIKK21zZ3N0ciAiZ2l0IGZldGNoIC0tbXVsdGlwbGUgWzxzZcOnZW5la2xlcj5dIFsoPGRlcG8+IHwgPGdydXA+KS4uLl0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNworbXNnaWQgImdpdCBmZXRjaCAtLWFsbCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IGZldGNoIC0tYWxsIFs8c2XDp2VuZWtsZXI+XSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjExNgorbXNnaWQgImZldGNoLnBhcmFsbGVsIGNhbm5vdCBiZSBuZWdhdGl2ZSIKK21zZ3N0ciAiZmV0Y2gucGFyYWxsZWwgbmVnYXRpZiBvbGFtYXoiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMzkgYnVpbHRpbi9wdWxsLmM6MTg0Cittc2dpZCAiZmV0Y2ggZnJvbSBhbGwgcmVtb3RlcyIKK21zZ3N0ciAidMO8bSB1emFrIGtvbnVtbGFyZGFuIGdldGlyIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQxIGJ1aWx0aW4vcHVsbC5jOjIyOAorbXNnaWQgInNldCB1cHN0cmVhbSBmb3IgZ2l0IHB1bGwvZmV0Y2giCittc2dzdHIgImdpdCBwdWxsL2ZldGNoIGnDp2luIMO8c3RrYXluYWsgYXlhcmxhIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzIGJ1aWx0aW4vcHVsbC5jOjE4NworbXNnaWQgImFwcGVuZCB0byAuZ2l0L0ZFVENIX0hFQUQgaW5zdGVhZCBvZiBvdmVyd3JpdGluZyIKK21zZ3N0ciAiLmdpdC9GRVRDSF9IRUFEJ2luIMO8emVyaW5lIHlhem1hayB5ZXJpbmUgb25hIGlsacWfdGlyIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ1IGJ1aWx0aW4vcHVsbC5jOjE5MAorbXNnaWQgInBhdGggdG8gdXBsb2FkIHBhY2sgb24gcmVtb3RlIGVuZCIKK21zZ3N0ciAidXphayB1w6d0YWtpIHnDvGtsZW1lIHBha2V0aW5lIG9sYW4geW9sIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ2Cittc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGxvY2FsIHJlZmVyZW5jZSIKK21zZ3N0ciAieWVyZWwgYmHFn3Z1cnVudW4gw7x6ZXJpbmUgem9ybGEgeWF6IgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ4Cittc2dpZCAiZmV0Y2ggZnJvbSBtdWx0aXBsZSByZW1vdGVzIgorbXNnc3RyICJiaXJkZW4gw6dvayB1emFrIGtvbnVtZGFuIGdldGlyIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTUwIGJ1aWx0aW4vcHVsbC5jOjE5NAorbXNnaWQgImZldGNoIGFsbCB0YWdzIGFuZCBhc3NvY2lhdGVkIG9iamVjdHMiCittc2dzdHIgInTDvG0gZXRpa2V0bGVyaSB2ZSBpbGnFn2tpbGVuZGlyaWxlbiBuZXNuZWxlcmkgZ2V0aXIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTIKK21zZ2lkICJkbyBub3QgZmV0Y2ggYWxsIHRhZ3MgKC0tbm8tdGFncykiCittc2dzdHIgInTDvG0gZXRpa2V0bGVyaSBnZXRpcm1lICgtLW5vLXRhZ3MpIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTU0Cittc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgZmV0Y2hlZCBpbiBwYXJhbGxlbCIKK21zZ3N0ciAicGFyYWxlbGRlIGdldGlyaWxlbiBhbHRtb2TDvGxsZXJpbiBzYXnEsXPEsSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE1NiBidWlsdGluL3B1bGwuYzoxOTcKK21zZ2lkICJwcnVuZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMgbm8gbG9uZ2VyIG9uIHJlbW90ZSIKK21zZ3N0ciAiYXJ0xLFrIHV6YWsga29udW1kYSBvbG1heWFuIHV6YWsgaXpsZW1lIGRhbGxhcsSxbsSxIGJ1ZGEiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTgKK21zZ2lkICJwcnVuZSBsb2NhbCB0YWdzIG5vIGxvbmdlciBvbiByZW1vdGUgYW5kIGNsb2JiZXIgY2hhbmdlZCB0YWdzIgorbXNnc3RyICIiCisiYXJ0xLFrIHV6YWsga29udW1kYSBvbG1heWFuIHllcmVsIGV0aWtldGxlcmkgYnVkYSB2ZSBkZcSfacWfdGlyaWxlbiBldGlrZXRsZXJpICIKKyJnw7xuY2VsbGUiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTkgYnVpbHRpbi9mZXRjaC5jOjE4MiBidWlsdGluL3B1bGwuYzoxMjEKK21zZ2lkICJvbi1kZW1hbmQiCittc2dzdHIgImlzdGVrIMO8emVyaW5lIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTYwCittc2dpZCAiY29udHJvbCByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyIKK21zZ3N0ciAiYWx0bW9kw7xsbGVyaW4gw7Z6eWluZWxpIGdldGlyaWxtZXNpbmkgZGVuZXRsZSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE2NCBidWlsdGluL3B1bGwuYzoyMDUKK21zZ2lkICJrZWVwIGRvd25sb2FkZWQgcGFjayIKK21zZ3N0ciAiaW5kaXJpbGVuIHBha2V0aSB0dXQiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjYKK21zZ2lkICJhbGxvdyB1cGRhdGluZyBvZiBIRUFEIHJlZiIKK21zZ3N0ciAiSEVBRCBiYcWfdnVydXN1bnVuIGfDvG5jZWxsZW5tZXNpbmUgaXppbiB2ZXIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjkgYnVpbHRpbi9mZXRjaC5jOjE3NSBidWlsdGluL3B1bGwuYzoyMDgKK21zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IGNsb25lIgorbXNnc3RyICJzxLHEnyBrbG9udW4gZ2XDp21pxZ9pbmkgZGVyaW5sZcWfdGlyIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTcxCittc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyByZXBvc2l0b3J5IGJhc2VkIG9uIHRpbWUiCittc2dzdHIgInphbWFuYSBiYcSfbMSxIG9sYXJhayBzxLHEnyBkZXBvbnVuIGdlw6dtacWfaW5pIGRlcmlubGXFn3RpciIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE3NyBidWlsdGluL3B1bGwuYzoyMTEKK21zZ2lkICJjb252ZXJ0IHRvIGEgY29tcGxldGUgcmVwb3NpdG9yeSIKK21zZ3N0ciAidGFtIGJpciBkZXBveWEgZMO2bsO8xZ90w7xyIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTgwCittc2dpZCAicHJlcGVuZCB0aGlzIHRvIHN1Ym1vZHVsZSBwYXRoIG91dHB1dCIKK21zZ3N0ciAiYnVudSBhbHRtb2TDvGwgeW9sIMOnxLFrdMSxc8SxbsSxbiBiYcWfxLFuYSBla2xlIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTgzCittc2dpZCAiIgorImRlZmF1bHQgZm9yIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIChsb3dlciBwcmlvcml0eSB0aGFuIGNvbmZpZyAiCisiZmlsZXMpIgorbXNnc3RyICIiCisiYWx0bW9kw7xsbGVyaW4gw7Z6eWluZWxpIGdldGlyaWxtZXNpIGnDp2luIMO2bnRhbsSxbWzEsSAoeWFwxLFsYW5kxLFybWEgIgorImRvc3lhbGFyxLFuZGFuIGRhaGEgYXogw7ZuY2VsacSfZSBpeWUpIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTg3IGJ1aWx0aW4vcHVsbC5jOjIxNAorbXNnaWQgImFjY2VwdCByZWZzIHRoYXQgdXBkYXRlIC5naXQvc2hhbGxvdyIKK21zZ3N0ciAiLmdpdC9zaGFsbG93J3UgZ8O8bmNlbGxleWVuIGJhxZ92dXJ1bGFyxLEga2FidWwgZXQiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODggYnVpbHRpbi9wdWxsLmM6MjE2Cittc2dpZCAicmVmbWFwIgorbXNnc3RyICJpbGdpbGkgYmHFn3Z1cnUiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODkgYnVpbHRpbi9wdWxsLmM6MjE3Cittc2dpZCAic3BlY2lmeSBmZXRjaCByZWZtYXAiCittc2dzdHIgImdldGlybWUgaWxlIGlsZ2lsaSBiYcWfdnVydWxhcsSxIGJlbGlydCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE5NgorbXNnaWQgInJlcG9ydCB0aGF0IHdlIGhhdmUgb25seSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHRoaXMgb2JqZWN0IgorbXNnc3RyICJ5YWxuxLF6Y2EgYnUgbmVzbmVkZW4gdWxhxZ/EsWxhYmlsaXIgbmVzbmVsZXJpbWl6IG9sZHXEn3VudSBiaWxkaXIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxOTkKK21zZ2lkICJydW4gJ2djIC0tYXV0bycgYWZ0ZXIgZmV0Y2hpbmciCittc2dzdHIgImdldGlybWUgc29ucmFzxLFuZGEgJ2djIC0tYXV0bycgw6dhbMSxxZ90xLFyIgorCisjOiBidWlsdGluL2ZldGNoLmM6MjAxIGJ1aWx0aW4vcHVsbC5jOjIyNgorbXNnaWQgImNoZWNrIGZvciBmb3JjZWQtdXBkYXRlcyBvbiBhbGwgdXBkYXRlZCBicmFuY2hlcyIKK21zZ3N0ciAidMO8bSBnw7xuY2VsbGVubWnFnyBkYWxsYXLEsSB6b3JsYW5txLHFnyBnw7xuY2VsbGVtZWxlciBpw6dpbiBkZW5ldGxlIgorCisjOiBidWlsdGluL2ZldGNoLmM6MjAzCittc2dpZCAid3JpdGUgdGhlIGNvbW1pdC1ncmFwaCBhZnRlciBmZXRjaGluZyIKK21zZ3N0ciAiZ2V0aXJkaWt0ZW4gc29ucmEgZ8O2bmRlcmkgZ3JhZmnEn2luaSB5YXoiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo1MTMKK21zZ2lkICJDb3VsZG4ndCBmaW5kIHJlbW90ZSByZWYgSEVBRCIKK21zZ3N0ciAiVXphayBIRUFEIGJhxZ92dXJ1c3UgYnVsdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo2NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBmZXRjaC5vdXRwdXQgY29udGFpbnMgaW52YWxpZCB2YWx1ZSAlcyIKK21zZ3N0ciAiZmV0Y2gub3V0cHV0IHlhcMSxbGFuZMSxcm1hc8SxIGdlw6dlcnNpeiBkZcSfZXIgacOnZXJpeW9yOiAlcyIKKworIzogYnVpbHRpbi9mZXRjaC5jOjc1MQorIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgJXMgbm90IGZvdW5kIgorbXNnc3RyICIlcyBuZXNuZXNpIGJ1bHVuYW1hZMSxIgorCisjOiBidWlsdGluL2ZldGNoLmM6NzU1Cittc2dpZCAiW3VwIHRvIGRhdGVdIgorbXNnc3RyICJbZ8O8bmNlbF0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NjggYnVpbHRpbi9mZXRjaC5jOjc4NCBidWlsdGluL2ZldGNoLmM6ODU2Cittc2dpZCAiW3JlamVjdGVkXSIKK21zZ3N0ciAiW3JlZGRlZGlsZGldIgorCisjOiBidWlsdGluL2ZldGNoLmM6NzY5Cittc2dpZCAiY2FuJ3QgZmV0Y2ggaW4gY3VycmVudCBicmFuY2giCittc2dzdHIgImdlw6dlcmxpIGRhbGRhIGdldGlybWUgeWFwxLFsYW3EsXlvciIKKworIzogYnVpbHRpbi9mZXRjaC5jOjc3OQorbXNnaWQgIlt0YWcgdXBkYXRlXSIKK21zZ3N0ciAiW2V0aWtldCBnw7xuY2VsbGVtZXNpXSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjc4MCBidWlsdGluL2ZldGNoLmM6ODE3IGJ1aWx0aW4vZmV0Y2guYzo4MzkKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NTEKK21zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIGxvY2FsIHJlZiIKK21zZ3N0ciAieWVyZWwgYmHFn3Z1cnUgZ8O8bmNlbGxlbmVtaXlvciIKKworIzogYnVpbHRpbi9mZXRjaC5jOjc4NAorbXNnaWQgIndvdWxkIGNsb2JiZXIgZXhpc3RpbmcgdGFnIgorbXNnc3RyICJ2YXIgb2xhbiBldGlrZXRpIGRlxJ9pxZ90aXJlY2VrdGlyIgorCisjOiBidWlsdGluL2ZldGNoLmM6ODA2Cittc2dpZCAiW25ldyB0YWddIgorbXNnc3RyICJbeWVuaSBldGlrZXRdIgorCisjOiBidWlsdGluL2ZldGNoLmM6ODA5Cittc2dpZCAiW25ldyBicmFuY2hdIgorbXNnc3RyICJbeWVuaSBkYWxdIgorCisjOiBidWlsdGluL2ZldGNoLmM6ODEyCittc2dpZCAiW25ldyByZWZdIgorbXNnc3RyICJbeWVuaSBiYcWfdnVydV0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NTEKK21zZ2lkICJmb3JjZWQgdXBkYXRlIgorbXNnc3RyICJ6b3JsYW5txLHFnyBnw7xuY2VsbGVtZSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjg1NgorbXNnaWQgIm5vbi1mYXN0LWZvcndhcmQiCittc2dzdHIgImlsZXJpIHNhcsSxbSBkZcSfaWwiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NzcKK21zZ2lkICIiCisiRmV0Y2ggbm9ybWFsbHkgaW5kaWNhdGVzIHdoaWNoIGJyYW5jaGVzIGhhZCBhIGZvcmNlZCB1cGRhdGUsXG4iCisiYnV0IHRoYXQgY2hlY2sgaGFzIGJlZW4gZGlzYWJsZWQuIFRvIHJlLWVuYWJsZSwgdXNlICctLXNob3ctZm9yY2VkLXVwZGF0ZXMnXG4iCisiZmxhZyBvciBydW4gJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgdHJ1ZScuIgorbXNnc3RyICIiCisiR2V0aXJtZSBub3JtYWxkZSBoYW5naSBkYWxsYXJkYSB6b3JsYSBnw7xuY2VsbGVtZSB5YXDEsWxkxLHEn8SxbsSxIGJlbGlydGlyLFxuIgorImFuY2FrIGJ1IGRlbmV0bGVtZSBrYXBhdMSxbG3EscWfLiBZZW5pZGVuIGHDp21hayBpw6dpbiAtLXNob3ctZm9yY2VkLXVwZGF0ZXNcbiIKKyJiYXlyYcSfxLFuxLEga3VsbGFuxLFuIHZleWEgJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgdHJ1ZScgw6dhbMSxxZ90xLFyxLFuLiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjg4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gY2hlY2sgZm9yY2VkIHVwZGF0ZXMuIFlvdSBjYW4gdXNlXG4iCisiJy0tbm8tc2hvdy1mb3JjZWQtdXBkYXRlcycgb3IgcnVuICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzICIKKyJmYWxzZSdcbiIKKyIgdG8gYXZvaWQgdGhpcyBjaGVjay5cbiIKK21zZ3N0ciAiIgorIlpvcmxhIGfDvG5jZWxsZW1lbGVyaSBkZW5ldGxlbWUgJS4yZiBzYW5peWUgc8O8cmTDvC4gLS1uby1zaG93LWZvcmNlZC11cGRhdGVzXG4iCisia3VsbGFuYXJhayB2ZXlhICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzIGZhbHNlJyDDp2FsxLHFn3TEsXJhcmFrXG4iCisiYnUgZGVuZXRsZW1lZGVuIGthw6fEsW5hYmlsaXJzaW5pei5cbiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjkyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkaWQgbm90IHNlbmQgYWxsIG5lY2Vzc2FyeSBvYmplY3RzXG4iCittc2dzdHIgIiVzIHTDvG0gZ2VyZWtsaSBuZXNuZWxlcmkgZ8O2bmRlcm1lZGlcbiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjk0MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWplY3QgJXMgYmVjYXVzZSBzaGFsbG93IHJvb3RzIGFyZSBub3QgYWxsb3dlZCB0byBiZSB1cGRhdGVkIgorbXNnc3RyICIlcyByZWRkZWRpbG1lbGksIMOnw7xua8O8IHPEscSfIGvDtmtsZXJpbiBnw7xuY2VsbGVubWVzaW5lIGl6aW4gdmVyaWxtaXlvciIKKworIzogYnVpbHRpbi9mZXRjaC5jOjEwMjYgYnVpbHRpbi9mZXRjaC5jOjExNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRnJvbSAlLipzXG4iCittc2dzdHIgIsWedXJhZGFuOiAlLipzXG4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMDM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJzb21lIGxvY2FsIHJlZnMgY291bGQgbm90IGJlIHVwZGF0ZWQ7IHRyeSBydW5uaW5nXG4iCisiICdnaXQgcmVtb3RlIHBydW5lICVzJyB0byByZW1vdmUgYW55IG9sZCwgY29uZmxpY3RpbmcgYnJhbmNoZXMiCittc2dzdHIgIiIKKyJiYXrEsSB5ZXJlbCBiYcWfdnVydWxhciBnw7xuY2VsbGVuZW1lZGk7ICdnaXQgcmVtb3RlIHBydW5lICVzJ1xuIgorImt1bGxhbmFyYWsgZXNraSB2ZSDDp2FrxLHFn2FuIGRhbGxhcsSxIGthbGTEsXJtYXnEsSBkZW5leWluIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAoJXMgd2lsbCBiZWNvbWUgZGFuZ2xpbmcpIgorbXNnc3RyICIgICAoJXMgc2Fya2FjYWspIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTEzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICAoJXMgaGFzIGJlY29tZSBkYW5nbGluZykiCittc2dzdHIgIiAgICglcyBzYXJrbWF5YSBiYcWfbGFkxLEpIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTE2NworbXNnaWQgIltkZWxldGVkXSIKK21zZ3N0ciAiW3NpbGluZGldIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTE2OCBidWlsdGluL3JlbW90ZS5jOjExMTIKK21zZ2lkICIobm9uZSkiCittc2dzdHIgIih5b2spIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTE5MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZWZ1c2luZyB0byBmZXRjaCBpbnRvIGN1cnJlbnQgYnJhbmNoICVzIG9mIG5vbi1iYXJlIHJlcG9zaXRvcnkiCittc2dzdHIgIsOHxLFwbGFrIG9sbWF5YW4gZGVwb251biBnZcOnZXJsaSAlcyBkYWzEsW5hIGdldGlybWUgcmVkZGVkaWxpeW9yIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJPcHRpb24gXCIlc1wiIHZhbHVlIFwiJXNcIiBpcyBub3QgdmFsaWQgZm9yICVzIgorbXNnc3RyICJcIiVzXCIgc2XDp2VuZcSfaSBcIiVzXCIgZGXEn2VyaSAlcyBpw6dpbiBnZcOnZXJsaSBkZcSfaWwiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIk9wdGlvbiBcIiVzXCIgaXMgaWdub3JlZCBmb3IgJXNcbiIKK21zZ3N0ciAiXCIlc1wiIHNlw6dlbmXEn2kgJXMgacOnaW4geW9rIHNhecSxbMSxeW9yXG4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDIxCittc2dpZCAibXVsdGlwbGUgYnJhbmNoZXMgZGV0ZWN0ZWQsIGluY29tcGF0aWJsZSB3aXRoIC0tc2V0LXVwc3RyZWFtIgorbXNnc3RyICJiaXJkZW4gw6dvayBkYWwgYWxnxLFsYW5kxLEsIC0tc2V0LXVwc3RyZWFtIGlsZSB1eXVtc3V6IgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzNgorbXNnaWQgIm5vdCBzZXR0aW5nIHVwc3RyZWFtIGZvciBhIHJlbW90ZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICJiaXIgdXphayBrb251bSB1emFrIGl6bGVtZSBkYWzEsSBpw6dpbiDDvHN0a2F5bmFrIGF5YXJsYW5txLF5b3IiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDM4Cittc2dpZCAibm90IHNldHRpbmcgdXBzdHJlYW0gZm9yIGEgcmVtb3RlIHRhZyIKK21zZ3N0ciAiYmlyIHV6YWsga29udW0gZXRpa2V0aSBpw6dpbiDDvHN0a2F5bmFrIGF5YXJsYW5txLF5b3IiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDQwCittc2dpZCAidW5rbm93biBicmFuY2ggdHlwZSIKK21zZ3N0ciAiYmlsaW5tZXllbiBkYWwgdMO8csO8IgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ0MgorbXNnaWQgIiIKKyJubyBzb3VyY2UgYnJhbmNoIGZvdW5kLlxuIgorInlvdSBuZWVkIHRvIHNwZWNpZnkgZXhhY3RseSBvbmUgYnJhbmNoIHdpdGggdGhlIC0tc2V0LXVwc3RyZWFtIG9wdGlvbi4iCittc2dzdHIgIiIKKyJLYXluYWsgZGFsIGJ1bHVuYW1hZMSxLlxuIgorIi0tc2V0LXVwc3RyZWFtLW9wdGlvbiBpbGUgdGFtIG9sYXJhayBiaXIgZGFsIGJlbGlydG1lbml6IGdlcmVraXlvci4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTY4IGJ1aWx0aW4vZmV0Y2guYzoxNjMxCisjLCBjLWZvcm1hdAorbXNnaWQgIkZldGNoaW5nICVzXG4iCittc2dzdHIgIiVzIGdldGlyaWxpeW9yXG4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTc4IGJ1aWx0aW4vZmV0Y2guYzoxNjMzIGJ1aWx0aW4vcmVtb3RlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBmZXRjaCAlcyIKK21zZ3N0ciAiJXMgZ2V0aXJpbGVtZWRpIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTU5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZmV0Y2ggJyVzJyAoZXhpdCBjb2RlOiAlZClcbiIKK21zZ3N0ciAiJyVzJyBnZXRpcmlsZW1lZGkgKMOnxLFrxLHFnyBrb2R1OiAlZClcbiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE2OTMKK21zZ2lkICIiCisiTm8gcmVtb3RlIHJlcG9zaXRvcnkgc3BlY2lmaWVkLiAgUGxlYXNlLCBzcGVjaWZ5IGVpdGhlciBhIFVSTCBvciBhXG4iCisicmVtb3RlIG5hbWUgZnJvbSB3aGljaCBuZXcgcmV2aXNpb25zIHNob3VsZCBiZSBmZXRjaGVkLiIKK21zZ3N0ciAiIgorIkJpciB1emFrIGRhbCBiZWxpcnRpbG1lZGkuIEzDvHRmZW4geWVuaSByZXZpenlvbmxhcsSxblxuIgorImFsxLFuYWNhxJ/EsSBiaXIgVVJMIHZleWEgdXphayBrb251bSBhZMSxIGJlbGlydGluLiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE3MzAKK21zZ2lkICJZb3UgbmVlZCB0byBzcGVjaWZ5IGEgdGFnIG5hbWUuIgorbXNnc3RyICJCaXIgZXRpa2V0IGFkxLEgYmVsaXJ0bWVuaXogZ2VyZWtpeW9yLiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE3ODAKK21zZ2lkICJOZWdhdGl2ZSBkZXB0aCBpbiAtLWRlZXBlbiBpcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICItLWRlZXBlbiBpw6dpbiBuZWdhdGlmIGRlcmlubGlrIGRlc3Rla2xlbm1peW9yIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTc4MgorbXNnaWQgIi0tZGVlcGVuIGFuZCAtLWRlcHRoIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIi0tZGVlcGVuIHZlIC0tZGVwdGggYmlybGlrdGUga3VsbGFuxLFsYW1heiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE3ODcKK21zZ2lkICItLWRlcHRoIGFuZCAtLXVuc2hhbGxvdyBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKK21zZ3N0ciAiLS1kZXB0aCB2ZSAtLXVuc2hhbGxvdyBiaXJsaWt0ZSBrdWxsYW7EsWxhbWF6IgorCisjOiBidWlsdGluL2ZldGNoLmM6MTc4OQorbXNnaWQgIi0tdW5zaGFsbG93IG9uIGEgY29tcGxldGUgcmVwb3NpdG9yeSBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICJ0YW0gYmlyIGRlcG8gw7x6ZXJpbmRlIC0tdW5zaGFsbG93IGJpciBhbmxhbSBpZmFkZSBldG1peW9yIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTgwNQorbXNnaWQgImZldGNoIC0tYWxsIGRvZXMgbm90IHRha2UgYSByZXBvc2l0b3J5IGFyZ3VtZW50IgorbXNnc3RyICJmZXRjaCAtLWFsbCBiaXIgZGVwbyBkZcSfacWfa2VuaSBhbG3EsXlvciIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE4MDcKK21zZ2lkICJmZXRjaCAtLWFsbCBkb2VzIG5vdCBtYWtlIHNlbnNlIHdpdGggcmVmc3BlY3MiCittc2dzdHIgImZldGNoIC0tYWxsIGJhxZ92dXJ1IGJlbGlydGXDp2xlcmkgaWxlIGJpcmxpa3RlIGJpciBhbmxhbSBpZmFkZSBldG1peW9yIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTgxNgorIywgYy1mb3JtYXQKK21zZ2lkICJObyBzdWNoIHJlbW90ZSBvciByZW1vdGUgZ3JvdXA6ICVzIgorbXNnc3RyICJCw7Z5bGUgYmlyIHV6YWsga29udW0gdmV5YSB1emFrIGtvbnVtIGdydWJ1IHlvazogJXMiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODIzCittc2dpZCAiRmV0Y2hpbmcgYSBncm91cCBhbmQgc3BlY2lmeWluZyByZWZzcGVjcyBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICIiCisiQmlyIGdydWJ1IGdldGlybWUgdmUgYmHFn3Z1cnUgYmVsaXJ0ZcOnbGVyaSB0YW7EsW1sYW1hIGJpciBhbmxhbSBpZmFkZSBldG1peW9yIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTg0MQorbXNnaWQgIiIKKyItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdpdGggdGhlIHJlbW90ZSBjb25maWd1cmVkIGluIGV4dGVuc2lvbnMuIgorInBhcnRpYWxjbG9uZSIKK21zZ3N0ciAiIgorIi0tZmlsdGVyIHlhbG7EsXpjYSBleHRlbnNpb25zLnBhcnRpYWxjbG9uZSBpw6dpbmRlIHlhcMSxbGFuZMSxcsSxbG3EscWfIHV6YWsga29udW0gIgorImlsZSBrdWxsYW7EsWxhYmlsaXIuIgorCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzoxOAorbXNnaWQgIiIKKyJnaXQgZm10LW1lcmdlLW1zZyBbLW0gPG1lc3NhZ2U+XSBbLS1sb2dbPTxuPl0gfCAtLW5vLWxvZ10gWy0tZmlsZSA8ZmlsZT5dIgorbXNnc3RyICIiCisiZ2l0IGZtdC1tZXJnZS1tc2cgWy1tIDxpbGV0aT5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlIDxkb3N5YT5dIgorCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzEKK21zZ2lkICJwb3B1bGF0ZSBsb2cgd2l0aCBhdCBtb3N0IDxuPiBlbnRyaWVzIGZyb20gc2hvcnRsb2ciCittc2dzdHIgImfDvG5sw7zEn8O8IGvEsXNhIGfDvG5sw7xrdGVuIGVuIGF6IDxuPiBnaXJkaSBpbGUgZG9sZHVyIgorCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzQKK21zZ2lkICJhbGlhcyBmb3IgLS1sb2cgKGRlcHJlY2F0ZWQpIgorbXNnc3RyICItLWxvZyBpw6dpbiBhcm1hIChrdWxsYW7EsW0gZMSxxZ/EsSkiCisKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NworbXNnaWQgInRleHQiCittc2dzdHIgIm1ldGluIgorCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzgKK21zZ2lkICJ1c2UgPHRleHQ+IGFzIHN0YXJ0IG9mIG1lc3NhZ2UiCittc2dzdHIgImlsZXRpbmluIGJhxZ9sYW5nxLFjxLEgb2xhcmFrIDxtZXRpbj4ga3VsbGFuIgorCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzkKK21zZ2lkICJmaWxlIHRvIHJlYWQgZnJvbSIKK21zZ3N0ciAib2t1bmFjYWsgZG9zeWEiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MTAKK21zZ2lkICJnaXQgZm9yLWVhY2gtcmVmIFs8b3B0aW9ucz5dIFs8cGF0dGVybj5dIgorbXNnc3RyICJnaXQgZm9yLWVhY2gtcmVmIFs8c2XDp2VuZWtsZXI+XSBbPGRpemdpPl0iCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MTEKK21zZ2lkICJnaXQgZm9yLWVhY2gtcmVmIFstLXBvaW50cy1hdCA8b2JqZWN0Pl0iCittc2dzdHIgImdpdCBmb3ItZWFjaC1yZWYgWy0tcG9pbnRzLWF0IDxuZXNuZT5dIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjEyCittc2dpZCAiZ2l0IGZvci1lYWNoLXJlZiBbKC0tbWVyZ2VkIHwgLS1uby1tZXJnZWQpIFs8Y29tbWl0Pl1dIgorbXNnc3RyICJnaXQgZm9yLWVhY2gtcmVmIFsoLS1tZXJnZWQgfCAtLW5vLW1lcmdlZCkgWzxnw7ZuZGVyaT5dXSIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzoxMworbXNnaWQgImdpdCBmb3ItZWFjaC1yZWYgWy0tY29udGFpbnMgWzxjb21taXQ+XV0gWy0tbm8tY29udGFpbnMgWzxjb21taXQ+XV0iCittc2dzdHIgImdpdCBmb3ItZWFjaC1yZWYgWy0tY29udGFpbnMgWzxnw7ZuZGVyaT5dXSBbLS1uby1jb250YWlucyBbPGfDtm5kZXJpPl1dIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjI4Cittc2dpZCAicXVvdGUgcGxhY2Vob2xkZXJzIHN1aXRhYmx5IGZvciBzaGVsbHMiCittc2dzdHIgInllciB0dXR1Y3VsYXLEsSBrYWJ1xJ91biBhbmxheWFiaWxlY2XEn2kgYmnDp2ltZGUgdMSxcm5hayBpw6dpbmUgYWwiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzAKK21zZ2lkICJxdW90ZSBwbGFjZWhvbGRlcnMgc3VpdGFibHkgZm9yIHBlcmwiCittc2dzdHIgInllciB0dXR1Y3VsYXLEsSBwZXJsJ2luIGFubGF5YWJpbGVjZcSfaSBiacOnaW1kZSB0xLFybmFrIGnDp2luZSBhbCIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozMgorbXNnaWQgInF1b3RlIHBsYWNlaG9sZGVycyBzdWl0YWJseSBmb3IgcHl0aG9uIgorbXNnc3RyICJ5ZXIgdHV0dWN1bGFyxLEgcHl0aG9uJ3VuIGFubGF5YWJpbGVjZcSfaSBiacOnaW1kZSB0xLFybmFrIGnDp2luZSBhbCIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozNAorbXNnaWQgInF1b3RlIHBsYWNlaG9sZGVycyBzdWl0YWJseSBmb3IgVGNsIgorbXNnc3RyICJ5ZXIgdHV0dWN1bGFyxLEgVGNsJ25pbiBhbmxheWFiaWxlY2XEn2kgYmnDp2ltZGUgdMSxcm5hayBpw6dpbmUgYWwiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzcKK21zZ2lkICJzaG93IG9ubHkgPG4+IG1hdGNoZWQgcmVmcyIKK21zZ3N0ciAieWFsbsSxemNhIDxuPiBlxZ9sZcWfZW4gYmHFn3Z1cnV5dSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM5IGJ1aWx0aW4vdGFnLmM6NDM5Cittc2dpZCAicmVzcGVjdCBmb3JtYXQgY29sb3JzIgorbXNnc3RyICJiacOnaW0gcmVua2xlcmluZSB1eSIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MgorbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBwb2ludHMgYXQgdGhlIGdpdmVuIG9iamVjdCIKK21zZ3N0ciAieWFsbsSxemNhIHZlcmlsZW4gbmVzbmV5ZSBpxZ9hcmV0IGVkZW4gYmHFn3Z1cnVsYXLEsSB5YXpkxLFyIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ0Cittc2dpZCAicHJpbnQgb25seSByZWZzIHRoYXQgYXJlIG1lcmdlZCIKK21zZ3N0ciAieWFsbsSxemNhIGJpcmxlxZ90aXJpbGVuIGJhxZ92dXJ1bGFyxLEgeWF6ZMSxciIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NQorbXNnaWQgInByaW50IG9ubHkgcmVmcyB0aGF0IGFyZSBub3QgbWVyZ2VkIgorbXNnc3RyICJ5YWxuxLF6Y2EgYmlybGXFn3RpcmlsbWVtacWfIGJhxZ92dXJ1bGFyxLEgeWF6ZMSxciIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NgorbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBjb250YWluIHRoZSBjb21taXQiCittc2dzdHIgInlhbG7EsXpjYSBnw7ZuZGVyaXlpIGnDp2VyZW4gYmHFn3Z1cnVsYXLEsSB5YXpkxLFyIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ3Cittc2dpZCAicHJpbnQgb25seSByZWZzIHdoaWNoIGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKK21zZ3N0ciAieWFsbsSxemNhIGfDtm5kZXJpeWkgacOnZXJtZXllbiBiYcWfdnVydWxhcsSxIHlhemTEsXIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY4IGJ1aWx0aW4vZnNjay5jOjE0NyBidWlsdGluL2ZzY2suYzoxNDgKK21zZ2lkICJ1bmtub3duIgorbXNnc3RyICJiaWxpbm1leWVuIgorCisjLiBUUkFOU0xBVE9SUzogZS5nLiBlcnJvciBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMDAgYnVpbHRpbi9mc2NrLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluICVzICVzOiAlcyIKK21zZ3N0ciAiJXMgJXMgacOnaW5kZSBoYXRhOiAlcyIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gd2FybmluZyBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FybmluZyBpbiAlcyAlczogJXMiCittc2dzdHIgIiVzICVzIGnDp2luZGUgdXlhcsSxOiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MTQzIGJ1aWx0aW4vZnNjay5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJicm9rZW4gbGluayBmcm9tICU3cyAlcyIKK21zZ3N0ciAixZ91cmFkYW4ga8SxcsSxayBiYcSfOiAlN3MgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE1NQorbXNnaWQgIndyb25nIG9iamVjdCB0eXBlIGluIGxpbmsiCittc2dzdHIgImJhxJ9kYSB5YW5sxLHFnyBuZXNuZSB0w7xyw7wiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE3MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYnJva2VuIGxpbmsgZnJvbSAlN3MgJXNcbiIKKyIgICAgICAgICAgICAgIHRvICU3cyAlcyIKK21zZ3N0ciAiIgorIsWfdXJhZGFuIGvEsXLEsWsgYmHEnzogJTdzICVzXG4iCisiICAgICAgICAgICDFn3VyYXlhOiAlN3MgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjI4MgorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzICVzIgorbXNnc3RyICJla3NpayAlcyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVhY2hhYmxlICVzICVzIgorbXNnc3RyICJ1bGHFn8SxbGFtYXlhbiAlcyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MzI5CisjLCBjLWZvcm1hdAorbXNnaWQgImRhbmdsaW5nICVzICVzIgorbXNnc3RyICJzYXJrYW4gJXMgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjMzOQorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgbG9zdC1mb3VuZCIKK21zZ3N0ciAibG9zdC1mb3VuZCBvbHXFn3R1cnVsYW1hZMSxIgorCisjOiBidWlsdGluL2ZzY2suYzozNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCAnJXMnIgorbXNnc3RyICInJXMnIGJpdGlyaWxlbWVkaSIKKworIzogYnVpbHRpbi9mc2NrLmM6MzY3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzIgorbXNnc3RyICIlcyBkZW5ldGxlbml5b3IiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQwNQorIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkgKCVkIG9iamVjdHMpIgorbXNnc3RyICJCYcSfbGFuYWJpbGlybGlrIGRlbmV0bGVuaXlvciAoJWQgbmVzbmUpIgorCisjOiBidWlsdGluL2ZzY2suYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgJXMiCittc2dzdHIgIiVzICVzIGRlbmV0bGVuaXlvciIKKworIzogYnVpbHRpbi9mc2NrLmM6NDI5Cittc2dpZCAiYnJva2VuIGxpbmtzIgorbXNnc3RyICJrxLFyxLFrIGJhxJ9sYXIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJyb290ICVzIgorbXNnc3RyICJrw7ZrICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFnZ2VkICVzICVzICglcykgaW4gJXMiCittc2dzdHIgIiVzICVzICglcykgxZ91cmFkYSBldGlrZXRsZW5kaTogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvcnJ1cHQgb3IgbWlzc2luZyIKK21zZ3N0ciAiJXM6IG5lc25lIGhhc2FyIGfDtnJtw7zFnyB2ZXlhIGthecSxcCIKKworIzogYnVpbHRpbi9mc2NrLmM6NTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHJlZmxvZyBlbnRyeSAlcyIKK21zZ3N0ciAiJXM6IGdlw6dlcnNpeiBiYcWfdnVydSBnw7xubMO8xJ/DvCBnaXJkaXNpICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo1MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgcmVmbG9nICVzLT4lcyIKK21zZ3N0ciAiQmHFn3Z1cnUgZ8O8bmzDvMSfw7wgZGVuZXRsZW5peW9yOiAlcy0+JXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjU0OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCBzaGExIHBvaW50ZXIgJXMiCittc2dzdHIgIiVzOiBnZcOnZXJzaXogc2hhMSBpxZ9hcmV0w6dpc2kgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjU1NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogbm90IGEgY29tbWl0IgorbXNnc3RyICIlczogYmlyIGfDtm5kZXJpIGRlxJ9pbCIKKworIzogYnVpbHRpbi9mc2NrLmM6NjA5Cittc2dpZCAibm90aWNlOiBObyBkZWZhdWx0IHJlZmVyZW5jZXMiCittc2dzdHIgIlV5YXLEsTogw5ZudGFuxLFtbMSxIGJhxZ92dXJ1bGFyIHlvayIKKworIzogYnVpbHRpbi9mc2NrLmM6NjI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgY29ycnVwdCBvciBtaXNzaW5nOiAlcyIKK21zZ3N0ciAiJXM6IG5lc25lIGhhc2FyIGfDtnJtw7zFnyB2ZXlhIGthecSxcDogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvdWxkIG5vdCBiZSBwYXJzZWQ6ICVzIgorbXNnc3RyICIlczogbmVzbmUgYXlyxLHFn3TEsXLEsWxhbWFkxLE6ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo2NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHNoYTEgZmlsZTogJXMiCittc2dzdHIgImhhdGFsxLEgc2hhMSBkb3N5YXPEsTogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY3MgorbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcnkiCittc2dzdHIgIk5lc25lIGRpemluaSBkZW5ldGxlbml5b3IiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY3NQorbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcmllcyIKK21zZ3N0ciAiTmVzbmUgZGl6aW5sZXJpIGRlbmV0bGVuaXlvciIKKworIzogYnVpbHRpbi9mc2NrLmM6NjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzIGxpbmsiCittc2dzdHIgIiVzIGJhxJ8gZGVuZXRsZW5peW9yIgorCisjOiBidWlsdGluL2ZzY2suYzo2OTUgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODQzCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgJXMiCittc2dzdHIgImdlw6dlcnNpeiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NzAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBvaW50cyB0byBzb21ldGhpbmcgc3RyYW5nZSAoJXMpIgorbXNnc3RyICIlcyBnYXJpcCBiaXIgxZ9leWUgacWfYXJldCBlZGl5b3IgKCVzKSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZXRhY2hlZCBIRUFEIHBvaW50cyBhdCBub3RoaW5nIgorbXNnc3RyICIlczogYXlyxLFrIEhFQUQgYmlyIMWfZXllIGnFn2FyZXQgZXRtaXlvciIKKworIzogYnVpbHRpbi9mc2NrLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGljZTogJXMgcG9pbnRzIHRvIGFuIHVuYm9ybiBicmFuY2ggKCVzKSIKK21zZ3N0ciAiVXlhcsSxOiAlcyBoZW7DvHogZG/En21hbcSxxZ8gYmlyIGRhbGEgacWfYXJldCBlZGl5b3IgKCVzKSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzI0Cittc2dpZCAiQ2hlY2tpbmcgY2FjaGUgdHJlZSIKK21zZ3N0ciAiw5ZuYmVsbGVrIGHEn2FjxLEgZGVuZXRsZW5peW9yIgorCisjOiBidWlsdGluL2ZzY2suYzo3MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyIGluIGNhY2hlLXRyZWUiCittc2dzdHIgIiVzOiBjYWNoZS10cmVlIGnDp2luZGUgZ2XDp2Vyc2l6IHNoYTEgacWfYXJldMOnaXNpIgorCisjOiBidWlsdGluL2ZzY2suYzo3MzgKK21zZ2lkICJub24tdHJlZSBpbiBjYWNoZS10cmVlIgorbXNnc3RyICJjYWNoZS10cmVlIGnDp2luZGUgYcSfYcOnIG9sbWF5YW4gw7ZnZSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzY5Cittc2dpZCAiZ2l0IGZzY2sgWzxvcHRpb25zPl0gWzxvYmplY3Q+Li4uXSIKK21zZ3N0ciAiZ2l0IGZzY2sgWzxzZcOnZW5la2xlcj5dIFs8bmVzbmU+Li4uXSIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzc1Cittc2dpZCAic2hvdyB1bnJlYWNoYWJsZSBvYmplY3RzIgorbXNnc3RyICJ1bGHFn8SxbGFtYXlhbiBuZXNuZWxlcmkgZ8O2c3RlciIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzc2Cittc2dpZCAic2hvdyBkYW5nbGluZyBvYmplY3RzIgorbXNnc3RyICJzYXJrYW4gbmVzbmVsZXJpIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc3NworbXNnaWQgInJlcG9ydCB0YWdzIgorbXNnc3RyICJldGlrZXRsZXJpIGJpbGRpciIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzc4Cittc2dpZCAicmVwb3J0IHJvb3Qgbm9kZXMiCittc2dzdHIgImvDtmsgZMO8xJ/DvG1sZXJpIGJpbGRpciIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzc5Cittc2dpZCAibWFrZSBpbmRleCBvYmplY3RzIGhlYWQgbm9kZXMiCittc2dzdHIgImluZGVrcyBuZXNuZWxlcmluaSBkYWwgdWN1IGTDvMSfw7xtw7wgeWFwIgorCisjOiBidWlsdGluL2ZzY2suYzo3ODAKK21zZ2lkICJtYWtlIHJlZmxvZ3MgaGVhZCBub2RlcyAoZGVmYXVsdCkiCittc2dzdHIgImJhxZ92dXJ1IGfDvG5sw7xrbGVyaW5pIGRhbCB1Y3UgZMO8xJ/DvG3DvCB5YXAgKMO2bnRhbsSxbWzEsSkiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MQorbXNnaWQgImFsc28gY29uc2lkZXIgcGFja3MgYW5kIGFsdGVybmF0ZSBvYmplY3RzIgorbXNnc3RyICJlayBvbGFyYWsgcGFrZXRsZXJpIHZlIGFsdGVybmF0aWYgbmVzbmVsZXJpIGRlIGRpa2thdGUgYWwiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MgorbXNnaWQgImNoZWNrIG9ubHkgY29ubmVjdGl2aXR5IgorbXNnc3RyICJ5YWxuxLF6Y2EgYmHEn2xhbmFiaWxpcmxpxJ9pIGRlbmV0bGUiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MworbXNnaWQgImVuYWJsZSBtb3JlIHN0cmljdCBjaGVja2luZyIKK21zZ3N0ciAiZGFoYSBrZXNpbiBkZW5ldGxlbWV5aSBldGtpbmxlxZ90aXIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NQorbXNnaWQgIndyaXRlIGRhbmdsaW5nIG9iamVjdHMgaW4gLmdpdC9sb3N0LWZvdW5kIgorbXNnc3RyICJzYXJrYW4gbmVzbmVsZXJpIC5naXQvbG9zdC1mb3VuZCdhIHlheiIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzg2IGJ1aWx0aW4vcHJ1bmUuYzoxMzIKK21zZ2lkICJzaG93IHByb2dyZXNzIgorbXNnc3RyICJpbGVybGVtZXlpIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NworbXNnaWQgInNob3cgdmVyYm9zZSBuYW1lcyBmb3IgcmVhY2hhYmxlIG9iamVjdHMiCittc2dzdHIgInVsYcWfxLFsYWJpbGlyIG5lc25lbGVyIGnDp2luIGF5csSxbnTEsWzEsSBhZGxhcsSxIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjg0NiBidWlsdGluL2luZGV4LXBhY2suYzoyMjUKK21zZ2lkICJDaGVja2luZyBvYmplY3RzIgorbXNnc3RyICJOZXNuZWxlciBkZW5ldGxlbml5b3IiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjg3NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IG1pc3NpbmciCittc2dzdHIgIiVzOiBuZXNuZSBrYXnEsXAiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjg4NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhcmFtZXRlcjogZXhwZWN0ZWQgc2hhMSwgZ290ICclcyciCittc2dzdHIgImdlw6dlcnNpeiBwYXJhbWV0cmU6IHNoYTEgYmVrbGVuaXlvcmR1LCAnJXMnIGFsxLFuZMSxIgorCisjOiBidWlsdGluL2djLmM6MzUKK21zZ2lkICJnaXQgZ2MgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCBnYyBbPHNlw6dlbmVrbGVyPl0iCisKKyM6IGJ1aWx0aW4vZ2MuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gZnN0YXQgJXM6ICVzIgorbXNnc3RyICIlcyBmc3RhdCB5YXDEsWxhbWFkxLE6ICVzIgorCisjOiBidWlsdGluL2djLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSAnJXMnIHZhbHVlICclcyciCittc2dzdHIgIiclcycgZGXEn2VyaSAnJXMnIGF5csSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBidWlsdGluL2djLmM6NDc1IGJ1aWx0aW4vaW5pdC1kYi5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0ICclcyciCittc2dzdHIgIiclcycgYmlsZ2lsZXJpIGFsxLFuYW3EsXlvciIKKworIzogYnVpbHRpbi9nYy5jOjQ4NCBidWlsdGluL25vdGVzLmM6MjQwIGJ1aWx0aW4vdGFnLmM6NTI5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICclcyciCittc2dzdHIgIiclcycgb2t1bmFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vZ2MuYzo0OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBsYXN0IGdjIHJ1biByZXBvcnRlZCB0aGUgZm9sbG93aW5nLiBQbGVhc2UgY29ycmVjdCB0aGUgcm9vdCBjYXVzZVxuIgorImFuZCByZW1vdmUgJXMuXG4iCisiQXV0b21hdGljIGNsZWFudXAgd2lsbCBub3QgYmUgcGVyZm9ybWVkIHVudGlsIHRoZSBmaWxlIGlzIHJlbW92ZWQuXG4iCisiXG4iCisiJXMiCittc2dzdHIgIiIKKyJFbiBzb24geWFwxLFsYW4gJ2djJyBpxZ9sZW1pIGHFn2HEn8SxZGFraWxlcmkgYmlsZGlyZGkuIEzDvHRmZW4gc29ydW51biBhbmFcbiIKKyJuZWRlbmluaSBkw7x6ZWx0aW4gdmUgJXMgw7ZnZXNpbmkga2FsZMSxcsSxbi5cbiIKKyJLZW5kaWxpxJ9pbmRlbiB0ZW1pemxpayBkb3N5YSBrYWxkxLFyxLFsYW5hIGRlxJ9pbiBnZXLDp2VrbGXFn3RpcmlsbWV5ZWNla3Rpci5cbiIKKyJcbiIKKyIlcyIKKworIzogYnVpbHRpbi9nYy5jOjUzOQorbXNnaWQgInBydW5lIHVucmVmZXJlbmNlZCBvYmplY3RzIgorbXNnc3RyICJiYcWfdnVydWxtYXlhbiBuZXNuZWxlcmkgYnVkYSIKKworIzogYnVpbHRpbi9nYy5jOjU0MQorbXNnaWQgImJlIG1vcmUgdGhvcm91Z2ggKGluY3JlYXNlZCBydW50aW1lKSIKK21zZ3N0ciAiYmlyYXogZGFoYSB0aXRpeiBvbCAoYXJ0xLFyxLFsbcSxxZ8gacWfbGV5acWfIHPDvHJlc2kpIgorCisjOiBidWlsdGluL2djLmM6NTQyCittc2dpZCAiZW5hYmxlIGF1dG8tZ2MgbW9kZSIKK21zZ3N0ciAiYXV0by1nYyBraXBpbmkgZXRraW5sZcWfdGlyIgorCisjOiBidWlsdGluL2djLmM6NTQ1Cittc2dpZCAiZm9yY2UgcnVubmluZyBnYyBldmVuIGlmIHRoZXJlIG1heSBiZSBhbm90aGVyIGdjIHJ1bm5pbmciCittc2dzdHIgImJhxZ9rYSBiaXIgZ2Mgw6dhbMSxxZ/EsXlvciBvbHNhIGJpbGUgem9ybGEgZ2Mgw6dhbMSxxZ90xLFyIgorCisjOiBidWlsdGluL2djLmM6NTQ4Cittc2dpZCAicmVwYWNrIGFsbCBvdGhlciBwYWNrcyBleGNlcHQgdGhlIGxhcmdlc3QgcGFjayIKK21zZ3N0ciAiZW4gYsO8ecO8ayBwYWtldCBkxLHFn8SxbmRha2kgZGnEn2VyIHTDvG0gcGFrZXRsZXJpIHllbmlkZW4gcGFrZXRsZSIKKworIzogYnVpbHRpbi9nYy5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgZ2MubG9nZXhwaXJ5IHZhbHVlICVzIgorbXNnc3RyICJnYy5sb2dleHBpcnkgZGXEn2VyaSAlcyBheXLEscWfdMSxcsSxbGFtYWTEsSIKKworIzogYnVpbHRpbi9nYy5jOjU3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgcHJ1bmUgZXhwaXJ5IHZhbHVlICVzIgorbXNnc3RyICIncHJ1bmUgZXhwaXJ5JyBkZcSfZXJpICVzIGF5csSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBidWlsdGluL2djLmM6NTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dG8gcGFja2luZyB0aGUgcmVwb3NpdG9yeSBpbiBiYWNrZ3JvdW5kIGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgorbXNnc3RyICJFbiBpeWkgYmHFn2FyxLFtIGnDp2luIGRlcG8gYXJrYSBwbGFuZGEga2VuZGlsacSfaW5kZW4gcGFrZXRsZW5peW9yLlxuIgorCisjOiBidWlsdGluL2djLmM6NTk4CisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dG8gcGFja2luZyB0aGUgcmVwb3NpdG9yeSBmb3Igb3B0aW11bSBwZXJmb3JtYW5jZS5cbiIKK21zZ3N0ciAiRW4gaXlpIGJhxZ9hcsSxbSBpw6dpbiBkZXBvIGtlbmRpbGnEn2luZGVuIHBha2V0bGVuaXlvci5cbiIKKworIzogYnVpbHRpbi9nYy5jOjU5OQorIywgYy1mb3JtYXQKK21zZ2lkICJTZWUgXCJnaXQgaGVscCBnY1wiIGZvciBtYW51YWwgaG91c2VrZWVwaW5nLlxuIgorbXNnc3RyICJFbCBpbGUgb3J0YWzEsWsgdGVtaXpsacSfaSBpw6dpbiBcImdpdCBoZWxwIGdjXCJ5ZSBiYWvEsW4uXG4iCisKKyM6IGJ1aWx0aW4vZ2MuYzo2MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImdjIGlzIGFscmVhZHkgcnVubmluZyBvbiBtYWNoaW5lICclcycgcGlkICU8UFJJdU1BWD4gKHVzZSAtLWZvcmNlIGlmIG5vdCkiCittc2dzdHIgIiIKKyJnYyAlcyBtYWtpbmVzaW5kZSBoYWxpaGF6xLFyZGEgw6dhbMSxxZ/EsXlvciAocGlkICU8UFJJdU1BWD4gLSDDp2FsxLHFn23EsXlvcnNhIC0tIgorImZvcmNlIGt1bGxhbsSxbikiCisKKyM6IGJ1aWx0aW4vZ2MuYzo2OTQKK21zZ2lkICIiCisiVGhlcmUgYXJlIHRvbyBtYW55IHVucmVhY2hhYmxlIGxvb3NlIG9iamVjdHM7IHJ1biAnZ2l0IHBydW5lJyB0byByZW1vdmUgdGhlbS4iCittc2dzdHIgIiIKKyLDh29rIGZhemxhIHVsYcWfxLFsYWJpbGlyIGJvxZ90YSBuZXNuZSB2YXI7IGthbGTEsXJtYWsgacOnaW4gJ2dpdCBwcnVuZScga3VsbGFuxLFuLiIKKworIzogYnVpbHRpbi9ncmVwLmM6MzAKK21zZ2lkICJnaXQgZ3JlcCBbPG9wdGlvbnM+XSBbLWVdIDxwYXR0ZXJuPiBbPHJldj4uLi5dIFtbLS1dIDxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBncmVwIFs8c2XDp2VuZWtsZXI+XSBbLWVdIDxkaXpnaT4gWzxyZXY+Li4uXSBbWy0tXSA8eW9sPi4uLl0iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjIyNQorIywgYy1mb3JtYXQKK21zZ2lkICJncmVwOiBmYWlsZWQgdG8gY3JlYXRlIHRocmVhZDogJXMiCittc2dzdHIgImdyZXA6IGnFnyBwYXLDp2FjxLHEn8SxIG9sdcWfdHVydWxhbWFkxLE6ICVzIgorCisjOiBidWlsdGluL2dyZXAuYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBudW1iZXIgb2YgdGhyZWFkcyBzcGVjaWZpZWQgKCVkKSBmb3IgJXMiCittc2dzdHIgImdlw6dlcnNpeiBiZWxpcnRpbGVuIGnFnyBwYXLDp2FjxLHEn8SxIHNhecSxc8SxICglZCksICVzIGnDp2luIgorCisjLiBUUkFOU0xBVE9SUzogJXMgaXMgdGhlIGNvbmZpZ3VyYXRpb24KKyMuIHZhcmlhYmxlIGZvciB0d2Vha2luZyB0aHJlYWRzLCBjdXJyZW50bHkKKyMuIGdyZXAudGhyZWFkcworIy4KKyM6IGJ1aWx0aW4vZ3JlcC5jOjI4NyBidWlsdGluL2luZGV4LXBhY2suYzoxNTM4IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MzEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg1NAorIywgYy1mb3JtYXQKK21zZ2lkICJubyB0aHJlYWRzIHN1cHBvcnQsIGlnbm9yaW5nICVzIgorbXNnc3RyICJpxZ8gcGFyw6dhY8SxxJ/EsSBkZXN0ZcSfaSB5b2ssICVzIHlvayBzYXnEsWzEsXlvciIKKworIzogYnVpbHRpbi9ncmVwLmM6NDUzIGJ1aWx0aW4vZ3JlcC5jOjU3OCBidWlsdGluL2dyZXAuYzo2MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgdHJlZSAoJXMpIgorbXNnc3RyICJhxJ9hw6cgb2t1bmFtxLF5b3IgKCVzKSIKKworIzogYnVpbHRpbi9ncmVwLmM6NjMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBncmVwIGZyb20gb2JqZWN0IG9mIHR5cGUgJXMiCittc2dzdHIgIiVzIHTDvHLDvG5kZWtpIGJpciBuZXNuZWRlbiBncmVwIHlhcMSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjcwNAorIywgYy1mb3JtYXQKK21zZ2lkICJzd2l0Y2ggYCVjJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICInJWMnIGFuYWh0YXLEsSBzYXnEsXNhbCBiaXIgZGXEn2VyIGJla2xpeW9yIgorCisjOiBidWlsdGluL2dyZXAuYzo4MDMKK21zZ2lkICJzZWFyY2ggaW4gaW5kZXggaW5zdGVhZCBvZiBpbiB0aGUgd29yayB0cmVlIgorbXNnc3RyICLDp2FsxLHFn21hIGHEn2FjxLEgeWVyaW5lIGluZGVrc3RlIGFyYSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODA1Cittc2dpZCAiZmluZCBpbiBjb250ZW50cyBub3QgbWFuYWdlZCBieSBnaXQiCittc2dzdHIgImdpdCB0YXJhZsSxbmRhbiB5w7ZuZXRpbG1leWVuIGnDp2VyaWt0ZSBidWwiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwNworbXNnaWQgInNlYXJjaCBpbiBib3RoIHRyYWNrZWQgYW5kIHVudHJhY2tlZCBmaWxlcyIKK21zZ3N0ciAiaGVtIGl6bGVuZW4gaGVtIGl6bGVubWV5ZW4gZG9zeWFsYXIgacOnaW5kZSBhcmEiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwOQorbXNnaWQgImlnbm9yZSBmaWxlcyBzcGVjaWZpZWQgdmlhICcuZ2l0aWdub3JlJyIKK21zZ3N0ciAiJy5naXRpZ25vcmUnZGEgYmVsaXJ0aWxlbiBkb3N5YWxhcsSxIHlvayBzYXkiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxMQorbXNnaWQgInJlY3Vyc2l2ZWx5IHNlYXJjaCBpbiBlYWNoIHN1Ym1vZHVsZSIKK21zZ3N0ciAiaGVyIGFsdG1vZMO8bGRlIMO2enlpbmVsaSBvbGFyYWsgYXJhIgorCisjOiBidWlsdGluL2dyZXAuYzo4MTQKK21zZ2lkICJzaG93IG5vbi1tYXRjaGluZyBsaW5lcyIKK21zZ3N0ciAiZcWfbGXFn21leWVuIHNhdMSxcmxhcsSxIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxNgorbXNnaWQgImNhc2UgaW5zZW5zaXRpdmUgbWF0Y2hpbmciCittc2dzdHIgIkLDnFnDnEsva8O8w6fDvGsgaGFyZiBkdXlhcnPEsXogZcWfbGXFn21lIgorCisjOiBidWlsdGluL2dyZXAuYzo4MTgKK21zZ2lkICJtYXRjaCBwYXR0ZXJucyBvbmx5IGF0IHdvcmQgYm91bmRhcmllcyIKK21zZ3N0ciAieWFsbsSxemNhIHPDtnpjw7xrIHPEsW7EsXJsYXLEsW5kYWtpIGRpemdpbGVyaSBlxZ9sZcWfdGlyIgorCisjOiBidWlsdGluL2dyZXAuYzo4MjAKK21zZ2lkICJwcm9jZXNzIGJpbmFyeSBmaWxlcyBhcyB0ZXh0IgorbXNnc3RyICJpa2lsaSBkb3N5YWxhcsSxIG1ldGluIG9sYXJhayBpxZ9sZSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODIyCittc2dpZCAiZG9uJ3QgbWF0Y2ggcGF0dGVybnMgaW4gYmluYXJ5IGZpbGVzIgorbXNnc3RyICJpa2lsaSBkb3N5YWxhcmRha2kgZGl6Z2lsZXJpIGXFn2xlxZ90aXJtZSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODI1Cittc2dpZCAicHJvY2VzcyBiaW5hcnkgZmlsZXMgd2l0aCB0ZXh0Y29udiBmaWx0ZXJzIgorbXNnc3RyICJpa2lsaSBkb3N5YWxhcsSxIHRleHRjb252IHPDvHpnZcOnbGVyaSBpbGUgacWfbGUiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyNworbXNnaWQgInNlYXJjaCBpbiBzdWJkaXJlY3RvcmllcyAoZGVmYXVsdCkiCittc2dzdHIgImFsdGRpemlubGVyZGUgYXJhICjDtm50YW7EsW1sxLEpIgorCisjOiBidWlsdGluL2dyZXAuYzo4MjkKK21zZ2lkICJkZXNjZW5kIGF0IG1vc3QgPGRlcHRoPiBsZXZlbHMiCittc2dzdHIgImVuIMOnb2sgPGRlcmlubGlrPiBkw7x6ZXlpbmUgaW4iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgzMworbXNnaWQgInVzZSBleHRlbmRlZCBQT1NJWCByZWd1bGFyIGV4cHJlc3Npb25zIgorbXNnc3RyICJnZW5pxZ9sZXRpbG1pxZ8gUE9TSVggZMO8emVubGkgaWZhZGVsZXJpbmkga3VsbGFuIgorCisjOiBidWlsdGluL2dyZXAuYzo4MzYKK21zZ2lkICJ1c2UgYmFzaWMgUE9TSVggcmVndWxhciBleHByZXNzaW9ucyAoZGVmYXVsdCkiCittc2dzdHIgInRlbWVsIFBPU0lYIGTDvHplbmxpIGlmYWRlbGVyaW5pIGt1bGxhbiAow7ZudGFuxLFtbMSxKSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODM5Cittc2dpZCAiaW50ZXJwcmV0IHBhdHRlcm5zIGFzIGZpeGVkIHN0cmluZ3MiCittc2dzdHIgImRpemdpbGVyaSBzYWJpdCBkaXppbGVyIG9sYXJhayB5b3J1bWxhIgorCisjOiBidWlsdGluL2dyZXAuYzo4NDIKK21zZ2lkICJ1c2UgUGVybC1jb21wYXRpYmxlIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCittc2dzdHIgIlBlcmwgdXl1bWx1IGTDvHplbmxpIGlmYWRlbGVyIGt1bGxhbiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODQ1Cittc2dpZCAic2hvdyBsaW5lIG51bWJlcnMiCittc2dzdHIgInNhdMSxciBudW1hcmFsYXLEsW7EsSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2dyZXAuYzo4NDYKK21zZ2lkICJzaG93IGNvbHVtbiBudW1iZXIgb2YgZmlyc3QgbWF0Y2giCittc2dzdHIgImlsayBlxZ9sZcWfbWVuaW4gc8O8dHVuIG51bWFyYXPEsW7EsSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2dyZXAuYzo4NDcKK21zZ2lkICJkb24ndCBzaG93IGZpbGVuYW1lcyIKK21zZ3N0ciAiZG9zeWEgYWRsYXLEsW7EsSBnw7ZzdGVybWUiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0OAorbXNnaWQgInNob3cgZmlsZW5hbWVzIgorbXNnc3RyICJkb3N5YSBhZGxhcsSxbsSxIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1MAorbXNnaWQgInNob3cgZmlsZW5hbWVzIHJlbGF0aXZlIHRvIHRvcCBkaXJlY3RvcnkiCittc2dzdHIgImRvc3lhIGFkbGFyxLFuxLEgZW4gw7xzdCBkaXppbmUgZ8O2cmVjZWxpIG9sYXJhayBnw7ZzdGVyIgorCisjOiBidWlsdGluL2dyZXAuYzo4NTIKK21zZ2lkICJzaG93IG9ubHkgZmlsZW5hbWVzIGluc3RlYWQgb2YgbWF0Y2hpbmcgbGluZXMiCittc2dzdHIgImXFn2xlxZ9lbiBzYXTEsXJsYXIgeWVyaW5lIHlhbG7EsXpjYSBkb3N5YSBhZGxhcsSxbsSxIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1NAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZmlsZXMtd2l0aC1tYXRjaGVzIgorbXNnc3RyICItLWZpbGVzLXdpdGgtbWF0Y2hlcyBlxZ9hbmxhbWzEsXPEsSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODU3Cittc2dpZCAic2hvdyBvbmx5IHRoZSBuYW1lcyBvZiBmaWxlcyB3aXRob3V0IG1hdGNoIgorbXNnc3RyICJlxZ9sZcWfbWUgb2xtYWRhbiB5YWxuxLF6Y2EgZG9zeWEgYWRsYXLEsW7EsSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2dyZXAuYzo4NTkKK21zZ2lkICJwcmludCBOVUwgYWZ0ZXIgZmlsZW5hbWVzIgorbXNnc3RyICJkb3N5YSBhZGxhcsSxbmRhbiBzb25yYSBOVUwgeWF6ZMSxciIKKworIzogYnVpbHRpbi9ncmVwLmM6ODYyCittc2dpZCAic2hvdyBvbmx5IG1hdGNoaW5nIHBhcnRzIG9mIGEgbGluZSIKK21zZ3N0ciAieWFsbsSxemNhIGJpciBzYXTEsXLEsW4gZcWfbGXFn2VuIGvEsXPEsW1sYXLEsW7EsSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2dyZXAuYzo4NjQKK21zZ2lkICJzaG93IHRoZSBudW1iZXIgb2YgbWF0Y2hlcyBpbnN0ZWFkIG9mIG1hdGNoaW5nIGxpbmVzIgorbXNnc3RyICJlxZ9sZcWfZW4gc2F0xLFybGFyIHllcmluZSBlxZ9sZcWfbWUgc2F5xLFzxLFuxLEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9ncmVwLmM6ODY1Cittc2dpZCAiaGlnaGxpZ2h0IG1hdGNoZXMiCittc2dzdHIgImXFn2xlxZ9tZWxlcmkgdnVyZ3VsYSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODY3Cittc2dpZCAicHJpbnQgZW1wdHkgbGluZSBiZXR3ZWVuIG1hdGNoZXMgZnJvbSBkaWZmZXJlbnQgZmlsZXMiCittc2dzdHIgImJhxZ9rYSBkb3N5YWxhcmRhbiBvbGFuIGXFn2xlxZ9tZWxlcmluIGFyYXPEsW5hIGJvxZ8gc2F0xLFyIHlhemTEsXIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2OQorbXNnaWQgInNob3cgZmlsZW5hbWUgb25seSBvbmNlIGFib3ZlIG1hdGNoZXMgZnJvbSBzYW1lIGZpbGUiCittc2dzdHIgIiIKKyJheW7EsSBkb3N5YWRhbiBvbGFuIGXFn2xlxZ9tZWxlcmluIMO8emVyaW5kZSBkb3N5YSBhZMSxbsSxIHlhbG7EsXpjYSBiaXIga2V6IGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3MgorbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYmVmb3JlIGFuZCBhZnRlciBtYXRjaGVzIgorbXNnc3RyICJlxZ9sZcWfbWVsZXJkZW4gw7ZuY2UgdmUgc29ucmEgPG4+IHNhdMSxciBiYcSfbGFtIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3NQorbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYmVmb3JlIG1hdGNoZXMiCittc2dzdHIgImXFn2xlxZ9tZWxlcmRlbiDDtm5jZSA8bj4gc2F0xLFyIGJhxJ9sYW0gZ8O2c3RlciIKKworIzogYnVpbHRpbi9ncmVwLmM6ODc3Cittc2dpZCAic2hvdyA8bj4gY29udGV4dCBsaW5lcyBhZnRlciBtYXRjaGVzIgorbXNnc3RyICJlxZ9sZcWfbWVsZXJkZW4gc29ucmEgPG4+IHNhdMSxciBiYcSfbGFtIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3OQorbXNnaWQgInVzZSA8bj4gd29ya2VyIHRocmVhZHMiCittc2dzdHIgIjxuPiBpxZ8gcGFyw6dhY8SxxJ/EsSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4MAorbXNnaWQgInNob3J0Y3V0IGZvciAtQyBOVU0iCittc2dzdHIgIi1DIE5VTSBpw6dpbiBrxLFzYXlvbCIKKworIzogYnVpbHRpbi9ncmVwLmM6ODgzCittc2dpZCAic2hvdyBhIGxpbmUgd2l0aCB0aGUgZnVuY3Rpb24gbmFtZSBiZWZvcmUgbWF0Y2hlcyIKK21zZ3N0ciAiZcWfbGXFn21lbGVyZGVuIMO2bmNlIGnFn2xldiBhZMSxbsSxbiBvbGR1xJ91IGJpciBzYXTEsXIgZ8O2c3RlciIKKworIzogYnVpbHRpbi9ncmVwLmM6ODg1Cittc2dpZCAic2hvdyB0aGUgc3Vycm91bmRpbmcgZnVuY3Rpb24iCittc2dzdHIgIsOnZXZyZXNpbmRla2kgacWfbGV2aSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2dyZXAuYzo4ODgKK21zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gZmlsZSIKK21zZ3N0ciAiZGl6Z2lsZXJpIGRvc3lhZGFuIG9rdSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODkwCittc2dpZCAibWF0Y2ggPHBhdHRlcm4+IgorbXNnc3RyICI8ZGl6Z2k+IGlsZSBlxZ9sZcWfIgorCisjOiBidWlsdGluL2dyZXAuYzo4OTIKK21zZ2lkICJjb21iaW5lIHBhdHRlcm5zIHNwZWNpZmllZCB3aXRoIC1lIgorbXNnc3RyICItZSBpbGUgYmVsaXJ0aWxlbiBkaXpnaWxlcmkgYmlybGXFn3RpciIKKworIzogYnVpbHRpbi9ncmVwLmM6OTA0Cittc2dpZCAiaW5kaWNhdGUgaGl0IHdpdGggZXhpdCBzdGF0dXMgd2l0aG91dCBvdXRwdXQiCittc2dzdHIgIsOnxLFrxLHFnyBkdXJ1bXUgaWxlIG9sYW4gZcWfbGXFn21lbGVyZGUgw6fEsWt0xLEgdmVybWUiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwNgorbXNnaWQgInNob3cgb25seSBtYXRjaGVzIGZyb20gZmlsZXMgdGhhdCBtYXRjaCBhbGwgcGF0dGVybnMiCittc2dzdHIgInlhbG7EsXpjYSB0w7xtIGRpemdpbGVybGUgZcWfbGXFn2VuIGRvc3lhbGFyZGFuIGXFn2xlxZ9tZWxlcmkgZ8O2c3RlciIKKworIzogYnVpbHRpbi9ncmVwLmM6OTA4Cittc2dpZCAic2hvdyBwYXJzZSB0cmVlIGZvciBncmVwIGV4cHJlc3Npb24iCittc2dzdHIgImdyZXAgaWZhZGVzaSBpw6dpbiBheXLEscWfdMSxcm1hIGHEn2FjxLFuxLEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9ncmVwLmM6OTEyCittc2dpZCAicGFnZXIiCittc2dzdHIgInNheWZhbGF5xLFjxLEiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxMgorbXNnaWQgInNob3cgbWF0Y2hpbmcgZmlsZXMgaW4gdGhlIHBhZ2VyIgorbXNnc3RyICJzYXlmYWxhecSxY8SxZGEgZcWfbGXFn2VuIGRvc3lhbGFyxLEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9ncmVwLmM6OTE2Cittc2dpZCAiYWxsb3cgY2FsbGluZyBvZiBncmVwKDEpIChpZ25vcmVkIGJ5IHRoaXMgYnVpbGQpIgorbXNnc3RyICJncmVwKDEpJ2luIMOnYcSfcsSxbG1hc8SxbmEgaXppbiB2ZXIgKGJ1IHlhcMSxbSB0YXJhZsSxbmRhbiB5b2sgc2F5xLFsZMSxKSIKKworIzogYnVpbHRpbi9ncmVwLmM6OTgzCittc2dpZCAibm8gcGF0dGVybiBnaXZlbiIKK21zZ3N0ciAiYmlyIGRpemdpIHZlcmlsbWVkaSIKKworIzogYnVpbHRpbi9ncmVwLmM6MTAxOQorbXNnaWQgIi0tbm8taW5kZXggb3IgLS11bnRyYWNrZWQgY2Fubm90IGJlIHVzZWQgd2l0aCByZXZzIgorbXNnc3RyICItLW5vLWluZGV4IHZleWEgLS11bnRyYWNrZWQgcmV2aXp5b25sYXJsYSBiaXJsaWt0ZSBrdWxsYW7EsWxhbWF6IgorCisjOiBidWlsdGluL2dyZXAuYzoxMDI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIHJldmlzaW9uOiAlcyIKK21zZ3N0ciAicmV2aXp5b24gw6fDtnrDvGxlbWl5b3I6ICVzIgorCisjOiBidWlsdGluL2dyZXAuYzoxMDU3Cittc2dpZCAiLS11bnRyYWNrZWQgbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgorbXNnc3RyICItLXVudHJhY2tlZCwgLS1yZWN1cnNlLXN1Ym1vZHVsZXMgaWxlIGRlc3Rla2xlbm1peW9yIgorCisjOiBidWlsdGluL2dyZXAuYzoxMDYxCittc2dpZCAiaW52YWxpZCBvcHRpb24gY29tYmluYXRpb24sIGlnbm9yaW5nIC0tdGhyZWFkcyIKK21zZ3N0ciAiZ2XDp2Vyc2l6IHNlw6dlbmVrIGJpcmxlxZ90aXJtZXNpLCAtLXRocmVhZHMgeW9rIHNhecSxbMSxeW9yIgorCisjOiBidWlsdGluL2dyZXAuYzoxMDY0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU0NworbXNnaWQgIm5vIHRocmVhZHMgc3VwcG9ydCwgaWdub3JpbmcgLS10aHJlYWRzIgorbXNnc3RyICJpxZ8gcGFyw6dhY8SxxJ/EsSBkZXN0ZcSfaSB5b2ssIC0tdGhyZWFkcyB5b2sgc2F5xLFsxLF5b3IiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzNSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBudW1iZXIgb2YgdGhyZWFkcyBzcGVjaWZpZWQgKCVkKSIKK21zZ3N0ciAiZ2XDp2Vyc2l6IGJlbGlydGlsZW4gacWfIHBhcsOnYWPEscSfxLEgc2F5xLFzxLEgKCVkKSIKKworIzogYnVpbHRpbi9ncmVwLmM6MTEwMQorbXNnaWQgIi0tb3Blbi1maWxlcy1pbi1wYWdlciBvbmx5IHdvcmtzIG9uIHRoZSB3b3JrdHJlZSIKK21zZ3N0ciAiLS1vcGVuLWZpbGVzLWluLXBhZ2VyIHlhbG7EsXpjYSDDp2FsxLHFn21hIGHEn2FjxLFuZGEgw6dhbMSxxZ/EsXIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExMjcKK21zZ2lkICItLWNhY2hlZCBvciAtLXVudHJhY2tlZCBjYW5ub3QgYmUgdXNlZCB3aXRoIC0tbm8taW5kZXgiCittc2dzdHIgIi0tY2FjaGVkIHZleWEgLS11bnRyYWNrZWQsIC0tbm8taW5kZXggaWxlIGJpcmxpa3RlIGt1bGxhbsSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExMzMKK21zZ2lkICItLVtuby1dZXhjbHVkZS1zdGFuZGFyZCBjYW5ub3QgYmUgdXNlZCBmb3IgdHJhY2tlZCBjb250ZW50cyIKK21zZ3N0ciAiLS1bbm8tXWV4Y2x1ZGUtc3RhbmRhcmQsIGl6bGVuZW4gacOnZXJpayBpw6dpbiBrdWxsYW7EsWxhbcSxeW9yIgorCisjOiBidWlsdGluL2dyZXAuYzoxMTQxCittc2dpZCAiYm90aCAtLWNhY2hlZCBhbmQgdHJlZXMgYXJlIGdpdmVuIgorbXNnc3RyICJoZW0gLS1jYWNoZWQgaGVtIGHEn2HDp2xhciB2ZXJpbG1pxZ8iCisKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NQorbXNnaWQgIiIKKyJnaXQgaGFzaC1vYmplY3QgWy10IDx0eXBlPl0gWy13XSBbLS1wYXRoPTxmaWxlPiB8IC0tbm8tZmlsdGVyc10gWy0tc3RkaW5dICIKKyJbLS1dIDxmaWxlPi4uLiIKK21zZ3N0ciAiIgorImdpdCBoYXNoLW9iamVjdCBbLXQgPHTDvHI+XSBbLXddIFstLXBhdGg9PGRvc3lhPiB8IC0tbm8tZmlsdGVyc10gWy0tc3RkaW5dICIKKyJbLS1dIDxkb3N5YT4uLi4iCisKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NgorbXNnaWQgImdpdCBoYXNoLW9iamVjdCAgLS1zdGRpbi1wYXRocyIKK21zZ3N0ciAiZ2l0IGhhc2gtb2JqZWN0ICAtLXN0ZGluLXBhdGhzIgorCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKK21zZ2lkICJvYmplY3QgdHlwZSIKK21zZ3N0ciAibmVzbmUgdMO8csO8IgorCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTkKK21zZ2lkICJ3cml0ZSB0aGUgb2JqZWN0IGludG8gdGhlIG9iamVjdCBkYXRhYmFzZSIKK21zZ3N0ciAibmVzbmV5aSBuZXNuZSB2ZXJpdGFiYW7EsW5hIHlheiIKKworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMQorbXNnaWQgInJlYWQgdGhlIG9iamVjdCBmcm9tIHN0ZGluIgorbXNnc3RyICJuZXNuZXlpIHN0ZGluJ2RlbiBva3UiCisKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDMKK21zZ2lkICJzdG9yZSBmaWxlIGFzIGlzIHdpdGhvdXQgZmlsdGVycyIKK21zZ3N0ciAiZG9zeWF5xLEgc8O8emdlw6dsZXIgb2xtYWRhbiBvbGR1xJ91IGdpYmkgZGVwb2xhIgorCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0Cittc2dpZCAiIgorImp1c3QgaGFzaCBhbnkgcmFuZG9tIGdhcmJhZ2UgdG8gY3JlYXRlIGNvcnJ1cHQgb2JqZWN0cyBmb3IgZGVidWdnaW5nIEdpdCIKK21zZ3N0ciAiIgorIkdpdCBoYXRhIGF5xLFrbGFtYXPEsW5kYSBrdWxsYW5tYWsgacOnaW4gw6dlciDDp8O2cCB0b3BsYXlhcmFrIGhhc2FybMSxIG5lc25lbGVyICIKKyJvbHXFn3R1ciIKKworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNQorbXNnaWQgInByb2Nlc3MgZmlsZSBhcyBpdCB3ZXJlIGZyb20gdGhpcyBwYXRoIgorbXNnc3RyICJkb3N5YXnEsSBzYW5raSBidSB5b2xkYW5txLHFnyBnaWJpIGnFn2xlIgorCisjOiBidWlsdGluL2hlbHAuYzo0NgorbXNnaWQgInByaW50IGFsbCBhdmFpbGFibGUgY29tbWFuZHMiCittc2dzdHIgInTDvG0ga3VsbGFuxLFsYWJpbGlyIGtvbXV0bGFyIHlhemTEsXIiCisKKyM6IGJ1aWx0aW4vaGVscC5jOjQ3Cittc2dpZCAiZXhjbHVkZSBndWlkZXMiCittc2dzdHIgImvEsWxhdnV6bGFyxLEgaGFyacOnIHR1dCIKKworIzogYnVpbHRpbi9oZWxwLmM6NDgKK21zZ2lkICJwcmludCBsaXN0IG9mIHVzZWZ1bCBndWlkZXMiCittc2dzdHIgImt1bGxhbsSxxZ9sxLEga8SxbGF2dXpsYXLEsW4gbGlzdGVzaW5pIMOnxLFrYXIiCisKKyM6IGJ1aWx0aW4vaGVscC5jOjQ5Cittc2dpZCAicHJpbnQgYWxsIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgbmFtZXMiCittc2dzdHIgInTDvG0geWFwxLFsYW5kxLFybWEgZGXEn2nFn2tlbmxlcmkgYWRsYXLEsW7EsSB5YXpkxLFyIgorCisjOiBidWlsdGluL2hlbHAuYzo1MQorbXNnaWQgInNob3cgbWFuIHBhZ2UiCittc2dzdHIgIm1hbiBzYXlmYXPEsW7EsSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2hlbHAuYzo1MgorbXNnaWQgInNob3cgbWFudWFsIGluIHdlYiBicm93c2VyIgorbXNnc3RyICJrxLFsYXZ1enUgd2ViIHRhcmF5xLFjxLFzxLFuZGEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9oZWxwLmM6NTQKK21zZ2lkICJzaG93IGluZm8gcGFnZSIKK21zZ3N0ciAiYmlsZ2kgc2F5ZmFzxLFuxLEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9oZWxwLmM6NTYKK21zZ2lkICJwcmludCBjb21tYW5kIGRlc2NyaXB0aW9uIgorbXNnc3RyICJrb211dCBhw6fEsWtsYW1hc8SxbsSxIHlhemTEsXIiCisKKyM6IGJ1aWx0aW4vaGVscC5jOjYxCittc2dpZCAiZ2l0IGhlbHAgWy0tYWxsXSBbLS1ndWlkZXNdIFstLW1hbiB8IC0td2ViIHwgLS1pbmZvXSBbPGNvbW1hbmQ+XSIKK21zZ3N0ciAiZ2l0IGhlbHAgWy0tYWxsXSBbLS1ndWlkZXNdIFstLW1hbiB8IC0td2ViIHwgLS1pbmZvXSBbPGtvbXV0Pl0iCisKKyM6IGJ1aWx0aW4vaGVscC5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBoZWxwIGZvcm1hdCAnJXMnIgorbXNnc3RyICJ0YW7EsW1sYW5hbWF5YW4geWFyZMSxbSBiacOnaW1pICclcyciCisKKyM6IGJ1aWx0aW4vaGVscC5jOjEwNAorbXNnaWQgIkZhaWxlZCB0byBzdGFydCBlbWFjc2NsaWVudC4iCittc2dzdHIgImVtYWNzY2xpZW50IGJhxZ9sYXTEsWxhbWFkxLEuIgorCisjOiBidWlsdGluL2hlbHAuYzoxMTcKK21zZ2lkICJGYWlsZWQgdG8gcGFyc2UgZW1hY3NjbGllbnQgdmVyc2lvbi4iCittc2dzdHIgImVtYWNzY2xpZW50IHPDvHLDvG3DvCBheXLEscWfdMSxcsSxbGFtYWTEsS4iCisKKyM6IGJ1aWx0aW4vaGVscC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJlbWFjc2NsaWVudCB2ZXJzaW9uICclZCcgdG9vIG9sZCAoPCAyMikuIgorbXNnc3RyICJlbWFjc2NsaWVudCBzw7xyw7xtw7wgJyVkJyBwZWsgZXNraSAoPDIyKS4iCisKKyM6IGJ1aWx0aW4vaGVscC5jOjE0MyBidWlsdGluL2hlbHAuYzoxNjUgYnVpbHRpbi9oZWxwLmM6MTc1IGJ1aWx0aW4vaGVscC5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZXhlYyAnJXMnIgorbXNnc3RyICInJXMnIMOnYWzEscWfdMSxcsSxbGFtYWTEsSIKKworIzogYnVpbHRpbi9oZWxwLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyInJXMnOiBwYXRoIGZvciB1bnN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgorIlBsZWFzZSBjb25zaWRlciB1c2luZyAnbWFuLjx0b29sPi5jbWQnIGluc3RlYWQuIgorbXNnc3RyICIiCisiJyVzJzogZGVzdGVrbGVubWV5ZW4gbWFuIGfDtnLDvG50w7xsZXlpY2lzaSB5b2x1LlxuIgorIkJ1bnVuIHllcmluZSAnbWFuLjxhcmHDpz4uY21kJyBrdWxsYW5tYXnEsSBkw7zFn8O8bsO8bi4iCisKKyM6IGJ1aWx0aW4vaGVscC5jOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJyVzJzogY21kIGZvciBzdXBwb3J0ZWQgbWFuIHZpZXdlci5cbiIKKyJQbGVhc2UgY29uc2lkZXIgdXNpbmcgJ21hbi48dG9vbD4ucGF0aCcgaW5zdGVhZC4iCittc2dzdHIgIiIKKyInJXMnOiBkZXN0ZWtsZW5tZXllbiBtYW4gZ8O2csO8bnTDvGxleWljaXNpIGtvbXV0dS5cbiIKKyJCdW51biB5ZXJpbmUgJ21hbi48YXJhw6c+LnBhdGgnIGt1bGxhbm1hecSxIGTDvMWfw7xuw7xuLiIKKworIzogYnVpbHRpbi9oZWxwLmM6MzUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IHVua25vd24gbWFuIHZpZXdlci4iCittc2dzdHIgIiclcyc6IEJpbGlubWV5ZW4gbWFuIGfDtnLDvG50w7xsZXlpY2lzaS4iCisKKyM6IGJ1aWx0aW4vaGVscC5jOjM2NworbXNnaWQgIm5vIG1hbiB2aWV3ZXIgaGFuZGxlZCB0aGUgcmVxdWVzdCIKK21zZ3N0ciAiaXN0ZcSfZSBoacOnYmlyIG1hbiBnw7Zyw7xudMO8bGV5aWNpc2kgZWxlIGFsbWFkxLEiCisKKyM6IGJ1aWx0aW4vaGVscC5jOjM3NQorbXNnaWQgIm5vIGluZm8gdmlld2VyIGhhbmRsZWQgdGhlIHJlcXVlc3QiCittc2dzdHIgImlzdGXEn2UgaGnDp2JpciBiaWxnaSBnw7Zyw7xudMO8bGV5aWNpc2kgZWxlIGFsbWFkxLEiCisKKyM6IGJ1aWx0aW4vaGVscC5jOjQzNCBidWlsdGluL2hlbHAuYzo0NDUgZ2l0LmM6MzM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgYWxpYXNlZCB0byAnJXMnIgorbXNnc3RyICInJXMnLCAnJXMnIG9sYXJhayBhcm1hbGFubcSxxZ8iCisKKyM6IGJ1aWx0aW4vaGVscC5jOjQ0OCBnaXQuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGFsaWFzLiVzIHN0cmluZzogJXMiCittc2dzdHIgImhhdGFsxLEgYWxpYXMuJXMgZGl6aXNpOiAlcyIKKworIzogYnVpbHRpbi9oZWxwLmM6NDc3IGJ1aWx0aW4vaGVscC5jOjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1c2FnZTogJXMlcyIKK21zZ3N0ciAia3VsbGFuxLFtOiAlcyVzIgorCisjOiBidWlsdGluL2hlbHAuYzo0OTEKK21zZ2lkICInZ2l0IGhlbHAgY29uZmlnJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiZWsgYmlsZ2kgacOnaW46ICdnaXQgaGVscCBjb25maWcnIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxODUKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0IHR5cGUgbWlzbWF0Y2ggYXQgJXMiCittc2dzdHIgIiVzIGtvbnVtdW5kYSBuZXNuZSB0w7xyw7wgdXl1xZ9tYXpsxLHEn8SxIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIG5vdCByZWNlaXZlIGV4cGVjdGVkIG9iamVjdCAlcyIKK21zZ3N0ciAiYmVrbGVuZW4gbmVzbmUgJXMgYWzEsW5tYWTEsSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCAlczogZXhwZWN0ZWQgdHlwZSAlcywgZm91bmQgJXMiCittc2dzdHIgIm5lc25lICVzOiBiZWtsZW5lbiB0w7xyICVzLCBidWx1bmFuICVzIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpbGwgJWQgYnl0ZSIKK21zZ2lkX3BsdXJhbCAiY2Fubm90IGZpbGwgJWQgYnl0ZXMiCittc2dzdHJbMF0gIiVkIGJheXQgZG9sZHVydWxhbcSxeW9yIgorbXNnc3RyWzFdICIlZCBiYXl0IGRvbGR1cnVsYW3EsXlvciIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjY4Cittc2dpZCAiZWFybHkgRU9GIgorbXNnc3RyICJlcmtlbiBkb3N5YSBzb251IgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyNjkKK21zZ2lkICJyZWFkIGVycm9yIG9uIGlucHV0IgorbXNnc3RyICJnaXJkaWRlIG9rdW1hIGhhdGFzxLEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI4MQorbXNnaWQgInVzZWQgbW9yZSBieXRlcyB0aGFuIHdlcmUgYXZhaWxhYmxlIgorbXNnc3RyICJrdWxsYW7EsWxhYmlsaXIgb2xhbmRhbiBkYWhhIMOnb2sgYmF5dCBrdWxsYW7EsWxkxLEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI4OCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjYwNgorbXNnaWQgInBhY2sgdG9vIGxhcmdlIGZvciBjdXJyZW50IGRlZmluaXRpb24gb2Ygb2ZmX3QiCittc2dzdHIgInBha2V0IG9mZl90J25pbiBnZcOnZXJsaSB0YW7EsW3EsSBpw6dpbiDDp29rIGLDvHnDvGsiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI5MSBidWlsdGluL3VucGFjay1vYmplY3RzLmM6OTUKK21zZ2lkICJwYWNrIGV4Y2VlZHMgbWF4aW11bSBhbGxvd2VkIHNpemUiCittc2dzdHIgInBha2V0IGl6aW4gdmVyaWxlbiBlbiBiw7x5w7xrIGJveXV0dSBhxZ/EsXlvciIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIHBhY2tmaWxlICclcyciCittc2dzdHIgIiclcycgcGFrZXQgZG9zeWFzxLEgYcOnxLFsYW3EsXlvciIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzI2Cittc2dpZCAicGFjayBzaWduYXR1cmUgbWlzbWF0Y2giCittc2dzdHIgInBha2V0IGltemFzxLEgdXl1xZ9tYXpsxLHEn8SxIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFjayB2ZXJzaW9uICU8UFJJdTMyPiB1bnN1cHBvcnRlZCIKK21zZ3N0ciAicGFrZXQgc8O8csO8bcO8ICU8UFJJdTMyPiBkZXN0ZWtsZW5taXlvciIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2sgaGFzIGJhZCBvYmplY3QgYXQgb2Zmc2V0ICU8UFJJdU1BWD46ICVzIgorbXNnc3RyICJwYWtldGluICU8UFJJdU1BWD4gb2ZzZXRpbmRlIGhhdGFsxLEgbmVzbmUgdmFyOiAlcyIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NDY2CisjLCBjLWZvcm1hdAorbXNnaWQgImluZmxhdGUgcmV0dXJuZWQgJWQiCittc2dzdHIgIsWfacWfaXJtZSBwcm9ncmFtxLEgJWQgZMO2bmTDvHJkw7wiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNQorbXNnaWQgIm9mZnNldCB2YWx1ZSBvdmVyZmxvdyBmb3IgZGVsdGEgYmFzZSBvYmplY3QiCittc2dzdHIgImRlbHRhIHRhYmFuxLEgbmVzbmVzaSBpw6dpbiBvZnNldCBkZcSfZXJpIHRhxZ/EsW3EsSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTIzCittc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgaXMgb3V0IG9mIGJvdW5kIgorbXNnc3RyICJkZWx0YSB0YWJhbsSxIG9mc2V0aSBzxLFuxLFybGFyIGTEscWfxLFuZGEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9iamVjdCB0eXBlICVkIgorbXNnc3RyICJiaWxpbm1leWVuIG5lc25lIHTDvHLDvCAlZCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTYyCittc2dpZCAiY2Fubm90IHByZWFkIHBhY2sgZmlsZSIKK21zZ3N0ciAicGFrZXQgZG9zeWFzxLEgJ3ByZWFkJyB5YXDEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICU8UFJJdU1BWD4gYnl0ZSBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICJwcmVtYXR1cmUgZW5kIG9mIHBhY2sgZmlsZSwgJTxQUkl1TUFYPiBieXRlcyBtaXNzaW5nIgorbXNnc3RyWzBdICJ6YW1hbnPEsXogcGFrZXQgZG9zeWFzxLEgc29udSwgJTxQUkl1TUFYPiBiYXl0IGVrc2lrIgorbXNnc3RyWzFdICJ6YW1hbnPEsXogcGFrZXQgZG9zeWFzxLEgc29udSwgJTxQUkl1TUFYPiBiYXl0IGVrc2lrIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1OTAKK21zZ2lkICJzZXJpb3VzIGluZmxhdGUgaW5jb25zaXN0ZW5jeSIKK21zZ3N0ciAiY2lkZGkgxZ9pxZ9pcm1lIHByb2dyYW3EsSB0dXRhcnPEsXpsxLHEn8SxIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo3MzUgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzQxIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc2NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODA0IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxMworIywgYy1mb3JtYXQKK21zZ2lkICJTSEExIENPTExJU0lPTiBGT1VORCBXSVRIICVzICEiCittc2dzdHIgIiVzIMSwTEUgU0hBMSDDh0FSUEnFnk1BU0kgQlVMVU5EVSEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjczOCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE1OAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgJXMiCittc2dzdHIgIiVzIG9rdW5hbcSxeW9yIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgZXhpc3Rpbmcgb2JqZWN0IGluZm8gJXMiCittc2dzdHIgIm1ldmN1dCAlcyBuZXNuZSBiaWxnaXNpIG9rdW5hbcSxeW9yIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgZXhpc3Rpbmcgb2JqZWN0ICVzIgorbXNnc3RyICJtZXZjdXQgJXMgbmVzbmVzaSBva3VuYW3EsXlvciIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgYmxvYiBvYmplY3QgJXMiCittc2dzdHIgImdlw6dlcnNpeiAlcyBpa2lsaSBuZXNuZXNpIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MjcgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODQ2Cittc2dpZCAiZnNjayBlcnJvciBpbiBwYWNrZWQgb2JqZWN0IgorbXNnc3RyICJwYWtldGxlbm1pxZ8gbmVzbmUgacOnaW5kZSBmc2NrIGhhdGFzxLEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0OAorIywgYy1mb3JtYXQKK21zZ2lkICJOb3QgYWxsIGNoaWxkIG9iamVjdHMgb2YgJXMgYXJlIHJlYWNoYWJsZSIKK21zZ3N0ciAiJXMgw7ZnZXNpbmluIHTDvG0gYWx0IMO2Z2VsZXJpIHVsYcWfxLFsYWJpbGlyIGRlxJ9pbCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6OTIwIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjk1MQorbXNnaWQgImZhaWxlZCB0byBhcHBseSBkZWx0YSIKK21zZ3N0ciAiZGVsdGEgdXlndWxhbmFtYWTEsSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTEyMQorbXNnaWQgIlJlY2VpdmluZyBvYmplY3RzIgorbXNnc3RyICJOZXNuZWxlciBhbMSxbsSxeW9yIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTIxCittc2dpZCAiSW5kZXhpbmcgb2JqZWN0cyIKK21zZ3N0ciAiTmVzbmVsZXIgaW5kZWtzbGVuaXlvciIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE1NQorbXNnaWQgInBhY2sgaXMgY29ycnVwdGVkIChTSEExIG1pc21hdGNoKSIKK21zZ3N0ciAicGFrZXQgaGFzYXIgZ8O2cm3DvMWfIChTSEExIHV5dW1zdXpsdcSfdSkiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNjAKK21zZ2lkICJjYW5ub3QgZnN0YXQgcGFja2ZpbGUiCittc2dzdHIgInBha2V0IGRvc3lhc8SxIGZzdGF0IHlhcMSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNjMKK21zZ2lkICJwYWNrIGhhcyBqdW5rIGF0IHRoZSBlbmQiCittc2dzdHIgInBha2V0IHNvbnVuZGEgZMO2a8O8bnTDvGxlciB2YXIiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNzUKK21zZ2lkICJjb25mdXNpb24gYmV5b25kIGluc2FuaXR5IGluIHBhcnNlX3BhY2tfb2JqZWN0cygpIgorbXNnc3RyICJwYXJzZV9wYWNrX29iamVjdHMoKSBpw6dpbmRla2kga2FybWHFn2EgYWvEsWwgYWxtYXogZMO8emV5ZGUiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExOTgKK21zZ2lkICJSZXNvbHZpbmcgZGVsdGFzIgorbXNnc3RyICJEZWx0YWxhciDDp8O2esO8bMO8eW9yIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjA4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRocmVhZDogJXMiCittc2dzdHIgImnFnyBwYXLDp2FjxLHEn8SxIG9sdcWfdHVydWxhbWFkxLE6ICVzIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjQ5Cittc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSIKK21zZ3N0ciAia2FybWHFn2EgYWvEsWwgYWxtYXogZMO8emV5ZGUiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tcGxldGVkIHdpdGggJWQgbG9jYWwgb2JqZWN0IgorbXNnaWRfcGx1cmFsICJjb21wbGV0ZWQgd2l0aCAlZCBsb2NhbCBvYmplY3RzIgorbXNnc3RyWzBdICIlZCB5ZXJlbCBuZXNuZXlsZSB0YW1hbWxhbmTEsSIKK21zZ3N0clsxXSAiJWQgeWVyZWwgbmVzbmV5bGUgdGFtYW1sYW5kxLEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5leHBlY3RlZCB0YWlsIGNoZWNrc3VtIGZvciAlcyAoZGlzayBjb3JydXB0aW9uPykiCittc2dzdHIgIiVzIGnDp2luIGJla2xlbm1lZGlrIGt1eXJ1ayBzYcSfbGFtYXPEsSAoZGlzayBoYXNhcsSxPykiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFjayBoYXMgJWQgdW5yZXNvbHZlZCBkZWx0YSIKK21zZ2lkX3BsdXJhbCAicGFjayBoYXMgJWQgdW5yZXNvbHZlZCBkZWx0YXMiCittc2dzdHJbMF0gInBha2V0aW4gJWQgw6fDtnrDvGxtZW1pxZ8gZGVsdGFzxLEgdmFyIgorbXNnc3RyWzFdICJwYWtldGluICVkIMOnw7Z6w7xsbWVtacWfIGRlbHRhc8SxIHZhciIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVmbGF0ZSBhcHBlbmRlZCBvYmplY3QgKCVkKSIKK21zZ3N0ciAiaWxpxZ90aXJpbGVuIG5lc25lIHPDtm5kw7xyw7xsZW1lZGkgKCVkKSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM5MgorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBvYmplY3QgJXMgaXMgY29ycnVwdCIKK21zZ3N0ciAieWVyZWwgbmVzbmUgJXMgaGFzYXJsxLEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2ZpbGUgbmFtZSAnJXMnIGRvZXMgbm90IGVuZCB3aXRoICcucGFjayciCittc2dzdHIgInBha2V0IGRvc3lhc8SxIGFkxLEgJyVzJywgJy5wYWNrJyBpbGUgYml0bWl5b3IiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHdyaXRlICVzIGZpbGUgJyVzJyIKK21zZ3N0ciAiJXMgZG9zeWFzxLEgJyVzJyB5YXrEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjbG9zZSB3cml0dGVuICVzIGZpbGUgJyVzJyIKK21zZ3N0ciAieWF6xLFsbcSxxZ8gJXMgZG9zeWFzxLEgJyVzJyBrYXBhdMSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0NjMKK21zZ2lkICJlcnJvciB3aGlsZSBjbG9zaW5nIHBhY2sgZmlsZSIKK21zZ3N0ciAicGFrZXQgZG9zeWFzxLEga2FwYXTEsWzEsXJrZW4gaGF0YSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ3NworbXNnaWQgImNhbm5vdCBzdG9yZSBwYWNrIGZpbGUiCittc2dzdHIgInBha2V0IGRvc3lhc8SxIGRlcG9sYW5hbcSxeW9yIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDg1Cittc2dpZCAiY2Fubm90IHN0b3JlIGluZGV4IGZpbGUiCittc2dzdHIgImluZGVrcyBkb3N5YXPEsSBkZXBvbGFuYW3EsXlvciIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUyOSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHBhY2suaW5kZXh2ZXJzaW9uPSU8UFJJdTMyPiIKK21zZ3N0ciAiaGF0YWzEsSBwYWNrLmluZGV4dmVyc2lvbj0lPFBSSXUzMj4iCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IG9wZW4gZXhpc3RpbmcgcGFjayBmaWxlICclcyciCittc2dzdHIgIk1ldmN1dCBwYWtldCBkb3N5YXPEsSAnJXMnIGHDp8SxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IG9wZW4gZXhpc3RpbmcgcGFjayBpZHggZmlsZSBmb3IgJyVzJyIKK21zZ3N0ciAiJyVzJyBpw6dpbiBtZXZjdXQgcGFrZXQgaWR4IGRvc3lhc8SxIGHDp8SxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm9uIGRlbHRhOiAlZCBvYmplY3QiCittc2dpZF9wbHVyYWwgIm5vbiBkZWx0YTogJWQgb2JqZWN0cyIKK21zZ3N0clswXSAiZGVsdGEgZGXEn2lsOiAlZCBuZXNuZSIKK21zZ3N0clsxXSAiZGVsdGEgZGXEn2lsOiAlZCBuZXNuZSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY1NAorIywgYy1mb3JtYXQKK21zZ2lkICJjaGFpbiBsZW5ndGggPSAlZDogJWx1IG9iamVjdCIKK21zZ2lkX3BsdXJhbCAiY2hhaW4gbGVuZ3RoID0gJWQ6ICVsdSBvYmplY3RzIgorbXNnc3RyWzBdICJ6aW5jaXIgdXp1bmx1xJ91ID0gJWQ6ICVsdSBuZXNuZSIKK21zZ3N0clsxXSAiemluY2lyIHV6dW5sdcSfdSA9ICVkOiAlbHUgbmVzbmUiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2OTMKK21zZ2lkICJDYW5ub3QgY29tZSBiYWNrIHRvIGN3ZCIKK21zZ3N0ciAixZ51IGFua2kgw6dhbMSxxZ9tYSBkaXppbmluZSBnZXJpIGdlbGluZW1peW9yIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQyIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NjEgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc2NQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgJXMiCittc2dzdHIgImhhdGFsxLEgJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3ODEKK21zZ2lkICItLWZpeC10aGluIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgLS1zdGRpbiIKK21zZ3N0ciAiLS1maXgtdGhpbiwgLS1zdGRpbiBvbG1hZGFuIGt1bGxhbsSxbGFtYXoiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3ODMKK21zZ2lkICItLXN0ZGluIHJlcXVpcmVzIGEgZ2l0IHJlcG9zaXRvcnkiCittc2dzdHIgIi0tc3RkaW4gYmlyIGdpdCBkaXppbmkgZ2VyZWt0aXJpciIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4OQorbXNnaWQgIi0tdmVyaWZ5IHdpdGggbm8gcGFja2ZpbGUgbmFtZSBnaXZlbiIKK21zZ3N0ciAiLS12ZXJpZnkgaWxlIGJpciBwYWtldCBkb3N5YXPEsSBhZMSxIHZlcmlsbWVkaSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTgzNyBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTgyCittc2dpZCAiZnNjayBlcnJvciBpbiBwYWNrIG9iamVjdHMiCittc2dzdHIgInBha2V0IG5lc25lbGVyaW5kZSBmc2NrIGhhdGFzxLEiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IHRlbXBsYXRlICclcyciCittc2dzdHIgIiclcycgxZ9hYmxvbnVudW4gYmlsZ2lsZXJpIGFsxLFuYW3EsXlvciIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW5kaXIgJyVzJyIKK21zZ3N0ciAiJyVzJyBvcGVuZGlyIHlhcMSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkbGluayAnJXMnIgorbXNnc3RyICInJXMnIHJlYWRsaW5rIHlhcMSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzeW1saW5rICclcycgJyVzJyIKK21zZ3N0ciAiJyVzJywgJyVzJyDDtmdlc2luZSBzZW1ib2xpayBiYcSfbGEgYmHEn2xhbmFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjb3B5ICclcycgdG8gJyVzJyIKK21zZ3N0ciAiJyVzJyDFn3VyYXlhIGtvcHlhbGFuYW3EsXlvcjogJyVzJyIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgdGVtcGxhdGUgJXMiCittc2dzdHIgIiVzIMWfYWJsb251IHlvayBzYXnEsWzEsXlvciIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgInRlbXBsYXRlcyBub3QgZm91bmQgaW4gJXMiCittc2dzdHIgIsWfYWJsb25sYXIgJXMgacOnaW5kZSBidWx1bmFtYWTEsSIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBjb3B5aW5nIHRlbXBsYXRlcyBmcm9tICclcyc6ICVzIgorbXNnc3RyICLFn2FibG9ubGFyICclcycga29udW11bmRhbiBrb3B5YWxhbm3EsXlvcjogJXMiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaGFuZGxlIGZpbGUgdHlwZSAlZCIKK21zZ3N0ciAiJWQgZG9zeWEgdMO8csO8IGnFn2xlbmVtaXlvciIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlICVzIHRvICVzIgorbXNnc3RyICIlcyDFn3VyYXlhIHRhxZ/EsW5hbcSxeW9yOiAlcyIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6MzU0IGJ1aWx0aW4vaW5pdC1kYi5jOjM1NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBhbHJlYWR5IGV4aXN0cyIKK21zZ3N0ciAiJXMgaGFsaWhhesSxcmRhIHZhciIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlaW5pdGlhbGl6ZWQgZXhpc3Rpbmcgc2hhcmVkIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKK21zZ3N0ciAiJXMlcyBpw6dpbmRla2kgbWV2Y3V0IHBheWxhxZ/EsWxhbiBHaXQgZGVwb3N1IHllbmlkZW4gaWxrbGVuZGlyaWxkaVxuIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVpbml0aWFsaXplZCBleGlzdGluZyBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCittc2dzdHIgIiVzJXMgacOnaW5kZWtpIG1ldmN1dCBHaXQgZGVwb3N1IHllbmlkZW4gaWxrbGVuZGlyaWxkaVxuIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5pdGlhbGl6ZWQgZW1wdHkgc2hhcmVkIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKK21zZ3N0ciAiJXMlcyBpw6dpbmRlIHBheWxhxZ/EsWxhbiBib8WfIEdpdCBkZXBvc3UgaWxrbGVuZGlyaWxkaVxuIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo0MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5pdGlhbGl6ZWQgZW1wdHkgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgorbXNnc3RyICIlcyVzIGnDp2luZGUgYm/FnyBHaXQgZGVwb3N1IGlsa2xlbmRpcmlsZGlcbiIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NDY4Cittc2dpZCAiIgorImdpdCBpbml0IFstcSB8IC0tcXVpZXRdIFstLWJhcmVdIFstLXRlbXBsYXRlPTx0ZW1wbGF0ZS1kaXJlY3Rvcnk+XSBbLS0iCisic2hhcmVkWz08cGVybWlzc2lvbnM+XV0gWzxkaXJlY3Rvcnk+XSIKK21zZ3N0ciAiIgorImdpdCBpbml0IFstcSB8IC0tcXVpZXRdIFstLWJhcmVdIFstLXRlbXBsYXRlPTzFn2FibG9uLWRpemluaT5dIFstLSIKKyJzaGFyZWRbPTxpemlubGVyPl1dIFs8ZGl6aW4+XSIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NDkxCittc2dpZCAicGVybWlzc2lvbnMiCittc2dzdHIgIml6aW5sZXIiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MgorbXNnaWQgInNwZWNpZnkgdGhhdCB0aGUgZ2l0IHJlcG9zaXRvcnkgaXMgdG8gYmUgc2hhcmVkIGFtb25nc3Qgc2V2ZXJhbCB1c2VycyIKK21zZ3N0ciAiZ2l0IGRlcG9zdW51biBrdWxsYW7EsWPEsWxhciBhcmFzxLFuZGEgcGF5bGHFn8SxcCBwYXlsYcWfxLFsbWF5YWNhxJ/EsW7EsSBiZWxpcnQiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUyOSBidWlsdGluL2luaXQtZGIuYzo1MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG1rZGlyICVzIgorbXNnc3RyICIlcyBta2RpciB5YXDEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo1MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNoZGlyIHRvICVzIgorbXNnc3RyICIlcyDDtmdlc2luZSBjaGRpciB5YXDEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo1NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIChvciAtLXdvcmstdHJlZT08ZGlyZWN0b3J5Pikgbm90IGFsbG93ZWQgd2l0aG91dCBzcGVjaWZ5aW5nICVzIChvciAtLWdpdC0iCisiZGlyPTxkaXJlY3Rvcnk+KSIKK21zZ3N0ciAiIgorIiVzICh2ZXlhIC0td29yay10cmVlPTxkaXppbj4pLCAlcyAodmV5YSAtLWdpdC1kaXI9PGRpemluPikgYmVsaXJsZW5tZWRlbiAiCisiaXppbiB2ZXJpbG1peW9yIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo1ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IGFjY2VzcyB3b3JrIHRyZWUgJyVzJyIKK21zZ3N0ciAiJyVzJyDDp2FsxLHFn21hIGHEn2FjxLFuYSBlcmnFn2lsZW1peW9yIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjE2Cittc2dpZCAiIgorImdpdCBpbnRlcnByZXQtdHJhaWxlcnMgWy0taW4tcGxhY2VdIFstLXRyaW0tZW1wdHldIFsoLS10cmFpbGVyICIKKyI8dG9rZW4+Wyg9fDopPHZhbHVlPl0pLi4uXSBbPGZpbGU+Li4uXSIKK21zZ3N0ciAiIgorImdpdCBpbnRlcnByZXQtdHJhaWxlcnMgWy0taW4tcGxhY2VdIFstLXRyaW0tZW1wdHldIFsoLS10cmFpbGVyICIKKyI8dG9rZW4+Wyg9fDopPGRlxJ9lcj5dKS4uLl0gWzxkb3N5YT4uLi5dIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk1Cittc2dpZCAiZWRpdCBmaWxlcyBpbiBwbGFjZSIKK21zZ3N0ciAiZG9zeWFsYXLEsSB5ZXJpbmRlIGTDvHplbmxlIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk2Cittc2dpZCAidHJpbSBlbXB0eSB0cmFpbGVycyIKK21zZ3N0ciAiYm/FnyBhcnRiaWxnaWxlcmkga8SxcnAiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTkKK21zZ2lkICJ3aGVyZSB0byBwbGFjZSB0aGUgbmV3IHRyYWlsZXIiCittc2dzdHIgInllbmkgYXJ0YmlsZ2lsZXIgbmVyZXllIHllcmxlxZ90aXJpbGVjZWsiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAxCittc2dpZCAiYWN0aW9uIGlmIHRyYWlsZXIgYWxyZWFkeSBleGlzdHMiCittc2dzdHIgImFydGJpbGdpIGhhbGloYXrEsXJkYSB2YXJzYSB5YXDEsWxhY2FrIGV5bGVtIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMworbXNnaWQgImFjdGlvbiBpZiB0cmFpbGVyIGlzIG1pc3NpbmciCittc2dzdHIgImFydGJpbGdpIGVrc2lrc2UgeWFwxLFsYWNhayBleWxlbSIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDUKK21zZ2lkICJvdXRwdXQgb25seSB0aGUgdHJhaWxlcnMiCittc2dzdHIgInlhbG7EsXpjYSBhcnRiaWxnaWxlcmkgw6fEsWt0xLEgdmVyIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNgorbXNnaWQgImRvIG5vdCBhcHBseSBjb25maWcgcnVsZXMiCittc2dzdHIgInlhcMSxbGFuZMSxcm1hIGt1cmFsbGFyxLFuxLEgdXlndWxhbWEiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA3Cittc2dpZCAiam9pbiB3aGl0ZXNwYWNlLWNvbnRpbnVlZCB2YWx1ZXMiCittc2dzdHIgImJvxZ9sdWsgaWxlIHPDvHJkw7xyw7xsZW4gZGXEn2VybGVyaSB1w6cgdWNhIGVrbGUiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA4Cittc2dpZCAic2V0IHBhcnNpbmcgb3B0aW9ucyIKK21zZ3N0ciAiYXlyxLHFn3TEsXJtYSBzZcOnZW5la2xlcmluaSBheWFybGEiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEwCittc2dpZCAiZG8gbm90IHRyZWF0IC0tLSBzcGVjaWFsbHkiCittc2dzdHIgIsWfdW5hIMO2emVsIGRhdnJhbm1hOiAtLS0iCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTExCittc2dpZCAidHJhaWxlciIKK21zZ3N0ciAiYXJ0YmlsZ2kiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEyCittc2dpZCAidHJhaWxlcihzKSB0byBhZGQiCittc2dzdHIgImVrbGVuZWNlayBhcnRiaWxnaShsZXIpIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEyMworbXNnaWQgIi0tdHJhaWxlciB3aXRoIC0tb25seS1pbnB1dCBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICItLXRyYWlsZXIgaWxlIC0tb25seS1pbnB1dCBiaXIgYW5sYW0gaWZhZGUgZXRtaXlvciIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMzMKK21zZ2lkICJubyBpbnB1dCBmaWxlIGdpdmVuIGZvciBpbi1wbGFjZSBlZGl0aW5nIgorbXNnc3RyICJ5ZXJpbmRlIGTDvHplbmxlbWUgacOnaW4gZ2lyZGkgZG9zeWFzxLEgdmVyaWxtZWRpIgorCisjOiBidWlsdGluL2xvZy5jOjU2Cittc2dpZCAiZ2l0IGxvZyBbPG9wdGlvbnM+XSBbPHJldmlzaW9uLXJhbmdlPl0gW1stLV0gPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IGxvZyBbPHNlw6dlbmVrbGVyPl0gWzxyZXZpenlvbi1lcmltaT5dIFtbLS1dIDx5b2w+Li4uXSIKKworIzogYnVpbHRpbi9sb2cuYzo1NworbXNnaWQgImdpdCBzaG93IFs8b3B0aW9ucz5dIDxvYmplY3Q+Li4uIgorbXNnc3RyICJnaXQgc2hvdyBbPHNlw6dlbmVrbGVyPl0gPG5lc25lPi4uLiIKKworIzogYnVpbHRpbi9sb2cuYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAtLWRlY29yYXRlIG9wdGlvbjogJXMiCittc2dzdHIgImdlw6dlcnNpeiAtLWRlY29yYXRlIHNlw6dlbmXEn2k6ICVzIgorCisjOiBidWlsdGluL2xvZy5jOjE3NAorbXNnaWQgInNob3cgc291cmNlIgorbXNnc3RyICJrYXluYcSfxLEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9sb2cuYzoxNzUKK21zZ2lkICJVc2UgbWFpbCBtYXAgZmlsZSIKK21zZ3N0ciAicG9zdGEgZcWfbGVtIGRvc3lhc8SxbsSxIGt1bGxhbiIKKworIzogYnVpbHRpbi9sb2cuYzoxNzcKK21zZ2lkICJvbmx5IGRlY29yYXRlIHJlZnMgdGhhdCBtYXRjaCA8cGF0dGVybj4iCittc2dzdHIgInlhbG7EsXpjYSA8ZGl6Z2k+IGlsZSBlxZ9sZcWfZW4gYmHFn3Z1cnVsYXLEsSBzw7xzbGUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTc5Cittc2dpZCAiZG8gbm90IGRlY29yYXRlIHJlZnMgdGhhdCBtYXRjaCA8cGF0dGVybj4iCittc2dzdHIgIjxkaXpnaT4gaWxlIGXFn2xlxZ9lbiBiYcWfdnVydWxhcsSxIHPDvHNsZW1lIgorCisjOiBidWlsdGluL2xvZy5jOjE4MAorbXNnaWQgImRlY29yYXRlIG9wdGlvbnMiCittc2dzdHIgInPDvHNsZW1lIHNlw6dlbmVrbGVyaSIKKworIzogYnVpbHRpbi9sb2cuYzoxODMKK21zZ2lkICJQcm9jZXNzIGxpbmUgcmFuZ2UgbixtIGluIGZpbGUsIGNvdW50aW5nIGZyb20gMSIKK21zZ3N0ciAiZG9zeWEgacOnaW5kZWtpIG4sbSBzYXTEsXIgYXJhbMSxxJ/EsW7EsSAxJ2RlbiBzYXlhcmFrIGnFn2xlIgorCisjOiBidWlsdGluL2xvZy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJGaW5hbCBvdXRwdXQ6ICVkICVzXG4iCittc2dzdHIgIlNvbiDDp8Sxa3TEsTogJWQgJXNcbiIKKworIzogYnVpbHRpbi9sb2cuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IHNob3cgJXM6IGJhZCBmaWxlIgorbXNnc3RyICJnaXQgc2hvdyAlczogaGF0YWzEsSBkb3N5YSIKKworIzogYnVpbHRpbi9sb2cuYzo1NTAgYnVpbHRpbi9sb2cuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgorbXNnc3RyICIlcyBuZXNuZXNpIG9rdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vbG9nLmM6NjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdHlwZTogJWQiCittc2dzdHIgImJpbGlubWV5ZW4gdMO8cjogJWQiCisKKyM6IGJ1aWx0aW4vbG9nLmM6ODE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIGNvdmVyIGZyb20gZGVzY3JpcHRpb24gbW9kZSIKK21zZ3N0ciAiJXM6IGHDp8Sxa2xhbWEga2lwaW5kZW4gZ2XDp2Vyc2l6IGthcGFrIHNheWZhc8SxIgorCisjOiBidWlsdGluL2xvZy5jOjgyMQorbXNnaWQgImZvcm1hdC5oZWFkZXJzIHdpdGhvdXQgdmFsdWUiCittc2dzdHIgImZvcm1hdC5oZWFkZXJzIGRlxJ9lcmUgaXllIGRlxJ9pbCIKKworIzogYnVpbHRpbi9sb2cuYzo5MzYKK21zZ2lkICJuYW1lIG9mIG91dHB1dCBkaXJlY3RvcnkgaXMgdG9vIGxvbmciCittc2dzdHIgIsOnxLFrdMSxIGRpemluaW5pbiBhZMSxIHBlayB1enVuIgorCisjOiBidWlsdGluL2xvZy5jOjk1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBwYXRjaCBmaWxlICVzIgorbXNnc3RyICIlcyB5YW1hIGRvc3lhc8SxIG9rdW5hbcSxeW9yIgorCisjOiBidWlsdGluL2xvZy5jOjk2OQorbXNnaWQgIm5lZWQgZXhhY3RseSBvbmUgcmFuZ2UiCittc2dzdHIgImJpciB0YW0gZXJpbSBnZXJla2l5b3IiCisKKyM6IGJ1aWx0aW4vbG9nLmM6OTc5Cittc2dpZCAibm90IGEgcmFuZ2UiCittc2dzdHIgImJpciBlcmltIGRlxJ9pbCIKKworIzogYnVpbHRpbi9sb2cuYzoxMTQzCittc2dpZCAiY292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKK21zZ3N0ciAibml5ZXQgbWVrdHVidSBpw6dpbiBlLXBvc3RhIGJpw6dpbWkgZ2VyZWtsaSIKKworIzogYnVpbHRpbi9sb2cuYzoxMTQ5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBjb3Zlci1sZXR0ZXIgZmlsZSIKK21zZ3N0ciAiY292ZXItbGV0dGVyIGRvc3lhc8SxIG9sdcWfdHVydWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnNhbmUgaW4tcmVwbHktdG86ICVzIgorbXNnc3RyICJha8SxbCBhbG1heiBpbi1yZXBseS10bzogJXMiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTI1NQorbXNnaWQgImdpdCBmb3JtYXQtcGF0Y2ggWzxvcHRpb25zPl0gWzxzaW5jZT4gfCA8cmV2aXNpb24tcmFuZ2U+XSIKK21zZ3N0ciAiZ2l0IGZvcm1hdC1wYXRjaCBbPHNlw6dlbmVrbGVyPl0gWzwtYmVyaT4gfCA8cmV2aXp5b24tZXJpbWk+XSIKKworIzogYnVpbHRpbi9sb2cuYzoxMzEzCittc2dpZCAidHdvIG91dHB1dCBkaXJlY3Rvcmllcz8iCittc2dzdHIgImlraSDDp8Sxa3TEsSBkaXppbmk/IgorCisjOiBidWlsdGluL2xvZy5jOjE0MjQgYnVpbHRpbi9sb2cuYzoyMTk3IGJ1aWx0aW4vbG9nLmM6MjE5OSBidWlsdGluL2xvZy5jOjIyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21taXQgJXMiCittc2dzdHIgImJpbGlubWV5ZW4gZ8O2bmRlcmkgJXMiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTQzNCBidWlsdGluL3JlcGxhY2UuYzo1OCBidWlsdGluL3JlcGxhY2UuYzoyMDcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmIgorbXNnc3RyICInJXMnIGdlw6dlcmxpIGJpciBiYcWfdnVydSBvbGFyYWsgw6fDtnrDvGxlbWVkaSIKKworIzogYnVpbHRpbi9sb2cuYzoxNDM5Cittc2dpZCAiY291bGQgbm90IGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKK21zZ3N0ciAia2VzaW4gYmlybGXFn3Rpcm1lIHRlbWVsaSBidWx1bmFtYWTEsSIKKworIzogYnVpbHRpbi9sb2cuYzoxNDQzCittc2dpZCAiIgorImZhaWxlZCB0byBnZXQgdXBzdHJlYW0sIGlmIHlvdSB3YW50IHRvIHJlY29yZCBiYXNlIGNvbW1pdCBhdXRvbWF0aWNhbGx5LFxuIgorInBsZWFzZSB1c2UgZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10byB0byB0cmFjayBhIHJlbW90ZSBicmFuY2guXG4iCisiT3IgeW91IGNvdWxkIHNwZWNpZnkgYmFzZSBjb21taXQgYnkgLS1iYXNlPTxiYXNlLWNvbW1pdC1pZD4gbWFudWFsbHkiCittc2dzdHIgIiIKKyLDnHN0a2F5bmFrIGFsxLFuYW1hZMSxOyB0YWJhbiBnw7ZuZGVyaXNpbmluIGtheWTEsW7EsSBrZW5kaWxpxJ9pbmRlbiB5YXptYWtcbiIKKyJpc3RpeW9yc2FuxLF6IGzDvHRmZW4gZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10byBrdWxsYW5hcmFrIGJpciB1emFrIGRhbMSxXG4iCisiaXpsZXlpbi4gQnVudW4gZMSxxZ/EsW5kYSB0YWJhbiBnw7ZuZGVyaXNpbmkga2VuZGluaXogLS1iYXNlPTx0YWJhbi1nw7ZuZGVyaXNpLSIKKyJubz5cbiIKKyJrdWxsYW5hcmFrIGVsIGlsZSBiZWxpcnRlYmlsaXJzaW5pei4iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ2MworbXNnaWQgImZhaWxlZCB0byBmaW5kIGV4YWN0IG1lcmdlIGJhc2UiCittc2dzdHIgImtlc2luIGJpcmxlxZ90aXJtZSB0ZW1lbGkgYnVsdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ3NAorbXNnaWQgImJhc2UgY29tbWl0IHNob3VsZCBiZSB0aGUgYW5jZXN0b3Igb2YgcmV2aXNpb24gbGlzdCIKK21zZ3N0ciAidGFiYW4gZ8O2bmRlcmlzaSByZXZpenlvbiBsaXN0ZXNpbmluIGF0YXPEsSBvbG1hbMSxIgorCisjOiBidWlsdGluL2xvZy5jOjE0NzgKK21zZ2lkICJiYXNlIGNvbW1pdCBzaG91bGRuJ3QgYmUgaW4gcmV2aXNpb24gbGlzdCIKK21zZ3N0ciAidGFiYW4gZ8O2bmRlcmlzaSByZXZpenlvbiBsaXN0ZXNpbmRlIG9sbWFtYWzEsSIKKworIzogYnVpbHRpbi9sb2cuYzoxNTMxCittc2dpZCAiY2Fubm90IGdldCBwYXRjaCBpZCIKK21zZ3N0ciAieWFtYSBudW1hcmFzxLEgYWzEsW5hbcSxeW9yIgorCisjOiBidWlsdGluL2xvZy5jOjE1ODMKK21zZ2lkICJmYWlsZWQgdG8gaW5mZXIgcmFuZ2UtZGlmZiByYW5nZXMiCittc2dzdHIgInJhbmdlLWRpZmYgZXJpbWxlcmluZGVuIGJpciBhbmxhbSDDp8Sxa2FyxLFsYW1hZMSxIgorCisjOiBidWlsdGluL2xvZy5jOjE2MjkKK21zZ2lkICJ1c2UgW1BBVENIIG4vbV0gZXZlbiB3aXRoIGEgc2luZ2xlIHBhdGNoIgorbXNnc3RyICJiaXIgeWFtYXlsYSBiaWxlIG9sc2EgW1BBVENIIG4vbV0ga3VsbGFuIgorCisjOiBidWlsdGluL2xvZy5jOjE2MzIKK21zZ2lkICJ1c2UgW1BBVENIXSBldmVuIHdpdGggbXVsdGlwbGUgcGF0Y2hlcyIKK21zZ3N0ciAiYmlyZGVuIMOnb2sgeWFtYSBiaWxlIG9sc2EgW1BBVENIXSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTYzNgorbXNnaWQgInByaW50IHBhdGNoZXMgdG8gc3RhbmRhcmQgb3V0IgorbXNnc3RyICJ5YW1hbGFyxLEgc3RhbmRhcnQgw6fEsWt0xLF5YSB5YXpkxLFyIgorCisjOiBidWlsdGluL2xvZy5jOjE2MzgKK21zZ2lkICJnZW5lcmF0ZSBhIGNvdmVyIGxldHRlciIKK21zZ3N0ciAiYmlyIG5peWV0IG1la3R1YnUgb2x1xZ90dXIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0MAorbXNnaWQgInVzZSBzaW1wbGUgbnVtYmVyIHNlcXVlbmNlIGZvciBvdXRwdXQgZmlsZSBuYW1lcyIKK21zZ3N0ciAiw6fEsWt0xLEgZG9zeWEgYWRsYXLEsSBpw6dpbiB5YWzEsW4gc2F5xLEgZGl6aXNpIG9sdcWfdHVyIgorCisjOiBidWlsdGluL2xvZy5jOjE2NDEKK21zZ2lkICJzZngiCittc2dzdHIgInNvbmVrIgorCisjOiBidWlsdGluL2xvZy5jOjE2NDIKK21zZ2lkICJ1c2UgPHNmeD4gaW5zdGVhZCBvZiAnLnBhdGNoJyIKK21zZ3N0ciAiJy5wYXRjaCcgeWVyaW5lIDxzb25laz4ga3VsbGFuIgorCisjOiBidWlsdGluL2xvZy5jOjE2NDQKK21zZ2lkICJzdGFydCBudW1iZXJpbmcgcGF0Y2hlcyBhdCA8bj4gaW5zdGVhZCBvZiAxIgorbXNnc3RyICJ5YW1hbGFyxLEgMSB5ZXJpbmUgPG4+J2RlIG51bWFyYWxhbmTEsXJtYXlhIGJhxZ9sYSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjQ2Cittc2dpZCAibWFyayB0aGUgc2VyaWVzIGFzIE50aCByZS1yb2xsIgorbXNnc3RyICJkaXppeWkgbi4gZGVuZW1lIG9sYXJhayBpbWxlIgorCisjOiBidWlsdGluL2xvZy5jOjE2NDgKK21zZ2lkICJVc2UgW1JGQyBQQVRDSF0gaW5zdGVhZCBvZiBbUEFUQ0hdIgorbXNnc3RyICJbUEFUQ0hdIHllcmluZSBbUkZDIFBBVENIXSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1MQorbXNnaWQgImNvdmVyLWZyb20tZGVzY3JpcHRpb24tbW9kZSIKK21zZ3N0ciAiYcOnxLFrbGFtYSBraXBpbmRlbiBrYXBhayBzYXlmYXPEsSBraXBpIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTIKK21zZ2lkICJnZW5lcmF0ZSBwYXJ0cyBvZiBhIGNvdmVyIGxldHRlciBiYXNlZCBvbiBhIGJyYW5jaCdzIGRlc2NyaXB0aW9uIgorbXNnc3RyICJuaXlldCBtZWt0dWJ1bnVuIGJhesSxIGvEsXPEsW1sYXLEsW7EsSBkYWzEsW4gYcOnxLFrbGFtYXPEsW5kYW4gb2x1xZ90dXIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1NAorbXNnaWQgIlVzZSBbPHByZWZpeD5dIGluc3RlYWQgb2YgW1BBVENIXSIKK21zZ3N0ciAiW1BBVENIXSB5ZXJpbmUgWzzDtm5laz5dIGt1bGxhbiIKKworIzogYnVpbHRpbi9sb2cuYzoxNjU3Cittc2dpZCAic3RvcmUgcmVzdWx0aW5nIGZpbGVzIGluIDxkaXI+IgorbXNnc3RyICJvcnRheWEgw6fEsWthbiBkb3N5YWxhcsSxIDxkaXppbj4nZGUgZGVwb2xhIgorCisjOiBidWlsdGluL2xvZy5jOjE2NjAKK21zZ2lkICJkb24ndCBzdHJpcC9hZGQgW1BBVENIXSIKK21zZ3N0ciAiW1BBVENIXSdpIHNveW1hL2VrbGVtZSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjYzCittc2dpZCAiZG9uJ3Qgb3V0cHV0IGJpbmFyeSBkaWZmcyIKK21zZ3N0ciAiaWtpbGkgZGlmZidsZXJpIMOnxLFrdMSxIHZlcm1lIgorCisjOiBidWlsdGluL2xvZy5jOjE2NjUKK21zZ2lkICJvdXRwdXQgYWxsLXplcm8gaGFzaCBpbiBGcm9tIGhlYWRlciIKK21zZ3N0ciAiRnJvbSBiYcWfbMSxxJ/EsW5kYSB0w7xtw7wgc8SxZsSxcmRhbiBvbHXFn2FuIHNhxJ9sYW1hIMOnxLFrdMSxc8SxIHZlciIKKworIzogYnVpbHRpbi9sb2cuYzoxNjY3Cittc2dpZCAiZG9uJ3QgaW5jbHVkZSBhIHBhdGNoIG1hdGNoaW5nIGEgY29tbWl0IHVwc3RyZWFtIgorbXNnc3RyICLDvHN0a2F5bmFrdGFraSBiaXIgZ8O2bmRlcmkgaWxlIGXFn2xlxZ9lbiBiaXIgeWFtYXnEsSBpw6dlcm1lIgorCisjOiBidWlsdGluL2xvZy5jOjE2NjkKK21zZ2lkICJzaG93IHBhdGNoIGZvcm1hdCBpbnN0ZWFkIG9mIGRlZmF1bHQgKHBhdGNoICsgc3RhdCkiCittc2dzdHIgIsO2bnRhbsSxbWzEsSB5ZXJpbmUgeWFtYSBiacOnaW1pbmkgZ8O2c3RlciAocGF0Y2ggKyBzdGF0KSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjcxCittc2dpZCAiTWVzc2FnaW5nIgorbXNnc3RyICLEsGxldGlsZcWfbWUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MgorbXNnaWQgImhlYWRlciIKK21zZ3N0ciAiYmHFn2zEsWsiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MworbXNnaWQgImFkZCBlbWFpbCBoZWFkZXIiCittc2dzdHIgImUtcG9zdGEgYmHFn2zEscSfxLEgZWtsZSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjc0IGJ1aWx0aW4vbG9nLmM6MTY3NgorbXNnaWQgImVtYWlsIgorbXNnc3RyICJlLXBvc3RhIgorCisjOiBidWlsdGluL2xvZy5jOjE2NzQKK21zZ2lkICJhZGQgVG86IGhlYWRlciIKK21zZ3N0ciAiVG86IGJhxZ9sxLHEn8SxIGVrbGUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3NgorbXNnaWQgImFkZCBDYzogaGVhZGVyIgorbXNnc3RyICJDYzogYmHFn2zEscSfxLEgZWtsZSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjc4Cittc2dpZCAiaWRlbnQiCittc2dzdHIgInRhbsSxbWxhecSxY8SxIgorCisjOiBidWlsdGluL2xvZy5jOjE2NzkKK21zZ2lkICJzZXQgRnJvbSBhZGRyZXNzIHRvIDxpZGVudD4gKG9yIGNvbW1pdHRlciBpZGVudCBpZiBhYnNlbnQpIgorbXNnc3RyICIiCisiRnJvbSBhZHJlc2luaSA8dGFuxLFtbGF5xLFjxLE+IG9sYXJhayBheWFybGEgKHZleWEgeW9rc2EgZ8O2bmRlcmljaSAiCisidGFuxLFtbGF5xLFjxLFzxLEpIgorCisjOiBidWlsdGluL2xvZy5jOjE2ODEKK21zZ2lkICJtZXNzYWdlLWlkIgorbXNnc3RyICJpbGV0aSBubyIKKworIzogYnVpbHRpbi9sb2cuYzoxNjgyCittc2dpZCAibWFrZSBmaXJzdCBtYWlsIGEgcmVwbHkgdG8gPG1lc3NhZ2UtaWQ+IgorbXNnc3RyICJpbGsgcG9zdGF5xLEgPGlsZXRpIG5vPid5YSBiaXIgeWFuxLF0IHlhcCIKKworIzogYnVpbHRpbi9sb2cuYzoxNjgzIGJ1aWx0aW4vbG9nLmM6MTY4NgorbXNnaWQgImJvdW5kYXJ5IgorbXNnc3RyICJzxLFuxLFyIgorCisjOiBidWlsdGluL2xvZy5jOjE2ODQKK21zZ2lkICJhdHRhY2ggdGhlIHBhdGNoIgorbXNnc3RyICJ5YW1hecSxIGVrbGUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4NworbXNnaWQgImlubGluZSB0aGUgcGF0Y2giCittc2dzdHIgInlhbWF5xLEgaWxldGl5ZSBrb3kiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5MQorbXNnaWQgImVuYWJsZSBtZXNzYWdlIHRocmVhZGluZywgc3R5bGVzOiBzaGFsbG93LCBkZWVwIgorbXNnc3RyICJpbGV0aWxlcmkga2F0YWxvZ2xhbWF5xLEgZXRraW5sZcWfdGlyLCBzdGlsbGVyOiBzaGFsbG93LCBkZWVwIgorCisjOiBidWlsdGluL2xvZy5jOjE2OTMKK21zZ2lkICJzaWduYXR1cmUiCittc2dzdHIgImltemEiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5NAorbXNnaWQgImFkZCBhIHNpZ25hdHVyZSIKK21zZ3N0ciAiaW16YSBla2xlIgorCisjOiBidWlsdGluL2xvZy5jOjE2OTUKK21zZ2lkICJiYXNlLWNvbW1pdCIKK21zZ3N0ciAidGFiYW4gZ8O2bmRlcmkiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5NgorbXNnaWQgImFkZCBwcmVyZXF1aXNpdGUgdHJlZSBpbmZvIHRvIHRoZSBwYXRjaCBzZXJpZXMiCittc2dzdHIgInlhbWEgZGl6aXNpbmUgw7Zua2/Fn3VsYW4gYcSfYcOnIGJpbGdpc2luaSBla2xlIgorCisjOiBidWlsdGluL2xvZy5jOjE2OTgKK21zZ2lkICJhZGQgYSBzaWduYXR1cmUgZnJvbSBhIGZpbGUiCittc2dzdHIgImRvc3lhZGFuIGJpciBpbXphIGVrbGUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5OQorbXNnaWQgImRvbid0IHByaW50IHRoZSBwYXRjaCBmaWxlbmFtZXMiCittc2dzdHIgInlhbWEgZG9zeWEgYWRsYXLEsW7EsSB5YXpkxLFybWEiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMQorbXNnaWQgInNob3cgcHJvZ3Jlc3Mgd2hpbGUgZ2VuZXJhdGluZyBwYXRjaGVzIgorbXNnc3RyICJ5YW1hbGFyIG9sdcWfdHVydWx1cmtlbiBpbGVybGVtZXlpIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMworbXNnaWQgInNob3cgY2hhbmdlcyBhZ2FpbnN0IDxyZXY+IGluIGNvdmVyIGxldHRlciBvciBzaW5nbGUgcGF0Y2giCittc2dzdHIgIiIKKyI8cmV2PiBrYXLFn8Sxc8SxbmRha2kgZGXEn2nFn2lrbGlrbGVyaSBuaXlldCBtZWt0dWJ1bmRhIHZleWEgdGVrIGJpciB5YW1hZGEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9sb2cuYzoxNzA2Cittc2dpZCAic2hvdyBjaGFuZ2VzIGFnYWluc3QgPHJlZnNwZWM+IGluIGNvdmVyIGxldHRlciBvciBzaW5nbGUgcGF0Y2giCittc2dzdHIgIiIKKyI8YsWfdnItYmxydMOnPiBrYXLFn8Sxc8SxbmRha2kgZGXEn2nFn2lrbGlrbGVyaSBuaXlldCBtZWt0dWJ1bmRhIHZleWEgdGVrIGJpciAiCisieWFtYWRhIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwOAorbXNnaWQgInBlcmNlbnRhZ2UgYnkgd2hpY2ggY3JlYXRpb24gaXMgd2VpZ2h0ZWQiCittc2dzdHIgIm9sdcWfdW11biB0YXJ0xLFsZMSxxJ/EsSB5w7x6ZGUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTc5MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGlkZW50IGxpbmU6ICVzIgorbXNnc3RyICJnZcOnZXJzaXogdGFuxLFtbGF5xLFjxLEgc2F0xLFyxLE6ICVzIgorCisjOiBidWlsdGluL2xvZy5jOjE4MDcKK21zZ2lkICItbiBhbmQgLWsgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLW4gdmUgLWsgYmlybGlrdGUga3VsbGFuxLFsYW1heiIKKworIzogYnVpbHRpbi9sb2cuYzoxODA5Cittc2dpZCAiLS1zdWJqZWN0LXByZWZpeC8tLXJmYyBhbmQgLWsgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLS1zdWJqZWN0LXByZWZpeC8tLXJmYyB2ZSAtayBiaXJsaWt0ZSBrdWxsYW7EsWxhbWF6IgorCisjOiBidWlsdGluL2xvZy5jOjE4MTcKK21zZ2lkICItLW5hbWUtb25seSBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICItLW5hbWUtb25seSBiaXIgYW5sYW0gaWZhZGUgZXRtaXlvciIKKworIzogYnVpbHRpbi9sb2cuYzoxODE5Cittc2dpZCAiLS1uYW1lLXN0YXR1cyBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICItLW5hbWUtc3RhdHVzIGJpciBhbmxhbSBpZmFkZSBldG1peW9yIgorCisjOiBidWlsdGluL2xvZy5jOjE4MjEKK21zZ2lkICItLWNoZWNrIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgIi0tY2hlY2sgYmlyIGFubGFtIGlmYWRlIGV0bWl5b3IiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTg1NAorbXNnaWQgInN0YW5kYXJkIG91dHB1dCwgb3IgZGlyZWN0b3J5LCB3aGljaCBvbmU/IgorbXNnc3RyICJzdGFuZGFydCDDp8Sxa3TEsSB2ZXlhIGRpemluLCBoYW5naXNpPyIKKworIzogYnVpbHRpbi9sb2cuYzoxOTU4Cittc2dpZCAiLS1pbnRlcmRpZmYgcmVxdWlyZXMgLS1jb3Zlci1sZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgorbXNnc3RyICItLWludGVyZGlmZiwgLS1jb3Zlci1sZXR0ZXIgdmV5YSB0ZWsgeWFtYSBnZXJla3Rpcml5b3IiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2MgorbXNnaWQgIkludGVyZGlmZjoiCittc2dzdHIgIkludGVyZGlmZjoiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnRlcmRpZmYgYWdhaW5zdCB2JWQ6IgorbXNnc3RyICJJbnRlcmRpZmYgdiVkIGthcsWfxLFzxLFuZGE6IgorCisjOiBidWlsdGluL2xvZy5jOjE5NjkKK21zZ2lkICItLWNyZWF0aW9uLWZhY3RvciByZXF1aXJlcyAtLXJhbmdlLWRpZmYiCittc2dzdHIgIi0tY3JlYXRpb24tZmFjdG9yLCAtLXJhbmdlLWRpZmYgZ2VyZWt0aXJpeW9yIgorCisjOiBidWlsdGluL2xvZy5jOjE5NzMKK21zZ2lkICItLXJhbmdlLWRpZmYgcmVxdWlyZXMgLS1jb3Zlci1sZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgorbXNnc3RyICItLXJhbmdlLWRpZmYsIC0tY292ZXItbGV0dGVyIHZleWEgdGVrIHlhbWEgZ2VyZWt0aXJpeW9yIgorCisjOiBidWlsdGluL2xvZy5jOjE5ODEKK21zZ2lkICJSYW5nZS1kaWZmOiIKK21zZ3N0ciAiUmFuZ2UtZGlmZjoiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTk4MgorIywgYy1mb3JtYXQKK21zZ2lkICJSYW5nZS1kaWZmIGFnYWluc3QgdiVkOiIKK21zZ3N0ciAiUmFuZ2UtZGlmZiB2JWQga2FyxZ/EsXPEsW5kYToiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTk5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBzaWduYXR1cmUgZmlsZSAnJXMnIgorbXNnc3RyICInJXMnIGltemEgZG9zeWFzxLEgb2t1bmFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MjAyOQorbXNnaWQgIkdlbmVyYXRpbmcgcGF0Y2hlcyIKK21zZ3N0ciAiWWFtYWxhciBvbHXFn3R1cnVsdXlvciIKKworIzogYnVpbHRpbi9sb2cuYzoyMDczCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBvdXRwdXQgZmlsZXMiCittc2dzdHIgIsOnxLFrdMSxIGRvc3lhbGFyxLEgb2x1xZ90dXJ1bGFtYWTEsSIKKworIzogYnVpbHRpbi9sb2cuYzoyMTMyCittc2dpZCAiZ2l0IGNoZXJyeSBbLXZdIFs8dXBzdHJlYW0+IFs8aGVhZD4gWzxsaW1pdD5dXV0iCittc2dzdHIgImdpdCBjaGVycnkgWy12XSBbPMO8c3RrYXluYWs+IFs8ZGFsLXVjdT4gWzxzxLFuxLFyPl1dXSIKKworIzogYnVpbHRpbi9sb2cuYzoyMTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3VsZCBub3QgZmluZCBhIHRyYWNrZWQgcmVtb3RlIGJyYW5jaCwgcGxlYXNlIHNwZWNpZnkgPHVwc3RyZWFtPiBtYW51YWxseS5cbiIKK21zZ3N0ciAixLB6bGVuZW4gYmlyIHV6YWsgZGFsIGJ1bHVuYW1hZMSxLCBsw7x0ZmVuIGVsIGlsZSA8w7xzdGtheW5haz4gYmVsaXJ0aW4uXG4iCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo0NzAKK21zZ2lkICJnaXQgbHMtZmlsZXMgWzxvcHRpb25zPl0gWzxmaWxlPi4uLl0iCittc2dzdHIgImdpdCBscy1maWxlcyBbPHNlw6dlbmVrbGVyPl0gWzxkb3N5YT4uLi5dIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTI2Cittc2dpZCAiaWRlbnRpZnkgdGhlIGZpbGUgc3RhdHVzIHdpdGggdGFncyIKK21zZ3N0ciAiZG9zeWEgZHVydW11bnUgZXRpa2V0bGVybGUgdGFuxLFtbGEiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjgKK21zZ2lkICJ1c2UgbG93ZXJjYXNlIGxldHRlcnMgZm9yICdhc3N1bWUgdW5jaGFuZ2VkJyBmaWxlcyIKK21zZ3N0ciAiJ2RlxJ9pxZ90aXJpbG1lZGnEn2kgZMO8xZ/DvG7DvGxlbicgZG9zeWFsYXLEsSBrw7zDp8O8ayBoYXJmbGVybGUgZ8O2c3RlciIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMAorbXNnaWQgInVzZSBsb3dlcmNhc2UgbGV0dGVycyBmb3IgJ2ZzbW9uaXRvciBjbGVhbicgZmlsZXMiCittc2dzdHIgIidmc21vbml0b3IgY2xlYW4nIGRvc3lhbGFyxLFuxLEga8O8w6fDvGsgaGFyZmxlcmxlIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzIKK21zZ2lkICJzaG93IGNhY2hlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IChkZWZhdWx0KSIKK21zZ3N0ciAiw7ZuYmVsbGXEn2UgYWzEsW5hbiBkb3N5YWxhcsSxIMOnxLFrdMSxZGEgZ8O2c3RlciAow7ZudGFuxLFtbMSxKSIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNAorbXNnaWQgInNob3cgZGVsZXRlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgorbXNnc3RyICJzaWxpbmVuIGRvc3lhbGFyxLEgw6fEsWt0xLFkYSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTM2Cittc2dpZCAic2hvdyBtb2RpZmllZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgorbXNnc3RyICJkZcSfacWfdGlyaWxlbiBkb3N5YWxhcsSxIMOnxLFrdMSxZGEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOAorbXNnaWQgInNob3cgb3RoZXIgZmlsZXMgaW4gdGhlIG91dHB1dCIKK21zZ3N0ciAiZGnEn2VyIGRvc3lhbGFyxLEgw6fEsWt0xLFkYSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQwCittc2dpZCAic2hvdyBpZ25vcmVkIGZpbGVzIGluIHRoZSBvdXRwdXQiCittc2dzdHIgInlvayBzYXnEsWxhbiBkb3N5YWxhcsSxIMOnxLFrdMSxZGEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MworbXNnaWQgInNob3cgc3RhZ2VkIGNvbnRlbnRzJyBvYmplY3QgbmFtZSBpbiB0aGUgb3V0cHV0IgorbXNnc3RyICJoYXrEsXJsYW5hbiBpw6dlcmnEn2luIG5lc25lIGFkxLFuxLEgw6fEsWt0xLFkYSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ1Cittc2dpZCAic2hvdyBmaWxlcyBvbiB0aGUgZmlsZXN5c3RlbSB0aGF0IG5lZWQgdG8gYmUgcmVtb3ZlZCIKK21zZ3N0ciAiZG9zeWEgc2lzdGVtaW5kZWtpIGthbGTEsXLEsWxtYXPEsSBnZXJla2VuIGRvc3lhbGFyxLEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU0NworbXNnaWQgInNob3cgJ290aGVyJyBkaXJlY3RvcmllcycgbmFtZXMgb25seSIKK21zZ3N0ciAiJ2RpxJ9lcicgZGl6aW5sZXJpbiB5YWxuxLF6Y2EgYWTEsW7EsSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ5Cittc2dpZCAic2hvdyBsaW5lIGVuZGluZ3Mgb2YgZmlsZXMiCittc2dzdHIgImRvc3lhbGFyxLFuIHNhdMSxciBzb25sYXLEsW7EsSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTUxCittc2dpZCAiZG9uJ3Qgc2hvdyBlbXB0eSBkaXJlY3RvcmllcyIKK21zZ3N0ciAiYm/FnyBkaXppbmxlcmkgZ8O2c3Rlcm1lIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU0Cittc2dpZCAic2hvdyB1bm1lcmdlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgorbXNnc3RyICJiaXJsZcWfdGlyaWxtZW1pxZ8gZG9zeWFsYXLEsSDDp8Sxa3TEsWRhIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTYKK21zZ2lkICJzaG93IHJlc29sdmUtdW5kbyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiJ3Jlc29sdmUtdW5kbycgYmlsZ2lzaW5pIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTgKK21zZ2lkICJza2lwIGZpbGVzIG1hdGNoaW5nIHBhdHRlcm4iCittc2dzdHIgImRpemdpIGlsZSBlxZ9sZcWfZW4gZG9zeWFsYXLEsSBhdGxhIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTYxCittc2dpZCAiZXhjbHVkZSBwYXR0ZXJucyBhcmUgcmVhZCBmcm9tIDxmaWxlPiIKK21zZ3N0ciAiaGFyacOnIHR1dG1hIGRpemdpbGVyaSA8ZG9zeWE+J2RhbiBva3VudXlvciIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NAorbXNnaWQgInJlYWQgYWRkaXRpb25hbCBwZXItZGlyZWN0b3J5IGV4Y2x1ZGUgcGF0dGVybnMgaW4gPGZpbGU+IgorbXNnc3RyICJlayBkaXppbiBiYcWfxLEgaGFyacOnIHR1dG1hIGRpemdpbGVyaW5pIDxkb3N5YT4nZGFuIG9rdSIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NgorbXNnaWQgImFkZCB0aGUgc3RhbmRhcmQgZ2l0IGV4Y2x1c2lvbnMiCittc2dzdHIgInN0YW5kYXJ0IGdpdCBoYXJpw6cgdHV0bWFsYXLEsW7EsSBla2xlIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTcwCittc2dpZCAibWFrZSB0aGUgb3V0cHV0IHJlbGF0aXZlIHRvIHRoZSBwcm9qZWN0IHRvcCBkaXJlY3RvcnkiCittc2dzdHIgIsOnxLFrdMSxecSxIGVuIMO8c3QgcHJvamUgZGl6aW5pbmUgZ8O2cmVjZWxpIG9sYXJhayB5YXAiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzMKK21zZ2lkICJyZWN1cnNlIHRocm91Z2ggc3VibW9kdWxlcyIKK21zZ3N0ciAiYWx0bW9kw7xsbGVyIGnDp2luZGVuIMO2enlpbmVsZSIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NQorbXNnaWQgImlmIGFueSA8ZmlsZT4gaXMgbm90IGluIHRoZSBpbmRleCwgdHJlYXQgdGhpcyBhcyBhbiBlcnJvciIKK21zZ3N0ciAiZcSfZXIgYmlyIDxkb3N5YT4gaW5kZWtzdGUgZGXEn2lsc2UgYnVudSBiaXIgaGF0YSBvbGFyYWsgZ8O2ciIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NgorbXNnaWQgInRyZWUtaXNoIgorbXNnc3RyICJhxJ9hY8SxbXPEsSIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NworbXNnaWQgInByZXRlbmQgdGhhdCBwYXRocyByZW1vdmVkIHNpbmNlIDx0cmVlLWlzaD4gYXJlIHN0aWxsIHByZXNlbnQiCittc2dzdHIgIjxhxJ9hY8SxbXPEsT4nZGFuIGJ1IHlhbmEga2FsZMSxcsSxbGFuIHlvbGxhcsSxbiBow6Jsw6IgdmFyIG9sZHXEn3VudSB2YXJzYXkiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzkKK21zZ2lkICJzaG93IGRlYnVnZ2luZyBkYXRhIgorbXNnc3RyICJoYXRhIGF5xLFrbGFtYSB2ZXJpc2luaSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjkKK21zZ2lkICIiCisiZ2l0IGxzLXJlbW90ZSBbLS1oZWFkc10gWy0tdGFnc10gWy0tcmVmc10gWy0tdXBsb2FkLXBhY2s9PGV4ZWM+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgIFstcSB8IC0tcXVpZXRdIFstLWV4aXQtY29kZV0gWy0tZ2V0LXVybF1cbiIKKyIgICAgICAgICAgICAgICAgICAgICBbLS1zeW1yZWZdIFs8cmVwb3NpdG9yeT4gWzxyZWZzPi4uLl1dIgorbXNnc3RyICIiCisiZ2l0IGxzLXJlbW90ZSBbLS1oZWFkc10gWy0tdGFnc10gWy0tcmVmc10gWy0tdXBsb2FkLXBhY2s9PGV4ZWM+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgIFstcSB8IC0tcXVpZXRdIFstLWV4aXQtY29kZV0gWy0tZ2V0LXVybF1cbiIKKyIgICAgICAgICAgICAgICAgICAgICBbLS1zeW1yZWZdIFs8ZGVwbz4gWzxiYcWfdnVydWxhcj4uLi5dXSIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo1OQorbXNnaWQgImRvIG5vdCBwcmludCByZW1vdGUgVVJMIgorbXNnc3RyICJ1emFrIGtvbnVtIFVSTCdzaW5pIHlhemTEsXJtYSIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2MCBidWlsdGluL2xzLXJlbW90ZS5jOjYyIGJ1aWx0aW4vcmViYXNlLmM6MTU2MQorbXNnaWQgImV4ZWMiCittc2dzdHIgIsOnYWzEscWfdMSxciIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2MSBidWlsdGluL2xzLXJlbW90ZS5jOjYzCittc2dpZCAicGF0aCBvZiBnaXQtdXBsb2FkLXBhY2sgb24gdGhlIHJlbW90ZSBob3N0IgorbXNnc3RyICJ1emFrIGtvbnVtIG1ha2luZXNpbmRla2kgZ2l0LXVwbG9hZC1wYWNrIHlvbHUiCisKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjUKK21zZ2lkICJsaW1pdCB0byB0YWdzIgorbXNnc3RyICJldGlrZXRsZXJlIGvEsXPEsXRsYSIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2NgorbXNnaWQgImxpbWl0IHRvIGhlYWRzIgorbXNnc3RyICJ1w6cgZ8O2bmRlcmlsZXJlIGvEsXPEsXRsYSIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2NworbXNnaWQgImRvIG5vdCBzaG93IHBlZWxlZCB0YWdzIgorbXNnc3RyICJzb3l1bG11xZ8gZXRpa2V0bGVyaSBnw7ZzdGVybWUiCisKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjkKK21zZ2lkICJ0YWtlIHVybC48YmFzZT4uaW5zdGVhZE9mIGludG8gYWNjb3VudCIKK21zZ3N0ciAidXJsLjx0ZW1lbD4uaW5zdGVhZE9mJ3UgZGlra2F0ZSBhbCIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3MgorbXNnaWQgImV4aXQgd2l0aCBleGl0IGNvZGUgMiBpZiBubyBtYXRjaGluZyByZWZzIGFyZSBmb3VuZCIKK21zZ3N0ciAiZcWfbGXFn2VuIGJhxZ92dXJ1IGJ1bHVuYW1henNhIDIgbnVtYXJhbMSxIMOnxLFrxLHFnyBrb2R1eWxhIMOnxLFrIgorCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjc1Cittc2dpZCAic2hvdyB1bmRlcmx5aW5nIHJlZiBpbiBhZGRpdGlvbiB0byB0aGUgb2JqZWN0IHBvaW50ZWQgYnkgaXQiCittc2dzdHIgImnFn2FyZXQgZXR0acSfaSBuZXNuZXllIGVrIG9sYXJhayBhbHTEsW5kYSB5YXRhbiBiYcWfdnVydXl1IGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vbHMtdHJlZS5jOjMwCittc2dpZCAiZ2l0IGxzLXRyZWUgWzxvcHRpb25zPl0gPHRyZWUtaXNoPiBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IGxzLXRyZWUgWzxzZcOnZW5la2xlcj5dIDxhxJ9hY8SxbXPEsT4gWzx5b2w+Li4uXSIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTI4Cittc2dpZCAib25seSBzaG93IHRyZWVzIgorbXNnc3RyICJ5YWxuxLF6Y2EgYcSfYcOnbGFyxLEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTMwCittc2dpZCAicmVjdXJzZSBpbnRvIHN1YnRyZWVzIgorbXNnc3RyICJhbHRhxJ9hw6dsYXJhIMO2enlpbmVsZSIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTMyCittc2dpZCAic2hvdyB0cmVlcyB3aGVuIHJlY3Vyc2luZyIKK21zZ3N0ciAiw7Z6eWluZWxlcmtlbiBhxJ9hw6dsYXLEsSBnw7ZzdGVyIgorCisjOiBidWlsdGluL2xzLXRyZWUuYzoxMzUKK21zZ2lkICJ0ZXJtaW5hdGUgZW50cmllcyB3aXRoIE5VTCBieXRlIgorbXNnc3RyICJnaXJkaWxlcmkgTlVMIGJheXTEsSBpbGUgc29ubGFuZMSxciIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTM2Cittc2dpZCAiaW5jbHVkZSBvYmplY3Qgc2l6ZSIKK21zZ3N0ciAibmVzbmUgYm95dXR1bnUgacOnZXIiCisKKyM6IGJ1aWx0aW4vbHMtdHJlZS5jOjEzOCBidWlsdGluL2xzLXRyZWUuYzoxNDAKK21zZ2lkICJsaXN0IG9ubHkgZmlsZW5hbWVzIgorbXNnc3RyICJ5YWxuxLF6Y2EgZG9zeWEgYWRsYXLEsW7EsSBsaXN0ZWxlIgorCisjOiBidWlsdGluL2xzLXRyZWUuYzoxNDMKK21zZ2lkICJ1c2UgZnVsbCBwYXRoIG5hbWVzIgorbXNnc3RyICJ0YW0geW9sIGFkbGFyxLFuxLEga3VsbGFuIgorCisjOiBidWlsdGluL2xzLXRyZWUuYzoxNDUKK21zZ2lkICJsaXN0IGVudGlyZSB0cmVlOyBub3QganVzdCBjdXJyZW50IGRpcmVjdG9yeSAoaW1wbGllcyAtLWZ1bGwtbmFtZSkiCittc2dzdHIgInlhbG7EsXpjYSBnZcOnZXJsaSBkaXppbmkgZGXEn2lsIHTDvG0gYcSfYWPEsSBsaXN0ZWxlICgtLWZ1bGwtbmFtZSBpbWEgZWRlcikiCisKKyM6IGJ1aWx0aW4vbWFpbHNwbGl0LmM6MjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IG1ib3g6ICclcyciCittc2dzdHIgImJvxZ8gbWJveDogJyVzJyIKKworIzogYnVpbHRpbi9tZXJnZS5jOjU1Cittc2dpZCAiZ2l0IG1lcmdlIFs8b3B0aW9ucz5dIFs8Y29tbWl0Pi4uLl0iCittc2dzdHIgImdpdCBtZXJnZSBbPHNlw6dlbmVrbGVyPl0gWzxnw7ZuZGVyaT4uLi5dIgorCisjOiBidWlsdGluL21lcmdlLmM6NTYKK21zZ2lkICJnaXQgbWVyZ2UgLS1hYm9ydCIKK21zZ3N0ciAiZ2l0IG1lcmdlIC0tYWJvcnQiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1NworbXNnaWQgImdpdCBtZXJnZSAtLWNvbnRpbnVlIgorbXNnc3RyICJnaXQgbWVyZ2UgLS1jb250aW51ZSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjExOQorbXNnaWQgInN3aXRjaCBgbScgcmVxdWlyZXMgYSB2YWx1ZSIKK21zZ3N0ciAiJ20nIGFuYWh0YXLEsSBiaXIgZGXEn2VyIGdlcmVrdGlyaXlvciIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyByZXF1aXJlcyBhIHZhbHVlIgorbXNnc3RyICInJXMnIHNlw6dlbmXEn2kgYmlyIGRlxJ9lciBnZXJla3Rpcml5b3IiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGZpbmQgbWVyZ2Ugc3RyYXRlZ3kgJyVzJy5cbiIKK21zZ3N0ciAiQmlybGXFn3Rpcm1lIHN0cmF0ZWppc2kgJyVzJyBidWx1bmFtYWTEsS5cbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJBdmFpbGFibGUgc3RyYXRlZ2llcyBhcmU6IgorbXNnc3RyICJLdWxsYW7EsWxhYmlsaXIgc3RyYXRlamlsZXI6IgorCisjOiBidWlsdGluL21lcmdlLmM6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgIkF2YWlsYWJsZSBjdXN0b20gc3RyYXRlZ2llcyBhcmU6IgorbXNnc3RyICJLdWxsYW7EsWxhYmlsaXIgw7Z6ZWwgc3RyYXRlamlsZXI6IgorCisjOiBidWlsdGluL21lcmdlLmM6MjQ1IGJ1aWx0aW4vcHVsbC5jOjEzMgorbXNnaWQgImRvIG5vdCBzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCittc2dzdHIgImJpcmxlxZ90aXJtZW5pbiBzb251bmRhIGJpciBkaWZmc3RhdCBnw7ZzdGVybWUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDggYnVpbHRpbi9wdWxsLmM6MTM1Cittc2dpZCAic2hvdyBhIGRpZmZzdGF0IGF0IHRoZSBlbmQgb2YgdGhlIG1lcmdlIgorbXNnc3RyICJiaXJsZcWfdGlybWVuaW4gc29udW5kYSBiaXIgZGlmZnN0YXQgZ8O2c3RlciIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI0OSBidWlsdGluL3B1bGwuYzoxMzgKK21zZ2lkICIoc3lub255bSB0byAtLXN0YXQpIgorbXNnc3RyICIoLS1zdGF0IGXFn2FubGFtbMSxc8SxKSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI1MSBidWlsdGluL3B1bGwuYzoxNDEKK21zZ2lkICJhZGQgKGF0IG1vc3QgPG4+KSBlbnRyaWVzIGZyb20gc2hvcnRsb2cgdG8gbWVyZ2UgY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIiIKKyJrxLFzYSBnw7xubMO8a3RlbiBiaXJsZcWfdGlybWUgZ8O2bmRlcmlzaSBpbGV0aXNpbmUgZ2lyZGlsZXIgKGVuIMOnb2sgPG4+KSBla2xlIgorCisjOiBidWlsdGluL21lcmdlLmM6MjU0IGJ1aWx0aW4vcHVsbC5jOjE0NworbXNnaWQgImNyZWF0ZSBhIHNpbmdsZSBjb21taXQgaW5zdGVhZCBvZiBkb2luZyBhIG1lcmdlIgorbXNnc3RyICJiaXIgYmlybGXFn3Rpcm1lIHllcmluZSB0ZWsgYmlyIGfDtm5kZXJpIG9sdcWfdHVyIgorCisjOiBidWlsdGluL21lcmdlLmM6MjU2IGJ1aWx0aW4vcHVsbC5jOjE1MAorbXNnaWQgInBlcmZvcm0gYSBjb21taXQgaWYgdGhlIG1lcmdlIHN1Y2NlZWRzIChkZWZhdWx0KSIKK21zZ3N0ciAiYmlybGXFn3Rpcm1lIGJhxZ9hcsSxbMSxIG9sdXJzYSBiaXIgZ8O2bmRlcmkgZ2Vyw6dla2xlxZ90aXIgKMO2bnRhbsSxbWzEsSkiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTggYnVpbHRpbi9wdWxsLmM6MTUzCittc2dpZCAiZWRpdCBtZXNzYWdlIGJlZm9yZSBjb21taXR0aW5nIgorbXNnc3RyICJnw7ZuZGVybWVkZW4gw7ZuY2UgaWxldGl5aSBkw7x6ZW5sZSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI2MAorbXNnaWQgImFsbG93IGZhc3QtZm9yd2FyZCAoZGVmYXVsdCkiCittc2dzdHIgImlsZXJpIHNhcsSxbWEgaXppbiB2ZXIgKMO2bnRhbsSxbWzEsSkiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjIgYnVpbHRpbi9wdWxsLmM6MTYwCittc2dpZCAiYWJvcnQgaWYgZmFzdC1mb3J3YXJkIGlzIG5vdCBwb3NzaWJsZSIKK21zZ3N0ciAiaWxlcmkgc2FyxLFtIG9sYW5ha2zEsSBkZcSfaWxzZSBpcHRhbCBldCIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI2NiBidWlsdGluL3B1bGwuYzoxNjMKK21zZ2lkICJ2ZXJpZnkgdGhhdCB0aGUgbmFtZWQgY29tbWl0IGhhcyBhIHZhbGlkIEdQRyBzaWduYXR1cmUiCittc2dzdHIgImFkxLEgdmVyaWxlbiBnw7ZuZGVyaW5pbiBnZcOnZXJsaSBiaXIgR1BHIGltemFzxLEgb2xkdcSfdW51IGRvxJ9ydWxhIgorCisjOiBidWlsdGluL21lcmdlLmM6MjY3IGJ1aWx0aW4vbm90ZXMuYzo3ODcgYnVpbHRpbi9wdWxsLmM6MTY3CisjOiBidWlsdGluL3JlYmFzZS5jOjUyMCBidWlsdGluL3JlYmFzZS5jOjE1NzUgYnVpbHRpbi9yZXZlcnQuYzoxMTQKK21zZ2lkICJzdHJhdGVneSIKK21zZ3N0ciAic3RyYXRlamkiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjggYnVpbHRpbi9wdWxsLmM6MTY4Cittc2dpZCAibWVyZ2Ugc3RyYXRlZ3kgdG8gdXNlIgorbXNnc3RyICJrdWxsYW7EsWxhY2FrIGJpcmxlxZ90aXJtZSBzdHJhdGVqaXNpIgorCisjOiBidWlsdGluL21lcmdlLmM6MjY5IGJ1aWx0aW4vcHVsbC5jOjE3MQorbXNnaWQgIm9wdGlvbj12YWx1ZSIKK21zZ3N0ciAic2XDp2VuZWs9ZGXEn2VyIgorCisjOiBidWlsdGluL21lcmdlLmM6MjcwIGJ1aWx0aW4vcHVsbC5jOjE3MgorbXNnaWQgIm9wdGlvbiBmb3Igc2VsZWN0ZWQgbWVyZ2Ugc3RyYXRlZ3kiCittc2dzdHIgInNlw6dpbGkgYmlybGXFn3Rpcm1lIHN0cmF0ZWppc2kgacOnaW4gc2XDp2VuZWtsZXIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzIKK21zZ2lkICJtZXJnZSBjb21taXQgbWVzc2FnZSAoZm9yIGEgbm9uLWZhc3QtZm9yd2FyZCBtZXJnZSkiCittc2dzdHIgIiIKKyJiaXJsZcWfdGlybWUgZ8O2bmRlcmlzaSBpbGV0aXNpIChpbGVyaSBzYXLEsW0gb2xtYXlhbiBiaXIgYmlybGXFn3Rpcm1lIGnDp2luKSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI3OQorbXNnaWQgImFib3J0IHRoZSBjdXJyZW50IGluLXByb2dyZXNzIG1lcmdlIgorbXNnc3RyICJpbGVybGVtZWt0ZSBvbGFuIGdlw6dlcmxpIGJpcmxlxZ90aXJtZXlpIGlwdGFsIGV0IgorCisjOiBidWlsdGluL21lcmdlLmM6MjgxCittc2dpZCAiLS1hYm9ydCBidXQgbGVhdmUgaW5kZXggYW5kIHdvcmtpbmcgdHJlZSBhbG9uZSIKK21zZ3N0ciAiLS1hYm9ydCwgYW5jYWsgaW5kZWtzaSB2ZSDDp2FsxLHFn21hIGHEn2FjxLFuxLEgZGXEn2nFn3Rpcm1lZGVuIGLEsXJha8SxbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI4MworbXNnaWQgImNvbnRpbnVlIHRoZSBjdXJyZW50IGluLXByb2dyZXNzIG1lcmdlIgorbXNnc3RyICJpbGVybGVtZWt0ZSBvbGFuIGdlw6dlcmxpIGJpcmxlxZ90aXJtZXlpIHPDvHJkw7xyw7xuIgorCisjOiBidWlsdGluL21lcmdlLmM6Mjg1IGJ1aWx0aW4vcHVsbC5jOjE3OQorbXNnaWQgImFsbG93IG1lcmdpbmcgdW5yZWxhdGVkIGhpc3RvcmllcyIKK21zZ3N0ciAiYmlyYmlyaXlsZSBpbGnFn2tpc2kgb2xtYXlhbiBnZcOnbWnFn2xlcmluIGJpcmxlxZ90aXJpbG1lc2luZSBpemluIHZlciIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI5MQorbXNnaWQgImJ5cGFzcyBwcmUtbWVyZ2UtY29tbWl0IGFuZCBjb21taXQtbXNnIGhvb2tzIgorbXNnc3RyICJwcmUtbWVyZ2UtY29tbWl0IHZlIGNvbW1pdC1tc2cga2FuY2FsYXLEsW7EsSBhdGxhIgorCisjOiBidWlsdGluL21lcmdlLmM6MzA4Cittc2dpZCAiY291bGQgbm90IHJ1biBzdGFzaC4iCittc2dzdHIgInp1bGEgYWzEsW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMTMKK21zZ2lkICJzdGFzaCBmYWlsZWQiCittc2dzdHIgInp1bGEgYmHFn2FyxLFzxLF6IG9sZHUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0OiAlcyIKK21zZ3N0ciAiZ2XDp2VybGkgYmlyIG5lc25lIGRlxJ9pbDogJXMiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozNDAgYnVpbHRpbi9tZXJnZS5jOjM1NworbXNnaWQgInJlYWQtdHJlZSBmYWlsZWQiCittc2dzdHIgInJlYWQtdHJlZSBiYcWfYXLEsXPEsXogb2xkdSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjM4NworbXNnaWQgIiAobm90aGluZyB0byBzcXVhc2gpIgorbXNnc3RyICIgKHTEsWvEscWfdMSxcsSxbGFjYWsgYmlyIMWfZXkgeW9rKSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjM5OAorIywgYy1mb3JtYXQKK21zZ2lkICJTcXVhc2ggY29tbWl0IC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCittc2dzdHIgIlTEsWvEscWfdMSxcm1hIGfDtm5kZXJpc2kgLS0gSEVBRCBnw7xuY2VsbGVubWl5b3JcbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBtZXJnZSBtZXNzYWdlIC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCittc2dzdHIgIkJpcmxlxZ90aXJtZSBpbGV0aXNpIHlvayAtLSBIRUFEIGfDvG5jZWxsZW5taXlvclxuIgorCisjOiBidWlsdGluL21lcmdlLmM6NDk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgcG9pbnQgdG8gYSBjb21taXQiCittc2dzdHIgIiclcycgYmlyIGfDtm5kZXJpeWUgacWfYXJldCBldG1peW9yIgorCisjOiBidWlsdGluL21lcmdlLmM6NTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkJhZCBicmFuY2guJXMubWVyZ2VvcHRpb25zIHN0cmluZzogJXMiCittc2dzdHIgIkhhdGFsxLEgYnJhbmNoLiVzLm1lcmdlb3B0aW9ucyBkaXppc2k6ICVzIgorCisjOiBidWlsdGluL21lcmdlLmM6NzA4Cittc2dpZCAiTm90IGhhbmRsaW5nIGFueXRoaW5nIG90aGVyIHRoYW4gdHdvIGhlYWRzIG1lcmdlLiIKK21zZ3N0ciAixLBraSB1w6cgZ8O2bmRlcmkgYmlybGXFn3Rpcm1lc2kgZMSxxZ/EsW5kYSBiaXIgxZ9leSB5YXDEsWxtxLF5b3IuIgorCisjOiBidWlsdGluL21lcmdlLmM6NzIyCisjLCBjLWZvcm1hdAorbXNnaWQgIlVua25vd24gb3B0aW9uIGZvciBtZXJnZS1yZWN1cnNpdmU6IC1YJXMiCittc2dzdHIgIm1lcmdlLXJlY3Vyc2l2ZSBpw6dpbiBnZcOnZXJzaXogc2XDp2VuZWs6IC1YJXMiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlICVzIgorbXNnc3RyICIlcyB5YXrEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL21lcmdlLmM6Nzg5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCByZWFkIGZyb20gJyVzJyIKK21zZ3N0ciAixZ51cmFkYW4gb2t1bmFtYWTEsTogJyVzJyIKKworIzogYnVpbHRpbi9tZXJnZS5jOjc5OAorIywgYy1mb3JtYXQKK21zZ2lkICJOb3QgY29tbWl0dGluZyBtZXJnZTsgdXNlICdnaXQgY29tbWl0JyB0byBjb21wbGV0ZSB0aGUgbWVyZ2UuXG4iCittc2dzdHIgIkJpcmxlxZ90aXJtZSBnw7ZuZGVyaWxtaXlvciwgdGFtYW1sYW1hayBpw6dpbiAnZ2l0IGNvbW1pdCcga3VsbGFuxLFuLlxuIgorCisjOiBidWlsdGluL21lcmdlLmM6ODA0Cittc2dpZCAiIgorIlBsZWFzZSBlbnRlciBhIGNvbW1pdCBtZXNzYWdlIHRvIGV4cGxhaW4gd2h5IHRoaXMgbWVyZ2UgaXMgbmVjZXNzYXJ5LFxuIgorImVzcGVjaWFsbHkgaWYgaXQgbWVyZ2VzIGFuIHVwZGF0ZWQgdXBzdHJlYW0gaW50byBhIHRvcGljIGJyYW5jaC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkJ1IGJpcmxlxZ90aXJtZW5pbiBuZWRlbiBnZXJla2xpIG9sZHXEn3VudSBhw6fEsWtsYW1hayBpw6dpbiBiaXIgZ8O2bmRlcmkgaWxldGlzaVxuIgorImdpcmluLCDDtnplbGxpa2xlIGfDvG5jZWxsZW5tacWfIGJpciDDvHN0a2F5bmHEn8SxIGtpxZ9pc2VsIGRhbGEgYmlybGXFn3Rpcml5b3JzYS5cbiIKKyJcbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjgwOQorbXNnaWQgIkFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCittc2dzdHIgIkJvxZ8gYmlyIGlsZXRpIGfDtm5kZXJpeWkgaXB0YWwgZWRlci5cbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjgxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTGluZXMgc3RhcnRpbmcgd2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzXG4iCisidGhlIGNvbW1pdC5cbiIKK21zZ3N0ciAiIgorIiclYycgaWxlIGJhxZ9sYXlhbiBzYXTEsXJsYXIgeW9rIHNhecSxbGFjYWt0xLFyLiBCb8WfIGJpciBpbGV0aSBnw7ZuZGVyaXlpXG4iCisiaXB0YWwgZWRlci5cbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjg2NQorbXNnaWQgIkVtcHR5IGNvbW1pdCBtZXNzYWdlLiIKK21zZ3N0ciAiQm/FnyBnw7ZuZGVyaSBpbGV0aXNpLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjg4MAorIywgYy1mb3JtYXQKK21zZ2lkICJXb25kZXJmdWwuXG4iCittc2dzdHIgIkhhcmlrYS5cbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjk0MQorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRvbWF0aWMgbWVyZ2UgZmFpbGVkOyBmaXggY29uZmxpY3RzIGFuZCB0aGVuIGNvbW1pdCB0aGUgcmVzdWx0LlxuIgorbXNnc3RyICIiCisiT3RvbWF0aWsgYmlybGXFn3Rpcm1lIGJhxZ9hcsSxc8Sxejsgw6dha8SxxZ9tYWxhcsSxIMOnw7Z6w7xuIHZlIHNvbnVjdSBnw7ZuZGVyaW4uXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODAKK21zZ2lkICJObyBjdXJyZW50IGJyYW5jaC4iCittc2dzdHIgIkdlw6dlcmxpIGRhbCB5b2suIgorCisjOiBidWlsdGluL21lcmdlLmM6OTgyCittc2dpZCAiTm8gcmVtb3RlIGZvciB0aGUgY3VycmVudCBicmFuY2guIgorbXNnc3RyICJHZcOnZXJsaSBkYWwgacOnaW4gdXphayBrb251bSB5b2suIgorCisjOiBidWlsdGluL21lcmdlLmM6OTg0Cittc2dpZCAiTm8gZGVmYXVsdCB1cHN0cmVhbSBkZWZpbmVkIGZvciB0aGUgY3VycmVudCBicmFuY2guIgorbXNnc3RyICJHZcOnZXJsaSBkYWwgacOnaW4gw7ZudGFuxLFtbMSxIMO8c3RrYXluYWsgdGFuxLFtbGFubWFtxLHFny4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gcmVtb3RlLXRyYWNraW5nIGJyYW5jaCBmb3IgJXMgZnJvbSAlcyIKK21zZ3N0ciAiJXMgacOnaW4gJXMga29udW11bmRhbiB1emFrIGl6bGV5ZW4gZGFsIHlvayIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEwNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmFkIHZhbHVlICclcycgaW4gZW52aXJvbm1lbnQgJyVzJyIKK21zZ3N0ciAiSGF0YWzEsSBkZcSfZXIgJyVzJywgJyVzJyBvcnRhbcSxbmRhIgorCisjOiBidWlsdGluL21lcmdlLmM6MTE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJub3Qgc29tZXRoaW5nIHdlIGNhbiBtZXJnZSBpbiAlczogJXMiCittc2dzdHIgIiVzIGnDp2luZGUgYmlybGXFn3RpcmViaWxlY2XEn2ltaXogYmlyIMWfZXkgZGXEn2lsOiAlcyIKKworIzogYnVpbHRpbi9tZXJnZS5jOjExODMKK21zZ2lkICJub3Qgc29tZXRoaW5nIHdlIGNhbiBtZXJnZSIKK21zZ3N0ciAiYmlybGXFn3RpcmViaWxlY2XEn2ltaXogYmlyIMWfZXkgZGXEn2lsIgorCisjOiBidWlsdGluL21lcmdlLmM6MTI4NgorbXNnaWQgIi0tYWJvcnQgZXhwZWN0cyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tYWJvcnQgYmlyIGRlxJ9pxZ9rZW4gYmVrbGVtZXoiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjkwCittc2dpZCAiVGhlcmUgaXMgbm8gbWVyZ2UgdG8gYWJvcnQgKE1FUkdFX0hFQUQgbWlzc2luZykuIgorbXNnc3RyICLEsHB0YWwgZWRpbGVjZWsgYmlyIGJpcmxlxZ90aXJtZSB5b2sgKE1FUkdFX0hFQUQgZWtzaWspLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEyOTkKK21zZ2lkICItLXF1aXQgZXhwZWN0cyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tcXVpdCBiaXIgZGXEn2nFn2tlbiBiZWtsZW1leiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzMTIKK21zZ2lkICItLWNvbnRpbnVlIGV4cGVjdHMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLWNvbnRpbnVlIGJpciBkZcSfacWfa2VuIGJla2xlbWV6IgorCisjOiBidWlsdGluL21lcmdlLmM6MTMxNgorbXNnaWQgIlRoZXJlIGlzIG5vIG1lcmdlIGluIHByb2dyZXNzIChNRVJHRV9IRUFEIG1pc3NpbmcpLiIKK21zZ3N0ciAixLBsZXJsZW1la3RlIG9sYW4gYmlyIGJpcmxlxZ90aXJtZSB5b2sgKE1FUkdFX0hFQUQgZWtzaWspLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzMzIKK21zZ2lkICIiCisiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG1lcmdlIChNRVJHRV9IRUFEIGV4aXN0cykuXG4iCisiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSB5b3UgbWVyZ2UuIgorbXNnc3RyICIiCisiQmlybGXFn3Rpcm1lbml6aSBzb251w6dsYW5kxLFybWFkxLFuxLF6IChNRVJHRV9IRUFEIG1ldmN1dCkuXG4iCisiTMO8dGZlbiBiaXJsZcWfdGlybWVkZW4gw7ZuY2UgZGXEn2nFn2lrbGlrbGVyaW5pemkgZ8O2bmRlcmluLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzMzkKK21zZ2lkICIiCisiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIGNoZXJyeS1waWNrIChDSEVSUllfUElDS19IRUFEIGV4aXN0cykuXG4iCisiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSB5b3UgbWVyZ2UuIgorbXNnc3RyICIiCisiU2XDpy1hbCfEsW7EsXrEsSBzb251w6dsYW5kxLFybWFkxLFuxLF6IChDSEVSUllfUElDS19IRUFEIG1ldmN1dCkuXG4iCisiTMO8dGZlbiBiaXJsZcWfdGlybWVkZW4gw7ZuY2UgZGXEn2nFn2lrbGlrbGVyaW5pemkgZ8O2bmRlcmluLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzNDIKK21zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgY2hlcnJ5LXBpY2sgKENIRVJSWV9QSUNLX0hFQUQgZXhpc3RzKS4iCittc2dzdHIgIlNlw6ctYWwnxLFuxLF6xLEgc29udcOnbGFuZMSxcm1hZMSxbsSxeiAoQ0hFUlJZX1BJQ0tfSEVBRCBtZXZjdXQpLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzNTYKK21zZ2lkICJZb3UgY2Fubm90IGNvbWJpbmUgLS1zcXVhc2ggd2l0aCAtLW5vLWZmLiIKK21zZ3N0ciAiLS1zcXVhc2ggaWxlIC0tbm8tZmYgYmlybGlrdGUga3VsbGFuxLFsYW1hei4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzU4Cittc2dpZCAiWW91IGNhbm5vdCBjb21iaW5lIC0tc3F1YXNoIHdpdGggLS1jb21taXQuIgorbXNnc3RyICItLXNxdWFzaCBpbGUgLS1jb21taXQgYmlybGlrdGUga3VsbGFuxLFsYW1hei4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzc0Cittc2dpZCAiTm8gY29tbWl0IHNwZWNpZmllZCBhbmQgbWVyZ2UuZGVmYXVsdFRvVXBzdHJlYW0gbm90IHNldC4iCittc2dzdHIgIkJlbGlydGlsZW4gYmlyIGfDtm5kZXJpIHlvayB2ZSBtZXJnZS5kZWZhdWx0VG9VcHN0cmVhbSBheWFybGFubWFtxLHFny4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzkxCittc2dpZCAiU3F1YXNoIGNvbW1pdCBpbnRvIGVtcHR5IGhlYWQgbm90IHN1cHBvcnRlZCB5ZXQiCittc2dzdHIgIkfDtm5kZXJpeWkgYm/FnyBkYWwgdWN1bmEgdMSxa8SxxZ90xLFybWEgaGVuw7x6IGRlc3Rla2xlbm1peW9yIgorCisjOiBidWlsdGluL21lcmdlLmM6MTM5MworbXNnaWQgIk5vbi1mYXN0LWZvcndhcmQgY29tbWl0IGRvZXMgbm90IG1ha2Ugc2Vuc2UgaW50byBhbiBlbXB0eSBoZWFkIgorbXNnc3RyICIiCisixLBsZXJpIHNhcsSxbSBvbG1heWFuIGfDtm5kZXJpeWkgYm/FnyBkYWwgdWN1bmEgeWFwbWFrIGJpciBhbmxhbSBpZmFkZSBldG1peW9yIgorCisjOiBidWlsdGluL21lcmdlLmM6MTM5OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAtIG5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgorbXNnc3RyICIlcyAtIGJpcmxlxZ90aXJlYmlsZWNlxJ9pbWl6IGJpciDFn2V5IGRlxJ9pbCIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE0MDAKK21zZ2lkICJDYW4gbWVyZ2Ugb25seSBleGFjdGx5IG9uZSBjb21taXQgaW50byBlbXB0eSBoZWFkIgorbXNnc3RyICJCb8WfIGRhbCB1Y3VuYSB0YW0gb2xhcmFrIHlhbG7EsXpjYSBiaXIgZ8O2bmRlcmkgYmlybGXFn3RpcmlsZWJpbGlyIgorCisjOiBidWlsdGluL21lcmdlLmM6MTQ4MQorbXNnaWQgInJlZnVzaW5nIHRvIG1lcmdlIHVucmVsYXRlZCBoaXN0b3JpZXMiCittc2dzdHIgImJpcmJpcml5bGUgaWxpxZ9raXNpIG9sbWF5YW4gZ2XDp21pxZ9sZXJpIGJpcmxlxZ90aXJtZSByZWRkZWRpbGl5b3IiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDkwCittc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlLiIKK21zZ3N0ciAiSGVyIMWfZXkgZ8O8bmNlbC4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nICVzLi4lc1xuIgorbXNnc3RyICJHw7xuY2VsbGVuaXlvcjogJXMuLiVzXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgIlRyeWluZyByZWFsbHkgdHJpdmlhbCBpbi1pbmRleCBtZXJnZS4uLlxuIgorbXNnc3RyICJHZXLDp2VrdGVuIMO2bmVtc2l6IGluZGVrcyBpw6dpIGJpcmxlxZ90aXJtZSBkZW5lbml5b3IuLi5cbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm9wZS5cbiIKK21zZ3N0ciAiWW9rLlxuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTU3NAorbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZS4gWWVlYWghIgorbXNnc3RyICJIZXIgxZ9leSBnw7xuY2VsLiDEsMWfdGUgYnUhIgorCisjOiBidWlsdGluL21lcmdlLmM6MTU4MAorbXNnaWQgIk5vdCBwb3NzaWJsZSB0byBmYXN0LWZvcndhcmQsIGFib3J0aW5nLiIKK21zZ3N0ciAixLBsZXJpIHNhcm1hIG9sYW5ha2zEsSBkZcSfaWwsIGlwdGFsIGVkaWxpeW9yLiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE2MDMgYnVpbHRpbi9tZXJnZS5jOjE2NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmV3aW5kaW5nIHRoZSB0cmVlIHRvIHByaXN0aW5lLi4uXG4iCittc2dzdHIgIkHEn2HDpyBib3p1bG1hbcSxxZ8gZHVydW11bmEgZ2VyaSBzYXLEsWzEsXlvci4uLlxuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTYwNworIywgYy1mb3JtYXQKK21zZ2lkICJUcnlpbmcgbWVyZ2Ugc3RyYXRlZ3kgJXMuLi5cbiIKK21zZ3N0ciAiJXMgYmlybGXFn3Rpcm1lIHN0cmF0ZWppc2kgZGVuZW5peW9yLi4uXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIG1lcmdlIHN0cmF0ZWd5IGhhbmRsZWQgdGhlIG1lcmdlLlxuIgorbXNnc3RyICJCaXJsZcWfdGlybWV5aSBoacOnYmlyIGJpcmxlxZ90aXJtZSBzdHJhdGVqaXNpIGnFn2xlbWVkaVxuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTY2MQorIywgYy1mb3JtYXQKK21zZ2lkICJNZXJnZSB3aXRoIHN0cmF0ZWd5ICVzIGZhaWxlZC5cbiIKK21zZ3N0ciAiJXMgc3RyYXRlamlzaSBpbGUgYmlybGXFn3Rpcm1lIGJhxZ9hcsSxc8SxeiBvbGR1LlxuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTY3MAorIywgYy1mb3JtYXQKK21zZ2lkICJVc2luZyB0aGUgJXMgdG8gcHJlcGFyZSByZXNvbHZpbmcgYnkgaGFuZC5cbiIKK21zZ3N0ciAiRWwgaWxlIMOnw7Z6w7xtw7wgaGF6xLFybGFtYWsgacOnaW4gJXMga3VsbGFuxLFsxLF5b3IuXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dG9tYXRpYyBtZXJnZSB3ZW50IHdlbGw7IHN0b3BwZWQgYmVmb3JlIGNvbW1pdHRpbmcgYXMgcmVxdWVzdGVkXG4iCittc2dzdHIgIiIKKyJPdG9tYXRpayBiaXJsZcWfdGlybWUgaXlpIGdlw6d0aTsgaXN0ZW5kacSfaSDDvHplcmUgZ8O2bmRlcm1lIMO2bmNlc2luZGUgZHVyZHUuXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjMyCittc2dpZCAiZ2l0IG1lcmdlLWJhc2UgWy1hIHwgLS1hbGxdIDxjb21taXQ+IDxjb21taXQ+Li4uIgorbXNnc3RyICJnaXQgbWVyZ2UtYmFzZSBbLWEgfCAtLWFsbF0gPGfDtm5kZXJpPiA8Z8O2bmRlcmk+Li4uIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzozMworbXNnaWQgImdpdCBtZXJnZS1iYXNlIFstYSB8IC0tYWxsXSAtLW9jdG9wdXMgPGNvbW1pdD4uLi4iCittc2dzdHIgImdpdCBtZXJnZS1iYXNlIFstYSB8IC0tYWxsXSAtLW9jdG9wdXMgPGfDtm5kZXJpPi4uLiIKKworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MzQKK21zZ2lkICJnaXQgbWVyZ2UtYmFzZSAtLWluZGVwZW5kZW50IDxjb21taXQ+Li4uIgorbXNnc3RyICJnaXQgbWVyZ2UtYmFzZSAtLWluZGVwZW5kZW50IDxnw7ZuZGVyaT4uLi4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjM1Cittc2dpZCAiZ2l0IG1lcmdlLWJhc2UgLS1pcy1hbmNlc3RvciA8Y29tbWl0PiA8Y29tbWl0PiIKK21zZ3N0ciAiZ2l0IG1lcmdlLWJhc2UgLS1pcy1hbmNlc3RvciA8Z8O2bmRlcmk+IDxnw7ZuZGVyaT4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjM2Cittc2dpZCAiZ2l0IG1lcmdlLWJhc2UgLS1mb3JrLXBvaW50IDxyZWY+IFs8Y29tbWl0Pl0iCittc2dzdHIgImdpdCBtZXJnZS1iYXNlIC0tZm9yay1wb2ludCA8YmHFn3Z1cnU+IFs8Z8O2bmRlcmk+XSIKKworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MTUzCittc2dpZCAib3V0cHV0IGFsbCBjb21tb24gYW5jZXN0b3JzIgorbXNnc3RyICJ0w7xtIG9ydGFrIGF0YWxhcsSxIMOnxLFrdMSxIHZlciIKKworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MTU1Cittc2dpZCAiZmluZCBhbmNlc3RvcnMgZm9yIGEgc2luZ2xlIG4td2F5IG1lcmdlIgorbXNnc3RyICJ0ZWsgYmlyIG4gecO2bmzDvCBiaXJsZcWfdGlybWUgacOnaW4gYXRhbGFyxLEgYnVsIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzoxNTcKK21zZ2lkICJsaXN0IHJldnMgbm90IHJlYWNoYWJsZSBmcm9tIG90aGVycyIKK21zZ3N0ciAiYmHFn2thbGFyxLEgdGFyYWbEsW5kYW4gdWxhxZ/EsWxhYmlsaXIgcmV2aXp5b25sYXLEsSBsaXN0ZWxlIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzoxNTkKK21zZ2lkICJpcyB0aGUgZmlyc3Qgb25lIGFuY2VzdG9yIG9mIHRoZSBvdGhlcj8iCittc2dzdHIgImlsa2kgZGnEn2VybGVyaW5pbiBhdGFzxLEgbcSxPyIKKworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MTYxCittc2dpZCAiZmluZCB3aGVyZSA8Y29tbWl0PiBmb3JrZWQgZnJvbSByZWZsb2cgb2YgPHJlZj4iCittc2dzdHIgIjxnw7ZuZGVyaT4nbmluIG5lcmVkZSA8YmHFn3Z1cnU+J251biBnw7xubMO8xJ/DvG5kZW4gw6dhdGFsbGFuZMSxxJ/EsW7EsSBidWwiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjkKK21zZ2lkICIiCisiZ2l0IG1lcmdlLWZpbGUgWzxvcHRpb25zPl0gWy1MIDxuYW1lMT4gWy1MIDxvcmlnPiBbLUwgPG5hbWUyPl1dXSA8ZmlsZTE+ICIKKyI8b3JpZy1maWxlPiA8ZmlsZTI+IgorbXNnc3RyICIiCisiZ2l0IG1lcmdlLWZpbGUgWzxzZcOnZW5la2xlcj5dIFstTCA8YWQxPiBbLUwgPG9yaWo+IFstTCA8YWQyPl1dXSA8ZG9zeWExPiAiCisiPG9yaWotZG9zeWE+IDxkb3N5YTI+IgorCisjOiBidWlsdGluL21lcmdlLWZpbGUuYzozNQorbXNnaWQgInNlbmQgcmVzdWx0cyB0byBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgInNvbnXDp2xhcsSxIHN0YW5kYXJ0IMOnxLFrdMSxeWEgZ8O2bmRlciIKKworIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6MzYKK21zZ2lkICJ1c2UgYSBkaWZmMyBiYXNlZCBtZXJnZSIKK21zZ3N0ciAiZGlmZjMgdGFiYW5sxLEgYmlybGXFn3Rpcm1lIGt1bGxhbiIKKworIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6MzcKK21zZ2lkICJmb3IgY29uZmxpY3RzLCB1c2Ugb3VyIHZlcnNpb24iCittc2dzdHIgIsOnYWvEscWfbWFsYXJkYSBiaXppbSBzw7xyw7xtw7wga3VsbGFuIgorCisjOiBidWlsdGluL21lcmdlLWZpbGUuYzozOQorbXNnaWQgImZvciBjb25mbGljdHMsIHVzZSB0aGVpciB2ZXJzaW9uIgorbXNnc3RyICLDp2FrxLHFn21hbGFyZGEgb25sYXLEsW4gc8O8csO8bcO8bsO8IGt1bGxhbiIKKworIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6NDEKK21zZ2lkICJmb3IgY29uZmxpY3RzLCB1c2UgYSB1bmlvbiB2ZXJzaW9uIgorbXNnc3RyICLDp2FrxLHFn21hbGFyZGEgYmlybGlrIG9sbXXFnyBiaXIgc8O8csO8bSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjQ0Cittc2dpZCAiZm9yIGNvbmZsaWN0cywgdXNlIHRoaXMgbWFya2VyIHNpemUiCittc2dzdHIgIsOnYWvEscWfbWFsYXJkYSBidSBpbWxleWljaSBib3l1dHVudSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjQ1Cittc2dpZCAiZG8gbm90IHdhcm4gYWJvdXQgY29uZmxpY3RzIgorbXNnc3RyICLDp2FrxLHFn21hbGFyIGhha2vEsW5kYSB1eWFybWEiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjQ3Cittc2dpZCAic2V0IGxhYmVscyBmb3IgZmlsZTEvb3JpZy1maWxlL2ZpbGUyIgorbXNnc3RyICJmaWxlMS9vcmlnLWZpbGUvZmlsZTIgacOnaW4gZXRpa2V0bGVyIHlhcMSxxZ90xLFyIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uICVzIgorbXNnc3RyICJiaWxpbm1leWVuIHNlw6dlbmVrICVzIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJyIKK21zZ3N0ciAiJyVzJyBuZXNuZXNpIGF5csSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIGJhc2UuIElnbm9yaW5nICVzLiIKK21zZ2lkX3BsdXJhbCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgYmFzZXMuIElnbm9yaW5nICVzLiIKK21zZ3N0clswXSAiJWQgdGFiYW5kYW4gZmF6bGFzxLEgacWfbGVuZW1peW9yLiAlcyB5b2sgc2F5xLFsxLF5b3IuIgorbXNnc3RyWzFdICIlZCB0YWJhbmRhbiBmYXpsYXPEsSBpxZ9sZW5lbWl5b3IuICVzIHlvayBzYXnEsWzEsXlvci4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjUKK21zZ2lkICJub3QgaGFuZGxpbmcgYW55dGhpbmcgb3RoZXIgdGhhbiB0d28gaGVhZHMgbWVyZ2UuIgorbXNnc3RyICJpa2kgZGFsIHVjdSBiaXJsZcWfdGlybWVzaW5kZW4gYmHFn2thIGJpciDFn2V5IGnFn2xlbm1peW9yIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjc0IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlc29sdmUgcmVmICclcyciCittc2dzdHIgIiclcycgYmHFn3Z1cnVzdSDDp8O2esO8bGVtZWRpIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIk1lcmdpbmcgJXMgd2l0aCAlc1xuIgorbXNnc3RyICIlcywgJXMgaWxlIGJpcmxlxZ90aXJpbGl5b3JcbiIKKworIzogYnVpbHRpbi9ta3RyZWUuYzo2NgorbXNnaWQgImdpdCBta3RyZWUgWy16XSBbLS1taXNzaW5nXSBbLS1iYXRjaF0iCittc2dzdHIgImdpdCBta3RyZWUgWy16XSBbLS1taXNzaW5nXSBbLS1iYXRjaF0iCisKKyM6IGJ1aWx0aW4vbWt0cmVlLmM6MTU0Cittc2dpZCAiaW5wdXQgaXMgTlVMIHRlcm1pbmF0ZWQiCittc2dzdHIgImdpcmRpIE5VTCBpbGUgc29ubGFuZMSxcsSxbGTEsSIKKworIzogYnVpbHRpbi9ta3RyZWUuYzoxNTUgYnVpbHRpbi93cml0ZS10cmVlLmM6MjYKK21zZ2lkICJhbGxvdyBtaXNzaW5nIG9iamVjdHMiCittc2dzdHIgImVrc2lrIG5lc25lbGVyZSBpemluIHZlciIKKworIzogYnVpbHRpbi9ta3RyZWUuYzoxNTYKK21zZ2lkICJhbGxvdyBjcmVhdGlvbiBvZiBtb3JlIHRoYW4gb25lIHRyZWUiCittc2dzdHIgImJpcmRlbiDDp29rIGHEn2FjxLFuIG9sdcWfdHVydWxtYXPEsW5hIGl6aW4gdmVyIgorCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo5Cittc2dpZCAiIgorImdpdCBtdWx0aS1wYWNrLWluZGV4IFs8b3B0aW9ucz5dICh3cml0ZXx2ZXJpZnl8ZXhwaXJlfHJlcGFjayAtLWJhdGNoLSIKKyJzaXplPTxzaXplPikiCittc2dzdHIgIiIKKyJnaXQgbXVsdGktcGFjay1pbmRleCBbPHNlw6dlbmVrbGVyPl0gKHdyaXRlfHZlcmlmeXxleHBpcmV8cmVwYWNrIC0tYmF0Y2gtIgorInNpemU9PGJveXV0PikiCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjI2Cittc2dpZCAib2JqZWN0IGRpcmVjdG9yeSBjb250YWluaW5nIHNldCBvZiBwYWNrZmlsZSBhbmQgcGFjay1pbmRleCBwYWlycyIKK21zZ3N0ciAibmVzbmUgZGl6aW5pIHBha2V0IGRvc3lhc8SxIHNldGkgdmUgcGFjay1pbmRleCBlxZ9sZXJpIGnDp2VyaXlvciIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjkKK21zZ2lkICIiCisiZHVyaW5nIHJlcGFjaywgY29sbGVjdCBwYWNrLWZpbGVzIG9mIHNtYWxsZXIgc2l6ZSBpbnRvIGEgYmF0Y2ggdGhhdCBpcyAiCisibGFyZ2VyIHRoYW4gdGhpcyBzaXplIgorbXNnc3RyICIiCisieWVuaWRlbiBwYWtldGxlbWUgc8SxcmFzxLFuZGEgZGFoYSBrw7zDp8O8ayBib3l1dGx1IHBha2V0IGRvc3lhbGFyxLFuxLEgYnUgYm95dXR0YW4gIgorImRhaGEgYsO8ecO8ayBiaXIgdG9wbHUgacWfIG9sYXJhayB0b3BsYXnEsW4iCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjUwIGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NjcKK21zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMiCittc2dzdHIgIsOnb2sgZmF6bGEgZGXEn2nFn2tlbiIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NjAKK21zZ2lkICItLWJhdGNoLXNpemUgb3B0aW9uIGlzIG9ubHkgZm9yICdyZXBhY2snIHN1YmNvbW1hbmQiCittc2dzdHIgIi0tYmF0Y2gtc2l6ZSBzZcOnZW5lxJ9pIHlhbG7EsXpjYSAncmVwYWNrJyBhbHRrb211dHUgacOnaW4iCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBzdWJjb21tYW5kOiAlcyIKK21zZ3N0ciAidGFuxLFtbGFuYW1heWFuIGFsdGtvbXV0OiAlcyIKKworIzogYnVpbHRpbi9tdi5jOjE4Cittc2dpZCAiZ2l0IG12IFs8b3B0aW9ucz5dIDxzb3VyY2U+Li4uIDxkZXN0aW5hdGlvbj4iCittc2dzdHIgImdpdCBtdiBbPHNlw6dlbmVrbGVyPl0gPGtheW5haz4uLi4gPGhlZGVmPiIKKworIzogYnVpbHRpbi9tdi5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIkRpcmVjdG9yeSAlcyBpcyBpbiBpbmRleCBhbmQgbm8gc3VibW9kdWxlPyIKK21zZ3N0ciAiJXMgZGl6aW5pIGluZGVrc3RlIHZlIGFsdG1vZMO8bCBkZcSfaWwgbWk/IgorCisjOiBidWlsdGluL212LmM6ODUKK21zZ2lkICJQbGVhc2Ugc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKK21zZ3N0ciAiIgorIsSwbGVybGVtZWsgacOnaW4gbMO8dGZlbiBkZcSfacWfaWtsaWtsZXJpbml6aSAuZ2l0bW9kdWxlcydlIGhhesSxcmxhecSxbiB2ZXlhICIKKyJ6dWxhbGF5xLFuIgorCisjOiBidWlsdGluL212LmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiUuKnMgaXMgaW4gaW5kZXgiCittc2dzdHIgIiUuKnMgaW5kZWtzdGUiCisKKyM6IGJ1aWx0aW4vbXYuYzoxMjUKK21zZ2lkICJmb3JjZSBtb3ZlL3JlbmFtZSBldmVuIGlmIHRhcmdldCBleGlzdHMiCittc2dzdHIgImhlZGVmIHZhciBvbHNhIGJpbGUgem9ybGEgdGHFn8SxL3llbmlkZW4gYWRsYW5kxLFyIgorCisjOiBidWlsdGluL212LmM6MTI3Cittc2dpZCAic2tpcCBtb3ZlL3JlbmFtZSBlcnJvcnMiCittc2dzdHIgInRhxZ/EsS95ZW5pZGVuIGFkbGFuZMSxciBoYXRhbGFyxLFuxLEgYXRsYSIKKworIzogYnVpbHRpbi9tdi5jOjE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkZXN0aW5hdGlvbiAnJXMnIGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiJyVzJyBoZWRlZmkgYmlyIGRpemluIGRlxJ9pbCIKKworIzogYnVpbHRpbi9tdi5jOjE4MAorIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyByZW5hbWUgb2YgJyVzJyB0byAnJXMnXG4iCittc2dzdHIgIiclcyctPiclcycgeWVuaWRlbiBhZGxhbmTEsXJtYXPEsSBkZW5ldGxlbml5b3JcbiIKKworIzogYnVpbHRpbi9tdi5jOjE4NAorbXNnaWQgImJhZCBzb3VyY2UiCittc2dzdHIgImhhdGFsxLEga2F5bmFrIgorCisjOiBidWlsdGluL212LmM6MTg3Cittc2dpZCAiY2FuIG5vdCBtb3ZlIGRpcmVjdG9yeSBpbnRvIGl0c2VsZiIKK21zZ3N0ciAiZGl6aW4ga2VuZGkgacOnaW5lIHRhxZ/EsW5hbcSxeW9yIgorCisjOiBidWlsdGluL212LmM6MTkwCittc2dpZCAiY2Fubm90IG1vdmUgZGlyZWN0b3J5IG92ZXIgZmlsZSIKK21zZ3N0ciAiZGl6aW4gZG9zeWEgw7x6ZXJpbmRlbiB0YcWfxLFuYW3EsXlvciIKKworIzogYnVpbHRpbi9tdi5jOjE5OQorbXNnaWQgInNvdXJjZSBkaXJlY3RvcnkgaXMgZW1wdHkiCittc2dzdHIgImtheW5hayBkaXppbiBib8WfIgorCisjOiBidWlsdGluL212LmM6MjI0Cittc2dpZCAibm90IHVuZGVyIHZlcnNpb24gY29udHJvbCIKK21zZ3N0ciAic8O8csO8bSBkZW5ldGltaSBhbHTEsW5kYSBkZcSfaWwiCisKKyM6IGJ1aWx0aW4vbXYuYzoyMjcKK21zZ2lkICJkZXN0aW5hdGlvbiBleGlzdHMiCittc2dzdHIgImhlZGVmIG1ldmN1dCIKKworIzogYnVpbHRpbi9tdi5jOjIzNQorIywgYy1mb3JtYXQKK21zZ2lkICJvdmVyd3JpdGluZyAnJXMnIgorbXNnc3RyICLDvHplcmluZSB5YXrEsWzEsXlvcjogJyVzJyIKKworIzogYnVpbHRpbi9tdi5jOjIzOAorbXNnaWQgIkNhbm5vdCBvdmVyd3JpdGUiCittc2dzdHIgIsOcemVyaW5lIHlhesSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vbXYuYzoyNDEKK21zZ2lkICJtdWx0aXBsZSBzb3VyY2VzIGZvciB0aGUgc2FtZSB0YXJnZXQiCittc2dzdHIgImF5bsSxIGhlZGVmIGnDp2luIGJpcmRlbiDDp29rIGtheW5hayIKKworIzogYnVpbHRpbi9tdi5jOjI0MworbXNnaWQgImRlc3RpbmF0aW9uIGRpcmVjdG9yeSBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiaGVkZWYgZGl6aW4gbWV2Y3V0IGRlxJ9pbCIKKworIzogYnVpbHRpbi9tdi5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcywgc291cmNlPSVzLCBkZXN0aW5hdGlvbj0lcyIKK21zZ3N0ciAiJXMsIGtheW5haz0lcywgaGVkZWY6JXMiCisKKyM6IGJ1aWx0aW4vbXYuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVuYW1pbmcgJXMgdG8gJXNcbiIKK21zZ3N0ciAiJXMsICVzIG9sYXJhayB5ZW5pZGVuIGFkbGFuZMSxcsSxbMSxeW9yXG4iCisKKyM6IGJ1aWx0aW4vbXYuYzoyNzcgYnVpbHRpbi9yZW1vdGUuYzo3ODEgYnVpbHRpbi9yZXBhY2suYzo1MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJyVzJyBmYWlsZWQiCittc2dzdHIgIiclcycgeWVuaWRlbiBhZGxhbmTEsXLEsWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0NjUKK21zZ2lkICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gPGNvbW1pdD4uLi4iCittc2dzdHIgImdpdCBuYW1lLXJldiBbPHNlw6dlbmVrbGVyPl0gPGfDtm5kZXJpPi4uLiIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NgorbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLWFsbCIKK21zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs8c2XDp2VuZWtsZXI+XSAtLWFsbCIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NworbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLXN0ZGluIgorbXNnc3RyICJnaXQgbmFtZS1yZXYgWzxzZcOnZW5la2xlcj5dIC0tc3RkaW4iCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjQKK21zZ2lkICJwcmludCBvbmx5IG5hbWVzIChubyBTSEEtMSkiCittc2dzdHIgInlhbG7EsXpjYSBhZGxhcsSxIHlhemTEsXIgKFNIQS0xIHlvaykiCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjUKK21zZ2lkICJvbmx5IHVzZSB0YWdzIHRvIG5hbWUgdGhlIGNvbW1pdHMiCittc2dzdHIgImfDtm5kZXJpbGVyaSBhZGxhbmTEsXJtYWsgacOnaW4geWFsbsSxemNhIGV0aWtldGxlcmkga3VsbGFuIgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI3Cittc2dpZCAib25seSB1c2UgcmVmcyBtYXRjaGluZyA8cGF0dGVybj4iCittc2dzdHIgInlhbG7EsXpjYSA8ZGl6Z2k+IGlsZSBlxZ9sZcWfZW4gYmHFn3Z1cnVsYXLEsSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjkKK21zZ2lkICJpZ25vcmUgcmVmcyBtYXRjaGluZyA8cGF0dGVybj4iCittc2dzdHIgIjxkaXpnaT4gaWxlIGXFn2xlxZ9lbiBiYcWfdnVydWxhcsSxIHlvayBzYXkiCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzEKK21zZ2lkICJsaXN0IGFsbCBjb21taXRzIHJlYWNoYWJsZSBmcm9tIGFsbCByZWZzIgorbXNnc3RyICJ0w7xtIGJhxZ92dXJ1bGFyZGFuIHVsYcWfxLFsYWJpbGlyIG9sYW4gdMO8bSBnw7ZuZGVyaWxlcmkgbGlzdGVsZSIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzMgorbXNnaWQgInJlYWQgZnJvbSBzdGRpbiIKK21zZ3N0ciAic3RkaW4nZGVuIG9rdSIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzMworbXNnaWQgImFsbG93IHRvIHByaW50IGB1bmRlZmluZWRgIG5hbWVzIChkZWZhdWx0KSIKK21zZ3N0ciAiJ3RhbsSxbWxhbm1heWFuJyBhZGxhcsSxbiB5YXpkxLFyxLFsbWFzxLFuYSBpemluIHZlciAow7ZudGFuxLFtbMSxKSIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzOQorbXNnaWQgImRlcmVmZXJlbmNlIHRhZ3MgaW4gdGhlIGlucHV0IChpbnRlcm5hbCB1c2UpIgorbXNnc3RyICJnaXJkaWRlIGV0aWtldGxlcmluIGJhxZ92dXJ1bGFyxLFuxLEga2FsZMSxciAoacOnIGt1bGxhbsSxbSkiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoyOAorbXNnaWQgImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIFtsaXN0IFs8b2JqZWN0Pl1dIgorbXNnc3RyICJnaXQgbm90ZXMgWy0tcmVmIDxub3QtYsWfdnI+XSBbbGlzdCBbPG5lc25lPl1dIgorCisjOiBidWlsdGluL25vdGVzLmM6MjkKK21zZ2lkICIiCisiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gYWRkIFstZl0gWy0tYWxsb3ctZW1wdHldIFstbSA8bXNnPiB8IC1GIDxmaWxlPiAiCisifCAoLWMgfCAtQykgPG9iamVjdD5dIFs8b2JqZWN0Pl0iCittc2dzdHIgIiIKKyJnaXQgbm90ZXMgWy0tcmVmIDxub3QtYsWfdnI+XSBhZGQgWy1mXSBbLS1hbGxvdy1lbXB0eV0gWy1tIDxpbGV0aT4gfCAtRiAiCisiPGRvc3lhPiB8ICgtYyB8IC1DKSA8bmVzbmU+XSBbPG5lc25lPl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMAorbXNnaWQgImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIGNvcHkgWy1mXSA8ZnJvbS1vYmplY3Q+IDx0by1vYmplY3Q+IgorbXNnc3RyICJnaXQgbm90ZXMgWy0tcmVmIDxub3QtYsWfdnI+XSBjb3B5IFstZl0gPG5lc25lZGVuPiA8bmVzbmV5ZT4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMQorbXNnaWQgIiIKKyJnaXQgbm90ZXMgWy0tcmVmIDxub3Rlcy1yZWY+XSBhcHBlbmQgWy0tYWxsb3ctZW1wdHldIFstbSA8bXNnPiB8IC1GIDxmaWxlPiB8ICIKKyIoLWMgfCAtQykgPG9iamVjdD5dIFs8b2JqZWN0Pl0iCittc2dzdHIgIiIKKyJnaXQgbm90ZXMgWy0tcmVmIDxub3QtYsWfdnI+XSBhcHBlbmQgWy0tYWxsb3ctZW1wdHldIFstbSA8aWxldGk+IHwgLUYgPGRvc3lhPiAiCisifCAoLWMgfCAtQykgPG5lc25lPl0gWzxuZXNuZT5dIgorCisjOiBidWlsdGluL25vdGVzLmM6MzIKK21zZ2lkICJnaXQgbm90ZXMgWy0tcmVmIDxub3Rlcy1yZWY+XSBlZGl0IFstLWFsbG93LWVtcHR5XSBbPG9iamVjdD5dIgorbXNnc3RyICJnaXQgbm90ZXMgWy0tcmVmIDxub3QtYsWfdnI+XSBlZGl0IFstLWFsbG93LWVtcHR5XSBbPG5lc25lPl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMworbXNnaWQgImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIHNob3cgWzxvYmplY3Q+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIFstLXJlZiA8bm90LWLFn3ZyPl0gc2hvdyBbPG5lc25lPl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozNAorbXNnaWQgIiIKKyJnaXQgbm90ZXMgWy0tcmVmIDxub3Rlcy1yZWY+XSBtZXJnZSBbLXYgfCAtcV0gWy1zIDxzdHJhdGVneT5dIDxub3Rlcy1yZWY+IgorbXNnc3RyICIiCisiZ2l0IG5vdGVzIFstLXJlZiA8bm90LWLFn3ZyPl0gbWVyZ2UgWy12IHwgLXFdIFstcyA8c3RyYXRlamk+XSA8bm90LWLFn3ZyPiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM1Cittc2dpZCAiZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0IFstdiB8IC1xXSIKK21zZ3N0ciAiZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0IFstdiB8IC1xXSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM2Cittc2dpZCAiZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQgWy12IHwgLXFdIgorbXNnc3RyICJnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCBbLXYgfCAtcV0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozNworbXNnaWQgImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIHJlbW92ZSBbPG9iamVjdD4uLi5dIgorbXNnc3RyICJnaXQgbm90ZXMgWy0tcmVmIDxub3QtYsWfdnI+XSByZW1vdmUgWzxuZXNuZT4uLi5dIgorCisjOiBidWlsdGluL25vdGVzLmM6MzgKK21zZ2lkICJnaXQgbm90ZXMgWy0tcmVmIDxub3Rlcy1yZWY+XSBwcnVuZSBbLW5dIFstdl0iCittc2dzdHIgImdpdCBub3RlcyBbLS1yZWYgPG5vdC1ixZ92cj5dIHBydW5lIFstbl0gWy12XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM5Cittc2dpZCAiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gZ2V0LXJlZiIKK21zZ3N0ciAiZ2l0IG5vdGVzIFstLXJlZiA8bm90LWLFn3ZyPl0gZ2V0LXJlZiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjQ0Cittc2dpZCAiZ2l0IG5vdGVzIFtsaXN0IFs8b2JqZWN0Pl1dIgorbXNnc3RyICJnaXQgbm90ZXMgW2xpc3QgWzxuZXNuZT5dXSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjQ5Cittc2dpZCAiZ2l0IG5vdGVzIGFkZCBbPG9wdGlvbnM+XSBbPG9iamVjdD5dIgorbXNnc3RyICJnaXQgbm90ZXMgYWRkIFs8c2XDp2VuZWtsZXI+XSBbPG5lc25lPl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1NAorbXNnaWQgImdpdCBub3RlcyBjb3B5IFs8b3B0aW9ucz5dIDxmcm9tLW9iamVjdD4gPHRvLW9iamVjdD4iCittc2dzdHIgImdpdCBub3RlcyBjb3B5IFs8c2XDp2VuZWtsZXI+XSA8bmVzbmVkZW4+IDxuZXNuZXllPiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjU1Cittc2dpZCAiZ2l0IG5vdGVzIGNvcHkgLS1zdGRpbiBbPGZyb20tb2JqZWN0PiA8dG8tb2JqZWN0Pl0uLi4iCittc2dzdHIgImdpdCBub3RlcyBjb3B5IC0tc3RkaW4gWzxuZXNuZWRlbj4gPG5lc25leWU+XS4uLiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjYwCittc2dpZCAiZ2l0IG5vdGVzIGFwcGVuZCBbPG9wdGlvbnM+XSBbPG9iamVjdD5dIgorbXNnc3RyICJnaXQgbm90ZXMgYXBwZW5kIFs8c2XDp2VuZWtsZXI+XSBbPG5lc25lPl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2NQorbXNnaWQgImdpdCBub3RlcyBlZGl0IFs8b2JqZWN0Pl0iCittc2dzdHIgImdpdCBub3RlcyBlZGl0IFs8bmVzbmU+XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjcwCittc2dpZCAiZ2l0IG5vdGVzIHNob3cgWzxvYmplY3Q+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIHNob3cgWzxuZXNuZT5dIgorCisjOiBidWlsdGluL25vdGVzLmM6NzUKK21zZ2lkICJnaXQgbm90ZXMgbWVyZ2UgWzxvcHRpb25zPl0gPG5vdGVzLXJlZj4iCittc2dzdHIgImdpdCBub3RlcyBtZXJnZSBbPHNlw6dlbmVrbGVyPl0gPG5vdC1ixZ92cj4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NgorbXNnaWQgImdpdCBub3RlcyBtZXJnZSAtLWNvbW1pdCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0IFs8c2XDp2VuZWtsZXI+XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjc3Cittc2dpZCAiZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCBub3RlcyBtZXJnZSAtLWFib3J0IFs8c2XDp2VuZWtsZXI+XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjgyCittc2dpZCAiZ2l0IG5vdGVzIHJlbW92ZSBbPG9iamVjdD5dIgorbXNnc3RyICJnaXQgbm90ZXMgcmVtb3ZlIFs8bmVzbmU+XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjg3Cittc2dpZCAiZ2l0IG5vdGVzIHBydW5lIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgbm90ZXMgcHJ1bmUgWzxzZcOnZW5la2xlcj5dIgorCisjOiBidWlsdGluL25vdGVzLmM6OTIKK21zZ2lkICJnaXQgbm90ZXMgZ2V0LXJlZiIKK21zZ3N0ciAiZ2l0IG5vdGVzIGdldC1yZWYiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NworbXNnaWQgIldyaXRlL2VkaXQgdGhlIG5vdGVzIGZvciB0aGUgZm9sbG93aW5nIG9iamVjdDoiCittc2dzdHIgIkHFn2HEn8SxZGFraSBuZXNuZWxlciBpw6dpbiBub3QgeWF6L2TDvHplbmxlOiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhcnQgJ3Nob3cnIGZvciBvYmplY3QgJyVzJyIKK21zZ3N0ciAiJyVzJyBuZXNuZXNpIGnDp2luICdzaG93JyBiYcWfbGF0xLFsYW3EsXlvciIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjE1NAorbXNnaWQgImNvdWxkIG5vdCByZWFkICdzaG93JyBvdXRwdXQiCittc2dzdHIgIidzaG93JyDDp8Sxa3TEsXPEsSBva3VuYW1hZMSxIgorCisjOiBidWlsdGluL25vdGVzLmM6MTYyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmaW5pc2ggJ3Nob3cnIGZvciBvYmplY3QgJyVzJyIKK21zZ3N0ciAiJyVzJyBuZXNuZXNpIGnDp2luICdzaG93JyBiaXRpcmlsZW1lZGkiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoxOTcKK21zZ2lkICJwbGVhc2Ugc3VwcGx5IHRoZSBub3RlIGNvbnRlbnRzIHVzaW5nIGVpdGhlciAtbSBvciAtRiBvcHRpb24iCittc2dzdHIgIm5vdCBpw6dlcmnEn2luaSBsw7x0ZmVuIC1tIHZleWEgLUYgc2XDp2VuZcSfaW5pIGt1bGxhbmFyYWsgc2HEn2xhecSxbiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjIwNgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBub3RlIG9iamVjdCIKK21zZ3N0ciAibm90IG5lc25lc2kgeWF6xLFsYW3EsXlvciIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjIwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGUgbm90ZSBjb250ZW50cyBoYXZlIGJlZW4gbGVmdCBpbiAlcyIKK21zZ3N0ciAibm90IGnDp2VyacSfaSAlcyBpw6dpbmRlIGLEsXJha8SxbGTEsSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjI0MiBidWlsdGluL3RhZy5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiBvciByZWFkICclcyciCittc2dzdHIgIiclcycgYcOnxLFsYW1hZMSxIHZleWEgb2t1bmFtYWTEsSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjI2MyBidWlsdGluL25vdGVzLmM6MzEzIGJ1aWx0aW4vbm90ZXMuYzozMTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzozODMgYnVpbHRpbi9ub3Rlcy5jOjQzOCBidWlsdGluL25vdGVzLmM6NTI2CisjOiBidWlsdGluL25vdGVzLmM6NTMxIGJ1aWx0aW4vbm90ZXMuYzo2MTAgYnVpbHRpbi9ub3Rlcy5jOjY3MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAiJyVzJyBnZcOnZXJsaSBiaXIgYmHFn3Z1cnUgb2xhcmFrIMOnw7Z6w7xsZW1lZGkiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoyNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb2JqZWN0ICclcycuIgorbXNnc3RyICInJXMnIG5lc25lc2kgb2t1bmFtYWTEsS4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgbm90ZSBkYXRhIGZyb20gbm9uLWJsb2Igb2JqZWN0ICclcycuIgorbXNnc3RyICLEsGtpbGkgbmVzbmUgb2xtYXlhbiAnJXMnIG5lc25lc2luZGVuIG5vdCB2ZXJpc2kgb2t1bmFtxLF5b3IuIgorCisjOiBidWlsdGluL25vdGVzLmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBpbnB1dCBsaW5lOiAnJXMnLiIKK21zZ3N0ciAiaGF0YWzEsSBvbHXFn3R1cnVsbXXFnyBnaXJkaSBzYXTEsXLEsTogJyVzJyIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY29weSBub3RlcyBmcm9tICclcycgdG8gJyVzJyIKK21zZ3N0ciAibm90bGFyICclcycga29udW11bmRhbiAnJXMnIGtvbnVtdW5hIGtvcHlhbGFuYW1hZMSxIgorCisjLiBUUkFOU0xBVE9SUzogdGhlIGZpcnN0ICVzIHdpbGwgYmUgcmVwbGFjZWQgYnkgYSBnaXQKKyMuIG5vdGVzIGNvbW1hbmQ6ICdhZGQnLCAnbWVyZ2UnLCAncmVtb3ZlJywgZXRjLgorIy4KKyM6IGJ1aWx0aW4vbm90ZXMuYzozNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmdXNpbmcgdG8gJXMgbm90ZXMgaW4gJXMgKG91dHNpZGUgb2YgcmVmcy9ub3Rlcy8pIgorbXNnc3RyICJub3RsYXLEsSAlcyB5YXBtYSAoJXMgacOnaW5kZSkgcmVkZGVkaWxpeW9yIChyZWZzL25vdGVzLyBkxLHFn8SxbmRhKSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM3NiBidWlsdGluL25vdGVzLmM6NDMxIGJ1aWx0aW4vbm90ZXMuYzo1MDkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MjEgYnVpbHRpbi9ub3Rlcy5jOjU5OCBidWlsdGluL25vdGVzLmM6NjY1CisjOiBidWlsdGluL25vdGVzLmM6ODE1IGJ1aWx0aW4vbm90ZXMuYzo5NjMgYnVpbHRpbi9ub3Rlcy5jOjk4NQorbXNnaWQgInRvbyBtYW55IHBhcmFtZXRlcnMiCittc2dzdHIgIsOnb2sgZmF6bGEgcGFyYW1ldHJlIgorCisjOiBidWlsdGluL25vdGVzLmM6Mzg5IGJ1aWx0aW4vbm90ZXMuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gbm90ZSBmb3VuZCBmb3Igb2JqZWN0ICVzLiIKK21zZ3N0ciAiJXMgbmVzbmVzaSBpw6dpbiBub3QgYnVsdW5hbWFkxLEuIgorCisjOiBidWlsdGluL25vdGVzLmM6NDEwIGJ1aWx0aW4vbm90ZXMuYzo1NzYKK21zZ2lkICJub3RlIGNvbnRlbnRzIGFzIGEgc3RyaW5nIgorbXNnc3RyICJub3QgacOnZXJpxJ9pIGRpemkgb2xhcmFrIgorCisjOiBidWlsdGluL25vdGVzLmM6NDEzIGJ1aWx0aW4vbm90ZXMuYzo1NzkKK21zZ2lkICJub3RlIGNvbnRlbnRzIGluIGEgZmlsZSIKK21zZ3N0ciAibm90IGnDp2VyacSfaSBiaXIgZG9zeWFkYSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjQxNiBidWlsdGluL25vdGVzLmM6NTgyCittc2dpZCAicmV1c2UgYW5kIGVkaXQgc3BlY2lmaWVkIG5vdGUgb2JqZWN0IgorbXNnc3RyICJiZWxpcnRpbGVuIG5vdCBuZXNuZXNpbmkgZMO8emVubGUgdmUgeWVuaWRlbiBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTkgYnVpbHRpbi9ub3Rlcy5jOjU4NQorbXNnaWQgInJldXNlIHNwZWNpZmllZCBub3RlIG9iamVjdCIKK21zZ3N0ciAiYmVsaXJ0aWxlbiBub3QgbmVzbmVzaW5pIHllbmlkZW4ga3VsbGFuIgorCisjOiBidWlsdGluL25vdGVzLmM6NDIyIGJ1aWx0aW4vbm90ZXMuYzo1ODgKK21zZ2lkICJhbGxvdyBzdG9yaW5nIGVtcHR5IG5vdGUiCittc2dzdHIgImJvxZ8gbm90IGRlcG9sYW1hc8SxbmEgaXppbiB2ZXIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MjMgYnVpbHRpbi9ub3Rlcy5jOjQ5NgorbXNnaWQgInJlcGxhY2UgZXhpc3Rpbmcgbm90ZXMiCittc2dzdHIgInZhciBvbGFuIG5vdGxhcsSxIGJhxZ9rYWxhcsSxeWxhIGRlxJ9pxZ90aXIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNhbm5vdCBhZGQgbm90ZXMuIEZvdW5kIGV4aXN0aW5nIG5vdGVzIGZvciBvYmplY3QgJXMuIFVzZSAnLWYnIHRvIG92ZXJ3cml0ZSAiCisiZXhpc3Rpbmcgbm90ZXMiCittc2dzdHIgIiIKKyJOb3QgZWtsZW5lbWl5b3IuICVzIG5lc25lc2kgacOnaW4gaGFsaWhhesSxcmRhIHZhciBvbGFuIG5vdGxhciBidWx1bmR1LiBCdSAiCisibm90bGFyxLFuIMO8emVyaW5lIHlhem1hayBpw6dpbiAnLWYnIGt1bGxhbsSxbi4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NjMgYnVpbHRpbi9ub3Rlcy5jOjU0NAorIywgYy1mb3JtYXQKK21zZ2lkICJPdmVyd3JpdGluZyBleGlzdGluZyBub3RlcyBmb3Igb2JqZWN0ICVzXG4iCittc2dzdHIgIiVzIG5lc25lc2kgacOnaW4gdmFyIG9sYW4gbm90bGFyxLFuIMO8emVyaW5lIHlhesSxbMSxeW9yXG4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NzUgYnVpbHRpbi9ub3Rlcy5jOjYzNyBidWlsdGluL25vdGVzLmM6OTAyCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nIG5vdGUgZm9yIG9iamVjdCAlc1xuIgorbXNnc3RyICIlcyBuZXNuZXNpIGnDp2luIG9sYW4gbm90IGthbGTEsXLEsWzEsXlvclxuIgorCisjOiBidWlsdGluL25vdGVzLmM6NDk3Cittc2dpZCAicmVhZCBvYmplY3RzIGZyb20gc3RkaW4iCittc2dzdHIgIm5lc25lbGVyaSBzdGRpbidkZW4gb2t1IgorCisjOiBidWlsdGluL25vdGVzLmM6NDk5Cittc2dpZCAibG9hZCByZXdyaXRpbmcgY29uZmlnIGZvciA8Y29tbWFuZD4gKGltcGxpZXMgLS1zdGRpbikiCittc2dzdHIgIjxrb211dD4gacOnaW4geWFwxLFsYW5kxLFybWEgeWVuaWRlbiB5YXrEsW3EsW7EsSB5w7xrbGUgKC0tc3RkaW4gaW1hIGVkZXIpIgorCisjOiBidWlsdGluL25vdGVzLmM6NTE3Cittc2dpZCAidG9vIGZldyBwYXJhbWV0ZXJzIgorbXNnc3RyICLDp29rIGF6IHBhcmFtZXRyZSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjUzOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ2Fubm90IGNvcHkgbm90ZXMuIEZvdW5kIGV4aXN0aW5nIG5vdGVzIGZvciBvYmplY3QgJXMuIFVzZSAnLWYnIHRvIG92ZXJ3cml0ZSAiCisiZXhpc3Rpbmcgbm90ZXMiCittc2dzdHIgIiIKKyJOb3RsYXIga29weWFsYW5hbcSxeW9yLiAlcyBuZXNuZXNpIGnDp2luIGhhbGloYXrEsXJkYSB2YXIgb2xhbiBub3RsYXIgYnVsdW5kdS4gIgorIkJ1IG5vdGxhcsSxbiDDvHplcmluZSB5YXptYWsgacOnaW4gJy1mJyBrdWxsYW7EsW4uIgorCisjOiBidWlsdGluL25vdGVzLmM6NTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3Npbmcgbm90ZXMgb24gc291cmNlIG9iamVjdCAlcy4gQ2Fubm90IGNvcHkuIgorbXNnc3RyICIlcyBrYXluYWsgbmVzbmVzaSBpw6dpbiBub3QgZWtzaWsuIEtvcHlhbGFuYW3EsXlvci4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSAtbS8tRi8tYy8tQyBvcHRpb25zIGhhdmUgYmVlbiBkZXByZWNhdGVkIGZvciB0aGUgJ2VkaXQnIHN1YmNvbW1hbmQuXG4iCisiUGxlYXNlIHVzZSAnZ2l0IG5vdGVzIGFkZCAtZiAtbS8tRi8tYy8tQycgaW5zdGVhZC5cbiIKK21zZ3N0ciAiIgorIi1tLy1GLy1jLy1DIHNlw6dlbmVrbGVyaSAnZWRpdCcga29tdXR1IGnDp2luIGt1bGxhbsSxbSBkxLHFn8SxIGLEsXJha8SxbGTEsS5cbiIKKyJMw7x0ZmVuIGJ1bnVuIHllcmluZSAnZ2l0IG5vdGVzIGFkZCAtZiAtbS8tRi8tYy8tQycga3VsbGFuxLFuLlxuIgorCisjOiBidWlsdGluL25vdGVzLmM6Njk4Cittc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKK21zZ3N0ciAiTk9URVNfTUVSR0VfUEFSVElBTCBiYcWfdnVydXN1IHNpbGluZW1lZGkiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDAKK21zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIHJlZiBOT1RFU19NRVJHRV9SRUYiCittc2dzdHIgIk5PVEVTX01FUkdFX1JFRiBiYcWfdnVydXN1IHNpbGluZW1lZGkiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDIKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICdnaXQgbm90ZXMgbWVyZ2UnIHdvcmt0cmVlIgorbXNnc3RyICInZ2l0IHJlbW92ZSBtZXJnZScgw6dhbMSxxZ9tYSBhxJ9hY8SxIGthbGTEsXLEsWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjIKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKK21zZ3N0ciAiTk9URVNfTUVSR0VfUEFSVElBTCBiYcWfdnVydXN1IG9rdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjQKK21zZ2lkICJjb3VsZCBub3QgZmluZCBjb21taXQgZnJvbSBOT1RFU19NRVJHRV9QQVJUSUFMLiIKK21zZ3N0ciAiTk9URVNfTUVSR0VfUEFSVElBTCDDtmdlc2luZGVuIGfDtm5kZXJpIGJ1bHVuYW1hZMSxLiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjcyNgorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgZnJvbSBOT1RFU19NRVJHRV9QQVJUSUFMLiIKK21zZ3N0ciAiTk9URVNfTUVSR0VfUEFSVElBTCDDtmdlc2luZGVuIGfDtm5kZXJpIGF5csSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBidWlsdGluL25vdGVzLmM6NzM5Cittc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgTk9URVNfTUVSR0VfUkVGIgorbXNnc3RyICJOT1RFU19NRVJHRV9SRUYgw6fDtnrDvGxlbWVkaSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjc0MgorbXNnaWQgImZhaWxlZCB0byBmaW5hbGl6ZSBub3RlcyBtZXJnZSIKK21zZ3N0ciAibm90IGJpcmxlxZ90aXJpbG1lc2kgdGFtYW1sYW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBub3RlcyBtZXJnZSBzdHJhdGVneSAlcyIKK21zZ3N0ciAiYmlsaW5tZXllbiBub3QgYmlybGXFn3Rpcm1lIHN0cmF0ZWppc2kgJXMiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3ODQKK21zZ2lkICJHZW5lcmFsIG9wdGlvbnMiCittc2dzdHIgIkdlbmVsIHNlw6dlbmVrbGVyIgorCisjOiBidWlsdGluL25vdGVzLmM6Nzg2Cittc2dpZCAiTWVyZ2Ugb3B0aW9ucyIKK21zZ3N0ciAiQmlybGXFn3Rpcm1lIHNlw6dlbmVrbGVyaSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjc4OAorbXNnaWQgIiIKKyJyZXNvbHZlIG5vdGVzIGNvbmZsaWN0cyB1c2luZyB0aGUgZ2l2ZW4gc3RyYXRlZ3kgKG1hbnVhbC9vdXJzL3RoZWlycy91bmlvbi8iCisiY2F0X3NvcnRfdW5pcSkiCittc2dzdHIgIiIKKyJub3Qgw6dha8SxxZ9tYWxhcsSxbsSxIHZlcmlsZW4gc3RyYXRlaml5aSBrdWxsYW5hcmFrIMOnw7Z6IChlbCBpbGUvYml6aW1raW9ubGFyxLFua2kvIgorImJpcmxpayBvbG11xZ8vY2F0X3NvcnRfdW5pcSkiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTAKK21zZ2lkICJDb21taXR0aW5nIHVubWVyZ2VkIG5vdGVzIgorbXNnc3RyICJCaXJsZcWfdGlyaWxtZW1pxZ8gbm90bGFyIGfDtm5kZXJpbGl5b3IiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTIKK21zZ2lkICJmaW5hbGl6ZSBub3RlcyBtZXJnZSBieSBjb21taXR0aW5nIHVubWVyZ2VkIG5vdGVzIgorbXNnc3RyICJiaXJsZcWfdGlyaWxtZW1pxZ8gbm90bGFyxLEgZ8O2bmRlcmVyZWsgbm90IGJpcmxlxZ90aXJtZXNpbmkgdGFtYW1sYSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjc5NAorbXNnaWQgIkFib3J0aW5nIG5vdGVzIG1lcmdlIHJlc29sdXRpb24iCittc2dzdHIgIk5vdGxhciBiaXJsZcWfdGlybWVzaSDDp8O2esO8bcO8IGlwdGFsIGVkaWxpeW9yIgorCisjOiBidWlsdGluL25vdGVzLmM6Nzk2Cittc2dpZCAiYWJvcnQgbm90ZXMgbWVyZ2UiCittc2dzdHIgIm5vdCBiaXJsZcWfdGlybWVzaW5pIGlwdGFsIGV0IgorCisjOiBidWlsdGluL25vdGVzLmM6ODA3Cittc2dpZCAiY2Fubm90IG1peCAtLWNvbW1pdCwgLS1hYm9ydCBvciAtcy8tLXN0cmF0ZWd5IgorbXNnc3RyICItLWNvbW1pdCwgLS1hYm9ydCB2ZXlhIC1zLy0tc3RyYXRlZ3kga2FyxLHFn3TEsXLEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL25vdGVzLmM6ODEyCittc2dpZCAibXVzdCBzcGVjaWZ5IGEgbm90ZXMgcmVmIHRvIG1lcmdlIgorbXNnc3RyICJiaXJsZcWfdGlybWVrIGnDp2luIGJpciBub3QgYmHFn3Z1cnVzdSBiZWxpcnRpbG1lbGkiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biAtcy8tLXN0cmF0ZWd5OiAlcyIKK21zZ3N0ciAiYmlsaW5tZXllbiAtcy8tLXN0cmF0ZWd5OiAlcyIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjg3MworIywgYy1mb3JtYXQKK21zZ2lkICJhIG5vdGVzIG1lcmdlIGludG8gJXMgaXMgYWxyZWFkeSBpbi1wcm9ncmVzcyBhdCAlcyIKK21zZ3N0ciAiJXMga29udW11bmEgYmlyIG5vdCBiaXJsZcWfdGlybWVzaSBoYWxpaGF6xLFyZGEgJXMga29udW11bmRhIHPDvHLDvHlvciIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjg3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RvcmUgbGluayB0byBjdXJyZW50IG5vdGVzIHJlZiAoJXMpIgorbXNnc3RyICJnZcOnZXJsaSBub3QgYmHFn3Z1cnVzdW5hIGJhxJ9sYW50xLEgZGVwb2xhbmFtYWTEsSAoJXMpIgorCisjOiBidWlsdGluL25vdGVzLmM6ODc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBdXRvbWF0aWMgbm90ZXMgbWVyZ2UgZmFpbGVkLiBGaXggY29uZmxpY3RzIGluICVzIGFuZCBjb21taXQgdGhlIHJlc3VsdCB3aXRoICIKKyInZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0Jywgb3IgYWJvcnQgdGhlIG1lcmdlIHdpdGggJ2dpdCBub3RlcyBtZXJnZSAtLSIKKyJhYm9ydCcuXG4iCittc2dzdHIgIiIKKyJLZW5kaWxpxJ9pbmRlbiBub3QgYmlybGXFn3Rpcm1lc2kgYmHFn2FyxLFzxLF6IG9sZHUuICVzIGnDp2luZGVraSDDp2FrxLHFn21hbGFyxLEgIgorIsOnw7Z6w7xuIHZlIHNvbnVjdSAnZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0JyBpbGUgZ8O2bmRlcmluLiBCaXJsZcWfdGlybWV5aSBpcHRhbCAiCisiZXRtZWsgaXN0ZXJzZW5peiAnZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQnIGt1bGxhbmFyYWsgYnVudSB5YXBhYmlsaXJzaW5pei5cbiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjg5NyBidWlsdGluL3RhZy5jOjU0NQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAiJyVzJyBnZcOnZXJsaSBiaXIgYmHFn3Z1cnUgb2xhcmFrIMOnw7Z6w7xsZW1peW9yIgorCisjOiBidWlsdGluL25vdGVzLmM6OTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIk9iamVjdCAlcyBoYXMgbm8gbm90ZVxuIgorbXNnc3RyICIlcyBuZXNuZXNpbmluIG5vdHUgeW9rXG4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MTIKK21zZ2lkICJhdHRlbXB0IHRvIHJlbW92ZSBub24tZXhpc3RlbnQgbm90ZSBpcyBub3QgYW4gZXJyb3IiCittc2dzdHIgInZhciBvbG1heWFuIG5vdHUga2FsZMSxcm1hIGRlbmVtZXNpIGJpciBoYXRhIGRlxJ9pbCIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjkxNQorbXNnaWQgInJlYWQgb2JqZWN0IG5hbWVzIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJuZXNuZSBhZGxhcsSxbsSxIHN0YW5kYXJ0IGdpcmRpJ2RlbiBva3UiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NTQgYnVpbHRpbi9wcnVuZS5jOjEzMCBidWlsdGluL3dvcmt0cmVlLmM6MTY0Cittc2dpZCAiZG8gbm90IHJlbW92ZSwgc2hvdyBvbmx5IgorbXNnc3RyICJrYWxkxLFybWEsIHlhbG7EsXpjYSBnw7ZzdGVyIgorCisjOiBidWlsdGluL25vdGVzLmM6OTU1Cittc2dpZCAicmVwb3J0IHBydW5lZCBub3RlcyIKK21zZ3N0ciAiYnVkYW5txLHFnyBub3RsYXLEsSBrYWxkxLFyIgorCisjOiBidWlsdGluL25vdGVzLmM6OTk4Cittc2dpZCAibm90ZXMtcmVmIgorbXNnc3RyICJub3QgYmHFn3Z1cnVzdSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjk5OQorbXNnaWQgInVzZSBub3RlcyBmcm9tIDxub3Rlcy1yZWY+IgorbXNnc3RyICJub3RsYXLEsSA8bm90LWLFn3ZyPiduZGFuIGt1bGxhbiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjEwMzQgYnVpbHRpbi9zdGFzaC5jOjE2NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBzdWJjb21tYW5kOiAlcyIKK21zZ3N0ciAiYmlsaW5tZXllbiBhbHRrb211dDogJXMiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTIKK21zZ2lkICIiCisiZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCBbPG9wdGlvbnM+Li4uXSBbPCA8cmVmLWxpc3Q+IHwgPCA8b2JqZWN0LWxpc3Q+XSIKK21zZ3N0ciAiIgorImdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgWzxzZcOnZW5la2xlcj4uLi5dIFs8IDxixZ92ci1saXN0ZT4gfCA8IDxuZXNuZS0iCisibGlzdGU+XSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1MworbXNnaWQgIiIKKyJnaXQgcGFjay1vYmplY3RzIFs8b3B0aW9ucz4uLi5dIDxiYXNlLW5hbWU+IFs8IDxyZWYtbGlzdD4gfCA8IDxvYmplY3QtbGlzdD5dIgorbXNnc3RyICIiCisiZ2l0IHBhY2stb2JqZWN0cyBbPHPDp25rbHI+Li4uXSA8YmFzZS1uYW1lPiBbPCA8YsWfdnItbGlzdGU+IHwgPCA8bmVzbmUtbGlzdGU+XSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHBhY2tlZCBvYmplY3QgQ1JDIGZvciAlcyIKK21zZ3N0ciAiJXMgacOnaW4gaGF0YWzEsSBwYWtldGxlbm1pxZ8gbmVzbmUgQ1JDJ3NpIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3JydXB0IHBhY2tlZCBvYmplY3QgZm9yICVzIgorbXNnc3RyICIlcyBpw6dpbiBoYXNhciBnw7ZybcO8xZ8gcGFrZXRsZW5tacWfIG5lc25lIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWN1cnNpdmUgZGVsdGEgZGV0ZWN0ZWQgZm9yIG9iamVjdCAlcyIKK21zZ3N0ciAiJXMgbmVzbmVzaSBpw6dpbiDDtnp5aW5lbGkgZGVsdGEgYWxnxLFsYW5kxLEiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NzgzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9yZGVyZWQgJXUgb2JqZWN0cywgZXhwZWN0ZWQgJTxQUkl1MzI+IgorbXNnc3RyICIldSBuZXNuZSBzaXBhcmnFnyB2ZXJpbGRpLCAlPFBSSXUzMj4gYmVrbGVuaXlvcmR1IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk3MgorbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgcGFja3MgYXJlIHNwbGl0IGR1ZSB0byBwYWNrLnBhY2tTaXplTGltaXQiCittc2dzdHIgIiIKKyJiaXRlxZ9sZW0geWF6xLFtxLEga2FwYXTEsWzEsXlvciwgcGFrZXRsZXIgcGFjay5wYWNrU2l6ZUxpbWl0IGRvbGF5xLFzxLF5bGEgIgorInBhcsOnYWxhcmEgYXlyxLFsbcSxxZ8iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTg1Cittc2dpZCAiV3JpdGluZyBvYmplY3RzIgorbXNnc3RyICJOZXNuZWxlciB5YXrEsWzEsXlvciIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMDQ2IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgJXMiCittc2dzdHIgIiVzIGJpbGdpbGVyaSBhbMSxbmFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ3cm90ZSAlPFBSSXUzMj4gb2JqZWN0cyB3aGlsZSBleHBlY3RpbmcgJTxQUkl1MzI+IgorbXNnc3RyICIlPFBSSXUzMj4gbmVzbmUgeWF6xLFsZMSxICglPFBSSXUzMj4gYmVrbGVuaXlvcmR1KSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMjk3Cittc2dpZCAiZGlzYWJsaW5nIGJpdG1hcCB3cml0aW5nLCBhcyBzb21lIG9iamVjdHMgYXJlIG5vdCBiZWluZyBwYWNrZWQiCittc2dzdHIgImJhesSxIG5lc25lbGVyIHBha2V0bGVubWVkacSfaW5kZW4gZG9sYXnEsSBiaXRlxZ9sZW0geWF6xLFtxLEga2FwYXTEsWzEsXlvciIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNzI0CisjLCBjLWZvcm1hdAorbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IG92ZXJmbG93IGluIHBhY2sgZm9yICVzIgorbXNnc3RyICIlcyBpw6dpbiBwYWtldCBpw6dpbmRlIGRlbHRhIHRhYmFuIG9mc2V0IHRhxZ/EsW3EsSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNzMzCisjLCBjLWZvcm1hdAorbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IG91dCBvZiBib3VuZCBmb3IgJXMiCittc2dzdHIgIiVzIGnDp2luIGRlbHRhIHRhYmFuIG9mc2V0aSBzxLFuxLFybGFyxLFuIGTEscWfxLFuZGEiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjAwNAorbXNnaWQgIkNvdW50aW5nIG9iamVjdHMiCittc2dzdHIgIk5lc25lbGVyIHNhecSxbMSxeW9yIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIG9iamVjdCBoZWFkZXIgb2YgJXMiCittc2dzdHIgIiVzIG5lc25lIMO8c3RiaWxnaXNpIGF5csSxxZ90xLFyxLFsYW3EsXlvciIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjE5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIzNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCAlcyBjYW5ub3QgYmUgcmVhZCIKK21zZ3N0ciAiJXMgbmVzbmVzaSBva3VuYW3EsXlvciIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjIyIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgJXMgaW5jb25zaXN0ZW50IG9iamVjdCBsZW5ndGggKCU8UFJJdU1BWD4gdnMgJTxQUkl1TUFYPikiCittc2dzdHIgIiVzIG5lc25lc2kgacOnaW4gdHV0YXJzxLF6IG5lc25lIHV6dW5sdcSfdSAoJTxQUkl1TUFYPiAvICU8UFJJdU1BWD4pIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNTkKK21zZ2lkICJzdWJvcHRpbWFsIHBhY2sgLSBvdXQgb2YgbWVtb3J5IgorbXNnc3RyICJzdGFuZGFydCBhbHTEsSBwYWtldCAtIGJlbGxlayB5ZXRlcnNpeiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbHRhIGNvbXByZXNzaW9uIHVzaW5nIHVwIHRvICVkIHRocmVhZHMiCittc2dzdHIgIkRlbHRhIHPEsWvEscWfdMSxcm1hc8SxICVkIGnFnyBwYXLDp2FjxLHEn8SxIGt1bGxhbsSxeW9yIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhY2sgb2JqZWN0cyByZWFjaGFibGUgZnJvbSB0YWcgJXMiCittc2dzdHIgIiVzIGV0aWtldGluZGVuIHVsYcWfxLFsYWJpbGlyIG5lc25lbGVyIHBha2V0bGVuZW1peW9yIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4MDEKK21zZ2lkICJDb21wcmVzc2luZyBvYmplY3RzIgorbXNnc3RyICJOZXNuZWxlciBzxLFrxLHFn3TEsXLEsWzEsXlvciIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODA3Cittc2dpZCAiaW5jb25zaXN0ZW5jeSB3aXRoIGRlbHRhIGNvdW50IgorbXNnc3RyICJkZWx0YSBzYXnEsW3EsW5kYSB0dXRhcnPEsXpsxLFrIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4cGVjdGVkIGVkZ2Ugb2JqZWN0IElELCBnb3QgZ2FyYmFnZTpcbiIKKyIgJXMiCittc2dzdHIgIiIKKyJzxLFuxLFyIG5lc25lc2kgbnVtYXJhc8SxIGJla2xlbml5b3JkdSwgYW5sYW1zxLF6IHZlcmkgYWzEsW5kxLE6XG4iCisiICVzIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4cGVjdGVkIG9iamVjdCBJRCwgZ290IGdhcmJhZ2U6XG4iCisiICVzIgorbXNnc3RyICIiCisibmVzbmUgbnVtYXJhc8SxIGJla2xlbml5b3JkdSwgYW5sYW1zxLF6IHZlcmkgYWzEsW5kxLE6XG4iCisiJXMiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjk5MgorbXNnaWQgImludmFsaWQgdmFsdWUgZm9yIC0tbWlzc2luZyIKK21zZ3N0ciAiLS1taXNzaW5nIGnDp2luIGdlw6dlcnNpeiBkZcSfZXIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzA1MSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNTkKK21zZ2lkICJjYW5ub3Qgb3BlbiBwYWNrIGluZGV4IgorbXNnc3RyICJwYWtldCBpbmRla3NpIGHDp8SxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzA4MgorIywgYy1mb3JtYXQKK21zZ2lkICJsb29zZSBvYmplY3QgYXQgJXMgY291bGQgbm90IGJlIGV4YW1pbmVkIgorbXNnc3RyICIlcyBrb251bXVuZGFraSBnZXbFn2VrIG5lc25lIGluY2VsZW5lbWVkaSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTY3Cittc2dpZCAidW5hYmxlIHRvIGZvcmNlIGxvb3NlIG9iamVjdCIKK21zZ3N0ciAiZ2V2xZ9layBuZXNuZSB6b3JsYW5hbcSxeW9yIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgcmV2ICclcyciCittc2dzdHIgImJpciByZXZpenlvbiBkZcSfaWw6ICclcyciCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MworIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgcmV2aXNpb24gJyVzJyIKK21zZ3N0ciAiaGF0YWzEsSByZXZpenlvbjogJyVzJyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg4Cittc2dpZCAidW5hYmxlIHRvIGFkZCByZWNlbnQgb2JqZWN0cyIKK21zZ3N0ciAiZW4gc29uIG5lc25lbGVyIGVrbGVuZW1peW9yIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5zdXBwb3J0ZWQgaW5kZXggdmVyc2lvbiAlcyIKK21zZ3N0ciAiZGVzdGVrbGVubWV5ZW4gaW5kZWtzIHPDvHLDvG3DvCAlcyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBpbmRleCB2ZXJzaW9uICclcyciCittc2dzdHIgImhhdGFsxLEgaW5kZWtzIHPDvHLDvG3DvCAnJXMnIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODMKK21zZ2lkICI8dmVyc2lvbj5bLDxvZmZzZXQ+XSIKK21zZ3N0ciAiPHPDvHLDvG0+Wyw8b2ZzZXQ+XSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzg0Cittc2dpZCAid3JpdGUgdGhlIHBhY2sgaW5kZXggZmlsZSBpbiB0aGUgc3BlY2lmaWVkIGlkeCBmb3JtYXQgdmVyc2lvbiIKK21zZ3N0ciAicGFrZXQgaW5kZWtzIGRvc3lhc8SxbsSxIGJlbGlydGlsZW4gaWR4IGJpw6dpbWluZGUgeWF6IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODcKK21zZ2lkICJtYXhpbXVtIHNpemUgb2YgZWFjaCBvdXRwdXQgcGFjayBmaWxlIgorbXNnc3RyICJoZXIgw6fEsWt0xLEgcGFrZXRpIGRvc3lhc8SxbsSxbiBvbGFiaWxlY2VrIGVuIGLDvHnDvGsgYm95dXR1IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODkKK21zZ2lkICJpZ25vcmUgYm9ycm93ZWQgb2JqZWN0cyBmcm9tIGFsdGVybmF0ZSBvYmplY3Qgc3RvcmUiCittc2dzdHIgImFsdGVybmF0aWYgbmVzbmUgbWHEn2F6YXPEsW5kYW4gw7Zkw7xuw6cgYWzEsW5hbiBuZXNuZWxlcmkgeW9rIHNheSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzkxCittc2dpZCAiaWdub3JlIHBhY2tlZCBvYmplY3RzIgorbXNnc3RyICJwYWtldGxlbm1pxZ8gbmVzbmVsZXJpIHlvayBzYXkiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5MworbXNnaWQgImxpbWl0IHBhY2sgd2luZG93IGJ5IG9iamVjdHMiCittc2dzdHIgInBha2V0IHBlbmNlcmVzaW5pIG5lc25lbGVybGUgc8SxbsSxcmxhIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTUKK21zZ2lkICJsaW1pdCBwYWNrIHdpbmRvdyBieSBtZW1vcnkgaW4gYWRkaXRpb24gdG8gb2JqZWN0IGxpbWl0IgorbXNnc3RyICJwYWtldCBwZW5jZXJlc2luaSBuZXNuZSBsaW1pdGluZSBlayBvbGFyYWsgYmVsbGVrIGlsZSBrxLFzxLF0bGEiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NworbXNnaWQgIm1heGltdW0gbGVuZ3RoIG9mIGRlbHRhIGNoYWluIGFsbG93ZWQgaW4gdGhlIHJlc3VsdGluZyBwYWNrIgorbXNnc3RyICJvcnRheWEgw6fEsWthbiBwYWtldHRlIG9sYWJpbGVjZWsgZW4gYsO8ecO8ayBkZWx0YSB6aW5jaXJpbmluIHV6dW5sdcSfdSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk5Cittc2dpZCAicmV1c2UgZXhpc3RpbmcgZGVsdGFzIgorbXNnc3RyICJ2YXIgb2xhbiBkZWx0YWxhcsSxIHllbmlkZW4ga3VsbGFuIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDEKK21zZ2lkICJyZXVzZSBleGlzdGluZyBvYmplY3RzIgorbXNnc3RyICJ2YXIgb2xhbiBuZXNuZWxlcmkgeWVuaWRlbiBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMworbXNnaWQgInVzZSBPRlNfREVMVEEgb2JqZWN0cyIKK21zZ3N0ciAiT0ZTX0RFTFRBIG5lc25lbGVyaSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwNQorbXNnaWQgInVzZSB0aHJlYWRzIHdoZW4gc2VhcmNoaW5nIGZvciBiZXN0IGRlbHRhIG1hdGNoZXMiCittc2dzdHIgImVuIGl5aSBkZWx0YSBlxZ9sZcWfbWVsZXJpbmkgYXJhcmtlbiBpxZ8gcGFyw6dhY8Sxa2xhcsSxbsSxIGt1bGxhbiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA3Cittc2dpZCAiZG8gbm90IGNyZWF0ZSBhbiBlbXB0eSBwYWNrIG91dHB1dCIKK21zZ3N0ciAiYm/FnyBiaXIgcGFrZXQgw6fEsWt0xLFzxLEgb2x1xZ90dXJtYSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA5Cittc2dpZCAicmVhZCByZXZpc2lvbiBhcmd1bWVudHMgZnJvbSBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAicmV2aXp5b24gZGXEn2nFn2tlbmxlcmluaSBzdGFuZGFydCBnaXJkaSdkZW4gb2t1IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MTEKK21zZ2lkICJsaW1pdCB0aGUgb2JqZWN0cyB0byB0aG9zZSB0aGF0IGFyZSBub3QgeWV0IHBhY2tlZCIKK21zZ3N0ciAibmVzbmVsZXJpIGhlbsO8eiBwYWtldGxlbm1leWVubGVyZSBrxLFzxLF0bGEiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNAorbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWFjaGFibGUgZnJvbSBhbnkgcmVmZXJlbmNlIgorbXNnc3RyICJoZXJoYW5naSBiaXIgYmHFn3Z1cnVkYW4gdWxhxZ/EsWxhYmlsaXIgb2xhbiBuZXNuZWxlcmkgacOnZXIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNworbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWZlcnJlZCBieSByZWZsb2cgZW50cmllcyIKK21zZ3N0ciAiYmHFn3Z1cnUgZ8O8bmzDvMSfw7wgdGFyYWbEsW5kYW4gYmHFn3Z1cnVsYW4gbmVzbmVsZXJpIGnDp2VyIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjAKK21zZ2lkICJpbmNsdWRlIG9iamVjdHMgcmVmZXJyZWQgdG8gYnkgdGhlIGluZGV4IgorbXNnc3RyICJpbmRla3MgdGFyYWbEsW5kYW4gYmHFn3Z1cnVsYW4gbmVzbmVsZXJpIGnDp2VyIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjMKK21zZ2lkICJvdXRwdXQgcGFjayB0byBzdGRvdXQiCittc2dzdHIgInBha2V0aSBzdGRvdXQnYSDDp8Sxa3TEsSB2ZXIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyNQorbXNnaWQgImluY2x1ZGUgdGFnIG9iamVjdHMgdGhhdCByZWZlciB0byBvYmplY3RzIHRvIGJlIHBhY2tlZCIKK21zZ3N0ciAicGFrZXRsZW5lY2VrIG5lc25lbGVyZSBiYcWfdnVyYW4gZXRpa2V0IG5lc25lbGVyaW5pIGnDp2VyIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjcKK21zZ2lkICJrZWVwIHVucmVhY2hhYmxlIG9iamVjdHMiCittc2dzdHIgInVsYcWfxLFsYW1heWFuIG5lc25lbGVyaSB0dXQiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyOQorbXNnaWQgInBhY2sgbG9vc2UgdW5yZWFjaGFibGUgb2JqZWN0cyIKK21zZ3N0ciAidWxhxZ/EsWxhbWF5YW4gZ2V2xZ9layBuZXNuZWxlcmkgcGFrZXRsZSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDMxCittc2dpZCAidW5wYWNrIHVucmVhY2hhYmxlIG9iamVjdHMgbmV3ZXIgdGhhbiA8dGltZT4iCittc2dzdHIgIjx6YW1hbj4nZGFuIGRhaGEgeWVuaSB1bGHFn8SxbGFtYXlhbiBuZXNuZWxlcmkgYcOnIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzQKK21zZ2lkICJ1c2UgdGhlIHNwYXJzZSByZWFjaGFiaWxpdHkgYWxnb3JpdGhtIgorbXNnc3RyICJhcmFsxLFrbMSxIHVsYcWfxLFsYWJpbGlybGlrIGFsZ29yaXRtYXPEsW7EsSBrdWxsYW4iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQzNgorbXNnaWQgImNyZWF0ZSB0aGluIHBhY2tzIgorbXNnc3RyICJpbmNlIHBha2V0bGVyIG9sdcWfdHVyIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzgKK21zZ2lkICJjcmVhdGUgcGFja3Mgc3VpdGFibGUgZm9yIHNoYWxsb3cgZmV0Y2hlcyIKK21zZ3N0ciAic8SxxJ8gZ2V0aXJtZWxlcmUgdXlndW4gcGFrZXRsZXIgb2x1xZ90dXIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0MAorbXNnaWQgImlnbm9yZSBwYWNrcyB0aGF0IGhhdmUgY29tcGFuaW9uIC5rZWVwIGZpbGUiCittc2dzdHIgImXFn2xpayBlZGVuIC5rZWVwIGRvc3lhc8SxbmEgaXllIHBha2V0bGVyaSB5b2sgc2F5IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDIKK21zZ2lkICJpZ25vcmUgdGhpcyBwYWNrIgorbXNnc3RyICJidSBwYWtldGkgeW9rIHNheSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQ0Cittc2dpZCAicGFjayBjb21wcmVzc2lvbiBsZXZlbCIKK21zZ3N0ciAicGFrZXQgc8Sxa8SxxZ90xLFybWEgZMO8emV5aSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQ2Cittc2dpZCAiZG8gbm90IGhpZGUgY29tbWl0cyBieSBncmFmdHMiCittc2dzdHIgImHFn8SxbGFybGEgZ2VsZW4gZ8O2bmRlcmlsZXJpIGdpemxlbWUiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0OAorbXNnaWQgInVzZSBhIGJpdG1hcCBpbmRleCBpZiBhdmFpbGFibGUgdG8gc3BlZWQgdXAgY291bnRpbmcgb2JqZWN0cyIKK21zZ3N0ciAiIgorIm5lc25lbGVyaW4gc2F5xLFtxLFuxLEgaMSxemxhbmTEsXJtYWsgacOnaW4gZcSfZXIgdmFyc2EgYmlyIGJpdGXFn2xlbSBpbmRla3NpIGt1bGxhbiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDUwCittc2dpZCAid3JpdGUgYSBiaXRtYXAgaW5kZXggdG9nZXRoZXIgd2l0aCB0aGUgcGFjayBpbmRleCIKK21zZ3N0ciAicGFrZXQgaW5kZWtzaXlsZSBiaXJsaWt0ZSBiaXIgYml0ZcWfbGVtIGluZGVrc2kgZGUgeWF6IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTQKK21zZ2lkICJ3cml0ZSBhIGJpdG1hcCBpbmRleCBpZiBwb3NzaWJsZSIKK21zZ3N0ciAiZcSfZXIgb2xhbmFrbMSxeXNhIGJpciBiaXRlxZ9sZW0gaW5kZWtzaSB5YXoiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ1OAorbXNnaWQgImhhbmRsaW5nIGZvciBtaXNzaW5nIG9iamVjdHMiCittc2dzdHIgImVrc2lrIG5lc25lbGVyIGnDp2luIGnFn2xlbSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDYxCittc2dpZCAiZG8gbm90IHBhY2sgb2JqZWN0cyBpbiBwcm9taXNvciBwYWNrZmlsZXMiCittc2dzdHIgIm5lc25lbGVyaSB2YWF0w6dpIHBha2V0IGRvc3lhbGFyxLF5bGEgcGFrZXRsZW1lIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NjMKK21zZ2lkICJyZXNwZWN0IGlzbGFuZHMgZHVyaW5nIGRlbHRhIGNvbXByZXNzaW9uIgorbXNnc3RyICJkZWx0YSBzxLFrxLHFn3TEsXJtYXPEsSBzxLFyYXPEsW5kYSBhZGFsYXJhIHV5IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVsdGEgY2hhaW4gZGVwdGggJWQgaXMgdG9vIGRlZXAsIGZvcmNpbmcgJWQiCittc2dzdHIgImRlbHRhIHppbmNpciBkZXJpbmxpxJ9pICVkIMOnb2sgZGVyaW4sICVkIHpvcmxhbsSxeW9yIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFjay5kZWx0YUNhY2hlTGltaXQgaXMgdG9vIGhpZ2gsIGZvcmNpbmcgJWQiCittc2dzdHIgInBhY2suZGVsdGFDYWNoZUxpbWl0IMOnb2sgecO8a3NlaywgJWQgem9ybGFuxLF5b3IiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1MQorbXNnaWQgIi0tbWF4LXBhY2stc2l6ZSBjYW5ub3QgYmUgdXNlZCB0byBidWlsZCBhIHBhY2sgZm9yIHRyYW5zZmVyIgorbXNnc3RyICItLW1heC1wYWNrLXNpemUsIGFrdGFyxLFtIGnDp2luIGJpciBwYWtldCB5YXDEsW3EsW5kYSBrdWxsYW7EsWxhbWF6IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NTMKK21zZ2lkICJtaW5pbXVtIHBhY2sgc2l6ZSBsaW1pdCBpcyAxIE1pQiIKK21zZ3N0ciAib2xhYmlsZWNlayBlbiBrw7zDp8O8ayBwYWtldCBib3l1dHUgbGltaXRpIDEgTWlCJ2TEsXIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1OAorbXNnaWQgIi0tdGhpbiBjYW5ub3QgYmUgdXNlZCB0byBidWlsZCBhbiBpbmRleGFibGUgcGFjayIKK21zZ3N0ciAiLS10aGluIGJpciBpbmRla3NsZW5lYmlsaXIgcGFrZXQgeWFwxLFtxLFuZGEga3VsbGFuxLFsYW1heiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTYxCittc2dpZCAiLS1rZWVwLXVucmVhY2hhYmxlIGFuZCAtLXVucGFjay11bnJlYWNoYWJsZSBhcmUgaW5jb21wYXRpYmxlIgorbXNnc3RyICItLWtlZXAtdW5yZWFjaGFibGUgdmUgLS11bnBhY2stdW5yZWFjaGFibGUgYmlyYmlyaXlsZSB1eXVtc3V6IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NjcKK21zZ2lkICJjYW5ub3QgdXNlIC0tZmlsdGVyIHdpdGhvdXQgLS1zdGRvdXQiCittc2dzdHIgIi0tZmlsdGVyLCAtLXN0ZG91dCBvbG1hZGFuIGt1bGxhbsSxbGFtYXoiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzYyNworbXNnaWQgIkVudW1lcmF0aW5nIG9iamVjdHMiCittc2dzdHIgIk5lc25lbGVyIHNhecSxcCBkw7Zrw7xsw7x5b3IiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzY1NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVG90YWwgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCByZXVzZWQgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCBwYWNrLSIKKyJyZXVzZWQgJTxQUkl1MzI+IgorbXNnc3RyICIiCisiVG9wbGFtICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgeWVuaWRlbiBrdWxsYW7EsWxhbiAlPFBSSXUzMj4gKGRlbHRhICIKKyIlPFBSSXUzMj4pLCB5ZW5pZGVuIGt1bGxhbsSxbGFuIHBha2V0ICU8UFJJdTMyPiIKKworIzogYnVpbHRpbi9wYWNrLXJlZnMuYzo4Cittc2dpZCAiZ2l0IHBhY2stcmVmcyBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHBhY2stcmVmcyBbPHNlw6dlbmVrbGVyPl0iCisKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKK21zZ2lkICJwYWNrIGV2ZXJ5dGhpbmciCittc2dzdHIgImhlciDFn2V5aSBwYWtldGxlIgorCisjOiBidWlsdGluL3BhY2stcmVmcy5jOjE3Cittc2dpZCAicHJ1bmUgbG9vc2UgcmVmcyAoZGVmYXVsdCkiCittc2dzdHIgImdldsWfZWsgYmHFn3Z1cnVsYXLEsSBidWRhICjDtm50YW7EsW1sxLEpIgorCisjOiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjkKK21zZ2lkICJnaXQgcHJ1bmUtcGFja2VkIFstbiB8IC0tZHJ5LXJ1bl0gWy1xIHwgLS1xdWlldF0iCittc2dzdHIgImdpdCBwcnVuZS1wYWNrZWQgWy1uIHwgLS1kcnktcnVuXSBbLXEgfCAtLXF1aWV0XSIKKworIzogYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo0MgorbXNnaWQgIlJlbW92aW5nIGR1cGxpY2F0ZSBvYmplY3RzIgorbXNnc3RyICJZaW5lbGVubWnFnyBuZXNuZWxlciBrYWxkxLFyxLFsxLF5b3IiCisKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMgorbXNnaWQgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGltZT5dIFstLV0gWzxoZWFkPi4uLl0iCittc2dzdHIgIiIKKyJnaXQgcHJ1bmUgWy1uXSBbLXZdIFstLXByb2dyZXNzXSBbLS1leHBpcmUgPHphbWFuPl0gWy0tXSBbPGRhbC11Y3U+Li4uXSIKKworIzogYnVpbHRpbi9wcnVuZS5jOjEzMQorbXNnaWQgInJlcG9ydCBwcnVuZWQgb2JqZWN0cyIKK21zZ3N0ciAiYnVkYW5txLHFnyBuZXNuZWxlcmkgYmlsZGlyIgorCisjOiBidWlsdGluL3BydW5lLmM6MTM0Cittc2dpZCAiZXhwaXJlIG9iamVjdHMgb2xkZXIgdGhhbiA8dGltZT4iCittc2dzdHIgIjx6YW1hbj4nZGFuIGRhaGEgZXNraSBuZXNuZWxlcmluIGjDvGttw7xuw7wga2FsZMSxciIKKworIzogYnVpbHRpbi9wcnVuZS5jOjEzNgorbXNnaWQgImxpbWl0IHRyYXZlcnNhbCB0byBvYmplY3RzIG91dHNpZGUgcHJvbWlzb3IgcGFja2ZpbGVzIgorbXNnc3RyICJwcm9taXNvciBwYWtldCBkb3N5YWxhcsSxbsSxbiBkxLHFn8SxbmRha2kgbmVzbmVsZXJlIHRhcmFtYXnEsSBrxLFzxLF0bGEiCisKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxNTAKK21zZ2lkICJjYW5ub3QgcHJ1bmUgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCittc2dzdHIgImJpciBwcmVjaW91cy1vYmplY3RzIGRlcG9zdSBpw6dpbmRlIGJ1ZGFtYSB5YXDEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL3B1bGwuYzo0NSBidWlsdGluL3B1bGwuYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciAlczogJXMiCittc2dzdHIgIiVzIGnDp2luIGdlw6dlcnNpeiBkZcSfZXI6ICVzIgorCisjOiBidWlsdGluL3B1bGwuYzo2NworbXNnaWQgImdpdCBwdWxsIFs8b3B0aW9ucz5dIFs8cmVwb3NpdG9yeT4gWzxyZWZzcGVjPi4uLl1dIgorbXNnc3RyICJnaXQgcHVsbCBbPHNlw6dlbmVrbGVyPl0gWzxkZXBvPiBbPGLFn3ZyLWJscnTDpz4uLi5dXSIKKworIzogYnVpbHRpbi9wdWxsLmM6MTIyCittc2dpZCAiY29udHJvbCBmb3IgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMiCittc2dzdHIgImFsdG1vZMO8bGxlcmluIMO2enlpbmVsaSBnZXRpcmlsbWVzaSBpw6dpbiBkZW5ldGxlbWUiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyNgorbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBtZXJnaW5nIgorbXNnc3RyICJCaXJsZcWfdGlybWUgaWxlIGlsZ2lsaSBzZcOnZW5la2xlciIKKworIzogYnVpbHRpbi9wdWxsLmM6MTI5Cittc2dpZCAiaW5jb3Jwb3JhdGUgY2hhbmdlcyBieSByZWJhc2luZyByYXRoZXIgdGhhbiBtZXJnaW5nIgorbXNnc3RyICJkZcSfacWfaWtsaWtsZXJpIGJpcmxlxZ90aXJtZSB5ZXJpbmUgeWVuaWRlbiB0ZW1lbGxlbmRpcm1lIGlsZSBrYXQiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjE1NyBidWlsdGluL3JlYmFzZS5jOjQ3MSBidWlsdGluL3JldmVydC5jOjEyNgorbXNnaWQgImFsbG93IGZhc3QtZm9yd2FyZCIKK21zZ3N0ciAiaWxlcmkgc2FyxLFtYSBpemluIHZlciIKKworIzogYnVpbHRpbi9wdWxsLmM6MTY2Cittc2dpZCAiYXV0b21hdGljYWxseSBzdGFzaC9zdGFzaCBwb3AgYmVmb3JlIGFuZCBhZnRlciByZWJhc2UiCittc2dzdHIgIiIKKyJ5ZW5pZGVuIHRlbWVsbGVuZGlybWUgw7ZuY2VzaSB2ZSBzb25yYXPEsW5kYSBrZW5kaWxpxJ9pbmRlbiB6dWxhbGEvenVsYXnEsSBwYXRsYXQiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjE4MgorbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBmZXRjaGluZyIKK21zZ3N0ciAiR2V0aXJtZSBpbGUgaWxnaWxpIHNlw6dlbmVrbGVyIgorCisjOiBidWlsdGluL3B1bGwuYzoxOTIKK21zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgbG9jYWwgYnJhbmNoIgorbXNnc3RyICJ6b3JsYSB5ZXJlbCBkYWzEsW4gw7x6ZXJpbmUgeWF6IgorCisjOiBidWlsdGluL3B1bGwuYzoyMDAKK21zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBwdWxsZWQgaW4gcGFyYWxsZWwiCittc2dzdHIgInBhcmFsZWxkZSDDp2VraWxlbiBhbHRtb2TDvGxsZXJpbiBzYXnEsXPEsSIKKworIzogYnVpbHRpbi9wdWxsLmM6MzAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yIHB1bGwuZmY6ICVzIgorbXNnc3RyICJwdWxsLmZmIGnDp2luIGdlw6dlcnNpeiBkZcSfZXI6ICVzIgorCisjOiBidWlsdGluL3B1bGwuYzo0MjYKK21zZ2lkICIiCisiVGhlcmUgaXMgbm8gY2FuZGlkYXRlIGZvciByZWJhc2luZyBhZ2FpbnN0IGFtb25nIHRoZSByZWZzIHRoYXQgeW91IGp1c3QgIgorImZldGNoZWQuIgorbXNnc3RyICIiCisiQXogw7ZuY2UgZ2V0aXJkacSfaW5peiByZWZlcmFuc2xhciBhcmFzxLFuZGEgeWVuaWRlbiB0ZW1lbGxlbmRpcm1lIGnDp2luIGFkYXkgIgorInlvay4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQyOAorbXNnaWQgIiIKKyJUaGVyZSBhcmUgbm8gY2FuZGlkYXRlcyBmb3IgbWVyZ2luZyBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0IGZldGNoZWQuIgorbXNnc3RyICJBeiDDtm5jZSBnZXRpcmRpxJ9pbml6IGJhxZ92dXJ1bGFyIGFyYXPEsW5kYSBiaXJsZcWfdGlybWUgacOnaW4gYWRheSB5b2suIgorCisjOiBidWlsdGluL3B1bGwuYzo0MjkKK21zZ2lkICIiCisiR2VuZXJhbGx5IHRoaXMgbWVhbnMgdGhhdCB5b3UgcHJvdmlkZWQgYSB3aWxkY2FyZCByZWZzcGVjIHdoaWNoIGhhZCBub1xuIgorIm1hdGNoZXMgb24gdGhlIHJlbW90ZSBlbmQuIgorbXNnc3RyICIiCisiR2VuZWxsaWtsZSBidSwgdXphayB1w6d0YSBlxZ9sZcWfbWVzaSBvbG1heWFuIGJpciBqb2tlciBiYcWfdnVydSBiZWxpcnRlY2lcbiIKKyJzYcSfbGFkxLHEn8SxbsSxeiBhbmxhbcSxbmEgZ2VsaXIuIgorCisjOiBidWlsdGluL3B1bGwuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBhc2tlZCB0byBwdWxsIGZyb20gdGhlIHJlbW90ZSAnJXMnLCBidXQgZGlkIG5vdCBzcGVjaWZ5XG4iCisiYSBicmFuY2guIEJlY2F1c2UgdGhpcyBpcyBub3QgdGhlIGRlZmF1bHQgY29uZmlndXJlZCByZW1vdGVcbiIKKyJmb3IgeW91ciBjdXJyZW50IGJyYW5jaCwgeW91IG11c3Qgc3BlY2lmeSBhIGJyYW5jaCBvbiB0aGUgY29tbWFuZCBsaW5lLiIKK21zZ3N0ciAiIgorIiclcycgdXphayBrb251bXVuZGFuIMOnZWttZSB5YXBtYWsgaXN0ZWRpbml6LCBhbmNhayBiaXIgZGFsIGJlbGlydG1lZGluaXouXG4iCisiQnUsIGdlw6dlcmxpIGRhbMSxbsSxeiBpw6dpbiDDtm50YW7EsW1sxLEgeWFwxLFsYW5kxLFyxLFsbcSxxZ8gdXphayBrb251bSBvbG1hZMSxxJ/EsW5kYW4sXG4iCisia29tdXQgc2F0xLFyxLFuZGEgYmlyIGRhbCBiZWxpcnRtZW5peiBnZXJla2lyLiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDM3IGJ1aWx0aW4vcmViYXNlLmM6MTQwOSBnaXQtcGFyc2UtcmVtb3RlLnNoOjczCittc2dpZCAiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLiIKK21zZ3N0ciAixZ51IGFuZGEgYmlyIGRhbCDDvHplcmluZGUgZGXEn2lsc2luaXouIgorCisjOiBidWlsdGluL3B1bGwuYzo0MzkgYnVpbHRpbi9wdWxsLmM6NDU0IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzkKK21zZ2lkICJQbGVhc2Ugc3BlY2lmeSB3aGljaCBicmFuY2ggeW91IHdhbnQgdG8gcmViYXNlIGFnYWluc3QuIgorbXNnc3RyICIiCisiTMO8dGZlbiBoYW5naSBkYWxhIGthcsWfxLEgeWVuaWRlbiB0ZW1lbGxlbmRpcm1lIHlhcG1hayBpc3RlZGnEn2luaXppIGJlbGlydGluLiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDQxIGJ1aWx0aW4vcHVsbC5jOjQ1NiBnaXQtcGFyc2UtcmVtb3RlLnNoOjgyCittc2dpZCAiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIG1lcmdlIHdpdGguIgorbXNnc3RyICJMw7x0ZmVuIGhhbmdpIGRhbCBpbGUgYmlybGXFn3Rpcm1layBpc3RlZGnEn2luaXppIGJlbGlydGluLiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDQyIGJ1aWx0aW4vcHVsbC5jOjQ1NworbXNnaWQgIlNlZSBnaXQtcHVsbCgxKSBmb3IgZGV0YWlscy4iCittc2dzdHIgIkF5csSxbnTEsWxhciBpw6dpbjogZ2l0LXB1bGwoMSkiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0NCBidWlsdGluL3B1bGwuYzo0NTAgYnVpbHRpbi9wdWxsLmM6NDU5CisjOiBidWlsdGluL3JlYmFzZS5jOjE0MTUgZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NAorbXNnaWQgIjxyZW1vdGU+IgorbXNnc3RyICI8dXphay1rb251bT4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0NCBidWlsdGluL3B1bGwuYzo0NTkgYnVpbHRpbi9wdWxsLmM6NDY0CisjOiBnaXQtcGFyc2UtcmVtb3RlLnNoOjY1Cittc2dpZCAiPGJyYW5jaD4iCittc2dzdHIgIjxkYWw+IgorCisjOiBidWlsdGluL3B1bGwuYzo0NTIgYnVpbHRpbi9yZWJhc2UuYzoxNDA3IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzUKK21zZ2lkICJUaGVyZSBpcyBubyB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGN1cnJlbnQgYnJhbmNoLiIKK21zZ3N0ciAiR2XDp2VybGkgZGFsIGnDp2luIGl6bGVtZSBiaWxnaXNpIHlvay4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ2MSBnaXQtcGFyc2UtcmVtb3RlLnNoOjk1Cittc2dpZCAiIgorIklmIHlvdSB3aXNoIHRvIHNldCB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhpcyBicmFuY2ggeW91IGNhbiBkbyBzbyB3aXRoOiIKK21zZ3N0ciAiIgorIkXEn2VyIGJ1IGRhbCBpw6dpbiBpemxlbWUgYmlsZ2lzaSBheWFybGFtYWsgaXN0ZXJzZW5peiDFn3VudW5sYSB5YXBhYmlsaXJzaW5pejoiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBjb25maWd1cmF0aW9uIHNwZWNpZmllcyB0byBtZXJnZSB3aXRoIHRoZSByZWYgJyVzJ1xuIgorImZyb20gdGhlIHJlbW90ZSwgYnV0IG5vIHN1Y2ggcmVmIHdhcyBmZXRjaGVkLiIKK21zZ3N0ciAiIgorIllhcMSxbGFuZMSxcm1hbsSxeiB1emFrIGtvbnVtZGFuICclcycgYmHFn3Z1cnVzdSBpbGUgYmlybGXFn3Rpcm1leWkgc8O2eWzDvHlvcixcbiIKKyJhbmNhayBiw7Z5bGUgYmlyIGJhxZ92dXJ1IGdldGlyaWxtZWRpLiIKKworIzogYnVpbHRpbi9wdWxsLmM6NTc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgY29tbWl0ICVzIgorbXNnc3RyICIlcyBnw7ZuZGVyaXNpbmUgZXJpxZ9pbGVtZWRpIgorCisjOiBidWlsdGluL3B1bGwuYzo4NTcKK21zZ2lkICJpZ25vcmluZyAtLXZlcmlmeS1zaWduYXR1cmVzIGZvciByZWJhc2UiCittc2dzdHIgInllbmlkZW4gdGVtZWxsZW5kaXJtZSBpw6dpbiAtLXZlcmlmeS1zaWduYXR1cmUgeW9rIHNhecSxbMSxeW9yIgorCisjOiBidWlsdGluL3B1bGwuYzo5MTIKK21zZ2lkICItLVtuby1dYXV0b3N0YXNoIG9wdGlvbiBpcyBvbmx5IHZhbGlkIHdpdGggLS1yZWJhc2UuIgorbXNnc3RyICItLVtuby1dYXV0b3N0YXNoIHNlw6dlbmXEn2kgeWFsbsSxemNhIC0tcmViYXNlIGlsZSBnZcOnZXJsaS4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjkyMAorbXNnaWQgIlVwZGF0aW5nIGFuIHVuYm9ybiBicmFuY2ggd2l0aCBjaGFuZ2VzIGFkZGVkIHRvIHRoZSBpbmRleC4iCittc2dzdHIgIsSwbmRla3NlIGVrbGVuZW4gZGXEn2nFn2lrbGlrbGVybGUgaGVuw7x6IGRvxJ9tYW3EscWfIGJpciBkYWwgZ8O8bmNlbGxlbml5b3IuIgorCisjOiBidWlsdGluL3B1bGwuYzo5MjQKK21zZ2lkICJwdWxsIHdpdGggcmViYXNlIgorbXNnc3RyICJ5ZW5pZGVuIHRlbWVsbGVuZGlybWUgaWxlIMOnZWsiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjkyNQorbXNnaWQgInBsZWFzZSBjb21taXQgb3Igc3Rhc2ggdGhlbS4iCittc2dzdHIgIkzDvHRmZW4gb25sYXLEsSBnw7ZuZGVyaW4gdmV5YSB6dWxhbGF5xLFuLiIKKworIzogYnVpbHRpbi9wdWxsLmM6OTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmZXRjaCB1cGRhdGVkIHRoZSBjdXJyZW50IGJyYW5jaCBoZWFkLlxuIgorImZhc3QtZm9yd2FyZGluZyB5b3VyIHdvcmtpbmcgdHJlZSBmcm9tXG4iCisiY29tbWl0ICVzLiIKK21zZ3N0ciAiIgorIkdldGlybWUgZ2XDp2VybGkgZGFsIHVjdW51IGfDvG5jZWxsZWRpLlxuIgorIsOHYWzEscWfbWEgYcSfYWPEsW7EsXogJXMgZ8O2bmRlcmlzaW5kZW5cbiIKKyJpbGVyaSBzYXLEsWzEsXlvci4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjk1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ2Fubm90IGZhc3QtZm9yd2FyZCB5b3VyIHdvcmtpbmcgdHJlZS5cbiIKKyJBZnRlciBtYWtpbmcgc3VyZSB0aGF0IHlvdSBzYXZlZCBhbnl0aGluZyBwcmVjaW91cyBmcm9tXG4iCisiJCBnaXQgZGlmZiAlc1xuIgorIm91dHB1dCwgcnVuXG4iCisiJCBnaXQgcmVzZXQgLS1oYXJkXG4iCisidG8gcmVjb3Zlci4iCittc2dzdHIgIiIKKyLDh2FsxLHFn21hIGHEn2FjxLFuxLF6IGlsZXJpIHNhcsSxbGFtxLF5b3IuXG4iCisiJCBnaXQgZGlmZiAlc1xuIgorIsOnxLFrdMSxc8SxbmRhbiBnZXJla2xpIG9sYWNhxJ/EsW7EsSBkw7zFn8O8bmTDvMSfw7xuw7x6IMO2Z2VsZXJpXG4iCisia2F5ZGV0dGnEn2luaXpkZW4gZW1pbiBvbGR1a3RhbiBzb25yYSBrdXJ0YXJtYSBpw6dpblxuIgorIiQgZ2l0IHJlc2V0IC0taGFyZFxuIgorImtvbXV0dW51IMOnYWzEscWfdMSxcsSxbi4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjk3MQorbXNnaWQgIkNhbm5vdCBtZXJnZSBtdWx0aXBsZSBicmFuY2hlcyBpbnRvIGVtcHR5IGhlYWQuIgorbXNnc3RyICJCb8WfIGRhbCB1Y3VuYSBiaXJkZW4gw6dvayBkYWwgYmlybGXFn3RpcmlsZW1lei4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjk3NQorbXNnaWQgIkNhbm5vdCByZWJhc2Ugb250byBtdWx0aXBsZSBicmFuY2hlcy4iCittc2dzdHIgIkJpcmRlbiDDp29rIGRhbGEgeWVuaWRlbiB0ZW1lbGxlbmRpcm1lIHlhcMSxbGFtYXouIgorCisjOiBidWlsdGluL3B1bGwuYzo5ODIKK21zZ2lkICJjYW5ub3QgcmViYXNlIHdpdGggbG9jYWxseSByZWNvcmRlZCBzdWJtb2R1bGUgbW9kaWZpY2F0aW9ucyIKK21zZ3N0ciAiIgorInllcmVsZGUga2F5ZMSxIHlhesSxbG3EscWfIGFsdG1vZMO8bCBkZcSfacWfaWtsaWtsZXJpeWxlIHllbmlkZW4gdGVtZWxsZW5kaXJtZSAiCisieWFwxLFsYW1heiIKKworIzogYnVpbHRpbi9wdXNoLmM6MTkKK21zZ2lkICJnaXQgcHVzaCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKK21zZ3N0ciAiZ2l0IHB1c2ggWzxzZcOnZW5la2xlcj5dIFs8ZGVwbz4gWzxixZ92ci1ibHJ0w6c+Li4uXV0iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjExMgorbXNnaWQgInRhZyBzaG9ydGhhbmQgd2l0aG91dCA8dGFnPiIKK21zZ3N0ciAic3Rlbm9ncmFmaXlpIDxldGlrZXQ+IG9sbWFkYW4gZXRpa2V0bGUiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjEyMgorbXNnaWQgIi0tZGVsZXRlIG9ubHkgYWNjZXB0cyBwbGFpbiB0YXJnZXQgcmVmIG5hbWVzIgorbXNnc3RyICItLWRlbGV0ZSB5YWxuxLF6Y2EgZMO8eiBoZWRlZiBiYcWfdnVydSBhZGxhcsSxbsSxIGthYnVsIGVkZXIiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjE2OAorbXNnaWQgIiIKKyJcbiIKKyJUbyBjaG9vc2UgZWl0aGVyIG9wdGlvbiBwZXJtYW5lbnRseSwgc2VlIHB1c2guZGVmYXVsdCBpbiAnZ2l0IGhlbHAgY29uZmlnJy4iCittc2dzdHIgIiIKKyJcbiIKKyJCdSBzZcOnZW5la2xlcmRlbiBiaXJpbmkga2FsxLFjxLEgb2xhcmFrIHNlw6dtZWsgacOnaW4gJ2dpdCBoZWxwIGNvbmZpZycgacOnaW5kZSAiCisicHVzaC5kZWZhdWx0IGdpcmRpc2luZSBiYWvEsW4uIgorCisjOiBidWlsdGluL3B1c2guYzoxNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSB1cHN0cmVhbSBicmFuY2ggb2YgeW91ciBjdXJyZW50IGJyYW5jaCBkb2VzIG5vdCBtYXRjaFxuIgorInRoZSBuYW1lIG9mIHlvdXIgY3VycmVudCBicmFuY2guICBUbyBwdXNoIHRvIHRoZSB1cHN0cmVhbSBicmFuY2hcbiIKKyJvbiB0aGUgcmVtb3RlLCB1c2VcbiIKKyJcbiIKKyIgICAgZ2l0IHB1c2ggJXMgSEVBRDolc1xuIgorIlxuIgorIlRvIHB1c2ggdG8gdGhlIGJyYW5jaCBvZiB0aGUgc2FtZSBuYW1lIG9uIHRoZSByZW1vdGUsIHVzZVxuIgorIlxuIgorIiAgICBnaXQgcHVzaCAlcyBIRUFEXG4iCisiJXMiCittc2dzdHIgIiIKKyJHZcOnZXJsaSBkYWzEsW7EsXrEsW4gw7xzdGtheW5hayBkYWzEsSwgZ2XDp2VybGkgZGFsxLFuxLF6xLFuIGFkxLF5bGFcbiIKKyJlxZ9sZcWfbWl5b3IuIFV6YWsga29udW1kYWtpIMO8c3RrYXluYcSfYSBnaXRtZWsgacOnaW4gxZ91bnUga3VsbGFuxLFuOlxuIgorIlxuIgorIlx0Z2l0IHB1c2ggJXMgSEVBRDolc1xuIgorIlxuIgorIlV6YWsga29udW1kYWtpIGF5bsSxIGFkbMSxIGRhbGEgaXRtZWsgacOnaW5zZSDFn3VudSBrdWxsYW7EsW46XG4iCisiXG4iCisiXHRnaXQgcHVzaCAlcyBIRUFEXG4iCisiJXMiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjE4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLlxuIgorIlRvIHB1c2ggdGhlIGhpc3RvcnkgbGVhZGluZyB0byB0aGUgY3VycmVudCAoZGV0YWNoZWQgSEVBRClcbiIKKyJzdGF0ZSBub3csIHVzZVxuIgorIlxuIgorIiAgICBnaXQgcHVzaCAlcyBIRUFEOjxuYW1lLW9mLXJlbW90ZS1icmFuY2g+XG4iCittc2dzdHIgIiIKKyLFnnUgYW5kYSBiaXIgZGFsIMO8emVyaW5kZSBkZcSfaWxzaW5pei5cbiIKKyJHZcOnZXJsaSBkdXJ1bWEgKGF5csSxayBIRUFEKSB5b2wgYcOnYW4gZ2XDp21pxZ9pIMWfaW1kaSBpdG1la1xuIgorImnDp2luIMWfdW51IGt1bGxhbsSxbjpcbiIKKyJcbiIKKyJcdGdpdCBwdXNoICVzIEhFQUQ6PHV6YWsta29udW0tZGFsxLFuxLFuLWFkxLE+XG4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGN1cnJlbnQgYnJhbmNoICVzIGhhcyBubyB1cHN0cmVhbSBicmFuY2guXG4iCisiVG8gcHVzaCB0aGUgY3VycmVudCBicmFuY2ggYW5kIHNldCB0aGUgcmVtb3RlIGFzIHVwc3RyZWFtLCB1c2VcbiIKKyJcbiIKKyIgICAgZ2l0IHB1c2ggLS1zZXQtdXBzdHJlYW0gJXMgJXNcbiIKK21zZ3N0ciAiIgorIkdlw6dlcmxpICVzIGRhbMSxbsSxbiBiaXIgw7xzdGtheW5hayBkYWzEsSB5b2suXG4iCisiR2XDp2VybGkgZGFsxLEgaXRtZWsgdmUgdXphayBrb251bXUgw7xzdGtheW5hayBvbGFyYWsgYXlhcmxhbWFrXG4iCisiacOnaW4gxZ91bnUga3VsbGFuxLFuOlxuIgorIlxuIgorIlx0Z2l0IHB1c2ggLS1zZXQtdXBzdHJlYW0gJXMgJXNcbiIKKworIzogYnVpbHRpbi9wdXNoLmM6MjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZSBjdXJyZW50IGJyYW5jaCAlcyBoYXMgbXVsdGlwbGUgdXBzdHJlYW0gYnJhbmNoZXMsIHJlZnVzaW5nIHRvIHB1c2guIgorbXNnc3RyICJHZcOnZXJsaSAlcyBkYWzEsW7EsW4gYmlyZGVuIMOnb2sgw7xzdGtheW5hxJ/EsSB2YXIsIGl0bWUgcmVkZGVkaWxpeW9yLiIKKworIzogYnVpbHRpbi9wdXNoLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgYXJlIHB1c2hpbmcgdG8gcmVtb3RlICclcycsIHdoaWNoIGlzIG5vdCB0aGUgdXBzdHJlYW0gb2ZcbiIKKyJ5b3VyIGN1cnJlbnQgYnJhbmNoICclcycsIHdpdGhvdXQgdGVsbGluZyBtZSB3aGF0IHRvIHB1c2hcbiIKKyJ0byB1cGRhdGUgd2hpY2ggcmVtb3RlIGJyYW5jaC4iCittc2dzdHIgIiIKKyInJXMnIHV6YWsga29udW11bmEgaGFuZ2kgdXphayBkYWzEsSBnw7xuY2VsbGVtZWsgacOnaW4gbmV5aW5cbiIKKyJpdGlsZWNlxJ9pbmkgYmVsaXJ0bWVkZW4gaXRpeW9yc3VudXosIGFuY2FrIG8gZ2XDp2VybGkgJyVzJ1xuIgorImRhbMSxbsSxesSxbiDDvHN0a2F5bmHEn8SxIGRlxJ9pbC4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjI3MAorbXNnaWQgIiIKKyJZb3UgZGlkbid0IHNwZWNpZnkgYW55IHJlZnNwZWNzIHRvIHB1c2gsIGFuZCBwdXNoLmRlZmF1bHQgaXMgXCJub3RoaW5nXCIuIgorbXNnc3RyICIiCisixLB0bWVrIGnDp2luIGJpciBiYcWfdnVydSBiZWxpcnRlY2kgYmVsaXJ0bWVkaW5peiB2ZSBwdXNoLmRlZmF1bHQgXCJub3RoaW5nXCIuIgorCisjOiBidWlsdGluL3B1c2guYzoyNzcKK21zZ2lkICIiCisiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHRpcCBvZiB5b3VyIGN1cnJlbnQgYnJhbmNoIGlzIGJlaGluZFxuIgorIml0cyByZW1vdGUgY291bnRlcnBhcnQuIEludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXMgKGUuZy5cbiIKKyInZ2l0IHB1bGwgLi4uJykgYmVmb3JlIHB1c2hpbmcgYWdhaW4uXG4iCisiU2VlIHRoZSAnTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzJyBpbiAnZ2l0IHB1c2ggLS1oZWxwJyBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKyJHw7xuY2VsbGVtZWxlciByZWRkZWRpbGRpIMOnw7xua8O8IGdlw6dlcmxpIGRhbMSxbsSxesSxbiB1Y3Uga2VuZGlzaW5pblxuIgorInV6YWsga29udW0ga2FyxZ/EsXTEsW5kYW4gZ2VyaWRlLiBZZW5pZGVuIGl0bWVkZW4gw7ZuY2UgdXphayBrb251bWRha2lcbiIKKyJkZcSfacWfaWtsaWtsZXJpIGVudGVncmUgZWRpbiAow7Zybi4gJ2dpdCBwdWxsJy4uLikuXG4iCisiQXlyxLFudMSxbGFyIGnDp2luICdnaXQgcHVzaCAtLWhlbHAnIGnDp2luZGUgJ05vdGVzIGFib3V0IGZhc3QtZm9yd2FyZHMnYSBiYWvEsW4uIgorCisjOiBidWlsdGluL3B1c2guYzoyODMKK21zZ2lkICIiCisiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgYSBwdXNoZWQgYnJhbmNoIHRpcCBpcyBiZWhpbmQgaXRzIHJlbW90ZVxuIgorImNvdW50ZXJwYXJ0LiBDaGVjayBvdXQgdGhpcyBicmFuY2ggYW5kIGludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXNcbiIKKyIoZS5nLiAnZ2l0IHB1bGwgLi4uJykgYmVmb3JlIHB1c2hpbmcgYWdhaW4uXG4iCisiU2VlIHRoZSAnTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzJyBpbiAnZ2l0IHB1c2ggLS1oZWxwJyBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKyJHw7xuY2VsbGVtZWxlciByZWRkZWRpbGRpIMOnw7xua8O8IGl0aWxtacWfIGJpciBkYWwgdWN1IGtlbmRpc2luaW5cbiIKKyJ1emFrIGtvbnVtIGthcsWfxLF0xLFuZGFuIGdlcmlkZS4gWWVuaWRlbiBpdG1lZGVuIMO2bmNlIGJ1IGRhbMSxIMOnxLFrxLHFn1xuIgorInlhcMSxbiB2ZSB1emFrIGtvbnVtZGFraSBkZcSfacWfaWtsaWtsZXJpIGVudGVncmUgZWRpbiAow7Zybi4gJ2dpdCBwdWxsJy4uLikuXG4iCisiQXlyxLFudMSxbGFyIGnDp2luICdnaXQgcHVzaCAtLWhlbHAnIGnDp2luZGUgJ05vdGVzIGFib3V0IGZhc3QtZm9yd2FyZHMnYSBiYWvEsW4uIgorCisjOiBidWlsdGluL3B1c2guYzoyODkKK21zZ2lkICIiCisiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHJlbW90ZSBjb250YWlucyB3b3JrIHRoYXQgeW91IGRvXG4iCisibm90IGhhdmUgbG9jYWxseS4gVGhpcyBpcyB1c3VhbGx5IGNhdXNlZCBieSBhbm90aGVyIHJlcG9zaXRvcnkgcHVzaGluZ1xuIgorInRvIHRoZSBzYW1lIHJlZi4gWW91IG1heSB3YW50IHRvIGZpcnN0IGludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXNcbiIKKyIoZS5nLiwgJ2dpdCBwdWxsIC4uLicpIGJlZm9yZSBwdXNoaW5nIGFnYWluLlxuIgorIlNlZSB0aGUgJ05vdGUgYWJvdXQgZmFzdC1mb3J3YXJkcycgaW4gJ2dpdCBwdXNoIC0taGVscCcgZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisiR8O8bmNlbGxlbWVsZXIgcmVkZGVkaWxkaSDDp8O8bmvDvCB1emFrIGtvbnVtZGEgaGVuw7x6IHllcmVsZGUgaXllc2kgb2xtYWTEscSfxLFuxLF6XG4iCisiZGXEn2nFn2lrbGlrbGVyIHZhci4gQnUgZ2VuZWxkZSBiYcWfa2EgYmlyIGRlcG9udW4gYXluxLEgYmHFn3Z1cnV5YSBpdG1lc2luZGVuXG4iCisiZG9sYXnEsSBvbHVyLiBZZW5pZGVuIGl0bWVkZW4gw7ZuY2UgdXphayBrb251bWRha2kgZGXEn2nFn2lrbGlrbGVyaSBlbnRlZ3JlXG4iCisiZXRtZWsgaXN0ZXllYmlsaXJzaW5peiAow7Zybi4gJ2dpdCBwdWxsJy4uLikuXG4iCisiQXlyxLFudMSxbGFyIGnDp2luICdnaXQgcHVzaCAtLWhlbHAnIGnDp2luZGUgJ05vdGVzIGFib3V0IGZhc3QtZm9yd2FyZHMnYSBiYWvEsW4uIgorCisjOiBidWlsdGluL3B1c2guYzoyOTYKK21zZ2lkICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgdGFnIGFscmVhZHkgZXhpc3RzIGluIHRoZSByZW1vdGUuIgorbXNnc3RyICJHw7xuY2VsbGVtZWxlciByZWRkZWRpbGRpIMOnw7xua8O8IGV0aWtldCB1emFrIGtvbnVtZGEgaGFsaWhhesSxcmRhIHZhci4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjI5OQorbXNnaWQgIiIKKyJZb3UgY2Fubm90IHVwZGF0ZSBhIHJlbW90ZSByZWYgdGhhdCBwb2ludHMgYXQgYSBub24tY29tbWl0IG9iamVjdCxcbiIKKyJvciB1cGRhdGUgYSByZW1vdGUgcmVmIHRvIG1ha2UgaXQgcG9pbnQgYXQgYSBub24tY29tbWl0IG9iamVjdCxcbiIKKyJ3aXRob3V0IHVzaW5nIHRoZSAnLS1mb3JjZScgb3B0aW9uLlxuIgorbXNnc3RyICIiCisiR8O2bmRlcmkgb2xtYXlhbiBiaXIgbmVzbmV5ZSBpxZ9hcmV0IGVkZW4gdXphayBiYcWfdnVydXl1IGfDvG5jZWxsZXllbWV6XG4iCisidmV5YSAtLWZvcmNlIHNlw6dlbmXEn2luaSBrdWxsYW5tYWRhbiBiaXIgdXphayBiYcWfdnVydXl1IGfDtm5kZXJpXG4iCisib2xtYXlhbiBiaXIgbmVzbmV5ZSBpxZ9hcmV0IGV0bWVzaW5pIHNhxJ9sYW1hc8SxIGnDp2luIGfDvG5jZWxsZXllbWV6c2luaXouXG4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjM2MAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXNoaW5nIHRvICVzXG4iCittc2dzdHIgIsWedXJheWEgaXRpbGl5b3I6ICVzXG4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjM2NworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcHVzaCBzb21lIHJlZnMgdG8gJyVzJyIKK21zZ3N0ciAiYmF6xLEgYmHFn3Z1cnVsYXIgJyVzJyBrb251bXVuYSBpdGlsZW1lZGkiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0MgorbXNnaWQgInJlcG9zaXRvcnkiCittc2dzdHIgImRlcG8iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0MyBidWlsdGluL3NlbmQtcGFjay5jOjE2NAorbXNnaWQgInB1c2ggYWxsIHJlZnMiCittc2dzdHIgInTDvG0gYmHFn3Z1cnVsYXLEsSBpdCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ0IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY2Cittc2dpZCAibWlycm9yIGFsbCByZWZzIgorbXNnc3RyICJ0w7xtIGJhxZ92dXJ1bGFyxLEgeWFuc8SxbGEiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0NgorbXNnaWQgImRlbGV0ZSByZWZzIgorbXNnc3RyICJiYcWfdnVydWxhcsSxIHNpbCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ3Cittc2dpZCAicHVzaCB0YWdzIChjYW4ndCBiZSB1c2VkIHdpdGggLS1hbGwgb3IgLS1taXJyb3IpIgorbXNnc3RyICJldGlrZXRsZXJpIGl0ICgtLWFsbCB2ZXlhIC0tbWlycm9yIGlsZSBrdWxsYW7EsWxhbWF6KSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY3Cittc2dpZCAiZm9yY2UgdXBkYXRlcyIKK21zZ3N0ciAiem9ybGEgZ8O8bmNlbGxlIgorCisjOiBidWlsdGluL3B1c2guYzo1NTIgYnVpbHRpbi9zZW5kLXBhY2suYzoxODEKK21zZ2lkICI8cmVmbmFtZT46PGV4cGVjdD4iCittc2dzdHIgIjxiYcWfdnVydWFkxLE+OjxiZWtsZT4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1MyBidWlsdGluL3NlbmQtcGFjay5jOjE4MgorbXNnaWQgInJlcXVpcmUgb2xkIHZhbHVlIG9mIHJlZiB0byBiZSBhdCB0aGlzIHZhbHVlIgorbXNnc3RyICJiYcWfdnVydW51biBlc2tpIGRlxJ9lcmluaW4gYnUgZGXEn2VyZGUgb2xtYXPEsW7EsSBnZXJla3RpciIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU2Cittc2dpZCAiY29udHJvbCByZWN1cnNpdmUgcHVzaGluZyBvZiBzdWJtb2R1bGVzIgorbXNnc3RyICJhbHRtb2TDvGxsZXJpbiDDtnp5aW5lbGkgaXRpbG1lc2luaSBkZW5ldGxlIgorCisjOiBidWlsdGluL3B1c2guYzo1NTggYnVpbHRpbi9zZW5kLXBhY2suYzoxNzUKK21zZ2lkICJ1c2UgdGhpbiBwYWNrIgorbXNnc3RyICJpbmNlIHBha2V0IGt1bGxhbiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU5IGJ1aWx0aW4vcHVzaC5jOjU2MCBidWlsdGluL3NlbmQtcGFjay5jOjE2MQorIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNjIKK21zZ2lkICJyZWNlaXZlIHBhY2sgcHJvZ3JhbSIKK21zZ3N0ciAicGFrZXQgcHJvZ3JhbcSxbsSxIGFsIgorCisjOiBidWlsdGluL3B1c2guYzo1NjEKK21zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL3N0YXR1cyIKK21zZ3N0ciAiZ2l0IHB1bGwvc3RhdHVzIGnDp2luIMO8c3RrYXluYWsgYXlhcmxhIgorCisjOiBidWlsdGluL3B1c2guYzo1NjQKK21zZ2lkICJwcnVuZSBsb2NhbGx5IHJlbW92ZWQgcmVmcyIKK21zZ3N0ciAieWVyZWxkZSBrYWxkxLFyxLFsYW4gYmHFn3Z1cnVsYXLEsSBidWRhIgorCisjOiBidWlsdGluL3B1c2guYzo1NjYKK21zZ2lkICJieXBhc3MgcHJlLXB1c2ggaG9vayIKK21zZ3N0ciAicHJlLXB1c2gga2FuY2FzxLFuxLEgYXRsYSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTY3Cittc2dpZCAicHVzaCBtaXNzaW5nIGJ1dCByZWxldmFudCB0YWdzIgorbXNnc3RyICJla3NpayBhbmNhayBpbGdpbGkgZXRpa2V0bGVyaSBpdCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY5Cittc2dpZCAiR1BHIHNpZ24gdGhlIHB1c2giCittc2dzdHIgIml0bWV5aSBHUEcgaWxlIGltemFsYSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc2Cittc2dpZCAicmVxdWVzdCBhdG9taWMgdHJhbnNhY3Rpb24gb24gcmVtb3RlIHNpZGUiCittc2dzdHIgInV6YWsgdGFyYWZ0YSBhdG9tc2FsIGnFn2xlbSBpc3RlIgorCisjOiBidWlsdGluL3B1c2guYzo1OTAKK21zZ2lkICItLWRlbGV0ZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1taXJyb3IgYW5kIC0tdGFncyIKK21zZ3N0ciAiLS1kZWxldGU7IC0tYWxsLCAtLW1pcnJvciB2ZSAtLXRhZ3MgaWxlIHV5dW1zdXoiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU5MgorbXNnaWQgIi0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSB3aXRob3V0IGFueSByZWZzIgorbXNnc3RyICItLWRlbGV0ZSBiaXIgYmHFn3Z1cnUgb2xtYWRhbiBhbmxhbSBpZmFkZSBldG1peW9yIgorCisjOiBidWlsdGluL3B1c2guYzo2MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHJlcG9zaXRvcnkgJyVzJyIKK21zZ3N0ciAiaGF0YWzEsSBkZXBvICclcyciCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjYxMworbXNnaWQgIiIKKyJObyBjb25maWd1cmVkIHB1c2ggZGVzdGluYXRpb24uXG4iCisiRWl0aGVyIHNwZWNpZnkgdGhlIFVSTCBmcm9tIHRoZSBjb21tYW5kLWxpbmUgb3IgY29uZmlndXJlIGEgcmVtb3RlICIKKyJyZXBvc2l0b3J5IHVzaW5nXG4iCisiXG4iCisiICAgIGdpdCByZW1vdGUgYWRkIDxuYW1lPiA8dXJsPlxuIgorIlxuIgorImFuZCB0aGVuIHB1c2ggdXNpbmcgdGhlIHJlbW90ZSBuYW1lXG4iCisiXG4iCisiICAgIGdpdCBwdXNoIDxuYW1lPlxuIgorbXNnc3RyICIiCisiWWFwxLFsYW5kxLFyxLFsYW4gaXRtZSBoZWRlZmkgeW9rLlxuIgorIllhIFVSTCd5aSBrb211dCBzYXTEsXLEsW5kYW4gYmVsaXJ0aW4geWEgZGEgxZ91bnUga3VsbGFuYXJhayBiaXIgdXphayBrb251bSAiCisiZGVwb3N1IHlhcMSxbGFuZMSxcsSxbjpcbiIKKyJcbiIKKyJcdGdpdCByZW1vdGUgYWRkIDxhZD4gPHVybD5cbiIKKyJcbiIKKyJhcmTEsW5kYW4gdXphayBrb251bSBhZMSxbsSxIGt1bGxhbmFyYWsgaXRpbjpcbiIKKyJcbiIKKyJcdGdpdCBwdXNoIDxhZD5cbiIKKworIzogYnVpbHRpbi9wdXNoLmM6NjI4Cittc2dpZCAiLS1hbGwgYW5kIC0tdGFncyBhcmUgaW5jb21wYXRpYmxlIgorbXNnc3RyICItLWFsbCB2ZSAtLXRhZ3MgYmlyYmlyaXlsZSB1eXVtc3V6IgorCisjOiBidWlsdGluL3B1c2guYzo2MzAKK21zZ2lkICItLWFsbCBjYW4ndCBiZSBjb21iaW5lZCB3aXRoIHJlZnNwZWNzIgorbXNnc3RyICItLWFsbCBiYcWfdnVydSBiZWxpcnRlw6dsZXJpeWxlIGJpcmxlxZ90aXJpbGVtZXoiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzNAorbXNnaWQgIi0tbWlycm9yIGFuZCAtLXRhZ3MgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiLS1taXJyb3IgdmUgLS10YWdzIGJpcmJpcml5bGUgdXl1bXN1eiIKKworIzogYnVpbHRpbi9wdXNoLmM6NjM2Cittc2dpZCAiLS1taXJyb3IgY2FuJ3QgYmUgY29tYmluZWQgd2l0aCByZWZzcGVjcyIKK21zZ3N0ciAiLS1taXJyb3IgYmHFn3Z1cnUgYmVsaXJ0ZcOnbGVyaXlsZSBiaXJsZcWfdGlyaWxlbWV6IgorCisjOiBidWlsdGluL3B1c2guYzo2MzkKK21zZ2lkICItLWFsbCBhbmQgLS1taXJyb3IgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiLS1hbGwgdmUgLS1taXJyb3IgYmlyYmlyaXlsZSB1eXVtc3V6IgorCisjOiBidWlsdGluL3B1c2guYzo2NDMKK21zZ2lkICJwdXNoIG9wdGlvbnMgbXVzdCBub3QgaGF2ZSBuZXcgbGluZSBjaGFyYWN0ZXJzIgorbXNnc3RyICJpdG1lIHNlw6dlbmVrbGVyaW5kZSB5ZW5pIHNhdMSxciBrYXJha3Rlcmxlcmkgb2xtYW1hbMSxIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo4Cittc2dpZCAiZ2l0IHJhbmdlLWRpZmYgWzxvcHRpb25zPl0gPG9sZC1iYXNlPi4uPG9sZC10aXA+IDxuZXctYmFzZT4uLjxuZXctdGlwPiIKK21zZ3N0ciAiIgorImdpdCByYW5nZS1kaWZmIFs8c2XDp2VuZWtsZXI+XSA8b2xkLWJhc2U+Li48b2xkLXRpcD4gPG5ldy1iYXNlPi4uPG5ldy10aXA+IgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo5Cittc2dpZCAiZ2l0IHJhbmdlLWRpZmYgWzxvcHRpb25zPl0gPG9sZC10aXA+Li4uPG5ldy10aXA+IgorbXNnc3RyICJnaXQgcmFuZ2UtZGlmZiBbPHNlw6dlbmVrbGVyPl0gPG9sZC10aXA+Li4uPG5ldy10aXA+IgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoxMAorbXNnaWQgImdpdCByYW5nZS1kaWZmIFs8b3B0aW9ucz5dIDxiYXNlPiA8b2xkLXRpcD4gPG5ldy10aXA+IgorbXNnc3RyICJnaXQgcmFuZ2UtZGlmZiBbPHNlw6dlbmVrbGVyPl0gPGJhc2U+IDxvbGQtdGlwPiA8bmV3LXRpcD4iCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjIyCittc2dpZCAiUGVyY2VudGFnZSBieSB3aGljaCBjcmVhdGlvbiBpcyB3ZWlnaHRlZCIKK21zZ3N0ciAib2x1xZ91bXVuIHRhcnTEsWxkxLHEn8SxIHnDvHpkZSIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjQKK21zZ2lkICJ1c2Ugc2ltcGxlIGRpZmYgY29sb3JzIgorbXNnc3RyICJ5YWzEsW4gZGlmZiByZW5rbGVyaW5pIGt1bGxhbiIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjYKK21zZ2lkICJub3RlcyIKK21zZ3N0ciAibm90bGFyIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyNgorbXNnaWQgInBhc3NlZCB0byAnZ2l0IGxvZyciCittc2dzdHIgIidnaXQgbG9nJ2EgYWt0YXLEsWxkxLEiCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjUwIGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIC4uIGluIHJhbmdlOiAnJXMnIgorbXNnc3RyICJlcmltZGUgLi4geW9rOiAnJXMnIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo2NAorbXNnaWQgInNpbmdsZSBhcmcgZm9ybWF0IG11c3QgYmUgc3ltbWV0cmljIHJhbmdlIgorbXNnc3RyICJ0ZWtsaSBkZcSfacWfa2VuIGJpw6dpbWkgc2ltZXRyaWsgZXJpbSBvbG1hbMSxIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo3OQorbXNnaWQgIm5lZWQgdHdvIGNvbW1pdCByYW5nZXMiCittc2dzdHIgImlraSBnw7ZuZGVyaSBlcmltaSBnZXJla2xpIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjQxCittc2dpZCAiIgorImdpdCByZWFkLXRyZWUgWygtbSBbLS10cml2aWFsXSBbLS1hZ2dyZXNzaXZlXSB8IC0tcmVzZXQgfCAtLXByZWZpeD08cHJlZml4PikgIgorIlstdSBbLS1leGNsdWRlLXBlci1kaXJlY3Rvcnk9PGdpdGlnbm9yZT5dIHwgLWldXSBbLS1uby1zcGFyc2UtY2hlY2tvdXRdIFstLSIKKyJpbmRleC1vdXRwdXQ9PGZpbGU+XSAoLS1lbXB0eSB8IDx0cmVlLWlzaDE+IFs8dHJlZS1pc2gyPiBbPHRyZWUtaXNoMz5dXSkiCittc2dzdHIgIiIKKyJnaXQgcmVhZC10cmVlIFsoLW0gWy0tdHJpdmlhbF0gWy0tYWdncmVzc2l2ZV0gfCAtLXJlc2V0IHwgLS1wcmVmaXg9PMO2bmVrPikgWy0iCisidSBbLS1leGNsdWRlLXBlci1kaXJlY3Rvcnk9PGdpdGlnbm9yZT5dIHwgLWldXSBbLS1uby1zcGFyc2UtY2hlY2tvdXRdIFstLSIKKyJpbmRleC1vdXRwdXQ9PGRvc3lhPl0gKC0tZW1wdHkgfCA8YcSfYWPEsW1zxLExPiBbPGHEn2FjxLFtc8SxMj4gWzxhxJ9hY8SxbXPEsTM+XV0pIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNAorbXNnaWQgIndyaXRlIHJlc3VsdGluZyBpbmRleCB0byA8ZmlsZT4iCittc2dzdHIgIm9ydGF5YSDDp8Sxa2FuIGluZGVrc2kgPGRvc3lhPid5YSB5YXoiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI3Cittc2dpZCAib25seSBlbXB0eSB0aGUgaW5kZXgiCittc2dzdHIgInlhbG7EsXpjYSBpbmRla3NpIGJvxZ9hbHQiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI5Cittc2dpZCAiTWVyZ2luZyIKK21zZ3N0ciAiQmlybGXFn3RpcmlsaXlvciIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzEKK21zZ2lkICJwZXJmb3JtIGEgbWVyZ2UgaW4gYWRkaXRpb24gdG8gYSByZWFkIgorbXNnc3RyICJiaXIgb2t1bWF5YSBlayBvbGFyYWsgYmlyIGJpcmxlxZ90aXJtZSBnZXLDp2VrbGXFn3RpciIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzMKK21zZ2lkICIzLXdheSBtZXJnZSBpZiBubyBmaWxlIGxldmVsIG1lcmdpbmcgcmVxdWlyZWQiCittc2dzdHIgImRvc3lhIGTDvHpleWluZGUgYmlybGXFn3Rpcm1lIGdlcmVrbWl5b3JzYSAzIHnDtm5sw7wgYmlybGXFn3RpciIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzUKK21zZ2lkICIzLXdheSBtZXJnZSBpbiBwcmVzZW5jZSBvZiBhZGRzIGFuZCByZW1vdmVzIgorbXNnc3RyICJla2xlbWVsZXIgdmUga2FsZMSxcm1hbGFyIHZhcmzEscSfxLFuZGEgMyB5w7ZubMO8IGJpcmxlxZ90aXIiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM3Cittc2dpZCAic2FtZSBhcyAtbSwgYnV0IGRpc2NhcmQgdW5tZXJnZWQgZW50cmllcyIKK21zZ3N0ciAiLW0gaWxlIGF5bsSxLCBhbmNhayBiaXJsZcWfdGlyaWxtZXllbiBnaXJkaWxlcmkgYXRhciIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzgKK21zZ2lkICI8c3ViZGlyZWN0b3J5Pi8iCittc2dzdHIgIjxhbHRkaXppbj4vIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzOQorbXNnaWQgInJlYWQgdGhlIHRyZWUgaW50byB0aGUgaW5kZXggdW5kZXIgPHN1YmRpcmVjdG9yeT4vIgorbXNnc3RyICJhxJ9hY8SxIGluZGVrc2UgPGFsdGRpemluPi8gYWx0xLFuZGEgb2t1IgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0MgorbXNnaWQgInVwZGF0ZSB3b3JraW5nIHRyZWUgd2l0aCBtZXJnZSByZXN1bHQiCittc2dzdHIgImJpcmxlxZ90aXJtZSBzb251Y3V5bGEgw6dhbMSxxZ9tYSBhxJ9hY8SxbsSxIGfDvG5jZWxsZcWfdGlyIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NAorbXNnaWQgImdpdGlnbm9yZSIKK21zZ3N0ciAiZ2l0aWdub3JlIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NQorbXNnaWQgImFsbG93IGV4cGxpY2l0bHkgaWdub3JlZCBmaWxlcyB0byBiZSBvdmVyd3JpdHRlbiIKK21zZ3N0ciAiYcOnxLFrw6dhIHlvayBzYXnEsWxhbiBkb3N5YWxhcsSxbiDDvHplcmluZSB5YXrEsWxtYXPEsW5hIGl6aW4gdmVyIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0OAorbXNnaWQgImRvbid0IGNoZWNrIHRoZSB3b3JraW5nIHRyZWUgYWZ0ZXIgbWVyZ2luZyIKK21zZ3N0ciAiYmlybGXFn3Rpcm1lZGVuIHNvbnJhIMOnYWzEscWfbWEgYcSfYWPEsW7EsSBkZW5ldGxlbWUiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ5Cittc2dpZCAiZG9uJ3QgdXBkYXRlIHRoZSBpbmRleCBvciB0aGUgd29yayB0cmVlIgorbXNnc3RyICJpbmRla3NpIHZleWEgw6dhbMSxxZ9tYSBhxJ9hY8SxbsSxIGfDvG5jZWxsZW1lIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MQorbXNnaWQgInNraXAgYXBwbHlpbmcgc3BhcnNlIGNoZWNrb3V0IGZpbHRlciIKK21zZ3N0ciAiYXJhbMSxa2zEsSDDp8Sxa8SxxZ8gc8O8emdlY2kgdXlndWxhbWF5xLEgYXRsYSIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTMKK21zZ2lkICJkZWJ1ZyB1bnBhY2stdHJlZXMiCittc2dzdHIgInVucGFjay10cmVlcyBoYXRhbGFyxLFuxLEgYXnEsWtsYSIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTcKK21zZ2lkICJzdXBwcmVzcyBmZWVkYmFjayBtZXNzYWdlcyIKK21zZ3N0ciAiZ2VyaWJpbGRpcmltIGlsZXRpbGVyaW5pIGdpemxlIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE4OAorbXNnaWQgIllvdSBuZWVkIHRvIHJlc29sdmUgeW91ciBjdXJyZW50IGluZGV4IGZpcnN0IgorbXNnc3RyICLDlm5jZWxpa2xlIGdlw6dlcmxpIGluZGVrc2luaXppIMOnw7Z6bWVsaXNpbml6IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjMyCittc2dpZCAiIgorImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT4gfCAtLWtlZXAtYmFzZV0gIgorIls8dXBzdHJlYW0+IFs8YnJhbmNoPl1dIgorbXNnc3RyICIiCisiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxrb211dD5dIFstLW9udG8gPHllbmktdGVtZWw+IHwgLS1rZWVwLSIKKyJiYXNlXSBbPMO8c3RrYXluYWs+IFs8ZGFsPl1dIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM0Cittc2dpZCAiIgorImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT5dIC0tcm9vdCBbPGJyYW5jaD5dIgorbXNnc3RyICIiCisiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxrb211dD5dIFstLW9udG8gPHllbmktdGVtZWw+XSAtLXJvb3QgIgorIls8ZGFsPl0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzYKK21zZ2lkICJnaXQgcmViYXNlIC0tY29udGludWUgfCAtLWFib3J0IHwgLS1za2lwIHwgLS1lZGl0LXRvZG8iCittc2dzdHIgImdpdCByZWJhc2UgLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXAgfCAtLWVkaXQtdG9kbyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzUgYnVpbHRpbi9yZWJhc2UuYzoxOTkgYnVpbHRpbi9yZWJhc2UuYzoyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW51c2FibGUgdG9kbyBsaXN0OiAnJXMnIgorbXNnc3RyICJrdWxsYW7EsWxhbWF6IHlhcMSxbGFjYWtsYXIgbGlzdGVzaTogJyVzJyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJXMiCittc2dzdHIgImdlw6dpY2kgJXMgb2x1xZ90dXJ1bGFtYWTEsSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyOTgKK21zZ2lkICJjb3VsZCBub3QgbWFyayBhcyBpbnRlcmFjdGl2ZSIKK21zZ3N0ciAiZXRraWxlxZ9pbWxpIG9sYXJhayBpbWxlbmVtZWRpIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM1MgorbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSB0b2RvIGxpc3QiCittc2dzdHIgInlhcMSxbGFjYWtsYXIgbGlzdGVzaSBvbHXFn3R1cnVsYW1hZMSxIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM5MQorbXNnaWQgImEgYmFzZSBjb21taXQgbXVzdCBiZSBwcm92aWRlZCB3aXRoIC0tdXBzdHJlYW0gb3IgLS1vbnRvIgorbXNnc3RyICJiaXIgdGFiYW4gZ8O2bmRlcmlzaSAtLXVwc3RyZWFtIHZleWEgLS1vbnRvIGlsZSBzYcSfbGFubWFsxLFkxLFyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ2MQorbXNnaWQgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPHNlw6dlbmVrbGVyPl0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDc0IGJ1aWx0aW4vcmViYXNlLmM6MTU1MAorbXNnaWQgIihERVBSRUNBVEVEKSBrZWVwIGVtcHR5IGNvbW1pdHMiCittc2dzdHIgIihLVUxMQU5JTSBEScWeSSkgYm/FnyBnw7ZuZGVyaWxlcmkgdHV0IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ3OCBidWlsdGluL3JldmVydC5jOjEyOAorbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKK21zZ3N0ciAiYm/FnyBpbGV0aWxpIGfDtm5kZXJpbGVyZSBpemluIHZlciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODAKK21zZ2lkICJyZWJhc2UgbWVyZ2UgY29tbWl0cyIKK21zZ3N0ciAiYmlybGXFn3Rpcm1lIGfDtm5kZXJpbGVyaW5pIHllbmlkZW4gdGVtZWxsZW5kaXIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDgyCittc2dpZCAia2VlcCBvcmlnaW5hbCBicmFuY2ggcG9pbnRzIG9mIGNvdXNpbnMiCittc2dzdHIgImt1emVubGVyaW4gb3JpamluYWwgZGFsIG5va3RhbGFyxLFuxLEgdHV0IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4NAorbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEiCittc2dzdHIgInNxdWFzaCEvZml4dXAhIGlsZSBiYcWfbGF5YW4gZ8O2bmRlcmlsZXJpIHRhxZ/EsSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODUKK21zZ2lkICJzaWduIGNvbW1pdHMiCittc2dzdHIgImfDtm5kZXJpbGVyaSBpbXphbGEiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg3IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MAorbXNnaWQgImRpc3BsYXkgYSBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCittc2dzdHIgIsO8c3RrYXluYWt0YSBuZWxlcmluIGRlxJ9pxZ90acSfaW5pIGfDtnN0ZXJlbiBiaXIgZGlmZnN0YXQgZ8O2csO8bnTDvGxlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4OQorbXNnaWQgImNvbnRpbnVlIHJlYmFzZSIKK21zZ3N0ciAieWVuaWRlbiB0ZW1lbGxlbmRpcm1leWkgc8O8cmTDvHIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDkxCittc2dpZCAic2tpcCBjb21taXQiCittc2dzdHIgImfDtm5kZXJpeWkgYXRsYSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTIKK21zZ2lkICJlZGl0IHRoZSB0b2RvIGxpc3QiCittc2dzdHIgInlhcMSxbGFjYWtsYXIgbGlzdGVzaW5pIGTDvHplbmxlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5NAorbXNnaWQgInNob3cgdGhlIGN1cnJlbnQgcGF0Y2giCittc2dzdHIgImdlw6dlcmxpIHlhbWF5xLEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTcKK21zZ2lkICJzaG9ydGVuIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAieWFwxLFsYWNha2xhciBsaXN0ZXNpbmRla2kgZ8O2bmRlcmkgbnVtYXJhbGFyxLFuxLEga8Sxc2FsdCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTkKK21zZ2lkICJleHBhbmQgY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICJ5YXDEsWxhY2FrbGFyIGxpc3Rlc2luZGVraSBnw7ZuZGVyaSBudW1hcmFsYXLEsW7EsSBnZW5pxZ9sZXQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAxCittc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAieWFwxLFsYWNha2xhciBsaXN0ZXNpbmkgZGVuZXRsZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDMKK21zZ2lkICJyZWFycmFuZ2UgZml4dXAvc3F1YXNoIGxpbmVzIgorbXNnc3RyICJmaXh1cC9zcXVhc2ggc2F0xLFybGFyxLFuxLEgeWVuaWRlbiBkw7x6ZW5sZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDUKK21zZ2lkICJpbnNlcnQgZXhlYyBjb21tYW5kcyBpbiB0b2RvIGxpc3QiCittc2dzdHIgInlhcMSxbGFjYWtsYXIgbGlzdGVzaW5lICdleGVjJyBrb211dGxhcsSxIGVrbGUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTA2Cittc2dpZCAib250byIKK21zZ3N0ciAiw7x6ZXJpbmUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTA5Cittc2dpZCAicmVzdHJpY3QtcmV2aXNpb24iCittc2dzdHIgInJlc3RyaWN0LXJldmlzaW9uIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwOQorbXNnaWQgInJlc3RyaWN0IHJldmlzaW9uIgorbXNnc3RyICJyZXZpenlvbnUgc8SxbsSxcmxhIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxMQorbXNnaWQgInNxdWFzaC1vbnRvIgorbXNnc3RyICJzcXVhc2gtb250byIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTIKK21zZ2lkICJzcXVhc2ggb250byIKK21zZ3N0ciAidMSxa8SxxZ90xLFyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxNAorbXNnaWQgInRoZSB1cHN0cmVhbSBjb21taXQiCittc2dzdHIgIsO8c3RrYXluYWsgZ8O2bmRlcmlzaSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTYKK21zZ2lkICJoZWFkLW5hbWUiCittc2dzdHIgImhlYWQtbmFtZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTYKK21zZ2lkICJoZWFkIG5hbWUiCittc2dzdHIgImRhbCB1Y3UgYWTEsSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjEKK21zZ2lkICJyZWJhc2Ugc3RyYXRlZ3kiCittc2dzdHIgInllbmlkZW4gdGVtZWxsZW5kaXJtZSBzdHJhdGVqaXNpIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyMgorbXNnaWQgInN0cmF0ZWd5LW9wdHMiCittc2dzdHIgInN0cmF0ZWd5LW9wdHMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTIzCittc2dpZCAic3RyYXRlZ3kgb3B0aW9ucyIKK21zZ3N0ciAic3RyYXRlamkgc2XDp2VuZWtsZXJpIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNAorbXNnaWQgInN3aXRjaC10byIKK21zZ3N0ciAic3dpdGNoLXRvIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNQorbXNnaWQgInRoZSBicmFuY2ggb3IgY29tbWl0IHRvIGNoZWNrb3V0IgorbXNnc3RyICLDp8Sxa8SxxZ8geWFwxLFsYWNhayBkYWwgdmV5YSBnw7ZuZGVyaSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjYKK21zZ2lkICJvbnRvLW5hbWUiCittc2dzdHIgIm9udG8tbmFtZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjYKK21zZ2lkICJvbnRvIG5hbWUiCittc2dzdHIgIidvbnRvJyBhZMSxOiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjcKK21zZ2lkICJjbWQiCittc2dzdHIgImtvbXV0IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNworbXNnaWQgInRoZSBjb21tYW5kIHRvIHJ1biIKK21zZ3N0ciAiw6dhbMSxxZ90xLFyxLFsYWNhayBrb211dCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MzAgYnVpbHRpbi9yZWJhc2UuYzoxNTg0Cittc2dpZCAiYXV0b21hdGljYWxseSByZS1zY2hlZHVsZSBhbnkgYGV4ZWNgIHRoYXQgZmFpbHMiCittc2dzdHIgImJhxZ9hcsSxc8SxeiBvbGFuIGhlciAnZXhlYydpIGtlbmRpbGnEn2luZGVuIHllbmlkZW4gemFtYW5sYSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1NDYKK21zZ2lkICItLVtuby1dcmViYXNlLWNvdXNpbnMgaGFzIG5vIGVmZmVjdCB3aXRob3V0IC0tcmViYXNlLW1lcmdlcyIKK21zZ3N0ciAiIgorIi0tW25vLV1yZWJhc2UtY291c2lucyBzZcOnZW5lxJ9pbmluIC0tcmViYXNlLW1lcmdlcyBvbG1hZGFuIGhpw6diaXIgZXRraXNpIHlvayIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVxdWlyZXMgYW4gaW50ZXJhY3RpdmUgcmViYXNlIgorbXNnc3RyICIlcyBiaXIgZXRraWxlxZ9pbWxpIHllbmlkZW4gdGVtZWxsZW5kaXJtZSBnZXJla3Rpcml5b3IiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZXQgJ29udG8nOiAnJXMnIgorbXNnc3RyICInb250bycgYWzEsW5hbWFkxLE6ICclcyciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NjI3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgb3JpZy1oZWFkOiAnJXMnIgorbXNnc3RyICJnZcOnZXJzaXogb3JpZy1oZWFkOiAnJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjY1MgorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBpbnZhbGlkIGFsbG93X3JlcmVyZV9hdXRvdXBkYXRlOiAnJXMnIgorbXNnc3RyICJnZcOnZXJzaXogYWxsb3dfcmVyZXJlX2F1dG91cGRhdGUgeW9rIHNhecSxbMSxeW9yOiAnJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjcyOAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcmVhZCAnJXMnIgorbXNnc3RyICInJXMnIG9rdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NzQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBzdG9yZSAlcyIKK21zZ3N0ciAiJXMgZGVwb2xhbmFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6ODUzCittc2dpZCAiY291bGQgbm90IGRldGVybWluZSBIRUFEIHJldmlzaW9uIgorbXNnc3RyICJIRUFEIHJldml6eW9udSBzYXB0YW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6OTc2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MQorbXNnaWQgIiIKKyJSZXNvbHZlIGFsbCBjb25mbGljdHMgbWFudWFsbHksIG1hcmsgdGhlbSBhcyByZXNvbHZlZCB3aXRoXG4iCisiXCJnaXQgYWRkL3JtIDxjb25mbGljdGVkX2ZpbGVzPlwiLCB0aGVuIHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiLlxuIgorIllvdSBjYW4gaW5zdGVhZCBza2lwIHRoaXMgY29tbWl0OiBydW4gXCJnaXQgcmViYXNlIC0tc2tpcFwiLlxuIgorIlRvIGFib3J0IGFuZCBnZXQgYmFjayB0byB0aGUgc3RhdGUgYmVmb3JlIFwiZ2l0IHJlYmFzZVwiLCBydW4gXCJnaXQgcmViYXNlIC0tIgorImFib3J0XCIuIgorbXNnc3RyICIiCisiVMO8bSDDp2FrxLHFn21hbGFyxLEgZWwgaWxlIMOnw7Z6w7xuLCBvbmxhcsSxIFwiZ2l0IGFkZC9ybSA8w6dha8SxxZ9hbi1kb3N5YWxhcj5cIlxuIgorImlsZSB0YW1hbSBvbGFyYWsgaW1sZXlpbiwgYXJkxLFuZGFuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIgw6dhbMSxxZ90xLFyxLFuLlxuIgorIkJ1bnVuIHllcmluZSBidSBnw7ZuZGVyaXlpIGF0bGF5YWJpbGlyc2luaXo6IFwiZ2l0IHJlYmFzZSAtLXNraXBcIiB5YXDEsW4uXG4iCisixLBwdGFsIGVkaXAgXCJnaXQgcmViYXNlXCIgw7ZuY2VzaW5lIGdlcmkgZMO2bm1layBpw6dpbiBcImdpdCByZWJhc2UgLS1hYm9ydFwiXG4iCisiw6dhbMSxxZ90xLFyxLFuLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJnaXQgZW5jb3VudGVyZWQgYW4gZXJyb3Igd2hpbGUgcHJlcGFyaW5nIHRoZSBwYXRjaGVzIHRvIHJlcGxheVxuIgorInRoZXNlIHJldmlzaW9uczpcbiIKKyJcbiIKKyIgICAgJXNcbiIKKyJcbiIKKyJBcyBhIHJlc3VsdCwgZ2l0IGNhbm5vdCByZWJhc2UgdGhlbS4iCittc2dzdHIgIiIKKyJcbiIKKyJHaXQsIHlhbWFsYXLEsSBidSByZXZpenlvbmxhcsSxIHllbmlkZW4gb3luYXRtYWsgacOnaW4gaGF6xLFybGFya2VuIGJpclxuIgorImhhdGF5bGEga2FyxZ/EsWxhxZ90xLE6XG4iCisiXG4iCisiXHQlc1xuIgorIlxuIgorIkJ1bnVuIHNvbnVjdSBvbGFyYWsgZ2l0IG9ubGFyxLEgeWVuaWRlbiB0ZW1lbGxlbmRpcmVtaXlvci4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTM4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5yZWNvZ25pemVkIGVtcHR5IHR5cGUgJyVzJzsgdmFsaWQgdmFsdWVzIGFyZSBcImRyb3BcIiwgXCJrZWVwXCIsIGFuZCBcImFzayIKKyJcIi4iCittc2dzdHIgIiIKKyJ0YW7EsW1sYW5hbWF5YW4gYm/FnyB0w7xyICclcyc7IGdlw6dlcmxpIHTDvHJsZXI6IFwiZHJvcFwiLCBcImtlZXBcIiB2ZSBcImFza1wiIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzXG4iCisiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIHJlYmFzZSBhZ2FpbnN0LlxuIgorIlNlZSBnaXQtcmViYXNlKDEpIGZvciBkZXRhaWxzLlxuIgorIlxuIgorIiAgICBnaXQgcmViYXNlICc8YnJhbmNoPidcbiIKKyJcbiIKK21zZ3N0ciAiIgorIiVzXG4iCisiTMO8dGZlbiBoYW5naSBkYWxhIGthcsWfxLEgeWVuaWRlbiB0ZW1lbGxlbmRpcm1layBpc3RlZGnEn2luaXppIGJlbGlydGluLlxuIgorIkF5csSxbnTEsWxhciBpw6dpbjogZ2l0LXJlYmFzZSgxKVxuIgorIlxuIgorIlx0Z2l0IHJlYmFzZSAnPGRhbD4nXG4iCisiXG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSWYgeW91IHdpc2ggdG8gc2V0IHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGlzIGJyYW5jaCB5b3UgY2FuIGRvIHNvIHdpdGg6XG4iCisiXG4iCisiICAgIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMvPGJyYW5jaD4gJXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIkXEn2VyIGJ1IGRhbCBpw6dpbiBpemxlbWUgYmlsZ2lzaSBheWFybGFtYWsgaXN0aXlvcnNhbsSxeiDFn3VudSBrdWxsYW7EsW46XG4iCisiXG4iCisiXHRnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvPSVzLzxkYWw+ICVzXG4iCisiXG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0NworbXNnaWQgImV4ZWMgY29tbWFuZHMgY2Fubm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIidleGVjJyBrb211dGxhcsSxIHllbmlzYXTEsXJsYXIgacOnZXJlbWV6IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NTEKK21zZ2lkICJlbXB0eSBleGVjIGNvbW1hbmQiCittc2dzdHIgImJvxZ8gJ2V4ZWMnIGtvbXV0dSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgxCittc2dpZCAicmViYXNlIG9udG8gZ2l2ZW4gYnJhbmNoIGluc3RlYWQgb2YgdXBzdHJlYW0iCittc2dzdHIgIsO8c3RrYXluYWsgeWVyaW5lIHZlcmlsZW4gZGFsxLFuIMO8emVyaW5lIHllbmlkZW4gdGVtZWxsZW5kaXIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MworbXNnaWQgInVzZSB0aGUgbWVyZ2UtYmFzZSBvZiB1cHN0cmVhbSBhbmQgYnJhbmNoIGFzIHRoZSBjdXJyZW50IGJhc2UiCittc2dzdHIgIsO8c3RrYXluYcSfxLFuIGJpcmxlxZ90aXJtZSB0ZW1lbGluaSB2ZSBkYWzEsW7EsSBnZcOnZXJsaSB0ZW1lbCBvbGFyYWsga3VsbGFuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODUKK21zZ2lkICJhbGxvdyBwcmUtcmViYXNlIGhvb2sgdG8gcnVuIgorbXNnc3RyICJwcmUtcmViYXNlIGthbmNhc8SxbsSxbiDDp2FsxLHFn21hc8SxbmEgaXppbiB2ZXIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4NworbXNnaWQgImJlIHF1aWV0LiBpbXBsaWVzIC0tbm8tc3RhdCIKK21zZ3N0ciAic2Vzc2l6IG9sICgtLW5vLXN0YXQgaW1hIGVkZXIpIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0OTMKK21zZ2lkICJkbyBub3Qgc2hvdyBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCittc2dzdHIgIsO8c3RrYXluYWt0YSBuZWxlcmluIGRlxJ9pxZ90acSfaW5pIGfDtnN0ZXJlbiBkaWZmc3RhdCBnw7ZzdGVybWUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5NgorbXNnaWQgImFkZCBhIFNpZ25lZC1vZmYtYnk6IGxpbmUgdG8gZWFjaCBjb21taXQiCittc2dzdHIgImhlciBnw7ZuZGVyaXllIGJpciBTaWduZWQtb2ZmLWJ5IHNhdMSxcsSxIGVrbGUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5OCBidWlsdGluL3JlYmFzZS5jOjE1MDIgYnVpbHRpbi9yZWJhc2UuYzoxNTA0Cittc2dpZCAicGFzc2VkIHRvICdnaXQgYW0nIgorbXNnc3RyICInZ2l0IGFtJ2EgYWt0YXLEsWxkxLEiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUwNiBidWlsdGluL3JlYmFzZS5jOjE1MDgKK21zZ2lkICJwYXNzZWQgdG8gJ2dpdCBhcHBseSciCittc2dzdHIgIidnaXQgYXBwbHknYSBha3RhcsSxbGTEsSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTEwIGJ1aWx0aW4vcmViYXNlLmM6MTUxMworbXNnaWQgImNoZXJyeS1waWNrIGFsbCBjb21taXRzLCBldmVuIGlmIHVuY2hhbmdlZCIKK21zZ3N0ciAiZGXEn2nFn3RpcmlsbWVtacWfIG9sc2EgYmlsZSB0w7xtIGfDtm5kZXJpbGVyaSBzZcOnLWFsIHlhcCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTE1Cittc2dpZCAiY29udGludWUiCittc2dzdHIgInPDvHJkw7xyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MTgKK21zZ2lkICJza2lwIGN1cnJlbnQgcGF0Y2ggYW5kIGNvbnRpbnVlIgorbXNnc3RyICJnZcOnZXJsaSB5YW1hecSxIGF0bGEgdmUgc8O8cmTDvHIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyMAorbXNnaWQgImFib3J0IGFuZCBjaGVjayBvdXQgdGhlIG9yaWdpbmFsIGJyYW5jaCIKK21zZ3N0ciAiaXB0YWwgZXQgdmUgb3JpamluYWwgZGFsxLEgw6fEsWvEscWfIHlhcCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTIzCittc2dpZCAiYWJvcnQgYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcyIKK21zZ3N0ciAiaXB0YWwgZXQsIGFuY2FrIEhFQUQnaSBvbGR1xJ91IHllcmRlIGLEsXJhayIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTI0Cittc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IGR1cmluZyBhbiBpbnRlcmFjdGl2ZSByZWJhc2UiCittc2dzdHIgIiIKKyJiaXIgZXRraWxlxZ9pbWxpIHllbmlkZW4gdGVtZWxsZW5kaXJtZSBzxLFyYXPEsW5kYSB5YXDEsWxhY2FrbGFyIGxpc3Rlc2luaSAiCisiZMO8emVubGUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyNworbXNnaWQgInNob3cgdGhlIHBhdGNoIGZpbGUgYmVpbmcgYXBwbGllZCBvciBtZXJnZWQiCittc2dzdHIgInlhbWEgZG9zeWFzxLEgdXlndWxhbsSxcmtlbiB2ZXlhIGJpcmxlxZ90aXJpbGlya2VuIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUzMAorbXNnaWQgInVzZSBhcHBseSBzdHJhdGVnaWVzIHRvIHJlYmFzZSIKK21zZ3N0ciAieWVuaWRlbiB0ZW1lbGxlbmRpcm1layBpw6dpbiBcImFwcGx5XCIgc3RyYXRlamlsZXJpbmkga3VsbGFuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzQKK21zZ2lkICJ1c2UgbWVyZ2luZyBzdHJhdGVnaWVzIHRvIHJlYmFzZSIKK21zZ3N0ciAieWVuaWRlbiB0ZW1lbGxlbmRpcm1layBpw6dpbiBiaXJsZcWfdGlybWUgc3RyYXRlamlsZXJpbmkga3VsbGFuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzgKK21zZ2lkICJsZXQgdGhlIHVzZXIgZWRpdCB0aGUgbGlzdCBvZiBjb21taXRzIHRvIHJlYmFzZSIKK21zZ3N0ciAiIgorInllbmlkZW4gdGVtZWxsZW5kaXJpbGVjZWsgZ8O2bmRlcmlsZXJpbiBsaXN0ZXNpbmkga3VsbGFuxLFjxLFuxLFuIGTDvHplbmxlbWVzaW5lICIKKyJpemluIHZlciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTQyCittc2dpZCAiKERFUFJFQ0FURUQpIHRyeSB0byByZWNyZWF0ZSBtZXJnZXMgaW5zdGVhZCBvZiBpZ25vcmluZyB0aGVtIgorbXNnc3RyICIiCisiKEtVTExBTklNIERJxZ5JKSBiaXJsZcWfdGlybWVsZXJpIHlvayBzYXltYWsgeWVyaW5lIG9ubGFyxLEgeWVuaWRlbiBvbHXFn3R1cm1heWEgIgorIsOnYWzEscWfIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NDcKK21zZ2lkICJob3cgdG8gaGFuZGxlIGNvbW1pdHMgdGhhdCBiZWNvbWUgZW1wdHkiCittc2dzdHIgImJvxZ9hbGFuIGfDtm5kZXJpbGVyIG5hc8SxbCBpxZ9sZW5zaW4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU1NAorbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEgdW5kZXIgLWkiCittc2dzdHIgIi1pIGFsdMSxbmRha2kgc3F1YXNoIS9maXh1cCEgaWxlIGJhxZ9sYXlhbiBnw7ZuZGVyaWxlcmkgdGHFn8SxIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjAKK21zZ2lkICJhdXRvbWF0aWNhbGx5IHN0YXNoL3N0YXNoIHBvcCBiZWZvcmUgYW5kIGFmdGVyIgorbXNnc3RyICLDtm5jZXNpbmRlIHZlIHNvbnJhc8SxbmRhIGtlbmRpbGnEn2luZGVuIHp1bGFsYS96dWxhbGFyxLEgcGF0bGF0IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjIKK21zZ2lkICJhZGQgZXhlYyBsaW5lcyBhZnRlciBlYWNoIGNvbW1pdCBvZiB0aGUgZWRpdGFibGUgbGlzdCIKK21zZ3N0ciAiZMO8emVubGVuZWJpbGlyIGxpc3RlbmluIGhlciBnw7ZuZGVyaXNpbmRlbiBzb25yYSBleGVjIHNhdMSxcmxhcsSxIGVrbGUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU2NgorbXNnaWQgImFsbG93IHJlYmFzaW5nIGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKK21zZ3N0ciAiYm/FnyBpbGV0aWxpIGfDtm5kZXJpbGVyaW4geWVuaWRlbiB0ZW1lbGxlbmRpcmlsbWVzaW5lIGl6aW4gdmVyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzAKK21zZ2lkICJ0cnkgdG8gcmViYXNlIG1lcmdlcyBpbnN0ZWFkIG9mIHNraXBwaW5nIHRoZW0iCittc2dzdHIgImJpcmxlxZ90aXJtZWxlcmkgYXRsYW1hayB5ZXJpbmUgb25sYXLEsSB5ZW5pZGVuIHRlbWVsbGVuZGlybWV5aSBkZW5lIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzMKK21zZ2lkICJ1c2UgJ21lcmdlLWJhc2UgLS1mb3JrLXBvaW50JyB0byByZWZpbmUgdXBzdHJlYW0iCittc2dzdHIgIsO8c3RrYXluYcSfxLEgYXLEsWxhxZ90xLFybWFrIGnDp2luICdtZXJnZS1iYXNlIC0tZm9yay1wb2ludCcga3VsbGFuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzUKK21zZ2lkICJ1c2UgdGhlIGdpdmVuIG1lcmdlIHN0cmF0ZWd5IgorbXNnc3RyICJ2ZXJpbGVuIGJpcmxlxZ90aXJtZSBzdHJhdGVqaXNpbmkga3VsbGFuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzcgYnVpbHRpbi9yZXZlcnQuYzoxMTUKK21zZ2lkICJvcHRpb24iCittc2dzdHIgInNlw6dlbmVrIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzgKK21zZ2lkICJwYXNzIHRoZSBhcmd1bWVudCB0aHJvdWdoIHRvIHRoZSBtZXJnZSBzdHJhdGVneSIKK21zZ3N0ciAiZGXEn2nFn2tlbmkgYmlybGXFn3Rpcm1lIHN0cmF0ZWppc2luZSBha3RhciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTgxCittc2dpZCAicmViYXNlIGFsbCByZWFjaGFibGUgY29tbWl0cyB1cCB0byB0aGUgcm9vdChzKSIKK21zZ3N0ciAidWxhxZ/EsWxhYmlsaXIgdMO8bSBnw7ZuZGVyaWxlcmkga8O2ayhsZXIpZSBrYWRhciB5ZW5pZGVuIHRlbWVsbGVuZGlyIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1OTgKK21zZ2lkICIiCisidGhlIHJlYmFzZS51c2VCdWlsdGluIHN1cHBvcnQgaGFzIGJlZW4gcmVtb3ZlZCFcbiIKKyJTZWUgaXRzIGVudHJ5IGluICdnaXQgaGVscCBjb25maWcnIGZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorIidyZWJhc2UudXNlQnVpbHRpbicgZGVzdGXEn2kga2FsZMSxcsSxbGTEsSFcbiIKKyJBeXLEsW50xLFsYXIgacOnaW4gJ2dpdCBoZWxwIGNvbmZpZycgacOnaW5kZWtpIGdpcmRpc2luZSBiYWvEsW4uIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2MDQKK21zZ2lkICJJdCBsb29rcyBsaWtlICdnaXQgYW0nIGlzIGluIHByb2dyZXNzLiBDYW5ub3QgcmViYXNlLiIKK21zZ3N0ciAiR8O2csO8bsO8xZ9lIGfDtnJlICdnaXQgYW0nIHPDvHJtZWt0ZS4gWWVuaWRlbiB0ZW1lbGxlbmRpcmlsZW1peW9yLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjQ1Cittc2dpZCAiIgorImdpdCByZWJhc2UgLS1wcmVzZXJ2ZS1tZXJnZXMgaXMgZGVwcmVjYXRlZC4gVXNlIC0tcmViYXNlLW1lcmdlcyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIidnaXQgcmViYXNlIC0tcHJlc2VydmUtbWVyZ2VzJyBrdWxsYW7EsW0gZMSxxZ/EsS4gWWVyaW5lIC0tcmViYXNlLW1lcmdlcyAiCisia3VsbGFuxLFuLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjUwCittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0ta2VlcC1iYXNlJyB3aXRoICctLW9udG8nIgorbXNnc3RyICItLWtlZXAtYmFzZSBpbGUgLS1vbnRvIGJpcmxpa3RlIGt1bGxhbsSxbGFtYXoiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1MgorbXNnaWQgImNhbm5vdCBjb21iaW5lICctLWtlZXAtYmFzZScgd2l0aCAnLS1yb290JyIKK21zZ3N0ciAiLS1rZWVwLWJhc2UgaWxlIC0tcm9vdCBiaXJsaWt0ZSBrdWxsYW7EsWxhbWF6IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NTYKK21zZ2lkICJObyByZWJhc2UgaW4gcHJvZ3Jlc3M/IgorbXNnc3RyICJTw7xyZW4gYmlyIHllbmlkZW4gdGVtZWxsZW5kaXJtZSB5b2s/IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NjAKK21zZ2lkICJUaGUgLS1lZGl0LXRvZG8gYWN0aW9uIGNhbiBvbmx5IGJlIHVzZWQgZHVyaW5nIGludGVyYWN0aXZlIHJlYmFzZS4iCittc2dzdHIgIiIKKyItLWVkaXQtdG9kbyBzZcOnZW5lxJ9pIHlhbG7EsXpjYSBldGtpbGXFn2ltbGkgeWVuaWRlbiB0ZW1lbGxlbmRpcm1lIHPEsXJhc8SxbmRhICIKKyJrdWxsYW7EsWxhYmlsaXIuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2ODMKK21zZ2lkICJDYW5ub3QgcmVhZCBIRUFEIgorbXNnc3RyICJIRUFEIG9rdW5hbcSxeW9yIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2OTUKK21zZ2lkICIiCisiWW91IG11c3QgZWRpdCBhbGwgbWVyZ2UgY29uZmxpY3RzIGFuZCB0aGVuXG4iCisibWFyayB0aGVtIGFzIHJlc29sdmVkIHVzaW5nIGdpdCBhZGQiCittc2dzdHIgIiIKKyLDlm5jZSB0w7xtIGJpcmxlxZ90aXJtZSDDp2FrxLHFn21hbGFyxLFuxLEgZMO8emVubGVtZWxpIHZlIG9ubGFyxLFcbiIKKyJnaXQgYWRkIGt1bGxhbmFyYWsgdGFtYW1sYW5kxLEgb2xhcmFrIGltbGVtZWxpc2luaXouIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE3MTQKK21zZ2lkICJjb3VsZCBub3QgZGlzY2FyZCB3b3JrdHJlZSBjaGFuZ2VzIgorbXNnc3RyICLDp2FsxLHFn21hIGHEn2FjxLEgZGXEn2nFn2lrbGlrbGVyaSBhdMSxbGFtYWTEsSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBtb3ZlIGJhY2sgdG8gJXMiCittc2dzdHIgIiVzIGtvbnVtdW5hIGdlcmkgdGHFn8SxbmFtYWTEsSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJJdCBzZWVtcyB0aGF0IHRoZXJlIGlzIGFscmVhZHkgYSAlcyBkaXJlY3RvcnksIGFuZFxuIgorIkkgd29uZGVyIGlmIHlvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIHJlYmFzZS4gIElmIHRoYXQgaXMgdGhlXG4iCisiY2FzZSwgcGxlYXNlIHRyeVxuIgorIlx0JXNcbiIKKyJJZiB0aGF0IGlzIG5vdCB0aGUgY2FzZSwgcGxlYXNlXG4iCisiXHQlc1xuIgorImFuZCBydW4gbWUgYWdhaW4uICBJIGFtIHN0b3BwaW5nIGluIGNhc2UgeW91IHN0aWxsIGhhdmUgc29tZXRoaW5nXG4iCisidmFsdWFibGUgdGhlcmUuXG4iCittc2dzdHIgIiIKKyJHw7Zyw7xuw7zFn2UgYmFrxLFsxLFyc2EgYmlyICVzIGRpemluaSB6YXRlbiB2YXIgdmUgbWVyYWtcbiIKKyJlZGl5b3J1bSBhY2FiYSBzaXogYmHFn2thIGJpciB5ZW5pZGVuIHRlbWVsbGVuZGlybWVuaW4gb3J0YXPEsW5kYSBtxLFzxLFuxLF6P1xuIgorIkR1cnVtIGJ1eXNhIGzDvHRmZW4gxZ91bnUgZGVuZXlpbjpcbiIKKyJcdCVzXG4iCisiRcSfZXIgYmHFn2thIGJpciDFn2V5c2UsIGzDvHRmZW5cbiIKKyJcdCVzXG4iCisieWFwxLFuIHZlIGJlbmkgeWVuaWRlbiDDp2FsxLHFn3TEsXLEsW4uIEJlbiBzaXppIGJlbGtpIG9yYWRhIGjDomzDoiBkZcSfZXJsaSBiaXJcbiIKKyLFn2V5bGVyIG9sYWJpbGlyIGRpeWUgZHVyZHVyZHVtLlxuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE4MDYKK21zZ2lkICJzd2l0Y2ggYEMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCittc2dzdHIgIidDJyBhbmFodGFyxLEgc2F5xLFzYWwgYmlyIGRlxJ9lciBiZWtsaXlvciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxODQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIlVua25vd24gbW9kZTogJXMiCittc2dzdHIgIkJpbGlubWV5ZW4ga2lwOiAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxODY5Cittc2dpZCAiLS1zdHJhdGVneSByZXF1aXJlcyAtLW1lcmdlIG9yIC0taW50ZXJhY3RpdmUiCittc2dzdHIgIi0tc3RyYXRlZ3ksIC0tbWVyZ2UgdmV5YSAtLWludGVyYWN0aXZlIGdlcmVrdGlyaXlvciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxODk5Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgYXBwbHkgb3B0aW9ucyB3aXRoIG1lcmdlIG9wdGlvbnMiCittc2dzdHIgIlwiYXBwbHlcIiBzZcOnZW5la2xlcmkgXCJtZXJnZVwiIHNlw6dlbmVrbGVyaXlsZSBiaXJsaWt0ZSBrdWxsYW7EsWxhbcSxeW9yIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5rbm93biByZWJhc2UgYmFja2VuZDogJXMiCittc2dzdHIgIkJpbGlubWV5ZW4geWVuaWRlbiB0ZW1lbGxlbmRpcm1lIGFya2EgdWN1OiAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTM3Cittc2dpZCAiLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjIHJlcXVpcmVzIC0tZXhlYyBvciAtLWludGVyYWN0aXZlIgorbXNnc3RyICItLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWMsIC0tZXhlYyB2ZXlhIC0taW50ZXJhY3RpdmUgZ2VyZWt0aXJpeW9yIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5NTcKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmViYXNlLW1lcmdlcyciCittc2dzdHIgIi0tcHJlc2VydmUtbWVyZ2VzIGlsZSAtLXJlYmFzZS1tZXJnZXMgYmlybGlrdGUga3VsbGFuxLFsYW3EsXlvciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTYxCittc2dpZCAiIgorImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyciCittc2dzdHIgIiIKKyJoYXRhOiAtLXByZXNlcnZlLW1lcmdlcyBpbGUgLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjIGJpcmxpa3RlIGt1bGxhbsSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk4NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICclcyciCittc2dzdHIgImdlw6dlcnNpeiDDvHN0a2F5bmFrICclcyciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk5MQorbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgbmV3IHJvb3QgY29tbWl0IgorbXNnc3RyICJZZW5pIGvDtmsgZ8O2bmRlcmkgb2x1xZ90dXJ1bGFtYWTEsSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IG5lZWQgZXhhY3RseSBvbmUgbWVyZ2UgYmFzZSB3aXRoIGJyYW5jaCIKK21zZ3N0ciAiJyVzJzogdGFtIG9sYXJhayBkYWxsxLEgYmlyIGJpcmxlxZ90aXJtZSB0ZW1lbGkgZ2VyZWtsaSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IG5lZWQgZXhhY3RseSBvbmUgbWVyZ2UgYmFzZSIKK21zZ3N0ciAiJyVzJzogdGFtIG9sYXJhayBiaXIgYmlybGXFn3Rpcm1lIHRlbWVsaSBnZXJla2l5b3IiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAyOAorIywgYy1mb3JtYXQKK21zZ2lkICJEb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIGNvbW1pdCAnJXMnIgorbXNnc3RyICInJXMnIGdlw6dlcmxpIGJpciBnw7ZuZGVyaXllIGnFn2FyZXQgZXRtaXlvciIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDU0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhdGFsOiBubyBzdWNoIGJyYW5jaC9jb21taXQgJyVzJyIKK21zZ3N0ciAib251bG1hejogYsO2eWxlIGJpciBkYWwvZ8O2bmRlcmkgeW9rOiAnJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwNjIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk5MAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBzdWNoIHJlZjogJXMiCittc2dzdHIgIkLDtnlsZSBiaXIgYmHFn3Z1cnUgeW9rOiAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDczCittc2dpZCAiQ291bGQgbm90IHJlc29sdmUgSEVBRCB0byBhIHJldmlzaW9uIgorbXNnc3RyICJIRUFEIGJpciByZXZpenlvbmEgw6fDtnrDvGxlbWVkaSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTExCittc2dpZCAiQ2Fubm90IGF1dG9zdGFzaCIKK21zZ3N0ciAiS2VuZGlsacSfaW5kZW4genVsYWxhbmFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJVbmV4cGVjdGVkIHN0YXNoIHJlc3BvbnNlOiAnJXMnIgorbXNnc3RyICJCZWtsZW5tZWRpayB6dWxhIHlhbsSxdMSxOiAnJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgZm9yICclcyciCittc2dzdHIgIiclcycgacOnaW4gZGl6aW4gb2x1xZ90dXJ1bGFtYWTEsSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNyZWF0ZWQgYXV0b3N0YXNoOiAlc1xuIgorbXNnc3RyICJadWxhIGtlbmRpbGnEn2luZGVuIG9sdcWfdHVydWxkdTogJXNcbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTI2Cittc2dpZCAiY291bGQgbm90IHJlc2V0IC0taGFyZCIKK21zZ3N0ciAiJ3Jlc2V0IC0taGFyZCcgeWFwxLFsYW1hZMSxIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxMzUKK21zZ2lkICJQbGVhc2UgY29tbWl0IG9yIHN0YXNoIHRoZW0uIgorbXNnc3RyICJMw7x0ZmVuIG9ubGFyxLEgZ8O2bmRlcmluIHZleWEgenVsYWxhecSxbi4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3dpdGNoIHRvICVzIgorbXNnc3RyICLFn3VyYXlhIGdlw6dpbGVtZWRpOiAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTgwCittc2dpZCAiSEVBRCBpcyB1cCB0byBkYXRlLiIKK21zZ3N0ciAiSEVBRCBnw7xuY2VsLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgYnJhbmNoICVzIGlzIHVwIHRvIGRhdGUuXG4iCittc2dzdHIgIkdlw6dlcmxpIGRhbCAlcyBnw7xuY2VsLlxuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxOTAKK21zZ2lkICJIRUFEIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgorbXNnc3RyICJIRUFEIGfDvG5jZWwsIHllbmlkZW4gdGVtZWxsZW5kaXJtZSB6b3JsYW5kxLEuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCBicmFuY2ggJXMgaXMgdXAgdG8gZGF0ZSwgcmViYXNlIGZvcmNlZC5cbiIKK21zZ3N0ciAiR2XDp2VybGkgZGFsICVzIGfDvG5jZWwsIHllbmlkZW4gdGVtZWxsZW5kaXJtZSB6b3JsYW5kxLEuXG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIwMAorbXNnaWQgIlRoZSBwcmUtcmViYXNlIGhvb2sgcmVmdXNlZCB0byByZWJhc2UuIgorbXNnc3RyICIncHJlLXJlYmFzZScga2FuY2FzxLEgeWVuaWRlbiB0ZW1lbGxlbmRpcm1leWkgcmVkZGV0dGkuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hhbmdlcyB0byAlczpcbiIKK21zZ3N0ciAiJXMgacOnaW4gb2xhbiBkZcSfacWfaWtsaWtsZXI6XG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJDaGFuZ2VzIGZyb20gJXMgdG8gJXM6XG4iCittc2dzdHIgIiVzIC0+ICVzIGRlxJ9pxZ9pa2xpa2xlcmk6XG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIzNQorIywgYy1mb3JtYXQKK21zZ2lkICJGaXJzdCwgcmV3aW5kaW5nIGhlYWQgdG8gcmVwbGF5IHlvdXIgd29yayBvbiB0b3Agb2YgaXQuLi5cbiIKK21zZ3N0ciAiIgorIsOWbmNlbGlrbGUgZGFsIHVjdSDDvHplcmluZGVraSDDp2FsxLHFn21hbsSxesSxIHllbmlkZW4gb3luYXRtYWsgacOnaW4gZ2VyaSAiCisic2FyxLFsxLF5b3IuLi5cbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjQ0Cittc2dpZCAiQ291bGQgbm90IGRldGFjaCBIRUFEIgorbXNnc3RyICJIRUFEIGF5csSxbGFtYWTEsSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhc3QtZm9yd2FyZGVkICVzIHRvICVzLlxuIgorbXNnc3RyICIlcywgJXMga29udW11bmEgaWxlcmkgc2FyxLFsZMSxLlxuIgorCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjMzCittc2dpZCAiZ2l0IHJlY2VpdmUtcGFjayA8Z2l0LWRpcj4iCittc2dzdHIgImdpdCByZWNlaXZlLXBhY2sgPGdpdC1kaXppbmk+IgorCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjgyMQorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCB1cGRhdGluZyB0aGUgY3VycmVudCBicmFuY2ggaW4gYSBub24tYmFyZSByZXBvc2l0b3J5XG4iCisiaXMgZGVuaWVkLCBiZWNhdXNlIGl0IHdpbGwgbWFrZSB0aGUgaW5kZXggYW5kIHdvcmsgdHJlZSBpbmNvbnNpc3RlbnRcbiIKKyJ3aXRoIHdoYXQgeW91IHB1c2hlZCwgYW5kIHdpbGwgcmVxdWlyZSAnZ2l0IHJlc2V0IC0taGFyZCcgdG8gbWF0Y2hcbiIKKyJ0aGUgd29yayB0cmVlIHRvIEhFQUQuXG4iCisiXG4iCisiWW91IGNhbiBzZXQgdGhlICdyZWNlaXZlLmRlbnlDdXJyZW50QnJhbmNoJyBjb25maWd1cmF0aW9uIHZhcmlhYmxlXG4iCisidG8gJ2lnbm9yZScgb3IgJ3dhcm4nIGluIHRoZSByZW1vdGUgcmVwb3NpdG9yeSB0byBhbGxvdyBwdXNoaW5nIGludG9cbiIKKyJpdHMgY3VycmVudCBicmFuY2g7IGhvd2V2ZXIsIHRoaXMgaXMgbm90IHJlY29tbWVuZGVkIHVubGVzcyB5b3VcbiIKKyJhcnJhbmdlZCB0byB1cGRhdGUgaXRzIHdvcmsgdHJlZSB0byBtYXRjaCB3aGF0IHlvdSBwdXNoZWQgaW4gc29tZVxuIgorIm90aGVyIHdheS5cbiIKKyJcbiIKKyJUbyBzcXVlbGNoIHRoaXMgbWVzc2FnZSBhbmQgc3RpbGwga2VlcCB0aGUgZGVmYXVsdCBiZWhhdmlvdXIsIHNldFxuIgorIidyZWNlaXZlLmRlbnlDdXJyZW50QnJhbmNoJyBjb25maWd1cmF0aW9uIHZhcmlhYmxlIHRvICdyZWZ1c2UnLiIKK21zZ3N0ciAiIgorIsOWbnRhbsSxbWzEsSBvbGFyYWssIMOnxLFwbGFrIG9sbWF5YW4gYmlyIGRlcG9kYWtpIGdlw6dlcmxpIGRhbMSxIGfDvG5jZWxsZW1lXG4iCisicmVkZGVkaWxpciwgw6fDvG5rw7wgYnUgaW5kZWtzaSB2ZSDDp2FsxLHFn21hIGHEn2FjxLFuxLEgaXR0acSfaW5pemxlIHR1dGFyc8SxelxuIgorImR1cnVtYSBnZXRpcmlyIHZlIMOnYWzEscWfbWEgYcSfYWPEsW7EsSBIRUFEIGlsZSBlxZ9sZcWfdGlybWVrIGnDp2luXG4iCisiJ2dpdCByZXNldCAtLWhhcmQnIGdlcmVrdGlyaXIuXG4iCisiR2XDp2VybGkgZGFsxLFuYSBpdG1leWUgaXppbiB2ZXJtZWsgacOnaW4gdXphayBkZXBvZGFraSAncmVjZWl2ZS4iCisiZGVueUN1cnJlbnRCcmFuY2gnXG4iCisieWFwxLFsYW5kxLFybWEgZGXEn2nFn2tlbmluaSAnaWdub3JlJyB2ZXlhICd3YXJuJyBvbGFyYWsgYXlhcmxheWFiaWxpcnNpbml6LFxuIgorImFuY2FrIGJ1IG9udW4gw6dhbMSxxZ9tYSBhxJ9hY8SxbsSxIGl0dGnEn2luaXpsZSBlxZ9sZcWfdGlyZWNlayBiaXIgeW9sIGJ1bG1hZMSxxJ/EsW7EsXpcbiIKKyJzw7xyZWNlIMO2bmVyaWxtZXouXG4iCisiQnUgaWxldGl5aSBzdXN0dXJ1cCDDtm50YW7EsW1sxLEgZGF2cmFuxLHFn8SxIHR1dG1hayBpw6dpbiAncmVjZWl2ZS4iCisiZGVueUN1cnJlbnRCcmFuY2gnXG4iCisieWFwxLFsYW5kxLFybWEgZGXEn2nFn2tlbmluaSAncmVmdXNlJyBvbGFyYWsgYXlhcmxhecSxbi4iCisKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODQxCittc2dpZCAiIgorIkJ5IGRlZmF1bHQsIGRlbGV0aW5nIHRoZSBjdXJyZW50IGJyYW5jaCBpcyBkZW5pZWQsIGJlY2F1c2UgdGhlIG5leHRcbiIKKyInZ2l0IGNsb25lJyB3b24ndCByZXN1bHQgaW4gYW55IGZpbGUgY2hlY2tlZCBvdXQsIGNhdXNpbmcgY29uZnVzaW9uLlxuIgorIlxuIgorIllvdSBjYW4gc2V0ICdyZWNlaXZlLmRlbnlEZWxldGVDdXJyZW50JyBjb25maWd1cmF0aW9uIHZhcmlhYmxlIHRvXG4iCisiJ3dhcm4nIG9yICdpZ25vcmUnIGluIHRoZSByZW1vdGUgcmVwb3NpdG9yeSB0byBhbGxvdyBkZWxldGluZyB0aGVcbiIKKyJjdXJyZW50IGJyYW5jaCwgd2l0aCBvciB3aXRob3V0IGEgd2FybmluZyBtZXNzYWdlLlxuIgorIlxuIgorIlRvIHNxdWVsY2ggdGhpcyBtZXNzYWdlLCB5b3UgY2FuIHNldCBpdCB0byAncmVmdXNlJy4iCittc2dzdHIgIiIKKyLDlm50YW7EsW1sxLEgb2xhcmFrLCBnZcOnZXJsaSBkYWzEsSBzaWxtZSByZWRkZWRpbGlyLCDDp8O8bmvDvCBiaXIgc29ucmFraSAnZ2l0ICIKKyJjbG9uZSdcbiIKKyJoacOnYmlyIGRvc3lhbsSxbiDDp8Sxa8SxxZ8geWFwxLFsYW1hbWFzxLFuYSBuZWRlbiBvbHVwIGthcm1hxZ9hIGRvxJ91cnVyLlxuIgorIlxuIgorIkdlw6dlcmxpIGRhbMSxbiBiaXIgdXlhcsSxIGlsZXRpc2l5bGUgdmV5YSBpbGV0aSBvbG1hZGFuIHNpbGluZWJpbG1lc2luZSBpemluXG4iCisidmVybWVrIGnDp2luIHV6YWsgZGVwb2Rha2kgJ3JlY2VpdmUuZGVueURlbGV0ZUN1cnJlbnQnIHlhcMSxbGFuZMSxcm1hXG4iCisiZGXEn2nFn2tlbmluaSAnd2FybicgdmV5YSAnaWdub3JlJyBvbGFyYWsgYXlhcmxheWFiaWxpcnNpbml6LlxuIgorIkJ1IGlsZXRpeWkgc3VzdHVybWFrIGnDp2luIG9udSAncmVmdXNlJyBvbGFyYWsgYXlhcmxhecSxbi4iCisKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTkzOAorbXNnaWQgInF1aWV0IgorbXNnc3RyICJzZXNzaXoiCisKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk1MgorbXNnaWQgIllvdSBtdXN0IHNwZWNpZnkgYSBkaXJlY3RvcnkuIgorbXNnc3RyICJCaXIgZGl6aW4gYmVsaXJ0bWVsaXNpbml6LiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzoxNworbXNnaWQgIiIKKyJnaXQgcmVmbG9nIGV4cGlyZSBbLS1leHBpcmU9PHRpbWU+XSBbLS1leHBpcmUtdW5yZWFjaGFibGU9PHRpbWU+XSBbLS0iCisicmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1zdGFsZS1maXhdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gWy0tYWxsXSAiCisiPHJlZnM+Li4uIgorbXNnc3RyICIiCisiZ2l0IHJlZmxvZyBleHBpcmUgWy0tZXhwaXJlPTx6YW1hbj5dIFstLWV4cGlyZS11bnJlYWNoYWJsZT08emFtYW4+XSBbLS0iCisicmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1zdGFsZS1maXhdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gWy0tYWxsXSAiCisiPGJhxZ92dXJ1bGFyPi4uLiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzoyMgorbXNnaWQgIiIKKyJnaXQgcmVmbG9nIGRlbGV0ZSBbLS1yZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gIgorIjxyZWZzPi4uLiIKK21zZ3N0ciAiIgorImdpdCByZWZsb2cgZGVsZXRlIFstLXJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSAiCisiPGJhxZ92dXJ1bGFyPi4uLiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzoyNQorbXNnaWQgImdpdCByZWZsb2cgZXhpc3RzIDxyZWY+IgorbXNnc3RyICJnaXQgcmVmbG9nIGV4aXN0cyA8YmHFn3Z1cnU+IgorCisjOiBidWlsdGluL3JlZmxvZy5jOjU2OCBidWlsdGluL3JlZmxvZy5jOjU3MworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRpbWVzdGFtcCIKK21zZ3N0ciAiJyVzJyBnZcOnZXJsaSBiaXIgemFtYW4gZGFtZ2FzxLEgZGXEn2lsIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjYwNgorIywgYy1mb3JtYXQKK21zZ2lkICJNYXJraW5nIHJlYWNoYWJsZSBvYmplY3RzLi4uIgorbXNnc3RyICJVbGHFn8SxbGFiaWxpciBuZXNuZWxlciBpbWxlbml5b3IuLi4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBvaW50cyBub3doZXJlISIKK21zZ3N0ciAiJXMgaGnDp2JpciB5ZXJlIGnFn2FyZXQgZXRtaXlvciEiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6Njk2Cittc2dpZCAibm8gcmVmbG9nIHNwZWNpZmllZCB0byBkZWxldGUiCittc2dzdHIgInNpbG1layBpw6dpbiBiaXIgYmHFn3Z1cnUgZ8O8bmzDvMSfw7wgYmVsaXJ0aWxtZWRpIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjcwNQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSByZWZsb2c6ICVzIgorbXNnc3RyICJiaXIgYmHFn3Z1cnUgZ8O8bmzDvMSfw7wgZGXEn2lsOiAlcyIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcmVmbG9nIGZvciAnJXMnIgorbXNnc3RyICInJXMnIGnDp2luIGJhxZ92dXJ1IGfDvG5sw7zEn8O8IHlvayIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWYgZm9ybWF0OiAlcyIKK21zZ3N0ciAiZ2XDp2Vyc2l6IGJhxZ92dXJ1IGJpw6dpbWk6ICVzIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc2NQorbXNnaWQgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCittc2dzdHIgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcKK21zZ2lkICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0iCittc2dzdHIgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxOAorbXNnaWQgIiIKKyJnaXQgcmVtb3RlIGFkZCBbLXQgPGJyYW5jaD5dIFstbSA8bWFzdGVyPl0gWy1mXSBbLS10YWdzIHwgLS1uby10YWdzXSBbLS0iCisibWlycm9yPTxmZXRjaHxwdXNoPl0gPG5hbWU+IDx1cmw+IgorbXNnc3RyICIiCisiZ2l0IHJlbW90ZSBhZGQgWy10IDxkYWw+XSBbLW0gPG1hc3Rlcj5dIFstZl0gWy0tdGFncyB8IC0tbm8tdGFnc10gWy0tIgorIm1pcnJvcj08Z2V0aXJ8aXQ+XSA8YWQ+IDx1cmw+IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6MzkKK21zZ2lkICJnaXQgcmVtb3RlIHJlbmFtZSA8b2xkPiA8bmV3PiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSByZW5hbWUgPGVza2k+IDx5ZW5pPiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyMCBidWlsdGluL3JlbW90ZS5jOjQ0Cittc2dpZCAiZ2l0IHJlbW90ZSByZW1vdmUgPG5hbWU+IgorbXNnc3RyICJnaXQgcmVtb3RlIHJlbW92ZSA8YWQ+IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjIxIGJ1aWx0aW4vcmVtb3RlLmM6NDkKK21zZ2lkICJnaXQgcmVtb3RlIHNldC1oZWFkIDxuYW1lPiAoLWEgfCAtLWF1dG8gfCAtZCB8IC0tZGVsZXRlIHwgPGJyYW5jaD4pIgorbXNnc3RyICJnaXQgcmVtb3RlIHNldC1oZWFkIDxhZD4gKC1hIHwgLS1hdXRvIHwgLWQgfCAtLWRlbGV0ZSB8IDxkYWw+KSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyMgorbXNnaWQgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSBzaG93IFstbl0gPG5hbWU+IgorbXNnc3RyICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gc2hvdyBbLW5dIDxhZD4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjMKK21zZ2lkICJnaXQgcmVtb3RlIHBydW5lIFstbiB8IC0tZHJ5LXJ1bl0gPG5hbWU+IgorbXNnc3RyICJnaXQgcmVtb3RlIHBydW5lIFstbiB8IC0tZHJ5LXJ1bl0gPGFkPiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyNAorbXNnaWQgIiIKKyJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gdXBkYXRlIFstcCB8IC0tcHJ1bmVdIFsoPGdyb3VwPiB8IDxyZW1vdGU+KS4uLl0iCittc2dzdHIgIiIKKyJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gdXBkYXRlIFstcCB8IC0tcHJ1bmVdIFsoPGdydXA+IHwgPHV6YWstaz4pLi4uXSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyNQorbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIFstLWFkZF0gPG5hbWU+IDxicmFuY2g+Li4uIgorbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyBbLS1hZGRdIDxhZD4gPGRhbD4uLi4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjYgYnVpbHRpbi9yZW1vdGUuYzo3NQorbXNnaWQgImdpdCByZW1vdGUgZ2V0LXVybCBbLS1wdXNoXSBbLS1hbGxdIDxuYW1lPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBnZXQtdXJsIFstLXB1c2hdIFstLWFsbF0gPGFkPiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyNyBidWlsdGluL3JlbW90ZS5jOjgwCittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIFstLXB1c2hdIDxuYW1lPiA8bmV3dXJsPiBbPG9sZHVybD5dIgorbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgWy0tcHVzaF0gPGFkPiA8eWVuaS11cmw+IFs8ZXNraS11cmw+XSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyOCBidWlsdGluL3JlbW90ZS5jOjgxCittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tYWRkIDxuYW1lPiA8bmV3dXJsPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tYWRkIDxhZD4gPHllbmktdXJsPiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyOSBidWlsdGluL3JlbW90ZS5jOjgyCittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDxuYW1lPiA8dXJsPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDxhZD4gPHVybD4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MzQKK21zZ2lkICJnaXQgcmVtb3RlIGFkZCBbPG9wdGlvbnM+XSA8bmFtZT4gPHVybD4iCittc2dzdHIgImdpdCByZW1vdGUgYWRkIFs8c2XDp2VuZWtsZXI+XSA8YWQ+IDx1cmw+IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjU0Cittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgPG5hbWU+IDxicmFuY2g+Li4uIgorbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyA8YWQ+IDxkYWw+Li4uIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjU1Cittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgLS1hZGQgPG5hbWU+IDxicmFuY2g+Li4uIgorbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyAtLWFkZCA8YWQ+IDxkYWw+Li4uIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjYwCittc2dpZCAiZ2l0IHJlbW90ZSBzaG93IFs8b3B0aW9ucz5dIDxuYW1lPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBzaG93IFs8c2XDp2VuZWtsZXI+XSA8YWQ+IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjY1Cittc2dpZCAiZ2l0IHJlbW90ZSBwcnVuZSBbPG9wdGlvbnM+XSA8bmFtZT4iCittc2dzdHIgImdpdCByZW1vdGUgcHJ1bmUgWzxzZcOnZW5la2xlcj5dIDxhZD4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzAKK21zZ2lkICJnaXQgcmVtb3RlIHVwZGF0ZSBbPG9wdGlvbnM+XSBbPGdyb3VwPiB8IDxyZW1vdGU+XS4uLiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSB1cGRhdGUgWzxzZcOnZW5la2xlcj5dIFs8Z3J1cD4gfCA8dXphay1rb251bT5dLi4uIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nICVzIgorbXNnc3RyICIlcyBnw7xuY2VsbGVuaXlvciIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzEKK21zZ2lkICIiCisiLS1taXJyb3IgaXMgZGFuZ2Vyb3VzIGFuZCBkZXByZWNhdGVkOyBwbGVhc2VcbiIKKyJcdCB1c2UgLS1taXJyb3I9ZmV0Y2ggb3IgLS1taXJyb3I9cHVzaCBpbnN0ZWFkIgorbXNnc3RyICIiCisiLS1taXJyb3IgdGVobGlrZWxpIHZlIGFydMSxayBrdWxsYW7EsW0gZMSxxZ/EsTsgbMO8dGZlblxuIgorIlx0IHllcmluZSAtLW1pcnJvci1mZXRjaCB2ZXlhIC0tbWlycm9yPXB1c2gga3VsbGFuxLFuLiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBtaXJyb3IgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJiaWxpbm1leWVuIG1pcnJvciBkZcSfacWfa2VuaTogJXMiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY0Cittc2dpZCAiZmV0Y2ggdGhlIHJlbW90ZSBicmFuY2hlcyIKK21zZ3N0ciAidXphayBrb251bSBkYWxsYXLEsW7EsSBnZXRpciIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjYKK21zZ2lkICJpbXBvcnQgYWxsIHRhZ3MgYW5kIGFzc29jaWF0ZWQgb2JqZWN0cyB3aGVuIGZldGNoaW5nIgorbXNnc3RyICJnZXRpcmlya2VuIHTDvG0gZXRpa2V0bGVyaSB2ZSBpbGnFn2tpbGkgbmVzbmVsZXJpIGnDp2UgYWt0YXIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY5Cittc2dpZCAib3IgZG8gbm90IGZldGNoIGFueSB0YWcgYXQgYWxsICgtLW5vLXRhZ3MpIgorbXNnc3RyICJ2ZXlhIGhpw6diaXIgZXRpa2V0aSBnZXRpcm1lICgtLW5vLXRhZ3MpIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MQorbXNnaWQgImJyYW5jaChlcykgdG8gdHJhY2siCittc2dzdHIgIml6bGVuZWNlayBkYWwobGFyKSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNzIKK21zZ2lkICJtYXN0ZXIgYnJhbmNoIgorbXNnc3RyICJhbmEgZGFsIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE3NAorbXNnaWQgInNldCB1cCByZW1vdGUgYXMgYSBtaXJyb3IgdG8gcHVzaCB0byBvciBmZXRjaCBmcm9tIgorbXNnc3RyICIiCisidXphayBrb251bSBkZXBvc3VudSBvbmEgaXRpbGVjZWsgdmV5YSBvbmRhbiBnZXRpcmlsZWNlayBiaXIgeWFuc8SxIG9sYXJhayAiCisiYXlhcmxhIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE4NgorbXNnaWQgInNwZWNpZnlpbmcgYSBtYXN0ZXIgYnJhbmNoIG1ha2VzIG5vIHNlbnNlIHdpdGggLS1taXJyb3IiCittc2dzdHIgIi0tbWlycm9yIGlsZSBiaXIgYW5hIGRhbCBiZWxpcnRtZWsgYW5sYW0gaWZhZGUgZXRtaXlvciIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxODgKK21zZ2lkICJzcGVjaWZ5aW5nIGJyYW5jaGVzIHRvIHRyYWNrIG1ha2VzIHNlbnNlIG9ubHkgd2l0aCBmZXRjaCBtaXJyb3JzIgorbXNnc3RyICIiCisiaXpsZW1layBpw6dpbiBkYWxsYXIgYmVsaXJ0bWVrIHlhbG7EsXpjYSBnZXRpcm1lIHlhbnPEsWxhcsSxeWxhIGFubGFtaWZhZGUgZWRpeW9yIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE5NSBidWlsdGluL3JlbW90ZS5jOjY5NgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdGUgJXMgYWxyZWFkeSBleGlzdHMuIgorbXNnc3RyICIlcyB1emFrIGtvbnVtdSBoYWxpaGF6xLFyZGEgdmFyLiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxOTkgYnVpbHRpbi9yZW1vdGUuYzo3MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZW1vdGUgbmFtZSIKK21zZ3N0ciAiJyVzJyBnZcOnZXJsaSBiaXIgdXphayBrb251bSBhZMSxIGRlxJ9pbCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHNldHVwIG1hc3RlciAnJXMnIgorbXNnc3RyICInJXMnIGFuYSBkYWzEsSBheWFybGFuYW1hZMSxIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgZ2V0IGZldGNoIG1hcCBmb3IgcmVmc3BlYyAlcyIKK21zZ3N0ciAiJXMgYmHFn3Z1cnUgYmVsaXJ0ZWNpIGnDp2luIGdldGlybWUgaGFyaXRhc8SxIGFsxLFuYW1hZMSxIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjQ1MyBidWlsdGluL3JlbW90ZS5jOjQ2MQorbXNnaWQgIihtYXRjaGluZykiCittc2dzdHIgIihlxZ9sZcWfaXlvcikiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NDY1Cittc2dpZCAiKGRlbGV0ZSkiCittc2dzdHIgIihzaWwpIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjY1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc2V0ICclcyciCittc2dzdHIgIiclcycgYXlhcmxhbmFtYWTEsSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo2NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSAlcyBjb25maWd1cmF0aW9uIHJlbW90ZS5wdXNoRGVmYXVsdCBpbjpcbiIKKyJcdCVzOiVkXG4iCisibm93IG5hbWVzIHRoZSBub24tZXhpc3RlbnQgcmVtb3RlICclcyciCittc2dzdHIgIiIKKyLFnnVyYWRha2kgJXMgeWFwxLFsYW5kxLFybWFzxLEgcmVtb3RlLnB1c2hEZWZhdWx0OlxuIgorIlx0JXM6JWRcbiIKKyJhcnTEsWsgdmFyIG9sbWF5YW4gJyVzJyB1emFrIGtvbnVtdW51IGFkbGFuZMSxcsSxeW9yLiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo2ODkgYnVpbHRpbi9yZW1vdGUuYzo4MzIgYnVpbHRpbi9yZW1vdGUuYzo5NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gc3VjaCByZW1vdGU6ICclcyciCittc2dzdHIgIkLDtnlsZSBiaXIgdXphayBrb251bSB5b2s6ICclcyciCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzA2CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCByZW5hbWUgY29uZmlnIHNlY3Rpb24gJyVzJyB0byAnJXMnIgorbXNnc3RyICInJXMnIHlhcMSxbGFuZMSxcm1hIGLDtmzDvG3DvCAnJXMnIG9sYXJhayB5ZW5pZGVuIGFkbGFuZMSxcsSxbGFtYWTEsSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo3MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk5vdCB1cGRhdGluZyBub24tZGVmYXVsdCBmZXRjaCByZWZzcGVjXG4iCisiXHQlc1xuIgorIlx0UGxlYXNlIHVwZGF0ZSB0aGUgY29uZmlndXJhdGlvbiBtYW51YWxseSBpZiBuZWNlc3NhcnkuIgorbXNnc3RyICIiCisiw5ZudGFuxLFtbMSxIG9sbWF5YW4gZ2V0aXJtZSBiYcWfdnVydSBiZWxpcnRlY2kgZ8O8bmNlbGxlbm1peW9yLlxuIgorIlx0JXNcbiIKKyJcdEzDvHRmZW4gZ2VyZWtpcnNlIHlhcMSxbGFuZMSxcm1hecSxIGVsIGlsZSBnw7xuY2VsbGV5aW4uIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjc2NgorIywgYy1mb3JtYXQKK21zZ2lkICJkZWxldGluZyAnJXMnIGZhaWxlZCIKK21zZ3N0ciAiJyVzJyBzaWxpbm1lc2kgYmHFn2FyxLFzxLF6IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjgwMAorIywgYy1mb3JtYXQKK21zZ2lkICJjcmVhdGluZyAnJXMnIGZhaWxlZCIKK21zZ3N0ciAiJyVzJyBvbHXFn3R1cnVsbWFzxLEgYmHFn2FyxLFzxLF6IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjg3NgorbXNnaWQgIiIKKyJOb3RlOiBBIGJyYW5jaCBvdXRzaWRlIHRoZSByZWZzL3JlbW90ZXMvIGhpZXJhcmNoeSB3YXMgbm90IHJlbW92ZWQ7XG4iCisidG8gZGVsZXRlIGl0LCB1c2U6IgorbXNnaWRfcGx1cmFsICIiCisiTm90ZTogU29tZSBicmFuY2hlcyBvdXRzaWRlIHRoZSByZWZzL3JlbW90ZXMvIGhpZXJhcmNoeSB3ZXJlIG5vdCByZW1vdmVkO1xuIgorInRvIGRlbGV0ZSB0aGVtLCB1c2U6IgorbXNnc3RyWzBdICIiCisiTm90OiByZWZzL3JlbW90ZXMgaGl5ZXJhcsWfaXNpIGTEscWfxLFuZGFraSBiaXIgZGFsIGthbGTEsXLEsWxtYWTEsTtcbiIKKyJvbnUgc2lsbWVrIGnDp2luIMWfdW51IGt1bGxhbsSxbjoiCittc2dzdHJbMV0gIiIKKyJOb3Q6IHJlZnMvcmVtb3RlcyBoaXllcmFyxZ9pc2kgZMSxxZ/EsW5kYWtpIGJhesSxIGRhbGxhciBrYWxkxLFyxLFsbWFkxLE7XG4iCisib25sYXLEsSBzaWxtZWsgacOnaW4gxZ91bnUga3VsbGFuxLFuOiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo4OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHJlbW92ZSBjb25maWcgc2VjdGlvbiAnJXMnIgorbXNnc3RyICInJXMnIHlhcMSxbGFuZMSxcnNhIGLDtmzDvG3DvCBrYWxkxLFyxLFsYW1hZMSxIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjk5MworIywgYy1mb3JtYXQKK21zZ2lkICIgbmV3IChuZXh0IGZldGNoIHdpbGwgc3RvcmUgaW4gcmVtb3Rlcy8lcykiCittc2dzdHIgIiB5ZW5pIChiaXIgc29ucmFraSBnZXRpcm1lIHV6YWsga29udW1sYXJkYSBkZXBvbGF5YWNhay8lcyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo5OTYKK21zZ2lkICIgdHJhY2tlZCIKK21zZ3N0ciAiIGl6bGVuZGkiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTk4Cittc2dpZCAiIHN0YWxlICh1c2UgJ2dpdCByZW1vdGUgcHJ1bmUnIHRvIHJlbW92ZSkiCittc2dzdHIgIiBlc2tpbWnFnyAoa2FsZMSxcm1hayBpw6dpbiAnZ2l0IHJlbW90ZSBwcnVuZScga3VsbGFuxLFuKSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMDAwCittc2dpZCAiID8/PyIKK21zZ3N0ciAiID8/PyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgYnJhbmNoLiVzLm1lcmdlOyBjYW5ub3QgcmViYXNlIG9udG8gPiAxIGJyYW5jaCIKK21zZ3N0ciAiZ2XDp2Vyc2l6IGJyYW5jaC4lcy5tZXJnZTsgYmlyZGVuIMOnb2sgZGFsYSB5ZW5pZGVuIHRlbWVsbGVuZGlyaWxlbWl5b3IiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgb250byByZW1vdGUgJXMiCittc2dzdHIgIiVzIHV6YWsga29udW11bmEgZXRraWxlxZ9pbWxpIG9sYXJhayB5ZW5pZGVuIHRlbWVsbGVuZGlyaXIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgKHdpdGggbWVyZ2VzKSBvbnRvIHJlbW90ZSAlcyIKK21zZ3N0ciAiIgorIiVzIHV6YWsga29udW11bmEgZXRraWxlxZ9pbWxpIG9sYXJhayAoYmlybGXFn3Rpcm1lbGVybGUgYmlybGlrdGUpIHllbmlkZW4gIgorInRlbWVsbGVuZGlyaXIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWJhc2VzIG9udG8gcmVtb3RlICVzIgorbXNnc3RyICIlcyB1emFrIGtvbnVtdW5hIHllbmlkZW4gdGVtZWxsZW5kaXJpciIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBtZXJnZXMgd2l0aCByZW1vdGUgJXMiCittc2dzdHIgIiAlcyB1emFrIGtvbnVtdSBpbGUgYmlybGXFn3RpcmlyIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEwNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAibWVyZ2VzIHdpdGggcmVtb3RlICVzIgorbXNnc3RyICIlcyB1emFrIGtvbnVtdSBpbGUgYmlybGXFn3RpcmlyIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEwNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJS0qcyAgICBhbmQgd2l0aCByZW1vdGUgJXNcbiIKK21zZ3N0ciAiJS0qcyAgICB2ZSAlcyB1emFrIGtvbnVtdSBpbGUgYmlybGlrdGVcbiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTA4Cittc2dpZCAiY3JlYXRlIgorbXNnc3RyICJvbHXFn3R1ciIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTExCittc2dpZCAiZGVsZXRlIgorbXNnc3RyICJzaWwiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExNQorbXNnaWQgInVwIHRvIGRhdGUiCittc2dzdHIgImfDvG5jZWwiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExOAorbXNnaWQgImZhc3QtZm9yd2FyZGFibGUiCittc2dzdHIgImlsZXJpIHNhcsSxbGFiaWxpciIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTIxCittc2dpZCAibG9jYWwgb3V0IG9mIGRhdGUiCittc2dzdHIgInllcmVsaW4gdGFyaWhpIGdlw6dtacWfIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjExMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICUtKnMgZm9yY2VzIHRvICUtKnMgKCVzKSIKK21zZ3N0ciAiICAgICUtKnMgxZ91bmEgem9ybHV5b3I6ICUtKnMgKCVzKSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTMxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAlLSpzIHB1c2hlcyB0byAlLSpzICglcykiCittc2dzdHIgIiAgICAlLSpzIMWfdW5hIGl0aXlvcjogJS0qcyAoJXMpIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjExMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICUtKnMgZm9yY2VzIHRvICVzIgorbXNnc3RyICIgICAgJS0qcyDFn3VuYSB6b3JsdXlvcjogJXMiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzOAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgJS0qcyBwdXNoZXMgdG8gJXMiCittc2dzdHIgIiAgICAlLSpzIMWfdW5hIGl0aXlvcjogJXMiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIwNgorbXNnaWQgImRvIG5vdCBxdWVyeSByZW1vdGVzIgorbXNnc3RyICJ1emFrIGtvbnVtbGFyxLEgc29yZ3VsYW1hIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiKiByZW1vdGUgJXMiCittc2dzdHIgIiogdXphayBrb251bSAlcyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgRmV0Y2ggVVJMOiAlcyIKK21zZ3N0ciAiICBVUkwneWkgZ2V0aXI6ICVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzUgYnVpbHRpbi9yZW1vdGUuYzoxMjUxIGJ1aWx0aW4vcmVtb3RlLmM6MTM5MAorbXNnaWQgIihubyBVUkwpIgorbXNnc3RyICIoVVJMIHlvaykiCisKKyMuIFRSQU5TTEFUT1JTOiB0aGUgY29sb24gJzonIHNob3VsZCBhbGlnbgorIy4gd2l0aCB0aGUgb25lIGluICIgRmV0Y2ggVVJMOiAlcyIKKyMuIHRyYW5zbGF0aW9uLgorIy4KKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0OSBidWlsdGluL3JlbW90ZS5jOjEyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQdXNoICBVUkw6ICVzIgorbXNnc3RyICIgICAgIFVSTCd5aSBpdDogJXMiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1MyBidWlsdGluL3JlbW90ZS5jOjEyNTUgYnVpbHRpbi9yZW1vdGUuYzoxMjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgSEVBRCBicmFuY2g6ICVzIgorbXNnc3RyICIgICAgIEhFQUQgZGFsxLE6ICVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTMKK21zZ2lkICIobm90IHF1ZXJpZWQpIgorbXNnc3RyICIoc29yZ3VsYW5tYWTEsSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjU1Cittc2dpZCAiKHVua25vd24pIgorbXNnc3RyICIoYmlsaW5taXlvcikiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICBIRUFEIGJyYW5jaCAocmVtb3RlIEhFQUQgaXMgYW1iaWd1b3VzLCBtYXkgYmUgb25lIG9mIHRoZSBmb2xsb3dpbmcpOlxuIgorbXNnc3RyICIiCisiICBIRUFEIGRhbMSxICh1emFrIGtvbnVtIEhFQUQnaSBiZWxpcnNpeiwgYcWfYcSfxLFkYWtpbGVyZGVuIGJpcmkgb2xhYmlsaXIpOlxuIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBSZW1vdGUgYnJhbmNoOiVzIgorbXNnaWRfcGx1cmFsICIgIFJlbW90ZSBicmFuY2hlczolcyIKK21zZ3N0clswXSAiICBVemFrIGRhbDolcyIKK21zZ3N0clsxXSAiICBVemFrIGRhbGxhcjolcyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjc0IGJ1aWx0aW4vcmVtb3RlLmM6MTMwMAorbXNnaWQgIiAoc3RhdHVzIG5vdCBxdWVyaWVkKSIKK21zZ3N0ciAiIChkdXJ1bSBzb3JndWxhbm1hZMSxKSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjgzCittc2dpZCAiICBMb2NhbCBicmFuY2ggY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCittc2dpZF9wbHVyYWwgIiAgTG9jYWwgYnJhbmNoZXMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCittc2dzdHJbMF0gIiAgJ2dpdCBwdWxsJyBpw6dpbiB5YXDEsWxhbmTEsXLEsWxhbiB5ZXJlbCBkYWw6IgorbXNnc3RyWzFdICIgICdnaXQgcHVsbCcgacOnaW4geWFwxLFsYW5kxLFyxLFsYW4geWVyZWwgZGFsbGFyOiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjkxCittc2dpZCAiICBMb2NhbCByZWZzIHdpbGwgYmUgbWlycm9yZWQgYnkgJ2dpdCBwdXNoJyIKK21zZ3N0ciAiICBZZXJlbCBiYcWfdnVydWxhciAnZ2l0IHB1bGwnIHRhcmFmxLFuZGFuIHlhbnPEsWxhbmFjYWsiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5NworIywgYy1mb3JtYXQKK21zZ2lkICIgIExvY2FsIHJlZiBjb25maWd1cmVkIGZvciAnZ2l0IHB1c2gnJXM6IgorbXNnaWRfcGx1cmFsICIgIExvY2FsIHJlZnMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdXNoJyVzOiIKK21zZ3N0clswXSAiICAnZ2l0IHB1c2gnJXMgacOnaW4geWFwxLFsYW5kxLFyxLFsYW4geWVyZWwgYmHFn3Z1cnU6IgorbXNnc3RyWzFdICIgICdnaXQgcHVzaCclcyBpw6dpbiB5YXDEsWxhbmTEsXLEsWxhbiB5ZXJlbCBiYcWfdnVydWxhcjoiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxOAorbXNnaWQgInNldCByZWZzL3JlbW90ZXMvPG5hbWU+L0hFQUQgYWNjb3JkaW5nIHRvIHJlbW90ZSIKK21zZ3N0ciAicmVmcy9yZW1vdGVzLzxhZD4vSEVBRCdpIHV6YWsga29udW1hIGfDtnJlIGF5YXJsYSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzIwCittc2dpZCAiZGVsZXRlIHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCIKK21zZ3N0ciAicmVmcy9yZW1vdGVzLzxhZD4vSEVBRCdpIHNpbCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzM1Cittc2dpZCAiQ2Fubm90IGRldGVybWluZSByZW1vdGUgSEVBRCIKK21zZ3N0ciAiVXphayBrb251bSBIRUFEJ2kgYmVsaXJsZW5lbWl5b3IiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMzNworbXNnaWQgIk11bHRpcGxlIHJlbW90ZSBIRUFEIGJyYW5jaGVzLiBQbGVhc2UgY2hvb3NlIG9uZSBleHBsaWNpdGx5IHdpdGg6IgorbXNnc3RyICJCaXJkZW4gw6dvayB1emFrIGtvbnVtIEhFQUQgZGFsxLEuIEzDvHRmZW4gYmlyaW5pIGHDp8Sxa8OnYSBzZcOnaW46IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEzNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGRlbGV0ZSAlcyIKK21zZ3N0ciAiJXMgc2lsaW5lbWVkaSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdCBhIHZhbGlkIHJlZjogJXMiCittc2dzdHIgIkdlw6dlcmxpIGJpciBiYcWfdnVydSBkZcSfaWw6ICVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEzNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHNldHVwICVzIgorbXNnc3RyICIlcyBheWFybGFuYW1hZMSxIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEzNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIHdpbGwgYmVjb21lIGRhbmdsaW5nISIKK21zZ3N0ciAiICVzIHNhcmthY2FrISIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyBoYXMgYmVjb21lIGRhbmdsaW5nISIKK21zZ3N0ciAiICVzIHNhcmttYXlhIGJhxZ9sYWTEsSEiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM4NgorIywgYy1mb3JtYXQKK21zZ2lkICJQcnVuaW5nICVzIgorbXNnc3RyICIlcyBidWRhbsSxeW9yIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVVJMOiAlcyIKK21zZ3N0ciAiVVJMOiAlcyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNDAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAqIFt3b3VsZCBwcnVuZV0gJXMiCittc2dzdHIgIiAqICVzIFtidWRhbmFjYWtdIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICogW3BydW5lZF0gJXMiCittc2dzdHIgIiAqICVzIFtidWRhbmTEsV0iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ1MQorbXNnaWQgInBydW5lIHJlbW90ZXMgYWZ0ZXIgZmV0Y2hpbmciCittc2dzdHIgImdldGlybWUgc29ucmFzxLFuZGEgdXphayBrb251bWxhcsSxIGJ1ZGEiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUxNCBidWlsdGluL3JlbW90ZS5jOjE1NjggYnVpbHRpbi9yZW1vdGUuYzoxNjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHN1Y2ggcmVtb3RlICclcyciCittc2dzdHIgIkLDtnlsZSBiaXIgdXphayBrb251bSB5b2sgJyVzJyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTMwCittc2dpZCAiYWRkIGJyYW5jaCIKK21zZ3N0ciAiZGFsIGVrbGUiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzNworbXNnaWQgIm5vIHJlbW90ZSBzcGVjaWZpZWQiCittc2dzdHIgInV6YWsga29udW0gYmVsaXJ0aWxtZWRpIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE1NTQKK21zZ2lkICJxdWVyeSBwdXNoIFVSTHMgcmF0aGVyIHRoYW4gZmV0Y2ggVVJMcyIKK21zZ3N0ciAiaXRtZSBVUkwnbGVyaW5kZW4gw6dvayBnZXRpcm1lIFVSTCdsZXJpbmkgc29yZ3VsYSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTU2Cittc2dpZCAicmV0dXJuIGFsbCBVUkxzIgorbXNnc3RyICJ0w7xtIFVSTCdsZXJpIGTDtm5kw7xyIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gVVJMcyBjb25maWd1cmVkIGZvciByZW1vdGUgJyVzJyIKK21zZ3N0ciAiJyVzJyB1emFrIGtvbnVtdSBpw6dpbiBVUkwgeWFwxLFsYW5kxLFyxLFsbWFtxLHFnyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEwCittc2dpZCAibWFuaXB1bGF0ZSBwdXNoIFVSTHMiCittc2dzdHIgIml0bWUgVVJMJ2xlcmluaSBkZcSfacWfdGlyIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE2MTIKK21zZ2lkICJhZGQgVVJMIgorbXNnc3RyICJVUkwgZWtsZSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjE0Cittc2dpZCAiZGVsZXRlIFVSTHMiCittc2dzdHIgIlVSTCdsZXJpIHNpbCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjIxCittc2dpZCAiLS1hZGQgLS1kZWxldGUgZG9lc24ndCBtYWtlIHNlbnNlIgorbXNnc3RyICItLWFkZCAtLWRlbGV0ZSBiaXIgYW5sYW0gaWZhZGUgZXRtaXlvciIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgb2xkIFVSTCBwYXR0ZXJuOiAlcyIKK21zZ3N0ciAiR2XDp2Vyc2l6IGVza2kgVVJMIGRpemdpc2k6ICVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE2NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gc3VjaCBVUkwgZm91bmQ6ICVzIgorbXNnc3RyICJCw7Z5bGUgYmlyIFVSTCBidWx1bmFtYWTEsTogJXMiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY3MAorbXNnaWQgIldpbGwgbm90IGRlbGV0ZSBhbGwgbm9uLXB1c2ggVVJMcyIKK21zZ3N0ciAiVMO8bSBpdG1lIG9sbWF5YW4gVVJMJ2xlciBzaWxpbm1leWVjZWsiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjMKK21zZ2lkICJnaXQgcmVwYWNrIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgcmVwYWNrIFs8c2XDp2VuZWtsZXI+XSIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyOAorbXNnaWQgIiIKKyJJbmNyZW1lbnRhbCByZXBhY2tzIGFyZSBpbmNvbXBhdGlibGUgd2l0aCBiaXRtYXAgaW5kZXhlcy4gIFVzZVxuIgorIi0tbm8td3JpdGUtYml0bWFwLWluZGV4IG9yIGRpc2FibGUgdGhlIHBhY2sud3JpdGViaXRtYXBzIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisiQXJ0YW4geWVuaWRlbiBwYWtldGxlbWVsZXIgYml0ZcWfbGVtIGluZGVrc2xlcmkgaWxlIHV5dW1zdXpkdXIuXG4iCisiLS1uby13cml0ZS1iaXRtYXAtaW5kZXgga3VsbGFuxLFuIHZleWEgcGFjay53cml0ZWJpdG1hcHMgeWFwxLFsYW5kxLFybWFzxLFuxLFcbiIKKyJkZXZyZSBkxLHFn8SxIGLEsXJha8Sxbi4iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MTkxCittc2dpZCAiY291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIKK21zZ3N0ciAidmFhdMOnaSBuZXNuZWxlcmkgeWVuaWRlbiBwYWtldGxlbWUgacOnaW4gcGFjay1vYmplY3RzIGJhxZ9sYXTEsWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjMwIGJ1aWx0aW4vcmVwYWNrLmM6NDE2Cittc2dpZCAicmVwYWNrOiBFeHBlY3RpbmcgZnVsbCBoZXggb2JqZWN0IElEIGxpbmVzIG9ubHkgZnJvbSBwYWNrLW9iamVjdHMuIgorbXNnc3RyICIiCisicmVwYWNrOiBPbmFsdMSxbMSxIHRhbSBuZXNuZSBubyBzYXTEsXJsYXLEsSB5YWxuxLF6Y2EgcGFjay1vYmplY3RzJ3RlbiBiZWtsZW5peW9yLiIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyNTQKK21zZ2lkICJjb3VsZCBub3QgZmluaXNoIHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIKK21zZ3N0ciAidmFhdMOnaSBuZXNuZWxlcmkgeWVuaWRlbiBwYWtldGxlbWUgacOnaW4gcGFjay1vYmplY3RzIGJpdGlyaWxlbWVkaSIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyOTIKK21zZ2lkICJwYWNrIGV2ZXJ5dGhpbmcgaW4gYSBzaW5nbGUgcGFjayIKK21zZ3N0ciAiaGVyIMWfZXlpIHRlayBiaXIgcGFrZXRlIHPEscSfZMSxciIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyOTQKK21zZ2lkICJzYW1lIGFzIC1hLCBhbmQgdHVybiB1bnJlYWNoYWJsZSBvYmplY3RzIGxvb3NlIgorbXNnc3RyICItYSBpbGUgYXluxLEgdmUgdWxhxZ/EsWxhbWF5YW4gbmVzbmVsZXJpIHNlcmJlc3QgYsSxcmFrxLFyIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI5NworbXNnaWQgInJlbW92ZSByZWR1bmRhbnQgcGFja3MsIGFuZCBydW4gZ2l0LXBydW5lLXBhY2tlZCIKK21zZ3N0ciAiZ2VyZWtzaXogcGFrZXRsZXJpIGthbGTEsXIgdmUgJ2dpdCBwcnVuZS1wYWNrZWQnIMOnYWzEscWfdMSxciIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyOTkKK21zZ2lkICJwYXNzIC0tbm8tcmV1c2UtZGVsdGEgdG8gZ2l0LXBhY2stb2JqZWN0cyIKK21zZ3N0ciAiJ2dpdC1wYWNrLW9iamVjdHMnZSAtLW5vLXJldXNlLWRlbHRhIGdlw6dpciIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMDEKK21zZ2lkICJwYXNzIC0tbm8tcmV1c2Utb2JqZWN0IHRvIGdpdC1wYWNrLW9iamVjdHMiCittc2dzdHIgIidnaXQtcGFjay1vYmplY3RzJ2UgLS1uby1yZXVzZS1vYmplY3QgZ2XDp2lyIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMwMworbXNnaWQgImRvIG5vdCBydW4gZ2l0LXVwZGF0ZS1zZXJ2ZXItaW5mbyIKK21zZ3N0ciAiJ2dpdC11cGRhdGUtc2VydmVyLWluZm8nIMOnYWzEscWfdMSxcm1hIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMwNgorbXNnaWQgInBhc3MgLS1sb2NhbCB0byBnaXQtcGFjay1vYmplY3RzIgorbXNnc3RyICItLWxvY2FsJ8SxICdnaXQtcGFjay1vYmplY3RzJ2UgZ2XDp2lyIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMwOAorbXNnaWQgIndyaXRlIGJpdG1hcCBpbmRleCIKK21zZ3N0ciAiYml0ZcWfbGVtIGluZGVrc2kgeWF6IgorCisjOiBidWlsdGluL3JlcGFjay5jOjMxMAorbXNnaWQgInBhc3MgLS1kZWx0YS1pc2xhbmRzIHRvIGdpdC1wYWNrLW9iamVjdHMiCittc2dzdHIgIi0tZGVsdGEtaXNsYW5kcyfEsSAnZ2l0LXBhY2stb2JqZWN0cydlIGdlw6dpciIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMTEKK21zZ2lkICJhcHByb3hpZGF0ZSIKK21zZ3N0ciAieWFrbGHFn8SxayB0YXJpaCIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMTIKK21zZ2lkICJ3aXRoIC1BLCBkbyBub3QgbG9vc2VuIG9iamVjdHMgb2xkZXIgdGhhbiB0aGlzIgorbXNnc3RyICItQSBpbGUsIGJ1bmRhbiBkYWhhIGVza2kgbmVzbmVsZXJpIGLEsXJha21hIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMxNAorbXNnaWQgIndpdGggLWEsIHJlcGFjayB1bnJlYWNoYWJsZSBvYmplY3RzIgorbXNnc3RyICItYSBpbGUsIHVsYcWfxLFsYW1heWFuIG5lc25lbGVyaSB5ZW5pZGVuIHBha2V0bGUiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE2Cittc2dpZCAic2l6ZSBvZiB0aGUgd2luZG93IHVzZWQgZm9yIGRlbHRhIGNvbXByZXNzaW9uIgorbXNnc3RyICJkZWx0YSBzxLFrxLHFn3TEsXJtYXPEsSBpw6dpbiBrdWxsYW7EsWxhbiBwZW5jZXJlbmluIGJveXV0dSIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMTcgYnVpbHRpbi9yZXBhY2suYzozMjMKK21zZ2lkICJieXRlcyIKK21zZ3N0ciAiYmF5dGxhciIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMTgKK21zZ2lkICJzYW1lIGFzIHRoZSBhYm92ZSwgYnV0IGxpbWl0IG1lbW9yeSBzaXplIGluc3RlYWQgb2YgZW50cmllcyBjb3VudCIKK21zZ3N0ciAieXVrYXLEsWRha2l5bGUgYXluxLEsIGFuY2FrIGdpcmRpIHNhecSxc8SxIHllcmluZSBiZWxsZWsgYm95dXR1bnUga8Sxc8SxdGxhIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMyMAorbXNnaWQgImxpbWl0cyB0aGUgbWF4aW11bSBkZWx0YSBkZXB0aCIKK21zZ3N0ciAib2xhYmlsZWNlayBlbiBiw7x5w7xrIGRlbHRhIGRlcmlubGnEn2luaSBrxLFzxLF0bGFyIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMyMgorbXNnaWQgImxpbWl0cyB0aGUgbWF4aW11bSBudW1iZXIgb2YgdGhyZWFkcyIKK21zZ3N0ciAiacWfIHBhcsOnYWPEsWtsYXLEsW7EsW4gb2xhYmlsZWNlayBlbiBiw7x5w7xrIHNhecSxc8SxbsSxIGvEsXPEsXRsYXIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI0Cittc2dpZCAibWF4aW11bSBzaXplIG9mIGVhY2ggcGFja2ZpbGUiCittc2dzdHIgImhlciBwYWtldCBkb3N5YXPEsW7EsW4gb2xhYmlsZWNlayBlbiBiw7x5w7xrIGJveXV0dSIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMjYKK21zZ2lkICJyZXBhY2sgb2JqZWN0cyBpbiBwYWNrcyBtYXJrZWQgd2l0aCAua2VlcCIKK21zZ3N0ciAibmVzbmVsZXJpIC5rZWVwIGlsZSBpbWxlbm1pxZ8gcGFrZXRsZXJkZSB5ZW5pZGVuIHBha2V0bGUiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI4Cittc2dpZCAiZG8gbm90IHJlcGFjayB0aGlzIHBhY2siCittc2dzdHIgImJ1IHBha2V0aSB5ZW5pZGVuIHBha2V0bGVtZSIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMzgKK21zZ2lkICJjYW5ub3QgZGVsZXRlIHBhY2tzIGluIGEgcHJlY2lvdXMtb2JqZWN0cyByZXBvIgorbXNnc3RyICJiaXIgcHJlY2lvdXMtb2JqZWN0cyBkZXBvc3VuZGFraSBwYWtldGxlciBzaWxpbmVtaXlvciIKKworIzogYnVpbHRpbi9yZXBhY2suYzozNDIKK21zZ2lkICItLWtlZXAtdW5yZWFjaGFibGUgYW5kIC1BIGFyZSBpbmNvbXBhdGlibGUiCittc2dzdHIgIi0ta2VlcC11bnJlYWNoYWJsZSB2ZSAtQSBiaXJiaXJpeWxlIHV5dW1zdXoiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NDI1Cittc2dpZCAiTm90aGluZyBuZXcgdG8gcGFjay4iCittc2dzdHIgIlBha2V0bGVuZWNlayB5ZW5pIGJpciDFn2V5IHlvay4iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NDg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXQVJOSU5HOiBTb21lIHBhY2tzIGluIHVzZSBoYXZlIGJlZW4gcmVuYW1lZCBieVxuIgorIldBUk5JTkc6IHByZWZpeGluZyBvbGQtIHRvIHRoZWlyIG5hbWUsIGluIG9yZGVyIHRvXG4iCisiV0FSTklORzogcmVwbGFjZSB0aGVtIHdpdGggdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZVxuIgorIldBUk5JTkc6IGZpbGUuICBCdXQgdGhlIG9wZXJhdGlvbiBmYWlsZWQsIGFuZCB0aGVcbiIKKyJXQVJOSU5HOiBhdHRlbXB0IHRvIHJlbmFtZSB0aGVtIGJhY2sgdG8gdGhlaXJcbiIKKyJXQVJOSU5HOiBvcmlnaW5hbCBuYW1lcyBhbHNvIGZhaWxlZC5cbiIKKyJXQVJOSU5HOiBQbGVhc2UgcmVuYW1lIHRoZW0gaW4gJXMgbWFudWFsbHk6XG4iCittc2dzdHIgIiIKKyJVWUFSSTogS3VsbGFuxLFsYW4gYmF6xLEgcGFrZXRsZXIsIGRvc3lhbsSxbiB5ZW5pXG4iCisiVVlBUkk6IHPDvHLDvG3DvHlsZSBkZcSfacWfdGlyaWxtZWsgw7x6ZXJlIGFkbGFyxLFuxLFuXG4iCisiVVlBUkk6IMO2bsO8bmUgw7ZuZWsgb2xhcmFrIG9sZC0ga295dWxhcmFrIHllbmlkZW5cbiIKKyJVWUFSSTogYWRsYW5kxLFyxLFsbcSxxZ90xLFyLiBBbmNhayBpxZ9sZW0gYmHFn2FyxLFzxLF6XG4iCisiVVlBUkk6IG9sZHUgdmUgYnVubGFyxLEgb3JpamluYWwgYWRsYXLEsW5hIGTDtm5kw7xybWVcbiIKKyJVWUFSSTogZ2lyacWfaW1pIGRlIGJhxZ9hcsSxc8SxeiBvbGR1LlxuIgorIlVZQVJJOiBMw7x0ZmVuIGJ1bmxhcsSxICVzIGnDp2luZGUgZWwgaWxlIHllbmlkZW4gYWRsYW5kxLFyxLFuOlxuIgorCisjOiBidWlsdGluL3JlcGFjay5jOjUzNAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICclcyciCittc2dzdHIgIiclcycga2FsZMSxcsSxbGFtYWTEsSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjIKK21zZ2lkICJnaXQgcmVwbGFjZSBbLWZdIDxvYmplY3Q+IDxyZXBsYWNlbWVudD4iCittc2dzdHIgImdpdCByZXBsYWNlIFstZl0gPG5lc25lPiA8ZGXEn2nFn2ltPiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjMKK21zZ2lkICJnaXQgcmVwbGFjZSBbLWZdIC0tZWRpdCA8b2JqZWN0PiIKK21zZ3N0ciAiZ2l0IHJlcGxhY2UgWy1mXSAtLWVkaXQgPG5lc25lPiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjQKK21zZ2lkICJnaXQgcmVwbGFjZSBbLWZdIC0tZ3JhZnQgPGNvbW1pdD4gWzxwYXJlbnQ+Li4uXSIKK21zZ3N0ciAiZ2l0IHJlcGxhY2UgWy1mXSAtLWdyYWZ0IDxnw7ZuZGVyaT4gWzzDvHN0LcO2Z2U+Li4uXSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjUKK21zZ2lkICJnaXQgcmVwbGFjZSBbLWZdIC0tY29udmVydC1ncmFmdC1maWxlIgorbXNnc3RyICJnaXQgcmVwbGFjZSBbLWZdIC0tY29udmVydC1ncmFmdC1maWxlIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNgorbXNnaWQgImdpdCByZXBsYWNlIC1kIDxvYmplY3Q+Li4uIgorbXNnc3RyICJnaXQgcmVwbGFjZSAtZCA8bmVzbmU+Li4uIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNworbXNnaWQgImdpdCByZXBsYWNlIFstLWZvcm1hdD08Zm9ybWF0Pl0gWy1sIFs8cGF0dGVybj5dXSIKK21zZ3N0ciAiZ2l0IHJlcGxhY2UgWy0tZm9ybWF0PTxiacOnaW0+XSBbLWwgWzxkaXpnaT5dXSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgcmVwbGFjZSBmb3JtYXQgJyVzJ1xuIgorInZhbGlkIGZvcm1hdHMgYXJlICdzaG9ydCcsICdtZWRpdW0nIGFuZCAnbG9uZyciCittc2dzdHIgIiIKKyJnZcOnZXJzaXogZGXEn2nFn3Rpcm1lIGJpw6dpbWkgJyVzJ1xuIgorImdlw6dlcmxpIGJpw6dpbWxlcjogJ3Nob3J0JyAoa8Sxc2EpLCAnbWVkaXVtJyAob3J0YSkgdmUgJ2xvbmcnICh1enVuKSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInJlcGxhY2UgcmVmICclcycgbm90IGZvdW5kIgorbXNnc3RyICJkZcSfacWfdGlybWUgYmHFn3Z1cnVzdSAnJXMnIGJ1bHVuYW1hZMSxIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoxNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCByZXBsYWNlIHJlZiAnJXMnIgorbXNnc3RyICJEZcSfacWfdGlybWUgYmHFn3Z1cnVzdSAnJXMnIHNpbGluZGkiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE1MworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHJlZiBuYW1lIgorbXNnc3RyICInJXMnIGdlw6dlcmxpIGJpciBiYcWfdnVydSBhZMSxIGRlxJ9pbCIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MTU4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlcGxhY2UgcmVmICclcycgYWxyZWFkeSBleGlzdHMiCittc2dzdHIgImRlxJ9pxZ90aXJtZSBiYcWfdnVydXN1ICclcycgaGFsaWhhesSxcmRhIG1ldmN1dCIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPYmplY3RzIG11c3QgYmUgb2YgdGhlIHNhbWUgdHlwZS5cbiIKKyInJXMnIHBvaW50cyB0byBhIHJlcGxhY2VkIG9iamVjdCBvZiB0eXBlICclcydcbiIKKyJ3aGlsZSAnJXMnIHBvaW50cyB0byBhIHJlcGxhY2VtZW50IG9iamVjdCBvZiB0eXBlICclcycuIgorbXNnc3RyICIiCisiTmVzbmVsZXIgYXluxLEgdMO8cmRlbiBvbG1hbMSxZMSxci5cbiIKKyInJXMnLCAnJXMnIHTDvHLDvG5kZW4gZGXEn2nFn3RpcmlsbWnFnyBiaXIgbmVzbmV5ZSBpxZ9hcmV0IGVkZXJrZW5cbiIKKyInJXMnIGlzZSB5ZXJpbmUgZ2XDp2VjZWsgJyVzJyB0w7xyw7xuZGVuIGJpciBuZXNuZXllIGnFn2FyZXQgZWRpeW9yLiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciB3cml0aW5nIgorbXNnc3RyICIlcyB5YXptYSBpw6dpbiBhw6fEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNDIKK21zZ2lkICJjYXQtZmlsZSByZXBvcnRlZCBmYWlsdXJlIgorbXNnc3RyICJjYXQtZmlsZSBoYXRhIGJpbGRpcmRpIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHJlYWRpbmciCittc2dzdHIgIiVzIG9rdW1hIGnDp2luIGHDp8SxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3MgorbXNnaWQgInVuYWJsZSB0byBzcGF3biBta3RyZWUiCittc2dzdHIgIm1rdHJlZSBvcnRheWEgw6fEsWthcsSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI3NgorbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gbWt0cmVlIgorbXNnc3RyICJta3RyZWUnZGVuIG9rdW5hbcSxeW9yIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyODUKK21zZ2lkICJta3RyZWUgcmVwb3J0ZWQgZmFpbHVyZSIKK21zZ3N0ciAibWt0cmVlIGhhdGEgYmlsZGlyZGkiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4OQorbXNnaWQgIm1rdHJlZSBkaWQgbm90IHJldHVybiBhbiBvYmplY3QgbmFtZSIKK21zZ3N0ciAibWt0cmVlIGJpciBuZXNuZSBhZMSxIGTDtm5kw7xybWVkaSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCAlcyIKK21zZ3N0ciAiJXMgJ2ZzdGF0JyB5YXDEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzozMDMKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgb2JqZWN0IHRvIGRhdGFiYXNlIgorbXNnc3RyICJuZXNuZSB2ZXJpdGFiYW7EsW5hIHlhesSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyMiBidWlsdGluL3JlcGxhY2UuYzozNzggYnVpbHRpbi9yZXBsYWNlLmM6NDI0CisjOiBidWlsdGluL3JlcGxhY2UuYzo0NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0IG5hbWU6ICclcyciCittc2dzdHIgImdlw6dlcmxpIGJpciBuZXNuZSBhZMSxIGRlxJ9pbDogJyVzJyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MzI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBnZXQgb2JqZWN0IHR5cGUgZm9yICVzIgorbXNnc3RyICIlcyBpw6dpbiBuZXNuZSB0w7xyw7wgYWzEsW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjM0MgorbXNnaWQgImVkaXRpbmcgb2JqZWN0IGZpbGUgZmFpbGVkIgorbXNnc3RyICJuZXNuZSBkb3N5YXPEsW7EsSBkw7x6ZW5sZW1lIGJhxZ9hcsSxc8SxeiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyBvYmplY3QgaXMgdGhlIHNhbWUgYXMgdGhlIG9sZCBvbmU6ICclcyciCittc2dzdHIgInllbmkgbmVzbmUgZXNraXNpeWxlIGF5bsSxOiAnJXMnIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzozODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlICVzIGFzIGEgY29tbWl0IgorbXNnc3RyICIlcywgYmlyIGfDtm5kZXJpIG9sYXJhayBheXLEscWfdMSxcsSxbGFtYWTEsSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBtZXJnZXRhZyBpbiBjb21taXQgJyVzJyIKK21zZ3N0ciAiJyVzJyBnw7ZuZGVyaXNpbmRlIGhhdGFsxLEgYmlybGXFn3Rpcm1lIGV0aWtldGkiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgbWVyZ2V0YWcgaW4gY29tbWl0ICclcyciCittc2dzdHIgIiclcycgZ8O2bmRlcmlzaW5kZSBoYXRhbMSxIG9sdcWfdHVydWxtdcWfIGJpcmxlxZ90aXJtZSBldGlrZXRpIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9yaWdpbmFsIGNvbW1pdCAnJXMnIGNvbnRhaW5zIG1lcmdldGFnICclcycgdGhhdCBpcyBkaXNjYXJkZWQ7IHVzZSAtLWVkaXQgIgorImluc3RlYWQgb2YgLS1ncmFmdCIKK21zZ3N0ciAiIgorIiclcycgb3JpamluYWwgZ8O2bmRlcmlzaSBhdMSxbG3EscWfIG9sYW4gJyVzJyBiaXJsZcWfdGlybWUgZXRpa2V0aW5pIGnDp2VyaXlvcjsgLS0iCisiZ3JhZnQgeWVyaW5lIC0tZWRpdCBrdWxsYW7EsW4iCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGUgb3JpZ2luYWwgY29tbWl0ICclcycgaGFzIGEgZ3BnIHNpZ25hdHVyZSIKK21zZ3N0ciAiJyVzJyBvcmlqaW5hbCBnw7ZuZGVyaXNpbmluIGJpciBncGcgaW16YXPEsSB2YXIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3MAorbXNnaWQgInRoZSBzaWduYXR1cmUgd2lsbCBiZSByZW1vdmVkIGluIHRoZSByZXBsYWNlbWVudCBjb21taXQhIgorbXNnc3RyICJpbXphLCB5ZXJpbmUgZ2XDp2VjZWsgZ8O2bmRlcmlkZSBrYWxkxLFyxLFsYWNhayIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSByZXBsYWNlbWVudCBjb21taXQgZm9yOiAnJXMnIgorbXNnc3RyICLFn3VudW4geWVyaW5lIGdlw6dlY2VrIGfDtm5kZXJpIHlhesSxbGFtYWTEsTogJyVzJyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDg4CisjLCBjLWZvcm1hdAorbXNnaWQgImdyYWZ0IGZvciAnJXMnIHVubmVjZXNzYXJ5IgorbXNnc3RyICInJXMnIGnDp2luIGHFn8SxIGdlcmVrc2l6IgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3IGNvbW1pdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKK21zZ3N0ciAieWVuaSBnw7ZuZGVyaSBlc2tpc2l5bGUgYXluxLE6ICclcyciCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUyNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY291bGQgbm90IGNvbnZlcnQgdGhlIGZvbGxvd2luZyBncmFmdChzKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImHFn2HEn8SxZGFraSBhxZ/EsShsYXIpIGTDtm7DvMWfdMO8csO8bGVtZWRpOlxuIgorIiVzIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NDgKK21zZ2lkICJsaXN0IHJlcGxhY2UgcmVmcyIKK21zZ3N0ciAiZGXEn2nFn3Rpcm1lIGJhxZ92dXJ1bGFyxLFuxLEgbGlzdGVsZSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ5Cittc2dpZCAiZGVsZXRlIHJlcGxhY2UgcmVmcyIKK21zZ3N0ciAiZGXEn2nFn3Rpcm1lIGJhxZ92dXJ1bGFyxLFuxLEgc2lsIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTAKK21zZ2lkICJlZGl0IGV4aXN0aW5nIG9iamVjdCIKK21zZ3N0ciAiZ2XDp2VybGkgbmVzbmV5aSBkw7x6ZW5sZSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUxCittc2dpZCAiY2hhbmdlIGEgY29tbWl0J3MgcGFyZW50cyIKK21zZ3N0ciAiYmlyIGfDtm5kZXJpbmluIMO8c3Qgw7ZnZWxlcmluaSBkZcSfacWfdGlyIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTIKK21zZ2lkICJjb252ZXJ0IGV4aXN0aW5nIGdyYWZ0IGZpbGUiCittc2dzdHIgIm1ldmN1dCBhxZ/EsSBkb3N5YXPEsW7EsSBkw7Zuw7zFn3TDvHIiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MworbXNnaWQgInJlcGxhY2UgdGhlIHJlZiBpZiBpdCBleGlzdHMiCittc2dzdHIgImJhxZ92dXJ1IG1ldmN1dHNhIG9udSBkZcSfacWfdGlyIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTUKK21zZ2lkICJkbyBub3QgcHJldHR5LXByaW50IGNvbnRlbnRzIGZvciAtLWVkaXQiCittc2dzdHIgIi0tZWRpdCBpw6dlcmnEn2luaSBob8WfIGJpw6dpbWRlIGfDtnN0ZXJtZSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU2Cittc2dpZCAidXNlIHRoaXMgZm9ybWF0IgorbXNnc3RyICJidSBiacOnaW1pIGt1bGxhbiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY5Cittc2dpZCAiLS1mb3JtYXQgY2Fubm90IGJlIHVzZWQgd2hlbiBub3QgbGlzdGluZyIKK21zZ3N0ciAiLS1mb3JtYXQsIGxpc3RlbGVtaXlvcmtlbiBrdWxsYW7EsWxhbWF6IgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NzcKK21zZ2lkICItZiBvbmx5IG1ha2VzIHNlbnNlIHdoZW4gd3JpdGluZyBhIHJlcGxhY2VtZW50IgorbXNnc3RyICItZiB5YWxuxLF6Y2EgeWVyaW5lIGdlw6dlY2VrIGJpciBuZXNuZSB5YXrEsWzEsXJrZW4gYW5sYW0gaWZhZGUgZWRlciIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTgxCittc2dpZCAiLS1yYXcgb25seSBtYWtlcyBzZW5zZSB3aXRoIC0tZWRpdCIKK21zZ3N0ciAiLS1yYXcgeWFsbsSxemNhIC0tZWRpdCBpbGUgYW5sYW0gaWZhZGUgZWRlciIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTg3Cittc2dpZCAiLWQgbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IgorbXNnc3RyICItZCBpw6dpbiBlbiBhesSxbmRhbiBiaXIgZGXEn2nFn2tlbiBnZXJla2xpIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1OTMKK21zZ2lkICJiYWQgbnVtYmVyIG9mIGFyZ3VtZW50cyIKK21zZ3N0ciAiaGF0YWzEsSBkZcSfacWfa2VuIHNhecSxc8SxIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1OTkKK21zZ2lkICItZSBuZWVkcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLWUgacOnaW4gdGFtIG9sYXJhayBiaXIgZGXEn2nFn2tlbiBnZXJla2xpIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo2MDUKK21zZ2lkICItZyBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQiCittc2dzdHIgIi1nIGnDp2luIGVuIGF6xLFuZGFuIGJpciBkZcSfacWfa2VuIGdlcmVrbGkiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYxMQorbXNnaWQgIi0tY29udmVydC1ncmFmdC1maWxlIHRha2VzIG5vIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnZlcnQtZ3JhZnQtZmlsZSBkZcSfacWfa2VuIGFsbWF6IgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo2MTcKK21zZ2lkICJvbmx5IG9uZSBwYXR0ZXJuIGNhbiBiZSBnaXZlbiB3aXRoIC1sIgorbXNnc3RyICItbCBpbGUgeWFsbsSxemNhIGJpciBkaXpnaSB2ZXJpbGViaWxpciIKKworIzogYnVpbHRpbi9yZXJlcmUuYzoxMworbXNnaWQgImdpdCByZXJlcmUgW2NsZWFyIHwgZm9yZ2V0IDxwYXRoPi4uLiB8IHN0YXR1cyB8IHJlbWFpbmluZyB8IGRpZmYgfCBnY10iCittc2dzdHIgImdpdCByZXJlcmUgW2NsZWFyIHwgZm9yZ2V0IDx5b2w+Li4uIHwgc3RhdHVzIHwgcmVtYWluaW5nIHwgZGlmZiB8IGdjXSIKKworIzogYnVpbHRpbi9yZXJlcmUuYzo2MAorbXNnaWQgInJlZ2lzdGVyIGNsZWFuIHJlc29sdXRpb25zIGluIGluZGV4IgorbXNnc3RyICJpbmRla3N0ZWtpIHRlbWl6IMOnw7Z6w7xtbGVyaW4ga2F5ZMSxbsSxIHlhcCIKKworIzogYnVpbHRpbi9yZXJlcmUuYzo3OQorbXNnaWQgIidnaXQgcmVyZXJlIGZvcmdldCcgd2l0aG91dCBwYXRocyBpcyBkZXByZWNhdGVkIgorbXNnc3RyICJ5b2wgb2xtYWRhbiAnZ2l0IHJlcmVyZSBmb3JnZXQnIGt1bGxhbsSxbSBkxLHFn8SxIgorCisjOiBidWlsdGluL3JlcmVyZS5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2VuZXJhdGUgZGlmZiBmb3IgJyVzJyIKK21zZ3N0ciAiJyVzJyBpw6dpbiBkaWZmIG9sdcWfdHVydWxhbcSxeW9yIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzIKK21zZ2lkICIiCisiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPGNvbW1pdD5dIgorbXNnc3RyICIiCisiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPGfDtm5kZXJpPl0iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMworbXNnaWQgImdpdCByZXNldCBbLXFdIFs8dHJlZS1pc2g+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCittc2dzdHIgImdpdCByZXNldCBbLXFdIFs8YcSfYWPEsW1zxLE+XSBbLS1dIDx5b2wtYmxydMOnPi4uLiIKKworIzogYnVpbHRpbi9yZXNldC5jOjM0Cittc2dpZCAiIgorImdpdCByZXNldCBbLXFdIFstLXBhdGhzcGVjLWZyb20tZmlsZSBbLS1wYXRoc3BlYy1maWxlLW51bF1dIFs8dHJlZS1pc2g+XSIKK21zZ3N0ciAiIgorImdpdCByZXNldCBbLXFdIFstLXBhdGhzcGVjLWZyb20tZmlsZSBbLS1wYXRoc3BlYy1maWxlLW51bF1dIFs8YcSfYWPEsW1zxLE+XSIKKworIzogYnVpbHRpbi9yZXNldC5jOjM1Cittc2dpZCAiZ2l0IHJlc2V0IC0tcGF0Y2ggWzx0cmVlLWlzaD5dIFstLV0gWzxwYXRoc3BlYz4uLi5dIgorbXNnc3RyICJnaXQgcmVzZXQgLS1wYXRjaCBbPGHEn2FjxLFtc8SxPl0gWy0tXSBbPHlvbC1ibHJ0w6c+Li4uXSIKKworIzogYnVpbHRpbi9yZXNldC5jOjQxCittc2dpZCAibWl4ZWQiCittc2dzdHIgImthcsSxxZ/EsWsiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQorbXNnaWQgInNvZnQiCittc2dzdHIgInl1bXXFn2FrIgorCisjOiBidWlsdGluL3Jlc2V0LmM6NDEKK21zZ2lkICJoYXJkIgorbXNnc3RyICJzZXJ0IgorCisjOiBidWlsdGluL3Jlc2V0LmM6NDEKK21zZ2lkICJtZXJnZSIKK21zZ3N0ciAiYmlybGXFn3RpciIKKworIzogYnVpbHRpbi9yZXNldC5jOjQxCittc2dpZCAia2VlcCIKK21zZ3N0ciAidHV0IgorCisjOiBidWlsdGluL3Jlc2V0LmM6ODIKK21zZ2lkICJZb3UgZG8gbm90IGhhdmUgYSB2YWxpZCBIRUFELiIKK21zZ3N0ciAiR2XDp2VybGkgYmlyIEhFQUQnaW5peiB5b2suIgorCisjOiBidWlsdGluL3Jlc2V0LmM6ODQKK21zZ2lkICJGYWlsZWQgdG8gZmluZCB0cmVlIG9mIEhFQUQuIgorbXNnc3RyICJIRUFEIGHEn2FjxLEgYnVsdW5hbWFkxLEuIgorCisjOiBidWlsdGluL3Jlc2V0LmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIGZpbmQgdHJlZSBvZiAlcy4iCittc2dzdHIgIiVzIGHEn2FjxLEgYnVsdW5hbWFkxLEuIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgaXMgbm93IGF0ICVzIgorbXNnc3RyICJIRUFEIMWfaW1kaSDFn3VyYWRhOiAlcyIKKworIzogYnVpbHRpbi9yZXNldC5jOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgZG8gYSAlcyByZXNldCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UuIgorbXNnc3RyICJCaXIgYmlybGXFn3Rpcm1lbmluIG9ydGFzxLFuZGEgJXMgc8SxZsSxcmxhbWFzxLEgeWFwxLFsYW3EsXlvci4iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQgYnVpbHRpbi9zdGFzaC5jOjUyMCBidWlsdGluL3N0YXNoLmM6NTk1CisjOiBidWlsdGluL3N0YXNoLmM6NjE5Cittc2dpZCAiYmUgcXVpZXQsIG9ubHkgcmVwb3J0IGVycm9ycyIKK21zZ3N0ciAic2Vzc2l6IG9sLCB5YWxuxLF6Y2EgaGF0YWxhcsSxIGJpbGRpciIKKworIzogYnVpbHRpbi9yZXNldC5jOjI5NgorbXNnaWQgInJlc2V0IEhFQUQgYW5kIGluZGV4IgorbXNnc3RyICJIRUFEJ2kgdmUgaW5kZWtzaSBzxLFmxLFybGEiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTcKK21zZ2lkICJyZXNldCBvbmx5IEhFQUQiCittc2dzdHIgInlhbG7EsXpjYSBIRUFEJ2kgc8SxZsSxcmxhIgorCisjOiBidWlsdGluL3Jlc2V0LmM6Mjk5IGJ1aWx0aW4vcmVzZXQuYzozMDEKK21zZ2lkICJyZXNldCBIRUFELCBpbmRleCBhbmQgd29ya2luZyB0cmVlIgorbXNnc3RyICJIRUFEJ2ksIGluZGVrc2kgdmUgw6dhbMSxxZ9tYSBhxJ9hY8SxbsSxIHPEsWbEsXJsYSIKKworIzogYnVpbHRpbi9yZXNldC5jOjMwMworbXNnaWQgInJlc2V0IEhFQUQgYnV0IGtlZXAgbG9jYWwgY2hhbmdlcyIKK21zZ3N0ciAiSEVBRCdpIHPEsWbEsXJsYSwgYW5jYWsgeWVyZWwgZGXEn2nFn2lrbGlrbGVyaSB0dXQiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMDkKK21zZ2lkICJyZWNvcmQgb25seSB0aGUgZmFjdCB0aGF0IHJlbW92ZWQgcGF0aHMgd2lsbCBiZSBhZGRlZCBsYXRlciIKK21zZ3N0ciAiIgorInlhbG7EsXpjYSBrYWxkxLFyxLFsYW4geW9sbGFyxLFuIGRhaGEgc29ucmEgZWtsZW5lY2XEn2kgZ2Vyw6dlxJ9pbmluIGtheWTEsW7EsSB5YXoiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJldmlzaW9uLiIKK21zZ3N0ciAiJyVzJyBnZcOnZXJsaSBiaXIgcmV2aXp5b24gb2xhcmFrIMOnw7Z6w7xsZW1lZGkuIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCB0cmVlLiIKK21zZ3N0ciAiJyVzJyBnZcOnZXJsaSBiaXIgYcSfYcOnIG9sYXJhayDDp8O2esO8bGVtZWRpLiIKKworIzogYnVpbHRpbi9yZXNldC5jOjM2MAorbXNnaWQgIi0tcGF0Y2ggaXMgaW5jb21wYXRpYmxlIHdpdGggLS17aGFyZCxtaXhlZCxzb2Z0fSIKK21zZ3N0ciAiLS1wYXRjaCwgLS17aGFyZCxtaXhlZCxzb2Z0fSBpbGUgdXl1bXN1eiIKKworIzogYnVpbHRpbi9yZXNldC5jOjM3MAorbXNnaWQgIi0tbWl4ZWQgd2l0aCBwYXRocyBpcyBkZXByZWNhdGVkOyB1c2UgJ2dpdCByZXNldCAtLSA8cGF0aHM+JyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorImJlbGlydGlsbWnFnyB5b2wgaWxlIC0tbWl4ZWQga3VsbGFuxLFtIGTEscWfxLE7IHllcmluZSAnZ2l0IHJlc2V0IC0tIDx5b2xsYXI+JyAiCisia3VsbGFuxLFuLiIKKworIzogYnVpbHRpbi9yZXNldC5jOjM3MgorIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgZG8gJXMgcmVzZXQgd2l0aCBwYXRocy4iCittc2dzdHIgIkJlbGlydGlsbWnFnyB5b2wgdmFya2VuICVzIHPEsWbEsXJsYW1hc8SxIHlhcMSxbGFtxLF5b3IuIgorCisjOiBidWlsdGluL3Jlc2V0LmM6Mzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlc2V0IGlzIG5vdCBhbGxvd2VkIGluIGEgYmFyZSByZXBvc2l0b3J5IgorbXNnc3RyICIlcyBzxLFmxLFybGFtYXPEsW5hIMOnxLFwbGFrIGJpciBkZXBvZGEgaXppbiB2ZXJpbG1peW9yIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzkxCittc2dpZCAiLU4gY2FuIG9ubHkgYmUgdXNlZCB3aXRoIC0tbWl4ZWQiCittc2dzdHIgIi1OIHlhbG7EsXpjYSAtLW1peGVkIGlsZSBiaXJsaWt0ZSBrdWxsYW7EsWxhYmlsaXIiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MTIKK21zZ2lkICJVbnN0YWdlZCBjaGFuZ2VzIGFmdGVyIHJlc2V0OiIKK21zZ3N0ciAiU8SxZsSxcmxhbWEgc29ucmFzxLFuZGEgaGF6xLFybGFubWFtxLHFnyBkZcSfacWfaWtsaWtsZXI6IgorCisjOiBidWlsdGluL3Jlc2V0LmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBlbnVtZXJhdGUgdW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZXNldC4gIFlvdSBjYW5cbiIKKyJ1c2UgJy0tcXVpZXQnIHRvIGF2b2lkIHRoaXMuICBTZXQgdGhlIGNvbmZpZyBzZXR0aW5nIHJlc2V0LnF1aWV0IHRvIHRydWVcbiIKKyJ0byBtYWtlIHRoaXMgdGhlIGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJTxLFmxLFybGFtYSBzb25yYXPEsW5kYSBoYXrEsXJsYW5tYW3EscWfIGRlxJ9pxZ9pa2xpa2xlcmkgc2F5xLFwIGTDtmttZSAlLjJmIHNhbml5ZVxuIgorInPDvHJkw7wuIEJ1bmRhbiBrYcOnxLFubWFrIGnDp2luIC0tcXVpZXQga3VsbGFuYWJpbGlyLCDDtm50YW7EsW1sxLEgeWFwbWFrIGnDp2luc2VcbiIKKyJyZXNldC5xdWlldCB5YXDEsWxhbmTEsXJtYSBkZcSfacWfa2VuaW5pICd0cnVlJyBvbGFyYWsgZGXEn2nFn3RpcmViaWxpcnNpbml6LlxuIgorCisjOiBidWlsdGluL3Jlc2V0LmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCByZXNldCBpbmRleCBmaWxlIHRvIHJldmlzaW9uICclcycuIgorbXNnc3RyICLEsG5kZWtzIGRvc3lhc8SxICclcycgcmV2aXp5b251bmEgc8SxZsSxcmxhbmFtYWTEsS4iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MjkKK21zZ2lkICJDb3VsZCBub3Qgd3JpdGUgbmV3IGluZGV4IGZpbGUuIgorbXNnc3RyICJZZW5pIGluZGVrcyBkb3N5YXPEsSB5YXrEsWxhbWFkxLEuIgorCisjOiBidWlsdGluL3Jldi1saXN0LmM6NDk5Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgYW5kIC0tbWlzc2luZyIKK21zZ3N0ciAiLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgdmUgLS1taXNzaW5nIGJpcmxpa3RlIGt1bGxhbsSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1NjAKK21zZ2lkICJvYmplY3QgZmlsdGVyaW5nIHJlcXVpcmVzIC0tb2JqZWN0cyIKK21zZ3N0ciAibmVzbmUgc8O8em1lIC0tb2JqZWN0cyBnZXJla3Rpcml5b3IiCisKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo2MTAKK21zZ2lkICJyZXYtbGlzdCBkb2VzIG5vdCBzdXBwb3J0IGRpc3BsYXkgb2Ygbm90ZXMiCittc2dzdHIgInJldi1saXN0IG5vdCBnw7Zyw7xudMO8bGVtZXNpbmkgZGVzdGVrbGVtaXlvciIKKworIzogYnVpbHRpbi9yZXYtbGlzdC5jOjYxNQorbXNnaWQgIm1hcmtlZCBjb3VudGluZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW9iamVjdHMiCittc2dzdHIgImltbGVubWnFnyBzYXnEsW0sIC0tb2JqZWN0cyBpbGUgdXl1bXN1eiIKKworIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MDgKK21zZ2lkICJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHRpb25zPl0gLS0gWzxhcmdzPi4uLl0iCittc2dzdHIgImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPHNlw6dlbmVrbGVyPl0gLS0gWzxkZcSfacWfa2VubGVyPi4uLl0iCisKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDEzCittc2dpZCAia2VlcCB0aGUgYC0tYCBwYXNzZWQgYXMgYW4gYXJnIgorbXNnc3RyICInLS0naSBnZcOnaXJpbGVuIGJpciBkZcSfacWfa2VuIG9sYXJhayB0dXQiCisKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE1Cittc2dpZCAic3RvcCBwYXJzaW5nIGFmdGVyIHRoZSBmaXJzdCBub24tb3B0aW9uIGFyZ3VtZW50IgorbXNnc3RyICJzZcOnZW5layBvbG1heWFuIGlsayBkZcSfacWfa2VuZGVuIHNvbnJhIGF5csSxxZ90xLFybWF5xLEgZHVyZHVyIgorCisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxOAorbXNnaWQgIm91dHB1dCBpbiBzdHVjayBsb25nIGZvcm0iCittc2dzdHIgInV6dW4gYmnDp2ltZGUgw6fEsWt0xLEgdmVyIgorCisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjU1MQorbXNnaWQgIiIKKyJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHRpb25zPl0gLS0gWzxhcmdzPi4uLl1cbiIKKyIgICBvcjogZ2l0IHJldi1wYXJzZSAtLXNxLXF1b3RlIFs8YXJnPi4uLl1cbiIKKyIgICBvcjogZ2l0IHJldi1wYXJzZSBbPG9wdGlvbnM+XSBbPGFyZz4uLi5dXG4iCisiXG4iCisiUnVuIFwiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IC1oXCIgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhlIGZpcnN0IHVzYWdlLiIKK21zZ3N0ciAiIgorImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPHNlw6dlbmVrbGVyPl0gLS0gWzxkZcSfacWfa2VubGVyPi4uLl1cbiIKKyJcdG9yOiBnaXQgcmV2LXBhcnNlIC0tc3EtcXVvdGUgWzxkZcSfacWfa2VubGVyPi4uLl1cbiIKKyJcdG9yOiBnaXQgcmV2LXBhcnNlIFs8c2XDp2VuZWtsZXI+XSBbPGRlxJ9pxZ9rZW5sZXI+Li4uXVxuIgorIlxuIgorIsSwbGtpIGhha2vEsW5kYSBlayBiaWxnaSBpw6dpbiBcImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCAtaFwiIMOnYWzEscWfdMSxcsSxbi4iCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjQKK21zZ2lkICJnaXQgcmV2ZXJ0IFs8b3B0aW9ucz5dIDxjb21taXQtaXNoPi4uLiIKK21zZ3N0ciAiZ2l0IHJldmVydCBbPHNlw6dlbmVrbGVyPl0gPGfDtm5kZXJpbXNpPi4uLiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoyNQorbXNnaWQgImdpdCByZXZlcnQgPHN1YmNvbW1hbmQ+IgorbXNnc3RyICJnaXQgcmV2ZXJ0IDxhbHRrb211dD4iCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MzAKK21zZ2lkICJnaXQgY2hlcnJ5LXBpY2sgWzxvcHRpb25zPl0gPGNvbW1pdC1pc2g+Li4uIgorbXNnc3RyICJnaXQgY2hlcnJ5LXBpY2sgWzxzZcOnZW5la2xlcj5dIDxnw7ZuZGVyaW1zaT4uLi4iCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MzEKK21zZ2lkICJnaXQgY2hlcnJ5LXBpY2sgPHN1YmNvbW1hbmQ+IgorbXNnc3RyICJnaXQgY2hlcnJ5LXBpY2sgPGFsdGtvbXV0PiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiB6ZXJvIgorbXNnc3RyICInJXMnIHNlw6dlbmXEn2kgc8SxZsSxcmRhbiBiw7x5w7xrIGJpciBzYXnEsSBiZWtsaXlvciIKKworIzogYnVpbHRpbi9yZXZlcnQuYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogJXMgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKK21zZ3N0ciAiJXM6ICVzLCAlcyBpbGUgYmlybGlrdGUga3VsbGFuxLFsYW1heiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDIKK21zZ2lkICJlbmQgcmV2ZXJ0IG9yIGNoZXJyeS1waWNrIHNlcXVlbmNlIgorbXNnc3RyICJnZXJpIGFsIHZleWEgc2XDpy1hbCBkaXppc2luaSBzb25sYW5kxLFyIgorCisjOiBidWlsdGluL3JldmVydC5jOjEwMworbXNnaWQgInJlc3VtZSByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCittc2dzdHIgImdlcmkgYWwgdmV5YSBzZcOnLWFsIGRpemlzaW5pIHPDvHJkw7xyIgorCisjOiBidWlsdGluL3JldmVydC5jOjEwNAorbXNnaWQgImNhbmNlbCByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCittc2dzdHIgImdlcmkgYWwgdmV5YSBzZcOnLWFsIGRpemlzaW5pIGlwdGFsIGV0IgorCisjOiBidWlsdGluL3JldmVydC5jOjEwNQorbXNnaWQgInNraXAgY3VycmVudCBjb21taXQgYW5kIGNvbnRpbnVlIgorbXNnc3RyICJnZcOnZXJsaSBnw7ZuZGVyaXlpIGF0bGEgdmUgc8O8cmTDvHIiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA3Cittc2dpZCAiZG9uJ3QgYXV0b21hdGljYWxseSBjb21taXQiCittc2dzdHIgImtlbmRpbGnEn2luZGVuIGfDtm5kZXJtZSIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDgKK21zZ2lkICJlZGl0IHRoZSBjb21taXQgbWVzc2FnZSIKK21zZ3N0ciAiZ8O2bmRlcmkgaWxldGlzaW5pIGTDvHplbmxlIgorCisjOiBidWlsdGluL3JldmVydC5jOjExMQorbXNnaWQgInBhcmVudC1udW1iZXIiCittc2dzdHIgIsO8c3Qgw7ZnZSBudW1hcmFzxLEiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEyCittc2dpZCAic2VsZWN0IG1haW5saW5lIHBhcmVudCIKK21zZ3N0ciAiYW5hIMO8c3Qgw7ZnZXlpIHNlw6ciCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0Cittc2dpZCAibWVyZ2Ugc3RyYXRlZ3kiCittc2dzdHIgImJpcmxlxZ90aXJtZSBzdHJhdGVqaXNpIgorCisjOiBidWlsdGluL3JldmVydC5jOjExNgorbXNnaWQgIm9wdGlvbiBmb3IgbWVyZ2Ugc3RyYXRlZ3kiCittc2dzdHIgImJpcmxlxZ90aXJtZSBzdHJhdGVqaXNpIGnDp2luIHNlw6dlbmVrIgorCisjOiBidWlsdGluL3JldmVydC5jOjEyNQorbXNnaWQgImFwcGVuZCBjb21taXQgbmFtZSIKK21zZ3N0ciAiZ8O2bmRlcmkgYWTEsW7EsSBpbGnFn3RpciIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMjcKK21zZ2lkICJwcmVzZXJ2ZSBpbml0aWFsbHkgZW1wdHkgY29tbWl0cyIKK21zZ3N0ciAiYmHFn2xhbmfEscOndGEgYm/FnyBvbGFuIGfDtm5kZXJpbGVyaSBrb3J1IgorCisjOiBidWlsdGluL3JldmVydC5jOjEyOQorbXNnaWQgImtlZXAgcmVkdW5kYW50LCBlbXB0eSBjb21taXRzIgorbXNnc3RyICJnZXJla3NpeiwgYm/FnyBnw7ZuZGVyaWxlcmkgdHV0IgorCisjOiBidWlsdGluL3JldmVydC5jOjIzMgorbXNnaWQgInJldmVydCBmYWlsZWQiCittc2dzdHIgImdlcmkgYWwgYmHFn2FyxLFzxLF6IgorCisjOiBidWlsdGluL3JldmVydC5jOjI0NQorbXNnaWQgImNoZXJyeS1waWNrIGZhaWxlZCIKK21zZ3N0ciAic2XDpy1hbCBiYcWfYXLEsXPEsXoiCisKKyM6IGJ1aWx0aW4vcm0uYzoxOQorbXNnaWQgImdpdCBybSBbPG9wdGlvbnM+XSBbLS1dIDxmaWxlPi4uLiIKK21zZ3N0ciAiZ2l0IHJtIFs8c2XDp2VuZWtsZXI+XSBbLS1dIDxkb3N5YT4uLi4iCisKKyM6IGJ1aWx0aW4vcm0uYzoyMDcKK21zZ2lkICIiCisidGhlIGZvbGxvd2luZyBmaWxlIGhhcyBzdGFnZWQgY29udGVudCBkaWZmZXJlbnQgZnJvbSBib3RoIHRoZVxuIgorImZpbGUgYW5kIHRoZSBIRUFEOiIKK21zZ2lkX3BsdXJhbCAiIgorInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBzdGFnZWQgY29udGVudCBkaWZmZXJlbnQgZnJvbSBib3RoIHRoZVxuIgorImZpbGUgYW5kIHRoZSBIRUFEOiIKK21zZ3N0clswXSAiIgorIkHFn2HEn8SxZGFraSBkb3N5YW7EsW4gaGVtIEhFQUQnZGVuIGhlbSBkZSBkb3N5YWRhbiBmYXJrbMSxIGhhesSxcmxhbm3EscWfXG4iCisiacOnZXJpxJ9pIG1ldmN1dDoiCittc2dzdHJbMV0gIiIKKyJBxZ9hxJ/EsWRha2kgZG9zeWFsYXLEsW4gaGVtIEhFQUQnZGVuIGhlbSBkZSBkb3N5YWRhbiBmYXJrbMSxIGhhesSxcmxhbm3EscWfXG4iCisiacOnZXJpxJ9pIG1ldmN1dDoiCisKKyM6IGJ1aWx0aW4vcm0uYzoyMTIKK21zZ2lkICIiCisiXG4iCisiKHVzZSAtZiB0byBmb3JjZSByZW1vdmFsKSIKK21zZ3N0ciAiIgorIlxuIgorIih6b3JsYSBrYWxkxLFybWFrIGnDp2luIC1mIGt1bGxhbsSxbikiCisKKyM6IGJ1aWx0aW4vcm0uYzoyMTYKK21zZ2lkICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIGNoYW5nZXMgc3RhZ2VkIGluIHRoZSBpbmRleDoiCittc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBjaGFuZ2VzIHN0YWdlZCBpbiB0aGUgaW5kZXg6IgorbXNnc3RyWzBdICJBxZ9hxJ/EsWRha2kgZG9zeWFuxLFuIGluZGVrc3RlIGhhesSxcmxhbm3EscWfIGRlxJ9pxZ9pa2xpa2xlcmkgbWV2Y3V0OiIKK21zZ3N0clsxXSAiQcWfYcSfxLFkYWtpIGRvc3lhbGFyxLFuIGluZGVrc3RlIGhhesSxcmxhbm3EscWfIGRlxJ9pxZ9pa2xpa2xlcmkgbWV2Y3V0OiIKKworIzogYnVpbHRpbi9ybS5jOjIyMCBidWlsdGluL3JtLmM6MjI5Cittc2dpZCAiIgorIlxuIgorIih1c2UgLS1jYWNoZWQgdG8ga2VlcCB0aGUgZmlsZSwgb3IgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCittc2dzdHIgIiIKKyJcbiIKKyIoZG9zeWF5xLEgdHV0bWFrIGnDp2luIC0tY2FjaGVkLCB6b3JsYSBrYWxkxLFybWFrIGnDp2luIC1mIGt1bGxhbsSxbikiCisKKyM6IGJ1aWx0aW4vcm0uYzoyMjYKK21zZ2lkICJ0aGUgZm9sbG93aW5nIGZpbGUgaGFzIGxvY2FsIG1vZGlmaWNhdGlvbnM6IgorbXNnaWRfcGx1cmFsICJ0aGUgZm9sbG93aW5nIGZpbGVzIGhhdmUgbG9jYWwgbW9kaWZpY2F0aW9uczoiCittc2dzdHJbMF0gIkHFn2HEn8SxZGFraSBkb3N5YW7EsW4geWVyZWwgZGXEn2nFn2lrbGlrbGVyaSB2YXI6IgorbXNnc3RyWzFdICJBxZ9hxJ/EsWRha2kgZG9zeWFsYXLEsW4geWVyZWwgZGXEn2nFn2lrbGlrbGVyaSB2YXI6IgorCisjOiBidWlsdGluL3JtLmM6MjQzCittc2dpZCAiZG8gbm90IGxpc3QgcmVtb3ZlZCBmaWxlcyIKK21zZ3N0ciAia2FsZMSxcsSxbGFuIGRvc3lhbGFyxLEgbGlzdGVsZW1lIgorCisjOiBidWlsdGluL3JtLmM6MjQ0Cittc2dpZCAib25seSByZW1vdmUgZnJvbSB0aGUgaW5kZXgiCittc2dzdHIgInlhbG7EsXpjYSBpbmRla3N0ZW4ga2FsZMSxciIKKworIzogYnVpbHRpbi9ybS5jOjI0NQorbXNnaWQgIm92ZXJyaWRlIHRoZSB1cC10by1kYXRlIGNoZWNrIgorbXNnc3RyICJnw7xuY2VsbGlrIGRlbmV0bGVtZXNpbmkgZ2XDp2Vyc2l6IGvEsWwiCisKKyM6IGJ1aWx0aW4vcm0uYzoyNDYKK21zZ2lkICJhbGxvdyByZWN1cnNpdmUgcmVtb3ZhbCIKK21zZ3N0ciAiw7Z6eWluZWxpIGthbGTEsXJtYXlhIGl6aW4gdmVyIgorCisjOiBidWlsdGluL3JtLmM6MjQ4Cittc2dpZCAiZXhpdCB3aXRoIGEgemVybyBzdGF0dXMgZXZlbiBpZiBub3RoaW5nIG1hdGNoZWQiCittc2dzdHIgImhpw6diaXIgxZ9leSBlxZ9sZcWfbWVtacWfIG9sc2EgYmlsZSBzxLFmxLFyIGtvZHV5bGEgw6fEsWsiCisKKyM6IGJ1aWx0aW4vcm0uYzoyODIKK21zZ2lkICJObyBwYXRoc3BlYyB3YXMgZ2l2ZW4uIFdoaWNoIGZpbGVzIHNob3VsZCBJIHJlbW92ZT8iCittc2dzdHIgIllvbCBiZWxpcnRlY2kgdmVyaWxtZWRpLiBIYW5naSBkb3N5YWxhcsSxIGthbGTEsXJtYWzEsXnEsW0/IgorCisjOiBidWlsdGluL3JtLmM6MzA1Cittc2dpZCAicGxlYXNlIHN0YWdlIHlvdXIgY2hhbmdlcyB0byAuZ2l0bW9kdWxlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQiCittc2dzdHIgIiIKKyJpbGVybGVtZWsgacOnaW4gbMO8dGZlbiBkZcSfacWfaWtsaWtsZXJpbml6aSAuZ2l0bW9kdWxlcydhIGhhesSxcmxhecSxbiB2ZXlhICIKKyJ6dWxhbGF5xLFuIgorCisjOiBidWlsdGluL3JtLmM6MzIzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZW1vdmluZyAnJXMnIHJlY3Vyc2l2ZWx5IHdpdGhvdXQgLXIiCittc2dzdHIgIiclcycsIC1yIG9sbWFkYW4gw7Z6eWluZWxpIG9sYXJhayBrYWxkxLFyxLFsbcSxeW9yIgorCisjOiBidWlsdGluL3JtLmM6MzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBybTogdW5hYmxlIHRvIHJlbW92ZSAlcyIKK21zZ3N0ciAiZ2l0IHJtOiAlcyBrYWxkxLFyxLFsYW1hZMSxIgorCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjIwCittc2dpZCAiIgorImdpdCBzZW5kLXBhY2sgWy0tYWxsIHwgLS1taXJyb3JdIFstLWRyeS1ydW5dIFstLWZvcmNlXSBbLS1yZWNlaXZlLXBhY2s9PGdpdC0iCisicmVjZWl2ZS1wYWNrPl0gWy0tdmVyYm9zZV0gWy0tdGhpbl0gWy0tYXRvbWljXSBbPGhvc3Q+Ol08ZGlyZWN0b3J5PiAiCisiWzxyZWY+Li4uXVxuIgorIiAgLS1hbGwgYW5kIGV4cGxpY2l0IDxyZWY+IHNwZWNpZmljYXRpb24gYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZS4iCittc2dzdHIgIiIKKyJnaXQgc2VuZC1wYWNrIFstLWFsbCB8IC0tbWlycm9yXSBbLS1kcnktcnVuXSBbLS1mb3JjZV0gWy0tcmVjZWl2ZS1wYWNrPTxnaXQtIgorInJlY2VpdmUtcGFjaz5dIFstLXZlcmJvc2VdIFstLXRoaW5dIFstLWF0b21pY10gWzxtYWtpbmU+Ol08ZGl6aW4+ICIKKyJbPGJhxZ92dXJ1Pi4uLl1cbiIKKyIgIC0tYWxsIHZlIGHDp8SxayA8YmHFn3Z1cnU+IHRhbsSxbWxhbWFzxLEgYmlybGlrdGUga3VsbGFuxLFsYW1hei4iCisKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYzCittc2dpZCAicmVtb3RlIG5hbWUiCittc2dzdHIgInV6YWsga29udW0gYWTEsSIKKworIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzcKK21zZ2lkICJ1c2Ugc3RhdGVsZXNzIFJQQyBwcm90b2NvbCIKK21zZ3N0ciAiZHVydW1zdXogUlBDIHByb3Rva29sw7xuw7wga3VsbGFuIgorCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE3OAorbXNnaWQgInJlYWQgcmVmcyBmcm9tIHN0ZGluIgorbXNnc3RyICJiYcWfdnVydWxhcsSxIHN0ZGluJ2RlbiBva3UiCisKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc5Cittc2dpZCAicHJpbnQgc3RhdHVzIGZyb20gcmVtb3RlIGhlbHBlciIKK21zZ3N0ciAidXphayBrb251bSB5YXJkxLFtY8Sxc8SxbmRhbiBkdXJ1bSB5YXpkxLFyIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MTQKK21zZ2lkICJnaXQgc2hvcnRsb2cgWzxvcHRpb25zPl0gWzxyZXZpc2lvbi1yYW5nZT5dIFtbLS1dIDxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBzaG9ydGxvZyBbPHNlw6dlbmVrbGVyPl0gWzxyZXZpenlvbi1lcmltaT5dIFtbLS1dIDx5b2w+Li4uXSIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjE1Cittc2dpZCAiZ2l0IGxvZyAtLXByZXR0eT1zaG9ydCB8IGdpdCBzaG9ydGxvZyBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IGxvZyAtLXByZXR0eT1zaG9ydCB8IGdpdCBzaG9ydGxvZyBbPHNlw6dlbmVrbGVyPl0iCisKKyM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoyNjQKK21zZ2lkICJHcm91cCBieSBjb21taXR0ZXIgcmF0aGVyIHRoYW4gYXV0aG9yIgorbXNnc3RyICJZYXphciB5ZXJpbmUgZ8O2bmRlcmljaSBpbGUgZ3J1cGxhIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MjY2Cittc2dpZCAic29ydCBvdXRwdXQgYWNjb3JkaW5nIHRvIHRoZSBudW1iZXIgb2YgY29tbWl0cyBwZXIgYXV0aG9yIgorbXNnc3RyICLDp8Sxa3TEsXnEsSB5YXphciBiYcWfxLFuYSBvbGFuIGfDtm5kZXJpIHNhecSxc8SxbmEgZ8O2cmUgc8SxcmFsYSIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjI2OAorbXNnaWQgIlN1cHByZXNzIGNvbW1pdCBkZXNjcmlwdGlvbnMsIG9ubHkgcHJvdmlkZXMgY29tbWl0IGNvdW50IgorbXNnc3RyICJHw7ZuZGVyaSBhw6fEsWtsYW1hbGFyxLFuxLEgZ2l6bGUsIHlhbG7EsXpjYSBnw7ZuZGVyaSBzYXnEsXPEsW7EsSB2ZXIiCisKKyM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoyNzAKK21zZ2lkICJTaG93IHRoZSBlbWFpbCBhZGRyZXNzIG9mIGVhY2ggYXV0aG9yIgorbXNnc3RyICJIZXIgeWF6YXLEsW4gZS1wb3N0YSBhZHJlc2luaSBnw7ZzdGVyIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MjcxCittc2dpZCAiPHc+Wyw8aTE+Wyw8aTI+XV0iCittc2dzdHIgIjx3PlssPGkxPlssPGkyPl1dIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MjcyCittc2dpZCAiTGluZXdyYXAgb3V0cHV0IgorbXNnc3RyICLDh8Sxa3TEsSBzYXTEsXJsYXLEsW7EsSBrYXlkxLFyIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MzAxCittc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIGdpdmVuIG91dHNpZGUgcmVwb3NpdG9yeSIKK21zZ3N0ciAiZGVwbyBkxLHFn8SxbmRhIMOnb2sgZmF6bGEgZGXEn2nFn2tlbiB2ZXJpbGRpIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6MTMKK21zZ2lkICIiCisiZ2l0IHNob3ctYnJhbmNoIFstYSB8IC0tYWxsXSBbLXIgfCAtLXJlbW90ZXNdIFstLXRvcG8tb3JkZXIgfCAtLWRhdGUtb3JkZXJdXG4iCisiXHRcdFstLWN1cnJlbnRdIFstLWNvbG9yWz08d2hlbj5dIHwgLS1uby1jb2xvcl0gWy0tc3BhcnNlXVxuIgorIlx0XHRbLS1tb3JlPTxuPiB8IC0tbGlzdCB8IC0taW5kZXBlbmRlbnQgfCAtLW1lcmdlLWJhc2VdXG4iCisiXHRcdFstLW5vLW5hbWUgfCAtLXNoYTEtbmFtZV0gWy0tdG9waWNzXSBbKDxyZXY+IHwgPGdsb2I+KS4uLl0iCittc2dzdHIgIiIKKyJnaXQgc2hvdy1icmFuY2ggWy1hIHwgLS1hbGxdIFstciB8IC0tcmVtb3Rlc10gWy0tdG9wby1vcmRlciB8IC0tZGF0ZS1vcmRlcl1cbiIKKyJcdFx0Wy0tY3VycmVudF0gWy0tY29sb3JbPTxuZS16YW1hbj5dIHwgLS1uby1jb2xvcl0gWy0tc3BhcnNlXVxuIgorIlx0XHRbLS1tb3JlPTxuPiB8IC0tbGlzdCB8IC0taW5kZXBlbmRlbnQgfCAtLW1lcmdlLWJhc2VdXG4iCisiXHRcdFstLW5vLW5hbWUgfCAtLXNoYTEtbmFtZV0gWy0tdG9waWNzXSBbKDxyZXY+IHwgPGdsb2I+KS4uLl0iCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzoxNworbXNnaWQgImdpdCBzaG93LWJyYW5jaCAoLWcgfCAtLXJlZmxvZylbPTxuPlssPGJhc2U+XV0gWy0tbGlzdF0gWzxyZWY+XSIKK21zZ3N0ciAiZ2l0IHNob3ctYnJhbmNoICgtZyB8IC0tcmVmbG9nKVs9PG4+Wyw8dGVtZWw+XV0gWy0tbGlzdF0gWzxiYcWfdnVydT5dIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICVzOyBjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCByZWYiCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVzOyBjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCByZWZzIgorbXNnc3RyWzBdICIlcyB5b2sgc2F5xLFsxLF5b3I7ICVkIGJhxZ92dXJ1ZGFuIGZhemxhc8SxIGnFn2xlbmVtaXlvciIKK21zZ3N0clsxXSAiJXMgeW9rIHNhecSxbMSxeW9yOyAlZCBiYcWfdnVydWRhbiBmYXpsYXPEsSBpxZ9sZW5lbWl5b3IiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo1NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gbWF0Y2hpbmcgcmVmcyB3aXRoICVzIgorbXNnc3RyICIlcyBpbGUgZcWfbGXFn2VuIGJhxZ92dXJ1IHlvayIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NQorbXNnaWQgInNob3cgcmVtb3RlLXRyYWNraW5nIGFuZCBsb2NhbCBicmFuY2hlcyIKK21zZ3N0ciAidXphayBpemxlbWUgZGFsbGFyxLFuxLEgdmUgeWVyZWwgZGFsbGFyxLEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NworbXNnaWQgInNob3cgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgorbXNnc3RyICJ1emFrIGl6bGVtZSBkYWxsYXLEsW7EsSBnw7ZzdGVyIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ5Cittc2dpZCAiY29sb3IgJyohKy0nIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGJyYW5jaCIKK21zZ3N0ciAiJyohKy0naSBkYWxhIGfDtnJlIHJlbmtsZW5kaXIiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTEKK21zZ2lkICJzaG93IDxuPiBtb3JlIGNvbW1pdHMgYWZ0ZXIgdGhlIGNvbW1vbiBhbmNlc3RvciIKK21zZ3N0ciAib3J0YWsgYXRhZGFuIHNvbnJhIDxuPiBnw7ZuZGVyaSBkYWhhIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTMKK21zZ2lkICJzeW5vbnltIHRvIG1vcmU9LTEiCittc2dzdHIgIm1vcmU9LSsgZcWfYW5sYW1sxLFzxLEiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKK21zZ2lkICJzdXBwcmVzcyBuYW1pbmcgc3RyaW5ncyIKK21zZ3N0ciAiYWRsYW5kxLFybWEgZGl6aWxlcmluaSBnaXpsZSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NgorbXNnaWQgImluY2x1ZGUgdGhlIGN1cnJlbnQgYnJhbmNoIgorbXNnc3RyICJnZcOnZXJsaSBkYWzEsSBpw6dlciIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1OAorbXNnaWQgIm5hbWUgY29tbWl0cyB3aXRoIHRoZWlyIG9iamVjdCBuYW1lcyIKK21zZ3N0ciAiZ8O2bmRlcmlsZXJpIGtlbmRpIG5lc25lIGFkbGFyxLF5bGEgYWRsYW5kxLFyIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYwCittc2dpZCAic2hvdyBwb3NzaWJsZSBtZXJnZSBiYXNlcyIKK21zZ3N0ciAib2xhc8SxIGJpcmxlxZ90aXJtZSB0ZW1lbGxlcmluaSBnw7ZzdGVyIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjYyCittc2dpZCAic2hvdyByZWZzIHVucmVhY2hhYmxlIGZyb20gYW55IG90aGVyIHJlZiIKK21zZ3N0ciAiYmHFn2thIGJhxZ92dXJ1ZGFuIGVyacWfaWxlbWV5ZW4gYmHFn3Z1cnVsYXLEsSBnw7ZzdGVyIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY0Cittc2dpZCAic2hvdyBjb21taXRzIGluIHRvcG9sb2dpY2FsIG9yZGVyIgorbXNnc3RyICJnw7ZuZGVyaWxlcmkgaWxpbmdlc2VsIHPEsXJhZGEgZ8O2c3RlciIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NworbXNnaWQgInNob3cgb25seSBjb21taXRzIG5vdCBvbiB0aGUgZmlyc3QgYnJhbmNoIgorbXNnc3RyICJ5YWxuxLF6Y2EgYmlyaW5jaSBkYWxkYSBvbG1heWFuIGfDtm5kZXJpbGVyaSBnw7ZzdGVyIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY5Cittc2dpZCAic2hvdyBtZXJnZXMgcmVhY2hhYmxlIGZyb20gb25seSBvbmUgdGlwIgorbXNnc3RyICJ5YWxuxLF6Y2EgYmlyIHXDp3RhbiB1bGHFn8SxbGFiaWxpciBvbGFuIGJpcmxlxZ90aXJtZWxlcmkgZ8O2c3RlciIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MQorbXNnaWQgInRvcG9sb2dpY2FsbHkgc29ydCwgbWFpbnRhaW5pbmcgZGF0ZSBvcmRlciB3aGVyZSBwb3NzaWJsZSIKK21zZ3N0ciAib2xhYmlsZGnEn2luY2UgdGFyaWggc8SxcmFzxLFuxLEga29ydXlhcmFrIGlsaW5nZXNlbCBiacOnaW1kZSBzxLFyYWxhIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6Njc0Cittc2dpZCAiPG4+Wyw8YmFzZT5dIgorbXNnc3RyICI8bj5bLDx0ZW1lbD5dIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6Njc1Cittc2dpZCAic2hvdyA8bj4gbW9zdCByZWNlbnQgcmVmLWxvZyBlbnRyaWVzIHN0YXJ0aW5nIGF0IGJhc2UiCittc2dzdHIgInRhYmFuZGEgYmHFn2xheWFyYWsgZW4geWVuaSA8bj4gYmHFn3Z1cnUgZ8O8bmzDvMSfw7wgZ2lyZGlsZXJpbmkgZ8O2c3RlciIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjcxMQorbXNnaWQgIiIKKyItLXJlZmxvZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1yZW1vdGVzLCAtLWluZGVwZW5kZW50IG9yIC0tbWVyZ2UtYmFzZSIKK21zZ3N0ciAiIgorIi0tcmVmbG9nOyAtLWFsbCwgLS1yZW1vdGVzLCAtLWluZGVwZW5kZW50IHZleWEgLS1tZXJnZS1iYXNlIGlsZSB1eXVtc3V6IgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzM1Cittc2dpZCAibm8gYnJhbmNoZXMgZ2l2ZW4sIGFuZCBIRUFEIGlzIG5vdCB2YWxpZCIKK21zZ3N0ciAiZGFsIHZlcmlsbWVkaSB2ZSBIRUFEIGdlw6dlcnNpeiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczOAorbXNnaWQgIi0tcmVmbG9nIG9wdGlvbiBuZWVkcyBvbmUgYnJhbmNoIG5hbWUiCittc2dzdHIgIi0tcmVmbG9nIHNlw6dlbmXEn2kgacOnaW4gYmlyIGRhbCBhZMSxIGdlcmVrbGkiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAib25seSAlZCBlbnRyeSBjYW4gYmUgc2hvd24gYXQgb25lIHRpbWUuIgorbXNnaWRfcGx1cmFsICJvbmx5ICVkIGVudHJpZXMgY2FuIGJlIHNob3duIGF0IG9uZSB0aW1lLiIKK21zZ3N0clswXSAiYXluxLEgYW5kYSB5YWxuxLF6Y2EgJWQgZ2lyZGkgZ8O2c3RlcmlsZWJpbGlyIgorbXNnc3RyWzFdICJheW7EsSBhbmRhIHlhbG7EsXpjYSAlZCBnaXJkaSBnw7ZzdGVyaWxlYmlsaXIiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCByZWYgJXMiCittc2dzdHIgImLDtnlsZSBiaXIgYmHFn3Z1cnUgeW9rOiAlcyIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzMQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCByZXYuIgorbXNnaWRfcGx1cmFsICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCByZXZzLiIKK21zZ3N0clswXSAiJWQgcmV2aXp5b25kYW4gYmHFn2thc8SxIGnFn2xlbmVtaXlvci4iCittc2dzdHJbMV0gIiVkIHJldml6eW9uZGFuIGJhxZ9rYXPEsSBpxZ9sZW5lbWl5b3IuIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAiJyVzJyBnZcOnZXJsaSBiaXIgYmHFn3Z1cnUgZGXEn2lsLiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzOAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZmluZCBjb21taXQgJXMgKCVzKSIKK21zZ3N0ciAiJXMgZ8O2bmRlcmlzaSBidWx1bmFtxLF5b3IgKCVzKSIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjEyCittc2dpZCAiIgorImdpdCBzaG93LXJlZiBbLXEgfCAtLXF1aWV0XSBbLS12ZXJpZnldIFstLWhlYWRdIFstZCB8IC0tZGVyZWZlcmVuY2VdIFstcyB8IC0tIgorImhhc2hbPTxuPl1dIFstLWFiYnJldls9PG4+XV0gWy0tdGFnc10gWy0taGVhZHNdIFstLV0gWzxwYXR0ZXJuPi4uLl0iCittc2dzdHIgIiIKKyJnaXQgc2hvdy1yZWYgWy1xIHwgLS1xdWlldF0gWy0tdmVyaWZ5XSBbLS1oZWFkXSBbLWQgfCAtLWRlcmVmZXJlbmNlXSBbLXMgfCAtLSIKKyJoYXNoWz08bj5dXSBbLS1hYmJyZXZbPTxuPl1dIFstLXRhZ3NdIFstLWhlYWRzXSBbLS1dIFs8ZGl6Z2k+Li4uXSIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjEzCittc2dpZCAiZ2l0IHNob3ctcmVmIC0tZXhjbHVkZS1leGlzdGluZ1s9PHBhdHRlcm4+XSIKK21zZ3N0ciAiZ2l0IHNob3ctcmVmIC0tZXhjbHVkZS1leGlzdGluZ1s9PGRpemdpPl0iCisKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjIKK21zZ2lkICJvbmx5IHNob3cgdGFncyAoY2FuIGJlIGNvbWJpbmVkIHdpdGggaGVhZHMpIgorbXNnc3RyICJ5YWxuxLF6Y2EgZXRpa2V0bGVyaSBnw7ZzdGVyIChkYWwgdcOnbGFyxLF5bGEgYmlybGlrdGUga3VsbGFuxLFsYWJpbGlyKSIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2MworbXNnaWQgIm9ubHkgc2hvdyBoZWFkcyAoY2FuIGJlIGNvbWJpbmVkIHdpdGggdGFncykiCittc2dzdHIgInlhbG7EsXpjYSBkYWwgdcOnbGFyxLFuxLEgZ8O2c3RlciAoZXRpa2V0bGVybGUgYmlybGlrdGUga3VsbGFuxLFsYWJpbGlyKSIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE2NAorbXNnaWQgInN0cmljdGVyIHJlZmVyZW5jZSBjaGVja2luZywgcmVxdWlyZXMgZXhhY3QgcmVmIHBhdGgiCittc2dzdHIgImRhaGEgc8Sxa8SxIGJhxZ92dXJ1IGRlbmV0bGVtZXNpOyBrZXNpbiBiYcWfdnVydSB5b2x1IGdlcmVrdGlyaXIiCisKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjcgYnVpbHRpbi9zaG93LXJlZi5jOjE2OQorbXNnaWQgInNob3cgdGhlIEhFQUQgcmVmZXJlbmNlLCBldmVuIGlmIGl0IHdvdWxkIGJlIGZpbHRlcmVkIG91dCIKK21zZ3N0ciAic8O8esO8bMO8cCBkxLHFn2FyxLFkYSBrYWxzYSBiaWxlIEhFQUQgYmHFn3Z1cnVzdW51IGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzEKK21zZ2lkICJkZXJlZmVyZW5jZSB0YWdzIGludG8gb2JqZWN0IElEcyIKK21zZ3N0ciAiZXRpa2V0bGVyaSBuZXNuZSBudW1hcmFsYXLEsW5hIMOnZXZpciIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MworbXNnaWQgIm9ubHkgc2hvdyBTSEExIGhhc2ggdXNpbmcgPG4+IGRpZ2l0cyIKK21zZ3N0ciAiU0hBMSBzYcSfbGFtYXPEsW7EsSB5YWxuxLF6Y2EgPG4+IGJhc2FtYWsga3VsbGFuYXJhayBnw7ZzdGVyIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc3Cittc2dpZCAiZG8gbm90IHByaW50IHJlc3VsdHMgdG8gc3Rkb3V0ICh1c2VmdWwgd2l0aCAtLXZlcmlmeSkiCittc2dzdHIgInNvbnXDp2xhcsSxIHN0ZG91dCdhIHlhemTEsXJtYSAoLS12ZXJpZnkgaWxlIGJpcmxpa3RlIGt1bGxhbsSxxZ9sxLEpIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc5Cittc2dpZCAic2hvdyByZWZzIGZyb20gc3RkaW4gdGhhdCBhcmVuJ3QgaW4gbG9jYWwgcmVwb3NpdG9yeSIKK21zZ3N0ciAic3RkaW4nZGVuIHllcmVsIGJpciBkZXBvZGEgb2xtYXlhbiBiYcWfdnVydWxhcsSxIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjEKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IChpbml0fGxpc3R8c2V0fGFkZHxkaXNhYmxlKSA8b3B0aW9ucz4iCittc2dzdHIgImdpdCBzcGFyc2UtY2hlY2tvdXQgKGluaXR8bGlzdHxzZXR8YWRkfGRpc2FibGUpIDxzZcOnZW5la2xlcj4iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NjQKK21zZ2lkICJ0aGlzIHdvcmt0cmVlIGlzIG5vdCBzcGFyc2UgKHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBub3QgZXhpc3QpIgorbXNnc3RyICIiCisiYnUgw6dhbMSxxZ9tYSBhxJ9hY8SxIGFyYWzEsWtsxLEgZGXEn2lsIChzcGFyc2UtY2hlY2tvdXQgZG9zeWFzxLEgdmFyIG9sbWF5YWJpbGlyKSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyMjUKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSBmb3Igc3BhcnNlLWNoZWNrb3V0IGZpbGUiCittc2dzdHIgImFyYWzEsWtsxLEgw6fEsWvEscWfIGRvc3lhc8SxIGnDp2luIGRpemluIG9sdcWfdHVydWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHNldCBleHRlbnNpb25zLndvcmt0cmVlQ29uZmlnIHNldHRpbmciCittc2dzdHIgImV4dGVuc2lvbnMud29ya3RyZWVDb25maWcgeWFwxLFsYW5kxLFybWFzxLEgYXlhcmxhbmFtYWTEsSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyODMKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IGluaXQgWy0tY29uZV0iCittc2dzdHIgImdpdCBzcGFyc2UtY2hlY2tvdXQgaW5pdCBbLS1jb25lXSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzozMDIKK21zZ2lkICJpbml0aWFsaXplIHRoZSBzcGFyc2UtY2hlY2tvdXQgaW4gY29uZSBtb2RlIgorbXNnc3RyICJhcmFsxLFrbMSxIMOnxLFrxLHFn8SxIGtvbmkga2lwaW5kZSBpbGtsZW5kaXIiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MzA4Cittc2dpZCAiaW5pdGlhbGl6ZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgImFyYWzEsWtsxLEgw6fEsWvEscWfIGlsa2xlbmRpciIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyIKK21zZ3N0ciAiJyVzJyBhw6fEsWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6Mzk4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBub3JtYWxpemUgcGF0aCAlcyIKK21zZ3N0ciAiJyVzJyB5b2x1IG9sYcSfYW5sYcWfdMSxcsSxbGFtYWTEsSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo0MTAKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IChzZXR8YWRkKSAoLS1zdGRpbiB8IDxwYXR0ZXJucz4pIgorbXNnc3RyICJnaXQgc3BhcnNlLWNoZWNrb3V0IChzZXR8YWRkKSAoLS1zdGRpbiB8IDxkaXpnaWxlcj4pIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdW5xdW90ZSBDLXN0eWxlIHN0cmluZyAnJXMnIgorbXNnc3RyICJDIGJpw6dlbWxpICclcycgZGl6aXNpbmluIHTEsXJuYWtsYXLEsSBrYWxkxLFyxLFsYW3EsXlvciIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo0ODkgYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1MTMKK21zZ2lkICJ1bmFibGUgdG8gbG9hZCBleGlzdGluZyBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMiCittc2dzdHIgIm1ldmN1dCBhcmFsxLFrbMSxIMOnxLFrxLHFnyBkaXpnaWxlcmkgecO8a2xlbmVtaXlvciIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1NTgKK21zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gc3RhbmRhcmQgaW4iCittc2dzdHIgImRpemdpbGVyaSBzdGRpbidkZW4gb2t1IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjU2NAorbXNnaWQgInNldCBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMiCittc2dzdHIgImFyYWzEsWtsxLEgw6fEsWvEscWfIGRpemdpbGVyaSBheWFybGEiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTgxCittc2dpZCAiZGlzYWJsZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgImFyYWzEsWtsxLEgw6fEsWvEscWfxLEgZGV2cmUgZMSxxZ/EsSBixLFyYWsiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTkzCittc2dpZCAiZXJyb3Igd2hpbGUgcmVmcmVzaGluZyB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAiw6dhbMSxxZ9tYSBkaXppbmkgeWVuaWxlbmlya2VuIGhhdGEiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMiBidWlsdGluL3N0YXNoLmM6MzgKK21zZ2lkICJnaXQgc3Rhc2ggbGlzdCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGxpc3QgWzxzZcOnZW5la2xlcj5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjMgYnVpbHRpbi9zdGFzaC5jOjQzCittc2dpZCAiZ2l0IHN0YXNoIHNob3cgWzxvcHRpb25zPl0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggc2hvdyBbPHNlw6dlbmVrbGVyPl0gWzx6dWxhPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNCBidWlsdGluL3N0YXNoLmM6NDgKK21zZ2lkICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzx6dWxhPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNQorbXNnaWQgImdpdCBzdGFzaCAoIHBvcCB8IGFwcGx5ICkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCAoIHBvcCB8IGFwcGx5ICkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHp1bGE+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI2IGJ1aWx0aW4vc3Rhc2guYzo2MworbXNnaWQgImdpdCBzdGFzaCBicmFuY2ggPGJyYW5jaG5hbWU+IFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGJyYW5jaCA8ZGFsLWFkxLE+IFs8enVsYT5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjcgYnVpbHRpbi9zdGFzaC5jOjY4Cittc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIgorbXNnc3RyICJnaXQgc3Rhc2ggY2xlYXIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyOAorbXNnaWQgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XVxuIgorIiAgICAgICAgICBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxpbGV0aT5dXG4iCisiICAgICAgICAgIFstLXBhdGhzcGVjLWZyb20tZmlsZT08ZG9zeWE+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV1cbiIKKyIgICAgICAgICAgWy0tXSBbPHlvbC1ibHJ0w6c+Li4uXV0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzozMiBidWlsdGluL3N0YXNoLmM6ODUKK21zZ2lkICIiCisiZ2l0IHN0YXNoIHNhdmUgWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8bWVzc2FnZT5dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIHNhdmUgWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8aWxldGk+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjUzCittc2dpZCAiZ2l0IHN0YXNoIHBvcCBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIHBvcCBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8enVsYT5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTgKK21zZ2lkICJnaXQgc3Rhc2ggYXBwbHkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBhcHBseSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8enVsYT5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NzMKK21zZ2lkICJnaXQgc3Rhc2ggc3RvcmUgWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dIFstcXwtLXF1aWV0XSA8Y29tbWl0PiIKK21zZ3N0ciAiZ2l0IHN0YXNoIHN0b3JlIFstbXwtLW1lc3NhZ2UgPGlsZXRpPl0gWy1xfC0tcXVpZXRdIDxnw7ZuZGVyaT4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo3OAorbXNnaWQgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XVxuIgorIiAgICAgICAgICBbLS1dIFs8cGF0aHNwZWM+Li4uXV0iCittc2dzdHIgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPGlsZXRpPl1cbiIKKyIgICAgICAgICAgWy0tXSBbPHlvbC1ibHJ0w6c+Li4uXV0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBzdGFzaC1saWtlIGNvbW1pdCIKK21zZ3N0ciAiJyVzJyB6dWxheWEgYmVuemVyIGJpciBnw7ZuZGVyaSBkZcSfaWwiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDolcyIKK21zZ3N0ciAiw4dvayBmYXpsYSByZXZpenlvbiBiZWxpcnRpbGRpOiVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTYyIGdpdC1sZWdhY3ktc3Rhc2guc2g6NTQ5Cittc2dpZCAiTm8gc3Rhc2ggZW50cmllcyBmb3VuZC4iCittc2dzdHIgIlp1bGEgZ2lyZGlzaSBidWx1bmFtYWTEsS4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgcmVmZXJlbmNlIgorbXNnc3RyICIlcyBnZcOnZXJsaSBiaXIgYmHFn3Z1cnUgZGXEn2lsIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjI1IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzUKK21zZ2lkICJnaXQgc3Rhc2ggY2xlYXIgd2l0aCBwYXJhbWV0ZXJzIGlzIHVuaW1wbGVtZW50ZWQiCittc2dzdHIgInBhcmFtZXRyZWxpIGdpdCBzdGFzaCBjbGVhciBoZW7DvHoga3VsbGFuxLFsYWJpbGlyIGRlxJ9pbCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQwNAorbXNnaWQgImNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKK21zZ3N0ciAiYmlyIGJpcmxlxZ90aXJtZW5pbiBvcnRhc8SxbmRhIHp1bGEgdXlndWxhbmFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIGRpZmYgJXNeIS4iCittc2dzdHIgImRpZmYgb2x1xZ90dXJ1bGFtYWTEsTogJXNeIS4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MjIKK21zZ2lkICJjb25mbGljdHMgaW4gaW5kZXguVHJ5IHdpdGhvdXQgLS1pbmRleC4iCittc2dzdHIgIsSwbmRla3N0ZSDDp2FrxLHFn21hbGFyIHZhci4gLS1pbmRleCBvbG1hZGFuIGRlbmV5aW4uIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDI4Cittc2dpZCAiY291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKK21zZ3N0ciAiaW5kZWtzIGHEn2FjxLEga2F5ZGVkaWxlbWVkaSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQzNworbXNnaWQgImNvdWxkIG5vdCByZXN0b3JlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHN0YXNoIgorbXNnc3RyICJpemxlbm1leWVuIGRvc3lhbGFyIHp1bGFkYW4gZ2VyaSBnZXRpcmlsZW1lZGkiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWVyZ2luZyAlcyB3aXRoICVzIgorbXNnc3RyICIlcywgJXMgaWxlIGJpcmxlxZ90aXJpbGl5b3IiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0NjEgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2ODEKK21zZ2lkICJJbmRleCB3YXMgbm90IHVuc3Rhc2hlZC4iCittc2dzdHIgIsSwbmRla3MgenVsYWRhbiDDp8Sxa2FydMSxbG1hbcSxxZ90xLEuIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTIyIGJ1aWx0aW4vc3Rhc2guYzo2MjEKK21zZ2lkICJhdHRlbXB0IHRvIHJlY3JlYXRlIHRoZSBpbmRleCIKK21zZ3N0ciAiaW5kZWtzIHllbmlkZW4gb2x1xZ90dXJ1bG1heWEgw6dhbMSxxZ/EsWzEsXlvciIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEcm9wcGVkICVzICglcykiCittc2dzdHIgIiVzIGLEsXJha8SxbGTEsSAoJXMpIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBDb3VsZCBub3QgZHJvcCBzdGFzaCBlbnRyeSIKK21zZ3N0ciAiJXM6IFp1bGEgZ2lyZGlzaSBixLFyYWvEsWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBzdGFzaCByZWZlcmVuY2UiCittc2dzdHIgIiclcycgYmlyIHp1bGEgYmHFn3Z1cnVzdSBkZcSfaWwiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2MzMgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2OTUKK21zZ2lkICJUaGUgc3Rhc2ggZW50cnkgaXMga2VwdCBpbiBjYXNlIHlvdSBuZWVkIGl0IGFnYWluLiIKK21zZ3N0ciAiWnVsYSBnaXJkaXNpIHllbmlkZW4gZ2VyZWtzaW5pbWluaXogb2x1cnNhIGRpeWUgc2FrbGFuxLF5b3IuIgorCisjOiBidWlsdGluL3N0YXNoLmM6NjU2IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzEzCittc2dpZCAiTm8gYnJhbmNoIG5hbWUgc3BlY2lmaWVkIgorbXNnc3RyICJEYWwgYWTEsSBiZWxpcnRpbG1lZGkiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo3OTYgYnVpbHRpbi9zdGFzaC5jOjgzMworIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgdXBkYXRlICVzIHdpdGggJXMiCittc2dzdHIgIiVzLCAlcyBpbGUgZ8O8bmNlbGxlbmVtaXlvciIKKworIzogYnVpbHRpbi9zdGFzaC5jOjgxNCBidWlsdGluL3N0YXNoLmM6MTQ3OCBidWlsdGluL3N0YXNoLmM6MTU0MworbXNnaWQgInN0YXNoIG1lc3NhZ2UiCittc2dzdHIgInp1bGEgaWxldGlzaSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjgyNAorbXNnaWQgIlwiZ2l0IHN0YXNoIHN0b3JlXCIgcmVxdWlyZXMgb25lIDxjb21taXQ+IGFyZ3VtZW50IgorbXNnc3RyICJcImdpdCBzdGFzaCBzdG9yZVwiIGJpciA8Z8O2bmRlcmk+IGRlxJ9pxZ9rZW5pIGdlcmVrdGlyaXIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMDQ5IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjE4Cittc2dpZCAiTm8gY2hhbmdlcyBzZWxlY3RlZCIKK21zZ3N0ciAiRGXEn2nFn2lrbGlrIHNlw6dpbG1lZGkiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTQ5IGdpdC1sZWdhY3ktc3Rhc2guc2g6MTUwCittc2dpZCAiWW91IGRvIG5vdCBoYXZlIHRoZSBpbml0aWFsIGNvbW1pdCB5ZXQiCittc2dzdHIgIkhlbsO8eiBpbGsgZ8O2bmRlcmluaXogeW9rIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE3NiBnaXQtbGVnYWN5LXN0YXNoLnNoOjE2NQorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IGluZGV4IHN0YXRlIgorbXNnc3RyICJHZcOnZXJsaSBpbmRla3MgZHVydW11IGtheWRlZGlsZW1peW9yIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE4NSBnaXQtbGVnYWN5LXN0YXNoLnNoOjE4MAorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSB1bnRyYWNrZWQgZmlsZXMiCittc2dzdHIgIsSwemxlbm1leWVuIGRvc3lhbGFyIGtheWRlZGlsZW1peW9yIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE5NiBidWlsdGluL3N0YXNoLmM6MTIwNSBnaXQtbGVnYWN5LXN0YXNoLnNoOjIwMQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMTQKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCB3b3JrdHJlZSBzdGF0ZSIKK21zZ3N0ciAiR2XDp2VybGkgw6dhbMSxxZ9tYSBhxJ9hY8SxIGR1cnVtdSBrYXlkZWRpbGVtaXlvciIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyMzMgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMzQKK21zZ2lkICJDYW5ub3QgcmVjb3JkIHdvcmtpbmcgdHJlZSBzdGF0ZSIKK21zZ3N0ciAiw4dhbMSxxZ9tYSBhxJ9hY8SxIGR1cnVtdSBrYXlkxLEgeWF6xLFsYW3EsXlvciIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyODIgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMzgKK21zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgorbXNnc3RyICItLXBhdGNoLCAtLWluY2x1ZGUtdW50cmFja2VkIHZleWEgLS1hbGwgaGVwc2kgYmlyIGFuZGEga3VsbGFuxLFsYW3EsXlvciIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyOTgKK21zZ2lkICJEaWQgeW91IGZvcmdldCB0byAnZ2l0IGFkZCc/IgorbXNnc3RyICInZ2l0IGFkZCcgeWFwbWF5xLEgbcSxIHVudXR0dW51ej8iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzEzIGdpdC1sZWdhY3ktc3Rhc2guc2g6MzQ2Cittc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgorbXNnc3RyICJLYXlkZWRpbGVjZWsgeWVyZWwgZGXEn2nFn2lrbGlrIHlvayIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMjAgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTEKK21zZ2lkICJDYW5ub3QgaW5pdGlhbGl6ZSBzdGFzaCIKK21zZ3N0ciAiWnVsYSBpbGtsZW5kaXJpbGVtaXlvciIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMzUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTUKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBzdGF0dXMiCittc2dzdHIgIkdlw6dlcmxpIGR1cnVtIGtheWRlZGlsZW1peW9yIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTM0MAorIywgYy1mb3JtYXQKK21zZ2lkICJTYXZlZCB3b3JraW5nIGRpcmVjdG9yeSBhbmQgaW5kZXggc3RhdGUgJXMiCittc2dzdHIgIsOHYWzEscWfbWEgZGl6aW5pIHZlIGluZGVrcyBkdXJ1bXUgJXMga2F5ZGVkaWxkaSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0MzAgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozODUKK21zZ2lkICJDYW5ub3QgcmVtb3ZlIHdvcmt0cmVlIGNoYW5nZXMiCittc2dzdHIgIsOHYWzEscWfbWEgYcSfYWPEsSBkZcSfacWfaWtsaWtsZXJpIGthbGTEsXLEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ2OSBidWlsdGluL3N0YXNoLmM6MTUzNAorbXNnaWQgImtlZXAgaW5kZXgiCittc2dzdHIgImluZGVrc2kgdHV0IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3MSBidWlsdGluL3N0YXNoLmM6MTUzNgorbXNnaWQgInN0YXNoIGluIHBhdGNoIG1vZGUiCittc2dzdHIgInlhbWEga2lwaW5kZSB6dWxhIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3MiBidWlsdGluL3N0YXNoLmM6MTUzNworbXNnaWQgInF1aWV0IG1vZGUiCittc2dzdHIgInNlc3NpeiBraXAiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDc0IGJ1aWx0aW4vc3Rhc2guYzoxNTM5Cittc2dpZCAiaW5jbHVkZSB1bnRyYWNrZWQgZmlsZXMgaW4gc3Rhc2giCittc2dzdHIgInp1bGFkYSBpemxlbm1leWVuIGRvc3lhbGFyxLEgacOnZXIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDc2IGJ1aWx0aW4vc3Rhc2guYzoxNTQxCittc2dpZCAiaW5jbHVkZSBpZ25vcmUgZmlsZXMiCittc2dzdHIgInlvayBzYXltYSBkb3N5YWxhcsSxbsSxIGnDp2VyIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTYwMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZXhlYyAlcyIKK21zZ3N0ciAiJXMgJ2V4ZWMnIHlhcMSxbGFtYWTEsSIKKworIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MTgKK21zZ2lkICJnaXQgc3RyaXBzcGFjZSBbLXMgfCAtLXN0cmlwLWNvbW1lbnRzXSIKK21zZ3N0ciAiZ2l0IHN0cmlwc3BhY2UgWy1zIHwgLS1zdHJpcC1jb21tZW50c10iCisKKyM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjE5Cittc2dpZCAiZ2l0IHN0cmlwc3BhY2UgWy1jIHwgLS1jb21tZW50LWxpbmVzXSIKK21zZ3N0ciAiZ2l0IHN0cmlwc3BhY2UgWy1jIHwgLS1jb21tZW50LWxpbmVzXSIKKworIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MzcKK21zZ2lkICJza2lwIGFuZCByZW1vdmUgYWxsIGxpbmVzIHN0YXJ0aW5nIHdpdGggY29tbWVudCBjaGFyYWN0ZXIiCittc2dzdHIgInlvcnVtIGthcmFrdGVyaSBpbGUgYmHFn2xheWFuIHTDvG0gc2F0xLFybGFyxLEgYXRsYSB2ZSBrYWxkxLFyIgorCisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzo0MAorbXNnaWQgInByZXBlbmQgY29tbWVudCBjaGFyYWN0ZXIgYW5kIHNwYWNlIHRvIGVhY2ggbGluZSIKK21zZ3N0ciAiaGVyIHNhdMSxcsSxbiBiYcWfxLFuYSB5b3J1bSBrYXJha3RlcmkgdmUgYm/Fn2x1ayBrb3kiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk5OQorIywgYy1mb3JtYXQKK21zZ2lkICJFeHBlY3RpbmcgYSBmdWxsIHJlZiBuYW1lLCBnb3QgJXMiCittc2dzdHIgIlRhbSBiaXIgYmHFn3Z1cnUgYWTEsSBiZWtsZW5peW9yZHUsICVzIGFsxLFuZMSxIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjQKK21zZ2lkICJzdWJtb2R1bGUtLWhlbHBlciBwcmludC1kZWZhdWx0LXJlbW90ZSB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgInN1Ym1vZHVsZS0taGVscGVyIHByaW50LWRlZmF1bHQtcmVtb3RlIGRlxJ9pxZ9rZW4gYWxtYXoiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0cmlwIG9uZSBjb21wb25lbnQgb2ZmIHVybCAnJXMnIgorbXNnc3RyICInJXMnIHVybCdzaW5kZW4gYmlyIGJpbGXFn2VuIMOnxLFrYXLEsWxhbcSxeW9yIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDEwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk1Cittc2dpZCAiYWx0ZXJuYXRpdmUgYW5jaG9yIGZvciByZWxhdGl2ZSBwYXRocyIKK21zZ3N0ciAiZ8O2cmVjZWxpIHlvbGxhciBpw6dpbiBhbHRlcm5hdGlmIHR1dHR1cnVjdSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxNQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBsaXN0IFstLXByZWZpeD08cGF0aD5dIFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbGlzdCBbLS1wcmVmaXg9PHlvbD5dIFs8eW9sPi4uLl0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYzMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY1MworIywgYy1mb3JtYXQKK21zZ2lkICJObyB1cmwgZm91bmQgZm9yIHN1Ym1vZHVsZSBwYXRoICclcycgaW4gLmdpdG1vZHVsZXMiCittc2dzdHIgIi5naXRtb2R1bGVzIGnDp2luZGUgJyVzJyBhbHRtb2TDvGwgeW9sdSBpw6dpbiB1cmwgYnVsdW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRW50ZXJpbmcgJyVzJ1xuIgorbXNnc3RyICJHaXJpbGl5b3I6ICclcydcbiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicnVuX2NvbW1hbmQgcmV0dXJuZWQgbm9uLXplcm8gc3RhdHVzIGZvciAlc1xuIgorIi4iCittc2dzdHIgIiIKKyJydW5fY29tbWFuZCwgJXMgacOnaW4gc8SxZsSxciBvbG1heWFuIGR1cnVtIGTDtm5kw7xyZMO8XG4iCisiLiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU0OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicnVuX2NvbW1hbmQgcmV0dXJuZWQgbm9uLXplcm8gc3RhdHVzIHdoaWxlIHJlY3Vyc2luZyBpbiB0aGUgbmVzdGVkICIKKyJzdWJtb2R1bGVzIG9mICVzXG4iCisiLiIKK21zZ3N0ciAiIgorInJ1bl9jb21tYW5kLCAlcyDDtmdlc2luaW4gacOnIGnDp2UgZ2XDp21pxZ8gYWx0bW9kw7xsbGVyaSBpw6dpbmRlIMO2enlpbmVsZXJrZW4gIgorInPEsWbEsXIgb2xtYXlhbiBkdXJ1bSBkw7ZuZMO8cmTDvCIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU2NQorbXNnaWQgIlN1cHByZXNzIG91dHB1dCBvZiBlbnRlcmluZyBlYWNoIHN1Ym1vZHVsZSBjb21tYW5kIgorbXNnc3RyICJIZXIgYWx0bW9kw7xsIGtvbXV0dSBnaXJpxZ9pbmluIMOnxLFrdMSxc8SxbsSxIGdpemxlIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDYzCittc2dpZCAiUmVjdXJzZSBpbnRvIG5lc3RlZCBzdWJtb2R1bGVzIgorbXNnc3RyICLEsMOnIGnDp2UgZ2XDp21pxZ8gYWx0bW9kw7xsbGVyIGnDp2luZSDDtnp5aW5lbGUiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NzIKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbLS1dIDxjb21tYW5kPiIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGZvcmVhY2ggWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWy0tXSA8a29tdXQ+IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb3VsZCBub3QgbG9vayB1cCBjb25maWd1cmF0aW9uICclcycuIEFzc3VtaW5nIHRoaXMgcmVwb3NpdG9yeSBpcyBpdHMgb3duICIKKyJhdXRob3JpdGF0aXZlIHVwc3RyZWFtLiIKK21zZ3N0ciAiIgorIiclcycgeWFwxLFsYW5kxLFybWFzxLEgYXJhbmFtYWTEsS4gQnUgZGVwb251biBrZW5kaSB5ZXRraWxpIMO8c3RrYXluYcSfxLEgb2xkdcSfdSAiCisidmFyc2F5xLFsxLF5b3IuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciB1cmwgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCittc2dzdHIgIkFsdG1vZMO8bCB5b2x1IHVybCdzaSAnJXMnIGtheWTEsSB5YXDEsWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlICclcycgKCVzKSByZWdpc3RlcmVkIGZvciBwYXRoICclcydcbiIKK21zZ3N0ciAiJyVzJyBhbHRtb2TDvGzDvCAoJXMpLCAnJXMnIHlvbHVuYSBrYXlkxLEgeWFwxLFsZMSxXG4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FybmluZzogY29tbWFuZCB1cGRhdGUgbW9kZSBzdWdnZXN0ZWQgZm9yIHN1Ym1vZHVsZSAnJXMnXG4iCittc2dzdHIgInV5YXLEsTogJyVzJyBhbHRtb2TDvGzDvCBpw6dpbiBrb211dCBnw7xuY2VsbGVtZXNpIMO2bmVyaWxtaXlvclxuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njg4CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciB1cGRhdGUgbW9kZSBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKK21zZ3N0ciAiJyVzJyBhbHRtb2TDvGzDvCB5b2x1IGnDp2luIGfDvG5jZWxsZW1lIGtpcGkga2F5ZMSxIHlhcMSxbGFtYWTEsSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcxMAorbXNnaWQgIlN1cHByZXNzIG91dHB1dCBmb3IgaW5pdGlhbGl6aW5nIGEgc3VibW9kdWxlIgorbXNnc3RyICJCaXIgYWx0bW9kw7xsIGlsa2xlbmRpcm1lc2kgw6fEsWt0xLFzxLFuxLEgZ2l6bGUiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MTUKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPG9wdGlvbnM+XSBbPHBhdGg+XSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxzZcOnZW5la2xlcj5dIFs8eW9sPl0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3ODkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkyNAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBzdWJtb2R1bGUgbWFwcGluZyBmb3VuZCBpbiAuZ2l0bW9kdWxlcyBmb3IgcGF0aCAnJXMnIgorbXNnc3RyICInJXMnIHlvbHUgacOnaW4gLmdpdG1vZHVsZXMgacOnaW5kZSBhbHRtb2TDvGwgZcWfbGVtaSBidWx1bm1hZMSxIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODM3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlIEhFQUQgcmVmIGluc2lkZSB0aGUgc3VibW9kdWxlICclcyciCittc2dzdHIgIiclcycgYWx0bW9kw7xsw7wgacOnaW5kZSBIRUFEIGJhxZ92dXJ1c3Ugw6fDtnrDvGxlbWVkaSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg2NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICInJXMnIGFsdG1vZMO8bMO8bmUgw7Z6eWluZWxlbmVtZWRpIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODg4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTk5Cittc2dpZCAiU3VwcHJlc3Mgc3VibW9kdWxlIHN0YXR1cyBvdXRwdXQiCittc2dzdHIgIkFsdG1vZMO8bCBkdXJ1bSDDp8Sxa3TEsXPEsW7EsSBnaXpsZSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg4OQorbXNnaWQgIiIKKyJVc2UgY29tbWl0IHN0b3JlZCBpbiB0aGUgaW5kZXggaW5zdGVhZCBvZiB0aGUgb25lIHN0b3JlZCBpbiB0aGUgc3VibW9kdWxlICIKKyJIRUFEIgorbXNnc3RyICIiCisiQWx0bW9kw7xsIEhFQUQnaSBpw6dpbmRlIGRlcG9sYW5hbiBnw7ZuZGVyaSB5ZXJpbmUgaW5kZWtzdGUgZGVwb2xhbmFuIGfDtm5kZXJpeWkgIgorImt1bGxhbiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg5MAorbXNnaWQgInJlY3Vyc2UgaW50byBuZXN0ZWQgc3VibW9kdWxlcyIKK21zZ3N0ciAiacOnIGnDp2UgZ2XDp21pxZ8gYWx0bW9kw7xsZSDDtnp5aW5lbGUiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4OTUKK21zZ2lkICJnaXQgc3VibW9kdWxlIHN0YXR1cyBbLS1xdWlldF0gWy0tY2FjaGVkXSBbLS1yZWN1cnNpdmVdIFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlIHN0YXR1cyBbLS1xdWlldF0gWy0tY2FjaGVkXSBbLS1yZWN1cnNpdmVdIFs8eW9sPi4uLl0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5MTkKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbmFtZSA8cGF0aD4iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBuYW1lIDx5b2w+IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIlN5bmNocm9uaXppbmcgc3VibW9kdWxlIHVybCBmb3IgJyVzJ1xuIgorbXNnc3RyICInJXMnIGnDp2luIGFsdG1vZMO8bCB1cmwnc2kgZcWfaXRsZW5peW9yXG4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlZ2lzdGVyIHVybCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKK21zZ3N0ciAiJyVzJyBhbHRtb2TDvGzDvCB5b2x1IGnDp2luIHVybCBrYXlkxLEgeWFwxLFsYW1hZMSxIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IHRoZSBkZWZhdWx0IHJlbW90ZSBmb3Igc3VibW9kdWxlICclcyciCittc2dzdHIgIiclcycgYWx0bW9kw7xsw7wgacOnaW4gw7ZudGFuxLFtbMSxIHV6YWsga29udW0gYWzEsW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1cGRhdGUgcmVtb3RlIGZvciBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAiJyVzJyBhbHRtb2TDvGzDvCBpw6dpbiB1emFrIGtvbnVtIGfDvG5jZWxsZW5lbWVkaSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNjEKK21zZ2lkICJTdXBwcmVzcyBvdXRwdXQgb2Ygc3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIgorbXNnc3RyICJBbHRtb2TDvGwgdXJsJ3NpIGXFn2l0bGVtZSDDp8Sxa3TEsXPEsW7EsSBnaXpsZSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNjgKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgc3luYyBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbPHBhdGg+XSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHN5bmMgWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWzx5b2w+XSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJyBjb250YWlucyBhIC5naXQgZGlyZWN0b3J5ICh1c2UgJ3JtIC1yZicgaWYgeW91ICIKKyJyZWFsbHkgd2FudCB0byByZW1vdmUgaXQgaW5jbHVkaW5nIGFsbCBvZiBpdHMgaGlzdG9yeSkiCittc2dzdHIgIiIKKyJBbHRtb2TDvGwgw6dhbMSxxZ9tYSBhxJ9hY8SxICclcycgYmlyIC5naXQgZGl6aW5pIGnDp2VyaXlvciAodMO8bSBnZcOnbWnFn2kgZGFoaWwgIgorIm9sYWNhayBiacOnaW1kZSBrYWxkxLFybWFrIGlzdGl5b3JzYW7EsXogJ3JtIC1yZicga3VsbGFuxLFuKSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJyBjb250YWlucyBsb2NhbCBtb2RpZmljYXRpb25zOyB1c2UgJy1mJyB0byBkaXNjYXJkICIKKyJ0aGVtIgorbXNnc3RyICIiCisiQWx0bW9kw7xsIMOnYWzEscWfbWEgYcSfYWPEsSAnJXMnIHllcmVsIGRlxJ9pxZ9pa2xpa2xlciBpw6dlcml5b3I7IG9ubGFyxLEgYXRtYWsgacOnaW4gIgorIictZicga3VsbGFuxLFuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbGVhcmVkIGRpcmVjdG9yeSAnJXMnXG4iCittc2dzdHIgIiclcycgZGl6aW5pIHRlbWl6bGVuZGlcbiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHJlbW92ZSBzdWJtb2R1bGUgd29yayB0cmVlICclcydcbiIKK21zZ3N0ciAiJyVzJyBhbHRtb2TDvGwgw6dhbMSxxZ9tYSBhxJ9hY8SxIGthbGTEsXLEsWxhbWFkxLFcbiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSBlbXB0eSBzdWJtb2R1bGUgZGlyZWN0b3J5ICVzIgorbXNnc3RyICJib8WfIGFsdG1vZMO8bCBkaXppbmkgJXMgb2x1xZ90dXJ1bGFtYWTEsSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlICclcycgKCVzKSB1bnJlZ2lzdGVyZWQgZm9yIHBhdGggJyVzJ1xuIgorbXNnc3RyICInJXMnIGFsdG1vZMO8bMO8ICglcyksICclcycgeW9sdW5hIGtheWTEsSB5YXDEsWxtYW3EscWfXG4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjAwCittc2dpZCAiUmVtb3ZlIHN1Ym1vZHVsZSB3b3JraW5nIHRyZWVzIGV2ZW4gaWYgdGhleSBjb250YWluIGxvY2FsIGNoYW5nZXMiCittc2dzdHIgIkFsdG1vZMO8bCDDp2FsxLHFn21hIGHEn2HDp2xhcsSxbsSxIHllcmVsIGRlxJ9pxZ9pa2xpa2xlciBpw6dlcnNlbGVyIGJpbGUga2FsZMSxciIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDEKK21zZ2lkICJVbnJlZ2lzdGVyIGFsbCBzdWJtb2R1bGVzIgorbXNnc3RyICJUw7xtIGFsdG1vZMO8bGxlcmluIGtheWTEsW7EsSBrYWxkxLFyIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIwNgorbXNnaWQgIiIKKyJnaXQgc3VibW9kdWxlIGRlaW5pdCBbLS1xdWlldF0gWy1mIHwgLS1mb3JjZV0gWy0tYWxsIHwgWy0tXSBbPHBhdGg+Li4uXV0iCittc2dzdHIgIiIKKyJnaXQgc3VibW9kdWxlIGRlaW5pdCBbLS1xdWlldF0gWy1mIHwgLS1mb3JjZV0gWy0tYWxsIHwgWy0tXSBbPHlvbD4uLi5dXSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMjAKK21zZ2lkICJVc2UgJy0tYWxsJyBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZGVpbml0aWFsaXplIGFsbCBzdWJtb2R1bGVzIgorbXNnc3RyICIiCisiVMO8bSBhbHRtb2TDvGxsZXJpbiBpbGtsZW5kaXJtZXNpbmkgZ2Vyw6dla3RlbiBnZXJpIGFsbWFrIGlzdGl5b3JzYW7EsXogJy1hbGwnICIKKyJrdWxsYW7EsW4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjg5Cittc2dpZCAiIgorIkFuIGFsdGVybmF0ZSBjb21wdXRlZCBmcm9tIGEgc3VwZXJwcm9qZWN0J3MgYWx0ZXJuYXRlIGlzIGludmFsaWQuXG4iCisiVG8gYWxsb3cgR2l0IHRvIGNsb25lIHdpdGhvdXQgYW4gYWx0ZXJuYXRlIGluIHN1Y2ggYSBjYXNlLCBzZXRcbiIKKyJzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSB0byAnaW5mbycgb3IsIGVxdWl2YWxlbnRseSwgY2xvbmUgd2l0aFxuIgorIictLXJlZmVyZW5jZS1pZi1hYmxlJyBpbnN0ZWFkIG9mICctLXJlZmVyZW5jZScuIgorbXNnc3RyICIiCisiQmlyIHPDvHBlcnByb2plbmluIGFsdGVybmF0aWZpbmRlbiBoZXNhcGxhbmFuIGJpciBhbHRlcm5hdGlmIGdlw6dlcnNpei5cbiIKKyJCw7Z5bGUgYmlyIGR1cnVtZGEgR2l0J2luIGFsdGVybmF0aWZzaXoga2xvbmxhbWFzxLFuYSBpemluIHZlcm1layBpw6dpblxuIgorInN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IGF5YXLEsW7EsSAnaW5mbyd5YSBheWFybGF5xLFuIHZleWFcbiIKKyItLXJlZmVyZW5jZSB5ZXJpbmUgLS1yZWZlcmVuY2UtaWYtYWJsZSBrdWxsYW5hcmFrIGtsb25sYXnEsW4uIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMyOCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMzMQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJtb2R1bGUgJyVzJyBjYW5ub3QgYWRkIGFsdGVybmF0ZTogJXMiCittc2dzdHIgIiclcycgYWx0bW9kw7xsw7wgYWx0ZXJuYXRpZiBla2xleWVtaXlvcjogJXMiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZhbHVlICclcycgZm9yIHN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IGlzIG5vdCByZWNvZ25pemVkIgorbXNnc3RyICInJXMnIHN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IGRlxJ9lcmkgdGFuxLFtbGFuYW1hZMSxIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NAorIywgYy1mb3JtYXQKK21zZ2lkICJWYWx1ZSAnJXMnIGZvciBzdWJtb2R1bGUuYWx0ZXJuYXRlTG9jYXRpb24gaXMgbm90IHJlY29nbml6ZWQiCittc2dzdHIgIiclcycgc3VibW9kdWxlLmFsdGVybmF0ZUxvY2F0aW9uIGRlxJ9lcmkgdGFuxLFtbGFuYW1hZMSxIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5OAorbXNnaWQgIndoZXJlIHRoZSBuZXcgc3VibW9kdWxlIHdpbGwgYmUgY2xvbmVkIHRvIgorbXNnc3RyICJ5ZW5pIGFsdG1vZMO8bMO8biBuZXJleWUga2xvbmxhbmFjYcSfxLEiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAxCittc2dpZCAibmFtZSBvZiB0aGUgbmV3IHN1Ym1vZHVsZSIKK21zZ3N0ciAieWVuaSBhbHRtb2TDvGzDvG4gYWTEsSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDQKK21zZ2lkICJ1cmwgd2hlcmUgdG8gY2xvbmUgdGhlIHN1Ym1vZHVsZSBmcm9tIgorbXNnc3RyICJhbHRtb2TDvGzDvG4ga2xvbmxhbmFjYcSfxLEgdXJsIGtvbnVtdSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTIKK21zZ2lkICJkZXB0aCBmb3Igc2hhbGxvdyBjbG9uZXMiCittc2dzdHIgInPEscSfIGtsb25sYXLEsW4gZGVyaW5sacSfaSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTUgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjQKK21zZ2lkICJmb3JjZSBjbG9uaW5nIHByb2dyZXNzIgorbXNnc3RyICJ6b3JsYSBrbG9ubGEiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI2Cittc2dpZCAiZGlzYWxsb3cgY2xvbmluZyBpbnRvIG5vbi1lbXB0eSBkaXJlY3RvcnkiCittc2dzdHIgImJvxZ8gb2xtYXlhbiBkaXppbmUga2xvbmxhbWF5YSBpemluIHZlcm1lIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQyNAorbXNnaWQgIiIKKyJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY2xvbmUgWy0tcHJlZml4PTxwYXRoPl0gWy0tcXVpZXRdIFstLXJlZmVyZW5jZSAiCisiPHJlcG9zaXRvcnk+XSBbLS1uYW1lIDxuYW1lPl0gWy0tZGVwdGggPGRlcHRoPl0gWy0tc2luZ2xlLWJyYW5jaF0gLS11cmwgIgorIjx1cmw+IC0tcGF0aCA8cGF0aD4iCittc2dzdHIgIiIKKyJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY2xvbmUgWy0tcHJlZml4PTx5b2w+XSBbLS1xdWlldF0gWy0tcmVmZXJlbmNlIDxkZXBvPl0gIgorIlstLW5hbWUgPGFkPl0gWy0tZGVwdGggPGRlcmlubGlrPl0gWy0tc2luZ2xlLWJyYW5jaF0gLS11cmwgPHVybD4gLS1wYXRoIDx5b2w+IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ0OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBjcmVhdGUvdXNlICclcycgaW4gYW5vdGhlciBzdWJtb2R1bGUncyBnaXQgZGlyIgorbXNnc3RyICIiCisiYmHFn2thIGJpciBhbHRtb2TDvGzDvG4gZ2l0IGRpemluaW5kZSAnJXMnIG9sdcWfdHVybWEva3VsbGFubWEgcmVkZGVkaWxpeW9yIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICJjbG9uZSBvZiAnJXMnIGludG8gc3VibW9kdWxlIHBhdGggJyVzJyBmYWlsZWQiCittc2dzdHIgIiclcycgw7ZnZXNpbmluICclcycgYWx0bW9kw7xsIHlvbHVuYSBrbG9ubGFubWFzxLEgYmHFn2FyxLFzxLF6IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ2NAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXJlY3Rvcnkgbm90IGVtcHR5OiAnJXMnIgorbXNnc3RyICJkaXppbiBib8WfIGRlxJ9pbDogJyVzJyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGdldCBzdWJtb2R1bGUgZGlyZWN0b3J5IGZvciAnJXMnIgorbXNnc3RyICInJXMnIGnDp2luIGFsdG1vZMO8bCBkaXppbmkgYWzEsW5hbWFkxLEiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKK21zZ3N0ciAiR2XDp2Vyc2l6IGfDvG5jZWxsZW1lIGtpcGkgJyVzJywgJyVzJyBhbHRtb2TDvGwgeW9sdSBpw6dpbiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB1cGRhdGUgbW9kZSAnJXMnIGNvbmZpZ3VyZWQgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCittc2dzdHIgIkdlw6dlcnNpeiBnw7xuY2VsbGVtZSBraXBpICclcycsICclcycgYWx0bW9kw7xsIHlvbHUgacOnaW4geWFwxLFsYW5kxLFyxLFsbcSxxZ8iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjE3CisjLCBjLWZvcm1hdAorbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICclcycgbm90IGluaXRpYWxpemVkIgorbXNnc3RyICJBbHRtb2TDvGwgeW9sdSAnJXMnIGlsa2xlbmRpcmlsbWVkaSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MjEKK21zZ2lkICJNYXliZSB5b3Ugd2FudCB0byB1c2UgJ3VwZGF0ZSAtLWluaXQnPyIKK21zZ3N0ciAiJ3VwZGF0ZSAtLWluaXQnIG1pIGt1bGxhbm1hayBpc3RlcnNpbml6PyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBpbmcgdW5tZXJnZWQgc3VibW9kdWxlICVzIgorbXNnc3RyICJCaXJsZcWfdGlyaWxtZW1pxZ8gYWx0bW9kw7xsICVzIGF0bGFuxLF5b3IiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXBwaW5nIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICInJXMnIGFsdG1vZMO8bMO8IGF0bGFuxLF5b3IiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODMwCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBjbG9uZSAnJXMnLiBSZXRyeSBzY2hlZHVsZWQiCittc2dzdHIgIiclcycga2xvbmxhbmFtYWTEsS4gWWVuaWRlbiBkZW5lbWUgemFtYW5sYW5kxLEuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJyBhIHNlY29uZCB0aW1lLCBhYm9ydGluZyIKK21zZ3N0ciAiJyVzJyBpa2luY2kgYmlyIGtleiBrbG9ubGFuYW1hZMSxLCBpcHRhbCBlZGlsaXlvciIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNDkKK21zZ2lkICJwYXRoIGludG8gdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiw6dhbMSxxZ9tYSBhxJ9hY8SxbmEgZ2lkZW4geW9sIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwNgorbXNnaWQgInBhdGggaW50byB0aGUgd29ya2luZyB0cmVlLCBhY3Jvc3MgbmVzdGVkIHN1Ym1vZHVsZSBib3VuZGFyaWVzIgorbXNnc3RyICJpw6cgacOnZSBnZcOnbWnFnyBhbHRtb2TDvGwgc8SxbsSxcmxhcsSxIMO8emVyaW5kZW4gw6dhbMSxxZ9tYSBhxJ9hY8SxbmEgZ2lkZW4geW9sIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxMAorbXNnaWQgInJlYmFzZSwgbWVyZ2UsIGNoZWNrb3V0IG9yIG5vbmUiCittc2dzdHIgInJlYmFzZSwgbWVyZ2UsIGNoZWNrb3V0IHZleWEgbm9uZSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTYKK21zZ2lkICJDcmVhdGUgYSBzaGFsbG93IGNsb25lIHRydW5jYXRlZCB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiByZXZpc2lvbnMiCittc2dzdHIgIkJlbGlybGkgYmlyIHJldml6eW9uIHNhecSxc8SxbmEga8Sxc2FsdMSxbG3EscWfIHPEscSfIGtsb24gb2x1xZ90dXIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTE5Cittc2dpZCAicGFyYWxsZWwgam9icyIKK21zZ3N0ciAicGFyYWxlbCBpxZ9sZXIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTIxCittc2dpZCAid2hldGhlciB0aGUgaW5pdGlhbCBjbG9uZSBzaG91bGQgZm9sbG93IHRoZSBzaGFsbG93IHJlY29tbWVuZGF0aW9uIgorbXNnc3RyICJpbGsga2xvbnVuIHPEscSfbMSxayDDvHplcmluZSBvbGFuIHRhdnNpeWV5aSBpemxleWlwIGl6bGVtZXllY2XEn2kiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTIyCittc2dpZCAiZG9uJ3QgcHJpbnQgY2xvbmluZyBwcm9ncmVzcyIKK21zZ3N0ciAia2xvbmxhbWEgacWfbGVtaW5pIHlhemTEsXJtYSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MzMKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgdXBkYXRlLWNsb25lIFstLXByZWZpeD08cGF0aD5dIFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgdXBkYXRlLWNsb25lIFstLXByZWZpeD08eW9sPl0gWzx5b2w+Li4uXSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5NDYKK21zZ2lkICJiYWQgdmFsdWUgZm9yIHVwZGF0ZSBwYXJhbWV0ZXIiCittc2dzdHIgImfDvG5jZWxsZW1lIHBhcmFtZXRyZXNpIGnDp2luIGhhdGFsxLEgZGXEn2VyIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU3VibW9kdWxlICglcykgYnJhbmNoIGNvbmZpZ3VyZWQgdG8gaW5oZXJpdCBicmFuY2ggZnJvbSBzdXBlcnByb2plY3QsIGJ1dCAiCisidGhlIHN1cGVycHJvamVjdCBpcyBub3Qgb24gYW55IGJyYW5jaCIKK21zZ3N0ciAiIgorIkFsdG1vZMO8bCAoJXMpIGRhbMSxIHPDvHBlcnByb2plIGRhbMSxbmRhbiBkZXZyYWxtYWsgw7x6ZXJlIHlhcMSxbGFuZMSxcsSxbGTEsSwgYW5jYWsgIgorInPDvHBlcnByb2plIGhlcmhhbmdpIGJpciBkYWxkYSBkZcSfaWwiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZXQgYSByZXBvc2l0b3J5IGhhbmRsZSBmb3Igc3VibW9kdWxlICclcyciCittc2dzdHIgIiclcycgYWx0bW9kw7xsw7wgacOnaW4gZGVwbyB0dXRhY2HEn8SxIGFsxLFuYW1hZMSxIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1MAorbXNnaWQgInJlY3Vyc2UgaW50byBzdWJtb2R1bGVzIgorbXNnc3RyICJhbHRtb2TDvGxsZXJlIMO2enlpbmVsZSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTYKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgYWJzb3JiLWdpdC1kaXJzIFs8b3B0aW9ucz5dIFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgYWJzb3JiLWdpdC1kaXJzIFs8c2XDp2VuZWtsZXI+XSBbPHlvbD4uLi5dIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIxMgorbXNnaWQgImNoZWNrIGlmIGl0IGlzIHNhZmUgdG8gd3JpdGUgdG8gdGhlIC5naXRtb2R1bGVzIGZpbGUiCittc2dzdHIgIi5naXRtb2R1bGVzIGRvc3lhc8SxbmEgeWF6xLFtIGfDvHZlbmxpIG1pIGRlxJ9pbCBtaSBkZW5ldGxlIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIxNQorbXNnaWQgInVuc2V0IHRoZSBjb25maWcgaW4gdGhlIC5naXRtb2R1bGVzIGZpbGUiCittc2dzdHIgIi5naXRtb2R1bGVzIGRvc3lhc8SxbmRha2kgeWFwxLFsYW5kxLFybWF5xLEga2FsZMSxciIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjAKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIDxuYW1lPiBbPHZhbHVlPl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgPGFkPiBbPGRlxJ9lcj5dIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyMQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS11bnNldCA8bmFtZT4iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS11bnNldCA8YWQ+IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyMgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS1jaGVjay13cml0ZWFibGUiCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS1jaGVjay13cml0ZWFibGUiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjQxIGdpdC1zdWJtb2R1bGUuc2g6MTc0CisjLCBzaC1mb3JtYXQKK21zZ2lkICJwbGVhc2UgbWFrZSBzdXJlIHRoYXQgdGhlIC5naXRtb2R1bGVzIGZpbGUgaXMgaW4gdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiLmdpdG1vZHVsZXMgZG9zeWFzxLFuxLFuIMOnYWzEscWfbWEgYcSfYWPEsW5kYSBvbGR1xJ91bmRhbiBsw7x0ZmVuIGVtaW4gb2wiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjkxIGdpdC5jOjQzMyBnaXQuYzo2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZG9lc24ndCBzdXBwb3J0IC0tc3VwZXItcHJlZml4IgorbXNnc3RyICIlcywgLS1zdXBlci1wcmVmaXggZGVzdGVrbGVtaXlvciIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBzdWJtb2R1bGUtLWhlbHBlciBzdWJjb21tYW5kIgorbXNnc3RyICInJXMnIGdlw6dlcmxpIGJpciBzdWJtb2R1bGUtaGVscGVyIGFsdGtvbXV0dSBkZcSfaWwiCisKKyM6IGJ1aWx0aW4vc3ltYm9saWMtcmVmLmM6OAorbXNnaWQgImdpdCBzeW1ib2xpYy1yZWYgWzxvcHRpb25zPl0gPG5hbWU+IFs8cmVmPl0iCittc2dzdHIgImdpdCBzeW1ib2xpYy1yZWYgWzxzZcOnZW5la2xlcj5dIDxhZD4gWzxiYcWfdnVydT5dIgorCisjOiBidWlsdGluL3N5bWJvbGljLXJlZi5jOjkKK21zZ2lkICJnaXQgc3ltYm9saWMtcmVmIC1kIFstcV0gPG5hbWU+IgorbXNnc3RyICJnaXQgc3ltYm9saWMtcmVmIC1kIFstcV0gPGFkPiIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo0MAorbXNnaWQgInN1cHByZXNzIGVycm9yIG1lc3NhZ2UgZm9yIG5vbi1zeW1ib2xpYyAoZGV0YWNoZWQpIHJlZnMiCittc2dzdHIgInNlbWJvbGlrIG9sbWF5YW4gKGF5csSxaykgYmHFn3Z1cnVsYXIgacOnaW4gaGF0YSBpbGV0aXNpbmkgZ2l6bGUiCisKKyM6IGJ1aWx0aW4vc3ltYm9saWMtcmVmLmM6NDEKK21zZ2lkICJkZWxldGUgc3ltYm9saWMgcmVmIgorbXNnc3RyICJzZW1ib2xpayBiYcWfdnVydXl1IHNpbCIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo0MgorbXNnaWQgInNob3J0ZW4gcmVmIG91dHB1dCIKK21zZ3N0ciAiYmHFn3Z1cnUgw6fEsWt0xLFzxLFuxLEga8Sxc2FsdCIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo0MyBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjMKK21zZ2lkICJyZWFzb24iCittc2dzdHIgIm5lZGVuIgorCisjOiBidWlsdGluL3N5bWJvbGljLXJlZi5jOjQzIGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2MworbXNnaWQgInJlYXNvbiBvZiB0aGUgdXBkYXRlIgorbXNnc3RyICJnw7xuY2VsbGVtZSBuZWRlbmkiCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjUKK21zZ2lkICIiCisiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA8bXNnPiB8IC1GIDxmaWxlPl1cbiIKKyJcdFx0PHRhZ25hbWU+IFs8aGVhZD5dIgorbXNnc3RyICIiCisiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxhbmFodGFyLW5vPl0gWy1mXSBbLW0gPGlsZXRpPiB8IC1GIDxkb3N5YT5dXG4iCisiXHRcdDxldGlrZXQtYWTEsT4gWzxkYWwtdWN1Pl0iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjcKK21zZ2lkICJnaXQgdGFnIC1kIDx0YWduYW1lPi4uLiIKK21zZ3N0ciAiZ2l0IHRhZyAtZCA8ZXRpa2V0LWFkxLE+Li4uIgorCisjOiBidWlsdGluL3RhZy5jOjI4Cittc2dpZCAiIgorImdpdCB0YWcgLWwgWy1uWzxudW0+XV0gWy0tY29udGFpbnMgPGNvbW1pdD5dIFstLW5vLWNvbnRhaW5zIDxjb21taXQ+XSBbLS0iCisicG9pbnRzLWF0IDxvYmplY3Q+XVxuIgorIlx0XHRbLS1mb3JtYXQ9PGZvcm1hdD5dIFstLVtuby1dbWVyZ2VkIFs8Y29tbWl0Pl1dIFs8cGF0dGVybj4uLi5dIgorbXNnc3RyICIiCisiZ2l0IHRhZyAtbCBbLW5bPHNhecSxPl1dIFstLWNvbnRhaW5zIDxnw7ZuZGVyaT5dIFstLW5vLWNvbnRhaW5zIDxnw7ZuZGVyaT5dIFstLSIKKyJwb2ludHMtYXQgPG5lc25lPl1cbiIKKyJcdFx0Wy0tZm9ybWF0PTxiacOnaW0+XSBbLS1bbm8tXW1lcmdlZCBbPGfDtm5kZXJpPl1dIFs8ZGl6Z2k+Li4uXSIKKworIzogYnVpbHRpbi90YWcuYzozMAorbXNnaWQgImdpdCB0YWcgLXYgWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnbmFtZT4uLi4iCittc2dzdHIgImdpdCB0YWcgLXYgWy0tZm9ybWF0PTxiacOnaW0+XSA8ZXRpa2V0LWFkxLE+Li4uIgorCisjOiBidWlsdGluL3RhZy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInRhZyAnJXMnIG5vdCBmb3VuZC4iCittc2dzdHIgIiclcycgZXRpa2V0aSBidWx1bmFtYWTEsS4iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgdGFnICclcycgKHdhcyAlcylcbiIKK21zZ3N0ciAiJyVzJyBldGlrZXRpIHNpbGluZGkgKCVzIGlkaSlcbiIKKworIzogYnVpbHRpbi90YWcuYzoxMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldyaXRlIGEgbWVzc2FnZSBmb3IgdGFnOlxuIgorIiAgJXNcbiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBpZ25vcmVkLlxuIgorbXNnc3RyICIiCisiXG4iCisiRXRpa2V0IGnDp2luIGJpciBpbGV0aSB5YXrEsW46XG4iCisiICAlc1xuIgorIiclYycgaWxlIGJhxZ9sYXlhbiBzYXTEsXJsYXIgeW9rIHNhecSxbGFjYWt0xLFyLlxuIgorCisjOiBidWlsdGluL3RhZy5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV3JpdGUgYSBtZXNzYWdlIGZvciB0YWc6XG4iCisiICAlc1xuIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGtlcHQ7IHlvdSBtYXkgcmVtb3ZlIHRoZW0geW91cnNlbGYgaWYgeW91ICIKKyJ3YW50IHRvLlxuIgorbXNnc3RyICIiCisiXG4iCisiRXRpa2V0IGnDp2luIGJpciBpbGV0aSB5YXrEsW46XG4iCisiICAlc1xuIgorIiclYycgaWxlIGJhxZ9sYXlhbiBzYXTEsXJsYXIgdHV0dWxhY2FrdMSxcjsgaXN0ZXJzZW5peiBvbmxhcsSxICIKKyJrYWxkxLFyYWJpbGlyc2luaXouXG4iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MTk4Cittc2dpZCAidW5hYmxlIHRvIHNpZ24gdGhlIHRhZyIKK21zZ3N0ciAiZXRpa2V0IGltemFsYW5hbcSxeW9yIgorCisjOiBidWlsdGluL3RhZy5jOjIwMAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0YWcgZmlsZSIKK21zZ3N0ciAiZXRpa2V0IGRvc3lhc8SxIHlhesSxbGFtxLF5b3IiCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgaGF2ZSBjcmVhdGVkIGEgbmVzdGVkIHRhZy4gVGhlIG9iamVjdCByZWZlcnJlZCB0byBieSB5b3VyIG5ldyB0YWcgaXNcbiIKKyJhbHJlYWR5IGEgdGFnLiBJZiB5b3UgbWVhbnQgdG8gdGFnIHRoZSBvYmplY3QgdGhhdCBpdCBwb2ludHMgdG8sIHVzZTpcbiIKKyJcbiIKKyJcdGdpdCB0YWcgLWYgJXMgJXNee30iCittc2dzdHIgIiIKKyLEsMOnIGnDp2UgZ2XDp21pxZ8gYmlyIGV0aWtldCBvbHXFn3R1cmR1bnV6LiBTaXppbiB5ZW5pIGV0aWtldGluaXpjZSBiYcWfdnVydWxhblxuIgorIm5lc25lIHphdGVuIGJpciBldGlrZXQuIMSwxZ9hcmV0IGV0dGnEn2kgbmVzbmV5aSBldGlrZXRsZW1layBpc3RlZGl5c2VuaXo6XG4iCisiXG4iCisiXHRnaXQgdGFnIC1mICVzICVzXnt9IgorCisjOiBidWlsdGluL3RhZy5jOjIzMgorbXNnaWQgImJhZCBvYmplY3QgdHlwZS4iCittc2dzdHIgImhhdGFsxLEgbmVzbmUgdMO8csO8IgorCisjOiBidWlsdGluL3RhZy5jOjI4NAorbXNnaWQgIm5vIHRhZyBtZXNzYWdlPyIKK21zZ3N0ciAiZXRpa2V0IGlsZXRpc2kgeW9rIG11PyIKKworIzogYnVpbHRpbi90YWcuYzoyOTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlIHRhZyBtZXNzYWdlIGhhcyBiZWVuIGxlZnQgaW4gJXNcbiIKK21zZ3N0ciAiRXRpa2V0IGlsZXRpc2kgJXMgacOnaW5kZSBixLFyYWvEsWxkxLFcbiIKKworIzogYnVpbHRpbi90YWcuYzo0MDIKK21zZ2lkICJsaXN0IHRhZyBuYW1lcyIKK21zZ3N0ciAiZXRpa2V0IGFkbGFyxLFuxLEgbGlzdGVsZSIKKworIzogYnVpbHRpbi90YWcuYzo0MDQKK21zZ2lkICJwcmludCA8bj4gbGluZXMgb2YgZWFjaCB0YWcgbWVzc2FnZSIKK21zZ3N0ciAiaGVyIGV0aWtldCBpbGV0aXNpbmluIDxuPiBzYXTEsXLEsW7EsSBsaXN0ZWxlIgorCisjOiBidWlsdGluL3RhZy5jOjQwNgorbXNnaWQgImRlbGV0ZSB0YWdzIgorbXNnc3RyICJldGlrZXRsZXJpIHNpbCIKKworIzogYnVpbHRpbi90YWcuYzo0MDcKK21zZ2lkICJ2ZXJpZnkgdGFncyIKK21zZ3N0ciAiZXRpa2V0bGVyaSBkb8SfcnVsYSIKKworIzogYnVpbHRpbi90YWcuYzo0MDkKK21zZ2lkICJUYWcgY3JlYXRpb24gb3B0aW9ucyIKK21zZ3N0ciAiRXRpa2V0IG9sdcWfdHVybWEgc2XDp2VuZWtsZXJpIgorCisjOiBidWlsdGluL3RhZy5jOjQxMQorbXNnaWQgImFubm90YXRlZCB0YWcsIG5lZWRzIGEgbWVzc2FnZSIKK21zZ3N0ciAiYcOnxLFrbGFtYSBla2xlbm1pxZ8gZXRpa2V0IGnDp2luIGJpciBpbGV0aSBnZXJlayIKKworIzogYnVpbHRpbi90YWcuYzo0MTMKK21zZ2lkICJ0YWcgbWVzc2FnZSIKK21zZ3N0ciAiZXRpa2V0IGlsZXRpc2kiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDE1Cittc2dpZCAiZm9yY2UgZWRpdCBvZiB0YWcgbWVzc2FnZSIKK21zZ3N0ciAiZXRpa2V0IGlsZXRpc2luaSB6b3JsYSBkw7x6ZW5sZSIKKworIzogYnVpbHRpbi90YWcuYzo0MTYKK21zZ2lkICJhbm5vdGF0ZWQgYW5kIEdQRy1zaWduZWQgdGFnIgorbXNnc3RyICJhw6fEsWtsYW1hIGVrbGVubWnFnyB2ZSBHUEcgaW16YWzEsSBldGlrZXQiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDE5Cittc2dpZCAidXNlIGFub3RoZXIga2V5IHRvIHNpZ24gdGhlIHRhZyIKK21zZ3N0ciAiZXRpa2V0aSBpbXphbGFtYWsgacOnaW4gYmHFn2thIGJpciBhbmFodGFyIGt1bGxhbsSxbiIKKworIzogYnVpbHRpbi90YWcuYzo0MjAKK21zZ2lkICJyZXBsYWNlIHRoZSB0YWcgaWYgZXhpc3RzIgorbXNnc3RyICJlxJ9lciB2YXJzYSBldGlrZXRpIGJhxZ9rYXPEsXlsYSBkZcSfacWfdGlyIgorCisjOiBidWlsdGluL3RhZy5jOjQyMSBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjkKK21zZ2lkICJjcmVhdGUgYSByZWZsb2ciCittc2dzdHIgImJpciBiYcWfdnVydSBnw7xubMO8xJ/DvCBvbHXFn3R1ciIKKworIzogYnVpbHRpbi90YWcuYzo0MjMKK21zZ2lkICJUYWcgbGlzdGluZyBvcHRpb25zIgorbXNnc3RyICJFdGlrZXQgbGlzdGVsZW1lIHNlw6dlbmVrbGVyaSIKKworIzogYnVpbHRpbi90YWcuYzo0MjQKK21zZ2lkICJzaG93IHRhZyBsaXN0IGluIGNvbHVtbnMiCittc2dzdHIgImV0aWtldCBsaXN0ZXNpbmkgc8O8dHVubGFybGEgZ8O2c3RlciIKKworIzogYnVpbHRpbi90YWcuYzo0MjUgYnVpbHRpbi90YWcuYzo0MjcKK21zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBjb250YWluIHRoZSBjb21taXQiCittc2dzdHIgInlhbG7EsXpjYSBnw7ZuZGVyaXlpIGnDp2VyZW4gZXRpa2V0bGVyaSB5YXpkxLFyIgorCisjOiBidWlsdGluL3RhZy5jOjQyNiBidWlsdGluL3RhZy5jOjQyOAorbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGRvbid0IGNvbnRhaW4gdGhlIGNvbW1pdCIKK21zZ3N0ciAieWFsbsSxemNhIGfDtm5kZXJpIGnDp2VybWV5ZW4gZXRpa2V0bGVyaSB5YXpkxLFyIgorCisjOiBidWlsdGluL3RhZy5jOjQyOQorbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGFyZSBtZXJnZWQiCittc2dzdHIgInlhbG7EsXpjYSBiaXJsZcWfdGlyaWxlbiBldGlrZXRsZXJpIHlhemTEsXIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDMwCittc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCittc2dzdHIgInlhbG7EsXpjYSBiaXJsZcWfdGlyaWxtZXllbiBldGlrZXRsZXJpIHlhemTEsXIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDM0Cittc2dpZCAicHJpbnQgb25seSB0YWdzIG9mIHRoZSBvYmplY3QiCittc2dzdHIgInlhbG7EsXpjYSBuZXNuZW5pbiBldGlrZXRsZXJpbmkgeWF6ZMSxciIKKworIzogYnVpbHRpbi90YWcuYzo0ODIKK21zZ2lkICItLWNvbHVtbiBhbmQgLW4gYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiLS1jb2x1bW4gdmUgLW4gYmlyYmlyaXlsZSB1eXVtc3V6IgorCisjOiBidWlsdGluL3RhZy5jOjUwNAorbXNnaWQgIi1uIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgorbXNnc3RyICItbiBzZcOnZW5lxJ9pbmUgeWFsbsSxemNhIGxpc3RlIGtpcGluZGUgaXppbiB2ZXJpbGlyIgorCisjOiBidWlsdGluL3RhZy5jOjUwNgorbXNnaWQgIi0tY29udGFpbnMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCittc2dzdHIgIi0tY29udGFpbnMgc2XDp2VuZcSfaW5lIHlhbG7EsXpjYSBsaXN0ZSBraXBpbmRlIGl6aW4gdmVyaWxpciIKKworIzogYnVpbHRpbi90YWcuYzo1MDgKK21zZ2lkICItLW5vLWNvbnRhaW5zIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgorbXNnc3RyICItLW5vLWNvbnRhaW5zIHNlw6dlbmXEn2luZSB5YWxuxLF6Y2EgbGlzdGUga2lwaW5kZSBpemluIHZlcmlsaXIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NTEwCittc2dpZCAiLS1wb2ludHMtYXQgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCittc2dzdHIgIi0tcG9pbnRzLWF0IHNlw6dlbmXEn2luZSB5YWxuxLF6Y2EgbGlzdGUga2lwaW5kZSBpemluIHZlcmlsaXIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NTEyCittc2dpZCAiLS1tZXJnZWQgYW5kIC0tbm8tbWVyZ2VkIG9wdGlvbnMgYXJlIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCittc2dzdHIgIiIKKyItLW1lcmdlZCB2ZSAtLW5vLW1lcmdlZCBzZcOnZW5la2xlcmluZSB5YWxuxLF6Y2EgbGlzdGUga2lwaW5kZSBpemluIHZlcmlsaXIiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NTIzCittc2dpZCAib25seSBvbmUgLUYgb3IgLW0gb3B0aW9uIGlzIGFsbG93ZWQuIgorbXNnc3RyICJ5YWxuxLF6Y2EgYmlyIC1GIHZleWEgLW0gc2XDp2VuZcSfaW5lIGl6aW4gdmVyaWxpciIKKworIzogYnVpbHRpbi90YWcuYzo1NDIKK21zZ2lkICJ0b28gbWFueSBwYXJhbXMiCittc2dzdHIgIsOnb2sgZmF6bGEgcGFyYW1ldHJlIgorCisjOiBidWlsdGluL3RhZy5jOjU0OAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRhZyBuYW1lLiIKK21zZ3N0ciAiJyVzJyBnZcOnZXJsaSBiaXIgZXRpa2V0IGFkxLEgZGXEn2lsLiIKKworIzogYnVpbHRpbi90YWcuYzo1NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFnICclcycgYWxyZWFkeSBleGlzdHMiCittc2dzdHIgIiclcycgZXRpa2V0aSBoYWxpaGF6xLFyZGEgdmFyIgorCisjOiBidWlsdGluL3RhZy5jOjU4NAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkIHRhZyAnJXMnICh3YXMgJXMpXG4iCittc2dzdHIgIiclcycgZXRpa2V0aSBnw7xuY2VsbGVuZGkgKCVzIGlkaSlcbiIKKworIzogYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjUwMgorbXNnaWQgIlVucGFja2luZyBvYmplY3RzIgorbXNnc3RyICJOZXNuZWxlciBhw6fEsWzEsXlvciIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAiJXMgZGl6aW5pIG9sdcWfdHVydWxhbWFkxLEiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZmlsZSAlcyIKK21zZ3N0ciAiJXMgZG9zeWFzxLEgb2x1xZ90dXJ1bGFtYWTEsSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSBmaWxlICVzIgorbXNnc3RyICIlcyBkb3N5YXPEsSBzaWxpbmVtZWRpIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNSBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAiJXMgZGl6aW5pIHNpbGluZW1lZGkiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgIlRlc3RpbmcgbXRpbWUgaW4gJyVzJyAiCittc2dzdHIgIiclcycgacOnaW5kZWtpIG10aW1lIHPEsW5hbsSxeW9yICIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNTQKK21zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBhZGRpbmcgYSBuZXcgZmlsZSIKK21zZ3N0ciAiZGl6aW4gYmlsZ2lsZXJpIHllbmkgYmlyIGRvc3lhIGVrbGVkaWt0ZW4gc29ucmEgZGXEn2nFn21leiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNjcKK21zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBhZGRpbmcgYSBuZXcgZGlyZWN0b3J5IgorbXNnc3RyICJkaXppbiBiaWxnaWxlcmkgeWVuaSBiaXIgZGl6aW4gZWtsZWRpa3RlbiBzb25yYSBkZcSfacWfbWV6IgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE4MAorbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gY2hhbmdlcyBhZnRlciB1cGRhdGluZyBhIGZpbGUiCittc2dzdHIgImRpemluIGJpbGdpbGVyaSBiaXIgZG9zeWEgZ8O8bmNlbGxlbWVzaW5kZW4gc29ucmEgZGXEn2nFn2lyIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE5MQorbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gY2hhbmdlcyBhZnRlciBhZGRpbmcgYSBmaWxlIGluc2lkZSBzdWJkaXJlY3RvcnkiCittc2dzdHIgImRpemluIGJpbGdpbGVyaSBhbHRkaXppbiBpw6dpbmUgeWVuaSBiaXIgZG9zeWEgZWtsZWRpa3RlbiBzb25yYSBkZcSfacWfaXIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjAyCittc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgZGVsZXRpbmcgYSBmaWxlIgorbXNnc3RyICJkaXppbiBiaWxnaWxlcmkgYmlyIGRvc3lhIHNpbGRpa3RlbiBzb25yYSBkZcSfacWfbWV6IgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxNQorbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGRlbGV0aW5nIGEgZGlyZWN0b3J5IgorbXNnc3RyICJkaXppbiBiaWxnaWxlcmkgYmlyIGRpemluIHNpbGRpa3RlbiBzb25yYSBkZcSfacWfbWV6IgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMgorbXNnaWQgIiBPSyIKK21zZ3N0ciAiIFRhbWFtIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjU5MQorbXNnaWQgImdpdCB1cGRhdGUtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKK21zZ3N0ciAiZ2l0IHVwZGF0ZS1pbmRleCBbPHNlw6dlbmVrbGVyPl0gWy0tXSBbPGRvc3lhPi4uLl0iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTc0Cittc2dpZCAiY29udGludWUgcmVmcmVzaCBldmVuIHdoZW4gaW5kZXggbmVlZHMgdXBkYXRlIgorbXNnc3RyICJpbmRla3NpbiBnw7xuY2VsbGVubWVzaSBnZXJla3NlIGJpbGUgeWVuaWxlbWV5aSBzw7xyZMO8ciIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzcKK21zZ2lkICJyZWZyZXNoOiBpZ25vcmUgc3VibW9kdWxlcyIKK21zZ3N0ciAicmVmcmVzaDogYWx0bW9kw7xsbGVyaSB5b2sgc2F5IgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4MAorbXNnaWQgImRvIG5vdCBpZ25vcmUgbmV3IGZpbGVzIgorbXNnc3RyICJ5ZW5pIGRvc3lhbGFyxLEgeW9rIHNheW1hIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4MgorbXNnaWQgImxldCBmaWxlcyByZXBsYWNlIGRpcmVjdG9yaWVzIGFuZCB2aWNlLXZlcnNhIgorbXNnc3RyICJkb3N5YWxhcsSxbiBkaXppbmxlcmluIHllcmluZSBnZcOnbWVzaW5lIHZlIHRlcnNpbmUgaXppbiB2ZXIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg0Cittc2dpZCAibm90aWNlIGZpbGVzIG1pc3NpbmcgZnJvbSB3b3JrdHJlZSIKK21zZ3N0ciAiw6dhbMSxxZ9tYSBhxJ9hY8SxbmRhbiBla3NpayBvbGFuIGRvc3lhbGFyxLEgZmFyayBldCIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODYKK21zZ2lkICJyZWZyZXNoIGV2ZW4gaWYgaW5kZXggY29udGFpbnMgdW5tZXJnZWQgZW50cmllcyIKK21zZ3N0ciAiaW5kZWtzdGUgYmlybGXFn3RpcmlsbWVtacWfIGdpcmRpbGVyIG9sc2EgYmlsZSB5ZW5pbGUiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg5Cittc2dpZCAicmVmcmVzaCBzdGF0IGluZm9ybWF0aW9uIgorbXNnc3RyICJkb3N5YSBkdXJ1bSBiaWxnaXNpbmkgeWVuaWxlIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5MworbXNnaWQgImxpa2UgLS1yZWZyZXNoLCBidXQgaWdub3JlIGFzc3VtZS11bmNoYW5nZWQgc2V0dGluZyIKK21zZ3N0ciAiLS1yZWZyZXNoIGdpYmksIGFuY2FrIGFzc3VtZS11bmNoYW5nZWQgYXlhcsSxbsSxIHlvayBzYXlhciIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTcKK21zZ2lkICI8bW9kZT4sPG9iamVjdD4sPHBhdGg+IgorbXNnc3RyICI8a2lwPiw8bmVzbmU+LDx5b2w+IgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5OAorbXNnaWQgImFkZCB0aGUgc3BlY2lmaWVkIGVudHJ5IHRvIHRoZSBpbmRleCIKK21zZ3N0ciAiYmVsaXJ0aWxlbiBnaXJkaXlpIGluZGVrc2UgZWtsZSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA4Cittc2dpZCAibWFyayBmaWxlcyBhcyBcIm5vdCBjaGFuZ2luZ1wiIgorbXNnc3RyICJkb3N5YWxhcsSxIFwibm90IGNoYW5naW5nXCIgb2xhcmFrIGltbGUiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMQorbXNnaWQgImNsZWFyIGFzc3VtZWQtdW5jaGFuZ2VkIGJpdCIKK21zZ3N0ciAiYXNzdW1lZC11bmNoYW5nZWQga8Sxc23EsW7EsSB0ZW1pemxlIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTQKK21zZ2lkICJtYXJrIGZpbGVzIGFzIFwiaW5kZXgtb25seVwiIgorbXNnc3RyICJkb3N5YWxhcsSxIFwiaW5kZXgtb25seVwiIG9sYXJhayBpbWxlIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTcKK21zZ2lkICJjbGVhciBza2lwLXdvcmt0cmVlIGJpdCIKK21zZ3N0ciAic2tpcC13b3JrdHJlZSBrxLFzbcSxbsSxIGF0bGEiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyMAorbXNnaWQgImRvIG5vdCB0b3VjaCBpbmRleC1vbmx5IGVudHJpZXMiCittc2dzdHIgIidpbmRleC1vbmx5JyBnaXJkaWxlcmluZSBkb2t1bm1hIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjIKK21zZ2lkICJhZGQgdG8gaW5kZXggb25seTsgZG8gbm90IGFkZCBjb250ZW50IHRvIG9iamVjdCBkYXRhYmFzZSIKK21zZ3N0ciAieWFsbsSxemNhIGluZGVrc2UgZWtsZTsgacOnZXJpxJ9lIG5lc25lIHZlcml0YWJhbsSxbmEgZWtsZW1lIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjQKK21zZ2lkICJyZW1vdmUgbmFtZWQgcGF0aHMgZXZlbiBpZiBwcmVzZW50IGluIHdvcmt0cmVlIgorbXNnc3RyICLDp2FsxLHFn21hIGHEn2FjxLFuZGEgbWV2Y3V0IG9sc2EgYmlsZSBhZCB2ZXJpbGVuIHlvbGxhcsSxIGthbGTEsXIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNgorbXNnaWQgIndpdGggLS1zdGRpbjogaW5wdXQgbGluZXMgYXJlIHRlcm1pbmF0ZWQgYnkgbnVsbCBieXRlcyIKK21zZ3N0ciAiLS1zdGRpbiBpbGU6IGdpcmRpIHNhdMSxcmxhcsSxIGJvxZ8gYmF5dGxhcmxhIHNvbmxhbmTEsXLEsWzEsXIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyOAorbXNnaWQgInJlYWQgbGlzdCBvZiBwYXRocyB0byBiZSB1cGRhdGVkIGZyb20gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgImfDvG5jZWxsZW5lY2VrIHlvbCBsaXN0ZWxlcmluaSBzdGFuZGFydCBnaXJkaSdkZW4gb2t1IgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzIKK21zZ2lkICJhZGQgZW50cmllcyBmcm9tIHN0YW5kYXJkIGlucHV0IHRvIHRoZSBpbmRleCIKK21zZ3N0ciAiaW5kZWtzZSBzdGFuZGFydCBnaXJkaSdkZW4gZ2lyZGlsZXIgZWtsZSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDM2Cittc2dpZCAicmVwb3B1bGF0ZSBzdGFnZXMgIzIgYW5kICMzIGZvciB0aGUgbGlzdGVkIHBhdGhzIgorbXNnc3RyICIjMiB2ZSAjMyBudW1hcmFsxLEgYWTEsW1sYXLEsSBsaXN0ZWxlbm1pxZ8geW9sbGFyIGnDp2luIHllbmlkZW4gZG9sZHVyIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDAKK21zZ2lkICJvbmx5IHVwZGF0ZSBlbnRyaWVzIHRoYXQgZGlmZmVyIGZyb20gSEVBRCIKK21zZ3N0ciAieWFsbsSxemNhIEhFQUQnZGVuIGZhcmtsxLEgb2xhbiBnaXJkaWxlcmkgZ8O8bmNlbGxlIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDQKK21zZ2lkICJpZ25vcmUgZmlsZXMgbWlzc2luZyBmcm9tIHdvcmt0cmVlIgorbXNnc3RyICLDp2FsxLHFn21hIGHEn2FjxLFuZGFuIGVrc2lrIG9sYW4gZG9zeWFsYXLEsSB5b2sgc2F5IgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDcKK21zZ2lkICJyZXBvcnQgYWN0aW9ucyB0byBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgImV5bGVtbGVyaSBzdGFuZGFydCDDp8Sxa3TEsSd5YSBiaWxkaXIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0OQorbXNnaWQgIihmb3IgcG9yY2VsYWlucykgZm9yZ2V0IHNhdmVkIHVucmVzb2x2ZWQgY29uZmxpY3RzIgorbXNnc3RyICIob2t1bmFiaWxpciB2ZXJpIGnDp2luKSBrYXlkZWRpbG1pxZ8gw6fDtnrDvGxtZXllbiDDp2FrxLHFn21hbGFyxLEgdW51dCIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDUzCittc2dpZCAid3JpdGUgaW5kZXggaW4gdGhpcyBmb3JtYXQiCittc2dzdHIgImluZGVrc2kgYnUgYmnDp2ltbGUgeWF6IgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTUKK21zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBzcGxpdCBpbmRleCIKK21zZ3N0ciAiYsO2bMO8bm3DvMWfIGluZGVrc2kgZXRraW5sZcWfdGlyIHZleWEgZGV2cmUgZMSxxZ/EsSBixLFyYWsiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1NworbXNnaWQgImVuYWJsZS9kaXNhYmxlIHVudHJhY2tlZCBjYWNoZSIKK21zZ3N0ciAiaXpsZW5tZXllbiDDtm5iZWxsZcSfaSBldGtpbmxlxZ90aXIvZGV2cmUgZMSxxZ/EsSBixLFyYWsiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1OQorbXNnaWQgInRlc3QgaWYgdGhlIGZpbGVzeXN0ZW0gc3VwcG9ydHMgdW50cmFja2VkIGNhY2hlIgorbXNnc3RyICJkb3N5YSBzaXN0ZW1pbmluIGl6bGVubWV5ZW4gw7ZuYmVsbGVrIGRlc3Rla2xleWlwIGRlc3Rla2xlbWVkacSfaW5pIHPEsW5hIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjEKK21zZ2lkICJlbmFibGUgdW50cmFja2VkIGNhY2hlIHdpdGhvdXQgdGVzdGluZyB0aGUgZmlsZXN5c3RlbSIKK21zZ3N0ciAiZG9zeWEgc2lzdGVtaW5pIHPEsW5hbWFkYW4gaXpsZW5tZXllbiDDtm5iZWxsZcSfaSBldGtpbmxlxZ90aXIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2MworbXNnaWQgIndyaXRlIG91dCB0aGUgaW5kZXggZXZlbiBpZiBpcyBub3QgZmxhZ2dlZCBhcyBjaGFuZ2VkIgorbXNnc3RyICJkZcSfacWfdGlyaWxtacWfIG9sYXJhayBpbWxlbm1lc2UgYmlsZSBpbmRla3NpIHlheiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDY1Cittc2dpZCAiZW5hYmxlIG9yIGRpc2FibGUgZmlsZSBzeXN0ZW0gbW9uaXRvciIKK21zZ3N0ciAiZG9zeWEgc2lzdGVtaSBtb25pdMO2csO8bsO8IGV0a2lubGXFn3RpciB2ZXlhIGRldnJlIGTEscWfxLEgYsSxcmFrIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjcKK21zZ2lkICJtYXJrIGZpbGVzIGFzIGZzbW9uaXRvciB2YWxpZCIKK21zZ3N0ciAiZG9zeWFsYXLEsSBkb3N5YSBzaXN0ZW1pIG1vbml0w7Zyw7xuZGUgZ2XDp2VybGkgb2xhcmFrIGltbGUiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA3MAorbXNnaWQgImNsZWFyIGZzbW9uaXRvciB2YWxpZCBiaXQiCittc2dzdHIgImRvc3lhIHNpc3RlbWkgbW9uaXTDtnLDvG5kZSBnZcOnZXJsaSBrxLFzbcSxbsSxIHRlbWl6bGUiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MworbXNnaWQgIiIKKyJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgorImVuYWJsZSBzcGxpdCBpbmRleCIKK21zZ3N0ciAiIgorImNvcmUuc3BsaXRJbmRleCAnZmFsc2UnIG9sYXJhayBheWFybGFubcSxxZ87IGLDtmzDvG5tw7zFnyBpbmRla3NpIGV0a2lubGXFn3Rpcm1leWkgIgorImdlcsOnZWt0ZW4gaXN0aXlvcnNhbsSxeiBidW51IGthbGTEsXLEsW4gdmV5YSBkZcSfacWfdGlyaW4iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4MgorbXNnaWQgIiIKKyJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCB0byAiCisiZGlzYWJsZSBzcGxpdCBpbmRleCIKK21zZ3N0ciAiIgorImNvcmUuc3BsaXRJbmRleCAndHJ1ZScgb2xhcmFrIGF5YXJsYW5txLHFnzsgYsO2bMO8bm3DvMWfIGluZGVrc2kgZGV2cmUgZMSxxZ/EsSAiCisiYsSxcmFrbWF5xLEgZ2Vyw6dla3RlbiBpc3RpeW9yc2FuxLF6IGJ1bnUga2FsZMSxcsSxbiB2ZXlhIGRlxJ9pxZ90aXJpbiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTk0Cittc2dpZCAiIgorImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCisidG8gZGlzYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgorbXNnc3RyICIiCisiY29yZS51bnRyYWNrZWRDYWNoZSAndHJ1ZScgb2xhcmFrIGF5YXJsYW5txLHFnzsgaXpsZW5tZXllbiDDtm5iZWxsZcSfaSBnZXLDp2VrdGVuICIKKyJkZXZyZSBkxLHFn8SxIGLEsXJha21hecSxIGlzdGl5b3JzYW7EsXogYnVudSBrYWxkxLFyxLFuIHZleWEgZGXEn2nFn3RpcmluIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExOTgKK21zZ2lkICJVbnRyYWNrZWQgY2FjaGUgZGlzYWJsZWQiCittc2dzdHIgIsSwemxlbm1leWVuIMO2bmJlbGxlayBkZXZyZSBkxLHFn8SxIGLEsXJha8SxbGTEsSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA2Cittc2dpZCAiIgorImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgIgorInRvIGVuYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgorbXNnc3RyICIiCisiY29yZS51bnRyYWNrZWRDYWNoZSAnZmFsc2UnIG9sYXJhayBheWFybGFubcSxxZ87IGl6bGVubWV5ZW4gw7ZuYmVsbGXEn2kgIgorImdlcsOnZWt0ZW4gZXRraW5sZcWfdGlybWVrIGlzdGl5b3JzYW7EsXogYnVudSBrYWxkxLFyxLFuIHZleWEgZGXEn2nFn3RpcmluIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW50cmFja2VkIGNhY2hlIGVuYWJsZWQgZm9yICclcyciCittc2dzdHIgIsSwemxlbm1leWVuIMO2bmJlbGxlayAnJXMnIGnDp2luIGV0a2lubGXFn3RpcmlsZGkiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIxOAorbXNnaWQgImNvcmUuZnNtb25pdG9yIGlzIHVuc2V0OyBzZXQgaXQgaWYgeW91IHJlYWxseSB3YW50IHRvIGVuYWJsZSBmc21vbml0b3IiCittc2dzdHIgIiIKKyJjb3JlLmZzbW9uaXRvciBheWFybGFubWFtxLHFnzsgZG9zeWEgc2lzdGVtaW4gbW9uaXTDtnLDvG7DvCBnZXLDp2VrdGVuICIKKyJldGtpbmxlxZ90aXJtZWsgaXN0aXlvcnNhbsSxeiBvbnUgYXlhcmxhecSxbiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjIyCittc2dpZCAiZnNtb25pdG9yIGVuYWJsZWQiCittc2dzdHIgImRvc3lhIHNpc3RlbWkgbW9uaXTDtnLDvCBldGtpbiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjI1Cittc2dpZCAiIgorImNvcmUuZnNtb25pdG9yIGlzIHNldDsgcmVtb3ZlIGl0IGlmIHlvdSByZWFsbHkgd2FudCB0byBkaXNhYmxlIGZzbW9uaXRvciIKK21zZ3N0ciAiIgorImNvcmUuZnNtb25pdG9yIGF5YXJsYW5txLHFnzsgZG9zeWEgc2lzdGVtaSBtb25pdMO2csO8bsO8IGdlcsOnZWt0ZW4gZGV2cmUgZMSxxZ/EsSAiCisiYsSxcmFrbWFrIGlzdGl5b3JzYW7EsXogb251IGthbGTEsXLEsW4iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyOQorbXNnaWQgImZzbW9uaXRvciBkaXNhYmxlZCIKK21zZ3N0ciAiZG9zeWEgc2lzdGVtaSBtb25pdMO2csO8IGRldnJlIGTEscWfxLEiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjEwCittc2dpZCAiZ2l0IHVwZGF0ZS1yZWYgWzxvcHRpb25zPl0gLWQgPHJlZm5hbWU+IFs8b2xkLXZhbD5dIgorbXNnc3RyICJnaXQgdXBkYXRlLXJlZiBbPHNlw6dlbmVrbGVyPl0gLWQgPGLFn3ZyLWFkxLE+IFs8ZXNraS1kZcSfZXI+XSIKKworIzogYnVpbHRpbi91cGRhdGUtcmVmLmM6MTEKK21zZ2lkICJnaXQgdXBkYXRlLXJlZiBbPG9wdGlvbnM+XSAgICA8cmVmbmFtZT4gPG5ldy12YWw+IFs8b2xkLXZhbD5dIgorbXNnc3RyICIiCisiZ2l0IHVwZGF0ZS1yZWYgWzxzZcOnZW5la2xlcj5dICAgIDxixZ92ci1hZMSxPiA8eWVuaS1kZcSfZXI+IFs8ZXNraS1kZcSfZXI+XSIKKworIzogYnVpbHRpbi91cGRhdGUtcmVmLmM6MTIKK21zZ2lkICJnaXQgdXBkYXRlLXJlZiBbPG9wdGlvbnM+XSAtLXN0ZGluIFstel0iCittc2dzdHIgImdpdCB1cGRhdGUtcmVmIFs8c2XDp2VuZWtsZXI+XSAtLXN0ZGluIFstel0iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2NAorbXNnaWQgImRlbGV0ZSB0aGUgcmVmZXJlbmNlIgorbXNnc3RyICJiYcWfdnVydXl1IHNpbCIKKworIzogYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY2Cittc2dpZCAidXBkYXRlIDxyZWZuYW1lPiBub3QgdGhlIG9uZSBpdCBwb2ludHMgdG8iCittc2dzdHIgIjxiYcWfdnVydS1hZMSxPiduxLEgZ8O8bmNlbGxleWluLCBpxZ9hcmV0IGV0dGnEn2luaSBkZcSfaWwiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2NworbXNnaWQgInN0ZGluIGhhcyBOVUwtdGVybWluYXRlZCBhcmd1bWVudHMiCittc2dzdHIgInN0ZGluJ2RlIE5VTCBpbGUgc29ubGFuZMSxcsSxbGFuIGRlxJ9pxZ9rZW5sZXIgdmFyIgorCisjOiBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjgKK21zZ2lkICJyZWFkIHVwZGF0ZXMgZnJvbSBzdGRpbiIKK21zZ3N0ciAiZ8O8bmNlbGxlbWVsZXJpIHN0ZGluJ2RlbiBva3UiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXNlcnZlci1pbmZvLmM6NworbXNnaWQgImdpdCB1cGRhdGUtc2VydmVyLWluZm8gWy0tZm9yY2VdIgorbXNnc3RyICJnaXQgdXBkYXRlLXNlcnZlci1pbmZvIFstLWZvcmNlXSIKKworIzogYnVpbHRpbi91cGRhdGUtc2VydmVyLWluZm8uYzoxNQorbXNnaWQgInVwZGF0ZSB0aGUgaW5mbyBmaWxlcyBmcm9tIHNjcmF0Y2giCittc2dzdHIgImJpbGdpIGRvc3lhbGFyxLFuxLEgZW4gYmHFn3RhbiBnw7xuY2VsbGUiCisKKyM6IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoxMQorbXNnaWQgImdpdCB1cGxvYWQtcGFjayBbPG9wdGlvbnM+XSA8ZGlyPiIKK21zZ3N0ciAiZ2l0IHVwbG9hZC1wYWNrIFs8c2XDp2VuZWtsZXI+XSA8ZGl6aW4+IgorCisjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjMgdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjE3Cittc2dpZCAicXVpdCBhZnRlciBhIHNpbmdsZSByZXF1ZXN0L3Jlc3BvbnNlIGV4Y2hhbmdlIgorbXNnc3RyICJ0ZWsgYmlyIGlzdGVrL3lhbsSxdCBkZcSfacWfIHRva3XFn3VuZGFuIHNvbnJhIMOnxLFrIgorCisjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjUKK21zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGluaXRpYWwgcmVmIGFkdmVydGlzZW1lbnQiCittc2dzdHIgImlsayBiYcWfdnVydSB0YW7EsXTEsW3EsW5kYW4gc29ucmEgaGVtZW4gw6fEsWsiCisKKyM6IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyNworbXNnaWQgImRvIG5vdCB0cnkgPGRpcmVjdG9yeT4vLmdpdC8gaWYgPGRpcmVjdG9yeT4gaXMgbm8gR2l0IGRpcmVjdG9yeSIKK21zZ3N0ciAiZcSfZXIgPGRpemluPiBiaXIgR2l0IGRpemluaSBkZcSfaWxzZSA8ZGl6aW4+Ly5naXQvIGRlbmVtZSIKKworIzogYnVpbHRpbi91cGxvYWQtcGFjay5jOjI5Cittc2dpZCAiaW50ZXJydXB0IHRyYW5zZmVyIGFmdGVyIDxuPiBzZWNvbmRzIG9mIGluYWN0aXZpdHkiCittc2dzdHIgImFrdGFyxLFtxLEgPG4+IHNhbml5ZSBoYXJla2V0c2l6bGlrdGVuIHNvbnJhIGtlcyIKKworIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6MTkKK21zZ2lkICJnaXQgdmVyaWZ5LWNvbW1pdCBbLXYgfCAtLXZlcmJvc2VdIDxjb21taXQ+Li4uIgorbXNnc3RyICJnaXQgdmVyaWZ5LWNvbW1pdCBbLXYgfCAtLXZlcmJvc2VdIDxnw7ZuZGVyaT4uLi4iCisKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjY4Cittc2dpZCAicHJpbnQgY29tbWl0IGNvbnRlbnRzIgorbXNnc3RyICJnw7ZuZGVyaSBpw6dlcmnEn2luaSB5YXpkxLFyIgorCisjOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo2OSBidWlsdGluL3ZlcmlmeS10YWcuYzozNworbXNnaWQgInByaW50IHJhdyBncGcgc3RhdHVzIG91dHB1dCIKK21zZ3N0ciAiaGFtIGdwZyBkdXJ1bSDDp8Sxa3TEsXPEsW7EsSB5YXpkxLFyIgorCisjOiBidWlsdGluL3ZlcmlmeS1wYWNrLmM6NTUKK21zZ2lkICJnaXQgdmVyaWZ5LXBhY2sgWy12IHwgLS12ZXJib3NlXSBbLXMgfCAtLXN0YXQtb25seV0gPHBhY2s+Li4uIgorbXNnc3RyICJnaXQgdmVyaWZ5LXBhY2sgWy12IHwgLS12ZXJib3NlXSBbLXMgfCAtLXN0YXQtb25seV0gPHBha2V0Pi4uLiIKKworIzogYnVpbHRpbi92ZXJpZnktcGFjay5jOjY1Cittc2dpZCAidmVyYm9zZSIKK21zZ3N0ciAiYXlyxLFudMSxbMSxIGFubGF0xLFtIgorCisjOiBidWlsdGluL3ZlcmlmeS1wYWNrLmM6NjcKK21zZ2lkICJzaG93IHN0YXRpc3RpY3Mgb25seSIKK21zZ3N0ciAieWFsbsSxemNhIGlzdGF0aXN0aWtsZXJpIGfDtnN0ZXIiCisKKyM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjE4Cittc2dpZCAiZ2l0IHZlcmlmeS10YWcgWy12IHwgLS12ZXJib3NlXSBbLS1mb3JtYXQ9PGZvcm1hdD5dIDx0YWc+Li4uIgorbXNnc3RyICJnaXQgdmVyaWZ5LXRhZyBbLXYgfCAtLXZlcmJvc2VdIFstLWZvcm1hdD08YmnDp2ltPl0gPGV0aWtldD4uLi4iCisKKyM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM2Cittc2dpZCAicHJpbnQgdGFnIGNvbnRlbnRzIgorbXNnc3RyICJldGlrZXQgacOnZXJpxJ9pbmkgeWF6ZMSxciIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjE3Cittc2dpZCAiZ2l0IHdvcmt0cmVlIGFkZCBbPG9wdGlvbnM+XSA8cGF0aD4gWzxjb21taXQtaXNoPl0iCittc2dzdHIgImdpdCB3b3JrdHJlZSBhZGQgWzxzZcOnZW5la2xlcj5dIDx5b2w+IFs8Z8O2bmRlcmltc2k+XSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjE4Cittc2dpZCAiZ2l0IHdvcmt0cmVlIGxpc3QgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCB3b3JrdHJlZSBsaXN0IFs8c2XDp2VuZWtsZXI+XSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjE5Cittc2dpZCAiZ2l0IHdvcmt0cmVlIGxvY2sgWzxvcHRpb25zPl0gPHBhdGg+IgorbXNnc3RyICJnaXQgd29ya3RyZWUgbG9jayBbPHNlw6dlbmVrbGVyPl0gPHlvbD4iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMAorbXNnaWQgImdpdCB3b3JrdHJlZSBtb3ZlIDx3b3JrdHJlZT4gPG5ldy1wYXRoPiIKK21zZ3N0ciAiZ2l0IHdvcmt0cmVlIG1vdmUgPMOnLWHEn2FjxLE+IDx5ZW5pLXlvbD4iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMQorbXNnaWQgImdpdCB3b3JrdHJlZSBwcnVuZSBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHdvcmt0cmVlIHBydW5lIFs8c2XDp2VuZWtsZXI+XSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjIyCittc2dpZCAiZ2l0IHdvcmt0cmVlIHJlbW92ZSBbPG9wdGlvbnM+XSA8d29ya3RyZWU+IgorbXNnc3RyICJnaXQgd29ya3RyZWUgcmVtb3ZlIFs8c2XDp2VuZWtsZXI+XSA8w6ctYcSfYWPEsT4iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMworbXNnaWQgImdpdCB3b3JrdHJlZSB1bmxvY2sgPHBhdGg+IgorbXNnc3RyICJnaXQgd29ya3RyZWUgdW5sb2NrIDx5b2w+IgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjAgYnVpbHRpbi93b3JrdHJlZS5jOjg5MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZGVsZXRlICclcyciCittc2dzdHIgIiclcycgc2lsaW5lbWVkaSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nIHdvcmt0cmVlcy8lczogbm90IGEgdmFsaWQgZGlyZWN0b3J5IgorbXNnc3RyICLDp2FsxLHFn21hLWHEn2FjxLEvJXMga2FsZMSxcsSxbMSxeW9yOiBnZcOnZXJsaSBiaXIgZGl6aW4gZGXEn2lsIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiBnaXRkaXIgZmlsZSBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiw6dhbMSxxZ9tYS1hxJ9hY8SxLyVzIGthbGTEsXLEsWzEsXlvcjogZ2l0ZGlyIGRvc3lhc8SxIHlvayIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwIGJ1aWx0aW4vd29ya3RyZWUuYzo5OQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyB3b3JrdHJlZXMvJXM6IHVuYWJsZSB0byByZWFkIGdpdGRpciBmaWxlICglcykiCittc2dzdHIgIsOnYWzEscWfbWEtYcSfYWPEsS8lcyBrYWxkxLFyxLFsxLF5b3I6IGdpdGRpciBkb3N5YXPEsSBva3VuYW3EsXlvciAoJXMpIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJSZW1vdmluZyB3b3JrdHJlZXMvJXM6IHNob3J0IHJlYWQgKGV4cGVjdGVkICU8UFJJdU1BWD4gYnl0ZXMsIHJlYWQgIgorIiU8UFJJdU1BWD4pIgorbXNnc3RyICIiCisiw6dhbMSxxZ9tYS1hxJ9hY8SxLyVzIGthbGTEsXLEsWzEsXlvcjogeWV0ZXJzaXogdmVyaSAoJTxQUkl1TUFYPiBiYXl0IGJla2xlbml5b3JkdSwgIgorIiU8UFJJdU1BWD4gb2t1bmR1IgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nIHdvcmt0cmVlcy8lczogaW52YWxpZCBnaXRkaXIgZmlsZSIKK21zZ3N0ciAiw6dhbMSxxZ9tYS1hxJ9hY8SxLyVzIGthbGTEsXLEsWzEsXlvcjogZ2XDp2Vyc2l6IGdpdGRpciBkb3N5YXPEsSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyB3b3JrdHJlZXMvJXM6IGdpdGRpciBmaWxlIHBvaW50cyB0byBub24tZXhpc3RlbnQgbG9jYXRpb24iCittc2dzdHIgIiIKKyLDp2FsxLHFn21hLWHEn2FjxLEvJXMga2FsZMSxcsSxbMSxeW9yOiBnaXRkaXIgZG9zeWFzxLEgb2xtYXlhbiBiaXIga29udW1hIGnFn2FyZXQgIgorImVkaXlvciIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjE2NQorbXNnaWQgInJlcG9ydCBwcnVuZWQgd29ya2luZyB0cmVlcyIKK21zZ3N0ciAiYnVkYW5hbiDDp2FsxLHFn21hIGHEn2HDp2xhcsSxbsSxIGJpbGRpciIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjE2NworbXNnaWQgImV4cGlyZSB3b3JraW5nIHRyZWVzIG9sZGVyIHRoYW4gPHRpbWU+IgorbXNnc3RyICI8emFtYW4+J2RhbiBlc2tpIMOnYWzEscWfbWEgYcSfYcOnbGFyxLFuxLFuIGjDvGttw7xuw7wga2FsZMSxciIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjIzNAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICInJXMnIGhhbGloYXrEsXJkYSB2YXIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlLWFkZCB3b3JrdHJlZSAnJXMnIgorbXNnc3RyICInJXMnIMOnYWzEscWfbWEgYcSfYWPEsSB5ZW5pZGVuIGVrbGVuZW1peW9yIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyInJXMnIGlzIGEgbWlzc2luZyBidXQgbG9ja2VkIHdvcmt0cmVlO1xuIgorInVzZSAnYWRkIC1mIC1mJyB0byBvdmVycmlkZSwgb3IgJ3VubG9jaycgYW5kICdwcnVuZScgb3IgJ3JlbW92ZScgdG8gY2xlYXIiCittc2dzdHIgIiIKKyInJXMnIGVrc2lrIGFuY2FrIGtpbGl0bGkgYmlyIMOnYWzEscWfbWEgYcSfYWPEsTtcbiIKKyJnZcOnZXJzaXoga8SxbG1hayBpw6dpbiAnYWRkIC1mIC1mJywgdGVtaXpsZW1layBpw6dpbiAndW5sb2NrJywgJ3BydW5lJyB2ZXlhICIKKyIncmVtb3ZlJyBrdWxsYW7EsW4iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiclcycgaXMgYSBtaXNzaW5nIGJ1dCBhbHJlYWR5IHJlZ2lzdGVyZWQgd29ya3RyZWU7XG4iCisidXNlICdhZGQgLWYnIHRvIG92ZXJyaWRlLCBvciAncHJ1bmUnIG9yICdyZW1vdmUnIHRvIGNsZWFyIgorbXNnc3RyICIiCisiJyVzJyBla3NpayBhbmNhayBoYWxpaGF6xLFyZGEga2F5ZMSxIHlhcMSxbG3EscWfIGJpciDDp2FsxLHFn21hIGHEn2FjxLE7XG4iCisiZ2XDp2Vyc2l6IGvEsWxtYWsgacOnaW4gJ2FkZCAtZicsIHRlbWl6bGVtZWsgacOnaW4gJ3BydW5lJyB2ZXlhICdyZW1vdmUnIGt1bGxhbsSxbiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBvZiAnJXMnIgorbXNnc3RyICInJXMnIGRpemluaSBvbHXFn3R1cnVsYW1hZMSxIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDMyIGJ1aWx0aW4vd29ya3RyZWUuYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChuZXcgYnJhbmNoICclcycpIgorbXNnc3RyICLDh2FsxLHFn21hIGHEn2FjxLEgaGF6xLFybGFuxLF5b3IgKHllbmkgZGFsICclcycpIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAocmVzZXR0aW5nIGJyYW5jaCAnJXMnOyB3YXMgYXQgJXMpIgorbXNnc3RyICLDh2FsxLHFn21hIGHEn2FjxLEgaGF6xLFybGFuxLF5b3IgKCclcycgZGFsxLEgc8SxZsSxcmxhbsSxeW9yOyAlcyBrb251bXVuZGF5ZMSxKSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKGNoZWNraW5nIG91dCAnJXMnKSIKK21zZ3N0ciAiw4dhbMSxxZ9tYSBhxJ9hY8SxIGhhesSxcmxhbsSxeW9yICgnJXMnIMOnxLFrxLHFnyB5YXDEsWzEsXlvcikiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChkZXRhY2hlZCBIRUFEICVzKSIKK21zZ3N0ciAiw4dhbMSxxZ9tYSBhxJ9hY8SxIGhhesSxcmxhbsSxeW9yIChheXLEsWsgSEVBRCAlcykiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTAKK21zZ2lkICJjaGVja291dCA8YnJhbmNoPiBldmVuIGlmIGFscmVhZHkgY2hlY2tlZCBvdXQgaW4gb3RoZXIgd29ya3RyZWUiCittc2dzdHIgImRpxJ9lciDDp2FsxLHFn21hIGHEn2FjxLFuZGEgw6fEsWvEscWfIHlhcMSxbG3EscWfIG9sc2EgYmlsZSA8ZGFsPiDDp8Sxa8SxxZ/EsW7EsSB5YXAiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTMKK21zZ2lkICJjcmVhdGUgYSBuZXcgYnJhbmNoIgorbXNnc3RyICJ5ZW5pIGJpciBkYWwgb2x1xZ90dXIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTUKK21zZ2lkICJjcmVhdGUgb3IgcmVzZXQgYSBicmFuY2giCittc2dzdHIgInllbmkgYmlyIGRhbCBvbHXFn3R1ciB2ZXlhIHPEsWbEsXJsYSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NworbXNnaWQgInBvcHVsYXRlIHRoZSBuZXcgd29ya2luZyB0cmVlIgorbXNnc3RyICJ5ZW5pIMOnYWzEscWfbWEgYcSfYWPEsW7EsSBkb2xkdXIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTgKK21zZ2lkICJrZWVwIHRoZSBuZXcgd29ya2luZyB0cmVlIGxvY2tlZCIKK21zZ3N0ciAieWVuaSDDp2FsxLHFn21hIGHEn2FjxLFuxLEga2lsaXRsaSB0dXQiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDEKK21zZ2lkICJzZXQgdXAgdHJhY2tpbmcgbW9kZSAoc2VlIGdpdC1icmFuY2goMSkpIgorbXNnc3RyICJpemxlbWUga2lwaW5pIGF5YXJsYSAoYmt6OiBnaXQtYnJhbmNoKDEpKSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwNAorbXNnaWQgInRyeSB0byBtYXRjaCB0aGUgbmV3IGJyYW5jaCBuYW1lIHdpdGggYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICJ5ZW5pIGRhbMSxbiBhZMSxbsSxIGJpciB1emFrIGl6bGVtZSBkYWzEsXlsYSBlxZ9sZcWfdGlybWV5aSBkZW5lIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTEyCittc2dpZCAiLWIsIC1CLCBhbmQgLS1kZXRhY2ggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLWIsIC1CIHZlIC0tZGV0YWNoIGJpcmxpa3RlIGt1bGxhbsSxbGFtYXoiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1NzMKK21zZ2lkICItLVtuby1ddHJhY2sgY2FuIG9ubHkgYmUgdXNlZCBpZiBhIG5ldyBicmFuY2ggaXMgY3JlYXRlZCIKK21zZ3N0ciAiLS1bbm8tXXRyYWNrIHlhbG7EsXpjYSB5ZW5pIGJpciBkYWwgb2x1xZ90dXJ1bG11xZ9zYSBrdWxsYW7EsWxhYmlsaXIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NzMKK21zZ2lkICJyZWFzb24gZm9yIGxvY2tpbmciCittc2dzdHIgImtpbGl0bGVtZSBuZWRlbmkiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODUgYnVpbHRpbi93b3JrdHJlZS5jOjcxOCBidWlsdGluL3dvcmt0cmVlLmM6NzkyCisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgd29ya2luZyB0cmVlIgorbXNnc3RyICInJXMnIGJpciDDp2FsxLHFn21hIGHEn2FjxLEgZGXEn2lsIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njg3IGJ1aWx0aW4vd29ya3RyZWUuYzo3MjAKK21zZ2lkICJUaGUgbWFpbiB3b3JraW5nIHRyZWUgY2Fubm90IGJlIGxvY2tlZCBvciB1bmxvY2tlZCIKK21zZ3N0ciAiQW5hIMOnYWzEscWfbWEgYcSfYWPEsSBraWxpdGxlbmVtZXogdmV5YSBraWxpZGkgYcOnxLFsYW1heiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5MgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIGFscmVhZHkgbG9ja2VkLCByZWFzb246ICVzIgorbXNnc3RyICInJXMnIGhhbGloYXrEsXJkYSBraWxpdGxpLCBuZWRlbmk6ICVzIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgYWxyZWFkeSBsb2NrZWQiCittc2dzdHIgIiclcycgaGFsaWhhesSxcmRhIGtpbGl0bGkiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgbG9ja2VkIgorbXNnc3RyICInJXMnIGtpbGl0bGkgZGXEn2lsIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzYzCittc2dpZCAid29ya2luZyB0cmVlcyBjb250YWluaW5nIHN1Ym1vZHVsZXMgY2Fubm90IGJlIG1vdmVkIG9yIHJlbW92ZWQiCittc2dzdHIgImFsdG1vZMO8bCBpw6dlcmVuIMOnYWzEscWfbWEgYcSfYcOnbGFyxLEgdGHFn8SxbmFtYXogdmV5YSBrYWxkxLFyxLFsYW1heiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3MQorbXNnaWQgImZvcmNlIG1vdmUgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCittc2dzdHIgIsOnYWzEscWfbWEgYcSfYWPEsSBraXJsaSB2ZXlhIGtpbGl0bGkgb2xzYSBiaWxlIHpvcmxhIHRhxZ/EsSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5NCBidWlsdGluL3dvcmt0cmVlLmM6OTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgYSBtYWluIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiJyVzJyBiaXIgYW5hIMOnYWzEscWfbWEgYcSfYWPEsSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZmlndXJlIG91dCBkZXN0aW5hdGlvbiBuYW1lIGZyb20gJyVzJyIKK21zZ3N0ciAiaGVkZWYgYWTEsSDFn3VyYWRhbiBhbmxhxZ/EsWxhbWFkxLE6ICclcyciCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFyZ2V0ICclcycgYWxyZWFkeSBleGlzdHMiCittc2dzdHIgIiclcycgaGVkZWZpIGhhbGloYXrEsXJkYSB2YXIiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNhbm5vdCBtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZSwgbG9jayByZWFzb246ICVzXG4iCisidXNlICdtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCittc2dzdHIgIiIKKyJraWxpdGxpIGJpciDDp2FsxLHFn21hIGHEn2FjxLEgdGHFn8SxbmFtxLF5b3IsIGtpbGl0IG5lZGVuaTogJXNcbiIKKyJnZcOnZXJzaXoga8SxbG1hayBpw6dpbiAnbW92ZSAtZiAtZicga3VsbGFuxLFuIHZleWEgw7ZuY2Uga2lsaWRpbmkgYcOnxLFuIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODE1Cittc2dpZCAiIgorImNhbm5vdCBtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZTtcbiIKKyJ1c2UgJ21vdmUgLWYgLWYnIHRvIG92ZXJyaWRlIG9yIHVubG9jayBmaXJzdCIKK21zZ3N0ciAiIgorImtpbGl0bGkgYmlyIMOnYWzEscWfbWEgYcSfYWPEsSB0YcWfxLFuYW3EsXlvcjtcbiIKKyJnZcOnZXJzaXoga8SxbG1hayBpw6dpbiAnbW92ZSAtZiAtZicga3VsbGFuxLFuIHZleWEgw7ZuY2Uga2lsaWRpbmkgYcOnxLFuIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODE4CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbGlkYXRpb24gZmFpbGVkLCBjYW5ub3QgbW92ZSB3b3JraW5nIHRyZWU6ICVzIgorbXNnc3RyICJkb8SfcnVsYW1hIGJhxZ9hcsSxc8Sxeiwgw6dhbMSxxZ9tYSBhxJ9hY8SxIHRhxZ/EsW5hbcSxeW9yOiAlcyIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjgyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbW92ZSAnJXMnIHRvICclcyciCittc2dzdHIgIiclcycgLT4gJyVzJyB0YcWfxLFtYXPEsSBiYcWfYXLEsXPEsXoiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJ1biAnZ2l0IHN0YXR1cycgb24gJyVzJyIKK21zZ3N0ciAiJyVzJyDDvHplcmluZGUgJ2dpdCBzdGF0dXMnIMOnYWzEscWfdMSxcsSxbGFtYWTEsSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjg3NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIG1vZGlmaWVkIG9yIHVudHJhY2tlZCBmaWxlcywgdXNlIC0tZm9yY2UgdG8gZGVsZXRlIGl0IgorbXNnc3RyICIiCisiJyVzJyBkZcSfacWfdGlyaWxtacWfIHZleWEgaXpsZW5tZXllbiBkb3N5YWxhciBpw6dlcml5b3IsIHNpbG1layBpw6dpbiAtLWZvcmNlICIKKyJrdWxsYW7EsW4iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJ1biAnZ2l0IHN0YXR1cycgb24gJyVzJywgY29kZSAlZCIKK21zZ3N0ciAiJyVzJyDDvHplcmluZGUgJ2dpdCBzdGF0dXMnIMOnYWzEscWfdMSxcsSxbGFtYWTEsSwga29kICVkIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTAzCittc2dpZCAiZm9yY2UgcmVtb3ZhbCBldmVuIGlmIHdvcmt0cmVlIGlzIGRpcnR5IG9yIGxvY2tlZCIKK21zZ3N0ciAiw6dhbMSxxZ9tYSBhxJ9hY8SxIGtpcmxpIHZleWEga2lsaXRsaSBvbHNhIGJpbGUgem9ybGEga2FsZMSxciIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlc1xuIgorInVzZSAncmVtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCittc2dzdHIgIiIKKyJraWxpdGxpIGJpciDDp2FsxLHFn21hIGHEn2FjxLEga2FsZMSxcsSxbGFtxLF5b3IsIGtpbGl0IG5lZGVuaTogJXNcbiIKKyJnZcOnZXJzaXoga8SxbG1hayBpw6dpbiAncmVtb3ZlIC1mIC1mJyBrdWxsYW7EsW4gdmV5YSDDtm5jZSBraWxpZGluaSBhw6fEsW4iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MjgKK21zZ2lkICIiCisiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWU7XG4iCisidXNlICdyZW1vdmUgLWYgLWYnIHRvIG92ZXJyaWRlIG9yIHVubG9jayBmaXJzdCIKK21zZ3N0ciAiIgorImtpbGl0bGkgYmlyIMOnYWzEscWfbWEgYcSfYWPEsSBrYWxkxLFyxLFsYW3EsXlvcjtcbiIKKyJnZcOnZXJzaXoga8SxbG1hayBpw6dpbiAncmVtb3ZlIC1mIC1mJyBrdWxsYW7EsW4gdmV5YSDDtm5jZSBraWxpZGluaSBhw6fEsW4iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsaWRhdGlvbiBmYWlsZWQsIGNhbm5vdCByZW1vdmUgd29ya2luZyB0cmVlOiAlcyIKK21zZ3N0ciAiZG/En3J1bGFtYSBiYcWfYXLEsXPEsXosIMOnYWzEscWfbWEgYcSfYWPEsSBrYWxkxLFyxLFsYW3EsXlvcjogJXMiCisKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjE1Cittc2dpZCAiZ2l0IHdyaXRlLXRyZWUgWy0tbWlzc2luZy1va10gWy0tcHJlZml4PTxwcmVmaXg+L10iCittc2dzdHIgImdpdCB3cml0ZS10cmVlIFstLW1pc3Npbmctb2tdIFstLXByZWZpeD08w7ZuZWs+L10iCisKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI4Cittc2dpZCAiPHByZWZpeD4vIgorbXNnc3RyICI8w7ZuZWs+LyIKKworIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjkKK21zZ2lkICJ3cml0ZSB0cmVlIG9iamVjdCBmb3IgYSBzdWJkaXJlY3RvcnkgPHByZWZpeD4iCittc2dzdHIgImJpciA8w7ZuZWs+IGFsdGRpemluaSBpw6dpbiBhxJ9hw6cgbmVzbmVzaSB5YXoiCisKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjMxCittc2dpZCAib25seSB1c2VmdWwgZm9yIGRlYnVnZ2luZyIKK21zZ3N0ciAieWFsbsSxemNhIGhhdGEgYXnEsWtsYW1hIGnDp2luIHlhcmFybMSxIgorCisjOiBmYXN0LWltcG9ydC5jOjMxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0ZWQgJ21hcmsnIGNvbW1hbmQsIGdvdCAlcyIKK21zZ3N0ciAiJ21hcmsnIGtvbXV0dSBiZWtsZW5peW9yZHUsICVzIGFsxLFuZMSxIgorCisjOiBmYXN0LWltcG9ydC5jOjMxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0ZWQgJ3RvJyBjb21tYW5kLCBnb3QgJXMiCittc2dzdHIgIid0bycga29tdXR1IGJla2xlbml5b3JkdSwgJXMgYWzEsW5kxLEiCisKKyM6IGZhc3QtaW1wb3J0LmM6MzI1NAorIywgYy1mb3JtYXQKK21zZ2lkICJmZWF0dXJlICclcycgZm9yYmlkZGVuIGluIGlucHV0IHdpdGhvdXQgLS1hbGxvdy11bnNhZmUtZmVhdHVyZXMiCittc2dzdHIgIiclcycgw7Z6ZWxsacSfaSAtLWFsbG93LXVuc2FmZS1mZWF0dXJlcyBvbG1hZGFuIGdpcmRpZGUgeWFzYWtsxLEiCisKKyM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjIyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIHBlcm1pc3Npb25zIG9uIHlvdXIgc29ja2V0IGRpcmVjdG9yeSBhcmUgdG9vIGxvb3NlOyBvdGhlclxuIgorInVzZXJzIG1heSBiZSBhYmxlIHRvIHJlYWQgeW91ciBjYWNoZWQgY3JlZGVudGlhbHMuIENvbnNpZGVyIHJ1bm5pbmc6XG4iCisiXG4iCisiXHRjaG1vZCAwNzAwICVzIgorbXNnc3RyICIiCisiU29rZXQgZGl6aW5pbml6ZGVraSBpemlubGVyIMOnb2sgZ2V2xZ9lazsgZGnEn2VyIGt1bGxhbsSxY8SxbGFyIHNpemluXG4iCisiw7ZuYmVsbGXEn2UgYWzEsW5txLHFnyB5ZXRraWxlcmluaXppIG9rdXlhYmlsaXJsZXIuIMWedW51IMOnYWzEscWfdMSxcm1hecSxIGTDvMWfw7xuw7xuOlxuIgorIlxuIgorIlx0Y2htb2QgMDcwMCAlcyIKKworIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjcyCittc2dpZCAicHJpbnQgZGVidWdnaW5nIG1lc3NhZ2VzIHRvIHN0ZGVyciIKK21zZ3N0ciAiaGF0YSBhecSxa2xhbWEgaWxldGlsZXJpbmkgc3RkZXJyJ2UgeWF6ZMSxciIKKworIzogdC9oZWxwZXIvdGVzdC1yZWFjaC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgJXMgaXMgbm90IG1hcmtlZCByZWFjaGFibGUiCittc2dzdHIgIiVzIGfDtm5kZXJpc2kgdWxhxZ/EsWxhYmlsaXIgb2xhcmFrIGltbGVubWVkaSIKKworIzogdC9oZWxwZXIvdGVzdC1yZWFjaC5jOjE2MgorbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgbWFya2VkIHJlYWNoYWJsZSIKK21zZ3N0ciAiw6dvayBmYXpsYSBnw7ZuZGVyaSB1bGHFn8SxbGFiaWxpciBvbGFyYWsgaW1sZW5tacWfIgorCisjOiB0L2hlbHBlci90ZXN0LXNlcnZlLXYyLmM6NworbXNnaWQgInRlc3QtdG9vbCBzZXJ2ZS12MiBbPG9wdGlvbnM+XSIKK21zZ3N0ciAidGVzdC10b29sIHNlcnZlLXYyIFs8c2XDp2VuZWtsZXI+XSIKKworIzogdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjE5Cittc2dpZCAiZXhpdCBpbW1lZGlhdGVseSBhZnRlciBhZHZlcnRpc2luZyBjYXBhYmlsaXRpZXMiCittc2dzdHIgImJlY2VyaWxlcmkgZ8O2c3RlcmRpa3RlbiBoZW1lbiBzb25yYSDDp8SxayIKKworIzogZ2l0LmM6MjcKK21zZ2lkICIiCisiZ2l0IFstLXZlcnNpb25dIFstLWhlbHBdIFstQyA8cGF0aD5dIFstYyA8bmFtZT49PHZhbHVlPl1cbiIKKyIgICAgICAgICAgIFstLWV4ZWMtcGF0aFs9PHBhdGg+XV0gWy0taHRtbC1wYXRoXSBbLS1tYW4tcGF0aF0gWy0taW5mby1wYXRoXVxuIgorIiAgICAgICAgICAgWy1wIHwgLS1wYWdpbmF0ZSB8IC1QIHwgLS1uby1wYWdlcl0gWy0tbm8tcmVwbGFjZS1vYmplY3RzXSBbLS0iCisiYmFyZV1cbiIKKyIgICAgICAgICAgIFstLWdpdC1kaXI9PHBhdGg+XSBbLS13b3JrLXRyZWU9PHBhdGg+XSBbLS1uYW1lc3BhY2U9PG5hbWU+XVxuIgorIiAgICAgICAgICAgPGNvbW1hbmQ+IFs8YXJncz5dIgorbXNnc3RyICIiCisiZ2l0IFstLXZlcnNpb25dIFstLWhlbHBdIFstQyA8eW9sPl0gWy1jIDxhZD49PGRlxJ9lcj5dXG4iCisiICAgICAgICAgICBbLS1leGVjLXBhdGhbPTx5b2w+XV0gWy0taHRtbC1wYXRoXSBbLS1tYW4tcGF0aF0gWy0taW5mby1wYXRoXVxuIgorIiAgICAgICAgICAgWy1wIHwgLS1wYWdpbmF0ZSB8IC1QIHwgLS1uby1wYWdlcl0gWy0tbm8tcmVwbGFjZS1vYmplY3RzXSBbLS0iCisiYmFyZV1cbiIKKyIgICAgICAgICAgIFstLWdpdC1kaXI9PHlvbD5dIFstLXdvcmstdHJlZT08eW9sPl0gWy0tbmFtZXNwYWNlPTxhZD5dXG4iCisiICAgICAgICAgICA8a29tdXQ+IFs8ZGXEn2nFn2tlbmxlcj5dIgorCisjOiBnaXQuYzozNAorbXNnaWQgIiIKKyInZ2l0IGhlbHAgLWEnIGFuZCAnZ2l0IGhlbHAgLWcnIGxpc3QgYXZhaWxhYmxlIHN1YmNvbW1hbmRzIGFuZCBzb21lXG4iCisiY29uY2VwdCBndWlkZXMuIFNlZSAnZ2l0IGhlbHAgPGNvbW1hbmQ+JyBvciAnZ2l0IGhlbHAgPGNvbmNlcHQ+J1xuIgorInRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIG9yIGNvbmNlcHQuXG4iCisiU2VlICdnaXQgaGVscCBnaXQnIGZvciBhbiBvdmVydmlldyBvZiB0aGUgc3lzdGVtLiIKK21zZ3N0ciAiIgorIidnaXQgaGVscCAtYScgdmUgJ2dpdCBoZWxwIC1nJyBrdWxsYW7EsWxhYmlsaXIga29tdXRsYXLEsSB2ZSBiYXrEsSBrb25zZXB0XG4iCisia8SxbGF2dXpsYXLEsW7EsSBsaXN0ZWxlci4gQmVsaXJsaSBiaXIga29tdXQgdmV5YSBrb25zZXB0IMO8emVyaW5lIGJpbGdpIGFsbWFrXG4iCisiacOnaW4gJ2dpdCBoZWxwIDxrb211dD4nIHZleWEgJ2dpdCBoZWxwIDxrb25zZXB0PicgeWF6xLFuLiBHZW5lbCBiaXIgZ8O2csO8bsO8bVxuIgorImnDp2luICdnaXQgaGVscCBnaXQnIGt1bGxhbmFiaWxpcnNpbml6LiIKKworIzogZ2l0LmM6MTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLS1naXQtZGlyXG4iCittc2dzdHIgIi0tZ2l0LWRpciBpw6dpbiBkaXppbiB2ZXJpbG1lZGlcbiIKKworIzogZ2l0LmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIG5hbWVzcGFjZSBnaXZlbiBmb3IgLS1uYW1lc3BhY2VcbiIKK21zZ3N0ciAiLS1uYW1lc3BhY2UgacOnaW4gYWQgYWxhbsSxIHZlcmlsbWVkaVxuIgorCisjOiBnaXQuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtLXdvcmstdHJlZVxuIgorbXNnc3RyICItLXdvcmstdHJlZSBpw6dpbiBkaXppbiB2ZXJpbG1lZGlcbiIKKworIzogZ2l0LmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHByZWZpeCBnaXZlbiBmb3IgLS1zdXBlci1wcmVmaXhcbiIKK21zZ3N0ciAiLS1zdXBlci1wcmVmaXggacOnaW4gw7ZuZWsgdmVyaWxtZWRpXG4iCisKKyM6IGdpdC5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItYyBleHBlY3RzIGEgY29uZmlndXJhdGlvbiBzdHJpbmdcbiIKK21zZ3N0ciAiLWMgYmlyIHlhcMSxbGFuZMSxcm1hIGRpemlzaSBiZWtsaXlvclxuIgorCisjOiBnaXQuYzoyODgKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtQ1xuIgorbXNnc3RyICItQyBpw6dpbiBkaXppbiB2ZXJpbG1lZGlcbiIKKworIzogZ2l0LmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uOiAlc1xuIgorbXNnc3RyICJiaWxpbm1leWVuIHNlw6dlbmVrOiAlc1xuIgorCisjOiBnaXQuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgZXhwYW5kaW5nIGFsaWFzICclcyc6ICclcyciCittc2dzdHIgIiclcycgYXJtYXPEsSBnZW5pxZ9sZXRpcmlsaXJrZW46ICclcyciCisKKyM6IGdpdC5jOjM2OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWxpYXMgJyVzJyBjaGFuZ2VzIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiIKKyJZb3UgY2FuIHVzZSAnIWdpdCcgaW4gdGhlIGFsaWFzIHRvIGRvIHRoaXMiCittc2dzdHIgIiIKKyInJXMnIGFybWFzxLEgb3J0YW0gZGXEn2nFn2tlbmxlcmluaSBkZcSfacWfdGlyaXIuXG4iCisiQnVudSB5YXBtYWsgacOnaW4gYXJtYWRhICchZ2l0JyBrdWxsYW5hYmlsaXJzaW5pei4iCisKKyM6IGdpdC5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBhbGlhcyBmb3IgJXMiCittc2dzdHIgIiVzIGnDp2luIGJvxZ8gYXJtYSIKKworIzogZ2l0LmM6Mzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlY3Vyc2l2ZSBhbGlhczogJXMiCittc2dzdHIgIsO2enlpbmVsaSBhcm1hOiAlcyIKKworIzogZ2l0LmM6NDU5Cittc2dpZCAid3JpdGUgZmFpbHVyZSBvbiBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgInN0YW5kYXJ0IMOnxLFrdMSxJ2RhIHlhem1hIGhhdGFzxLEiCisKKyM6IGdpdC5jOjQ2MQorbXNnaWQgInVua25vd24gd3JpdGUgZmFpbHVyZSBvbiBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgInN0YW5kYXJ0IMOnxLFrdMSxJ2RhIGJpbGlubWV5ZW4geWF6bWEgaGF0YXPEsSIKKworIzogZ2l0LmM6NDYzCittc2dpZCAiY2xvc2UgZmFpbGVkIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAic3RhbmRhcnQgw6fEsWt0xLEnZGEga2FwYXRtYSBiYcWfYXLEsXPEsXoiCisKKyM6IGdpdC5jOjc5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbGlhcyBsb29wIGRldGVjdGVkOiBleHBhbnNpb24gb2YgJyVzJyBkb2VzIG5vdCB0ZXJtaW5hdGU6JXMiCittc2dzdHIgImFybWEgZMO2bmfDvHPDvCBhbGfEsWxhbmTEsTogJyVzJyBnZW5pxZ9sZXRpbG1lc2kgc29ubGFubcSxeW9yOiVzIgorCisjOiBnaXQuYzo4NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGhhbmRsZSAlcyBhcyBhIGJ1aWx0aW4iCittc2dzdHIgIiVzIGJpciB5ZXJsZcWfaWsgb2xhcmFrIGnFn2xlbmVtaXlvciIKKworIzogZ2l0LmM6ODU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1c2FnZTogJXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorImt1bGxhbsSxbTogJXNcbiIKKyJcbiIKKworIzogZ2l0LmM6ODc2CisjLCBjLWZvcm1hdAorbXNnaWQgImV4cGFuc2lvbiBvZiBhbGlhcyAnJXMnIGZhaWxlZDsgJyVzJyBpcyBub3QgYSBnaXQgY29tbWFuZFxuIgorbXNnc3RyICIiCisiJyVzJyBhcm1hc8SxbsSxbiBnZW5pxZ9sZXRpbG1lc2kgYmHFn2FyxLFzxLF6IG9sZHU7ICclcycgYmlyIGdpdCBrb211dHUgZGXEn2lsXG4iCisKKyM6IGdpdC5jOjg4OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcnVuIGNvbW1hbmQgJyVzJzogJXNcbiIKK21zZ3N0ciAiJyVzJyBrb211dHUgw6dhbMSxxZ90xLFyxLFsYW1hZMSxOiAlc1xuIgorCisjOiBodHRwLmM6Mzc4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5lZ2F0aXZlIHZhbHVlIGZvciBodHRwLnBvc3RidWZmZXI7IGRlZmF1bHRpbmcgdG8gJWQiCittc2dzdHIgImh0dHAucG9zdGJ1ZmZlciBpw6dpbiBuZWdhdGlmIGRlxJ9lcjsgJWQgb2xhcmFrIHZhcnNhecSxbMSxeW9yIgorCisjOiBodHRwLmM6Mzk5Cittc2dpZCAiRGVsZWdhdGlvbiBjb250cm9sIGlzIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy4yMi4wIgorbXNnc3RyICJEZWxlZ2FzeW9uIGRlbmV0aW1pIGNVUkwgPCA3LjIyLjAgdGFyYWbEsW5kYW4gZGVzdGVrbGVubWl5b3IiCisKKyM6IGh0dHAuYzo0MDgKK21zZ2lkICJQdWJsaWMga2V5IHBpbm5pbmcgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjQ0LjAiCittc2dzdHIgIk9ydGFrIGFuYWh0YXIgacSfbmVsZW1lc2kgY1VSTCA8IDcuNDQuMCB0YXJhZsSxbmRhbiBkZXN0ZWtsZW5taXlvciIKKworIzogaHR0cC5jOjg3NgorbXNnaWQgIkNVUkxTU0xPUFRfTk9fUkVWT0tFIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy40NC4wIgorbXNnc3RyICJDVVJMU1NMT1BUX05PX1JFVk9LRSBjVVJMIDwgNy40NC4wIHRhcmFmxLFuZGFuIGRlc3Rla2xlbm1peW9yIgorCisjOiBodHRwLmM6OTQ5Cittc2dpZCAiUHJvdG9jb2wgcmVzdHJpY3Rpb25zIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy4xOS40IgorbXNnc3RyICJQcm90b2tvbCBzxLFuxLFybGFtYWxhcsSxIGNVUkwgPCA3LjE5LjQgdGFyYWbEsW5kYW4gZGVzdGVrbGVubWl5b3IiCisKKyM6IGh0dHAuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgIlVuc3VwcG9ydGVkIFNTTCBiYWNrZW5kICclcycuIFN1cHBvcnRlZCBTU0wgYmFja2VuZHM6IgorbXNnc3RyICJEZXN0ZWtsZW5tZXllbiBTU0wgYXJrYSB1Y3UgJyVzJy4gRGVzdGVrbGVuZW4gU1NMIGFya2EgdcOnbGFyxLE6IgorCisjOiBodHRwLmM6MTA5MworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgc2V0IFNTTCBiYWNrZW5kIHRvICclcyc6IGNVUkwgd2FzIGJ1aWx0IHdpdGhvdXQgU1NMIGJhY2tlbmRzIgorbXNnc3RyICIiCisiU1NMIGFya2EgdWN1ICclcycgb2xhcmFrIGF5YXJsYW5hbWFkxLE6IGNVUkwsIFNTTCBhcmthIHXDp2xhcsSxIG9sbWFkYW4geWFwxLFsbcSxxZ8iCisKKyM6IGh0dHAuYzoxMDk3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBzZXQgU1NMIGJhY2tlbmQgdG8gJyVzJzogYWxyZWFkeSBzZXQiCittc2dzdHIgIlNTTCBhcmthIHVjdSAnJXMnIG9sYXJhayBheWFybGFuYW1hZMSxOiBIYWxpaGF6xLFyZGEgYXlhcmxhbm3EscWfIgorCisjOiBodHRwLmM6MTk2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHVwZGF0ZSB1cmwgYmFzZSBmcm9tIHJlZGlyZWN0aW9uOlxuIgorIiAgYXNrZWQgZm9yOiAlc1xuIgorIiAgIHJlZGlyZWN0OiAlcyIKK21zZ3N0ciAiIgorInllbmlkZW4gecO2bmxlbmRpcmVyZWsgdXJsIHRhYmFuxLEgZ8O8bmNlbGxlbmVtaXlvcjpcbiIKKyIgxZ91IGlzdGVuZGk6ICVzXG4iCisiICAgecO2bmxlbmVuOiAlcyIKKworIzogcmVtb3RlLWN1cmwuYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBxdW90aW5nIGluIHB1c2gtb3B0aW9uIHZhbHVlOiAnJXMnIgorbXNnc3RyICJwdXNoLW9wdGlvbiBkZcSfZXJpbmRlIGdlw6dlcnNpeiB0xLFybmFrIGnDp2luZSBhbMSxbTogJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXNpbmZvL3JlZnMgbm90IHZhbGlkOiBpcyB0aGlzIGEgZ2l0IHJlcG9zaXRvcnk/IgorbXNnc3RyICIlc2luZm8vcmVmcyBnZcOnZXJsaSBkZcSfaWw6IGJ1IGJpciBnaXQgZGVwb3N1IG11PyIKKworIzogcmVtb3RlLWN1cmwuYzozNjQKK21zZ2lkICJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZXhwZWN0ZWQgc2VydmljZSwgZ290IGZsdXNoIHBhY2tldCIKK21zZ3N0ciAiZ2XDp2Vyc2l6IHN1bnVjdSB5YW7EsXTEsTsgc2VydmlzIGJla2xlbml5b3JkdSwgZmxvxZ8gcGFrZXRpIGFsxLFuZMSxIgorCisjOiByZW1vdGUtY3VybC5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZ290ICclcyciCittc2dzdHIgImdlw6dlcnNpeiBzdW51Y3UgeWFuxLF0xLE7ICclcycgYWzEsW5kxLEiCisKKyM6IHJlbW90ZS1jdXJsLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgInJlcG9zaXRvcnkgJyVzJyBub3QgZm91bmQiCittc2dzdHIgIiclcycgZGVwb3N1IGJ1bHVuYW1hZMSxIgorCisjOiByZW1vdGUtY3VybC5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGlvbiBmYWlsZWQgZm9yICclcyciCittc2dzdHIgIiclcycgacOnaW4ga2ltbGlrIGRvxJ9ydWxhbWFzxLEgYmHFn2FyxLFzxLF6IgorCisjOiByZW1vdGUtY3VybC5jOjQ2MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzICclcyc6ICVzIgorbXNnc3RyICInJXMnIGVyacWfaWxlbWl5b3I6ICVzIgorCisjOiByZW1vdGUtY3VybC5jOjQ2OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWRpcmVjdGluZyB0byAlcyIKK21zZ3N0ciAixZ91cmF5YSB5ZW5pZGVuIHnDtm5sZW5kaXJpbGl5b3I6ICVzIgorCisjOiByZW1vdGUtY3VybC5jOjU5MworbXNnaWQgInNob3VsZG4ndCBoYXZlIEVPRiB3aGVuIG5vdCBnZW50bGUgb24gRU9GIgorbXNnc3RyICJkb3N5YSBzb251bmEgZGlra2F0IGVkaWxtaXlvcnNhIGRvc3lhIHNvbnUgb2xtYW1hbMSxZMSxciIKKworIzogcmVtb3RlLWN1cmwuYzo2NzMKK21zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIHJwYyBwb3N0IGRhdGEgLSB0cnkgaW5jcmVhc2luZyBodHRwLnBvc3RCdWZmZXIiCittc2dzdHIgIiIKKyJycGMgc29ucmFzxLEgdmVyaXNpIGdlcmkgc2FyxLFsYW3EsXlvciAtIGh0dHBzLnBvc3RCdWZmZXInxLEgYXJ0xLFybWF5xLEgZGVuZXlpbiIKKworIzogcmVtb3RlLWN1cmwuYzo3MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUlBDIGZhaWxlZDsgJXMiCittc2dzdHIgIlJQQyBiYcWfYXLEsXPEsXogb2xkdTsgJXMiCisKKyM6IHJlbW90ZS1jdXJsLmM6NzczCittc2dpZCAiY2Fubm90IGhhbmRsZSBwdXNoZXMgdGhpcyBiaWciCittc2dzdHIgImJ1IGthZGFyIGLDvHnDvGsgaXRtZWxlciBpxZ9sZW5lbWl5b3IiCisKKyM6IHJlbW90ZS1jdXJsLmM6ODg4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkZWZsYXRlIHJlcXVlc3Q7IHpsaWIgZGVmbGF0ZSBlcnJvciAlZCIKK21zZ3N0ciAiaXN0ZWsgc8O2bmTDvHLDvGxlbWl5b3I7ICd6bGliIGRlZmxhdGUnIGhhdGFzxLEgJWQiCisKKyM6IHJlbW90ZS1jdXJsLmM6ODkyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkZWZsYXRlIHJlcXVlc3Q7IHpsaWIgZW5kIGVycm9yICVkIgorbXNnc3RyICJpc3RlayBzw7ZuZMO8csO8bGVtaXlvcjsgJ3psaWIgZW5kJyBoYXRhc8SxICVkIgorCisjOiByZW1vdGUtY3VybC5jOjEwMjMKK21zZ2lkICJkdW1iIGh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjYXBhYmlsaXRpZXMiCittc2dzdHIgInByb2dyYW1sYW5hbWF5YW4gaHR0cCB0YcWfxLF5xLFjxLFzxLEgc8SxxJ8gacWfbGV2bGVyaSBkZXN0ZWtsZW1peW9yIgorCisjOiByZW1vdGUtY3VybC5jOjEwMzgKK21zZ2lkICJmZXRjaCBmYWlsZWQuIgorbXNnc3RyICJnZXRpcm1lIGJhxZ9hcsSxc8Sxei4iCisKKyM6IHJlbW90ZS1jdXJsLmM6MTA4NgorbXNnaWQgImNhbm5vdCBmZXRjaCBieSBzaGExIG92ZXIgc21hcnQgaHR0cCIKK21zZ3N0ciAiYWvEsWxsxLEgaHR0cCDDvHplcmluZGVuIHNoYTEgaWxlIGdldGlybWUgeWFwxLFsYW3EsXlvciIKKworIzogcmVtb3RlLWN1cmwuYzoxMTMwIHJlbW90ZS1jdXJsLmM6MTEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogZXhwZWN0ZWQgc2hhL3JlZiwgZ290ICclcyciCittc2dzdHIgInByb3Rva29sIGhhdGFzxLE6IHNoYS9yZWYgYmVrbGVuaXlvcmR1LCAnJXMnIGFsxLFuZMSxIgorCisjOiByZW1vdGUtY3VybC5jOjExNDggcmVtb3RlLWN1cmwuYzoxMjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgJXMiCittc2dzdHIgImh0dHAgdGHFn8SxecSxY8Sxc8SxICVzIGRlc3Rla2xlbWl5b3IiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTE4NAorbXNnaWQgImdpdC1odHRwLXB1c2ggZmFpbGVkIgorbXNnc3RyICJnaXQtaHR0cC1wdXNoIGJhxZ9hcsSxc8SxeiIKKworIzogcmVtb3RlLWN1cmwuYzoxMzY5Cittc2dpZCAicmVtb3RlLWN1cmw6IHVzYWdlOiBnaXQgcmVtb3RlLWN1cmwgPHJlbW90ZT4gWzx1cmw+XSIKK21zZ3N0ciAicmVtb3RlLWN1cmw6IGt1bGxhbsSxbTogZ2l0IHJlbW90ZS1jdXJsIDx1emFrLWtvbnVtPiBbPHVybD5dIgorCisjOiByZW1vdGUtY3VybC5jOjE0MDEKK21zZ2lkICJyZW1vdGUtY3VybDogZXJyb3IgcmVhZGluZyBjb21tYW5kIHN0cmVhbSBmcm9tIGdpdCIKK21zZ3N0ciAicmVtb3RlLWN1cmw6IGdpdCd0ZW4ga29tdXQgYWvEscWfxLEgb2t1bnVya2VuIGhhdGEiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQwOAorbXNnaWQgInJlbW90ZS1jdXJsOiBmZXRjaCBhdHRlbXB0ZWQgd2l0aG91dCBhIGxvY2FsIHJlcG8iCittc2dzdHIgInJlbW90ZS1jdXJsOiB5ZXJlbCBiaXIgZGVwbyBvbG1hZGFuIGdldGlybWUgeWFwxLFsbWF5YSDDp2FsxLHFn8SxbGTEsSIKKworIzogcmVtb3RlLWN1cmwuYzoxNDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW90ZS1jdXJsOiB1bmtub3duIGNvbW1hbmQgJyVzJyBmcm9tIGdpdCIKK21zZ3N0ciAicmVtb3RlLWN1cmw6IGdpdCd0ZW4gYmlsaW5tZXllbiBrb211dCAnJXMnIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo4NQorbXNnaWQgImFyZ3MiCittc2dzdHIgImRlxJ9pxZ9rZW5sZXIiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjg2Cittc2dpZCAib2JqZWN0IGZpbHRlcmluZyIKK21zZ3N0ciAibmVzbmUgc8O8esO8bcO8IgorCisjOiBwYXJzZS1vcHRpb25zLmg6MTgzCittc2dpZCAiZXhwaXJ5LWRhdGUiCittc2dzdHIgInNvbiBrdWxsYW7EsW0gdGFyaWhpIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MTk3Cittc2dpZCAibm8tb3AgKGJhY2t3YXJkIGNvbXBhdGliaWxpdHkpIgorbXNnc3RyICJpxZ9sZW0geW9rIChnZXJpeWUgZMO2bsO8ayB1eXVtbHVsdWsgacOnaW4pIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzA5Cittc2dpZCAiYmUgbW9yZSB2ZXJib3NlIgorbXNnc3RyICJkYWhhIGF5csSxbnTEsWzEsSBhbmxhdCIKKworIzogcGFyc2Utb3B0aW9ucy5oOjMxMQorbXNnaWQgImJlIG1vcmUgcXVpZXQiCittc2dzdHIgImRhaGEgc2Vzc2l6IG9sIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzE3Cittc2dpZCAidXNlIDxuPiBkaWdpdHMgdG8gZGlzcGxheSBTSEEtMXMiCittc2dzdHIgIlNIQS0xJ2xlcmkgZ8O2csO8bnTDvGxlbWVrIGnDp2luIDxuPiByYWthbSBrdWxsYW4iCisKKyM6IHBhcnNlLW9wdGlvbnMuaDozMzYKK21zZ2lkICJob3cgdG8gc3RyaXAgc3BhY2VzIGFuZCAjY29tbWVudHMgZnJvbSBtZXNzYWdlIgorbXNnc3RyICJpbGV0aWRlbiBib8WfbHVrbGFyxLEgdmUgI3lvcnVtbGFyxLEgw6fEsWthcnQiCisKKyM6IHBhcnNlLW9wdGlvbnMuaDozMzcKK21zZ2lkICJyZWFkIHBhdGhzcGVjIGZyb20gZmlsZSIKK21zZ3N0ciAieW9sIGJlbGlydGVjaW5pIGRvc3lhZGFuIG9rdSIKKworIzogcGFyc2Utb3B0aW9ucy5oOjMzOAorbXNnaWQgIiIKKyJ3aXRoIC0tcGF0aHNwZWMtZnJvbS1maWxlLCBwYXRoc3BlYyBlbGVtZW50cyBhcmUgc2VwYXJhdGVkIHdpdGggTlVMIGNoYXJhY3RlciIKK21zZ3N0ciAiIgorIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlsZSwgeW9sIGJlbGlydGVjaSDDtmdlbGVyaSBOVUwga2FyYWt0ZXJpIGlsZSBheXLEsWzEsXIiCisKKyM6IHJlZi1maWx0ZXIuaDoxMDEKK21zZ2lkICJrZXkiCittc2dzdHIgImFuYWh0YXIiCisKKyM6IHJlZi1maWx0ZXIuaDoxMDEKK21zZ2lkICJmaWVsZCBuYW1lIHRvIHNvcnQgb24iCittc2dzdHIgIsO8emVyaW5lIHPEsXJhbGFuYWNhayBhbGFuIGFkxLEiCisKKyM6IHJlcmVyZS5oOjQ0Cittc2dpZCAidXBkYXRlIHRoZSBpbmRleCB3aXRoIHJldXNlZCBjb25mbGljdCByZXNvbHV0aW9uIGlmIHBvc3NpYmxlIgorbXNnc3RyICIiCisiZcSfZXIgb2xhbmFrbMSxeXNhIGluZGVrc2kgeWVuaWRlbiBrdWxsYW7EsWxtxLHFnyDDp2FrxLHFn21hIMOnw7Z6w7xtw7wgaWxlIGfDvG5jZWxsZSIKKworIzogd3Qtc3RhdHVzLmg6NjcKK21zZ2lkICJIRUFEIGRldGFjaGVkIGF0ICIKK21zZ3N0ciAiSEVBRCDFn3VyYWRhIGF5csSxbGTEsTogIgorCisjOiB3dC1zdGF0dXMuaDo2OAorbXNnaWQgIkhFQUQgZGV0YWNoZWQgZnJvbSAiCittc2dzdHIgIkhFQUQgxZ91bmRhbiBheXLEsWxkxLE6ICIKKworIzogY29tbWFuZC1saXN0Lmg6NTAKK21zZ2lkICJBZGQgZmlsZSBjb250ZW50cyB0byB0aGUgaW5kZXgiCittc2dzdHIgIkRvc3lhIGnDp2VyacSfaW5pIGluZGVrc2UgZWtsZSIKKworIzogY29tbWFuZC1saXN0Lmg6NTEKK21zZ2lkICJBcHBseSBhIHNlcmllcyBvZiBwYXRjaGVzIGZyb20gYSBtYWlsYm94IgorbXNnc3RyICJCaXIgcG9zdGEga3V0dXN1bmRhbiBiaXIgZGl6aSB5YW1hIHV5Z3VsYSIKKworIzogY29tbWFuZC1saXN0Lmg6NTIKK21zZ2lkICJBbm5vdGF0ZSBmaWxlIGxpbmVzIHdpdGggY29tbWl0IGluZm9ybWF0aW9uIgorbXNnc3RyICJHw7ZuZGVyaSBiaWxnaXNpbmkgZG9zeWEgacOnaSBhw6fEsWtsYW1hIG9sYXJhayBla2xlIgorCisjOiBjb21tYW5kLWxpc3QuaDo1MworbXNnaWQgIkFwcGx5IGEgcGF0Y2ggdG8gZmlsZXMgYW5kL29yIHRvIHRoZSBpbmRleCIKK21zZ3N0ciAixLBuZGVrc2UgdmUvdmV5YSBkb3N5YWxhcmEgYmlyIHlhbWEgdXlndWxhIgorCisjOiBjb21tYW5kLWxpc3QuaDo1NAorbXNnaWQgIkltcG9ydCBhIEdOVSBBcmNoIHJlcG9zaXRvcnkgaW50byBHaXQiCittc2dzdHIgIkdpdCdlIGJpciBHTlUgQXJjaCBkZXBvc3UgacOnZSBha3RhciIKKworIzogY29tbWFuZC1saXN0Lmg6NTUKK21zZ2lkICJDcmVhdGUgYW4gYXJjaGl2ZSBvZiBmaWxlcyBmcm9tIGEgbmFtZWQgdHJlZSIKK21zZ3N0ciAiQWQgdmVyaWxtacWfIGHEn2HDp3RhbiBiaXIgZG9zeWFsYXIgYXLFn2l2aSBvbHXFn3R1ciIKKworIzogY29tbWFuZC1saXN0Lmg6NTYKK21zZ2lkICJVc2UgYmluYXJ5IHNlYXJjaCB0byBmaW5kIHRoZSBjb21taXQgdGhhdCBpbnRyb2R1Y2VkIGEgYnVnIgorbXNnc3RyICJIYXRhbGFyYSBuZWRlbiBvbGFuIGfDtm5kZXJpeWkgYnVsbWFkYSBpa2lsaSBhcmFtYSBrdWxsYW4iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjU3Cittc2dpZCAiU2hvdyB3aGF0IHJldmlzaW9uIGFuZCBhdXRob3IgbGFzdCBtb2RpZmllZCBlYWNoIGxpbmUgb2YgYSBmaWxlIgorbXNnc3RyICJEb3N5YSBzYXTEsXJsYXLEsW7EsSBzb24gZGXEn2nFn3RpcmVuIHJldml6eW9uL3lhemFyxLEgZ8O2c3RlciIKKworIzogY29tbWFuZC1saXN0Lmg6NTgKK21zZ2lkICJMaXN0LCBjcmVhdGUsIG9yIGRlbGV0ZSBicmFuY2hlcyIKK21zZ3N0ciAiRGFsbGFyIG9sdcWfdHVyLCBzaWwgdmV5YSBsaXN0ZWxlIgorCisjOiBjb21tYW5kLWxpc3QuaDo1OQorbXNnaWQgIk1vdmUgb2JqZWN0cyBhbmQgcmVmcyBieSBhcmNoaXZlIgorbXNnc3RyICJOZXNuZWxlcmkgdmUgYmHFn3Z1cnVsYXLEsSBhcsWfaXZlIGfDtnJlIHRhxZ/EsSIKKworIzogY29tbWFuZC1saXN0Lmg6NjAKK21zZ2lkICJQcm92aWRlIGNvbnRlbnQgb3IgdHlwZSBhbmQgc2l6ZSBpbmZvcm1hdGlvbiBmb3IgcmVwb3NpdG9yeSBvYmplY3RzIgorbXNnc3RyICJEZXBvIG5lc25lbGVyaSBpw6dpbiBpw6dlcmlrIHZleWEgdMO8ci9ib3l1dCBiaWxnaXNpIHNhxJ9sYSIKKworIzogY29tbWFuZC1saXN0Lmg6NjEKK21zZ2lkICJEaXNwbGF5IGdpdGF0dHJpYnV0ZXMgaW5mb3JtYXRpb24iCittc2dzdHIgImdpdGF0dHJpYnV0ZXMgYmlsZ2lzaW5pIGfDtnLDvG50w7xsZSIKKworIzogY29tbWFuZC1saXN0Lmg6NjIKK21zZ2lkICJEZWJ1ZyBnaXRpZ25vcmUgLyBleGNsdWRlIGZpbGVzIgorbXNnc3RyICJnaXRpZ25vcmUgLyBleGNsdWRlIGRvc3lhbGFyxLFuZGEgaGF0YSBhecSxa2xhIgorCisjOiBjb21tYW5kLWxpc3QuaDo2MworbXNnaWQgIlNob3cgY2Fub25pY2FsIG5hbWVzIGFuZCBlbWFpbCBhZGRyZXNzZXMgb2YgY29udGFjdHMiCittc2dzdHIgIktpxZ9pbGVyaW4gYWRsYXLEsW7EsSB2ZSBlLXBvc3RhIGFkcmVzbGVyaW5pIGfDtnN0ZXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjY0Cittc2dpZCAiU3dpdGNoIGJyYW5jaGVzIG9yIHJlc3RvcmUgd29ya2luZyB0cmVlIGZpbGVzIgorbXNnc3RyICJEYWwgZGXEn2nFn3RpciB2ZXlhIMOnYWzEscWfbWEgYcSfYWPEsW7EsSBlc2tpIGhhbGluZSBnZXJpIGdldGlyIgorCisjOiBjb21tYW5kLWxpc3QuaDo2NQorbXNnaWQgIkNvcHkgZmlsZXMgZnJvbSB0aGUgaW5kZXggdG8gdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiRG9zeWFsYXLEsSBpbmRla3N0ZW4gw6dhbMSxxZ9tYSBhxJ9hY8SxbmEga29weWFsYSIKKworIzogY29tbWFuZC1saXN0Lmg6NjYKK21zZ2lkICJFbnN1cmVzIHRoYXQgYSByZWZlcmVuY2UgbmFtZSBpcyB3ZWxsIGZvcm1lZCIKK21zZ3N0ciAiQmlyIGJhxZ92dXJ1IGFkxLFuxLFuIGTDvHpnw7xuY2Ugb2x1xZ90dXJ1bGR1xJ91bmRhbiBlbWluIG9sIgorCisjOiBjb21tYW5kLWxpc3QuaDo2NworbXNnaWQgIkZpbmQgY29tbWl0cyB5ZXQgdG8gYmUgYXBwbGllZCB0byB1cHN0cmVhbSIKK21zZ3N0ciAiSGVuw7x6IMO8c3RrYXluYcSfYSB1eWd1bGFubWF5YW4gZ8O2bmRlcmlsZXJpIGJ1bCIKKworIzogY29tbWFuZC1saXN0Lmg6NjgKK21zZ2lkICJBcHBseSB0aGUgY2hhbmdlcyBpbnRyb2R1Y2VkIGJ5IHNvbWUgZXhpc3RpbmcgY29tbWl0cyIKK21zZ3N0ciAiTWV2Y3V0IGJhesSxIGfDtm5kZXJpbGVyaW4gZ2V0aXJkacSfaSBkZcSfacWfaWtsaWtsZXJpIHV5Z3VsYSIKKworIzogY29tbWFuZC1saXN0Lmg6NjkKK21zZ2lkICJHcmFwaGljYWwgYWx0ZXJuYXRpdmUgdG8gZ2l0LWNvbW1pdCIKK21zZ3N0ciAiZ2l0LWNvbW1pdCBpw6dpbiBncmFmaWsgdGFiYW5sxLEgYWx0ZXJuYXRpZiIKKworIzogY29tbWFuZC1saXN0Lmg6NzAKK21zZ2lkICJSZW1vdmUgdW50cmFja2VkIGZpbGVzIGZyb20gdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAixLB6bGVubWV5ZW4gZG9zeWFsYXLEsSDDp2FsxLHFn21hIGHEn2FjxLFuZGFuIGthbGTEsXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjcxCittc2dpZCAiQ2xvbmUgYSByZXBvc2l0b3J5IGludG8gYSBuZXcgZGlyZWN0b3J5IgorbXNnc3RyICJCaXIgZGVwb3l1IHllbmkgYmlyIGRpemluZSBrbG9ubGEiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjcyCittc2dpZCAiRGlzcGxheSBkYXRhIGluIGNvbHVtbnMiCittc2dzdHIgIlZlcmlsZXJpIHPDvHR1bmxhcmxhIGfDtnN0ZXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjczCittc2dpZCAiUmVjb3JkIGNoYW5nZXMgdG8gdGhlIHJlcG9zaXRvcnkiCittc2dzdHIgIkRlxJ9pxZ9pa2xpa2xlcmluIGtheWTEsW7EsSBkZXBveWEgeWF6IgorCisjOiBjb21tYW5kLWxpc3QuaDo3NAorbXNnaWQgIldyaXRlIGFuZCB2ZXJpZnkgR2l0IGNvbW1pdC1ncmFwaCBmaWxlcyIKK21zZ3N0ciAiR2l0IGNvbW1pdC1ncmFwaCBkb3N5YWxhcsSxbsSxIGRvxJ9ydWxhIHZlIHlheiIKKworIzogY29tbWFuZC1saXN0Lmg6NzUKK21zZ2lkICJDcmVhdGUgYSBuZXcgY29tbWl0IG9iamVjdCIKK21zZ3N0ciAiWWVuaSBiaXIgZ8O2bmRlcmkgbmVzbmVzaSBvbHXFn3R1ciIKKworIzogY29tbWFuZC1saXN0Lmg6NzYKK21zZ2lkICJHZXQgYW5kIHNldCByZXBvc2l0b3J5IG9yIGdsb2JhbCBvcHRpb25zIgorbXNnc3RyICJEZXBveXUgdmV5YSBnbG9iYWwgc2XDp2VuZWtsZXJpIGFsIHZlIGF5YXJsYSIKKworIzogY29tbWFuZC1saXN0Lmg6NzcKK21zZ2lkICJDb3VudCB1bnBhY2tlZCBudW1iZXIgb2Ygb2JqZWN0cyBhbmQgdGhlaXIgZGlzayBjb25zdW1wdGlvbiIKK21zZ3N0ciAiQcOnxLFsbWFtxLHFnyBuZXNuZSBzYXnEsXPEsW7EsSB2ZSBkaXNrIGt1bGxhbsSxbcSxbsSxIGhlc2FwbGEiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjc4Cittc2dpZCAiUmV0cmlldmUgYW5kIHN0b3JlIHVzZXIgY3JlZGVudGlhbHMiCittc2dzdHIgIkt1bGxhbsSxY8SxIHlldGtpbGVyaW5pIGFsIHZlIGRlcG9sYSIKKworIzogY29tbWFuZC1saXN0Lmg6NzkKK21zZ2lkICJIZWxwZXIgdG8gdGVtcG9yYXJpbHkgc3RvcmUgcGFzc3dvcmRzIGluIG1lbW9yeSIKK21zZ3N0ciAiUGFyb2xhbGFyxLEgZ2XDp2ljaSBvbGFyYWsgYmVsbGVrdGUgc2FrbGFtYWsgacOnaW4geWFyZMSxbWPEsSIKKworIzogY29tbWFuZC1saXN0Lmg6ODAKK21zZ2lkICJIZWxwZXIgdG8gc3RvcmUgY3JlZGVudGlhbHMgb24gZGlzayIKK21zZ3N0ciAiWWV0a2lsZXJpIGRpc2t0ZSBzYWtsYW1hayBpw6dpbiB5YXJkxLFtY8SxIgorCisjOiBjb21tYW5kLWxpc3QuaDo4MQorbXNnaWQgIkV4cG9ydCBhIHNpbmdsZSBjb21taXQgdG8gYSBDVlMgY2hlY2tvdXQiCittc2dzdHIgIkJpciBDVlMgw6fEsWvEscWfxLFuYSB0ZWsgYmlyIGfDtm5kZXJpeWkgZMSxxZ9hIGFrdGFyIgorCisjOiBjb21tYW5kLWxpc3QuaDo4MgorbXNnaWQgIlNhbHZhZ2UgeW91ciBkYXRhIG91dCBvZiBhbm90aGVyIFNDTSBwZW9wbGUgbG92ZSB0byBoYXRlIgorbXNnc3RyICJUaXNraW5kacSfaW5peiBiYcWfa2EgYmlyIEtEWSdkZW4gdmVyaWxlcmkga3VydGFyIgorCisjOiBjb21tYW5kLWxpc3QuaDo4MworbXNnaWQgIkEgQ1ZTIHNlcnZlciBlbXVsYXRvciBmb3IgR2l0IgorbXNnc3RyICJHaXQgacOnaW4gYmlyIFNDViBzdW51Y3VzdSDDtnlrw7xuw7xjw7xzw7wiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjg0Cittc2dpZCAiQSByZWFsbHkgc2ltcGxlIHNlcnZlciBmb3IgR2l0IHJlcG9zaXRvcmllcyIKK21zZ3N0ciAiR2l0IGRlcG9sYXLEsSBpw6dpbiBnZXLDp2VrdGVuIHlhbMSxbiBiaXIgc3VudWN1IgorCisjOiBjb21tYW5kLWxpc3QuaDo4NQorbXNnaWQgIkdpdmUgYW4gb2JqZWN0IGEgaHVtYW4gcmVhZGFibGUgbmFtZSBiYXNlZCBvbiBhbiBhdmFpbGFibGUgcmVmIgorbXNnc3RyICJVeWd1biBiaXIgYmHFn3Z1cnV5dSB0ZW1lbCBhbMSxcCBuZXNuZXllIG9rdW5hYmlsaXIgYWQgdmVyIgorCisjOiBjb21tYW5kLWxpc3QuaDo4NgorbXNnaWQgIlNob3cgY2hhbmdlcyBiZXR3ZWVuIGNvbW1pdHMsIGNvbW1pdCBhbmQgd29ya2luZyB0cmVlLCBldGMiCittc2dzdHIgIkfDtm5kZXJpbGVyLCBnw7ZuZGVyaSB2ZSBhxJ9hw6dsYXIgdmIuIGFyYXPEsSBkZcSfacWfaWtsaWtsZXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjg3Cittc2dpZCAiQ29tcGFyZXMgZmlsZXMgaW4gdGhlIHdvcmtpbmcgdHJlZSBhbmQgdGhlIGluZGV4IgorbXNnc3RyICLEsG5kZWtzdGVraSB2ZSDDp2FsxLHFn21hIGHEn2FjxLFuZGFraSBkb3N5YWxhcsSxIHPEsWvEscWfdMSxciIKKworIzogY29tbWFuZC1saXN0Lmg6ODgKK21zZ2lkICJDb21wYXJlIGEgdHJlZSB0byB0aGUgd29ya2luZyB0cmVlIG9yIGluZGV4IgorbXNnc3RyICJCaXIgYcSfYWPEsSDDp2FsxLHFn21hIGHEn2FjxLEgdmV5YSBpbmRla3MgaWxlIGthcsWfxLFsYcWfdMSxciIKKworIzogY29tbWFuZC1saXN0Lmg6ODkKK21zZ2lkICJDb21wYXJlcyB0aGUgY29udGVudCBhbmQgbW9kZSBvZiBibG9icyBmb3VuZCB2aWEgdHdvIHRyZWUgb2JqZWN0cyIKK21zZ3N0ciAiIgorIsSwa2kgYcSfYcOnIG5lc25lc2kgaWxlIGJ1bHVuYW4gaWtpbGlsZXJpbiBpw6dlcmlrIHZlIGtpcGxlcmluaSBrYXLFn8SxbGHFn3TEsXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjkwCittc2dpZCAiU2hvdyBjaGFuZ2VzIHVzaW5nIGNvbW1vbiBkaWZmIHRvb2xzIgorbXNnc3RyICJEZcSfacWfaWtsaWtsZXJpIHlheWfEsW4gZGlmZiBhcmHDp2xhcsSxeWxhIGfDtnN0ZXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjkxCittc2dpZCAiR2l0IGRhdGEgZXhwb3J0ZXIiCittc2dzdHIgIkdpdCB2ZXJpIGTEscWfYSBha3RhcsSxY8Sxc8SxIgorCisjOiBjb21tYW5kLWxpc3QuaDo5MgorbXNnaWQgIkJhY2tlbmQgZm9yIGZhc3QgR2l0IGRhdGEgaW1wb3J0ZXJzIgorbXNnc3RyICJIxLF6bMSxIEdpdCB2ZXJpIGTEscWfYSBha3RhcsSxY8SxbGFyxLEgacOnaW4gYXJrYSB1w6ciCisKKyM6IGNvbW1hbmQtbGlzdC5oOjkzCittc2dpZCAiRG93bmxvYWQgb2JqZWN0cyBhbmQgcmVmcyBmcm9tIGFub3RoZXIgcmVwb3NpdG9yeSIKK21zZ3N0ciAiQmHFn2thIGJpciBkZXBvZGFuIG5lc25lbGVyaSB2ZSBiYcWfdnVydWxhcsSxIGluZGlyIgorCisjOiBjb21tYW5kLWxpc3QuaDo5NAorbXNnaWQgIlJlY2VpdmUgbWlzc2luZyBvYmplY3RzIGZyb20gYW5vdGhlciByZXBvc2l0b3J5IgorbXNnc3RyICJCYcWfa2EgYmlyIGRlcG9kYW4gZWtzaWsgbmVzbmVsZXJpIGFsIgorCisjOiBjb21tYW5kLWxpc3QuaDo5NQorbXNnaWQgIlJld3JpdGUgYnJhbmNoZXMiCittc2dzdHIgIkRhbGxhcsSxIHllbmlkZW4geWF6IgorCisjOiBjb21tYW5kLWxpc3QuaDo5NgorbXNnaWQgIlByb2R1Y2UgYSBtZXJnZSBjb21taXQgbWVzc2FnZSIKK21zZ3N0ciAiQmlyIGJpcmxlxZ90aXJtZSBnw7ZuZGVyaXNpIGlsZXRpc2kgb2x1xZ90dXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjk3Cittc2dpZCAiT3V0cHV0IGluZm9ybWF0aW9uIG9uIGVhY2ggcmVmIgorbXNnc3RyICJIZXIgYmHFn3Z1cnUgw7x6ZXJpbmUgYmlsZ2kgw6fEsWt0xLEgdmVyIgorCisjOiBjb21tYW5kLWxpc3QuaDo5OAorbXNnaWQgIlByZXBhcmUgcGF0Y2hlcyBmb3IgZS1tYWlsIHN1Ym1pc3Npb24iCittc2dzdHIgIkUtcG9zdGEgdGVzbGltaSBpw6dpbiB5YW1hbGFyxLEgaGF6xLFybGEiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjk5Cittc2dpZCAiVmVyaWZpZXMgdGhlIGNvbm5lY3Rpdml0eSBhbmQgdmFsaWRpdHkgb2YgdGhlIG9iamVjdHMgaW4gdGhlIGRhdGFiYXNlIgorbXNnc3RyICJWZXJpdGFiLiBuZXNuZWxlcmluIGJhxJ9sYW7EsXJsxLHEn8SxbsSxIHZlIGdlw6dlcmxpbGnEn2luaSBzxLFuYSIKKworIzogY29tbWFuZC1saXN0Lmg6MTAwCittc2dpZCAiQ2xlYW51cCB1bm5lY2Vzc2FyeSBmaWxlcyBhbmQgb3B0aW1pemUgdGhlIGxvY2FsIHJlcG9zaXRvcnkiCittc2dzdHIgIkdlcmVrc2l6IGRvc3lhbGFyxLEgdGVtaXpsZSB2ZSB5ZXJlbCBkZXBveXUgZW5peWlsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTAxCittc2dpZCAiRXh0cmFjdCBjb21taXQgSUQgZnJvbSBhbiBhcmNoaXZlIGNyZWF0ZWQgdXNpbmcgZ2l0LWFyY2hpdmUiCittc2dzdHIgIkfDtm5kZXJpIGlsZXRpc2luaSBiaXIgZ2l0LWFyY2hpdmUgYXLFn2l2aW5kZW4gw6fEsWthcnTEsXAgYWwiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEwMgorbXNnaWQgIlByaW50IGxpbmVzIG1hdGNoaW5nIGEgcGF0dGVybiIKK21zZ3N0ciAiQmlyIGRpemdpIGlsZSBlxZ9sZcWfZW4gc2F0xLFybGFyxLEgeWF6ZMSxciIKKworIzogY29tbWFuZC1saXN0Lmg6MTAzCittc2dpZCAiQSBwb3J0YWJsZSBncmFwaGljYWwgaW50ZXJmYWNlIHRvIEdpdCIKK21zZ3N0ciAiR2l0IGnDp2luIHRhxZ/EsW5hYmlsaXIgYmlyIGdyYWZpayBhcmFiaXJpbSIKKworIzogY29tbWFuZC1saXN0Lmg6MTA0Cittc2dpZCAiQ29tcHV0ZSBvYmplY3QgSUQgYW5kIG9wdGlvbmFsbHkgY3JlYXRlcyBhIGJsb2IgZnJvbSBhIGZpbGUiCittc2dzdHIgIlNhxJ9sYW1hecSxIGhlc2FwbGEgdmUgaXN0ZcSfZSBnw7ZyZSBkb3N5YWRhbiBpa2lsaSBvbHXFn3R1ciIKKworIzogY29tbWFuZC1saXN0Lmg6MTA1Cittc2dpZCAiRGlzcGxheSBoZWxwIGluZm9ybWF0aW9uIGFib3V0IEdpdCIKK21zZ3N0ciAiR2l0IHlhcmTEsW0gYmlsZ2lzaW5pIGfDtnLDvG50w7xsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTA2Cittc2dpZCAiU2VydmVyIHNpZGUgaW1wbGVtZW50YXRpb24gb2YgR2l0IG92ZXIgSFRUUCIKK21zZ3N0ciAiR2l0J2luIEhUVFAgw7x6ZXJpbmRlbiBzdW51Y3UgdGFyYWbEsSB1eWd1bGFtYXPEsSIKKworIzogY29tbWFuZC1saXN0Lmg6MTA3Cittc2dpZCAiRG93bmxvYWQgZnJvbSBhIHJlbW90ZSBHaXQgcmVwb3NpdG9yeSB2aWEgSFRUUCIKK21zZ3N0ciAiSFRUUCDDvHplcmluZGVuIHV6YWsgYmlyIEdpdCBkZXBvc3VuZGFuIGluZGlyIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMDgKK21zZ2lkICJQdXNoIG9iamVjdHMgb3ZlciBIVFRQL0RBViB0byBhbm90aGVyIHJlcG9zaXRvcnkiCittc2dzdHIgIk5lc25lbGVyaSBIVFRQL0RBViDDvHplcmluZGVuIGJhxZ9rYSBiaXIgZGVwb3lhIGl0IgorCisjOiBjb21tYW5kLWxpc3QuaDoxMDkKK21zZ2lkICJTZW5kIGEgY29sbGVjdGlvbiBvZiBwYXRjaGVzIGZyb20gc3RkaW4gdG8gYW4gSU1BUCBmb2xkZXIiCittc2dzdHIgInN0ZGluJ2RlbiBiaXIgSU1BUCBrbGFzw7Zyw7xuZSBiaXIgeWFtYSBkZXJsZW1lc2kgZ8O2bmRlciIKKworIzogY29tbWFuZC1saXN0Lmg6MTEwCittc2dpZCAiQnVpbGQgcGFjayBpbmRleCBmaWxlIGZvciBhbiBleGlzdGluZyBwYWNrZWQgYXJjaGl2ZSIKK21zZ3N0ciAiTWV2Y3V0IHBha2V0bGkgYmlyIGFyxZ9pdiBpw6dpbiBwYWtldCBpbmRla3MgZG9zeWFzxLEgeWFwIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTEKK21zZ2lkICJDcmVhdGUgYW4gZW1wdHkgR2l0IHJlcG9zaXRvcnkgb3IgcmVpbml0aWFsaXplIGFuIGV4aXN0aW5nIG9uZSIKK21zZ3N0ciAiQm/FnyBiaXIgR2l0IGRlcG9zdSBvbHXFn3R1ciB2ZXlhIHZhciBvbGFuxLEgeWVuaWRlbiBiYcWfbGF0IgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTIKK21zZ2lkICJJbnN0YW50bHkgYnJvd3NlIHlvdXIgd29ya2luZyByZXBvc2l0b3J5IGluIGdpdHdlYiIKK21zZ3N0ciAiZ2l0d2ViJ2Rla2kgw6dhbMSxxZ9tYSBkZXBvc3VuYSBhbsSxbmRhIGfDtnogYXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExMworbXNnaWQgIkFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKK21zZ3N0ciAiR8O2bmRlcmkgaWxldGlsZXJpbmUgZMO8emVubGkgYmlsZ2kgZWtsZSB2ZXlhIGF5csSxxZ90xLFyIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTQKK21zZ2lkICJUaGUgR2l0IHJlcG9zaXRvcnkgYnJvd3NlciIKK21zZ3N0ciAiR2l0IGRlcG8gdGFyYXnEsWPEsXPEsSIKKworIzogY29tbWFuZC1saXN0Lmg6MTE1Cittc2dpZCAiU2hvdyBjb21taXQgbG9ncyIKK21zZ3N0ciAiR8O2bmRlcmkgZ8O8bmzDvGtsZXJpbmkgZ8O2c3RlciIKKworIzogY29tbWFuZC1saXN0Lmg6MTE2Cittc2dpZCAiU2hvdyBpbmZvcm1hdGlvbiBhYm91dCBmaWxlcyBpbiB0aGUgaW5kZXggYW5kIHRoZSB3b3JraW5nIHRyZWUiCittc2dzdHIgIsSwbmRla3MgdmUgw6dhbMSxxZ9tYSBhxJ9hY8SxbmRha2kgZG9zeWEgYmlsZ2lsZXJpbmkgZ8O2c3RlciIKKworIzogY29tbWFuZC1saXN0Lmg6MTE3Cittc2dpZCAiTGlzdCByZWZlcmVuY2VzIGluIGEgcmVtb3RlIHJlcG9zaXRvcnkiCittc2dzdHIgIlV6YWsgYmlyIGRlcG9kYWtpIGJhxZ92dXJ1bGFyxLEgbGlzdGVsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTE4Cittc2dpZCAiTGlzdCB0aGUgY29udGVudHMgb2YgYSB0cmVlIG9iamVjdCIKK21zZ3N0ciAiQmlyIGHEn2HDpyBuZXNuZXNpbmluIGnDp2VyacSfaW5pIGxpc3RlbGUiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExOQorbXNnaWQgIkV4dHJhY3RzIHBhdGNoIGFuZCBhdXRob3JzaGlwIGZyb20gYSBzaW5nbGUgZS1tYWlsIG1lc3NhZ2UiCittc2dzdHIgIkUtcG9zdGEgaWxldGlzaW5kZW4geWFtYSB2ZSB5YXphciBiaWxnaXNpbmkgw6fEsWthcnQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEyMAorbXNnaWQgIlNpbXBsZSBVTklYIG1ib3ggc3BsaXR0ZXIgcHJvZ3JhbSIKK21zZ3N0ciAiWWFsxLFuIFVOSVggbWJveCBiw7Zsw7xjw7wgeWF6xLFsxLFtxLEiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEyMQorbXNnaWQgIkpvaW4gdHdvIG9yIG1vcmUgZGV2ZWxvcG1lbnQgaGlzdG9yaWVzIHRvZ2V0aGVyIgorbXNnc3RyICLEsGtpIHZleWEgZGFoYSBmYXpsYSBnZWxpxZ90aXJtZSBnZcOnbWnFn2luaSBiaXJsZcWfdGlyIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMjIKK21zZ2lkICJGaW5kIGFzIGdvb2QgY29tbW9uIGFuY2VzdG9ycyBhcyBwb3NzaWJsZSBmb3IgYSBtZXJnZSIKK21zZ3N0ciAiQmlybGXFn3Rpcm1lIGnDp2luIG9sYWJpbGRpxJ9pbmNlIGVuIGl5aSBvcnRhayBhdGFsYXLEsSBidWwiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEyMworbXNnaWQgIlJ1biBhIHRocmVlLXdheSBmaWxlIG1lcmdlIgorbXNnc3RyICJCaXIgw7zDpyB5w7ZubMO8IGRvc3lhIGJpcmxlxZ90aXJtZXNpIMOnYWzEscWfdMSxciIKKworIzogY29tbWFuZC1saXN0Lmg6MTI0Cittc2dpZCAiUnVuIGEgbWVyZ2UgZm9yIGZpbGVzIG5lZWRpbmcgbWVyZ2luZyIKK21zZ3N0ciAiQmlybGXFn3RpcmlsbWVzaSBnZXJla2VuIGRvc3lhbGFyxLEgYmlybGXFn3RpciIKKworIzogY29tbWFuZC1saXN0Lmg6MTI1Cittc2dpZCAiVGhlIHN0YW5kYXJkIGhlbHBlciBwcm9ncmFtIHRvIHVzZSB3aXRoIGdpdC1tZXJnZS1pbmRleCIKK21zZ3N0ciAiQnUgeWFyZMSxbWPEsSBwcm9ncmFtIGdpdC1tZXJnZS1pbmRleCBrdWxsYW7EsW3EsSBpw6dpbmRpciIKKworIzogY29tbWFuZC1saXN0Lmg6MTI2Cittc2dpZCAiUnVuIG1lcmdlIGNvbmZsaWN0IHJlc29sdXRpb24gdG9vbHMgdG8gcmVzb2x2ZSBtZXJnZSBjb25mbGljdHMiCittc2dzdHIgIsOHYWvEscWfbWFsYXLEsSDDp8O2em1layBpw6dpbiDDp8O2esO8bSBhcmHDp2xhcsSxbsSxIMOnYWzEscWfdMSxciIKKworIzogY29tbWFuZC1saXN0Lmg6MTI3Cittc2dpZCAiU2hvdyB0aHJlZS13YXkgbWVyZ2Ugd2l0aG91dCB0b3VjaGluZyBpbmRleCIKK21zZ3N0ciAixLBuZGVrc2UgZG9rdW5tYWRhbiDDvMOnbMO8IGJpcmxlxZ90aXJtZXlpIGfDtnN0ZXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEyOAorbXNnaWQgIldyaXRlIGFuZCB2ZXJpZnkgbXVsdGktcGFjay1pbmRleGVzIgorbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4IGRvxJ9ydWxhIHZlIHlheiIKKworIzogY29tbWFuZC1saXN0Lmg6MTI5Cittc2dpZCAiQ3JlYXRlcyBhIHRhZyBvYmplY3QiCittc2dzdHIgIkJpciBldGlrZXQgbmVzbmVzaSBvbHXFn3R1ciIKKworIzogY29tbWFuZC1saXN0Lmg6MTMwCittc2dpZCAiQnVpbGQgYSB0cmVlLW9iamVjdCBmcm9tIGxzLXRyZWUgZm9ybWF0dGVkIHRleHQiCittc2dzdHIgImxzLXRyZWUgYmnDp2ltbGkgbWV0aW5kZW4gYmlyIGHEn2HDpyBuZXNuZXNpIHlhcCIKKworIzogY29tbWFuZC1saXN0Lmg6MTMxCittc2dpZCAiTW92ZSBvciByZW5hbWUgYSBmaWxlLCBhIGRpcmVjdG9yeSwgb3IgYSBzeW1saW5rIgorbXNnc3RyICJEb3N5YSwgZGl6aW4gdmV5YSBzZW1ib2xpayBiYcSfbGFyxLEgdGHFn8SxL3llbmlkZW4gYWRsYW5kxLFyIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzIKK21zZ2lkICJGaW5kIHN5bWJvbGljIG5hbWVzIGZvciBnaXZlbiByZXZzIgorbXNnc3RyICJWZXJpbGVuIHJldml6eW9ubGFyIGnDp2luIHNlbWJvbGlrIGFkbGFyxLEgYnVsIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzMKK21zZ2lkICJBZGQgb3IgaW5zcGVjdCBvYmplY3Qgbm90ZXMiCittc2dzdHIgIk5lc25lIG5vdGxhcsSxIGVrbGUgdmV5YSBpbmNlbGUiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzNAorbXNnaWQgIkltcG9ydCBmcm9tIGFuZCBzdWJtaXQgdG8gUGVyZm9yY2UgcmVwb3NpdG9yaWVzIgorbXNnc3RyICJQZXJmb3JjZSBkZXBvbGFyxLFuZGFuIGnDp2UgYWt0YXIgdmUgb25sYXJhIGfDtm5kZXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzNQorbXNnaWQgIkNyZWF0ZSBhIHBhY2tlZCBhcmNoaXZlIG9mIG9iamVjdHMiCittc2dzdHIgIlBha2V0bGVubWnFnyBiaXIgbmVzbmUgYXLFn2l2aSBvbHXFn3R1ciIKKworIzogY29tbWFuZC1saXN0Lmg6MTM2Cittc2dpZCAiRmluZCByZWR1bmRhbnQgcGFjayBmaWxlcyIKK21zZ3N0ciAiR2VyZWtzaXogcGFrZXQgZG9zeWFsYXLEsW7EsSBidWwiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzNworbXNnaWQgIlBhY2sgaGVhZHMgYW5kIHRhZ3MgZm9yIGVmZmljaWVudCByZXBvc2l0b3J5IGFjY2VzcyIKK21zZ3N0ciAiRXRraWxpIGRlcG8gZXJpxZ9pbWkgacOnaW4gZGFsIHXDp2xhcsSxIHZlIGV0aWtldGxlciBwYWtldGxlIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzgKK21zZ2lkICJSb3V0aW5lcyB0byBoZWxwIHBhcnNpbmcgcmVtb3RlIHJlcG9zaXRvcnkgYWNjZXNzIHBhcmFtZXRlcnMiCittc2dzdHIgIlV6YWsgZGVwbyBlcmnFn2ltIHBhcmFtZXRyZWxlcmluaSBheXLEscWfdMSxcm1heWEgeWFyZMSxbWPEsSBydXRpbmxlciIKKworIzogY29tbWFuZC1saXN0Lmg6MTM5Cittc2dpZCAiQ29tcHV0ZSB1bmlxdWUgSUQgZm9yIGEgcGF0Y2giCittc2dzdHIgIkJpciB5YW1hIGnDp2luIGXFn2kgb2xtYXlhbiBudW1hcmEgaGVzYXBsYSIKKworIzogY29tbWFuZC1saXN0Lmg6MTQwCittc2dpZCAiUHJ1bmUgYWxsIHVucmVhY2hhYmxlIG9iamVjdHMgZnJvbSB0aGUgb2JqZWN0IGRhdGFiYXNlIgorbXNnc3RyICJVbGHFn8SxbGFtYXlhbiB0w7xtIG5lc25lbGVyaSBuZXNuZSB2ZXJpdGFiYW7EsW5kYW4gYnVkYSIKKworIzogY29tbWFuZC1saXN0Lmg6MTQxCittc2dpZCAiUmVtb3ZlIGV4dHJhIG9iamVjdHMgdGhhdCBhcmUgYWxyZWFkeSBpbiBwYWNrIGZpbGVzIgorbXNnc3RyICJIYWxpaGF6xLFyZGEgcGFrZXQgZG9zeWFsYXLEsW5kYSBvbGFuIGVrIG5lc25lbGVyaSBrYWxkxLFyIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDIKK21zZ2lkICJGZXRjaCBmcm9tIGFuZCBpbnRlZ3JhdGUgd2l0aCBhbm90aGVyIHJlcG9zaXRvcnkgb3IgYSBsb2NhbCBicmFuY2giCittc2dzdHIgIkJhxZ9rYSBiaXIgZGVwbyB2ZXlhIHllcmVsIGRhbGRhbiBnZXRpciB2ZSBlbnRlZ3JlIGV0IgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDMKK21zZ2lkICJVcGRhdGUgcmVtb3RlIHJlZnMgYWxvbmcgd2l0aCBhc3NvY2lhdGVkIG9iamVjdHMiCittc2dzdHIgIsSwbGnFn2tpbiBuZXNuZWxlcmxlIGJpcmxpa3RlIHV6YWsgYmHFn3Z1cnVsYXLEsSBkYSBnw7xuY2VsbGUiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE0NAorbXNnaWQgIkFwcGxpZXMgYSBxdWlsdCBwYXRjaHNldCBvbnRvIHRoZSBjdXJyZW50IGJyYW5jaCIKK21zZ3N0ciAiR2XDp2VybGkgZGFsYSBiaXIgXCJRdWlsdFwiIHlhbWEgc2V0aSB1eWd1bGEiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE0NQorbXNnaWQgIkNvbXBhcmUgdHdvIGNvbW1pdCByYW5nZXMgKGUuZy4gdHdvIHZlcnNpb25zIG9mIGEgYnJhbmNoKSIKK21zZ3N0ciAixLBraSBnw7ZuZGVyaSBlcmltaW5pIGthcsWfxLFsYcWfdMSxciAoYmlyIGRhbMSxbiBpa2kgc8O8csO8bcO8KSIKKworIzogY29tbWFuZC1saXN0Lmg6MTQ2Cittc2dpZCAiUmVhZHMgdHJlZSBpbmZvcm1hdGlvbiBpbnRvIHRoZSBpbmRleCIKK21zZ3N0ciAiQcSfYcOnIGJpbGdpc2luaSBpbmRla3NlIG9rdXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE0NworbXNnaWQgIlJlYXBwbHkgY29tbWl0cyBvbiB0b3Agb2YgYW5vdGhlciBiYXNlIHRpcCIKK21zZ3N0ciAiR8O2bmRlcmlsZXJpIGJhxZ9rYSBiaXIgdGVtZWwgdWN1IMO8emVyaW5lIHV5Z3VsYSIKKworIzogY29tbWFuZC1saXN0Lmg6MTQ4Cittc2dpZCAiUmVjZWl2ZSB3aGF0IGlzIHB1c2hlZCBpbnRvIHRoZSByZXBvc2l0b3J5IgorbXNnc3RyICJEZXBveWEgbmUgaXRpbGRpeXNlIGFsIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDkKK21zZ2lkICJNYW5hZ2UgcmVmbG9nIGluZm9ybWF0aW9uIgorbXNnc3RyICJCYcWfdnVydSBnw7xubMO8xJ/DvCBiaWxnaXNpbmkgecO2bmV0IgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTAKK21zZ2lkICJNYW5hZ2Ugc2V0IG9mIHRyYWNrZWQgcmVwb3NpdG9yaWVzIgorbXNnc3RyICLEsHpsZW5lbiBkZXBvbGFyIHNldGluaSB5w7ZuZXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE1MQorbXNnaWQgIlBhY2sgdW5wYWNrZWQgb2JqZWN0cyBpbiBhIHJlcG9zaXRvcnkiCittc2dzdHIgIkJpciBkZXBvZGFraSBwYWtldGxlbm1lbWnFnyBuZXNuZWxlcmkgcGFrZXRsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTUyCittc2dpZCAiQ3JlYXRlLCBsaXN0LCBkZWxldGUgcmVmcyB0byByZXBsYWNlIG9iamVjdHMiCittc2dzdHIgIk5lc25lIGRlxJ9pxZ90aXJtZWsgacOnaW4gYmHFn3Z1cnVsYXIgb2x1xZ90dXIsIHNpbCwgbGlzdGVsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTUzCittc2dpZCAiR2VuZXJhdGVzIGEgc3VtbWFyeSBvZiBwZW5kaW5nIGNoYW5nZXMiCittc2dzdHIgIkJla2xleWVuIGRlxJ9pxZ9pa2xpa2xlcmluIGJpciDDtnpldGluaSDDp8Sxa2FydCIKKworIzogY29tbWFuZC1saXN0Lmg6MTU0Cittc2dpZCAiUmV1c2UgcmVjb3JkZWQgcmVzb2x1dGlvbiBvZiBjb25mbGljdGVkIG1lcmdlcyIKK21zZ3N0ciAiw4dha8SxxZ9hbiBiaXJsZcWfdGlybWVsZXJpbiBrYXnEsXRsxLEgw6fDtnrDvG1sZXJpbmkgeWVuLiBrdWxsYW4iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE1NQorbXNnaWQgIlJlc2V0IGN1cnJlbnQgSEVBRCB0byB0aGUgc3BlY2lmaWVkIHN0YXRlIgorbXNnc3RyICJHZcOnZXJsaSBIRUFEJ2kgYmVsaXJ0aWxlbiBkdXJ1bWEgc8SxZsSxcmxhIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTYKK21zZ2lkICJSZXN0b3JlIHdvcmtpbmcgdHJlZSBmaWxlcyIKK21zZ3N0ciAiw4dhbMSxxZ9tYSBhxJ9hY8SxIGRvc3lhbGFyxLFuxLEgZXNraSBkdXJ1bXVuYSBnZXRpciIKKworIzogY29tbWFuZC1saXN0Lmg6MTU3Cittc2dpZCAiUmV2ZXJ0IHNvbWUgZXhpc3RpbmcgY29tbWl0cyIKK21zZ3N0ciAiQmF6xLEgdmFyIG9sYW4gZ8O2bmRlcmlsZXJpIGdlcmkgYWwiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE1OAorbXNnaWQgIkxpc3RzIGNvbW1pdCBvYmplY3RzIGluIHJldmVyc2UgY2hyb25vbG9naWNhbCBvcmRlciIKK21zZ3N0ciAiR8O2bmRlcmkgbmVzbmVsZXJpbmkgdGVycyBrcm9ub2xvamlrIHPEsXJhZGEgbGlzdGVsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTU5Cittc2dpZCAiUGljayBvdXQgYW5kIG1hc3NhZ2UgcGFyYW1ldGVycyIKK21zZ3N0ciAiUGFyYW1ldHJlbGVyaSBhbCB2ZSDDvHplcmluZGUgw6dhbMSxxZ8iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MAorbXNnaWQgIlJlbW92ZSBmaWxlcyBmcm9tIHRoZSB3b3JraW5nIHRyZWUgYW5kIGZyb20gdGhlIGluZGV4IgorbXNnc3RyICJEb3N5YWxhcsSxIMOnYWzEscWfbWEgYcSfYWPEsW5kYW4gdmUgaW5kZWtzdGVuIGthbGTEsXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MQorbXNnaWQgIlNlbmQgYSBjb2xsZWN0aW9uIG9mIHBhdGNoZXMgYXMgZW1haWxzIgorbXNnc3RyICJCaXIgeWFtYSBkZXJsZW1lc2luaSBlLXBvc3RhIG9sYXJhayBnw7ZuZGVyIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjIKK21zZ2lkICJQdXNoIG9iamVjdHMgb3ZlciBHaXQgcHJvdG9jb2wgdG8gYW5vdGhlciByZXBvc2l0b3J5IgorbXNnc3RyICJOZXNuZWxlcmkgR2l0IHByb3Rva29sw7wgw7x6ZXJpbmRlbiBiYcWfa2EgYmlyIGRlcG95YSBpdCIKKworIzogY29tbWFuZC1saXN0Lmg6MTYzCittc2dpZCAiUmVzdHJpY3RlZCBsb2dpbiBzaGVsbCBmb3IgR2l0LW9ubHkgU1NIIGFjY2VzcyIKK21zZ3N0ciAiWWFsbsSxemNhIEdpdCBTU0ggZXJpxZ9pbWkgacOnaW4ga8Sxc8SxdGxhbmTEsXLEsWxtxLHFnyBvdHVydW0gYcOnbWEga2FidcSfdSIKKworIzogY29tbWFuZC1saXN0Lmg6MTY0Cittc2dpZCAiU3VtbWFyaXplICdnaXQgbG9nJyBvdXRwdXQiCittc2dzdHIgIidnaXQgbG9nJyDDp8Sxa3TEsXPEsW7EsSDDtnpldGxlIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjUKK21zZ2lkICJTaG93IHZhcmlvdXMgdHlwZXMgb2Ygb2JqZWN0cyIKK21zZ3N0ciAiw4dlxZ9pdGxpIHTDvHJkZSBuZXNuZWxlcmkgZ8O2c3RlciIKKworIzogY29tbWFuZC1saXN0Lmg6MTY2Cittc2dpZCAiU2hvdyBicmFuY2hlcyBhbmQgdGhlaXIgY29tbWl0cyIKK21zZ3N0ciAiRGFsbGFyxLEgdmUgb25sYXLEsW4gZ8O2bmRlcmlsZXJpbmkgZ8O2c3RlciIKKworIzogY29tbWFuZC1saXN0Lmg6MTY3Cittc2dpZCAiU2hvdyBwYWNrZWQgYXJjaGl2ZSBpbmRleCIKK21zZ3N0ciAiUGFrZXRsZW5tacWfIGFyxZ9pdiBpbmRla3NpbmkgZ8O2c3RlciIKKworIzogY29tbWFuZC1saXN0Lmg6MTY4Cittc2dpZCAiTGlzdCByZWZlcmVuY2VzIGluIGEgbG9jYWwgcmVwb3NpdG9yeSIKK21zZ3N0ciAiWWVyZWwgYmlyIGRlcG9kYWtpIGJhxZ92dXJ1bGFyxLEgbGlzdGVsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTY5Cittc2dpZCAiR2l0J3MgaTE4biBzZXR1cCBjb2RlIGZvciBzaGVsbCBzY3JpcHRzIgorbXNnc3RyICJLYWJ1ayBiZXRpa2xlcmkgacOnaW4gR2l0J2luIGkxOG4ga3VydWx1bSBrb2R1IgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzAKK21zZ2lkICJDb21tb24gR2l0IHNoZWxsIHNjcmlwdCBzZXR1cCBjb2RlIgorbXNnc3RyICJPcnRhayBHaXQga2FidWsgYmV0acSfaSBrdXJ1bHVtIGtvZHUiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MQorbXNnaWQgIkluaXRpYWxpemUgYW5kIG1vZGlmeSB0aGUgc3BhcnNlLWNoZWNrb3V0IgorbXNnc3RyICJBcmFsxLFrbMSxIMOnxLFrxLHFn8SxIGlsa2xlbmRpciB2ZSBnw7xuY2VsbGUiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MgorbXNnaWQgIlN0YXNoIHRoZSBjaGFuZ2VzIGluIGEgZGlydHkgd29ya2luZyBkaXJlY3RvcnkgYXdheSIKK21zZ3N0ciAiS2lybGkgYmlyIMOnYWzEscWfbWEgZGl6aW5pbmRla2kgZGXEn2nFn2lrbGlrbGVyaSB6dWxhbGEiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MworbXNnaWQgIkFkZCBmaWxlIGNvbnRlbnRzIHRvIHRoZSBzdGFnaW5nIGFyZWEiCittc2dzdHIgIkRvc3lhIGnDp2VyacSfaW5pIGhhesSxcmxhbWEgYWxhbsSxbmEgZWtsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTc0Cittc2dpZCAiU2hvdyB0aGUgd29ya2luZyB0cmVlIHN0YXR1cyIKK21zZ3N0ciAiw4dhbMSxxZ9tYSBhxJ9hY8SxIGR1cnVtdW51IGfDtnN0ZXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NQorbXNnaWQgIlJlbW92ZSB1bm5lY2Vzc2FyeSB3aGl0ZXNwYWNlIgorbXNnc3RyICJHZXJla3NpeiBib8WfbHVrbGFyxLEga2FsZMSxciIKKworIzogY29tbWFuZC1saXN0Lmg6MTc2Cittc2dpZCAiSW5pdGlhbGl6ZSwgdXBkYXRlIG9yIGluc3BlY3Qgc3VibW9kdWxlcyIKK21zZ3N0ciAiQWx0bW9kw7xsbGVyaSBpbGtsZW5kaXIsIGfDvG5jZWxsZSB2ZXlhIGluY2VsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTc3Cittc2dpZCAiQmlkaXJlY3Rpb25hbCBvcGVyYXRpb24gYmV0d2VlbiBhIFN1YnZlcnNpb24gcmVwb3NpdG9yeSBhbmQgR2l0IgorbXNnc3RyICJCaXIgU3VidmVyc2lvbiB2ZSBHaXQgZGVwb3N1IGFyYXPEsW5kYSBpa2kgecO2bmzDvCBpxZ9sZW1sZXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3OAorbXNnaWQgIlN3aXRjaCBicmFuY2hlcyIKK21zZ3N0ciAiRGFsIGRlxJ9pxZ90aXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3OQorbXNnaWQgIlJlYWQsIG1vZGlmeSBhbmQgZGVsZXRlIHN5bWJvbGljIHJlZnMiCittc2dzdHIgIlNlbWJvbGlrIGJhxZ92dXJ1bGFyxLEgb2t1LCBkw7x6ZW5sZSB2ZSBzaWwiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MAorbXNnaWQgIkNyZWF0ZSwgbGlzdCwgZGVsZXRlIG9yIHZlcmlmeSBhIHRhZyBvYmplY3Qgc2lnbmVkIHdpdGggR1BHIgorbXNnc3RyICJHUEcgaW16YWzEsSBiaXIgZXRpa2V0IG9sdcWfdHVyLCBzaWwsIGxpc3RlbGUgdmV5YSBkb8SfcnVsYSIKKworIzogY29tbWFuZC1saXN0Lmg6MTgxCittc2dpZCAiQ3JlYXRlcyBhIHRlbXBvcmFyeSBmaWxlIHdpdGggYSBibG9iJ3MgY29udGVudHMiCittc2dzdHIgIkJpciBpa2lsaSBuZXNuZW5pbiBpw6dlcmnEn2kgaWxlIGdlw6dpY2kgYmlyIGRvc3lhIG9sdcWfdHVyIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODIKK21zZ2lkICJVbnBhY2sgb2JqZWN0cyBmcm9tIGEgcGFja2VkIGFyY2hpdmUiCittc2dzdHIgIlBha2V0bGVubWnFnyBiaXIgYXLFn2l2ZGVuIG5lc25lbGVyaSDDp8Sxa2FyIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODMKK21zZ2lkICJSZWdpc3RlciBmaWxlIGNvbnRlbnRzIGluIHRoZSB3b3JraW5nIHRyZWUgdG8gdGhlIGluZGV4IgorbXNnc3RyICLDh2FsxLHFn21hIGHEn2FjxLFuZGFraSBkb3N5YSBpw6dlcmnEn2luaSBpbmRla3NlIGtheWRldCIKKworIzogY29tbWFuZC1saXN0Lmg6MTg0Cittc2dpZCAiVXBkYXRlIHRoZSBvYmplY3QgbmFtZSBzdG9yZWQgaW4gYSByZWYgc2FmZWx5IgorbXNnc3RyICJHw7x2ZW5saWNlIGJpciBiYcWfdnVydWRhIGRlcG9sYW5hbiBuZXNuZSBhZMSxbsSxIGfDvG5jZWxsZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTg1Cittc2dpZCAiVXBkYXRlIGF1eGlsaWFyeSBpbmZvIGZpbGUgdG8gaGVscCBkdW1iIHNlcnZlcnMiCittc2dzdHIgIiIKKyJQcm9ncmFtbGFuYW1heWFuIHN1bnVjdWxhcmEgZGVzdGVrIGnDp2luIHlhcmTEsW1jxLEgdmVyaSBkb3N5YXPEsW7EsSBnw7xuY2VsbGUiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE4NgorbXNnaWQgIlNlbmQgYXJjaGl2ZSBiYWNrIHRvIGdpdC1hcmNoaXZlIgorbXNnc3RyICJBcsWfaXZpIGdpdC1hcmNoaXZlJ2UgZ2VyaSBnw7ZuZGVyIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODcKK21zZ2lkICJTZW5kIG9iamVjdHMgcGFja2VkIGJhY2sgdG8gZ2l0LWZldGNoLXBhY2siCittc2dzdHIgIk5lc25lbGVyaSBnaXQtZmV0Y2gtcGFjaydlIHBha2V0bGVubWnFnyBvbGFyYWsgZ2VyaSBnw7ZuZGVyIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODgKK21zZ2lkICJTaG93IGEgR2l0IGxvZ2ljYWwgdmFyaWFibGUiCittc2dzdHIgIkJpciBtYW50xLFrc2FsIEdpdCBkZcSfacWfa2VuaSBnw7ZzdGVyIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODkKK21zZ2lkICJDaGVjayB0aGUgR1BHIHNpZ25hdHVyZSBvZiBjb21taXRzIgorbXNnc3RyICJHw7ZuZGVyaWxlcmluIEdQRyBpbXphc8SxbsSxIGRlbmV0bGUiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5MAorbXNnaWQgIlZhbGlkYXRlIHBhY2tlZCBHaXQgYXJjaGl2ZSBmaWxlcyIKK21zZ3N0ciAiUGFrZXRsZW5tacWfIEdpdCBhcsWfaXYgZG9zeWFsYXLEsW7EsSBkb8SfcnVsYSIKKworIzogY29tbWFuZC1saXN0Lmg6MTkxCittc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgdGFncyIKK21zZ3N0ciAiRXRpa2V0bGVyaW4gR1BHIGltemFzxLFuxLEgZG/En3J1bGEiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5MgorbXNnaWQgIkdpdCB3ZWIgaW50ZXJmYWNlICh3ZWIgZnJvbnRlbmQgdG8gR2l0IHJlcG9zaXRvcmllcykiCittc2dzdHIgIkdpdCB3ZWIgYXJhYmlyaW1pIChHaXQgZGVwb2xhcsSxIGnDp2luIHdlYiDDtm4gdWN1KSIKKworIzogY29tbWFuZC1saXN0Lmg6MTkzCittc2dpZCAiU2hvdyBsb2dzIHdpdGggZGlmZmVyZW5jZSBlYWNoIGNvbW1pdCBpbnRyb2R1Y2VzIgorbXNnc3RyICJHw7xubMO8a2xlcmkgaGVyIGfDtm5kZXJpbmluIHN1bmR1xJ91IGRlxJ9pxZ9pa2xpa2xlcmxlIGfDtnN0ZXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NAorbXNnaWQgIk1hbmFnZSBtdWx0aXBsZSB3b3JraW5nIHRyZWVzIgorbXNnc3RyICJCaXJkZW4gw6dvayDDp2FsxLHFn21hIGHEn2FjxLFuxLEgecO2bmV0IgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTUKK21zZ2lkICJDcmVhdGUgYSB0cmVlIG9iamVjdCBmcm9tIHRoZSBjdXJyZW50IGluZGV4IgorbXNnc3RyICJHZcOnZXJsaSBpbmRla3N0ZW4gYmlyIGHEn2HDpyBuZXNuZXNpIG9sdcWfdHVyIgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTYKK21zZ2lkICJEZWZpbmluZyBhdHRyaWJ1dGVzIHBlciBwYXRoIgorbXNnc3RyICLDlnpuaXRlbGlrbGVyaSB5b2xhIGfDtnJlIHRhbsSxbWxhIgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTcKK21zZ2lkICJHaXQgY29tbWFuZC1saW5lIGludGVyZmFjZSBhbmQgY29udmVudGlvbnMiCittc2dzdHIgIkdpdCBrb211dCBzYXTEsXLEsSBhcmFiaXJpbWkgdmUga3VyYWxsYXLEsSIKKworIzogY29tbWFuZC1saXN0Lmg6MTk4Cittc2dpZCAiQSBHaXQgY29yZSB0dXRvcmlhbCBmb3IgZGV2ZWxvcGVycyIKK21zZ3N0ciAiR2VsacWfdGlyaWNpbGVyIGnDp2luIEdpdCDDp2VraXJkZcSfaSBlxJ9pdG1lbmkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5OQorbXNnaWQgIkdpdCBmb3IgQ1ZTIHVzZXJzIgorbXNnc3RyICJDVlMga3VsbGFuxLFjxLFsYXLEsSBpw6dpbiBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMAorbXNnaWQgIlR3ZWFraW5nIGRpZmYgb3V0cHV0IgorbXNnc3RyICJkaWZmIMOnxLFrdMSxc8SxIGnDp2luIGluY2UgYXlhcmxhciIKKworIzogY29tbWFuZC1saXN0Lmg6MjAxCittc2dpZCAiQSB1c2VmdWwgbWluaW11bSBzZXQgb2YgY29tbWFuZHMgZm9yIEV2ZXJ5ZGF5IEdpdCIKK21zZ3N0ciAiR8O8bmzDvGsgR2l0IGt1bGxhbsSxbcSxIGnDp2luIHlhcmFybMSxIGtvbXV0bGFyIgorCisjOiBjb21tYW5kLWxpc3QuaDoyMDIKK21zZ2lkICJBIEdpdCBHbG9zc2FyeSIKK21zZ3N0ciAiR2l0IEthdnJhbSBEaXppbmkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMworbXNnaWQgIkhvb2tzIHVzZWQgYnkgR2l0IgorbXNnc3RyICJHaXQgdGFyYWbEsW5kYW4ga3VsbGFuxLFsYW4ga2FuY2FsYXIiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNAorbXNnaWQgIlNwZWNpZmllcyBpbnRlbnRpb25hbGx5IHVudHJhY2tlZCBmaWxlcyB0byBpZ25vcmUiCittc2dzdHIgIsOWemVsbGlrbGUgeW9rIHNhecSxbG1hc8SxIGlzdGVuZW4gZG9zeWFsYXLEsSBiZWxpcnQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNQorbXNnaWQgIkRlZmluaW5nIHN1Ym1vZHVsZSBwcm9wZXJ0aWVzIgorbXNnc3RyICJBbHRtb2TDvGwgw7Z6ZWxsaWtsZXJpbmkgdGFuxLFtbGFtYSIKKworIzogY29tbWFuZC1saXN0Lmg6MjA2Cittc2dpZCAiR2l0IG5hbWVzcGFjZXMiCittc2dzdHIgIkdpdCBhZCBhbGFubGFyxLEiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNworbXNnaWQgIkdpdCBSZXBvc2l0b3J5IExheW91dCIKK21zZ3N0ciAiR2l0IERlcG8gWWVybGXFn2ltaSIKKworIzogY29tbWFuZC1saXN0Lmg6MjA4Cittc2dpZCAiU3BlY2lmeWluZyByZXZpc2lvbnMgYW5kIHJhbmdlcyBmb3IgR2l0IgorbXNnc3RyICJHaXQgacOnaW4gcmV2aXp5b25sYXLEsSB2ZSBlcmltbGVyaSBiZWxpcnRtZSIKKworIzogY29tbWFuZC1saXN0Lmg6MjA5Cittc2dpZCAiTW91bnRpbmcgb25lIHJlcG9zaXRvcnkgaW5zaWRlIGFub3RoZXIiCittc2dzdHIgIkJpciBkZXBveXUgYmlyIGJhxZ9rYXPEsW7EsW4gacOnaW5lIGJhxJ9sYW1hIgorCisjOiBjb21tYW5kLWxpc3QuaDoyMTAKK21zZ2lkICJBIHR1dG9yaWFsIGludHJvZHVjdGlvbiB0byBHaXQ6IHBhcnQgdHdvIgorbXNnc3RyICJHaXQnZSBHaXJpxZ86IELDtmzDvG0gMiIKKworIzogY29tbWFuZC1saXN0Lmg6MjExCittc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0IgorbXNnc3RyICJHaXQnZSBHaXJpxZ8iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMgorbXNnaWQgIkFuIG92ZXJ2aWV3IG9mIHJlY29tbWVuZGVkIHdvcmtmbG93cyB3aXRoIEdpdCIKK21zZ3N0ciAiw5ZuZXJpbGVuIEdpdCDDp2FsxLHFn21hIGFrxLHFn2xhcsSxbmEgZ2VuZWwgYmFrxLHFnyIKKworIzogZ2l0LWJpc2VjdC5zaDo1NAorbXNnaWQgIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiIgorbXNnc3RyICJcImdpdCBiaXNlY3Qgc3RhcnRcIiBpbGUgYmHFn2xhbWFsxLFzxLFuxLF6IgorCisjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW1ldIGFuZCBbbl0gaW4geW91cgorIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAorIy4gYXQgdGhpcyBwb2ludC4KKyM6IGdpdC1iaXNlY3Quc2g6NjAKK21zZ2lkICJEbyB5b3Ugd2FudCBtZSB0byBkbyBpdCBmb3IgeW91IFtZL25dPyAiCittc2dzdHIgIkJ1bnUgc2l6aW4geWVyaW5pemUgYmVuaW0geWFwbWFtxLEgaXN0ZXIgbWlzaW5peiBbWS9uXT8gIgorCisjOiBnaXQtYmlzZWN0LnNoOjEwMQorIywgc2gtZm9ybWF0Cittc2dpZCAiQmFkIHJldiBpbnB1dDogJGFyZyIKK21zZ3N0ciAiSGF0YWzEsSByZXZpenlvbiBnaXJkaXNpOiAkYXJnIgorCisjOiBnaXQtYmlzZWN0LnNoOjEyMQorIywgc2gtZm9ybWF0Cittc2dpZCAiQmFkIHJldiBpbnB1dDogJGJpc2VjdGVkX2hlYWQiCittc2dzdHIgIkhhdGFsxLEgcmV2aXp5b24gZ2lyZGlzaTogJGJpc2VjdGVkX2hlYWQiCisKKyM6IGdpdC1iaXNlY3Quc2g6MTMwCisjLCBzaC1mb3JtYXQKK21zZ2lkICJCYWQgcmV2IGlucHV0OiAkcmV2IgorbXNnc3RyICJIYXRhbMSxIHJldml6eW9uIGdpcmRpc2k6ICRyZXYiCisKKyM6IGdpdC1iaXNlY3Quc2g6MTM5CisjLCBzaC1mb3JtYXQKK21zZ2lkICInZ2l0IGJpc2VjdCAkVEVSTV9CQUQnIGNhbiB0YWtlIG9ubHkgb25lIGFyZ3VtZW50LiIKK21zZ3N0ciAiJ2dpdCBiaXNlY3QgJFRFUk1fQkFEJyB5YWxuxLF6Y2EgYmlyIGRlxJ9pxZ9rZW4gYWxhYmlsaXIuIgorCisjOiBnaXQtYmlzZWN0LnNoOjIwOQorbXNnaWQgIk5vIGxvZ2ZpbGUgZ2l2ZW4iCittc2dzdHIgIkfDvG5sw7xrIGRvc3lhc8SxIHZlcmlsbWVkaSIKKworIzogZ2l0LWJpc2VjdC5zaDoyMTAKKyMsIHNoLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICRmaWxlIGZvciByZXBsYXlpbmciCittc2dzdHIgIiRmaWxlIHllbmlkZW4gb3luYXTEsW0gacOnaW4gb2t1bmFtxLF5b3IiCisKKyM6IGdpdC1iaXNlY3Quc2g6MjMyCittc2dpZCAiPz8gd2hhdCBhcmUgeW91IHRhbGtpbmcgYWJvdXQ/IgorbXNnc3RyICI/PyBuZWRlbiBzw7Z6IGVkaXlvcnN1bj8iCisKKyM6IGdpdC1iaXNlY3Quc2g6MjQxCittc2dpZCAiYmlzZWN0IHJ1biBmYWlsZWQ6IG5vIGNvbW1hbmQgcHJvdmlkZWQuIgorbXNnc3RyICJpa2lsaSBhcmFtYSBiYcWfYXLEsXPEsXo6IEtvbXV0IHZlcmlsbWVkaS4iCisKKyM6IGdpdC1iaXNlY3Quc2g6MjQ2CisjLCBzaC1mb3JtYXQKK21zZ2lkICJydW5uaW5nICRjb21tYW5kIgorbXNnc3RyICIkY29tbWFuZCDDp2FsxLHFn3TEsXLEsWzEsXlvciIKKworIzogZ2l0LWJpc2VjdC5zaDoyNTMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiIKKyJiaXNlY3QgcnVuIGZhaWxlZDpcbiIKKyJleGl0IGNvZGUgJHJlcyBmcm9tICckY29tbWFuZCcgaXMgPCAwIG9yID49IDEyOCIKK21zZ3N0ciAiIgorImJpc2VjdCDDp2FsxLHFn3TEsXLEsWxhbWFkxLE6XG4iCisiw6fEsWvEscWfIGtvZHUgJHJlcywgJyRjb21tYW5kJyBrb251bXVuZGFuLCA8IDAgdmV5YSA+PSAxMjgiCisKKyM6IGdpdC1iaXNlY3Quc2g6Mjc5Cittc2dpZCAiYmlzZWN0IHJ1biBjYW5ub3QgY29udGludWUgYW55IG1vcmUiCittc2dzdHIgImJpc2VjdCBkYWhhIGZhemxhIMOnYWzEscWfdMSxcsSxbGFtxLF5b3IiCisKKyM6IGdpdC1iaXNlY3Quc2g6Mjg1CisjLCBzaC1mb3JtYXQKK21zZ2lkICIiCisiYmlzZWN0IHJ1biBmYWlsZWQ6XG4iCisiJ2Jpc2VjdF9zdGF0ZSAkc3RhdGUnIGV4aXRlZCB3aXRoIGVycm9yIGNvZGUgJHJlcyIKK21zZ3N0ciAiIgorImlraWxpIGFyYW1hIMOnYWzEscWfdMSxcsSxbGFtYWTEsTpcbiIKKyInYmlzZWN0X3N0YXRlICRzdGF0ZScgJHJlcyBoYXRhIGtvZHV5bGEgw6fEsWt0xLEiCisKKyM6IGdpdC1iaXNlY3Quc2g6MjkyCittc2dpZCAiYmlzZWN0IHJ1biBzdWNjZXNzIgorbXNnc3RyICJpa2lsaSBhcmFtYSBiYcWfYXLEsWzEsSIKKworIzogZ2l0LWJpc2VjdC5zaDozMDAKK21zZ2lkICJXZSBhcmUgbm90IGJpc2VjdGluZy4iCittc2dzdHIgIsSwa2lsaSBhcmFtYSB5YXBtxLF5b3J1ei4iCisKKyM6IGdpdC1tZXJnZS1vY3RvcHVzLnNoOjQ2Cittc2dpZCAiIgorIkVycm9yOiBZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCisibWVyZ2UiCittc2dzdHIgIiIKKyJIYXRhOiBCaXJsZcWfdGlybWUgaWxlIGHFn2HEn8SxZGFraSBkb3N5YWxhcmEgb2xhbiBkZcSfacWfaWtsaWtsZXJpbiDDvHplcmluZSAiCisieWF6xLFsYWNhayIKKworIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6NjEKK21zZ2lkICJBdXRvbWF0ZWQgbWVyZ2UgZGlkIG5vdCB3b3JrLiIKK21zZ3N0ciAiT3RvbWF0aWtsZcWfdGlyaWxtacWfIGJpcmxlxZ90aXJtZSBpxZ9lIHlhcmFtYWTEsS4iCisKKyM6IGdpdC1tZXJnZS1vY3RvcHVzLnNoOjYyCittc2dpZCAiU2hvdWxkIG5vdCBiZSBkb2luZyBhbiBvY3RvcHVzLiIKK21zZ3N0ciAiQmlyIGFodGFwb3QgYmlybGXFn3Rpcm1lc2kgeWFwxLFsbWFtYWzEsS4iCisKKyM6IGdpdC1tZXJnZS1vY3RvcHVzLnNoOjczCisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gZmluZCBjb21tb24gY29tbWl0IHdpdGggJHByZXR0eV9uYW1lIgorbXNnc3RyICIkcHJldHR5X25hbWUgaWxlIG9sYW4gb3J0YWsgZ8O2bmRlcmkgYnVsdW5hbcSxeW9yIgorCisjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo3NworIywgc2gtZm9ybWF0Cittc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlIHdpdGggJHByZXR0eV9uYW1lIgorbXNnc3RyICIkcHJldHR5X25hbWUgaWxlIGhlciDFn2V5IGfDvG5jZWwiCisKKyM6IGdpdC1tZXJnZS1vY3RvcHVzLnNoOjg5CisjLCBzaC1mb3JtYXQKK21zZ2lkICJGYXN0LWZvcndhcmRpbmcgdG86ICRwcmV0dHlfbmFtZSIKK21zZ3N0ciAixZ51cmF5YSBpbGVyaSBzYXLEsWzEsXlvcjogJHByZXR0eV9uYW1lIgorCisjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo5NworIywgc2gtZm9ybWF0Cittc2dpZCAiVHJ5aW5nIHNpbXBsZSBtZXJnZSB3aXRoICRwcmV0dHlfbmFtZSIKK21zZ3N0ciAiJHByZXR0eV9uYW1lIGlsZSB5YWzEsW4gYmlybGXFn3Rpcm1lIGRlbmVuaXlvciIKKworIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6MTAyCittc2dpZCAiU2ltcGxlIG1lcmdlIGRpZCBub3Qgd29yaywgdHJ5aW5nIGF1dG9tYXRpYyBtZXJnZS4iCittc2dzdHIgIllhbMSxbiBiaXJsZcWfdGlybWUgacWfZSB5YXJhbWFkxLEsIG90b21hdGlrIGJpcmxlxZ90aXJtZSBkZW5lbml5b3IiCisKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjIxCittc2dpZCAiQ2Fubm90IHJlbW92ZSB0ZW1wb3JhcnkgaW5kZXggKGNhbid0IGhhcHBlbikiCittc2dzdHIgIkdlw6dpY2kgaW5kZWtzIGthbGTEsXLEsWxhbcSxeW9yIChvbGFuYWtsxLEgZGXEn2lsKSIKKworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyNzIKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCB1cGRhdGUgJHJlZl9zdGFzaCB3aXRoICR3X2NvbW1pdCIKK21zZ3N0ciAiJHJlZl9zdGFzaCwgJHdfY29tbWl0IGlsZSBnw7xuY2VsbGVuZW1peW9yIgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjMyNAorIywgc2gtZm9ybWF0Cittc2dpZCAiZXJyb3I6IHVua25vd24gb3B0aW9uIGZvciAnc3Rhc2ggcHVzaCc6ICRvcHRpb24iCittc2dzdHIgImhhdGE6ICdzdGFzaCBwdXNoJyBpw6dpbiBiaWxpbm1leWVuIHNlw6dlbmVrOiAkb3B0aW9uIgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjM1NgorIywgc2gtZm9ybWF0Cittc2dpZCAiU2F2ZWQgd29ya2luZyBkaXJlY3RvcnkgYW5kIGluZGV4IHN0YXRlICRzdGFzaF9tc2ciCittc2dzdHIgIiRzdGFzaF9tc2cgaW5kZWtzIGR1cnVtdSB2ZSDDp2FsxLHFn21hIGRpemluaSBrYXlkZWRpbGRpIgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjUzNgorIywgc2gtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb246ICRvcHQiCittc2dzdHIgImJpbGlubWV5ZW4gc2XDp2VuZWs6ICRvcHQiCisKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NTU2CisjLCBzaC1mb3JtYXQKK21zZ2lkICJUb28gbWFueSByZXZpc2lvbnMgc3BlY2lmaWVkOiAkUkVWIgorbXNnc3RyICLDh29rIGZhemxhIHJldml6eW9uIGJlbGlydGlsZGk6ICRSRVYiCisKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NTcxCisjLCBzaC1mb3JtYXQKK21zZ2lkICIkcmVmZXJlbmNlIGlzIG5vdCBhIHZhbGlkIHJlZmVyZW5jZSIKK21zZ3N0ciAiJHJlZmVyZW5jZSBnZcOnZXJsaSBiaXIgYmHFn3Z1cnUgZGXEn2lsIgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU5OQorIywgc2gtZm9ybWF0Cittc2dpZCAiJyRhcmdzJyBpcyBub3QgYSBzdGFzaC1saWtlIGNvbW1pdCIKK21zZ3N0ciAiJyRhcmdzJyB6dWxhIGJlbnplcmkgYmlyIGfDtm5kZXJpIGRlxJ9pbCIKKworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MTAKKyMsIHNoLWZvcm1hdAorbXNnaWQgIickYXJncycgaXMgbm90IGEgc3Rhc2ggcmVmZXJlbmNlIgorbXNnc3RyICInJGFyZ3MnIGJpciB6dWxhIGJhxZ92dXJ1c3UgZGXEn2lsIgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYxOAorbXNnaWQgInVuYWJsZSB0byByZWZyZXNoIGluZGV4IgorbXNnc3RyICJpbmRla3MgeWVuaWxlbmVtaXlvciIKKworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MjIKK21zZ2lkICJDYW5ub3QgYXBwbHkgYSBzdGFzaCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UiCittc2dzdHIgIkJpciBiaXJsZcWfdGlybWVuaW4gb3J0YXPEsW5kYSB6dWxhIHV5Z3VsYW5hbcSxeW9yIgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYzMAorbXNnaWQgIkNvbmZsaWN0cyBpbiBpbmRleC4gVHJ5IHdpdGhvdXQgLS1pbmRleC4iCittc2dzdHIgIsSwbmRla3N0ZSDDp2FrxLHFn21hbGFyIHZhci4gLS1pbmRleCBvbG1hZGFuIGRlbmV5aW4uIgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYzMgorbXNnaWQgIkNvdWxkIG5vdCBzYXZlIGluZGV4IHRyZWUiCittc2dzdHIgIsSwbmRla3MgYcSfYWPEsSBrYXlkZWRpbGVtZWRpIgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjY0MQorbXNnaWQgIkNvdWxkIG5vdCByZXN0b3JlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHN0YXNoIGVudHJ5IgorbXNnc3RyICLEsHpsZW5tZXllbiBkb3N5YWxhciB6dWxhZGFuIGVza2kgZHVydW1sYXLEsW5hIGdldGlyaWxlbWVkaSIKKworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2NjYKK21zZ2lkICJDYW5ub3QgdW5zdGFnZSBtb2RpZmllZCBmaWxlcyIKK21zZ3N0ciAiRGXEn2nFn3RpcmlsZW4gZG9zeWFsYXIgaGF6xLFybMSxa3RhbiDDp8Sxa2FyxLFsYW1heiIKKworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDQKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkRyb3BwZWQgJHtSRVZ9ICgkcykiCittc2dzdHIgIiR7UkVWfSBixLFyYWvEsWxkxLEgKCRzKSIKKworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiR7UkVWfTogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCittc2dzdHIgIiR7UkVWfTogWnVsYSBnaXJkaXNpIGLEsXJha8SxbGFtYWTEsSIKKworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3OTIKK21zZ2lkICIoVG8gcmVzdG9yZSB0aGVtIHR5cGUgXCJnaXQgc3Rhc2ggYXBwbHlcIikiCittc2dzdHIgIihPbmxhcsSxIGVza2kgZHVydW11bmEgZ2V0aXJtZWsgacOnaW4gXCJnaXQgc3Rhc2ggYXBwbHlcIiB5YXrEsW4pIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjIwMworbXNnaWQgIlJlbGF0aXZlIHBhdGggY2FuIG9ubHkgYmUgdXNlZCBmcm9tIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICIiCisiR8O2cmVjZWxpIHlvbCB5YWxuxLF6Y2Egw6dhbMSxxZ9tYSBhxJ9hY8SxbsSxbiBlbiDDvHN0IGTDvHpleWluZGVuIGt1bGxhbsSxbGFiaWxpciIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMTMKKyMsIHNoLWZvcm1hdAorbXNnaWQgInJlcG8gVVJMOiAnJHJlcG8nIG11c3QgYmUgYWJzb2x1dGUgb3IgYmVnaW4gd2l0aCAuL3wuLi8iCittc2dzdHIgImRlcG8gVVJMJ3NpOiAnJHJlcG8nIGtlc2luIG9sbWFsxLEgdmV5YSAuL3wuLi8gaWxlIGJhxZ9sYW1hbMSxZMSxciIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzIKKyMsIHNoLWZvcm1hdAorbXNnaWQgIickc21fcGF0aCcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGluZGV4IgorbXNnc3RyICInJHNtX3BhdGgnIGluZGVrc3RlIGhhbGloYXrEsXJkYSB2YXIiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjM1CisjLCBzaC1mb3JtYXQKK21zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGluIHRoZSBpbmRleCBhbmQgaXMgbm90IGEgc3VibW9kdWxlIgorbXNnc3RyICInJHNtX3BhdGgnIGluZGVrc3RlIGhhbGloYXrEsXJkYSB2YXIgdmUgYmlyIGFsdG1vZMO8bCBkZcSfaWwiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjQyCisjLCBzaC1mb3JtYXQKK21zZ2lkICInJHNtX3BhdGgnIGRvZXMgbm90IGhhdmUgYSBjb21taXQgY2hlY2tlZCBvdXQiCittc2dzdHIgIickc21fcGF0aCcgw6fEsWvEscWfIHlhcMSxbGFuIGJpciBnw7ZuZGVyaXllIGl5ZSBkZcSfaWwiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjczCisjLCBzaC1mb3JtYXQKK21zZ2lkICJBZGRpbmcgZXhpc3RpbmcgcmVwbyBhdCAnJHNtX3BhdGgnIHRvIHRoZSBpbmRleCIKK21zZ3N0ciAiJyRzbV9wYXRoJyBrb251bXVuZGFraSBtZXZjdXQgZGVwbyBpbmRla3NlIGVrbGVuaXlvciIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIickc21fcGF0aCcgYWxyZWFkeSBleGlzdHMgYW5kIGlzIG5vdCBhIHZhbGlkIGdpdCByZXBvIgorbXNnc3RyICInJHNtX3BhdGgnIGhhbGloYXrEsXJkYSBtZXZjdXQgdmUgZ2XDp2VybGkgYmlyIGdpdCBkZXBvc3UgZGXEn2lsIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjI4MworIywgc2gtZm9ybWF0Cittc2dpZCAiQSBnaXQgZGlyZWN0b3J5IGZvciAnJHNtX25hbWUnIGlzIGZvdW5kIGxvY2FsbHkgd2l0aCByZW1vdGUocyk6IgorbXNnc3RyICInJHNtX25hbWUnIGnDp2luIGJpciBnaXQgZGVwb3N1IHllcmVsZGUgxZ91IHV6YWsga29udW1sYXJsYSBidWx1bmR1OiIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyODUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiIKKyJJZiB5b3Ugd2FudCB0byByZXVzZSB0aGlzIGxvY2FsIGdpdCBkaXJlY3RvcnkgaW5zdGVhZCBvZiBjbG9uaW5nIGFnYWluIGZyb21cbiIKKyIgICRyZWFscmVwb1xuIgorInVzZSB0aGUgJy0tZm9yY2UnIG9wdGlvbi4gSWYgdGhlIGxvY2FsIGdpdCBkaXJlY3RvcnkgaXMgbm90IHRoZSBjb3JyZWN0ICIKKyJyZXBvXG4iCisib3IgeW91IGFyZSB1bnN1cmUgd2hhdCB0aGlzIG1lYW5zIGNob29zZSBhbm90aGVyIG5hbWUgd2l0aCB0aGUgJy0tbmFtZScgIgorIm9wdGlvbi4iCittc2dzdHIgIiIKKyJCdSB5ZXJlbCBnaXQgZGl6aW5pbmlcbiIKKyIgICRyZWFscmVwb1xuIgorImtvbnVtdW5kYW4gYmlyIGtleiBkYWhhIGtsb25sYW1hayB5ZXJpbmUgeWVuaWRlbiBrdWxsYW5tYWsgaXN0aXlvcnNhbsSxelxuIgorIi0tZm9yY2Ugc2XDp2VuZcSfaW5pIGt1bGxhbsSxbi4gRcSfZXIgYnUgZ2l0IGRpemluaSBkb8SfcnUgZGVwbyBkZcSfaWxzZSB2ZXlhIFxuIgorImJ1bnVuIG5lIGFubGFtYSBnZWxkacSfaW5kZW4gZW1pbiBkZcSfaWxzZW5peiAtLW5hbWUgc2XDp2VuZcSfaSBpbGUgYmHFn2thIGJpclxuIgorImFkIHNlw6dpbi4iCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjkxCisjLCBzaC1mb3JtYXQKK21zZ2lkICJSZWFjdGl2YXRpbmcgbG9jYWwgZ2l0IGRpcmVjdG9yeSBmb3Igc3VibW9kdWxlICckc21fbmFtZScuIgorbXNnc3RyICInJHNtX25hbWUnIGFsdG1vZMO8bMO8IGnDp2luIHllcmVsIGdpdCBkaXppbmkgeWVuaWRlbiBldGtpbmxlxZ90aXJpbGl5b3IuIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjMwMworIywgc2gtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGNoZWNrb3V0IHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgorbXNnc3RyICInJHNtX3BhdGgnIGFsdG1vZMO8bMO8IMOnxLFrxLHFnyB5YXDEsWxhbcSxeW9yIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjMwOAorIywgc2gtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIGFkZCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKK21zZ3N0ciAiJyRzbV9wYXRoJyBhbHRtb2TDvGzDvCBla2xlbmVtZWRpIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjMxNworIywgc2gtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgorbXNnc3RyICInJHNtX3BhdGgnIGFsdG1vZMO8bMO8IGtheWTEsSB5YXDEsWxhbWFkxLEiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NTkwCisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gZmluZCBjdXJyZW50IHJldmlzaW9uIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgorbXNnc3RyICInJGRpc3BsYXlwYXRoJyBhbHRtb2TDvGwgeW9sdW5kYSBnZcOnZXJsaSByZXZpenlvbiBidWx1bmFtYWTEsSIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDAKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJHNtX3BhdGgnIgorbXNnc3RyICInJHNtX3BhdGgnIGFsdG1vZMO8bCB5b2x1bmRhIGdldGlybWUgeWFwxLFsYW1hZMSxIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjYwNQorIywgc2gtZm9ybWF0Cittc2dpZCAiIgorIlVuYWJsZSB0byBmaW5kIGN1cnJlbnQgJHtyZW1vdGVfbmFtZX0vJHticmFuY2h9IHJldmlzaW9uIGluIHN1Ym1vZHVsZSBwYXRoICIKKyInJHNtX3BhdGgnIgorbXNnc3RyICIiCisiJyRzbV9wYXRoJyBhbHRtb2TDvGwgeW9sdW5kYSBnZcOnZXJsaSAke3JlbW90ZV9uYW1lfS8ke2JyYW5jaH0gcmV2aXp5b251ICIKKyJidWx1bmFtYWTEsSIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiIKKyJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc7IHRyeWluZyB0byBkaXJlY3RseSBmZXRjaCAiCisiJHNoYTE6IgorbXNnc3RyICIiCisiJyRkaXNwbGF5cGF0aCcgYWx0bW9kw7xsIHlvbHVuZGEgZ2V0aXJtZSB5YXDEsWxhbWFkxLE7ICRzaGExIGRvxJ9ydWRhbiAiCisiZ2V0aXJpbG1leWUgw6dhbMSxxZ/EsWzEsXlvciIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjkKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiIKKyJGZXRjaGVkIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnLCBidXQgaXQgZGlkIG5vdCBjb250YWluICRzaGExLiAiCisiRGlyZWN0IGZldGNoaW5nIG9mIHRoYXQgY29tbWl0IGZhaWxlZC4iCittc2dzdHIgIiIKKyInJGRpc3BsYXlwYXRoJyBhbHRtb2TDvGwgeW9sdW5kYSBnZXRpcm1lIHRhbWFtbGFuZMSxLCBhbmNhayAkc2hhMSBpw6dlcm1peW9yLiAiCisiQnUgZ8O2bmRlcmluaW4gZG/En3J1ZGFuIGdldGlyaWxtZXNpIGJhxZ9hcsSxc8SxeiBvbGR1LiIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MzYKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBjaGVja291dCAnJHNoYTEnIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgorbXNnc3RyICInJGRpc3BsYXlwYXRoJyBhbHRtb2TDvGwgeW9sdW5kYSAnJHNoYTEnIMOnxLFrxLHFn8SxIHlhcMSxbGFtYWTEsSIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MzcKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiBjaGVja2VkIG91dCAnJHNoYTEnIgorbXNnc3RyICJBbHRtb2TDvGwgeW9sdSAnJGRpc3BsYXlwYXRoJzogJyRzaGExJyDDp8Sxa8SxxZ/EsSB5YXB0xLEiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQxCisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gcmViYXNlICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCittc2dzdHIgIickc2hhMScsICckZGlzcGxheXBhdGgnIGFsdG1vZMO8bCB5b2x1bmRhIHllbmlkZW4gdGVtZWxsZW5kaXJpbGVtZWRpIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjY0MgorIywgc2gtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IHJlYmFzZWQgaW50byAnJHNoYTEnIgorbXNnc3RyICJBbHRtb2TDvGwgeW9sdSAnJGRpc3BsYXlwYXRoJzogJyRzaGExJyBpw6dpbmUgeWVuaWRlbiB0ZW1lbGxlbmRpcmlsZGkiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQ3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gbWVyZ2UgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKK21zZ3N0ciAiJyRzaGExJywgJyRkaXNwbGF5cGF0aCcgYWx0bW9kw7xsIHlvbHVuZGEgYmlybGXFn3RpcmlsZW1lZGkiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQ4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogbWVyZ2VkIGluICckc2hhMSciCittc2dzdHIgIkFsdG1vZMO8bCB5b2x1ICckZGlzcGxheXBhdGgnOiAnJHNoYTEnIGnDp2luZGUgYmlybGXFn3RpcmlsZGkiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjUzCisjLCBzaC1mb3JtYXQKK21zZ2lkICJFeGVjdXRpb24gb2YgJyRjb21tYW5kICRzaGExJyBmYWlsZWQgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCittc2dzdHIgIickZGlzcGxheXBhdGgnIGFsdG1vZMO8bCB5b2x1bmRhICckY29tbWFuZCAkc2hhMScgw6dhbMSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjY1NAorIywgc2gtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6ICckY29tbWFuZCAkc2hhMSciCittc2dzdHIgIkFsdG1vZMO8bCB5b2x1ICckZGlzcGxheXBhdGgnOiAnJGNvbW1hbmQgJHNoYTEnIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjY4NQorIywgc2gtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKK21zZ3N0ciAiJyRkaXNwbGF5cGF0aCcgYWx0bW9kw7xsIHlvbHVuYSDDtnp5aW5lbGVuZW1lZGkiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6ODk2Cittc2dpZCAiVGhlIC0tY2FjaGVkIG9wdGlvbiBjYW5ub3QgYmUgdXNlZCB3aXRoIHRoZSAtLWZpbGVzIG9wdGlvbiIKK21zZ3N0ciAiLS1jYWNoZWQgc2XDp2VuZcSfaSAtLWZpbGVzIHNlw6dlbmXEn2kgaWxlIGJpcmxpa3RlIGt1bGxhbsSxbGFtYXoiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTQ4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIG1vZGUgJG1vZF9kc3QiCittc2dzdHIgImJla2xlbm1lZGlrIGtpcCAkbW9kX2RzdCIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NjgKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX3NyYyIKK21zZ3N0ciAiICBVeWFyxLE6ICRkaXNwbGF5X25hbWUsICRzaGExX3NyYyBnw7ZuZGVyaXNpbmkgacOnZXJtaXlvciIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NzEKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX2RzdCIKK21zZ3N0ciAiICBVeWFyxLE6ICRkaXNwbGF5X25hbWUsICRzaGExX2RzdCBnw7ZuZGVyaXNpbmkgacOnZXJtaXlvciIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NzQKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0cyAkc2hhMV9zcmMgYW5kICRzaGExX2RzdCIKK21zZ3N0ciAiICBVeWFyxLE6ICRkaXNwbGF5X25hbWUsICRzaGExX3NyYyB2ZSAkc2hhMV9kc3QgZ8O2bmRlcmlsZXJpbmkgacOnZXJtaXlvciIKKworIzogZ2l0LXBhcnNlLXJlbW90ZS5zaDo4OQorIywgc2gtZm9ybWF0Cittc2dpZCAiU2VlIGdpdC0ke2NtZH0oMSkgZm9yIGRldGFpbHMuIgorbXNnc3RyICJBeXLEsW50xLFsYXIgacOnaW46IGdpdC0ke2NtZH0oMSkiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxMDkKK21zZ2lkICJBcHBsaWVkIGF1dG9zdGFzaC4iCittc2dzdHIgIktlbmRpbGnEn2luZGVuIHp1bGFsYW1hIHV5Z3VsYW5kxLEuIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTEyCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3Qgc3RvcmUgJHN0YXNoX3NoYTEiCittc2dzdHIgIiRzdGFzaF9zaGExIGRlcG9sYW5hbcSxeW9yIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTkxCisjLCBzaC1mb3JtYXQKK21zZ2lkICJSZWJhc2luZyAoJG5ld19jb3VudC8kdG90YWwpIgorbXNnc3RyICJZZW5pZGVuIHRlbWVsbGVuZGlyaWxpeW9yICgkbmV3X2NvdW50LyR0b3RhbCkiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMDcKK21zZ2lkICIiCisiXG4iCisiQ29tbWFuZHM6XG4iCisicCwgcGljayA8Y29tbWl0PiA9IHVzZSBjb21taXRcbiIKKyJyLCByZXdvcmQgPGNvbW1pdD4gPSB1c2UgY29tbWl0LCBidXQgZWRpdCB0aGUgY29tbWl0IG1lc3NhZ2VcbiIKKyJlLCBlZGl0IDxjb21taXQ+ID0gdXNlIGNvbW1pdCwgYnV0IHN0b3AgZm9yIGFtZW5kaW5nXG4iCisicywgc3F1YXNoIDxjb21taXQ+ID0gdXNlIGNvbW1pdCwgYnV0IG1lbGQgaW50byBwcmV2aW91cyBjb21taXRcbiIKKyJmLCBmaXh1cCA8Y29tbWl0PiA9IGxpa2UgXCJzcXVhc2hcIiwgYnV0IGRpc2NhcmQgdGhpcyBjb21taXQncyBsb2cgbWVzc2FnZVxuIgorIngsIGV4ZWMgPGNvbW1pdD4gPSBydW4gY29tbWFuZCAodGhlIHJlc3Qgb2YgdGhlIGxpbmUpIHVzaW5nIHNoZWxsXG4iCisiZCwgZHJvcCA8Y29tbWl0PiA9IHJlbW92ZSBjb21taXRcbiIKKyJsLCBsYWJlbCA8bGFiZWw+ID0gbGFiZWwgY3VycmVudCBIRUFEIHdpdGggYSBuYW1lXG4iCisidCwgcmVzZXQgPGxhYmVsPiA9IHJlc2V0IEhFQUQgdG8gYSBsYWJlbFxuIgorIm0sIG1lcmdlIFstQyA8Y29tbWl0PiB8IC1jIDxjb21taXQ+XSA8bGFiZWw+IFsjIDxvbmVsaW5lPl1cbiIKKyIuICAgICAgIGNyZWF0ZSBhIG1lcmdlIGNvbW1pdCB1c2luZyB0aGUgb3JpZ2luYWwgbWVyZ2UgY29tbWl0J3NcbiIKKyIuICAgICAgIG1lc3NhZ2UgKG9yIHRoZSBvbmVsaW5lLCBpZiBubyBvcmlnaW5hbCBtZXJnZSBjb21taXQgd2FzXG4iCisiLiAgICAgICBzcGVjaWZpZWQpLiBVc2UgLWMgPGNvbW1pdD4gdG8gcmV3b3JkIHRoZSBjb21taXQgbWVzc2FnZS5cbiIKKyJcbiIKKyJUaGVzZSBsaW5lcyBjYW4gYmUgcmUtb3JkZXJlZDsgdGhleSBhcmUgZXhlY3V0ZWQgZnJvbSB0b3AgdG8gYm90dG9tLlxuIgorbXNnc3RyICIiCisiXG4iCisiS29tdXRsYXI6XG4iCisicCwgcGljayA8Z8O2bmRlcmk+ID0gZ8O2bmRlcml5aSBrdWxsYW5cbiIKKyJyLCByZXdvcmQgPGfDtm5kZXJpPiA9IGfDtm5kZXJpeWkga3VsbGFuLCBhbmNhayBnw7ZuZGVyaSBpbGV0aXNpbmkgZMO8emVubGVcbiIKKyJlLCBlZGl0IDxnw7ZuZGVyaT4gPSBnw7ZuZGVyaXlpIGt1bGxhbiwgYW5jYWsgZGXEn2nFn3Rpcm1lIGnDp2luIGR1clxuIgorInMsIHNxdWFzaCA8Z8O2bmRlcmk+ID0gZ8O2bmRlcml5aSBrdWxsYW4sIGFuY2FrIMO2bmNla2kgZ8O2bmRlcmkgacOnaW5lIGthcsSxxZ90xLFyXG4iCisiZiwgZml4dXAgPGfDtm5kZXJpPiA9IFwic3F1YXNoXCIgZ2liaSwgYW5jYWsgYnUgZ8O2bmRlcmluaW4gZ8O8bmzDvGsgaWxldGlzaW5pICIKKyJhdFxuIgorIngsIGV4ZWMgPGfDtm5kZXJpPiA9IGtvbXV0dSAoc2F0xLFyxLFuIGdlcmkga2FsYW7EsSkga2FidWsga3VsbGFuYXJhayDDp2FsxLHFn3TEsXJcbiIKKyJkLCBkcm9wIDxnw7ZuZGVyaT4gPSBnw7ZuZGVyaXlpIGthbGTEsXJcbiIKKyJsLCBsYWJlbCA8ZXRpa2V0PiA9IGdlw6dlcmxpIEhFQUQnaSBiaXIgYWQgaWxlIGV0aWtldGxlXG4iCisidCwgcmVzZXQgPGV0aWtldD4gPSBIRUFEJ2kgYmlyIGV0aWtldGUgc8SxZsSxcmxhXG4iCisibSwgbWVyZ2UgWy1DIDxnw7ZuZGVyaT4gfCAtYyA8Z8O2bmRlcmk+XSA8ZXRpa2V0PiBbIyA8dGVrLXNhdMSxcj5dXG4iCisiLiAgICAgICBvcmlqaW5hbCBiaXJsZcWfdGlybWUgZ8O2bmRlcmlzaSBpbGV0aXNpbmkga3VsbGFuYXJhayBiaXJcbiIKKyIuICAgICAgIGJpcmxlxZ90aXJtZSBnw7ZuZGVyaXNpIG9sdcWfdHVyICh2ZXlhIHRla3NhdMSxciwgZcSfZXIgYmlyIG9yaWppbmFsXG4iCisiLiAgICAgICBiaXJsZcWfdGlybWUgZ8O2bmRlcmlzaSBiZWxpcnRpbG1lbWnFn3NlKS4gR8O2bmRlcmkgaWxldGlzaW5pIHllbmlkZW5cbiIKKyIuICAgICAgIHlhem1hayBpw6dpbiAtYyA8Z8O2bmRlcmk+IGt1bGxhbsSxbi5cbiIKKyJcbiIKKyJCdSBzYXTEsXJsYXIgeWVuaWRlbiBzxLFyYWxhbmFiaWxpcmxlciwgeXVrYXLEsWRhbiBhxZ9hxJ/EsXlhIMOnYWzEscWfdMSxcsSxbMSxcmxhci5cbiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI3MAorIywgc2gtZm9ybWF0Cittc2dpZCAiIgorIllvdSBjYW4gYW1lbmQgdGhlIGNvbW1pdCBub3csIHdpdGhcbiIKKyJcbiIKKyJcdGdpdCBjb21taXQgLS1hbWVuZCAkZ3BnX3NpZ25fb3B0X3F1b3RlZFxuIgorIlxuIgorIk9uY2UgeW91IGFyZSBzYXRpc2ZpZWQgd2l0aCB5b3VyIGNoYW5nZXMsIHJ1blxuIgorIlxuIgorIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgorbXNnc3RyICIiCisiR8O2bmRlcml5aSDFn2ltZGkgxZ91IGtvbXV0bGEgZGXEn2nFn3RpcmViaWxpcnNpbml6OlxuIgorIlxuIgorIlx0Z2l0IGNvbW1pdCAtLWFtZW5kICRncGdfc2lnbl9vcHRfcXVvdGVkXG4iCisiXG4iCisiRGXEn2nFn2lrbGlrbGVyaW5pemRlbiBtZW1udW5zYW7EsXogxZ91IGtvbXV0bGEgc8O8cmTDvHLDvG46XG4iCisiXG4iCisiXHRnaXQgcmViYXNlIC0tY29udGludWUiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyOTUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiRzaGExOiBub3QgYSBjb21taXQgdGhhdCBjYW4gYmUgcGlja2VkIgorbXNnc3RyICIkc2hhMTogc2XDp2lsZWJpbGVjZWsgYmlyIGfDtm5kZXJpIGRlxJ9pbCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjMzNAorIywgc2gtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBjb21taXQgbmFtZTogJHNoYTEiCittc2dzdHIgIkdlw6dlcnNpeiBnw7ZuZGVyaSBhZMSxOiAkc2hhMSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2NAorbXNnaWQgIkNhbm5vdCB3cml0ZSBjdXJyZW50IGNvbW1pdCdzIHJlcGxhY2VtZW50IHNoYTEiCittc2dzdHIgIkdlw6dlcmxpIGfDtm5kZXJpbmluIHllcmluZSBnZcOnZWNlayBzaGExIHlhesSxbGFtxLF5b3IiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MTUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkZhc3QtZm9yd2FyZCB0byAkc2hhMSIKK21zZ3N0ciAixZ51cmF5YSBpbGVyaSBzYXI6ICRzaGExIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDE3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3QgZmFzdC1mb3J3YXJkIHRvICRzaGExIgorbXNnc3RyICLFnnVyYXlhIGlsZXJpIHNhcsSxbGFtxLF5b3I6ICRzaGExIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDI2CisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3QgbW92ZSBIRUFEIHRvICRmaXJzdF9wYXJlbnQiCittc2dzdHIgIkhFQUQgxZ91cmF5YSB0YcWfxLFuYW3EsXlvcjogJGZpcnN0X3BhcmVudCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQzMQorIywgc2gtZm9ybWF0Cittc2dpZCAiUmVmdXNpbmcgdG8gc3F1YXNoIGEgbWVyZ2U6ICRzaGExIgorbXNnc3RyICJCaXIgYmlybGXFn3Rpcm1leWkgdMSxa8SxxZ90xLFybWEgcmVkZGVkaWxpeW9yOiAkc2hhMSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ0OQorIywgc2gtZm9ybWF0Cittc2dpZCAiRXJyb3IgcmVkb2luZyBtZXJnZSAkc2hhMSIKK21zZ3N0ciAiJHNoYTEgYmlybGXFn3Rpcm1lc2kgeWVuaWRlbiB5YXDEsWzEsXJrZW4gaGF0YSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ1OAorIywgc2gtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHBpY2sgJHNoYTEiCittc2dzdHIgIiRzaGExIHNlw6dpbGVtZWRpIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDY3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJUaGlzIGlzIHRoZSBjb21taXQgbWVzc2FnZSAjJHtufToiCittc2dzdHIgIkfDtm5kZXJpIGlsZXRpc2kgIyR7bn06IgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDcyCisjLCBzaC1mb3JtYXQKK21zZ2lkICJUaGUgY29tbWl0IG1lc3NhZ2UgIyR7bn0gd2lsbCBiZSBza2lwcGVkOiIKK21zZ3N0ciAiR8O2bmRlcmkgaWxldGlzaSAjJHtufSBhdGxhbmFjYWs6IgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDgzCisjLCBzaC1mb3JtYXQKK21zZ2lkICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJGNvdW50IGNvbW1pdC4iCittc2dpZF9wbHVyYWwgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAkY291bnQgY29tbWl0cy4iCittc2dzdHJbMF0gIkJ1ICRjb3VudCBnw7ZuZGVyaW5pbiBiaXIgYmlybGXFn2ltaWRpci4iCittc2dzdHJbMV0gIkJ1ICRjb3VudCBnw7ZuZGVyaW5pbiBiaXIgYmlybGXFn2ltaWRpci4iCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0OTIKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCB3cml0ZSAkZml4dXBfbXNnIgorbXNnc3RyICIkZml4dXBfbXNnIHlhesSxbGFtxLF5b3IiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0OTUKK21zZ2lkICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgMiBjb21taXRzLiIKK21zZ3N0ciAiQnUgMiBnw7ZuZGVyaW5pbiBiaXIgYmlybGXFn2ltaWRpci4iCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1MzYgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU3OQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU4MgorIywgc2gtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGFwcGx5ICRzaGExLi4uICRyZXN0IgorbXNnc3RyICIkc2hhMS4uLiAkcmVzdCB1eWd1bGFuYW1hZMSxIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjExCisjLCBzaC1mb3JtYXQKK21zZ2lkICIiCisiQ291bGQgbm90IGFtZW5kIGNvbW1pdCBhZnRlciBzdWNjZXNzZnVsbHkgcGlja2luZyAkc2hhMS4uLiAkcmVzdFxuIgorIlRoaXMgaXMgbW9zdCBsaWtlbHkgZHVlIHRvIGFuIGVtcHR5IGNvbW1pdCBtZXNzYWdlLCBvciB0aGUgcHJlLWNvbW1pdCBob29rXG4iCisiZmFpbGVkLiBJZiB0aGUgcHJlLWNvbW1pdCBob29rIGZhaWxlZCwgeW91IG1heSBuZWVkIHRvIHJlc29sdmUgdGhlIGlzc3VlICIKKyJiZWZvcmVcbiIKKyJ5b3UgYXJlIGFibGUgdG8gcmV3b3JkIHRoZSBjb21taXQuIgorbXNnc3RyICIiCisiJHNoYTEuLi4gJHJlc3QgYmHFn2FyxLF5bGEgc2XDp2lsZGlrdGVuIHNvbnJhIGfDtm5kZXJpIGRlxJ9pxZ90aXJpbGVtZWRpLlxuIgorIkJ1IGLDvHnDvGsgb2xhc8SxbMSxa2xhIGJvxZ8gYmlyIGfDtm5kZXJpIGlsZXRpc2luZGVuIHZleWEgcHJlLWNvbW1pdCBrYW5jYXPEsW7EsW5cbiIKKyJiYcWfYXLEsXPEsXogb2xtYXPEsW5kYW4ga2F5bmFrbMSxZMSxci4gRcSfZXIgcHJlLWNvbW1pdCBrYW5jYXPEsSBiYcWfYXLEsXPEsXogb2xkdXlzYVxuIgorImfDtm5kZXJpeWkgZMO8emVubGV5ZWJpbG1leWUgYmHFn2xhbWFuxLF6IGnDp2luIGJ1IHNvcnVudSDDp8O2em1lbml6IGdlcmVrZWJpbGlyLiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYyNgorIywgc2gtZm9ybWF0Cittc2dpZCAiU3RvcHBlZCBhdCAkc2hhMV9hYmJyZXYuLi4gJHJlc3QiCittc2dzdHIgIsWedXJhZGEgZHVydWxkdTogJHNoYTFfYWJicmV2Li4uICRyZXN0IgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQxCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3QgJyRzcXVhc2hfc3R5bGUnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCittc2dzdHIgIsOWbmNlc2luZGUgYmlyIGfDtm5kZXJpIG9sbWFkYW4gJyRzcXVhc2hfc3R5bGUnIHlhcMSxbGFtxLF5b3IiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2ODMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkV4ZWN1dGluZzogJHJlc3QiCittc2dzdHIgIsOHYWzEscWfdMSxcsSxbMSxeW9yOiAkcmVzdCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY5MQorIywgc2gtZm9ybWF0Cittc2dpZCAiRXhlY3V0aW9uIGZhaWxlZDogJHJlc3QiCittc2dzdHIgIsOHYWzEscWfdMSxcm1hIGJhxZ9hcsSxc8SxejogJHJlc3QiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTMKK21zZ2lkICJhbmQgbWFkZSBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAidmUgaW5kZWtzZSB2ZS92ZXlhIMOnYWzEscWfbWEgYcSfYWPEsW5hIGRlxJ9pxZ9pa2xpa2xlciB5YXB0xLEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTUKK21zZ2lkICIiCisiWW91IGNhbiBmaXggdGhlIHByb2JsZW0sIGFuZCB0aGVuIHJ1blxuIgorIlxuIgorIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgorbXNnc3RyICIiCisiU29ydW51IMOnw7Z6w7xwIHPDvHJkw7xybWVrIGnDp2luIMWfdW51IMOnYWzEscWfdMSxcsSxblxuIgorIlxuIgorIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgorCisjLiBUUkFOU0xBVE9SUzogYWZ0ZXIgdGhlc2UgbGluZXMgaXMgYSBjb21tYW5kIHRvIGJlIGlzc3VlZCBieSB0aGUgdXNlcgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcwOAorIywgc2gtZm9ybWF0Cittc2dpZCAiIgorIkV4ZWN1dGlvbiBzdWNjZWVkZWQ6ICRyZXN0XG4iCisiYnV0IGxlZnQgY2hhbmdlcyB0byB0aGUgaW5kZXggYW5kL29yIHRoZSB3b3JraW5nIHRyZWVcbiIKKyJDb21taXQgb3Igc3Rhc2ggeW91ciBjaGFuZ2VzLCBhbmQgdGhlbiBydW5cbiIKKyJcbiIKKyJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKK21zZ3N0ciAiIgorIsOHYWzEscWfdMSxcm1hIGJhxZ9hcsSxbMSxOiAkcmVzdFxuIgorImFuY2FrIGluZGVrc2UgdmUvdmV5YSDDp2FsxLHFn21hIGHEn2FjxLFuYSBkZcSfacWfaWtsaWtsZXIgYsSxcmFrdMSxLlxuIgorIkRlxJ9pxZ9pa2xpa2xlcmluaXppIGfDtm5kZXJpbiB2ZXlhIHp1bGFsYXnEsW4sIGFyZMSxbmRhbiDFn3VudSDDp2FsxLHFn3TEsXLEsW46XG4iCisiXG4iCisiXHRnaXQgcmViYXNlIC0tY29udGludWUiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MTkKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlVua25vd24gY29tbWFuZDogJGNvbW1hbmQgJHNoYTEgJHJlc3QiCittc2dzdHIgIkJpbGlubWV5ZW4ga29tdXQ6ICRjb21tYW5kICRzaGExICRyZXN0IgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzIwCittc2dpZCAiUGxlYXNlIGZpeCB0aGlzIHVzaW5nICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJy4iCittc2dzdHIgIkzDvHRmZW4gYnVudSAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycga3VsbGFuYXJhayBvbmFyxLFuLiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc1NQorIywgc2gtZm9ybWF0Cittc2dpZCAiU3VjY2Vzc2Z1bGx5IHJlYmFzZWQgYW5kIHVwZGF0ZWQgJGhlYWRfbmFtZS4iCittc2dzdHIgIiRoZWFkX25hbWUgYmHFn2FyxLF5bGEgeWVuaWRlbiB0ZW1lbGxlbmRpcmlsZGkgdmUgZ8O8bmNlbGxlbmRpLiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgxMgorbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgQ0hFUlJZX1BJQ0tfSEVBRCIKK21zZ3N0ciAiQ0hFUlJZX1BJQ0tfSEVBRCBrYWxkxLFyxLFsYW1hZMSxIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODE3CisjLCBzaC1mb3JtYXQKK21zZ2lkICIiCisiWW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuXG4iCisiSWYgdGhlc2UgY2hhbmdlcyBhcmUgbWVhbnQgdG8gYmVcbiIKKyJzcXVhc2hlZCBpbnRvIHRoZSBwcmV2aW91cyBjb21taXQsIHJ1bjpcbiIKKyJcbiIKKyIgIGdpdCBjb21taXQgLS1hbWVuZCAkZ3BnX3NpZ25fb3B0X3F1b3RlZFxuIgorIlxuIgorIklmIHRoZXkgYXJlIG1lYW50IHRvIGdvIGludG8gYSBuZXcgY29tbWl0LCBydW46XG4iCisiXG4iCisiICBnaXQgY29tbWl0ICRncGdfc2lnbl9vcHRfcXVvdGVkXG4iCisiXG4iCisiSW4gYm90aCBjYXNlcywgb25jZSB5b3UncmUgZG9uZSwgY29udGludWUgd2l0aDpcbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorbXNnc3RyICIiCisiw4dhbMSxxZ9tYSBhxJ9hY8SxbsSxemRhIGhhesSxcmxhbm3EscWfIGRlxJ9pxZ9pa2xpa2xlcmluaXogdmFyLlxuIgorIkXEn2VyIGJ1IGRlxJ9pxZ9pa2xpa2xlcmkgYmlyIMO2bmNla2kgZ8O2bmRlcml5ZSB0xLFrxLHFn3TEsXJtYWtcbiIKKyJpc3RlZGl5c2VuaXogxZ91IGtvbXV0dSDDp2FsxLHFn3TEsXLEsW46XG4iCisiXG4iCisiXHRnaXQgY29tbWl0IC0tYW1lbmQgJGdwZ19zaWduX29wdF9xdW90ZWRcbiIKKyJcbiIKKyJFxJ9lciB5ZW5pIGJpciBnw7ZuZGVyaSBpw6dpbnNlIMWfdW51IMOnYWzEscWfdMSxcsSxbjpcbiIKKyJcbiIKKyJcdGdpdCBjb21taXQgJGdwZ19zaWduX29wdF9xdW90ZWRcbiIKKyJcbiIKKyJIZXIgaWtpIGR1cnVtZGEgZGEgacWfaW5pemkgYml0aXJkaWt0ZW4gc29ucmEgxZ91bnVubGEgc8O8cmTDvHLDvG46XG4iCisiXG4iCisiXHRnaXQgcmViYXNlIC0tY29udGludWVcbiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgzNAorbXNnaWQgIkVycm9yIHRyeWluZyB0byBmaW5kIHRoZSBhdXRob3IgaWRlbnRpdHkgdG8gYW1lbmQgY29tbWl0IgorbXNnc3RyICJHw7ZuZGVyaXlpIGRlxJ9pxZ90aXJtZWsgacOnaW4geWF6YXIga2ltbGnEn2luaSBidWxtYXlhIMOnYWzEscWfxLFya2VuIGhhdGEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MzkKK21zZ2lkICIiCisiWW91IGhhdmUgdW5jb21taXR0ZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS4gUGxlYXNlIGNvbW1pdCB0aGVtXG4iCisiZmlyc3QgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tY29udGludWUnIGFnYWluLiIKK21zZ3N0ciAiIgorIsOHYWzEscWfbWEgYcSfYWPEsW7EsXpkYSBnw7ZuZGVyaWxtZW1pxZ8gZGXEn2nFn2lrbGlrbGVyaW5peiB2YXIuIEzDvHRmZW4gw7ZuY2Ugb25sYXLEsVxuIgorImfDtm5kZXJpbiB2ZSBhcmTEsW5kYW4geWVuaWRlbiAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJyDDp2FsxLHFn3TEsXLEsW4uIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NDgKK21zZ2lkICJDb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiSGF6xLFybGFuYW4gZGXEn2nFn2lrbGlrbGVyIGfDtm5kZXJpbGVtZWRpLiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg3OSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTY1Cittc2dpZCAiQ291bGQgbm90IGV4ZWN1dGUgZWRpdG9yIgorbXNnc3RyICJEw7x6ZW5sZXlpY2kgw6dhbMSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTAwCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgY2hlY2tvdXQgJHN3aXRjaF90byIKK21zZ3N0ciAiJHN3aXRjaF90byDDp8Sxa8SxxZ/EsSB5YXDEsWxhbWFkxLEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDcKK21zZ2lkICJObyBIRUFEPyIKK21zZ3N0ciAiSEVBRCB5b2sgbXU/IgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTA4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAkc3RhdGVfZGlyIgorbXNnc3RyICJHZcOnaWNpICRzdGF0ZV9kaXIgb2x1xZ90dXJ1bGFtYWTEsSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkxMQorbXNnaWQgIkNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgorbXNnc3RyICJFdGtpbGXFn2ltbGkgb2xhcmFrIGltbGVuZW1lZGkiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgb250byAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmQpIgorbXNnaWRfcGx1cmFsICJSZWJhc2UgJHNob3J0cmV2aXNpb25zIG9udG8gJHNob3J0b250byAoJHRvZG9jb3VudCBjb21tYW5kcykiCittc2dzdHJbMF0gIiIKKyIkc2hvcnRyZXZpc2lvbnMgw7ZnZXNpbmkgJHNob3J0b250byDDvHplcmluZSB5ZW5pZGVuIHRlbWVsbGUgKCR0b2RvY291bnQga29tdXQpIgorbXNnc3RyWzFdICIiCisiJHNob3J0cmV2aXNpb25zIMO2Z2VzaW5pICRzaG9ydG9udG8gw7x6ZXJpbmUgeWVuaWRlbiB0ZW1lbGxlICgkdG9kb2NvdW50IGtvbXV0KSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk1NQorbXNnaWQgIk5vdGUgdGhhdCBlbXB0eSBjb21taXRzIGFyZSBjb21tZW50ZWQgb3V0IgorbXNnc3RyICJCb8WfIGfDtm5kZXJpbGVyaW4geW9ydW0gb2xhcmFrIHZhcnNhecSxbGTEscSfxLFuxLEga2VuYXJhIHlhesSxbi4iCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5OTcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEwMDIKK21zZ2lkICJDb3VsZCBub3QgaW5pdCByZXdyaXR0ZW4gY29tbWl0cyIKK21zZ3N0ciAiWWVuaWRlbiB5YXrEsWxhbiBnw7ZuZGVyaWxlciBiYcWfbGF0xLFsYW3EsXlvciIKKworIzogZ2l0LXNoLXNldHVwLnNoOjg5IGdpdC1zaC1zZXR1cC5zaDo5NAorIywgc2gtZm9ybWF0Cittc2dpZCAidXNhZ2U6ICRkYXNobGVzcyAkVVNBR0UiCittc2dzdHIgImt1bGxhbsSxbTogJGRhc2hsZXNzICRVU0FHRSIKKworIzogZ2l0LXNoLXNldHVwLnNoOjE5MQorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90IGNoZGlyIHRvICRjZHVwLCB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAiJGNkdXAga29udW11bmEgY2hkaXIgeWFwxLFsYW3EsXlvciwgw6dhbMSxxZ9tYSBhxJ9hY8SxbsSxbiBlbiDDvHN0IGTDvHpleWkiCisKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMDAgZ2l0LXNoLXNldHVwLnNoOjIwNworIywgc2gtZm9ybWF0Cittc2dpZCAiZmF0YWw6ICRwcm9ncmFtX25hbWUgY2Fubm90IGJlIHVzZWQgd2l0aG91dCBhIHdvcmtpbmcgdHJlZS4iCittc2dzdHIgIm9udWxtYXo6ICRwcm9ncmFtX25hbWUgYmlyIMOnYWzEscWfbWEgYcSfYWPEsSBvbG1hZGFuIGt1bGxhbsSxbGFtYXoiCisKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjEKK21zZ2lkICJDYW5ub3QgcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiWWVuaWRlbiB0ZW1lbGxlbmRpcmlsZW1peW9yOiBIYXrEsXJsYW5tYW3EscWfIGRlxJ9pxZ9pa2xpa2xlcmluaXogdmFyLiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjIyNAorbXNnaWQgIkNhbm5vdCByZXdyaXRlIGJyYW5jaGVzOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiRGFsbGFyIHllbmlkZW4geWF6xLFsYW3EsXlvcjogSGF6xLFybGFubWFtxLHFnyBkZcSfacWfaWtsaWtsZXJpbml6IHZhci4iCisKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjcKK21zZ2lkICJDYW5ub3QgcHVsbCB3aXRoIHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCittc2dzdHIgIiIKKyJZZW5pZGVuIHRlbWVsbGVuZGlybWUgaWxlIMOnZWtpbGVtaXlvcjogSGF6xLFybGFubWFtxLHFnyBkZcSfacWfaWtsaWtsZXJpbml6IHZhci4iCisKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMzAKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCAkYWN0aW9uOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiJGFjdGlvbiB5YXDEsWxhbcSxeW9yOiBIYXrEsXJsYW5tYW3EscWfIGRlxJ9pxZ9pa2xpa2xlcmluaXogdmFyLiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjI0MworbXNnaWQgIkNhbm5vdCByZWJhc2U6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCittc2dzdHIgIiIKKyJZZW5pZGVuIHRlbWVsbGVuZGlybWUgeWFwxLFsYW3EsXlvcjogxLBuZGVrc2luaXpkZSBnw7ZuZGVyaWxtZW1pxZ8gIgorImRlxJ9pxZ9pa2xpa2xlcmluaXogdmFyLiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjI0NgorbXNnaWQgIkNhbm5vdCBwdWxsIHdpdGggcmViYXNlOiBZb3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgorbXNnc3RyICIiCisiWWVuaWRlbiB0ZW1lbGxlbmRpcm1lIGlsZSDDp2VraWxlbWl5b3I6IMSwbmRla3Npbml6ZGUgZ8O2bmRlcmlsbWVtacWfICIKKyJkZcSfacWfaWtsaWtsZXJpbml6IHZhci4iCisKKyM6IGdpdC1zaC1zZXR1cC5zaDoyNDkKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCAkYWN0aW9uOiBZb3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgorbXNnc3RyICIkYWN0aW9uIHlhcMSxbGFtxLF5b3I6IMSwbmRla3Npbml6ZGUgZ8O2bmRlcmlsbWVtacWfIGRlxJ9pxZ9pa2xpa2xlcmluaXogdmFyLiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjI1MworbXNnaWQgIkFkZGl0aW9uYWxseSwgeW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiRWsgb2xhcmFrLCBpbmRla3Npbml6ZGUgZ8O2bmRlcmlsbWVtacWfIGRlxJ9pxZ9pa2xpa2xlcmluaXogdmFyLiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjM3MworbXNnaWQgIllvdSBuZWVkIHRvIHJ1biB0aGlzIGNvbW1hbmQgZnJvbSB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZS4iCittc2dzdHIgIkJ1IGtvbXV0dSDDp2FsxLHFn21hIGHEn2FjxLFuxLFuIGVuIMO8c3QgZMO8emV5aW5kZW4gw6dhbMSxxZ90xLFybWFuxLF6IGdlcmVraXlvci4iCisKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzgKK21zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIGFic29sdXRlIHBhdGggb2YgZ2l0IGRpcmVjdG9yeSIKK21zZ3N0ciAiR2l0IGRpemluaW5pbiBrZXNpbiB5b2x1IGFsZ8SxbGFuYW3EsXlvciIKKworIy4gVFJBTlNMQVRPUlM6IHlvdSBjYW4gYWRqdXN0IHRoaXMgdG8gYWxpZ24gImdpdCBhZGQgLWkiIHN0YXR1cyBtZW51CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlMTJzICUxMnMgJXMiCittc2dzdHIgIiUxMnMgJTEycyAlcyIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidG91Y2hlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInRvdWNoZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAiJWQgeW9sYSBkb2t1bnVsZHVcbiIKK21zZ3N0clsxXSAiJWQgeW9sYSBkb2t1bnVsZHVcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDUzCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCisibWFya2VkIGZvciBzdGFnaW5nLiIKK21zZ3N0ciAiIgorIkXEn2VyIHlhbWEgc29ydW5zdXpjYSB1eWd1bGFuxLFyc2EgZMO8emVubGVuZW4gcGFyw6dhIGRlcmhhbCBoYXrEsXJsYW1hXG4iCisiacOnaW4gaW1sZW5lY2VrdGlyLiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDU2Cittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCisibWFya2VkIGZvciBzdGFzaGluZy4iCittc2dzdHIgIiIKKyJFxJ9lciB5YW1hIHNvcnVuc3V6Y2EgdXlndWxhbsSxcnNhIGTDvHplbmxlbmVuIHBhcsOnYSBkZXJoYWwgenVsYWxhbWFcbiIKKyJpw6dpbiBpbWxlbmVjZWt0aXIuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTkKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKKyJtYXJrZWQgZm9yIHVuc3RhZ2luZy4iCittc2dzdHIgIiIKKyJFxJ9lciB5YW1hIHNvcnVuc3V6Y2EgdXlndWxhbsSxcnNhLCBkw7x6ZW5sZW5lbiBwYXLDp2EgZGVyaGFsIGhhesSxcmzEsWt0YW5cbiIKKyLDp8Sxa2FyxLFsbWEgacOnaW4gaW1sZW5lY2VrdGlyLiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDYyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA3MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDc3Cittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCisibWFya2VkIGZvciBhcHBseWluZy4iCittc2dzdHIgIiIKKyJFxJ9lciB5YW1hIHNvcnVuc3V6Y2EgdXlndWxhbsSxcnNhIGTDvHplbmxlbmVuIHBhcsOnYSBkZXJoYWwgdXlndWxhbWFcbiIKKyJpw6dpbiBpbWxlbmVjZWt0aXIuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNjUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDY4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNzQKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKKyJtYXJrZWQgZm9yIGRpc2NhcmRpbmcuIgorbXNnc3RyICIiCisiRcSfZXIgeWFtYSBzb3J1bnN1emNhIHV5Z3VsYW7EsXJzYSBkw7x6ZW5sZW5lbiBwYXLDp2EgZGVyaGFsIMSxc2thcnRheWFcbiIKKyLDp8Sxa2FyxLFtIGnDp2luIGltbGVuZWNla3Rpci4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3Igd3JpdGluZzogJXMiCittc2dzdHIgInBhcsOnYSBkw7x6ZW5sZW1lIGRvc3lhc8SxIHlhesSxbSBpw6dpbiBhw6fEsWxhbWFkxLE6ICVzIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIi0tLVxuIgorIlRvIHJlbW92ZSAnJXMnIGxpbmVzLCBtYWtlIHRoZW0gJyAnIGxpbmVzIChjb250ZXh0KS5cbiIKKyJUbyByZW1vdmUgJyVzJyBsaW5lcywgZGVsZXRlIHRoZW0uXG4iCisiTGluZXMgc3RhcnRpbmcgd2l0aCAlcyB3aWxsIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiIKKyItLS1cbiIKKyInJXMnIHNhdMSxciBrYWxkxLFybWFrIGnDp2luIG9ubGFyxLEgJyAnIHNhdMSxciB5YXDEsW4gKGJhxJ9sYW0pLlxuIgorIiclcycgc2F0xLFyIGthbGTEsXJtYWsgacOnaW4gb25sYXLEsSBzaWxpbi5cbiIKKyIlcyBpbGUgYmHFn2xheWFuIHNhdMSxcmxhciBrYWxkxLFyxLFsYWNha3TEsXIuXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTE0MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgInBhcsOnYSBkw7x6ZW5sZW1lIGRvc3lhc8SxIG9rdW1hIGnDp2luIGHDp8SxbGFtYWTEsTogJXMiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0OAorbXNnaWQgIiIKKyJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHN0YWdlIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSBidSBwYXLDp2F5xLEgaGF6xLFybGFcbiIKKyJuIC0gYnUgcGFyw6dhecSxIGhhesSxcmxhbWFcbiIKKyJxIC0gw6fEsWs7IGJ1IHBhcsOnYXnEsSB2ZXlhIGthbGFubGFyZGFuIGhlcmhhbmdpIGJpcmluaSBoYXrEsXJsYW1hXG4iCisiYSAtIGJ1IHBhcsOnYXnEsSB2ZSBzb25yYWtpIHTDvG0gcGFyw6dhbGFyxLEgaGF6xLFybGFcbiIKKyJkIC0gYnUgcGFyw6dhecSxIHZleWEgc29ucmFraSBwYXLDp2FsYXJkYW4gaGVyaGFuZ2kgYmlyaW5pIGhhesSxcmxhbWEiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI1NAorbXNnaWQgIiIKKyJ5IC0gc3Rhc2ggdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCBzdGFzaCB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHN0YXNoIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHN0YXNoIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBzdGFzaCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSBidSBwYXLDp2F5xLEgenVsYWxhXG4iCisibiAtIGJ1IHBhcsOnYXnEsSB6dWxhbGFtYVxuIgorInEgLSDDp8SxazsgYnUgcGFyw6dhecSxIHZleWEga2FsYW5sYXJkYW4gaGVyaGFuZ2kgYmlyaW5pIHp1bGFsYW1hXG4iCisiYSAtIGJ1IHBhcsOnYXnEsSB2ZSBzb25yYWtpIHTDvG0gcGFyw6dhbGFyxLEgenVsYWxhXG4iCisiZCAtIGJ1IHBhcsOnYXnEsSB2ZXlhIHNvbnJha2kgcGFyw6dhbGFyZGFuIGhlcmhhbmdpIGJpcmluaSB6dWxhbGFtYSIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjYwCittc2dpZCAiIgorInkgLSB1bnN0YWdlIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gdW5zdGFnZSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSBidSBwYXLDp2F5xLEgaGF6xLFybMSxa3RhbiDDp8Sxa2FyXG4iCisibiAtIGJ1IHBhcsOnYXnEsSBoYXrEsXJsxLFrdGFuIMOnxLFrYXJtYVxuIgorInEgLSDDp8SxazsgYnUgcGFyw6dhecSxIHZleWEga2FsYW5sYXJkYW4gaGVyaGFuZ2kgYmlyaW5pIGhhesSxcmzEsWt0YW4gw6fEsWthcm1hXG4iCisiYSAtIGJ1IHBhcsOnYXnEsSB2ZSBzb25yYWtpIHTDvG0gcGFyw6dhbGFyxLEgaGF6xLFybMSxa3RhbiDDp8Sxa2FyXG4iCisiZCAtIGJ1IHBhcsOnYXnEsSB2ZXlhIHNvbnJha2kgcGFyw6dhbGFyZGFuIGhlcmhhbmdpIGJpcmluaSBoYXrEsXJsxLFrdGFuIMOnxLFrYXJtYSIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjY2Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgorbXNnc3RyICIiCisieSAtIGJ1IHBhcsOnYXnEsSBpbmRla3NlIHV5Z3VsYVxuIgorIm4gLSBidSBwYXLDp2F5xLEgaW5kZWtzZSB1eWd1bGFtYVxuIgorInEgLSDDp8SxazsgYnUgcGFyw6dhecSxIHZleWEga2FsYW5sYXJkYW4gaGVyaGFuZ2kgYmlyaW5pIHV5Z3VsYW1hXG4iCisiYSAtIGJ1IHBhcsOnYXnEsSB2ZSBzb25yYWtpIHTDvG0gcGFyw6dhbGFyxLEgdXlndWxhXG4iCisiZCAtIGJ1IHBhcsOnYXnEsSB2ZXlhIHNvbnJha2kgcGFyw6dhbGFyZGFuIGhlcmhhbmdpIGJpcmluaSB1eWd1bGFtYSIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5MAorbXNnaWQgIiIKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgorbXNnc3RyICIiCisieSAtIGJ1IHBhcsOnYXnEsSDDp2FsxLHFn21hIGHEn2FjxLFuZGFuIGF0XG4iCisibiAtIGJ1IHBhcsOnYXnEsSDDp2FsxLHFn21hIGHEn2FjxLFuZGFuIGF0bWFcbiIKKyJxIC0gw6fEsWs7IGJ1IHBhcsOnYXnEsSB2ZXlhIGthbGFubGFyZGFuIGhlcmhhbmdpIGJpcmluaSBhdG1hXG4iCisiYSAtIGJ1IHBhcsOnYXnEsSB2ZSBzb25yYWtpIHTDvG0gcGFyw6dhbGFyxLEgYXRcbiIKKyJkIC0gYnUgcGFyw6dhecSxIHZleWEgc29ucmFraSBwYXLDp2FsYXJkYW4gaGVyaGFuZ2kgYmlyaW5pIGF0bWEiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI3OAorbXNnaWQgIiIKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGRpc2NhcmQgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKyJ5IC0gYnUgcGFyw6dhecSxIMOnYWzEscWfbWEgYcSfYWPEsW5kYW4gdmUgaW5kZWtzdGVuIGF0XG4iCisibiAtIGJ1IHBhcsOnYXnEsSDDp2FsxLHFn21hIGHEn2FjxLFuZGFuIHZlIGluZGVrc3RlbiBhdG1hXG4iCisicSAtIMOnxLFrOyBidSBwYXLDp2F5xLEgdmV5YSBrYWxhbmxhcmRhbiBoZXJoYW5naSBiaXJpbmkgYXRtYVxuIgorImEgLSBidSBwYXLDp2F5xLEgdmUgc29ucmFraSB0w7xtIHBhcsOnYWxhcsSxIGF0XG4iCisiZCAtIGJ1IHBhcsOnYXnEsSB2ZXlhIHNvbnJha2kgcGFyw6dhbGFyZGFuIGhlcmhhbmdpIGJpcmluaSBhdG1hIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyODQKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSBidSBwYXLDp2F5xLEgaW5kZWtzZSB2ZSDDp2FsxLHFn21hIGHEn2FjxLFuYSB1eWd1bGFcbiIKKyJuIC0gYnUgcGFyw6dhecSxIGluZGVrc2UgdmUgw6dhbMSxxZ9tYSBhxJ9hY8SxbmEgdXlndWxhbWFcbiIKKyJxIC0gw6fEsWs7IGJ1IHBhcsOnYXnEsSB2ZXlhIGthbGFubGFyZGFuIGhlcmhhbmdpIGJpcmluaSB1eWd1bGFtYVxuIgorImEgLSBidSBwYXLDp2F5xLEgdmUgc29ucmFraSB0w7xtIHBhcsOnYWxhcsSxIHV5Z3VsYVxuIgorImQgLSBidSBwYXLDp2F5xLEgdmV5YSBzb25yYWtpIHBhcsOnYWxhcmRhbiBoZXJoYW5naSBiaXJpbmkgdXlndWxhbWEiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5NgorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSBidSBwYXLDp2F5xLEgw6dhbMSxxZ9tYSBhxJ9hY8SxbmEgdXlndWxhXG4iCisibiAtIGJ1IHBhcsOnYXnEsSDDp2FsxLHFn21hIGHEn2FjxLFuYSB1eWd1bGFtYVxuIgorInEgLSDDp8SxazsgYnUgcGFyw6dhecSxIHZleWEga2FsYW5sYXJkYW4gaGVyaGFuZ2kgYmlyaW5pIHV5Z3VsYW1hXG4iCisiYSAtIGJ1IHBhcsOnYXnEsSB2ZSBzb25yYWtpIHTDvG0gcGFyw6dhbGFyxLEgdXlndWxhXG4iCisiZCAtIGJ1IHBhcsOnYXnEsSB2ZXlhIHNvbnJha2kgcGFyw6dhbGFyZGFuIGhlcmhhbmdpIGJpcmluaSB1eWd1bGFtYSIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzExCittc2dpZCAiIgorImcgLSBzZWxlY3QgYSBodW5rIHRvIGdvIHRvXG4iCisiLyAtIHNlYXJjaCBmb3IgYSBodW5rIG1hdGNoaW5nIHRoZSBnaXZlbiByZWdleFxuIgorImogLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgbmV4dCB1bmRlY2lkZWQgaHVua1xuIgorIkogLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgbmV4dCBodW5rXG4iCisiayAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBwcmV2aW91cyB1bmRlY2lkZWQgaHVua1xuIgorIksgLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgcHJldmlvdXMgaHVua1xuIgorInMgLSBzcGxpdCB0aGUgY3VycmVudCBodW5rIGludG8gc21hbGxlciBodW5rc1xuIgorImUgLSBtYW51YWxseSBlZGl0IHRoZSBjdXJyZW50IGh1bmtcbiIKKyI/IC0gcHJpbnQgaGVscFxuIgorbXNnc3RyICIiCisiZyAtIGdpZGlsZWNlayBiaXIgcGFyw6dhIHNlw6dcbiIKKyIvIC0gdmVyaWxlbiBkw7x6ZW5saSBpZmFkZSBpbGUgZcWfbGXFn2VuIGJpciBwYXLDp2EgYXJhXG4iCisiaiAtIGJ1IHBhcsOnYSBpw6dpbiBzb25yYSBrYXJhciB2ZXIsIGJpciBzb25yYWtpIGthcmFyIHZlcmlsbWVtacWfIHBhcsOnYXnEsSBnw7ZyXG4iCisiSiAtIGJ1IHBhcsOnYSBpw6dpbiBzb25yYSBrYXJhciB2ZXIsIGJpciBzb25yYWtpIHBhcsOnYXnEsSBnw7ZyXG4iCisiayAtIGJ1IHBhcsOnYSBpw6dpbiBzb25yYSBrYXJhciB2ZXIsIGJpciDDtm5jZWtpIGthcmFyIHZlcmlsbWVtacWfIHBhcsOnYXnEsSBnw7ZyXG4iCisiSyAtIGJ1IHBhcsOnYSBpw6dpbiBzb25yYSBrYXJhciB2ZXIsIGJpciDDtm5jZWtpIHBhcsOnYXnEsSBnw7ZyXG4iCisicyAtIGdlw6dlcmxpIHBhcsOnYXnEsSBkYWhhIHVmYWsgcGFyw6dhbGFyYSBiw7ZsXG4iCisiZSAtIGdlw6dlcmxpIHBhcsOnYXnEsSBlbCBpbGUgZMO8emVubGVcbiIKKyI/IC0geWFyZMSxbcSxIHlhemTEsXJcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQyCittc2dpZCAiVGhlIHNlbGVjdGVkIGh1bmtzIGRvIG5vdCBhcHBseSB0byB0aGUgaW5kZXghXG4iCittc2dzdHIgIlNlw6dpbGkgcGFyw6dhbGFyIGluZGVrc2UgdXlndWxhbmFtxLF5b3IhXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM1NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyB1bm1lcmdlZDogJXNcbiIKK21zZ3N0ciAiYmlybGXFn3RpcmlsbWV5ZW5sZXIgeW9rIHNhecSxbMSxeW9yOiAlc1xuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIktpcCBkZcSfacWfaW1pIMOnYWzEscWfbWEgYcSfYWPEsW5hIHV5Z3VsYW5zxLFuIG3EsSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJTaWxtZSDDp2FsxLHFn21hIGHEn2FjxLFuYSB1eWd1bGFuc8SxbiBtxLEgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkJ1IHBhcsOnYSDDp2FsxLHFn21hIGHEn2FjxLFuYSB1eWd1bGFuc8SxbiBtxLEgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3MAorbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIGdvdG9cbiIKK21zZ3N0ciAiR2lkaWxlY2VrIGJhxZ9rYSBwYXLDp2EgeW9rXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU4OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIG51bWJlcjogJyVzJ1xuIgorbXNnc3RyICJHZcOnZXJzaXogc2F5xLE6ICclcydcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNvcnJ5LCBvbmx5ICVkIGh1bmsgYXZhaWxhYmxlLlxuIgorbXNnaWRfcGx1cmFsICJTb3JyeSwgb25seSAlZCBodW5rcyBhdmFpbGFibGUuXG4iCittc2dzdHJbMF0gIsOcemfDvG7DvG0sIHlhbG7EsXpjYSAlZCBwYXLDp2Ega3VsbGFuxLFsYWJpbGlyLlxuIgorbXNnc3RyWzFdICLDnHpnw7xuw7xtLCB5YWxuxLF6Y2EgJWQgcGFyw6dhIGt1bGxhbsSxbGFiaWxpci5cbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjE5Cittc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gc2VhcmNoXG4iCittc2dzdHIgIkFyYW5hY2FrIGJhxZ9rYSBwYXLDp2EgeW9rXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYzNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJNYWxmb3JtZWQgc2VhcmNoIHJlZ2V4cCAlczogJXNcbiIKK21zZ3N0ciAiSGF0YWzEsSBvbHXFn3R1cnVsbXXFnyBhcmFtYSBkw7x6ZW5saSBpZmFkZXNpICVzOiAlc1xuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NDYKK21zZ2lkICJObyBodW5rIG1hdGNoZXMgdGhlIGdpdmVuIHBhdHRlcm5cbiIKK21zZ3N0ciAiVmVyaWxlbiBkaXpnaSBpbGUgaGnDp2JpciBwYXLDp2EgZcWfbGXFn21peW9yXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY1OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2ODAKK21zZ2lkICJObyBwcmV2aW91cyBodW5rXG4iCittc2dzdHIgIsOWbmNlc2luZGUgcGFyw6dhIHlva1xuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NjcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjg2Cittc2dpZCAiTm8gbmV4dCBodW5rXG4iCittc2dzdHIgIlNvbnJhc8SxbmRhIHBhcsOnYSB5b2tcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjkyCittc2dpZCAiU29ycnksIGNhbm5vdCBzcGxpdCB0aGlzIGh1bmtcbiIKK21zZ3N0ciAiw5x6Z8O8bsO8bSwgYnUgcGFyw6dhIGLDtmzDvG5lbWl5b3JcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjk4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNwbGl0IGludG8gJWQgaHVuay5cbiIKK21zZ2lkX3BsdXJhbCAiU3BsaXQgaW50byAlZCBodW5rcy5cbiIKK21zZ3N0clswXSAiJWQgcGFyw6dheWEgYsO2bMO8bmTDvC5cbiIKK21zZ3N0clsxXSAiJWQgcGFyw6dheWEgYsO2bMO8bmTDvC5cbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzA4Cittc2dpZCAiU29ycnksIGNhbm5vdCBlZGl0IHRoaXMgaHVua1xuIgorbXNnc3RyICLDnHpnw7xuw7xtLCBidSBwYXLDp2EgZMO8emVubGVuZW1peW9yXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBwbGVhc2UgZG8gbm90IHRyYW5zbGF0ZSB0aGUgY29tbWFuZCBuYW1lcworIy4gJ3N0YXR1cycsICd1cGRhdGUnLCAncmV2ZXJ0JywgZXRjLgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzczCittc2dpZCAiIgorInN0YXR1cyAgICAgICAgLSBzaG93IHBhdGhzIHdpdGggY2hhbmdlc1xuIgorInVwZGF0ZSAgICAgICAgLSBhZGQgd29ya2luZyB0cmVlIHN0YXRlIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXNcbiIKKyJyZXZlcnQgICAgICAgIC0gcmV2ZXJ0IHN0YWdlZCBzZXQgb2YgY2hhbmdlcyBiYWNrIHRvIHRoZSBIRUFEIHZlcnNpb25cbiIKKyJwYXRjaCAgICAgICAgIC0gcGljayBodW5rcyBhbmQgdXBkYXRlIHNlbGVjdGl2ZWx5XG4iCisiZGlmZiAgICAgICAgICAtIHZpZXcgZGlmZiBiZXR3ZWVuIEhFQUQgYW5kIGluZGV4XG4iCisiYWRkIHVudHJhY2tlZCAtIGFkZCBjb250ZW50cyBvZiB1bnRyYWNrZWQgZmlsZXMgdG8gdGhlIHN0YWdlZCBzZXQgb2YgIgorImNoYW5nZXNcbiIKK21zZ3N0ciAiIgorInN0YXR1cyAgICAgICAgLSBkZcSfacWfaWtsaWsgacOnZXJlbiB5b2xsYXLEsSBnw7ZzdGVyXG4iCisidXBkYXRlICAgICAgICAtIMOnYWzEscWfbWEgYcSfYWPEsSBkdXJ1bXVudSBoYXrEsXJsYW5hbiBkZcSfacWfaWtsaWsgc2V0aW5lIGVrbGVcbiIKKyJyZXZlcnQgICAgICAgIC0gaGF6xLFybGFuYW4gZGXEn2nFn2lrbGlrIHNldGluaSBIRUFEIHPDvHLDvG3DvG5lIGdlcmkgYWxcbiIKKyJwYXRjaCAgICAgICAgIC0gcGFyw6dhbGFyxLEgc2XDpyB2ZSBzZcOnaWNpIG9sYXJhayBnw7xuY2VsbGVcbiIKKyJkaWZmICAgICAgICAgIC0gSEVBRCB2ZSBpbmRla3MgYXJhc8SxbmRha2kgZGlmZidpIChheXLEsW1sYXLEsSkgZ8O2csO8bnTDvGxlXG4iCisiYWRkIHVudHJhY2tlZCAtIGl6bGVubWV5ZW4gZG9zeWFsYXLEsW4gacOnZXJpxJ9pbmkgaGF6xLFybGFuYW4gZGXEn2nFn2lrbGlrIHNldGluZSAiCisiZWtsZVxuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzk1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODA1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MDggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODE1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODI1Cittc2dpZCAibWlzc2luZyAtLSIKK21zZ3N0ciAiLS0gZWtzaWsiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIC0tcGF0Y2ggbW9kZTogJXMiCittc2dzdHIgImJpbGlubWV5ZW4gLS1wYXRjaCBraXBpOiAlcyIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODI3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgzMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGFyZ3VtZW50ICVzLCBleHBlY3RpbmcgLS0iCittc2dzdHIgImdlw6dlcnNpeiBkZcSfacWfa2VuICVzLCAtLSBiZWtsZW5peW9yIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEzOAorbXNnaWQgImxvY2FsIHpvbmUgZGlmZmVycyBmcm9tIEdNVCBieSBhIG5vbi1taW51dGUgaW50ZXJ2YWxcbiIKK21zZ3N0ciAieWVyZWwgZGlsaW0gR01UJ2RlbiBiaXIgZGFraWthZGFuIGF6IGJpciBhcmFsxLFrbGEgYXlyxLFtbMSxXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ1IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUxCittc2dpZCAibG9jYWwgdGltZSBvZmZzZXQgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDI0IGhvdXJzXG4iCittc2dzdHIgInllcmVsIHNhYXQgb2ZzZXRpIDI0IHNhYXRlIGXFn2l0IHZleWEgZGFoYSBiw7x5w7xrXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjIzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MjI5Cittc2dpZCAidGhlIGVkaXRvciBleGl0ZWQgdW5jbGVhbmx5LCBhYm9ydGluZyBldmVyeXRoaW5nIgorbXNnc3RyICJkw7x6ZW5sZXlpY2kgZMO8emfDvG5jZSDDp8Sxa21hZMSxLCBoZXIgxZ9leSBpcHRhbCBlZGlsaXlvciIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDozMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIiclcycgY29udGFpbnMgYW4gaW50ZXJtZWRpYXRlIHZlcnNpb24gb2YgdGhlIGVtYWlsIHlvdSB3ZXJlIGNvbXBvc2luZy5cbiIKK21zZ3N0ciAiJyVzJyB5YXptYWt0YSBvbGR1xJ91bnV6IGUtcG9zdGFuxLFuIG9ydGEgZMO8emV5IGJpciBzw7xyw7xtw7xuw7wgacOnZXJpeW9yLlxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMxNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICInJXMuZmluYWwnIGNvbnRhaW5zIHRoZSBjb21wb3NlZCBlbWFpbC5cbiIKK21zZ3N0ciAiJyVzLmZpbmFsJyB5YXrEsWxhbiBlLXBvc3RhecSxIGnDp2VyaXlvci5cbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo0MDgKK21zZ2lkICItLWR1bXAtYWxpYXNlcyBpbmNvbXBhdGlibGUgd2l0aCBvdGhlciBvcHRpb25zXG4iCittc2dzdHIgIi0tZHVtcC1hbGlhc2VzIGRpxJ9lciBzZcOnZW5la2xlcmxlIHV5dW1zdXpcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo0ODEgZ2l0LXNlbmQtZW1haWwucGVybDo2ODMKK21zZ2lkICJDYW5ub3QgcnVuIGdpdCBmb3JtYXQtcGF0Y2ggZnJvbSBvdXRzaWRlIGEgcmVwb3NpdG9yeVxuIgorbXNnc3RyICInZ2l0IGZvcm1hdC1wYXRjaCcgYmlyIGRlcG9udW4gZMSxxZ/EsW5kYW4gw6dhbMSxxZ90xLFyxLFsYW3EsXlvclxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ4NAorbXNnaWQgIiIKKyJgYmF0Y2gtc2l6ZWAgYW5kIGByZWxvZ2luYCBtdXN0IGJlIHNwZWNpZmllZCB0b2dldGhlciAodmlhIGNvbW1hbmQtbGluZSBvciAiCisiY29uZmlndXJhdGlvbiBvcHRpb24pXG4iCittc2dzdHIgIiIKKyInYmF0Y2gtc2l6ZScgdmUgJ3JlbG9naW4nIGJpcmxpa3RlIGJlbGlydGlsbWVsaSAoa29tdXQgc2F0xLFyxLEgdmV5YSAiCisieWFwxLFsYW5kxLFybWEgc2XDp2VuZWtsZXJpbmRlbilcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo0OTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5rbm93biAtLXN1cHByZXNzLWNjIGZpZWxkOiAnJXMnXG4iCittc2dzdHIgIkJpbGlubWV5ZW4gLS1zdXBwcmVzcy1jYyBhbGFuxLE6ICclcydcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5rbm93biAtLWNvbmZpcm0gc2V0dGluZzogJyVzJ1xuIgorbXNnc3RyICJCaWxpbm1leWVuIC0tY29uZmlybSBheWFyxLE6ICclcydcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAid2FybmluZzogc2VuZG1haWwgYWxpYXMgd2l0aCBxdW90ZXMgaXMgbm90IHN1cHBvcnRlZDogJXNcbiIKK21zZ3N0ciAidXlhcsSxOiB0xLFybmFrIGnDp2luZSBhbMSxbm3EscWfIHNlbmRtYWlsIGFybWFzxLEgZGVzdGVrbGVubWl5b3I6ICVzXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIndhcm5pbmc6IGA6aW5jbHVkZTpgIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCittc2dzdHIgInV5YXLEsTogJzppbmNsdWRlOicgZGVzdGVrbGVubWl5b3I6ICVzXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIndhcm5pbmc6IGAvZmlsZWAgb3IgYHxwaXBlYCByZWRpcmVjdGlvbiBub3Qgc3VwcG9ydGVkOiAlc1xuIgorbXNnc3RyICJ1eWFyxLE6ICcvZmlsZScgdmV5YSAnfHBpcGUnIHllbmlkZW4gecO2bmxlbmRpcm1lc2kgZGVzdGVrbGVubWl5b3I6ICVzXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTY1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIndhcm5pbmc6IHNlbmRtYWlsIGxpbmUgaXMgbm90IHJlY29nbml6ZWQ6ICVzXG4iCittc2dzdHIgInV5YXLEsTogc2VuZG1haWwgc2F0xLFyxLEgdGFuxLFtbGFuYW1hZMSxOiAlc1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY0OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiRmlsZSAnJXMnIGV4aXN0cyBidXQgaXQgY291bGQgYWxzbyBiZSB0aGUgcmFuZ2Ugb2YgY29tbWl0c1xuIgorInRvIHByb2R1Y2UgcGF0Y2hlcyBmb3IuICBQbGVhc2UgZGlzYW1iaWd1YXRlIGJ5Li4uXG4iCisiXG4iCisiICAgICogU2F5aW5nIFwiLi8lc1wiIGlmIHlvdSBtZWFuIGEgZmlsZTsgb3JcbiIKKyIgICAgKiBHaXZpbmcgLS1mb3JtYXQtcGF0Y2ggb3B0aW9uIGlmIHlvdSBtZWFuIGEgcmFuZ2UuXG4iCittc2dzdHIgIiIKKyInJXMnIGRvc3lhc8SxIG1ldmN1dCwgYW5jYWsgYXluxLEgemFtYW5kYSB5YW1hIMO8cmV0aWxlY2VrIGfDtm5kZXJpbGVyaW5cbiIKKyJiaXIgZXJpbWkgZGUgb2xhYmlsaXIuIEzDvHRmZW4gxZ91bmxhcsSxIGt1bGxhbmFyYWsgYcOnxLFrbMSxayBnZXRpcmluOlxuIgorIlxuIgorIlx0KiBCaXIgZG9zeWEgZGVtZWsgaXN0aXlvcnNhbsSxeiBcIi4vJXNcIiBkaXllcmVrIHZleWFcbiIKKyJcdCogQmlyIGVyaW0gZGVtZWsgaXN0aXlvcnNhbsSxeiAtLWZvcm1hdC1wYXRjaCBzZcOnZW5lxJ9pbmkgdmVyZXJla1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gb3BlbmRpciAlczogJXMiCittc2dzdHIgIiVzIG9wZW5kaXIgeWFwxLFsYW1hZMSxOiAlcyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo2OTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImZhdGFsOiAlczogJXNcbiIKKyJ3YXJuaW5nOiBubyBwYXRjaGVzIHdlcmUgc2VudFxuIgorbXNnc3RyICIiCisib251bG1hejogJXM6ICVzXG4iCisidXlhcsSxOiBoacOnYmlyIHlhbWEgZ8O2bmRlcmlsbWVkaVxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcwNQorbXNnaWQgIiIKKyJcbiIKKyJObyBwYXRjaCBmaWxlcyBzcGVjaWZpZWQhXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJIacOnYmlyIHlhbWEgZG9zeWFzxLEgYmVsaXJ0aWxtZWRpIVxuIgorIlxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcxOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJObyBzdWJqZWN0IGxpbmUgaW4gJXM/IgorbXNnc3RyICIlcyBpw6dpbmRlIGtvbnUgc2F0xLFyxLEgeW9rIG11PyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIG9wZW4gZm9yIHdyaXRpbmcgJXM6ICVzIgorbXNnc3RyICIlcyB5YXptYSBpw6dpbiBhw6fEsWxhbWFkxLE6ICVzIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjczOQorbXNnaWQgIiIKKyJMaW5lcyBiZWdpbm5pbmcgaW4gXCJHSVQ6XCIgd2lsbCBiZSByZW1vdmVkLlxuIgorIkNvbnNpZGVyIGluY2x1ZGluZyBhbiBvdmVyYWxsIGRpZmZzdGF0IG9yIHRhYmxlIG9mIGNvbnRlbnRzXG4iCisiZm9yIHRoZSBwYXRjaCB5b3UgYXJlIHdyaXRpbmcuXG4iCisiXG4iCisiQ2xlYXIgdGhlIGJvZHkgY29udGVudCBpZiB5b3UgZG9uJ3Qgd2lzaCB0byBzZW5kIGEgc3VtbWFyeS5cbiIKK21zZ3N0ciAiIgorIlwiR0lUOlwiIGlsZSBiYcWfbGF5YW4gc2F0xLFybGFyIGthbGTEsXLEsWxhY2FrdMSxci5cbiIKKyJZYXpkxLHEn8SxbsSxeiB5YW1hIGnDp2luIGdlbmVsIGJpciBkaWZmc3RhdCB2ZXlhIGnDp2VyaWsgdGFibG9zdVxuIgorImVrbGVtZXlpIGTDvMWfw7xuw7xuLlxuIgorIlxuIgorIkJpciDDtnpldCBnw7ZuZGVybWVrIGlzdGVtaXlvcnNhbsSxeiBnw7Z2ZGUga8Sxc23EsW7EsSB0ZW1pemxleWluLlxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gb3BlbiAlczogJXMiCittc2dzdHIgIiVzIGHDp8SxbGFtYWTEsTogJXMiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBvcGVuICVzLmZpbmFsOiAlcyIKK21zZ3N0ciAiJXMuZmluYWwgYcOnxLFsYW1hZMSxOiAlcyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo4MjMKK21zZ2lkICJTdW1tYXJ5IGVtYWlsIGlzIGVtcHR5LCBza2lwcGluZyBpdFxuIgorbXNnc3RyICLDlnpldCBlLXBvc3Rhc8SxIGJvxZ8sIGF0bGFuxLF5b3JcbiIKKworIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBrZWVwIFt5L05dIGFzIGlzLgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo4NTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHVzZSA8JXM+IFt5L05dPyAiCittc2dzdHIgIjwlcz4ga3VsbGFubWFrIGlzdGVkacSfaW5pemRlbiBlbWluIG1pc2luaXogW3kvTl0/ICIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MTMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBmaWxlcyBhcmUgOGJpdCwgYnV0IGRvIG5vdCBkZWNsYXJlIGEgQ29udGVudC1UcmFuc2Zlci0iCisiRW5jb2RpbmcuXG4iCittc2dzdHIgIiIKKyJBxZ9hxJ/EsWRha2kgZG9zeWFsYXIgOCBiaXQsIGFuY2FrIENvbnRlbnQtVHJhbnNmZXItRW5jb2RpbmcgZGVzdGVrbGVtaXlvcmxhci5cbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MTgKK21zZ2lkICJXaGljaCA4Yml0IGVuY29kaW5nIHNob3VsZCBJIGRlY2xhcmUgW1VURi04XT8gIgorbXNnc3RyICJIYW5naSA4IGJpdCBrb2RsYW1hecSxIGJleWFuIGV0bWVsaXlpbSBbVVRGLThdPyAiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTI2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJSZWZ1c2luZyB0byBzZW5kIGJlY2F1c2UgdGhlIHBhdGNoXG4iCisiXHQlc1xuIgorImhhcyB0aGUgdGVtcGxhdGUgc3ViamVjdCAnKioqIFNVQkpFQ1QgSEVSRSAqKionLiBQYXNzIC0tZm9yY2UgaWYgeW91IHJlYWxseSAiCisid2FudCB0byBzZW5kLlxuIgorbXNnc3RyICIiCisiR8O2bmRlcm1lIHJlZGRlZGlsaXlvciwgw6fDvG5rw7xcbiIKKyJcdCVzXG4iCisiacOnaW5kZSAnKioqIFNVQkpFQ1QgSEVSRSAqKionIGtvbnUgxZ9hYmxvbnUgdmFyLiBZaW5lIGRlIGfDtm5kZXJtZWsgIgorImlzdGl5b3JzYW7EsXogLS1mb3JjZSBrdWxsYW7EsW4uXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTQ1Cittc2dpZCAiVG8gd2hvbSBzaG91bGQgdGhlIGVtYWlscyBiZSBzZW50IChpZiBhbnlvbmUpPyIKK21zZ3N0ciAiRS1wb3N0YWxhciBraW1lIGfDtm5kZXJpbG1lbGkgKGXEn2VyIGdlcmVrbGl5c2UpPyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmF0YWw6IGFsaWFzICclcycgZXhwYW5kcyB0byBpdHNlbGZcbiIKK21zZ3N0ciAib251bG1hejogJyVzJyBhcm1hc8SxIGtlbmRpc2luZSBnZW5pxZ9saXlvclxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjk3NQorbXNnaWQgIk1lc3NhZ2UtSUQgdG8gYmUgdXNlZCBhcyBJbi1SZXBseS1UbyBmb3IgdGhlIGZpcnN0IGVtYWlsIChpZiBhbnkpPyAiCittc2dzdHIgIiIKKyLEsGxrIGUtcG9zdGEgacOnaW4gTWVzc2FnZS1JRCwgSW4tUmVwbHktVG8gb2xhcmFrIGt1bGxhbsSxbHPEsW4gbcSxIChlxJ9lciAiCisiZ2VyZWtsaXlzZSk/IgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMzMgZ2l0LXNlbmQtZW1haWwucGVybDoxMDQxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVycm9yOiB1bmFibGUgdG8gZXh0cmFjdCBhIHZhbGlkIGFkZHJlc3MgZnJvbTogJXNcbiIKK21zZ3N0ciAiaGF0YTogxZ91cmFkYW4gZ2XDp2VybGkgYmlyIGFkcmVzIMOnxLFrYXJ0xLFsYW1hZMSxOiAlc1xuIgorCisjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3FdIFtkXSBbZV0gaW4geW91cgorIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAorIy4gYXQgdGhpcyBwb2ludC4KKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTA0NQorbXNnaWQgIldoYXQgdG8gZG8gd2l0aCB0aGlzIGFkZHJlc3M/IChbcV11aXR8W2Rdcm9wfFtlXWRpdCk6ICIKK21zZ3N0ciAiQnUgYWRyZXNsZSBuZSB5YXDEsWxzxLFuPyAoW3FdIMOnxLFrfFtkXSBixLFyYWt8ZMO8eltlXW5sZSk6ICIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMzYyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNBIHBhdGggXCIlc1wiIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJDQSB5b2x1IFwiJXNcIiBtZXZjdXQgZGXEn2lsIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NDUKK21zZ2lkICIiCisiICAgIFRoZSBDYyBsaXN0IGFib3ZlIGhhcyBiZWVuIGV4cGFuZGVkIGJ5IGFkZGl0aW9uYWxcbiIKKyIgICAgYWRkcmVzc2VzIGZvdW5kIGluIHRoZSBwYXRjaCBjb21taXQgbWVzc2FnZS4gQnkgZGVmYXVsdFxuIgorIiAgICBzZW5kLWVtYWlsIHByb21wdHMgYmVmb3JlIHNlbmRpbmcgd2hlbmV2ZXIgdGhpcyBvY2N1cnMuXG4iCisiICAgIFRoaXMgYmVoYXZpb3IgaXMgY29udHJvbGxlZCBieSB0aGUgc2VuZGVtYWlsLmNvbmZpcm1cbiIKKyIgICAgY29uZmlndXJhdGlvbiBzZXR0aW5nLlxuIgorIlxuIgorIiAgICBGb3IgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiwgcnVuICdnaXQgc2VuZC1lbWFpbCAtLWhlbHAnLlxuIgorIiAgICBUbyByZXRhaW4gdGhlIGN1cnJlbnQgYmVoYXZpb3IsIGJ1dCBzcXVlbGNoIHRoaXMgbWVzc2FnZSxcbiIKKyIgICAgcnVuICdnaXQgY29uZmlnIC0tZ2xvYmFsIHNlbmRlbWFpbC5jb25maXJtIGF1dG8nLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAgIFl1a2FyxLFkYWtpIENjIGxpc3Rlc2kgeWFtYSBnw7ZuZGVyaSBpbGV0aXNpbmRlIGJ1bHVuYW4gYWRyZXNsZXJcbiIKKyIgICAga3VsbGFuxLFsYXJhayBnZW5pxZ9sZXRpbG1pxZ90aXIuIEJ1IGdlcsOnZWtsZcWfdGnEn2luZGUgc2VuZC1lbWFpbFxuIgorIiAgICDDtm50YW7EsW1sxLEgb2xhcmFrIGlsZXRpeWkgZ8O2bmRlcm1lZGVuIMO2bmNlIHNvcmFyLiBCdSBkYXZyYW7EscWfXG4iCisiICAgIHNlbmRlbWFpbC5jb25maXJtIHlhcMSxbGFuZMSxcm1hIGF5YXLEsXlsYSBkZW5ldGxlbmlyLlxuIgorIlxuIgorIiAgICBFayBiaWxnaSBpw6dpbiAnZ2l0IHNlbmQtZW1haWwgLS1oZWxwJyDDp2FsxLHFn3TEsXLEsW4uXG4iCisiICAgIEdlw6dlcmxpIGRhdnJhbsSxxZ/EsSBrb3J1bWFrLCBhbmNhayBidSBpbGV0aXlpIHN1c3R1cm1hayBpw6dpblxuIgorIiAgICAnZ2l0IGNvbmZpZyAtLWdsb2JhbCBzZW5kZW1haWwuY29uZmlybSBhdXRvJyDDp2FsxLHFn3TEsXLEsW4uXG4iCisiXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbeV0gW25dIFtlXSBbcV0gW2FdIGluIHlvdXIKKyMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKKyMuIGF0IHRoaXMgcG9pbnQuCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjAKK21zZ2lkICJTZW5kIHRoaXMgZW1haWw/IChbeV1lc3xbbl1vfFtlXWRpdHxbcV11aXR8W2FdbGwpOiAiCittc2dzdHIgIiIKKyJCdSBlLXBvc3RhIGfDtm5kZXJpbHNpbiBtaT8gKFt5XSBldmV0fFtuXSBoYXnEsXJ8ZMO8eltlXW5sZXxbcV0gw6fEsWt8W2FdIHTDvG3DvCk6ICIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDYzCittc2dpZCAiU2VuZCB0aGlzIGVtYWlsIHJlcGx5IHJlcXVpcmVkIgorbXNnc3RyICJCdSBlLXBvc3RhecSxIHlhbsSxdCBnZXJla3Rpcm1lIHNlw6dlbmXEn2l5bGUgZ8O2bmRlciIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDkxCittc2dpZCAiVGhlIHJlcXVpcmVkIFNNVFAgc2VydmVyIGlzIG5vdCBwcm9wZXJseSBkZWZpbmVkLiIKK21zZ3N0ciAiR2VyZWtsaSBTTVRQIHN1bnVjdXN1IGTDvHpnw7xuY2UgdGFuxLFtbGFubWFtxLHFny4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBTVEFSVFRMUyEgJXMiCittc2dzdHIgIlN1bnVjdSBTVEFSVFRMUyBkZXN0ZWtsZW1peW9yISAlcyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJTVEFSVFRMUyBmYWlsZWQhICVzIgorbXNnc3RyICJTVEFSVFRMUyBiYcWfYXLEsXPEsXogb2xkdSEgJXMiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU1NgorbXNnaWQgIlVuYWJsZSB0byBpbml0aWFsaXplIFNNVFAgcHJvcGVybHkuIENoZWNrIGNvbmZpZyBhbmQgdXNlIC0tc210cC1kZWJ1Zy4iCittc2dzdHIgIiIKKyJTTVRQIGTDvHpnw7xuY2UgYmHFn2xhdMSxbGFtxLF5b3IuIFlhcMSxbGFuZMSxcm1hecSxIGRlbmV0bGV5aW4gdmUgLS1zbXRwLWRlYnVnICIKKyJ5YXDEsW4uIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHNlbmQgJXNcbiIKK21zZ3N0ciAiJXMgZ8O2bmRlcmlsZW1lZGlcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkRyeS1TZW50ICVzXG4iCittc2dzdHIgIiVzIGfDtm5kZXJpbGlyIGdpYmkgeWFwxLFsZMSxXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJTZW50ICVzXG4iCittc2dzdHIgIiVzIGfDtm5kZXJpbGRpXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3OQorbXNnaWQgIkRyeS1PSy4gTG9nIHNheXM6XG4iCittc2dzdHIgIlPEsW5hbWEgdGFtYW0uIEfDvG5sw7xrIMOnxLFrdMSxc8SxOlxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzkKK21zZ2lkICJPSy4gTG9nIHNheXM6XG4iCittc2dzdHIgIlRhbWFtLiBHw7xubMO8ayDDp8Sxa3TEsXPEsTpcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTkxCittc2dpZCAiUmVzdWx0OiAiCittc2dzdHIgIlNvbnXDpzogIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1OTQKK21zZ2lkICJSZXN1bHQ6IE9LXG4iCittc2dzdHIgIlNvbnXDpzogVGFtYW1cbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbid0IG9wZW4gZmlsZSAlcyIKK21zZ3N0ciAiJXMgZG9zeWFzxLEgYcOnxLFsYW3EsXlvciIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjU5IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY3OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIobWJveCkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgorbXNnc3RyICIobWJveCkgQ2M6ICVzLCAnJXMnIHNhdMSxcsSxbmRhbiBla2xlbml5b3JcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjY1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIihtYm94KSBBZGRpbmcgdG86ICVzIGZyb20gbGluZSAnJXMnXG4iCittc2dzdHIgIihtYm94KSBUbzogJXMsICclcycgc2F0xLFyxLFuZGFuIGVrbGVuaXlvclxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE3MTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiKG5vbi1tYm94KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCittc2dzdHIgIihub24tbWJveCkgQ2M6ICVzLCAnJXMnIHNhdMSxcsSxbmRhbiBla2xlbml5b3JcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzUzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIihib2R5KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCittc2dzdHIgIihib2R5KSBDYzogJXMsICclcycgc2F0xLFyxLFuZGFuIGVrbGVuaXlvclxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiKCVzKSBDb3VsZCBub3QgZXhlY3V0ZSAnJXMnIgorbXNnc3RyICIoJXMpICclcycgw6dhbMSxxZ90xLFyxLFsYW1hZMSxIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiKCVzKSBBZGRpbmcgJXM6ICVzIGZyb206ICclcydcbiIKK21zZ3N0ciAiKCVzKSAlczogJXMsICclcycga29udW11bmRhbiBla2xlbml5b3JcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiglcykgZmFpbGVkIHRvIGNsb3NlIHBpcGUgdG8gJyVzJyIKK21zZ3N0ciAiKCVzKSDFn3VyYXlhIG9sYW4gdmVyaSB5b2x1IGthcGF0xLFsYW1hZMSxOiAnJXMnIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MDUKK21zZ2lkICJjYW5ub3Qgc2VuZCBtZXNzYWdlIGFzIDdiaXQiCittc2dzdHIgImlsZXRpIDcgYml0IG9sYXJhayBnw7ZuZGVyaWxlbWl5b3IiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkxMworbXNnaWQgImludmFsaWQgdHJhbnNmZXIgZW5jb2RpbmciCittc2dzdHIgImdlw6dlcnNpeiBha3RhcsSxbSBrb2RsYW1hc8SxIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NTQgZ2l0LXNlbmQtZW1haWwucGVybDoyMDA2IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjAxNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAlczogJXNcbiIKK21zZ3N0ciAiJXMgYcOnxLFsYW3EsXlvcjogJXNcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTU3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiBwYXRjaCBjb250YWlucyBhIGxpbmUgbG9uZ2VyIHRoYW4gOTk4IGNoYXJhY3RlcnMiCittc2dzdHIgIiVzOiB5YW1hIDk5OCBrYXJha3RlcmRlbiBkYWhhIHV6dW4gYmlyIHNhdMSxciBpw6dlcml5b3IiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJTa2lwcGluZyAlcyB3aXRoIGJhY2t1cCBzdWZmaXggJyVzJy5cbiIKK21zZ3N0ciAiJXMsIHllZGVrIHNvbmVrICclcycgaWxlIGF0bGFuxLF5b3IuXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBwbGVhc2Uga2VlcCAiW3l8Tl0iIGFzIGlzLgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTc4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkRvIHlvdSByZWFsbHkgd2FudCB0byBzZW5kICVzPyBbeXxOXTogIgorbXNnc3RyICIlcyDDtmdlc2luaSBnZXLDp2VrdGVuIGfDtm5kZXJtZWsgaXN0aXlvciBtdXN1bnV6PyBbeXxOXTogIgpkaWZmIC0tZ2l0IGEvcG8vdmkucG8gYi9wby92aS5wbwppbmRleCBiYmRlYjVjLi41NDU5NDg0IDEwMDY0NAotLS0gYS9wby92aS5wbworKysgYi9wby92aS5wbwpAQCAtMiwxNCArMiwxNSBAQAogIyBC4bqjbiBk4buLY2ggdGnhur9uZyBWaeG7h3QgZMOgbmggY2hvIEdJVC1DT1JFLgogIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgZ2l0LWNvcmUgcGFja2FnZS4KICMgTmd1eeG7hW4gVGjDoWkgTmfhu41jIER1eSA8cGNsb3Vkc0BnbWFpbC5jb20+LCAyMDEyLgotIyBUcuG6p24gTmfhu41jIFF1w6JuIDx2bndpbGRtYW5AZ21haWwuY29tPiwgMjAxMiwgMjAxMywgMjAxNCwgMjAxNSwgMjAxNiwgMjAxNywgMjAxOC4KKyMgVHLhuqduIE5n4buNYyBRdcOibiA8dm53aWxkbWFuQGdtYWlsLmNvbT4sIDIwMTIsIDIwMTMsIDIwMTQsIDIwMTUsIDIwMTYsIDIwMTcsIDIwMTgsIDIwMTksIDIwMjAuCisjIMSQb8OgbiBUcuG6p24gQ8O0bmcgRGFuaCA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+LCAyMDIwLgogIwogbXNnaWQgIiIKIG1zZ3N0ciAiIgotIlByb2plY3QtSWQtVmVyc2lvbjogZ2l0IHYyLjIwLjAgcm91bmQgM1xuIgorIlByb2plY3QtSWQtVmVyc2lvbjogZ2l0IHYyLjI2LjBcbiIKICJSZXBvcnQtTXNnaWQtQnVncy1UbzogR2l0IE1haWxpbmcgTGlzdCA8Z2l0QHZnZXIua2VybmVsLm9yZz5cbiIKLSJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxOC0xMi0wMiAxMDo1NSswODAwXG4iCi0iUE8tUmV2aXNpb24tRGF0ZTogMjAxOC0xMi0wMiAxNDoxMiswNzAwXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMjAtMDMtMTEgMTU6MjYrMDgwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMjAtMDMtMTYgMDg6NTIrMDcwMFxuIgogIkxhc3QtVHJhbnNsYXRvcjogVHLhuqduIE5n4buNYyBRdcOibiA8dm53aWxkbWFuQGdtYWlsLmNvbT5cbiIKICJMYW5ndWFnZS1UZWFtOiBWaWV0bmFtZXNlIDx0cmFuc2xhdGlvbi10ZWFtLXZpQGxpc3RzLnNvdXJjZWZvcmdlLm5ldD5cbiIKICJMYW5ndWFnZTogdmlcbiIKQEAgLTE5LDQ4ICsyMCw3MzUgQEAKICJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTE7IHBsdXJhbD0wO1xuIgogIlgtTGFuZ3VhZ2UtVGVhbS1XZWJzaXRlOiA8aHR0cDovL3RyYW5zbGF0aW9ucHJvamVjdC5vcmcvdGVhbS92aS5odG1sPlxuIgogIlgtUG9lZGl0LVNvdXJjZUNoYXJzZXQ6IFVURi04XG4iCi0iWC1Qb2VkaXQtQmFzZXBhdGg6IC4uL1xuIgorIlgtUG9lZGl0LUJhc2VwYXRoOiAuLlxuIgogIlgtR2VuZXJhdG9yOiBHdHJhbnNsYXRvciAyLjkxLjdcbiIKIAotIzogYWR2aWNlLmM6OTkKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjM2OAorIywgYy1mb3JtYXQKK21zZ2lkICJIdWggKCVzKT8iCittc2dzdHIgIkjhuqMgKCVzKT8iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjUyMSBhZGQtaW50ZXJhY3RpdmUuYzo4MjIgc2VxdWVuY2VyLmM6MzEyNAorIzogc2VxdWVuY2VyLmM6MzU2MiBidWlsdGluL3JlYmFzZS5jOjg3NSBidWlsdGluL3JlYmFzZS5jOjE2ODcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA4NiBidWlsdGluL3JlYmFzZS5jOjIxMzAKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBpbmRleCIKK21zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyBi4bqjbmcgbeG7pWMgbOG7pWMiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjU3NiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI2OQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyOTQKK21zZ2lkICJiaW5hcnkiCittc2dzdHIgIm5o4buLIHBow6JuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2MzQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyNzgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzMyCittc2dpZCAibm90aGluZyIKK21zZ3N0ciAia2jDtG5nIGPDsyBnw6wiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjYzNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMjkKK21zZ2lkICJ1bmNoYW5nZWQiCittc2dzdHIgImtow7RuZyB0aGF5IMSR4buVaSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjQzCittc2dpZCAiVXBkYXRlIgorbXNnc3RyICJD4bqtcCBuaOG6rXQiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY4OSBhZGQtaW50ZXJhY3RpdmUuYzo4NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YWdlICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyDEkcawYSDigJwlc+KAnSBsw6puIGLhu4cgcGjDs25nIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2OTUgYWRkLWludGVyYWN0aXZlLmM6ODg0IHNlcXVlbmNlci5jOjMzMTcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6ODk5Cittc2dpZCAiY291bGQgbm90IHdyaXRlIGluZGV4IgorbXNnc3RyICJraMO0bmcgdGjhu4MgZ2hpIGLhuqNuZyBt4bulYyBs4bulYyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njk4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjI4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJ1cGRhdGVkICVkIHBhdGhcbiIKK21zZ2lkX3BsdXJhbCAidXBkYXRlZCAlZCBwYXRoc1xuIgorbXNnc3RyWzBdICLEkcOjIGPhuq1wIG5o4bqtdCAlZCDEkcaw4budbmcgZOG6q25cbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NzE2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Njc4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJub3RlOiAlcyBpcyB1bnRyYWNrZWQgbm93LlxuIgorbXNnc3RyICJjaMO6IMO9OiAlcyBnaeG7nSDEkcOjIGLhu48gdGhlbyBkw7VpLlxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3MjEgYXBwbHkuYzo0MTEwIGJ1aWx0aW4vY2hlY2tvdXQuYzoyODEKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFrZV9jYWNoZV9lbnRyeSBmYWlsZWQgZm9yIHBhdGggJyVzJyIKK21zZ3N0ciAibWFrZV9jYWNoZV9lbnRyeSBn4bq3cCBs4buXaSDEkeG7kWkgduG7m2kgxJHGsOG7nW5nIGThuqtuIOKAnCVz4oCdIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3NTEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NTUKK21zZ2lkICJSZXZlcnQiCittc2dzdHIgIkhvw6BuIG5ndXnDqm4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjc2NworbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBIRUFEXnt0cmVlfSIKK21zZ3N0ciAiS2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIGPDuiBwaMOhcCBIRUFEXnt0cmVlfSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODA1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjMxCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJyZXZlcnRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInJldmVydGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gIsSRw6MgaG/DoG4gbmd1ecOqbiAlZCDEkcaw4budbmcgZOG6q25cbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODU2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Njk1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHVudHJhY2tlZCBmaWxlcy5cbiIKK21zZ3N0ciAiS2jDtG5nIGPDsyB04bqtcCB0aW4gbsOgbyBjaMawYSDEkcaw4bujYyB0aGVvIGTDtWkuXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjg2MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY4OQorbXNnaWQgIkFkZCB1bnRyYWNrZWQiCittc2dzdHIgIlRow6ptIGPDoWMgY8OhaSBjaMawYSDEkcaw4bujYyB0aGVvIGTDtWkiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjg4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyNQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWRkZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJhZGRlZCAlZCBwYXRoc1xuIgorbXNnc3RyWzBdICLEkcOjIHRow6ptICVkIMSRxrDhu51uZyBk4bqrblxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgdW5tZXJnZWQ6ICVzIgorbXNnc3RyICJi4buPIHF1YSBuaOG7r25nIHRo4bupIGNoxrBhIGjDsmEgdHLhu5luOiAlcyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTI5IGFkZC1wYXRjaC5jOjE2NzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzY2CisjLCBjLWZvcm1hdAorbXNnaWQgIk9ubHkgYmluYXJ5IGZpbGVzIGNoYW5nZWQuXG4iCittc2dzdHIgIkNo4buJIGPDsyBjw6FjIHThuq1wIHRpbiBuaOG7iyBwaMOibiBsw6AgdGhheSDEkeG7lWkuXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkzMSBhZGQtcGF0Y2guYzoxNjczIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2OAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBjaGFuZ2VzLlxuIgorbXNnc3RyICJLaMO0bmcgY8OzIHRoYXkgxJHhu5VpIG7DoG8uXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkzNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNzYKK21zZ2lkICJQYXRjaCB1cGRhdGUiCittc2dzdHIgIkPhuq1wIG5o4bqtdCBtaeG6v25nIHbDoSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTc0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1NAorbXNnaWQgIlJldmlldyBkaWZmIgorbXNnc3RyICJYZW0geMOpdCBs4bqhaSBkaWZmIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDAyCittc2dpZCAic2hvdyBwYXRocyB3aXRoIGNoYW5nZXMiCittc2dzdHIgImhp4buDbiB0aOG7iyDEkcaw4budbmcgZOG6q24gduG7m2kgY8OhYyB0aGF5IMSR4buVaSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwNAorbXNnaWQgImFkZCB3b3JraW5nIHRyZWUgc3RhdGUgdG8gdGhlIHN0YWdlZCBzZXQgb2YgY2hhbmdlcyIKK21zZ3N0ciAiIgorInRow6ptIHRy4bqhbmcgdGjDoWkgY8OieSBsw6BtIHZp4buHYyB2w6BvIHThuq1wIGjhu6NwIGPDoWMgdGhheSDEkeG7lWkgxJHDoyDEkcaw4bujYyDEkcawYSBsw6puIGLhu4cgIgorInBow7NuZyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwNgorbXNnaWQgInJldmVydCBzdGFnZWQgc2V0IG9mIGNoYW5nZXMgYmFjayB0byB0aGUgSEVBRCB2ZXJzaW9uIgorbXNnc3RyICIiCisiaG/DoG4gbmd1ecOqbiBs4bqhaSB04bqtcCBo4bujcCBjw6FjIHRoYXkgxJHhu5VpIMSRw6MgxJHGsOG7o2MgxJHGsGEgbMOqbiBi4buHIHBow7NuZyB0cuG7nyBs4bqhaSBwaGnDqm4gIgorImLhuqNuIEhFQUQiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDgKK21zZ2lkICJwaWNrIGh1bmtzIGFuZCB1cGRhdGUgc2VsZWN0aXZlbHkiCittc2dzdHIgImNo4buNbiBjw6FjIOKAnGtow7pj4oCdIHbDoCBj4bqtcCBuaOG6rXQgY8OzIHR1eeG7g24gY2jhu41uIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDEwCittc2dpZCAidmlldyBkaWZmIGJldHdlZW4gSEVBRCBhbmQgaW5kZXgiCittc2dzdHIgInhlbSBraMOhYyBiaeG7h3QgZ2nhu69hIEhFQUQgdsOgIG3hu6VjIGzhu6VjIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDEyCittc2dpZCAiYWRkIGNvbnRlbnRzIG9mIHVudHJhY2tlZCBmaWxlcyB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIgorbXNnc3RyICIiCisidGjDqm0gbuG7mWkgZHVuZyBj4bunYSBjw6FjIHThuq1wIHRpbiBjaMawYSDEkcaw4bujYyB0aGVvIGTDtWkgdsOgbyB04bqtcCBo4bujcCBjw6FjIHRoYXkgxJHhu5VpIMSRw6MgIgorIsSRxrDhu6NjIMSRxrBhIGzDqm4gYuG7hyBwaMOzbmciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjAgYWRkLWludGVyYWN0aXZlLmM6MTA2OQorbXNnaWQgIlByb21wdCBoZWxwOiIKK21zZ3N0ciAiVHLhu6MgZ2nDunAgduG7gSBuaOG6r2M6IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDIyCittc2dpZCAic2VsZWN0IGEgc2luZ2xlIGl0ZW0iCittc2dzdHIgImNo4buNbiBt4buZdCBt4bulYyDEkcahbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyNAorbXNnaWQgInNlbGVjdCBhIHJhbmdlIG9mIGl0ZW1zIgorbXNnc3RyICJjaOG7jW4gbeG7mXQgdsO5bmcgY8OhYyBt4bulYyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyNgorbXNnaWQgInNlbGVjdCBtdWx0aXBsZSByYW5nZXMiCittc2dzdHIgImNo4buNbiBuaGnhu4F1IHbDuW5nIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDI4IGFkZC1pbnRlcmFjdGl2ZS5jOjEwNzMKK21zZ2lkICJzZWxlY3QgaXRlbSBiYXNlZCBvbiB1bmlxdWUgcHJlZml4IgorbXNnc3RyICJjaOG7jW4gbeG7pWMgZOG7sWEgdHLDqm4gdGnhu4FuIHThu5EgZHV5IG5o4bqldCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAzMAorbXNnaWQgInVuc2VsZWN0IHNwZWNpZmllZCBpdGVtcyIKK21zZ3N0ciAiYuG7jyBjaOG7jW4gY8OhYyBt4bulYyDEkcOjIGNobyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAzMgorbXNnaWQgImNob29zZSBhbGwgaXRlbXMiCittc2dzdHIgImNo4buNbiB04bqldCBj4bqjIGPDoWMgbeG7pWMiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMzQKK21zZ2lkICIoZW1wdHkpIGZpbmlzaCBzZWxlY3RpbmciCittc2dzdHIgIijEkeG7gyB0cuG7kW5nKSBob8OgbiB04bqldCBjaOG7jW4gbOG7sWEiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwNzEKK21zZ2lkICJzZWxlY3QgYSBudW1iZXJlZCBpdGVtIgorbXNnc3RyICJ0w7l5IGNo4buNbiBt4bulYyBi4bqxbmcgc+G7kSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3NQorbXNnaWQgIihlbXB0eSkgc2VsZWN0IG5vdGhpbmciCittc2dzdHIgIijEkeG7gyB0cuG7kW5nKSBraMO0bmcgY2jhu41uIGfDrCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA4MyBidWlsdGluL2NsZWFuLmM6ODIyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTg1MQorbXNnaWQgIioqKiBDb21tYW5kcyAqKioiCittc2dzdHIgIioqKiBM4buHbmggKioqIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDg0IGJ1aWx0aW4vY2xlYW4uYzo4MjMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODQ4Cittc2dpZCAiV2hhdCBub3ciCittc2dzdHIgIkdp4budIHRow6wgc2FvIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTM2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEzCittc2dpZCAic3RhZ2VkIgorbXNnc3RyICLEkcOjIMSRxrBhIGzDqm4gYuG7hyBwaMOzbmciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJ1bnN0YWdlZCIKK21zZ3N0ciAiY2jGsGEgxJHGsGEgbMOqbiBi4buHIHBow7NuZyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTEzNiBhcHBseS5jOjQ5NjcgYXBwbHkuYzo0OTcwIGJ1aWx0aW4vYW0uYzoyMjUxCisjOiBidWlsdGluL2FtLmM6MjI1NCBidWlsdGluL2Nsb25lLmM6MTIzIGJ1aWx0aW4vZmV0Y2guYzoxNDQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzQgYnVpbHRpbi9wdWxsLmM6MTg5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MDkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwMiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwNQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNDggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJwYXRoIgorbXNnc3RyICLEkcaw4budbmctZOG6q24iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExNDMKK21zZ2lkICJjb3VsZCBub3QgcmVmcmVzaCBpbmRleCIKK21zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyBs4bqhaSBi4bqjbmcgbeG7pWMgbOG7pWMiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExNTcgYnVpbHRpbi9jbGVhbi5jOjc4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnllLlxuIgorbXNnc3RyICJU4bqhbSBiaeG7h3QuXG4iCisKKyM6IGFkZC1wYXRjaC5jOjMzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQyOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIlRoYXkgxJHhu5VpIGNo4bq/IMSR4buZIGLhu4cgcGjDs25nIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzozNCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjkKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YWdlIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJYw7NhIGto4buPaSBi4buHIHBow7NuZyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDMwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIsSQxrBhIGzDqm4gYuG7hyBwaMOzbmcga2jDumMgbsOgeSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzcKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisic3RhZ2luZy4iCittc2dzdHIgIiIKKyJO4bq/dSBtaeG6v25nIHbDoSDEkcaw4bujYyDDoXAgZOG7pW5nIHPhuqFjaCBz4bq9LCBraMO6YyDEkcOjIHPhu61hIHPhur0gbmdheSBs4bqtcCB04bupYyDEkcaw4bujYyDEkcOhbmggZOG6pXUgIgorIsSR4buDIGNodXnhu4NuIGzDqm4gYuG7hyBwaMOzbmcuIgorCisjOiBhZGQtcGF0Y2guYzo0MAorbXNnaWQgIiIKKyJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHN0YWdlIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIMSRxrBhIGzDqm4gYuG7hyBwaMOzbmcga2jDumMgbsOgeVxuIgorIm4gLSDEkeG7q25nIMSRxrBhIGzDqm4gYuG7hyBwaMOzbmcga2jDumMgbsOgeVxuIgorInEgLSB0aG/DoXQ7IMSR4burbmcgxJHGsGEgbMOqbiBi4buHIHBow7NuZyBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaVxuIgorImEgLSDEkcawYSBsw6puIGLhu4cgcGjDs25nIGtow7pjIG7DoHkgdsOgIHThuqV0IGPhuqMgY8OhYyBraMO6YyBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW5cbiIKKyJkIC0gxJHhu6tuZyDEkcawYSBsw6puIGLhu4cgcGjDs25nIGtow7pjIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBjw7JuIGzhuqFpIHRyb25nIHThuq1wICIKKyJ0aW5cbiIKKworIzogYWRkLXBhdGNoLmM6NTQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDMzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiVGhheSDEkeG7lWkgY2jhur8gxJHhu5kgdOG6oW0gY+G6pXQgxJFpIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo1NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YXNoIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJYw7NhIHThuqFtIGPhuqV0IFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo1NiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YXNoIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiVOG6oW0gY+G6pXQga2jDumMgbsOgeSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NTgKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisic3Rhc2hpbmcuIgorbXNnc3RyICIiCisiTuG6v3UgbWnhur9uZyB2w6EgxJHGsOG7o2Mgw6FwIGThu6VuZyBz4bqhY2ggc+G6vSwga2jDumMgxJHDoyBz4butYSBz4bq9IG5nYXkgbOG6rXAgdOG7qWMgxJHGsOG7o2MgxJHDoW5oIGThuqV1ICIKKyLEkeG7gyB04bqhbSBj4bqldC4iCisKKyM6IGFkZC1wYXRjaC5jOjYxCittc2dpZCAiIgorInkgLSBzdGFzaCB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVua1xuIgorInEgLSBxdWl0OyBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gc3Rhc2ggdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gdOG6oW0gY+G6pXQga2jDumMgbsOgeVxuIgorIm4gLSDEkeG7q25nIHThuqFtIGPhuqV0IGtow7pjIG7DoHlcbiIKKyJxIC0gdGhvw6F0OyDEkeG7q25nIHThuqFtIGPhuqV0IGtow7pjIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBjw7JuIGzhuqFpXG4iCisiYSAtIHThuqFtIGPhuqV0IGtow7pjIG7DoHkgdsOgIHThuqV0IGPhuqMgY8OhYyBraMO6YyBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW5cbiIKKyJkIC0gxJHhu6tuZyB04bqhbSBj4bqldCBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaSB0cm9uZyB04bqtcCB0aW5cbiIKKworIzogYWRkLXBhdGNoLmM6NzcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJUaGF5IMSR4buVaSBjaOG6vyDEkeG7mSBi4buPIHJhIGto4buPaSBi4buHIHBow7NuZyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NzggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM5CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJYw7NhIGLhu48gdmnhu4djIGLhu48gcmEga2jhu49pIGLhu4cgcGjDs25nIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo3OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJC4buPIHJhIGto4buPaSBi4buHIHBow7NuZyBraMO6YyBuw6B5IFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo4MQorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJ1bnN0YWdpbmcuIgorbXNnc3RyICIiCisiTuG6v3UgbWnhur9uZyB2w6EgxJHGsOG7o2Mgw6FwIGThu6VuZyBz4bqhY2ggc+G6vSwga2jDumMgxJHDoyBz4butYSBz4bq9IG5nYXkgbOG6rXAgdOG7qWMgxJHGsOG7o2MgxJHDoW5oIGThuqV1ICIKKyLEkeG7gyBi4buPIHJhIGto4buPaSBi4buHIHBow7NuZy4iCisKKyM6IGFkZC1wYXRjaC5jOjg0Cittc2dpZCAiIgorInkgLSB1bnN0YWdlIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gdW5zdGFnZSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIMSRxrBhIHJhIGto4buPaSBi4buHIHBow7NuZyBraMO6YyBuw6B5XG4iCisibiAtIMSR4burbmcgxJHGsGEgcmEga2jhu49pIGLhu4cgcGjDs25nIGtow7pjIG7DoHlcbiIKKyJxIC0gdGhvw6F0OyDEkeG7q25nIMSRxrBhIHJhIGto4buPaSBi4buHIHBow7NuZyBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiAiCisibOG6oWlcbiIKKyJhIC0gxJHGsGEgcmEga2jhu49pIGLhu4cgcGjDs25nIGtow7pjIG7DoHkgdsOgIHThuqV0IGPhuqMgY8OhYyBraMO6YyBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW5cbiIKKyJkIC0gxJHhu6tuZyDEkcawYSByYSBraOG7j2kgYuG7hyBwaMOzbmcga2jDumMgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIGPDsm4gbOG6oWkgdHJvbmcgIgorInThuq1wIHRpblxuIgorCisjOiBhZGQtcGF0Y2guYzo5OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDMKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLDgXAgZOG7pW5nIHRoYXkgxJHhu5VpIGNo4bq/IMSR4buZIGNobyBt4bulYyBs4bulYyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0NAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIsOBcCBk4bulbmcgdmnhu4djIHjDs2EgdsOgbyBt4bulYyBs4bulYyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLDgW8gZOG7pW5nIGtow7pjIG7DoHkgdsOgbyBt4bulYyBs4bulYyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAzIGFkZC1wYXRjaC5jOjE2OCBhZGQtcGF0Y2guYzoyMTEKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisiYXBwbHlpbmcuIgorbXNnc3RyICIiCisiTuG6v3UgbWnhur9uZyB2w6EgxJHGsOG7o2Mgw6FwIGThu6VuZyBz4bqhY2ggc+G6vSwga2jDumMgxJHDoyBz4butYSBz4bq9IG5nYXkgbOG6rXAgdOG7qWMgxJHGsOG7o2MgxJHDoW5oIGThuqV1ICIKKyLEkeG7gyDDoXAgZOG7pW5nLiIKKworIzogYWRkLXBhdGNoLmM6MTA2Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gw6FwIGThu6VuZyBraMO6YyBuw6B5IHbDoG8gbeG7pWMgbOG7pWNcbiIKKyJuIC0gxJHhu6tuZyDDoXAgZOG7pW5nIGtow7pjIG7DoHkgdsOgbyBt4bulYyBs4bulY1xuIgorInEgLSB0aG/DoXQ7IMSR4burbmcgw6FwIGThu6VuZyBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaVxuIgorImEgLSDDoXAgZOG7pW5nIGtow7pjIG7DoHkgdsOgIHThuqV0IGPhuqMgY8OhYyBraMO6YyBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW5cbiIKKyJkIC0gxJHhu6tuZyDDoXAgZOG7pW5nIGtow7pjIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW5cbiIKKworIzogYWRkLXBhdGNoLmM6MTIxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDYzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkxv4bqhaSBi4buPIGPDoWMgdGhheSDEkeG7lWkgY2jhur8gxJHhu5kgdOG7qyBjw6J5IGzDoG0gdmnhu4djIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiTG/huqFpIGLhu48gdmnhu4djIHjDs2Ega2jhu49pIGPDonkgbMOgbSB2aeG7h2MgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyMyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiTG/huqFpIGLhu48ga2jDumMgbsOgeSBraOG7j2kgY8OieSBsw6BtIHZp4buHYyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTI1IGFkZC1wYXRjaC5jOjE0NyBhZGQtcGF0Y2guYzoxOTAKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisiZGlzY2FyZGluZy4iCittc2dzdHIgIiIKKyJO4bq/dSBtaeG6v25nIHbDoSDEkcaw4bujYyDDoXAgZOG7pW5nIHPhuqFjaCBz4bq9LCBraMO6YyDEkcOjIHPhu61hIHPhur0gbmdheSBs4bqtcCB04bupYyDEkcaw4bujYyDEkcOhbmggZOG6pXUgIgorIsSR4buDIGxv4bqhaSBi4buPLiIKKworIzogYWRkLXBhdGNoLmM6MTI4IGFkZC1wYXRjaC5jOjE5MworbXNnaWQgIiIKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gbG/huqFpIGLhu48ga2jDumMgbsOgeSBraOG7j2kgY8OieSBsw6BtIHZp4buHY1xuIgorIm4gLSDEkeG7q25nIGxv4bqhaSBi4buPIGtow7pjIGto4buPaSBjw6J5IGzDoG0gdmnhu4djXG4iCisicSAtIHRob8OhdDsgxJHhu6tuZyBsb+G6oWkgYuG7jyBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaVxuIgorImEgLSBsb+G6oWkgYuG7jyBraMO6YyBuw6B5IHbDoCB04bqldCBj4bqjIGPDoWMga2jDumMgc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluXG4iCisiZCAtIMSR4burbmcgbG/huqFpIGLhu48ga2jDumMgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIHNhdSBuw6B5IHRyb25nIHThuq1wIHRpblxuIgorCisjOiBhZGQtcGF0Y2guYzoxNDMgYWRkLXBhdGNoLmM6MTg2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1MworIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiTG/huqFpIGLhu48gdGhheSDEkeG7lWkgY2jhur8gxJHhu5kgdOG7qyBt4bulYyBs4bulYyB2w6AgY8OieSBsw6BtIHZp4buHYyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ0IGFkZC1wYXRjaC5jOjE4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIkxv4bqhaSBi4buPIHZp4buHYyB4w7NhIGto4buPaSBt4bulYyBs4bulYyB2w6AgY8OieSBsw6BtIHZp4buHYyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ1IGFkZC1wYXRjaC5jOjE4OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICJMb+G6oWkgYuG7jyBraMO6YyBuw6B5IGto4buPaSBt4bulYyBs4bulYyB2w6AgY8OieSBsw6BtIHZp4buHYyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTUwCittc2dpZCAiIgorInkgLSBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gZGlzY2FyZCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIGxv4bqhaSBi4buPIGtow7pjIG7DoHkga2jhu49pIG3hu6VjIGzhu6VjIHbDoCBjw6J5IGzDoG0gdmnhu4djXG4iCisibiAtIMSR4burbmcgbG/huqFpIGLhu48ga2jDumMga2jhu49pIG3hu6VjIGzhu6VjIHbDoCBjw6J5IGzDoG0gdmnhu4djXG4iCisicSAtIHRob8OhdDsgxJHhu6tuZyBsb+G6oWkgYuG7jyBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaVxuIgorImEgLSBsb+G6oWkgYuG7jyBraMO6YyBuw6B5IHbDoCB04bqldCBj4bqjIGPDoWMga2jDumMgc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluXG4iCisiZCAtIMSR4burbmcgbG/huqFpIGLhu48ga2jDumMgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIHNhdSBuw6B5IHRyb25nIHThuq1wIHRpblxuIgorCisjOiBhZGQtcGF0Y2guYzoxNjQgYWRkLXBhdGNoLmM6MjA3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1OAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLDgXAgZOG7pW5nIHRoYXkgxJHhu5VpIGNo4bq/IMSR4buZIGNobyBt4bulYyBs4bulYyB2w6AgY8OieSBsw6BtIHZp4buHYyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTY1IGFkZC1wYXRjaC5jOjIwOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTkKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiw4FwIGThu6VuZyB2aeG7h2MgeMOzYSB2w6BvIG3hu6VjIGzhu6VjIHbDoCBjw6J5IGzDoG0gdmnhu4djIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNjYgYWRkLXBhdGNoLmM6MjA5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2MAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAiw4FwIGThu6VuZyBraMO6YyBuw6B5IHbDoG8gbeG7pWMgbOG7pWMgdsOgIGPDonkgbMOgbSB2aeG7h2MgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE3MQorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0gw6FwIGThu6VuZyBraMO6YyBuw6B5IHbDoG8gbeG7pWMgbOG7pWMgdsOgIGPDonkgbMOgbSB2aeG7h2NcbiIKKyJuIC0gxJHhu6tuZyDDoXAgZOG7pW5nIGtow7pjIHbDoG8gbeG7pWMgbOG7pWMgdsOgIGPDonkgbMOgbSB2aeG7h2NcbiIKKyJxIC0gdGhvw6F0OyDEkeG7q25nIMOhcCBk4bulbmcga2jDumMgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIGPDsm4gbOG6oWlcbiIKKyJhIC0gw6FwIGThu6VuZyBraMO6YyBuw6B5IHbDoCB04bqldCBj4bqjIGPDoWMga2jDumMgc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluXG4iCisiZCAtIMSR4burbmcgw6FwIGThu6VuZyBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluXG4iCisKKyM6IGFkZC1wYXRjaC5jOjIxNAorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIMOhcCBk4bulbmcga2jDumMgbsOgeSB2w6BvIGPDonkgbMOgbSB2aeG7h2NcbiIKKyJuIC0gxJHhu6tuZyDDoXAgZOG7pW5nIGtow7pjIHbDoG8gY8OieSBsw6BtIHZp4buHY1xuIgorInEgLSB0aG/DoXQ7IMSR4burbmcgw6FwIGThu6VuZyBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaVxuIgorImEgLSDDoXAgZOG7pW5nIGtow7pjIG7DoHkgdsOgIHThuqV0IGPhuqMgY8OhYyBraMO6YyBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW5cbiIKKyJkIC0gxJHhu6tuZyDDoXAgZOG7pW5nIGtow7pjIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW5cbiIKKworIzogYWRkLXBhdGNoLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciAnJS4qcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBwaMOibiB0w61jaCBjw7ogcGjDoXAgcGjhuqduIMSR4bqndSBj4bunYSBraMO6YyDigJwlLipz4oCdIgorCisjOiBhZGQtcGF0Y2guYzozMzcgYWRkLXBhdGNoLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb2xvcmVkIGh1bmsgaGVhZGVyICclLipzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIGPDuiBwaMOhcCBwaOG6p24gxJHhuqd1IGtow7pjIMSRw6MgdMO0IG3DoHUg4oCcJS4qc+KAnSIKKworIzogYWRkLXBhdGNoLmM6Mzk1Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGRpZmYiCittc2dzdHIgImtow7RuZyB0aOG7gyBwaMOibiB0w61jaCBjw7ogcGjDoXAga2jDoWMgYmnhu4d0IgorCisjOiBhZGQtcGF0Y2guYzo0MTQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29sb3JlZCBkaWZmIgorbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2gga2jDoWMgYmnhu4d0IMSRxrDhu6NjIHTDtCBtw6B1IgorCisjOiBhZGQtcGF0Y2guYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJ1biAnJXMnIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgY2jhuqF5IOKAnCVz4oCdIgorCisjOiBhZGQtcGF0Y2guYzo1ODcKK21zZ2lkICJtaXNtYXRjaGVkIG91dHB1dCBmcm9tIGludGVyYWN0aXZlLmRpZmZGaWx0ZXIiCittc2dzdHIgIsSR4bqndSByYSBraMO0bmcga2jhu5twIHThu6sgaW50ZXJhY3RpdmUuZGlmZkZpbHRlciIKKworIzogYWRkLXBhdGNoLmM6NTg4Cittc2dpZCAiIgorIllvdXIgZmlsdGVyIG11c3QgbWFpbnRhaW4gYSBvbmUtdG8tb25lIGNvcnJlc3BvbmRlbmNlXG4iCisiYmV0d2VlbiBpdHMgaW5wdXQgYW5kIG91dHB1dCBsaW5lcy4iCittc2dzdHIgIiIKKyJC4buZIGzhu41jIGPhu6dhIGLhuqFuIHBo4bqjaSBkdXkgdHLDrCBt4buZdCBxdWFuIGjhu4cgbeG7mXQtxJHhur9uLW3hu5l0XG4iCisiZ2nhu69hIGPDoWMgZMOybmcgxJHhuqd1IHbDoG8gdsOgIMSR4bqndSByYSBj4bunYSBuw7MuIgorCisjOiBhZGQtcGF0Y2guYzo3NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4cGVjdGVkIGNvbnRleHQgbGluZSAjJWQgaW5cbiIKKyIlLipzIgorbXNnc3RyICIiCisiY+G6p24gZMOybmcgbmfhu68gY+G6o25oICMlZCB0cm9uZ1xuIgorIiUuKnMiCisKKyM6IGFkZC1wYXRjaC5jOjc3NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaHVua3MgZG8gbm90IG92ZXJsYXA6XG4iCisiJS4qc1xuIgorIlx0ZG9lcyBub3QgZW5kIHdpdGg6XG4iCisiJS4qcyIKK21zZ3N0ciAiIgorImPDoWMga2jhu5FpIGtow7RuZyBjaOG7k25nIMSRw6ggbMOqbiBuaGF1OlxuIgorIiUuKnNcbiIKKyJcdGtow7RuZyDEkcaw4bujYyBr4bq/dCB0aMO6YyBi4bqxbmc6XG4iCisiJS4qcyIKKworIzogYWRkLXBhdGNoLmM6MTA1MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTIKK21zZ2lkICJNYW51YWwgaHVuayBlZGl0IG1vZGUgLS0gc2VlIGJvdHRvbSBmb3IgYSBxdWljayBndWlkZS5cbiIKK21zZ3N0ciAiQ2jhur8gxJHhu5kgc+G7rWEga2jDumMgYuG6sW5nIHRheSAtLSB4ZW0g4bufIMSRw6F5IMSR4buDIGPDsyBoxrDhu5tuZyBk4bqrbiBz4butIGThu6VuZyBuaGFuaC5cbiIKKworIzogYWRkLXBhdGNoLmM6MTA1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0tXG4iCisiVG8gcmVtb3ZlICclYycgbGluZXMsIG1ha2UgdGhlbSAnICcgbGluZXMgKGNvbnRleHQpLlxuIgorIlRvIHJlbW92ZSAnJWMnIGxpbmVzLCBkZWxldGUgdGhlbS5cbiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICVjIHdpbGwgYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorIi0tLVxuIgorIsSQ4buDIGfhu6EgYuG7jyBkw7JuZyDigJwlY+KAnSwgc+G7rWEgY2jDum5nIHRow6BuaCBuaOG7r25nIGTDsm5nICcgJyAobmfhu68gY+G6o25oKS5cbiIKKyLEkOG7gyBnw7UgYuG7jyBkw7JuZyDigJwlY+KAnSwgeMOzYSBjaMO6bmcgxJFpLlxuIgorIk5o4buvbmcgZMOybmcgYuG6r3QgxJHhuqd1IGLhurFuZyAlYyBz4bq9IGLhu4sgbG/huqFpIGLhu48uXG4iCisKKyMuIFRSQU5TTEFUT1JTOiAnaXQnIHJlZmVycyB0byB0aGUgcGF0Y2ggbWVudGlvbmVkIGluIHRoZSBwcmV2aW91cyBtZXNzYWdlcy4KKyM6IGFkZC1wYXRjaC5jOjEwNzAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTI2Cittc2dpZCAiIgorIklmIGl0IGRvZXMgbm90IGFwcGx5IGNsZWFubHksIHlvdSB3aWxsIGJlIGdpdmVuIGFuIG9wcG9ydHVuaXR5IHRvXG4iCisiZWRpdCBhZ2Fpbi4gIElmIGFsbCBsaW5lcyBvZiB0aGUgaHVuayBhcmUgcmVtb3ZlZCwgdGhlbiB0aGUgZWRpdCBpc1xuIgorImFib3J0ZWQgYW5kIHRoZSBodW5rIGlzIGxlZnQgdW5jaGFuZ2VkLlxuIgorbXNnc3RyICIiCisiTuG6v3UgbWnhur9uZyB2w6Ega2jDtG5nIMSRxrDhu6NjIMOhcCBk4bulbmcgc+G6oWNoIHPhur0sIGLhuqFuIHPhur0gY8OzIG3hu5l0IGPGoSBo4buZaVxuIgorIsSR4buDIHPhu61hIGzhuqduIG7hu69hLiBO4bq/dSBt4buNaSBkw7JuZyBj4bunYSBraMO6YyBi4buLIHjDs2EgYuG7jywgdGjhur8gdGjDrCBuaOG7r25nXG4iCisic+G7rWEgZOG7lWkgc+G6vSBi4buLIGxv4bqhaSBi4buPLCB2w6Aga2jDumMgduG6q24gZ2nhu68gbmd1ecOqbi5cbiIKKworIzogYWRkLXBhdGNoLmM6MTEwMworbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBodW5rIGhlYWRlciIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIGPDuiBwaMOhcCBwaOG6p24gxJHhuqd1IGtow7pjIgorCisjOiBhZGQtcGF0Y2guYzoxMTQ4Cittc2dpZCAiJ2dpdCBhcHBseSAtLWNhY2hlZCcgZmFpbGVkIgorbXNnc3RyICInZ2l0IGFwcGx5IC0tY2FjaGVkJyBn4bq3cCBs4buXaSIKKworIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KKyMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dCBhdCB0aGlzIHBvaW50LgorIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKKyMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCisjLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KKyMuCisjLiBUUkFOU0xBVE9SUzogZG8gbm90IHRyYW5zbGF0ZSBbeS9uXQorIy4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCB0aGF0IGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKKyMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCisjLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KKyM6IGFkZC1wYXRjaC5jOjEyMTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjM5Cittc2dpZCAiIgorIllvdXIgZWRpdGVkIGh1bmsgZG9lcyBub3QgYXBwbHkuIEVkaXQgYWdhaW4gKHNheWluZyBcIm5vXCIgZGlzY2FyZHMhKSBbeS9uXT8gIgorbXNnc3RyICIiCisiSHVuayDEkcOjIHPhu61hIGPhu6dhIGLhuqFuIGtow7RuZyDEkcaw4bujYyDDoXAgZOG7pW5nLiBT4butYSBs4bqhaSBs4bqnbiBu4buvYSAobsOzaSBcIm5cIiDEkeG7gyBsb+G6oWkgIgorImLhu48hKSBbeS9uXT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjYxCittc2dpZCAiVGhlIHNlbGVjdGVkIGh1bmtzIGRvIG5vdCBhcHBseSB0byB0aGUgaW5kZXghIgorbXNnc3RyICJDw6FjIGtow7pjIMSRw6MgY2jhu41uIGtow7RuZyDEkcaw4bujYyDDoXAgZOG7pW5nIHbDoG8gYuG6o25nIG3hu6VjIGzhu6VjISIKKworIzogYWRkLXBhdGNoLmM6MTI2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDMKK21zZ2lkICJBcHBseSB0aGVtIHRvIHRoZSB3b3JrdHJlZSBhbnl3YXk/ICIKK21zZ3N0ciAiVuG6q24gw6FwIGThu6VuZyBjaMO6bmcgY2hvIGPDonkgbMOgbSB2aeG7h2M/ICIKKworIzogYWRkLXBhdGNoLmM6MTI2OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDYKK21zZ2lkICJOb3RoaW5nIHdhcyBhcHBsaWVkLlxuIgorbXNnc3RyICLEkMOjIGtow7RuZyDDoXAgZOG7pW5nIGfDrCBj4bqjLlxuIgorCisjOiBhZGQtcGF0Y2guYzoxMzI2Cittc2dpZCAiIgorImogLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgbmV4dCB1bmRlY2lkZWQgaHVua1xuIgorIkogLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgbmV4dCBodW5rXG4iCisiayAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBwcmV2aW91cyB1bmRlY2lkZWQgaHVua1xuIgorIksgLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgcHJldmlvdXMgaHVua1xuIgorImcgLSBzZWxlY3QgYSBodW5rIHRvIGdvIHRvXG4iCisiLyAtIHNlYXJjaCBmb3IgYSBodW5rIG1hdGNoaW5nIHRoZSBnaXZlbiByZWdleFxuIgorInMgLSBzcGxpdCB0aGUgY3VycmVudCBodW5rIGludG8gc21hbGxlciBodW5rc1xuIgorImUgLSBtYW51YWxseSBlZGl0IHRoZSBjdXJyZW50IGh1bmtcbiIKKyI/IC0gcHJpbnQgaGVscFxuIgorbXNnc3RyICIiCisiaiAtIMSR4buDIGzhuqFpIGtow7pjIG7DoHkgbMOgIGNoxrBhIHF1eeG6v3QgxJHhu4tuaCwgeGVtIGtow7pjIGNoxrBhIHF1eeG6v3QgxJHhu4tuaCBr4bq/IHRp4bq/cFxuIgorIkogLSDEkeG7gyBs4bqhaSBraMO6YyBuw6B5IGzDoCBjaMawYSBxdXnhur90IMSR4buLbmgsIHhlbSBraMO6YyBr4bq/IHRp4bq/cFxuIgorImsgLSDEkeG7gyBs4bqhaSBraMO6YyBuw6B5IGzDoCBjaMawYSBxdXnhur90IMSR4buLbmgsIHhlbSBraMO6YyBjaMawYSBxdXnhur90IMSR4buLbmgga+G6vyB0csaw4bubY1xuIgorIksgLSDEkeG7gyBs4bqhaSBraMO6YyBuw6B5IGzDoCBjaMawYSBxdXnhur90IMSR4buLbmgsIHhlbSBraMO6YyBr4bq/IHRyxrDhu5tjXG4iCisiZyAtIGNo4buNbiBt4buZdCBraMO6YyBtdeG7kW4gdOG7m2lcbiIKKyIvIC0gdMOsbSBt4buZdCBraMO6YyBraOG7m3AgduG7m2kgYmnhu4N1IHRo4bupYyBjaMOtbmggcXV5IMSRxrBhIHJhXG4iCisicyAtIGNoaWEga2jDumMgaGnhu4duIHThuqFpIHRow6BuaCBjw6FjIGtow7pjIG5o4buPIGjGoW5cbiIKKyJlIC0gc+G7rWEgYuG6sW5nIHRheSBraMO6YyBoaeG7h24gaMOgbmhcbiIKKyI/IC0gaGnhu4NuIHRo4buLIHRy4bujIGdpw7pwXG4iCisKKyM6IGFkZC1wYXRjaC5jOjE0NDcgYWRkLXBhdGNoLmM6MTQ1NworbXNnaWQgIk5vIHByZXZpb3VzIGh1bmsiCittc2dzdHIgIktow7RuZyBjw7Mga2jDumMga+G6vyB0csaw4bubYyIKKworIzogYWRkLXBhdGNoLmM6MTQ1MiBhZGQtcGF0Y2guYzoxNDYyCittc2dpZCAiTm8gbmV4dCBodW5rIgorbXNnc3RyICJLaMO0bmcgY8OzIGtow7pjIGvhur8gdGnhur9wIgorCisjOiBhZGQtcGF0Y2guYzoxNDY4Cittc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gZ290byIKK21zZ3N0ciAiS2jDtG5nIGPDsm4ga2jDumMgbsOgbyDEkeG7gyBtw6AgbmjhuqN5IMSR4bq/biIKKworIzogYWRkLXBhdGNoLmM6MTQ3OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzcKK21zZ2lkICJnbyB0byB3aGljaCBodW5rICg8cmV0PiB0byBzZWUgbW9yZSk/ICIKK21zZ3N0ciAibmjhuqN5IMSR4bq/biBraMO6YyBuw6BvICg8cmV0PiDEkeG7gyB4ZW0gdGjDqm0pPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE0ODAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTc5Cittc2dpZCAiZ28gdG8gd2hpY2ggaHVuaz8gIgorbXNnc3RyICJuaOG6o3kgxJHhur9uIGtow7pjIG7DoG8/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ5MQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIG51bWJlcjogJyVzJyIKK21zZ3N0ciAiU+G7kSBraMO0bmcgaOG7o3AgbOG7hzog4oCcJXPigJ0iCisKKyM6IGFkZC1wYXRjaC5jOjE0OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiU29ycnksIG9ubHkgJWQgaHVuayBhdmFpbGFibGUuIgorbXNnaWRfcGx1cmFsICJTb3JyeSwgb25seSAlZCBodW5rcyBhdmFpbGFibGUuIgorbXNnc3RyWzBdICJS4bqldCB0aeG6v2MsIGNo4buJIGPDsyBz4bq1biAlZCBraMO6Yy4iCisKKyM6IGFkZC1wYXRjaC5jOjE1MDUKK21zZ2lkICJObyBvdGhlciBodW5rcyB0byBzZWFyY2giCittc2dzdHIgIktow7RuZyBjw7JuIGtow7pjIG7DoG8gxJHhu4MgbcOgIHTDrG0ga2nhur9tIgorCisjOiBhZGQtcGF0Y2guYzoxNTExIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYyMworbXNnaWQgInNlYXJjaCBmb3IgcmVnZXg/ICIKK21zZ3N0ciAidMOsbSBraeG6v20gY2hvIGJp4buDdSB0aOG7qWMgY2jDrW5oIHF1eT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hbGZvcm1lZCBzZWFyY2ggcmVnZXhwICVzOiAlcyIKK21zZ3N0ciAixJDhu4tuaCBk4bqhbmcgdMOsbSBraeG6v20gY+G7p2EgYmnhu4N1IHRo4bupYyBjaMOtbmggcXV5IGtow7RuZyDEkcO6bmcgJXM6ICVzIgorCisjOiBhZGQtcGF0Y2guYzoxNTQzCittc2dpZCAiTm8gaHVuayBtYXRjaGVzIHRoZSBnaXZlbiBwYXR0ZXJuIgorbXNnc3RyICJLaMO0bmcgdGjhuqV5IGtow7pjIG7DoG8ga2jhu5twIG3huqt1IMSRw6MgY2hvIgorCisjOiBhZGQtcGF0Y2guYzoxNTUwCittc2dpZCAiU29ycnksIGNhbm5vdCBzcGxpdCB0aGlzIGh1bmsiCittc2dzdHIgIlLhuqV0IHRp4bq/Yywga2jDtG5nIHRo4buDIGNoaWEgbmjhu48ga2jDumMgbsOgeSIKKworIzogYWRkLXBhdGNoLmM6MTU1NAorIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdCBpbnRvICVkIGh1bmtzLiIKK21zZ3N0ciAiQ2hpIG5o4buPIHRow6BuaCAlZCBraMO6Yy4iCisKKyM6IGFkZC1wYXRjaC5jOjE1NTgKK21zZ2lkICJTb3JyeSwgY2Fubm90IGVkaXQgdGhpcyBodW5rIgorbXNnc3RyICJS4bqldCB0aeG6v2MsIGtow7RuZyB0aOG7gyBz4butYSBraMO6YyBuw6B5IgorCisjOiBhZGQtcGF0Y2guYzoxNjA5Cittc2dpZCAiJ2dpdCBhcHBseScgZmFpbGVkIgorbXNnc3RyICInZ2l0IGFwcGx5JyBn4bq3cCBs4buXaSIKKworIzogYWR2aWNlLmM6MTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzaGludDogJS4qcyVzXG4iCiBtc2dzdHIgIiVzZ+G7o2kgw706ICUuKnMlc1xuIgogCi0jOiBhZHZpY2UuYzoxNTIKKyM6IGFkdmljZS5jOjE2OAogbXNnaWQgIkNoZXJyeS1waWNraW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiIgogIkNoZXJyeS1waWNraW5nIGzDoCBraMO0bmcgdGjhu4MgdGjhu7FjIGhp4buHbiBi4bufaSB2w6wgYuG6oW4gY8OzIG5o4buvbmcgdOG6rXAgdGluIGNoxrBhIMSRxrDhu6NjICIKICJow7JhIHRy4buZbi4iCiAKLSM6IGFkdmljZS5jOjE1NAorIzogYWR2aWNlLmM6MTcwCiBtc2dpZCAiQ29tbWl0dGluZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgIiIKICJDb21taXQgbMOgIGtow7RuZyB0aOG7gyB0aOG7sWMgaGnhu4duIGLhu59pIHbDrCBi4bqhbiBjw7Mgbmjhu69uZyB04bqtcCB0aW4gY2jGsGEgxJHGsOG7o2MgaMOyYSB0cuG7mW4uIgogCi0jOiBhZHZpY2UuYzoxNTYKKyM6IGFkdmljZS5jOjE3MgogbXNnaWQgIk1lcmdpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICIiCiAiTWVyZ2UgbMOgIGtow7RuZyB0aOG7gyB0aOG7sWMgaGnhu4duIGLhu59pIHbDrCBi4bqhbiBjw7Mgbmjhu69uZyB04bqtcCB0aW4gY2jGsGEgxJHGsOG7o2MgaMOyYSB0cuG7mW4uIgogCi0jOiBhZHZpY2UuYzoxNTgKKyM6IGFkdmljZS5jOjE3NAogbXNnaWQgIlB1bGxpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICIiCiAiUHVsbCBsw6Aga2jDtG5nIHRo4buDIHRo4buxYyBoaeG7h24gYuG7n2kgdsOsIGLhuqFuIGPDsyBuaOG7r25nIHThuq1wIHRpbiBjaMawYSDEkcaw4bujYyBow7JhIHRy4buZbi4iCiAKLSM6IGFkdmljZS5jOjE2MAorIzogYWR2aWNlLmM6MTc2CiBtc2dpZCAiUmV2ZXJ0aW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiIgogIlJldmVydCBsw6Aga2jDtG5nIHRo4buDIHRo4buxYyBoaeG7h24gYuG7n2kgdsOsIGLhuqFuIGPDsyBuaOG7r25nIHThuq1wIHRpbiBjaMawYSDEkcaw4bujYyBow7JhIHRy4buZbi4iCiAKLSM6IGFkdmljZS5jOjE2MgorIzogYWR2aWNlLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkl0IGlzIG5vdCBwb3NzaWJsZSB0byAlcyBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAiIgotIk7DsyBsw6Aga2jDtG5nIHRo4buDIHRo4buxYyBoaeG7h24gduG7m2kgJXMgYuG7n2kgdsOsIGLhuqFuIGPDsyBuaOG7r25nIHThuq1wIHRpbiBjaMawYSDEkcaw4bujYyBow7JhICIKLSJ0cuG7mW4uIgorIlZp4buHYyBuw6B5IGtow7RuZyB0aOG7gyB0aOG7sWMgaGnhu4duIHbhu5tpICVzIGLhu59pIHbDrCBi4bqhbiBjw7Mgbmjhu69uZyB04bqtcCB0aW4gY2jGsGEgxJHGsOG7o2MgIgorImjDsmEgdHLhu5luLiIKIAotIzogYWR2aWNlLmM6MTcwCisjOiBhZHZpY2UuYzoxODYKIG1zZ2lkICIiCiAiRml4IHRoZW0gdXAgaW4gdGhlIHdvcmsgdHJlZSwgYW5kIHRoZW4gdXNlICdnaXQgYWRkL3JtIDxmaWxlPidcbiIKICJhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24gYW5kIG1ha2UgYSBjb21taXQuIgpAQCAtNjgsMTQwICs3NTYsMTUxIEBACiAiU+G7rWEgY2jDum5nIHRyb25nIGPDonkgbMOgbSB2aeG7h2MsIHbDoCBzYXUgxJHDsyBkw7luZyBs4buHbmgg4oCcZ2l0IGFkZC9ybSA8dOG6rXAtdGluPuKAnVxuIgogImTDoG5oIHJpw6puZyBjaG8gdmnhu4djIMSRw6FuaCBk4bqldSBj4bqnbiBnaeG6o2kgcXV54bq/dCB2w6AgdOG6oW8gbOG6p24gY2h1eeG7g24gZ2lhby4iCiAKLSM6IGFkdmljZS5jOjE3OAorIzogYWR2aWNlLmM6MTk0CiBtc2dpZCAiRXhpdGluZyBiZWNhdXNlIG9mIGFuIHVucmVzb2x2ZWQgY29uZmxpY3QuIgogbXNnc3RyICJUaG/DoXQgcmEgYuG7n2kgdsOsIHh1bmcgxJHhu5l0IGtow7RuZyB0aOG7gyBnaeG6o2kgcXV54bq/dC4iCiAKLSM6IGFkdmljZS5jOjE4MyBidWlsdGluL21lcmdlLmM6MTI4OQorIzogYWR2aWNlLmM6MTk5IGJ1aWx0aW4vbWVyZ2UuYzoxMzM1CiBtc2dpZCAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG1lcmdlIChNRVJHRV9IRUFEIGV4aXN0cykuIgogbXNnc3RyICJC4bqhbiBjaMawYSBr4bq/dCB0aMO6YyB2aeG7h2MgaMOyYSB0cuG7mW4gKE1FUkdFX0hFQUQgduG6q24gdOG7k24gdOG6oWkpLiIKIAotIzogYWR2aWNlLmM6MTg1CisjOiBhZHZpY2UuYzoyMDEKIG1zZ2lkICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIG1lcmdpbmcuIgogbXNnc3RyICJWdWkgbMOybmcgY2h1eeG7g24gZ2lhbyBjw6FjIHRoYXkgxJHhu5VpIHRyxrDhu5tjIGtoaSBow7JhIHRy4buZbi4iCiAKLSM6IGFkdmljZS5jOjE4NgorIzogYWR2aWNlLmM6MjAyCiBtc2dpZCAiRXhpdGluZyBiZWNhdXNlIG9mIHVuZmluaXNoZWQgbWVyZ2UuIgogbXNnc3RyICJUaG/DoXQgcmEgYuG7n2kgdsOsIHZp4buHYyBow7JhIHRy4buZbiBraMO0bmcgaG/DoG4gdOG6pXQuIgogCi0jOiBhZHZpY2UuYzoxOTIKKyM6IGFkdmljZS5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCi0iTm90ZTogY2hlY2tpbmcgb3V0ICclcycuXG4iCisiTm90ZTogc3dpdGNoaW5nIHRvICclcycuXG4iCiAiXG4iCiAiWW91IGFyZSBpbiAnZGV0YWNoZWQgSEVBRCcgc3RhdGUuIFlvdSBjYW4gbG9vayBhcm91bmQsIG1ha2UgZXhwZXJpbWVudGFsXG4iCiAiY2hhbmdlcyBhbmQgY29tbWl0IHRoZW0sIGFuZCB5b3UgY2FuIGRpc2NhcmQgYW55IGNvbW1pdHMgeW91IG1ha2UgaW4gdGhpc1xuIgotInN0YXRlIHdpdGhvdXQgaW1wYWN0aW5nIGFueSBicmFuY2hlcyBieSBwZXJmb3JtaW5nIGFub3RoZXIgY2hlY2tvdXQuXG4iCisic3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHN3aXRjaGluZyBiYWNrIHRvIGEgYnJhbmNoLlxuIgogIlxuIgogIklmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIG5ldyBicmFuY2ggdG8gcmV0YWluIGNvbW1pdHMgeW91IGNyZWF0ZSwgeW91IG1heVxuIgotImRvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1iIHdpdGggdGhlIGNoZWNrb3V0IGNvbW1hbmQgYWdhaW4uIEV4YW1wbGU6XG4iCisiZG8gc28gKG5vdyBvciBsYXRlcikgYnkgdXNpbmcgLWMgd2l0aCB0aGUgc3dpdGNoIGNvbW1hbmQuIEV4YW1wbGU6XG4iCiAiXG4iCi0iICBnaXQgY2hlY2tvdXQgLWIgPG5ldy1icmFuY2gtbmFtZT5cbiIKKyIgIGdpdCBzd2l0Y2ggLWMgPG5ldy1icmFuY2gtbmFtZT5cbiIKKyJcbiIKKyJPciB1bmRvIHRoaXMgb3BlcmF0aW9uIHdpdGg6XG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1cbiIKKyJcbiIKKyJUdXJuIG9mZiB0aGlzIGFkdmljZSBieSBzZXR0aW5nIGNvbmZpZyB2YXJpYWJsZSBhZHZpY2UuZGV0YWNoZWRIZWFkIHRvICIKKyJmYWxzZVxuIgogIlxuIgogbXNnc3RyICIiCi0iQ2jDuiDDvTogxJFhbmcgbOG6pXkgcmEg4oCcJXPigJ0uXG4iCisiQ2jDuiDDvTogxJFhbmcgY2h1eeG7g24gc2FuZyDigJwlc+KAnS5cbiIKICJcbiIKICJC4bqhbiDEkWFuZyDhu58gdMOsbmggdHLhuqFuZyDigJxkZXRhY2hlZCBIRUFE4oCdLiBC4bqhbiBjw7MgdGjhu4MgeGVtIHF1YSwgdOG6oW8gY8OhYyB0aGF5XG4iCiAixJHhu5VpIHRo4butIG5naGnhu4dtIHbDoCBjaHV54buDbiBnaWFvIGNow7puZywgYuG6oW4gY8OzIHRo4buDIGxv4bqhaSBi4buPIGLhuqV0IGvhu7MgbOG6p24gY2h1eeG7g25cbiIKLSJnaWFvIG7DoG8gdHJvbmcgdMOsbmggdHLhuqFuZyBuw6B5IG3DoCBraMO0bmcgY+G6p24gxJHhu6VuZyBjaOG6rW0gxJHhur9uIGLhuqV0IGvhu7MgbmjDoW5oIG7DoG9cbiIKLSJi4bqxbmcgY8OhY2ggdGjhu7FjIGhp4buHbiBs4bqnbiBs4bqleSByYSBraMOhYyBu4buvYS5cbiIKKyJnaWFvIG7DoG8gdHJvbmcgdMOsbmggdHLhuqFuZyBuw6B5IG3DoCBraMO0bmcgY+G6p24gxJHhu6VuZyBjaOG6oW0gxJHhur9uIGLhuqV0IGvhu7MgbmjDoW5oIG7DoG9cbiIKKyJi4bqxbmcgY8OhY2ggY2h1eeG7g24gdHLhu58gbOG6oWkgbeG7mXQgbmjDoW5oLlxuIgogIlxuIgogIk7hur91IGLhuqFuIG114buRbiB04bqhbyBt4buZdCBuaMOhbmggbeG7m2kgxJHhu4MgZ2nhu68gbOG6oWkgY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIGLhuqFuIHThuqFvLFxuIgotImLhuqFuIGPDsyB0aOG7gyBsw6BtIHRo4bq/IChuZ2F5IGLDonkgZ2nhu50gaGF5IHNhdSBuw6B5KSBi4bqxbmcgY8OhY2ggY2jhuqF5IGzhu4duaCBjaGVja291dFxuIgotImzhuqduIG7hu69hIHbhu5tpIHTDuXkgY2jhu41uIC1iLiBWw60gZOG7pTpcbiIKKyJi4bqhbiBjw7MgdGjhu4MgbMOgbSB0aOG6vyAobmdheSBiw6J5IGdp4budIGhheSBzYXUgbsOgeSkgYuG6sW5nIGPDoWNoIGTDuW5nIHTDuXkgY2jhu41uXG4iCisiZMOybmcgbOG7h25oIC1iLiBWw60gZOG7pTpcbiIKICJcbiIKLSIgIGdpdCBjaGVja291dCAtYiA8dMOqbi1uaMOhbmgtbeG7m2k+XG4iCisiICBnaXQgY2hlY2tvdXQgLWMgPHTDqm4tbmjDoW5oLW3hu5tpPlxuIgorIlxuIgorIkhvw6BuIGzhuqFpIHRoYW8gdMOhYyBuw6B5IGLhurFuZzpcbiIKKyJcbiIKKyIgIGdpdCBzd2l0Y2ggLVxuIgorIlxuIgorIlThuq90IGjGsOG7m25nIGThuqtuIG7DoHkgYuG6sW5nIGPDoWNoIMSR4bq3dCBiaeG6v24gYWR2aWNlLmRldGFjaGVkSGVhZCB0aMOgbmggZmFsc2VcbiIKICJcbiIKIAotIzogYXBwbHkuYzo1OQorIzogYWxpYXMuYzo1MAorbXNnaWQgImNtZGxpbmUgZW5kcyB3aXRoIFxcIgorbXNnc3RyICJjbWRsaW5lIGvhur90IHRow7pjIHbhu5tpIFxcIgorCisjOiBhbGlhcy5jOjUxCittc2dpZCAidW5jbG9zZWQgcXVvdGUiCittc2dzdHIgImNoxrBhIGPDsyBk4bqldSBuaMOheSDEkcOzbmciCisKKyM6IGFwcGx5LmM6NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2Ugb3B0aW9uICclcyciCiBtc2dzdHIgImtow7RuZyBuaOG6rW4gcmEgdMO5eSBjaOG7jW4gduG7gSBraG/huqNuZyB0cuG6r25nIOKAnCVz4oCdIgogCi0jOiBhcHBseS5jOjc1CisjOiBhcHBseS5jOjg1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCB3aGl0ZXNwYWNlIGlnbm9yZSBvcHRpb24gJyVzJyIKIG1zZ3N0ciAia2jDtG5nIG5o4bqtbiByYSB0w7l5IGNo4buNbiBi4buPIHF1YSBraG/huqNuZyB0cuG6r25nIOKAnCVz4oCdIgogCi0jOiBhcHBseS5jOjEyNQorIzogYXBwbHkuYzoxMzUKIG1zZ2lkICItLXJlamVjdCBhbmQgLS0zd2F5IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyLiIKIG1zZ3N0ciAiLS1yZWplY3QgdsOgIC0tM3dheSBraMO0bmcgdGjhu4MgZMO5bmcgY8O5bmcgbmhhdS4iCiAKLSM6IGFwcGx5LmM6MTI3CisjOiBhcHBseS5jOjEzNwogbXNnaWQgIi0tY2FjaGVkIGFuZCAtLTN3YXkgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuIgogbXNnc3RyICItLWNhY2hlZCB2w6AgLS0zd2F5IGtow7RuZyB0aOG7gyBkw7luZyBjw7luZyBuaGF1LiIKIAotIzogYXBwbHkuYzoxMzAKKyM6IGFwcGx5LmM6MTQwCiBtc2dpZCAiLS0zd2F5IG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICItLTN3YXkg4bufIG5nb8OgaSBt4buZdCBraG8gY2jhu6lhIgogCi0jOiBhcHBseS5jOjE0MQorIzogYXBwbHkuYzoxNTEKIG1zZ2lkICItLWluZGV4IG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICItLWluZGV4IOG7nyBuZ2/DoGkgbeG7mXQga2hvIGNo4bupYSIKIAotIzogYXBwbHkuYzoxNDQKKyM6IGFwcGx5LmM6MTU0CiBtc2dpZCAiLS1jYWNoZWQgb3V0c2lkZSBhIHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0tY2FjaGVkIOG7nyBuZ2/DoGkgbeG7mXQga2hvIGNo4bupYSIKIAotIzogYXBwbHkuYzo4MjYKKyM6IGFwcGx5LmM6ODAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBwcmVwYXJlIHRpbWVzdGFtcCByZWdleHAgJXMiCiBtc2dzdHIgIiIKICJLaMO0bmcgdGjhu4MgY2h14bqpbiBi4buLIGJp4buDdSB0aOG7qWMgY2jDrW5oIHF1aSBk4bqldSB24bq/dCB0aOG7nWkgZ2lhbiAodGltZXN0YW1wIHJlZ2V4cCkgIgogIiVzIgogCi0jOiBhcHBseS5jOjgzNQorIzogYXBwbHkuYzo4MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVnZXhlYyByZXR1cm5lZCAlZCBmb3IgaW5wdXQ6ICVzIgogbXNnc3RyICJ0aGkgaMOgbmggYmnhu4N1IHRo4bupYyBjaMOtbmggcXV5IHRy4bqjIHbhu4EgJWQgY2hvIMSR4bqndSB2w6BvOiAlcyIKIAotIzogYXBwbHkuYzo5MDkKKyM6IGFwcGx5LmM6ODg0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBmaW5kIGZpbGVuYW1lIGluIHBhdGNoIGF0IGxpbmUgJWQiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB0w6xtIHRo4bqleSB0w6puIHThuq1wIHRpbiB0cm9uZyBtaeG6v25nIHbDoSB04bqhaSBkw7JuZyAlZCIKIAotIzogYXBwbHkuYzo5NDcKKyM6IGFwcGx5LmM6OTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gZXhwZWN0ZWQgL2Rldi9udWxsLCBnb3QgJXMgb24gbGluZSAlZCIKIG1zZ3N0ciAiIgogImdpdCBhcHBseTogZ2l0LWRpZmYgc2FpIC0gY+G6p24gL2Rldi9udWxsLCBuaMawbmcgbOG6oWkgbmjhuq1uIMSRxrDhu6NjICVzIHRyw6puIGTDsm5nICVkIgogCi0jOiBhcHBseS5jOjk1MworIzogYXBwbHkuYzo5MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBpbmNvbnNpc3RlbnQgbmV3IGZpbGVuYW1lIG9uIGxpbmUgJWQiCiBtc2dzdHIgImdpdCBhcHBseTogZ2l0LWRpZmYgc2FpIC0gdMOqbiB04bqtcCB0aW4gbeG7m2kga2jDtG5nIG5o4bqldCBxdcOhbiB0csOqbiBkw7JuZyAlZCIKIAotIzogYXBwbHkuYzo5NTQKKyM6IGFwcGx5LmM6OTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gaW5jb25zaXN0ZW50IG9sZCBmaWxlbmFtZSBvbiBsaW5lICVkIgogbXNnc3RyICJnaXQgYXBwbHk6IGdpdC1kaWZmIHNhaSAtIHTDqm4gdOG6rXAgdGluIGPFqSBraMO0bmcgbmjhuqV0IHF1w6FuIHRyw6puIGTDsm5nICVkIgogCi0jOiBhcHBseS5jOjk1OQorIzogYXBwbHkuYzo5MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwgb24gbGluZSAlZCIKIG1zZ3N0ciAiZ2l0IGFwcGx5OiBnaXQtZGlmZiBzYWkgLSBj4bqnbiDigJwvZGV2L251bGzigJ0gdHLDqm4gZMOybmcgJWQiCiAKLSM6IGFwcGx5LmM6OTg4CisjOiBhcHBseS5jOjk2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG1vZGUgb24gbGluZSAlZDogJXMiCiBtc2dzdHIgImNo4bq/IMSR4buZIGtow7RuZyBo4bujcCBs4buHIHRyw6puIGTDsm5nICVkOiAlcyIKIAotIzogYXBwbHkuYzoxMzA3CisjOiBhcHBseS5jOjEyODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5jb25zaXN0ZW50IGhlYWRlciBsaW5lcyAlZCBhbmQgJWQiCiBtc2dzdHIgInBo4bqnbiDEkeG6p3UgbcOidSB0aHXhuqtuIGTDsm5nICVkIHbDoCAlZCIKIAotIzogYXBwbHkuYzoxNDc5Ci0jLCBjLWZvcm1hdAotbXNnaWQgInJlY291bnQ6IHVuZXhwZWN0ZWQgbGluZTogJS4qcyIKLW1zZ3N0ciAiY2hpIHRp4bq/dDogZMOybmcga2jDtG5nIGPhuqduOiAlLipzIgotCi0jOiBhcHBseS5jOjE1NDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGF0Y2ggZnJhZ21lbnQgd2l0aG91dCBoZWFkZXIgYXQgbGluZSAlZDogJS4qcyIKLW1zZ3N0ciAibWnhur9uZyB2w6EgcGjDom4gbeG6o25oIG3DoCBraMO0bmcgY8OzIHBo4bqnbiDEkeG6p3UgdOG6oWkgZMOybmcgJWQ6ICUuKnMiCi0KLSM6IGFwcGx5LmM6MTU2OAorIzogYXBwbHkuYzoxMzcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gd2hlbiByZW1vdmluZyAlZCBsZWFkaW5nIHBhdGhuYW1lICIKQEAgLTIxMyw4MSArOTEyLDkxIEBACiAicGjhuqduIMSR4bqndSBkaWZmIGNobyBnaXQgIHRoaeG6v3UgdGjDtG5nIHRpbiB0w6puIHThuq1wIHRpbiBraGkgZ+G7oSBi4buPIMSRaSAlZCB0cm9uZyAiCiAidGjDoG5oIHBo4bqnbiBk4bqrbiDEkeG6p3UgdMOqbiBj4bunYSDEkcaw4budbmcgZOG6q24gKGTDsm5nICVkKSIKIAotIzogYXBwbHkuYzoxNTgxCisjOiBhcHBseS5jOjEzODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIChsaW5lICVkKSIKIG1zZ3N0ciAicGjhuqduIMSR4bqndSBkaWZmIGNobyBnaXQgdGhp4bq/dSB0aMO0bmcgdGluIHTDqm4gdOG6rXAgdGluIChkw7JuZyAlZCkiCiAKLSM6IGFwcGx5LmM6MTc2OQorIzogYXBwbHkuYzoxNDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlY291bnQ6IHVuZXhwZWN0ZWQgbGluZTogJS4qcyIKK21zZ3N0ciAiY2hpIHRp4bq/dDogZMOybmcga2jDtG5nIGPhuqduOiAlLipzIgorCisjOiBhcHBseS5jOjE1NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0Y2ggZnJhZ21lbnQgd2l0aG91dCBoZWFkZXIgYXQgbGluZSAlZDogJS4qcyIKK21zZ3N0ciAibWnhur9uZyB2w6EgcGjDom4gbeG6o25oIG3DoCBraMO0bmcgY8OzIHBo4bqnbiDEkeG6p3UgdOG6oWkgZMOybmcgJWQ6ICUuKnMiCisKKyM6IGFwcGx5LmM6MTc1MwogbXNnaWQgIm5ldyBmaWxlIGRlcGVuZHMgb24gb2xkIGNvbnRlbnRzIgogbXNnc3RyICJ04bqtcCB0aW4gbeG7m2kgcGjhu6UgdGh14buZYyB2w6BvIG7hu5lpIGR1bmcgY8WpIgogCi0jOiBhcHBseS5jOjE3NzEKKyM6IGFwcGx5LmM6MTc1NQogbXNnaWQgImRlbGV0ZWQgZmlsZSBzdGlsbCBoYXMgY29udGVudHMiCiBtc2dzdHIgInThuq1wIHRpbiDEkcOjIHjDs2EgduG6q24gY8OybiBu4buZaSBkdW5nIgogCi0jOiBhcHBseS5jOjE4MDUKKyM6IGFwcGx5LmM6MTc4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3JydXB0IHBhdGNoIGF0IGxpbmUgJWQiCiBtc2dzdHIgIm1p4bq/bmcgdsOhIGjhu49uZyB04bqhaSBkw7JuZyAlZCIKIAotIzogYXBwbHkuYzoxODQyCisjOiBhcHBseS5jOjE4MjYKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IGZpbGUgJXMgZGVwZW5kcyBvbiBvbGQgY29udGVudHMiCiBtc2dzdHIgInThuq1wIHRpbiBt4bubaSAlcyBwaOG7pSB0aHXhu5ljIHbDoG8gbuG7mWkgZHVuZyBjxakiCiAKLSM6IGFwcGx5LmM6MTg0NAorIzogYXBwbHkuYzoxODI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbGV0ZWQgZmlsZSAlcyBzdGlsbCBoYXMgY29udGVudHMiCiBtc2dzdHIgInThuq1wIHRpbiDEkcOjIHjDs2EgJXMgduG6q24gY8OybiBu4buZaSBkdW5nIgogCi0jOiBhcHBseS5jOjE4NDcKKyM6IGFwcGx5LmM6MTgzMQogIywgYy1mb3JtYXQKIG1zZ2lkICIqKiB3YXJuaW5nOiBmaWxlICVzIGJlY29tZXMgZW1wdHkgYnV0IGlzIG5vdCBkZWxldGVkIgogbXNnc3RyICIqKiBj4bqjbmggYsOhbzogdOG6rXAgdGluICVzIHRy4bufIG7Dqm4gdHLhu5FuZyBy4buXbmcgbmjGsG5nIGtow7RuZyBi4buLIHjDs2EiCiAKLSM6IGFwcGx5LmM6MTk5NAorIzogYXBwbHkuYzoxOTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgYmluYXJ5IHBhdGNoIGF0IGxpbmUgJWQ6ICUuKnMiCiBtc2dzdHIgIm1p4bq/bmcgdsOhIMSR4buLbmggZOG6oW5nIG5o4buLIHBow6JuIHNhaSBo4buPbmcgdOG6oWkgZMOybmcgJWQ6ICUuKnMiCiAKLSM6IGFwcGx5LmM6MjAzMQorIzogYXBwbHkuYzoyMDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZCIKIG1zZ3N0ciAibWnhur9uZyB2w6EgxJHhu4tuaCBk4bqhbmcgbmjhu4sgcGjDom4ga2jDtG5nIMSRxrDhu6NjIG5o4bqtbiByYSB04bqhaSBkw7JuZyAlZCIKIAotIzogYXBwbHkuYzoyMTkzCisjOiBhcHBseS5jOjIxNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0Y2ggd2l0aCBvbmx5IGdhcmJhZ2UgYXQgbGluZSAlZCIKIG1zZ3N0ciAidsOhIGNo4buJIHbhu5tpIOKAnHLDoWPigJ0gdOG6oWkgZMOybmcgJWQiCiAKLSM6IGFwcGx5LmM6MjI3OQorIzogYXBwbHkuYzoyMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHN5bWxpbmsgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgbGnDqm4ga+G6v3QgbeG7gW0gJXMiCiAKLSM6IGFwcGx5LmM6MjI4MworIzogYXBwbHkuYzoyMjY3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuIG9yIHJlYWQgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIGhheSDEkeG7jWMgJXMiCiAKLSM6IGFwcGx5LmM6Mjk0MgorIzogYXBwbHkuYzoyOTM2CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc3RhcnQgb2YgbGluZTogJyVjJyIKIG1zZ3N0ciAic2FpIGto4bufaSDEkeG6p3UgZMOybmc6IOKAnCVj4oCdIgogCi0jOiBhcHBseS5jOjMwNjMKKyM6IGFwcGx5LmM6MzA1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJIdW5rICMlZCBzdWNjZWVkZWQgYXQgJWQgKG9mZnNldCAlZCBsaW5lKS4iCiBtc2dpZF9wbHVyYWwgIkh1bmsgIyVkIHN1Y2NlZWRlZCBhdCAlZCAob2Zmc2V0ICVkIGxpbmVzKS4iCiBtc2dzdHJbMF0gIkto4buRaSBk4buvIGxp4buHdSAjJWQgdGjDoG5oIGPDtG5nIHThuqFpICVkIChvZmZzZXQgJWQgZMOybmcpLiIKIAotIzogYXBwbHkuYzozMDc1CisjOiBhcHBseS5jOjMwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29udGV4dCByZWR1Y2VkIHRvICglbGQvJWxkKSB0byBhcHBseSBmcmFnbWVudCBhdCAlZCIKLW1zZ3N0ciAiTuG7mWkgZHVuZyBi4buLIGdp4bqjbSB4deG7kW5nIGPDsm4gKCVsZC8lbGQpIMSR4buDIMOhcCBk4bulbmcgbeG6o25oIGThu68gbGnhu4d1IHThuqFpICVkIgorbXNnc3RyICJOZ+G7ryBj4bqjbmggYuG7iyBnaeG6o20geHXhu5FuZyBjw7JuICglbGQvJWxkKSDEkeG7gyDDoXAgZOG7pW5nIG3huqNuaCBk4buvIGxp4buHdSB04bqhaSAlZCIKIAotIzogYXBwbHkuYzozMDgxCisjOiBhcHBseS5jOjMwNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIndoaWxlIHNlYXJjaGluZyBmb3I6XG4iCkBAIC0yOTYsNDU5ICsxMDA1LDQ0NSBAQAogInRyb25nIGtoaSDEkWFuZyB0w6xtIGtp4bq/bSBjaG86XG4iCiAiJS4qcyIKIAotIzogYXBwbHkuYzozMTAzCisjOiBhcHBseS5jOjMwOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBiaW5hcnkgcGF0Y2ggZGF0YSBmb3IgJyVzJyIKIG1zZ3N0ciAidGhp4bq/dSBk4buvIGxp4buHdSBj4bunYSBtaeG6v25nIHbDoSDEkeG7i25oIGThuqFuZyBuaOG7iyBwaMOibiBjaG8g4oCcJXPigJ0iCiAKLSM6IGFwcGx5LmM6MzExMQorIzogYXBwbHkuYzozMTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZXZlcnNlLWFwcGx5IGEgYmluYXJ5IHBhdGNoIHdpdGhvdXQgdGhlIHJldmVyc2UgaHVuayB0byAnJXMnIgogbXNnc3RyICIiCi0ia2jDtG5nIHRo4buDIHJldmVyc2UtYXBwbHkgbeG7mXQgbWnhur9uZyB2w6Egbmjhu4sgcGjDom4gbcOgIGtow7RuZyDEkeG6o28gbmfGsOG7o2MgaHVuayB0aMOgbmggIgorImtow7RuZyB0aOG7gyByZXZlcnNlLWFwcGx5IG3hu5l0IG1p4bq/bmcgdsOhIG5o4buLIHBow6JuIG3DoCBraMO0bmcgxJHhuqNvIG5nxrDhu6NjIGtow7pjIHRow6BuaCAiCiAi4oCcJXPigJ0iCiAKLSM6IGFwcGx5LmM6MzE1OAorIzogYXBwbHkuYzozMTUyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBhcHBseSBiaW5hcnkgcGF0Y2ggdG8gJyVzJyB3aXRob3V0IGZ1bGwgaW5kZXggbGluZSIKIG1zZ3N0ciAiIgogImtow7RuZyB0aOG7gyDDoXAgZOG7pW5nIG1p4bq/bmcgdsOhIG5o4buLIHBow6JuIHRow6BuaCDigJwlc+KAnSBtw6Aga2jDtG5nIGPDsyBkw7JuZyBjaOG7iSBt4bulYyDEkeG6p3kgIgogIsSR4bunIgogCi0jOiBhcHBseS5jOjMxNjgKKyM6IGFwcGx5LmM6MzE2MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidGhlIHBhdGNoIGFwcGxpZXMgdG8gJyVzJyAoJXMpLCB3aGljaCBkb2VzIG5vdCBtYXRjaCB0aGUgY3VycmVudCBjb250ZW50cy4iCiBtc2dzdHIgIiIKICJtaeG6v25nIHbDoSDDoXAgZOG7pW5nIGNobyDigJwlc+KAnSAoJXMpLCBjw6FpIG3DoCBraMO0bmcga2jhu5twIHbhu5tpIGPDoWMgbuG7mWkgZHVuZyBoaeG7h24gdOG6oWkuIgogCi0jOiBhcHBseS5jOjMxNzYKKyM6IGFwcGx5LmM6MzE3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgcGF0Y2ggYXBwbGllcyB0byBhbiBlbXB0eSAnJXMnIGJ1dCBpdCBpcyBub3QgZW1wdHkiCiBtc2dzdHIgIm1p4bq/bmcgdsOhIMOhcCBk4bulbmcgY2hvIG3hu5l0IOKAnCVz4oCdIHRy4buRbmcgcuG7l25nIG5oxrBuZyBuw7MgbOG6oWkga2jDtG5nIHRy4buRbmciCiAKLSM6IGFwcGx5LmM6MzE5NAorIzogYXBwbHkuYzozMTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSBuZWNlc3NhcnkgcG9zdGltYWdlICVzIGZvciAnJXMnIGNhbm5vdCBiZSByZWFkIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIHBvc3RpbWFnZSAlcyBj4bqnbiB0aGnhur90IGNobyDigJwlc+KAnSIKIAotIzogYXBwbHkuYzozMjA3CisjOiBhcHBseS5jOjMyMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmluYXJ5IHBhdGNoIGRvZXMgbm90IGFwcGx5IHRvICclcyciCiBtc2dzdHIgIm1p4bq/bmcgdsOhIMSR4buLbmggZOG6oW5nIG5o4buLIHBow6JuIGtow7RuZyDEkcaw4bujYyDDoXAgZOG7pW5nIGNobyDigJwlc+KAnSIKIAotIzogYXBwbHkuYzozMjEzCisjOiBhcHBseS5jOjMyMDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmluYXJ5IHBhdGNoIHRvICclcycgY3JlYXRlcyBpbmNvcnJlY3QgcmVzdWx0IChleHBlY3RpbmcgJXMsIGdvdCAlcykiCiBtc2dzdHIgIiIKICJ2w6Egbmjhu4sgcGjDom4gY2hvIOKAnCVz4oCdIHThuqFvIHJhIGvhur90IHF14bqjIGtow7RuZyBjaMOtbmggeMOhYyAobW9uZyBjaOG7nSAlcywgbOG6oWkgbmjhuq1uICIKICIlcykiCiAKLSM6IGFwcGx5LmM6MzIzNAorIzogYXBwbHkuYzozMjMwCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGNoIGZhaWxlZDogJXM6JWxkIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgdsOhOiAlczolbGQiCiAKLSM6IGFwcGx5LmM6MzM1NgorIzogYXBwbHkuYzozMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGVja291dCAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHJhICVzIgogCi0jOiBhcHBseS5jOjM0MDggYXBwbHkuYzozNDE5IGFwcGx5LmM6MzQ2NSBtaWR4LmM6NTggc2V0dXAuYzoyNzgKKyM6IGFwcGx5LmM6MzQwNSBhcHBseS5jOjM0MTYgYXBwbHkuYzozNDYyIG1pZHguYzo2MSBzZXR1cC5jOjI5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCAlcyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMSR4buNYyAlcyIKIAotIzogYXBwbHkuYzozNDE2CisjOiBhcHBseS5jOjM0MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZGluZyBmcm9tICclcycgYmV5b25kIGEgc3ltYm9saWMgbGluayIKIG1zZ3N0ciAixJHhu41jIHThu6sg4oCcJXPigJ0gdsaw4bujdCByYSBuZ2/DoGkgbGnDqm4ga+G6v3QgbeG7gW0iCiAKLSM6IGFwcGx5LmM6MzQ0NSBhcHBseS5jOjM2ODgKKyM6IGFwcGx5LmM6MzQ0MiBhcHBseS5jOjM2ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAlcyBoYXMgYmVlbiByZW5hbWVkL2RlbGV0ZWQiCiBtc2dzdHIgIsSRxrDhu51uZyBk4bqrbiAlcyDEkcOjIGLhu4sgeMOzYSBob+G6t2MgxJHhu5VpIHTDqm4iCiAKLSM6IGFwcGx5LmM6MzUzMSBhcHBseS5jOjM3MDMKKyM6IGFwcGx5LmM6MzUyOCBhcHBseS5jOjM3MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGRvZXMgbm90IGV4aXN0IGluIGluZGV4IgogbXNnc3RyICIlczoga2jDtG5nIHThu5NuIHThuqFpIHRyb25nIGLhuqNuZyBt4bulYyBs4bulYyIKIAotIzogYXBwbHkuYzozNTQwIGFwcGx5LmM6MzcxMQorIzogYXBwbHkuYzozNTM3IGFwcGx5LmM6MzcwOAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZG9lcyBub3QgbWF0Y2ggaW5kZXgiCiBtc2dzdHIgIiVzOiBraMO0bmcga2jhu5twIHRyb25nIG3hu6VjIGzhu6VjIgogCi0jOiBhcHBseS5jOjM1NzUKKyM6IGFwcGx5LmM6MzU3MgogbXNnaWQgInJlcG9zaXRvcnkgbGFja3MgdGhlIG5lY2Vzc2FyeSBibG9iIHRvIGZhbGwgYmFjayBvbiAzLXdheSBtZXJnZS4iCi1tc2dzdHIgIktobyB0aGnhur91IMSR4buRaSB0xrDhu6NuZyBibG9iIGPhuqduIHRoaeG6v3QgxJHhu4MgdHLhu58gduG7gSB0csOqbiDigJwzLXdheSBtZXJnZeKAnS4iCittc2dzdHIgImtobyB0aGnhur91IMSR4buRaSB0xrDhu6NuZyBibG9iIGPhuqduIHRoaeG6v3QgxJHhu4MgdHLhu58gduG7gSB0csOqbiDigJwzLXdheSBtZXJnZeKAnS4iCiAKLSM6IGFwcGx5LmM6MzU3OAorIzogYXBwbHkuYzozNTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhbGxpbmcgYmFjayB0byB0aHJlZS13YXkgbWVyZ2UuLi5cbiIKIG1zZ3N0ciAixJBhbmcgdHLhu58gbOG6oWkgaMOyYSB0cuG7mW4g4oCcMy3Ekcaw4budbmfigJ3igKZcbiIKIAotIzogYXBwbHkuYzozNTk0IGFwcGx5LmM6MzU5OAorIzogYXBwbHkuYzozNTkxIGFwcGx5LmM6MzU5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCB0aGUgY3VycmVudCBjb250ZW50cyBvZiAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIG7hu5lpIGR1bmcgaGnhu4duIGjDoG5oIGPhu6dhIOKAnCVz4oCdIgogCi0jOiBhcHBseS5jOjM2MTAKKyM6IGFwcGx5LmM6MzYwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gZmFsbCBiYWNrIG9uIHRocmVlLXdheSBtZXJnZS4uLlxuIgogbXNnc3RyICJH4bq3cCBs4buXaSBraGkgcXVheSB0cuG7nyBs4bqhaSDEkeG7gyBow7JhIHRy4buZbiBraeG7g3Ug4oCcdGhyZWUtd2F54oCd4oCmXG4iCiAKLSM6IGFwcGx5LmM6MzYyNAorIzogYXBwbHkuYzozNjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyB3aXRoIGNvbmZsaWN0cy5cbiIKIG1zZ3N0ciAixJDDoyDDoXAgZOG7pW5nIG1p4bq/bmcgdsOhICVzIHbhu5tpIGPDoWMgeHVuZyDEkeG7mXQuXG4iCiAKLSM6IGFwcGx5LmM6MzYyOQorIzogYXBwbHkuYzozNjI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyBjbGVhbmx5LlxuIgogbXNnc3RyICLEkMOjIMOhcCBk4bulbmcgbWnhur9uZyB2w6EgJXMgbeG7mXQgY8OhY2ggc+G6oWNoIHPhur0uXG4iCiAKLSM6IGFwcGx5LmM6MzY1NQorIzogYXBwbHkuYzozNjUyCiBtc2dpZCAicmVtb3ZhbCBwYXRjaCBsZWF2ZXMgZmlsZSBjb250ZW50cyIKIG1zZ3N0ciAibG/huqFpIGLhu48gbWnhur9uZyB2w6EgxJHhu4MgbOG6oWkgbuG7mWkgZHVuZyB04bqtcCB0aW4iCiAKLSM6IGFwcGx5LmM6MzcyOAorIzogYXBwbHkuYzozNzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiB3cm9uZyB0eXBlIgogbXNnc3RyICIlczogc2FpIGtp4buDdSIKIAotIzogYXBwbHkuYzozNzMwCisjOiBhcHBseS5jOjM3MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaGFzIHR5cGUgJW8sIGV4cGVjdGVkICVvIgogbXNnc3RyICIlcyBjw7Mga2nhu4N1ICVvLCBj4bqnbiAlbyIKIAotIzogYXBwbHkuYzozODgxIGFwcGx5LmM6Mzg4MworIzogYXBwbHkuYzozODc4IGFwcGx5LmM6Mzg4MCByZWFkLWNhY2hlLmM6ODMwIHJlYWQtY2FjaGUuYzo4NTYKKyM6IHJlYWQtY2FjaGUuYzoxMzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgcGF0aCAnJXMnIgogbXNnc3RyICLEkcaw4budbmcgZOG6q24ga2jDtG5nIGjhu6NwIGzhu4cg4oCcJXPigJ0iCiAKLSM6IGFwcGx5LmM6MzkzOQorIzogYXBwbHkuYzozOTM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBhbHJlYWR5IGV4aXN0cyBpbiBpbmRleCIKIG1zZ3N0ciAiJXM6IMSRw6MgY8OzIHThu6sgdHLGsOG7m2MgdHJvbmcgYuG6o25nIG3hu6VjIGzhu6VjIgogCi0jOiBhcHBseS5jOjM5NDIKKyM6IGFwcGx5LmM6MzkzOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogYWxyZWFkeSBleGlzdHMgaW4gd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIiVzOiDEkcOjIHPhurVuIGPDsyB0cm9uZyB0aMawIG3hu6VjIMSRYW5nIGzDoG0gdmnhu4djIgogCi0jOiBhcHBseS5jOjM5NjIKKyM6IGFwcGx5LmM6Mzk1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgbW9kZSAoJW8pIG9mICVzIGRvZXMgbm90IG1hdGNoIG9sZCBtb2RlICglbykiCiBtc2dzdHIgImNo4bq/IMSR4buZIG3hu5tpICglbykgY+G7p2EgJXMga2jDtG5nIGto4bubcCB24bubaSBjaOG6vyDEkeG7mSBjxakgKCVvKSIKIAotIzogYXBwbHkuYzozOTY3CisjOiBhcHBseS5jOjM5NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IG1vZGUgKCVvKSBvZiAlcyBkb2VzIG5vdCBtYXRjaCBvbGQgbW9kZSAoJW8pIG9mICVzIgogbXNnc3RyICJjaOG6vyDEkeG7mSBt4bubaSAoJW8pIGPhu6dhICVzIGtow7RuZyBraOG7m3AgduG7m2kgY2jhur8gxJHhu5kgY8WpICglbykgY+G7p2EgJXMiCiAKLSM6IGFwcGx5LmM6Mzk4NworIzogYXBwbHkuYzozOTg0CiAjLCBjLWZvcm1hdAogbXNnaWQgImFmZmVjdGVkIGZpbGUgJyVzJyBpcyBiZXlvbmQgYSBzeW1ib2xpYyBsaW5rIgogbXNnc3RyICJ04bqtcCB0aW4gY2jhu4t1IHTDoWMgxJHhu5luZyDigJwlc+KAnSB2xrDhu6N0IHJhIG5nb8OgaSBsacOqbiBr4bq/dCBt4buBbSIKIAotIzogYXBwbHkuYzozOTkxCisjOiBhcHBseS5jOjM5ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHBhdGNoIGRvZXMgbm90IGFwcGx5IgogbXNnc3RyICIlczogbWnhur9uZyB2w6Ega2jDtG5nIMSRxrDhu6NjIMOhcCBk4bulbmciCiAKLSM6IGFwcGx5LmM6NDAwNgorIzogYXBwbHkuYzo0MDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoZWNraW5nIHBhdGNoICVzLi4uIgogbXNnc3RyICLEkGFuZyBraeG7g20gdHJhIG1p4bq/bmcgdsOhICVz4oCmIgogCi0jOiBhcHBseS5jOjQwOTgKKyM6IGFwcGx5LmM6NDA5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJzaGExIGluZm9ybWF0aW9uIGlzIGxhY2tpbmcgb3IgdXNlbGVzcyBmb3Igc3VibW9kdWxlICVzIgogbXNnc3RyICJ0aMO0bmcgdGluIHNoYTEgdGhp4bq/dSBob+G6t2Mga2jDtG5nIGTDuW5nIMSRxrDhu6NjIGNobyBtw7QtxJF1biAlcyIKIAotIzogYXBwbHkuYzo0MTA1CisjOiBhcHBseS5jOjQxMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9kZSBjaGFuZ2UgZm9yICVzLCB3aGljaCBpcyBub3QgaW4gY3VycmVudCBIRUFEIgogbXNnc3RyICJ0aGF5IMSR4buVaSBjaOG6vyDEkeG7mSBjaG8gJXMsIGPDoWkgbcOgIGtow7RuZyBwaOG6o2kgbMOgIEhFQUQgaGnhu4duIHThuqFpIgogCi0jOiBhcHBseS5jOjQxMDgKKyM6IGFwcGx5LmM6NDEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJzaGExIGluZm9ybWF0aW9uIGlzIGxhY2tpbmcgb3IgdXNlbGVzcyAoJXMpLiIKIG1zZ3N0ciAidGjDtG5nIHRpbiBzaGExIGPDsm4gdGhp4bq/dSBoYXkga2jDtG5nIGTDuW5nIMSRxrDhu6NjKCVzKS4iCiAKLSM6IGFwcGx5LmM6NDExMyBidWlsdGluL2NoZWNrb3V0LmM6MjQ0IGJ1aWx0aW4vcmVzZXQuYzoxNDIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibWFrZV9jYWNoZV9lbnRyeSBmYWlsZWQgZm9yIHBhdGggJyVzJyIKLW1zZ3N0ciAibWFrZV9jYWNoZV9lbnRyeSBn4bq3cCBs4buXaSDEkeG7kWkgduG7m2kgxJHGsOG7nW5nIGThuqtuIOKAnCVz4oCdIgotCi0jOiBhcHBseS5jOjQxMTcKKyM6IGFwcGx5LmM6NDExNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgYWRkICVzIHRvIHRlbXBvcmFyeSBpbmRleCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHRow6ptICVzIHbDoG8gY2jhu4kgbeG7pWMgdOG6oW0gdGjhu51pIgogCi0jOiBhcHBseS5jOjQxMjcKKyM6IGFwcGx5LmM6NDEyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgdGVtcG9yYXJ5IGluZGV4IHRvICVzIgotbXNnc3RyICJraMO0bmcgdGjhu4NnaGkgbeG7pWMgbOG7pWMgdOG6oW0gdsOgbyAlcyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGdoaSBt4bulYyBs4bulYyB04bqhbSB2w6BvICVzIgogCi0jOiBhcHBseS5jOjQyNjUKKyM6IGFwcGx5LmM6NDI2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICVzIGZyb20gaW5kZXgiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBn4buhIGLhu48gJXMgdOG7qyBt4bulYyBs4bulYyIKIAotIzogYXBwbHkuYzo0Mjk5CisjOiBhcHBseS5jOjQyOTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBwYXRjaCBmb3Igc3VibW9kdWxlICVzIgogbXNnc3RyICJtaeG6v25nIHbDoSBzYWkgaOG7j25nIGNobyBtw7QtxJF1bi1jb24gJXMiCiAKLSM6IGFwcGx5LmM6NDMwNQorIzogYXBwbHkuYzo0MzAyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ld2x5IGNyZWF0ZWQgZmlsZSAnJXMnIgotbXNnc3RyICJraMO0bmcgdGjhu4MgbOG6pXkgdGjhu5FuZyBr4buBIHbhu4EgdOG6rXAgdGluICVzIG3hu5tpIGjGoW4gxJHDoyDEkcaw4bujYyB04bqhbyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHRo4buRbmcga8OqIHbhu4EgdOG6rXAgdGluICVzIG3hu5tpIGjGoW4gxJHDoyDEkcaw4bujYyB04bqhbyIKIAotIzogYXBwbHkuYzo0MzEzCisjOiBhcHBseS5jOjQzMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBiYWNraW5nIHN0b3JlIGZvciBuZXdseSBjcmVhdGVkIGZpbGUgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyDigJxraG8gbMawdSDEkeG6sW5nIHNhdeKAnSBjaG8gdOG6rXAgdGluIMSRxrDhu6NjIHThuqFvIG3hu5tpIGjGoW4gJXMiCiAKLSM6IGFwcGx5LmM6NDMxOSBhcHBseS5jOjQ0NjQKKyM6IGFwcGx5LmM6NDMxNiBhcHBseS5jOjQ0NjEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGFkZCBjYWNoZSBlbnRyeSBmb3IgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB0aMOqbSBt4bulYyBuaOG7myDEkeG7h20gY2hvICVzIgogCi0jOiBhcHBseS5jOjQzNjIKKyM6IGFwcGx5LmM6NDM1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gJyVzJyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIGdoaSB2w6BvIOKAnCVz4oCdIgogCi0jOiBhcHBseS5jOjQzNjYKKyM6IGFwcGx5LmM6NDM2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjbG9zaW5nIGZpbGUgJyVzJyIKIG1zZ3N0ciAixJFhbmcgxJHDs25nIHThuq1wIHRpbiDigJwlc+KAnSIKIAotIzogYXBwbHkuYzo0NDM2CisjOiBhcHBseS5jOjQ0MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyBtb2RlICVvIgogbXNnc3RyICJraMO0bmcgdGjhu4MgZ2hpIHbDoG8gdOG6rXAgdGluIOKAnCVz4oCdIGNo4bq/IMSR4buZICVvIgogCi0jOiBhcHBseS5jOjQ1MzQKKyM6IGFwcGx5LmM6NDUzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBsaWVkIHBhdGNoICVzIGNsZWFubHkuIgogbXNnc3RyICLEkMOjIMOhcCBk4bulbmcgbWnhur9uZyB2w6EgJXMgbeG7mXQgY8OhY2ggc+G6oWNoIHPhur0uIgogCi0jOiBhcHBseS5jOjQ1NDIKKyM6IGFwcGx5LmM6NDUzOQogbXNnaWQgImludGVybmFsIGVycm9yIgogbXNnc3RyICJs4buXaSBu4buZaSBi4buZIgogCi0jOiBhcHBseS5jOjQ1NDUKKyM6IGFwcGx5LmM6NDU0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBseWluZyBwYXRjaCAlJXMgd2l0aCAlZCByZWplY3QuLi4iCiBtc2dpZF9wbHVyYWwgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdHMuLi4iCiBtc2dzdHJbMF0gIsSQYW5nIMOhcCBk4bulbmcgbWnhur9uZyB2w6EgJSVzIHbhu5tpICVkIGzhuqduIHThu6sgY2jhu5Fp4oCmIgogCi0jOiBhcHBseS5jOjQ1NTYKKyM6IGFwcGx5LmM6NDU1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cnVuY2F0aW5nIC5yZWogZmlsZW5hbWUgdG8gJS4qcy5yZWoiCiBtc2dzdHIgIsSRYW5nIGPhuq90IG5n4bqvbiB0w6puIHThuq1wIHRpbiAucmVqIHRow6BuaCAlLipzLnJlaiIKIAotIzogYXBwbHkuYzo0NTY0IGJ1aWx0aW4vZmV0Y2guYzo4NDMgYnVpbHRpbi9mZXRjaC5jOjExMjIKKyM6IGFwcGx5LmM6NDU2MSBidWlsdGluL2ZldGNoLmM6OTAxIGJ1aWx0aW4vZmV0Y2guYzoxMjAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuICVzIgogbXNnc3RyICJraMO0bmcgbeG7nyDEkcaw4bujYyDigJwlc+KAnSIKIAotIzogYXBwbHkuYzo0NTc4CisjOiBhcHBseS5jOjQ1NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiSHVuayAjJWQgYXBwbGllZCBjbGVhbmx5LiIKIG1zZ3N0ciAiS2jhu5FpIG5o4bubICMlZCDEkcaw4bujYyDDoXAgZOG7pW5nIGfhu41uIGfDoG5nLiIKIAotIzogYXBwbHkuYzo0NTgyCisjOiBhcHBseS5jOjQ1NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVqZWN0ZWQgaHVuayAjJWQuIgotbXNnc3RyICLEkW/huqFuIGThu68gbGnhu4d1ICMlZCBi4buLIHThu6sgY2jhu5FpLiIKK21zZ3N0ciAixJBv4bqhbiBk4buvIGxp4buHdSAjJWQgYuG7iyB04burIGNo4buRaS4iCiAKLSM6IGFwcGx5LmM6NDY5MgorIzogYXBwbHkuYzo0Njk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwZWQgcGF0Y2ggJyVzJy4iCi1tc2dzdHIgImLhu48gcXVhIMSRxrDhu51uZyBk4bqrbiDigJwlc+KAnS4iCittc2dzdHIgIkLhu48gcXVhIMSRxrDhu51uZyBk4bqrbiDigJwlc+KAnS4iCiAKLSM6IGFwcGx5LmM6NDcwMAorIzogYXBwbHkuYzo0NzA2CiBtc2dpZCAidW5yZWNvZ25pemVkIGlucHV0IgogbXNnc3RyICJraMO0bmcgdGjhu6thIG5o4bqtbiDEkeG6p3UgdsOgbyIKIAotIzogYXBwbHkuYzo0NzE5CisjOiBhcHBseS5jOjQ3MjYKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBpbmRleCBmaWxlIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIHThuq1wIHRpbiBsxrB1IGLhuqNuZyBt4bulYyBs4bulYyIKIAotIzogYXBwbHkuYzo0ODc0CisjOiBhcHBseS5jOjQ4ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgb3BlbiBwYXRjaCAnJXMnOiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gbWnhur9uZyB2w6Eg4oCcJXPigJ06ICVzIgogCi0jOiBhcHBseS5jOjQ5MDEKKyM6IGFwcGx5LmM6NDkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJzcXVlbGNoZWQgJWQgd2hpdGVzcGFjZSBlcnJvciIKIG1zZ2lkX3BsdXJhbCAic3F1ZWxjaGVkICVkIHdoaXRlc3BhY2UgZXJyb3JzIgogbXNnc3RyWzBdICLEkcOjIGNo4bqlbSBk4bupdCAlZCBs4buXaSBraG/huqNuZyB0cuG6r25nIgogCi0jOiBhcHBseS5jOjQ5MDcgYXBwbHkuYzo0OTIyCisjOiBhcHBseS5jOjQ5MTYgYXBwbHkuYzo0OTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVkIGxpbmUgYWRkcyB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dpZF9wbHVyYWwgIiVkIGxpbmVzIGFkZCB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dzdHJbMF0gIiVkIGTDsm5nIHRow6ptIGtob+G6o25nIHRy4bqvbmcgbOG7l2kuIgogCi0jOiBhcHBseS5jOjQ5MTUKKyM6IGFwcGx5LmM6NDkyNAogIywgYy1mb3JtYXQKIG1zZ2lkICIlZCBsaW5lIGFwcGxpZWQgYWZ0ZXIgZml4aW5nIHdoaXRlc3BhY2UgZXJyb3JzLiIKIG1zZ2lkX3BsdXJhbCAiJWQgbGluZXMgYXBwbGllZCBhZnRlciBmaXhpbmcgd2hpdGVzcGFjZSBlcnJvcnMuIgogbXNnc3RyWzBdICIlZCBkw7JuZyDEkcaw4bujYyDDoXAgZOG7pW5nIHNhdSBraGkgc+G7rWEgY8OhYyBs4buXaSBraG/huqNuZyB0cuG6r25nLiIKIAotIzogYXBwbHkuYzo0OTMxIGJ1aWx0aW4vYWRkLmM6NTM4IGJ1aWx0aW4vbXYuYzozMDAgYnVpbHRpbi9ybS5jOjM4OQorIzogYXBwbHkuYzo0OTQwIGJ1aWx0aW4vYWRkLmM6NjEyIGJ1aWx0aW4vbXYuYzozMDEgYnVpbHRpbi9ybS5jOjQwNgogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIGdoaSB04bqtcCB0aW4gbMawdSBi4bqjbmcgbeG7pWMgbOG7pWMgbeG7m2kiCiAKLSM6IGFwcGx5LmM6NDk1OCBhcHBseS5jOjQ5NjEgYnVpbHRpbi9hbS5jOjIyMDkgYnVpbHRpbi9hbS5jOjIyMTIKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjEgYnVpbHRpbi9mZXRjaC5jOjExOCBidWlsdGluL21lcmdlLmM6MjYyCi0jOiBidWlsdGluL3B1bGwuYzoxOTkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwNgotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjUKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODQ2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODQ5Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjA4OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NwotbXNnaWQgInBhdGgiCi1tc2dzdHIgIsSRxrDhu51uZy1k4bqrbiIKLQotIzogYXBwbHkuYzo0OTU5CisjOiBhcHBseS5jOjQ5NjgKIG1zZ2lkICJkb24ndCBhcHBseSBjaGFuZ2VzIG1hdGNoaW5nIHRoZSBnaXZlbiBwYXRoIgogbXNnc3RyICJraMO0bmcgw6FwIGThu6VuZyBjw6FjIHRoYXkgxJHhu5VpIGto4bubcCB24bubaSDEkcaw4budbmcgZOG6q24gxJHDoyBjaG8iCiAKLSM6IGFwcGx5LmM6NDk2MgorIzogYXBwbHkuYzo0OTcxCiBtc2dpZCAiYXBwbHkgY2hhbmdlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCIKIG1zZ3N0ciAiw6FwIGThu6VuZyBjw6FjIHRoYXkgxJHhu5VpIGto4bubcCB24bubaSDEkcaw4budbmcgZOG6q24gxJHDoyBjaG8iCiAKLSM6IGFwcGx5LmM6NDk2NCBidWlsdGluL2FtLmM6MjIxOAorIzogYXBwbHkuYzo0OTczIGJ1aWx0aW4vYW0uYzoyMjYwCiBtc2dpZCAibnVtIgogbXNnc3RyICJz4buRIgogCi0jOiBhcHBseS5jOjQ5NjUKKyM6IGFwcGx5LmM6NDk3NAogbXNnaWQgInJlbW92ZSA8bnVtPiBsZWFkaW5nIHNsYXNoZXMgZnJvbSB0cmFkaXRpb25hbCBkaWZmIHBhdGhzIgogbXNnc3RyICJn4buhIGLhu48gPHPhu5E+IGThuqV1IGfhuqFjaCBjaMOpbyBk4bqrbiDEkeG6p3UgdOG7qyDEkcaw4budbmcgZOG6q24gZGlmZiBj4buVIMSRaeG7g24iCiAKLSM6IGFwcGx5LmM6NDk2OAorIzogYXBwbHkuYzo0OTc3CiBtc2dpZCAiaWdub3JlIGFkZGl0aW9ucyBtYWRlIGJ5IHRoZSBwYXRjaCIKIG1zZ3N0ciAibOG7nSDEkWkgcGjhuqduIGLhu5UgeHVuZyDEkcaw4bujYyB04bqhbyByYSBi4bufaSBtaeG6v25nIHbDoSIKIAotIzogYXBwbHkuYzo0OTcwCisjOiBhcHBseS5jOjQ5NzkKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGRpZmZzdGF0IGZvciB0aGUgaW5wdXQiCiBtc2dzdHIgIiIKICJ0aGF5IHbDrCDDoXAgZOG7pW5nIG3hu5l0IG1p4bq/bmcgdsOhLCBr4bq/dCB4deG6pXQga+G6v3QgcXXhuqMgdOG7qyBs4buHbmggZGlmZnN0YXQgY2hvIMSR4bqndSByYSIKIAotIzogYXBwbHkuYzo0OTc0CisjOiBhcHBseS5jOjQ5ODMKIG1zZ2lkICJzaG93IG51bWJlciBvZiBhZGRlZCBhbmQgZGVsZXRlZCBsaW5lcyBpbiBkZWNpbWFsIG5vdGF0aW9uIgogbXNnc3RyICIiCiAiaGnhu4NuIHRo4buLIHPhu5EgbMaw4bujbmcgY8OhYyBkw7JuZyDEkcaw4bujYyB0aMOqbSB2w6BvIHbDoCB4w7NhIMSRaSB0aGVvIGvDvSBoaeG7h3UgdGjhuq1wIHBow6JuIgogCi0jOiBhcHBseS5jOjQ5NzYKKyM6IGFwcGx5LmM6NDk4NQogbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBvdXRwdXQgYSBzdW1tYXJ5IGZvciB0aGUgaW5wdXQiCiBtc2dzdHIgInRoYXkgdsOsIMOhcCBk4bulbmcgbeG7mXQgbWnhur9uZyB2w6EsIGvhur90IHh14bqldCBr4bq/dCBxdeG6oyBjaG8gxJHhuqd1IHbDoG8iCiAKLSM6IGFwcGx5LmM6NDk3OAorIzogYXBwbHkuYzo0OTg3CiBtc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIHNlZSBpZiB0aGUgcGF0Y2ggaXMgYXBwbGljYWJsZSIKIG1zZ3N0ciAidGhheSB2w6wgw6FwIGThu6VuZyBtaeG6v25nIHbDoSwgaMOjeSB4ZW0geGVtIG1p4bq/bmcgdsOhIGPDsyB0aMOtY2ggaOG7o3Aga2jDtG5nIgogCi0jOiBhcHBseS5jOjQ5ODAKKyM6IGFwcGx5LmM6NDk4OQogbXNnaWQgIm1ha2Ugc3VyZSB0aGUgcGF0Y2ggaXMgYXBwbGljYWJsZSB0byB0aGUgY3VycmVudCBpbmRleCIKIG1zZ3N0ciAiaMOjeSBjaOG6r2MgY2jhuq9uIGzDoCBtaeG6v25nIHbDoSB0aMOtY2ggaOG7o3AgduG7m2kgYuG6o25nIG3hu6VjIGzhu6VjIGhp4buHbiBow6BuaCIKIAotIzogYXBwbHkuYzo0OTgyCisjOiBhcHBseS5jOjQ5OTEKIG1zZ2lkICJtYXJrIG5ldyBmaWxlcyB3aXRoIGBnaXQgYWRkIC0taW50ZW50LXRvLWFkZGAiCiBtc2dzdHIgIsSRw6FuaCBk4bqldSBjw6FjIHThuq1wIHRpbiBt4bubaSB24bubaSDigJxnaXQgYWRkIC0taW50ZW50LXRvLWFkZOKAnSIKIAotIzogYXBwbHkuYzo0OTg0CisjOiBhcHBseS5jOjQ5OTMKIG1zZ2lkICJhcHBseSBhIHBhdGNoIHdpdGhvdXQgdG91Y2hpbmcgdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiw6FwIGThu6VuZyBt4buZdCBtaeG6v25nIHbDoSBtw6Aga2jDtG5nIMSR4buZbmcgY2jhuqFtIMSR4bq/biBjw6J5IGzDoG0gdmnhu4djIgogCi0jOiBhcHBseS5jOjQ5ODYKKyM6IGFwcGx5LmM6NDk5NQogbXNnaWQgImFjY2VwdCBhIHBhdGNoIHRoYXQgdG91Y2hlcyBvdXRzaWRlIHRoZSB3b3JraW5nIGFyZWEiCiBtc2dzdHIgImNo4bqlcCBuaOG6rW4gbeG7mXQgbWnhur9uZyB2w6EgbcOgIGtow7RuZyDEkeG7mW5nIGNo4bqhbSDEkeG6v24gY8OieSBsw6BtIHZp4buHYyIKIAotIzogYXBwbHkuYzo0OTg5CisjOiBhcHBseS5jOjQ5OTgKIG1zZ2lkICJhbHNvIGFwcGx5IHRoZSBwYXRjaCAodXNlIHdpdGggLS1zdGF0Ly0tc3VtbWFyeS8tLWNoZWNrKSIKIG1zZ3N0ciAiIgogIsSR4buTbmcgdGjhu51pIMOhcCBk4bulbmcgbWnhur9uZyB2w6EgKGTDuW5nIHbhu5tpIHTDuXkgY2jhu41uIC0tc3RhdC8tLXN1bW1hcnkvLS1jaGVjaykiCiAKLSM6IGFwcGx5LmM6NDk5MQorIzogYXBwbHkuYzo1MDAwCiBtc2dpZCAiYXR0ZW1wdCB0aHJlZS13YXkgbWVyZ2UgaWYgYSBwYXRjaCBkb2VzIG5vdCBhcHBseSIKIG1zZ3N0ciAidGjhu60gaMOyYSB0cuG7mW4ga2nhu4N1IHRocmVlLXdheSBu4bq/dSB2aeG7h2MgdsOhIGtow7RuZyB0aOG7gyB0aOG7sWMgaGnhu4duIMSRxrDhu6NjIgogCi0jOiBhcHBseS5jOjQ5OTMKKyM6IGFwcGx5LmM6NTAwMgogbXNnaWQgImJ1aWxkIGEgdGVtcG9yYXJ5IGluZGV4IGJhc2VkIG9uIGVtYmVkZGVkIGluZGV4IGluZm9ybWF0aW9uIgogbXNnc3RyICIiCiAieMOieSBk4buxbmcgYuG6o25nIG3hu6VjIGzhu6VjIHThuqFtIHRo4budaSB0csOqbiBjxqEgc+G7nyB0aMO0bmcgdGluIGLhuqNuZyBt4bulYyBs4bulYyDEkcaw4bujYyBuaMO6bmciCiAKLSM6IGFwcGx5LmM6NDk5NiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjMKKyM6IGFwcGx5LmM6NTAwNSBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTczIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjQKIG1zZ2lkICJwYXRocyBhcmUgc2VwYXJhdGVkIHdpdGggTlVMIGNoYXJhY3RlciIKIG1zZ3N0ciAiY8OhYyDEkcaw4budbmcgZOG6q24gYuG7iyBuZ8SDbiBjw6FjaCBi4bufaSBrw70gdOG7sSBOVUxMIgogCi0jOiBhcHBseS5jOjQ5OTgKKyM6IGFwcGx5LmM6NTAwNwogbXNnaWQgImVuc3VyZSBhdCBsZWFzdCA8bj4gbGluZXMgb2YgY29udGV4dCBtYXRjaCIKLW1zZ3N0ciAixJHhuqNtIGLhuqNvIHLhurFuZyBjw7Mgw610IG5o4bqldCA8bj4gZMOybmcgbuG7mWkgZHVuZyBraOG7m3AiCittc2dzdHIgIsSR4bqjbSBi4bqjbyBy4bqxbmcgY8OzIMOtdCBuaOG6pXQgPG4+IGTDsm5nIG5n4buvIGPhuqNuaCBraOG7m3AiCiAKLSM6IGFwcGx5LmM6NDk5OSBidWlsdGluL2FtLmM6MjE5NyBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk3Ci0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk5IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAxCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTIgYnVpbHRpbi9yZWJhc2UuYzo4NTcKKyM6IGFwcGx5LmM6NTAwOCBidWlsdGluL2FtLmM6MjIzOSBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk4CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMCBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU3IGJ1aWx0aW4vcmViYXNlLmM6MTUwOAogbXNnaWQgImFjdGlvbiIKIG1zZ3N0ciAiaMOgbmggxJHhu5luZyIKIAotIzogYXBwbHkuYzo1MDAwCisjOiBhcHBseS5jOjUwMDkKIG1zZ2lkICJkZXRlY3QgbmV3IG9yIG1vZGlmaWVkIGxpbmVzIHRoYXQgaGF2ZSB3aGl0ZXNwYWNlIGVycm9ycyIKIG1zZ3N0ciAidMOsbSB0aOG6pXkgbeG7mXQgZMOybmcgbeG7m2kgaG/hurdjIGLhu4sgc+G7rWEgxJHhu5VpIG3DoCBuw7MgY8OzIGzhu5dpIGRvIGtob+G6o25nIHRy4bqvbmciCiAKLSM6IGFwcGx5LmM6NTAwMyBhcHBseS5jOjUwMDYKKyM6IGFwcGx5LmM6NTAxMiBhcHBseS5jOjUwMTUKIG1zZ2lkICJpZ25vcmUgY2hhbmdlcyBpbiB3aGl0ZXNwYWNlIHdoZW4gZmluZGluZyBjb250ZXh0IgotbXNnc3RyICJs4budIMSRaSBz4buxIHRoYXkgxJHhu5VpIGRvIGtob+G6o25nIHRy4bqvbmcgZ8OieSByYSBraGkgcXXDqXQgbuG7mWkgZHVuZyIKK21zZ3N0ciAibOG7nSDEkWkgc+G7sSB0aGF5IMSR4buVaSBkbyBraG/huqNuZyB0cuG6r25nIGfDonkgcmEga2hpIHTDrG0gbmfhu68gY+G6o25oIgogCi0jOiBhcHBseS5jOjUwMDkKKyM6IGFwcGx5LmM6NTAxOAogbXNnaWQgImFwcGx5IHRoZSBwYXRjaCBpbiByZXZlcnNlIgogbXNnc3RyICLDoXAgZOG7pW5nIG1p4bq/bmcgdsOhIHRoZW8gY2hp4buBdSBuZ8aw4bujYyIKIAotIzogYXBwbHkuYzo1MDExCisjOiBhcHBseS5jOjUwMjAKIG1zZ2lkICJkb24ndCBleHBlY3QgYXQgbGVhc3Qgb25lIGxpbmUgb2YgY29udGV4dCIKLW1zZ3N0ciAixJHhu6tuZyBoeSB24buNbmcgY8OzIMOtdCBuaOG6pXQgbeG7mXQgZMOybmcgbuG7mWkgZHVuZyIKK21zZ3N0ciAixJHhu6tuZyBoeSB24buNbmcgY8OzIMOtdCBuaOG6pXQgbeG7mXQgZMOybmcgbmfhu68gY+G6o25oIgogCi0jOiBhcHBseS5jOjUwMTMKKyM6IGFwcGx5LmM6NTAyMgogbXNnaWQgImxlYXZlIHRoZSByZWplY3RlZCBodW5rcyBpbiBjb3JyZXNwb25kaW5nICoucmVqIGZpbGVzIgogbXNnc3RyICLEkeG7gyBs4bqhaSBraOG7kWkgZOG7ryBsaeG7h3UgYuG7iyB04burIGNo4buRaSB0cm9uZyBjw6FjIHThuq1wIHRpbiAqLnJlaiB0xrDGoW5nIOG7qW5nIgogCi0jOiBhcHBseS5jOjUwMTUKKyM6IGFwcGx5LmM6NTAyNAogbXNnaWQgImFsbG93IG92ZXJsYXBwaW5nIGh1bmtzIgogbXNnc3RyICJjaG8gcGjDqXAgY2jhu5NuZyBraOG7kWkgbmjhu5siCiAKLSM6IGFwcGx5LmM6NTAxNiBidWlsdGluL2FkZC5jOjI5MCBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjIxCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMDkgYnVpbHRpbi9jb3VudC1vYmplY3RzLmM6OTggYnVpbHRpbi9mc2NrLmM6Njk4Ci0jOiBidWlsdGluL2xvZy5jOjIwMjMgYnVpbHRpbi9tdi5jOjEyMiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNwotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTU3CisjOiBhcHBseS5jOjUwMjUgYnVpbHRpbi9hZGQuYzozMjMgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyMgorIzogYnVpbHRpbi9jb21taXQuYzoxMzYwIGJ1aWx0aW4vY291bnQtb2JqZWN0cy5jOjk4IGJ1aWx0aW4vZnNjay5jOjc3NAorIzogYnVpbHRpbi9sb2cuYzoyMTY2IGJ1aWx0aW4vbXYuYzoxMjMgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjgKIG1zZ2lkICJiZSB2ZXJib3NlIgogbXNnc3RyICJjaGkgdGnhur90IgogCi0jOiBhcHBseS5jOjUwMTgKKyM6IGFwcGx5LmM6NTAyNwogbXNnaWQgInRvbGVyYXRlIGluY29ycmVjdGx5IGRldGVjdGVkIG1pc3NpbmcgbmV3LWxpbmUgYXQgdGhlIGVuZCBvZiBmaWxlIgogbXNnc3RyICIiCiAixJHDoyBkw7IgdMOsbSB0aOG6pXkgZHVuZyBzYWkga2jDtG5nIGNow61uaCB4w6FjIHRoaeG6v3UgZMOybmcgbeG7m2kgdOG6oWkgY3Xhu5FpIHThuq1wIHRpbiIKIAotIzogYXBwbHkuYzo1MDIxCisjOiBhcHBseS5jOjUwMzAKIG1zZ2lkICJkbyBub3QgdHJ1c3QgdGhlIGxpbmUgY291bnRzIGluIHRoZSBodW5rIGhlYWRlcnMiCiBtc2dzdHIgImtow7RuZyB0aW4gc+G7kSBsxrDhu6NuZyBkw7JuZyB0cm9uZyBwaOG6p24gxJHhuqd1IGto4buRaSBk4buvIGxp4buHdSIKIAotIzogYXBwbHkuYzo1MDIzIGJ1aWx0aW4vYW0uYzoyMjA2CisjOiBhcHBseS5jOjUwMzIgYnVpbHRpbi9hbS5jOjIyNDgKIG1zZ2lkICJyb290IgogbXNnc3RyICJn4buRYyIKIAotIzogYXBwbHkuYzo1MDI0CisjOiBhcHBseS5jOjUwMzMKIG1zZ2lkICJwcmVwZW5kIDxyb290PiB0byBhbGwgZmlsZW5hbWVzIgogbXNnc3RyICJ0cmVvIHRow6ptIDxyb290PiB2w6BvIHThuqV0IGPhuqMgY8OhYyB0w6puIHThuq1wIHRpbiIKIAogIzogYXJjaGl2ZS5jOjE0CiBtc2dpZCAiZ2l0IGFyY2hpdmUgWzxvcHRpb25zPl0gPHRyZWUtaXNoPiBbPHBhdGg+Li4uXSIKLW1zZ3N0ciAiZ2l0IGFyY2hpdmUgWzxjw6FjLXTDuXktY2jhu41uPl0gPHRyZWUtaXNoPiBbPMSRxrDhu51uZy1k4bqrbj7igKZdIgorbXNnc3RyICJnaXQgYXJjaGl2ZSBbPGPDoWMgdMO5eSBjaOG7jW4+XSA8dHJlZS1pc2g+IFs8L8SRxrDhu51uZy9k4bqrbj7igKZdIgogCiAjOiBhcmNoaXZlLmM6MTUKIG1zZ2lkICJnaXQgYXJjaGl2ZSAtLWxpc3QiCkBAIC03NTgsMTU1ICsxNDUzLDE3NSBAQAogbXNnaWQgIiIKICJnaXQgYXJjaGl2ZSAtLXJlbW90ZSA8cmVwbz4gWy0tZXhlYyA8Y21kPl0gWzxvcHRpb25zPl0gPHRyZWUtaXNoPiBbPHBhdGg+Li4uXSIKIG1zZ3N0ciAiIgotImdpdCBhcmNoaXZlIC0tcmVtb3RlIDxraG8+IFstLWV4ZWMgPGzhu4duaD5dIFs8Y8OhYy10w7l5LWNo4buNbj5dIDx0cmVlLWlzaD4gIgotIls8xJHGsOG7nW5nLWThuqtuPuKApl0iCisiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPGtobz4gWy0tZXhlYyA8bOG7h25oPl0gWzxjw6FjIHTDuXkgY2jhu41uPl0gPHRyZWUtaXNoPiBbPC8iCisixJHGsOG7nW5nL2ThuqtuPuKApl0iCiAKICM6IGFyY2hpdmUuYzoxNwogbXNnaWQgImdpdCBhcmNoaXZlIC0tcmVtb3RlIDxyZXBvPiBbLS1leGVjIDxjbWQ+XSAtLWxpc3QiCiBtc2dzdHIgImdpdCBhcmNoaXZlIC0tcmVtb3RlIDxraG8+IFstLWV4ZWMgPGzhu4duaD5dIC0tbGlzdCIKIAotIzogYXJjaGl2ZS5jOjM3MCBidWlsdGluL2FkZC5jOjE3NiBidWlsdGluL2FkZC5jOjUxNCBidWlsdGluL3JtLmM6Mjk4CisjOiBhcmNoaXZlLmM6MzcyIGJ1aWx0aW4vYWRkLmM6MTgxIGJ1aWx0aW4vYWRkLmM6NTg4IGJ1aWx0aW4vcm0uYzozMTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlcyIKIG1zZ3N0ciAixJHhurdjIHThuqMgxJHGsOG7nW5nIGThuqtuIOKAnCVz4oCdIGtow7RuZyBraOG7m3AgduG7m2kgYuG6pXQga+G7syB04bqtcCB0aW4gbsOgbyIKIAotIzogYXJjaGl2ZS5jOjQ1MworIzogYXJjaGl2ZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBzdWNoIHJlZjogJS4qcyIKK21zZ3N0ciAia2jDtG5nIGPDsyB0aGFtIGNoaeG6v3UgbsOgbyBuaMawIHRo4bq/OiAlLipzIgorCisjOiBhcmNoaXZlLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAlcyIKK21zZ3N0ciAia2jDtG5nIHBo4bqjaSBsw6AgdMOqbiDEkeG7kWkgdMaw4bujbmcgaOG7o3AgbOG7hzog4oCcJXPigJ0iCisKKyM6IGFyY2hpdmUuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdHJlZSBvYmplY3Q6ICVzIgorbXNnc3RyICJraMO0bmcgcGjhuqNpIGzDoCDEkeG7kWkgdMaw4bujbmcgY8OieTog4oCcJXPigJ0iCisKKyM6IGFyY2hpdmUuYzo0MjYKK21zZ2lkICJjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IGlzIHVudHJhY2tlZCIKK21zZ3N0ciAidGjGsCBt4bulYyBsw6BtIHZp4buHYyBoaeG7h24gaMOgbmggY2jGsGEgxJHGsOG7o2MgdGhlbyBkw7VpIgorCisjOiBhcmNoaXZlLmM6NDU3CiBtc2dpZCAiZm10IgogbXNnc3RyICLEkeG7i25oX2ThuqFuZyIKIAotIzogYXJjaGl2ZS5jOjQ1MworIzogYXJjaGl2ZS5jOjQ1NwogbXNnaWQgImFyY2hpdmUgZm9ybWF0IgogbXNnc3RyICLEkeG7i25oIGThuqFuZyBsxrB1IHRy4buvIgogCi0jOiBhcmNoaXZlLmM6NDU0IGJ1aWx0aW4vbG9nLmM6MTUzNgorIzogYXJjaGl2ZS5jOjQ1OCBidWlsdGluL2xvZy5jOjE2NTMKIG1zZ2lkICJwcmVmaXgiCiBtc2dzdHIgInRp4buBbl904buRIgogCi0jOiBhcmNoaXZlLmM6NDU1CisjOiBhcmNoaXZlLmM6NDU5CiBtc2dpZCAicHJlcGVuZCBwcmVmaXggdG8gZWFjaCBwYXRobmFtZSBpbiB0aGUgYXJjaGl2ZSIKIG1zZ3N0ciAibuG7kWkgdGjDqm0gdGnhu4FuIHThu5EgdsOgbyB04burbmcgxJHGsOG7nW5nIGThuqtuIHThuq1wIHRpbiB0cm9uZyBraG8gbMawdSIKIAotIzogYXJjaGl2ZS5jOjQ1NiBidWlsdGluL2JsYW1lLmM6ODIwIGJ1aWx0aW4vYmxhbWUuYzo4MjEgYnVpbHRpbi9jb25maWcuYzoxMjkKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDEzIGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDE1IGJ1aWx0aW4vZ3JlcC5jOjg4NAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNCBidWlsdGluL2xzLWZpbGVzLmM6NTU5IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjIKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0MTIgYnVpbHRpbi9ub3Rlcy5jOjU3NSBidWlsdGluL3JlYWQtdHJlZS5jOjEyMgotIzogcGFyc2Utb3B0aW9ucy5oOjE2MgorIzogYXJjaGl2ZS5jOjQ2MCBidWlsdGluL2JsYW1lLmM6ODYxIGJ1aWx0aW4vYmxhbWUuYzo4NjUgYnVpbHRpbi9ibGFtZS5jOjg2NgorIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExNyBidWlsdGluL2NvbmZpZy5jOjEzMCBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2MgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjQgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjggYnVpbHRpbi9ncmVwLmM6ODg3CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA1IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjAgYnVpbHRpbi9scy1maWxlcy5jOjU2MworIzogYnVpbHRpbi9ub3Rlcy5jOjQxMiBidWlsdGluL25vdGVzLmM6NTc4IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTIzCisjOiBwYXJzZS1vcHRpb25zLmg6MTkwCiBtc2dpZCAiZmlsZSIKIG1zZ3N0ciAidOG6rXBfdGluIgogCi0jOiBhcmNoaXZlLmM6NDU3IGJ1aWx0aW4vYXJjaGl2ZS5jOjg5CisjOiBhcmNoaXZlLmM6NDYxIGJ1aWx0aW4vYXJjaGl2ZS5jOjkwCiBtc2dpZCAid3JpdGUgdGhlIGFyY2hpdmUgdG8gdGhpcyBmaWxlIgogbXNnc3RyICJnaGkga2hvIGzGsHUgdsOgbyB04bqtcCB0aW4gbsOgeSIKIAotIzogYXJjaGl2ZS5jOjQ1OQorIzogYXJjaGl2ZS5jOjQ2MwogbXNnaWQgInJlYWQgLmdpdGF0dHJpYnV0ZXMgaW4gd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIsSR4buNYyAuZ2l0YXR0cmlidXRlcyB0cm9uZyB0aMawIG3hu6VjIGzDoG0gdmnhu4djIgogCi0jOiBhcmNoaXZlLmM6NDYwCisjOiBhcmNoaXZlLmM6NDY0CiBtc2dpZCAicmVwb3J0IGFyY2hpdmVkIGZpbGVzIG9uIHN0ZGVyciIKIG1zZ3N0ciAibGnhu4d0IGvDqiBjw6FjIHThuq1wIHRpbiDEkcaw4bujYyBsxrB1IHRy4buvIHbDoG8gc3RkZXJyICjEkeG6p3UgcmEgbOG7l2kgdGnDqnUgY2h14bqpbikiCiAKLSM6IGFyY2hpdmUuYzo0NjEKKyM6IGFyY2hpdmUuYzo0NjUKIG1zZ2lkICJzdG9yZSBvbmx5IgogbXNnc3RyICJjaOG7iSBsxrB1IChraMO0bmcgbsOpbikiCiAKLSM6IGFyY2hpdmUuYzo0NjIKKyM6IGFyY2hpdmUuYzo0NjYKIG1zZ2lkICJjb21wcmVzcyBmYXN0ZXIiCiBtc2dzdHIgIm7DqW4gbmhhbmggaMahbiIKIAotIzogYXJjaGl2ZS5jOjQ3MAorIzogYXJjaGl2ZS5jOjQ3NAogbXNnaWQgImNvbXByZXNzIGJldHRlciIKIG1zZ3N0ciAibsOpbiBuaOG7jyBoxqFuIgogCi0jOiBhcmNoaXZlLmM6NDczCisjOiBhcmNoaXZlLmM6NDc3CiBtc2dpZCAibGlzdCBzdXBwb3J0ZWQgYXJjaGl2ZSBmb3JtYXRzIgogbXNnc3RyICJsaeG7h3Qga8OqIGPDoWMga2nhu4N1IG7DqW4gxJHGsOG7o2MgaOG7lyB0cuG7oyIKIAotIzogYXJjaGl2ZS5jOjQ3NSBidWlsdGluL2FyY2hpdmUuYzo5MCBidWlsdGluL2Nsb25lLmM6MTExIGJ1aWx0aW4vY2xvbmUuYzoxMTQKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU1CisjOiBhcmNoaXZlLmM6NDc5IGJ1aWx0aW4vYXJjaGl2ZS5jOjkxIGJ1aWx0aW4vY2xvbmUuYzoxMTMgYnVpbHRpbi9jbG9uZS5jOjExNgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTEKIG1zZ2lkICJyZXBvIgogbXNnc3RyICJraG8iCiAKLSM6IGFyY2hpdmUuYzo0NzYgYnVpbHRpbi9hcmNoaXZlLmM6OTEKKyM6IGFyY2hpdmUuYzo0ODAgYnVpbHRpbi9hcmNoaXZlLmM6OTIKIG1zZ2lkICJyZXRyaWV2ZSB0aGUgYXJjaGl2ZSBmcm9tIHJlbW90ZSByZXBvc2l0b3J5IDxyZXBvPiIKIG1zZ3N0ciAibmjhuq1uIGtobyBuw6luIHThu6sga2hvIGNo4bupYSA8a2hvPiB0csOqbiBtw6F5IGNo4bunIgogCi0jOiBhcmNoaXZlLmM6NDc3IGJ1aWx0aW4vYXJjaGl2ZS5jOjkyIGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTQKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0OTYKKyM6IGFyY2hpdmUuYzo0ODEgYnVpbHRpbi9hcmNoaXZlLmM6OTMgYnVpbHRpbi9kaWZmdG9vbC5jOjcxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQ5OAogbXNnaWQgImNvbW1hbmQiCiBtc2dzdHIgImzhu4duaCIKIAotIzogYXJjaGl2ZS5jOjQ3OCBidWlsdGluL2FyY2hpdmUuYzo5MworIzogYXJjaGl2ZS5jOjQ4MiBidWlsdGluL2FyY2hpdmUuYzo5NAogbXNnaWQgInBhdGggdG8gdGhlIHJlbW90ZSBnaXQtdXBsb2FkLWFyY2hpdmUgY29tbWFuZCIKIG1zZ3N0ciAixJHGsOG7nW5nIGThuqtuIMSR4bq/biBs4buHbmggZ2l0LXVwbG9hZC1wYWNrIHRyw6puIG3DoXkgY2jhu6ciCiAKLSM6IGFyY2hpdmUuYzo0ODUKKyM6IGFyY2hpdmUuYzo0ODkKIG1zZ2lkICJVbmV4cGVjdGVkIG9wdGlvbiAtLXJlbW90ZSIKLW1zZ3N0ciAiR+G6t3AgdMO5eSBjaOG7jW4gLS1yZW1vdGUga2jDtG5nIGPhuqduIgorbXNnc3RyICJH4bq3cCB0w7l5IGNo4buNbiBraMO0bmcgY+G6p24gLS1yZW1vdGUiCiAKLSM6IGFyY2hpdmUuYzo0ODcKKyM6IGFyY2hpdmUuYzo0OTEKIG1zZ2lkICJPcHRpb24gLS1leGVjIGNhbiBvbmx5IGJlIHVzZWQgdG9nZXRoZXIgd2l0aCAtLXJlbW90ZSIKIG1zZ3N0ciAiVMO5eSBjaOG7jW4gLS1leGVjIGNo4buJIGPDsyB0aOG7gyDEkcaw4bujYyBkw7luZyBjw7luZyB24bubaSAtLXJlbW90ZSIKIAotIzogYXJjaGl2ZS5jOjQ4OQorIzogYXJjaGl2ZS5jOjQ5MwogbXNnaWQgIlVuZXhwZWN0ZWQgb3B0aW9uIC0tb3V0cHV0IgogbXNnc3RyICJH4bq3cCB0w7l5IGNo4buNbiBraMO0bmcgY+G6p24gLS1vdXRwdXQiCiAKLSM6IGFyY2hpdmUuYzo1MTEKKyM6IGFyY2hpdmUuYzo1MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biBhcmNoaXZlIGZvcm1hdCAnJXMnIgogbXNnc3RyICJLaMO0bmcgaGnhu4N1IMSR4buLbmggZOG6oW5nIOKAnCVz4oCdIgogCi0jOiBhcmNoaXZlLmM6NTE4CisjOiBhcmNoaXZlLmM6NTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFyZ3VtZW50IG5vdCBzdXBwb3J0ZWQgZm9yIGZvcm1hdCAnJXMnOiAtJWQiCiBtc2dzdHIgIlRoYW0gc+G7kSBraMO0bmcgxJHGsOG7o2MgaOG7lyB0cuG7oyBjaG8gxJHhu4tuaCBk4bqhbmcg4oCcJXPigJ06IC0lZCIKIAotIzogYXJjaGl2ZS10YXIuYzoxMjUgYXJjaGl2ZS16aXAuYzozNDUKKyM6IGFyY2hpdmUtdGFyLmM6MTI1IGFyY2hpdmUtemlwLmM6MzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdHJlYW0gYmxvYiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHN0cmVhbSBibG9iIOKAnCVz4oCdIgogCi0jOiBhcmNoaXZlLXRhci5jOjI2MCBhcmNoaXZlLXppcC5jOjM2MworIzogYXJjaGl2ZS10YXIuYzoyNjYgYXJjaGl2ZS16aXAuYzozNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5zdXBwb3J0ZWQgZmlsZSBtb2RlOiAwJW8gKFNIQTE6ICVzKSIKIG1zZ3N0ciAiY2jhur8gxJHhu5kgdOG6rXAgdGluIGzhu6VjIGtow7RuZyDEkcaw4bujYyBo4buXIHRy4bujOiAwJW8gKFNIQTE6ICVzKSIKIAotIzogYXJjaGl2ZS10YXIuYzoyODcgYXJjaGl2ZS16aXAuYzozNTMKKyM6IGFyY2hpdmUtdGFyLmM6MjkzIGFyY2hpdmUtemlwLmM6MzU5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jICVzIgogCi0jOiBhcmNoaXZlLXRhci5jOjQ1OAorIzogYXJjaGl2ZS10YXIuYzo0NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHN0YXJ0ICclcycgZmlsdGVyIgogbXNnc3RyICJraMO0bmcgdGjhu4MgYuG6r3QgxJHhuqd1IGLhu5kgbOG7jWMg4oCcJXPigJ0iCiAKLSM6IGFyY2hpdmUtdGFyLmM6NDYxCisjOiBhcmNoaXZlLXRhci5jOjQ2OAogbXNnaWQgInVuYWJsZSB0byByZWRpcmVjdCBkZXNjcmlwdG9yIgogbXNnc3RyICJraMO0bmcgdGjhu4MgY2h1eeG7g24gaMaw4bubbmcgbcO0IHThuqMiCiAKLSM6IGFyY2hpdmUtdGFyLmM6NDY4CisjOiBhcmNoaXZlLXRhci5jOjQ3NQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGZpbHRlciByZXBvcnRlZCBlcnJvciIKIG1zZ3N0ciAiYuG7mSBs4buNYyDigJwlc+KAnSDEkcOjIGLDoW8gY8OhbyBs4buXaSIKIAotIzogYXJjaGl2ZS16aXAuYzozMTQKKyM6IGFyY2hpdmUtemlwLmM6MzE5CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggaXMgbm90IHZhbGlkIFVURi04OiAlcyIKIG1zZ3N0ciAixJHGsOG7nW5nIGThuqtuIGtow7RuZyBo4bujcCBs4buHIFVURi04OiAlcyIKIAotIzogYXJjaGl2ZS16aXAuYzozMTgKKyM6IGFyY2hpdmUtemlwLmM6MzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggdG9vIGxvbmcgKCVkIGNoYXJzLCBTSEExOiAlcyk6ICVzIgogbXNnc3RyICLEkcaw4budbmcgZOG6q24gcXXDoSBkw6BpICglZCBrw70gdOG7sSwgU0hBMTogJXMpOiAlcyIKIAotIzogYXJjaGl2ZS16aXAuYzo0NzQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjcKKyM6IGFyY2hpdmUtemlwLmM6NDgwIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjMxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlZmxhdGUgZXJyb3IgKCVkKSIKIG1zZ3N0ciAibOG7l2kgZ2nhuqNpIG7DqW4gKCVkKSIKIAotIzogYXJjaGl2ZS16aXAuYzo2MDkKKyM6IGFyY2hpdmUtemlwLmM6NjE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRpbWVzdGFtcCB0b28gbGFyZ2UgZm9yIHRoaXMgc3lzdGVtOiAlPFBSSXVNQVg+IgogbXNnc3RyICJk4bqldSB24bq/dCB0aOG7nWkgZ2lhbiBsw6AgcXXDoSBs4bubbiBjaG8gaOG7hyB0aOG7kW5nIG7DoHk6ICU8UFJJdU1BWD4iCkBAIC05MTYsNiArMTYzMSwxMSBAQAogbXNnaWQgIiUuKnMgaXMgbm90IGEgdmFsaWQgYXR0cmlidXRlIG5hbWUiCiBtc2dzdHIgIiUuKnMga2jDtG5nIHBo4bqjaSB0w6puIHRodeG7mWMgdMOtbmggaOG7o3AgbOG7hyIKIAorIzogYXR0ci5jOjM2OQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBub3QgYWxsb3dlZDogJXM6JWQiCittc2dzdHIgIiVzIGtow7RuZyDEkcaw4bujYyBwaMOpcDogJXM6JWQiCisKICM6IGF0dHIuYzo0MDkKIG1zZ2lkICIiCiAiTmVnYXRpdmUgcGF0dGVybnMgYXJlIGlnbm9yZWQgaW4gZ2l0IGF0dHJpYnV0ZXNcbiIKQEAgLTkyNywxOSArMTY0NywxOSBAQAogIzogYmlzZWN0LmM6NDY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZGx5IHF1b3RlZCBjb250ZW50IGluIGZpbGUgJyVzJzogJXMiCi1tc2dzdHIgIm7hu5lpIGR1bmcgxJHGsOG7o2MgdHLDrWNoIGThuqtuIHNhaSB04bqtcCB0aW4g4oCcJXPigJ06ICVzIgorbXNnc3RyICJO4buZaSBkdW5nIMSRxrDhu6NjIHRyw61jaCBk4bqrbiBzYWkgdHJvbmcgdOG6rXAgdGluIOKAnCVz4oCdOiAlcyIKIAotIzogYmlzZWN0LmM6Njc2CisjOiBiaXNlY3QuYzo2NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiV2UgY2Fubm90IGJpc2VjdCBtb3JlIVxuIgogbXNnc3RyICJDaMO6bmcgdMO0aSBraMO0bmcgYmlzZWN0IHRow6ptIG7hu69hIVxuIgogCi0jOiBiaXNlY3QuYzo3MzAKKyM6IGJpc2VjdC5jOjc0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCBjb21taXQgbmFtZSAlcyIKIG1zZ3N0ciAiS2jDtG5nIHBo4bqjaSB0w6puIMSR4buRaSB0xrDhu6NuZyBjb21taXQgJXMgaOG7o3AgbOG7hyIKIAotIzogYmlzZWN0LmM6NzU0CisjOiBiaXNlY3QuYzo3NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBtZXJnZSBiYXNlICVzIGlzIGJhZC5cbiIKQEAgLTk0OCw3ICsxNjY4LDcgQEAKICJIw7JhIHRy4buZbiB0csOqbiAlcyBsw6Agc2FpLlxuIgogIsSQaeG7gXUgxJHDsyBjw7MgbmdoxKlhIGzDoCBs4buXaSDEkcOjIMSRxrDhu6NjIHPhu61hIGNo4buvYSBnaeG7r2EgJXMgdsOgIFslc10uXG4iCiAKLSM6IGJpc2VjdC5jOjc1OQorIzogYmlzZWN0LmM6Nzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgbWVyZ2UgYmFzZSAlcyBpcyBuZXcuXG4iCkBAIC05NTcsNyArMTY3Nyw3IEBACiAiSMOyYSB0cuG7mW4gdHLDqm4gJXMgbMOgIG3hu5tpLlxuIgogIkfhuqduIG5oxrAgY2jhuq9jIGNo4bqvbiBsw6AgY8OzIHRoYXkgxJHhu5VpIGdp4buvYSAlcyB2w6AgWyVzXS5cbiIKIAotIzogYmlzZWN0LmM6NzY0CisjOiBiaXNlY3QuYzo3ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBtZXJnZSBiYXNlICVzIGlzICVzLlxuIgpAQCAtOTY2LDcgKzE2ODYsNyBAQAogIkjDsmEgdHLhu5luIHRyw6puICVzIGzDoCAlcy5cbiIKICLEkGnhu4F1IMSRw7MgY8OzIG5naMSpYSBsw6AgbOG6p24gY2h1eeG7g24gZ2lhbyDigJwlc+KAnSDEkeG6p3UgdGnDqm4gbMOgIGdp4buvYSAlcyB2w6AgWyVzXS5cbiIKIAotIzogYmlzZWN0LmM6NzcyCisjOiBiaXNlY3QuYzo3ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlNvbWUgJXMgcmV2cyBhcmUgbm90IGFuY2VzdG9ycyBvZiB0aGUgJXMgcmV2LlxuIgpAQCAtOTc3LDcgKzE2OTcsNyBAQAogImdpdCBiaXNlY3Qga2jDtG5nIHRo4buDIGzDoG0gdmnhu4djIMSRw7puZyDEkeG6r24gdHJvbmcgdHLGsOG7nW5nIGjhu6NwIG7DoHkuXG4iCiAiTGnhu4d1IGPDsyBwaOG6o2kgYuG6oW4gbmjhuqdtIGzhuqtuIGPDoWMgxJFp4buDbSAlcyB2w6AgJXMga2jDtG5nP1xuIgogCi0jOiBiaXNlY3QuYzo3ODUKKyM6IGJpc2VjdC5jOjgwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidGhlIG1lcmdlIGJhc2UgYmV0d2VlbiAlcyBhbmQgWyVzXSBtdXN0IGJlIHNraXBwZWQuXG4iCkBAIC05ODksNDUgKzE3MDksNDUgQEAKICIlcy5cbiIKICJDaMO6bmcgdMO0aSB24bqrbiBj4bupIHRp4bq/cCB04bulYy4iCiAKLSM6IGJpc2VjdC5jOjgxOAorIzogYmlzZWN0LmM6ODQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJpc2VjdGluZzogYSBtZXJnZSBiYXNlIG11c3QgYmUgdGVzdGVkXG4iCiBtc2dzdHIgIkJpc2VjdGluZzogbuG7gW4gaMOyYSB0cuG7mW4gY+G6p24gcGjhuqNpIMSRxrDhu6NjIGtp4buDbSB0cmFcbiIKIAotIzogYmlzZWN0LmM6ODU4CisjOiBiaXNlY3QuYzo4OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSAlcyByZXZpc2lvbiBpcyBuZWVkZWQiCiBtc2dzdHIgImPhuqduIG3hu5l0IMSRaeG7g20geMOpdCBkdXnhu4d0ICVzIgogCi0jOiBiaXNlY3QuYzo4NzcgYnVpbHRpbi9ub3Rlcy5jOjE3NyBidWlsdGluL3RhZy5jOjIzNworIzogYmlzZWN0LmM6OTIwIGJ1aWx0aW4vbm90ZXMuYzoxNzcgYnVpbHRpbi90YWcuYzoyNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBmaWxlICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyB04bqtcCB0aW4g4oCcJXPigJ0iCiAKLSM6IGJpc2VjdC5jOjkyOCBidWlsdGluL21lcmdlLmM6MTM4CisjOiBiaXNlY3QuYzo5NjYgYnVpbHRpbi9tZXJnZS5jOjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBmaWxlICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgdOG6rXAgdGluIOKAnCVz4oCdIgogCi0jOiBiaXNlY3QuYzo5NTgKKyM6IGJpc2VjdC5jOjk5NwogbXNnaWQgInJlYWRpbmcgYmlzZWN0IHJlZnMgZmFpbGVkIgogbXNnc3RyICJ2aeG7h2MgxJHhu41jIHRoYW0gY2hp4bq/dSBiaXNlY3QgZ+G6t3AgbOG7l2kiCiAKLSM6IGJpc2VjdC5jOjk3NworIzogYmlzZWN0LmM6MTAxOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB3YXMgYm90aCAlcyBhbmQgJXNcbiIKIG1zZ3N0ciAiJXMgbMOgIGPhuqMgJXMgdsOgICVzXG4iCiAKLSM6IGJpc2VjdC5jOjk4NQorIzogYmlzZWN0LmM6MTAyOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gdGVzdGFibGUgY29tbWl0IGZvdW5kLlxuIgogIk1heWJlIHlvdSBzdGFydGVkIHdpdGggYmFkIHBhdGggcGFyYW1ldGVycz9cbiIKIG1zZ3N0ciAiIgotImtow7RuZyB0w6xtIHRo4bqleSBs4bqnbiBjaHV54buDbiBnaWFvIGtp4buDbSB0cmEgxJHGsOG7o2MgbsOgby5cbiIKKyJLaMO0bmcgdMOsbSB0aOG6pXkgbOG6p24gY2h1eeG7g24gZ2lhbyBraeG7g20gdHJhIMSRxrDhu6NjIG7DoG8uXG4iCiAiQ8OzIGzhur0gYuG6oW4gYuG6r3QgxJHhuqd1IHbhu5tpIGPDoWMgdGhhbSBz4buRIMSRxrDhu51uZyBk4bqrbiBzYWk/XG4iCiAKLSM6IGJpc2VjdC5jOjEwMDQKKyM6IGJpc2VjdC5jOjEwNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiKHJvdWdobHkgJWQgc3RlcCkiCiBtc2dpZF9wbHVyYWwgIihyb3VnaGx5ICVkIHN0ZXBzKSIKQEAgLTEwMzYsNTEgKzE3NTYsNTEgQEAKICMuIFRSQU5TTEFUT1JTOiB0aGUgbGFzdCAlcyB3aWxsIGJlIHJlcGxhY2VkIHdpdGggIihyb3VnaGx5ICVkCiAjLiBzdGVwcykiIHRyYW5zbGF0aW9uLgogIy4KLSM6IGJpc2VjdC5jOjEwMTAKKyM6IGJpc2VjdC5jOjEwNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmlzZWN0aW5nOiAlZCByZXZpc2lvbiBsZWZ0IHRvIHRlc3QgYWZ0ZXIgdGhpcyAlc1xuIgogbXNnaWRfcGx1cmFsICJCaXNlY3Rpbmc6ICVkIHJldmlzaW9ucyBsZWZ0IHRvIHRlc3QgYWZ0ZXIgdGhpcyAlc1xuIgogbXNnc3RyWzBdICJCaXNlY3Rpbmc6IGPDsm4gJWQgxJFp4buDbSB4w6l0IGR1eeG7h3QgxJHhu4Mga2nhu4NtIHNhdSAlcyBuw6B5XG4iCiAKLSM6IGJsYW1lLmM6MTc4NworIzogYmxhbWUuYzoyNzAwCiBtc2dpZCAiLS1jb250ZW50cyBhbmQgLS1yZXZlcnNlIGRvIG5vdCBibGVuZCB3ZWxsLiIKIG1zZ3N0ciAidMO5eSBjaOG7jW4tLWNvbnRlbnRzIHbDoCAtLXJldmVyc2Uga2jDtG5nIMSRxrDhu6NjIHRy4buZbiB2w6BvIG5oYXUuIgogCi0jOiBibGFtZS5jOjE4MDEKKyM6IGJsYW1lLmM6MjcxNAogbXNnaWQgImNhbm5vdCB1c2UgLS1jb250ZW50cyB3aXRoIGZpbmFsIGNvbW1pdCBvYmplY3QgbmFtZSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGTDuW5nIC0tY29udGVudHMgduG7m2kgdMOqbiDEkeG7kWkgdMaw4bujbmcgY2h1eeG7g24gZ2lhbyBjdeG7kWkgY8O5bmciCiAKLSM6IGJsYW1lLmM6MTgyMgorIzogYmxhbWUuYzoyNzM1CiBtc2dpZCAiLS1yZXZlcnNlIGFuZCAtLWZpcnN0LXBhcmVudCB0b2dldGhlciByZXF1aXJlIHNwZWNpZmllZCBsYXRlc3QgY29tbWl0IgogbXNnc3RyICIiCi0iLS1yZXZlcnNlIHbDoCAtLWZpcnN0LXBhcmVudCBjw7luZyBuaGF1IGPhuqduIGNo4buJIMSR4buLbmggbOG6p24gY2h1eeG7g24gZ2lhbyBjdeG7kWkiCisiY8O5bmcgc+G7rSBk4bulbmcgLS1yZXZlcnNlIHbDoCAtLWZpcnN0LXBhcmVudCBj4bqnbiBjaOG7iSDEkeG7i25oIGzhuqduIGNodXnhu4NuIGdpYW8gY3Xhu5FpIgogCi0jOiBibGFtZS5jOjE4MzEgYnVuZGxlLmM6MTYyIHJlZi1maWx0ZXIuYzoyMDQ2IHNlcXVlbmNlci5jOjE5NjMKLSM6IHNlcXVlbmNlci5jOjQwMDIgYnVpbHRpbi9jb21taXQuYzoxMDAxIGJ1aWx0aW4vbG9nLmM6Mzc3IGJ1aWx0aW4vbG9nLmM6OTMyCi0jOiBidWlsdGluL2xvZy5jOjE0MDcgYnVpbHRpbi9sb2cuYzoxNzgzIGJ1aWx0aW4vbG9nLmM6MjA3MiBidWlsdGluL21lcmdlLmM6NDA2Ci0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMzcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTUyCisjOiBibGFtZS5jOjI3NDQgYnVuZGxlLmM6MTY3IHJlZi1maWx0ZXIuYzoyMjAzIHJlbW90ZS5jOjE5NDIgc2VxdWVuY2VyLmM6MjAwNgorIzogc2VxdWVuY2VyLmM6NDM1OCBzdWJtb2R1bGUuYzo4NDcgYnVpbHRpbi9jb21taXQuYzoxMDQ1IGJ1aWx0aW4vbG9nLmM6Mzg4CisjOiBidWlsdGluL2xvZy5jOjk5MSBidWlsdGluL2xvZy5jOjE1MjAgYnVpbHRpbi9sb2cuYzoxOTI1IGJ1aWx0aW4vbG9nLmM6MjIxNQorIzogYnVpbHRpbi9tZXJnZS5jOjQxMiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkwCiAjOiBidWlsdGluL3Nob3J0bG9nLmM6MTkyCiBtc2dpZCAicmV2aXNpb24gd2FsayBzZXR1cCBmYWlsZWQiCiBtc2dzdHIgImPDoGkgxJHhurd0IHZp4buHYyBkaSBjaHV54buDbiBxdWEgY8OhYyDEkWnhu4NtIHjDqXQgZHV54buHdCBn4bq3cCBs4buXaSIKIAotIzogYmxhbWUuYzoxODQ5CisjOiBibGFtZS5jOjI3NjIKIG1zZ2lkICIiCiAiLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IHRvZ2V0aGVyIHJlcXVpcmUgcmFuZ2UgYWxvbmcgZmlyc3QtcGFyZW50IGNoYWluIgogbXNnc3RyICIiCi0iLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IGPDuW5nIG5oYXUgecOqdSBj4bqndSB2w7luZyBjw7luZyB24bubaSBjaHXhu5dpIGNoYS1t4bq5LcSR4bqndS0iCisiY8O5bmcgc+G7rSBk4bulbmcgLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IHnDqnUgY+G6p3UgdsO5bmcgY8O5bmcgduG7m2kgY2h14buXaSBjaGEtbeG6uS3EkeG6p3UtIgogInRpw6puIgogCi0jOiBibGFtZS5jOjE4NjAKKyM6IGJsYW1lLmM6Mjc3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIHBhdGggJXMgaW4gJXMiCiBtc2dzdHIgImtow7RuZyBjw7MgxJHGsOG7nW5nIGThuqtuICVzIHRyb25nIOKAnCVz4oCdIgogCi0jOiBibGFtZS5jOjE4NzEKKyM6IGJsYW1lLmM6Mjc4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBibG9iICVzIGZvciBwYXRoICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIGJsb2IgJXMgY2hvIMSRxrDhu51uZyBk4bqrbiDigJwlc+KAnSIKIAotIzogYnJhbmNoLmM6NTIKKyM6IGJyYW5jaC5jOjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTEwOTMsOTAgKzE4MTMsOTAgQEAKICJ0aMO0bmcgdGluIHRoZW8gZMO1aSBtw6F5IGNo4bunIGLhurFuZyBjw6FjaCBn4buNaSBs4buHbmhcbiIKICJcImdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMlcyVzXCIuIgogCi0jOiBicmFuY2guYzo2NgorIzogYnJhbmNoLmM6NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IHNldHRpbmcgYnJhbmNoICVzIGFzIGl0cyBvd24gdXBzdHJlYW0uIgogbXNnc3RyICJDaMawYSBjw6BpIMSR4bq3dCBuaMOhbmggJXMgbmjGsCBsw6AgdGjGsOG7o25nIG5ndeG7k24gY+G7p2EgbsOzLiIKIAotIzogYnJhbmNoLmM6OTIKKyM6IGJyYW5jaC5jOjkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgYnJhbmNoICclcycgZnJvbSAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAiIgogIk5ow6FuaCDigJwlc+KAnSBjw6BpIMSR4bq3dCDEkeG7gyB0aGVvIGTDtWkgbmjDoW5oIG3DoXkgY2jhu6cg4oCcJXPigJ0gdOG7qyDigJwlc+KAnSBi4bqxbmcgY8OhY2ggcmViYXNlLiIKIAotIzogYnJhbmNoLmM6OTMKKyM6IGJyYW5jaC5jOjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgYnJhbmNoICclcycgZnJvbSAnJXMnLiIKIG1zZ3N0ciAiTmjDoW5oIOKAnCVz4oCdIGPDoGkgxJHhurd0IMSR4buDIHRoZW8gZMO1aSBuaMOhbmggbcOheSBjaOG7pyDigJwlc+KAnSB04burIOKAnCVz4oCdLiIKIAotIzogYnJhbmNoLmM6OTcKKyM6IGJyYW5jaC5jOjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCBicmFuY2ggJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgIk5ow6FuaCDigJwlc+KAnSBjw6BpIMSR4bq3dCDEkeG7gyB0aGVvIGTDtWkgbmjDoW5oIG7hu5lpIGLhu5kg4oCcJXPigJ0gYuG6sW5nIGPDoWNoIHJlYmFzZS4iCiAKLSM6IGJyYW5jaC5jOjk4CisjOiBicmFuY2guYzo5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycuIgogbXNnc3RyICJOaMOhbmgg4oCcJXPigJ0gY8OgaSDEkeG6t3QgxJHhu4MgdGhlbyBkw7VpIG5ow6FuaCBu4buZaSBi4buZIOKAnCVz4oCdLiIKIAotIzogYnJhbmNoLmM6MTAzCisjOiBicmFuY2guYzoxMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIHJlbW90ZSByZWYgJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgIiIKICJOaMOhbmgg4oCcJXPigJ0gY8OgaSDEkeG6t3QgxJHhu4MgdGhlbyBkw7VpIHRoYW0gY2hp4bq/dSBtw6F5IGNo4bunIOKAnCVz4oCdIGLhurFuZyBjw6FjaCByZWJhc2UuIgogCi0jOiBicmFuY2guYzoxMDQKKyM6IGJyYW5jaC5jOjEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIHJlZiAnJXMnLiIKIG1zZ3N0ciAiTmjDoW5oIOKAnCVz4oCdIGPDoGkgxJHhurd0IMSR4buDIHRoZW8gZMO1aSB0aGFtIGNoaeG6v3UgbcOheSBjaOG7pyDigJwlc+KAnS4iCiAKLSM6IGJyYW5jaC5jOjEwOAorIzogYnJhbmNoLmM6MTA5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCByZWYgJyVzJyBieSByZWJhc2luZy4iCiBtc2dzdHIgIiIKICJOaMOhbmgg4oCcJXPigJ0gY8OgaSDEkeG6t3QgxJHhu4MgdGhlbyBkw7VpIHRoYW0gY2hp4bq/dSBu4buZaSBi4buZIOKAnCVz4oCdIGLhurFuZyBjw6FjaCByZWJhc2UuIgogCi0jOiBicmFuY2guYzoxMDkKKyM6IGJyYW5jaC5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgcmVmICclcycuIgogbXNnc3RyICJOaMOhbmgg4oCcJXPigJ0gY8OgaSDEkeG6t3QgxJHhu4MgdGhlbyBkw7VpIHRoYW0gY2hp4bq/dSBu4buZaSBi4buZIOKAnCVz4oCdLiIKIAotIzogYnJhbmNoLmM6MTE4CisjOiBicmFuY2guYzoxMTkKIG1zZ2lkICJVbmFibGUgdG8gd3JpdGUgdXBzdHJlYW0gYnJhbmNoIGNvbmZpZ3VyYXRpb24iCiBtc2dzdHIgIktow7RuZyB0aOG7gyBnaGkgY+G6pXUgaMOsbmggbmjDoW5oIHRoxrDhu6NuZyBuZ3Xhu5NuIgogCi0jOiBicmFuY2guYzoxNTUKKyM6IGJyYW5jaC5jOjE1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgdHJhY2tpbmc6IGFtYmlndW91cyBpbmZvcm1hdGlvbiBmb3IgcmVmICVzIgogbXNnc3RyICJLaMO0bmcgdGhlbyBkw7VpOiB0aMO0bmcgdGluIGNoxrBhIHLDtSByw6BuZyBjaG8gdGhhbSBjaGnhur91ICVzIgogCi0jOiBicmFuY2guYzoxODgKKyM6IGJyYW5jaC5jOjE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIGJyYW5jaCBuYW1lLiIKIG1zZ3N0ciAi4oCcJXPigJ0ga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgdMOqbiBuaMOhbmggaOG7o3AgbOG7hy4iCiAKLSM6IGJyYW5jaC5jOjIwNworIzogYnJhbmNoLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkEgYnJhbmNoIG5hbWVkICclcycgYWxyZWFkeSBleGlzdHMuIgogbXNnc3RyICLEkMOjIGPDsyBuaMOhbmggbWFuZyB0w6puIOKAnCVz4oCdLiIKIAotIzogYnJhbmNoLmM6MjEyCisjOiBicmFuY2guYzoyMTMKIG1zZ2lkICJDYW5ub3QgZm9yY2UgdXBkYXRlIHRoZSBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgIktow7RuZyB0aOG7gyDDqXAgYnXhu5ljIGPhuq1wIG5o4bqtdCBuaMOhbmggaGnhu4duIGjDoG5oLiIKIAotIzogYnJhbmNoLmM6MjMyCisjOiBicmFuY2guYzoyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHNldHVwIHRyYWNraW5nIGluZm9ybWF0aW9uOyBzdGFydGluZyBwb2ludCAnJXMnIGlzIG5vdCBhIGJyYW5jaC4iCiBtc2dzdHIgIiIKICJLaMO0bmcgdGjhu4MgY8OgaSDEkeG6t3QgdGjDtG5nIHRpbiB0aGVvIGTDtWk7IMSRaeG7g20gYuG6r3QgxJHhuqd1IOKAnCVz4oCdIGtow7RuZyBwaOG6o2kgbMOgIG3hu5l0ICIKICJuaMOhbmguIgogCi0jOiBicmFuY2guYzoyMzQKKyM6IGJyYW5jaC5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGUgcmVxdWVzdGVkIHVwc3RyZWFtIGJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJuaMOhbmggdGjGsOG7o25nIG5ndeG7k24gxJHDoyB5w6p1IGPhuqd1IOKAnCVz4oCdIGtow7RuZyB04buTbiB04bqhaSIKIAotIzogYnJhbmNoLmM6MjM2CisjOiBicmFuY2guYzoyMzcKIG1zZ2lkICIiCiAiXG4iCiAiSWYgeW91IGFyZSBwbGFubmluZyBvbiBiYXNpbmcgeW91ciB3b3JrIG9uIGFuIHVwc3RyZWFtXG4iCkBAIC0xMTk2LDI3ICsxOTE2LDI3IEBACiAic+G6vSB0aGVvIGTDtWkgYuG6o24gxJHhu5FpIGNoaeG6v3UgbcOheSBjaOG7pyBj4bunYSBuw7MsIGLhuqFuIGPhuqduIGTDuW5nIGzhu4duaFxuIgogIlwiZ2l0IHB1c2ggLXVcIiDEkeG7gyDEkeG6t3QgY+G6pXUgaMOsbmggdGjGsOG7o25nIG5ndeG7k24gYuG6oW4gbXXhu5FuIHB1c2guIgogCi0jOiBicmFuY2guYzoyNzkKKyM6IGJyYW5jaC5jOjI4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJyVzJy4iCiBtc2dzdHIgIktow7RuZyBwaOG6o2kgdMOqbiDEkeG7kWkgdMaw4bujbmcgaOG7o3AgbOG7hzog4oCcJXPigJ0uIgogCi0jOiBicmFuY2guYzoyOTkKKyM6IGJyYW5jaC5jOjMwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJBbWJpZ3VvdXMgb2JqZWN0IG5hbWU6ICclcycuIgogbXNnc3RyICJUw6puIMSR4buRaSB0xrDhu6NuZyBjaMawYSByw7UgcsOgbmc6IOKAnCVz4oCdLiIKIAotIzogYnJhbmNoLmM6MzA0CisjOiBicmFuY2guYzozMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgYnJhbmNoIHBvaW50OiAnJXMnLiIKIG1zZ3N0ciAiTmjDoW5oIGtow7RuZyBo4bujcCBs4buHOiDigJwlc+KAnS4iCiAKLSM6IGJyYW5jaC5jOjM1OAorIzogYnJhbmNoLmM6MzY0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxyZWFkeSBjaGVja2VkIG91dCBhdCAnJXMnIgogbXNnc3RyICLigJwlc+KAnSDEkcOjIMSRxrDhu6NjIGzhuqV5IHJhIHThuqFpIOKAnCVz4oCdIHLhu5NpIgogCi0jOiBicmFuY2guYzozODEKKyM6IGJyYW5jaC5jOjM4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJIRUFEIG9mIHdvcmtpbmcgdHJlZSAlcyBpcyBub3QgdXBkYXRlZCIKIG1zZ3N0ciAiSEVBRCBj4bunYSBjw6J5IGzDoG0gdmnhu4djICVzIGNoxrBhIMSRxrDhu6NjIGPhuq1wIG5o4bqtdCIKQEAgLTEyMzEsODQgKzE5NTEsODcgQEAKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaGVhZGVyOiAlcyVzICglZCkiCiBtc2dzdHIgInBo4bqnbiDEkeG6p3Uga2jDtG5nIMSRxrDhu6NjIHRo4burYSBuaOG6rW46ICVzJXMgKCVkKSIKIAotIzogYnVuZGxlLmM6OTAgcmVyZXJlLmM6NDgwIHJlcmVyZS5jOjY5MCBzZXF1ZW5jZXIuYzoyMTgyIHNlcXVlbmNlci5jOjI3MjIKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Nzc0CisjOiBidW5kbGUuYzo5MCByZXJlcmUuYzo0ODAgcmVyZXJlLmM6NjkwIHNlcXVlbmNlci5jOjIyNTggc2VxdWVuY2VyLmM6MzAxNgorIzogYnVpbHRpbi9jb21taXQuYzo4MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58g4oCcJXPigJ0iCiAKLSM6IGJ1bmRsZS5jOjE0MQorIzogYnVuZGxlLmM6MTQzCiBtc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyB0aGVzZSBwcmVyZXF1aXNpdGUgY29tbWl0czoiCiBtc2dzdHIgIktobyBjaOG7qWEgdGhp4bq/dSBuaOG7r25nIGzhuqduIGNodXnhu4NuIGdpYW8gdGnDqm4gcXV54bq/dCBuw6B5OiIKIAotIzogYnVuZGxlLmM6MTkyCisjOiBidW5kbGUuYzoxNDYKK21zZ2lkICJuZWVkIGEgcmVwb3NpdG9yeSB0byB2ZXJpZnkgYSBidW5kbGUiCittc2dzdHIgImPhuqduIG3hu5l0IGtobyBjaOG7qWEgxJHhu4MgdGjhuqltIHRyYSBt4buZdCBidW5kbGUiCisKKyM6IGJ1bmRsZS5jOjE5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgYnVuZGxlIGNvbnRhaW5zIHRoaXMgcmVmOiIKIG1zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSBjb250YWlucyB0aGVzZSAlZCByZWZzOiIKIG1zZ3N0clswXSAiQsOzIGThu68gbGnhu4d1IGNo4bupYSAlZCB0aGFtIGNoaeG6v3U6IgogCi0jOiBidW5kbGUuYzoxOTkKKyM6IGJ1bmRsZS5jOjIwNAogbXNnaWQgIlRoZSBidW5kbGUgcmVjb3JkcyBhIGNvbXBsZXRlIGhpc3RvcnkuIgogbXNnc3RyICJM4buHbmggYnVuZGxlIGdoaSBs4bqhaSB0b8OgbiBi4buZIGzhu4tjaCBz4butLiIKIAotIzogYnVuZGxlLmM6MjAxCisjOiBidW5kbGUuYzoyMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIGJ1bmRsZSByZXF1aXJlcyB0aGlzIHJlZjoiCiBtc2dpZF9wbHVyYWwgIlRoZSBidW5kbGUgcmVxdWlyZXMgdGhlc2UgJWQgcmVmczoiCiBtc2dzdHJbMF0gIkzhu4duaCBidW5kbGUgecOqdSBj4bqndSAlZCB0aGFtIGNoaeG6v3UgbsOgeToiCiAKLSM6IGJ1bmRsZS5jOjI2NworIzogYnVuZGxlLmM6MjczCiBtc2dpZCAidW5hYmxlIHRvIGR1cCBidW5kbGUgZGVzY3JpcHRvciIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIG5ow6JuIMSRw7RpIGLhu5kgbcO0IHThuqMgYnVuZGxlIgogCi0jOiBidW5kbGUuYzoyNzQKKyM6IGJ1bmRsZS5jOjI4MAogbXNnaWQgIkNvdWxkIG5vdCBzcGF3biBwYWNrLW9iamVjdHMiCiBtc2dzdHIgIktow7RuZyB0aOG7gyBz4bqjbiBzaW5oIMSR4buRaSB0xrDhu6NuZyBnw7NpIgogCi0jOiBidW5kbGUuYzoyODUKKyM6IGJ1bmRsZS5jOjI5MQogbXNnaWQgInBhY2stb2JqZWN0cyBkaWVkIgogbXNnc3RyICLEkeG7kWkgdMaw4bujbmcgZ8OzaSDEkcOjIGNo4bq/dCIKIAotIzogYnVuZGxlLmM6MzI3CisjOiBidW5kbGUuYzozMzMKIG1zZ2lkICJyZXYtbGlzdCBkaWVkIgogbXNnc3RyICJyZXYtbGlzdCDEkcOjIGNo4bq/dCIKIAotIzogYnVuZGxlLmM6Mzc2CisjOiBidW5kbGUuYzozODIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmICclcycgaXMgZXhjbHVkZWQgYnkgdGhlIHJldi1saXN0IG9wdGlvbnMiCiBtc2dzdHIgInRoLmNoaeG6v3Ug4oCcJXPigJ0gYuG7iyBsb+G6oWkgdHLhu6sgYuG7n2kgY8OhYyB0w7l5IGNo4buNbiByZXYtbGlzdCIKIAotIzogYnVuZGxlLmM6NDU2IGJ1aWx0aW4vbG9nLmM6MTkyIGJ1aWx0aW4vbG9nLmM6MTY4OCBidWlsdGluL3Nob3J0bG9nLmM6MzA0CisjOiBidW5kbGUuYzo0NjEgYnVpbHRpbi9sb2cuYzoyMDMgYnVpbHRpbi9sb2cuYzoxODE0IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAixJHhu5FpIHPhu5Ega2jDtG5nIMSRxrDhu6NjIHRo4burYSBuaOG6rW46ICVzIgogCi0jOiBidW5kbGUuYzo0NjQKKyM6IGJ1bmRsZS5jOjQ2OQogbXNnaWQgIlJlZnVzaW5nIHRvIGNyZWF0ZSBlbXB0eSBidW5kbGUuIgogbXNnc3RyICJU4burIGNo4buRaSB04bqhbyBt4buZdCBiw7MgZOG7ryBsaeG7h3UgdHLhu5FuZyBy4buXbmcuIgogCi0jOiBidW5kbGUuYzo0NzQKKyM6IGJ1bmRsZS5jOjQ3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY3JlYXRlICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyDigJwlc+KAnSIKIAotIzogYnVuZGxlLmM6NDk4CisjOiBidW5kbGUuYzo1MDQKIG1zZ2lkICJpbmRleC1wYWNrIGRpZWQiCiBtc2dzdHIgIm3hu6VjIGzhu6VjIGfDs2kgxJHDoyBjaOG6v3QiCiAKLSM6IGNvbG9yLmM6Mjk2CisjOiBjb2xvci5jOjMyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbG9yIHZhbHVlOiAlLipzIgogbXNnc3RyICJnacOhIHRy4buLIG3DoHUga2jDtG5nIGjhu6NwIGzhu4c6ICUuKnMiCiAKLSM6IGNvbW1pdC5jOjUwIHNlcXVlbmNlci5jOjI1MjggYnVpbHRpbi9hbS5jOjM3MCBidWlsdGluL2FtLmM6NDE0Ci0jOiBidWlsdGluL2FtLmM6MTM5MCBidWlsdGluL2FtLmM6MjAyNSBidWlsdGluL3JlcGxhY2UuYzozNzYKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ0OAorIzogY29tbWl0LmM6NTEgc2VxdWVuY2VyLmM6MjcxOSBidWlsdGluL2FtLmM6MzU5IGJ1aWx0aW4vYW0uYzo0MDMKKyM6IGJ1aWx0aW4vYW0uYzoxMzcxIGJ1aWx0aW4vYW0uYzoyMDE0IGJ1aWx0aW4vcmVwbGFjZS5jOjQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBwaMOibiB0w61jaCBjw7ogcGjDoXAgJXMiCiAKLSM6IGNvbW1pdC5jOjUyCisjOiBjb21taXQuYzo1MwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyAlcyBpcyBub3QgYSBjb21taXQhIgogbXNnc3RyICIlcyAlcyBraMO0bmcgcGjhuqNpIGzDoCBt4buZdCBs4bqnbiBjaHV54buDbiBnaWFvISIKQEAgLTEzMzMsMjggKzIwNTYsMjggQEAKICJU4bqvdCBs4budaSBuaOG6r24gbsOgeSBi4bqxbmcgY8OhY2ggY2jhuqF5XG4iCiAiXCJnaXQgY29uZmlnIGFkdmljZS5ncmFmdEZpbGVEZXByZWNhdGVkIGZhbHNlXCIiCiAKLSM6IGNvbW1pdC5jOjExMTUKKyM6IGNvbW1pdC5jOjExNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29tbWl0ICVzIGhhcyBhbiB1bnRydXN0ZWQgR1BHIHNpZ25hdHVyZSwgYWxsZWdlZGx5IGJ5ICVzLiIKIG1zZ3N0ciAiIgogIkzhuqduIGNodXnhu4NuIGdpYW8gJXMgY8OzIG3hu5l0IGNo4buvIGvDvSBHUEcga2jDtG5nIMSRw6FuZyB0aW4sIMSRxrDhu6NjIGNobyBsw6AgYuG7n2kgJXMuIgogCi0jOiBjb21taXQuYzoxMTE4CisjOiBjb21taXQuYzoxMTU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBoYXMgYSBiYWQgR1BHIHNpZ25hdHVyZSBhbGxlZ2VkbHkgYnkgJXMuIgogbXNnc3RyICJM4bqnbiBjaHV54buDbiBnaWFvICVzIGPDsyBt4buZdCBjaOG7ryBrw70gR1BHIHNhaSwgxJHGsOG7o2MgY2hvIGzDoCBi4bufaSAlcy4iCiAKLSM6IGNvbW1pdC5jOjExMjEKKyM6IGNvbW1pdC5jOjExNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29tbWl0ICVzIGRvZXMgbm90IGhhdmUgYSBHUEcgc2lnbmF0dXJlLiIKIG1zZ3N0ciAiTOG6p24gY2h1eeG7g24gZ2lhbyAlcyBraMO0bmcgY8OzIGNo4buvIGvDvSBHUEcuIgogCi0jOiBjb21taXQuYzoxMTI0CisjOiBjb21taXQuYzoxMTYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbW1pdCAlcyBoYXMgYSBnb29kIEdQRyBzaWduYXR1cmUgYnkgJXNcbiIKIG1zZ3N0ciAiTOG6p24gY2h1eeG7g24gZ2lhbyAlcyBjw7MgbeG7mXQgY2jhu68ga8O9IEdQRyB04buRdCBi4bufaSAlc1xuIgogCi0jOiBjb21taXQuYzoxMzc4CisjOiBjb21taXQuYzoxNDE3CiBtc2dpZCAiIgogIldhcm5pbmc6IGNvbW1pdCBtZXNzYWdlIGRpZCBub3QgY29uZm9ybSB0byBVVEYtOC5cbiIKICJZb3UgbWF5IHdhbnQgdG8gYW1lbmQgaXQgYWZ0ZXIgZml4aW5nIHRoZSBtZXNzYWdlLCBvciBzZXQgdGhlIGNvbmZpZ1xuIgpAQCAtMTM2NCw5NiArMjA4NywyODggQEAKICJC4bqhbiBjw7MgbOG6vSBtdeG7kW4gdHUgYuG7lSBuw7Mgc2F1IGtoaSBz4butYSBs4budaSBjaMO6IHRow61jaCwgaG/hurdjIGzDoCDEkeG6t3QgYmnhur9uXG4iCiAiY+G6pXUgaMOsbmggaTE4bi5jb21taXRlbmNvZGluZyB0aMOgbmggYuG6o25nIG3DoyBtw6AgZOG7sSDDoW4gY+G7p2EgYuG6oW4gbXXhu5FuIGTDuW5nLlxuIgogCi0jOiBjb21taXQtZ3JhcGguYzoxMDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ3JhcGggZmlsZSAlcyBpcyB0b28gc21hbGwiCi1tc2dzdHIgInThuq1wIHRpbiDEkeG7kyB0aOG7iyAlcyBxdcOhIG5o4buPIgotCi0jOiBjb21taXQtZ3JhcGguYzoxMTUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ3JhcGggc2lnbmF0dXJlICVYIGRvZXMgbm90IG1hdGNoIHNpZ25hdHVyZSAlWCIKLW1zZ3N0ciAiY2jhu68ga8O9IMSR4buTIGjhu41hICVYIGtow7RuZyBraOG7m3AgY2jhu68ga8O9ICVYIgotCiAjOiBjb21taXQtZ3JhcGguYzoxMjIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ3JhcGggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgotbXNnc3RyICJwaGnDqm4gYuG6o24gxJHhu5MgaOG7jWEgJVgga2jDtG5nIGto4bubcCBwaGnDqm4gYuG6o24gJVgiCi0KLSM6IGNvbW1pdC1ncmFwaC5jOjEyOQotIywgYy1mb3JtYXQKLW1zZ2lkICJoYXNoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKLW1zZ3N0ciAicGhpw6puIGLhuqNuIGLEg20g4oCcJVjigJ0ga2jDtG5nIGPDsyBwaGnDqm4gYuG6o24ga2jhu5twICVYIgotCi0jOiBjb21taXQtZ3JhcGguYzoxNTMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW1wcm9wZXIgY2h1bmsgb2Zmc2V0ICUwOHglMDh4IgotbXNnc3RyICJiw7kgbeG6o25oIGtow7RuZyDEkcO6bmcgY2jhu5cgJTA4eCUwOHgiCittc2dpZCAiY29tbWl0LWdyYXBoIGZpbGUgaXMgdG9vIHNtYWxsIgorbXNnc3RyICJ04bqtcCB0aW4gxJHhu5MtdGjhu4stY8OhYy1s4bqnbi1jaHV54buDbi1naWFvIHF1w6Egbmjhu48iCiAKICM6IGNvbW1pdC1ncmFwaC5jOjE4OQogIywgYy1mb3JtYXQKLW1zZ2lkICJjaHVuayBpZCAlMDh4IGFwcGVhcnMgbXVsdGlwbGUgdGltZXMiCi1tc2dzdHIgIm3DoyBt4bqjbmggJTA4eCB4deG6pXQgaGnhu4duIG5oaeG7gXUgbOG6p24iCittc2dpZCAiY29tbWl0LWdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCittc2dzdHIgImNo4buvIGvDvSDEkeG7ky10aOG7iy1jw6FjLWzhuqduLWNodXnhu4NuLWdpYW8gJVgga2jDtG5nIGto4bubcCBjaOG7ryBrw70gJVgiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjMwOAorIzogY29tbWl0LWdyYXBoLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCittc2dzdHIgInBoacOqbiBi4bqjbiDEkeG7ky10aOG7iy1jw6FjLWzhuqduLWNodXnhu4NuLWdpYW8gJVgga2jDtG5nIGto4bubcCBwaGnDqm4gYuG6o24gJVgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCittc2dzdHIgInBoacOqbiBi4bqjbiDEkeG7ky10aOG7iy1jw6FjLWzhuqduLWNodXnhu4NuLWdpYW8gJVgga2jDtG5nIGto4bubcCBwaGnDqm4gYuG6o24gJVgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIyNgorbXNnaWQgImNvbW1pdC1ncmFwaCBjaHVuayBsb29rdXAgdGFibGUgZW50cnkgbWlzc2luZzsgZmlsZSBtYXkgYmUgaW5jb21wbGV0ZSIKK21zZ3N0ciAiIgorImLhuqNuZyB0w6xtIGtp4bq/bSBt4bqjbmggxJHhu5MtdGjhu4stY8OhYy1s4bqnbi1jaHV54buDbi1naWFvIGPDsm4gdGhp4bq/dTsgdOG6rXAgdGluIGPDsyB0aOG7gyBz4bq9ICIKKyJraMO0bmcgaG/DoG4gdGhp4buHbiIKKworIzogY29tbWl0LWdyYXBoLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBpbXByb3BlciBjaHVuayBvZmZzZXQgJTA4eCUwOHgiCittc2dzdHIgImLDuSBt4bqjbmggxJHhu5MtdGjhu4stY8OhYy1s4bqnbi1jaHV54buDbi1naWFvIGtow7RuZyDEkcO6bmcgY2jhu5cgJTA4eCUwOHgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjI4MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggY2h1bmsgaWQgJTA4eCBhcHBlYXJzIG11bHRpcGxlIHRpbWVzIgorbXNnc3RyICJtw6MgbeG6o25oIMSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyAlMDh4IHh14bqldCBoaeG7h24gbmhp4buBdSBs4bqnbiIKKworIzogY29tbWl0LWdyYXBoLmM6MzQzCittc2dpZCAiY29tbWl0LWdyYXBoIGhhcyBubyBiYXNlIGdyYXBocyBjaHVuayIKK21zZ3N0ciAixJHhu5MtdGjhu4stY8OhYy1s4bqnbi1jaHV54buDbi1naWFvIGPDsyBraMO0bmcgY8OzIG3huqNuaCBjw6FjIMSR4buTIGjhu41hIGPGoSBz4bufIgorCisjOiBjb21taXQtZ3JhcGguYzozNTMKK21zZ2lkICJjb21taXQtZ3JhcGggY2hhaW4gZG9lcyBub3QgbWF0Y2giCittc2dzdHIgIm3Ds2MgeMOtY2ggxJHhu5MtdGjhu4stY8OhYy1s4bqnbi1jaHV54buDbi1naWFvIGtow7RuZyBraOG7m3AiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdC1ncmFwaCBjaGFpbjogbGluZSAnJXMnIG5vdCBhIGhhc2giCittc2dzdHIgIiIKKyJtw7NjIHjDrWNoIMSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyBraMO0bmcgaOG7o3AgbOG7hzogZMOybmcgJyVzJyBraMO0bmcgcGjhuqNpIGzDoCAiCisibeG7mXQgbcOjIGLEg20iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjQyNQorbXNnaWQgInVuYWJsZSB0byBmaW5kIGFsbCBjb21taXQtZ3JhcGggZmlsZXMiCittc2dzdHIgImtow7RuZyB0aOG7gyB0w6xtIHRo4bqleSB04bqldCBj4bqjIGPDoWMgdOG6rXAgdGluIMSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyIKKworIzogY29tbWl0LWdyYXBoLmM6NTU4IGNvbW1pdC1ncmFwaC5jOjYxOAorbXNnaWQgImludmFsaWQgY29tbWl0IHBvc2l0aW9uLiBjb21taXQtZ3JhcGggaXMgbGlrZWx5IGNvcnJ1cHQiCittc2dzdHIgIiIKKyJ24buLIHRyw60gbOG6p24gY2h1eeG7g24gZ2lhbyBraMO0bmcgaOG7o3AgbOG7hy4gxJHhu5MtdGjhu4stY8OhYy1s4bqnbi1jaHV54buDbi1naWFvIGPDsyB24bq7IG5oxrAgxJHDoyAiCisiYuG7iyBo4buPbmciCisKKyM6IGNvbW1pdC1ncmFwaC5jOjU3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZmluZCBjb21taXQgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB0w6xtIHRo4bqleSBs4bqnbiBjaHV54buDbiBnaWFvICVzIgogCi0jOiBjb21taXQtZ3JhcGguYzo2MTcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjUyCisjOiBjb21taXQtZ3JhcGguYzo4NTIgYnVpbHRpbi9hbS5jOjEyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbW1pdCAlcyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIGzhuqduIGNodXnhu4NuIGdpYW8g4oCcJXPigJ0iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwMTEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBnZXQgdHlwZSBvZiBvYmplY3QgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSBraeG7g3UgY+G7p2EgxJHhu5FpIHTGsOG7o25nIOKAnCVz4oCdIgogCi0jOiBjb21taXQtZ3JhcGguYzo2NTEKLW1zZ2lkICJBbm5vdGF0aW5nIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgotbXNnc3RyICJEaeG7hW4gZ2nhuqNpIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyB0cm9uZyDEkeG7kyB0aOG7iyBs4bqnbiBjaHV54buDbiBnaWFvIgorIzogY29tbWl0LWdyYXBoLmM6MTA0MworbXNnaWQgIkxvYWRpbmcga25vd24gY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIsSQYW5nIHThuqNpIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBjaMawYSBiaeG6v3QgdHJvbmcgxJHhu5MgdGjhu4sgbOG6p24gY2h1eeG7g24gZ2lhbyIKIAotIzogY29tbWl0LWdyYXBoLmM6NjkxCisjOiBjb21taXQtZ3JhcGguYzoxMDYwCittc2dpZCAiRXhwYW5kaW5nIHJlYWNoYWJsZSBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAiIgorIk3hu58gcuG7mW5nIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBjw7MgdGjhu4MgdGnhur9wIGPhuq1uIMSRxrDhu6NjIHRyb25nIHRyb25nIMSR4buTIHRo4buLIGzhuqduICIKKyJjaHV54buDbiBnaWFvIgorCisjOiBjb21taXQtZ3JhcGguYzoxMDc5Cittc2dpZCAiQ2xlYXJpbmcgY29tbWl0IG1hcmtzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAixJBhbmcgZOG7jW4gZOG6uXAgY8OhYyDEkcOhbmggZOG6pXUgbOG6p24gY2h1eeG7g24gZ2lhbyB0cm9uZyDEkeG7kyB0aOG7iyBs4bqnbiBjaHV54buDbiBnaWFvIgorCisjOiBjb21taXQtZ3JhcGguYzoxMDk4CiBtc2dpZCAiQ29tcHV0aW5nIGNvbW1pdCBncmFwaCBnZW5lcmF0aW9uIG51bWJlcnMiCi1tc2dzdHIgIsSQYW5nIHTDrW5oIHRvw6FuIHPhu5EgdOG6oW8gc8ahIMSR4buTIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyIKK21zZ3N0ciAixJBhbmcgdMOtbmggdG/DoW4gc+G7kSB04bqhbyDEkeG7kyB0aOG7iyBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8iCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgwMyBjb21taXQtZ3JhcGguYzo4MjYgY29tbWl0LWdyYXBoLmM6ODUyCi1tc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGgiCi1tc2dzdHIgIsSQYW5nIHTDrG0gY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIGNobyDEkeG7kyB0aOG7iyBs4bqnbiBjaHV54buDbiBnaWFvIgorIzogY29tbWl0LWdyYXBoLmM6MTE3MworIywgYy1mb3JtYXQKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrIgorbXNnaWRfcGx1cmFsICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBpbiAlZCBwYWNrcyIKK21zZ3N0clswXSAiIgorIsSQYW5nIHTDrG0gY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIGNobyDEkeG7kyB0aOG7iyBs4bqnbiBjaHV54buDbiBnaWFvIHRyb25nICVkIGfDs2kiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgxMgorIzogY29tbWl0LWdyYXBoLmM6MTE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBhZGRpbmcgcGFjayAlcyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kgdGjDqm0gZ8OzaSAlcyIKIAotIzogY29tbWl0LWdyYXBoLmM6ODE0CisjOiBjb21taXQtZ3JhcGguYzoxMTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIG9wZW5pbmcgaW5kZXggZm9yICVzIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgbeG7nyBt4bulYyBs4bulYyBjaG8g4oCcJXPigJ0iCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjg2OAorIzogY29tbWl0LWdyYXBoLmM6MTIxNAogIywgYy1mb3JtYXQKLW1zZ2lkICJ0aGUgY29tbWl0IGdyYXBoIGZvcm1hdCBjYW5ub3Qgd3JpdGUgJWQgY29tbWl0cyIKLW1zZ3N0ciAixJHhu4tuaCBk4bqhbmcgxJHhu5MgaOG7jWEgY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIGtow7RuZyB0aOG7gyBnaGkgJWQgbOG6p24gY2h1eeG7g24gZ2lhbyIKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBmcm9tICVkIHJlZiIKK21zZ2lkX3BsdXJhbCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggZnJvbSAlZCByZWZzIgorbXNnc3RyWzBdICIiCisixJBhbmcgdMOsbSBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8gY2hvIMSR4buTIHRo4buLIGzhuqduIGNodXnhu4NuIGdpYW8gdOG7qyAlZCB0aGFtIGNoaeG6v3UiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjg5NQotbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgdG8gd3JpdGUgZ3JhcGgiCi1tc2dzdHIgImPDsyBxdcOhIG5oaeG7gXUgbOG6p24gY2h1eeG7g24gZ2lhbyDEkeG7gyBnaGkgxJHhu5MgdGjhu4siCisjOiBjb21taXQtZ3JhcGguYzoxMjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tbWl0IG9iamVjdCBpZDogJXMiCittc2dzdHIgIm3DoyBz4buRIMSR4buRaSB0xrDhu6NuZyBs4bqnbiBjaHV54buDbiBnaWFvIGtow7RuZyBo4bujcCBs4buHOiAlcyIKIAotIzogY29tbWl0LWdyYXBoLmM6OTAyIG1pZHguYzo3NjkKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNDkKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBhbW9uZyBwYWNrZWQgb2JqZWN0cyIKK21zZ3N0ciAiIgorIsSQYW5nIHTDrG0gY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIGNobyDEkeG7kyB0aOG7iyBs4bqnbiBjaHV54buDbiBnaWFvIHRyb25nIHPhu5EgY8OhYyDEkeG7kWkgIgorInTGsOG7o25nIMSRw6MgxJHDs25nIGfDs2kiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNjQKK21zZ2lkICJDb3VudGluZyBkaXN0aW5jdCBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAixJBhbmcgxJHhur9tIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBraMOhYyBuaGF1IHRyb25nIMSR4buTIHRo4buLIGzhuqduIGNodXnhu4NuIGdpYW8iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyOTQKK21zZ2lkICJGaW5kaW5nIGV4dHJhIGVkZ2VzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAixJBhbmcgdMOsbSBjw6FjIGPhuqFuaCBt4bufIHThu5luZyB0cm9uZyDEkeG7kyB0aOG7iyBs4bqnbiBjaHV54buDbiBnaWFvIgorCisjOiBjb21taXQtZ3JhcGguYzoxMzQwCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGNvcnJlY3QgbnVtYmVyIG9mIGJhc2UgZ3JhcGggaWRzIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgZ2hpIHPhu5EgxJHDum5nIGPhu6dhIG3DoyDEkeG7kyBo4buNYSBjxqEgc+G7nyIKKworIzogY29tbWl0LWdyYXBoLmM6MTM3MyBtaWR4LmM6ODE0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbGVhZGluZyBkaXJlY3RvcmllcyBvZiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHThuqFvIGPDoWMgdGjGsCBt4bulYyBk4bqrbiDEkeG6p3UgY+G7p2Eg4oCcJXPigJ0iCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjEwMDIKKyM6IGNvbW1pdC1ncmFwaC5jOjEzODUgYnVpbHRpbi9pbmRleC1wYWNrLmM6MzA2IGJ1aWx0aW4vcmVwYWNrLmM6MjQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgJyVzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHThuqFvIOKAnCVz4oCdIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIldyaXRpbmcgb3V0IGNvbW1pdCBncmFwaCBpbiAlZCBwYXNzIgorbXNnaWRfcGx1cmFsICJXcml0aW5nIG91dCBjb21taXQgZ3JhcGggaW4gJWQgcGFzc2VzIgorbXNnc3RyWzBdICLEkGFuZyBnaGkgcmEgxJHhu5MgdGjhu4sgY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIHRyb25nIGzhuqduICVkIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDg2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gY29tbWl0LWdyYXBoIGNoYWluIGZpbGUiCittc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHThuq1wIHRpbiBt4bqvdCB4w61jaCDEkeG7kyB0aOG7iyBjaHV54buDbiBnaWFvIgorCisjOiBjb21taXQtZ3JhcGguYzoxNDk4Cittc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSBiYXNlIGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhu5VpIHTDqm4gdOG6rXAgdGluIMSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyIKKworIzogY29tbWl0LWdyYXBoLmM6MTUxOAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgdGVtcG9yYXJ5IGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhu5VpIHTDqm4gdOG6rXAgdGluIMSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyB04bqhbSB0aOG7nWkiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2MzEKK21zZ2lkICJTY2FubmluZyBtZXJnZWQgY29tbWl0cyIKK21zZ3N0ciAixJBhbmcgcXXDqXQgY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIMSRw6MgaMOyYSB0cuG7mW4iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkdXBsaWNhdGUgY29tbWl0IGlkICVzIgorbXNnc3RyICJn4bq3cCBtw6Mgc+G7kSB0w61jaCBs4bqnbiBjaHV54buDbiBnaWFvIGLhu4sgdHLDuW5nIGzhurdwIOKAnCVz4oCdIgorCisjOiBjb21taXQtZ3JhcGguYzoxNjY1Cittc2dpZCAiTWVyZ2luZyBjb21taXQtZ3JhcGgiCittc2dzdHIgIsSQYW5nIGjDsmEgdHLhu5luIMSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyIKKworIzogY29tbWl0LWdyYXBoLmM6MTg0NAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGUgY29tbWl0IGdyYXBoIGZvcm1hdCBjYW5ub3Qgd3JpdGUgJWQgY29tbWl0cyIKK21zZ3N0ciAixJHhu4tuaCBk4bqhbmcgxJHhu5MgaOG7jWEgY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIGtow7RuZyB0aOG7gyBnaGkgJWQgbOG6p24gY2h1eeG7g24gZ2lhbyIKKworIzogY29tbWl0LWdyYXBoLmM6MTg1NQorbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgdG8gd3JpdGUgZ3JhcGgiCittc2dzdHIgImPDsyBxdcOhIG5oaeG7gXUgbOG6p24gY2h1eeG7g24gZ2lhbyDEkeG7gyBnaGkgxJHhu5MgdGjhu4siCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NDQKIG1zZ2lkICJ0aGUgY29tbWl0LWdyYXBoIGZpbGUgaGFzIGluY29ycmVjdCBjaGVja3N1bSBhbmQgaXMgbGlrZWx5IGNvcnJ1cHQiCiBtc2dzdHIgIiIKLSJ04bqtcCB0aW4gc8ahIMSR4buTIGNodXnhu4NuIGdpYW8gY8OzIHThu5VuZyBraeG7g20ga2jDtG5nIMSRw7puZyB2w6AgY8OzIHbhursgbmjGsCBsw6AgxJHDoyBo4buPbmciCisidOG6rXAgdGluIMSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyBjw7MgdOG7lW5nIGtp4buDbSBraMO0bmcgxJHDum5nIHbDoCBjw7MgduG6uyBuaMawIGzDoCAiCisixJHDoyBo4buPbmciCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjEwNDYKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGhhcyBpbmNvcnJlY3QgT0lEIG9yZGVyOiAlcyB0aGVuICVzIgorbXNnc3RyICLEkeG7ky10aOG7iy1jw6FjLWzhuqduLWNodXnhu4NuLWdpYW8gY8OzIHRo4bupIHThu7EgT0lEIGtow7RuZyDEkcO6bmc6ICVzIHNhdSAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTk2NCBjb21taXQtZ3JhcGguYzoxOTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IGZhbm91dCB2YWx1ZTogZmFub3V0WyVkXSA9ICV1ICE9ICV1IgorbXNnc3RyICIiCisixJHhu5MtdGjhu4stY8OhYy1s4bqnbi1jaHV54buDbi1naWFvIGPDsyBnacOhIHRy4buLIGZhbm91dCBraMO0bmcgxJHDum5nOiBmYW5vdXRbJWRdID0gJXUgIT0gIgorIiV1IgorCisjOiBjb21taXQtZ3JhcGguYzoxOTcxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSBjb21taXQgJXMgZnJvbSBjb21taXQtZ3JhcGgiCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSBwaMOibiB0w61jaCBs4bqnbiBjaHV54buDbiBnaWFvIHThu6sgJXMgxJHhu5MtdGjhu4stY8OhYy1s4bqnbi1jaHV54buDbi1naWFvIgorCisjOiBjb21taXQtZ3JhcGguYzoxOTg5CiBtc2dpZCAiVmVyaWZ5aW5nIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgogbXNnc3RyICLEkGFuZyB0aOG6qW0gdHJhIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyB0cm9uZyDEkeG7kyB0aOG7iyBs4bqnbiBjaHV54buDbiBnaWFvIgogCi0jOiBjb21wYXQvb2JzdGFjay5jOjQwNSBjb21wYXQvb2JzdGFjay5jOjQwNworIzogY29tbWl0LWdyYXBoLmM6MjAwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgY29tbWl0ICVzIGZyb20gb2JqZWN0IGRhdGFiYXNlIGZvciBjb21taXQtZ3JhcGgiCittc2dzdHIgIiIKKyJn4bq3cCBs4buXaSBraGkgcGjDom4gdMOtY2ggbOG6p24gY2h1eeG7g24gZ2lhbyAlcyB04burIGPGoSBz4bufIGThu68gbGnhu4d1IMSR4buRaSB0xrDhu6NuZyBjaG8gxJHhu5MgIgorInRo4buLIGzhuqduIGNodXnhu4NuIGdpYW8iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicm9vdCB0cmVlIE9JRCBmb3IgY29tbWl0ICVzIGluIGNvbW1pdC1ncmFwaCBpcyAlcyAhPSAlcyIKK21zZ3N0ciAiIgorIk9JRCBjw6J5IGfhu5FjIGNobyBs4bqnbiBjaHV54buDbiBnaWFvICVzIHRyb25nIMSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyBsw6AgJXMgIT0gIgorIiVzIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDIwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgbGlzdCBmb3IgY29tbWl0ICVzIGlzIHRvbyBsb25nIgorbXNnc3RyICIiCisiZGFuaCBzw6FjaCBjaGEgbeG6uSDEkeG7ky10aOG7iy1jw6FjLWzhuqduLWNodXnhu4NuLWdpYW8gY2hvIGzhuqduIGNodXnhu4NuIGdpYW8gJXMgbMOgIHF1w6EgZMOgaSIKKworIzogY29tbWl0LWdyYXBoLmM6MjAyOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggcGFyZW50IGZvciAlcyBpcyAlcyAhPSAlcyIKK21zZ3N0ciAiY2hhIG3hurkgxJHhu5MtdGjhu4stY8OhYy1s4bqnbi1jaHV54buDbi1naWFvIGNobyAlcyBsw6AgJXMgIT0gJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBsaXN0IGZvciBjb21taXQgJXMgdGVybWluYXRlcyBlYXJseSIKK21zZ3N0ciAiIgorImRhbmggc8OhY2ggY2hhIG3hurkgxJHhu5MtdGjhu4stY8OhYy1s4bqnbi1jaHV54buDbi1naWFvIGNobyBs4bqnbiBjaHV54buDbiBnaWFvICVzIGLhu4sgY2jhuqVtICIKKyJk4bupdCBxdcOhIHPhu5ttIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb21taXQtZ3JhcGggaGFzIGdlbmVyYXRpb24gbnVtYmVyIHplcm8gZm9yIGNvbW1pdCAlcywgYnV0IG5vbi16ZXJvIGVsc2V3aGVyZSIKK21zZ3N0ciAiIgorIsSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyBjw7MgY29uIHPhu5Ega2jDtG5nIGzhuqduIHThuqFvIGNobyBs4bqnbiBjaHV54buDbiBnaWFvICVzLCAiCisibmjGsG5nIGtow7RuZyBwaOG6o2kgc+G7kSBraMO0bmcg4bufIGNo4buXIGtow6FjIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb21taXQtZ3JhcGggaGFzIG5vbi16ZXJvIGdlbmVyYXRpb24gbnVtYmVyIGZvciBjb21taXQgJXMsIGJ1dCB6ZXJvIGVsc2V3aGVyZSIKK21zZ3N0ciAiIgorIsSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyBjw7MgY29uIHPhu5Ega2jDtG5nIHBo4bqjaSBraMO0bmcgbOG6p24gdOG6oW8gY2hvIGzhuqduIGNodXnhu4NuICIKKyJnaWFvICVzLCBuaMawbmcgc+G7kSBraMO0bmcg4bufIGNo4buXIGtow6FjIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBnZW5lcmF0aW9uIGZvciBjb21taXQgJXMgaXMgJXUgIT0gJXUiCittc2dzdHIgInThuqFvIMSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyBjaG8gbOG6p24gY2h1eeG7g24gZ2lhbyAlcyBsw6AgJXUgIT0gJXUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0IGRhdGUgZm9yIGNvbW1pdCAlcyBpbiBjb21taXQtZ3JhcGggaXMgJTxQUkl1TUFYPiAhPSAlPFBSSXVNQVg+IgorbXNnc3RyICIiCisibmfDoHkgY2h1eeG7g24gZ2lhbyBjaG8gbOG6p24gY2h1eeG7g24gZ2lhbyAlcyB0cm9uZyDEkeG7ky10aOG7iy1jw6FjLWzhuqduLWNodXnhu4NuLWdpYW8gbMOgICIKKyIlPFBSSXVNQVg+ICE9ICU8UFJJdU1BWD4iCisKKyM6IGNvbXBhdC9vYnN0YWNrLmM6NDA2IGNvbXBhdC9vYnN0YWNrLmM6NDA4CiBtc2dpZCAibWVtb3J5IGV4aGF1c3RlZCIKIG1zZ3N0ciAiaOG6v3QgYuG7mSBuaOG7myIKIAotIzogY29uZmlnLmM6MTIzCisjOiBjb25maWcuYzoxMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4Y2VlZGVkIG1heGltdW0gaW5jbHVkZSBkZXB0aCAoJWQpIHdoaWxlIGluY2x1ZGluZ1xuIgpAQCAtMTQ2OCwyOTcgKzIzODMsMjkxIEBACiAiXHQlc1xuIgogIk5ndXnDqm4gbmjDom4gY8OzIHRo4buDIGzDoCBn4buTbSBxdeG6qW4gdsOybmcuIgogCi0jOiBjb25maWcuYzoxMzkKKyM6IGNvbmZpZy5jOjE0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZXhwYW5kIGluY2x1ZGUgcGF0aCAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4Mga2hhaSB0cmnhu4NuIMSRxrDhu51uZyBk4bqrbiDigJwlc+KAnSIKIAotIzogY29uZmlnLmM6MTUwCisjOiBjb25maWcuYzoxNTEKIG1zZ2lkICJyZWxhdGl2ZSBjb25maWcgaW5jbHVkZXMgbXVzdCBjb21lIGZyb20gZmlsZXMiCiBtc2dzdHIgImPDoWMgYmFvIGfhu5NtIGPhuqV1IGjDrG5oIGxpw6puIHF1YW4gcGjhuqNpIMSR4bq/biB04burIGPDoWMgdOG6rXAgdGluIgogCi0jOiBjb25maWcuYzoxOTAKKyM6IGNvbmZpZy5jOjE5NwogbXNnaWQgInJlbGF0aXZlIGNvbmZpZyBpbmNsdWRlIGNvbmRpdGlvbmFscyBtdXN0IGNvbWUgZnJvbSBmaWxlcyIKIG1zZ3N0ciAiY8OhYyDEkWnhu4F1IGtp4buHbiBiYW8gZ+G7k20gY+G6pXUgaMOsbmggbGnDqm4gcXVhbiBwaOG6o2kgxJHhur9uIHThu6sgY8OhYyB04bqtcCB0aW4iCiAKLSM6IGNvbmZpZy5jOjM0OAorIzogY29uZmlnLmM6Mzc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImtleSBkb2VzIG5vdCBjb250YWluIGEgc2VjdGlvbjogJXMiCiBtc2dzdHIgImtow7NhIGtow7RuZyBjaOG7qWEgbeG7mXQgcGjhuqduOiAlcyIKIAotIzogY29uZmlnLmM6MzU0CisjOiBjb25maWcuYzozODIKICMsIGMtZm9ybWF0CiBtc2dpZCAia2V5IGRvZXMgbm90IGNvbnRhaW4gdmFyaWFibGUgbmFtZTogJXMiCiBtc2dzdHIgImtow7NhIGtow7RuZyBjaOG7qWEgYuG6pXQga+G7syBt4buZdCB0w6puIGJp4bq/biBuw6BvOiAlcyIKIAotIzogY29uZmlnLmM6Mzc4IHNlcXVlbmNlci5jOjIyOTYKKyM6IGNvbmZpZy5jOjQwNiBzZXF1ZW5jZXIuYzoyNDQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQga2V5OiAlcyIKIG1zZ3N0ciAia2jDs2Ega2jDtG5nIMSRw7puZzogJXMiCiAKLSM6IGNvbmZpZy5jOjM4NAorIzogY29uZmlnLmM6NDEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQga2V5IChuZXdsaW5lKTogJXMiCiBtc2dzdHIgImtow7NhIGtow7RuZyBo4bujcCBs4buHIChkw7JuZyBt4bubaSk6ICVzIgogCi0jOiBjb25maWcuYzo0MjAgY29uZmlnLmM6NDMyCisjOiBjb25maWcuYzo0NDggY29uZmlnLmM6NDYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJvZ3VzIGNvbmZpZyBwYXJhbWV0ZXI6ICVzIgogbXNnc3RyICJ0aGFtIHPhu5EgY+G6pXUgaMOsbmgga2jDtG5nIGPDsyB0aOG7sWM6ICVzIgogCi0jOiBjb25maWcuYzo0NjcKKyM6IGNvbmZpZy5jOjQ5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJib2d1cyBmb3JtYXQgaW4gJXMiCiBtc2dzdHIgIsSR4buLbmggZOG6oW5nIGtow7RuZyBjw7MgdGjhu7FjIHRyb25nICVzIgogCi0jOiBjb25maWcuYzo3OTMKKyM6IGNvbmZpZy5jOjgyMQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gYmxvYiAlcyIKIG1zZ3N0ciAidOG6rXAgdGluIGPhuqV1IGjDrG5oIHNhaSB04bqhaSBkw7JuZyAlZCB0cm9uZyBibG9iICVzIgogCi0jOiBjb25maWcuYzo3OTcKKyM6IGNvbmZpZy5jOjgyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gZmlsZSAlcyIKIG1zZ3N0ciAiY+G6pXUgaMOsbmggc2FpIHThuqFpIGTDsm5nICVkIHRyb25nIHThuq1wIHRpbiAlcyIKIAotIzogY29uZmlnLmM6ODAxCisjOiBjb25maWcuYzo4MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICJj4bqldSBow6xuaCBzYWkgdOG6oWkgZMOybmcgJWQgdHJvbmcgxJHhuqd1IHbDoG8gdGnDqnUgY2h14bqpbiIKIAotIzogY29uZmlnLmM6ODA1CisjOiBjb25maWcuYzo4MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIHN1Ym1vZHVsZS1ibG9iICVzIgogbXNnc3RyICJj4bqldSBow6xuaCBzYWkgdOG6oWkgZMOybmcgJWQgdHJvbmcgYmxvYi1tw7QtxJF1bi1jb24gJXMiCiAKLSM6IGNvbmZpZy5jOjgwOQorIzogY29uZmlnLmM6ODM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBjb21tYW5kIGxpbmUgJXMiCiBtc2dzdHIgImPhuqV1IGjDrG5oIHNhaSB04bqhaSBkw7JuZyAlZCB0cm9uZyBkw7JuZyBs4buHbmggJXMiCiAKLSM6IGNvbmZpZy5jOjgxMworIzogY29uZmlnLmM6ODQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiAlcyIKIG1zZ3N0ciAiY+G6pXUgaMOsbmggc2FpIHThuqFpIGTDsm5nICVkIHRyb25nICVzIgogCi0jOiBjb25maWcuYzo5NTIKKyM6IGNvbmZpZy5jOjk3OAogbXNnaWQgIm91dCBvZiByYW5nZSIKIG1zZ3N0ciAibuG6sW0gbmdvw6BpIHBo4bqhbSB2aSIKIAotIzogY29uZmlnLmM6OTUyCisjOiBjb25maWcuYzo5NzgKIG1zZ2lkICJpbnZhbGlkIHVuaXQiCiBtc2dzdHIgIsSRxqFuIHbhu4sga2jDtG5nIGjhu6NwIGzhu4ciCiAKLSM6IGNvbmZpZy5jOjk1OAorIzogY29uZmlnLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnOiAlcyIKIG1zZ3N0ciAic2FpIGdpw6EgdHLhu4sgYuG6sW5nIHPhu5EgY+G7p2EgY+G6pXUgaMOsbmgg4oCcJXPigJ0gY2hvIOKAnCVz4oCdOiAlcyIKIAotIzogY29uZmlnLmM6OTYzCisjOiBjb25maWcuYzo5OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gYmxvYiAlczogJXMiCiBtc2dzdHIgInNhaSBnacOhIHRy4buLIGLhurFuZyBz4buRIGPhu6dhIGPhuqV1IGjDrG5oIOKAnCVz4oCdIGNobyDigJwlc+KAnSB0cm9uZyBibG9iICVzOiAlcyIKIAotIzogY29uZmlnLmM6OTY2CisjOiBjb25maWcuYzoxMDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIGZpbGUgJXM6ICVzIgogbXNnc3RyICJzYWkgZ2nDoSB0cuG7iyBi4bqxbmcgc+G7kSBj4bunYSBj4bqldSBow6xuaCDigJwlc+KAnSBjaG8g4oCcJXPigJ0gdHJvbmcgdOG6rXAgdGluICVzOiAlcyIKIAotIzogY29uZmlnLmM6OTY5CisjOiBjb25maWcuYzoxMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN0YW5kYXJkIGlucHV0OiAlcyIKIG1zZ3N0ciAiIgogInNhaSBnacOhIHRy4buLIGLhurFuZyBz4buRIGPhu6dhIGPhuqV1IGjDrG5oIOKAnCVz4oCdIGNobyDigJwlc+KAnSB0cm9uZyDEkeG6p3UgdsOgbyB0acOqdSBjaHXhuqluOiAlcyIKIAotIzogY29uZmlnLmM6OTcyCisjOiBjb25maWcuYzoxMDA3CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN1Ym1vZHVsZS1ibG9iICVzOiAlcyIKIG1zZ3N0ciAiIgogInNhaSBnacOhIHRy4buLIGLhurFuZyBz4buRIGPhu6dhIGPhuqV1IGjDrG5oIOKAnCVz4oCdIGNobyDigJwlc+KAnSB0cm9uZyBzdWJtb2R1bGUtYmxvYiAlczogJXMiCiAKLSM6IGNvbmZpZy5jOjk3NQorIzogY29uZmlnLmM6MTAxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBjb21tYW5kIGxpbmUgJXM6ICVzIgogbXNnc3RyICJzYWkgZ2nDoSB0cuG7iyBi4bqxbmcgc+G7kSBj4bunYSBj4bqldSBow6xuaCDigJwlc+KAnSBjaG8g4oCcJXPigJ0gdHJvbmcgZMOybmcgbOG7h25oICVzOiAlcyIKIAotIzogY29uZmlnLmM6OTc4CisjOiBjb25maWcuYzoxMDEzCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluICVzOiAlcyIKIG1zZ3N0ciAic2FpIGdpw6EgdHLhu4sgYuG6sW5nIHPhu5EgY+G7p2EgY+G6pXUgaMOsbmgg4oCcJXPigJ0gY2hvIOKAnCVz4oCdIHRyb25nICVzOiAlcyIKIAotIzogY29uZmlnLmM6MTA3MworIzogY29uZmlnLmM6MTEwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZXhwYW5kIHVzZXIgZGlyIGluOiAnJXMnIgogbXNnc3RyICJn4bq3cCBs4buXaSBt4bufIHLhu5luZyB0aMawIG3hu6VjIG5nxrDhu51pIGTDuW5nIHRyb25nOiDigJwlc+KAnSIKIAotIzogY29uZmlnLmM6MTA4MgorIzogY29uZmlnLmM6MTExNwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGZvciAnJXMnIGlzIG5vdCBhIHZhbGlkIHRpbWVzdGFtcCIKIG1zZ3N0ciAi4oCcJXPigJ0gZMOgbmggY2hvIOKAnCVz4oCdIGtow7RuZyBwaOG6o2kgbMOgIGThuqV1IHbhur90IHRo4budaSBnaWFuIGjhu6NwIGzhu4ciCiAKLSM6IGNvbmZpZy5jOjExNzMKKyM6IGNvbmZpZy5jOjEyMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWJicmV2IGxlbmd0aCBvdXQgb2YgcmFuZ2U6ICVkIgogbXNnc3RyICJjaGnhu4F1IGTDoGkgYWJicmV2IG7hurFtIG5nb8OgaSBwaOG6oW0gdmk6ICVkIgogCi0jOiBjb25maWcuYzoxMTg3IGNvbmZpZy5jOjExOTgKKyM6IGNvbmZpZy5jOjEyMjIgY29uZmlnLmM6MTIzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgemxpYiBjb21wcmVzc2lvbiBsZXZlbCAlZCIKIG1zZ3N0ciAibeG7qWMgbsOpbiB6bGliICVkIGzDoCBzYWkiCiAKLSM6IGNvbmZpZy5jOjEyOTAKKyM6IGNvbmZpZy5jOjEzMjUKIG1zZ2lkICJjb3JlLmNvbW1lbnRDaGFyIHNob3VsZCBvbmx5IGJlIG9uZSBjaGFyYWN0ZXIiCiBtc2dzdHIgImNvcmUuY29tbWVudENoYXIgY2jhu4kgxJHGsOG7o2MgY8OzIG3hu5l0IGvDvSB04buxIgogCi0jOiBjb25maWcuYzoxMzIzCisjOiBjb25maWcuYzoxMzU4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbW9kZSBmb3Igb2JqZWN0IGNyZWF0aW9uOiAlcyIKIG1zZ3N0ciAiY2jhur8gxJHhu5kga2jDtG5nIGjhu6NwIGzhu4cgxJHhu5FpIHbhu5tpIHZp4buHYyB04bqhbyDEkeG7kWkgdMaw4bujbmc6ICVzIgogCi0jOiBjb25maWcuYzoxMzk1CisjOiBjb25maWcuYzoxNDMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCB2YWx1ZSBmb3IgJXMiCiBtc2dzdHIgImdpw6EgdHLhu4sgY2hvICVzIHNhaSBk4bqhbmciCiAKLSM6IGNvbmZpZy5jOjE0MjEKKyM6IGNvbmZpZy5jOjE0NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIHZhbHVlIGZvciAlczogJXMiCiBtc2dzdHIgImdpw6EgdHLhu4sgY2hvICVzIHNhaSBk4bqhbmc6ICVzIgogCi0jOiBjb25maWcuYzoxNDIyCisjOiBjb25maWcuYzoxNDU3CiBtc2dpZCAibXVzdCBiZSBvbmUgb2Ygbm90aGluZywgbWF0Y2hpbmcsIHNpbXBsZSwgdXBzdHJlYW0gb3IgY3VycmVudCIKIG1zZ3N0ciAicGjhuqNpIGzDoCBt4buZdCB0cm9uZyBz4buRIG5vdGhpbmcsIG1hdGNoaW5nLCBzaW1wbGUsIHVwc3RyZWFtIGhheSBjdXJyZW50IgogCi0jOiBjb25maWcuYzoxNDgxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5MQorIzogY29uZmlnLmM6MTUxOCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2sgY29tcHJlc3Npb24gbGV2ZWwgJWQiCiBtc2dzdHIgIm3hu6ljIG7DqW4gZ8OzaSAlZCBraMO0bmcgaOG7o3AgbOG7hyIKIAotIzogY29uZmlnLmM6MTYwMgorIzogY29uZmlnLmM6MTYzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbG9hZCBjb25maWcgYmxvYiBvYmplY3QgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHThuqNpIMSR4buRaSB0xrDhu6NuZyBibG9iIGPhuqV1IGjDrG5oIOKAnCVz4oCdIgogCi0jOiBjb25maWcuYzoxNjA1CisjOiBjb25maWcuYzoxNjQyCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSAnJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgYmxvYiIKIG1zZ3N0ciAidGhhbSBjaGnhur91IOKAnCVz4oCdIGtow7RuZyBjaOG7iSDEkeG6v24gbeG7mXQgYmxvYiBuw6BvIGPhuqMiCiAKLSM6IGNvbmZpZy5jOjE2MjIKKyM6IGNvbmZpZy5jOjE2NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgY29uZmlnIGJsb2IgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIGdp4bqjaSDEkWnhu4NtIHjDqXQgZHV54buHdCDigJwlc+KAnSIKIAotIzogY29uZmlnLmM6MTY1MgorIzogY29uZmlnLmM6MTY4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcGFyc2UgJXMiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBwaMOibiB0w61jaCBjw7ogcGjDoXAgJXMiCiAKLSM6IGNvbmZpZy5jOjE3MDUKKyM6IGNvbmZpZy5jOjE3NDMKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWFuZC1saW5lIGNvbmZpZyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIGPhuqV1IGjDrG5oIGTDsm5nIGzhu4duaCIKIAotIzogY29uZmlnLmM6MjAzNworIzogY29uZmlnLmM6MjA5NwogbXNnaWQgInVua25vd24gZXJyb3Igb2NjdXJyZWQgd2hpbGUgcmVhZGluZyB0aGUgY29uZmlndXJhdGlvbiBmaWxlcyIKIG1zZ3N0ciAixJHDoyBjw7MgbOG7l2kgY2jGsGEgYmnhur90IHjhuqN5IHJhIHRyb25nIGtoaSDEkeG7jWMgY8OhYyB04bqtcCB0aW4gY+G6pXUgaMOsbmgiCiAKLSM6IGNvbmZpZy5jOjIyMDcKKyM6IGNvbmZpZy5jOjIyNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCAlczogJyVzJyIKIG1zZ3N0ciAiJXMga2jDtG5nIGjhu6NwIGzhu4c6IOKAnCVz4oCdIgogCi0jOiBjb25maWcuYzoyMjUwCi0jLCBjLWZvcm1hdAotbXNnaWQgInVua25vd24gY29yZS51bnRyYWNrZWRDYWNoZSB2YWx1ZSAnJXMnOyB1c2luZyAna2VlcCcgZGVmYXVsdCB2YWx1ZSIKLW1zZ3N0ciAiIgotImtow7RuZyBoaeG7g3UgZ2nDoSB0cuG7iyBjb3JlLnVudHJhY2tlZENhY2hlIOKAnCVz4oCdOyBkw7luZyBnacOhIHRy4buLIG3hurdjIMSR4buLbmgg4oCca2VlcOKAnSIKLQotIzogY29uZmlnLmM6MjI3NgorIzogY29uZmlnLmM6MjMxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJzcGxpdEluZGV4Lm1heFBlcmNlbnRDaGFuZ2UgdmFsdWUgJyVkJyBzaG91bGQgYmUgYmV0d2VlbiAwIGFuZCAxMDAiCiBtc2dzdHIgImdpw6EgdHLhu4sgc3BsaXRJbmRleC5tYXhQZXJjZW50Q2hhbmdlIOKAnCVk4oCdIHBo4bqjaSBu4bqxbSBnaeG7r2EgMCB2w6AgMTAwIgogCi0jOiBjb25maWcuYzoyMzIyCisjOiBjb25maWcuYzoyMzU4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAnJXMnIGZyb20gY29tbWFuZC1saW5lIGNvbmZpZyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIOKAnCVz4oCdIHThu6sgY+G6pXUgaMOsbmggZMOybmcgbOG7h25oIgogCi0jOiBjb25maWcuYzoyMzI0CisjOiBjb25maWcuYzoyMzYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgdmFyaWFibGUgJyVzJyBpbiBmaWxlICclcycgYXQgbGluZSAlZCIKIG1zZ3N0ciAic2FpIGJp4bq/biBj4bqldSBow6xuaCDigJwlc+KAnSB0cm9uZyB04bqtcCB0aW4g4oCcJXPigJ0gdOG6oWkgZMOybmcgJWQiCiAKLSM6IGNvbmZpZy5jOjI0MDUKKyM6IGNvbmZpZy5jOjI0NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzZWN0aW9uIG5hbWUgJyVzJyIKIG1zZ3N0ciAidMOqbiBj4bunYSBwaOG6p24ga2jDtG5nIGjhu6NwIGzhu4cg4oCcJXPigJ0iCiAKLSM6IGNvbmZpZy5jOjI0MzcKKyM6IGNvbmZpZy5jOjI0NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaGFzIG11bHRpcGxlIHZhbHVlcyIKIG1zZ3N0ciAiJXMgY8OzIMSRYSBnacOhIHRy4buLIgogCi0jOiBjb25maWcuYzoyNDY2CisjOiBjb25maWcuYzoyNTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byB3cml0ZSBuZXcgY29uZmlndXJhdGlvbiBmaWxlICVzIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgZ2hpIHThuq1wIHRpbiBj4bqldSBow6xuaCDigJwlc+KAnSIKIAotIzogY29uZmlnLmM6MjcxNyBjb25maWcuYzozMDQxCisjOiBjb25maWcuYzoyNzU0IGNvbmZpZy5jOjMwNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvY2sgY29uZmlnIGZpbGUgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBraMOzYSB04bqtcCB0aW4gY+G6pXUgaMOsbmggJXMiCiAKLSM6IGNvbmZpZy5jOjI3MjgKKyM6IGNvbmZpZy5jOjI3NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAib3BlbmluZyAlcyIKIG1zZ3N0ciAixJFhbmcgbeG7nyDigJwlc+KAnSIKIAotIzogY29uZmlnLmM6Mjc2MyBidWlsdGluL2NvbmZpZy5jOjMyNworIzogY29uZmlnLmM6MjgwMCBidWlsdGluL2NvbmZpZy5jOjM0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHBhdHRlcm46ICVzIgogbXNnc3RyICJt4bqrdSBraMO0bmcgaOG7o3AgbOG7hzogJXMiCiAKLSM6IGNvbmZpZy5jOjI3ODgKKyM6IGNvbmZpZy5jOjI4MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBjb25maWcgZmlsZSAlcyIKIG1zZ3N0ciAidOG6rXAgdGluIGPhuqV1IGjDrG5oIOKAnCVz4oCdIGtow7RuZyBo4bujcCBs4buHIgogCi0jOiBjb25maWcuYzoyODAxIGNvbmZpZy5jOjMwNTQKKyM6IGNvbmZpZy5jOjI4MzggY29uZmlnLmM6MzA5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmc3RhdCBvbiAlcyBmYWlsZWQiCiBtc2dzdHIgImZzdGF0IHRyw6puICVzIGfhurdwIGzhu5dpIgogCi0jOiBjb25maWcuYzoyODEyCisjOiBjb25maWcuYzoyODQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtbWFwICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBtbWFwIOKAnCVz4oCdIgogCi0jOiBjb25maWcuYzoyODIxIGNvbmZpZy5jOjMwNTkKKyM6IGNvbmZpZy5jOjI4NTggY29uZmlnLmM6MzA5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjaG1vZCBvbiAlcyBmYWlsZWQiCiBtc2dzdHIgImNobW9kIHRyw6puICVzIGfhurdwIGzhu5dpIgogCi0jOiBjb25maWcuYzoyOTA2IGNvbmZpZy5jOjMxNTYKKyM6IGNvbmZpZy5jOjI5NDMgY29uZmlnLmM6MzE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29uZmlnIGZpbGUgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgdOG6rXAgdGluIGPhuqV1IGjDrG5oIOKAnCVz4oCdIgogCi0jOiBjb25maWcuYzoyOTQwCisjOiBjb25maWcuYzoyOTc3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzZXQgJyVzJyB0byAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhurd0IOKAnCVz4oCdIHRow6BuaCDigJwlc+KAnSIKIAotIzogY29uZmlnLmM6Mjk0MiBidWlsdGluL3JlbW90ZS5jOjc4MgorIzogY29uZmlnLmM6Mjk3OSBidWlsdGluL3JlbW90ZS5jOjY1NSBidWlsdGluL3JlbW90ZS5jOjg0OSBidWlsdGluL3JlbW90ZS5jOjg1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgdW5zZXQgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHRow7RpIMSR4bq3dCDigJwlc+KAnSIKIAotIzogY29uZmlnLmM6MzAzMgorIzogY29uZmlnLmM6MzA2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHNlY3Rpb24gbmFtZTogJXMiCiBtc2dzdHIgInTDqm4gY+G7p2EgcGjhuqduIGtow7RuZyBo4bujcCBs4buHOiAlcyIKIAotIzogY29uZmlnLmM6MzE5OQorIzogY29uZmlnLmM6MzIzNgogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIHZhbHVlIGZvciAnJXMnIgogbXNnc3RyICJ0aGnhur91IGdpw6EgdHLhu4sgY2hvIGNobyDigJwlc+KAnSIKQEAgLTE4MTEsNTAgKzI3MjAsNDUgQEAKIG1zZ2lkICJyZXBvc2l0b3J5IG9uIHRoZSBvdGhlciBlbmQgY2Fubm90IGJlIHNoYWxsb3ciCiBtc2dzdHIgImtobyDEkcOjIOG7nyDEkWnhu4NtIGN14buRaSBraG/DoWMgbsOqbiBraMO0bmcgdGjhu4MgxJHGsOG7o2Mgc2hhbGxvdyIKIAotIzogY29ubmVjdC5jOjMxMCBmZXRjaC1wYWNrLmM6MTgyIGJ1aWx0aW4vYXJjaGl2ZS5jOjYzCi0jLCBjLWZvcm1hdAotbXNnaWQgInJlbW90ZSBlcnJvcjogJXMiCi1tc2dzdHIgImzhu5dpIG3DoXkgY2jhu6c6ICVzIgotCi0jOiBjb25uZWN0LmM6MzE2CisjOiBjb25uZWN0LmM6MzEzCiBtc2dpZCAiaW52YWxpZCBwYWNrZXQiCiBtc2dzdHIgImfDs2kga2jDtG5nIGjhu6NwIGzhu4ciCiAKLSM6IGNvbm5lY3QuYzozMzYKKyM6IGNvbm5lY3QuYzozMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IHVuZXhwZWN0ZWQgJyVzJyIKIG1zZ3N0ciAibOG7l2kgZ2lhbyB0aOG7qWM6IGtow7RuZyBj4bqnbiDigJwlc+KAnSIKIAotIzogY29ubmVjdC5jOjQ0NAorIzogY29ubmVjdC5jOjQ0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGxzLXJlZnMgcmVzcG9uc2U6ICVzIgogbXNnc3RyICJ0cuG6oyB24buBIGPhu6dhIGxzLXJlZnMga2jDtG5nIGjhu6NwIGzhu4c6ICVzIgogCi0jOiBjb25uZWN0LmM6NDQ4CisjOiBjb25uZWN0LmM6NDQ1CiBtc2dpZCAiZXhwZWN0ZWQgZmx1c2ggYWZ0ZXIgcmVmIGxpc3RpbmciCiBtc2dzdHIgImPhuqduIMSR4bqpeSBk4buvIGxp4buHdSBsw6puIMSRxKlhIHNhdSBraGkgbGnhu4d0IGvDqiB0aGFtIGNoaeG6v3UiCiAKLSM6IGNvbm5lY3QuYzo1NDcKKyM6IGNvbm5lY3QuYzo1NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgJyVzJyBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJnaWFvIHRo4bupYyDigJwlc+KAnSBjaMawYSDEkcaw4bujYyBo4buXIHRy4bujIgogCi0jOiBjb25uZWN0LmM6NTk4CisjOiBjb25uZWN0LmM6NTk1CiBtc2dpZCAidW5hYmxlIHRvIHNldCBTT19LRUVQQUxJVkUgb24gc29ja2V0IgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhurd0IFNPX0tFRVBBTElWRSB0csOqbiDhu5UgY+G6r20iCiAKLSM6IGNvbm5lY3QuYzo2MzggY29ubmVjdC5jOjcwMQorIzogY29ubmVjdC5jOjYzNSBjb25uZWN0LmM6Njk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkxvb2tpbmcgdXAgJXMgLi4uICIKLW1zZ3N0ciAixJBhbmcgdMOsbSBraeG6v20gJXMg4oCmIgorbXNnc3RyICLEkGFuZyB0w6xtIGtp4bq/bSAlcyDigKYgIgogCi0jOiBjb25uZWN0LmM6NjQyCisjOiBjb25uZWN0LmM6NjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzIChwb3J0ICVzKSAoJXMpIgogbXNnc3RyICJraMO0bmcgdMOsbSDEkcaw4bujYyAlcyAoY+G7lW5nICVzKSAoJXMpIgogCiAjLiBUUkFOU0xBVE9SUzogdGhpcyBpcyB0aGUgZW5kIG9mICJMb29raW5nIHVwICVzIC4uLiAiCi0jOiBjb25uZWN0LmM6NjQ2IGNvbm5lY3QuYzo3MTcKKyM6IGNvbm5lY3QuYzo2NDMgY29ubmVjdC5jOjcxNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZG9uZS5cbiIKQEAgLTE4NjMsNyArMjc2Nyw3IEBACiAieG9uZy5cbiIKICLEkGFuZyBr4bq/dCBu4buRaSDEkeG6v24gJXMgKGPhu5VuZyAlcykg4oCmICIKIAotIzogY29ubmVjdC5jOjY2OCBjb25uZWN0LmM6NzQ1CisjOiBjb25uZWN0LmM6NjY1IGNvbm5lY3QuYzo3NDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInVuYWJsZSB0byBjb25uZWN0IHRvICVzOlxuIgpAQCAtMTg3Myw3MyArMjc3Nyw3MyBAQAogIiVzIgogCiAjLiBUUkFOU0xBVE9SUzogdGhpcyBpcyB0aGUgZW5kIG9mICJDb25uZWN0aW5nIHRvICVzIChwb3J0ICVzKSAuLi4gIgotIzogY29ubmVjdC5jOjY3NCBjb25uZWN0LmM6NzUxCisjOiBjb25uZWN0LmM6NjcxIGNvbm5lY3QuYzo3NDgKIG1zZ2lkICJkb25lLiIKIG1zZ3N0ciAiaG/DoG4gdOG6pXQuIgogCi0jOiBjb25uZWN0LmM6NzA1CisjOiBjb25uZWN0LmM6NzAyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzICglcykiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB0w6xtIHRo4bqleSAlcyAoJXMpIgogCi0jOiBjb25uZWN0LmM6NzExCisjOiBjb25uZWN0LmM6NzA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gcG9ydCAlcyIKIG1zZ3N0ciAia2jDtG5nIGhp4buDdSBj4buVbmcgJXMiCiAKLSM6IGNvbm5lY3QuYzo4NDggY29ubmVjdC5jOjExNzQKKyM6IGNvbm5lY3QuYzo4NDUgY29ubmVjdC5jOjExNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBob3N0bmFtZSAnJXMnIGJsb2NrZWQiCiBtc2dzdHIgIsSRw6Mga2jDs2EgdMOqbiBtw6F5IGzhuqEg4oCcJXPigJ0iCiAKLSM6IGNvbm5lY3QuYzo4NTAKKyM6IGNvbm5lY3QuYzo4NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBwb3J0ICclcycgYmxvY2tlZCIKIG1zZ3N0ciAixJHDoyBraMOzYSBj4buVbmcgbOG6oSDigJwlc+KAnSIKIAotIzogY29ubmVjdC5jOjg2MAorIzogY29ubmVjdC5jOjg1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RhcnQgcHJveHkgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBraOG7n2kgY2jhuqF5IOG7p3kgbmhp4buHbSDigJwlc+KAnSIKIAotIzogY29ubmVjdC5jOjkyNworIzogY29ubmVjdC5jOjkyOAogbXNnaWQgIm5vIHBhdGggc3BlY2lmaWVkOyBzZWUgJ2dpdCBoZWxwIHB1bGwnIGZvciB2YWxpZCB1cmwgc3ludGF4IgogbXNnc3RyICJjaMawYSBjaOG7iSDEkeG7i25oIMSRxrDhu51uZyBk4bqrbjsgeGVtJ2dpdCBoZWxwIHB1bGzigJ0gxJHhu4MgYmnhur90IGPDuiBwaMOhcCB1cmwgaOG7o3AgbOG7hyIKIAotIzogY29ubmVjdC5jOjExMjIKKyM6IGNvbm5lY3QuYzoxMTIzCiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCAtNCIKIG1zZ3N0ciAic3NoIGJp4bq/biB0aOG7gyDigJxzaW1wbGXigJ0ga2jDtG5nIGjhu5cgdHLhu6MgLTQiCiAKLSM6IGNvbm5lY3QuYzoxMTM0CisjOiBjb25uZWN0LmM6MTEzNQogbXNnaWQgInNzaCB2YXJpYW50ICdzaW1wbGUnIGRvZXMgbm90IHN1cHBvcnQgLTYiCiBtc2dzdHIgInNzaCBiaeG6v24gdGjhu4Mg4oCcc2ltcGxl4oCdIGtow7RuZyBo4buXIHRy4bujIC02IgogCi0jOiBjb25uZWN0LmM6MTE1MQorIzogY29ubmVjdC5jOjExNTIKIG1zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IHNldHRpbmcgcG9ydCIKIG1zZ3N0ciAic3NoIGJp4bq/biB0aOG7gyDigJxzaW1wbGXigJ0ga2jDtG5nIGjhu5cgdHLhu6MgxJHhurd0IGPhu5VuZyIKIAotIzogY29ubmVjdC5jOjEyNjIKKyM6IGNvbm5lY3QuYzoxMjY0CiAjLCBjLWZvcm1hdAogbXNnaWQgInN0cmFuZ2UgcGF0aG5hbWUgJyVzJyBibG9ja2VkIgogbXNnc3RyICLEkcOjIGtow7NhIHTDqm4gxJHGsOG7nW5nIGThuqtuIGzhuqEg4oCcJXPigJ0iCiAKLSM6IGNvbm5lY3QuYzoxMzA3CisjOiBjb25uZWN0LmM6MTMxMQogbXNnaWQgInVuYWJsZSB0byBmb3JrIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcuG6vSBuaMOhbmggdGnhur9uIHRyw6xuaCBjb24iCiAKLSM6IGNvbm5lY3RlZC5jOjY4IGJ1aWx0aW4vZnNjay5jOjIwMiBidWlsdGluL3BydW5lLmM6MTQ3CisjOiBjb25uZWN0ZWQuYzo5OCBidWlsdGluL2ZzY2suYzoyMDggYnVpbHRpbi9wcnVuZS5jOjQzCiBtc2dpZCAiQ2hlY2tpbmcgY29ubmVjdGl2aXR5IgogbXNnc3RyICLEkGFuZyBraeG7g20gdHJhIGvhur90IG7hu5FpIgogCi0jOiBjb25uZWN0ZWQuYzo4MAorIzogY29ubmVjdGVkLmM6MTEwCiBtc2dpZCAiQ291bGQgbm90IHJ1biAnZ2l0IHJldi1saXN0JyIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIGNo4bqheSDigJxnaXQgcmV2LWxpc3TigJ0iCiAKLSM6IGNvbm5lY3RlZC5jOjEwMAorIzogY29ubmVjdGVkLmM6MTMwCiBtc2dpZCAiZmFpbGVkIHdyaXRlIHRvIHJldi1saXN0IgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgZ2hpIHbDoG8gcmV2LWxpc3QiCiAKLSM6IGNvbm5lY3RlZC5jOjEwNworIzogY29ubmVjdGVkLmM6MTM3CiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHJldi1saXN0J3Mgc3RkaW4iCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSDEkcOzbmcgxJHhuqd1IHbDoG8gY2h14bqpbiBzdGRpbiBj4bunYSByZXYtbGlzdCIKIApAQCAtMTk3NiwyNiArMjg4MCwyNiBAQAogIkxGIHPhur0gYuG7iyB0aGF5IHRo4bq/IGLhurFuZyBDUkxGIHRyb25nICVzLlxuIgogIlThuq1wIHRpbiBz4bq9IGPDsyBraeG7g3UgeHXhu5FuZyBkw7JuZyBuaMawIGLhuqNuIGfhu5FjIHRyb25nIHRoxrAgbeG7pWMgbMOgbSB2aeG7h2MgY+G7p2EgYuG6oW4iCiAKLSM6IGNvbnZlcnQuYzoyODAKKyM6IGNvbnZlcnQuYzoyODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQk9NIGlzIHByb2hpYml0ZWQgaW4gJyVzJyBpZiBlbmNvZGVkIGFzICVzIgogbXNnc3RyICJCT00gYuG7iyBj4bqlbSB0cm9uZyDigJwlc+KAnSBu4bq/dSDEkcaw4bujYyBtw6MgaMOzYSBsw6AgJXMiCiAKLSM6IGNvbnZlcnQuYzoyODcKKyM6IGNvbnZlcnQuYzoyOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgotIlRoZSBmaWxlICclcycgY29udGFpbnMgYSBieXRlIG9yZGVyIG1hcmsgKEJPTSkuIFBsZWFzZSB1c2UgVVRGLSVzIGFzIHdvcmtpbmctIgotInRyZWUtZW5jb2RpbmcuIgorIlRoZSBmaWxlICclcycgY29udGFpbnMgYSBieXRlIG9yZGVyIG1hcmsgKEJPTSkuIFBsZWFzZSB1c2UgVVRGLSUuKnMgYXMgIgorIndvcmtpbmctdHJlZS1lbmNvZGluZy4iCiBtc2dzdHIgIiIKLSJU4bqtcCB0aW4g4oCcJXPigJ0gY8OzIGNo4bupYSBrw70gaGnhu4d1IHRo4bupIHThu7EgYnl0ZSAoQk9NKS4gVnVpIGzDsm5nIGTDuW5nIFVURi0lcyBuaMawIGzDoCAiCi0iYuG6o25nIG3DoyBjw6J5IGzDoG0gdmnhu4djLiIKKyJU4bqtcCB0aW4g4oCcJXPigJ0gY8OzIGNo4bupYSBrw70gaGnhu4d1IHRo4bupIHThu7EgYnl0ZSAoQk9NKS4gVnVpIGzDsm5nIGTDuW5nIFVURi0lLipzIG5oxrAgIgorImzDoCBi4bqjbmcgbcOjIGPDonkgbMOgbSB2aeG7h2MuIgogCi0jOiBjb252ZXJ0LmM6MzA1CisjOiBjb252ZXJ0LmM6MzA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJPTSBpcyByZXF1aXJlZCBpbiAnJXMnIGlmIGVuY29kZWQgYXMgJXMiCiBtc2dzdHIgIkJPTSBsw6AgYuG6r3QgYnXhu5ljIHRyb25nIOKAnCVz4oCdIG7hur91IMSRxrDhu6NjIG3DoyBow7NhIGzDoCAlcyIKIAotIzogY29udmVydC5jOjMwNworIzogY29udmVydC5jOjMwNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZpbGUgJyVzJyBpcyBtaXNzaW5nIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lc0JFIG9yIFVURi0iCkBAIC0yMDA0LDUwICsyOTA4LDUwIEBACiAiVOG6rXAgdGluIOKAnCVz4oCdIGPDsm4gdGhp4bq/dSBrw70gaGnhu4d1IHRo4bupIHThu7EgYnl0ZSAoQk9NKS4gVnVpIGzDsm5nIGTDuW5nIFVURi0lc0JFIGhheSAiCiAiVVRGLSVzTEUgKGPDsm4gcGjhu6VjIHRodeG7mWMgdsOgbyB0aOG7qSB04buxIGJ5dGUpIG5oxrAgbMOgIGLhuqNuZyBtw6MgY8OieSBsw6BtIHZp4buHYy4iCiAKLSM6IGNvbnZlcnQuYzo0MjUgY29udmVydC5jOjQ5NgorIzogY29udmVydC5jOjQxOSBjb252ZXJ0LmM6NDkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBlbmNvZGUgJyVzJyBmcm9tICVzIHRvICVzIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgbcOjIGjDs2Eg4oCcJXPigJ0gIHThu6sg4oCcJXPigJ0gc2FuZyDigJwlc+KAnSIKIAotIzogY29udmVydC5jOjQ2OAorIzogY29udmVydC5jOjQ2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJlbmNvZGluZyAnJXMnIGZyb20gJXMgdG8gJXMgYW5kIGJhY2sgaXMgbm90IHRoZSBzYW1lIgogbXNnc3RyICJtw6MgaMOzYSDigJwlc+KAnSB04burICVzIHRow6BuaCAlcyB2w6AgbmfGsOG7o2MgdHLhu58gbOG6oWkga2jDtG5nIHBo4bqjaSBsw6AgY8O5bmciCiAKLSM6IGNvbnZlcnQuYzo2NzQKKyM6IGNvbnZlcnQuYzo2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZvcmsgdG8gcnVuIGV4dGVybmFsIGZpbHRlciAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcuG6vSBuaMOhbmggdGnhur9uIHRyw6xuaCDEkeG7gyBjaOG6oXkgYuG7mSBs4buNYyBiw6puIG5nb8OgaSDigJwlc+KAnSIKIAotIzogY29udmVydC5jOjY5NAorIzogY29udmVydC5jOjY4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmVlZCB0aGUgaW5wdXQgdG8gZXh0ZXJuYWwgZmlsdGVyICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBj4bqlcCDEkeG6p3UgdsOgbyBjaG8gYuG7mSBs4buNYyBiw6puIG5nb8OgaSDigJwlc+KAnSIKIAotIzogY29udmVydC5jOjcwMQorIzogY29udmVydC5jOjY5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQgJWQiCiBtc2dzdHIgImNo4bqheSBi4buZIGzhu41jIGLDqm4gbmdvw6BpIOKAnCVz4oCdIGfhurdwIGzhu5dpICVkIgogCi0jOiBjb252ZXJ0LmM6NzM2IGNvbnZlcnQuYzo3MzkKKyM6IGNvbnZlcnQuYzo3MzAgY29udmVydC5jOjczMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkIGZyb20gZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkIgogbXNnc3RyICLEkeG7jWMgdOG7qyBi4buZIGzhu41jIGLDqm4gbmdvw6BpIOKAnCVz4oCdIGfhurdwIGzhu5dpIgogCi0jOiBjb252ZXJ0LmM6NzQyIGNvbnZlcnQuYzo3OTYKKyM6IGNvbnZlcnQuYzo3MzYgY29udmVydC5jOjc5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBjaOG6oXkgYuG7mSBs4buNYyBiw6puIG5nb8OgaSDigJwlc+KAnSIKIAotIzogY29udmVydC5jOjg0NAorIzogY29udmVydC5jOjgzOQogbXNnaWQgInVuZXhwZWN0ZWQgZmlsdGVyIHR5cGUiCiBtc2dzdHIgImfhurdwIGtp4buDdSBi4buZIGzhu41jIHRo4burYSIKIAotIzogY29udmVydC5jOjg1NQorIzogY29udmVydC5jOjg1MAogbXNnaWQgInBhdGggbmFtZSB0b28gbG9uZyBmb3IgZXh0ZXJuYWwgZmlsdGVyIgogbXNnc3RyICJ0w6puIMSRxrDhu51uZyBk4bqrbiBxdcOhIGTDoGkgY2hvIGLhu5kgbOG7jWMgYsOqbiBuZ2/DoGkiCiAKLSM6IGNvbnZlcnQuYzo5MjkKKyM6IGNvbnZlcnQuYzo5MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4dGVybmFsIGZpbHRlciAnJXMnIGlzIG5vdCBhdmFpbGFibGUgYW55bW9yZSBhbHRob3VnaCBub3QgYWxsIHBhdGhzIGhhdmUgIgpAQCAtMjA1NiwxMDAgKzI5NjAsMTAwIEBACiAiYuG7mSBs4buNYyBiw6puIG5nb8OgaSDigJwlc+KAnSBraMO0bmcgc+G6tW4gc8OgbmcgbuG7r2EgbeG6t2MgZMO5IGtow7RuZyBwaOG6o2kgdOG6pXQgY+G6oyBjw6FjIMSRxrDhu51uZyAiCiAiZOG6q24gxJHDoyDEkcaw4bujYyBs4buNYyIKIAotIzogY29udmVydC5jOjEyMjgKKyM6IGNvbnZlcnQuYzoxMjIzCiBtc2dpZCAidHJ1ZS9mYWxzZSBhcmUgbm8gdmFsaWQgd29ya2luZy10cmVlLWVuY29kaW5ncyIKLW1zZ3N0ciAidHJ1ZS9mYWxzZSBsw6Aga2jDtG5nIHBo4bqjaSBi4bqjbmcgbcOjIGPDonkgbMOgbSB2aeG7h2MgaOG7o3AgbOG7hyAiCittc2dzdHIgInRydWUvZmFsc2UgbMOgIGtow7RuZyBwaOG6o2kgYuG6o25nLW3Doy1jw6J5LWzDoG0tdmnhu4djIGjhu6NwIGzhu4ciCiAKLSM6IGNvbnZlcnQuYzoxMzk4IGNvbnZlcnQuYzoxNDMyCisjOiBjb252ZXJ0LmM6MTQxMSBjb252ZXJ0LmM6MTQ0NQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogY2xlYW4gZmlsdGVyICclcycgZmFpbGVkIgogbXNnc3RyICIlczogZ+G6t3AgbOG7l2kga2hpIHjDs2EgYuG7mSBs4buNYyDigJwlc+KAnSIKIAotIzogY29udmVydC5jOjE0NzYKKyM6IGNvbnZlcnQuYzoxNDg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBzbXVkZ2UgZmlsdGVyICVzIGZhaWxlZCIKIG1zZ3N0ciAiJXM6IHNtdWRnZSBi4buZIGzhu41jICVzIGfhurdwIGzhu5dpIgogCi0jOiBkYXRlLmM6MTE2CisjOiBkYXRlLmM6MTM4CiBtc2dpZCAiaW4gdGhlIGZ1dHVyZSIKIG1zZ3N0ciAi4bufIHRo4budaSB0xrDGoW5nIGxhaSIKIAotIzogZGF0ZS5jOjEyMgorIzogZGF0ZS5jOjE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHNlY29uZCBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gc2Vjb25kcyBhZ28iCiBtc2dzdHJbMF0gIiU8UFJJdU1BWD4gZ2nDonkgdHLGsOG7m2MiCiAKLSM6IGRhdGUuYzoxMjkKKyM6IGRhdGUuYzoxNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiBtaW51dGUgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IG1pbnV0ZXMgYWdvIgogbXNnc3RyWzBdICIlPFBSSXVNQVg+IHBow7p0IHRyxrDhu5tjIgogCi0jOiBkYXRlLmM6MTM2CisjOiBkYXRlLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gaG91ciBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gaG91cnMgYWdvIgogbXNnc3RyWzBdICIlPFBSSXVNQVg+IGdp4budIHRyxrDhu5tjIgogCi0jOiBkYXRlLmM6MTQzCisjOiBkYXRlLmM6MTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gZGF5IGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBkYXlzIGFnbyIKIG1zZ3N0clswXSAiJTxQUkl1TUFYPiBuZ8OgeSB0csaw4bubYyIKIAotIzogZGF0ZS5jOjE0OQorIzogZGF0ZS5jOjE3MQogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHdlZWsgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHdlZWtzIGFnbyIKIG1zZ3N0clswXSAiJTxQUkl1TUFYPiB0deG6p24gdHLGsOG7m2MiCiAKLSM6IGRhdGUuYzoxNTYKKyM6IGRhdGUuYzoxNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiBtb250aCBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gbW9udGhzIGFnbyIKIG1zZ3N0clswXSAiJTxQUkl1TUFYPiB0aMOhbmcgdHLGsOG7m2MiCiAKLSM6IGRhdGUuYzoxNjcKKyM6IGRhdGUuYzoxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiB5ZWFyIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHllYXJzIgogbXNnc3RyWzBdICIlPFBSSXVNQVg+IG7Eg20iCiAKICMuIFRSQU5TTEFUT1JTOiAiJXMiIGlzICI8bj4geWVhcnMiCi0jOiBkYXRlLmM6MTcwCisjOiBkYXRlLmM6MTkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzLCAlPFBSSXVNQVg+IG1vbnRoIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJXMsICU8UFJJdU1BWD4gbW9udGhzIGFnbyIKIG1zZ3N0clswXSAiJXMsICU8UFJJdU1BWD4gdGjDoW5nIHRyxrDhu5tjIgogCi0jOiBkYXRlLmM6MTc1IGRhdGUuYzoxODAKKyM6IGRhdGUuYzoxOTcgZGF0ZS5jOjIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IHllYXIgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHllYXJzIGFnbyIKIG1zZ3N0clswXSAiJTxQUkl1TUFYPiBuxINtIHRyxrDhu5tjIgogCi0jOiBkZWx0YS1pc2xhbmRzLmM6MjY4CisjOiBkZWx0YS1pc2xhbmRzLmM6MjcyCiBtc2dpZCAiUHJvcGFnYXRpbmcgaXNsYW5kIG1hcmtzIgogbXNnc3RyICLEkGFuZyBsYW4gdHJ1eeG7gW4gY8OhYyDEkcOhbmggZOG6pXUgaXNsYW5kIgogCi0jOiBkZWx0YS1pc2xhbmRzLmM6Mjg2CisjOiBkZWx0YS1pc2xhbmRzLmM6MjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCB0cmVlIG9iamVjdCAlcyIKIG1zZ3N0ciAixJHhu5FpIHTGsOG7o25nIGPDonkgc2FpIOKAnCVz4oCdIgogCi0jOiBkZWx0YS1pc2xhbmRzLmM6MzMwCisjOiBkZWx0YS1pc2xhbmRzLmM6MzM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBsb2FkIGlzbGFuZCByZWdleCBmb3IgJyVzJzogJXMiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSB04bqjaSBiaeG7g3UgdGjhu6ljIGNow61uaCBxdXkgaXNsYW5kIGNobyDigJwlc+KAnTogJXMiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzozODYKKyM6IGRlbHRhLWlzbGFuZHMuYzozOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaXNsYW5kIHJlZ2V4IGZyb20gY29uZmlnIGhhcyB0b28gbWFueSBjYXB0dXJlIGdyb3VwcyAobWF4PSVkKSIKIG1zZ3N0ciAiIgogImJp4buDdSB0aOG7qWMgY2jDrW5oIHF1eSBpc2xhbmQgdOG7qyBj4bqldSBow6xuaCBjw7MgcXXDoSBuaGnhu4F1IG5ow7NtIGNo4bulcCAodOG7kWkgxJFhPSVkKSIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjQ2MgorIzogZGVsdGEtaXNsYW5kcy5jOjQ2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJNYXJrZWQgJWQgaXNsYW5kcywgZG9uZS5cbiIKIG1zZ3N0ciAixJDDoyDEkcOhbmggZOG6pXUgJWQgaXNsYW5kLCB4b25nLlxuIgpAQCAtMjE1OSwyNiArMzA2MywzMyBAQAogbXNnaWQgImZhaWxlZCB0byByZWFkIG9yZGVyZmlsZSAnJXMnIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhu41jIHThuq1wLXRpbi10aOG7qS104buxIOKAnCVz4oCdIgogCi0jOiBkaWZmY29yZS1yZW5hbWUuYzo1NDQKKyM6IGRpZmZjb3JlLXJlbmFtZS5jOjU0MwogbXNnaWQgIlBlcmZvcm1pbmcgaW5leGFjdCByZW5hbWUgZGV0ZWN0aW9uIgogbXNnc3RyICLEkGFuZyB0aOG7sWMgaGnhu4duIGTDsiB0w6xtIMSR4buVaSB0w6puIGtow7RuZyBjaMOtbmggeMOhYyIKIAotIzogZGlmZi5jOjEwOAotIywgYy1mb3JtYXQKLW1zZ2lkICJvcHRpb24gJyVzJyByZXF1aXJlcyBhIHZhbHVlIgotbXNnc3RyICJ0w7l5IGNo4buNbiDigJwlc+KAnSB5w6p1IGPhuqd1IG3hu5l0IGdpw6EgdHLhu4siCisjOiBkaWZmLW5vLWluZGV4LmM6MjM4Cittc2dpZCAiZ2l0IGRpZmYgLS1uby1pbmRleCBbPG9wdGlvbnM+XSA8cGF0aD4gPHBhdGg+IgorbXNnc3RyICJnaXQgZGlmZiAtLW5vLWluZGV4IFs8Y8OhYyB0w7l5IGNo4buNbj5dIDwvxJHGsOG7nW5nL2ThuqtuPiA8L8SRxrDhu51uZy9k4bqrbj4iCiAKLSM6IGRpZmYuYzoxNTgKKyM6IGRpZmYtbm8taW5kZXguYzoyNjMKK21zZ2lkICIiCisiTm90IGEgZ2l0IHJlcG9zaXRvcnkuIFVzZSAtLW5vLWluZGV4IHRvIGNvbXBhcmUgdHdvIHBhdGhzIG91dHNpZGUgYSB3b3JraW5nICIKKyJ0cmVlIgorbXNnc3RyICIiCisiS2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgdGjGsCBt4bulYyBnaXQuIETDuW5nIC0tbm8taW5kZXggxJHhu4Mgc28gc8OhbmggaGFpIMSRxrDhu51uZyBk4bqrbiBiw6puICIKKyJuZ2/DoGkgbeG7mXQgY8OieSBsw6BtIHZp4buHYyIKKworIzogZGlmZi5jOjE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICIgIEZhaWxlZCB0byBwYXJzZSBkaXJzdGF0IGN1dC1vZmYgcGVyY2VudGFnZSAnJXMnXG4iCiBtc2dzdHIgIiAgR+G6t3AgbOG7l2kga2hpIHBow6JuIHTDrWNoIGRpcnN0YXQgY+G6r3QgYuG7jyBwaOG6p24gdHLEg20g4oCcJXPigJ1cbiIKIAotIzogZGlmZi5jOjE2MworIzogZGlmZi5jOjE2MAogIywgYy1mb3JtYXQKIG1zZ2lkICIgIFVua25vd24gZGlyc3RhdCBwYXJhbWV0ZXIgJyVzJ1xuIgogbXNnc3RyICIgIEtow7RuZyBoaeG7g3UgxJHhu5FpIHPhu5EgZGlyc3RhdCDigJwlc+KAnVxuIgogCi0jOiBkaWZmLmM6MjkxCisjOiBkaWZmLmM6Mjk2CiBtc2dpZCAiIgogImNvbG9yIG1vdmVkIHNldHRpbmcgbXVzdCBiZSBvbmUgb2YgJ25vJywgJ2RlZmF1bHQnLCAnYmxvY2tzJywgJ3plYnJhJywgIgogIidkaW1tZWQtemVicmEnLCAncGxhaW4nIgpAQCAtMjE4NiwyNSArMzA5NywzMCBAQAogImPDoGkgxJHhurd0IG3DoHUgxJHDoyBkaSBjaHV54buDbiBwaOG6o2kgbMOgIG3hu5l0IHRyb25nIOKAnG5v4oCdLCDigJxkZWZhdWx04oCdLCDigJxibG9ja3PigJ0sICIKICLigJx6ZWJyYeKAnSwg4oCcZGltbWVkX3plYnJh4oCdLCDigJxwbGFpbuKAnSIKIAotIzogZGlmZi5jOjMxNgorIzogZGlmZi5jOjMyNAogIywgYy1mb3JtYXQKLW1zZ2lkICJpZ25vcmluZyB1bmtub3duIGNvbG9yLW1vdmVkLXdzIG1vZGUgJyVzJyIKLW1zZ3N0ciAiYuG7jyBxdWEgY2jhur8gxJHhu5kgY29sb3ItbW92ZWQtd3MgY2jGsGEgYmnhur90IOKAnCVz4oCdIgotCi0jOiBkaWZmLmM6MzIzCiBtc2dpZCAiIgotImNvbG9yLW1vdmVkLXdzOiBhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UgY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgd2hpdGUgIgotInNwYWNlIG1vZGVzIgorInVua25vd24gY29sb3ItbW92ZWQtd3MgbW9kZSAnJXMnLCBwb3NzaWJsZSB2YWx1ZXMgYXJlICdpZ25vcmUtc3BhY2UtY2hhbmdlJywgIgorIidpZ25vcmUtc3BhY2UtYXQtZW9sJywgJ2lnbm9yZS1hbGwtc3BhY2UnLCAnYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlJyIKK21zZ3N0ciAiIgorImtow7RuZyBoaeG7g3UgY2jhur8gxJHhu5kgY29sb3ItbW92ZWQtd3Mg4oCcJXPigJ0sIGPDoWMgZ2nDoSB0cuG7iyBjw7MgdGjhu4MgbMOgIOKAnGlnbm9yZS1zcGFjZS0iCisiY2hhbmdl4oCdLCDigJxpZ25vcmUtc3BhY2UtYXQtZW9s4oCdLCDigJxpZ25vcmUtYWxsLXNwYWNl4oCdLCDigJxhbGxvdy1pbmRlbnRhdGlvbi0iCisiY2hhbmdl4oCdIgorCisjOiBkaWZmLmM6MzMyCittc2dpZCAiIgorImNvbG9yLW1vdmVkLXdzOiBhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UgY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgIgorIndoaXRlc3BhY2UgbW9kZXMiCiBtc2dzdHIgIiIKICJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGtow7RuZyB0aOG7gyB04buVIGjhu6NwIGPDuW5nIHbhu5tpIGPDoWMgY2jhur8gIgogIsSR4buZIGtob+G6o25nIHRy4bqvbmcga2jDoWMiCiAKLSM6IGRpZmYuYzozOTQKKyM6IGRpZmYuYzo0MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biB2YWx1ZSBmb3IgJ2RpZmYuc3VibW9kdWxlJyBjb25maWcgdmFyaWFibGU6ICclcyciCiBtc2dzdHIgIktow7RuZyBoaeG7g3UgZ2nDoSB0cuG7iyBjaG8gYmnhur9uIGPhuqV1IGjDrG5oIOKAnGRpZmYuc3VibW9kdWxl4oCdOiDigJwlc+KAnSIKIAotIzogZGlmZi5jOjQ1NAorIzogZGlmZi5jOjQ2NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiRm91bmQgZXJyb3JzIGluICdkaWZmLmRpcnN0YXQnIGNvbmZpZyB2YXJpYWJsZTpcbiIKQEAgLTIyMTMsMjQgKzMxMjksMzUgQEAKICJUw6xtIHRo4bqleSBjw6FjIGzhu5dpIHRyb25nIGJp4bq/biBj4bqldSBow6xuaCDigJxkaWZmLmRpcnN0YXTigJ06XG4iCiAiJXMiCiAKLSM6IGRpZmYuYzo0MTQwCisjOiBkaWZmLmM6NDIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJleHRlcm5hbCBkaWZmIGRpZWQsIHN0b3BwaW5nIGF0ICVzIgogbXNnc3RyICJwaOG6p24gbeG7gW0gZGlmZiDhu58gYsOqbiBuZ2/DoGkgxJHDoyBjaOG6v3QsIGThu6tuZyB04bqhaSAlcyIKIAotIzogZGlmZi5jOjQ0ODIKKyM6IGRpZmYuYzo0NTQ3CiBtc2dpZCAiLS1uYW1lLW9ubHksIC0tbmFtZS1zdGF0dXMsIC0tY2hlY2sgYW5kIC1zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi0tbmFtZS1vbmx5LCAtLW5hbWUtc3RhdHVzLCAtLWNoZWNrIHbDoCAtcyBsb+G6oWkgdOG7qyBs4bqrbiBuaGF1IgogCi0jOiBkaWZmLmM6NDQ4NQorIzogZGlmZi5jOjQ1NTAKIG1zZ2lkICItRywgLVMgYW5kIC0tZmluZC1vYmplY3QgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiQ8OhYyB0w7l5IGNo4buNbiAtRywgLVMsIHbDoCAtLWZpbmQtb2JqZWN0IGxv4bqhaSB04burIGzhuqtuIG5oYXUiCiAKLSM6IGRpZmYuYzo0NTYzCisjOiBkaWZmLmM6NDYyOAogbXNnaWQgIi0tZm9sbG93IHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhdGhzcGVjIgogbXNnc3RyICItLWZvbGxvdyBj4bqnbiBjaMOtbmggeMOhYyBt4buZdCDEkeG6t2MgdOG6oyDEkcaw4budbmcgZOG6q24iCiAKLSM6IGRpZmYuYzo0NzI5CisjOiBkaWZmLmM6NDY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIC0tc3RhdCB2YWx1ZTogJXMiCittc2dzdHIgImdpw6EgdHLhu4sgLS1zdGF0IGtow7RuZyBo4bujcCBs4buHOiDigJwlc+KAnSIKKworIzogZGlmZi5jOjQ2ODEgZGlmZi5jOjQ2ODYgZGlmZi5jOjQ2OTEgZGlmZi5jOjQ2OTYgZGlmZi5jOjUyMDkKKyM6IHBhcnNlLW9wdGlvbnMuYzoxOTcgcGFyc2Utb3B0aW9ucy5jOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICJ0w7l5IGNo4buNbiDigJwlc+KAnSBj4bqnbiBt4buZdCBnacOhIHRy4buLIGLhurFuZyBz4buRIgorCisjOiBkaWZmLmM6NDcxMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiRmFpbGVkIHRvIHBhcnNlIC0tZGlyc3RhdC8tWCBvcHRpb24gcGFyYW1ldGVyOlxuIgpAQCAtMjIzOSwyMiArMzE2Niw1MTQgQEAKICJH4bq3cCBs4buXaSBraGkgcGjDom4gdMOtY2ggxJHhu5FpIHPhu5EgdMO5eSBjaOG7jW4gLS1kaXJzdGF0Ly1YOlxuIgogIiVzIgogCi0jOiBkaWZmLmM6NDc0MworIzogZGlmZi5jOjQ3OTgKICMsIGMtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHBhcnNlIC0tc3VibW9kdWxlIG9wdGlvbiBwYXJhbWV0ZXI6ICclcyciCi1tc2dzdHIgIkfhurdwIGzhu5dpIGtoaSBwaMOibiB0w61jaCDEkeG7kWkgc+G7kSB0w7l5IGNo4buNbiAtLXN1Ym1vZHVsZTog4oCcJXPigJ0iCittc2dpZCAidW5rbm93biBjaGFuZ2UgY2xhc3MgJyVjJyBpbiAtLWRpZmYtZmlsdGVyPSVzIgorbXNnc3RyICJraMO0bmcgaGnhu4N1IGzhu5twIHRoYXkgxJHhu5VpIOKAnCVj4oCdIHRyb25nIC0tZGlmZi1maWx0ZXI9JXMiCiAKLSM6IGRpZmYuYzo1ODIzCisjOiBkaWZmLmM6NDgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHZhbHVlIGFmdGVyIHdzLWVycm9yLWhpZ2hsaWdodD0lLipzIgorbXNnc3RyICJraMO0bmcgaGnhu4N1IGdpw6EgdHLhu4sgc2F1IHdzLWVycm9yLWhpZ2hsaWdodD0lLipzIgorCisjOiBkaWZmLmM6NDgzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gZ2nhuqNpIOKAnCVz4oCdIgorCisjOiBkaWZmLmM6NDg4NiBkaWZmLmM6NDg5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBleHBlY3RzIDxuPi88bT4gZm9ybSIKK21zZ3N0ciAiJXMgY+G6p24gZOG6oW5nIDxuPi88bT4iCisKKyM6IGRpZmYuYzo0OTA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBjaGFyYWN0ZXIsIGdvdCAnJXMnIgorbXNnc3RyICIlcyBj4bqnbiBt4buZdCBrw70gdOG7sSwgbmjGsG5nIGzhuqFpIG5o4bqtbiDEkcaw4bujYyDigJwlc+KAnSIKKworIzogZGlmZi5jOjQ5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIC0tY29sb3ItbW92ZWQgYXJndW1lbnQ6ICVzIgorbXNnc3RyICLEkeG7kWkgc+G7kSAtLWNvbG9yLW1vdmVkIHNhaTogJXMiCisKKyM6IGRpZmYuYzo0OTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgbW9kZSAnJXMnIGluIC0tY29sb3ItbW92ZWQtd3MiCittc2dzdHIgImNo4bq/IMSR4buZIOKAnCVz4oCdIGtow7RuZyBo4bujcCBs4buHIHRyb25nIC0tY29sb3ItbW92ZWQtd3MiCisKKyM6IGRpZmYuYzo0OTg0Cittc2dpZCAiIgorIm9wdGlvbiBkaWZmLWFsZ29yaXRobSBhY2NlcHRzIFwibXllcnNcIiwgXCJtaW5pbWFsXCIsIFwicGF0aWVuY2VcIiBhbmQgIgorIlwiaGlzdG9ncmFtXCIiCittc2dzdHIgIiIKKyJ0w7l5IGNo4buNbiAgZGlmZi1hbGdvcml0aG0gY2jhuqVwIG5o4bqtbiBcIm15ZXJzXCIsIFwibWluaW1hbFwiLCBcInBhdGllbmNlXCIgdsOgICIKKyJcImhpc3RvZ3JhbVwiIgorCisjOiBkaWZmLmM6NTAyMCBkaWZmLmM6NTA0MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGFyZ3VtZW50IHRvICVzIgorbXNnc3RyICJ0aGFtIHPhu5EgY2hvICVzIGtow7RuZyBo4bujcCBs4buHIgorCisjOiBkaWZmLmM6NTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgLS1zdWJtb2R1bGUgb3B0aW9uIHBhcmFtZXRlcjogJyVzJyIKK21zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHBow6JuIHTDrWNoIMSR4buRaSBz4buRIHTDuXkgY2jhu41uIC0tc3VibW9kdWxlOiDigJwlc+KAnSIKKworIzogZGlmZi5jOjUyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIC0td29yZC1kaWZmIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAixJHhu5FpIHPhu5EgLS13b3JkLWRpZmYgc2FpOiAlcyIKKworIzogZGlmZi5jOjUyNTcKK21zZ2lkICJEaWZmIG91dHB1dCBmb3JtYXQgb3B0aW9ucyIKK21zZ3N0ciAiQ8OhYyB0w7l5IGNo4buNbiDEkeG7i25oIGThuqFuZyBraGkgeHXhuqV0IGPDoWMga2jDoWMgYmnhu4d0IgorCisjOiBkaWZmLmM6NTI1OSBkaWZmLmM6NTI2NQorbXNnaWQgImdlbmVyYXRlIHBhdGNoIgorbXNnc3RyICJ04bqhbyBtaeG6v25nIHbDoSIKKworIzogZGlmZi5jOjUyNjIgYnVpbHRpbi9sb2cuYzoxNzMKK21zZ2lkICJzdXBwcmVzcyBkaWZmIG91dHB1dCIKK21zZ3N0ciAiY2jhurduIG3hu41pIGvhur90IHh14bqldCB04burIGRpZmYiCisKKyM6IGRpZmYuYzo1MjY3IGRpZmYuYzo1MzgxIGRpZmYuYzo1Mzg4Cittc2dpZCAiPG4+IgorbXNnc3RyICI8bj4iCisKKyM6IGRpZmYuYzo1MjY4IGRpZmYuYzo1MjcxCittc2dpZCAiZ2VuZXJhdGUgZGlmZnMgd2l0aCA8bj4gbGluZXMgY29udGV4dCIKK21zZ3N0ciAidOG6oW8ga2jDoWMgYmnhu4d0IHbhu5tpIDxuPiBkw7JuZyBuZ+G7ryBj4bqjbmgiCisKKyM6IGRpZmYuYzo1MjczCittc2dpZCAiZ2VuZXJhdGUgdGhlIGRpZmYgaW4gcmF3IGZvcm1hdCIKK21zZ3N0ciAidOG6oW8ga2jDoWMgYmnhu4d0IOG7nyDEkeG7i25oIGThuqFuZyB0aMO0IgorCisjOiBkaWZmLmM6NTI3NgorbXNnaWQgInN5bm9ueW0gZm9yICctcCAtLXJhdyciCittc2dzdHIgIsSR4buTbmcgbmdoxKlhIHbhu5tpIOKAnC1wIC0tcmF34oCdIgorCisjOiBkaWZmLmM6NTI4MAorbXNnaWQgInN5bm9ueW0gZm9yICctcCAtLXN0YXQnIgorbXNnc3RyICLEkeG7k25nIG5naMSpYSB24bubaSDigJwtcCAtLXN0YXTigJ0iCisKKyM6IGRpZmYuYzo1Mjg0Cittc2dpZCAibWFjaGluZSBmcmllbmRseSAtLXN0YXQiCittc2dzdHIgIi0tc3RhdCB0aHXhuq1uIHRp4buHbiBjaG8gbcOheSDEkeG7jWMiCisKKyM6IGRpZmYuYzo1Mjg3Cittc2dpZCAib3V0cHV0IG9ubHkgdGhlIGxhc3QgbGluZSBvZiAtLXN0YXQiCittc2dzdHIgImNo4buJIHh14bqldCBuaOG7r25nIGTDsm5nIGN14buRaSBj4bunYSAtLXN0YXQiCisKKyM6IGRpZmYuYzo1Mjg5IGRpZmYuYzo1Mjk3Cittc2dpZCAiPHBhcmFtMSxwYXJhbTI+Li4uIgorbXNnc3RyICI8dGhhbV9z4buRXzEsdGhhbV9z4buRXzI+4oCmIgorCisjOiBkaWZmLmM6NTI5MAorbXNnaWQgIiIKKyJvdXRwdXQgdGhlIGRpc3RyaWJ1dGlvbiBvZiByZWxhdGl2ZSBhbW91bnQgb2YgY2hhbmdlcyBmb3IgZWFjaCBzdWItZGlyZWN0b3J5IgorbXNnc3RyICLEkeG6p3UgcmEgcGjDom4gcGjhu5FpIGPhu6dhIHPhu5EgbMaw4bujbmcgdGhheSDEkeG7lWkgdMawxqFuZyDEkeG7kWkgY2hvIG3hu5dpIHRoxrAgbeG7pWMgY29uIgorCisjOiBkaWZmLmM6NTI5NAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1jdW11bGF0aXZlIgorbXNnc3RyICLEkeG7k25nIG5naMSpYSB24bubaSAtLWRpcnN0YXQ9Y3VtdWxhdGl2ZSIKKworIzogZGlmZi5jOjUyOTgKK21zZ2lkICJzeW5vbnltIGZvciAtLWRpcnN0YXQ9ZmlsZXMscGFyYW0xLHBhcmFtMi4uLiIKK21zZ3N0ciAixJHhu5NuZyBuZ2jEqWEgduG7m2kgLS1kaXJzdGF0PWZpbGVzLHBhcmFtMSxwYXJhbTLigKYiCisKKyM6IGRpZmYuYzo1MzAyCittc2dpZCAid2FybiBpZiBjaGFuZ2VzIGludHJvZHVjZSBjb25mbGljdCBtYXJrZXJzIG9yIHdoaXRlc3BhY2UgZXJyb3JzIgorbXNnc3RyICIiCisiY+G6o25oIGLDoW8gbuG6v3UgY8OhYyB0aGF5IMSR4buVaSDEkcawYSByYSBjw6FjIGLhu5kgdOG6oW8geHVuZyDEkeG7mXQgaGF5IGzhu5dpIGtob+G6o25nIHRy4bqvbmciCisKKyM6IGRpZmYuYzo1MzA1Cittc2dpZCAiY29uZGVuc2VkIHN1bW1hcnkgc3VjaCBhcyBjcmVhdGlvbnMsIHJlbmFtZXMgYW5kIG1vZGUgY2hhbmdlcyIKK21zZ3N0ciAidOG7lW5nIGjhu6NwIGThuqFuZyB4w7pjIHTDrWNoIG5oxrAgbMOgIHThuqFvLCDEkeG7lWkgdMOqbiB2w6AgY8OhYyB0aGF5IMSR4buVaSBjaOG6vyDEkeG7mSIKKworIzogZGlmZi5jOjUzMDgKK21zZ2lkICJzaG93IG9ubHkgbmFtZXMgb2YgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAiY2jhu4kgaGnhu4NuIHRo4buLIHTDqm4gY+G7p2EgY8OhYyB04bqtcCB0aW4gxJHhu5VpIgorCisjOiBkaWZmLmM6NTMxMQorbXNnaWQgInNob3cgb25seSBuYW1lcyBhbmQgc3RhdHVzIG9mIGNoYW5nZWQgZmlsZXMiCittc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyB0w6puIHThuq1wIHRpbiB2w6AgdMOsbmggdHLhuqFuZyBj4bunYSBjw6FjIHThuq1wIHRpbiBi4buLIHRoYXkgxJHhu5VpIgorCisjOiBkaWZmLmM6NTMxMworbXNnaWQgIjx3aWR0aD5bLDxuYW1lLXdpZHRoPlssPGNvdW50Pl1dIgorbXNnc3RyICI8cuG7mW5nPlssPG5hbWUtd2lkdGg+Wyw8c+G7kS1sxrDhu6NuZz5dXSIKKworIzogZGlmZi5jOjUzMTQKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCIKK21zZ3N0ciAidOG6oW8gZGlmZnN0YXQiCisKKyM6IGRpZmYuYzo1MzE2IGRpZmYuYzo1MzE5IGRpZmYuYzo1MzIyCittc2dpZCAiPHdpZHRoPiIKK21zZ3N0ciAiPHLhu5luZz4iCisKKyM6IGRpZmYuYzo1MzE3Cittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBhIGdpdmVuIHdpZHRoIgorbXNnc3RyICJ04bqhbyBkaWZmc3RhdCB24bubaSDEkeG7mSBy4buZbmcgxJHDoyBjaG8iCisKKyM6IGRpZmYuYzo1MzIwCittc2dpZCAiZ2VuZXJhdGUgZGlmZnN0YXQgd2l0aCBhIGdpdmVuIG5hbWUgd2lkdGgiCittc2dzdHIgInThuqFvIGRpZmZzdGF0IHbhu5tpIHTDqm4gxJHhu5kgcuG7mW5nIMSRw6MgY2hvIgorCisjOiBkaWZmLmM6NTMyMworbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBncmFwaCB3aWR0aCIKK21zZ3N0ciAidOG6oW8gZGlmZnN0YXQgduG7m2kgxJHhu5kgcuG7mW5nIMSR4buTIHRo4buLIMSRw6MgY2hvIgorCisjOiBkaWZmLmM6NTMyNQorbXNnaWQgIjxjb3VudD4iCittc2dzdHIgIjxz4buRX2zGsOG7o25nPiIKKworIzogZGlmZi5jOjUzMjYKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGxpbWl0ZWQgbGluZXMiCittc2dzdHIgInThuqFvIGRpZmZzdGF0IHbhu5tpIGPDoWMgZMOybmcgYuG7iyBnaeG7m2kgaOG6oW4iCisKKyM6IGRpZmYuYzo1MzI5Cittc2dpZCAiZ2VuZXJhdGUgY29tcGFjdCBzdW1tYXJ5IGluIGRpZmZzdGF0IgorbXNnc3RyICJ04bqhbyB04buVbmcgaOG7o3AgeMO6YyB0w61jaCB0cm9uZyBkaWZmc3RhdCIKKworIzogZGlmZi5jOjUzMzIKK21zZ2lkICJvdXRwdXQgYSBiaW5hcnkgZGlmZiB0aGF0IGNhbiBiZSBhcHBsaWVkIgorbXNnc3RyICJ4deG6pXQgcmEgbeG7mXQga2jDoWMgYmnhu4d0IGThuqFuZyBuaOG7iyBwaMOibiBjw6FpIG3DoCBjw7MgdGjhu4MgxJHGsOG7o2Mgw6FwIGThu6VuZyIKKworIzogZGlmZi5jOjUzMzUKK21zZ2lkICJzaG93IGZ1bGwgcHJlLSBhbmQgcG9zdC1pbWFnZSBvYmplY3QgbmFtZXMgb24gdGhlIFwiaW5kZXhcIiBsaW5lcyIKK21zZ3N0ciAiIgorImhp4buDbiB0aOG7iyDEkeG6p3kgxJHhu6cgY8OhYyB0w6puIMSR4buRaSB0xrDhu6NuZyBwcmUtIHbDoCBwb3N0LWltYWdlIHRyw6puIGPDoWMgZMOybmcgXCJt4bulYyBs4bulYyIKKyJcIiIKKworIzogZGlmZi5jOjUzMzcKK21zZ2lkICJzaG93IGNvbG9yZWQgZGlmZiIKK21zZ3N0ciAiaGnhu4NuIHRo4buLIHRoYXkgxJHhu5VpIMSRxrDhu6NjIHTDtCBtw6B1IgorCisjOiBkaWZmLmM6NTMzOAorbXNnaWQgIjxraW5kPiIKK21zZ3N0ciAiPGtp4buDdT4iCisKKyM6IGRpZmYuYzo1MzM5Cittc2dpZCAiIgorImhpZ2hsaWdodCB3aGl0ZXNwYWNlIGVycm9ycyBpbiB0aGUgJ2NvbnRleHQnLCAnb2xkJyBvciAnbmV3JyBsaW5lcyBpbiB0aGUgIgorImRpZmYiCittc2dzdHIgIiIKKyJ0w7Qgc8OhbmcgY8OhYyBs4buXaSB24buBIGtob+G6o25nIHRy4bqvbmcgdHJvbmcgY8OhYyBkw7JuZyDigJxjb250ZXh04oCdLCDigJxvbGTigJ0gdsOgIOKAnG5ld+KAnSAiCisidHJvbmcga2jDoWMgYmnhu4d0IgorCisjOiBkaWZmLmM6NTM0MgorbXNnaWQgIiIKKyJkbyBub3QgbXVuZ2UgcGF0aG5hbWVzIGFuZCB1c2UgTlVMcyBhcyBvdXRwdXQgZmllbGQgdGVybWluYXRvcnMgaW4gLS1yYXcgb3IgIgorIi0tbnVtc3RhdCIKK21zZ3N0ciAiIgorImtow7RuZyBtdW5nZSB0w6puIMSRxrDhu51uZyBk4bqrbiB2w6Agc+G7rSBk4bulbmcgTlVMIGzDoG0gYuG7mSBwaMOibiB0w6FjaCB0csaw4budbmcgxJHhuqd1IHJhICIKKyJ0cm9uZyAtLXJhdyBoYXkgLS1udW1zdGF0IgorCisjOiBkaWZmLmM6NTM0NSBkaWZmLmM6NTM0OCBkaWZmLmM6NTM1MSBkaWZmLmM6NTQ1NworbXNnaWQgIjxwcmVmaXg+IgorbXNnc3RyICI8dGnhu4FuX3Thu5E+IgorCisjOiBkaWZmLmM6NTM0NgorbXNnaWQgInNob3cgdGhlIGdpdmVuIHNvdXJjZSBwcmVmaXggaW5zdGVhZCBvZiBcImEvXCIiCittc2dzdHIgImhp4buDbiB0aOG7iyB0aeG7gW4gdOG7kSBuZ3Xhu5NuIMSRw6MgY2hvIHRoYXkgY2hvIFwiYS9cIiIKKworIzogZGlmZi5jOjUzNDkKK21zZ2lkICJzaG93IHRoZSBnaXZlbiBkZXN0aW5hdGlvbiBwcmVmaXggaW5zdGVhZCBvZiBcImIvXCIiCittc2dzdHIgImhp4buDbiB0aOG7iyB0aeG7gW4gdOG7kSDEkcOtY2ggxJHDoyBjaG8gdGhheSBjaG8gXCJiL1wiIgorCisjOiBkaWZmLmM6NTM1MgorbXNnaWQgInByZXBlbmQgYW4gYWRkaXRpb25hbCBwcmVmaXggdG8gZXZlcnkgbGluZSBvZiBvdXRwdXQiCittc2dzdHIgInRyZW8gdsOgbyB0csaw4bubYyBt4buZdCB0aeG7gW4gdOG7kSBi4buVIHN1bmcgY2hvIG3hu5dpIGTDsm5nIGvhur90IHh14bqldCIKKworIzogZGlmZi5jOjUzNTUKK21zZ2lkICJkbyBub3Qgc2hvdyBhbnkgc291cmNlIG9yIGRlc3RpbmF0aW9uIHByZWZpeCIKK21zZ3N0ciAixJHhu6tuZyBoaeG7g24gdGjhu4sgYuG6pXQga+G7syB0aeG7gW4gdOG7kSBuZ3Xhu5NuIGhheSDEkcOtY2giCisKKyM6IGRpZmYuYzo1MzU4Cittc2dpZCAic2hvdyBjb250ZXh0IGJldHdlZW4gZGlmZiBodW5rcyB1cCB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiBsaW5lcyIKK21zZ3N0ciAiIgorImhp4buDbiB0aOG7iyBuZ+G7ryBj4bqjbmggZ2nhu69hIGPDoWMga2jDumMga2jDoWMgYmnhu4d0IGtoaSDEkeG6oXQgxJHhur9uIHPhu5EgbMaw4bujbmcgZMOybmcgxJHDoyBjaOG7iSAiCisixJHhu4tuaCIKKworIzogZGlmZi5jOjUzNjIgZGlmZi5jOjUzNjcgZGlmZi5jOjUzNzIKK21zZ2lkICI8Y2hhcj4iCittc2dzdHIgIjxrw71fdOG7sT4iCisKKyM6IGRpZmYuYzo1MzYzCittc2dpZCAic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGEgbmV3IGxpbmUgaW5zdGVhZCBvZiAnKyciCittc2dzdHIgImNo4buJIMSR4buLbmggbeG7mXQga8O9IHThu7EgxJHhu4MgYmnhu4N1IHRo4buLIG3hu5l0IGTDsm5nIMSRxrDhu6NjIHRow6ptIG3hu5tpIHRoYXkgY2hvIOKAnCvigJ0iCisKKyM6IGRpZmYuYzo1MzY4Cittc2dpZCAic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGFuIG9sZCBsaW5lIGluc3RlYWQgb2YgJy0nIgorbXNnc3RyICJjaOG7iSDEkeG7i25oIG3hu5l0IGvDvSB04buxIMSR4buDIGJp4buDdSB0aOG7iyBt4buZdCBkw7JuZyDEkcOjIGPFqSB0aGF5IGNobyDigJwt4oCdIgorCisjOiBkaWZmLmM6NTM3MworbXNnaWQgInNwZWNpZnkgdGhlIGNoYXJhY3RlciB0byBpbmRpY2F0ZSBhIGNvbnRleHQgaW5zdGVhZCBvZiAnICciCittc2dzdHIgImNo4buJIMSR4buLbmggbeG7mXQga8O9IHThu7EgxJHhu4MgYmnhu4N1IHRo4buLIG3hu5l0IG5n4buvIGPhuqNuaCB0aGF5IGNobyDigJzigJ0iCisKKyM6IGRpZmYuYzo1Mzc2Cittc2dpZCAiRGlmZiByZW5hbWUgb3B0aW9ucyIKK21zZ3N0ciAiVMO5eSBjaOG7jW4ga2jDoWMgYmnhu4d0IMSR4buVaSB0w6puIgorCisjOiBkaWZmLmM6NTM3NworbXNnaWQgIjxuPlsvPG0+XSIKK21zZ3N0ciAiPG4+Wy88bT5dIgorCisjOiBkaWZmLmM6NTM3OAorbXNnaWQgImJyZWFrIGNvbXBsZXRlIHJld3JpdGUgY2hhbmdlcyBpbnRvIHBhaXJzIG9mIGRlbGV0ZSBhbmQgY3JlYXRlIgorbXNnc3RyICJuZ+G6r3QgY8OhYyB0aGF5IMSR4buVaSBnaGkgbOG6oWkgaG/DoG4gdGhp4buHbiB0aMOgbmggY+G6t3AgY+G7p2EgeMOzYSB2w6AgdOG6oW8iCisKKyM6IGRpZmYuYzo1MzgyCittc2dpZCAiZGV0ZWN0IHJlbmFtZXMiCittc2dzdHIgImTDsiB0w6xtIGPDoWMgdMOqbiB0aGF5IMSR4buVaSIKKworIzogZGlmZi5jOjUzODYKK21zZ2lkICJvbWl0IHRoZSBwcmVpbWFnZSBmb3IgZGVsZXRlcyIKK21zZ3N0ciAiYuG7jyBxdWEgcHJlaW1hZ2UgKHRp4buBbiDhuqNuaD8/KSBjaG8gY8OhYyB2aeG7h2MgeMOzYSIKKworIzogZGlmZi5jOjUzODkKK21zZ2lkICJkZXRlY3QgY29waWVzIgorbXNnc3RyICJkw7IgYuG6o24gc2FvIgorCisjOiBkaWZmLmM6NTM5MworbXNnaWQgInVzZSB1bm1vZGlmaWVkIGZpbGVzIGFzIHNvdXJjZSB0byBmaW5kIGNvcGllcyIKK21zZ3N0ciAiZMO5bmcgY8OhYyB04bqtcCB0aW4ga2jDtG5nIGLhu4sgY2jhu4luaCBz4butYSBuaMawIGzDoCBuZ3Xhu5NuIMSR4buDIHTDrG0gY8OhYyBi4bqjbiBzYW8iCisKKyM6IGRpZmYuYzo1Mzk1Cittc2dpZCAiZGlzYWJsZSByZW5hbWUgZGV0ZWN0aW9uIgorbXNnc3RyICJ04bqvdCBkw7IgdMOsbSDEkeG7lWkgdMOqbiIKKworIzogZGlmZi5jOjUzOTgKK21zZ2lkICJ1c2UgZW1wdHkgYmxvYnMgYXMgcmVuYW1lIHNvdXJjZSIKK21zZ3N0ciAiZMO5bmcgY8OhYyBibG9iIHRy4buRbmcgcuG7kW5nIG5oxrAgbMOgIG5ndeG7k24gxJHhu5VpIHTDqm4iCisKKyM6IGRpZmYuYzo1NDAwCittc2dpZCAiY29udGludWUgbGlzdGluZyB0aGUgaGlzdG9yeSBvZiBhIGZpbGUgYmV5b25kIHJlbmFtZXMiCittc2dzdHIgInRp4bq/cCB04bulYyBsaeG7h3Qga8OqIGzhu4tjaCBz4butIGPhu6dhIG3hu5l0IHThuq1wIHRpbiBuZ2/DoGkgxJHhu5VpIHTDqm4iCisKKyM6IGRpZmYuYzo1NDAzCittc2dpZCAiIgorInByZXZlbnQgcmVuYW1lL2NvcHkgZGV0ZWN0aW9uIGlmIHRoZSBudW1iZXIgb2YgcmVuYW1lL2NvcHkgdGFyZ2V0cyBleGNlZWRzICIKKyJnaXZlbiBsaW1pdCIKK21zZ3N0ciAiIgorIm5nxINuIGPhuqNuIGTDsiB0w6xtIMSR4buVaSB0w6puL2LhuqNuIHNhbyBu4bq/dSBz4buRIGzGsOG7o25nIGPhu6dhIMSRw61jaCDEkeG7lWkgdMOqbi9i4bqjbiBzYW8gdsaw4bujdCAiCisicXXDoSBnaeG7m2kgaOG6oW4gxJHGsGEgcmEiCisKKyM6IGRpZmYuYzo1NDA1Cittc2dpZCAiRGlmZiBhbGdvcml0aG0gb3B0aW9ucyIKK21zZ3N0ciAiVMO5eSBjaOG7jW4gdGh14bqtdCB0b8OhbiBraMOhYyBiaeG7h3QiCisKKyM6IGRpZmYuYzo1NDA3Cittc2dpZCAicHJvZHVjZSB0aGUgc21hbGxlc3QgcG9zc2libGUgZGlmZiIKK21zZ3N0ciAic+G6o24gc2luaCBraMOhYyBiaeG7h3Qgw610IG5o4bqldCBjw7MgdGjhu4MiCisKKyM6IGRpZmYuYzo1NDEwCittc2dpZCAiaWdub3JlIHdoaXRlc3BhY2Ugd2hlbiBjb21wYXJpbmcgbGluZXMiCittc2dzdHIgImzhu50gxJFpIHPhu7EgdGhheSDEkeG7lWkgZG8ga2hv4bqjbmcgdHLhuq9uZyBnw6J5IHJhIGtoaSBzbyBzw6FuaCBjw6FjIGTDsm5nIgorCisjOiBkaWZmLmM6NTQxMworbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIGFtb3VudCBvZiB3aGl0ZXNwYWNlIgorbXNnc3RyICJs4budIMSRaSBz4buxIHRoYXkgxJHhu5VpIGRvIHPhu5EgbMaw4bujbmcga2hv4bqjbmcgdHLhuq9uZyBnw6J5IHJhIgorCisjOiBkaWZmLmM6NTQxNgorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIHdoaXRlc3BhY2UgYXQgRU9MIgorbXNnc3RyICJs4budIMSRaSBz4buxIHRoYXkgxJHhu5VpIGRvIGtob+G6o25nIHRy4bqvbmcgZ8OieSByYSBraGkg4bufIGN14buRaSBkw7JuZyBFT0wiCisKKyM6IGRpZmYuYzo1NDE5Cittc2dpZCAiaWdub3JlIGNhcnJpZXItcmV0dXJuIGF0IHRoZSBlbmQgb2YgbGluZSIKK21zZ3N0ciAiYuG7jyBxdWEga8O9IHThu7EgduG7gSDEkeG6p3UgZMOybmcgdOG6oWkgY3Xhu5FpIGTDsm5nIgorCisjOiBkaWZmLmM6NTQyMgorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIHdob3NlIGxpbmVzIGFyZSBhbGwgYmxhbmsiCittc2dzdHIgImLhu48gcXVhIGPDoWMgdGhheSDEkeG7lWkgY2hvIHRvw6BuIGLhu5kgY8OhYyBkw7JuZyBsw6AgdHLhu5FuZyIKKworIzogZGlmZi5jOjU0MjUKK21zZ2lkICJoZXVyaXN0aWMgdG8gc2hpZnQgZGlmZiBodW5rIGJvdW5kYXJpZXMgZm9yIGVhc3kgcmVhZGluZyIKK21zZ3N0ciAiaGV1cmlzdGljIMSR4buDIGThu4tjaCBo4bqhbiBiacOqbiBj4bunYSBraOG7kWkga2jDoWMgYmnhu4d0IGNobyBk4buFIMSR4buNYyIKKworIzogZGlmZi5jOjU0MjgKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcInBhdGllbmNlIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgInThuqFvIGtow6FjIGJp4buHdCBz4butIGR1bmcgdGh14bqtdCB0b8OhbiBcInBhdGllbmNlIGRpZmZcIiIKKworIzogZGlmZi5jOjU0MzIKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcImhpc3RvZ3JhbSBkaWZmXCIgYWxnb3JpdGhtIgorbXNnc3RyICJ04bqhbyBraMOhYyBiaeG7h3Qgc+G7rSBkdW5nIHRodeG6rXQgdG/DoW4gXCJoaXN0b2dyYW0gZGlmZlwiIgorCisjOiBkaWZmLmM6NTQzNAorbXNnaWQgIjxhbGdvcml0aG0+IgorbXNnc3RyICI8dGh14bqtdCB0b8Ohbj4iCisKKyM6IGRpZmYuYzo1NDM1Cittc2dpZCAiY2hvb3NlIGEgZGlmZiBhbGdvcml0aG0iCittc2dzdHIgImNo4buNbiBt4buZdCB0aHXhuq10IHRvw6FuIGtow6FjIGJp4buHdCIKKworIzogZGlmZi5jOjU0MzcKK21zZ2lkICI8dGV4dD4iCittc2dzdHIgIjx2xINuIGLhuqNuPiIKKworIzogZGlmZi5jOjU0MzgKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcImFuY2hvcmVkIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgInThuqFvIGtow6FjIGJp4buHdCBz4butIGR1bmcgdGh14bqtdCB0b8OhbiBcImFuY2hvcmVkIGRpZmZcIiIKKworIzogZGlmZi5jOjU0NDAgZGlmZi5jOjU0NDkgZGlmZi5jOjU0NTIKK21zZ2lkICI8bW9kZT4iCittc2dzdHIgIjxjaOG6vyDEkeG7mT4iCisKKyM6IGRpZmYuYzo1NDQxCittc2dpZCAic2hvdyB3b3JkIGRpZmYsIHVzaW5nIDxtb2RlPiB0byBkZWxpbWl0IGNoYW5nZWQgd29yZHMiCittc2dzdHIgIiIKKyJoaeG7g24gdGjhu4sga2jDoWMgYmnhu4d0IHThu6ssIHPhu60gZOG7pW5nIDxjaOG6vyDEkeG7mT4gxJHhu4MgYuG7jyBnaeG7m2kgaOG6oW4gY8OhYyB04burIGLhu4sgdGhheSDEkeG7lWkiCisKKyM6IGRpZmYuYzo1NDQzIGRpZmYuYzo1NDQ2IGRpZmYuYzo1NDkxCittc2dpZCAiPHJlZ2V4PiIKK21zZ3N0ciAiPHJlZ2V4PiIKKworIzogZGlmZi5jOjU0NDQKK21zZ2lkICJ1c2UgPHJlZ2V4PiB0byBkZWNpZGUgd2hhdCBhIHdvcmQgaXMiCittc2dzdHIgImTDuW5nIDxyZWdleD4gxJHhu4MgcXV54bq/dCDEkeG7i25oIHThu6sgbMOgIGPDoWkgZ8OsIgorCisjOiBkaWZmLmM6NTQ0NworbXNnaWQgImVxdWl2YWxlbnQgdG8gLS13b3JkLWRpZmY9Y29sb3IgLS13b3JkLWRpZmYtcmVnZXg9PHJlZ2V4PiIKK21zZ3N0ciAidMawxqFuZyDEkcawxqFuZyB24bubaSAtLXdvcmQtZGlmZj1jb2xvciAtLXdvcmQtZGlmZi1yZWdleD08cmVnZXg+IgorCisjOiBkaWZmLmM6NTQ1MAorbXNnaWQgIm1vdmVkIGxpbmVzIG9mIGNvZGUgYXJlIGNvbG9yZWQgZGlmZmVyZW50bHkiCittc2dzdHIgImPDoWMgZMOybmcgZGkgY2h1eeG7g24gY+G7p2EgbcOjIG3DoCDEkcaw4bujYyB0w7QgbcOgdSBraMOhYyBuaGF1IgorCisjOiBkaWZmLmM6NTQ1MworbXNnaWQgImhvdyB3aGl0ZSBzcGFjZXMgYXJlIGlnbm9yZWQgaW4gLS1jb2xvci1tb3ZlZCIKK21zZ3N0ciAiY8OhY2ggYuG7jyBxdWEga2hv4bqjbmcgdHLhuq9uZyB0cm9uZyAtLWNvbG9yLW1vdmVkIgorCisjOiBkaWZmLmM6NTQ1NgorbXNnaWQgIk90aGVyIGRpZmYgb3B0aW9ucyIKK21zZ3N0ciAiQ8OhYyB0w7l5IGNo4buNbiBraMOhYyBiaeG7h3Qga2jDoWMiCisKKyM6IGRpZmYuYzo1NDU4Cittc2dpZCAid2hlbiBydW4gZnJvbSBzdWJkaXIsIGV4Y2x1ZGUgY2hhbmdlcyBvdXRzaWRlIGFuZCBzaG93IHJlbGF0aXZlIHBhdGhzIgorbXNnc3RyICIiCisia2hpIGNo4bqheSB04burIHRoxrAgbeG7pWMgY29uLCB0aOG7sWMgdGhpIGPDoWMgdGhheSDEkeG7lWkgYsOqbiBuZ2/DoGkgdsOgIGhp4buDbiB0aOG7iyBjw6FjICIKKyLEkcaw4budbmcgZOG6q24gbGnDqm4gcXVhbiIKKworIzogZGlmZi5jOjU0NjIKK21zZ2lkICJ0cmVhdCBhbGwgZmlsZXMgYXMgdGV4dCIKK21zZ3N0ciAiY29pIG3hu41pIHThuq1wIHRpbiBsw6AgZOG6oW5nIHbEg24gYuG6o24gdGjGsOG7nW5nIgorCisjOiBkaWZmLmM6NTQ2NAorbXNnaWQgInN3YXAgdHdvIGlucHV0cywgcmV2ZXJzZSB0aGUgZGlmZiIKK21zZ3N0ciAidHLDoW8gxJHhu5VpIGhhaSDEkeG6p3UgdsOgbywgxJHhuqNvIG5nxrDhu6NjIGtow6FjIGJp4buHdCIKKworIzogZGlmZi5jOjU0NjYKK21zZ2lkICJleGl0IHdpdGggMSBpZiB0aGVyZSB3ZXJlIGRpZmZlcmVuY2VzLCAwIG90aGVyd2lzZSIKK21zZ3N0ciAidGhvw6F0IHbhu5tpIG3DoyAxIG7hur91IGtow7RuZyBjw7Mga2jDoWMgYmnhu4d0IGfDrCwgMCBu4bq/dSBuZ8aw4bujYyBs4bqhaSIKKworIzogZGlmZi5jOjU0NjgKK21zZ2lkICJkaXNhYmxlIGFsbCBvdXRwdXQgb2YgdGhlIHByb2dyYW0iCittc2dzdHIgInThuq90IG3hu41pIGvhur90IHh14bqldCBj4bunYSBjaMawxqFuZyB0csOsbmgiCisKKyM6IGRpZmYuYzo1NDcwCittc2dpZCAiYWxsb3cgYW4gZXh0ZXJuYWwgZGlmZiBoZWxwZXIgdG8gYmUgZXhlY3V0ZWQiCittc2dzdHIgImNobyBwaMOpcCBt4buZIGLhu5kgaOG7lyB0cuG7oyB4deG6pXQga2jDoWMgYmnhu4d0IOG7nyBiw6puIG5nb8OgaSDEkcaw4bujYyBwaMOpcCB0aOG7sWMgdGhpIgorCisjOiBkaWZmLmM6NTQ3MgorbXNnaWQgInJ1biBleHRlcm5hbCB0ZXh0IGNvbnZlcnNpb24gZmlsdGVycyB3aGVuIGNvbXBhcmluZyBiaW5hcnkgZmlsZXMiCittc2dzdHIgIiIKKyJjaOG6oXkgY8OhYyBi4buZIGzhu41jIHbEg24gYuG6o24gdGjDtG5nIHRoxrDhu51uZyBiw6puIG5nb8OgaSBraGkgc28gc8OhbmggY8OhYyB04bqtcCB0aW4gbmjhu4sgIgorInBow6JuIgorCisjOiBkaWZmLmM6NTQ3NAorbXNnaWQgIjx3aGVuPiIKK21zZ3N0ciAiPGtoaT4iCisKKyM6IGRpZmYuYzo1NDc1Cittc2dpZCAiaWdub3JlIGNoYW5nZXMgdG8gc3VibW9kdWxlcyBpbiB0aGUgZGlmZiBnZW5lcmF0aW9uIgorbXNnc3RyICJi4buPIHF1YSBjw6FjIHRoYXkgxJHhu5VpIHRyb25nIG3DtC3EkXVuLWNvbiB0cm9uZyBraGkgdOG6oW8ga2jDoWMgYmnhu4d0IgorCisjOiBkaWZmLmM6NTQ3OAorbXNnaWQgIjxmb3JtYXQ+IgorbXNnc3RyICI8xJHhu4tuaCBk4bqhbmc+IgorCisjOiBkaWZmLmM6NTQ3OQorbXNnaWQgInNwZWNpZnkgaG93IGRpZmZlcmVuY2VzIGluIHN1Ym1vZHVsZXMgYXJlIHNob3duIgorbXNnc3RyICJjaGkgxJHhu4tuaCBraMOhYyBiaeG7h3QgYmFvIG5oacOqdSB0cm9uZyBjw6FjIG3DtCDEkXVuIGNvbiDEkcaw4bujYyBoaeG7g24gdGjhu4siCisKKyM6IGRpZmYuYzo1NDgzCittc2dpZCAiaGlkZSAnZ2l0IGFkZCAtTicgZW50cmllcyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAi4bqpbiBjw6FjIG3hu6VjIOKAnGdpdCBhZGQgLU7igJ0gdOG7qyBi4bqjbmcgbeG7pWMgbOG7pWMiCisKKyM6IGRpZmYuYzo1NDg2Cittc2dpZCAidHJlYXQgJ2dpdCBhZGQgLU4nIGVudHJpZXMgYXMgcmVhbCBpbiB0aGUgaW5kZXgiCittc2dzdHIgImNvaSBjw6FjIG3hu6VjIOKAnGdpdCBhZGQgLU7igJ0gbmjGsCBsw6AgY8OzIHRo4bqtdCB0cm9uZyBi4bqjbmcgbeG7pWMgbOG7pWMiCisKKyM6IGRpZmYuYzo1NDg4Cittc2dpZCAiPHN0cmluZz4iCittc2dzdHIgIjxjaHXhu5dpPiIKKworIzogZGlmZi5jOjU0ODkKK21zZ2lkICIiCisibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkICIKKyJzdHJpbmciCittc2dzdHIgIiIKKyJ0w6xtIGPDoWMga2jDoWMgYmnhu4d0IGPDoWkgbcOgIHRoYXkgxJHhu5VpIHPhu5EgbMaw4bujbmcgeOG6o3kgcmEgY+G7p2EgY8OhYyBwaMOhdCBzaW5oIGPhu6dhICIKKyJjaHXhu5dpIMSRxrDhu6NjIGNo4buJIHJhIgorCisjOiBkaWZmLmM6NTQ5MgorbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorInJlZ2V4IgorbXNnc3RyICIiCisidMOsbSBjw6FjIGtow6FjIGJp4buHdCBjw6FpIG3DoCB0aGF5IMSR4buVaSBz4buRIGzGsOG7o25nIHjhuqN5IHJhIGPhu6dhIGPDoWMgcGjDoXQgc2luaCBj4bunYSBiaeG7g3UgIgorInRo4bupYyBjaMOtbmggcXV5IMSRxrDhu6NjIGNo4buJIHJhIgorCisjOiBkaWZmLmM6NTQ5NQorbXNnaWQgInNob3cgYWxsIGNoYW5nZXMgaW4gdGhlIGNoYW5nZXNldCB3aXRoIC1TIG9yIC1HIgorbXNnc3RyICJoaeG7g24gdGjhu4sgdOG6pXQgY+G6oyBjw6FjIHRoYXkgxJHhu5VpIHRyb25nIG3hu5l0IGLhu5kgY8OhYyB0aGF5IMSR4buVaSB24bubaSAtUyBoYXkgLUciCisKKyM6IGRpZmYuYzo1NDk4Cittc2dpZCAidHJlYXQgPHN0cmluZz4gaW4gLVMgYXMgZXh0ZW5kZWQgUE9TSVggcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICJjb2kgPGNodeG7l2k+IHRyb25nIC1TIG5oxrAgbMOgIGJp4buDdSB0aOG7qWMgY2jDrW5oIHF1aSBQT1NJWCBjw7MgbeG7nyBy4buZbmciCisKKyM6IGRpZmYuYzo1NTAxCittc2dpZCAiY29udHJvbCB0aGUgb3JkZXIgaW4gd2hpY2ggZmlsZXMgYXBwZWFyIGluIHRoZSBvdXRwdXQiCittc2dzdHIgIsSRaeG7gXUga2hp4buDbiB0aOG7qSB04buxIHh1w6F0IGhp4buHbiBjw6FjIHThuq1wIHRpbiB0cm9uZyBr4bq/dCB4deG6pXQiCisKKyM6IGRpZmYuYzo1NTAyCittc2dpZCAiPG9iamVjdC1pZD4iCittc2dzdHIgIjxtw6Mtc+G7kS3EkeG7kWktdMaw4bujbmc+IgorCisjOiBkaWZmLmM6NTUwMworbXNnaWQgIiIKKyJsb29rIGZvciBkaWZmZXJlbmNlcyB0aGF0IGNoYW5nZSB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHRoZSBzcGVjaWZpZWQgIgorIm9iamVjdCIKK21zZ3N0ciAiIgorInTDrG0gY8OhYyBraMOhYyBiaeG7h3QgY8OhaSBtw6AgdGhheSDEkeG7lWkgc+G7kSBsxrDhu6NuZyB44bqjeSByYSBj4bunYSBjw6FjIHBow6F0IHNpbmggY+G7p2EgxJHhu5FpICIKKyJ0xrDhu6NuZyDEkcaw4bujYyBjaOG7iSByYSIKKworIzogZGlmZi5jOjU1MDUKK21zZ2lkICJbKEF8Q3xEfE18UnxUfFV8WHxCKS4uLlsqXV0iCittc2dzdHIgIlsoQXxDfER8TXxSfFR8VXxYfEIp4oCmWypdXSIKKworIzogZGlmZi5jOjU1MDYKK21zZ2lkICJzZWxlY3QgZmlsZXMgYnkgZGlmZiB0eXBlIgorbXNnc3RyICJjaOG7jW4gY8OhYyB04bqtcCB0aW4gdGhlbyBraeG7g3Uga2jDoWMgYmnhu4d0IgorCisjOiBkaWZmLmM6NTUwOAorbXNnaWQgIjxmaWxlPiIKK21zZ3N0ciAiPHThuq1wX3Rpbj4iCisKKyM6IGRpZmYuYzo1NTA5Cittc2dpZCAiT3V0cHV0IHRvIGEgc3BlY2lmaWMgZmlsZSIKK21zZ3N0ciAiWHXhuqV0IHJhIG3hu5l0IHThuq1wIHRpbiBj4bulIHRo4buDIgorCisjOiBkaWZmLmM6NjE2NAogbXNnaWQgImluZXhhY3QgcmVuYW1lIGRldGVjdGlvbiB3YXMgc2tpcHBlZCBkdWUgdG8gdG9vIG1hbnkgZmlsZXMuIgogbXNnc3RyICIiCiAibmjhuq1uIHRo4bqleSDEkeG7lWkgdMOqbiBraMO0bmcgY2jDrW5oIHjDoWMgxJHDoyBi4buLIGLhu48gcXVhIGLhu59pIGPDsyBxdcOhIG5oaeG7gXUgdOG6rXAgdGluLiIKIAotIzogZGlmZi5jOjU4MjYKKyM6IGRpZmYuYzo2MTY3CiBtc2dpZCAib25seSBmb3VuZCBjb3BpZXMgZnJvbSBtb2RpZmllZCBwYXRocyBkdWUgdG8gdG9vIG1hbnkgZmlsZXMuIgogbXNnc3RyICIiCiAiY2jhu4kgdMOsbSB0aOG6pXkgY8OhYyBi4bqjbiBzYW8gdOG7qyDEkcaw4budbmcgZOG6q24gxJHDoyBz4butYSDEkeG7lWkgYuG7n2kgdsOsIGPDsyBxdcOhIG5oaeG7gXUgdOG6rXAgdGluLiIKIAotIzogZGlmZi5jOjU4MjkKKyM6IGRpZmYuYzo2MTcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ5b3UgbWF5IHdhbnQgdG8gc2V0IHlvdXIgJXMgdmFyaWFibGUgdG8gYXQgbGVhc3QgJWQgYW5kIHJldHJ5IHRoZSBjb21tYW5kLiIKQEAgLTIyNjIsNDMgKzM2ODEsNjIgQEAKICJi4bqhbiBjw7MgbOG6vSBtdeG7kW4gxJHhurd0IGJp4bq/biAlcyBj4bunYSBi4bqhbiB0aMOgbmggw610IG5o4bqldCBsw6AgJWQgdsOgIHRo4butIGzhuqFpIGzhu4duaCBs4bqnbiAiCiAibuG7r2EuIgogCi0jOiBkaXIuYzo1NzYKKyM6IGRpci5jOjU1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGRpZCBub3QgbWF0Y2ggYW55IGZpbGUocykga25vd24gdG8gZ2l0IgogbXNnc3RyICLEkeG6t2MgdOG6oyDEkcaw4budbmcgZOG6q24g4oCcJXPigJ0ga2jDtG5nIGto4bubcCB24bubaSBi4bqldCBr4buzIHThuq1wIHRpbiBuw6BvIG3DoCBnaXQgYmnhur90IgogCi0jOiBkaXIuYzo5NjUKKyM6IGRpci5jOjY5NSBkaXIuYzo3MjQgZGlyLmM6NzM3CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBwYXR0ZXJuOiAnJXMnIgorbXNnc3RyICJt4bqrdSBraMO0bmcgxJHGsOG7o2MgdGjhu6thIG5o4bqtbjog4oCcJXPigJ0iCisKKyM6IGRpci5jOjc1NCBkaXIuYzo3NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIG5lZ2F0aXZlIHBhdHRlcm46ICclcyciCittc2dzdHIgIm3huqt1IMOibSBraMO0bmcgxJHGsOG7o2MgdGjhu6thIG5o4bqtbjog4oCcJXPigJ0iCisKKyM6IGRpci5jOjc4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ5b3VyIHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBoYXZlIGlzc3VlczogcGF0dGVybiAnJXMnIGlzIHJlcGVhdGVkIgorbXNnc3RyICJ04bqtcCB0aW4gc3BhcnNlLWNoZWNrb3V0IGPhu6dhIGLhuqFuIGPDsyBs4bq9IGfhurdwIGzhu5dpOiBt4bqrdSAnJXMnIMSRw6MgYuG7iyBs4bq3cCBs4bqhaSIKKworIzogZGlyLmM6Nzk2Cittc2dpZCAiZGlzYWJsaW5nIGNvbmUgcGF0dGVybiBtYXRjaGluZyIKK21zZ3N0ciAidsO0IGhp4buHdSBraOG7m3AgbeG6q3UgbsOzbiIKKworIzogZGlyLmM6MTE3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgdXNlICVzIGFzIGFuIGV4Y2x1ZGUgZmlsZSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGTDuW5nICVzIG5oxrAgbMOgIG3hu5l0IHThuq1wIHRpbiBsb+G6oWkgdHLhu6siCiAKLSM6IGRpci5jOjE4ODAKKyM6IGRpci5jOjIxNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHRoxrAgbeG7pWMg4oCcJXPigJ0iCiAKLSM6IGRpci5jOjIxMjIKKyM6IGRpci5jOjI0NzkKIG1zZ2lkICJmYWlsZWQgdG8gZ2V0IGtlcm5lbCBuYW1lIGFuZCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIGzhuqV5IHTDqm4gdsOgIHRow7RuZyB0aW4gY+G7p2EgbmjDom4iCiAKLSM6IGRpci5jOjIyNDYKKyM6IGRpci5jOjI2MDMKIG1zZ2lkICJ1bnRyYWNrZWQgY2FjaGUgaXMgZGlzYWJsZWQgb24gdGhpcyBzeXN0ZW0gb3IgbG9jYXRpb24iCi1tc2dzdHIgImLhu5kgbmjhu5sgdOG6oW0ga2jDtG5nIHRoZW8gduG6v3QgYuG7iyB04bqvdCB0csOqbiBo4buHIHRo4buRbmcgaGF5IHbhu4sgdHLDrSBuw6B5LiIKK21zZ3N0ciAiYuG7mSBuaOG7myB04bqhbSBraMO0bmcgdGhlbyB24bq/dCBi4buLIHThuq90IHRyw6puIGjhu4cgdGjhu5FuZyBoYXkgduG7iyB0csOtIG7DoHkiCiAKLSM6IGRpci5jOjMwNDcKKyM6IGRpci5jOjM0MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IGluIHJlcG8gJXMiCiBtc2dzdHIgInThuq1wIHRpbiBnaGkgYuG6o25nIG3hu6VjIGzhu6VjIGLhu4sgaOG7j25nIHRyb25nIGtobyAlcyIKIAotIzogZGlyLmM6MzA5MiBkaXIuYzozMDk3CisjOiBkaXIuYzozNDUyIGRpci5jOjM0NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcmllcyBmb3IgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyB0aMawIG3hu6VjIGNobyAlcyIKIAotIzogZGlyLmM6MzEyNgorIzogZGlyLmM6MzQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbWlncmF0ZSBnaXQgZGlyZWN0b3J5IGZyb20gJyVzJyB0byAnJXMnIgotbXNnc3RyICJraMO0bmcgdGjhu4MgZGkgY8awIHRoxrAgbeG7pWMgZ2l0IHThu6sg4oCcJXPigJ0gc2FuZyDigJwlc+KAnSIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGRpIGThu51pIHRoxrAgbeG7pWMgZ2l0IHThu6sg4oCcJXPigJ0gc2FuZyDigJwlc+KAnSIKIAogIzogZWRpdG9yLmM6NzMKICMsIGMtZm9ybWF0CkBAIC0yMzA5LDI5OCArMzc0NywyOTAgQEAKIG1zZ2lkICJGaWx0ZXJpbmcgY29udGVudCIKIG1zZ3N0ciAiTuG7mWkgZHVuZyBs4buNYyIKIAotIzogZW50cnkuYzo0NjUKKyM6IGVudHJ5LmM6NDc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0IGZpbGUgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHRo4buRbmcga8OqIHThuq1wIHRpbiDigJwlc+KAnSIKIAotIzogZW52aXJvbm1lbnQuYzoxNTAKKyM6IGVudmlyb25tZW50LmM6MTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBnaXQgbmFtZXNwYWNlIHBhdGggXCIlc1wiIgogbXNnc3RyICLEkcaw4budbmcgZOG6q24ga2jDtG5nIGdpYW4gdMOqbiBnaXQgXCIlc1wiIHNhaSIKIAotIzogZW52aXJvbm1lbnQuYzozMzIKKyM6IGVudmlyb25tZW50LmM6MzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzZXQgR0lUX0RJUiB0byAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhurd0IEdJVF9ESVIgdGjDoG5oIOKAnCVz4oCdIgogCi0jOiBleGVjLWNtZC5jOjM2MQorIzogZXhlYy1jbWQuYzozNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidG9vIG1hbnkgYXJncyB0byBydW4gJXMiCiBtc2dzdHIgInF1w6Egbmhp4buBdSB0aGFtIHPhu5EgxJHhu4MgY2jhuqF5ICVzIgogCi0jOiBmZXRjaC1vYmplY3QuYzoxNwotbXNnaWQgIlJlbW90ZSB3aXRoIG5vIFVSTCIKLW1zZ3N0ciAiTcOheSBjaOG7pyBraMO0bmcgY8OzIMSR4buLYSBjaOG7iSBVUkwiCi0KLSM6IGZldGNoLXBhY2suYzoxNTEKKyM6IGZldGNoLXBhY2suYzoxNTAKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgc2hhbGxvdyBsaXN0IgogbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogY+G6p24gZGFuaCBzw6FjaCBzaGFsbG93IgogCi0jOiBmZXRjaC1wYWNrLmM6MTYzCisjOiBmZXRjaC1wYWNrLmM6MTUzCittc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIGEgZmx1c2ggcGFja2V0IGFmdGVyIHNoYWxsb3cgbGlzdCIKK21zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6IGPhuqduIG3hu5l0IGfDs2kgxJHhuql5IHNhdSBkYW5oIHPDoWNoIHNoYWxsb3ciCisKKyM6IGZldGNoLXBhY2suYzoxNjQKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290IGEgZmx1c2ggcGFja2V0IgogbXNnc3RyICJnaXQgZmV0Y2gtcGFjazogY+G6p24gQUNLL05BSywgbmjGsG5nIGzhuqFpIG5o4bqtbiDEkcaw4bujYyBt4buZdCBnw7NpIGZsdXNoIgogCi0jOiBmZXRjaC1wYWNrLmM6MTgzCisjOiBmZXRjaC1wYWNrLmM6MTg0CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgJyVzJyIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2s6IGPhuqduIEFDSy9OQUssIG5oxrBuZyBs4bqhaSBuaOG6rW4gxJHGsOG7o2Mg4oCcJXPigJ0iCiAKLSM6IGZldGNoLXBhY2suYzoyNTMKKyM6IGZldGNoLXBhY2suYzoxOTUKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gcmVtb3RlIgorbXNnc3RyICJraMO0bmcgdGjhu4MgZ2hpIGzDqm4gbcOheSBwaOG7pWMgduG7pSIKKworIzogZmV0Y2gtcGFjay5jOjI1NwogbXNnaWQgIi0tc3RhdGVsZXNzLXJwYyByZXF1aXJlcyBtdWx0aV9hY2tfZGV0YWlsZWQiCiBtc2dzdHIgIi0tc3RhdGVsZXNzLXJwYyBj4bqnbiBtdWx0aV9hY2tfZGV0YWlsZWQiCiAKLSM6IGZldGNoLXBhY2suYzozNDcgZmV0Y2gtcGFjay5jOjEyNzcKKyM6IGZldGNoLXBhY2suYzozNTYgZmV0Y2gtcGFjay5jOjEzNDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzaGFsbG93IGxpbmU6ICVzIgogbXNnc3RyICJkw7JuZyBzaGFsbG93IGtow7RuZyBo4bujcCBs4buHOiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM1MyBmZXRjaC1wYWNrLmM6MTI4MworIzogZmV0Y2gtcGFjay5jOjM2MiBmZXRjaC1wYWNrLmM6MTM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHVuc2hhbGxvdyBsaW5lOiAlcyIKIG1zZ3N0ciAiZMOybmcgdW5zaGFsbG93IGtow7RuZyBo4bujcCBs4buHOiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjM1NSBmZXRjaC1wYWNrLmM6MTI4NQorIzogZmV0Y2gtcGFjay5jOjM2NCBmZXRjaC1wYWNrLmM6MTM0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3Qgbm90IGZvdW5kOiAlcyIKLW1zZ3N0ciAiS2jDtG5nIHTDrG0gdGjhuqV5IMSR4buRaSB0xrDhu6NuZzogJXMiCittc2dzdHIgImtow7RuZyB0w6xtIHRo4bqleSDEkeG7kWkgdMaw4bujbmc6ICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzU4IGZldGNoLXBhY2suYzoxMjg4CisjOiBmZXRjaC1wYWNrLmM6MzY3IGZldGNoLXBhY2suYzoxMzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIGluIG9iamVjdDogJXMiCiBtc2dzdHIgImzhu5dpIHRyb25nIMSR4buRaSB0xrDhu6NuZzogJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNjAgZmV0Y2gtcGFjay5jOjEyOTAKKyM6IGZldGNoLXBhY2suYzozNjkgZmV0Y2gtcGFjay5jOjEzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc2hhbGxvdyBmb3VuZDogJXMiCiBtc2dzdHIgImtow7RuZyB0w6xtIHNoYWxsb3cgbsOgbzogJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNjMgZmV0Y2gtcGFjay5jOjEyOTMKKyM6IGZldGNoLXBhY2suYzozNzIgZmV0Y2gtcGFjay5jOjEzNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgc2hhbGxvdy91bnNoYWxsb3csIGdvdCAlcyIKIG1zZ3N0ciAiY+G6p24gc2hhbGxvdy91bnNoYWxsb3csIG5oxrBuZyBs4bqhaSBuaOG6rW4gxJHGsOG7o2MgJXMiCiAKLSM6IGZldGNoLXBhY2suYzo0MDQKKyM6IGZldGNoLXBhY2suYzo0MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ290ICVzICVkICVzIgogbXNnc3RyICJuaOG6rW4gJXMgJWQgLSAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjQyMQorIzogZmV0Y2gtcGFjay5jOjQzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbW1pdCAlcyIKIG1zZ3N0ciAibOG6p24gY2h1eeG7g24gZ2lhbyAlcyBraMO0bmcgaOG7o3AgbOG7hyIKIAotIzogZmV0Y2gtcGFjay5jOjQ1MgorIzogZmV0Y2gtcGFjay5jOjQ2MgogbXNnaWQgImdpdmluZyB1cCIKIG1zZ3N0ciAiY2jhu4t1IHRodWEiCiAKLSM6IGZldGNoLXBhY2suYzo0NjQgcHJvZ3Jlc3MuYzoyMjkKKyM6IGZldGNoLXBhY2suYzo0NzUgcHJvZ3Jlc3MuYzozMjMKIG1zZ2lkICJkb25lIgogbXNnc3RyICJ4b25nIgogCi0jOiBmZXRjaC1wYWNrLmM6NDc2CisjOiBmZXRjaC1wYWNrLmM6NDg3CiAjLCBjLWZvcm1hdAogbXNnaWQgImdvdCAlcyAoJWQpICVzIgogbXNnc3RyICJuaOG6rW4gJXMgKCVkKSAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjUyMgorIzogZmV0Y2gtcGFjay5jOjUzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJNYXJraW5nICVzIGFzIGNvbXBsZXRlIgogbXNnc3RyICLEkMOhbmggZOG6pXUgJXMgbMOgIMSRw6MgaG/DoG4gdGjDoG5oIgogCi0jOiBmZXRjaC1wYWNrLmM6NzY0CisjOiBmZXRjaC1wYWNrLmM6NzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImFscmVhZHkgaGF2ZSAlcyAoJXMpIgogbXNnc3RyICLEkcOjIHPhurVuIGPDsyAlcyAoJXMpIgogCi0jOiBmZXRjaC1wYWNrLmM6ODAzCisjOiBmZXRjaC1wYWNrLmM6ODE4CiBtc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiBtc2dzdHIgImZldGNoLXBhY2s6IGtow7RuZyB0aOG7gyBy4bq9IG5ow6FuaCBzaWRlYmFuZCBkZW11bHRpcGxleGVyIgogCi0jOiBmZXRjaC1wYWNrLmM6ODExCisjOiBmZXRjaC1wYWNrLmM6ODI2CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBwYWNrIGhlYWRlciIKIG1zZ3N0ciAibOG7l2kgZ2lhbyB0aOG7qWM6IHBo4bqnbiDEkeG6p3UgZ8OzaSBi4buLIHNhaSIKIAotIzogZmV0Y2gtcGFjay5jOjg3OQorIzogZmV0Y2gtcGFjay5jOjkwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJmZXRjaC1wYWNrOiB1bmFibGUgdG8gZm9yayBvZmYgJXMiCiBtc2dzdHIgImZldGNoLXBhY2s6IGtow7RuZyB0aOG7gyBy4bq9IG5ow6FuaCAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjg5NQorIzogZmV0Y2gtcGFjay5jOjkxNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBmYWlsZWQiCiBtc2dzdHIgIiVzIGfhurdwIGzhu5dpIgogCi0jOiBmZXRjaC1wYWNrLmM6ODk3CisjOiBmZXRjaC1wYWNrLmM6OTE4CiBtc2dpZCAiZXJyb3IgaW4gc2lkZWJhbmQgZGVtdWx0aXBsZXhlciIKIG1zZ3N0ciAiY8OzIGzhu5dpIHRyb25nIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiAKLSM6IGZldGNoLXBhY2suYzo5MjYKLW1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IGNsaWVudHMiCi1tc2dzdHIgIk3DoXkgY2jhu6cga2jDtG5nIGjhu5cgdHLhu6MgbcOheSBraMOhY2ggc2hhbGxvdyIKLQotIzogZmV0Y2gtcGFjay5jOjkzMAotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2tfZGV0YWlsZWQiCi1tc2dzdHIgIk3DoXkgY2jhu6cgaOG7lyB0cuG7oyBtdWx0aV9hY2tfZGV0YWlsZWQiCi0KLSM6IGZldGNoLXBhY2suYzo5MzMKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgbm8tZG9uZSIKLW1zZ3N0ciAiTcOheSBjaOG7pyBo4buXIHRy4bujIG5vLWRvbmUiCi0KLSM6IGZldGNoLXBhY2suYzo5MzkKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgbXVsdGlfYWNrIgotbXNnc3RyICJNw6F5IGNo4bunIGjhu5cgdHLhu6MgbXVsdGlfYWNrIgotCi0jOiBmZXRjaC1wYWNrLmM6OTQzCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIHNpZGUtYmFuZC02NGsiCi1tc2dzdHIgIk3DoXkgY2jhu6cgaOG7lyB0cuG7oyBzaWRlLWJhbmQtNjRrIgotCi0jOiBmZXRjaC1wYWNrLmM6OTQ3Ci1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIHNpZGUtYmFuZCIKLW1zZ3N0ciAiTcOheSBjaOG7pyBo4buXIHRy4bujIHNpZGUtYmFuZCIKLQotIzogZmV0Y2gtcGFjay5jOjk1MQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBhbGxvdy10aXAtc2hhMS1pbi13YW50IgotbXNnc3RyICJNw6F5IGNo4bunIGjhu5cgdHLhu6MgYWxsb3ctdGlwLXNoYTEtaW4td2FudCIKLQotIzogZmV0Y2gtcGFjay5jOjk1NQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBhbGxvdy1yZWFjaGFibGUtc2hhMS1pbi13YW50IgotbXNnc3RyICJNw6F5IGNo4bunIGjhu5cgdHLhu6MgYWxsb3ctcmVhY2hhYmxlLXNoYTEtaW4td2FudCIKLQogIzogZmV0Y2gtcGFjay5jOjk2NQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBvZnMtZGVsdGEiCi1tc2dzdHIgIk3DoXkgY2jhu6cgaOG7lyB0cuG7oyBvZnMtZGVsdGEiCi0KLSM6IGZldGNoLXBhY2suYzo5NzEgZmV0Y2gtcGFjay5jOjExNTgKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgZmlsdGVyIgotbXNnc3RyICJNw6F5IGNo4bunIGjhu5cgdHLhu6MgYuG7mSBs4buNYyIKLQotIzogZmV0Y2gtcGFjay5jOjk3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZXJ2ZXIgdmVyc2lvbiBpcyAlLipzIgogbXNnc3RyICJQaGnDqm4gYuG6o24gbcOheSBjaOG7pyBsw6AgJS4qcyIKIAotIzogZmV0Y2gtcGFjay5jOjk4NQorIzogZmV0Y2gtcGFjay5jOjk3MCBmZXRjaC1wYWNrLmM6OTc2IGZldGNoLXBhY2suYzo5NzkgZmV0Y2gtcGFjay5jOjk4NQorIzogZmV0Y2gtcGFjay5jOjk4OSBmZXRjaC1wYWNrLmM6OTkzIGZldGNoLXBhY2suYzo5OTcgZmV0Y2gtcGFjay5jOjEwMDEKKyM6IGZldGNoLXBhY2suYzoxMDA1IGZldGNoLXBhY2suYzoxMDA5IGZldGNoLXBhY2suYzoxMDEzIGZldGNoLXBhY2suYzoxMDE3CisjOiBmZXRjaC1wYWNrLmM6MTAyMyBmZXRjaC1wYWNrLmM6MTAyOSBmZXRjaC1wYWNrLmM6MTAzNCBmZXRjaC1wYWNrLmM6MTAzOQorIywgYy1mb3JtYXQKK21zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgJXMiCittc2dzdHIgIk3DoXkgY2jhu6cgaOG7lyB0cuG7oyAlcyIKKworIzogZmV0Y2gtcGFjay5jOjk3MgorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2xpZW50cyIKK21zZ3N0ciAiTcOheSBjaOG7pyBraMO0bmcgaOG7lyB0cuG7oyBtw6F5IGtow6FjaCBzaGFsbG93IgorCisjOiBmZXRjaC1wYWNrLmM6MTAzMgogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tc2hhbGxvdy1zaW5jZSIKIG1zZ3N0ciAiTcOheSBjaOG7pyBraMO0bmcgaOG7lyB0cuG7oyAtLXNoYWxsb3ctc2luY2UiCiAKLSM6IGZldGNoLXBhY2suYzo5ODkKKyM6IGZldGNoLXBhY2suYzoxMDM3CiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1zaGFsbG93LWV4Y2x1ZGUiCiBtc2dzdHIgIk3DoXkgY2jhu6cga2jDtG5nIGjhu5cgdHLhu6MgLS1zaGFsbG93LWV4Y2x1ZGUiCiAKLSM6IGZldGNoLXBhY2suYzo5OTEKKyM6IGZldGNoLXBhY2suYzoxMDQxCiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1kZWVwZW4iCiBtc2dzdHIgIk3DoXkgY2jhu6cga2jDtG5nIGjhu5cgdHLhu6MgLS1kZWVwZW4iCiAKLSM6IGZldGNoLXBhY2suYzoxMDA4CisjOiBmZXRjaC1wYWNrLmM6MTA1OAogbXNnaWQgIm5vIGNvbW1vbiBjb21taXRzIgogbXNnc3RyICJraMO0bmcgY8OzIGzhuqduIGNodXnhu4NuIGdpYW8gY2h1bmcgbsOgbyIKIAotIzogZmV0Y2gtcGFjay5jOjEwMjAgZmV0Y2gtcGFjay5jOjE0MTgKKyM6IGZldGNoLXBhY2suYzoxMDcwIGZldGNoLXBhY2suYzoxNTM2CiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGZldGNoIGZhaWxlZC4iCiBtc2dzdHIgImdpdCBmZXRjaC1wYWNrOiBmZXRjaCBn4bq3cCBs4buXaS4iCiAKLSM6IGZldGNoLXBhY2suYzoxMTUzCisjOiBmZXRjaC1wYWNrLmM6MTIwOQogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgcmVxdWVzdHMiCiBtc2dzdHIgIk3DoXkgY2jhu6cga2jDtG5nIGjhu5cgdHLhu6MgecOqdSBj4bqndSBzaGFsbG93IgogCi0jOiBmZXRjaC1wYWNrLmM6MTE5OQorIzogZmV0Y2gtcGFjay5jOjEyMTYKK21zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgZmlsdGVyIgorbXNnc3RyICJNw6F5IGNo4bunIGjhu5cgdHLhu6MgYuG7mSBs4buNYyIKKworIzogZmV0Y2gtcGFjay5jOjEyMzkKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcmVxdWVzdCB0byByZW1vdGUiCittc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgY8OhYyB5w6p1IGPhuqd1IGzDqm4gbcOheSBwaOG7pWMgduG7pSIKKworIzogZmV0Y2gtcGFjay5jOjEyNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcmVhZGluZyBzZWN0aW9uIGhlYWRlciAnJXMnIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhu41jIHBo4bqnbiDEkeG6p3UgY+G7p2EgxJFv4bqhbiAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjEyMDUKKyM6IGZldGNoLXBhY2suYzoxMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkICclcycsIHJlY2VpdmVkICclcyciCiBtc2dzdHIgImPhuqduIOKAnCVz4oCdLCBuaMawbmcgbOG6oWkgbmjhuq1uIOKAnCVz4oCdIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI0NAorIzogZmV0Y2gtcGFjay5jOjEzMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBhY2tub3dsZWRnbWVudCBsaW5lOiAnJXMnIgogbXNnc3RyICJn4bq3cCBkw7JuZyBraMO0bmcgxJHGsOG7o2MgdGjhu6thIG5o4bqtbjog4oCcJXPigJ0iCiAKLSM6IGZldGNoLXBhY2suYzoxMjQ5CisjOiBmZXRjaC1wYWNrLmM6MTMwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIGFja3M6ICVkIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgeOG7rSBsw70gdMOtbiBoaeG7h3UgdHLhuqMgbOG7nWk6ICVkIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI1OQorIzogZmV0Y2gtcGFjay5jOjEzMTgKIG1zZ2lkICJleHBlY3RlZCBwYWNrZmlsZSB0byBiZSBzZW50IGFmdGVyICdyZWFkeSciCiBtc2dzdHIgImPhuqduIHThuq1wIHRpbiBnw7NpIMSR4buDIGfhu61pIHNhdSDigJxyZWFkeeKAnSIKIAotIzogZmV0Y2gtcGFjay5jOjEyNjEKKyM6IGZldGNoLXBhY2suYzoxMzIwCiBtc2dpZCAiZXhwZWN0ZWQgbm8gb3RoZXIgc2VjdGlvbnMgdG8gYmUgc2VudCBhZnRlciBubyAncmVhZHknIgogbXNnc3RyICJraMO0bmcgY+G6p24gdGjDqm0gcGjhuqduIG7DoG8gxJHhu4MgZ+G7rWkgc2F1IOKAnHJlYWR54oCdIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI5OAorIzogZmV0Y2gtcGFjay5jOjEzNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBzaGFsbG93IGluZm86ICVkIgogbXNnc3RyICJs4buXaSB44butIGzDvSB0aMO0bmcgdGluIHNoYWxsb3c6ICVkIgogCi0jOiBmZXRjaC1wYWNrLmM6MTMxNAorIzogZmV0Y2gtcGFjay5jOjE0MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0ZWQgd2FudGVkLXJlZiwgZ290ICclcyciCiBtc2dzdHIgImPhuqduIHdhbnRlZC1yZWYsIG5oxrBuZyBs4bqhaSBuaOG6rW4gxJHGsOG7o2Mg4oCcJXPigJ0iCiAKLSM6IGZldGNoLXBhY2suYzoxMzI0CisjOiBmZXRjaC1wYWNrLmM6MTQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIHdhbnRlZC1yZWY6ICclcyciCi1tc2dzdHIgImtow7RuZyBj4bqnbiB3YW50ZWQtcmVmOiDigJwlc+KAnSIKK21zZ3N0ciAid2FudGVkLXJlZiBraMO0bmcgxJHGsOG7o2MgbW9uZyDEkeG7o2k6IOKAnCVz4oCdIgogCi0jOiBmZXRjaC1wYWNrLmM6MTMyOAorIzogZmV0Y2gtcGFjay5jOjE0MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyB3YW50ZWQgcmVmczogJWQiCiBtc2dzdHIgImzhu5dpIGtoaSB44butIGzDvSB3YW50ZWQgcmVmczogJWQiCiAKLSM6IGZldGNoLXBhY2suYzoxNjQyCisjOiBmZXRjaC1wYWNrLmM6MTc2MgogbXNnaWQgIm5vIG1hdGNoaW5nIHJlbW90ZSBoZWFkIgogbXNnc3RyICJraMO0bmcga2jhu5twIHBo4bqnbiDEkeG6p3UgbcOheSBjaOG7pyIKIAotIzogZmV0Y2gtcGFjay5jOjE2NjAgYnVpbHRpbi9jbG9uZS5jOjY2NAorIzogZmV0Y2gtcGFjay5jOjE3ODUgYnVpbHRpbi9jbG9uZS5jOjY4OQogbXNnaWQgInJlbW90ZSBkaWQgbm90IHNlbmQgYWxsIG5lY2Vzc2FyeSBvYmplY3RzIgogbXNnc3RyICJtw6F5IGNo4bunIMSRw6Mga2jDtG5nIGfhu61pIHThuqV0IGPhuqMgY8OhYyDEkeG7kWkgdMaw4bujbmcgY+G6p24gdGhp4bq/dCIKIAotIzogZmV0Y2gtcGFjay5jOjE2ODYKKyM6IGZldGNoLXBhY2suYzoxODEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggcmVtb3RlIHJlZiAlcyIKLW1zZ3N0ciAiS2jDtG5nIGPDsyBtw6F5IGNo4bunIHRoYW0gY2hp4bq/dSBuw6BvIG5oxrAgJXMiCittc2dzdHIgImtow7RuZyBjw7MgbcOheSBjaOG7pyB0aGFtIGNoaeG6v3UgbsOgbyBuaMawICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY4OQorIzogZmV0Y2gtcGFjay5jOjE4MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IGFsbG93IHJlcXVlc3QgZm9yIHVuYWR2ZXJ0aXNlZCBvYmplY3QgJXMiCiBtc2dzdHIgIiIKICJNw6F5IHBo4bulYyB24bulIGtow7RuZyBjaG8gcGjDqXAgecOqdSBj4bqndSBjaG8gxJHhu5FpIHTGsOG7o25nIGtow7RuZyDEkcaw4bujYyBiw6FvIHRyxrDhu5tjICVzIgogCi0jOiBncGctaW50ZXJmYWNlLmM6MzE4CisjOiBncGctaW50ZXJmYWNlLmM6NDA4CiBtc2dpZCAiZ3BnIGZhaWxlZCB0byBzaWduIHRoZSBkYXRhIgogbXNnc3RyICJncGcgZ+G6t3AgbOG7l2kga2hpIGvDvSBk4buvIGxp4buHdSIKIAotIzogZ3BnLWludGVyZmFjZS5jOjM0NAorIzogZ3BnLWludGVyZmFjZS5jOjQzNAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5IGZpbGUiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyB04bqtcCB0aW4gdOG6oW0gdGjhu51pIgogCi0jOiBncGctaW50ZXJmYWNlLmM6MzQ3CisjOiBncGctaW50ZXJmYWNlLmM6NDM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB3cml0aW5nIGRldGFjaGVkIHNpZ25hdHVyZSB0byAnJXMnIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgZ2hpIGNo4buvIGvDvSDEkcOtbmgga8OobSB2w6BvIOKAnCVz4oCdIgogCi0jOiBncmFwaC5jOjk3CisjOiBncmFwaC5jOjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yZSBpbnZhbGlkIGNvbG9yICclLipzJyBpbiBsb2cuZ3JhcGhDb2xvcnMiCiBtc2dzdHIgImLhu48gcXVhIG3DoHUga2jDtG5nIGjhu6NwIGzhu4cg4oCcJS4qc+KAnSB0cm9uZyBsb2cuZ3JhcGhDb2xvcnMiCiAKLSM6IGdyZXAuYzoyMTEzCisjOiBncmVwLmM6NjY4Cittc2dpZCAiIgorImdpdmVuIHBhdHRlcm4gY29udGFpbnMgTlVMTCBieXRlICh2aWEgLWYgPGZpbGU+KS4gVGhpcyBpcyBvbmx5IHN1cHBvcnRlZCAiCisid2l0aCAtUCB1bmRlciBQQ1JFIHYyIgorbXNnc3RyICIiCisibeG6q3UgxJHDoyBjaG8gY8OzIGNo4bupYSBOVUxMIGJ5dGUgKHF1YSAtZiA8ZmlsZT4pLiDEkGnhu4F1IG7DoHkgY2jhu4kgxJHGsOG7o2MgaOG7lyB0cuG7oyB24bubaSAtIgorIlAgZMaw4bubaSBQQ1JFIHYyIgorCisjOiBncmVwLmM6MjEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiB1bmFibGUgdG8gcmVhZCAlcyIKIG1zZ3N0ciAi4oCcJXPigJ06IGtow7RuZyB0aOG7gyDEkeG7jWMgJXMiCiAKLSM6IGdyZXAuYzoyMTMwIHNldHVwLmM6MTY0IGJ1aWx0aW4vY2xvbmUuYzo0MTAgYnVpbHRpbi9kaWZmLmM6ODEKLSM6IGJ1aWx0aW4vcm0uYzoxMzQKKyM6IGdyZXAuYzoyMTQ1IHNldHVwLmM6MTY2IGJ1aWx0aW4vY2xvbmUuYzo0MTEgYnVpbHRpbi9kaWZmLmM6ODIKKyM6IGJ1aWx0aW4vcm0uYzoxMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0YXQgJyVzJyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIGzhuqV5IHRo4buRbmcga8OqIHbhu4Eg4oCcJXPigJ0iCiAKLSM6IGdyZXAuYzoyMTQxCisjOiBncmVwLmM6MjE1NgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiBzaG9ydCByZWFkIgogbXNnc3RyICLigJwlc+KAnTogxJHhu41jIG5n4bqvbiIKQEAgLTI2NTAsNDggKzQwODAsNDggQEAKIG1zZ3N0ciAiTOG7h25oL2Lhu5kgaOG7j2kg4bufIG3hu6ljIHRo4bqlcCIKIAogIzogaGVscC5jOjM3Ci1tc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gU3luY2hpbmcgUmVwb3NpdG9yaWVzIgorbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIFN5bmNpbmcgUmVwb3NpdG9yaWVzIgogbXNnc3RyICJM4buHbmgvxJDhu5NuZyBi4buZIGtobyDhu58gbeG7qWMgdGjhuqVwIgogCiAjOiBoZWxwLmM6MzgKIG1zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBJbnRlcm5hbCBIZWxwZXJzIgogbXNnc3RyICJM4buHbmgvSOG7lyB0cuG7oyBu4buZaSB04bqhaSDhu58gbeG7qWMgdGjhuqVwIgogCi0jOiBoZWxwLmM6Mjk2CisjOiBoZWxwLmM6Mjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImF2YWlsYWJsZSBnaXQgY29tbWFuZHMgaW4gJyVzJyIKIG1zZ3N0ciAiY8OhYyBs4buHbmggZ2l0IHPhurVuIGPDsyB0cm9uZyB0aMawIG3hu6VjIOKAnCVz4oCdOiIKIAotIzogaGVscC5jOjMwMworIzogaGVscC5jOjMwNQogbXNnaWQgImdpdCBjb21tYW5kcyBhdmFpbGFibGUgZnJvbSBlbHNld2hlcmUgb24geW91ciAkUEFUSCIKIG1zZ3N0ciAiY8OhYyBs4buHbmggZ2l0IHPhurVuIGPDsyB04burIG3hu5l0IG7GoWkga2jDoWMgdHJvbmcgJFBBVEggY+G7p2EgYuG6oW4iCiAKLSM6IGhlbHAuYzozMTIKKyM6IGhlbHAuYzozMTQKIG1zZ2lkICJUaGVzZSBhcmUgY29tbW9uIEdpdCBjb21tYW5kcyB1c2VkIGluIHZhcmlvdXMgc2l0dWF0aW9uczoiCiBtc2dzdHIgIkPDsyBjw6FjIGzhu4duaCBHaXQgY2h1bmcgxJHGsOG7o2Mgc+G7rSBk4bulbmcgdHJvbmcgY8OhYyB0w6xuaCBodeG7kW5nIGtow6FjIG5oYXU6IgogCi0jOiBoZWxwLmM6MzYxIGdpdC5jOjkwCisjOiBoZWxwLmM6MzYzIGdpdC5jOjk4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuc3VwcG9ydGVkIGNvbW1hbmQgbGlzdGluZyB0eXBlICclcyciCiBtc2dzdHIgImtow7RuZyBo4buXIHRy4bujIGxp4buHdCBrw6ogbOG7h25oIGtp4buDdSDigJwlc+KAnSIKIAotIzogaGVscC5jOjQwOAorIzogaGVscC5jOjQwMwogbXNnaWQgIlRoZSBjb21tb24gR2l0IGd1aWRlcyBhcmU6IgogbXNnc3RyICJDw6FjIGNo4buJIGThuqtuIGNodW5nIHbhu4EgR2l0IGzDoDoiCiAKLSM6IGhlbHAuYzo1MTcKKyM6IGhlbHAuYzo1MTIKIG1zZ2lkICJTZWUgJ2dpdCBoZWxwIDxjb21tYW5kPicgdG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQiCiBtc2dzdHIgIlhlbSDigJxnaXQgaGVscCA8bOG7h25oPuKAnSDEkeG7gyDEkeG7jWMgY8OhYyDEkeG6t2MgdOG6oyBj4bunYSBs4buHbmggY29uIgogCi0jOiBoZWxwLmM6NTIyCisjOiBoZWxwLmM6NTE3CiBtc2dpZCAiRXh0ZXJuYWwgY29tbWFuZHMiCiBtc2dzdHIgIkPDoWMgbOG7h25oIGLDqm4gbmdvw6BpIgogCi0jOiBoZWxwLmM6NTMwCisjOiBoZWxwLmM6NTMyCiBtc2dpZCAiQ29tbWFuZCBhbGlhc2VzIgogbXNnc3RyICJDw6FjIGLDrSBkYW5oIGzhu4duaCIKIAotIzogaGVscC5jOjU5NAorIzogaGVscC5jOjU5NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBhcHBlYXJzIHRvIGJlIGEgZ2l0IGNvbW1hbmQsIGJ1dCB3ZSB3ZXJlIG5vdFxuIgpAQCAtMjcwMCwzMSArNDEzMCwzMSBAQAogIuKAnCVz4oCdIHRyw7RuZyBuaMawIGzDoCBt4buZdCBs4buHbmggZ2l0LCBuaMawbmcgY2jDum5nIHTDtGkga2jDtG5nXG4iCiAidGjhu4MgdGjhu7FjIHRoaSBuw7MuIEPDsyBs4bq9IGzDoCBs4buHbmggZ2l0LSVzIMSRw6MgYuG7iyBo4buPbmc/IgogCi0jOiBoZWxwLmM6NjUzCisjOiBoZWxwLmM6NjU1CiBtc2dpZCAiVWggb2guIFlvdXIgc3lzdGVtIHJlcG9ydHMgbm8gR2l0IGNvbW1hbmRzIGF0IGFsbC4iCiBtc2dzdHIgIuG7kGkgY2jDoC4gSOG7hyB0aOG7kW5nIGPhu6dhIGLhuqFuIGLDoW8gcuG6sW5nIGNo4bqzbmcgY8OzIGzhu4duaCBHaXQgbsOgbyBj4bqjLiIKIAotIzogaGVscC5jOjY3NQorIzogaGVscC5jOjY3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJXQVJOSU5HOiBZb3UgY2FsbGVkIGEgR2l0IGNvbW1hbmQgbmFtZWQgJyVzJywgd2hpY2ggZG9lcyBub3QgZXhpc3QuIgogbXNnc3RyICJD4bqiTkggQsOBTzogQuG6oW4gxJHDoyBn4buNaSBs4buHbmggR2l0IGPDsyB0w6puIOKAnCVz4oCdLCBtw6AgbsOzIGzhuqFpIGtow7RuZyBjw7Mgc+G6tW4uIgogCi0jOiBoZWxwLmM6NjgwCisjOiBoZWxwLmM6NjgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbnRpbnVpbmcgdW5kZXIgdGhlIGFzc3VtcHRpb24gdGhhdCB5b3UgbWVhbnQgJyVzJy4iCiBtc2dzdHIgIlRp4bq/cCB04bulYyB2w6AgY29pIHLhurFuZyDDvSBi4bqhbiBsw6Ag4oCcJXPigJ0uIgogCi0jOiBoZWxwLmM6Njg1CisjOiBoZWxwLmM6Njg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbnRpbnVpbmcgaW4gJTAuMWYgc2Vjb25kcywgYXNzdW1pbmcgdGhhdCB5b3UgbWVhbnQgJyVzJy4iCiBtc2dzdHIgIlRp4bq/cCB04bulYyB0cm9uZyAlMC4xZiBnacOieSx2w6AgY29pIHLhurFuZyDDvSBi4bqhbiBsw6Ag4oCcJXPigJ0uIgogCi0jOiBoZWxwLmM6NjkzCisjOiBoZWxwLmM6Njk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdDogJyVzJyBpcyBub3QgYSBnaXQgY29tbWFuZC4gU2VlICdnaXQgLS1oZWxwJy4iCiBtc2dzdHIgImdpdDog4oCcJXPigJ0ga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgbOG7h25oIGPhu6dhIGdpdC4gWGVtIOKAnGdpdCAtLWhlbHDigJ0uIgogCi0jOiBoZWxwLmM6Njk3CisjOiBoZWxwLmM6Njk5CiBtc2dpZCAiIgogIlxuIgogIlRoZSBtb3N0IHNpbWlsYXIgY29tbWFuZCBpcyIKQEAgLTI3MzUsMTYgKzQxNjUsMTYgQEAKICJcbiIKICJOaOG7r25nIGzhu4duaCBnaeG7kW5nIG5o4bqldCBsw6AiCiAKLSM6IGhlbHAuYzo3MTIKKyM6IGhlbHAuYzo3MTQKIG1zZ2lkICJnaXQgdmVyc2lvbiBbPG9wdGlvbnM+XSIKLW1zZ3N0ciAiZ2l0IHZlcnNpb24gWzxjw6FjLXTDuXktY2jhu41uPl0iCittc2dzdHIgImdpdCB2ZXJzaW9uIFs8Y8OhYyB0w7l5IGNo4buNbj5dIgogCi0jOiBoZWxwLmM6NzgwCisjOiBoZWxwLmM6NzgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAlcyAtICVzIgogbXNnc3RyICIlczogJXMgLSAlcyIKIAotIzogaGVscC5jOjc4NAorIzogaGVscC5jOjc4NwogbXNnaWQgIiIKICJcbiIKICJEaWQgeW91IG1lYW4gdGhpcz8iCkBAIC0yNzU1LDcgKzQxODUsNyBAQAogIlxuIgogIkPDsyBwaOG6o2kgw70gYuG6oW4gbMOgIG3hu5l0IHRyb25nIHPhu5Egbmjhu69uZyBjw6FpIG7DoHkga2jDtG5nPyIKIAotIzogaWRlbnQuYzozNDUKKyM6IGlkZW50LmM6MzQ5CiBtc2dpZCAiIgogIlxuIgogIioqKiBQbGVhc2UgdGVsbCBtZSB3aG8geW91IGFyZS5cbiIKQEAgLTI3ODEsNTAgKzQyMTEsODkgQEAKICJC4buPIHTDuXkgY2jhu41uIC0tZ2xvYmFsIG7hur91IGNo4buJIMSR4buLbmggZGFuaCByacOqbmcgY2hvIGtobyBuw6B5LlxuIgogIlxuIgogCi0jOiBpZGVudC5jOjM2OQorIzogaWRlbnQuYzozNzkKIG1zZ2lkICJubyBlbWFpbCB3YXMgZ2l2ZW4gYW5kIGF1dG8tZGV0ZWN0aW9uIGlzIGRpc2FibGVkIgogbXNnc3RyICJraMO0bmcgxJHGsGEgcmEgxJHhu4thIGNo4buJIHRoxrAgxJFp4buHbiB04butIHbDoCBhdXRvLWRldGVjdGlvbiBi4buLIHThuq90IgogCi0jOiBpZGVudC5jOjM3NAorIzogaWRlbnQuYzozODQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGF1dG8tZGV0ZWN0IGVtYWlsIGFkZHJlc3MgKGdvdCAnJXMnKSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHThu7EgZMOyIHTDrG0gxJHhu4thIGNo4buJIHRoxrAgxJFp4buHbiB04butIChuaOG6rW4g4oCcJXPigJ0pIgogCi0jOiBpZGVudC5jOjM4NAorIzogaWRlbnQuYzo0MDEKIG1zZ2lkICJubyBuYW1lIHdhcyBnaXZlbiBhbmQgYXV0by1kZXRlY3Rpb24gaXMgZGlzYWJsZWQiCiBtc2dzdHIgImNoxrBhIGNo4buJIHJhIHTDqm4gdsOgIHThu7EtxJHhu5luZy1kw7ItdMOsbSBi4buLIHThuq90IgogCi0jOiBpZGVudC5jOjM5MAorIzogaWRlbnQuYzo0MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGF1dG8tZGV0ZWN0IG5hbWUgKGdvdCAnJXMnKSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGTDsi10w6xtLXThu7EgxJHhu5luZyB0w6puICjEkcOjIG5o4bqtbiDigJwlc+KAnSkiCiAKLSM6IGlkZW50LmM6Mzk4CisjOiBpZGVudC5jOjQxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJlbXB0eSBpZGVudCBuYW1lIChmb3IgPCVzPikgbm90IGFsbG93ZWQiCiBtc2dzdHIgImtow7RuZyBjaG8gcGjDqXAgdMOqbiDEkeG7i25oIGRhbmggbMOgIHLhu5duZyAoY2hvIDwlcz4pIgogCi0jOiBpZGVudC5jOjQwNAorIzogaWRlbnQuYzo0MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAibmFtZSBjb25zaXN0cyBvbmx5IG9mIGRpc2FsbG93ZWQgY2hhcmFjdGVyczogJXMiCiBtc2dzdHIgInTDqm4gY2jhu4kgxJHGsOG7o2MgcGjDqXAgYmFvIGfhu5NtIGPDoWMga8O9IHThu7Egc2F1OiAlcyIKIAotIzogaWRlbnQuYzo0MTkgYnVpbHRpbi9jb21taXQuYzo2MDYKKyM6IGlkZW50LmM6NDM2IGJ1aWx0aW4vY29tbWl0LmM6NjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZGF0ZSBmb3JtYXQ6ICVzIgogbXNnc3RyICJuZ8OgeSB0aMOhbmcga2jDtG5nIGjhu6NwIGzhu4c6ICVzIgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzozNQotbXNnaWQgIm11bHRpcGxlIGZpbHRlci1zcGVjcyBjYW5ub3QgYmUgY29tYmluZWQiCi1tc2dzdHIgImtow7RuZyB0aOG7gyB04buVIGjhu6NwIG5oaeG7gXUgxJHhurdjIHThuqMga2nhu4N1IGzhu41jIgorIzogbGlzdC1vYmplY3RzLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImVudHJ5ICclcycgaW4gdHJlZSAlcyBoYXMgdHJlZSBtb2RlLCBidXQgaXMgbm90IGEgdHJlZSIKK21zZ3N0ciAibeG7pWMg4oCcJXPigJ0gdHJvbmcgY8OieSAlcyBjw7MgbsO6dCBjw6J5LCBuaMawbmcga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgY8OieSIKKworIzogbGlzdC1vYmplY3RzLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgImVudHJ5ICclcycgaW4gdHJlZSAlcyBoYXMgYmxvYiBtb2RlLCBidXQgaXMgbm90IGEgYmxvYiIKK21zZ3N0ciAibeG7pWMg4oCcJXPigJ0gdHJvbmcgY8OieSAlcyBjw7MgbsO6dCBibG9iLCBuaMawbmcga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgYmxvYiIKKworIzogbGlzdC1vYmplY3RzLmM6Mzc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb2FkIHJvb3QgdHJlZSBmb3IgY29tbWl0ICVzIgorbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6o2kgY8OieSBn4buRYyBjaG8gbOG6p24gY2h1eeG7g24gZ2lhbyDigJwlc+KAnSIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIHNwYXJzZSBibG9iIGluICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyB0cnV5IGPhuq1wIGPDoWMgYmxvYiBy4bqjaSByw6FjIHRyb25nICclcyciCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXIuYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIHNwYXJzZSBmaWx0ZXIgZGF0YSBpbiAlcyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIGThu68gbGnhu4d1IGLhu5kgbOG7jWMgcuG6o2kgcsOhYyB0cm9uZyAlcyIKIAogIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6NTgKLW1zZ2lkICJvbmx5ICd0cmVlOjAnIGlzIHN1cHBvcnRlZCIKLW1zZ3N0ciAiY2jhu4kg4oCcdHJlZTow4oCdIGzDoCDEkcaw4bujYyBo4buXIHRy4bujIgorbXNnaWQgImV4cGVjdGVkICd0cmVlOjxkZXB0aD4nIgorbXNnc3RyICJj4bqnbiDigJx0cmVlOjxkZXB0aD7igJ0iCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjEzNwotbXNnaWQgImNhbm5vdCBjaGFuZ2UgcGFydGlhbCBjbG9uZSBwcm9taXNvciByZW1vdGUiCi1tc2dzdHIgImtow7RuZyB0aOG7gyB0aGF5IMSR4buVaSBuaMOibiBi4bqjbiB04burbmcgcGjhuqduIG3DoXkgY2jhu6cgcHJvbWlzb3IiCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo3MworbXNnaWQgInNwYXJzZTpwYXRoIGZpbHRlcnMgc3VwcG9ydCBoYXMgYmVlbiBkcm9wcGVkIgorbXNnc3RyICJ2aeG7h2MgaOG7lyB0cuG7oyBi4buZIGzhu41jIHNwYXJzZTrEkcaw4budbmcvZOG6q24gxJHDoyBi4buLIGLhu48iCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgZmlsdGVyLXNwZWMgJyVzJyIKK21zZ3N0ciAixJHhurdjIHThuqMgYuG7mSBs4buNYyBraMO0bmcgaOG7o3AgbOG7hyDigJwlc+KAnSIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm11c3QgZXNjYXBlIGNoYXIgaW4gc3ViLWZpbHRlci1zcGVjOiAnJWMnIgorbXNnc3RyICJwaOG6o2kgdGhvw6F0IGNoYXIgdHJvbmcgc3ViLWZpbHRlci1zcGVjOiAnJWMnIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxNDQKK21zZ2lkICJleHBlY3RlZCBzb21ldGhpbmcgYWZ0ZXIgY29tYmluZToiCittc2dzdHIgIm1vbmcgxJHhu6NpIG3hu5l0IGPDoWkgZ8OsIMSRw7Mgc2F1IGtoaSBr4bq/dCBo4bujcDoiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjIyNgorbXNnaWQgIm11bHRpcGxlIGZpbHRlci1zcGVjcyBjYW5ub3QgYmUgY29tYmluZWQiCittc2dzdHIgImtow7RuZyB0aOG7gyB04buVIGjhu6NwIG5oaeG7gXUgxJHhurdjIHThuqMga2nhu4N1IGzhu41jIgogCiAjOiBsb2NrZmlsZS5jOjE1MQogIywgYy1mb3JtYXQKQEAgLTI4NTQsMTE5ICs0MzIzLDExNiBAQAogbXNnaWQgImZhaWxlZCB0byByZWFkIHRoZSBjYWNoZSIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMSR4buNYyBi4buZIG5o4bubIMSR4buHbSIKIAotIzogbWVyZ2UuYzoxMDcgcmVyZXJlLmM6NzIwIGJ1aWx0aW4vYW0uYzoxODk5IGJ1aWx0aW4vYW0uYzoxOTMzCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Mzg3IGJ1aWx0aW4vY2hlY2tvdXQuYzo3MDggYnVpbHRpbi9jbG9uZS5jOjc2NAorIzogbWVyZ2UuYzoxMDcgcmVyZXJlLmM6NzIwIGJ1aWx0aW4vYW0uYzoxODc5IGJ1aWx0aW4vYW0uYzoxOTEzCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTQxIGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDAgYnVpbHRpbi9jbG9uZS5jOjgxMAorIzogYnVpbHRpbi9zdGFzaC5jOjI2NQogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdoaSB04bqtcCB0aW4gbMawdSBi4bqjbmcgbeG7pWMgbOG7pWMgbeG7m2kiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyMworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzU2CiBtc2dpZCAiKGJhZCBjb21taXQpXG4iCiBtc2dzdHIgIihjb21taXQgc2FpKVxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJhZGRfY2FjaGVpbmZvIGZhaWxlZCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCiBtc2dzdHIgImFkZGluZm9fY2FjaGUgZ+G6t3AgbOG7l2kgxJHhu5FpIHbhu5tpIMSRxrDhu51uZyBk4bqrbiDigJwlc+KAnTsgdmnhu4djIGjDsmEgdHLhu5luIGLhu4sgYsOjaSBi4buPLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkX2NhY2hlaW5mbyBmYWlsZWQgdG8gcmVmcmVzaCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCiBtc2dzdHIgIiIKICJhZGRpbmZvX2NhY2hlIGfhurdwIGzhu5dpIGtoaSBsw6BtIG3hu5tpIMSR4buRaSB24bubaSDEkcaw4budbmcgZOG6q24g4oCcJXPigJ07IHZp4buHYyBow7JhIHRy4buZbiBi4buLICIKICJiw6NpIGLhu48uIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo0MzUKLW1zZ2lkICJlcnJvciBidWlsZGluZyB0cmVlcyIKLW1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHjDonkgZOG7sW5nIGPDonkiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkwNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6ODc0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGF0aCAnJXMnJXMiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSB04bqhbyDEkcaw4budbmcgZOG6q24g4oCcJXPigJ0lcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTE3CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo4ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3ZpbmcgJXMgdG8gbWFrZSByb29tIGZvciBzdWJkaXJlY3RvcnlcbiIKIG1zZ3N0ciAiR+G7oSBi4buPICVzIMSR4buDIHThuqFvIGNo4buXIChyb29tKSBjaG8gdGjGsCBt4bulYyBjb25cbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTMxIG1lcmdlLXJlY3Vyc2l2ZS5jOjk1MAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6ODk5IG1lcmdlLXJlY3Vyc2l2ZS5jOjkxOAogbXNnaWQgIjogcGVyaGFwcyBhIEQvRiBjb25mbGljdD8iCiBtc2dzdHIgIjogY8OzIGzhur0gbMOgIG3hu5l0IHh1bmcgxJHhu5l0IEQvRj8iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk0MAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJyVzJyIKIG1zZ3N0ciAidOG7qyBjaOG7kWkgxJHDs25nIHThuq1wIHRpbiBraMO0bmcgxJHGsOG7o2MgdGhlbyBkw7VpIHThuqFpIOKAnCVz4oCdIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5ODIgYnVpbHRpbi9jYXQtZmlsZS5jOjM5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NDkgYnVpbHRpbi9jYXQtZmlsZS5jOjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCAlcyAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIMSR4buRaSB0xrDhu6NuZyAlcyDigJwlc+KAnSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTg0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmxvYiBleHBlY3RlZCBmb3IgJXMgJyVzJyIKIG1zZ3N0ciAibW9uZyDEkeG7o2kgxJHhu5FpIHTGsOG7o25nIGJsb2IgY2hvICVzIOKAnCVz4oCdIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDA4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJzogJXMiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBt4bufIOKAnCVz4oCdOiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTAxOQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBzeW1saW5rICclcyc6ICVzIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgdOG6oW8gbGnDqm4ga+G6v3QgbeG7gW0gKHN5bWxpbmspIOKAnCVz4oCdOiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTAyNAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImRvIG5vdCBrbm93IHdoYXQgdG8gZG8gd2l0aCAlMDZvICVzICclcyciCiBtc2dzdHIgImtow7RuZyBoaeG7g3UgcGjhuqNpIGzDoG0gZ8OsIHbhu5tpICUwNm8gJXMg4oCcJXPigJ0iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjExOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobm90IGNoZWNrZWQgb3V0KSIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIGjDsmEgdHLhu5luIG3DtC3EkXVuLWNvbiDigJwlc+KAnSAoa2jDtG5nIGzhuqV5IHJhIMSRxrDhu6NjKSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxOQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTE5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChjb21taXRzIG5vdCBwcmVzZW50KSIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIGjDsmEgdHLhu5luIG3DtC3EkXVuLWNvbiDigJwlc+KAnSAobOG6p24gY2h1eeG7g24gZ2lhbyBraMO0bmcgaGnhu4duIGRp4buHbikiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMjYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAoY29tbWl0cyBkb24ndCBmb2xsb3cgbWVyZ2UtYmFzZSkiCiBtc2dzdHIgIiIKICJH4bq3cCBs4buXaSBraGkgaMOyYSB0cuG7mW4gbcO0LcSRdW4tY29uIOKAnCVz4oCdIChs4bqnbiBjaHV54buDbiBnaWFvIGtow7RuZyB0aGVvIHNhdSBu4buBbi1ow7JhLSIKICJ0cuG7mW4pIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjM0IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTMgbWVyZ2UtcmVjdXJzaXZlLmM6MTIyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIHRvIHRoZSBmb2xsb3dpbmcgY29tbWl0OiIKIG1zZ3N0ciAiQ2h1eeG7g24tdGnhur9wLW5oYW5oIG3DtC3EkXVuLWNvbiDigJwlc+KAnSDEkeG6v24gbOG6p24gY2h1eeG7g24gZ2lhbyBzYXUgxJHDonk6IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjM3IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNDkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTYgbWVyZ2UtcmVjdXJzaXZlLmM6MTIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIgogbXNnc3RyICJDaHV54buDbi10aeG6v3AtbmhhbmggbcO0LcSRdW4tY29uIOKAnCVz4oCdIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjcxCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG1lcmdlIGZvbGxvd2luZyBjb21taXRzIG5vdCBmb3VuZCkiCiBtc2dzdHIgIiIKICJH4bq3cCBs4buXaSBraGkgaMOyYSB0cuG7mW4gbcO0LcSRdW4tY29uIOKAnCVz4oCdIChraMO0bmcgdMOsbSB0aOG6pXkgY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvICIKICJ0aGVvIHNhdSBow7JhIHRy4buZbikiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobm90IGZhc3QtZm9yd2FyZCkiCiBtc2dzdHIgIkfhurdwIGzhu5dpIGtoaSBow7JhIHRy4buZbiBtw7QtxJF1bi1jb24g4oCcJXPigJ0gKGtow7RuZyBjaHV54buDbiB0aeG6v3AgbmhhbmggxJHGsOG7o2MpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjc2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU2CiBtc2dpZCAiRm91bmQgYSBwb3NzaWJsZSBtZXJnZSByZXNvbHV0aW9uIGZvciB0aGUgc3VibW9kdWxlOlxuIgogbXNnc3RyICJUw6xtIHRo4bqleSBt4buZdCBnaeG6o2kgcGjDoXAgaMOyYSB0cuG7mW4gY8OzIHRo4buDIGNobyBtw7QtxJF1bi1jb246XG4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHRoaXMgaXMgY29ycmVjdCBzaW1wbHkgYWRkIGl0IHRvIHRoZSBpbmRleCBmb3IgZXhhbXBsZVxuIgpAQCAtMjk4MywzMyArNDQ0OSwzMyBAQAogIlxuIgogImPDoWkgbcOgIHPhur0gY2jhuqVwIG5o4bqtbiBn4bujaSDDvSBuw6B5LlxuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjg4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG11bHRpcGxlIG1lcmdlcyBmb3VuZCkiCiBtc2dzdHIgIkfhurdwIGzhu5dpIGtoaSBow7JhIHRy4buZbiBtw7QtxJF1bi1jb24g4oCcJXPigJ0gKHRo4bqleSBuaGnhu4F1IGjDsmEgdHLhu5luIMSRYSB0csO5bmcpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzU4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzQxCiBtc2dpZCAiRmFpbGVkIHRvIGV4ZWN1dGUgaW50ZXJuYWwgbWVyZ2UiCiBtc2dzdHIgIkfhurdwIGzhu5dpIGtoaSB0aOG7sWMgaGnhu4duIHRy4buZbiBu4buZaSBi4buZIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzYzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBhZGQgJXMgdG8gZGF0YWJhc2UiCiBtc2dzdHIgIktow7RuZyB0aOG7gyB0aMOqbSAlcyB2w6BvIGPGoSBz4bufIGThu68gbGnhu4d1IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzk1CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMzc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG8tbWVyZ2luZyAlcyIKIG1zZ3N0ciAiVOG7sS3EkeG7mW5nLWjDsmEtdHLhu5luICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDE2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkVycm9yOiBSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzOyB3cml0aW5nIHRvICVzIGluc3RlYWQuIgogbXNnc3RyICIiCiAiTOG7l2k6IHThu6sgY2jhu5FpIMSRw7NuZyB04bqtcCB0aW4ga2jDtG5nIMSRxrDhu6NjIHRoZW8gZMO1aSB04bqhaSDigJwlc+KAnTsgdGhheSB2w6BvIMSRw7MgZ2hpIHbDoG8gIgogIiVzLiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ4MworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ3NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzIGxlZnQgIgpAQCAtMzAxOCw3ICs0NDg0LDcgQEAKICJYVU5HIMSQ4buYVCAoJXMveMOzYSk6ICVzIGLhu4sgeMOzYSB0cm9uZyAlcyB2w6AgJXMgdHJvbmcgJXMuIFBoacOqbiBi4bqjbiAlcyBj4bunYSAlcyAiCiAiY8OybiBs4bqhaSB0cm9uZyBjw6J5ICh0cmVlKS4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0ODgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyB0byAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyAiCkBAIC0zMDI3LDcgKzQ0OTMsNyBAQAogIlhVTkcgxJDhu5hUICglcy94w7NhKTogJXMgYuG7iyB4w7NhIHRyb25nICVzIHbDoCAlcyDEkeG6v24gJXMgdHJvbmcgJXMuIFBoacOqbiBi4bqjbiAlcyAiCiAiY+G7p2EgJXMgY8OybiBs4bqhaSB0cm9uZyBjw6J5ICh0cmVlKS4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0OTUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0ICIKQEAgLTMwMzYsNyArNDUwMiw3IEBACiAiWFVORyDEkOG7mFQgKCVzL3jDs2EpOiAlcyBi4buLIHjDs2EgdHJvbmcgJXMgdsOgICVzIHRyb25nICVzLiBQaGnDqm4gYuG6o24gJXMgY+G7p2EgJXMgIgogImPDsm4gbOG6oWkgdHJvbmcgY8OieSAodHJlZSkgdOG6oWkgJXMuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTAwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgdG8gJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgIgpAQCAtMzA0NSwzMyArNDUxMSw0NSBAQAogIlhVTkcgxJDhu5hUICglcy94w7NhKTogJXMgYuG7iyB4w7NhIHRyb25nICVzIHbDoCAlcyDEkeG6v24gJXMgdHJvbmcgJXMuIFBoacOqbiBi4bqjbiAlcyAiCiAiY+G7p2EgJXMgY8OybiBs4bqhaSB0cm9uZyBjw6J5ICh0cmVlKSB04bqhaSAlcy4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MzQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1MjYKIG1zZ2lkICJyZW5hbWUiCiBtc2dzdHIgIsSR4buVaSB0w6puIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTM0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTI2CiBtc2dpZCAicmVuYW1lZCIKIG1zZ3N0ciAixJHDoyDEkeG7lWkgdMOqbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTU4OCBtZXJnZS1yZWN1cnNpdmUuYzoxNzM3IG1lcmdlLXJlY3Vyc2l2ZS5jOjIzNjkKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMxMjQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE1NzcgbWVyZ2UtcmVjdXJzaXZlLmM6MjQ3MiBtZXJnZS1yZWN1cnNpdmUuYzozMTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgZGlydHkgZmlsZSBhdCAlcyIKIG1zZ3N0ciAiVOG7qyBjaOG7kWkgxJHDs25nIHThuq1wIHRpbiBraMO0bmcgxJHGsOG7o2MgdGhlbyBkw7VpIHThuqFpIOKAnCVz4oCdIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjAyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXMsIGV2ZW4gdGhvdWdoIGl0J3MgaW4gdGhlIHdheS4iCittc2dzdHIgIiIKKyJU4burIGNo4buRaSDEkcOzbmcgdOG6rXAgdGluIGtow7RuZyDEkcaw4bujYyB0aGVvIGTDtWkgdOG6oWkg4oCcJXPigJ0sIG5nYXkgY+G6oyBraGkgbsOzIOG7nyB0csOqbiAiCisixJHGsOG7nW5nLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJDT05GTElDVCAocmVuYW1lL2FkZCk6IFJlbmFtZSAlcy0+JXMgaW4gJXMuICBBZGRlZCAlcyBpbiAlcyIKK21zZ3N0ciAiIgorIlhVTkcgxJDhu5hUICjEkeG7lWktdMOqbi90aMOqbSk6IMSQ4buVaSB0w6puICVzLT4lcyB0cm9uZyAlcy4gJXMgxJHGsOG7o2MgdGjDqm0gdHJvbmcgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgYSBkaXJlY3RvcnkgaW4gJXMgYWRkaW5nIGFzICVzIGluc3RlYWQiCiBtc2dzdHIgIiVzIGzDoCBt4buZdCB0aMawIG3hu6VjIHRyb25nICVzIHRoYXkgdsOgbyDEkcOzIHRow6ptIHbDoG8gbmjGsCBsw6AgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MDcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlczsgYWRkaW5nIGFzICVzIGluc3RlYWQiCiBtc2dzdHIgIiIKICJU4burIGNo4buRaSDEkcOzbmcgdOG6rXAgdGluIGtow7RuZyDEkcaw4bujYyB0aGVvIGTDtWkgdOG6oWkg4oCcJXPigJ07IHRoYXkgdsOgbyDEkcOzIMSRYW5nIHRow6ptICIKICJ0aMOgbmggJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MzMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIFwiJXNcIi0+XCIlc1wiIGluIGJyYW5jaCBcIiVzXCIgcmVuYW1lIFwiJXMiCkBAIC0zMDgwLDI5ICs0NTU4LDE3IEBACiAiWFVORyDEkOG7mFQgKMSR4buVaS10w6puL8SR4buVaS10w6puKTogxJDhu5VpIHTDqm4gXCIlc1wiLT5cIiVzXCIgdHJvbmcgbmjDoW5oIFwiJXNcIiDEkeG7lWkgIgogInTDqm4gXCIlc1wiLT5cIiVzXCIgdHJvbmcgXCIlc1wiJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MzgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MTMKIG1zZ2lkICIgKGxlZnQgdW5yZXNvbHZlZCkiCiBtc2dzdHIgIiAoY+G6p24gZ2nhuqNpIHF1eeG6v3QpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjk5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gUmVuYW1lICVzLT4lcyBpbiAlcyIKIG1zZ3N0ciAiIgogIlhVTkcgxJDhu5hUICjEkeG7lWktdMOqbi/EkeG7lWktdMOqbik6IMSQ4buVaSB0w6puICVzLT4lcyB0cm9uZyAlcy4gxJDhu5VpIHTDqm4gJXMtPiVzIHRyb25nICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzM0Ci0jLCBjLWZvcm1hdAotbXNnaWQgIlJlbmFtaW5nICVzIHRvICVzIGFuZCAlcyB0byAlcyBpbnN0ZWFkIgotbXNnc3RyICLEkGFuZyDEkeG7lWkgdMOqbiAlcyB0aMOgbmggJXMgdGhheSB2w6wgJXMgdGjDoG5oICVzIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzQ2Ci0jLCBjLWZvcm1hdAotbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXMsIGV2ZW4gdGhvdWdoIGl0J3MgaW4gdGhlIHdheS4iCi1tc2dzdHIgIiIKLSJU4burIGNo4buRaSDEkcOzbmcgdOG6rXAgdGluIGtow7RuZyDEkcaw4bujYyB0aGVvIGTDtWkgdOG6oWkg4oCcJXPigJ0sIG5nYXkgY+G6oyBraGkgbsOzIOG7nyB0csOqbiAiCi0ixJHGsOG7nW5nLiIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTk1MgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjA1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKGRpcmVjdG9yeSByZW5hbWUgc3BsaXQpOiBVbmNsZWFyIHdoZXJlIHRvIHBsYWNlICVzIGJlY2F1c2UgIgpAQCAtMzExMyw3ICs0NTc5LDcgQEAKICJ2w6wgdGjGsCBt4bulYyAlcyDEkcOjIGLhu4sgxJHhu5VpIHTDqm4gdGjDoG5oIG5oaeG7gXUgdGjGsCBt4bulYyBraMOhYywgduG7m2kga2jDtG5nIMSRw61jaCDEkeG6v24gIgogIm5o4bqtbiBt4buZdCBwaOG6p24gbmhp4buBdSBj4bunYSBjw6FjIHThuq1wIHRpbi4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE5ODQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogRXhpc3RpbmcgZmlsZS9kaXIgYXQgJXMgaW4gdGhlIHdheSBvZiAiCkBAIC0zMTIyLDE2ICs0NTg4LDE2IEBACiAiWFVORyDEkOG7mFQ6IChuZ+G6p20gxJHhu5VpIHTDqm4gdGjGsCBt4bulYyk6IFThuq1wIHRpbi90aMawIG3hu6VjIMSRw6Mgc+G6tW4gY8OzIHThuqFpICVzIHRoZW8gY8OhY2ggIgogImPhu6dhIGPDoWMgxJHhu5VpIHTDqm4gdGjGsCBt4bulYyBuZ+G6p20gxJHhurd0IChjw6FjKSDEkcaw4budbmcgZOG6q24gc2F1IOG7nyDEkcOieTogJXMuIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxOTk0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoaW1wbGljaXQgZGlyIHJlbmFtZSk6IENhbm5vdCBtYXAgbW9yZSB0aGFuIG9uZSBwYXRoIHRvICVzOyAiCiAiaW1wbGljaXQgZGlyZWN0b3J5IHJlbmFtZXMgdHJpZWQgdG8gcHV0IHRoZXNlIHBhdGhzIHRoZXJlOiAlcyIKIG1zZ3N0ciAiIgogIlhVTkcgxJDhu5hUOiAobmfhuqdtIMSR4buVaSB0w6puIHRoxrAgbeG7pWMpOiBLaMO0bmcgdGjhu4Mgw6FuaCB44bqhIG3hu5l0IMSRxrDhu51uZyBk4bqrbiB0aMOgbmggJXM7ICIKLSJjw6FjIMSR4buVaSB0w6puIHRoxrAgbeG7pWMgbmfhuqdtIGPhu5EgxJHhurd0IGPDoWMgxJHGsOG7nW5nIGThuqtuIOG7nyDEkcOieTogJXMuIgorImPDoWMgxJHhu5VpIHTDqm4gdGjGsCBt4bulYyBuZ+G6p20gY+G7kSDEkeG6t3QgY8OhYyDEkcaw4budbmcgZOG6q24g4bufIMSRw6J5OiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjA4NgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjE5MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpOiBSZW5hbWUgZGlyZWN0b3J5ICVzLT4lcyBpbiAlcy4gUmVuYW1lIGRpcmVjdG9yeSAlcy0iCkBAIC0zMTQwLDcgKzQ2MDYsNyBAQAogIlhVTkcgxJDhu5hUICjEkeG7lWktdMOqbi/EkeG7lWktdMOqbik6IMSQ4buVaSB0w6puIHRoxrAgbeG7pWMgJXMtPiVzIHRyb25nICVzLiDEkOG7lWkgdMOqbiB0aMawIG3hu6VjICIKICIlcy0+JXMgdHJvbmcgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIzMzEKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI0MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIldBUk5JTkc6IEF2b2lkaW5nIGFwcGx5aW5nICVzIC0+ICVzIHJlbmFtZSB0byAlcywgYmVjYXVzZSAlcyBpdHNlbGYgd2FzICIKQEAgLTMxNDksODggKzQ2MTUsMTQxIEBACiAiQ+G6ok5IIELDgU86IHRyw6FuaCDDoXAgZOG7pW5nICVzIC0+ICVzIMSR4buVaSB0aMOqbiB0aMOgbmggJXMsIGLhu59pIHbDrCBi4bqjbiB0aMOibiAlcyBjxaluZyAiCiAiYuG7iyDEkeG7lWkgdMOqbi4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI3MzcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9hZGQpOiBSZW5hbWUgJXMtPiVzIGluICVzLiAlcyBhZGRlZCBpbiAlcyIKLW1zZ3N0ciAiIgotIlhVTkcgxJDhu5hUICjEkeG7lWktdMOqbi90aMOqbSk6IMSQ4buVaSB0w6puICVzLT4lcyB0cm9uZyAlcy4gJXMgxJHGsOG7o2MgdGjDqm0gdsOgbyB0cm9uZyAlcyIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjc2MwotIywgYy1mb3JtYXQKLW1zZ2lkICJBZGRpbmcgbWVyZ2VkICVzIgotbXNnc3RyICJUaMOqbSBow7JhIHRy4buZbiAlcyIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mjc3MCBtZXJnZS1yZWN1cnNpdmUuYzozMTI3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkFkZGluZyBhcyAlcyBpbnN0ZWFkIgotbXNnc3RyICJUaGF5IHbDoG8gxJHDsyB0aMOqbSB2w6BvICVzIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyOTM0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyOTYxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyDEkeG7kWkgdMaw4bujbmcgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5MzcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGlzIG5vdCBhIGJsb2IiCiBtc2dzdHIgIsSR4buRaSB0xrDhu6NuZyAlcyBraMO0bmcgcGjhuqNpIGzDoCBt4buZdCBibG9iIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDA2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDI4CiBtc2dpZCAibW9kaWZ5IgogbXNnc3RyICJz4butYSDEkeG7lWkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjgKIG1zZ2lkICJtb2RpZmllZCIKIG1zZ3N0ciAixJHDoyBz4butYSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAxNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA0MAogbXNnaWQgImNvbnRlbnQiCiBtc2dzdHIgIm7hu5lpIGR1bmciCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDQKIG1zZ2lkICJhZGQvYWRkIgogbXNnc3RyICJ0aMOqbS90aMOqbSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA3MQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzA2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGVkICVzIChtZXJnZWQgc2FtZSBhcyBleGlzdGluZykiCiBtc2dzdHIgIsSQw6MgYuG7jyBxdWEgJXMgKMSRw6MgY8OzIHPhurVuIGzhuqduIGjDsmEgdHLhu5luIG7DoHkpIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkzIGdpdC1zdWJtb2R1bGUuc2g6ODU4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDg5IGdpdC1zdWJtb2R1bGUuc2g6MTAwMwogbXNnaWQgInN1Ym1vZHVsZSIKIG1zZ3N0ciAibcO0LcSRdW4tY29uIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDk0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUICglcyk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgogbXNnc3RyICJYVU5HIMSQ4buYVCAoJXMpOiBYdW5nIMSR4buZdCBow7JhIHRy4buZbiB0cm9uZyAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIxNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzEyMAorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgYXMgJXMgaW5zdGVhZCIKK21zZ3N0ciAiVGhheSB2w6BvIMSRw7MgdGjDqm0gdsOgbyAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGF0aCB1cGRhdGVkOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCBpbiAlczsgIgorIm1vdmluZyBpdCB0byAlcy4iCittc2dzdHIgIiIKKyLEkMaw4budbmcgZOG6q24gxJHDoyDEkcaw4bujYyBj4bqtcCBuaOG6rXQ6ICVzIMSRxrDhu6NjIHRow6ptIHbDoG8gdHJvbmcgJXMgYsOqbiB0cm9uZyBt4buZdCB0aMawIG3hu6VjICIKKyLEkcOjIMSRxrDhu6NjIMSR4buVaSB0w6puIHRyb25nICVzOyBkaSBjaHV54buDbiBuw7MgxJHhur9uICVzLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGZpbGUgbG9jYXRpb24pOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCAiCisiaW4gJXMsIHN1Z2dlc3RpbmcgaXQgc2hvdWxkIHBlcmhhcHMgYmUgbW92ZWQgdG8gJXMuIgorbXNnc3RyICIiCisiWFVORyDEkOG7mFQgKHbhu4sgdHLDrSB04buHcCk6ICVzIMSRxrDhu6NjIHRow6ptIHbDoG8gdHJvbmcgJXMgdHJvbmcgbeG7mXQgdGjGsCBt4bulYyDEkcOjIMSRxrDhu6NjICIKKyLEkeG7lWkgdMOqbiB0aMOgbmggJXMsIMSRb8OhbiBsw6AgbsOzIG7Dqm4gxJHGsOG7o2MgZGkgY2h1eeG7g24gxJHhur9uICVzLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIxMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGF0aCB1cGRhdGVkOiAlcyByZW5hbWVkIHRvICVzIGluICVzLCBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCBpbiAiCisiJXM7IG1vdmluZyBpdCB0byAlcy4iCittc2dzdHIgIiIKKyLEkMaw4budbmcgZOG6q24gxJHDoyDEkcaw4bujYyBj4bqtcCBuaOG6rXQ6ICVzIMSRxrDhu6NjIMSR4buVaSB0w6puIHRow6BuaCAlcyB0cm9uZyAlcywgYsOqbiB0cm9uZyBt4buZdCAiCisidGjGsCBt4bulYyDEkcOjIMSRxrDhu6NjIMSR4buVaSB0w6puIHRyb25nICVzOyBkaSBjaHV54buDbiBuw7MgxJHhur9uICVzLiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKGZpbGUgbG9jYXRpb24pOiAlcyByZW5hbWVkIHRvICVzIGluICVzLCBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCAiCisid2FzIHJlbmFtZWQgaW4gJXMsIHN1Z2dlc3RpbmcgaXQgc2hvdWxkIHBlcmhhcHMgYmUgbW92ZWQgdG8gJXMuIgorbXNnc3RyICIiCisiWFVORyDEkOG7mFQgKHbhu4sgdHLDrSB04buHcCk6ICVzIMSRxrDhu6NjIMSR4buVaSB0w6puIHRow6BuaCAlcyB0cm9uZyAlcywgYsOqbiB0cm9uZyBt4buZdCB0aMawICIKKyJt4bulYyDEkcOjIMSRxrDhu6NjIMSR4buVaSB0w6puIHRow6BuaCAlcywgxJFvw6FuIGzDoCBuw7MgbsOqbiDEkcaw4bujYyBkaSBjaHV54buDbiDEkeG6v24gJXMuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzIgogbXNnc3RyICLEkGFuZyB4w7NhICVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjQyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzUwCiBtc2dpZCAiZmlsZS9kaXJlY3RvcnkiCiBtc2dzdHIgInThuq1wLXRpbi90aMawLW3hu6VjIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjQ4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzU1CiBtc2dpZCAiZGlyZWN0b3J5L2ZpbGUiCiBtc2dzdHIgInRoxrAtbeG7pWMvdOG6rXAtdGluIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjU1CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUICglcyk6IFRoZXJlIGlzIGEgZGlyZWN0b3J5IHdpdGggbmFtZSAlcyBpbiAlcy4gQWRkaW5nICVzIGFzICVzIgogbXNnc3RyICIiCiAiWFVORyDEkOG7mFQgKCVzKTog4bueIMSRw6J5IGtow7RuZyBjw7MgdGjGsCBt4bulYyBuw6BvIGPDsyB0w6puICVzIHRyb25nICVzLiBUaMOqbSAlcyBuaMawIGzDoCAiCiAiJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNjQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWRkaW5nICVzIgogbXNnc3RyICJUaMOqbSBcIiVzXCIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMDAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKGFkZC9hZGQpOiBNZXJnZSBjb25mbGljdCBpbiAlcyIKK21zZ3N0ciAiWFVORyDEkOG7mFQgKHRow6ptL3Row6ptKTogWHVuZyDEkeG7mXQgaMOyYSB0cuG7mW4gdHJvbmcgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MjQKK21zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUhIgorbXNnc3RyICLEkMOjIGPhuq1wIG5o4bqtdCBy4buTaSEiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAibWVyZ2luZyBvZiB0cmVlcyAlcyBhbmQgJXMgZmFpbGVkIgorbXNnc3RyICJow7JhIHRy4buZbiBjw6FjIGPDonkgJXMgdsOgICVzIGfhurdwIGzhu5dpIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNTM3Cittc2dpZCAiTWVyZ2luZzoiCittc2dzdHIgIsSQYW5nIHRy4buZbjoiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yOiIKK21zZ2lkX3BsdXJhbCAiZm91bmQgJXUgY29tbW9uIGFuY2VzdG9yczoiCittc2dzdHJbMF0gInTDrG0gdGjhuqV5ICV1IHThu5UgdGnDqm4gY2h1bmc6IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjAwCittc2dpZCAibWVyZ2UgcmV0dXJuZWQgbm8gY29tbWl0IgorbXNnc3RyICJow7JhIHRy4buZbiBraMO0bmcgdHLhuqMgduG7gSBs4bqnbiBjaHV54buDbiBnaWFvIG7DoG8iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM2NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtMzI0MCwxNjcgKzQ3NTksMTg1IEBACiAiaMOyYSB0cuG7mW46XG4iCiAiICAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMxMQotbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZSEiCi1tc2dzdHIgIsSQw6MgY+G6rXAgbmjhuq10IHLhu5NpISIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMyMAotIywgYy1mb3JtYXQKLW1zZ2lkICJtZXJnaW5nIG9mIHRyZWVzICVzIGFuZCAlcyBmYWlsZWQiCi1tc2dzdHIgImjDsmEgdHLhu5luIGPDoWMgY8OieSAlcyB2w6AgJXMgZ+G6t3AgbOG7l2kiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MTkKLW1zZ2lkICJNZXJnaW5nOiIKLW1zZ3N0ciAixJBhbmcgdHLhu5luOiIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQzMgotIywgYy1mb3JtYXQKLW1zZ2lkICJmb3VuZCAldSBjb21tb24gYW5jZXN0b3I6IgotbXNnaWRfcGx1cmFsICJmb3VuZCAldSBjb21tb24gYW5jZXN0b3JzOiIKLW1zZ3N0clswXSAidMOsbSB0aOG6pXkgJXUgdOG7lSB0acOqbiBjaHVuZzoiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0NzEKLW1zZ2lkICJtZXJnZSByZXR1cm5lZCBubyBjb21taXQiCi1tc2dzdHIgImjDsmEgdHLhu5luIGtow7RuZyB0cuG6oyB24buBIGzhuqduIGNodXnhu4NuIGdpYW8gbsOgbyIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mzc1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgIktow7RuZyB0aOG7gyBwaMOibiB0w61jaCDEkeG7kWkgdMaw4bujbmcg4oCcJXPigJ0iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NTMgYnVpbHRpbi9tZXJnZS5jOjY5MSBidWlsdGluL21lcmdlLmM6ODQ5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNzc0IGJ1aWx0aW4vbWVyZ2UuYzo2OTcgYnVpbHRpbi9tZXJnZS5jOjg3NwogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSBpbmRleC4iCi1tc2dzdHIgIktow7RuZyB0aOG7gyBnaGkgYuG6o25nIG3hu6VjIGzhu6VjIgorbXNnc3RyICJLaMO0bmcgdGjhu4MgZ2hpIGLhuqNuZyBt4bulYyBs4bulYy4iCiAKLSM6IG1pZHguYzo2NQorIzogbWlkeC5jOjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggZmlsZSAlcyBpcyB0b28gc21hbGwiCiBtc2dzdHIgInThuq1wIHRpbiDEkeG7kyB0aOG7iyBtdWx0aS1wYWNrLWluZGV4ICVzIHF1w6Egbmjhu48iCiAKLSM6IG1pZHguYzo4MQorIzogbWlkeC5jOjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm11bHRpLXBhY2staW5kZXggc2lnbmF0dXJlIDB4JTA4eCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgMHglMDh4IgogbXNnc3RyICJjaOG7ryBrw70gbXVsdGktcGFjay1pbmRleCAweCUwOHgga2jDtG5nIGto4bubcCBjaOG7ryBrw70gMHglMDh4IgogCi0jOiBtaWR4LmM6ODYKKyM6IG1pZHguYzo4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHZlcnNpb24gJWQgbm90IHJlY29nbml6ZWQiCiBtc2dzdHIgImtow7RuZyBuaOG6rW4gcmEgcGhpw6puIGLhuqNuICVkIGPhu6dhIG11bHRpLXBhY2staW5kZXgiCiAKLSM6IG1pZHguYzo5MQorIzogbWlkeC5jOjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImhhc2ggdmVyc2lvbiAldSBkb2VzIG5vdCBtYXRjaCIKIG1zZ3N0ciAicGhpw6puIGLhuqNuIGLEg20g4oCcJXXigJ0ga2jDtG5nIGto4bubcCIKIAotIzogbWlkeC5jOjEwNQorIzogbWlkeC5jOjEwOAogbXNnaWQgImludmFsaWQgY2h1bmsgb2Zmc2V0ICh0b28gbGFyZ2UpIgogbXNnc3RyICJraG/huqNuZyBiw7kgxJFv4bqhbiBraMO0bmcgaOG7o3AgbOG7hyAocXXDoSBs4bubbikiCiAKLSM6IG1pZHguYzoxMjkKKyM6IG1pZHguYzoxMzIKIG1zZ2lkICJ0ZXJtaW5hdGluZyBtdWx0aS1wYWNrLWluZGV4IGNodW5rIGlkIGFwcGVhcnMgZWFybGllciB0aGFuIGV4cGVjdGVkIgogbXNnc3RyICJtw6MgbeG6o25oIGvhur90IHRow7pjIG11bHRpLXBhY2staW5kZXggeHXhuqV0IGhp4buHbiBz4bubbSBoxqFuIGLDrG5oIHRoxrDhu51uZyIKIAotIzogbWlkeC5jOjE0MgorIzogbWlkeC5jOjE0NQogbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBwYWNrLW5hbWUgY2h1bmsiCiBtc2dzdHIgIm11bHRpLXBhY2staW5kZXggdGhp4bq/dSBt4bqjbmggcGFjay1uYW1lIGPhuqduIHRoaeG6v3QiCiAKLSM6IG1pZHguYzoxNDQKKyM6IG1pZHguYzoxNDcKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgT0lEIGZhbm91dCBjaHVuayIKIG1zZ3N0ciAibXVsdGktcGFjay1pbmRleCB0aGnhur91IG3huqNuaCBPSUQgZmFub3V0IGPhuqduIHRoaeG6v3QiCiAKLSM6IG1pZHguYzoxNDYKKyM6IG1pZHguYzoxNDkKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgT0lEIGxvb2t1cCBjaHVuayIKIG1zZ3N0ciAibXVsdGktcGFjay1pbmRleCB0aGnhur91IG3huqNuaCBPSUQgbG9va3VwIGPhuqduIHRoaeG6v3QiCiAKLSM6IG1pZHguYzoxNDgKKyM6IG1pZHguYzoxNTEKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgb2JqZWN0IG9mZnNldHMgY2h1bmsiCiBtc2dzdHIgIm11bHRpLXBhY2staW5kZXggdGhp4bq/dSBt4bqjbmggY8OhYyBraG/huqNuZyBiw7kgxJHhu5FpIHTGsOG7o25nIGPhuqduIHRoaeG6v3QiCiAKLSM6IG1pZHguYzoxNjIKKyM6IG1pZHguYzoxNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBwYWNrIG5hbWVzIG91dCBvZiBvcmRlcjogJyVzJyBiZWZvcmUgJyVzJyIKIG1zZ3N0ciAiY8OhYyB0w6puIGfDs2kgbXVsdGktcGFjay1pbmRleCBraMO0bmcgxJHDum5nIHRo4bupIHThu7E6IOKAnCVz4oCdIHRyxrDhu5tjIOKAnCVz4oCdIgogCi0jOiBtaWR4LmM6MjA1CisjOiBtaWR4LmM6MjEwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBwYWNrLWludC1pZDogJXUgKCV1IHRvdGFsIHBhY2tzKSIKIG1zZ3N0ciAicGFjay1pbnQtaWQgc2FpOiAldSAoJXUgY8OhYyBnw7NpIHThu5VuZykiCiAKLSM6IG1pZHguYzoyNDYKKyM6IG1pZHguYzoyNjAKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHN0b3JlcyBhIDY0LWJpdCBvZmZzZXQsIGJ1dCBvZmZfdCBpcyB0b28gc21hbGwiCiBtc2dzdHIgIm11bHRpLXBhY2staW5kZXggbMawdSB0cuG7ryBt4buZdCBraG/huqNuZyBiw7kgNjQtYsOtdCwgbmjGsG5nIG9mZl90IGzDoCBxdcOhIG5o4buPIgogCi0jOiBtaWR4LmM6MjcxCisjOiBtaWR4LmM6Mjg4CiBtc2dpZCAiZXJyb3IgcHJlcGFyaW5nIHBhY2tmaWxlIGZyb20gbXVsdGktcGFjay1pbmRleCIKIG1zZ3N0ciAibOG7l2kgY2h14bqpbiBi4buLIHThuq1wIHRpbiBnw7NpIHThu6sgbXVsdGktcGFjay1pbmRleCIKIAotIzogbWlkeC5jOjQwNworIzogbWlkeC5jOjQ3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gYWRkIHBhY2tmaWxlICclcyciCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSB0aMOqbSB04bqtcCB0aW4gZ8OzaSDigJwlc+KAnSIKIAotIzogbWlkeC5jOjQxMworIzogbWlkeC5jOjQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrLWluZGV4ICclcyciCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBt4bufIHBhY2staW5kZXgg4oCcJXPigJ0iCiAKLSM6IG1pZHguYzo1MDcKKyM6IG1pZHguYzo1MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvY2F0ZSBvYmplY3QgJWQgaW4gcGFja2ZpbGUiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBwaMOibiBi4buVIMSR4buRaSB0xrDhu6NuZyDigJwlZOKAnSB0cm9uZyB04bqtcCB0aW4gZ8OzaSIKIAotIzogbWlkeC5jOjk0MworIzogbWlkeC5jOjg0MgorbXNnaWQgIkFkZGluZyBwYWNrZmlsZXMgdG8gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAixJBhbmcgdGjDqm0gdOG6rXAgdGluIGfDs2kgdOG7qyBtdWx0aS1wYWNrLWluZGV4IgorCisjOiBtaWR4LmM6ODc1CisjLCBjLWZvcm1hdAorbXNnaWQgImRpZCBub3Qgc2VlIHBhY2stZmlsZSAlcyB0byBkcm9wIgorbXNnc3RyICLEkcOjIGtow7RuZyB0aOG6pXkgdOG6rXAgdGluIGfDs2kgJXMgxJHhu4MgbcOgIHjDs2EiCisKKyM6IG1pZHguYzo5NzMKK21zZ2lkICJXcml0aW5nIGNodW5rcyB0byBtdWx0aS1wYWNrLWluZGV4IgorbXNnc3RyICLEkGFuZyBnaGkgY8OhYyBraMO6YyB2w6BvIG11bHRpLXBhY2staW5kZXgiCisKKyM6IG1pZHguYzoxMDUyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjbGVhciBtdWx0aS1wYWNrLWluZGV4IGF0ICVzIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgeMOzYSBtdWx0aS1wYWNrLWluZGV4IHThuqFpICVzIgogCi0jOiBtaWR4LmM6OTgxCisjOiBtaWR4LmM6MTEwOAorbXNnaWQgIkxvb2tpbmcgZm9yIHJlZmVyZW5jZWQgcGFja2ZpbGVzIgorbXNnc3RyICLEkGFuZyBraMOzYSBjaG8gY8OhYyBnw7NpIGLhu4sgdGhhbSBjaGnhur91IgorCisjOiBtaWR4LmM6MTEyMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAib2lkIGZhbm91dCBvdXQgb2Ygb3JkZXI6IGZhbm91dFslZF0gPSAlPFBSSXgzMj4gPiAlPFBSSXgzMj4gPSBmYW5vdXRbJWRdIgogbXNnc3RyICJmYW5vdXQgY8WpIHNhaSB0aOG7qSB04buxOiBmYW5vdXRbJWRdID0gJTxQUkl4MzI+ID4gJTxQUkl4MzI+ID0gZmFub3V0WyVkXSIKIAotIzogbWlkeC5jOjk5MgorIzogbWlkeC5jOjExMjgKK21zZ2lkICJWZXJpZnlpbmcgT0lEIG9yZGVyIGluIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIlRo4bqpbSB0cmEgdGjhu6kgdOG7sSBPSUQgdHJvbmcgbXVsdGktcGFjay1pbmRleCIKKworIzogbWlkeC5jOjExMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAib2lkIGxvb2t1cCBvdXQgb2Ygb3JkZXI6IG9pZFslZF0gPSAlcyA+PSAlcyA9IG9pZFslZF0iCiBtc2dzdHIgImxvb2t1cCBjxakgc2FpIHRo4bupIHThu7E6IG9pZFslZF0gPSAlcyA+PSAlcyA9IG9pZFslZF0iCiAKLSM6IG1pZHguYzo5OTYKKyM6IG1pZHguYzoxMTU3Cittc2dpZCAiU29ydGluZyBvYmplY3RzIGJ5IHBhY2tmaWxlIgorbXNnc3RyICLEkGFuZyBz4bqvcCB44bq/cCBjw6FjIMSR4buRaSB0xrDhu6NuZyB0aGVvIHThuq1wIHRpbiBnw7NpIgorCisjOiBtaWR4LmM6MTE2NAogbXNnaWQgIlZlcmlmeWluZyBvYmplY3Qgb2Zmc2V0cyIKIG1zZ3N0ciAixJBhbmcgdGjhuqltIHRyYSBjw6FjIGtob+G6o25nIGLDuSDEkeG7kWkgdMaw4bujbmciCiAKLSM6IG1pZHguYzoxMDA0CisjOiBtaWR4LmM6MTE4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBwYWNrIGVudHJ5IGZvciBvaWRbJWRdID0gJXMiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSB04bqjaSBt4bulYyBnw7NpIGNobyBvaWRbJWRdID0gJXMiCiAKLSM6IG1pZHguYzoxMDEwCisjOiBtaWR4LmM6MTE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBwYWNrLWluZGV4IGZvciBwYWNrZmlsZSAlcyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHThuqNpIHBhY2staW5kZXggY2hvIHThuq1wIHRpbiBnw7NpICVzIgogCi0jOiBtaWR4LmM6MTAxOQorIzogbWlkeC5jOjExOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5jb3JyZWN0IG9iamVjdCBvZmZzZXQgZm9yIG9pZFslZF0gPSAlczogJTxQUkl4NjQ+ICE9ICU8UFJJeDY0PiIKIG1zZ3N0ciAiIgogImtob+G6o25nIGLDuSDEkeG7kWkgdMaw4bujbmcga2jDtG5nIMSRw7puZyBjaG8gb2lkWyVkXSA9ICVzOiAlPFBSSXg2ND4gIT0gJTxQUkl4NjQ+IgogCi0jOiBuYW1lLWhhc2guYzo1MzIKKyM6IG1pZHguYzoxMjIwCittc2dpZCAiQ291bnRpbmcgcmVmZXJlbmNlZCBvYmplY3RzIgorbXNnc3RyICLEkGFuZyDEkeG6v20gY8OhYyDEkeG7kWkgdMaw4bujbmcgxJHGsOG7o2MgdGhhbSBjaGnhur91IgorCisjOiBtaWR4LmM6MTIzMAorbXNnaWQgIkZpbmRpbmcgYW5kIGRlbGV0aW5nIHVucmVmZXJlbmNlZCBwYWNrZmlsZXMiCittc2dzdHIgIsSQYW5nIHTDrG0gdsOgIHjDs2EgY8OhYyBnw7NpIGtow7RuZyDEkcaw4bujYyB0aGFtIGNoaeG6v3UiCisKKyM6IG1pZHguYzoxMzg4Cittc2dpZCAiY291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHRow7RuZyB0aW4gdGjhu5FuZyBrw6ogduG7gSBjw6FjIMSR4buRaSB0xrDhu6NuZyBnw7NpIgorCisjOiBtaWR4LmM6MTQwNworbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggcGFjay1vYmplY3RzIgorbXNnc3RyICJraMO0bmcgdGjhu4MgaG/DoG4gdGhp4buHbiBjw6FjIMSR4buRaSB0xrDhu6NuZyBnw7NpIgorCisjOiBuYW1lLWhhc2guYzo1MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsYXp5X2RpciB0aHJlYWQ6ICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gdHV54bq/biBsYXp5X2RpcjogJXMiCiAKLSM6IG5hbWUtaGFzaC5jOjU1NAorIzogbmFtZS1oYXNoLmM6NTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbGF6eV9uYW1lIHRocmVhZDogJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyB0dXnhur9uIGxhenlfbmFtZTogJXMiCiAKLSM6IG5hbWUtaGFzaC5jOjU2MAorIzogbmFtZS1oYXNoLmM6NTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBqb2luIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgZ2lhIG5o4bqtcCB0dXnhur9uIGxhenlfbmFtZTogJXMiCiAKLSM6IG5vdGVzLW1lcmdlLmM6Mjc1CisjOiBub3Rlcy1tZXJnZS5jOjI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIHByZXZpb3VzIG5vdGVzIG1lcmdlICglcyBleGlzdHMpLlxuIgpAQCAtMzQxMiwyMyArNDk0OSwyMyBAQAogImNodXnhu4NuIGdpYW8gaGF5IGLDo2kgYuG7jyBs4bqnbiBow7JhIHRy4buZbiB0csaw4bubYyDEkcOieSB2w6AgYuG6r3QgxJHhuqd1IG3hu5l0IGjDsmEgdHLhu5luIGdoaSAiCiAiY2jDuiBt4bubaS4iCiAKLSM6IG5vdGVzLW1lcmdlLmM6MjgyCisjOiBub3Rlcy1tZXJnZS5jOjI4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbm90ZXMgbWVyZ2UgKCVzIGV4aXN0cykuIgogbXNnc3RyICJC4bqhbiBjaMawYSBr4bq/dCB0aMO6YyB2aeG7h2MgaMOyYSB0cuG7mW4gZ2hpIGNow7ogKCVzIHbhuqtuIHThu5NuIHThuqFpKS4iCiAKLSM6IG5vdGVzLXV0aWxzLmM6NDUKKyM6IG5vdGVzLXV0aWxzLmM6NDYKIG1zZ2lkICJDYW5ub3QgY29tbWl0IHVuaW5pdGlhbGl6ZWQvdW5yZWZlcmVuY2VkIG5vdGVzIHRyZWUiCiBtc2dzdHIgIiIKICJLaMO0bmcgdGjhu4MgY2h1eeG7g24gZ2lhbyBjw6J5IGdoaSBjaMO6IGNoxrBhIMSRxrDhu6NjIGto4bufaSB04bqhbyBob+G6t2Mga2jDtG5nIMSRxrDhu6NjIHRoYW0gIgogImNoaeG6v3UiCiAKLSM6IG5vdGVzLXV0aWxzLmM6MTA0CisjOiBub3Rlcy11dGlscy5jOjEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgbm90ZXMucmV3cml0ZU1vZGUgdmFsdWU6ICclcyciCiBtc2dzdHIgIkdpw6EgdHLhu4sgbm90ZXMucmV3cml0ZU1vZGUgc2FpOiDigJwlc+KAnSIKIAotIzogbm90ZXMtdXRpbHMuYzoxMTQKKyM6IG5vdGVzLXV0aWxzLmM6MTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIHJld3JpdGUgbm90ZXMgaW4gJXMgKG91dHNpZGUgb2YgcmVmcy9ub3Rlcy8pIgogbXNnc3RyICJU4burIGNo4buRaSBnaGkgxJHDqCBnaGkgY2jDuiB0cm9uZyAlcyAobuG6sW0gbmdvw6BpIHJlZnMvbm90ZXMvKSIKQEAgLTM0MzcsMTIgKzQ5NzQsMTIgQEAKICMuIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSwgdGhlIHNlY29uZCAlcyBpcwogIy4gaXRzIHZhbHVlLgogIy4KLSM6IG5vdGVzLXV0aWxzLmM6MTQ0CisjOiBub3Rlcy11dGlscy5jOjE0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgJXMgdmFsdWU6ICclcyciCiBtc2dzdHIgIkdpw6EgdHLhu4sgJXMgc2FpOiDigJwlc+KAnSIKIAotIzogb2JqZWN0LmM6NTQKKyM6IG9iamVjdC5jOjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgb2JqZWN0IHR5cGUgXCIlc1wiIgogbXNnc3RyICJraeG7g3UgxJHhu5FpIHTGsOG7o25nIFwiJXNcIiBraMO0bmcgaOG7o3AgbOG7hyIKQEAgLTM0NjIsMzEgKzQ5OTksOTEgQEAKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2Ugb2JqZWN0OiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIMSR4buRaSB0xrDhu6NuZzog4oCcJXPigJ0iCiAKLSM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzcKKyM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzgKICMsIGMtZm9ybWF0Ci1tc2dpZCAic2hhMSBtaXNtYXRjaCAlcyIKLW1zZ3N0ciAic2hhMSBraMO0bmcga2jhu5twICVzIgorbXNnaWQgImhhc2ggbWlzbWF0Y2ggJXMiCittc2dzdHIgIm3DoyBixINtIGtow7RuZyBraOG7m3AgJXMiCiAKLSM6IHBhY2tmaWxlLmM6NjA3CisjOiBwYWNrZmlsZS5jOjYyOQogbXNnaWQgIm9mZnNldCBiZWZvcmUgZW5kIG9mIHBhY2tmaWxlIChicm9rZW4gLmlkeD8pIgogbXNnc3RyICJ24buLIHRyw60gdMawxqFuZyDEkeG7kWkgdHLGsOG7m2MgxJFp4buDbSBr4bq/dCB0aMO6YyBj4bunYSB04bqtcCB0aW4gZ8OzaSAoLmlkeCBo4buPbmcgw6A/KSIKIAotIzogcGFja2ZpbGUuYzoxODY0CisjOiBwYWNrZmlsZS5jOjE4OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAib2Zmc2V0IGJlZm9yZSBzdGFydCBvZiBwYWNrIGluZGV4IGZvciAlcyAoY29ycnVwdCBpbmRleD8pIgogbXNnc3RyICJ24buLIHRyw60gdMawxqFuZyDEkeG7kWkgbuG6sW0gdHLGsOG7m2MgY2jhu4kgbeG7pWMgZ8OzaSBjaG8gJXMgKG3hu6VjIGzhu6VjIGLhu4sgaOG7j25nIMOgPykiCiAKLSM6IHBhY2tmaWxlLmM6MTg2OAorIzogcGFja2ZpbGUuYzoxOTAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9mZnNldCBiZXlvbmQgZW5kIG9mIHBhY2sgaW5kZXggZm9yICVzICh0cnVuY2F0ZWQgaW5kZXg/KSIKIG1zZ3N0ciAiIgogInbhu4sgdHLDrSB0xrDGoW5nIMSR4buRaSB2xrDhu6N0IHF1w6EgY3Xhu5FpIGPhu6dhIGNo4buJIG3hu6VjIGfDs2kgY2hvICVzICht4bulYyBs4bulYyBi4buLIGPhuq90IGPhu6V0IMOgPykiCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo2NzIKKyM6IHBhY2stYml0bWFwLmM6ODAwIHBhY2stYml0bWFwLmM6ODA2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IHNpemUgb2YgJXMiCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSBrw61jaCBj4buhIGPhu6dhICVzIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVxdWlyZXMgYSB2YWx1ZSIKK21zZ3N0ciAi4oCcJXPigJ0gecOqdSBj4bqndSBt4buZdCBnacOhIHRy4buLIgorCisjOiBwYXJzZS1vcHRpb25zLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgaW5jb21wYXRpYmxlIHdpdGggJXMiCittc2dzdHIgIiVzIGzDoCB4dW5nIGto4bqvYyB24bubaSAlcyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIDogaW5jb21wYXRpYmxlIHdpdGggc29tZXRoaW5nIGVsc2UiCittc2dzdHIgIiVzIDogeHVuZyBraOG6r2MgduG7m2kgY8OhYyBjw6FpIGtow6FjIgorCisjOiBwYXJzZS1vcHRpb25zLmM6OTIgcGFyc2Utb3B0aW9ucy5jOjk2IHBhcnNlLW9wdGlvbnMuYzozMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdGFrZXMgbm8gdmFsdWUiCittc2dzdHIgIiVzIGsgbmjhuq1uIGdpw6EgdHLhu4siCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpc24ndCBhdmFpbGFibGUiCittc2dzdHIgIiVzIGtow7RuZyBz4bq1biBjw7MiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzoyMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIHZhbHVlIHdpdGggYW4gb3B0aW9uYWwgay9tL2cgc3VmZml4IgorbXNnc3RyICIlcyBj4bqnbiBt4buZdCBnacOhIHRy4buLIGThuqFuZyBz4buRIGtow7RuZyDDom0gduG7m2kgbeG7mXQgaOG6rXUgdOG7kSB0w7l5IGNo4buNbiBrL20vZyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjM4NgorIywgYy1mb3JtYXQKK21zZ2lkICJhbWJpZ3VvdXMgb3B0aW9uOiAlcyAoY291bGQgYmUgLS0lcyVzIG9yIC0tJXMlcykiCittc2dzdHIgInTDuXkgY2jhu41uIGNoxrBhIHLDtSByYW5nOiAlcyAobsOqbiBsw6AgLS0lcyVzIGhheSAtLSVzJXMpIgorCisjOiBwYXJzZS1vcHRpb25zLmM6NDIwIHBhcnNlLW9wdGlvbnMuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIHlvdSBtZWFuIGAtLSVzYCAod2l0aCB0d28gZGFzaGVzKT8iCittc2dzdHIgImPDsyBwaOG6o2kgw70gYuG6oW4gbMOgIOKAnC0tJXPigJwgKHbhu5tpIGhhaSBk4bqldSBn4bqhY2ggbmdhbmcpPyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjg1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJraMO0bmcgaGnhu4N1IHTDuXkgY2jhu41uIOKAnCVz4oCdIgorCisjOiBwYXJzZS1vcHRpb25zLmM6ODU5CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gc3dpdGNoIGAlYyciCittc2dzdHIgImtow7RuZyBoaeG7g3UgdMO5eSBjaOG7jW4g4oCcJWPigJ0iCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBub24tYXNjaWkgb3B0aW9uIGluIHN0cmluZzogYCVzJyIKK21zZ3N0ciAia2jDtG5nIGhp4buDdSB0w7l5IGNo4buNbiBub24tYXNjaWkgdHJvbmcgY2h14buXaTog4oCcJXPigJ0iCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4ODUKIG1zZ2lkICIuLi4iCiBtc2dzdHIgIuKApiIKIAotIzogcGFyc2Utb3B0aW9ucy5jOjY5MQorIzogcGFyc2Utb3B0aW9ucy5jOjkwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1c2FnZTogJXMiCiBtc2dzdHIgImPDoWNoIGTDuW5nOiAlcyIKQEAgLTM0OTQsNTkgKzUwOTEsNzQgQEAKICMuIFRSQU5TTEFUT1JTOiB0aGUgY29sb24gaGVyZSBzaG91bGQgYWxpZ24gd2l0aCB0aGUKICMuIG9uZSBpbiAidXNhZ2U6ICVzIiB0cmFuc2xhdGlvbi4KICMuCi0jOiBwYXJzZS1vcHRpb25zLmM6Njk3CisjOiBwYXJzZS1vcHRpb25zLmM6OTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgIG9yOiAlcyIKIG1zZ3N0ciAiICAgICBob+G6t2M6ICVzIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzAwCisjOiBwYXJzZS1vcHRpb25zLmM6OTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlcyIKIG1zZ3N0ciAiICAgICVzIgogCi0jOiBwYXJzZS1vcHRpb25zLmM6NzM5CisjOiBwYXJzZS1vcHRpb25zLmM6OTUyCiBtc2dpZCAiLU5VTSIKIG1zZ3N0ciAiLVPhu5AiCiAKLSM6IHBhcnNlLW9wdGlvbnMtY2IuYzozNworIzogcGFyc2Utb3B0aW9ucy5jOjk2NgorIywgYy1mb3JtYXQKK21zZ2lkICJhbGlhcyBvZiAtLSVzIgorbXNnc3RyICJiw60gZGFuaCBj4bunYSAtLSVzIgorCisjOiBwYXJzZS1vcHRpb25zLWNiLmM6MjAgcGFyc2Utb3B0aW9ucy1jYi5jOjI0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCittc2dzdHIgInTDuXkgY2jhu41uIOKAnCVz4oCdIGPhuqduIG3hu5l0IGdpw6EgdHLhu4sgYuG6sW5nIHPhu5EiCisKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzo0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgZXhwaXJhdGlvbiBkYXRlICclcyciCiBtc2dzdHIgIm5nw6B5IHRow6FuZyBo4bq/dCBo4bqhbiBk4buLIGjDrG5oIOKAnCVz4oCdIgogCi0jOiBwYXJzZS1vcHRpb25zLWNiLmM6MTA5CisjOiBwYXJzZS1vcHRpb25zLWNiLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBcImFsd2F5c1wiLCBcImF1dG9cIiwgb3IgXCJuZXZlclwiIgorbXNnc3RyICJ0w7l5IGNo4buNbiDigJwlc+KAnSBj4bqnbiBcImFsd2F5c1wiLCBcImF1dG9cIiwgaG/hurdjIFwibmV2ZXJcIiIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjEzMCBwYXJzZS1vcHRpb25zLWNiLmM6MTQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAnJXMnIgogbXNnc3RyICJ0w6puIMSR4buRaSB0xrDhu6NuZyBk4buLIGjDrG5oIOKAnCVz4oCdIgogCi0jOiBwYXRoLmM6ODk0CisjOiBwYXRoLmM6OTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBtYWtlICVzIHdyaXRhYmxlIGJ5IGdyb3VwIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgbMOgbSAlcyDEkcaw4bujYyBnaGkgYuG7n2kgbmjDs20iCiAKLSM6IHBhdGhzcGVjLmM6MTI5CisjOiBwYXRoc3BlYy5jOjEzMAogbXNnaWQgIkVzY2FwZSBjaGFyYWN0ZXIgJ1xcJyBub3QgYWxsb3dlZCBhcyBsYXN0IGNoYXJhY3RlciBpbiBhdHRyIHZhbHVlIgogbXNnc3RyICIiCiAiS8O9IHThu7EgdGhvw6F0IGNodeG7l2kg4oCcXFzigJ0ga2jDtG5nIMSRxrDhu6NjIHBow6lwIGzDoCBrw70gdOG7sSBjdeG7kWkgdHJvbmcgZ2nDoSB0cuG7iyB0aHXhu5ljIHTDrW5oIgogCi0jOiBwYXRoc3BlYy5jOjE0NworIzogcGF0aHNwZWMuYzoxNDgKIG1zZ2lkICJPbmx5IG9uZSAnYXR0cjonIHNwZWNpZmljYXRpb24gaXMgYWxsb3dlZC4iCi1tc2dzdHIgImNo4buJIGPDsyBt4buZdCDEkeG6t2MgdOG6oyDigJxhdHRyOuKAnSBsw6AgxJHGsOG7o2MgcGjDqXAuIgorbXNnc3RyICJDaOG7iSBjw7MgbeG7mXQgxJHhurdjIHThuqMg4oCcYXR0cjrigJ0gbMOgIMSRxrDhu6NjIHBow6lwLiIKIAotIzogcGF0aHNwZWMuYzoxNTAKKyM6IHBhdGhzcGVjLmM6MTUxCiBtc2dpZCAiYXR0ciBzcGVjIG11c3Qgbm90IGJlIGVtcHR5IgogbXNnc3RyICLEkeG6t2MgdOG6oyBhdHRyIHBo4bqjaSBraMO0bmcgxJHGsOG7o2MgxJHhu4MgdHLhu5FuZyIKIAotIzogcGF0aHNwZWMuYzoxOTMKKyM6IHBhdGhzcGVjLmM6MTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgYXR0cmlidXRlIG5hbWUgJXMiCiBtc2dzdHIgInTDqm4gdGh14buZYyB0w61uaCBraMO0bmcgaOG7o3AgbOG7hyAlcyIKIAotIzogcGF0aHNwZWMuYzoyNTgKKyM6IHBhdGhzcGVjLmM6MjU5CiBtc2dpZCAiZ2xvYmFsICdnbG9iJyBhbmQgJ25vZ2xvYicgcGF0aHNwZWMgc2V0dGluZ3MgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiIgogImPDoWMgY8OgaSDEkeG6t3QgxJHhurdjIHThuqMgxJHGsOG7nW5nIGThuqtuIOKAnGdsb2LigJ0gdsOgIOKAnG5vZ2xvYuKAnSB0b8OgbiBj4bulYyBsw6AgeHVuZyBraOG6r2MgbmhhdSIKIAotIzogcGF0aHNwZWMuYzoyNjUKKyM6IHBhdGhzcGVjLmM6MjY2CiBtc2dpZCAiIgogImdsb2JhbCAnbGl0ZXJhbCcgcGF0aHNwZWMgc2V0dGluZyBpcyBpbmNvbXBhdGlibGUgd2l0aCBhbGwgb3RoZXIgZ2xvYmFsICIKICJwYXRoc3BlYyBzZXR0aW5ncyIKQEAgLTM1NTQsMTI4ICs1MTY2LDIwMSBAQAogImPDoGkgxJHhurd0IMSR4bq3YyB04bqjIMSRxrDhu51uZyBk4bqrbiDigJxsaXRlcmFs4oCdIHRvw6BuIGPhu6VjIGzDoCB4dW5nIGto4bqvYyB24bubaSBjw6FjIGPDoGkgxJHhurd0IMSR4bq3YyAiCiAidOG6oyDEkcaw4budbmcgZOG6q24gdG/DoG4gY+G7pWMga2jDoWMiCiAKLSM6IHBhdGhzcGVjLmM6MzA1CisjOiBwYXRoc3BlYy5jOjMwNgogbXNnaWQgImludmFsaWQgcGFyYW1ldGVyIGZvciBwYXRoc3BlYyBtYWdpYyAncHJlZml4JyIKIG1zZ3N0ciAidGhhbSBz4buRIGtow7RuZyBo4bujcCBs4buHIGNobyDigJx0aeG7gW4gdOG7keKAnSBtw6B1IG5oaeG7h20gxJHhurdjIHThuqMgxJHGsOG7nW5nIMSR4bqrbiIKIAotIzogcGF0aHNwZWMuYzozMjYKKyM6IHBhdGhzcGVjLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgcGF0aHNwZWMgbWFnaWMgJyUuKnMnIGluICclcyciCiBtc2dzdHIgIlPhu5EgbcOgdSBuaGnhu4dtIMSR4bq3YyB04bqjIMSRxrDhu51uZyBk4bqrbiBraMO0bmcgaOG7o3AgbOG7hyDigJwlLipz4oCdIHRyb25nIOKAnCVz4oCdIgogCi0jOiBwYXRoc3BlYy5jOjMzMQorIzogcGF0aHNwZWMuYzozMzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWlzc2luZyAnKScgYXQgdGhlIGVuZCBvZiBwYXRoc3BlYyBtYWdpYyBpbiAnJXMnIgogbXNnc3RyICJUaGnhur91IOKAnCnigJ0gdOG6oWkgY3Xhu5FpIGPhu6dhIHPhu5EgbcOgdSBuaGnhu4dtIMSR4bq3YyB04bqjIMSRxrDhu51uZyBk4bqrbiB0cm9uZyDigJwlc+KAnSIKIAotIzogcGF0aHNwZWMuYzozNjkKKyM6IHBhdGhzcGVjLmM6MzcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuaW1wbGVtZW50ZWQgcGF0aHNwZWMgbWFnaWMgJyVjJyBpbiAnJXMnIgogbXNnc3RyICJDaMawYSB2aeG6v3QgbcOjIGNobyBz4buRIG3DoHUgbmhp4buHbSDEkeG6t2MgdOG6oyDEkcaw4budbmcgZOG6q24g4oCcJWPigJ0gdHJvbmcg4oCcJXPigJ0iCiAKLSM6IHBhdGhzcGVjLmM6NDI4CisjOiBwYXRoc3BlYy5jOjQyOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogJ2xpdGVyYWwnIGFuZCAnZ2xvYicgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiJXM6IOKAnGxpdGVyYWzigJ0gdsOgIOKAnGdsb2LigJ0geHVuZyBraOG6r2MgbmhhdSIKIAotIzogcGF0aHNwZWMuYzo0NDEKKyM6IHBhdGhzcGVjLmM6NDQyCiAjLCBjLWZvcm1hdAotbXNnaWQgIiVzOiAnJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSIKLW1zZ3N0ciAiJXM6IOKAnCVz4oCdIG5nb8OgaSBt4buZdCBraG8gY2jhu6lhIgorbXNnaWQgIiVzOiAnJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSBhdCAnJXMnIgorbXNnc3RyICIlczog4oCcJXPigJ0gbmdvw6BpIG3hu5l0IGtobyBjaOG7qWEgdOG6oWkgJyVzJyIKIAotIzogcGF0aHNwZWMuYzo1MTUKKyM6IHBhdGhzcGVjLmM6NTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgKG1uZW1vbmljOiAnJWMnKSIKIG1zZ3N0ciAi4oCcJXPigJ0gKG1uZW1vbmljOiDigJwlY+KAnSkiCiAKLSM6IHBhdGhzcGVjLmM6NTI1CisjOiBwYXRoc3BlYy5jOjUyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogcGF0aHNwZWMgbWFnaWMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvbW1hbmQ6ICVzIgogbXNnc3RyICIlczogc+G7kSBt4bqndSBuaGnhu4dtIMSR4bq3YyB04bqjIMSRxrDhu51uZyBk4bqrbiBjaMawYSDEkcaw4bujYyBo4buXIHRy4bujIGLhu59pIGzhu4duaCBuw6B5OiAlcyIKIAotIzogcGF0aHNwZWMuYzo1OTIKKyM6IHBhdGhzcGVjLmM6NTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGhzcGVjICclcycgaXMgYmV5b25kIGEgc3ltYm9saWMgbGluayIKIG1zZ3N0ciAixJHhurdjIHThuqMgxJHGsOG7nW5nIGThuqtuIOKAnCVz4oCdIHbGsOG7o3QgcmEgbmdvw6BpIGxpw6puIGvhur90IG3hu4FtIgogCi0jOiBwa3QtbGluZS5jOjEwNAorIzogcGF0aHNwZWMuYzo2MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBpcyBiYWRseSBxdW90ZWQ6ICVzIgorbXNnc3RyICJkw7JuZyDEkcaw4bujYyB0csOtY2ggZOG6q24gc2FpOiAlcyIKKworIzogcGt0LWxpbmUuYzo5MgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmbHVzaCBwYWNrZXQiCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG6qXkgZOG7ryBsaeG7h3UgY+G7p2EgZ8OzaSBsw6puIMSRxKlhIgorCisjOiBwa3QtbGluZS5jOjk5Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGRlbGltIHBhY2tldCIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGdoaSBnw7NpIGRlbGltIgorCisjOiBwa3QtbGluZS5jOjEwNgogbXNnaWQgImZsdXNoIHBhY2tldCB3cml0ZSBmYWlsZWQiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBnaGkgdsOgbyB04bqtcCB0aW4gZ8OzaSBsw7pjIMSR4bqpeSBk4buvIGxp4buHdSBsw6puIGLhu5kgbmjhu5siCiAKLSM6IHBrdC1saW5lLmM6MTQyIHBrdC1saW5lLmM6MjI4CisjOiBwa3QtbGluZS5jOjE0NiBwa3QtbGluZS5jOjIzMgogbXNnaWQgInByb3RvY29sIGVycm9yOiBpbXBvc3NpYmx5IGxvbmcgbGluZSIKIG1zZ3N0ciAibOG7l2kgZ2lhbyB0aOG7qWM6IGtow7RuZyB0aOG7gyBsw6BtIMSRxrDhu6NjIGTDsm5nIGTDoGkiCiAKLSM6IHBrdC1saW5lLmM6MTU4IHBrdC1saW5lLmM6MTYwCisjOiBwa3QtbGluZS5jOjE2MiBwa3QtbGluZS5jOjE2NAogbXNnaWQgInBhY2tldCB3cml0ZSB3aXRoIGZvcm1hdCBmYWlsZWQiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBnaGkgZ8OzaSBjw7MgxJHhu4tuaCBk4bqhbmciCiAKLSM6IHBrdC1saW5lLmM6MTkyCisjOiBwa3QtbGluZS5jOjE5NgogbXNnaWQgInBhY2tldCB3cml0ZSBmYWlsZWQgLSBkYXRhIGV4Y2VlZHMgbWF4IHBhY2tldCBzaXplIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgZ2hpIGfDs2kgLSBk4buvIGxp4buHdSB2xrDhu6N0IHF1w6EgY+G7oSB2w7NpIHThu5FpIMSRYSIKIAotIzogcGt0LWxpbmUuYzoxOTkgcGt0LWxpbmUuYzoyMDYKKyM6IHBrdC1saW5lLmM6MjAzIHBrdC1saW5lLmM6MjEwCiBtc2dpZCAicGFja2V0IHdyaXRlIGZhaWxlZCIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIGdoaSBnw7NpIgogCi0jOiBwa3QtbGluZS5jOjI5MQorIzogcGt0LWxpbmUuYzoyOTUKIG1zZ2lkICJyZWFkIGVycm9yIgogbXNnc3RyICJs4buXaSDEkeG7jWMiCiAKLSM6IHBrdC1saW5lLmM6Mjk5CisjOiBwa3QtbGluZS5jOjMwMwogbXNnaWQgInRoZSByZW1vdGUgZW5kIGh1bmcgdXAgdW5leHBlY3RlZGx5IgogbXNnc3RyICJtw6F5IGNo4bunIGLhu4sgdHJlbyBi4bqldCBuZ+G7nSIKIAotIzogcGt0LWxpbmUuYzozMjcKKyM6IHBrdC1saW5lLmM6MzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sIGVycm9yOiBiYWQgbGluZSBsZW5ndGggY2hhcmFjdGVyOiAlLjRzIgogbXNnc3RyICJs4buXaSBnaWFvIHRo4bupYzoga8O9IHThu7EgY2hp4buBdSBkw6BpIGTDsm5nIGLhu4sgc2FpOiAlLjRzIgogCi0jOiBwa3QtbGluZS5jOjMzNyBwa3QtbGluZS5jOjM0MgorIzogcGt0LWxpbmUuYzozNDEgcGt0LWxpbmUuYzozNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBsaW5lIGxlbmd0aCAlZCIKIG1zZ3N0ciAibOG7l2kgZ2lhbyB0aOG7qWM6IGNoaeG7gXUgZMOgaSBkw7JuZyBi4buLIHNhaSAlZCIKIAotIzogcHJlbG9hZC1pbmRleC5jOjExOAorIzogcGt0LWxpbmUuYzozNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlIGVycm9yOiAlcyIKK21zZ3N0ciAibOG7l2kgbcOheSBjaOG7pzogJXMiCisKKyM6IHByZWxvYWQtaW5kZXguYzoxMTkKIG1zZ2lkICJSZWZyZXNoaW5nIGluZGV4IgogbXNnc3RyICJMw6BtIG3hu5tpIGLhuqNuZyBt4bulYyBs4bulYyIKIAotIzogcHJlbG9hZC1pbmRleC5jOjEzNworIzogcHJlbG9hZC1pbmRleC5jOjEzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRocmVhZGVkIGxzdGF0OiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHThuqFvIHR1eeG6v24gdHLDrG5oIGxzdGF0OiAlcyIKIAotIzogcHJldHR5LmM6OTYyCisjOiBwcmV0dHkuYzo5ODEKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgLS1wcmV0dHkgZm9ybWF0IgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggxJHhu4tuaCBk4bqhbmcgLS1wcmV0dHkiCiAKLSM6IHJhbmdlLWRpZmYuYzo1NgorIzogcHJvbWlzb3ItcmVtb3RlLmM6MjMKK21zZ2lkICJSZW1vdGUgd2l0aCBubyBVUkwiCittc2dzdHIgIk3DoXkgY2jhu6cga2jDtG5nIGPDsyDEkeG7i2EgY2jhu4kgVVJMIgorCisjOiBwcm9taXNvci1yZW1vdGUuYzo1OAorIywgYy1mb3JtYXQKK21zZ2lkICJwcm9taXNvciByZW1vdGUgbmFtZSBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIgorbXNnc3RyICJ0w6puIG3DoXkgY2jhu6cgaOG7qWEgaOG6uW4ga2jDtG5nIHRo4buDIGLhuq90IMSR4bqndSBi4bqxbmcgJy8nOiAlcyIKKworIzogcmFuZ2UtZGlmZi5jOjc1CiBtc2dpZCAiY291bGQgbm90IHN0YXJ0IGBsb2dgIgogbXNnc3RyICJraMO0bmcgdGjhu4MgbOG6pXkgdGjDtG5nIHRpbiB0aOG7kW5nIGvDqiB24buBIOKAnGxvZ+KAnCIKIAotIzogcmFuZ2UtZGlmZi5jOjU5CisjOiByYW5nZS1kaWZmLmM6NzcKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBgbG9nYCBvdXRwdXQiCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMga+G6v3QgeHXhuqV0IOKAnGxvZ+KAnSIKIAotIzogcmFuZ2UtZGlmZi5jOjc0IHNlcXVlbmNlci5jOjQ3NjQKKyM6IHJhbmdlLWRpZmYuYzo5NiBzZXF1ZW5jZXIuYzo1MDIwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIGzhuqduIGNodXnhu4NuIGdpYW8g4oCcJXPigJ0iCiAKLSM6IHJhbmdlLWRpZmYuYzoyMjQKKyM6IHJhbmdlLWRpZmYuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGdpdCBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggY8O6IHBow6FwIHBo4bqnbiDEkeG6p3UgZ2l0IOKAnCUuKnPigJ0iCisKKyM6IHJhbmdlLWRpZmYuYzoyODUKIG1zZ2lkICJmYWlsZWQgdG8gZ2VuZXJhdGUgZGlmZiIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHThuqFvIGtow6FjIGJp4buHdCIKIAotIzogcmFuZ2UtZGlmZi5jOjQ1NSByYW5nZS1kaWZmLmM6NDU3CisjOiByYW5nZS1kaWZmLmM6NTE4IHJhbmdlLWRpZmYuYzo1MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGxvZyBmb3IgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIG5o4bqtdCBrw70gY2hvIOKAnCVz4oCdIgogCi0jOiByZWFkLWNhY2hlLmM6MTQ5MAorIzogcmVhZC1jYWNoZS5jOjY4MAorIywgYy1mb3JtYXQKK21zZ2lkICJ3aWxsIG5vdCBhZGQgZmlsZSBhbGlhcyAnJXMnICgnJXMnIGFscmVhZHkgZXhpc3RzIGluIGluZGV4KSIKK21zZ3N0ciAiIgorInPhur0ga2jDtG5nIHRow6ptIGPDoWMgYsOtIGRhbmgg4oCcJXPigJ0gKOKAnCVz4oCdIMSRw6MgY8OzIHThu6sgdHLGsOG7m2MgdHJvbmcgYuG6o25nIG3hu6VjIGzhu6VjKSIKKworIzogcmVhZC1jYWNoZS5jOjY5NgorbXNnaWQgImNhbm5vdCBjcmVhdGUgYW4gZW1wdHkgYmxvYiBpbiB0aGUgb2JqZWN0IGRhdGFiYXNlIgorbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gbeG7mXQgYmxvYiBy4buXbmcgdHJvbmcgY8ahIHPhu58gZOG7ryBsaeG7h3UgxJHhu5FpIHTGsOG7o25nIgorCisjOiByZWFkLWNhY2hlLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW4gb25seSBhZGQgcmVndWxhciBmaWxlcywgc3ltYm9saWMgbGlua3Mgb3IgZ2l0LWRpcmVjdG9yaWVzIgorbXNnc3RyICIiCisiJXM6IGNo4buJIGPDsyB0aOG7gyB0aMOqbSB04bqtcCB0aW4gdGjDtG5nIHRoxrDhu51uZywgbGnDqm4ga+G6v3QgbeG7gW0gaG/hurdjIGdpdC1kaXJlY3RvcmllcyIKKworIzogcmVhZC1jYWNoZS5jOjcyMworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IGhhdmUgYSBjb21taXQgY2hlY2tlZCBvdXQiCittc2dzdHIgIuKAnCVz4oCdIGtow7RuZyBjw7MgbeG7mXQgbOG6p24gY2h1eeG7g24gZ2lhbyBuw6BvIMSRxrDhu6NjIGzhuqV5IHJhIgorCisjOiByZWFkLWNhY2hlLmM6Nzc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbmRleCBmaWxlICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyDEkcOhbmggbeG7pWMgbOG7pWMgdOG6rXAgdGluIOKAnCVz4oCdIgorCisjOiByZWFkLWNhY2hlLmM6Nzk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhZGQgJyVzJyB0byBpbmRleCIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHRow6ptICVzIHbDoG8gYuG6o25nIG3hu6VjIGzhu6VjIgorCisjOiByZWFkLWNhY2hlLmM6ODA1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSB0aOG7kW5nIGvDqiDigJwlc+KAnSIKKworIzogcmVhZC1jYWNoZS5jOjEzMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBhcHBlYXJzIGFzIGJvdGggYSBmaWxlIGFuZCBhcyBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiJXMgY8OzIHbhursga2jDtG5nIHBo4bqjaSBsw6AgdOG6rXAgdGluIHbDoCBjxaluZyBjaOG6s25nIHBo4bqjaSBsw6AgbeG7mXQgdGjGsCBt4bulYyIKKworIzogcmVhZC1jYWNoZS5jOjE1MzYKIG1zZ2lkICJSZWZyZXNoIGluZGV4IgogbXNnc3RyICJMw6BtIHTGsMahaSBt4bubaSBi4bqjbmcgbeG7pWMgbOG7pWMiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNjA0CisjOiByZWFkLWNhY2hlLmM6MTY1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiaW5kZXgudmVyc2lvbiBzZXQsIGJ1dCB0aGUgdmFsdWUgaXMgaW52YWxpZC5cbiIKQEAgLTM2ODQsNyArNTM2OSw3IEBACiAiaW5kZXgudmVyc2lvbiDEkcaw4bujYyDEkeG6t3QsIG5oxrBuZyBnacOhIHRy4buLIGPhu6dhIG7DsyBs4bqhaSBraMO0bmcgaOG7o3AgbOG7hy5cbiIKICJEw7luZyBwaGnDqm4gYuG6o24gJWkiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNjE0CisjOiByZWFkLWNhY2hlLmM6MTY2MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiR0lUX0lOREVYX1ZFUlNJT04gc2V0LCBidXQgdGhlIHZhbHVlIGlzIGludmFsaWQuXG4iCkBAIC0zNjkzLDYwICs1Mzc4LDE2MSBAQAogIkdJVF9JTkRFWF9WRVJTSU9OIMSRxrDhu6NjIMSR4bq3dCwgbmjGsG5nIGdpw6EgdHLhu4sgY+G7p2EgbsOzIGzhuqFpIGtow7RuZyBo4bujcCBs4buHLlxuIgogIkTDuW5nIHBoacOqbiBi4bqjbiAlaSIKIAotIzogcmVhZC1jYWNoZS5jOjE3OTIKKyM6IHJlYWQtY2FjaGUuYzoxNzE3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaWduYXR1cmUgMHglMDh4IgorbXNnc3RyICJjaOG7ryBrw70gc2FpIDB4JTA4eCIKKworIzogcmVhZC1jYWNoZS5jOjE3MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJWQiCittc2dzdHIgInBoacOqbiBi4bqjbiBt4bulYyBs4bulYyBzYWkgJWQiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzI5Cittc2dpZCAiYmFkIGluZGV4IGZpbGUgc2hhMSBzaWduYXR1cmUiCittc2dzdHIgImNo4buvIGvDvSBk4bqhbmcgc2hhMSBjaG8gdOG6rXAgdGluIG3hu6VjIGzhu6VjIGtow7RuZyDEkcO6bmciCisKKyM6IHJlYWQtY2FjaGUuYzoxNzU5CisjLCBjLWZvcm1hdAorbXNnaWQgImluZGV4IHVzZXMgJS40cyBleHRlbnNpb24sIHdoaWNoIHdlIGRvIG5vdCB1bmRlcnN0YW5kIgorbXNnc3RyICJt4bulYyBs4bulYyBkw7luZyBwaOG6p24gbeG7nyBy4buZbmcgJS40cywgY8OhaSBtw6AgY2jDum5nIHTDtGkga2jDtG5nIGhp4buDdSDEkcaw4bujYyIKKworIzogcmVhZC1jYWNoZS5jOjE3NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJS40cyBleHRlbnNpb24iCittc2dzdHIgIsSRYW5nIGzhu50gxJFpIHBo4bqnbiBt4bufIHLhu5luZyAlLjRzIgorCisjOiByZWFkLWNhY2hlLmM6MTc5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGluZGV4IGVudHJ5IGZvcm1hdCAweCUwOHgiCittc2dzdHIgImtow7RuZyBoaeG7g3UgxJHhu4tuaCBk4bqhbmcgbeG7pWMgbOG7pWMgMHglMDh4IgorCisjOiByZWFkLWNhY2hlLmM6MTgxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgbmFtZSBmaWVsZCBpbiB0aGUgaW5kZXgsIG5lYXIgcGF0aCAnJXMnIgogbXNnc3RyICJ0csaw4budbmcgdMOqbiBzYWkgc+G6oW5nIHRyb25nIG3hu6VjIGzhu6VjLCBn4bqnbiDEkcaw4budbmcgZOG6q24g4oCcJXPigJ0iCiAKLSM6IHJlYWQtY2FjaGUuYzoxOTYwIHJlcmVyZS5jOjU2NSByZXJlcmUuYzo1OTkgcmVyZXJlLmM6MTExMSBidWlsdGluL2FkZC5jOjQ1OAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjI4OSBidWlsdGluL2NoZWNrb3V0LmM6NTg1Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTUzIGJ1aWx0aW4vY2xlYW4uYzo5NTQgYnVpbHRpbi9jb21taXQuYzozNDMKLSM6IGJ1aWx0aW4vZGlmZi10cmVlLmM6MTE1IGJ1aWx0aW4vZ3JlcC5jOjQ4OSBidWlsdGluL212LmM6MTQ0Ci0jOiBidWlsdGluL3Jlc2V0LmM6MjQ0IGJ1aWx0aW4vcm0uYzoyNzAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjMyOQorIzogcmVhZC1jYWNoZS5jOjE4NzEKK21zZ2lkICJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBpbiBpbmRleCIKK21zZ3N0ciAiY8OhYyBt4bulYyB0aW4gc3RhZ2Uga2jDtG5nIMSRw7puZyB0aOG7qSB04buxIHRyb25nIG3hu6VjIGzhu6VjIgorCisjOiByZWFkLWNhY2hlLmM6MTg3NAorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGFnZSBlbnRyaWVzIGZvciBtZXJnZWQgZmlsZSAnJXMnIgorbXNnc3RyICJuaGnhu4F1IG3hu6VjIHN0YWdlIGNobyB04bqtcCB0aW4gaMOyYSB0cuG7mW4g4oCcJXPigJ0iCisKKyM6IHJlYWQtY2FjaGUuYzoxODc3CisjLCBjLWZvcm1hdAorbXNnaWQgInVub3JkZXJlZCBzdGFnZSBlbnRyaWVzIGZvciAnJXMnIgorbXNnc3RyICJjw6FjIG3hu6VjIHRpbiBzdGFnZSBraMO0bmcgxJHDum5nIHRo4bupIHThu7EgY2hvIOKAnCVz4oCdIgorCisjOiByZWFkLWNhY2hlLmM6MTk4MyByZWFkLWNhY2hlLmM6MjI3MSByZXJlcmUuYzo1NjUgcmVyZXJlLmM6NTk5IHJlcmVyZS5jOjExMTEKKyM6IHN1Ym1vZHVsZS5jOjE2MTkgYnVpbHRpbi9hZGQuYzo1MzIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NzAgYnVpbHRpbi9jaGVja291dC5jOjY1NiBidWlsdGluL2NsZWFuLmM6OTY3CisjOiBidWlsdGluL2NvbW1pdC5jOjM2NyBidWlsdGluL2RpZmYtdHJlZS5jOjEyMCBidWlsdGluL2dyZXAuYzo0ODUKKyM6IGJ1aWx0aW4vbXYuYzoxNDUgYnVpbHRpbi9yZXNldC5jOjI0NiBidWlsdGluL3JtLmM6MjkwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MzMyCiBtc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IgogbXNnc3RyICJ04bqtcCB0aW4gZ2hpIGLhuqNuZyBt4bulYyBs4bulYyBi4buLIGjhu49uZyIKIAotIzogcmVhZC1jYWNoZS5jOjIxMDEKKyM6IHJlYWQtY2FjaGUuYzoyMTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyB0dXnhur9uIGxvYWRfY2FjaGVfZW50cmllczogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzoyMTE0CisjOiByZWFkLWNhY2hlLmM6MjEzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gam9pbiBsb2FkX2NhY2hlX2VudHJpZXMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdpYSBuaOG6rXAgdHV54bq/biBsb2FkX2NhY2hlX2VudHJpZXM6ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6MjIwMQorIzogcmVhZC1jYWNoZS5jOjIxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGluZGV4IGZpbGUgb3BlbiBmYWlsZWQiCittc2dzdHIgIiVzOiBt4bufIHThuq1wIHRpbiBt4bulYyBs4bulYyBn4bq3cCBs4buXaSIKKworIzogcmVhZC1jYWNoZS5jOjIxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbm5vdCBzdGF0IHRoZSBvcGVuIGluZGV4IgorbXNnc3RyICIlczoga2jDtG5nIHRo4buDIGzhuqV5IHRo4buRbmcga8OqIGLhuqNuZyBt4bulYyBs4bulYyDEkcOjIG3hu58iCisKKyM6IHJlYWQtY2FjaGUuYzoyMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbmRleCBmaWxlIHNtYWxsZXIgdGhhbiBleHBlY3RlZCIKK21zZ3N0ciAiJXM6IHThuq1wIHRpbiBt4bulYyBs4bulYyBuaOG7jyBoxqFuIG1vbmcgxJHhu6NpIgorCisjOiByZWFkLWNhY2hlLmM6MjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG1hcCBpbmRleCBmaWxlIgorbXNnc3RyICIlczoga2jDtG5nIHRo4buDIMOhbmggeOG6oSB04bqtcCB0aW4gbeG7pWMgbOG7pWMiCisKKyM6IHJlYWQtY2FjaGUuYzoyMjI0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9pbmRleF9leHRlbnNpb25zIHRocmVhZDogJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyB0dXnhur9uIGxvYWRfaW5kZXhfZXh0ZW5zaW9uczogJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzoyMjI4CisjOiByZWFkLWNhY2hlLmM6MjI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gam9pbiBsb2FkX2luZGV4X2V4dGVuc2lvbnMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdpYSBuaOG6rXAgdHV54bq/biBsb2FkX2luZGV4X2V4dGVuc2lvbnM6ICVzIgogCi0jOiByZWFkLWNhY2hlLmM6Mjk4MiBzZXF1ZW5jZXIuYzo0NzI3IHdyYXBwZXIuYzo2NTggYnVpbHRpbi9tZXJnZS5jOjEwODYKKyM6IHJlYWQtY2FjaGUuYzoyMjgzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmcmVzaGVuIHNoYXJlZCBpbmRleCAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbMOgbSB0xrDGoWkgbeG7m2kgbeG7pWMgbOG7pWMgxJHDoyBjaGlhIHPhursg4oCcJXPigJ0iCisKKyM6IHJlYWQtY2FjaGUuYzoyMzMwCisjLCBjLWZvcm1hdAorbXNnaWQgImJyb2tlbiBpbmRleCwgZXhwZWN0ICVzIGluICVzLCBnb3QgJXMiCittc2dzdHIgIm3hu6VjIGzhu6VjIGLhu4sgaOG7j25nLCBj4bqnbiAlcyB0cm9uZyAlcywgbmjGsG5nIGzhuqFpIG5o4bqtbiDEkcaw4bujYyAlcyIKKworIzogcmVhZC1jYWNoZS5jOjMwMjYgc3RyYnVmLmM6MTE2MCB3cmFwcGVyLmM6NjIyIGJ1aWx0aW4vbWVyZ2UuYzoxMTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjbG9zZSAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHDs25nIOKAnCVz4oCdIgogCi0jOiByZWFkLWNhY2hlLmM6MzA1NSBzZXF1ZW5jZXIuYzoyMjAzIHNlcXVlbmNlci5jOjM1OTIKKyM6IHJlYWQtY2FjaGUuYzozMTI5IHNlcXVlbmNlci5jOjIzNDMgc2VxdWVuY2VyLmM6Mzk1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc3RhdCAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgbOG6pXkgdGjDtG5nIHRpbiB0aOG7kW5nIGvDqiB24buBIOKAnCVz4oCdIgogCi0jOiByZWFkLWNhY2hlLmM6MzA2OAorIzogcmVhZC1jYWNoZS5jOjMxNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZ2l0IGRpcjogJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHRoxrAgbeG7pWMgZ2l0OiAlcyIKIAotIzogcmVhZC1jYWNoZS5jOjMwODAKKyM6IHJlYWQtY2FjaGUuYzozMTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bmxpbms6ICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgYuG7jyBsacOqbiBr4bq/dCAodW5saW5rKTog4oCcJXPigJ0iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjEwCisjOiByZWFkLWNhY2hlLmM6MzE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZml4IHBlcm1pc3Npb24gYml0cyBvbiAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4Mgc+G7rWEgY8OhYyBiw610IHBow6JuIHF1eeG7gW4gdHLDqm4g4oCcJXPigJ0iCisKKyM6IHJlYWQtY2FjaGUuYzozMzI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW5ub3QgZHJvcCB0byBzdGFnZSAjMCIKK21zZ3N0ciAiJXM6IGtow7RuZyB0aOG7gyB4w7NhIGLhu48gc3RhZ2UgIzAiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjExCittc2dpZCAiIgorIllvdSBjYW4gZml4IHRoaXMgd2l0aCAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tIgorImNvbnRpbnVlJy5cbiIKKyJPciB5b3UgY2FuIGFib3J0IHRoZSByZWJhc2Ugd2l0aCAnZ2l0IHJlYmFzZSAtLWFib3J0Jy5cbiIKK21zZ3N0ciAiIgorIkLhuqFuIGPDsyB0aOG7gyBz4butYSBuw7MgYuG6sW5nIOKAnGdpdCByZWJhc2UgLS1lZGl0LXRvZG/igJ0gdsOgIHNhdSDEkcOzIGNo4bqheSDigJxnaXQgcmViYXNlIC0tIgorImNvbnRpbnVl4oCdLlxuIgorIkhv4bq3YyBsw6AgYuG6oW4gY8OzIHRo4buDIGLDo2kgYuG7jyB2aeG7h2MgY+G6o2kgdOG7lSBi4bqxbmcg4oCcZ2l0IHJlYmFzZSAtLWFib3J04oCdLlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzozMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5yZWNvZ25pemVkIHNldHRpbmcgJXMgZm9yIG9wdGlvbiByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4gSWdub3JpbmcuIgorbXNnc3RyICIiCisia2jDtG5nIG5o4bqtbiByYSBjw6BpIMSR4bq3dCAlcyBjaG8gdMO5eSBjaOG7jW4gcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2suIE7Dqm4gYuG7jyBxdWEuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo0MgogbXNnaWQgIiIKICJcbiIKICJDb21tYW5kczpcbiIKQEAgLTM3OTIsNyArNTU3OCwxMyBAQAogIk5o4buvbmcgZMOybmcgbsOgeSBjw7MgdGjhu4MgxJHhuqNvIG5nxrDhu6NjIHRo4bupIHThu7E7IGNow7puZyBjaOG6oXkgdOG7qyB0csOqbiDEkeG7iW5oIHh14buRbmcgZMaw4bubaSAiCiAixJHDoXkuXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjMxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNzMKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kKSIKK21zZ2lkX3BsdXJhbCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmRzKSIKK21zZ3N0clswXSAiQ+G6o2kgdOG7lSAlcyB2w6BvICVzICglZCBs4buHbmggKSIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NzIgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIyOAogbXNnaWQgIiIKICJcbiIKICJEbyBub3QgcmVtb3ZlIGFueSBsaW5lLiBVc2UgJ2Ryb3AnIGV4cGxpY2l0bHkgdG8gcmVtb3ZlIGEgY29tbWl0LlxuIgpAQCAtMzgwMSw3ICs1NTkzLDcgQEAKICLEkOG7q25nIHjDs2EgYuG6pXQga+G7syBkw7JuZyBuw6BvLiBEw7luZyDigJxkcm9w4oCdIG3hu5l0IGPDoWNoIHLDtSByw6BuZyDEkeG7gyB4w7NhIGLhu48gbeG7mXQgbOG6p24gIgogImNodXnhu4NuIGdpYW8uXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjM0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxNzcKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjc1IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMzIKIG1zZ2lkICIiCiAiXG4iCiAiSWYgeW91IHJlbW92ZSBhIGxpbmUgaGVyZSBUSEFUIENPTU1JVCBXSUxMIEJFIExPU1QuXG4iCkBAIC0zODA5LDcgKzU2MDEsNyBAQAogIlxuIgogIk7hur91IGLhuqFuIHjDs2EgYuG7jyBt4buZdCBkw7JuZyDhu58gxJHDonkgdGjDrCBM4bqmTiBDSFVZ4buCTiBHSUFPIMSQw5MgU+G6vCBN4bqkVC5cbiIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6NDAgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgxNgorIzogcmViYXNlLWludGVyYWN0aXZlLmM6ODEgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg3MQogbXNnaWQgIiIKICJcbiIKICJZb3UgYXJlIGVkaXRpbmcgdGhlIHRvZG8gZmlsZSBvZiBhbiBvbmdvaW5nIGludGVyYWN0aXZlIHJlYmFzZS5cbiIKQEAgLTM4MjMsNyArNTYxNSw3IEBACiAiICAgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogIlxuIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo0NSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODkzCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo4NiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTQ4CiBtc2dpZCAiIgogIlxuIgogIkhvd2V2ZXIsIGlmIHlvdSByZW1vdmUgZXZlcnl0aGluZywgdGhlIHJlYmFzZSB3aWxsIGJlIGFib3J0ZWQuXG4iCkBAIC0zODMzLDEyNSArNTYyNSwxNjEgQEAKICJUdXkgbmhpw6puLCBu4bq/dSBi4bqhbiB4w7NhIGLhu48gbeG7jWkgdGjhu6ksIHZp4buHYyBj4bqjaSB04buVIHPhur0gYuG7iyBiw6NpIGLhu48uXG4iCiAiXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjUxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDAKLW1zZ2lkICJOb3RlIHRoYXQgZW1wdHkgY29tbWl0cyBhcmUgY29tbWVudGVkIG91dCIKLW1zZ3N0ciAiQ2jDuiDDvSBy4bqxbmcgbOG6p24gY2h1eeG7g24gZ2lhbyB0cuG7kW5nIHLhu5duZyBsw6AgZ2hpIGNow7oiCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMTAgcmVyZXJlLmM6NDg1IHJlcmVyZS5jOjY5MiBzZXF1ZW5jZXIuYzozNDQ0CisjOiBzZXF1ZW5jZXIuYzozNDcwIHNlcXVlbmNlci5jOjUxMjUgYnVpbHRpbi9mc2NrLmM6MzQ2IGJ1aWx0aW4vcmViYXNlLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgZ2hpIOKAnCVz4oCdIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo2MiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3NSBzZXF1ZW5jZXIuYzoyMTg2Ci0jOiBzZXF1ZW5jZXIuYzo0NTA1IHNlcXVlbmNlci5jOjQ1NjEgc2VxdWVuY2VyLmM6NDgzNgorIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTE2IGJ1aWx0aW4vcmViYXNlLmM6MTg0IGJ1aWx0aW4vcmViYXNlLmM6MjEwCisjOiBidWlsdGluL3JlYmFzZS5jOjIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJy4iCittc2dzdHIgImtow7RuZyB0aOG7gyBnaGkg4oCcJXPigJ0uIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldhcm5pbmc6IHNvbWUgY29tbWl0cyBtYXkgaGF2ZSBiZWVuIGRyb3BwZWQgYWNjaWRlbnRhbGx5LlxuIgorIkRyb3BwZWQgY29tbWl0cyAobmV3ZXIgdG8gb2xkZXIpOlxuIgorbXNnc3RyICIiCisiQ+G6o25oIGLDoW86IG3hu5l0IHPhu5EgbOG6p24gY2h1eeG7g24gZ2lhbyBjw7MgbOG6vSDEkcOjIGLhu4sgeMOzYSBt4buZdCBjw6FjaCB0w6xuaCBj4budLlxuIgorIkPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBi4buLIHjDs2EgKHThu6sgbeG7m2kgxJHhur9uIGPFqSk6XG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVG8gYXZvaWQgdGhpcyBtZXNzYWdlLCB1c2UgXCJkcm9wXCIgdG8gZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuXG4iCisiXG4iCisiVXNlICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyB0byBjaGFuZ2UgdGhlIGxldmVsIG9mICIKKyJ3YXJuaW5ncy5cbiIKKyJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCisiXG4iCittc2dzdHIgIiIKKyLEkOG7gyB0csOhbmggdGjDtG5nIGLDoW8gbsOgeSwgZMO5bmcgXCJkcm9wXCIgbeG7mXQgY8OhY2ggcsO1IHLDoG5nIMSR4buDIHjDs2EgYuG7jyBt4buZdCBs4bqnbiAiCisiY2h1eeG7g24gZ2lhby5cbiIKKyJcbiIKKyJEw7luZyDigJxnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNr4oCdIMSR4buDIHRoYXkgxJHhu5VpIG3hu6ljIMSR4buZIGPhu6dhIGPhuqNuaCAiCisiYsOhby5cbiIKKyJDw6FuaCDhu6luZyB44butIGPDsyB0aOG7gyBsw6A6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCisiXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjIzMyByZWJhc2UtaW50ZXJhY3RpdmUuYzoyMzggc2VxdWVuY2VyLmM6MjI2MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNzAgYnVpbHRpbi9yZWJhc2UuYzoxOTUgYnVpbHRpbi9yZWJhc2UuYzoyMjEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkICclcycuIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIOKAnCVz4oCdLiIKIAotIzogcmVmcy5jOjE5MgorIzogcmVmcy5jOjI2MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBkb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIG9iamVjdCEiCiBtc2dzdHIgIuKAnCVz4oCdIGtow7RuZyBjaOG7iSDEkeG6v24gbeG7mXQgbOG6p24gY2h1eeG7g24gZ2lhbyBo4bujcCBs4buHIG7DoG8gY+G6oyEiCiAKLSM6IHJlZnMuYzo1ODMKKyM6IHJlZnMuYzo2NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgZGFuZ2xpbmcgc3ltcmVmICVzIgogbXNnc3RyICLEkWFuZyBs4budIMSRaSB0aGFtIGNoaeG6v3UgbeG7gW0gdGjhu6thICVzIgogCi0jOiByZWZzLmM6NTg1IHJlZi1maWx0ZXIuYzoxOTUxCisjOiByZWZzLmM6NjY5IHJlZi1maWx0ZXIuYzoyMDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIGJyb2tlbiByZWYgJXMiCiBtc2dzdHIgIsSRYW5nIGzhu50gxJFpIHRoYW0gY2hp4bq/dSBo4buPbmcgJXMiCiAKLSM6IHJlZnMuYzo3MTEKKyM6IHJlZnMuYzo4MDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZzogJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIOKAnCVz4oCdIMSR4buDIGdoaTogJXMiCiAKLSM6IHJlZnMuYzo3MjEgcmVmcy5jOjc3MgorIzogcmVmcy5jOjgxNCByZWZzLmM6ODY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIHRoYW0gY2hp4bq/dSDigJwlc+KAnSIKIAotIzogcmVmcy5jOjcyNworIzogcmVmcy5jOjgyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWYgJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAidGhhbSBjaGnhur91IOKAnCVz4oCdIMSRw6MgY8OzIHThu6sgdHLGsOG7m2MgcuG7k2kiCiAKLSM6IHJlZnMuYzo3MzIKKyM6IHJlZnMuYzo4MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBvYmplY3QgSUQgd2hlbiB3cml0aW5nICclcyciCiBtc2dzdHIgImtow7RuZyBj4bqnbiBJRCDEkeG7kWkgdMaw4bujbmcga2hpIGdoaSDigJwlc+KAnSIKIAotIzogcmVmcy5jOjc0MCBzZXF1ZW5jZXIuYzozOTQgc2VxdWVuY2VyLmM6MjUxMCBzZXF1ZW5jZXIuYzoyNjM2Ci0jOiBzZXF1ZW5jZXIuYzoyNjUwIHNlcXVlbmNlci5jOjI4Nzcgc2VxdWVuY2VyLmM6NDcyNSBzZXF1ZW5jZXIuYzo0Nzg4Ci0jOiB3cmFwcGVyLmM6NjU2CisjOiByZWZzLmM6ODMzIHNlcXVlbmNlci5jOjQwNyBzZXF1ZW5jZXIuYzoyNzAxIHNlcXVlbmNlci5jOjI5MDUKKyM6IHNlcXVlbmNlci5jOjI5MTkgc2VxdWVuY2VyLmM6MzE3NyBzZXF1ZW5jZXIuYzo1MDM2IHN0cmJ1Zi5jOjExNTcKKyM6IHdyYXBwZXIuYzo2MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIHRvICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgdsOgbyDigJwlc+KAnSIKIAotIzogcmVmcy5jOjc2NyBzZXF1ZW5jZXIuYzo0NzIzIHNlcXVlbmNlci5jOjQ3ODIgd3JhcHBlci5jOjIyNSB3cmFwcGVyLmM6Mzk1Ci0jOiBidWlsdGluL2FtLmM6NzI4CisjOiByZWZzLmM6ODYwIHN0cmJ1Zi5jOjExNTUgd3JhcHBlci5jOjE4OCB3cmFwcGVyLmM6MzU4IGJ1aWx0aW4vYW0uYzo3MTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTAyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nIgogbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyDigJwlc+KAnSDEkeG7gyBnaGkiCiAKLSM6IHJlZnMuYzo3NzQKKyM6IHJlZnMuYzo4NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBvYmplY3QgSUQgd2hlbiBkZWxldGluZyAnJXMnIgogbXNnc3RyICJn4bq3cCBJRCDEkeG7kWkgdMaw4bujbmcga2jDtG5nIGPhuqduIGtoaSB4w7NhIOKAnCVz4oCdIgogCi0jOiByZWZzLmM6OTA1CisjOiByZWZzLmM6OTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvZyBmb3IgcmVmICVzIGhhcyBnYXAgYWZ0ZXIgJXMiCi1tc2dzdHIgIk5o4bqtdCBrw70gY2hvIHRoYW0gY2hp4bq/dSAlcyBjw7Mga2hv4bqjbmcgdHLhu5FuZyBzYXUgJXMiCittc2dzdHIgIm5o4bqtdCBrw70gY2hvIHRoYW0gY2hp4bq/dSAlcyBjw7Mga2hv4bqjbmcgdHLhu5FuZyBzYXUgJXMiCiAKLSM6IHJlZnMuYzo5MTEKKyM6IHJlZnMuYzoxMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvZyBmb3IgcmVmICVzIHVuZXhwZWN0ZWRseSBlbmRlZCBvbiAlcyIKIG1zZ3N0ciAibmjhuq10IGvDvSBjaG8gdGhhbSBjaGnhur91ICVzIGvhur90IHRow7pjIGLhuqV0IG5n4budIHRyw6puICVzIgogCi0jOiByZWZzLmM6OTY5CisjOiByZWZzLmM6MTA2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2cgZm9yICVzIGlzIGVtcHR5IgogbXNnc3RyICJuaOG6rXQga8O9IGNobyAlcyB0cuG7kW5nIHLhu5duZyIKIAotIzogcmVmcy5jOjEwNjEKKyM6IHJlZnMuYzoxMTU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZnVzaW5nIHRvIHVwZGF0ZSByZWYgd2l0aCBiYWQgbmFtZSAnJXMnIgogbXNnc3RyICJ04burIGNo4buRaSBj4bqtcCBuaOG6rXQgdGhhbSBjaGnhur91IHbhu5tpIHTDqm4gc2FpIOKAnCVz4oCdIgogCi0jOiByZWZzLmM6MTEzNworIzogcmVmcy5jOjEyMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidXBkYXRlX3JlZiBmYWlsZWQgZm9yIHJlZiAnJXMnOiAlcyIKIG1zZ3N0ciAidXBkYXRlX3JlZiBi4buLIGzhu5dpIGNobyByZWYg4oCcJXPigJ06ICVzIgogCi0jOiByZWZzLmM6MTkxMQorIzogcmVmcy5jOjIwMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGlwbGUgdXBkYXRlcyBmb3IgcmVmICclcycgbm90IGFsbG93ZWQiCiBtc2dzdHIgImtow7RuZyBjaG8gcGjDqXAgxJFhIGPhuq1wIG5o4bqtdCBjaG8gdGhhbSBjaGnhur91IOKAnCVz4oCdIgogCi0jOiByZWZzLmM6MTk0MworIzogcmVmcy5jOjIwNTUKIG1zZ2lkICJyZWYgdXBkYXRlcyBmb3JiaWRkZW4gaW5zaWRlIHF1YXJhbnRpbmUgZW52aXJvbm1lbnQiCiBtc2dzdHIgImPhuq1wIG5o4bqtdCB0aGFtIGNoaeG6v3UgYuG7iyBj4bqlbSB0cm9uZyBtw7RpIHRyxrDhu51uZyBraeG7g20gdHJhIgogCi0jOiByZWZzLmM6MjAzOSByZWZzLmM6MjA2OQorIzogcmVmcy5jOjIxNTEgcmVmcy5jOjIxODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBleGlzdHM7IGNhbm5vdCBjcmVhdGUgJyVzJyIKIG1zZ3N0ciAi4oCcJXPigJ0gc+G6tW4gY8OzOyBraMO0bmcgdGjhu4MgdOG6oW8g4oCcJXPigJ0iCiAKLSM6IHJlZnMuYzoyMDQ1IHJlZnMuYzoyMDgwCisjOiByZWZzLmM6MjE1NyByZWZzLmM6MjE5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcHJvY2VzcyAnJXMnIGFuZCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUiCi1tc2dzdHIgIktow7RuZyB0aOG7gyB44butIGzDvSDigJwlc+KAnSB2w6Ag4oCcJXPigJ0gY8O5bmcgbeG7mXQgbMO6YyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHjhu60gbMO9IOKAnCVz4oCdIHbDoCDigJwlc+KAnSBjw7luZyBt4buZdCBsw7pjIgogCi0jOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjI4CisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgcmVmZXJlbmNlICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgZ+G7oSBi4buPIHRoYW0gY2hp4bq/dTogJXMiCiAKLSM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDIgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1MzIKLSM6IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQyCisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjQ3IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQxCisjOiByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZGVsZXRlIHJlZmVyZW5jZSAlczogJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB4w7NhIGLhu48gdGhhbSBjaGnhur91ICVzOiAlcyIKIAotIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI0NSByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU0NQorIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTI1MCByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZGVsZXRlIHJlZmVyZW5jZXM6ICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgeMOzYSBi4buPIHRoYW0gY2hp4bq/dTogJXMiCkBAIC0zOTYxLDEzNiArNTc4OSwxNDEgQEAKIG1zZ2lkICJpbnZhbGlkIHJlZnNwZWMgJyVzJyIKIG1zZ3N0ciAicmVmc3BlYyBraMO0bmcgaOG7o3AgbOG7hyDigJwlc+KAnSIKIAotIzogcmVmLWZpbHRlci5jOjM5IHd0LXN0YXR1cy5jOjE4NTUKKyM6IHJlZi1maWx0ZXIuYzo0MiB3dC1zdGF0dXMuYzoxOTM4CiBtc2dpZCAiZ29uZSIKIG1zZ3N0ciAixJHDoyByYSDEkWkiCiAKLSM6IHJlZi1maWx0ZXIuYzo0MAorIzogcmVmLWZpbHRlci5jOjQzCiAjLCBjLWZvcm1hdAogbXNnaWQgImFoZWFkICVkIgogbXNnc3RyICJwaMOtYSB0csaw4bubYyAlZCIKIAotIzogcmVmLWZpbHRlci5jOjQxCisjOiByZWYtZmlsdGVyLmM6NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmVoaW5kICVkIgogbXNnc3RyICLEkeG6sW5nIHNhdSAlZCIKIAotIzogcmVmLWZpbHRlci5jOjQyCisjOiByZWYtZmlsdGVyLmM6NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWhlYWQgJWQsIGJlaGluZCAlZCIKIG1zZ3N0ciAidHLGsOG7m2MgJWQsIHNhdSAlZCIKIAotIzogcmVmLWZpbHRlci5jOjEzOAorIzogcmVmLWZpbHRlci5jOjE2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBmb3JtYXQ6ICUlKGNvbG9yOjxjb2xvcj4pIgogbXNnc3RyICJj4bqnbiDEkeG7i25oIGThuqFuZzogJSUoY29sb3I6PGNvbG9yPikiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDAKKyM6IHJlZi1maWx0ZXIuYzoxNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIGNvbG9yOiAlJShjb2xvcjolcykiCiBtc2dzdHIgImtow7RuZyBuaOG6rW4gcmEgbcOgdTogJSUobcOgdTolcykiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNjIKKyM6IHJlZi1maWx0ZXIuYzoxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW50ZWdlciB2YWx1ZSBleHBlY3RlZCByZWZuYW1lOmxzdHJpcD0lcyIKIG1zZ3N0ciAiR2nDoSB0cuG7iyBuZ3V5w6puIGPhuqduIHTDqm4gdGhhbSBjaGnhur91OmxzdHJpcD0lcyIKIAotIzogcmVmLWZpbHRlci5jOjE2NgorIzogcmVmLWZpbHRlci5jOjE5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6cnN0cmlwPSVzIgogbXNnc3RyICJHacOhIHRy4buLIG5ndXnDqm4gY+G6p24gdMOqbiB0aGFtIGNoaeG6v3U6cnN0cmlwPSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTY4CisjOiByZWYtZmlsdGVyLmM6MTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJSglcykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICLEkeG7kWkgc+G7kSBraMO0bmcgxJHGsOG7o2MgdGjhu6thIG5o4bqtbiAlJSglcyk6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MjIzCisjOiByZWYtZmlsdGVyLmM6MjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiUlKG9iamVjdHR5cGUpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgogbXNnc3RyICIlJShvYmplY3R0eXBlKSBraMO0bmcgbmjhuq1uIGPDoWMgxJHhu5FpIHPhu5EiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMzUKKyM6IHJlZi1maWx0ZXIuYzoyNzIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJSUob2JqZWN0c2l6ZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCi1tc2dzdHIgIiUlKG9iamVjdHNpemUpIGtow7RuZyBuaOG6rW4gY8OhYyDEkeG7kWkgc+G7kSIKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUob2JqZWN0c2l6ZSkgYXJndW1lbnQ6ICVzIgorbXNnc3RyICJ0aGFtIHPhu5Ega2jDtG5nIMSRxrDhu6NjIHRo4burYSBuaOG6rW4gJSUob2JqZWN0bmFtZSk6ICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MjQ3CisjOiByZWYtZmlsdGVyLmM6MjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiUlKGRlbHRhYmFzZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCittc2dzdHIgIiUlKGRlbHRhYmFzZSkga2jDtG5nIG5o4bqtbiBjw6FjIMSR4buRaSBz4buRIgorCisjOiByZWYtZmlsdGVyLmM6MjkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiUlKGJvZHkpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgogbXNnc3RyICIlJShib2R5KSBraMO0bmcgbmjhuq1uIGPDoWMgxJHhu5FpIHPhu5EiCiAKLSM6IHJlZi1maWx0ZXIuYzoyNTYKKyM6IHJlZi1maWx0ZXIuYzozMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJSUoc3ViamVjdCkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCiBtc2dzdHIgIiUlKHN1YmplY3QpIGtow7RuZyBuaOG6rW4gY8OhYyDEkeG7kWkgc+G7kSIKIAotIzogcmVmLWZpbHRlci5jOjI3OAorIzogcmVmLWZpbHRlci5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duICUlKHRyYWlsZXJzKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgImtow7RuZyBoaeG7g3UgdGhhbSBz4buRICUlKHRyYWlsZXJzKTogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozMDcKKyM6IHJlZi1maWx0ZXIuYzozNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAicG9zaXRpdmUgdmFsdWUgZXhwZWN0ZWQgY29udGVudHM6bGluZXM9JXMiCiBtc2dzdHIgImPhuqduIG7hu5lpIGR1bmcgbWFuZyBnacOhIHRy4buLIGTGsMahbmc6bGluZXM9JXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozMDkKKyM6IHJlZi1maWx0ZXIuYzozNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKGNvbnRlbnRzKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgIsSR4buRaSBz4buRIGtow7RuZyDEkcaw4bujYyB0aOG7q2Egbmjhuq1uICUlKGNvbnRlbnRzKTogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozMjQKKyM6IHJlZi1maWx0ZXIuYzozNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAicG9zaXRpdmUgdmFsdWUgZXhwZWN0ZWQgb2JqZWN0bmFtZTpzaG9ydD0lcyIKIG1zZ3N0ciAiY+G6p24gbuG7mWkgZHVuZyBtYW5nIGdpw6EgdHLhu4sgZMawxqFuZzpzaG90PSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzI4CisjOiByZWYtZmlsdGVyLmM6MzczCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShvYmplY3RuYW1lKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgIsSR4buRaSBz4buRIGtow7RuZyDEkcaw4bujYyB0aOG7q2Egbmjhuq1uICUlKG9iamVjdG5hbWUpOiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjM1OAorIzogcmVmLWZpbHRlci5jOjQwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBmb3JtYXQ6ICUlKGFsaWduOjx3aWR0aD4sPHBvc2l0aW9uPikiCiBtc2dzdHIgImPhuqduIMSR4buLbmggZOG6oW5nOiAlJShhbGlnbjo8d2lkdGg+LDxwb3NpdGlvbj4pIgogCi0jOiByZWYtZmlsdGVyLmM6MzcwCisjOiByZWYtZmlsdGVyLmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBwb3NpdGlvbjolcyIKIG1zZ3N0ciAiduG7iyB0csOtIGtow7RuZyDEkcaw4bujYyB0aOG7q2Egbmjhuq1uOiVzIgogCi0jOiByZWYtZmlsdGVyLmM6Mzc3CisjOiByZWYtZmlsdGVyLmM6NDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCB3aWR0aDolcyIKIG1zZ3N0ciAiY2hp4buBdSBy4buZbmcga2jDtG5nIMSRxrDhu6NjIHRo4burYSBuaOG6rW46JXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozODYKKyM6IHJlZi1maWx0ZXIuYzo0MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKGFsaWduKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgIsSR4buRaSBz4buRIGtow7RuZyDEkcaw4bujYyB0aOG7q2Egbmjhuq1uICUlKGFsaWduKTogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozOTQKKyM6IHJlZi1maWx0ZXIuYzo0MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAicG9zaXRpdmUgd2lkdGggZXhwZWN0ZWQgd2l0aCB0aGUgJSUoYWxpZ24pIGF0b20iCiBtc2dzdHIgImPhuqduIGdpw6EgdHLhu4sgxJHhu5kgcuG7mW5nIGTGsMahbmcgduG7m2kgbmd1ecOqbiB04butICUlKGFsaWduKSIKIAotIzogcmVmLWZpbHRlci5jOjQxMgorIzogcmVmLWZpbHRlci5jOjQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgJSUoaWYpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAixJHhu5FpIHPhu5Ega2jDtG5nIMSRxrDhu6NjIHRo4burYSBuaOG6rW4gJSUoaWYpOiAlcyIKIAotIzogcmVmLWZpbHRlci5jOjUwOAorIzogcmVmLWZpbHRlci5jOjU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgZmllbGQgbmFtZTogJS4qcyIKIG1zZ3N0ciAidMOqbiB0csaw4budbmcgZOG7iyBow6xuaDogJS4qcyIKIAotIzogcmVmLWZpbHRlci5jOjUzNQorIzogcmVmLWZpbHRlci5jOjU4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIGZpZWxkIG5hbWU6ICUuKnMiCiBtc2dzdHIgImtow7RuZyBoaeG7g3UgdMOqbiB0csaw4budbmc6ICUuKnMiCiAKLSM6IHJlZi1maWx0ZXIuYzo1MzkKKyM6IHJlZi1maWx0ZXIuYzo1OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdCBhIGdpdCByZXBvc2l0b3J5LCBidXQgdGhlIGZpZWxkICclLipzJyByZXF1aXJlcyBhY2Nlc3MgdG8gb2JqZWN0IGRhdGEiCkBAIC00MDk4LDIxNCArNTkzMSwzNDUgQEAKICJraMO0bmcgcGjhuqNpIGzDoCBt4buZdCBraG8gZ2l0LCBuaMawbmcgdHLGsOG7nW5nIOKAnCUuKnPigJ0gecOqdSBj4bqndSB0cnV5IGPhuq1wIHbDoG8gZOG7ryBsaeG7h3UgIgogIsSR4buRaSB0xrDhu6NuZyIKIAotIzogcmVmLWZpbHRlci5jOjY2MworIzogcmVmLWZpbHRlci5jOjcxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGlmKSBhdG9tIHVzZWQgd2l0aG91dCBhICUlKHRoZW4pIGF0b20iCiBtc2dzdHIgIsSR4buLbmggZOG6oW5nOiBuZ3V5w6puIHThu60gJSUoaWYpIMSRxrDhu6NjIGTDuW5nIG3DoCBraMO0bmcgY8OzIG5ndXnDqm4gdOG7rSAlJSh0aGVuKSIKIAotIzogcmVmLWZpbHRlci5jOjcyNgorIzogcmVmLWZpbHRlci5jOjc3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKHRoZW4pIGF0b20gdXNlZCB3aXRob3V0IGFuICUlKGlmKSBhdG9tIgogbXNnc3RyICLEkeG7i25oIGThuqFuZzogbmd1ecOqbiB04butICUlKHRoZW4pIMSRxrDhu6NjIGTDuW5nIG3DoCBraMO0bmcgY8OzIG5ndXnDqm4gdOG7rSAlJShpZikiCiAKLSM6IHJlZi1maWx0ZXIuYzo3MjgKKyM6IHJlZi1maWx0ZXIuYzo3NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgbW9yZSB0aGFuIG9uY2UiCiBtc2dzdHIgIsSR4buLbmggZOG6oW5nOiBuZ3V5w6puIHThu60gJSUodGhlbikgxJHGsOG7o2MgZMO5bmcgbmhp4buBdSBoxqFuIG3hu5l0IGzhuqduIgogCi0jOiByZWYtZmlsdGVyLmM6NzMwCisjOiByZWYtZmlsdGVyLmM6NzgxCiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIGFmdGVyICUlKGVsc2UpIgogbXNnc3RyICLEkeG7i25oIGThuqFuZzogbmd1ecOqbiB04butICUlKHRoZW4pIMSRxrDhu6NjIGTDuW5nIHNhdSAlJShlbHNlKSIKIAotIzogcmVmLWZpbHRlci5jOjc1OAorIzogcmVmLWZpbHRlci5jOjgwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCB3aXRob3V0IGFuICUlKGlmKSBhdG9tIgogbXNnc3RyICLEkeG7i25oIGThuqFuZzogbmd1ecOqbiB04butICUlKGVsc2UpIMSRxrDhu6NjIGTDuW5nIG3DoCBraMO0bmcgY8OzIG5ndXnDqm4gdOG7rSAlJShpZikiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NjAKKyM6IHJlZi1maWx0ZXIuYzo4MTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgd2l0aG91dCBhICUlKHRoZW4pIGF0b20iCiBtc2dzdHIgIsSR4buLbmggZOG6oW5nOiBuZ3V5w6puIHThu60gJSUoZWxzZSkgxJHGsOG7o2MgZMO5bmcgbcOgIGtow7RuZyBjw7Mgbmd1ecOqbiB04butICUlKHRoZW4pIgogCi0jOiByZWYtZmlsdGVyLmM6NzYyCisjOiByZWYtZmlsdGVyLmM6ODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgogbXNnc3RyICLEkeG7i25oIGThuqFuZzogbmd1ecOqbiB04butICUlKGVsc2UpIMSRxrDhu6NjIGTDuW5nIG5oaeG7gXUgaMahbiBt4buZdCBs4bqnbiIKIAotIzogcmVmLWZpbHRlci5jOjc3NworIzogcmVmLWZpbHRlci5jOjgyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVuZCkgYXRvbSB1c2VkIHdpdGhvdXQgY29ycmVzcG9uZGluZyBhdG9tIgogbXNnc3RyICLEkeG7i25oIGThuqFuZzogbmd1ecOqbiB04butICUlKGVuZCkgxJHGsOG7o2MgZMO5bmcgbcOgIGtow7RuZyBjw7Mgbmd1ecOqbiB04butIHTGsMahbmcg4bupbmciCiAKLSM6IHJlZi1maWx0ZXIuYzo4MzQKKyM6IHJlZi1maWx0ZXIuYzo4ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIGZvcm1hdCBzdHJpbmcgJXMiCiBtc2dzdHIgImNodeG7l2kgxJHhu4tuaCBk4bqhbmcgZOG7iyBow6xuaCAlcyIKIAotIzogcmVmLWZpbHRlci5jOjE0MjQKKyM6IHJlZi1maWx0ZXIuYzoxNDg4CiAjLCBjLWZvcm1hdAotbXNnaWQgIihubyBicmFuY2gsIHJlYmFzaW5nICVzKSIKLW1zZ3N0ciAiKGtow7RuZyBuaMOhbmgsIMSRYW5nIGPhuqNpIHThu5UgJXMpIgorbXNnaWQgIm5vIGJyYW5jaCwgcmViYXNpbmcgJXMiCittc2dzdHIgImtow7RuZyBuaMOhbmgsIMSRYW5nIGPhuqNpIHThu5UgJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDI3CisjOiByZWYtZmlsdGVyLmM6MTQ5MQogIywgYy1mb3JtYXQKLW1zZ2lkICIobm8gYnJhbmNoLCByZWJhc2luZyBkZXRhY2hlZCBIRUFEICVzKSIKLW1zZ3N0ciAiKGtow7RuZyBuaMOhbmgsIMSRYW5nIGPhuqNpIHThu5UgSEVBRCAlcyDEkcOjIHTDoWNoIHLhu51pKSIKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nIGRldGFjaGVkIEhFQUQgJXMiCittc2dzdHIgImtow7RuZyBuaMOhbmgsIMSRYW5nIGPhuqNpIHThu5UgSEVBRCAlcyDEkcOjIHTDoWNoIHLhu51pIgogCi0jOiByZWYtZmlsdGVyLmM6MTQzMAorIzogcmVmLWZpbHRlci5jOjE0OTQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiKG5vIGJyYW5jaCwgYmlzZWN0IHN0YXJ0ZWQgb24gJXMpIgotbXNnc3RyICIoa2jDtG5nIG5ow6FuaCwgZGkgY2h1eeG7g24gbuG7rWEgYsaw4bubYyDEkcaw4bujYyBi4bqvdCDEkeG6p3UgdOG6oWkgJXMpIgorbXNnaWQgIm5vIGJyYW5jaCwgYmlzZWN0IHN0YXJ0ZWQgb24gJXMiCittc2dzdHIgImtow7RuZyBuaMOhbmgsIGRpIGNodXnhu4NuIG7hu61hIGLGsOG7m2MgxJHGsOG7o2MgYuG6r3QgxJHhuqd1IHThuqFpICVzIgogCi0jLiBUUkFOU0xBVE9SUzogbWFrZSBzdXJlIHRoaXMgbWF0Y2hlcyAiSEVBRAotIy4gZGV0YWNoZWQgYXQgIiBpbiB3dC1zdGF0dXMuYwotIy4KLSM6IHJlZi1maWx0ZXIuYzoxNDM4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIihIRUFEIGRldGFjaGVkIGF0ICVzKSIKLW1zZ3N0ciAiKEhFQUQgxJHGsOG7o2MgdMOhY2ggcuG7nWkgdOG6oWkgJXMpIgorIzogcmVmLWZpbHRlci5jOjE1MDQKK21zZ2lkICJubyBicmFuY2giCittc2dzdHIgImtow7RuZyBuaMOhbmgiCiAKLSMuIFRSQU5TTEFUT1JTOiBtYWtlIHN1cmUgdGhpcyBtYXRjaGVzICJIRUFECi0jLiBkZXRhY2hlZCBmcm9tICIgaW4gd3Qtc3RhdHVzLmMKLSMuCi0jOiByZWYtZmlsdGVyLmM6MTQ0NQotIywgYy1mb3JtYXQKLW1zZ2lkICIoSEVBRCBkZXRhY2hlZCBmcm9tICVzKSIKLW1zZ3N0ciAiKEhFQUQgxJHGsOG7o2MgdMOhY2ggcuG7nWkgdOG7qyAlcykiCi0KLSM6IHJlZi1maWx0ZXIuYzoxNDQ5Ci1tc2dpZCAiKG5vIGJyYW5jaCkiCi1tc2dzdHIgIihraMO0bmcgbmjDoW5oKSIKLQotIzogcmVmLWZpbHRlci5jOjE0ODMgcmVmLWZpbHRlci5jOjE2MzgKKyM6IHJlZi1maWx0ZXIuYzoxNTQwIHJlZi1maWx0ZXIuYzoxNzQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3Npbmcgb2JqZWN0ICVzIGZvciAlcyIKIG1zZ3N0ciAidGhp4bq/dSDEkeG7kWkgdMaw4bujbmcgJXMgY2hvICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTQ5MQorIzogcmVmLWZpbHRlci5jOjE1NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFyc2Vfb2JqZWN0X2J1ZmZlciBmYWlsZWQgb24gJXMgZm9yICVzIgogbXNnc3RyICJwYXJzZV9vYmplY3RfYnVmZmVyIGfhurdwIGzhu5dpIHRyw6puICVzIGNobyAlcyIKIAotIzogcmVmLWZpbHRlci5jOjE4NTcKKyM6IHJlZi1maWx0ZXIuYzoyMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgYXQgJyVzJyIKIG1zZ3N0ciAixJHhu5FpIHTGsOG7o25nIGThu4sgaMOsbmggdOG6oWkg4oCcJXPigJ0iCiAKLSM6IHJlZi1maWx0ZXIuYzoxOTQ2CisjOiByZWYtZmlsdGVyLmM6MjA5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyByZWYgd2l0aCBicm9rZW4gbmFtZSAlcyIKIG1zZ3N0ciAixJFhbmcgbOG7nSDEkWkgdGhhbSBjaGnhur91IHbhu5tpIHTDqm4gaOG7j25nICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MjIzMgorIzogcmVmLWZpbHRlci5jOjIzODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbmQpIGF0b20gbWlzc2luZyIKIG1zZ3N0ciAixJHhu4tuaCBk4bqhbmc6IHRoaeG6v3Ugbmd1ecOqbiB04butICUlKGVuZCkiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMzM4CisjOiByZWYtZmlsdGVyLmM6MjQ4OQorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW1lcmdlZCIKK21zZ3N0ciAidMO5eSBjaOG7jW4g4oCcJXPigJ0gbMOgIHh1bmcga2jhuq9jIHbhu5tpIHTDuXkgY2jhu41uIC0tbWVyZ2VkIgorCisjOiByZWYtZmlsdGVyLmM6MjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW5vLW1lcmdlZCIKK21zZ3N0ciAidMO5eSBjaOG7jW4g4oCcJXPigJ0gbMOgIHh1bmcga2jhuq9jIHbhu5tpIHTDuXkgY2jhu41uIC0tbm8tbWVyZ2VkIgorCisjOiByZWYtZmlsdGVyLmM6MjUwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IG5hbWUgJXMiCiBtc2dzdHIgInTDqm4gxJHhu5FpIHTGsOG7o25nIGThu4sgaMOsbmggJXMiCiAKLSM6IHJlbW90ZS5jOjYwNworIzogcmVmLWZpbHRlci5jOjI1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgbXVzdCBwb2ludCB0byBhIGNvbW1pdCIKK21zZ3N0ciAidMO5eSBjaOG7jW4g4oCcJXPigJ0gcGjhuqNpIGNo4buJIMSR4bq/biBt4buZdCBs4bqnbiBjaHV54buDbiBnaWFvIgorCisjOiByZW1vdGUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlnIHJlbW90ZSBzaG9ydGhhbmQgY2Fubm90IGJlZ2luIHdpdGggJy8nOiAlcyIKK21zZ3N0ciAiY+G6pXUgaMOsbmggdmnhur90IHThuq90IG3DoXkgY2jhu6cga2jDtG5nIHRo4buDIGLhuq90IMSR4bqndSBi4bqxbmcg4oCcL+KAnTogJXMiCisKKyM6IHJlbW90ZS5jOjQxNAorbXNnaWQgIm1vcmUgdGhhbiBvbmUgcmVjZWl2ZXBhY2sgZ2l2ZW4sIHVzaW5nIHRoZSBmaXJzdCIKK21zZ3N0ciAixJHDoyDEkcawYSByYSBuaGnhu4F1IGjGoW4gbeG7mXQgZ8OzaSBuaOG6rW4gduG7gSwgxJFhbmcgc+G7rSBk4bulbmcgY8OhaSDEkeG6p3UgdGnDqm4iCisKKyM6IHJlbW90ZS5jOjQyMgorbXNnaWQgIm1vcmUgdGhhbiBvbmUgdXBsb2FkcGFjayBnaXZlbiwgdXNpbmcgdGhlIGZpcnN0IgorbXNnc3RyICLEkcOjIMSRxrBhIHJhIG5oaeG7gXUgaMahbiBt4buZdCBnw7NpIHThuqNpIGzDqm4sIMSRYW5nIHPhu60gZOG7pW5nIGPDoWkgxJHhuqd1IHRpw6puIgorCisjOiByZW1vdGUuYzo2MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGZldGNoIGJvdGggJXMgYW5kICVzIHRvICVzIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgbOG6pXkgduG7gSBj4bqjICVzIHbDoCAlcyBjaG8gJXMiCiAKLSM6IHJlbW90ZS5jOjYxMQorIzogcmVtb3RlLmM6NjE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHVzdWFsbHkgdHJhY2tzICVzLCBub3QgJXMiCiBtc2dzdHIgIiVzIHRoxrDhu51uZyB0aGVvIGTDtWkgJXMsIGtow7RuZyBwaOG6o2kgJXMiCiAKLSM6IHJlbW90ZS5jOjYxNQorIzogcmVtb3RlLmM6NjIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHRyYWNrcyBib3RoICVzIGFuZCAlcyIKIG1zZ3N0ciAiJXMgdGhlbyBkw7VpIGPhuqMgJXMgdsOgICVzIgogCi0jOiByZW1vdGUuYzo2MjMKLW1zZ2lkICJJbnRlcm5hbCBlcnJvciIKLW1zZ3N0ciAiTOG7l2kgbuG7mWkgYuG7mSIKKyM6IHJlbW90ZS5jOjY4OAorIywgYy1mb3JtYXQKK21zZ2lkICJrZXkgJyVzJyBvZiBwYXR0ZXJuIGhhZCBubyAnKiciCittc2dzdHIgImtow7NhIOKAnCVz4oCdIGPhu6dhIG3huqt1IGsgY8OzIOKAnCrigJ0iCiAKLSM6IHJlbW90ZS5jOjE1NjkgcmVtb3RlLmM6MTY3MAorIzogcmVtb3RlLmM6Njk4CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlICclcycgb2YgcGF0dGVybiBoYXMgbm8gJyonIgorbXNnc3RyICJnacOhIHRy4buLIOKAnCVz4oCdIGPhu6dhIG3huqt1IGsgY8OzIOKAnCrigJ0iCisKKyM6IHJlbW90ZS5jOjEwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgZG9lcyBub3QgbWF0Y2ggYW55IgorbXNnc3RyICJyZWZzcGVjICVzIG5ndeG7k24ga2jDtG5nIGto4bubcCBi4bqldCBr4buzIGPDoWkgZ8OsIgorCisjOiByZW1vdGUuYzoxMDA5CisjLCBjLWZvcm1hdAorbXNnaWQgInNyYyByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAicmVmc3BlYyAlcyBuZ3Xhu5NuIGto4bubcCBuaGnhu4F1IGjGoW4gbeG7mXQiCisKKyMuIFRSQU5TTEFUT1JTOiAibWF0Y2hlcyAnJXMnJSIgaXMgdGhlIDxkc3Q+IHBhcnQgb2YgImdpdCBwdXNoCisjLiA8cmVtb3RlPiA8c3JjPjo8ZHN0PiIgcHVzaCwgYW5kICJiZWluZyBwdXNoZWQgKCclcycpIiBpcworIy4gdGhlIDxzcmM+LgorIy4KKyM6IHJlbW90ZS5jOjEwMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBkZXN0aW5hdGlvbiB5b3UgcHJvdmlkZWQgaXMgbm90IGEgZnVsbCByZWZuYW1lIChpLmUuLFxuIgorInN0YXJ0aW5nIHdpdGggXCJyZWZzL1wiKS4gV2UgdHJpZWQgdG8gZ3Vlc3Mgd2hhdCB5b3UgbWVhbnQgYnk6XG4iCisiXG4iCisiLSBMb29raW5nIGZvciBhIHJlZiB0aGF0IG1hdGNoZXMgJyVzJyBvbiB0aGUgcmVtb3RlIHNpZGUuXG4iCisiLSBDaGVja2luZyBpZiB0aGUgPHNyYz4gYmVpbmcgcHVzaGVkICgnJXMnKVxuIgorIiAgaXMgYSByZWYgaW4gXCJyZWZzL3toZWFkcyx0YWdzfS9cIi4gSWYgc28gd2UgYWRkIGEgY29ycmVzcG9uZGluZ1xuIgorIiAgcmVmcy97aGVhZHMsdGFnc30vIHByZWZpeCBvbiB0aGUgcmVtb3RlIHNpZGUuXG4iCisiXG4iCisiTmVpdGhlciB3b3JrZWQsIHNvIHdlIGdhdmUgdXAuIFlvdSBtdXN0IGZ1bGx5IHF1YWxpZnkgdGhlIHJlZi4iCittc2dzdHIgIiIKKyLEkMOtY2ggYuG6oW4gxJHDoyBjdW5nIGPhuqVwIGtow7RuZyBwaOG6o2kgdMOqbiB0aGFtIGNoaeG6v3UgxJHhuqd5IMSR4bunICh04bupYyBsw6BcbiIKKyJi4bqvdCDEkeG6p3UgYuG6sW5nIFwicmVmcy9cIikuIENow7puZyB0w7RpIMSRw6MgY+G7kSBzdXkgbHXhuq1uIHLhurFuZyDDvSBj4bunYSBi4bqhbiBsw6A6XG4iCisiXG4iCisiLSBUw6xtIGtp4bq/bSBt4buZdCB0aGFtIGNoaeG6v3UgbcOgIG7DsyBraOG7m3Ag4oCcJXPigJ0gYsOqbiBwaMOtYSBtw6F5IGNo4bunLlxuIgorIi0gS2nhu4NtIHRyYSB4ZW0gPHNyYz4gxJHGsOG7o2MgxJHhuql5IGzDqm4gKOKAnCVz4oCdKVxuIgorIiAgbMOgIG3hu5l0IHRoYW0gY2hp4bq/dSB0cm9uZyBcInJlZnMve2hlYWRzLHRhZ3N9L1wiLiBO4bq/dSB0aOG6vyBjaMO6bmcgdMO0aSB0aMOqbSBt4buZdCAiCisidGnhu4FuIHThu5FcbiIKKyIgIHJlZnMve2hlYWRzLHRhZ3N9LyB0xrDGoW5nIOG7qW5nIGLDqm4gcGjDrWEgbcOheSBjaOG7py5cbiIKKyJcbiIKKyJO4bq/dSBj4bqjIGhhaSBsw6Aga2jDtG5nIHRo4buDLCB0aMOsIGNow7puZyB0w7RpIGPFqW5nIGNo4buLdSB0aHVhLiBC4bqhbiBwaOG6o2kgZMO5bmcgdGhhbSAiCisiY2hp4bq/dSBk4bqhbmcgxJHhuqd5IMSR4bunLiIKKworIzogcmVtb3RlLmM6MTA0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSBjb21taXQgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byBjcmVhdGUgYSBuZXcgYnJhbmNoIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy9oZWFkcy8lcyc/IgorbXNnc3RyICIiCisiUGjhuqduIDxzcmM+IGPhu6dhIMSR4bq3YyB04bqjIMSRxrDhu51uZyBk4bqrbiBsw6AgbeG7mXQgxJHhu5FpIHTGsOG7o25nIGzhuqduIGNodXnhu4NuIGdpYW8uXG4iCisiQ8OzIHBo4bqjaSDDvSBi4bqhbiBsw6AgbeG7mXQgdOG6oW8gbeG7mXQgbmjDoW5oIG3hu5tpIGLhurFuZyBjw6FjaCDEkeG6qXkgbMOqblxuIgorIuKAnCVzOnJlZnMvaGVhZHMvJXPigJ0/IgorCisjOiByZW1vdGUuYzoxMDQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIHRhZyBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIGNyZWF0ZSBhIG5ldyB0YWcgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorIlBo4bqnbiA8c3JjPiBj4bunYSDEkeG6t2MgdOG6oyDEkcaw4budbmcgZOG6q24gbMOgIG3hu5l0IMSR4buRaSB0xrDhu6NuZyB0aOG6uy5cbiIKKyJDw7MgcGjhuqNpIMO9IGLhuqFuIGzDoCBt4buZdCB04bqhbyBt4buZdCB0aOG6uyBt4bubaSBi4bqxbmcgY8OhY2ggxJHhuql5IGzDqm5cbiIKKyLigJwlczpyZWZzL3RhZ3MvJXPigJ0/IgorCisjOiByZW1vdGUuYzoxMDU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIHRyZWUgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byB0YWcgYSBuZXcgdHJlZSBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisiUGjhuqduIDxzcmM+IGPhu6dhIMSR4bq3YyB04bqjIMSRxrDhu51uZyBk4bqrbiBsw6AgbeG7mXQgxJHhu5FpIHTGsOG7o25nIGPDonkuXG4iCisiQ8OzIHBo4bqjaSDDvSBi4bqhbiBsw6AgbeG7mXQgdOG6oW8gbeG7mXQgY8OieSBt4bubaSBi4bqxbmcgY8OhY2ggxJHhuql5IGzDqm5cbiIKKyLigJwlczpyZWZzL3RhZ3MvJXPigJ0/IgorCisjOiByZW1vdGUuYzoxMDU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIGJsb2Igb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byB0YWcgYSBuZXcgYmxvYiBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisiUGjhuqduIDxzcmM+IGPhu6dhIMSR4bq3YyB04bqjIMSRxrDhu51uZyBk4bqrbiBsw6AgbeG7mXQgxJHhu5FpIHTGsOG7o25nIGJsb2IuXG4iCisiQ8OzIHBo4bqjaSDDvSBi4bqhbiBsw6AgbeG7mXQgdOG6oW8gbeG7mXQgYmxvYiBt4bubaSBi4bqxbmcgY8OhY2ggxJHhuql5IGzDqm5cbiIKKyLigJwlczpyZWZzL3RhZ3MvJXPigJ0/IgorCisjOiByZW1vdGUuYzoxMDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNhbm5vdCBiZSByZXNvbHZlZCB0byBicmFuY2giCittc2dzdHIgIuKAnCVz4oCdIGtow7RuZyB0aOG7gyDEkcaw4bujYyBwaMOibiBnaeG6o2kgdGjDoG5oIG5ow6FuaCIKKworIzogcmVtb3RlLmM6MTEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlICclcyc6IHJlbW90ZSByZWYgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgImtow7RuZyB0aOG7gyB4w7NhIOKAnCVz4oCdOiB0aGFtIGNoaeG6v3UgdHLDqm4gbcOheSBjaOG7pyBraMO0bmcgdOG7k24gdOG6oWkiCisKKyM6IHJlbW90ZS5jOjExMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHN0IHJlZnNwZWMgJXMgbWF0Y2hlcyBtb3JlIHRoYW4gb25lIgorbXNnc3RyICJkc3QgcmVmc3BlYyAlcyBraOG7m3Agbmhp4buBdSBoxqFuIG3hu5l0IgorCisjOiByZW1vdGUuYzoxMTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRzdCByZWYgJXMgcmVjZWl2ZXMgZnJvbSBtb3JlIHRoYW4gb25lIHNyYyIKK21zZ3N0ciAiZHN0IHJlZiAlcyBuaOG6rW4gdOG7qyBoxqFuIG3hu5l0IG5ndeG7k24iCisKKyM6IHJlbW90ZS5jOjE2MjggcmVtb3RlLmM6MTcyOQogbXNnaWQgIkhFQUQgZG9lcyBub3QgcG9pbnQgdG8gYSBicmFuY2giCiBtc2dzdHIgIkhFQUQga2jDtG5nIGNo4buJIMSR4bq/biBt4buZdCBuaMOhbmggbsOgbyBj4bqjIgogCi0jOiByZW1vdGUuYzoxNTc4CisjOiByZW1vdGUuYzoxNjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggYnJhbmNoOiAnJXMnIgogbXNnc3RyICJraMO0bmcgY8OzIG5ow6FuaCBuw6BvIG5oxrAgdGjhur86IOKAnCVz4oCdIgogCi0jOiByZW1vdGUuYzoxNTgxCisjOiByZW1vdGUuYzoxNjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHVwc3RyZWFtIGNvbmZpZ3VyZWQgZm9yIGJyYW5jaCAnJXMnIgogbXNnc3RyICJraMO0bmcgY8OzIHRoxrDhu6NuZyBuZ3Xhu5NuIMSRxrDhu6NjIGPhuqV1IGjDrG5oIGNobyBuaMOhbmgg4oCcJXPigJ0iCiAKLSM6IHJlbW90ZS5jOjE1ODcKKyM6IHJlbW90ZS5jOjE2NDYKICMsIGMtZm9ybWF0CiBtc2dpZCAidXBzdHJlYW0gYnJhbmNoICclcycgbm90IHN0b3JlZCBhcyBhIHJlbW90ZS10cmFja2luZyBicmFuY2giCiBtc2dzdHIgIiIKICJuaMOhbmggdGjGsOG7o25nIG5ndeG7k24g4oCcJXPigJ0ga2jDtG5nIMSRxrDhu6NjIGzGsHUgbOG6oWkgbmjGsCBsw6AgbeG7mXQgbmjDoW5oIHRoZW8gZMO1aSBtw6F5IGNo4bunIgogCi0jOiByZW1vdGUuYzoxNjAyCisjOiByZW1vdGUuYzoxNjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgInB1c2ggZGVzdGluYXRpb24gJyVzJyBvbiByZW1vdGUgJyVzJyBoYXMgbm8gbG9jYWwgdHJhY2tpbmcgYnJhbmNoIgogbXNnc3RyICLEkeG6qXkgbMOqbiDEkcOtY2gg4oCcJXPigJ0gdHLDqm4gbcOheSBjaOG7pyDigJwlc+KAnSBraMO0bmcgY8OzIG5ow6FuaCB0aGVvIGTDtWkgbuG7mWkgYuG7mSIKIAotIzogcmVtb3RlLmM6MTYxNAorIzogcmVtb3RlLmM6MTY3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJicmFuY2ggJyVzJyBoYXMgbm8gcmVtb3RlIGZvciBwdXNoaW5nIgogbXNnc3RyICJuaMOhbmgg4oCcJXPigJ0ga2jDtG5nIGPDsyBtw6F5IGNo4bunIMSR4buDIMSR4bqpeSBsw6puIgogCi0jOiByZW1vdGUuYzoxNjI0CisjOiByZW1vdGUuYzoxNjgzCiAjLCBjLWZvcm1hdAogbXNnaWQgInB1c2ggcmVmc3BlY3MgZm9yICclcycgZG8gbm90IGluY2x1ZGUgJyVzJyIKIG1zZ3N0ciAixJHhuql5IHJlZnNwZWNzIGNobyDigJwlc+KAnSBraMO0bmcgYmFvIGfhu5NtIOKAnCVz4oCdIgogCi0jOiByZW1vdGUuYzoxNjM3CisjOiByZW1vdGUuYzoxNjk2CiBtc2dpZCAicHVzaCBoYXMgbm8gZGVzdGluYXRpb24gKHB1c2guZGVmYXVsdCBpcyAnbm90aGluZycpIgogbXNnc3RyICLEkeG6qXkgbMOqbiBtw6Aga2jDtG5nIGPDsyDEkcOtY2ggKHB1c2guZGVmYXVsdCBsw6Ag4oCcbm90aGluZ+KAnSkiCiAKLSM6IHJlbW90ZS5jOjE2NTkKKyM6IHJlbW90ZS5jOjE3MTgKIG1zZ2lkICJjYW5ub3QgcmVzb2x2ZSAnc2ltcGxlJyBwdXNoIHRvIGEgc2luZ2xlIGRlc3RpbmF0aW9uIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gZ2nhuqNpIMSR4bqpeSDigJzEkcahbiBnaeG6o27igJ0gxJHhur9uIG3hu5l0IMSRw61jaCDEkcahbiIKIAotIzogcmVtb3RlLmM6MTkzNQorIzogcmVtb3RlLmM6MTg0NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBmaW5kIHJlbW90ZSByZWYgJXMiCittc2dzdHIgImtow7RuZyB0aOG7gyB0w6xtIHRo4bqleSB0aGFtIGNoaeG6v3UgbcOheSBjaOG7pyAlcyIKKworIzogcmVtb3RlLmM6MTg1NworIywgYy1mb3JtYXQKK21zZ2lkICIqIElnbm9yaW5nIGZ1bm55IHJlZiAnJXMnIGxvY2FsbHkiCittc2dzdHIgIiogxJBhbmcgYuG7jyBxdWEgdGhhbSBjaGnhur91IHRow7ogduG7iyBu4buZaSBi4buZIOKAnCVz4oCdIgorCisjOiByZW1vdGUuYzoyMDIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIGJhc2VkIG9uICclcycsIGJ1dCB0aGUgdXBzdHJlYW0gaXMgZ29uZS5cbiIKIG1zZ3N0ciAiIgogIk5ow6FuaCBj4bunYSBi4bqhbiBk4buxYSB0csOqbiBjxqEgc+G7nyBsw6Ag4oCcJXPigJ0sIG5oxrBuZyB0csOqbiB0aMaw4bujbmcgbmd14buTbiBraMO0bmcgY8Oybi5cbiIKIAotIzogcmVtb3RlLmM6MTkzOQorIzogcmVtb3RlLmM6MjAyNAogbXNnaWQgIiAgKHVzZSBcImdpdCBicmFuY2ggLS11bnNldC11cHN0cmVhbVwiIHRvIGZpeHVwKVxuIgogbXNnc3RyICIgICAoZMO5bmcgXCIgZ2l0IGJyYW5jaCAtLXVuc2V0LXVwc3RyZWFtXCIgxJHhu4Mgc+G7rWEpXG4iCiAKLSM6IHJlbW90ZS5jOjE5NDIKKyM6IHJlbW90ZS5jOjIwMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBicmFuY2ggaXMgdXAgdG8gZGF0ZSB3aXRoICclcycuXG4iCiBtc2dzdHIgIk5ow6FuaCBj4bunYSBi4bqhbiDEkcOjIGPhuq1wIG5o4bqtdCB24bubaSDigJwlc+KAnS5cbiIKIAotIzogcmVtb3RlLmM6MTk0NgorIzogcmVtb3RlLmM6MjAzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBhbmQgJyVzJyByZWZlciB0byBkaWZmZXJlbnQgY29tbWl0cy5cbiIKIG1zZ3N0ciAiTmjDoW5oIGPhu6dhIGLhuqFuIHbDoCDigJwlc+KAnSB0aGFtIGNoaeG6v3UgxJHhur9uIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBraMOhYyBuaGF1LlxuIgogCi0jOiByZW1vdGUuYzoxOTQ5CisjOiByZW1vdGUuYzoyMDM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgKHVzZSBcIiVzXCIgZm9yIGRldGFpbHMpXG4iCiBtc2dzdHIgIiAgKGTDuW5nIFwiJXNcIiDEkeG7gyBiaeG6v3QgdGjDqm0gY2hpIHRp4bq/dClcbiIKIAotIzogcmVtb3RlLmM6MTk1MworIzogcmVtb3RlLmM6MjAzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBpcyBhaGVhZCBvZiAnJXMnIGJ5ICVkIGNvbW1pdC5cbiIKIG1zZ2lkX3BsdXJhbCAiWW91ciBicmFuY2ggaXMgYWhlYWQgb2YgJyVzJyBieSAlZCBjb21taXRzLlxuIgogbXNnc3RyWzBdICJOaMOhbmggY+G7p2EgYuG6oW4gxJHhu6luZyB0csaw4bubYyDigJwlc+KAnSAlZCBs4bqnbiBjaHV54buDbiBnaWFvLlxuIgogCi0jOiByZW1vdGUuYzoxOTU5CisjOiByZW1vdGUuYzoyMDQ0CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1c2hcIiB0byBwdWJsaXNoIHlvdXIgbG9jYWwgY29tbWl0cylcbiIKIG1zZ3N0ciAiICAoZMO5bmcgXCJnaXQgcHVzaFwiIMSR4buDIHh14bqldCBi4bqjbiBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8gbuG7mWkgYuG7mSBj4bunYSBi4bqhbilcbiIKIAotIzogcmVtb3RlLmM6MTk2MgorIzogcmVtb3RlLmM6MjA0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBpcyBiZWhpbmQgJyVzJyBieSAlZCBjb21taXQsIGFuZCBjYW4gYmUgZmFzdC1mb3J3YXJkZWQuXG4iCiBtc2dpZF9wbHVyYWwgIiIKQEAgLTQzMTQsMTEgKzYyNzgsMTEgQEAKICJOaMOhbmggY+G7p2EgYuG6oW4gxJHhu6luZyDEkeG6sW5nIHNhdSDigJwlc+KAnSAlZCBs4bqnbiBjaHV54buDbiBnaWFvLCB2w6AgY8OzIHRo4buDIMSRxrDhu6NjIGNodXnhu4NuLSIKICJ0aeG6v3AtbmhhbmguXG4iCiAKLSM6IHJlbW90ZS5jOjE5NzAKKyM6IHJlbW90ZS5jOjIwNTUKIG1zZ2lkICIgICh1c2UgXCJnaXQgcHVsbFwiIHRvIHVwZGF0ZSB5b3VyIGxvY2FsIGJyYW5jaClcbiIKIG1zZ3N0ciAiICAoZMO5bmcgXCJnaXQgcHVsbFwiIMSR4buDIGPhuq1wIG5o4bqtdCBuaMOhbmggbuG7mWkgYuG7mSBj4bunYSBi4bqhbilcbiIKIAotIzogcmVtb3RlLmM6MTk3MworIzogcmVtb3RlLmM6MjA1OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBicmFuY2ggYW5kICclcycgaGF2ZSBkaXZlcmdlZCxcbiIKQEAgLTQzMzEsMTIgKzYyOTUsMTcgQEAKICJ2w6AgY8OzICVkIHbDoCAlZCBs4bqnbiBjaHV54buDbiBnaWFvIGtow6FjIG5oYXUgY2hvIHThu6tuZyBjw6FpLFxuIgogInTGsMahbmcg4bupbmcgduG7m2kgbeG7l2kgbOG6p24uXG4iCiAKLSM6IHJlbW90ZS5jOjE5ODMKKyM6IHJlbW90ZS5jOjIwNjgKIG1zZ2lkICIgICh1c2UgXCJnaXQgcHVsbFwiIHRvIG1lcmdlIHRoZSByZW1vdGUgYnJhbmNoIGludG8geW91cnMpXG4iCiBtc2dzdHIgIiIKICIgIChkw7luZyBcImdpdCBwdWxsXCIgxJHhu4MgaMOyYSB0cuG7mW4gbmjDoW5oIHRyw6puIG3DoXkgY2jhu6cgdsOgbyB0cm9uZyBuaMOhbmggY+G7p2EgIgogImLhuqFuKVxuIgogCisjOiByZW1vdGUuYzoyMjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBwYXJzZSBleHBlY3RlZCBvYmplY3QgbmFtZSAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggdMOqbiDEkeG7kWkgdMaw4bujbmcgbW9uZyBtdeG7kW4g4oCcJXPigJ0iCisKICM6IHJlcGxhY2Utb2JqZWN0LmM6MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJlcGxhY2UgcmVmIG5hbWU6ICVzIgpAQCAtNDM0Nyw3ICs2MzE2LDcgQEAKIG1zZ2lkICJkdXBsaWNhdGUgcmVwbGFjZSByZWY6ICVzIgogbXNnc3RyICJ0aGFtIGNoaeG6v3UgdGhheSB0aOG6vyBi4buLIHRyw7luZzogJXMiCiAKLSM6IHJlcGxhY2Utb2JqZWN0LmM6NzMKKyM6IHJlcGxhY2Utb2JqZWN0LmM6ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZSBkZXB0aCB0b28gaGlnaCBmb3Igb2JqZWN0ICVzIgogbXNnc3RyICLEkeG7mSBzw6J1IHRoYXkgdGjhur8gcXXDoSBjYW8gY2hvIMSR4buRaSB0xrDhu6NuZyAlcyIKQEAgLTQzNjAsMTEgKzYzMjksNiBAQAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSByZXJlcmUgcmVjb3JkIgogbXNnc3RyICJraMO0bmcgdGjhu4MgZ2hpIGLhuqNuIGdoaSByZXJlcmUiCiAKLSM6IHJlcmVyZS5jOjQ4NSByZXJlcmUuYzo2OTIgc2VxdWVuY2VyLmM6MzEzNiBzZXF1ZW5jZXIuYzozMTYyCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnIgotbXNnc3RyICJraMO0bmcgdGjhu4MgZ2hpIOKAnCVz4oCdIgotCiAjOiByZXJlcmUuYzo0OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlcmUgd2VyZSBlcnJvcnMgd2hpbGUgd3JpdGluZyAnJXMnICglcykiCkBAIC00MzkzLDcgKzYzNTcsNyBAQAogIzogcmVyZXJlLmM6NzE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN0YWdlZCAnJXMnIHVzaW5nIHByZXZpb3VzIHJlc29sdXRpb24uIgotbXNnc3RyICLEkMOjIHThuqFtIGPhuqV0IOKAnCVz4oCdIHPhu60gZOG7pW5nIGPDoWNoIHBow6JuIGdp4bqjaSBr4bq/IHRyxrDhu5tjIgorbXNnc3RyICLEkMOjIHThuqFtIGPhuqV0IOKAnCVz4oCdIHPhu60gZOG7pW5nIGPDoWNoIHBow6JuIGdp4bqjaSBr4bq/IHRyxrDhu5tjLiIKIAogIzogcmVyZXJlLmM6NzUzCiAjLCBjLWZvcm1hdApAQCAtNDQxMywxMCArNjM3NywxMCBAQAogIzogcmVyZXJlLmM6ODA3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlY29yZGVkIHByZWltYWdlIGZvciAnJXMnIgotbXNnc3RyICJwcmVpbWFnZSDEkcOjIMSRxrDhu6NjIGdoaSBs4bqhaSBjaG8g4oCcJXPigJ0iCittc2dzdHIgIlByZWltYWdlIMSRw6MgxJHGsOG7o2MgZ2hpIGzhuqFpIGNobyDigJwlc+KAnSIKIAotIzogcmVyZXJlLmM6ODgxIHN1Ym1vZHVsZS5jOjE3NjMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTMKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDIzCisjOiByZXJlcmUuYzo4ODEgc3VibW9kdWxlLmM6MjA3OCBidWlsdGluL2xvZy5jOjE4NzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDU0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyB0aMawIG3hu6VjIOKAnCVz4oCdIgpAQCAtNDQ1MCwyOSArNjQxNCwzMyBAQAogbXNnaWQgInVuYWJsZSB0byBvcGVuIHJyLWNhY2hlIGRpcmVjdG9yeSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gdGjGsCBt4bulYyByci1jYWNoZSIKIAotIzogcmV2aXNpb24uYzoyMzI0CisjOiByZXZpc2lvbi5jOjI0OTcKIG1zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoIGFwcGVhcnMgdG8gYmUgYnJva2VuIgogbXNnc3RyICJuaMOhbmggaGnhu4duIHThuqFpIGPhu6dhIGLhuqFuIGPDsyB24bq7IG5oxrAgYuG7iyBo4buPbmciCiAKLSM6IHJldmlzaW9uLmM6MjMyNworIzogcmV2aXNpb24uYzoyNTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgInlvdXIgY3VycmVudCBicmFuY2ggJyVzJyBkb2VzIG5vdCBoYXZlIGFueSBjb21taXRzIHlldCIKIG1zZ3N0ciAibmjDoW5oIGhp4buHbiB04bqhaSBj4bunYSBi4bqhbiDigJwlc+KAnSBraMO0bmcgY8OzIG3hu5l0IGzhuqduIGNodXnhu4NuIGdpYW8gbsOgbyBj4bqjIgogCi0jOiByZXZpc2lvbi5jOjI1MjMKKyM6IHJldmlzaW9uLmM6MjcwOAogbXNnaWQgIi0tZmlyc3QtcGFyZW50IGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYmlzZWN0IgogbXNnc3RyICItLWZpcnN0LXBhcmVudCB4dW5nIGto4bqvYyB24bubaSAtLWJpc2VjdCIKIAotIzogcnVuLWNvbW1hbmQuYzo3NDAKKyM6IHJldmlzaW9uLmM6MjcxMgorbXNnaWQgIi1MIGRvZXMgbm90IHlldCBzdXBwb3J0IGRpZmYgZm9ybWF0cyBiZXNpZGVzIC1wIGFuZCAtcyIKK21zZ3N0ciAiLUwgduG6q24gY2jGsGEgaOG7lyB0cuG7oyDEkeG7i25oIGThuqFuZyBraMOhYyBiaeG7h3QgbsOgbyBuZ2/DoGkgLXAgdsOgIC1zIgorCisjOiBydW4tY29tbWFuZC5jOjc2MwogbXNnaWQgIm9wZW4gL2Rldi9udWxsIGZhaWxlZCIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIG3hu58g4oCcL2Rldi9udWxs4oCdIgogCi0jOiBydW4tY29tbWFuZC5jOjEyMjkKKyM6IHJ1bi1jb21tYW5kLmM6MTI2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY3JlYXRlIGFzeW5jIHRocmVhZDogJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyB0dXnhur9uIGFzeW5jOiAlcyIKIAotIzogcnVuLWNvbW1hbmQuYzoxMjkzCisjOiBydW4tY29tbWFuZC5jOjEzMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSAnJXMnIGhvb2sgd2FzIGlnbm9yZWQgYmVjYXVzZSBpdCdzIG5vdCBzZXQgYXMgZXhlY3V0YWJsZS5cbiIKQEAgLTQ0ODEsMzAgKzY0NDksMzAgQEAKICJNw7NjIOKAnCVz4oCdIGLhu4sgYuG7jyBxdWEgYuG7n2kgdsOsIG7DsyBraMO0bmcgdGjhu4MgxJHhurd0IGzDoCB0aOG7sWMgdGhpIMSRxrDhu6NjLlxuIgogIkLhuqFuIGPDsyB0aOG7gyB04bqvdCBj4bqjbmggYsOhbyBuw6B5IGLhurFuZyDigJxnaXQgY29uZmlnIGFkdmljZS5pZ25vcmVkSG9vayBmYWxzZeKAnC4iCiAKLSM6IHNlbmQtcGFjay5jOjE0MgorIzogc2VuZC1wYWNrLmM6MTQ0CiBtc2dpZCAidW5leHBlY3RlZCBmbHVzaCBwYWNrZXQgd2hpbGUgcmVhZGluZyByZW1vdGUgdW5wYWNrIHN0YXR1cyIKIG1zZ3N0ciAiIgogImfhurdwIGfDs2kgZmx1c2gga2jDtG5nIGPhuqduIHRyb25nIGtoaSDEkeG7jWMgdMOsbmggdHLhuqFuZyBnaeG6o2kgbsOpbiBnw7NpIHRyw6puIG3DoXkgY2jhu6ciCiAKLSM6IHNlbmQtcGFjay5jOjE0NAorIzogc2VuZC1wYWNrLmM6MTQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSByZW1vdGUgdW5wYWNrIHN0YXR1czogJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBwaMOibiB0w61jaCB0w6xuaCB0cuG6oW5nIHVucGFjayBtw6F5IGNo4bunOiAlcyIKIAotIzogc2VuZC1wYWNrLmM6MTQ2CisjOiBzZW5kLXBhY2suYzoxNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3RlIHVucGFjayBmYWlsZWQ6ICVzIgogbXNnc3RyICJtw6F5IGNo4bunIGfhurdwIGzhu5dpIHVucGFjazogJXMiCiAKLSM6IHNlbmQtcGFjay5jOjMwOAorIzogc2VuZC1wYWNrLmM6MzA5CiBtc2dpZCAiZmFpbGVkIHRvIHNpZ24gdGhlIHB1c2ggY2VydGlmaWNhdGUiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBrw70gY2jhu6luZyB0aOG7sWMgxJHhuql5IgogCi0jOiBzZW5kLXBhY2suYzo0MjEKKyM6IHNlbmQtcGFjay5jOjQyMwogbXNnaWQgInRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS1zaWduZWQgcHVzaCIKIG1zZ3N0ciAia+G6v3QgdGjDumMgbmjhuq1uIGtow7RuZyBo4buXIHRy4bujIMSR4bqpeSAtLXNpZ25lZCIKIAotIzogc2VuZC1wYWNrLmM6NDIzCisjOiBzZW5kLXBhY2suYzo0MjUKIG1zZ2lkICIiCiAibm90IHNlbmRpbmcgYSBwdXNoIGNlcnRpZmljYXRlIHNpbmNlIHRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS0iCiAic2lnbmVkIHB1c2giCkBAIC00NTEyLDE2MyArNjQ4MCwxNjggQEAKICLEkeG7q25nIGfhu61pIGdp4bqleSBjaOG7qW5nIG5o4bqtbiDEkeG6qXkgdHLGsOG7m2Mga2hpIGvhur90IHRow7pjIG5o4bqtbiBraMO0bmcgaOG7lyB0cuG7oyDEkeG6qXkgLS0iCiAic2lnbmVkIgogCi0jOiBzZW5kLXBhY2suYzo0MzUKKyM6IHNlbmQtcGFjay5jOjQzNwogbXNnaWQgInRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS1hdG9taWMgcHVzaCIKIG1zZ3N0ciAia+G6v3QgdGjDumMgbmjhuq1uIGtow7RuZyBo4buXIHRy4bujIMSR4bqpeSAtLWF0b21pYyIKIAotIzogc2VuZC1wYWNrLmM6NDQwCisjOiBzZW5kLXBhY2suYzo0NDIKIG1zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IHB1c2ggb3B0aW9ucyIKIG1zZ3N0ciAia+G6v3QgdGjDumMgbmjhuq1uIGtow7RuZyBo4buXIHRy4bujIGPDoWMgdMO5eSBjaOG7jW4gY+G7p2EgbOG7h25oIHB1c2giCiAKLSM6IHNlcXVlbmNlci5jOjE4MworIzogc2VxdWVuY2VyLmM6MTkxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29tbWl0IG1lc3NhZ2UgY2xlYW51cCBtb2RlICclcyciCiBtc2dzdHIgImNo4bq/IMSR4buZIGThu41uIGThurlwIGdoaSBjaMO6IGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBraMO0bmcgaOG7o3AgbOG7hyDigJwlc+KAnSIKIAotIzogc2VxdWVuY2VyLmM6Mjg3CisjOiBzZXF1ZW5jZXIuYzoyOTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGRlbGV0ZSAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgeMOzYSBi4buPIOKAnCVz4oCdIgogCi0jOiBzZXF1ZW5jZXIuYzozMTMKKyM6IHNlcXVlbmNlci5jOjMxNSBidWlsdGluL3JlYmFzZS5jOjc4NSBidWlsdGluL3JlYmFzZS5jOjE3NTAgYnVpbHRpbi9ybS5jOjM4NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVtb3ZlICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBn4buhIGLhu48g4oCcJXPigJ0iCisKKyM6IHNlcXVlbmNlci5jOjMyNQogbXNnaWQgInJldmVydCIKIG1zZ3N0ciAiaG/DoG4gbmd1ecOqbiIKIAotIzogc2VxdWVuY2VyLmM6MzE1CisjOiBzZXF1ZW5jZXIuYzozMjcKIG1zZ2lkICJjaGVycnktcGljayIKIG1zZ3N0ciAiY2hlcnJ5LXBpY2siCiAKLSM6IHNlcXVlbmNlci5jOjMxNwotbXNnaWQgInJlYmFzZSAtaSIKLW1zZ3N0ciAicmViYXNlIC1pIgorIzogc2VxdWVuY2VyLmM6MzI5Cittc2dpZCAicmViYXNlIgorbXNnc3RyICJyZWJhc2UiCiAKLSM6IHNlcXVlbmNlci5jOjMxOQorIzogc2VxdWVuY2VyLmM6MzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gYWN0aW9uOiAlZCIKIG1zZ3N0ciAia2jDtG5nIG5o4bqtbiByYSB0aGFvIHTDoWM6ICVkIgogCi0jOiBzZXF1ZW5jZXIuYzozNzYKKyM6IHNlcXVlbmNlci5jOjM4OQogbXNnaWQgIiIKICJhZnRlciByZXNvbHZpbmcgdGhlIGNvbmZsaWN0cywgbWFyayB0aGUgY29ycmVjdGVkIHBhdGhzXG4iCiAid2l0aCAnZ2l0IGFkZCA8cGF0aHM+JyBvciAnZ2l0IHJtIDxwYXRocz4nIgogbXNnc3RyICIiCiAic2F1IGtoaSBnaeG6o2kgcXV54bq/dCBjw6FjIHh1bmcgxJHhu5l0LCDEkcOhbmggZOG6pXUgxJHGsOG7nW5nIGThuqtuIMSRw6Mgc+G7rWFcbiIKLSJ24bubaSBs4buHbmgg4oCcZ2l0IGFkZCA8xJHGsOG7nW5nX2ThuqtuPuKAnSBob+G6t2Mg4oCcZ2l0IHJtIDzEkcaw4budbmdfZOG6q24+4oCdIgorInbhu5tpIGzhu4duaCDigJxnaXQgYWRkIDwvY8OhYy/Ekcaw4budbmcvZOG6q24+4oCdIGhv4bq3YyDigJxnaXQgcm0gPC9jw6FjL8SRxrDhu51uZy9k4bqrbj7igJ0iCiAKLSM6IHNlcXVlbmNlci5jOjM3OQorIzogc2VxdWVuY2VyLmM6MzkyCiBtc2dpZCAiIgogImFmdGVyIHJlc29sdmluZyB0aGUgY29uZmxpY3RzLCBtYXJrIHRoZSBjb3JyZWN0ZWQgcGF0aHNcbiIKICJ3aXRoICdnaXQgYWRkIDxwYXRocz4nIG9yICdnaXQgcm0gPHBhdGhzPidcbiIKICJhbmQgY29tbWl0IHRoZSByZXN1bHQgd2l0aCAnZ2l0IGNvbW1pdCciCiBtc2dzdHIgIiIKICJzYXUga2hpIGdp4bqjaSBxdXnhur90IGPDoWMgeHVuZyDEkeG7mXQsIMSRw6FuaCBk4bqldSDEkcaw4budbmcgZOG6q24gxJHDoyBz4butYVxuIgotInbhu5tpIGzhu4duaCDigJxnaXQgYWRkIDzEkcaw4budbmdfZOG6q24+4oCdIGhv4bq3YyDigJxnaXQgcm0gPMSRxrDhu51uZ19k4bqrbj7igJ1cbiIKKyJ24bubaSBs4buHbmgg4oCcZ2l0IGFkZCA8L2PDoWMvxJHGsOG7nW5nL2ThuqtuPuKAnSBob+G6t2Mg4oCcZ2l0IHJtIDwvY8OhYy/Ekcaw4budbmcvZOG6q24+4oCdXG4iCiAidsOgIGNodXnhu4NuIGdpYW8ga+G6v3QgcXXhuqMgYuG6sW5nIGzhu4duaCDigJxnaXQgY29tbWl04oCdIgogCi0jOiBzZXF1ZW5jZXIuYzozOTIgc2VxdWVuY2VyLmM6MjYzMgorIzogc2VxdWVuY2VyLmM6NDA1IHNlcXVlbmNlci5jOjI5MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvY2sgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGtow7NhIOKAnCVz4oCdIgogCi0jOiBzZXF1ZW5jZXIuYzozOTkKKyM6IHNlcXVlbmNlci5jOjQxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZW9sIHRvICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgZW9sIHbDoG8g4oCcJXPigJ0iCiAKLSM6IHNlcXVlbmNlci5jOjQwNCBzZXF1ZW5jZXIuYzoyNTE1IHNlcXVlbmNlci5jOjI2Mzggc2VxdWVuY2VyLmM6MjY1MgotIzogc2VxdWVuY2VyLmM6Mjg4NQorIzogc2VxdWVuY2VyLmM6NDE3IHNlcXVlbmNlci5jOjI3MDYgc2VxdWVuY2VyLmM6MjkwNyBzZXF1ZW5jZXIuYzoyOTIxCisjOiBzZXF1ZW5jZXIuYzozMTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBmaW5hbGl6ZSAnJXMnIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgaG/DoG4gdGjDoG5oIOKAnCVz4oCdIgogCi0jOiBzZXF1ZW5jZXIuYzo0Mjcgc2VxdWVuY2VyLmM6OTIxIHNlcXVlbmNlci5jOjE1OTQgc2VxdWVuY2VyLmM6MjUzNQotIzogc2VxdWVuY2VyLmM6Mjg2NyBzZXF1ZW5jZXIuYzoyOTc0IGJ1aWx0aW4vYW0uYzoyNjAgYnVpbHRpbi9jb21taXQuYzo3NDYKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDg0IGJ1aWx0aW4vcmViYXNlLmM6MTUyCisjOiBzZXF1ZW5jZXIuYzo0NDAgc2VxdWVuY2VyLmM6MTYxMyBzZXF1ZW5jZXIuYzoyNzI2IHNlcXVlbmNlci5jOjMxNjcKKyM6IHNlcXVlbmNlci5jOjMyNzYgYnVpbHRpbi9hbS5jOjI0OSBidWlsdGluL2NvbW1pdC5jOjc4NyBidWlsdGluL21lcmdlLmM6MTEyMAorIzogYnVpbHRpbi9yZWJhc2UuYzo1OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgJyVzJyIKLW1zZ3N0ciAiS2jDtG5nIHRo4buDIMSR4buNYyDigJwlc+KAnS4iCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMg4oCcJXPigJ0iCiAKLSM6IHNlcXVlbmNlci5jOjQ1MworIzogc2VxdWVuY2VyLmM6NDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgInlvdXIgbG9jYWwgY2hhbmdlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlcy4iCiBtc2dzdHIgImPDoWMgdGhheSDEkeG7lWkgbuG7mWkgYuG7mSBj4bunYSBi4bqhbiBjw7MgdGjhu4MgYuG7iyBnaGkgxJHDqCBi4bufaSBs4buHbmggJXMuIgogCi0jOiBzZXF1ZW5jZXIuYzo0NTcKKyM6IHNlcXVlbmNlci5jOjQ3MAogbXNnaWQgImNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSB0byBwcm9jZWVkLiIKIG1zZ3N0ciAiY2h1eeG7g24gZ2lhbyBjw6FjIHRoYXkgxJHhu5VpIGPhu6dhIGLhuqFuIGhheSB04bqhbSBj4bqldCAoc3Rhc2gpIGNow7puZyDEkeG7gyB44butIGzDvS4iCiAKLSM6IHNlcXVlbmNlci5jOjQ4NgorIzogc2VxdWVuY2VyLmM6NTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBmYXN0LWZvcndhcmQiCiBtc2dzdHIgIiVzOiBjaHV54buDbi10aeG6v3AtbmhhbmgiCiAKKyM6IHNlcXVlbmNlci5jOjU0MSBidWlsdGluL3RhZy5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGNsZWFudXAgbW9kZSAlcyIKK21zZ3N0ciAiQ2jhur8gxJHhu5kgZOG7jW4gZOG6uXAga2jDtG5nIGjhu6NwIGzhu4cgJXMiCisKICMuIFRSQU5TTEFUT1JTOiAlcyB3aWxsIGJlICJyZXZlcnQiLCAiY2hlcnJ5LXBpY2siIG9yCi0jLiAicmViYXNlIC1pIi4KKyMuICJyZWJhc2UiLgogIy4KLSM6IHNlcXVlbmNlci5jOjU3NQorIzogc2VxdWVuY2VyLmM6NjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBVbmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiCiBtc2dzdHIgIiVzOiBLaMO0bmcgdGjhu4MgZ2hpIHThuq1wIHRpbiBsxrB1IGLhuqNuZyBt4bulYyBs4bulYyBt4bubaSIKIAotIzogc2VxdWVuY2VyLmM6NTkxCisjOiBzZXF1ZW5jZXIuYzo2NTIKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIGNhY2hlIHRyZWUiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBj4bqtcCBuaOG6rXQgY8OieSBi4buZIG5o4bubIMSR4buHbSIKIAotIzogc2VxdWVuY2VyLmM6NjA0CisjOiBzZXF1ZW5jZXIuYzo2NjYKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIGNvbW1pdCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIGdp4bqjaSBs4bqnbiBjaHV54buDbiBnaWFvIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjY4NAorIzogc2VxdWVuY2VyLmM6NzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGtleSBwcmVzZW50IGluICclLipzJyIKIG1zZ3N0ciAia2jDtG5nIGPDsyBraMOzYSBoaeG7h24gZGnhu4duIHRyb25nIOKAnCUuKnPigJ0iCiAKLSM6IHNlcXVlbmNlci5jOjY5NQorIzogc2VxdWVuY2VyLmM6NzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBkZXF1b3RlIHZhbHVlIG9mICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBnaeG6o2kgdHLDrWNoIGThuqtuIGdpw6EgdHLhu4sgY+G7p2Eg4oCcJXPigJ0iCiAKLSM6IHNlcXVlbmNlci5jOjczMiB3cmFwcGVyLmM6MjI3IHdyYXBwZXIuYzozOTcgYnVpbHRpbi9hbS5jOjcxOQotIzogYnVpbHRpbi9hbS5jOjgxMSBidWlsdGluL21lcmdlLmM6MTA4MQorIzogc2VxdWVuY2VyLmM6Nzk0IHdyYXBwZXIuYzoxOTAgd3JhcHBlci5jOjM2MCBidWlsdGluL2FtLmM6NzEwCisjOiBidWlsdGluL2FtLmM6ODAyIGJ1aWx0aW4vbWVyZ2UuYzoxMTE3IGJ1aWx0aW4vcmViYXNlLmM6MTA3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciByZWFkaW5nIgogbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyDigJwlc+KAnSDEkeG7gyDEkeG7jWMiCiAKLSM6IHNlcXVlbmNlci5jOjc0MgorIzogc2VxdWVuY2VyLmM6ODA0CiBtc2dpZCAiJ0dJVF9BVVRIT1JfTkFNRScgYWxyZWFkeSBnaXZlbiIKIG1zZ3N0ciAi4oCcR0lUX0FVVEhPUl9OQU1F4oCdIMSRw6Mgc+G6tW4gxJHGsGEgcmEgcuG7k2kiCiAKLSM6IHNlcXVlbmNlci5jOjc0NworIzogc2VxdWVuY2VyLmM6ODA5CiBtc2dpZCAiJ0dJVF9BVVRIT1JfRU1BSUwnIGFscmVhZHkgZ2l2ZW4iCiBtc2dzdHIgIuKAnEdJVF9BVVRIT1JfRU1BSUzigJ0gxJHDoyBz4bq1biDEkcawYSByYSBy4buTaSIKIAotIzogc2VxdWVuY2VyLmM6NzUyCisjOiBzZXF1ZW5jZXIuYzo4MTQKIG1zZ2lkICInR0lUX0FVVEhPUl9EQVRFJyBhbHJlYWR5IGdpdmVuIgogbXNnc3RyICLigJxHSVRfQVVUSE9SX0RBVEXigJ0gxJHDoyBz4bq1biDEkcawYSByYSBy4buTaSIKIAotIzogc2VxdWVuY2VyLmM6NzU2CisjOiBzZXF1ZW5jZXIuYzo4MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biB2YXJpYWJsZSAnJXMnIgogbXNnc3RyICJraMO0bmcgaGnhu4N1IGJp4bq/biDigJwlc+KAnSIKIAotIzogc2VxdWVuY2VyLmM6NzYxCisjOiBzZXF1ZW5jZXIuYzo4MjMKIG1zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX05BTUUnIgogbXNnc3RyICJ0aGnhur91IOKAnEdJVF9BVVRIT1JfTkFNReKAnSIKIAotIzogc2VxdWVuY2VyLmM6NzYzCisjOiBzZXF1ZW5jZXIuYzo4MjUKIG1zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX0VNQUlMJyIKIG1zZ3N0ciAidGhp4bq/dSDigJxHSVRfQVVUSE9SX0VNQUlM4oCdIgogCi0jOiBzZXF1ZW5jZXIuYzo3NjUKKyM6IHNlcXVlbmNlci5jOjgyNwogbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfREFURSciCiBtc2dzdHIgInRoaeG6v3Ug4oCcR0lUX0FVVEhPUl9EQVRF4oCdIgogCi0jOiBzZXF1ZW5jZXIuYzo4MjUKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBkYXRlIGZvcm1hdCAnJXMnIGluICclcyciCi1tc2dzdHIgIsSR4buLbmggZOG6oW5nIG5nw6B5IHRow6FuZyBraMO0bmcgaOG7o3AgbOG7hyDigJwlc+KAnSB0cm9uZyDigJwlc+KAnSIKLQotIzogc2VxdWVuY2VyLmM6ODQyCisjOiBzZXF1ZW5jZXIuYzo4NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInlvdSBoYXZlIHN0YWdlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlXG4iCkBAIC00Njk3LDE1ICs2NjcwLDExIEBACiAiXG4iCiAiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKIAotIzogc2VxdWVuY2VyLmM6OTM1Ci1tc2dpZCAid3JpdGluZyByb290IGNvbW1pdCIKLW1zZ3N0ciAiZ2hpIGNodXnhu4NuIGdpYW8gZ+G7kWMiCi0KLSM6IHNlcXVlbmNlci5jOjExNDIKKyM6IHNlcXVlbmNlci5jOjExNDgKIG1zZ2lkICIncHJlcGFyZS1jb21taXQtbXNnJyBob29rIGZhaWxlZCIKIG1zZ3N0ciAibcOzYyDigJxwcmVwYXJlLWNvbW1pdC1tc2figJ0gYuG7iyBs4buXaSIKIAotIzogc2VxdWVuY2VyLmM6MTE0OQorIzogc2VxdWVuY2VyLmM6MTE1NAogbXNnaWQgIiIKICJZb3VyIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgd2VyZSBjb25maWd1cmVkIGF1dG9tYXRpY2FsbHkgYmFzZWRcbiIKICJvbiB5b3VyIHVzZXJuYW1lIGFuZCBob3N0bmFtZS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhleSBhcmUgYWNjdXJhdGUuXG4iCkBAIC00NzM2LDcgKzY3MDUsNyBAQAogIlxuIgogIiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKIAotIzogc2VxdWVuY2VyLmM6MTE2MgorIzogc2VxdWVuY2VyLmM6MTE2NwogbXNnaWQgIiIKICJZb3VyIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgd2VyZSBjb25maWd1cmVkIGF1dG9tYXRpY2FsbHkgYmFzZWRcbiIKICJvbiB5b3VyIHVzZXJuYW1lIGFuZCBob3N0bmFtZS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhleSBhcmUgYWNjdXJhdGUuXG4iCkBAIC00NzY0LDMwNCArNjczMywzNTAgQEAKICJcbiIKICIgICAgZ2l0IGNvbW1pdCAtLWFtZW5kIC0tcmVzZXQtYXV0aG9yXG4iCiAKLSM6IHNlcXVlbmNlci5jOjEyMDIKKyM6IHNlcXVlbmNlci5jOjEyMDkKIG1zZ2lkICJjb3VsZG4ndCBsb29rIHVwIG5ld2x5IGNyZWF0ZWQgY29tbWl0IgogbXNnc3RyICJraMO0bmcgdGjhu4MgdMOsbSB0aOG6pXkgbOG6p24gY2h1eeG7g24gZ2lhbyBt4bubaSBoxqFuIMSRw6MgxJHGsOG7o2MgdOG6oW8iCiAKLSM6IHNlcXVlbmNlci5jOjEyMDQKKyM6IHNlcXVlbmNlci5jOjEyMTEKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgbmV3bHkgY3JlYXRlZCBjb21taXQiCiBtc2dzdHIgIiIKICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggY8O6IHBow6FwIGPhu6dhIMSR4buRaSB0xrDhu6NuZyBjaHV54buDbiBnaWFvIG3hu5tpIGjGoW4gxJHDoyDEkcaw4bujYyB04bqhbyIKIAotIzogc2VxdWVuY2VyLmM6MTI1MAorIzogc2VxdWVuY2VyLmM6MTI1NwogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIEhFQUQgYWZ0ZXIgY3JlYXRpbmcgY29tbWl0IgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gZ2nhuqNpIEhFQUQgc2F1IGtoaSB04bqhbyBs4bqnbiBjaHV54buDbiBnaWFvIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjUyCisjOiBzZXF1ZW5jZXIuYzoxMjU5CiBtc2dpZCAiZGV0YWNoZWQgSEVBRCIKIG1zZ3N0ciAixJHDoyBy4budaSBraOG7j2kgSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6MTI1NgorIzogc2VxdWVuY2VyLmM6MTI2MwogbXNnaWQgIiAocm9vdC1jb21taXQpIgogbXNnc3RyICIgKHJvb3QtY29tbWl0KSIKIAotIzogc2VxdWVuY2VyLmM6MTI3NworIzogc2VxdWVuY2VyLmM6MTI4NAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBIRUFEIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6MTI3OQorIzogc2VxdWVuY2VyLmM6MTI4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJIRUFEICVzIGlzIG5vdCBhIGNvbW1pdCEiCiBtc2dzdHIgIkhFQUQgJXMga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgbOG6p24gY2h1eeG7g24gZ2lhbyEiCiAKLSM6IHNlcXVlbmNlci5jOjEyODMgYnVpbHRpbi9jb21taXQuYzoxNTQzCisjOiBzZXF1ZW5jZXIuYzoxMjkwIHNlcXVlbmNlci5jOjEzNjQgYnVpbHRpbi9jb21taXQuYzoxNTc0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIEhFQUQgY29tbWl0IgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggY29tbWl0IChs4bqnbiBjaHV54buDbiBnaWFvKSBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoxMzM0IHNlcXVlbmNlci5jOjE5MzQKKyM6IHNlcXVlbmNlci5jOjEzNDIgc2VxdWVuY2VyLmM6MTk2OAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21taXQgYXV0aG9yIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggdMOhYyBnaeG6oyBj4bunYSBs4bqnbiBjaHV54buDbiBnaWFvIgogCi0jOiBzZXF1ZW5jZXIuYzoxMzQ0IGJ1aWx0aW4vYW0uYzoxNTg1IGJ1aWx0aW4vbWVyZ2UuYzo2NzcKKyM6IHNlcXVlbmNlci5jOjEzNTMgYnVpbHRpbi9hbS5jOjE1NjYgYnVpbHRpbi9tZXJnZS5jOjY4NwogbXNnaWQgImdpdCB3cml0ZS10cmVlIGZhaWxlZCB0byB3cml0ZSBhIHRyZWUiCiBtc2dzdHIgImzhu4duaCBnaXQgd3JpdGUtdHJlZSBn4bq3cCBs4buXaSBraGkgZ2hpIG3hu5l0IGPDonkiCiAKLSM6IHNlcXVlbmNlci5jOjEzNjEgc2VxdWVuY2VyLmM6MTQxNgorIzogc2VxdWVuY2VyLmM6MTM4NiBzZXF1ZW5jZXIuYzoxNDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIGNvbW1pdCBtZXNzYWdlIGZyb20gJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyBwaOG6p24gY2jDuiB0aMOtY2ggKG1lc3NhZ2UpIHThu6sg4oCcJXPigJ0iCiAKLSM6IHNlcXVlbmNlci5jOjEzODMgYnVpbHRpbi9hbS5jOjE2MDYgYnVpbHRpbi9jb21taXQuYzoxNjQ2IGJ1aWx0aW4vbWVyZ2UuYzo4NTgKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4ODMKKyM6IHNlcXVlbmNlci5jOjE0MTMgYnVpbHRpbi9hbS5jOjE1ODggYnVpbHRpbi9jb21taXQuYzoxNjczIGJ1aWx0aW4vbWVyZ2UuYzo4ODYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5MTEKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgY29tbWl0IG9iamVjdCIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIGdoaSDEkeG7kWkgdMaw4bujbmcgY2h1eeG7g24gZ2lhbyIKIAotIzogc2VxdWVuY2VyLmM6MTQ0MworIzogc2VxdWVuY2VyLmM6MTQ3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0ICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggbOG6p24gY2h1eeG7g24gZ2lhbyAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTQ0OAorIzogc2VxdWVuY2VyLmM6MTQ3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgcGFyZW50IGNvbW1pdCAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIGzhuqduIGNodXnhu4NuIGdpYW8gY2hhIG3hurkg4oCcJXPigJ0iCiAKLSM6IHNlcXVlbmNlci5jOjE1NDYgc2VxdWVuY2VyLmM6MTY1NAorIzogc2VxdWVuY2VyLmM6MTU2MiBzZXF1ZW5jZXIuYzoxNjczCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gY29tbWFuZDogJWQiCiBtc2dzdHIgImtow7RuZyBoaeG7g3UgY8OidSBs4buHbmggJWQiCiAKLSM6IHNlcXVlbmNlci5jOjE2MDEgc2VxdWVuY2VyLmM6MTYyNgorIzogc2VxdWVuY2VyLmM6MTYyMCBzZXF1ZW5jZXIuYzoxNjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAlZCBjb21taXRzLiIKIG1zZ3N0ciAixJDDonkgbMOgIHThu5UgaOG7o3AgY+G7p2EgJWQgbOG6p24gY2h1eeG7g24gZ2lhby4iCiAKLSM6IHNlcXVlbmNlci5jOjE2MTEgc2VxdWVuY2VyLmM6NDc0NAorIzogc2VxdWVuY2VyLmM6MTYzMAogbXNnaWQgIm5lZWQgYSBIRUFEIHRvIGZpeHVwIgogbXNnc3RyICJj4bqnbiBt4buZdCBIRUFEIMSR4buDIHPhu61hIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjEzIHNlcXVlbmNlci5jOjI5MTIKKyM6IHNlcXVlbmNlci5jOjE2MzIgc2VxdWVuY2VyLmM6MzIxMgogbXNnaWQgImNvdWxkIG5vdCByZWFkIEhFQUQiCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6MTYxNQorIzogc2VxdWVuY2VyLmM6MTYzNAogbXNnaWQgImNvdWxkIG5vdCByZWFkIEhFQUQncyBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyBwaOG6p24gY2jDuiB0aMOtY2ggKG1lc3NhZ2UpIGPhu6dhIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjE2MjEKKyM6IHNlcXVlbmNlci5jOjE2NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHdyaXRlICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBnaGkg4oCcJXPigJ0iCiAKLSM6IHNlcXVlbmNlci5jOjE2MjggZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ0MQorIzogc2VxdWVuY2VyLmM6MTY0NyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDk2CiBtc2dpZCAiVGhpcyBpcyB0aGUgMXN0IGNvbW1pdCBtZXNzYWdlOiIKIG1zZ3N0ciAixJDDonkgbMOgIGNow7ogdGjDrWNoIGNobyBs4bqnbiBjaHV54buDbiBnaWFvIHRo4bupIG5o4bqldDoiCiAKLSM6IHNlcXVlbmNlci5jOjE2MzYKKyM6IHNlcXVlbmNlci5jOjE2NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgY29tbWl0IG1lc3NhZ2Ugb2YgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgcGjhuqduIGNow7ogdGjDrWNoIChtZXNzYWdlKSBj4bunYSAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTY0MworIzogc2VxdWVuY2VyLmM6MTY2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGlzIGlzIHRoZSBjb21taXQgbWVzc2FnZSAjJWQ6IgogbXNnc3RyICLEkMOieSBsw6AgY2jDuiB0aMOtY2ggY2hvIGzhuqduIGNodXnhu4NuIGdpYW8gdGjhu6kgIyVkOiIKIAotIzogc2VxdWVuY2VyLmM6MTY0OQorIzogc2VxdWVuY2VyLmM6MTY2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgY29tbWl0IG1lc3NhZ2UgIyVkIHdpbGwgYmUgc2tpcHBlZDoiCiBtc2dzdHIgIkNow7ogdGjDrWNoIGNobyBs4bqnbiBjaHV54buDbiBnaWFvIHRo4bupICMlZCBz4bq9IGLhu4sgYuG7jyBxdWE6IgogCi0jOiBzZXF1ZW5jZXIuYzoxNzMyCisjOiBzZXF1ZW5jZXIuYzoxNzU2CiBtc2dpZCAieW91ciBpbmRleCBmaWxlIGlzIHVubWVyZ2VkLiIKIG1zZ3N0ciAidOG6rXAgdGluIGzGsHUgbeG7pWMgbOG7pWMgY+G7p2EgYuG6oW4ga2jDtG5nIMSRxrDhu6NjIGjDsmEgdHLhu5luLiIKIAotIzogc2VxdWVuY2VyLmM6MTczOQorIzogc2VxdWVuY2VyLmM6MTc2MwogbXNnaWQgImNhbm5vdCBmaXh1cCByb290IGNvbW1pdCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHPhu61hIGNo4buvYSBs4bqnbiBjaHV54buDbiBnaWFvIGfhu5FjIgogCi0jOiBzZXF1ZW5jZXIuYzoxNzU4CisjOiBzZXF1ZW5jZXIuYzoxNzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbW1pdCAlcyBpcyBhIG1lcmdlIGJ1dCBubyAtbSBvcHRpb24gd2FzIGdpdmVuLiIKIG1zZ3N0ciAibOG6p24gY2h1eeG7g24gZ2lhbyAlcyBsw6AgbeG7mXQgbOG6p24gaMOyYSB0cuG7mW4gbmjGsG5nIGtow7RuZyDEkcawYSByYSB0w7l5IGNo4buNbiAtbS4iCiAKLSM6IHNlcXVlbmNlci5jOjE3NjYKKyM6IHNlcXVlbmNlci5jOjE3OTAgc2VxdWVuY2VyLmM6MTc5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJXMgZG9lcyBub3QgaGF2ZSBwYXJlbnQgJWQiCiBtc2dzdHIgImzhuqduIGNodXnhu4NuIGdpYW8gJXMga2jDtG5nIGPDsyBjaGEgbeG6uSAlZCIKIAotIzogc2VxdWVuY2VyLmM6MTc3MAotIywgYy1mb3JtYXQKLW1zZ2lkICJtYWlubGluZSB3YXMgc3BlY2lmaWVkIGJ1dCBjb21taXQgJXMgaXMgbm90IGEgbWVyZ2UuIgotbXNnc3RyICIiCi0ibHXhu5NuZyBjaMOtbmggxJHDoyDEkcaw4bujYyBjaOG7iSByYSBuaMawbmcgbOG6p24gY2h1eeG7g24gZ2lhbyAlcyBraMO0bmcgcGjhuqNpIGzDoCBt4buZdCBs4bqnbiAiCi0iaMOyYSB0cuG7mW4uIgotCi0jOiBzZXF1ZW5jZXIuYzoxNzc2CisjOiBzZXF1ZW5jZXIuYzoxODA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBnZXQgY29tbWl0IG1lc3NhZ2UgZm9yICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgbOG6pXkgZ2hpIGNow7ogbOG6p24gY2h1eeG7g24gZ2lhbyBjaG8gJXMiCiAKICMuIFRSQU5TTEFUT1JTOiBUaGUgZmlyc3QgJXMgd2lsbCBiZSBhICJ0b2RvIiBjb21tYW5kIGxpa2UKICMuICJyZXZlcnQiIG9yICJwaWNrIiwgdGhlIHNlY29uZCAlcyBhIFNIQTEuCi0jOiBzZXF1ZW5jZXIuYzoxNzk1CisjOiBzZXF1ZW5jZXIuYzoxODIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjYW5ub3QgcGFyc2UgcGFyZW50IGNvbW1pdCAlcyIKIG1zZ3N0ciAiJXM6IGtow7RuZyB0aOG7gyBwaMOibiB0w61jaCBs4bqnbiBjaHV54buDbiBnaWFvIG3hurkgY+G7p2EgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjE4NjAKKyM6IHNlcXVlbmNlci5jOjE4ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlbmFtZSAnJXMnIHRvICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7lWkgdMOqbiDigJwlc+KAnSB0aMOgbmgg4oCcJXPigJ0iCiAKLSM6IHNlcXVlbmNlci5jOjE5MTUKKyM6IHNlcXVlbmNlci5jOjE5NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJldmVydCAlcy4uLiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGhvw6BuIG5ndXnDqm4gJXPigKYgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjE5MTYKKyM6IHNlcXVlbmNlci5jOjE5NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGFwcGx5ICVzLi4uICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4Mgw6FwIGThu6VuZyBtaeG6v25nIHbDoSAlc+KApiAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTk3NAorIzogc2VxdWVuY2VyLmM6MTk2MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcm9wcGluZyAlcyAlcyAtLSBwYXRjaCBjb250ZW50cyBhbHJlYWR5IHVwc3RyZWFtXG4iCittc2dzdHIgInjDs2EgJXMgJXMgLS0gdsOhIG7hu5lpIGR1bmcgdGjGsOG7o25nIG5ndeG7k24gxJHDoyBjw7NcbiIKKworIzogc2VxdWVuY2VyLmM6MjAxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAiZ2l0ICVzOiBn4bq3cCBs4buXaSDEkeG7jWMgYuG6o25nIG3hu6VjIGzhu6VjIgogCi0jOiBzZXF1ZW5jZXIuYzoxOTgxCisjOiBzZXF1ZW5jZXIuYzoyMDI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCAlczogZmFpbGVkIHRvIHJlZnJlc2ggdGhlIGluZGV4IgogbXNnc3RyICJnaXQgJXM6IGfhurdwIGzhu5dpIGtoaSBsw6BtIHTGsMahaSBt4bubaSBi4bqjbmcgbeG7pWMgbOG7pWMiCiAKLSM6IHNlcXVlbmNlci5jOjIwNjIKKyM6IHNlcXVlbmNlci5jOjIxMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lcyBub3QgYWNjZXB0IGFyZ3VtZW50czogJyVzJyIKIG1zZ3N0ciAiJXMga2jDtG5nIG5o4bqtbiBjw6FjIMSR4buRaSBz4buROiDigJwlc+KAnSIKIAotIzogc2VxdWVuY2VyLmM6MjA3MQorIzogc2VxdWVuY2VyLmM6MjExMQogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIGFyZ3VtZW50cyBmb3IgJXMiCiBtc2dzdHIgInRoaeG6v3UgxJHhu5FpIHPhu5EgY2hvICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoyMTMwCisjOiBzZXF1ZW5jZXIuYzoyMTQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggY8O6IHBow6FwIOKAnCVz4oCdIgorCisjOiBzZXF1ZW5jZXIuYzoyMjAzCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbGluZSAlZDogJS4qcyIKIG1zZ3N0ciAiZMOybmcga2jDtG5nIGjhu6NwIGzhu4cgJWQ6ICUuKnMiCiAKLSM6IHNlcXVlbmNlci5jOjIxMzgKKyM6IHNlcXVlbmNlci5jOjIyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90ICclcycgd2l0aG91dCBhIHByZXZpb3VzIGNvbW1pdCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIOKAnCVz4oCdIHRo4buDIG3DoCBraMO0bmcgY8OzIGzhuqduIGNodXnhu4NuIGdpYW8ga+G6vyB0csaw4bubYyIKIAotIzogc2VxdWVuY2VyLmM6MjIwOQorIzogc2VxdWVuY2VyLmM6MjI5OAorbXNnaWQgImNhbmNlbGxpbmcgYSBjaGVycnkgcGlja2luZyBpbiBwcm9ncmVzcyIKK21zZ3N0ciAixJFhbmcgaOG7p3kgYuG7jyB0aGFvIHTDoWMgY2hlcnJ5IHBpY2sgxJFhbmcgdGjhu7FjIGhp4buHbiIKKworIzogc2VxdWVuY2VyLmM6MjMwNQorbXNnaWQgImNhbmNlbGxpbmcgYSByZXZlcnQgaW4gcHJvZ3Jlc3MiCittc2dzdHIgIsSRYW5nIGjhu6d5IGLhu48gY8OhYyB0aGFvIHTDoWMgaG/DoG4gbmd1ecOqbiDEkWFuZyB0aOG7sWMgaGnhu4duIgorCisjOiBzZXF1ZW5jZXIuYzoyMzQ5CiBtc2dpZCAicGxlYXNlIGZpeCB0aGlzIHVzaW5nICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJy4iCiBtc2dzdHIgInZ1aSBsw7JuZyBz4butYSBs4buXaSBuw6B5IGLhurFuZyBjw6FjaCBkw7luZyDigJxnaXQgcmViYXNlIC0tZWRpdC10b2Rv4oCdLiIKIAotIzogc2VxdWVuY2VyLmM6MjIxMQorIzogc2VxdWVuY2VyLmM6MjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnVzYWJsZSBpbnN0cnVjdGlvbiBzaGVldDogJyVzJyIKIG1zZ3N0ciAiYuG6o25nIGNo4buJIHRo4buLIGtow7RuZyB0aOG7gyBkw7luZyDEkcaw4bujYzogJXMiCiAKLSM6IHNlcXVlbmNlci5jOjIyMTYKKyM6IHNlcXVlbmNlci5jOjIzNTYKIG1zZ2lkICJubyBjb21taXRzIHBhcnNlZC4iCiBtc2dzdHIgImtow7RuZyBjw7MgbOG6p24gY2h1eeG7g24gZ2lhbyBuw6BvIMSRxrDhu6NjIHBow6JuIHTDrWNoLiIKIAotIzogc2VxdWVuY2VyLmM6MjIyNworIzogc2VxdWVuY2VyLmM6MjM2NwogbXNnaWQgImNhbm5vdCBjaGVycnktcGljayBkdXJpbmcgYSByZXZlcnQuIgogbXNnc3RyICJraMO0bmcgdGjhu4MgY2hlcnJ5LXBpY2sgdHJvbmcga2hpIGhvw6BuIG5ndXnDqm4uIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjI5CisjOiBzZXF1ZW5jZXIuYzoyMzY5CiBtc2dpZCAiY2Fubm90IHJldmVydCBkdXJpbmcgYSBjaGVycnktcGljay4iCiBtc2dzdHIgImtow7RuZyB0aOG7gyB0aOG7sWMgaGnhu4duIHZp4buHYyBob8OgbiBuZ3V5w6puIHRyb25nIGtoaSDEkWFuZyBjaGVycnktcGljay4iCiAKLSM6IHNlcXVlbmNlci5jOjIyOTkKKyM6IHNlcXVlbmNlci5jOjI0NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICJnacOhIHRy4buLIGNobyAlcyBraMO0bmcgaOG7o3AgbOG7hzogJXMiCiAKLSM6IHNlcXVlbmNlci5jOjIzODAKKyM6IHNlcXVlbmNlci5jOjI1NDAKIG1zZ2lkICJ1bnVzYWJsZSBzcXVhc2gtb250byIKIG1zZ3N0ciAic3F1YXNoLW9udG8ga2jDtG5nIGTDuW5nIMSRxrDhu6NjIgogCi0jOiBzZXF1ZW5jZXIuYzoyMzk2CisjOiBzZXF1ZW5jZXIuYzoyNTU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvcHRpb25zIHNoZWV0OiAnJXMnIgogbXNnc3RyICJi4bqjbmcgdMO5eSBjaOG7jW4gZOG7iyBow6xuaDog4oCcJXPigJ0iCiAKLSM6IHNlcXVlbmNlci5jOjI0Nzkgc2VxdWVuY2VyLmM6NDAwNQorIzogc2VxdWVuY2VyLmM6MjY0NCBzZXF1ZW5jZXIuYzo0MzYxCiBtc2dpZCAiZW1wdHkgY29tbWl0IHNldCBwYXNzZWQiCiBtc2dzdHIgImzhuqduIGNodXnhu4NuIGdpYW8gdHLhu5FuZyBy4buXbmcgxJHhurd0IGzDoCBo4bujcCBxdXkgY8OhY2giCiAKLSM6IHNlcXVlbmNlci5jOjI0ODcKLW1zZ2lkICJhIGNoZXJyeS1waWNrIG9yIHJldmVydCBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgotbXNnc3RyICJjw7MgbeG7mXQgdGhhbyB0w6FjIOKAnGNoZXJyeS1waWNr4oCdIGhv4bq3YyDigJxyZXZlcnTigJ0gxJFhbmcgxJHGsOG7o2MgdGjhu7FjIGhp4buHbiIKKyM6IHNlcXVlbmNlci5jOjI2NjAKK21zZ2lkICJyZXZlcnQgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIKK21zZ3N0ciAiY8OzIHRoYW8gdMOhYyBob8OgbiBuZ3V5w6puIMSRYW5nIMSRxrDhu6NjIHRo4buxYyBoaeG7h24iCiAKLSM6IHNlcXVlbmNlci5jOjI0ODgKLW1zZ2lkICJ0cnkgXCJnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAtLXF1aXQgfCAtLWFib3J0KVwiIgotbXNnc3RyICJow6N5IHRo4butIFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgLS1xdWl0IHwgLS1hYm9ydClcIiIKKyM6IHNlcXVlbmNlci5jOjI2NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5IFwiZ2l0IHJldmVydCAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKK21zZ3N0ciAiaMOjeSB0aOG7rSBcImdpdCByZXZlcnQgKC0tY29udGludWUgfCAlcy0tYWJvcnQgfCAtLXF1aXQpXCIiCiAKLSM6IHNlcXVlbmNlci5jOjI0OTEKKyM6IHNlcXVlbmNlci5jOjI2NjUKK21zZ2lkICJjaGVycnktcGljayBpcyBhbHJlYWR5IGluIHByb2dyZXNzIgorbXNnc3RyICJjw7MgdGhhbyB0w6FjIOKAnGNoZXJyeS1waWNr4oCdIMSRYW5nIMSRxrDhu6NjIHRo4buxYyBoaeG7h24iCisKKyM6IHNlcXVlbmNlci5jOjI2NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5IFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIgorbXNnc3RyICJow6N5IHRo4butIFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIgorCisjOiBzZXF1ZW5jZXIuYzoyNjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgc2VxdWVuY2VyIGRpcmVjdG9yeSAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gdGjGsCBt4bulYyB44bq/cCBkw6N5IOKAnCVz4oCdIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTA1CisjOiBzZXF1ZW5jZXIuYzoyNjk2CiBtc2dpZCAiY291bGQgbm90IGxvY2sgSEVBRCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGtow7NhIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjI1NjAgc2VxdWVuY2VyLmM6Mzc2MQorIzogc2VxdWVuY2VyLmM6Mjc1NiBzZXF1ZW5jZXIuYzo0MDk5CiBtc2dpZCAibm8gY2hlcnJ5LXBpY2sgb3IgcmV2ZXJ0IGluIHByb2dyZXNzIgogbXNnc3RyICJraMO0bmcgY2hlcnJ5LXBpY2sgaGF5IGhvw6BuIG5ndXnDqm4gdHJvbmcgdGnhur9uIHRyw6xuaCIKIAotIzogc2VxdWVuY2VyLmM6MjU2MgorIzogc2VxdWVuY2VyLmM6Mjc1OCBzZXF1ZW5jZXIuYzoyNzY5CiBtc2dpZCAiY2Fubm90IHJlc29sdmUgSEVBRCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIGdp4bqjaSBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTY0IHNlcXVlbmNlci5jOjI1OTkKKyM6IHNlcXVlbmNlci5jOjI3NjAgc2VxdWVuY2VyLmM6MjgwNAogbXNnaWQgImNhbm5vdCBhYm9ydCBmcm9tIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIgogbXNnc3RyICJraMO0bmcgdGjhu4MgaOG7p3kgYuG7jyB04burIG3hu5l0IG5ow6FuaCBtw6AgbsOzIGPDsm4gY2jGsGEgxJHGsOG7o2MgdOG6oW8gcmEiCiAKLSM6IHNlcXVlbmNlci5jOjI1ODUgYnVpbHRpbi9ncmVwLmM6NzIxCisjOiBzZXF1ZW5jZXIuYzoyNzkwIGJ1aWx0aW4vZ3JlcC5jOjcyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgb3BlbiAnJXMnIgogbXNnc3RyICJraMO0bmcgbeG7nyDEkcaw4bujYyDigJwlc+KAnSIKIAotIzogc2VxdWVuY2VyLmM6MjU4NworIzogc2VxdWVuY2VyLmM6Mjc5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCAnJXMnOiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyDigJwlc+KAnTogJXMiCiAKLSM6IHNlcXVlbmNlci5jOjI1ODgKKyM6IHNlcXVlbmNlci5jOjI3OTMKIG1zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIgogbXNnc3RyICJn4bq3cCBr4bq/dCB0aMO6YyB04bqtcCB0aW4gxJHhu5l0IHh14bqldCIKIAotIzogc2VxdWVuY2VyLmM6MjU5NAorIzogc2VxdWVuY2VyLmM6Mjc5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJzdG9yZWQgcHJlLWNoZXJyeS1waWNrIEhFQUQgZmlsZSAnJXMnIGlzIGNvcnJ1cHQiCiBtc2dzdHIgInThuq1wIHRpbiBIRUFEIOKAnHByZS1jaGVycnktcGlja+KAnSDEkcOjIGzGsHUg4oCcJXPigJ0gYuG7iyBo4buPbmciCiAKLSM6IHNlcXVlbmNlci5jOjI2MDUKKyM6IHNlcXVlbmNlci5jOjI4MTAKIG1zZ2lkICJZb3Ugc2VlbSB0byBoYXZlIG1vdmVkIEhFQUQuIE5vdCByZXdpbmRpbmcsIGNoZWNrIHlvdXIgSEVBRCEiCiBtc2dzdHIgIiIKICJC4bqhbiBjw7MgbOG6vSDEkcOjIGPDsyBIRUFEIMSRw6MgYuG7iyBkaSBjaHV54buDbiDEkWksIEtow7RuZyB0aOG7gyB0dWEsIGtp4buDbSB0cmEgSEVBRCBj4bunYSAiCiAiYuG6oW4hIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzA5IHNlcXVlbmNlci5jOjM2NzkKKyM6IHNlcXVlbmNlci5jOjI4NTEKK21zZ2lkICJubyByZXZlcnQgaW4gcHJvZ3Jlc3MiCittc2dzdHIgImtow7RuZyBjw7MgdGnhur9uIHRyw6xuaCBob8OgbiBuZ3V5w6puIG7DoG8iCisKKyM6IHNlcXVlbmNlci5jOjI4NTkKK21zZ2lkICJubyBjaGVycnktcGljayBpbiBwcm9ncmVzcyIKK21zZ3N0ciAia2jDtG5nIGPDsyBjaGVycnktcGljayDEkWFuZyDEkcaw4bujYyB0aOG7sWMgaGnhu4duIgorCisjOiBzZXF1ZW5jZXIuYzoyODY5Cittc2dpZCAiZmFpbGVkIHRvIHNraXAgdGhlIGNvbW1pdCIKK21zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIGLhu48gcXVhIMSR4buRaSB0xrDhu6NuZyBjaHV54buDbiBnaWFvIgorCisjOiBzZXF1ZW5jZXIuYzoyODc2Cittc2dpZCAidGhlcmUgaXMgbm90aGluZyB0byBza2lwIgorbXNnc3RyICLhu58gxJHDonkga2jDtG5nIGPDsyBnw6wgxJHhu4MgbcOgIGLhu48gcXVhIGPhuqMiCisKKyM6IHNlcXVlbmNlci5jOjI4NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImhhdmUgeW91IGNvbW1pdHRlZCBhbHJlYWR5P1xuIgorInRyeSBcImdpdCAlcyAtLWNvbnRpbnVlXCIiCittc2dzdHIgIiIKKyJi4bqhbiDEkcOjIHPhurVuIHPDoG5nIGNodXnhu4NuIGdpYW8gY2jGsGE/XG4iCisidGjhu60gXCJnaXQgJXMgLS1jb250aW51ZVwiIgorCisjOiBzZXF1ZW5jZXIuYzozMDAzIHNlcXVlbmNlci5jOjQwMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHVwZGF0ZSAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGPhuq1wIG5o4bqtdCAlcyIKIAotIzogc2VxdWVuY2VyLmM6Mjc0NyBzZXF1ZW5jZXIuYzozNjU5CisjOiBzZXF1ZW5jZXIuYzozMDQyIHNlcXVlbmNlci5jOjM5OTEKIG1zZ2lkICJjYW5ub3QgcmVhZCBIRUFEIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjI3NjIKKyM6IHNlcXVlbmNlci5jOjMwNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNvcHkgJyVzJyB0byAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgY2jDqXAg4oCcJXPigJ0gc2FuZyDigJwlc+KAnSIKIAotIzogc2VxdWVuY2VyLmM6Mjc3MAorIzogc2VxdWVuY2VyLmM6MzA2NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGNhbiBhbWVuZCB0aGUgY29tbWl0IG5vdywgd2l0aFxuIgpAQCAtNTA4MCwyNyArNzA5NSwyMiBAQAogIlxuIgogIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI3ODAKKyM6IHNlcXVlbmNlci5jOjMwNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICVzLi4uICUuKnMiCiBtc2dzdHIgIktow7RuZyB0aOG7gyDDoXAgZOG7pW5nICVz4oCmICUuKnMiCiAKLSM6IHNlcXVlbmNlci5jOjI3ODcKKyM6IHNlcXVlbmNlci5jOjMwODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IG1lcmdlICUuKnMiCiBtc2dzdHIgIktow7RuZyBow7JhIHRy4buZbiAlLipzIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzk4IHNlcXVlbmNlci5jOjI4MDIgYnVpbHRpbi9kaWZmdG9vbC5jOjY0MAorIzogc2VxdWVuY2VyLmM6MzA5OCBzZXF1ZW5jZXIuYzozMTAyIGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNvcHkgJyVzJyB0byAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgY2jDqXAg4oCcJXPigJ0gc2FuZyDigJwlc+KAnSIKIAotIzogc2VxdWVuY2VyLmM6MjgyNCBzZXF1ZW5jZXIuYzozMjQyIGJ1aWx0aW4vcmViYXNlLmM6NTgwIGJ1aWx0aW4vcmViYXNlLmM6MTAxOQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzcyIGJ1aWx0aW4vcmViYXNlLmM6MTQyNgotbXNnaWQgImNvdWxkIG5vdCByZWFkIGluZGV4IgotbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIGLhuqNuZyBt4bulYyBs4bulYyIKLQotIzogc2VxdWVuY2VyLmM6MjgyOQorIzogc2VxdWVuY2VyLmM6MzEyOQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhlY3V0aW9uIGZhaWxlZDogJXNcbiIKQEAgLTUxMTUsMTEgKzcxMjUsMTEgQEAKICIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogIlxuIgogCi0jOiBzZXF1ZW5jZXIuYzoyODM1CisjOiBzZXF1ZW5jZXIuYzozMTM1CiBtc2dpZCAiYW5kIG1hZGUgY2hhbmdlcyB0byB0aGUgaW5kZXggYW5kL29yIHRoZSB3b3JraW5nIHRyZWVcbiIKIG1zZ3N0ciAidsOgIHThuqFvIGPDoWMgdGhheSDEkeG7lWkgYuG6o25nIG3hu6VjIGzhu6VjIHbDoC9oYXkgY8OieSBsw6BtIHZp4buHY1xuIgogCi0jOiBzZXF1ZW5jZXIuYzoyODQxCisjOiBzZXF1ZW5jZXIuYzozMTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleGVjdXRpb24gc3VjY2VlZGVkOiAlc1xuIgpAQCAtNTEzNiw3NiArNzE0Niw3MiBAQAogIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAiXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI5MDIKKyM6IHNlcXVlbmNlci5jOjMyMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWxsZWdhbCBsYWJlbCBuYW1lOiAnJS4qcyciCiBtc2dzdHIgInTDqm4gbmjDo24gZOG7iyBow6xuaDog4oCcJS4qc+KAnSIKIAotIzogc2VxdWVuY2VyLmM6Mjk1NAorIzogc2VxdWVuY2VyLmM6MzI1NgogbXNnaWQgIndyaXRpbmcgZmFrZSByb290IGNvbW1pdCIKIG1zZ3N0ciAiZ2hpIGzhuqduIGNodXnhu4NuIGdpYW8gZ+G7kWMgZ2nhuqMiCiAKLSM6IHNlcXVlbmNlci5jOjI5NTkKKyM6IHNlcXVlbmNlci5jOjMyNjEKIG1zZ2lkICJ3cml0aW5nIHNxdWFzaC1vbnRvIgogbXNnc3RyICLEkWFuZyBnaGkgc3F1YXNoLW9udG8iCiAKLSM6IHNlcXVlbmNlci5jOjI5OTcgYnVpbHRpbi9yZWJhc2UuYzo1ODUgYnVpbHRpbi9yZWJhc2UuYzo1OTEKKyM6IHNlcXVlbmNlci5jOjMyOTkgYnVpbHRpbi9yZWJhc2UuYzo4ODAgYnVpbHRpbi9yZWJhc2UuYzo4ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGZpbmQgdHJlZSBvZiAlcyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHTDrG0gY8OieSBj4bunYSAlcyIKIAotIzogc2VxdWVuY2VyLmM6MzAxNSBidWlsdGluL3JlYmFzZS5jOjYwNAotbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBpbmRleCIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIGdoaSBi4bqjbmcgbeG7pWMgbOG7pWMiCi0KLSM6IHNlcXVlbmNlci5jOjMwNDIKKyM6IHNlcXVlbmNlci5jOjMzNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIGdp4bqjaSDigJwlc+KAnSIKIAotIzogc2VxdWVuY2VyLmM6MzA2OAorIzogc2VxdWVuY2VyLmM6MzM3NQogbXNnaWQgImNhbm5vdCBtZXJnZSB3aXRob3V0IGEgY3VycmVudCByZXZpc2lvbiIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGjDsmEgdHLhu5luIG3DoCBraMO0bmcgY8OzIG3hu5l0IMSRaeG7g20geMOpdCBkdXnhu4d0IGhp4buHbiB04bqhaSIKIAotIzogc2VxdWVuY2VyLmM6MzA5MAorIzogc2VxdWVuY2VyLmM6MzM5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJyUuKnMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2gg4oCcJS4qc+KAnSIKIAotIzogc2VxdWVuY2VyLmM6MzA5OQorIzogc2VxdWVuY2VyLmM6MzQwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIG1lcmdlOiAnJS4qcyciCiBtc2dzdHIgImNo4bqzbmcgY8OzIGfDrCDEkeG7gyBow7JhIHRy4buZbjog4oCcJS4qc+KAnSIKIAotIzogc2VxdWVuY2VyLmM6MzExMQorIzogc2VxdWVuY2VyLmM6MzQxOAogbXNnaWQgIm9jdG9wdXMgbWVyZ2UgY2Fubm90IGJlIGV4ZWN1dGVkIG9uIHRvcCBvZiBhIFtuZXcgcm9vdF0iCiBtc2dzdHIgImjDsmEgdHLhu5luIG9jdG9wdXMga2jDtG5nIHRo4buDIMSRxrDhu6NjIHRo4buxYyB0aGkgdHLDqm4gxJHhu4luaCBj4bunYSBt4buZdCBbbmV3IHJvb3RdIgogCi0jOiBzZXF1ZW5jZXIuYzozMTI2CisjOiBzZXF1ZW5jZXIuYzozNDM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBnZXQgY29tbWl0IG1lc3NhZ2Ugb2YgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IGNow7ogdGjDrWNoIGPhu6dhIGzhuqduIGNodXnhu4NuIGdpYW8gY+G7p2Eg4oCcJXPigJ0iCiAKLSM6IHNlcXVlbmNlci5jOjMyNzQKKyM6IHNlcXVlbmNlci5jOjM1OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGV2ZW4gYXR0ZW1wdCB0byBtZXJnZSAnJS4qcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBuZ2F5IGPhuqMga2hpIHRo4butIGjDsmEgdHLhu5luIOKAnCUuKnPigJ0iCiAKLSM6IHNlcXVlbmNlci5jOjMyOTAKKyM6IHNlcXVlbmNlci5jOjM2MTAKIG1zZ2lkICJtZXJnZTogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgogbXNnc3RyICJtZXJnZTogS2jDtG5nIHRo4buDIGdoaSB04bqtcCB0aW4gbMawdSBi4bqjbmcgbeG7pWMgbOG7pWMgbeG7m2kiCiAKLSM6IHNlcXVlbmNlci5jOjMzNTggYnVpbHRpbi9yZWJhc2UuYzoyNjgKKyM6IHNlcXVlbmNlci5jOjM2NzkgYnVpbHRpbi9yZWJhc2UuYzo3MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guXG4iCiBtc2dzdHIgIsSQw6Mgw6FwIGThu6VuZyBhdXRvc3Rhc2guXG4iCiAKLSM6IHNlcXVlbmNlci5jOjMzNzAKKyM6IHNlcXVlbmNlci5jOjM2OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0b3JlICVzIgogbXNnc3RyICJraMO0bmcgdGjhu60gbMawdSDigJwlc+KAnSIKIAotIzogc2VxdWVuY2VyLmM6MzM3MyBidWlsdGluL3JlYmFzZS5jOjI4NAorIzogc2VxdWVuY2VyLmM6MzY5NCBidWlsdGluL3JlYmFzZS5jOjc1MyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJBcHBseWluZyBhdXRvc3Rhc2ggcmVzdWx0ZWQgaW4gY29uZmxpY3RzLlxuIgpAQCAtNTIxNywzMSArNzIyMywyNiBAQAogIkLhuqFuIGPDsyB0aOG7gyBjaOG6oXkgbOG7h25oIFwiZ2l0IHN0YXNoIHBvcFwiIGhheSBcImdpdCBzdGFzaCBkcm9wXCIgYuG6pXQga+G7syBsw7pjICIKICJuw6BvLlxuIgogCi0jOiBzZXF1ZW5jZXIuYzozNDI3Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBjaGVja291dCAlcyIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHJhICVzIgotCi0jOiBzZXF1ZW5jZXIuYzozNDQxCisjOiBzZXF1ZW5jZXIuYzozNzU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBub3QgYSB2YWxpZCBPSUQiCiBtc2dzdHIgIiVzIGtow7RuZyBwaOG6o2kgbMOgIG3hu5l0IE9JRCBo4bujcCBs4buHIgogCi0jOiBzZXF1ZW5jZXIuYzozNDQ2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MjQKKyM6IHNlcXVlbmNlci5jOjM3NjAgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc3OQogbXNnaWQgImNvdWxkIG5vdCBkZXRhY2ggSEVBRCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHTDoWNoIHLhu51pIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjM0NjEKKyM6IHNlcXVlbmNlci5jOjM3NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCBIRUFEXG4iCiBtc2dzdHIgIkThu6tuZyBs4bqhaSDhu58gSEVBRFxuIgogCi0jOiBzZXF1ZW5jZXIuYzozNDYzCisjOiBzZXF1ZW5jZXIuYzozNzc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN0b3BwZWQgYXQgJXNcbiIKIG1zZ3N0ciAiROG7q25nIGzhuqFpIOG7nyAlc1xuIgogCi0jOiBzZXF1ZW5jZXIuYzozNDcxCisjOiBzZXF1ZW5jZXIuYzozNzg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDb3VsZCBub3QgZXhlY3V0ZSB0aGUgdG9kbyBjb21tYW5kXG4iCkBAIC01MjYyLDQ4ICs3MjYzLDQ4IEBACiAiICAgIGdpdCByZWJhc2UgLS1lZGl0LXRvZG9cbiIKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM1NDMKKyM6IHNlcXVlbmNlci5jOjM4NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAlcy4uLiAgJS4qc1xuIgogbXNnc3RyICJE4burbmcgbOG6oWkg4bufICVz4oCmICAlLipzXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM2MjIKKyM6IHNlcXVlbmNlci5jOjM5NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBjb21tYW5kICVkIgogbXNnc3RyICJraMO0bmcgaGnhu4N1IGPDonUgbOG7h25oICVkIgogCi0jOiBzZXF1ZW5jZXIuYzozNjY3CisjOiBzZXF1ZW5jZXIuYzozOTk5CiBtc2dpZCAiY291bGQgbm90IHJlYWQgb3JpZy1oZWFkIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIG9yaWctaGVhZCIKIAotIzogc2VxdWVuY2VyLmM6MzY3MiBzZXF1ZW5jZXIuYzo0NzQxCisjOiBzZXF1ZW5jZXIuYzo0MDA0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgJ29udG8nIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIOKAnG9udG/igJ0uIgogCi0jOiBzZXF1ZW5jZXIuYzozNjg2CisjOiBzZXF1ZW5jZXIuYzo0MDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB1cGRhdGUgSEVBRCB0byAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGPhuq1wIG5o4bqtdCBIRUFEIHRow6BuaCAlcyIKIAotIzogc2VxdWVuY2VyLmM6Mzc3MgorIzogc2VxdWVuY2VyLmM6NDExMQogbXNnaWQgImNhbm5vdCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICJraMO0bmcgdGjhu4MgY+G6o2kgdOG7lTogQuG6oW4gY8OzIGPDoWMgdGhheSDEkeG7lWkgY2jGsGEgxJHGsOG7o2MgxJHGsGEgbMOqbiBi4buHIHBow7NuZy4iCiAKLSM6IHNlcXVlbmNlci5jOjM3ODEKKyM6IHNlcXVlbmNlci5jOjQxMjAKIG1zZ2lkICJjYW5ub3QgYW1lbmQgbm9uLWV4aXN0aW5nIGNvbW1pdCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHR1IGLhu48gbeG7mXQgbOG6p24gY2h1eeG7g24gZ2lhbyBraMO0bmcgdOG7k24gdOG6oWkiCiAKLSM6IHNlcXVlbmNlci5jOjM3ODMKKyM6IHNlcXVlbmNlci5jOjQxMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBmaWxlOiAnJXMnIgogbXNnc3RyICJ04bqtcCB0aW4ga2jDtG5nIGjhu6NwIGzhu4c6IOKAnCVz4oCdIgogCi0jOiBzZXF1ZW5jZXIuYzozNzg1CisjOiBzZXF1ZW5jZXIuYzo0MTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29udGVudHM6ICclcyciCiBtc2dzdHIgIm7hu5lpIGR1bmcga2jDtG5nIGjhu6NwIGzhu4c6IOKAnCVz4oCdIgogCi0jOiBzZXF1ZW5jZXIuYzozNzg4CisjOiBzZXF1ZW5jZXIuYzo0MTI3CiBtc2dpZCAiIgogIlxuIgogIllvdSBoYXZlIHVuY29tbWl0dGVkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuIFBsZWFzZSwgY29tbWl0IHRoZW1cbiIKQEAgLTUzMTMsMTI0ICs3MzE0LDU5IEBACiAiQuG6oW4gY8OzIGPDoWMgdGhheSDEkeG7lWkgY2jGsGEgY2h1eeG7g24gZ2lhbyB0cm9uZyB0aMawIG3hu6VjIGzDoG0gdmnhu4djLiBWdWkgbMOybmdcbiIKICJjaHV54buDbiBnaWFvIGNow7puZyB0csaw4bubYyB2w6Agc2F1IMSRw7MgY2jhuqF5IGzhu4duaCDigJxnaXQgcmViYXNlIC0tY29udGludWXigJ0gbOG6p24gbuG7r2EuIgogCi0jOiBzZXF1ZW5jZXIuYzozODI0IHNlcXVlbmNlci5jOjM4NjIKKyM6IHNlcXVlbmNlci5jOjQxNjMgc2VxdWVuY2VyLmM6NDIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZmlsZTogJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdoaSB04bqtcCB0aW46IOKAnCVz4oCdIgogCi0jOiBzZXF1ZW5jZXIuYzozODc3CisjOiBzZXF1ZW5jZXIuYzo0MjE3CiBtc2dpZCAiY291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgogbXNnc3RyICJraMO0bmcgdGjhu4MgeMOzYSBi4buPIENIRVJSWV9QSUNLX0hFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjM4ODQKKyM6IHNlcXVlbmNlci5jOjQyMjQKIG1zZ2lkICJjb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGNodXnhu4NuIGdpYW8gY8OhYyB0aGF5IMSR4buVaSDEkcOjIMSRxrBhIGzDqm4gYuG7hyBwaMOzbmcuIgogCi0jOiBzZXF1ZW5jZXIuYzozOTgyCisjOiBzZXF1ZW5jZXIuYzo0MzM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjYW4ndCBjaGVycnktcGljayBhICVzIgogbXNnc3RyICIlczoga2jDtG5nIHRo4buDIGNoZXJyeS1waWNrIG3hu5l0ICVzIgogCi0jOiBzZXF1ZW5jZXIuYzozOTg2CisjOiBzZXF1ZW5jZXIuYzo0MzQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBiYWQgcmV2aXNpb24iCiBtc2dzdHIgIiVzOiDEkWnhu4NtIHjDqXQgZHV54buHdCBzYWkiCiAKLSM6IHNlcXVlbmNlci5jOjQwMjEKKyM6IHNlcXVlbmNlci5jOjQzNzcKIG1zZ2lkICJjYW4ndCByZXZlcnQgYXMgaW5pdGlhbCBjb21taXQiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBob8OgbiBuZ3V5w6puIG3hu5l0IGzhuqduIGNodXnhu4NuIGdpYW8ga2jhu59pIHThuqFvIgogCi0jOiBzZXF1ZW5jZXIuYzo0NDY2CisjOiBzZXF1ZW5jZXIuYzo0ODQ2CiBtc2dpZCAibWFrZV9zY3JpcHQ6IHVuaGFuZGxlZCBvcHRpb25zIgogbXNnc3RyICJtYWtlX3NjcmlwdDogY8OhYyB0w7l5IGNo4buNbiDEkcaw4bujYyBraMO0bmcgeOG7rSBsw70iCiAKLSM6IHNlcXVlbmNlci5jOjQ0NjkKKyM6IHNlcXVlbmNlci5jOjQ4NDkKIG1zZ2lkICJtYWtlX3NjcmlwdDogZXJyb3IgcHJlcGFyaW5nIHJldmlzaW9ucyIKIG1zZ3N0ciAibWFrZV9zY3JpcHQ6IGzhu5dpIGNodeG6qW4gYuG7iyDEkWnhu4NtIGhp4buHdSBjaOG7iW5oIgogCi0jOiBzZXF1ZW5jZXIuYzo0NTA5IHNlcXVlbmNlci5jOjQ1NjUgc2VxdWVuY2VyLmM6NDg0MAotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bnVzYWJsZSB0b2RvIGxpc3Q6ICclcyciCi1tc2dzdHIgImRhbmggc8OhY2ggY+G6p24gbMOgbSBraMO0bmcgZMO5bmcgxJHGsOG7o2M6IOKAnCVz4oCdIgotCi0jOiBzZXF1ZW5jZXIuYzo0NjIwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJ1bnJlY29nbml6ZWQgc2V0dGluZyAlcyBmb3Igb3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmluZy4iCi1tc2dzdHIgIiIKLSJraMO0bmcgbmjhuq1uIHJhIGPDoGkgxJHhurd0ICVzIGNobyB0w7l5IGNo4buNbiByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4gTsOqbiBi4buPIHF1YS4iCi0KLSM6IHNlcXVlbmNlci5jOjQ2OTAKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotIldhcm5pbmc6IHNvbWUgY29tbWl0cyBtYXkgaGF2ZSBiZWVuIGRyb3BwZWQgYWNjaWRlbnRhbGx5LlxuIgotIkRyb3BwZWQgY29tbWl0cyAobmV3ZXIgdG8gb2xkZXIpOlxuIgotbXNnc3RyICIiCi0iQ+G6o25oIGLDoW86IG3hu5l0IHPhu5EgbOG6p24gY2h1eeG7g24gZ2lhbyBjw7MgbOG6vSDEkcOjIGLhu4sgeMOzYSBt4buZdCBjw6FjaCB0w6xuaCBj4budLlxuIgotIkPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBi4buLIHjDs2EgKHThu6sgbeG7m2kgxJHhur9uIGPFqSk6XG4iCi0KLSM6IHNlcXVlbmNlci5jOjQ2OTcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotIlRvIGF2b2lkIHRoaXMgbWVzc2FnZSwgdXNlIFwiZHJvcFwiIHRvIGV4cGxpY2l0bHkgcmVtb3ZlIGEgY29tbWl0LlxuIgotIlxuIgotIlVzZSAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgdG8gY2hhbmdlIHRoZSBsZXZlbCBvZiAiCi0id2FybmluZ3MuXG4iCi0iVGhlIHBvc3NpYmxlIGJlaGF2aW91cnMgYXJlOiBpZ25vcmUsIHdhcm4sIGVycm9yLlxuIgotIlxuIgotbXNnc3RyICIiCi0ixJDhu4MgdHLDoW5oIHRow7RuZyBiw6FvIG7DoHksIGTDuW5nIFwiZHJvcFwiIG3hu5l0IGPDoWNoIHLDtSByw6BuZyDEkeG7gyB4w7NhIGLhu48gbeG7mXQgbOG6p24gIgotImNodXnhu4NuIGdpYW8uXG4iCi0iXG4iCi0iRMO5bmcg4oCcZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVja+KAnSDEkeG7gyB0aGF5IMSR4buVaSBt4bupYyDEkeG7mSBj4bunYSBj4bqjbmggIgotImLDoW8uXG4iCi0iQ8Ohbmgg4bupbmcgeOG7rSBjw7MgdGjhu4MgbMOgOiBpZ25vcmUsIHdhcm4sIGVycm9yLlxuIgotIlxuIgotCi0jOiBzZXF1ZW5jZXIuYzo0NzEwCi0jLCBjLWZvcm1hdAotbXNnaWQgIiIKLSJZb3UgY2FuIGZpeCB0aGlzIHdpdGggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLSIKLSJjb250aW51ZScuXG4iCi0iT3IgeW91IGNhbiBhYm9ydCB0aGUgcmViYXNlIHdpdGggJ2dpdCByZWJhc2UgLS1hYm9ydCcuXG4iCi1tc2dzdHIgIiIKLSJC4bqhbiBjw7MgdGjhu4Mgc+G7rWEgbsOzIGLhurFuZyDigJxnaXQgcmViYXNlIC0tZWRpdC10b2Rv4oCdIHbDoCBzYXUgxJHDsyBjaOG6oXkg4oCcZ2l0IHJlYmFzZSAtLSIKLSJjb250aW51ZeKAnS5cbiIKLSJIb+G6t2MgbMOgIGLhuqFuIGPDsyB0aOG7gyBiw6NpIGLhu48gdmnhu4djIGPhuqNpIHThu5UgYuG6sW5nIOKAnGdpdCByZWJhc2UgLS1hYm9ydOKAnS5cbiIKLQotIzogc2VxdWVuY2VyLmM6NDg0OCBzZXF1ZW5jZXIuYzo0ODg2CisjOiBzZXF1ZW5jZXIuYzo1MDgzIHNlcXVlbmNlci5jOjUxMDAKIG1zZ2lkICJub3RoaW5nIHRvIGRvIgogbXNnc3RyICJraMO0bmcgY8OzIGfDrCDEkeG7gyBsw6BtIgogCi0jOiBzZXF1ZW5jZXIuYzo0ODUyCi0jLCBjLWZvcm1hdAotbXNnaWQgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kKSIKLW1zZ2lkX3BsdXJhbCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmRzKSIKLW1zZ3N0clswXSAiQ+G6o2kgdOG7lSAlcyB2w6BvICVzICglZCBs4buHbmggKSIKLQotIzogc2VxdWVuY2VyLmM6NDg2NAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcycuIgotbXNnc3RyICJraMO0bmcgdGjhu4MgY2jDqXAg4oCcJXPigJ0gc2FuZyDigJwlc+KAnS4iCi0KLSM6IHNlcXVlbmNlci5jOjQ4Njggc2VxdWVuY2VyLmM6NDg5NwotbXNnaWQgImNvdWxkIG5vdCB0cmFuc2Zvcm0gdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIGNodXnhu4NuIGThuqFuZyBkYW5oIHPDoWNoIGPhuqduIGzDoG0iCi0KLSM6IHNlcXVlbmNlci5jOjQ5MDAKKyM6IHNlcXVlbmNlci5jOjUxMTkKIG1zZ2lkICJjb3VsZCBub3Qgc2tpcCB1bm5lY2Vzc2FyeSBwaWNrIGNvbW1hbmRzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgYuG7jyBxdWEgY8OhYyBs4buHbmggY+G6rXkgKHBpY2spIGtow7RuZyBj4bqnbiB0aGnhur90IgogCi0jOiBzZXF1ZW5jZXIuYzo0OTgzCisjOiBzZXF1ZW5jZXIuYzo1MjEzCiBtc2dpZCAidGhlIHNjcmlwdCB3YXMgYWxyZWFkeSByZWFycmFuZ2VkLiIKIG1zZ3N0ciAidsSDbiBs4buHbmggxJHDoyBz4bq1biDEkcaw4bujYyBz4bqvcCDEkeG6t3QgcuG7k2kuIgogCi0jOiBzZXR1cC5jOjEyMworIzogc2V0dXAuYzoxMjQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkiCi1tc2dzdHIgIuKAnCVz4oCdIOG7nyBuZ2/DoGkgbeG7mXQga2hvIGNo4bupYSIKK21zZ2lkICInJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSBhdCAnJXMnIgorbXNnc3RyICLigJwlc+KAnSBuZ2/DoGkgbeG7mXQga2hvIGNo4bupYSB04bqhaSAnJXMnIgogCi0jOiBzZXR1cC5jOjE3MgorIzogc2V0dXAuYzoxNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiVzOiBubyBzdWNoIHBhdGggaW4gdGhlIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTU0NDAsNyArNzM3Niw3IEBACiAiRMO5bmcg4oCcZ2l0IDxs4buHbmg+IC0tIDzEkcaw4budbmcvZOG6q24+4oCm4oCdIMSR4buDIGNo4buJIMSR4buLbmggxJHGsOG7nW5nIGThuqtuIG3DoCBuw7Mga2jDtG5nIHThu5NuIHThuqFpICIKICJt4buZdCBjw6FjaCBu4buZaSBi4buZLiIKIAotIzogc2V0dXAuYzoxODUKKyM6IHNldHVwLmM6MTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJhbWJpZ3VvdXMgYXJndW1lbnQgJyVzJzogdW5rbm93biByZXZpc2lvbiBvciBwYXRoIG5vdCBpbiB0aGUgd29ya2luZyB0cmVlLlxuIgpAQCAtNTQ1MiwxMiArNzM4OCwxMiBAQAogIkTDuW5nIOKAnC0t4oCdIMSR4buDIG5nxINuIGPDoWNoIGPDoWMgxJHGsOG7nW5nIGThuqtuIGto4buPaSDEkWnhu4NtIHhlbSB4w6l0LCBuaMawIHRo4bq/IG7DoHk6XG4iCiAi4oCcZ2l0IDxs4buHbmg+IFs8xJFp4buDbSB4ZW0geMOpdD7igKZdIC0tIFs8dOG6rXAgdGluPuKApl3igJ0iCiAKLSM6IHNldHVwLmM6MjM0CisjOiBzZXR1cC5jOjI1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJvcHRpb24gJyVzJyBtdXN0IGNvbWUgYmVmb3JlIG5vbi1vcHRpb24gYXJndW1lbnRzIgogbXNnc3RyICJ0w7l5IGNo4buNbiDigJwlc+KAnSBwaOG6o2kgdHLGsOG7m2MgY8OhYyDEkeG7kWkgc+G7kSDEkeG6p3UgdGnDqm4ga2jDtG5nIGPDsyB0w7l5IGNo4buNbiIKIAotIzogc2V0dXAuYzoyNTMKKyM6IHNldHVwLmM6MjczCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJhbWJpZ3VvdXMgYXJndW1lbnQgJyVzJzogYm90aCByZXZpc2lvbiBhbmQgZmlsZW5hbWVcbiIKQEAgLTU0NjgsOTIgKzc0MDQsOTIgQEAKICJEw7luZyDigJwtLeKAnSDEkeG7gyBuZ8SDbiBjw6FjaCBjw6FjIMSRxrDhu51uZyBk4bqrbiBraOG7j2kgxJFp4buDbSB4ZW0geMOpdCwgbmjGsCB0aOG6vyBuw6B5OlxuIgogIuKAnGdpdCA8bOG7h25oPiBbPMSRaeG7g20geGVtIHjDqXQ+4oCmXSAtLSBbPHThuq1wIHRpbj7igKZd4oCdIgogCi0jOiBzZXR1cC5jOjM4OQorIzogc2V0dXAuYzo0MDkKIG1zZ2lkICJ1bmFibGUgdG8gc2V0IHVwIHdvcmsgdHJlZSB1c2luZyBpbnZhbGlkIGNvbmZpZyIKLW1zZ3N0ciAiS2jDtG5nIHRo4buDIMSR4bq3dCB0aMawIG3hu6VjIGzDoG0gdmnhu4djIGhp4buHbiBow6BuaCBz4butIGThu6VuZyBj4bqldSBow6xuaCBraMO0bmcgaOG7o3AgbOG7hyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGPDoGkgxJHhurd0IHRoxrAgbeG7pWMgbMOgbSB2aeG7h2Mgc+G7rSBk4bulbmcgY+G6pXUgaMOsbmgga2jDtG5nIGjhu6NwIGzhu4ciCiAKLSM6IHNldHVwLmM6MzkzCisjOiBzZXR1cC5jOjQxMwogbXNnaWQgInRoaXMgb3BlcmF0aW9uIG11c3QgYmUgcnVuIGluIGEgd29yayB0cmVlIgogbXNnc3RyICJ0aGFvIHTDoWMgbsOgeSBwaOG6o2kgxJHGsOG7o2MgdGjhu7FjIGhp4buHbiB0cm9uZyB0aMawIG3hu6VjIGzDoG0gdmnhu4djIgogCi0jOiBzZXR1cC5jOjUyNworIzogc2V0dXAuYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXhwZWN0ZWQgZ2l0IHJlcG8gdmVyc2lvbiA8PSAlZCwgZm91bmQgJWQiCiBtc2dzdHIgIkPhuqduIHBoacOqbiBi4bqjbiBraG8gZ2l0IDw9ICVkLCBuaMawbmcgbOG6oWkgbmjhuq1uIMSRxrDhu6NjICVkIgogCi0jOiBzZXR1cC5jOjUzNQorIzogc2V0dXAuYzo1NjcKIG1zZ2lkICJ1bmtub3duIHJlcG9zaXRvcnkgZXh0ZW5zaW9ucyBmb3VuZDoiCiBtc2dzdHIgInTDrG0gdGjhuqV5IHBo4bqnbiBt4bufIHLhu5luZyBraG8gY2jGsGEgYmnhur90OiIKIAotIzogc2V0dXAuYzo1NTQKKyM6IHNldHVwLmM6NTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIG9wZW5pbmcgJyVzJyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIG3hu58g4oCcJXPigJ0iCiAKLSM6IHNldHVwLmM6NTU2CisjOiBzZXR1cC5jOjU4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ0b28gbGFyZ2UgdG8gYmUgYSAuZ2l0IGZpbGU6ICclcyciCiBtc2dzdHIgInThuq1wIHRpbiAuZ2l0IGzDoCBxdcOhIGzhu5tuOiDigJwlc+KAnSIKIAotIzogc2V0dXAuYzo1NTgKKyM6IHNldHVwLmM6NTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIHJlYWRpbmcgJXMiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSDEkeG7jWMgJXMiCiAKLSM6IHNldHVwLmM6NTYwCisjOiBzZXR1cC5jOjU5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGdpdGZpbGUgZm9ybWF0OiAlcyIKIG1zZ3N0ciAixJHhu4tuaCBk4bqhbmcgdOG6rXAgdGluIGdpdCBraMO0bmcgaOG7o3AgbOG7hzogJXMiCiAKLSM6IHNldHVwLmM6NTYyCisjOiBzZXR1cC5jOjU5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBwYXRoIGluIGdpdGZpbGU6ICVzIgogbXNnc3RyICJraMO0bmcgY8OzIMSRxrDhu51uZyBk4bqrbiB0cm9uZyB04bqtcCB0aW4gZ2l0OiAlcyIKIAotIzogc2V0dXAuYzo1NjQKKyM6IHNldHVwLmM6NTk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5OiAlcyIKLW1zZ3N0ciAiS2jDtG5nIHBo4bqjaSBsw6Aga2hvIGdpdDogJXMiCittc2dzdHIgImtow7RuZyBwaOG6o2kgbMOgIGtobyBnaXQ6ICVzIgogCi0jOiBzZXR1cC5jOjY2MworIzogc2V0dXAuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyQlcycgdG9vIGJpZyIKIG1zZ3N0ciAi4oCcJCVz4oCdIHF1w6EgbOG7m24iCiAKLSM6IHNldHVwLmM6Njc3CisjOiBzZXR1cC5jOjcwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeTogJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHBo4bqjaSBsw6Aga2hvIGdpdDog4oCcJXPigJ0iCiAKLSM6IHNldHVwLmM6NzA2IHNldHVwLmM6NzA4IHNldHVwLmM6NzM5CisjOiBzZXR1cC5jOjczOCBzZXR1cC5jOjc0MCBzZXR1cC5jOjc3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY2hkaXIgdG8gJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGNoZGlyIChjaHV54buDbiDEkeG7lWkgdGjGsCBt4bulYykgc2FuZyDigJwlc+KAnSIKIAotIzogc2V0dXAuYzo3MTEgc2V0dXAuYzo3Njcgc2V0dXAuYzo3Nzcgc2V0dXAuYzo4MTYgc2V0dXAuYzo4MjQgc2V0dXAuYzo4MzkKKyM6IHNldHVwLmM6NzQzIHNldHVwLmM6Nzk5IHNldHVwLmM6ODA5IHNldHVwLmM6ODQ4IHNldHVwLmM6ODU2CiBtc2dpZCAiY2Fubm90IGNvbWUgYmFjayB0byBjd2QiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBxdWF5IGzhuqFpIGN3ZCIKIAotIzogc2V0dXAuYzo4MzcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBvZiB0aGUgcGFyZW50IGRpcmVjdG9yaWVzKTogJXMiCi1tc2dzdHIgImtow7RuZyBwaOG6o2kgbMOgIGtobyBnaXQgKGhv4bq3YyBi4bqldCBr4buzIHRoxrAgbeG7pWMgY2hhIG3hurkgbsOgbyk6ICVzIgotCi0jOiBzZXR1cC5jOjg0OAorIzogc2V0dXAuYzo4NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0YXQgJyUqcyVzJXMnIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgbOG6pXkgdGjhu5FuZyBrw6ogduG7gSDigJwlKnMlcyVz4oCdIgogCi0jOiBzZXR1cC5jOjEwNzgKKyM6IHNldHVwLmM6MTEwOAogbXNnaWQgIlVuYWJsZSB0byByZWFkIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIktow7RuZyB0aOG7gyDEkeG7jWMgdGjGsCBt4bulYyBsw6BtIHZp4buHYyBoaeG7h24gaMOgbmgiCiAKLSM6IHNldHVwLmM6MTA5MCBzZXR1cC5jOjEwOTYKKyM6IHNldHVwLmM6MTExNyBzZXR1cC5jOjExMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoYW5nZSB0byAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgY2h1eeG7g24gc2FuZyDigJwlc+KAnSIKIAotIzogc2V0dXAuYzoxMTA5CisjOiBzZXR1cC5jOjExMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBvZiB0aGUgcGFyZW50IGRpcmVjdG9yaWVzKTogJXMiCittc2dzdHIgImtow7RuZyBwaOG6o2kgbMOgIGtobyBnaXQgKGhv4bq3YyBi4bqldCBr4buzIHRoxrAgbeG7pWMgY2hhIG3hurkgbsOgbyk6ICVzIgorCisjOiBzZXR1cC5jOjExMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgcGFyZW50IHVwIHRvIG1vdW50IHBvaW50ICVzKVxuIgpAQCAtNTU2Myw3ICs3NDk5LDcgQEAKICJE4burbmcgdOG6oWkgYmnDqm4gY+G7p2EgaOG7hyB0aOG7kW5nIHThuq1wIHRpbiAoR0lUX0RJU0NPVkVSWV9BQ1JPU1NfRklMRVNZU1RFTSBjaMawYSAiCiAixJHhurd0KS4iCiAKLSM6IHNldHVwLmM6MTE5MgorIzogc2V0dXAuYzoxMjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJwcm9ibGVtIHdpdGggY29yZS5zaGFyZWRSZXBvc2l0b3J5IGZpbGVtb2RlIHZhbHVlICgwJS4zbykuXG4iCkBAIC01NTcyLDI4NSArNzUwOCwyOTAgQEAKICJn4bq3cCB24bqlbiDEkeG7gSB24bubaSBnacOhIHRy4buLIGNo4bq/IMSR4buZIHThuq1wIHRpbiBjb3JlLnNoYXJlZFJlcG9zaXRvcnkgKDAlLjNvKS5cbiIKICJuZ8aw4budaSBz4bufIGjhu691IHThuq1wIHRpbiBwaOG6o2kgbHXDtG4gY8OzIHF1eeG7gW4gxJHhu41jIHbDoCBnaGkuIgogCi0jOiBzZXR1cC5jOjEyMzUKKyM6IHNldHVwLmM6MTI4OQogbXNnaWQgIm9wZW4gL2Rldi9udWxsIG9yIGR1cCBmYWlsZWQiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBt4bufIOKAnC9kZXYvbnVsbOKAnSBoYXkgZHVwIgogCi0jOiBzZXR1cC5jOjEyNTAKKyM6IHNldHVwLmM6MTMwNAogbXNnaWQgImZvcmsgZmFpbGVkIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgcuG6vSBuaMOhbmggdGnhur9uIHRyw6xuaCIKIAotIzogc2V0dXAuYzoxMjU1CisjOiBzZXR1cC5jOjEzMDkKIG1zZ2lkICJzZXRzaWQgZmFpbGVkIgogbXNnc3RyICJzZXRzaWQgZ+G6t3AgbOG7l2kiCiAKLSM6IHNoYTEtZmlsZS5jOjM4MQorIzogc2hhMS1maWxlLmM6NDUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCBkaXJlY3RvcnkgJXMgZG9lcyBub3QgZXhpc3Q7IGNoZWNrIC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiCiBtc2dzdHIgIiIKICJ0aMawIG3hu6VjIMSR4buRaSB0xrDhu6NuZyAlcyBraMO0bmcgdOG7k24gdOG6oWk7IGtp4buDbSB0cmEgLmdpdC9vYmplY3RzL2luZm8vYWx0ZXJuYXRlcyIKIAotIzogc2hhMS1maWxlLmM6NDMyCisjOiBzaGExLWZpbGUuYzo1MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG5vcm1hbGl6ZSBhbHRlcm5hdGUgb2JqZWN0IHBhdGg6ICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdGjGsOG7nW5nIGjDs2EgxJHGsOG7nW5nIGThuqtuIMSR4buRaSB0xrDhu6NuZyB0aGF5IHRo4bq/OiDigJwlc+KAnSIKIAotIzogc2hhMS1maWxlLmM6NTAzCisjOiBzaGExLWZpbGUuYzo1NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGlnbm9yaW5nIGFsdGVybmF0ZSBvYmplY3Qgc3RvcmVzLCBuZXN0aW5nIHRvbyBkZWVwIgogbXNnc3RyICIlczogxJFhbmcgYuG7jyBxdWEga2hvIMSR4buRaSB0xrDhu6NuZyB0aGF5IHRo4bq/LCBs4buTbmcgbmhhdSBxdcOhIHPDonUiCiAKLSM6IHNoYTEtZmlsZS5jOjUxMAorIzogc2hhMS1maWxlLmM6NTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgb2JqZWN0IGRpcmVjdG9yeTogJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBjaHXhuqluIGjDs2EgdGjGsCBt4bulYyDEkeG7kWkgdMaw4bujbmc6IOKAnCVz4oCdIgogCi0jOiBzaGExLWZpbGUuYzo1NjUKKyM6IHNoYTEtZmlsZS5jOjYyNQogbXNnaWQgInVuYWJsZSB0byBmZG9wZW4gYWx0ZXJuYXRlcyBsb2NrZmlsZSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGZkb3BlbiB04bqtcCB0aW4ga2jDs2EgdGhheSB0aOG6vyIKIAotIzogc2hhMS1maWxlLmM6NTgzCisjOiBzaGExLWZpbGUuYzo2NDMKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBhbHRlcm5hdGVzIGZpbGUiCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgdOG6rXAgdGluIHRoYXkgdGjhur8iCiAKLSM6IHNoYTEtZmlsZS5jOjU5MAorIzogc2hhMS1maWxlLmM6NjUwCiBtc2dpZCAidW5hYmxlIHRvIG1vdmUgbmV3IGFsdGVybmF0ZXMgZmlsZSBpbnRvIHBsYWNlIgogbXNnc3RyICJraMO0bmcgdGjhu4MgZGkgY2h1eeG7g24gdOG6rXAgdGluIHRoYXkgdGjhur8gdsOgbyBjaOG7lyIKIAotIzogc2hhMS1maWxlLmM6NjI1CisjOiBzaGExLWZpbGUuYzo2ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICLEkcaw4budbmcgZOG6q24g4oCcJXPigJ0ga2jDtG5nIHThu5NuIHThuqFpIgogCi0jOiBzaGExLWZpbGUuYzo2NTEKKyM6IHNoYTEtZmlsZS5jOjcxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGFzIGEgbGlua2VkIGNoZWNrb3V0IGlzIG5vdCBzdXBwb3J0ZWQgeWV0LiIKIG1zZ3N0ciAia2hvIHRoYW0gY2hp4bq/dSDigJwlc+KAnSBuaMawIGzDoCBs4bqleSByYSBsacOqbiBr4bq/dCB24bqrbiBjaMawYSDEkcaw4bujYyBo4buXIHRy4bujLiIKIAotIzogc2hhMS1maWxlLmM6NjU3CisjOiBzaGExLWZpbGUuYzo3MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBpcyBub3QgYSBsb2NhbCByZXBvc2l0b3J5LiIKIG1zZ3N0ciAia2hvIHRoYW0gY2hp4bq/dSDigJwlc+KAnSBraMO0bmcgcGjhuqNpIGzDoCBt4buZdCBraG8gbuG7mWkgYuG7mS4iCiAKLSM6IHNoYTEtZmlsZS5jOjY2MworIzogc2hhMS1maWxlLmM6NzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgc2hhbGxvdyIKIG1zZ3N0ciAia2hvIHRoYW0gY2hp4bq/dSDigJwlc+KAnSBsw6AgbsO0bmciCiAKLSM6IHNoYTEtZmlsZS5jOjY3MQorIzogc2hhMS1maWxlLmM6NzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgZ3JhZnRlZCIKIG1zZ3N0ciAia2hvIHRoYW0gY2hp4bq/dSDigJwlc+KAnSBi4buLIGPhuqV5IGdow6lwIgogCi0jOiBzaGExLWZpbGUuYzo3ODEKKyM6IHNoYTEtZmlsZS5jOjc5MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGxpbmUgd2hpbGUgcGFyc2luZyBhbHRlcm5hdGUgcmVmczogJXMiCittc2dzdHIgImTDsm5nIGtow7RuZyBo4bujcCBs4buHIHRyb25nIGtoaSBwaMOibiB0w61jaCBjw6FjIHRoYW0gY2hp4bq/dSB0aGF5IHRo4bq/OiAlcyIKKworIzogc2hhMS1maWxlLmM6OTQzCiAjLCBjLWZvcm1hdAogbXNnaWQgImF0dGVtcHRpbmcgdG8gbW1hcCAlPFBSSXVNQVg+IG92ZXIgbGltaXQgJTxQUkl1TUFYPiIKIG1zZ3N0ciAixJFhbmcgY+G7kSDEkeG7gyBtbWFwICU8UFJJdU1BWD4gdsaw4bujdCBxdcOhIGdp4bubaSBo4bqhbiAlPFBSSXVNQVg+IgogCi0jOiBzaGExLWZpbGUuYzo4MDYKKyM6IHNoYTEtZmlsZS5jOjk2NAogbXNnaWQgIm1tYXAgZmFpbGVkIgogbXNnc3RyICJtbWFwIGfhurdwIGzhu5dpIgogCi0jOiBzaGExLWZpbGUuYzo5NzMKKyM6IHNoYTEtZmlsZS5jOjExMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IGZpbGUgJXMgaXMgZW1wdHkiCiBtc2dzdHIgInThuq1wIHRpbiDEkeG7kWkgdMaw4bujbmcgJXMgdHLhu5FuZyBy4buXbmciCiAKLSM6IHNoYTEtZmlsZS5jOjEwOTMgc2hhMS1maWxlLmM6MjIxNQorIzogc2hhMS1maWxlLmM6MTI2MyBzaGExLWZpbGUuYzoyNDQzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgbG9vc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgIsSR4buRaSB0xrDhu6NuZyBt4bqldCBo4buPbmcg4oCcJXPigJ0iCiAKLSM6IHNoYTEtZmlsZS5jOjEwOTUgc2hhMS1maWxlLmM6MjIxOQorIzogc2hhMS1maWxlLmM6MTI2NSBzaGExLWZpbGUuYzoyNDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgImdhcmJhZ2UgYXQgZW5kIG9mIGxvb3NlIG9iamVjdCAnJXMnIgogbXNnc3RyICJn4bq3cCByw6FjIHThuqFpIGN14buRaSBj4bunYSDEkeG7kWkgdMaw4bujbmcgYuG7iyBt4bqldCDigJwlc+KAnSIKIAotIzogc2hhMS1maWxlLmM6MTEzNworIzogc2hhMS1maWxlLmM6MTMwNwogbXNnaWQgImludmFsaWQgb2JqZWN0IHR5cGUiCiBtc2dzdHIgImtp4buDdSDEkeG7kWkgdMaw4bujbmcga2jDtG5nIGjhu6NwIGzhu4ciCiAKLSM6IHNoYTEtZmlsZS5jOjEyMTkKKyM6IHNoYTEtZmlsZS5jOjEzOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdp4bqjaSBuw6luIHBo4bqnbiDEkeG6p3UgZ8OzaSAlcyB24bubaSAtLWFsbG93LXVua25vd24tdHlwZSIKIAotIzogc2hhMS1maWxlLmM6MTIyMgorIzogc2hhMS1maWxlLmM6MTM5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5wYWNrICVzIGhlYWRlciIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdp4bqjaSBnw7NpIHBo4bqnbiDEkeG6p3UgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjEyMjgKKyM6IHNoYTEtZmlsZS5jOjE0MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciB3aXRoIC0tYWxsb3ctdW5rbm93bi10eXBlIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggcGjhuqduIMSR4bqndSBnw7NpICVzIHbhu5tpIC0tYWxsb3ctdW5rbm93bi10eXBlIgogCi0jOiBzaGExLWZpbGUuYzoxMjMxCisjOiBzaGExLWZpbGUuYzoxNDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAlcyBoZWFkZXIiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBwaMOibiB0w61jaCBwaOG6p24gxJHhuqd1IGPhu6dhIOKAnCVz4oCdIgogCi0jOiBzaGExLWZpbGUuYzoxNDIyCisjOiBzaGExLWZpbGUuYzoxNjI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWFkIG9iamVjdCAlcyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMSR4buNYyDEkeG7kWkgdMaw4bujbmcg4oCcJXPigJ0iCiAKLSM6IHNoYTEtZmlsZS5jOjE0MjYKKyM6IHNoYTEtZmlsZS5jOjE2MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZW1lbnQgJXMgbm90IGZvdW5kIGZvciAlcyIKIG1zZ3N0ciAiYyVzIHRoYXkgdGjhur8ga2jDtG5nIMSRxrDhu6NjIHTDrG0gdGjhuqV5IGNobyAlcyIKIAotIzogc2hhMS1maWxlLmM6MTQzMAorIzogc2hhMS1maWxlLmM6MTYzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJsb29zZSBvYmplY3QgJXMgKHN0b3JlZCBpbiAlcykgaXMgY29ycnVwdCIKIG1zZ3N0ciAixJHhu5FpIHTGsOG7o25nIG3huqV0ICVzICjEkcaw4bujYyBsxrB1IHRyb25nICVzKSBi4buLIGjhu49uZyIKIAotIzogc2hhMS1maWxlLmM6MTQzNAorIzogc2hhMS1maWxlLmM6MTY0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrZWQgb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCiBtc2dzdHIgIsSR4buRaSB0xrDhu6NuZyDEkcOjIMSRw7NuZyBnw7NpICVzICjEkcaw4bujYyBsxrB1IHRyb25nICVzKSBi4buLIGjhu49uZyIKIAotIzogc2hhMS1maWxlLmM6MTUzNgorIzogc2hhMS1maWxlLmM6MTc0NgogIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgc2hhMSBmaWxlbmFtZSAlcyIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIGdoaSB2w6BvIHTDqm4gdOG6rXAgdGluIHNoYTEgJXMiCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJXMiCittc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgdOG6rXAgdGluICVzIgogCi0jOiBzaGExLWZpbGUuYzoxNTQzCisjOiBzaGExLWZpbGUuYzoxNzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBzZXQgcGVybWlzc2lvbiB0byAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhurd0IHF1eeG7gW4gdGjDoG5oIOKAnCVz4oCdIgogCi0jOiBzaGExLWZpbGUuYzoxNTUwCisjOiBzaGExLWZpbGUuYzoxNzYwCiBtc2dpZCAiZmlsZSB3cml0ZSBlcnJvciIKIG1zZ3N0ciAibOG7l2kgZ2hpIHThuq1wIHRpbiIKIAotIzogc2hhMS1maWxlLmM6MTU2OQotbXNnaWQgImVycm9yIHdoZW4gY2xvc2luZyBzaGExIGZpbGUiCi1tc2dzdHIgImfhurdwIGzhu5dpIHRyb25nIGtoaSDEkcOzbmcgdOG6rXAgdGluIHNoYTEiCisjOiBzaGExLWZpbGUuYzoxNzgwCittc2dpZCAiZXJyb3Igd2hlbiBjbG9zaW5nIGxvb3NlIG9iamVjdCBmaWxlIgorbXNnc3RyICJn4bq3cCBs4buXaSB0cm9uZyBraGkgxJHDs25nIHThuq1wIHRpbiDEkeG7kWkgdMaw4bujbmciCiAKLSM6IHNoYTEtZmlsZS5jOjE2MzUKKyM6IHNoYTEtZmlsZS5jOjE4NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5zdWZmaWNpZW50IHBlcm1pc3Npb24gZm9yIGFkZGluZyBhbiBvYmplY3QgdG8gcmVwb3NpdG9yeSBkYXRhYmFzZSAlcyIKIG1zZ3N0ciAiIgogImtow7RuZyDEkeG7pyB0aOG6qW0gcXV54buBbiDEkeG7gyB0aMOqbSBt4buZdCDEkeG7kWkgdMaw4bujbmcgdsOgbyBjxqEgc+G7nyBk4buvIGxp4buHdSBraG8gY2jhu6lhICVzIgogCi0jOiBzaGExLWZpbGUuYzoxNjM3CisjOiBzaGExLWZpbGUuYzoxODQ3CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHThuqFvIHThuq1wIHRpbiB04bqhbSB0aOG7nWkiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NjEKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgc2hhMSBmaWxlIgotbXNnc3RyICJraMO0bmcgdGjhu4MgZ2hpIHbDoG8gdOG6rXAgdGluIHNoYTEiCisjOiBzaGExLWZpbGUuYzoxODcxCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGxvb3NlIG9iamVjdCBmaWxlIgorbXNnc3RyICJraMO0bmcgdGjhu4MgZ2hpIHThuq1wIHRpbiDEkeG7kWkgdMaw4bujbmcgxJHDoyBt4bqldCIKIAotIzogc2hhMS1maWxlLmM6MTY2NworIzogc2hhMS1maWxlLmM6MTg3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZGVmbGF0ZSBuZXcgb2JqZWN0ICVzICglZCkiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB44bqjIG7DqW4gxJHhu5FpIHTGsOG7o25nIG3hu5tpICVzICglZCkiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NzEKKyM6IHNoYTEtZmlsZS5jOjE4ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVmbGF0ZUVuZCBvbiBvYmplY3QgJXMgZmFpbGVkICglZCkiCiBtc2dzdHIgImRlZmxhdGVFbmQgdHLDqm4gxJHhu5FpIHTGsOG7o25nICVzIGfhurdwIGzhu5dpICglZCkiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NzUKKyM6IHNoYTEtZmlsZS5jOjE4ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29uZnVzZWQgYnkgdW5zdGFibGUgb2JqZWN0IHNvdXJjZSBkYXRhIGZvciAlcyIKIG1zZ3N0ciAiY2jGsGEgcsO1IHLDoG5nIGJhb3dpciBk4buvIGxp4buHdSBuZ3Xhu5NuIMSR4buRaSB0xrDhu6NuZyBraMO0bmcg4buVbiDEkeG7i25oIGNobyAlcyIKIAotIzogc2hhMS1maWxlLmM6MTY4NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjkxOAorIzogc2hhMS1maWxlLmM6MTg5NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjEwNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHV0aW1lKCkgb24gJXMiCiBtc2dzdHIgImfhurdwIGzhu5dpIHV0aW1lKCkgdHLDqm4g4oCcJXPigJ0iCiAKLSM6IHNoYTEtZmlsZS5jOjE3NjAKKyM6IHNoYTEtZmlsZS5jOjE5NzIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiY2Fubm90IHJlYWQgc2hhMV9maWxlIGZvciAlcyIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyBzaGExX2ZpbGUgY2hvICVzIgorbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCBmb3IgJXMiCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgxJHhu5FpIHTGsOG7o25nIGNobyAlcyIKIAotIzogc2hhMS1maWxlLmM6MTgwNQorIzogc2hhMS1maWxlLmM6MjAxMQogbXNnaWQgImNvcnJ1cHQgY29tbWl0IgogbXNnc3RyICJs4bqnbiBjaHV54buDbiBnaWFvIHNhaSBo4buPbmciCiAKLSM6IHNoYTEtZmlsZS5jOjE4MTMKKyM6IHNoYTEtZmlsZS5jOjIwMTkKIG1zZ2lkICJjb3JydXB0IHRhZyIKIG1zZ3N0ciAidGjhursgc2FpIGjhu49uZyIKIAotIzogc2hhMS1maWxlLmM6MTkxMgorIzogc2hhMS1maWxlLmM6MjExOQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkIGVycm9yIHdoaWxlIGluZGV4aW5nICVzIgogbXNnc3RyICJn4bq3cCBs4buXaSDEkeG7jWMga2hpIMSRw6FuaCBt4bulYyBs4bulYyAlcyIKIAotIzogc2hhMS1maWxlLmM6MTkxNQorIzogc2hhMS1maWxlLmM6MjEyMgogIywgYy1mb3JtYXQKIG1zZ2lkICJzaG9ydCByZWFkIHdoaWxlIGluZGV4aW5nICVzIgogbXNnc3RyICJraMO0bmcgxJHhu41jIG5n4bqvbiBraGkgxJHDoW5oIG3hu6VjIGzhu6VjICVzIgogCi0jOiBzaGExLWZpbGUuYzoxOTg4IHNoYTEtZmlsZS5jOjE5OTcKKyM6IHNoYTEtZmlsZS5jOjIxOTUgc2hhMS1maWxlLmM6MjIwNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZmFpbGVkIHRvIGluc2VydCBpbnRvIGRhdGFiYXNlIgogbXNnc3RyICIlczogZ+G6t3AgbOG7l2kga2hpIHRow6ptIHbDoG8gY8ahIHPhu58gZOG7ryBsaeG7h3UiCiAKLSM6IHNoYTEtZmlsZS5jOjIwMDMKKyM6IHNoYTEtZmlsZS5jOjIyMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHVuc3VwcG9ydGVkIGZpbGUgdHlwZSIKIG1zZ3N0ciAiJXM6IGtp4buDdSB04bqtcCB0aW4ga2jDtG5nIMSRxrDhu6NjIGjhu5cgdHLhu6MiCiAKLSM6IHNoYTEtZmlsZS5jOjIwMjcKKyM6IHNoYTEtZmlsZS5jOjIyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgb2JqZWN0IgogbXNnc3RyICIlcyBraMO0bmcgcGjhuqNpIGzDoCBt4buZdCDEkeG7kWkgdMaw4bujbmcgaOG7o3AgbOG7hyIKIAotIzogc2hhMS1maWxlLmM6MjAyOQorIzogc2hhMS1maWxlLmM6MjIzNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCAnJXMnIG9iamVjdCIKIG1zZ3N0ciAiJXMga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgxJHhu5FpIHTGsOG7o25nIOKAnCVz4oCdIGjhu6NwIGzhu4ciCiAKLSM6IHNoYTEtZmlsZS5jOjIwNTYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU0CisjOiBzaGExLWZpbGUuYzoyMjY0IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjIyMjYgc2hhMS1maWxlLmM6MjI3OAorIzogc2hhMS1maWxlLmM6MjQ1NCBzaGExLWZpbGUuYzoyNTA3CiAjLCBjLWZvcm1hdAotbXNnaWQgInNoYTEgbWlzbWF0Y2ggZm9yICVzIChleHBlY3RlZCAlcykiCi1tc2dzdHIgInNoYTEga2jDtG5nIGto4bubcCBjaG8gJXMgKGPhuqduICVzKSIKK21zZ2lkICJoYXNoIG1pc21hdGNoIGZvciAlcyAoZXhwZWN0ZWQgJXMpIgorbXNnc3RyICJtw6MgYsSDbSBraMO0bmcga2jhu5twIGNobyAlcyAoY+G6p24gJXMpIgogCi0jOiBzaGExLWZpbGUuYzoyMjUwCisjOiBzaGExLWZpbGUuYzoyNDc4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtbWFwICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgbW1hcCAlcyIKIAotIzogc2hhMS1maWxlLmM6MjI1NQorIzogc2hhMS1maWxlLmM6MjQ4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdW5wYWNrIGhlYWRlciBvZiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdp4bqjaSBnw7NpIHBo4bqnbiDEkeG6p3UgY+G7p2Eg4oCcJXPigJ0iCiAKLSM6IHNoYTEtZmlsZS5jOjIyNjEKKyM6IHNoYTEtZmlsZS5jOjI0ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGhlYWRlciBvZiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIHBo4bqnbiDEkeG6p3UgY+G7p2Eg4oCcJXPigJ0iCiAKLSM6IHNoYTEtZmlsZS5jOjIyNzIKKyM6IHNoYTEtZmlsZS5jOjI1MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayBjb250ZW50cyBvZiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdp4bqjaSBnw7NpIG7hu5lpIGR1bmcgY+G7p2Eg4oCcJXPigJ0iCiAKLSM6IHNoYTEtbmFtZS5jOjQ3NgorIzogc2hhMS1uYW1lLmM6NDg2CiAjLCBjLWZvcm1hdAogbXNnaWQgInNob3J0IFNIQTEgJXMgaXMgYW1iaWd1b3VzIgogbXNnc3RyICJ0w7NtIGzGsOG7o2MgU0hBMSAlcyBjaMawYSByw7UgcsOgbmciCiAKLSM6IHNoYTEtbmFtZS5jOjQ4NworIzogc2hhMS1uYW1lLmM6NDk3CiBtc2dpZCAiVGhlIGNhbmRpZGF0ZXMgYXJlOiIKIG1zZ3N0ciAiQ8OhYyDhu6luZyBj4butIGzDoDoiCiAKLSM6IHNoYTEtbmFtZS5jOjc3MAorIzogc2hhMS1uYW1lLmM6Nzk2CiBtc2dpZCAiIgogIkdpdCBub3JtYWxseSBuZXZlciBjcmVhdGVzIGEgcmVmIHRoYXQgZW5kcyB3aXRoIDQwIGhleCBjaGFyYWN0ZXJzXG4iCiAiYmVjYXVzZSBpdCB3aWxsIGJlIGlnbm9yZWQgd2hlbiB5b3UganVzdCBzcGVjaWZ5IDQwLWhleC4gVGhlc2UgcmVmc1xuIgogIm1heSBiZSBjcmVhdGVkIGJ5IG1pc3Rha2UuIEZvciBleGFtcGxlLFxuIgogIlxuIgotIiAgZ2l0IGNoZWNrb3V0IC1iICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgorIiAgZ2l0IHN3aXRjaCAtYyAkYnIgJChnaXQgcmV2LXBhcnNlIC4uLilcbiIKICJcbiIKICJ3aGVyZSBcIiRiclwiIGlzIHNvbWVob3cgZW1wdHkgYW5kIGEgNDAtaGV4IHJlZiBpcyBjcmVhdGVkLiBQbGVhc2VcbiIKICJleGFtaW5lIHRoZXNlIHJlZnMgYW5kIG1heWJlIGRlbGV0ZSB0aGVtLiBUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnlcbiIKQEAgLTU4NjAsNyArNzgwMSw3IEBACiAiYuG7n2kgdsOsIG7DsyBz4bq9IGLhu4sgYuG7jyBxdWEga2hpIGLhuqFuIGNo4buJIMSR4buLbmggNDAtaGV4LiBOaOG7r25nIHRoYW0gY2hp4bq/dSBuw6B5XG4iCiAiY8OzIGzhur0gxJHGsOG7o2MgdOG6oW8gcmEgYuG7n2kgbeG7mXQgc2FpIHPDs3QgbsOgbyDEkcOzLiBWw60gZOG7pSxcbiIKICJcbiIKLSIgIGdpdCBjaGVja291dCAtYiAkYnIgJChnaXQgcmV2LXBhcnNlIOKApilcbiIKKyIgIGdpdCBzd2l0Y2ggLWMgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCiAiXG4iCiAiduG7m2kgXCIkYnJcIiBraMO0bmcgaGnhu4N1IGzDvSBkbyB2w6wgc2FvIHRy4buRbmcgcuG7l25nIHbDoCBt4buZdCB0aGFtIGNoaeG6v3UgNDAtaGV4IMSRxrDhu6NjICIKICJ04bqhbyByYS5cbiIKQEAgLTU4NjgsNzIgKzc4MDksMjc5IEBACiAibsOgeVxuIgogImLhurFuZyBjw6FjaCBjaOG6oXkgbOG7h25oIFwiZ2l0IGNvbmZpZyBhZHZpY2Uub2JqZWN0TmFtZVdhcm5pbmcgZmFsc2VcIiIKIAotIzogc3VibW9kdWxlLmM6MTE2IHN1Ym1vZHVsZS5jOjE0NQorIzogc2hhMS1uYW1lLmM6OTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvZyBmb3IgJyUuKnMnIG9ubHkgZ29lcyBiYWNrIHRvICVzIgorbXNnc3RyICJuaOG6rXQga8O9IGNobyAnJS4qcycgY2jhu4kgxJFpIGzhuqFpIGNobyAlcyIKKworIzogc2hhMS1uYW1lLmM6OTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImxvZyBmb3IgJyUuKnMnIG9ubHkgaGFzICVkIGVudHJpZXMiCittc2dzdHIgIm5o4bqtdCBrw70gY2hvICclLipzJyBjaOG7iSBjw7MgJWQgbeG7pWMiCisKKyM6IHNoYTEtbmFtZS5jOjE2ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGV4aXN0cyBvbiBkaXNrLCBidXQgbm90IGluICclLipzJyIKK21zZ3N0ciAixJHGsOG7nW5nIGThuqtuIOKAnCVz4oCdIGPDsyDhu58gdHLDqm4gxJHEqWEsIG5oxrBuZyBraMO0bmcgdHJvbmcg4oCcJS4qc+KAnSIKKworIzogc2hhMS1uYW1lLmM6MTY5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGV4aXN0cywgYnV0IG5vdCAnJXMnXG4iCisiaGludDogRGlkIHlvdSBtZWFuICclLipzOiVzJyBha2EgJyUuKnM6Li8lcyc/IgorbXNnc3RyICIiCisixJHGsOG7nW5nIGThuqtuICclcycgdOG7k24gdOG6oWksIG5oxrBuZyBraMO0bmcgcGjhuqNpICclcydcbiIKKyJn4bujaSDDvTogQ8OzIHBo4bqjaSDDvSBi4bqhbiBsw6AgJyUuKnM6JXMnIGFrYSAnJS4qczouLyVzJz8iCisKKyM6IHNoYTEtbmFtZS5jOjE3MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGV4aXN0IGluICclLipzJyIKK21zZ3N0ciAixJHGsOG7nW5nIGThuqtuIOKAnCVz4oCdIGtow7RuZyB04buTbiB04bqhaSB0cm9uZyAnJS4qcyciCisKKyM6IHNoYTEtbmFtZS5jOjE3MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBpcyBpbiB0aGUgaW5kZXgsIGJ1dCBub3QgYXQgc3RhZ2UgJWRcbiIKKyJoaW50OiBEaWQgeW91IG1lYW4gJzolZDolcyc/IgorbXNnc3RyICIiCisixJHGsOG7nW5nIGThuqtuICclcycgbuG6sW0gdHJvbmcgY2jhu4kgbeG7pWMsIG5oxrBuZyBraMO0bmcgcGjhuqNpIOG7nyBnaWFpIMSRb+G6oW4gJWRcbiIKKyJn4bujaSDDvTogQ8OzIHBo4bqjaSDDvSBi4bqhbiBsw6AgJzolZDolcyc/IgorCisjOiBzaGExLW5hbWUuYzoxNzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXRoICclcycgaXMgaW4gdGhlIGluZGV4LCBidXQgbm90ICclcydcbiIKKyJoaW50OiBEaWQgeW91IG1lYW4gJzolZDolcycgYWthICc6JWQ6Li8lcyc/IgorbXNnc3RyICIiCisixJHGsOG7nW5nIGThuqtuICclcycgbuG6sW0gdHJvbmcgY2jhu4kgbeG7pWMsIG5oxrBuZyBraMO0bmcgcGjhuqNpICclcydcbiIKKyJn4bujaSDDvTogQ8OzIHBo4bqjaSDDvSBi4bqhbiBsw6AgJzolIGQ6JXMgJyBha2EgJzolZDouLyVzJz8iCisKKyM6IHNoYTEtbmFtZS5jOjE3NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGV4aXN0cyBvbiBkaXNrLCBidXQgbm90IGluIHRoZSBpbmRleCIKK21zZ3N0ciAixJHGsOG7nW5nIGThuqtuICclcycgdOG7k24gdOG6oWkgdHLDqm4gxJHEqWEsIG5oxrBuZyBraMO0bmcgY8OzIHRyb25nIGNo4buJIG3hu6VjIgorCisjOiBzaGExLW5hbWUuYzoxNzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCAobmVpdGhlciBvbiBkaXNrIG5vciBpbiB0aGUgaW5kZXgpIgorbXNnc3RyICLEkcaw4budbmcgZOG6q24g4oCcJXPigJ0ga2jDtG5nIHThu5NuIHThuqFpIChraMO0bmcgdHLDqm4gxJHEqWEgY8Wpbmcga2jDtG5nIHRyb25nIG3hu6VjIGzhu6VjKSIKKworIzogc2hhMS1uYW1lLmM6MTc3MQorbXNnaWQgInJlbGF0aXZlIHBhdGggc3ludGF4IGNhbid0IGJlIHVzZWQgb3V0c2lkZSB3b3JraW5nIHRyZWUiCittc2dzdHIgImPDuiBwaMOhcCDEkcaw4budbmcgZOG6q24gdMawxqFuZyDEkeG7kWkga2jDtG5nIHRo4buDIHRo4buDIGTDuW5nIG5nb8OgaSBjw6J5IGzDoG0gdmnhu4djIgorCisjOiBzaGExLW5hbWUuYzoxOTA5CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgb2JqZWN0IG5hbWUgJyUuKnMnLiIKK21zZ3N0ciAiJyUuKnMnIGtow7RuZyBwaOG6o2kgbMOgIHTDqm4gxJHhu5FpIHTGsOG7o25nIGjhu6NwIGzhu4ciCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBnaWJpYnl0ZQorIzogc3RyYnVmLmM6ODM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEdpQiIKK21zZ3N0ciAiJXUuJTIuMnUgR2lCIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggZ2liaWJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgR2lCL3MiCittc2dzdHIgIiV1LiUyLjJ1IEdpQi9nacOieSIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IG1lYmlieXRlCisjOiBzdHJidWYuYzo4NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgTWlCIgorbXNnc3RyICIldS4lMi4ydSBNaUIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBtZWJpYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjg0OQorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBNaUIvcyIKK21zZ3N0ciAiJXUuJTIuMnUgTWlCL2dpw6J5IgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDgga2liaWJ5dGUKKyM6IHN0cmJ1Zi5jOjg1NgorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBLaUIiCittc2dzdHIgIiV1LiUyLjJ1IEtpQiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGtpYmlieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEtpQi9zIgorbXNnc3RyICIldS4lMi4ydSBLaUIvZ2nDonkiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBieXRlCisjOiBzdHJidWYuYzo4NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUgYnl0ZSIKK21zZ2lkX3BsdXJhbCAiJXUgYnl0ZXMiCittc2dzdHJbMF0gIiV1IGJ5dGUiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1IGJ5dGUvcyIKK21zZ2lkX3BsdXJhbCAiJXUgYnl0ZXMvcyIKK21zZ3N0clswXSAiJXUgYnl0ZS9nacOieSIKKworIzogc3RyYnVmLmM6MTE2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZWRpdCAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4Mgc+G7rWEg4oCcJXPigJ0iCisKKyM6IHN1Ym1vZHVsZS5jOjExNCBzdWJtb2R1bGUuYzoxNDMKIG1zZ2lkICJDYW5ub3QgY2hhbmdlIHVubWVyZ2VkIC5naXRtb2R1bGVzLCByZXNvbHZlIG1lcmdlIGNvbmZsaWN0cyBmaXJzdCIKIG1zZ3N0ciAiIgogIktow7RuZyB0aOG7gyB0aGF5IMSR4buVaSAuZ2l0bW9kdWxlcyBjaMawYSBow7JhIHRy4buZbiwgaMOjeSBnaeG6o2kgcXV54bq/dCB4dW5nIMSR4buZdCB0cuG7mW4gIgogInRyxrDhu5tjIgogCi0jOiBzdWJtb2R1bGUuYzoxMjAgc3VibW9kdWxlLmM6MTQ5CisjOiBzdWJtb2R1bGUuYzoxMTggc3VibW9kdWxlLmM6MTQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBmaW5kIHNlY3Rpb24gaW4gLmdpdG1vZHVsZXMgd2hlcmUgcGF0aD0lcyIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIHTDrG0gdGjhuqV5IHBo4bqnbiB0cm9uZyAuZ2l0bW9kdWxlcyBuxqFpIG3DoCDEkcaw4budbmdfZOG6q249JXMiCiAKLSM6IHN1Ym1vZHVsZS5jOjE1NgorIzogc3VibW9kdWxlLmM6MTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgLmdpdG1vZHVsZXMgZW50cnkgZm9yICVzIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgZ+G7oSBi4buPIG3hu6VjIC5naXRtb2R1bGVzIGTDoG5oIGNobyAlcyIKIAotIzogc3VibW9kdWxlLmM6MTY3CisjOiBzdWJtb2R1bGUuYzoxNjUKIG1zZ2lkICJzdGFnaW5nIHVwZGF0ZWQgLmdpdG1vZHVsZXMgZmFpbGVkIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgdOG7lSBjaOG7qWMgLmdpdG1vZHVsZXMgxJHDoyBj4bqtcCBuaOG6rXQiCiAKLSM6IHN1Ym1vZHVsZS5jOjMyOQorIzogc3VibW9kdWxlLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgImluIHVucG9wdWxhdGVkIHN1Ym1vZHVsZSAnJXMnIgotbXNnc3RyICJUcm9uZyBtw7QtxJF1bi1jb24ga2jDtG5nIGPDsyBnw6wg4oCcJXPigJ0iCittc2dzdHIgInRyb25nIG3DtC3EkXVuLWNvbiBraMO0bmcgY8OzIGfDrCDigJwlc+KAnSIKIAotIzogc3VibW9kdWxlLmM6MzYwCisjOiBzdWJtb2R1bGUuYzozNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUGF0aHNwZWMgJyVzJyBpcyBpbiBzdWJtb2R1bGUgJyUuKnMnIgogbXNnc3RyICLEkOG6t2MgdOG6oyDEkcaw4budbmcgZOG6q24g4oCcJXPigJ0gdGjDrCDhu58gdHJvbmcgbcO0LcSRdW4tY29uIOKAnCUuKnPigJ0iCiAKLSM6IHN1Ym1vZHVsZS5jOjg1NworIzogc3VibW9kdWxlLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLWlnbm9yZS1zdWJtb2R1bGVzIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAixJHhu5FpIHPhu5EgLS1pZ25vcmUtc3VibW9kdWxlcyBzYWk6ICVzIgorCisjOiBzdWJtb2R1bGUuYzo4MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlN1Ym1vZHVsZSBpbiBjb21taXQgJXMgYXQgcGF0aDogJyVzJyBjb2xsaWRlcyB3aXRoIGEgc3VibW9kdWxlIG5hbWVkIHRoZSAiCisic2FtZS4gU2tpcHBpbmcgaXQuIgorbXNnc3RyICIiCisiTcO0LcSRdW4tY29uIHRyb25nIGzhuqduIGNodXnhu4NuIGdpYW8gJXMgdOG6oWkgxJHGsOG7nW5nIGThuqtuOiAnJXMnIHZhIGNo4bqhbSB24bubaSBtw7QtxJF1bi0iCisiY29uIGPDuW5nIHTDqm4uIE7Dqm4gYuG7jyBxdWEgbsOzLiIKKworIzogc3VibW9kdWxlLmM6OTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgInN1Ym1vZHVsZSBlbnRyeSAnJXMnICglcykgaXMgYSAlcywgbm90IGEgY29tbWl0IgogbXNnc3RyICIiCiAibeG7pWMgdGluIG3DtC3EkXVuLWNvbiDigJwlc+KAnSAoJXMpIGzDoCBt4buZdCAlcywga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgbOG6p24gY2h1eeG7g24gZ2lhbyIKIAotIzogc3VibW9kdWxlLmM6MTA5NyBidWlsdGluL2JyYW5jaC5jOjY1NiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk4NQorIzogc3VibW9kdWxlLmM6OTk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3VsZCBub3QgcnVuICdnaXQgcmV2LWxpc3QgPGNvbW1pdHM+IC0tbm90IC0tcmVtb3RlcyAtbiAxJyBjb21tYW5kIGluICIKKyJzdWJtb2R1bGUgJXMiCittc2dzdHIgIiIKKyJLaMO0bmcgdGjhu4MgY2jhuqF5IGzhu4duaCDigJxnaXQgcmV2LWxpc3QgPGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbz4gLS1ub3QgLS1yZW1vdGVzIC1uICIKKyIx4oCdIHRyb25nIG3DtC3EkXVuLWNvbiDigJwlc+KAnSIKKworIzogc3VibW9kdWxlLmM6MTExOAorIywgYy1mb3JtYXQKK21zZ2lkICJwcm9jZXNzIGZvciBzdWJtb2R1bGUgJyVzJyBmYWlsZWQiCittc2dzdHIgInjhu60gbMO9IGNobyBtw7QtxJF1bi1jb24g4oCcJXPigJ0gZ+G6t3AgbOG7l2kiCisKKyM6IHN1Ym1vZHVsZS5jOjExNDcgYnVpbHRpbi9icmFuY2guYzo2ODAgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwNDUKIG1zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSBIRUFEIGFzIGEgdmFsaWQgcmVmLiIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIHBow6JuIGdp4bqjaSBIRUFEIG5oxrAgbMOgIG3hu5l0IHRoYW0gY2hp4bq/dSBo4bujcCBs4buHLiIKIAotIzogc3VibW9kdWxlLmM6MTQwNAorIzogc3VibW9kdWxlLmM6MTE1OAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXNoaW5nIHN1Ym1vZHVsZSAnJXMnXG4iCittc2dzdHIgIsSQ4bqpeSBsw6puIG3DtC3EkXVuLWNvbiDigJwlc+KAnVxuIgorCisjOiBzdWJtb2R1bGUuYzoxMTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBwdXNoIHN1Ym1vZHVsZSAnJXMnXG4iCittc2dzdHIgIktow7RuZyB0aOG7gyDEkeG6qXkgbMOqbiBtw7QtxJF1bi1jb24g4oCcJXPigJ1cbiIKKworIzogc3VibW9kdWxlLmM6MTQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJGZXRjaGluZyBzdWJtb2R1bGUgJXMlc1xuIgorbXNnc3RyICLEkGFuZyBs4bqleSB24buBIG3DtC3EkXVuLWNvbiAlcyVzXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjE0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGFjY2VzcyBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICJLaMO0bmcgdGjhu4MgdHJ1eSBj4bqtcCBtw7QtxJF1bi1jb24g4oCcJXPigJ1cbiIKKworIzogc3VibW9kdWxlLmM6MTYzNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXJyb3JzIGR1cmluZyBzdWJtb2R1bGUgZmV0Y2g6XG4iCisiJXMiCittc2dzdHIgIiIKKyJDw7MgbOG7l2kga2hpIGzhuqV5IHbhu4EgbcO0LcSRdW4tY29uOlxuIgorIiDigJwlc+KAnSIKKworIzogc3VibW9kdWxlLmM6MTY2MgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIG5vdCByZWNvZ25pemVkIGFzIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgImtow7RuZyBuaOG6rW4gcmEg4oCcJXPigJ0gbMOgIG3hu5l0IGtobyBnaXQiCiAKLSM6IHN1Ym1vZHVsZS5jOjE1NDIKKyM6IHN1Ym1vZHVsZS5jOjE2NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHJ1biAnZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbj0yJyBpbiBzdWJtb2R1bGUgJXMiCittc2dzdHIgIktow7RuZyB0aOG7gyBjaOG6oXkg4oCcZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbj0y4oCdIHRyb25nIG3DtC3EkXVuLWNvbiDigJwlc+KAnSIKKworIzogc3VibW9kdWxlLmM6MTcyMAorIywgYy1mb3JtYXQKK21zZ2lkICInZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbj0yJyBmYWlsZWQgaW4gc3VibW9kdWxlICVzIgorbXNnc3RyICLigJxnaXQgc3RhdHVzIC0tcG9yY2VsYWluPTLigJ0gZ+G6t3AgbOG7l2kgdHJvbmcgbcO0LcSRdW4tY29uIOKAnCVz4oCdIgorCisjOiBzdWJtb2R1bGUuYzoxODAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGFydCAnZ2l0IHN0YXR1cycgaW4gc3VibW9kdWxlICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSB0aOG7kW5nIGvDqiDigJxnaXQgc3RhdHVz4oCdIHRyb25nIG3DtC3EkXVuLWNvbiDigJwlc+KAnSIKIAotIzogc3VibW9kdWxlLmM6MTU1NQorIzogc3VibW9kdWxlLmM6MTgxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcnVuICdnaXQgc3RhdHVzJyBpbiBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGNo4bqheSDigJxnaXQgc3RhdHVz4oCdIHRyb25nIG3DtC3EkXVuLWNvbiDigJwlc+KAnSIKIAotIzogc3VibW9kdWxlLmM6MTY0OAorIzogc3VibW9kdWxlLmM6MTgyOAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgdW5zZXQgY29yZS53b3JrdHJlZSBzZXR0aW5nIGluIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICJLaMO0bmcgdGjhu4MgxJHhurd0IGNvcmUud29ya3RyZWUgdHJvbmcgbcO0LcSRdW4tY29uIOKAnCVz4oCdIgorCisjOiBzdWJtb2R1bGUuYzoxODU1IHN1Ym1vZHVsZS5jOjIxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buHIHF1eSB2w6BvIHRyb25nIG3DtC3EkXVuLWNvbiDigJwlc+KAnSIKKworIzogc3VibW9kdWxlLmM6MTg3NgorbXNnaWQgImNvdWxkIG5vdCByZXNldCBzdWJtb2R1bGUgaW5kZXgiCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG6t3QgbOG6oWkgbeG7pWMgbOG7pWMgY+G7p2EgbcO0LcSRdW4tY29uIgorCisjOiBzdWJtb2R1bGUuYzoxOTE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInN1Ym1vZHVsZSAnJXMnIGhhcyBkaXJ0eSBpbmRleCIKIG1zZ3N0ciAibcO0LcSRdW4tY29uIOKAnCVz4oCdIGPDsyBt4bulYyBs4bulYyBjw7JuIGLhuqluIgogCi0jOiBzdWJtb2R1bGUuYzoxNzAwCisjOiBzdWJtb2R1bGUuYzoxOTcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSAnJXMnIGNvdWxkIG5vdCBiZSB1cGRhdGVkLiIKIG1zZ3N0ciAiTcO0LcSRdW4tY29uIOKAnCVz4oCdIGtow7RuZyB0aOG7gyDEkcaw4bujYyBj4bqtcCBuaOG6rXQuIgogCi0jOiBzdWJtb2R1bGUuYzoxNzQ3CisjOiBzdWJtb2R1bGUuYzoyMDM4CisjLCBjLWZvcm1hdAorbXNnaWQgInN1Ym1vZHVsZSBnaXQgZGlyICclcycgaXMgaW5zaWRlIGdpdCBkaXIgJyUuKnMnIgorbXNnc3RyICJ0aMawIG3hu6VjIGdpdCBtw7QgxJF1biBjb24gJyVzJyBsw6AgYsOqbiB0cm9uZyBnaXQgRElSICclLipzJyIKKworIzogc3VibW9kdWxlLmM6MjA1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicmVsb2NhdGVfZ2l0ZGlyIGZvciBzdWJtb2R1bGUgJyVzJyB3aXRoIG1vcmUgdGhhbiBvbmUgd29ya3RyZWUgbm90IHN1cHBvcnRlZCIKQEAgLTU5NDEsMTIgKzgwODksMTcgQEAKICJyZWxvY2F0ZV9naXRkaXIgY2hvIG3DtC3EkXVuLWNvbiDigJwlc+KAnSB24bubaSBuaGnhu4F1IGjGoW4gbeG7mXQgY8OieSBsw6BtIHZp4buHYyBsw6AgY2jGsGEgIgogIsSRxrDhu6NjIGjhu5cgdHLhu6MiCiAKLSM6IHN1Ym1vZHVsZS5jOjE3NTkgc3VibW9kdWxlLmM6MTgxNQorIzogc3VibW9kdWxlLmM6MjA3MSBzdWJtb2R1bGUuYzoyMTMwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb29rdXAgbmFtZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyB0w6xtIGtp4bq/bSB0w6puIGNobyBtw7QtxJF1bi1jb24g4oCcJXPigJ0iCiAKLSM6IHN1Ym1vZHVsZS5jOjE3NjYKKyM6IHN1Ym1vZHVsZS5jOjIwNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmdXNpbmcgdG8gbW92ZSAnJXMnIGludG8gYW4gZXhpc3RpbmcgZ2l0IGRpciIKK21zZ3N0ciAidOG7qyBjaOG7kWkgZGkgY2h1eeG7g24gJyAlcyAnIHbDoG8gdHJvbmcgbeG7mXQgdGjGsCBt4bulYyBnaXQgc+G6tW4gY8OzIgorCisjOiBzdWJtb2R1bGUuYzoyMDgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJNaWdyYXRpbmcgZ2l0IGRpcmVjdG9yeSBvZiAnJXMlcycgZnJvbVxuIgpAQCAtNTk1Nyw0MiArODExMCwzNyBAQAogIuKAnCVz4oCdIHNhbmdcbiIKICLigJwlc+KAnVxuIgogCi0jOiBzdWJtb2R1bGUuYzoxODUwCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCByZWN1cnNlIGludG8gc3VibW9kdWxlICclcyciCi1tc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7hyBxdXkgdsOgbyB0cm9uZyBtw7QtxJF1bi1jb24g4oCcJXPigJ0iCi0KLSM6IHN1Ym1vZHVsZS5jOjE4OTQKKyM6IHN1Ym1vZHVsZS5jOjIyMDkKIG1zZ2lkICJjb3VsZCBub3Qgc3RhcnQgbHMtZmlsZXMgaW4gLi4iCiBtc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSB0aMO0bmcgdGluIHRo4buRbmcga8OqIHbhu4EgbHMtZmlsZXMgdHJvbmcgLi4iCiAKLSM6IHN1Ym1vZHVsZS5jOjE5MzMKKyM6IHN1Ym1vZHVsZS5jOjIyNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAibHMtdHJlZSByZXR1cm5lZCB1bmV4cGVjdGVkIHJldHVybiBjb2RlICVkIgogbXNnc3RyICJscy10cmVlIHRy4bqjIHbhu4EgbcOjIGtow7RuZyBuaMawIG1vbmcgxJHhu6NpICVkIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6MjMyCisjOiBzdWJtb2R1bGUtY29uZmlnLmM6MjM2CiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIHN1c3BpY2lvdXMgc3VibW9kdWxlIG5hbWU6ICVzIgogbXNnc3RyICLEkWFuZyBs4budIMSRaSB0w6puIG3DtC3EkXVuLWNvbiBt4bqtcCBt4budOiAlcyIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjI5NgorIzogc3VibW9kdWxlLWNvbmZpZy5jOjMwMwogbXNnaWQgIm5lZ2F0aXZlIHZhbHVlcyBub3QgYWxsb3dlZCBmb3Igc3VibW9kdWxlLmZldGNoam9icyIKIG1zZ3N0ciAia2jDtG5nIGNobyBwaMOpcCBnacOhIHRy4buLIMOibSDhu58gc3VibW9kdWxlLmZldGNoSm9icyIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjM5MAorIzogc3VibW9kdWxlLWNvbmZpZy5jOjQwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyAnJXMnIHdoaWNoIG1heSBiZSBpbnRlcnByZXRlZCBhcyBhIGNvbW1hbmQtbGluZSBvcHRpb246ICVzIgogbXNnc3RyICIiCiAixJFhbmcgYuG7jyBxdWEg4oCcJXPigJ0gY8OhaSBtw6AgY8OzIHRo4buDIMSRxrDhu6NjIHBoacOqbiBk4buLY2ggbmjGsCBsw6AgbeG7mXQgdMO5eSBjaOG7jW4gZMOybmcgIgogImzhu4duaDogJXMiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzo0NzkKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo0OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgJXMiCiBtc2dzdHIgImdpw6EgdHLhu4sgY2hvICVzIGtow7RuZyBo4bujcCBs4buHIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6NzU0CisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCB1cGRhdGUgLmdpdG1vZHVsZXMgZW50cnkgJXMiCiBtc2dzdHIgIktow7RuZyB0aOG7gyBj4bqtcCBuaOG6rXQgbeG7pWMgLmdpdG1vZHVsZXMgJXMiCkBAIC02MDA4LDcgKzgxNTYsNyBAQAogbXNnaWQgInVua25vd24gdmFsdWUgJyVzJyBmb3Iga2V5ICclcyciCiBtc2dzdHIgImtow7RuZyBoaeG7g3UgZ2nDoSB0cuG7iyDigJwlc+KAnSBjaG8ga2jDs2Eg4oCcJXPigJ0iCiAKLSM6IHRyYWlsZXIuYzo1MzkgdHJhaWxlci5jOjU0NCBidWlsdGluL3JlbW90ZS5jOjI5NQorIzogdHJhaWxlci5jOjUzOSB0cmFpbGVyLmM6NTQ0IGJ1aWx0aW4vcmVtb3RlLmM6Mjk4IGJ1aWx0aW4vcmVtb3RlLmM6MzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1vcmUgdGhhbiBvbmUgJXMiCiBtc2dzdHIgIm5oaeG7gXUgaMahbiBt4buZdCAlcyIKQEAgLTYwMjcsNyArODE3NSw3IEBACiBtc2dpZCAiY291bGQgbm90IHJlYWQgZnJvbSBzdGRpbiIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyB04burIMSR4bqndSB2w6BvIHRpw6p1IGNodeG6qW4iCiAKLSM6IHRyYWlsZXIuYzoxMDExIGJ1aWx0aW4vYW0uYzo0NworIzogdHJhaWxlci5jOjEwMTEgd3JhcHBlci5jOjY2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgc3RhdCAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHRow7RuZyB0aW4gdGjhu5FuZyBrw6ogduG7gSAlcyIKQEAgLTYwNTYsMzkgKzgyMDQsNDcgQEAKIG1zZ2lkICJXb3VsZCBzZXQgdXBzdHJlYW0gb2YgJyVzJyB0byAnJXMnIG9mICclcydcbiIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIMSR4bq3dCB0aMaw4bujbmcgbmd14buTbiBj4bunYSDigJwlc+KAnSB0aMOgbmgg4oCcJXPigJ0gY+G7p2Eg4oCcJXPigJ1cbiIKIAotIzogdHJhbnNwb3J0LmM6MTQyCisjOiB0cmFuc3BvcnQuYzoxNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgYnVuZGxlICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgYsOzIOKAnCVz4oCdIgogCi0jOiB0cmFuc3BvcnQuYzoyMDgKKyM6IHRyYW5zcG9ydC5jOjIxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmFuc3BvcnQ6IGludmFsaWQgZGVwdGggb3B0aW9uICclcyciCiBtc2dzdHIgInbhuq1uIGNodXnhu4NuOiB0w7l5IGNo4buNbiDEkeG7mSBzw6J1IOKAnCVz4oCdIGtow7RuZyBo4bujcCBs4buHIgogCi0jOiB0cmFuc3BvcnQuYzo2MTYKKyM6IHRyYW5zcG9ydC5jOjI2NgorbXNnaWQgInNlZSBwcm90b2NvbC52ZXJzaW9uIGluICdnaXQgaGVscCBjb25maWcnIGZvciBtb3JlIGRldGFpbHMiCittc2dzdHIgInhlbSBwcm90b2NvbC52ZXJzaW9uIHRyb25nIOKAnGdpdCBoZWxwIGNvbmZpZ+KAnSDEkeG7gyBjw7MgdGjDqm0gdGjDtG5nIHRpbiIKKworIzogdHJhbnNwb3J0LmM6MjY3Cittc2dpZCAic2VydmVyIG9wdGlvbnMgcmVxdWlyZSBwcm90b2NvbCB2ZXJzaW9uIDIgb3IgbGF0ZXIiCittc2dzdHIgImPDoWMgdMO5eSBjaOG7jW4gbcOheSBjaOG7pyB5w6p1IGPhuqd1IGdpYW8gdGjhu6ljIHBoacOqbiBi4bqjbiAyIGhv4bq3YyBt4bubaSBoxqFuIgorCisjOiB0cmFuc3BvcnQuYzo2MzIKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgdHJhbnNwb3J0LmNvbG9yLiogY29uZmlnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggY8O6IHBow6FwIGPhuqV1IGjDrG5oIHRyYW5zcG9ydC5jb2xvci4qIgogCi0jOiB0cmFuc3BvcnQuYzo2ODkKKyM6IHRyYW5zcG9ydC5jOjcwNQogbXNnaWQgInN1cHBvcnQgZm9yIHByb3RvY29sIHYyIG5vdCBpbXBsZW1lbnRlZCB5ZXQiCiBtc2dzdHIgInZp4buHYyBo4buXIHRy4bujIGdpYW8gdGjhu6ljIHYyIGNoxrBhIMSRxrDhu6NjIHRo4buxYyBoaeG7h24iCiAKLSM6IHRyYW5zcG9ydC5jOjgxNgorIzogdHJhbnNwb3J0LmM6ODMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gdmFsdWUgZm9yIGNvbmZpZyAnJXMnOiAlcyIKIG1zZ3N0ciAia2jDtG5nIGhp4buDdSBnacOhIHRy4buLIGNobyBjaG8gY+G6pXUgaMOsbmgg4oCcJXPigJ06ICVzIgogCi0jOiB0cmFuc3BvcnQuYzo4ODIKKyM6IHRyYW5zcG9ydC5jOjg5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmFuc3BvcnQgJyVzJyBub3QgYWxsb3dlZCIKIG1zZ3N0ciAia2jDtG5nIGNobyBwaMOpcCBwaMawxqFuZyB0aOG7qWMgduG6rW4gY2h1eeG7g24g4oCcJXPigJ0iCiAKLSM6IHRyYW5zcG9ydC5jOjkzNgorIzogdHJhbnNwb3J0LmM6OTQ5CiBtc2dpZCAiZ2l0LW92ZXItcnN5bmMgaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZCIKIG1zZ3N0ciAiZ2l0LW92ZXItcnN5bmMga2jDtG5nIGPDsm4gxJHGsOG7o2MgaOG7lyB0cuG7oyBu4buvYSIKIAotIzogdHJhbnNwb3J0LmM6MTAzMQorIzogdHJhbnNwb3J0LmM6MTA0NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyBzdWJtb2R1bGUgcGF0aHMgY29udGFpbiBjaGFuZ2VzIHRoYXQgY2FuXG4iCkBAIC02MDk3LDcgKzgyNTMsNyBAQAogIkPDoWMgxJHGsOG7nW5nIGThuqtuIG3DtC3EkXVuLWNvbiBzYXUgxJHDonkgY8OzIGNo4bupYSBjw6FjIHRoYXkgxJHhu5VpIGPDoWkgbcOgXG4iCiAiY8OzIHRo4buDIMSRxrDhu6NjIHTDrG0gdGjhuqV5IHRyw6puIG3hu41pIG3DoXkgcGjhu6VjIHbhu6U6XG4iCiAKLSM6IHRyYW5zcG9ydC5jOjEwMzUKKyM6IHRyYW5zcG9ydC5jOjEwNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtNjEyNCwzNyArODI4MCwzMiBAQAogIsSR4buDIMSR4bqpeSBjaMO6bmcgbMOqbiBtw6F5IHBo4bulYyB24bulLlxuIgogIlxuIgogCi0jOiB0cmFuc3BvcnQuYzoxMDQzCisjOiB0cmFuc3BvcnQuYzoxMDU2CiBtc2dpZCAiQWJvcnRpbmcuIgogbXNnc3RyICJCw6NpIGLhu48uIgogCi0jOiB0cmFuc3BvcnQuYzoxMTgyCisjOiB0cmFuc3BvcnQuYzoxMjAxCiBtc2dpZCAiZmFpbGVkIHRvIHB1c2ggYWxsIG5lZWRlZCBzdWJtb2R1bGVzIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhuql5IGThu68gbGnhu4d1IGPhu6dhIHThuqV0IGPhuqMgY8OhYyBtw7QtxJF1bi1jb24gY+G6p24gdGhp4bq/dCIKIAotIzogdHJhbnNwb3J0LmM6MTMxNSB0cmFuc3BvcnQtaGVscGVyLmM6NjQzCisjOiB0cmFuc3BvcnQuYzoxMzQ1IHRyYW5zcG9ydC1oZWxwZXIuYzo2NTcKIG1zZ2lkICJvcGVyYXRpb24gbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbCIKIG1zZ3N0ciAidGhhbyB0w6FjIGtow7RuZyDEkcaw4bujYyBnaWEgdGjhu6ljIGjhu5cgdHLhu6MiCiAKLSM6IHRyYW5zcG9ydC5jOjE0MTkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBsaW5lIHdoaWxlIHBhcnNpbmcgYWx0ZXJuYXRlIHJlZnM6ICVzIgotbXNnc3RyICJkw7JuZyBraMO0bmcgaOG7o3AgbOG7hyB0cm9uZyBraGkgcGjDom4gdMOtY2ggY8OhYyB0aGFtIGNoaeG6v3UgdGhheSB0aOG6vzogJXMiCi0KLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MSB0cmFuc3BvcnQtaGVscGVyLmM6ODAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MSB0cmFuc3BvcnQtaGVscGVyLmM6OTAKIG1zZ2lkICJmdWxsIHdyaXRlIHRvIHJlbW90ZSBoZWxwZXIgZmFpbGVkIgogbXNnc3RyICJnaGkgxJHhuqd5IMSR4bunIGzDqm4gYuG7mSBo4buXIHRy4bujIG3DoXkgY2jhu6cgZ+G6t3AgbOG7l2kiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZpbmQgcmVtb3RlIGhlbHBlciBmb3IgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHTDrG0gdGjhuqV5IGLhu5kgaOG7lyB0cuG7oyBtw6F5IGNo4bunIGNobyDigJwlc+KAnSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0OCB0cmFuc3BvcnQtaGVscGVyLmM6NTU3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTYwIHRyYW5zcG9ydC1oZWxwZXIuYzo1NzEKIG1zZ2lkICJjYW4ndCBkdXAgaGVscGVyIG91dHB1dCBmZCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIG5ow6JuIMSRw7RpIGZkIGThuqd1IHJhIGLhu5kgaOG7lyB0cuG7oyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjE5OQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5rbm93biBtYW5kYXRvcnkgY2FwYWJpbGl0eSAlczsgdGhpcyByZW1vdGUgaGVscGVyIHByb2JhYmx5IG5lZWRzIG5ld2VyICIKQEAgLTYxNjMsOTkgKzgzMTQsMTA0IEBACiAia2jDtG5nIGhp4buDdSBjYXBhYmlsaXR5IGLhuq90IGJ14buZYyAlczsgYuG7mSBo4buXIHRy4bujIG3DoXkgY2jhu6cgbsOgeSBn4bqnbiBuaMawIGNo4bqvYyBjaOG6r24gIgogImzDoCBj4bqnbiBwaGnDqm4gYuG6o24gR2l0IG3hu5tpIGjGoW4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyMDUKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyMTcKIG1zZ2lkICJ0aGlzIHJlbW90ZSBoZWxwZXIgc2hvdWxkIGltcGxlbWVudCByZWZzcGVjIGNhcGFiaWxpdHkiCiBtc2dzdHIgImLhu5kgaOG7lyB0cuG7oyBtw6F5IGNo4bunIG7DoHkgY+G6p24gcGjhuqNpIHRo4buxYyB0aGkgY2FwYWJpbGl0eSDEkeG6t2MgdOG6oyB0aGFtIGNoaeG6v3UiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyNzIgdHJhbnNwb3J0LWhlbHBlci5jOjQxMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjI4NCB0cmFuc3BvcnQtaGVscGVyLmM6NDI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHVuZXhwZWN0ZWRseSBzYWlkOiAnJXMnIgogbXNnc3RyICIlcyBzYWlkIGLhuqV0IG5n4budOiDigJwlc+KAnSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjQwMQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBhbHNvIGxvY2tlZCAlcyIKIG1zZ3N0ciAiJXMgY8Wpbmcga2jDs2EgJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0NzkKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo0OTMKIG1zZ2lkICJjb3VsZG4ndCBydW4gZmFzdC1pbXBvcnQiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBjaOG6oXkgZmFzdC1pbXBvcnQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MDIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MTYKIG1zZ2lkICJlcnJvciB3aGlsZSBydW5uaW5nIGZhc3QtaW1wb3J0IgogbXNnc3RyICJn4bq3cCBs4buXaSB0cm9uZyBraGkgY2jhuqF5IGZhc3QtaW1wb3J0IgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTMxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMDkxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTQ1IHRyYW5zcG9ydC1oZWxwZXIuYzoxMTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyB0aGFtIGNoaeG6v3UgJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1NzYKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biByZXNwb25zZSB0byBjb25uZWN0OiAlcyIKIG1zZ3N0ciAia2jDtG5nIGhp4buDdSDEkcOhcCDhu6luZyDEkeG7gyBr4bq/dCBu4buRaTogJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1OTgKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MTIKIG1zZ2lkICJzZXR0aW5nIHJlbW90ZSBzZXJ2aWNlIHBhdGggbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbCIKIG1zZ3N0ciAiZ2lhbyB0aOG7qWMgbsOgeSBraMO0bmcgaOG7lyB0cuG7oyBjw6BpIMSR4bq3dCDEkcaw4budbmcgZOG6q24gZOG7i2NoIHbhu6UgbcOheSBjaOG7pyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjYwMAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjYxNAogbXNnaWQgImludmFsaWQgcmVtb3RlIHNlcnZpY2UgcGF0aCIKIG1zZ3N0ciAixJHGsOG7nW5nIGThuqtuIGThu4tjaCB24bulIG3DoXkgY2jhu6cga2jDtG5nIGjhu6NwIGzhu4ciCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2NDYKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3QgY29ubmVjdCB0byBzdWJzZXJ2aWNlICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4Mga+G6v3QgbuG7kWkgxJHhur9uIGThu4tjaCB24bulIHBo4bulICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NzEzCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NzM2CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIG9rL2Vycm9yLCBoZWxwZXIgc2FpZCAnJXMnIgogbXNnc3RyICJj4bqnbiBvay9lcnJvciwgbmjGsG5nIGLhu5kgaOG7lyB0cuG7oyBs4bqhaSBuw7NpIOKAnCVz4oCdIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NzY2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6Nzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciByZXBvcnRlZCB1bmV4cGVjdGVkIHN0YXR1cyBvZiAlcyIKIG1zZ3N0ciAiYuG7mSBo4buXIHRy4bujIGLDoW8gY8OhbyBy4bqxbmcga2jDtG5nIGPhuqduIHTDrG5oIHRy4bqhbmcgY+G7p2EgJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4MjcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgZHJ5LXJ1biIKIG1zZ3N0ciAiaGVscGVyICVzIGtow7RuZyBo4buXIHRy4bujIGRyeS1ydW4iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4MzAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgLS1zaWduZWQiCiBtc2dzdHIgImhlbHBlciAlcyBraMO0bmcgaOG7lyB0cuG7oyAtLXNpZ25lZCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjgzMworIzogdHJhbnNwb3J0LWhlbHBlci5jOjg1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgJXMgZG9lcyBub3Qgc3VwcG9ydCAtLXNpZ25lZD1pZi1hc2tlZCIKIG1zZ3N0ciAiaGVscGVyICVzIGtow7RuZyBo4buXIHRy4bujIC0tc2lnbmVkPWlmLWFza2VkIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODQwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODYxCisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tYXRvbWljIgorbXNnc3RyICJoZWxwZXIgJXMga2jDtG5nIGjhu5cgdHLhu6MgLS1hdG9taWMiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgJ3B1c2gtb3B0aW9uJyIKIG1zZ3N0ciAiaGVscGVyICVzIGtow7RuZyBo4buXIHRy4bujIOKAnHB1c2gtb3B0aW9u4oCdIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTMyCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6OTY1CiBtc2dpZCAicmVtb3RlLWhlbHBlciBkb2Vzbid0IHN1cHBvcnQgcHVzaDsgcmVmc3BlYyBuZWVkZWQiCiBtc2dzdHIgInJlbW90ZS1oZWxwZXIga2jDtG5nIGjhu5cgdHLhu6MgcHVzaDsgY+G6p24gxJHhurdjIHThuqMgdGhhbSBjaGnhur91IgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTM3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6OTcwCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0ICdmb3JjZSciCiBtc2dzdHIgImhlbHBlciAlcyBraMO0bmcgaOG7lyB0cuG7oyDigJxmb3JjZeKAnSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjk4NAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMTcKIG1zZ2lkICJjb3VsZG4ndCBydW4gZmFzdC1leHBvcnQiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBjaOG6oXkgZmFzdC1leHBvcnQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5ODkKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDIyCiBtc2dpZCAiZXJyb3Igd2hpbGUgcnVubmluZyBmYXN0LWV4cG9ydCIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kgdHJvbmcga2hpIGNo4bqheSBmYXN0LWV4cG9ydCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwMTQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyByZWZzIGluIGNvbW1vbiBhbmQgbm9uZSBzcGVjaWZpZWQ7IGRvaW5nIG5vdGhpbmcuXG4iCkBAIC02MjY1LDY3ICs4NDIxLDY3IEBACiAiY+G6oy5cbiIKICJUdXkgbmhpw6puIGLhuqFuIG7Dqm4gY2jhu4kgxJHhu4tuaCBt4buZdCBuaMOhbmggbmjGsCDigJxtYXN0ZXLigJ0gY2jhurNuZyBo4bqhbi5cbiIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEwNzcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCByZXNwb25zZSBpbiByZWYgbGlzdDogJXMiCiBtc2dzdHIgIsSRw6FwIOG7qW5nIHNhaSBk4bqhbmcgdHJvbmcgZGFuaCBzw6FjaCB0aGFtIGNoaeG6v3U6ICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTIzMQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVhZCglcykgZmFpbGVkIgogbXNnc3RyICJyZWFkKCVzKSBn4bq3cCBs4buXaSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyNTgKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIndyaXRlKCVzKSBmYWlsZWQiCiBtc2dzdHIgIndyaXRlKCVzKSBn4bq3cCBs4buXaSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMDcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHRocmVhZCBmYWlsZWQiCiBtc2dzdHIgInR1eeG6v24gdHLDrG5oICVzIGfhurdwIGzhu5dpIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMxMQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgdGhyZWFkIGZhaWxlZCB0byBqb2luOiAlcyIKIG1zZ3N0ciAidHV54bq/biB0csOsbmggJXMgZ+G6t3AgbOG7l2kga2hpIGdpYSBuaOG6rXA6ICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTMzMCB0cmFuc3BvcnQtaGVscGVyLmM6MTMzNAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNzEgdHJhbnNwb3J0LWhlbHBlci5jOjEzNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgc3RhcnQgdGhyZWFkIGZvciBjb3B5aW5nIGRhdGE6ICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4Mga2jhu59pIGNo4bqheSB0dXnhur9uIHRyw6xuaCDEkeG7gyBzYW8gY2jDqXAgZOG7ryBsaeG7h3U6ICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM3MQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcHJvY2VzcyBmYWlsZWQgdG8gd2FpdCIKIG1zZ3N0ciAieOG7rSBsw70gJXMgZ+G6t3AgbOG7l2kga2hpIMSR4bujaSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNzUKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHByb2Nlc3MgZmFpbGVkIgogbXNnc3RyICJ44butIGzDvSAlcyBn4bq3cCBs4buXaSIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzOTMgdHJhbnNwb3J0LWhlbHBlci5jOjE0MDIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDM0IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDQzCiBtc2dpZCAiY2FuJ3Qgc3RhcnQgdGhyZWFkIGZvciBjb3B5aW5nIGRhdGEiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBraOG7n2kgY2jhuqF5IHR1eeG6v24gdHLDrG5oIGNobyB2aeG7h2MgY2jDqXAgZOG7ryBsaeG7h3UiCiAKLSM6IHRyZWUtd2Fsay5jOjMzCisjOiB0cmVlLXdhbGsuYzozMgogbXNnaWQgInRvby1zaG9ydCB0cmVlIG9iamVjdCIKIG1zZ3N0ciAixJHhu5FpIHTGsOG7o25nIGPDonkgcXXDoSBuZ+G6r24iCiAKLSM6IHRyZWUtd2Fsay5jOjM5CisjOiB0cmVlLXdhbGsuYzozOAogbXNnaWQgIm1hbGZvcm1lZCBtb2RlIGluIHRyZWUgZW50cnkiCiBtc2dzdHIgImNo4bq/IMSR4buZIGThu4sgaMOsbmggdHJvbmcgxJHhu4EgbeG7pWMgY8OieSIKIAotIzogdHJlZS13YWxrLmM6NDMKKyM6IHRyZWUtd2Fsay5jOjQyCiBtc2dpZCAiZW1wdHkgZmlsZW5hbWUgaW4gdHJlZSBlbnRyeSIKIG1zZ3N0ciAidMOqbiB04bqtcCB0aW4gdHLhu5FuZyBy4buXbmcgdHJvbmcgbeG7pWMgdGluIGPDonkiCiAKLSM6IHRyZWUtd2Fsay5jOjExNQorIzogdHJlZS13YWxrLmM6MTE3CiBtc2dpZCAidG9vLXNob3J0IHRyZWUgZmlsZSIKIG1zZ3N0ciAidOG6rXAgdGluIGPDonkgcXXDoSBuZ+G6r24iCiAKLSM6IHVucGFjay10cmVlcy5jOjExMgorIzogdW5wYWNrLXRyZWVzLmM6MTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBjaGVja291dDpcbiIKQEAgLTYzMzYsNyArODQ5Miw3IEBACiAiJSVzVnVpIGzDsm5nIGNodXnhu4NuIGdpYW8gY8OhYyB0aGF5IMSR4buVaSBoYXkgdOG6oW0gY+G6pXQgY2jDum5nIMSRaSB0csaw4bubYyBraGkgYuG6oW4gIgogImNodXnhu4NuIG5ow6FuaC4iCiAKLSM6IHVucGFjay10cmVlcy5jOjExNAorIzogdW5wYWNrLXRyZWVzLmM6MTEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBjaGVja291dDpcbiIKQEAgLTYzNDYsNyArODUwMiw3IEBACiAiY2hlY2tvdXQ6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTcKKyM6IHVucGFjay10cmVlcy5jOjExNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCkBAIC02MzU3LDcgKzg1MTMsNyBAQAogIiUlc1Z1aSBsw7JuZyBjaHV54buDbiBnaWFvIGPDoWMgdGhheSDEkeG7lWkgaGF5IHThuqFtIGPhuqV0IGNow7puZyDEkWkgdHLGsOG7m2Mga2hpIGLhuqFuIGjDsmEgIgogInRy4buZbi4iCiAKLSM6IHVucGFjay10cmVlcy5jOjExOQorIzogdW5wYWNrLXRyZWVzLmM6MTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTYzNjcsNyArODUyMyw3IEBACiAiaMOyYSB0cuG7mW46XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMjIKKyM6IHVucGFjay10cmVlcy5jOjEyMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCkBAIC02Mzc3LDcgKzg1MzMsNyBAQAogIiVzOlxuIgogIiUlc1Z1aSBsw7JuZyBjaHV54buDbiBnaWFvIGPDoWMgdGhheSDEkeG7lWkgaGF5IHThuqFtIGPhuqV0IGNow7puZyDEkWkgdHLGsOG7m2Mga2hpIGLhuqFuICVzLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTI0CisjOiB1bnBhY2stdHJlZXMuYzoxMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjM4Nyw3ICs4NTQzLDcgQEAKICIlczpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjEyOQorIzogdW5wYWNrLXRyZWVzLmM6MTI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJVcGRhdGluZyB0aGUgZm9sbG93aW5nIGRpcmVjdG9yaWVzIHdvdWxkIGxvc2UgdW50cmFja2VkIGZpbGVzIGluIHRoZW06XG4iCkBAIC02Mzk3LDcgKzg1NTMsNyBAQAogInRyb25nIG7DszpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTMzCisjOiB1bnBhY2stdHJlZXMuYzoxMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IGNoZWNrb3V0OlxuIgpAQCAtNjQwNyw3ICs4NTYzLDcgQEAKICJjaGVja291dDpcbiIKICIlJXNWdWkgbMOybmcgZGkgY2h1eeG7g24gaGF5IGfhu6EgYuG7jyBjaMO6bmcgdHLGsOG7m2Mga2hpIGLhuqFuIGNodXnhu4NuIG5ow6FuaC4iCiAKLSM6IHVucGFjay10cmVlcy5jOjEzNQorIzogdW5wYWNrLXRyZWVzLmM6MTMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKQEAgLTY0MTcsNyArODU3Myw3IEBACiAiY2hlY2tvdXQ6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMzgKKyM6IHVucGFjay10cmVlcy5jOjEzNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgbWVyZ2U6XG4iCkBAIC02NDI3LDcgKzg1ODMsNyBAQAogInRy4buZbjpcbiIKICIlJXNWdWkgbMOybmcgZGkgY2h1eeG7g24gaGF5IGfhu6EgYuG7jyBjaMO6bmcgdHLGsOG7m2Mga2hpIGLhuqFuIGjDsmEgdHLhu5luLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTQwCisjOiB1bnBhY2stdHJlZXMuYzoxMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgpAQCAtNjQzNyw3ICs4NTkzLDcgQEAKICJ0cuG7mW46XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNDMKKyM6IHVucGFjay10cmVlcy5jOjE0MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgJXM6XG4iCkBAIC02NDQ2LDcgKzg2MDIsNyBAQAogIkPDoWMgdOG6rXAgdGluIGPDonkgbMOgbSB2aeG7h2MgY2jGsGEgxJHGsOG7o2MgdGhlbyBkw7VpIHNhdSDEkcOieSBz4bq9IGLhu4sgZ+G7oSBi4buPIGLhu59pICVzOlxuIgogIiUlc1Z1aSBsw7JuZyBkaSBjaHV54buDbiBoYXkgZ+G7oSBi4buPIGNow7puZyB0csaw4bubYyBraGkgYuG6oW4gJXMuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNDUKKyM6IHVucGFjay10cmVlcy5jOjE0MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgJXM6XG4iCkBAIC02NDU1LDI5ICs4NjExLDI5IEBACiAiQ8OhYyB04bqtcCB0aW4gY8OieSBsw6BtIHZp4buHYyBjaMawYSDEkcaw4bujYyB0aGVvIGTDtWkgc2F1IMSRw6J5IHPhur0gYuG7iyBn4buhIGLhu48gYuG7n2kgJXM6XG4iCiAiJSVzIgogCisjOiB1bnBhY2stdHJlZXMuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCisiY2hlY2tvdXQ6XG4iCisiJSVzUGxlYXNlIG1vdmUgb3IgcmVtb3ZlIHRoZW0gYmVmb3JlIHlvdSBzd2l0Y2ggYnJhbmNoZXMuIgorbXNnc3RyICIiCisiQ8OhYyB04bqtcCB0aW4gY8OieSBsw6BtIHZp4buHYyBjaMawYSDEkcaw4bujYyB0aGVvIGTDtWkgc2F1IMSRw6J5IHPhur0gYuG7iyBnaGkgxJHDqCBi4bufaSBs4buHbmggIgorImNoZWNrb3V0OlxuIgorIiUlc1Z1aSBsw7JuZyBkaSBjaHV54buDbiBoYXkgZ+G7oSBi4buPIGNow7puZyB0csaw4bubYyBraGkgYuG6oW4gY2h1eeG7g24gbmjDoW5oLiIKKwogIzogdW5wYWNrLXRyZWVzLmM6MTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgIgogImNoZWNrb3V0OlxuIgotIiUlc1BsZWFzZSBtb3ZlIG9yIHJlbW92ZSB0aGVtIGJlZm9yZSB5b3Ugc3dpdGNoIGJyYW5jaGVzLiIKLW1zZ3N0ciAiIgotIkPDoWMgdOG6rXAgdGluIGPDonkgbMOgbSB2aeG7h2MgY2jGsGEgxJHGsOG7o2MgdGhlbyBkw7VpIHNhdSDEkcOieSBz4bq9IGLhu4sgZ2hpIMSRw6ggYuG7n2kgbOG7h25oICIKLSJjaGVja291dDpcbiIKLSIlJXNWdWkgbMOybmcgZGkgY2h1eeG7g24gaGF5IGfhu6EgYuG7jyBjaMO6bmcgdHLGsOG7m2Mga2hpIGLhuqFuIGNodXnhu4NuIG5ow6FuaC4iCi0KLSM6IHVucGFjay10cmVlcy5jOjE1MwotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICIKLSJjaGVja291dDpcbiIKICIlJXMiCiBtc2dzdHIgIiIKICJDw6FjIHThuq1wIHRpbiBjw6J5IGzDoG0gdmnhu4djIGNoxrBhIMSRxrDhu6NjIHRoZW8gZMO1aSBzYXUgxJHDonkgc+G6vSBi4buLIGdoaSDEkcOoIGLhu59pIGzhu4duaCAiCiAiY2hlY2tvdXQ6XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNTYKKyM6IHVucGFjay10cmVlcy5jOjE1NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtNjQ4Nyw3ICs4NjQzLDcgQEAKICJow7JhIHRy4buZbjpcbiIKICIlJXNWdWkgbMOybmcgZGkgY2h1eeG7g24gaGF5IGfhu6EgYuG7jyBjaMO6bmcgdHLGsOG7m2Mga2hpIGLhuqFuIGjDsmEgdHLhu5luLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTU4CisjOiB1bnBhY2stdHJlZXMuYzoxNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTY0OTcsNyArODY1Myw3IEBACiAiaMOyYSB0cuG7mW46XG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNjEKKyM6IHVucGFjay10cmVlcy5jOjE1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjUwNyw3ICs4NjYzLDcgQEAKICIlczpcbiIKICIlJXNWdWkgbMOybmcgZGkgY2h1eeG7g24gaGF5IGfhu6EgYuG7jyBjaMO6bmcgdHLGsOG7m2Mga2hpIGLhuqFuICVzLiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTYzCisjOiB1bnBhY2stdHJlZXMuYzoxNjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKQEAgLTY1MTcsMTIgKzg2NzMsMTIgQEAKICIlczpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE3MQorIzogdW5wYWNrLXRyZWVzLmM6MTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkVudHJ5ICclcycgb3ZlcmxhcHMgd2l0aCAnJXMnLiAgQ2Fubm90IGJpbmQuIgogbXNnc3RyICJN4bulYyDigJwlc+KAnSDEkcOoIGzDqm4g4oCcJXPigJ0uIEtow7RuZyB0aOG7gyBideG7mWMuIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNzQKKyM6IHVucGFjay10cmVlcy5jOjE3MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IHVwZGF0ZSBzcGFyc2UgY2hlY2tvdXQ6IHRoZSBmb2xsb3dpbmcgZW50cmllcyBhcmUgbm90IHVwIHRvIGRhdGU6XG4iCkBAIC02NTMxLDcgKzg2ODcsNyBAQAogIktow7RuZyB0aOG7gyBj4bqtcCBuaOG6rXQgY2hlY2tvdXQgcuG6o2kgcsOhYzogY8OhYyBt4bulYyB0aW4gc2F1IMSRw6J5IGNoxrBhIGPhuq1wIG5o4bqtdDpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTc2CisjOiB1bnBhY2stdHJlZXMuYzoxNzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IHNwYXJzZSBjaGVja291dCAiCkBAIC02NTQyLDcgKzg2OTgsNyBAQAogIm5o4bqtdCBjaGVja291dCBy4bqjaSByw6FjOlxuIgogIiVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNzgKKyM6IHVucGFjay10cmVlcy5jOjE3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBzcGFyc2UgY2hlY2tvdXQgIgpAQCAtNjU1Myw3ICs4NzA5LDcgQEAKICJuaOG6rXQgY2hlY2tvdXQgcuG6o2kgcsOhYzpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTgwCisjOiB1bnBhY2stdHJlZXMuYzoxNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNhbm5vdCB1cGRhdGUgc3VibW9kdWxlOlxuIgpAQCAtNjU2MiwxNiArODcxOCwxNiBAQAogIktow7RuZyB0aOG7gyBj4bqtcCBuaOG6rXQgbcO0LcSRdW4tY29uOlxuIgogIiVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoyNTQKKyM6IHVucGFjay10cmVlcy5jOjI1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJBYm9ydGluZ1xuIgogbXNnc3RyICJCw6NpIGLhu49cbiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MzM2Ci1tc2dpZCAiQ2hlY2tpbmcgb3V0IGZpbGVzIgotbXNnc3RyICLEkGFuZyBs4bqleSByYSBjw6FjIHThuq1wIHRpbiIKKyM6IHVucGFjay10cmVlcy5jOjMxNworbXNnaWQgIlVwZGF0aW5nIGZpbGVzIgorbXNnc3RyICLEkGFuZyBj4bqtcCBuaOG6rXQgY8OhYyB04bqtcCB0aW4iCiAKLSM6IHVucGFjay10cmVlcy5jOjM2OAorIzogdW5wYWNrLXRyZWVzLmM6MzQ5CiBtc2dpZCAiIgogInRoZSBmb2xsb3dpbmcgcGF0aHMgaGF2ZSBjb2xsaWRlZCAoZS5nLiBjYXNlLXNlbnNpdGl2ZSBwYXRoc1xuIgogIm9uIGEgY2FzZS1pbnNlbnNpdGl2ZSBmaWxlc3lzdGVtKSBhbmQgb25seSBvbmUgZnJvbSB0aGUgc2FtZVxuIgpAQCAtNjU4MSw2ICs4NzM3LDEwIEBACiAiSE9BL3RoxrDhu51uZyB0csOqbiBt4buZdCBo4buHIHRo4buRbmcgdOG6rXAgdGluIGtow7RuZyBwaMOibiBiaeG7h3QgSE9BL3RoxrDhu51uZylcbiIKICJ2w6AgY2jhu4kgbeG7mXQgdOG7qyBjw7luZyBt4buZdCBuaMOzbSB4dW5nIMSR4buZdCBsw6AgdHJvbmcgY8OieSBsw6BtIHZp4buHYyBoaeG7h24gdOG6oWk6XG4iCiAKKyM6IHVucGFjay10cmVlcy5jOjE0NDUKK21zZ2lkICJVcGRhdGluZyBpbmRleCBmbGFncyIKK21zZ3N0ciAixJBhbmcgY+G6rXAgbmjhuq10IGPDoWMgY+G7nSBt4bulYyBs4bulYyIKKwogIzogdXJsbWF0Y2guYzoxNjMKIG1zZ2lkICJpbnZhbGlkIFVSTCBzY2hlbWUgbmFtZSBvciBtaXNzaW5nICc6Ly8nIHN1ZmZpeCIKIG1zZ3N0ciAidMOqbiBsxrDhu6NjIMSR4buTIFVSTCBraMO0bmcgaOG7o3AgbOG7hywgaG/hurdjIHRoaeG6v3UgaOG6rXUgdOG7kSDigJw6Ly/igJ0iCkBAIC02NTk2LDcgKzg3NTYsNyBAQAogCiAjOiB1cmxtYXRjaC5jOjIzMgogbXNnaWQgImEgJ2ZpbGU6JyBVUkwgbWF5IG5vdCBoYXZlIGEgcG9ydCBudW1iZXIiCi1tc2dzdHIgIlVSTCBraeG7g3Ug4oCcZmlsZTrigJ0ga2jDtG5nIMSRxrDhu6NjIGNo4bupYSBj4buVbmciCittc2dzdHIgIm3hu5l0IFVSTCBraeG7g3Ug4oCcZmlsZTrigJ0ga2jDtG5nIMSRxrDhu6NjIGNo4bupYSBj4buVbmciCiAKICM6IHVybG1hdGNoLmM6MjQ3CiBtc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXJzIGluIGhvc3QgbmFtZSIKQEAgLTY2MTAsMjAxICs4NzcwLDIxMSBAQAogbXNnaWQgImludmFsaWQgJy4uJyBwYXRoIHNlZ21lbnQiCiBtc2dzdHIgIsSRb+G6oW4gxJHGsOG7nW5nIGThuqtuIOKAnC4u4oCdIGtow7RuZyBo4bujcCBs4buHIgogCi0jOiB3b3JrdHJlZS5jOjI0OSBidWlsdGluL2FtLmM6MjEwMAorIzogd2Fsa2VyLmM6MTcwCittc2dpZCAiRmV0Y2hpbmcgb2JqZWN0cyIKK21zZ3N0ciAixJBhbmcgbOG6pXkgduG7gSBjw6FjIMSR4buRaSB0xrDhu6NuZyIKKworIzogd29ya3RyZWUuYzoyNTkgYnVpbHRpbi9hbS5jOjIwOTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgJyVzJyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMSR4buNYyDigJwlc+KAnSIKIAotIzogd29ya3RyZWUuYzoyOTUKKyM6IHdvcmt0cmVlLmM6MzA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgYXQgbWFpbiB3b3JraW5nIHRyZWUgaXMgbm90IHRoZSByZXBvc2l0b3J5IGRpcmVjdG9yeSIKIG1zZ3N0ciAi4oCcJXPigJ0gdOG6oWkgY8OieSBsw6BtIHZp4buHYyBjaMOsbmgga2jDtG5nIHBo4bqjaSBsw6AgdGjGsCBt4bulYyBraG8iCiAKLSM6IHdvcmt0cmVlLmM6MzA2CisjOiB3b3JrdHJlZS5jOjMxNgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGZpbGUgZG9lcyBub3QgY29udGFpbiBhYnNvbHV0ZSBwYXRoIHRvIHRoZSB3b3JraW5nIHRyZWUgbG9jYXRpb24iCiBtc2dzdHIgIiIKICJ04bqtcCB0aW4g4oCcJXPigJ0ga2jDtG5nIGNo4bupYSDEkcaw4budbmcgZOG6q24gdHV54buHdCDEkeG7kWkgxJHhur9uIHbhu4sgdHLDrSBjw6J5IGzDoG0gdmnhu4djIGhp4buHbiIKIAotIzogd29ya3RyZWUuYzozMTgKKyM6IHdvcmt0cmVlLmM6MzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgIlwiJXNcIiBraMO0bmcgdOG7k24gdOG6oWkiCiAKLSM6IHdvcmt0cmVlLmM6MzI0CisjOiB3b3JrdHJlZS5jOjMzNAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIC5naXQgZmlsZSwgZXJyb3IgY29kZSAlZCIKIG1zZ3N0ciAi4oCcJXPigJ0ga2jDtG5nIHBo4bqjaSBsw6AgdOG6rXAgdGluIC5naXQsIG3DoyBs4buXaSAlZCIKIAotIzogd29ya3RyZWUuYzozMzIKKyM6IHdvcmt0cmVlLmM6MzQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZG9lcyBub3QgcG9pbnQgYmFjayB0byAnJXMnIgogbXNnc3RyICLigJwlc+KAnSBraMO0bmcgY2jhu4kgbmfGsOG7o2MgxJHhur9uIOKAnCVz4oCdIgogCi0jOiB3cmFwcGVyLmM6MjIzIHdyYXBwZXIuYzozOTMKKyM6IHdyYXBwZXIuYzoxODYgd3JhcHBlci5jOjM1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciByZWFkaW5nIGFuZCB3cml0aW5nIgogbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyDigJwlc+KAnSDEkeG7gyDEkeG7jWMgdsOgIGdoaSIKIAotIzogd3JhcHBlci5jOjQyNCB3cmFwcGVyLmM6NjI0CisjOiB3cmFwcGVyLmM6Mzg3IHdyYXBwZXIuYzo1ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGFjY2VzcyAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdHJ1eSBj4bqtcCDigJwlc+KAnSIKIAotIzogd3JhcHBlci5jOjYzMgorIzogd3JhcHBlci5jOjU5NgogbXNnaWQgInVuYWJsZSB0byBnZXQgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSIKLW1zZ3N0ciAiS2jDtG5nIHRo4buDIGzhuqV5IHRoxrAgbeG7pWMgbMOgbSB2aeG7h2MgaGnhu4duIGjDoG5oIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbOG6pXkgdGjGsCBt4bulYyBsw6BtIHZp4buHYyBoaeG7h24gaMOgbmgiCiAKLSM6IHd0LXN0YXR1cy5jOjE1NAorIzogd3Qtc3RhdHVzLmM6MTU4CiBtc2dpZCAiVW5tZXJnZWQgcGF0aHM6IgogbXNnc3RyICJOaOG7r25nIMSRxrDhu51uZyBk4bqrbiBjaMawYSDEkcaw4bujYyBow7JhIHRy4buZbjoiCiAKLSM6IHd0LXN0YXR1cy5jOjE4MSB3dC1zdGF0dXMuYzoyMDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiICAodXNlIFwiZ2l0IHJlc2V0ICVzIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgotbXNnc3RyICIgIChkw7luZyBcImdpdCByZXNldCAlcyA8dOG6rXAtdGluPuKAplwiIMSR4buDIGLhu48gcmEga2jhu49pIGLhu4cgcGjDs25nKSIKKyM6IHd0LXN0YXR1cy5jOjE4NyB3dC1zdGF0dXMuYzoyMTkKK21zZ2lkICIgICh1c2UgXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKK21zZ3N0ciAiICAoZMO5bmcgXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8dOG6rXAtdGluPuKAplwiIMSR4buDIGLhu48gcmEga2jhu49pIGLhu4cgcGjDs25nKSIKIAotIzogd3Qtc3RhdHVzLmM6MTgzIHd0LXN0YXR1cy5jOjIxMAorIzogd3Qtc3RhdHVzLmM6MTkwIHd0LXN0YXR1cy5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIgICh1c2UgXCJnaXQgcmVzdG9yZSAtLXNvdXJjZT0lcyAtLXN0YWdlZCA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKK21zZ3N0ciAiIgorIiAgKGTDuW5nIFwiZ2l0IHJlc3RvcmUgLS1zb3VyY2U9JXMgLS1zdGFnZWQgPHThuq1wLXRpbj7igKZcIiDEkeG7gyBi4buPIHJhIGto4buPaSBi4buHICIKKyJwaMOzbmcpIgorCisjOiB3dC1zdGF0dXMuYzoxOTMgd3Qtc3RhdHVzLmM6MjI1CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJtIC0tY2FjaGVkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgogbXNnc3RyICIgIChkw7luZyBcImdpdCBybSAtLWNhY2hlZCA8dOG6rXAtdGluPuKAplwiIMSR4buDIGLhu48gcmEga2jhu49pIGLhu4cgcGjDs25nKSIKIAotIzogd3Qtc3RhdHVzLmM6MTg3CisjOiB3dC1zdGF0dXMuYzoxOTcKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkIDxmaWxlPi4uLlwiIHRvIG1hcmsgcmVzb2x1dGlvbikiCiBtc2dzdHIgIiAgKGTDuW5nIFwiZ2l0IGFkZCA8dOG6rXAtdGluPuKAplwiIMSR4buDIMSRw6FuaCBk4bqldSBsw6AgY+G6p24gZ2nhuqNpIHF1eeG6v3QpIgogCi0jOiB3dC1zdGF0dXMuYzoxODkgd3Qtc3RhdHVzLmM6MTkzCisjOiB3dC1zdGF0dXMuYzoxOTkgd3Qtc3RhdHVzLmM6MjAzCiBtc2dpZCAiICAodXNlIFwiZ2l0IGFkZC9ybSA8ZmlsZT4uLi5cIiBhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24pIgogbXNnc3RyICIiCiAiICAoZMO5bmcgXCJnaXQgYWRkL3JtIDx04bqtcC10aW4+4oCmXCIgbmjGsCBsw6AgbeG7mXQgY8OhY2ggdGjDrWNoIGjhu6NwIMSR4buDIMSRw6FuaCBk4bqldSBsw6AgIgogImPhuqduIMSRxrDhu6NjIGdp4bqjaSBxdXnhur90KSIKIAotIzogd3Qtc3RhdHVzLmM6MTkxCisjOiB3dC1zdGF0dXMuYzoyMDEKIG1zZ2lkICIgICh1c2UgXCJnaXQgcm0gPGZpbGU+Li4uXCIgdG8gbWFyayByZXNvbHV0aW9uKSIKIG1zZ3N0ciAiICAoZMO5bmcgXCJnaXQgcm0gPHThuq1wLXRpbj7igKZcIiDEkeG7gyDEkcOhbmggZOG6pXUgbMOgIGPhuqduIGdp4bqjaSBxdXnhur90KSIKIAotIzogd3Qtc3RhdHVzLmM6MjAyIHd0LXN0YXR1cy5jOjEwNDIKKyM6IHd0LXN0YXR1cy5jOjIxMSB3dC1zdGF0dXMuYzoxMDc0CiBtc2dpZCAiQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6IgogbXNnc3RyICJOaOG7r25nIHRoYXkgxJHhu5VpIHPhur0gxJHGsOG7o2MgY2h1eeG7g24gZ2lhbzoiCiAKLSM6IHd0LXN0YXR1cy5jOjIyMCB3dC1zdGF0dXMuYzoxMDUxCisjOiB3dC1zdGF0dXMuYzoyMzQgd3Qtc3RhdHVzLmM6MTA4MwogbXNnaWQgIkNoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OiIKIG1zZ3N0ciAiQ8OhYyB0aGF5IMSR4buVaSBjaMawYSDEkcaw4bujYyDEkeG6t3QgbMOqbiBi4buHIHBow7NuZyDEkeG7gyBjaHV54buDbiBnaWFvOiIKIAotIzogd3Qtc3RhdHVzLmM6MjI0CisjOiB3dC1zdGF0dXMuYzoyMzgKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKIG1zZ3N0ciAiICAoZMO5bmcgXCJnaXQgYWRkIDx04bqtcC10aW4+4oCmXCIgxJHhu4MgY+G6rXAgbmjhuq10IG5o4buvbmcgZ8OsIHPhur0gY2h1eeG7g24gZ2lhbykiCiAKLSM6IHd0LXN0YXR1cy5jOjIyNgorIzogd3Qtc3RhdHVzLmM6MjQwCiBtc2dpZCAiICAodXNlIFwiZ2l0IGFkZC9ybSA8ZmlsZT4uLi5cIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCiBtc2dzdHIgIiIKICIgIChkw7luZyBcImdpdCBhZGQvcm0gPHThuq1wLXRpbj7igKZcIiDEkeG7gyBj4bqtcCBuaOG6rXQgbmjhu69uZyBnw6wgc+G6vSDEkcaw4bujYyBjaHV54buDbiBnaWFvKSIKIAotIzogd3Qtc3RhdHVzLmM6MjI3CisjOiB3dC1zdGF0dXMuYzoyNDEKIG1zZ2lkICIiCi0iICAodXNlIFwiZ2l0IGNoZWNrb3V0IC0tIDxmaWxlPi4uLlwiIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkiCisiICAodXNlIFwiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uXCIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KSIKIG1zZ3N0ciAiIgotIiAgKGTDuW5nIFwiZ2l0IGNoZWNrb3V0IC0tIDx04bqtcC10aW4+4oCmXCIgxJHhu4MgbG/huqFpIGLhu48gY8OhYyB0aGF5IMSR4buVaSB0cm9uZyB0aMawIG3hu6VjICIKLSJsw6BtIHZp4buHYykiCisiICAoZMO5bmcgXCJnaXQgcmVzdG9yZSA8dOG6rXAtdGluPuKAplwiIMSR4buDIGxv4bqhaSBi4buPIGPDoWMgdGhheSDEkeG7lWkgdHJvbmcgdGjGsCBt4bulYyBsw6BtICIKKyJ2aeG7h2MpIgogCi0jOiB3dC1zdGF0dXMuYzoyMjkKKyM6IHd0LXN0YXR1cy5jOjI0MwogbXNnaWQgIiAgKGNvbW1pdCBvciBkaXNjYXJkIHRoZSB1bnRyYWNrZWQgb3IgbW9kaWZpZWQgY29udGVudCBpbiBzdWJtb2R1bGVzKSIKIG1zZ3N0ciAiIgogIiAgKGNodXnhu4NuIGdpYW8gaG/hurdjIGzDoCBsb+G6oWkgYuG7jyBjw6FjIG7hu5lpIGR1bmcgY2jGsGEgxJHGsOG7o2MgdGhlbyBkw7VpIGhheSDEkcOjIHPhu61hICIKICJjaOG7r2EgdHJvbmcgbcO0LcSRdW4tY29uKSIKIAotIzogd3Qtc3RhdHVzLmM6MjQxCisjOiB3dC1zdGF0dXMuYzoyNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAodXNlIFwiZ2l0ICVzIDxmaWxlPi4uLlwiIHRvIGluY2x1ZGUgaW4gd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCiBtc2dzdHIgIiIKICIgIChkw7luZyBcImdpdCAlcyA8dOG6rXAtdGluPuKAplwiIMSR4buDIHRow6ptIHbDoG8gbmjhu69uZyBnw6wgY+G6p24gxJHGsOG7o2MgY2h1eeG7g24gZ2lhbykiCiAKLSM6IHd0LXN0YXR1cy5jOjI1NgorIzogd3Qtc3RhdHVzLmM6MjY4CiBtc2dpZCAiYm90aCBkZWxldGVkOiIKIG1zZ3N0ciAiYuG7iyB4w7NhIGLhu59pIGPhuqMgaGFpOiIKIAotIzogd3Qtc3RhdHVzLmM6MjU4CisjOiB3dC1zdGF0dXMuYzoyNzAKIG1zZ2lkICJhZGRlZCBieSB1czoiCiBtc2dzdHIgIsSRxrDhu6NjIHRow6ptIHbDoG8gYuG7n2kgY2jDum5nIHRhOiIKIAotIzogd3Qtc3RhdHVzLmM6MjYwCisjOiB3dC1zdGF0dXMuYzoyNzIKIG1zZ2lkICJkZWxldGVkIGJ5IHRoZW06IgogbXNnc3RyICJi4buLIHjDs2EgxJFpIGLhu59pIGjhu406IgogCi0jOiB3dC1zdGF0dXMuYzoyNjIKKyM6IHd0LXN0YXR1cy5jOjI3NAogbXNnaWQgImFkZGVkIGJ5IHRoZW06IgogbXNnc3RyICLEkcaw4bujYyB0aMOqbSB2w6BvIGLhu59pIGjhu406IgogCi0jOiB3dC1zdGF0dXMuYzoyNjQKKyM6IHd0LXN0YXR1cy5jOjI3NgogbXNnaWQgImRlbGV0ZWQgYnkgdXM6IgogbXNnc3RyICJi4buLIHjDs2EgYuG7n2kgY2jDum5nIHRhOiIKIAotIzogd3Qtc3RhdHVzLmM6MjY2CisjOiB3dC1zdGF0dXMuYzoyNzgKIG1zZ2lkICJib3RoIGFkZGVkOiIKIG1zZ3N0ciAixJHGsOG7o2MgdGjDqm0gdsOgbyBi4bufaSBj4bqjIGhhaToiCiAKLSM6IHd0LXN0YXR1cy5jOjI2OAorIzogd3Qtc3RhdHVzLmM6MjgwCiBtc2dpZCAiYm90aCBtb2RpZmllZDoiCiBtc2dzdHIgImLhu4sgc+G7rWEgYuG7n2kgY+G6oyBoYWk6IgogCi0jOiB3dC1zdGF0dXMuYzoyNzgKKyM6IHd0LXN0YXR1cy5jOjI5MAogbXNnaWQgIm5ldyBmaWxlOiIKIG1zZ3N0ciAidOG6rXAgdGluIG3hu5tpOiIKIAotIzogd3Qtc3RhdHVzLmM6MjgwCisjOiB3dC1zdGF0dXMuYzoyOTIKIG1zZ2lkICJjb3BpZWQ6IgogbXNnc3RyICLEkcOjIGNow6lwOiIKIAotIzogd3Qtc3RhdHVzLmM6MjgyCisjOiB3dC1zdGF0dXMuYzoyOTQKIG1zZ2lkICJkZWxldGVkOiIKIG1zZ3N0ciAixJHDoyB4w7NhOiIKIAotIzogd3Qtc3RhdHVzLmM6Mjg0CisjOiB3dC1zdGF0dXMuYzoyOTYKIG1zZ2lkICJtb2RpZmllZDoiCiBtc2dzdHIgIsSRw6Mgc+G7rWE6IgogCi0jOiB3dC1zdGF0dXMuYzoyODYKKyM6IHd0LXN0YXR1cy5jOjI5OAogbXNnaWQgInJlbmFtZWQ6IgogbXNnc3RyICLEkcOjIMSR4buVaSB0w6puOiIKIAotIzogd3Qtc3RhdHVzLmM6Mjg4CisjOiB3dC1zdGF0dXMuYzozMDAKIG1zZ2lkICJ0eXBlY2hhbmdlOiIKIG1zZ3N0ciAixJHhu5VpLWtp4buDdToiCiAKLSM6IHd0LXN0YXR1cy5jOjI5MAorIzogd3Qtc3RhdHVzLmM6MzAyCiBtc2dpZCAidW5rbm93bjoiCiBtc2dzdHIgImtow7RuZyBoaeG7g3U6IgogCi0jOiB3dC1zdGF0dXMuYzoyOTIKKyM6IHd0LXN0YXR1cy5jOjMwNAogbXNnaWQgInVubWVyZ2VkOiIKIG1zZ3N0ciAiY2jGsGEgaMOyYSB0cuG7mW46IgogCi0jOiB3dC1zdGF0dXMuYzozNzIKKyM6IHd0LXN0YXR1cy5jOjM4NAogbXNnaWQgIm5ldyBjb21taXRzLCAiCiBtc2dzdHIgImzhuqduIGNodXnhu4NuIGdpYW8gbeG7m2ksICIKIAotIzogd3Qtc3RhdHVzLmM6Mzc0CisjOiB3dC1zdGF0dXMuYzozODYKIG1zZ2lkICJtb2RpZmllZCBjb250ZW50LCAiCiBtc2dzdHIgIm7hu5lpIGR1bmcgYuG7iyBz4butYSDEkeG7lWksICIKIAotIzogd3Qtc3RhdHVzLmM6Mzc2CisjOiB3dC1zdGF0dXMuYzozODgKIG1zZ2lkICJ1bnRyYWNrZWQgY29udGVudCwgIgogbXNnc3RyICJu4buZaSBkdW5nIGNoxrBhIMSRxrDhu6NjIHRoZW8gZMO1aSwgIgogCi0jOiB3dC1zdGF0dXMuYzo4ODAKKyM6IHd0LXN0YXR1cy5jOjkwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIHN0YXNoIGN1cnJlbnRseSBoYXMgJWQgZW50cnkiCiBtc2dpZF9wbHVyYWwgIllvdXIgc3Rhc2ggY3VycmVudGx5IGhhcyAlZCBlbnRyaWVzIgogbXNnc3RyWzBdICJC4bqhbiBoaeG7h24gbmF5IOG7nyB0cm9uZyBwaOG6p24gY+G6pXQgxJFpIMSRYW5nIGPDsyAlZCBt4bulYyIKIAotIzogd3Qtc3RhdHVzLmM6OTEyCisjOiB3dC1zdGF0dXMuYzo5MzgKIG1zZ2lkICJTdWJtb2R1bGVzIGNoYW5nZWQgYnV0IG5vdCB1cGRhdGVkOiIKIG1zZ3N0ciAiTmjhu69uZyBtw7QtxJF1bi1jb24gxJHDoyBi4buLIHRoYXkgxJHhu5VpIG5oxrBuZyBjaMawYSDEkcaw4bujYyBj4bqtcCBuaOG6rXQ6IgogCi0jOiB3dC1zdGF0dXMuYzo5MTQKKyM6IHd0LXN0YXR1cy5jOjk0MAogbXNnaWQgIlN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCiBtc2dzdHIgIk5o4buvbmcgbcO0LcSRdW4tY29uIHRoYXkgxJHhu5VpIMSRw6MgxJHGsOG7o2MgY2h1eeG7g24gZ2lhbzoiCiAKLSM6IHd0LXN0YXR1cy5jOjk5NgorIzogd3Qtc3RhdHVzLmM6MTAyMgogbXNnaWQgIiIKICJEbyBub3QgbW9kaWZ5IG9yIHJlbW92ZSB0aGUgbGluZSBhYm92ZS5cbiIKICJFdmVyeXRoaW5nIGJlbG93IGl0IHdpbGwgYmUgaWdub3JlZC4iCkBAIC02ODEyLDEwOSArODk4MiwxMjAgQEAKICJLaMO0bmcgc+G7rWEgaGF5IHjDs2EgYuG7jyDEkcaw4budbmcg4bufIHRyw6puLlxuIgogIk3hu41pIHRo4bupIHBow61hIGTGsOG7m2kgc+G6vSDEkcaw4bujYyB4w7NhIGLhu48uIgogCi0jOiB3dC1zdGF0dXMuYzoxMDk3CisjOiB3dC1zdGF0dXMuYzoxMTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBjb21wdXRlIHRoZSBicmFuY2ggYWhlYWQvYmVoaW5kIHZhbHVlcy5cbiIKKyJZb3UgY2FuIHVzZSAnLS1uby1haGVhZC1iZWhpbmQnIHRvIGF2b2lkIHRoaXMuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJOw7MgY+G6p24gJS4yZiBnacOieSDEkeG7gyB0w61uaCB0b8OhbiBnacOhIHRy4buLIGPhu6dhIHRyxrDhu5tjL3NhdSBj4bunYSBuaMOhbmguXG4iCisiQuG6oW4gY8OzIHRo4buDIGTDuW5nICctLW5vLWFoZWFkLWJlaGluZCcgdHLDoW5oIHBo4bqjaSDEkWnhu4F1IG7DoHkuXG4iCisKKyM6IHd0LXN0YXR1cy5jOjExNDQKIG1zZ2lkICJZb3UgaGF2ZSB1bm1lcmdlZCBwYXRocy4iCiBtc2dzdHIgIkLhuqFuIGPDsyBuaOG7r25nIMSRxrDhu51uZyBk4bqrbiBjaMawYSDEkcaw4bujYyBow7JhIHRy4buZbi4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMDAKKyM6IHd0LXN0YXR1cy5jOjExNDcKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgY29tbWl0XCIpIgogbXNnc3RyICIgIChz4butYSBjw6FjIHh1bmcgxJHhu5l0IHLhu5NpIGNo4bqheSBcImdpdCBjb21taXRcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjExMDIKKyM6IHd0LXN0YXR1cy5jOjExNDkKIG1zZ2lkICIgICh1c2UgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIHRvIGFib3J0IHRoZSBtZXJnZSkiCiBtc2dzdHIgIiAgKGTDuW5nIFwiZ2l0IG1lcmdlIC0tYWJvcnRcIiDEkeG7gyBiw6NpIGLhu48gdmnhu4djIGjDsmEgdHLhu5luKSIKIAotIzogd3Qtc3RhdHVzLmM6MTEwNgorIzogd3Qtc3RhdHVzLmM6MTE1MwogbXNnaWQgIkFsbCBjb25mbGljdHMgZml4ZWQgYnV0IHlvdSBhcmUgc3RpbGwgbWVyZ2luZy4iCiBtc2dzdHIgIlThuqV0IGPhuqMgY8OhYyB4dW5nIMSR4buZdCDEkcOjIMSRxrDhu6NjIGdp4bqjaSBxdXnhur90IG5oxrBuZyBi4bqhbiB24bqrbiDEkWFuZyBow7JhIHRy4buZbi4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMDkKKyM6IHd0LXN0YXR1cy5jOjExNTYKIG1zZ2lkICIgICh1c2UgXCJnaXQgY29tbWl0XCIgdG8gY29uY2x1ZGUgbWVyZ2UpIgogbXNnc3RyICIgIChkw7luZyBcImdpdCBjb21taXRcIiDEkeG7gyBob8OgbiB04bqldCB2aeG7h2MgaMOyYSB0cuG7mW4pIgogCi0jOiB3dC1zdGF0dXMuYzoxMTE4CisjOiB3dC1zdGF0dXMuYzoxMTY1CiBtc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGFuIGFtIHNlc3Npb24uIgogbXNnc3RyICJC4bqhbiDEkWFuZyDhu58gZ2nhu69hIGPhu6dhIG3hu5l0IHBoacOqbiDigJxhbeKAnS4iCiAKLSM6IHd0LXN0YXR1cy5jOjExMjEKKyM6IHd0LXN0YXR1cy5jOjExNjgKIG1zZ2lkICJUaGUgY3VycmVudCBwYXRjaCBpcyBlbXB0eS4iCiBtc2dzdHIgIk1p4bq/bmcgdsOhIGhp4buHbiB04bqhaSBi4buLIHRy4buRbmcgcuG7l25nLiIKIAotIzogd3Qtc3RhdHVzLmM6MTEyNQorIzogd3Qtc3RhdHVzLmM6MTE3MgogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHRoZW4gcnVuIFwiZ2l0IGFtIC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKHPhu61hIGPDoWMgeHVuZyDEkeG7mXQgdsOgIHNhdSDEkcOzIGNo4bqheSBs4buHbmggXCJnaXQgYW0gLS1jb250aW51ZVwiKSIKIAotIzogd3Qtc3RhdHVzLmM6MTEyNworIzogd3Qtc3RhdHVzLmM6MTE3NAogbXNnaWQgIiAgKHVzZSBcImdpdCBhbSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgogbXNnc3RyICIgIChkw7luZyBcImdpdCBhbSAtLXNraXBcIiDEkeG7gyBi4buPIHF1YSBtaeG6v25nIHbDoSBuw6B5KSIKIAotIzogd3Qtc3RhdHVzLmM6MTEyOQorIzogd3Qtc3RhdHVzLmM6MTE3NgogbXNnaWQgIiAgKHVzZSBcImdpdCBhbSAtLWFib3J0XCIgdG8gcmVzdG9yZSB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiICAoZMO5bmcgXCJnaXQgYW0gLS1hYm9ydFwiIMSR4buDIHBo4bulYyBo4buTaSBs4bqhaSBuaMOhbmggbmd1ecOqbiB0aOG7p3kpIgogCi0jOiB3dC1zdGF0dXMuYzoxMjYwCisjOiB3dC1zdGF0dXMuYzoxMzA5CiBtc2dpZCAiZ2l0LXJlYmFzZS10b2RvIGlzIG1pc3NpbmcuIgotbXNnc3RyICJ0aGnhur91IGdpdC1yZWJhc2UtdG9kbyIKK21zZ3N0ciAidGhp4bq/dSBnaXQtcmViYXNlLXRvZG8uIgogCi0jOiB3dC1zdGF0dXMuYzoxMjYyCisjOiB3dC1zdGF0dXMuYzoxMzExCiBtc2dpZCAiTm8gY29tbWFuZHMgZG9uZS4iCiBtc2dzdHIgIktow7RuZyB0aOG7sWMgaGnhu4duIGzhu4duaCBuw6BvLiIKIAotIzogd3Qtc3RhdHVzLmM6MTI2NQorIzogd3Qtc3RhdHVzLmM6MTMxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJMYXN0IGNvbW1hbmQgZG9uZSAoJWQgY29tbWFuZCBkb25lKToiCiBtc2dpZF9wbHVyYWwgIkxhc3QgY29tbWFuZHMgZG9uZSAoJWQgY29tbWFuZHMgZG9uZSk6IgogbXNnc3RyWzBdICJM4buHbmggdGjhu7FjIGhp4buHbiBjdeG7kWkgKCVkIGzhu4duaCDEkcaw4bujYyB0aOG7sWMgdGhpKToiCiAKLSM6IHd0LXN0YXR1cy5jOjEyNzYKKyM6IHd0LXN0YXR1cy5jOjEzMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAoc2VlIG1vcmUgaW4gZmlsZSAlcykiCiBtc2dzdHIgIiAgKHhlbSB0aMOqbSB0cm9uZyAlcykiCiAKLSM6IHd0LXN0YXR1cy5jOjEyODEKKyM6IHd0LXN0YXR1cy5jOjEzMzAKIG1zZ2lkICJObyBjb21tYW5kcyByZW1haW5pbmcuIgogbXNnc3RyICJLaMO0bmcgY8OzIGzhu4duaCBuw6BvIGPDsm4gbOG6oWkuIgogCi0jOiB3dC1zdGF0dXMuYzoxMjg0CisjOiB3dC1zdGF0dXMuYzoxMzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5leHQgY29tbWFuZCB0byBkbyAoJWQgcmVtYWluaW5nIGNvbW1hbmQpOiIKIG1zZ2lkX3BsdXJhbCAiTmV4dCBjb21tYW5kcyB0byBkbyAoJWQgcmVtYWluaW5nIGNvbW1hbmRzKToiCiBtc2dzdHJbMF0gIkzhu4duaCBj4bqnbiBsw6BtIGvhur8gdGnhur9wICglZCBs4buHbmggY8OybiBs4bqhaSk6IgogCi0jOiB3dC1zdGF0dXMuYzoxMjkyCisjOiB3dC1zdGF0dXMuYzoxMzQxCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb1wiIHRvIHZpZXcgYW5kIGVkaXQpIgogbXNnc3RyICIgIChkw7luZyBs4buHbmggXCJnaXQgcmViYXNlIC0tZWRpdC10b2RvXCIgxJHhu4MgeGVtIHbDoCBz4butYSkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMDQKKyM6IHd0LXN0YXR1cy5jOjEzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmViYXNpbmcgYnJhbmNoICclcycgb24gJyVzJy4iCiBtc2dzdHIgIkLhuqFuIGhp4buHbiBuYXkgxJFhbmcgdGjhu7FjIGhp4buHbiB2aeG7h2Mg4oCccmViYXNl4oCdIG5ow6FuaCDigJwlc+KAnSB0csOqbiDigJwlc+KAnS4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzMDkKKyM6IHd0LXN0YXR1cy5jOjEzNTgKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSByZWJhc2luZy4iCiBtc2dzdHIgIkLhuqFuIGhp4buHbiBuYXkgxJFhbmcgdGjhu7FjIGhp4buHbiB2aeG7h2Mg4oCccmViYXNl4oCdICjigJxj4bqjaSB04buV4oCdKS4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzMjIKKyM6IHd0LXN0YXR1cy5jOjEzNzEKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCB0aGVuIHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiIgogIiAgKHPhu61hIGPDoWMgeHVuZyDEkeG7mXQgdsOgIHNhdSDEkcOzIGNo4bqheSBs4buHbmgg4oCcY+G6o2kgdOG7leKAnSBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKIAotIzogd3Qtc3RhdHVzLmM6MTMyNAorIzogd3Qtc3RhdHVzLmM6MTM3MwogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKIG1zZ3N0ciAiICAoZMO5bmcgbOG7h25oIOKAnGPhuqNpIHThu5XigJ0gXCJnaXQgcmViYXNlIC0tc2tpcFwiIMSR4buDIGLhu48gcXVhIGzhuqduIHbDoSBuw6B5KSIKIAotIzogd3Qtc3RhdHVzLmM6MTMyNgorIzogd3Qtc3RhdHVzLmM6MTM3NQogbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1hYm9ydFwiIHRvIGNoZWNrIG91dCB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiIgogIiAgKGTDuW5nIGzhu4duaCDigJxj4bqjaSB04buV4oCdIFwiZ2l0IHJlYmFzZSAtLWFib3J0XCIgxJHhu4MgY2hlY2stb3V0IG5ow6FuaCBuZ3V5w6puIHRo4buneSkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMzMKKyM6IHd0LXN0YXR1cy5jOjEzODIKIG1zZ2lkICIgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiIKICIgIChraGkgdOG6pXQgY+G6oyBjw6FjIHh1bmcgxJHhu5l0IMSRw6Mgc+G7rWEgeG9uZzogY2jhuqF5IGzhu4duaCDigJxj4bqjaSB04buV4oCdIFwiZ2l0IHJlYmFzZSAtLSIKICJjb250aW51ZVwiKSIKIAotIzogd3Qtc3RhdHVzLmM6MTMzNworIzogd3Qtc3RhdHVzLmM6MTM4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFyZSBjdXJyZW50bHkgc3BsaXR0aW5nIGEgY29tbWl0IHdoaWxlIHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgpAQCAtNjkyMiwxMzQgKzkxMDMsMTUwIEBACiAiQuG6oW4gaGnhu4duIG5heSDEkWFuZyB0aOG7sWMgaGnhu4duIHZp4buHYyBjaGlhIHTDoWNoIG3hu5l0IGzhuqduIGNodXnhu4NuIGdpYW8gdHJvbmcga2hpICIKICLEkWFuZyDigJxyZWJhc2XigJ0gbmjDoW5oIOKAnCVz4oCdIHRyw6puIOKAnCVz4oCdLiIKIAotIzogd3Qtc3RhdHVzLmM6MTM0MgorIzogd3Qtc3RhdHVzLmM6MTM5MQogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHNwbGl0dGluZyBhIGNvbW1pdCBkdXJpbmcgYSByZWJhc2UuIgogbXNnc3RyICIiCiAiQuG6oW4gaGnhu4duIHThuqFpIMSRYW5nIGPhuq90IMSRw7RpIG3hu5l0IGzhuqduIGNodXnhu4NuIGdpYW8gdHJvbmcga2hpIMSRYW5nIHRo4buxYyBoaeG7h24gdmnhu4djICIKICJyZWJhc2UuIgogCi0jOiB3dC1zdGF0dXMuYzoxMzQ1CisjOiB3dC1zdGF0dXMuYzoxMzk0CiBtc2dpZCAiICAoT25jZSB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IGlzIGNsZWFuLCBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiIKICIgIChN4buZdCBraGkgdGjGsCBt4bulYyBsw6BtIHZp4buHYyBj4bunYSBi4bqhbiDEkcOjIGfhu41uIGfDoG5nLCBjaOG6oXkgbOG7h25oIOKAnGPhuqNpIHThu5XigJ0gXCJnaXQgIgogInJlYmFzZSAtLWNvbnRpbnVlXCIpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzQ5CisjOiB3dC1zdGF0dXMuYzoxMzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGVkaXRpbmcgYSBjb21taXQgd2hpbGUgcmViYXNpbmcgYnJhbmNoICclcycgb24gJyVzJy4iCiBtc2dzdHIgIiIKICJC4bqhbiBoaeG7h24gbmF5IMSRYW5nIHRo4buxYyBoaeG7h24gdmnhu4djIHPhu61hIGNo4buvYSBt4buZdCBs4bqnbiBjaHV54buDbiBnaWFvIHRyb25nIGtoaSDEkWFuZyAiCiAicmViYXNlIG5ow6FuaCDigJwlc+KAnSB0csOqbiDigJwlc+KAnS4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTQKKyM6IHd0LXN0YXR1cy5jOjE0MDMKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBlZGl0aW5nIGEgY29tbWl0IGR1cmluZyBhIHJlYmFzZS4iCiBtc2dzdHIgIkLhuqFuIGhp4buHbiDEkWFuZyBz4butYSBt4buZdCBs4bqnbiBjaHV54buDbiBnaWFvIHRyb25nIGtoaSBi4bqhbiB0aOG7sWMgaGnhu4duIHJlYmFzZS4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzNTcKKyM6IHd0LXN0YXR1cy5jOjE0MDYKIG1zZ2lkICIgICh1c2UgXCJnaXQgY29tbWl0IC0tYW1lbmRcIiB0byBhbWVuZCB0aGUgY3VycmVudCBjb21taXQpIgogbXNnc3RyICIgIChkw7luZyBcImdpdCBjb21taXQgLS1hbWVuZFwiIMSR4buDIOKAnHR1IGLhu5XigJ0gbOG6p24gY2h1eeG7g24gZ2lhbyBoaeG7h24gdOG6oWkpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzU5CisjOiB3dC1zdGF0dXMuYzoxNDA4CiBtc2dpZCAiIgogIiAgKHVzZSBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiIG9uY2UgeW91IGFyZSBzYXRpc2ZpZWQgd2l0aCB5b3VyIGNoYW5nZXMpIgogbXNnc3RyICIiCiAiICAoY2jhuqF5IGzhu4duaCDigJxj4bqjaSB04buV4oCdIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIgbeG7mXQga2hpIGLhuqFuIGPhuqNtIHRo4bqleSBow6BpICIKICJsw7JuZyB24buBIG5o4buvbmcgdGhheSDEkeG7lWkgY+G7p2EgbcOsbmgpIgogCi0jOiB3dC1zdGF0dXMuYzoxMzY4CisjOiB3dC1zdGF0dXMuYzoxNDE5Cittc2dpZCAiQ2hlcnJ5LXBpY2sgY3VycmVudGx5IGluIHByb2dyZXNzLiIKK21zZ3N0ciAiQ2hlcnJ5LXBpY2sgaGnhu4duIHThuqFpIMSRYW5nIMSRxrDhu6NjIHRo4buxYyBoaeG7h24uIgorCisjOiB3dC1zdGF0dXMuYzoxNDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGNoZXJyeS1waWNraW5nIGNvbW1pdCAlcy4iCiBtc2dzdHIgIkLhuqFuIGhp4buHbiBuYXkgxJFhbmcgdGjhu7FjIGhp4buHbiB2aeG7h2MgY2hlcnJ5LXBpY2sgbOG6p24gY2h1eeG7g24gZ2lhbyAlcy4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzNzMKKyM6IHd0LXN0YXR1cy5jOjE0MjkKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiIgogIiAgKHPhu61hIGPDoWMgeHVuZyDEkeG7mXQgdsOgIHNhdSDEkcOzIGNo4bqheSBs4buHbmggXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM3NgorIzogd3Qtc3RhdHVzLmM6MTQzMgorbXNnaWQgIiAgKHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgdG8gY29udGludWUpIgorbXNnc3RyICIgIChjaOG6oXkgbOG7h25oIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiDEkeG7gyB0aeG6v3AgdOG7pWMpIgorCisjOiB3dC1zdGF0dXMuYzoxNDM1CiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCiBtc2dzdHIgIiIKICIgIChraGkgdOG6pXQgY+G6oyBjw6FjIHh1bmcgxJHhu5l0IMSRw6Mgc+G7rWEgeG9uZzogY2jhuqF5IGzhu4duaCBcImdpdCBjaGVycnktcGljayAtLSIKICJjb250aW51ZVwiKSIKIAotIzogd3Qtc3RhdHVzLmM6MTM3OAorIzogd3Qtc3RhdHVzLmM6MTQzNworbXNnaWQgIiAgKHVzZSBcImdpdCBjaGVycnktcGljayAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgorbXNnc3RyICIgIChkw7luZyBcImdpdCBjaGVycnktcGljayAtLXNraXBcIiDEkeG7gyBi4buPIHF1YSBtaeG6v25nIHbDoSBuw6B5KSIKKworIzogd3Qtc3RhdHVzLmM6MTQzOQogbXNnaWQgIiAgKHVzZSBcImdpdCBjaGVycnktcGljayAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSBjaGVycnktcGljayBvcGVyYXRpb24pIgogbXNnc3RyICIgIChkw7luZyBcImdpdCBjaGVycnktcGljayAtLWFib3J0XCIgxJHhu4MgaOG7p3kgYuG7jyB0aGFvIHTDoWMgY2hlcnJ5LXBpY2spIgogCi0jOiB3dC1zdGF0dXMuYzoxMzg2CisjOiB3dC1zdGF0dXMuYzoxNDQ5Cittc2dpZCAiUmV2ZXJ0IGN1cnJlbnRseSBpbiBwcm9ncmVzcy4iCittc2dzdHIgIkhvw6BuIG5ndXnDqm4gaGnhu4duIHThuqFpIMSRYW5nIHRo4buxYyBoaeG7h24uIgorCisjOiB3dC1zdGF0dXMuYzoxNDUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJldmVydGluZyBjb21taXQgJXMuIgogbXNnc3RyICJC4bqhbiBoaeG7h24gbmF5IMSRYW5nIHRo4buxYyBoaeG7h24gdGhhbyB0w6FjIGhvw6BuIG5ndXnDqm4gbOG6p24gY2h1eeG7g24gZ2lhbyDigJwlc+KAnS4iCiAKLSM6IHd0LXN0YXR1cy5jOjEzOTEKKyM6IHd0LXN0YXR1cy5jOjE0NTgKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCiBtc2dzdHIgIiAgKHPhu61hIGPDoWMgeHVuZyDEkeG7mXQgdsOgIHNhdSDEkcOzIGNo4bqheSBs4buHbmggXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzOTQKKyM6IHd0LXN0YXR1cy5jOjE0NjEKK21zZ2lkICIgIChydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIiB0byBjb250aW51ZSkiCittc2dzdHIgIiAgKGNo4bqheSBs4buHbmggXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIiDEkeG7gyB0aeG6v3AgdOG7pWMpIgorCisjOiB3dC1zdGF0dXMuYzoxNDY0CiBtc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIiCiAiICAoa2hpIHThuqV0IGPhuqMgY8OhYyB4dW5nIMSR4buZdCDEkcOjIHPhu61hIHhvbmc6IGNo4bqheSBs4buHbmggXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCiAKLSM6IHd0LXN0YXR1cy5jOjEzOTYKKyM6IHd0LXN0YXR1cy5jOjE0NjYKK21zZ2lkICIgICh1c2UgXCJnaXQgcmV2ZXJ0IC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCittc2dzdHIgIiAgKGTDuW5nIGzhu4duaCBcImdpdCByZXZlcnQgLS1za2lwXCIgxJHhu4MgYuG7jyBxdWEgbOG6p24gdsOhIG7DoHkpIgorCisjOiB3dC1zdGF0dXMuYzoxNDY4CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJldmVydCAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSByZXZlcnQgb3BlcmF0aW9uKSIKIG1zZ3N0ciAiICAoZMO5bmcgXCJnaXQgcmV2ZXJ0IC0tYWJvcnRcIiDEkeG7gyBo4buneSBi4buPIHRoYW8gdMOhYyBob8OgbiBuZ3V5w6puKSIKIAotIzogd3Qtc3RhdHVzLmM6MTQwNgorIzogd3Qtc3RhdHVzLmM6MTQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcsIHN0YXJ0ZWQgZnJvbSBicmFuY2ggJyVzJy4iCiBtc2dzdHIgIiIKICJC4bqhbiBoaeG7h24gbmF5IMSRYW5nIHRo4buxYyBoaeG7h24gdGhhbyB0w6FjIGRpIGNodXnhu4NuIG7hu61hIGLGsOG7m2MgKGJpc2VjdCksIGLhuq90IMSR4bqndSB04burICIKICJuaMOhbmgg4oCcJXPigJ0uIgogCi0jOiB3dC1zdGF0dXMuYzoxNDEwCisjOiB3dC1zdGF0dXMuYzoxNDgyCiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgYmlzZWN0aW5nLiIKIG1zZ3N0ciAiQuG6oW4gaGnhu4duIHThuqFpIMSRYW5nIHRo4buxYyBoaeG7h24gdmnhu4djIGJpc2VjdCAoZGkgY2h1eeG7g24gbuG7rWEgYsaw4bubYykuIgogCi0jOiB3dC1zdGF0dXMuYzoxNDEzCisjOiB3dC1zdGF0dXMuYzoxNDg1CiBtc2dpZCAiICAodXNlIFwiZ2l0IGJpc2VjdCByZXNldFwiIHRvIGdldCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBicmFuY2gpIgogbXNnc3RyICIgIChkw7luZyBcImdpdCBiaXNlY3QgcmVzZXRcIiDEkeG7gyBxdWF5IHRy4bufIGzhuqFpIG5ow6FuaCBuZ3V5w6puIHRo4buneSkiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MTEKKyM6IHd0LXN0YXR1cy5jOjE2OTQKIG1zZ2lkICJPbiBicmFuY2ggIgogbXNnc3RyICJUcsOqbiBuaMOhbmggIgogCi0jOiB3dC1zdGF0dXMuYzoxNjE4CisjOiB3dC1zdGF0dXMuYzoxNzAxCiBtc2dpZCAiaW50ZXJhY3RpdmUgcmViYXNlIGluIHByb2dyZXNzOyBvbnRvICIKIG1zZ3N0ciAicmViYXNlIOG7nyBjaOG6vyDEkeG7mSB0xrDGoW5nIHTDoWMgxJFhbmcgxJHGsOG7o2MgdGjhu7FjIGhp4buHbjsgbMOqbiB0csOqbiAiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MjAKKyM6IHd0LXN0YXR1cy5jOjE3MDMKIG1zZ2lkICJyZWJhc2UgaW4gcHJvZ3Jlc3M7IG9udG8gIgogbXNnc3RyICJyZWJhc2UgxJFhbmcgxJHGsOG7o2MgdGjhu7FjIGhp4buHbjogbMOqbiB0csOqbiAiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MjUKLW1zZ2lkICJIRUFEIGRldGFjaGVkIGF0ICIKLW1zZ3N0ciAiSEVBRCDEkcaw4bujYyB0w6FjaCBy4budaSB04bqhaSAiCi0KLSM6IHd0LXN0YXR1cy5jOjE2MjcKLW1zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgotbXNnc3RyICJIRUFEIMSRxrDhu6NjIHTDoWNoIHLhu51pIHThu6sgIgotCi0jOiB3dC1zdGF0dXMuYzoxNjMwCisjOiB3dC1zdGF0dXMuYzoxNzEzCiBtc2dpZCAiTm90IGN1cnJlbnRseSBvbiBhbnkgYnJhbmNoLiIKIG1zZ3N0ciAiSGnhu4duIHThuqFpIGNo4bqzbmcg4bufIG5ow6FuaCBuw6BvIGPhuqMuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjQ3CisjOiB3dC1zdGF0dXMuYzoxNzMwCiBtc2dpZCAiSW5pdGlhbCBjb21taXQiCiBtc2dzdHIgIkzhuqduIGNodXnhu4NuIGdpYW8ga2jhu59pIHThuqFvIgogCi0jOiB3dC1zdGF0dXMuYzoxNjQ4CisjOiB3dC1zdGF0dXMuYzoxNzMxCiBtc2dpZCAiTm8gY29tbWl0cyB5ZXQiCiBtc2dzdHIgIlbhuqtuIGNoxrBhIGNodXnhu4NuIGdpYW8iCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjIKKyM6IHd0LXN0YXR1cy5jOjE3NDUKIG1zZ2lkICJVbnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgIk5o4buvbmcgdOG6rXAgdGluIGNoxrBhIMSRxrDhu6NjIHRoZW8gZMO1aSIKIAotIzogd3Qtc3RhdHVzLmM6MTY2NAorIzogd3Qtc3RhdHVzLmM6MTc0NwogbXNnaWQgIklnbm9yZWQgZmlsZXMiCiBtc2dzdHIgIk5o4buvbmcgdOG6rXAgdGluIGLhu4sgbOG7nSDEkWkiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjgKKyM6IHd0LXN0YXR1cy5jOjE3NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGVudW1lcmF0ZSB1bnRyYWNrZWQgZmlsZXMuICdzdGF0dXMgLXVubydcbiIKQEAgLTcwNjEsMzIgKzkyNTgsMzIgQEAKICJjw7MgbOG6vSBsw6BtIG7DsyBuaGFuaCBoxqFuLCBuaMawbmcgYuG6oW4gcGjhuqNpIGPhuqluIHRo4bqtbiDEkeG7q25nIHF1w6puIG3DrG5oIHBo4bqjaVxuIgogInThu7EgdGjDqm0gY8OhYyB04bqtcCB0aW4gbeG7m2kgKHhlbSDigJxnaXQgaGVscCBzdGF0dXPigJ0uLiIKIAotIzogd3Qtc3RhdHVzLmM6MTY3NAorIzogd3Qtc3RhdHVzLmM6MTc1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJVbnRyYWNrZWQgZmlsZXMgbm90IGxpc3RlZCVzIgogbXNnc3RyICJOaOG7r25nIHThuq1wIHRpbiBjaMawYSDEkcaw4bujYyB0aGVvIGTDtWkga2jDtG5nIMSRxrDhu6NjIGxp4buHdCBrw6ogcmEgJXMiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NzYKKyM6IHd0LXN0YXR1cy5jOjE3NTkKIG1zZ2lkICIgKHVzZSAtdSBvcHRpb24gdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpIgogbXNnc3RyICIgKGTDuW5nIHTDuXkgY2jhu41uIC11IMSR4buDIGhp4buDbiB0aOG7iyBjw6FjIHThuq1wIHRpbiBjaMawYSDEkcaw4bujYyB0aGVvIGTDtWkpIgogCi0jOiB3dC1zdGF0dXMuYzoxNjgyCisjOiB3dC1zdGF0dXMuYzoxNzY1CiBtc2dpZCAiTm8gY2hhbmdlcyIKIG1zZ3N0ciAiS2jDtG5nIGPDsyB0aGF5IMSR4buVaSBuw6BvIgogCi0jOiB3dC1zdGF0dXMuYzoxNjg3CisjOiB3dC1zdGF0dXMuYzoxNzcwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGNoYW5nZXMgYWRkZWQgdG8gY29tbWl0ICh1c2UgXCJnaXQgYWRkXCIgYW5kL29yIFwiZ2l0IGNvbW1pdCAtYVwiKVxuIgogbXNnc3RyICIiCiAia2jDtG5nIGPDsyB0aGF5IMSR4buVaSBuw6BvIMSRxrDhu6NjIHRow6ptIHbDoG8gxJHhu4MgY2h1eeG7g24gZ2lhbyAoZMO5bmcgXCJnaXQgYWRkXCIgdsOgL2hv4bq3YyAiCiAiXCJnaXQgY29tbWl0IC1hXCIpXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTAKKyM6IHd0LXN0YXR1cy5jOjE3NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXRcbiIKIG1zZ3N0ciAia2jDtG5nIGPDsyB0aGF5IMSR4buVaSBuw6BvIMSRxrDhu6NjIHRow6ptIHbDoG8gxJHhu4MgY2h1eeG7g24gZ2lhb1xuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjkzCisjOiB3dC1zdGF0dXMuYzoxNzc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJub3RoaW5nIGFkZGVkIHRvIGNvbW1pdCBidXQgdW50cmFja2VkIGZpbGVzIHByZXNlbnQgKHVzZSBcImdpdCBhZGRcIiB0byAiCkBAIC03MDk1LDIwMCArOTI5MiwyMDkgQEAKICJraMO0bmcgY8OzIGfDrCDEkcaw4bujYyB0aMOqbSB2w6BvIGzhuqduIGNodXnhu4NuIGdpYW8gbmjGsG5nIGPDsyBuaOG7r25nIHThuq1wIHRpbiBjaMawYSDEkcaw4bujYyAiCiAidGhlbyBkw7VpIGhp4buHbiBkaeG7h24gKGTDuW5nIFwiZ2l0IGFkZFwiIMSR4buDIMSRxrBhIHbDoG8gdGhlbyBkw7VpKVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjk2CisjOiB3dC1zdGF0dXMuYzoxNzc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgYWRkZWQgdG8gY29tbWl0IGJ1dCB1bnRyYWNrZWQgZmlsZXMgcHJlc2VudFxuIgogbXNnc3RyICIiCiAia2jDtG5nIGPDsyBnw6wgxJHGsOG7o2MgdGjDqm0gdsOgbyBs4bqnbiBjaHV54buDbiBnaWFvIG5oxrBuZyBjw7Mgbmjhu69uZyB04bqtcCB0aW4gY2jGsGEgxJHGsOG7o2MgIgogInRoZW8gZMO1aSBoaeG7h24gZGnhu4duXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTkKKyM6IHd0LXN0YXR1cy5jOjE3ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXQgKGNyZWF0ZS9jb3B5IGZpbGVzIGFuZCB1c2UgXCJnaXQgYWRkXCIgdG8gdHJhY2spXG4iCiBtc2dzdHIgIiIKICJraMO0bmcgY8OzIGfDrCDEkeG7gyBjaHV54buDbiBnaWFvICh04bqhby9zYW8tY2jDqXAgY8OhYyB04bqtcCB0aW4gdsOgIGTDuW5nIFwiZ2l0IGFkZFwiIMSR4buDICIKICLEkcawYSB2w6BvIHRoZW8gZMO1aSlcbiIKIAotIzogd3Qtc3RhdHVzLmM6MTcwMiB3dC1zdGF0dXMuYzoxNzA3CisjOiB3dC1zdGF0dXMuYzoxNzg1IHd0LXN0YXR1cy5jOjE3OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90aGluZyB0byBjb21taXRcbiIKIG1zZ3N0ciAia2jDtG5nIGPDsyBnw6wgxJHhu4MgY2h1eeG7g24gZ2lhb1xuIgogCi0jOiB3dC1zdGF0dXMuYzoxNzA1CisjOiB3dC1zdGF0dXMuYzoxNzg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0ICh1c2UgLXUgdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpXG4iCiBtc2dzdHIgIiIKICJraMO0bmcgY8OzIGfDrCDEkeG7gyBjaHV54buDbiBnaWFvIChkw7luZyAtdSB4ZW0gY8OhYyB04bqtcCB0aW4gY2jGsGEgxJHGsOG7o2MgdGhlbyBkw7VpKVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNzA5CisjOiB3dC1zdGF0dXMuYzoxNzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0LCB3b3JraW5nIHRyZWUgY2xlYW5cbiIKIG1zZ3N0ciAia2jDtG5nIGPDsyBnw6wgxJHhu4MgY2h1eeG7g24gZ2lhbywgdGjGsCBt4bulYyBsw6BtIHZp4buHYyBz4bqhY2ggc+G6vVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxODIyCisjOiB3dC1zdGF0dXMuYzoxOTA1CiBtc2dpZCAiTm8gY29tbWl0cyB5ZXQgb24gIgotbXNnc3RyICJW4bqrbiBraMO0bmcgdGjhu7FjIGhp4buHbiBs4buHbmggY2h1eeG7g24gZ2lhbyBuw6BvIgorbXNnc3RyICJW4bqrbiBraMO0bmcgdGjhu7FjIGhp4buHbiBs4buHbmggY2h1eeG7g24gZ2lhbyBuw6BvICIKIAotIzogd3Qtc3RhdHVzLmM6MTgyNgorIzogd3Qtc3RhdHVzLmM6MTkwOQogbXNnaWQgIkhFQUQgKG5vIGJyYW5jaCkiCiBtc2dzdHIgIkhFQUQgKGtow7RuZyBuaMOhbmgpIgogCi0jOiB3dC1zdGF0dXMuYzoxODU3CisjOiB3dC1zdGF0dXMuYzoxOTQwCiBtc2dpZCAiZGlmZmVyZW50IgogbXNnc3RyICJraMOhYyIKIAotIzogd3Qtc3RhdHVzLmM6MTg1OSB3dC1zdGF0dXMuYzoxODY3CisjOiB3dC1zdGF0dXMuYzoxOTQyIHd0LXN0YXR1cy5jOjE5NTAKIG1zZ2lkICJiZWhpbmQgIgogbXNnc3RyICLEkeG6sW5nIHNhdSAiCiAKLSM6IHd0LXN0YXR1cy5jOjE4NjIgd3Qtc3RhdHVzLmM6MTg2NQorIzogd3Qtc3RhdHVzLmM6MTk0NSB3dC1zdGF0dXMuYzoxOTQ4CiBtc2dpZCAiYWhlYWQgIgogbXNnc3RyICJwaMOtYSB0csaw4bubYyAiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGUgYWN0aW9uIGlzIGUuZy4gInB1bGwgd2l0aCByZWJhc2UiCi0jOiB3dC1zdGF0dXMuYzoyMzc0CisjOiB3dC1zdGF0dXMuYzoyNDcwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCAlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgImtow7RuZyB0aOG7gyAlczogQuG6oW4gY8OzIGPDoWMgdGhheSDEkeG7lWkgY2jGsGEgxJHGsOG7o2MgxJHGsGEgbMOqbiBi4buHIHBow7NuZy4iCiAKLSM6IHd0LXN0YXR1cy5jOjIzODAKKyM6IHd0LXN0YXR1cy5jOjI0NzYKIG1zZ2lkICJhZGRpdGlvbmFsbHksIHlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICJ0aMOqbSB2w6BvIMSRw7MsIGLhuqNuZyBt4bulYyBs4bulYyBj4bunYSBi4bqhbiBjw7MgY2jhu6lhIGPDoWMgdGhheSDEkeG7lWkgY2jGsGEgxJHGsOG7o2MgY2h1eeG7g24gZ2lhby4iCiAKLSM6IHd0LXN0YXR1cy5jOjIzODIKKyM6IHd0LXN0YXR1cy5jOjI0NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90ICVzOiBZb3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAia2jDtG5nIHRo4buDICVzOiBN4bulYyBs4bulYyBj4bunYSBi4bqhbiBjw7MgY2jhu6lhIGPDoWMgdGhheSDEkeG7lWkgY2jGsGEgxJHGsOG7o2MgY2h1eeG7g24gZ2lhby4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQKLW1zZ2lkICJnaXQgYWRkIFs8b3B0aW9ucz5dIFstLV0gPHBhdGhzcGVjPi4uLiIKLW1zZ3N0ciAiZ2l0IGFkZCBbPGPDoWMtdMO5eS1jaOG7jW4+XSBbLS1dICA8cGF0aHNwZWM+4oCmIgorIzogY29tcGF0L3ByZWNvbXBvc2VfdXRmOC5jOjU4IGJ1aWx0aW4vY2xvbmUuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHVubGluayAnJXMnIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgYuG7jyBsacOqbiBr4bq/dCAodW5saW5rKSDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9hZGQuYzo4MworIzogYnVpbHRpbi9hZGQuYzoyNgorbXNnaWQgImdpdCBhZGQgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgorbXNnc3RyICJnaXQgYWRkIFs8Y8OhYyB0w7l5IGNo4buNbj5dIFstLV0gIDxwYXRoc3BlYz7igKYiCisKKyM6IGJ1aWx0aW4vYWRkLmM6ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBkaWZmIHN0YXR1cyAlYyIKIG1zZ3N0ciAidHLhuqFuZyB0aMOhaSBs4buHbmggZGlmZiBraMO0bmcgbmjGsCBtb25nIMSR4bujaSAlYyIKIAotIzogYnVpbHRpbi9hZGQuYzo4OCBidWlsdGluL2NvbW1pdC5jOjI4NAorIzogYnVpbHRpbi9hZGQuYzo5MyBidWlsdGluL2NvbW1pdC5jOjI4OAogbXNnaWQgInVwZGF0aW5nIGZpbGVzIGZhaWxlZCIKLW1zZ3N0ciAiQ+G6rXAgbmjhuq10IHThuq1wIHRpbiBn4bq3cCBs4buXaSIKK21zZ3N0ciAiY+G6rXAgbmjhuq10IHThuq1wIHRpbiBn4bq3cCBs4buXaSIKIAotIzogYnVpbHRpbi9hZGQuYzo5OAorIzogYnVpbHRpbi9hZGQuYzoxMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3ZlICclcydcbiIKIG1zZ3N0ciAiZ+G7oSBi4buPIOKAnCVz4oCdXG4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MTczCisjOiBidWlsdGluL2FkZC5jOjE3OAogbXNnaWQgIlVuc3RhZ2VkIGNoYW5nZXMgYWZ0ZXIgcmVmcmVzaGluZyB0aGUgaW5kZXg6IgogbXNnc3RyICIiCiAixJDGsGEgcmEga2jhu49pIGLhu4cgcGjDs25nIGPDoWMgdGhheSDEkeG7lWkgc2F1IGtoaSBsw6BtIHTGsMahaSBt4bubaSBs4bqhaSBi4bqjbmcgbeG7pWMgbOG7pWM6IgogCi0jOiBidWlsdGluL2FkZC5jOjIzMyBidWlsdGluL3Jldi1wYXJzZS5jOjg5NQorIzogYnVpbHRpbi9hZGQuYzoyNjYgYnVpbHRpbi9yZXYtcGFyc2UuYzo4OTkKIG1zZ2lkICJDb3VsZCBub3QgcmVhZCB0aGUgaW5kZXgiCiBtc2dzdHIgIktow7RuZyB0aOG7gyDEkeG7jWMgYuG6o25nIG3hu6VjIGzhu6VjIgogCi0jOiBidWlsdGluL2FkZC5jOjI0NAorIzogYnVpbHRpbi9hZGQuYzoyNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZy4iCiBtc2dzdHIgIktow7RuZyB0aOG7gyBt4bufIOKAnCVz4oCdIMSR4buDIGdoaS4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQ4CisjOiBidWlsdGluL2FkZC5jOjI4MQogbXNnaWQgIkNvdWxkIG5vdCB3cml0ZSBwYXRjaCIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIGdoaSByYSBtaeG6v25nIHbDoSIKIAotIzogYnVpbHRpbi9hZGQuYzoyNTEKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg0CiBtc2dpZCAiZWRpdGluZyBwYXRjaCBmYWlsZWQiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBz4butYSBtaeG6v25nIHbDoSIKIAotIzogYnVpbHRpbi9hZGQuYzoyNTQKKyM6IGJ1aWx0aW4vYWRkLmM6Mjg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzdGF0ICclcyciCiBtc2dzdHIgIktow7RuZyB0aOG7gyBs4bqleSB0aMO0bmcgdGluIHRo4buRbmcga8OqIHbhu4Eg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjU2CisjOiBidWlsdGluL2FkZC5jOjI4OQogbXNnaWQgIkVtcHR5IHBhdGNoLiBBYm9ydGVkLiIKIG1zZ3N0ciAiTWnhur9uZyB2w6EgdHLhu5FuZyBy4buXbmcuIE7Dqm4gYuG7jyBxdWEuIgogCi0jOiBidWlsdGluL2FkZC5jOjI2MQorIzogYnVpbHRpbi9hZGQuYzoyOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICclcyciCiBtc2dzdHIgIktow7RuZyB0aOG7gyDDoXAgZOG7pW5nIG1p4bq/bmcgdsOhIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL2FkZC5jOjI2OQorIzogYnVpbHRpbi9hZGQuYzozMDIKIG1zZ2lkICJUaGUgZm9sbG93aW5nIHBhdGhzIGFyZSBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCiBtc2dzdHIgIiIKICJDw6FjIMSRxrDhu51uZyBk4bqrbiB0aGVvIHNhdSDEkcOieSBz4bq9IGLhu4sgbOG7nSDEkWkgYuG7n2kgbeG7mXQgdHJvbmcgY8OhYyB04bqtcCB0aW4gLmdpdGlnbm9yZSAiCiAiY+G7p2EgYuG6oW46XG4iCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjg5IGJ1aWx0aW4vY2xlYW4uYzo5MDcgYnVpbHRpbi9mZXRjaC5jOjEzNyBidWlsdGluL212LmM6MTIzCi0jOiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU2IGJ1aWx0aW4vcHVsbC5jOjIxMyBidWlsdGluL3B1c2guYzo1NTcKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM0NSBidWlsdGluL3JtLmM6MjQwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY1CisjOiBidWlsdGluL2FkZC5jOjMyMiBidWlsdGluL2NsZWFuLmM6OTEwIGJ1aWx0aW4vZmV0Y2guYzoxNjMgYnVpbHRpbi9tdi5jOjEyNAorIzogYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1NiBidWlsdGluL3B1bGwuYzoyMDMgYnVpbHRpbi9wdXNoLmM6NTQ4CisjOiBidWlsdGluL3JlbW90ZS5jOjE0MjEgYnVpbHRpbi9ybS5jOjI0MiBidWlsdGluL3NlbmQtcGFjay5jOjE2NQogbXNnaWQgImRyeSBydW4iCiBtc2dzdHIgImNo4bqheSB0aOG7rSIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTIKKyM6IGJ1aWx0aW4vYWRkLmM6MzI1CiBtc2dpZCAiaW50ZXJhY3RpdmUgcGlja2luZyIKIG1zZ3N0ciAic+G7rWEgYuG6sW5nIGPDoWNoIHTGsMahbmcgdMOhYyIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTMgYnVpbHRpbi9jaGVja291dC5jOjEyNTggYnVpbHRpbi9yZXNldC5jOjMwNQorIzogYnVpbHRpbi9hZGQuYzozMjYgYnVpbHRpbi9jaGVja291dC5jOjE1MTEgYnVpbHRpbi9yZXNldC5jOjMwNwogbXNnaWQgInNlbGVjdCBodW5rcyBpbnRlcmFjdGl2ZWx5IgogbXNnc3RyICJjaOG7jW4g4oCcaHVua3PigJ0gdGhlbyBraeG7g3UgdMawxqFuZyB0w6FjIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NAorIzogYnVpbHRpbi9hZGQuYzozMjcKIG1zZ2lkICJlZGl0IGN1cnJlbnQgZGlmZiBhbmQgYXBwbHkiCiBtc2dzdHIgInPhu61hIGRpZmYgaGnhu4duIG5heSB2w6Agw6FwIGThu6VuZyBuw7MiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk1CisjOiBidWlsdGluL2FkZC5jOjMyOAogbXNnaWQgImFsbG93IGFkZGluZyBvdGhlcndpc2UgaWdub3JlZCBmaWxlcyIKIG1zZ3N0ciAiY2hvIHBow6lwIHRow6ptIGPDoWMgdOG6rXAgdGluIGLhu4sgYuG7jyBxdWEga2jDoWMiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk2CisjOiBidWlsdGluL2FkZC5jOjMyOQogbXNnaWQgInVwZGF0ZSB0cmFja2VkIGZpbGVzIgogbXNnc3RyICJj4bqtcCBuaOG6rXQgY8OhYyB04bqtcCB0aW4gxJHGsOG7o2MgdGhlbyBkw7VpIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NworIzogYnVpbHRpbi9hZGQuYzozMzAKIG1zZ2lkICJyZW5vcm1hbGl6ZSBFT0wgb2YgdHJhY2tlZCBmaWxlcyAoaW1wbGllcyAtdSkiCiBtc2dzdHIgInRoxrDhu51uZyBow7NhIGzhuqFpIEVPTCBj4bunYSBjw6FjIHThuq1wIHRpbiDEkcaw4bujYyB0aGVvIGTDtWkgKMO9IGzDoCAtdSkiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk4CisjOiBidWlsdGluL2FkZC5jOjMzMQogbXNnaWQgInJlY29yZCBvbmx5IHRoZSBmYWN0IHRoYXQgdGhlIHBhdGggd2lsbCBiZSBhZGRlZCBsYXRlciIKIG1zZ3N0ciAiY2jhu4kgZ2hpIGzhuqFpIHPhu7Egdmnhu4djIG3DoCDEkcaw4budbmcgZOG6q24gc+G6vSDEkcaw4bujYyB0aMOqbSB2w6BvIHNhdSIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTkKKyM6IGJ1aWx0aW4vYWRkLmM6MzMyCiBtc2dpZCAiYWRkIGNoYW5nZXMgZnJvbSBhbGwgdHJhY2tlZCBhbmQgdW50cmFja2VkIGZpbGVzIgogbXNnc3RyICIiCiAidGjDqm0gY8OhYyB0aGF5IMSR4buVaSB04burIHThuqV0IGPhuqMgY8OhYyB04bqtcCB0aW4gY8OzIGPFqW5nIG5oxrAga2jDtG5nIMSRxrDhu6NjIHRoZW8gZMO1aSBk4bqldSAiCiAiduG6v3QiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzAyCisjOiBidWlsdGluL2FkZC5jOjMzNQogbXNnaWQgImlnbm9yZSBwYXRocyByZW1vdmVkIGluIHRoZSB3b3JraW5nIHRyZWUgKHNhbWUgYXMgLS1uby1hbGwpIgogbXNnc3RyICIiCiAibOG7nSDEkWkgY8OhYyDEkcaw4budbmcgZOG6q24gYuG7iyBn4buhIGLhu48gdHJvbmcgY8OieSB0aMawIG3hu6VjIGzDoG0gdmnhu4djIChnaeG7kW5nIHbhu5tpIC0tbm8tYWxsKSIKIAotIzogYnVpbHRpbi9hZGQuYzozMDQKKyM6IGJ1aWx0aW4vYWRkLmM6MzM3CiBtc2dpZCAiZG9uJ3QgYWRkLCBvbmx5IHJlZnJlc2ggdGhlIGluZGV4IgogbXNnc3RyICJraMO0bmcgdGjDqm0sIGNo4buJIGzDoG0gdMawxqFpIG3hu5tpIGLhuqNuZyBt4bulYyBs4bulYyIKIAotIzogYnVpbHRpbi9hZGQuYzozMDUKKyM6IGJ1aWx0aW4vYWRkLmM6MzM4CiBtc2dpZCAianVzdCBza2lwIGZpbGVzIHdoaWNoIGNhbm5vdCBiZSBhZGRlZCBiZWNhdXNlIG9mIGVycm9ycyIKIG1zZ3N0ciAiY2hpZSBi4buPIHF1YSBuaOG7r25nIHThuq1wIHRpbiBtw6AgbsOzIGtow7RuZyB0aOG7gyDEkcaw4bujYyB0aMOqbSB2w6BvIGLhu59pIHbDrCBn4bq3cCBs4buXaSIKIAotIzogYnVpbHRpbi9hZGQuYzozMDYKKyM6IGJ1aWx0aW4vYWRkLmM6MzM5CiBtc2dpZCAiY2hlY2sgaWYgLSBldmVuIG1pc3NpbmcgLSBmaWxlcyBhcmUgaWdub3JlZCBpbiBkcnkgcnVuIgogbXNnc3RyICIiCiAia2nhu4NtIHRyYSB4ZW0gLSB0aOG6rW0gY2jDrSB0aGnhur91IC0gdOG6rXAgdGluIGLhu4sgYuG7jyBxdWEgdHJvbmcgcXXDoSB0csOsbmggY2jhuqF5IHRo4butIgogCi0jOiBidWlsdGluL2FkZC5jOjMwOCBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5MAorIzogYnVpbHRpbi9hZGQuYzozNDEgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA0CiBtc2dpZCAib3ZlcnJpZGUgdGhlIGV4ZWN1dGFibGUgYml0IG9mIHRoZSBsaXN0ZWQgZmlsZXMiCiBtc2dzdHIgImdoaSDEkcOoIGzDqm4gYsOtdCB0aGkgaMOgbmggY+G7p2EgY8OhYyB04bqtcCB0aW4gxJHGsOG7o2MgbGnhu4d0IGvDqiIKIAotIzogYnVpbHRpbi9hZGQuYzozMTAKKyM6IGJ1aWx0aW4vYWRkLmM6MzQzCiBtc2dpZCAid2FybiB3aGVuIGFkZGluZyBhbiBlbWJlZGRlZCByZXBvc2l0b3J5IgogbXNnc3RyICJj4bqjbmggYsOhbyBraGkgdGjDqm0gbeG7mXQga2hvIG5ow7puZyIKIAotIzogYnVpbHRpbi9hZGQuYzozMjUKKyM6IGJ1aWx0aW4vYWRkLmM6MzQ1Cittc2dpZCAiYmFja2VuZCBmb3IgYGdpdCBzdGFzaCAtcGAiCittc2dzdHIgIuG7qW5nIGThu6VuZyBjaOG6oXkgcGjDrWEgc2F1IGNobyAnZ2l0IHN0YXNoIC1wJyIKKworIzogYnVpbHRpbi9hZGQuYzozNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSd2ZSBhZGRlZCBhbm90aGVyIGdpdCByZXBvc2l0b3J5IGluc2lkZSB5b3VyIGN1cnJlbnQgcmVwb3NpdG9yeS5cbiIKQEAgLTczMTksMTUwICs5NTI1LDE3NCBAQAogIlxuIgogIlhlbSBcImdpdCBoZWxwIHN1Ym1vZHVsZVwiIMSR4buDIGJp4bq/dCB0aMOqbSBjaGkgdGnhur90LiIKIAotIzogYnVpbHRpbi9hZGQuYzozNTMKKyM6IGJ1aWx0aW4vYWRkLmM6MzkxCiAjLCBjLWZvcm1hdAogbXNnaWQgImFkZGluZyBlbWJlZGRlZCBnaXQgcmVwb3NpdG9yeTogJXMiCiBtc2dzdHIgInRow6ptIGPhuqduIG3hu5l0IGtobyBnaXQgbmjDum5nOiAlcyIKIAotIzogYnVpbHRpbi9hZGQuYzozNzEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgdGhlbS5cbiIKLW1zZ3N0ciAiU+G7rSBk4bulbmcgdMO5eSBjaOG7jW4gLWYgbuG6v3UgYuG6oW4gdGjhu7FjIHPhu7EgbXXhu5FuIHRow6ptIGNow7puZyB2w6BvLlxuIgorIzogYnVpbHRpbi9hZGQuYzo0MTAKK21zZ2lkICIiCisiVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgdGhlbS5cbiIKKyJUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnkgcnVubmluZ1xuIgorIlwiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkSWdub3JlZEZpbGUgZmFsc2VcIiIKK21zZ3N0ciAiIgorIlPhu60gZOG7pW5nIC1mIG7hur91IGLhuqFuIHRo4buxYyBz4buxIG114buRbiB0aMOqbSBjaMO6bmcuXG4iCisiVOG6r3QgdGjDtG5nIGLDoW8gbsOgeSBi4bqxbmcgY8OhY2ggY2jhuqF5IGzhu4duaFxuIgorIlwiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkSWdub3JlZEZpbGUgZmFsc2VcIiIKIAotIzogYnVpbHRpbi9hZGQuYzozNzkKKyM6IGJ1aWx0aW4vYWRkLmM6NDE5CiBtc2dpZCAiYWRkaW5nIGZpbGVzIGZhaWxlZCIKIG1zZ3N0ciAidGjDqm0gdOG6rXAgdGluIGfhurdwIGzhu5dpIgogCi0jOiBidWlsdGluL2FkZC5jOjQxNworIzogYnVpbHRpbi9hZGQuYzo0NDcgYnVpbHRpbi9jb21taXQuYzozNDgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWludGVyYWN0aXZlLy0tcGF0Y2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIHh1bmcga2jhuq9jIHbhu5tpIC0taW50ZXJhY3RpdmUvLS1wYXRjaCIKKworIzogYnVpbHRpbi9hZGQuYzo0NjQKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWVkaXQiCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIHh1bmcga2jhuq9jIHbhu5tpIC0tZWRpdCIKKworIzogYnVpbHRpbi9hZGQuYzo0NzYKIG1zZ2lkICItQSBhbmQgLXUgYXJlIG11dHVhbGx5IGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLUEgdsOgIC11IHh1bmcga2jhuq9jIG5oYXUiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDI0CisjOiBidWlsdGluL2FkZC5jOjQ3OQogbXNnaWQgIk9wdGlvbiAtLWlnbm9yZS1taXNzaW5nIGNhbiBvbmx5IGJlIHVzZWQgdG9nZXRoZXIgd2l0aCAtLWRyeS1ydW4iCiBtc2dzdHIgIlTDuXkgY2jhu41uIC0taWdub3JlLW1pc3NpbmcgY2jhu4kgY8OzIHRo4buDIMSRxrDhu6NjIGTDuW5nIGPDuW5nIHbhu5tpIC0tZHJ5LXJ1biIKIAotIzogYnVpbHRpbi9hZGQuYzo0MjgKKyM6IGJ1aWx0aW4vYWRkLmM6NDgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIi0tY2htb2QgcGFyYW0gJyVzJyBtdXN0IGJlIGVpdGhlciAteCBvciAreCIKIG1zZ3N0ciAiLS1jaG1vZCB0aGFtIHPhu5Eg4oCcJXPigJ0gcGjhuqNpIGhv4bq3YyBsw6AgLXggaGF5ICt4IgogCi0jOiBidWlsdGluL2FkZC5jOjQ0MworIzogYnVpbHRpbi9hZGQuYzo1MDEgYnVpbHRpbi9jaGVja291dC5jOjE2NzUgYnVpbHRpbi9jb21taXQuYzozNTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMjcgYnVpbHRpbi9ybS5jOjI3MiBidWlsdGluL3N0YXNoLmM6MTUwOQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgeHVuZyBraOG6r2MgduG7m2kgY8OhYyB0aGFtIHPhu5EgxJHhurdjIHThuqMgxJHGsOG7nW5nIGThuqtuIgorCisjOiBidWlsdGluL2FkZC5jOjUwOCBidWlsdGluL2NoZWNrb3V0LmM6MTY4NyBidWlsdGluL2NvbW1pdC5jOjM2MAorIzogYnVpbHRpbi9yZXNldC5jOjMzMyBidWlsdGluL3JtLmM6Mjc4IGJ1aWx0aW4vc3Rhc2guYzoxNTE1Cittc2dpZCAiLS1wYXRoc3BlYy1maWxlLW51bCByZXF1aXJlcyAtLXBhdGhzcGVjLWZyb20tZmlsZSIKK21zZ3N0ciAiLS1wYXRoc3BlYy1maWxlLW51bCBj4bqnbiAtLXBhdGhzcGVjLWZyb20tZmlsZSIKKworIzogYnVpbHRpbi9hZGQuYzo1MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90aGluZyBzcGVjaWZpZWQsIG5vdGhpbmcgYWRkZWQuXG4iCiBtc2dzdHIgIktow7RuZyBjw7MgZ8OsIMSRxrDhu6NjIGNo4buJIHJhLCBraMO0bmcgY8OzIGfDrCDEkcaw4bujYyB0aMOqbSB2w6BvLlxuIgogCi0jOiBidWlsdGluL2FkZC5jOjQ0NAotIywgYy1mb3JtYXQKLW1zZ2lkICJNYXliZSB5b3Ugd2FudGVkIHRvIHNheSAnZ2l0IGFkZCAuJz9cbiIKLW1zZ3N0ciAiQ8OzIGzhur0gw70gYuG6oW4gbMOgIOKAnGdpdCBhZGQgLuKAnSBwaOG6o2kga2jDtG5nP1xuIgorIzogYnVpbHRpbi9hZGQuYzo1MTQKK21zZ2lkICIiCisiTWF5YmUgeW91IHdhbnRlZCB0byBzYXkgJ2dpdCBhZGQgLic/XG4iCisiVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5IHJ1bm5pbmdcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZEVtcHR5UGF0aHNwZWMgZmFsc2VcIiIKK21zZ3N0ciAiIgorIkPDsyBs4bq9IGLhuqFuIG114buRbiBjaOG6oXkgJ2dpdCBhZGQgLic/XG4iCisiVOG6r3QgdGjDtG5nIGLDoW8gbsOgeSBi4bqxbmcgY8OhY2ggY2jhuqF5IGzhu4duaFxuIgorIlwiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkRW1wdHlQYXRoc3BlYyBmYWxzZVwiIgogCi0jOiBidWlsdGluL2FtLmM6MzYzCisjOiBidWlsdGluL2FtLmM6MzUyCiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGF1dGhvciBzY3JpcHQiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBwaMOibiB0w61jaCBjw7ogcGjDoXAgdsSDbiBs4buHbmggdMOhYyBnaeG6oyIKIAotIzogYnVpbHRpbi9hbS5jOjQ0NworIzogYnVpbHRpbi9hbS5jOjQzNgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIHdhcyBkZWxldGVkIGJ5IHRoZSBhcHBseXBhdGNoLW1zZyBob29rIgogbXNnc3RyICLigJwlc+KAnSBi4buLIHjDs2EgYuG7n2kgbcOzYyBhcHBseXBhdGNoLW1zZyIKIAotIzogYnVpbHRpbi9hbS5jOjQ4OAorIzogYnVpbHRpbi9hbS5jOjQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJNYWxmb3JtZWQgaW5wdXQgbGluZTogJyVzJy4iCiBtc2dzdHIgIkTDsm5nIMSR4bqndSB2w6BvIGThu4sgaMOsbmg6IOKAnCVz4oCdLiIKIAotIzogYnVpbHRpbi9hbS5jOjUyNQorIzogYnVpbHRpbi9hbS5jOjUxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY29weSBub3RlcyBmcm9tICclcycgdG8gJyVzJyIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIHNhbyBjaMOpcCBnaGkgY2jDuiAobm90ZSkgdOG7qyDigJwlc+KAnSB04bubaSDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9hbS5jOjU1MQorIzogYnVpbHRpbi9hbS5jOjU0MgogbXNnaWQgImZzZWVrIGZhaWxlZCIKIG1zZ3N0ciAiZnNlZWsgZ+G6t3AgbOG7l2kiCiAKLSM6IGJ1aWx0aW4vYW0uYzo3MzkKKyM6IGJ1aWx0aW4vYW0uYzo3MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHBhdGNoICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBwaMOibiB0w61jaCBjw7ogcGjDoXAg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vYW0uYzo4MDQKKyM6IGJ1aWx0aW4vYW0uYzo3OTUKIG1zZ2lkICJPbmx5IG9uZSBTdEdJVCBwYXRjaCBzZXJpZXMgY2FuIGJlIGFwcGxpZWQgYXQgb25jZSIKIG1zZ3N0ciAiQ2jhu4kgY8OzIG3hu5l0IHPDqi1yaSBtaeG6v25nIHbDoSBTdEdJVCDEkcaw4bujYyDDoXAgZOG7pW5nIG3hu5l0IGzDumMiCiAKLSM6IGJ1aWx0aW4vYW0uYzo4NTIKKyM6IGJ1aWx0aW4vYW0uYzo4NDMKIG1zZ2lkICJpbnZhbGlkIHRpbWVzdGFtcCIKIG1zZ3N0ciAiZOG6pXUgdGjhu51pIGdpYW4ga2jDtG5nIGjhu6NwIGzhu4ciCiAKLSM6IGJ1aWx0aW4vYW0uYzo4NTcgYnVpbHRpbi9hbS5jOjg2OQorIzogYnVpbHRpbi9hbS5jOjg0OCBidWlsdGluL2FtLmM6ODYwCiBtc2dpZCAiaW52YWxpZCBEYXRlIGxpbmUiCiBtc2dzdHIgImTDsm5nIE5nw6B5IHRow6FuZyBraMO0bmcgaOG7o3AgbOG7hyIKIAotIzogYnVpbHRpbi9hbS5jOjg2NAorIzogYnVpbHRpbi9hbS5jOjg1NQogbXNnaWQgImludmFsaWQgdGltZXpvbmUgb2Zmc2V0IgogbXNnc3RyICLEkeG7mSBs4buHY2ggbcO6aSBnaeG7nSBraMO0bmcgaOG7o3AgbOG7hyIKIAotIzogYnVpbHRpbi9hbS5jOjk1NworIzogYnVpbHRpbi9hbS5jOjk0OAogbXNnaWQgIlBhdGNoIGZvcm1hdCBkZXRlY3Rpb24gZmFpbGVkLiIKIG1zZ3N0ciAiRMOyIHTDrG0gxJHhu4tuaCBk4bqhbmcgbWnhur9uZyB2w6EgZ+G6t3AgbOG7l2kuIgogCi0jOiBidWlsdGluL2FtLmM6OTYyIGJ1aWx0aW4vY2xvbmUuYzo0MDgKKyM6IGJ1aWx0aW4vYW0uYzo5NTMgYnVpbHRpbi9jbG9uZS5jOjQwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgogbXNnc3RyICJ04bqhbyB0aMawIG3hu6VjIFwiJXNcIiBn4bq3cCBs4buXaSIKIAotIzogYnVpbHRpbi9hbS5jOjk2NworIzogYnVpbHRpbi9hbS5jOjk1OAogbXNnaWQgIkZhaWxlZCB0byBzcGxpdCBwYXRjaGVzLiIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIGNoaWEgbmjhu48gY8OhYyBtaeG6v25nIHbDoS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMDk3IGJ1aWx0aW4vY29tbWl0LmM6MzY5Ci1tc2dpZCAidW5hYmxlIHRvIHdyaXRlIGluZGV4IGZpbGUiCi1tc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgdOG6rXAgdGluIGzGsHUgbeG7pWMgbOG7pWMiCi0KLSM6IGJ1aWx0aW4vYW0uYzoxMTExCisjOiBidWlsdGluL2FtLmM6MTA4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJXaGVuIHlvdSBoYXZlIHJlc29sdmVkIHRoaXMgcHJvYmxlbSwgcnVuIFwiJXMgLS1jb250aW51ZVwiLiIKIG1zZ3N0ciAiS2hpIGLhuqFuIMSRw6MgcGjDom4gZ2nhuqNpIHhvbmcgdHLhu6VjIHRy4bq3YyBuw6B5LCBow6N5IGNo4bqheSBcIiVzIC0tY29udGludWVcIi4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMTEyCisjOiBidWlsdGluL2FtLmM6MTA5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJJZiB5b3UgcHJlZmVyIHRvIHNraXAgdGhpcyBwYXRjaCwgcnVuIFwiJXMgLS1za2lwXCIgaW5zdGVhZC4iCiBtc2dzdHIgIiIKICJO4bq/dSBi4bqhbiBtdeG7kW4gYuG7jyBxdWEgbWnhur9uZyB2w6EgbsOgeSwgaMOjeSBjaOG6oXkgbOG7h25oIFwiJXMgLS1za2lwXCIgxJHhu4MgdGhheSB0aOG6vy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMTEzCisjOiBidWlsdGluL2FtLmM6MTA5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJUbyByZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIHN0b3AgcGF0Y2hpbmcsIHJ1biBcIiVzIC0tYWJvcnRcIi4iCiBtc2dzdHIgIsSQ4buDIHBo4bulYyBo4buTaSBs4bqhaSBuaMOhbmggZ+G7kWMgdsOgIGThu6tuZyB2w6EsIGjDo3kgY2jhuqF5IFwiJXMgLS1hYm9ydFwiLiIKIAotIzogYnVpbHRpbi9hbS5jOjExOTYKKyM6IGJ1aWx0aW4vYW0uYzoxMTc0CiBtc2dpZCAiUGF0Y2ggc2VudCB3aXRoIGZvcm1hdD1mbG93ZWQ7IHNwYWNlIGF0IHRoZSBlbmQgb2YgbGluZXMgbWlnaHQgYmUgbG9zdC4iCiBtc2dzdHIgIiIKICJNaeG6v25nIHbDoSDEkcaw4bujYyBn4butaSB24bubaSBmb3JtYXQ9Zmxvd2VkOyBraG/huqNuZyB0cuG7kW5nIOG7nyBjdeG7kWkgY+G7p2EgY8OhYyBkw7JuZyBjw7MgdGjhu4MgIgogImLhu4sgbeG6pXQuIgogCi0jOiBidWlsdGluL2FtLmM6MTIyNAorIzogYnVpbHRpbi9hbS5jOjEyMDIKIG1zZ2lkICJQYXRjaCBpcyBlbXB0eS4iCiBtc2dzdHIgIk1p4bq/bmcgdsOhIHRy4buRbmcgcuG7l25nLiIKIAotIzogYnVpbHRpbi9hbS5jOjEyOTAKKyM6IGJ1aWx0aW4vYW0uYzoxMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgYXV0aG9yIGxpbmUgaW4gY29tbWl0ICVzIgorbXNnc3RyICJ0aGnhur91IGTDsm5nIHTDoWMgZ2nhuqMgdHJvbmcgbOG6p24gY2h1eeG7g24gZ2lhICVzIgorCisjOiBidWlsdGluL2FtLmM6MTI3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGlkZW50IGxpbmU6ICUuKnMiCiBtc2dzdHIgImTDsm5nIHRo4buldCBs4buBIGtow7RuZyBo4bujcCBs4buHOiAlLipzIgogCi0jOiBidWlsdGluL2FtLmM6MTMxMgotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0ICVzIgotbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggbOG6p24gY2h1eeG7g24gZ2lhbyDigJwlc+KAnSIKLQotIzogYnVpbHRpbi9hbS5jOjE1MDgKKyM6IGJ1aWx0aW4vYW0uYzoxNDg5CiBtc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyBuZWNlc3NhcnkgYmxvYnMgdG8gZmFsbCBiYWNrIG9uIDMtd2F5IG1lcmdlLiIKIG1zZ3N0ciAiS2hvIHRoaeG6v3UgxJHhu5FpIHTGsOG7o25nIGJsb2IgY+G6p24gdGhp4bq/dCDEkeG7gyB0cuG7nyB24buBIHRyw6puIOKAnDMtd2F5IG1lcmdl4oCdLiIKIAotIzogYnVpbHRpbi9hbS5jOjE1MTAKKyM6IGJ1aWx0aW4vYW0uYzoxNDkxCiBtc2dpZCAiVXNpbmcgaW5kZXggaW5mbyB0byByZWNvbnN0cnVjdCBhIGJhc2UgdHJlZS4uLiIKIG1zZ3N0ciAiIgogIlPhu60gZOG7pW5nIHRow7RuZyB0aW4gdHJvbmcgYuG6o25nIG3hu6VjIGzhu6VjIMSR4buDIGPhuqV1IHRyw7pjIGzhuqFpIG3hu5l0IGPDonkgKHRyZWUpIGPGoSBz4buf4oCmIgogCi0jOiBidWlsdGluL2FtLmM6MTUyOQorIzogYnVpbHRpbi9hbS5jOjE1MTAKIG1zZ2lkICIiCiAiRGlkIHlvdSBoYW5kIGVkaXQgeW91ciBwYXRjaD9cbiIKICJJdCBkb2VzIG5vdCBhcHBseSB0byBibG9icyByZWNvcmRlZCBpbiBpdHMgaW5kZXguIgpAQCAtNzQ3MCwyOSArOTcwMCwyNCBAQAogIkLhuqFuIMSRw6Mgc+G7rWEgbWnhur9uZyB2w6EgY+G7p2EgbcOsbmggYuG6sW5nIGPDoWNoIHRo4bunIGPDtG5nIMOgP1xuIgogIk7DsyBraMO0bmcgdGjhu4Mgw6FwIGThu6VuZyBjw6FjIGJsb2IgxJHDoyDEkcaw4bujYyBnaGkgbOG6oWkgdHJvbmcgYuG6o25nIG3hu6VjIGzhu6VjIGPhu6dhIG7Dsy4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTM1CisjOiBidWlsdGluL2FtLmM6MTUxNgogbXNnaWQgIkZhbGxpbmcgYmFjayB0byBwYXRjaGluZyBiYXNlIGFuZCAzLXdheSBtZXJnZS4uLiIKIG1zZ3N0ciAixJBhbmcgdHLhu58gbOG6oWkgxJHhu4MgdsOhIGPGoSBz4bufIHbDoCDigJxow7JhIHRy4buZbiAzLcSRxrDhu51uZ+KAneKApiIKIAotIzogYnVpbHRpbi9hbS5jOjE1NjEKKyM6IGJ1aWx0aW4vYW0uYzoxNTQyCiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIGluIHRoZSBjaGFuZ2VzLiIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIHRy4buZbiB2w6BvIGPDoWMgdGhheSDEkeG7lWkuIgogCi0jOiBidWlsdGluL2FtLmM6MTU5MworIzogYnVpbHRpbi9hbS5jOjE1NzQKIG1zZ2lkICJhcHBseWluZyB0byBhbiBlbXB0eSBoaXN0b3J5IgogbXNnc3RyICLDoXAgZOG7pW5nIHbDoG8gbeG7mXQgbOG7i2NoIHPhu60gdHLhu5FuZyBy4buXbmciCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNjM5IGJ1aWx0aW4vYW0uYzoxNjQzCisjOiBidWlsdGluL2FtLmM6MTYyMSBidWlsdGluL2FtLmM6MTYyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVzdW1lOiAlcyBkb2VzIG5vdCBleGlzdC4iCiBtc2dzdHIgImtow7RuZyB0aOG7gyBwaOG7pWMgaOG7k2k6ICVzIGtow7RuZyB04buTbiB04bqhaS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNjU5Ci1tc2dpZCAiY2Fubm90IGJlIGludGVyYWN0aXZlIHdpdGhvdXQgc3RkaW4gY29ubmVjdGVkIHRvIGEgdGVybWluYWwuIgotbXNnc3RyICIiCi0ia2jDtG5nIHRo4buDIMSRxrDhu6NjIHTGsMahbmcgdMOhYyBtw6Aga2jDtG5nIGPDsyBzdGRpbiBr4bq/dCBu4buRaSB24bubaSBt4buZdCB0aGnhur90IGLhu4sgY3Xhu5FpIgotCi0jOiBidWlsdGluL2FtLmM6MTY2NAorIzogYnVpbHRpbi9hbS5jOjE2NDMKIG1zZ2lkICJDb21taXQgQm9keSBpczoiCiBtc2dzdHIgIlRow6JuIGPhu6dhIGzhuqduIGNodXnhu4NuIGdpYW8gbMOgOiIKIApAQCAtNzUwMCwzNiArOTcyNSw0MSBAQAogIy4gaW4geW91ciB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoCiAjLiBpbnB1dCBhdCB0aGlzIHBvaW50LgogIy4KLSM6IGJ1aWx0aW4vYW0uYzoxNjc0CisjOiBidWlsdGluL2FtLmM6MTY1MworIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBseT8gW3ldZXMvW25dby9bZV1kaXQvW3ZdaWV3IHBhdGNoL1thXWNjZXB0IGFsbDogIgogbXNnc3RyICIiCiAiw4FwIGThu6VuZz8gxJHhu5NuZyDDvSBbeV0va2jDtFtuXWcvY2jhu4luaCBz4butYSBbZV0vaGnhu4NuIHRo4buLIG1p4bq/bmcgW3Zdw6EvY2jhuqVwIG5o4bqtbiB04bqldCAiCiAiY+G6oyBbYV06ICIKIAotIzogYnVpbHRpbi9hbS5jOjE3MjQKKyM6IGJ1aWx0aW4vYW0uYzoxNzAwIGJ1aWx0aW4vY29tbWl0LmM6Mzk4Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGluZGV4IGZpbGUiCittc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgdOG6rXAgdGluIGzGsHUgbeG7pWMgbOG7pWMiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNzA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRpcnR5IGluZGV4OiBjYW5ub3QgYXBwbHkgcGF0Y2hlcyAoZGlydHk6ICVzKSIKIG1zZ3N0ciAiQuG6o25nIG3hu6VjIGzhu6VjIGLhuqluOiBraMO0bmcgdGjhu4Mgw6FwIGThu6VuZyBjw6FjIG1p4bq/bmcgdsOhIChi4bqpbjogJXMpIgogCi0jOiBidWlsdGluL2FtLmM6MTc2NCBidWlsdGluL2FtLmM6MTgzMgorIzogYnVpbHRpbi9hbS5jOjE3NDQgYnVpbHRpbi9hbS5jOjE4MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbHlpbmc6ICUuKnMiCiBtc2dzdHIgIsOBcCBk4bulbmc6ICUuKnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzgxCisjOiBidWlsdGluL2FtLmM6MTc2MQogbXNnaWQgIk5vIGNoYW5nZXMgLS0gUGF0Y2ggYWxyZWFkeSBhcHBsaWVkLiIKIG1zZ3N0ciAiS2jDtG5nIHRoYXkgxJHhu5VpIGfDrCBj4bqjIC0tIE1p4bq/bmcgdsOhIMSRw6MgxJHGsOG7o2Mgw6FwIGThu6VuZyBy4buTaS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzg3CisjOiBidWlsdGluL2FtLmM6MTc2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJQYXRjaCBmYWlsZWQgYXQgJXMgJS4qcyIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIHbDoSB04bqhaSAlcyAlLipzIgogCi0jOiBidWlsdGluL2FtLmM6MTc5MQotbXNnaWQgIlVzZSAnZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoJyB0byBzZWUgdGhlIGZhaWxlZCBwYXRjaCIKLW1zZ3N0ciAiRMO5bmcg4oCcZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNo4oCdIMSR4buDIHhlbSBtaeG6v25nIHbDoSBi4buLIGzhu5dpIgorIzogYnVpbHRpbi9hbS5jOjE3NzEKK21zZ2lkICJVc2UgJ2dpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaD1kaWZmJyB0byBzZWUgdGhlIGZhaWxlZCBwYXRjaCIKK21zZ3N0ciAiRMO5bmcg4oCcZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoPWRpZmbigJ0gxJHhu4MgeGVtIG1p4bq/bmcgdsOhIGLhu4sgbOG7l2kiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxODM1CisjOiBidWlsdGluL2FtLmM6MTgxNQogbXNnaWQgIiIKICJObyBjaGFuZ2VzIC0gZGlkIHlvdSBmb3JnZXQgdG8gdXNlICdnaXQgYWRkJz9cbiIKICJJZiB0aGVyZSBpcyBub3RoaW5nIGxlZnQgdG8gc3RhZ2UsIGNoYW5jZXMgYXJlIHRoYXQgc29tZXRoaW5nIGVsc2VcbiIKQEAgLTc1NDAsNyArOTc3MCw3IEBACiAixJHDoyBz4bq1biDEkcaw4bujYyDEkcawYSB2w6BvIHbhu5tpIGPDuW5nIG7hu5lpIGR1bmcgdGhheSDEkeG7lWk7IGLhuqFuIGPDsyBs4bq9IG114buRbiBi4buPIHF1YSBtaeG6v25nICIKICJ2w6EgbsOgeS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoxODQyCisjOiBidWlsdGluL2FtLmM6MTgyMgogbXNnaWQgIiIKICJZb3Ugc3RpbGwgaGF2ZSB1bm1lcmdlZCBwYXRocyBpbiB5b3VyIGluZGV4LlxuIgogIllvdSBzaG91bGQgJ2dpdCBhZGQnIGVhY2ggZmlsZSB3aXRoIHJlc29sdmVkIGNvbmZsaWN0cyB0byBtYXJrIHRoZW0gYXMgIgpAQCAtNzU1MywxNyArOTc4MywxNyBAQAogIkLhuqFuIGPDsyBs4bq9IG114buRbiBjaOG6oXkg4oCcZ2l0IHJt4oCcIHRyw6puIG3hu5l0IHThuq1wIHRpbiDEkeG7gyBjaOG6pXAgbmjhuq1uIFwixJHGsOG7o2MgeMOzYSBi4bufaSBo4buNIgogIlwiIGNobyBuw7MuIgogCi0jOiBidWlsdGluL2FtLmM6MTk0OSBidWlsdGluL2FtLmM6MTk1MyBidWlsdGluL2FtLmM6MTk2NSBidWlsdGluL3Jlc2V0LmM6MzI4Ci0jOiBidWlsdGluL3Jlc2V0LmM6MzM2CisjOiBidWlsdGluL2FtLmM6MTkyOSBidWlsdGluL2FtLmM6MTkzMyBidWlsdGluL2FtLmM6MTk0NSBidWlsdGluL3Jlc2V0LmM6MzQ2CisjOiBidWlsdGluL3Jlc2V0LmM6MzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJy4iCi1tc2dzdHIgImtow7RuZyB0aOG7gyBwaMOibiB0w61jaCDEkeG7kWkgdMaw4bujbmcg4oCcJXPigJ0uIgorbXNnc3RyICJLaMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggxJHhu5FpIHTGsOG7o25nIOKAnCVz4oCdLiIKIAotIzogYnVpbHRpbi9hbS5jOjIwMDEKKyM6IGJ1aWx0aW4vYW0uYzoxOTgxCiBtc2dpZCAiZmFpbGVkIHRvIGNsZWFuIGluZGV4IgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgZOG7jW4gYuG6o25nIG3hu6VjIGzhu6VjIgogCi0jOiBidWlsdGluL2FtLmM6MjAzNgorIzogYnVpbHRpbi9hbS5jOjIwMjUKIG1zZ2lkICIiCiAiWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFEIHNpbmNlIHRoZSBsYXN0ICdhbScgZmFpbHVyZS5cbiIKICJOb3QgcmV3aW5kaW5nIHRvIE9SSUdfSEVBRCIKQEAgLTc1NzEsMTQ0ICs5ODAxLDE1NCBAQAogIkLhuqFuIGPDsyBs4bq9IMSRw6MgY8OzIEhFQUQgxJHDoyBi4buLIGRpIGNodXnhu4NuIMSRaSBr4buDIHThu6sgbOG6p24g4oCcYW3igJ0gdGjhuqV0IGLhuqFpIGN14buRaSBjw7luZy5cbiIKICJLaMO0bmcgdGjhu4MgY2h1eeG7g24gdOG7m2kgT1JJR19IRUFEIgogCi0jOiBidWlsdGluL2FtLmM6MjEyOQorIzogYnVpbHRpbi9hbS5jOjIxMzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgLS1wYXRjaC1mb3JtYXQ6ICVzIgogbXNnc3RyICJHacOhIHRy4buLIGtow7RuZyBo4bujcCBs4buHIGNobyAtLXBhdGNoLWZvcm1hdDogJXMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTY1Ci1tc2dpZCAiZ2l0IGFtIFs8b3B0aW9ucz5dIFsoPG1ib3g+IHwgPE1haWxkaXI+KS4uLl0iCi1tc2dzdHIgImdpdCBhbSBbPGPDoWMtdMO5eS1jaOG7jW4+XSBbKDxtYm94Pnw8TWFpbGRpcj4p4oCmXSIKLQotIzogYnVpbHRpbi9hbS5jOjIxNjYKLW1zZ2lkICJnaXQgYW0gWzxvcHRpb25zPl0gKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0KSIKLW1zZ3N0ciAiZ2l0IGFtIFs8Y8OhYy10w7l5LWNo4buNbj5dICgtLWNvbnRpbnVlIHwgLS1za2lwIHwgLS1hYm9ydCkiCi0KICM6IGJ1aWx0aW4vYW0uYzoyMTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yIC0tc2hvdy1jdXJyZW50LXBhdGNoOiAlcyIKK21zZ3N0ciAiR2nDoSB0cuG7iyBraMO0bmcgaOG7o3AgbOG7hyBjaG8gLS1zaG93LWN1cnJlbnQtcGF0Y2g6ICVzIgorCisjOiBidWlsdGluL2FtLmM6MjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLXNob3ctY3VycmVudC1wYXRjaD0lcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLXNob3ctY3VycmVudC1wYXRjaD0lcyIKK21zZ3N0ciAiLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMgeHVuZyBraOG6r2MgduG7m2kgLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjA3Cittc2dpZCAiZ2l0IGFtIFs8b3B0aW9ucz5dIFsoPG1ib3g+IHwgPE1haWxkaXI+KS4uLl0iCittc2dzdHIgImdpdCBhbSBbPGPDoWMgdMO5eSBjaOG7jW4+XSBbKDxtYm94Pnw8TWFpbGRpcj4p4oCmXSIKKworIzogYnVpbHRpbi9hbS5jOjIyMDgKK21zZ2lkICJnaXQgYW0gWzxvcHRpb25zPl0gKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0KSIKK21zZ3N0ciAiZ2l0IGFtIFs8Y8OhYyB0w7l5IGNo4buNbj5dICgtLWNvbnRpbnVlIHwgLS1za2lwIHwgLS1hYm9ydCkiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjE0CiBtc2dpZCAicnVuIGludGVyYWN0aXZlbHkiCiBtc2dzdHIgImNo4bqheSBraeG7g3UgdMawxqFuZyB0w6FjIgogCi0jOiBidWlsdGluL2FtLmM6MjE3NAorIzogYnVpbHRpbi9hbS5jOjIyMTYKIG1zZ2lkICJoaXN0b3JpY2FsIG9wdGlvbiAtLSBuby1vcCIKIG1zZ3N0ciAidMO5eSBjaOG7jW4gbOG7i2NoIHPhu60gLS0ga2jDtG5nLXRvw6FuLXThu60iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc2CisjOiBidWlsdGluL2FtLmM6MjIxOAogbXNnaWQgImFsbG93IGZhbGwgYmFjayBvbiAzd2F5IG1lcmdpbmcgaWYgbmVlZGVkIgogbXNnc3RyICJjaG8gcGjDqXAgcXVheSB0cuG7nyBs4bqhaSDEkeG7gyBow7JhIHRy4buZbiBraeG7g3Ug4oCcM3dheeKAnSBu4bq/dSBj4bqnbiIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzcgYnVpbHRpbi9pbml0LWRiLmM6NDg2IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTgKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA2CisjOiBidWlsdGluL2FtLmM6MjIxOSBidWlsdGluL2luaXQtZGIuYzo0OTQgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1OAorIzogYnVpbHRpbi9yZXBhY2suYzozMDQgYnVpbHRpbi9zdGFzaC5jOjgxMgogbXNnaWQgImJlIHF1aWV0IgogbXNnc3RyICJpbSBs4bq3bmciCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTc5CisjOiBidWlsdGluL2FtLmM6MjIyMQogbXNnaWQgImFkZCBhIFNpZ25lZC1vZmYtYnkgbGluZSB0byB0aGUgY29tbWl0IG1lc3NhZ2UiCi1tc2dzdHIgIlRow6ptIGTDsm5nIFNpZ25lZC1vZmYtYnkgY2hvIGdoaSBjaMO6IGPhu6dhIGzhuqduIGNodXnhu4NuIGdpYW8iCittc2dzdHIgInRow6ptIGTDsm5nIFNpZ25lZC1vZmYtYnkgY2hvIGdoaSBjaMO6IGPhu6dhIGzhuqduIGNodXnhu4NuIGdpYW8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTgyCisjOiBidWlsdGluL2FtLmM6MjIyNAogbXNnaWQgInJlY29kZSBpbnRvIHV0ZjggKGRlZmF1bHQpIgogbXNnc3RyICJjaHV54buDbiBtw6MgdGjDoG5oIHV0ZjggKG3hurdjIMSR4buLbmgpIgogCi0jOiBidWlsdGluL2FtLmM6MjE4NAorIzogYnVpbHRpbi9hbS5jOjIyMjYKIG1zZ2lkICJwYXNzIC1rIGZsYWcgdG8gZ2l0LW1haWxpbmZvIgogbXNnc3RyICJjaHV54buDbiBj4budIC1rIGNobyBnaXQtbWFpbGluZm8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTg2CisjOiBidWlsdGluL2FtLmM6MjIyOAogbXNnaWQgInBhc3MgLWIgZmxhZyB0byBnaXQtbWFpbGluZm8iCiBtc2dzdHIgImNodXnhu4NuIGPhu50gLWIgY2hvIGdpdC1tYWlsaW5mbyIKIAotIzogYnVpbHRpbi9hbS5jOjIxODgKKyM6IGJ1aWx0aW4vYW0uYzoyMjMwCiBtc2dpZCAicGFzcyAtbSBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKIG1zZ3N0ciAiY2h1eeG7g24gY+G7nSAtbSBjaG8gZ2l0LW1haWxpbmZvIgogCi0jOiBidWlsdGluL2FtLmM6MjE5MAorIzogYnVpbHRpbi9hbS5jOjIyMzIKIG1zZ2lkICJwYXNzIC0ta2VlcC1jciBmbGFnIHRvIGdpdC1tYWlsc3BsaXQgZm9yIG1ib3ggZm9ybWF0IgogbXNnc3RyICJjaHV54buDbiBj4budIC0ta2VlcC1jciBjaG8gZ2l0LW1haWxzcGxpdCB24bubaSDEkeG7i25oIGThuqFuZyBtYm94IgogCi0jOiBidWlsdGluL2FtLmM6MjE5MworIzogYnVpbHRpbi9hbS5jOjIyMzUKIG1zZ2lkICJkbyBub3QgcGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGluZGVwZW5kZW50IG9mIGFtLmtlZXBjciIKIG1zZ3N0ciAiIgogIsSR4burbmcgY2h1eeG7g24gY+G7nSAtLWtlZXAtY3IgY2hvIGdpdC1tYWlsc3BsaXQga2jDtG5nIHBo4bulIHRodeG7mWMgdsOgbyBhbS5rZWVwY3IiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTk2CisjOiBidWlsdGluL2FtLmM6MjIzOAogbXNnaWQgInN0cmlwIGV2ZXJ5dGhpbmcgYmVmb3JlIGEgc2Npc3NvcnMgbGluZSIKIG1zZ3N0ciAiY+G6r3QgbeG7jWkgdGjhu6kgdHLGsOG7m2MgZMOybmcgc2Npc3NvcnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTk4IGJ1aWx0aW4vYW0uYzoyMjAxIGJ1aWx0aW4vYW0uYzoyMjA0IGJ1aWx0aW4vYW0uYzoyMjA3Ci0jOiBidWlsdGluL2FtLmM6MjIxMCBidWlsdGluL2FtLmM6MjIxMyBidWlsdGluL2FtLmM6MjIxNiBidWlsdGluL2FtLmM6MjIxOQotIzogYnVpbHRpbi9hbS5jOjIyMjUKKyM6IGJ1aWx0aW4vYW0uYzoyMjQwIGJ1aWx0aW4vYW0uYzoyMjQzIGJ1aWx0aW4vYW0uYzoyMjQ2IGJ1aWx0aW4vYW0uYzoyMjQ5CisjOiBidWlsdGluL2FtLmM6MjI1MiBidWlsdGluL2FtLmM6MjI1NSBidWlsdGluL2FtLmM6MjI1OCBidWlsdGluL2FtLmM6MjI2MQorIzogYnVpbHRpbi9hbS5jOjIyNjcKIG1zZ2lkICJwYXNzIGl0IHRocm91Z2ggZ2l0LWFwcGx5IgogbXNnc3RyICJjaHV54buDbiBuw7MgcXVhIGdpdC1hcHBseSIKIAotIzogYnVpbHRpbi9hbS5jOjIyMTUgYnVpbHRpbi9jb21taXQuYzoxMzQwIGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MQotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc0IGJ1aWx0aW4vZ3JlcC5jOjg2OCBidWlsdGluL21lcmdlLmM6MjM5Ci0jOiBidWlsdGluL3B1bGwuYzoxNTEgYnVpbHRpbi9wdWxsLmM6MjA5IGJ1aWx0aW4vcmViYXNlLmM6ODU0Ci0jOiBidWlsdGluL3JlcGFjay5jOjMxNyBidWlsdGluL3JlcGFjay5jOjMyMSBidWlsdGluL3JlcGFjay5jOjMyMwotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MSBidWlsdGluL3Nob3ctcmVmLmM6MTcxIGJ1aWx0aW4vdGFnLmM6Mzg2Ci0jOiBwYXJzZS1vcHRpb25zLmg6MTQ0IHBhcnNlLW9wdGlvbnMuaDoxNDYgcGFyc2Utb3B0aW9ucy5oOjI2OAorIzogYnVpbHRpbi9hbS5jOjIyNTcgYnVpbHRpbi9jb21taXQuYzoxMzkxIGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MAorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjczIGJ1aWx0aW4vZ3JlcC5jOjg3MSBidWlsdGluL21lcmdlLmM6MjUwCisjOiBidWlsdGluL3B1bGwuYzoxNDAgYnVpbHRpbi9wdWxsLmM6MTk5IGJ1aWx0aW4vcmViYXNlLmM6MTUwNQorIzogYnVpbHRpbi9yZXBhY2suYzozMTUgYnVpbHRpbi9yZXBhY2suYzozMTkgYnVpbHRpbi9yZXBhY2suYzozMjEKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTAgYnVpbHRpbi9zaG93LXJlZi5jOjE3MiBidWlsdGluL3RhZy5jOjQwMworIzogcGFyc2Utb3B0aW9ucy5oOjE1NCBwYXJzZS1vcHRpb25zLmg6MTc1IHBhcnNlLW9wdGlvbnMuaDozMTYKIG1zZ2lkICJuIgogbXNnc3RyICJuIgogCi0jOiBidWlsdGluL2FtLmM6MjIyMSBidWlsdGluL2JyYW5jaC5jOjYzNyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4Ci0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDQgYnVpbHRpbi90YWcuYzo0MjIgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzkKKyM6IGJ1aWx0aW4vYW0uYzoyMjYzIGJ1aWx0aW4vYnJhbmNoLmM6NjYxIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NiBidWlsdGluL3RhZy5jOjQzNyBidWlsdGluL3ZlcmlmeS10YWcuYzozOAogbXNnaWQgImZvcm1hdCIKIG1zZ3N0ciAixJHhu4tuaCBk4bqhbmciCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjIyCisjOiBidWlsdGluL2FtLmM6MjI2NAogbXNnaWQgImZvcm1hdCB0aGUgcGF0Y2goZXMpIGFyZSBpbiIKIG1zZ3N0ciAixJHhu4tuaCBk4bqhbmcgKGPDoWMpIG1p4bq/bmcgdsOhIHRoZW8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjI4CisjOiBidWlsdGluL2FtLmM6MjI3MAogbXNnaWQgIm92ZXJyaWRlIGVycm9yIG1lc3NhZ2Ugd2hlbiBwYXRjaCBmYWlsdXJlIG9jY3VycyIKIG1zZ3N0ciAixJHDqCBsw6puIGPDoWMgbOG7nWkgbmjhuq9uIGzhu5dpIGtoaSB44bqjeSByYSBs4buXaSB2w6EgbmdoacOqbSB0cuG7jW5nIgogCi0jOiBidWlsdGluL2FtLmM6MjIzMAorIzogYnVpbHRpbi9hbS5jOjIyNzIKIG1zZ2lkICJjb250aW51ZSBhcHBseWluZyBwYXRjaGVzIGFmdGVyIHJlc29sdmluZyBhIGNvbmZsaWN0IgogbXNnc3RyICJ0aeG6v3AgdOG7pWMgw6FwIGThu6VuZyBjw6FjIG1p4bq/bmcgdsOhIHNhdSBraGkgZ2nhuqNpIHF1eeG6v3QgeHVuZyDEkeG7mXQiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjMzCisjOiBidWlsdGluL2FtLmM6MjI3NQogbXNnaWQgInN5bm9ueW1zIGZvciAtLWNvbnRpbnVlIgogbXNnc3RyICLEkeG7k25nIG5naMSpYSB24bubaSAtLWNvbnRpbnVlIgogCi0jOiBidWlsdGluL2FtLmM6MjIzNgorIzogYnVpbHRpbi9hbS5jOjIyNzgKIG1zZ2lkICJza2lwIHRoZSBjdXJyZW50IHBhdGNoIgogbXNnc3RyICJi4buPIHF1YSBtaeG6v25nIHbDoSBoaeG7h24gaMOgbmgiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjM5CisjOiBidWlsdGluL2FtLmM6MjI4MQogbXNnaWQgInJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgYWJvcnQgdGhlIHBhdGNoaW5nIG9wZXJhdGlvbi4iCiBtc2dzdHIgInBo4bulYyBo4buTaSBs4bqhaSBuaMOhbmggZ+G7kWMgdsOgIGxv4bqhaSBi4buPIHRoYW8gdMOhYyB2w6EuIgogCi0jOiBidWlsdGluL2FtLmM6MjI0MgorIzogYnVpbHRpbi9hbS5jOjIyODQKIG1zZ2lkICJhYm9ydCB0aGUgcGF0Y2hpbmcgb3BlcmF0aW9uIGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMuIgogbXNnc3RyICJi4buPIHF1YSB0aGFvIHTDoWMgdsOhIG5oxrBuZyB24bqrbiBnaeG7ryBIRUFEIGNo4buJIMSR4bq/biBuw7MuIgogCi0jOiBidWlsdGluL2FtLmM6MjI0NQotbXNnaWQgInNob3cgdGhlIHBhdGNoIGJlaW5nIGFwcGxpZWQuIgotbXNnc3RyICJoaeG7g24gdGjhu4sgbWnhur9uZyB2w6EgxJHDoyDEkcaw4bujYyDDoXAgZOG7pW5nIHLhu5NpLiIKKyM6IGJ1aWx0aW4vYW0uYzoyMjg4Cittc2dpZCAic2hvdyB0aGUgcGF0Y2ggYmVpbmcgYXBwbGllZCIKK21zZ3N0ciAiaGnhu4NuIHRo4buLIG1p4bq/bmcgdsOhIMSRw6MgxJHGsOG7o2Mgw6FwIGThu6VuZyBy4buTaSIKIAotIzogYnVpbHRpbi9hbS5jOjIyNDkKKyM6IGJ1aWx0aW4vYW0uYzoyMjkzCiBtc2dpZCAibGllIGFib3V0IGNvbW1pdHRlciBkYXRlIgogbXNnc3RyICJuw7NpIGThu5FpIHbhu4EgbmfDoHkgY2h1eeG7g24gZ2lhbyIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTEKKyM6IGJ1aWx0aW4vYW0uYzoyMjk1CiBtc2dpZCAidXNlIGN1cnJlbnQgdGltZXN0YW1wIGZvciBhdXRob3IgZGF0ZSIKIG1zZ3N0ciAiZMO5bmcgZOG6pXUgdGjhu51pIGdpYW4gaGnhu4duIHThuqFpIGNobyBuZ8OgeSB0w6FjIGdp4bqjIgogCi0jOiBidWlsdGluL2FtLmM6MjI1MyBidWlsdGluL2NvbW1pdC5jOjE0ODMgYnVpbHRpbi9tZXJnZS5jOjI3MwotIzogYnVpbHRpbi9wdWxsLmM6MTg0IGJ1aWx0aW4vcmViYXNlLmM6ODk4IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MwotIzogYnVpbHRpbi9yZXZlcnQuYzoxMTMgYnVpbHRpbi90YWcuYzo0MDIKKyM6IGJ1aWx0aW4vYW0uYzoyMjk3IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMjAgYnVpbHRpbi9jb21taXQuYzoxNTEyCisjOiBidWlsdGluL21lcmdlLmM6Mjg3IGJ1aWx0aW4vcHVsbC5jOjE3NCBidWlsdGluL3JlYmFzZS5jOjUxNworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTU2IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE3IGJ1aWx0aW4vdGFnLmM6NDE4CiBtc2dpZCAia2V5LWlkIgogbXNnc3RyICJtw6Mtc+G7kS1raMOzYSIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9yZWJhc2UuYzo4OTkgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg0CisjOiBidWlsdGluL2FtLmM6MjI5OCBidWlsdGluL3JlYmFzZS5jOjUxOCBidWlsdGluL3JlYmFzZS5jOjE1NTcKIG1zZ2lkICJHUEctc2lnbiBjb21taXRzIgotbXNnc3RyICJs4bqnbiBjaHV54buDbiBnaWFvIGvDvS1HUEciCittc2dzdHIgIkPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBrw70tR1BHIgogCi0jOiBidWlsdGluL2FtLmM6MjI1NworIzogYnVpbHRpbi9hbS5jOjIzMDEKIG1zZ2lkICIoaW50ZXJuYWwgdXNlIGZvciBnaXQtcmViYXNlKSIKIG1zZ3N0ciAiKGTDuW5nIG7hu5lpIGLhu5kgY2hvIGdpdC1yZWJhc2UpIgogCi0jOiBidWlsdGluL2FtLmM6MjI3NQorIzogYnVpbHRpbi9hbS5jOjIzMTkKIG1zZ2lkICIiCiAiVGhlIC1iLy0tYmluYXJ5IG9wdGlvbiBoYXMgYmVlbiBhIG5vLW9wIGZvciBsb25nIHRpbWUsIGFuZFxuIgogIml0IHdpbGwgYmUgcmVtb3ZlZC4gUGxlYXNlIGRvIG5vdCB1c2UgaXQgYW55bW9yZS4iCkBAIC03NzE2LDE2ICs5OTU2LDE2IEBACiAiVMO5eSBjaOG7jW4gLWIvLS1iaW5hcnkgxJHDoyBraMO0bmcgZMO5bmcgdOG7qyBsw6J1IHLhu5NpLCB2w6BcbiIKICJuw7Mgc+G6vSDEkcaw4bujYyBi4buPIMSRaS4gWGluIMSR4burbmcgc+G7rSBk4bulbmcgbsOzIHRow6ptIG7hu69hLiIKIAotIzogYnVpbHRpbi9hbS5jOjIyODIKKyM6IGJ1aWx0aW4vYW0uYzoyMzI2CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICJn4bq3cCBs4buXaSDEkeG7jWMgYuG6o25nIG3hu6VjIGzhu6VjIgogCi0jOiBidWlsdGluL2FtLmM6MjI5NworIzogYnVpbHRpbi9hbS5jOjIzNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJldmlvdXMgcmViYXNlIGRpcmVjdG9yeSAlcyBzdGlsbCBleGlzdHMgYnV0IG1ib3ggZ2l2ZW4uIgogbXNnc3RyICJ0aMawIG3hu6VjIHJlYmFzZSB0csaw4bubYyAlcyBraMO0bmcgc+G6tW4gY8OzIG5oxrBuZyBtYm94IGzhuqFpIMSRxrBhIHJhLiIKIAotIzogYnVpbHRpbi9hbS5jOjIzMjEKKyM6IGJ1aWx0aW4vYW0uYzoyMzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdHJheSAlcyBkaXJlY3RvcnkgZm91bmQuXG4iCkBAIC03NzM0LDEzICs5OTc0LDE3IEBACiAiVMOsbSB0aOG6pXkgdGjGsCBt4bulYyBs4bqhYyAlcy5cbiIKICJEw7luZyBcImdpdCBhbSAtLWFib3J0XCIgxJHhu4MgbG/huqFpIGLhu48gbsOzIMSRaS4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMzI3CisjOiBidWlsdGluL2FtLmM6MjM3MQogbXNnaWQgIlJlc29sdmUgb3BlcmF0aW9uIG5vdCBpbiBwcm9ncmVzcywgd2UgYXJlIG5vdCByZXN1bWluZy4iCiBtc2dzdHIgIlRoYW8gdMOhYyBwaMOibiBnaeG6o2kga2jDtG5nIMSRxrDhu6NjIHRp4bq/biBow6BuaCwgY2jDum5nIHRhIGtow7RuZyBwaOG7pWMgaOG7k2kgbOG6oWkuIgogCisjOiBidWlsdGluL2FtLmM6MjM4MQorbXNnaWQgImludGVyYWN0aXZlIG1vZGUgcmVxdWlyZXMgcGF0Y2hlcyBvbiB0aGUgY29tbWFuZCBsaW5lIgorbXNnc3RyICJjaOG6vyDEkeG7mSB0xrDGoW5nIHTDoWMgecOqdSBj4bqndSBjw7MgY8OhYyBtaeG6v25nIHbDoSB0csOqbiBkw7JuZyBsw6puaCIKKwogIzogYnVpbHRpbi9hcHBseS5jOjgKIG1zZ2lkICJnaXQgYXBwbHkgWzxvcHRpb25zPl0gWzxwYXRjaD4uLi5dIgotbXNnc3RyICJnaXQgYXBwbHkgWzxjw6FjLXTDuXktY2jhu41uPl0gWzxtaeG6v25nLXbDoT7igKZdIgorbXNnc3RyICJnaXQgYXBwbHkgWzxjw6FjIHTDuXkgY2jhu41uPl0gWzxtaeG6v25nLXbDoT7igKZdIgogCiAjOiBidWlsdGluL2FyY2hpdmUuYzoxNwogIywgYy1mb3JtYXQKQEAgLTc3NTUsMjI0ICs5OTk5LDQ1MSBAQAogbXNnaWQgImdpdCBhcmNoaXZlOiBSZW1vdGUgd2l0aCBubyBVUkwiCiBtc2dzdHIgImdpdCBhcmNoaXZlOiBNw6F5IGNo4bunIGtow7RuZyBjw7MgxJHhu4thIGNo4buJIFVSTCIKIAotIzogYnVpbHRpbi9hcmNoaXZlLmM6NTgKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjYxCiBtc2dpZCAiZ2l0IGFyY2hpdmU6IGV4cGVjdGVkIEFDSy9OQUssIGdvdCBhIGZsdXNoIHBhY2tldCIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmU6IGPhuqduIEFDSy9OQUssIG5oxrBuZyBs4bqhaSBuaOG6rW4gxJHGsOG7o2MgZ8OzaSBmbHVzaCIKIAotIzogYnVpbHRpbi9hcmNoaXZlLmM6NjEKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY0CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBhcmNoaXZlOiBOQUNLICVzIgogbXNnc3RyICJnaXQgYXJjaGl2ZTogTkFDSyAlcyIKIAotIzogYnVpbHRpbi9hcmNoaXZlLmM6NjQKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY1CiBtc2dpZCAiZ2l0IGFyY2hpdmU6IHByb3RvY29sIGVycm9yIgogbXNnc3RyICJnaXQgYXJjaGl2ZTogbOG7l2kgZ2lhbyB0aOG7qWMiCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY4CisjOiBidWlsdGluL2FyY2hpdmUuYzo2OQogbXNnaWQgImdpdCBhcmNoaXZlOiBleHBlY3RlZCBhIGZsdXNoIgogbXNnc3RyICJnaXQgYXJjaGl2ZTogY+G6p24gbeG7mXQgZmx1c2ggKMSR4bqpeSBk4buvIGxp4buHdSBsw6puIMSRxKlhKSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjIKIG1zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCBbLS1uby1jaGVja291dF0iCiBtc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLW5leHQtYWxsIFstLW5vLWNoZWNrb3V0XSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEzCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjMKIG1zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS13cml0ZS10ZXJtcyA8YmFkX3Rlcm0+IDxnb29kX3Rlcm0+IgogbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS13cml0ZS10ZXJtcyA8YmFkX3Rlcm0+IDxnb29kX3Rlcm0+IgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTQKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNAogbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jbGVhbi1zdGF0ZSIKIG1zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNsZWFuLXN0YXRlIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDYKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNQorbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1yZXNldCBbPGNvbW1pdD5dIgorbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtcmVzZXQgWzxs4bqnbl9jaHV54buDbl9naWFvPl0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNgorbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtd3JpdGUgWy0tbm8tbG9nXSA8c3RhdGU+IDxyZXZpc2lvbj4gPGdvb2RfdGVybT4gIgorIjxiYWRfdGVybT4iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtd3JpdGUgWy0tbm8tbG9nXSA8c3RhdGU+IDxyZXZpc2lvbj4gPGzDumNfc2FpPiAiCisiPGzDumNfxJHDum5nPiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI3Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDxjb21tYW5kPiA8Z29vZF90ZXJtPiAiCisiPGJhZF90ZXJtPiIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDxjb21tYW5kPiA8bMO6Y19zYWk+ICIKKyI8bMO6Y1/EkcO6bmc+IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjgKK21zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtbmV4dC1jaGVjayA8Z29vZF90ZXJtPiA8YmFkX3Rlcm0+IFs8dGVybT5dIgorbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtbmV4dC1jaGVjayA8bMO6Y19zYWk+IDxsw7pjX8SRw7puZz4gWzx0ZXJtPl0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOQorbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtdGVybXMgWy0tdGVybS1nb29kIHwgLS10ZXJtLW9sZCB8IC0tdGVybS1iYWQgfCAtLSIKKyJ0ZXJtLW5ld10iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtdGVybXMgWy0tdGVybS1nb29kIHwgLS10ZXJtLW9sZCB8IC0tdGVybS1iYWQgfCAtLSIKKyJ0ZXJtLW5ld10iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMAorbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtc3RhcnQgWy0tdGVybS17b2xkLGdvb2R9PTx0ZXJtPiAtLXRlcm0te25ldyxiYWR9IgorIj08dGVybT5dWy0tbm8tY2hlY2tvdXRdIFs8YmFkPiBbPGdvb2Q+Li4uXV0gWy0tXSBbPHBhdGhzPi4uLl0iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtc3RhcnQgWy0tdGVybS17b2xkLGdvb2R9PTx0ZXJtPiAtLXRlcm0te25ldyxiYWR9IgorIj08dGVybT5dWy0tbm8tY2hlY2tvdXRdIFs8c2FpPiBbPMSRw7puZz7igKZdXSBbLS1dIFs8L2PDoWMvxJHGsOG7nW5nL2ThuqtuPuKApl0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo4NgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRlcm0iCi1tc2dzdHIgIuKAnCVz4oCdIGtow7RuZyBwaOG6o2kgbeG7mXQgdGjhu51pIGjhuqFuIGjhu6NwIGzhu4cuIgorbXNnc3RyICLigJwlc+KAnSBraMO0bmcgcGjhuqNpIG3hu5l0IHRo4budaSBo4bqhbiBo4bujcCBs4buHIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTAKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCB1c2UgdGhlIGJ1aWx0aW4gY29tbWFuZCAnJXMnIGFzIGEgdGVybSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGTDuW5nIGzhu4duaCB0w61jaCBo4bujcCDigJwlc+KAnSBuaMawIGzDoCBt4buZdCB0aOG7nWkga+G7syIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYwCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IGNoYW5nZSB0aGUgbWVhbmluZyBvZiB0aGUgdGVybSAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdGhheSDEkeG7lWkgbmdoxKlhIGPhu6dhIHRo4budaSBr4buzIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzEKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMTEKIG1zZ2lkICJwbGVhc2UgdXNlIHR3byBkaWZmZXJlbnQgdGVybXMiCiBtc2dzdHIgInZ1aSBsw7JuZyBkw7luZyBoYWkgdGjhu51pIGvhu7Mga2jDoWMgbmhhdSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjc4CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTE4CiBtc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGZpbGUgQklTRUNUX1RFUk1TIgogbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4gQklTRUNUX1RFUk1TIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTIwCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLlxuIgorbXNnc3RyICJDaMO6bmcgdMO0aSDEkWFuZyBraMO0bmcgYmlzZWN0LlxuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgY29tbWl0IgorbXNnc3RyICLigJwlc+KAnSBraMO0bmcgcGjhuqNpIG3hu5l0IGzhuqduIGNodXnhu4NuIGdpYW8gaOG7o3AgbOG7hyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY291bGQgbm90IGNoZWNrIG91dCBvcmlnaW5hbCBIRUFEICclcycuIFRyeSAnZ2l0IGJpc2VjdCByZXNldCA8Y29tbWl0PicuIgorbXNnc3RyICIiCisia2jDtG5nIHRo4buDIGzhuqV5IHJhIEhFQUQgbmd1ecOqbiB0aOG7p3kgY+G7p2Eg4oCcJXPigJ0uIEjDo3kgdGjhu60g4oCcZ2l0IGJpc2VjdCByZXNldCA8bOG6p24tIgorImNodXnhu4NuLWdpYW8+4oCdLiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAixJDhu5FpIHPhu5EgYmlzZWN0X3dyaXRlIHNhaTogJXMiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgZ2V0IHRoZSBvaWQgb2YgdGhlIHJldiAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbOG6pXkgb2lkIGPhu6dhIMSRaeG7g20geMOpdCBkdXnhu4d0IOKAnCVz4oCdIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gdGhlIGZpbGUgJyVzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gdOG6rXAgdGluIOKAnCVz4oCdIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgY29tbWFuZDogeW91J3JlIGN1cnJlbnRseSBpbiBhICVzLyVzIGJpc2VjdCIKK21zZ3N0ciAiTOG7h25oIGtow7RuZyBo4bujcCBs4buHOiBi4bqhbiBoaeG7h24gxJFhbmcg4bufIG3hu5l0IGJpc2VjdCAlcy8lcyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJXMgYW5kICVzIHJldmlzaW9uLlxuIgorIllvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAlc1wiIGFuZCBcImdpdCBiaXNlY3QgJXNcIiBmb3IgdGhhdC4iCittc2dzdHIgIiIKKyJC4bqhbiBwaOG6o2kgY2jhu4kgY2hvIHTDtGkgw610IG5o4bqldCBt4buZdCDEkWnhu4NtICVzIHbDoCBt4buZdCAlcy5cbiIKKyJC4bqhbiBjw7MgdGjhu4Mgc+G7rSBk4bulbmcgXCJnaXQgYmlzZWN0ICVzXCIgdsOgIFwiZ2l0IGJpc2VjdCAlc1wiIGNobyBjw6FpIMSRw7MuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKKyJZb3UgdGhlbiBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICVzIGFuZCAlcyByZXZpc2lvbi5cbiIKKyJZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJXNcIiBhbmQgXCJnaXQgYmlzZWN0ICVzXCIgZm9yIHRoYXQuIgorbXNnc3RyICIiCisiQuG6oW4gY+G6p24gYuG6r3QgxJHhuqd1IGLhurFuZyBs4buHbmggXCJnaXQgYmlzZWN0IHN0YXJ0XCIuXG4iCisiQuG6oW4gc2F1IMSRw7MgY+G6p24gcGjhuqNpIGNo4buJIGNobyB0w7RpIMOtdCBuaOG6pXQgbeG7mXQgxJFp4buDbSB4w6l0IGR1eeG7h3QgJXMgdsOgIG3hu5l0ICVzLlxuIgorIkLhuqFuIGPDsyB0aOG7gyBz4butIGThu6VuZyBcImdpdCBiaXNlY3QgJXNcIiB2w6AgXCJnaXQgYmlzZWN0ICVzXCIgY2hvIGNow7puZy4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmlzZWN0aW5nIG9ubHkgd2l0aCBhICVzIGNvbW1pdCIKK21zZ3N0ciAiY2jhu4kgdGjhu7FjIGhp4buHbiB2aeG7h2MgYmlzZWN0IHbhu5tpIG3hu5l0IGzhuqduIGNodXnhu4NuIGdpYW8gJXMiCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbWV0gYW5kIFtuXSBpbiB5b3VyCisjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIy4KKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMTgKK21zZ2lkICJBcmUgeW91IHN1cmUgW1kvbl0/ICIKK21zZ3N0ciAiQuG6oW4gY8OzIGNo4bqvYyBjaOG6r24gY2jGsGEgW1kvbl0/ICIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM3OQorbXNnaWQgIm5vIHRlcm1zIGRlZmluZWQiCittc2dzdHIgImNoxrBhIMSR4buLbmggbmdoxKlhIHRo4budaSBr4buzIG7DoG8iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgY3VycmVudCB0ZXJtcyBhcmUgJXMgZm9yIHRoZSBvbGQgc3RhdGVcbiIKKyJhbmQgJXMgZm9yIHRoZSBuZXcgc3RhdGUuXG4iCittc2dzdHIgIiIKKyJC4bqhbiBoaeG7h24gdOG6oWkgxJFhbmcg4bufIHRo4budaSBr4buzICVzIGNobyB0w6xuaCB0cuG6oW5nIGPFqVxuIgorInbDoCAlcyBjaG8gdMOsbmggdHLhuqFuZyBt4bubaS5cbiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBhcmd1bWVudCAlcyBmb3IgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgorIlN1cHBvcnRlZCBvcHRpb25zIGFyZTogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCBhbmQgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKK21zZ3N0ciAiIgorInRoYW0gc+G7kSBraMO0bmcgaOG7o3AgbOG7hyAlcyBjaG8g4oCcZ2l0IGJpc2VjdCB0ZXJtc+KAnS5cbiIKKyJDw6FjIHTDuXkgY2jhu41uIGjhu5cgdHLhu6MgbMOgOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIHbDoCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDc4CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBvcHRpb246ICclcyciCittc2dzdHIgInTDuXkgY2jhu41uIGtow7RuZyDEkcaw4bujYyB0aOG7q2Egbmjhuq1uOiDigJwlc+KAnSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IGFwcGVhciB0byBiZSBhIHZhbGlkIHJldmlzaW9uIgorbXNnc3RyICLigJwlc+KAnSBraMO0bmcgY8OzIHbhursgbmjGsCBsw6AgbeG7mXQgxJFp4buDbSB4w6l0IGR1eeG7h3QgaOG7o3AgbOG7hyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUxNAorbXNnaWQgImJhZCBIRUFEIC0gSSBuZWVkIGEgSEVBRCIKK21zZ3N0ciAic2FpIEhFQUQgLSBUw7RpIGPhuqduIG3hu5l0IEhFQUQiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hlY2tpbmcgb3V0ICclcycgZmFpbGVkLiBUcnkgJ2dpdCBiaXNlY3Qgc3RhcnQgPHZhbGlkLWJyYW5jaD4nLiIKK21zZ3N0ciAibOG6pXkgcmEg4oCcJXPigJ0gcmEgZ+G6t3AgbOG7l2kuIEjDo3kgdGjhu60gXCJnaXQgYmlzZWN0IHJlc2V0IDxuaMOhbmhfaOG7o3BfbOG7hz5cIi4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NTAKK21zZ2lkICJ3b24ndCBiaXNlY3Qgb24gY2ctc2VlaydlZCB0cmVlIgorbXNnc3RyICJz4bq9IGtow7RuZyBkaSBjaHV54buDbiBu4butYSBixrDhu5tjIHRyw6puIGPDonkgxJHGsOG7o2MgY2ctc2VlayIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU1MworbXNnaWQgImJhZCBIRUFEIC0gc3RyYW5nZSBzeW1ib2xpYyByZWYiCittc2dzdHIgInNhaSBIRUFEIC0gdGhhbSBjaGnhur91IG3hu4FtIGvhu7MgbOG6oSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU3NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZjogJyVzJyIKK21zZ3N0ciAicmVmc3BlYyBraMO0bmcgaOG7o3AgbOG7hzog4oCcJXPigJ0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzMKIG1zZ2lkICJwZXJmb3JtICdnaXQgYmlzZWN0IG5leHQnIgogbXNnc3RyICJ0aOG7sWMgaGnhu4duIOKAnGdpdCBiaXNlY3QgbmV4dOKAnSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyMgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzNQogbXNnaWQgIndyaXRlIHRoZSB0ZXJtcyB0byAuZ2l0L0JJU0VDVF9URVJNUyIKIG1zZ3N0ciAiZ2hpIHRo4budaSBr4buzIHbDoG8gLmdpdC9CSVNFQ1RfVEVSTVMiCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjQKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzcKIG1zZ2lkICJjbGVhbnVwIHRoZSBiaXNlY3Rpb24gc3RhdGUiCiBtc2dzdHIgImThu41uIGThurlwIHTDrG5oIHRy4bqhbmcgZGkgY2h1eeG7g24gbuG7rWEgYsaw4bubYyIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyNgorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzOQogbXNnaWQgImNoZWNrIGZvciBleHBlY3RlZCByZXZzIgogbXNnc3RyICJraeG7g20gdHJhIGNobyDEkWnhu4NtIHhlbSB4w6l0IGPhuqduIGTDuW5nIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTI4CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQxCittc2dpZCAicmVzZXQgdGhlIGJpc2VjdGlvbiBzdGF0ZSIKK21zZ3N0ciAixJHhurd0IGzhuqFpIHRy4bqhbmcgZGkgY2h1eeG7g24gbuG7rWEgYsaw4bubYyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0MworbXNnaWQgIndyaXRlIG91dCB0aGUgYmlzZWN0aW9uIHN0YXRlIGluIEJJU0VDVF9MT0ciCittc2dzdHIgImdoaSByYSB0w6xuaCB0cuG6oW5nIGRpIGNodXnhu4NuIG7hu61hIGLGsOG7m2MgdHJvbmcgQklTRUNUX0xPRyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0NQorbXNnaWQgImNoZWNrIGFuZCBzZXQgdGVybXMgaW4gYSBiaXNlY3Rpb24gc3RhdGUiCittc2dzdHIgImtp4buDbSB0cmEgdsOgIMSR4bq3dCB0aOG7nWkgxJFp4buDbSB0cm9uZyBkaSBjaHV54buDbiBu4butYSBixrDhu5tjIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ3Cittc2dpZCAiY2hlY2sgd2hldGhlciBiYWQgb3IgZ29vZCB0ZXJtcyBleGlzdCIKK21zZ3N0ciAia2nhu4NtIHRyYSB4ZW0gY8OhYyB0aOG7nWkgxJFp4buDbSB44bqldS904buRdCBjw7MgdOG7k24gdOG6oWkga2jDtG5nIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ5Cittc2dpZCAicHJpbnQgb3V0IHRoZSBiaXNlY3QgdGVybXMiCittc2dzdHIgImluIHJhIGPDoWMgdGjhu51pIMSRaeG7g20gZGkgY2h1eeG7g24gbuG7rWEgYsaw4bubYyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY1MQorbXNnaWQgInN0YXJ0IHRoZSBiaXNlY3Qgc2Vzc2lvbiIKK21zZ3N0ciAiYuG6r3QgxJHhuqd1IHBoacOqbiBkaSBjaHV54buDbiBu4butYSBixrDhu5tjIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUzCiBtc2dpZCAidXBkYXRlIEJJU0VDVF9IRUFEIGluc3RlYWQgb2YgY2hlY2tpbmcgb3V0IHRoZSBjdXJyZW50IGNvbW1pdCIKIG1zZ3N0ciAiIgogImPhuq1wIG5o4bqtdCBCSVNFQ1RfSEVBRCB0aGF5IHbDrCBs4bqleSByYSAoY2hlY2tpbmcgb3V0KSBs4bqnbiBjaHV54buDbiBnaWFvIGhp4buHbiBow6BuaCIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE0MworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY1NQorbXNnaWQgIm5vIGxvZyBmb3IgQklTRUNUX1dSSVRFIgorbXNnc3RyICJraMO0bmcgY8OzIG5o4bqtdCBrw70gY2hvIEJJU0VDVF9XUklURSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY3MwogbXNnaWQgIi0td3JpdGUtdGVybXMgcmVxdWlyZXMgdHdvIGFyZ3VtZW50cyIKIG1zZ3N0ciAiLS13cml0ZS10ZXJtcyBj4bqnbiBoYWkgdGhhbSBz4buRIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTQ3CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njc3CiBtc2dpZCAiLS1iaXNlY3QtY2xlYW4tc3RhdGUgcmVxdWlyZXMgbm8gYXJndW1lbnRzIgogbXNnc3RyICItLWJpc2VjdC1jbGVhbi1zdGF0ZSBraMO0bmcgbmjhuq1uIMSR4buRaSBz4buRIgogCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njg0Cittc2dpZCAiLS1iaXNlY3QtcmVzZXQgcmVxdWlyZXMgZWl0aGVyIG5vIGFyZ3VtZW50IG9yIGEgY29tbWl0IgorbXNnc3RyICIiCisiLS1iaXNlY3QtcmVzZXQgcmVxdWlyZXMga2jDtG5nIG5o4bqtbiDEkeG7kWkgc+G7kSBjxaluZyBraMO0bmcgbmjhuq1uIGzhuqduIGNodXnhu4NuIGdpYW8iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2ODgKK21zZ2lkICItLWJpc2VjdC13cml0ZSByZXF1aXJlcyBlaXRoZXIgNCBvciA1IGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1iaXNlY3Qtd3JpdGUgY+G6p24gNCBob+G6t2MgNSB0aGFtIHPhu5EiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2OTQKK21zZ2lkICItLWNoZWNrLWFuZC1zZXQtdGVybXMgcmVxdWlyZXMgMyBhcmd1bWVudHMiCittc2dzdHIgIi0tY2hlY2stYW5kLXNldC10ZXJtcyBj4bqnbiAzIHRoYW0gc+G7kSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjcwMAorbXNnaWQgIi0tYmlzZWN0LW5leHQtY2hlY2sgcmVxdWlyZXMgMiBvciAzIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1iaXNlY3QtbmV4dC1jaGVjayBj4bqnbiAyIGhv4bq3YyAzIHRoYW0gc+G7kSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjcwNgorbXNnaWQgIi0tYmlzZWN0LXRlcm1zIHJlcXVpcmVzIDAgb3IgMSBhcmd1bWVudCIKK21zZ3N0ciAiLS1iaXNlY3QtdGVybXMgY+G6p24gMCBob+G6t2MgMSB0aGFtIHPhu5EiCisKICM6IGJ1aWx0aW4vYmxhbWUuYzozMQogbXNnaWQgImdpdCBibGFtZSBbPG9wdGlvbnM+XSBbPHJldi1vcHRzPl0gWzxyZXY+XSBbLS1dIDxmaWxlPiIKLW1zZ3N0ciAiZ2l0IGJsYW1lIFs8Y8OhYy10w7l5LWNo4buNbj5dIFs8cmV2LW9wdHM+XSBbPHJldj5dIFstLV0gPHThuq1wLXRpbj4iCittc2dzdHIgImdpdCBibGFtZSBbPGPDoWMgdMO5eSBjaOG7jW4+XSBbPHJldi1vcHRzPl0gWzxyZXY+XSBbLS1dIDx04bqtcC10aW4+IgogCiAjOiBidWlsdGluL2JsYW1lLmM6MzYKIG1zZ2lkICI8cmV2LW9wdHM+IGFyZSBkb2N1bWVudGVkIGluIGdpdC1yZXYtbGlzdCgxKSIKIG1zZ3N0ciAiPHJldi1vcHRzPiDEkcaw4bujYyBtw7QgdOG6oyB0cm9uZyB0w6BpIGxp4buHdSBnaXQtcmV2LWxpc3QoMSkiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo0MDYKKyM6IGJ1aWx0aW4vYmxhbWUuYzo0MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0aW5nIGEgY29sb3I6ICVzIgogbXNnc3RyICJj4bqnbiBt4buZdCBtw6B1OiAlcyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjQxMworIzogYnVpbHRpbi9ibGFtZS5jOjQxNgogbXNnaWQgIm11c3QgZW5kIHdpdGggYSBjb2xvciIKIG1zZ3N0ciAicGjhuqNpIGvhur90IHRow7pjIGLhurFuZyBt4buZdCBtw6B1IgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzAwCisjOiBidWlsdGluL2JsYW1lLmM6NzI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29sb3IgJyVzJyBpbiBjb2xvci5ibGFtZS5yZXBlYXRlZExpbmVzIgogbXNnc3RyICJtw6B1IGtow7RuZyBo4bujcCBs4buHIOKAnCVz4oCdIHRyb25nIGNvbG9yLmJsYW1lLnJlcGVhdGVkTGluZXMiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3MTgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3NDcKIG1zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciBibGFtZS5jb2xvcmluZyIKIG1zZ3N0ciAibcOgdSBraMO0bmcgaOG7o3AgbOG7hyBjaG8gYmxhbWUuY29sb3JpbmciCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpbmQgcmV2aXNpb24gJXMgdG8gaWdub3JlIgorbXNnc3RyICJraMO0bmcgdGjhu4MgdMOsbSB0aOG6pXkgxJFp4buDbSB4w6l0IGR1eeG7h3QgJXMgxJHhu4MgbcOgIGLhu48gcXVhIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ0CiBtc2dpZCAiU2hvdyBibGFtZSBlbnRyaWVzIGFzIHdlIGZpbmQgdGhlbSwgaW5jcmVtZW50YWxseSIKIG1zZ3N0ciAiSGnhu4NuIHRo4buLIGPDoWMgbeG7pWMg4oCcYmxhbWXigJ0gbmjGsCBsw6AgY2jDum5nIHRhIHRo4bqleSBjaMO6bmcsIHTEg25nIGThuqduIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk0CisjOiBidWlsdGluL2JsYW1lLmM6ODQ1CiBtc2dpZCAiU2hvdyBibGFuayBTSEEtMSBmb3IgYm91bmRhcnkgY29tbWl0cyAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAiIgogIkhp4buDbiB0aOG7iyBTSEEtMSB0cuG6r25nIGNobyBuaOG7r25nIGzhuqduIGNodXnhu4NuIGdpYW8gYmnDqm4gZ2nhu5tpIChN4bq3YyDEkeG7i25oOiBvZmYpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk1CisjOiBidWlsdGluL2JsYW1lLmM6ODQ2CiBtc2dpZCAiRG8gbm90IHRyZWF0IHJvb3QgY29tbWl0cyBhcyBib3VuZGFyaWVzIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICJLaMO0bmcgY29pIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBn4buRYyBsw6AgZ2nhu5tpIGjhuqFuIChN4bq3YyDEkeG7i25oOiBvZmYpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk2CisjOiBidWlsdGluL2JsYW1lLmM6ODQ3CiBtc2dpZCAiU2hvdyB3b3JrIGNvc3Qgc3RhdGlzdGljcyIKIG1zZ3N0ciAiSGnhu4NuIHRo4buLIHRo4buRbmcga8OqIGPDtG5nIHPhu6ljIGzDoG0gdmnhu4djIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk3CisjOiBidWlsdGluL2JsYW1lLmM6ODQ4CiBtc2dpZCAiRm9yY2UgcHJvZ3Jlc3MgcmVwb3J0aW5nIgogbXNnc3RyICLDiXAgYnXhu5ljIGLDoW8gY8OhbyB0aeG6v24gdHJp4buDbiBjw7RuZyB2aeG7h2MiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDkKIG1zZ2lkICJTaG93IG91dHB1dCBzY29yZSBmb3IgYmxhbWUgZW50cmllcyIKIG1zZ3N0ciAiSGnhu4NuIHRo4buLIGvhur90IHh14bqldCDEkWnhu4NtIHPhu5EgY8OzIGPDoWMgbeG7pWMgdGluIOKAnGJsYW1l4oCdIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk5CisjOiBidWlsdGluL2JsYW1lLmM6ODUwCiBtc2dpZCAiU2hvdyBvcmlnaW5hbCBmaWxlbmFtZSAoRGVmYXVsdDogYXV0bykiCiBtc2dzdHIgIkhp4buDbiB0aOG7iyB0w6puIHThuq1wIHRpbiBn4buRYyAoTeG6t2MgxJHhu4tuaDogYXV0bykiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTEKIG1zZ2lkICJTaG93IG9yaWdpbmFsIGxpbmVudW1iZXIgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIkhp4buDbiB0aOG7iyBz4buRIGTDsm5nIGfhu5FjIChN4bq3YyDEkeG7i25oOiBvZmYpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAxCisjOiBidWlsdGluL2JsYW1lLmM6ODUyCiBtc2dpZCAiU2hvdyBpbiBhIGZvcm1hdCBkZXNpZ25lZCBmb3IgbWFjaGluZSBjb25zdW1wdGlvbiIKIG1zZ3N0ciAiSGnhu4NuIHRo4buLIOG7nyDEkeG7i25oIGThuqFuZyDEkcOjIHRoaeG6v3Qga+G6vyBjaG8gc+G7sSB0acOqdSBkw7luZyBi4bqxbmcgbcOheSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwMgorIzogYnVpbHRpbi9ibGFtZS5jOjg1MwogbXNnaWQgIlNob3cgcG9yY2VsYWluIGZvcm1hdCB3aXRoIHBlci1saW5lIGNvbW1pdCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiSGnhu4NuIHRo4buLIMSR4buLbmggZOG6oW5nIOKAnHBvcmNlbGFpbuKAnSB24bubaSB0aMO0bmcgdGluIGNodXnhu4NuIGdpYW8gbeG7l2kgZMOybmciCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTQKIG1zZ2lkICJVc2UgdGhlIHNhbWUgb3V0cHV0IG1vZGUgYXMgZ2l0LWFubm90YXRlIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICJEw7luZyBjw7luZyBjaOG6vyDEkeG7mSB4deG6pXQgcmEgduG7m2kgZ2l0LWFubm90YXRlIChN4bq3YyDEkeG7i25oOiBvZmYpIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA0CisjOiBidWlsdGluL2JsYW1lLmM6ODU1CiBtc2dpZCAiU2hvdyByYXcgdGltZXN0YW1wIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICJIaeG7g24gdGjhu4sgZOG6pXUgduG6v3QgdGjhu51pIGdpYW4gZOG6oW5nIHRow7QgKE3hurdjIMSR4buLbmg6IG9mZikiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDUKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTYKIG1zZ2lkICJTaG93IGxvbmcgY29tbWl0IFNIQTEgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIkhp4buDbiB0aOG7iyBTSEExIGPhu6dhIGzhuqduIGNodXnhu4NuIGdpYW8gZOG6oW5nIGTDoGkgKE3hurdjIMSR4buLbmg6IG9mZikiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDYKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTcKIG1zZ2lkICJTdXBwcmVzcyBhdXRob3IgbmFtZSBhbmQgdGltZXN0YW1wIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICJLaMO0bmcgaGnhu4NuIHRo4buLIHTDqm4gdMOhYyBnaeG6oyB2w6AgZOG6pXUgduG6v3QgdGjhu51pIGdpYW4gKE3hurdjIMSR4buLbmg6IG9mZikiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDcKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTgKIG1zZ2lkICJTaG93IGF1dGhvciBlbWFpbCBpbnN0ZWFkIG9mIG5hbWUgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIkhp4buDbiB0aOG7iyB0aMawIMSRaeG7h24gdOG7rSBj4bunYSB0w6FjIGdp4bqjIHRoYXkgdsOsIHTDqm4gKE3hurdjIMSR4buLbmg6IG9mZikiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTkKIG1zZ2lkICJJZ25vcmUgd2hpdGVzcGFjZSBkaWZmZXJlbmNlcyIKIG1zZ3N0ciAiQuG7jyBxdWEgY8OhYyBraMOhYyBiaeG7h3QgZG8ga2hv4bqjbmcgdHLhuq9uZyBnw6J5IHJhIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA5CisjOiBidWlsdGluL2JsYW1lLmM6ODYwIGJ1aWx0aW4vbG9nLmM6MTcwMgorbXNnaWQgInJldiIKK21zZ3N0ciAicmV2IgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYwCittc2dpZCAiSWdub3JlIDxyZXY+IHdoZW4gYmxhbWluZyIKK21zZ3N0ciAiQuG7jyBxdWEgPHJldj4ga2hpIGJsYW1lIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYxCittc2dpZCAiSWdub3JlIHJldmlzaW9ucyBmcm9tIDxmaWxlPiIKK21zZ3N0ciAiQuG7jyBxdWEgY8OhYyDEkWnhu4NtIHjDqXQgZHV54buHdCB04burIDx04bqtcCB0aW4+IgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYyCiBtc2dpZCAiY29sb3IgcmVkdW5kYW50IG1ldGFkYXRhIGZyb20gcHJldmlvdXMgbGluZSBkaWZmZXJlbnRseSIKIG1zZ3N0ciAic2nDqnUgZOG7ryBsaeG7h3UgZMawIHRo4burYSBtw6B1IHThu6sgZMOybmcgdHLGsOG7m2Mga2jDoWMgaOG6s24iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MTAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjMKIG1zZ2lkICJjb2xvciBsaW5lcyBieSBhZ2UiCiBtc2dzdHIgImPDoWMgZMOybmcgbcOgdSB0aGVvIHR14buVaSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgxNwotbXNnaWQgIlVzZSBhbiBleHBlcmltZW50YWwgaGV1cmlzdGljIHRvIGltcHJvdmUgZGlmZnMiCi1tc2dzdHIgIkTDuW5nIG3hu5l0IHBo4buPbmcgxJFvw6FuIHRo4butIG5naGnhu4dtIMSR4buDIHTEg25nIGPGsOG7nW5nIGPDoWMgZGlmZiIKLQotIzogYnVpbHRpbi9ibGFtZS5jOjgxOQorIzogYnVpbHRpbi9ibGFtZS5jOjg2NAogbXNnaWQgIlNwZW5kIGV4dHJhIGN5Y2xlcyB0byBmaW5kIGJldHRlciBtYXRjaCIKIG1zZ3N0ciAiVGnDqnUgdGjhu6UgdGjDqm0gbsSDbmcgdMOgaSBuZ3V5w6puIG3DoXkgbcOzYyDEkeG7gyB0w6xtIGtp4bq/bSB04buRdCBoxqFuIG7hu69hIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIwCisjOiBidWlsdGluL2JsYW1lLmM6ODY1CiBtc2dpZCAiVXNlIHJldmlzaW9ucyBmcm9tIDxmaWxlPiBpbnN0ZWFkIG9mIGNhbGxpbmcgZ2l0LXJldi1saXN0IgogbXNnc3RyICIiCiAiU+G7rSBk4bulbmcgxJFp4buDbSB4w6l0IGR1eeG7h3QgKHJldmlzaW9uKSB04burIDx04bqtcCB0aW4+IHRoYXkgdsOsIGfhu41pIOKAnGdpdC1yZXYtbGlzdOKAnSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMQorIzogYnVpbHRpbi9ibGFtZS5jOjg2NgogbXNnaWQgIlVzZSA8ZmlsZT4ncyBjb250ZW50cyBhcyB0aGUgZmluYWwgaW1hZ2UiCiBtc2dzdHIgIlPhu60gZOG7pW5nIG7hu5lpIGR1bmcgY+G7p2EgPHThuq1wIHRpbj4gbmjGsCBsw6Ag4bqjbmggY3Xhu5FpIGPDuW5nIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIyIGJ1aWx0aW4vYmxhbWUuYzo4MjMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjcgYnVpbHRpbi9ibGFtZS5jOjg2OAogbXNnaWQgInNjb3JlIgogbXNnc3RyICLEkWnhu4NtIHPhu5EiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjcKIG1zZ2lkICJGaW5kIGxpbmUgY29waWVzIHdpdGhpbiBhbmQgYWNyb3NzIGZpbGVzIgogbXNnc3RyICJUw6xtIGPDoWMgYuG6o24gc2FvIGNow6lwIGTDsm5nIHRyb25nIHbDoCBuZ2FuZyBxdWEgdOG6rXAgdGluIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIzCisjOiBidWlsdGluL2JsYW1lLmM6ODY4CiBtc2dpZCAiRmluZCBsaW5lIG1vdmVtZW50cyB3aXRoaW4gYW5kIGFjcm9zcyBmaWxlcyIKIG1zZ3N0ciAiVMOsbSBjw6FjIGRpIGNodXnhu4NuIGTDsm5nIHRyb25nIHbDoCBuZ2FuZyBxdWEgdOG6rXAgdGluIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODI0CisjOiBidWlsdGluL2JsYW1lLmM6ODY5CiBtc2dpZCAibixtIgogbXNnc3RyICJuLG0iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjQKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjkKIG1zZ2lkICJQcm9jZXNzIG9ubHkgbGluZSByYW5nZSBuLG0sIGNvdW50aW5nIGZyb20gMSIKIG1zZ3N0ciAiWOG7rSBsw70gY2jhu4kgZMOybmcgdsO5bmcgbixtLCB0w61uaCB04burIDEiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4NzMKKyM6IGJ1aWx0aW4vYmxhbWUuYzo5MjEKIG1zZ2lkICItLXByb2dyZXNzIGNhbid0IGJlIHVzZWQgd2l0aCAtLWluY3JlbWVudGFsIG9yIHBvcmNlbGFpbiBmb3JtYXRzIgogbXNnc3RyICIiCiAiLS1wcm9ncmVzcyBraMO0bmcgxJHGsOG7o2MgZMO5bmcgY8O5bmcgduG7m2kgLS1pbmNyZW1lbnRhbCBoYXkgY8OhYyDEkeG7i25oIGThuqFuZyBwb3JjZWxhaW4iCkBAIC03OTg1LDQ5ICsxMDQ1Niw0OSBAQAogIy4geW91ciBsYW5ndWFnZSBtYXkgbmVlZCBtb3JlIG9yIGZld2VyIGRpc3BsYXkKICMuIGNvbHVtbnMuCiAjLgotIzogYnVpbHRpbi9ibGFtZS5jOjkyNAorIzogYnVpbHRpbi9ibGFtZS5jOjk3MgogbXNnaWQgIjQgeWVhcnMsIDExIG1vbnRocyBhZ28iCiBtc2dzdHIgIjQgbsSDbSwgMTEgdGjDoW5nIHRyxrDhu5tjIgogCi0jOiBidWlsdGluL2JsYW1lLmM6MTAxMQorIzogYnVpbHRpbi9ibGFtZS5jOjEwNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmlsZSAlcyBoYXMgb25seSAlbHUgbGluZSIKIG1zZ2lkX3BsdXJhbCAiZmlsZSAlcyBoYXMgb25seSAlbHUgbGluZXMiCiBtc2dzdHJbMF0gInThuq1wIHRpbiAlcyBjaOG7iSBjw7MgJWx1IGTDsm5nIgogCi0jOiBidWlsdGluL2JsYW1lLmM6MTA1NworIzogYnVpbHRpbi9ibGFtZS5jOjExMjUKIG1zZ2lkICJCbGFtaW5nIGxpbmVzIgogbXNnc3RyICJDw6FjIGTDsm5nIGJsYW1lIgogCiAjOiBidWlsdGluL2JyYW5jaC5jOjI5CiBtc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSBbLXIgfCAtYV0gWy0tbWVyZ2VkIHwgLS1uby1tZXJnZWRdIgotbXNnc3RyICJnaXQgYnJhbmNoIFs8Y8OhYy10w7l5LWNo4buNbj5dIFstciB8IC1hXSBbLS1tZXJnZWQgfCAtLW5vLW1lcmdlZF0iCittc2dzdHIgImdpdCBicmFuY2ggWzxjw6FjIHTDuXkgY2jhu41uPl0gWy1yIHwgLWFdIFstLW1lcmdlZCB8IC0tbm8tbWVyZ2VkXSIKIAogIzogYnVpbHRpbi9icmFuY2guYzozMAogbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1sXSBbLWZdIDxicmFuY2gtbmFtZT4gWzxzdGFydC1wb2ludD5dIgotbXNnc3RyICJnaXQgYnJhbmNoIFs8Y8OhYy10w7l5LWNo4buNbj5dIFstbF0gWy1mXSA8dMOqbi1uaMOhbmg+IFs8xJFp4buDbS3EkeG6p3U+XSIKK21zZ3N0ciAiZ2l0IGJyYW5jaCBbPGPDoWMgdMO5eSBjaOG7jW4+XSBbLWxdIFstZl0gPHTDqm4tbmjDoW5oPiBbPMSRaeG7g20txJHhuqd1Pl0iCiAKICM6IGJ1aWx0aW4vYnJhbmNoLmM6MzEKIG1zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstcl0gKC1kIHwgLUQpIDxicmFuY2gtbmFtZT4uLi4iCi1tc2dzdHIgImdpdCBicmFuY2ggWzxjw6FjLXTDuXktY2jhu41uPl0gWy1yXSAoLWQgfCAtRCkgPHTDqm4tbmjDoW5oPiDigKYiCittc2dzdHIgImdpdCBicmFuY2ggWzxjw6FjIHTDuXkgY2jhu41uPl0gWy1yXSAoLWQgfCAtRCkgPHTDqm4tbmjDoW5oPiDigKYiCiAKICM6IGJ1aWx0aW4vYnJhbmNoLmM6MzIKIG1zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dICgtbSB8IC1NKSBbPG9sZC1icmFuY2g+XSA8bmV3LWJyYW5jaD4iCi1tc2dzdHIgImdpdCBicmFuY2ggWzxjw6FjLXTDuXktY2jhu41uPl0gKC1tIHwgLU0pIFs8bmjDoW5oLWPFqT5dIDxuaMOhbmgtbeG7m2k+IgorbXNnc3RyICJnaXQgYnJhbmNoIFs8Y8OhYyB0w7l5IGNo4buNbj5dICgtbSB8IC1NKSBbPG5ow6FuaC1jxak+XSA8bmjDoW5oLW3hu5tpPiIKIAogIzogYnVpbHRpbi9icmFuY2guYzozMwogbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gKC1jIHwgLUMpIFs8b2xkLWJyYW5jaD5dIDxuZXctYnJhbmNoPiIKLW1zZ3N0ciAiZ2l0IGJyYW5jaCBbPGPDoWMtdMO5eS1jaOG7jW4+XSAoLWMgfCAtQykgWzxuaMOhbmgtY8WpPl0gPG5ow6FuaC1t4bubaT4iCittc2dzdHIgImdpdCBicmFuY2ggWzxjw6FjIHTDuXkgY2jhu41uPl0gKC1jIHwgLUMpIFs8bmjDoW5oLWPFqT5dIDxuaMOhbmgtbeG7m2k+IgogCiAjOiBidWlsdGluL2JyYW5jaC5jOjM0CiBtc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSBbLXIgfCAtYV0gWy0tcG9pbnRzLWF0XSIKLW1zZ3N0ciAiZ2l0IGJyYW5jaCBbPGPDoWMtdMO5eS1jaOG7jW4+XSBbLXIgfCAtYV0gWy0tcG9pbnRzLWF0XSIKK21zZ3N0ciAiZ2l0IGJyYW5jaCBbPGPDoWMgdMO5eSBjaOG7jW4+XSBbLXIgfCAtYV0gWy0tcG9pbnRzLWF0XSIKIAogIzogYnVpbHRpbi9icmFuY2guYzozNQogbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1yIHwgLWFdIFstLWZvcm1hdF0iCi1tc2dzdHIgImdpdCBicmFuY2ggWzxjw6FjLXTDuXktY2jhu41uPl0gWy1yIHwgLWFdIFstLWZvcm1hdF0iCittc2dzdHIgImdpdCBicmFuY2ggWzxjw6FjIHTDuXkgY2jhu41uPl0gWy1yIHwgLWFdIFstLWZvcm1hdF0iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTUxCisjOiBidWlsdGluL2JyYW5jaC5jOjE1NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZGVsZXRpbmcgYnJhbmNoICclcycgdGhhdCBoYXMgYmVlbiBtZXJnZWQgdG9cbiIKQEAgLTgwMzYsNyArMTA1MDcsNyBAQAogIsSRYW5nIHjDs2EgbmjDoW5oIOKAnCVz4oCdIG3DoCBuw7MgbOG6oWkgxJHDoyDEkcaw4bujYyBow7JhIHRy4buZbiB2w6BvXG4iCiAiICAgICAgICAg4oCcJXPigJ0sIG5oxrBuZyB24bqrbiBjaMawYSDEkcaw4bujYyBow7JhIHRy4buZbiB2w6BvIEhFQUQuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE1NQorIzogYnVpbHRpbi9icmFuY2guYzoxNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdCBkZWxldGluZyBicmFuY2ggJyVzJyB0aGF0IGlzIG5vdCB5ZXQgbWVyZ2VkIHRvXG4iCkBAIC04MDQ1LDEyICsxMDUxNiwxMiBAQAogImtow7RuZyB4w7NhIG5ow6FuaCDigJwlc+KAnSBjw6FpIG3DoCBjaMawYSDEkcaw4bujYyBow7JhIHRy4buZbiB2w6BvXG4iCiAiICAgICAgICAg4oCcJXPigJ0sIGNobyBkw7kgbMOgIG7DsyDEkcOjIMSRxrDhu6NjIGjDsmEgdHLhu5luIHbDoG8gSEVBRC4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTY5CisjOiBidWlsdGluL2JyYW5jaC5jOjE3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZG4ndCBsb29rIHVwIGNvbW1pdCBvYmplY3QgZm9yICclcyciCiBtc2dzdHIgIktow7RuZyB0aOG7gyB0w6xtIGtp4bq/bSDEkeG7kWkgdMaw4bujbmcgY2h1eeG7g24gZ2lhbyBjaG8g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTczCisjOiBidWlsdGluL2JyYW5jaC5jOjE3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGJyYW5jaCAnJXMnIGlzIG5vdCBmdWxseSBtZXJnZWQuXG4iCkBAIC04MDU5LDExMiArMTA1MzAsMTIxIEBACiAiTmjDoW5oIOKAnCVz4oCdIGtow7RuZyDEkcaw4bujYyB0cuG7mW4gbeG7mXQgY8OhY2ggxJHhuqd5IMSR4bunLlxuIgogIk7hur91IGLhuqFuIHRo4buxYyBz4buxIG114buRbiB4w7NhIG7DsywgdGjDrCBjaOG6oXkgbOG7h25oIOKAnGdpdCBicmFuY2ggLUQgJXPigJ0uIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE4NgorIzogYnVpbHRpbi9icmFuY2guYzoxODkKIG1zZ2lkICJVcGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICJD4bqtcCBuaOG6rXQgdOG6rXAgdGluIGPhuqV1IGjDrG5oIGfhurdwIGzhu5dpIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjIxNworIzogYnVpbHRpbi9icmFuY2guYzoyMjAKIG1zZ2lkICJjYW5ub3QgdXNlIC1hIHdpdGggLWQiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBkw7luZyB0w7l5IGNo4buNbiAtYSB24bubaSAtZCIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMjMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjI2CiBtc2dpZCAiQ291bGRuJ3QgbG9vayB1cCBjb21taXQgb2JqZWN0IGZvciBIRUFEIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgdMOsbSBraeG6v20gxJHhu5FpIHTGsOG7o25nIGNodXnhu4NuIGdpYW8gY2hvIEhFQUQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjM3CisjOiBidWlsdGluL2JyYW5jaC5jOjI0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZGVsZXRlIGJyYW5jaCAnJXMnIGNoZWNrZWQgb3V0IGF0ICclcyciCiBtc2dzdHIgIktow7RuZyB0aOG7gyB4w7NhIG5ow6FuaCDigJwlc+KAnSDEkcOjIMSRxrDhu6NjIGzhuqV5IHJhIHThuqFpIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI1MgorIzogYnVpbHRpbi9icmFuY2guYzoyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3RlLXRyYWNraW5nIGJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCiBtc2dzdHIgImtow7RuZyB0w6xtIHRo4bqleSBuaMOhbmggdGhlbyBkw7VpIG3DoXkgY2jhu6cg4oCcJXPigJ0uIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI1MworIzogYnVpbHRpbi9icmFuY2guYzoyNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiYnJhbmNoICclcycgbm90IGZvdW5kLiIKIG1zZ3N0ciAia2jDtG5nIHTDrG0gdGjhuqV5IG5ow6FuaCDigJwlc+KAnS4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MjY4CisjOiBidWlsdGluL2JyYW5jaC5jOjI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJFcnJvciBkZWxldGluZyByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICclcyciCiBtc2dzdHIgIkfhurdwIGzhu5dpIGtoaSDEkWFuZyB4w7NhIG5ow6FuaCB0aGVvIGTDtWkgbcOheSBjaOG7pyDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkVycm9yIGRlbGV0aW5nIGJyYW5jaCAnJXMnIgogbXNnc3RyICJH4bq3cCBs4buXaSBraGkgeMOzYSBi4buPIG5ow6FuaCDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNzYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCAlcyAod2FzICVzKS5cbiIKIG1zZ3N0ciAixJDDoyB4w7NhIG5ow6FuaCB0aGVvIGTDtWkgbcOheSBjaOG7pyBcIiVzXCIgKHThu6tuZyBsw6AgJXMpLlxuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI3NworIzogYnVpbHRpbi9icmFuY2guYzoyODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCBicmFuY2ggJXMgKHdhcyAlcykuXG4iCiBtc2dzdHIgIk5ow6FuaCDigJwlc+KAnSDEkcOjIGLhu4sgeMOzYSAodOG7q25nIGzDoCAlcylcbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0MjEgYnVpbHRpbi90YWcuYzo1OQorIzogYnVpbHRpbi9icmFuY2guYzo0MjkgYnVpbHRpbi90YWcuYzo2MQogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBmb3JtYXQgc3RyaW5nIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggY2h14buXaSDEkeG7i25oIGThuqFuZyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0NTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDYwCittc2dpZCAiY291bGQgbm90IHJlc29sdmUgSEVBRCIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIGdp4bqjaSBIRUFEIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ2NgorIywgYy1mb3JtYXQKK21zZ2lkICJIRUFEICglcykgcG9pbnRzIG91dHNpZGUgb2YgcmVmcy9oZWFkcy8iCittc2dzdHIgIkhFQUQgKCVzKSBjaOG7iSBiw6puIG5nb8OgaSBj4bunYSByZWZzL2hlYWRzLyIKKworIzogYnVpbHRpbi9icmFuY2guYzo0ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICVzIGlzIGJlaW5nIHJlYmFzZWQgYXQgJXMiCiBtc2dzdHIgIk5ow6FuaCAlcyDEkWFuZyDEkcaw4bujYyBj4bqjaSB04buVIGzhuqFpIHThuqFpICVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ2MgorIzogYnVpbHRpbi9icmFuY2guYzo0ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICVzIGlzIGJlaW5nIGJpc2VjdGVkIGF0ICVzIgogbXNnc3RyICJOaMOhbmggJXMgxJFhbmcgxJHGsOG7o2MgZGkgY2h1eeG7g24gcGjDom4gxJHDtGkgKGJpc2VjdCkgdOG6oWkgJXMiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDc5CisjOiBidWlsdGluL2JyYW5jaC5jOjUwMgogbXNnaWQgImNhbm5vdCBjb3B5IHRoZSBjdXJyZW50IGJyYW5jaCB3aGlsZSBub3Qgb24gYW55LiIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHNhbyBjaMOpcCBuaMOhbmggaGnhu4duIGjDoG5oIHRyb25nIGtoaSBuw7MgY2jhurNuZyDhu58gxJHDonUgY+G6oy4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDgxCisjOiBidWlsdGluL2JyYW5jaC5jOjUwNAogbXNnaWQgImNhbm5vdCByZW5hbWUgdGhlIGN1cnJlbnQgYnJhbmNoIHdoaWxlIG5vdCBvbiBhbnkuIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu5VpIHTDqm4gbmjDoW5oIGhp4buHbiBow6BuaCB0cm9uZyBraGkgbsOzIGNo4bqzbmcg4bufIMSRw6J1IGPhuqMuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ5MgorIzogYnVpbHRpbi9icmFuY2guYzo1MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBicmFuY2ggbmFtZTogJyVzJyIKIG1zZ3N0ciAiVMOqbiBuaMOhbmgga2jDtG5nIGjhu6NwIGzhu4c6IOKAnCVz4oCdIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUxOQorIzogYnVpbHRpbi9icmFuY2guYzo1NDIKIG1zZ2lkICJCcmFuY2ggcmVuYW1lIGZhaWxlZCIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIMSR4buVaSB0w6puIG5ow6FuaCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MjEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQ0CiBtc2dpZCAiQnJhbmNoIGNvcHkgZmFpbGVkIgogbXNnc3RyICJH4bq3cCBs4buXaSBraGkgc2FvIGNow6lwIG5ow6FuaCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MjUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNyZWF0ZWQgYSBjb3B5IG9mIGEgbWlzbmFtZWQgYnJhbmNoICclcyciCiBtc2dzdHIgIsSQw6MgdOG6oW8gbeG7mXQgYuG6o24gc2FvIGPhu6dhIG5ow6FuaCBraHV54bq/dCBkYW5oIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyOAorIzogYnVpbHRpbi9icmFuY2guYzo1NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVuYW1lZCBhIG1pc25hbWVkIGJyYW5jaCAnJXMnIGF3YXkiCiBtc2dzdHIgIsSQw6MgxJHhu5VpIHTDqm4gbmjDoW5oIGtodXnhur90IGRhbmgg4oCcJXPigJ0gxJFpIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUzNAorIzogYnVpbHRpbi9icmFuY2guYzo1NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoIHJlbmFtZWQgdG8gJXMsIGJ1dCBIRUFEIGlzIG5vdCB1cGRhdGVkISIKIG1zZ3N0ciAiTmjDoW5oIGLhu4sgxJHhu5VpIHTDqm4gdGjDoG5oICVzLCBuaMawbmcgSEVBRCBs4bqhaSBraMO0bmcgxJHGsOG7o2MgY+G6rXAgbmjhuq10ISIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1NDMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTY2CiBtc2dpZCAiQnJhbmNoIGlzIHJlbmFtZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICJOaMOhbmggYuG7iyDEkeG7lWkgdMOqbiwgbmjGsG5nIGPhuq1wIG5o4bqtdCB04bqtcCB0aW4gY+G6pXUgaMOsbmggZ+G6t3AgbOG7l2kiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQ1CisjOiBidWlsdGluL2JyYW5jaC5jOjU2OAogbXNnaWQgIkJyYW5jaCBpcyBjb3BpZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICJOaMOhbmggxJHDoyDEkcaw4bujYyBzYW8gY2jDqXAsIG5oxrBuZyBj4bqtcCBuaOG6rXQgdOG6rXAgdGluIGPhuqV1IGjDrG5oIGfhurdwIGzhu5dpIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU2MQorIzogYnVpbHRpbi9icmFuY2guYzo1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlBsZWFzZSBlZGl0IHRoZSBkZXNjcmlwdGlvbiBmb3IgdGhlIGJyYW5jaFxuIgpAQCAtODE3NSwxODYgKzEwNjU1LDE4MCBAQAogIiAgJXNcbiIKICJOaOG7r25nIGTDsm5nIMSRxrDhu6NjIGLhuq90IMSR4bqndSBi4bqxbmcg4oCcJWPigJ0gc+G6vSDEkcaw4bujYyBj4bqvdCBi4buPLlxuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5NAorIzogYnVpbHRpbi9icmFuY2guYzo2MTgKIG1zZ2lkICJHZW5lcmljIG9wdGlvbnMiCiBtc2dzdHIgIlTDuXkgY2jhu41uIGNodW5nIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5NgorIzogYnVpbHRpbi9icmFuY2guYzo2MjAKIG1zZ2lkICJzaG93IGhhc2ggYW5kIHN1YmplY3QsIGdpdmUgdHdpY2UgZm9yIHVwc3RyZWFtIGJyYW5jaCIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIG3DoyBixINtIHbDoCBjaOG7pyDEkeG7gSwgxJHGsGEgcmEgaGFpIGzhuqduIGNobyBuaMOhbmggdGjGsOG7o25nIG5ndeG7k24iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTk3CisjOiBidWlsdGluL2JyYW5jaC5jOjYyMQogbXNnaWQgInN1cHByZXNzIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMiCiBtc2dzdHIgImtow7RuZyB4deG6pXQgY8OhYyB0aMO0bmcgdGluIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5OAorIzogYnVpbHRpbi9icmFuY2guYzo2MjIKIG1zZ2lkICJzZXQgdXAgdHJhY2tpbmcgbW9kZSAoc2VlIGdpdC1wdWxsKDEpKSIKIG1zZ3N0ciAiY8OgaSDEkeG6t3QgY2jhur8gxJHhu5kgdGhlbyBkw7VpICh4ZW0gZ2l0LXB1bGwoMSkpIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMAorIzogYnVpbHRpbi9icmFuY2guYzo2MjQKIG1zZ2lkICJkbyBub3QgdXNlIgogbXNnc3RyICJraMO0bmcgZMO5bmciCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjAyIGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MAorIzogYnVpbHRpbi9icmFuY2guYzo2MjYgYnVpbHRpbi9yZWJhc2UuYzo1MTMKIG1zZ2lkICJ1cHN0cmVhbSIKIG1zZ3N0ciAidGjGsOG7o25nIG5ndeG7k24iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjAyCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNgogbXNnaWQgImNoYW5nZSB0aGUgdXBzdHJlYW0gaW5mbyIKIG1zZ3N0ciAidGhheSDEkeG7lWkgdGjDtG5nIHRpbiB0aMaw4bujbmcgbmd14buTbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDMKLW1zZ2lkICJVbnNldCB0aGUgdXBzdHJlYW0gaW5mbyIKLW1zZ3N0ciAiQuG7jyDEkeG6t3QgdGjDtG5nIHRpbiB0aMaw4bujbmcgbmd14buTbiIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI3Cittc2dpZCAidW5zZXQgdGhlIHVwc3RyZWFtIGluZm8iCittc2dzdHIgImLhu48gxJHhurd0IHRow7RuZyB0aW4gdGjGsOG7o25nIG5ndeG7k24iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA0CisjOiBidWlsdGluL2JyYW5jaC5jOjYyOAogbXNnaWQgInVzZSBjb2xvcmVkIG91dHB1dCIKIG1zZ3N0ciAidMO0IG3DoHUga+G6v3QgeHXhuqV0IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwNQorIzogYnVpbHRpbi9icmFuY2guYzo2MjkKIG1zZ2lkICJhY3Qgb24gcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgogbXNnc3RyICJ0aGFvIHTDoWMgdHLDqm4gbmjDoW5oIOKAnHJlbW90ZS10cmFja2luZ+KAnSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDcgYnVpbHRpbi9icmFuY2guYzo2MDkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMxIGJ1aWx0aW4vYnJhbmNoLmM6NjMzCiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAiY2jhu4kgaGnhu4NuIHRo4buLIG5o4buvbmcgbmjDoW5oIG3DoCBuw7MgY2jhu6lhIGzhuqduIGNodXnhu4NuIGdpYW8iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA4IGJ1aWx0aW4vYnJhbmNoLmM6NjEwCisjOiBidWlsdGluL2JyYW5jaC5jOjYzMiBidWlsdGluL2JyYW5jaC5jOjYzNAogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyBuaOG7r25nIG5ow6FuaCBtw6AgbsOzIGtow7RuZyBjaOG7qWEgbOG6p24gY2h1eeG7g24gZ2lhbyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM3CiBtc2dpZCAiU3BlY2lmaWMgZ2l0LWJyYW5jaCBhY3Rpb25zOiIKIG1zZ3N0ciAiSMOgbmggxJHhu5luZyBnaXQtYnJhbmNoOiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM4CiBtc2dpZCAibGlzdCBib3RoIHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCiBtc2dzdHIgImxp4buHdCBrw6ogY+G6oyBuaMOhbmgg4oCccmVtb3RlLXRyYWNraW5n4oCdIHbDoCBu4buZaSBi4buZIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxNgorIzogYnVpbHRpbi9icmFuY2guYzo2NDAKIG1zZ2lkICJkZWxldGUgZnVsbHkgbWVyZ2VkIGJyYW5jaCIKIG1zZ3N0ciAieMOzYSBt4buZdCB0b8OgbiBi4buZIG5ow6FuaCDEkcOjIGjDsmEgdHLhu5luIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxNworIzogYnVpbHRpbi9icmFuY2guYzo2NDEKIG1zZ2lkICJkZWxldGUgYnJhbmNoIChldmVuIGlmIG5vdCBtZXJnZWQpIgogbXNnc3RyICJ4w7NhIG5ow6FuaCAoY2hvIGTDuSBsw6AgY2jGsGEgxJHGsOG7o2MgaMOyYSB0cuG7mW4pIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxOAorIzogYnVpbHRpbi9icmFuY2guYzo2NDIKIG1zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCBhbmQgaXRzIHJlZmxvZyIKIG1zZ3N0ciAiZGkgY2h1eeG7g24gaGF5IMSR4buVaSB0w6puIG3hu5l0IG5ow6FuaCB2w6AgcmVmbG9nIGPhu6dhIG7DsyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQzCiBtc2dpZCAibW92ZS9yZW5hbWUgYSBicmFuY2gsIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAiZGkgY2h1eeG7g24gaG/hurdjIMSR4buVaSB0w6puIG3hu5l0IG5ow6FuaCBuZ2F5IGPhuqMga2hpIMSRw61jaCDEkcOjIGPDsyBz4bq1biIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ0CiBtc2dpZCAiY29weSBhIGJyYW5jaCBhbmQgaXRzIHJlZmxvZyIKIG1zZ3N0ciAic2FvIGNow6lwIG3hu5l0IG5ow6FuaCB2w6AgcmVmbG9nIGPhu6dhIG7DsyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ1CiBtc2dpZCAiY29weSBhIGJyYW5jaCwgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgogbXNnc3RyICJzYW8gY2jDqXAgbeG7mXQgbmjDoW5oIG5nYXkgY+G6oyBraGkgxJHDrWNoIMSRw6MgY8OzIHPhurVuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMgorIzogYnVpbHRpbi9icmFuY2guYzo2NDYKIG1zZ2lkICJsaXN0IGJyYW5jaCBuYW1lcyIKIG1zZ3N0ciAibGnhu4d0IGvDqiBjw6FjIHTDqm4gbmjDoW5oIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMworIzogYnVpbHRpbi9icmFuY2guYzo2NDcKK21zZ2lkICJzaG93IGN1cnJlbnQgYnJhbmNoIG5hbWUiCittc2dzdHIgImhp4buDbiB0aOG7iyBuaMOhbmggaGnhu4duIGjDoG5oIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0OAogbXNnaWQgImNyZWF0ZSB0aGUgYnJhbmNoJ3MgcmVmbG9nIgogbXNnc3RyICJ04bqhbyByZWZsb2cgY+G7p2EgbmjDoW5oIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyNQorIzogYnVpbHRpbi9icmFuY2guYzo2NTAKIG1zZ2lkICJlZGl0IHRoZSBkZXNjcmlwdGlvbiBmb3IgdGhlIGJyYW5jaCIKIG1zZ3N0ciAic+G7rWEgbcO0IHThuqMgY2hvIG5ow6FuaCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUxCiBtc2dpZCAiZm9yY2UgY3JlYXRpb24sIG1vdmUvcmVuYW1lLCBkZWxldGlvbiIKIG1zZ3N0ciAiYnXhu5ljIHThuqFvLCBkaSBjaHV54buDbi/EkeG7lWkgdMOqbiwgeMOzYSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUyCiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGFyZSBtZXJnZWQiCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyBuaOG7r25nIG5ow6FuaCBtw6AgbsOzIMSRxrDhu6NjIGjDsmEgdHLhu5luIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyOAorIzogYnVpbHRpbi9icmFuY2guYzo2NTMKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyBuaOG7r25nIG5ow6FuaCBtw6AgbsOzIGtow7RuZyDEkcaw4bujYyBow7JhIHRy4buZbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjU0CiBtc2dpZCAibGlzdCBicmFuY2hlcyBpbiBjb2x1bW5zIgogbXNnc3RyICJsaeG7h3Qga8OqIGPDoWMgbmjDoW5oIHRyb25nIGPDoWMgY+G7mXQiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMwIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDAgYnVpbHRpbi9scy1yZW1vdGUuYzo3MAotIzogYnVpbHRpbi90YWcuYzo0MTUKLW1zZ2lkICJrZXkiCi1tc2dzdHIgImtow7NhIgotCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzMSBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQxIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzEKLSM6IGJ1aWx0aW4vdGFnLmM6NDE2Ci1tc2dpZCAiZmllbGQgbmFtZSB0byBzb3J0IG9uIgotbXNnc3RyICJ0w6puIHRyxrDhu51uZyBj4bqnbiBz4bqvcCB44bq/cCIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MzMgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MyBidWlsdGluL25vdGVzLmM6NDE1Ci0jOiBidWlsdGluL25vdGVzLmM6NDE4IGJ1aWx0aW4vbm90ZXMuYzo1NzggYnVpbHRpbi9ub3Rlcy5jOjU4MQotIzogYnVpbHRpbi90YWcuYzo0MTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjU3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIgYnVpbHRpbi9ub3Rlcy5jOjQxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQxOCBidWlsdGluL25vdGVzLmM6NTgxIGJ1aWx0aW4vbm90ZXMuYzo1ODQKKyM6IGJ1aWx0aW4vdGFnLmM6NDMzCiBtc2dpZCAib2JqZWN0IgogbXNnc3RyICLEkeG7kWkgdMaw4bujbmciCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM0CisjOiBidWlsdGluL2JyYW5jaC5jOjY1OAogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgb2YgdGhlIG9iamVjdCIKIG1zZ3N0ciAiY2jhu4kgaGnhu4NuIHRo4buLIGPDoWMgbmjDoW5oIGPhu6dhIMSR4buRaSB0xrDhu6NuZyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MzYgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OSBidWlsdGluL3RhZy5jOjQyNQorIzogYnVpbHRpbi9icmFuY2guYzo2NjAgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OCBidWlsdGluL3RhZy5jOjQ0MAogbXNnaWQgInNvcnRpbmcgYW5kIGZpbHRlcmluZyBhcmUgY2FzZSBpbnNlbnNpdGl2ZSIKIG1zZ3N0ciAic+G6r3AgeOG6v3AgdsOgIGzhu41jIGzDoCBwaMOibiBiaeG7h3QgSE9BIHRoxrDhu51uZyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MzcgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOCBidWlsdGluL3RhZy5jOjQyMwotIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjYxIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzggYnVpbHRpbi90YWcuYzo0MzgKKyM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM4CiBtc2dpZCAiZm9ybWF0IHRvIHVzZSBmb3IgdGhlIG91dHB1dCIKIG1zZ3N0ciAixJHhu4tuaCBk4bqhbmcgc+G6vSBkw7luZyBjaG8gxJHhuqd1IHJhIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjY2MCBidWlsdGluL2Nsb25lLmM6NzM5CisjOiBidWlsdGluL2JyYW5jaC5jOjY4NCBidWlsdGluL2Nsb25lLmM6Nzg1CiBtc2dpZCAiSEVBRCBub3QgZm91bmQgYmVsb3cgcmVmcy9oZWFkcyEiCi1tc2dzdHIgImtow7RuZyB0w6xtIHRo4bqleSBIRUFEIOG7nyBkxrDhu5tpIHJlZnMvaGVhZHMhIgorbXNnc3RyICJLaMO0bmcgdMOsbSB0aOG6pXkgSEVBRCDhu58gZMaw4bubaSByZWZzL2hlYWRzISIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2ODMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzA4CiBtc2dpZCAiLS1jb2x1bW4gYW5kIC0tdmVyYm9zZSBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICJ0w7l5IGNo4buNbiAtLWNvbHVtbiB2w6AgLS12ZXJib3NlIHh1bmcga2jhuq9jIG5oYXUiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Njk4IGJ1aWx0aW4vYnJhbmNoLmM6NzQ5IGJ1aWx0aW4vYnJhbmNoLmM6NzU4CisjOiBidWlsdGluL2JyYW5jaC5jOjcyMyBidWlsdGluL2JyYW5jaC5jOjc3NyBidWlsdGluL2JyYW5jaC5jOjc4NgogbXNnaWQgImJyYW5jaCBuYW1lIHJlcXVpcmVkIgogbXNnc3RyICJj4bqnbiBjaOG7iSByYSB0w6puIG5ow6FuaCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MjUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzUzCiBtc2dpZCAiQ2Fubm90IGdpdmUgZGVzY3JpcHRpb24gdG8gZGV0YWNoZWQgSEVBRCIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIMSRxrBhIHJhIG3DtCB04bqjIEhFQUQgxJHDoyB0w6FjaCBy4budaSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MzAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzU4CiBtc2dpZCAiY2Fubm90IGVkaXQgZGVzY3JpcHRpb24gb2YgbW9yZSB0aGFuIG9uZSBicmFuY2giCiBtc2dzdHIgImtow7RuZyB0aOG7gyBz4butYSBtw7QgdOG6oyBjaG8gbmhp4buBdSBoxqFuIG3hu5l0IG5ow6FuaCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIGNvbW1pdCBvbiBicmFuY2ggJyVzJyB5ZXQuIgogbXNnc3RyICJW4bqrbiBjaMawYSBjaHV54buDbiBnaWFvIHRyw6puIG5ow6FuaCDigJwlc+KAnS4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzQwCisjOiBidWlsdGluL2JyYW5jaC5jOjc2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBicmFuY2ggbmFtZWQgJyVzJy4iCiBtc2dzdHIgIktow7RuZyBjw7MgbmjDoW5oIG7DoG8gY8OzIHTDqm4g4oCcJXPigJ0uIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc1NQorIzogYnVpbHRpbi9icmFuY2guYzo3ODMKIG1zZ2lkICJ0b28gbWFueSBicmFuY2hlcyBmb3IgYSBjb3B5IG9wZXJhdGlvbiIKIG1zZ3N0ciAicXXDoSBuaGnhu4F1IG5ow6FuaCBkw6BuaCBjaG8gdGhhbyB0w6FjIHNhbyBjaMOpcCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NjQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzkyCiBtc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIGZvciBhIHJlbmFtZSBvcGVyYXRpb24iCiBtc2dzdHIgInF1w6Egbmhp4buBdSB0aGFtIHPhu5EgY2hvIHRoYW8gdMOhYyDEkeG7lWkgdMOqbiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzk3CiBtc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIHRvIHNldCBuZXcgdXBzdHJlYW0iCiBtc2dzdHIgInF1w6Egbmhp4buBdSB0aGFtIHPhu5EgxJHhu4MgxJHhurd0IHRoxrDhu6NuZyBuZ3Xhu5NuIG3hu5tpIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc3MworIzogYnVpbHRpbi9icmFuY2guYzo4MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNvdWxkIG5vdCBzZXQgdXBzdHJlYW0gb2YgSEVBRCB0byAlcyB3aGVuIGl0IGRvZXMgbm90IHBvaW50IHRvIGFueSBicmFuY2guIgpAQCAtODM2MiwzNiArMTA4MzYsMzkgQEAKICJraMO0bmcgdGjhu4MgxJHhurd0IHRoxrDhu6NuZyBuZ3Xhu5NuIGPhu6dhIEhFQUQgdGjDoG5oICVzIGtoaSBtw6AgbsOzIGNo4bqzbmcgY2jhu4kgxJHhur9uIG5ow6FuaCAiCiAibsOgbyBj4bqjLiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3NzYgYnVpbHRpbi9icmFuY2guYzo3OTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODA0IGJ1aWx0aW4vYnJhbmNoLmM6ODI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggYnJhbmNoICclcyciCiBtc2dzdHIgImtow7RuZyBjw7MgbmjDoW5oIG7DoG8gbmjGsCB0aOG6vyDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3ODAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJjaMawYSBjw7MgbmjDoW5oIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc5MgorIzogYnVpbHRpbi9icmFuY2guYzo4MjEKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgdG8gdW5zZXQgdXBzdHJlYW0iCiBtc2dzdHIgInF1w6Egbmhp4buBdSB0aGFtIHPhu5EgxJHhu4MgYuG7jyDEkeG6t3QgdGjGsOG7o25nIG5ndeG7k24iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzk2CisjOiBidWlsdGluL2JyYW5jaC5jOjgyNQogbXNnaWQgImNvdWxkIG5vdCB1bnNldCB1cHN0cmVhbSBvZiBIRUFEIHdoZW4gaXQgZG9lcyBub3QgcG9pbnQgdG8gYW55IGJyYW5jaC4iCiBtc2dzdHIgImtow7RuZyB0aOG7gyBi4buPIMSR4bq3dCB0aMaw4bujbmcgbmd14buTbiBj4bunYSBIRUFEIGtow7RuZyBjaOG7iSDEkeG6v24gbeG7mXQgbmjDoW5oIG7DoG8gY+G6oy4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6ODAyCisjOiBidWlsdGluL2JyYW5jaC5jOjgzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBoYXMgbm8gdXBzdHJlYW0gaW5mb3JtYXRpb24iCiBtc2dzdHIgIk5ow6FuaCDigJwlc+KAnSBraMO0bmcgY8OzIHRow7RuZyB0aW4gdGjGsOG7o25nIG5ndeG7k24iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6ODEyCi1tc2dpZCAiLWEgYW5kIC1yIG9wdGlvbnMgdG8gJ2dpdCBicmFuY2gnIGRvIG5vdCBtYWtlIHNlbnNlIHdpdGggYSBicmFuY2ggbmFtZSIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODQxCittc2dpZCAiIgorIlRoZSAtYSwgYW5kIC1yLCBvcHRpb25zIHRvICdnaXQgYnJhbmNoJyBkbyBub3QgdGFrZSBhIGJyYW5jaCBuYW1lLlxuIgorIkRpZCB5b3UgbWVhbiB0byB1c2U6IC1hfC1yIC0tbGlzdCA8cGF0dGVybj4/IgogbXNnc3RyICIiCi0iaGFpIHTDuXkgY2jhu41uIC1hIHbDoCAtciDDoXAgZOG7pW5nIGNobyBs4buHbmgg4oCcZ2l0IGJyYW5jaOKAnSBraMO0bmcgaOG7o3AgbMO9IMSR4buRaSB24bubaSB0w6puICIKLSJuaMOhbmgiCisiSGFpIHTDuXkgY2jhu41uIC1hIHbDoCAtciDDoXAgZOG7pW5nIGNobyBs4buHbmgg4oCcZ2l0IGJyYW5jaOKAnSBraMO0bmcgbmjhuq1uIG3hu5l0IHTDqm4gIgorIm5ow6FuaC5cbiIKKyJDw7MgcGjhuqNpIMO9IGLhuqFuIGzDoCBkw7luZzogLWF8LXIgLS1saXN0IDxt4bqrdT4/IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjgxNQorIzogYnVpbHRpbi9icmFuY2guYzo4NDUKIG1zZ2lkICIiCiAidGhlICctLXNldC11cHN0cmVhbScgb3B0aW9uIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQuIFBsZWFzZSB1c2UgJy0tdHJhY2snIG9yICIKICInLS1zZXQtdXBzdHJlYW0tdG8nIGluc3RlYWQuIgpAQCAtODM5OSwyMCArMTA4NzYsNjUgQEAKICJ0w7l5IGNo4buNbiAtLXNldC11cHN0cmVhbSDEkcOjIGtow7RuZyBjw7JuIMSRxrDhu6NjIGjhu5cgdHLhu6MgbuG7r2EuIFZ1aSBsw7JuZyBkw7luZyDigJwtLSIKICJ0cmFja+KAnSBob+G6t2Mg4oCcLS1zZXQtdXBzdHJlYW0tdG/igJ0gxJHhu4MgdGhheSB0aOG6vy4iCiAKLSM6IGJ1aWx0aW4vYnVuZGxlLmM6NDUKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTUgYnVpbHRpbi9idW5kbGUuYzoyMworbXNnaWQgImdpdCBidW5kbGUgY3JlYXRlIFs8b3B0aW9ucz5dIDxmaWxlPiA8Z2l0LXJldi1saXN0IGFyZ3M+IgorbXNnc3RyICJnaXQgYnVuZGxlIGNyZWF0ZSBbPGPDoWMgdMO5eSBjaOG7jW4+XSA8dOG6rXBfdGluPiA8Z2l0LXJldi1saXN0IGFyZ3M+IgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE2IGJ1aWx0aW4vYnVuZGxlLmM6MjgKK21zZ2lkICJnaXQgYnVuZGxlIHZlcmlmeSBbPG9wdGlvbnM+XSA8ZmlsZT4iCittc2dzdHIgImdpdCBidW5kbGUgdmVyaWZ5IFs8Y8OhYyB0w7l5IGNo4buNbj5dIDx04bqtcC10aW4+IgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE3IGJ1aWx0aW4vYnVuZGxlLmM6MzMKK21zZ2lkICJnaXQgYnVuZGxlIGxpc3QtaGVhZHMgPGZpbGU+IFs8cmVmbmFtZT4uLi5dIgorbXNnc3RyICJnaXQgYnVuZGxlIGxpc3QtaGVhZHMgPHThuq1wIHRpbj4gWzx0w6puIHRoYW0gY2hp4bq/dT4uLi5dIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE4IGJ1aWx0aW4vYnVuZGxlLmM6MzgKK21zZ2lkICJnaXQgYnVuZGxlIHVuYnVuZGxlIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSB1bmJ1bmRsZSA8dOG6rXAgdGluPiBbPHTDqm4gdGhhbSBjaGnhur91Pi4uLl0iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NjYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzc1Cittc2dpZCAiZG8gbm90IHNob3cgcHJvZ3Jlc3MgbWV0ZXIiCittc2dzdHIgImtow7RuZyBoaeG7g24gdGjhu4sgYuG7mSDEkW8gdGnhur9uIHRyw6xuaCIKKworIzogYnVpbHRpbi9idW5kbGUuYzo2OCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzcKK21zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIgorbXNnc3RyICJoaeG7g24gdGjhu4sgYuG7mSDEkW8gdGnhur9uIHRyw6xuaCIKKworIzogYnVpbHRpbi9idW5kbGUuYzo3MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzkKK21zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKK21zZ3N0ciAiaGnhu4NuIHRo4buLIGLhu5kgxJFvIHRp4bq/biB0cmnhu4NuIHRyb25nIHN14buRdCBwaGEgZ2hpIMSR4buRaSB0xrDhu6NuZyIKKworIzogYnVpbHRpbi9idW5kbGUuYzo3MyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODIKK21zZ2lkICJzaW1pbGFyIHRvIC0tYWxsLXByb2dyZXNzIHdoZW4gcHJvZ3Jlc3MgbWV0ZXIgaXMgc2hvd24iCittc2dzdHIgInTGsMahbmcgdOG7sSAtLWFsbC1wcm9ncmVzcyBraGkgYuG7mSDEkW8gdGnhur9uIHRyw6xuaCDEkcaw4bujYyB4deG6pXQgaGnhu4duIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjkzCittc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKK21zZ3N0ciAiQ+G6p24gbeG7mXQga2hvIGNo4bupYSDEkeG7gyBjw7MgdGjhu4MgdOG6oW8gbeG7mXQgYnVuZGxlLiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxMDQKK21zZ2lkICJkbyBub3Qgc2hvdyBidW5kbGUgZGV0YWlscyIKK21zZ3N0ciAia2jDtG5nIGhp4buDbiB0aOG7iyBjaGkgdGnhur90IGJ1bmRsZSAoYsOzKSIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgb2theVxuIgogbXNnc3RyICLigJwlc+KAnSB04buRdFxuIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjU4Ci1tc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKLW1zZ3N0ciAiQ+G6p24gbeG7mXQga2hvIGNo4bupYSDEkeG7gyBjw7MgdGjhu4MgdOG6oW8gbeG7mXQgYnVuZGxlLiIKLQotIzogYnVpbHRpbi9idW5kbGUuYzo2MgorIzogYnVpbHRpbi9idW5kbGUuYzoxNjAKIG1zZ2lkICJOZWVkIGEgcmVwb3NpdG9yeSB0byB1bmJ1bmRsZS4iCiBtc2dzdHIgIkPhuqduIG3hu5l0IGtobyBjaOG7qWEgxJHhu4MgY8OzIHRo4buDIGdp4bqjaSBuw6luIG3hu5l0IGJ1bmRsZS4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo1ODcKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTY4IGJ1aWx0aW4vcmVtb3RlLmM6MTY4NgorbXNnaWQgImJlIHZlcmJvc2U7IG11c3QgYmUgcGxhY2VkIGJlZm9yZSBhIHN1YmNvbW1hbmQiCittc2dzdHIgImNoaSB0aeG6v3Q7IHBo4bqjaSDEkcaw4bujYyDEkeG6t3QgdHLGsOG7m2MgbeG7mXQgbOG7h25oLWNvbiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxOTAgYnVpbHRpbi9yZW1vdGUuYzoxNzE3CisjLCBjLWZvcm1hdAorbXNnaWQgIlVua25vd24gc3ViY29tbWFuZDogJXMiCittc2dzdHIgIktow7RuZyBoaeG7g3UgY8OidSBs4buHbmggY29uOiAlcyIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU5NQogbXNnaWQgIiIKICJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtIgogInAgfCA8dHlwZT4gfCAtLXRleHRjb252IHwgLS1maWx0ZXJzKSBbLS1wYXRoPTxwYXRoPl0gPG9iamVjdD4iCkBAIC04NDIwLDcgKzEwOTQyLDcgQEAKICJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtIgogInAgfCA8a2nhu4N1PiB8IC0tdGV4dGNvbnYpIHwgLS1maWx0ZXJzKSBbLS1wYXRoPTzEkcaw4budbmcvZOG6q24+XSA8xJHhu5FpX3TGsOG7o25nPiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU4OAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU5NgogbXNnaWQgIiIKICJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCiAiZmlsdGVyc10iCkBAIC04NDI4LDEzOSArMTA5NTAsMTM5IEBACiAiZ2l0IGNhdC1maWxlICgtLWJhdGNoIHwgLS1iYXRjaC1jaGVjaykgWy0tZm9sbG93LXN5bWxpbmtzXSBbLS10ZXh0Y29udiB8IC0tIgogImZpbHRlcnNdIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjA5CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjE3CiBtc2dpZCAib25seSBvbmUgYmF0Y2ggb3B0aW9uIG1heSBiZSBzcGVjaWZpZWQiCiBtc2dzdHIgImNo4buJIG3hu5l0IHTDuXkgY2jhu41uIGJhdGNoIMSRxrDhu6NjIGNo4buJIHJhIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjI3CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM1CiBtc2dpZCAiPHR5cGU+IGNhbiBiZSBvbmUgb2Y6IGJsb2IsIHRyZWUsIGNvbW1pdCwgdGFnIgogbXNnc3RyICI8a2nhu4N1PiBsw6AgbeG7mXQgdHJvbmcgc+G7kTogYmxvYiwgdHJlZSwgY29tbWl0IGhv4bq3YyB0YWciCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MjgKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzYKIG1zZ2lkICJzaG93IG9iamVjdCB0eXBlIgogbXNnc3RyICJoaeG7g24gdGjhu4sga2nhu4N1IMSR4buRaSB0xrDhu6NuZyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYyOQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNwogbXNnaWQgInNob3cgb2JqZWN0IHNpemUiCiBtc2dzdHIgImhp4buDbiB0aOG7iyBrw61jaCB0aMaw4bubYyDEkeG7kWkgdMaw4bujbmciCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzEKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzkKIG1zZ2lkICJleGl0IHdpdGggemVybyB3aGVuIHRoZXJlJ3Mgbm8gZXJyb3IiCiBtc2dzdHIgInRob8OhdCB24bubaSAwIGtoaSBraMO0bmcgY8OzIGzhu5dpIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjMyCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQwCiBtc2dpZCAicHJldHR5LXByaW50IG9iamVjdCdzIGNvbnRlbnQiCiBtc2dzdHIgImluIG7hu5lpIGR1bmcgxJHhu5FpIHTGsOG7o25nIGThuqFuZyBk4buFIMSR4buNYyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MgogbXNnaWQgImZvciBibG9iIG9iamVjdHMsIHJ1biB0ZXh0Y29udiBvbiBvYmplY3QncyBjb250ZW50IgogbXNnc3RyICJ24bubaSDEkeG7kWkgdMaw4bujbmcgYmxvYiwgY2jhuqF5IGzhu4duaCB0ZXh0Y29udiB0csOqbiBu4buZaSBkdW5nIGPhu6dhIMSR4buRaSB0xrDhu6NuZyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNgorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NAogbXNnaWQgImZvciBibG9iIG9iamVjdHMsIHJ1biBmaWx0ZXJzIG9uIG9iamVjdCdzIGNvbnRlbnQiCiBtc2dzdHIgInbhu5tpIMSR4buRaSB0xrDhu6NuZyBibG9iLCBjaOG6oXkgbOG7h25oIGZpbHRlcnMgdHLDqm4gbuG7mWkgZHVuZyBj4bunYSDEkeG7kWkgdMaw4bujbmciCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzcgZ2l0LXN1Ym1vZHVsZS5zaDo4NTcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDUgZ2l0LXN1Ym1vZHVsZS5zaDoxMDAyCiBtc2dpZCAiYmxvYiIKIG1zZ3N0ciAiYmxvYiIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzOAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NgogbXNnaWQgInVzZSBhIHNwZWNpZmljIHBhdGggZm9yIC0tdGV4dGNvbnYvLS1maWx0ZXJzIgogbXNnc3RyICJkw7luZyBt4buZdCDEkcaw4budbmcgZOG6q24gcsO1IHLDoG5nIGNobyAtLXRleHRjb252Ly0tZmlsdGVycyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0OAogbXNnaWQgImFsbG93IC1zIGFuZCAtdCB0byB3b3JrIHdpdGggYnJva2VuL2NvcnJ1cHQgb2JqZWN0cyIKIG1zZ3N0ciAiY2hvIHBow6lwIC1zIHbDoCAtdCDEkeG7gyBsw6BtIHZp4buHYyB24bubaSBjw6FjIMSR4buRaSB0xrDhu6NuZyBzYWkvaOG7j25nIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjQxCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ5CiBtc2dpZCAiYnVmZmVyIC0tYmF0Y2ggb3V0cHV0IgogbXNnc3RyICLEkeG7h20ga+G6v3QgeHXhuqV0IC0tYmF0Y2giCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDMKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTEKIG1zZ2lkICJzaG93IGluZm8gYW5kIGNvbnRlbnQgb2Ygb2JqZWN0cyBmZWQgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgIiIKICJoaeG7g24gdGjhu4sgdGjDtG5nIHRpbiB2w6AgbuG7mWkgZHVuZyBj4bunYSBjw6FjIMSR4buRaSB0xrDhu6NuZyBs4bqleSB04burIMSR4bqndSB2w6BvIHRpw6p1IGNodeG6qW4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTUKIG1zZ2lkICJzaG93IGluZm8gYWJvdXQgb2JqZWN0cyBmZWQgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgImhp4buDbiB0aOG7iyBjw6FjIHRow7RuZyB0aW4gduG7gSDEkeG7kWkgdMaw4bujbmcgZmVkICB04burIMSR4bqndSB2w6BvIHRpw6p1IGNodeG6qW4iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTEKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTkKIG1zZ2lkICJmb2xsb3cgaW4tdHJlZSBzeW1saW5rcyAodXNlZCB3aXRoIC0tYmF0Y2ggb3IgLS1iYXRjaC1jaGVjaykiCiBtc2dzdHIgInRoZW8gbGnDqm4ga+G6v3QgbeG7gW0gdHJvbmctY8OieSAoxJHGsOG7o2MgZMO5bmcgduG7m2kgLS1iYXRjaCBoYXkgLS1iYXRjaC1jaGVjaykiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTMKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NjEKIG1zZ2lkICJzaG93IGFsbCBvYmplY3RzIHdpdGggLS1iYXRjaCBvciAtLWJhdGNoLWNoZWNrIgogbXNnc3RyICJoaeG7g24gdGjhu4sgbeG7jWkgxJHhu5FpIHTGsOG7o25nIHbhu5tpIC0tYmF0Y2ggaGF5IC0tYmF0Y2gtY2hlY2siCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTUKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NjMKIG1zZ2lkICJkbyBub3Qgb3JkZXIgLS1iYXRjaC1hbGwtb2JqZWN0cyBvdXRwdXQiCiBtc2dzdHIgIsSR4burbmcgc+G6r3AgeOG6v3AgxJHhuqd1IHJhIC0tYmF0Y2gtYWxsLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjEyCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxMwogbXNnaWQgImdpdCBjaGVjay1hdHRyIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSBbLS1dIDxwYXRobmFtZT4uLi4iCiBtc2dzdHIgImdpdCBjaGVjay1hdHRyIFstYSB8IC0tYWxsIHwgPGF0dHI+4oCmXSBbLS1dIHTDqm4txJHGsOG7nW5nLWThuqtu4oCmIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxMworIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTQKIG1zZ2lkICJnaXQgY2hlY2stYXR0ciAtLXN0ZGluIFstel0gWy1hIHwgLS1hbGwgfCA8YXR0cj4uLi5dIgogbXNnc3RyICJnaXQgY2hlY2stYXR0ciAtLXN0ZGluIFstel0gWy1hIHwgLS1hbGwgfCA8YXR0cj7igKZdIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMAorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjEKIG1zZ2lkICJyZXBvcnQgYWxsIGF0dHJpYnV0ZXMgc2V0IG9uIGZpbGUiCiBtc2dzdHIgImLDoW8gY8OhbyB04bqldCBj4bqjIGPDoWMgdGh14buZYyB0w61uaCDEkeG6t3QgdHLDqm4gdOG6rXAgdGluIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMQorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjIKIG1zZ2lkICJ1c2UgLmdpdGF0dHJpYnV0ZXMgb25seSBmcm9tIHRoZSBpbmRleCIKIG1zZ3N0ciAiY2jhu4kgZMO5bmcgLmdpdGF0dHJpYnV0ZXMgdOG7qyBi4bqjbmcgbeG7pWMgbOG7pWMiCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIyIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjQgYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMQorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjMgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNSBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAyCiBtc2dpZCAicmVhZCBmaWxlIG5hbWVzIGZyb20gc3RkaW4iCiBtc2dzdHIgIsSR4buNYyB0w6puIHThuq1wIHRpbiB04burIMSR4bqndSB2w6BvIHRpw6p1IGNodeG6qW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjI0IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjYKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjI1IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjcKIG1zZ2lkICJ0ZXJtaW5hdGUgaW5wdXQgYW5kIG91dHB1dCByZWNvcmRzIGJ5IGEgTlVMIGNoYXJhY3RlciIKIG1zZ3N0ciAiY2jhuqVtIGThu6l0IGPDoWMgYuG6o24gZ2hpIHbDoG8gdsOgIHJhIGLhurFuZyBrw70gdOG7sSBOVUxMIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjIwIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM0IGJ1aWx0aW4vZ2MuYzo1MTcKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTUKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjEgYnVpbHRpbi9jaGVja291dC5jOjE0NjQgYnVpbHRpbi9nYy5jOjUzNworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5OQogbXNnaWQgInN1cHByZXNzIHByb2dyZXNzIHJlcG9ydGluZyIKIG1zZ3N0ciAiY2jhurduIGPDoWMgYsOhbyBjw6FvIHRp4bq/biB0csOsbmggaG/huqF0IMSR4buZbmciCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjgKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjkKIG1zZ2lkICJzaG93IG5vbi1tYXRjaGluZyBpbnB1dCBwYXRocyIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIG5o4buvbmcgxJHGsOG7nW5nIGThuqtuIMSR4bqndSB2w6BvIGtow7RuZyBraOG7m3AgduG7m2kgbeG6q3UiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzAKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MzEKIG1zZ2lkICJpZ25vcmUgaW5kZXggd2hlbiBjaGVja2luZyIKIG1zZ3N0ciAiYuG7jyBxdWEgbeG7pWMgbOG7pWMga2hpIGtp4buDbSB0cmEiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTU5CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2MwogbXNnaWQgImNhbm5vdCBzcGVjaWZ5IHBhdGhuYW1lcyB3aXRoIC0tc3RkaW4iCiBtc2dzdHIgImtow7RuZyB0aOG7gyBjaOG7iSDEkeG7i25oIGPDoWMgdMOqbiDEkcaw4budbmcgZOG6q24gduG7m2kgLS1zdGRpbiIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjIKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY2CiBtc2dpZCAiLXogb25seSBtYWtlcyBzZW5zZSB3aXRoIC0tc3RkaW4iCiBtc2dzdHIgIi16IGNo4buJIGjhu6NwIGzDvSB24bubaSAtLXN0ZGluIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2NAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjgKIG1zZ2lkICJubyBwYXRoIHNwZWNpZmllZCIKIG1zZ3N0ciAiY2jGsGEgY2jhu4kgcmEgxJHGsOG7nW5nIGThuqtuIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2OAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzIKIG1zZ2lkICItLXF1aWV0IGlzIG9ubHkgdmFsaWQgd2l0aCBhIHNpbmdsZSBwYXRobmFtZSIKIG1zZ3N0ciAiLS1xdWlldCBjaOG7iSBo4bujcCBs4buHIHbhu5tpIHTDqm4gxJHGsOG7nW5nIGThuqtuIMSRxqFuIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3MAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzQKIG1zZ2lkICJjYW5ub3QgaGF2ZSBib3RoIC0tcXVpZXQgYW5kIC0tdmVyYm9zZSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGTDuW5nIGPhuqMgaGFpIHTDuXkgY2jhu41uIC0tcXVpZXQgdsOgIC0tdmVyYm9zZSIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzMKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTc3CiBtc2dpZCAiLS1ub24tbWF0Y2hpbmcgaXMgb25seSB2YWxpZCB3aXRoIC0tdmVyYm9zZSIKIG1zZ3N0ciAidMO5eS1jaOG7jW4gLS1ub24tbWF0Y2hpbmcgY2jhu4kgaOG7o3AgbOG7hyBraGkgZMO5bmcgduG7m2kgLS12ZXJib3NlIgogCiAjOiBidWlsdGluL2NoZWNrLW1haWxtYXAuYzo5CiBtc2dpZCAiZ2l0IGNoZWNrLW1haWxtYXAgWzxvcHRpb25zPl0gPGNvbnRhY3Q+Li4uIgotbXNnc3RyICJnaXQgY2hlY2stbWFpbG1hcCBbPGPDoWMtdMO5eS1jaOG7jW4+XSA8ZGFuaC1i4bqhPuKApiIKK21zZ3N0ciAiZ2l0IGNoZWNrLW1haWxtYXAgWzxjw6FjIHTDuXkgY2jhu41uPl0gPGRhbmgtYuG6oT7igKYiCiAKICM6IGJ1aWx0aW4vY2hlY2stbWFpbG1hcC5jOjE0CiBtc2dpZCAiYWxzbyByZWFkIGNvbnRhY3RzIGZyb20gc3RkaW4iCkBAIC04NTc1LDE2NiArMTEwOTcsMjE3IEBACiBtc2dpZCAibm8gY29udGFjdHMgc3BlY2lmaWVkIgogbXNnc3RyICJjaMawYSBjaOG7iSByYSBkYW5oIGLhuqEiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxMjgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxMzEKIG1zZ2lkICJnaXQgY2hlY2tvdXQtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKLW1zZ3N0ciAiZ2l0IGNoZWNrb3V0LWluZGV4IFs8Y8OhYy10w7l5LWNo4buNbj5dIFstLV0gWzx04bqtcC10aW4+4oCmXSIKK21zZ3N0ciAiZ2l0IGNoZWNrb3V0LWluZGV4IFs8Y8OhYyB0w7l5IGNo4buNbj5dIFstLV0gWzx04bqtcC10aW4+4oCmXSIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE0NQorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE0OAogbXNnaWQgInN0YWdlIHNob3VsZCBiZSBiZXR3ZWVuIDEgYW5kIDMgb3IgYWxsIgogbXNnc3RyICJzdGFnZSBuw6puIGdp4buvYSAxIHbDoCAzIGhheSBhbGwiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjQKIG1zZ2lkICJjaGVjayBvdXQgYWxsIGZpbGVzIGluIHRoZSBpbmRleCIKIG1zZ3N0ciAibOG6pXkgcmEgdG/DoG4gYuG7mSBjw6FjIHThuq1wIHRpbiB0cm9uZyBi4bqjbmcgbeG7pWMgbOG7pWMiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjUKIG1zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgZXhpc3RpbmcgZmlsZXMiCiBtc2dzdHIgIsOpcCBideG7mWMgZ2hpIMSRw6ggbMOqbiB04bqtcCB0aW4gxJHDoyBz4bq1biBjw7MgdOG7qyB0csaw4bubYyIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NwogbXNnaWQgIm5vIHdhcm5pbmcgZm9yIGV4aXN0aW5nIGZpbGVzIGFuZCBmaWxlcyBub3QgaW4gaW5kZXgiCiBtc2dzdHIgIiIKICJraMO0bmcgY+G6o25oIGLDoW8gY2hvIG5o4buvbmcgdOG6rXAgdGluIHThu5NuIHThuqFpIHbDoCBraMO0bmcgY8OzIHRyb25nIGLhuqNuZyBt4bulYyBs4bulYyIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2OQogbXNnaWQgImRvbid0IGNoZWNrb3V0IG5ldyBmaWxlcyIKIG1zZ3N0ciAia2jDtG5nIGNoZWNrb3V0IGPDoWMgdOG6rXAgdGluIG3hu5tpIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcxCiBtc2dpZCAidXBkYXRlIHN0YXQgaW5mb3JtYXRpb24gaW4gdGhlIGluZGV4IGZpbGUiCiBtc2dzdHIgImPhuq1wIG5o4bqtdCB0aMO0bmcgdGluIHRo4buRbmcga8OqIHRyb25nIHThuq1wIHRpbiBsxrB1IGLhuqNuZyBt4bulYyBs4bulYyBt4bubaSIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3MgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NQogbXNnaWQgInJlYWQgbGlzdCBvZiBwYXRocyBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAixJHhu41jIGRhbmggc8OhY2ggxJHGsOG7nW5nIGThuqtuIHThu6sgxJHhuqd1IHbDoG8gdGnDqnUgY2h14bqpbiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NwogbXNnaWQgIndyaXRlIHRoZSBjb250ZW50IHRvIHRlbXBvcmFyeSBmaWxlcyIKIG1zZ3N0ciAiZ2hpIG7hu5lpIGR1bmcgdsOgbyB04bqtcCB0aW4gdOG6oW0iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzUgYnVpbHRpbi9jb2x1bW4uYzozMQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzEKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODUzCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjY4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc4IGJ1aWx0aW4vY29sdW1uLmM6MzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxMSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY3MgogbXNnaWQgInN0cmluZyIKIG1zZ3N0ciAiY2h14buXaSIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3OQogbXNnaWQgIndoZW4gY3JlYXRpbmcgZmlsZXMsIHByZXBlbmQgPHN0cmluZz4iCiBtc2dzdHIgImtoaSB04bqhbyBjw6FjIHThuq1wIHRpbiwgbuG7kWkgdGjDqm0gPGNodeG7l2k+IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTgxCiBtc2dpZCAiY29weSBvdXQgdGhlIGZpbGVzIGZyb20gbmFtZWQgc3RhZ2UiCiBtc2dzdHIgInNhbyBjaMOpcCByYSBjw6FjIHThuq1wIHRpbiB04burIGLhu4cgcGjDs25nIGPDsyB0w6puIgogCiAjOiBidWlsdGluL2NoZWNrb3V0LmM6MzEKIG1zZ2lkICJnaXQgY2hlY2tvdXQgWzxvcHRpb25zPl0gPGJyYW5jaD4iCi1tc2dzdHIgImdpdCBjaGVja291dCBbPGPDoWMtdMO5eS1jaOG7jW4+XSA8bmjDoW5oPiIKK21zZ3N0ciAiZ2l0IGNoZWNrb3V0IFs8Y8OhYyB0w7l5IGNo4buNbj5dIDxuaMOhbmg+IgogCiAjOiBidWlsdGluL2NoZWNrb3V0LmM6MzIKIG1zZ2lkICJnaXQgY2hlY2tvdXQgWzxvcHRpb25zPl0gWzxicmFuY2g+XSAtLSA8ZmlsZT4uLi4iCi1tc2dzdHIgImdpdCBjaGVja291dCBbPGPDoWMtdMO5eS1jaOG7jW4+XSBbPG5ow6FuaD5dIC0tIDx04bqtcC10aW4+4oCmIgorbXNnc3RyICJnaXQgY2hlY2tvdXQgWzxjw6FjIHTDuXkgY2jhu41uPl0gWzxuaMOhbmg+XSAtLSA8dOG6rXAtdGluPuKApiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjE0NCBidWlsdGluL2NoZWNrb3V0LmM6MTc3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzcKK21zZ2lkICJnaXQgc3dpdGNoIFs8b3B0aW9ucz5dIFs8YnJhbmNoPl0iCittc2dzdHIgImdpdCBzd2l0Y2ggWzxjw6FjIHTDuXkgY2jhu41uPl0gWzxuaMOhbmg+XSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQyCittc2dpZCAiZ2l0IHJlc3RvcmUgWzxvcHRpb25zPl0gWy0tc291cmNlPTxicmFuY2g+XSA8ZmlsZT4uLi4iCittc2dzdHIgImdpdCByZXN0b3JlIFs8Y8OhYyB0w7l5IGNo4buNbj5dIFstLXNvdXJjZT08bmjDoW5oPl0gPHThuq1wIHRpbj4uLi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzUgYnVpbHRpbi9jaGVja291dC5jOjIxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSBvdXIgdmVyc2lvbiIKIG1zZ3N0ciAixJHGsOG7nW5nIGThuqtuIOKAnCVz4oCdIGtow7RuZyBjw7MgY8OhYyBwaGnDqm4gYuG6o24gY+G7p2EgY2jDum5nIHRhIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzkKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjIxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSB0aGVpciB2ZXJzaW9uIgogbXNnc3RyICLEkcaw4budbmcgZOG6q24g4oCcJXPigJ0ga2jDtG5nIGPDsyBjw6FjIHBoacOqbiBi4bqjbiBj4bunYSBjaMO6bmciCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgYWxsIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKIG1zZ3N0ciAixJHGsOG7nW5nIGThuqtuIOKAnCVz4oCdIGtow7RuZyBjw7MgdOG6pXQgY+G6oyBjw6FjIHBoacOqbiBi4bqjbiBj4bqnbiB0aGnhur90IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjA2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjQzCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKIG1zZ3N0ciAixJHGsOG7nW5nIGThuqtuIOKAnCVz4oCdIGtow7RuZyBjw7MgY8OhYyBwaGnDqm4gYuG6o24gY+G6p24gdGhp4bq/dCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjIyNAorIzogYnVpbHRpbi9jaGVja291dC5jOjI2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcyc6IGNhbm5vdCBtZXJnZSIKIG1zZ3N0ciAixJHGsOG7nW5nIGThuqtuIOKAnCVz4oCdOiBraMO0bmcgdGjhu4MgaMOyYSB0cuG7mW4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNDAKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGFkZCBtZXJnZSByZXN1bHQgZm9yICclcyciCiBtc2dzdHIgIktow7RuZyB0aOG7gyB0aMOqbSBr4bq/dCBxdeG6oyBow7JhIHRy4buZbiBjaG8g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNjIgYnVpbHRpbi9jaGVja291dC5jOjI2NSBidWlsdGluL2NoZWNrb3V0LmM6MjY4Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjcxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY3JlYXRlZCAlZCBtZXJnZSBjb25mbGljdCIKK21zZ2lkX3BsdXJhbCAiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0cyIKK21zZ3N0clswXSAixJDDoyB04bqhbyBs4bqhaSAlZCB4dW5nIMSR4buZdCBow7JhIHRy4buZbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4MgorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSAlcyIKK21zZ2lkX3BsdXJhbCAiVXBkYXRlZCAlZCBwYXRocyBmcm9tICVzIgorbXNnc3RyWzBdICLEkMOjIGPhuq1wIG5o4bqtdCDEkcaw4budbmcgZOG6q24gJWQgdOG7qyAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4OQorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSB0aGUgaW5kZXgiCittc2dpZF9wbHVyYWwgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSB0aGUgaW5kZXgiCittc2dzdHJbMF0gIsSQw6MgY+G6rXAgbmjhuq10IMSRxrDhu51uZyBk4bqrbiAlZCB04burIG3hu6VjIGzhu6VjIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDEyIGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTUgYnVpbHRpbi9jaGVja291dC5jOjQxOAorIzogYnVpbHRpbi9jaGVja291dC5jOjQyMgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggdXBkYXRpbmcgcGF0aHMiCiBtc2dzdHIgImtow7RuZyDEkcaw4bujYyBkw7luZyDigJwlc+KAnSB24bubaSBjw6FjIMSRxrDhu51uZyBk4bqrbiBj4bqtcCBuaOG6rXQiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzQgYnVpbHRpbi9jaGVja291dC5jOjI3NworIzogYnVpbHRpbi9jaGVja291dC5jOjQyNSBidWlsdGluL2NoZWNrb3V0LmM6NDI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKIG1zZ3N0ciAia2jDtG5nIMSRxrDhu6NjIGTDuW5nIOKAnCVz4oCdIHbhu5tpICVzIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjgwCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCB1cGRhdGUgcGF0aHMgYW5kIHN3aXRjaCB0byBicmFuY2ggJyVzJyBhdCB0aGUgc2FtZSB0aW1lLiIKIG1zZ3N0ciAiIgogIktow7RuZyB0aOG7gyBj4bqtcCBuaOG6rXQgY8OhYyDEkcaw4budbmcgZOG6q24gdsOgIGNodXnhu4NuIMSR4bq/biBuaMOhbmgg4oCcJXPigJ0gY8O5bmcgbeG7mXQgbMO6Yy4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozNDkgYnVpbHRpbi9jaGVja291dC5jOjM1NgorIzogYnVpbHRpbi9jaGVja291dC5jOjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICJuZWl0aGVyICclcycgb3IgJyVzJyBpcyBzcGVjaWZpZWQiCittc2dzdHIgImtow7RuZyBjaOG7iSDEkeG7i25oICclcycga2jDtG5nICclcyciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBtdXN0IGJlIHVzZWQgd2hlbiAnJXMnIGlzIG5vdCBzcGVjaWZpZWQiCittc2dzdHIgInBo4bqjaSBjw7Mg4oCcJXPigJ0ga2hpIGtow7RuZyBjaOG7iSDEkeG7i25oIOKAnCVz4oCdIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDQ1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBvciAnJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJXMiCittc2dzdHIgIiclcycgaGF5ICclcycga2jDtG5nIHRo4buDIMSRxrDhu6NjIHPhu60gZOG7pW5nIHbhu5tpICVzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTA5IGJ1aWx0aW4vY2hlY2tvdXQuYzo1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGlzIHVubWVyZ2VkIgogbXNnc3RyICLEkcaw4budbmcgZOG6q24g4oCcJXPigJ0ga2jDtG5nIMSRxrDhu6NjIGjDsmEgdHLhu5luIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NjA4CisjOiBidWlsdGluL2NoZWNrb3V0LmM6Njg0IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MTA2CiBtc2dpZCAieW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiCiBtc2dzdHIgImLhuqFuIGPhuqduIHBo4bqjaSBnaeG6o2kgcXV54bq/dCBi4bqjbmcgbeG7pWMgbOG7pWMgaGnhu4duIHThuqFpIGPhu6dhIGLhuqFuIHRyxrDhu5tjIMSRw6MiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3NDUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNhbm5vdCBjb250aW51ZSB3aXRoIHN0YWdlZCBjaGFuZ2VzIGluIHRoZSBmb2xsb3dpbmcgZmlsZXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJraMO0bmcgdGjhu4MgdGnhur9wIHThu6VjIHbhu5tpIGPDoWMgdGhheSDEkeG7lWkgxJHDoyDEkcaw4bujYyDEkcawYSBsw6puIGLhu4cgcGjDs25nIHRyb25nIGPDoWMgZMOybmcgIgorInNhdTpcbiIKKyIlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjgzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW4gbm90IGRvIHJlZmxvZyBmb3IgJyVzJzogJXNcbiIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIHRo4buxYyBoaeG7h24gcmVmbG9nIGNobyDigJwlc+KAnTogJXNcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc4NgorIzogYnVpbHRpbi9jaGVja291dC5jOjg3OQogbXNnaWQgIkhFQUQgaXMgbm93IGF0IgogbXNnc3RyICJIRUFEIGhp4buHbiBnaeG7nSB04bqhaSIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc5MCBidWlsdGluL2Nsb25lLmM6NjkyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODgzIGJ1aWx0aW4vY2xvbmUuYzo3MTcKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIEhFQUQiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBj4bqtcCBuaOG6rXQgSEVBRCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc5NAorIzogYnVpbHRpbi9jaGVja291dC5jOjg4NwogIywgYy1mb3JtYXQKIG1zZ2lkICJSZXNldCBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICLEkOG6t3QgbOG6oWkgbmjDoW5oIOKAnCVz4oCdXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3OTcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWxyZWFkeSBvbiAnJXMnXG4iCiBtc2dzdHIgIsSQw6Mgc+G6tW4gc8OgbmcgdHLDqm4g4oCcJXPigJ1cbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjgwMQorIzogYnVpbHRpbi9jaGVja291dC5jOjg5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJTd2l0Y2hlZCB0byBhbmQgcmVzZXQgYnJhbmNoICclcydcbiIKIG1zZ3N0ciAixJDDoyBjaHV54buDbiB04bubaSB2w6AgxJHhurd0IGzhuqFpIG5ow6FuaCDigJwlc+KAnVxuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODAzIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTY2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODk2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlN3aXRjaGVkIHRvIGEgbmV3IGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIsSQw6MgY2h1eeG7g24gxJHhur9uIG5ow6FuaCBt4bubaSDigJwlc+KAnVxuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODA1CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN3aXRjaGVkIHRvIGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIsSQw6MgY2h1eeG7g24gxJHhur9uIG5ow6FuaCDigJwlc+KAnVxuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODU2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAuLi4gYW5kICVkIG1vcmUuXG4iCiBtc2dzdHIgIiDigKYgdsOgIG5oaeG7gXUgaMahbiAlZC5cbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjg2MgorIzogYnVpbHRpbi9jaGVja291dC5jOjk1NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiV2FybmluZzogeW91IGFyZSBsZWF2aW5nICVkIGNvbW1pdCBiZWhpbmQsIG5vdCBjb25uZWN0ZWQgdG9cbiIKQEAgLTg3NTMsNyArMTEzMjYsNyBAQAogIlxuIgogIiVzXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3YW50IHRvIGtlZXAgaXQgYnkgY3JlYXRpbmcgYSBuZXcgYnJhbmNoLCB0aGlzIG1heSBiZSBhIGdvb2QgdGltZVxuIgpAQCAtODc3NCwxNzggKzExMzQ3LDI5IEBACiAiIGdpdCBicmFuY2ggPHTDqm5fbmjDoW5oX23hu5tpPiAlc1xuIgogIlxuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTEzCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTAwOQogbXNnaWQgImludGVybmFsIGVycm9yIGluIHJldmlzaW9uIHdhbGsiCiBtc2dzdHIgImzhu5dpIG7hu5lpIGLhu5kgdHJvbmcga2hpIGRpIGNodXnhu4NuIHF1YSBjw6FjIMSRaeG7g20geMOpdCBkdXnhu4d0IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTE3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTAxMwogbXNnaWQgIlByZXZpb3VzIEhFQUQgcG9zaXRpb24gd2FzIgogbXNnc3RyICJW4buLIHRyw60gdHLGsOG7m2Mga2lhIGPhu6dhIEhFQUQgbMOgIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6OTQ1IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTYxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTA1MyBidWlsdGluL2NoZWNrb3V0LmM6MTMxNQogbXNnaWQgIllvdSBhcmUgb24gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iCiBtc2dzdHIgIkLhuqFuIHThuqFpIG5ow6FuaCBtw6AgbsOzIGNoxrBhIGjhu4EgxJHGsOG7o2Mgc2luaCByYSIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEwNjYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkLCAlZCBnaXZlbi4iCi1tc2dzdHIgImNo4buJIGPhuqduIG3hu5l0IHRoYW0gY2hp4bq/dSwgbmjGsG5nIGzhuqFpIMSRxrBhIHJhICVkLiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExMDcgYnVpbHRpbi93b3JrdHJlZS5jOjI4OSBidWlsdGluL3dvcmt0cmVlLmM6NDQ0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKLW1zZ3N0ciAidGhhbSBjaGnhur91IGtow7RuZyBo4bujcCBs4buHOiAlcyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExMzYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicmVmZXJlbmNlIGlzIG5vdCBhIHRyZWU6ICVzIgotbXNnc3RyICJ0aGFtIGNoaeG6v3Uga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgY8OieTolcyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExNzUKLW1zZ2lkICJwYXRocyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKLW1zZ3N0ciAiY8OhYyDEkcaw4budbmcgZOG6q24ga2jDtG5nIHRo4buDIGTDuW5nIGPDuW5nIHbhu5tpIGPDoWMgbmjDoW5oIGNodXnhu4NuIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE3OCBidWlsdGluL2NoZWNrb3V0LmM6MTE4MgotIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgotbXNnc3RyICLigJwlc+KAnSBraMO0bmcgdGjhu4MgxJHGsOG7o2Mgc+G7rSBk4bulbmcgduG7m2kgY8OhYyBuaMOhbmggY2h1eeG7g24iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTg2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTg5IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTk0Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE5NwotIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJyVzJyIKLW1zZ3N0ciAi4oCcJXPigJ0ga2jDtG5nIHRo4buDIMSRxrDhu6NjIGTDuW5nIHbhu5tpIOKAnCVz4oCdIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIwMgotIywgYy1mb3JtYXQKLW1zZ2lkICJDYW5ub3Qgc3dpdGNoIGJyYW5jaCB0byBhIG5vbi1jb21taXQgJyVzJyIKLW1zZ3N0ciAiS2jDtG5nIHRo4buDIGNodXnhu4NuIG5ow6FuaCDEkeG6v24gbeG7mXQgdGjhu6kga2jDtG5nIHBo4bqjaSBsw6AgbOG6p24gY2h1eeG7g24gZ2lhbyDigJwlc+KAnSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMzUgYnVpbHRpbi9jaGVja291dC5jOjEyMzcgYnVpbHRpbi9jbG9uZS5jOjExOQotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjkgYnVpbHRpbi9yZW1vdGUuYzoxNzEgYnVpbHRpbi93b3JrdHJlZS5jOjQ4OAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MAotbXNnaWQgImJyYW5jaCIKLW1zZ3N0ciAibmjDoW5oIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIzNgotbXNnaWQgImNyZWF0ZSBhbmQgY2hlY2tvdXQgYSBuZXcgYnJhbmNoIgotbXNnc3RyICJ04bqhbyB2w6AgY2hlY2tvdXQgbeG7mXQgbmjDoW5oIG3hu5tpIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIzOAotbXNnaWQgImNyZWF0ZS9yZXNldCBhbmQgY2hlY2tvdXQgYSBicmFuY2giCi1tc2dzdHIgInThuqFvL8SR4bq3dF9s4bqhaSB2w6AgY2hlY2tvdXQgbeG7mXQgbmjDoW5oIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIzOQotbXNnaWQgImNyZWF0ZSByZWZsb2cgZm9yIG5ldyBicmFuY2giCi1tc2dzdHIgInThuqFvIHJlZmxvZyBjaG8gbmjDoW5oIG3hu5tpIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MCBidWlsdGluL3dvcmt0cmVlLmM6NDkyCi1tc2dpZCAiZGV0YWNoIEhFQUQgYXQgbmFtZWQgY29tbWl0IgotbXNnc3RyICJy4budaSBi4buPIEhFQUQgdOG6oWkgbOG6p24gY2h1eeG7g24gZ2lhbyB0aGVvIHTDqm4iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQxCi1tc2dpZCAic2V0IHVwc3RyZWFtIGluZm8gZm9yIG5ldyBicmFuY2giCi1tc2dzdHIgIsSR4bq3dCB0aMO0bmcgdGluIHRoxrDhu6NuZyBuZ3Xhu5NuIGNobyBuaMOhbmggbeG7m2kiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQzCi1tc2dpZCAibmV3LWJyYW5jaCIKLW1zZ3N0ciAibmjDoW5oLW3hu5tpIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MwotbXNnaWQgIm5ldyB1bnBhcmVudGVkIGJyYW5jaCIKLW1zZ3N0ciAibmjDoW5oIGtow7RuZyBjaGEgbeG7m2kiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQ1Ci1tc2dpZCAiY2hlY2tvdXQgb3VyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgotbXNnc3RyICIiCi0ibOG6pXkgcmEgKGNoZWNrb3V0KSBwaGnDqm4gYuG6o24gY+G7p2EgY2jDum5nIHRhIGNobyBjw6FjIHThuq1wIHRpbiBjaMawYSDEkcaw4bujYyBow7JhIHRy4buZbiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNDgKLW1zZ2lkICJjaGVja291dCB0aGVpciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKLW1zZ3N0ciAiIgotImzhuqV5IHJhIChjaGVja291dCkgcGhpw6puIGLhuqNuIGPhu6dhIGNow7puZyBo4buNIGNobyBjw6FjIHThuq1wIHRpbiBjaMawYSDEkcaw4bujYyBow7JhIHRy4buZbiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTAKLW1zZ2lkICJmb3JjZSBjaGVja291dCAodGhyb3cgYXdheSBsb2NhbCBtb2RpZmljYXRpb25zKSIKLW1zZ3N0ciAiw6lwIGJ14buZYyBs4bqleSByYSAoYuG7jyDEkWkgbmjhu69uZyB0aGF5IMSR4buVaSBu4buZaSBi4buZKSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTIKLW1zZ2lkICJwZXJmb3JtIGEgMy13YXkgbWVyZ2Ugd2l0aCB0aGUgbmV3IGJyYW5jaCIKLW1zZ3N0ciAidGjhu7FjIGhp4buHbiBow7JhIHRy4buZbiBraeG7g3UgMy13YXkgduG7m2kgbmjDoW5oIG3hu5tpIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1NCBidWlsdGluL21lcmdlLmM6Mjc1Ci1tc2dpZCAidXBkYXRlIGlnbm9yZWQgZmlsZXMgKGRlZmF1bHQpIgotbXNnc3RyICJj4bqtcCBuaOG6rXQgY8OhYyB04bqtcCB0aW4gYuG7iyBi4buPIHF1YSAobeG6t2MgxJHhu4tuaCkiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU2IGJ1aWx0aW4vbG9nLmM6MTU3MyBwYXJzZS1vcHRpb25zLmg6Mjc0Ci1tc2dpZCAic3R5bGUiCi1tc2dzdHIgImtp4buDdSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTcKLW1zZ2lkICJjb25mbGljdCBzdHlsZSAobWVyZ2Ugb3IgZGlmZjMpIgotbXNnc3RyICJ4dW5nIMSR4buZdCBraeG7g3UgKGjDsmEgdHLhu5luIGhv4bq3YyBkaWZmMykiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjYwCi1tc2dpZCAiZG8gbm90IGxpbWl0IHBhdGhzcGVjcyB0byBzcGFyc2UgZW50cmllcyBvbmx5IgotbXNnc3RyICJraMO0bmcgZ2nhu5tpIGjhuqFuIMSR4bq3YyB04bqjIMSRxrDhu51uZyBk4bqrbiB0aMOgbmggY2jhu4kgY8OhYyBt4bulYyB0aMawYSB0aOG7m3QiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjYyCi1tc2dpZCAic2Vjb25kIGd1ZXNzICdnaXQgY2hlY2tvdXQgPG5vLXN1Y2gtYnJhbmNoPiciCi1tc2dzdHIgImfhu6NpIMO9IHRo4bupIGhhaSBcImdpdCBjaGVja291dCA8a2jDtG5nLW5ow6FuaC1uw6BvLW5oxrAtduG6rXk+XCIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjY0Ci1tc2dpZCAiZG8gbm90IGNoZWNrIGlmIGFub3RoZXIgd29ya3RyZWUgaXMgaG9sZGluZyB0aGUgZ2l2ZW4gcmVmIgotbXNnc3RyICJraMO0bmcga2nhu4NtIHRyYSBu4bq/dSBjw6J5IGzDoG0gdmnhu4djIGtow6FjIMSRYW5nIGdp4buvIHRoYW0gY2hp4bq/dSDEkcOjIGNobyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNjggYnVpbHRpbi9jbG9uZS5jOjg2IGJ1aWx0aW4vZmV0Y2guYzoxNDEKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzIgYnVpbHRpbi9wdWxsLmM6MTI5IGJ1aWx0aW4vcHVzaC5jOjU3MgotIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzQKLW1zZ2lkICJmb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCi1tc2dzdHIgIsOpcCBideG7mWMgYsOhbyBjw6FvIHRp4bq/biB0cmnhu4NuIGPDtG5nIHZp4buHYyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyOTgKLW1zZ2lkICItYiwgLUIgYW5kIC0tb3JwaGFuIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCi1tc2dzdHIgIkPDoWMgdMO5eSBjaOG7jW4gLWIsIC1CIHbDoCAtLW9ycGhhbiBsb+G6oWkgdOG7qyBs4bqrbiBuaGF1IgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTMxNQotbXNnaWQgIi0tdHJhY2sgbmVlZHMgYSBicmFuY2ggbmFtZSIKLW1zZ3N0ciAiLS10cmFjayBj4bqnbiB0w6puIG3hu5l0IG5ow6FuaCIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzMjAKLW1zZ2lkICJtaXNzaW5nIGJyYW5jaCBuYW1lOyB0cnkgLWIiCi1tc2dzdHIgInRoaeG6v3UgdMOqbiBuaMOhbmg7IGjDo3kgdGjhu60gLWIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzU3Ci1tc2dpZCAiaW52YWxpZCBwYXRoIHNwZWNpZmljYXRpb24iCi1tc2dzdHIgIsSRxrDhu51uZyBk4bqrbiDEkcOjIGNobyBraMO0bmcgaOG7o3AgbOG7hyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiJyVzJyBpcyBub3QgYSBjb21taXQgYW5kIGEgYnJhbmNoICclcycgY2Fubm90IGJlIGNyZWF0ZWQgZnJvbSBpdCIKLW1zZ3N0ciAiIgotIuKAnCVz4oCdIGtow7RuZyBwaOG6o2kgbMOgIG3hu5l0IGzhuqduIGNodXnhu4NuIGdpYW8gdsOgIG3hu5l0IG5ow6FuaCclc+KAnSBraMO0bmcgdGjhu4MgxJHGsOG7o2MgdOG6oW8gIgotInThu6sgxJHDsyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCAnJXMnIgotbXNnc3RyICJnaXQgY2hlY2tvdXQ6IC0tZGV0YWNoIGtow7RuZyBuaOG6rW4gbeG7mXQgxJHhu5FpIHPhu5EgxJHGsOG7nW5nIGThuqtuIOKAnCVz4oCdIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTM3MgotbXNnaWQgIiIKLSJnaXQgY2hlY2tvdXQ6IC0tb3Vycy8tLXRoZWlycywgLS1mb3JjZSBhbmQgLS1tZXJnZSBhcmUgaW5jb21wYXRpYmxlIHdoZW5cbiIKLSJjaGVja2luZyBvdXQgb2YgdGhlIGluZGV4LiIKLW1zZ3N0ciAiIgotImdpdCBjaGVja291dDogLS1vdXJzLy0tdGhlaXJzLCAtLWZvcmNlIHbDoCAtLW1lcmdlIGzDoCB4dW5nIGto4bqvYyB24bubaSBuaGF1IGtoaVxuIgotImNoZWNrb3V0IGLhuqNuZyBt4bulYyBs4bulYyAoaW5kZXgpLiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzOTIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKLSInJXMnIG1hdGNoZWQgbW9yZSB0aGFuIG9uZSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoLlxuIgotIldlIGZvdW5kICVkIHJlbW90ZXMgd2l0aCBhIHJlZmVyZW5jZSB0aGF0IG1hdGNoZWQuIFNvIHdlIGZlbGwgYmFja1xuIgotIm9uIHRyeWluZyB0byByZXNvbHZlIHRoZSBhcmd1bWVudCBhcyBhIHBhdGgsIGJ1dCBmYWlsZWQgdGhlcmUgdG9vIVxuIgotIlxuIgorIiclcycgY291bGQgYmUgYm90aCBhIGxvY2FsIGZpbGUgYW5kIGEgdHJhY2tpbmcgYnJhbmNoLlxuIgorIlBsZWFzZSB1c2UgLS0gKGFuZCBvcHRpb25hbGx5IC0tbm8tZ3Vlc3MpIHRvIGRpc2FtYmlndWF0ZSIKK21zZ3N0ciAiIgorIuKAnCVz4oCdIGtow7RuZyB0aOG7gyBsw6AgY+G6oyB04bqtcCB0aW4gbuG7mWkgYuG7mSB2w6AgbeG7mXQgbmjDoW5oIHRoZW8gZMO1aS5cbiIKKyJWdWkgbG9uZyBkw7luZyAtLSAodsOgIHTDuXkgY2jhu41uIHRow6ptIC0tbm8tZ3Vlc3MpIMSR4buDIHRyw6FuaCBs4bqrbiBs4buZbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjExMzUKK21zZ2lkICIiCiAiSWYgeW91IG1lYW50IHRvIGNoZWNrIG91dCBhIHJlbW90ZSB0cmFja2luZyBicmFuY2ggb24sIGUuZy4gJ29yaWdpbicsXG4iCiAieW91IGNhbiBkbyBzbyBieSBmdWxseSBxdWFsaWZ5aW5nIHRoZSBuYW1lIHdpdGggdGhlIC0tdHJhY2sgb3B0aW9uOlxuIgogIlxuIgpAQCAtODk1NSw1MiArMTEzNzksMzUyIEBACiAib25lIHJlbW90ZSwgZS5nLiB0aGUgJ29yaWdpbicgcmVtb3RlLCBjb25zaWRlciBzZXR0aW5nXG4iCiAiY2hlY2tvdXQuZGVmYXVsdFJlbW90ZT1vcmlnaW4gaW4geW91ciBjb25maWcuIgogbXNnc3RyICIiCi0i4oCcJXPigJ0ga2jhu5twIGjGoW4gbeG7mXQgbmjDoW5oIG3DoXkgY2jhu6cgxJHGsOG7o2MgdGhlbyBkw7VpLlxuIgotIkNow7puZyB0w7RpIHTDrG0gdGjhuqV5ICVkIG3DoXkgY2jhu6cgduG7m2kgbeG7mXQgdGhhbSBjaGnhur91IGto4bubcC4gRG8gxJHDsyBjaMO6bmcgdMO0aSBj4buRICIKLSLEkeG7g1xuIgotInBow6JuIGdp4bqjaSB0aGFtIHPhu5EgbmjGsCBsw6AgbeG7mXQgxJHGsOG7nW5nIGThuqtuLCBuaMawbmcgY8WpbmcgZ+G6t3AgbOG7l2khXG4iCi0iXG4iCiAiTuG6v3Ugw70gYuG6oW4gbMOgIGzhuqV5IHJhIG5ow6FuaCBtw6F5IGNo4bunIMSRxrDhu6NjIHRoZW8gZMO1aSwgdsOtIGThu6Ug4oCcb3JpZ2lu4oCdLFxuIgogImLhuqFuIGPDsyB0aOG7gyBsw6BtIG5oxrAgduG6rXkgYuG6sW5nIGPDoWNoIGNo4buJIMSR4buLbmggxJHhuqd5IMSR4bunIHTDqm4gduG7m2kgdMO5eSBjaOG7jW4gLS10cmFjazpcbiIKICJcbiIKICIgICAgZ2l0IGNoZWNrb3V0IC0tdHJhY2sgb3JpZ2luLzx0w6puPlxuIgogIlxuIgotIk7hur91IGLhuqFuIG114buRbiBsdcO0biBs4bqleSByYSB04burIG3hu5l0IDx0w6puPiBt4buZdCBuw6F5IGNo4bunIMawYSB0aMOtY2hcbiIKKyJO4bq/dSBi4bqhbiBtdeG7kW4gbHXDtG4gbOG6pXkgcmEgdOG7qyBt4buZdCA8dMOqbj4gbeG7mXQgbcOheSBjaOG7pyDGsGEgdGjDrWNoXG4iCiAiY2jGsGEgcsO1IHLDoG5nLCB2w60gZOG7pSBtw6F5IGNo4bunIOKAnG9yaWdpbuKAnSwgY8OibiBuaOG6r2MgY8OgaSDEkeG6t3RcbiIKICJjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbiB0cm9uZyBj4bqldSBow6xuaCBj4bunYSBi4bqhbi4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzoyNworIzogYnVpbHRpbi9jaGVja291dC5jOjExNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBtYXRjaGVkIG11bHRpcGxlICglZCkgcmVtb3RlIHRyYWNraW5nIGJyYW5jaGVzIgorbXNnc3RyICLigJwlc+KAnSBraOG7m3AgduG7m2kgbmhp4buBdSAoJWQpIG5ow6FuaCBtw6F5IGNo4bunIMSRxrDhu6NjIHRoZW8gZMO1aSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyMTEKK21zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQiCittc2dzdHIgImNo4buJIGPhuqduIG3hu5l0IHRoYW0gY2hp4bq/dSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkLCAlZCBnaXZlbi4iCittc2dzdHIgImNo4buJIGPhuqduIG3hu5l0IHRoYW0gY2hp4bq/dSwgbmjGsG5nIGzhuqFpIMSRxrBhIHJhICVkLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyNzQgYnVpbHRpbi93b3JrdHJlZS5jOjI4MyBidWlsdGluL3dvcmt0cmVlLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKK21zZ3N0ciAidGhhbSBjaGnhur91IGtow7RuZyBo4bujcCBs4buHOiAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyODcgYnVpbHRpbi9jaGVja291dC5jOjE2NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIGlzIG5vdCBhIHRyZWU6ICVzIgorbXNnc3RyICJ0aGFtIGNoaeG6v3Uga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgY8OieTolcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCB0YWcgJyVzJyIKK21zZ3N0ciAiY+G6p24gbeG7mXQgbmjDoW5oLCBuaMawbmcgbOG6oWkgbmjhuq1uIMSRxrDhu6NjIHRo4bq7IOKAnCVz4oCdIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMzNgorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290IHJlbW90ZSBicmFuY2ggJyVzJyIKK21zZ3N0ciAiY+G6p24gbeG7mXQgbmjDoW5oLCBuaMawbmcgbOG6oWkgbmjhuq1uIMSRxrDhu6NjIG5ow6FuaCBtw6F5IHBo4bulYyB24bulIOKAnCVz4oCdIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMzNyBidWlsdGluL2NoZWNrb3V0LmM6MTM0NQorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290ICclcyciCittc2dzdHIgImPhuqduIG3hu5l0IG5ow6FuaCwgbmjGsG5nIGzhuqFpIG5o4bqtbiDEkcaw4bujYyDigJwlc+KAnSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCBjb21taXQgJyVzJyIKK21zZ3N0ciAiY+G6p24gbeG7mXQgbmjDoW5oLCBuaMawbmcgbOG6oWkgbmjhuq1uIMSRxrDhu6NjIOKAnCVz4oCdIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM1NgorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSBtZXJnaW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgbWVyZ2UgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisia2jDtG5nIHRo4buDIGNodXnhu4NuIG5ow6FuaCB0cm9uZyBraGkgxJFhbmcgaMOyYSB0cuG7mW5cbiIKKyJDw6JuIG5o4bqvYyBkdW5nIFwiZ2l0IG1lcmdlIC0tcXVpdFwiIGhv4bq3YyBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzYwCittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIGluIHRoZSBtaWRkbGUgb2YgYW4gYW0gc2Vzc2lvblxuIgorIkNvbnNpZGVyIFwiZ2l0IGFtIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorImtow7RuZyB0aOG7gyBjaHV54buDbiBuaGFuaCDhu58gZ2nhu69hIG3hu5l0IHBoacOqbiBhbVxuIgorIkPDom4gbmjhuq9jIGTDuW5nIFwiZ2l0IGFtIC0tcXVpdFwiIGhv4bq3YyBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY0Cittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIHJlYmFzaW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgcmViYXNlIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorImtow7RuZyB0aOG7gyBjaHV54buDbiBuaMOhbmggdHJvbmcga2hpIGPhuqNpIHThu5VcbiIKKyJDw6JuIG5o4bqvYyBkw7luZyBcImdpdCByZWJhc2UgLS1xdWl0XCIgaGF5IFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjgKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgY2hlcnJ5LXBpY2tpbmdcbiIKKyJDb25zaWRlciBcImdpdCBjaGVycnktcGljayAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyJraMO0bmcgdGjhu4MgY2h1eeG7g24gbmjDoW5oIHRyb25nIGtoaSAgY2hlcnJ5LXBpY2tpbmdcbiIKKyJDw6JuIG5o4bqvYyBkw7luZyBcImdpdCBjaGVycnktcGljayAtLXF1aXRcIiBoYXkgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM3MgorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSByZXZlcnRpbmdcbiIKKyJDb25zaWRlciBcImdpdCByZXZlcnQgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisia2jDtG5nIHRo4buDIGNodXnhu4NuIG5ow6FuaCB0cm9uZyBraGkgaG/DoG4gbmd1ecOqblxuIgorIkPDom4gbmjhuq9jIGTDuW5nIFwiZ2l0IHJldmVydCAtLXF1aXRcIiBob+G6t2MgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM3NgorbXNnaWQgInlvdSBhcmUgc3dpdGNoaW5nIGJyYW5jaCB3aGlsZSBiaXNlY3RpbmciCittc2dzdHIgIiIKKyJi4bqhbiBoaeG7h24gdOG6oWkgxJFhbmcgdGjhu7FjIGhp4buHbiB2aeG7h2MgY2h1eeG7g24gbmjDoW5oIHRyb25nIGtoaSDEkWFuZyBkaSBjaHV54buDbiBu4butYSAiCisiYsaw4bubYyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzODMKK21zZ2lkICJwYXRocyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKK21zZ3N0ciAiY8OhYyDEkcaw4budbmcgZOG6q24ga2jDtG5nIHRo4buDIGTDuW5nIGPDuW5nIHbhu5tpIGPDoWMgbmjDoW5oIGNodXnhu4NuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM4NiBidWlsdGluL2NoZWNrb3V0LmM6MTM5MCBidWlsdGluL2NoZWNrb3V0LmM6MTM5NAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgorbXNnc3RyICLigJwlc+KAnSBraMO0bmcgdGjhu4MgxJHGsOG7o2Mgc+G7rSBk4bulbmcgduG7m2kgY8OhYyBuaMOhbmggY2h1eeG7g24iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzk4IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDAxIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDA0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQwOSBidWlsdGluL2NoZWNrb3V0LmM6MTQxNAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJyVzJyIKK21zZ3N0ciAi4oCcJXPigJ0ga2jDtG5nIHRo4buDIMSRxrDhu6NjIGTDuW5nIHbhu5tpIOKAnCVz4oCdIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQxMQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCB0YWtlIDxzdGFydC1wb2ludD4iCittc2dzdHIgIuKAnCVz4oCdIGtow7RuZyB0aOG7gyBuaOG6rW4gPMSRaeG7g20txJHhuqd1PiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN3aXRjaCBicmFuY2ggdG8gYSBub24tY29tbWl0ICclcyciCittc2dzdHIgIktow7RuZyB0aOG7gyBjaHV54buDbiBuaMOhbmggxJHhur9uIG3hu5l0IHRo4bupIGtow7RuZyBwaOG6o2kgbMOgIGzhuqduIGNodXnhu4NuIGdpYW8g4oCcJXPigJ0iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDI2Cittc2dpZCAibWlzc2luZyBicmFuY2ggb3IgY29tbWl0IGFyZ3VtZW50IgorbXNnc3RyICJ0aGnhur91IHRoYW0gc+G7kSBsw6AgbmjDoW5oIGhv4bq3YyBs4bqnbiBjaHV54buDbiBnaWFvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2OCBidWlsdGluL2Nsb25lLmM6OTEgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3MgorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzUgYnVpbHRpbi9mZXRjaC5jOjE2NyBidWlsdGluL21lcmdlLmM6Mjg2CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyNyBidWlsdGluL3B1bGwuYzoxMTggYnVpbHRpbi9wdXNoLmM6NTYzCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE3NAorbXNnaWQgImZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKK21zZ3N0ciAiw6lwIGJ14buZYyBiw6FvIGPDoW8gdGnhur9uIHRyaeG7g24gY8O0bmcgdmnhu4djIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2OQorbXNnaWQgInBlcmZvcm0gYSAzLXdheSBtZXJnZSB3aXRoIHRoZSBuZXcgYnJhbmNoIgorbXNnc3RyICJ0aOG7sWMgaGnhu4duIGjDsmEgdHLhu5luIGtp4buDdSAzLXdheSB24bubaSBuaMOhbmggbeG7m2kiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDcwIGJ1aWx0aW4vbG9nLmM6MTY5MCBwYXJzZS1vcHRpb25zLmg6MzIyCittc2dpZCAic3R5bGUiCittc2dzdHIgImtp4buDdSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NzEKK21zZ2lkICJjb25mbGljdCBzdHlsZSAobWVyZ2Ugb3IgZGlmZjMpIgorbXNnc3RyICJ4dW5nIMSR4buZdCBraeG7g3UgKGjDsmEgdHLhu5luIGhv4bq3YyBkaWZmMykiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDgzIGJ1aWx0aW4vd29ya3RyZWUuYzo0OTYKK21zZ2lkICJkZXRhY2ggSEVBRCBhdCBuYW1lZCBjb21taXQiCittc2dzdHIgInLhu51pIGLhu48gSEVBRCB04bqhaSBs4bqnbiBjaHV54buDbiBnaWFvIHRoZW8gdMOqbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODQKK21zZ2lkICJzZXQgdXBzdHJlYW0gaW5mbyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAixJHhurd0IHRow7RuZyB0aW4gdGjGsOG7o25nIG5ndeG7k24gY2hvIG5ow6FuaCBt4bubaSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODYKK21zZ2lkICJmb3JjZSBjaGVja291dCAodGhyb3cgYXdheSBsb2NhbCBtb2RpZmljYXRpb25zKSIKK21zZ3N0ciAiw6lwIGJ14buZYyBs4bqleSByYSAoYuG7jyDEkWkgbmjhu69uZyB0aGF5IMSR4buVaSBu4buZaSBi4buZKSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODgKK21zZ2lkICJuZXctYnJhbmNoIgorbXNnc3RyICJuaMOhbmgtbeG7m2kiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg4Cittc2dpZCAibmV3IHVucGFyZW50ZWQgYnJhbmNoIgorbXNnc3RyICJuaMOhbmgga2jDtG5nIGNoYSBt4bubaSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0OTAgYnVpbHRpbi9tZXJnZS5jOjI4OQorbXNnaWQgInVwZGF0ZSBpZ25vcmVkIGZpbGVzIChkZWZhdWx0KSIKK21zZ3N0ciAiY+G6rXAgbmjhuq10IGPDoWMgdOG6rXAgdGluIGLhu4sgYuG7jyBxdWEgKG3hurdjIMSR4buLbmgpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ5MworbXNnaWQgImRvIG5vdCBjaGVjayBpZiBhbm90aGVyIHdvcmt0cmVlIGlzIGhvbGRpbmcgdGhlIGdpdmVuIHJlZiIKK21zZ3N0ciAia2jDtG5nIGtp4buDbSB0cmEgbuG6v3UgY8OieSBsw6BtIHZp4buHYyBraMOhYyDEkWFuZyBnaeG7ryB0aGFtIGNoaeG6v3UgxJHDoyBjaG8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTA2Cittc2dpZCAiY2hlY2tvdXQgb3VyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgorbXNnc3RyICIiCisibOG6pXkgcmEgKGNoZWNrb3V0KSBwaGnDqm4gYuG6o24gY+G7p2EgY2jDum5nIHRhIGNobyBjw6FjIHThuq1wIHRpbiBjaMawYSDEkcaw4bujYyBow7JhIHRy4buZbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MDkKK21zZ2lkICJjaGVja291dCB0aGVpciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKK21zZ3N0ciAiIgorImzhuqV5IHJhIChjaGVja291dCkgcGhpw6puIGLhuqNuIGPhu6dhIGNow7puZyBo4buNIGNobyBjw6FjIHThuq1wIHRpbiBjaMawYSDEkcaw4bujYyBow7JhIHRy4buZbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MTMKK21zZ2lkICJkbyBub3QgbGltaXQgcGF0aHNwZWNzIHRvIHNwYXJzZSBlbnRyaWVzIG9ubHkiCittc2dzdHIgImtow7RuZyBnaeG7m2kgaOG6oW4gxJHhurdjIHThuqMgxJHGsOG7nW5nIGThuqtuIHRow6BuaCBjaOG7iSBjw6FjIG3hu6VjIHLhuqNpIHLDoWMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTY1Cittc2dpZCAiLWIsIC1CIGFuZCAtLW9ycGhhbiBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICJDw6FjIHTDuXkgY2jhu41uIC1iLCAtQiB2w6AgLS1vcnBoYW4gbG/huqFpIHThu6sgbOG6q24gbmhhdSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1NjgKK21zZ2lkICItcCBhbmQgLS1vdmVybGF5IGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIi1wIHbDoCAtLW92ZXJsYXkgbG/huqFpIHThu6sgbOG6q24gbmhhdSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2MDUKK21zZ2lkICItLXRyYWNrIG5lZWRzIGEgYnJhbmNoIG5hbWUiCittc2dzdHIgIi0tdHJhY2sgY+G6p24gdMOqbiBt4buZdCBuaMOhbmgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjEwCittc2dpZCAibWlzc2luZyBicmFuY2ggbmFtZTsgdHJ5IC1iIgorbXNnc3RyICJ0aGnhur91IHTDqm4gbmjDoW5oOyBow6N5IHRo4butIC1iIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY0MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSAlcyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIGdp4bqjaSDigJwlc+KAnSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NTgKK21zZ2lkICJpbnZhbGlkIHBhdGggc3BlY2lmaWNhdGlvbiIKK21zZ3N0ciAixJHGsOG7nW5nIGThuqtuIMSRw6MgY2hvIGtow7RuZyBo4bujcCBs4buHIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY2NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIGNvbW1pdCBhbmQgYSBicmFuY2ggJyVzJyBjYW5ub3QgYmUgY3JlYXRlZCBmcm9tIGl0IgorbXNnc3RyICIiCisi4oCcJXPigJ0ga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgbOG6p24gY2h1eeG7g24gZ2lhbyB2w6AgbeG7mXQgbmjDoW5oJyVz4oCdIGtow7RuZyB0aOG7gyDEkcaw4bujYyB04bqhbyAiCisidOG7qyDEkcOzIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY2OQorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY2hlY2tvdXQ6IC0tZGV0YWNoIGRvZXMgbm90IHRha2UgYSBwYXRoIGFyZ3VtZW50ICclcyciCittc2dzdHIgImdpdCBjaGVja291dDogLS1kZXRhY2gga2jDtG5nIG5o4bqtbiBt4buZdCDEkeG7kWkgc+G7kSDEkcaw4budbmcgZOG6q24g4oCcJXPigJ0iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjc4Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1kZXRhY2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIHh1bmcga2jhuq9jIHbhu5tpIC0tZGV0YWNoIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY4MSBidWlsdGluL3Jlc2V0LmM6MzI0IGJ1aWx0aW4vc3Rhc2guYzoxNTA2Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1wYXRjaCIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgeHVuZyBraOG6r2MgduG7m2kgLS1wYXRjaCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2OTIKK21zZ2lkICIiCisiZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgYW5kIC0tbWVyZ2UgYXJlIGluY29tcGF0aWJsZSB3aGVuXG4iCisiY2hlY2tpbmcgb3V0IG9mIHRoZSBpbmRleC4iCittc2dzdHIgIiIKKyJnaXQgY2hlY2tvdXQ6IC0tb3Vycy8tLXRoZWlycywgLS1mb3JjZSB2w6AgLS1tZXJnZSBsw6AgeHVuZyBraOG6r2MgduG7m2kgbmhhdSBraGlcbiIKKyJjaGVja291dCBi4bqjbmcgbeG7pWMgbOG7pWMgKGluZGV4KS4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjk3Cittc2dpZCAieW91IG11c3Qgc3BlY2lmeSBwYXRoKHMpIHRvIHJlc3RvcmUiCittc2dzdHIgImLhuqFuIHBo4bqjaSBjaOG7iSDEkeG7i25oIGPDoWMgdGjGsCBt4bulYyBtdeG7kW4gaOG7k2kgcGjhu6VjIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyMyBidWlsdGluL2NoZWNrb3V0LmM6MTcyNSBidWlsdGluL2NoZWNrb3V0LmM6MTc3NAorIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzYgYnVpbHRpbi9jbG9uZS5jOjEyMSBidWlsdGluL3JlbW90ZS5jOjE3MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNzIgYnVpbHRpbi93b3JrdHJlZS5jOjQ5MiBidWlsdGluL3dvcmt0cmVlLmM6NDk0Cittc2dpZCAiYnJhbmNoIgorbXNnc3RyICJuaMOhbmgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI0Cittc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCittc2dzdHIgInThuqFvIHbDoCBjaGVja291dCBt4buZdCBuaMOhbmggbeG7m2kiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI2Cittc2dpZCAiY3JlYXRlL3Jlc2V0IGFuZCBjaGVja291dCBhIGJyYW5jaCIKK21zZ3N0ciAidOG6oW8vxJHhurd0X2zhuqFpIHbDoCBjaGVja291dCBt4buZdCBuaMOhbmgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI3Cittc2dpZCAiY3JlYXRlIHJlZmxvZyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAidOG6oW8gcmVmbG9nIGNobyBuaMOhbmggbeG7m2kiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI5Cittc2dpZCAic2Vjb25kIGd1ZXNzICdnaXQgY2hlY2tvdXQgPG5vLXN1Y2gtYnJhbmNoPicgKGRlZmF1bHQpIgorbXNnc3RyICLEkW/DoW4gdGjhu6kgaGFpICdnaXQgY2hlY2tvdXQgPGtow7RuZy1uaMOhbmgtbsOgby1uaMawLXbhuq15PicgKG3hurdjIMSR4buLbmgpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTczMAorbXNnaWQgInVzZSBvdmVybGF5IG1vZGUgKGRlZmF1bHQpIgorbXNnc3RyICJkw7luZyBjaOG6vyDEkeG7mSBjaGUgcGjhu6cgKG3hurdjIMSR4buLbmgpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3NQorbXNnaWQgImNyZWF0ZSBhbmQgc3dpdGNoIHRvIGEgbmV3IGJyYW5jaCIKK21zZ3N0ciAidOG6oW8gdsOgIGNodXnhu4NuIMSR4bq/biBt4buZdCBuaMOhbmggbeG7m2kiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc3Cittc2dpZCAiY3JlYXRlL3Jlc2V0IGFuZCBzd2l0Y2ggdG8gYSBicmFuY2giCittc2dzdHIgInThuqFvL8SR4bq3dF9s4bqhaSB2w6AgY2h1eeG7g24gxJHhur9uIG3hu5l0IG5ow6FuaCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzkKK21zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBzd2l0Y2ggPG5vLXN1Y2gtYnJhbmNoPiciCittc2dzdHIgImfhu6NpIMO9IHRo4bupIGhhaSBcImdpdCBjaGVja291dCA8a2jDtG5nLW5ow6FuaC1uw6BvLW5oxrAtduG6rXk+XCIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzgxCittc2dpZCAidGhyb3cgYXdheSBsb2NhbCBtb2RpZmljYXRpb25zIgorbXNnc3RyICJ24bupdCBi4buPIGPDoWMgc+G7rWEgxJHhu5VpIMSR4buLYSBwaMawxqFuZyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTMKK21zZ2lkICJ3aGljaCB0cmVlLWlzaCB0byBjaGVja291dCBmcm9tIgorbXNnc3RyICJs4bqleSByYSB04burIHRyZWUtaXNoIG7DoG8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODE1Cittc2dpZCAicmVzdG9yZSB0aGUgaW5kZXgiCittc2dzdHIgInBo4bulYyBo4buTaSBi4bqjbmcgbeG7pWMgbOG7pWMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODE3Cittc2dpZCAicmVzdG9yZSB0aGUgd29ya2luZyB0cmVlIChkZWZhdWx0KSIKK21zZ3N0ciAicGjhu6VjIGjhu5NpIGPDonkgbMOgbSB2aeG7h2MgKG3hurdjIMSR4buLbmgpIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxOQorbXNnaWQgImlnbm9yZSB1bm1lcmdlZCBlbnRyaWVzIgorbXNnc3RyICJi4buPIHF1YSBuaOG7r25nIHRo4bupIGNoxrBhIGjDsmEgdHLhu5luOiAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MjAKK21zZ2lkICJ1c2Ugb3ZlcmxheSBtb2RlIgorbXNnc3RyICJkw7luZyBjaOG6vyDEkeG7mSBjaGUgcGjhu6ciCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzoyOAogbXNnaWQgIiIKICJnaXQgY2xlYW4gWy1kXSBbLWZdIFstaV0gWy1uXSBbLXFdIFstZSA8cGF0dGVybj5dIFsteCB8IC1YXSBbLS1dIDxwYXRocz4uLi4iCiBtc2dzdHIgIiIKLSJnaXQgY2xlYW4gWy1kXSBbLWZdIFstaV0gWy1uXSBbLXFdIFstZSA8beG6q3U+XSBbLXggfCAtWF0gWy0tXSA8xJHGsOG7nW5nLWThuqtuPuKApiIKKyJnaXQgY2xlYW4gWy1kXSBbLWZdIFstaV0gWy1uXSBbLXFdIFstZSA8beG6q3U+XSBbLXggfCAtWF0gWy0tXSA8L2PDoWMvxJHGsOG7nW5nLyIKKyJk4bqrbj7igKYiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMQorIzogYnVpbHRpbi9jbGVhbi5jOjMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzXG4iCiBtc2dzdHIgIsSQYW5nIGfhu6EgYuG7jyAlc1xuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzIKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMwogIywgYy1mb3JtYXQKIG1zZ2lkICJXb3VsZCByZW1vdmUgJXNcbiIKIG1zZ3N0ciAiQ8OzIHRo4buDIGfhu6EgYuG7jyAlc1xuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzMKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNAogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyByZXBvc2l0b3J5ICVzXG4iCiBtc2dzdHIgIsSQYW5nIGLhu48gcXVhIGtobyBjaOG7qWEgJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjM0CisjOiBidWlsdGluL2NsZWFuLmM6MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiV291bGQgc2tpcCByZXBvc2l0b3J5ICVzXG4iCiBtc2dzdHIgIk7Dqm4gYuG7jyBxdWEga2hvIGNo4bupYSAlc1xuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzUKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICVzIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgZ+G7oSBi4buPICVzIgogCi0jOiBidWlsdGluL2NsZWFuLmM6Mjk4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTc5CisjOiBidWlsdGluL2NsZWFuLmM6MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGxzdGF0ICVzXG4iCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSB0aMO0bmcgdGluIHRo4buRbmcga8OqIMSR4bqneSDEkeG7pyBj4bunYSAlc1xuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzAxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQcm9tcHQgaGVscDpcbiIKQEAgLTkwMTMsNyArMTE3MzcsNyBAQAogImZvbyAgICAgICAgLSBjaOG7jW4gbeG7pWMgdHLDqm4gY8ahIHPhu58gdGnhu4FuIHThu5EgZHV5IG5o4bqldFxuIgogIiAgICAgICAgICAgLSAoxJHhu4MgdHLhu5FuZykga2jDtG5nIGNo4buNbiBnw6wgY+G6o1xuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzAyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTg4CisjOiBidWlsdGluL2NsZWFuLmM6MzA1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjA0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQcm9tcHQgaGVscDpcbiIKQEAgLTkwMzQsMzggKzExNzU4LDMzIEBACiAiKiAgICAgICAgICAtIGNo4buNbiB04bqldFxuIgogIiAgICAgICAgICAgLSAoxJHhu4MgdHLhu5FuZykga+G6v3QgdGjDumMgdmnhu4djIGNo4buNblxuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6NTE4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTU0Ci0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU1OQorIzogYnVpbHRpbi9jbGVhbi5jOjUyMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NzUKICMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAogbXNnaWQgIkh1aCAoJXMpP1xuIgogbXNnc3RyICJI4bqjICglcyk/XG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo2NjAKKyM6IGJ1aWx0aW4vY2xlYW4uYzo2NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW5wdXQgaWdub3JlIHBhdHRlcm5zPj4gIgogbXNnc3RyICJN4bqrdSDEkeG7gyBs4buNYyBjw6FjIHThuq1wIHRpbiDEkeG6p3UgdsOgbyBj4bqnbiBs4budIMSRaT4+ICIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjY5NworIzogYnVpbHRpbi9jbGVhbi5jOjcwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJXQVJOSU5HOiBDYW5ub3QgZmluZCBpdGVtcyBtYXRjaGVkIGJ5OiAlcyIKIG1zZ3N0ciAiQ+G6ok5IIELDgU86IEtow7RuZyB0w6xtIHRo4bqleSBjw6FjIG3hu6VjIMSRxrDhu6NjIGto4bubcCBi4bufaTogJXMiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo3MTgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3MjEKIG1zZ2lkICJTZWxlY3QgaXRlbXMgdG8gZGVsZXRlIgogbXNnc3RyICJDaOG7jW4gbeG7pWMgbXXhu5FuIHjDs2EiCiAKICMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8ga2VlcCBbeS9OXSBhcyBpcwotIzogYnVpbHRpbi9jbGVhbi5jOjc1OQorIzogYnVpbHRpbi9jbGVhbi5jOjc2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmUgJXMgW3kvTl0/ICIKIG1zZ3N0ciAiWMOzYSBi4buPIOKAnCVz4oCdIFt5L05dPyAiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo3ODQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzE3Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkJ5ZS5cbiIKLW1zZ3N0ciAiVOG6oW0gYmnhu4d0LlxuIgotCi0jOiBidWlsdGluL2NsZWFuLmM6NzkyCisjOiBidWlsdGluL2NsZWFuLmM6Nzk1CiBtc2dpZCAiIgogImNsZWFuICAgICAgICAgICAgICAgLSBzdGFydCBjbGVhbmluZ1xuIgogImZpbHRlciBieSBwYXR0ZXJuICAgLSBleGNsdWRlIGl0ZW1zIGZyb20gZGVsZXRpb25cbiIKQEAgLTkwODMsNjMgKzExODAyLDU1IEBACiAiaGVscCAgICAgICAgICAgICAgICAtIGhp4buDbiB0aOG7iyBjaMOtbmggdHLhu6MgZ2nDunAgbsOgeVxuIgogIj8gICAgICAgICAgICAgICAgICAgLSB0cuG7oyBnacO6cCBkw6BuaCBjaG8gY2jhu41uIGLhurFuZyBjw6FjaCBuaOG6r2MiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo4MTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzkzCi1tc2dpZCAiKioqIENvbW1hbmRzICoqKiIKLW1zZ3N0ciAiKioqIEzhu4duaCAqKioiCi0KLSM6IGJ1aWx0aW4vY2xlYW4uYzo4MjAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzkwCi1tc2dpZCAiV2hhdCBub3ciCi1tc2dzdHIgIkdp4budIHRow6wgc2FvIgotCi0jOiBidWlsdGluL2NsZWFuLmM6ODI4CisjOiBidWlsdGluL2NsZWFuLmM6ODMxCiBtc2dpZCAiV291bGQgcmVtb3ZlIHRoZSBmb2xsb3dpbmcgaXRlbToiCiBtc2dpZF9wbHVyYWwgIldvdWxkIHJlbW92ZSB0aGUgZm9sbG93aW5nIGl0ZW1zOiIKIG1zZ3N0clswXSAiQ8OzIG114buRbiBn4buhIGLhu48gKGPDoWMpIG3hu6VjIHNhdSDEkcOieSBraMO0bmc6IgogCi0jOiBidWlsdGluL2NsZWFuLmM6ODQ0CisjOiBidWlsdGluL2NsZWFuLmM6ODQ3CiBtc2dpZCAiTm8gbW9yZSBmaWxlcyB0byBjbGVhbiwgZXhpdGluZy4iCiBtc2dzdHIgIktow7RuZyBjw7JuIHThuq1wLXRpbiBuw6BvIMSR4buDIGThu41uIGThurlwLCDEkWFuZyB0aG/DoXQgcmEuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA2CisjOiBidWlsdGluL2NsZWFuLmM6OTA5CiBtc2dpZCAiZG8gbm90IHByaW50IG5hbWVzIG9mIGZpbGVzIHJlbW92ZWQiCiBtc2dzdHIgImtow7RuZyBoaeG7g24gdGjhu4sgdMOqbiBj4bunYSBjw6FjIHThuq1wIHRpbiDEkcOjIGfhu6EgYuG7jyIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwOAorIzogYnVpbHRpbi9jbGVhbi5jOjkxMQogbXNnaWQgImZvcmNlIgogbXNnc3RyICLDqXAgYnXhu5ljIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA5CisjOiBidWlsdGluL2NsZWFuLmM6OTEyCiBtc2dpZCAiaW50ZXJhY3RpdmUgY2xlYW5pbmciCiBtc2dzdHIgImThu41uIGLhurFuZyBraeG7g3UgdMawxqFuZyB0w6FjIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTExCisjOiBidWlsdGluL2NsZWFuLmM6OTE0CiBtc2dpZCAicmVtb3ZlIHdob2xlIGRpcmVjdG9yaWVzIgogbXNnc3RyICJn4buhIGLhu48gdG/DoG4gYuG7mSB0aMawIG3hu6VjIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTEyIGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDUgYnVpbHRpbi9kZXNjcmliZS5jOjU0NwotIzogYnVpbHRpbi9ncmVwLmM6ODg2IGJ1aWx0aW4vbG9nLmM6MTY2IGJ1aWx0aW4vbG9nLmM6MTY4Ci0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTU2IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTUgYnVpbHRpbi9uYW1lLXJldi5jOjQxNwotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OAorIzogYnVpbHRpbi9jbGVhbi5jOjkxNSBidWlsdGluL2Rlc2NyaWJlLmM6NTYyIGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4OSBidWlsdGluL2xvZy5jOjE3NyBidWlsdGluL2xvZy5jOjE3OQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NyBidWlsdGluL25hbWUtcmV2LmM6NTI2IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjgKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzkKIG1zZ2lkICJwYXR0ZXJuIgogbXNnc3RyICJt4bqrdSIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxMworIzogYnVpbHRpbi9jbGVhbi5jOjkxNgogbXNnaWQgImFkZCA8cGF0dGVybj4gdG8gaWdub3JlIHJ1bGVzIgogbXNnc3RyICJ0aMOqbSA8beG6q3U+IHbDoG8gdHJvbmcgcXVpIHThuq9jIGLhu48gcXVhIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTE0CisjOiBidWlsdGluL2NsZWFuLmM6OTE3CiBtc2dpZCAicmVtb3ZlIGlnbm9yZWQgZmlsZXMsIHRvbyIKIG1zZ3N0ciAixJHhu5NuZyB0aOG7nWkgZ+G7oSBi4buPIGPhuqMgY8OhYyB04bqtcCB0aW4gYuG7iyBi4buPIHF1YSIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxNgorIzogYnVpbHRpbi9jbGVhbi5jOjkxOQogbXNnaWQgInJlbW92ZSBvbmx5IGlnbm9yZWQgZmlsZXMiCiBtc2dzdHIgImNo4buJIGfhu6EgYuG7jyBuaOG7r25nIHThuq1wIHRpbiBi4buLIGLhu48gcXVhIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTM0CisjOiBidWlsdGluL2NsZWFuLmM6OTM3CiBtc2dpZCAiLXggYW5kIC1YIGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIgogbXNnc3RyICIteCB2w6AgLVgga2jDtG5nIHRo4buDIGTDuW5nIGPDuW5nIG5oYXUiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MzgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5NDEKIG1zZ2lkICIiCiAiY2xlYW4ucmVxdWlyZUZvcmNlIHNldCB0byB0cnVlIGFuZCBuZWl0aGVyIC1pLCAtbiwgbm9yIC1mIGdpdmVuOyByZWZ1c2luZyB0byAiCiAiY2xlYW4iCkBAIC05MTQ3LDcgKzExODU4LDcgQEAKICJjbGVhbi5yZXF1aXJlRm9yY2UgxJHGsOG7o2MgxJHhurd0IHRow6BuaCB0cnVlIHbDoCBraMO0bmcgxJHGsGEgcmEgdMO5eSBjaOG7jW4gLWksIC1uIG3DoCAiCiAiY8Wpbmcga2jDtG5nIC1mOyB04burIGNo4buRaSBs4buHbmggZOG7jW4gZOG6uXAgKGNsZWFuKSIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjk0MQorIzogYnVpbHRpbi9jbGVhbi5jOjk0NAogbXNnaWQgIiIKICJjbGVhbi5yZXF1aXJlRm9yY2UgZGVmYXVsdHMgdG8gdHJ1ZSBhbmQgbmVpdGhlciAtaSwgLW4sIG5vciAtZiBnaXZlbjsgIgogInJlZnVzaW5nIHRvIGNsZWFuIgpAQCAtOTE1NSwxNDggKzExODY2LDE2NyBAQAogImNsZWFuLnJlcXVpcmVGb3JjZSBt4bq3YyDEkeG7i25oIMSRxrDhu6NjIMSR4bq3dCBsw6AgdHJ1ZSB2w6Aga2jDtG5nIMSRxrBhIHJhIHTDuXkgY2jhu41uIC1pLCAtbiAiCiAibcOgIGPFqW5nIGtow7RuZyAtZjsgdOG7qyBjaOG7kWkgbOG7h25oIGThu41uIGThurlwIChjbGVhbikiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0MworIzogYnVpbHRpbi9jbG9uZS5jOjQ1CiBtc2dpZCAiZ2l0IGNsb25lIFs8b3B0aW9ucz5dIFstLV0gPHJlcG8+IFs8ZGlyPl0iCi1tc2dzdHIgImdpdCBjbG9uZSBbPGPDoWMtdMO5eS1jaOG7jW4+XSBbLS1dIDxraG8+IFs8dC5t4bulYz5dIgorbXNnc3RyICJnaXQgY2xvbmUgWzxjw6FjIHTDuXkgY2jhu41uPl0gWy0tXSA8a2hvPiBbPHQubeG7pWM+XSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjg4CisjOiBidWlsdGluL2Nsb25lLmM6OTMKIG1zZ2lkICJkb24ndCBjcmVhdGUgYSBjaGVja291dCIKIG1zZ3N0ciAia2jDtG5nIHThuqFvIG3hu5l0IGNoZWNrb3V0IgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODkgYnVpbHRpbi9jbG9uZS5jOjkxIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4MQorIzogYnVpbHRpbi9jbG9uZS5jOjk0IGJ1aWx0aW4vY2xvbmUuYzo5NiBidWlsdGluL2luaXQtZGIuYzo0ODkKIG1zZ2lkICJjcmVhdGUgYSBiYXJlIHJlcG9zaXRvcnkiCiBtc2dzdHIgInThuqFvIGtobyB0aHXhuqduIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTMKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5OAogbXNnaWQgImNyZWF0ZSBhIG1pcnJvciByZXBvc2l0b3J5IChpbXBsaWVzIGJhcmUpIgogbXNnc3RyICJ04bqhbyBraG8gYuG6o24gc2FvICjDvSBsw6Aga2hvIHRodeG6p24pIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDAKIG1zZ2lkICJ0byBjbG9uZSBmcm9tIGEgbG9jYWwgcmVwb3NpdG9yeSIKIG1zZ3N0ciAixJHhu4MgbmjDom4gYuG6o24gdOG7qyBraG8gbuG7mWkgYuG7mSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk3CisjOiBidWlsdGluL2Nsb25lLmM6MTAyCiBtc2dpZCAiZG9uJ3QgdXNlIGxvY2FsIGhhcmRsaW5rcywgYWx3YXlzIGNvcHkiCiBtc2dzdHIgImtow7RuZyBz4butIGThu6VuZyBsacOqbiBr4bq/dCBj4bupbmcgbuG7mWkgYuG7mSwgbHXDtG4gc2FvIGNow6lwIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTkKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDQKIG1zZ2lkICJzZXR1cCBhcyBzaGFyZWQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiY8OgaSDEkeG6t3QgxJHDonkgbMOgIGtobyBjaGlhIHPhursiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEgYnVpbHRpbi9jbG9uZS5jOjEwNQorIzogYnVpbHRpbi9jbG9uZS5jOjEwNwogbXNnaWQgInBhdGhzcGVjIgogbXNnc3RyICLEkeG6t2MtdOG6oy3Ekcaw4budbmctZOG6q24iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEgYnVpbHRpbi9jbG9uZS5jOjEwNQorIzogYnVpbHRpbi9jbG9uZS5jOjEwNwogbXNnaWQgImluaXRpYWxpemUgc3VibW9kdWxlcyBpbiB0aGUgY2xvbmUiCiBtc2dzdHIgImto4bufaSB04bqhbyBtw7QtxJF1bi1jb24gdHJvbmcgYuG6o24gc2FvIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA4CisjOiBidWlsdGluL2Nsb25lLmM6MTEwCiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgY2xvbmVkIGluIHBhcmFsbGVsIgogbXNnc3RyICJz4buRIGzGsOG7o25nIG3DtC3EkXVuLWNvbiDEkcaw4bujYyBuaMOibiBi4bqjbiDEkeG7k25nIHRo4budaSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwOSBidWlsdGluL2luaXQtZGIuYzo0NzgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTEgYnVpbHRpbi9pbml0LWRiLmM6NDg2CiBtc2dpZCAidGVtcGxhdGUtZGlyZWN0b3J5IgogbXNnc3RyICJ0aMawLW3hu6VjLW3huqt1IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTEwIGJ1aWx0aW4vaW5pdC1kYi5jOjQ3OQorIzogYnVpbHRpbi9jbG9uZS5jOjExMiBidWlsdGluL2luaXQtZGIuYzo0ODcKIG1zZ2lkICJkaXJlY3RvcnkgZnJvbSB3aGljaCB0ZW1wbGF0ZXMgd2lsbCBiZSB1c2VkIgogbXNnc3RyICJ0aMawIG3hu6VjIG3DoCB04bqhaSDEkcOzIGPDoWMgbeG6q3Ugc+G6vSDEkcaw4bujYyBkw7luZyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMiBidWlsdGluL2Nsb25lLmM6MTE0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc1Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1NgorIzogYnVpbHRpbi9jbG9uZS5jOjExNCBidWlsdGluL2Nsb25lLmM6MTE2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxMgogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5IgogbXNnc3RyICJraG8gdGhhbSBjaGnhur91IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc3Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1OAorIzogYnVpbHRpbi9jbG9uZS5jOjExOCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTQKIG1zZ2lkICJ1c2UgLS1yZWZlcmVuY2Ugb25seSB3aGlsZSBjbG9uaW5nIgogbXNnc3RyICJjaOG7iSBkw7luZyAtLXJlZmVyZW5jZSBraGkgbmjDom4gYuG6o24iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTcgYnVpbHRpbi9jb2x1bW4uYzoyNyBidWlsdGluL21lcmdlLWZpbGUuYzo0NgotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAxIGJ1aWx0aW4vcmVwYWNrLmM6MzI5CisjOiBidWlsdGluL2Nsb25lLmM6MTE5IGJ1aWx0aW4vY29sdW1uLmM6MjcgYnVpbHRpbi9tZXJnZS1maWxlLmM6NDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0MSBidWlsdGluL3JlcGFjay5jOjMyNwogbXNnaWQgIm5hbWUiCiBtc2dzdHIgInTDqm4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjAKIG1zZ2lkICJ1c2UgPG5hbWU+IGluc3RlYWQgb2YgJ29yaWdpbicgdG8gdHJhY2sgdXBzdHJlYW0iCiBtc2dzdHIgImTDuW5nIDx0w6puPiB0aGF5IGNobyDigJxvcmlnaW7igJ0gxJHhu4MgdGhlbyBkw7VpIHRoxrDhu6NuZyBuZ3Xhu5NuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTIwCisjOiBidWlsdGluL2Nsb25lLmM6MTIyCiBtc2dpZCAiY2hlY2tvdXQgPGJyYW5jaD4gaW5zdGVhZCBvZiB0aGUgcmVtb3RlJ3MgSEVBRCIKIG1zZ3N0ciAibOG6pXkgcmEgPG5ow6FuaD4gdGhheSBjaG8gSEVBRCBj4bunYSBtw6F5IGNo4bunIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTIyCisjOiBidWlsdGluL2Nsb25lLmM6MTI0CiBtc2dpZCAicGF0aCB0byBnaXQtdXBsb2FkLXBhY2sgb24gdGhlIHJlbW90ZSIKIG1zZ3N0ciAixJHGsOG7nW5nIGThuqtuIMSR4bq/biBnaXQtdXBsb2FkLXBhY2sgdHLDqm4gbcOheSBjaOG7pyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyMyBidWlsdGluL2ZldGNoLmM6MTQyIGJ1aWx0aW4vZ3JlcC5jOjgyNQotIzogYnVpbHRpbi9wdWxsLmM6MjE3CisjOiBidWlsdGluL2Nsb25lLmM6MTI1IGJ1aWx0aW4vZmV0Y2guYzoxNjggYnVpbHRpbi9ncmVwLmM6ODI4CisjOiBidWlsdGluL3B1bGwuYzoyMDcKIG1zZ2lkICJkZXB0aCIKIG1zZ3N0ciAixJHhu5ktc8OidSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyNAorIzogYnVpbHRpbi9jbG9uZS5jOjEyNgogbXNnaWQgImNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgb2YgdGhhdCBkZXB0aCIKIG1zZ3N0ciAidOG6oW8gYuG6o24gc2FvIGtow7RuZyDEkeG6p3kgxJHhu6cgY2hvIG3hu6ljIHPDonUgxJHDoyBjaG8iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjUgYnVpbHRpbi9mZXRjaC5jOjE0NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjcgYnVpbHRpbi9mZXRjaC5jOjE3MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzAKIG1zZ2lkICJ0aW1lIgogbXNnc3RyICJ0aOG7nWktZ2lhbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyNgorIzogYnVpbHRpbi9jbG9uZS5jOjEyOAogbXNnaWQgImNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgc2luY2UgYSBzcGVjaWZpYyB0aW1lIgogbXNnc3RyICJ04bqhbyBi4bqjbiBzYW8ga2jDtG5nIMSR4bqneSDEkeG7pyB04burIHRo4budaSDEkWnhu4NtIMSRw6MgY2hvIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI3IGJ1aWx0aW4vZmV0Y2guYzoxNDYgYnVpbHRpbi9mZXRjaC5jOjE2OQotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzEKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjkgYnVpbHRpbi9mZXRjaC5jOjE3MiBidWlsdGluL2ZldGNoLmM6MTk1CisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODAKIG1zZ2lkICJyZXZpc2lvbiIKIG1zZ3N0ciAixJFp4buDbSB4w6l0IGR1eeG7h3QiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjggYnVpbHRpbi9mZXRjaC5jOjE0NworIzogYnVpbHRpbi9jbG9uZS5jOjEzMCBidWlsdGluL2ZldGNoLmM6MTczCiBtc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyBjbG9uZSwgZXhjbHVkaW5nIHJldiIKIG1zZ3N0ciAibMOgbSBzw6J1IGjGoW4gbOG7i2NoIHPhu60gY+G7p2EgYuG6o24gc2FvIHNoYWxsb3csIGLhurFuZyDEkWnhu4NtIHjDqXQgZHV54buHdCBsb+G6oWkgdHLhu6siCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI4CiBtc2dpZCAiY2xvbmUgb25seSBvbmUgYnJhbmNoLCBIRUFEIG9yIC0tYnJhbmNoIgogbXNnc3RyICJjaOG7iSBuaMOibiBi4bqjbiBt4buZdCBuaMOhbmgsIEhFQUQgaG/hurdjIC0tYnJhbmNoIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTMyCisjOiBidWlsdGluL2Nsb25lLmM6MTM0CiBtc2dpZCAiZG9uJ3QgY2xvbmUgYW55IHRhZ3MsIGFuZCBtYWtlIGxhdGVyIGZldGNoZXMgbm90IHRvIGZvbGxvdyB0aGVtIgogbXNnc3RyICIiCiAixJHhu6luZyBjw7MgbmjDom4gYuG6o24gYuG6pXQga+G7syBuaMOhbmggbsOgbywgdsOgIGzDoG0gY2hvIG5o4buvbmcgbOG6p24gbOG6pXkgduG7gSBzYXUga2jDtG5nICIKICJ0aGVvIGNow7puZyBu4buvYSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNAorIzogYnVpbHRpbi9jbG9uZS5jOjEzNgogbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIGJlIHNoYWxsb3ciCiBtc2dzdHIgIm3hu41pIG3DtC3EkXVuLWNvbiBuaMOibiBi4bqjbiBz4bq9IGzDoCBzaGFsbG93IChuw7RuZykiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzUgYnVpbHRpbi9pbml0LWRiLmM6NDg3CisjOiBidWlsdGluL2Nsb25lLmM6MTM3IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5NQogbXNnaWQgImdpdGRpciIKIG1zZ3N0ciAiZ2l0ZGlyIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM2IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4OAorIzogYnVpbHRpbi9jbG9uZS5jOjEzOCBidWlsdGluL2luaXQtZGIuYzo0OTYKIG1zZ2lkICJzZXBhcmF0ZSBnaXQgZGlyIGZyb20gd29ya2luZyB0cmVlIgogbXNnc3RyICJraMO0bmcgZMO5bmcgY2h1bmcgdGjGsCBt4bulYyBkw6BuaCByacOqbmcgY2hvIGdpdCB2w6AgdGjGsCBt4bulYyBsw6BtIHZp4buHYyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNworIzogYnVpbHRpbi9jbG9uZS5jOjEzOQogbXNnaWQgImtleT12YWx1ZSIKIG1zZ3N0ciAia2jDs2E9Z2nDoV90cuG7iyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzOAorIzogYnVpbHRpbi9jbG9uZS5jOjE0MAogbXNnaWQgInNldCBjb25maWcgaW5zaWRlIHRoZSBuZXcgcmVwb3NpdG9yeSIKIG1zZ3N0ciAixJHhurd0IGPhuqV1IGjDrG5oIGLDqm4gdHJvbmcgbeG7mXQga2hvIGNo4bupYSBt4bubaSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzOSBidWlsdGluL2ZldGNoLmM6MTY1IGJ1aWx0aW4vcHVsbC5jOjIzMAotIzogYnVpbHRpbi9wdXNoLmM6NTgzCisjOiBidWlsdGluL2Nsb25lLmM6MTQyIGJ1aWx0aW4vZmV0Y2guYzoxOTAgYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9wdXNoLmM6NTczIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTcyCittc2dpZCAic2VydmVyLXNwZWNpZmljIgorbXNnc3RyICLEkeG6t2MtdOG6oy1tw6F5LXBo4bulYy124bulIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQyIGJ1aWx0aW4vZmV0Y2guYzoxOTAgYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9wdXNoLmM6NTczIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTczCittc2dpZCAib3B0aW9uIHRvIHRyYW5zbWl0IgorbXNnc3RyICJ0w7l5IGNo4buNbiDEkeG7gyBjaHV54buDbiBnaWFvIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQzIGJ1aWx0aW4vZmV0Y2guYzoxOTEgYnVpbHRpbi9wdWxsLmM6MjIwCisjOiBidWlsdGluL3B1c2guYzo1NzQKIG1zZ2lkICJ1c2UgSVB2NCBhZGRyZXNzZXMgb25seSIKIG1zZ3N0ciAiY2jhu4kgZMO5bmcgxJHhu4thIGNo4buJIElQdjQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxNDEgYnVpbHRpbi9mZXRjaC5jOjE2NyBidWlsdGluL3B1bGwuYzoyMzMKLSM6IGJ1aWx0aW4vcHVzaC5jOjU4NQorIzogYnVpbHRpbi9jbG9uZS5jOjE0NSBidWlsdGluL2ZldGNoLmM6MTkzIGJ1aWx0aW4vcHVsbC5jOjIyMworIzogYnVpbHRpbi9wdXNoLmM6NTc2CiBtc2dpZCAidXNlIElQdjYgYWRkcmVzc2VzIG9ubHkiCiBtc2dzdHIgImNo4buJIGTDuW5nIMSR4buLYSBjaOG7iSBJUHY2IgogCi0jOiBidWlsdGluL2Nsb25lLmM6Mjc5CisjOiBidWlsdGluL2Nsb25lLmM6MTQ5Cittc2dpZCAiYW55IGNsb25lZCBzdWJtb2R1bGVzIHdpbGwgdXNlIHRoZWlyIHJlbW90ZS10cmFja2luZyBicmFuY2giCittc2dzdHIgIm3hu41pIG3DtC3EkXVuLWNvbiBuaMOibiBi4bqjbiBz4bq9IGR1bmcgbmjDoW5oIHRoZW8gZMO1aSBtw6F5IGNo4bunIGPhu6dhIGNow7puZyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE1MQorbXNnaWQgImluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IGZpbGUgdG8gaW5jbHVkZSBvbmx5IGZpbGVzIGF0IHJvb3QiCittc2dzdHIgImto4bufaSB04bqhbyB04bqtcCB0aW4gc3BhcnNlLWNoZWNrb3V0IMSR4buDIGJhbyBn4buTbSBjaOG7iSBjw6FjIHThuq1wIHRpbiDhu58gZ+G7kWMiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoyODcKIG1zZ2lkICIiCiAiTm8gZGlyZWN0b3J5IG5hbWUgY291bGQgYmUgZ3Vlc3NlZC5cbiIKICJQbGVhc2Ugc3BlY2lmeSBhIGRpcmVjdG9yeSBvbiB0aGUgY29tbWFuZCBsaW5lIgpAQCAtOTMwNCwxNDUgKzEyMDM0LDE0NCBAQAogIktow7RuZyDEkW/DoW4gxJHGsOG7o2MgdGjGsCBt4bulYyB0w6puIGzDoCBnw6wuXG4iCiAiVnVpIGzDsm5nIGNo4buJIMSR4buLbmggdMOqbiBt4buZdCB0aMawIG3hu6VjIHRyw6puIGTDsm5nIGzhu4duaCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjMzMgorIzogYnVpbHRpbi9jbG9uZS5jOjM0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbmZvOiBDb3VsZCBub3QgYWRkIGFsdGVybmF0ZSBmb3IgJyVzJzogJXNcbiIKIG1zZ3N0ciAidGjDtG5nIHRpbjoga2jDtG5nIHRo4buDIHRow6ptIHRoYXkgdGjhur8gY2hvIOKAnCVz4oCdOiAlc1xuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDA0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyciCi1tc2dzdHIgImfhurdwIGzhu5dpIGtoaSBt4bufIOKAnCVz4oCdIgotCi0jOiBidWlsdGluL2Nsb25lLmM6NDEyCisjOiBidWlsdGluL2Nsb25lLmM6NDEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGV4aXN0cyBhbmQgaXMgbm90IGEgZGlyZWN0b3J5IgogbXNnc3RyICIlcyBjw7MgdOG7k24gdOG6oWkgbmjGsG5nIGzhuqFpIGtow7RuZyBwaOG6o2kgbMOgIG3hu5l0IHRoxrAgbeG7pWMiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0MjYKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0MzAKICMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIHN0YXQgJXNcbiIKLW1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIGzhuqV5IHRow7RuZyB0aW4gdGjhu5FuZyBrw6ogduG7gSAlc1xuIgorbXNnaWQgImZhaWxlZCB0byBzdGFydCBpdGVyYXRvciBvdmVyICclcyciCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSBi4bqvdCDEkeG6p3UgbOG6t3AgcXVhIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDQzCi0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgJyVzJyIKLW1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIGLhu48gbGnDqm4ga+G6v3QgKHVubGluaykg4oCcJXPigJ0iCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo0NDgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBsaW5rICclcyciCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSB04bqhbyDEkcaw4bujYyBsacOqbiBr4bq/dCBt4buBbSAlcyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ1MgorIzogYnVpbHRpbi9jbG9uZS5jOjQ2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY29weSBmaWxlIHRvICclcyciCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBzYW8gY2jDqXAgdOG6rXAgdGluIHbDoCDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ3OAorIzogYnVpbHRpbi9jbG9uZS5jOjQ2OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaXRlcmF0ZSBvdmVyICclcyciCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSBs4bq3cCBxdWEg4oCcJXPigJ0iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZG9uZS5cbiIKIG1zZ3N0ciAiaG/DoG4gdOG6pXQuXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0OTIKKyM6IGJ1aWx0aW4vY2xvbmUuYzo1MDgKIG1zZ2lkICIiCiAiQ2xvbmUgc3VjY2VlZGVkLCBidXQgY2hlY2tvdXQgZmFpbGVkLlxuIgogIllvdSBjYW4gaW5zcGVjdCB3aGF0IHdhcyBjaGVja2VkIG91dCB3aXRoICdnaXQgc3RhdHVzJ1xuIgotImFuZCByZXRyeSB0aGUgY2hlY2tvdXQgd2l0aCAnZ2l0IGNoZWNrb3V0IC1mIEhFQUQnXG4iCisiYW5kIHJldHJ5IHdpdGggJ2dpdCByZXN0b3JlIC0tc291cmNlPUhFQUQgOi8nXG4iCiBtc2dzdHIgIiIKICJWaeG7h2MgbmjDom4gYuG6o24gdGjDoG5oIGPDtG5nLCBuaMawbmcgY2hlY2tvdXQgZ+G6t3AgbOG7l2kuXG4iCiAiQuG6oW4ga2nhu4NtIHRyYSBr4bu5IHhlbSBjw6FpIGfDrCDEkcaw4bujYyBs4bqleSByYSBi4bqxbmcgbOG7h25oIOKAnGdpdCBzdGF0dXPigJ1cbiIKLSJ2w6AgdGjhu60gbOG6pXkgcmEgduG7m2kgbOG7h25oIOKAnGdpdCBjaGVja291dCAtZiBIRUFE4oCdXG4iCisidsOgIHRo4butIGzhuqV5IHJhIHbhu5tpIGzhu4duaCAnZ2l0IHJlc3RvcmUgLS1zb3VyY2U9SEVBRCA6LydcbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjU2OQorIzogYnVpbHRpbi9jbG9uZS5jOjU4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCByZW1vdGUgYnJhbmNoICVzIHRvIGNsb25lLiIKIG1zZ3N0ciAiS2jDtG5nIHTDrG0gdGjhuqV5IG5ow6FuaCBtw6F5IGNo4bunICVzIMSR4buDIG5ow6JuIGLhuqNuIChjbG9uZSkuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NjgwCisjOiBidWlsdGluL2Nsb25lLmM6NzA1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBj4bqtcCBuaOG6rXQgJXMiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo3MzAKKyM6IGJ1aWx0aW4vY2xvbmUuYzo3NTMKK21zZ2lkICJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSBraOG7n2kgdOG6oW8gc3BhcnNlLWNoZWNrb3V0IgorCisjOiBidWlsdGluL2Nsb25lLmM6Nzc2CiBtc2dpZCAicmVtb3RlIEhFQUQgcmVmZXJzIHRvIG5vbmV4aXN0ZW50IHJlZiwgdW5hYmxlIHRvIGNoZWNrb3V0LlxuIgogbXNnc3RyICJyZWZlcnMgSEVBRCBtw6F5IGNo4bunICBjaOG7iSDEkeG6v24gcmVmIGtow7RuZyB04buTbiB04bqhaSwga2jDtG5nIHRo4buDIGzhuqV5IHJhLlxuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NzYxCisjOiBidWlsdGluL2Nsb25lLmM6ODA3CiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrb3V0IHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHJhIChjaGVja291dCkgY8OieSBsw6BtIHZp4buHYyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjgwNgorIzogYnVpbHRpbi9jbG9uZS5jOjg2MgogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBwYXJhbWV0ZXJzIHRvIGNvbmZpZyBmaWxlIgogbXNnc3RyICJraMO0bmcgdGjhu4MgZ2hpIGPDoWMgdGhhbSBz4buRIHbDoG8gdOG6rXAgdGluIGPhuqV1IGjDrG5oIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODY5CisjOiBidWlsdGluL2Nsb25lLmM6OTI1CiBtc2dpZCAiY2Fubm90IHJlcGFjayB0byBjbGVhbiB1cCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIMSRw7NuZyBnw7NpIMSR4buDIGThu41uIGThurlwIgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODcxCisjOiBidWlsdGluL2Nsb25lLmM6OTI3CiBtc2dpZCAiY2Fubm90IHVubGluayB0ZW1wb3JhcnkgYWx0ZXJuYXRlcyBmaWxlIgogbXNnc3RyICJraMO0bmcgdGjhu4MgYuG7jyBsacOqbiBr4bq/dCB04bqtcCB0aW4gdGhheSB0aOG6vyB04bqhbSB0aOG7nWkiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MTEgYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTQxCisjOiBidWlsdGluL2Nsb25lLmM6OTY1IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk1MAogbXNnaWQgIlRvbyBtYW55IGFyZ3VtZW50cy4iCiBtc2dzdHIgIkPDsyBxdcOhIG5oaeG7gXUgxJHhu5FpIHPhu5EuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTE1CisjOiBidWlsdGluL2Nsb25lLmM6OTY5CiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIHJlcG9zaXRvcnkgdG8gY2xvbmUuIgogbXNnc3RyICJC4bqhbiBwaOG6o2kgY2jhu4kgxJHhu4tuaCBt4buZdCBraG8gxJHhu4MgbcOgIG5ow6JuIGLhuqNuIChjbG9uZSkuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTI4CisjOiBidWlsdGluL2Nsb25lLmM6OTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIi0tYmFyZSBhbmQgLS1vcmlnaW4gJXMgb3B0aW9ucyBhcmUgaW5jb21wYXRpYmxlLiIKIG1zZ3N0ciAidMO5eSBjaOG7jW4gLS1iYXJlIHbDoCAtLW9yaWdpbiAlcyB4dW5nIGto4bqvYyBuaGF1LiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkzMQorIzogYnVpbHRpbi9jbG9uZS5jOjk4NQogbXNnaWQgIi0tYmFyZSBhbmQgLS1zZXBhcmF0ZS1naXQtZGlyIGFyZSBpbmNvbXBhdGlibGUuIgogbXNnc3RyICJ0w7l5IGNo4buNbiAtLWJhcmUgdsOgIC0tc2VwYXJhdGUtZ2l0LWRpciB4dW5nIGto4bqvYyBuaGF1LiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk0NAorIzogYnVpbHRpbi9jbG9uZS5jOjk5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZXBvc2l0b3J5ICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgImtobyBjaOG7qWEg4oCcJXPigJ0gY2jGsGEgdOG7k24gdOG6oWkiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NTAgYnVpbHRpbi9mZXRjaC5jOjE2MDYKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDA0IGJ1aWx0aW4vZmV0Y2guYzoxNzk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlcHRoICVzIGlzIG5vdCBhIHBvc2l0aXZlIG51bWJlciIKIG1zZ3N0ciAixJHhu5kgc8OidSAlcyBraMO0bmcgcGjhuqNpIGzDoCBt4buZdCBz4buRIG5ndXnDqm4gZMawxqFuZyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk2MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzdGluYXRpb24gcGF0aCAnJXMnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYW4gZW1wdHkgZGlyZWN0b3J5LiIKIG1zZ3N0ciAixJHGsOG7nW5nIGThuqtuIMSRw61jaCDigJwlc+KAnSDEkcOjIGPDsyB04burIHRyxrDhu5tjIHbDoCBraMO0bmcgcGjhuqNpIGzDoCBt4buZdCB0aMawIG3hu6VjIHLhu5duZy4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NzAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIndvcmtpbmcgdHJlZSAnJXMnIGFscmVhZHkgZXhpc3RzLiIKIG1zZ3N0ciAiY8OieSBsw6BtIHZp4buHYyDigJwlc+KAnSDEkcOjIHPhurVuIHThu5NuIHThuqFpIHLhu5NpLiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk4NSBidWlsdGluL2Nsb25lLmM6MTAwNiBidWlsdGluL2RpZmZ0b29sLmM6MjcxCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Mjk1IGJ1aWx0aW4vd29ya3RyZWUuYzozMjUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDM5IGJ1aWx0aW4vY2xvbmUuYzoxMDYwIGJ1aWx0aW4vZGlmZnRvb2wuYzoyNzEKKyM6IGJ1aWx0aW4vbG9nLmM6MTg2NiBidWlsdGluL3dvcmt0cmVlLmM6Mjk1IGJ1aWx0aW4vd29ya3RyZWUuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBsZWFkaW5nIGRpcmVjdG9yaWVzIG9mICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyBjw6FjIHRoxrAgbeG7pWMgZOG6q24gxJHhuqd1IGPhu6dhIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTkwCisjOiBidWlsdGluL2Nsb25lLmM6MTA0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHdvcmsgdHJlZSBkaXIgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHThuqFvIGPDonkgdGjGsCBt4bulYyBsw6BtIHZp4buHYyBkaXIg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEwCisjOiBidWlsdGluL2Nsb25lLmM6MTA2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDbG9uaW5nIGludG8gYmFyZSByZXBvc2l0b3J5ICclcycuLi5cbiIKIG1zZ3N0ciAixJBhbmcgbmjDom4gYuG6o24gdGjDoG5oIGtobyBjaOG7qWEgYmFyZSDigJwlc+KAneKAplxuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxMgorIzogYnVpbHRpbi9jbG9uZS5jOjEwNjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2xvbmluZyBpbnRvICclcycuLi5cbiIKIG1zZ3N0ciAixJBhbmcgbmjDom4gYuG6o24gdGjDoG5oIOKAnCVz4oCd4oCmXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDM2CisjOiBidWlsdGluL2Nsb25lLmM6MTA5MAogbXNnaWQgIiIKICJjbG9uZSAtLXJlY3Vyc2l2ZSBpcyBub3QgY29tcGF0aWJsZSB3aXRoIGJvdGggLS1yZWZlcmVuY2UgYW5kIC0tcmVmZXJlbmNlLWlmLSIKICJhYmxlIgpAQCAtOTQ1MCw0NyArMTIxNzksNDcgQEAKICJuaMOibiBi4bqjbiAtLXJlY3Vyc2l2ZSBraMO0bmcgdMawxqFuZyB0aMOtY2ggduG7m2kgY+G6oyBoYWkgLS1yZWZlcmVuY2UgdsOgIC0tcmVmZXJlbmNlLSIKICJpZi1hYmxlIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA5NworIzogYnVpbHRpbi9jbG9uZS5jOjExNTQKIG1zZ2lkICItLWRlcHRoIGlzIGlnbm9yZWQgaW4gbG9jYWwgY2xvbmVzOyB1c2UgZmlsZTovLyBpbnN0ZWFkLiIKIG1zZ3N0ciAiLS1kZXB0aCBi4buLIGzhu50gxJFpIGtoaSBuaMOibiBi4bqjbiBu4buZaSBi4buZOyBow6N5IHPhu60gZOG7pW5nIGZpbGU6Ly8gxJHhu4MgdGhheSB0aOG6vy4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDk5CisjOiBidWlsdGluL2Nsb25lLmM6MTE1NgogbXNnaWQgIi0tc2hhbGxvdy1zaW5jZSBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCiBtc2dzdHIgIiIKICItLXNoYWxsb3ctc2luY2UgYuG7iyBs4budIMSRaSBraGkgbmjDom4gYuG6o24gbuG7mWkgYuG7mTsgaMOjeSBz4butIGThu6VuZyBmaWxlOi8vIMSR4buDIHRoYXkgIgogInRo4bq/LiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMDEKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTU4CiBtc2dpZCAiLS1zaGFsbG93LWV4Y2x1ZGUgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAiLS1zaGFsbG93LWV4Y2x1ZGUgYuG7iyBs4budIMSRaSBraGkgbmjDom4gYuG6o24gbuG7mWkgYuG7mTsgaMOjeSBz4butIGThu6VuZyBmaWxlOi8vIMSR4buDIHRoYXkgIgogInRo4bq/LiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMDMKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTYwCiBtc2dpZCAiLS1maWx0ZXIgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICIiCiAiLS1maWx0ZXIgYuG7iyBs4budIMSRaSBraGkgbmjDom4gYuG6o24gbuG7mWkgYuG7mTsgaMOjeSBz4butIGThu6VuZyBmaWxlOi8vIMSR4buDIHRoYXkgdGjhur8uIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTEwNgorIzogYnVpbHRpbi9jbG9uZS5jOjExNjMKIG1zZ2lkICJzb3VyY2UgcmVwb3NpdG9yeSBpcyBzaGFsbG93LCBpZ25vcmluZyAtLWxvY2FsIgogbXNnc3RyICJraG8gbmd14buTbiBsw6AgbsO0bmcsIG7Dqm4gYuG7jyBxdWEgLS1sb2NhbCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMTEKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTY4CiBtc2dpZCAiLS1sb2NhbCBpcyBpZ25vcmVkIgogbXNnc3RyICItLWxvY2FsIGLhu4sgbOG7nSDEkWkiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTgxIGJ1aWx0aW4vY2xvbmUuYzoxMTg5CisjOiBidWlsdGluL2Nsb25lLmM6MTI0MyBidWlsdGluL2Nsb25lLmM6MTI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdGUgYnJhbmNoICVzIG5vdCBmb3VuZCBpbiB1cHN0cmVhbSAlcyIKIG1zZ3N0ciAiTmjDoW5oIG3DoXkgY2jhu6cgJXMga2jDtG5nIHTDrG0gdGjhuqV5IHRyb25nIHRoxrDhu6NuZyBuZ3Xhu5NuICVzIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE5MgorIzogYnVpbHRpbi9jbG9uZS5jOjEyNTQKIG1zZ2lkICJZb3UgYXBwZWFyIHRvIGhhdmUgY2xvbmVkIGFuIGVtcHR5IHJlcG9zaXRvcnkuIgogbXNnc3RyICJC4bqhbiBow6xuaCBuaMawIGzDoCDEkcOjIG5ow6JuIGLhuqNuIG3hu5l0IGtobyB0cuG7kW5nIHLhu5duZy4iCiAKICM6IGJ1aWx0aW4vY29sdW1uLmM6MTAKIG1zZ2lkICJnaXQgY29sdW1uIFs8b3B0aW9ucz5dIgotbXNnc3RyICJnaXQgY29sdW1uIFs8Y8OhYy10w7l5LWNo4buNbj5dIgorbXNnc3RyICJnaXQgY29sdW1uIFs8Y8OhYyB0w7l5IGNo4buNbj5dIgogCiAjOiBidWlsdGluL2NvbHVtbi5jOjI3CiBtc2dpZCAibG9va3VwIGNvbmZpZyB2YXJzIgpAQCAtOTUyMCwxNSArMTIyNDksODMgQEAKIG1zZ2lkICItLWNvbW1hbmQgbXVzdCBiZSB0aGUgZmlyc3QgYXJndW1lbnQiCiBtc2dzdHIgIi0tY29tbWFuZCBwaOG6o2kgbMOgIMSR4buRaSBz4buRIMSR4bqndSB0acOqbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0MAorIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjE4Cittc2dpZCAiIgorImdpdCBjb21taXQtdHJlZSBbKC1wIDxwYXJlbnQ+KS4uLl0gWy1TWzxrZXlpZD5dXSBbKC1tIDxtZXNzYWdlPikuLi5dIFsoLUYgIgorIjxmaWxlPikuLi5dIDx0cmVlPiIKK21zZ3N0ciAiIgorImdpdCBjb21taXQtdHJlZSBbKC1wIDxjaGE+KeKApl0gWy1TWzxrZXlpZD5dXSBbKC1tIDxnaGkgY2jDuj4p4oCmXSBbKC1GIDx04bqtcCB0aW4+KSIKKyLigKZdIDxjw6J5PiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjMxCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXJlbnQgJXMgaWdub3JlZCIKK21zZ3N0ciAiY2hhIG3hurkgYuG7iyB0csO5bmcgbOG6t3AgJXMgxJHDoyBi4buLIGLhu48gcXVhIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6NTYgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEzNiBidWlsdGluL2xvZy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIKK21zZ3N0ciAia2jDtG5nIHBo4bqjaSBsw6AgdMOqbiDEkeG7kWkgdMaw4bujbmcgaOG7o3AgbOG7hyDigJwlc+KAnSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIG9wZW4gJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiBn4bq3cCBs4buXaSBraGkgbeG7nyDigJwlc+KAnSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk2CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQgJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiBn4bq3cCBs4buXaSBraGkgxJHhu41jIOKAnCVz4oCdIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gY2xvc2UgJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiBn4bq3cCBs4buXaSBraGkgxJHDs25nIOKAnCVz4oCdIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTExCittc2dpZCAicGFyZW50IgorbXNnc3RyICJjaGEtbeG6uSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExMgorbXNnaWQgImlkIG9mIGEgcGFyZW50IGNvbW1pdCBvYmplY3QiCittc2dzdHIgIm3DoyBz4buRIGPhu6dhIMSR4buRaSB0xrDhu6NuZyBjaHV54buDbiBnaWFvIGNoYSBt4bq5IgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE0IGJ1aWx0aW4vY29tbWl0LmM6MTUwMSBidWlsdGluL21lcmdlLmM6MjcxCisjOiBidWlsdGluL25vdGVzLmM6NDA5IGJ1aWx0aW4vbm90ZXMuYzo1NzUgYnVpbHRpbi9zdGFzaC5jOjE0NzcKKyM6IGJ1aWx0aW4vdGFnLmM6NDEyCittc2dpZCAibWVzc2FnZSIKK21zZ3N0ciAiY2jDuiB0aMOtY2giCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTUgYnVpbHRpbi9jb21taXQuYzoxNTAxCittc2dpZCAiY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgImNow7ogdGjDrWNoIGPhu6dhIGzhuqduIGNodXnhu4NuIGdpYW8iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTgKK21zZ2lkICJyZWFkIGNvbW1pdCBsb2cgbWVzc2FnZSBmcm9tIGZpbGUiCittc2dzdHIgIsSR4buNYyBjaMO6IHRow61jaCBuaOG6rXQga8O9IGzhuqduIGNodXnhu4NuIGdpYW8gdOG7qyB04bqtcCB0aW4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMjEgYnVpbHRpbi9jb21taXQuYzoxNTEzIGJ1aWx0aW4vbWVyZ2UuYzoyODgKKyM6IGJ1aWx0aW4vcHVsbC5jOjE3NSBidWlsdGluL3JldmVydC5jOjExOAorbXNnaWQgIkdQRyBzaWduIGNvbW1pdCIKK21zZ3N0ciAiS8O9IGzhuqduIGNodXnhu4NuIGdpYW8gZMO5bmcgR1BHIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTMzCittc2dpZCAibXVzdCBnaXZlIGV4YWN0bHkgb25lIHRyZWUiCittc2dzdHIgInBo4bqjaSDEkcawYSByYSBjaMOtbmggeMOhYyBt4buZdCBjw6J5IgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTQwCittc2dpZCAiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gcmVhZCIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVlOiBn4bq3cCBs4buXaSBraGkgxJHhu41jIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjQxCiBtc2dpZCAiZ2l0IGNvbW1pdCBbPG9wdGlvbnM+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCi1tc2dzdHIgImdpdCBjb21taXQgWzxjw6FjLXTDuXktY2jhu41uPl0gWy0tXSA8cGF0aHNwZWM+4oCmIgorbXNnc3RyICJnaXQgY29tbWl0IFs8Y8OhYyB0w7l5IGNo4buNbj5dIFstLV0gPHBhdGhzcGVjPuKApiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NQorIzogYnVpbHRpbi9jb21taXQuYzo0NgogbXNnaWQgImdpdCBzdGF0dXMgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgotbXNnc3RyICJnaXQgc3RhdHVzIFs8Y8OhYy10w7l5LWNo4buNbj5dIFstLV0gPHBhdGhzcGVjPuKApiIKK21zZ3N0ciAiZ2l0IHN0YXR1cyBbPGPDoWMgdMO5eSBjaOG7jW4+XSBbLS1dIDxwYXRoc3BlYz7igKYiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTEKIG1zZ2lkICIiCiAiWW91IGFza2VkIHRvIGFtZW5kIHRoZSBtb3N0IHJlY2VudCBjb21taXQsIGJ1dCBkb2luZyBzbyB3b3VsZCBtYWtlXG4iCiAiaXQgZW1wdHkuIFlvdSBjYW4gcmVwZWF0IHlvdXIgY29tbWFuZCB3aXRoIC0tYWxsb3ctZW1wdHksIG9yIHlvdSBjYW5cbiIKQEAgLTk1NDEsNyArMTIzMzgsNyBAQAogImhv4bq3YyBsw6AgYuG6oW4gZ+G7oSBi4buPIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBt4buZdCBjw6FjaCBob8OgbiB0b8OgbiBi4bqxbmcgbOG7h25oOlxuIgogIlwiZ2l0IHJlc2V0IEhFQUReXCIuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTYKIG1zZ2lkICIiCiAiVGhlIHByZXZpb3VzIGNoZXJyeS1waWNrIGlzIG5vdyBlbXB0eSwgcG9zc2libHkgZHVlIHRvIGNvbmZsaWN0IHJlc29sdXRpb24uXG4iCiAiSWYgeW91IHdpc2ggdG8gY29tbWl0IGl0IGFueXdheSwgdXNlOlxuIgpAQCAtOTU1Niw4MyArMTIzNTMsOTcgQEAKICIgICAgZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5XG4iCiAiXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjIKLW1zZ2lkICJPdGhlcndpc2UsIHBsZWFzZSB1c2UgJ2dpdCByZXNldCdcbiIKLW1zZ3N0ciAiTuG6v3Uga2jDtG5nIMSRxrDhu6NjIHRow6wgZMO5bmcgbOG7h25oIFwiZ2l0IHJlc2V0XCJcbiIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjMKK21zZ2lkICJPdGhlcndpc2UsIHBsZWFzZSB1c2UgJ2dpdCBjaGVycnktcGljayAtLXNraXAnXG4iCittc2dzdHIgIk7hur91IGtow7RuZyDEkcaw4bujYyB0aMOsIGTDuW5nIGzhu4duaCBcImdpdCBjaGVycnktcGljayAtLXNraXBcIlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY1CisjOiBidWlsdGluL2NvbW1pdC5jOjY2CiBtc2dpZCAiIgorImFuZCB0aGVuIHVzZTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcbiIKKyJcbiIKKyJ0byByZXN1bWUgY2hlcnJ5LXBpY2tpbmcgdGhlIHJlbWFpbmluZyBjb21taXRzLlxuIgogIklmIHlvdSB3aXNoIHRvIHNraXAgdGhpcyBjb21taXQsIHVzZTpcbiIKICJcbiIKLSIgICAgZ2l0IHJlc2V0XG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLXNraXBcbiIKICJcbiIKLSJUaGVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB3aWxsIHJlc3VtZSBjaGVycnktcGlja2luZ1xuIgotInRoZSByZW1haW5pbmcgY29tbWl0cy5cbiIKIG1zZ3N0ciAiIgorInbDoCBzYXUgxJHDsyBkw7luZzpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcbiIKKyJcbiIKKyLEkeG7gyBs4bqhaSB0aeG6v3AgdOG7pWMgY2hlcnJ5LXBpY2tpbmcgY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIGPDsm4gbOG6oWkuXG4iCiAiTuG6v3UgYuG6oW4gbXXhu5FuIGLhu48gcXVhIGzhuqduIGNodXnhu4NuIGdpYW8gbsOgeSB0aMOsIGTDuW5nOlxuIgogIlxuIgotIiAgICBnaXQgcmVzZXRcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFxuIgogIlxuIgotIlRo4bq/IHRow6wgXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIHPhur0gcGjhu6VjIGjhu5NpIGzhuqFpIHZp4buHYyBjaGVycnktcGlja1xuIgotIm5o4buvbmcgbOG6p24gY2h1eeG7g24gZ2lhbyBjw7JuIGzhuqFpLlxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjMxMQorIzogYnVpbHRpbi9jb21taXQuYzozMTUKIG1zZ2lkICJmYWlsZWQgdG8gdW5wYWNrIEhFQUQgdHJlZSBvYmplY3QiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSB0aMOhbyBk4buhIEhFQUQgxJHhu5FpIHTGsOG7o25nIGPDonkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzUyCisjOiBidWlsdGluL2NvbW1pdC5jOjM1MQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgduG7m2kgLWEgbMOgIGtow7RuZyBjw7Mgw70gbmdoxKlhIGfDrCIKKworIzogYnVpbHRpbi9jb21taXQuYzozNjQKK21zZ2lkICJObyBwYXRocyB3aXRoIC0taW5jbHVkZS8tLW9ubHkgZG9lcyBub3QgbWFrZSBzZW5zZS4iCittc2dzdHIgIktow7RuZyDEkcaw4budbmcgZOG6q24gduG7m2kgY8OhYyB0w7l5IGNo4buNbiAtLWluY2x1ZGUvLS1vbmx5IGtow7RuZyBo4bujcCBsw70uIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjM3NgogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGluZGV4IgogbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gYuG6o25nIG3hu6VjIGzhu6VjIHThuqFtIHRo4budaSIKIAotIzogYnVpbHRpbi9jb21taXQuYzozNTgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzg1CiBtc2dpZCAiaW50ZXJhY3RpdmUgYWRkIGZhaWxlZCIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHRow6ptIGLhurFuZyBjw6FjaCB0xrDGoW5nIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM3MQorIzogYnVpbHRpbi9jb21taXQuYzo0MDAKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIHRlbXBvcmFyeSBpbmRleCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGPhuq1wIG5o4bqtdCBi4bqjbmcgbeG7pWMgbOG7pWMgdOG6oW0gdGjhu51pIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM3MworIzogYnVpbHRpbi9jb21taXQuYzo0MDIKIG1zZ2lkICJGYWlsZWQgdG8gdXBkYXRlIG1haW4gY2FjaGUgdHJlZSIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIGPhuq1wIG5o4bqtdCBjw6J5IGLhu5kgbmjhu5sgxJHhu4dtIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM5OCBidWlsdGluL2NvbW1pdC5jOjQyMSBidWlsdGluL2NvbW1pdC5jOjQ2NworIzogYnVpbHRpbi9jb21taXQuYzo0MjcgYnVpbHRpbi9jb21taXQuYzo0NTAgYnVpbHRpbi9jb21taXQuYzo0OTYKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3X2luZGV4IGZpbGUiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgdOG6rXAgdGluIGzGsHUgYuG6o25nIG3hu6VjIGzhu6VjIG3hu5tpIChuZXdfaW5kZXgpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ1MAorIzogYnVpbHRpbi9jb21taXQuYzo0NzkKIG1zZ2lkICJjYW5ub3QgZG8gYSBwYXJ0aWFsIGNvbW1pdCBkdXJpbmcgYSBtZXJnZS4iCiBtc2dzdHIgIiIKICJraMO0bmcgdGjhu4MgdGjhu7FjIGhp4buHbiB2aeG7h2MgY2h1eeG7g24gZ2lhbyBj4bulYyBi4buZIHRyb25nIGtoaSDEkWFuZyDEkcaw4bujYyBow7JhIHRy4buZbi4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDUyCisjOiBidWlsdGluL2NvbW1pdC5jOjQ4MQogbXNnaWQgImNhbm5vdCBkbyBhIHBhcnRpYWwgY29tbWl0IGR1cmluZyBhIGNoZXJyeS1waWNrLiIKIG1zZ3N0ciAiIgogImtow7RuZyB0aOG7gyB0aOG7sWMgaGnhu4duIHZp4buHYyBjaHV54buDbiBnaWFvIGLhu5kgcGjhuq1uIHRyb25nIGtoaSDEkWFuZyBjaGVycnktcGljay4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDYwCisjOiBidWlsdGluL2NvbW1pdC5jOjQ4OQogbXNnaWQgImNhbm5vdCByZWFkIHRoZSBpbmRleCIKIG1zZ3N0ciAia2jDtG5nIMSR4buNYyDEkcaw4bujYyBi4bqjbmcgbeG7pWMgbOG7pWMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDc5CisjOiBidWlsdGluL2NvbW1pdC5jOjUwOAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0ZW1wb3JhcnkgaW5kZXggZmlsZSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdoaSB04bqtcCB0aW4gbMawdSBi4bqjbmcgbeG7pWMgbOG7pWMgdOG6oW0gdGjhu51pIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3NworIzogYnVpbHRpbi9jb21taXQuYzo2MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgbGFja3MgYXV0aG9yIGhlYWRlciIKIG1zZ3N0ciAibOG6p24gY2h1eeG7g24gZ2lhbyDigJwlc+KAnSB0aGnhur91IHBo4bqnbiB0w6FjIGdp4bqjIOG7nyDEkeG6p3UiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NTc5CisjOiBidWlsdGluL2NvbW1pdC5jOjYwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJyVzJyBoYXMgbWFsZm9ybWVkIGF1dGhvciBsaW5lIgogbXNnc3RyICJs4bqnbiBjaHV54buDbiBnaWFvIOKAnCVz4oCdIGPDsyBwaOG6p24gdMOhYyBnaeG6oyDhu58gxJHhuqd1IGThu4sgZOG6oW5nIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU5OAorIzogYnVpbHRpbi9jb21taXQuYzo2MjcKIG1zZ2lkICJtYWxmb3JtZWQgLS1hdXRob3IgcGFyYW1ldGVyIgogbXNnc3RyICLEkeG7kWkgc+G7kSBjaG8gLS1hdXRob3IgYuG7iyBk4buLIGjDrG5oIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY1MAorIzogYnVpbHRpbi9jb21taXQuYzo2ODAKIG1zZ2lkICIiCiAidW5hYmxlIHRvIHNlbGVjdCBhIGNvbW1lbnQgY2hhcmFjdGVyIHRoYXQgaXMgbm90IHVzZWRcbiIKICJpbiB0aGUgY3VycmVudCBjb21taXQgbWVzc2FnZSIKQEAgLTk2NDAsMzggKzEyNDUxLDM4IEBACiAia2jDtG5nIHRo4buDIGNo4buNbiBt4buZdCBrw70gdOG7sSBnaGkgY2jDuiBjw6FpIG3DoCBraMO0bmcgxJHGsOG7o2MgZMO5bmdcbiIKICJ0cm9uZyBwaOG6p24gZ2hpIGNow7ogaGnhu4duIHThuqFpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY4NyBidWlsdGluL2NvbW1pdC5jOjcyMCBidWlsdGluL2NvbW1pdC5jOjEwNDkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzE4IGJ1aWx0aW4vY29tbWl0LmM6NzUxIGJ1aWx0aW4vY29tbWl0LmM6MTA5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9va3VwIGNvbW1pdCAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHTDrG0ga2nhur9tIGNvbW1pdCAobOG6p24gY2h1eeG7g24gZ2lhbykgJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Njk5IGJ1aWx0aW4vc2hvcnRsb2cuYzozMTcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzMwIGJ1aWx0aW4vc2hvcnRsb2cuYzozMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiKHJlYWRpbmcgbG9nIG1lc3NhZ2UgZnJvbSBzdGFuZGFyZCBpbnB1dClcbiIKIG1zZ3N0ciAiKMSRYW5nIMSR4buNYyB0aMO0bmcgxJFp4buHcCBuaOG6rXQga8O9IHThu6sgxJHhuqd1IHbDoG8gdGnDqnUgY2h14bqpbilcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3MDEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzMyCiBtc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZyb20gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgbmjhuq10IGvDvSB04burIMSR4bqndSB2w6BvIHRpw6p1IGNodeG6qW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzA1CisjOiBidWlsdGluL2NvbW1pdC5jOjczNgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBsb2cgZmlsZSAnJXMnIgogbXNnc3RyICJraMO0bmcgxJHhu41jIMSRxrDhu6NjIHThu4dwIG5o4bqtdCBrw70g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzM0IGJ1aWx0aW4vY29tbWl0LmM6NzQyCisjOiBidWlsdGluL2NvbW1pdC5jOjc2NyBidWlsdGluL2NvbW1pdC5jOjc4MwogbXNnaWQgImNvdWxkIG5vdCByZWFkIFNRVUFTSF9NU0ciCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgU1FVQVNIX01TRyIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3MzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Nzc0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgTUVSR0VfTVNHIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIE1FUkdFX01TRyIKIAotIzogYnVpbHRpbi9jb21taXQuYzo3OTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODM0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIGNvbW1pdCB0ZW1wbGF0ZSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdoaSBt4bqrdSBjaHV54buDbiBnaWFvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjgxMQorIzogYnVpbHRpbi9jb21taXQuYzo4NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtOTY4Niw3ICsxMjQ5Nyw3IEBACiAiXHQlc1xuIgogInbDoCB0aOG7rSBs4bqhaS5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MTYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTk3MDEsNyArMTI1MTIsNyBAQAogIlx0JXNcbiIKICJ2w6AgdGjhu60gbOG6oWkuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODI5CisjOiBidWlsdGluL2NvbW1pdC5jOjg3MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIHRoZSBjb21taXQgbWVzc2FnZSBmb3IgeW91ciBjaGFuZ2VzLiBMaW5lcyBzdGFydGluZ1xuIgpAQCAtOTcxMiw3ICsxMjUyMyw3IEBACiAiYuG6r3QgxJHhuqd1IGLhurFuZyDigJwlY+KAnSBz4bq9IMSRxrDhu6NjIGLhu48gcXVhLCBu4bq/dSBwaOG6p24gY2jDuiB0aMOtY2ggcuG7l25nIHPhur0gaOG7p3kgYuG7jyBs4bqnbiAiCiAiY2h1eeG7g24gZ2lhby5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQbGVhc2UgZW50ZXIgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB5b3VyIGNoYW5nZXMuIExpbmVzIHN0YXJ0aW5nXG4iCkBAIC05NzI0LDE1NyArMTI1MzUsMTQ4IEBACiAiYuG6r3QgxJHhuqd1IGLhurFuZyDigJwlY+KAnSBz4bq9IMSRxrDhu6NjIGLhu48gcXVhOyBi4bqhbiBjw7MgdGjhu4MgeMOzYSBjaMO6bmcgxJFpIG7hur91IG114buRbiB0aOG6vy5cbiIKICJQaOG6p24gY2jDuiB0aMOtY2ggbsOgeSBu4bq/dSB0cuG7kW5nIHLhu5duZyBz4bq9IGjhu6d5IGLhu48gbOG6p24gY2h1eeG7g24gZ2lhby5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4NTQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzQXV0aG9yOiAgICAlLipzIDwlLipzPiIKIG1zZ3N0ciAiJXNUw6FjIGdp4bqjOiAgICAgICAgICAgJS4qcyA8JS4qcz4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODYyCisjOiBidWlsdGluL2NvbW1pdC5jOjkwNAogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0RhdGU6ICAgICAgJXMiCiBtc2dzdHIgIiVzTmfDoHkgdGjDoW5nOiAgICAgICAgJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODY5CisjOiBidWlsdGluL2NvbW1pdC5jOjkxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0NvbW1pdHRlcjogJS4qcyA8JS4qcz4iCiBtc2dzdHIgIiVzTmfGsOG7nWkgY2h1eeG7g24gZ2lhbzogJS4qcyA8JS4qcz4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODg3CisjOiBidWlsdGluL2NvbW1pdC5jOjkyOQogbXNnaWQgIkNhbm5vdCByZWFkIGluZGV4IgogbXNnc3RyICJLaMO0bmcgxJHhu41jIMSRxrDhu6NjIGLhuqNuZyBt4bulYyBs4bulYyIKIAotIzogYnVpbHRpbi9jb21taXQuYzo5NTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTk3CiBtc2dpZCAiRXJyb3IgYnVpbGRpbmcgdHJlZXMiCiBtc2dzdHIgIkfhurdwIGzhu5dpIGtoaSB4w6J5IGThu7FuZyBjw6J5IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjk2NyBidWlsdGluL3RhZy5jOjI1OAorIzogYnVpbHRpbi9jb21taXQuYzoxMDExIGJ1aWx0aW4vdGFnLmM6Mjc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlBsZWFzZSBzdXBwbHkgdGhlIG1lc3NhZ2UgdXNpbmcgZWl0aGVyIC1tIG9yIC1GIG9wdGlvbi5cbiIKIG1zZ3N0ciAiWGluIGjDo3kgY3VuZyBj4bqlcCBs4budaSBjaMO6IGdp4bqjaSBob+G6t2MgbMOgIGTDuW5nIHTDuXkgY2jhu41uIC1tIGhv4bq3YyBsw6AgLUYuXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAxMQorIzogYnVpbHRpbi9jb21taXQuYzoxMDU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIi0tYXV0aG9yICclcycgaXMgbm90ICdOYW1lIDxlbWFpbD4nIGFuZCBtYXRjaGVzIG5vIGV4aXN0aW5nIGF1dGhvciIKIG1zZ3N0ciAiIgogIi0tYXV0aG9yIOKAnCVz4oCdIGtow7RuZyBwaOG6o2kgbMOgIOKAnEjhu40gdsOgIHTDqm4gPHRoxrAgxJFp4buHbiB04butbD7igJ0gdsOgIGtow7RuZyBraOG7m3AgYuG6pXQga+G7syAiCiAidMOhYyBnaeG6oyBuw6BvIHPhurVuIGPDsyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDI1CisjOiBidWlsdGluL2NvbW1pdC5jOjEwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBpZ25vcmVkIG1vZGUgJyVzJyIKIG1zZ3N0ciAiQ2jhur8gxJHhu5kgYuG7jyBxdWEga2jDtG5nIGjhu6NwIGzhu4cg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAzOSBidWlsdGluL2NvbW1pdC5jOjEyNzYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA4NyBidWlsdGluL2NvbW1pdC5jOjEzMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB1bnRyYWNrZWQgZmlsZXMgbW9kZSAnJXMnIgogbXNnc3RyICJDaOG6vyDEkeG7mSBjaG8gY8OhYyB04bqtcCB0aW4gY2jGsGEgxJHGsOG7o2MgdGhlbyBkw7VpIGtow7RuZyBo4bujcCBs4buHIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwNzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNwogbXNnaWQgIi0tbG9uZyBhbmQgLXogYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiaGFpIHTDuXkgY2jhu41uIC1sb25nIHbDoCAteiBraMO0bmcgdMawxqFuZyB0aMOtY2ggduG7m2kgbmhhdSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTEwCisjOiBidWlsdGluL2NvbW1pdC5jOjExNzEKIG1zZ2lkICJVc2luZyBib3RoIC0tcmVzZXQtYXV0aG9yIGFuZCAtLWF1dGhvciBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICJT4butIGThu6VuZyBj4bqjIGhhaSB0w7l5IGNo4buNbiAtLXJlc2V0LWF1dGhvciB2w6AgLS1hdXRob3Iga2jDtG5nIGjhu6NwIGzDvSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTE5CisjOiBidWlsdGluL2NvbW1pdC5jOjExODAKIG1zZ2lkICJZb3UgaGF2ZSBub3RoaW5nIHRvIGFtZW5kLiIKIG1zZ3N0ciAiS2jDtG5nIGPDsyBnw6wgxJHhu4MgbcOgIOKAnHR1IGLhu5XigJ0gY+G6oy4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyMgorIzogYnVpbHRpbi9jb21taXQuYzoxMTgzCiBtc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UgLS0gY2Fubm90IGFtZW5kLiIKIG1zZ3N0ciAiIgogIkLhuqFuIMSRYW5nIOG7nyBnaeG7r2EgY+G7p2EgcXXDoSB0csOsbmggaMOyYSB0cuG7mW4gLS0ga2jDtG5nIHRo4buDIHRo4buxYyBoaeG7h24gdmnhu4djIOKAnHR1IGLhu5XigJ0uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4NQogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhIGNoZXJyeS1waWNrIC0tIGNhbm5vdCBhbWVuZC4iCiBtc2dzdHIgIiIKICJC4bqhbiDEkWFuZyDhu58gZ2nhu69hIGPhu6dhIHF1w6EgdHLDrG5oIGNoZXJyeS1waWNrIC0tIGtow7RuZyB0aOG7gyB0aOG7sWMgaGnhu4duIHZp4buHYyDigJx0dSAiCiAiYuG7leKAnS4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNworIzogYnVpbHRpbi9jb21taXQuYzoxMTg4CiBtc2dpZCAiT3B0aW9ucyAtLXNxdWFzaCBhbmQgLS1maXh1cCBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAiQ8OhYyB0w7l5IGNo4buNbiAtLXNxdWFzaCB2w6AgLS1maXh1cCBraMO0bmcgdGjhu4Mgc+G7rSBk4bulbmcgY8O5bmcgduG7m2kgbmhhdSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTM3CisjOiBidWlsdGluL2NvbW1pdC5jOjExOTgKIG1zZ2lkICJPbmx5IG9uZSBvZiAtYy8tQy8tRi8tLWZpeHVwIGNhbiBiZSB1c2VkLiIKLW1zZ3N0ciAiIgotIkNo4buJIMSRxrDhu6NjIGTDuW5nIG3hu5l0IHRyb25nIHPhu5EgdMO5eSBjaOG7jW4gdHJvbmcgc+G7kSBjw6FjIHTDuXkgY2jhu41uIC1jLy1DLy1GLy0tZml4dXAiCittc2dzdHIgIkNo4buJIMSRxrDhu6NjIGTDuW5nIG3hu5l0IHRyb25nIHPhu5EgdMO5eSBjaOG7jW4gdHJvbmcgc+G7kSAtYy8tQy8tRi8tLWZpeHVwLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTM5CisjOiBidWlsdGluL2NvbW1pdC5jOjEyMDAKIG1zZ2lkICJPcHRpb24gLW0gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggLWMvLUMvLUYuIgogbXNnc3RyICJUw7l5IGNo4buNbiAtbSBraMO0bmcgdGjhu4MgxJHGsOG7o2MgdOG7lSBo4bujcCBjw7luZyB24bubaSAtYy8tQy8tRi4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE0NworIzogYnVpbHRpbi9jb21taXQuYzoxMjA4CiBtc2dpZCAiLS1yZXNldC1hdXRob3IgY2FuIGJlIHVzZWQgb25seSB3aXRoIC1DLCAtYyBvciAtLWFtZW5kLiIKIG1zZ3N0ciAiIgogIi0tcmVzZXQtYXV0aG9yIGNo4buJIGPDsyB0aOG7gyDEkcaw4bujYyBz4butIGThu6VuZyB24bubaSB0w7l5IGNo4buNbiAtQywgLWMgaGF5IC0tYW1lbmQuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIyNQogbXNnaWQgIk9ubHkgb25lIG9mIC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIGNhbiBiZSB1c2VkLiIKIG1zZ3N0ciAiIgogIkNo4buJIG3hu5l0IHRyb25nIGPDoWMgdMO5eSBjaOG7jW4gLS1pbmNsdWRlLy0tb25seS8tLWFsbC8tLWludGVyYWN0aXZlLy0tcGF0Y2ggxJHGsOG7o2MgIgogInPhu60gZOG7pW5nLiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTY2Ci1tc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgotbXNnc3RyICJLaMO0bmcgxJHGsOG7nW5nIGThuqtuIHbhu5tpIGPDoWMgdMO5eSBjaOG7jW4gLS1pbmNsdWRlLy0tb25seSBraMO0bmcgaOG7o3AgbMO9LiIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxMTgwIGJ1aWx0aW4vdGFnLmM6NTQ2CisjOiBidWlsdGluL2NvbW1pdC5jOjEyMzEKICMsIGMtZm9ybWF0Ci1tc2dpZCAiSW52YWxpZCBjbGVhbnVwIG1vZGUgJXMiCi1tc2dzdHIgIkNo4bq/IMSR4buZIGThu41uIGThurlwIGtow7RuZyBo4bujcCBs4buHICVzIgorbXNnaWQgInBhdGhzICclcyAuLi4nIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiY8OhYyDEkcaw4budbmcgZOG6q24g4oCcJXMg4oCm4oCdIHbhu5tpIHTDuXkgY2jhu41uIC1hIGtow7RuZyBo4bujcCBsw70iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4NQotbXNnaWQgIlBhdGhzIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZS4iCi1tc2dzdHIgIkPDoWMgxJHGsOG7nW5nIGThuqtuIHbhu5tpIHTDuXkgY2jhu41uIC1hIGtow7RuZyBo4bujcCBsw70uIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTEgYnVpbHRpbi9jb21taXQuYzoxNDk1CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjIgYnVpbHRpbi9jb21taXQuYzoxNTI0CiBtc2dpZCAic2hvdyBzdGF0dXMgY29uY2lzZWx5IgogbXNnc3RyICJoaeG7g24gdGjhu4sgdHLhuqFuZyB0aMOhaSDhu58gZOG6oW5nIHPDumMgdMOtY2giCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxMyBidWlsdGluL2NvbW1pdC5jOjE0OTcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2NCBidWlsdGluL2NvbW1pdC5jOjE1MjYKIG1zZ2lkICJzaG93IGJyYW5jaCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIHRow7RuZyB0aW4gbmjDoW5oIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2NgogbXNnaWQgInNob3cgc3Rhc2ggaW5mb3JtYXRpb24iCiBtc2dzdHIgImhp4buDbiB0aOG7iyB0aMO0bmcgdGluIHbhu4EgdOG6oW0gY+G6pXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxNyBidWlsdGluL2NvbW1pdC5jOjE0OTkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2OCBidWlsdGluL2NvbW1pdC5jOjE1MjgKIG1zZ2lkICJjb21wdXRlIGZ1bGwgYWhlYWQvYmVoaW5kIHZhbHVlcyIKIG1zZ3N0ciAidMOtbmggxJHhuqd5IMSR4bunIGdpw6EgdHLhu4sgdHLGsOG7m2Mvc2F1IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3MAogbXNnaWQgInZlcnNpb24iCiBtc2dzdHIgInBoacOqbiBi4bqjbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzE5IGJ1aWx0aW4vY29tbWl0LmM6MTUwMSBidWlsdGluL3B1c2guYzo1NTgKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2MzkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3MCBidWlsdGluL2NvbW1pdC5jOjE1MzAgYnVpbHRpbi9wdXNoLmM6NTQ5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjQzCiBtc2dpZCAibWFjaGluZS1yZWFkYWJsZSBvdXRwdXQiCiBtc2dzdHIgImvhur90IHh14bqldCBk4bqhbmcgbcOheS1jw7MtdGjhu4MtxJHhu41jIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjIgYnVpbHRpbi9jb21taXQuYzoxNTAzCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzMgYnVpbHRpbi9jb21taXQuYzoxNTMyCiBtc2dpZCAic2hvdyBzdGF0dXMgaW4gbG9uZyBmb3JtYXQgKGRlZmF1bHQpIgogbXNnc3RyICJoaeG7g24gdGjhu4sgdHLhuqFuZyB0aMOhaSDhu58gxJHhu4tuaCBk4bqhbmcgZMOgaSAobeG6t2MgxJHhu4tuaCkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNSBidWlsdGluL2NvbW1pdC5jOjE1MDYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3NiBidWlsdGluL2NvbW1pdC5jOjE1MzUKIG1zZ2lkICJ0ZXJtaW5hdGUgZW50cmllcyB3aXRoIE5VTCIKIG1zZ3N0ciAiY2jhuqVtIGThu6l0IGPDoWMgbeG7pWMgYuG6sW5nIE5VTCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzI3IGJ1aWx0aW4vY29tbWl0LmM6MTMzMSBidWlsdGluL2NvbW1pdC5jOjE1MDkKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA3IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDEwIGJ1aWx0aW4vcmViYXNlLmM6OTEwCi0jOiBidWlsdGluL3RhZy5jOjQwMAorIzogYnVpbHRpbi9jb21taXQuYzoxMzc4IGJ1aWx0aW4vY29tbWl0LmM6MTM4MiBidWlsdGluL2NvbW1pdC5jOjE1MzgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTUzIGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTU2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1OSBidWlsdGluL3JlYmFzZS5jOjE1NjkgcGFyc2Utb3B0aW9ucy5oOjMzNgogbXNnaWQgIm1vZGUiCiBtc2dzdHIgImNo4bq/IMSR4buZIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjggYnVpbHRpbi9jb21taXQuYzoxNTA5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzkgYnVpbHRpbi9jb21taXQuYzoxNTM4CiBtc2dpZCAic2hvdyB1bnRyYWNrZWQgZmlsZXMsIG9wdGlvbmFsIG1vZGVzOiBhbGwsIG5vcm1hbCwgbm8uIChEZWZhdWx0OiBhbGwpIgogbXNnc3RyICIiCiAiaGnhu4NuIHRo4buLIGPDoWMgdOG6rXAgdGluIGNoxrBhIMSRxrDhu6NjIHRoZW8gZMO1aSAgZOG6pXUgduG6v3QsIGPDoWMgY2jhur8gxJHhu5kgdMO5eSBjaOG7jW46ICBhbGwsICIKICJub3JtYWwsIG5vLiAoTeG6t2MgxJHhu4tuaDogYWxsKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzMyCisjOiBidWlsdGluL2NvbW1pdC5jOjEzODMKIG1zZ2lkICIiCiAic2hvdyBpZ25vcmVkIGZpbGVzLCBvcHRpb25hbCBtb2RlczogdHJhZGl0aW9uYWwsIG1hdGNoaW5nLCBuby4gKERlZmF1bHQ6ICIKICJ0cmFkaXRpb25hbCkiCkBAIC05ODgyLDExICsxMjY4NCwxMSBAQAogImhp4buDbiB0aOG7iyBjw6FjIHThuq1wIHRpbiBi4buLIGLhu48gcXVhLCBjw6FjIGNo4bq/IMSR4buZIHTDuXkgY2jhu41uOiB0cmFkaXRpb25hbCwgbWF0Y2hpbmcsICIKICJuby4gKE3hurdjIMSR4buLbmg6IHRyYWRpdGlvbmFsKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM0IHBhcnNlLW9wdGlvbnMuaDoxNjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4NSBwYXJzZS1vcHRpb25zLmg6MTkyCiBtc2dpZCAid2hlbiIKIG1zZ3N0ciAia2hpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4NgogbXNnaWQgIiIKICJpZ25vcmUgY2hhbmdlcyB0byBzdWJtb2R1bGVzLCBvcHRpb25hbCB3aGVuOiBhbGwsIGRpcnR5LCB1bnRyYWNrZWQuICIKICIoRGVmYXVsdDogYWxsKSIKQEAgLTk4OTQsNDY5ICsxMjY5Niw0NzggQEAKICJi4buPIHF1YSBjw6FjIHRoYXkgxJHhu5VpIHRyb25nIG3DtC3EkXVuLWNvbiwgdMO5eSBjaOG7jW4ga2hpOiBhbGwsIGRpcnR5LCB1bnRyYWNrZWQuICIKICIoTeG6t2MgxJHhu4tuaDogYWxsKSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM3CisjOiBidWlsdGluL2NvbW1pdC5jOjEzODgKIG1zZ2lkICJsaXN0IHVudHJhY2tlZCBmaWxlcyBpbiBjb2x1bW5zIgogbXNnc3RyICJoaeG7g24gdGjhu4sgZGFuaCBzw6FjaCBjw6FjIHThuq1wLXRpbiBjaMawYSDEkcaw4bujYyB0aGVvIGTDtWkgdHJvbmcgY8OhYyBj4buZdCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzM4CisjOiBidWlsdGluL2NvbW1pdC5jOjEzODkKIG1zZ2lkICJkbyBub3QgZGV0ZWN0IHJlbmFtZXMiCiBtc2dzdHIgImtow7RuZyBkw7IgdMOsbSBjw6FjIHTDqm4gdGhheSDEkeG7lWkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTM0MAorIzogYnVpbHRpbi9jb21taXQuYzoxMzkxCiBtc2dpZCAiZGV0ZWN0IHJlbmFtZXMsIG9wdGlvbmFsbHkgc2V0IHNpbWlsYXJpdHkgaW5kZXgiCiBtc2dzdHIgImTDsiBjw6FjIHTDqm4gdGhheSDEkeG7lWksIHTDuXkgw70gxJHhurd0IG3hu6VjIGzhu6VjIHTGsMahbmcgdOG7sSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzYwCisjOiBidWlsdGluL2NvbW1pdC5jOjE0MTEKIG1zZ2lkICJVbnN1cHBvcnRlZCBjb21iaW5hdGlvbiBvZiBpZ25vcmVkIGFuZCB1bnRyYWNrZWQtZmlsZXMgYXJndW1lbnRzIgogbXNnc3RyICIiCiAiS2jDtG5nIGjhu5cgdHLhu6EgdOG7lSBo4bujcCBjw6FjIHRoYW0gc+G7kSBjw6FjIHThuq1wIHRpbiBi4buLIGLhu48gcXVhIHbDoCBraMO0bmcgxJHGsOG7o2MgdGhlbyBkw7VpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NAogbXNnaWQgInN1cHByZXNzIHN1bW1hcnkgYWZ0ZXIgc3VjY2Vzc2Z1bCBjb21taXQiCiBtc2dzdHIgImtow7RuZyBoaeG7g24gdGjhu4sgdOG7lW5nIGvhur90IHNhdSBraGkgY2h1eeG7g24gZ2lhbyB0aMOgbmggY8O0bmciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2NgorIzogYnVpbHRpbi9jb21taXQuYzoxNDk1CiBtc2dpZCAic2hvdyBkaWZmIGluIGNvbW1pdCBtZXNzYWdlIHRlbXBsYXRlIgogbXNnc3RyICJoaeG7g24gdGjhu4sgc+G7sSBraMOhYyBiaeG7h3QgdHJvbmcgbeG6q3UgdGluIG5o4bqvbiBjaHV54buDbiBnaWFvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NwogbXNnaWQgIkNvbW1pdCBtZXNzYWdlIG9wdGlvbnMiCiBtc2dzdHIgIkPDoWMgdMO5eSBjaOG7jW4gZ2hpIGNow7ogY29tbWl0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjkgYnVpbHRpbi9tZXJnZS5jOjI2MyBidWlsdGluL3RhZy5jOjM5NworIzogYnVpbHRpbi9jb21taXQuYzoxNDk4IGJ1aWx0aW4vbWVyZ2UuYzoyNzUgYnVpbHRpbi90YWcuYzo0MTQKIG1zZ2lkICJyZWFkIG1lc3NhZ2UgZnJvbSBmaWxlIgogbXNnc3RyICLEkeG7jWMgY2jDuiB0aMOtY2ggdOG7qyB04bqtcCB0aW4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MAorIzogYnVpbHRpbi9jb21taXQuYzoxNDk5CiBtc2dpZCAiYXV0aG9yIgogbXNnc3RyICJ0w6FjIGdp4bqjIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5OQogbXNnaWQgIm92ZXJyaWRlIGF1dGhvciBmb3IgY29tbWl0IgogbXNnc3RyICJnaGkgxJHDqCB0w6FjIGdp4bqjIGNobyBjb21taXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MSBidWlsdGluL2djLmM6NTE4CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDAgYnVpbHRpbi9nYy5jOjUzOAogbXNnaWQgImRhdGUiCiBtc2dzdHIgIm5nw6B5IHRow6FuZyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcxCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDAKIG1zZ2lkICJvdmVycmlkZSBkYXRlIGZvciBjb21taXQiCiBtc2dzdHIgImdoaSDEkcOoIG5nw6B5IHRow6FuZyBjaG8gbOG6p24gY2h1eeG7g24gZ2lhbyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcyIGJ1aWx0aW4vbWVyZ2UuYzoyNTkgYnVpbHRpbi9ub3Rlcy5jOjQwOQotIzogYnVpbHRpbi9ub3Rlcy5jOjU3MiBidWlsdGluL3RhZy5jOjM5NQotbXNnaWQgIm1lc3NhZ2UiCi1tc2dzdHIgImNow7ogdGjDrWNoIgotCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzIKLW1zZ2lkICJjb21taXQgbWVzc2FnZSIKLW1zZ3N0ciAiY2jDuiB0aMOtY2ggY+G7p2EgbOG6p24gY2h1eeG7g24gZ2lhbyIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDczIGJ1aWx0aW4vY29tbWl0LmM6MTQ3NCBidWlsdGluL2NvbW1pdC5jOjE0NzUKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NiByZWYtZmlsdGVyLmg6OTIgcGFyc2Utb3B0aW9ucy5oOjI4MAorIzogYnVpbHRpbi9jb21taXQuYzoxNTAyIGJ1aWx0aW4vY29tbWl0LmM6MTUwMyBidWlsdGluL2NvbW1pdC5jOjE1MDQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNSBwYXJzZS1vcHRpb25zLmg6MzI4IHJlZi1maWx0ZXIuaDo5MgogbXNnaWQgImNvbW1pdCIKIG1zZ3N0ciAibOG6p25fY2h1eeG7g25fZ2lhbyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDczCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDIKIG1zZ2lkICJyZXVzZSBhbmQgZWRpdCBtZXNzYWdlIGZyb20gc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAiZMO5bmcgbOG6oWkgY8OhYyBnaGkgY2jDuiB04burIGzhuqduIGNodXnhu4NuIGdpYW8gxJHDoyBjaG8gbmjGsG5nIGPDsyBjaG8gc+G7rWEgY2jhu69hIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMwogbXNnaWQgInJldXNlIG1lc3NhZ2UgZnJvbSBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICJkw7luZyBs4bqhaSBjw6FjIGdoaSBjaMO6IHThu6sgbOG6p24gY2h1eeG7g24gZ2lhbyDEkcOjIGNobyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc1CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDQKIG1zZ2lkICJ1c2UgYXV0b3NxdWFzaCBmb3JtYXR0ZWQgbWVzc2FnZSB0byBmaXh1cCBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICIiCiAiZMO5bmcgZ2hpIGNow7ogY8OzIMSR4buLbmggZOG6oW5nIGF1dG9zcXVhc2ggxJHhu4Mgc+G7rWEgY2jhu69hIGzhuqduIGNodXnhu4NuIGdpYW8gxJHDoyBjaOG7iSByYSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc2CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDUKIG1zZ2lkICJ1c2UgYXV0b3NxdWFzaCBmb3JtYXR0ZWQgbWVzc2FnZSB0byBzcXVhc2ggc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAiIgogImTDuW5nIGzhu51pIG5o4bqvbiBjw7MgxJHhu4tuaCBk4bqhbmcgdOG7sSDEkeG7mW5nIG7DqW4gxJHhu4MgbsOpbiBs4bqhaSBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8gxJHDoyBjaOG7iSAiCiAicmEiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NworIzogYnVpbHRpbi9jb21taXQuYzoxNTA2CiBtc2dpZCAidGhlIGNvbW1pdCBpcyBhdXRob3JlZCBieSBtZSBub3cgKHVzZWQgd2l0aCAtQy8tYy8tLWFtZW5kKSIKIG1zZ3N0ciAiIgogImzhuqduIGNodXnhu4NuIGdpYW8gbmjhuq1uIHTDtGkgbMOgIHTDoWMgZ2nhuqMgKMSRxrDhu6NjIGTDuW5nIHbhu5tpIHTDuXkgY2jhu41uIC1DLy1jLy0tYW1lbmQpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzggYnVpbHRpbi9sb2cuYzoxNTIwIGJ1aWx0aW4vbWVyZ2UuYzoyNzYKLSM6IGJ1aWx0aW4vcHVsbC5jOjE1NSBidWlsdGluL3JldmVydC5jOjEwNgorIzogYnVpbHRpbi9jb21taXQuYzoxNTA3IGJ1aWx0aW4vbG9nLmM6MTYzNCBidWlsdGluL21lcmdlLmM6MjkwCisjOiBidWlsdGluL3B1bGwuYzoxNDQgYnVpbHRpbi9yZXZlcnQuYzoxMTAKIG1zZ2lkICJhZGQgU2lnbmVkLW9mZi1ieToiCiBtc2dzdHIgIihuw6puIGTDuW5nKSB0aMOqbSBkw7JuZyBTaWduZWQtb2ZmLWJ5OiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDc5CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDgKIG1zZ2lkICJ1c2Ugc3BlY2lmaWVkIHRlbXBsYXRlIGZpbGUiCiBtc2dzdHIgInPhu60gZOG7pW5nIHThuq1wIHRpbiBt4bqrdSDEkcOjIGNobyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDgwCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDkKIG1zZ2lkICJmb3JjZSBlZGl0IG9mIGNvbW1pdCIKIG1zZ3N0ciAiw6lwIGJ14buZYyBz4butYSBs4bqnbiBjb21taXQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MQotbXNnaWQgImRlZmF1bHQiCi1tc2dzdHIgIm3hurdjIMSR4buLbmgiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MSBidWlsdGluL3RhZy5jOjQwMQotbXNnaWQgImhvdyB0byBzdHJpcCBzcGFjZXMgYW5kICNjb21tZW50cyBmcm9tIG1lc3NhZ2UiCi1tc2dzdHIgImzDoG0gdGjhur8gbsOgbyDEkeG7gyBj4bqvdCBi4buPIGtob+G6o25nIHRy4bqvbmcgdsOgICNnaGljaMO6IHThu6sgbeG6qXUgdGluIG5o4bqvbiIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDgyCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTEKIG1zZ2lkICJpbmNsdWRlIHN0YXR1cyBpbiBjb21taXQgbWVzc2FnZSB0ZW1wbGF0ZSIKIG1zZ3N0ciAiYmFvIGfhu5NtIGPDoWMgdHLhuqFuZyB0aMOhaSB0cm9uZyBt4bqrdSBnaGkgY2jDuiBjaHV54buDbiBnaWFvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODQgYnVpbHRpbi9tZXJnZS5jOjI3NCBidWlsdGluL3B1bGwuYzoxODUKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0Ci1tc2dpZCAiR1BHIHNpZ24gY29tbWl0IgotbXNnc3RyICJrw70gbOG6p24gY2h1eeG7g24gZ2lhbyBkw7luZyBHUEciCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4NworIzogYnVpbHRpbi9jb21taXQuYzoxNTE2CiBtc2dpZCAiQ29tbWl0IGNvbnRlbnRzIG9wdGlvbnMiCiBtc2dzdHIgIkPDoWMgdMO5eSBu4buZaSBkdW5nIGdoaSBjaMO6IGNvbW1pdCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTcKIG1zZ2lkICJjb21taXQgYWxsIGNoYW5nZWQgZmlsZXMiCiBtc2dzdHIgImNodXnhu4NuIGdpYW8gdOG6pXQgY+G6oyBjw6FjIHThuq1wIHRpbiBjw7MgdGhheSDEkeG7lWkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4OQorIzogYnVpbHRpbi9jb21taXQuYzoxNTE4CiBtc2dpZCAiYWRkIHNwZWNpZmllZCBmaWxlcyB0byBpbmRleCBmb3IgY29tbWl0IgogbXNnc3RyICJ0aMOqbSBjw6FjIHThuq1wIHRpbiDEkcOjIGNo4buJIHJhIHbDoG8gYuG6o25nIG3hu6VjIGzhu6VjIMSR4buDIGNodXnhu4NuIGdpYW8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MAorIzogYnVpbHRpbi9jb21taXQuYzoxNTE5CiBtc2dpZCAiaW50ZXJhY3RpdmVseSBhZGQgZmlsZXMiCiBtc2dzdHIgInRow6ptIGPDoWMgdOG6rXAtdGluIGLhurFuZyB0xrDGoW5nIHTDoWMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MQorIzogYnVpbHRpbi9jb21taXQuYzoxNTIwCiBtc2dpZCAiaW50ZXJhY3RpdmVseSBhZGQgY2hhbmdlcyIKIG1zZ3N0ciAidGjDqm0gY8OhYyB0aGF5IMSR4buVaSBi4bqxbmcgdMawxqFuZyB0w6FjIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMQogbXNnaWQgImNvbW1pdCBvbmx5IHNwZWNpZmllZCBmaWxlcyIKIG1zZ3N0ciAiY2jhu4kgY2h1eeG7g24gZ2lhbyBjw6FjIHThuq1wIHRpbiDEkcOjIGNo4buJIHJhIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMgogbXNnaWQgImJ5cGFzcyBwcmUtY29tbWl0IGFuZCBjb21taXQtbXNnIGhvb2tzIgogbXNnc3RyICJ2w7JuZyBxdWEgbcOzYyAoaG9vaykgcHJlLWNvbW1pdCB2w6AgY29tbWl0LW1zZyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDk0CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjMKIG1zZ2lkICJzaG93IHdoYXQgd291bGQgYmUgY29tbWl0dGVkIgogbXNnc3RyICJoaeG7g24gdGjhu4sgeGVtIGPDoWkgZ8OsIGPDsyB0aOG7gyDEkcaw4bujYyBjaHV54buDbiBnaWFvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MDcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUzNgogbXNnaWQgImFtZW5kIHByZXZpb3VzIGNvbW1pdCIKIG1zZ3N0ciAi4oCcdHUgYuG7leKAnSAoYW1lbmQpIGzhuqduIGNvbW1pdCB0csaw4bubYyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTA4CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MzcKIG1zZ2lkICJieXBhc3MgcG9zdC1yZXdyaXRlIGhvb2siCiBtc2dzdHIgInbDsm5nIHF1YSBtw7NjIChob29rKSBwb3N0LXJld3JpdGUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxMworIzogYnVpbHRpbi9jb21taXQuYzoxNTQ0CiBtc2dpZCAib2sgdG8gcmVjb3JkIGFuIGVtcHR5IGNoYW5nZSIKIG1zZ3N0ciAib2sgxJHhu4MgZ2hpIGzhuqFpIG3hu5l0IHRoYXkgxJHhu5VpIHRy4buRbmcgcuG7l25nIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTU0NgogbXNnaWQgIm9rIHRvIHJlY29yZCBhIGNoYW5nZSB3aXRoIGFuIGVtcHR5IG1lc3NhZ2UiCiBtc2dzdHIgIm9rIMSR4buDIGdoaSBjw6FjIHRoYXkgxJHhu5VpIHbhu5tpIGzhu51pIG5o4bqvbiB0cuG7kW5nIHLhu5duZyIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE2MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29ycnVwdCBNRVJHRV9IRUFEIGZpbGUgKCVzKSIKIG1zZ3N0ciAiVOG6rXAgdGluIE1FUkdFX0hFQUQgc2FpIGjhu49uZyAoJXMpIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1OTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTYyNgogbXNnaWQgImNvdWxkIG5vdCByZWFkIE1FUkdFX01PREUiCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgTUVSR0VfTU9ERSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjE0CisjOiBidWlsdGluL2NvbW1pdC5jOjE2NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgY29tbWl0IG1lc3NhZ2U6ICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIHBo4bqnbiBjaMO6IHRow61jaCAobWVzc2FnZSkgY+G7p2EgbOG6p24gY2h1eeG7g24gZ2lhbzogJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTYyNQorIzogYnVpbHRpbi9jb21taXQuYzoxNjUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFib3J0aW5nIGNvbW1pdCBkdWUgdG8gZW1wdHkgY29tbWl0IG1lc3NhZ2UuXG4iCiBtc2dzdHIgIkLDo2kgYuG7jyB2aeG7h2MgY2h1eeG7g24gZ2lhbyBi4bufaSB2w6wgcGjhuqduIGNow7ogdGjDrWNoIGPhu6dhIG7DsyB0cuG7kW5nIHLhu5duZy5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjMwCisjOiBidWlsdGluL2NvbW1pdC5jOjE2NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmcgY29tbWl0OyB5b3UgZGlkIG5vdCBlZGl0IHRoZSBtZXNzYWdlLlxuIgogbXNnc3RyICIiCiAixJBhbmcgYuG7jyBxdWEgdmnhu4djIGNodXnhu4NuIGdpYW87IGLhuqFuIMSRw6Mga2jDtG5nIGJpw6puIHNv4bqhbiBwaOG6p24gY2jDuiB0aMOtY2ggIgogIihtZXNzYWdlKS5cbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNjY1CisjOiBidWlsdGluL2NvbW1pdC5jOjE2OTEKIG1zZ2lkICIiCiAicmVwb3NpdG9yeSBoYXMgYmVlbiB1cGRhdGVkLCBidXQgdW5hYmxlIHRvIHdyaXRlXG4iCiAibmV3X2luZGV4IGZpbGUuIENoZWNrIHRoYXQgZGlzayBpcyBub3QgZnVsbCBhbmQgcXVvdGEgaXNcbiIKLSJub3QgZXhjZWVkZWQsIGFuZCB0aGVuIFwiZ2l0IHJlc2V0IEhFQURcIiB0byByZWNvdmVyLiIKKyJub3QgZXhjZWVkZWQsIGFuZCB0aGVuIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgOi9cIiB0byByZWNvdmVyLiIKIG1zZ3N0ciAiIgogImtobyBjaOG7qWEgxJHDoyDEkcaw4bujYyBj4bqtcCBuaOG6rXQsIG5oxrBuZyBraMO0bmcgdGjhu4MgZ2hpIHbDoG9cbiIKICJ04bqtcCB0aW4gbmV3X2luZGV4IChi4bqjbmcgbeG7pWMgbOG7pWMgbeG7m2kpLiBIw6N5IGtp4buDbSB0cmEgeGVtIMSRxKlhXG4iCiAiY8OzIGLhu4sgxJHhuqd5IHF1w6EgaGF5IHF1b3RhICho4bqhbiBuZ2jhuqFjaCDEkcSpYSBj4bupbmcpIGLhu4sgdsaw4bujdCBxdcOhLFxuIgotInbDoCBzYXUgxJHDsyBcImdpdCByZXNldCBIRUFEXCIgxJHhu4Mga2jhuq9jIHBo4bulYy4iCisidsOgIHNhdSDEkcOzIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgOi9cIiDEkeG7gyBraOG6r2MgcGjhu6VjLiIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMAotbXNnaWQgImdpdCBjb21taXQtZ3JhcGggWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi1tc2dzdHIgImdpdCBjb21taXQtZ3JhcGggWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTEgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMwotbXNnaWQgImdpdCBjb21taXQtZ3JhcGggcmVhZCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKLW1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCByZWFkIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgotCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTgKLW1zZ2lkICJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKLW1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyOAorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE3CiBtc2dpZCAiIgotImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tYXBwZW5kXSBbLS1yZWFjaGFibGV8LS0iCi0ic3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSIKKyJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1zaGFsbG93XSBbLS1bbm8tXXByb2dyZXNzXSIKIG1zZ3N0ciAiIgotImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tYXBwZW5kXSBbLS1yZWFjaGFibGV8LS0iCi0ic3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSIKKyJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDwvdGjGsC9t4bulYy/EkeG7kWkvdMaw4bujbmc+XSBbLS1zaGFsbG93XSBbLS0iCisiW25vLV1wcm9ncmVzc10iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NDggYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3OAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzIgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxOTAgYnVpbHRpbi9mZXRjaC5jOjE1MwotIzogYnVpbHRpbi9sb2cuYzoxNTQwCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjIKK21zZ2lkICIiCisiZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1hcHBlbmR8LS1zcGxpdF0gWy0tIgorInJlYWNoYWJsZXwtLXN0ZGluLXBhY2tzfC0tc3RkaW4tY29tbWl0c10gWy0tW25vLV1wcm9ncmVzc10gPHNwbGl0IG9wdGlvbnM+IgorbXNnc3RyICIiCisiZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDwvdGjGsC9t4bulYy/EkeG7kWkvdMaw4bujbmc+XSBbLS1hcHBlbmR8LS0iCisic3BsaXRdIFstLXJlYWNoYWJsZXwtLXN0ZGluLXBhY2tzfC0tc3RkaW4tY29tbWl0c10gWy0tW25vLV1wcm9ncmVzc10gPGPDoWMgIgorInTDuXkgY2jhu41uIGNoaWEgdMOhY2g+IgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmaW5kIG9iamVjdCBkaXJlY3RvcnkgbWF0Y2hpbmcgJXMiCittc2dzdHIgImtow7RuZyB0aOG7gyB0w6xtIHRo4bqleSB0aMawIG3hu6VjIMSR4buRaSB0xrDhu6NuZyBraOG7m3AgduG7m2kg4oCcJXPigJ0iCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NjggYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjUKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjEwIGJ1aWx0aW4vZmV0Y2guYzoxNzkgYnVpbHRpbi9sb2cuYzoxNjU3CiBtc2dpZCAiZGlyIgogbXNnc3RyICJ0beG7pWMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NDkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3OQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzMgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxOTEKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NjkgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjYKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MjExCiBtc2dpZCAiVGhlIG9iamVjdCBkaXJlY3RvcnkgdG8gc3RvcmUgdGhlIGdyYXBoIgogbXNnc3RyICJUaMawIG3hu6VjIMSR4buRaSB0xrDhu6NuZyDEkeG7gyBsxrB1IMSR4buTIHRo4buLIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3MQorbXNnaWQgImlmIHRoZSBjb21taXQtZ3JhcGggaXMgc3BsaXQsIG9ubHkgdmVyaWZ5IHRoZSB0aXAgZmlsZSIKK21zZ3N0ciAiIgorIm7hur91IMSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyBi4buLIGNoaWEgY+G6r3QsIHRow6wgY2jhu4kgdGjhuqltIHRyYSB04bqtcCB0aW4gxJHhu4luaCIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo5NCB0L2hlbHBlci90ZXN0LXJlYWQtZ3JhcGguYzoyMworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgb3BlbiBjb21taXQtZ3JhcGggJyVzJyIKK21zZ3N0ciAiS2jDtG5nIHRo4buDIG3hu58gxJHhu5MgdGjhu4sgY2h1eeG7g24gZ2lhbyDigJwlc+KAnSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMjgKIG1zZ2lkICJzdGFydCB3YWxrIGF0IGFsbCByZWZzIgogbXNnc3RyICJi4bqvdCDEkeG6p3UgZGkgY2h1eeG7g24gdOG6oWkgbeG7jWkgdGhhbSBjaGnhur91IgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzAKIG1zZ2lkICJzY2FuIHBhY2staW5kZXhlcyBsaXN0ZWQgYnkgc3RkaW4gZm9yIGNvbW1pdHMiCiBtc2dzdHIgIiIKICJxdcOpdCBkw7MgY8OhYyBt4bulYyBs4bulYyBnw7NpIMSRxrDhu6NjIGxp4buHdCBrw6ogYuG7n2kgxJHhuqd1IHbDoG8gdGnDqnUgY2h14bqpbiBjaG8gY8OhYyBs4bqnbiAiCiAiY2h1eeG7g24gZ2lhbyIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzkKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMyCiBtc2dpZCAic3RhcnQgd2FsayBhdCBjb21taXRzIGxpc3RlZCBieSBzdGRpbiIKIG1zZ3N0ciAiIgogImLhuq90IMSR4bqndSBkaSBjaHV54buDbiB04bqhaSBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8gxJHGsOG7o2MgbGnhu4d0IGvDqiBi4bufaSDEkeG6p3UgdsOgbyB0acOqdSBjaHXhuqluIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0MQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzQKIG1zZ2lkICJpbmNsdWRlIGFsbCBjb21taXRzIGFscmVhZHkgaW4gdGhlIGNvbW1pdC1ncmFwaCBmaWxlIgogbXNnc3RyICIiCi0iYmFvIGfhu5NtIG3hu41pIGzhuqduIGNodXnhu4NuIGdpYW8gxJHDoyBz4bq1biBjw7MgdHJvbmfGsOG7nWkgdOG6rXAgdGluIMSR4buTIHRo4buLIGzhuqduIGNodXnhu4NuIGdpYW8iCisiYmFvIGfhu5NtIG3hu41pIGzhuqduIGNodXnhu4NuIGdpYW8gxJHDoyBz4bq1biBjw7MgdHJvbmfGsOG7nWkgdOG6rXAgdGluIMSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tIgorImdpYW8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTUwCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNworbXNnaWQgImFsbG93IHdyaXRpbmcgYW4gaW5jcmVtZW50YWwgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgImNobyBwaMOpcCBnaGkgbeG7mXQgdOG6rXAgdGluIMSR4buTIGjhu41hIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBs4bubbiBsw6puIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzOSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0MworbXNnaWQgIm1heGltdW0gbnVtYmVyIG9mIGNvbW1pdHMgaW4gYSBub24tYmFzZSBzcGxpdCBjb21taXQtZ3JhcGgiCittc2dzdHIgIiIKKyJz4buRIGzGsOG7o25nIHThu5FpIMSRYSBj4bunYSBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8gdHJvbmcgbeG7mXQgxJHhu5MtdGjhu4stY8OhYy1s4bqnbi1jaHV54buDbi1naWFvICIKKyJjaGlhIGPhuq90IGtow7RuZy1jxqEtc+G7nyIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDEKK21zZ2lkICJtYXhpbXVtIHJhdGlvIGJldHdlZW4gdHdvIGxldmVscyBvZiBhIHNwbGl0IGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAidOG7tyBs4buHIHThu5FpIMSRYSBnaeG7r2EgaGFpIG3hu6ljIGPhu6dhIG3hu5l0IMSR4buTLXRo4buLLWPDoWMtbOG6p24tY2h1eeG7g24tZ2lhbyBjaGlhIGPhuq90IgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE1OQogbXNnaWQgInVzZSBhdCBtb3N0IG9uZSBvZiAtLXJlYWNoYWJsZSwgLS1zdGRpbi1jb21taXRzLCBvciAtLXN0ZGluLXBhY2tzIgogbXNnc3RyICIiCiAia2jDtG5nIHRo4buDIHPhu60gZOG7pW5nIGjGoW4gbeG7mXQgLS1yZWFjaGFibGUsIC0tc3RkaW4tY29tbWl0cywgaGF5IC0tc3RkaW4tcGFja3MiCiAKICM6IGJ1aWx0aW4vY29uZmlnLmM6MTEKIG1zZ2lkICJnaXQgY29uZmlnIFs8b3B0aW9ucz5dIgotbXNnc3RyICJnaXQgY29uZmlnIFs8Y8OhYy10w7l5LWNo4buNbj5dIgorbXNnc3RyICJnaXQgY29uZmlnIFs8Y8OhYyB0w7l5IGNo4buNbj5dIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEwMworIzogYnVpbHRpbi9jb25maWcuYzoxMDQgYnVpbHRpbi9lbnYtLWhlbHBlci5jOjIzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAtLXR5cGUgYXJndW1lbnQsICVzIgogbXNnc3RyICLEkeG7kWkgc+G7kSBraMO0bmcgxJHGsOG7o2MgdGjhu6thIG5o4bqtbiAtLXR5cGUsICVzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjExNQorIzogYnVpbHRpbi9jb25maWcuYzoxMTYKIG1zZ2lkICJvbmx5IG9uZSB0eXBlIGF0IGEgdGltZSIKIG1zZ3N0ciAiY2jhu4kgbeG7mXQga2nhu4N1IG3hu5l0IGzhuqduIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNAorIzogYnVpbHRpbi9jb25maWcuYzoxMjUKIG1zZ2lkICJDb25maWcgZmlsZSBsb2NhdGlvbiIKIG1zZ3N0ciAiVuG7iyB0csOtIHThuq1wIHRpbiBj4bqldSBow6xuaCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI2CiBtc2dpZCAidXNlIGdsb2JhbCBjb25maWcgZmlsZSIKIG1zZ3N0ciAiZMO5bmcgdOG6rXAgdGluIGPhuqV1IGjDrG5oIHRvw6BuIGPhu6VjIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNgorIzogYnVpbHRpbi9jb25maWcuYzoxMjcKIG1zZ2lkICJ1c2Ugc3lzdGVtIGNvbmZpZyBmaWxlIgogbXNnc3RyICJz4butIGThu6VuZyB04bqtcCB0aW4gY+G6pXUgaMOsbmggaOG7hyB0aOG7kW5nIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNworIzogYnVpbHRpbi9jb25maWcuYzoxMjgKIG1zZ2lkICJ1c2UgcmVwb3NpdG9yeSBjb25maWcgZmlsZSIKIG1zZ3N0ciAiZMO5bmcgdOG6rXAgdGluIGPhuqV1IGjDrG5oIGPhu6dhIGtobyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI5CiBtc2dpZCAidXNlIHBlci13b3JrdHJlZSBjb25maWcgZmlsZSIKIG1zZ3N0ciAiZMO5bmcgdOG6rXAgdGluIGPhuqV1IGjDrG5oIHBlci13b3JrdHJlZSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMwCiBtc2dpZCAidXNlIGdpdmVuIGNvbmZpZyBmaWxlIgogbXNnc3RyICJz4butIGThu6VuZyB04bqtcCB0aW4gY+G6pXUgaMOsbmggxJHDoyBjaG8iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTMwCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMQogbXNnaWQgImJsb2ItaWQiCiBtc2dzdHIgImJsb2ItaWQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTMwCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMQogbXNnaWQgInJlYWQgY29uZmlnIGZyb20gZ2l2ZW4gYmxvYiBvYmplY3QiCiBtc2dzdHIgIsSR4buNYyBj4bqldSBow6xuaCB04burIMSR4buRaSB0xrDhu6NuZyBibG9iIMSRw6MgY2hvIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMQorIzogYnVpbHRpbi9jb25maWcuYzoxMzIKIG1zZ2lkICJBY3Rpb24iCiBtc2dzdHIgIkjDoG5oIMSR4buZbmciCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTMyCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMwogbXNnaWQgImdldCB2YWx1ZTogbmFtZSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICJs4bqleSBnacOhLXRy4buLOiB0w6puIFt2YWx1ZS1yZWdleF0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTMzCisjOiBidWlsdGluL2NvbmZpZy5jOjEzNAogbXNnaWQgImdldCBhbGwgdmFsdWVzOiBrZXkgW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAibOG6pXkgdOG6pXQgY+G6oyBnacOhLXRy4buLOiBraMOzYSBbdmFsdWUtcmVnZXhdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNAorIzogYnVpbHRpbi9jb25maWcuYzoxMzUKIG1zZ2lkICJnZXQgdmFsdWVzIGZvciByZWdleHA6IG5hbWUtcmVnZXggW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAibOG6pXkgZ2nDoSB0cuG7iyBjaG8gcmVnZXhwOiBuYW1lLXJlZ2V4IFt2YWx1ZS1yZWdleF0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM1CisjOiBidWlsdGluL2NvbmZpZy5jOjEzNgogbXNnaWQgImdldCB2YWx1ZSBzcGVjaWZpYyBmb3IgdGhlIFVSTDogc2VjdGlvblsudmFyXSBVUkwiCiBtc2dzdHIgImzhuqV5IMSR4bq3YyB04bqjIGdpw6EgdHLhu4sgY2hvIFVSTDogcGjhuqduWy5iaeG6v25dIFVSTCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM3CiBtc2dpZCAicmVwbGFjZSBhbGwgbWF0Y2hpbmcgdmFyaWFibGVzOiBuYW1lIHZhbHVlIFt2YWx1ZV9yZWdleF0iCiBtc2dzdHIgInRoYXkgdGjhur8gdOG6pXQgY+G6oyBjw6FjIGJp4bq/biBraOG7m3AgbeG6q3U6IHTDqm4gZ2nDoS10cuG7iyBbdmFsdWVfcmVnZXhdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNworIzogYnVpbHRpbi9jb25maWcuYzoxMzgKIG1zZ2lkICJhZGQgYSBuZXcgdmFyaWFibGU6IG5hbWUgdmFsdWUiCiBtc2dzdHIgInRow6ptIGJp4bq/biBt4bubaTogdMOqbiBnacOhLXRy4buLIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzOAorIzogYnVpbHRpbi9jb25maWcuYzoxMzkKIG1zZ2lkICJyZW1vdmUgYSB2YXJpYWJsZTogbmFtZSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICJn4buhIGLhu48gYmnhur9uOiB0w6puIFt2YWx1ZS1yZWdleF0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM5CisjOiBidWlsdGluL2NvbmZpZy5jOjE0MAogbXNnaWQgInJlbW92ZSBhbGwgbWF0Y2hlczogbmFtZSBbdmFsdWUtcmVnZXhdIgogbXNnc3RyICJn4buhIGLhu48gbeG7jWkgY8OhaSBraOG7m3A6IHTDqm4gW3ZhbHVlLXJlZ2V4XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQxCiBtc2dpZCAicmVuYW1lIHNlY3Rpb246IG9sZC1uYW1lIG5ldy1uYW1lIgogbXNnc3RyICLEkeG7lWkgdMOqbiBwaOG6p246IHTDqm4tY8WpIHTDqm4tbeG7m2kiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQxCisjOiBidWlsdGluL2NvbmZpZy5jOjE0MgogbXNnaWQgInJlbW92ZSBhIHNlY3Rpb246IG5hbWUiCiBtc2dzdHIgImfhu6EgYuG7jyBwaOG6p246IHTDqm4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQyCisjOiBidWlsdGluL2NvbmZpZy5jOjE0MwogbXNnaWQgImxpc3QgYWxsIgogbXNnc3RyICJsaeG7h3Qga8OqIHThuqV0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0MworIzogYnVpbHRpbi9jb25maWcuYzoxNDQKIG1zZ2lkICJvcGVuIGFuIGVkaXRvciIKIG1zZ3N0ciAibeG7nyBt4buZdCB0csOsbmggYmnDqm4gc2/huqFuIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NAorIzogYnVpbHRpbi9jb25maWcuYzoxNDUKIG1zZ2lkICJmaW5kIHRoZSBjb2xvciBjb25maWd1cmVkOiBzbG90IFtkZWZhdWx0XSIKIG1zZ3N0ciAidMOsbSBj4bqldSBow6xuaCBtw6B1IHPhuq9jOiBzbG90IFtt4bq3YyDEkeG7i25oXSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ2CiBtc2dpZCAiZmluZCB0aGUgY29sb3Igc2V0dGluZzogc2xvdCBbc3Rkb3V0LWlzLXR0eV0iCiBtc2dzdHIgInTDrG0gY8OhYyBjw6BpIMSR4bq3dCB24buBIG3DoHUgc+G6r2M6IHNsb3QgW3N0ZG91dC1sw6AtdHR5XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDYKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ3CiBtc2dpZCAiVHlwZSIKIG1zZ3N0ciAiS2nhu4N1IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0NworIzogYnVpbHRpbi9jb25maWcuYzoxNDggYnVpbHRpbi9lbnYtLWhlbHBlci5jOjM4CiBtc2dpZCAidmFsdWUgaXMgZ2l2ZW4gdGhpcyB0eXBlIgogbXNnc3RyICJnacOhIHRy4buLIMSRxrDhu6NjIMSRxrBhIGtp4buDdSBuw6B5IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0OAorIzogYnVpbHRpbi9jb25maWcuYzoxNDkKIG1zZ2lkICJ2YWx1ZSBpcyBcInRydWVcIiBvciBcImZhbHNlXCIiCiBtc2dzdHIgImdpw6EgdHLhu4sgbMOgIFwidHJ1ZVwiIGhv4bq3YyBcImZhbHNlXCIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ5CisjOiBidWlsdGluL2NvbmZpZy5jOjE1MAogbXNnaWQgInZhbHVlIGlzIGRlY2ltYWwgbnVtYmVyIgogbXNnc3RyICJnacOhIHRy4buLIOG7nyBk4bqhbmcgc+G7kSB0aOG6rXAgcGjDom4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUwCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MQogbXNnaWQgInZhbHVlIGlzIC0tYm9vbCBvciAtLWludCIKIG1zZ3N0ciAiZ2nDoSB0cuG7iyBsw6AgLS1ib29sIGhv4bq3YyAtLWludCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUyCiBtc2dpZCAidmFsdWUgaXMgYSBwYXRoIChmaWxlIG9yIGRpcmVjdG9yeSBuYW1lKSIKIG1zZ3N0ciAiZ2nDoSB0cuG7iyBsw6AgxJHGsOG7nW5nIGThuqtuICh0w6puIHThuq1wIHRpbiBoYXkgdGjGsCBt4bulYykiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUyCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MwogbXNnaWQgInZhbHVlIGlzIGFuIGV4cGlyeSBkYXRlIgogbXNnc3RyICJnacOhIHRy4buLIGzDoCBt4buZdCBuZ8OgeSBo4bq/dCBo4bqhbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU0CiBtc2dpZCAiT3RoZXIiCiBtc2dzdHIgIktow6FjIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NAorIzogYnVpbHRpbi9jb25maWcuYzoxNTUKIG1zZ2lkICJ0ZXJtaW5hdGUgdmFsdWVzIHdpdGggTlVMIGJ5dGUiCiBtc2dzdHIgImNo4bqlbSBk4bupdCBnacOhIHRy4buLIHbhu5tpIGJ5dGUgTlVMIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NQorIzogYnVpbHRpbi9jb25maWcuYzoxNTYKIG1zZ2lkICJzaG93IHZhcmlhYmxlIG5hbWVzIG9ubHkiCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyBjw6FjIHTDqm4gYmnhur9uIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NgorIzogYnVpbHRpbi9jb25maWcuYzoxNTcKIG1zZ2lkICJyZXNwZWN0IGluY2x1ZGUgZGlyZWN0aXZlcyBvbiBsb29rdXAiCiBtc2dzdHIgInTDtG4gdHLhu41uZyBr4buDIGPDoCBjw6FjIGjGsOG7m25nIHRyb25nIHTDrG0ga2nhur9tIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NworIzogYnVpbHRpbi9jb25maWcuYzoxNTgKIG1zZ2lkICJzaG93IG9yaWdpbiBvZiBjb25maWcgKGZpbGUsIHN0YW5kYXJkIGlucHV0LCBibG9iLCBjb21tYW5kIGxpbmUpIgogbXNnc3RyICIiCiAiaGnhu4NuIHRo4buLIG5ndXnDqm4gZ+G7kWMgY+G7p2EgY+G6pXUgaMOsbmggKHThuq1wIHRpbiwgxJHhuqd1IHbDoG8gdGnDqnUgY2h14bqpbiwgYmxvYiwgZMOybmcgIgogImzhu4duaCkiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU4CisjOiBidWlsdGluL2NvbmZpZy5jOjE1OQorbXNnaWQgInNob3cgc2NvcGUgb2YgY29uZmlnICh3b3JrdHJlZSwgbG9jYWwsIGdsb2JhbCwgc3lzdGVtLCBjb21tYW5kKSIKK21zZ3N0ciAiIgorImhp4buDbiB0aOG7iyBwaOG6oW0gdmkgY+G7p2EgY+G6pXUgaMOsbmggKGPDonkgbMOgbSB2aeG7h2MsIGPhu6VjIGLhu5ksIHRvw6BuIGPhuqd1LCBo4buHIHRo4buRbmcsICIKKyJs4buHbmgpIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE2MCBidWlsdGluL2Vudi0taGVscGVyLmM6NDAKIG1zZ2lkICJ2YWx1ZSIKIG1zZ3N0ciAiZ2nDoSB0cuG7iyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTYwCiBtc2dpZCAid2l0aCAtLWdldCwgdXNlIGRlZmF1bHQgdmFsdWUgd2hlbiBtaXNzaW5nIGVudHJ5IgogbXNnc3RyICJ24bubaSAtLWdldCwgZMO5bmcgZ2nDoSB0cuG7iyBt4bq3YyDEkeG7i25oIGtoaSB0aGnhur91IG3hu6VjIHRpbiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNzEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIndyb25nIG51bWJlciBvZiBhcmd1bWVudHMsIHNob3VsZCBiZSAlZCIKIG1zZ3N0ciAic2FpIHPhu5EgbMaw4bujbmcgdGhhbSBz4buRLCBwaOG6o2kgbMOgICVkIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE3MworIzogYnVpbHRpbi9jb25maWcuYzoxNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAid3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cywgc2hvdWxkIGJlIGZyb20gJWQgdG8gJWQiCiBtc2dzdHIgInNhaSBz4buRIGzGsOG7o25nIHRoYW0gc+G7kSwgcGjhuqNpIHThu6sgJWQgxJHhur9uICVkIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjMwNworIzogYnVpbHRpbi9jb25maWcuYzozMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBrZXkgcGF0dGVybjogJXMiCiBtc2dzdHIgIm3huqt1IGtow7NhIGtow7RuZyBo4bujcCBs4buHOiAlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzozNDMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MzYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBmb3JtYXQgZGVmYXVsdCBjb25maWcgdmFsdWU6ICVzIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhu4tuaCBk4bqhbmcgZ2nDoSB0cuG7iyBj4bqldSBow6xuaCBt4bq3YyDEkeG7i25oOiAlcyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0MDAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDE3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBwYXJzZSBjb2xvciAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggbcOgdSDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0NDIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDU5CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIGRlZmF1bHQgY29sb3IgdmFsdWUiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBwaMOibiB0w61jaCBnacOhIHRy4buLIG3DoHUgbeG6t2MgxJHhu4tuaCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo0OTUgYnVpbHRpbi9jb25maWcuYzo3NDEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTEyIGJ1aWx0aW4vY29uZmlnLmM6NzY4CiBtc2dpZCAibm90IGluIGEgZ2l0IGRpcmVjdG9yeSIKIG1zZ3N0ciAia2jDtG5nIHRyb25nIHRoxrAgbeG7pWMgZ2l0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjQ5OAorIzogYnVpbHRpbi9jb25maWcuYzo1MTUKIG1zZ2lkICJ3cml0aW5nIHRvIHN0ZGluIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgInZp4buHYyBnaGkgcmEgxJHhuqd1IHJhIHRpw6p1IGNodeG6qW4gbMOgIGtow7RuZyDEkcaw4bujYyBo4buXIHRy4bujIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjUwMQorIzogYnVpbHRpbi9jb25maWcuYzo1MTgKIG1zZ2lkICJ3cml0aW5nIGNvbmZpZyBibG9icyBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJraMO0bmcgaOG7lyB0cuG7oyBnaGkgY+G6pXUgaMOsbmggY8OhYyBibG9iIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjU4NgorIzogYnVpbHRpbi9jb25maWcuYzo2MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiMgVGhpcyBpcyBHaXQncyBwZXItdXNlciBjb25maWd1cmF0aW9uIGZpbGUuXG4iCkBAIC0xMDM3MSwyMyArMTMxODIsMjMgQEAKICIjXHRuYW1lID0gJXNcbiIKICIjXHRlbWFpbCA9ICVzXG4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjEwCisjOiBidWlsdGluL2NvbmZpZy5jOjYyNwogbXNnaWQgIm9ubHkgb25lIGNvbmZpZyBmaWxlIGF0IGEgdGltZSIKIG1zZ3N0ciAiY2jhu4kgbeG7mXQgdOG6rXAgdGluIGPhuqV1IGjDrG5oIG3hu5l0IGzhuqduIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYxNQorIzogYnVpbHRpbi9jb25maWcuYzo2MzIKIG1zZ2lkICItLWxvY2FsIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0tbG9jYWwgY2jhu4kgY8OzIHRo4buDIMSRxrDhu6NjIGTDuW5nIGLDqm4gdHJvbmcgbeG7mXQga2hvIGdpdCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MTgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjM1CiBtc2dpZCAiLS1ibG9iIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0tYmxvYiBjaOG7iSBjw7MgdGjhu4MgxJHGsOG7o2MgZMO5bmcgYsOqbiB0cm9uZyBt4buZdCBraG8gZ2l0IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYzNworIzogYnVpbHRpbi9jb25maWcuYzo2NTUKIG1zZ2lkICIkSE9NRSBub3Qgc2V0IgogbXNnc3RyICJDaMawYSDEkeG6t3QgYmnhur9uIG3DtGkgdHLGsOG7nW5nIEhPTUUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjU3CisjOiBidWlsdGluL2NvbmZpZy5jOjY3OQogbXNnaWQgIiIKICItLXdvcmt0cmVlIGNhbm5vdCBiZSB1c2VkIHdpdGggbXVsdGlwbGUgd29ya2luZyB0cmVlcyB1bmxlc3MgdGhlIGNvbmZpZ1xuIgogImV4dGVuc2lvbiB3b3JrdHJlZUNvbmZpZyBpcyBlbmFibGVkLiBQbGVhc2UgcmVhZCBcIkNPTkZJR1VSQVRJT04gRklMRVwiXG4iCkBAIC0xMDM5NywxOSArMTMyMDgsMTkgQEAKICJ3b3JrdHJlZUNvbmZpZyDEkcaw4bujYyBi4bqtdC4gVnVpIGzDsm5nIMSR4buNYyBwaOG6p24gXCJDT05GSUdVUkFUSU9OIEZJTEVcIlxuIgogInRyb25nIFwiZ2l0IGhlbHAgd29ya3RyZWVcIiDEkeG7gyBiaeG6v3QgdGjDqm0gY2hpIHRp4bq/dCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2ODcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzE0CiBtc2dpZCAiLS1nZXQtY29sb3IgYW5kIHZhcmlhYmxlIHR5cGUgYXJlIGluY29oZXJlbnQiCiBtc2dzdHIgIi0tZ2V0LWNvbG9yIHbDoCBraeG7g3UgYmnhur9uIGzDoCBraMO0bmcgbeG6oWNoIGzhuqFjIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjY5MgorIzogYnVpbHRpbi9jb25maWcuYzo3MTkKIG1zZ2lkICJvbmx5IG9uZSBhY3Rpb24gYXQgYSB0aW1lIgogbXNnc3RyICJjaOG7iSBt4buZdCB0aGFvIHTDoWMgbeG7l2kgbOG6p24iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzA1CisjOiBidWlsdGluL2NvbmZpZy5jOjczMgogbXNnaWQgIi0tbmFtZS1vbmx5IGlzIG9ubHkgYXBwbGljYWJsZSB0byAtLWxpc3Qgb3IgLS1nZXQtcmVnZXhwIgogbXNnc3RyICItLW5hbWUtb25seSBjaOG7iSDEkcaw4bujYyDDoXAgZOG7pW5nIGNobyAtLWxpc3QgaG/hurdjIC0tZ2V0LXJlZ2V4cCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MTEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzM4CiBtc2dpZCAiIgogIi0tc2hvdy1vcmlnaW4gaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCwgYW5kIC0tIgogImxpc3QiCkBAIC0xMDQxNywzMyArMTMyMjgsMzMgQEAKICItLXNob3ctb3JpZ2luIGNo4buJIMSRxrDhu6NjIMOhcCBk4bulbmcgY2hvIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCwgaG/hurdjIC0tIgogImxpc3QiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzE3CisjOiBidWlsdGluL2NvbmZpZy5jOjc0NAogbXNnaWQgIi0tZGVmYXVsdCBpcyBvbmx5IGFwcGxpY2FibGUgdG8gLS1nZXQiCiBtc2dzdHIgIi0tZGVmYXVsdCBjaOG7iSDEkcaw4bujYyDDoXAgZOG7pW5nIGNobyAtLWdldCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MzAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIGNvbmZpZyBmaWxlICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgdOG6rXAgdGluIGPhuqV1IGjDrG5oIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjczMworIzogYnVpbHRpbi9jb25maWcuYzo3NjAKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIGNvbmZpZyBmaWxlKHMpIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgeOG7rSBsw70gY8OhYyB04bqtcCB0aW4gY+G6pXUgaMOsbmgiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzQzCisjOiBidWlsdGluL2NvbmZpZy5jOjc3MAogbXNnaWQgImVkaXRpbmcgc3RkaW4gaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAic+G7rWEgY2jhu69hIMSR4bqndSByYSB0acOqdSBjaHXhuqluIGzDoCBraMO0bmcgxJHGsOG7o2MgaOG7lyB0cuG7oyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3NDUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzcyCiBtc2dpZCAiZWRpdGluZyBibG9icyBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICJ2aeG7h2Mgc+G7rWEgY2jhu69hIGPDoWMgYmxvYiBsw6Aga2jDtG5nIMSRxrDhu6NjIGjhu5cgdHLhu6MiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzU5CisjOiBidWlsdGluL2NvbmZpZy5jOjc4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY3JlYXRlIGNvbmZpZ3VyYXRpb24gZmlsZSAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHThuqFvIHThuq1wIHRpbiBj4bqldSBow6xuaCDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3NzIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6Nzk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjYW5ub3Qgb3ZlcndyaXRlIG11bHRpcGxlIHZhbHVlcyB3aXRoIGEgc2luZ2xlIHZhbHVlXG4iCkBAIC0xMDQ1Miw3ICsxMzI2Myw3IEBACiAia2jDtG5nIHRo4buDIGdoaSDEkcOoIG5oaeG7gXUgZ2nDoSB0cuG7iyB24bubaSBt4buZdCBnacOhIHRy4buLIMSRxqFuXG4iCiAiICAgICAgRMO5bmcgbeG7mXQgYmnhu4N1IHRo4bupYyBjaMOtbmggcXV5LCAtLWFkZCBoYXkgLS1yZXBsYWNlLWFsbCDEkeG7gyB0aGF5IMSR4buVaSAlcy4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6ODQ2IGJ1aWx0aW4vY29uZmlnLmM6ODU3CisjOiBidWlsdGluL2NvbmZpZy5jOjg3MyBidWlsdGluL2NvbmZpZy5jOjg4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIHNlY3Rpb246ICVzIgogbXNnc3RyICJraMO0bmcgY8OzIMSRb+G6oW46ICVzIgpAQCAtMTA0NjcsMTUgKzEzMjc4LDE1IEBACiAKICM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNgogbXNnaWQgImdpdCBkZXNjcmliZSBbPG9wdGlvbnM+XSBbPGNvbW1pdC1pc2g+Li4uXSIKLW1zZ3N0ciAiZ2l0IGRlc2NyaWJlIFs8Y8OhYy10w7l5LWNo4buNbj5dIDxjb21taXQtaXNoPioiCittc2dzdHIgImdpdCBkZXNjcmliZSBbPGPDoWMgdMO5eSBjaOG7jW4+XSA8Y29tbWl0LWlzaD4qIgogCiAjOiBidWlsdGluL2Rlc2NyaWJlLmM6MjcKIG1zZ2lkICJnaXQgZGVzY3JpYmUgWzxvcHRpb25zPl0gLS1kaXJ0eSIKLW1zZ3N0ciAiZ2l0IGRlc2NyaWJlIFs8Y8OhYy10w7l5LWNo4buNbj5dIC0tZGlydHkiCittc2dzdHIgImdpdCBkZXNjcmliZSBbPGPDoWMgdMO5eSBjaOG7jW4+XSAtLWRpcnR5IgogCiAjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjIKIG1zZ2lkICJoZWFkIgotbXNnc3RyICJwaMOtYSB0csaw4bubYyAiCittc2dzdHIgInBow61hIHRyxrDhu5tjIgogCiAjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjIKIG1zZ2lkICJsaWdodHdlaWdodCIKQEAgLTEwNDg1LDM3ICsxMzI5NiwzNyBAQAogbXNnaWQgImFubm90YXRlZCIKIG1zZ3N0ciAiY8OzIGRp4buFbiBnaeG6o2kiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNzIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYW5ub3RhdGVkIHRhZyAlcyBub3QgYXZhaWxhYmxlIgogbXNnc3RyICJ0aOG6uyDEkcOjIMSRxrDhu6NjIGdoaSBjaMO6ICVzIGtow7RuZyBz4bq1biDEkeG7gyBkw7luZyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3NgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJhbm5vdGF0ZWQgdGFnICVzIGhhcyBubyBlbWJlZGRlZCBuYW1lIgogbXNnc3RyICJ0aOG6uyDEkcaw4bujYyBjaMO6IGdp4bqjaSAlcyBraMO0bmcgY8OzIHTDqm4gbmjDum5nIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIGlzIHJlYWxseSAnJXMnIGhlcmUiCiBtc2dzdHIgInRo4bq7IOKAnCVz4oCdIMSRw6MgdGjhu7FjIHPhu7Eg4bufIMSRw6J5IOKAnCVz4oCdIHLhu5NpIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MzIyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHRhZyBleGFjdGx5IG1hdGNoZXMgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIGPDsyB0aOG6uyBuw6BvIGto4bubcCBjaMOtbmggeMOhYyB24bubaSDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBleGFjdCBtYXRjaCBvbiByZWZzIG9yIHRhZ3MsIHNlYXJjaGluZyB0byBkZXNjcmliZVxuIgogbXNnc3RyICJLaMO0bmcgY8OzIHRoYW0gY2hp4bq/dSBoYXkgdGjhursga2jhu5twIMSRw7puZywgxJFhbmcgdMOsbSBraeG6v20gbcO0IHThuqNcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjM3OAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjM5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmaW5pc2hlZCBzZWFyY2ggYXQgJXNcbiIKIG1zZ3N0ciAidmnhu4djIHTDrG0ga2nhur9tIMSRw6Mga+G6v3QgdGjDumMgdOG6oWkgJXNcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQwNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQyMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gYW5ub3RhdGVkIHRhZ3MgY2FuIGRlc2NyaWJlICclcycuXG4iCkBAIC0xMDUyNCw3ICsxMzMzNSw3IEBACiAiS2jDtG5nIGPDsyB0aOG6uyDEkcaw4bujYyBjaMO6IGdp4bqjaSBuw6BvIMSRxrDhu6NjIG3DtCB04bqjIGzDoCDigJwlc+KAnS5cbiIKICJUdXkgbmhpw6puLCDhu58gxJHDonkgY8OzIG5o4buvbmcgdGjhursga2jDtG5nIMSRxrDhu6NjIGNow7ogZ2nhuqNpOiBow6N5IHRo4butIC0tdGFncy4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MDgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vIHRhZ3MgY2FuIGRlc2NyaWJlICclcycuXG4iCkBAIC0xMDUzMywxMiArMTMzNDQsMTIgQEAKICJLaMO0bmcgY8OzIHRo4bq7IGPDsyB0aOG7gyBtw7QgdOG6oyDigJwlc+KAnS5cbiIKICJIw6N5IHRo4butIC0tYWx3YXlzLCBob+G6t2MgdOG6oW8gbeG7mXQgc+G7kSB0aOG6uy4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MzgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJhdmVyc2VkICVsdSBjb21taXRzXG4iCiBtc2dzdHIgIsSRw6MgeHV5w6puICVsdSBxdWEgbOG6p24gY2h1eeG7g24gZ2lhb1xuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDQxCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJtb3JlIHRoYW4gJWkgdGFncyBmb3VuZDsgbGlzdGVkICVpIG1vc3QgcmVjZW50XG4iCkBAIC0xMDU0NywxMTggKzEzMzU4LDExOCBAQAogInTDrG0gdGjhuqV5IG5oaeG7gXUgaMahbiAlaSB0aOG6uzsgxJHDoyBsaeG7h3Qga8OqICVpIGPDoWkgZ+G6p25cbiIKICLEkcOieSBuaOG6pXQgYuG7jyDEkWkgdMOsbSBraeG6v20gdOG6oWkgJXNcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUwOQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJkZXNjcmliZSAlc1xuIgogbXNnc3RyICJtw7QgdOG6oyAlc1xuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTEyIGJ1aWx0aW4vbG9nLmM6NTEzCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIG9iamVjdCBuYW1lICVzIgogbXNnc3RyICJLaMO0bmcgcGjhuqNpIHTDqm4gxJHhu5FpIHTGsOG7o25nICVzIGjhu6NwIGzhu4ciCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MjAKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgbmVpdGhlciBhIGNvbW1pdCBub3IgYmxvYiIKIG1zZ3N0ciAiJXMga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgbOG6p24gY29tbWl0IGPFqW5nIGtow7RuZyBwaOG6o2kgYmxvYiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MQogbXNnaWQgImZpbmQgdGhlIHRhZyB0aGF0IGNvbWVzIGFmdGVyIHRoZSBjb21taXQiCiBtc2dzdHIgInTDrG0gY8OhYyB0aOG6uyBtw6AgbsOzIMSR4bq/biB0csaw4bubYyBs4bqnbiBjaHV54buDbiBnaWFvIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM1CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUyCiBtc2dpZCAiZGVidWcgc2VhcmNoIHN0cmF0ZWd5IG9uIHN0ZGVyciIKIG1zZ3N0ciAiY2hp4bq/biBsxrDhu6NjIHTDrG0ga2nhur9tIGfhu6EgbOG7l2kgdHLDqm4gxJHhuqd1IHJhIGzhu5dpIGNodeG6qW4gc3RkZXJyIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM2CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUzCiBtc2dpZCAidXNlIGFueSByZWYiCiBtc2dzdHIgImTDuW5nIHJlZiBi4bqldCBr4buzIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU0CiBtc2dpZCAidXNlIGFueSB0YWcsIGV2ZW4gdW5hbm5vdGF0ZWQiCiBtc2dzdHIgImTDuW5nIHRo4bq7IGLhuqV0IGvhu7MsIGPhuqMga2hpIOKAnHVuYW5ub3RhdGVk4oCdIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU1CiBtc2dpZCAiYWx3YXlzIHVzZSBsb25nIGZvcm1hdCIKIG1zZ3N0ciAibHXDtG4gZMO5bmcgxJHhu4tuaCBk4bqhbmcgZMOgaSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NgogbXNnaWQgIm9ubHkgZm9sbG93IGZpcnN0IHBhcmVudCIKIG1zZ3N0ciAiY2jhu4kgdGhlbyBjaGEgbeG6uSDEkeG6p3UgdGnDqm4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTkKIG1zZ2lkICJvbmx5IG91dHB1dCBleGFjdCBtYXRjaGVzIgogbXNnc3RyICJjaOG7iSB4deG6pXQgbmjhu69uZyBnw6wga2jhu5twIGNow61uaCB4w6FjIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTYxCiBtc2dpZCAiY29uc2lkZXIgPG4+IG1vc3QgcmVjZW50IHRhZ3MgKGRlZmF1bHQ6IDEwKSIKIG1zZ3N0ciAiY29pIG5oxrAgPG4+IHRo4bq7IGfhuqduIMSRw6J5IG5o4bqldCAobeG6t2MgxJHhu4tuaDogMTApIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ2CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTYzCiBtc2dpZCAib25seSBjb25zaWRlciB0YWdzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKIG1zZ3N0ciAiY2jhu4kgY8OibiBuaOG6r2MgxJHhur9uIG5o4buvbmcgdGjhursga2jhu5twIHbhu5tpIDxt4bqrdT4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjUKIG1zZ2lkICJkbyBub3QgY29uc2lkZXIgdGFncyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgImtow7RuZyBjb2kgcuG6sW5nIGPDoWMgdGjhursga2jhu5twIHbhu5tpIDxt4bqrdT4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTAgYnVpbHRpbi9uYW1lLXJldi5jOjQyNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2NyBidWlsdGluL25hbWUtcmV2LmM6NTM1CiBtc2dpZCAic2hvdyBhYmJyZXZpYXRlZCBjb21taXQgb2JqZWN0IGFzIGZhbGxiYWNrIgogbXNnc3RyICJoaeG7g24gdGjhu4sgxJHhu5FpIHTGsOG7o25nIGNodXnhu4NuIGdpYW8gduG6r24gdOG6r3QgbmjGsCBsw6AgZmFsbGJhY2siCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTEgYnVpbHRpbi9kZXNjcmliZS5jOjU1NAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2OCBidWlsdGluL2Rlc2NyaWJlLmM6NTcxCiBtc2dpZCAibWFyayIKIG1zZ3N0ciAiZOG6pXUiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjkKIG1zZ2lkICJhcHBlbmQgPG1hcms+IG9uIGRpcnR5IHdvcmtpbmcgdHJlZSAoZGVmYXVsdDogXCItZGlydHlcIikiCiBtc2dzdHIgInRow6ptIDxk4bqldT4gdHLDqm4gY8OieSB0aMawIG3hu6VjIGzDoG0gdmnhu4djIGLhuqluICht4bq3YyDEkeG7i25oIFwiLWRpcnR5XCIpIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU1CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTcyCiBtc2dpZCAiYXBwZW5kIDxtYXJrPiBvbiBicm9rZW4gd29ya2luZyB0cmVlIChkZWZhdWx0OiBcIi1icm9rZW5cIikiCiBtc2dzdHIgInRow6ptIDxk4bqldT4gdHLDqm4gY8OieSB0aMawIG3hu6VjIGzDoG0gdmnhu4djIGLhu4sgaOG7j25nICht4bq3YyDEkeG7i25oIFwiLWJyb2tlblwiKSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU3MworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU5MAogbXNnaWQgIi0tbG9uZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFiYnJldj0wIgogbXNnc3RyICItLWxvbmcgbMOgIHh1bmcga2jhuq9jIHbhu5tpIHTDuXkgY2jhu41uIC0tYWJicmV2PTAiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MDIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MTkKIG1zZ2lkICJObyBuYW1lcyBmb3VuZCwgY2Fubm90IGRlc2NyaWJlIGFueXRoaW5nLiIKIG1zZ3N0ciAiS2jDtG5nIHTDrG0gdGjhuqV5IGPDoWMgdMOqbiwga2jDtG5nIHRo4buDIG3DtCB04bqjIGfDrCBj4bqjLiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjY1MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjY3MAogbXNnaWQgIi0tZGlydHkgaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgogbXNnc3RyICItLWRpcnR5IGzDoCB4dW5nIGto4bqvYyB24bubaSBjw6FjIHTDuXkgY2jhu41uIGNvbW1pdC1pc2giCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NTQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2NzIKIG1zZ2lkICItLWJyb2tlbiBpcyBpbmNvbXBhdGlibGUgd2l0aCBjb21taXQtaXNoZXMiCiBtc2dzdHIgIi0tYnJva2VuIGzDoCB4dW5nIGto4bqvYyB24bubaSBjb21taXQtaXNoZXMiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjgzCisjOiBidWlsdGluL2RpZmYuYzo4NAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiBub3QgYSByZWd1bGFyIGZpbGUgb3Igc3ltbGluayIKIG1zZ3N0ciAi4oCcJXPigJ06IGtow7RuZyBwaOG6o2kgdOG6rXAgdGluIGLDrG5oIHRoxrDhu51uZyBoYXkgbGnDqm4ga+G6v3QgbeG7gW0iCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjIzNAorIzogYnVpbHRpbi9kaWZmLmM6MjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgb3B0aW9uOiAlcyIKIG1zZ3N0ciAidMO5eSBjaOG7jW4ga2jDtG5nIGjhu6NwIGzhu4c6ICVzIgogCi0jOiBidWlsdGluL2RpZmYuYzozNjMKKyM6IGJ1aWx0aW4vZGlmZi5jOjM1MAogbXNnaWQgIk5vdCBhIGdpdCByZXBvc2l0b3J5IgogbXNnc3RyICJLaMO0bmcgcGjhuqNpIGzDoCBraG8gZ2l0IgogCi0jOiBidWlsdGluL2RpZmYuYzo0MDcKKyM6IGJ1aWx0aW4vZGlmZi5jOjM5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9iamVjdCAnJXMnIGdpdmVuLiIKIG1zZ3N0ciAixJHhu5FpIHTGsOG7o25nIMSRw6MgY2hvIOKAnCVz4oCdIGtow7RuZyBo4bujcCBs4buHLiIKIAotIzogYnVpbHRpbi9kaWZmLmM6NDE2CisjOiBidWlsdGluL2RpZmYuYzo0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9yZSB0aGFuIHR3byBibG9icyBnaXZlbjogJyVzJyIKIG1zZ3N0ciAixJHDoyBjaG8gbmhp4buBdSBoxqFuIGhhaSDEkeG7kWkgdMaw4bujbmcgYmxvYjog4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjQyMQorIzogYnVpbHRpbi9kaWZmLmM6NDA4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuaGFuZGxlZCBvYmplY3QgJyVzJyBnaXZlbi4iCiBtc2dzdHIgIsSRw6MgY2hvIMSR4buRaSB0xrDhu6NuZyBraMO0bmcgdGjhu4MgbuG6r20gZ2nhu68g4oCcJXPigJ0uIgpAQCAtMTA2NjYsOCArMTM0NzcsOCBAQAogIzogYnVpbHRpbi9kaWZmdG9vbC5jOjMwCiBtc2dpZCAiZ2l0IGRpZmZ0b29sIFs8b3B0aW9ucz5dIFs8Y29tbWl0PiBbPGNvbW1pdD5dXSBbLS1dIFs8cGF0aD4uLi5dIgogbXNnc3RyICIiCi0iZ2l0IGRpZmZ0b29sIFs8Y8OhYy10w7l5LWNo4buNbj5dIFs8bOG6p25fY2h1eeG7g25fZ2lhbz4gWzxs4bqnbl9jaHV54buDbl9naWFvPl1dIFstLV0gIgotIjzEkcaw4budbmctZOG6q24+4oCmXSIKKyJnaXQgZGlmZnRvb2wgWzxjw6FjIHTDuXkgY2jhu41uPl0gWzxs4bqnbl9jaHV54buDbl9naWFvPiBbPGzhuqduX2NodXnhu4NuX2dpYW8+XV0gWy0tXSA8LyIKKyLEkcaw4budbmcvZOG6q24+4oCmXSIKIAogIzogYnVpbHRpbi9kaWZmdG9vbC5jOjI2MAogIywgYy1mb3JtYXQKQEAgLTEwNjg3LDcgKzEzNDk4LDcgQEAKICM6IGJ1aWx0aW4vZGlmZnRvb2wuYzozMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgb2JqZWN0ICVzIGZvciBzeW1saW5rICVzIgotbXNnc3RyICJLaMO0bmcgdGjhu4MgxJHhu41jIMSR4buRaSB0xrDhu6NuZyAlcyBjaG8gbGnDqm4ga+G6v3QgbeG7gW0gJXMiCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgxJHhu5FpIHTGsOG7o25nICVzIGNobyBsacOqbiBr4bq/dCBt4buBbSAlcyIKIAogIzogYnVpbHRpbi9kaWZmdG9vbC5jOjQxMwogbXNnaWQgIiIKQEAgLTEwNjk3LDUzICsxMzUwOCw1MyBAQAogImPDoWMgxJHhu4tuaCBk4bqhbmcgZGlmZiB04buVIGjhu6NwKOKAnC1j4oCdIHbDoCDigJwtLWNj4oCdKSBjaMawYSDEkcaw4bujYyBo4buXIHRy4bujIHRyb25nXG4iCiAiY2jhur8gxJHhu5kgZGlmZiB0aMawIG3hu6VjKOKAnC1k4oCdIHbDoCDigJwtLWRpci1kaWZm4oCdKS4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzMKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYm90aCBmaWxlcyBtb2RpZmllZDogJyVzJyBhbmQgJyVzJy4iCiBtc2dzdHIgImPhuqMgaGFpIHThuq1wIHRpbiDEkcOjIGLhu4sgc+G7rWE6IOKAnCVz4oCdIHbDoCDigJwlc+KAnS4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzUKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzYKIG1zZ2lkICJ3b3JraW5nIHRyZWUgZmlsZSBoYXMgYmVlbiBsZWZ0LiIKIG1zZ3N0ciAiY8OieSBsw6BtIHZp4buHYyDhu58gYsOqbiB0csOhaS4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDYKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAidGVtcG9yYXJ5IGZpbGVzIGV4aXN0IGluICclcycuIgogbXNnc3RyICJjw6FjIHThuq1wIHRpbiB04bqhbSDEkcOjIHPhurVuIGPDsyB0cm9uZyDigJwlc+KAnS4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDcKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDgKIG1zZ2lkICJ5b3UgbWF5IHdhbnQgdG8gY2xlYW51cCBvciByZWNvdmVyIHRoZXNlLiIKLW1zZ3N0ciAiYuG6oW4gY8OzIGzhur0gbXXhu5FuIGThu41uIGThurlwIGhheSAiCittc2dzdHIgImLhuqFuIGPDsyBs4bq9IG114buRbiBk4buNbiBk4bq5cCBoYXkgcGjhu6VjIGjhu5NpIOG7nyDEkcOieS4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTYKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTcKIG1zZ2lkICJ1c2UgYGRpZmYuZ3VpdG9vbGAgaW5zdGVhZCBvZiBgZGlmZi50b29sYCIKIG1zZ3N0ciAiZMO5bmcg4oCcZGlmZi5ndWl0b29s4oCcIHRoYXkgdsOsIGTDuW5nIOKAnGRpZmYudG9vbOKAnCIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjY5OQogbXNnaWQgInBlcmZvcm0gYSBmdWxsLWRpcmVjdG9yeSBkaWZmIgogbXNnc3RyICJ0aOG7sWMgaGnhu4duIG3hu5l0IGRpZmYgdG/DoG4gdGjGsCBt4bulYyIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwMAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwMQogbXNnaWQgImRvIG5vdCBwcm9tcHQgYmVmb3JlIGxhdW5jaGluZyBhIGRpZmYgdG9vbCIKIG1zZ3N0ciAixJHhu6tuZyBuaOG6r2Mga2hpIGto4bufaSBjaOG6oXkgY8O0bmcgY+G7pSBkaWZmIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzA1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzA2CiBtc2dpZCAidXNlIHN5bWxpbmtzIGluIGRpci1kaWZmIG1vZGUiCiBtc2dzdHIgImTDuW5nIGxpw6puIGvhur90IG3hu4FtIHRyb25nIGRpZmYtdGjGsC1t4bulYyIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNwogbXNnaWQgInRvb2wiCiBtc2dzdHIgImPDtG5nIGPhu6UiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDcKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDgKIG1zZ2lkICJ1c2UgdGhlIHNwZWNpZmllZCBkaWZmIHRvb2wiCiBtc2dzdHIgImTDuW5nIGPDtG5nIGPhu6UgZGlmZiDEkcOjIGNobyIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOQorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxMAogbXNnaWQgInByaW50IGEgbGlzdCBvZiBkaWZmIHRvb2xzIHRoYXQgbWF5IGJlIHVzZWQgd2l0aCBgLS10b29sYCIKIG1zZ3N0ciAiaW4gcmEgZGFuaCBzw6FjaCBjw6FjIGPDtG5nIGPhu6UgZGlmIGPDoWkgbcOgIGPDsyB0aOG6uyBkw7luZyB24bubaSDigJwtLXRvb2zigJwiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTIKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTMKIG1zZ2lkICIiCiAibWFrZSAnZ2l0LWRpZmZ0b29sJyBleGl0IHdoZW4gYW4gaW52b2tlZCBkaWZmIHRvb2wgcmV0dXJucyBhIG5vbiAtIHplcm8gZXhpdCAiCiAiY29kZSIKQEAgLTEwNzUxLDE2MSArMTM1NjIsMjQ3IEBACiAibMOgbSBjaG8g4oCcZ2l0LWRpZmZ0b29s4oCdIHRob8OhdCBraGkgZ+G7jWkgY8O0bmcgY+G7pSBkaWZmIHRy4bqjIHbhu4EgbcOjIGtow7RuZyBwaOG6o2kgc+G7kSAiCiAia2jDtG5nIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzE1CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE2CiBtc2dpZCAic3BlY2lmeSBhIGN1c3RvbSBjb21tYW5kIGZvciB2aWV3aW5nIGRpZmZzIgogbXNnc3RyICJjaOG7iSDEkeG7i25oIG3hu5l0IGzhu4duaCB0w7l5IMO9IMSR4buDIHhlbSBkaWZmIgogCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzE3Cittc2dpZCAicGFzc2VkIHRvIGBkaWZmYCIKK21zZ3N0ciAiY2h1eeG7g24gY2hvIOKAnGRpZmbigJ0iCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzIKK21zZ2lkICJkaWZmdG9vbCByZXF1aXJlcyB3b3JrdHJlZSBvciAtLW5vLWluZGV4IgorbXNnc3RyICJkaWZmdG9vbCBj4bqnbiBjw6J5IGzDoG0gdmnhu4djIGhv4bq3YyAtLW5vLWluZGV4IgorCiAjOiBidWlsdGluL2RpZmZ0b29sLmM6NzM5Cittc2dpZCAiLS1kaXItZGlmZiBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW5vLWluZGV4IgorbXNnc3RyICItLWRpci1kaWZmIHh1bmcga2jhuq9jIHbhu5tpIC0tbm8taW5kZXgiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDIKK21zZ2lkICItLWd1aSwgLS10b29sIGFuZCAtLWV4dGNtZCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICItLWd1aSwgLS10b29sIHbDoCAtLWV4dGNtZCBsb+G6oWkgdOG7qyBs4bqrbiBuaGF1IgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzUwCiBtc2dpZCAibm8gPHRvb2w+IGdpdmVuIGZvciAtLXRvb2w9PHRvb2w+IgogbXNnc3RyICJjaMawYSDEkcawYSByYSA8Y8O0bmdfY+G7pT4gY2hvIC0tdG9vbD08Y8O0bmdfY+G7pT4iCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDYKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NTcKIG1zZ2lkICJubyA8Y21kPiBnaXZlbiBmb3IgLS1leHRjbWQ9PGNtZD4iCiBtc2dzdHIgImNoxrBhIMSRxrBhIHJhIDxs4buHbmg+IGNobyAtLWV4dGNtZD08bOG7h25oPiIKIAorIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjYKK21zZ2lkICJnaXQgZW52LS1oZWxwZXIgLS10eXBlPVtib29sfHVsb25nXSA8b3B0aW9ucz4gPGVudi12YXI+IgorbXNnc3RyICJnaXQgZW52LS1oZWxwZXIgLS10eXBlPVtib29sfHVsb25nXSA8Y8OhYyB0w7l5IGNo4buNbj4gPGVudi12YXI+IgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6MzcgYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk4Cittc2dpZCAidHlwZSIKK21zZ3N0ciAia2nhu4N1IgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NDEKK21zZ2lkICJkZWZhdWx0IGZvciBnaXRfZW52XyooLi4uKSB0byBmYWxsIGJhY2sgb24iCittc2dzdHIgIm3hurdjIMSR4buLbmggY2hvIGdpdF9lbnZfKiguLi4pIMSR4buDIHF1YXkgduG7gSIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjQzCittc2dpZCAiYmUgcXVpZXQgb25seSB1c2UgZ2l0X2Vudl8qKCkgdmFsdWUgYXMgZXhpdCBjb2RlIgorbXNnc3RyICJpbSBs4bq3bmcgY2jhu4kga2hpIGR1bmcgZ2nDoSB0cuG7iyBnaXRfZW52XyooKSBsw6BtIG3DoyB0aG/DoXQiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo2MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYC0tZGVmYXVsdCcgZXhwZWN0cyBhIGJvb2xlYW4gdmFsdWUgd2l0aCBgLS10eXBlPWJvb2xgLCBub3QgYCVzYCIKK21zZ3N0ciAiIgorInTDuXkgY2jhu41uIGAtLWRlZmF1bHQnIGPhuqduIG3hu5l0IGdpw6EgdHLhu4sgbG9naWMgduG7m2kgYC0tdHlwZT1ib29sYCwga2jDtG5nIHBo4bqjaSBgJXNgIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9wdGlvbiBgLS1kZWZhdWx0JyBleHBlY3RzIGFuIHVuc2lnbmVkIGxvbmcgdmFsdWUgd2l0aCBgLS10eXBlPXVsb25nYCwgbm90IGAiCisiJXNgIgorbXNnc3RyICIiCisidMO5eSBjaOG7jW4gYC0tZGVmYXVsdCcgY+G6p24gbeG7mXQgZ2nDoSB0cuG7iyBz4buRIG5ndXnDqm4gZMOgaSBraMO0bmcgZOG6pXUgduG7m2kgYC0tIgorInR5cGU9dWxvbmdgLCBraMO0bmcgcGjhuqNpIGAlc2AiCisKICM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoyOQogbXNnaWQgImdpdCBmYXN0LWV4cG9ydCBbcmV2LWxpc3Qtb3B0c10iCiBtc2dzdHIgImdpdCBmYXN0LWV4cG9ydCBbcmV2LWxpc3Qtb3B0c10iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6ODUzCittc2dpZCAiRXJyb3I6IENhbm5vdCBleHBvcnQgbmVzdGVkIHRhZ3MgdW5sZXNzIC0tbWFyay10YWdzIGlzIHNwZWNpZmllZC4iCittc2dzdHIgIkzhu5dpOiBraMO0bmcgdGjhu4MgeHXhuqV0IHRo4bq7IGzhu5NuZyBuaGF1IHRy4burIGtoaSAtLW1hcmstdGFncyDEkcaw4bujYyBjaOG7iSDEkeG7i25oLiIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTIKIG1zZ2lkICJzaG93IHByb2dyZXNzIGFmdGVyIDxuPiBvYmplY3RzIgogbXNnc3RyICJoaeG7g24gdGjhu4sgdGnhur9uIHRyaeG7g24gc2F1IDxuPiDEkeG7kWkgdMaw4bujbmciCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDA4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NAogbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiBzaWduZWQgdGFncyIKIG1zZ3N0ciAiY2jhu41uIMSRaeG7gXUga2hp4buDbiBj4bunYSB0aOG6uyDEkcOjIGvDvSIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTEKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTU3CiBtc2dpZCAic2VsZWN0IGhhbmRsaW5nIG9mIHRhZ3MgdGhhdCB0YWcgZmlsdGVyZWQgb2JqZWN0cyIKIG1zZ3N0ciAiY2jhu41uIHPhu7EgeOG7rSBsw70gY+G7p2EgY8OhYyB0aOG6uywgY8OhaSBtw6AgxJHDoW5oIHRo4bq7IGPDoWMgxJHhu5FpIHTGsOG7o25nIMSRxrDhu6NjIGzhu41jIHJhIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjAKK21zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2YgY29tbWl0IG1lc3NhZ2VzIGluIGFuIGFsdGVybmF0ZSBlbmNvZGluZyIKK21zZ3N0ciAiIgorImNo4buNbiBi4buZIHjhu60gbMO9IGNobyBjw6FjIGdoaSBjaMO6IGPhu6dhIGzhuqduIGNodXnhu4NuIGdpYW8gdGhlbyBt4buZdCBi4buZIG3DoyB0aGF5IHRo4bq/IgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2MwogbXNnaWQgIkR1bXAgbWFya3MgdG8gdGhpcyBmaWxlIgogbXNnc3RyICLEkOG7lSBjw6FjIMSRw6FuaCBk4bqldSBuw6B5IHbDoG8gdOG6rXAtdGluIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjUKIG1zZ2lkICJJbXBvcnQgbWFya3MgZnJvbSB0aGlzIGZpbGUiCi1tc2dzdHIgIm5o4bqtcCB2w6BvIMSRw6FuaCBk4bqldSB04burIHThuq1wIHRpbiBuw6B5IgorbXNnc3RyICJOaOG6rXAgdsOgbyDEkcOhbmggZOG6pXUgdOG7qyB04bqtcCB0aW4gbsOgeSIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY5Cittc2dpZCAiSW1wb3J0IG1hcmtzIGZyb20gdGhpcyBmaWxlIGlmIGl0IGV4aXN0cyIKK21zZ3N0ciAiTmjhuq1wIHbDoG8gxJHDoW5oIGThuqV1IHThu6sgdOG6rXAgdGluIHPhurVuIGPDsyIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzEKIG1zZ2lkICJGYWtlIGEgdGFnZ2VyIHdoZW4gdGFncyBsYWNrIG9uZSIKIG1zZ3N0ciAiTMOgbSBnaeG6oyBt4buZdCBjw6FpIHRo4bq7IGtoaSB0aOG6uyBi4buLIHRoaeG6v3UgbeG7mXQgY8OhaSIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjAKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTczCiBtc2dpZCAiT3V0cHV0IGZ1bGwgdHJlZSBmb3IgZWFjaCBjb21taXQiCiBtc2dzdHIgIlh14bqldCByYSB0b8OgbiBi4buZIGPDonkgY2hvIG3hu5dpIGzhuqduIGNodXnhu4NuIGdpYW8iCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDIyCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NQogbXNnaWQgIlVzZSB0aGUgZG9uZSBmZWF0dXJlIHRvIHRlcm1pbmF0ZSB0aGUgc3RyZWFtIgogbXNnc3RyICJT4butIGThu6VuZyB0w61uaCBuxINuZyBkb25lIMSR4buDIGNo4bqlbSBk4bupdCBsdeG7k25nIGThu68gbGnhu4d1IgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyMworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzYKIG1zZ2lkICJTa2lwIG91dHB1dCBvZiBibG9iIGRhdGEiCiBtc2dzdHIgIkLhu48gcXVhIGvhur90IHh14bqldCBj4bunYSBk4buvIGxp4buHdSBibG9iIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyNCBidWlsdGluL2xvZy5jOjE1ODgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc3IGJ1aWx0aW4vbG9nLmM6MTcwNQogbXNnaWQgInJlZnNwZWMiCiBtc2dzdHIgInJlZnNwZWMiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDI1CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3OAogbXNnaWQgIkFwcGx5IHJlZnNwZWMgdG8gZXhwb3J0ZWQgcmVmcyIKIG1zZ3N0ciAiw4FwIGThu6VuZyByZWZzcGVjIGNobyByZWZzIMSRw6MgeHXhuqV0IgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyNgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzkKIG1zZ2lkICJhbm9ueW1pemUgb3V0cHV0IgogbXNnc3RyICJr4bq/dCB4deG6pXQgYW5vbnltaXplIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MjgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTgxCittc2dpZCAiUmVmZXJlbmNlIHBhcmVudHMgd2hpY2ggYXJlIG5vdCBpbiBmYXN0LWV4cG9ydCBzdHJlYW0gYnkgb2JqZWN0IGlkIgorbXNnc3RyICIiCisiQ8OhYyBjaGEgbeG6uSB0aGFtIGNoaeG6v3UgY8OhaSBtw6AgayB0cm9uZyBsdeG7k25nIGThu68gbGnhu4d1IGZhc3QtZXhwb3J0IGLhu59pIG3DoyBpZCDEkeG7kWkgIgorInTGsOG7o25nIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE4MworbXNnaWQgIlNob3cgb3JpZ2luYWwgb2JqZWN0IGlkcyBvZiBibG9icy9jb21taXRzIgorbXNnc3RyICJIaeG7g24gdGjhu4sgY8OhYyBtw6MgaWQgbmd1ecOqbiBn4buRYyBj4bunYSBibG9icy9jb21taXRzIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE4NQorbXNnaWQgIkxhYmVsIHRhZ3Mgd2l0aCBtYXJrIGlkcyIKK21zZ3N0ciAiR+G6r24gbmjDo24gdGjhursgSUQgZOG6pXUiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMjIwCittc2dpZCAiQ2Fubm90IHBhc3MgYm90aCAtLWltcG9ydC1tYXJrcyBhbmQgLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzIgorbXNnc3RyICJLaMO0bmcgdGjhu4MgY2h1eeG7g24gcXVhIGPhuqMgaGFpIC0taW1wb3J0LW1hcmtzIHbDoCAtLWltcG9ydC1tYXJrcy1pZi1leGlzdHMiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNAogbXNnaWQgImdpdCBmZXRjaCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKLW1zZ3N0ciAiZ2l0IGZldGNoIFs8Y8OhYy10w7l5LWNo4buNbj5dIFs8a2hvLWNo4bupYT4gWzxyZWZzcGVjPuKApl1dIgorbXNnc3RyICJnaXQgZmV0Y2ggWzxjw6FjIHTDuXkgY2jhu41uPl0gWzxraG8tY2jhu6lhPiBbPHJlZnNwZWM+4oCmXV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoyOQorIzogYnVpbHRpbi9mZXRjaC5jOjM1CiBtc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIDxncm91cD4iCi1tc2dzdHIgImdpdCBmZXRjaCBbPGPDoWMtdMO5eS1jaOG7jW4+XSBbPG5ow7NtPiIKK21zZ3N0ciAiZ2l0IGZldGNoIFs8Y8OhYyB0w7l5IGNo4buNbj5dIFs8bmjDs20+IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNgogbXNnaWQgImdpdCBmZXRjaCAtLW11bHRpcGxlIFs8b3B0aW9ucz5dIFsoPHJlcG9zaXRvcnk+IHwgPGdyb3VwPikuLi5dIgotbXNnc3RyICJnaXQgZmV0Y2ggLS1tdWx0aXBsZSBbPGPDoWMtdMO5eS1jaOG7jW4+XSBbKDxraG8+IHwgPG5ow7NtPinigKZdIgorbXNnc3RyICJnaXQgZmV0Y2ggLS1tdWx0aXBsZSBbPGPDoWMgdMO5eSBjaOG7jW4+XSBbKDxraG8+IHwgPG5ow7NtPinigKZdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MzEKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNwogbXNnaWQgImdpdCBmZXRjaCAtLWFsbCBbPG9wdGlvbnM+XSIKLW1zZ3N0ciAiZ2l0IGZldGNoIC0tYWxsIFs8Y8OhYy10w7l5LWNo4buNbj5dIgorbXNnc3RyICJnaXQgZmV0Y2ggLS1hbGwgWzxjw6FjIHTDuXkgY2jhu41uPl0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTUgYnVpbHRpbi9wdWxsLmM6MTk0CisjOiBidWlsdGluL2ZldGNoLmM6MTE2Cittc2dpZCAiZmV0Y2gucGFyYWxsZWwgY2Fubm90IGJlIG5lZ2F0aXZlIgorbXNnc3RyICJmZXRjaC5wYXJhbGxlbCBraMO0bmcgdGjhu4Mgw6JtIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTM5IGJ1aWx0aW4vcHVsbC5jOjE4NAogbXNnaWQgImZldGNoIGZyb20gYWxsIHJlbW90ZXMiCiBtc2dzdHIgImzhuqV5IHbhu4EgdOG7qyB04bqldCBj4bqjIGPDoWMgbcOheSBjaOG7pyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExNyBidWlsdGluL3B1bGwuYzoxOTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDEgYnVpbHRpbi9wdWxsLmM6MjI4Cittc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9mZXRjaCIKK21zZ3N0ciAixJHhurd0IHRoxrDhu6NuZyBuZ3Xhu5NuIGNobyBnaXQgcHVsbC9mZXRjaCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MyBidWlsdGluL3B1bGwuYzoxODcKIG1zZ2lkICJhcHBlbmQgdG8gLmdpdC9GRVRDSF9IRUFEIGluc3RlYWQgb2Ygb3ZlcndyaXRpbmciCiBtc2dzdHIgIm7hu5FpIHRow6ptIHbDoG8gLmdpdC9GRVRDSF9IRUFEIHRoYXkgdsOsIGdoaSDEkcOoIGzDqm4gbsOzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTE5IGJ1aWx0aW4vcHVsbC5jOjIwMAorIzogYnVpbHRpbi9mZXRjaC5jOjE0NSBidWlsdGluL3B1bGwuYzoxOTAKIG1zZ2lkICJwYXRoIHRvIHVwbG9hZCBwYWNrIG9uIHJlbW90ZSBlbmQiCiBtc2dzdHIgIsSRxrDhu51uZyBk4bqrbiDEkeG6v24gZ8OzaSB04bqjaSBsw6puIHRyw6puIG3DoXkgY2jhu6cgY3Xhu5FpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTIwCisjOiBidWlsdGluL2ZldGNoLmM6MTQ2CiBtc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGxvY2FsIHJlZmVyZW5jZSIKIG1zZ3N0ciAiw6lwIGJ14buZYyBnaGkgxJHDqCBsw6puIHRoYW0gY2hp4bq/dSBu4buZaSBi4buZIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTIyCisjOiBidWlsdGluL2ZldGNoLmM6MTQ4CiBtc2dpZCAiZmV0Y2ggZnJvbSBtdWx0aXBsZSByZW1vdGVzIgogbXNnc3RyICJs4bqleSB04burIG5oaeG7gXUgbcOheSBjaOG7pyBjw7luZyBsw7pjIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI0IGJ1aWx0aW4vcHVsbC5jOjIwNAorIzogYnVpbHRpbi9mZXRjaC5jOjE1MCBidWlsdGluL3B1bGwuYzoxOTQKIG1zZ2lkICJmZXRjaCBhbGwgdGFncyBhbmQgYXNzb2NpYXRlZCBvYmplY3RzIgogbXNnc3RyICJs4bqleSB04bqldCBj4bqjIGPDoWMgdGjhursgY8O5bmcgduG7m2kgY8OhYyDEkeG7kWkgdMaw4bujbmcgbGnDqm4gcXVhbiDEkeG6v24gbsOzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI2CisjOiBidWlsdGluL2ZldGNoLmM6MTUyCiBtc2dpZCAiZG8gbm90IGZldGNoIGFsbCB0YWdzICgtLW5vLXRhZ3MpIgogbXNnc3RyICJraMO0bmcgbOG6pXkgdOG6pXQgY+G6oyBjw6FjIHRo4bq7ICgtLW5vLXRhZ3MpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTI4CisjOiBidWlsdGluL2ZldGNoLmM6MTU0CiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgZmV0Y2hlZCBpbiBwYXJhbGxlbCIKIG1zZ3N0ciAic+G7kSBsxrDhu6NuZyBtw7QtxJF1bi1jb24gxJHGsOG7o2MgbOG6pXkgxJHhu5NuZyB0aOG7nWkiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzAgYnVpbHRpbi9wdWxsLmM6MjA3CisjOiBidWlsdGluL2ZldGNoLmM6MTU2IGJ1aWx0aW4vcHVsbC5jOjE5NwogbXNnaWQgInBydW5lIHJlbW90ZS10cmFja2luZyBicmFuY2hlcyBubyBsb25nZXIgb24gcmVtb3RlIgogbXNnc3RyICIiCiAiY+G6r3QgY+G7pXQgKHBydW5lKSBjw6FjIG5ow6FuaCDigJxyZW1vdGUtdHJhY2tpbmfigJ0ga2jDtG5nIGPDsm4gdOG7k24gdOG6oWkgdHLDqm4gbcOheSBjaOG7pyAiCiAibuG7r2EiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTgKIG1zZ2lkICJwcnVuZSBsb2NhbCB0YWdzIG5vIGxvbmdlciBvbiByZW1vdGUgYW5kIGNsb2JiZXIgY2hhbmdlZCB0YWdzIgogbXNnc3RyICJj4bqvdCB4w6ltIGPDoWMgdGjhursgbuG7mWkgYuG7mSBraMO0bmcgY8OybiDhu58gbcOheSBjaOG7pyB2w6AgeMOzYSBjw6FjIHRo4bq7IMSRw6MgdGhheSDEkeG7lWkiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzMgYnVpbHRpbi9mZXRjaC5jOjE1NiBidWlsdGluL3B1bGwuYzoxMzIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTkgYnVpbHRpbi9mZXRjaC5jOjE4MiBidWlsdGluL3B1bGwuYzoxMjEKIG1zZ2lkICJvbi1kZW1hbmQiCiBtc2dzdHIgImtoaS1j4bqnbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEzNAorIzogYnVpbHRpbi9mZXRjaC5jOjE2MAogbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMiCiBtc2dzdHIgIsSRaeG7gXUga2hp4buDbiB2aeG7h2MgbOG6pXkgduG7gSDEkeG7hyBxdXkgdHJvbmcgY8OhYyBtw7QtxJF1bi1jb24iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzggYnVpbHRpbi9wdWxsLmM6MjE1CisjOiBidWlsdGluL2ZldGNoLmM6MTY0IGJ1aWx0aW4vcHVsbC5jOjIwNQogbXNnaWQgImtlZXAgZG93bmxvYWRlZCBwYWNrIgogbXNnc3RyICJnaeG7ryBs4bqhaSBnw7NpIMSRw6MgdOG6o2kgduG7gSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0MAorIzogYnVpbHRpbi9mZXRjaC5jOjE2NgogbXNnaWQgImFsbG93IHVwZGF0aW5nIG9mIEhFQUQgcmVmIgogbXNnc3RyICJjaG8gcGjDqXAgY+G6rXAgbmjhuq10IHRoLmNoaeG6v3UgSEVBRCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0MyBidWlsdGluL2ZldGNoLmM6MTQ5IGJ1aWx0aW4vcHVsbC5jOjIxOAorIzogYnVpbHRpbi9mZXRjaC5jOjE2OSBidWlsdGluL2ZldGNoLmM6MTc1IGJ1aWx0aW4vcHVsbC5jOjIwOAogbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgY2xvbmUiCiBtc2dzdHIgImzDoG0gc8OidSBoxqFuIGzhu4tjaCBz4butIGPhu6dhIGLhuqNuIHNhbyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0NQorIzogYnVpbHRpbi9mZXRjaC5jOjE3MQogbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgcmVwb3NpdG9yeSBiYXNlZCBvbiB0aW1lIgogbXNnc3RyICJsw6BtIHPDonUgaMahbiBs4buLY2ggc+G7rSBj4bunYSBraG8gYuG6o24gc2FvIHNoYWxsb3cgZOG7sWEgdHLDqm4gdGjhu51pIGdpYW4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTEgYnVpbHRpbi9wdWxsLmM6MjIxCisjOiBidWlsdGluL2ZldGNoLmM6MTc3IGJ1aWx0aW4vcHVsbC5jOjIxMQogbXNnaWQgImNvbnZlcnQgdG8gYSBjb21wbGV0ZSByZXBvc2l0b3J5IgogbXNnc3RyICJjaHV54buDbiDEkeG7lWkgaG/DoG4gdG/DoG4gc2FuZyBraG8gZ2l0IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU0CisjOiBidWlsdGluL2ZldGNoLmM6MTgwCiBtc2dpZCAicHJlcGVuZCB0aGlzIHRvIHN1Ym1vZHVsZSBwYXRoIG91dHB1dCIKIG1zZ3N0ciAic2/huqFuIHPhurVuIGPDoWkgbsOgeSBjaG8ga+G6v3QgeHXhuqV0IMSRxrDhu51uZyBk4bqrbiBtw7QtxJF1bi1jb24iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODMKIG1zZ2lkICIiCiAiZGVmYXVsdCBmb3IgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMgKGxvd2VyIHByaW9yaXR5IHRoYW4gY29uZmlnICIKICJmaWxlcykiCkBAIC0xMDkxMywxMDggKzEzODEwLDEzMyBAQAogIm3hurdjIMSR4buLbmggY2hvIHZp4buHYyBs4bqleSDEkeG7hyBxdXkgY8OhYyBtw7QtxJF1bi1jb24gKGPDsyBt4bupYyDGsHUgdGnDqm4gdGjhuqVwIGjGoW4gY8OhYyB04bqtcCAiCiAidGluIGPhuqV1IGjDrG5oIGNvbmZpZykiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjEgYnVpbHRpbi9wdWxsLmM6MjI0CisjOiBidWlsdGluL2ZldGNoLmM6MTg3IGJ1aWx0aW4vcHVsbC5jOjIxNAogbXNnaWQgImFjY2VwdCByZWZzIHRoYXQgdXBkYXRlIC5naXQvc2hhbGxvdyIKIG1zZ3N0ciAiY2jhuqVwIG5o4bqtbiB0aGFtIGNoaeG6v3UgY+G6rXAgbmjhuq10IC5naXQvc2hhbGxvdyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MiBidWlsdGluL3B1bGwuYzoyMjYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODggYnVpbHRpbi9wdWxsLmM6MjE2CiBtc2dpZCAicmVmbWFwIgogbXNnc3RyICJyZWZtYXAiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjMgYnVpbHRpbi9wdWxsLmM6MjI3CisjOiBidWlsdGluL2ZldGNoLmM6MTg5IGJ1aWx0aW4vcHVsbC5jOjIxNwogbXNnaWQgInNwZWNpZnkgZmV0Y2ggcmVmbWFwIgogbXNnc3RyICJjaOG7iSByYSByZWZtYXAgY+G6p24gbOG6pXkgduG7gSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2NCBidWlsdGluL2xzLXJlbW90ZS5jOjc3IGJ1aWx0aW4vcHVzaC5jOjU4MgotIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzIKLW1zZ2lkICJzZXJ2ZXItc3BlY2lmaWMiCi1tc2dzdHIgIsSR4bq3Yy104bqjLW3DoXktcGjhu6VjLXbhu6UiCi0KLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9scy1yZW1vdGUuYzo3NyBidWlsdGluL3B1c2guYzo1ODIKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTczCi1tc2dpZCAib3B0aW9uIHRvIHRyYW5zbWl0IgotbXNnc3RyICJ0w7l5IGNo4buNbiDEkeG7gyBjaHV54buDbiBnaWFvIgotCi0jOiBidWlsdGluL2ZldGNoLmM6MTcwCisjOiBidWlsdGluL2ZldGNoLmM6MTk2CiBtc2dpZCAicmVwb3J0IHRoYXQgd2UgaGF2ZSBvbmx5IG9iamVjdHMgcmVhY2hhYmxlIGZyb20gdGhpcyBvYmplY3QiCiBtc2dzdHIgIiIKICJiw6FvIGPDoW8gcuG6sW5nIGNow7puZyB0YSBjaOG7iSBjw7MgY8OhYyDEkeG7kWkgdMaw4bujbmcgdGnhur9wIGPhuq1uIMSRxrDhu6NjIHThu6sgxJHhu5FpIHTGsOG7o25nIG7DoHkiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo0NzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxOTkKK21zZ2lkICJydW4gJ2djIC0tYXV0bycgYWZ0ZXIgZmV0Y2hpbmciCittc2dzdHIgImNo4bqheSAnZ2MgLS1hdXRvJyBzYXUga2hpIGzhuqV5IHbhu4EiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoyMDEgYnVpbHRpbi9wdWxsLmM6MjI2Cittc2dpZCAiY2hlY2sgZm9yIGZvcmNlZC11cGRhdGVzIG9uIGFsbCB1cGRhdGVkIGJyYW5jaGVzIgorbXNnc3RyICJraeG7g20gY2hvIGPDoWMtY+G6rXAtbmjhuq10LWLhuq90LWJ14buZYyB0csOqbiBt4buNaSBuaMOhbmggxJHDoyBj4bqtcCBuaOG6rXQiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoyMDMKK21zZ2lkICJ3cml0ZSB0aGUgY29tbWl0LWdyYXBoIGFmdGVyIGZldGNoaW5nIgorbXNnc3RyICJnaGkgcmEgxJHhu5MgdGjhu4sgY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIHNhdSBraGkgbOG6pXkgduG7gSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjUxMwogbXNnaWQgIkNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiBIRUFEIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgdMOsbSB0aOG6pXkgbcOheSBjaOG7pyBjaG8gdGhhbSBjaGnhur91IEhFQUQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo2MDkKKyM6IGJ1aWx0aW4vZmV0Y2guYzo2NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29uZmlndXJhdGlvbiBmZXRjaC5vdXRwdXQgY29udGFpbnMgaW52YWxpZCB2YWx1ZSAlcyIKIG1zZ3N0ciAicGjhuqduIGPhuqV1IGjDrG5oIGZldGNoLm91dHB1dCBjw7MgY2jhu6lhIGdpw6EtdHLhu4sga2jDtG5nIGjhu6NwIGzhu4cgJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MDIKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIG5vdCBmb3VuZCIKLW1zZ3N0ciAiS2jDtG5nIHTDrG0gdGjhuqV5IMSR4buRaSB0xrDhu6NuZyAlcyIKK21zZ3N0ciAia2jDtG5nIHTDrG0gdGjhuqV5IMSR4buRaSB0xrDhu6NuZyAlcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjcwNgorIzogYnVpbHRpbi9mZXRjaC5jOjc1NQogbXNnaWQgIlt1cCB0byBkYXRlXSIKIG1zZ3N0ciAiW8SRw6MgY+G6rXAgbmjhuq10XSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjcxOSBidWlsdGluL2ZldGNoLmM6NzM1IGJ1aWx0aW4vZmV0Y2guYzo4MDcKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NjggYnVpbHRpbi9mZXRjaC5jOjc4NCBidWlsdGluL2ZldGNoLmM6ODU2CiBtc2dpZCAiW3JlamVjdGVkXSIKIG1zZ3N0ciAiW0Lhu4sgdOG7qyBjaOG7kWldIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzIwCisjOiBidWlsdGluL2ZldGNoLmM6NzY5CiBtc2dpZCAiY2FuJ3QgZmV0Y2ggaW4gY3VycmVudCBicmFuY2giCiBtc2dzdHIgImtow7RuZyB0aOG7gyBmZXRjaCAobOG6pXkpIHbhu4EgbmjDoW5oIGhp4buHbiBow6BuaCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjczMAorIzogYnVpbHRpbi9mZXRjaC5jOjc3OQogbXNnaWQgIlt0YWcgdXBkYXRlXSIKIG1zZ3N0ciAiW2Phuq1wIG5o4bqtdCB0aOG6u10iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MzEgYnVpbHRpbi9mZXRjaC5jOjc3MSBidWlsdGluL2ZldGNoLmM6Nzg3Ci0jOiBidWlsdGluL2ZldGNoLmM6ODAyCisjOiBidWlsdGluL2ZldGNoLmM6NzgwIGJ1aWx0aW4vZmV0Y2guYzo4MTcgYnVpbHRpbi9mZXRjaC5jOjgzOQorIzogYnVpbHRpbi9mZXRjaC5jOjg1MQogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgbG9jYWwgcmVmIgogbXNnc3RyICJraMO0bmcgdGjhu4MgY+G6rXAgbmjhuq10IHRoYW0gY2hp4bq/dSBu4buZaSBi4buZIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzM1CisjOiBidWlsdGluL2ZldGNoLmM6Nzg0CiBtc2dpZCAid291bGQgY2xvYmJlciBleGlzdGluZyB0YWciCiBtc2dzdHIgIm7Dqm4geMOzYSBjaOG7k25nIGPDoWMgdGjhursgY8OzIHPhurVuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzU3CisjOiBidWlsdGluL2ZldGNoLmM6ODA2CiBtc2dpZCAiW25ldyB0YWddIgogbXNnc3RyICJbdGjhursgbeG7m2ldIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzYwCisjOiBidWlsdGluL2ZldGNoLmM6ODA5CiBtc2dpZCAiW25ldyBicmFuY2hdIgogbXNnc3RyICJbbmjDoW5oIG3hu5tpXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjc2MworIzogYnVpbHRpbi9mZXRjaC5jOjgxMgogbXNnaWQgIltuZXcgcmVmXSIKIG1zZ3N0ciAiW3JlZiAodGhhbSBjaGnhur91KSBt4bubaV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4MDIKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NTEKIG1zZ2lkICJmb3JjZWQgdXBkYXRlIgogbXNnc3RyICJjxrDhu6FuZyBi4bupYyBj4bqtcCBuaOG6rXQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4MDcKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NTYKIG1zZ2lkICJub24tZmFzdC1mb3J3YXJkIgogbXNnc3RyICJraMO0bmctcGjhuqNpLWNodXnhu4NuLXRp4bq/cC1uaGFuaCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjg1MworIzogYnVpbHRpbi9mZXRjaC5jOjg3NworbXNnaWQgIiIKKyJGZXRjaCBub3JtYWxseSBpbmRpY2F0ZXMgd2hpY2ggYnJhbmNoZXMgaGFkIGEgZm9yY2VkIHVwZGF0ZSxcbiIKKyJidXQgdGhhdCBjaGVjayBoYXMgYmVlbiBkaXNhYmxlZC4gVG8gcmUtZW5hYmxlLCB1c2UgJy0tc2hvdy1mb3JjZWQtdXBkYXRlcydcbiIKKyJmbGFnIG9yIHJ1biAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyB0cnVlJy4iCittc2dzdHIgIiIKKyJWaeG7h2MgbOG6pXkgduG7gSB0aMaw4budbmcgY2jhu4kgcmEgY8OhYyBuaMOhbmggYnXhu5ljIHBo4bqjaSBj4bqtcCBuaOG6rXQsXG4iCisibmjGsG5nIGzhu7FhIGNo4buNbiBi4buLIHThuq90LiDEkOG7gyBrw61jaCBob+G6oXQgbOG6oWksIHPhu60gZOG7pW5nIGPhu51cbiIKKyInLS1zaG93LWZvcmNlZC11cGRhdGVzJyBob+G6t2MgY2jhuqF5ICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzIHRydWUnLiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjg4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gY2hlY2sgZm9yY2VkIHVwZGF0ZXMuIFlvdSBjYW4gdXNlXG4iCisiJy0tbm8tc2hvdy1mb3JjZWQtdXBkYXRlcycgb3IgcnVuICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzICIKKyJmYWxzZSdcbiIKKyIgdG8gYXZvaWQgdGhpcyBjaGVjay5cbiIKK21zZ3N0ciAiIgorIlZp4buHYyBuw6B5IGPhuqduICUuMmYgZ2nDonkgxJHhu4Mga2nhu4NtIHRyYSBjw6FjIGPhuq1wIG5o4bqtdCDDqXAgYnXhu5ljLiBC4bqhbiBjw7MgdGjhu4MgZMO5bmdcbiIKKyInLS1uby1zaG93LWZvcmNlZC11cGRhdGVzJyBob+G6t2MgY2jhuqF5ICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzICIKKyJmYWxzZSdcbiIKKyLEkeG7gyB0csOhbmgga2nhu4NtIHRyYSBuw6B5LlxuIgorCisjOiBidWlsdGluL2ZldGNoLmM6OTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRpZCBub3Qgc2VuZCBhbGwgbmVjZXNzYXJ5IG9iamVjdHNcbiIKIG1zZ3N0ciAiJXMgxJHDoyBraMO0bmcgZ+G7rWkgdOG6pXQgY+G6oyBjw6FjIMSR4buRaSB0xrDhu6NuZyBj4bqnbiB0aGnhur90XG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4NzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzo5NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVqZWN0ICVzIGJlY2F1c2Ugc2hhbGxvdyByb290cyBhcmUgbm90IGFsbG93ZWQgdG8gYmUgdXBkYXRlZCIKIG1zZ3N0ciAidOG7qyBjaOG7kWkgJXMgYuG7n2kgdsOsIGPDoWMgZ+G7kWMgbsO0bmcgdGjDrCBraMO0bmcgxJHGsOG7o2MgcGjDqXAgY+G6rXAgbmjhuq10IgogCi0jOiBidWlsdGluL2ZldGNoLmM6OTYzIGJ1aWx0aW4vZmV0Y2guYzoxMDg1CisjOiBidWlsdGluL2ZldGNoLmM6MTAyNiBidWlsdGluL2ZldGNoLmM6MTE2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJGcm9tICUuKnNcbiIKIG1zZ3N0ciAiVOG7qyAlLipzXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo5NzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMDM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJzb21lIGxvY2FsIHJlZnMgY291bGQgbm90IGJlIHVwZGF0ZWQ7IHRyeSBydW5uaW5nXG4iCkBAIC0xMTAyMyw1OSArMTM5NDUsODEgQEAKICJt4buZdCBz4buRIHRoYW0gY2hp4bq/dSBu4buZaSBi4buZIGtow7RuZyB0aOG7gyDEkcaw4bujYyBj4bqtcCBuaOG6rXQ7IGjDo3kgdGjhu60gY2jhuqF5XG4iCiAiIOKAnGdpdCByZW1vdGUgcHJ1bmUgJXPigJ0gxJHhu4MgYuG7jyDEkWkgbmjhu69uZyBuaMOhbmggY8WpLCBoYXkgYuG7iyB4dW5nIMSR4buZdCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwNTUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICglcyB3aWxsIGJlY29tZSBkYW5nbGluZykiCiBtc2dzdHIgIiAgICglcyBz4bq9IHRy4bufIHRow6BuaCBraMO0bmcgxJHhuqd1IChraMO0bmcgxJHGsOG7o2MgcXXhuqNuIGzDvSkpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA1NgorIzogYnVpbHRpbi9mZXRjaC5jOjExMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgKCVzIGhhcyBiZWNvbWUgZGFuZ2xpbmcpIgogbXNnc3RyICIgICAoJXMgxJHDoyB0cuG7nyB0aMOgbmgga2jDtG5nIMSR4bqndSAoa2jDtG5nIMSRxrDhu6NjIHF14bqjbiBsw70pKSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwODgKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTY3CiBtc2dpZCAiW2RlbGV0ZWRdIgogbXNnc3RyICJbxJHDoyB4w7NhXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEwODkgYnVpbHRpbi9yZW1vdGUuYzoxMDM2CisjOiBidWlsdGluL2ZldGNoLmM6MTE2OCBidWlsdGluL3JlbW90ZS5jOjExMTIKIG1zZ2lkICIobm9uZSkiCiBtc2dzdHIgIihraMO0bmcpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTExMgorIzogYnVpbHRpbi9mZXRjaC5jOjExOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gZmV0Y2ggaW50byBjdXJyZW50IGJyYW5jaCAlcyBvZiBub24tYmFyZSByZXBvc2l0b3J5IgogbXNnc3RyICIiCiAiVOG7qyBjaOG7kWkgdmnhu4djIGzhuqV5IHbDoG8gdHJvbmcgbmjDoW5oIGhp4buHbiB04bqhaSAlcyBj4bunYSBt4buZdCBraG8gY2jhu6lhIGtow7RuZyBwaOG6o2kga2hvICIKICJ0cuG6p24gKGJhcmUpIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTEzMQorIzogYnVpbHRpbi9mZXRjaC5jOjEyMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiT3B0aW9uIFwiJXNcIiB2YWx1ZSBcIiVzXCIgaXMgbm90IHZhbGlkIGZvciAlcyIKIG1zZ3N0ciAiVMO5eSBjaOG7jW4gXCIlc1wiIGPDsyBnacOhIHRy4buLIFwiJXNcIiBsw6Aga2jDtG5nIGjhu6NwIGzhu4cgY2hvICVzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTEzNAorIzogYnVpbHRpbi9mZXRjaC5jOjEyMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiT3B0aW9uIFwiJXNcIiBpcyBpZ25vcmVkIGZvciAlc1xuIgogbXNnc3RyICJUw7l5IGNo4buNbiBcIiVzXCIgYuG7iyBi4buPIHF1YSB24bubaSAlc1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQzMworIzogYnVpbHRpbi9mZXRjaC5jOjE0MjEKK21zZ2lkICJtdWx0aXBsZSBicmFuY2hlcyBkZXRlY3RlZCwgaW5jb21wYXRpYmxlIHdpdGggLS1zZXQtdXBzdHJlYW0iCittc2dzdHIgInBow6F0IGhp4buHbiBuaGnhu4F1IG5ow6FuaCwga2jDtG5nIHTGsMahbmcgdGjDrWNoIHbhu5tpIC0tc2V0LXVwc3RyZWFtIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzNgorbXNnaWQgIm5vdCBzZXR0aW5nIHVwc3RyZWFtIGZvciBhIHJlbW90ZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICJraMO0bmcgY8OgaSDEkeG6t3QgdGjGsOG7o25nIG5ndeG7k24gY2hvIG3hu5l0IG5ow6FuaCDEkcaw4bujYyB0aGVvIGTDtWkgdHLDqm4gbcOheSBjaOG7pyIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MzgKK21zZ2lkICJub3Qgc2V0dGluZyB1cHN0cmVhbSBmb3IgYSByZW1vdGUgdGFnIgorbXNnc3RyICJraMO0bmcgY8OgaSDEkeG6t3QgdGjGsOG7o25nIG5ndeG7k24gY2hvIG3hu5l0IHRo4bq7IG5ow6FuaCB0csOqbiBtw6F5IGNo4bunIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ0MAorbXNnaWQgInVua25vd24gYnJhbmNoIHR5cGUiCittc2dzdHIgImtow7RuZyBoaeG7g3Uga2nhu4N1IG5ow6FuaCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0NDIKK21zZ2lkICIiCisibm8gc291cmNlIGJyYW5jaCBmb3VuZC5cbiIKKyJ5b3UgbmVlZCB0byBzcGVjaWZ5IGV4YWN0bHkgb25lIGJyYW5jaCB3aXRoIHRoZSAtLXNldC11cHN0cmVhbSBvcHRpb24uIgorbXNnc3RyICIiCisia2jDtG5nIHTDrG0gdGjhuqV5IG5ow6FuaCBuZ3Xhu5NuLlxuIgorImLhuqFuIGPhuqduIHBo4bqjaSBjaOG7iSDEkeG7i25oIGNow61uaCB4w6FjIG3hu5l0IG5ow6FuaCB24bubaSB0w7l5IGNo4buNbiAtLXNldC11cHN0cmVhbS4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTY4IGJ1aWx0aW4vZmV0Y2guYzoxNjMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZldGNoaW5nICVzXG4iCiBtc2dzdHIgIsSQYW5nIGzhuqV5IOKAnCVz4oCdIHbhu4FcbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0MzUgYnVpbHRpbi9yZW1vdGUuYzoxMDAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTc4IGJ1aWx0aW4vZmV0Y2guYzoxNjMzIGJ1aWx0aW4vcmVtb3RlLmM6MTAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBmZXRjaCAlcyIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIOKAnCVz4oCdIHbhu4EiCittc2dzdHIgIktow7RuZyB0aOG7gyBs4bqleeKAnCVz4oCdIHbhu4EiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDgxIGJ1aWx0aW4vZmV0Y2guYzoxNjQ5Ci1tc2dpZCAiIgotIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gY29yZS5wYXJ0aWFsQ2xvbmUiCi1tc2dzdHIgIiIKLSItLWZpbHRlciBjaOG7iSBjw7MgdGjhu4MgxJHGsOG7o2MgZMO5bmcgduG7m2kgbcOheSBjaOG7pyDEkcaw4bujYyBj4bqldSBow6xuaCBi4bqxbmcgY29yZS4iCi0icGFydGlhbENsb25lIgorIzogYnVpbHRpbi9mZXRjaC5jOjE1OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZldGNoICclcycgKGV4aXQgY29kZTogJWQpXG4iCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSDigJwlc+KAnSAobcOjIHRob8OhdDogJWQpXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTA0CisjOiBidWlsdGluL2ZldGNoLmM6MTY5MwogbXNnaWQgIiIKICJObyByZW1vdGUgcmVwb3NpdG9yeSBzcGVjaWZpZWQuICBQbGVhc2UsIHNwZWNpZnkgZWl0aGVyIGEgVVJMIG9yIGFcbiIKICJyZW1vdGUgbmFtZSBmcm9tIHdoaWNoIG5ldyByZXZpc2lvbnMgc2hvdWxkIGJlIGZldGNoZWQuIgpAQCAtMTEwODMsNDMgKzE0MDI3LDUxIEBACiAiQ2jGsGEgY2jhu4kgcmEga2hvIGNo4bupYSBtw6F5IGNo4bunLiAgWGluIGjDo3kgY2jhu4kgxJHhu4tuaCBob+G6t2MgbMOgIFVSTCBob+G6t2NcbiIKICJ0w6puIG3DoXkgY2jhu6cgdOG7qyBjw6FpIG3DoCBuaOG7r25nIMSRaeG7g20geMOpdCBkdXnhu4d0IG3hu5tpIGPDsyB0aOG7gyDEkcaw4bujYyBmZXRjaCAobOG6pXkgduG7gSkuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU0MQorIzogYnVpbHRpbi9mZXRjaC5jOjE3MzAKIG1zZ2lkICJZb3UgbmVlZCB0byBzcGVjaWZ5IGEgdGFnIG5hbWUuIgogbXNnc3RyICJC4bqhbiBwaOG6o2kgxJHhu4tuaCByw7UgdMOqbiB0aOG6uy4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTkwCisjOiBidWlsdGluL2ZldGNoLmM6MTc4MAogbXNnaWQgIk5lZ2F0aXZlIGRlcHRoIGluIC0tZGVlcGVuIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgIk3hu6ljIHPDonUgbMOgIHPhu5Egw6JtIHRyb25nIC0tZGVlcGVuIGzDoCBraMO0bmcgxJHGsOG7o2MgaOG7lyB0cuG7oyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzgyCiBtc2dpZCAiLS1kZWVwZW4gYW5kIC0tZGVwdGggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiQ8OhYyB0w7l5IGNo4buNbi0tZGVlcGVuIHbDoCAtLWRlcHRoIGxv4bqhaSB04burIGzhuqtuIG5oYXUiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTk3CisjOiBidWlsdGluL2ZldGNoLmM6MTc4NwogbXNnaWQgIi0tZGVwdGggYW5kIC0tdW5zaGFsbG93IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIgogbXNnc3RyICJ0w7l5IGNo4buNbiAtLWRlcHRoIHbDoCAtLXVuc2hhbGxvdyBraMO0bmcgdGjhu4Mgc+G7rSBk4bulbmcgY8O5bmcgduG7m2kgbmhhdSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTkKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzg5CiBtc2dpZCAiLS11bnNoYWxsb3cgb24gYSBjb21wbGV0ZSByZXBvc2l0b3J5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tdW5zaGFsbG93IHRyw6puIGtobyBob8OgbiBjaOG7iW5oIGzDoCBraMO0bmcgaOG7o3AgbMO9IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYxNQorIzogYnVpbHRpbi9mZXRjaC5jOjE4MDUKIG1zZ2lkICJmZXRjaCAtLWFsbCBkb2VzIG5vdCB0YWtlIGEgcmVwb3NpdG9yeSBhcmd1bWVudCIKIG1zZ3N0ciAibOG7h25oIGzhuqV5IHbhu4EgXCJmZXRjaCAtLWFsbFwiIGtow7RuZyBs4bqleSDEkeG7kWkgc+G7kSBraG8gY2jhu6lhIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYxNworIzogYnVpbHRpbi9mZXRjaC5jOjE4MDcKIG1zZ2lkICJmZXRjaCAtLWFsbCBkb2VzIG5vdCBtYWtlIHNlbnNlIHdpdGggcmVmc3BlY3MiCiBtc2dzdHIgImzhu4duaCBs4bqleSB24buBIFwiZmV0Y2ggLS1hbGxcIiBraMO0bmcgaOG7o3AgbMO9IHbhu5tpIHJlZnNwZWNzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTYyNgorIzogYnVpbHRpbi9mZXRjaC5jOjE4MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZW1vdGUgb3IgcmVtb3RlIGdyb3VwOiAlcyIKLW1zZ3N0ciAia2jDtG5nIGPDsyBuaMOzbSBtw6F5IGNo4bunIGhheSBtw6F5IGNo4bunIG5oxrAgdGjhur86ICVzIgorbXNnc3RyICJLaMO0bmcgY8OzIG5ow7NtIG3DoXkgY2jhu6cgaGF5IG3DoXkgY2jhu6cgbmjGsCB0aOG6vzogJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjMzCisjOiBidWlsdGluL2ZldGNoLmM6MTgyMwogbXNnaWQgIkZldGNoaW5nIGEgZ3JvdXAgYW5kIHNwZWNpZnlpbmcgcmVmc3BlY3MgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiVmnhu4djIGzhuqV5IHbhu4EgY+G6oyBt4buZdCBuaMOzbSB2w6AgY2jhu4kgxJHhu4tuaCByZWZzcGVjcyBraMO0bmcgaOG7o3AgbMO9IgogCisjOiBidWlsdGluL2ZldGNoLmM6MTg0MQorbXNnaWQgIiIKKyItLWZpbHRlciBjYW4gb25seSBiZSB1c2VkIHdpdGggdGhlIHJlbW90ZSBjb25maWd1cmVkIGluIGV4dGVuc2lvbnMuIgorInBhcnRpYWxjbG9uZSIKK21zZ3N0ciAiIgorIi0tZmlsdGVyIGNo4buJIGPDsyB0aOG7gyDEkcaw4bujYyBkw7luZyB24bubaSBtw6F5IGNo4bunIMSRxrDhu6NjIGPhuqV1IGjDrG5oIGLhurFuZyBleHRlbnNpb25zLiIKKyJwYXJ0aWFsY2xvbmUiCisKICM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjE4CiBtc2dpZCAiIgogImdpdCBmbXQtbWVyZ2UtbXNnIFstbSA8bWVzc2FnZT5dIFstLWxvZ1s9PG4+XSB8IC0tbm8tbG9nXSBbLS1maWxlIDxmaWxlPl0iCkBAIC0xMTEyNywyOSArMTQwNzksMjkgQEAKICJnaXQgZm10LW1lcmdlLW1zZyBbLW0gPGNow7pfdGjDrWNoPl0gWy0tbG9nWz08bj5dIHwgLS1uby1sb2ddIFstLWZpbGUgPHThuq1wLSIKICJ0aW4+XSIKIAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcyCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzEKIG1zZ2lkICJwb3B1bGF0ZSBsb2cgd2l0aCBhdCBtb3N0IDxuPiBlbnRyaWVzIGZyb20gc2hvcnRsb2ciCiBtc2dzdHIgImfhuq9uIG5o4bqtdCBrw70gduG7m2kgw610IG5o4bqldCA8bj4gbeG7pWMgdOG7qyBs4buHbmgg4oCcc2hvcnRsb2figJ0iCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc0CiBtc2dpZCAiYWxpYXMgZm9yIC0tbG9nIChkZXByZWNhdGVkKSIKIG1zZ3N0ciAiYsOtIGRhbmggY2hvIC0tbG9nIChraMO0bmcgxJHGsOG7o2MgZMO5bmcpIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzgKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NwogbXNnaWQgInRleHQiCiBtc2dzdHIgInbEg24gYuG6o24iCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc4CiBtc2dpZCAidXNlIDx0ZXh0PiBhcyBzdGFydCBvZiBtZXNzYWdlIgogbXNnc3RyICJkw7luZyA8dsSDbiBi4bqjbiB0aMaw4budbmc+IMSR4buDIGLhuq90IMSR4bqndSBnaGkgY2jDuiIKIAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjgwCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzkKIG1zZ2lkICJmaWxlIHRvIHJlYWQgZnJvbSIKIG1zZ3N0ciAidOG6rXAgdGluIMSR4buDIMSR4buNYyBk4buvIGxp4buHdSB04burIMSRw7MiCiAKICM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MTAKIG1zZ2lkICJnaXQgZm9yLWVhY2gtcmVmIFs8b3B0aW9ucz5dIFs8cGF0dGVybj5dIgotbXNnc3RyICJnaXQgZm9yLWVhY2gtcmVmIFs8Y8OhYy10w7l5LWNo4buNbj5dIFs8beG6q3U+XSIKK21zZ3N0ciAiZ2l0IGZvci1lYWNoLXJlZiBbPGPDoWMgdMO5eSBjaOG7jW4+XSBbPG3huqt1Pl0iCiAKICM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MTEKIG1zZ2lkICJnaXQgZm9yLWVhY2gtcmVmIFstLXBvaW50cy1hdCA8b2JqZWN0Pl0iCkBAIC0xMTE4NSwxMTAgKzE0MTM3LDI5OCBAQAogbXNnaWQgInNob3cgb25seSA8bj4gbWF0Y2hlZCByZWZzIgogbXNnc3RyICJoaeG7g24gdGjhu4sgY2jhu4kgPG4+IHRoYW0gY2hp4bq/dSBraOG7m3AiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzkgYnVpbHRpbi90YWcuYzo0MjQKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzkgYnVpbHRpbi90YWcuYzo0MzkKIG1zZ2lkICJyZXNwZWN0IGZvcm1hdCBjb2xvcnMiCiBtc2dzdHIgImPDoWMgbcOgdSDEkeG7i25oIGThuqFuZyBsxrB1IHTDom0iCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDMKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggcG9pbnRzIGF0IHRoZSBnaXZlbiBvYmplY3QiCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyBjw6FjIHRoYW0gY2hp4bq/dSBtw6AgbsOzIGNo4buJIMSR4bq/biDEkeG7kWkgdMaw4bujbmcgxJHDoyBjaG8iCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDUKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDQKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgdGhhdCBhcmUgbWVyZ2VkIgogbXNnc3RyICJjaOG7iSBoaeG7g24gdGjhu4sgbmjhu69uZyB0aGFtIGNoaeG6v3UgbcOgIG7DsyDEkcaw4bujYyBow7JhIHRy4buZbiIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NgorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NQogbXNnaWQgInByaW50IG9ubHkgcmVmcyB0aGF0IGFyZSBub3QgbWVyZ2VkIgogbXNnc3RyICJjaOG7iSBoaeG7g24gdGjhu4sgbmjhu69uZyB0aGFtIGNoaeG6v3UgbcOgIG7DsyBraMO0bmcgxJHGsOG7o2MgaMOyYSB0cuG7mW4iCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDcKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDYKIG1zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICJjaOG7iSBoaeG7g24gdGjhu4sgbmjhu69uZyB0aGFtIGNoaeG6v3UgbcOgIG7DsyBjaOG7qWEgbOG6p24gY2h1eeG7g24gZ2lhbyIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OAorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NwogbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyBuaOG7r25nIHRoYW0gY2hp4bq/dSBtw6AgbsOzIGtow7RuZyBjaOG7qWEgbOG6p24gY2h1eeG7g24gZ2lhbyIKIAotIzogYnVpbHRpbi9mc2NrLmM6NTk4CisjOiBidWlsdGluL2ZzY2suYzo2OCBidWlsdGluL2ZzY2suYzoxNDcgYnVpbHRpbi9mc2NrLmM6MTQ4Cittc2dpZCAidW5rbm93biIKK21zZ3N0ciAia2jDtG5nIGhp4buDdSIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gZXJyb3IgaW4gdHJlZSAwMWJmZGE6IDxtb3JlIGV4cGxhbmF0aW9uPgorIzogYnVpbHRpbi9mc2NrLmM6MTAwIGJ1aWx0aW4vZnNjay5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiAlcyAlczogJXMiCittc2dzdHIgImzhu5dpIHRyb25nICVzICVzOiAlcyIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gd2FybmluZyBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FybmluZyBpbiAlcyAlczogJXMiCittc2dzdHIgImPDsyBj4bqjbmggYsOhbyB0cm9uZyAlcyAlczogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE0MyBidWlsdGluL2ZzY2suYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiYnJva2VuIGxpbmsgZnJvbSAlN3MgJXMiCittc2dzdHIgImxpw6puIGvhur90IGfDo3kgdOG7qyAlN3MgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjE1NQorbXNnaWQgIndyb25nIG9iamVjdCB0eXBlIGluIGxpbmsiCittc2dzdHIgImtp4buDdSDEkeG7kWkgdMaw4bujbmcgc2FpIHRyb25nIGxpw6puIGvhur90IgorCisjOiBidWlsdGluL2ZzY2suYzoxNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImJyb2tlbiBsaW5rIGZyb20gJTdzICVzXG4iCisiICAgICAgICAgICAgICB0byAlN3MgJXMiCittc2dzdHIgIiIKKyJsacOqbiBr4bq/dCBnw6N5IHThu6sgJTdzICVzIFxuIgorIiAgICAgICAgICAgICAgdOG7m2kgJTdzICVzIgorCisjOiBidWlsdGluL2ZzY2suYzoyODIKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyAlcyIKK21zZ3N0ciAidGhp4bq/dSAlcyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVhY2hhYmxlICVzICVzIgorbXNnc3RyICJraMO0bmcgdGnhur9wIGPhuq1uIMSRxrDhu6NjICVzICVzIgorCisjOiBidWlsdGluL2ZzY2suYzozMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGFuZ2xpbmcgJXMgJXMiCittc2dzdHIgImRhbmdsaW5nICVzICVzIgorCisjOiBidWlsdGluL2ZzY2suYzozMzkKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGxvc3QtZm91bmQiCittc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyBsb3N0LWZvdW5kIgorCisjOiBidWlsdGluL2ZzY2suYzozNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgaG/DoG4gdGjDoG5oIOKAnCVz4oCdIgorCisjOiBidWlsdGluL2ZzY2suYzozNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMiCittc2dzdHIgIsSQYW5nIGtp4buDbSB0cmEgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQwNQorIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyBjb25uZWN0aXZpdHkgKCVkIG9iamVjdHMpIgorbXNnc3RyICLEkGFuZyBraeG7g20gdHJhIGvhur90IG7hu5FpICglZCDEkeG7kWkgdMaw4bujbmcpIgorCisjOiBidWlsdGluL2ZzY2suYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMgJXMiCittc2dzdHIgIsSQYW5nIGtp4buDbSB0cmEgJXMgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQyOQorbXNnaWQgImJyb2tlbiBsaW5rcyIKK21zZ3N0ciAiY8OhYyBsacOqbiBr4bq/dCBi4buLIGfhuqt5IgorCisjOiBidWlsdGluL2ZzY2suYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAicm9vdCAlcyIKK21zZ3N0ciAiZ+G7kWMgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQ0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ0YWdnZWQgJXMgJXMgKCVzKSBpbiAlcyIKK21zZ3N0ciAixJHDoyDEkcOhbmggdGjhursgJXMgJXMgKCVzKSB0cm9uZyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgY29ycnVwdCBvciBtaXNzaW5nIgorbXNnc3RyICIlczogxJHhu5FpIHTGsOG7o25nIHRoaeG6v3UgaGF5IGjhu49uZyIKKworIzogYnVpbHRpbi9mc2NrLmM6NTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHJlZmxvZyBlbnRyeSAlcyIKK21zZ3N0ciAiJXM6IG3hu6VjIHJlZmxvZyBraMO0bmcgaOG7o3AgbOG7hyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIHJlZmxvZyAlcy0+JXMiCittc2dzdHIgIsSQYW5nIGtp4buDbSB0cmEgdmnhu4djIMSR4buVaSB0w6puIGPhu6dhIOKAnCVz4oCdIHRow6BuaCDigJwlc+KAnSIKKworIzogYnVpbHRpbi9mc2NrLmM6NTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHNoYTEgcG9pbnRlciAlcyIKK21zZ3N0ciAiJXM6IGNvbiB0cuG7jyBzaGExIGtow7RuZyBo4bujcCBs4buHICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo1NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG5vdCBhIGNvbW1pdCIKK21zZ3N0ciAiJXM6IGtow7RuZyBwaOG6o2kgbMOgIG3hu5l0IGzhuqduIGNodXnhu4NuIGdpYW8iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYwOQorbXNnaWQgIm5vdGljZTogTm8gZGVmYXVsdCByZWZlcmVuY2VzIgorbXNnc3RyICJj4bqjbmggYsOhbzogS2jDtG5nIGPDsyBjw6FjIHRoYW0gY2hp4bq/dSBt4bq3YyDEkeG7i25oIgorCisjOiBidWlsdGluL2ZzY2suYzo2MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3Npbmc6ICVzIgorbXNnc3RyICIlczogdGhp4bq/dSDEkeG7kWkgdMaw4bujbmcgaG/hurdjIGjhu49uZzogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IGNvdWxkIG5vdCBiZSBwYXJzZWQ6ICVzIgorbXNnc3RyICIlczoga2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIGPDuiDEkeG7kWkgdMaw4bujbmc6ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo2NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHNoYTEgZmlsZTogJXMiCittc2dzdHIgInThuq1wIHRpbiBzaGExIHNhaTogJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY3MgorbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcnkiCittc2dzdHIgIsSQYW5nIGtp4buDbSB0cmEgdGjGsCBt4bulYyDEkeG7kWkgdMaw4bujbmciCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY3NQogbXNnaWQgIkNoZWNraW5nIG9iamVjdCBkaXJlY3RvcmllcyIKIG1zZ3N0ciAixJBhbmcga2nhu4NtIHRyYSBjw6FjIHRoxrAgbeG7pWMgxJHhu5FpIHTGsOG7o25nIgogCi0jOiBidWlsdGluL2ZzY2suYzo2OTMKLW1zZ2lkICJnaXQgZnNjayBbPG9wdGlvbnM+XSBbPG9iamVjdD4uLi5dIgotbXNnc3RyICJnaXQgZnNjayBbPGPDoWMtdMO5eS1jaOG7jW4+XSBbPMSR4buRaS10xrDhu6NuZz7igKZdIgorIzogYnVpbHRpbi9mc2NrLmM6NjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzIGxpbmsiCittc2dzdHIgIsSQYW5nIGzhuqV5IGxpw6puIGvhur90ICVzIgogCi0jOiBidWlsdGluL2ZzY2suYzo2OTkKKyM6IGJ1aWx0aW4vZnNjay5jOjY5NSBidWlsdGluL2luZGV4LXBhY2suYzo4NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAlcyIKK21zZ3N0ciAiJXMga2jDtG5nIGjhu6NwIGzhu4ciCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcwMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwb2ludHMgdG8gc29tZXRoaW5nIHN0cmFuZ2UgKCVzKSIKK21zZ3N0ciAiJXMgY2jhu4kgxJHhur9uIHRo4bupIGfDrCDEkcOzIHhhIGzhuqEgKCVzKSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZXRhY2hlZCBIRUFEIHBvaW50cyBhdCBub3RoaW5nIgorbXNnc3RyICIlczogSEVBRCDEkcOjIHTDoWNoIHLhu51pIGtow7RuZyBjaOG7iSB2w6BvIMSRw6J1IGPhuqMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJub3RpY2U6ICVzIHBvaW50cyB0byBhbiB1bmJvcm4gYnJhbmNoICglcykiCittc2dzdHIgImNow7ogw706ICVzIGNo4buJIMSR4bq/biBt4buZdCBuaMOhbmggY2jGsGEgc2luaCAoJXMpIgorCisjOiBidWlsdGluL2ZzY2suYzo3MjQKK21zZ2lkICJDaGVja2luZyBjYWNoZSB0cmVlIgorbXNnc3RyICLEkGFuZyBraeG7g20gdHJhIGPDonkgbmjhu5sgdOG6oW0iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjcyOQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW52YWxpZCBzaGExIHBvaW50ZXIgaW4gY2FjaGUtdHJlZSIKK21zZ3N0ciAiJXM6IGNvbiB0cuG7jyBzaGExIGtow7RuZyBo4bujcCBs4buHIHRyb25nIGNhY2hlLXRyZWUiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjczOAorbXNnaWQgIm5vbi10cmVlIGluIGNhY2hlLXRyZWUiCittc2dzdHIgIm5vbi10cmVlIHRyb25nIGNhY2hlLXRyZWUiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc2OQorbXNnaWQgImdpdCBmc2NrIFs8b3B0aW9ucz5dIFs8b2JqZWN0Pi4uLl0iCittc2dzdHIgImdpdCBmc2NrIFs8Y8OhYyB0w7l5IGNo4buNbj5dIFs8xJHhu5FpLXTGsOG7o25nPuKApl0iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc3NQogbXNnaWQgInNob3cgdW5yZWFjaGFibGUgb2JqZWN0cyIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIGPDoWMgxJHhu5FpIHTGsOG7o25nIGtow7RuZyB0aOG7gyDEkeG7jWMgxJHGsOG7o2MiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMAorIzogYnVpbHRpbi9mc2NrLmM6Nzc2CiBtc2dpZCAic2hvdyBkYW5nbGluZyBvYmplY3RzIgogbXNnc3RyICJoaeG7g24gdGjhu4sgY8OhYyDEkeG7kWkgdMaw4bujbmcga2jDtG5nIMSRxrDhu6NjIHF14bqjbiBsw70iCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMQorIzogYnVpbHRpbi9mc2NrLmM6Nzc3CiBtc2dpZCAicmVwb3J0IHRhZ3MiCiBtc2dzdHIgImLDoW8gY8OhbyBjw6FjIHRo4bq7IgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDIKKyM6IGJ1aWx0aW4vZnNjay5jOjc3OAogbXNnaWQgInJlcG9ydCByb290IG5vZGVzIgogbXNnc3RyICJiw6FvIGPDoW8gbm9kZSBn4buRYyIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzAzCisjOiBidWlsdGluL2ZzY2suYzo3NzkKIG1zZ2lkICJtYWtlIGluZGV4IG9iamVjdHMgaGVhZCBub2RlcyIKIG1zZ3N0ciAidOG6oW8g4oCcaW5kZXggb2JqZWN0cyBoZWFkIG5vZGVz4oCdIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDQKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MAogbXNnaWQgIm1ha2UgcmVmbG9ncyBoZWFkIG5vZGVzIChkZWZhdWx0KSIKIG1zZ3N0ciAidOG6oW8g4oCccmVmbG9ncyBoZWFkIG5vZGVz4oCdICht4bq3YyDEkeG7i25oKSIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzA1CisjOiBidWlsdGluL2ZzY2suYzo3ODEKIG1zZ2lkICJhbHNvIGNvbnNpZGVyIHBhY2tzIGFuZCBhbHRlcm5hdGUgb2JqZWN0cyIKIG1zZ3N0ciAiY8WpbmcgY8OibiBuaOG6r2MgxJHhur9uIGPDoWMgxJHhu5FpIHTGsOG7o25nIGfDs2kgdsOgIHRoYXkgdGjhur8iCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwNgorIzogYnVpbHRpbi9mc2NrLmM6NzgyCiBtc2dpZCAiY2hlY2sgb25seSBjb25uZWN0aXZpdHkiCiBtc2dzdHIgImNo4buJIGtp4buDbSB0cmEga+G6v3QgbuG7kWkiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwNworIzogYnVpbHRpbi9mc2NrLmM6NzgzCiBtc2dpZCAiZW5hYmxlIG1vcmUgc3RyaWN0IGNoZWNraW5nIgogbXNnc3RyICJjaG8gcGjDqXAga2nhu4NtIHRyYSBo4bqhbiBjaOG6vyBoxqFuIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDkKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NQogbXNnaWQgIndyaXRlIGRhbmdsaW5nIG9iamVjdHMgaW4gLmdpdC9sb3N0LWZvdW5kIgogbXNnc3RyICJnaGkgY8OhYyDEkeG7kWkgdMaw4bujbmcga2jDtG5nIMSRxrDhu6NjIHF14bqjbiBsw70gdHJvbmcgLmdpdC9sb3N0LWZvdW5kIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MTAgYnVpbHRpbi9wcnVuZS5jOjExMAorIzogYnVpbHRpbi9mc2NrLmM6Nzg2IGJ1aWx0aW4vcHJ1bmUuYzoxMzIKIG1zZ2lkICJzaG93IHByb2dyZXNzIgogbXNnc3RyICJoaeG7g24gdGjhu4sgcXXDoSB0csOsbmgiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcxMQorIzogYnVpbHRpbi9mc2NrLmM6Nzg3CiBtc2dpZCAic2hvdyB2ZXJib3NlIG5hbWVzIGZvciByZWFjaGFibGUgb2JqZWN0cyIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIHTDqm4gY2hpIHRp4bq/dCBjaG8gY8OhYyDEkeG7kWkgdMaw4bujbmcgxJHhu41jIMSRxrDhu6NjIgogCi0jOiBidWlsdGluL2ZzY2suYzo3NzYKKyM6IGJ1aWx0aW4vZnNjay5jOjg0NiBidWlsdGluL2luZGV4LXBhY2suYzoyMjUKIG1zZ2lkICJDaGVja2luZyBvYmplY3RzIgogbXNnc3RyICLEkGFuZyBraeG7g20gdHJhIGPDoWMgxJHhu5FpIHTGsOG7o25nIgogCi0jOiBidWlsdGluL2djLmM6MzQKKyM6IGJ1aWx0aW4vZnNjay5jOjg3NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IG1pc3NpbmciCittc2dzdHIgIiVzOiB0aGnhur91IMSR4buRaSB0xrDhu6NuZyIKKworIzogYnVpbHRpbi9mc2NrLmM6ODg1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFyYW1ldGVyOiBleHBlY3RlZCBzaGExLCBnb3QgJyVzJyIKK21zZ3N0ciAidGhhbSBz4buRIGtow7RuZyBo4bujcCBs4buHOiBj4bqnbiBzaGExLCBuaMawbmcgbOG6oWkgbmjhuq1uIMSRxrDhu6NjIOKAnCVz4oCdIgorCisjOiBidWlsdGluL2djLmM6MzUKIG1zZ2lkICJnaXQgZ2MgWzxvcHRpb25zPl0iCi1tc2dzdHIgImdpdCBnYyBbPGPDoWMtdMO5eS1jaOG7jW4+XSIKK21zZ3N0ciAiZ2l0IGdjIFs8Y8OhYyB0w7l5IGNo4buNbj5dIgogCiAjOiBidWlsdGluL2djLmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIGZzdGF0ICVzOiAlcyIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIGzhuqV5IHRow7RuZyB0aW4gdGjhu5FuZyBrw6ogduG7gSB04bqtcCB0aW4gJXM6ICVzIgogCi0jOiBidWlsdGluL2djLmM6NDYxIGJ1aWx0aW4vaW5pdC1kYi5jOjU1CisjOiBidWlsdGluL2djLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSAnJXMnIHZhbHVlICclcyciCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSBwaMOibiB0w61jaCDigJwlc+KAnSBnacOhIHRy4buLIOKAnCVz4oCdIgorCisjOiBidWlsdGluL2djLmM6NDc1IGJ1aWx0aW4vaW5pdC1kYi5jOjU1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGF0ICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSB0aMO0bmcgdGluIHRo4buRbmcga8OqIHbhu4Eg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vZ2MuYzo0NzAgYnVpbHRpbi9ub3Rlcy5jOjI0MCBidWlsdGluL3RhZy5jOjUxMAorIzogYnVpbHRpbi9nYy5jOjQ4NCBidWlsdGluL25vdGVzLmM6MjQwIGJ1aWx0aW4vdGFnLmM6NTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vZ2MuYzo0NzcKKyM6IGJ1aWx0aW4vZ2MuYzo0OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBsYXN0IGdjIHJ1biByZXBvcnRlZCB0aGUgZm9sbG93aW5nLiBQbGVhc2UgY29ycmVjdCB0aGUgcm9vdCBjYXVzZVxuIgpAQCAtMTEzMDMsNTQgKzE0NDQzLDU0IEBACiAiXG4iCiAiJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1MTkKKyM6IGJ1aWx0aW4vZ2MuYzo1MzkKIG1zZ2lkICJwcnVuZSB1bnJlZmVyZW5jZWQgb2JqZWN0cyIKIG1zZ3N0ciAieMOzYSBi4buPIGPDoWMgxJHhu5FpIHTGsOG7o25nIGtow7RuZyDEkcaw4bujYyB0aGFtIGNoaeG6v3UiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1MjEKKyM6IGJ1aWx0aW4vZ2MuYzo1NDEKIG1zZ2lkICJiZSBtb3JlIHRob3JvdWdoIChpbmNyZWFzZWQgcnVudGltZSkiCiBtc2dzdHIgImPhuqluIHRo4bqtbiBoxqFuIG7hu69hICh0xINuZyB0aOG7nWkgZ2lhbiBjaOG6oXkpIgogCi0jOiBidWlsdGluL2djLmM6NTIyCisjOiBidWlsdGluL2djLmM6NTQyCiBtc2dpZCAiZW5hYmxlIGF1dG8tZ2MgbW9kZSIKIG1zZ3N0ciAiYuG6rXQgY2jhur8gxJHhu5kgYXV0by1nYyIKIAotIzogYnVpbHRpbi9nYy5jOjUyNQorIzogYnVpbHRpbi9nYy5jOjU0NQogbXNnaWQgImZvcmNlIHJ1bm5pbmcgZ2MgZXZlbiBpZiB0aGVyZSBtYXkgYmUgYW5vdGhlciBnYyBydW5uaW5nIgogbXNnc3RyICJideG7mWMgZ2MgY2jhuqF5IG5nYXkgY+G6oyBraGkgY8OzIHRp4bq/biB0csOsbmggZ2Mga2jDoWMgxJFhbmcgY2jhuqF5IgogCi0jOiBidWlsdGluL2djLmM6NTI4CisjOiBidWlsdGluL2djLmM6NTQ4CiBtc2dpZCAicmVwYWNrIGFsbCBvdGhlciBwYWNrcyBleGNlcHQgdGhlIGxhcmdlc3QgcGFjayIKIG1zZ3N0ciAixJHDs25nIGfDs2kgbOG6oWkgdOG6pXQgY+G6oyBjw6FjIGfDs2kga2jDoWMgbmdv4bqhaSB0cuG7qyBnw7NpIGzhu5tuIG5o4bqldCIKIAotIzogYnVpbHRpbi9nYy5jOjU0NQorIzogYnVpbHRpbi9nYy5jOjU2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcGFyc2UgZ2MubG9nZXhwaXJ5IHZhbHVlICVzIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgcGjDom4gdMOtY2ggZ2nDoSB0cuG7iyBnYy5sb2dleHBpcnkgJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NTYKKyM6IGJ1aWx0aW4vZ2MuYzo1NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHBhcnNlIHBydW5lIGV4cGlyeSB2YWx1ZSAlcyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHBow6JuIHTDrWNoIGdpw6EgdHLhu4sgcHJ1bmUgJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NzYKKyM6IGJ1aWx0aW4vZ2MuYzo1OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0byBwYWNraW5nIHRoZSByZXBvc2l0b3J5IGluIGJhY2tncm91bmQgZm9yIG9wdGltdW0gcGVyZm9ybWFuY2UuXG4iCiBtc2dzdHIgIiIKICJU4buxIMSR4buZbmcgxJHDs25nIGfDs2kga2hvIGNo4bupYSB0csOqbiBu4buBbiBo4buHIHRo4buRbmcgxJHhu4MgdOG7kWkgxrB1IGjDs2EgaGnhu4d1IHN14bqldCBsw6BtICIKICJ2aeG7h2MuXG4iCiAKLSM6IGJ1aWx0aW4vZ2MuYzo1NzgKKyM6IGJ1aWx0aW4vZ2MuYzo1OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0byBwYWNraW5nIHRoZSByZXBvc2l0b3J5IGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgogbXNnc3RyICJU4buxIMSR4buZbmcgxJHDs25nIGfDs2kga2hvIGNo4bupYSDEkeG7gyB04buRaSDGsHUgaMOzYSBoaeG7h3Ugc3XhuqV0IGzDoG0gdmnhu4djLlxuIgogCi0jOiBidWlsdGluL2djLmM6NTc5CisjOiBidWlsdGluL2djLmM6NTk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNlZSBcImdpdCBoZWxwIGdjXCIgZm9yIG1hbnVhbCBob3VzZWtlZXBpbmcuXG4iCiBtc2dzdHIgIlhlbSBcImdpdCBoZWxwIGdjXCIgxJHhu4MgY8OzIGjGsOG7m25nIGThuqtuIGPhu6UgdGjhu4MgduG7gSBjw6FjaCBk4buNbiBk4bq5cCBraG8gZ2l0LlxuIgogCi0jOiBidWlsdGluL2djLmM6NjE5CisjOiBidWlsdGluL2djLmM6NjM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJnYyBpcyBhbHJlYWR5IHJ1bm5pbmcgb24gbWFjaGluZSAnJXMnIHBpZCAlPFBSSXVNQVg+ICh1c2UgLS1mb3JjZSBpZiBub3QpIgpAQCAtMTEzNTgsMjMgKzE0NDk4LDIzIEBACiAiZ2MgxJFhbmcgxJHGsOG7o2MgdGjhu7FjIGhp4buHbiB0csOqbiBtw6F5IOKAnCVz4oCdIHBpZCAlPFBSSXVNQVg+IChkw7luZyAtLWZvcmNlIG7hur91IGtow7RuZyAiCiAicGjhuqNpIHRo4bq/KSIKIAotIzogYnVpbHRpbi9nYy5jOjY3MAorIzogYnVpbHRpbi9nYy5jOjY5NAogbXNnaWQgIiIKICJUaGVyZSBhcmUgdG9vIG1hbnkgdW5yZWFjaGFibGUgbG9vc2Ugb2JqZWN0czsgcnVuICdnaXQgcHJ1bmUnIHRvIHJlbW92ZSB0aGVtLiIKIG1zZ3N0ciAiIgogIkPDsyBxdcOhIG5oaeG7gXUgxJHhu5FpIHTGsOG7o25nIHThu7EgZG8ga2jDtG5nIMSRxrDhu6NjIGTDuW5nIMSR4bq/bjsgaMOjeSBjaOG6oXkgbOG7h25oIOKAnGdpdCBwcnVuZeKAnSAiCiAixJHhu4MgeMOzYSBi4buPIGNow7puZyDEkWkuIgogCi0jOiBidWlsdGluL2dyZXAuYzoyOAorIzogYnVpbHRpbi9ncmVwLmM6MzAKIG1zZ2lkICJnaXQgZ3JlcCBbPG9wdGlvbnM+XSBbLWVdIDxwYXR0ZXJuPiBbPHJldj4uLi5dIFtbLS1dIDxwYXRoPi4uLl0iCi1tc2dzdHIgImdpdCBncmVwIFs8Y8OhYy10w7l5LWNo4buNbj5dIFstZV0gPG3huqt1PiBbPHJldj7igKZdIFtbLS1dIDzEkcaw4budbmctZOG6q24+4oCmXSIKK21zZ3N0ciAiZ2l0IGdyZXAgWzxjw6FjIHTDuXkgY2jhu41uPl0gWy1lXSA8beG6q3U+IFs8cmV2PuKApl0gW1stLV0gPC/Ekcaw4budbmcvZOG6q24+4oCmXSIKIAotIzogYnVpbHRpbi9ncmVwLmM6MjI0CisjOiBidWlsdGluL2dyZXAuYzoyMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ3JlcDogZmFpbGVkIHRvIGNyZWF0ZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJncmVwOiBn4bq3cCBs4buXaSB04bqhbyB0dXnhur9uICh0aHJlYWQpOiAlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6Mjc4CisjOiBidWlsdGluL2dyZXAuYzoyNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBudW1iZXIgb2YgdGhyZWFkcyBzcGVjaWZpZWQgKCVkKSBmb3IgJXMiCiBtc2dzdHIgInPhu5EgdHV54bq/biDEkcOjIGNobyBraMO0bmcgaOG7o3AgbOG7hyAoJWQpIGNobyAlcyIKQEAgLTExMzgzLDI2MyArMTQ1MjMsMjYzIEBACiAjLiB2YXJpYWJsZSBmb3IgdHdlYWtpbmcgdGhyZWFkcywgY3VycmVudGx5CiAjLiBncmVwLnRocmVhZHMKICMuCi0jOiBidWlsdGluL2dyZXAuYzoyODYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUwNiBidWlsdGluL2luZGV4LXBhY2suYzoxNjk3Ci0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MTkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjI4NyBidWlsdGluL2luZGV4LXBhY2suYzoxNTM4IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MzEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyB0aHJlYWRzIHN1cHBvcnQsIGlnbm9yaW5nICVzIgogbXNnc3RyICJraMO0bmcgaOG7lyB0cuG7oyDEkWEgdHV54bq/biwgYuG7jyBxdWEgJXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjQ1OCBidWlsdGluL2dyZXAuYzo1NzkgYnVpbHRpbi9ncmVwLmM6NjIwCisjOiBidWlsdGluL2dyZXAuYzo0NTMgYnVpbHRpbi9ncmVwLmM6NTc4IGJ1aWx0aW4vZ3JlcC5jOjYxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCB0cmVlICglcykiCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgY8OieSAoJXMpIgogCi0jOiBidWlsdGluL2dyZXAuYzo2MzUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjYzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ3JlcCBmcm9tIG9iamVjdCBvZiB0eXBlICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdGjhu7FjIGhp4buHbiBs4buHbmggZ3JlcCAobOG7jWMgdMOsbSkgdOG7qyDEkeG7kWkgdMaw4bujbmcgdGh14buZYyBraeG7g3UgJXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjcwMQorIzogYnVpbHRpbi9ncmVwLmM6NzA0CiAjLCBjLWZvcm1hdAogbXNnaWQgInN3aXRjaCBgJWMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCiBtc2dzdHIgImNodXnhu4NuIMSR4bq/biDigJwlY+KAnSBj4bqnbiBt4buZdCBnacOhIHRy4buLIGLhurFuZyBz4buRIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwMwogbXNnaWQgInNlYXJjaCBpbiBpbmRleCBpbnN0ZWFkIG9mIGluIHRoZSB3b3JrIHRyZWUiCiBtc2dzdHIgInTDrG0gdHJvbmcgYuG6o25nIG3hu6VjIGzhu6VjIHRoYXkgdsOsIHRyb25nIGPDonkgbMOgbSB2aeG7h2MiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwMgorIzogYnVpbHRpbi9ncmVwLmM6ODA1CiBtc2dpZCAiZmluZCBpbiBjb250ZW50cyBub3QgbWFuYWdlZCBieSBnaXQiCiBtc2dzdHIgInTDrG0gdHJvbmcgbuG7mWkgZHVuZyBraMO0bmcgxJHGsOG7o2MgcXXhuqNuIGzDvSBi4bufaSBnaXQiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwNAorIzogYnVpbHRpbi9ncmVwLmM6ODA3CiBtc2dpZCAic2VhcmNoIGluIGJvdGggdHJhY2tlZCBhbmQgdW50cmFja2VkIGZpbGVzIgogbXNnc3RyICJ0w6xtIGtp4bq/bSBjw6FjIHThuq1wIHRpbiDEkcaw4bujYyB2w6AgY2jGsGEgxJHGsOG7o2MgdGhlbyBkw7VpIGThuqV1IHbhur90IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwOQogbXNnaWQgImlnbm9yZSBmaWxlcyBzcGVjaWZpZWQgdmlhICcuZ2l0aWdub3JlJyIKIG1zZ3N0ciAiY8OhYyB04bqtcCB0aW4gYuG7iyBi4buPIHF1YSDEkcaw4bujYyBjaOG7iSDEkeG7i25oIHRow7RuZyBxdWEg4oCcLmdpdGlnbm9yZeKAnSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODA4CisjOiBidWlsdGluL2dyZXAuYzo4MTEKIG1zZ2lkICJyZWN1cnNpdmVseSBzZWFyY2ggaW4gZWFjaCBzdWJtb2R1bGUiCiBtc2dzdHIgInTDrG0ga2nhur9tIMSR4buHIHF1eSB0cm9uZyB04burbmcgbcO0LcSRdW4tY29uIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxNAogbXNnaWQgInNob3cgbm9uLW1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICJoaeG7g24gdGjhu4sgbmjhu69uZyBkw7JuZyBraMO0bmcga2jhu5twIHbhu5tpIG3huqt1IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxNgogbXNnaWQgImNhc2UgaW5zZW5zaXRpdmUgbWF0Y2hpbmciCiBtc2dzdHIgInBow6JuIGJp4buHdCBIT0EvdGjGsOG7nW5nIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MTUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxOAogbXNnaWQgIm1hdGNoIHBhdHRlcm5zIG9ubHkgYXQgd29yZCBib3VuZGFyaWVzIgogbXNnc3RyICJjaOG7iSBraOG7m3AgbeG6q3UgdOG6oWkgxJHGsOG7nW5nIHJhbmggZ2nhu5tpIHThu6siCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxNworIzogYnVpbHRpbi9ncmVwLmM6ODIwCiBtc2dpZCAicHJvY2VzcyBiaW5hcnkgZmlsZXMgYXMgdGV4dCIKIG1zZ3N0ciAieOG7rSBsw70gdOG6rXAgdGluIG5o4buLIHBow6JuIG5oxrAgbMOgIGThuqFuZyB2xINuIGLhuqNuIHRoxrDhu51uZyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODE5CisjOiBidWlsdGluL2dyZXAuYzo4MjIKIG1zZ2lkICJkb24ndCBtYXRjaCBwYXR0ZXJucyBpbiBiaW5hcnkgZmlsZXMiCiBtc2dzdHIgImtow7RuZyBraOG7m3AgbeG6q3UgdHJvbmcgY8OhYyB04bqtcCB0aW4gbmjhu4sgcGjDom4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgyMgorIzogYnVpbHRpbi9ncmVwLmM6ODI1CiBtc2dpZCAicHJvY2VzcyBiaW5hcnkgZmlsZXMgd2l0aCB0ZXh0Y29udiBmaWx0ZXJzIgogbXNnc3RyICJ44butIGzDvSB04bqtcCB0aW4gbmjhu4sgcGjDom4gduG7m2kgY8OhYyBi4buZIGzhu41jIOKAnHRleHRjb2524oCdIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyNwogbXNnaWQgInNlYXJjaCBpbiBzdWJkaXJlY3RvcmllcyAoZGVmYXVsdCkiCiBtc2dzdHIgInTDrG0ga2nhur9tIHRyb25nIHRoxrAgbeG7pWMgY29uICht4bq3YyDEkeG7i25oKSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODI2CisjOiBidWlsdGluL2dyZXAuYzo4MjkKIG1zZ2lkICJkZXNjZW5kIGF0IG1vc3QgPGRlcHRoPiBsZXZlbHMiCiBtc2dzdHIgImjhuqEgeHXhu5FuZyDDrXQgbmjhuqV0IGzDoCBt4bupYyA8c8OidT4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzMAorIzogYnVpbHRpbi9ncmVwLmM6ODMzCiBtc2dpZCAidXNlIGV4dGVuZGVkIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCiBtc2dzdHIgImTDuW5nIGJp4buDdSB0aOG7qWMgY2jDrW5oIHF1aSBQT1NJWCBjw7MgbeG7nyBy4buZbmciCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzMworIzogYnVpbHRpbi9ncmVwLmM6ODM2CiBtc2dpZCAidXNlIGJhc2ljIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbnMgKGRlZmF1bHQpIgogbXNnc3RyICJz4butIGThu6VuZyBiaeG7g3UgdGjhu6ljIGNow61uaCBxdXkga2nhu4N1IFBPU0lYICht4bq3YyDEkeG7i25oKSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODM2CisjOiBidWlsdGluL2dyZXAuYzo4MzkKIG1zZ2lkICJpbnRlcnByZXQgcGF0dGVybnMgYXMgZml4ZWQgc3RyaW5ncyIKIG1zZ3N0ciAiZGnhu4VuIGThu4tjaCBjw6FjIG3huqt1IG5oxrAgbMOgIGNodeG7l2kgY+G7kSDEkeG7i25oIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MzkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0MgogbXNnaWQgInVzZSBQZXJsLWNvbXBhdGlibGUgcmVndWxhciBleHByZXNzaW9ucyIKIG1zZ3N0ciAic+G7rSBk4bulbmcgYmnhu4N1IHRo4bupYyBjaMOtbmggcXV5IHTGsMahbmcgdGjDrWNoIFBlcmwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0MgorIzogYnVpbHRpbi9ncmVwLmM6ODQ1CiBtc2dpZCAic2hvdyBsaW5lIG51bWJlcnMiCiBtc2dzdHIgImhp4buDbiB0aOG7iyBz4buRIGPhu6dhIGTDsm5nIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NgogbXNnaWQgInNob3cgY29sdW1uIG51bWJlciBvZiBmaXJzdCBtYXRjaCIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIHPhu5EgY+G7mXQgY+G7p2Ega2jhu5twIHbhu5tpIG3huqt1IMSR4bqndSB0acOqbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQ0CisjOiBidWlsdGluL2dyZXAuYzo4NDcKIG1zZ2lkICJkb24ndCBzaG93IGZpbGVuYW1lcyIKIG1zZ3N0ciAia2jDtG5nIGhp4buDbiB0aOG7iyB0w6puIHThuq1wIHRpbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQ1CisjOiBidWlsdGluL2dyZXAuYzo4NDgKIG1zZ2lkICJzaG93IGZpbGVuYW1lcyIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIGPDoWMgdMOqbiB04bqtcCB0aW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0NworIzogYnVpbHRpbi9ncmVwLmM6ODUwCiBtc2dpZCAic2hvdyBmaWxlbmFtZXMgcmVsYXRpdmUgdG8gdG9wIGRpcmVjdG9yeSIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIHTDqm4gdOG6rXAgdGluIHTGsMahbmcgxJHhu5FpIHbhu5tpIHRoxrAgbeG7pWMgxJHhu4luaCAodG9wKSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQ5CisjOiBidWlsdGluL2dyZXAuYzo4NTIKIG1zZ2lkICJzaG93IG9ubHkgZmlsZW5hbWVzIGluc3RlYWQgb2YgbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyB0w6puIHThuq1wIHRpbiB0aGF5IHbDrCBuaOG7r25nIGTDsm5nIGto4bubcCB24bubaSBt4bqrdSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODUxCisjOiBidWlsdGluL2dyZXAuYzo4NTQKIG1zZ2lkICJzeW5vbnltIGZvciAtLWZpbGVzLXdpdGgtbWF0Y2hlcyIKIG1zZ3N0ciAixJHhu5NuZyBuZ2jEqWEgduG7m2kgLS1maWxlcy13aXRoLW1hdGNoZXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1NAorIzogYnVpbHRpbi9ncmVwLmM6ODU3CiBtc2dpZCAic2hvdyBvbmx5IHRoZSBuYW1lcyBvZiBmaWxlcyB3aXRob3V0IG1hdGNoIgogbXNnc3RyICJjaOG7iSBoaeG7g24gdGjhu4sgdMOqbiBjaG8gbmjhu69uZyB04bqtcCB0aW4ga2jDtG5nIGto4bubcCB24bubaSBt4bqrdSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODU2CisjOiBidWlsdGluL2dyZXAuYzo4NTkKIG1zZ2lkICJwcmludCBOVUwgYWZ0ZXIgZmlsZW5hbWVzIgogbXNnc3RyICJ0aMOqbSBOVUwgdsOgbyBzYXUgdMOqbiB04bqtcCB0aW4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1OQorIzogYnVpbHRpbi9ncmVwLmM6ODYyCiBtc2dpZCAic2hvdyBvbmx5IG1hdGNoaW5nIHBhcnRzIG9mIGEgbGluZSIKIG1zZ3N0ciAiY2jhu4kgaGnhu4NuIHRo4buLIG5o4buvbmcgcGjhuqduIGto4bubcCB24bubaSBt4bqrdSBj4bunYSBt4buZdCBkw7JuZyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODYxCisjOiBidWlsdGluL2dyZXAuYzo4NjQKIG1zZ2lkICJzaG93IHRoZSBudW1iZXIgb2YgbWF0Y2hlcyBpbnN0ZWFkIG9mIG1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICJoaeG7g24gdGjhu4sgc+G7kSBsxrDhu6NuZyBraOG7m3AgdGhheSB2w6wgbmjhu69uZyBkw7JuZyBraOG7m3AgduG7m2kgbeG6q3UiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2MgorIzogYnVpbHRpbi9ncmVwLmM6ODY1CiBtc2dpZCAiaGlnaGxpZ2h0IG1hdGNoZXMiCiBtc2dzdHIgInTDtCBzw6FuZyBwaOG6p24ga2jhu5twIG3huqt1IgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2NwogbXNnaWQgInByaW50IGVtcHR5IGxpbmUgYmV0d2VlbiBtYXRjaGVzIGZyb20gZGlmZmVyZW50IGZpbGVzIgogbXNnc3RyICJoaeG7g24gdGjhu4sgZMOybmcgdHLhu5FuZyBnaeG7r2EgY8OhYyBs4bqnbiBraOG7m3AgdOG7qyBjw6FjIHThuq1wIHRpbiBraMOhYyBiaeG7h3QiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2NgorIzogYnVpbHRpbi9ncmVwLmM6ODY5CiBtc2dpZCAic2hvdyBmaWxlbmFtZSBvbmx5IG9uY2UgYWJvdmUgbWF0Y2hlcyBmcm9tIHNhbWUgZmlsZSIKIG1zZ3N0ciAiIgogImhp4buDbiB0aOG7iyB0w6puIHThuq1wIHRpbiBt4buZdCBs4bqnbiBwaMOtYSB0csOqbiBjw6FjIGzhuqduIGto4bubcCB04burIGPDuW5nIG3hu5l0IHThuq1wIHRpbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODY5CisjOiBidWlsdGluL2dyZXAuYzo4NzIKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGJlZm9yZSBhbmQgYWZ0ZXIgbWF0Y2hlcyIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIDxuPiBkw7JuZyBu4buZaSBkdW5nIHBow61hIHRyxrDhu5tjIHbDoCBzYXUgY8OhYyBs4bqnbiBraOG7m3AiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg3MgorIzogYnVpbHRpbi9ncmVwLmM6ODc1CiBtc2dpZCAic2hvdyA8bj4gY29udGV4dCBsaW5lcyBiZWZvcmUgbWF0Y2hlcyIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIDxuPiBkw7JuZyBu4buZaSBkdW5nIHRyxrDhu5tjIGto4bubcCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODc0CisjOiBidWlsdGluL2dyZXAuYzo4NzcKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGFmdGVyIG1hdGNoZXMiCiBtc2dzdHIgImhp4buDbiB0aOG7iyA8bj4gZMOybmcgbuG7mWkgZHVuZyBzYXUga2jhu5twIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3OQogbXNnaWQgInVzZSA8bj4gd29ya2VyIHRocmVhZHMiCiBtc2dzdHIgImTDuW5nIDxuPiB0dXnhur9uIHRyw6xuaCBsw6BtIHZp4buHYyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODc3CisjOiBidWlsdGluL2dyZXAuYzo4ODAKIG1zZ2lkICJzaG9ydGN1dCBmb3IgLUMgTlVNIgogbXNnc3RyICJk4bqhbmcgdmnhur90IHThuq90IGPhu6dhIC1DIFPhu5AiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4MAorIzogYnVpbHRpbi9ncmVwLmM6ODgzCiBtc2dpZCAic2hvdyBhIGxpbmUgd2l0aCB0aGUgZnVuY3Rpb24gbmFtZSBiZWZvcmUgbWF0Y2hlcyIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIGTDsm5nIHbDs2kgdMOqbiBow6BtIHRyxrDhu5tjIGPDoWMgbOG6p24ga2jhu5twIgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4NQogbXNnaWQgInNob3cgdGhlIHN1cnJvdW5kaW5nIGZ1bmN0aW9uIgogbXNnc3RyICJoaeG7g24gdGjhu4sgaMOgbSBiYW8gcXVhbmgiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4NQorIzogYnVpbHRpbi9ncmVwLmM6ODg4CiBtc2dpZCAicmVhZCBwYXR0ZXJucyBmcm9tIGZpbGUiCiBtc2dzdHIgIsSR4buNYyBt4bqrdSB04burIHThuq1wLXRpbiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODg3CisjOiBidWlsdGluL2dyZXAuYzo4OTAKIG1zZ2lkICJtYXRjaCA8cGF0dGVybj4iCiBtc2dzdHIgIm1hdGNoIDxt4bqrdT4iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4OQorIzogYnVpbHRpbi9ncmVwLmM6ODkyCiBtc2dpZCAiY29tYmluZSBwYXR0ZXJucyBzcGVjaWZpZWQgd2l0aCAtZSIKIG1zZ3N0ciAidOG7lSBo4bujcCBt4bqrdSDEkcaw4bujYyBjaOG7iSByYSB24bubaSB0w7l5IGNo4buNbiAtZSIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTAxCisjOiBidWlsdGluL2dyZXAuYzo5MDQKIG1zZ2lkICJpbmRpY2F0ZSBoaXQgd2l0aCBleGl0IHN0YXR1cyB3aXRob3V0IG91dHB1dCIKIG1zZ3N0ciAixJHGsGEgcmEgZ+G7o2kgw70gduG7m2kgdHLhuqFuZyB0aMOhaSB0aG/DoXQgbcOgIGtow7RuZyBjw7Mga+G6v3QgeHXhuqV0IgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwNgogbXNnaWQgInNob3cgb25seSBtYXRjaGVzIGZyb20gZmlsZXMgdGhhdCBtYXRjaCBhbGwgcGF0dGVybnMiCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyBuaOG7r25nIGPDoWkga2jhu5twIHThu6sgdOG6rXAgdGluIG3DoCBuw7Mga2jhu5twIHRvw6BuIGLhu5kgY8OhYyBt4bqrdSIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTA1CisjOiBidWlsdGluL2dyZXAuYzo5MDgKIG1zZ2lkICJzaG93IHBhcnNlIHRyZWUgZm9yIGdyZXAgZXhwcmVzc2lvbiIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIGPDonkgcGjDom4gdMOtY2ggY8O6IHBow6FwIGNobyBiaeG7g3UgdGjhu6ljIOKAnGdyZXDigJ0gKHTDrG0ga2nhur9tKSIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTA5CisjOiBidWlsdGluL2dyZXAuYzo5MTIKIG1zZ2lkICJwYWdlciIKIG1zZ3N0ciAiZMOgbiB0cmFuZyIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTA5CisjOiBidWlsdGluL2dyZXAuYzo5MTIKIG1zZ2lkICJzaG93IG1hdGNoaW5nIGZpbGVzIGluIHRoZSBwYWdlciIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIGPDoWMgdOG6rXAgdGluIGto4bubcCB0cm9uZyB0cmFuZyBnaeG6pXkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkxMworIzogYnVpbHRpbi9ncmVwLmM6OTE2CiBtc2dpZCAiYWxsb3cgY2FsbGluZyBvZiBncmVwKDEpIChpZ25vcmVkIGJ5IHRoaXMgYnVpbGQpIgogbXNnc3RyICJjaG8gcGjDqXAgZ+G7jWkgZ3JlcCgxKSAoYuG7iyBi4buPIHF1YSBi4bufaSBs4bqnbiBk4buLY2ggbsOgeSkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjk3NworIzogYnVpbHRpbi9ncmVwLmM6OTgzCiBtc2dpZCAibm8gcGF0dGVybiBnaXZlbiIKIG1zZ3N0ciAiY2jGsGEgY2jhu4kgcmEgbeG6q3UiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwMTMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwMTkKIG1zZ2lkICItLW5vLWluZGV4IG9yIC0tdW50cmFja2VkIGNhbm5vdCBiZSB1c2VkIHdpdGggcmV2cyIKIG1zZ3N0ciAiLS1uby1pbmRleCBoYXkgLS11bnRyYWNrZWQga2jDtG5nIMSRxrDhu6NjIHPhu60gZOG7pW5nIGPDuW5nIHbhu5tpIHJldnMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwMjAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgcmV2aXNpb246ICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gZ2nhuqNpIMSRaeG7g20geMOpdCBkdXnhu4d0OiAlcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTA1MQorIzogYnVpbHRpbi9ncmVwLmM6MTA1NworbXNnaWQgIi0tdW50cmFja2VkIG5vdCBzdXBwb3J0ZWQgd2l0aCAtLXJlY3Vyc2Utc3VibW9kdWxlcyIKK21zZ3N0ciAidMO5eSBjaOG7jW4gLS11bnRyYWNrZWQga2jDtG5nIMSRxrDhu6NjIGjhu5cgdHLhu6MgduG7m2kgLS1yZWN1cnNlLXN1Ym1vZHVsZXMiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjEKIG1zZ2lkICJpbnZhbGlkIG9wdGlvbiBjb21iaW5hdGlvbiwgaWdub3JpbmcgLS10aHJlYWRzIgogbXNnc3RyICJ04buVIGjhu6NwIHTDuXkgY2jhu41uIGtow7RuZyBo4bujcCBs4buHLCBi4buPIHF1YSAtLXRocmVhZHMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk3CisjOiBidWlsdGluL2dyZXAuYzoxMDY0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU0NwogbXNnaWQgIm5vIHRocmVhZHMgc3VwcG9ydCwgaWdub3JpbmcgLS10aHJlYWRzIgogbXNnc3RyICJraMO0bmcgaOG7lyB0cuG7oyDEkWEgdHV54bq/biwgYuG7jyBxdWEgLS10aHJlYWRzIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDU3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MDMgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzE2CisjOiBidWlsdGluL2dyZXAuYzoxMDY3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MzUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbnVtYmVyIG9mIHRocmVhZHMgc3BlY2lmaWVkICglZCkiCiBtc2dzdHIgInPhu5EgdHV54bq/biBjaOG7iSByYSBraMO0bmcgaOG7o3AgbOG7hyAoJWQpIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDgwCisjOiBidWlsdGluL2dyZXAuYzoxMTAxCiBtc2dpZCAiLS1vcGVuLWZpbGVzLWluLXBhZ2VyIG9ubHkgd29ya3Mgb24gdGhlIHdvcmt0cmVlIgogbXNnc3RyICItLW9wZW4tZmlsZXMtaW4tcGFnZXIgY2jhu4kgbMOgbSB2aeG7h2MgdHLDqm4gY8OieS1sw6BtLXZp4buHYyIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTEwMwotbXNnaWQgIm9wdGlvbiBub3Qgc3VwcG9ydGVkIHdpdGggLS1yZWN1cnNlLXN1Ym1vZHVsZXMiCi1tc2dzdHIgInTDuXkgY2jhu41uIGtow7RuZyDEkcaw4bujYyBo4buXIHRy4bujIHbhu5tpIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgotCi0jOiBidWlsdGluL2dyZXAuYzoxMTA5CisjOiBidWlsdGluL2dyZXAuYzoxMTI3CiBtc2dpZCAiLS1jYWNoZWQgb3IgLS11bnRyYWNrZWQgY2Fubm90IGJlIHVzZWQgd2l0aCAtLW5vLWluZGV4IgogbXNnc3RyICItLWNhY2hlZCBoYXkgLS11bnRyYWNrZWQga2jDtG5nIMSRxrDhu6NjIHPhu60gZOG7pW5nIHbhu5tpIC0tbm8taW5kZXgiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMTUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExMzMKIG1zZ2lkICItLVtuby1dZXhjbHVkZS1zdGFuZGFyZCBjYW5ub3QgYmUgdXNlZCBmb3IgdHJhY2tlZCBjb250ZW50cyIKIG1zZ3N0ciAiLS1bbm8tXWV4Y2x1ZGUtc3RhbmRhcmQga2jDtG5nIHRo4buDIHPhu60gZOG7pW5nIGNobyBu4buZaSBkdW5nIGzGsHUgZOG6pXUgduG6v3QiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMjMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExNDEKIG1zZ2lkICJib3RoIC0tY2FjaGVkIGFuZCB0cmVlcyBhcmUgZ2l2ZW4iCiBtc2dzdHIgImPhuqMgaGFpIC0tY2FjaGVkIHbDoCBjw6FjIGPDonkgcGjhuqNpIMSRxrDhu6NjIGNo4buJIHJhIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODQKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NQogbXNnaWQgIiIKICJnaXQgaGFzaC1vYmplY3QgWy10IDx0eXBlPl0gWy13XSBbLS1wYXRoPTxmaWxlPiB8IC0tbm8tZmlsdGVyc10gWy0tc3RkaW5dICIKICJbLS1dIDxmaWxlPi4uLiIKQEAgLTExNjQ3LDM2ICsxNDc4NywzMiBAQAogImdpdCBoYXNoLW9iamVjdCBbLXQgPGtp4buDdT5dIFstd10gWy0tcGF0aD08dOG6rXAtdGluPiB8IC0tbm8tZmlsdGVyc10gWy0tc3RkaW5dICIKICJbLS1dIDx04bqtcC10aW4+4oCmIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODUKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NgogbXNnaWQgImdpdCBoYXNoLW9iamVjdCAgLS1zdGRpbi1wYXRocyIKIG1zZ3N0ciAiZ2l0IGhhc2gtb2JqZWN0ICAtLXN0ZGluLXBhdGhzIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTcKLW1zZ2lkICJ0eXBlIgotbXNnc3RyICJraeG7g3UiCi0KLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5NworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk4CiBtc2dpZCAib2JqZWN0IHR5cGUiCiBtc2dzdHIgImtp4buDdSDEkeG7kWkgdMaw4bujbmciCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk5CiBtc2dpZCAid3JpdGUgdGhlIG9iamVjdCBpbnRvIHRoZSBvYmplY3QgZGF0YWJhc2UiCiBtc2dzdHIgImdoaSDEkeG7kWkgdMaw4bujbmcgdsOgbyBk4buvIGxp4buHdSDEkeG7kWkgdMaw4bujbmciCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDAKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDEKIG1zZ2lkICJyZWFkIHRoZSBvYmplY3QgZnJvbSBzdGRpbiIKIG1zZ3N0ciAixJHhu41jIMSR4buRaSB0xrDhu6NuZyB04burIMSR4bqndSB2w6BvIHRpw6p1IGNodeG6qW4gc3RkaW4iCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDMKIG1zZ2lkICJzdG9yZSBmaWxlIGFzIGlzIHdpdGhvdXQgZmlsdGVycyIKIG1zZ3N0ciAibMawdSBjw6FjIHThuq1wIHRpbiBtw6AgbsOzIGtow7RuZyBjw7MgY8OhYyBi4buZIGzhu41jIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAzCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0CiBtc2dpZCAiIgogImp1c3QgaGFzaCBhbnkgcmFuZG9tIGdhcmJhZ2UgdG8gY3JlYXRlIGNvcnJ1cHQgb2JqZWN0cyBmb3IgZGVidWdnaW5nIEdpdCIKIG1zZ3N0ciAiY2jhu4kgY+G6p24gYsSDbSByw6FjIG5n4bqrdSBuaGnDqm4gxJHhu4MgdOG6oW8gbeG7mXQgxJHhu5FpIHTGsOG7o25nIGjhu49uZyDEkeG7gyBtw6AgZ+G7oSBs4buXaSBHaXQiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDQKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDUKIG1zZ2lkICJwcm9jZXNzIGZpbGUgYXMgaXQgd2VyZSBmcm9tIHRoaXMgcGF0aCIKIG1zZ3N0ciAieOG7rSBsw70gdOG6rXAgdGluIG5oxrAgbMOgIG7DsyDEkWFuZyDhu58gdGjGsCBt4bulYyBuw6B5IgogCkBAIC0xMTcxNiwzMCArMTQ4NTIsMzAgQEAKIG1zZ2lkICJnaXQgaGVscCBbLS1hbGxdIFstLWd1aWRlc10gWy0tbWFuIHwgLS13ZWIgfCAtLWluZm9dIFs8Y29tbWFuZD5dIgogbXNnc3RyICJnaXQgaGVscCBbLS1hbGxdIFstLWd1aWRlc10gWy0tbWFuIHwgLS13ZWIgfCAtLWluZm9dIFs8bOG7h25oPl0iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjczCisjOiBidWlsdGluL2hlbHAuYzo3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgaGVscCBmb3JtYXQgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIG5o4bqtbiByYSDEkeG7i25oIGThuqFuZyB0cuG7oyBnacO6cCDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTAwCisjOiBidWlsdGluL2hlbHAuYzoxMDQKIG1zZ2lkICJGYWlsZWQgdG8gc3RhcnQgZW1hY3NjbGllbnQuIgogbXNnc3RyICJH4bq3cCBs4buXaSBraGkga2jhu59pIGNo4bqheSBlbWFjc2NsaWVudC4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjExMworIzogYnVpbHRpbi9oZWxwLmM6MTE3CiBtc2dpZCAiRmFpbGVkIHRvIHBhcnNlIGVtYWNzY2xpZW50IHZlcnNpb24uIgogbXNnc3RyICJH4bq3cCBs4buXaSBraGkgcGjDom4gdMOtY2ggcGhpw6puIGLhuqNuIGVtYWNzY2xpZW50LiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTIxCisjOiBidWlsdGluL2hlbHAuYzoxMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZW1hY3NjbGllbnQgdmVyc2lvbiAnJWQnIHRvbyBvbGQgKDwgMjIpLiIKIG1zZ3N0ciAicGhpw6puIGLhuqNuIGPhu6dhIGVtYWNzY2xpZW50IOKAnCVk4oCdIHF1w6EgY8WpICg8IDIyKS4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjEzOSBidWlsdGluL2hlbHAuYzoxNjEgYnVpbHRpbi9oZWxwLmM6MTcxIGJ1aWx0aW4vaGVscC5jOjE3OQorIzogYnVpbHRpbi9oZWxwLmM6MTQzIGJ1aWx0aW4vaGVscC5jOjE2NSBidWlsdGluL2hlbHAuYzoxNzUgYnVpbHRpbi9oZWxwLmM6MTgzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBleGVjICclcyciCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSB0aOG7sWMgdGhpIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL2hlbHAuYzoyMTcKKyM6IGJ1aWx0aW4vaGVscC5jOjIyMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJzogcGF0aCBmb3IgdW5zdXBwb3J0ZWQgbWFuIHZpZXdlci5cbiIKQEAgLTExNzQ4LDcgKzE0ODg0LDcgQEAKICLigJwlc+KAnTogxJHGsOG7nW5nIGThuqtuIGtow7RuZyBo4buXIHRy4bujIGLhu5kgdHLDrG5oIGNoaeG6v3UgbWFuLlxuIgogIkjDo3kgY8OibiBuaOG6r2MgxJHhur9uIHZp4buHYyBz4butIGThu6VuZyDigJxtYW4uPHRvb2w+LmNtZOKAnSDEkeG7gyB0aGF5IHRo4bq/LiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MjI5CisjOiBidWlsdGluL2hlbHAuYzoyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcyc6IGNtZCBmb3Igc3VwcG9ydGVkIG1hbiB2aWV3ZXIuXG4iCkBAIC0xMTc1NywzMjEgKzE0ODkzLDMxMSBAQAogIuKAnCVz4oCdOiBjbWQgKGzhu4duaCkgaOG7lyB0cuG7oyBi4buZIHRyw6xuaCBjaGnhur91IG1hbi5cbiIKICJIw6N5IGPDom4gbmjhuq9jIMSR4bq/biB2aeG7h2Mgc+G7rSBk4bulbmcg4oCcbWFuLjx0b29sPi5wYXRo4oCdIMSR4buDIHRoYXkgdGjhur8uIgogCi0jOiBidWlsdGluL2hlbHAuYzozNDYKKyM6IGJ1aWx0aW4vaGVscC5jOjM1MAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiB1bmtub3duIG1hbiB2aWV3ZXIuIgogbXNnc3RyICLigJwlc+KAnToga2jDtG5nIHLDtSBjaMawxqFuZyB0csOsbmggeGVtIG1hbi4iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM2MworIzogYnVpbHRpbi9oZWxwLmM6MzY3CiBtc2dpZCAibm8gbWFuIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgogbXNnc3RyICJraMO0bmcgY8OzIHRyw6xuaCB4ZW0gdHLhu6MgZ2nDunAgZOG6oW5nIG1hbnBhZ2UgdGnhur9wIGjhu6NwIHbhu5tpIHnDqnUgY+G6p3UiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM3MQorIzogYnVpbHRpbi9oZWxwLmM6Mzc1CiBtc2dpZCAibm8gaW5mbyB2aWV3ZXIgaGFuZGxlZCB0aGUgcmVxdWVzdCIKIG1zZ3N0ciAia2jDtG5nIGPDsyB0csOsbmggeGVtIHRy4bujIGdpw7pwIGThuqFuZyBpbmZvIHRp4bq/cCBo4bujcCB24bubaSB5w6p1IGPhuqd1IgogCi0jOiBidWlsdGluL2hlbHAuYzo0MzAgYnVpbHRpbi9oZWxwLmM6NDQxIGdpdC5jOjMyMgorIzogYnVpbHRpbi9oZWxwLmM6NDM0IGJ1aWx0aW4vaGVscC5jOjQ0NSBnaXQuYzozMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbGlhc2VkIHRvICclcyciCiBtc2dzdHIgIuKAnCVz4oCdIMSRxrDhu6NjIMSR4bq3dCBiw60gZGFuaCB0aMOgbmgg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQ0NAorIzogYnVpbHRpbi9oZWxwLmM6NDQ4IGdpdC5jOjM2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgYWxpYXMuJXMgc3RyaW5nOiAlcyIKIG1zZ3N0ciAiY2h14buXaSBhbGlhcy4lcyBzYWk6ICVzIgogCi0jOiBidWlsdGluL2hlbHAuYzo0NzMgYnVpbHRpbi9oZWxwLmM6NTAzCisjOiBidWlsdGluL2hlbHAuYzo0NzcgYnVpbHRpbi9oZWxwLmM6NTA3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVzYWdlOiAlcyVzIgogbXNnc3RyICJjw6FjaCBkw7luZzogJXMlcyIKIAotIzogYnVpbHRpbi9oZWxwLmM6NDg3CisjOiBidWlsdGluL2hlbHAuYzo0OTEKIG1zZ2lkICInZ2l0IGhlbHAgY29uZmlnJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAiQ2jhuqF5IGzhu4duaCDigJxnaXQgaGVscCBjb25maWfigJ0gxJHhu4MgY8OzIHRow6ptIHRow7RuZyB0aW4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCB0eXBlIG1pc21hdGNoIGF0ICVzIgogbXNnc3RyICJraeG7g3UgxJHhu5FpIHTGsOG7o25nIGtow7RuZyBraOG7m3AgdOG6oWkgJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwNAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA1CiAjLCBjLWZvcm1hdAogbXNnaWQgImRpZCBub3QgcmVjZWl2ZSBleHBlY3RlZCBvYmplY3QgJXMiCi1tc2dzdHIgIktow7RuZyB0aOG7gyBs4bqleSB24buBIMSR4buRaSB0xrDhu6NuZyBj4bqnbiAlcyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHbhu4EgxJHhu5FpIHTGsOG7o25nIGPhuqduICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgJXM6IGV4cGVjdGVkIHR5cGUgJXMsIGZvdW5kICVzIgogbXNnc3RyICLEkeG7kWkgdMaw4bujbmcgJXM6IGPhuqduIGtp4buDdSAlcyBuaMawbmcgbOG6oWkgbmjhuq1uIMSRxrDhu6NjICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNDkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmlsbCAlZCBieXRlIgogbXNnaWRfcGx1cmFsICJjYW5ub3QgZmlsbCAlZCBieXRlcyIKIG1zZ3N0clswXSAia2jDtG5nIHRo4buDIMSRaeG7gW4gdGjDqm0gdsOgbyAlZCBieXRlIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OAogbXNnaWQgImVhcmx5IEVPRiIKIG1zZ3N0ciAiZ+G6t3Aga+G6v3QgdGjDumMgdOG6rXAgdGluIEVPRiBxdcOhIHPhu5ttIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNjAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OQogbXNnaWQgInJlYWQgZXJyb3Igb24gaW5wdXQiCiBtc2dzdHIgImzhu5dpIMSR4buNYyDhu58gxJHhuqd1IHbDoG8iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI3MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjgxCiBtc2dpZCAidXNlZCBtb3JlIGJ5dGVzIHRoYW4gd2VyZSBhdmFpbGFibGUiCiBtc2dzdHIgInPhu60gZOG7pW5nIG5oaeG7gXUgaMahbiBz4buRIGzGsOG7o25nIGJ5dGUgbcOgIG7DsyBz4bq1biBjw7MiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI3OSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjU5OAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6Mjg4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NjA2CiBtc2dpZCAicGFjayB0b28gbGFyZ2UgZm9yIGN1cnJlbnQgZGVmaW5pdGlvbiBvZiBvZmZfdCIKIG1zZ3N0ciAiZ8OzaSBxdcOhIGzhu5tuIHNvIHbhu5tpIMSR4buLbmggbmdoxKlhIGhp4buHbiB04bqhaSBj4bunYSBraeG7g3Ugb2ZmX3QiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI4MiBidWlsdGluL3VucGFjay1vYmplY3RzLmM6OTQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI5MSBidWlsdGluL3VucGFjay1vYmplY3RzLmM6OTUKIG1zZ2lkICJwYWNrIGV4Y2VlZHMgbWF4aW11bSBhbGxvd2VkIHNpemUiCiBtc2dzdHIgImfDs2kgxJHDoyB2xrDhu6N0IHF1w6EgY+G7oSB04buRaSDEkWEgxJHGsOG7o2MgcGjDqXAiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI5NwotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlICclcyciCi1tc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyDigJwlc+KAnSIKLQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzAzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG9wZW4gcGFja2ZpbGUgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gcGFja2ZpbGUg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMxNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzI2CiBtc2dpZCAicGFjayBzaWduYXR1cmUgbWlzbWF0Y2giCiBtc2dzdHIgImNo4buvIGvDvSBjaG8gZ8OzaSBraMO0bmcga2jhu5twIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozMTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrIHZlcnNpb24gJTxQUkl1MzI+IHVuc3VwcG9ydGVkIgogbXNnc3RyICJraMO0bmcgaOG7lyB0cuG7oyBwaGnDqm4gYuG6o24gZ8OzaSAlPFBSSXUzMj4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMzNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2sgaGFzIGJhZCBvYmplY3QgYXQgb2Zmc2V0ICU8UFJJdU1BWD46ICVzIgogbXNnc3RyICJnw7NpIGPDsyDEkeG7kWkgdMaw4bujbmcgc2FpIHThuqFpIGtob+G6o25nIGLDuSAlPFBSSXVNQVg+OiAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NDU3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5mbGF0ZSByZXR1cm5lZCAlZCIKIG1zZ3N0ciAieOG6oyBuw6luIHRy4bqjIHbhu4EgJWQiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUwNgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTE1CiBtc2dpZCAib2Zmc2V0IHZhbHVlIG92ZXJmbG93IGZvciBkZWx0YSBiYXNlIG9iamVjdCIKIG1zZ3N0ciAidHLDoG4gZ2nDoSB0cuG7iyBraG/huqNuZyBiw7kgY2hvIMSR4buRaSB0xrDhu6NuZyBkZWx0YSBjxqEgc+G7nyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTE0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MjMKIG1zZ2lkICJkZWx0YSBiYXNlIG9mZnNldCBpcyBvdXQgb2YgYm91bmQiCiBtc2dzdHIgImtob+G6o25nIGLDuSBjxqEgc+G7nyBjaG8gZGVsdGEgbuG6sW0gbmdvw6BpIHBo4bqhbSB2aSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTIyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvYmplY3QgdHlwZSAlZCIKIG1zZ3N0ciAia2jDtG5nIGhp4buDdSBraeG7g3UgxJHhu5FpIHTGsOG7o25nICVkIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1NTMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU2MgogbXNnaWQgImNhbm5vdCBwcmVhZCBwYWNrIGZpbGUiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBjaOG6oXkgaMOgbSBwcmVhZCBjaG8gdOG6rXAgdGluIGfDs2kiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU1NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgInByZW1hdHVyZSBlbmQgb2YgcGFjayBmaWxlLCAlPFBSSXVNQVg+IGJ5dGUgbWlzc2luZyIKIG1zZ2lkX3BsdXJhbCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICU8UFJJdU1BWD4gYnl0ZXMgbWlzc2luZyIKIG1zZ3N0clswXSAidOG6rXAgdGluIGfDs2kgYuG7iyBr4bq/dCB0aMO6YyBz4bubbSwgdGhp4bq/dSAlPFBSSXVNQVg+IGJ5dGUiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU4MQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTkwCiBtc2dpZCAic2VyaW91cyBpbmZsYXRlIGluY29uc2lzdGVuY3kiCiBtc2dzdHIgInPhu7EgbcOidSB0aHXhuqtuIHjhuqMgbsOpbiBuZ2hpw6ptIHRy4buNbmciCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjcyNiBidWlsdGluL2luZGV4LXBhY2suYzo3MzIgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzU1Ci0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3OTQgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo3MzUgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzQxIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc2NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODA0IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJTSEExIENPTExJU0lPTiBGT1VORCBXSVRIICVzICEiCiBtc2dzdHIgIlPhu7AgVkEgQ0jhuqBNIFNIQTEgxJDDgyBY4bqiWSBSQSBW4buaSSAlcyEiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjcyOSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE1MQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjczOCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE1OAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc5MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkIGV4aXN0aW5nIG9iamVjdCBpbmZvICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIHRow7RuZyB0aW4gxJHhu5FpIHTGsOG7o25nIHPhurVuIGPDsyAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODAwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgZXhpc3Rpbmcgb2JqZWN0ICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIMSR4buRaSB0xrDhu6NuZyDEkcOjIHThu5NuIHThuqFpICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTQKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGJsb2Igb2JqZWN0ICVzIgogbXNnc3RyICLEkeG7kWkgdMaw4bujbmcgYmxvYiBraMO0bmcgaOG7o3AgbOG7hyAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODE3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzNgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODI3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjg0NgogbXNnaWQgImZzY2sgZXJyb3IgaW4gcGFja2VkIG9iamVjdCIKIG1zZ3N0ciAibOG7l2kgZnNjayB0cm9uZyDEkeG7kWkgdMaw4bujbmcgxJHDs25nIGfDs2kiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzMwotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkICVzIgotbXNnc3RyICIlcyBraMO0bmcgaOG7o3AgbOG7hyIKLQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODM4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGFsbCBjaGlsZCBvYmplY3RzIG9mICVzIGFyZSByZWFjaGFibGUiCiBtc2dzdHIgIktow7RuZyBwaOG6o2kgdOG6pXQgY+G6oyBjw6FjIMSR4buRaSB0xrDhu6NuZyBjb24gY+G7p2EgJXMgbMOgIGPDsyB0aOG7gyB24bubaSB04bubaSDEkcaw4bujYyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6OTEwIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjk0MQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6OTIwIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjk1MQogbXNnaWQgImZhaWxlZCB0byBhcHBseSBkZWx0YSIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMOhcCBk4bulbmcgZGVsdGEiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMDkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMjEKIG1zZ2lkICJSZWNlaXZpbmcgb2JqZWN0cyIKIG1zZ3N0ciAixJBhbmcgbmjhuq1uIHbhu4EgY8OhYyDEkeG7kWkgdMaw4bujbmciCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMDkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMjEKIG1zZ2lkICJJbmRleGluZyBvYmplY3RzIgogbXNnc3RyICJDw6FjIMSR4buRaSB0xrDhu6NuZyBi4bqjbmcgbeG7pWMgbOG7pWMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNTUKIG1zZ2lkICJwYWNrIGlzIGNvcnJ1cHRlZCAoU0hBMSBtaXNtYXRjaCkiCiBtc2dzdHIgImfDs2kgYuG7iyBzYWkgaOG7j25nIChTSEExIGtow7RuZyBraOG7m3ApIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTQ4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYwCiBtc2dpZCAiY2Fubm90IGZzdGF0IHBhY2tmaWxlIgogbXNnc3RyICJraMO0bmcgdGjhu4MgbOG6pXkgdGjDtG5nIHRpbiB0aOG7kW5nIGvDqiBwYWNrZmlsZSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE1MQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE2MwogbXNnaWQgInBhY2sgaGFzIGp1bmsgYXQgdGhlIGVuZCIKIG1zZ3N0ciAicGFjayBjw7MgcGjhuqduIHRo4burYSDhu58gY3Xhu5FpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTc1CiBtc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSBpbiBwYXJzZV9wYWNrX29iamVjdHMoKSIKIG1zZ3N0ciAibOG7mW4geOG7mW4gaMahbiBj4bqjIMSRacOqbiBy4buTIGtoaSBjaOG6oXkgaMOgbSBwYXJzZV9wYWNrX29iamVjdHMoKSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE4NgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE5OAogbXNnaWQgIlJlc29sdmluZyBkZWx0YXMiCiBtc2dzdHIgIsSQYW5nIHBow6JuIGdp4bqjaSBjw6FjIGRlbHRhIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTk2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjQ5MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTIwOCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gdHV54bq/bjogJXMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyMzcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNDkKIG1zZ2lkICJjb25mdXNpb24gYmV5b25kIGluc2FuaXR5IgogbXNnc3RyICJs4buZbiB44buZbiBoxqFuIGPhuqMgxJFpw6puIHLhu5MiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tcGxldGVkIHdpdGggJWQgbG9jYWwgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJjb21wbGV0ZWQgd2l0aCAlZCBsb2NhbCBvYmplY3RzIgogbXNnc3RyWzBdICLEkeG6p3kgxJHhu6cgduG7m2kgJWQgxJHhu5FpIHTGsOG7o25nIG7hu5lpIGLhu5kiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5leHBlY3RlZCB0YWlsIGNoZWNrc3VtIGZvciAlcyAoZGlzayBjb3JydXB0aW9uPykiCiBtc2dzdHIgIkfhurdwIHThu5VuZyBraeG7g20gdHJhIHRhaWwga2jDtG5nIGPhuqduIGNobyAlcyAoxJHEqWEgaOG7j25nPykiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjayBoYXMgJWQgdW5yZXNvbHZlZCBkZWx0YSIKIG1zZ2lkX3BsdXJhbCAicGFjayBoYXMgJWQgdW5yZXNvbHZlZCBkZWx0YXMiCiBtc2dzdHJbMF0gImfDs2kgY8OzICVkIGRlbHRhIGNoxrBhIMSRxrDhu6NjIGdp4bqjaSBxdXnhur90IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjgzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMjk1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBkZWZsYXRlIGFwcGVuZGVkIG9iamVjdCAoJWQpIgogbXNnc3RyICJraMO0bmcgdGjhu4MgeOG6oyBuw6luIMSR4buRaSB0xrDhu6NuZyBu4buRaSB0aMOqbSAoJWQpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzYwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImxvY2FsIG9iamVjdCAlcyBpcyBjb3JydXB0IgogbXNnc3RyICLEkeG7kWkgdMaw4bujbmcgbuG7mWkgYuG7mSAlcyBi4buLIGjhu49uZyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTM3NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrZmlsZSBuYW1lICclcycgZG9lcyBub3QgZW5kIHdpdGggJy5wYWNrJyIKIG1zZ3N0ciAidMOqbiB04bqtcCB0aW4gdOG6rXAgdGluIGfDs2kg4oCcJXPigJ0ga2jDtG5nIMSRxrDhu6NjIGvhur90IHRow7pjIGLhurFuZyDEkXXDtGkg4oCcLnBhY2vigJ0iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzOTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHdyaXRlICVzIGZpbGUgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdoaSAlcyB04bqtcCB0aW4g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MDcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNsb3NlIHdyaXR0ZW4gJXMgZmlsZSAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHDs25nIHThuq1wIHRpbiDEkcaw4bujYyBnaGkgJXMg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0NjMKIG1zZ2lkICJlcnJvciB3aGlsZSBjbG9zaW5nIHBhY2sgZmlsZSIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kgdHJvbmcga2hpIMSRw7NuZyB04bqtcCB0aW4gZ8OzaSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ0NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ3NwogbXNnaWQgImNhbm5vdCBzdG9yZSBwYWNrIGZpbGUiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBsxrB1IHThuq1wIHRpbiBnw7NpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDUzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDg1CiBtc2dpZCAiY2Fubm90IHN0b3JlIGluZGV4IGZpbGUiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBsxrB1IHRy4buvIHThuq1wIHRpbiBnaGkgbeG7pWMgbOG7pWMiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0OTcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzI3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTI5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFjay5pbmRleHZlcnNpb249JTxQUkl1MzI+IgogbXNnc3RyICJzYWkgcGFjay5pbmRleHZlcnNpb249JTxQUkl1MzI+IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTY1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBvcGVuIGV4aXN0aW5nIHBhY2sgZmlsZSAnJXMnIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4gZ8OzaSDEkcOjIHPhurVuIGPDsyDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU2NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgb3BlbiBleGlzdGluZyBwYWNrIGlkeCBmaWxlIGZvciAnJXMnIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4gaWR4IGPhu6dhIGfDs2kgY2hvIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjE1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vbiBkZWx0YTogJWQgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJub24gZGVsdGE6ICVkIG9iamVjdHMiCiBtc2dzdHJbMF0gImtow7RuZyBkZWx0YTogJWQgxJHhu5FpIHTGsOG7o25nIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjIyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNoYWluIGxlbmd0aCA9ICVkOiAlbHUgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJjaGFpbiBsZW5ndGggPSAlZDogJWx1IG9iamVjdHMiCiBtc2dzdHJbMF0gImNoaeG7gXUgZMOgaSB4w61jaCA9ICVkOiAlbHUgxJHhu5FpIHTGsOG7o25nIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjU5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjkzCiBtc2dpZCAiQ2Fubm90IGNvbWUgYmFjayB0byBjd2QiCiBtc2dzdHIgIktow7RuZyB0aOG7gyBxdWF5IGzhuqFpIGN3ZCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTcwOCBidWlsdGluL2luZGV4LXBhY2suYzoxNzExCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzI3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MzEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDIgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc2MSBidWlsdGluL2luZGV4LXBhY2suYzoxNzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCAlcyIKIG1zZ3N0ciAiJXMgc2FpIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQ3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzgxCiBtc2dpZCAiLS1maXgtdGhpbiBjYW5ub3QgYmUgdXNlZCB3aXRob3V0IC0tc3RkaW4iCiBtc2dzdHIgIi0tZml4LXRoaW4ga2jDtG5nIHRo4buDIMSRxrDhu6NjIGTDuW5nIG3DoCBraMO0bmcgY8OzIC0tc3RkaW4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3ODMKIG1zZ2lkICItLXN0ZGluIHJlcXVpcmVzIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0tc3RkaW4gY+G6p24gbeG7mXQga2hvIGdpdCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc1NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4OQogbXNnaWQgIi0tdmVyaWZ5IHdpdGggbm8gcGFja2ZpbGUgbmFtZSBnaXZlbiIKIG1zZ3N0ciAiZMO5bmcgdMO5eSBjaOG7jW4gLS12ZXJpZnkgbcOgIGtow7RuZyDEkcawYSByYSB0w6puIHBhY2tmaWxlIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxODAzIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1ODAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4MzcgYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjU4MgogbXNnaWQgImZzY2sgZXJyb3IgaW4gcGFjayBvYmplY3RzIgogbXNnc3RyICJs4buXaSBmc2NrIHRyb25nIGPDoWMgxJHhu5FpIHTGsOG7o25nIGfDs2kiCiAKQEAgLTEyMTE1LDQyICsxNTI0MSw0MiBAQAogbXNnaWQgIm5vdCBjb3B5aW5nIHRlbXBsYXRlcyBmcm9tICclcyc6ICVzIgogbXNnc3RyICJraMO0bmcgc2FvIGNow6lwIGPDoWMgbeG6q3UgdOG7qyDigJwlc+KAnTogJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMyOQorIzogYnVpbHRpbi9pbml0LWRiLmM6MzM0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBoYW5kbGUgZmlsZSB0eXBlICVkIgogbXNnc3RyICJraMO0bmcgdGjhu4MgeOG7rSBsw70gKGhhbmRsZSkgdOG6rXAgdGluIGtp4buDdSAlZCIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6MzMyCisjOiBidWlsdGluL2luaXQtZGIuYzozMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG1vdmUgJXMgdG8gJXMiCiBtc2dzdHIgImtow7RuZyBkaSBjaHV54buDbiDEkcaw4bujYyAlcyB2w6BvICVzIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzozNDkgYnVpbHRpbi9pbml0LWRiLmM6MzUyCisjOiBidWlsdGluL2luaXQtZGIuYzozNTQgYnVpbHRpbi9pbml0LWRiLmM6MzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICIlcyDEkcOjIGPDsyB04burIHRyxrDhu5tjIHLhu5NpIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MDUKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWluaXRpYWxpemVkIGV4aXN0aW5nIHNoYXJlZCBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgIsSQw6Mga2jhu59pIHThuqFvIGzhuqFpIGtobyBHaXQgY2hpYSBz4bq7IHPhurVuIGPDsyB0cm9uZyAlcyVzXG4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQwNgorIzogYnVpbHRpbi9pbml0LWRiLmM6NDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlaW5pdGlhbGl6ZWQgZXhpc3RpbmcgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgogbXNnc3RyICLEkMOjIGto4bufaSB04bqhbyBs4bqhaSBraG8gR2l0IHPhurVuIGPDsyB0cm9uZyAlcyVzXG4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMAorIzogYnVpbHRpbi9pbml0LWRiLmM6NDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkluaXRpYWxpemVkIGVtcHR5IHNoYXJlZCBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCiBtc2dzdHIgIsSQw6Mga2jhu59pIHThuqFvIGzhuqFpIGtobyBHaXQgY2hpYSBz4bq7IHRy4buRbmcgcuG7l25nIHPhurVuIGPDsyB0cm9uZyAlcyVzXG4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMQorIzogYnVpbHRpbi9pbml0LWRiLmM6NDE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkluaXRpYWxpemVkIGVtcHR5IEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAixJDDoyBraOG7n2kgdOG6oW8gbOG6oWkga2hvIEdpdCB0cuG7kW5nIHLhu5duZyBz4bq1biBjw7MgdHJvbmcgJXMlc1xuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0NjAKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ2OAogbXNnaWQgIiIKICJnaXQgaW5pdCBbLXEgfCAtLXF1aWV0XSBbLS1iYXJlXSBbLS10ZW1wbGF0ZT08dGVtcGxhdGUtZGlyZWN0b3J5Pl0gWy0tIgogInNoYXJlZFs9PHBlcm1pc3Npb25zPl1dIFs8ZGlyZWN0b3J5Pl0iCkBAIC0xMjE1OCwyNSArMTUyODQsMjUgQEAKICJnaXQgaW5pdCBbLXEgfCAtLXF1aWV0XSBbLS1iYXJlXSBbLS10ZW1wbGF0ZT08dGjGsC1t4bulYy104bqhbT5dIFstLXNoYXJlZFs9PGPDoWMtIgogInF1eeG7gW4+XV0gW3RoxrAtbeG7pWNdIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0ODMKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MQogbXNnaWQgInBlcm1pc3Npb25zIgogbXNnc3RyICJjw6FjIHF1eeG7gW4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NAorIzogYnVpbHRpbi9pbml0LWRiLmM6NDkyCiBtc2dpZCAic3BlY2lmeSB0aGF0IHRoZSBnaXQgcmVwb3NpdG9yeSBpcyB0byBiZSBzaGFyZWQgYW1vbmdzdCBzZXZlcmFsIHVzZXJzIgogbXNnc3RyICJjaOG7iSByYSBjw6FpIG3DoCBraG8gZ2l0IMSRxrDhu6NjIGNoaWEgc+G6uyBnaeG7r2Egbmhp4buBdSBuZ8aw4budaSBkw7luZyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTE4IGJ1aWx0aW4vaW5pdC1kYi5jOjUyMworIzogYnVpbHRpbi9pbml0LWRiLmM6NTI5IGJ1aWx0aW4vaW5pdC1kYi5jOjUzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgbWtkaXIgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBta2RpciAodOG6oW8gdGjGsCBt4bulYyk6ICVzIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo1MjcKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUzOAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY2hkaXIgdG8gJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBjaGRpciAoY2h1eeG7g24gxJHhu5VpIHRoxrAgbeG7pWMpIHNhbmcgJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU0OAorIzogYnVpbHRpbi9pbml0LWRiLmM6NTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIlcyAob3IgLS13b3JrLXRyZWU9PGRpcmVjdG9yeT4pIG5vdCBhbGxvd2VkIHdpdGhvdXQgc3BlY2lmeWluZyAlcyAob3IgLS1naXQtIgpAQCAtMTIxODUsMTIgKzE1MzExLDEyIEBACiAiJXMgKGhv4bq3YyAtLXdvcmstdHJlZT08dGjGsC1t4bulYz4pIGtow7RuZyBjaG8gcGjDqXAga2jDtG5nIGNo4buJIMSR4buLbmggJXMgKGhv4bq3YyAtLWdpdC0iCiAiZGlyPTx0aMawLW3hu6VjPikiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU3NgorIzogYnVpbHRpbi9pbml0LWRiLmM6NTg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBhY2Nlc3Mgd29yayB0cmVlICclcyciCi1tc2dzdHIgImtow7RuZyB0aOG7gyB0cnV5IGPhuq1wIGPDonkgKHRyZWUpIGzDoG0gdmnhu4djIOKAnCVz4oCdIgorbXNnc3RyICJLaMO0bmcgdGjhu4MgdHJ1eSBj4bqtcCBjw6J5ICh0cmVlKSBsw6BtIHZp4buHYyDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxNQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxNgogbXNnaWQgIiIKICJnaXQgaW50ZXJwcmV0LXRyYWlsZXJzIFstLWluLXBsYWNlXSBbLS10cmltLWVtcHR5XSBbKC0tdHJhaWxlciAiCiAiPHRva2VuPlsoPXw6KTx2YWx1ZT5dKS4uLl0gWzxmaWxlPi4uLl0iCkBAIC0xMjE5OCw0NjAgKzE1MzI0LDQ2NSBAQAogImdpdCBpbnRlcnByZXQtdHJhaWxlcnMgWy0taW4tcGxhY2VdIFstLXRyaW0tZW1wdHldIFsoLS10cmFpbGVyICIKICI8dGjhurs+Wyg9fDopPGdpw6EtdHLhu4s+XSnigKZdIFs8dOG6rXAtdGluPuKApl0iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTQKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6OTUKIG1zZ2lkICJlZGl0IGZpbGVzIGluIHBsYWNlIgogbXNnc3RyICJz4butYSBjw6FjIHThuq1wIHRpbiB04bqhaSBjaOG7lyIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NgogbXNnaWQgInRyaW0gZW1wdHkgdHJhaWxlcnMiCiBtc2dzdHIgImLhu5kgZMOyIHbhur90IGPhuq90IGLhu48gcGjhuqduIHRy4buRbmcgcuG7l25nIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk4CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk5CiBtc2dpZCAid2hlcmUgdG8gcGxhY2UgdGhlIG5ldyB0cmFpbGVyIgogbXNnc3RyICLEkeG6t3QgcGjhuqduIMSRdcO0aSBt4bubaSDhu58gxJHDonUiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMQogbXNnaWQgImFjdGlvbiBpZiB0cmFpbGVyIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICJ0aGFvIHTDoWMga2hpIMSRw6MgY8OzIHBo4bqnbiDEkXXDtGkiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAyCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMwogbXNnaWQgImFjdGlvbiBpZiB0cmFpbGVyIGlzIG1pc3NpbmciCiBtc2dzdHIgInRoYW8gdMOhYyBraGkgdGhp4bq/dSBwaOG6p24gxJF1w7RpIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDUKIG1zZ2lkICJvdXRwdXQgb25seSB0aGUgdHJhaWxlcnMiCiBtc2dzdHIgImNo4buJIHh14bqldCBwaOG6p24gxJF1w7RpIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDYKIG1zZ2lkICJkbyBub3QgYXBwbHkgY29uZmlnIHJ1bGVzIgogbXNnc3RyICLEkeG7q25nIMOhcCBk4bulbmcgY8OhYyBxdXkgdOG6r2MgY+G6pXUgaMOsbmgiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA2CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNwogbXNnaWQgImpvaW4gd2hpdGVzcGFjZS1jb250aW51ZWQgdmFsdWVzIgogbXNnc3RyICJu4buRaSBjw6FjIGdpw6EgdHLhu4sga2hv4bqjbmctdHLhuq9uZy1sacOqbi10aeG6v3AiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA3CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwOAogbXNnaWQgInNldCBwYXJzaW5nIG9wdGlvbnMiCiBtc2dzdHIgIsSR4bq3dCBjw6FjIHTDuXkgY2jhu41uIHBow6JuIHTDrWNoIGPDuiBwaMOhcCIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDkKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEwCiBtc2dpZCAiZG8gbm90IHRyZWF0IC0tLSBzcGVjaWFsbHkiCiBtc2dzdHIgImtow7RuZyBjb2kgLS0tIGzDoCDEkeG6t2MgYmnhu4d0IgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTEKIG1zZ2lkICJ0cmFpbGVyIgogbXNnc3RyICJi4buZIGTDsiB24bq/dCIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTEKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEyCiBtc2dpZCAidHJhaWxlcihzKSB0byBhZGQiCiBtc2dzdHIgImLhu5kgZMOyIHbhur90IGPhuqduIHRow6ptIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEyMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMjMKIG1zZ2lkICItLXRyYWlsZXIgd2l0aCAtLW9ubHktaW5wdXQgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS10cmFpbGVyIGPDuW5nIHbhu5tpIC0tb25seS1pbnB1dCBraMO0bmcgaOG7o3AgbMO9IgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEzMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMzMKIG1zZ2lkICJubyBpbnB1dCBmaWxlIGdpdmVuIGZvciBpbi1wbGFjZSBlZGl0aW5nIgogbXNnc3RyICJraMO0bmcgxJHGsGEgcmEgdOG6rXAgdGluIMSR4bqndSB2w6BvIMSR4buDIHPhu61hIHThuqFpLWNo4buXIgogCi0jOiBidWlsdGluL2xvZy5jOjU0CisjOiBidWlsdGluL2xvZy5jOjU2CiBtc2dpZCAiZ2l0IGxvZyBbPG9wdGlvbnM+XSBbPHJldmlzaW9uLXJhbmdlPl0gW1stLV0gPHBhdGg+Li4uXSIKLW1zZ3N0ciAiZ2l0IGxvZyBbPGPDoWMtdMO5eS1jaOG7jW4+XSBbPHbDuW5nLXhlbS14w6l0Pl0gW1stLV0gPMSRxrDhu51uZy1k4bqrbj7igKZdIgorbXNnc3RyICJnaXQgbG9nIFs8Y8OhYyB0w7l5IGNo4buNbj5dIFs8dsO5bmcteGVtLXjDqXQ+XSBbWy0tXSA8L8SRxrDhu51uZy9k4bqrbj7igKZdIgogCi0jOiBidWlsdGluL2xvZy5jOjU1CisjOiBidWlsdGluL2xvZy5jOjU3CiBtc2dpZCAiZ2l0IHNob3cgWzxvcHRpb25zPl0gPG9iamVjdD4uLi4iCi1tc2dzdHIgImdpdCBzaG93IFs8Y8OhYy10w7l5LWNo4buNbj5dIDzEkeG7kWktdMaw4bujbmc+4oCmIgorbXNnc3RyICJnaXQgc2hvdyBbPGPDoWMgdMO5eSBjaOG7jW4+XSA8xJHhu5FpLXTGsOG7o25nPuKApiIKIAotIzogYnVpbHRpbi9sb2cuYzo5OQorIzogYnVpbHRpbi9sb2cuYzoxMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCAtLWRlY29yYXRlIG9wdGlvbjogJXMiCiBtc2dzdHIgInTDuXkgY2jhu41uLS1kZWNvcmF0ZSBraMO0bmcgaOG7o3AgbOG7hzogJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTYyCi1tc2dpZCAic3VwcHJlc3MgZGlmZiBvdXRwdXQiCi1tc2dzdHIgImNo4bq3biBt4buNaSBr4bq/dCB4deG6pXQgdOG7qyBkaWZmIgotCi0jOiBidWlsdGluL2xvZy5jOjE2MworIzogYnVpbHRpbi9sb2cuYzoxNzQKIG1zZ2lkICJzaG93IHNvdXJjZSIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIG3DoyBuZ3Xhu5NuIgogCi0jOiBidWlsdGluL2xvZy5jOjE2NAorIzogYnVpbHRpbi9sb2cuYzoxNzUKIG1zZ2lkICJVc2UgbWFpbCBtYXAgZmlsZSIKIG1zZ3N0ciAiU+G7rSBk4bulbmcgdOG6rXAgdGluIMOhbmggeOG6oSB0aMawIgogCi0jOiBidWlsdGluL2xvZy5jOjE2NgorIzogYnVpbHRpbi9sb2cuYzoxNzcKIG1zZ2lkICJvbmx5IGRlY29yYXRlIHJlZnMgdGhhdCBtYXRjaCA8cGF0dGVybj4iCiBtc2dzdHIgImNo4buJIHTDtCBzw6FuZyBjw6FjIHRoYW0gY2hp4bq/dSBraOG7m3AgduG7m2kgPG3huqt1PiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjgKKyM6IGJ1aWx0aW4vbG9nLmM6MTc5CiBtc2dpZCAiZG8gbm90IGRlY29yYXRlIHJlZnMgdGhhdCBtYXRjaCA8cGF0dGVybj4iCiBtc2dzdHIgImtow7RuZyB0w7Qgc8OhbmcgY8OhYyB0aGFtIGNoaeG6v3Uga2jhu5twIHbhu5tpIDxt4bqrdT4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5CisjOiBidWlsdGluL2xvZy5jOjE4MAogbXNnaWQgImRlY29yYXRlIG9wdGlvbnMiCiBtc2dzdHIgImPDoWMgdMO5eSBjaOG7jW4gdHJhbmcgdHLDrSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNzIKKyM6IGJ1aWx0aW4vbG9nLmM6MTgzCiBtc2dpZCAiUHJvY2VzcyBsaW5lIHJhbmdlIG4sbSBpbiBmaWxlLCBjb3VudGluZyBmcm9tIDEiCiBtc2dzdHIgIljhu60gbMO9IGNo4buJIGTDsm5nIHbDuW5nIG4sbSB0cm9uZyB04bqtcCB0aW4sIHTDrW5oIHThu6sgMSIKIAotIzogYnVpbHRpbi9sb2cuYzoyNzAKKyM6IGJ1aWx0aW4vbG9nLmM6MjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZpbmFsIG91dHB1dDogJWQgJXNcbiIKIG1zZ3N0ciAiS+G6v3QgeHXhuqV0IGN14buRaSBjw7luZzogJWQgJXNcbiIKIAotIzogYnVpbHRpbi9sb2cuYzo1MjIKKyM6IGJ1aWx0aW4vbG9nLmM6NTM1CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBzaG93ICVzOiBiYWQgZmlsZSIKIG1zZ3N0ciAiZ2l0IHNob3cgJXM6IHNhaSB04bqtcCB0aW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NTM3IGJ1aWx0aW4vbG9nLmM6NjMxCisjOiBidWlsdGluL2xvZy5jOjU1MCBidWlsdGluL2xvZy5jOjY0NQogIywgYy1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgcmVhZCBvYmplY3QgJXMiCi1tc2dzdHIgIktow7RuZyB0aOG7gyDEkeG7jWMgxJHhu5FpIHTGsOG7o25nICVzIgorbXNnaWQgImNvdWxkIG5vdCByZWFkIG9iamVjdCAlcyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyDEkeG7kWkgdMaw4bujbmcgJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6NjU1CisjOiBidWlsdGluL2xvZy5jOjY3MAogIywgYy1mb3JtYXQKLW1zZ2lkICJVbmtub3duIHR5cGU6ICVkIgotbXNnc3RyICJLaMO0bmcgbmjhuq1uIHJhIGtp4buDdTogJWQiCittc2dpZCAidW5rbm93biB0eXBlOiAlZCIKK21zZ3N0ciAia2jDtG5nIG5o4bqtbiByYSBraeG7g3U6ICVkIgogCi0jOiBidWlsdGluL2xvZy5jOjc3NgorIzogYnVpbHRpbi9sb2cuYzo4MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgY292ZXIgZnJvbSBkZXNjcmlwdGlvbiBtb2RlIgorbXNnc3RyICIlczogYmFvIGLhu41jIGtow7RuZyBo4bujcCBs4buHIHThu6sgY2jhur8gxJHhu5kgbcO0IHThuqMiCisKKyM6IGJ1aWx0aW4vbG9nLmM6ODIxCiBtc2dpZCAiZm9ybWF0LmhlYWRlcnMgd2l0aG91dCB2YWx1ZSIKIG1zZ3N0ciAiZm9ybWF0LmhlYWRlcnMga2jDtG5nIGPDsyBnacOhIHRy4buLIGPhu6UgdGjhu4MiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6ODc3CisjOiBidWlsdGluL2xvZy5jOjkzNgogbXNnaWQgIm5hbWUgb2Ygb3V0cHV0IGRpcmVjdG9yeSBpcyB0b28gbG9uZyIKIG1zZ3N0ciAidMOqbiBj4bunYSB0aMawIG3hu6VjIGvhur90IHh14bqldCBxdcOhIGTDoGkiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6ODkzCisjOiBidWlsdGluL2xvZy5jOjk1MgogIywgYy1mb3JtYXQKLW1zZ2lkICJDYW5ub3Qgb3BlbiBwYXRjaCBmaWxlICVzIgotbXNnc3RyICJLaMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4gbWnhur9uZyB2w6E6ICVzIgorbXNnaWQgImNhbm5vdCBvcGVuIHBhdGNoIGZpbGUgJXMiCittc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHThuq1wIHRpbiBtaeG6v25nIHbDoTogJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6OTEwCi1tc2dpZCAiTmVlZCBleGFjdGx5IG9uZSByYW5nZS4iCi1tc2dzdHIgIkPhuqduIGNow61uaCB4w6FjIG3hu5l0IHbDuW5nLiIKKyM6IGJ1aWx0aW4vbG9nLmM6OTY5Cittc2dpZCAibmVlZCBleGFjdGx5IG9uZSByYW5nZSIKK21zZ3N0ciAiY+G6p24gY2jDrW5oIHjDoWMgbeG7mXQgdsO5bmciCiAKLSM6IGJ1aWx0aW4vbG9nLmM6OTIwCi1tc2dpZCAiTm90IGEgcmFuZ2UuIgotbXNnc3RyICJLaMO0bmcgcGjhuqNpIGzDoCBt4buZdCB2w7luZy4iCisjOiBidWlsdGluL2xvZy5jOjk3OQorbXNnaWQgIm5vdCBhIHJhbmdlIgorbXNnc3RyICJraMO0bmcgcGjhuqNpIGzDoCBt4buZdCB2w7luZyIKIAotIzogYnVpbHRpbi9sb2cuYzoxMDQzCi1tc2dpZCAiQ292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKLW1zZ3N0ciAi4oCcQ292ZXIgbGV0dGVy4oCdIGPhuqduIGNobyDEkeG7i25oIGThuqFuZyB0aMawIgorIzogYnVpbHRpbi9sb2cuYzoxMTQzCittc2dpZCAiY292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKK21zZ3N0ciAi4oCcY292ZXIgbGV0dGVy4oCdIGPhuqduIGNobyDEkeG7i25oIGThuqFuZyB0aMawIgogCi0jOiBidWlsdGluL2xvZy5jOjExMTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTE0OQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgY292ZXItbGV0dGVyIGZpbGUiCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSB04bqhbyBjw6FjIHThuq1wIHRpbiBjb3Zlci1sZXR0ZXIiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnNhbmUgaW4tcmVwbHktdG86ICVzIgogbXNnc3RyICJpbi1yZXBseS10byDEkWnDqm4gcuG7kzogJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTE0NgorIzogYnVpbHRpbi9sb2cuYzoxMjU1CiBtc2dpZCAiZ2l0IGZvcm1hdC1wYXRjaCBbPG9wdGlvbnM+XSBbPHNpbmNlPiB8IDxyZXZpc2lvbi1yYW5nZT5dIgotbXNnc3RyICJnaXQgZm9ybWF0LXBhdGNoIFs8Y8OhYy10w7l5LWNo4buNbj5dIFs8a+G7gy104burPiB8IDx2w7luZy14ZW0teMOpdD5dIgorbXNnc3RyICJnaXQgZm9ybWF0LXBhdGNoIFs8Y8OhYyB0w7l5IGNo4buNbj5dIFs8a+G7gy104burPiB8IDx2w7luZy14ZW0teMOpdD5dIgogCi0jOiBidWlsdGluL2xvZy5jOjEyMDQKLW1zZ2lkICJUd28gb3V0cHV0IGRpcmVjdG9yaWVzPyIKLW1zZ3N0ciAiSGFpIHRoxrAgbeG7pWMga+G6v3QgeHXhuqV0PyIKKyM6IGJ1aWx0aW4vbG9nLmM6MTMxMworbXNnaWQgInR3byBvdXRwdXQgZGlyZWN0b3JpZXM/IgorbXNnc3RyICJoYWkgdGjGsCBt4bulYyBr4bq/dCB4deG6pXQ/IgogCi0jOiBidWlsdGluL2xvZy5jOjEzMTEgYnVpbHRpbi9sb2cuYzoyMDU0IGJ1aWx0aW4vbG9nLmM6MjA1NiBidWlsdGluL2xvZy5jOjIwNjgKKyM6IGJ1aWx0aW4vbG9nLmM6MTQyNCBidWlsdGluL2xvZy5jOjIxOTcgYnVpbHRpbi9sb2cuYzoyMTk5IGJ1aWx0aW4vbG9nLmM6MjIxMQogIywgYy1mb3JtYXQKLW1zZ2lkICJVbmtub3duIGNvbW1pdCAlcyIKLW1zZ3N0ciAiS2jDtG5nIGhp4buDdSBs4bqnbiBjaHV54buDbiBnaWFvICVzIgorbXNnaWQgInVua25vd24gY29tbWl0ICVzIgorbXNnc3RyICJraMO0bmcgaGnhu4N1IGzhuqduIGNodXnhu4NuIGdpYW8gJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTMyMSBidWlsdGluL25vdGVzLmM6ODk0IGJ1aWx0aW4vdGFnLmM6NTI2CisjOiBidWlsdGluL2xvZy5jOjE0MzQgYnVpbHRpbi9yZXBsYWNlLmM6NTggYnVpbHRpbi9yZXBsYWNlLmM6MjA3CisjOiBidWlsdGluL3JlcGxhY2UuYzoyMTAKICMsIGMtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZi4iCi1tc2dzdHIgIkfhurdwIGzhu5dpIGtoaSBwaMOibiBnaeG6o2kg4oCcJXPigJ0gbmjGsCBsw6AgbeG7mXQgdGhhbSBjaGnhur91IGjhu6NwIGzhu4cuIgorbXNnaWQgImZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYiCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSBwaMOibiBnaeG6o2kg4oCcJXPigJ0gbmjGsCBsw6AgbeG7mXQgdGhhbSBjaGnhur91IGjhu6NwIGzhu4ciCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTMyNgotbXNnaWQgIkNvdWxkIG5vdCBmaW5kIGV4YWN0IG1lcmdlIGJhc2UuIgotbXNnc3RyICJLaMO0bmcgdMOsbSB0aOG6pXkgbuG7gW4gaMOyYSB0cuG7mW4gY2jDrW5oIHjDoWMuIgorIzogYnVpbHRpbi9sb2cuYzoxNDM5Cittc2dpZCAiY291bGQgbm90IGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKK21zZ3N0ciAia2jDtG5nIHTDrG0gdGjhuqV5IG7hu4FuIGjDsmEgdHLhu5luIGNow61uaCB4w6FjIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ0MwogbXNnaWQgIiIKLSJGYWlsZWQgdG8gZ2V0IHVwc3RyZWFtLCBpZiB5b3Ugd2FudCB0byByZWNvcmQgYmFzZSBjb21taXQgYXV0b21hdGljYWxseSxcbiIKKyJmYWlsZWQgdG8gZ2V0IHVwc3RyZWFtLCBpZiB5b3Ugd2FudCB0byByZWNvcmQgYmFzZSBjb21taXQgYXV0b21hdGljYWxseSxcbiIKICJwbGVhc2UgdXNlIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG8gdG8gdHJhY2sgYSByZW1vdGUgYnJhbmNoLlxuIgotIk9yIHlvdSBjb3VsZCBzcGVjaWZ5IGJhc2UgY29tbWl0IGJ5IC0tYmFzZT08YmFzZS1jb21taXQtaWQ+IG1hbnVhbGx5LiIKKyJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseSIKIG1zZ3N0ciAiIgotIkfhurdwIGzhu5dpIGtoaSBs4bqleSB0aMaw4bujbmcgbmd14buTbiwgbuG6v3UgYuG6oW4gbXXhu5FuIGdoaSBs4bqhaSBs4bqnbiBjaHV54buDbiBnaWFvIG7hu4FuIG3hu5l0XG4iCisiZ+G6t3AgbOG7l2kga2hpIGzhuqV5IHRoxrDhu6NuZyBuZ3Xhu5NuLCBu4bq/dSBi4bqhbiBtdeG7kW4gZ2hpIGzhuqFpIGzhuqduIGNodXnhu4NuIGdpYW8gbuG7gW4gbeG7mXRcbiIKICJjw6FjaCB04buxIMSR4buZbmcsIHZ1aSBsw7JuZyBkw7luZyBcImdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG9cIiDEkeG7gyB0aGVvIGTDtWlcbiIKICJuaMOhbmggbcOheSBjaOG7py4gSG/hurdjIGzDoCBi4bqhbiBjw7MgdGjhu4MgY2jhu4kgxJHhu4tuaCBs4bqnbiBjaHV54buDbiBnaWFvIG7hu4FuIGLhurFuZ1xuIgotIlwiLS1iYXNlPTxiYXNlLWNvbW1pdC1pZD5cIiBt4buZdCBjw6FjaCB0aOG7pyBjw7RuZy4iCisiXCItLWJhc2U9PGJhc2UtY29tbWl0LWlkPlwiIG3hu5l0IGPDoWNoIHRo4bunIGPDtG5nIgogCi0jOiBidWlsdGluL2xvZy5jOjEzNTAKLW1zZ2lkICJGYWlsZWQgdG8gZmluZCBleGFjdCBtZXJnZSBiYXNlIgotbXNnc3RyICJH4bq3cCBs4buXaSBraGkgdMOsbSBu4buBbiBow7JhIHRy4buZbiBjaMOtbmggeMOhYy4iCisjOiBidWlsdGluL2xvZy5jOjE0NjMKK21zZ2lkICJmYWlsZWQgdG8gZmluZCBleGFjdCBtZXJnZSBiYXNlIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgdMOsbSBu4buBbiBow7JhIHRy4buZbiBjaMOtbmggeMOhYyIKIAotIzogYnVpbHRpbi9sb2cuYzoxMzYxCisjOiBidWlsdGluL2xvZy5jOjE0NzQKIG1zZ2lkICJiYXNlIGNvbW1pdCBzaG91bGQgYmUgdGhlIGFuY2VzdG9yIG9mIHJldmlzaW9uIGxpc3QiCiBtc2dzdHIgImzhuqduIGNodXnhu4NuIGdpYW8gbuG7gW4ga2jDtG5nIGzDoCB04buVIHRpw6puIGPhu6dhIGRhbmggc8OhY2ggxJFp4buDbSB4w6l0IGR1eeG7h3QiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTM2NQorIzogYnVpbHRpbi9sb2cuYzoxNDc4CiBtc2dpZCAiYmFzZSBjb21taXQgc2hvdWxkbid0IGJlIGluIHJldmlzaW9uIGxpc3QiCiBtc2dzdHIgImzhuqduIGNodXnhu4NuIGdpYW8gbuG7gW4ga2jDtG5nIMSRxrDhu6NjIHRyb25nIGRhbmggc8OhY2ggxJFp4buDbSB4w6l0IGR1eeG7h3QiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTQxOAorIzogYnVpbHRpbi9sb2cuYzoxNTMxCiBtc2dpZCAiY2Fubm90IGdldCBwYXRjaCBpZCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IG3DoyBtaeG6v25nIHbDoSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDcwCisjOiBidWlsdGluL2xvZy5jOjE1ODMKIG1zZ2lkICJmYWlsZWQgdG8gaW5mZXIgcmFuZ2UtZGlmZiByYW5nZXMiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBzdXkgbHXhuq1uIHJhbmdlLWRpZmYgKHbDuW5nIGtow6FjIGJp4buHdCkiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUxNQorIzogYnVpbHRpbi9sb2cuYzoxNjI5CiBtc2dpZCAidXNlIFtQQVRDSCBuL21dIGV2ZW4gd2l0aCBhIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAiZMO5bmcgW1BBVENIIG4vbV0gbmdheSBj4bqjIHbhu5tpIG1p4bq/bmcgdsOhIMSRxqFuIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MTgKKyM6IGJ1aWx0aW4vbG9nLmM6MTYzMgogbXNnaWQgInVzZSBbUEFUQ0hdIGV2ZW4gd2l0aCBtdWx0aXBsZSBwYXRjaGVzIgogbXNnc3RyICJkw7luZyBbVsOBXSBuZ2F5IGPhuqMgduG7m2kgY8OhYyBtaeG6v25nIHbDoSBwaOG7qWMgdOG6oXAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyMgorIzogYnVpbHRpbi9sb2cuYzoxNjM2CiBtc2dpZCAicHJpbnQgcGF0Y2hlcyB0byBzdGFuZGFyZCBvdXQiCiBtc2dzdHIgImhp4buDbiB0aOG7iyBtaeG6v25nIHbDoSByYSDEkeG6p3UgcmEgY2h14bqpbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI0CisjOiBidWlsdGluL2xvZy5jOjE2MzgKIG1zZ2lkICJnZW5lcmF0ZSBhIGNvdmVyIGxldHRlciIKIG1zZ3N0ciAidOG6oW8gYsOsIHRoxrAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUyNgorIzogYnVpbHRpbi9sb2cuYzoxNjQwCiBtc2dpZCAidXNlIHNpbXBsZSBudW1iZXIgc2VxdWVuY2UgZm9yIG91dHB1dCBmaWxlIG5hbWVzIgogbXNnc3RyICJz4butIGThu6VuZyBjaOG7l2kgZMOjeSBz4buRIGThuqFuZyDEkcahbiBnaeG6o24gY2hvIHTDqm4gdOG6rXAtdGluIHh14bqldCByYSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI3CisjOiBidWlsdGluL2xvZy5jOjE2NDEKIG1zZ2lkICJzZngiCiBtc2dzdHIgInNmeCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI4CisjOiBidWlsdGluL2xvZy5jOjE2NDIKIG1zZ2lkICJ1c2UgPHNmeD4gaW5zdGVhZCBvZiAnLnBhdGNoJyIKIG1zZ3N0ciAic+G7rSBk4bulbmcgPHNmeD4gdGhheSBjaG8g4oCcLnBhdGNo4oCdIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0NAogbXNnaWQgInN0YXJ0IG51bWJlcmluZyBwYXRjaGVzIGF0IDxuPiBpbnN0ZWFkIG9mIDEiCiBtc2dzdHIgImLhuq90IMSR4bqndSDEkcOhbmggc+G7kSBtaeG6v25nIHbDoSB04burIDxuPiB0aGF5IHbDrCAxIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzIKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0NgogbXNnaWQgIm1hcmsgdGhlIHNlcmllcyBhcyBOdGggcmUtcm9sbCIKIG1zZ3N0ciAixJHDoW5oIGThuqV1IGNodeG7l2kgbuG7kWkgdGnhur9wIGThuqFuZyB0aOG7qS1OIHJlLXJvbGwiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzNAorIzogYnVpbHRpbi9sb2cuYzoxNjQ4CiBtc2dpZCAiVXNlIFtSRkMgUEFUQ0hdIGluc3RlYWQgb2YgW1BBVENIXSIKIG1zZ3N0ciAiRMO5bmcgW1JGQyBWw4FdIHRoYXkgY2hvIFtWw4FdIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1MQorbXNnaWQgImNvdmVyLWZyb20tZGVzY3JpcHRpb24tbW9kZSIKK21zZ3N0ciAiY292ZXItZnJvbS1kZXNjcmlwdGlvbi1tb2RlIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTIKK21zZ2lkICJnZW5lcmF0ZSBwYXJ0cyBvZiBhIGNvdmVyIGxldHRlciBiYXNlZCBvbiBhIGJyYW5jaCdzIGRlc2NyaXB0aW9uIgorbXNnc3RyICJ04bqhbyByYSBjw6FjIHBo4bqnbiBj4bunYSBt4buZdCBsw6EgdGjGsCBiYW8gZ+G7k20gZOG7sWEgdHLDqm4gbcO0IHThuqMgY+G7p2EgbmjDoW5oIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTQKIG1zZ2lkICJVc2UgWzxwcmVmaXg+XSBpbnN0ZWFkIG9mIFtQQVRDSF0iCiBtc2dzdHIgIkTDuW5nIFs8dGnhu4FuLXThu5E+XSB0aGF5IGNobyBbVsOBXSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTQwCisjOiBidWlsdGluL2xvZy5jOjE2NTcKIG1zZ2lkICJzdG9yZSByZXN1bHRpbmcgZmlsZXMgaW4gPGRpcj4iCiBtc2dzdHIgImzGsHUgY8OhYyB04bqtcCB0aW4ga+G6v3QgcXXhuqMgdHJvbmcgPHQubeG7pWM+IgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDMKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2MAogbXNnaWQgImRvbid0IHN0cmlwL2FkZCBbUEFUQ0hdIgogbXNnc3RyICJraMO0bmcgc3RyaXAvYWRkIFtWw4FdIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDYKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2MwogbXNnaWQgImRvbid0IG91dHB1dCBiaW5hcnkgZGlmZnMiCiBtc2dzdHIgImtow7RuZyBr4bq/dCB4deG6pXQgZGlmZiAobmjhu69uZyBraMOhYyBiaeG7h3QpIG5o4buLIHBow6JuIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NDgKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2NQogbXNnaWQgIm91dHB1dCBhbGwtemVybyBoYXNoIGluIEZyb20gaGVhZGVyIgogbXNnc3RyICJ4deG6pXQgbeG7jWkgbcOjIGLEg20gYWxsLXplcm8gdHJvbmcgcGjhuqduIMSR4bqndSBGcm9tIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2NwogbXNnaWQgImRvbid0IGluY2x1ZGUgYSBwYXRjaCBtYXRjaGluZyBhIGNvbW1pdCB1cHN0cmVhbSIKIG1zZ3N0ciAia2jDtG5nIGJhbyBn4buTbSBtaeG6v25nIHbDoSBraOG7m3AgduG7m2kgbeG7mXQgbOG6p24gY2h1eeG7g24gZ2lhbyB0aMaw4bujbmcgbmd14buTbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTUyCisjOiBidWlsdGluL2xvZy5jOjE2NjkKIG1zZ2lkICJzaG93IHBhdGNoIGZvcm1hdCBpbnN0ZWFkIG9mIGRlZmF1bHQgKHBhdGNoICsgc3RhdCkiCiBtc2dzdHIgImhp4buDbiB0aOG7iyDEkeG7i25oIGThuqFuZyBtaeG6v25nIHbDoSB0aGF5IHbDrCBt4bq3YyDEkeG7i25oIChtaeG6v25nIHbDoSArIHRo4buRbmcga8OqKSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU0CisjOiBidWlsdGluL2xvZy5jOjE2NzEKIG1zZ2lkICJNZXNzYWdpbmciCiBtc2dzdHIgIkzhu51pIG5o4bqvbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU1CisjOiBidWlsdGluL2xvZy5jOjE2NzIKIG1zZ2lkICJoZWFkZXIiCiBtc2dzdHIgIsSR4bqndSDEkeG7gSB0aMawIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTYKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MwogbXNnaWQgImFkZCBlbWFpbCBoZWFkZXIiCiBtc2dzdHIgInRow6ptIMSR4bqndSDEkeG7gSB0aMawIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTcgYnVpbHRpbi9sb2cuYzoxNTU5CisjOiBidWlsdGluL2xvZy5jOjE2NzQgYnVpbHRpbi9sb2cuYzoxNjc2CiBtc2dpZCAiZW1haWwiCiBtc2dzdHIgInRoxrAgxJFp4buHbiB04butIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3NAogbXNnaWQgImFkZCBUbzogaGVhZGVyIgogbXNnc3RyICJ0aMOqbSBUbzogxJHhuqd1IMSR4buBIHRoxrAiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1OQorIzogYnVpbHRpbi9sb2cuYzoxNjc2CiBtc2dpZCAiYWRkIENjOiBoZWFkZXIiCiBtc2dzdHIgInRow6ptIENjOiDEkeG6p3UgxJHhu4EgdGjGsCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTYxCisjOiBidWlsdGluL2xvZy5jOjE2NzgKIG1zZ2lkICJpZGVudCIKIG1zZ3N0ciAidGjhu6V0IGzhu4EiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2MgorIzogYnVpbHRpbi9sb2cuYzoxNjc5CiBtc2dpZCAic2V0IEZyb20gYWRkcmVzcyB0byA8aWRlbnQ+IChvciBjb21taXR0ZXIgaWRlbnQgaWYgYWJzZW50KSIKIG1zZ3N0ciAiIgogIsSR4bq3dCDigJzEkOG7i2EgY2jhu4kgZ+G7rWnigJ0gdGjDoG5oIDx0aOG7pSBs4buBPiAoaG/hurdjIHRo4buldCBs4buBIG5nxrDhu51pIGNvbW1pdCBu4bq/dSBi4buPIHF1w6puKSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTY0CisjOiBidWlsdGluL2xvZy5jOjE2ODEKIG1zZ2lkICJtZXNzYWdlLWlkIgogbXNnc3RyICJtZXNzYWdlLWlkIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjUKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4MgogbXNnaWQgIm1ha2UgZmlyc3QgbWFpbCBhIHJlcGx5IHRvIDxtZXNzYWdlLWlkPiIKIG1zZ3N0ciAiZMO5bmcgdGjGsCDEkeG6p3UgdGnDqm4gxJHhu4MgdHLhuqMgbOG7nWkgPG1lc3NhZ2UtaWQ+IgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjYgYnVpbHRpbi9sb2cuYzoxNTY5CisjOiBidWlsdGluL2xvZy5jOjE2ODMgYnVpbHRpbi9sb2cuYzoxNjg2CiBtc2dpZCAiYm91bmRhcnkiCiBtc2dzdHIgInJhbmggZ2nhu5tpIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4NAogbXNnaWQgImF0dGFjaCB0aGUgcGF0Y2giCiBtc2dzdHIgIsSRw61uaCBrw6htIG1p4bq/bmcgdsOhIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4NwogbXNnaWQgImlubGluZSB0aGUgcGF0Y2giCiBtc2dzdHIgImTDuW5nIG1p4bq/bmcgdsOhIGzDoG0gbuG7mWkgZHVuZyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc0CisjOiBidWlsdGluL2xvZy5jOjE2OTEKIG1zZ2lkICJlbmFibGUgbWVzc2FnZSB0aHJlYWRpbmcsIHN0eWxlczogc2hhbGxvdywgZGVlcCIKIG1zZ3N0ciAiY2hvIHBow6lwIGx14buTbmcgbOG7nWkgbmjhuq9uLCBraeG7g3U6IOKAnHNoYWxsb3figJ0sIOKAnGRlZXDigJ0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3NgorIzogYnVpbHRpbi9sb2cuYzoxNjkzCiBtc2dpZCAic2lnbmF0dXJlIgogbXNnc3RyICJjaOG7ryBrw70iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3NworIzogYnVpbHRpbi9sb2cuYzoxNjk0CiBtc2dpZCAiYWRkIGEgc2lnbmF0dXJlIgogbXNnc3RyICJ0aMOqbSBjaOG7ryBrw70iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3OAorIzogYnVpbHRpbi9sb2cuYzoxNjk1CiBtc2dpZCAiYmFzZS1jb21taXQiCiBtc2dzdHIgImzhuqduX2NodXnhu4NuX2dpYW9fbuG7gW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3OQorIzogYnVpbHRpbi9sb2cuYzoxNjk2CiBtc2dpZCAiYWRkIHByZXJlcXVpc2l0ZSB0cmVlIGluZm8gdG8gdGhlIHBhdGNoIHNlcmllcyIKIG1zZ3N0ciAiYWRkIHRyxrDhu5tjIGjhur90IMSRw7JpIGjhu49pIHRow7RuZyB0aW4gY8OieSB04bubaSBzw6otcmkgbWnhur9uZyB2w6EiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4MQorIzogYnVpbHRpbi9sb2cuYzoxNjk4CiBtc2dpZCAiYWRkIGEgc2lnbmF0dXJlIGZyb20gYSBmaWxlIgogbXNnc3RyICJ0aMOqbSBjaOG7ryBrw70gdOG7qyBt4buZdCB04bqtcCB0aW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4MgorIzogYnVpbHRpbi9sb2cuYzoxNjk5CiBtc2dpZCAiZG9uJ3QgcHJpbnQgdGhlIHBhdGNoIGZpbGVuYW1lcyIKIG1zZ3N0ciAia2jDtG5nIGhp4buDbiB0aOG7iyBjw6FjIHTDqm4gdOG6rXAgdGluIGPhu6dhIG1p4bq/bmcgdsOhIgogCi0jOiBidWlsdGluL2xvZy5jOjE1ODQKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMQogbXNnaWQgInNob3cgcHJvZ3Jlc3Mgd2hpbGUgZ2VuZXJhdGluZyBwYXRjaGVzIgogbXNnc3RyICJoaeG7g24gdGjhu4sgYuG7mSDEkW8gdGnhur9uIHRyaeG7g24gdHJvbmcga2hpIHThuqFvIGPDoWMgbWnhur9uZyB2w6EiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4NQotbXNnaWQgInJldiIKLW1zZ3N0ciAicmV2IgotCi0jOiBidWlsdGluL2xvZy5jOjE1ODYKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMwogbXNnaWQgInNob3cgY2hhbmdlcyBhZ2FpbnN0IDxyZXY+IGluIGNvdmVyIGxldHRlciBvciBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgIiIKICJoaeG7g24gdGjhu4sgY8OhYyB0aGF5IMSR4buVaSBk4buxYSB0csOqbiA8cmV2PiB0cm9uZyBjw6FjIGNo4buvIGJhbyBi4buNYyBob+G6t2MgbWnhur9uZyB2w6EgxJHGoW4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4OQorIzogYnVpbHRpbi9sb2cuYzoxNzA2CiBtc2dpZCAic2hvdyBjaGFuZ2VzIGFnYWluc3QgPHJlZnNwZWM+IGluIGNvdmVyIGxldHRlciBvciBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgIiIKICJoaeG7g24gdGjhu4sgY8OhYyB0aGF5IMSR4buVaSBk4buxYSB0csOqbiA8cmVmc3BlYz4gdHJvbmcgY8OhYyBjaOG7ryBiYW8gYuG7jWMgaG/hurdjIG1p4bq/bmcgdsOhICIKICLEkcahbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTkxCisjOiBidWlsdGluL2xvZy5jOjE3MDgKIG1zZ2lkICJwZXJjZW50YWdlIGJ5IHdoaWNoIGNyZWF0aW9uIGlzIHdlaWdodGVkIgogbXNnc3RyICJ04bu3IGzhu4cgcGjhuqduIHRyxINtIHRoZW8gY8OhaSB04bqhbyBsw6Agd2VpZ2h0ZWQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY2NgorIzogYnVpbHRpbi9sb2cuYzoxNzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgaWRlbnQgbGluZTogJXMiCiBtc2dzdHIgImTDsm5nIHRo4buldCBs4buBIGtow7RuZyBo4bujcCBs4buHOiAlcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjgxCisjOiBidWlsdGluL2xvZy5jOjE4MDcKIG1zZ2lkICItbiBhbmQgLWsgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLW4gdsOgICAtayBsb+G6oWkgdOG7qyBs4bqrbiBuaGF1IgogCi0jOiBidWlsdGluL2xvZy5jOjE2ODMKKyM6IGJ1aWx0aW4vbG9nLmM6MTgwOQogbXNnaWQgIi0tc3ViamVjdC1wcmVmaXgvLS1yZmMgYW5kIC1rIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi0tc3ViamVjdC1wcmVmaXgvLS1yZmMgdsOgIC1rIHh1bmcga2jhuq9jIG5oYXUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5MQorIzogYnVpbHRpbi9sb2cuYzoxODE3CiBtc2dpZCAiLS1uYW1lLW9ubHkgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS1uYW1lLW9ubHkga2jDtG5nIGjhu6NwIGzDvSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjkzCisjOiBidWlsdGluL2xvZy5jOjE4MTkKIG1zZ2lkICItLW5hbWUtc3RhdHVzIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tbmFtZS1zdGF0dXMga2jDtG5nIGjhu6NwIGzDvSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjk1CisjOiBidWlsdGluL2xvZy5jOjE4MjEKIG1zZ2lkICItLWNoZWNrIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCiBtc2dzdHIgIi0tY2hlY2sga2jDtG5nIGjhu6NwIGzDvSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNzI3CisjOiBidWlsdGluL2xvZy5jOjE4NTQKIG1zZ2lkICJzdGFuZGFyZCBvdXRwdXQsIG9yIGRpcmVjdG9yeSwgd2hpY2ggb25lPyIKIG1zZ3N0ciAixJHhuqd1IHJhIGNodeG6qW4sIGhheSB0aMawIG3hu6VjLCBjaOG7jW4gY8OhaSBuw6BvPyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNzI5Ci0jLCBjLWZvcm1hdAotbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciCi1tc2dzdHIgIktow7RuZyB0aOG7gyB04bqhbyB0aMawIG3hu6VjIOKAnCVz4oCdIgotCi0jOiBidWlsdGluL2xvZy5jOjE4MTYKKyM6IGJ1aWx0aW4vbG9nLmM6MTk1OAogbXNnaWQgIi0taW50ZXJkaWZmIHJlcXVpcmVzIC0tY292ZXItbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAiLS1pbnRlcmRpZmYgY+G6p24gLS1jb3Zlci1sZXR0ZXIgaG/hurdjIHbDoSDEkcahbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODIwCisjOiBidWlsdGluL2xvZy5jOjE5NjIKIG1zZ2lkICJJbnRlcmRpZmY6IgogbXNnc3RyICJJbnRlcmRpZmY6IgogCi0jOiBidWlsdGluL2xvZy5jOjE4MjEKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnRlcmRpZmYgYWdhaW5zdCB2JWQ6IgogbXNnc3RyICJJbnRlcmRpZmYgZOG7sWEgdHLDqm4gdiVkOiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODI3CisjOiBidWlsdGluL2xvZy5jOjE5NjkKIG1zZ2lkICItLWNyZWF0aW9uLWZhY3RvciByZXF1aXJlcyAtLXJhbmdlLWRpZmYiCiBtc2dzdHIgIi0tY3JlYXRpb24tZmFjdG9yIHnDqnUgY+G6p3UgLS1yYW5nZS1kaWZmIgogCi0jOiBidWlsdGluL2xvZy5jOjE4MzEKKyM6IGJ1aWx0aW4vbG9nLmM6MTk3MwogbXNnaWQgIi0tcmFuZ2UtZGlmZiByZXF1aXJlcyAtLWNvdmVyLWxldHRlciBvciBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgIi0tcmFuZ2UtZGlmZiB5w6p1IGPhuqd1IC0tY292ZXItbGV0dGVyIGhv4bq3YyBtaeG6v25nIHbDoSDEkcahbiIKIAotIzogYnVpbHRpbi9sb2cuYzoxODM5CisjOiBidWlsdGluL2xvZy5jOjE5ODEKIG1zZ2lkICJSYW5nZS1kaWZmOiIKIG1zZ3N0ciAiUmFuZ2UtZGlmZjoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg0MAorIzogYnVpbHRpbi9sb2cuYzoxOTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJhbmdlLWRpZmYgYWdhaW5zdCB2JWQ6IgogbXNnc3RyICJSYW5nZS1kaWZmIGThu7FhIHRyw6puIHYlZDoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg1MQorIzogYnVpbHRpbi9sb2cuYzoxOTkzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZWFkIHNpZ25hdHVyZSBmaWxlICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgdOG6rXAgdGluIGNo4buvIGvDvSDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9sb2cuYzoxODg3CisjOiBidWlsdGluL2xvZy5jOjIwMjkKIG1zZ2lkICJHZW5lcmF0aW5nIHBhdGNoZXMiCiBtc2dzdHIgIsSQYW5nIHThuqFvIGPDoWMgbWnhur9uZyB2w6EiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTkzMQotbXNnaWQgIkZhaWxlZCB0byBjcmVhdGUgb3V0cHV0IGZpbGVzIgotbXNnc3RyICJH4bq3cCBs4buXaSBraGkgdOG6oW8gY8OhYyB04bqtcCB0aW4ga+G6v3QgeHXhuqV0IgorIzogYnVpbHRpbi9sb2cuYzoyMDczCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBvdXRwdXQgZmlsZXMiCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSB04bqhbyBjw6FjIHThuq1wIHRpbiBr4bq/dCB4deG6pXQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTk4OQorIzogYnVpbHRpbi9sb2cuYzoyMTMyCiBtc2dpZCAiZ2l0IGNoZXJyeSBbLXZdIFs8dXBzdHJlYW0+IFs8aGVhZD4gWzxsaW1pdD5dXV0iCiBtc2dzdHIgImdpdCBjaGVycnkgWy12XSBbPHRoxrDhu6NuZy1uZ3Xhu5NuPiBbPMSR4bqndT4gWzxnaeG7m2ktaOG6oW4+XV1dIgogCi0jOiBidWlsdGluL2xvZy5jOjIwNDMKKyM6IGJ1aWx0aW4vbG9nLmM6MjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IGZpbmQgYSB0cmFja2VkIHJlbW90ZSBicmFuY2gsIHBsZWFzZSBzcGVjaWZ5IDx1cHN0cmVhbT4gbWFudWFsbHkuXG4iCkBAIC0xMjY1OSwxMTAgKzE1NzkwLDExMCBAQAogIktow7RuZyB0w6xtIHRo4bqleSBuaMOhbmggbeG6oW5nIMSRxrDhu6NjIHRoZW8gZMO1aSwgaMOjeSBjaOG7iSDEkeG7i25oIDx0aMaw4bujbmctbmd14buTbj4gbeG7mXQgIgogImPDoWNoIHRo4bunIGPDtG5nLlxuIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NDY5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NDcwCiBtc2dpZCAiZ2l0IGxzLWZpbGVzIFs8b3B0aW9ucz5dIFs8ZmlsZT4uLi5dIgotbXNnc3RyICJnaXQgbHMtZmlsZXMgWzxjw6FjLXTDuXktY2jhu41uPl0gWzx04bqtcC10aW4+4oCmXSIKK21zZ3N0ciAiZ2l0IGxzLWZpbGVzIFs8Y8OhYyB0w7l5IGNo4buNbj5dIFs8dOG6rXAtdGluPuKApl0iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjYKIG1zZ2lkICJpZGVudGlmeSB0aGUgZmlsZSBzdGF0dXMgd2l0aCB0YWdzIgogbXNnc3RyICJuaOG6rW4gZOG6oW5nIGPDoWMgdHLhuqFuZyB0aMOhaSB04bqtcCB0aW4gduG7m2kgdGjhursiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjcKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjgKIG1zZ2lkICJ1c2UgbG93ZXJjYXNlIGxldHRlcnMgZm9yICdhc3N1bWUgdW5jaGFuZ2VkJyBmaWxlcyIKIG1zZ3N0ciAiIgogImTDuW5nIGNo4buvIGPDoWkgdmnhur90IHRoxrDhu51uZyBjaG8gY8OhYyB04bqtcCB0aW4g4oCcYXNzdW1lIHVuY2hhbmdlZOKAnSAoZ2nhuqMgxJHhu4tuaCBraMO0bmcgIgogInRoYXkgxJHhu5VpKSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUyOQorIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMAogbXNnaWQgInVzZSBsb3dlcmNhc2UgbGV0dGVycyBmb3IgJ2ZzbW9uaXRvciBjbGVhbicgZmlsZXMiCiBtc2dzdHIgImTDuW5nIGNo4buvIGPDoWkgdmnhur90IHRoxrDhu51uZyBjaG8gY8OhYyB04bqtcCB0aW4g4oCcZnNtb25pdG9yIGNsZWFu4oCdIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTMxCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTMyCiBtc2dpZCAic2hvdyBjYWNoZWQgZmlsZXMgaW4gdGhlIG91dHB1dCAoZGVmYXVsdCkiCiBtc2dzdHIgImhp4buDbiB0aOG7iyBjw6FjIHThuq1wIHRpbiDEkcaw4bujYyBuaOG7myB04bqhbSB2w6BvIMSR4bqndSByYSAobeG6t2MgxJHhu4tuaCkiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzMKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzQKIG1zZ2lkICJzaG93IGRlbGV0ZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIGPDoWMgdOG6rXAgdGluIMSRw6MgeMOzYSB0cm9uZyBr4bq/dCB4deG6pXQiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzYKIG1zZ2lkICJzaG93IG1vZGlmaWVkIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgImhp4buDbiB0aOG7iyBjw6FjIHThuq1wIHRpbiDEkcOjIGLhu4sgc+G7rWEgxJHhu5VpIHJhIGvhur90IHh14bqldCIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOAogbXNnaWQgInNob3cgb3RoZXIgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIGPDoWMgdOG6rXAgdGluIGtow6FjIHRyb25nIGvhur90IHh14bqldCIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MAogbXNnaWQgInNob3cgaWdub3JlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJoaeG7g24gdGjhu4sgY8OhYyB04bqtcCB0aW4gYuG7iyBi4buPIHF1YSB0cm9uZyBr4bq/dCB4deG6pXQiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDIKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDMKIG1zZ2lkICJzaG93IHN0YWdlZCBjb250ZW50cycgb2JqZWN0IG5hbWUgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIHTDqm4gxJHhu5FpIHTGsOG7o25nIGPhu6dhIG7hu5lpIGR1bmcgxJHGsOG7o2MgxJHhurd0IGzDqm4gYuG7hyBwaMOzbmcgcmEga+G6v3QgeHXhuqV0IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ0CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ1CiBtc2dpZCAic2hvdyBmaWxlcyBvbiB0aGUgZmlsZXN5c3RlbSB0aGF0IG5lZWQgdG8gYmUgcmVtb3ZlZCIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIGPDoWMgdOG6rXAgdGluIHRyw6puIGjhu4cgdGjhu5FuZyB04bqtcCB0aW4gbcOgIG7DsyBj4bqnbiDEkcaw4bujYyBn4buhIGLhu48iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDYKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDcKIG1zZ2lkICJzaG93ICdvdGhlcicgZGlyZWN0b3JpZXMnIG5hbWVzIG9ubHkiCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyB0w6puIGPhu6dhIGPDoWMgdGjGsCBt4bulYyDigJxraMOhY+KAnSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OQogbXNnaWQgInNob3cgbGluZSBlbmRpbmdzIG9mIGZpbGVzIgogbXNnc3RyICJoaeG7g24gdGjhu4sga+G6v3QgdGjDumMgZMOybmcgY+G7p2EgY8OhYyB04bqtcCB0aW4iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTAKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTEKIG1zZ2lkICJkb24ndCBzaG93IGVtcHR5IGRpcmVjdG9yaWVzIgogbXNnc3RyICJraMO0bmcgaGnhu4NuIHRo4buLIHRoxrAgbeG7pWMgcuG7l25nIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTUzCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU0CiBtc2dpZCAic2hvdyB1bm1lcmdlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICJoaeG7g24gdGjhu4sgY8OhYyB04bqtcCB0aW4gY2jGsGEgaMOyYSB0cuG7mW4gdHJvbmcga+G6v3QgeHXhuqV0IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTU1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU2CiBtc2dpZCAic2hvdyByZXNvbHZlLXVuZG8gaW5mb3JtYXRpb24iCiBtc2dzdHIgImhp4buDbiB0aOG7iyB0aMO0bmcgdGluIHJlc29sdmUtdW5kbyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1OAogbXNnaWQgInNraXAgZmlsZXMgbWF0Y2hpbmcgcGF0dGVybiIKIG1zZ3N0ciAiYuG7jyBxdWEgbmjhu69uZyB04bqtcCB0aW4ga2jhu5twIHbhu5tpIG3hu5l0IG3huqt1IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTYwCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTYxCiBtc2dpZCAiZXhjbHVkZSBwYXR0ZXJucyBhcmUgcmVhZCBmcm9tIDxmaWxlPiIKIG1zZ3N0ciAibeG6q3UgbG/huqFpIHRy4burIMSRxrDhu6NjIMSR4buNYyB04burIDx04bqtcCB0aW4+IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTYzCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTY0CiBtc2dpZCAicmVhZCBhZGRpdGlvbmFsIHBlci1kaXJlY3RvcnkgZXhjbHVkZSBwYXR0ZXJucyBpbiA8ZmlsZT4iCiBtc2dzdHIgIsSR4buNYyB0aMOqbSBjw6FjIG3huqt1IG5nb+G6oWkgdHLhu6sgbeG7l2kgdGjGsCBt4bulYyB0cm9uZyA8dOG6rXAgdGluPiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NgogbXNnaWQgImFkZCB0aGUgc3RhbmRhcmQgZ2l0IGV4Y2x1c2lvbnMiCiBtc2dzdHIgInRow6ptIGxv4bqhaSB0cuG7qyB0acOqdSBjaHXhuqluIGtp4buDdSBnaXQiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzAKIG1zZ2lkICJtYWtlIHRoZSBvdXRwdXQgcmVsYXRpdmUgdG8gdGhlIHByb2plY3QgdG9wIGRpcmVjdG9yeSIKIG1zZ3N0ciAibMOgbSBjaG8ga+G6v3QgeHXhuqV0IGxpw6puIHF1YW4gxJHhur9uIHRoxrAgbeG7pWMg4bufIG3hu6ljIGNhbyBuaOG6pXQgKGfhu5FjKSBj4bunYSBk4buxIMOhbiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MwogbXNnaWQgInJlY3Vyc2UgdGhyb3VnaCBzdWJtb2R1bGVzIgogbXNnc3RyICLEkeG7hyBxdXkgeHV5w6puIHF1YSBtw7QtxJF1biBjb24iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzQKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzUKIG1zZ2lkICJpZiBhbnkgPGZpbGU+IGlzIG5vdCBpbiB0aGUgaW5kZXgsIHRyZWF0IHRoaXMgYXMgYW4gZXJyb3IiCiBtc2dzdHIgIm7hur91IDx04bqtcCB0aW4+IGLhuqV0IGvhu7Mga2jDtG5nIOG7nyB0cm9uZyBi4bqjbmcgbeG7pWMgbOG7pWMsIHjhu60gbMO9IG7DsyBuaMawIG3hu5l0IGzhu5dpIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTc1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc2CiBtc2dpZCAidHJlZS1pc2giCiBtc2dzdHIgInRyZWUtaXNoIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTc2CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc3CiBtc2dpZCAicHJldGVuZCB0aGF0IHBhdGhzIHJlbW92ZWQgc2luY2UgPHRyZWUtaXNoPiBhcmUgc3RpbGwgcHJlc2VudCIKIG1zZ3N0ciAiIgogImdp4bqjIMSR4buLbmggcuG6sW5nIGPDoWMgxJHGsOG7nW5nIGThuqtuIMSRw6MgYuG7iyBn4buhIGLhu48ga+G7gyB04burIDx0cmVlLWlzaD4gbmF5IHbhuqtuIGhp4buHbiBkaeG7h24iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzgKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzkKIG1zZ2lkICJzaG93IGRlYnVnZ2luZyBkYXRhIgogbXNnc3RyICJoaeG7g24gdGjhu4sgZOG7ryBsaeG7h3UgZ+G7oSBs4buXaSIKIApAQCAtMTI3ODAsNyArMTU5MTEsNyBAQAogbXNnaWQgImRvIG5vdCBwcmludCByZW1vdGUgVVJMIgogbXNnc3RyICJraMO0bmcgaGnhu4NuIHRo4buLIFVSTCBtw6F5IGNo4bunIgogCi0jOiBidWlsdGluL2xzLXJlbW90ZS5jOjYwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjIgYnVpbHRpbi9yZWJhc2UuYzo5MDMKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjAgYnVpbHRpbi9scy1yZW1vdGUuYzo2MiBidWlsdGluL3JlYmFzZS5jOjE1NjEKIG1zZ2lkICJleGVjIgogbXNnc3RyICJ0aOG7sWMgdGhpIgogCkBAIC0xMjgwNCwxNyArMTU5MzUsMTcgQEAKIG1zZ2lkICJ0YWtlIHVybC48YmFzZT4uaW5zdGVhZE9mIGludG8gYWNjb3VudCIKIG1zZ3N0ciAibOG6pXkgdXJsLjxiYXNlPi5pbnN0ZWFkT2YgdsOgbyB0cm9uZyB0w6BpIGtob+G6o24iCiAKLSM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzMKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzIKIG1zZ2lkICJleGl0IHdpdGggZXhpdCBjb2RlIDIgaWYgbm8gbWF0Y2hpbmcgcmVmcyBhcmUgZm91bmQiCiBtc2dzdHIgInRob8OhdCB24bubaSBtw6MgbMOgIDIgbuG6v3Uga2jDtG5nIHTDrG0gdGjhuqV5IHRoYW0gY2hp4bq/dSBuw6BvIGto4bubcCIKIAotIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NQogbXNnaWQgInNob3cgdW5kZXJseWluZyByZWYgaW4gYWRkaXRpb24gdG8gdGhlIG9iamVjdCBwb2ludGVkIGJ5IGl0IgogbXNnc3RyICJoaeG7g24gdGjhu4sgdGhhbSBjaGnhur91IG7hurFtIGTGsOG7m2kgxJHhu4MgdGjDqm0gdsOgbyDEkeG7kWkgdMaw4bujbmcgxJHGsOG7o2MgY2jhu4kgYuG7n2kgbsOzIgogCiAjOiBidWlsdGluL2xzLXRyZWUuYzozMAogbXNnaWQgImdpdCBscy10cmVlIFs8b3B0aW9ucz5dIDx0cmVlLWlzaD4gWzxwYXRoPi4uLl0iCi1tc2dzdHIgImdpdCBscy10cmVlIFs8Y8OhYy10w7l5LWNo4buNbj5dIDx0cmVlLWlzaD4gWzzEkcaw4budbmctZOG6q24+4oCmXSIKK21zZ3N0ciAiZ2l0IGxzLXRyZWUgWzxjw6FjIHTDuXkgY2jhu41uPl0gPHRyZWUtaXNoPiBbPC/Ekcaw4budbmcvZOG6q24+4oCmXSIKIAogIzogYnVpbHRpbi9scy10cmVlLmM6MTI4CiBtc2dpZCAib25seSBzaG93IHRyZWVzIgpAQCAtMTI4NTMsMjY2ICsxNTk4NCwyODYgQEAKIG1zZ2lkICJlbXB0eSBtYm94OiAnJXMnIgogbXNnc3RyICJtYm94IHRy4buRbmcgcuG7l25nOiDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjUyCisjOiBidWlsdGluL21lcmdlLmM6NTUKIG1zZ2lkICJnaXQgbWVyZ2UgWzxvcHRpb25zPl0gWzxjb21taXQ+Li4uXSIKLW1zZ3N0ciAiZ2l0IG1lcmdlIFs8Y8OhYy10w7l5LWNo4buNbj5dIFs8Y29tbWl0PuKApl0iCittc2dzdHIgImdpdCBtZXJnZSBbPGPDoWMgdMO5eSBjaOG7jW4+XSBbPGNvbW1pdD7igKZdIgogCi0jOiBidWlsdGluL21lcmdlLmM6NTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1NgogbXNnaWQgImdpdCBtZXJnZSAtLWFib3J0IgogbXNnc3RyICJnaXQgbWVyZ2UgLS1hYm9ydCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjU0CisjOiBidWlsdGluL21lcmdlLmM6NTcKIG1zZ2lkICJnaXQgbWVyZ2UgLS1jb250aW51ZSIKIG1zZ3N0ciAiZ2l0IG1lcmdlIC0tY29udGludWUiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTkKIG1zZ2lkICJzd2l0Y2ggYG0nIHJlcXVpcmVzIGEgdmFsdWUiCiBtc2dzdHIgInN3aXRjaCDigJxt4oCdIHnDqnUgY+G6p3UgbeG7mXQgZ2nDoSB0cuG7iyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE3NworIzogYnVpbHRpbi9tZXJnZS5jOjE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyByZXF1aXJlcyBhIHZhbHVlIgorbXNnc3RyICJ0w7l5IGNo4buNbiDigJwlc+KAnSB5w6p1IGPhuqd1IG3hu5l0IGdpw6EgdHLhu4siCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZpbmQgbWVyZ2Ugc3RyYXRlZ3kgJyVzJy5cbiIKIG1zZ3N0ciAiS2jDtG5nIHTDrG0gdGjhuqV5IGNoaeG6v24gbMaw4bujYyBow7JhIHRy4buZbiDigJwlc+KAnS5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE3OAorIzogYnVpbHRpbi9tZXJnZS5jOjE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJBdmFpbGFibGUgc3RyYXRlZ2llcyBhcmU6IgogbXNnc3RyICJDw6FjIGNoaeG6v24gbMaw4bujYyBz4bq1biBzw6BuZyBsw6A6IgogCi0jOiBidWlsdGluL21lcmdlLmM6MTgzCisjOiBidWlsdGluL21lcmdlLmM6MTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF2YWlsYWJsZSBjdXN0b20gc3RyYXRlZ2llcyBhcmU6IgogbXNnc3RyICJDw6FjIGNoaeG6v24gbMaw4bujYyB0w7l5IGNo4buJbmggc+G6tW4gc8OgbmcgbMOgOiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjIzNCBidWlsdGluL3B1bGwuYzoxNDMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDUgYnVpbHRpbi9wdWxsLmM6MTMyCiBtc2dpZCAiZG8gbm90IHNob3cgYSBkaWZmc3RhdCBhdCB0aGUgZW5kIG9mIHRoZSBtZXJnZSIKIG1zZ3N0ciAia2jDtG5nIGhp4buDbiB0aOG7iyB0aOG7kW5nIGvDqiBraMOhYyBiaeG7h3QgdOG6oWkgY3Xhu5FpIGPhu6dhIGzhuqduIGjDsmEgdHLhu5luIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjM3IGJ1aWx0aW4vcHVsbC5jOjE0NgorIzogYnVpbHRpbi9tZXJnZS5jOjI0OCBidWlsdGluL3B1bGwuYzoxMzUKIG1zZ2lkICJzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCiBtc2dzdHIgImhp4buDbiB0aOG7iyB0aOG7kW5nIGvDqiBraMOhYyBiaeG7h3QgdOG6oWkgY3Xhu5FpIGPhu6dhIGjDsmEgdHLhu5luIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjM4IGJ1aWx0aW4vcHVsbC5jOjE0OQorIzogYnVpbHRpbi9tZXJnZS5jOjI0OSBidWlsdGluL3B1bGwuYzoxMzgKIG1zZ2lkICIoc3lub255bSB0byAtLXN0YXQpIgogbXNnc3RyICIoxJHhu5NuZyBuZ2jEqWEgduG7m2kgLS1zdGF0KSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0MCBidWlsdGluL3B1bGwuYzoxNTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTEgYnVpbHRpbi9wdWxsLmM6MTQxCiBtc2dpZCAiYWRkIChhdCBtb3N0IDxuPikgZW50cmllcyBmcm9tIHNob3J0bG9nIHRvIG1lcmdlIGNvbW1pdCBtZXNzYWdlIgogbXNnc3RyICJ0aMOqbSAow610IG5o4bqldCA8bj4pIG3hu6VjIHThu6sgc2hvcnRsb2cgY2hvIGdoaSBjaMO6IGNodXnhu4NuIGdpYW8gaMOyYSB0cuG7mW4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDMgYnVpbHRpbi9wdWxsLmM6MTU4CisjOiBidWlsdGluL21lcmdlLmM6MjU0IGJ1aWx0aW4vcHVsbC5jOjE0NwogbXNnaWQgImNyZWF0ZSBhIHNpbmdsZSBjb21taXQgaW5zdGVhZCBvZiBkb2luZyBhIG1lcmdlIgogbXNnc3RyICJ04bqhbyBt4buZdCBs4bqnbiBjaHV54buDbiBnaWFvIMSRxrBvbiB0aGF5IHbDrCB0aOG7sWMgaGnhu4duIHZp4buHYyBow7JhIHRy4buZbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0NSBidWlsdGluL3B1bGwuYzoxNjEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTYgYnVpbHRpbi9wdWxsLmM6MTUwCiBtc2dpZCAicGVyZm9ybSBhIGNvbW1pdCBpZiB0aGUgbWVyZ2Ugc3VjY2VlZHMgKGRlZmF1bHQpIgogbXNnc3RyICJ0aOG7sWMgaGnhu4duIGNodXnhu4NuIGdpYW8gbuG6v3UgaMOyYSB0cuG7mW4gdGjDoG5oIGPDtG5nICht4bq3YyDEkeG7i25oKSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0NyBidWlsdGluL3B1bGwuYzoxNjQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTggYnVpbHRpbi9wdWxsLmM6MTUzCiBtc2dpZCAiZWRpdCBtZXNzYWdlIGJlZm9yZSBjb21taXR0aW5nIgogbXNnc3RyICJz4butYSBjaMO6IHRow61jaCB0csaw4bubYyBraGkgY2h1eeG7g24gZ2lhbyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0OAorIzogYnVpbHRpbi9tZXJnZS5jOjI2MAogbXNnaWQgImFsbG93IGZhc3QtZm9yd2FyZCAoZGVmYXVsdCkiCiBtc2dzdHIgImNobyBwaMOpcCBjaHV54buDbi10aeG6v3AtbmhhbmggKG3hurdjIMSR4buLbmgpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjUwIGJ1aWx0aW4vcHVsbC5jOjE3MAorIzogYnVpbHRpbi9tZXJnZS5jOjI2MiBidWlsdGluL3B1bGwuYzoxNjAKIG1zZ2lkICJhYm9ydCBpZiBmYXN0LWZvcndhcmQgaXMgbm90IHBvc3NpYmxlIgogbXNnc3RyICJi4buPIHF1YSBu4bq/dSBjaHV54buDbi10aeG6v3Atbmhhbmgga2jDtG5nIHRo4buDIMSRxrDhu6NjIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU0IGJ1aWx0aW4vcHVsbC5jOjE3MworIzogYnVpbHRpbi9tZXJnZS5jOjI2NiBidWlsdGluL3B1bGwuYzoxNjMKIG1zZ2lkICJ2ZXJpZnkgdGhhdCB0aGUgbmFtZWQgY29tbWl0IGhhcyBhIHZhbGlkIEdQRyBzaWduYXR1cmUiCiBtc2dzdHIgInRo4bqpbSB0cmEgeGVtIGzhuqduIGNodXnhu4NuIGdpYW8gY8OzIHTDqm4gxJHDsyBjw7MgY2jhu68ga8O9IEdQRyBo4bujcCBs4buHIGhheSBraMO0bmciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTUgYnVpbHRpbi9ub3Rlcy5jOjc4NCBidWlsdGluL3B1bGwuYzoxNzcKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTE2IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4NiBidWlsdGluL3JldmVydC5jOjExMAorIzogYnVpbHRpbi9tZXJnZS5jOjI2NyBidWlsdGluL25vdGVzLmM6Nzg3IGJ1aWx0aW4vcHVsbC5jOjE2NworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjAgYnVpbHRpbi9yZWJhc2UuYzoxNTc1IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0CiBtc2dpZCAic3RyYXRlZ3kiCiBtc2dzdHIgImNoaeG6v24gbMaw4bujYyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NiBidWlsdGluL3B1bGwuYzoxNzgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjggYnVpbHRpbi9wdWxsLmM6MTY4CiBtc2dpZCAibWVyZ2Ugc3RyYXRlZ3kgdG8gdXNlIgogbXNnc3RyICJjaGnhur9uIGzGsOG7o2MgaMOyYSB0cuG7mW4gc+G6vSBkw7luZyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NyBidWlsdGluL3B1bGwuYzoxODEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjkgYnVpbHRpbi9wdWxsLmM6MTcxCiBtc2dpZCAib3B0aW9uPXZhbHVlIgogbXNnc3RyICJ0w7l5X2No4buNbj1nacOhX3Ry4buLIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU4IGJ1aWx0aW4vcHVsbC5jOjE4MgorIzogYnVpbHRpbi9tZXJnZS5jOjI3MCBidWlsdGluL3B1bGwuYzoxNzIKIG1zZ2lkICJvcHRpb24gZm9yIHNlbGVjdGVkIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICJ0w7l5IGNo4buNbiBjaG8gY2hp4bq/biBsxrDhu6NjIGjDsmEgdHLhu5luIMSRw6MgY2jhu41uIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjYwCisjOiBidWlsdGluL21lcmdlLmM6MjcyCiBtc2dpZCAibWVyZ2UgY29tbWl0IG1lc3NhZ2UgKGZvciBhIG5vbi1mYXN0LWZvcndhcmQgbWVyZ2UpIgogbXNnc3RyICIiCiAiaMOyYSB0cuG7mW4gZ2hpIGNow7ogY+G7p2EgbOG6p24gY2h1eeG7g24gZ2lhbyAoZMOgbmggY2hvIGjDsmEgdHLhu5luIGtow7RuZy1jaHV54buDbi10aeG6v3AtIgogIm5oYW5oKSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI2NworIzogYnVpbHRpbi9tZXJnZS5jOjI3OQogbXNnaWQgImFib3J0IHRoZSBjdXJyZW50IGluLXByb2dyZXNzIG1lcmdlIgogbXNnc3RyICJiw6NpIGLhu48gcXXDoSB0csOsbmggaMOyYSB0cuG7mW4gaGnhu4duIHThuqFpIMSRYW5nIHRo4buxYyBoaeG7h24iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODEKK21zZ2lkICItLWFib3J0IGJ1dCBsZWF2ZSBpbmRleCBhbmQgd29ya2luZyB0cmVlIGFsb25lIgorbXNnc3RyICItLWFib3J0IG5oxrBuZyDEkeG7gyBs4bqhaSBi4bqjbmcgbeG7pWMgbOG7pWMgdsOgIGPDonkgbMOgbSB2aeG7h2MiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODMKIG1zZ2lkICJjb250aW51ZSB0aGUgY3VycmVudCBpbi1wcm9ncmVzcyBtZXJnZSIKIG1zZ3N0ciAidGnhur9wIHThu6VjIHF1w6EgdHLDrG5oIGjDsmEgdHLhu5luIGhp4buHbiB04bqhaSDEkWFuZyB0aOG7sWMgaGnhu4duIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjcxIGJ1aWx0aW4vcHVsbC5jOjE4OQorIzogYnVpbHRpbi9tZXJnZS5jOjI4NSBidWlsdGluL3B1bGwuYzoxNzkKIG1zZ2lkICJhbGxvdyBtZXJnaW5nIHVucmVsYXRlZCBoaXN0b3JpZXMiCiBtc2dzdHIgImNobyBwaMOpcCBow7JhIHRy4buZbiBs4buLY2ggc+G7rSBraMO0bmcgbGnDqm4gcXVhbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI3NwotbXNnaWQgInZlcmlmeSBjb21taXQtbXNnIGhvb2siCi1tc2dzdHIgInRo4bqpbSB0cmEgbcOzYyAoaG9vaykgY29tbWl0LW1zZyIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyOTEKK21zZ2lkICJieXBhc3MgcHJlLW1lcmdlLWNvbW1pdCBhbmQgY29tbWl0LW1zZyBob29rcyIKK21zZ3N0ciAidsOybmcgcXVhIG3Ds2MgKGhvb2spIHByZS1tZXJnZS1jb21taXQgdsOgIGNvbW1pdC1tc2ciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozMDIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMDgKIG1zZ2lkICJjb3VsZCBub3QgcnVuIHN0YXNoLiIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGNo4bqheSBzdGFzaC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozMDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozMTMKIG1zZ2lkICJzdGFzaCBmYWlsZWQiCiBtc2dzdHIgImzhu4duaCB04bqhbSBj4bqldCBn4bq3cCBs4buXaSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMxMgorIzogYnVpbHRpbi9tZXJnZS5jOjMxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSB2YWxpZCBvYmplY3Q6ICVzIgogbXNnc3RyICJraMO0bmcgcGjhuqNpIGzDoCBt4buZdCDEkeG7kWkgdMaw4bujbmcgaOG7o3AgbOG7hzogJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozMzQgYnVpbHRpbi9tZXJnZS5jOjM1MQorIzogYnVpbHRpbi9tZXJnZS5jOjM0MCBidWlsdGluL21lcmdlLmM6MzU3CiBtc2dpZCAicmVhZC10cmVlIGZhaWxlZCIKIG1zZ3N0ciAicmVhZC10cmVlIGfhurdwIGzhu5dpIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzgxCisjOiBidWlsdGluL21lcmdlLmM6Mzg3CiBtc2dpZCAiIChub3RoaW5nIHRvIHNxdWFzaCkiCiBtc2dzdHIgIiAoa2jDtG5nIGPDsyBnw6wgxJHhu4Mgc3F1YXNoKSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjM5MgorIzogYnVpbHRpbi9tZXJnZS5jOjM5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJTcXVhc2ggY29tbWl0IC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCiBtc2dzdHIgIlNxdWFzaCBjb21taXQgLS0ga2jDtG5nIGPhuq1wIG5o4bqtdCBIRUFEXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo0NDIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo0NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gbWVyZ2UgbWVzc2FnZSAtLSBub3QgdXBkYXRpbmcgSEVBRFxuIgogbXNnc3RyICJLaMO0bmcgY8OzIGzhu51pIGNow7ogdGjDrWNoIGjDsmEgdHLhu5luIC0tIG7Dqm4ga2jDtG5nIGPhuq1wIG5o4bqtdCBIRUFEXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo0OTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo0OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBkb2VzIG5vdCBwb2ludCB0byBhIGNvbW1pdCIKIG1zZ3N0ciAi4oCcJXPigJ0ga2jDtG5nIGNo4buJIMSR4bq/biBt4buZdCBs4bqnbiBjaHV54buDbiBnaWFvIG7DoG8gY+G6oyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjU4MAorIzogYnVpbHRpbi9tZXJnZS5jOjU4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgYnJhbmNoLiVzLm1lcmdlb3B0aW9ucyBzdHJpbmc6ICVzIgogbXNnc3RyICJDaHXhu5dpIGJyYW5jaC4lcy5tZXJnZW9wdGlvbnMgc2FpOiAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjcwMQorIzogYnVpbHRpbi9tZXJnZS5jOjcwOAogbXNnaWQgIk5vdCBoYW5kbGluZyBhbnl0aGluZyBvdGhlciB0aGFuIHR3byBoZWFkcyBtZXJnZS4iCi1tc2dzdHIgIktow7RuZyBj4bqnbSBu4bqvbSBnw6wgbmdvw6BpIGhhaSBoZWFkIGjDsmEgdHLhu5luIgorbXNnc3RyICJLaMO0bmcgY+G6p20gbuG6r20gZ8OsIG5nb8OgaSBoYWkgaGVhZCBow7JhIHRy4buZbi4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3MTUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo3MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biBvcHRpb24gZm9yIG1lcmdlLXJlY3Vyc2l2ZTogLVglcyIKIG1zZ3N0ciAiS2jDtG5nIGhp4buDdSB0w7l5IGNo4buNbiBjaG8gbWVyZ2UtcmVjdXJzaXZlOiAtWCVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzMwCisjOiBidWlsdGluL21lcmdlLmM6NzM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdoaSAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjc4MgorIzogYnVpbHRpbi9tZXJnZS5jOjc4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVhZCBmcm9tICclcyciCiBtc2dzdHIgIktow7RuZyB0aOG7gyDEkeG7jWMgdOG7qyDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjc5MQorIzogYnVpbHRpbi9tZXJnZS5jOjc5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgY29tbWl0dGluZyBtZXJnZTsgdXNlICdnaXQgY29tbWl0JyB0byBjb21wbGV0ZSB0aGUgbWVyZ2UuXG4iCiBtc2dzdHIgIiIKICJW4bqrbiBjaMawYSBow7JhIHRy4buZbiBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW87IHPhu60gZOG7pW5nIGzhu4duaCDigJxnaXQgY29tbWl04oCdIMSR4buDIGhvw6BuIHThuqV0ICIKICJ2aeG7h2MgaMOyYSB0cuG7mW4uXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo3OTcKLSMsIGMtZm9ybWF0CisjOiBidWlsdGluL21lcmdlLmM6ODA0CiBtc2dpZCAiIgogIlBsZWFzZSBlbnRlciBhIGNvbW1pdCBtZXNzYWdlIHRvIGV4cGxhaW4gd2h5IHRoaXMgbWVyZ2UgaXMgbmVjZXNzYXJ5LFxuIgogImVzcGVjaWFsbHkgaWYgaXQgbWVyZ2VzIGFuIHVwZGF0ZWQgdXBzdHJlYW0gaW50byBhIHRvcGljIGJyYW5jaC5cbiIKICJcbiIKLSJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBpZ25vcmVkLCBhbmQgYW4gZW1wdHkgbWVzc2FnZSBhYm9ydHNcbiIKLSJ0aGUgY29tbWl0LlxuIgogbXNnc3RyICIiCiAiSMOjeSBuaOG6rXAgdsOgbyBjw6FjIHRow7RuZyB0aW4gxJHhu4MgZ2nhuqNpIHRow61jaCB04bqhaSBzYW8gc+G7sSBow7JhIHRy4buZbiBuw6B5IGzDoCBj4bqnbiAiCiAidGhp4bq/dCxcbiIKICLEkeG6t2MgYmnhu4d0IGzDoCBraGkgbsOzIGjDsmEgdHLhu5luIHRoxrDhu6NuZyBuZ3Xhu5NuIMSRw6MgY+G6rXAgbmjhuq10IHbDoG8gdHJvbmcgbeG7mXQgbmjDoW5oICIKICJ0b3BpYy5cbiIKICJcbiIKLSJOaOG7r25nIGTDsm5nIMSRxrDhu6NjIGLhuq90IMSR4bqndSBi4bqxbmcg4oCcJWPigJ0gc+G6vSDEkcaw4bujYyBi4buPIHF1YSwgdsOgIHBo4bqnbiBjaMO6IHRow61jaCBuw6B5IG7hur91ICIKLSJy4buXbmdcbiIKLSJz4bq9IGjhu6d5IGLhu48gbOG6p24gY2h1eeG7g24gZ2lhby5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjgzMworIzogYnVpbHRpbi9tZXJnZS5jOjgwOQorbXNnaWQgIkFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCittc2dzdHIgIk7hur91IHBo4bqnbiBjaMO6IHRow61jaCBy4buXbmcgc+G6vSBo4buneSBi4buPIGzhuqduIGNodXnhu4NuIGdpYW8uXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQsIGFuZCBhbiBlbXB0eSBtZXNzYWdlIGFib3J0c1xuIgorInRoZSBjb21taXQuXG4iCittc2dzdHIgIiIKKyJOaOG7r25nIGTDsm5nIMSRxrDhu6NjIGLhuq90IMSR4bqndSBi4bqxbmcg4oCcJWPigJ0gc+G6vSDEkcaw4bujYyBi4buPIHF1YSwgdsOgIG7hur91IHBo4bqnbiBjaMO6XG4iCisidGjDrWNoIHLhu5duZyBz4bq9IGjhu6d5IGLhu48gbOG6p24gY2h1eeG7g24gZ2lhby5cbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjg2NQogbXNnaWQgIkVtcHR5IGNvbW1pdCBtZXNzYWdlLiIKIG1zZ3N0ciAiQ2jDuiB0aMOtY2ggY+G7p2EgbOG6p24gY29tbWl0IChjaHV54buDbiBnaWFvKSBi4buLIHRy4buRbmcgcuG7l25nLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjg1MgorIzogYnVpbHRpbi9tZXJnZS5jOjg4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJXb25kZXJmdWwuXG4iCiBtc2dzdHIgIlR1eeG7h3QgduG7nWkuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5MDUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0b21hdGljIG1lcmdlIGZhaWxlZDsgZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBjb21taXQgdGhlIHJlc3VsdC5cbiIKIG1zZ3N0ciAiIgogIlZp4buHYyB04buxIMSR4buZbmcgaMOyYSB0cuG7mW4gZ+G6t3AgbOG7l2k7IGjDo3kgc+G7rWEgY8OhYyB4dW5nIMSR4buZdCBzYXUgxJHDsyBjaHV54buDbiBnaWFvIGvhur90ICIKICJxdeG6oy5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjk0NAorIzogYnVpbHRpbi9tZXJnZS5jOjk4MAogbXNnaWQgIk5vIGN1cnJlbnQgYnJhbmNoLiIKLW1zZ3N0ciAia2jDtG5nIHBo4bqjaSBuaMOhbmggaGnhu4duIGjDoG5oIgorbXNnc3RyICJLaMO0bmcgcGjhuqNpIG5ow6FuaCBoaeG7h24gaMOgbmguIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ2CisjOiBidWlsdGluL21lcmdlLmM6OTgyCiBtc2dpZCAiTm8gcmVtb3RlIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJLaMO0bmcgY8OzIG3DoXkgY2jhu6cgY2hvIG5ow6FuaCBoaeG7h24gaMOgbmguIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ4CisjOiBidWlsdGluL21lcmdlLmM6OTg0CiBtc2dpZCAiTm8gZGVmYXVsdCB1cHN0cmVhbSBkZWZpbmVkIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICJLaMO0bmcgY8OzIHRoxrDhu6NuZyBuZ3Xhu5NuIG3hurdjIMSR4buLbmggxJHGsOG7o2MgxJHhu4tuaCBuZ2jEqWEgY2hvIG5ow6FuaCBoaeG7h24gaMOgbmguIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTUzCisjOiBidWlsdGluL21lcmdlLmM6OTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHJlbW90ZS10cmFja2luZyBicmFuY2ggZm9yICVzIGZyb20gJXMiCiBtc2dzdHIgIktow7RuZyBuaMOhbmggbeG6oW5nIHRoZW8gZMO1aSBjaG8gJXMgdOG7qyAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEwMTAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDQ2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCB2YWx1ZSAnJXMnIGluIGVudmlyb25tZW50ICclcyciCiBtc2dzdHIgIkdpw6EgdHLhu4sgc2FpIOKAnCVz4oCdIHRyb25nIGJp4bq/biBtw7RpIHRyxrDhu51uZyDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjExMTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIGluICVzOiAlcyIKIG1zZ3N0ciAia2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgdGjhu6kgZ8OsIMSRw7MgbcOgIGNow7puZyB0w7RpIGPDsyB0aOG7gyBow7JhIHRy4buZbiB0cm9uZyAlczogJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTQ3CisjOiBidWlsdGluL21lcmdlLmM6MTE4MwogbXNnaWQgIm5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgogbXNnc3RyICJraMO0bmcgcGjhuqNpIGzDoCB0aOG7qSBnw6wgxJHDsyBtw6AgY2jDum5nIHTDtGkgY8OzIHRo4buDIGjDsmEgdHLhu5luIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI1MAorIzogYnVpbHRpbi9tZXJnZS5jOjEyODYKIG1zZ2lkICItLWFib3J0IGV4cGVjdHMgbm8gYXJndW1lbnRzIgogbXNnc3RyICItLWFib3J0IGtow7RuZyBuaOG6rW4gY8OhYyDEkeG7kWkgc+G7kSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNTQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjkwCiBtc2dpZCAiVGhlcmUgaXMgbm8gbWVyZ2UgdG8gYWJvcnQgKE1FUkdFX0hFQUQgbWlzc2luZykuIgogbXNnc3RyICIiCiAi4bueIMSRw6J5IGtow7RuZyBjw7MgbOG6p24gaMOyYSB0cuG7mW4gbsOgbyDEkcaw4bujYyBo4buneSBi4buPIGdp4buvYSBjaOG7q25nIGPhuqMgKHRoaeG6v3UgTUVSR0VfSEVBRCkuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI2NgorIzogYnVpbHRpbi9tZXJnZS5jOjEyOTkKK21zZ2lkICItLXF1aXQgZXhwZWN0cyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tcXVpdCBraMO0bmcgbmjhuq1uIGPDoWMgxJHhu5FpIHPhu5EiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzEyCiBtc2dpZCAiLS1jb250aW51ZSBleHBlY3RzIG5vIGFyZ3VtZW50cyIKIG1zZ3N0ciAiLS1jb250aW51ZSBraMO0bmcgbmjhuq1uIMSR4buRaSBz4buRIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI3MAorIzogYnVpbHRpbi9tZXJnZS5jOjEzMTYKIG1zZ2lkICJUaGVyZSBpcyBubyBtZXJnZSBpbiBwcm9ncmVzcyAoTUVSR0VfSEVBRCBtaXNzaW5nKS4iCiBtc2dzdHIgIuG7niDEkcOieSBraMO0bmcgY8OzIGzhuqduIGjDsmEgdHLhu5luIG7DoG8gxJFhbmcgxJHGsOG7o2MgeOG7rSBsw70gY+G6oyAodGhp4bq/dSBNRVJHRV9IRUFEKS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjg2CisjOiBidWlsdGluL21lcmdlLmM6MTMzMgogbXNnaWQgIiIKICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgbWVyZ2UgKE1FUkdFX0hFQUQgZXhpc3RzKS5cbiIKICJQbGVhc2UsIGNvbW1pdCB5b3VyIGNoYW5nZXMgYmVmb3JlIHlvdSBtZXJnZS4iCkBAIC0xMzEyMCw3ICsxNjI3MSw3IEBACiAiQuG6oW4gY2jGsGEga+G6v3QgdGjDumMgdmnhu4djIGjDsmEgdHLhu5luIChNRVJHRV9IRUFEIHbhuqtuIHThu5NuIHThuqFpKS5cbiIKICJIw6N5IGNodXnhu4NuIGdpYW8gY8OhYyB0aGF5IMSR4buVaSB0csaw4bubYyBraGkgYuG6oW4gY8OzIHRo4buDIGjDsmEgdHLhu5luLiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyOTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzM5CiBtc2dpZCAiIgogIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdHMpLlxuIgogIlBsZWFzZSwgY29tbWl0IHlvdXIgY2hhbmdlcyBiZWZvcmUgeW91IG1lcmdlLiIKQEAgLTEzMTI4LDk0ICsxNjI3OSw5OCBAQAogIkLhuqFuIGNoxrBhIGvhur90IHRow7pjIHZp4buHYyBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCB24bqrbiB04buTbiB04bqhaSkuXG4iCiAiSMOjeSBjaHV54buDbiBnaWFvIGPDoWMgdGhheSDEkeG7lWkgdHLGsOG7m2Mga2hpIGLhuqFuIGPDsyB0aOG7gyBow7JhIHRy4buZbi4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjk2CisjOiBidWlsdGluL21lcmdlLmM6MTM0MgogbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdHMpLiIKIG1zZ3N0ciAiQuG6oW4gY2jGsGEga+G6v3QgdGjDumMgdmnhu4djIGNoZXJyeS1waWNrIChDSEVSUllfUElDS19IRUFEIHbhuqtuIHThu5NuIHThuqFpKS4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzA1CisjOiBidWlsdGluL21lcmdlLmM6MTM1NgogbXNnaWQgIllvdSBjYW5ub3QgY29tYmluZSAtLXNxdWFzaCB3aXRoIC0tbm8tZmYuIgogbXNnc3RyICJC4bqhbiBraMO0bmcgdGjhu4Mga+G6v3QgaOG7o3AgLS1zcXVhc2ggduG7m2kgLS1uby1mZi4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzEzCisjOiBidWlsdGluL21lcmdlLmM6MTM1OAorbXNnaWQgIllvdSBjYW5ub3QgY29tYmluZSAtLXNxdWFzaCB3aXRoIC0tY29tbWl0LiIKK21zZ3N0ciAiQuG6oW4ga2jDtG5nIHRo4buDIGvhur90IGjhu6NwIC0tc3F1YXNoIHbhu5tpIC0tY29tbWl0LiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzNzQKIG1zZ2lkICJObyBjb21taXQgc3BlY2lmaWVkIGFuZCBtZXJnZS5kZWZhdWx0VG9VcHN0cmVhbSBub3Qgc2V0LiIKIG1zZ3N0ciAiS2jDtG5nIGNo4buJIHJhIGzhuqduIGNodXnhu4NuIGdpYW8gdsOgIG1lcmdlLmRlZmF1bHRUb1Vwc3RyZWFtIGNoxrBhIMSRxrDhu6NjIMSR4bq3dC4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzMwCisjOiBidWlsdGluL21lcmdlLmM6MTM5MQogbXNnaWQgIlNxdWFzaCBjb21taXQgaW50byBlbXB0eSBoZWFkIG5vdCBzdXBwb3J0ZWQgeWV0IgogbXNnc3RyICJTcXVhc2ggY29tbWl0IHbDoG8gbeG7mXQgaGVhZCB0cuG7kW5nIHLhu5duZyB24bqrbiBjaMawYSDEkcaw4bujYyBo4buXIHRy4bujIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMzMgorIzogYnVpbHRpbi9tZXJnZS5jOjEzOTMKIG1zZ2lkICJOb24tZmFzdC1mb3J3YXJkIGNvbW1pdCBkb2VzIG5vdCBtYWtlIHNlbnNlIGludG8gYW4gZW1wdHkgaGVhZCIKIG1zZ3N0ciAiIgogIkNodXnhu4NuIGdpYW8ga2jDtG5nLWNodXnhu4NuLXRp4bq/cC1uaGFuaCBraMO0bmcgaOG7o3AgbMO9IOG7nyB0cm9uZyBt4buZdCBoZWFkIHRy4buRbmcgcuG7l25nIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMzNworIzogYnVpbHRpbi9tZXJnZS5jOjEzOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgLSBub3Qgc29tZXRoaW5nIHdlIGNhbiBtZXJnZSIKIG1zZ3N0ciAiJXMgLSBraMO0bmcgcGjhuqNpIGzDoCB0aOG7qSBnw6wgxJHDsyBtw6AgY2jDum5nIHTDtGkgY8OzIHRo4buDIGjDsmEgdHLhu5luIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMzOQorIzogYnVpbHRpbi9tZXJnZS5jOjE0MDAKIG1zZ2lkICJDYW4gbWVyZ2Ugb25seSBleGFjdGx5IG9uZSBjb21taXQgaW50byBlbXB0eSBoZWFkIgogbXNnc3RyICIiCiAiS2jDtG5nIHRo4buDIGjDsmEgdHLhu5luIG3hu5l0IGPDoWNoIMSRw7puZyDEkeG6r24gbeG7mXQgbOG6p24gY2h1eeG7g24gZ2lhbyB2w6BvIG3hu5l0IGhlYWQgcuG7l25nIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQyMQorIzogYnVpbHRpbi9tZXJnZS5jOjE0ODEKIG1zZ2lkICJyZWZ1c2luZyB0byBtZXJnZSB1bnJlbGF0ZWQgaGlzdG9yaWVzIgogbXNnc3RyICJ04burIGNo4buRaSBow7JhIHRy4buZbiBs4buLY2ggc+G7rSBraMO0bmcgbGnDqm4gcXVhbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0MzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDkwCiBtc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlLiIKIG1zZ3N0ciAixJDDoyBj4bqtcCBuaOG6rXQgcuG7k2kuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQ0MAorIzogYnVpbHRpbi9tZXJnZS5jOjE1MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRpbmcgJXMuLiVzXG4iCiBtc2dzdHIgIsSQYW5nIGPhuq1wIG5o4bqtdCAlcy4uJXNcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0ODIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRyeWluZyByZWFsbHkgdHJpdmlhbCBpbi1pbmRleCBtZXJnZS4uLlxuIgogbXNnc3RyICLEkGFuZyB0aOG7rSBow7JhIHRy4buZbiBraeG7g3Ug4oCcdHJpdmlhbCBpbi1pbmRleOKAneKAplxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQ4OQorIzogYnVpbHRpbi9tZXJnZS5jOjE1NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm9wZS5cbiIKIG1zZ3N0ciAiS2jDtG5nLlxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTUxNAorIzogYnVpbHRpbi9tZXJnZS5jOjE1NzQKIG1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIFllZWFoISIKIG1zZ3N0ciAixJDDoyBj4bqtcCBuaOG6rXQgcuG7k2kuIFllZWFoISIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1MjAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTgwCiBtc2dpZCAiTm90IHBvc3NpYmxlIHRvIGZhc3QtZm9yd2FyZCwgYWJvcnRpbmcuIgogbXNnc3RyICJUaOG7sWMgaGnhu4duIGzhu4duaCBjaHV54buDbi10aeG6v3AtbmhhbmggbMOgIGtow7RuZyB0aOG7gyDEkcaw4bujYywgxJFhbmcgYuG7jyBxdWEuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTU0MyBidWlsdGluL21lcmdlLmM6MTYyMgorIzogYnVpbHRpbi9tZXJnZS5jOjE2MDMgYnVpbHRpbi9tZXJnZS5jOjE2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmV3aW5kaW5nIHRoZSB0cmVlIHRvIHByaXN0aW5lLi4uXG4iCiBtc2dzdHIgIsSQYW5nIHR1YSBs4bqhaSBjw6J5IHRow6BuaCB0aOG7nWkgeGEgeMawYeKAplxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTU0NworIzogYnVpbHRpbi9tZXJnZS5jOjE2MDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVHJ5aW5nIG1lcmdlIHN0cmF0ZWd5ICVzLi4uXG4iCiBtc2dzdHIgIsSQYW5nIHRo4butIGNoaeG6v24gbMaw4bujYyBow7JhIHRy4buZbiAlc+KAplxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYxMworIzogYnVpbHRpbi9tZXJnZS5jOjE2NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gbWVyZ2Ugc3RyYXRlZ3kgaGFuZGxlZCB0aGUgbWVyZ2UuXG4iCiBtc2dzdHIgIktow7RuZyBjw7MgY2hp4bq/biBsxrDhu6NjIGjDsmEgdHLhu5luIG7DoG8gxJHGsOG7o2MgbuG6r20gZ2nhu68gKGhhbmRsZSkgc+G7sSBow7JhIHRy4buZbi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MTUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1lcmdlIHdpdGggc3RyYXRlZ3kgJXMgZmFpbGVkLlxuIgogbXNnc3RyICJIw7JhIHRy4buZbiB24bubaSBjaGnhur9uIGzGsOG7o2MgJXMgZ+G6t3AgbOG7l2kuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjI0CisjOiBidWlsdGluL21lcmdlLmM6MTY3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJVc2luZyB0aGUgJXMgdG8gcHJlcGFyZSByZXNvbHZpbmcgYnkgaGFuZC5cbiIKIG1zZ3N0ciAiU+G7rSBk4bulbmcgJXMgxJHhu4MgY2h14bqpbiBi4buLIGdp4bqjaSBxdXnhur90IGLhurFuZyB0YXkuXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjM2CisjOiBidWlsdGluL21lcmdlLmM6MTY4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvbWF0aWMgbWVyZ2Ugd2VudCB3ZWxsOyBzdG9wcGVkIGJlZm9yZSBjb21taXR0aW5nIGFzIHJlcXVlc3RlZFxuIgogbXNnc3RyICIiCkBAIC0xMzI2Nyw3ICsxNjQyMiw3IEBACiAiZ2l0IG1lcmdlLWZpbGUgWzxvcHRpb25zPl0gWy1MIDxuYW1lMT4gWy1MIDxvcmlnPiBbLUwgPG5hbWUyPl1dXSA8ZmlsZTE+ICIKICI8b3JpZy1maWxlPiA8ZmlsZTI+IgogbXNnc3RyICIiCi0iZ2l0IG1lcmdlLWZpbGUgWzxjw6FjLXTDuXktY2jhu41uPl0gWy1MIDx0w6puMT4gWy1MIDxn4buRYz4gWy1MIDx0w6puMj5dXV0gPHThuq1wLSIKKyJnaXQgbWVyZ2UtZmlsZSBbPGPDoWMgdMO5eSBjaOG7jW4+XSBbLUwgPHTDqm4xPiBbLUwgPGfhu5FjPiBbLUwgPHTDqm4yPl1dXSA8dOG6rXAtIgogInRpbjE+IDx04bqtcC10aW4tZ+G7kWM+IDx04bqtcC10aW4yPiIKIAogIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6MzUKQEAgLTEzMzAyLDMyICsxNjQ1NywzMiBAQAogbXNnaWQgInNldCBsYWJlbHMgZm9yIGZpbGUxL29yaWctZmlsZS9maWxlMiIKIG1zZ3N0ciAixJHhurd0IG5ow6NuIGNobyB04bqtcC10aW4tMS904bqtcC10aW4tZ+G7kWMvdOG6rXAtdGluLTIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NDUKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvcHRpb24gJXMiCiBtc2dzdHIgImtow7RuZyBoaeG7g3UgdMO5eSBjaOG7jW4gJXMiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTEKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggxJHhu5FpIHTGsOG7o25nIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjU1CisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIGJhc2UuIElnbm9yaW5nICVzLiIKIG1zZ2lkX3BsdXJhbCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgYmFzZXMuIElnbm9yaW5nICVzLiIKLW1zZ3N0clswXSAia2jDtG5nIHRo4buDIHjhu60gbMO9IG5oaeG7gXUgaMahbiAlZCBu4buBbi4gQuG7jyBxdWEgJXMiCittc2dzdHJbMF0gImtow7RuZyB0aOG7gyB44butIGzDvSBuaGnhu4F1IGjGoW4gJWQgbuG7gW4uIELhu48gcXVhICVzLiIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo2MworIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo2NQogbXNnaWQgIm5vdCBoYW5kbGluZyBhbnl0aGluZyBvdGhlciB0aGFuIHR3byBoZWFkcyBtZXJnZS4iCi1tc2dzdHIgImtow7RuZyBj4bqnbSBu4bqvbSBnw6wgbmdvw6BpIGhhaSBoZWFkIGjDsmEgdHLhu5luIgorbXNnc3RyICJraMO0bmcgeOG7rSBsw70gZ8OsIG5nb8OgaSBoYWkgaGVhZCBow7JhIHRy4buZbi4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NjkgYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo3MQorIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo3NCBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlIHJlZiAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gZ2nhuqNpIHRoYW0gY2hp4bq/dSAlcyIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo3NworIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJNZXJnaW5nICVzIHdpdGggJXNcbiIKIG1zZ3N0ciAixJBhbmcgaMOyYSB0cuG7mW4gJXMgduG7m2kgJXNcbiIKQEAgLTEzMzQwLDcgKzE2NDk1LDcgQEAKIG1zZ2lkICJpbnB1dCBpcyBOVUwgdGVybWluYXRlZCIKIG1zZ3N0ciAixJHhuqd1IHbDoG8gxJHGsOG7o2MgY2jhuqVtIGThu6l0IGLhu59pIE5VTCIKIAotIzogYnVpbHRpbi9ta3RyZWUuYzoxNTUgYnVpbHRpbi93cml0ZS10cmVlLmM6MjUKKyM6IGJ1aWx0aW4vbWt0cmVlLmM6MTU1IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI2CiBtc2dpZCAiYWxsb3cgbWlzc2luZyBvYmplY3RzIgogbXNnc3RyICJjaG8gcGjDqXAgdGhp4bq/dSDEkeG7kWkgdMaw4bujbmciCiAKQEAgLTEzMzQ4LDE1OCArMTY1MDMsMTc0IEBACiBtc2dpZCAiYWxsb3cgY3JlYXRpb24gb2YgbW9yZSB0aGFuIG9uZSB0cmVlIgogbXNnc3RyICJjaG8gcGjDqXAgdOG6oW8gbmhp4buBdSBoxqFuIG3hu5l0IGPDonkiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjgKLW1zZ2lkICJnaXQgbXVsdGktcGFjay1pbmRleCBbLS1vYmplY3QtZGlyPTxkaXI+XSAod3JpdGV8dmVyaWZ5KSIKLW1zZ3N0ciAiZ2l0IG11bHRpLXBhY2staW5kZXggWy0tb2JqZWN0LWRpcj08dGjGsC9t4bulYz5dICh3cml0ZXx2ZXJpZnkpIgorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6OQorbXNnaWQgIiIKKyJnaXQgbXVsdGktcGFjay1pbmRleCBbPG9wdGlvbnM+XSAod3JpdGV8dmVyaWZ5fGV4cGlyZXxyZXBhY2sgLS1iYXRjaC0iCisic2l6ZT08c2l6ZT4pIgorbXNnc3RyICIiCisiZ2l0IG11bHRpLXBhY2staW5kZXggWzxjw6FjLXTDuXktY2jhu41uPl0gKHdyaXRlfHZlcmlmeXxleHBpcmV8cmVwYWNrIC0tYmF0Y2gtIgorInNpemU9PGPhu6E+KSIKIAotIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjEKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjI2CiBtc2dpZCAib2JqZWN0IGRpcmVjdG9yeSBjb250YWluaW5nIHNldCBvZiBwYWNrZmlsZSBhbmQgcGFjay1pbmRleCBwYWlycyIKIG1zZ3N0ciAidGjGsCBt4bulYyDEkeG7kWkgdMaw4bujbmcgY8OzIGNo4bupYSBt4buZdCBi4buZIGPDoWMgdOG6rXAgdGluIGfDs2kgdsOgIGPhurdwIHBhY2staW5kZXgiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjM5CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyOQorbXNnaWQgIiIKKyJkdXJpbmcgcmVwYWNrLCBjb2xsZWN0IHBhY2stZmlsZXMgb2Ygc21hbGxlciBzaXplIGludG8gYSBiYXRjaCB0aGF0IGlzICIKKyJsYXJnZXIgdGhhbiB0aGlzIHNpemUiCittc2dzdHIgIiIKKyJ0cm9uZyBzdeG7kXQgcXXDoSB0csOsbmggxJHDs25nIGfDs2kgbOG6oWksIGdvbSBjw6FjIHThuq1wIHRpbiBnw7NpIGPDsyBrw61jaCBj4buhIG5o4buPIGjGoW4gIgorInbDoG8gbeG7mXQgYsOzIGPDoWkgbcOgIGzhu5tuIGjGoW4ga8OtY2ggdGjGsOG7m2MgbsOgeSIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NTAgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo2NwogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyIKIG1zZ3N0ciAiY8OzIHF1w6Egbmhp4buBdSDEkeG7kWkgc+G7kSIKIAotIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NDgKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjYwCittc2dpZCAiLS1iYXRjaC1zaXplIG9wdGlvbiBpcyBvbmx5IGZvciAncmVwYWNrJyBzdWJjb21tYW5kIgorbXNnc3RyICJ0w7l5IGNo4buNbiAtLWJhdGNoLXNpemUgY2jhu4kgY2hvIGzhu4duaCBjb24gJ3JlcGFjayciCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjY5CiAjLCBjLWZvcm1hdAotbXNnaWQgInVucmVjb2duaXplZCB2ZXJiOiAlcyIKLW1zZ3N0ciAidmVyYiBraMO0bmcgxJHGsOG7o2MgdGjhu6thIG5o4bqtbjogJXMiCittc2dpZCAidW5yZWNvZ25pemVkIHN1YmNvbW1hbmQ6ICVzIgorbXNnc3RyICJraMO0bmcgaGnhu4N1IGPDonUgbOG7h25oIGNvbjogJXMiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNworIzogYnVpbHRpbi9tdi5jOjE4CiBtc2dpZCAiZ2l0IG12IFs8b3B0aW9ucz5dIDxzb3VyY2U+Li4uIDxkZXN0aW5hdGlvbj4iCi1tc2dzdHIgImdpdCBtdiBbPGPDoWMtdMO5eS1jaOG7jW4+XSA8bmd14buTbj7igKYgPMSRw61jaD4iCittc2dzdHIgImdpdCBtdiBbPGPDoWMgdMO5eSBjaOG7jW4+XSA8bmd14buTbj7igKYgPMSRw61jaD4iCiAKLSM6IGJ1aWx0aW4vbXYuYzo4MgorIzogYnVpbHRpbi9tdi5jOjgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkRpcmVjdG9yeSAlcyBpcyBpbiBpbmRleCBhbmQgbm8gc3VibW9kdWxlPyIKIG1zZ3N0ciAiVGjGsCBt4bulYyDigJwlc+KAnSBjw7Mg4bufIHRyb25nIGNo4buJIG3hu6VjIG3DoCBraMO0bmcgY8OzIG3DtC3EkXVuIGNvbj8iCiAKLSM6IGJ1aWx0aW4vbXYuYzo4NAorIzogYnVpbHRpbi9tdi5jOjg1CiBtc2dpZCAiUGxlYXNlIHN0YWdlIHlvdXIgY2hhbmdlcyB0byAuZ2l0bW9kdWxlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQiCiBtc2dzdHIgIiIKICJIw6N5IMSRxrBhIGPDoWMgdGhheSDEkeG7lWkgY+G7p2EgYuG6oW4gdsOgbyAuZ2l0bW9kdWxlcyBoYXkgdOG6oW0gY+G6pXQgY2jDum5nIMSRaSDEkeG7gyB44butIGzDvSIKIAotIzogYnVpbHRpbi9tdi5jOjEwMgorIzogYnVpbHRpbi9tdi5jOjEwMwogIywgYy1mb3JtYXQKIG1zZ2lkICIlLipzIGlzIGluIGluZGV4IgogbXNnc3RyICIlLipzIHRyb25nIGLhuqNuZyBt4bulYyBs4bulYyIKIAotIzogYnVpbHRpbi9tdi5jOjEyNAorIzogYnVpbHRpbi9tdi5jOjEyNQogbXNnaWQgImZvcmNlIG1vdmUvcmVuYW1lIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAiw6lwIGJ14buZYyBkaSBjaHV54buDbiBoYXkgxJHhu5VpIHTDqm4gdGjhuq1tIGNow60gY+G6oyBraGkgxJHDrWNoIMSRw6MgdOG7k24gdOG6oWkiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxMjYKKyM6IGJ1aWx0aW4vbXYuYzoxMjcKIG1zZ2lkICJza2lwIG1vdmUvcmVuYW1lIGVycm9ycyIKIG1zZ3N0ciAiYuG7jyBxdWEgY8OhYyBs4buXaSBsacOqbiBxdWFuIMSR4bq/biBkaSBjaHV54buDbiwgxJHhu5VpIHTDqm4iCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNjgKKyM6IGJ1aWx0aW4vbXYuYzoxNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzdGluYXRpb24gJyVzJyBpcyBub3QgYSBkaXJlY3RvcnkiCiBtc2dzdHIgImPDsyDEkcOtY2gg4oCcJXPigJ0gbmjGsG5nIMSRw6J5IGtow7RuZyBwaOG6o2kgbMOgIG3hu5l0IHRoxrAgbeG7pWMiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNzkKKyM6IGJ1aWx0aW4vbXYuYzoxODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2hlY2tpbmcgcmVuYW1lIG9mICclcycgdG8gJyVzJ1xuIgogbXNnc3RyICLEkGFuZyBraeG7g20gdHJhIHZp4buHYyDEkeG7lWkgdMOqbiBj4bunYSDigJwlc+KAnSB0aMOgbmgg4oCcJXPigJ1cbiIKIAotIzogYnVpbHRpbi9tdi5jOjE4MworIzogYnVpbHRpbi9tdi5jOjE4NAogbXNnaWQgImJhZCBzb3VyY2UiCiBtc2dzdHIgIm5ndeG7k24gc2FpIgogCi0jOiBidWlsdGluL212LmM6MTg2CisjOiBidWlsdGluL212LmM6MTg3CiBtc2dpZCAiY2FuIG5vdCBtb3ZlIGRpcmVjdG9yeSBpbnRvIGl0c2VsZiIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGRpIGNodXnhu4NuIG3hu5l0IHRoxrAgbeG7pWMgdsOgbyB0cm9uZyBjaMOtbmggbsOzIMSRxrDhu6NjIgogCi0jOiBidWlsdGluL212LmM6MTg5CisjOiBidWlsdGluL212LmM6MTkwCiBtc2dpZCAiY2Fubm90IG1vdmUgZGlyZWN0b3J5IG92ZXIgZmlsZSIKIG1zZ3N0ciAia2jDtG5nIGRpIGNodXnhu4NuIMSRxrDhu6NjIHRoxrAgbeG7pWMgdGjDtG5nIHF1YSB04bqtcCB0aW4iCiAKLSM6IGJ1aWx0aW4vbXYuYzoxOTgKKyM6IGJ1aWx0aW4vbXYuYzoxOTkKIG1zZ2lkICJzb3VyY2UgZGlyZWN0b3J5IGlzIGVtcHR5IgogbXNnc3RyICJ0aMawIG3hu6VjIG5ndeG7k24gbMOgIHRy4buRbmcgcuG7l25nIgogCi0jOiBidWlsdGluL212LmM6MjIzCisjOiBidWlsdGluL212LmM6MjI0CiBtc2dpZCAibm90IHVuZGVyIHZlcnNpb24gY29udHJvbCIKIG1zZ3N0ciAia2jDtG5nIG7hurFtIGTGsOG7m2kgc+G7sSBxdeG6o24gbMO9IG3DoyBuZ3Xhu5NuIgogCi0jOiBidWlsdGluL212LmM6MjI2CisjOiBidWlsdGluL212LmM6MjI3CiBtc2dpZCAiZGVzdGluYXRpb24gZXhpc3RzIgogbXNnc3RyICLEkcOtY2ggxJHDoyB04buTbiB04bqhaSBz4bq1biBy4buTaSIKIAotIzogYnVpbHRpbi9tdi5jOjIzNAorIzogYnVpbHRpbi9tdi5jOjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJvdmVyd3JpdGluZyAnJXMnIgogbXNnc3RyICLEkWFuZyBnaGkgxJHDqCBsw6puIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL212LmM6MjM3CisjOiBidWlsdGluL212LmM6MjM4CiBtc2dpZCAiQ2Fubm90IG92ZXJ3cml0ZSIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIGdoaSDEkcOoIgogCi0jOiBidWlsdGluL212LmM6MjQwCisjOiBidWlsdGluL212LmM6MjQxCiBtc2dpZCAibXVsdGlwbGUgc291cmNlcyBmb3IgdGhlIHNhbWUgdGFyZ2V0IgotbXNnc3RyICJOaGnhu4F1IG5ndeG7k24gY2hvIGPDuW5nIG3hu5l0IMSRw61jaCIKK21zZ3N0ciAibmhp4buBdSBuZ3Xhu5NuIGNobyBjw7luZyBt4buZdCDEkcOtY2giCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNDIKKyM6IGJ1aWx0aW4vbXYuYzoyNDMKIG1zZ2lkICJkZXN0aW5hdGlvbiBkaXJlY3RvcnkgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgInRoxrAgbeG7pWMgxJHDrWNoIGtow7RuZyB04buTbiB04bqhaSIKIAotIzogYnVpbHRpbi9tdi5jOjI0OQorIzogYnVpbHRpbi9tdi5jOjI1MAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcywgc291cmNlPSVzLCBkZXN0aW5hdGlvbj0lcyIKIG1zZ3N0ciAiJXMsIG5ndeG7k249JXMsIMSRw61jaD0lcyIKIAotIzogYnVpbHRpbi9tdi5jOjI3MAorIzogYnVpbHRpbi9tdi5jOjI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW5hbWluZyAlcyB0byAlc1xuIgogbXNnc3RyICLEkOG7lWkgdMOqbiAlcyB0aMOgbmggJXNcbiIKIAotIzogYnVpbHRpbi9tdi5jOjI3NiBidWlsdGluL3JlbW90ZS5jOjcxNyBidWlsdGluL3JlcGFjay5jOjUxMQorIzogYnVpbHRpbi9tdi5jOjI3NyBidWlsdGluL3JlbW90ZS5jOjc4MSBidWlsdGluL3JlcGFjay5jOjUxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZW5hbWluZyAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMSR4buVaSB0w6puIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6MzU1CisjOiBidWlsdGluL25hbWUtcmV2LmM6NDY1CiBtc2dpZCAiZ2l0IG5hbWUtcmV2IFs8b3B0aW9ucz5dIDxjb21taXQ+Li4uIgotbXNnc3RyICJnaXQgbmFtZS1yZXYgWzxjw6FjLXTDuXktY2jhu41uPl0gPGNvbW1pdD7igKYiCittc2dzdHIgImdpdCBuYW1lLXJldiBbPGPDoWMgdMO5eSBjaOG7jW4+XSA8Y29tbWl0PuKApiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NgorIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NgogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLWFsbCIKLW1zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs8Y8OhYy10w7l5LWNo4buNbj5dIC0tYWxsIgorbXNnc3RyICJnaXQgbmFtZS1yZXYgWzxjw6FjIHTDuXkgY2jhu41uPl0gLS1hbGwiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzozNTcKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0NjcKIG1zZ2lkICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gLS1zdGRpbiIKLW1zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs8Y8OhYy10w7l5LWNo4buNbj5dIC0tc3RkaW4iCittc2dzdHIgImdpdCBuYW1lLXJldiBbPGPDoWMgdMO5eSBjaOG7jW4+XSAtLXN0ZGluIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDEzCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI0CiBtc2dpZCAicHJpbnQgb25seSBuYW1lcyAobm8gU0hBLTEpIgogbXNnc3RyICJjaOG7iSBoaeG7g24gdGjhu4sgdMOqbiAoa2jDtG5nIFNIQS0xKSIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxNAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUyNQogbXNnaWQgIm9ubHkgdXNlIHRhZ3MgdG8gbmFtZSB0aGUgY29tbWl0cyIKIG1zZ3N0ciAiY2jhu4kgZMO5bmcgY8OhYyB0aOG6uyDEkeG7gyDEkeG6t3QgdMOqbiBjaG8gY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE2CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI3CiBtc2dpZCAib25seSB1c2UgcmVmcyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgImNo4buJIHPhu60gZOG7pW5nIGPDoWMgdGhhbSBjaGnhur91IGto4bubcCB24bubaSA8beG6q3U+IgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE4CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI5CiBtc2dpZCAiaWdub3JlIHJlZnMgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICJi4buPIHF1YSBjw6FjIHRoYW0gY2hp4bq/dSBraOG7m3AgduG7m2kgPG3huqt1PiIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQyMAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzMQogbXNnaWQgImxpc3QgYWxsIGNvbW1pdHMgcmVhY2hhYmxlIGZyb20gYWxsIHJlZnMiCiBtc2dzdHIgIiIKICJsaeG7h3Qga8OqIHThuqV0IGPhuqMgY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIGPDsyB0aOG7gyDEkeG7jWMgxJHGsOG7o2MgdOG7qyB04bqldCBj4bqjIGPDoWMgdGhhbSBjaGnhur91IgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIxCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMyCiBtc2dpZCAicmVhZCBmcm9tIHN0ZGluIgogbXNnc3RyICLEkeG7jWMgdOG7qyDEkeG6p3UgdsOgbyB0acOqdSBjaHXhuqluIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIyCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMzCiBtc2dpZCAiYWxsb3cgdG8gcHJpbnQgYHVuZGVmaW5lZGAgbmFtZXMgKGRlZmF1bHQpIgogbXNnc3RyICJjaG8gcGjDqXAgaW4gY8OhYyB0w6puIOKAnGNoxrBhIMSR4buLbmggbmdoxKlh4oCdICht4bq3YyDEkeG7i25oKSIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQyOAorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzOQogbXNnaWQgImRlcmVmZXJlbmNlIHRhZ3MgaW4gdGhlIGlucHV0IChpbnRlcm5hbCB1c2UpIgogbXNnc3RyICJiw6NpIGLhu48gdGhhbSBjaGnhur91IGPDoWMgdGjhursgdHJvbmcgxJHhuqd1IHbDoG8gKGTDuW5nIG7hu5lpIGLhu5kpIgogCkBAIC0xMzU2NywxMSArMTY3MzgsMTEgQEAKIAogIzogYnVpbHRpbi9ub3Rlcy5jOjQ5CiBtc2dpZCAiZ2l0IG5vdGVzIGFkZCBbPG9wdGlvbnM+XSBbPG9iamVjdD5dIgotbXNnc3RyICJnaXQgbm90ZXMgYWRkIFs8Y8OhYy10w7l5LWNo4buNbj5dIFs8xJHhu5FpLXTGsOG7o25nPl0iCittc2dzdHIgImdpdCBub3RlcyBhZGQgWzxjw6FjIHTDuXkgY2jhu41uPl0gWzzEkeG7kWktdMaw4bujbmc+XSIKIAogIzogYnVpbHRpbi9ub3Rlcy5jOjU0CiBtc2dpZCAiZ2l0IG5vdGVzIGNvcHkgWzxvcHRpb25zPl0gPGZyb20tb2JqZWN0PiA8dG8tb2JqZWN0PiIKLW1zZ3N0ciAiZ2l0IG5vdGVzIGNvcHkgWzxjw6FjLXTDuXktY2jhu41uPl0gPHThu6stxJHhu5FpLXTGsOG7o25nPiA8xJHhur9uLcSR4buRaS10xrDhu6NuZz4iCittc2dzdHIgImdpdCBub3RlcyBjb3B5IFs8Y8OhYyB0w7l5IGNo4buNbj5dIDx04burLcSR4buRaS10xrDhu6NuZz4gPMSR4bq/bi3EkeG7kWktdMaw4bujbmc+IgogCiAjOiBidWlsdGluL25vdGVzLmM6NTUKIG1zZ2lkICJnaXQgbm90ZXMgY29weSAtLXN0ZGluIFs8ZnJvbS1vYmplY3Q+IDx0by1vYmplY3Q+XS4uLiIKQEAgLTEzNTc5LDcgKzE2NzUwLDcgQEAKIAogIzogYnVpbHRpbi9ub3Rlcy5jOjYwCiBtc2dpZCAiZ2l0IG5vdGVzIGFwcGVuZCBbPG9wdGlvbnM+XSBbPG9iamVjdD5dIgotbXNnc3RyICJnaXQgbm90ZXMgYXBwZW5kIFs8Y8OhYy10w7l5LWNo4buNbj5dIFs8xJHhu5FpLXTGsOG7o25nPl0iCittc2dzdHIgImdpdCBub3RlcyBhcHBlbmQgWzxjw6FjIHTDuXkgY2jhu41uPl0gWzzEkeG7kWktdMaw4bujbmc+XSIKIAogIzogYnVpbHRpbi9ub3Rlcy5jOjY1CiBtc2dpZCAiZ2l0IG5vdGVzIGVkaXQgWzxvYmplY3Q+XSIKQEAgLTEzNTkxLDE1ICsxNjc2MiwxNSBAQAogCiAjOiBidWlsdGluL25vdGVzLmM6NzUKIG1zZ2lkICJnaXQgbm90ZXMgbWVyZ2UgWzxvcHRpb25zPl0gPG5vdGVzLXJlZj4iCi1tc2dzdHIgImdpdCBub3RlcyBtZXJnZSBbPGPDoWMtdMO5eS1jaOG7jW4+XSA8bm90ZXMtcmVmPiIKK21zZ3N0ciAiZ2l0IG5vdGVzIG1lcmdlIFs8Y8OhYyB0w7l5IGNo4buNbj5dIDxub3Rlcy1yZWY+IgogCiAjOiBidWlsdGluL25vdGVzLmM6NzYKIG1zZ2lkICJnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXQgWzxvcHRpb25zPl0iCi1tc2dzdHIgImdpdCBub3RlcyBtZXJnZSAtLWNvbW1pdCBbPGPDoWMtdMO5eS1jaOG7jW4+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0IFs8Y8OhYyB0w7l5IGNo4buNbj5dIgogCiAjOiBidWlsdGluL25vdGVzLmM6NzcKIG1zZ2lkICJnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCBbPG9wdGlvbnM+XSIKLW1zZ3N0ciAiZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQgWzxjw6FjLXTDuXktY2jhu41uPl0iCittc2dzdHIgImdpdCBub3RlcyBtZXJnZSAtLWFib3J0IFs8Y8OhYyB0w7l5IGNo4buNbj5dIgogCiAjOiBidWlsdGluL25vdGVzLmM6ODIKIG1zZ2lkICJnaXQgbm90ZXMgcmVtb3ZlIFs8b2JqZWN0Pl0iCkBAIC0xMzYwNyw3ICsxNjc3OCw3IEBACiAKICM6IGJ1aWx0aW4vbm90ZXMuYzo4NwogbXNnaWQgImdpdCBub3RlcyBwcnVuZSBbPG9wdGlvbnM+XSIKLW1zZ3N0ciAiZ2l0IG5vdGVzIHBydW5lIFs8Y8OhYy10w7l5LWNo4buNbj5dIgorbXNnc3RyICJnaXQgbm90ZXMgcHJ1bmUgWzxjw6FjIHTDuXkgY2jhu41uPl0iCiAKICM6IGJ1aWx0aW4vbm90ZXMuYzo5MgogbXNnaWQgImdpdCBub3RlcyBnZXQtcmVmIgpAQCAtMTM2NDUsMTQgKzE2ODE2LDE0IEBACiBtc2dpZCAidGhlIG5vdGUgY29udGVudHMgaGF2ZSBiZWVuIGxlZnQgaW4gJXMiCiBtc2dzdHIgIm7hu5lpIGR1bmcgZ2hpIGNow7ogY8OybiBs4bqhaSAlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjI0MiBidWlsdGluL3RhZy5jOjUxMworIzogYnVpbHRpbi9ub3Rlcy5jOjI0MiBidWlsdGluL3RhZy5jOjUzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBvciByZWFkICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIGhheSDEkeG7jWMg4oCcJXPigJ0iCiAKICM6IGJ1aWx0aW4vbm90ZXMuYzoyNjMgYnVpbHRpbi9ub3Rlcy5jOjMxMyBidWlsdGluL25vdGVzLmM6MzE1Ci0jOiBidWlsdGluL25vdGVzLmM6MzgzIGJ1aWx0aW4vbm90ZXMuYzo0MzggYnVpbHRpbi9ub3Rlcy5jOjUyNAotIzogYnVpbHRpbi9ub3Rlcy5jOjUyOSBidWlsdGluL25vdGVzLmM6NjA3IGJ1aWx0aW4vbm90ZXMuYzo2NjkKKyM6IGJ1aWx0aW4vbm90ZXMuYzozODMgYnVpbHRpbi9ub3Rlcy5jOjQzOCBidWlsdGluL25vdGVzLmM6NTI2CisjOiBidWlsdGluL25vdGVzLmM6NTMxIGJ1aWx0aW4vbm90ZXMuYzo2MTAgYnVpbHRpbi9ub3Rlcy5jOjY3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHBow6JuIGdp4bqjaSDigJwlc+KAnSBuaMawIGzDoCBt4buZdCB0aGFtIGNoaeG6v3UgaOG7o3AgbOG7hy4iCkBAIC0xMzY4NSwzOCArMTY4NTYsMzggQEAKIG1zZ2lkICJyZWZ1c2luZyB0byAlcyBub3RlcyBpbiAlcyAob3V0c2lkZSBvZiByZWZzL25vdGVzLykiCiBtc2dzdHIgInThu6sgY2jhu5FpICVzIGdoaSBjaMO6IHRyb25nICVzIChu4bqxbSBuZ2/DoGkgcmVmcy9ub3Rlcy8pIgogCi0jOiBidWlsdGluL25vdGVzLmM6Mzc2IGJ1aWx0aW4vbm90ZXMuYzo0MzEgYnVpbHRpbi9ub3Rlcy5jOjUwNwotIzogYnVpbHRpbi9ub3Rlcy5jOjUxOSBidWlsdGluL25vdGVzLmM6NTk1IGJ1aWx0aW4vbm90ZXMuYzo2NjIKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4MTIgYnVpbHRpbi9ub3Rlcy5jOjk1OSBidWlsdGluL25vdGVzLmM6OTgwCisjOiBidWlsdGluL25vdGVzLmM6Mzc2IGJ1aWx0aW4vbm90ZXMuYzo0MzEgYnVpbHRpbi9ub3Rlcy5jOjUwOQorIzogYnVpbHRpbi9ub3Rlcy5jOjUyMSBidWlsdGluL25vdGVzLmM6NTk4IGJ1aWx0aW4vbm90ZXMuYzo2NjUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MTUgYnVpbHRpbi9ub3Rlcy5jOjk2MyBidWlsdGluL25vdGVzLmM6OTg1CiBtc2dpZCAidG9vIG1hbnkgcGFyYW1ldGVycyIKIG1zZ3N0ciAicXXDoSBuaGnhu4F1IMSR4buRaSBz4buRIgogCi0jOiBidWlsdGluL25vdGVzLmM6Mzg5IGJ1aWx0aW4vbm90ZXMuYzo2NzUKKyM6IGJ1aWx0aW4vbm90ZXMuYzozODkgYnVpbHRpbi9ub3Rlcy5jOjY3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBub3RlIGZvdW5kIGZvciBvYmplY3QgJXMuIgogbXNnc3RyICJraMO0bmcgdMOsbSB0aOG6pXkgZ2hpIGNow7ogY2hvIMSR4buRaSB0xrDhu6NuZyAlcy4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0MTAgYnVpbHRpbi9ub3Rlcy5jOjU3MworIzogYnVpbHRpbi9ub3Rlcy5jOjQxMCBidWlsdGluL25vdGVzLmM6NTc2CiBtc2dpZCAibm90ZSBjb250ZW50cyBhcyBhIHN0cmluZyIKIG1zZ3N0ciAibuG7mWkgZHVuZyBnaGkgY2jDuiAobm90ZSkgbuG6sW0gdHJvbmcgbeG7mXQgY2h14buXaSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxMyBidWlsdGluL25vdGVzLmM6NTc2CisjOiBidWlsdGluL25vdGVzLmM6NDEzIGJ1aWx0aW4vbm90ZXMuYzo1NzkKIG1zZ2lkICJub3RlIGNvbnRlbnRzIGluIGEgZmlsZSIKIG1zZ3N0ciAibuG7mWkgZHVuZyBnaGkgY2jDuiAobm90ZSkgbuG6sW0gdHJvbmcgbeG7mXQgdOG6rXAgdGluIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDE2IGJ1aWx0aW4vbm90ZXMuYzo1NzkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTYgYnVpbHRpbi9ub3Rlcy5jOjU4MgogbXNnaWQgInJldXNlIGFuZCBlZGl0IHNwZWNpZmllZCBub3RlIG9iamVjdCIKIG1zZ3N0ciAiZMO5bmcgbOG6oWkgbmjGsG5nIGPDsyBz4butYSBjaOG7r2EgxJHhu5FpIHTGsOG7o25nIG5vdGUgxJHDoyBjaOG7iSByYSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxOSBidWlsdGluL25vdGVzLmM6NTgyCisjOiBidWlsdGluL25vdGVzLmM6NDE5IGJ1aWx0aW4vbm90ZXMuYzo1ODUKIG1zZ2lkICJyZXVzZSBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCiBtc2dzdHIgImTDuW5nIGzhuqFpIMSR4buRaSB0xrDhu6NuZyBnaGkgY2jDuiAobm90ZSkgxJHDoyBjaOG7iSByYSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQyMiBidWlsdGluL25vdGVzLmM6NTg1CisjOiBidWlsdGluL25vdGVzLmM6NDIyIGJ1aWx0aW4vbm90ZXMuYzo1ODgKIG1zZ2lkICJhbGxvdyBzdG9yaW5nIGVtcHR5IG5vdGUiCiBtc2dzdHIgImNobyBsxrB1IHRy4buvIGdoaSBjaMO6IHRy4buRbmcgcuG7l25nIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDIzIGJ1aWx0aW4vbm90ZXMuYzo0OTQKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MjMgYnVpbHRpbi9ub3Rlcy5jOjQ5NgogbXNnaWQgInJlcGxhY2UgZXhpc3Rpbmcgbm90ZXMiCiBtc2dzdHIgInRoYXkgdGjhur8gZ2hpIGNow7ogdHLGsOG7m2MiCiAKQEAgLTEzNzI5LDI5ICsxNjkwMCwyOSBAQAogIktow7RuZyB0aOG7gyB0aMOqbSBjw6FjIGdoaSBjaMO6LiDEkMOjIHTDrG0gdGjhuqV5IGPDoWMgZ2hpIGNow7ogxJHDoyBjw7Mgc+G6tW4gY2hvIMSR4buRaSB0xrDhu6NuZyAiCiAiJXMuIFPhu60gZOG7pW5nIHTDuXkgY2jhu41uIOKAnC1m4oCdIMSR4buDIGdoaSDEkcOoIGzDqm4gY8OhYyBnaGkgY2jDuiBjxakiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0NjMgYnVpbHRpbi9ub3Rlcy5jOjU0MgorIzogYnVpbHRpbi9ub3Rlcy5jOjQ2MyBidWlsdGluL25vdGVzLmM6NTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIk92ZXJ3cml0aW5nIGV4aXN0aW5nIG5vdGVzIGZvciBvYmplY3QgJXNcbiIKIG1zZ3N0ciAixJBhbmcgZ2hpIMSRw6ggbMOqbiBnaGkgY2jDuiBjxakgY2hvIMSR4buRaSB0xrDhu6NuZyAlc1xuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDc0IGJ1aWx0aW4vbm90ZXMuYzo2MzQgYnVpbHRpbi9ub3Rlcy5jOjg5OQorIzogYnVpbHRpbi9ub3Rlcy5jOjQ3NSBidWlsdGluL25vdGVzLmM6NjM3IGJ1aWx0aW4vbm90ZXMuYzo5MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3Zpbmcgbm90ZSBmb3Igb2JqZWN0ICVzXG4iCiBtc2dzdHIgIsSQYW5nIGfhu6EgYuG7jyBnaGkgY2jDuiAobm90ZSkgY2hvIMSR4buRaSB0xrDhu6NuZyAlc1xuIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDk1CisjOiBidWlsdGluL25vdGVzLmM6NDk3CiBtc2dpZCAicmVhZCBvYmplY3RzIGZyb20gc3RkaW4iCiBtc2dzdHIgIsSR4buNYyBjw6FjIMSR4buRaSB0xrDhu6NuZyB04burIMSR4bqndSB2w6BvIHRpw6p1IGNodeG6qW4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0OTcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTkKIG1zZ2lkICJsb2FkIHJld3JpdGluZyBjb25maWcgZm9yIDxjb21tYW5kPiAoaW1wbGllcyAtLXN0ZGluKSIKIG1zZ3N0ciAidOG6o2kgY+G6pXUgaMOsbmggY2jDqXAgbOG6oWkgY2hvIDxs4buHbmg+IChuZ+G6p20gxJHhu4tuaCBsw6AgLS1zdGRpbikiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MTcKIG1zZ2lkICJ0b28gZmV3IHBhcmFtZXRlcnMiCiBtc2dzdHIgInF1w6Egw610IMSR4buRaSBz4buRIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTM2CisjOiBidWlsdGluL25vdGVzLmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgY29weSBub3Rlcy4gRm91bmQgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlcy4gVXNlICctZicgdG8gb3ZlcndyaXRlICIKQEAgLTEzNzYwLDEyICsxNjkzMSwxMiBAQAogIktow7RuZyB0aOG7gyBzYW8gY2jDqXAgY8OhYyBnaGkgY2jDui4gxJDDoyB0w6xtIHRo4bqleSBjw6FjIGdoaSBjaMO6IMSRw6MgY8OzIHPhurVuIGNobyDEkeG7kWkgIgogInTGsOG7o25nICVzLiBT4butIGThu6VuZyB0w7l5IGNo4buNbiDigJwtZuKAnSDEkeG7gyBnaGkgxJHDqCBsw6puIGPDoWMgZ2hpIGNow7ogY8WpIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTQ4CisjOiBidWlsdGluL25vdGVzLmM6NTUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3Npbmcgbm90ZXMgb24gc291cmNlIG9iamVjdCAlcy4gQ2Fubm90IGNvcHkuIgogbXNnc3RyICJ0aGnhur91IGdoaSBjaMO6IHRyw6puIMSR4buRaSB0xrDhu6NuZyBuZ3Xhu5NuICVzLiBLaMO0bmcgdGjhu4Mgc2FvIGNow6lwLiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjYwMAorIzogYnVpbHRpbi9ub3Rlcy5jOjYwMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIC1tLy1GLy1jLy1DIG9wdGlvbnMgaGF2ZSBiZWVuIGRlcHJlY2F0ZWQgZm9yIHRoZSAnZWRpdCcgc3ViY29tbWFuZC5cbiIKQEAgLTEzNzc0LDUyICsxNjk0NSw1MiBAQAogIkPDoWMgdMO5eSBjaOG7jW4gLW0vLUYvLWMvLUMgxJHDoyBj4buVIGtow7RuZyBjw7JuIGTDuW5nIG7hu69hIGNobyBs4buHbmggY29uIOKAnGVkaXTigJ0uXG4iCiAiWGluIGjDo3kgc+G7rSBk4bulbmcgbOG7h25oIHNhdSDEkeG7gyB0aGF5IHRo4bq/OiDigJxnaXQgbm90ZXMgYWRkIC1mIC1tLy1GLy1jLy1D4oCdLlxuIgogCi0jOiBidWlsdGluL25vdGVzLmM6Njk1CisjOiBidWlsdGluL25vdGVzLmM6Njk4CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHjDs2EgdGhhbSBjaGnhur91IE5PVEVTX01FUkdFX1BBUlRJQUwiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2OTcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDAKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIHJlZiBOT1RFU19NRVJHRV9SRUYiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSB4w7NhIHRoYW0gY2hp4bq/dSBOT1RFU19NRVJHRV9SRUYiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2OTkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDIKIG1zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICdnaXQgbm90ZXMgbWVyZ2UnIHdvcmt0cmVlIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgZ+G7oSBi4buPIGPDonkgbMOgbSB2aeG7h2Mg4oCcZ2l0IG5vdGVzIG1lcmdl4oCdIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzE5CisjOiBidWlsdGluL25vdGVzLmM6NzIyCiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgcmVmIE5PVEVTX01FUkdFX1BBUlRJQUwiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSDEkeG7jWMgdGhhbSBjaGnhur91IE5PVEVTX01FUkdFX1BBUlRJQUwiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MjEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjQKIG1zZ2lkICJjb3VsZCBub3QgZmluZCBjb21taXQgZnJvbSBOT1RFU19NRVJHRV9QQVJUSUFMLiIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHTDrG0gdGjhuqV5IGzhuqduIGNodXnhu4NuIGdpYW8gdOG7qyBOT1RFU19NRVJHRV9QQVJUSUFMLiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjcyMworIzogYnVpbHRpbi9ub3Rlcy5jOjcyNgogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgZnJvbSBOT1RFU19NRVJHRV9QQVJUSUFMLiIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIGPDuiBwaMOhcCBs4bqnbiBjaHV54buDbiBnaWFvIHThu6sgTk9URVNfTUVSR0VfUEFSVElBTC4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MzYKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MzkKIG1zZ2lkICJmYWlsZWQgdG8gcmVzb2x2ZSBOT1RFU19NRVJHRV9SRUYiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBwaMOibiBnaeG6o2kgTk9URVNfTUVSR0VfUkVGIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzM5CisjOiBidWlsdGluL25vdGVzLmM6NzQyCiBtc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplIG5vdGVzIG1lcmdlIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgaG/DoG4gdGjDoG5oIGjDsmEgdHLhu5luIGdoaSBjaMO6IgogCi0jOiBidWlsdGluL25vdGVzLmM6NzY1CisjOiBidWlsdGluL25vdGVzLmM6NzY4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gbm90ZXMgbWVyZ2Ugc3RyYXRlZ3kgJXMiCiBtc2dzdHIgImtow7RuZyBoaeG7g3UgY2hp4bq/biBsxrDhu6NjIGjDsmEgdHLhu5luIGdoaSBjaMO6ICVzIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzgxCisjOiBidWlsdGluL25vdGVzLmM6Nzg0CiBtc2dpZCAiR2VuZXJhbCBvcHRpb25zIgogbXNnc3RyICJUw7l5IGNo4buNbiBjaHVuZyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4MworIzogYnVpbHRpbi9ub3Rlcy5jOjc4NgogbXNnaWQgIk1lcmdlIG9wdGlvbnMiCiBtc2dzdHIgIlTDuXkgY2jhu41uIHbhu4EgaMOyYSB0cuG7mW4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3ODgKIG1zZ2lkICIiCiAicmVzb2x2ZSBub3RlcyBjb25mbGljdHMgdXNpbmcgdGhlIGdpdmVuIHN0cmF0ZWd5IChtYW51YWwvb3Vycy90aGVpcnMvdW5pb24vIgogImNhdF9zb3J0X3VuaXEpIgpAQCAtMTM4MjcsNDggKzE2OTk4LDQ4IEBACiAicGjDom4gZ2nhuqNpIGPDoWMgeHVuZyDEkeG7mXQg4oCcbm90ZXPigJ0gc+G7rSBk4bulbmcgY2hp4bq/biBsxrDhu6NjIMSRw6MgxJHGsGEgcmEgKG1hbnVhbC9vdXJzLyIKICJ0aGVpcnMvdW5pb24vY2F0X3NvcnRfdW5pcSkiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODcKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTAKIG1zZ2lkICJDb21taXR0aW5nIHVubWVyZ2VkIG5vdGVzIgogbXNnc3RyICJDaHV54buDbiBnaWFvIGPDoWMgbm90ZSBjaMawYSDEkcaw4bujYyBow7JhIHRy4buZbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4OQorIzogYnVpbHRpbi9ub3Rlcy5jOjc5MgogbXNnaWQgImZpbmFsaXplIG5vdGVzIG1lcmdlIGJ5IGNvbW1pdHRpbmcgdW5tZXJnZWQgbm90ZXMiCiBtc2dzdHIgIiIKICJjw6FjIG5vdGUgY3Xhu5FpIGPDuW5nIMSRxrDhu6NjIGjDsmEgdHLhu5luIGLhu59pIGPDoWMgbm90ZSBjaMawYSBow7JhIHRy4buZbiBj4bunYSBs4bqnbiBjaHV54buDbiAiCiAiZ2lhbyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc5MQorIzogYnVpbHRpbi9ub3Rlcy5jOjc5NAogbXNnaWQgIkFib3J0aW5nIG5vdGVzIG1lcmdlIHJlc29sdXRpb24iCiBtc2dzdHIgIkjhu6d5IGLhu48gcGjDom4gZ2nhuqNpIGdoaSBjaMO6IChub3RlKSBow7JhIHRy4buZbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc5MworIzogYnVpbHRpbi9ub3Rlcy5jOjc5NgogbXNnaWQgImFib3J0IG5vdGVzIG1lcmdlIgogbXNnc3RyICJi4buPIHF1YSBow7JhIHRy4buZbiBjw6FjIGdoaSBjaMO6IChub3RlKSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjgwNAorIzogYnVpbHRpbi9ub3Rlcy5jOjgwNwogbXNnaWQgImNhbm5vdCBtaXggLS1jb21taXQsIC0tYWJvcnQgb3IgLXMvLS1zdHJhdGVneSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHRy4buZbiBs4bqrbiAtLWNvbW1pdCwgLS1hYm9ydCBoYXkgLXMvLS1zdHJhdGVneSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjgwOQorIzogYnVpbHRpbi9ub3Rlcy5jOjgxMgogbXNnaWQgIm11c3Qgc3BlY2lmeSBhIG5vdGVzIHJlZiB0byBtZXJnZSIKIG1zZ3N0ciAiYuG6oW4gcGjhuqNpIGNo4buJIMSR4buLbmggdGhhbSBjaGnhur91IGdoaSBjaMO6IMSR4buDIGjDsmEgdHLhu5luIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODMzCisjOiBidWlsdGluL25vdGVzLmM6ODM2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gLXMvLS1zdHJhdGVneTogJXMiCiBtc2dzdHIgImtow7RuZyBoaeG7g3UgLXMvLS1zdHJhdGVneTogJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSBub3RlcyBtZXJnZSBpbnRvICVzIGlzIGFscmVhZHkgaW4tcHJvZ3Jlc3MgYXQgJXMiCiBtc2dzdHIgIm3hu5l0IGdoaSBjaMO6IGjDsmEgdHLhu5luIHbDoG8gJXMgxJHDoyBz4bq1biB0cm9uZyBxdcOhIHRyw6xuaCB44butIGzDvSB04bqhaSAlcyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg3MworIzogYnVpbHRpbi9ub3Rlcy5jOjg3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RvcmUgbGluayB0byBjdXJyZW50IG5vdGVzIHJlZiAoJXMpIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgbMawdSBsacOqbiBr4bq/dCDEkeG6v24gdGhhbSBjaGnhur91IGdoaSBjaMO6IGhp4buHbiB04bqhaSAoJXMpIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODc1CisjOiBidWlsdGluL25vdGVzLmM6ODc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJBdXRvbWF0aWMgbm90ZXMgbWVyZ2UgZmFpbGVkLiBGaXggY29uZmxpY3RzIGluICVzIGFuZCBjb21taXQgdGhlIHJlc3VsdCB3aXRoICIKQEAgLTEzODc5LDE3NCArMTcwNTAsMTU2IEBACiAiY2h1eeG7g24gZ2lhbyBr4bq/dCBxdeG6oyBi4bqxbmcg4oCcZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl04oCdLCBob+G6t2MgYsOjaSBi4buPIHZp4buHYyBow7JhICIKICJ0cuG7mW4gYuG6sW5nIOKAnGdpdCBub3RlcyBtZXJnZSAtLWFib3J04oCdLlxuIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODk3CisjOiBidWlsdGluL25vdGVzLmM6ODk3IGJ1aWx0aW4vdGFnLmM6NTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgorbXNnc3RyICJH4bq3cCBs4buXaSBraGkgcGjDom4gZ2nhuqNpIOKAnCVz4oCdIG5oxrAgbMOgIG3hu5l0IHRoYW0gY2hp4bq/dSBo4bujcCBs4buHLiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjkwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJPYmplY3QgJXMgaGFzIG5vIG5vdGVcbiIKIG1zZ3N0ciAixJDhu5FpIHTGsOG7o25nICVzIGtow7RuZyBjw7MgZ2hpIGNow7ogKG5vdGUpXG4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5MDkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MTIKIG1zZ2lkICJhdHRlbXB0IHRvIHJlbW92ZSBub24tZXhpc3RlbnQgbm90ZSBpcyBub3QgYW4gZXJyb3IiCiBtc2dzdHIgImPhu5EgZ+G6r25nIGfhu6EgYuG7jyBt4buZdCBub3RlIGNoxrBhIHThu6tuZyB04buTbiB04bqhaSBraMO0bmcgcGjhuqNpIGzDoCBt4buZdCBs4buXaSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjkxMgorIzogYnVpbHRpbi9ub3Rlcy5jOjkxNQogbXNnaWQgInJlYWQgb2JqZWN0IG5hbWVzIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICLEkeG7jWMgdMOqbiDEkeG7kWkgdMaw4bujbmcgdOG7qyB0aGnhur90IGLhu4sgbmjhuq1wIGNodeG6qW4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5NTAgYnVpbHRpbi9wcnVuZS5jOjEwOCBidWlsdGluL3dvcmt0cmVlLmM6MTY0CisjOiBidWlsdGluL25vdGVzLmM6OTU0IGJ1aWx0aW4vcHJ1bmUuYzoxMzAgYnVpbHRpbi93b3JrdHJlZS5jOjE2NAogbXNnaWQgImRvIG5vdCByZW1vdmUsIHNob3cgb25seSIKIG1zZ3N0ciAia2jDtG5nIGfhu6EgYuG7jywgY2jhu4kgaGnhu4NuIHRo4buLIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTUxCisjOiBidWlsdGluL25vdGVzLmM6OTU1CiBtc2dpZCAicmVwb3J0IHBydW5lZCBub3RlcyIKIG1zZ3N0ciAiYsOhbyBjw6FvIGPDoWMgxJHhu5FpIHTGsOG7o25nIMSRw6MgcHJ1bmUiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5OTMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5OTgKIG1zZ2lkICJub3Rlcy1yZWYiCiBtc2dzdHIgIm5vdGVzLXJlZiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk5NAorIzogYnVpbHRpbi9ub3Rlcy5jOjk5OQogbXNnaWQgInVzZSBub3RlcyBmcm9tIDxub3Rlcy1yZWY+IgogbXNnc3RyICJkw7luZyDigJxub3Rlc+KAnSB04burIDxub3Rlcy1yZWY+IgogCi0jOiBidWlsdGluL25vdGVzLmM6MTAyOQorIzogYnVpbHRpbi9ub3Rlcy5jOjEwMzQgYnVpbHRpbi9zdGFzaC5jOjE2NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBzdWJjb21tYW5kOiAlcyIKIG1zZ3N0ciAia2jDtG5nIGhp4buDdSBjw6J1IGzhu4duaCBjb246ICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUyCiBtc2dpZCAiIgogImdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgWzxvcHRpb25zPi4uLl0gWzwgPHJlZi1saXN0PiB8IDwgPG9iamVjdC1saXN0Pl0iCiBtc2dzdHIgIiIKLSJnaXQgcGFjay1vYmplY3RzIC0tc3Rkb3V0IFtjw6FjLXTDuXktY2jhu41u4oCmXSBbPCA8ZGFuaC1zw6FjaC10aGFtLWNoaeG6v3U+IHwgPCAiCisiZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCBbY8OhYyB0w7l5IGNo4buNbuKApl0gWzwgPGRhbmgtc8OhY2gtdGhhbS1jaGnhur91PiB8IDwgIgogIjxkYW5oLXPDoWNoLcSR4buRaS10xrDhu6NuZz5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjUzCiBtc2dpZCAiIgogImdpdCBwYWNrLW9iamVjdHMgWzxvcHRpb25zPi4uLl0gPGJhc2UtbmFtZT4gWzwgPHJlZi1saXN0PiB8IDwgPG9iamVjdC1saXN0Pl0iCiBtc2dzdHIgIiIKLSJnaXQgcGFjay1vYmplY3RzIFtjw6FjLXTDuXktY2jhu41u4oCmXSA8YmFzZS1uYW1lPiBbPCA8ZGFuaC1zw6FjaC1yZWY+IHwgPCA8ZGFuaC0iCisiZ2l0IHBhY2stb2JqZWN0cyBbY8OhYyB0w7l5IGNo4buNbuKApl0gPGJhc2UtbmFtZT4gWzwgPGRhbmgtc8OhY2gtcmVmPiB8IDwgPGRhbmgtIgogInPDoWNoLcSR4buRaS10xrDhu6NuZz5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQyMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2tlZCBvYmplY3QgQ1JDIGZvciAlcyIKIG1zZ3N0ciAiQ1JDIGPhu6dhIMSR4buRaSB0xrDhu6NuZyBnw7NpIHNhaSB24bubaSAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MzMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgcGFja2VkIG9iamVjdCBmb3IgJXMiCiBtc2dzdHIgIsSR4buRaSB0xrDhu6NuZyDEkcOjIMSRw7NuZyBnw7NpIHNhaSBo4buPbmcgY2hvICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjU2NAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1NzIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVjdXJzaXZlIGRlbHRhIGRldGVjdGVkIGZvciBvYmplY3QgJXMiCiBtc2dzdHIgImTDsiB0aOG6pXkgZGVsdGEgxJHhu4cgcXV5IGNobyDEkeG7kWkgdMaw4bujbmcgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzc1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJvcmRlcmVkICV1IG9iamVjdHMsIGV4cGVjdGVkICU8UFJJdTMyPiIKIG1zZ3N0ciAixJHDoyBz4bqvcCB44bq/cCAldSDEkeG7kWkgdMaw4bujbmcsIGPhuqduICU8UFJJdTMyPiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3ODgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGFja2ZpbGUgaXMgaW52YWxpZDogJXMiCi1tc2dzdHIgInThuq1wIHRpbiBnw7NpIGtow7RuZyBo4bujcCBs4buHOiAlcyIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3OTIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIG9wZW4gcGFja2ZpbGUgZm9yIHJldXNlOiAlcyIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gdOG6rXAgdGluIGfDs2kgxJHhu4MgZMO5bmcgbOG6oWk6ICVzIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc5NgotbXNnaWQgInVuYWJsZSB0byBzZWVrIGluIHJldXNlZCBwYWNrZmlsZSIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIGRpIGNodXnhu4NuIHbhu4sgdHLDrSDEkeG7jWMgdHJvbmcgdOG6rXAgdGluIGfDs2kgZMO5bmcgbOG6oWkiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODA3Ci1tc2dpZCAidW5hYmxlIHRvIHJlYWQgZnJvbSByZXVzZWQgcGFja2ZpbGUiCi1tc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgdOG7qyB04bqtcCB0aW4gZ8OzaSBkw7luZyBs4bqhaSIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo4MzUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTcyCiBtc2dpZCAiZGlzYWJsaW5nIGJpdG1hcCB3cml0aW5nLCBwYWNrcyBhcmUgc3BsaXQgZHVlIHRvIHBhY2sucGFja1NpemVMaW1pdCIKIG1zZ3N0ciAidOG6r3QgZ2hpIGJpdG1hcCwgY8OhYyBnw7NpIGLhu4sgY2hpYSBuaOG7jyBi4bufaSB2w6wgcGFjay5wYWNrU2l6ZUxpbWl0IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjg0OAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5ODUKIG1zZ2lkICJXcml0aW5nIG9iamVjdHMiCiBtc2dzdHIgIsSQYW5nIGdoaSBs4bqhaSBjw6FjIMSR4buRaSB0xrDhu6NuZyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5MTAgYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4OAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMDQ2IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN0YXQgJXMiCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBs4bqleSB0aMO0bmcgdGluIHRo4buRbmcga8OqIHbhu4EgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTYzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjEwOTkKICMsIGMtZm9ybWF0CiBtc2dpZCAid3JvdGUgJTxQUkl1MzI+IG9iamVjdHMgd2hpbGUgZXhwZWN0aW5nICU8UFJJdTMyPiIKIG1zZ3N0ciAixJHDoyBnaGkgJTxQUkl1MzI+IMSR4buRaSB0xrDhu6NuZyB0cm9uZyBraGkgY+G6p24gJTxQUkl1MzI+IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjExNTcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTI5NwogbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgYXMgc29tZSBvYmplY3RzIGFyZSBub3QgYmVpbmcgcGFja2VkIgogbXNnc3RyICJ04bqvdCBnaGkgYml0bWFwLCBuaMawIHbhuq15IG3hu5l0IHPhu5EgxJHhu5FpIHTGsOG7o25nIHPhur0ga2jDtG5nIMSRxrDhu6NjIMSRw7NuZyBnw7NpIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE1ODUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTcyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWx0YSBiYXNlIG9mZnNldCBvdmVyZmxvdyBpbiBwYWNrIGZvciAlcyIKIG1zZ3N0ciAia2hv4bqjbmcgYsO5IGPGoSBz4bufIGNobyBkZWx0YSBi4buLIHRyw6BuIHRyb25nIGfDs2kgY2hvICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE1OTQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTczMwogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWx0YSBiYXNlIG9mZnNldCBvdXQgb2YgYm91bmQgZm9yICVzIgogbXNnc3RyICJraG/huqNuZyBiw7kgY8ahIHPhu58gY2hvIGRlbHRhIG7hurFtIG5nb8OgaSBwaOG6oW0gY2hvICVzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE4NjMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjAwNAogbXNnaWQgIkNvdW50aW5nIG9iamVjdHMiCiBtc2dzdHIgIsSQYW5nIMSR4bq/bSBjw6FjIMSR4buRaSB0xrDhu6NuZyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxOTk4Ci0jLCBjLWZvcm1hdAotbXNnaWQgInVuYWJsZSB0byBnZXQgc2l6ZSBvZiAlcyIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IGvDrWNoIGPhu6EgY+G7p2EgJXMiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjAxMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBvYmplY3QgaGVhZGVyIG9mICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggcGjhuqduIMSR4bqndSDEkeG7kWkgdMaw4bujbmcgY+G7p2Eg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA4MyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwOTkKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEwOQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjE5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIzNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBjYW5ub3QgYmUgcmVhZCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyDEkeG7kWkgdMaw4bujbmcgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA4NiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIyMiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGluY29uc2lzdGVudCBvYmplY3QgbGVuZ3RoICglPFBSSXVNQVg+IHZzICU8UFJJdU1BWD4pIgogbXNnc3RyICIiCiAixJHhu5FpIHTGsOG7o25nICVzIGtow7RuZyBuaOG6pXQgcXXDoW4gduG7gSBjaGnhu4F1IGTDoGkgxJHhu5FpIHTGsOG7o25nICglPFBSSXVNQVg+IHNvIHbhu5tpICIKICIlPFBSSXVNQVg+KSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTIzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNTkKIG1zZ2lkICJzdWJvcHRpbWFsIHBhY2sgLSBvdXQgb2YgbWVtb3J5IgogbXNnc3RyICJzdWJvcHRpbWFsIHBhY2sgLSBo4bq/dCBi4buZIG5o4bubIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI0NTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjU3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWx0YSBjb21wcmVzc2lvbiB1c2luZyB1cCB0byAlZCB0aHJlYWRzIgogbXNnc3RyICJOw6luIGRlbHRhIGTDuW5nIHThu5tpICVkIHR1eeG6v24gdHLDrG5oIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI1ODMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFjayBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHRhZyAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIMSRw7NuZyBnw7NpIGPDoWMgxJHhu5FpIHTGsOG7o25nIHRp4bq/cCBj4bqtbiDEkcaw4bujYyB04burIHRo4bq7IOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2NzAKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjgwMQogbXNnaWQgIkNvbXByZXNzaW5nIG9iamVjdHMiCiBtc2dzdHIgIsSQYW5nIG7DqW4gY8OhYyDEkeG7kWkgdMaw4bujbmciCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjY3NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODA3CiBtc2dpZCAiaW5jb25zaXN0ZW5jeSB3aXRoIGRlbHRhIGNvdW50IgogbXNnc3RyICJtw6J1IHRodeG6q24gduG7m2kgc+G7kSBsxrDhu6NuZyBkZWx0YSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzUzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4cGVjdGVkIGVkZ2Ugb2JqZWN0IElELCBnb3QgZ2FyYmFnZTpcbiIKQEAgLTE0MDU1LDcgKzE3MjA4LDcgQEAKICJj4bqnbiBJRCDEkeG7kWkgdMaw4bujbmcgY+G6oW5oLCBuaOG6rW4gxJHGsOG7o2MgcsOhYzpcbiIKICIgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjc1OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleHBlY3RlZCBvYmplY3QgSUQsIGdvdCBnYXJiYWdlOlxuIgpAQCAtMTQwNjQsMjQ5ICsxNzIxNywyNDUgQEAKICJj4bqnbiBJRCDEkeG7kWkgdMaw4bujbmcsIG5o4bqtbiDEkcaw4bujYyByw6FjOlxuIgogIiAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODU3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5OTIKIG1zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciAtLW1pc3NpbmciCiBtc2dzdHIgImdpw6EgdHLhu4sgY2hvIC0tbWlzc2luZyBraMO0bmcgaOG7o3AgbOG7hyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyOTE2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzAyNAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDUxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE1OQogbXNnaWQgImNhbm5vdCBvcGVuIHBhY2sgaW5kZXgiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIG3hu6VjIGzhu6VjIGPhu6dhIGfDs2kiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjk0NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDgyCiAjLCBjLWZvcm1hdAogbXNnaWQgImxvb3NlIG9iamVjdCBhdCAlcyBjb3VsZCBub3QgYmUgZXhhbWluZWQiCiBtc2dzdHIgIsSR4buRaSB0xrDhu6NuZyBt4bqldCB04bqhaSAlcyBraMO0bmcgdGjhu4MgxJHDoyBraeG7g20gdHJhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwMzIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE2NwogbXNnaWQgInVuYWJsZSB0byBmb3JjZSBsb29zZSBvYmplY3QiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBideG7mWMgbeG6pXQgxJHhu5FpIHTGsOG7o25nIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMjIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgYSByZXYgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHBo4bqjaSBt4buZdCByZXYg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEyNQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjYzCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCByZXZpc2lvbiAnJXMnIgogbXNnc3RyICLEkWnhu4NtIHhlbSB4w6l0IHNhaSDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTUwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODgKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIHJlY2VudCBvYmplY3RzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdGjDqm0gY8OhYyDEkeG7kWkgdMaw4bujbmcgbeG7m2kgZMO5bmciCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIwMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuc3VwcG9ydGVkIGluZGV4IHZlcnNpb24gJXMiCiBtc2dzdHIgInBoacOqbiBi4bqjbiBt4bulYyBs4bulYyBraMO0bmcgxJHGsOG7o2MgaOG7lyB0cuG7oyAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjA3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJyVzJyIKIG1zZ3N0ciAicGhpw6puIGLhuqNuIG3hu6VjIGzhu6VjIHNhaSDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjM3Ci1tc2dpZCAiZG8gbm90IHNob3cgcHJvZ3Jlc3MgbWV0ZXIiCi1tc2dzdHIgImtow7RuZyBoaeG7g24gdGjhu4sgYuG7mSDEkW8gdGnhur9uIHRyw6xuaCIKLQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjM5Ci1tc2dpZCAic2hvdyBwcm9ncmVzcyBtZXRlciIKLW1zZ3N0ciAiaGnhu4NuIHRo4buLIGLhu5kgxJFvIHRp4bq/biB0csOsbmgiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0MQotbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIgZHVyaW5nIG9iamVjdCB3cml0aW5nIHBoYXNlIgotbXNnc3RyICJoaeG7g24gdGjhu4sgYuG7mSDEkW8gdGnhur9uIHRyaeG7g24gdHJvbmcgc3Xhu5F0IHBoYSBnaGkgxJHhu5FpIHTGsOG7o25nIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDQKLW1zZ2lkICJzaW1pbGFyIHRvIC0tYWxsLXByb2dyZXNzIHdoZW4gcHJvZ3Jlc3MgbWV0ZXIgaXMgc2hvd24iCi1tc2dzdHIgInTGsMahbmcgdOG7sSAtLWFsbC1wcm9ncmVzcyBraGkgYuG7mSDEkW8gdGnhur9uIHRyw6xuaCDEkcaw4bujYyB4deG6pXQgaGnhu4duIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4MwogbXNnaWQgIjx2ZXJzaW9uPlssPG9mZnNldD5dIgogbXNnc3RyICI8cGhpw6puIGLhuqNuPlssb2Zmc2V0XSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQ2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODQKIG1zZ2lkICJ3cml0ZSB0aGUgcGFjayBpbmRleCBmaWxlIGluIHRoZSBzcGVjaWZpZWQgaWR4IGZvcm1hdCB2ZXJzaW9uIgogbXNnc3RyICJnaGkgdOG6rXAgdGluIGLhuqNuZyBt4bulYyBs4bulYyBnw7NpIChwYWNrKSDhu58gcGhpw6puIGLhuqNuIMSR4buLbmggZOG6oW5nIGlkeCDEkcOjIGNobyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjQ5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODcKIG1zZ2lkICJtYXhpbXVtIHNpemUgb2YgZWFjaCBvdXRwdXQgcGFjayBmaWxlIgogbXNnc3RyICJrY8OtaCB0aMaw4bubYyB04buRaSDEkWEgY2hvIHThuq1wIHRpbiBnw7NpIMSRxrDhu6NjIHThuqFvIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4OQogbXNnaWQgImlnbm9yZSBib3Jyb3dlZCBvYmplY3RzIGZyb20gYWx0ZXJuYXRlIG9iamVjdCBzdG9yZSIKIG1zZ3N0ciAiYuG7jyBxdWEgY8OhYyDEkeG7kWkgdMaw4bujbmcgdmF5IG3GsOG7o24gdOG7qyBraG8gxJHhu5FpIHTGsOG7o25nIHRoYXkgdGjhur8iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzkxCiBtc2dpZCAiaWdub3JlIHBhY2tlZCBvYmplY3RzIgogbXNnc3RyICJi4buPIHF1YSBjw6FjIMSR4buRaSB0xrDhu6NuZyDEkcOzbmcgZ8OzaSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjU1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTMKIG1zZ2lkICJsaW1pdCBwYWNrIHdpbmRvdyBieSBvYmplY3RzIgogbXNnc3RyICJnaeG7m2kgaOG6oW4gY+G7rWEgc+G7lSDEkcOzbmcgZ8OzaSB0aGVvIMSR4buRaSB0xrDhu6NuZyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjU3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTUKIG1zZ2lkICJsaW1pdCBwYWNrIHdpbmRvdyBieSBtZW1vcnkgaW4gYWRkaXRpb24gdG8gb2JqZWN0IGxpbWl0IgogbXNnc3RyICJnaeG7m2kgaOG6oW4gY+G7rWEgc+G7lSDEkcOzbmcgZ8OzaSB0aGVvIGLhu5kgbmjhu5sgY+G7mW5nIHRow6ptIHbhu5tpIGdp4bubaSBo4bqhbiDEkeG7kWkgdMaw4bujbmciCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk3CiBtc2dpZCAibWF4aW11bSBsZW5ndGggb2YgZGVsdGEgY2hhaW4gYWxsb3dlZCBpbiB0aGUgcmVzdWx0aW5nIHBhY2siCiBtc2dzdHIgIsSR4buZIGTDoGkgdOG7kWkgxJFhIGPhu6dhIGNodeG7l2kgbcOzYyB4w61jaCDigJxkZWx0YeKAnSDEkcaw4bujYyBwaMOpcCB0cm9uZyBnw7NpIGvhur90IHF14bqjIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5OQogbXNnaWQgInJldXNlIGV4aXN0aW5nIGRlbHRhcyIKIG1zZ3N0ciAiZMO5bmcgbOG6oWkgY8OhYyBkZWx0YSBz4bq1biBjw7MiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAxCiBtc2dpZCAicmV1c2UgZXhpc3Rpbmcgb2JqZWN0cyIKIG1zZ3N0ciAiZMO5bmcgbOG6oWkgY8OhYyDEkeG7kWkgdMaw4bujbmcgc+G6tW4gY8OzIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMwogbXNnaWQgInVzZSBPRlNfREVMVEEgb2JqZWN0cyIKIG1zZ3N0ciAiZMO5bmcgY8OhYyDEkeG7kWkgdMaw4bujbmcgT0ZTX0RFTFRBIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwNQogbXNnaWQgInVzZSB0aHJlYWRzIHdoZW4gc2VhcmNoaW5nIGZvciBiZXN0IGRlbHRhIG1hdGNoZXMiCiBtc2dzdHIgInPhu60gZOG7pW5nIGPDoWMgdHV54bq/biB0csOsbmgga2hpIHTDrG0ga2nhur9tIGNobyBjw6FjIG3huqt1IGto4bubcCBkZWx0YSB04buRdCBuaOG6pXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA3CiBtc2dpZCAiZG8gbm90IGNyZWF0ZSBhbiBlbXB0eSBwYWNrIG91dHB1dCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHThuqFvIGvhur90IHh14bqldCBnw7NpIHRy4buRbmcgcuG7l25nIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwOQogbXNnaWQgInJlYWQgcmV2aXNpb24gYXJndW1lbnRzIGZyb20gc3RhbmRhcmQgaW5wdXQiCi1tc2dzdHIgIiDEkeG7jWMgdGhhbSBz4buRIOKAnHJldmlzaW9u4oCdIHThu6sgdGhp4bq/dCBi4buLIG5o4bqtcCBjaHXhuqluIgorbXNnc3RyICLEkeG7jWMgdGhhbSBz4buRIOKAnHJldmlzaW9u4oCdIHThu6sgdGhp4bq/dCBi4buLIG5o4bqtcCBjaHXhuqluIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxMQogbXNnaWQgImxpbWl0IHRoZSBvYmplY3RzIHRvIHRob3NlIHRoYXQgYXJlIG5vdCB5ZXQgcGFja2VkIgogbXNnc3RyICJnaeG7m2kgaOG6oW4gY8OhYyDEkeG7kWkgdMaw4bujbmcgdGjDoG5oIG5o4buvbmcgY8OhaSBtw6AgY2jDum5nIHbhuqtuIGNoxrBhIMSRxrDhu6NjIMSRw7NuZyBnw7NpIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNAogbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWFjaGFibGUgZnJvbSBhbnkgcmVmZXJlbmNlIgogbXNnc3RyICJiYW8gZ+G7k20gY8OhYyDEkeG7kWkgdMaw4bujbmcgY8OzIHRo4buDIMSR4buNYyDEkcaw4bujYyB04burIGLhuqV0IGvhu7MgdGhhbSBjaGnhur91IG7DoG8iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3OQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDE3CiBtc2dpZCAiaW5jbHVkZSBvYmplY3RzIHJlZmVycmVkIGJ5IHJlZmxvZyBlbnRyaWVzIgogbXNnc3RyICJiYW8gZ+G7k20gY8OhYyDEkeG7kWkgdMaw4bujbmcgxJHGsOG7o2MgdGhhbSBjaGnhur91IGLhu59pIGPDoWMgbeG7pWMgcmVmbG9nIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyMAogbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWZlcnJlZCB0byBieSB0aGUgaW5kZXgiCiBtc2dzdHIgImJhbyBn4buTbSBjw6FjIMSR4buRaSB0xrDhu6NuZyDEkcaw4bujYyB0aGFtIGNoaeG6v3UgYuG7n2kgbeG7pWMgbOG7pWMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI4NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDIzCiBtc2dpZCAib3V0cHV0IHBhY2sgdG8gc3Rkb3V0IgogbXNnc3RyICJ4deG6pXQgZ8OzaSByYSDEkeG6p3UgcmEgdGnDqnUgY2h14bqpbiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjUKIG1zZ2lkICJpbmNsdWRlIHRhZyBvYmplY3RzIHRoYXQgcmVmZXIgdG8gb2JqZWN0cyB0byBiZSBwYWNrZWQiCiBtc2dzdHIgImJhbyBn4buTbSBjw6FjIMSR4buRaSB0xrDhu6NuZyB0aGFtIGNoaeG6v3UgxJHhur9uIGPDoWMgxJHhu5FpIHTGsOG7o25nIMSRxrDhu6NjIMSRw7NuZyBnw7NpIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyNwogbXNnaWQgImtlZXAgdW5yZWFjaGFibGUgb2JqZWN0cyIKIG1zZ3N0ciAiZ2nhu68gbOG6oWkgY8OhYyDEkeG7kWkgdMaw4bujbmcga2jDtG5nIHRo4buDIMSR4buNYyDEkcaw4bujYyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjkKIG1zZ2lkICJwYWNrIGxvb3NlIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgInBhY2sgbeG6pXQgY8OhYyDEkeG7kWkgdMaw4bujbmcga2jDtG5nIHRo4buDIMSR4buNYyDEkcaw4bujYyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzEKIG1zZ2lkICJ1bnBhY2sgdW5yZWFjaGFibGUgb2JqZWN0cyBuZXdlciB0aGFuIDx0aW1lPiIKIG1zZ3N0ciAiIgogInjhuqMgbsOpbiAoZ+G7oSBraOG7j2kgZ8OzaSkgY8OhYyDEkeG7kWkgdMaw4bujbmcga2jDtG5nIHRo4buDIMSR4buNYyDEkcaw4bujYyBt4bubaSBoxqFuIDx0aOG7nWktZ2lhbj4iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDM0Cittc2dpZCAidXNlIHRoZSBzcGFyc2UgcmVhY2hhYmlsaXR5IGFsZ29yaXRobSIKK21zZ3N0ciAic+G7rSBk4bulbmcgdGh14bqtdCB0b8OhbiDigJxzcGFyc2UgcmVhY2hhYmlsaXR54oCdIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzYKIG1zZ2lkICJjcmVhdGUgdGhpbiBwYWNrcyIKIG1zZ3N0ciAidOG6oW8gZ8OzaSBuaOG6uSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzgKIG1zZ2lkICJjcmVhdGUgcGFja3Mgc3VpdGFibGUgZm9yIHNoYWxsb3cgZmV0Y2hlcyIKIG1zZ3N0ciAidOG6oW8gZ8OzaSDEkeG7gyBwaMO5IGjhu6NwIGNobyBs4bqleSB24buBIG7DtG5nIChzaGFsbG93KSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDAKIG1zZ2lkICJpZ25vcmUgcGFja3MgdGhhdCBoYXZlIGNvbXBhbmlvbiAua2VlcCBmaWxlIgogbXNnc3RyICJi4buPIHF1YSBjw6FjIGfDs2kgbcOgIG7DsyBjw7MgdOG6rXAgdGluIC5rZWVwIMSRaSBrw6htIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0MgogbXNnaWQgImlnbm9yZSB0aGlzIHBhY2siCiBtc2dzdHIgImLhu48gcXVhIGfDs2kgbsOgeSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzA0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDQKIG1zZ2lkICJwYWNrIGNvbXByZXNzaW9uIGxldmVsIgogbXNnc3RyICJt4bupYyBuw6luIGfDs2kiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwNgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQ2CiBtc2dpZCAiZG8gbm90IGhpZGUgY29tbWl0cyBieSBncmFmdHMiCiBtc2dzdHIgImtow7RuZyDhuqluIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBi4bufaSDigJxncmFmdHPigJ0iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwOAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQ4CiBtc2dpZCAidXNlIGEgYml0bWFwIGluZGV4IGlmIGF2YWlsYWJsZSB0byBzcGVlZCB1cCBjb3VudGluZyBvYmplY3RzIgogbXNnc3RyICJkw7luZyBt4bulYyBs4bulYyDDoW5oIHjhuqEgbuG6v3UgY8OzIHRo4buDIMSRxrDhu6NjIMSR4buDIG7Dom5nIGNhbyB04buRYyDEkeG7mSDEkeG6v20gxJHhu5FpIHTGsOG7o25nIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTAKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ1MAogbXNnaWQgIndyaXRlIGEgYml0bWFwIGluZGV4IHRvZ2V0aGVyIHdpdGggdGhlIHBhY2sgaW5kZXgiCiBtc2dzdHIgImdoaSBt4buZdCBt4bulYyBs4bulYyDDoW5oIHjhuqEgY8O5bmcgduG7m2kgbeG7pWMgbOG7pWMgZ8OzaSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzEzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTQKK21zZ2lkICJ3cml0ZSBhIGJpdG1hcCBpbmRleCBpZiBwb3NzaWJsZSIKK21zZ3N0ciAiZ2hpIG3hu6VjIGzhu6VjIMOhbmggeOG6oSBu4bq/dSDEkcaw4bujYyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU4CiBtc2dpZCAiaGFuZGxpbmcgZm9yIG1pc3Npbmcgb2JqZWN0cyIKIG1zZ3N0ciAieOG7rSBsw70gY2hvIHRoaeG6v3UgxJHhu5FpIHTGsOG7o25nIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMTYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ2MQogbXNnaWQgImRvIG5vdCBwYWNrIG9iamVjdHMgaW4gcHJvbWlzb3IgcGFja2ZpbGVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHDs25nIGfDs2kgY8OhYyDEkeG7kWkgdMaw4bujbmcgdHJvbmcgY8OhYyB04bqtcCB0aW4gZ8OzaSBo4bupYSBo4bq5biIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzE4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NjMKIG1zZ2lkICJyZXNwZWN0IGlzbGFuZHMgZHVyaW5nIGRlbHRhIGNvbXByZXNzaW9uIgogbXNnc3RyICJ0w7RuIHRy4buNbmcgaXNsYW5kIHRyb25nIHN14buRdCBxdcOhIHRyw6xuaCBuw6luIOKAnGRlbHRh4oCdIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWx0YSBjaGFpbiBkZXB0aCAlZCBpcyB0b28gZGVlcCwgZm9yY2luZyAlZCIKIG1zZ3N0ciAibeG7qWMgc2F1IHjDrWNoIGRlbHRhICVkIGzDoCBxdcOhIHPDonUsIGJ14buZYyBkw7luZyAlZCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQ3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjay5kZWx0YUNhY2hlTGltaXQgaXMgdG9vIGhpZ2gsIGZvcmNpbmcgJWQiCiBtc2dzdHIgInBhY2suZGVsdGFDYWNoZUxpbWl0IGzDoCBxdcOhIGNhbywgw6lwIGTDuW5nICVkIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1MQogbXNnaWQgIi0tbWF4LXBhY2stc2l6ZSBjYW5ub3QgYmUgdXNlZCB0byBidWlsZCBhIHBhY2sgZm9yIHRyYW5zZmVyIgogbXNnc3RyICIiCiAiLS1tYXgtcGFjay1zaXplIGtow7RuZyB0aOG7gyDEkcaw4bujYyBz4butIGThu6VuZyDEkeG7gyB4w6J5IGThu7FuZyBt4buZdCBnw7NpIMSR4buDIHbhuq1uIGNodXnhu4NuIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1MwogbXNnaWQgIm1pbmltdW0gcGFjayBzaXplIGxpbWl0IGlzIDEgTWlCIgogbXNnc3RyICJnaeG7m2kgaOG6oW4ga8OtY2ggdGjGsOG7m2MgdOG7kWkgdGhp4buDdSBj4bunYSBnw7NpIGzDoCAxIE1pQiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NTgKIG1zZ2lkICItLXRoaW4gY2Fubm90IGJlIHVzZWQgdG8gYnVpbGQgYW4gaW5kZXhhYmxlIHBhY2siCiBtc2dzdHIgIi0tdGhpbiBraMO0bmcgdGjhu4MgxJHGsOG7o2MgZMO5bmcgxJHhu4MgeMOieSBk4buxbmcgZ8OzaSDEkcOhbmggbeG7pWMgbOG7pWMgxJHGsOG7o2MiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxMQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTYxCiBtc2dpZCAiLS1rZWVwLXVucmVhY2hhYmxlIGFuZCAtLXVucGFjay11bnJlYWNoYWJsZSBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWtlZXAtdW5yZWFjaGFibGUgdsOgIC0tdW5wYWNrLXVucmVhY2hhYmxlIHh1bmcga2jhuq9jIG5oYXUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTY3CiBtc2dpZCAiY2Fubm90IHVzZSAtLWZpbHRlciB3aXRob3V0IC0tc3Rkb3V0IgogbXNnc3RyICJraMO0bmcgdGjhu4MgZMO5bmcgdMO5eSBjaOG7jW4gLS1maWx0ZXIgbcOgIGtow7RuZyBjw7MgLS1zdGRvdXQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ3NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNjI3CiBtc2dpZCAiRW51bWVyYXRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAixJDDoW5oIHPhu5EgY8OhYyDEkeG7kWkgdMaw4bujbmciCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ5NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNjU3CiAjLCBjLWZvcm1hdAotbXNnaWQgIlRvdGFsICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcmV1c2VkICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSIKLW1zZ3N0ciAiVOG7lW5nICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgZMO5bmcgbOG6oWkgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pIgorbXNnaWQgIiIKKyJUb3RhbCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHJldXNlZCAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHBhY2stIgorInJldXNlZCAlPFBSSXUzMj4iCittc2dzdHIgIiIKKyJU4buVbmcgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCBkw7luZyBs4bqhaSAlPFBSSXUzMj4gKGRlbHRhICU8UFJJdTMyPiksIHBhY2stIgorInJldXNlZCAlPFBSSXUzMj4iCiAKLSM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6NworIzogYnVpbHRpbi9wYWNrLXJlZnMuYzo4CiBtc2dpZCAiZ2l0IHBhY2stcmVmcyBbPG9wdGlvbnM+XSIKLW1zZ3N0ciAiZ2l0IHBhY2stcmVmcyBbPGPDoWMtdMO5eS1jaOG7jW4+XSIKK21zZ3N0ciAiZ2l0IHBhY2stcmVmcyBbPGPDoWMgdMO5eSBjaOG7jW4+XSIKIAotIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNQorIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNgogbXNnaWQgInBhY2sgZXZlcnl0aGluZyIKIG1zZ3N0ciAixJHDs25nIGfDs2kgbeG7jWkgdGjhu6kiCiAKLSM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTcKIG1zZ2lkICJwcnVuZSBsb29zZSByZWZzIChkZWZhdWx0KSIKIG1zZ3N0ciAicHJ1bmUgKGPhuq90IGPhu6V0KSBuaOG7r25nIHRoYW0gY2hp4bq/dSBi4buLIG3huqV0ICht4bq3YyDEkeG7i25oKSIKIApAQCAtMTQzMjIsNjkgKzE3NDcxLDY5IEBACiBtc2dpZCAiZ2l0IHBydW5lIFstbl0gWy12XSBbLS1wcm9ncmVzc10gWy0tZXhwaXJlIDx0aW1lPl0gWy0tXSBbPGhlYWQ+Li4uXSIKIG1zZ3N0ciAiZ2l0IHBydW5lIFstbl0gWy12XSBbLS1wcm9ncmVzc10gWy0tZXhwaXJlIDx0aOG7nWktZ2lhbj5dIFstLV0gWzxoZWFkPuKApl0iCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMDkKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMzEKIG1zZ2lkICJyZXBvcnQgcHJ1bmVkIG9iamVjdHMiCiBtc2dzdHIgImLDoW8gY8OhbyBjw6FjIMSR4buRaSB0xrDhu6NuZyDEkcOjIHBydW5lIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTEyCisjOiBidWlsdGluL3BydW5lLmM6MTM0CiBtc2dpZCAiZXhwaXJlIG9iamVjdHMgb2xkZXIgdGhhbiA8dGltZT4iCiBtc2dzdHIgImPDoWMgxJHhu5FpIHTGsOG7o25nIGjhur90IGjhuqFuIGPFqSBoxqFuIGtob+G6o25nIDx0aOG7nWkgZ2lhbj4iCiAKLSM6IGJ1aWx0aW4vcHJ1bmUuYzoxMTQKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMzYKIG1zZ2lkICJsaW1pdCB0cmF2ZXJzYWwgdG8gb2JqZWN0cyBvdXRzaWRlIHByb21pc29yIHBhY2tmaWxlcyIKIG1zZ3N0ciAiZ2nhu5tpIGjhuqFuIGdpYW8gxJHhur9uIGPDoWMgxJHhu5FpIHTGsOG7o25nIG7hurFtIG5nb8OgaSBjw6FjIHThuq1wIHRpbiBnw7NpIGjhu6lhIGjhurluIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTI5CisjOiBidWlsdGluL3BydW5lLmM6MTUwCiBtc2dpZCAiY2Fubm90IHBydW5lIGluIGEgcHJlY2lvdXMtb2JqZWN0cyByZXBvIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdOG7iWEgYuG7m3QgdHJvbmcgbeG7mXQga2hvIMSR4buRaV90xrDhu6NuZ192xKlfxJHhuqFpIgogCi0jOiBidWlsdGluL3B1bGwuYzo2MCBidWlsdGluL3B1bGwuYzo2MgorIzogYnVpbHRpbi9wdWxsLmM6NDUgYnVpbHRpbi9wdWxsLmM6NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICJHacOhIHRy4buLIGtow7RuZyBo4bujcCBs4buHICVzOiAlcyIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODIKKyM6IGJ1aWx0aW4vcHVsbC5jOjY3CiBtc2dpZCAiZ2l0IHB1bGwgWzxvcHRpb25zPl0gWzxyZXBvc2l0b3J5PiBbPHJlZnNwZWM+Li4uXV0iCi1tc2dzdHIgImdpdCBwdWxsIFs8Y8OhYy10w7l5LWNo4buNbj5dIFs8a2hvLWNo4bupYT4gWzxyZWZzcGVjPuKApl1dIgorbXNnc3RyICJnaXQgcHVsbCBbPGPDoWMgdMO5eSBjaOG7jW4+XSBbPGtoby1jaOG7qWE+IFs8cmVmc3BlYz7igKZdXSIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTMzCisjOiBidWlsdGluL3B1bGwuYzoxMjIKIG1zZ2lkICJjb250cm9sIGZvciByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyIKIG1zZ3N0ciAixJFp4buBdSBraGnhu4NuIHZp4buHYyBs4bqleSB24buBIMSR4buHIHF1eSBj4bunYSBjw6FjIG3DtC3EkXVuLWNvbiIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTM3CisjOiBidWlsdGluL3B1bGwuYzoxMjYKIG1zZ2lkICJPcHRpb25zIHJlbGF0ZWQgdG8gbWVyZ2luZyIKIG1zZ3N0ciAiQ8OhYyB0w7l5IGNo4buNbiBsacOqbiBxdWFuIMSR4bq/biBow7JhIHRy4buZbiIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTQwCisjOiBidWlsdGluL3B1bGwuYzoxMjkKIG1zZ2lkICJpbmNvcnBvcmF0ZSBjaGFuZ2VzIGJ5IHJlYmFzaW5nIHJhdGhlciB0aGFuIG1lcmdpbmciCiBtc2dzdHIgImPDoWMgdGhheSDEkeG7lWkgaOG7o3AgbmjhuqV0IGLhurFuZyBj4bqjaSB04buVIHRoYXkgdsOsIGjDsmEgdHLhu5luIgogCi0jOiBidWlsdGluL3B1bGwuYzoxNjcgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTQ3IGJ1aWx0aW4vcmV2ZXJ0LmM6MTIyCisjOiBidWlsdGluL3B1bGwuYzoxNTcgYnVpbHRpbi9yZWJhc2UuYzo0NzEgYnVpbHRpbi9yZXZlcnQuYzoxMjYKIG1zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQiCiBtc2dzdHIgImNobyBwaMOpcCBjaHV54buDbi10aeG6v3AtbmhhbmgiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE3NgorIzogYnVpbHRpbi9wdWxsLmM6MTY2CiBtc2dpZCAiYXV0b21hdGljYWxseSBzdGFzaC9zdGFzaCBwb3AgYmVmb3JlIGFuZCBhZnRlciByZWJhc2UiCiBtc2dzdHIgInThu7EgxJHhu5luZyBzdGFzaC9zdGFzaCBwb3AgdMaw4bubYyB2w6Agc2F1IHR1IGLhu5UgKHJlYmFzZSkiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjE5MgorIzogYnVpbHRpbi9wdWxsLmM6MTgyCiBtc2dpZCAiT3B0aW9ucyByZWxhdGVkIHRvIGZldGNoaW5nIgogbXNnc3RyICJDw6FjIHTDuXkgY2jhu41uIGxpw6puIHF1YW4gxJHhur9uIGzhu4duaCBs4bqleSB24buBIgogCi0jOiBidWlsdGluL3B1bGwuYzoyMDIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE5MgogbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBsb2NhbCBicmFuY2giCiBtc2dzdHIgIsOpcCBideG7mWMgZ2hpIMSRw6ggbMOqbiBuaMOhbmggbuG7mWkgYuG7mSIKIAotIzogYnVpbHRpbi9wdWxsLmM6MjEwCisjOiBidWlsdGluL3B1bGwuYzoyMDAKIG1zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBwdWxsZWQgaW4gcGFyYWxsZWwiCiBtc2dzdHIgInPhu5EgbMaw4bujbmcgbcO0LcSRdW4tY29uIMSRxrDhu6NjIMSR4bqpeSBsw6puIMSR4buTbmcgdGjhu51pIgogCi0jOiBidWlsdGluL3B1bGwuYzozMDUKKyM6IGJ1aWx0aW4vcHVsbC5jOjMwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciBwdWxsLmZmOiAlcyIKIG1zZ3N0ciAiR2nDoSB0cuG7iyBraMO0bmcgaOG7o3AgbOG7hyBjaG8gcHVsbC5mZjogJXMiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyMQorIzogYnVpbHRpbi9wdWxsLmM6NDI2CiBtc2dpZCAiIgogIlRoZXJlIGlzIG5vIGNhbmRpZGF0ZSBmb3IgcmViYXNpbmcgYWdhaW5zdCBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0ICIKICJmZXRjaGVkLiIKQEAgLTE0MzkyLDE0ICsxNzU0MSwxNCBAQAogIuG7niDEkcOieSBraMO0bmcgY8OzIOG7qW5nIGPhu60gbsOgbyDEkeG7gyBj4bqjaSB04buVIGzhuqFpIHRyb25nIHPhu5EgY8OhYyB0aGFtIGNoaeG6v3UgbcOgIGLhuqFuIHbhu6thICIKICJs4bqleSB24buBLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDIzCisjOiBidWlsdGluL3B1bGwuYzo0MjgKIG1zZ2lkICIiCiAiVGhlcmUgYXJlIG5vIGNhbmRpZGF0ZXMgZm9yIG1lcmdpbmcgYW1vbmcgdGhlIHJlZnMgdGhhdCB5b3UganVzdCBmZXRjaGVkLiIKIG1zZ3N0ciAiIgogIuG7niDEkcOieSBraMO0bmcgY8OzIOG7qW5nIGPhu60gbsOgbyDEkeG7gyBow7JhIHRy4buZbiB0cm9uZyBz4buRIGPDoWMgdGhhbSBjaGnhur91IG3DoCBi4bqhbiB24burYSBs4bqleSAiCiAiduG7gS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyNAorIzogYnVpbHRpbi9wdWxsLmM6NDI5CiBtc2dpZCAiIgogIkdlbmVyYWxseSB0aGlzIG1lYW5zIHRoYXQgeW91IHByb3ZpZGVkIGEgd2lsZGNhcmQgcmVmc3BlYyB3aGljaCBoYWQgbm9cbiIKICJtYXRjaGVzIG9uIHRoZSByZW1vdGUgZW5kLiIKQEAgLTE0NDA4LDcgKzE3NTU3LDcgQEAKICJ04buxXG4iCiAixJHhuqFpIGRp4buHbiBtw6AgbsOzIGzhuqFpIGtow7RuZyBraOG7m3AgdHLDqm4gxJFp4buDbSBjdeG7kWkgbcOheSBwaOG7pWMgduG7pS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyNworIzogYnVpbHRpbi9wdWxsLmM6NDMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXNrZWQgdG8gcHVsbCBmcm9tIHRoZSByZW1vdGUgJyVzJywgYnV0IGRpZCBub3Qgc3BlY2lmeVxuIgpAQCAtMTQ0MjAsNDMgKzE3NTY5LDQzIEBACiAidGhlbyBt4bq3YyDEkeG7i25oIGNobyBuaMOhbmggaGnhu4duIHThuqFpIGPhu6dhIGLhuqFuLCBi4bqhbiBwaOG6o2kgY2jhu4kgxJHhu4tuaFxuIgogIm3hu5l0IG5ow6FuaCB0csOqbiBkw7JuZyBs4buHbmguIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzIgYnVpbHRpbi9yZWJhc2UuYzo3NjEgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3MworIzogYnVpbHRpbi9wdWxsLmM6NDM3IGJ1aWx0aW4vcmViYXNlLmM6MTQwOSBnaXQtcGFyc2UtcmVtb3RlLnNoOjczCiBtc2dpZCAiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLiIKIG1zZ3N0ciAiSGnhu4duIHThuqFpIGLhuqFuIGNo4bqzbmcg4bufIG5ow6FuaCBuw6BvIGPhuqMuIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzQgYnVpbHRpbi9wdWxsLmM6NDQ5IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzkKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NTQgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3OQogbXNnaWQgIlBsZWFzZSBzcGVjaWZ5IHdoaWNoIGJyYW5jaCB5b3Ugd2FudCB0byByZWJhc2UgYWdhaW5zdC4iCiBtc2dzdHIgIlZ1aSBsw7JuZyBjaOG7iSDEkeG7i25oIG5ow6FuaCBuw6BvIGLhuqFuIG114buRbiBj4bqjaSB04buVIGzhuqFpLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM2IGJ1aWx0aW4vcHVsbC5jOjQ1MSBnaXQtcGFyc2UtcmVtb3RlLnNoOjgyCisjOiBidWlsdGluL3B1bGwuYzo0NDEgYnVpbHRpbi9wdWxsLmM6NDU2IGdpdC1wYXJzZS1yZW1vdGUuc2g6ODIKIG1zZ2lkICJQbGVhc2Ugc3BlY2lmeSB3aGljaCBicmFuY2ggeW91IHdhbnQgdG8gbWVyZ2Ugd2l0aC4iCiBtc2dzdHIgIlZ1aSBsw7JuZyBjaOG7iSDEkeG7i25oIG5ow6FuaCBuw6BvIGLhuqFuIG114buRbiBow7JhIHRy4buZbiB2w6BvLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM3IGJ1aWx0aW4vcHVsbC5jOjQ1MgorIzogYnVpbHRpbi9wdWxsLmM6NDQyIGJ1aWx0aW4vcHVsbC5jOjQ1NwogbXNnaWQgIlNlZSBnaXQtcHVsbCgxKSBmb3IgZGV0YWlscy4iCiBtc2dzdHIgIlhlbSBnaXQtcHVsbCgxKSDEkeG7gyBiaeG6v3QgdGjDqm0gY2hpIHRp4bq/dC4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NDUgYnVpbHRpbi9wdWxsLmM6NDU0Ci0jOiBidWlsdGluL3JlYmFzZS5jOjc2NyBnaXQtcGFyc2UtcmVtb3RlLnNoOjY0CisjOiBidWlsdGluL3B1bGwuYzo0NDQgYnVpbHRpbi9wdWxsLmM6NDUwIGJ1aWx0aW4vcHVsbC5jOjQ1OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE1IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjQKIG1zZ2lkICI8cmVtb3RlPiIKIG1zZ3N0ciAiPG3DoXkgY2jhu6c+IgogCi0jOiBidWlsdGluL3B1bGwuYzo0MzkgYnVpbHRpbi9wdWxsLmM6NDU0IGJ1aWx0aW4vcHVsbC5jOjQ1OQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTU2IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjUKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0NCBidWlsdGluL3B1bGwuYzo0NTkgYnVpbHRpbi9wdWxsLmM6NDY0CisjOiBnaXQtcGFyc2UtcmVtb3RlLnNoOjY1CiBtc2dpZCAiPGJyYW5jaD4iCiBtc2dzdHIgIjxuaMOhbmg+IgogCi0jOiBidWlsdGluL3B1bGwuYzo0NDcgYnVpbHRpbi9yZWJhc2UuYzo3NTkgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3NQorIzogYnVpbHRpbi9wdWxsLmM6NDUyIGJ1aWx0aW4vcmViYXNlLmM6MTQwNyBnaXQtcGFyc2UtcmVtb3RlLnNoOjc1CiBtc2dpZCAiVGhlcmUgaXMgbm8gdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoZSBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgIuG7niDEkcOieSBraMO0bmcgY8OzIHRow7RuZyB0aW4gdGhlbyBkw7VpIGNobyBuaMOhbmggaGnhu4duIGjDoG5oLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDU2IGdpdC1wYXJzZS1yZW1vdGUuc2g6OTUKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ2MSBnaXQtcGFyc2UtcmVtb3RlLnNoOjk1CiBtc2dpZCAiIgogIklmIHlvdSB3aXNoIHRvIHNldCB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhpcyBicmFuY2ggeW91IGNhbiBkbyBzbyB3aXRoOiIKIG1zZ3N0ciAiIgogIk7hur91IGLhuqFuIG114buRbiB0aGVvIGTDtWkgdGjDtG5nIHRpbiBjaG8gbmjDoW5oIG7DoHkgYuG6oW4gY8OzIHRo4buDIHRo4buxYyBoaeG7h24gYuG6sW5nIGzhu4duaDoiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ2MQorIzogYnVpbHRpbi9wdWxsLmM6NDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGNvbmZpZ3VyYXRpb24gc3BlY2lmaWVzIHRvIG1lcmdlIHdpdGggdGhlIHJlZiAnJXMnXG4iCkBAIC0xNDQ2NSwzNCArMTc2MTQsMzQgQEAKICJDw6FjIMSR4bq3YyB04bqjIGPhuqV1IGjDrG5oIGPhu6dhIGLhuqFuIMSR4buDIGjDsmEgdHLhu5luIHbhu5tpIHRoYW0gY2hp4bq/dSDigJwlc+KAnVxuIgogInThu6sgbcOheSBk4buLY2ggduG7pSwgbmjGsG5nIGtow7RuZyBjw7MgbmjDoW5oIG7DoG8gbmjGsCB0aOG6vyDEkcaw4bujYyBs4bqleSB24buBLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NTY1CisjOiBidWlsdGluL3B1bGwuYzo1NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBjb21taXQgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyB0cnV5IGPhuq1wIGzhuqduIGNodXnhu4NuIGdpYW8g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg0MworIzogYnVpbHRpbi9wdWxsLmM6ODU3CiBtc2dpZCAiaWdub3JpbmcgLS12ZXJpZnktc2lnbmF0dXJlcyBmb3IgcmViYXNlIgogbXNnc3RyICJi4buPIHF1YSAtLXZlcmlmeS1zaWduYXR1cmVzIGtoaSByZWJhc2UiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg5MQorIzogYnVpbHRpbi9wdWxsLmM6OTEyCiBtc2dpZCAiLS1bbm8tXWF1dG9zdGFzaCBvcHRpb24gaXMgb25seSB2YWxpZCB3aXRoIC0tcmViYXNlLiIKIG1zZ3N0ciAidMO5eSBjaOG7jW4gLS1bbm8tXWF1dG9zdGFzaCBjaOG7iSBo4bujcCBs4buHIGtoaSBkw7luZyB24bubaSAtLXJlYmFzZS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjg5OQorIzogYnVpbHRpbi9wdWxsLmM6OTIwCiBtc2dpZCAiVXBkYXRpbmcgYW4gdW5ib3JuIGJyYW5jaCB3aXRoIGNoYW5nZXMgYWRkZWQgdG8gdGhlIGluZGV4LiIKIG1zZ3N0ciAiIgogIsSQYW5nIGPhuq1wIG5o4bqtdCBt4buZdCBuaMOhbmggY2jGsGEgxJHGsOG7o2Mgc2luaCByYSB24bubaSBjw6FjIHRoYXkgxJHhu5VpIMSRxrDhu6NjIHRow6ptIHbDoG8gIgogImLhuqNuZyBt4bulYyBs4bulYy4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjkwMgorIzogYnVpbHRpbi9wdWxsLmM6OTI0CiBtc2dpZCAicHVsbCB3aXRoIHJlYmFzZSIKIG1zZ3N0ciAicHVsbCB24bubaSByZWJhc2UiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjkwMworIzogYnVpbHRpbi9wdWxsLmM6OTI1CiBtc2dpZCAicGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKIG1zZ3N0ciAieGluIGjDo3kgY2h1eeG7g24gZ2lhbyBob+G6t2MgdOG6oW0gY+G6pXQgKHN0YXNoKSBjaMO6bmcuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MjgKKyM6IGJ1aWx0aW4vcHVsbC5jOjk1MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZmV0Y2ggdXBkYXRlZCB0aGUgY3VycmVudCBicmFuY2ggaGVhZC5cbiIKQEAgLTE0NTAzLDcgKzE3NjUyLDcgQEAKICLEkWFuZyBjaHV54buDbi10aeG6v3AtbmhhbmggY8OieSBsw6BtIHZp4buHYyBj4bunYSBi4bqhbiB04burXG4iCiAibOG6p24gY2h1eeG7g24gZ2lhb3QgJXMuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MzQKKyM6IGJ1aWx0aW4vcHVsbC5jOjk1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IGZhc3QtZm9yd2FyZCB5b3VyIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTE0NTIxLDMyICsxNzY3MCwzMiBAQAogIiQgZ2l0IHJlc2V0IC0taGFyZFxuIgogIsSR4buDIGtow7RpIHBo4bulYyBs4bqhaS4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjk0OQorIzogYnVpbHRpbi9wdWxsLmM6OTcxCiBtc2dpZCAiQ2Fubm90IG1lcmdlIG11bHRpcGxlIGJyYW5jaGVzIGludG8gZW1wdHkgaGVhZC4iCiBtc2dzdHIgIktow7RuZyB0aOG7gyBow7JhIHRy4buZbiBuaGnhu4F1IG5ow6FuaCB2w6BvIHRyb25nIG3hu5l0IGhlYWQgdHLhu5FuZyBy4buXbmcuIgogCi0jOiBidWlsdGluL3B1bGwuYzo5NTMKKyM6IGJ1aWx0aW4vcHVsbC5jOjk3NQogbXNnaWQgIkNhbm5vdCByZWJhc2Ugb250byBtdWx0aXBsZSBicmFuY2hlcy4iCiBtc2dzdHIgIktow7RuZyB0aOG7gyB0aOG7sWMgaGnhu4duIGzhu4duaCByZWJhc2UgKGPhuqNpIHThu5UpIHRyw6puIG5oaeG7gXUgbmjDoW5oLiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTYwCisjOiBidWlsdGluL3B1bGwuYzo5ODIKIG1zZ2lkICJjYW5ub3QgcmViYXNlIHdpdGggbG9jYWxseSByZWNvcmRlZCBzdWJtb2R1bGUgbW9kaWZpY2F0aW9ucyIKIG1zZ3N0ciAiIgogImtow7RuZyB0aOG7gyBj4bqjaSB04buVIHbhu5tpIGPDoWMgdGhheSDEkeG7lWkgbcO0LcSRdW4tY29uIMSRxrDhu6NjIGdoaSBs4bqhaSBt4buZdCBjw6FjaCBj4bulYyBi4buZIgogCiAjOiBidWlsdGluL3B1c2guYzoxOQogbXNnaWQgImdpdCBwdXNoIFs8b3B0aW9ucz5dIFs8cmVwb3NpdG9yeT4gWzxyZWZzcGVjPi4uLl1dIgotbXNnc3RyICJnaXQgcHVzaCBbPGPDoWMtdMO5eS1jaOG7jW4+XSBbPGtoby1jaOG7qWE+IFs8cmVmc3BlYz7igKZdXSIKK21zZ3N0ciAiZ2l0IHB1c2ggWzxjw6FjIHTDuXkgY2jhu41uPl0gWzxraG8tY2jhu6lhPiBbPHJlZnNwZWM+4oCmXV0iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjExMQorIzogYnVpbHRpbi9wdXNoLmM6MTEyCiBtc2dpZCAidGFnIHNob3J0aGFuZCB3aXRob3V0IDx0YWc+IgogbXNnc3RyICJkw7luZyB04buRYyBrw70gdGjhursga2jDtG5nIGPDsyA8dGjhurs+IgogCi0jOiBidWlsdGluL3B1c2guYzoxMjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjEyMgogbXNnaWQgIi0tZGVsZXRlIG9ubHkgYWNjZXB0cyBwbGFpbiB0YXJnZXQgcmVmIG5hbWVzIgogbXNnc3RyICItLWRlbGV0ZSBjaOG7iSBjaOG6pXAgbmjhuq1uIGPDoWMgdMOqbiB0aGFtIGNoaeG6v3UgZOG6oW5nIHRoxrDhu51uZyIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTY1CisjOiBidWlsdGluL3B1c2guYzoxNjgKIG1zZ2lkICIiCiAiXG4iCiAiVG8gY2hvb3NlIGVpdGhlciBvcHRpb24gcGVybWFuZW50bHksIHNlZSBwdXNoLmRlZmF1bHQgaW4gJ2dpdCBoZWxwIGNvbmZpZycuIgpAQCAtMTQ1NTUsNyArMTc3MDQsNyBAQAogIsSQ4buDIGNo4buNbiBt4buXaSB0w7l5IGNo4buNbiBt4buZdCBjw6FjaCBj4buRIMSR4buLbmgsIHhlbSBwdXNoLmRlZmF1bHQgdHJvbmcg4oCcZ2l0IGhlbHAgIgogImNvbmZpZ+KAnS4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE2OAorIzogYnVpbHRpbi9wdXNoLmM6MTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgdXBzdHJlYW0gYnJhbmNoIG9mIHlvdXIgY3VycmVudCBicmFuY2ggZG9lcyBub3QgbWF0Y2hcbiIKQEAgLTE0NTgwLDcgKzE3NzI5LDcgQEAKICIgICAgZ2l0IHB1c2ggJXMgSEVBRFxuIgogIiVzIgogCi0jOiBidWlsdGluL3B1c2guYzoxODMKKyM6IGJ1aWx0aW4vcHVzaC5jOjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLlxuIgpAQCAtMTQ1OTUsNyArMTc3NDQsNyBAQAogIlxuIgogIiAgICBnaXQgcHVzaCAlcyBIRUFEOjx0w6puLWPhu6dhLW5ow6FuaC1tw6F5LWNo4bunPlxuIgogCi0jOiBidWlsdGluL3B1c2guYzoxOTcKKyM6IGJ1aWx0aW4vcHVzaC5jOjIwMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGN1cnJlbnQgYnJhbmNoICVzIGhhcyBubyB1cHN0cmVhbSBicmFuY2guXG4iCkBAIC0xNDYwOSwxMiArMTc3NTgsMTIgQEAKICJcbiIKICIgICAgZ2l0IHB1c2ggLS1zZXQtdXBzdHJlYW0gJXMgJXNcbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjA1CisjOiBidWlsdGluL3B1c2guYzoyMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIGN1cnJlbnQgYnJhbmNoICVzIGhhcyBtdWx0aXBsZSB1cHN0cmVhbSBicmFuY2hlcywgcmVmdXNpbmcgdG8gcHVzaC4iCiBtc2dzdHIgIk5ow6FuaCBoaeG7h24gdOG6oWkgJXMgY8OzIG5oaeG7gXUgbmjDoW5oIHRoxrDhu6NuZyBuZ3Xhu5NuLCB04burIGNo4buRaSBwdXNoLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjA4CisjOiBidWlsdGluL3B1c2guYzoyMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBhcmUgcHVzaGluZyB0byByZW1vdGUgJyVzJywgd2hpY2ggaXMgbm90IHRoZSB1cHN0cmVhbSBvZlxuIgpAQCAtMTQ2MjYsMTQgKzE3Nzc1LDE0IEBACiAibmjDoW5oIGhp4buHbiB04bqhaSDigJwlc+KAnSBj4bunYSBi4bqhbiwgbcOgIGtow7RuZyBiw6FvIGNobyB0w7RpIGJp4bq/dCBsw6AgY8OhaSBnw6wgxJHGsOG7o2MgcHVzaFxuIgogIsSR4buDIGPhuq1wIG5o4bqtdCBuaMOhbmggbcOheSBjaOG7pyBuw6BvLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjY3CisjOiBidWlsdGluL3B1c2guYzoyNzAKIG1zZ2lkICIiCiAiWW91IGRpZG4ndCBzcGVjaWZ5IGFueSByZWZzcGVjcyB0byBwdXNoLCBhbmQgcHVzaC5kZWZhdWx0IGlzIFwibm90aGluZ1wiLiIKIG1zZ3N0ciAiIgogIkLhuqFuIMSRw6Mga2jDtG5nIGNo4buJIHJhIG3hu5l0IHJlZnNwZWNzIG7DoG8gxJHhu4MgxJHhuql5IGzDqm4sIHbDoCBwdXNoLmRlZmF1bHQgbMOgIFwia2jDtG5nICIKICJsw6AgZ8OsIGPhuqNcIi4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI3NAorIzogYnVpbHRpbi9wdXNoLmM6Mjc3CiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSB0aXAgb2YgeW91ciBjdXJyZW50IGJyYW5jaCBpcyBiZWhpbmRcbiIKICJpdHMgcmVtb3RlIGNvdW50ZXJwYXJ0LiBJbnRlZ3JhdGUgdGhlIHJlbW90ZSBjaGFuZ2VzIChlLmcuXG4iCkBAIC0xNDY0Niw3ICsxNzc5NSw3IEBACiAiWGVtIOKAnE5vdGUgYWJvdXQgZmFzdC1mb3J3YXJkc+KAnSB0cm9uZyDigJxnaXQgcHVzaCAtLWhlbHDigJ0gxJHhu4MgY8OzIHRow7RuZyB0aW4gY2hpICIKICJ0aeG6v3QuIgogCi0jOiBidWlsdGluL3B1c2guYzoyODAKKyM6IGJ1aWx0aW4vcHVzaC5jOjI4MwogbXNnaWQgIiIKICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSBhIHB1c2hlZCBicmFuY2ggdGlwIGlzIGJlaGluZCBpdHMgcmVtb3RlXG4iCiAiY291bnRlcnBhcnQuIENoZWNrIG91dCB0aGlzIGJyYW5jaCBhbmQgaW50ZWdyYXRlIHRoZSByZW1vdGUgY2hhbmdlc1xuIgpAQCAtMTQ2NjAsNyArMTc4MDksNyBAQAogIlhlbSDigJxOb3RlIGFib3V0IGZhc3QtZm9yd2FyZHPigJ0gdHJvbmcg4oCcZ2l0IHB1c2ggLS1oZWxw4oCdIMSR4buDIGPDsyB0aMO0bmcgdGluIGNoaSAiCiAidGnhur90LiIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mjg2CisjOiBidWlsdGluL3B1c2guYzoyODkKIG1zZ2lkICIiCiAiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHJlbW90ZSBjb250YWlucyB3b3JrIHRoYXQgeW91IGRvXG4iCiAibm90IGhhdmUgbG9jYWxseS4gVGhpcyBpcyB1c3VhbGx5IGNhdXNlZCBieSBhbm90aGVyIHJlcG9zaXRvcnkgcHVzaGluZ1xuIgpAQCAtMTQ2NzUsMTEgKzE3ODI0LDExIEBACiAiWGVtIOKAnE5vdGUgYWJvdXQgZmFzdC1mb3J3YXJkc+KAnSB0cm9uZyDigJxnaXQgcHVzaCAtLWhlbHDigJ0gxJHhu4MgY8OzIHRow7RuZyB0aW4gY2hpICIKICJ0aeG6v3QuIgogCi0jOiBidWlsdGluL3B1c2guYzoyOTMKKyM6IGJ1aWx0aW4vcHVzaC5jOjI5NgogbXNnaWQgIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSB0YWcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIHJlbW90ZS4iCiBtc2dzdHIgIlZp4buHYyBj4bqtcCBuaOG6rXQgYuG7iyB04burIGNo4buRaSBi4bufaSB2w6wgdGjhursgxJHDoyBz4bq1biBjw7MgdOG7qyB0csaw4bubYyB0csOqbiBtw6F5IGNo4bunLiIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mjk2CisjOiBidWlsdGluL3B1c2guYzoyOTkKIG1zZ2lkICIiCiAiWW91IGNhbm5vdCB1cGRhdGUgYSByZW1vdGUgcmVmIHRoYXQgcG9pbnRzIGF0IGEgbm9uLWNvbW1pdCBvYmplY3QsXG4iCiAib3IgdXBkYXRlIGEgcmVtb3RlIHJlZiB0byBtYWtlIGl0IHBvaW50IGF0IGEgbm9uLWNvbW1pdCBvYmplY3QsXG4iCkBAIC0xNDY5MSwyMiArMTc4NDAsOTkgQEAKICLEkeG7kWkgdMaw4bujbmdcbiIKICJraMO0bmcgcGjhuqNpIGNodXnhu4NuIGdpYW8sIG3DoCBraMO0bmcgc+G7rSBk4bulbmcgdMO5eSBjaOG7jW4g4oCcLS1mb3JjZeKAnS5cbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MzU3CisjOiBidWlsdGluL3B1c2guYzozNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHVzaGluZyB0byAlc1xuIgogbXNnc3RyICLEkGFuZyDEkeG6qXkgbMOqbiAlc1xuIgogCi0jOiBidWlsdGluL3B1c2guYzozNjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjM2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcHVzaCBzb21lIHJlZnMgdG8gJyVzJyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMSR4bqpeSB04bubaSBt4buZdCBz4buRIHRoYW0gY2hp4bq/dSDEkeG6v24g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM5NQorIzogYnVpbHRpbi9wdXNoLmM6NTQyCittc2dpZCAicmVwb3NpdG9yeSIKK21zZ3N0ciAia2hvIgorCisjOiBidWlsdGluL3B1c2guYzo1NDMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjQKK21zZ2lkICJwdXNoIGFsbCByZWZzIgorbXNnc3RyICLEkeG6qXkgdOG6pXQgY+G6oyBjw6FjIHRoYW0gY2hp4bq/dSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ0IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY2Cittc2dpZCAibWlycm9yIGFsbCByZWZzIgorbXNnc3RyICJtaXJyb3IgdOG6pXQgY+G6oyBjw6FjIHRoYW0gY2hp4bq/dSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ2Cittc2dpZCAiZGVsZXRlIHJlZnMiCittc2dzdHIgInjDs2EgY8OhYyB0aGFtIGNoaeG6v3UiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0NworbXNnaWQgInB1c2ggdGFncyAoY2FuJ3QgYmUgdXNlZCB3aXRoIC0tYWxsIG9yIC0tbWlycm9yKSIKK21zZ3N0ciAixJHhuql5IGPDoWMgdGjhursgKGtow7RuZyBkw7luZyBjw7luZyB24bubaSAtLWFsbCBoYXkgLS1taXJyb3IpIgorCisjOiBidWlsdGluL3B1c2guYzo1NTAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjcKK21zZ2lkICJmb3JjZSB1cGRhdGVzIgorbXNnc3RyICLDqXAgYnXhu5ljIGPhuq1wIG5o4bqtdCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgxCittc2dpZCAiPHJlZm5hbWU+OjxleHBlY3Q+IgorbXNnc3RyICI8dMOqbi10aGFtLWNoaeG6v3U+Ojxj4bqnbj4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1MyBidWlsdGluL3NlbmQtcGFjay5jOjE4MgorbXNnaWQgInJlcXVpcmUgb2xkIHZhbHVlIG9mIHJlZiB0byBiZSBhdCB0aGlzIHZhbHVlIgorbXNnc3RyICJ5w6p1IGPhuqd1IGdpw6EtdHLhu4sgY8WpIGPhu6dhIHRoYW0gY2hp4bq/dSB0aMOsIGzDoCBnacOhLXRy4buLIG7DoHkiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1NgorbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIHB1c2hpbmcgb2Ygc3VibW9kdWxlcyIKK21zZ3N0ciAixJFp4buBdSBraGnhu4NuIHZp4buHYyDEkeG6qXkgbMOqbiAocHVzaCkgxJHhu4cgcXVpIGPhu6dhIG3DtC3EkXVuLWNvbiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU4IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc1Cittc2dpZCAidXNlIHRoaW4gcGFjayIKK21zZ3N0ciAidOG6oW8gZ8OzaSBuaOG6uSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU5IGJ1aWx0aW4vcHVzaC5jOjU2MCBidWlsdGluL3NlbmQtcGFjay5jOjE2MQorIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNjIKK21zZ2lkICJyZWNlaXZlIHBhY2sgcHJvZ3JhbSIKK21zZ3N0ciAiY2jGsMahbmcgdHLDrG5oIG5o4bqtbiBnw7NpIgorCisjOiBidWlsdGluL3B1c2guYzo1NjEKK21zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL3N0YXR1cyIKK21zZ3N0ciAixJHhurd0IHRoxrDhu6NuZyBuZ3Xhu5NuIGNobyBnaXQgcHVsbC9zdGF0dXMiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2NAorbXNnaWQgInBydW5lIGxvY2FsbHkgcmVtb3ZlZCByZWZzIgorbXNnc3RyICJ4w6luIHThu4lhIG5o4buvbmcgdGhhbSBjaGnhur91IGLhu4sgZ+G7oSBi4buPIgorCisjOiBidWlsdGluL3B1c2guYzo1NjYKK21zZ2lkICJieXBhc3MgcHJlLXB1c2ggaG9vayIKK21zZ3N0ciAidsOybmcgcXVhIG3Ds2MgdGnhu4FuLcSR4bqpeSAocHJlLXB1c2gpIgorCisjOiBidWlsdGluL3B1c2guYzo1NjcKK21zZ2lkICJwdXNoIG1pc3NpbmcgYnV0IHJlbGV2YW50IHRhZ3MiCittc2dzdHIgInB1c2ggcGjhuqduIGLhu4sgdGhp4bq/dSBuaMawbmcgY8OhYyB0aOG6uyBs4bqhaSB0aMOtY2ggaOG7o3AiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3MCBidWlsdGluL3NlbmQtcGFjay5jOjE2OQorbXNnaWQgIkdQRyBzaWduIHRoZSBwdXNoIgorbXNnc3RyICJrw70gbOG6p24gxJHhuql5IGTDuW5nIEdQRyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc2Cittc2dpZCAicmVxdWVzdCBhdG9taWMgdHJhbnNhY3Rpb24gb24gcmVtb3RlIHNpZGUiCittc2dzdHIgInnDqnUgY+G6p3UgZ2lhbyBk4buLY2ggaOG6oXQgbmjDom4gYsOqbiBwaMOtYSBtw6F5IGNo4bunIgorCisjOiBidWlsdGluL3B1c2guYzo1OTAKK21zZ2lkICItLWRlbGV0ZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1taXJyb3IgYW5kIC0tdGFncyIKK21zZ3N0ciAiLS1kZWxldGUgbMOgIHh1bmcga2jhuq9jIHbhu5tpIGPDoWMgdMO5eSBjaOG7jW4gLS1hbGwsIC0tbWlycm9yIHbDoCAtLXRhZ3MiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU5MgorbXNnaWQgIi0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSB3aXRob3V0IGFueSByZWZzIgorbXNnc3RyICItLWRlbGV0ZSBraMO0bmcgaOG7o3AgbMO9IG7hur91IGtow7RuZyBjw7MgYuG6pXQga+G7syB0aGFtIGNoaeG6v3UgbsOgbyIKKworIzogYnVpbHRpbi9wdXNoLmM6NjEyCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCByZXBvc2l0b3J5ICclcyciCiBtc2dzdHIgInJlcG9zaXRvcnkgKGtobykgc2FpIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3B1c2guYzozOTYKKyM6IGJ1aWx0aW4vcHVzaC5jOjYxMwogbXNnaWQgIiIKICJObyBjb25maWd1cmVkIHB1c2ggZGVzdGluYXRpb24uXG4iCiAiRWl0aGVyIHNwZWNpZnkgdGhlIFVSTCBmcm9tIHRoZSBjb21tYW5kLWxpbmUgb3IgY29uZmlndXJlIGEgcmVtb3RlICIKQEAgLTE0NzI3LDE0MiArMTc5NTMsNzMgQEAKICJcbiIKICIgICAgZ2l0IHB1c2ggPHTDqm4+XG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjU1MQotbXNnaWQgInJlcG9zaXRvcnkiCi1tc2dzdHIgImtobyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY0Ci1tc2dpZCAicHVzaCBhbGwgcmVmcyIKLW1zZ3N0ciAixJHhuql5IHThuqV0IGPhuqMgY8OhYyB0aGFtIGNoaeG6v3UiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1MyBidWlsdGluL3NlbmQtcGFjay5jOjE2NgotbXNnaWQgIm1pcnJvciBhbGwgcmVmcyIKLW1zZ3N0ciAibWlycm9yIHThuqV0IGPhuqMgY8OhYyB0aGFtIGNoaeG6v3UiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1NQotbXNnaWQgImRlbGV0ZSByZWZzIgotbXNnc3RyICJ4w7NhIGPDoWMgdGhhbSBjaGnhur91IgotCi0jOiBidWlsdGluL3B1c2guYzo1NTYKLW1zZ2lkICJwdXNoIHRhZ3MgKGNhbid0IGJlIHVzZWQgd2l0aCAtLWFsbCBvciAtLW1pcnJvcikiCi1tc2dzdHIgIsSR4bqpeSBjw6FjIHRo4bq7IChraMO0bmcgZMO5bmcgY8O5bmcgduG7m2kgLS1hbGwgaGF5IC0tbWlycm9yKSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTU5IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY3Ci1tc2dpZCAiZm9yY2UgdXBkYXRlcyIKLW1zZ3N0ciAiw6lwIGJ14buZYyBj4bqtcCBuaOG6rXQiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2MSBidWlsdGluL3NlbmQtcGFjay5jOjE4MQotbXNnaWQgIjxyZWZuYW1lPjo8ZXhwZWN0PiIKLW1zZ3N0ciAiPHTDqm4tdGhhbS1jaGnhur91Pjo8Y+G6p24+IgotCi0jOiBidWlsdGluL3B1c2guYzo1NjIgYnVpbHRpbi9zZW5kLXBhY2suYzoxODIKLW1zZ2lkICJyZXF1aXJlIG9sZCB2YWx1ZSBvZiByZWYgdG8gYmUgYXQgdGhpcyB2YWx1ZSIKLW1zZ3N0ciAiecOqdSBj4bqndSBnacOhLXRy4buLIGPFqSBj4bunYSB0aGFtIGNoaeG6v3UgdGjDrCBsw6AgZ2nDoS10cuG7iyBuw6B5IgotCi0jOiBidWlsdGluL3B1c2guYzo1NjUKLW1zZ2lkICJjb250cm9sIHJlY3Vyc2l2ZSBwdXNoaW5nIG9mIHN1Ym1vZHVsZXMiCi1tc2dzdHIgIsSRaeG7gXUga2hp4buDbiB2aeG7h2MgxJHhuql5IGzDqm4gKHB1c2gpIMSR4buHIHF1aSBj4bunYSBtw7QtxJF1bi1jb24iCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2NyBidWlsdGluL3NlbmQtcGFjay5jOjE3NQotbXNnaWQgInVzZSB0aGluIHBhY2siCi1tc2dzdHIgInThuqFvIGfDs2kgbmjhurkiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2OCBidWlsdGluL3B1c2guYzo1NjkgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjEKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYyCi1tc2dpZCAicmVjZWl2ZSBwYWNrIHByb2dyYW0iCi1tc2dzdHIgImNoxrDGoW5nIHRyw6xuaCBuaOG6rW4gZ8OzaSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTcwCi1tc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9zdGF0dXMiCi1tc2dzdHIgIsSR4bq3dCB0aMaw4bujbmcgbmd14buTbiBjaG8gZ2l0IHB1bGwvc3RhdHVzIgotCi0jOiBidWlsdGluL3B1c2guYzo1NzMKLW1zZ2lkICJwcnVuZSBsb2NhbGx5IHJlbW92ZWQgcmVmcyIKLW1zZ3N0ciAieMOpbiB04buJYSBuaOG7r25nIHRoYW0gY2hp4bq/dSBi4buLIGfhu6EgYuG7jyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTc1Ci1tc2dpZCAiYnlwYXNzIHByZS1wdXNoIGhvb2siCi1tc2dzdHIgInbDsm5nIHF1YSBtw7NjIHRp4buBbi3EkeG6qXkgKHByZS1wdXNoKSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTc2Ci1tc2dpZCAicHVzaCBtaXNzaW5nIGJ1dCByZWxldmFudCB0YWdzIgotbXNnc3RyICJwdXNoIHBo4bqnbiBi4buLIHRoaeG6v3UgbmjGsG5nIGPDoWMgdGjhursgbOG6oWkgdGjDrWNoIGjhu6NwIgotCi0jOiBidWlsdGluL3B1c2guYzo1NzkgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjkKLW1zZ2lkICJHUEcgc2lnbiB0aGUgcHVzaCIKLW1zZ3N0ciAia8O9IGzhuqduIMSR4bqpeSBkw7luZyBHUEciCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU4MSBidWlsdGluL3NlbmQtcGFjay5jOjE3NgotbXNnaWQgInJlcXVlc3QgYXRvbWljIHRyYW5zYWN0aW9uIG9uIHJlbW90ZSBzaWRlIgotbXNnc3RyICJ5w6p1IGPhuqd1IGdpYW8gZOG7i2NoIGjhuqF0IG5ow6JuIGLDqm4gcGjDrWEgbcOheSBjaOG7pyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTk5Ci1tc2dpZCAiLS1kZWxldGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tbWlycm9yIGFuZCAtLXRhZ3MiCi1tc2dzdHIgIi0tZGVsZXRlIGzDoCB4dW5nIGto4bqvYyB24bubaSBjw6FjIHTDuXkgY2jhu41uIC0tYWxsLCAtLW1pcnJvciB2w6AgLS10YWdzIgotCi0jOiBidWlsdGluL3B1c2guYzo2MDEKLW1zZ2lkICItLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2Ugd2l0aG91dCBhbnkgcmVmcyIKLW1zZ3N0ciAiLS1kZWxldGUga2jDtG5nIGjhu6NwIGzDvSBu4bq/dSBraMO0bmcgY8OzIGLhuqV0IGvhu7MgdGhhbSBjaGnhur91IG7DoG8iCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjYwNAorIzogYnVpbHRpbi9wdXNoLmM6NjI4CiBtc2dpZCAiLS1hbGwgYW5kIC0tdGFncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWFsbCB2w6AgLS10YWdzIHh1bmcga2jhuq9jIG5oYXUiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYwNgorIzogYnVpbHRpbi9wdXNoLmM6NjMwCiBtc2dpZCAiLS1hbGwgY2FuJ3QgYmUgY29tYmluZWQgd2l0aCByZWZzcGVjcyIKIG1zZ3N0ciAiLS1hbGwga2jDtG5nIHRo4buDIMSRxrDhu6NjIHThu5UgaOG7o3AgY8O5bmcgduG7m2kgxJHhurdjIHThuqMgxJHGsOG7nW5nIGThuqtuIgogCi0jOiBidWlsdGluL3B1c2guYzo2MTAKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzNAogbXNnaWQgIi0tbWlycm9yIGFuZCAtLXRhZ3MgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1taXJyb3IgdsOgIC0tdGFncyB4dW5nIGto4bqvYyBuaGF1IgogCi0jOiBidWlsdGluL3B1c2guYzo2MTIKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzNgogbXNnaWQgIi0tbWlycm9yIGNhbid0IGJlIGNvbWJpbmVkIHdpdGggcmVmc3BlY3MiCiBtc2dzdHIgIi0tbWlycm9yIGtow7RuZyB0aOG7gyDEkcaw4bujYyB04buVIGjhu6NwIGPDuW5nIHbhu5tpIMSR4bq3YyB04bqjIMSRxrDhu51uZyBk4bqrbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6NjE1CisjOiBidWlsdGluL3B1c2guYzo2MzkKIG1zZ2lkICItLWFsbCBhbmQgLS1taXJyb3IgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1hbGwgdsOgIC0tbWlycm9yIHh1bmcga2jhuq9jIG5oYXUiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYzNAorIzogYnVpbHRpbi9wdXNoLmM6NjQzCiBtc2dpZCAicHVzaCBvcHRpb25zIG11c3Qgbm90IGhhdmUgbmV3IGxpbmUgY2hhcmFjdGVycyIKIG1zZ3N0ciAiY8OhYyB0w7l5IGNo4buNbiBwdXNoIHBo4bqjaSBraMO0bmcgY8OzIGvDvSB04buxIGTDsm5nIG3hu5tpIgogCiAjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo4CiBtc2dpZCAiZ2l0IHJhbmdlLWRpZmYgWzxvcHRpb25zPl0gPG9sZC1iYXNlPi4uPG9sZC10aXA+IDxuZXctYmFzZT4uLjxuZXctdGlwPiIKIG1zZ3N0ciAiIgotImdpdCByYW5nZS1kaWZmIFs8Y8OhYy10w7l5LWNo4buNbj5dIDxvbGQtYmFzZT4uLjxvbGQtdGlwPiA8bmV3LWJhc2U+Li48bmV3LXRpcD4iCisiZ2l0IHJhbmdlLWRpZmYgWzxjw6FjIHTDuXkgY2jhu41uPl0gPG9sZC1iYXNlPi4uPG9sZC10aXA+IDxuZXctYmFzZT4uLjxuZXctdGlwPiIKIAogIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6OQogbXNnaWQgImdpdCByYW5nZS1kaWZmIFs8b3B0aW9ucz5dIDxvbGQtdGlwPi4uLjxuZXctdGlwPiIKLW1zZ3N0ciAiZ2l0IHJhbmdlLWRpZmYgWzxjw6FjLXTDuXktY2jhu41uPl0gPG9sZC10aXA+4oCmPG5ldy10aXA+IgorbXNnc3RyICJnaXQgcmFuZ2UtZGlmZiBbPGPDoWMgdMO5eSBjaOG7jW4+XSA8b2xkLXRpcD7igKY8bmV3LXRpcD4iCiAKICM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjEwCiBtc2dpZCAiZ2l0IHJhbmdlLWRpZmYgWzxvcHRpb25zPl0gPGJhc2U+IDxvbGQtdGlwPiA8bmV3LXRpcD4iCi1tc2dzdHIgImdpdCByYW5nZS1kaWZmIFs8Y8OhYy10w7l5LWNo4buNbj5dIDxiYXNlPiA8b2xkLXRpcD4gPG5ldy10aXA+IgorbXNnc3RyICJnaXQgcmFuZ2UtZGlmZiBbPGPDoWMgdMO5eSBjaOG7jW4+XSA8YmFzZT4gPG9sZC10aXA+IDxuZXctdGlwPiIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjEKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjIyCiBtc2dpZCAiUGVyY2VudGFnZSBieSB3aGljaCBjcmVhdGlvbiBpcyB3ZWlnaHRlZCIKIG1zZ3N0ciAiVOG7tyBs4buHIHBo4bqnbiB0csSDbSBjw6FpIHThuqFvIGzDoCB3ZWlnaHRlZCIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjMKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI0CiBtc2dpZCAidXNlIHNpbXBsZSBkaWZmIGNvbG9ycyIKIG1zZ3N0ciAiZMO5bmcgbcOgdSBkaWZmIMSRxqFuIGdp4bqjbiIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjEgYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjUKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI2Cittc2dpZCAibm90ZXMiCittc2dzdHIgImdoaSBjaMO6IgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyNgorbXNnaWQgInBhc3NlZCB0byAnZ2l0IGxvZyciCittc2dzdHIgImNodXnhu4NuIGNobyDigJxnaXQgbG9n4oCdIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo1MCBidWlsdGluL3JhbmdlLWRpZmYuYzo1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyAuLiBpbiByYW5nZTogJyVzJyIKIG1zZ3N0ciAia2jDtG5nIGPDsyAuLiB0cm9uZyB2w7luZzog4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjc1CisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo2NAogbXNnaWQgInNpbmdsZSBhcmcgZm9ybWF0IG11c3QgYmUgc3ltbWV0cmljIHJhbmdlIgogbXNnc3RyICLEkeG7i25oIGThuqFuZyDEkeG7kWkgc+G7kSDEkcahbiBwaOG6o2kgbMOgIG3hu5l0IHbDuW5nIMSR4buRaSB44bupbmciCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjkwCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo3OQogbXNnaWQgIm5lZWQgdHdvIGNvbW1pdCByYW5nZXMiCiBtc2dzdHIgImPhuqduIGhhaSB2w7luZyBs4bqnbiBjaHV54buDbiBnaWFvIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjQwCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjQxCiBtc2dpZCAiIgogImdpdCByZWFkLXRyZWUgWygtbSBbLS10cml2aWFsXSBbLS1hZ2dyZXNzaXZlXSB8IC0tcmVzZXQgfCAtLXByZWZpeD08cHJlZml4PikgIgogIlstdSBbLS1leGNsdWRlLXBlci1kaXJlY3Rvcnk9PGdpdGlnbm9yZT5dIHwgLWldXSBbLS1uby1zcGFyc2UtY2hlY2tvdXRdIFstLSIKQEAgLTE0ODczLDEyMSArMTgwMzAsMjk5IEBACiAiWy0taW5kZXgtb3V0cHV0PTx04bqtcC10aW4+XSAoLS1lbXB0eSB8IDx0cmVlLWlzaDE+IFs8dHJlZS1pc2gyPiBbPHRyZWUtIgogImlzaDM+XV0pIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjQKIG1zZ2lkICJ3cml0ZSByZXN1bHRpbmcgaW5kZXggdG8gPGZpbGU+IgogbXNnc3RyICJnaGkgbeG7pWMgbOG7pWMga+G6v3QgcXXhuqMgdsOgbyA8dOG6rXAtdGluPiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjYKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI3CiBtc2dpZCAib25seSBlbXB0eSB0aGUgaW5kZXgiCiBtc2dzdHIgImNo4buJIHbhu5tpIGLhuqNuZyBt4bulYyBs4bulYyB0cuG7kW5nIHLhu5duZyIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjgKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI5CiBtc2dpZCAiTWVyZ2luZyIKIG1zZ3N0ciAiSMOyYSB0cuG7mW4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMwCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMQogbXNnaWQgInBlcmZvcm0gYSBtZXJnZSBpbiBhZGRpdGlvbiB0byBhIHJlYWQiCiBtc2dzdHIgInRo4buxYyBoaeG7h24gbeG7mXQgaMOyYSB0cuG7mW4gdGjDqm0gdsOgbyB2aeG7h2MgxJHhu41jIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMgorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzMKIG1zZ2lkICIzLXdheSBtZXJnZSBpZiBubyBmaWxlIGxldmVsIG1lcmdpbmcgcmVxdWlyZWQiCiBtc2dzdHIgIiIKLSJow7JhIHRy4buZbiBraeG7g3Ug4oCcMy13YXnigJ0gbuG6v3Uga2jDtG5nIGPDsyB04bqtcCB0aW4gbeG7qWMgaMOyYSB0cuG7mW4gbsOgbyDEkcaw4bujYyB5w6p1IGPhuqd1ICIKKyJow7JhIHRy4buZbiBraeG7g3Ug4oCcMy13YXnigJ0gbuG6v3Uga2jDtG5nIGPDsyB04bqtcCB0aW4gbeG7qWMgaMOyYSB0cuG7mW4gbsOgbyDEkcaw4bujYyB5w6p1IGPhuqd1IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzUKIG1zZ2lkICIzLXdheSBtZXJnZSBpbiBwcmVzZW5jZSBvZiBhZGRzIGFuZCByZW1vdmVzIgogbXNnc3RyICJow7JhIHRy4buZbiAzLXdheSB0cm9uZyBz4buxIGhp4buHbiBkaeG7h24gY+G7p2Eg4oCcYWRkc+KAnSB2w6Ag4oCccmVtb3Zlc+KAnSIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzYKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM3CiBtc2dpZCAic2FtZSBhcyAtbSwgYnV0IGRpc2NhcmQgdW5tZXJnZWQgZW50cmllcyIKIG1zZ3N0ciAiZ2nhu5FuZyB24bubaSAtbSwgbmjGsG5nIGLhu48gcXVhIGPDoWMgbeG7pWMgY2jGsGEgxJHGsOG7o2MgaMOyYSB0cuG7mW4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM3CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzOAogbXNnaWQgIjxzdWJkaXJlY3Rvcnk+LyIKIG1zZ3N0ciAiPHRoxrAtbeG7pWMtY29uPi8iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM4CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzOQogbXNnaWQgInJlYWQgdGhlIHRyZWUgaW50byB0aGUgaW5kZXggdW5kZXIgPHN1YmRpcmVjdG9yeT4vIgogbXNnc3RyICLEkeG7jWMgY8OieSB2w6BvIHRyb25nIGLhuqNuZyBt4bulYyBs4bulYyBkxrDhu5tpIDx0aMawX23hu6VjX2Nvbj4vIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0MQorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDIKIG1zZ2lkICJ1cGRhdGUgd29ya2luZyB0cmVlIHdpdGggbWVyZ2UgcmVzdWx0IgogbXNnc3RyICJj4bqtcCBuaOG6rXQgY8OieSBsw6BtIHZp4buHYyB24bubaSBr4bq/dCBxdeG6oyBow7JhIHRy4buZbiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDMKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ0CiBtc2dpZCAiZ2l0aWdub3JlIgogbXNnc3RyICJnaXRpZ25vcmUiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ0CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NQogbXNnaWQgImFsbG93IGV4cGxpY2l0bHkgaWdub3JlZCBmaWxlcyB0byBiZSBvdmVyd3JpdHRlbiIKIG1zZ3N0ciAiY2hvIHBow6lwIGPDoWMgdOG6rXAgdGluIHLDtSByw6BuZyBi4buLIGzhu50gxJFpIMSRxrDhu6NjIGdoaSDEkcOoIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDgKIG1zZ2lkICJkb24ndCBjaGVjayB0aGUgd29ya2luZyB0cmVlIGFmdGVyIG1lcmdpbmciCiBtc2dzdHIgImtow7RuZyBraeG7g20gdHJhIGPDonkgbMOgbSB2aeG7h2Mgc2F1IGjDsmEgdHLhu5luIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0OAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDkKIG1zZ2lkICJkb24ndCB1cGRhdGUgdGhlIGluZGV4IG9yIHRoZSB3b3JrIHRyZWUiCiBtc2dzdHIgImtow7RuZyBj4bqtcCBuaOG6rXQgYuG6o25nIG3hu6VjIGzhu6VjIGhheSBjw6J5IGzDoG0gdmnhu4djIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTEKIG1zZ2lkICJza2lwIGFwcGx5aW5nIHNwYXJzZSBjaGVja291dCBmaWx0ZXIiCiBtc2dzdHIgImLhu48gcXVhIMOhcCBk4bulbmcgYuG7mSBs4buNYyBs4bqleSByYSAoY2hlY2tvdXQpIHRoxrBhIHRo4bubdCIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTIKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUzCiBtc2dpZCAiZGVidWcgdW5wYWNrLXRyZWVzIgogbXNnc3RyICJn4buhIGzhu5dpIOKAnHVucGFjay10cmVlc+KAnSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyOQotbXNnaWQgIiIKLSJnaXQgcmViYXNlIFstaV0gW29wdGlvbnNdIFstLWV4ZWMgPGNtZD5dIFstLW9udG8gPG5ld2Jhc2U+XSBbPHVwc3RyZWFtPl0gIgotIls8YnJhbmNoPl0iCi1tc2dzdHIgIiIKLSJnaXQgcmViYXNlIFstaV0gW2PDoWMtdMO5eS1jaOG7jW5dIFstLWV4ZWMgPGzhu4duaD5dIFstLW9udG8gPG5ld2Jhc2U+XSAiCi0iWzx1cHN0cmVhbT5dIFs8bmjDoW5oPl0iCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1NworbXNnaWQgInN1cHByZXNzIGZlZWRiYWNrIG1lc3NhZ2VzIgorbXNnc3RyICJraMO0bmcgeHXhuqV0IGPDoWMgdGjDtG5nIHRpbiBwaOG6o24gaOG7k2kiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MzEKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTg4Cittc2dpZCAiWW91IG5lZWQgdG8gcmVzb2x2ZSB5b3VyIGN1cnJlbnQgaW5kZXggZmlyc3QiCittc2dzdHIgIkLhuqFuIGPhuqduIHBo4bqjaSBnaeG6o2kgcXV54bq/dCBi4bqjbmcgbeG7pWMgbOG7pWMgaGnhu4duIHThuqFpIGPhu6dhIGLhuqFuIHRyxrDhu5tjIMSRw6MiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzIKK21zZ2lkICIiCisiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPiB8IC0ta2VlcC1iYXNlXSAiCisiWzx1cHN0cmVhbT4gWzxicmFuY2g+XV0iCittc2dzdHIgIiIKKyJnaXQgcmViYXNlIFstaV0gW2PDoWMgdMO5eSBjaOG7jW5dIFstLWV4ZWMgPGzhu4duaD5dIFstLW9udG8gPG5ld2Jhc2U+IHwgLS1rZWVwLSIKKyJiYXNlXSBbPHVwc3RyZWFtPl0gWzxuaMOhbmg+XV0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzQKIG1zZ2lkICIiCiAiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPl0gLS1yb290IFs8YnJhbmNoPl0iCiBtc2dzdHIgIiIKLSJnaXQgcmViYXNlIFstaV0gW2PDoWMtdMO5eS1jaOG7jW5dIFstLWV4ZWMgPGzhu4duaD5dIFstLW9udG8gPG5ld2Jhc2U+XSAtLXJvb3QgIgorImdpdCByZWJhc2UgWy1pXSBbY8OhYyB0w7l5IGNo4buNbl0gWy0tZXhlYyA8bOG7h25oPl0gWy0tb250byA8bmV3YmFzZT5dIC0tcm9vdCAiCiAiWzxuaMOhbmg+XSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzozMworIzogYnVpbHRpbi9yZWJhc2UuYzozNgogbXNnaWQgImdpdCByZWJhc2UgLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXAgfCAtLWVkaXQtdG9kbyIKIG1zZ3N0ciAiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIHwgLS1hYm9ydCB8IC0tc2tpcCB8IC0tZWRpdC10b2RvIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExOQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNzUgYnVpbHRpbi9yZWJhc2UuYzoxOTkgYnVpbHRpbi9yZWJhc2UuYzoyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW51c2FibGUgdG9kbyBsaXN0OiAnJXMnIgorbXNnc3RyICJkYW5oIHPDoWNoIGPhuqduIGzDoG0ga2jDtG5nIGTDuW5nIMSRxrDhu6NjOiDigJwlc+KAnSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJXMiCittc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyAlcyB04bqhbSB0aOG7nWkiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6Mjk4Cittc2dpZCAiY291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCittc2dzdHIgImtow7RuZyB0aOG7gyDEkcOhbmggZOG6pXUgbMOgIHTGsMahbmcgdMOhYyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozNTIKK21zZ2lkICJjb3VsZCBub3QgZ2VuZXJhdGUgdG9kbyBsaXN0IgorbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gZGFuaCBzw6FjaCBj4bqnbiBsw6BtIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM5MQorbXNnaWQgImEgYmFzZSBjb21taXQgbXVzdCBiZSBwcm92aWRlZCB3aXRoIC0tdXBzdHJlYW0gb3IgLS1vbnRvIgorbXNnc3RyICJs4bqnbiBjaHV54buDbiBnaWFvIGPGoSBz4buPIHBo4bqjaSDEkcaw4bujYyBjaOG7iSDEkeG7i25oIHbhu5tpIC0tdXBzdHJlYW0gaG/hurdjIC0tb250byIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NjEKK21zZ2lkICJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxjw6FjIHTDuXkgY2jhu41uPl0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDc0IGJ1aWx0aW4vcmViYXNlLmM6MTU1MAorbXNnaWQgIihERVBSRUNBVEVEKSBrZWVwIGVtcHR5IGNvbW1pdHMiCittc2dzdHIgIihDxagpIGdp4buvIGzhuqFpIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBy4buXbmciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDc4IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI4Cittc2dpZCAiYWxsb3cgY29tbWl0cyB3aXRoIGVtcHR5IG1lc3NhZ2VzIgorbXNnc3RyICJjaOG6pXAgbmjhuq1uIGNodXnhu4NuIGdpYW8gbcOgIGtow7RuZyBnaGkgY2jDuiBnw6wiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDgwCittc2dpZCAicmViYXNlIG1lcmdlIGNvbW1pdHMiCittc2dzdHIgImPhuqNpIHThu5UgY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIGjDsmEgdHLhu5luIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4MgorbXNnaWQgImtlZXAgb3JpZ2luYWwgYnJhbmNoIHBvaW50cyBvZiBjb3VzaW5zIgorbXNnc3RyICJnaeG7ryBjw6FjIMSRaeG7g20gbmjDoW5oIG5ndXnDqm4gYuG6o24gY+G7p2EgY8OhYyBhbmggZW0gaOG7jSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODQKK21zZ2lkICJtb3ZlIGNvbW1pdHMgdGhhdCBiZWdpbiB3aXRoIHNxdWFzaCEvZml4dXAhIgorbXNnc3RyICJkaSBjaHV54buDbiBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8gYuG6r3QgxJHhuqd1IGLhurFuZyBzcXVhc2ghL2ZpeHVwISIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODUKK21zZ2lkICJzaWduIGNvbW1pdHMiCittc2dzdHIgImvDvSBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg3IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MAorbXNnaWQgImRpc3BsYXkgYSBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCittc2dzdHIgImhp4buDbiB0aOG7iyBt4buZdCBkaWZmc3RhdCBj4bunYSBuaOG7r25nIHRoYXkgxJHhu5VpIHRoxrDhu6NuZyBuZ3Xhu5NuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4OQorbXNnaWQgImNvbnRpbnVlIHJlYmFzZSIKK21zZ3N0ciAidGnhur9wIHThu6VjIGPhuqNpIHThu5UiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDkxCittc2dpZCAic2tpcCBjb21taXQiCittc2dzdHIgImLhu48gcXVhIGzhuqduIGNodXnhu4NuIGdpYW8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDkyCittc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICJz4butYSBkYW5oIHPDoWNoIGPhuqduIGzDoG0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk0Cittc2dpZCAic2hvdyB0aGUgY3VycmVudCBwYXRjaCIKK21zZ3N0ciAiaGnhu4NuIHRo4buLIG1p4bq/bmcgdsOhIGhp4buHbiBow6BuaCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTcKK21zZ2lkICJzaG9ydGVuIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAicsO6dCBuZ+G6r24gbcOjIGNodXnhu4NuIGdpYW8gdHJvbmcgZGFuaCBzw6FjaCBj4bqnbiBsw6BtIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5OQorbXNnaWQgImV4cGFuZCBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCittc2dzdHIgImtoYWkgdHJp4buDbiBtw6MgY2h1eeG7g24gZ2lhbyB0cm9uZyBkYW5oIHPDoWNoIGPhuqduIGzDoG0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAxCittc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAia2nhu4NtIHRyYSBkYW5oIHPDoWNoIGPhuqduIGzDoG0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAzCittc2dpZCAicmVhcnJhbmdlIGZpeHVwL3NxdWFzaCBsaW5lcyIKK21zZ3N0ciAic+G6r3AgeOG6v3AgbOG6oWkgY8OhYyBkw7JuZyBmaXh1cC9zcXVhc2giCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTA1Cittc2dpZCAiaW5zZXJ0IGV4ZWMgY29tbWFuZHMgaW4gdG9kbyBsaXN0IgorbXNnc3RyICJjaMOobiBjw6FjIGzhu4duaCB0aOG7sWMgdGhpIHRyb25nIGRhbmggc8OhY2ggY+G6p24gbMOgbSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDYKK21zZ2lkICJvbnRvIgorbXNnc3RyICJsw6puIHRyw6puIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwOQorbXNnaWQgInJlc3RyaWN0LXJldmlzaW9uIgorbXNnc3RyICLEkWnhu4NtLXjDqXQtZHV54buHdC1o4bqhbi1jaOG6vyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDkKK21zZ2lkICJyZXN0cmljdCByZXZpc2lvbiIKK21zZ3N0ciAixJFp4buDbSB4w6l0IGR1eeG7h3QgaOG6oW4gY2jhur8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTExCittc2dpZCAic3F1YXNoLW9udG8iCittc2dzdHIgInNxdWFzaC1sw6puLXRyw6puIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxMgorbXNnaWQgInNxdWFzaCBvbnRvIgorbXNnc3RyICJzcXVhc2ggbMOqbiB0csOqbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTQKK21zZ2lkICJ0aGUgdXBzdHJlYW0gY29tbWl0IgorbXNnc3RyICJs4bqnbiBjaHV54buDbiBnaWFvIHRoxrDhu6NuZyBuZ3Xhu5NuIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxNgorbXNnaWQgImhlYWQtbmFtZSIKK21zZ3N0ciAidMOqbi3EkeG6p3UiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTE2Cittc2dpZCAiaGVhZCBuYW1lIgorbXNnc3RyICJ0w6puIMSR4bqndSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjEKK21zZ2lkICJyZWJhc2Ugc3RyYXRlZ3kiCittc2dzdHIgImNoaeG6v24gbMaw4bujYyBj4bqjaSB04buVIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyMgorbXNnaWQgInN0cmF0ZWd5LW9wdHMiCittc2dzdHIgInTDuXktY2jhu41uLWNoaeG6v24tbMaw4bujYyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjMKK21zZ2lkICJzdHJhdGVneSBvcHRpb25zIgorbXNnc3RyICJjw6FjIHTDuXkgY2jhu41uIGNoaeG6v24gbMaw4bujYyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjQKK21zZ2lkICJzd2l0Y2gtdG8iCittc2dzdHIgImNodXnhu4NuLcSR4bq/biIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjUKK21zZ2lkICJ0aGUgYnJhbmNoIG9yIGNvbW1pdCB0byBjaGVja291dCIKK21zZ3N0ciAibmjDoW5oIGhheSBs4bqnbiBjaHV54buDbiBnaWFvIGzhuqduIGzhuqV5IHJhIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNgorbXNnaWQgIm9udG8tbmFtZSIKK21zZ3N0ciAib250by1uYW1lIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNgorbXNnaWQgIm9udG8gbmFtZSIKK21zZ3N0ciAidMOqbiBsw6puIHRyw6puIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNworbXNnaWQgImNtZCIKK21zZ3N0ciAibOG7h25oIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNworbXNnaWQgInRoZSBjb21tYW5kIHRvIHJ1biIKK21zZ3N0ciAibOG7h25oIG114buRbiBjaOG6oXkiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTMwIGJ1aWx0aW4vcmViYXNlLmM6MTU4NAorbXNnaWQgImF1dG9tYXRpY2FsbHkgcmUtc2NoZWR1bGUgYW55IGBleGVjYCB0aGF0IGZhaWxzIgorbXNnc3RyICJs4bqtcCBs4buLY2ggbOG6oWkgbeG7mXQgY8OhY2ggdOG7sSDEkeG7mW5nIGLhuqV0IGvhu7Mg4oCcZXhlY+KAnCBi4buLIGzhu5dpIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjU0NgorbXNnaWQgIi0tW25vLV1yZWJhc2UtY291c2lucyBoYXMgbm8gZWZmZWN0IHdpdGhvdXQgLS1yZWJhc2UtbWVyZ2VzIgorbXNnc3RyICItLVtuby1dcmViYXNlLWNvdXNpbnMga2jDtG5nIGPDsyB0w6FjIGThu6VuZyBraGkga2jDtG5nIGPDsyAtLXJlYmFzZS1tZXJnZXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHJlcXVpcmVzIGFuIGludGVyYWN0aXZlIHJlYmFzZSIKIG1zZ3N0ciAiJXMgY+G6p24gbeG7mXQgY+G6o2kgdOG7lSBraeG7g3UgdMawxqFuZyB0w6FjIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE3MQorIzogYnVpbHRpbi9yZWJhc2UuYzo2MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGdldCAnb250byc6ICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG6t3QgbOG6pXkg4oCcb250b+KAnTog4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTg2CisjOiBidWlsdGluL3JlYmFzZS5jOjYyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9yaWctaGVhZDogJyVzJyIKIG1zZ3N0ciAib3JpZy1oZWFkIGtow7RuZyBo4bujcCBs4buHOiDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyMTQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NjUyCiAjLCBjLWZvcm1hdAogbXNnaWQgImlnbm9yaW5nIGludmFsaWQgYWxsb3dfcmVyZXJlX2F1dG91cGRhdGU6ICclcyciCiBtc2dzdHIgIsSRYW5nIGLhu48gcXVhIGFsbG93X3JlcmVyZV9hdXRvdXBkYXRlIGtow7RuZyBo4bujcCBs4buHOiDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyNTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZWFkICclcyciCiBtc2dzdHIgIktow7RuZyB0aOG7gyDEkeG7jWMg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6Mjc3CisjOiBidWlsdGluL3JlYmFzZS5jOjc0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgc3RvcmUgJXMiCiBtc2dzdHIgIktow7RuZyB0aOG7gyBsxrB1IOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjMzNworIzogYnVpbHRpbi9yZWJhc2UuYzo4NTMKK21zZ2lkICJjb3VsZCBub3QgZGV0ZXJtaW5lIEhFQUQgcmV2aXNpb24iCittc2dzdHIgImtow7RuZyB0aOG7gyBkw7IgdMOsbSDEkWnhu4NtIHjDqXQgZHV54buHdCBIRUFEIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjk3NiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODEKIG1zZ2lkICIiCiAiUmVzb2x2ZSBhbGwgY29uZmxpY3RzIG1hbnVhbGx5LCBtYXJrIHRoZW0gYXMgcmVzb2x2ZWQgd2l0aFxuIgogIlwiZ2l0IGFkZC9ybSA8Y29uZmxpY3RlZF9maWxlcz5cIiwgdGhlbiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIi5cbiIKQEAgLTE1MDAyLDExICsxODMzNywzNSBAQAogIsSQ4buDIGLDo2kgYuG7jyB2w6AgcXVheSB0cuG7nyBs4bqhaSB0cuG6oW5nIHRow6FpIHRyxrDhu5tjIFwiZ2l0IHJlYmFzZVwiLCBjaOG6oXkgXCJnaXQgcmViYXNlICIKICItLWFib3J0XCIuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjU2MQotbXNnaWQgImNvdWxkIG5vdCBkZXRlcm1pbmUgSEVBRCByZXZpc2lvbiIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIGTDsiB0w6xtIMSRaeG7g20geMOpdCBkdXnhu4d0IEhFQUQiCisjOiBidWlsdGluL3JlYmFzZS5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorImdpdCBlbmNvdW50ZXJlZCBhbiBlcnJvciB3aGlsZSBwcmVwYXJpbmcgdGhlIHBhdGNoZXMgdG8gcmVwbGF5XG4iCisidGhlc2UgcmV2aXNpb25zOlxuIgorIlxuIgorIiAgICAlc1xuIgorIlxuIgorIkFzIGEgcmVzdWx0LCBnaXQgY2Fubm90IHJlYmFzZSB0aGVtLiIKK21zZ3N0ciAiIgorIlxuIgorImdpdCBjaOG6oW0gdHLDoW4gbeG7mXQgbOG7l2kgdHJvbmcga2hpIMSRYW5nIGNodeG6qW4gYuG7iyBjw6FjIG1p4bq/bmcgdsOhIMSR4buDIGRp4buFbiBs4bqhaVxuIgorIm5o4buvbmcgxJFp4buDbSB4w6l0IGR1eeG7h3QgbsOgeTpcbiIKKyJcbiIKKyIgICAgJXNcbiIKKyJcbiIKKyJL4bq/dCBxdeG6oyBsw6AgZ2l0IGtow7RuZyB0aOG7gyBj4bqjaSB04buVIGzhuqFpIGNow7puZy4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6NzUzCisjOiBidWlsdGluL3JlYmFzZS5jOjEzODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVucmVjb2duaXplZCBlbXB0eSB0eXBlICclcyc7IHZhbGlkIHZhbHVlcyBhcmUgXCJkcm9wXCIsIFwia2VlcFwiLCBhbmQgXCJhc2siCisiXCIuIgorbXNnc3RyICIiCisia2nhu4N1IHLhu5duZyBraMO0bmcgxJHGsOG7o2Mgbmjhuq1uIGThuqFuZyAnJXMnOyBnacOhIHRy4buLIGjhu6NwIGzhu4cgbMOgIFwiZHJvcFwiLCBcImtlZXBcIiwgIgorInbDoCBcImFza1wiLiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIlc1xuIgpAQCAtMTUwMjMsNyArMTgzODIsNyBAQAogIiAgICBnaXQgcmViYXNlIOKAnDxuaMOhbmg+4oCdXG4iCiAiXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6NzY5CisjOiBidWlsdGluL3JlYmFzZS5jOjE0MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3aXNoIHRvIHNldCB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhpcyBicmFuY2ggeW91IGNhbiBkbyBzbyB3aXRoOlxuIgpAQCAtMTUwMzcsMTUzICsxODM5NiwxNzkgQEAKICIgICAgZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10bz0lcy88bmjDoW5oPiAlc1xuIgogIlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjgzMgotbXNnaWQgInJlYmFzZSBvbnRvIGdpdmVuIGJyYW5jaCBpbnN0ZWFkIG9mIHVwc3RyZWFtIgotbXNnc3RyICJj4bqjaSB04buVIHbDoG8gbmjDoW5oIMSRw6MgY2hvIHRoYXkgY2hvIHRoxrDhu6NuZyBuZ3Xhu5NuLiIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ0NworbXNnaWQgImV4ZWMgY29tbWFuZHMgY2Fubm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImPDoWMgbOG7h25oIHRo4buxYyB0aGkga2jDtG5nIHRo4buDIGNo4bupYSBjw6FjIGvDvSB04buxIGTDsm5nIG3hu5tpIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjgzNAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDUxCittc2dpZCAiZW1wdHkgZXhlYyBjb21tYW5kIgorbXNnc3RyICJs4buHbmggdGjhu7FjIHRoaSB0cuG7kW5nIHLhu5duZyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgxCittc2dpZCAicmViYXNlIG9udG8gZ2l2ZW4gYnJhbmNoIGluc3RlYWQgb2YgdXBzdHJlYW0iCittc2dzdHIgImPhuqNpIHThu5UgdsOgbyBuaMOhbmggxJHDoyBjaG8gdGhheSBjaG8gdGjGsOG7o25nIG5ndeG7k24iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MworbXNnaWQgInVzZSB0aGUgbWVyZ2UtYmFzZSBvZiB1cHN0cmVhbSBhbmQgYnJhbmNoIGFzIHRoZSBjdXJyZW50IGJhc2UiCittc2dzdHIgIiIKKyJz4butIGThu6VuZyBjw6FjIGPGoSBz4bufIGjDsmEgdHLhu5luIGPhu6dhIHRoxrDhu6NuZyBuZ3Xhu5NuIHbDoCBuaMOhbmggbmjGsCBsw6AgY8ahIHPhu58gaGnhu4duIHThuqFpIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODUKIG1zZ2lkICJhbGxvdyBwcmUtcmViYXNlIGhvb2sgdG8gcnVuIgogbXNnc3RyICJjaG8gcGjDqXAgbcOzYyAoaG9vaykgcHJlLXJlYmFzZSDEkcaw4bujYyBjaOG6oXkiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODM2CisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODcKIG1zZ2lkICJiZSBxdWlldC4gaW1wbGllcyAtLW5vLXN0YXQiCiBtc2dzdHIgImjDo3kgaW0gbOG6t25nLiDDvSBsw6AgLS1uby1zdGF0IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjgzOQotbXNnaWQgImRpc3BsYXkgYSBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCi1tc2dzdHIgImhp4buDbiB0aOG7iyBt4buZdCBkaWZmc3RhdCBj4bunYSBuaOG7r25nIHRoYXkgxJHhu5VpIHRoxrDhu6NuZyBuZ3Xhu5NuIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjg0MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDkzCiBtc2dpZCAiZG8gbm90IHNob3cgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtIgogbXNnc3RyICLEkeG7q25nIGhp4buDbiB0aOG7iyBkaWZmc3RhdCBj4bunYSBuaOG7r25nIHRoYXkgxJHhu5VpIHRoxrDhu6NuZyBuZ3Xhu5NuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg0NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDk2CiBtc2dpZCAiYWRkIGEgU2lnbmVkLW9mZi1ieTogbGluZSB0byBlYWNoIGNvbW1pdCIKIG1zZ3N0ciAidGjDqm0gZMOybmcgU2lnbmVkLW9mZi1ieTogY2hvIHThu6tuZyBs4bqnbiBjaHV54buDbiBnaWFvIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg0NyBidWlsdGluL3JlYmFzZS5jOjg1MSBidWlsdGluL3JlYmFzZS5jOjg1MworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDk4IGJ1aWx0aW4vcmViYXNlLmM6MTUwMiBidWlsdGluL3JlYmFzZS5jOjE1MDQKIG1zZ2lkICJwYXNzZWQgdG8gJ2dpdCBhbSciCiBtc2dzdHIgImNodXnhu4NuIGNobyDigJxnaXQgYW3igJ0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODU1IGJ1aWx0aW4vcmViYXNlLmM6ODU3CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MDYgYnVpbHRpbi9yZWJhc2UuYzoxNTA4CiBtc2dpZCAicGFzc2VkIHRvICdnaXQgYXBwbHknIgogbXNnc3RyICJjaHV54buDbiBjaG8g4oCcZ2l0IGFwcGx54oCdIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg1OSBidWlsdGluL3JlYmFzZS5jOjg2MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTEwIGJ1aWx0aW4vcmViYXNlLmM6MTUxMwogbXNnaWQgImNoZXJyeS1waWNrIGFsbCBjb21taXRzLCBldmVuIGlmIHVuY2hhbmdlZCIKIG1zZ3N0ciAiIgogImNoZXJyeS1waWNrIHThuqV0IGPhuqMgY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvLCBuZ2F5IGPhuqMga2hpIGtow7RuZyBjw7MgdGhheSDEkeG7lWkgZ8OsIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg2NAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTE1CiBtc2dpZCAiY29udGludWUiCiBtc2dzdHIgInRp4bq/cCB04bulYyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NjcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxOAogbXNnaWQgInNraXAgY3VycmVudCBwYXRjaCBhbmQgY29udGludWUiCiBtc2dzdHIgImLhu48gcXVhIG1p4bq/bmcgdsOhIGhp4buHbiBow6BuaCB2w6AgdGnhur9wIHThu6VjIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg2OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTIwCiBtc2dpZCAiYWJvcnQgYW5kIGNoZWNrIG91dCB0aGUgb3JpZ2luYWwgYnJhbmNoIgogbXNnc3RyICJiw6NpIGLhu48gdsOgIGzhuqV5IHJhIG5ow6FuaCBuZ3V5w6puIHRo4buneSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyMwogbXNnaWQgImFib3J0IGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMiCiBtc2dzdHIgImLDo2kgYuG7jyBuaMawbmcgduG6q24gduG6q24gZ2nhu68gSEVBRCBjaOG7iSDEkeG6v24gbsOzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3MworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTI0CiBtc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IGR1cmluZyBhbiBpbnRlcmFjdGl2ZSByZWJhc2UiCiBtc2dzdHIgInPhu61hIGRhbmggc8OhY2ggY+G6p24gbMOgbSB0cm9uZyBxdcOhIHRyw6xuaCDigJxyZWJhc2XigJ0gKGPhuqNpIHThu5UpIHTGsMahbmcgdMOhYyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NzYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUyNwogbXNnaWQgInNob3cgdGhlIHBhdGNoIGZpbGUgYmVpbmcgYXBwbGllZCBvciBtZXJnZWQiCiBtc2dzdHIgImhp4buDbiB0aOG7iyBtaeG6v25nIHbDoSDEkcOjIMSRxrDhu6NjIMOhcCBk4bulbmcgaGF5IGjDsmEgdHLhu5luIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTMwCittc2dpZCAidXNlIGFwcGx5IHN0cmF0ZWdpZXMgdG8gcmViYXNlIgorbXNnc3RyICJkw7luZyBjaGnhur9uIGzGsOG7o2Mgw6FwIGThu6VuZyDEkeG7gyBj4bqjaSB04buVIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzQKIG1zZ2lkICJ1c2UgbWVyZ2luZyBzdHJhdGVnaWVzIHRvIHJlYmFzZSIKIG1zZ3N0ciAiZMO5bmcgY2hp4bq/biBsxrDhu6NjIGjDsmEgdHLhu5luIMSR4buDIGPhuqNpIHThu5UiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODgzCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzgKIG1zZ2lkICJsZXQgdGhlIHVzZXIgZWRpdCB0aGUgbGlzdCBvZiBjb21taXRzIHRvIHJlYmFzZSIKIG1zZ3N0ciAixJHhu4MgbmfGsOG7nWkgZMO5bmcgc+G7rWEgZGFuaCBzw6FjaCBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8gbXXhu5FuIGPhuqNpIHThu5UiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODg3Ci1tc2dpZCAidHJ5IHRvIHJlY3JlYXRlIG1lcmdlcyBpbnN0ZWFkIG9mIGlnbm9yaW5nIHRoZW0iCi1tc2dzdHIgInRo4butIGtow7RpIHBo4bulYyBs4bqhaSBjw6FjIGjDsmEgdHLhu5luIHRoYXkgdsOsIGLhu48gcXVhIGNow7puZyIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU0MgorbXNnaWQgIihERVBSRUNBVEVEKSB0cnkgdG8gcmVjcmVhdGUgbWVyZ2VzIGluc3RlYWQgb2YgaWdub3JpbmcgdGhlbSIKK21zZ3N0ciAiKMSQw4MgTOG6oEMgSOG6rFUpIGhheSB0aOG7rSB04bqhbyBs4bqhaSBjw6FjIGjDsmEgdHLhu5luIHRoYXkgdsOsIGLhu48gcXVhIGNow7puZyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4OTEKLW1zZ2lkICJhbGxvdyByZXJlcmUgdG8gdXBkYXRlIGluZGV4IHdpdGggcmVzb2x2ZWQgY29uZmxpY3QiCi1tc2dzdHIgIiIKLSJjaG8gcGjDqXAgcmVyZXJlIGPhuq1wIG5o4bqtdCBi4bqjbmcgbeG7pWMgbOG7pWMgduG7m2kgY8OhYyB4dW5nIMSR4buZdCDEkcOjIMSRxrDhu6NjIGdp4bqjaSBxdXnhur90IgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTQ3Cittc2dpZCAiaG93IHRvIGhhbmRsZSBjb21taXRzIHRoYXQgYmVjb21lIGVtcHR5IgorbXNnc3RyICJ44butIGzDvSBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8gbcOgIG7DsyB0cuG7nyB0aMOgbmggdHLhu5FuZyBy4buXbmcgbmjGsCB0aOG6vyBuw6BvIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg5NAotbXNnaWQgInByZXNlcnZlIGVtcHR5IGNvbW1pdHMgZHVyaW5nIHJlYmFzZSIKLW1zZ3N0ciAibmfEg24gY+G6pW0gY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIHRy4buRbmcgcuG7l25nIHRyb25nIHN14buRdCBxdcOhIHRyw6xuaCBj4bqjaSB04buVIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjg5NgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTU0CiBtc2dpZCAibW92ZSBjb21taXRzIHRoYXQgYmVnaW4gd2l0aCBzcXVhc2ghL2ZpeHVwISB1bmRlciAtaSIKIG1zZ3N0ciAiZGkgY2h1eeG7g24gY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIG3DoCBi4bqvdCDEkeG6p3UgYuG6sW5nIHNxdWFzaCEvZml4dXAhIGTGsOG7m2kgLWkiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTAyCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjAKIG1zZ2lkICJhdXRvbWF0aWNhbGx5IHN0YXNoL3N0YXNoIHBvcCBiZWZvcmUgYW5kIGFmdGVyIgogbXNnc3RyICJ04buxIMSR4buZbmcgc3Rhc2gvc3Rhc2ggcG9wIHRyxrDhu5tjIHbDoCBzYXUiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTA0CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjIKIG1zZ2lkICJhZGQgZXhlYyBsaW5lcyBhZnRlciBlYWNoIGNvbW1pdCBvZiB0aGUgZWRpdGFibGUgbGlzdCIKIG1zZ3N0ciAidGjDqm0gY8OhYyBkw7JuZyB0aOG7sWMgdGhpIHNhdSB04burbmcgbOG6p24gY2h1eeG7g24gZ2lhbyBj4bunYSBkYW5oIHPDoWNoIHPhu61hIMSRxrDhu6NjIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkwOAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTY2CiBtc2dpZCAiYWxsb3cgcmViYXNpbmcgY29tbWl0cyB3aXRoIGVtcHR5IG1lc3NhZ2VzIgogbXNnc3RyICJjaOG6pXAgbmjhuq1uIGPhuqNpIHThu5UgY8OhYyBjaHV54buDbiBnaWFvIG3DoCBraMO0bmcgZ2hpIGNow7ogZ8OsIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxMQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTcwCiBtc2dpZCAidHJ5IHRvIHJlYmFzZSBtZXJnZXMgaW5zdGVhZCBvZiBza2lwcGluZyB0aGVtIgogbXNnc3RyICJj4buRIHRo4butIGPhuqNpIHThu5UgY8OhYyBow7JhIHRy4buZbiB0aGF5IHbDrCBi4buPIHF1YSBjaMO6bmciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTE0CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzMKIG1zZ2lkICJ1c2UgJ21lcmdlLWJhc2UgLS1mb3JrLXBvaW50JyB0byByZWZpbmUgdXBzdHJlYW0iCiBtc2dzdHIgImTDuW5nIOKAnG1lcmdlLWJhc2UgLS1mb3JrLXBvaW504oCdIMSR4buDIMSR4buLbmggbmdoxKlhIGzhuqFpIHRoxrDhu6NuZyBuZ3Xhu5NuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTc1CiBtc2dpZCAidXNlIHRoZSBnaXZlbiBtZXJnZSBzdHJhdGVneSIKIG1zZ3N0ciAiZMO5bmcgY2hp4bq/biBsxrDhu6NjIGjDsmEgdHLhu5luIMSRw6MgY2hvIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxOCBidWlsdGluL3JldmVydC5jOjExMQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTc3IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE1CiBtc2dpZCAib3B0aW9uIgogbXNnc3RyICJ0w7l5IGNo4buNbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3OAogbXNnaWQgInBhc3MgdGhlIGFyZ3VtZW50IHRocm91Z2ggdG8gdGhlIG1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICJjaHV54buDbiB0aGFvIHPhu5EgxJHhur9uIGNoaeG6v24gbMaw4bujYyBow7JhIHRy4buZbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MjIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU4MQogbXNnaWQgInJlYmFzZSBhbGwgcmVhY2hhYmxlIGNvbW1pdHMgdXAgdG8gdGhlIHJvb3QocykiCiBtc2dzdHIgImPhuqNpIHThu5UgdOG6pXQgY8OhYyBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8gY2hvIMSR4bq/biByb290IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkzOAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgZXhlYyAlcyIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIHRo4buxYyB0aGkgJXMiCisjOiBidWlsdGluL3JlYmFzZS5jOjE1OTgKK21zZ2lkICIiCisidGhlIHJlYmFzZS51c2VCdWlsdGluIHN1cHBvcnQgaGFzIGJlZW4gcmVtb3ZlZCFcbiIKKyJTZWUgaXRzIGVudHJ5IGluICdnaXQgaGVscCBjb25maWcnIGZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorInZp4buHYyBo4buXIHRy4bujIHJlYmFzZS51c2VCdWlsdGluIMSRw6MgYuG7iyB4w7NhIVxuIgorIlhlbSBt4bulYyB0aW4gY+G7p2EgbsOzIHRyb25nIOKAnCBnaXQgaGVscCBjb25maWfigJ0gxJHhu4MgYmnhur90IGNoaSB0aeG6v3QuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjk1NiBnaXQtbGVnYWN5LXJlYmFzZS5zaDoyMTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTYwNAogbXNnaWQgIkl0IGxvb2tzIGxpa2UgJ2dpdCBhbScgaXMgaW4gcHJvZ3Jlc3MuIENhbm5vdCByZWJhc2UuIgogbXNnc3RyICIiCiAiSMOsbmggbmjGsCDEkWFuZyB0cm9uZyBxdcOhIHRyw6xuaCB0aOG7sWMgaGnhu4duIGzhu4duaCDigJxnaXQtYW3igJ0uIEtow7RuZyB0aOG7gyByZWJhc2UuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjk5NyBnaXQtbGVnYWN5LXJlYmFzZS5zaDozOTUKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY0NQorbXNnaWQgIiIKKyJnaXQgcmViYXNlIC0tcHJlc2VydmUtbWVyZ2VzIGlzIGRlcHJlY2F0ZWQuIFVzZSAtLXJlYmFzZS1tZXJnZXMgaW5zdGVhZC4iCittc2dzdHIgIiIKKyJnaXQgcmViYXNlIC0tcHJlc2VydmUtbWVyZ2VzIMSRw6MgbOG6oWMgaOG6rXUuIEjDo3kgZMO5bmcgLS1yZWJhc2UtbWVyZ2VzIMSR4buDIHRoYXkgIgorInRo4bq/LiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjUwCittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0ta2VlcC1iYXNlJyB3aXRoICctLW9udG8nIgorbXNnc3RyICJraMO0bmcgdGjhu4Mga+G6v3QgaOG7o3Ag4oCcLS1rZWVwLWJhc2XigJ0gduG7m2kg4oCcLS1vbnRv4oCdIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NTIKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1rZWVwLWJhc2UnIHdpdGggJy0tcm9vdCciCittc2dzdHIgImtow7RuZyB0aOG7gyBr4bq/dCBo4bujcCDigJwtLWtlZXAtYmFzZeKAnSB24bubaSDigJwtLXJvb3TigJ0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1NgogbXNnaWQgIk5vIHJlYmFzZSBpbiBwcm9ncmVzcz8iCiBtc2dzdHIgIktow7RuZyBjw7MgdGnhur9uIHRyw6xuaCByZWJhc2UgbsOgbyBwaOG6o2kga2jDtG5nPyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDAxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjQwNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjYwCiBtc2dpZCAiVGhlIC0tZWRpdC10b2RvIGFjdGlvbiBjYW4gb25seSBiZSB1c2VkIGR1cmluZyBpbnRlcmFjdGl2ZSByZWJhc2UuIgogbXNnc3RyICIiCiAiSMOgbmggxJHhu5luZyDigJwtLWVkaXQtdG9kb+KAnSBjaOG7iSBjw7MgdGjhu4MgZMO5bmcgdHJvbmcgcXXDoSB0csOsbmgg4oCccmViYXNl4oCdIChz4butYSBs4buLY2ggIgogInPhu60pIHTGsMahbmcgdMOhYy4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTAxNSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY4MwogbXNnaWQgIkNhbm5vdCByZWFkIEhFQUQiCiBtc2dzdHIgIktow7RuZyB0aOG7gyDEkeG7jWMgSEVBRCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDI4IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQxNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjk1CiBtc2dpZCAiIgogIllvdSBtdXN0IGVkaXQgYWxsIG1lcmdlIGNvbmZsaWN0cyBhbmQgdGhlblxuIgogIm1hcmsgdGhlbSBhcyByZXNvbHZlZCB1c2luZyBnaXQgYWRkIgpAQCAtMTUxOTEsMjEgKzE4NTc2LDE2IEBACiAiQuG6oW4gcGjhuqNpIHPhu61hIHThuqV0IGPhuqMgY8OhYyBs4bqnbiBow7JhIHRy4buZbiB4dW5nIMSR4buZdCB2w6Agc2F1XG4iCiAixJHDsyDEkcOhbmggZOG6pXUgY2jDum5nIGzDoCBj4bqnbiB44butIGzDvSBz4butIGThu6VuZyBs4buHbmggZ2l0IGFkZCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDQ3CisjOiBidWlsdGluL3JlYmFzZS5jOjE3MTQKIG1zZ2lkICJjb3VsZCBub3QgZGlzY2FyZCB3b3JrdHJlZSBjaGFuZ2VzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgbG/huqFpIGLhu48gY8OhYyB0aGF5IMSR4buVaSBjw6J5LWzDoG0tdmnhu4djIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwNjYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTczMwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbW92ZSBiYWNrIHRvICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgcXVheSB0cuG7nyBs4bqhaSAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDc3IGJ1aWx0aW4vcm0uYzozNjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IHJlbW92ZSAnJXMnIgotbXNnc3RyICJraMO0bmcgdGjhu4MgZ+G7oSBi4buPIOKAnCVz4oCdIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjExMDMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTc3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSXQgc2VlbXMgdGhhdCB0aGVyZSBpcyBhbHJlYWR5IGEgJXMgZGlyZWN0b3J5LCBhbmRcbiIKQEAgLTE1MjI2LDM0MyArMTg2MDYsMTY0IEBACiAidsOgIGNo4bqheSBUw5RJIGzhuqduIG7hu69hLiBUw5RJIGThu6tuZyBs4bqhaSB0cm9uZyB0csaw4budbmcgaOG7o3AgYuG6oW4gduG6q25cbiIKICJjw7MgbeG7mXQgc+G7kSB0aOG7qSBxdcO9IGdpw6Eg4bufIMSRw6J5LlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExMjQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTgwNgogbXNnaWQgInN3aXRjaCBgQycgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKIG1zZ3N0ciAidMO5eSBjaOG7jW4g4oCcJWPigJ0gY+G6p24gbeG7mXQgZ2nDoSB0cuG7iyBi4bqxbmcgc+G7kSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTYxCisjOiBidWlsdGluL3JlYmFzZS5jOjE4NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biBtb2RlOiAlcyIKIG1zZ3N0ciAiS2jDtG5nIGhp4buDdSBjaOG6vyDEkeG7mTogJXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTE4MworIzogYnVpbHRpbi9yZWJhc2UuYzoxODY5CiBtc2dpZCAiLS1zdHJhdGVneSByZXF1aXJlcyAtLW1lcmdlIG9yIC0taW50ZXJhY3RpdmUiCiBtc2dzdHIgIi0tc3RyYXRlZ3kgY+G6p24gLS1tZXJnZSBoYXkgLS1pbnRlcmFjdGl2ZSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjI2CisjOiBidWlsdGluL3JlYmFzZS5jOjE4OTkKK21zZ2lkICJjYW5ub3QgY29tYmluZSBhcHBseSBvcHRpb25zIHdpdGggbWVyZ2Ugb3B0aW9ucyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHThu5UgaOG7o3AgY8OhYyB0w7l5IGNo4buNbiDDoXAgZOG7pW5nIHbhu5tpIGPDoWMgdMO5eSBjaOG7jW4gaMOyYSB0cuG7mW4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTkxMgogIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHJlYmFzZSBiYWNrZW5kOiAlcyIKK21zZ3N0ciAiS2jDtG5nIGhp4buDdSDhu6luZyBk4bulbmcgY2jhuqF5IHBow61hIHNhdSBs4buHbmggY+G6o2kgdOG7lTogJXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTkzNworbXNnaWQgIi0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyByZXF1aXJlcyAtLWV4ZWMgb3IgLS1pbnRlcmFjdGl2ZSIKK21zZ3N0ciAiLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjIGPhuqduIC0tZXhlYyBoYXkgLS1pbnRlcmFjdGl2ZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTU3Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmUtbWVyZ2VzJyB3aXRoICctLXJlYmFzZS1tZXJnZXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4Mga+G6v3QgaOG7o3Ag4oCcLS1wcmVzZXJ2ZS1tZXJnZXPigJ0gduG7m2kg4oCcLS1yZWJhc2UtbWVyZ2Vz4oCdIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5NjEKIG1zZ2lkICIiCi0iZXJyb3I6IGNhbm5vdCBjb21iaW5lIGludGVyYWN0aXZlIG9wdGlvbnMgKC0taW50ZXJhY3RpdmUsIC0tZXhlYywgLS1yZWJhc2UtIgotIm1lcmdlcywgLS1wcmVzZXJ2ZS1tZXJnZXMsIC0ta2VlcC1lbXB0eSwgLS1yb290ICsgLS1vbnRvKSB3aXRoIGFtIG9wdGlvbnMgIgotIiglcykiCi1tc2dzdHIgIiIKLSJs4buXaToga2jDtG5nIHRo4buDIHThu5UgaOG7o3AgY8OhYyB0w7l5IGNo4buNbiB0xrDGoW5nIHTDoWMgKC0taW50ZXJhY3RpdmUsIC0tZXhlYywgLS0iCi0icmViYXNlLW1lcmdlcywgLS1wcmVzZXJ2ZS1tZXJnZXMsIC0ta2VlcC1lbXB0eSwgLS1yb290ICsgLS1vbnRvKSB24bubaSBjw6FjIHTDuXkgIgotImNo4buNbiBhbSAoJXMpIgorImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyciCittc2dzdHIgImtow7RuZyB0aOG7gyBr4bq/dCBo4bujcCDigJwtLXByZXNlcnZlLW1lcmdlc+KAnSB24bubaSDigJwtLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWPigJ0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTIzMQotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iZXJyb3I6IGNhbm5vdCBjb21iaW5lIG1lcmdlIG9wdGlvbnMgKC0tbWVyZ2UsIC0tc3RyYXRlZ3ksIC0tc3RyYXRlZ3ktb3B0aW9uKSAiCi0id2l0aCBhbSBvcHRpb25zICglcykiCi1tc2dzdHIgIiIKLSJs4buXaToga2jDtG5nIHRo4buDIGvhur90IGjhu6NwIGPDoWMgdMO5eSBjaOG7jW4gaMOyYSB0cuG7mW4gKC0tbWVyZ2UsIC0tc3RyYXRlZ3ksIC0tIgotInN0cmF0ZWd5LW9wdGlvbikgduG7m2kgbeG7mXQgdMO5eSBjaOG7jW4gYW0gKCVzKSIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjUxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjUzNgotbXNnaWQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmViYXNlLW1lcmdlcyciCi1tc2dzdHIgImzhu5dpOiBraMO0bmcgdGjhu4Mga+G6v3QgaOG7o3Ag4oCcLS1wcmVzZXJ2ZV9tZXJnZXPigJ0gduG7m2kg4oCcLS1yZWJhc2UtbWVyZ2Vz4oCdIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyNTYgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTQyCi1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3ktb3B0aW9uJyIKLW1zZ3N0ciAibOG7l2k6IGtow7RuZyB0aOG7gyBr4bq/dCBo4bujcCDigJwtLXJlYmFzZV9tZXJnZXPigJ0gduG7m2kg4oCcLS1zdHJhdGVneS1vcHRpb27igJ0iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI1OSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1NDQKLW1zZ2lkICJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneSciCi1tc2dzdHIgImzhu5dpOiBraMO0bmcgdGjhu4Mga+G6v3QgaOG7o3Ag4oCcLS1yZWJhc2UtbWVyZ2Vz4oCdIHbhu5tpIOKAnC0tc3RyYXRlZ3nigJ0iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI4MworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgdXBzdHJlYW0gJyVzJyIKIG1zZ3N0ciAidGjGsOG7o25nIG5ndeG7k24ga2jDtG5nIGjhu6NwIGzhu4cg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTI4OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxOTkxCiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBuZXcgcm9vdCBjb21taXQiCiBtc2dzdHIgIktow7RuZyB0aOG7gyB04bqhbyBs4bqnbiBjaHV54buDbiBnaWFvIGfhu5FjIG3hu5tpIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzMDcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAxNworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnOiBuZWVkIGV4YWN0bHkgb25lIG1lcmdlIGJhc2Ugd2l0aCBicmFuY2giCittc2dzdHIgIuKAnCVz4oCdOiBj4bqnbiBjaMOtbmggeMOhYyBt4buZdCBjxqEgc+G7nyBow7JhIHRy4buZbiB24bubaSBuaMOhbmgiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAyMAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiBuZWVkIGV4YWN0bHkgb25lIG1lcmdlIGJhc2UiCiBtc2dzdHIgIuKAnCVz4oCdOiBj4bqnbiBjaMOtbmggeMOhYyBt4buZdCBjxqEgc+G7nyBow7JhIHRy4buZbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzE0CisjOiBidWlsdGluL3JlYmFzZS5jOjIwMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBjb21taXQgJyVzJyIKIG1zZ3N0ciAiS2jDtG5nIGNo4buJIMSR4bq/biBt4buZdCBs4bqnbiBjaHV54buDbiBnaWFvIGtow7RuZyBo4bujcCBs4buHIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzMzkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICclcyciCiBtc2dzdHIgIm5naGnDqm0gdHLhu41uZzoga2jDtG5nIGPDsyBuaMOhbmgvbOG6p24gY2h1eeG7g24gZ2lhbyDigJwlc+KAnSBuaMawIHRo4bq/IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzNDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjM3Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkzMAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMDYyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZWY6ICVzIgogbXNnc3RyICJLaMO0bmcgY8OzIHRoYW0gY2hp4bq/dSBuw6BvIG5oxrAgdGjhur86ICVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzNTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA3MwogbXNnaWQgIkNvdWxkIG5vdCByZXNvbHZlIEhFQUQgdG8gYSByZXZpc2lvbiIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIHBow6JuIGdp4bqjaSBs4bqnbiBjaHV54buDbiBnaWFvIEhFQUQgxJHhur9uIG3hu5l0IMSRaeG7g20geMOpdCBkdXnhu4d0IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzOTkgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjY1CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMTEKIG1zZ2lkICJDYW5ub3QgYXV0b3N0YXNoIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgYXV0b3N0YXNoIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MDIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjExNAogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmV4cGVjdGVkIHN0YXNoIHJlc3BvbnNlOiAnJXMnIgogbXNnc3RyICJH4bq3cCDEkcOhcCDhu6luZyBzdGFzaCBraMO0bmcgY+G6p246IOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBmb3IgJyVzJyIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIHThuqFvIHRoxrAgbeG7pWMgY2hvIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJXNcbiIKIG1zZ3N0ciAixJDDoyB04bqhbyBhdXRvc3Rhc2g6ICVzXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxNAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTI2CiBtc2dpZCAiY291bGQgbm90IHJlc2V0IC0taGFyZCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHJlc2V0IC0taGFyZCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE1IGJ1aWx0aW4vcmVzZXQuYzoxMTMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiSEVBRCBpcyBub3cgYXQgJXMiCi1tc2dzdHIgIkhFQUQgaGnhu4duIGdp4budIHThuqFpICVzIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MzEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6Njc0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMzUKIG1zZ2lkICJQbGVhc2UgY29tbWl0IG9yIHN0YXNoIHRoZW0uIgogbXNnc3RyICJYaW4gaMOjeSBjaHV54buDbiBnaWFvIGhv4bq3YyB04bqhbSBj4bqldCAoc3Rhc2gpIGNow7puZy4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ1OAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIGPDuiBwaMOhcCDigJwlc+KAnSIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDcwCisjOiBidWlsdGluL3JlYmFzZS5jOjIxNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN3aXRjaCB0byAlcyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGNodXnhu4NuIMSR4bq/biAlcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjY5NwotIywgc2gtZm9ybWF0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxODAKIG1zZ2lkICJIRUFEIGlzIHVwIHRvIGRhdGUuIgogbXNnc3RyICJIRUFEIMSRw6MgY+G6rXAgbmjhuq10LiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgzCisjOiBidWlsdGluL3JlYmFzZS5jOjIxODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3VycmVudCBicmFuY2ggJXMgaXMgdXAgdG8gZGF0ZS5cbiIKIG1zZ3N0ciAiTmjDoW5oIGhp4buHbiB04bqhaSAlcyDEkcOjIMSRxrDhu6NjIGPhuq1wIG5o4bqtdCBy4buTaS5cbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDkxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjcwNwotIywgc2gtZm9ybWF0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxOTAKIG1zZ2lkICJIRUFEIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgogbXNnc3RyICJIRUFEIGhp4buHbiDEkcOjIMSRxrDhu6NjIGPhuq1wIG5o4bqtdCBy4buTaSwgYuG7iyDDqXAgYnXhu5ljIHJlYmFzZS4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkN1cnJlbnQgYnJhbmNoICVzIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuXG4iCiBtc2dzdHIgIk5ow6FuaCBoaeG7h24gdOG6oWkgJXMgxJHDoyDEkcaw4bujYyBj4bqtcCBuaOG6rXQgcuG7k2ksIGzhu4duaCByZWJhc2Ugw6lwIGJ14buZYy5cbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTAxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjIwOAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMjAwCiBtc2dpZCAiVGhlIHByZS1yZWJhc2UgaG9vayByZWZ1c2VkIHRvIHJlYmFzZS4iCiBtc2dzdHIgIk3Ds2MgKGhvb2spIHByZS1yZWJhc2UgdOG7qyBjaOG7kWkgcmViYXNlLiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTA4CisjOiBidWlsdGluL3JlYmFzZS5jOjIyMDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2hhbmdlcyB0byAlczpcbiIKIG1zZ3N0ciAiVGhheSDEkeG7lWkgdGjDoG5oICVzOlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJDaGFuZ2VzIGZyb20gJXMgdG8gJXM6XG4iCiBtc2dzdHIgIlRoYXkgxJHhu5VpIHThu6sgJXMgdGjDoG5oICVzOlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MzYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJGaXJzdCwgcmV3aW5kaW5nIGhlYWQgdG8gcmVwbGF5IHlvdXIgd29yayBvbiB0b3Agb2YgaXQuLi5cbiIKIG1zZ3N0ciAiIgogIlRyxrDhu5tjIHRpw6puLCBkaSBjaHV54buDbiBoZWFkIMSR4buDIHhlbSBs4bqhaSBjw6FjIGPDtG5nIHZp4buHYyB0csOqbiDEkeG7iW5oIGPhu6dhIG7Ds+KAplxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1NDMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjI0NAogbXNnaWQgIkNvdWxkIG5vdCBkZXRhY2ggSEVBRCIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIHTDoWNoIHLhu51pIEhFQUQiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTU1MgorIzogYnVpbHRpbi9yZWJhc2UuYzoyMjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhc3QtZm9yd2FyZGVkICVzIHRvICVzLlxuIgogbXNnc3RyICJDaHV54buDbi10aeG6v3AtbmhhbmggJXMgxJHhur9uICVzLlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoyNAotbXNnaWQgIm5vIEhFQUQ/IgotbXNnc3RyICJraMO0bmcgSEVBRD8iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjUxCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5ICVzIgotbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gJXMgdOG6oW0gdGjhu51pIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzo1NwotbXNnaWQgImNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgotbXNnc3RyICJraMO0bmcgdGjhu4MgxJHDoW5oIGThuqV1IGzDoCB0xrDGoW5nIHTDoWMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjEwMQotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3Qgb3BlbiAlcyIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gJXMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjExNAotbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSB0b2RvIGxpc3QiCi1tc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyBkYW5oIHPDoWNoIGPhuqduIGzDoG0iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjEyOQotbXNnaWQgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFs8b3B0aW9ucz5dIgotbXNnc3RyICJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPGPDoWMgdMO5eSBjaOG7jW4+XSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTQ4Ci1tc2dpZCAia2VlcCBlbXB0eSBjb21taXRzIgotbXNnc3RyICJnaeG7ryBs4bqhaSBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8gcuG7l25nIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTAgYnVpbHRpbi9yZXZlcnQuYzoxMjQKLW1zZ2lkICJhbGxvdyBjb21taXRzIHdpdGggZW1wdHkgbWVzc2FnZXMiCi1tc2dzdHIgImNo4bqlcCBuaOG6rW4gY2h1eeG7g24gZ2lhbyBtw6Aga2jDtG5nIGdoaSBjaMO6IGfDrCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTUxCi1tc2dpZCAicmViYXNlIG1lcmdlIGNvbW1pdHMiCi1tc2dzdHIgImPhuqNpIHThu5UgY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIGjDsmEgdHLhu5luIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTMKLW1zZ2lkICJrZWVwIG9yaWdpbmFsIGJyYW5jaCBwb2ludHMgb2YgY291c2lucyIKLW1zZ3N0ciAiZ2nhu68gY8OhYyDEkWnhu4NtIG5ow6FuaCBuZ3V5w6puIGLhuqNuIGPhu6dhIGPDoWMgYW5oIGVtIGjhu40iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1NQotbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEiCi1tc2dzdHIgImRpIGNodXnhu4NuIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBi4bqvdCDEkeG6p3UgYuG6sW5nIHNxdWFzaCEvZml4dXAhIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTYKLW1zZ2lkICJzaWduIGNvbW1pdHMiCi1tc2dzdHIgImvDvSBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1OAotbXNnaWQgImNvbnRpbnVlIHJlYmFzZSIKLW1zZ3N0ciAidGnhur9wIHThu6VjIGPhuqNpIHThu5UiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2MAotbXNnaWQgInNraXAgY29tbWl0IgotbXNnc3RyICJi4buPIHF1YSBs4bqnbiBjaHV54buDbiBnaWFvIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjEKLW1zZ2lkICJlZGl0IHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgInPhu61hIGRhbmggc8OhY2ggY+G6p24gbMOgbSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTYzCi1tc2dpZCAic2hvdyB0aGUgY3VycmVudCBwYXRjaCIKLW1zZ3N0ciAiaGnhu4NuIHRo4buLIG1p4bq/bmcgdsOhIGhp4buHbiBow6BuaCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTY2Ci1tc2dpZCAic2hvcnRlbiBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgInLDunQgbmfhuq9uIG3DoyBjaHV54buDbiBnaWFvIHRyb25nIGRhbmggc8OhY2ggY+G6p24gbMOgbSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTY4Ci1tc2dpZCAiZXhwYW5kIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAia2hhaSB0cmnhu4NuIG3DoyBjaHV54buDbiBnaWFvIHRyb25nIGRhbmggc8OhY2ggY+G6p24gbMOgbSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTcwCi1tc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAia2nhu4NtIHRyYSBkYW5oIHPDoWNoIGPhuqduIGzDoG0iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3MgotbXNnaWQgInJlYXJyYW5nZSBmaXh1cC9zcXVhc2ggbGluZXMiCi1tc2dzdHIgInPhuq9wIHjhur9wIGzhuqFpIGPDoWMgZMOybmcgZml4dXAvc3F1YXNoIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzQKLW1zZ2lkICJpbnNlcnQgZXhlYyBjb21tYW5kcyBpbiB0b2RvIGxpc3QiCi1tc2dzdHIgImNow6huIGPDoWMgbOG7h25oIHRo4buxYyB0aGkgdHJvbmcgZGFuaCBzw6FjaCBj4bqnbiBsw6BtIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzUKLW1zZ2lkICJvbnRvIgotbXNnc3RyICJsw6puIHRyw6puIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzcKLW1zZ2lkICJyZXN0cmljdC1yZXZpc2lvbiIKLW1zZ3N0ciAixJFp4buDbS14w6l0LWR1eeG7h3QtaOG6oW4tY2jhur8iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NwotbXNnaWQgInJlc3RyaWN0IHJldmlzaW9uIgotbXNnc3RyICLEkWnhu4NtIHjDqXQgZHV54buHdCBo4bqhbiBjaOG6vyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc4Ci1tc2dpZCAic3F1YXNoLW9udG8iCi1tc2dzdHIgInNxdWFzaC1sw6puLXRyw6puIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzkKLW1zZ2lkICJzcXVhc2ggb250byIKLW1zZ3N0ciAic3F1YXNoIGzDqm4gdHLDqm4iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MQotbXNnaWQgInRoZSB1cHN0cmVhbSBjb21taXQiCi1tc2dzdHIgImzhuqduIGNodXnhu4NuIGdpYW8gdGjGsOG7o25nIG5ndeG7k24iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MgotbXNnaWQgImhlYWQtbmFtZSIKLW1zZ3N0ciAidMOqbi3EkeG6p3UiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MgotbXNnaWQgImhlYWQgbmFtZSIKLW1zZ3N0ciAidMOqbiDEkeG6p3UiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4NwotbXNnaWQgInJlYmFzZSBzdHJhdGVneSIKLW1zZ3N0ciAiY2hp4bq/biBsxrDhu6NjIGPhuqNpIHThu5UiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4OAotbXNnaWQgInN0cmF0ZWd5LW9wdHMiCi1tc2dzdHIgInTDuXktY2jhu41uLWNoaeG6v24tbMaw4bujYyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg5Ci1tc2dpZCAic3RyYXRlZ3kgb3B0aW9ucyIKLW1zZ3N0ciAiY8OhYyB0w7l5IGNo4buNbiBjaGnhur9uIGzGsOG7o2MiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MAotbXNnaWQgInN3aXRjaC10byIKLW1zZ3N0ciAiY2h1eeG7g24txJHhur9uIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTEKLW1zZ2lkICJ0aGUgYnJhbmNoIG9yIGNvbW1pdCB0byBjaGVja291dCIKLW1zZ3N0ciAibmjDoW5oIGhheSBs4bqnbiBjaHV54buDbiBnaWFvIGzhuqduIGzhuqV5IHJhIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTIKLW1zZ2lkICJvbnRvLW5hbWUiCi1tc2dzdHIgIm9udG8tbmFtZSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkyCi1tc2dpZCAib250byBuYW1lIgotbXNnc3RyICJ0w6puIGzDqm4gdHLDqm4iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MwotbXNnaWQgImNtZCIKLW1zZ3N0ciAibOG7h25oIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTMKLW1zZ2lkICJ0aGUgY29tbWFuZCB0byBydW4iCi1tc2dzdHIgImzhu4duaCBtdeG7kW4gY2jhuqF5IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoyMjAKLW1zZ2lkICItLVtuby1dcmViYXNlLWNvdXNpbnMgaGFzIG5vIGVmZmVjdCB3aXRob3V0IC0tcmViYXNlLW1lcmdlcyIKLW1zZ3N0ciAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIGtow7RuZyBjw7MgdMOhYyBk4bulbmcga2hpIGtow7RuZyBjw7MgLS1yZWJhc2UtbWVyZ2VzIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoyMjYKLW1zZ2lkICJhIGJhc2UgY29tbWl0IG11c3QgYmUgcHJvdmlkZWQgd2l0aCAtLXVwc3RyZWFtIG9yIC0tb250byIKLW1zZ3N0ciAibOG6p24gY2h1eeG7g24gZ2lhbyBjxqEgc+G7jyBwaOG6o2kgxJHGsOG7o2MgY2jhu4kgxJHhu4tuaCB24bubaSAtLXVwc3RyZWFtIGhv4bq3YyAtLW9udG8iCi0KICM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MzMKIG1zZ2lkICJnaXQgcmVjZWl2ZS1wYWNrIDxnaXQtZGlyPiIKIG1zZ3N0ciAiZ2l0IHJlY2VpdmUtcGFjayA8dGjGsC1t4bulYy1naXQ+IgogCi0jOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjgzMAorIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzo4MjEKIG1zZ2lkICIiCiAiQnkgZGVmYXVsdCwgdXBkYXRpbmcgdGhlIGN1cnJlbnQgYnJhbmNoIGluIGEgbm9uLWJhcmUgcmVwb3NpdG9yeVxuIgogImlzIGRlbmllZCwgYmVjYXVzZSBpdCB3aWxsIG1ha2UgdGhlIGluZGV4IGFuZCB3b3JrIHRyZWUgaW5jb25zaXN0ZW50XG4iCkBAIC0xNTU5Miw3ICsxODc5Myw3IEBACiAixJDhu4MgY2jhuqVtIGThu6l0IGzhu51pIG5o4bqvbiBuw6B5IHbDoCB24bqrbiBnaeG7ryBjw6FjaCDhu6luZyB44butIG3hurdjIMSR4buLbmgsIGjDo3kgxJHhurd0XG4iCiAiYmnhur9uIGPhuqV1IGjDrG5oIOKAnHJlY2VpdmUuZGVueUN1cnJlbnRCcmFuY2jigJ0gdGjDoG5oIOKAnHJlZnVzZeKAnS4iCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODUwCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjg0MQogbXNnaWQgIiIKICJCeSBkZWZhdWx0LCBkZWxldGluZyB0aGUgY3VycmVudCBicmFuY2ggaXMgZGVuaWVkLCBiZWNhdXNlIHRoZSBuZXh0XG4iCiAiJ2dpdCBjbG9uZScgd29uJ3QgcmVzdWx0IGluIGFueSBmaWxlIGNoZWNrZWQgb3V0LCBjYXVzaW5nIGNvbmZ1c2lvbi5cbiIKQEAgLTE1NjEzLDI0ICsxODgxNCw3OSBAQAogIlxuIgogIsSQ4buDIGNo4bqlbSBk4bupdCBs4budaSBuaOG6r24gbsOgeSwgYuG6oW4gaMOjeSDEkeG6t3QgbsOzIHRow6BuaCDigJxyZWZ1c2XigJ0uIgogCi0jOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5MjkKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTkzOAogbXNnaWQgInF1aWV0IgogbXNnc3RyICJpbSBs4bq3bmciCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTk0MworIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTUyCiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIGRpcmVjdG9yeS4iCiBtc2dzdHIgIkLhuqFuIHBo4bqjaSBjaOG7iSDEkeG7i25oIHRoxrAgbeG7pWMuIgogCi0jOiBidWlsdGluL3JlZmxvZy5jOjU2MyBidWlsdGluL3JlZmxvZy5jOjU2OAorIzogYnVpbHRpbi9yZWZsb2cuYzoxNworbXNnaWQgIiIKKyJnaXQgcmVmbG9nIGV4cGlyZSBbLS1leHBpcmU9PHRpbWU+XSBbLS1leHBpcmUtdW5yZWFjaGFibGU9PHRpbWU+XSBbLS0iCisicmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1zdGFsZS1maXhdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gWy0tYWxsXSAiCisiPHJlZnM+Li4uIgorbXNnc3RyICIiCisiZ2l0IHJlZmxvZyBleHBpcmUgWy0tZXhwaXJlPTx0aW1lPl0gWy0tZXhwaXJlLXVucmVhY2hhYmxlPTx0aW1lPl0gWy0tIgorInJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tc3RhbGUtZml4XSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdIFstLWFsbF0gIgorIjxjw6FjIHRoYW0gY2hp4bq/dT7igKYiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MjIKK21zZ2lkICIiCisiZ2l0IHJlZmxvZyBkZWxldGUgWy0tcmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdICIKKyI8cmVmcz4uLi4iCittc2dzdHIgIiIKKyJnaXQgcmVmbG9nIGRlbGV0ZSBbLS1yZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gIgorIjxjw6FjIHRoYW0gY2hp4bq/dT7igKYiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MjUKK21zZ2lkICJnaXQgcmVmbG9nIGV4aXN0cyA8cmVmPiIKK21zZ3N0ciAiZ2l0IHJlZmxvZyBleGlzdHMgPHRoYW1fY2hp4bq/dT4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NTY4IGJ1aWx0aW4vcmVmbG9nLmM6NTczCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgdGltZXN0YW1wIgogbXNnc3RyICLigJwlc+KAnSBraMO0bmcgcGjhuqNpIGzDoCBk4bqldSB0aOG7nWkgZ2lhbiBo4bujcCBs4buHIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2CisjOiBidWlsdGluL3JlZmxvZy5jOjYwNgorIywgYy1mb3JtYXQKK21zZ2lkICJNYXJraW5nIHJlYWNoYWJsZSBvYmplY3RzLi4uIgorbXNnc3RyICLEkMOhbmggZOG6pXUgY8OhYyDEkeG7kWkgdMaw4bujbmcgdGnhur9wIGPhuq1uIMSRxrDhu6Nj4oCmIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwb2ludHMgbm93aGVyZSEiCittc2dzdHIgIiVzIGNo4bqzbmcgY2jhu4kgxJHhur9uIMSRw6J1IGPhuqMhIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY5NgorbXNnaWQgIm5vIHJlZmxvZyBzcGVjaWZpZWQgdG8gZGVsZXRlIgorbXNnc3RyICJjaMawYSBjaOG7iSByYSByZWZsb2cgxJHhu4MgeMOzYSIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgcmVmbG9nOiAlcyIKK21zZ3N0ciAia2jDtG5nIHBo4bqjaSBt4buZdCByZWZsb2c6ICVzIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjcxMAorIywgYy1mb3JtYXQKK21zZ2lkICJubyByZWZsb2cgZm9yICclcyciCittc2dzdHIgImtow7RuZyByZWZsb2cgY2hvIOKAnCVz4oCdIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc1NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZiBmb3JtYXQ6ICVzIgorbXNnc3RyICLEkeG7i25oIGThuqFuZyB0aGFtIGNoaeG6v3Uga2jDtG5nIGjhu6NwIGzhu4c6ICVzIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc2NQorbXNnaWQgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCittc2dzdHIgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcKIG1zZ2lkICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0iCiBtc2dzdHIgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNworIzogYnVpbHRpbi9yZW1vdGUuYzoxOAogbXNnaWQgIiIKICJnaXQgcmVtb3RlIGFkZCBbLXQgPGJyYW5jaD5dIFstbSA8bWFzdGVyPl0gWy1mXSBbLS10YWdzIHwgLS1uby10YWdzXSBbLS0iCiAibWlycm9yPTxmZXRjaHxwdXNoPl0gPG5hbWU+IDx1cmw+IgpAQCAtMTU2MzgsODIgKzE4ODk0LDgyIEBACiAiZ2l0IHJlbW90ZSBhZGQgWy10IDxuaMOhbmg+XSBbLW0gPG1hc3Rlcj5dIFstZl0gWy0tdGFnc3wtLW5vLXRhZ3NdIFstLSIKICJtaXJyb3I9PGZldGNofHB1c2g+XSA8dMOqbj4gPHVybD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTggYnVpbHRpbi9yZW1vdGUuYzozOAorIzogYnVpbHRpbi9yZW1vdGUuYzoxOSBidWlsdGluL3JlbW90ZS5jOjM5CiBtc2dpZCAiZ2l0IHJlbW90ZSByZW5hbWUgPG9sZD4gPG5ldz4iCiBtc2dzdHIgImdpdCByZW1vdGUgcmVuYW1lIDx0w6puLWPFqT4gPHTDqm4tbeG7m2k+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE5IGJ1aWx0aW4vcmVtb3RlLmM6NDMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjAgYnVpbHRpbi9yZW1vdGUuYzo0NAogbXNnaWQgImdpdCByZW1vdGUgcmVtb3ZlIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSByZW1vdmUgPHTDqm4+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIwIGJ1aWx0aW4vcmVtb3RlLmM6NDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjEgYnVpbHRpbi9yZW1vdGUuYzo0OQogbXNnaWQgImdpdCByZW1vdGUgc2V0LWhlYWQgPG5hbWU+ICgtYSB8IC0tYXV0byB8IC1kIHwgLS1kZWxldGUgfCA8YnJhbmNoPikiCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWhlYWQgPHTDqm4+ICgtYSB8IC0tYXV0byB8IC1kIHwgLS1kZWxldGUgfCA8bmjDoW5oPikiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjIKIG1zZ2lkICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gc2hvdyBbLW5dIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHNob3cgWy1uXSA8dMOqbj4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjMKIG1zZ2lkICJnaXQgcmVtb3RlIHBydW5lIFstbiB8IC0tZHJ5LXJ1bl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHBydW5lIFstbiB8IC0tZHJ5LXJ1bl0gPHTDqm4+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIzCisjOiBidWlsdGluL3JlbW90ZS5jOjI0CiBtc2dpZCAiIgogImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSB1cGRhdGUgWy1wIHwgLS1wcnVuZV0gWyg8Z3JvdXA+IHwgPHJlbW90ZT4pLi4uXSIKIG1zZ3N0ciAiIgogImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSB1cGRhdGUgWy1wIHwgLS1wcnVuZV0gWyg8bmjDs20+IHwgPG3DoXktY2jhu6c+KeKApl0iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjUKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyBbLS1hZGRdIDxuYW1lPiA8YnJhbmNoPi4uLiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgWy0tYWRkXSA8dMOqbj4gPG5ow6FuaD7igKYiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjUgYnVpbHRpbi9yZW1vdGUuYzo3NAorIzogYnVpbHRpbi9yZW1vdGUuYzoyNiBidWlsdGluL3JlbW90ZS5jOjc1CiBtc2dpZCAiZ2l0IHJlbW90ZSBnZXQtdXJsIFstLXB1c2hdIFstLWFsbF0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgWy0tcHVzaF0gWy0tYWxsXSA8dMOqbj4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjYgYnVpbHRpbi9yZW1vdGUuYzo3OQorIzogYnVpbHRpbi9yZW1vdGUuYzoyNyBidWlsdGluL3JlbW90ZS5jOjgwCiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIFstLXB1c2hdIDxuYW1lPiA8bmV3dXJsPiBbPG9sZHVybD5dIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgWy0tcHVzaF0gPHTDqm4+IDx1cmwtbeG7m2k+IFs8dXJsLWPFqT5dIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI3IGJ1aWx0aW4vcmVtb3RlLmM6ODAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjggYnVpbHRpbi9yZW1vdGUuYzo4MQogbXNnaWQgImdpdCByZW1vdGUgc2V0LXVybCAtLWFkZCA8bmFtZT4gPG5ld3VybD4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LXVybCAtLWFkZCA8dMOqbj4gPHVybC1t4bubaT4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjggYnVpbHRpbi9yZW1vdGUuYzo4MQorIzogYnVpbHRpbi9yZW1vdGUuYzoyOSBidWlsdGluL3JlbW90ZS5jOjgyCiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDxuYW1lPiA8dXJsPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDx0w6puPiA8dXJsPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzozMworIzogYnVpbHRpbi9yZW1vdGUuYzozNAogbXNnaWQgImdpdCByZW1vdGUgYWRkIFs8b3B0aW9ucz5dIDxuYW1lPiA8dXJsPiIKLW1zZ3N0ciAiZ2l0IHJlbW90ZSBhZGQgWzxjw6FjLXTDuXktY2jhu41uPl0gPHTDqm4+IDx1cmw+IgorbXNnc3RyICJnaXQgcmVtb3RlIGFkZCBbPGPDoWMgdMO5eSBjaOG7jW4+XSA8dMOqbj4gPHVybD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NTMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NTQKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyA8bmFtZT4gPGJyYW5jaD4uLi4iCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIDx0w6puPiA8bmjDoW5oPuKApiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo1NAorIzogYnVpbHRpbi9yZW1vdGUuYzo1NQogbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIC0tYWRkIDxuYW1lPiA8YnJhbmNoPi4uLiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgLS1hZGQgPHTDqm4+IDxuaMOhbmg+4oCmIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjU5CisjOiBidWlsdGluL3JlbW90ZS5jOjYwCiBtc2dpZCAiZ2l0IHJlbW90ZSBzaG93IFs8b3B0aW9ucz5dIDxuYW1lPiIKLW1zZ3N0ciAiZ2l0IHJlbW90ZSBzaG93IFs8Y8OhYy10w7l5LWNo4buNbj5dIDx0w6puPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBzaG93IFs8Y8OhYyB0w7l5IGNo4buNbj5dIDx0w6puPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NAorIzogYnVpbHRpbi9yZW1vdGUuYzo2NQogbXNnaWQgImdpdCByZW1vdGUgcHJ1bmUgWzxvcHRpb25zPl0gPG5hbWU+IgotbXNnc3RyICJnaXQgcmVtb3RlIHBydW5lIFs8Y8OhYy10w7l5LWNo4buNbj5dIDx0w6puPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBwcnVuZSBbPGPDoWMgdMO5eSBjaOG7jW4+XSA8dMOqbj4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NjkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzAKIG1zZ2lkICJnaXQgcmVtb3RlIHVwZGF0ZSBbPG9wdGlvbnM+XSBbPGdyb3VwPiB8IDxyZW1vdGU+XS4uLiIKLW1zZ3N0ciAiZ2l0IHJlbW90ZSB1cGRhdGUgWzxjw6FjLXTDuXktY2jhu41uPl0gWzxuaMOzbT4gfCA8bcOheS1jaOG7pz5d4oCmIgorbXNnc3RyICJnaXQgcmVtb3RlIHVwZGF0ZSBbPGPDoWMgdMO5eSBjaOG7jW4+XSBbPG5ow7NtPiB8IDxtw6F5LWNo4bunPl3igKYiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRpbmcgJXMiCiBtc2dzdHIgIsSQYW5nIGPhuq1wIG5o4bqtdCAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxCiBtc2dpZCAiIgogIi0tbWlycm9yIGlzIGRhbmdlcm91cyBhbmQgZGVwcmVjYXRlZDsgcGxlYXNlXG4iCiAiXHQgdXNlIC0tbWlycm9yPWZldGNoIG9yIC0tbWlycm9yPXB1c2ggaW5zdGVhZCIKQEAgLTE1NzIxLDgyICsxODk3Nyw5OCBAQAogIi0tbWlycm9yIG5ndXkgaGnhu4NtIHbDoCBraMO0bmcgZMO5bmcgbuG7r2E7IHhpbiBow6N5XG4iCiAiXHQgc+G7rSBk4bulbmcgdMO5eSBjaOG7jW4gLS1taXJyb3I9ZmV0Y2ggaG/hurdjIC0tbWlycm9yPXB1c2ggxJHhu4MgdGhheSB0aOG6vyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gbWlycm9yIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAia2jDtG5nIGhp4buDdSB0aGFtIHPhu5EgbcOheSBi4bqjbiBzYW8gKG1pcnJvcik6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2MworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjQKIG1zZ2lkICJmZXRjaCB0aGUgcmVtb3RlIGJyYW5jaGVzIgogbXNnc3RyICJs4bqleSB24buBIGPDoWMgbmjDoW5oIHThu6sgbcOheSBjaOG7pyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY2CiBtc2dpZCAiaW1wb3J0IGFsbCB0YWdzIGFuZCBhc3NvY2lhdGVkIG9iamVjdHMgd2hlbiBmZXRjaGluZyIKIG1zZ3N0ciAibmjhuq1wIHbDoG8gdOG6pXQgY+G6oyBjw6FjIMSR4buRaSB0xrDhu6NuZyB0aOG6uyB2w6AgdGjDoG5oIHBo4bqnbiBsacOqbiBxdWFuIGtoaSBs4bqleSB24buBIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjkKIG1zZ2lkICJvciBkbyBub3QgZmV0Y2ggYW55IHRhZyBhdCBhbGwgKC0tbm8tdGFncykiCiBtc2dzdHIgImhv4bq3YyBraMO0bmcgbOG6pXkgduG7gSBi4bqldCBr4buzIHRo4bq7IG7DoG8gKC0tbm8tdGFncykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcwCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MQogbXNnaWQgImJyYW5jaChlcykgdG8gdHJhY2siCiBtc2dzdHIgImPDoWMgbmjDoW5oIMSR4buDIHRoZW8gZMO1aSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcyCiBtc2dpZCAibWFzdGVyIGJyYW5jaCIKIG1zZ3N0ciAibmjDoW5oIG1hc3RlciIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTc0CiBtc2dpZCAic2V0IHVwIHJlbW90ZSBhcyBhIG1pcnJvciB0byBwdXNoIHRvIG9yIGZldGNoIGZyb20iCiBtc2dzdHIgIsSR4bq3dCBtw6F5IGNo4bunIChyZW1vdGUpIG5oxrAgbMOgIG3hu5l0IG3DoXkgYuG6o24gc2FvIMSR4buDIHB1c2ggaGF5IGZldGNoIHThu6sgxJHDsyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxODUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg2CiBtc2dpZCAic3BlY2lmeWluZyBhIG1hc3RlciBicmFuY2ggbWFrZXMgbm8gc2Vuc2Ugd2l0aCAtLW1pcnJvciIKIG1zZ3N0ciAixJFhbmcgY2jhu4kgxJHhu4tuaCBt4buZdCBuaMOhbmggbWFzdGVyIGtow7RuZyBo4bujcCBsw70gduG7m2kgdMO5eSBjaOG7jW4gLS1taXJyb3IiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg3CisjOiBidWlsdGluL3JlbW90ZS5jOjE4OAogbXNnaWQgInNwZWNpZnlpbmcgYnJhbmNoZXMgdG8gdHJhY2sgbWFrZXMgc2Vuc2Ugb25seSB3aXRoIGZldGNoIG1pcnJvcnMiCiBtc2dzdHIgImNo4buJIMSR4buLbmggbmjhu69uZyBuaMOhbmggxJHhu4MgdGhlbyBkw7VpIGNo4buJIGjhu6NwIGzDvSB24bubaSBjw6FjIOKAnGZldGNoIG1pcnJvcuKAnSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOTQgYnVpbHRpbi9yZW1vdGUuYzo2MzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk1IGJ1aWx0aW4vcmVtb3RlLmM6Njk2CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbW90ZSAlcyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgIm3DoXkgY2jhu6cgJXMgxJHDoyB04buTbiB04bqhaSBy4buTaS4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk4IGJ1aWx0aW4vcmVtb3RlLmM6NjQwCisjOiBidWlsdGluL3JlbW90ZS5jOjE5OSBidWlsdGluL3JlbW90ZS5jOjcwMAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHJlbW90ZSBuYW1lIgogbXNnc3RyICLigJwlc+KAnSBraMO0bmcgcGjhuqNpIHTDqm4gbcOheSBjaOG7pyBo4bujcCBs4buHIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIzOAorIzogYnVpbHRpbi9yZW1vdGUuYzoyMzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldHVwIG1hc3RlciAnJXMnIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgY8OgaSDEkeG6t3QgbmjDoW5oIG1hc3RlciDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzozNDQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBnZXQgZmV0Y2ggbWFwIGZvciByZWZzcGVjICVzIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgbOG6pXkgw6FuaCB44bqhIChtYXApIGZldGNoIGNobyDEkeG6t2MgdOG6oyB0aGFtIGNoaeG6v3UgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NDQzIGJ1aWx0aW4vcmVtb3RlLmM6NDUxCisjOiBidWlsdGluL3JlbW90ZS5jOjQ1MyBidWlsdGluL3JlbW90ZS5jOjQ2MQogbXNnaWQgIihtYXRjaGluZykiCiBtc2dzdHIgIihraOG7m3ApIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjQ1NQorIzogYnVpbHRpbi9yZW1vdGUuYzo0NjUKIG1zZ2lkICIoZGVsZXRlKSIKIG1zZ3N0ciAiKHjDs2EpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjYyOSBidWlsdGluL3JlbW90ZS5jOjc2NSBidWlsdGluL3JlbW90ZS5jOjg2NAorIzogYnVpbHRpbi9yZW1vdGUuYzo2NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHNldCAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhurd0IOKAnCVz4oCdIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjY1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlICVzIGNvbmZpZ3VyYXRpb24gcmVtb3RlLnB1c2hEZWZhdWx0IGluOlxuIgorIlx0JXM6JWRcbiIKKyJub3cgbmFtZXMgdGhlIG5vbi1leGlzdGVudCByZW1vdGUgJyVzJyIKK21zZ3N0ciAiIgorIkPhuqV1IGjDrG5oICVzIHJlbW90ZS5wdXNoRGVmYXVsdCB0cm9uZzpcbiIKKyJcdCVzOiVkXG4iCisiYsOieSBnaeG7nSB0w6puIHRyw6puIG3DoXkgY2jhu6cga2jDtG5nIHThu5NuIHThuqFpICclcyciCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6Njg5IGJ1aWx0aW4vcmVtb3RlLmM6ODMyIGJ1aWx0aW4vcmVtb3RlLmM6OTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVtb3RlOiAnJXMnIgogbXNnc3RyICJLaMO0bmcgY8OzIG3DoXkgY2jhu6cgbsOgbyBuaMawIHbhuq15OiDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NDYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW5hbWUgY29uZmlnIHNlY3Rpb24gJyVzJyB0byAnJXMnIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgxJHhu5VpIHTDqm4gcGjhuqduIGPhu6dhIGPhuqV1IGjDrG5oIHThu6sg4oCcJXPigJ0gdGjDoG5oIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjY2NgorIzogYnVpbHRpbi9yZW1vdGUuYzo3MjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vdCB1cGRhdGluZyBub24tZGVmYXVsdCBmZXRjaCByZWZzcGVjXG4iCkBAIC0xNTgwNywxNyArMTkwNzksMTcgQEAKICJcdCVzXG4iCiAiXHRYaW4gaMOjeSBj4bqtcCBuaOG6rXQgcGjhuqduIGPhuqV1IGjDrG5oIG3hu5l0IGPDoWNoIHRo4bunIGPDtG5nIG7hur91IHRo4bqleSBj4bqnbiB0aGnhur90LiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo3MDIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzY2CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbGV0aW5nICclcycgZmFpbGVkIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgeMOzYSDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo3MzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6ODAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNyZWF0aW5nICclcycgZmFpbGVkIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgdOG6oW8g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6ODAyCisjOiBidWlsdGluL3JlbW90ZS5jOjg3NgogbXNnaWQgIiIKICJOb3RlOiBBIGJyYW5jaCBvdXRzaWRlIHRoZSByZWZzL3JlbW90ZXMvIGhpZXJhcmNoeSB3YXMgbm90IHJlbW92ZWQ7XG4iCiAidG8gZGVsZXRlIGl0LCB1c2U6IgpAQCAtMTU4MjksMTE5ICsxOTEwMSwxMTkgQEAKICLEkWk7XG4iCiAixJHhu4MgeMOzYSDEkWksIHPhu60gZOG7pW5nOiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo4MTYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6ODkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgY29uZmlnIHNlY3Rpb24gJyVzJyIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIGfhu6EgYuG7jyBwaOG6p24gY+G6pXUgaMOsbmgg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTE3CisjOiBidWlsdGluL3JlbW90ZS5jOjk5MwogIywgYy1mb3JtYXQKIG1zZ2lkICIgbmV3IChuZXh0IGZldGNoIHdpbGwgc3RvcmUgaW4gcmVtb3Rlcy8lcykiCiBtc2dzdHIgIiBt4bubaSAobOG6p24gbOG6pXkgduG7gSB0aeG6v3AgdGhlbyBz4bq9IGzGsHUgdHJvbmcgcmVtb3Rlcy8lcykiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTIwCisjOiBidWlsdGluL3JlbW90ZS5jOjk5NgogbXNnaWQgIiB0cmFja2VkIgogbXNnc3RyICIgxJHGsOG7o2MgdGhlbyBkw7VpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkyMgorIzogYnVpbHRpbi9yZW1vdGUuYzo5OTgKIG1zZ2lkICIgc3RhbGUgKHVzZSAnZ2l0IHJlbW90ZSBwcnVuZScgdG8gcmVtb3ZlKSIKIG1zZ3N0ciAiIGPFqSByw61jaCAoZMO5bmcg4oCcZ2l0IHJlbW90ZSBwcnVuZeKAnSDEkeG7gyBn4buhIGLhu48pIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkyNAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDAwCiBtc2dpZCAiID8/PyIKIG1zZ3N0ciAiID8/PyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NjUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGJyYW5jaC4lcy5tZXJnZTsgY2Fubm90IHJlYmFzZSBvbnRvID4gMSBicmFuY2giCiBtc2dzdHIgImJyYW5jaC4lcy5tZXJnZSBraMO0bmcgaOG7o3AgbOG7hzsga2jDtG5nIHRo4buDIGPhuqNpIHThu5UgduG7gSBwaMOtYSA+IDEgbmjDoW5oIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk3NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDUwCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYmFzZXMgaW50ZXJhY3RpdmVseSBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAidGjhu7FjIGhp4buHbiByZWJhc2UgbeG7mXQgY8OhY2ggdMawxqFuZyB0w6FjIHRyw6puIG3DoXkgY2jhu6cgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTc2CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmViYXNlcyBpbnRlcmFjdGl2ZWx5ICh3aXRoIG1lcmdlcykgb250byByZW1vdGUgJXMiCiBtc2dzdHIgIiIKICJ0aOG7sWMgaGnhu4duIGPhuqNpIHThu5UgKHbhu5tpIGPDoWMgaMOyYSB0cuG7mW4pIG3hu5l0IGPDoWNoIHTGsMahbmcgdMOhYyBsw6puIHRyw6puIG3DoXkgY2jhu6cgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTc5CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmViYXNlcyBvbnRvIHJlbW90ZSAlcyIKIG1zZ3N0ciAidGjhu7FjIGhp4buHbiByZWJhc2UgdHLDqm4gbcOheSBjaOG7pyAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5ODMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIgbWVyZ2VzIHdpdGggcmVtb3RlICVzIgogbXNnc3RyICIgaMOyYSB0cuG7mW4gduG7m2kgbcOheSBjaOG7pyAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5ODYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJtZXJnZXMgd2l0aCByZW1vdGUgJXMiCiBtc2dzdHIgImjDsmEgdHLhu5luIHbhu5tpIG3DoXkgY2jhu6cgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg5CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJS0qcyAgICBhbmQgd2l0aCByZW1vdGUgJXNcbiIKIG1zZ3N0ciAiJS0qcyAgICB2w6AgduG7m2kgbcOheSBjaOG7pyAlc1xuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMzIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEwOAogbXNnaWQgImNyZWF0ZSIKIG1zZ3N0ciAidOG6oW8iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzNQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTExCiBtc2dpZCAiZGVsZXRlIgogbXNnc3RyICJ4w7NhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwMzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExNQogbXNnaWQgInVwIHRvIGRhdGUiCiBtc2dzdHIgIsSRw6MgY+G6rXAgbmjhuq10IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNDIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExOAogbXNnaWQgImZhc3QtZm9yd2FyZGFibGUiCiBtc2dzdHIgImPDsy10aOG7gy1jaHV54buDbi10aeG6v3AtbmhhbmgiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA0NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTIxCiBtc2dpZCAibG9jYWwgb3V0IG9mIGRhdGUiCiBtc2dzdHIgImThu68gbGnhu4d1IG7hu5lpIGLhu5kgxJHDoyBjxakiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICAlLSpzIGZvcmNlcyB0byAlLSpzICglcykiCiBtc2dzdHIgIiAgICAlLSpzIMOpcCBideG7mWMgdGjDoG5oICUtKnMgKCVzKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU1CisjOiBidWlsdGluL3JlbW90ZS5jOjExMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICUtKnMgcHVzaGVzIHRvICUtKnMgKCVzKSIKIG1zZ3N0ciAiICAgICUtKnMgxJHhuql5IGzDqm4gdGjDoG5oICUtKnMgKCVzKSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDU5CisjOiBidWlsdGluL3JlbW90ZS5jOjExMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICUtKnMgZm9yY2VzIHRvICVzIgogbXNnc3RyICIgICAgJS0qcyDDqXAgYnXhu5ljIHRow6BuaCAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDYyCisjOiBidWlsdGluL3JlbW90ZS5jOjExMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICUtKnMgcHVzaGVzIHRvICVzIgogbXNnc3RyICIgICAgJS0qcyDEkeG6qXkgbMOqbiB0aMOgbmggJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjA2CiBtc2dpZCAiZG8gbm90IHF1ZXJ5IHJlbW90ZXMiCiBtc2dzdHIgImtow7RuZyB0cnV5IHbhuqVuIGPDoWMgbcOheSBjaOG7pyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU3CisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiKiByZW1vdGUgJXMiCiBtc2dzdHIgIiogbcOheSBjaOG7pyAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU4CisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBGZXRjaCBVUkw6ICVzIgogbXNnc3RyICIgIFVSTCDEkeG7gyBs4bqleSB24buBOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU5IGJ1aWx0aW4vcmVtb3RlLmM6MTE3NSBidWlsdGluL3JlbW90ZS5jOjEzMTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIzNSBidWlsdGluL3JlbW90ZS5jOjEyNTEgYnVpbHRpbi9yZW1vdGUuYzoxMzkwCiBtc2dpZCAiKG5vIFVSTCkiCiBtc2dzdHIgIihraMO0bmcgY8OzIFVSTCkiCiAKQEAgLTE1OTQ5LDE5MCArMTkyMjEsMTgxIEBACiAjLiB3aXRoIHRoZSBvbmUgaW4gIiBGZXRjaCBVUkw6ICVzIgogIy4gdHJhbnNsYXRpb24uCiAjLgotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTczIGJ1aWx0aW4vcmVtb3RlLmM6MTE3NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjQ5IGJ1aWx0aW4vcmVtb3RlLmM6MTI1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIgIFB1c2ggIFVSTDogJXMiCiBtc2dzdHIgIiAgVVJMIMSR4buDIMSR4bqpeSBsw6puOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTc3IGJ1aWx0aW4vcmVtb3RlLmM6MTE3OSBidWlsdGluL3JlbW90ZS5jOjExODEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1MyBidWlsdGluL3JlbW90ZS5jOjEyNTUgYnVpbHRpbi9yZW1vdGUuYzoxMjU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgSEVBRCBicmFuY2g6ICVzIgogbXNnc3RyICIgIE5ow6FuaCBIRUFEOiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTc3CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTMKIG1zZ2lkICIobm90IHF1ZXJpZWQpIgogbXNnc3RyICIoa2jDtG5nIHnDqnUgY+G6p3UpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1NQogbXNnaWQgIih1bmtub3duKSIKIG1zZ3N0ciAiKGtow7RuZyBoaeG7g3UpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExODMKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiICBIRUFEIGJyYW5jaCAocmVtb3RlIEhFQUQgaXMgYW1iaWd1b3VzLCBtYXkgYmUgb25lIG9mIHRoZSBmb2xsb3dpbmcpOlxuIgogbXNnc3RyICIgIG5ow6FuaCBIRUFEIChIRUFEIG3DoXkgY2jhu6cgY2jGsGEgcsO1IHLDoG5nLCBjw7MgbOG6vSBsw6AgbeG7mXQgdHJvbmcgc+G7kSBzYXUpOlxuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExOTUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICIgIFJlbW90ZSBicmFuY2g6JXMiCiBtc2dpZF9wbHVyYWwgIiAgUmVtb3RlIGJyYW5jaGVzOiVzIgogbXNnc3RyWzBdICIgIE5o4buvbmcgbmjDoW5oIHRyw6puIG3DoXkgY2jhu6c6JXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE5OCBidWlsdGluL3JlbW90ZS5jOjEyMjQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3NCBidWlsdGluL3JlbW90ZS5jOjEzMDAKIG1zZ2lkICIgKHN0YXR1cyBub3QgcXVlcmllZCkiCiBtc2dzdHIgIiAodHLhuqFuZyB0aMOhaSBraMO0bmcgxJHGsOG7o2MgecOqdSBj4bqndSkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIwNworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjgzCiBtc2dpZCAiICBMb2NhbCBicmFuY2ggY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dpZF9wbHVyYWwgIiAgTG9jYWwgYnJhbmNoZXMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dzdHJbMF0gIiAgTmjhu69uZyBuaMOhbmggbuG7mWkgYuG7mSDEkcOjIMSRxrDhu6NjIGPhuqV1IGjDrG5oIGNobyBs4buHbmgg4oCcZ2l0IHB1bGzigJ06IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyMTUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5MQogbXNnaWQgIiAgTG9jYWwgcmVmcyB3aWxsIGJlIG1pcnJvcmVkIGJ5ICdnaXQgcHVzaCciCiBtc2dzdHIgIiAgcmVmcyBu4buZaSBi4buZIHPhur0gxJHGsOG7o2MgcGjhuqNuIGNoaeG6v3UgYuG7n2kgbOG7h25oIOKAnGdpdCBwdXNo4oCdIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyMjEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5NwogIywgYy1mb3JtYXQKIG1zZ2lkICIgIExvY2FsIHJlZiBjb25maWd1cmVkIGZvciAnZ2l0IHB1c2gnJXM6IgogbXNnaWRfcGx1cmFsICIgIExvY2FsIHJlZnMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdXNoJyVzOiIKIG1zZ3N0clswXSAiICBOaOG7r25nIHRoYW0gY2hp4bq/dSBu4buZaSBi4buZIMSRxrDhu6NjIGPhuqV1IGjDrG5oIGNobyBs4buHbmgg4oCcZ2l0IHB1c2jigJ0lczoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzE4CiBtc2dpZCAic2V0IHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCBhY2NvcmRpbmcgdG8gcmVtb3RlIgogbXNnc3RyICLEkeG6t3QgcmVmcy9yZW1vdGVzLzx0w6puPi9IRUFEIGNobyBwaMO5IGjhu6NwIHbhu5tpIG3DoXkgY2jhu6ciCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzIwCiBtc2dpZCAiZGVsZXRlIHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCIKIG1zZ3N0ciAieMOzYSByZWZzL3JlbW90ZXMvPHTDqm4+L0hFQUQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzM1CiBtc2dpZCAiQ2Fubm90IGRldGVybWluZSByZW1vdGUgSEVBRCIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIHjDoWMgxJHhu4tuaCDEkcaw4bujYyBIRUFEIG3DoXkgY2jhu6ciCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI2MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzM3CiBtc2dpZCAiTXVsdGlwbGUgcmVtb3RlIEhFQUQgYnJhbmNoZXMuIFBsZWFzZSBjaG9vc2Ugb25lIGV4cGxpY2l0bHkgd2l0aDoiCiBtc2dzdHIgIk5oaeG7gXUgbmjDoW5oIEhFQUQgbcOheSBjaOG7py4gSMOjeSBjaOG7jW4gcsO1IHLDoG5nIG3hu5l0OiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjcxCisjOiBidWlsdGluL3JlbW90ZS5jOjEzNDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGRlbGV0ZSAlcyIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIHjDs2EgYuG7jyAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjc5CisjOiBidWlsdGluL3JlbW90ZS5jOjEzNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgcmVmOiAlcyIKIG1zZ3N0ciAiS2jDtG5nIHBo4bqjaSBsw6AgdGhhbSBjaGnhur91IGjhu6NwIGzhu4c6ICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyODEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc2V0dXAgJXMiCiBtc2dzdHIgIktow7RuZyB0aOG7gyBjw6BpIMSR4bq3dCAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjk5CisjOiBidWlsdGluL3JlbW90ZS5jOjEzNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICVzIHdpbGwgYmVjb21lIGRhbmdsaW5nISIKIG1zZ3N0ciAiICVzIHPhur0gdHLhu58gdGjDoG5oIGtow7RuZyDEkeG6p3UgKGtow7RuZyDEkcaw4bujYyBxdeG6o24gbMO9KSEiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMwMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAlcyBoYXMgYmVjb21lIGRhbmdsaW5nISIKIG1zZ3N0ciAiICVzIMSRw6MgdHLhu58gdGjDoG5oIGtow7RuZyDEkeG6p3UgKGtow7RuZyDEkcaw4bujYyBxdeG6o24gbMO9KSEiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlBydW5pbmcgJXMiCiBtc2dzdHIgIsSQYW5nIHjDqW4gYuG7m3QgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxMQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVSTDogJXMiCiBtc2dzdHIgIlVSTDogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMyNworIzogYnVpbHRpbi9yZW1vdGUuYzoxNDAzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiAqIFt3b3VsZCBwcnVuZV0gJXMiCiBtc2dzdHIgIiAqIFtuw6puIHjDqW4gYuG7m3RdICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQwNgogIywgYy1mb3JtYXQKIG1zZ2lkICIgKiBbcHJ1bmVkXSAlcyIKIG1zZ3N0ciAiICogW8SRw6MgYuG7iyB4w6luXSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzc1CisjOiBidWlsdGluL3JlbW90ZS5jOjE0NTEKIG1zZ2lkICJwcnVuZSByZW1vdGVzIGFmdGVyIGZldGNoaW5nIgogbXNnc3RyICJj4bqvdCBtw6F5IGNo4bunIHNhdSBraGkgbOG6pXkgduG7gSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDM4IGJ1aWx0aW4vcmVtb3RlLmM6MTQ5MiBidWlsdGluL3JlbW90ZS5jOjE1NjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUxNCBidWlsdGluL3JlbW90ZS5jOjE1NjggYnVpbHRpbi9yZW1vdGUuYzoxNjM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVtb3RlICclcyciCiBtc2dzdHIgIktow7RuZyBjw7MgbcOheSBjaOG7pyBuw6BvIGPDsyB0w6puIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0NTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzMAogbXNnaWQgImFkZCBicmFuY2giCiBtc2dzdHIgInRow6ptIG5ow6FuaCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDYxCisjOiBidWlsdGluL3JlbW90ZS5jOjE1MzcKIG1zZ2lkICJubyByZW1vdGUgc3BlY2lmaWVkIgogbXNnc3RyICJjaMawYSBjaOG7iSByYSBtw6F5IGNo4bunIG7DoG8iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ3OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTU0CiBtc2dpZCAicXVlcnkgcHVzaCBVUkxzIHJhdGhlciB0aGFuIGZldGNoIFVSTHMiCiBtc2dzdHIgInRydXkgduG6pW4gxJHhuql5IFVSTCB0aGF5IHbDrCBs4bqleSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDgwCisjOiBidWlsdGluL3JlbW90ZS5jOjE1NTYKIG1zZ2lkICJyZXR1cm4gYWxsIFVSTHMiCiBtc2dzdHIgInRy4bqjIHbhu4EgbeG7jWkgVVJMIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1MDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBVUkxzIGNvbmZpZ3VyZWQgZm9yIHJlbW90ZSAnJXMnIgogbXNnc3RyICJraMO0bmcgY8OzIFVSTCBuw6BvIMSRxrDhu6NjIGPhuqV1IGjDrG5oIGNobyBuaMOhbmgg4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzNAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEwCiBtc2dpZCAibWFuaXB1bGF0ZSBwdXNoIFVSTHMiCiBtc2dzdHIgIsSR4bqpeSBjw6FjIOKAnFVSTOKAnSBi4bqxbmcgdGF5IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1MzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYxMgogbXNnaWQgImFkZCBVUkwiCiBtc2dzdHIgInRow6ptIFVSTCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM4CisjOiBidWlsdGluL3JlbW90ZS5jOjE2MTQKIG1zZ2lkICJkZWxldGUgVVJMcyIKIG1zZ3N0ciAieMOzYSBVUkxzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE1NDUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYyMQogbXNnaWQgIi0tYWRkIC0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS1hZGQgLS1kZWxldGUga2jDtG5nIGjhu6NwIGzDvSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTg0CisjOiBidWlsdGluL3JlbW90ZS5jOjE2NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBvbGQgVVJMIHBhdHRlcm46ICVzIgogbXNnc3RyICJLaeG7g3UgbeG6q3UgVVJMIGPFqSBraMO0bmcgaOG7o3AgbOG7hzogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU5MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggVVJMIGZvdW5kOiAlcyIKIG1zZ3N0ciAiS2jDtG5nIHTDrG0gdGjhuqV5IFVSTCBuaMawIHbhuq15OiAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTk0CisjOiBidWlsdGluL3JlbW90ZS5jOjE2NzAKIG1zZ2lkICJXaWxsIG5vdCBkZWxldGUgYWxsIG5vbi1wdXNoIFVSTHMiCiBtc2dzdHIgIlPhur0ga2jDtG5nIHjDs2Egbmjhu69uZyDEkeG7i2EgY2jhu4kgVVJMIGtow7RuZy1wdXNoIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2MTAKLW1zZ2lkICJiZSB2ZXJib3NlOyBtdXN0IGJlIHBsYWNlZCBiZWZvcmUgYSBzdWJjb21tYW5kIgotbXNnc3RyICJjaGkgdGnhur90OyBwaOG6o2kgxJHGsOG7o2MgxJHhurd0IHRyxrDhu5tjIG3hu5l0IGzhu4duaC1jb24iCi0KLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY0MQotIywgYy1mb3JtYXQKLW1zZ2lkICJVbmtub3duIHN1YmNvbW1hbmQ6ICVzIgotbXNnc3RyICJLaMO0bmcgaGnhu4N1IGPDonUgbOG7h25oIGNvbjogJXMiCi0KLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MjIKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjMKIG1zZ2lkICJnaXQgcmVwYWNrIFs8b3B0aW9ucz5dIgotbXNnc3RyICJnaXQgcmVwYWNrIFs8Y8OhYy10w7l5LWNo4buNbj5dIgorbXNnc3RyICJnaXQgcmVwYWNrIFs8Y8OhYyB0w7l5IGNo4buNbj5dIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI3CisjOiBidWlsdGluL3JlcGFjay5jOjI4CiBtc2dpZCAiIgogIkluY3JlbWVudGFsIHJlcGFja3MgYXJlIGluY29tcGF0aWJsZSB3aXRoIGJpdG1hcCBpbmRleGVzLiAgVXNlXG4iCiAiLS1uby13cml0ZS1iaXRtYXAtaW5kZXggb3IgZGlzYWJsZSB0aGUgcGFjay53cml0ZWJpdG1hcHMgY29uZmlndXJhdGlvbi4iCkBAIC0xNjE0MCw5NSArMTk0MDMsMTM0IEBACiAiR2lhIHTEg25nIHJlcGFjayBsw6Aga2jDtG5nIHTGsMahbmcgdGjDrWNoIHbhu5tpIGNo4buJIG3hu6VjIGJpdG1hcC4gRMO5bmdcbiIKICItLW5vLXdyaXRlLWJpdG1hcC1pbmRleCBoYXkgdOG6r3QgY+G6pXUgaMOsbmggcGFjay53cml0ZWJpdG1hcHMuIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5NAorIzogYnVpbHRpbi9yZXBhY2suYzoxOTEKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICIiCisia2jDtG5nIHRo4buDIGzhuqV5IHRow7RuZyB0aW4gdGjhu5FuZyBrw6ogcGFjay1vYmplY3RzIMSR4buDIG3DoCDEkcOzbmcgZ8OzaSBs4bqhaSBjw6FjIMSR4buRaSAiCisidMaw4bujbmcgaOG7qWEgaOG6uW4iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjMwIGJ1aWx0aW4vcmVwYWNrLmM6NDE2Cittc2dpZCAicmVwYWNrOiBFeHBlY3RpbmcgZnVsbCBoZXggb2JqZWN0IElEIGxpbmVzIG9ubHkgZnJvbSBwYWNrLW9iamVjdHMuIgorbXNnc3RyICIiCisicmVwYWNrOiDEkGFuZyBjaOG7iSBj4bqnbiBjw6FjIGTDsm5nIElEIMSR4buRaSB0xrDhu6NuZyBk4bqhbmcgdGjhuq1wIGzhu6VjIHBow6JuIMSR4bqneSBk4bunIHThu6sgcGFjay0iCisib2JqZWN0cy4iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjU0Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCBwYWNrLW9iamVjdHMgdG8gcmVwYWNrIHByb21pc29yIG9iamVjdHMiCittc2dzdHIgImtow7RuZyB0aOG7gyBob8OgbiB04bqldCBwYWNrLW9iamVjdHMgxJHhu4MgxJHDs25nIGfDs2kgY8OhYyDEkeG7kWkgdMaw4bujbmcgaOG7qWEgaOG6uW4iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjkyCiBtc2dpZCAicGFjayBldmVyeXRoaW5nIGluIGEgc2luZ2xlIHBhY2siCiBtc2dzdHIgIsSRw7NuZyBnw7NpIG3hu41pIHRo4bupIHRyb25nIG3hu5l0IGfDs2kgxJHGoW4iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk2CisjOiBidWlsdGluL3JlcGFjay5jOjI5NAogbXNnaWQgInNhbWUgYXMgLWEsIGFuZCB0dXJuIHVucmVhY2hhYmxlIG9iamVjdHMgbG9vc2UiCiBtc2dzdHIgImdp4buRbmcgduG7m2kgLWEsIHbDoCBjaOG7iW5oIHPhu61hIGPDoWMgxJHhu5FpIHTGsOG7o25nIGtow7RuZyDEkeG7jWMgxJHGsOG7o2MgdGhp4bq/dSBzw7N0IgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5OQorIzogYnVpbHRpbi9yZXBhY2suYzoyOTcKIG1zZ2lkICJyZW1vdmUgcmVkdW5kYW50IHBhY2tzLCBhbmQgcnVuIGdpdC1wcnVuZS1wYWNrZWQiCiBtc2dzdHIgInjDs2EgYuG7jyBjw6FjIGfDs2kgZMawIHRo4burYSwgdsOgIGNo4bqheSBnaXQtcHJ1bmUtcGFja2VkIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMwMQorIzogYnVpbHRpbi9yZXBhY2suYzoyOTkKIG1zZ2lkICJwYXNzIC0tbm8tcmV1c2UtZGVsdGEgdG8gZ2l0LXBhY2stb2JqZWN0cyIKIG1zZ3N0ciAiY2h1eeG7g24gLS1uby1yZXVzZS1kZWx0YSBjaG8gZ2l0LXBhY2stb2JqZWN0cyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDMKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCiBtc2dpZCAicGFzcyAtLW5vLXJldXNlLW9iamVjdCB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICJjaHV54buDbiAtLW5vLXJldXNlLW9iamVjdCBjaG8gZ2l0LXBhY2stb2JqZWN0cyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDUKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAzCiBtc2dpZCAiZG8gbm90IHJ1biBnaXQtdXBkYXRlLXNlcnZlci1pbmZvIgogbXNnc3RyICJraMO0bmcgY2jhuqF5IGdpdC11cGRhdGUtc2VydmVyLWluZm8iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA4CisjOiBidWlsdGluL3JlcGFjay5jOjMwNgogbXNnaWQgInBhc3MgLS1sb2NhbCB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICJjaHV54buDbiAtLWxvY2FsIGNobyBnaXQtcGFjay1vYmplY3RzIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxMAorIzogYnVpbHRpbi9yZXBhY2suYzozMDgKIG1zZ2lkICJ3cml0ZSBiaXRtYXAgaW5kZXgiCiBtc2dzdHIgImdoaSBt4bulYyBs4bulYyDDoW5oIHjhuqEiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEyCisjOiBidWlsdGluL3JlcGFjay5jOjMxMAogbXNnaWQgInBhc3MgLS1kZWx0YS1pc2xhbmRzIHRvIGdpdC1wYWNrLW9iamVjdHMiCiBtc2dzdHIgImNodXnhu4NuIC0tZGVsdGEtaXNsYW5kcyBjaG8gZ2l0LXBhY2stb2JqZWN0cyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTMKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzExCiBtc2dpZCAiYXBwcm94aWRhdGUiCiBtc2dzdHIgIm5nw6B5IMaw4bubYyB0w61uaCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTQKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEyCiBtc2dpZCAid2l0aCAtQSwgZG8gbm90IGxvb3NlbiBvYmplY3RzIG9sZGVyIHRoYW4gdGhpcyIKIG1zZ3N0ciAiduG7m2kgLUEsIGPDoWMgxJHhu5FpIHTGsOG7o25nIGPFqSBoxqFuIGtob+G6o25nIHRo4budaSBnaWFuIG7DoHkgdGjDrCBraMO0bmcgYuG7iyBt4bqldCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTYKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE0CiBtc2dpZCAid2l0aCAtYSwgcmVwYWNrIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgInbhu5tpIC1hLCDEkcOzbmcgZ8OzaSBs4bqhaSBjw6FjIMSR4buRaSB0xrDhu6NuZyBraMO0bmcgdGjhu4MgxJHhu41jIMSRxrDhu6NjIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxOAorIzogYnVpbHRpbi9yZXBhY2suYzozMTYKIG1zZ2lkICJzaXplIG9mIHRoZSB3aW5kb3cgdXNlZCBmb3IgZGVsdGEgY29tcHJlc3Npb24iCiBtc2dzdHIgImvDrWNoIHRoxrDhu5tjIGPhu61hIHPhu5UgxJHGsOG7o2MgZMO5bmcgY2hvIG7DqW4g4oCcZGVsdGHigJ0iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE5IGJ1aWx0aW4vcmVwYWNrLmM6MzI1CisjOiBidWlsdGluL3JlcGFjay5jOjMxNyBidWlsdGluL3JlcGFjay5jOjMyMwogbXNnaWQgImJ5dGVzIgogbXNnc3RyICJieXRlIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyMAorIzogYnVpbHRpbi9yZXBhY2suYzozMTgKIG1zZ2lkICJzYW1lIGFzIHRoZSBhYm92ZSwgYnV0IGxpbWl0IG1lbW9yeSBzaXplIGluc3RlYWQgb2YgZW50cmllcyBjb3VudCIKIG1zZ3N0ciAiZ2nhu5FuZyBuaMawIHRyw6puLCBuaMawbmcgZ2nhu5tpIGjhuqFuIGvDrWNoIHRoxrDhu5tjIGLhu5kgbmjhu5sgaGF5IHbDrCBz4buRIGzGsOG7o25nIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyMgorIzogYnVpbHRpbi9yZXBhY2suYzozMjAKIG1zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gZGVsdGEgZGVwdGgiCiBtc2dzdHIgImdp4bubaSBo4bqhbiDEkeG7mSBzw6J1IHThu5FpIMSRYSBj4bunYSDigJxkZWx0YeKAnSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMjQKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIyCiBtc2dpZCAibGltaXRzIHRoZSBtYXhpbXVtIG51bWJlciBvZiB0aHJlYWRzIgogbXNnc3RyICJnaeG7m2kgaOG6oW4gc+G7kSBsxrDhu6NuZyB04buRaSDEkWEgdHV54bq/biB0csOsbmgiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI2CisjOiBidWlsdGluL3JlcGFjay5jOjMyNAogbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIHBhY2tmaWxlIgogbXNnc3RyICJrw61jaCB0aMaw4bubYyB04buRaSDEkWEgY2hvIHThu6tuZyB04bqtcCB0aW4gZ8OzaSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMjgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI2CiBtc2dpZCAicmVwYWNrIG9iamVjdHMgaW4gcGFja3MgbWFya2VkIHdpdGggLmtlZXAiCiBtc2dzdHIgIsSRw7NuZyBnw7NpIGzhuqFpIGPDoWMgxJHhu5FpIHTGsOG7o25nIHRyb25nIGPDoWMgZ8OzaSDEkcOjIMSRw6FuaCBk4bqldSBi4bqxbmcgLmtlZXAiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzMwCisjOiBidWlsdGluL3JlcGFjay5jOjMyOAogbXNnaWQgImRvIG5vdCByZXBhY2sgdGhpcyBwYWNrIgogbXNnc3RyICLEkeG7q25nIMSRw7NuZyBnw7NpIGzhuqFpIGfDs2kgbsOgeSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozNDAKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzM4CiBtc2dpZCAiY2Fubm90IGRlbGV0ZSBwYWNrcyBpbiBhIHByZWNpb3VzLW9iamVjdHMgcmVwbyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIHjDs2EgY8OhYyBnw7NpIHRyb25nIG3hu5l0IGtobyDEkeG7kWlfdMaw4bujbmdfdsSpX8SR4bqhaSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozNDQKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQyCiBtc2dpZCAiLS1rZWVwLXVucmVhY2hhYmxlIGFuZCAtQSBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWtlZXAtdW5yZWFjaGFibGUgdsOgIC1BIHh1bmcga2jhuq9jIG5oYXUiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6NTI3CisjOiBidWlsdGluL3JlcGFjay5jOjQyNQorbXNnaWQgIk5vdGhpbmcgbmV3IHRvIHBhY2suIgorbXNnc3RyICJLaMO0bmcgY8OzIGfDrCBt4bubaSDEkeG7gyBtw6AgxJHDs25nIGfDs2kuIgorCisjOiBidWlsdGluL3JlcGFjay5jOjQ4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV0FSTklORzogU29tZSBwYWNrcyBpbiB1c2UgaGF2ZSBiZWVuIHJlbmFtZWQgYnlcbiIKKyJXQVJOSU5HOiBwcmVmaXhpbmcgb2xkLSB0byB0aGVpciBuYW1lLCBpbiBvcmRlciB0b1xuIgorIldBUk5JTkc6IHJlcGxhY2UgdGhlbSB3aXRoIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGVcbiIKKyJXQVJOSU5HOiBmaWxlLiAgQnV0IHRoZSBvcGVyYXRpb24gZmFpbGVkLCBhbmQgdGhlXG4iCisiV0FSTklORzogYXR0ZW1wdCB0byByZW5hbWUgdGhlbSBiYWNrIHRvIHRoZWlyXG4iCisiV0FSTklORzogb3JpZ2luYWwgbmFtZXMgYWxzbyBmYWlsZWQuXG4iCisiV0FSTklORzogUGxlYXNlIHJlbmFtZSB0aGVtIGluICVzIG1hbnVhbGx5OlxuIgorbXNnc3RyICIiCisiQ+G6ok5IIELDgU86IE3hu5l0IHPhu5EgZ8OzaSDEkWFuZyBkw7luZyB24burYSDEkcaw4bujYyDEkeG7lWkgdMOqbiBi4bqxbmcgY8OhY2hcbiIKKyJD4bqiTkggQsOBTzogxJHDoW5oIHRp4buBbiB04buRIG9sZC0gdsOgbyB0w6puIGPhu6dhIGNow7puZywgbeG7pWMgxJHDrWNoIGzDoFxuIgorIkPhuqJOSCBCw4FPOiB0aGF5IGNow7puZyBi4bqxbmcgcGhpw6puIGLhuqNuIG3hu5tpIGPhu6dhIHThuq1wXG4iCisiQ+G6ok5IIELDgU86IHRpbi4gTmjGsG5nIHRoYW8gdMOhYyBs4bqhaSBn4bq3cCBs4buXaSwgdsOgIG7hu5dcbiIKKyJD4bqiTkggQsOBTzogbOG7sWMgxJHhu4MgxJHhu5VpIG5nxrDhu6NjIGzhuqFpIHTDqm4gY2jDum5nIGNobyDEkcO6bmcgduG7m2kgdMOqblxuIgorIkPhuqJOSCBCw4FPOiBuZ3V5w6puIGfhu5FjIGPhu6dhIG7DsyBjxaluZyBn4bq3cCBs4buXaS5cbiIKKyJD4bqiTkggQsOBTzogVnVpIGzDsm5nIMSR4buVaSB0w6puIGNow7puZyB0cm9uZyAlcyBi4bqxbmcgdGF5OlxuIgorCisjOiBidWlsdGluL3JlcGFjay5jOjUzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICclcyciCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBn4buhIGLhu48g4oCcJXPigJ0iCkBAIC0xNjI1NywxMiArMTk1NTksNyBAQAogbXNnaWQgImdpdCByZXBsYWNlIFstLWZvcm1hdD08Zm9ybWF0Pl0gWy1sIFs8cGF0dGVybj5dXSIKIG1zZ3N0ciAiZ2l0IHJlcGxhY2UgWy0tZm9ybWF0PTzEkeG7i25oX2ThuqFuZz5dIFstbCBbPG3huqt1Pl1dIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1OCBidWlsdGluL3JlcGxhY2UuYzoyMDMgYnVpbHRpbi9yZXBsYWNlLmM6MjA2Ci0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYiCi1tc2dzdHIgImfhurdwIGzhu5dpIGtoaSBwaMOibiBnaeG6o2kg4oCcJXPigJ0gbmjGsCBsw6AgbeG7mXQgdGhhbSBjaGnhur91IGjhu6NwIGzhu4ciCi0KLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjg2CisjOiBidWlsdGluL3JlcGxhY2UuYzo5MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiaW52YWxpZCByZXBsYWNlIGZvcm1hdCAnJXMnXG4iCkBAIC0xNjI3MSwyNyArMTk1NjgsMjcgQEAKICLEkeG7i25oIGThuqFuZyB0aGF5IHRo4bq/IGtow7RuZyBo4bujcCBs4buHIOKAnCVz4oCdXG4iCiAixJHhu4tuaCBk4bqhbmcgaOG7o3AgbOG7hyBsw6Ag4oCcc2hvcnTigJ0sIOKAnG1lZGl1beKAnSB2w6Ag4oCcbG9uZ+KAnSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTIxCisjOiBidWlsdGluL3JlcGxhY2UuYzoxMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZSByZWYgJyVzJyBub3QgZm91bmQiCiBtc2dzdHIgImtow7RuZyB0w6xtIHRo4bqleSB0aGFtIGNoaeG6v3UgdGhheSB0aOG6vyDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTM3CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCByZXBsYWNlIHJlZiAnJXMnIgogbXNnc3RyICLEkMOjIHjDs2EgdGhhbSBjaGnhur91IHRoYXkgdGjhur8g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE0OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVmIG5hbWUiCiBtc2dzdHIgIuKAnCVz4oCdIGtow7RuZyBwaOG6o2kgdMOqbiB0aGFtIGNoaeG6v3UgaOG7o3AgbOG7hyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTU0CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZSByZWYgJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAidGhhbSBjaGnhur91IHRoYXkgdGjhur8g4oCcJXPigJ0gxJHDoyB04buTbiB04bqhaSBy4buTaSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTc0CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk9iamVjdHMgbXVzdCBiZSBvZiB0aGUgc2FtZSB0eXBlLlxuIgpAQCAtMTYzMDIsNzYgKzE5NTk5LDgxIEBACiAi4oCcJXPigJ0gY2jhu4kgxJHhur9uIMSR4buRaSB0xrDhu6NuZyB0aGF5IHRo4bq/IGPhu6dhIGtp4buDdSDigJwlc+KAnVxuIgogInRyb25nIGtoaSDigJwlc+KAnSBjaOG7iSDEkeG6v24gxJHhu5FpIHTGsOG7o25nIHRoYW0gY2hp4bq/dSBj4bunYSBraeG7g3Ug4oCcJXPigJ0uIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyMjUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjIyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGluZyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58g4oCcJXPigJ0gxJHhu4MgZ2hpIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyMzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI0MgogbXNnaWQgImNhdC1maWxlIHJlcG9ydGVkIGZhaWx1cmUiCiBtc2dzdHIgImNhdC1maWxlIMSRw6MgYsOhbyBjw6FvIGfhurdwIGzhu5dpIG5naGnDqm0gdHLhu41uZyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjU0CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHJlYWRpbmciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIOKAnCVz4oCdIMSR4buDIMSR4buNYyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjY4Ci1tc2dpZCAidW5hYmxlIHRvIHNwYXduIG1rdHJlZSIKLW1zZ3N0ciAia2jDtG5nIHRo4buDIHNwYXduIG1rdHJlZSIKLQogIzogYnVpbHRpbi9yZXBsYWNlLmM6MjcyCittc2dpZCAidW5hYmxlIHRvIHNwYXduIG1rdHJlZSIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHNpbmggdGnhur9uIHRyw6xuaCBjb24gbWt0cmVlIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNzYKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmcm9tIG1rdHJlZSIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyB04burIG1rdHJlZSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjgxCisjOiBidWlsdGluL3JlcGxhY2UuYzoyODUKIG1zZ2lkICJta3RyZWUgcmVwb3J0ZWQgZmFpbHVyZSIKIG1zZ3N0ciAibWt0cmVlIMSRw6MgYsOhbyBjw6FvIGfhurdwIGzhu5dpIG5naGnDqm0gdHLhu41uZyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg1CisjOiBidWlsdGluL3JlcGxhY2UuYzoyODkKIG1zZ2lkICJta3RyZWUgZGlkIG5vdCByZXR1cm4gYW4gb2JqZWN0IG5hbWUiCiBtc2dzdHIgIm1rdHJlZSDEkcOjIGtow7RuZyB0cuG6oyB24buBIG3hu5l0IHTDqm4gxJHhu5FpIHTGsOG7o25nIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyOTQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZnN0YXQgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBmc3RhdCAlcyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjk5CisjOiBidWlsdGluL3JlcGxhY2UuYzozMDMKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgb2JqZWN0IHRvIGRhdGFiYXNlIgogbXNnc3RyICJraMO0bmcgdGjhu4MgZ2hpIMSR4buRaSB0xrDhu6NuZyB2w6BvIGPGoSBz4bufIGThu68gbGnhu4d1IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozMTggYnVpbHRpbi9yZXBsYWNlLmM6MzcxIGJ1aWx0aW4vcmVwbGFjZS5jOjQxNQotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDQ1CisjOiBidWlsdGluL3JlcGxhY2UuYzozMjIgYnVpbHRpbi9yZXBsYWNlLmM6Mzc4IGJ1aWx0aW4vcmVwbGFjZS5jOjQyNAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnIgogbXNnc3RyICJraMO0bmcgcGjhuqNpIGzDoCB0w6puIMSR4buRaSB0xrDhu6NuZyBo4bujcCBs4buHOiDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzIyCisjOiBidWlsdGluL3JlcGxhY2UuYzozMjYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdldCBvYmplY3QgdHlwZSBmb3IgJXMiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSBraeG7g3UgxJHhu5FpIHTGsOG7o25nIGNobyAlcyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzM4CisjOiBidWlsdGluL3JlcGxhY2UuYzozNDIKIG1zZ2lkICJlZGl0aW5nIG9iamVjdCBmaWxlIGZhaWxlZCIKIG1zZ3N0ciAidmnhu4djIHPhu61hIHThuq1wIHRpbiDEkeG7kWkgdMaw4bujbmcgZ+G6t3AgbOG7l2kiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjM0NworIzogYnVpbHRpbi9yZXBsYWNlLmM6MzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBvYmplY3QgaXMgdGhlIHNhbWUgYXMgdGhlIG9sZCBvbmU6ICclcyciCiBtc2dzdHIgIsSR4buRaSB0xrDhu6NuZyBt4bubaSBsw6AgZ2nhu5FuZyB24bubaSBjw6FpIGPFqTog4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQwNworIzogYnVpbHRpbi9yZXBsYWNlLmM6Mzg0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAlcyBhcyBhIGNvbW1pdCIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoICVzIG5oxrAgbMOgIG3hu5l0IGzhuqduIGNodXnhu4NuIGdpYW8iCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbWVyZ2V0YWcgaW4gY29tbWl0ICclcyciCiBtc2dzdHIgInRo4bq7IGjDsmEgdHLhu5luIHNhaSB0cm9uZyBs4bqnbiBjaHV54buDbiBnaWFvIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MDkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgbWVyZ2V0YWcgaW4gY29tbWl0ICclcyciCiBtc2dzdHIgInRo4bq7IGjDsmEgdHLhu5luIGtow7RuZyDEkcO6bmcgZOG6oW5nIOG7nyBs4bqnbiBjaHV54buDbiBnaWFvIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MjEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAib3JpZ2luYWwgY29tbWl0ICclcycgY29udGFpbnMgbWVyZ2V0YWcgJyVzJyB0aGF0IGlzIGRpc2NhcmRlZDsgdXNlIC0tZWRpdCAiCkBAIC0xNjM4MCwxMDQgKzE5NjgyLDEwNCBAQAogImzhuqduIGNodXnhu4NuIGdpYW8gZ+G7kWMg4oCcJXPigJ0gY8OzIGNo4bupYSB0aOG6uyBow7JhIHRy4buZbiDigJwlc+KAnSBjw6FpIG3DoCBi4buLIGxv4bqhaSBi4buPOyBkw7luZyAiCiAidMO5eSBjaOG7jW4gLS1lZGl0IHRoYXkgY2hvIC0tZ3JhZnQiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ2MAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSBvcmlnaW5hbCBjb21taXQgJyVzJyBoYXMgYSBncGcgc2lnbmF0dXJlIgogbXNnc3RyICJs4bqnbiBjaHV54buDbiBnaWFvIGfhu5FjIOKAnCVz4oCdIGPDsyBjaOG7ryBrw70gR1BHIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NjEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3MAogbXNnaWQgInRoZSBzaWduYXR1cmUgd2lsbCBiZSByZW1vdmVkIGluIHRoZSByZXBsYWNlbWVudCBjb21taXQhIgogbXNnc3RyICJjaOG7ryBrw70gc+G6vSDEkcaw4bujYyBi4buPIMSRaSB0cm9uZyBs4bqnbiBjaHV54buDbiBnaWFvIHRoYXkgdGjhur8hIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NzEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgcmVwbGFjZW1lbnQgY29tbWl0IGZvcjogJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGdoaSBs4bqnbiBjaHV54buDbiBnaWFvIHRoYXkgdGjhur8gY2hvOiDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDc5CisjOiBidWlsdGluL3JlcGxhY2UuYzo0ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ3JhZnQgZm9yICclcycgdW5uZWNlc3NhcnkiCiBtc2dzdHIgImdyYWZ0IGNobyDigJwlc+KAnSBraMO0bmcgY+G6p24gdGhp4bq/dCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDgyCisjOiBidWlsdGluL3JlcGxhY2UuYzo0OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IGNvbW1pdCBpcyB0aGUgc2FtZSBhcyB0aGUgb2xkIG9uZTogJyVzJyIKIG1zZ3N0ciAibOG6p24gY2h1eeG7g24gZ2lhbyBt4bubaSBsw6AgZ2nhu5FuZyB24bubaSBjw6FpIGPFqTog4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUxNQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjb3VsZCBub3QgY29udmVydCB0aGUgZm9sbG93aW5nIGdyYWZ0KHMpOlxuIgogIiVzIgogbXNnc3RyICIiCi0iS2jDtG5nIHRo4buDIGNodXnhu4NuIMSR4buVaSBjw6FjIGdyYWZ0IHNhdSDEkcOieTpcbiIKKyJraMO0bmcgdGjhu4MgY2h1eeG7g24gxJHhu5VpIGPDoWMgZ3JhZnQgc2F1IMSRw6J5OlxuIgogIiVzIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1MzYKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0OAogbXNnaWQgImxpc3QgcmVwbGFjZSByZWZzIgogbXNnc3RyICJsaeG7h3Qga8OqIGPDoWMgcmVmcyB0aGF5IHRo4bq/IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1MzcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0OQogbXNnaWQgImRlbGV0ZSByZXBsYWNlIHJlZnMiCiBtc2dzdHIgInjDs2EgdGhhbSBjaGnhur91IHRoYXkgdGjhur8iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUwCiBtc2dpZCAiZWRpdCBleGlzdGluZyBvYmplY3QiCiBtc2dzdHIgInPhu61hIMSR4buRaSB0xrDhu6NuZyBz4bq1biBjw7MiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzOQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUxCiBtc2dpZCAiY2hhbmdlIGEgY29tbWl0J3MgcGFyZW50cyIKIG1zZ3N0ciAidGhheSDEkeG7lWkgY2hhIG3hurkgY+G7p2EgbOG6p24gY2h1eeG7g24gZ2lhbyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQwCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTIKIG1zZ2lkICJjb252ZXJ0IGV4aXN0aW5nIGdyYWZ0IGZpbGUiCiBtc2dzdHIgImNodXnhu4NuIMSR4buVaSBjw6FjIHThuq1wIHRpbiBncmFmdCBz4bq1biBjw7MiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUzCiBtc2dpZCAicmVwbGFjZSB0aGUgcmVmIGlmIGl0IGV4aXN0cyIKIG1zZ3N0ciAidGhheSB0aOG6vyB0aGFtIGNoaeG6v3UgbuG6v3UgbsOzIMSRw6Mgc+G6tW4gY8OzIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDMKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NQogbXNnaWQgImRvIG5vdCBwcmV0dHktcHJpbnQgY29udGVudHMgZm9yIC0tZWRpdCIKIG1zZ3N0ciAixJHhu6tuZyBpbiDEkeG6uXAgY8OhYyBu4buZaSBkdW5nIGNobyAtLWVkaXQiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU2CiBtc2dpZCAidXNlIHRoaXMgZm9ybWF0IgogbXNnc3RyICJkw7luZyDEkeG7i25oIGThuqFuZyBuw6B5IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NTcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU2OQogbXNnaWQgIi0tZm9ybWF0IGNhbm5vdCBiZSB1c2VkIHdoZW4gbm90IGxpc3RpbmciCiBtc2dzdHIgIi0tZm9ybWF0IGtow7RuZyB0aOG7gyDEkcaw4bujYyBkw7luZyBraGkga2jDtG5nIGxp4buHdCBrw6ogZ8OsIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NjUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU3NwogbXNnaWQgIi1mIG9ubHkgbWFrZXMgc2Vuc2Ugd2hlbiB3cml0aW5nIGEgcmVwbGFjZW1lbnQiCiBtc2dzdHIgIi1mIGNo4buJIGjhu6NwIGzDvSBraGkgZ2hpIG3hu5l0IGPDoWkgdGhheSB0aOG6vyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY5CisjOiBidWlsdGluL3JlcGxhY2UuYzo1ODEKIG1zZ2lkICItLXJhdyBvbmx5IG1ha2VzIHNlbnNlIHdpdGggLS1lZGl0IgogbXNnc3RyICItLXJhdyBjaOG7iSBo4bujcCBsw70gduG7m2kgLS1lZGl0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NzUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4NwogbXNnaWQgIi1kIG5lZWRzIGF0IGxlYXN0IG9uZSBhcmd1bWVudCIKIG1zZ3N0ciAiLWQgY+G6p24gw610IG5o4bqldCBt4buZdCB0aGFtIHPhu5EiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTkzCiBtc2dpZCAiYmFkIG51bWJlciBvZiBhcmd1bWVudHMiCiBtc2dzdHIgInPhu5EgxJHhu5FpIHPhu5Ega2jDtG5nIMSRw7puZyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTg3CisjOiBidWlsdGluL3JlcGxhY2UuYzo1OTkKIG1zZ2lkICItZSBuZWVkcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKIG1zZ3N0ciAiLWUgY+G6p24gY2jDrW5oIGPDoWMgbMOgIG3hu5l0IMSR4buRaSBz4buRIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1OTMKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYwNQogbXNnaWQgIi1nIG5lZWRzIGF0IGxlYXN0IG9uZSBhcmd1bWVudCIKIG1zZ3N0ciAiLXEgY+G6p24gw610IG5o4bqldCBt4buZdCB0aGFtIHPhu5EiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU5OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NjExCiBtc2dpZCAiLS1jb252ZXJ0LWdyYWZ0LWZpbGUgdGFrZXMgbm8gYXJndW1lbnQiCiBtc2dzdHIgIi0tY29udmVydC1ncmFmdC1maWxlIGtow7RuZyBuaOG6rW4gxJHhu5FpIHPhu5EiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYwNQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NjE3CiBtc2dpZCAib25seSBvbmUgcGF0dGVybiBjYW4gYmUgZ2l2ZW4gd2l0aCAtbCIKIG1zZ3N0ciAiY2jhu4kgbeG7mXQgbeG6q3UgxJHGsOG7o2MgY2jhu4kgcmEgduG7m2kgdMO5eSBjaOG7jW4gLWwiCiAKQEAgLTE2NDk0LDEyNiArMTk3OTYsMTM4IEBACiBtc2dpZCAiJ2dpdCByZXJlcmUgZm9yZ2V0JyB3aXRob3V0IHBhdGhzIGlzIGRlcHJlY2F0ZWQiCiBtc2dzdHIgIuKAnGdpdCByZXJlcmUgZm9yZ2V04oCdIG3DoCBraMO0bmcgY8OzIGPDoWMgxJHGsOG7nW5nIGThuqtuIGzDoCDEkcOjIGzhuqFjIGjhuq11IgogCi0jOiBidWlsdGluL3JlcmVyZS5jOjExMQorIzogYnVpbHRpbi9yZXJlcmUuYzoxMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdlbmVyYXRlIGRpZmYgZm9yICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyBraMOhYyBiaeG7h3QgY2hvIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMgogbXNnaWQgIiIKICJnaXQgcmVzZXQgWy0tbWl4ZWQgfCAtLXNvZnQgfCAtLWhhcmQgfCAtLW1lcmdlIHwgLS1rZWVwXSBbLXFdIFs8Y29tbWl0Pl0iCiBtc2dzdHIgIiIKICJnaXQgcmVzZXQgWy0tbWl4ZWQgfCAtLXNvZnQgfCAtLWhhcmQgfCAtLW1lcmdlIHwgLS1rZWVwXSBbLXFdIFs8Y29tbWl0Pl0iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMgotbXNnaWQgImdpdCByZXNldCBbLXFdIFs8dHJlZS1pc2g+XSBbLS1dIDxwYXRocz4uLi4iCi1tc2dzdHIgImdpdCByZXNldCBbLXFdIFs8dHJlZS1pc2g+XSBbLS1dIDzEkcaw4budbmctZOG6q24+4oCmIgotCiAjOiBidWlsdGluL3Jlc2V0LmM6MzMKLW1zZ2lkICJnaXQgcmVzZXQgLS1wYXRjaCBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzPi4uLl0iCi1tc2dzdHIgImdpdCByZXNldCAtLXBhdGNoIFs8dHJlZS1pc2g+XSBbLS1dIFs8Y8OhYy3Ekcaw4budbmctZOG6q24+4oCmXSIKK21zZ2lkICJnaXQgcmVzZXQgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgorbXNnc3RyICJnaXQgcmVzZXQgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8xJHhurdjL3ThuqMvxJHGsOG7nW5nL2ThuqtuPi4uLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6MzQKK21zZ2lkICIiCisiZ2l0IHJlc2V0IFstcV0gWy0tcGF0aHNwZWMtZnJvbS1maWxlIFstLXBhdGhzcGVjLWZpbGUtbnVsXV0gWzx0cmVlLWlzaD5dIgorbXNnc3RyICIiCisiZ2l0IHJlc2V0IFstcV0gWy0tcGF0aHNwZWMtZnJvbS1maWxlIFstLXBhdGhzcGVjLWZpbGUtbnVsXV0gWzx0cmVlLWlzaD5dIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzUKK21zZ2lkICJnaXQgcmVzZXQgLS1wYXRjaCBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzcGVjPi4uLl0iCittc2dzdHIgImdpdCByZXNldCAtLXBhdGNoIFs8dHJlZS1pc2g+XSBbLS1dIFs8xJHhurdjL3ThuqMvxJHGsOG7nW5nL2ThuqtuPi4uLl0iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgIm1peGVkIgogbXNnc3RyICJwaGEgdHLhu5luIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgInNvZnQiCiBtc2dzdHIgIm3hu4FtIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgImhhcmQiCiBtc2dzdHIgImPhu6luZyIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJtZXJnZSIKIG1zZ3N0ciAiaMOyYSB0cuG7mW4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAia2VlcCIKIG1zZ3N0ciAiZ2nhu68gbOG6oWkiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo4MAorIzogYnVpbHRpbi9yZXNldC5jOjgyCiBtc2dpZCAiWW91IGRvIG5vdCBoYXZlIGEgdmFsaWQgSEVBRC4iCiBtc2dzdHIgIkLhuqFuIGtow7RuZyBjw7MgSEVBRCBuw6BvIGjhu6NwIGzhu4cuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6ODIKKyM6IGJ1aWx0aW4vcmVzZXQuYzo4NAogbXNnaWQgIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgSEVBRC4iCiBtc2dzdHIgIkfhurdwIGzhu5dpIGtoaSB0w6xtIGPDonkgY+G7p2EgSEVBRC4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo4OAorIzogYnVpbHRpbi9yZXNldC5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgJXMuIgogbXNnc3RyICJH4bq3cCBs4buXaSBraGkgdMOsbSBjw6J5IGPhu6dhICVzLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjE5MgorIzogYnVpbHRpbi9yZXNldC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKK21zZ3N0ciAiSEVBRCBoaeG7h24gZ2nhu50gdOG6oWkgJXMiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGRvIGEgJXMgcmVzZXQgaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlLiIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIHRo4buxYyBoaeG7h24gbeG7mXQgJXMgcmVzZXQg4bufIGdp4buvYSBj4bunYSBxdcOhIHRyw6xuaCBow7JhIHRy4buZbi4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTIKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQgYnVpbHRpbi9zdGFzaC5jOjUyMCBidWlsdGluL3N0YXNoLmM6NTk1CisjOiBidWlsdGluL3N0YXNoLmM6NjE5CiBtc2dpZCAiYmUgcXVpZXQsIG9ubHkgcmVwb3J0IGVycm9ycyIKIG1zZ3N0ciAibMOgbSB2aeG7h2Mg4bufIGNo4bq/IMSR4buZIGltIGzhurduZywgY2jhu4kgaGnhu4NuIHRo4buLIGtoaSBjw7MgbOG7l2kiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTYKIG1zZ2lkICJyZXNldCBIRUFEIGFuZCBpbmRleCIKIG1zZ3N0ciAixJHhurd0IGzhuqFpIChyZXNldCkgSEVBRCB2w6AgYuG6o25nIG3hu6VjIGzhu6VjIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mjk1CisjOiBidWlsdGluL3Jlc2V0LmM6Mjk3CiBtc2dpZCAicmVzZXQgb25seSBIRUFEIgogbXNnc3RyICJjaOG7iSDEkeG6t3QgbOG6oWkgKHJlc2V0KSBIRUFEIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mjk3IGJ1aWx0aW4vcmVzZXQuYzoyOTkKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTkgYnVpbHRpbi9yZXNldC5jOjMwMQogbXNnaWQgInJlc2V0IEhFQUQsIGluZGV4IGFuZCB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIsSR4bq3dCBs4bqhaSBIRUFELCBi4bqjbmcgbeG7pWMgbOG7pWMgdsOgIGPDonkgbMOgbSB2aeG7h2MiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMDEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMDMKIG1zZ2lkICJyZXNldCBIRUFEIGJ1dCBrZWVwIGxvY2FsIGNoYW5nZXMiCiBtc2dzdHIgIsSR4bq3dCBs4bqhaSBIRUFEIG5oxrBuZyBnaeG7ryBs4bqhaSBjw6FjIHRoYXkgxJHhu5VpIG7hu5lpIGLhu5kiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMDcKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMDkKIG1zZ2lkICJyZWNvcmQgb25seSB0aGUgZmFjdCB0aGF0IHJlbW92ZWQgcGF0aHMgd2lsbCBiZSBhZGRlZCBsYXRlciIKIG1zZ3N0ciAiY2jhu4kgZ2hpIGzhuqFpIG5o4buvbmcgxJHGsOG7nW5nIGThuqtuIHRo4buxYyBz4buxIHPhur0gxJHGsOG7o2MgdGjDqm0gdsOgbyBzYXUgbsOgeSIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMyNQorIzogYnVpbHRpbi9yZXNldC5jOjM0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmV2aXNpb24uIgogbXNnc3RyICJH4bq3cCBs4buXaSBraGkgcGjDom4gZ2nhuqNpIOKAnCVz4oCdIG5oxrAgbMOgIMSRaeG7g20geMOpdCBkdXnhu4d0IGjhu6NwIGzhu4cuIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzMzCisjOiBidWlsdGluL3Jlc2V0LmM6MzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCB0cmVlLiIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIHBow6JuIGdp4bqjaSDigJwlc+KAnSBuaMawIGzDoCBt4buZdCBjw6J5ICh0cmVlKSBo4bujcCBs4buHLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM0MgorIzogYnVpbHRpbi9yZXNldC5jOjM2MAogbXNnaWQgIi0tcGF0Y2ggaXMgaW5jb21wYXRpYmxlIHdpdGggLS17aGFyZCxtaXhlZCxzb2Z0fSIKIG1zZ3N0ciAiLS1wYXRjaCB4dW5nIGto4bqvYyB24bubaSAtLXtoYXJkLG1peGVkLHNvZnR9IgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzUxCisjOiBidWlsdGluL3Jlc2V0LmM6MzcwCiBtc2dpZCAiLS1taXhlZCB3aXRoIHBhdGhzIGlzIGRlcHJlY2F0ZWQ7IHVzZSAnZ2l0IHJlc2V0IC0tIDxwYXRocz4nIGluc3RlYWQuIgogbXNnc3RyICIiCiAiLS1taXhlZCB24bubaSBjw6FjIMSRxrDhu51uZyBk4bqrbiBraMO0bmcgY8OybiBkw7luZyBu4buvYTsgaMOjeSB0aGF5IHRo4bq/IGLhurFuZyBs4buHbmgg4oCcZ2l0ICIKLSJyZXNldCAtLSA8xJHGsOG7nW5nX2ThuqtuPuKAnS4iCisicmVzZXQgLS0gPC9jw6FjL8SRxrDhu51uZy9k4bqrbj7igJ0uIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzUzCisjOiBidWlsdGluL3Jlc2V0LmM6MzcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBkbyAlcyByZXNldCB3aXRoIHBhdGhzLiIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIHRo4buxYyBoaeG7h24gbOG7h25oICVzIHJlc2V0IHbhu5tpIGPDoWMgxJHGsOG7nW5nIGThuqtuLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM2MworIzogYnVpbHRpbi9yZXNldC5jOjM4NwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyByZXNldCBpcyBub3QgYWxsb3dlZCBpbiBhIGJhcmUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiJXMgcmVzZXQga2jDtG5nIMSRxrDhu6NjIHBow6lwIHRyw6puIGtobyB0aHXhuqduIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzY3CisjOiBidWlsdGluL3Jlc2V0LmM6MzkxCiBtc2dpZCAiLU4gY2FuIG9ubHkgYmUgdXNlZCB3aXRoIC0tbWl4ZWQiCiBtc2dzdHIgIi1OIGNo4buJIMSRxrDhu6NjIGTDuW5nIGtoaSBjw7MgLS1taXhlZCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM4NworIzogYnVpbHRpbi9yZXNldC5jOjQxMgogbXNnaWQgIlVuc3RhZ2VkIGNoYW5nZXMgYWZ0ZXIgcmVzZXQ6IgogbXNnc3RyICJOaOG7r25nIHRoYXkgxJHhu5VpIMSRxrDhu6NjIMSRxrBhIHJhIGto4buPaSBi4buHIHBow7NuZyBzYXUga2hpIHJlc2V0OiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5MAorIzogYnVpbHRpbi9yZXNldC5jOjQxNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC0xNjYyNyw1MyArMTk5NDEsNDggQEAKICJC4bqhbiBjw7MgdGjhu4Mgc+G7rSBk4bulbmcgxJHhu4MgdHLDoW5oIHZp4buHYyBuw6B5LiDEkOG6t3QgcmVzZXQucXVpZXQgdGjDoG5oIHRydWUgdHJvbmdcbiIKICJjw6BpIMSR4bq3dCBjb25maWcgbuG6v3UgYuG6oW4gbXXhu5FuIHRo4buxYyBoaeG7h24gbsOzIG5oxrAgbMOgIG3hurdjIMSR4buLbmguXG4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo0MDAKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlc2V0IGluZGV4IGZpbGUgdG8gcmV2aXNpb24gJyVzJy4iCiBtc2dzdHIgIktow7RuZyB0aOG7gyDEkeG6t3QgbOG6oWkgKHJlc2V0KSBi4bqjbmcgbeG7pWMgbOG7pWMgdGjDoG5oIMSRaeG7g20geMOpdCBkdXnhu4d0IOKAnCVz4oCdLiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjQwNAorIzogYnVpbHRpbi9yZXNldC5jOjQyOQogbXNnaWQgIkNvdWxkIG5vdCB3cml0ZSBuZXcgaW5kZXggZmlsZS4iCiBtc2dzdHIgIktow7RuZyB0aOG7gyBnaGkgdOG6rXAgdGluIGzGsHUgYuG6o25nIG3hu6VjIGzhu6VjIG3hu5tpLiIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQwMworIzogYnVpbHRpbi9yZXYtbGlzdC5jOjQ5OQogbXNnaWQgImNhbm5vdCBjb21iaW5lIC0tZXhjbHVkZS1wcm9taXNvci1vYmplY3RzIGFuZCAtLW1pc3NpbmciCiBtc2dzdHIgImtow7RuZyB0aOG7gyB04buVIGjhu6NwIC0tZXhjbHVkZS1wcm9taXNvci1vYmplY3RzIHbDoCAtLW1pc3NpbmciCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0NjEKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1NjAKIG1zZ2lkICJvYmplY3QgZmlsdGVyaW5nIHJlcXVpcmVzIC0tb2JqZWN0cyIKIG1zZ3N0ciAibOG7jWMgxJHhu5FpIHTGsOG7o25nIHnDqnUgY+G6p3UgLS1vYmplY3RzIgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NDY0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgc3BhcnNlIHZhbHVlICclcyciCi1tc2dzdHIgImdpw6EgdHLhu4sgc3BhcnNlIGtow7RuZyBo4bujcCBs4buHIOKAnCVz4oCdIgotCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NTA1CisjOiBidWlsdGluL3Jldi1saXN0LmM6NjEwCiBtc2dpZCAicmV2LWxpc3QgZG9lcyBub3Qgc3VwcG9ydCBkaXNwbGF5IG9mIG5vdGVzIgogbXNnc3RyICJyZXYtbGlzdCBraMO0bmcgaOG7lyB0cuG7oyBoaeG7g24gdGjhu4sgY8OhYyBnaGkgY2jDuiIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjUwOAotbXNnaWQgImNhbm5vdCBjb21iaW5lIC0tdXNlLWJpdG1hcC1pbmRleCB3aXRoIG9iamVjdCBmaWx0ZXJpbmciCi1tc2dzdHIgImtow7RuZyB0aOG7gyB04buVIGjhu6NwIC0tdXNlLWJpdG1hcC1pbmRleCB24bubaSBs4buNYyDEkeG7kWkgdMaw4bujbmciCisjOiBidWlsdGluL3Jldi1saXN0LmM6NjE1Cittc2dpZCAibWFya2VkIGNvdW50aW5nIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tb2JqZWN0cyIKK21zZ3N0ciAixJHGsOG7o2MgxJHDoW5oIGThuqV1IMSR4bq/bSBsw6AgeHVuZyBraOG6r2MgduG7m2kgLS1vYmplY3RzIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQwNworIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MDgKIG1zZ2lkICJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHRpb25zPl0gLS0gWzxhcmdzPi4uLl0iCi1tc2dzdHIgImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPGPDoWMtdMO5eS1jaOG7jW4+XSAtLSBbPGPDoWMgdGhhbSBz4buRPuKApl0iCittc2dzdHIgImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPGPDoWMgdMO5eSBjaOG7jW4+XSAtLSBbPGPDoWMgdGhhbSBz4buRPuKApl0iCiAKLSM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDEyCisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxMwogbXNnaWQgImtlZXAgdGhlIGAtLWAgcGFzc2VkIGFzIGFuIGFyZyIKIG1zZ3N0ciAiZ2nhu68gbOG6oWkg4oCcLS3igJ0gY2h1eeG7g24gc2FuZyBsw6BtIHRoYW0gc+G7kSIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTQKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE1CiBtc2dpZCAic3RvcCBwYXJzaW5nIGFmdGVyIHRoZSBmaXJzdCBub24tb3B0aW9uIGFyZ3VtZW50IgogbXNnc3RyICJk4burbmcgcGjDom4gdMOtY2ggc2F1IMSR4buRaSBz4buRIMSR4bqndSB0acOqbiBraMO0bmcgY8OzIHTDuXkgY2jhu41uIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxNworIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTgKIG1zZ2lkICJvdXRwdXQgaW4gc3R1Y2sgbG9uZyBmb3JtIgogbXNnc3RyICJr4bq/dCB4deG6pXQgdHJvbmcgxJHhu4tuaCBk4bqhbmcgZ+G6rXkgZMOgaSIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo1NTAKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NTUxCiBtc2dpZCAiIgogImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPG9wdGlvbnM+XSAtLSBbPGFyZ3M+Li4uXVxuIgogIiAgIG9yOiBnaXQgcmV2LXBhcnNlIC0tc3EtcXVvdGUgWzxhcmc+Li4uXVxuIgpAQCAtMTY2ODEsMTUgKzE5OTkwLDE1IEBACiAiXG4iCiAiUnVuIFwiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IC1oXCIgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhlIGZpcnN0IHVzYWdlLiIKIG1zZ3N0ciAiIgotImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPGPDoWMtdMO5eS1jaOG7jW4+XSAtLSBbPGPDoWMgxJHhu5FpIHPhu5E+4oCmXVxuIgorImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPGPDoWMgdMO5eSBjaOG7jW4+XSAtLSBbPGPDoWMgxJHhu5FpIHPhu5E+4oCmXVxuIgogIiAgIGhv4bq3YzogZ2l0IHJldi1wYXJzZSAtLXNxLXF1b3RlIFs8xJEuc+G7kT7igKZdXG4iCi0iICAgaG/hurdjOiBnaXQgcmV2LXBhcnNlIFs8Y8OhYy10w7l5LWNo4buNbj5dIFs8xJEuc+G7kT7igKZdXG4iCisiICAgaG/hurdjOiBnaXQgcmV2LXBhcnNlIFs8Y8OhYyB0w7l5IGNo4buNbj5dIFs8xJEuc+G7kT7igKZdXG4iCiAiXG4iCiAiQ2jhuqF5IGzhu4duaCBcImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCAtaFwiIMSR4buDIGPDsyB0aMOqbSB0aMO0bmcgdGluIHbhu4EgY8OhY2ggZMO5bmcuIgogCiAjOiBidWlsdGluL3JldmVydC5jOjI0CiBtc2dpZCAiZ2l0IHJldmVydCBbPG9wdGlvbnM+XSA8Y29tbWl0LWlzaD4uLi4iCi1tc2dzdHIgImdpdCByZXZlcnQgWzxjw6FjLXTDuXktY2jhu41uPl0gPGNvbW1pdC1pc2g+4oCmIgorbXNnc3RyICJnaXQgcmV2ZXJ0IFs8Y8OhYyB0w7l5IGNo4buNbj5dIDxjb21taXQtaXNoPuKApiIKIAogIzogYnVpbHRpbi9yZXZlcnQuYzoyNQogbXNnaWQgImdpdCByZXZlcnQgPHN1YmNvbW1hbmQ+IgpAQCAtMTY2OTcsNzggKzIwMDA2LDg3IEBACiAKICM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MzAKIG1zZ2lkICJnaXQgY2hlcnJ5LXBpY2sgWzxvcHRpb25zPl0gPGNvbW1pdC1pc2g+Li4uIgotbXNnc3RyICJnaXQgY2hlcnJ5LXBpY2sgWzxjw6FjLXTDuXktY2jhu41uPl0gPGNvbW1pdC1pc2g+4oCmIgorbXNnc3RyICJnaXQgY2hlcnJ5LXBpY2sgWzxjw6FjIHTDuXkgY2jhu41uPl0gPGNvbW1pdC1pc2g+4oCmIgogCiAjOiBidWlsdGluL3JldmVydC5jOjMxCiBtc2dpZCAiZ2l0IGNoZXJyeS1waWNrIDxzdWJjb21tYW5kPiIKIG1zZ3N0ciAiZ2l0IGNoZXJyeS1waWNrIDxs4buHbmgtY29uPiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzo5MQorIzogYnVpbHRpbi9yZXZlcnQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiB6ZXJvIgorbXNnc3RyICJ0w7l5IGNo4buNbiDigJwlc+KAnSBj4bqnbiBt4buZdCBnacOhIHRy4buLIGLhurFuZyBz4buRIGzhu5tuIGjGoW4ga2jDtG5nIgorCisjOiBidWlsdGluL3JldmVydC5jOjkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAlcyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgogbXNnc3RyICIlczogJXMga2jDtG5nIHRo4buDIMSRxrDhu6NjIHPhu60gZOG7pW5nIHbhu5tpICVzIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwMAorIzogYnVpbHRpbi9yZXZlcnQuYzoxMDIKIG1zZ2lkICJlbmQgcmV2ZXJ0IG9yIGNoZXJyeS1waWNrIHNlcXVlbmNlIgogbXNnc3RyICJr4bq/dCB0aMO6YyBjaGVycnktcGljayBoYXkgaG/DoG4gbmd1ecOqbiBsacOqbiB0aeG6v3AgbmhhdSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCiBtc2dpZCAicmVzdW1lIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAicGjhu6VjIGjhu5NpIGzhuqFpIGNoZXJyeS1waWNrIGhheSBob8OgbiBuZ3V5w6puIGxpw6puIHRp4bq/cCBuaGF1IgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwMgorIzogYnVpbHRpbi9yZXZlcnQuYzoxMDQKIG1zZ2lkICJjYW5jZWwgcmV2ZXJ0IG9yIGNoZXJyeS1waWNrIHNlcXVlbmNlIgogbXNnc3RyICJraMO0bmcgY2hlcnJ5LXBpY2sgaGF5IGhvw6BuIG5ndXnDqm4gbGnDqm4gdGnhur9wIG5oYXUiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCi1tc2dpZCAiZG9uJ3QgYXV0b21hdGljYWxseSBjb21taXQiCi1tc2dzdHIgImtow7RuZyBjaHV54buDbiBnaWFvIG3hu5l0IGPDoWNoIHThu7EgxJHhu5luZy4iCisjOiBidWlsdGluL3JldmVydC5jOjEwNQorbXNnaWQgInNraXAgY3VycmVudCBjb21taXQgYW5kIGNvbnRpbnVlIgorbXNnc3RyICJi4buPIHF1YSBs4bqnbiBjaHV54buDbiBnaWFvIGhp4buHbiB04bqhaSB2w6AgdGnhur9wIHThu6VjIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwNAorIzogYnVpbHRpbi9yZXZlcnQuYzoxMDcKK21zZ2lkICJkb24ndCBhdXRvbWF0aWNhbGx5IGNvbW1pdCIKK21zZ3N0ciAixJHhu6tuZyBjaHV54buDbiBnaWFvIG3hu5l0IGPDoWNoIHThu7EgxJHhu5luZyIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDgKIG1zZ2lkICJlZGl0IHRoZSBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAic+G7rWEgbOG6oWkgY2jDuiB0aMOtY2ggY2hvIGzhuqduIGNodXnhu4NuIGdpYW8iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA3CisjOiBidWlsdGluL3JldmVydC5jOjExMQogbXNnaWQgInBhcmVudC1udW1iZXIiCiBtc2dzdHIgInPhu5EtY2hhLW3hurkiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA4CisjOiBidWlsdGluL3JldmVydC5jOjExMgogbXNnaWQgInNlbGVjdCBtYWlubGluZSBwYXJlbnQiCiBtc2dzdHIgImNo4buNbiBjaGEgbeG6uSBsdeG7k25nIGNow61uaCIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMTAKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE0CiBtc2dpZCAibWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgImNoaeG6v24gbMaw4bujYyBow7JhIHRy4buZbiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMTIKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE2CiBtc2dpZCAib3B0aW9uIGZvciBtZXJnZSBzdHJhdGVneSIKIG1zZ3N0ciAidMO5eSBjaOG7jW4gY2hvIGNoaeG6v24gbMaw4bujYyBow7JhIHRy4buZbiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMjEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI1CiBtc2dpZCAiYXBwZW5kIGNvbW1pdCBuYW1lIgogbXNnc3RyICJu4buRaSB0aMOqbSB0w6puIGzhuqduIGNodXnhu4NuIGdpYW8iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTIzCisjOiBidWlsdGluL3JldmVydC5jOjEyNwogbXNnaWQgInByZXNlcnZlIGluaXRpYWxseSBlbXB0eSBjb21taXRzIgogbXNnc3RyICJj4bqlbSBraOG7n2kgdOG6oW8gbOG6p24gY2h1eeG7g24gZ2lhbyB0cuG7kW5nIHLhu5duZyIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMjUKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI5CiBtc2dpZCAia2VlcCByZWR1bmRhbnQsIGVtcHR5IGNvbW1pdHMiCiBtc2dzdHIgImdp4buvIGzhuqFpIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyBkxrAgdGjhu6thLCBy4buXbmciCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjE5CisjOiBidWlsdGluL3JldmVydC5jOjIzMgogbXNnaWQgInJldmVydCBmYWlsZWQiCiBtc2dzdHIgImhvw6BuIG5ndXnDqm4gZ+G6t3AgbOG7l2kiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjMyCisjOiBidWlsdGluL3JldmVydC5jOjI0NQogbXNnaWQgImNoZXJyeS1waWNrIGZhaWxlZCIKIG1zZ3N0ciAiY2hlcnJ5LXBpY2sgZ+G6t3AgbOG7l2kiCiAKLSM6IGJ1aWx0aW4vcm0uYzoxOAorIzogYnVpbHRpbi9ybS5jOjE5CiBtc2dpZCAiZ2l0IHJtIFs8b3B0aW9ucz5dIFstLV0gPGZpbGU+Li4uIgotbXNnc3RyICJnaXQgcm0gWzxjw6FjLXTDuXktY2jhu41uPl0gWy0tXSA8dOG6rXAtdGluPuKApiIKK21zZ3N0ciAiZ2l0IHJtIFs8Y8OhYyB0w7l5IGNo4buNbj5dIFstLV0gPHThuq1wLXRpbj7igKYiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMDYKKyM6IGJ1aWx0aW4vcm0uYzoyMDcKIG1zZ2lkICIiCiAidGhlIGZvbGxvd2luZyBmaWxlIGhhcyBzdGFnZWQgY29udGVudCBkaWZmZXJlbnQgZnJvbSBib3RoIHRoZVxuIgogImZpbGUgYW5kIHRoZSBIRUFEOiIKQEAgLTE2Nzc5LDcgKzIwMDk3LDcgQEAKICJjw6FjIHThuq1wIHRpbiBzYXUgxJHDonkgY8OzIGtow6FjIGJp4buHdCBu4buZaSBkdW5nIMSRw6MgxJHGsGEgbMOqbiBi4buHIHBow7NuZ1xuIgogInThu6sgY+G6oyB04bqtcCB0aW4gdsOgIGPhuqMgSEVBRDoiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMTEKKyM6IGJ1aWx0aW4vcm0uYzoyMTIKIG1zZ2lkICIiCiAiXG4iCiAiKHVzZSAtZiB0byBmb3JjZSByZW1vdmFsKSIKQEAgLTE2Nzg3LDEyICsyMDEwNSwxMiBAQAogIlxuIgogIihkw7luZyAtZiDEkeG7gyBideG7mWMgZ+G7oSBi4buPKSIKIAotIzogYnVpbHRpbi9ybS5jOjIxNQorIzogYnVpbHRpbi9ybS5jOjIxNgogbXNnaWQgInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgY2hhbmdlcyBzdGFnZWQgaW4gdGhlIGluZGV4OiIKIG1zZ2lkX3BsdXJhbCAidGhlIGZvbGxvd2luZyBmaWxlcyBoYXZlIGNoYW5nZXMgc3RhZ2VkIGluIHRoZSBpbmRleDoiCiBtc2dzdHJbMF0gImPDoWMgdOG6rXAgdGluIHNhdSDEkcOieSBjw7MgdGhheSDEkeG7lWkgdHLhuqFuZyB0aMOhaSB0cm9uZyBi4bqjbmcgbeG7pWMgbOG7pWM6IgogCi0jOiBidWlsdGluL3JtLmM6MjE5IGJ1aWx0aW4vcm0uYzoyMjgKKyM6IGJ1aWx0aW4vcm0uYzoyMjAgYnVpbHRpbi9ybS5jOjIyOQogbXNnaWQgIiIKICJcbiIKICIodXNlIC0tY2FjaGVkIHRvIGtlZXAgdGhlIGZpbGUsIG9yIC1mIHRvIGZvcmNlIHJlbW92YWwpIgpAQCAtMTY4MDAsNDIgKzIwMTE4LDQ2IEBACiAiXG4iCiAiKGTDuW5nIHTDuXkgY2jhu41uIC0tY2FjaGVkIMSR4buDIGdp4buvIHThuq1wIHRpbiwgaG/hurdjIC1mIMSR4buDIMOpcCBideG7mWMgZ+G7oSBi4buPKSIKIAotIzogYnVpbHRpbi9ybS5jOjIyNQorIzogYnVpbHRpbi9ybS5jOjIyNgogbXNnaWQgInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgbG9jYWwgbW9kaWZpY2F0aW9uczoiCiBtc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBsb2NhbCBtb2RpZmljYXRpb25zOiIKIG1zZ3N0clswXSAibmjhu69uZyB04bqtcCB0aW4gc2F1IMSRw6J5IGPDsyBuaOG7r25nIHRoYXkgxJHhu5VpIG7hu5lpIGLhu5k6IgogCi0jOiBidWlsdGluL3JtLmM6MjQxCisjOiBidWlsdGluL3JtLmM6MjQzCiBtc2dpZCAiZG8gbm90IGxpc3QgcmVtb3ZlZCBmaWxlcyIKIG1zZ3N0ciAia2jDtG5nIGxp4buHdCBrw6ogY8OhYyB04bqtcCB0aW4gxJHDoyBn4buhIGLhu48iCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDIKKyM6IGJ1aWx0aW4vcm0uYzoyNDQKIG1zZ2lkICJvbmx5IHJlbW92ZSBmcm9tIHRoZSBpbmRleCIKIG1zZ3N0ciAiY2jhu4kgZ+G7oSBi4buPIHThu6sgbeG7pWMgbOG7pWMiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDMKKyM6IGJ1aWx0aW4vcm0uYzoyNDUKIG1zZ2lkICJvdmVycmlkZSB0aGUgdXAtdG8tZGF0ZSBjaGVjayIKIG1zZ3N0ciAiZ2hpIMSRw6ggbMOqbiBraeG7g20gdHJhIGPhuq1wIG5o4bqtdCIKIAotIzogYnVpbHRpbi9ybS5jOjI0NAorIzogYnVpbHRpbi9ybS5jOjI0NgogbXNnaWQgImFsbG93IHJlY3Vyc2l2ZSByZW1vdmFsIgogbXNnc3RyICJjaG8gcGjDqXAgZ+G7oSBi4buPIMSR4buHIHF1aSIKIAotIzogYnVpbHRpbi9ybS5jOjI0NgorIzogYnVpbHRpbi9ybS5jOjI0OAogbXNnaWQgImV4aXQgd2l0aCBhIHplcm8gc3RhdHVzIGV2ZW4gaWYgbm90aGluZyBtYXRjaGVkIgogbXNnc3RyICJ0aG/DoXQgcmEgduG7m2kgdHLhuqFuZyB0aMOhaSBraMOhYyBraMO0bmcgdGjhuq1tIGNow60gbuG6v3Uga2jDtG5nIGPDsyBnw6wga2jhu5twIgogCi0jOiBidWlsdGluL3JtLmM6Mjg4CisjOiBidWlsdGluL3JtLmM6MjgyCittc2dpZCAiTm8gcGF0aHNwZWMgd2FzIGdpdmVuLiBXaGljaCBmaWxlcyBzaG91bGQgSSByZW1vdmU/IgorbXNnc3RyICJLaMO0bmcgxJHGsGEgcmEgxJHhurdjIHThuqMgxJHGsOG7nW5nIGThuqtuLiBUw7RpIG7Dqm4gbG/huqFpIGLhu48gY8OhYyB04bqtcCB0aW4gbsOgbz8iCisKKyM6IGJ1aWx0aW4vcm0uYzozMDUKIG1zZ2lkICJwbGVhc2Ugc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKIG1zZ3N0ciAiIgogImjDo3kgxJHGsGEgY8OhYyB0aGF5IMSR4buVaSBj4bunYSBi4bqhbiB2w6BvIC5naXRtb2R1bGVzIGhheSB04bqhbSBj4bqldCBjaMO6bmcgxJFpIMSR4buDIHjhu60gbMO9IgogCi0jOiBidWlsdGluL3JtLmM6MzA2CisjOiBidWlsdGluL3JtLmM6MzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCByZW1vdmluZyAnJXMnIHJlY3Vyc2l2ZWx5IHdpdGhvdXQgLXIiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBn4buhIGLhu48g4oCcJXPigJ0gbeG7mXQgY8OhY2ggxJHhu4cgcXVpIG3DoCBraMO0bmcgY8OzIHTDuXkgY2jhu41uIC1yIgogCi0jOiBidWlsdGluL3JtLmM6MzQ1CisjOiBidWlsdGluL3JtLmM6MzYyCiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBybTogdW5hYmxlIHRvIHJlbW92ZSAlcyIKIG1zZ3N0ciAiZ2l0IHJtOiBraMO0bmcgdGjhu4MgZ+G7oSBi4buPICVzIgpAQCAtMTY4NjgsMjUgKzIwMTkwLDEzIEBACiBtc2dpZCAicHJpbnQgc3RhdHVzIGZyb20gcmVtb3RlIGhlbHBlciIKIG1zZ3N0ciAiaW4gY8OhYyB0cuG6oW5nIHRow6FpIHThu6sgcGjhuqduIGjGsOG7m25nIGThuqtuIHRyw6puIG3DoXkgZOG7i2NoIHbhu6UiCiAKLSM6IGJ1aWx0aW4vc2VydmUuYzo3Ci1tc2dpZCAiZ2l0IHNlcnZlIFs8b3B0aW9ucz5dIgotbXNnc3RyICJnaXQgc2VydmUgWzxjw6FjLXTDuXktY2jhu41uPl0iCi0KLSM6IGJ1aWx0aW4vc2VydmUuYzoxNyBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjMKLW1zZ2lkICJxdWl0IGFmdGVyIGEgc2luZ2xlIHJlcXVlc3QvcmVzcG9uc2UgZXhjaGFuZ2UiCi1tc2dzdHIgInRob8OhdCBzYXUga2hpIG3hu5l0IHRyYW8gxJHhu5VpIHnDqnUgY+G6p3UgaGF5IHRy4bqjIGzhu51pIMSRxqFuIgotCi0jOiBidWlsdGluL3NlcnZlLmM6MTkKLW1zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGFkdmVydGlzaW5nIGNhcGFiaWxpdGllcyIKLW1zZ3N0ciAidGhvw6F0IG5nYXkgc2F1IGtoaSBraOG7n2kgdOG6oW8gcXXhuqNuZyBjw6FvIGNhcGFiaWxpdGllcyIKLQogIzogYnVpbHRpbi9zaG9ydGxvZy5jOjE0CiBtc2dpZCAiZ2l0IHNob3J0bG9nIFs8b3B0aW9ucz5dIFs8cmV2aXNpb24tcmFuZ2U+XSBbWy0tXSA8cGF0aD4uLi5dIgotbXNnc3RyICJnaXQgc2hvcnRsb2cgWzxjw6FjLXTDuXktY2jhu41uPl0gWzx2w7luZy14w6l0LWR1eeG7h3Q+XSBbWy0tXSBbPMSRxrDhu51uZy9k4bqrbj7igKZdXSIKK21zZ3N0ciAiZ2l0IHNob3J0bG9nIFs8Y8OhYyB0w7l5IGNo4buNbj5dIFs8dsO5bmcteMOpdC1kdXnhu4d0Pl0gW1stLV0gWzzEkcaw4budbmcvZOG6q24+4oCmXV0iCiAKICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxNQogbXNnaWQgImdpdCBsb2cgLS1wcmV0dHk9c2hvcnQgfCBnaXQgc2hvcnRsb2cgWzxvcHRpb25zPl0iCi1tc2dzdHIgImdpdCBsb2cgLS1wcmV0dHk9c2hvcnQgfCBnaXQgc2hvcnRsb2cgWzxjw6FjLXTDuXktY2jhu41uPl0iCittc2dzdHIgImdpdCBsb2cgLS1wcmV0dHk9c2hvcnQgfCBnaXQgc2hvcnRsb2cgWzxjw6FjIHTDuXkgY2jhu41uPl0iCiAKICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoyNjQKIG1zZ2lkICJHcm91cCBieSBjb21taXR0ZXIgcmF0aGVyIHRoYW4gYXV0aG9yIgpAQCAtMTY5MTIsNyArMjAyMjIsNyBAQAogbXNnaWQgIkxpbmV3cmFwIG91dHB1dCIKIG1zZ3N0ciAiTmfhuq90IGTDsm5nIGtoaSBxdcOhIGTDoGkiCiAKLSM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoyOTkKKyM6IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDEKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgZ2l2ZW4gb3V0c2lkZSByZXBvc2l0b3J5IgogbXNnc3RyICJxdcOhIG5oaeG7gXUgdGhhbSBz4buRIMSRxrBhIHJhIG5nb8OgaSBraG8gY2jhu6lhIgogCkBAIC0xNjkzOCwxNjUgKzIwMjQ4LDQ3MyBAQAogbXNnaWRfcGx1cmFsICJpZ25vcmluZyAlczsgY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmVmcyIKIG1zZ3N0clswXSAixJFhbmcgYuG7jyBxdWEgJXM7IGtow7RuZyB0aOG7gyB44butIGzDvSBuaGnhu4F1IGjGoW4gJWQgdGhhbSBjaGnhur91IgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NTQ5CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIG1hdGNoaW5nIHJlZnMgd2l0aCAlcyIKIG1zZ3N0ciAia2jDtG5nIHRoYW0gY2hp4bq/dSBuw6BvIGto4bubcCB24bubaSAlcyIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NQogbXNnaWQgInNob3cgcmVtb3RlLXRyYWNraW5nIGFuZCBsb2NhbCBicmFuY2hlcyIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIGPDoWMgbmjDoW5oIHJlbW90ZS10cmFja2luZyB2w6AgbuG7mWkgYuG7mSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0OAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NwogbXNnaWQgInNob3cgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgogbXNnc3RyICJoaeG7g24gdGjhu4sgY8OhYyBuaMOhbmggcmVtb3RlLXRyYWNraW5nIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUwCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ5CiBtc2dpZCAiY29sb3IgJyohKy0nIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGJyYW5jaCIKIG1zZ3N0ciAibcOgdSDigJwqISst4oCdIHTGsMahbmcg4bupbmcgduG7m2kgbmjDoW5oIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUyCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUxCiBtc2dpZCAic2hvdyA8bj4gbW9yZSBjb21taXRzIGFmdGVyIHRoZSBjb21tb24gYW5jZXN0b3IiCiBtc2dzdHIgImhp4buDbiB0aOG7iyB0aMOqbSA8bj4gbOG6p24gY2h1eeG7g24gZ2lhbyBzYXUgY2hhIG3hurkgY2h1bmciCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTMKIG1zZ2lkICJzeW5vbnltIHRvIG1vcmU9LTEiCiBtc2dzdHIgIsSR4buTbmcgbmdoxKlhIHbhu5tpIG1vcmU9LTEiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKIG1zZ2lkICJzdXBwcmVzcyBuYW1pbmcgc3RyaW5ncyIKIG1zZ3N0ciAiY2jhurduIGPDoWMgY2h14buXaSDEkeG6t3QgdMOqbiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NgogbXNnaWQgImluY2x1ZGUgdGhlIGN1cnJlbnQgYnJhbmNoIgogbXNnc3RyICJiYW8gZ+G7k20gbmjDoW5oIGhp4buHbiBow6BuaCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1OQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1OAogbXNnaWQgIm5hbWUgY29tbWl0cyB3aXRoIHRoZWlyIG9iamVjdCBuYW1lcyIKIG1zZ3N0ciAixJHhurd0IHTDqm4gY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIGLhurFuZyBjw6FjIHTDqm4gY+G7p2EgxJHhu5FpIHTGsOG7o25nIGPhu6dhIGNow7puZyIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MAogbXNnaWQgInNob3cgcG9zc2libGUgbWVyZ2UgYmFzZXMiCiBtc2dzdHIgImhp4buDbiB0aOG7iyBt4buNaSBjxqEgc+G7nyBjw7MgdGjhu4MgZMO5bmcgxJHhu4MgaMOyYSB0cuG7mW4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjMKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjIKIG1zZ2lkICJzaG93IHJlZnMgdW5yZWFjaGFibGUgZnJvbSBhbnkgb3RoZXIgcmVmIgogbXNnc3RyICJoaeG7g24gdGjhu4sgY8OhYyB0aGFtIGNoaeG6v3Uga2jDtG5nIHRo4buDIMSRxrDhu6NjIMSR4buNYyBi4bufaSBi4bqldCBr4buzIHRoYW0gY2hp4bq/dSBraMOhYyIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NAogbXNnaWQgInNob3cgY29tbWl0cyBpbiB0b3BvbG9naWNhbCBvcmRlciIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIGPDoWMgbOG6p24gY2h1eeG7g24gZ2lhbyB0aGVvIHRo4bupIHThu7EgdMO0cMO0IgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY4CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY3CiBtc2dpZCAic2hvdyBvbmx5IGNvbW1pdHMgbm90IG9uIHRoZSBmaXJzdCBicmFuY2giCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8ga2jDtG5nIG7hurFtIHRyw6puIG5ow6FuaCDEkeG6p3UgdGnDqm4iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzAKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjkKIG1zZ2lkICJzaG93IG1lcmdlcyByZWFjaGFibGUgZnJvbSBvbmx5IG9uZSB0aXAiCiBtc2dzdHIgImhp4buDbiB0aOG7iyBjw6FjIGzhuqduIGjDsmEgdHLhu5luIGPDsyB0aOG7gyDEkeG7jWMgxJHGsOG7o2MgY2jhu4kgdOG7qyBt4buZdCDEkeG6p3UgbcO6dCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MQogbXNnaWQgInRvcG9sb2dpY2FsbHkgc29ydCwgbWFpbnRhaW5pbmcgZGF0ZSBvcmRlciB3aGVyZSBwb3NzaWJsZSIKIG1zZ3N0ciAic+G6r3AgeOG6v3AgaMOsbmggdGjDoWkgaOG7jWMsIGLhuqNvIHRyw6wgdGjhu6kgdOG7sSBuZ8OgeSBu4bq/dSBjw7MgdGjhu4MiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzQKIG1zZ2lkICI8bj5bLDxiYXNlPl0iCiBtc2dzdHIgIjxuPlssPGPGoV9z4bufPl0iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzUKIG1zZ2lkICJzaG93IDxuPiBtb3N0IHJlY2VudCByZWYtbG9nIGVudHJpZXMgc3RhcnRpbmcgYXQgYmFzZSIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIDxuPiBjw6FjIG3hu6VjIOKAnHJlZi1sb2figJ0gZ+G6p24gbmjhuqV0IGvhu4MgdOG7qyBu4buBbiAoYmFzZSkiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MTIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MTEKIG1zZ2lkICIiCiAiLS1yZWZsb2cgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tcmVtb3RlcywgLS1pbmRlcGVuZGVudCBvciAtLW1lcmdlLWJhc2UiCiBtc2dzdHIgIiIKICItLXJlZmxvZyBsw6Aga2jDtG5nIHTGsMahbmcgdGjDrWNoIHbhu5tpIGPDoWMgdMO5eSBjaOG7jW4gLS1hbGwsIC0tcmVtb3RlcywgLS0iCiAiaW5kZXBlbmRlbnQgaGF5IC0tbWVyZ2UtYmFzZSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczNgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczNQogbXNnaWQgIm5vIGJyYW5jaGVzIGdpdmVuLCBhbmQgSEVBRCBpcyBub3QgdmFsaWQiCiBtc2dzdHIgImNoxrBhIMSRxrBhIHJhIG5ow6FuaCwgdsOgIEhFQUQga2jDtG5nIGjhu6NwIGzhu4ciCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzkKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzgKIG1zZ2lkICItLXJlZmxvZyBvcHRpb24gbmVlZHMgb25lIGJyYW5jaCBuYW1lIgogbXNnc3RyICItLXJlZmxvZyBj4bqnbiB0w6puIG3hu5l0IG5ow6FuaCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0MgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJvbmx5ICVkIGVudHJ5IGNhbiBiZSBzaG93biBhdCBvbmUgdGltZS4iCiBtc2dpZF9wbHVyYWwgIm9ubHkgJWQgZW50cmllcyBjYW4gYmUgc2hvd24gYXQgb25lIHRpbWUuIgogbXNnc3RyWzBdICJjaOG7iSBjw7MgdGjhu4MgaGnhu4NuIHRo4buLIGPDuW5nIGzDumMgJWQgaOG6oW5nIG3hu6VjLiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0NgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIHJlZiAlcyIKIG1zZ3N0ciAia2jDtG5nIGPDsyB0aGFtIGNoaeG6v3UgbsOgbyBuaMawIHRo4bq/ICVzIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODMwCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODMxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJldi4iCiBtc2dpZF9wbHVyYWwgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJldnMuIgogbXNnc3RyWzBdICJraMO0bmcgdGjhu4MgeOG7rSBsw70gbmhp4buBdSBoxqFuICVkIMSRaeG7g20geMOpdCBkdXnhu4d0LiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzNAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzNQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHJlZi4iCiBtc2dzdHIgIuKAnCVz4oCdIGtow7RuZyBwaOG6o2kgdGhhbSBjaGnhur91IGjhu6NwIGzhu4cuIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM3CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBmaW5kIGNvbW1pdCAlcyAoJXMpIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdMOsbSB0aOG6pXkgbOG6p24gY2h1eeG7g24gZ2lhbyAlcyAoJXMpIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTEKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxMgogbXNnaWQgIiIKICJnaXQgc2hvdy1yZWYgWy1xIHwgLS1xdWlldF0gWy0tdmVyaWZ5XSBbLS1oZWFkXSBbLWQgfCAtLWRlcmVmZXJlbmNlXSBbLXMgfCAtLSIKICJoYXNoWz08bj5dXSBbLS1hYmJyZXZbPTxuPl1dIFstLXRhZ3NdIFstLWhlYWRzXSBbLS1dIFs8cGF0dGVybj4uLi5dIgogbXNnc3RyICIiCi0iZ2l0IHNob3ctcmVmIFstcSB8IC0tcXVpZXRdIFstLXZlcmlmeV0gWy0taGVhZF0gWy1kfC0tZGVyZWZlcmVuY2VdIFstc3wtLSIKLSJoYXNoWz08bj5dXSBbLS1hYmJyZXZbPTxuPl1dIFstLXRhZ3NdIFstLWhlYWRzXSBbLS1dIFs8beG6q3U+4oCmXSAiCisiZ2l0IHNob3ctcmVmIFstcSB8IC0tcXVpZXRdIFstLXZlcmlmeV0gWy0taGVhZF0gWy1kIHwgLS1kZXJlZmVyZW5jZV0gWy1zIHwgLS0iCisiaGFzaFs9PG4+XV0gWy0tYWJicmV2Wz08bj5dXSBbLS10YWdzXSBbLS1oZWFkc10gWy0tXSBbPG3huqt1PuKApl0iCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxMgorIzogYnVpbHRpbi9zaG93LXJlZi5jOjEzCiBtc2dpZCAiZ2l0IHNob3ctcmVmIC0tZXhjbHVkZS1leGlzdGluZ1s9PHBhdHRlcm4+XSIKIG1zZ3N0ciAiZ2l0IHNob3ctcmVmIC0tZXhjbHVkZS1leGlzdGluZ1s9PG3huqt1Pl0iCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjEKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjIKIG1zZ2lkICJvbmx5IHNob3cgdGFncyAoY2FuIGJlIGNvbWJpbmVkIHdpdGggaGVhZHMpIgogbXNnc3RyICJjaOG7iSBoaeG7g24gdGjhu4sgdGjhursgKGPDsyB0aOG7gyB04buVIGjhu6NwIGPDuW5nIHbhu5tpIMSR4bqndSkiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjIKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjMKIG1zZ2lkICJvbmx5IHNob3cgaGVhZHMgKGNhbiBiZSBjb21iaW5lZCB3aXRoIHRhZ3MpIgogbXNnc3RyICJjaOG7iSBoaeG7g24gdGjhu4sgxJHhuqd1IChjw7MgdGjhu4MgdOG7lSBo4bujcCBjw7luZyB24bubaSB0aOG6uykiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjMKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjQKIG1zZ2lkICJzdHJpY3RlciByZWZlcmVuY2UgY2hlY2tpbmcsIHJlcXVpcmVzIGV4YWN0IHJlZiBwYXRoIgogbXNnc3RyICIiCiAidmnhu4djIGtp4buDbSB0cmEgdGhhbSBjaGnhur91IGNow61uaCB4w6FjLCDEkcOyaSBo4buPaSBjaMOtbmggeMOhYyDEkcaw4budbmcgZOG6q24gdGhhbSBjaGnhur91IgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTY2IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjgKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjcgYnVpbHRpbi9zaG93LXJlZi5jOjE2OQogbXNnaWQgInNob3cgdGhlIEhFQUQgcmVmZXJlbmNlLCBldmVuIGlmIGl0IHdvdWxkIGJlIGZpbHRlcmVkIG91dCIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIHRoYW0gY2hp4bq/dSBIRUFELCBuZ2F5IGPhuqMga2hpIG7DsyDEkcOjIMSRxrDhu6NjIGzhu41jIHJhIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTcwCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTcxCiBtc2dpZCAiZGVyZWZlcmVuY2UgdGFncyBpbnRvIG9iamVjdCBJRHMiCiBtc2dzdHIgImLDo2kgYuG7jyB0aGFtIGNoaeG6v3UgY8OhYyB0aOG6uyB0aMOgbmggcmEgY8OhYyBJRCDEkeG7kWkgdMaw4bujbmciCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzIKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzMKIG1zZ2lkICJvbmx5IHNob3cgU0hBMSBoYXNoIHVzaW5nIDxuPiBkaWdpdHMiCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyBtw6MgYsSDbSBTSEExIHPhu60gZOG7pW5nIDxuPiBjaOG7ryBz4buRIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTc2CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc3CiBtc2dpZCAiZG8gbm90IHByaW50IHJlc3VsdHMgdG8gc3Rkb3V0ICh1c2VmdWwgd2l0aCAtLXZlcmlmeSkiCiBtc2dzdHIgIiIKICJraMO0bmcgaGnhu4NuIHRo4buLIGvhur90IHF14bqjIHJhIMSR4bqndSByYSBjaHXhuqluIChzdGRvdXQpIChjaOG7iSBo4buvdSBk4bulbmcgduG7m2kgLS12ZXJpZnkpIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTc4CisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc5CiBtc2dpZCAic2hvdyByZWZzIGZyb20gc3RkaW4gdGhhdCBhcmVuJ3QgaW4gbG9jYWwgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiIgogImhp4buDbiB0aOG7iyBjw6FjIHRoYW0gY2hp4bq/dSB04burIMSR4bqndSB2w6BvIHRpw6p1IGNodeG6qW4gKHN0ZGluKSBjw6FpIG3DoCBraMO0bmcg4bufIGtobyBu4buZaSAiCiAiYuG7mSIKIAorIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyMQorbXNnaWQgImdpdCBzcGFyc2UtY2hlY2tvdXQgKGluaXR8bGlzdHxzZXR8YWRkfGRpc2FibGUpIDxvcHRpb25zPiIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCAoaW5pdHxsaXN0fHNldHxhZGR8ZGlzYWJsZSkgPGPDoWMtdMO5eS1jaOG7jW4+IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjY0Cittc2dpZCAidGhpcyB3b3JrdHJlZSBpcyBub3Qgc3BhcnNlIChzcGFyc2UtY2hlY2tvdXQgZmlsZSBtYXkgbm90IGV4aXN0KSIKK21zZ3N0ciAiIgorImtow7RuZyB0aOG7gyBwaMOibiB0w61jaCBjw7ogcGjDoXAgY8OieSBsw6BtIHZp4buHYyBuw6B5ICh04bqtcCB0aW4gc3BhcnNlLWNoZWNrb3V0IGPDsyBs4bq9ICIKKyJraMO0bmcgdOG7k24gdOG6oWkpIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjIyNQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IGZvciBzcGFyc2UtY2hlY2tvdXQgZmlsZSIKK21zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHThuqFvIHRoxrAgbeG7pWMgY2hvIHThuq1wIHRpbiBzcGFyc2UtY2hlY2tvdXQiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHNldCBleHRlbnNpb25zLndvcmt0cmVlQ29uZmlnIHNldHRpbmciCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSDEkeG6t3QgY8OgaSDEkeG6t3QgZXh0ZW5zaW9ucy53b3JrdHJlZUNvbmZpZyIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyODMKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IGluaXQgWy0tY29uZV0iCittc2dzdHIgImdpdCBzcGFyc2UtY2hlY2tvdXQgaW5pdCBbLS1jb25lXSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzozMDIKK21zZ2lkICJpbml0aWFsaXplIHRoZSBzcGFyc2UtY2hlY2tvdXQgaW4gY29uZSBtb2RlIgorbXNnc3RyICJraOG7n2kgdOG6oW8gc3BhcnNlLWNoZWNrb3V0IHRyb25nIGNo4bq/IMSR4buZIG7Ds24iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MzA4Cittc2dpZCAiaW5pdGlhbGl6ZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgImto4bufaSB04bqhbyBzcGFyc2UtY2hlY2tvdXQiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyciCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSBt4bufIOKAnCVz4oCdIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjM5OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgbm9ybWFsaXplIHBhdGggJXMiCittc2dzdHIgImtow7RuZyB0aOG7gyB0aMaw4budbmcgaMOzYSDEkcaw4budbmcgZOG6q24g4oCcJXPigJ0iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDEwCittc2dpZCAiZ2l0IHNwYXJzZS1jaGVja291dCAoc2V0fGFkZCkgKC0tc3RkaW4gfCA8cGF0dGVybnM+KSIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCAoc2V0fGFkZCkgKC0tc3RkaW4gfCA8Y8OhYyBt4bqrdT4pIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdW5xdW90ZSBDLXN0eWxlIHN0cmluZyAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgYuG7jyB0csOtY2ggZOG6q24gY2h14buXaSBraeG7g3UgQyDigJwlc+KAnSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo0ODkgYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1MTMKK21zZ2lkICJ1bmFibGUgdG8gbG9hZCBleGlzdGluZyBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMiCittc2dzdHIgImtow7RuZyB0aOG7gyB04bqjaSBjw6FjIG3huqt1IHNwYXJzZS1jaGVja291dCIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1NTgKK21zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gc3RhbmRhcmQgaW4iCittc2dzdHIgIsSR4buNYyBjw6FjIG3huqt1IHThu6sgxJHhuqd1IHbDoG8gdGnDqnUgY2h14bqpbiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1NjQKK21zZ2lkICJzZXQgc3BhcnNlLWNoZWNrb3V0IHBhdHRlcm5zIgorbXNnc3RyICLEkeG6t3QgY8OhYyBt4bqrdSBzcGFyc2UtY2hlY2tvdXQiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTgxCittc2dpZCAiZGlzYWJsZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgInThuq90IHNwYXJzZS1jaGVja291dCIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1OTMKK21zZ2lkICJlcnJvciB3aGlsZSByZWZyZXNoaW5nIHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhu41jIGzhuqFpIHRoxrAgbeG7pWMgbMOgbSB2aeG7h2MiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMiBidWlsdGluL3N0YXNoLmM6MzgKK21zZ2lkICJnaXQgc3Rhc2ggbGlzdCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGxpc3QgWzxjw6FjIHTDuXkgY2jhu41uPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMyBidWlsdGluL3N0YXNoLmM6NDMKK21zZ2lkICJnaXQgc3Rhc2ggc2hvdyBbPG9wdGlvbnM+XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBzaG93IFs8Y8OhYyB0w7l5IGNo4buNbj5dIDxzdGFzaD4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNCBidWlsdGluL3N0YXNoLmM6NDgKK21zZ2lkICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjUKK21zZ2lkICJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjYgYnVpbHRpbi9zdGFzaC5jOjYzCittc2dpZCAiZ2l0IHN0YXNoIGJyYW5jaCA8YnJhbmNobmFtZT4gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggYnJhbmNoIDx0w6puLW5ow6FuaD4gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjcgYnVpbHRpbi9zdGFzaC5jOjY4Cittc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIgorbXNnc3RyICJnaXQgc3Rhc2ggY2xlYXIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyOAorbXNnaWQgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XVxuIgorIiAgICAgICAgICBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxs4budaSBuaOG6r24+XVxuIgorIiAgICAgICAgICBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9PHThuq1wX3Rpbj4gWy0tcGF0aHNwZWMtZmlsZS1udWxdXVxuIgorIiAgICAgICAgICBbLS1dIFs8xJHhurdjL3ThuqMvxJHGsOG7nW5nL2ThuqtuPuKApl1dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MzIgYnVpbHRpbi9zdGFzaC5jOjg1Cittc2dpZCAiIgorImdpdCBzdGFzaCBzYXZlIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbPG1lc3NhZ2U+XSIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBzYXZlIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbPGdoaSBjaMO6Pl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1MworbXNnaWQgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1OAorbXNnaWQgImdpdCBzdGFzaCBhcHBseSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGFwcGx5IFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NzMKK21zZ2lkICJnaXQgc3Rhc2ggc3RvcmUgWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dIFstcXwtLXF1aWV0XSA8Y29tbWl0PiIKK21zZ3N0ciAiZ2l0IHN0YXNoIHN0b3JlIFstbXwtLW1lc3NhZ2UgPGdoaSBjaMO6Pl0gWy1xfC0tcXVpZXRdIDxjb21taXQ+IgorCisjOiBidWlsdGluL3N0YXNoLmM6NzgKK21zZ2lkICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxs4budaSBuaOG6r24+XVxuIgorIiAgICAgICAgICBbLS1dIFs8xJHhurdjL3ThuqMvxJHGsOG7nW5nL2ThuqtuPuKApl1dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgc3Rhc2gtbGlrZSBjb21taXQiCittc2dzdHIgIuKAnCVz4oCdIGtow7RuZyBwaOG6o2kgbMOgIGzhuqduIGNodXnhu4NuIGdpYW8ga2nhu4N1LXN0YXNoIChj4bqldCDEkWkpIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIlRvbyBtYW55IHJldmlzaW9ucyBzcGVjaWZpZWQ6JXMiCittc2dzdHIgIkNo4buJIHJhIHF1w6Egbmhp4buBdSDEkWnhu4NtIHjDqXQgZHV54buHdDogJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNjIgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NDkKK21zZ2lkICJObyBzdGFzaCBlbnRyaWVzIGZvdW5kLiIKK21zZ3N0ciAiS2jDtG5nIHTDrG0gdGjhuqV5IGPDoWMgbeG7pWMgdOG6oW0gY+G6pXQgKHN0YXNoKSBuw6BvLiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCByZWZlcmVuY2UiCittc2dzdHIgIuKAnCVz4oCdIGtow7RuZyBwaOG6o2kgbeG7mXQgdGhhbSBjaGnhur91IGjhu6NwIGzhu4ciCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMjUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3NQorbXNnaWQgImdpdCBzdGFzaCBjbGVhciB3aXRoIHBhcmFtZXRlcnMgaXMgdW5pbXBsZW1lbnRlZCIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBjbGVhciB24bubaSBjw6FjIHRoYW0gc+G7kSBsw6AgY2jGsGEgxJHGsOG7o2MgdGjhu7FjIGhp4buHbiAoa2jDtG5nIG5o4bqtbiDEkeG7kWkgc+G7kSkiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MDQKK21zZ2lkICJjYW5ub3QgYXBwbHkgYSBzdGFzaCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UiCittc2dzdHIgImtow7RuZyB0aOG7gyDDoXAgZOG7pW5nIG3hu5l0IHN0YXNoIOG7nyBnaeG7r2EgY+G7p2EgcXXDoSB0csOsbmggaMOyYSB0cuG7mW4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIGRpZmYgJXNeIS4iCittc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyBkaWZmICVzXiEuIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDIyCittc2dpZCAiY29uZmxpY3RzIGluIGluZGV4LlRyeSB3aXRob3V0IC0taW5kZXguIgorbXNnc3RyICJ4dW5nIMSR4buZdCB0cm9uZyBi4bqjbmcgbeG7pWMgbOG7pWMuIEjDo3kgdGjhu60gbcOgIGtow7RuZyBkw7luZyB0w7l5IGNo4buNbiAtLWluZGV4LiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQyOAorbXNnaWQgImNvdWxkIG5vdCBzYXZlIGluZGV4IHRyZWUiCittc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgbOG6oWkgY8OieSBjaOG7iSBt4bulYyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQzNworbXNnaWQgImNvdWxkIG5vdCByZXN0b3JlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHN0YXNoIgorbXNnc3RyICJraMO0bmcgdGjhu4MgcGjhu6VjIGjhu5NpIGPDoWMgdOG6rXAgdGluIGNoxrBhIHRoZW8gZMO1aSB04burIG3hu6VjIGPhuqV0IMSRaSAoc3Rhc2gpIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIk1lcmdpbmcgJXMgd2l0aCAlcyIKK21zZ3N0ciAixJBhbmcgaMOyYSB0cuG7mW4gJXMgduG7m2kgJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0NjEgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2ODEKK21zZ2lkICJJbmRleCB3YXMgbm90IHVuc3Rhc2hlZC4iCittc2dzdHIgIkLhuqNuZyBt4bulYyBs4bulYyDEkcOjIGtow7RuZyDEkcaw4bujYyBi4buPIHN0YXNoLiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjUyMiBidWlsdGluL3N0YXNoLmM6NjIxCittc2dpZCAiYXR0ZW1wdCB0byByZWNyZWF0ZSB0aGUgaW5kZXgiCittc2dzdHIgImfhurdwIGzhu5dpIMSR4buNYyBi4bqjbmcgbeG7pWMgbOG7pWMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRHJvcHBlZCAlcyAoJXMpIgorbXNnc3RyICLEkMOjIHjDs2EgJXMgKCVzKSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCittc2dzdHIgIiVzOiBLaMO0bmcgdGjhu4MgeMOzYSBi4buPIG3hu6VjIHN0YXNoIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgc3Rhc2ggcmVmZXJlbmNlIgorbXNnc3RyICLigJ0lc+KAnSBraMO0bmcgcGjhuqNpIHRoYW0gY2hp4bq/dSDEkeG6v24gc3Rhc2giCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2MzMgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2OTUKK21zZ2lkICJUaGUgc3Rhc2ggZW50cnkgaXMga2VwdCBpbiBjYXNlIHlvdSBuZWVkIGl0IGFnYWluLiIKK21zZ3N0ciAiQ8OhYyBt4bulYyB04bqhbSBj4bqldCAoc3Rhc2gpIMSRxrDhu6NjIGdp4buvIHRyb25nIHRyxrDhu51uZyBo4bujcCBi4bqhbiBs4bqhaSBj4bqnbiBuw7MuIgorCisjOiBidWlsdGluL3N0YXNoLmM6NjU2IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzEzCittc2dpZCAiTm8gYnJhbmNoIG5hbWUgc3BlY2lmaWVkIgorbXNnc3RyICJDaMawYSBjaOG7iSByYSB0w6puIGPhu6dhIG5ow6FuaCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjc5NiBidWlsdGluL3N0YXNoLmM6ODMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCB1cGRhdGUgJXMgd2l0aCAlcyIKK21zZ3N0ciAiS2jDtG5nIHRo4buDIGPhuq1wIG5o4bqtdCAlcyB24bubaSAlcyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjgxNCBidWlsdGluL3N0YXNoLmM6MTQ3OCBidWlsdGluL3N0YXNoLmM6MTU0MworbXNnaWQgInN0YXNoIG1lc3NhZ2UiCittc2dzdHIgInBo4bqnbiBjaMO6IHRow61jaCBjaG8gc3Rhc2giCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo4MjQKK21zZ2lkICJcImdpdCBzdGFzaCBzdG9yZVwiIHJlcXVpcmVzIG9uZSA8Y29tbWl0PiBhcmd1bWVudCIKK21zZ3N0ciAiXCJnaXQgc3Rhc2ggc3RvcmVcIiBj4bqnbiBt4buZdCDEkeG7kWkgc+G7kSA8bOG6p24gY2h1eeG7g24gZ2lhbz4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMDQ5IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjE4Cittc2dpZCAiTm8gY2hhbmdlcyBzZWxlY3RlZCIKK21zZ3N0ciAiQ2jGsGEgY8OzIHRoYXkgxJHhu5VpIG7DoG8gxJHGsOG7o2MgY2jhu41uIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE0OSBnaXQtbGVnYWN5LXN0YXNoLnNoOjE1MAorbXNnaWQgIllvdSBkbyBub3QgaGF2ZSB0aGUgaW5pdGlhbCBjb21taXQgeWV0IgorbXNnc3RyICJC4bqhbiBjaMawYSBjw7JuIGPDsyBs4bqnbiBjaHV54buDbiBnaWFvIGto4bufaSB04bqhbyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExNzYgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxNjUKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBpbmRleCBzdGF0ZSIKK21zZ3N0ciAiS2jDtG5nIHRo4buDIGdoaSBs4bqhaSB0cuG6oW5nIHRow6FpIGLhuqNuZyBt4bulYyBs4bulYyBoaeG7h24gaMOgbmgiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTg1IGdpdC1sZWdhY3ktc3Rhc2guc2g6MTgwCittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIHVudHJhY2tlZCBmaWxlcyIKK21zZ3N0ciAiS2jDtG5nIHRo4buDIGdoaSBs4bqhaSBjw6FjIHThuq1wIHRpbiBjaMawYSB0aGVvIGTDtWkiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTk2IGJ1aWx0aW4vc3Rhc2guYzoxMjA1IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjAxCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIxNAorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHdvcmt0cmVlIHN0YXRlIgorbXNnc3RyICJLaMO0bmcgdGjhu4MgZ2hpIGzhuqFpIHRy4bqhbmcgdGjDoWkgY8OieS1sw6BtLXZp4buHYyBoaeG7h24gaMOgbmgiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMjMzIGdpdC1sZWdhY3ktc3Rhc2guc2g6MjM0Cittc2dpZCAiQ2Fubm90IHJlY29yZCB3b3JraW5nIHRyZWUgc3RhdGUiCittc2dzdHIgIktow7RuZyB0aOG7gyBnaGkgbOG6oWkgdHLhuqFuZyB0aMOhaSBjw6J5IGzDoG0gdmnhu4djIGhp4buHbiBow6BuaCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyODIgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMzgKK21zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgorbXNnc3RyICJLaMO0bmcgdGjhu4MgZMO5bmcgLS1wYXRjaCB2w6AgLS1pbmNsdWRlLXVudHJhY2tlZCBoYXkgLS1hbGwgY8O5bmcgbeG7mXQgbMO6YyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyOTgKK21zZ2lkICJEaWQgeW91IGZvcmdldCB0byAnZ2l0IGFkZCc/IgorbXNnc3RyICJDw7MgbOG6vSBi4bqhbiDEkcOjIHF1w6puIOKAnGdpdCBhZGQg4oCdIHBo4bqjaSBraMO0bmc/IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTMxMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjM0NgorbXNnaWQgIk5vIGxvY2FsIGNoYW5nZXMgdG8gc2F2ZSIKK21zZ3N0ciAiS2jDtG5nIGPDsyB0aGF5IMSR4buVaSBu4buZaSBi4buZIG7DoG8gxJHGsOG7o2MgZ2hpIGzhuqFpIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTMyMCBnaXQtbGVnYWN5LXN0YXNoLnNoOjM1MQorbXNnaWQgIkNhbm5vdCBpbml0aWFsaXplIHN0YXNoIgorbXNnc3RyICJLaMO0bmcgdGjhu4Mga2jhu59pIHThuqFvIHN0YXNoIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTMzNSBnaXQtbGVnYWN5LXN0YXNoLnNoOjM1NQorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHN0YXR1cyIKK21zZ3N0ciAiS2jDtG5nIHRo4buDIGdoaSBs4bqhaSB0cuG6oW5nIHRow6FpIGhp4buHbiBow6BuaCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2F2ZWQgd29ya2luZyBkaXJlY3RvcnkgYW5kIGluZGV4IHN0YXRlICVzIgorbXNnc3RyICLEkMOjIGdoaSBs4bqhaSB0aMawIG3hu6VjIGzDoG0gdmnhu4djIHbDoCB0cuG6oW5nIHRow6FpIG3hu6VjIGzhu6VjICVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQzMCBnaXQtbGVnYWN5LXN0YXNoLnNoOjM4NQorbXNnaWQgIkNhbm5vdCByZW1vdmUgd29ya3RyZWUgY2hhbmdlcyIKK21zZ3N0ciAiS2jDtG5nIHRo4buDIGfhu6EgYuG7jyBjw6FjIHRoYXkgxJHhu5VpIGPDonktbMOgbS12aeG7h2MiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDY5IGJ1aWx0aW4vc3Rhc2guYzoxNTM0Cittc2dpZCAia2VlcCBpbmRleCIKK21zZ3N0ciAiZ2nhu68gbmd1ecOqbiBi4bqjbmcgbeG7pWMgbOG7pWMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDcxIGJ1aWx0aW4vc3Rhc2guYzoxNTM2Cittc2dpZCAic3Rhc2ggaW4gcGF0Y2ggbW9kZSIKK21zZ3N0ciAiY+G6pXQgxJFpIOG7nyBjaOG6vyDEkeG7mSBtaeG6v25nIHbDoSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NzIgYnVpbHRpbi9zdGFzaC5jOjE1MzcKK21zZ2lkICJxdWlldCBtb2RlIgorbXNnc3RyICJjaOG6vyDEkeG7mSBpbSBs4bq3bmciCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDc0IGJ1aWx0aW4vc3Rhc2guYzoxNTM5Cittc2dpZCAiaW5jbHVkZSB1bnRyYWNrZWQgZmlsZXMgaW4gc3Rhc2giCittc2dzdHIgImJhbyBn4buTbSBjw6FjIHThuq1wIHRpbiBraMO0bmcgxJHGsOG7o2MgdGhlbyBkw7VpIHRyb25nIHN0YXNoIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3NiBidWlsdGluL3N0YXNoLmM6MTU0MQorbXNnaWQgImluY2x1ZGUgaWdub3JlIGZpbGVzIgorbXNnc3RyICJiYW8gZ+G7k20gY8OhYyB04bqtcCB0aW4gYuG7iyBi4buPIHF1YSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE2MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGV4ZWMgJXMiCittc2dzdHIgImtow7RuZyB0aOG7gyB0aOG7sWMgdGhpICVzIgorCiAjOiBidWlsdGluL3N0cmlwc3BhY2UuYzoxOAogbXNnaWQgImdpdCBzdHJpcHNwYWNlIFstcyB8IC0tc3RyaXAtY29tbWVudHNdIgogbXNnc3RyICJnaXQgc3RyaXBzcGFjZSBbLXMgfCAtLXN0cmlwLWNvbW1lbnRzXSIKQEAgLTE3MTA1LDQ4ICsyMDcyMyw0OCBAQAogbXNnaWQgImdpdCBzdHJpcHNwYWNlIFstYyB8IC0tY29tbWVudC1saW5lc10iCiBtc2dzdHIgImdpdCBzdHJpcHNwYWNlIFstYyB8IC0tY29tbWVudC1saW5lc10iCiAKLSM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM2CisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzozNwogbXNnaWQgInNraXAgYW5kIHJlbW92ZSBhbGwgbGluZXMgc3RhcnRpbmcgd2l0aCBjb21tZW50IGNoYXJhY3RlciIKIG1zZ3N0ciAiZ2nhu68gdsOgIHjDs2EgYuG7jyBt4buNaSBkw7JuZyBi4bqvdCDEkeG6p3UgYuG6sW5nIGvDvSB04buxIGdoaSBjaMO6IgogCi0jOiBidWlsdGluL3N0cmlwc3BhY2UuYzozOQorIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6NDAKIG1zZ2lkICJwcmVwZW5kIGNvbW1lbnQgY2hhcmFjdGVyIGFuZCBzcGFjZSB0byBlYWNoIGxpbmUiCiBtc2dzdHIgInRyZW8gdHLGsOG7m2Mga8O9IHThu7EgZ2hpIGNow7ogdsOgIGvDvSB04buxIGtob+G6o25nIHRy4bqvbmcgY2hvIHThu6tuZyBkw7JuZyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTM5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXhwZWN0aW5nIGEgZnVsbCByZWYgbmFtZSwgZ290ICVzIgogbXNnc3RyICJD4bqnbiB0w6puIHRoYW0gY2hp4bq/dSBk4bqhbmcgxJHhuqd5IMSR4bunLCBuaMawbmcgbOG6oWkgbmjhuq1uIMSRxrDhu6NjICVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NAogbXNnaWQgInN1Ym1vZHVsZS0taGVscGVyIHByaW50LWRlZmF1bHQtcmVtb3RlIHRha2VzIG5vIGFyZ3VtZW50cyIKIG1zZ3N0ciAic3VibW9kdWxlLS1oZWxwZXIgcHJpbnQtZGVmYXVsdC1yZW1vdGUgdGFrZXMga2jDtG5nIG5o4bqtbiB0aGFtIHPhu5EiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RyaXAgb25lIGNvbXBvbmVudCBvZmYgdXJsICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBj4bqvdCBi4buPIG3hu5l0IHRow6BuaCBwaOG6p24gcmEga2jhu49pIOKAnCVz4oCdIHVybCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwNyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxMCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NQogbXNnaWQgImFsdGVybmF0aXZlIGFuY2hvciBmb3IgcmVsYXRpdmUgcGF0aHMiCiBtc2dzdHIgIsSRaeG7g20gbmVvIHRoYXkgdGjhur8gY2hvIGPDoWMgxJHGsOG7nW5nIGThuqtuIHTGsMahbmcgxJHhu5FpIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDEyCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDE1CiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGxpc3QgWy0tcHJlZml4PTxwYXRoPl0gWzxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBsaXN0IFstLXByZWZpeD08L8SRxrDhu51uZy9k4bqrbj5dIFs8L8SRxrDhu51uZy9k4bqrbj7igKZdIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDY5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2MjYKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NDkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYzMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJObyB1cmwgZm91bmQgZm9yIHN1Ym1vZHVsZSBwYXRoICclcycgaW4gLmdpdG1vZHVsZXMiCiBtc2dzdHIgIktow7RuZyB0w6xtIHRo4bqleSB1cmwgY2hvIMSRxrDhu51uZyBk4bqrbiBtw7QtxJF1bi1jb24g4oCcJXPigJ0gdHJvbmcgLmdpdG1vZHVsZXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRW50ZXJpbmcgJyVzJ1xuIgogbXNnc3RyICLEkGFuZyB2w6BvIOKAnCVz4oCdXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyBmb3IgJXNcbiIKQEAgLTE3MTU1LDcgKzIwNzczLDcgQEAKICJydW5fY29tbWFuZCB0cuG6oyB24buBIHRy4bqhbmcgdGjDoWkga2jDoWMga2jDtG5nIGNobyAlc1xuIgogIi4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NDUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyB3aGlsZSByZWN1cnNpbmcgaW4gdGhlIG5lc3RlZCAiCkBAIC0xNzE2NiwxOSArMjA3ODQsMTkgQEAKICJjb24gbOG7k25nIG5oYXUgY+G7p2EgJXNcbiIKICIuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTYxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY1CiBtc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IG9mIGVudGVyaW5nIGVhY2ggc3VibW9kdWxlIGNvbW1hbmQiCiBtc2dzdHIgIkNo4bq3biBr4bq/dCB4deG6pXQgY+G7p2EgdOG7q25nIGzhu4duaCBtw7QtxJF1bi1jb24iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNDgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNjMKIG1zZ2lkICJSZWN1cnNlIGludG8gbmVzdGVkIHN1Ym1vZHVsZXMiCiBtc2dzdHIgIsSQ4buHIHF1eSB2w6BvIHRyb25nIGPDoWMgbcO0LcSRdW4tY29uIGzhu5NuZyBuaGF1IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY4Ci1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGZvcmVhY2ggWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gPGNvbW1hbmQ+IgotbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSA8bOG7h25oPiIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NzIKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbLS1dIDxjb21tYW5kPiIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGZvcmVhY2ggWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWy0tXSAgPGzhu4duaD4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1OTUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNvdWxkIG5vdCBsb29rIHVwIGNvbmZpZ3VyYXRpb24gJyVzJy4gQXNzdW1pbmcgdGhpcyByZXBvc2l0b3J5IGlzIGl0cyBvd24gIgpAQCAtMTcxODcsNTYgKzIwODA1LDU2IEBACiAia2jDtG5nIHRo4buDIHTDrG0gdGjhuqV5IGPhuqV1IGjDrG5oIOKAnCVz4oCdLiBDb2kgcuG6sW5nIMSRw6J5IGzDoCBraG8gdGjGsOG7o25nIG5ndeG7k24gY8OzIHF1eeG7gW4gIgogInPhu58gaOG7r3UgY2jDrW5oIG7Dsy4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NjMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHVybCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIMSRxINuZyBrw70gdXJsIGNobyDEkcaw4budbmcgZOG6q24gbcO0LcSRdW4tY29uIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjY3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSAnJXMnICglcykgcmVnaXN0ZXJlZCBmb3IgcGF0aCAnJXMnXG4iCiBtc2dzdHIgIk3DtC3EkXVuLWNvbiDigJwlc+KAnSAoJXMpIMSRxrDhu6NjIMSRxINuZyBrw70gY2hvIMSRxrDhu51uZyBk4bqrbiDigJwlc+KAnVxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Njc3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGNvbW1hbmQgdXBkYXRlIG1vZGUgc3VnZ2VzdGVkIGZvciBzdWJtb2R1bGUgJyVzJ1xuIgogbXNnc3RyICJj4bqjbmggYsOhbzogY2jhur8gxJHhu5kgbOG7h25oIGPhuq1wIG5o4bqtdCDEkcaw4bujYyBn4bujaSDDvSBjaG8gbcO0LcSRdW4tY29uIOKAnCVz4oCdXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2ODQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHVwZGF0ZSBtb2RlIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICJH4bq3cCBs4buXaSBraGkgxJHEg25nIGvDvSBjaOG6vyDEkeG7mSBj4bqtcCBuaOG6rXQgY2hvIMSRxrDhu51uZyBk4bqrbiBtw7QtxJF1bi1jb24g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MDYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MTAKIG1zZ2lkICJTdXBwcmVzcyBvdXRwdXQgZm9yIGluaXRpYWxpemluZyBhIHN1Ym1vZHVsZSIKIG1zZ3N0ciAiQ2jhurduIGvhur90IHh14bqldCBjaG8ga2jhu59pIHThuqFvIG3hu5l0IG3DtC3EkXVuLWNvbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcxMQotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs8cGF0aD5dIgotbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPC/Ekcaw4budbmcvZOG6q24+XSIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MTUKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPG9wdGlvbnM+XSBbPHBhdGg+XSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxjw6FjIHTDuXkgY2jhu41uPl0gWzwvxJHGsOG7nW5nL2ThuqtuPl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3ODMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjc4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Ym1vZHVsZSBtYXBwaW5nIGZvdW5kIGluIC5naXRtb2R1bGVzIGZvciBwYXRoICclcyciCiBtc2dzdHIgIiIKLSJLaMO0bmcgdMOsbSB0aOG6pXkgw6FuaCB44bqhIChtYXBwaW5nKSBtw7QtxJF1bi1jb24gdHJvbmcgLmdpdG1vZHVsZXMgY2hvIMSRxrDhu51uZyBk4bqrbiAiCisia2jDtG5nIHTDrG0gdGjhuqV5IMOhbmggeOG6oSAobWFwcGluZykgbcO0LcSRdW4tY29uIHRyb25nIC5naXRtb2R1bGVzIGNobyDEkcaw4budbmcgZOG6q24gIgogIuKAnCVz4oCdIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODIyCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlIEhFQUQgcmVmIGluc2lkZSB0aGUgc3VibW9kdWxlICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBwaMOibiBnaeG6o2kgdGhhbSBjaGnhur91IEhFQUQgYsOqbiB0cm9uZyBtw7QtxJF1bi1jb24g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NDkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMTgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NjQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMSR4buHIHF1eSB2w6BvIHRyb25nIG3DtC3EkXVuLWNvbiDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg3MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg4OCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE5OQogbXNnaWQgIlN1cHByZXNzIHN1Ym1vZHVsZSBzdGF0dXMgb3V0cHV0IgogbXNnc3RyICJDaOG6t24ga8OpdCB4deG6pXQgdMOsbmggdHLhuqFuZyBtw7QtxJF1bi1jb24iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODkKIG1zZ2lkICIiCiAiVXNlIGNvbW1pdCBzdG9yZWQgaW4gdGhlIGluZGV4IGluc3RlYWQgb2YgdGhlIG9uZSBzdG9yZWQgaW4gdGhlIHN1Ym1vZHVsZSAiCiAiSEVBRCIKQEAgLTE3MjQ0LDQ4ICsyMDg2Miw0OCBAQAogIkTDuW5nIGzhuqduIGNodXnhu4NuIGdpYW8gbMawdSB0cm9uZyBt4bulYyBs4bulYyB0aGF5IGNobyBjw6FpIMSRxrDhu6NjIGzGsHUgdHJvbmcgSEVBRCBtw7QtIgogIsSRdW4tY29uIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODc1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODkwCiBtc2dpZCAicmVjdXJzZSBpbnRvIG5lc3RlZCBzdWJtb2R1bGVzIgogbXNnc3RyICLEkeG7hyBxdXkgdsOgbyB0cm9uZyBtw7QtxJF1bi1jb24gbOG7k25nIG5oYXUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4ODAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4OTUKIG1zZ2lkICJnaXQgc3VibW9kdWxlIHN0YXR1cyBbLS1xdWlldF0gWy0tY2FjaGVkXSBbLS1yZWN1cnNpdmVdIFs8cGF0aD4uLi5dIgogbXNnc3RyICIiCiAiZ2l0IHN1Ym1vZHVsZSBzdGF0dXMgWy0tcXVpZXRdIFstLWNhY2hlZF0gWy0tcmVjdXJzaXZlXSBbPC/Ekcaw4budbmcvZOG6q24+4oCmXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkwNAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkxOQogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBuYW1lIDxwYXRoPiIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIG5hbWUgPC/Ekcaw4budbmcvZOG6q24+IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTY4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlN5bmNocm9uaXppbmcgc3VibW9kdWxlIHVybCBmb3IgJyVzJ1xuIgotbXNnc3RyICJ1cmwgbcO0LcSRdW4tY29uIMSR4buTbmcgYuG7mSBow7NhIGNobyDigJwlc+KAnVxuIgorbXNnc3RyICJVcmwgbcO0LcSRdW4tY29uIMSR4buTbmcgYuG7mSBow7NhIGNobyDigJwlc+KAnVxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTc0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWdpc3RlciB1cmwgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSDEkcSDbmcga8O9IHVybCBjaG8gxJHGsOG7nW5nIGThuqtuIG3DtC3EkXVuLWNvbiDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk4OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGdldCB0aGUgZGVmYXVsdCByZW1vdGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgbOG6pXkgbcOheSBjaOG7pyBt4bq3YyDEkeG7i25oIGNobyBtw7QtxJF1bi1jb24g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5OTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDE0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byB1cGRhdGUgcmVtb3RlIGZvciBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIGPhuq1wIG5o4bqtdCBjaG8gbcO0LcSRdW4tY29uIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA0NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNjEKIG1zZ2lkICJTdXBwcmVzcyBvdXRwdXQgb2Ygc3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIgogbXNnc3RyICJDaOG6t24ga+G6v3QgeHXhuqV0IGNobyDEkeG7k25nIGLhu5kgdXJsIG3DtC3EkXVuLWNvbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNTMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDY4CiBtc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHN5bmMgWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWzxwYXRoPl0iCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBzeW5jIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFs8L8SRxrDhu51uZy9k4bqrbj5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEwNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJyBjb250YWlucyBhIC5naXQgZGlyZWN0b3J5ICh1c2UgJ3JtIC1yZicgaWYgeW91ICIKQEAgLTE3Mjk0LDcgKzIwOTEyLDcgQEAKICJDw6J5IGzDoG0gdmnhu4djIG3DtC3EkXVuLWNvbiDigJwlc+KAnSBjw7MgY2jhu6lhIHRoxrAgbeG7pWMgLmdpdCAoZMO5bmcg4oCccm0gLXJm4oCdIG7hur91IGLhuqFuICIKICJ0aOG7sWMgc+G7sSBtdeG7kW4gZ+G7oSBi4buPIG7DsyBjw7luZyB24bubaSB0b8OgbiBi4buZIGzhu4tjaCBz4butIGPhu6dhIGNow7puZykiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTE5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiU3VibW9kdWxlIHdvcmsgdHJlZSAnJXMnIGNvbnRhaW5zIGxvY2FsIG1vZGlmaWNhdGlvbnM7IHVzZSAnLWYnIHRvIGRpc2NhcmQgIgpAQCAtMTczMDMsMTc2ICsyMDkyMSwyMDcgQEAKICJDw6J5IGzDoG0gdmnhu4djIG3DtC3EkXVuLWNvbiDigJwlc+KAnSBjaOG7qWEgY8OhYyB0aGF5IMSR4buVaSBu4buZaSBi4buZOyBow6N5IGTDuW5nIOKAnC1m4oCdIMSR4buDIGxv4bqhaSAiCiAiYuG7jyBjaMO6bmcgxJFpIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2xlYXJlZCBkaXJlY3RvcnkgJyVzJ1xuIgogbXNnc3RyICLEkMOjIHjDs2EgdGjGsCBt4bulYyDigJwlc+KAnVxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEyOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlbW92ZSBzdWJtb2R1bGUgd29yayB0cmVlICclcydcbiIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIGfhu6EgYuG7jyBjw6J5IGzDoG0gdmnhu4djIG3DtC3EkXVuLWNvbiDigJwlc+KAnVxuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEzOAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBlbXB0eSBzdWJtb2R1bGUgZGlyZWN0b3J5ICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gdGjGsCBt4bulYyBtw7QtxJF1bi1jb24gcuG7l25nIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE1NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlICclcycgKCVzKSB1bnJlZ2lzdGVyZWQgZm9yIHBhdGggJyVzJ1xuIgogbXNnc3RyICJNw7QtxJF1bi1jb24g4oCcJXPigJ0gKCVzKSDEkcaw4bujYyDEkcSDbmcga8O9IGNobyDEkcaw4budbmcgZOG6q24g4oCcJXPigJ1cbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjAwCiBtc2dpZCAiUmVtb3ZlIHN1Ym1vZHVsZSB3b3JraW5nIHRyZWVzIGV2ZW4gaWYgdGhleSBjb250YWluIGxvY2FsIGNoYW5nZXMiCiBtc2dzdHIgIkfhu6EgYuG7jyBjw6J5IGzDoG0gdmnhu4djIGPhu6dhIG3DtC3EkXVuLWNvbiBuZ2F5IGPhuqMga2hpIG7DsyBjw7MgdGhheSDEkeG7lWkgbuG7mWkgYuG7mSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjAxCiBtc2dpZCAiVW5yZWdpc3RlciBhbGwgc3VibW9kdWxlcyIKIG1zZ3N0ciAiQuG7jyDEkcSDbmcga8O9IHThuqV0IGPhuqMgY8OhYyB0cm9uZyBtw7QtxJF1bi1jb24iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTg5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIwNgogbXNnaWQgIiIKICJnaXQgc3VibW9kdWxlIGRlaW5pdCBbLS1xdWlldF0gWy1mIHwgLS1mb3JjZV0gWy0tYWxsIHwgWy0tXSBbPHBhdGg+Li4uXV0iCiBtc2dzdHIgIiIKICJnaXQgc3VibW9kdWxlIGRlaW5pdCBbLS1xdWlldF0gWy1mIHwgLS1mb3JjZV0gWy0tYWxsIHwgWy0tXSAgWzwvxJHGsOG7nW5nL2ThuqtuPuKApl1dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIwMworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMjAKIG1zZ2lkICJVc2UgJy0tYWxsJyBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZGVpbml0aWFsaXplIGFsbCBzdWJtb2R1bGVzIgogbXNnc3RyICJEw7luZyDigJwtLWFsbOKAnSBu4bq/dSBi4bqhbiB0aOG7sWMgc+G7sSBtdeG7kW4gaOG7p3kga2jhu59pIHThuqFvIG3hu41pIG3DtC3EkXVuLWNvbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyOTcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzMDAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjg5Cittc2dpZCAiIgorIkFuIGFsdGVybmF0ZSBjb21wdXRlZCBmcm9tIGEgc3VwZXJwcm9qZWN0J3MgYWx0ZXJuYXRlIGlzIGludmFsaWQuXG4iCisiVG8gYWxsb3cgR2l0IHRvIGNsb25lIHdpdGhvdXQgYW4gYWx0ZXJuYXRlIGluIHN1Y2ggYSBjYXNlLCBzZXRcbiIKKyJzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSB0byAnaW5mbycgb3IsIGVxdWl2YWxlbnRseSwgY2xvbmUgd2l0aFxuIgorIictLXJlZmVyZW5jZS1pZi1hYmxlJyBpbnN0ZWFkIG9mICctLXJlZmVyZW5jZScuIgorbXNnc3RyICIiCisiTeG7mXQgY8OhaSB0aGF5IHRo4bq/IMSRxrDhu6NjIHTDrW5oIHRvw6FuIHThu6sgbeG7mXQgdGhheSB0aOG6vyBj4bunYSBzacOqdSBk4buxIMOhbiBsw6Aga2jDtG5nIGjhu6NwICIKKyJs4buHLlxuIgorIsSQ4buDIGNobyBHaXQgdGjhu7FjIGhp4buHbiBuaMOibiBi4bqjbiBtw6Aga2jDtG5nIGPDsyBjw6FpIHRoYXkgdGjhur8gbmjGsCB0cm9uZyB0csaw4budbmcgaOG7o3AgIgorIm7DoHksIMSR4bq3dFxuIgorInN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IHRow6BuaCAnaW5mbycgaG/hurdjLCB0xrDGoW5nIMSRxrDGoW5nLCBuaMOibiBi4bqjbiAiCisiYuG6sW5nXG4iCisiJy0tcmVmZXJlbmNlLWlmLWFibGUnIHRoYXkgdsOsIGTDuW5nICctLXJlZmVyZW5jZScuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMyOCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgJyVzJyBjYW5ub3QgYWRkIGFsdGVybmF0ZTogJXMiCiBtc2dzdHIgIm3DtC3EkXVuLWNvbiDigJwlc+KAnSBraMO0bmcgdGjhu4MgdGjDqm0gdGhheSB0aOG6vzogJXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzM2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJWYWx1ZSAnJXMnIGZvciBzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSBpcyBub3QgcmVjb2duaXplZCIKIG1zZ3N0ciAiR2nDoSB0cuG7iyDigJwlc+KAnSBjaG8gc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kga2jDtG5nIMSRxrDhu6NjIHRo4burYSBuaOG6rW4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzQzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJWYWx1ZSAnJXMnIGZvciBzdWJtb2R1bGUuYWx0ZXJuYXRlTG9jYXRpb24gaXMgbm90IHJlY29nbml6ZWQiCiBtc2dzdHIgIkdpw6EgdHLhu4sg4oCcJXPigJ0gY2hvIHN1Ym1vZHVsZS5hbHRlcm5hdGVMb2NhdGlvbiBraMO0bmcgxJHGsOG7o2MgdGjhu6thIG5o4bqtbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk4CiBtc2dpZCAid2hlcmUgdGhlIG5ldyBzdWJtb2R1bGUgd2lsbCBiZSBjbG9uZWQgdG8iCiBtc2dzdHIgIm5ow6JuIGLhuqNuIG3DtC3EkXVuLWNvbiBt4bubaSB2w6BvIGNo4buXIG7DoG8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMQogbXNnaWQgIm5hbWUgb2YgdGhlIG5ldyBzdWJtb2R1bGUiCiBtc2dzdHIgInTDqm4gY+G7p2EgbcO0LcSRdW4tY29uIG3hu5tpIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDQKIG1zZ2lkICJ1cmwgd2hlcmUgdG8gY2xvbmUgdGhlIHN1Ym1vZHVsZSBmcm9tIgogbXNnc3RyICJ1cmwgbsahaSBtw6AgbmjDom4gYuG6o24gbcO0LcSRdW4tY29uIHThu6sgxJHDsyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzODAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDEyCiBtc2dpZCAiZGVwdGggZm9yIHNoYWxsb3cgY2xvbmVzIgogbXNnc3RyICJjaGnhu4F1IHPDonUgbOG7i2NoIHPhu60ga2hpIHThuqFvIGLhuqNuIHNhbyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzODMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE1IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI0CiBtc2dpZCAiZm9yY2UgY2xvbmluZyBwcm9ncmVzcyIKIG1zZ3N0ciAiw6lwIGJ14buZYyB0aeG6v24gdHLDrG5oIG5ow6JuIGLhuqNuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjYKK21zZ2lkICJkaXNhbGxvdyBjbG9uaW5nIGludG8gbm9uLWVtcHR5IGRpcmVjdG9yeSIKK21zZ3N0ciAibMOgbSDEkeG6p3kgxJHhu6cgZOG7ryBsaeG7h3UgY2hvIGLhuqNuIHNhbyB2w6BvIHRyb25nIG3hu5l0IHRoxrAgbeG7pWMgdHLhu5FuZyBy4buXbmciCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDI0CiBtc2dpZCAiIgogImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbLS1xdWlldF0gWy0tcmVmZXJlbmNlICIKLSI8cmVwb3NpdG9yeT5dIFstLW5hbWUgPG5hbWU+XSBbLS1kZXB0aCA8ZGVwdGg+XSAtLXVybCA8dXJsPiAtLXBhdGggPHBhdGg+IgorIjxyZXBvc2l0b3J5Pl0gWy0tbmFtZSA8bmFtZT5dIFstLWRlcHRoIDxkZXB0aD5dIFstLXNpbmdsZS1icmFuY2hdIC0tdXJsICIKKyI8dXJsPiAtLXBhdGggPHBhdGg+IgogbXNnc3RyICIiCiAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNsb25lIFstLXByZWZpeD08L8SRxrDhu51uZy9k4bqrbj5dIFstLXF1aWV0XSBbLS1yZWZlcmVuY2UgIgotIjxraG8+XSBbLS1uYW1lIDx0w6puPl0gWy0tZGVwdGggPHPDonU+XSBbLS11cmwgPHVybD5dIFs8L8SRxrDhu51uZy9k4bqrbj7igKZdIgorIjxraG8+XSBbLS1uYW1lIDx0w6puPl0gWy0tZGVwdGggPHPDonU+XSBbLS1zaW5nbGUtYnJhbmNoXSBbLS11cmwgPHVybD5dIC0tcGF0aCAiCisiPC/Ekcaw4budbmcvZOG6q24+IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmdXNpbmcgdG8gY3JlYXRlL3VzZSAnJXMnIGluIGFub3RoZXIgc3VibW9kdWxlJ3MgZ2l0IGRpciIKK21zZ3N0ciAidOG7qyBjaOG7kWkgdOG6oW8vZMO5bmcgJyVzJyB0cm9uZyBt4buZdCB0aMawIG3hu6VjIGdpdCBj4bunYSBtw7QgxJF1biBjb24iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNsb25lIG9mICclcycgaW50byBzdWJtb2R1bGUgcGF0aCAnJXMnIGZhaWxlZCIKLW1zZ3N0ciAiTmjDom4gYuG6o24g4oCcJXPigJ0gdsOgbyDEkcaw4budbmcgZOG6q24gbcO0LcSRdW4tY29uIOKAnCVz4oCdIGfhurdwIGzhu5dpIgorbXNnc3RyICJ2aeG7h2Mgc2FvIOKAnCVz4oCdIHbDoG8gxJHGsOG7nW5nIGThuqtuIG3DtC3EkXVuLWNvbiDigJwlc+KAnSBn4bq3cCBs4buXaSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MzMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDY0CisjLCBjLWZvcm1hdAorbXNnaWQgImRpcmVjdG9yeSBub3QgZW1wdHk6ICclcyciCittc2dzdHIgInRoxrAgbeG7pWMga2jDtG5nIHRy4buRbmc6ICclcyciCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBnZXQgc3VibW9kdWxlIGRpcmVjdG9yeSBmb3IgJyVzJyIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHRoxrAgbeG7pWMgbcO0LcSRdW4tY29uIGNobyDigJwlc+KAnSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAiQ2jhur8gxJHhu5kgY+G6rXAgbmjhuq10IOKAnCVz4oCdIGtow7RuZyBo4bujcCBs4buHIGNobyDEkcaw4budbmcgZOG6q24gbcO0LcSRdW4tY29uIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ3MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1MTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB1cGRhdGUgbW9kZSAnJXMnIGNvbmZpZ3VyZWQgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCiBtc2dzdHIgIiIKICJDaOG6vyDEkeG7mSBj4bqtcCBuaOG6rXQg4oCcJXPigJ0ga2jDtG5nIGjhu6NwIGzhu4cgxJHGsOG7o2MgY+G6pXUgaMOsbmggY2hvIMSRxrDhu51uZyBk4bqrbiBtw7QtxJF1bi1jb24g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTY2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYxNwogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJXMnIG5vdCBpbml0aWFsaXplZCIKIG1zZ3N0ciAixJDGsOG7nW5nIGThuqtuIG3DtC3EkXVuLWNvbiDigJwlc+KAnSBjaMawYSDEkcaw4bujYyBraOG7n2kgdOG6oW8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTcwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYyMQogbXNnaWQgIk1heWJlIHlvdSB3YW50IHRvIHVzZSAndXBkYXRlIC0taW5pdCc/IgogbXNnc3RyICJDw7MgbOG6vSBi4bqhbiBsw6AgYuG6oW4gbXXhu5FuIGTDuW5nIFwidXBkYXRlIC0taW5pdFwiIHBo4bqjaSBraMO0bmc/IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTYwMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiU2tpcHBpbmcgdW5tZXJnZWQgc3VibW9kdWxlICVzIgogbXNnc3RyICJC4buPIHF1YSBjw6FjIG3DtC3EkXVuLWNvbiBjaMawYSDEkcaw4bujYyBow7JhIHRy4buZbiAlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwaW5nIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICJC4buPIHF1YSBtw7QtxJF1bi1jb24g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzczCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTgzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJy4gUmV0cnkgc2NoZWR1bGVkIgogbXNnc3RyICJH4bq3cCBs4buXaSBraGkgbmjDom4gYuG6o24g4oCcJXPigJ0uIFRo4butIGzhuqFpIGzhu4tjaCB0csOsbmgiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNzg0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJyBhIHNlY29uZCB0aW1lLCBhYm9ydGluZyIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIG5ow6JuIGLhuqNuIOKAnCVz4oCdIGzhuqduIHRo4bupIGhhaSBuw6puIGLDo2kgYuG7jyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwODkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTAzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTQ5CiBtc2dpZCAicGF0aCBpbnRvIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIsSRxrDhu51uZyBk4bqrbiDEkeG6v24gY8OieSBsw6BtIHZp4buHYyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTA2CiBtc2dpZCAicGF0aCBpbnRvIHRoZSB3b3JraW5nIHRyZWUsIGFjcm9zcyBuZXN0ZWQgc3VibW9kdWxlIGJvdW5kYXJpZXMiCiBtc2dzdHIgIsSRxrDhu51uZyBk4bqrbiDEkeG6v24gY8OieSBsw6BtIHZp4buHYywgY2jDqW8gYmnDqm4gZ2nhu5tpIG3DtC3EkXVuLWNvbiBs4buTbmcgbmhhdSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTEwCiBtc2dpZCAicmViYXNlLCBtZXJnZSwgY2hlY2tvdXQgb3Igbm9uZSIKIG1zZ3N0ciAicmViYXNlLCBtZXJnZSwgY2hlY2tvdXQgaG/hurdjIGtow7RuZyBsw6BtIGfDrCBj4bqjIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTYKIG1zZ2lkICJDcmVhdGUgYSBzaGFsbG93IGNsb25lIHRydW5jYXRlZCB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiByZXZpc2lvbnMiCiBtc2dzdHIgIiIKICJU4bqhbyBt4buZdCBi4bqjbiBzYW8gbsO0bmcgxJHGsOG7o2MgY+G6r3Qgbmfhuq9uIHRow6BuaCBz4buRIGzGsOG7o25nIMSRaeG7g20geMOpdCBkdXnhu4d0IMSRw6MgY2hvIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTkKIG1zZ2lkICJwYXJhbGxlbCBqb2JzIgogbXNnc3RyICJjw7RuZyB2aeG7h2MgxJHhu5NuZyB0aOG7nWkiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyMQogbXNnaWQgIndoZXRoZXIgdGhlIGluaXRpYWwgY2xvbmUgc2hvdWxkIGZvbGxvdyB0aGUgc2hhbGxvdyByZWNvbW1lbmRhdGlvbiIKIG1zZ3N0ciAibmjDom4gYuG6o24gbOG6p24gxJHhuqd1IGPDsyBuw6puIHRoZW8ga2h1eeG6v24gbmdo4buLIGzDoCBuw7RuZyBoYXkga2jDtG5nIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjIKIG1zZ2lkICJkb24ndCBwcmludCBjbG9uaW5nIHByb2dyZXNzIgogbXNnc3RyICLEkeG7q25nIGluIHRp4bq/biB0csOsbmggbmjDom4gYuG6o24iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODczCi1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZV9jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTMzCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKIG1zZ3N0ciAiIgotImdpdCBzdWJtb2R1bGUtLWhlbHBlciB1cGRhdGVfY2xvbmUgWy0tcHJlZml4PTwvxJHGsOG7nW5nL2ThuqtuPl0gWzwvxJHGsOG7nW5nL2ThuqtuPuKApl0iCisiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PC/Ekcaw4budbmcvZOG6q24+XSBbPC/Ekcaw4budbmcvZOG6q24+4oCmXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4ODYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTQ2CiBtc2dpZCAiYmFkIHZhbHVlIGZvciB1cGRhdGUgcGFyYW1ldGVyIgogbXNnc3RyICJnacOhIHRy4buLIGNobyAgdGhhbSBz4buRIGPhuq1wIG5o4bqtdCBi4buLIHNhaSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MzQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgKCVzKSBicmFuY2ggY29uZmlndXJlZCB0byBpbmhlcml0IGJyYW5jaCBmcm9tIHN1cGVycHJvamVjdCwgYnV0ICIKQEAgLTE3NDgxLDQ5ICsyMTEzMCw1NyBAQAogIk5ow6FuaCBtw7QtxJF1bi1jb24gKCVzKSDEkcaw4bujYyBj4bqldSBow6xuaCBr4bq/IHRo4burYSBuaMOhbmggdOG7qyBzacOqdSBk4buxIMOhbiwgbmjGsG5nIHNpw6p1ICIKICJk4buxIMOhbiBs4bqhaSBraMO0bmcgdHLDqm4gYuG6pXQga+G7syBuaMOhbmggbsOgbyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwNTcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTE3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBnZXQgYSByZXBvc2l0b3J5IGhhbmRsZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSB0aOG6uyBxdeG6o24ga2hvIGNobyBtw7QtxJF1bi1jb24g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDkwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1MAogbXNnaWQgInJlY3Vyc2UgaW50byBzdWJtb2R1bGVzIgogbXNnc3RyICLEkeG7hyBxdXkgdsOgbyB0cm9uZyBtw7QtxJF1bi1jb24iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDk2Ci1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGVtYmVkLWdpdC1kaXIgWzxwYXRoPi4uLl0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBlbWJlZC1naXQtZGlyIFs8L8SRxrDhu51uZy9k4bqrbj7igKZdIgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTYKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgYWJzb3JiLWdpdC1kaXJzIFs8b3B0aW9ucz5dIFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgYWJzb3JiLWdpdC1kaXJzIFs8Y8OhYyB0w7l5IGNo4buNbj5dIFs8L8SRxrDhu51uZy9k4bqrbj7igKZdIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMTIKIG1zZ2lkICJjaGVjayBpZiBpdCBpcyBzYWZlIHRvIHdyaXRlIHRvIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIgogbXNnc3RyICJjaOG7jW4gbuG6v3UgbsOzIGzDoCBhbiB0b8OgbiDEkeG7gyBnaGkgdsOgbyB04bqtcCB0aW4gLmdpdG1vZHVsZXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTU3Ci1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyBuYW1lIFt2YWx1ZV0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgdMOqbiBbZ2nDoSB0cuG7i10iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIxNQorbXNnaWQgInVuc2V0IHRoZSBjb25maWcgaW4gdGhlIC5naXRtb2R1bGVzIGZpbGUiCittc2dzdHIgImLhu48gxJHhurd0IGPhuqV1IGjDrG5oIHRyb25nIHThuq1wIHRpbiAuZ2l0bW9kdWxlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjIwCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyA8bmFtZT4gWzx2YWx1ZT5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIDx0w6puPiBbPGdpw6EgdHLhu4s+XSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjEKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tdW5zZXQgPG5hbWU+IgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tdW5zZXQgPHTDqm4+IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyMgogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS1jaGVjay13cml0ZWFibGUiCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS1jaGVjay13cml0ZWFibGUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTc1IGdpdC1zdWJtb2R1bGUuc2g6MTY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI0MSBnaXQtc3VibW9kdWxlLnNoOjE3NAogIywgc2gtZm9ybWF0CiBtc2dpZCAicGxlYXNlIG1ha2Ugc3VyZSB0aGF0IHRoZSAuZ2l0bW9kdWxlcyBmaWxlIGlzIGluIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgImjDo3kgxJHhuqNtIGLhuqNvIHLhurFuZyB04bqtcCB0aW4gLmdpdG1vZHVsZXMgY8OzIHRyb25nIGPDonkgbMOgbSB2aeG7h2MiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjI1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI5MSBnaXQuYzo0MzMgZ2l0LmM6Njg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRvZXNuJ3Qgc3VwcG9ydCAtLXN1cGVyLXByZWZpeCIKIG1zZ3N0ciAiJXMga2jDtG5nIGjhu5cgdHLhu6MgLS1zdXBlci1wcmVmaXgiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjMxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI5NwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHN1Ym1vZHVsZS0taGVscGVyIHN1YmNvbW1hbmQiCiBtc2dzdHIgIuKAnCVz4oCdIGtow7RuZyBwaOG6o2kgbMOgIGzhu4duaCBjb24gc3VibW9kdWxlLS1oZWxwZXIgaOG7o3AgbOG7hyIKIAogIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo4CiBtc2dpZCAiZ2l0IHN5bWJvbGljLXJlZiBbPG9wdGlvbnM+XSA8bmFtZT4gWzxyZWY+XSIKLW1zZ3N0ciAiZ2l0IHN5bWJvbGljLXJlZiBbPGPDoWMtdMO5eS1jaOG7jW4+XSA8dMOqbj4gWzx0LmNoaeG6v3U+XSIKK21zZ3N0ciAiZ2l0IHN5bWJvbGljLXJlZiBbPGPDoWMgdMO5eSBjaOG7jW4+XSA8dMOqbj4gWzx0LmNoaeG6v3U+XSIKIAogIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo5CiBtc2dpZCAiZ2l0IHN5bWJvbGljLXJlZiAtZCBbLXFdIDxuYW1lPiIKQEAgLTE3NTUxLDE3ICsyMTIwOCwxNyBAQAogCiAjOiBidWlsdGluL3RhZy5jOjI1CiBtc2dpZCAiIgotImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8a2V5LWlkPl0gWy1mXSBbLW0gPG1zZz4gfCAtRiA8ZmlsZT5dIDx0YWduYW1lPiAiCi0iWzxoZWFkPl0iCisiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA8bXNnPiB8IC1GIDxmaWxlPl1cbiIKKyJcdFx0PHRhZ25hbWU+IFs8aGVhZD5dIgogbXNnc3RyICIiCi0iZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA8bXNnPnwtRiA8dOG6rXAtdGluPl0gPHTDqm4tdGjhurs+ICIKLSJbPGhlYWQ+XSIKKyJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPGtleS1pZD5dIFstZl0gWy1tIDxtc2c+IHwgLUYgPHThuq1wLXRpbj5dXG4iCisiXHRcdDx0w6puLXRo4bq7PiBbPGhlYWQ+XSIKIAotIzogYnVpbHRpbi90YWcuYzoyNgorIzogYnVpbHRpbi90YWcuYzoyNwogbXNnaWQgImdpdCB0YWcgLWQgPHRhZ25hbWU+Li4uIgogbXNnc3RyICJnaXQgdGFnIC1kIDx0w6puLXRo4bq7PuKApiIKIAotIzogYnVpbHRpbi90YWcuYzoyNworIzogYnVpbHRpbi90YWcuYzoyOAogbXNnaWQgIiIKICJnaXQgdGFnIC1sIFstbls8bnVtPl1dIFstLWNvbnRhaW5zIDxjb21taXQ+XSBbLS1uby1jb250YWlucyA8Y29tbWl0Pl0gWy0tIgogInBvaW50cy1hdCA8b2JqZWN0Pl1cbiIKQEAgLTE3NTcxLDIxICsyMTIyOCwyMSBAQAogIjxs4bqnbl9jaHV54buDbl9naWFvPl0gWy0tcG9pbnRzLWF0IDzEkeG7kWktdMaw4bujbmc+XVxuIgogIlx0XHRbLS1mb3JtYXQ9PMSR4buLbmhfZOG6oW5nPl0gWy0tW25vLV1tZXJnZWQgWzxs4bqnbl9jaHV54buDbl9naWFvPl1dIFs8beG6q3U+4oCmXSIKIAotIzogYnVpbHRpbi90YWcuYzoyOQorIzogYnVpbHRpbi90YWcuYzozMAogbXNnaWQgImdpdCB0YWcgLXYgWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnbmFtZT4uLi4iCiBtc2dzdHIgImdpdCB0YWcgLXYgWy0tZm9ybWF0PTzEkeG7i25oX2ThuqFuZz5dICA8dMOqbi10aOG6uz7igKYiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6ODcKKyM6IGJ1aWx0aW4vdGFnLmM6ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFnICclcycgbm90IGZvdW5kLiIKIG1zZ3N0ciAia2jDtG5nIHTDrG0gdGjhuqV5IHTDrG0gdGjhuqV5IHRo4bq7IOKAnCVz4oCdLiIKIAotIzogYnVpbHRpbi90YWcuYzoxMDMKKyM6IGJ1aWx0aW4vdGFnLmM6MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgdGFnICclcycgKHdhcyAlcylcbiIKIG1zZ3N0ciAiVGjhursgxJHDoyBi4buLIHjDs2Eg4oCcJXPigJ0gKHThu6tuZyBsw6AgJXMpXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTMzCisjOiBidWlsdGluL3RhZy5jOjEzNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC0xNzU5OCw3ICsyMTI1NSw3IEBACiAiICAlc1xuIgogIk5o4buvbmcgZMOybmcgxJHGsOG7o2MgYuG6r3QgxJHhuqd1IGLhurFuZyDigJwlY+KAnSBz4bq9IMSRxrDhu6NjIGLhu48gcXVhLlxuIgogCi0jOiBidWlsdGluL3RhZy5jOjEzNworIzogYnVpbHRpbi90YWcuYzoxMzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTc2MTMsMzUxICsyMTI3MCwzNjggQEAKICJOaOG7r25nIGTDsm5nIMSRxrDhu6NjIGLhuq90IMSR4bqndSBi4bqxbmcg4oCcJWPigJ0gc+G6vSDEkcaw4bujYyBnaeG7ryBs4bqhaTsgYuG6oW4gY8OzIHRo4buDIHjDs2EgY2jDum5nIMSRaSAiCiAibuG6v3UgbXXhu5FuLlxuIgogCi0jOiBidWlsdGluL3RhZy5jOjE5MQorIzogYnVpbHRpbi90YWcuYzoxOTgKIG1zZ2lkICJ1bmFibGUgdG8gc2lnbiB0aGUgdGFnIgogbXNnc3RyICJraMO0bmcgdGjhu4Mga8O9IHRo4bq7IgogCi0jOiBidWlsdGluL3RhZy5jOjE5MworIzogYnVpbHRpbi90YWcuYzoyMDAKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdGFnIGZpbGUiCiBtc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgdsOgbyB04bqtcCB0aW4gbMawdSB0aOG6uyIKIAotIzogYnVpbHRpbi90YWcuYzoyMTgKKyM6IGJ1aWx0aW4vdGFnLmM6MjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgaGF2ZSBjcmVhdGVkIGEgbmVzdGVkIHRhZy4gVGhlIG9iamVjdCByZWZlcnJlZCB0byBieSB5b3VyIG5ldyB0YWcgaXNcbiIKKyJhbHJlYWR5IGEgdGFnLiBJZiB5b3UgbWVhbnQgdG8gdGFnIHRoZSBvYmplY3QgdGhhdCBpdCBwb2ludHMgdG8sIHVzZTpcbiIKKyJcbiIKKyJcdGdpdCB0YWcgLWYgJXMgJXNee30iCittc2dzdHIgIiIKKyJC4bqhbiDEkcOjIHThuqFvIG3hu5l0IHRo4bq7IGzhu5NuZyBuaGF1LiDEkOG7kWkgdMaw4bujbmcgxJHGsOG7o2MgY2jhu4kgxJHhur9uIHRo4bq7IG3hu5tpIGPhu6dhIGLhuqFuIGzDoFxuIgorIsSRw6MgbMOgIG3hu5l0IHRo4bq7LiBO4bq/dSDDvSBi4bqhbiBsw6AgZ+G6r24gdGjhursgxJHhu5FpIHTGsOG7o25nIG3DoCBuw7MgdHLhu48gxJHhur9uLCBz4butIGThu6VuZzpcbiIKKyJcbiIKKyJcdGdpdCB0YWcgLWYgJXMgJXNee30iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjMyCiBtc2dpZCAiYmFkIG9iamVjdCB0eXBlLiIKIG1zZ3N0ciAia2nhu4N1IMSR4buRaSB0xrDhu6NuZyBzYWkuIgogCi0jOiBidWlsdGluL3RhZy5jOjI2NworIzogYnVpbHRpbi90YWcuYzoyODQKIG1zZ2lkICJubyB0YWcgbWVzc2FnZT8iCiBtc2dzdHIgImtow7RuZyBjw7MgY2jDuiB0aMOtY2ggZ8OsIGNobyBjaG8gdGjhursgw6A/IgogCi0jOiBidWlsdGluL3RhZy5jOjI3NAorIzogYnVpbHRpbi90YWcuYzoyOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIHRhZyBtZXNzYWdlIGhhcyBiZWVuIGxlZnQgaW4gJXNcbiIKIG1zZ3N0ciAiTuG7mWkgZHVuZyBnaGkgY2jDuiBjw7JuIGzhuqFpICVzXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzg1CisjOiBidWlsdGluL3RhZy5jOjQwMgogbXNnaWQgImxpc3QgdGFnIG5hbWVzIgogbXNnc3RyICJjaOG7iSBsaeG7h3Qga8OqIHTDqm4gY8OhYyB0aOG6uyIKIAotIzogYnVpbHRpbi90YWcuYzozODcKKyM6IGJ1aWx0aW4vdGFnLmM6NDA0CiBtc2dpZCAicHJpbnQgPG4+IGxpbmVzIG9mIGVhY2ggdGFnIG1lc3NhZ2UiCiBtc2dzdHIgImhp4buDbiB0aOG7iyA8bj4gZMOybmcgY2hvIG3hu5dpIGdoaSBjaMO6IgogCi0jOiBidWlsdGluL3RhZy5jOjM4OQorIzogYnVpbHRpbi90YWcuYzo0MDYKIG1zZ2lkICJkZWxldGUgdGFncyIKIG1zZ3N0ciAieMOzYSB0aOG6uyIKIAotIzogYnVpbHRpbi90YWcuYzozOTAKKyM6IGJ1aWx0aW4vdGFnLmM6NDA3CiBtc2dpZCAidmVyaWZ5IHRhZ3MiCiBtc2dzdHIgInRo4bqpbSB0cmEgdGjhursiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MzkyCisjOiBidWlsdGluL3RhZy5jOjQwOQogbXNnaWQgIlRhZyBjcmVhdGlvbiBvcHRpb25zIgogbXNnc3RyICJUw7l5IGNo4buNbiB04bqhbyB0aOG6uyIKIAotIzogYnVpbHRpbi90YWcuYzozOTQKKyM6IGJ1aWx0aW4vdGFnLmM6NDExCiBtc2dpZCAiYW5ub3RhdGVkIHRhZywgbmVlZHMgYSBtZXNzYWdlIgogbXNnc3RyICLEkeG7gyBjaMO6IGdp4bqjaSBjaG8gdGjhurssIGPhuqduIG3hu5l0IGzhu51pIGdoaSBjaMO6IgogCi0jOiBidWlsdGluL3RhZy5jOjM5NgorIzogYnVpbHRpbi90YWcuYzo0MTMKIG1zZ2lkICJ0YWcgbWVzc2FnZSIKIG1zZ3N0ciAicGjhuqduIGNow7ogdGjDrWNoIGNobyB0aOG6uyIKIAotIzogYnVpbHRpbi90YWcuYzozOTgKKyM6IGJ1aWx0aW4vdGFnLmM6NDE1CiBtc2dpZCAiZm9yY2UgZWRpdCBvZiB0YWcgbWVzc2FnZSIKIG1zZ3N0ciAiw6lwIGJ14buZYyBz4butYSB0aOG6uyBs4bqnbiBjb21taXQiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mzk5CisjOiBidWlsdGluL3RhZy5jOjQxNgogbXNnaWQgImFubm90YXRlZCBhbmQgR1BHLXNpZ25lZCB0YWciCiBtc2dzdHIgInRo4bq7IGNow7ogZ2nhuqNpIHbDoCBrw70ga2nhu4N1IEdQRyIKIAotIzogYnVpbHRpbi90YWcuYzo0MDMKKyM6IGJ1aWx0aW4vdGFnLmM6NDE5CiBtc2dpZCAidXNlIGFub3RoZXIga2V5IHRvIHNpZ24gdGhlIHRhZyIKIG1zZ3N0ciAiZMO5bmcga2jDoW8ga2jDoWMgxJHhu4Mga8O9IHRo4bq7IgogCi0jOiBidWlsdGluL3RhZy5jOjQwNAorIzogYnVpbHRpbi90YWcuYzo0MjAKIG1zZ2lkICJyZXBsYWNlIHRoZSB0YWcgaWYgZXhpc3RzIgogbXNnc3RyICJ0aGF5IHRo4bq/IG7hur91IHRo4bq7IMSRw7MgxJHDoyBjw7MgdHLGsOG7m2MiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA1IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2OQorIzogYnVpbHRpbi90YWcuYzo0MjEgYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY5CiBtc2dpZCAiY3JlYXRlIGEgcmVmbG9nIgogbXNnc3RyICJ04bqhbyBt4buZdCByZWZsb2ciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA3CisjOiBidWlsdGluL3RhZy5jOjQyMwogbXNnaWQgIlRhZyBsaXN0aW5nIG9wdGlvbnMiCiBtc2dzdHIgIkPDoWMgdMO5eSBjaOG7jW4gbGnhu4d0IGvDqiB0aOG6uyIKIAotIzogYnVpbHRpbi90YWcuYzo0MDgKKyM6IGJ1aWx0aW4vdGFnLmM6NDI0CiBtc2dpZCAic2hvdyB0YWcgbGlzdCBpbiBjb2x1bW5zIgogbXNnc3RyICJoaeG7g24gdGjhu4sgZGFuaCBzw6FjaCB0aOG6uyB0cm9uZyBjw6FjIGPhu5l0IgogCi0jOiBidWlsdGluL3RhZy5jOjQwOSBidWlsdGluL3RhZy5jOjQxMQorIzogYnVpbHRpbi90YWcuYzo0MjUgYnVpbHRpbi90YWcuYzo0MjcKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyBuaOG7r25nIG5ow6FuaCBtw6AgbsOzIGNo4bupYSBs4bqnbiBjaHV54buDbiBnaWFvIgogCi0jOiBidWlsdGluL3RhZy5jOjQxMCBidWlsdGluL3RhZy5jOjQxMgorIzogYnVpbHRpbi90YWcuYzo0MjYgYnVpbHRpbi90YWcuYzo0MjgKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgImNo4buJIGhp4buDbiB0aOG7iyBuaOG7r25nIHRo4bq7IG3DoCBuw7Mga2jDtG5nIGNo4bupYSBs4bqnbiBjaHV54buDbiBnaWFvIgogCi0jOiBidWlsdGluL3RhZy5jOjQxMworIzogYnVpbHRpbi90YWcuYzo0MjkKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBhcmUgbWVyZ2VkIgogbXNnc3RyICJjaOG7iSBoaeG7g24gdGjhu4sgbmjhu69uZyB0aOG6uyBtw6AgbsOzIMSRxrDhu6NjIGjDsmEgdHLhu5luIgogCi0jOiBidWlsdGluL3RhZy5jOjQxNAorIzogYnVpbHRpbi90YWcuYzo0MzAKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBhcmUgbm90IG1lcmdlZCIKIG1zZ3N0ciAiY2jhu4kgaGnhu4NuIHRo4buLIG5o4buvbmcgdGjhursgbcOgIG7DsyBraMO0bmcgxJHGsOG7o2MgaMOyYSB0cuG7mW4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDE5CisjOiBidWlsdGluL3RhZy5jOjQzNAogbXNnaWQgInByaW50IG9ubHkgdGFncyBvZiB0aGUgb2JqZWN0IgogbXNnc3RyICJjaOG7iSBoaeG7g24gdGjhu4sgY8OhYyB0aOG6uyBj4bunYSDEkeG7kWkgdMaw4bujbmciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDYzCisjOiBidWlsdGluL3RhZy5jOjQ4MgogbXNnaWQgIi0tY29sdW1uIGFuZCAtbiBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWNvbHVtbiB2w6AgLW4geHVuZyBraOG6r2MgbmhhdSIKIAotIzogYnVpbHRpbi90YWcuYzo0ODUKKyM6IGJ1aWx0aW4vdGFnLmM6NTA0CiBtc2dpZCAiLW4gb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgInTDuXkgY2jhu41uIC1uIGNo4buJIGNobyBwaMOpcCBkw7luZyB0cm9uZyBjaOG6vyDEkeG7mSBsaeG7h3Qga8OqIgogCi0jOiBidWlsdGluL3RhZy5jOjQ4NworIzogYnVpbHRpbi90YWcuYzo1MDYKIG1zZ2lkICItLWNvbnRhaW5zIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICJ0w7l5IGNo4buNbiAtLWNvbnRhaW5zIGNo4buJIGNobyBwaMOpcCBkw7luZyB0cm9uZyBjaOG6vyDEkeG7mSBsaeG7h3Qga8OqIgogCi0jOiBidWlsdGluL3RhZy5jOjQ4OQorIzogYnVpbHRpbi90YWcuYzo1MDgKIG1zZ2lkICItLW5vLWNvbnRhaW5zIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICJ0w7l5IGNo4buNbiAtLW5vLWNvbnRhaW5zIGNo4buJIGNobyBwaMOpcCBkw7luZyB0cm9uZyBjaOG6vyDEkeG7mSBsaeG7h3Qga8OqIgogCi0jOiBidWlsdGluL3RhZy5jOjQ5MQorIzogYnVpbHRpbi90YWcuYzo1MTAKIG1zZ2lkICItLXBvaW50cy1hdCBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAidMO5eSBjaOG7jW4gLS1wb2ludHMtYXQgY2jhu4kgY2hvIHBow6lwIGTDuW5nIHRyb25nIGNo4bq/IMSR4buZIGxp4buHdCBrw6oiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDkzCisjOiBidWlsdGluL3RhZy5jOjUxMgogbXNnaWQgIi0tbWVyZ2VkIGFuZCAtLW5vLW1lcmdlZCBvcHRpb25zIGFyZSBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgogbXNnc3RyICIiCiAidMO5eSBjaOG7jW4gLS1tZXJnZWQgdsOgIC0tbm8tbWVyZ2VkIGNo4buJIGNobyBwaMOpcCBkw7luZyB0cm9uZyBjaOG6vyDEkeG7mSBsaeG7h3Qga8OqIgogCi0jOiBidWlsdGluL3RhZy5jOjUwNAorIzogYnVpbHRpbi90YWcuYzo1MjMKIG1zZ2lkICJvbmx5IG9uZSAtRiBvciAtbSBvcHRpb24gaXMgYWxsb3dlZC4iCiBtc2dzdHIgImNo4buJIGPDsyBt4buZdCB0w7l5IGNo4buNbiAtRiBob+G6t2MgLW0gbMOgIMSRxrDhu6NjIHBow6lwLiIKIAotIzogYnVpbHRpbi90YWcuYzo1MjMKKyM6IGJ1aWx0aW4vdGFnLmM6NTQyCiBtc2dpZCAidG9vIG1hbnkgcGFyYW1zIgogbXNnc3RyICJxdcOhIG5oaeG7gXUgxJHhu5FpIHPhu5EiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTI5CisjOiBidWlsdGluL3RhZy5jOjU0OAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRhZyBuYW1lLiIKIG1zZ3N0ciAi4oCcJXPigJ0ga2jDtG5nIHBo4bqjaSB0aOG6uyBo4bujcCBs4buHLiIKIAotIzogYnVpbHRpbi90YWcuYzo1MzQKKyM6IGJ1aWx0aW4vdGFnLmM6NTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgInRhZyAnJXMnIGFscmVhZHkgZXhpc3RzIgotbXNnc3RyICJUaOG6uyDigJwlc+KAnSDEkcOjIHThu5NuIHThuqFpIHLhu5NpIgorbXNnc3RyICJ0aOG6uyDigJwlc+KAnSDEkcOjIHThu5NuIHThuqFpIHLhu5NpIgogCi0jOiBidWlsdGluL3RhZy5jOjU2NQorIzogYnVpbHRpbi90YWcuYzo1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRlZCB0YWcgJyVzJyAod2FzICVzKVxuIgogbXNnc3RyICLEkMOjIGPhuq1wIG5o4bqtdCB0aOG6uyDigJwlc+KAnSAodHLGsOG7m2MgbMOgICVzKVxuIgogCi0jOiBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTAwCisjOiBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTAyCiBtc2dpZCAiVW5wYWNraW5nIG9iamVjdHMiCiBtc2dzdHIgIsSQYW5nIGdp4bqjaSBuw6luIGPDoWMgxJHhu5FpIHTGsOG7o25nIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjgyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5ICVzIgogbXNnc3RyICJ04bqhbyB0aMawIG3hu6VjIFwiJXNcIiBn4bq3cCBs4buXaSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBmaWxlICVzIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgdOG6oW8gdOG6rXAgdGluICVzIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSBmaWxlICVzIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgeMOzYSB04bqtcCB0aW4gJXMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTEzIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjE5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNSBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZGVsZXRlIGRpcmVjdG9yeSAlcyIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHjDs2EgdGjGsCBt4bulYyAlcyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMzgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRlc3RpbmcgbXRpbWUgaW4gJyVzJyAiCi1tc2dzdHIgIsSQYW5nIGtp4buDbSB0aOG7rSBtdGltZSB0cm9uZyDigJwlc+KAnSIKK21zZ3N0ciAixJBhbmcga2nhu4NtIHRo4butIG10aW1lIHRyb25nIOKAnCVz4oCdICIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNTIKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTU0CiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgYWRkaW5nIGEgbmV3IGZpbGUiCiBtc2dzdHIgInRow7RuZyB0aW4gdGjhu5FuZyBrw6ogdGjGsCBt4bulYyBraMO0bmcgdGhheSDEkeG7lWkgc2F1IGtoaSB0aMOqbSB04bqtcCB0aW4gbeG7m2kiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTY1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE2NwogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gZG9lcyBub3QgY2hhbmdlIGFmdGVyIGFkZGluZyBhIG5ldyBkaXJlY3RvcnkiCiBtc2dzdHIgInRow7RuZyB0aW4gdGjhu5FuZyBrw6ogdGjGsCBt4bulYyBraMO0bmcgdGhheSDEkeG7lWkgc2F1IGtoaSB0aMOqbSB0aMawIG3hu6VjIG3hu5tpIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE3OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxODAKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGNoYW5nZXMgYWZ0ZXIgdXBkYXRpbmcgYSBmaWxlIgogbXNnc3RyICJ0aMO0bmcgdGluIHRo4buRbmcga8OqIHRoxrAgbeG7pWMgdGhheSDEkeG7lWkgc2F1IGtoaSBj4bqtcCBuaOG6rXQgdOG6rXAgdGluIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE4OQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxOTEKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGNoYW5nZXMgYWZ0ZXIgYWRkaW5nIGEgZmlsZSBpbnNpZGUgc3ViZGlyZWN0b3J5IgogbXNnc3RyICIiCiAidGjDtG5nIHRpbiB0aOG7kW5nIGvDqiB0aMawIG3hu6VjIHRoYXkgxJHhu5VpIHNhdSBraGkgdGjDqm0gdOG6rXAgdGluIG3hu5tpIHbDoG8gdHJvbmcgdGjGsCAiCiAibeG7pWMgY29uIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIwMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMDIKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGZpbGUiCiBtc2dzdHIgInRow7RuZyB0aW4gdGjhu5FuZyBrw6ogdGjGsCBt4bulYyBraMO0bmcgdGhheSDEkeG7lWkgc2F1IGtoaSB4w7NhIHThuq1wIHRpbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjE1CiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgZGVsZXRpbmcgYSBkaXJlY3RvcnkiCiBtc2dzdHIgInRow7RuZyB0aW4gdGjhu5FuZyBrw6ogdGjGsCBt4bulYyBraMO0bmcgdGhheSDEkeG7lWkgc2F1IGtoaSB4w7NhIHRoxrAgbeG7pWMiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMgogbXNnaWQgIiBPSyIKIG1zZ3N0ciAiIMSQ4buTbmcgw70iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6NTg4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjU5MQogbXNnaWQgImdpdCB1cGRhdGUtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKLW1zZ3N0ciAiZ2l0IHVwZGF0ZS1pbmRleCBbPGPDoWMtdMO5eS1jaOG7jW4+XSBbLS1dIFs8dOG6rXAtdGluPuKApl0iCittc2dzdHIgImdpdCB1cGRhdGUtaW5kZXggWzxjw6FjIHTDuXkgY2jhu41uPl0gWy0tXSBbPHThuq1wLXRpbj7igKZdIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk2MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzQKIG1zZ2lkICJjb250aW51ZSByZWZyZXNoIGV2ZW4gd2hlbiBpbmRleCBuZWVkcyB1cGRhdGUiCiBtc2dzdHIgInRp4bq/cCB04bulYyBsw6BtIG3hu5tpIG5nYXkgY+G6oyBraGkgYuG6o25nIG3hu6VjIGzhu6VjIGPhuqduIMSRxrDhu6NjIGPhuq1wIG5o4bqtdCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NjQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTc3CiBtc2dpZCAicmVmcmVzaDogaWdub3JlIHN1Ym1vZHVsZXMiCiBtc2dzdHIgInJlZnJlc2g6IGzhu50gxJFpIG3DtC3EkXVuLWNvbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NjcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgwCiBtc2dpZCAiZG8gbm90IGlnbm9yZSBuZXcgZmlsZXMiCiBtc2dzdHIgImtow7RuZyBi4buPIHF1YSBjw6FjIHThuq1wIHRpbiBt4bubaSB04bqhbyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NjkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgyCiBtc2dpZCAibGV0IGZpbGVzIHJlcGxhY2UgZGlyZWN0b3JpZXMgYW5kIHZpY2UtdmVyc2EiCiBtc2dzdHIgIsSR4buDIGPDoWMgdOG6rXAgdGluIHRoYXkgdGjhur8gY8OhYyB0aMawIG3hu6VjIHbDoCDigJx2aWNlLXZlcnNh4oCdIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODQKIG1zZ2lkICJub3RpY2UgZmlsZXMgbWlzc2luZyBmcm9tIHdvcmt0cmVlIgogbXNnc3RyICJ0aMO0bmcgYsOhbyBjw6FjIHThuq1wLXRpbiB0aGnhur91IHRyb25nIHRoxrAtbeG7pWMgbMOgbSB2aeG7h2MiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTczCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NgogbXNnaWQgInJlZnJlc2ggZXZlbiBpZiBpbmRleCBjb250YWlucyB1bm1lcmdlZCBlbnRyaWVzIgogbXNnc3RyICIiCiAibMOgbSB0xrDGoWkgbeG7m2kgdGjhuq1tIGNow60ga2hpIGLhuqNuZyBt4bulYyBs4bulYyBjaOG7qWEgY8OhYyBt4bulYyB0aW4gY2jGsGEgxJHGsOG7o2MgaMOyYSB0cuG7mW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTc2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4OQogbXNnaWQgInJlZnJlc2ggc3RhdCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAibOG6pXkgbOG6oWkgdGjDtG5nIHRpbiB0aOG7kW5nIGvDqiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTkzCiBtc2dpZCAibGlrZSAtLXJlZnJlc2gsIGJ1dCBpZ25vcmUgYXNzdW1lLXVuY2hhbmdlZCBzZXR0aW5nIgogbXNnc3RyICJnaeG7kW5nIC0tcmVmcmVzaCwgbmjGsG5nIGLhu48gcXVhIGPDoWMgY8OgaSDEkeG6t3Qg4oCcYXNzdW1lLXVuY2hhbmdlZOKAnSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk3CiBtc2dpZCAiPG1vZGU+LDxvYmplY3Q+LDxwYXRoPiIKIG1zZ3N0ciAiPGNo4bq/X8SR4buZPiw8xJHhu5FpX3TGsOG7o25nPiw8xJHGsOG7nW5nX2ThuqtuPiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODUKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk4CiBtc2dpZCAiYWRkIHRoZSBzcGVjaWZpZWQgZW50cnkgdG8gdGhlIGluZGV4IgogbXNnc3RyICJ0aMOqbSBjw6FjIHThuq1wIHRpbiDEkcOjIGNo4buJIHJhIHbDoG8gYuG6o25nIG3hu6VjIGzhu6VjIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA4CiBtc2dpZCAibWFyayBmaWxlcyBhcyBcIm5vdCBjaGFuZ2luZ1wiIgotbXNnc3RyICLEkMOhbmggZOG6pXUgY8OhYyB04bqtcCB0aW4gbMOgIFwia2jDtG5nIHRoYXkgxJHhu5VpXCIiCittc2dzdHIgIsSRw6FuaCBk4bqldSBjw6FjIHThuq1wIHRpbiBsw6AgXCJraMO0bmcgdGhheSDEkeG7lWlcIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMQogbXNnaWQgImNsZWFyIGFzc3VtZWQtdW5jaGFuZ2VkIGJpdCIKIG1zZ3N0ciAieMOzYSBiw610IGFzc3VtZWQtdW5jaGFuZ2VkIChnaeG6oyDEkeG7i25oIGzDoCBraMO0bmcgdGhheSDEkeG7lWkpIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNAogbXNnaWQgIm1hcmsgZmlsZXMgYXMgXCJpbmRleC1vbmx5XCIiCiBtc2dzdHIgIsSRw6FuaCBk4bqldSBjw6FjIHThuq1wIHRpbiBsw6Ag4oCcY2jhu4ktxJHhu41j4oCdIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNwogbXNnaWQgImNsZWFyIHNraXAtd29ya3RyZWUgYml0IgogbXNnc3RyICJ4w7NhIGLDrXQgc2tpcC13b3JrdHJlZSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA2CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjAKK21zZ2lkICJkbyBub3QgdG91Y2ggaW5kZXgtb25seSBlbnRyaWVzIgorbXNnc3RyICLEkeG7q25nIMSR4buZbmcgdsOgbyBjw6FjIG3hu6VjIGluZGV4LW9ubHkiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyMgogbXNnaWQgImFkZCB0byBpbmRleCBvbmx5OyBkbyBub3QgYWRkIGNvbnRlbnQgdG8gb2JqZWN0IGRhdGFiYXNlIgogbXNnc3RyICIiCiAiY2jhu4kgdGjDqm0gdsOgbyBi4bqjbmcgbeG7pWMgbOG7pWM7IGtow7RuZyB0aMOqbSBu4buZaSBkdW5nIHbDoG8gY8ahIHPhu58gZOG7ryBsaeG7h3UgxJHhu5FpIHTGsOG7o25nIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNAogbXNnaWQgInJlbW92ZSBuYW1lZCBwYXRocyBldmVuIGlmIHByZXNlbnQgaW4gd29ya3RyZWUiCiBtc2dzdHIgIiIKICJn4buhIGLhu48gY8OhYyDEkcaw4budbmcgZOG6q24gxJHGsOG7o2MgxJHhurd0IHTDqm4gdGjhuq1tIGNow60gY+G6oyBraGkgbsOzIGhp4buHbiBkaeG7h24gdHJvbmcgdGjGsCBt4bulYyAiCiAibMOgbSB2aeG7h2MiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI2CiBtc2dpZCAid2l0aCAtLXN0ZGluOiBpbnB1dCBsaW5lcyBhcmUgdGVybWluYXRlZCBieSBudWxsIGJ5dGVzIgogbXNnc3RyICJ24bubaSB0w7l5IGNo4buNbiAtLXN0ZGluOiBjw6FjIGTDsm5nIMSR4bqndSB2w6BvIMSRxrDhu6NjIGNo4bqlbSBk4bupdCBi4bufaSBrw70gdOG7sSBudWxsIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTIKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyOAogbXNnaWQgInJlYWQgbGlzdCBvZiBwYXRocyB0byBiZSB1cGRhdGVkIGZyb20gc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgIsSR4buNYyBkYW5oIHPDoWNoIMSRxrDhu51uZyBk4bqrbiBj4bqnbiBj4bqtcCBuaOG6rXQgdOG7qyDEkeG6p3UgdsOgbyB0acOqdSBjaHXhuqluIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzMgogbXNnaWQgImFkZCBlbnRyaWVzIGZyb20gc3RhbmRhcmQgaW5wdXQgdG8gdGhlIGluZGV4IgogbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIGPDoWMgbeG7pWMgdOG7qyDEkeG6p3UgdsOgbyB0acOqdSBjaHXhuqluIHbDoG8gYuG6o25nIG3hu6VjIGzhu6VjIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzNgogbXNnaWQgInJlcG9wdWxhdGUgc3RhZ2VzICMyIGFuZCAjMyBmb3IgdGhlIGxpc3RlZCBwYXRocyIKIG1zZ3N0ciAicGjhu6VjIGjhu5NpIGPDoWMgdHLhuqFuZyB0aMOhaSAjMiB2w6AgIzMgY2hvIGPDoWMgxJHGsOG7nW5nIGThuqtuIMSRxrDhu6NjIGxp4buHdCBrw6oiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyNAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQwCiBtc2dpZCAib25seSB1cGRhdGUgZW50cmllcyB0aGF0IGRpZmZlciBmcm9tIEhFQUQiCiBtc2dzdHIgImNo4buJIGPhuq1wIG5o4bqtdCBjw6FjIG3hu6VjIHRpbiBtw6AgbsOzIGtow6FjIGJp4buHdCBzbyB24bubaSBIRUFEIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NAogbXNnaWQgImlnbm9yZSBmaWxlcyBtaXNzaW5nIGZyb20gd29ya3RyZWUiCiBtc2dzdHIgImLhu48gcXVhIGPDoWMgdOG6rXAtdGluIHRoaeG6v3UgdHJvbmcgdGjGsC1t4bulYyBsw6BtIHZp4buHYyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDMxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDcKIG1zZ2lkICJyZXBvcnQgYWN0aW9ucyB0byBzdGFuZGFyZCBvdXRwdXQiCiBtc2dzdHIgImLDoW8gY8OhbyBjw6FjIHRoYW8gdMOhYyByYSB0aGnhur90IGLhu4sgeHXhuqV0IGNodeG6qW4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzMworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ5CiBtc2dpZCAiKGZvciBwb3JjZWxhaW5zKSBmb3JnZXQgc2F2ZWQgdW5yZXNvbHZlZCBjb25mbGljdHMiCiBtc2dzdHIgIihjaG8g4oCccG9yY2VsYWluc+KAnSkgcXXDqm4gY8OhYyB4dW5nIMSR4buZdCBjaMawYSDEkcaw4bujYyBnaeG6o2kgcXV54bq/dCDEkcOjIGdoaSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDM3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTMKIG1zZ2lkICJ3cml0ZSBpbmRleCBpbiB0aGlzIGZvcm1hdCIKIG1zZ3N0ciAiZ2hpIG3hu6VjIGzhu6VjIOG7nyDEkeG7i25oIGThuqFuZyBuw6B5IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1NQogbXNnaWQgImVuYWJsZSBvciBkaXNhYmxlIHNwbGl0IGluZGV4IgogbXNnc3RyICJi4bqtdC904bqvdCBjaGlhIGPhuq90IGLhuqNuZyBt4bulYyBs4bulYyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTcKIG1zZ2lkICJlbmFibGUvZGlzYWJsZSB1bnRyYWNrZWQgY2FjaGUiCiBtc2dzdHIgImLhuq10L3Thuq90IGLhu5kgxJHhu4dtIGtow7RuZyB0aGVvIHbhur90IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1OQogbXNnaWQgInRlc3QgaWYgdGhlIGZpbGVzeXN0ZW0gc3VwcG9ydHMgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICJraeG7g20gdHJhIHhlbSBo4buHIHRo4buRbmcgdOG6rXAgdGluIGPDsyBo4buXIHRy4bujIMSR4buHbSBraMO0bmcgdGhlbyBkw7VpIGhheSBraMO0bmciCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDYxCiBtc2dpZCAiZW5hYmxlIHVudHJhY2tlZCBjYWNoZSB3aXRob3V0IHRlc3RpbmcgdGhlIGZpbGVzeXN0ZW0iCiBtc2dzdHIgImLhuq10IGLhu5kgxJHhu4dtIGtow7RuZyB0aGVvIHbhur90IG3DoCBraMO0bmcga2nhu4NtIHRyYSBo4buHIHRo4buRbmcgdOG6rXAgdGluIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2MwogbXNnaWQgIndyaXRlIG91dCB0aGUgaW5kZXggZXZlbiBpZiBpcyBub3QgZmxhZ2dlZCBhcyBjaGFuZ2VkIgogbXNnc3RyICJnaGkgcmEgbeG7pWMgbOG7pWMgbmdheSBj4bqjIGtoaSBraMO0bmcgxJHGsOG7o2MgxJHDoW5oIGPhu50gbMOgIGPDsyB0aGF5IMSR4buVaSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjUKIG1zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBmaWxlIHN5c3RlbSBtb25pdG9yIgogbXNnc3RyICJi4bqtdC904bqvdCB0aGVvIGTDtWkgaOG7hyB0aOG7kW5nIHThuq1wIHRpbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDUxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjcKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIGZzbW9uaXRvciB2YWxpZCIKIG1zZ3N0ciAixJHDoW5oIGThuqV1IGPDoWMgdOG6rXAgdGluIGzDoCBo4bujcCBs4buHIGZzbW9uaXRvciIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDU0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNzAKIG1zZ2lkICJjbGVhciBmc21vbml0b3IgdmFsaWQgYml0IgogbXNnc3RyICJ4w7NhIGLDrXQgaOG7o3AgbOG7hyBmc21vbml0b3IiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE1MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTczCiBtc2dpZCAiIgogImNvcmUuc3BsaXRJbmRleCBpcyBzZXQgdG8gZmFsc2U7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCB0byAiCiAiZW5hYmxlIHNwbGl0IGluZGV4IgpAQCAtMTc5NjUsNyArMjE2MzksNyBAQAogImNvcmUuc3BsaXRJbmRleCDEkcaw4bujYyDEkeG6t3QgbMOgIHNhaTsgeMOzYSBi4buPIGhheSB0aGF5IMSR4buVaSBuw7MsIG7hur91IGLhuqFuIHRo4buxYyBz4buxICIKICJtdeG7kW4gYuG6rXQgY2hpYSB0w6FjaCBt4bulYyBs4bulYyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTYyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExODIKIG1zZ2lkICIiCiAiY29yZS5zcGxpdEluZGV4IGlzIHNldCB0byB0cnVlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgogImRpc2FibGUgc3BsaXQgaW5kZXgiCkBAIC0xNzk3Myw3ICsyMTY0Nyw3IEBACiAiY29yZS5zcGxpdEluZGV4IMSRxrDhu6NjIMSR4bq3dCBsw6AgxJHDum5nOyB4w7NhIGLhu48gaGF5IHRoYXkgxJHhu5VpIG7DsywgbuG6v3UgYuG6oW4gdGjhu7FjIHPhu7EgIgogIm114buRbiB04bqvdCBjaGlhIHTDoWNoIG3hu6VjIGzhu6VjIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExNzMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE5NAogbXNnaWQgIiIKICJjb3JlLnVudHJhY2tlZENhY2hlIGlzIHNldCB0byB0cnVlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgIgogInRvIGRpc2FibGUgdGhlIHVudHJhY2tlZCBjYWNoZSIKQEAgLTE3OTgxLDExICsyMTY1NSwxMSBAQAogImNvcmUudW50cmFja2VkQ2FjaGUgxJHGsOG7o2MgxJHhurd0IGzDoCDEkcO6bmc7IHjDs2EgYuG7jyBoYXkgdGhheSDEkeG7lWkgbsOzLCBu4bq/dSBi4bqhbiB0aOG7sWMgIgogInPhu7EgbXXhu5FuIHThuq90IGLhu5kgxJHhu4dtIGNoxrBhIHRoZW8gZMO1aSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTc3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExOTgKIG1zZ2lkICJVbnRyYWNrZWQgY2FjaGUgZGlzYWJsZWQiCiBtc2dzdHIgIk5o4bubIMSR4buHbSBraMO0bmcgdGhlbyB24bq/dCBi4buLIHThuq90IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExODUKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwNgogbXNnaWQgIiIKICJjb3JlLnVudHJhY2tlZENhY2hlIGlzIHNldCB0byBmYWxzZTsgcmVtb3ZlIG9yIGNoYW5nZSBpdCwgaWYgeW91IHJlYWxseSB3YW50ICIKICJ0byBlbmFibGUgdGhlIHVudHJhY2tlZCBjYWNoZSIKQEAgLTE3OTkzLDQzICsyMTY2Nyw0MyBAQAogImNvcmUudW50cmFja2VkQ2FjaGUgxJHGsOG7o2MgxJHhurd0IGzDoCBzYWk7IHjDs2EgYuG7jyBoYXkgdGhheSDEkeG7lWkgbsOzLCBu4bq/dSBi4bqhbiB0aOG7sWMgc+G7sSAiCiAibXXhu5FuIGLhuq10IGLhu5kgxJHhu4dtIGNoxrBhIHRoZW8gZMO1aSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTg5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW50cmFja2VkIGNhY2hlIGVuYWJsZWQgZm9yICclcyciCiBtc2dzdHIgIk5o4bubIMSR4buHbSBraMO0bmcgdGhlbyB24bq/dCDEkcaw4bujYyBi4bqtdCBjaG8g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE5NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjE4CiBtc2dpZCAiY29yZS5mc21vbml0b3IgaXMgdW5zZXQ7IHNldCBpdCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZW5hYmxlIGZzbW9uaXRvciIKIG1zZ3N0ciAiIgogImNvcmUuZnNtb25pdG9yIGNoxrBhIMSRxrDhu6NjIMSR4bq3dDsgxJHhurd0IG7DsyBu4bq/dSBi4bqhbiB0aOG7sWMgc+G7sSBtdeG7kW4gYuG6rXQgdGhlbyBkw7VpIGjhu4cgIgogInRo4buRbmcgdOG6rXAgdGluIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyMgogbXNnaWQgImZzbW9uaXRvciBlbmFibGVkIgogbXNnc3RyICJmc21vbml0b3IgxJHGsOG7o2MgYuG6rXQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIwNAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjI1CiBtc2dpZCAiIgogImNvcmUuZnNtb25pdG9yIGlzIHNldDsgcmVtb3ZlIGl0IGlmIHlvdSByZWFsbHkgd2FudCB0byBkaXNhYmxlIGZzbW9uaXRvciIKIG1zZ3N0ciAiIgogImNvcmUuZnNtb25pdG9yIMSRw6MgxJHGsOG7o2MgxJHhurd0OyBi4buPIMSR4bq3dCBuw7MgbuG6v3UgYuG6oW4gdGjhu7FjIHPhu7EgbXXhu5FuIGLhuq10IHRoZW8gZMO1aSBo4buHICIKICJ0aOG7kW5nIHThuq1wIHRpbiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMjkKIG1zZ2lkICJmc21vbml0b3IgZGlzYWJsZWQiCiBtc2dzdHIgImZzbW9uaXRvciBi4buLIHThuq90IgogCiAjOiBidWlsdGluL3VwZGF0ZS1yZWYuYzoxMAogbXNnaWQgImdpdCB1cGRhdGUtcmVmIFs8b3B0aW9ucz5dIC1kIDxyZWZuYW1lPiBbPG9sZC12YWw+XSIKLW1zZ3N0ciAiZ2l0IHVwZGF0ZS1yZWYgWzxjw6FjLXTDuXktY2jhu41uPl0gLWQgPHJlZm5hbWU+IFs8Ymnhur9uLWPFqT5dIgorbXNnc3RyICJnaXQgdXBkYXRlLXJlZiBbPGPDoWMgdMO5eSBjaOG7jW4+XSAtZCA8cmVmbmFtZT4gWzxiaeG6v24tY8WpPl0iCiAKICM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjExCiBtc2dpZCAiZ2l0IHVwZGF0ZS1yZWYgWzxvcHRpb25zPl0gICAgPHJlZm5hbWU+IDxuZXctdmFsPiBbPG9sZC12YWw+XSIKLW1zZ3N0ciAiZ2l0IHVwZGF0ZS1yZWYgWzxjw6FjLXTDuXktY2jhu41uPl0gICAgPHJlZm5hbWU+IDxiaeG6v24tbeG7m2k+IFs8Ymnhur9uLWPFqT5dIgorbXNnc3RyICJnaXQgdXBkYXRlLXJlZiBbPGPDoWMgdMO5eSBjaOG7jW4+XSAgICA8cmVmbmFtZT4gPGJp4bq/bi1t4bubaT4gWzxiaeG6v24tY8WpPl0iCiAKICM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjEyCiBtc2dpZCAiZ2l0IHVwZGF0ZS1yZWYgWzxvcHRpb25zPl0gLS1zdGRpbiBbLXpdIgotbXNnc3RyICJnaXQgdXBkYXRlLXJlZiBbPGPDoWMtdMO5eS1jaOG7jW4+XSAtLXN0ZGluIFstel0iCittc2dzdHIgImdpdCB1cGRhdGUtcmVmIFs8Y8OhYyB0w7l5IGNo4buNbj5dIC0tc3RkaW4gWy16XSIKIAogIzogYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY0CiBtc2dpZCAiZGVsZXRlIHRoZSByZWZlcmVuY2UiCkBAIC0xODA1Nyw3ICsyMTczMSwxMSBAQAogCiAjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MTEKIG1zZ2lkICJnaXQgdXBsb2FkLXBhY2sgWzxvcHRpb25zPl0gPGRpcj4iCi1tc2dzdHIgImdpdCB1cGxvYWQtcGFjayBbPGPDoWMtdMO5eS1jaOG7jW4+XSA8L8SRxrDhu51uZy9k4bqrbj4iCittc2dzdHIgImdpdCB1cGxvYWQtcGFjayBbPGPDoWMgdMO5eSBjaOG7jW4+XSA8L8SRxrDhu51uZy9k4bqrbj4iCisKKyM6IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyMyB0L2hlbHBlci90ZXN0LXNlcnZlLXYyLmM6MTcKK21zZ2lkICJxdWl0IGFmdGVyIGEgc2luZ2xlIHJlcXVlc3QvcmVzcG9uc2UgZXhjaGFuZ2UiCittc2dzdHIgInRob8OhdCBzYXUga2hpIG3hu5l0IHRyYW8gxJHhu5VpIHnDqnUgY+G6p3UgaGF5IHRy4bqjIGzhu51pIMSRxqFuIgogCiAjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjUKIG1zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGluaXRpYWwgcmVmIGFkdmVydGlzZW1lbnQiCkBAIC0xODA3MSwxNSArMjE3NDksMTUgQEAKIG1zZ2lkICJpbnRlcnJ1cHQgdHJhbnNmZXIgYWZ0ZXIgPG4+IHNlY29uZHMgb2YgaW5hY3Rpdml0eSIKIG1zZ3N0ciAibmfhuq90IHRydXnhu4FuIHRow7RuZyBzYXUgPG4+IGdpw6J5IGtow7RuZyBob+G6oXQgxJHhu5luZyIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6MjAKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjE5CiBtc2dpZCAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA8Y29tbWl0Pi4uLiIKIG1zZ3N0ciAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA8bOG6p25fY2h1eeG7g25fZ2lhbz7igKYiCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjc2CisjOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo2OAogbXNnaWQgInByaW50IGNvbW1pdCBjb250ZW50cyIKIG1zZ3N0ciAiaGnhu4NuIHRo4buLIG7hu5lpIGR1bmcgY+G7p2EgbOG6p24gY2h1eeG7g24gZ2lhbyIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NzcgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzgKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjY5IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM3CiBtc2dpZCAicHJpbnQgcmF3IGdwZyBzdGF0dXMgb3V0cHV0IgogbXNnc3RyICJpbiBr4bq/dCB4deG6pXQgdHLhuqFuZyB0aMOhaSBncGcgZOG6oW5nIHRow7QiCiAKQEAgLTE4MDk1LDI1ICsyMTc3MywyNSBAQAogbXNnaWQgInNob3cgc3RhdGlzdGljcyBvbmx5IgogbXNnc3RyICJjaOG7iSBoaeG7g24gdGjhu4sgdGjhu5FuZyBrw6oiCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjE5CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzoxOAogbXNnaWQgImdpdCB2ZXJpZnktdGFnIFstdiB8IC0tdmVyYm9zZV0gWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnPi4uLiIKIG1zZ3N0ciAiZ2l0IHZlcmlmeS10YWcgWy12IHwgLS12ZXJib3NlXSBbLS1mb3JtYXQ9PMSR4buLbmhfZOG6oW5nPl0gPHRo4bq7PuKApiIKIAotIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzcKKyM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM2CiBtc2dpZCAicHJpbnQgdGFnIGNvbnRlbnRzIgogbXNnc3RyICJoaeG7g24gdGjhu4sgbuG7mWkgZHVuZyBj4bunYSB0aOG6uyIKIAogIzogYnVpbHRpbi93b3JrdHJlZS5jOjE3CiBtc2dpZCAiZ2l0IHdvcmt0cmVlIGFkZCBbPG9wdGlvbnM+XSA8cGF0aD4gWzxjb21taXQtaXNoPl0iCi1tc2dzdHIgImdpdCB3b3JrdHJlZSBhZGQgWzxjw6FjLXTDuXktY2jhu41uPl0gPMSRxrDhu51uZy1k4bqrbj4gWzxjb21taXQtaXNoPl0iCittc2dzdHIgImdpdCB3b3JrdHJlZSBhZGQgWzxjw6FjIHTDuXkgY2jhu41uPl0gPC/Ekcaw4budbmcvZOG6q24+IFs8Y29tbWl0LWlzaD5dIgogCiAjOiBidWlsdGluL3dvcmt0cmVlLmM6MTgKIG1zZ2lkICJnaXQgd29ya3RyZWUgbGlzdCBbPG9wdGlvbnM+XSIKLW1zZ3N0ciAiZ2l0IHdvcmt0cmVlIGxpc3QgWzxjw6FjLXTDuXktY2jhu41uPl0iCittc2dzdHIgImdpdCB3b3JrdHJlZSBsaXN0IFs8Y8OhYyB0w7l5IGNo4buNbj5dIgogCiAjOiBidWlsdGluL3dvcmt0cmVlLmM6MTkKIG1zZ2lkICJnaXQgd29ya3RyZWUgbG9jayBbPG9wdGlvbnM+XSA8cGF0aD4iCi1tc2dzdHIgImdpdCB3b3JrdHJlZSBsb2NrIFs8Y8OhYy10w7l5LWNo4buNbj5dIDwvxJHGsOG7nW5nL2ThuqtuPiIKK21zZ3N0ciAiZ2l0IHdvcmt0cmVlIGxvY2sgWzxjw6FjIHTDuXkgY2jhu41uPl0gPC/Ekcaw4budbmcvZOG6q24+IgogCiAjOiBidWlsdGluL3dvcmt0cmVlLmM6MjAKIG1zZ2lkICJnaXQgd29ya3RyZWUgbW92ZSA8d29ya3RyZWU+IDxuZXctcGF0aD4iCkBAIC0xODEyMSwxNyArMjE3OTksMTcgQEAKIAogIzogYnVpbHRpbi93b3JrdHJlZS5jOjIxCiBtc2dpZCAiZ2l0IHdvcmt0cmVlIHBydW5lIFs8b3B0aW9ucz5dIgotbXNnc3RyICJnaXQgd29ya3RyZWUgcHJ1bmUgWzxjw6FjLXTDuXktY2jhu41uPl0iCittc2dzdHIgImdpdCB3b3JrdHJlZSBwcnVuZSBbPGPDoWMgdMO5eSBjaOG7jW4+XSIKIAogIzogYnVpbHRpbi93b3JrdHJlZS5jOjIyCiBtc2dpZCAiZ2l0IHdvcmt0cmVlIHJlbW92ZSBbPG9wdGlvbnM+XSA8d29ya3RyZWU+IgotbXNnc3RyICJnaXQgd29ya3RyZWUgcmVtb3ZlIFs8Y8OhYy10w7l5LWNo4buNbj5dIDx3b3JrdHJlZT4iCittc2dzdHIgImdpdCB3b3JrdHJlZSByZW1vdmUgWzxjw6FjIHTDuXkgY2jhu41uPl0gPHdvcmt0cmVlPiIKIAogIzogYnVpbHRpbi93b3JrdHJlZS5jOjIzCiBtc2dpZCAiZ2l0IHdvcmt0cmVlIHVubG9jayA8cGF0aD4iCiBtc2dzdHIgImdpdCB3b3JrdHJlZSB1bmxvY2sgPC/Ekcaw4budbmcvZOG6q24+IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjAgYnVpbHRpbi93b3JrdHJlZS5jOjg3MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjYwIGJ1aWx0aW4vd29ya3RyZWUuYzo4OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSAnJXMnIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgeMOzYSDigJwlc+KAnSIKQEAgLTE4MTgxLDEyICsyMTg1OSwxMiBAQAogbXNnaWQgIiclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIuKAnCVz4oCdIMSRw6MgY8OzIHThu6sgdHLGsOG7m2MgcuG7k2kiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlLWFkZCB3b3JrdHJlZSAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdGjDqm0tbOG6oWkgY8OieSDigJwlc+KAnSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1NgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjI0OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBpcyBhIG1pc3NpbmcgYnV0IGxvY2tlZCB3b3JrdHJlZTtcbiIKQEAgLTE4MTk1LDcgKzIxODczLDcgQEAKICLigJwlc+KAnSBi4buLIG3huqV0IG5oxrBuZyBjw6J5IGzDoG0gdmnhu4djIGLhu4sga2jDs2E7XG4iCiAiZMO5bmcg4oCcYWRkIC1mIC1m4oCdIMSR4buDIGdoaSDEkcOoLCBob+G6t2Mg4oCcdW5sb2Nr4oCdIHbDoCDigJxwcnVuZeKAnSBoYXkg4oCccmVtb3Zl4oCdIMSR4buDIHjDs2EiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcycgaXMgYSBtaXNzaW5nIGJ1dCBhbHJlYWR5IHJlZ2lzdGVyZWQgd29ya3RyZWU7XG4iCkBAIC0xODIwNCwxMjAgKzIxODgyLDEyMCBAQAogIuKAnCVz4oCdIGLhu4sgbeG6pXQgbmjGsG5nIGPDonkgbMOgbSB2aeG7h2MgxJHDoyDEkcaw4bujYyDEkcSDbmcga8O9O1xuIgogImTDuW5nIOKAnGFkZCAtZuKAnSDEkeG7gyBnaGkgxJHDqCwgaG/hurdjIOKAnHBydW5l4oCdIGhheSDigJxyZW1vdmXigJ0gxJHhu4MgeMOzYSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjMwOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjMwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBvZiAnJXMnIgogbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gdGjGsCBt4bulYyBj4bunYSDigJwlc+KAnSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQyOCBidWlsdGluL3dvcmt0cmVlLmM6NDM0CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDMyIGJ1aWx0aW4vd29ya3RyZWUuYzo0MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChuZXcgYnJhbmNoICclcycpIgogbXNnc3RyICLEkGFuZyBjaHXhuqluIGLhu4sgY8OieSBsw6BtIHZp4buHYyAobmjDoW5oIG3hu5tpIOKAnCVz4oCdKSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKHJlc2V0dGluZyBicmFuY2ggJyVzJzsgd2FzIGF0ICVzKSIKIG1zZ3N0ciAixJBhbmcgY2h14bqpbiBi4buLIGPDonkgbMOgbSB2aeG7h2MgKMSRYW5nIGPDoGkgxJHhurd0IG5ow6FuaCDigJwlc+KAnSwgdHLGsOG7m2MgxJHDonkgdOG6oWkgJXMpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDM5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAoY2hlY2tpbmcgb3V0ICclcycpIgogbXNnc3RyICLEkGFuZyBjaHXhuqluIGLhu4sgY8OieSBsw6BtIHZp4buHYyAoxJFhbmcgbOG6pXkgcmEg4oCcJXPigJ0pIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDQ1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAoZGV0YWNoZWQgSEVBRCAlcykiCiBtc2dzdHIgIsSQYW5nIGNodeG6qW4gYuG7iyBjw6J5IGzDoG0gdmnhu4djIChIRUFEIMSRw6MgdMOhY2ggcuG7nWkg4oCcJXPigJ0pIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDg2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDkwCiBtc2dpZCAiY2hlY2tvdXQgPGJyYW5jaD4gZXZlbiBpZiBhbHJlYWR5IGNoZWNrZWQgb3V0IGluIG90aGVyIHdvcmt0cmVlIgogbXNnc3RyICJs4bqleSByYSA8bmjDoW5oPiBuZ2F5IGPhuqMga2hpIG7DsyDEkcOjIMSRxrDhu6NjIGzhuqV5IHJhIOG7nyBjw6J5IGzDoG0gdmnhu4djIGtow6FjIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDg5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDkzCiBtc2dpZCAiY3JlYXRlIGEgbmV3IGJyYW5jaCIKIG1zZ3N0ciAidOG6oW8gbmjDoW5oIG3hu5tpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDkxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk1CiBtc2dpZCAiY3JlYXRlIG9yIHJlc2V0IGEgYnJhbmNoIgogbXNnc3RyICJ04bqhbyBoYXkgxJHhurd0IGzhuqFpIG3hu5l0IG5ow6FuaCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NwogbXNnaWQgInBvcHVsYXRlIHRoZSBuZXcgd29ya2luZyB0cmVlIgogbXNnc3RyICJkaSBjaHV54buDbiBjw6J5IGzDoG0gdmnhu4djIG3hu5tpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDk0CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk4CiBtc2dpZCAia2VlcCB0aGUgbmV3IHdvcmtpbmcgdHJlZSBsb2NrZWQiCiBtc2dzdHIgImdp4buvIGPDonkgbMOgbSB2aeG7h2MgbeG7m2kgYuG7iyBraMOzYSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NworIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwMQogbXNnaWQgInNldCB1cCB0cmFja2luZyBtb2RlIChzZWUgZ2l0LWJyYW5jaCgxKSkiCiBtc2dzdHIgImPDoGkgxJHhurd0IGNo4bq/IMSR4buZIHRoZW8gZMO1aSAoeGVtIGdpdC1icmFuY2goMSkpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NTAwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTA0CiBtc2dpZCAidHJ5IHRvIG1hdGNoIHRoZSBuZXcgYnJhbmNoIG5hbWUgd2l0aCBhIHJlbW90ZS10cmFja2luZyBicmFuY2giCiBtc2dzdHIgImPDsyBraOG7m3AgdMOqbiB0w6puIG5ow6FuaCBt4bubaSB24bubaSBt4buZdCBuaMOhbmggdGhlbyBkw7VpIG3DoXkgY2jhu6ciCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MTIKIG1zZ2lkICItYiwgLUIsIGFuZCAtLWRldGFjaCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICJDw6FjIHTDuXkgY2jhu41uIC1iLCAtQiwgdsOgIC0tZGV0YWNoIGxv4bqhaSB04burIGzhuqtuIG5oYXUiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1NjkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1NzMKIG1zZ2lkICItLVtuby1ddHJhY2sgY2FuIG9ubHkgYmUgdXNlZCBpZiBhIG5ldyBicmFuY2ggaXMgY3JlYXRlZCIKIG1zZ3N0ciAiLS1bbm8tXXRyYWNrIGNo4buJIGPDsyB0aOG7gyDEkcaw4bujYyBkw7luZyBu4bq/dSBt4buZdCBuaMOhbmggbeG7m2kgxJHGsOG7o2MgdOG6oW8iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NjkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NzMKIG1zZ2lkICJyZWFzb24gZm9yIGxvY2tpbmciCiBtc2dzdHIgImzDvSBkbyBraMOzYSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4MSBidWlsdGluL3dvcmt0cmVlLmM6NzE0IGJ1aWx0aW4vd29ya3RyZWUuYzo3NzIKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4OTkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODUgYnVpbHRpbi93b3JrdHJlZS5jOjcxOCBidWlsdGluL3dvcmt0cmVlLmM6NzkyCisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgd29ya2luZyB0cmVlIgogbXNnc3RyICIlcyBraMO0bmcgcGjhuqNpIGzDoCBjw6J5IGzDoG0gdmnhu4djIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjgzIGJ1aWx0aW4vd29ya3RyZWUuYzo3MTYKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODcgYnVpbHRpbi93b3JrdHJlZS5jOjcyMAogbXNnaWQgIlRoZSBtYWluIHdvcmtpbmcgdHJlZSBjYW5ub3QgYmUgbG9ja2VkIG9yIHVubG9ja2VkIgogbXNnc3RyICJDw6J5IHRoxrAgbeG7pWMgbMOgbSB2aeG7h2MgY2jDrW5oIGtow7RuZyB0aOG7gyBraMOzYSBoYXkgYuG7jyBraMOzYSDEkcaw4bujYyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5MgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFscmVhZHkgbG9ja2VkLCByZWFzb246ICVzIgogbXNnc3RyICLigJwlc+KAnSDEkcOjIMSRxrDhu6NjIGtow7NhIHLhu5NpLCBsw70gZG86ICVzIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjkwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgYWxyZWFkeSBsb2NrZWQiCiBtc2dzdHIgIuKAnCVz4oCdIMSRw6MgxJHGsOG7o2Mga2jDs2EgcuG7k2kiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3MTgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgbG9ja2VkIgogbXNnc3RyICLigJwlc+KAnSBjaMawYSBi4buLIGtow7NhIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzQzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzYzCiBtc2dpZCAid29ya2luZyB0cmVlcyBjb250YWluaW5nIHN1Ym1vZHVsZXMgY2Fubm90IGJlIG1vdmVkIG9yIHJlbW92ZWQiCiBtc2dzdHIgImPDonkgbMOgbSB2aeG7h2MgY8OzIGNo4bupYSBtw7QtxJF1bi1jb24ga2jDtG5nIHRo4buDIGRpIGNodXnhu4NuIGhheSB4w7NhIGLhu48iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NzEKIG1zZ2lkICJmb3JjZSBtb3ZlIGV2ZW4gaWYgd29ya3RyZWUgaXMgZGlydHkgb3IgbG9ja2VkIgogbXNnc3RyICLDqXAgYnXhu5ljIG5nYXkgY+G6oyBraGkgY8OieSBsw6BtIHZp4buHYyDEkWFuZyBi4bqpbiBoYXkgYuG7iyBraMOzYSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3NCBidWlsdGluL3dvcmt0cmVlLmM6OTAxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Nzk0IGJ1aWx0aW4vd29ya3RyZWUuYzo5MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhIG1haW4gd29ya2luZyB0cmVlIgogbXNnc3RyICLigJwlc+KAnSBsw6AgY8OieSBsw6BtIHZp4buHYyBjaMOtbmgiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NzkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGZpZ3VyZSBvdXQgZGVzdGluYXRpb24gbmFtZSBmcm9tICclcyciCiBtc2dzdHIgImtow7RuZyB0aOG7gyBwaMOhYyBo4buNYSByYSB0w6puIMSRw61jaCDEkeG6v24g4oCcJXPigJ0iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3ODUKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFyZ2V0ICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIsSRw61jaCDigJwlc+KAnSDEkcOjIHThu5NuIHThuqFpIHLhu5NpIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzkzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjYW5ub3QgbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlc1xuIgpAQCAtMTgzMjYsNyArMjIwMDQsNyBAQAogImtow7RuZyB0aOG7gyBkaSBjaHV54buDbiBt4buZdCBjw6J5LWzDoG0tdmnhu4djIGLhu4sga2jDs2EsIGtow7NhIHbDrDogJXNcbiIKICJkw7luZyDigJxtb3ZlIC1mIC1m4oCdIMSR4buDIGdoaSDEkcOoIGhv4bq3YyBt4bufIGtow7NhIHRyxrDhu5tjIMSRw6MiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTUKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTUKIG1zZ2lkICIiCiAiY2Fubm90IG1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlO1xuIgogInVzZSAnbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgpAQCAtMTgzMzQsMzYgKzIyMDEyLDM4IEBACiAia2jDtG5nIHRo4buDIGRpIGNodXnhu4NuIG3hu5l0IGPDonktbMOgbS12aeG7h2MgYuG7iyBraMOzYTtcbiIKICJkw7luZyDigJxtb3ZlIC1mIC1m4oCdIMSR4buDIGdoaSDEkcOoIGhv4bq3YyBt4bufIGtow7NhIHRyxrDhu5tjIMSRw6MiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAidmFsaWRhdGlvbiBmYWlsZWQsIGNhbm5vdCBtb3ZlIHdvcmtpbmcgdHJlZTogJXMiCiBtc2dzdHIgInRo4bqpbSB0cmEgZ+G6t3AgbOG7l2ksIGtow7RuZyB0aOG7gyBkaSBjaHV54buDbiBt4buZdCBjw6J5LWzDoG0tdmnhu4djOiAlcyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjgwMworIzogYnVpbHRpbi93b3JrdHJlZS5jOjgyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbW92ZSAnJXMnIHRvICclcyciCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBjaHV54buDbiDigJwlc+KAnSBzYW5nIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODUxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODcxCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBydW4gJ2dpdCBzdGF0dXMnIG9uICclcyciCiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBjaOG6oXkg4oCcZ2l0IHN0YXR1c+KAnSB2w6BvIOKAnCVz4oCdIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6ODU1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODc1CiAjLCBjLWZvcm1hdAotbXNnaWQgIiclcycgaXMgZGlydHksIHVzZSAtLWZvcmNlIHRvIGRlbGV0ZSBpdCIKLW1zZ3N0ciAi4oCcJXPigJ0gxJFhbmcgYuG6qW4sIGjDo3kgZMO5bmcgLS1mb3JjZSDEkeG7gyB4w7NhIG7DsyIKK21zZ2lkICInJXMnIGNvbnRhaW5zIG1vZGlmaWVkIG9yIHVudHJhY2tlZCBmaWxlcywgdXNlIC0tZm9yY2UgdG8gZGVsZXRlIGl0IgorbXNnc3RyICIiCisi4oCcJXPigJ0gY8OzIGNo4bupYSBjw6FjIHThuq1wIHRpbiDEkcOjIGLhu4sgc+G7rWEgY2jhu69hIGhv4bq3YyBjaMawYSDEkcaw4bujYyB0aGVvIGTDtWksIGjDo3kgZMO5bmcgLS0iCisiZm9yY2UgxJHhu4MgeMOzYSBuw7MiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NjAKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4ODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAnZ2l0IHN0YXR1cycgb24gJyVzJywgY29kZSAlZCIKIG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIGNo4bqheSDigJxnaXQgc3RhdHVz4oCdIHRyb25nIOKAnCVz4oCdLCBtw6MgJWQiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4ODMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MDMKIG1zZ2lkICJmb3JjZSByZW1vdmFsIGV2ZW4gaWYgd29ya3RyZWUgaXMgZGlydHkgb3IgbG9ja2VkIgogbXNnc3RyICLDqXAgYnXhu5ljIGRpIGNodXnhu4NuIHRo4bqtbSBjaMOtIGPhuqMga2hpIGPDonkgbMOgbSB2aeG7h2MgxJFhbmcgYuG6qW4gaGF5IGLhu4sga2jDs2EiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MDYKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNhbm5vdCByZW1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlLCBsb2NrIHJlYXNvbjogJXNcbiIKQEAgLTE4MzcyLDcgKzIyMDUyLDcgQEAKICJraMO0bmcgdGjhu4MgeMOzYSBi4buPIG3hu5l0IGPDonktbMOgbS12aeG7h2MgYuG7iyBraMOzYSwga2jDs2EgdsOsOiAlc1xuIgogImTDuW5nIOKAnHJlbW92ZSAtZiAtZuKAnSDEkeG7gyBnaGkgxJHDqCBob+G6t2MgbeG7nyBraMOzYSB0csaw4bubYyDEkcOjIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6OTA4CisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTI4CiBtc2dpZCAiIgogImNhbm5vdCByZW1vdmUgYSBsb2NrZWQgd29ya2luZyB0cmVlO1xuIgogInVzZSAncmVtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCkBAIC0xODM4MCwyOCArMjIwNjAsNDQgQEAKICJraMO0bmcgdGjhu4MgeMOzYSBi4buPIG3hu5l0IGPDonktbMOgbS12aeG7h2MgYuG7iyBraMOzYTtcbiIKICJkw7luZyDigJxyZW1vdmUgLWYgLWbigJ0gxJHhu4MgZ2hpIMSRw6ggaG/hurdjIG3hu58ga2jDs2EgdHLGsOG7m2MgxJHDoyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkxMQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ2YWxpZGF0aW9uIGZhaWxlZCwgY2Fubm90IHJlbW92ZSB3b3JraW5nIHRyZWU6ICVzIgogbXNnc3RyICJ0aOG6qW0gdHJhIGfhurdwIGzhu5dpLCBraMO0bmcgdGjhu4MgZ+G7oSBi4buPIG3hu5l0IGPDonktbMOgbS12aeG7h2M6ICVzIgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzoxNAorIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MTUKIG1zZ2lkICJnaXQgd3JpdGUtdHJlZSBbLS1taXNzaW5nLW9rXSBbLS1wcmVmaXg9PHByZWZpeD4vXSIKIG1zZ3N0ciAiZ2l0IHdyaXRlLXRyZWUgWy0tbWlzc2luZy1va10gWy0tcHJlZml4PTx0aeG7gW4tdOG7kT4vXSIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjcKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI4CiBtc2dpZCAiPHByZWZpeD4vIgogbXNnc3RyICI8dGnhu4FuIHThu5E+LyIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjgKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI5CiBtc2dpZCAid3JpdGUgdHJlZSBvYmplY3QgZm9yIGEgc3ViZGlyZWN0b3J5IDxwcmVmaXg+IgogbXNnc3RyICJnaGkgxJHhu5FpIHTGsOG7o25nIGPDonkgKHRyZWUpIGNobyA8dGnhu4FuIHThu5E+IHRoxrAgbeG7pWMgY29uIgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzozMAorIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MzEKIG1zZ2lkICJvbmx5IHVzZWZ1bCBmb3IgZGVidWdnaW5nIgogbXNnc3RyICJjaOG7iSBo4buvdSDDrWNoIGtoaSBj4bqnbiBn4buhIGzhu5dpIgogCi0jOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyMjIKKyM6IGZhc3QtaW1wb3J0LmM6MzEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFeHBlY3RlZCAnbWFyaycgY29tbWFuZCwgZ290ICVzIgorbXNnc3RyICJD4bqnbiBs4buHbmggJ21hcmsnLCBuaMawbmcgbOG6oWkgbmjhuq1uIMSRxrDhu6NjICVzIgorCisjOiBmYXN0LWltcG9ydC5jOjMxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0ZWQgJ3RvJyBjb21tYW5kLCBnb3QgJXMiCittc2dzdHIgIkPhuqduIGzhu4duaCAndG8nLCBuaMawbmcgbOG6oWkgbmjhuq1uIMSRxrDhu6NjICVzIgorCisjOiBmYXN0LWltcG9ydC5jOjMyNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmVhdHVyZSAnJXMnIGZvcmJpZGRlbiBpbiBpbnB1dCB3aXRob3V0IC0tYWxsb3ctdW5zYWZlLWZlYXR1cmVzIgorbXNnc3RyICIiCisidMOtbmggbsSDbmcgJyAlcyAnIGLhu4sgY+G6pW0gY2jhu4kgdHJvbmcgxJHhuqd1IHbDoG8gbcOgIGtow7RuZyBjw7MgLS1hbGxvdy11bnNhZmUtZmVhdHVyZXMiCisKKyM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjIyMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIHBlcm1pc3Npb25zIG9uIHlvdXIgc29ja2V0IGRpcmVjdG9yeSBhcmUgdG9vIGxvb3NlOyBvdGhlclxuIgpAQCAtMTg0MTQsNyArMjIxMTAsNyBAQAogIlxuIgogIlx0Y2htb2QgMDcwMCAlcyIKIAotIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjcxCisjOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyNzIKIG1zZ2lkICJwcmludCBkZWJ1Z2dpbmcgbWVzc2FnZXMgdG8gc3RkZXJyIgogbXNnc3RyICJpbiB0aMO0bmcgdGluIGfhu6EgbOG7l2kgcmEgxJHhuqd1IHJhIGzhu5dpIHRpw6p1IGNodeG6qW4iCiAKQEAgLTE4NDI3LDYgKzIyMTIzLDE0IEBACiBtc2dpZCAidG9vIG1hbnkgY29tbWl0cyBtYXJrZWQgcmVhY2hhYmxlIgogbXNnc3RyICJjw7MgcXXDoSBuaGnhu4F1IGzhuqduIGNodXnhu4NuIGdpYW8gxJHGsOG7o2MgxJHDoW5oIGThuqV1IGzDoCB0aeG6v3AgY+G6rW4gxJHGsOG7o2MiCiAKKyM6IHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzo3Cittc2dpZCAidGVzdC10b29sIHNlcnZlLXYyIFs8b3B0aW9ucz5dIgorbXNnc3RyICJ0ZXN0LXRvb2wgc2VydmUtdjIgWzxjw6FjIHTDuXkgY2jhu41uPl0iCisKKyM6IHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzoxOQorbXNnaWQgImV4aXQgaW1tZWRpYXRlbHkgYWZ0ZXIgYWR2ZXJ0aXNpbmcgY2FwYWJpbGl0aWVzIgorbXNnc3RyICJ0aG/DoXQgbmdheSBzYXUga2hpIGto4bufaSB04bqhbyBxdeG6o25nIGPDoW8gY2FwYWJpbGl0aWVzIgorCiAjOiBnaXQuYzoyNwogbXNnaWQgIiIKICJnaXQgWy0tdmVyc2lvbl0gWy0taGVscF0gWy1DIDxwYXRoPl0gWy1jIDxuYW1lPj08dmFsdWU+XVxuIgpAQCAtMTg0NDksMTA0ICsyMjE1MywxNTYgQEAKIG1zZ2lkICIiCiAiJ2dpdCBoZWxwIC1hJyBhbmQgJ2dpdCBoZWxwIC1nJyBsaXN0IGF2YWlsYWJsZSBzdWJjb21tYW5kcyBhbmQgc29tZVxuIgogImNvbmNlcHQgZ3VpZGVzLiBTZWUgJ2dpdCBoZWxwIDxjb21tYW5kPicgb3IgJ2dpdCBoZWxwIDxjb25jZXB0PidcbiIKLSJ0byByZWFkIGFib3V0IGEgc3BlY2lmaWMgc3ViY29tbWFuZCBvciBjb25jZXB0LiIKKyJ0byByZWFkIGFib3V0IGEgc3BlY2lmaWMgc3ViY29tbWFuZCBvciBjb25jZXB0LlxuIgorIlNlZSAnZ2l0IGhlbHAgZ2l0JyBmb3IgYW4gb3ZlcnZpZXcgb2YgdGhlIHN5c3RlbS4iCiBtc2dzdHIgIiIKICLigJxnaXQgaGVscCAtYeKAnSB2w6Ag4oCcZ2l0IGhlbHAgLWfigJ0gbGnhu4d0IGvDqiBjw6FjIGPDonUgbOG7h25oIGNvbiBz4bq1biBjw7MgdsOgIG3hu5l0IHPhu5FcbiIKICJoxrDhu5tuZyBk4bqrbiB24buBIGtow6FpIG5p4buHbS4gWGVtIOKAnGdpdCBoZWxwIDxs4buHbmg+4oCdIGhheSDigJxnaXQgaGVscCA8a2jDoWktbmnhu4dtPuKAnVxuIgotIsSR4buDIHhlbSBjw6FjIMSR4bq3YyB04bqjIGNobyBs4buHbmggaGF5IGtow6FpIG5p4buHbSBj4bulIHRo4buDLiIKKyLEkeG7gyB4ZW0gY8OhYyDEkeG6t2MgdOG6oyBjaG8gbOG7h25oIGhheSBraMOhaSBuaeG7h20gY+G7pSB0aOG7gy5cbiIKKyJYZW0gJ2dpdCBoZWxwIGdpdCcgxJHhu4MgYmnhur90IHThu5VuZyBxdWFuIGPhu6dhIGjhu4cgdGjhu5FuZy4iCiAKLSM6IGdpdC5jOjE3MworIzogZ2l0LmM6MTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLS1naXQtZGlyXG4iCiBtc2dzdHIgImNoxrBhIGNo4buJIHJhIHRoxrAgbeG7pWMgY2hvIC0tZ2l0LWRpclxuIgogCi0jOiBnaXQuYzoxODcKKyM6IGdpdC5jOjIwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBuYW1lc3BhY2UgZ2l2ZW4gZm9yIC0tbmFtZXNwYWNlXG4iCiBtc2dzdHIgImNoxrBhIMSRxrBhIHJhIGtow7RuZyBnaWFuIGzDoG0gdmnhu4djIGNobyAtLW5hbWVzcGFjZVxuIgogCi0jOiBnaXQuYzoyMDEKKyM6IGdpdC5jOjIxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBkaXJlY3RvcnkgZ2l2ZW4gZm9yIC0td29yay10cmVlXG4iCiBtc2dzdHIgImNoxrBhIMSRxrBhIHJhIGPDonkgbMOgbSB2aeG7h2MgY2hvIC0td29yay10cmVlXG4iCiAKLSM6IGdpdC5jOjIxNQorIzogZ2l0LmM6MjI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHByZWZpeCBnaXZlbiBmb3IgLS1zdXBlci1wcmVmaXhcbiIKIG1zZ3N0ciAiY2jGsGEgxJHGsGEgcmEgdGnhu4FuIHThu5EgY2hvIC0tc3VwZXItcHJlZml4XG4iCiAKLSM6IGdpdC5jOjIzNworIzogZ2l0LmM6MjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIi1jIGV4cGVjdHMgYSBjb25maWd1cmF0aW9uIHN0cmluZ1xuIgogbXNnc3RyICItYyBj4bqnbiBt4buZdCBjaHXhu5dpIGPhuqV1IGjDrG5oXG4iCiAKLSM6IGdpdC5jOjI3NQorIzogZ2l0LmM6Mjg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLUNcbiIKIG1zZ3N0ciAiY2jGsGEgxJHGsGEgcmEgdGjGsCBt4bulYyBjaG8gLUNcbiIKIAotIzogZ2l0LmM6MzAwCisjOiBnaXQuYzozMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvcHRpb246ICVzXG4iCiBtc2dzdHIgImtow7RuZyBoaeG7g3UgdMO5eSBjaOG7jW46ICVzXG4iCiAKLSM6IGdpdC5jOjcxOQorIzogZ2l0LmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIGV4cGFuZGluZyBhbGlhcyAnJXMnOiAnJXMnIgorbXNnc3RyICJ0cm9uZyBraGkgdHJp4buDbiBraGFpIGLDrSBkYW5oIOKAnCVz4oCdOiDigJwlc+KAnSIKKworIzogZ2l0LmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbGlhcyAnJXMnIGNoYW5nZXMgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIllvdSBjYW4gdXNlICchZ2l0JyBpbiB0aGUgYWxpYXMgdG8gZG8gdGhpcyIKK21zZ3N0ciAiIgorImLDrSBkYW5oIOKAnCVz4oCdIHRoYXkgxJHhu5VpIGJp4bq/biBtw7RpIHRyxrDhu51uZy5cbiIKKyJC4bqhbiBjw7MgdGjhu4Mgc+G7rSBk4bulbmcg4oCcIWdpdOKAnSB0cm9uZyDEkeG6t3QgYsOtIGRhbmggxJHhu4MgbMOgbSB2aeG7h2MgbsOgeSIKKworIzogZ2l0LmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGFsaWFzIGZvciAlcyIKK21zZ3N0ciAibMOgbSB0cuG7kW5nIGLDrSBkYW5oIGNobyAlcyIKKworIzogZ2l0LmM6Mzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlY3Vyc2l2ZSBhbGlhczogJXMiCittc2dzdHIgIsSR4buHIHF1eSBjw6FjIGLDrSBkYW5oOiAlcyIKKworIzogZ2l0LmM6NDU5Cittc2dpZCAid3JpdGUgZmFpbHVyZSBvbiBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgImzhu5dpIGdoaSBuZ2hpw6ptIHRyb25nIHRyw6puIMSR4bqndSByYSB0acOqdSBjaHXhuqluIgorCisjOiBnaXQuYzo0NjEKK21zZ2lkICJ1bmtub3duIHdyaXRlIGZhaWx1cmUgb24gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICJs4buXaSBuZ2hpw6ptIHRy4buNbmcgY2jGsGEgYmnhur90IGtoaSBnaGkgcmEgxJHhuqd1IHJhIHRpw6p1IGNodeG6qW4iCisKKyM6IGdpdC5jOjQ2MworbXNnaWQgImNsb3NlIGZhaWxlZCBvbiBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSDEkcOzbmcgxJHhuqd1IHJhIHRpw6p1IGNodeG6qW4iCisKKyM6IGdpdC5jOjc5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJhbGlhcyBsb29wIGRldGVjdGVkOiBleHBhbnNpb24gb2YgJyVzJyBkb2VzIG5vdCB0ZXJtaW5hdGU6JXMiCiBtc2dzdHIgIiIKICJkw7IgdMOsbSB0aOG6pXkgY8OhYyBiw60gZGFuaCBxdeG6qW4gdHLDsm46IGJp4buDdSB0aOG7qWMgY+G7p2Eg4oCcJXPigJ0ga2jDtG5nIGPDsyDEkWnhu4NtIGvhur90OiVzIgogCi0jOiBnaXQuYzo4MDIKKyM6IGdpdC5jOjg0MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgaGFuZGxlICVzIGFzIGEgYnVpbHRpbiIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHjhu60gbMO9ICVzIG5oxrAgbMOgIG3hu5l0IHBo4bqnbiBi4buVIHN1bmciCisKKyM6IGdpdC5jOjg1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXNhZ2U6ICVzXG4iCisiXG4iCittc2dzdHIgIiIKKyJjw6FjaCBkw7luZzogJXNcbiIKKyJcbiIKKworIzogZ2l0LmM6ODc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGFuc2lvbiBvZiBhbGlhcyAnJXMnIGZhaWxlZDsgJyVzJyBpcyBub3QgYSBnaXQgY29tbWFuZFxuIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkga2hhaSB0cmnhu4NuIGLDrSBkYW5oIOKAnCVz4oCdOyDigJwlc+KAnSBraMO0bmcgcGjhuqNpIGzDoCBs4buHbmggZ2l0XG4iCiAKLSM6IGdpdC5jOjgxNAorIzogZ2l0LmM6ODg4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBydW4gY29tbWFuZCAnJXMnOiAlc1xuIgogbXNnc3RyICJn4bq3cCBs4buXaSBraGkgY2jhuqF5IGzhu4duaCDigJwlc+KAnTogJXNcbiIKIAotIzogaHR0cC5jOjM3NAorIzogaHR0cC5jOjM3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJuZWdhdGl2ZSB2YWx1ZSBmb3IgaHR0cC5wb3N0YnVmZmVyOyBkZWZhdWx0aW5nIHRvICVkIgogbXNnc3RyICJnacOhIHRy4buLIMOibSBjaG8gaHR0cC5wb3N0YnVmZmVyOyDEkeG6t3QgdGjDoG5oIG3hurdjIMSR4buLbmggbMOgICVkIgogCi0jOiBodHRwLmM6Mzk1CisjOiBodHRwLmM6Mzk5CiBtc2dpZCAiRGVsZWdhdGlvbiBjb250cm9sIGlzIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy4yMi4wIgogbXNnc3RyICLEkGnhu4F1IGtoaeG7g24gZ2lhbyBxdXnhu4FuIGtow7RuZyDEkcaw4bujYyBo4buXIHRy4bujIHbhu5tpIGNVUkwgPCA3LjIyLjAiCiAKLSM6IGh0dHAuYzo0MDQKKyM6IGh0dHAuYzo0MDgKIG1zZ2lkICJQdWJsaWMga2V5IHBpbm5pbmcgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjQ0LjAiCiBtc2dzdHIgIkNo4buRdCBraMOzYSBjw7RuZyBraMO0bmcgxJHGsOG7o2MgaOG7lyB0cuG7oyB24bubaSBjVVJMIDwgNy40NC4wIgogCi0jOiBodHRwLmM6ODM3CisjOiBodHRwLmM6ODc2CiBtc2dpZCAiQ1VSTFNTTE9QVF9OT19SRVZPS0Ugbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjQ0LjAiCiBtc2dzdHIgIkNVUkxTU0xPUFRfTk9fUkVWT0tFIGtow7RuZyDEkcaw4bujYyBo4buXIHRy4bujIHbhu5tpIGNVUkwgPCA3LjQ0LjAiCiAKLSM6IGh0dHAuYzo5MTAKKyM6IGh0dHAuYzo5NDkKIG1zZ2lkICJQcm90b2NvbCByZXN0cmljdGlvbnMgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjE5LjQiCiBtc2dzdHIgIkPDoWMgaOG6oW4gY2jhur8gZ2lhbyB0aOG7qWMga2jDtG5nIMSRxrDhu6NjIGjhu5cgdHLhu6MgduG7m2kgY1VSTCA8IDcuMTkuNCIKIAotIzogaHR0cC5jOjEwNDYKKyM6IGh0dHAuYzoxMDg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuc3VwcG9ydGVkIFNTTCBiYWNrZW5kICclcycuIFN1cHBvcnRlZCBTU0wgYmFja2VuZHM6IgogbXNnc3RyICIiCiAiS2jDtG5nIGjhu5cgdHLhu6Mg4bupbmcgZOG7pW5nIFNTTCBjaOG6oXkgcGjDrWEgc2F1IOKAnCVz4oCdLiBI4buXIHRy4bujIOG7qW5nIGThu6VuZyBTU0wgY2jhuqF5IHBow61hICIKICJzYXU6IgogCi0jOiBodHRwLmM6MTA1MworIzogaHR0cC5jOjEwOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldCBTU0wgYmFja2VuZCB0byAnJXMnOiBjVVJMIHdhcyBidWlsdCB3aXRob3V0IFNTTCBiYWNrZW5kcyIKIG1zZ3N0ciAiIgogIktow7RuZyB0aOG7gyDEkeG6t3Qg4bupbmcgZOG7pW5nIGNo4bqheSBTU0wgcGjDrWEgc2F1IOKAnCVz4oCdOiBjVVJMIMSRxrDhu6NjIGJpw6puIGThu4tjaCBraMO0bmcgY8OzICIKICJz4buxIGjhu5cgdHLhu6Mg4bupbmcgZOG7pW5nIGNo4bqheSBwaMOtYSBzYXUgU1NMIgogCi0jOiBodHRwLmM6MTA1NworIzogaHR0cC5jOjEwOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldCBTU0wgYmFja2VuZCB0byAnJXMnOiBhbHJlYWR5IHNldCIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIMSR4bq3dCDhu6luZyBk4bulbmcgY2jhuqF5IHNhdSBTU0wgY2hvIOKAnCVz4oCdOiDEkcOjIMSR4bq3dCBy4buTaSIKIAotIzogaHR0cC5jOjE5MjEKKyM6IGh0dHAuYzoxOTY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ1bmFibGUgdG8gdXBkYXRlIHVybCBiYXNlIGZyb20gcmVkaXJlY3Rpb246XG4iCkBAIC0xODU1NywzOSArMjIzMTMsMTgwIEBACiAiICAgICAgaOG7j2kgY2hvOiAlc1xuIgogIiBjaHV54buDbiBoxrDhu5tuZzogJXMiCiAKLSM6IHJlbW90ZS1jdXJsLmM6NDAxCisjOiByZW1vdGUtY3VybC5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHF1b3RpbmcgaW4gcHVzaC1vcHRpb24gdmFsdWU6ICclcyciCittc2dzdHIgInNhaSB0csOtY2ggZOG6q24gdHJvbmcgZ2nDoSB0cuG7iyBwdXNoLW9wdGlvbiA64oCcJXPigJ0iCisKKyM6IHJlbW90ZS1jdXJsLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzaW5mby9yZWZzIG5vdCB2YWxpZDogaXMgdGhpcyBhIGdpdCByZXBvc2l0b3J5PyIKK21zZ3N0ciAiJXNpbmZvL3JlZnMga2jDtG5nIGjhu6NwIGzhu4c6IMSRw6J5IGPDsyBwaOG6o2kgbMOgIG3hu5l0IGtobyBnaXQ/IgorCisjOiByZW1vdGUtY3VybC5jOjM2NAorbXNnaWQgImludmFsaWQgc2VydmVyIHJlc3BvbnNlOyBleHBlY3RlZCBzZXJ2aWNlLCBnb3QgZmx1c2ggcGFja2V0IgorbXNnc3RyICIiCisixJHDoXAg4bupbmcgdOG7qyBtw6F5IHBo4bulYyB24bulIGtow7RuZyBo4bujcCBs4buHOyBj4bqnbiBk4buLY2ggduG7pSwgbmjGsG5nIGzhuqFpIG5o4bqtbiDEkcaw4bujYyBnw7NpICIKKyJmbHVzaCIKKworIzogcmVtb3RlLWN1cmwuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzZXJ2ZXIgcmVzcG9uc2U7IGdvdCAnJXMnIgorbXNnc3RyICJ0cuG6oyB24buBIGPhu6dhIG3DoXkgcGjhu6VjIHbhu6Uga2jDtG5nIGjhu6NwIGzhu4c7IG5o4bqtbiDEkcaw4bujYyAlcyIKKworIzogcmVtb3RlLWN1cmwuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVwb3NpdG9yeSAnJXMnIG5vdCBmb3VuZCIKK21zZ3N0ciAia2jDtG5nIHTDrG0gdGjhuqV5IGtobyDigJwlc+KAnSIKKworIzogcmVtb3RlLWN1cmwuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpb24gZmFpbGVkIGZvciAnJXMnIgorbXNnc3RyICJYw6FjIHRo4buxYyBn4bq3cCBs4buXaSBjaG8g4oCcJXPigJ0iCisKKyM6IHJlbW90ZS1jdXJsLmM6NDYzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgJyVzJzogJXMiCittc2dzdHIgImtow7RuZyB0aOG7gyB0cnV5IGPhuq1wIOKAnCVz4oCdOiAlcyIKKworIzogcmVtb3RlLWN1cmwuYzo0NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVkaXJlY3RpbmcgdG8gJXMiCiBtc2dzdHIgImNodXnhu4NuIGjGsOG7m25nIMSR4bq/biAlcyIKIAotIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6NjAKKyM6IHJlbW90ZS1jdXJsLmM6NTkzCittc2dpZCAic2hvdWxkbid0IGhhdmUgRU9GIHdoZW4gbm90IGdlbnRsZSBvbiBFT0YiCittc2dzdHIgImtow7RuZyBuw6puIGPDsyBFT0Yga2hpIGtow7RuZyBnZW50bGUgdHLDqm4gRU9GIgorCisjOiByZW1vdGUtY3VybC5jOjY3MworbXNnaWQgInVuYWJsZSB0byByZXdpbmQgcnBjIHBvc3QgZGF0YSAtIHRyeSBpbmNyZWFzaW5nIGh0dHAucG9zdEJ1ZmZlciIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHR1YSBs4bqhaSBk4buvIGxp4buHdSBwb3N0IHJwYyAtIHRo4butIHTEg25nIGh0dHAucG9zdEJ1ZmZlciIKKworIzogcmVtb3RlLWN1cmwuYzo3MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUlBDIGZhaWxlZDsgJXMiCittc2dzdHIgIlJQQyBn4bq3cCBs4buXaTsgJXMiCisKKyM6IHJlbW90ZS1jdXJsLmM6NzczCittc2dpZCAiY2Fubm90IGhhbmRsZSBwdXNoZXMgdGhpcyBiaWciCittc2dzdHIgImtow7RuZyB0aOG7gyB44butIGzDvSDEkeG6qXkgY8OhaSBs4bubbiBuw6B5IgorCisjOiByZW1vdGUtY3VybC5jOjg4OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGRlZmxhdGUgZXJyb3IgJWQiCittc2dzdHIgImtow7RuZyB0aOG7gyBnaeG6o2kgbsOpbiB5w6p1IGPhuqd1OyBjw7MgbOG7l2kga2hpIGdp4bqjaSBuw6luIGPhu6dhIHpsaWIgJWQiCisKKyM6IHJlbW90ZS1jdXJsLmM6ODkyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkZWZsYXRlIHJlcXVlc3Q7IHpsaWIgZW5kIGVycm9yICVkIgorbXNnc3RyICJraMO0bmcgdGjhu4MgZ2nhuqNpIG7DqW4gecOqdSBj4bqndTsgY8OzIGzhu5dpIOG7nyBjdeG7kWkgJWQiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTAyMworbXNnaWQgImR1bWIgaHR0cCB0cmFuc3BvcnQgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IGNhcGFiaWxpdGllcyIKK21zZ3N0ciAixJHhu5UgduG6rW4gY2h1eeG7g24gaHR0cCBraMO0bmcgaOG7lyB0cuG7oyBraOG6oyBuxINuZyBuw7RuZyIKKworIzogcmVtb3RlLWN1cmwuYzoxMDM4Cittc2dpZCAiZmV0Y2ggZmFpbGVkLiIKK21zZ3N0ciAibOG6pXkgduG7gSBn4bq3cCBs4buXaS4iCisKKyM6IHJlbW90ZS1jdXJsLmM6MTA4NgorbXNnaWQgImNhbm5vdCBmZXRjaCBieSBzaGExIG92ZXIgc21hcnQgaHR0cCIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHbhu4EgYuG6sW5nIHNoYTEgdGjDtG5nIHF1YSBzbWFydCBodHRwIgorCisjOiByZW1vdGUtY3VybC5jOjExMzAgcmVtb3RlLWN1cmwuYzoxMTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInByb3RvY29sIGVycm9yOiBleHBlY3RlZCBzaGEvcmVmLCBnb3QgJyVzJyIKK21zZ3N0ciAibOG7l2kgZ2lhbyB0aOG7qWM6IGPhuqduIHNoYS9yZWYsIG5oxrBuZyBs4bqhaSBuaOG6rW4gxJHGsOG7o2Mg4oCcJXPigJ0iCisKKyM6IHJlbW90ZS1jdXJsLmM6MTE0OCByZW1vdGUtY3VybC5jOjEyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaHR0cCB0cmFuc3BvcnQgZG9lcyBub3Qgc3VwcG9ydCAlcyIKK21zZ3N0ciAiduG6rW4gY2h1eeG7g24gaHR0cCBraMO0bmcgaOG7lyB0cuG7oyAlcyIKKworIzogcmVtb3RlLWN1cmwuYzoxMTg0Cittc2dpZCAiZ2l0LWh0dHAtcHVzaCBmYWlsZWQiCittc2dzdHIgImdpdC1odHRwLXB1c2ggZ+G6t3AgbOG7l2kiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTM2OQorbXNnaWQgInJlbW90ZS1jdXJsOiB1c2FnZTogZ2l0IHJlbW90ZS1jdXJsIDxyZW1vdGU+IFs8dXJsPl0iCittc2dzdHIgInJlbW90ZS1jdXJsOiB1c2FnZTogZ2l0IHJlbW90ZS1jdXJsIDxtw6F5IGNo4bunPiBbPHVybD5dIgorCisjOiByZW1vdGUtY3VybC5jOjE0MDEKK21zZ2lkICJyZW1vdGUtY3VybDogZXJyb3IgcmVhZGluZyBjb21tYW5kIHN0cmVhbSBmcm9tIGdpdCIKK21zZ3N0ciAicmVtb3RlLWN1cmw6IGfhurdwIGzhu5dpIGtoaSDEkeG7jWMgbHXhu5NuZyBk4buvIGxp4buHdSBs4buHbmggdOG7qyBnaXQiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQwOAorbXNnaWQgInJlbW90ZS1jdXJsOiBmZXRjaCBhdHRlbXB0ZWQgd2l0aG91dCBhIGxvY2FsIHJlcG8iCittc2dzdHIgInJlbW90ZS1jdXJsOiDEkcOjIGPhu5EgZ+G6r25nIGZldGNoIG3DoCBraMO0bmcgY8OzIGtobyBu4buZaSBi4buZIgorCisjOiByZW1vdGUtY3VybC5jOjE0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlLWN1cmw6IHVua25vd24gY29tbWFuZCAnJXMnIGZyb20gZ2l0IgorbXNnc3RyICJyZW1vdGUtY3VybDoga2jDtG5nIGhp4buDdSBs4buHbmgg4oCcJXPigJ0gdOG7qyBnaXQiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjg1CiBtc2dpZCAiYXJncyIKIG1zZ3N0ciAiY8OhY190aGFtX3Phu5EiCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjYxCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo4NgogbXNnaWQgIm9iamVjdCBmaWx0ZXJpbmciCiBtc2dzdHIgImzhu41jIMSR4buRaSB0xrDhu6NuZyIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjE1NAorIzogcGFyc2Utb3B0aW9ucy5oOjE4MwogbXNnaWQgImV4cGlyeS1kYXRlIgogbXNnc3RyICJuZ8OgeSBo4bq/dCBo4bqhbiIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjE2OQorIzogcGFyc2Utb3B0aW9ucy5oOjE5NwogbXNnaWQgIm5vLW9wIChiYWNrd2FyZCBjb21wYXRpYmlsaXR5KSIKIG1zZ3N0ciAibm8tb3AgKHTGsMahbmcgdGjDrWNoIG5nxrDhu6NjKSIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjI2MQorIzogcGFyc2Utb3B0aW9ucy5oOjMwOQogbXNnaWQgImJlIG1vcmUgdmVyYm9zZSIKIG1zZ3N0ciAiY2hpIHRp4bq/dCBoxqFuIG7hu69hIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MjYzCisjOiBwYXJzZS1vcHRpb25zLmg6MzExCiBtc2dpZCAiYmUgbW9yZSBxdWlldCIKIG1zZ3N0ciAiaW0gbOG6t25nIGjGoW4gbuG7r2EiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoyNjkKKyM6IHBhcnNlLW9wdGlvbnMuaDozMTcKIG1zZ2lkICJ1c2UgPG4+IGRpZ2l0cyB0byBkaXNwbGF5IFNIQS0xcyIKIG1zZ3N0ciAic+G7rSBk4bulbmcgPG4+IGNo4buvIHPhu5EgxJHhu4MgaGnhu4NuIHRo4buLIFNIQS0xcyIKIAorIzogcGFyc2Utb3B0aW9ucy5oOjMzNgorbXNnaWQgImhvdyB0byBzdHJpcCBzcGFjZXMgYW5kICNjb21tZW50cyBmcm9tIG1lc3NhZ2UiCittc2dzdHIgImzDoG0gdGjhur8gbsOgbyDEkeG7gyBj4bqvdCBi4buPIGtob+G6o25nIHRy4bqvbmcgdsOgICNnaGljaMO6IHThu6sgbeG6qXUgdGluIG5o4bqvbiIKKworIzogcGFyc2Utb3B0aW9ucy5oOjMzNworbXNnaWQgInJlYWQgcGF0aHNwZWMgZnJvbSBmaWxlIgorbXNnc3RyICLEkeG7jWMgxJHhurdjIHThuqMgxJHGsOG7nW5nIGThuqtuIHThu6sgdOG6rXAgdGluIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzM4Cittc2dpZCAiIgorIndpdGggLS1wYXRoc3BlYy1mcm9tLWZpbGUsIHBhdGhzcGVjIGVsZW1lbnRzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgorbXNnc3RyICIiCisiduG7m2kgLS1wYXRoc3BlYy1mcm9tLWZpbGUsIGPDoWMgcGjhuqduIHThu60gxJHhurdjIHThuqMgxJHGsOG7nW5nIGThuqtuIGLhu4sgbmfEg24gY8OhY2ggYuG7n2kga8O9ICIKKyJ04buxIE5VTEwiCisKKyM6IHJlZi1maWx0ZXIuaDoxMDEKK21zZ2lkICJrZXkiCittc2dzdHIgImtow7NhIgorCisjOiByZWYtZmlsdGVyLmg6MTAxCittc2dpZCAiZmllbGQgbmFtZSB0byBzb3J0IG9uIgorbXNnc3RyICJ0w6puIHRyxrDhu51uZyBj4bqnbiBz4bqvcCB44bq/cCIKKworIzogcmVyZXJlLmg6NDQKK21zZ2lkICJ1cGRhdGUgdGhlIGluZGV4IHdpdGggcmV1c2VkIGNvbmZsaWN0IHJlc29sdXRpb24gaWYgcG9zc2libGUiCittc2dzdHIgImPhuq1wIG5o4bqtdCBi4bqjbmcgbeG7pWMgbOG7pWMgduG7m2kgcGjDom4gZ2nhuqNpIHh1bmcgxJHhu5l0IGTDuW5nIGzhuqFpIG7hur91IMSRxrDhu6NjIgorCisjOiB3dC1zdGF0dXMuaDo2NworbXNnaWQgIkhFQUQgZGV0YWNoZWQgYXQgIgorbXNnc3RyICJIRUFEIMSRxrDhu6NjIHTDoWNoIHLhu51pIHThuqFpICIKKworIzogd3Qtc3RhdHVzLmg6NjgKK21zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgorbXNnc3RyICJIRUFEIMSRxrDhu6NjIHTDoWNoIHLhu51pIHThu6sgIgorCiAjOiBjb21tYW5kLWxpc3QuaDo1MAogbXNnaWQgIkFkZCBmaWxlIGNvbnRlbnRzIHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAiVGjDqm0gbuG7mWkgZHVuZyB04bqtcCB0aW4gdsOgbyBi4bqjbmcgbeG7pWMgbOG7pWMiCkBAIC0xODc0Myw4ICsyMjY0MCw4IEBACiAjOiBjb21tYW5kLWxpc3QuaDo4NgogbXNnaWQgIlNob3cgY2hhbmdlcyBiZXR3ZWVuIGNvbW1pdHMsIGNvbW1pdCBhbmQgd29ya2luZyB0cmVlLCBldGMiCiBtc2dzdHIgIiIKLSJYZW0gY8OhYyB0aGF5IMSR4buVaSBnaeG7r2Egbmjhu69uZyBs4bqnbiBjaHV54buDbiBnaWFvLCBnaeG7r2EgbeG7mXQgbOG6p24gY2h1eeG7g24gZ2lhbyB2w6AgY8OieSAiCi0ibMOgbSB2aeG7h2MsIHYudi4uIgorIkhp4buDbiB0aOG7iyBjw6FjIHRoYXkgxJHhu5VpIGdp4buvYSBuaOG7r25nIGzhuqduIGNodXnhu4NuIGdpYW8sIGdp4buvYSBt4buZdCBs4bqnbiBjaHV54buDbiBnaWFvICIKKyJ2w6AgY8OieSBsw6BtIHZp4buHYywgdi52Li4iCiAKICM6IGNvbW1hbmQtbGlzdC5oOjg3CiBtc2dpZCAiQ29tcGFyZXMgZmlsZXMgaW4gdGhlIHdvcmtpbmcgdHJlZSBhbmQgdGhlIGluZGV4IgpAQCAtMTg4NTYsOCArMjI3NTMsOCBAQAogbXNnc3RyICJEdXnhu4d0IG5nYXkga2hvIGzDoG0gdmnhu4djIGPhu6dhIGLhuqFuIHRyb25nIGdpdHdlYiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTEzCi1tc2dpZCAiYWRkIG9yIHBhcnNlIHN0cnVjdHVyZWQgaW5mb3JtYXRpb24gaW4gY29tbWl0IG1lc3NhZ2VzIgotbXNnc3RyICJ0aMOqbSBoYXkgcGjDom4gdMOtY2ggdGjDtG5nIHRpbiBj4bqldSB0csO6YyB0cm9uZyBnaGkgY2jDuiBs4bqnbiBjaHV54buDbiBnaWFvIgorbXNnaWQgIkFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKK21zZ3N0ciAiVGjDqm0gaGF5IHBow6JuIHTDrWNoIHRow7RuZyB0aW4gY+G6pXUgdHLDumMgdHJvbmcgZ2hpIGNow7ogbOG6p24gY2h1eeG7g24gZ2lhbyIKIAogIzogY29tbWFuZC1saXN0Lmg6MTE0CiBtc2dpZCAiVGhlIEdpdCByZXBvc2l0b3J5IGJyb3dzZXIiCkBAIC0xODkzOSw3ICsyMjgzNiw3IEBACiAKICM6IGNvbW1hbmQtbGlzdC5oOjEzMwogbXNnaWQgIkFkZCBvciBpbnNwZWN0IG9iamVjdCBub3RlcyIKLW1zZ3N0ciAidGjDqm0gaG/hurdjIMSRaeG7gXUgdHJhIMSR4buRaSB0xrDhu6NuZyBnaGkgY2jDuiIKK21zZ3N0ciAiVGjDqm0gaG/hurdjIMSRaeG7gXUgdHJhIMSR4buRaSB0xrDhu6NuZyBnaGkgY2jDuiIKIAogIzogY29tbWFuZC1saXN0Lmg6MTM0CiBtc2dpZCAiSW1wb3J0IGZyb20gYW5kIHN1Ym1pdCB0byBQZXJmb3JjZSByZXBvc2l0b3JpZXMiCkBAIC0xOTAzMSwyMjAgKzIyOTI4LDIzMiBAQAogbXNnc3RyICLEkOG6t3QgbOG6oWkgSEVBRCBoaeG7h24gaMOgbmggdGjDoG5oIHRy4bqhbmcgdGjDoWkgxJHDoyBjaG8iCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE1NgorbXNnaWQgIlJlc3RvcmUgd29ya2luZyB0cmVlIGZpbGVzIgorbXNnc3RyICJIb8OgbiBuZ3V5w6puIGPDoWMgdOG6rXAgdGluIGPDonkgbMOgbSB2aeG7h2MiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE1NwogbXNnaWQgIlJldmVydCBzb21lIGV4aXN0aW5nIGNvbW1pdHMiCiBtc2dzdHIgIkhvw6BuIGzhuqFpIG3hu5l0IHPhu5EgbOG6p24gY2h1eeG7g24gZ2lhbyBz4bq1biBjw7MiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE1NworIzogY29tbWFuZC1saXN0Lmg6MTU4CiBtc2dpZCAiTGlzdHMgY29tbWl0IG9iamVjdHMgaW4gcmV2ZXJzZSBjaHJvbm9sb2dpY2FsIG9yZGVyIgogbXNnc3RyICJMaeG7h3Qga8OqIGPDoWMgxJHhu5FpIHTGsOG7o25nIGNodXnhu4NuIGdpYW8gdGhlbyB0aOG7qSB04buxIHTDtHDDtCDEkeG6o28gbmfGsOG7o2MiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE1OAorIzogY29tbWFuZC1saXN0Lmg6MTU5CiBtc2dpZCAiUGljayBvdXQgYW5kIG1hc3NhZ2UgcGFyYW1ldGVycyIKIG1zZ3N0ciAiQ+G6rXkgcmEgdsOgIHjhu60gbMO9IGPDoWMgdGhhbSBz4buRIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNTkKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MAogbXNnaWQgIlJlbW92ZSBmaWxlcyBmcm9tIHRoZSB3b3JraW5nIHRyZWUgYW5kIGZyb20gdGhlIGluZGV4IgogbXNnc3RyICJH4buhIGLhu48gY8OhYyB04bqtcCB0aW4gdOG7qyBjw6J5IGzDoG0gdmnhu4djIHbDoCB04burIGLhuqNuZyBt4bulYyBs4bulYyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTYwCisjOiBjb21tYW5kLWxpc3QuaDoxNjEKIG1zZ2lkICJTZW5kIGEgY29sbGVjdGlvbiBvZiBwYXRjaGVzIGFzIGVtYWlscyIKIG1zZ3N0ciAiR+G7rWkgbeG7mXQgdOG6rXAgaOG7o3AgY+G7p2EgY8OhYyBtaeG6v25nIHbDoSDhu58gZOG6oW5nIHRoxrAgxJFp4buHbiB04butIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjEKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MgogbXNnaWQgIlB1c2ggb2JqZWN0cyBvdmVyIEdpdCBwcm90b2NvbCB0byBhbm90aGVyIHJlcG9zaXRvcnkiCiBtc2dzdHIgIsSQ4bqpeSBjw6FjIMSR4buRaSB0xrDhu6NuZyBsw6puIHRow7RuZyBxdWEgZ2lhbyB0aOG7qWMgR2l0IMSR4bq/biBraG8gY2jhu6lhIGtow6FjIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjIKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MwogbXNnaWQgIlJlc3RyaWN0ZWQgbG9naW4gc2hlbGwgZm9yIEdpdC1vbmx5IFNTSCBhY2Nlc3MiCiBtc2dzdHIgIkjhu4cgduG7jyDEkcSDbmcgbmjhuq1wIGPDsyBo4bqhbiBjaOG6vyBjaG8gdHJ1eSBj4bqtcCBTU0ggY2jhu4ktR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjMKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NAogbXNnaWQgIlN1bW1hcml6ZSAnZ2l0IGxvZycgb3V0cHV0IgogbXNnc3RyICJL4bq/dCB4deG6pXQg4oCcZ2l0IGxvZ+KAnSBk4bqhbmcgdMOzbSB04bqvdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTY0CisjOiBjb21tYW5kLWxpc3QuaDoxNjUKIG1zZ2lkICJTaG93IHZhcmlvdXMgdHlwZXMgb2Ygb2JqZWN0cyIKIG1zZ3N0ciAiSGnhu4NuIHRo4buLIGPDoWMga2nhu4N1IGtow6FjIG5oYXUgY+G7p2EgY8OhYyDEkeG7kWkgdMaw4bujbmciCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NQorIzogY29tbWFuZC1saXN0Lmg6MTY2CiBtc2dpZCAiU2hvdyBicmFuY2hlcyBhbmQgdGhlaXIgY29tbWl0cyIKIG1zZ3N0ciAiSGnhu4NuIHRo4buLIG5o4buvbmcgbmjDoW5oIHbDoCBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8gY+G7p2EgY2jDum5nIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjYKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NwogbXNnaWQgIlNob3cgcGFja2VkIGFyY2hpdmUgaW5kZXgiCiBtc2dzdHIgIkhp4buDbiB0aOG7iyBjw6FjIG11YyBs4bulYyBraG8gbsOpbiDEkcOjIMSRw7NuZyBnw7NpIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjcKKyM6IGNvbW1hbmQtbGlzdC5oOjE2OAogbXNnaWQgIkxpc3QgcmVmZXJlbmNlcyBpbiBhIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgIkxp4buHdCBrw6ogY8OhYyB0aGFtIGNoaeG6v3UgdHJvbmcgbeG7mXQga2hvIG7hu5lpIGLhu5kiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2OAorIzogY29tbWFuZC1saXN0Lmg6MTY5CiBtc2dpZCAiR2l0J3MgaTE4biBzZXR1cCBjb2RlIGZvciBzaGVsbCBzY3JpcHRzIgogbXNnc3RyICJOw6MgY8OgaSDEkeG6t3QgcXXhu5FjIHThur8gaMOzYSBj4bunYSBHaXQgY2hvIHbEg24gbOG7h25oIGjhu4cgduG7jyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTY5CisjOiBjb21tYW5kLWxpc3QuaDoxNzAKIG1zZ2lkICJDb21tb24gR2l0IHNoZWxsIHNjcmlwdCBzZXR1cCBjb2RlIgogbXNnc3RyICJNw6MgY8OgaSDEkeG6t3QgdsSDbiBs4buHbmggaOG7hyB24buPIEdpdCBjaHVuZyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTcwCisjOiBjb21tYW5kLWxpc3QuaDoxNzEKK21zZ2lkICJJbml0aWFsaXplIGFuZCBtb2RpZnkgdGhlIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAiS2jhu59pIHThuqFvIHbDoCBz4butYSDEkeG7lWkgc3BhcnNlLWNoZWNrb3V0IgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzIKIG1zZ2lkICJTdGFzaCB0aGUgY2hhbmdlcyBpbiBhIGRpcnR5IHdvcmtpbmcgZGlyZWN0b3J5IGF3YXkiCiBtc2dzdHIgIlThuqFtIGPhuqV0IMSRaSBjw6FjIHRoYXkgxJHhu5VpIHRyb25nIG3hu5l0IHRoxrAgbeG7pWMgbMOgbSB2aeG7h2MgYuG6qW4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3MQorIzogY29tbWFuZC1saXN0Lmg6MTczCiBtc2dpZCAiQWRkIGZpbGUgY29udGVudHMgdG8gdGhlIHN0YWdpbmcgYXJlYSIKIG1zZ3N0ciAiVGjDqm0gbuG7mWkgZHVuZyB04bqtcCB0aW4gdsOgbyB2w7luZyBi4buHIHBow7NuZyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTcyCisjOiBjb21tYW5kLWxpc3QuaDoxNzQKIG1zZ2lkICJTaG93IHRoZSB3b3JraW5nIHRyZWUgc3RhdHVzIgogbXNnc3RyICJIaeG7g24gdGjhu4sgdHLhuqFuZyB0aMOhaSBjw6J5IGzDoG0gdmnhu4djIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzMKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NQogbXNnaWQgIlJlbW92ZSB1bm5lY2Vzc2FyeSB3aGl0ZXNwYWNlIgogbXNnc3RyICJYw7NhIGLhu48gY8OhYyBraG/huqNuZyB0cuG6r25nIGtow7RuZyBj4bqnbiB0aGnhur90IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzQKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NgogbXNnaWQgIkluaXRpYWxpemUsIHVwZGF0ZSBvciBpbnNwZWN0IHN1Ym1vZHVsZXMiCiBtc2dzdHIgIkto4bufaSB04bqhbywgY+G6rXAgbmjhuq10IGhheSDEkWnhu4F1IHRyYSBjw6FjIG3DtC3EkXVuLWNvbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc1CisjOiBjb21tYW5kLWxpc3QuaDoxNzcKIG1zZ2lkICJCaWRpcmVjdGlvbmFsIG9wZXJhdGlvbiBiZXR3ZWVuIGEgU3VidmVyc2lvbiByZXBvc2l0b3J5IGFuZCBHaXQiCiBtc2dzdHIgIlRoYW8gdMOhYyBoYWkgaMaw4bubbmcgZ2nhu68gaGFpIGtobyBTdWJ2ZXJzaW9uIHbDoCBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3NgorIzogY29tbWFuZC1saXN0Lmg6MTc4Cittc2dpZCAiU3dpdGNoIGJyYW5jaGVzIgorbXNnc3RyICJDw6FjIG5ow6FuaCBjaHV54buDbiIKKworIzogY29tbWFuZC1saXN0Lmg6MTc5CiBtc2dpZCAiUmVhZCwgbW9kaWZ5IGFuZCBkZWxldGUgc3ltYm9saWMgcmVmcyIKIG1zZ3N0ciAixJDhu41jLCBz4butYSB2w6AgeMOzYSB0aGFtIGNoaeG6v3UgbeG7gW0iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3NworIzogY29tbWFuZC1saXN0Lmg6MTgwCiBtc2dpZCAiQ3JlYXRlLCBsaXN0LCBkZWxldGUgb3IgdmVyaWZ5IGEgdGFnIG9iamVjdCBzaWduZWQgd2l0aCBHUEciCiBtc2dzdHIgIlThuqFvLCBsaeG7h3Qga8OqLCB4w7NhIGhheSB4w6FjIHRo4buxYyBt4buZdCDEkeG7kWkgdMaw4bujbmcgdGjhursgxJHGsOG7o2Mga8O9IGLhurFuZyBHUEciCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3OAorIzogY29tbWFuZC1saXN0Lmg6MTgxCiBtc2dpZCAiQ3JlYXRlcyBhIHRlbXBvcmFyeSBmaWxlIHdpdGggYSBibG9iJ3MgY29udGVudHMiCiBtc2dzdHIgIlThuqFvIG3hu5l0IHThuq1wIHRpbiB04bqhbSB24bubaSBu4buZaSBkdW5nIGPhu6dhIGJsb2IiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3OQorIzogY29tbWFuZC1saXN0Lmg6MTgyCiBtc2dpZCAiVW5wYWNrIG9iamVjdHMgZnJvbSBhIHBhY2tlZCBhcmNoaXZlIgogbXNnc3RyICJH4buhIGPDoWMgxJHhu5FpIHTGsOG7o25nIGto4buPaSBt4buZdCBraG8gbMawdSDEkcOjIMSRw7NuZyBnw7NpIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODAKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MwogbXNnaWQgIlJlZ2lzdGVyIGZpbGUgY29udGVudHMgaW4gdGhlIHdvcmtpbmcgdHJlZSB0byB0aGUgaW5kZXgiCiBtc2dzdHIgIsSQxINuZyBrw70gbuG7mWkgZHVuZyB04bqtcCB0aW4gdOG7qyBjw6J5IGzDoG0gdmnhu4djIMSR4bq/biBi4bqjbmcgbeG7pWMgbOG7pWMiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4MQorIzogY29tbWFuZC1saXN0Lmg6MTg0CiBtc2dpZCAiVXBkYXRlIHRoZSBvYmplY3QgbmFtZSBzdG9yZWQgaW4gYSByZWYgc2FmZWx5IgogbXNnc3RyICJD4bqtcCBuaOG6rXQgdMOqbiDEkeG7kWkgdMaw4bujbmcgxJHGsOG7o2MgbMawdSB0cm9uZyBt4buZdCB0aGFtIGNoaeG6v3UgbeG7mXQgY8OhY2ggYW4gdG/DoG4iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4MgorIzogY29tbWFuZC1saXN0Lmg6MTg1CiBtc2dpZCAiVXBkYXRlIGF1eGlsaWFyeSBpbmZvIGZpbGUgdG8gaGVscCBkdW1iIHNlcnZlcnMiCiBtc2dzdHIgIkPhuq1wIG5o4bqtdCB04bqtcCB0aW4gdGjDtG5nIHRpbiBwaOG7pSB0cuG7oyDEkeG7gyBnacO6cCDEkeG7oSBjw6FjIGThu4tjaCB24bulIGR1bWIiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4MworIzogY29tbWFuZC1saXN0Lmg6MTg2CiBtc2dpZCAiU2VuZCBhcmNoaXZlIGJhY2sgdG8gZ2l0LWFyY2hpdmUiCiBtc2dzdHIgIkfhu61pIHRy4bufIGzhuqFpIGtobyBsxrB1IMSR4bq/biBnaXQtYXJjaGl2ZSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg0CisjOiBjb21tYW5kLWxpc3QuaDoxODcKIG1zZ2lkICJTZW5kIG9iamVjdHMgcGFja2VkIGJhY2sgdG8gZ2l0LWZldGNoLXBhY2siCiBtc2dzdHIgIkfhu61pIHRy4bufIGzhuqFpIGPDoWMgxJHhu5FpIHTGsOG7o25nIMSRw6MgxJHDs25nIGfDs2kgY2hvIGdpdC1mZXRjaC1wYWNrIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODUKKyM6IGNvbW1hbmQtbGlzdC5oOjE4OAogbXNnaWQgIlNob3cgYSBHaXQgbG9naWNhbCB2YXJpYWJsZSIKIG1zZ3N0ciAiSGnhu4NuIHRo4buLIG3hu5l0IGJp4bq/biBHaXQgbHXhuq1uIGzDvSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg2CisjOiBjb21tYW5kLWxpc3QuaDoxODkKIG1zZ2lkICJDaGVjayB0aGUgR1BHIHNpZ25hdHVyZSBvZiBjb21taXRzIgogbXNnc3RyICJLaeG7g20gdHJhIGvDvSBs4bqnbiBjaHV54buDbiBnaWFvIGTDuW5nIEdQRyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg3CisjOiBjb21tYW5kLWxpc3QuaDoxOTAKIG1zZ2lkICJWYWxpZGF0ZSBwYWNrZWQgR2l0IGFyY2hpdmUgZmlsZXMiCiBtc2dzdHIgIktp4buDbSB0cmEgbOG6oWkgY8OhYyB04bqtcCB0aW4ga2hvIChsxrB1IHRy4buvLCBuw6luKSBHaXQgxJHDoyDEkcaw4bujYyDEkcOzbmcgZ8OzaSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg4CisjOiBjb21tYW5kLWxpc3QuaDoxOTEKIG1zZ2lkICJDaGVjayB0aGUgR1BHIHNpZ25hdHVyZSBvZiB0YWdzIgogbXNnc3RyICJLaeG7g20gdHJhIGNo4buvIGvDvSBHUEcgY+G7p2EgY8OhYyB0aOG6uyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTg5CisjOiBjb21tYW5kLWxpc3QuaDoxOTIKIG1zZ2lkICJHaXQgd2ViIGludGVyZmFjZSAod2ViIGZyb250ZW5kIHRvIEdpdCByZXBvc2l0b3JpZXMpIgogbXNnc3RyICJHaWFvIGRp4buHbiBHaXQgdHLDqm4gbuG7gW4gd2ViICjhu6luZyBk4bulbmcgd2ViIGNo4bqheSB0csOqbiBraG8gR2l0KSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTkwCisjOiBjb21tYW5kLWxpc3QuaDoxOTMKIG1zZ2lkICJTaG93IGxvZ3Mgd2l0aCBkaWZmZXJlbmNlIGVhY2ggY29tbWl0IGludHJvZHVjZXMiCiBtc2dzdHIgIkhp4buDbiB0aOG7iyBjw6FjIG5o4bqtdCBrw70gduG7m2kgdOG7q25nIGzhuqduIGNodXnhu4NuIGdpYW8ga2jDoWMgbmhhdSDEkcawYSByYSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTkxCisjOiBjb21tYW5kLWxpc3QuaDoxOTQKIG1zZ2lkICJNYW5hZ2UgbXVsdGlwbGUgd29ya2luZyB0cmVlcyIKIG1zZ3N0ciAiUXXhuqNuIGzDvSBuaGnhu4F1IGPDonkgbMOgbSB2aeG7h2MiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MgorIzogY29tbWFuZC1saXN0Lmg6MTk1CiBtc2dpZCAiQ3JlYXRlIGEgdHJlZSBvYmplY3QgZnJvbSB0aGUgY3VycmVudCBpbmRleCIKIG1zZ3N0ciAiVOG6oW8gbeG7mXQgxJHhu5FpIHTGsOG7o25nIGPDonkgdOG7qyDEkeG6p3UgdsOgbyB0acOqdSBjaHXhuqluIHN0ZGluIGhp4buHbiB04bqhaSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTkzCisjOiBjb21tYW5kLWxpc3QuaDoxOTYKIG1zZ2lkICJEZWZpbmluZyBhdHRyaWJ1dGVzIHBlciBwYXRoIgogbXNnc3RyICLEkOG7i25oIG5naMSpYSBjw6FjIHRodeG7mWMgdMOtbmggY2hvIG3hu5dpIMSRxrDhu51uZyBk4bqrbiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk0CisjOiBjb21tYW5kLWxpc3QuaDoxOTcKIG1zZ2lkICJHaXQgY29tbWFuZC1saW5lIGludGVyZmFjZSBhbmQgY29udmVudGlvbnMiCiBtc2dzdHIgIkdpYW8gZGnhu4duIGTDsm5nIGzhu4duaCBHaXQgdsOgIHF1eSDGsOG7m2MiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5NQorIzogY29tbWFuZC1saXN0Lmg6MTk4CiBtc2dpZCAiQSBHaXQgY29yZSB0dXRvcmlhbCBmb3IgZGV2ZWxvcGVycyIKIG1zZ3N0ciAiSMaw4bubbmcgZOG6q24gR2l0IGPGoSBi4bqjbiBjaG8gbmjDoCBwaMOhdCB0cmnhu4NuIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTYKKyM6IGNvbW1hbmQtbGlzdC5oOjE5OQogbXNnaWQgIkdpdCBmb3IgQ1ZTIHVzZXJzIgogbXNnc3RyICJHaXQgZMOgbmggY2hvIG5o4buvbmcgbmfGsOG7nWkgZMO5bmcgQ1ZTIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTcKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMAogbXNnaWQgIlR3ZWFraW5nIGRpZmYgb3V0cHV0IgogbXNnc3RyICJDaOG7iW5oIGvhur90IHh14bqldCBkaWZmIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTgKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMQogbXNnaWQgIkEgdXNlZnVsIG1pbmltdW0gc2V0IG9mIGNvbW1hbmRzIGZvciBFdmVyeWRheSBHaXQiCiBtc2dzdHIgIk3hu5l0IHThuq1wIGjhu6NwIGzhu4duaCBo4buvdSBk4bulbmcgdOG7kWkgdGhp4buDdSDEkeG7gyBkw7luZyBHaXQgaMOgbmcgbmfDoHkiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5OQorIzogY29tbWFuZC1saXN0Lmg6MjAyCiBtc2dpZCAiQSBHaXQgR2xvc3NhcnkiCiBtc2dzdHIgIlRodeG6rXQgbmfhu68gY2h1ecOqbiBtw7RuIEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAwCisjOiBjb21tYW5kLWxpc3QuaDoyMDMKIG1zZ2lkICJIb29rcyB1c2VkIGJ5IEdpdCIKIG1zZ3N0ciAiQ8OhYyBtw7NjIMSRxrDhu6NjIHPhu60gZOG7pW5nIGLhu59pIEdpdCIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAxCisjOiBjb21tYW5kLWxpc3QuaDoyMDQKIG1zZ2lkICJTcGVjaWZpZXMgaW50ZW50aW9uYWxseSB1bnRyYWNrZWQgZmlsZXMgdG8gaWdub3JlIgogbXNnc3RyICJDaOG7iSDEkeG7i25oIGPDoWMgdOG6rXAgdGluIGtow7RuZyBj4bqnbiB0aGVvIGTDtWkiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwMgorIzogY29tbWFuZC1saXN0Lmg6MjA1CiBtc2dpZCAiRGVmaW5pbmcgc3VibW9kdWxlIHByb3BlcnRpZXMiCiBtc2dzdHIgIsSQ4buLbmggbmdoxKlhIHRodeG7mWMgdMOtbmggbcO0LcSRdW4tY29uIgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDMKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNgogbXNnaWQgIkdpdCBuYW1lc3BhY2VzIgotbXNnc3RyICJraMO0bmcgZ2lhbiB0w6puIEdpdCIKK21zZ3N0ciAiS2jDtG5nIGdpYW4gdMOqbiBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwNAorIzogY29tbWFuZC1saXN0Lmg6MjA3CiBtc2dpZCAiR2l0IFJlcG9zaXRvcnkgTGF5b3V0IgogbXNnc3RyICJC4buRIGPhu6VjIGtobyBHaXQiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwNQorIzogY29tbWFuZC1saXN0Lmg6MjA4CiBtc2dpZCAiU3BlY2lmeWluZyByZXZpc2lvbnMgYW5kIHJhbmdlcyBmb3IgR2l0IgogbXNnc3RyICJDaOG7iSDEkeG7i25oIMSRaeG7g20geMOpdCBkdXnhu4d0IHbDoCB2w7luZyBjaG8gR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDYKKyM6IGNvbW1hbmQtbGlzdC5oOjIwOQorbXNnaWQgIk1vdW50aW5nIG9uZSByZXBvc2l0b3J5IGluc2lkZSBhbm90aGVyIgorbXNnc3RyICJH4bqvbiBt4buZdCBraG8gY2jhu6lhIHbDoG8gdHJvbmcgbeG7mXQgY8OhaSBraMOhYyIKKworIzogY29tbWFuZC1saXN0Lmg6MjEwCiBtc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0OiBwYXJ0IHR3byIKIG1zZ3N0ciAiSMaw4bubbmcgZOG6q24gY8OhY2ggZMO5bmcgR2l0OiBwaOG6p24gaGFpIgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDcKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMQogbXNnaWQgIkEgdHV0b3JpYWwgaW50cm9kdWN0aW9uIHRvIEdpdCIKIG1zZ3N0ciAiSMaw4bubbmcgZOG6q24gY8OhY2ggZMO5bmcgR2l0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDgKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMgogbXNnaWQgIkFuIG92ZXJ2aWV3IG9mIHJlY29tbWVuZGVkIHdvcmtmbG93cyB3aXRoIEdpdCIKLW1zZ3N0ciAiVOG7lW5nIHF1YW4gduG7gSBsdeG7k25nIGPDtG5nIHZp4buHYyBraHV54bq/biBuZ2jhu4sgbsOqbiBkw7luZyB24bubaSBHaXQuIgotCi0jOiByZXJlcmUuaDo0NAotbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKLW1zZ3N0ciAiY+G6rXAgbmjhuq10IGLhuqNuZyBt4bulYyBs4bulYyB24bubaSBwaMOibiBnaeG6o2kgeHVuZyDEkeG7mXQgZMO5bmcgbOG6oWkgbuG6v3UgxJHGsOG7o2MiCittc2dzdHIgIlThu5VuZyBxdWFuIHbhu4EgbHXhu5NuZyBjw7RuZyB2aeG7h2Mga2h1eeG6v24gbmdo4buLIG7Dqm4gZMO5bmcgduG7m2kgR2l0IgogCiAjOiBnaXQtYmlzZWN0LnNoOjU0CiBtc2dpZCAiWW91IG5lZWQgdG8gc3RhcnQgYnkgXCJnaXQgYmlzZWN0IHN0YXJ0XCIiCkBAIC0xOTI1NywxMzcgKzIzMTY2LDQ5IEBACiBtc2dpZCAiRG8geW91IHdhbnQgbWUgdG8gZG8gaXQgZm9yIHlvdSBbWS9uXT8gIgogbXNnc3RyICJC4bqhbiBjw7MgbXXhu5FuIHTDtGkgdGjhu7FjIGhp4buHbiDEkWnhu4F1IG7DoHkgY2hvIGLhuqFuIGtow7RuZyBbWS9uXT8gIgogCi0jOiBnaXQtYmlzZWN0LnNoOjEyMQotIywgc2gtZm9ybWF0Ci1tc2dpZCAidW5yZWNvZ25pc2VkIG9wdGlvbjogJyRhcmcnIgotbXNnc3RyICJraMO0bmcgY8O0bmcgbmjhuq1uIHTDuXkgY2jhu41uOiDigJwkYXJn4oCdIgotCi0jOiBnaXQtYmlzZWN0LnNoOjEyNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJyRhcmcnIGRvZXMgbm90IGFwcGVhciB0byBiZSBhIHZhbGlkIHJldmlzaW9uIgotbXNnc3RyICLigJ0kYXJn4oCdIGtow7RuZyBjw7MgduG6uyBuaMawIGzDoCBt4buZdCDEkWnhu4NtIHjDqXQgZHV54buHdCBo4bujcCBs4buHIgotCi0jOiBnaXQtYmlzZWN0LnNoOjE1NAotbXNnaWQgIkJhZCBIRUFEIC0gSSBuZWVkIGEgSEVBRCIKLW1zZ3N0ciAiSEVBRCBzYWkgLSBUw7RpIGPhuqduIG3hu5l0IEhFQUQiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTY3Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iQ2hlY2tpbmcgb3V0ICckc3RhcnRfaGVhZCcgZmFpbGVkLiBUcnkgJ2dpdCBiaXNlY3QgcmVzZXQgPHZhbGlkLWJyYW5jaD4nLiIKLW1zZ3N0ciAiIgotIlZp4buHYyBs4bqleSDigJwkc3RhcnRfaGVhZOKAnSByYSBn4bq3cCBs4buXaS4gSMOjeSB0aOG7rSBcImdpdCBiaXNlY3QgcmVzZXQgPG5ow6FuaF9o4bujcF9s4buHPiIKLSJcIi4iCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTc3Ci1tc2dpZCAid29uJ3QgYmlzZWN0IG9uIGNnLXNlZWsnZWQgdHJlZSIKLW1zZ3N0ciAic+G6vSBraMO0bmcgZGkgY2h1eeG7g24gbuG7rWEgYsaw4bubYyB0csOqbiBjw6J5IMSRxrDhu6NjIGNnLXNlZWsiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTgxCi1tc2dpZCAiQmFkIEhFQUQgLSBzdHJhbmdlIHN5bWJvbGljIHJlZiIKLW1zZ3N0ciAiSEVBRCBzYWkgLSB0aGFtIGNoaeG6v3UgbeG7gW0ga+G7syBs4bqhIgotCi0jOiBnaXQtYmlzZWN0LnNoOjIzMwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQmFkIGJpc2VjdF93cml0ZSBhcmd1bWVudDogJHN0YXRlIgotbXNnc3RyICLEkOG7kWkgc+G7kSBiaXNlY3Rfd3JpdGUgc2FpOiAkc3RhdGUiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MjQ2CisjOiBnaXQtYmlzZWN0LnNoOjEwMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQmFkIHJldiBpbnB1dDogJGFyZyIKIG1zZ3N0ciAixJDhuqd1IHbDoG8gcmV2IHNhaTogJGFyZyIKIAotIzogZ2l0LWJpc2VjdC5zaDoyNjUKKyM6IGdpdC1iaXNlY3Quc2g6MTIxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJCYWQgcmV2IGlucHV0OiAkYmlzZWN0ZWRfaGVhZCIKIG1zZ3N0ciAixJDhuqd1IHbDoG8gcmV2IHNhaTogJGJpc2VjdGVkX2hlYWQiCiAKLSM6IGdpdC1iaXNlY3Quc2g6Mjc0CisjOiBnaXQtYmlzZWN0LnNoOjEzMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQmFkIHJldiBpbnB1dDogJHJldiIKIG1zZ3N0ciAixJDhuqd1IHbDoG8gcmV2IHNhaTogJHJldiIKIAotIzogZ2l0LWJpc2VjdC5zaDoyODMKKyM6IGdpdC1iaXNlY3Quc2g6MTM5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInZ2l0IGJpc2VjdCAkVEVSTV9CQUQnIGNhbiB0YWtlIG9ubHkgb25lIGFyZ3VtZW50LiIKIG1zZ3N0ciAi4oCcZ2l0IGJpc2VjdCAkVEVSTV9CQUTigJ0gY8OzIHRo4buDIGzhuqV5IGNo4buJIG3hu5l0IMSR4buRaSBz4buRLiIKIAotIzogZ2l0LWJpc2VjdC5zaDozMDYKLSMsIHNoLWZvcm1hdAotbXNnaWQgIldhcm5pbmc6IGJpc2VjdGluZyBvbmx5IHdpdGggYSAkVEVSTV9CQUQgY29tbWl0LiIKLW1zZ3N0ciAiQ+G6o25oIGLDoW86IGNo4buJIHRo4buxYyBoaeG7h24gdmnhu4djIGJpc2VjdCB24bubaSBt4buZdCBs4bqnbiBjaHV54buDbiBnaWFvICRURVJNX0JBRC4iCi0KLSMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbWV0gYW5kIFtuXSBpbiB5b3VyCi0jLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0Ci0jLiBhdCB0aGlzIHBvaW50LgotIzogZ2l0LWJpc2VjdC5zaDozMTIKLW1zZ2lkICJBcmUgeW91IHN1cmUgW1kvbl0/ICIKLW1zZ3N0ciAiQuG6oW4gY8OzIGNo4bqvYyBjaOG6r24gY2jGsGEgW1kvbl0/ICIKLQotIzogZ2l0LWJpc2VjdC5zaDozMjQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJZb3UgbmVlZCB0byBnaXZlIG1lIGF0IGxlYXN0IG9uZSAkYmFkX3N5biBhbmQgb25lICRnb29kX3N5biByZXZpc2lvbi5cbiIKLSIoWW91IGNhbiB1c2UgXCJnaXQgYmlzZWN0ICRiYWRfc3luXCIgYW5kIFwiZ2l0IGJpc2VjdCAkZ29vZF9zeW5cIiBmb3IgdGhhdC4pIgotbXNnc3RyICIiCi0iQuG6oW4gcGjhuqNpIGNo4buJIGNobyB0w7RpIMOtdCBuaOG6pXQgbeG7mXQgxJFp4buDbSAkYmFkX3N5biB2w6AgbeG7mXQgJGdvb2Rfc3luLlxuIgotIihC4bqhbiBjw7MgdGjhu4Mgc+G7rSBk4bulbmcgXCJnaXQgYmlzZWN0ICRiYWRfc3luXCIgdsOgIFwiZ2l0IGJpc2VjdCAkZ29vZF9zeW5cIiBjaG8gIgotImPDoWkgxJHDsy4pIgotCi0jOiBnaXQtYmlzZWN0LnNoOjMyNwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgotIllvdSB0aGVuIG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJGdvb2Rfc3luIGFuZCBvbmUgJGJhZF9zeW4gcmV2aXNpb24uXG4iCi0iKFlvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGFuZCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgZm9yIHRoYXQuKSIKLW1zZ3N0ciAiIgotIkLhuqFuIGPhuqduIGLhuq90IMSR4bqndSBi4bqxbmcgbOG7h25oIFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgotIkLhuqFuIHNhdSDEkcOzIGPhuqduIHBo4bqjaSBjaOG7iSBjaG8gdMO0aSDDrXQgbmjhuqV0IG3hu5l0IMSRaeG7g20geMOpdCBkdXnhu4d0ICRnb29kX3N5biB2w6AgbeG7mXQgIgotIiRiYWRfc3luLlxuIgotIihC4bqhbiBjw7MgdGjhu4Mgc+G7rSBk4bulbmcgXCJnaXQgYmlzZWN0ICRiYWRfc3luXCIgdsOgIFwiZ2l0IGJpc2VjdCAkZ29vZF9zeW5cIiBjaG8gIgotImNow7puZy4pIgotCi0jOiBnaXQtYmlzZWN0LnNoOjM5OCBnaXQtYmlzZWN0LnNoOjUxMgotbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLiIKLW1zZ3N0ciAiQ2jDum5nIHTDtGkga2jDtG5nIGJpc2VjdC4iCi0KLSM6IGdpdC1iaXNlY3Quc2g6NDA1Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICInJGludmFsaWQnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIKLW1zZ3N0ciAi4oCdJGludmFsaWTigJ0ga2jDtG5nIHBo4bqjaSBsw6AgbOG6p24gY2h1eeG7g24gZ2lhbyBo4bujcCBs4buHIgotCi0jOiBnaXQtYmlzZWN0LnNoOjQxNAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIkNvdWxkIG5vdCBjaGVjayBvdXQgb3JpZ2luYWwgSEVBRCAnJGJyYW5jaCcuXG4iCi0iVHJ5ICdnaXQgYmlzZWN0IHJlc2V0IDxjb21taXQ+Jy4iCi1tc2dzdHIgIiIKLSJLaMO0bmcgdGjhu4MgY2hlY2stb3V0IEhFQUQgbmd1ecOqbiB0aOG7p3kgY+G7p2Eg4oCcJGJyYW5jaOKAnS5cbiIKLSJIw6N5IHRo4butIOKAnGdpdCBiaXNlY3QgcmVzZXQgPGzhuqduLWNodXnhu4NuLWdpYW8+4oCdLiIKLQotIzogZ2l0LWJpc2VjdC5zaDo0MjIKKyM6IGdpdC1iaXNlY3Quc2g6MjA5CiBtc2dpZCAiTm8gbG9nZmlsZSBnaXZlbiIKIG1zZ3N0ciAiQ2jGsGEgY2jhu4kgcmEgdOG6rXAgdGluIGdoaSBuaOG6rXQga8O9IgogCi0jOiBnaXQtYmlzZWN0LnNoOjQyMworIzogZ2l0LWJpc2VjdC5zaDoyMTAKICMsIHNoLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICRmaWxlIGZvciByZXBsYXlpbmciCiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgJGZpbGUgxJHhu4MgdGhhbyBkaeG7hW4gbOG6oWkiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDQ0CisjOiBnaXQtYmlzZWN0LnNoOjIzMgogbXNnaWQgIj8/IHdoYXQgYXJlIHlvdSB0YWxraW5nIGFib3V0PyIKIG1zZ3N0ciAiPz8gYuG6oW4gxJFhbmcgbsOzaSBnw6wgdGjhur8/IgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ1MworIzogZ2l0LWJpc2VjdC5zaDoyNDEKIG1zZ2lkICJiaXNlY3QgcnVuIGZhaWxlZDogbm8gY29tbWFuZCBwcm92aWRlZC4iCiBtc2dzdHIgImJpc2VjdCBjaOG6oXkgZ+G6t3AgbOG7l2k6IGtow7RuZyDEkcawYSByYSBs4buHbmguIgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ1OAorIzogZ2l0LWJpc2VjdC5zaDoyNDYKICMsIHNoLWZvcm1hdAogbXNnaWQgInJ1bm5pbmcgJGNvbW1hbmQiCiBtc2dzdHIgIsSRYW5nIGNo4bqheSBs4buHbmggJGNvbW1hbmQiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDY1CisjOiBnaXQtYmlzZWN0LnNoOjI1MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogImJpc2VjdCBydW4gZmFpbGVkOlxuIgpAQCAtMTkzOTYsMTEgKzIzMjE3LDExIEBACiAiY2jhuqF5IGJpc2VjdCBn4bq3cCBs4buXaTpcbiIKICJtw6MgdHLhuqMgduG7gSAkcmVzIHThu6sgbOG7h25oIOKAnCRjb21tYW5k4oCdIGzDoCA8IDAgaG/hurdjID49IDEyOCIKIAotIzogZ2l0LWJpc2VjdC5zaDo0OTEKKyM6IGdpdC1iaXNlY3Quc2g6Mjc5CiBtc2dpZCAiYmlzZWN0IHJ1biBjYW5ub3QgY29udGludWUgYW55IG1vcmUiCiBtc2dzdHIgImJpc2VjdCBraMO0bmcgdGjhu4MgdGnhur9wIHThu6VjIHRow6ptIMSRxrDhu6NjIG7hu69hIgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ5NworIzogZ2l0LWJpc2VjdC5zaDoyODUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJiaXNlY3QgcnVuIGZhaWxlZDpcbiIKQEAgLTE5NDA5LDI3ICsyMzIzMCwxMyBAQAogImNo4bqheSBiaXNlY3QgZ+G6t3AgbOG7l2k6XG4iCiAi4oCdYmlzZWN0X3N0YXRlICRzdGF0ZeKAnSDEkcOjIHRob8OhdCByYSB24bubaSBtw6MgbOG7l2kgJHJlcyIKIAotIzogZ2l0LWJpc2VjdC5zaDo1MDQKKyM6IGdpdC1iaXNlY3Quc2g6MjkyCiBtc2dpZCAiYmlzZWN0IHJ1biBzdWNjZXNzIgogbXNnc3RyICJiaXNlY3QgY2jhuqF5IHRow6BuaCBjw7RuZyIKIAotIzogZ2l0LWJpc2VjdC5zaDo1MzMKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkludmFsaWQgY29tbWFuZDogeW91J3JlIGN1cnJlbnRseSBpbiBhICRURVJNX0JBRC8kVEVSTV9HT09EIGJpc2VjdC4iCi1tc2dzdHIgIkzhu4duaCBraMO0bmcgaOG7o3AgbOG7hzogYuG6oW4gaGnhu4duIMSRYW5nIOG7nyBiaXNlY3QgJFRFUk1fQkFELyRURVJNX0dPT0QuIgotCi0jOiBnaXQtYmlzZWN0LnNoOjU2NwotbXNnaWQgIm5vIHRlcm1zIGRlZmluZWQiCi1tc2dzdHIgImNoxrBhIMSR4buLbmggbmdoxKlhIHRo4budaSBr4buzIG7DoG8iCi0KLSM6IGdpdC1iaXNlY3Quc2g6NTg0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iaW52YWxpZCBhcmd1bWVudCAkYXJnIGZvciAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCi0iU3VwcG9ydGVkIG9wdGlvbnMgYXJlOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGFuZCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgotbXNnc3RyICIiCi0idGhhbSBz4buRIGtow7RuZyBo4bujcCBs4buHICRhcmcgY2hvIOKAnGdpdCBiaXNlY3QgdGVybXPigJ0uXG4iCi0iQ8OhYyB0w7l5IGNo4buNbiBo4buXIHRy4bujIGzDoDogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCB2w6AgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKKyM6IGdpdC1iaXNlY3Quc2g6MzAwCittc2dpZCAiV2UgYXJlIG5vdCBiaXNlY3RpbmcuIgorbXNnc3RyICJDaMO6bmcgdMO0aSBraMO0bmcgYmlzZWN0LiIKIAogIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6NDYKIG1zZ2lkICIiCkBAIC0xOTQ3MSwyOTUgKzIzMjc4LDEzNCBAQAogbXNnaWQgIlNpbXBsZSBtZXJnZSBkaWQgbm90IHdvcmssIHRyeWluZyBhdXRvbWF0aWMgbWVyZ2UuIgogbXNnc3RyICJIw7JhIHRy4buZbiDEkcahbiBnaeG6o24ga2jDtG5nIGzDoG0gdmnhu4djLCB0aOG7rSBow7JhIHRy4buZbiB04buxIMSR4buZbmcuIgogCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0MzQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkNvdWxkIG5vdCBtb3ZlIGJhY2sgdG8gJGhlYWRfbmFtZSIKLW1zZ3N0ciAiS2jDtG5nIHRo4buDIHF1YXkgdHLhu58gbOG6oWkgJGhlYWRfbmFtZSIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDYwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iSXQgc2VlbXMgdGhhdCB0aGVyZSBpcyBhbHJlYWR5IGEgJHN0YXRlX2Rpcl9iYXNlIGRpcmVjdG9yeSwgYW5kXG4iCi0iSSB3b25kZXIgaWYgeW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgcmViYXNlLiAgSWYgdGhhdCBpcyB0aGVcbiIKLSJjYXNlLCBwbGVhc2UgdHJ5XG4iCi0iXHQkY21kX2xpdmVfcmViYXNlXG4iCi0iSWYgdGhhdCBpcyBub3QgdGhlIGNhc2UsIHBsZWFzZVxuIgotIlx0JGNtZF9jbGVhcl9zdGFsZV9yZWJhc2VcbiIKLSJhbmQgcnVuIG1lIGFnYWluLiAgSSBhbSBzdG9wcGluZyBpbiBjYXNlIHlvdSBzdGlsbCBoYXZlIHNvbWV0aGluZ1xuIgotInZhbHVhYmxlIHRoZXJlLiIKLW1zZ3N0ciAiIgotIkjDrG5oIG5oxrAgbMOgIOG7nyDEkcOieSBz4bq1biBjw7MgbeG7mXQgdGjGsCBt4bulYyAkc3RhdGVfZGlyX2Jhc2UsIHbDoFxuIgotIlTDtGkgdOG7sSBo4buPaSBjw7MgcGjhuqNpIGLhuqFuIMSRYW5nIOG7nyBnaeG7r2EgbeG7mXQgbOG7h25oIHJlYmFzZSBraMOhYy4gTuG6v3UgxJHDum5nIGzDoFxuIgotIm5oxrAgduG6rXksIHhpbiBow6N5IHRo4butXG4iCi0iXHQkY21kX2xpdmVfcmViYXNlXG4iCi0iTuG6v3Uga2jDtG5nIHBo4bqjaSB0aOG6vywgaMOjeSB0aOG7rVxuIgotIlx0JGNtZF9jbGVhcl9zdGFsZV9yZWJhc2VcbiIKLSJ2w6AgY2jhuqF5IFTDlEkgbOG6p24gbuG7r2EuIFTDlEkgIGThu6tuZyBs4bqhaSB0cm9uZyB0csaw4budbmcgaOG7o3AgYuG6oW4gduG6q25cbiIKLSJjw7MgbeG7mXQgc+G7kSB0aOG7qSBxdcO9IGdpw6Eg4bufIMSRw6J5LiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTI1Ci1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXNpZ25vZmYnIHdpdGggJy0tcHJlc2VydmUtbWVyZ2VzJyIKLW1zZ3N0ciAibOG7l2k6IGtow7RuZyB0aOG7gyBr4bq/dCBo4bujcCDigJwtLXNpZ25vZmbigJ0gduG7m2kg4oCcLS1wcmVzZXJ2ZS1tZXJnZXPigJ0iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU3MAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCB1cHN0cmVhbSAnJHVwc3RyZWFtX25hbWUnIgotbXNnc3RyICJ0aMaw4bujbmcgbmd14buTbiBraMO0bmcgaOG7o3AgbOG7hyDigJwkdXBzdHJlYW1fbmFtZeKAnSIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTk0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIkb250b19uYW1lOiB0aGVyZSBhcmUgbW9yZSB0aGFuIG9uZSBtZXJnZSBiYXNlcyIKLW1zZ3N0ciAiJG9udG9fbmFtZTog4bufIMSRw6J5IGPDsyBuaGnhu4F1IGjGoW4gbeG7mXQgbuG7gW4gbcOzbmcgaMOyYSB0cuG7mW4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU5NyBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2MDEKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiRvbnRvX25hbWU6IHRoZXJlIGlzIG5vIG1lcmdlIGJhc2UiCi1tc2dzdHIgIiRvbnRvX25hbWU6IOG7nyDEkcOieSBraMO0bmcgY8OzIG7hu4FuIG3Ds25nIGjDsmEgdHLhu5luIG7DoG8iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjYwNgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBjb21taXQ6ICRvbnRvX25hbWUiCi1tc2dzdHIgIktow7RuZyBjaOG7iSDEkeG6v24gbeG7mXQgbOG6p24gY2h1eeG7g24gZ2lhbyBraMO0bmcgaOG7o3AgbOG7hzogJG9udG9fbmFtZSIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjMyCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICckYnJhbmNoX25hbWUnIgotbXNnc3RyICJuZ2hpw6ptIHRy4buNbmc6IGtow7RuZyBjw7MgbmjDoW5oIG5oxrAgdGjhur86IOKAnCRicmFuY2hfbmFtZeKAnSIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjcwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDcmVhdGVkIGF1dG9zdGFzaDogJHN0YXNoX2FiYnJldiIKLW1zZ3N0ciAixJDDoyB04bqhbyBhdXRvc3Rhc2g6ICRzdGFzaF9hYmJyZXYiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjY5OQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUuIgotbXNnc3RyICJOaMOhbmggaGnhu4duIHThuqFpICRicmFuY2hfbmFtZSDEkcOjIMSRxrDhu6NjIGPhuq1wIG5o4bqtdCBy4buTaS4iCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjcwOQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgotbXNnc3RyICJOaMOhbmggaGnhu4duIHThuqFpICRicmFuY2hfbmFtZSDEkcOjIMSRxrDhu6NjIGPhuq1wIG5o4bqtdCBy4buTaSwgbOG7h25oIHJlYmFzZSDDqXAgYnXhu5ljLiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzIzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDaGFuZ2VzIHRvICRvbnRvOiIKLW1zZ3N0ciAiVGhheSDEkeG7lWkgdGjDoG5oICRvbnRvOiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzI1Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDaGFuZ2VzIGZyb20gJG1iIHRvICRvbnRvOiIKLW1zZ3N0ciAiVGhheSDEkeG7lWkgdOG7qyAkbWIgdGjDoG5oICRvbnRvOiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzM2Ci1tc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uIgotbXNnc3RyICJUcsaw4bubYyB0acOqbiwgZGkgY2h1eeG7g24gaGVhZCDEkeG7gyB4ZW0gbOG6oWkgY8OhYyBjw7RuZyB2aeG7h2MgdHLDqm4gxJHhu4luaCBj4bunYSBuw7PigKYiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjc0NgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiRmFzdC1mb3J3YXJkZWQgJGJyYW5jaF9uYW1lIHRvICRvbnRvX25hbWUuIgotbXNnc3RyICJDaHV54buDbi10aeG6v3AtbmhhbmggJGJyYW5jaF9uYW1lIHRow6BuaCAkb250b19uYW1lLiIKLQotIzogZ2l0LXN0YXNoLnNoOjYxCi1tc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIHdpdGggcGFyYW1ldGVycyBpcyB1bmltcGxlbWVudGVkIgotbXNnc3RyICIiCi0iZ2l0IHN0YXNoIGNsZWFyIHbhu5tpIGPDoWMgdGhhbSBz4buRIGzDoCBjaMawYSDEkcaw4bujYyB0aOG7sWMgaGnhu4duIChraMO0bmcgbmjhuq1uIMSR4buRaSBz4buRKSIKLQotIzogZ2l0LXN0YXNoLnNoOjEwOAotbXNnaWQgIllvdSBkbyBub3QgaGF2ZSB0aGUgaW5pdGlhbCBjb21taXQgeWV0IgotbXNnc3RyICJC4bqhbiBjaMawYSBjw7JuIGPDsyBs4bqnbiBjaHV54buDbiBnaWFvIGto4bufaSB04bqhbyIKLQotIzogZ2l0LXN0YXNoLnNoOjEyMwotbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IGluZGV4IHN0YXRlIgotbXNnc3RyICJLaMO0bmcgdGjhu4MgZ2hpIGzhuqFpIHRy4bqhbmcgdGjDoWkgYuG6o25nIG3hu6VjIGzhu6VjIGhp4buHbiBow6BuaCIKLQotIzogZ2l0LXN0YXNoLnNoOjEzOAotbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSB1bnRyYWNrZWQgZmlsZXMiCi1tc2dzdHIgIktow7RuZyB0aOG7gyBnaGkgbOG6oWkgY8OhYyB04bqtcCB0aW4gY2jGsGEgdGhlbyBkw7VpIgotCi0jOiBnaXQtc3Rhc2guc2g6MTU4IGdpdC1zdGFzaC5zaDoxNzEKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCB3b3JrdHJlZSBzdGF0ZSIKLW1zZ3N0ciAiS2jDtG5nIHRo4buDIGdoaSBs4bqhaSB0cuG6oW5nIHRow6FpIGPDonktbMOgbS12aeG7h2MgaGnhu4duIGjDoG5oIgotCi0jOiBnaXQtc3Rhc2guc2g6MTc1Ci1tc2dpZCAiTm8gY2hhbmdlcyBzZWxlY3RlZCIKLW1zZ3N0ciAiQ2jGsGEgY8OzIHRoYXkgxJHhu5VpIG7DoG8gxJHGsOG7o2MgY2jhu41uIgotCi0jOiBnaXQtc3Rhc2guc2g6MTc4CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIyMQogbXNnaWQgIkNhbm5vdCByZW1vdmUgdGVtcG9yYXJ5IGluZGV4IChjYW4ndCBoYXBwZW4pIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgZ+G7oSBi4buPIGLhuqNuZyBt4bulYyBs4bulYyB04bqhbSB0aOG7nWkgKGtow7RuZyB0aOG7gyB44bqjeSByYSkiCiAKLSM6IGdpdC1zdGFzaC5zaDoxOTEKLW1zZ2lkICJDYW5ub3QgcmVjb3JkIHdvcmtpbmcgdHJlZSBzdGF0ZSIKLW1zZ3N0ciAiS2jDtG5nIHRo4buDIGdoaSBs4bqhaSB0cuG6oW5nIHRow6FpIGPDonkgbMOgbSB2aeG7h2MgaGnhu4duIGjDoG5oIgotCi0jOiBnaXQtc3Rhc2guc2g6MjI5CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjI3MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHVwZGF0ZSAkcmVmX3N0YXNoIHdpdGggJHdfY29tbWl0IgogbXNnc3RyICJLaMO0bmcgdGjhu4MgY+G6rXAgbmjhuq10ICRyZWZfc3Rhc2ggduG7m2kgJHdfY29tbWl0IgogCi0jOiBnaXQtc3Rhc2guc2g6MjgxCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjMyNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiZXJyb3I6IHVua25vd24gb3B0aW9uIGZvciAnc3Rhc2ggcHVzaCc6ICRvcHRpb24iCiBtc2dzdHIgImzhu5dpOiBraMO0bmcgaGnhu4N1IHTDuXkgY2jhu41uIGNobyDigJxzdGFzaCBwdXNo4oCdOiAkb3B0aW9uIgogCi0jOiBnaXQtc3Rhc2guc2g6Mjk1Ci1tc2dpZCAiQ2FuJ3QgdXNlIC0tcGF0Y2ggYW5kIC0taW5jbHVkZS11bnRyYWNrZWQgb3IgLS1hbGwgYXQgdGhlIHNhbWUgdGltZSIKLW1zZ3N0ciAiS2jDtG5nIHRo4buDIGTDuW5nIC0tcGF0Y2ggdsOgIC0taW5jbHVkZS11bnRyYWNrZWQgaGF5IC0tYWxsIGPDuW5nIG3hu5l0IGzDumMuIgotCi0jOiBnaXQtc3Rhc2guc2g6MzAzCi1tc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgotbXNnc3RyICJLaMO0bmcgY8OzIHRoYXkgxJHhu5VpIG7hu5lpIGLhu5kgbsOgbyDEkcaw4bujYyBnaGkgbOG6oWkiCi0KLSM6IGdpdC1zdGFzaC5zaDozMDgKLW1zZ2lkICJDYW5ub3QgaW5pdGlhbGl6ZSBzdGFzaCIKLW1zZ3N0ciAiS2jDtG5nIHRo4buDIGto4bufaSB04bqhbyBzdGFzaCIKLQotIzogZ2l0LXN0YXNoLnNoOjMxMgotbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHN0YXR1cyIKLW1zZ3N0ciAiS2jDtG5nIHRo4buDIGdoaSBs4bqhaSB0cuG6oW5nIHRow6FpIGhp4buHbiBow6BuaCIKLQotIzogZ2l0LXN0YXNoLnNoOjMxMworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlNhdmVkIHdvcmtpbmcgZGlyZWN0b3J5IGFuZCBpbmRleCBzdGF0ZSAkc3Rhc2hfbXNnIgogbXNnc3RyICLEkMOjIGdoaSBs4bqhaSB0aMawIG3hu6VjIGzDoG0gdmnhu4djIHbDoCB0cuG6oW5nIHRow6FpIG3hu6VjIGzhu6VjICRzdGFzaF9tc2ciCiAKLSM6IGdpdC1zdGFzaC5zaDozNDIKLW1zZ2lkICJDYW5ub3QgcmVtb3ZlIHdvcmt0cmVlIGNoYW5nZXMiCi1tc2dzdHIgIktow7RuZyB0aOG7gyBn4buhIGLhu48gY8OhYyB0aGF5IMSR4buVaSBjw6J5LWzDoG0tdmnhu4djIgotCi0jOiBnaXQtc3Rhc2guc2g6NDkwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjUzNgogIywgc2gtZm9ybWF0CiBtc2dpZCAidW5rbm93biBvcHRpb246ICRvcHQiCiBtc2dzdHIgImtow7RuZyBoaeG7g3UgdMO5eSBjaOG7jW46ICRvcHQiCiAKLSM6IGdpdC1zdGFzaC5zaDo1MDMKLW1zZ2lkICJObyBzdGFzaCBlbnRyaWVzIGZvdW5kLiIKLW1zZ3N0ciAiS2jDtG5nIHTDrG0gdGjhuqV5IGPDoWMgbeG7pWMgdOG6oW0gY+G6pXQgKHN0YXNoKSBuw6BvLiIKLQotIzogZ2l0LXN0YXNoLnNoOjUxMAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NTYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlRvbyBtYW55IHJldmlzaW9ucyBzcGVjaWZpZWQ6ICRSRVYiCiBtc2dzdHIgIkNo4buJIHJhIHF1w6Egbmhp4buBdSDEkWnhu4NtIHjDqXQgZHV54buHdDogJFJFViIKIAotIzogZ2l0LXN0YXNoLnNoOjUyNQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NzEKICMsIHNoLWZvcm1hdAogbXNnaWQgIiRyZWZlcmVuY2UgaXMgbm90IGEgdmFsaWQgcmVmZXJlbmNlIgogbXNnc3RyICIkcmVmZXJlbmNlIGtow7RuZyBwaOG6o2kgbMOgIHRoYW0gY2hp4bq/dSBo4bujcCBs4buHIgogCi0jOiBnaXQtc3Rhc2guc2g6NTUzCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU5OQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRhcmdzJyBpcyBub3QgYSBzdGFzaC1saWtlIGNvbW1pdCIKIG1zZ3N0ciAi4oCcJGFyZ3PigJ0ga2jDtG5nIHBo4bqjaSBsw6AgbOG6p24gY2h1eeG7g24gZ2lhbyBraeG7g3Utc3Rhc2ggKGPhuqV0IMSRaSkiCiAKLSM6IGdpdC1zdGFzaC5zaDo1NjQKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjEwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJGFyZ3MnIGlzIG5vdCBhIHN0YXNoIHJlZmVyZW5jZSIKIG1zZ3N0ciAi4oCdJGFyZ3PigJ0ga2jDtG5nIHBo4bqjaSB0aGFtIGNoaeG6v3UgxJHhur9uIHN0YXNoIgogCi0jOiBnaXQtc3Rhc2guc2g6NTcyCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYxOAogbXNnaWQgInVuYWJsZSB0byByZWZyZXNoIGluZGV4IgogbXNnc3RyICJraMO0bmcgdGjhu4MgbMOgbSB0xrDGoWkgbeG7m2kgYuG6o25nIG3hu6VjIGzhu6VjIgogCi0jOiBnaXQtc3Rhc2guc2g6NTc2CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYyMgogbXNnaWQgIkNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIMOhcCBk4bulbmcgbeG7mXQgc3Rhc2gg4bufIGdp4buvYSBj4bunYSBxdcOhIHRyw6xuaCBow7JhIHRy4buZbiIKIAotIzogZ2l0LXN0YXNoLnNoOjU4NAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MzAKIG1zZ2lkICJDb25mbGljdHMgaW4gaW5kZXguIFRyeSB3aXRob3V0IC0taW5kZXguIgogbXNnc3RyICJYdW5nIMSR4buZdCB0cm9uZyBi4bqjbmcgbeG7pWMgbOG7pWMuIEjDo3kgdGjhu60gbcOgIGtow7RuZyBkw7luZyB0w7l5IGNo4buNbiAtLWluZGV4LiIKIAotIzogZ2l0LXN0YXNoLnNoOjU4NgorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2MzIKIG1zZ2lkICJDb3VsZCBub3Qgc2F2ZSBpbmRleCB0cmVlIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgZ2hpIGzhuqFpIGPDonkgY2jhu4kgbeG7pWMiCiAKLSM6IGdpdC1zdGFzaC5zaDo1OTUKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjQxCiBtc2dpZCAiQ291bGQgbm90IHJlc3RvcmUgdW50cmFja2VkIGZpbGVzIGZyb20gc3Rhc2ggZW50cnkiCiBtc2dzdHIgIktow7RuZyB0aOG7gyBwaOG7pWMgaOG7k2kgY8OhYyB04bqtcCB0aW4gY2jGsGEgdGhlbyBkw7VpIHThu6sgbeG7pWMgY+G6pXQgxJFpIChzdGFzaCkiCiAKLSM6IGdpdC1zdGFzaC5zaDo2MjAKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjY2CiBtc2dpZCAiQ2Fubm90IHVuc3RhZ2UgbW9kaWZpZWQgZmlsZXMiCiBtc2dzdHIgIktow7RuZyB0aOG7gyBi4buPIHJhIGto4buPaSBi4buHIHBow7NuZyBjw6FjIHThuq1wIHRpbiDEkcOjIMSRxrDhu6NjIHPhu61hIGNo4buvYSIKIAotIzogZ2l0LXN0YXNoLnNoOjYzNQotbXNnaWQgIkluZGV4IHdhcyBub3QgdW5zdGFzaGVkLiIKLW1zZ3N0ciAiQuG6o25nIG3hu6VjIGzhu6VjIMSRw6Mga2jDtG5nIMSRxrDhu6NjIGLhu48gc3Rhc2guIgotCi0jOiBnaXQtc3Rhc2guc2g6NjQ5Ci1tc2dpZCAiVGhlIHN0YXNoIGVudHJ5IGlzIGtlcHQgaW4gY2FzZSB5b3UgbmVlZCBpdCBhZ2Fpbi4iCi1tc2dzdHIgIkPDoWMgbeG7pWMgdOG6oW0gY+G6pXQgKHN0YXNoKSDEkcaw4bujYyBnaeG7ryB0cm9uZyB0csaw4budbmcgaOG7o3AgYuG6oW4gbOG6oWkgY+G6p24gbsOzLiIKLQotIzogZ2l0LXN0YXNoLnNoOjY1OAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDQKICMsIHNoLWZvcm1hdAogbXNnaWQgIkRyb3BwZWQgJHtSRVZ9ICgkcykiCiBtc2dzdHIgIsSQw6MgeMOzYSAke1JFVn0gKCRzKSIKIAotIzogZ2l0LXN0YXNoLnNoOjY1OQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiR7UkVWfTogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCiBtc2dzdHIgIiR7UkVWfTogS2jDtG5nIHRo4buDIHjDs2EgYuG7jyBt4bulYyBzdGFzaCIKIAotIzogZ2l0LXN0YXNoLnNoOjY2NwotbXNnaWQgIk5vIGJyYW5jaCBuYW1lIHNwZWNpZmllZCIKLW1zZ3N0ciAiQ2jGsGEgY2jhu4kgcmEgdMOqbiBj4bunYSBuaMOhbmgiCi0KLSM6IGdpdC1zdGFzaC5zaDo3NDYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzkyCiBtc2dpZCAiKFRvIHJlc3RvcmUgdGhlbSB0eXBlIFwiZ2l0IHN0YXNoIGFwcGx5XCIpIgogbXNnc3RyICIoxJDhu4MgcGjhu6VjIGjhu5NpIGzhuqFpIGNow7puZyBow6N5IGfDtSBcImdpdCBzdGFzaCBhcHBseVwiKSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoxOTgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjAzCiBtc2dpZCAiUmVsYXRpdmUgcGF0aCBjYW4gb25seSBiZSB1c2VkIGZyb20gdGhlIHRvcGxldmVsIG9mIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKICLEkMaw4budbmcgZOG6q24gdMawxqFuZyDEkeG7kWkgY2jhu4kgY8OzIHRo4buDIGTDuW5nIHThu6sgdGjGsCBt4bulYyDhu58gbeG7qWMgY2FvIG5o4bqldCBj4bunYSBjw6J5IGzDoG0gIgogInZp4buHYyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMDgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjEzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJyZXBvIFVSTDogJyRyZXBvJyBtdXN0IGJlIGFic29sdXRlIG9yIGJlZ2luIHdpdGggLi98Li4vIgogbXNnc3RyICIiCiAicmVwbyBVUkw6IOKAnCRyZXBv4oCdIHBo4bqjaSBsw6AgxJHGsOG7nW5nIGThuqtuIHR1eeG7h3QgxJHhu5FpIGhv4bq3YyBsw6AgYuG6r3QgxJHhuqd1IGLhurFuZyAuL3wuLi8iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjI3CisjOiBnaXQtc3VibW9kdWxlLnNoOjIzMgogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXgiCiBtc2dzdHIgIuKAnSRzbV9wYXRo4oCdIHRo4buxYyBz4buxIMSRw6MgdOG7k24gdOG6oWkg4bufIGLhuqNuZyBt4bulYyBs4bulYyBy4buTaSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzAKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjM1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGluIHRoZSBpbmRleCBhbmQgaXMgbm90IGEgc3VibW9kdWxlIgogbXNnc3RyICIiCiAi4oCdJHNtX3BhdGjigJ0gdGjhu7FjIHPhu7EgxJHDoyB04buTbiB04bqhaSDhu58gYuG6o25nIG3hu6VjIGzhu6VjIHLhu5NpIHbDoCBraMO0bmcgcGjhuqNpIGzDoCBt4buZdCBtw7QtxJF1bi0iCiAiY29uIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjIzNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNDIKICMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJUaGUgZm9sbG93aW5nIHBhdGggaXMgaWdub3JlZCBieSBvbmUgb2YgeW91ciAuZ2l0aWdub3JlIGZpbGVzOlxuIgotIiRzbV9wYXRoXG4iCi0iVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgaXQuIgotbXNnc3RyICIiCi0iQ8OhYyDEkcaw4budbmcgZOG6q24gdGhlbyBzYXUgxJHDonkgc+G6vSBi4buLIGzhu50gxJFpIGLhu59pIG3hu5l0IHRyb25nIGPDoWMgdOG6rXAgdGluIC5naXRpZ25vcmUgIgotImPhu6dhIGLhuqFuOlxuIgotIiRzbV9wYXRoXG4iCi0iU+G7rSBk4bulbmcgLWYgbuG6v3UgYuG6oW4gdGjhu7FjIHPhu7EgbXXhu5FuIHRow6ptIG7DsyB2w6BvLiIKK21zZ2lkICInJHNtX3BhdGgnIGRvZXMgbm90IGhhdmUgYSBjb21taXQgY2hlY2tlZCBvdXQiCittc2dzdHIgIuKAnCRzbV9wYXRo4oCdIGtow7RuZyBjw7MgbOG6p24gY2h1eeG7g24gZ2lhbyBuw6BvIMSRxrDhu6NjIGzhuqV5IHJhIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI1OQorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzMKICMsIHNoLWZvcm1hdAogbXNnaWQgIkFkZGluZyBleGlzdGluZyByZXBvIGF0ICckc21fcGF0aCcgdG8gdGhlIGluZGV4IgogbXNnc3RyICLEkGFuZyB0aMOqbSByZXBvIGPDsyBz4bq1biB04bqhaSDigJwkc21fcGF0aOKAnSB2w6BvIGLhuqNuZyBt4bulYyBs4bulYyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNjEKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjc1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYSB2YWxpZCBnaXQgcmVwbyIKIG1zZ3N0ciAi4oCdJHNtX3BhdGjigJ0gxJHDoyB04buTbiB04bqhaSB04burIHRyxrDhu5tjIHbDoCBraMO0bmcgcGjhuqNpIGzDoCBt4buZdCBraG8gZ2l0IGjhu6NwIGzhu4ciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjY5CisjOiBnaXQtc3VibW9kdWxlLnNoOjI4MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiQSBnaXQgZGlyZWN0b3J5IGZvciAnJHNtX25hbWUnIGlzIGZvdW5kIGxvY2FsbHkgd2l0aCByZW1vdGUocyk6IgogbXNnc3RyICIiCiAiVGjGsCBt4bulYyBnaXQgY2hvIOKAnCRzbV9uYW1l4oCdIMSRxrDhu6NjIHTDrG0gdGjhuqV5IG3hu5l0IGPDoWNoIGPhu6VjIGLhu5kgduG7m2kgY8OhYyBtw6F5IGNo4bunOiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzEKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjg1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiSWYgeW91IHdhbnQgdG8gcmV1c2UgdGhpcyBsb2NhbCBnaXQgZGlyZWN0b3J5IGluc3RlYWQgb2YgY2xvbmluZyBhZ2FpbiBmcm9tXG4iCkBAIC0xOTc3NSw0MCArMjM0MjEsNDAgQEAKICJob+G6t2MgbMOgIGLhuqFuIGtow7RuZyBjaOG6r2MgY2jhuq9uIMSRaeG7gXUgxJHDsyBuZ2jEqWEgbMOgIGfDrCB0aMOsIGNo4buNbiB0w6puIGtow6FjIHbhu5tpIHTDuXkgIgogImNo4buNbiDigJwtLW5hbWXigJ0uIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI3NworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYWN0aXZhdGluZyBsb2NhbCBnaXQgZGlyZWN0b3J5IGZvciBzdWJtb2R1bGUgJyRzbV9uYW1lJy4iCiBtc2dzdHIgIiIKICJQaOG7pWMgaOG7k2kgc+G7sSBob+G6oXQgxJHhu5luZyBj4bunYSB0aMawIG3hu6VjIGdpdCBu4buZaSBi4buZIGNobyBtw7QtxJF1bi1jb24g4oCcJHNtX25hbWXigJ0uIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI4OQorIzogZ2l0LXN1Ym1vZHVsZS5zaDozMDMKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBjaGVja291dCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIGzhuqV5IHJhIG3DtC3EkXVuLWNvbiDigJwkc21fcGF0aOKAnSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTQKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MzA4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gYWRkIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICJH4bq3cCBs4buXaSBraGkgdGjDqm0gbcO0LcSRdW4tY29uIOKAnCRzbV9wYXRo4oCdIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjMwMworIzogZ2l0LXN1Ym1vZHVsZS5zaDozMTcKICMsIHNoLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIMSRxINuZyBrw70gduG7m2kgaOG7hyB0aOG7kW5nIG3DtC3EkXVuLWNvbiDigJwkc21fcGF0aOKAnSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NjMKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NTkwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gZmluZCBjdXJyZW50IHJldmlzaW9uIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICIiCiAiS2jDtG5nIHTDrG0gdGjhuqV5IMSRaeG7g20geMOpdCBkdXnhu4d0IGhp4buHbiBow6BuaCB0cm9uZyDEkcaw4budbmcgZOG6q24gbcO0LcSRdW4tY29uICIKICLigJwkZGlzcGxheXBhdGjigJ0iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTczCisjOiBnaXQtc3VibW9kdWxlLnNoOjYwMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGZldGNoIGluIHN1Ym1vZHVsZSBwYXRoICckc21fcGF0aCciCiBtc2dzdHIgIktow7RuZyB0aOG7gyBs4bqleSB24buBIHRyb25nIMSRxrDhu51uZyBk4bqrbiBtw7QtxJF1bi1jb24g4oCcJHNtX3BhdGjigJ0iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTc4CisjOiBnaXQtc3VibW9kdWxlLnNoOjYwNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIlVuYWJsZSB0byBmaW5kIGN1cnJlbnQgJHtyZW1vdGVfbmFtZX0vJHticmFuY2h9IHJldmlzaW9uIGluIHN1Ym1vZHVsZSBwYXRoICIKQEAgLTE5ODE3LDEyICsyMzQ2MywxNiBAQAogIktow7RuZyB0aOG7gyB0w6xtIHRo4bqleSDEkWnhu4NtIHjDqXQgZHV54buHdCBoaeG7h24gaMOgbmggJHtyZW1vdGVfbmFtZX0vJHticmFuY2h9IHRyb25nICIKICLEkcaw4budbmcgZOG6q24gbcO0LcSRdW4tY29uIOKAnCRzbV9wYXRo4oCdIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU5NgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjMKICMsIHNoLWZvcm1hdAotbXNnaWQgIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKLW1zZ3N0ciAiS2jDtG5nIHRo4buDIGzhuqV5IHbhu4EgdHJvbmcgxJHGsOG7nW5nIGThuqtuIG3DtC3EkXVuLWNvbiDigJwkZGlzcGxheXBhdGjigJ0iCittc2dpZCAiIgorIlVuYWJsZSB0byBmZXRjaCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzsgdHJ5aW5nIHRvIGRpcmVjdGx5IGZldGNoICIKKyIkc2hhMToiCittc2dzdHIgIiIKKyJLaMO0bmcgdGjhu4MgbOG6pXkgduG7gSB0cm9uZyDEkcaw4budbmcgZOG6q24gbcO0LcSRdW4tY29uIOKAnCRkaXNwbGF5cGF0aOKAnTsgdGjhu60gbOG6pXkgduG7gSB0cuG7sWMgIgorInRp4bq/cCAkc2hhMToiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjAyCisjOiBnaXQtc3VibW9kdWxlLnNoOjYyOQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIkZldGNoZWQgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCcsIGJ1dCBpdCBkaWQgbm90IGNvbnRhaW4gJHNoYTEuICIKQEAgLTE5ODMxLDc0ICsyMzQ4MSw3NCBAQAogIsSQw6MgbOG6pXkgduG7gSB04burIMSRxrDhu51uZyBk4bqrbiBtw7QtxJF1biBjb24g4oCcJGRpc3BsYXlwYXRo4oCdLCBuaMawbmcgbsOzIGtow7RuZyBjaOG7qWEgJHNoYTEuICIKICJM4bqleSB24buBIHRoZW8gxJHhu4tuaCBoxrDhu5tuZyBj4bunYSBs4bqnbiBjaHV54buDbiBnaWFvIMSRw7MgZ+G6t3AgbOG7l2kuIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYwOQorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MzYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBjaGVja291dCAnJHNoYTEnIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgbOG6pXkgcmEg4oCcJHNoYTHigJ0gdHJvbmcgxJHGsOG7nW5nIGThuqtuIG3DtC3EkXVuLWNvbiDigJwkZGlzcGxheXBhdGjigJ0iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjEwCisjOiBnaXQtc3VibW9kdWxlLnNoOjYzNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IGNoZWNrZWQgb3V0ICckc2hhMSciCiBtc2dzdHIgIsSQxrDhu51uZyBk4bqrbiBtw7QtxJF1bi1jb24g4oCcJGRpc3BsYXlwYXRo4oCdOiDEkcOjIGNoZWNrb3V0IOKAnCRzaGEx4oCdIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYxNAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byByZWJhc2UgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIGPhuqNpIHThu5Ug4oCcJHNoYTHigJ0gdHJvbmcgxJHGsOG7nW5nIGThuqtuIG3DtC3EkXVuLWNvbiDigJwkZGlzcGxheXBhdGjigJ0iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjE1CisjOiBnaXQtc3VibW9kdWxlLnNoOjY0MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc6IHJlYmFzZWQgaW50byAnJHNoYTEnIgogbXNnc3RyICLEkMaw4budbmcgZOG6q24gbcO0LcSRdW4tY29uIOKAnCRkaXNwbGF5cGF0aOKAnTogxJHGsOG7o2MgcmViYXNlIHbDoG8gdHJvbmcg4oCcJHNoYTHigJ0iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjIwCisjOiBnaXQtc3VibW9kdWxlLnNoOjY0NwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIG1lcmdlICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIiIKICJLaMO0bmcgdGjhu4MgaMOyYSB0cuG7mW4gKG1lcmdlKSDigJwkc2hhMeKAnSB0cm9uZyDEkcaw4budbmcgZOG6q24gbcO0LcSRdW4tY29uIOKAnCRkaXNwbGF5cGF0aOKAnSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjEKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQ4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogbWVyZ2VkIGluICckc2hhMSciCiBtc2dzdHIgIsSQxrDhu51uZyBk4bqrbiBtw7QtxJF1bi1jb24g4oCcJGRpc3BsYXlwYXRo4oCdOiDEkcaw4bujYyBow7JhIHRy4buZbiB2w6BvIOKAnCRzaGEx4oCdIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYyNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NTMKICMsIHNoLWZvcm1hdAogbXNnaWQgIkV4ZWN1dGlvbiBvZiAnJGNvbW1hbmQgJHNoYTEnIGZhaWxlZCBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiIgogIlRo4buxYyBoaeG7h24ga2jDtG5nIHRow6BuaCBjw7RuZyBs4buHbmgg4oCcJGNvbW1hbmQgJHNoYTHigJ0gdHJvbmcgxJHGsOG7nW5nIGThuqtuIG3DtC3EkXVuLWNvbiAiCiAi4oCcJGRpc3BsYXlwYXRo4oCdIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYyNworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NTQKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiAnJGNvbW1hbmQgJHNoYTEnIgogbXNnc3RyICLEkMaw4budbmcgZOG6q24gbcO0LcSRdW4tY29uIOKAnCRkaXNwbGF5cGF0aOKAnTog4oCcJGNvbW1hbmQgJHNoYTHigJ0iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjU4CisjOiBnaXQtc3VibW9kdWxlLnNoOjY4NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIMSR4buHIHF1eSB2w6BvIHRyb25nIMSRxrDhu51uZyBk4bqrbiBtw7QtxJF1bi1jb24g4oCcJGRpc3BsYXlwYXRo4oCdIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjc1NAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo4OTYKIG1zZ2lkICJUaGUgLS1jYWNoZWQgb3B0aW9uIGNhbm5vdCBiZSB1c2VkIHdpdGggdGhlIC0tZmlsZXMgb3B0aW9uIgogbXNnc3RyICJUw7l5IGNo4buNbiAtLWNhY2hlZCBraMO0bmcgdGjhu4MgZMO5bmcgY8O5bmcgduG7m2kgdMO5eSBjaOG7jW4gLS1maWxlcyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MDYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTQ4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG1vZGUgJG1vZF9kc3QiCiBtc2dzdHIgImNo4bq/IMSR4buZIGtow7RuZyBuaMawIG1vbmcgY2jhu50gJG1vZF9kc3QiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODI2CisjOiBnaXQtc3VibW9kdWxlLnNoOjk2OAogIywgc2gtZm9ybWF0CiBtc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXQgJHNoYTFfc3JjIgogbXNnc3RyICIgIEPhuqNuaCBiw6FvOiAkZGlzcGxheV9uYW1lIGtow7RuZyBjaOG7qWEgbOG6p24gY2h1eeG7g24gZ2lhbyAkc2hhMV9zcmMiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODI5CisjOiBnaXQtc3VibW9kdWxlLnNoOjk3MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXQgJHNoYTFfZHN0IgogbXNnc3RyICIgIEPhuqNuaCBiw6FvOiAkZGlzcGxheV9uYW1lIGtow7RuZyBjaOG7qWEgbOG6p24gY2h1eeG7g24gZ2lhbyAkc2hhMV9kc3QiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODMyCisjOiBnaXQtc3VibW9kdWxlLnNoOjk3NAogIywgc2gtZm9ybWF0CiBtc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXRzICRzaGExX3NyYyBhbmQgJHNoYTFfZHN0IgogbXNnc3RyICIiCkBAIC0xOTkxMCwxMiArMjM1NjAsMjEgQEAKIG1zZ2lkICJTZWUgZ2l0LSR7Y21kfSgxKSBmb3IgZGV0YWlscy4iCiBtc2dzdHIgIlhlbSBnaXQtJHtjbWR9KDEpIMSR4buDIGJp4bq/dCB0aMOqbSBjaGkgdGnhur90LiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEzNgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEwOQorbXNnaWQgIkFwcGxpZWQgYXV0b3N0YXNoLiIKK21zZ3N0ciAixJDDoyDDoXAgZOG7pW5nIGF1dG9zdGFzaC4iCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxMTIKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBzdG9yZSAkc3Rhc2hfc2hhMSIKK21zZ3N0ciAiS2jDtG5nIHRo4buDIGzGsHUgJHN0YXNoX3NoYTEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxOTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYmFzaW5nICgkbmV3X2NvdW50LyR0b3RhbCkiCiBtc2dzdHIgIsSQYW5nIHJlYmFzZSAoJG5ld19jb3VudC8kdG90YWwpIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTUyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjA3CiBtc2dpZCAiIgogIlxuIgogIkNvbW1hbmRzOlxuIgpAQCAtMTk5NTgsNyArMjM2MTcsNyBAQAogIk5o4buvbmcgZMOybmcgbsOgeSBjw7MgdGjhu4MgxJHhuqNvIG5nxrDhu6NjIHRo4bupIHThu7E7IGNow7puZyBjaOG6oXkgdOG7qyB0csOqbiDEkeG7iW5oIHh14buRbmcgZMaw4bubaSAiCiAixJHDoXkuXG4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMTUKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyNzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgY2FuIGFtZW5kIHRoZSBjb21taXQgbm93LCB3aXRoXG4iCkBAIC0xOTk3Nyw4MiArMjM2MzYsODIgQEAKICJcbiIKICJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI0MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI5NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJHNoYTE6IG5vdCBhIGNvbW1pdCB0aGF0IGNhbiBiZSBwaWNrZWQiCiBtc2dzdHIgIiRzaGExOiBraMO0bmcgcGjhuqNpIGzDoCBs4bqnbiBjaHV54buDbiBnaWFvIG3DoCBjw7MgdGjhu4MgbOG6pXkgcmEgxJHGsOG7o2MiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyNzkKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozMzQKICMsIHNoLWZvcm1hdAogbXNnaWQgIkludmFsaWQgY29tbWl0IG5hbWU6ICRzaGExIgogbXNnc3RyICJUw6puIGzhuqduIGNodXnhu4NuIGdpYW8ga2jDtG5nIGjhu6NwIGzhu4c6ICRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzA5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzY0CiBtc2dpZCAiQ2Fubm90IHdyaXRlIGN1cnJlbnQgY29tbWl0J3MgcmVwbGFjZW1lbnQgc2hhMSIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIGdoaSBs4bqhaSBzaGExIHRoYXkgdGjhur8gY+G7p2EgbOG6p24gY2h1eeG7g24gZ2lhbyIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM2MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNQogIywgc2gtZm9ybWF0CiBtc2dpZCAiRmFzdC1mb3J3YXJkIHRvICRzaGExIgogbXNnc3RyICJDaHV54buDbi10aeG6v3AtbmhhbmggxJHhur9uICRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzYyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDE3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZmFzdC1mb3J3YXJkIHRvICRzaGExIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgY2h1eeG7g24tdGnhur9wLW5oYW5oIMSR4bq/biAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM3MQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQyNgogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IG1vdmUgSEVBRCB0byAkZmlyc3RfcGFyZW50IgogbXNnc3RyICJLaMO0bmcgdGjhu4MgZGkgY2h1eeG7g24gSEVBRCDEkeG6v24gJGZpcnN0X3BhcmVudCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjM3NgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQzMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gc3F1YXNoIGEgbWVyZ2U6ICRzaGExIgogbXNnc3RyICJU4burIGNo4buRaSBzcXVhc2ggbOG6p24gaMOyYSB0cuG7mW46ICRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Mzk0CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQ5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJFcnJvciByZWRvaW5nIG1lcmdlICRzaGExIgogbXNnc3RyICJH4bq3cCBs4buXaSBraGkgaG/DoG4gbOG6oWkgYsaw4bubYyBow7JhIHRy4buZbiAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQwMworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ1OAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHBpY2sgJHNoYTEiCiBtc2dzdHIgIktow7RuZyB0aOG7gyBs4bqleSByYSAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxMgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ2NwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyB0aGUgY29tbWl0IG1lc3NhZ2UgIyR7bn06IgogbXNnc3RyICLEkMOieSBsw6AgY2jDuiB0aMOtY2ggY2hvIGzhuqduIGNodXnhu4NuIGdpYW8gdGjhu6kgIyR7bn06IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDE3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDcyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJUaGUgY29tbWl0IG1lc3NhZ2UgIyR7bn0gd2lsbCBiZSBza2lwcGVkOiIKIG1zZ3N0ciAiQ2jDuiB0aMOtY2ggY2hvIGzhuqduIGNodXnhu4NuIGdpYW8gdGjhu6kgIyR7bn0gc+G6vSBi4buLIGLhu48gcXVhOiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQyOAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ4MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mICRjb3VudCBjb21taXQuIgogbXNnaWRfcGx1cmFsICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJGNvdW50IGNvbW1pdHMuIgogbXNnc3RyWzBdICLEkMOieSBsw6AgdOG7lSBo4bujcCBj4bunYSAkY291bnQgbOG6p24gY2h1eeG7g24gZ2lhby4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MzcKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0OTIKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCB3cml0ZSAkZml4dXBfbXNnIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgJGZpeHVwX21zZyIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ0MAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5NQogbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAyIGNvbW1pdHMuIgogbXNnc3RyICLEkMOieSBsw6AgdOG7lSBo4bujcCBj4bunYSAyIGzhuqduIGNodXnhu4NuIGdpYW8uIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDgxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1MjQKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1MjcKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1MzYgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU3OQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU4MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICRzaGExLi4uICRyZXN0IgogbXNnc3RyICJLaMO0bmcgdGjhu4Mgw6FwIGThu6VuZyAkc2hhMeKApiAkcmVzdCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU1NgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYxMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogIkNvdWxkIG5vdCBhbWVuZCBjb21taXQgYWZ0ZXIgc3VjY2Vzc2Z1bGx5IHBpY2tpbmcgJHNoYTEuLi4gJHJlc3RcbiIKQEAgLTIwMDY4LDMxICsyMzcyNywzMSBAQAogIm7DoHlcbiIKICJ0csaw4bubYyBraGkgYuG6oW4gY8OzIHRo4buDIGzDoG0gdmnhu4djIGzhuqFpIHbhu5tpIGzhuqduIGNodXnhu4NuIGdpYW8uIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTcxCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjI2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdG9wcGVkIGF0ICRzaGExX2FiYnJldi4uLiAkcmVzdCIKIG1zZ3N0ciAiQuG7iyBk4burbmcgdOG6oWkgJHNoYTFfYWJicmV24oCmICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTg2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJyRzcXVhc2hfc3R5bGUnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgIktow7RuZyDigJwkc3F1YXNoX3N0eWxl4oCdIHRo4buDIG3DoCBraMO0bmcgY8OzIGzhuqduIGNodXnhu4NuIGdpYW8ga+G6vyB0csaw4bubYyIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYyOAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY4MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRXhlY3V0aW5nOiAkcmVzdCIKIG1zZ3N0ciAiVGjhu7FjIHRoaTogJHJlc3QiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MzYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkV4ZWN1dGlvbiBmYWlsZWQ6ICRyZXN0IgogbXNnc3RyICJUaOG7sWMgdGhpIGfhurdwIGzhu5dpOiAkcmVzdCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjYzOAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjY5MwogbXNnaWQgImFuZCBtYWRlIGNoYW5nZXMgdG8gdGhlIGluZGV4IGFuZC9vciB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICJ2w6AgdOG6oW8gY8OhYyB0aGF5IMSR4buVaSBi4bqjbmcgbeG7pWMgbOG7pWMgdsOgL2hheSBjw6J5IGzDoG0gdmnhu4djIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Njk1CiBtc2dpZCAiIgogIllvdSBjYW4gZml4IHRoZSBwcm9ibGVtLCBhbmQgdGhlbiBydW5cbiIKICJcbiIKQEAgLTIwMTAzLDcgKzIzNzYyLDcgQEAKICJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKIAogIy4gVFJBTlNMQVRPUlM6IGFmdGVyIHRoZXNlIGxpbmVzIGlzIGEgY29tbWFuZCB0byBiZSBpc3N1ZWQgYnkgdGhlIHVzZXIKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NTMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MDgKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJFeGVjdXRpb24gc3VjY2VlZGVkOiAkcmVzdFxuIgpAQCAtMjAxMTgsMjUgKzIzNzc3LDI1IEBACiAiXG4iCiAiXHRnaXQgcmViYXNlIC0tY29udGludWUiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NjQKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MTkKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVua25vd24gY29tbWFuZDogJGNvbW1hbmQgJHNoYTEgJHJlc3QiCiBtc2dzdHIgIkzhu4duaCBjaMawYSBiaeG6v3Q6ICRjb21tYW5kICRzaGExICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjY1CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzIwCiBtc2dpZCAiUGxlYXNlIGZpeCB0aGlzIHVzaW5nICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJy4iCiBtc2dzdHIgIlZ1aSBsw7JuZyBz4butYSBs4buXaSBuw6B5IGLhurFuZyBjw6FjaCBkw7luZyDigJxnaXQgcmViYXNlIC0tZWRpdC10b2Rv4oCdLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcwMAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc1NQogIywgc2gtZm9ybWF0CiBtc2dpZCAiU3VjY2Vzc2Z1bGx5IHJlYmFzZWQgYW5kIHVwZGF0ZWQgJGhlYWRfbmFtZS4iCiBtc2dzdHIgIkPDoGkgdOG7lSB2w6AgY+G6rXAgbmjhuq10ICRoZWFkX25hbWUgbeG7mXQgY8OhY2ggdGjDoG5oIGPDtG5nLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc1NworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgxMgogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgQ0hFUlJZX1BJQ0tfSEVBRCIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIHjDs2EgYuG7jyBDSEVSUllfUElDS19IRUFEIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzYyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODE3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuXG4iCkBAIC0yMDE2NywxMSArMjM4MjYsMTEgQEAKICJcbiIKICIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzc5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODM0CiBtc2dpZCAiRXJyb3IgdHJ5aW5nIHRvIGZpbmQgdGhlIGF1dGhvciBpZGVudGl0eSB0byBhbWVuZCBjb21taXQiCiBtc2dzdHIgIkzhu5dpIGtoaSBj4buRIHTDrG0gxJHhu4tuaCBkYW5oIGPhu6dhIHTDoWMgZ2nhuqMgxJHhu4MgdHUgYuG7lSBs4bqnbiBjaHV54buDbiBnaWFvIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzg0CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODM5CiBtc2dpZCAiIgogIllvdSBoYXZlIHVuY29tbWl0dGVkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuIFBsZWFzZSBjb21taXQgdGhlbVxuIgogImZpcnN0IGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJyBhZ2Fpbi4iCkBAIC0yMDE4MCwzOSArMjM4MzksNDMgQEAKICJWdWkgbMOybmcgY2h1eeG7g24gZ2lhbyBjaMO6bmcgdsOgIHNhdSDEkcOzIGNo4bqheSBs4buHbmgg4oCcZ2l0IHJlYmFzZSAtLWNvbnRpbnVl4oCdIGzhuqduICIKICJu4buvYS4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3ODkgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc5MworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg0NCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ4CiBtc2dpZCAiQ291bGQgbm90IGNvbW1pdCBzdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIktow7RuZyB0aOG7gyBjaHV54buDbiBnaWFvIGPDoWMgdGhheSDEkeG7lWkgxJHDoyDEkcawYSBsw6puIGLhu4cgcGjDs25nLiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgyNCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTEwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODc5IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NjUKIG1zZ2lkICJDb3VsZCBub3QgZXhlY3V0ZSBlZGl0b3IiCiBtc2dzdHIgIktow7RuZyB0aOG7gyB0aOG7sWMgdGhpIHRyw6xuaCBiacOqbiBzb+G6oW4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NDUKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDAKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBjaGVja291dCAkc3dpdGNoX3RvIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgY2hlY2tvdXQgJHN3aXRjaF90byIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1MgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwNwogbXNnaWQgIk5vIEhFQUQ/IgogbXNnc3RyICJLaMO0bmcgSEVBRD8iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NTMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDgKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgdGVtcG9yYXJ5ICRzdGF0ZV9kaXIiCiBtc2dzdHIgIktow7RuZyB0aOG7gyB04bqhbyB0aMawIG3hu6VjIHThuqFtIHRo4budaSAkc3RhdGVfZGlyIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODU2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTExCiBtc2dpZCAiQ291bGQgbm90IG1hcmsgYXMgaW50ZXJhY3RpdmUiCiBtc2dzdHIgIktow7RuZyB0aOG7gyDEkcOhbmggZOG6pXUgbMOgIHTGsMahbmcgdMOhYyIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg4OAorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiUmViYXNlICRzaG9ydHJldmlzaW9ucyBvbnRvICRzaG9ydG9udG8gKCR0b2RvY291bnQgY29tbWFuZCkiCiBtc2dpZF9wbHVyYWwgIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgb250byAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmRzKSIKIG1zZ3N0clswXSAiQ+G6o2kgdOG7lSAkc2hvcnRyZXZpc2lvbnMgdsOgbyAkc2hvcnRvbnRvIChjw6FjIGzhu4duaCAkdG9kb2NvdW50KSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0MiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTQ3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTU1Cittc2dpZCAiTm90ZSB0aGF0IGVtcHR5IGNvbW1pdHMgYXJlIGNvbW1lbnRlZCBvdXQiCittc2dzdHIgIkNow7ogw70gcuG6sW5nIGzhuqduIGNodXnhu4NuIGdpYW8gdHLhu5FuZyBy4buXbmcgbMOgIGdoaSBjaMO6IgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTk3IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxMDAyCiBtc2dpZCAiQ291bGQgbm90IGluaXQgcmV3cml0dGVuIGNvbW1pdHMiCiBtc2dzdHIgIktow7RuZyB0aOG7gyBraOG7n2kgdOG6oW8gY8OhYyBs4bqnbiBjaHV54buDbiBnaWFvIGdoaSBs4bqhaSIKIApAQCAtMjAyMjEsMTg4ICsyMzg4NCwxMjcgQEAKIG1zZ2lkICJ1c2FnZTogJGRhc2hsZXNzICRVU0FHRSIKIG1zZ3N0ciAiY8OhY2ggZMO5bmc6ICRkYXNobGVzcyAkVVNBR0UiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoxOTAKKyM6IGdpdC1zaC1zZXR1cC5zaDoxOTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBjaGRpciB0byAkY2R1cCwgdGhlIHRvcGxldmVsIG9mIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiIKICJLaMO0bmcgdGjhu4MgY2h1eeG7g24gdGjGsCBt4bulYyAoY2hkaXIpIHNhbmcgJGNkdXAsIHRoxrAgbeG7pWMg4bufIG3hu6ljIGNhbyBuaOG6pXQgY+G7p2EgY8OieSAiCiAibMOgbSB2aeG7h2MiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoxOTkgZ2l0LXNoLXNldHVwLnNoOjIwNgorIzogZ2l0LXNoLXNldHVwLnNoOjIwMCBnaXQtc2gtc2V0dXAuc2g6MjA3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJmYXRhbDogJHByb2dyYW1fbmFtZSBjYW5ub3QgYmUgdXNlZCB3aXRob3V0IGEgd29ya2luZyB0cmVlLiIKIG1zZ3N0ciAiIgogImzhu5dpIG5naGnDqm0gdHLhu41uZzogJHByb2dyYW1fbmFtZSBraMO0bmcgdGjhu4MgxJHGsOG7o2MgZMO5bmcgbmdvYW9pZiB0aMawIG3hu6VjIGzDoG0gdmnhu4djLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjIyMAorIzogZ2l0LXNoLXNldHVwLnNoOjIyMQogbXNnaWQgIkNhbm5vdCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICJLaMO0bmcgdGjhu4MgY+G6o2kgdOG7lTogQuG6oW4gY8OzIGPDoWMgdGhheSDEkeG7lWkgY2jGsGEgxJHGsOG7o2MgxJHGsGEgbMOqbiBi4buHIHBow7NuZy4iCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjMKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjQKIG1zZ2lkICJDYW5ub3QgcmV3cml0ZSBicmFuY2hlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICJLaMO0bmcgdGjhu4MgZ2hpIGzhuqFpIGPDoWMgbmjDoW5oOiBC4bqhbiBjw7MgY8OhYyB0aGF5IMSR4buVaSBjaMawYSDEkcaw4bujYyDEkcawYSBsw6puIGLhu4cgcGjDs25nLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjIyNgorIzogZ2l0LXNoLXNldHVwLnNoOjIyNwogbXNnaWQgIkNhbm5vdCBwdWxsIHdpdGggcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogIktow7RuZyB0aOG7gyBwdWxsIHbhu5tpIGPhuqNpIHThu5U6IELhuqFuIGPDsyBjw6FjIHRoYXkgxJHhu5VpIGNoxrBhIMSRxrDhu6NjIMSRxrBhIGzDqm4gYuG7hyBwaMOzbmcuIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjI5CisjOiBnaXQtc2gtc2V0dXAuc2g6MjMwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJGFjdGlvbjogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIktow7RuZyB0aOG7gyAkYWN0aW9uOiBC4bqhbiBjw7MgY8OhYyB0aGF5IMSR4buVaSBjaMawYSDEkcaw4bujYyDEkcawYSBsw6puIGLhu4cgcGjDs25nLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjI0MgorIzogZ2l0LXNoLXNldHVwLnNoOjI0MwogbXNnaWQgIkNhbm5vdCByZWJhc2U6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIiIKICJLaMO0bmcgdGjhu4MgY+G6o2kgdOG7lTogTeG7pWMgbOG7pWMgY+G7p2EgYuG6oW4gY8OzIGNo4bupYSBjw6FjIHRoYXkgxJHhu5VpIGNoxrBhIMSRxrDhu6NjIGNodXnhu4NuIGdpYW8uIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQ1CisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ2CiBtc2dpZCAiQ2Fubm90IHB1bGwgd2l0aCByZWJhc2U6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIktow7RuZyB0aOG7gyBwdWxsIHbhu5tpIGPhuqNpIHThu5U6IELhuqFuIGPDsyBjw6FjIHRoYXkgxJHhu5VpIGNoxrBhIMSRxrDhu6NjIGNodXnhu4NuIGdpYW8uIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQ4CisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ5CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJGFjdGlvbjogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAiIgogIktow7RuZyB0aOG7gyAkYWN0aW9uOiBN4bulYyBs4bulYyBj4bunYSBi4bqhbiBjw7MgY2jhu6lhIGPDoWMgdGhheSDEkeG7lWkgY2jGsGEgxJHGsOG7o2MgY2h1eeG7g24gIgogImdpYW8uIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjUyCisjOiBnaXQtc2gtc2V0dXAuc2g6MjUzCiBtc2dpZCAiQWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICIiCiAiVGjDqm0gdsOgbyDEkcOzLCBi4bqjbmcgbeG7pWMgbOG7pWMgY+G7p2EgYuG6oW4gY8OzIGNo4bupYSBjw6FjIHRoYXkgxJHhu5VpIGNoxrBhIMSRxrDhu6NjIGNodXnhu4NuIGdpYW8uIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MzcyCisjOiBnaXQtc2gtc2V0dXAuc2g6MzczCiBtc2dpZCAiWW91IG5lZWQgdG8gcnVuIHRoaXMgY29tbWFuZCBmcm9tIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlLiIKIG1zZ3N0ciAiQuG6oW4gY+G6p24gY2jhuqF5IGzhu4duaCBuw6B5IHThu6sgdGjGsCBt4bulYyDhu58gbeG7qWMgY2FvIG5o4bqldCBj4bunYSBjw6J5IGzDoG0gdmnhu4djLiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjM3NworIzogZ2l0LXNoLXNldHVwLnNoOjM3OAogbXNnaWQgIlVuYWJsZSB0byBkZXRlcm1pbmUgYWJzb2x1dGUgcGF0aCBvZiBnaXQgZGlyZWN0b3J5IgogbXNnc3RyICJLaMO0bmcgdGjhu4MgZMOyIHTDrG0gxJHGsOG7nW5nIGThuqtuIHR1eeG7h3QgxJHhu5FpIGPhu6dhIHRoxrAgbeG7pWMgZ2l0IgogCiAjLiBUUkFOU0xBVE9SUzogeW91IGNhbiBhZGp1c3QgdGhpcyB0byBhbGlnbiAiZ2l0IGFkZCAtaSIgc3RhdHVzIG1lbnUKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTk2CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIlMTJzICUxMnMgJXMiCiBtc2dzdHIgIiUxMnMgJTEycyAlcyIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJzdGFnZWQiCi1tc2dzdHIgIsSRw6MgxJHGsGEgbMOqbiBi4buHIHBow7NuZyIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJ1bnN0YWdlZCIKLW1zZ3N0ciAiY2jGsGEgxJHGsGEgbMOqbiBi4buHIHBow7NuZyIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyNTMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyNzgKLW1zZ2lkICJiaW5hcnkiCi1tc2dzdHIgIm5o4buLIHBow6JuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxNgotbXNnaWQgIm5vdGhpbmciCi1tc2dzdHIgImtow7RuZyBjw7MgZ8OsIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxMwotbXNnaWQgInVuY2hhbmdlZCIKLW1zZ3N0ciAia2jDtG5nIHRoYXkgxJHhu5VpIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYwOQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJhZGRlZCAlZCBwYXRoXG4iCi1tc2dpZF9wbHVyYWwgImFkZGVkICVkIHBhdGhzXG4iCi1tc2dzdHJbMF0gIsSRw6MgdGjDqm0gJWQgxJHGsOG7nW5nIGThuqtuXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjEyCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgInVwZGF0ZWQgJWQgcGF0aFxuIgotbXNnaWRfcGx1cmFsICJ1cGRhdGVkICVkIHBhdGhzXG4iCi1tc2dzdHJbMF0gIsSRw6MgY+G6rXAgbmjhuq10ICVkIMSRxrDhu51uZyBk4bqrblxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYxNQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJyZXZlcnRlZCAlZCBwYXRoXG4iCi1tc2dpZF9wbHVyYWwgInJldmVydGVkICVkIHBhdGhzXG4iCi1tc2dzdHJbMF0gIsSRw6MgaG/DoG4gbmd1ecOqbiAlZCDEkcaw4budbmcgZOG6q25cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjM0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgInRvdWNoZWQgJWQgcGF0aFxuIgogbXNnaWRfcGx1cmFsICJ0b3VjaGVkICVkIHBhdGhzXG4iCiBtc2dzdHJbMF0gIiVkIMSRxrDhu51uZyBk4bqrbiDEkcOjIHRvdWNoIChjaOG6oW0pXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjI3Ci1tc2dpZCAiVXBkYXRlIgotbXNnc3RyICJD4bqtcCBuaOG6rXQiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjM5Ci1tc2dpZCAiUmV2ZXJ0IgotbXNnc3RyICJIb8OgbiBuZ3V5w6puIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY2MgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJub3RlOiAlcyBpcyB1bnRyYWNrZWQgbm93LlxuIgotbXNnc3RyICJjaMO6IMO9OiAlcyBnaeG7nSDEkcOjIGLhu48gdGhlbyBkw7VpLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY3MwotbXNnaWQgIkFkZCB1bnRyYWNrZWQiCi1tc2dzdHIgIlRow6ptIGPDoWMgY8OhaSBjaMawYSDEkcaw4bujYyB0aGVvIGTDtWkiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Njc5Ci1tc2dpZCAiTm8gdW50cmFja2VkIGZpbGVzLlxuIgotbXNnc3RyICJLaMO0bmcgY8OzIHThuq1wIHRpbiBuw6BvIGNoxrBhIMSRxrDhu6NjIHRoZW8gZMO1aS5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDMzCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTMKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHN0YWdpbmcuIgogbXNnc3RyICIiCi0iTuG6v3UgbWnhur9uZyB2w6EgxJHGsOG7o2Mgw6FwIGThu6VuZyBz4bqhY2ggc+G6vSwgaHVuayDEkcOjIHPhu61hIHPhur0gbmdheSBs4bqtcCB04bupY1xuIgorIk7hur91IG1p4bq/bmcgdsOhIMSRxrDhu6NjIMOhcCBk4bulbmcgc+G6oWNoIHPhur0sIGtow7pjIMSRw6Mgc+G7rWEgc+G6vSBuZ2F5IGzhuq1wIHThu6ljXG4iCiAixJHGsOG7o2MgxJHDoW5oIGThuqV1IMSR4buDIGNodXnhu4NuIGzDqm4gYuG7hyBwaMOzbmcuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwMzYKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA1NgogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3Igc3Rhc2hpbmcuIgogbXNnc3RyICIiCi0iTuG6v3UgbWnhur9uZyB2w6EgxJHGsOG7o2Mgw6FwIGThu6VuZyBz4bqhY2ggc+G6vSwgaHVuayDEkcOjIHPhu61hIHPhur0gbmdheSBs4bqtcCB04bupY1xuIgorIk7hur91IG1p4bq/bmcgdsOhIMSRxrDhu6NjIMOhcCBk4bulbmcgc+G6oWNoIHPhur0sIGtow7pjIMSRw6Mgc+G7rWEgc+G6vSBuZ2F5IGzhuq1wIHThu6ljXG4iCiAixJHGsOG7o2MgxJHDoW5oIGThuqV1IMSR4buDIHThuqFtIGPhuqV0LiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDM5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTkKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHVuc3RhZ2luZy4iCiBtc2dzdHIgIiIKLSJO4bq/dSBtaeG6v25nIHbDoSDEkcaw4bujYyDDoXAgZOG7pW5nIHPhuqFjaCBz4bq9LCBodW5rIMSRw6Mgc+G7rWEgc+G6vSBuZ2F5IGzhuq1wIHThu6ljXG4iCisiTuG6v3UgbWnhur9uZyB2w6EgxJHGsOG7o2Mgw6FwIGThu6VuZyBz4bqhY2ggc+G6vSwga2jDumMgxJHDoyBz4butYSBz4bq9IG5nYXkgbOG6rXAgdOG7qWNcbiIKICLEkcaw4bujYyDEkcOhbmggZOG6pXUgxJHhu4MgYuG7jyBjaHV54buDbiBsw6puIGLhu4cgcGjDs25nLiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDQyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA1MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDYyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA3MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDc3CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBhcHBseWluZy4iCiBtc2dzdHIgIiIKLSJO4bq/dSBtaeG6v25nIHbDoSDEkcaw4bujYyDDoXAgZOG7pW5nIHPhuqFjaCBz4bq9LCBodW5rIMSRw6Mgc+G7rWEgc+G6vSBuZ2F5IGzhuq1wIHThu6ljXG4iCisiTuG6v3UgbWnhur9uZyB2w6EgxJHGsOG7o2Mgw6FwIGThu6VuZyBz4bqhY2ggc+G6vSwga2jDumMgxJHDoyBz4butYSBz4bq9IG5nYXkgbOG6rXAgdOG7qWNcbiIKICLEkcaw4bujYyDEkcOhbmggZOG6pXUgxJHhu4Mgw6FwIGThu6VuZy4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA0NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNDgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA2NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNjgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA3NAogbXNnaWQgIiIKICJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZVxuIgogIm1hcmtlZCBmb3IgZGlzY2FyZGluZy4iCiBtc2dzdHIgIiIKLSJO4bq/dSBtaeG6v25nIHbDoSDEkcaw4bujYyDDoXAgZOG7pW5nIHPhuqFjaCBz4bq9LCBodW5rIMSRw6Mgc+G7rWEgc+G6vSBuZ2F5IGzhuq1wIHThu6ljXG4iCisiTuG6v3UgbWnhur9uZyB2w6EgxJHGsOG7o2Mgw6FwIGThu6VuZyBz4bqhY2ggc+G6vSwga2jDumMgxJHDoyBz4butYSBz4bq9IG5nYXkgbOG6rXAgdOG7qWNcbiIKICLEkcaw4bujYyDEkcOhbmggZOG6pXUgxJHhu4MgbG/huqFpIGLhu48uIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwODUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExMQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3Igd3JpdGluZzogJXMiCi1tc2dzdHIgImfhurdwIGzhu5dpIGtoaSB04bqtcCB0aW4gc+G7rWEgaHVuayDEkeG7gyBnaGk6ICVzIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgdOG6rXAgdGluIHPhu61hIGtow7pjIMSR4buDIGdoaTogJXMiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA4NgotbXNnaWQgIk1hbnVhbCBodW5rIGVkaXQgbW9kZSAtLSBzZWUgYm90dG9tIGZvciBhIHF1aWNrIGd1aWRlLlxuIgotbXNnc3RyICJDaOG6vyDEkeG7mSBz4butYSBodW5rIGLhurFuZyB0YXkgLS0geGVtIOG7nyDEkcOheSDEkeG7gyBjw7MgaMaw4bubbmcgZOG6q24gc+G7rSBk4bulbmcgbmhhbmguXG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA5MgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTE4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICItLS1cbiIKQEAgLTIwNDE1LDM2ICsyNDAxNywxMiBAQAogIsSQ4buDIHjDs2EgYuG7jyBkw7JuZyDigJwlc+KAnSwgeMOzYSBjaMO6bmcgxJFpLlxuIgogIk5o4buvbmcgZMOybmcgYuG6r3QgxJHhuqd1IGLhurFuZyAlcyBz4bq9IGLhu4sgbG/huqFpIGLhu48uXG4iCiAKLSMuIFRSQU5TTEFUT1JTOiAnaXQnIHJlZmVycyB0byB0aGUgcGF0Y2ggbWVudGlvbmVkIGluIHRoZSBwcmV2aW91cyBtZXNzYWdlcy4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTEwMAotbXNnaWQgIiIKLSJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSBnaXZlbiBhbiBvcHBvcnR1bml0eSB0b1xuIgotImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlIHJlbW92ZWQsIHRoZW4gdGhlIGVkaXQgaXNcbiIKLSJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIKLW1zZ3N0ciAiIgotIk7hur91IG1p4bq/bmcgdsOhIGtow7RuZyDEkcaw4bujYyDDoXAgZOG7pW5nIHPhuqFjaCBz4bq9LCBi4bqhbiBz4bq9IGPDsyBt4buZdCBjxqEgaOG7mWlcbiIKLSLEkeG7gyBz4butYSBs4bqnbiBu4buvYS4gTuG6v3UgbeG7jWkgZMOybmcgY+G7p2EgaHVuayBi4buLIHjDs2EgYuG7jywgdGjhur8gdGjDrCBuaOG7r25nXG4iCi0ic+G7rWEgZOG7lWkgc+G6vSBi4buLIGxv4bqhaSBi4buPLCB2w6AgaHVuayB24bqrbiBnaeG7ryBuZ3V5w6puLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTE0MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3IgcmVhZGluZzogJXMiCi1tc2dzdHIgImfhurdwIGzhu5dpIGtoaSBt4bufIHThuq1wIHRpbiBodW5rIMSR4buDIMSR4buNYzogJXMiCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSBt4bufIHThuq1wIHRpbiBraMO6YyDEkeG7gyDEkeG7jWM6ICVzIgogCi0jLiBUUkFOU0xBVE9SUzogZG8gbm90IHRyYW5zbGF0ZSBbeS9uXQotIy4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCB0aGF0IGlucHV0Ci0jLiBhdCB0aGlzIHBvaW50LgotIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKLSMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCi0jLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIxMwotbXNnaWQgIiIKLSJZb3VyIGVkaXRlZCBodW5rIGRvZXMgbm90IGFwcGx5LiBFZGl0IGFnYWluIChzYXlpbmcgXCJub1wiIGRpc2NhcmRzISkgW3kvbl0/ICIKLW1zZ3N0ciAiIgotIkh1bmsgxJHDoyBz4butYSBj4bunYSBi4bqhbiBraMO0bmcgxJHGsOG7o2Mgw6FwIGThu6VuZy4gU+G7rWEgbOG6oWkgbOG6p24gbuG7r2EgKG7Ds2kgXCJuXCIgxJHhu4MgbG/huqFpICIKLSJi4buPISkgW3kvbl0/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjIyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNDgKIG1zZ2lkICIiCiAieSAtIHN0YWdlIHRoaXMgaHVua1xuIgogIm4gLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rXG4iCkBAIC0yMDQ1MiwxNCArMjQwMzAsMTQgQEAKICJhIC0gc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKICJkIC0gZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgogbXNnc3RyICIiCi0ieSAtIMSRxrBhIGzDqm4gYuG7hyBwaMOzbmcgaHVuayBuw6B5XG4iCi0ibiAtIMSR4burbmcgxJHGsGEgbMOqbiBi4buHIHBow7NuZyBodW5rIG7DoHlcbiIKLSJxIC0gdGhvw6F0OyDEkeG7q25nIMSRxrBhIGzDqm4gYuG7hyBwaMOzbmcgaHVuayBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaVxuIgotImEgLSDEkcawYSBsw6puIGLhu4cgcGjDs25nIGh1bmsgbsOgeSB2w6AgdOG6pXQgY+G6oyBjw6FjIGh1bmsgc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluXG4iCi0iZCAtIMSR4burbmcgxJHGsGEgbMOqbiBi4buHIHBow7NuZyBodW5rIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBjw7JuIGzhuqFpIHRyb25nIHThuq1wICIKKyJ5IC0gxJHGsGEgbMOqbiBi4buHIHBow7NuZyBraMO6YyBuw6B5XG4iCisibiAtIMSR4burbmcgxJHGsGEgbMOqbiBi4buHIHBow7NuZyBraMO6YyBuw6B5XG4iCisicSAtIHRob8OhdDsgxJHhu6tuZyDEkcawYSBsw6puIGLhu4cgcGjDs25nIGtow7pjIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBjw7JuIGzhuqFpXG4iCisiYSAtIMSRxrBhIGzDqm4gYuG7hyBwaMOzbmcga2jDumMgbsOgeSB2w6AgdOG6pXQgY+G6oyBjw6FjIGtow7pjIHNhdSBuw6B5IHRyb25nIHThuq1wIHRpblxuIgorImQgLSDEkeG7q25nIMSRxrBhIGzDqm4gYuG7hyBwaMOzbmcga2jDumMgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIGPDsm4gbOG6oWkgdHJvbmcgdOG6rXAgIgogInRpbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjI4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNTQKIG1zZ2lkICIiCiAieSAtIHN0YXNoIHRoaXMgaHVua1xuIgogIm4gLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rXG4iCkBAIC0yMDQ2NywxMyArMjQwNDUsMTMgQEAKICJhIC0gc3Rhc2ggdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKICJkIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgogbXNnc3RyICIiCi0ieSAtIHThuqFtIGPhuqV0IGh1bmsgbsOgeVxuIgotIm4gLSDEkeG7q25nIHThuqFtIGPhuqV0IGh1bmsgbsOgeVxuIgotInEgLSB0aG/DoXQ7IMSR4burbmcgdOG6oW0gY+G6pXQgaHVuayBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaVxuIgotImEgLSB04bqhbSBj4bqldCBodW5rIG7DoHkgdsOgIHThuqV0IGPhuqMgY8OhYyBodW5rIHNhdSBuw6B5IHRyb25nIHThuq1wIHRpblxuIgotImQgLSDEkeG7q25nIHThuqFtIGPhuqV0IGh1bmsgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIGPDsm4gbOG6oWkgdHJvbmcgdOG6rXAgdGluIgorInkgLSB04bqhbSBj4bqldCBraMO6YyBuw6B5XG4iCisibiAtIMSR4burbmcgdOG6oW0gY+G6pXQga2jDumMgbsOgeVxuIgorInEgLSB0aG/DoXQ7IMSR4burbmcgdOG6oW0gY+G6pXQga2jDumMgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIGPDsm4gbOG6oWlcbiIKKyJhIC0gdOG6oW0gY+G6pXQga2jDumMgbsOgeSB2w6AgdOG6pXQgY+G6oyBjw6FjIGtow7pjIHNhdSBuw6B5IHRyb25nIHThuq1wIHRpblxuIgorImQgLSDEkeG7q25nIHThuqFtIGPhuqV0IGtow7pjIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBjw7JuIGzhuqFpIHRyb25nIHThuq1wIHRpbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjM0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNjAKIG1zZ2lkICIiCiAieSAtIHVuc3RhZ2UgdGhpcyBodW5rXG4iCiAibiAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVua1xuIgpAQCAtMjA0ODEsMTUgKzI0MDU5LDE1IEBACiAiYSAtIHVuc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKICJkIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCiBtc2dzdHIgIiIKLSJ5IC0gxJHGsGEgcmEga2jhu49pIGLhu4cgcGjDs25nIGh1bmsgbsOgeVxuIgotIm4gLSDEkeG7q25nIMSRxrBhIHJhIGto4buPaSBi4buHIHBow7NuZyBodW5rIG7DoHlcbiIKLSJxIC0gdGhvw6F0OyDEkeG7q25nIMSRxrBhIHJhIGto4buPaSBi4buHIHBow7NuZyBodW5rIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBjw7JuICIKKyJ5IC0gxJHGsGEgcmEga2jhu49pIGLhu4cgcGjDs25nIGtow7pjIG7DoHlcbiIKKyJuIC0gxJHhu6tuZyDEkcawYSByYSBraOG7j2kgYuG7hyBwaMOzbmcga2jDumMgbsOgeVxuIgorInEgLSB0aG/DoXQ7IMSR4burbmcgxJHGsGEgcmEga2jhu49pIGLhu4cgcGjDs25nIGtow7pjIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBjw7JuICIKICJs4bqhaVxuIgotImEgLSDEkcawYSByYSBraOG7j2kgYuG7hyBwaMOzbmcgaHVuayBuw6B5IHbDoCB04bqldCBj4bqjIGPDoWMgaHVuayBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW5cbiIKLSJkIC0gxJHhu6tuZyDEkcawYSByYSBraOG7j2kgYuG7hyBwaMOzbmcgaHVuayBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaSB0cm9uZyAiCisiYSAtIMSRxrBhIHJhIGto4buPaSBi4buHIHBow7NuZyBraMO6YyBuw6B5IHbDoCB04bqldCBj4bqjIGPDoWMga2jDumMgc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluXG4iCisiZCAtIMSR4burbmcgxJHGsGEgcmEga2jhu49pIGLhu4cgcGjDs25nIGtow7pjIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBjw7JuIGzhuqFpIHRyb25nICIKICJ04bqtcCB0aW4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjY2CiBtc2dpZCAiIgogInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKICJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgpAQCAtMjA0OTcsMTMgKzI0MDc1LDEzIEBACiAiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCiAiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKIG1zZ3N0ciAiIgotInkgLSDDoXAgZOG7pW5nIGh1bmsgbsOgeSB2w6BvIG3hu6VjIGzhu6VjXG4iCi0ibiAtIMSR4burbmcgw6FwIGThu6VuZyBodW5rIG7DoHkgdsOgbyBt4bulYyBs4bulY1xuIgotInEgLSB0aG/DoXQ7IMSR4burbmcgw6FwIGThu6VuZyBodW5rIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBjw7JuIGzhuqFpXG4iCi0iYSAtIMOhcCBk4bulbmcgaHVuayBuw6B5IHbDoCB04bqldCBj4bqjIGPDoWMgaHVuayBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW5cbiIKLSJkIC0gxJHhu6tuZyDDoXAgZOG7pW5nIGh1bmsgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIHNhdSBuw6B5IHRyb25nIHThuq1wIHRpbiIKKyJ5IC0gw6FwIGThu6VuZyBraMO6YyBuw6B5IHbDoG8gbeG7pWMgbOG7pWNcbiIKKyJuIC0gxJHhu6tuZyDDoXAgZOG7pW5nIGtow7pjIG7DoHkgdsOgbyBt4bulYyBs4bulY1xuIgorInEgLSB0aG/DoXQ7IMSR4burbmcgw6FwIGThu6VuZyBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaVxuIgorImEgLSDDoXAgZOG7pW5nIGtow7pjIG7DoHkgdsOgIHThuqV0IGPhuqMgY8OhYyBraMO6YyBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW5cbiIKKyJkIC0gxJHhu6tuZyDDoXAgZOG7pW5nIGtow7pjIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0NgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5MAogbXNnaWQgIiIKICJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgogIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgpAQCAtMjA1MTEsMTMgKzI0MDg5LDEzIEBACiAiYSAtIGRpc2NhcmQgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKICJkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCiBtc2dzdHIgIiIKLSJ5IC0gbG/huqFpIGLhu48gaHVuayBuw6B5IGto4buPaSBjw6J5IGzDoG0gdmnhu4djXG4iCi0ibiAtIMSR4burbmcgbG/huqFpIGLhu48gaHVuayBraOG7j2kgY8OieSBsw6BtIHZp4buHY1xuIgotInEgLSB0aG/DoXQ7IMSR4burbmcgbG/huqFpIGLhu48gaHVuayBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaVxuIgotImEgLSBsb+G6oWkgYuG7jyBodW5rIG7DoHkgdsOgIHThuqV0IGPhuqMgY8OhYyBodW5rIHNhdSBuw6B5IHRyb25nIHThuq1wIHRpblxuIgotImQgLSDEkeG7q25nIGxv4bqhaSBi4buPIGh1bmsgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIHNhdSBuw6B5IHRyb25nIHThuq1wIHRpbiIKKyJ5IC0gbG/huqFpIGLhu48ga2jDumMgbsOgeSBraOG7j2kgY8OieSBsw6BtIHZp4buHY1xuIgorIm4gLSDEkeG7q25nIGxv4bqhaSBi4buPIGtow7pjIGto4buPaSBjw6J5IGzDoG0gdmnhu4djXG4iCisicSAtIHRob8OhdDsgxJHhu6tuZyBsb+G6oWkgYuG7jyBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaVxuIgorImEgLSBsb+G6oWkgYuG7jyBraMO6YyBuw6B5IHbDoCB04bqldCBj4bqjIGPDoWMga2jDumMgc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluXG4iCisiZCAtIMSR4burbmcgbG/huqFpIGLhu48ga2jDumMgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIHNhdSBuw6B5IHRyb25nIHThuq1wIHRpbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjUyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNzgKIG1zZ2lkICIiCiAieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCiAibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgpAQCAtMjA1MjUsMTMgKzI0MTAzLDEzIEBACiAiYSAtIGRpc2NhcmQgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKICJkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCiBtc2dzdHIgIiIKLSJ5IC0gbG/huqFpIGLhu48gaHVuayBuw6B5IGto4buPaSBt4bulYyBs4bulYyB2w6AgY8OieSBsw6BtIHZp4buHY1xuIgotIm4gLSDEkeG7q25nIGxv4bqhaSBi4buPIGh1bmsga2jhu49pIG3hu6VjIGzhu6VjIHbDoCBjw6J5IGzDoG0gdmnhu4djXG4iCi0icSAtIHRob8OhdDsgxJHhu6tuZyBsb+G6oWkgYuG7jyBodW5rIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBjw7JuIGzhuqFpXG4iCi0iYSAtIGxv4bqhaSBi4buPIGh1bmsgbsOgeSB2w6AgdOG6pXQgY+G6oyBjw6FjIGh1bmsgc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluXG4iCi0iZCAtIMSR4burbmcgbG/huqFpIGLhu48gaHVuayBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluIgorInkgLSBsb+G6oWkgYuG7jyBraMO6YyBuw6B5IGto4buPaSBt4bulYyBs4bulYyB2w6AgY8OieSBsw6BtIHZp4buHY1xuIgorIm4gLSDEkeG7q25nIGxv4bqhaSBi4buPIGtow7pjIGto4buPaSBt4bulYyBs4bulYyB2w6AgY8OieSBsw6BtIHZp4buHY1xuIgorInEgLSB0aG/DoXQ7IMSR4burbmcgbG/huqFpIGLhu48ga2jDumMgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIGPDsm4gbOG6oWlcbiIKKyJhIC0gbG/huqFpIGLhu48ga2jDumMgbsOgeSB2w6AgdOG6pXQgY+G6oyBjw6FjIGtow7pjIHNhdSBuw6B5IHRyb25nIHThuq1wIHRpblxuIgorImQgLSDEkeG7q25nIGxv4bqhaSBi4buPIGtow7pjIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI1OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjg0CiBtc2dpZCAiIgogInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCiAibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlXG4iCkBAIC0yMDUzOSwxMyArMjQxMTcsMjcgQEAKICJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKICJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgogbXNnc3RyICIiCi0ieSAtIMOhcCBk4bulbmcgaHVuayBuw6B5IHbDoG8gbeG7pWMgbOG7pWMgdsOgIGPDonkgbMOgbSB2aeG7h2NcbiIKLSJuIC0gxJHhu6tuZyDDoXAgZOG7pW5nIGh1bmsgdsOgbyBt4bulYyBs4bulYyB2w6AgY8OieSBsw6BtIHZp4buHY1xuIgotInEgLSB0aG/DoXQ7IMSR4burbmcgw6FwIGThu6VuZyBodW5rIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBjw7JuIGzhuqFpXG4iCi0iYSAtIMOhcCBk4bulbmcgaHVuayBuw6B5IHbDoCB04bqldCBj4bqjIGPDoWMgaHVuayBzYXUgbsOgeSB0cm9uZyB04bqtcCB0aW5cbiIKLSJkIC0gxJHhu6tuZyDDoXAgZOG7pW5nIGh1bmsgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIHNhdSBuw6B5IHRyb25nIHThuq1wIHRpbiIKKyJ5IC0gw6FwIGThu6VuZyBraMO6YyBuw6B5IHbDoG8gbeG7pWMgbOG7pWMgdsOgIGPDonkgbMOgbSB2aeG7h2NcbiIKKyJuIC0gxJHhu6tuZyDDoXAgZOG7pW5nIGtow7pjIHbDoG8gbeG7pWMgbOG7pWMgdsOgIGPDonkgbMOgbSB2aeG7h2NcbiIKKyJxIC0gdGhvw6F0OyDEkeG7q25nIMOhcCBk4bulbmcga2jDumMgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIGPDsm4gbOG6oWlcbiIKKyJhIC0gw6FwIGThu6VuZyBraMO6YyBuw6B5IHbDoCB04bqldCBj4bqjIGPDoWMga2jDumMgc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluXG4iCisiZCAtIMSR4burbmcgw6FwIGThu6VuZyBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNzMKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5NgorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSDDoXAgZOG7pW5nIGtow7pjIG7DoHkgdsOgbyBjw6J5IGzDoG0gdmnhu4djXG4iCisibiAtIMSR4burbmcgw6FwIGThu6VuZyBraMO6YyB2w6BvIGPDonkgbMOgbSB2aeG7h2NcbiIKKyJxIC0gdGhvw6F0OyDEkeG7q25nIMOhcCBk4bulbmcga2jDumMgbsOgeSBjxaluZyBuaMawIGLhuqV0IGvhu7MgY8OhaSBuw6BvIGPDsm4gbOG6oWlcbiIKKyJhIC0gw6FwIGThu6VuZyBraMO6YyBuw6B5IHbDoCB04bqldCBj4bqjIGPDoWMga2jDumMgc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluXG4iCisiZCAtIMSR4burbmcgw6FwIGThu6VuZyBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gc2F1IG7DoHkgdHJvbmcgdOG6rXAgdGluIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMTEKIG1zZ2lkICIiCiAiZyAtIHNlbGVjdCBhIGh1bmsgdG8gZ28gdG9cbiIKICIvIC0gc2VhcmNoIGZvciBhIGh1bmsgbWF0Y2hpbmcgdGhlIGdpdmVuIHJlZ2V4XG4iCkBAIC0yMDU1NywyMTkgKzI0MTQ5LDkzIEBACiAiZSAtIG1hbnVhbGx5IGVkaXQgdGhlIGN1cnJlbnQgaHVua1xuIgogIj8gLSBwcmludCBoZWxwXG4iCiBtc2dzdHIgIiIKLSJnIC0gY2jhu41uIG3hu5l0IGh1bmsgbXXhu5FuIHThu5tpXG4iCi0iLyAtIHTDrG0gbeG7mXQgaHVuayBraOG7m3AgduG7m2kgYmnhu4N1IHRo4bupYyBjaMOtbmggcXV5IMSRxrBhIHJhXG4iCi0iaiAtIMSR4buDIGzhuqFpIGh1bmsgbsOgeSBsw6AgY2jGsGEgcXV54bq/dCDEkeG7i25oLCB4ZW0gaHVuayBjaMawYSBxdXnhur90IMSR4buLbmgga+G6v1xuIgotIkogLSDEkeG7gyBs4bqhaSBodW5rIG7DoHkgbMOgIGNoxrBhIHF1eeG6v3QgxJHhu4tuaCwgeGVtIGh1bmsga+G6v1xuIgotImsgLSDEkeG7gyBs4bqhaSBodW5rIG7DoHkgbMOgIGNoxrBhIHF1eeG6v3QgxJHhu4tuaCwgeGVtIGh1bmsgY2jGsGEgcXV54bq/dCDEkeG7i25oIGvhur8gdHLGsOG7m2NcbiIKLSJLIC0gxJHhu4MgbOG6oWkgaHVuayBuw6B5IGzDoCBjaMawYSBxdXnhur90IMSR4buLbmgsIHhlbSBodW5rIGvhur8gdHLGsOG7m2NcbiIKLSJzIC0gY2hpYSBodW5rIGhp4buHbiB04bqhaSB0aMOgbmggY8OhYyBodW5rIG5o4buPIGjGoW5cbiIKLSJlIC0gc+G7rWEgYuG6sW5nIHRheSBodW5rIGhp4buHbiBow6BuaFxuIgorImcgLSBjaOG7jW4gbeG7mXQga2jDumMgbXXhu5FuIHThu5tpXG4iCisiLyAtIHTDrG0gbeG7mXQga2jDumMga2jhu5twIHbhu5tpIGJp4buDdSB0aOG7qWMgY2jDrW5oIHF1eSDEkcawYSByYVxuIgorImogLSDEkeG7gyBs4bqhaSBraMO6YyBuw6B5IGzDoCBjaMawYSBxdXnhur90IMSR4buLbmgsIHhlbSBraMO6YyBjaMawYSBxdXnhur90IMSR4buLbmgga+G6v1xuIgorIkogLSDEkeG7gyBs4bqhaSBraMO6YyBuw6B5IGzDoCBjaMawYSBxdXnhur90IMSR4buLbmgsIHhlbSBraMO6YyBr4bq/XG4iCisiayAtIMSR4buDIGzhuqFpIGtow7pjIG7DoHkgbMOgIGNoxrBhIHF1eeG6v3QgxJHhu4tuaCwgeGVtIGtow7pjIGNoxrBhIHF1eeG6v3QgxJHhu4tuaCBr4bq/IHRyxrDhu5tjXG4iCisiSyAtIMSR4buDIGzhuqFpIGtow7pjIG7DoHkgbMOgIGNoxrBhIHF1eeG6v3QgxJHhu4tuaCwgeGVtIGtow7pjIGvhur8gdHLGsOG7m2NcbiIKKyJzIC0gY2hpYSBraMO6YyBoaeG7h24gdOG6oWkgdGjDoG5oIGPDoWMga2jDumMgbmjhu48gaMahblxuIgorImUgLSBz4butYSBi4bqxbmcgdGF5IGtow7pjIGhp4buHbiBow6BuaFxuIgogIj8gLSBpbiB0cuG7oyBnacO6cFxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMDQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM0MgogbXNnaWQgIlRoZSBzZWxlY3RlZCBodW5rcyBkbyBub3QgYXBwbHkgdG8gdGhlIGluZGV4IVxuIgotbXNnc3RyICJDw6FjIGh1bmsgxJHDoyBjaOG7jW4ga2jDtG5nIMSRxrDhu6NjIMOhcCBk4bulbmcgdsOgbyBi4bqjbmcgbeG7pWMgbOG7pWMhXG4iCittc2dzdHIgIkPDoWMga2jDumMgxJHDoyBjaOG7jW4ga2jDtG5nIMSRxrDhu6NjIMOhcCBk4bulbmcgdsOgbyBi4bqjbmcgbeG7pWMgbOG7pWMhXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwNQotbXNnaWQgIkFwcGx5IHRoZW0gdG8gdGhlIHdvcmt0cmVlIGFueXdheT8gIgotbXNnc3RyICJW4bqrbiDDoXAgZOG7pW5nIGNow7puZyBjaG8gY8OieSBsw6BtIHZp4buHYz8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMDgKLW1zZ2lkICJOb3RoaW5nIHdhcyBhcHBsaWVkLlxuIgotbXNnc3RyICLEkMOjIGtow7RuZyDDoXAgZOG7pW5nIGfDrCBj4bqjLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMTkKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM1NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyB1bm1lcmdlZDogJXNcbiIKIG1zZ3N0ciAiYuG7jyBxdWEgbmjhu69uZyB0aOG7qSBjaMawYSBow7JhIHRy4buZbjogJXNcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzI4Ci1tc2dpZCAiT25seSBiaW5hcnkgZmlsZXMgY2hhbmdlZC5cbiIKLW1zZ3N0ciAiQ2jhu4kgY8OzIGPDoWMgdOG6rXAgdGluIG5o4buLIHBow6JuIGzDoCB0aGF5IMSR4buVaS5cbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzMwCi1tc2dpZCAiTm8gY2hhbmdlcy5cbiIKLW1zZ3N0ciAiS2jDtG5nIGPDsyB0aGF5IMSR4buVaSBuw6BvLlxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMzgKLW1zZ2lkICJQYXRjaCB1cGRhdGUiCi1tc2dzdHIgIkPhuq1wIG5o4bqtdCBtaeG6v25nIHbDoSIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjgKICMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIlRoYXkgxJHhu5VpIGNo4bq/IMSR4buZIGLhu4cgcGjDs25nIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLDgXAgZOG7pW5nIHRoYXkgxJHhu5VpIGNo4bq/IMSR4buZIGNobyBjw6J5IGzDoG0gdmnhu4djIFt5LG4scSxhLGQlcyw/XT8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTEKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2OQogIywgcGVybC1mb3JtYXQKLW1zZ2lkICJTdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiWMOzYSBraOG7j2kgYuG7hyBwaMOzbmcgW3ksbixxLGEsZCVzLD9dPyAiCittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIsOBcCBk4bulbmcgdmnhu4djIHjDs2EgY2hvIGPDonkgbMOgbSB2aeG7h2MgW3ksbixxLGEsZCVzLD9dPyAiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5MgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDcwCiAjLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAixJDGsGEgbMOqbiBi4buHIHBow7NuZyBodW5rIG7DoHkgW3ksbixxLGEsZCVzLD9dPyAiCittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLDgXAgZOG7pW5nIGtow7pjIG7DoHkgdsOgbyBjw6J5IGzDoG0gdmnhu4djIFt5LG4scSxhLGQlcyw/XT8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTUKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3Rhc2ggbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIlRoYXkgxJHhu5VpIGNo4bq/IMSR4buZIHThuqFtIGPhuqV0IMSRaSBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzk2Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YXNoIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJYw7NhIHThuqFtIGPhuqV0IFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTcKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3Rhc2ggdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJU4bqhbSBj4bqldCBodW5rIG7DoHkgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwMAotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJVbnN0YWdlIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJUaGF5IMSR4buVaSBjaOG6vyDEkeG7mSBi4buPIHJhIGto4buPaSBi4buHIHBow7NuZyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDAxCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlVuc3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIljDs2EgYuG7jyB2aeG7h2MgYuG7jyByYSBraOG7j2kgYuG7hyBwaMOzbmcgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwMgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJVbnN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiQuG7jyByYSBraOG7j2kgYuG7hyBwaMOzbmcgaHVuayBuw6B5IFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDUKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIsOBcCBk4bulbmcgdGhheSDEkeG7lWkgY2jhur8gxJHhu5kgY2hvIG3hu6VjIGzhu6VjIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDYKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIsOBcCBk4bulbmcgdmnhu4djIHjDs2EgdsOgbyBt4bulYyBs4bulYyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDA3Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiw4FvIGThu6VuZyBodW5rIG7DoHkgdsOgbyBt4bulYyBs4bulYyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDEwCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiTG/huqFpIGLhu48gY8OhYyB0aGF5IMSR4buVaSBjaOG6vyDEkeG7mSB04burIGPDonkgbMOgbSB2aeG7h2MgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxMQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkxv4bqhaSBi4buPIHZp4buHYyB4w7NhIGto4buPaSBjw6J5IGzDoG0gdmnhu4djIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiTG/huqFpIGLhu48gaHVuayBuw6B5IGto4buPaSBjw6J5IGzDoG0gdmnhu4djIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTUKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiTG/huqFpIGLhu48gdGhheSDEkeG7lWkgY2jhur8gxJHhu5kgdOG7qyBt4bulYyBs4bulYyB2w6AgY8OieSBsw6BtIHZp4buHYyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE2Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIkxv4bqhaSBi4buPIHZp4buHYyB4w7NhIGto4buPaSBt4bulYyBs4bulYyB2w6AgY8OieSBsw6BtIHZp4buHYyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDE3Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICJMb+G6oWkgYuG7jyBodW5rIG7DoHkga2jhu49pIG3hu6VjIGzhu6VjIHbDoCBjw6J5IGzDoG0gdmnhu4djIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjAKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLDgXAgZOG7pW5nIHRoYXkgxJHhu5VpIGNo4bq/IMSR4buZIGNobyBt4bulYyBs4bulYyB2w6AgY8OieSBsw6BtIHZp4buHYyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDIxCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiw4FwIGThu6VuZyB2aeG7h2MgeMOzYSB2w6BvIG3hu6VjIGzhu6VjIHbDoCBjw6J5IGzDoG0gdmnhu4djIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjIKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAiw4FwIGThu6VuZyBodW5rIG7DoHkgdsOgbyBt4bulYyBs4bulYyB2w6AgY8OieSBsw6BtIHZp4buHYyBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTIyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzAKIG1zZ2lkICJObyBvdGhlciBodW5rcyB0byBnb3RvXG4iCi1tc2dzdHIgIktow7RuZyBjw7JuIGh1bmsgbsOgbyDEkeG7gyBtw6AgbmjhuqN5IMSR4bq/blxuIgorbXNnc3RyICJLaMO0bmcgY8OybiBraMO6YyBuw6BvIMSR4buDIG3DoCBuaOG6o3kgxJHhur9uXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTUyOQotbXNnaWQgImdvIHRvIHdoaWNoIGh1bmsgKDxyZXQ+IHRvIHNlZSBtb3JlKT8gIgotbXNnc3RyICJuaOG6o3kgxJHhur9uIGh1bmsgbsOgbyAoPHJldD4gxJHhu4MgeGVtIHRow6ptKT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MzEKLW1zZ2lkICJnbyB0byB3aGljaCBodW5rPyAiCi1tc2dzdHIgIm5o4bqjeSDEkeG6v24gaHVuayBuw6BvPyIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1ODgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBudW1iZXI6ICclcydcbiIKIG1zZ3N0ciAiU+G7kSBraMO0bmcgaOG7o3AgbOG7hzog4oCcJXPigJ1cbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQ1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1OTMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU29ycnksIG9ubHkgJWQgaHVuayBhdmFpbGFibGUuXG4iCiBtc2dpZF9wbHVyYWwgIlNvcnJ5LCBvbmx5ICVkIGh1bmtzIGF2YWlsYWJsZS5cbiIKLW1zZ3N0clswXSAiUuG6pXQgdGnhur9jLCBjaOG7iSBjw7Mgc+G6tW4gJWQgaHVuay4uXG4iCittc2dzdHJbMF0gIlLhuqV0IHRp4bq/YywgY2jhu4kgY8OzIHPhurVuICVkIGtow7pjLlxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzEKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxOQogbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIHNlYXJjaFxuIgotbXNnc3RyICJLaMO0bmcgY8OybiBodW5rIG7DoG8gxJHhu4MgbcOgIHTDrG0ga2nhur9tXG4iCittc2dzdHIgIktow7RuZyBjw7JuIGtow7pjIG7DoG8gxJHhu4MgbcOgIHTDrG0ga2nhur9tXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3NQotbXNnaWQgInNlYXJjaCBmb3IgcmVnZXg/ICIKLW1zZ3N0ciAidMOsbSBraeG6v20gY2hvIHJlZ2V4PyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU4OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjM2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIk1hbGZvcm1lZCBzZWFyY2ggcmVnZXhwICVzOiAlc1xuIgogbXNnc3RyICLEkOG7i25oIGThuqFuZyB0w6xtIGtp4bq/bSBj4bunYSBiaeG7g3UgdGjhu6ljIGNow61uaCBxdXkga2jDtG5nIMSRw7puZyAlczogJXNcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTk4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NDYKIG1zZ2lkICJObyBodW5rIG1hdGNoZXMgdGhlIGdpdmVuIHBhdHRlcm5cbiIKLW1zZ3N0ciAiS2jDtG5nIHRo4bqleSBodW5rIG7DoG8ga2jhu5twIG3huqt1IMSRw6MgY2hvXG4iCittc2dzdHIgIktow7RuZyB0aOG6pXkga2jDumMgbsOgbyBraOG7m3AgbeG6q3UgxJHDoyBjaG9cbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjEwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYzMgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjU4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY4MAogbXNnaWQgIk5vIHByZXZpb3VzIGh1bmtcbiIKLW1zZ3N0ciAiS2jDtG5nIGPDsyBodW5rIGvhur8gdHLGsOG7m2NcbiIKK21zZ3N0ciAiS2jDtG5nIGPDsyBraMO6YyBr4bq/IHRyxrDhu5tjXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MzgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY2NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2ODYKIG1zZ2lkICJObyBuZXh0IGh1bmtcbiIKLW1zZ3N0ciAiS2jDtG5nIGPDsyBodW5rIGvhur8gdGnhur9wXG4iCittc2dzdHIgIktow7RuZyBjw7Mga2jDumMga+G6vyB0aeG6v3BcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjQ0CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2OTIKIG1zZ2lkICJTb3JyeSwgY2Fubm90IHNwbGl0IHRoaXMgaHVua1xuIgotbXNnc3RyICJS4bqldCB0aeG6v2MsIGtow7RuZyB0aOG7gyBjaGlhIG5o4buPIGh1bmsgbsOgeVxuIgorbXNnc3RyICJS4bqldCB0aeG6v2MsIGtow7RuZyB0aOG7gyBjaGlhIG5o4buPIGtow7pjIG7DoHlcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjUwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2OTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU3BsaXQgaW50byAlZCBodW5rLlxuIgogbXNnaWRfcGx1cmFsICJTcGxpdCBpbnRvICVkIGh1bmtzLlxuIgotbXNnc3RyWzBdICJDaGkgbmjhu48gdGjDoG5oICVkIGh1bmtzLlxuIgorbXNnc3RyWzBdICJDaGkgbmjhu48gdGjDoG5oICVkIGtow7pjLlxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NjAKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcwOAogbXNnaWQgIlNvcnJ5LCBjYW5ub3QgZWRpdCB0aGlzIGh1bmtcbiIKLW1zZ3N0ciAiUuG6pXQgdGnhur9jLCBraMO0bmcgdGjhu4Mgc+G7rWEgaHVuayBuw6B5XG4iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcwNgotbXNnaWQgIlJldmlldyBkaWZmIgotbXNnc3RyICJYZW0geMOpdCBs4bqhaSBkaWZmIgorbXNnc3RyICJS4bqldCB0aeG6v2MsIGtow7RuZyB0aOG7gyBz4butYSBraMO6YyBuw6B5XG4iCiAKICMuIFRSQU5TTEFUT1JTOiBwbGVhc2UgZG8gbm90IHRyYW5zbGF0ZSB0aGUgY29tbWFuZCBuYW1lcwogIy4gJ3N0YXR1cycsICd1cGRhdGUnLCAncmV2ZXJ0JywgZXRjLgotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzI1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NzMKIG1zZ2lkICIiCiAic3RhdHVzICAgICAgICAtIHNob3cgcGF0aHMgd2l0aCBjaGFuZ2VzXG4iCiAidXBkYXRlICAgICAgICAtIGFkZCB3b3JraW5nIHRyZWUgc3RhdGUgdG8gdGhlIHN0YWdlZCBzZXQgb2YgY2hhbmdlc1xuIgpAQCAtMjA3ODQsMjMgKzI0MjUwLDI0IEBACiAixJHhurd0IGzDqm4gYuG7hyBwaMOzbmdcbiIKICJyZXZlcnQgICAgICAgIC0gaG/DoG4gbmd1ecOqbiB04bqtcCBo4bujcCBjw6FjIHRoYXkgxJHhu5VpIMSRw6MgxJHhurd0IGzDqm4gYuG7hyBwaMOzbmcgdHLhu58gbOG6oWkgIgogInBoacOqbiBi4bqjbiBIRUFEXG4iCi0icGF0Y2ggICAgICAgICAtIGPhuq15IGPDoWMgaHVuayB2w6AgY+G6rXAgbmjhuq10IGPDsyBs4buxYSBjaOG7jW5cbiIKKyJwYXRjaCAgICAgICAgIC0gY+G6rXkgY8OhYyBraMO6YyB2w6AgY+G6rXAgbmjhuq10IGPDsyBs4buxYSBjaOG7jW5cbiIKICJkaWZmXHQgICAgICAtIHhlbSBraMOhYyBiaeG7h3QgZ2nhu69hIEhFQUQgdsOgIG3hu6VjIGzhu6VjXG4iCiAiYWRkIHVudHJhY2tlZCAtIHRow6ptIG7hu5lpIGR1bmcgY8OhYyBjw6FjIHThuq1wIHRpbiBjaMawYSB0aGVvIGTDtWkgdsOgIHThuq1wIGjhu6NwIGPDoWMgIgogInRoYXkgxJHhu5VpIMSRw6MgxJHhurd0IGzDqm4gYuG7hyBwaMOzbmdcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzQyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc0NwotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzUwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1NwotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzYxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2NworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzkwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5NQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzk4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgwNQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODA4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgxNQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODE5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyNQogbXNnaWQgIm1pc3NpbmcgLS0iCiBtc2dzdHIgInRoaeG6v3UgLS0iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2MworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODIxCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgInVua25vd24gLS1wYXRjaCBtb2RlOiAlcyIKIG1zZ3N0ciAia2jDtG5nIGhp4buDdSBjaOG6vyDEkeG7mSAtLXBhdGNoOiAlcyIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzY5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc3NQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODI3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgzMwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGFyZ3VtZW50ICVzLCBleHBlY3RpbmcgLS0iCiBtc2dzdHIgIsSR4buRaSBz4buRIGtow7RuZyBo4bujcCBs4buHICVzLCBj4bqnbiAtLSIKQEAgLTIwODEzLDMwICsyNDI4MCwzMCBAQAogbXNnaWQgImxvY2FsIHRpbWUgb2Zmc2V0IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAyNCBob3Vyc1xuIgogbXNnc3RyICJraG/huqNuZyBiw7kgdGjhu51pIGdpYW4gbuG7mWkgYuG7mSBs4bubbiBoxqFuIGhv4bq3YyBi4bqxbmcgMjQgZ2nhu51cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoyMTkgZ2l0LXNlbmQtZW1haWwucGVybDoyMjUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjIzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MjI5CiBtc2dpZCAidGhlIGVkaXRvciBleGl0ZWQgdW5jbGVhbmx5LCBhYm9ydGluZyBldmVyeXRoaW5nIgogbXNnc3RyICJ0csOsbmggc2/huqFuIHRo4bqjbyB0aG/DoXQga2jDtG5nIHPhuqFjaCBz4bq9LCBiw6NpIGLhu48gbeG7jWkgdGjhu6kiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzAyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMxMAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiJyVzJyBjb250YWlucyBhbiBpbnRlcm1lZGlhdGUgdmVyc2lvbiBvZiB0aGUgZW1haWwgeW91IHdlcmUgY29tcG9zaW5nLlxuIgogbXNnc3RyICLigJwlc+KAnSBjw7MgY2jGsGEgbeG7mXQgcGhpw6puIGLhuqNuIHRydW5nIGdpYW4gY+G7p2EgdGjGsCBi4bqhbiDEkcOjIHNv4bqhbi5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMDcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzE1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiclcy5maW5hbCcgY29udGFpbnMgdGhlIGNvbXBvc2VkIGVtYWlsLlxuIgogbXNnc3RyICLigJwlcy5maW5hbOKAnSBjaOG7qWEgdGjGsCDEkWnhu4duIHThu60gxJHDoyBzb+G6oW4gdGjhuqNvLlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMyNgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo0MDgKIG1zZ2lkICItLWR1bXAtYWxpYXNlcyBpbmNvbXBhdGlibGUgd2l0aCBvdGhlciBvcHRpb25zXG4iCiBtc2dzdHIgIi0tZHVtcC1hbGlhc2VzIHh1bmcga2jhuq9jIHbhu5tpIGPDoWMgdMO5eSBjaOG7jW4ga2jDoWNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozOTUgZ2l0LXNlbmQtZW1haWwucGVybDo2NTAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDgxIGdpdC1zZW5kLWVtYWlsLnBlcmw6NjgzCiBtc2dpZCAiQ2Fubm90IHJ1biBnaXQgZm9ybWF0LXBhdGNoIGZyb20gb3V0c2lkZSBhIHJlcG9zaXRvcnlcbiIKIG1zZ3N0ciAiS2jDtG5nIHRo4buDIGNo4bqheSBnaXQgZm9ybWF0LXBhdGNoIOG7nyBuZ2/DoGkgbeG7mXQga2hvIGNo4bupYVxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjM5OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo0ODQKIG1zZ2lkICIiCiAiYGJhdGNoLXNpemVgIGFuZCBgcmVsb2dpbmAgbXVzdCBiZSBzcGVjaWZpZWQgdG9nZXRoZXIgKHZpYSBjb21tYW5kLWxpbmUgb3IgIgogImNvbmZpZ3VyYXRpb24gb3B0aW9uKVxuIgpAQCAtMjA4NDQsMzcgKzI0MzExLDM3IEBACiAi4oCcYmF0Y2gtc2l6ZeKAnSB2w6Ag4oCccmVsb2dpbuKAnSBwaOG6o2kgxJHGsOG7o2MgY2jhu4kgxJHhu4tuaCBjw7luZyB24bubaSBuaGF1ICh0aMO0bmcgcXVhIGTDsm5nICIKICJs4buHbmggaG/hurdjIHTDuXkgY2jhu41uIGPhuqV1IGjDrG5oKVxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ2OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo0OTcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiVW5rbm93biAtLXN1cHByZXNzLWNjIGZpZWxkOiAnJXMnXG4iCiBtc2dzdHIgIktow7RuZyBoaeG7g3UgdHLGsOG7nW5nIC0tc3VwcHJlc3MtY2M6IOKAnCVz4oCdXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDk3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJVbmtub3duIC0tY29uZmlybSBzZXR0aW5nOiAnJXMnXG4iCiBtc2dzdHIgIktow7RuZyBoaeG7g3UgY8OgaSDEkeG6t3QgLS1jb25maXJtOiDigJwlc+KAnVxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NTYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogc2VuZG1haWwgYWxpYXMgd2l0aCBxdW90ZXMgaXMgbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAiY+G6o25oIGLDoW86IGLDrSBkYW5oIHNlbmRtYWlsIHbhu5tpIGThuqV1IHRyw61jaCBk4bqrbiBraMO0bmcgxJHGsOG7o2MgaOG7lyB0cuG7ozogJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTU4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGA6aW5jbHVkZTpgIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCiBtc2dzdHIgImPhuqNuaCBiw6FvOiDigJw6aW5jbHVkZTrigJwga2jDtG5nIMSRxrDhu6NjIGjhu5cgdHLhu6M6ICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTI5CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU2MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJ3YXJuaW5nOiBgL2ZpbGVgIG9yIGB8cGlwZWAgcmVkaXJlY3Rpb24gbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAiY+G6o25oIGLDoW86IGNodXnhu4NuIGjGsOG7m25nIOKAnC9maWxl4oCcIGhheSDigJx8cGlwZeKAnCBraMO0bmcgxJHGsOG7o2MgaOG7lyB0cuG7ozogJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MzQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTY1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IHNlbmRtYWlsIGxpbmUgaXMgbm90IHJlY29nbml6ZWQ6ICVzXG4iCiBtc2dzdHIgImPhuqNuaCBiw6FvOiBkw7JuZyBzZW5kbWFpbCBraMO0bmcgbmjhuq1uIHJhIMSRxrDhu6NjOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjYxNgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NDkKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogIkZpbGUgJyVzJyBleGlzdHMgYnV0IGl0IGNvdWxkIGFsc28gYmUgdGhlIHJhbmdlIG9mIGNvbW1pdHNcbiIKQEAgLTIwODg5LDEyICsyNDM1NiwxMiBAQAogIiAgICAqIE7Ds2kgXCIuLyVzXCIgbuG6v3Ugw70gYuG6oW4gbMOgIG3hu5l0IHThuq1wIHRpbjsgaG/hurdjXG4iCiAiICAgICogxJDGsGEgcmEgdMO5eSBjaOG7jW4gLS1mb3JtYXQtcGF0Y2ggbuG6v3Ugw70gYuG6oW4gbMOgIGNodeG6qW4gYuG7iy5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2MzcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjcwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBvcGVuZGlyICVzOiAlcyIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIG3hu58gdGjGsCBt4bulYyDigJwlc+KAnTogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjYxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY5NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiZmF0YWw6ICVzOiAlc1xuIgpAQCAtMjA5MDMsNyArMjQzNzAsNyBAQAogIm5naGnDqm0gdHLhu41uZzogJXM6ICVzXG4iCiAiY+G6o25oIGLDoW86IGtow7RuZyBjw7MgbWnhur9uZyB2w6EgbsOgbyDEkcaw4bujYyBn4butaSDEkWlcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NzIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzA1CiBtc2dpZCAiIgogIlxuIgogIk5vIHBhdGNoIGZpbGVzIHNwZWNpZmllZCFcbiIKQEAgLTIwOTEzLDE3ICsyNDM4MCwxNyBAQAogIkNoxrBhIGNo4buJIMSR4buLbmggY8OhYyB04bqtcCB0aW4gbWnhur9uZyB2w6EhXG4iCiAiXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6Njg1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcxOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJObyBzdWJqZWN0IGxpbmUgaW4gJXM/IgogbXNnc3RyICJLaMO0bmcgY8OzIGTDsm5nIGNo4bunIMSR4buBIHRyb25nICVzPyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2OTUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzI4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBvcGVuIGZvciB3cml0aW5nICVzOiAlcyIKIG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIG3hu58g4oCcJXPigJ0gxJHhu4MgZ2hpOiAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MDYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzM5CiBtc2dpZCAiIgogIkxpbmVzIGJlZ2lubmluZyBpbiBcIkdJVDpcIiB3aWxsIGJlIHJlbW92ZWQuXG4iCiAiQ29uc2lkZXIgaW5jbHVkaW5nIGFuIG92ZXJhbGwgZGlmZnN0YXQgb3IgdGFibGUgb2YgY29udGVudHNcbiIKQEAgLTIwOTM3LDI3ICsyNDQwNCwyNyBAQAogIlxuIgogIljDs2EgbuG7mWkgZHVuZyBwaOG6p24gdGjDom4gbuG6v3UgYuG6oW4ga2jDtG5nIG114buRbiBn4butaSB0w7NtIHThuq90LlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjczMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo3NjMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW4gJXM6ICVzIgogbXNnc3RyICJH4bq3cCBs4buXaSBraGkgbeG7nyDigJwlc+KAnTogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzQ3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjc4MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gb3BlbiAlcy5maW5hbDogJXMiCiBtc2dzdHIgIkfhurdwIGzhu5dpIGtoaSBt4bufICVzLmZpbmFsOiAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo3OTAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODIzCiBtc2dpZCAiU3VtbWFyeSBlbWFpbCBpcyBlbXB0eSwgc2tpcHBpbmcgaXRcbiIKIG1zZ3N0ciAiVGjGsCB04buVbmcgdGjhu4MgbMOgIHRy4buRbmcgcuG7l25nLCBuw6puIGLhu48gcXVhIG7Ds1xuIgogCiAjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGtlZXAgW3kvTl0gYXMgaXMuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjgyNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo4NTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHVzZSA8JXM+IFt5L05dPyAiCiBtc2dzdHIgIkLhuqFuIGPDsyBjaOG6r2MgbXXhu5FuIGTDuW5nIDwlcz4gW3kvTl0/ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4ODAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTEzCiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgZmlsZXMgYXJlIDhiaXQsIGJ1dCBkbyBub3QgZGVjbGFyZSBhIENvbnRlbnQtVHJhbnNmZXItIgogIkVuY29kaW5nLlxuIgpAQCAtMjA5NjUsMTEgKzI0NDMyLDExIEBACiAiQ8OhYyB0csaw4budbmcgc2F1IMSRw6J5IGzDoCA4Yml0LCBuaMawbmcga2jDtG5nIGtoYWkgYsOhbyBt4buZdCBDb250ZW50LVRyYW5zZmVyLSIKICJFbmNvZGluZy5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4ODUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTE4CiBtc2dpZCAiV2hpY2ggOGJpdCBlbmNvZGluZyBzaG91bGQgSSBkZWNsYXJlIFtVVEYtOF0/ICIKIG1zZ3N0ciAiQuG6o25nIG3DoyA4Yml0IG7DoG8gdMO0aSBuw6puIGtoYWkgYsOhbyBbVVRGLThdPyAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODkzCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkyNgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiUmVmdXNpbmcgdG8gc2VuZCBiZWNhdXNlIHRoZSBwYXRjaFxuIgpAQCAtMjA5ODIsMjAgKzI0NDQ5LDIwIEBACiAiY8OzIGNo4bunIMSR4buBIOG7nyBk4bqhbmcgbeG6q3Ug4oCcKioqIFNVQkpFQ1QgSEVSRSAqKirigJ0uIETDuW5nIC0tZm9yY2UgbuG6v3UgYuG6oW4gdGjhu7FjIHPhu7EgIgogIm114buRbiBn4butaS5cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MTIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTQ1CiBtc2dpZCAiVG8gd2hvbSBzaG91bGQgdGhlIGVtYWlscyBiZSBzZW50IChpZiBhbnlvbmUpPyIKIG1zZ3N0ciAiVOG7m2kgbmfGsOG7nWkgbcOgIHRoxrAgxJHGsOG7o2MgZ+G7rWkgKG7hur91IGPDsyk/IgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkzMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NjMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZmF0YWw6IGFsaWFzICclcycgZXhwYW5kcyB0byBpdHNlbGZcbiIKIG1zZ3N0ciAibmdoacOqbSB0cuG7jW5nOiBiw60gZGFuaCDigJwlc+KAnSDEkcaw4bujYyBraGFpIHRyaeG7g24gdGjDoG5oIGNow61uaCBuw7NcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTc1CiBtc2dpZCAiTWVzc2FnZS1JRCB0byBiZSB1c2VkIGFzIEluLVJlcGx5LVRvIGZvciB0aGUgZmlyc3QgZW1haWwgKGlmIGFueSk/ICIKIG1zZ3N0ciAiTWVzc2FnZS1JRCDEkcaw4bujYyBkw7luZyBuaMawIGzDoCBJbi1SZXBseS1UbyBjaG8gdGjGsCDEkeG6p3UgdGnDqm4gKG7hur91IGPDsyk/ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDAwIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAwOAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDMzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTA0MQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJlcnJvcjogdW5hYmxlIHRvIGV4dHJhY3QgYSB2YWxpZCBhZGRyZXNzIGZyb206ICVzXG4iCiBtc2dzdHIgImzhu5dpOiBraMO0bmcgdGjhu4MgcsO6dCB0csOtY2ggbeG7mXQgxJHhu4thIGNo4buJIGjhu6NwIGzhu4cgdOG7qzogJXNcbiIKQEAgLTIxMDAzLDE2ICsyNDQ3MCwxNiBAQAogIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtxXSBbZF0gW2VdIGluIHlvdXIKICMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKICMuIGF0IHRoaXMgcG9pbnQuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMTIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTA0NQogbXNnaWQgIldoYXQgdG8gZG8gd2l0aCB0aGlzIGFkZHJlc3M/IChbcV11aXR8W2Rdcm9wfFtlXWRpdCk6ICIKIG1zZ3N0ciAiTMOgbSBnw6wgduG7m2kgxJHhu4thIGNo4buJIG7DoHk/ICh0aG/DoXRbcV18eMOzYVtkXXxz4butYVtlXSk6ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMzI5CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEzNjIKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiQ0EgcGF0aCBcIiVzXCIgZG9lcyBub3QgZXhpc3QiCi1tc2dzdHIgIsSRxrDhu51uZyBk4bqrbiBDQSDigJwlc+KAnSBraMO0bmcgdOG7k24gdOG6oWkiCittc2dzdHIgIsSQxrDhu51uZyBk4bqrbiBDQSDigJwlc+KAnSBraMO0bmcgdOG7k24gdOG6oWkiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQxMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDQ1CiBtc2dpZCAiIgogIiAgICBUaGUgQ2MgbGlzdCBhYm92ZSBoYXMgYmVlbiBleHBhbmRlZCBieSBhZGRpdGlvbmFsXG4iCiAiICAgIGFkZHJlc3NlcyBmb3VuZCBpbiB0aGUgcGF0Y2ggY29tbWl0IG1lc3NhZ2UuIEJ5IGRlZmF1bHRcbiIKQEAgLTIxMDM5LDE0MyArMjQ1MDYsNTQ1IEBACiAjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3ldIFtuXSBbZV0gW3FdIFthXSBpbiB5b3VyCiAjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CiAjLiBhdCB0aGlzIHBvaW50LgotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDI3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjAKIG1zZ2lkICJTZW5kIHRoaXMgZW1haWw/IChbeV1lc3xbbl1vfFtlXWRpdHxbcV11aXR8W2FdbGwpOiAiCiBtc2dzdHIgIkfhu61pIHRoxrAgbsOgeSBjaOG7qT8gKFt5XWPDs3xbbl1raMO0bmd8W2Vdc+G7rWF8W3FddGhvw6F0fFthXXThuqV0KTogIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0MzAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ2MwogbXNnaWQgIlNlbmQgdGhpcyBlbWFpbCByZXBseSByZXF1aXJlZCIKIG1zZ3N0ciAiR+G7rWkgdGjGsCBuw6B5IHRy4bqjIGzhu51pIHnDqnUgY+G6p3UiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ1OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDkxCiBtc2dpZCAiVGhlIHJlcXVpcmVkIFNNVFAgc2VydmVyIGlzIG5vdCBwcm9wZXJseSBkZWZpbmVkLiIKIG1zZ3N0ciAiTcOheSBwaOG7pWMgduG7pSBTTVRQIGNoxrBhIMSRxrDhu6NjIMSR4buLbmggbmdoxKlhIG3hu5l0IGPDoWNoIHRow61jaCBo4bujcC4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUwNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTM4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IFNUQVJUVExTISAlcyIKIG1zZ3N0ciAiTcOheSBjaOG7pyBraMO0bmcgaOG7lyB0cuG7oyBTVEFSVFRMUyEgJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUxMCBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MTQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0MyBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU1RBUlRUTFMgZmFpbGVkISAlcyIKIG1zZ3N0ciAiU1RBUlRUTFMgZ+G6t3AgbOG7l2khICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MjMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU1NgogbXNnaWQgIlVuYWJsZSB0byBpbml0aWFsaXplIFNNVFAgcHJvcGVybHkuIENoZWNrIGNvbmZpZyBhbmQgdXNlIC0tc210cC1kZWJ1Zy4iCiBtc2dzdHIgIiIKICJLaMO0bmcgdGjhu4Mga2jhu59pIHThuqFvIFNNVFAgbeG7mXQgY8OhY2ggxJHDum5nIMSR4bqvbi4gS2nhu4NtIHRyYSBj4bqldSBow6xuaCB2w6AgZMO5bmcgLS1zbXRwLSIKICJkZWJ1Zy4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBzZW5kICVzXG4iCiBtc2dzdHIgIkfhurdwIGzhu5dpIGtoaSBn4butaSAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJEcnktU2VudCAlc1xuIgogbXNnc3RyICJUaOG7rSBn4butaSAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTZW50ICVzXG4iCiBtc2dzdHIgIkfhu61pICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CiBtc2dpZCAiRHJ5LU9LLiBMb2cgc2F5czpcbiIKIG1zZ3N0ciAiRHJ5LU9LLiBOaOG6rXQga8O9IG7Ds2kgcuG6sW5nOlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3OQogbXNnaWQgIk9LLiBMb2cgc2F5czpcbiIKIG1zZ3N0ciAiT0suIE5o4bqtdCBrw70gbsOzaSBy4bqxbmc6XG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU1OAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTkxCiBtc2dpZCAiUmVzdWx0OiAiCiBtc2dzdHIgIkvhur90IHF14bqjOiAiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU2MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTk0CiBtc2dpZCAiUmVzdWx0OiBPS1xuIgogbXNnc3RyICJL4bq/dCBxdeG6ozogVOG7kXRcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2MTIKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgb3BlbiBmaWxlICVzIgogbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4g4oCcJXPigJ0iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTYyNiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NDYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY1OSBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NzkKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKG1ib3gpIEFkZGluZyBjYzogJXMgZnJvbSBsaW5lICclcydcbiIKIG1zZ3N0ciAiKG1ib3gpIFRow6ptIGNjOiAlcyB04burIGTDsm5nIOKAnCVz4oCdXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTYzMgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjY1CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihtYm94KSBBZGRpbmcgdG86ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIihtYm94KSDEkGFuZyB0aMOqbSB0bzogJXMgdOG7qyBkw7JuZyDigJwlc+KAnVxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2ODUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTcxOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIobm9uLW1ib3gpIEFkZGluZyBjYzogJXMgZnJvbSBsaW5lICclcydcbiIKIG1zZ3N0ciAiKG5vbi1tYm94KSBUaMOqbSBjYzogJXMgdOG7qyBkw7JuZyDigJwlc+KAnVxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE3MjAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTc1MwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoYm9keSkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIoYm9keSkgVGjDqm0gY2M6ICVzIHThu6sgZMOybmcg4oCcJXPigJ1cbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODMxCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NjQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKCVzKSBDb3VsZCBub3QgZXhlY3V0ZSAnJXMnIgogbXNnc3RyICIoJXMpIEtow7RuZyB0aOG7gyB0aOG7sWMgdGhpIOKAnCVz4oCdIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4MzgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg3MQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoJXMpIEFkZGluZyAlczogJXMgZnJvbTogJyVzJ1xuIgogbXNnc3RyICIoJXMpIMSQYW5nIHRow6ptICVzOiAlcyB04burOiDigJwlc+KAnVxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg3NQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIoJXMpIGZhaWxlZCB0byBjbG9zZSBwaXBlIHRvICclcyciCiBtc2dzdHIgIiglcykgZ+G6t3AgbOG7l2kga2hpIMSRw7NuZyDEkcaw4budbmcg4buRbmcgxJHhur9uIOKAnCVz4oCdIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NzIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkwNQogbXNnaWQgImNhbm5vdCBzZW5kIG1lc3NhZ2UgYXMgN2JpdCIKIG1zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IGfhu61pIHRoxrAgZOG6oW5nIDcgYsOtdCIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODgwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MTMKIG1zZ2lkICJpbnZhbGlkIHRyYW5zZmVyIGVuY29kaW5nIgogbXNnc3RyICJi4bqjbmcgbcOjIHRydXnhu4FuIGtow7RuZyBo4bujcCBs4buHIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MjEgZ2l0LXNlbmQtZW1haWwucGVybDoxOTczIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk4MworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTU0IGdpdC1zZW5kLWVtYWlsLnBlcmw6MjAwNiBnaXQtc2VuZC1lbWFpbC5wZXJsOjIwMTYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzXG4iCiBtc2dzdHIgImtow7RuZyB0aOG7gyBt4bufICVzOiAlc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MjQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk1NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIlczogcGF0Y2ggY29udGFpbnMgYSBsaW5lIGxvbmdlciB0aGFuIDk5OCBjaGFyYWN0ZXJzIgogbXNnc3RyICIlczogbWnhur9uZyB2w6EgY8OzIGNo4bupYSBkw7JuZyBkw6BpIGjGoW4gOTk4IGvDvSB04buxIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NDEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk3NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyAlcyB3aXRoIGJhY2t1cCBzdWZmaXggJyVzJy5cbiIKIG1zZ3N0ciAiQuG7jyBxdWEgJXMgduG7m2kgaOG6rXUgdOG7kSBzYW8gbMawdSBk4buxIHBow7JuZyDigJwlc+KAnS5cbiIKIAogIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBrZWVwICJbeXxOXSIgYXMgaXMuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NDUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk3OAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJEbyB5b3UgcmVhbGx5IHdhbnQgdG8gc2VuZCAlcz8gW3l8Tl06ICIKIG1zZ3N0ciAiQuG6oW4gY8OzIHRo4buxYyBz4buxIG114buRbiBn4butaSAlcz8gW3l8Tl0oY8OzL0tIw5RORyk6ICIKIAorIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJTdGFnZSBtb2RlIGNoYW5nZSBbeSxuLGEscSxkJXMsP10/ICIKKyN+IG1zZ3N0ciAiVGhheSDEkeG7lWkgY2jhur8gxJHhu5kgYuG7hyBwaMOzbmcgW3ksbixhLHEsZCVzLD9dPyAiCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAiU3RhZ2UgZGVsZXRpb24gW3ksbixhLHEsZCVzLD9dPyAiCisjfiBtc2dzdHIgIljDs2Ega2jhu49pIGLhu4cgcGjDs25nIFt5LG4sYSxxLGQlcyw/XT8gIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgIlN0YWdlIHRoaXMgaHVuayBbeSxuLGEscSxkJXMsP10/ICIKKyN+IG1zZ3N0ciAixJDGsGEgbMOqbiBi4buHIHBow7NuZyBraMO6YyBuw6B5IFt5LG4sYSxxLGQlcyw/XT8gIgorCisjfiBtc2dpZCAiIgorI34gIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCisjfiAibWFya2VkIGZvciBzdGFnaW5nLlxuIgorI34gbXNnc3RyICIiCisjfiAiTuG6v3UgbWnhur9uZyB2w6EgxJHGsOG7o2Mgw6FwIGThu6VuZyBz4bqhY2ggc+G6vSwga2jDumMgxJHDoyBz4butYSBz4bq9IG5nYXkgbOG6rXAgdOG7qWNcbiIKKyN+ICLEkcaw4bujYyDEkcOhbmggZOG6pXUgxJHhu4MgY2h1eeG7g24gbMOqbiBi4buHIHBow7NuZy5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCisjfiAibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKKyN+ICJxIC0gcXVpdDsgZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisjfiAiYSAtIHN0YWdlIHRoaXMgYW5kIGFsbCB0aGUgcmVtYWluaW5nIGh1bmtzXG4iCisjfiAiZCAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgbm9yIGFueSBvZiB0aGUgcmVtYWluaW5nIGh1bmtzXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJ5IC0gxJHGsGEgbMOqbiBi4buHIHBow7NuZyBraMO6YyBuw6B5XG4iCisjfiAibiAtIMSR4burbmcgxJHGsGEgbMOqbiBi4buHIHBow7NuZyBraMO6YyBuw6B5XG4iCisjfiAicSAtIHRob8OhdDsgxJHhu6tuZyDEkcawYSBsw6puIGLhu4cgcGjDs25nIGtow7pjIG7DoHkgY8WpbmcgbmjGsCBi4bqldCBr4buzIGPDoWkgbsOgbyBjw7JuICIKKyN+ICJs4bqhaVxuIgorI34gImEgLSDEkcawYSBsw6puIGLhu4cgcGjDs25nIGtow7pjIG7DoHkgdsOgIHThuqV0IGPhuqMgY8OhYyBraMO6YyBjw7JuIGzhuqFpIHNhdSBuw6B5XG4iCisjfiAiZCAtIMSR4burbmcgxJHGsGEgbMOqbiBi4buHIHBow7NuZyBraMO6YyBuw6B5IGPFqW5nIG5oxrAgYuG6pXQga+G7syBjw6FpIG7DoG8gY8OybiBs4bqhaVxuIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgImNvdWxkIG5vdCBjb3B5ICclcycgdG8gJyVzJy4iCisjfiBtc2dzdHIgImtow7RuZyB0aOG7gyBjaMOpcCDigJwlc+KAnSBzYW5nIOKAnCVz4oCdLiIKKworI34gbXNnaWQgIm1hbGZvcm1lZCBpZGVudCBsaW5lIgorI34gbXNnc3RyICJ0aOG7pXQgxJHhuqd1IGTDsm5nIGThu4sgaMOsbmgiCisKKyN+IG1zZ2lkICJjb3JydXB0ZWQgYXV0aG9yIHdpdGhvdXQgZGF0ZSBpbmZvcm1hdGlvbiIKKyN+IG1zZ3N0ciAidMOhYyBnaeG6oyBzYWkgaOG7j25nIGtow7RuZyBjw7MgdGjDtG5nIHRpbiBuw6B5IHRow6FuZyIKKworIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyUuKnMnIgorI34gbXNnc3RyICJraMO0bmcgdGjhu4MgcGjDom4gdMOtY2ggY8O6IHBow6FwIOKAnCUuKnPigJ0iCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAiY291bGQgbm90IGNoZWNrb3V0ICVzIgorI34gbXNnc3RyICJraMO0bmcgdGjhu4MgbOG6pXkgcmEgJXMiCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAiZmlsZW5hbWUgaW4gdHJlZSBlbnRyeSBjb250YWlucyBiYWNrc2xhc2g6ICclcyciCisjfiBtc2dzdHIgInTDqm4gdOG6rXAgdGluIHRyb25nIG3hu6VjIHRpbiBjw6J5IGPDsyBjaOG7qWEga8O9IHThu7EgZ+G6oWNoIG5nxrDhu6NjOiAnJXMnIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIHRoZW0uXG4iCisjfiBtc2dzdHIgIlPhu60gZOG7pW5nIHTDuXkgY2jhu41uIC1mIG7hur91IGLhuqFuIHRo4buxYyBz4buxIG114buRbiB0aMOqbSBjaMO6bmcgdsOgby5cbiIKKworIywgYy1mb3JtYXQKKyN+IG1zZ2lkICJNYXliZSB5b3Ugd2FudGVkIHRvIHNheSAnZ2l0IGFkZCAuJz9cbiIKKyN+IG1zZ3N0ciAiQ8OzIGzhur0gw70gYuG6oW4gbMOgIOKAnGdpdCBhZGQgLuKAnSBwaOG6o2kga2jDtG5nP1xuIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgInBhY2tmaWxlIGlzIGludmFsaWQ6ICVzIgorI34gbXNnc3RyICJ04bqtcCB0aW4gZ8OzaSBraMO0bmcgaOG7o3AgbOG7hzogJXMiCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gcGFja2ZpbGUgZm9yIHJldXNlOiAlcyIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gdOG6rXAgdGluIGfDs2kgxJHhu4MgZMO5bmcgbOG6oWk6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgaW4gcmV1c2VkIHBhY2tmaWxlIgorI34gbXNnc3RyICJraMO0bmcgdGjhu4MgZGkgY2h1eeG7g24gduG7iyB0csOtIMSR4buNYyB0cm9uZyB04bqtcCB0aW4gZ8OzaSBkw7luZyBs4bqhaSIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gcmV1c2VkIHBhY2tmaWxlIgorI34gbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIHThu6sgdOG6rXAgdGluIGfDs2kgZMO5bmcgbOG6oWkiCisKKyN+IG1zZ2lkICJubyBIRUFEPyIKKyN+IG1zZ3N0ciAia2jDtG5nIEhFQUQ/IgorCisjfiBtc2dpZCAibWFrZSBjb21taXR0ZXIgZGF0ZSBtYXRjaCBhdXRob3IgZGF0ZSIKKyN+IG1zZ3N0ciAibMOgbSBuZ8OgeSB0aMOhbmcgY2h1eeG7g24gZ2lhbyBraOG7m3AgduG7m2kgbmfDoHkgY+G7p2EgdMOhYyBnaeG6oyIKKworI34gbXNnaWQgImlnbm9yZSBhdXRob3IgZGF0ZSBhbmQgdXNlIGN1cnJlbnQgZGF0ZSIKKyN+IG1zZ3N0ciAiYuG7jyBxdWEgbmfDoHkgdMOhYyBnaeG6oyB2w6Agc+G7rSBk4bulbmcgbmfDoHkgdGjDoW5nIGhp4buHbiB04bqhaSIKKworI34gbXNnaWQgInN5bm9ueW0gb2YgLS1yZXNldC1hdXRob3ItZGF0ZSIKKyN+IG1zZ3N0ciAixJHhu5NuZyBuZ2jEqWEgduG7m2kgLS1yZXNldC1hdXRob3ItZGF0ZSIKKworI34gbXNnaWQgImlnbm9yZSBjaGFuZ2VzIGluIHdoaXRlc3BhY2UiCisjfiBtc2dzdHIgImzhu50gxJFpIHPhu7EgdGhheSDEkeG7lWkgZG8ga2hv4bqjbmcgdHLhuq9uZyBnw6J5IHJhIgorCisjfiBtc2dpZCAicHJlc2VydmUgZW1wdHkgY29tbWl0cyBkdXJpbmcgcmViYXNlIgorI34gbXNnc3RyICJuZ8SDbiBj4bqlbSBjw6FjIGzhuqduIGNodXnhu4NuIGdpYW8gdHLhu5FuZyBy4buXbmcgdHJvbmcgc3Xhu5F0IHF1w6EgdHLDrG5oIGPhuqNpIHThu5UiCisKKyN+IG1zZ2lkICJjYW5ub3QgY29tYmluZSAtLXVzZS1iaXRtYXAtaW5kZXggd2l0aCBvYmplY3QgZmlsdGVyaW5nIgorI34gbXNnc3RyICJraMO0bmcgdGjhu4MgdOG7lSBo4bujcCAtLXVzZS1iaXRtYXAtaW5kZXggduG7m2kgbOG7jWMgxJHhu5FpIHTGsOG7o25nIgorCisjLCBzaC1mb3JtYXQKKyN+IG1zZ2lkICIiCisjfiAiVGhlIGZvbGxvd2luZyBwYXRoIGlzIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczpcbiIKKyN+ICIkc21fcGF0aFxuIgorI34gIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIGl0LiIKKyN+IG1zZ3N0ciAiIgorI34gIkPDoWMgxJHGsOG7nW5nIGThuqtuIHRoZW8gc2F1IMSRw6J5IHPhur0gYuG7iyBs4budIMSRaSBi4bufaSBt4buZdCB0cm9uZyBjw6FjIHThuq1wIHRpbiAuIgorI34gImdpdGlnbm9yZSBj4bunYSBi4bqhbjpcbiIKKyN+ICIkc21fcGF0aFxuIgorI34gIlPhu60gZOG7pW5nIC1mIG7hur91IGLhuqFuIHRo4buxYyBz4buxIG114buRbiB0aMOqbSBuw7MgdsOgby4iCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAidW5hYmxlIHRvIGdldCB0cmVlIGZvciAlcyIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IGPDonkgY2hvICVzIgorCisjfiBtc2dpZCAiVXNlIGFuIGV4cGVyaW1lbnRhbCBoZXVyaXN0aWMgdG8gaW1wcm92ZSBkaWZmcyIKKyN+IG1zZ3N0ciAiRMO5bmcgbeG7mXQgcGjhu49uZyDEkW/DoW4gdGjhu60gbmdoaeG7h20gxJHhu4MgdMSDbmcgY8aw4budbmcgY8OhYyBkaWZmIgorCisjfiBtc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKKyN+IG1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKKworI34gbXNnaWQgImdpdCBjb21taXQtZ3JhcGggcmVhZCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKKyN+IG1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCByZWFkIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgInVua25vd24gY29yZS51bnRyYWNrZWRDYWNoZSB2YWx1ZSAnJXMnOyB1c2luZyAna2VlcCcgZGVmYXVsdCB2YWx1ZSIKKyN+IG1zZ3N0ciAiIgorI34gImtow7RuZyBoaeG7g3UgZ2nDoSB0cuG7iyBjb3JlLnVudHJhY2tlZENhY2hlIOKAnCVz4oCdOyBkw7luZyBnacOhIHRy4buLIG3hurdjIMSR4buLbmgg4oCca2VlcOKAnSIKKworI34gbXNnaWQgImNhbm5vdCBjaGFuZ2UgcGFydGlhbCBjbG9uZSBwcm9taXNvciByZW1vdGUiCisjfiBtc2dzdHIgImtow7RuZyB0aOG7gyB0aGF5IMSR4buVaSBuaMOibiBi4bqjbiB04burbmcgcGjhuqduIG3DoXkgY2jhu6cgcHJvbWlzb3IiCisKKyN+IG1zZ2lkICJlcnJvciBidWlsZGluZyB0cmVlcyIKKyN+IG1zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHjDonkgZOG7sW5nIGPDonkiCisKKyMsIGMtZm9ybWF0CisjfiBtc2dpZCAiaW52YWxpZCBkYXRlIGZvcm1hdCAnJXMnIGluICclcyciCisjfiBtc2dzdHIgIsSR4buLbmggZOG6oW5nIG5nw6B5IHRow6FuZyBraMO0bmcgaOG7o3AgbOG7hyDigJwlc+KAnSB0cm9uZyDigJwlc+KAnSIKKworI34gbXNnaWQgIndyaXRpbmcgcm9vdCBjb21taXQiCisjfiBtc2dzdHIgImdoaSBjaHV54buDbiBnaWFvIGfhu5FjIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgInN0YWdlZCBjaGFuZ2VzIGluIHRoZSBmb2xsb3dpbmcgZmlsZXMgbWF5IGJlIGxvc3Q6ICVzIgorI34gbXNnc3RyICIiCisjfiAiY8OhYyB0aGF5IMSR4buVaSDEkcOjIMSRxrBhIGzDqm4gYuG7hyBwaMOzbmcgdHJvbmcgY8OhYyB04bqtcCB0aW4gc2F1IMSRw6J5IGPDsyB0aOG7gyBi4buLIG3huqV0OiAiCisjfiAiJXMiCisKKyN+IG1zZ2lkICIiCisjfiAiLS1maWx0ZXIgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIHRoZSByZW1vdGUgY29uZmlndXJlZCBpbiBleHRlbnNpb25zLiIKKyN+ICJwYXJ0aWFsQ2xvbmUiCisjfiBtc2dzdHIgIiIKKyN+ICItLWZpbHRlciBjaOG7iSBjw7MgdGjhu4MgxJHGsOG7o2MgZMO5bmcgduG7m2kgbcOheSBjaOG7pyDEkcaw4bujYyBj4bqldSBow6xuaCBi4bqxbmcgZXh0ZW5zaW9ucy4iCisjfiAicGFydGlhbENsb25lIgorCisjfiBtc2dpZCAidmVyaWZ5IGNvbW1pdC1tc2cgaG9vayIKKyN+IG1zZ3N0ciAidGjhuqltIHRyYSBtw7NjIChob29rKSBjb21taXQtbXNnIgorCisjfiBtc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneS1vcHRpb24nIgorI34gbXNnc3RyICJraMO0bmcgdGjhu4Mga+G6v3QgaOG7o3Ag4oCcLS1yZWJhc2UtbWVyZ2Vz4oCdIHbhu5tpIOKAnC0tc3RyYXRlZ3ktb3B0aW9u4oCdIgorCisjLCBjLWZvcm1hdAorI34gbXNnaWQgImludmFsaWQgc3BhcnNlIHZhbHVlICclcyciCisjfiBtc2dzdHIgImdpw6EgdHLhu4sgc3BhcnNlIGtow7RuZyBo4bujcCBs4buHIOKAnCVz4oCdIgorCisjfiBtc2dpZCAiIgorI34gIkZldGNoIG5vcm1hbGx5IGluZGljYXRlcyB3aGljaCBicmFuY2hlcyBoYWQgYSBmb3JjZWQgdXBkYXRlLCBidXQgdGhhdCAiCisjfiAiY2hlY2sgaGFzIGJlZW4gZGlzYWJsZWQuIgorI34gbXNnc3RyICIiCisjfiAiTOG6pXkgduG7gSBiw6xuaCB0aMaw4budbmcgY2hvIGJp4bq/dCBjw6FjIGPDoWMgbmjDoW5oIG7DoG8gYnXhu5ljIHBo4bqjaSBj4bqtcCBuaOG6rXQsIG5oxrBuZyAiCisjfiAidmnhu4djIGtp4buDbSB0cmEgxJHDoyBi4buLIHbDtCBoaeG7h3UgaMOzYS4iCisKKyN+IG1zZ2lkICIiCisjfiAib3IgcnVuICdnaXQgY29uZmlnIGZldGNoLnNob3dGb3JjZWRVcGRhdGVzIGZhbHNlJyB0byBhdm9pZCB0aGlzIGNoZWNrLlxuIgorI34gbXNnc3RyICIiCisjfiAiaG/hurdjIGNo4bqheSAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyBmYWxzZScgxJHhu4MgdHLDoW5oIGtp4buDbSB0cmEgIgorI34gIm7DoHkuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAibG9nLm1haWxtYXAgaXMgbm90IHNldDsgaXRzIGltcGxpY2l0IHZhbHVlIHdpbGwgY2hhbmdlIGluIGFuXG4iCisjfiAidXBjb21pbmcgcmVsZWFzZS4gVG8gc3F1ZWxjaCB0aGlzIG1lc3NhZ2UgYW5kIHByZXNlcnZlIGN1cnJlbnRcbiIKKyN+ICJiZWhhdmlvdXIsIHNldCB0aGUgbG9nLm1haWxtYXAgY29uZmlndXJhdGlvbiB2YWx1ZSB0byBmYWxzZS5cbiIKKyN+ICJcbiIKKyN+ICJUbyBzcXVlbGNoIHRoaXMgbWVzc2FnZSBhbmQgYWRvcHQgdGhlIG5ldyBiZWhhdmlvdXIgbm93LCBzZXQgdGhlXG4iCisjfiAibG9nLm1haWxtYXAgY29uZmlndXJhdGlvbiB2YWx1ZSB0byB0cnVlLlxuIgorI34gIlxuIgorI34gIlNlZSAnZ2l0IGhlbHAgY29uZmlnJyBhbmQgc2VhcmNoIGZvciAnbG9nLm1haWxtYXAnIGZvciBmdXJ0aGVyICIKKyN+ICJpbmZvcm1hdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJsb2cubWFpbG1hcCBraMO0bmcgxJHGsOG7o2MgxJHhurd0OyBnacOhIHRy4buLIG5n4bqnbSBj4bunYSBuw7Mgc+G6vSB0aGF5IMSR4buVaSB0cm9uZyBt4buZdFxuIgorI34gInBow6F0IGjDoG5oIHPhuq9wIHThu5tpLiDEkOG7gyBjaOG6pW0gZOG7qXQgdGjDtG5nIGLDoW8gbsOgeSB2w6AgZHV5IHRyw6wgaMOgbmggeOG7rVxuIgorI34gImhp4buHbiB04bqhaSwgxJHhurd0IGdpw6EgdHLhu4sgY+G6pXUgaMOsbmggbG9nLm1haWxtYXAgdGjDoG5oIGZhbHNlLlxuIgorI34gIlxuIgorI34gIsSQ4buDIGzDoG0gY2jhuqVtIGThu6l0IHRow7RuZyBiw6FvIG7DoHkgdsOgIMOhcCBjw6FjaCBow6BuaCB44butIG3hu5tpLCBow6N5IMSR4bq3dFxuIgorI34gImdpw6EgdHLhu4sgY+G6pXUgaMOsbmggbG9nLm1haWxtYXAgdHJ1ZS5cbiIKKyN+ICJcbiIKKyN+ICJYZW0gJ2dpdCBoZWxwIGNvbmZpZyAnIHbDoCB0w6xtIGtp4bq/bSAnIGxvZy5tYWlsbWFwICcgxJHhu4MgYmnhur90IHRow6ptIHRow7RuZyB0aW4uIgorCisjfiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIG11bHRpX2Fja19kZXRhaWxlZCIKKyN+IG1zZ3N0ciAiTcOheSBjaOG7pyBo4buXIHRy4bujIG11bHRpX2Fja19kZXRhaWxlZCIKKworI34gbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBuby1kb25lIgorI34gbXNnc3RyICJNw6F5IGNo4bunIGjhu5cgdHLhu6Mgbm8tZG9uZSIKKworI34gbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2siCisjfiBtc2dzdHIgIk3DoXkgY2jhu6cgaOG7lyB0cuG7oyBtdWx0aV9hY2siCisKKyN+IG1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgc2lkZS1iYW5kLTY0ayIKKyN+IG1zZ3N0ciAiTcOheSBjaOG7pyBo4buXIHRy4bujIHNpZGUtYmFuZC02NGsiCisKKyN+IG1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgc2lkZS1iYW5kIgorI34gbXNnc3RyICJNw6F5IGNo4bunIGjhu5cgdHLhu6Mgc2lkZS1iYW5kIgorCisjfiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIGFsbG93LXRpcC1zaGExLWluLXdhbnQiCisjfiBtc2dzdHIgIk3DoXkgY2jhu6cgaOG7lyB0cuG7oyBhbGxvdy10aXAtc2hhMS1pbi13YW50IgorCisjfiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIGFsbG93LXJlYWNoYWJsZS1zaGExLWluLXdhbnQiCisjfiBtc2dzdHIgIk3DoXkgY2jhu6cgaOG7lyB0cuG7oyBhbGxvdy1yZWFjaGFibGUtc2hhMS1pbi13YW50IgorCisjfiBtc2dpZCAiU2VydmVyIHN1cHBvcnRzIG9mcy1kZWx0YSIKKyN+IG1zZ3N0ciAiTcOheSBjaOG7pyBo4buXIHRy4bujIG9mcy1kZWx0YSIKKworI34gbXNnaWQgIihIRUFEIGRldGFjaGVkIGF0ICVzKSIKKyN+IG1zZ3N0ciAiKEhFQUQgxJHGsOG7o2MgdMOhY2ggcuG7nWkgdOG6oWkgJXMpIgorCisjfiBtc2dpZCAiKEhFQUQgZGV0YWNoZWQgZnJvbSAlcykiCisjfiBtc2dzdHIgIihIRUFEIMSRxrDhu6NjIHTDoWNoIHLhu51pIHThu6sgJXMpIgorCisjfiBtc2dpZCAiQ2hlY2tpbmcgb3V0IGZpbGVzIgorI34gbXNnc3RyICLEkGFuZyBs4bqleSByYSBjw6FjIHThuq1wIHRpbiIKKworI34gbXNnaWQgImNhbm5vdCBiZSBpbnRlcmFjdGl2ZSB3aXRob3V0IHN0ZGluIGNvbm5lY3RlZCB0byBhIHRlcm1pbmFsLiIKKyN+IG1zZ3N0ciAiIgorI34gImtow7RuZyB0aOG7gyDEkcaw4bujYyB0xrDGoW5nIHTDoWMgbcOgIGtow7RuZyBjw7Mgc3RkaW4ga+G6v3QgbuG7kWkgduG7m2kgbeG7mXQgdGhp4bq/dCBi4buLIGN14buRaS4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gc3RhdCAlc1xuIgorI34gbXNnc3RyICJn4bq3cCBs4buXaSBraGkgbOG6pXkgdGjDtG5nIHRpbiB0aOG7kW5nIGvDqiB24buBICVzXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgeW91IHdpc2ggdG8gc2tpcCB0aGlzIGNvbW1pdCwgdXNlOlxuIgorI34gIlxuIgorI34gIiAgICBnaXQgcmVzZXRcbiIKKyN+ICJcbiIKKyN+ICJUaGVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB3aWxsIHJlc3VtZSBjaGVycnktcGlja2luZ1xuIgorI34gInRoZSByZW1haW5pbmcgY29tbWl0cy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIk7hur91IGLhuqFuIG114buRbiBi4buPIHF1YSBs4bqnbiBjaHV54buDbiBnaWFvIG7DoHkgdGjDrCBkw7luZzpcbiIKKyN+ICJcbiIKKyN+ICIgICAgZ2l0IHJlc2V0XG4iCisjfiAiXG4iCisjfiAiVGjhur8gdGjDrCBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgc+G6vSBwaOG7pWMgaOG7k2kgbOG6oWkgdmnhu4djIGNoZXJyeS1waWNrXG4iCisjfiAibmjhu69uZyBs4bqnbiBjaHV54buDbiBnaWFvIGPDsm4gbOG6oWkuXG4iCisKKyN+IG1zZ2lkICJ1bnJlY29nbml6ZWQgdmVyYjogJXMiCisjfiBtc2dzdHIgInZlcmIga2jDtG5nIMSRxrDhu6NjIHRo4burYSBuaOG6rW46ICVzIgorCisjfiBtc2dpZCAiaGFzaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCisjfiBtc2dzdHIgInBoacOqbiBi4bqjbiBixINtIOKAnCVY4oCdIGtow7RuZyBjw7MgcGhpw6puIGLhuqNuIGto4bubcCAlWCIKKworI34gbXNnaWQgIm9wdGlvbiAnJXMnIHJlcXVpcmVzIGEgdmFsdWUiCisjfiBtc2dzdHIgInTDuXkgY2jhu41uIOKAnCVz4oCdIHnDqnUgY+G6p3UgbeG7mXQgZ2nDoSB0cuG7iyIKKworI34gbXNnaWQgImNvdWxkIG5vdCB0cmFuc2Zvcm0gdGhlIHRvZG8gbGlzdCIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIGNodXnhu4NuIGThuqFuZyBkYW5oIHPDoWNoIGPhuqduIGzDoG0iCisKKyN+IG1zZ2lkICJkZWZhdWx0IgorI34gbXNnc3RyICJt4bq3YyDEkeG7i25oIgorCisjfiBtc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKKyN+IG1zZ3N0ciAiS2jDtG5nIHRo4buDIHThuqFvIHRoxrAgbeG7pWMg4oCcJXPigJ0iCisKKyN+IG1zZ2lkICJhbGxvdyByZXJlcmUgdG8gdXBkYXRlIGluZGV4IHdpdGggcmVzb2x2ZWQgY29uZmxpY3QiCisjfiBtc2dzdHIgIiIKKyN+ICJjaG8gcGjDqXAgcmVyZXJlIGPhuq1wIG5o4bqtdCBi4bqjbmcgbeG7pWMgbOG7pWMgduG7m2kgY8OhYyB4dW5nIMSR4buZdCDEkcOjIMSRxrDhu6NjIGdp4bqjaSBxdXnhur90IgorCisjfiBtc2dpZCAiY291bGQgbm90IG9wZW4gJXMiCisjfiBtc2dzdHIgImtow7RuZyB0aOG7gyBt4bufICVzIgorCisjfiBtc2dpZCAiQ291bGQgbm90IG1vdmUgYmFjayB0byAkaGVhZF9uYW1lIgorI34gbXNnc3RyICJLaMO0bmcgdGjhu4MgcXVheSB0cuG7nyBs4bqhaSAkaGVhZF9uYW1lIgorCisjfiBtc2dpZCAiIgorI34gIkl0IHNlZW1zIHRoYXQgdGhlcmUgaXMgYWxyZWFkeSBhICRzdGF0ZV9kaXJfYmFzZSBkaXJlY3RvcnksIGFuZFxuIgorI34gIkkgd29uZGVyIGlmIHlvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIHJlYmFzZS4gIElmIHRoYXQgaXMgdGhlXG4iCisjfiAiY2FzZSwgcGxlYXNlIHRyeVxuIgorI34gIlx0JGNtZF9saXZlX3JlYmFzZVxuIgorI34gIklmIHRoYXQgaXMgbm90IHRoZSBjYXNlLCBwbGVhc2VcbiIKKyN+ICJcdCRjbWRfY2xlYXJfc3RhbGVfcmViYXNlXG4iCisjfiAiYW5kIHJ1biBtZSBhZ2Fpbi4gIEkgYW0gc3RvcHBpbmcgaW4gY2FzZSB5b3Ugc3RpbGwgaGF2ZSBzb21ldGhpbmdcbiIKKyN+ICJ2YWx1YWJsZSB0aGVyZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJIw6xuaCBuaMawIGzDoCDhu58gxJHDonkgc+G6tW4gY8OzIG3hu5l0IHRoxrAgbeG7pWMgJHN0YXRlX2Rpcl9iYXNlLCB2w6BcbiIKKyN+ICJUw7RpIHThu7EgaOG7j2kgY8OzIHBo4bqjaSBi4bqhbiDEkWFuZyDhu58gZ2nhu69hIG3hu5l0IGzhu4duaCByZWJhc2Uga2jDoWMuIE7hur91IMSRw7puZyBsw6BcbiIKKyN+ICJuaMawIHbhuq15LCB4aW4gaMOjeSB0aOG7rVxuIgorI34gIlx0JGNtZF9saXZlX3JlYmFzZVxuIgorI34gIk7hur91IGtow7RuZyBwaOG6o2kgdGjhur8sIGjDo3kgdGjhu61cbiIKKyN+ICJcdCRjbWRfY2xlYXJfc3RhbGVfcmViYXNlXG4iCisjfiAidsOgIGNo4bqheSBUw5RJIGzhuqduIG7hu69hLiBUw5RJICBk4burbmcgbOG6oWkgdHJvbmcgdHLGsOG7nW5nIGjhu6NwIGLhuqFuIHbhuqtuXG4iCisjfiAiY8OzIG3hu5l0IHPhu5EgdGjhu6kgcXXDvSBnacOhIOG7nyDEkcOieS4iCisKKyN+IG1zZ2lkICIiCisjfiAiZmF0YWw6IGNhbm5vdCBjb21iaW5lIGFtIG9wdGlvbnMgd2l0aCBlaXRoZXIgaW50ZXJhY3RpdmUgb3IgbWVyZ2Ugb3B0aW9ucyIKKyN+IG1zZ3N0ciAiIgorI34gImzhu5dpIG5naGnDqm0gdHLhu41uZzoga2jDtG5nIHRo4buDIHThu5UgaOG7o3AgY8OhYyB0w7l5IGNo4buNbiBhbSB24bubaSBjw6FjIHTDuXkgY2jhu41uIHTGsMahbmcgIgorI34gInTDoWMgaGF5IGjDsmEgdHLhu5luIgorCisjfiBtc2dpZCAiZmF0YWw6IGNhbm5vdCBjb21iaW5lICctLXNpZ25vZmYnIHdpdGggJy0tcHJlc2VydmUtbWVyZ2VzJyIKKyN+IG1zZ3N0ciAiIgorI34gImzhu5dpIG5naGnDqm0gdHLhu41uZzoga2jDtG5nIHRo4buDIGvhur90IGjhu6NwIOKAnC0tc2lnbm9mZuKAnSB24bubaSDigJwtLXByZXNlcnZlLW1lcmdlc+KAnSIKKworI34gbXNnaWQgImZhdGFsOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmViYXNlLW1lcmdlcyciCisjfiBtc2dzdHIgIiIKKyN+ICJs4buXaSBuZ2hpw6ptIHRy4buNbmc6IGtow7RuZyB0aOG7gyBr4bq/dCBo4bujcCDigJwtLXByZXNlcnZlLW1lcmdlc+KAnSB24bubaSDigJwtLXJlYmFzZS0iCisjfiAibWVyZ2Vz4oCdIgorCisjfiBtc2dpZCAiZmF0YWw6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3ktb3B0aW9uJyIKKyN+IG1zZ3N0ciAiIgorI34gImzhu5dpIG5naGnDqm0gdHLhu41uZzoga2jDtG5nIHRo4buDIGvhur90IGjhu6NwIOKAnC0tcmViYXNlLW1lcmdlc+KAnSB24bubaSDigJwtLXN0cmF0ZWd5LSIKKyN+ICJvcHRpb27igJ0iCisKKyN+IG1zZ2lkICJmYXRhbDogY2Fubm90IGNvbWJpbmUgJy0tcmViYXNlLW1lcmdlcycgd2l0aCAnLS1zdHJhdGVneSciCisjfiBtc2dzdHIgIiIKKyN+ICJs4buXaSBuZ2hpw6ptIHRy4buNbmc6IGtow7RuZyB0aOG7gyBr4bq/dCBo4bujcCDigJwtLXJlYmFzZS1tZXJnZXPigJ0gduG7m2kg4oCcLS1zdHJhdGVneeKAnSIKKworI34gbXNnaWQgImludmFsaWQgdXBzdHJlYW0gJyR1cHN0cmVhbV9uYW1lJyIKKyN+IG1zZ3N0ciAidGjGsOG7o25nIG5ndeG7k24ga2jDtG5nIGjhu6NwIGzhu4cg4oCcJHVwc3RyZWFtX25hbWXigJ0iCisKKyN+IG1zZ2lkICIkb250b19uYW1lOiB0aGVyZSBhcmUgbW9yZSB0aGFuIG9uZSBtZXJnZSBiYXNlcyIKKyN+IG1zZ3N0ciAiJG9udG9fbmFtZTog4bufIMSRw6J5IGPDsyBuaGnhu4F1IGjGoW4gbeG7mXQgbuG7gW4gbcOzbmcgaMOyYSB0cuG7mW4iCisKKyN+IG1zZ2lkICIkb250b19uYW1lOiB0aGVyZSBpcyBubyBtZXJnZSBiYXNlIgorI34gbXNnc3RyICIkb250b19uYW1lOiDhu58gxJHDonkga2jDtG5nIGPDsyBu4buBbiBtw7NuZyBow7JhIHRy4buZbiBuw6BvIgorCisjfiBtc2dpZCAiRG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBjb21taXQ6ICRvbnRvX25hbWUiCisjfiBtc2dzdHIgIktow7RuZyBjaOG7iSDEkeG6v24gbeG7mXQgbOG6p24gY2h1eeG7g24gZ2lhbyBraMO0bmcgaOG7o3AgbOG7hzogJG9udG9fbmFtZSIKKworI34gbXNnaWQgImZhdGFsOiBubyBzdWNoIGJyYW5jaC9jb21taXQgJyRicmFuY2hfbmFtZSciCisjfiBtc2dzdHIgIm5naGnDqm0gdHLhu41uZzoga2jDtG5nIGPDsyBuaMOhbmggbmjGsCB0aOG6vzog4oCcJGJyYW5jaF9uYW1l4oCdIgorCisjfiBtc2dpZCAiQ3JlYXRlZCBhdXRvc3Rhc2g6ICRzdGFzaF9hYmJyZXYiCisjfiBtc2dzdHIgIsSQw6MgdOG6oW8gYXV0b3N0YXNoOiAkc3Rhc2hfYWJicmV2IgorCisjfiBtc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUuIgorI34gbXNnc3RyICJOaMOhbmggaGnhu4duIHThuqFpICRicmFuY2hfbmFtZSDEkcOjIMSRxrDhu6NjIGPhuq1wIG5o4bqtdCBy4buTaS4iCisKKyN+IG1zZ2lkICJDdXJyZW50IGJyYW5jaCAkYnJhbmNoX25hbWUgaXMgdXAgdG8gZGF0ZSwgcmViYXNlIGZvcmNlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJOaMOhbmggaGnhu4duIHThuqFpICRicmFuY2hfbmFtZSDEkcOjIMSRxrDhu6NjIGPhuq1wIG5o4bqtdCBy4buTaSwgbOG7h25oIHJlYmFzZSDDqXAgYnXhu5ljLiIKKworI34gbXNnaWQgIkNoYW5nZXMgdG8gJG9udG86IgorI34gbXNnc3RyICJUaGF5IMSR4buVaSB0aMOgbmggJG9udG86IgorCisjfiBtc2dpZCAiQ2hhbmdlcyBmcm9tICRtYiB0byAkb250bzoiCisjfiBtc2dzdHIgIlRoYXkgxJHhu5VpIHThu6sgJG1iIHRow6BuaCAkb250bzoiCisKKyN+IG1zZ2lkICJGYXN0LWZvcndhcmRlZCAkYnJhbmNoX25hbWUgdG8gJG9udG9fbmFtZS4iCisjfiBtc2dzdHIgIkNodXnhu4NuLXRp4bq/cC1uaGFuaCAkYnJhbmNoX25hbWUgdGjDoG5oICRvbnRvX25hbWUuIgorCisjfiBtc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uIgorI34gbXNnc3RyICIiCisjfiAiVHLGsOG7m2MgdGnDqm4sIGRpIGNodXnhu4NuIGhlYWQgxJHhu4MgeGVtIGzhuqFpIGPDoWMgY8O0bmcgdmnhu4djIHRyw6puIMSR4buJbmggY+G7p2EgbsOz4oCmIgorCisjfiBtc2dpZCAiaWdub3JpbmcgdW5rbm93biBjb2xvci1tb3ZlZC13cyBtb2RlICclcyciCisjfiBtc2dzdHIgImLhu48gcXVhIGNo4bq/IMSR4buZIGNvbG9yLW1vdmVkLXdzIGNoxrBhIGJp4bq/dCDigJwlc+KAnSIKKworI34gbXNnaWQgIm9ubHkgJ3RyZWU6MCcgaXMgc3VwcG9ydGVkIgorI34gbXNnc3RyICJjaOG7iSDigJx0cmVlOjDigJ0gbMOgIMSRxrDhu6NjIGjhu5cgdHLhu6MiCisKKyN+IG1zZ2lkICJSZW5hbWluZyAlcyB0byAlcyBhbmQgJXMgdG8gJXMgaW5zdGVhZCIKKyN+IG1zZ3N0ciAixJBhbmcgxJHhu5VpIHTDqm4gJXMgdGjDoG5oICVzIHRoYXkgdsOsICVzIHRow6BuaCAlcyIKKworI34gbXNnaWQgIkFkZGluZyBtZXJnZWQgJXMiCisjfiBtc2dzdHIgIlRow6ptIGjDsmEgdHLhu5luICVzIgorCisjfiBtc2dpZCAiSW50ZXJuYWwgZXJyb3IiCisjfiBtc2dzdHIgIkzhu5dpIG7hu5lpIGLhu5kiCisKKyN+IG1zZ2lkICJtYWlubGluZSB3YXMgc3BlY2lmaWVkIGJ1dCBjb21taXQgJXMgaXMgbm90IGEgbWVyZ2UuIgorI34gbXNnc3RyICIiCisjfiAibHXhu5NuZyBjaMOtbmggxJHDoyDEkcaw4bujYyBjaOG7iSByYSBuaMawbmcgbOG6p24gY2h1eeG7g24gZ2lhbyAlcyBraMO0bmcgcGjhuqNpIGzDoCBt4buZdCBs4bqnbiAiCisjfiAiaMOyYSB0cuG7mW4uIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHNoYTEgZmlsZW5hbWUgJXMiCisjfiBtc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgdsOgbyB0w6puIHThuq1wIHRpbiBzaGExICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHJlYWQgc2hhMV9maWxlIGZvciAlcyIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyBzaGExX2ZpbGUgY2hvICVzIgorCisjfiBtc2dpZCAiIgorI34gImVycm9yOiBjYW5ub3QgY29tYmluZSBpbnRlcmFjdGl2ZSBvcHRpb25zICgtLWludGVyYWN0aXZlLCAtLWV4ZWMsIC0tIgorI34gInJlYmFzZS1tZXJnZXMsIC0tcHJlc2VydmUtbWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250bykgd2l0aCBhbSAiCisjfiAib3B0aW9ucyAoJXMpIgorI34gbXNnc3RyICIiCisjfiAibOG7l2k6IGtow7RuZyB0aOG7gyB04buVIGjhu6NwIGPDoWMgdMO5eSBjaOG7jW4gdMawxqFuZyB0w6FjICgtLWludGVyYWN0aXZlLCAtLWV4ZWMsIC0tIgorI34gInJlYmFzZS1tZXJnZXMsIC0tcHJlc2VydmUtbWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250bykgduG7m2kgY8OhYyAiCisjfiAidMO5eSBjaOG7jW4gYW0gKCVzKSIKKworI34gbXNnaWQgIiIKKyN+ICJlcnJvcjogY2Fubm90IGNvbWJpbmUgbWVyZ2Ugb3B0aW9ucyAoLS1tZXJnZSwgLS1zdHJhdGVneSwgLS1zdHJhdGVneS0iCisjfiAib3B0aW9uKSB3aXRoIGFtIG9wdGlvbnMgKCVzKSIKKyN+IG1zZ3N0ciAiIgorI34gImzhu5dpOiBraMO0bmcgdGjhu4Mga+G6v3QgaOG7o3AgY8OhYyB0w7l5IGNo4buNbiBow7JhIHRy4buZbiAoLS1tZXJnZSwgLS1zdHJhdGVneSwgLS0iCisjfiAic3RyYXRlZ3ktb3B0aW9uKSB24bubaSBt4buZdCB0w7l5IGNo4buNbiBhbSAoJXMpIgorCisjfiBtc2dpZCAidW5yZWNvZ25pc2VkIG9wdGlvbjogJyRhcmcnIgorI34gbXNnc3RyICJraMO0bmcgY8O0bmcgbmjhuq1uIHTDuXkgY2jhu41uOiDigJwkYXJn4oCdIgorCisjfiBtc2dpZCAiJyRpbnZhbGlkJyBpcyBub3QgYSB2YWxpZCBjb21taXQiCisjfiBtc2dzdHIgIuKAnSRpbnZhbGlk4oCdIGtow7RuZyBwaOG6o2kgbMOgIGzhuqduIGNodXnhu4NuIGdpYW8gaOG7o3AgbOG7hyIKKwogI34gbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJXMnIChsb29raW5nIGZvciAnJXMnKSIKICN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIOKAnCVz4oCdICjEkWFuZyB0w6xtIGtp4bq/bSBjaG8g4oCcJXPigJ0pIgogCi0jfiBtc2dpZCAiYmFkIHF1b3Rpbmcgb24gJXMgdmFsdWUgaW4gJyVzJyIKLSN+IG1zZ3N0ciAic2FpIHRyw61jaCBk4bqrbiB0csOqbiAlcyBnacOhIHRy4buLIHRyb25nIOKAnCVz4oCdIgotCi0jfiBtc2dpZCAiQ291bGQgbm90IHVuc2V0IGNvcmUud29ya3RyZWUgc2V0dGluZyBpbiBzdWJtb2R1bGUgJyVzJyIKLSN+IG1zZ3N0ciAiS2jDtG5nIHRo4buDIMSR4bq3dCBjb3JlLndvcmt0cmVlIHRyb25nIG3DtC3EkXVuLWNvbiDigJwlc+KAnSIKLQogI34gbXNnaWQgImRlcHJlY2F0ZWQgc3lub255bSBmb3IgLS1jcmVhdGUtcmVmbG9nIgogI34gbXNnc3RyICLEkeG7k25nIG5naMSpYSDEkcOjIGzhuqFjIGjhuq11IGNobyAtLWNyZWF0ZS1yZWZsb2ciCiAKQEAgLTIxMTk3LDEyICsyNTA2Niw2IEBACiAjfiBtc2dpZCAiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUiCiAjfiBtc2dzdHIgImtow7RuZyB0aOG7gyBn4buhIGLhu48gbeG7mXQgY8OieS1sw6BtLXZp4buHYyBi4buLIGtow7NhIgogCi0jfiBtc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guIgotI34gbXNnc3RyICLEkMOjIMOhcCBk4bulbmcgYXV0b3N0YXNoLiIKLQotI34gbXNnaWQgIkNhbm5vdCBzdG9yZSAkc3Rhc2hfc2hhMSIKLSN+IG1zZ3N0ciAiS2jDtG5nIHRo4buDIGzGsHUgJHN0YXNoX3NoYTEiCi0KICN+IG1zZ2lkICIiCiAjfiAiXG4iCiAjfiAiXHRIb3dldmVyLCBpZiB5b3UgcmVtb3ZlIGV2ZXJ5dGhpbmcsIHRoZSByZWJhc2Ugd2lsbCBiZSBhYm9ydGVkLlxuIgpAQCAtMjEyOTcsOSArMjUxNjAsNiBAQAogI34gbXNnaWQgImNvdWxkIG5vdCB0cnVuY2F0ZSAnJXMnIgogI34gbXNnc3RyICJraMO0bmcgdGjhu4MgY+G6r3QgY+G7pXQg4oCcJXPigJ0iCiAKLSN+IG1zZ2lkICJjb3VsZCBub3QgZmluaXNoICclcyciCi0jfiBtc2dzdHIgImtow7RuZyB0aOG7gyBob8OgbiB0aMOgbmgg4oCcJXPigJ0iCi0KICN+IG1zZ2lkICJjb3VsZCBub3QgY2xvc2UgJXMiCiAjfiBtc2dzdHIgImtow7RuZyB0aOG7gyDEkcOzbmcgJXMiCiAKQEAgLTIxMzEyLDkgKzI1MTcyLDYgQEAKICN+IG1zZ2lkICJEb24ndCBrbm93IGhvdyB0byBjbG9uZSAlcyIKICN+IG1zZ3N0ciAiS2jDtG5nIGJp4bq/dCBsw6BtIGPDoWNoIG7DoG8gxJHhu4MgbmjDom4gYuG6o24gKGNsb25lKSAlcyIKIAotI34gbXNnaWQgInNob3cgaWdub3JlZCBmaWxlcyIKLSN+IG1zZ3N0ciAiaGnhu4NuIHRo4buLIGPDoWMgdOG6rXAgdGluIOG6qW4iCi0KICN+IG1zZ2lkICJEb24ndCBrbm93IGhvdyB0byBmZXRjaCBmcm9tICVzIgogI34gbXNnc3RyICJLaMO0bmcgYmnhur90IGzDoG0gY8OhY2ggbsOgbyDEkeG7gyBs4bqleSB24buBIHThu6sgJXMiCiAKQEAgLTIxMzU0LDkgKzI1MjExLDYgQEAKICN+IG1zZ2lkICJiYXNlbmFtZSIKICN+IG1zZ3N0ciAidMOqbiBjxqEgc+G7nyIKIAotI34gbXNnaWQgInByZXBlbmQgcGFyZW50IHByb2plY3QncyBiYXNlbmFtZSB0byBvdXRwdXQiCi0jfiBtc2dzdHIgInRyZW8gdsOgbyB0csaw4bubYyB0w6puIGPGoSBz4bufIGNoYSBt4bq5IGPhu6dhIMSRxrDhu51uZyBk4bqrbiB2w6BvIGvhur90IHh14bqldCIKLQogI34gbXNnaWQgIiIKICN+ICJXaGVuIHlvdSBoYXZlIHJlc29sdmVkIHRoaXMgcHJvYmxlbSwgcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIuXG4iCiAjfiAiSWYgeW91IHByZWZlciB0byBza2lwIHRoaXMgcGF0Y2gsIHJ1biBcImdpdCByZWJhc2UgLS1za2lwXCIgaW5zdGVhZC5cbiIKQEAgLTIxMzk2LDkgKzI1MjUwLDYgQEAKICN+IG1zZ2lkX3BsdXJhbCAiJXMsICUiCiAjfiBtc2dzdHJbMF0gIiVzLCAlIgogCi0jfiBtc2dpZCAiQ291bGQgbm90IG9wZW4gZmlsZSAnJXMnIgotI34gbXNnc3RyICJLaMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4g4oCcJXPigJ0iCi0KICN+IG1zZ2lkICJpbiAlMC4xZiBzZWNvbmRzIGF1dG9tYXRpY2FsbHkuLi4iCiAjfiBtc2dzdHIgInRyb25nICUwLjFmIGdpw6J5IG3hu5l0IGPDoWNoIHThu7EgxJHhu5luZ+KApiIKIApAQCAtMjE0NjYsOSArMjUzMTcsNiBAQAogI34gbXNnaWQgInJlZiAnJXMnIGRvZXMgbm90IGhhdmUgJWxkIGNvbXBvbmVudHMgdG8gOnN0cmlwIgogI34gbXNnc3RyICJ0aGFtIGNoaeG6v3Ug4oCcJXPigJ0ga2jDtG5nIGPDsyAlbGQgdGjDoG5oIHBo4bqnbiDEkeG7gyBtw6AgOnN0cmlwIgogCi0jfiBtc2dpZCAidW5rbm93biAlLipzIGZvcm1hdCAlcyIKLSN+IG1zZ3N0ciAiS2jDtG5nIGhp4buDdSDEkeG7i25oIGThuqFuZyAlLipzICVzIgotCiAjfiBtc2dpZCAiWyVzOiBnb25lXSIKICN+IG1zZ3N0ciAiWyVzOiDEkcOjIHJhIMSRaV0iCiAKQEAgLTIxNTQ1LDkgKzI1MzkzLDYgQEAKICN+IG1zZ3N0ciAiIgogI34gIktow7RuZyB0aOG7gyB0aOG7sWMgaGnhu4duIHZp4buHYyBjaGVycnktcGljayB0cm9uZyBraGkga2hpIMSRYW5nIGNoZXJyeS1waWNrIGtow6FjLiIKIAotI34gbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBsaW5lICVkLiIKLSN+IG1zZ3N0ciAiS2jDtG5nIHBow6JuIHTDrWNoIMSRxrDhu6NjIGTDsm5nICVkLiIKLQogI34gbXNnaWQgIkNvdWxkIG5vdCBvcGVuICVzIgogI34gbXNnc3RyICJLaMO0bmcgdGjhu4MgbeG7nyAlcyIKIApAQCAtMjE1NTcsOSArMjU0MDIsNiBAQAogI34gbXNnaWQgIiVzOiAlcyIKICN+IG1zZ3N0ciAiJXM6ICVzIgogCi0jfiBtc2dpZCAiY2Fubm90IG9wZW4gJXM6ICVzIgotI34gbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyAlczogJXMiCi0KICN+IG1zZ2lkICJZb3UgbmVlZCB0byBzZXQgeW91ciBjb21taXR0ZXIgaW5mbyBmaXJzdCIKICN+IG1zZ3N0ciAiQuG6oW4gY+G6p24gxJHhurd0IHRow7RuZyB0aW4gduG7gSBuZ8aw4budaSBjaHV54buDbiBnaWFvIG3DoyBuZ3Xhu5NuIHRyxrDhu5tjIMSRw6MiCiAKQEAgLTIxNzg0LDkgKzI1NjI2LDYgQEAKICN+IG1zZ2lkICInJXMnOiAlcyIKICN+IG1zZ3N0ciAi4oCcJXPigJ06ICVzIgogCi0jfiBtc2dpZCAidW5hYmxlIHRvIGFjY2VzcyAnJXMnOiAlcyIKLSN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIHRydXkgY+G6rXAg4oCcJXPigJ06ICVzIgotCiAjfiBtc2dpZCAiICAgIGdpdCBicmFuY2ggLWQgJXNcbiIKICN+IG1zZ3N0ciAiICAgIGdpdCBicmFuY2ggLWQgJXNcbiIKIApAQCAtMjE4MDQsOSArMjU2NDMsNiBAQAogI34gbXNnaWQgImZhaWxlZCB0byByZW1vdmU6ICVzIgogI34gbXNnc3RyICJn4bq3cCBs4buXaSBraGkgZ+G7oSBi4buPOiAlcyIKIAotI34gbXNnaWQgIlRoZSAtLWV4ZWMgb3B0aW9uIG11c3QgYmUgdXNlZCB3aXRoIHRoZSAtLWludGVyYWN0aXZlIG9wdGlvbiIKLSN+IG1zZ3N0ciAiVMO5eSBjaOG7jW4gLS1leGVjIHBo4bqjaSDEkcaw4bujYyBz4butIGThu6VuZyBjw7luZyB24bubaSB0w7l5IGNo4buNbiAtLWludGVyYWN0aXZlIgotCiAjfiBtc2dpZCAiIgogI34gIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIG5vdCBpbml0aWFsaXplZFxuIgogI34gIk1heWJlIHlvdSB3YW50IHRvIHVzZSAndXBkYXRlIC0taW5pdCc/IgpAQCAtMjE4NzYsOSArMjU3MTIsNiBAQAogI34gbXNnaWQgIm5vIHN1Y2ggdXNlciIKICN+IG1zZ3N0ciAia2jDtG5nIGPDsyBuZ8aw4budaSBkw7luZyBuaMawIHbhuq15IgogCi0jfiBtc2dpZCAiTWlzc2luZyBhdXRob3I6ICVzIgotI34gbXNnc3RyICJUaGnhur91IHTDqm4gdMOhYyBnaeG6ozogJXMiCi0KICN+IG1zZ2lkICJUZXN0aW5nICIKICN+IG1zZ3N0ciAixJBhbmcgdGjhu60iCiAKQEAgLTIxOTMxLDkgKzI1NzY0LDYgQEAKICN+IG1zZ2lkICJvcHRpb24gJXMgZG9lcyBub3QgYWNjZXB0IG5lZ2F0aXZlIGZvcm0iCiAjfiBtc2dzdHIgInTDuXkgY2jhu41uICVzIGtow7RuZyBjaOG6pXAgbmjhuq1uIGThuqFuZyB0aOG7qWMgw6JtIgogCi0jfiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlIHZhbHVlICclcycgZm9yIG9wdGlvbiAlcyIKLSN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIHBow6JuIHTDrWNoIGdpw6EgdHLhu4sg4oCcJXPigJ0gY2hvIHTDuXkgY2jhu41uICVzIgotCiAjfiBtc2dpZCAiLWIgYW5kIC1CIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiAjfiBtc2dzdHIgIi1iIHbDoCAtQiBsb+G6oWkgdOG7qyBs4bqrbiBuaGF1LiIKIApAQCAtMjIwMzQsOSArMjU4NjQsNiBAQAogI34gbXNnaWQgIiVzOiBjYW5ub3QgbG9jayB0aGUgcmVmIgogI34gbXNnc3RyICIlczoga2jDtG5nIHRo4buDIGtow7NhIHJlZiAodGhhbSBjaGnhur91KSIKIAotI34gbXNnaWQgIiVzOiBjYW5ub3QgdXBkYXRlIHRoZSByZWYiCi0jfiBtc2dzdHIgIiVzOiBraMO0bmcgdGjhu4MgY+G6rXAgbmjhuq10IHJlZiAodGhhbSBjaGnhur91KSIKLQogI34gbXNnaWQgIkZhaWxlZCB0byBsb2NrIEhFQUQgZHVyaW5nIGZhc3RfZm9yd2FyZF90byIKICN+IG1zZ3N0ciAiR+G6t3AgbOG7l2kga2hpIGtow7NhIEhFQUQgdHJvbmcgcXXDoSB0csOsbmggZmFzdF9mb3J3YXJkX3RvIgogCmRpZmYgLS1naXQgYS9wby96aF9DTi5wbyBiL3BvL3poX0NOLnBvCmluZGV4IDkxMjA4M2UuLjViZTUyNTggMTAwNjQ0Ci0tLSBhL3BvL3poX0NOLnBvCisrKyBiL3BvL3poX0NOLnBvCkBAIC0zLDcgKzMsNyBAQAogIyBDb3B5cmlnaHQgKEMpIDIwMTIsMjAxMyBKaWFuZyBYaW4gPHdvcmxkaGVsbG8ubmV0IEFUIGdtYWlsLmNvbT4KICMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIEdpdCBwYWNrYWdlLgogIyBDb250cmlidXRvcnM6Ci0jICAgLSBGYW5neWkgWmhvdSA8ZmFuZ3lpLnpob3UgQVQgeXVyaWtvLm1vZT4KKyMgICAtIEZhbmd5aSBaaG91IDxtZSBBVCBmYW5neWkuaW8+CiAjICAgLSBKaWFuZyBYaW4gPHdvcmxkaGVsbG8ubmV0IEFUIGdtYWlsLmNvbT4KICMgICAtIExpYW4gQ2hlbmcgPHJoeXRobS5tYWlsIEFUIGdtYWlsLmNvbT4KICMgICAtIFJheSBDaGVuIDxvbGRzaGFycCBBVCBnbWFpbC5jb20+CkBAIC00NSw2ICs0NSw3IEBACiAjICAgY29tbWl0LWlzaCAoYWxzbyBjb21taXR0aXNoKSAgICAgfCAg5o+Q5Lqk5Y+3CiAjICAgY29uZmxpY3QgICAgICAgICAgICAgICAgICAgICAgICAgfCAg5Yay56qBCiAjICAgY29yZSBHaXQgICAgICAgICAgICAgICAgICAgICAgICAgfCAg5qC45b+DIEdpdCDlt6XlhbcKKyMgICBjb3ZlciBsZXR0ZXIgICAgICAgICAgICAgICAgICAgICB8ICDpmYTlh70KICMgICBEQUcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDmnInlkJHml6Dnjq/lm74KICMgICBkYW5nbGluZyBvYmplY3QgICAgICAgICAgICAgICAgICB8ICDmgqznqbrlr7nosaEKICMgICBkZXRhY2hlZCBIRUFEICAgICAgICAgICAgICAgICAgICB8ICDliIbnprvlpLTmjIfpkogKQEAgLTEzOCw4ICsxMzksOCBAQAogbXNnc3RyICIiCiAiUHJvamVjdC1JZC1WZXJzaW9uOiBHaXRcbiIKICJSZXBvcnQtTXNnaWQtQnVncy1UbzogR2l0IE1haWxpbmcgTGlzdCA8Z2l0QHZnZXIua2VybmVsLm9yZz5cbiIKLSJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxOC0xMi0wMiAxMDo1NSswODAwXG4iCi0iUE8tUmV2aXNpb24tRGF0ZTogMjAxOC0xMi0wMyAxODowOCswODAwXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMjAtMDMtMTEgMTU6MjYrMDgwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMjAtMDMtMTEgMTU6MzgrMDgwMFxuIgogIkxhc3QtVHJhbnNsYXRvcjogSmlhbmcgWGluIDx3b3JsZGhlbGxvLm5ldEBnbWFpbC5jb20+XG4iCiAiTGFuZ3VhZ2UtVGVhbTogR2l0SHViIDxodHRwczovL2dpdGh1Yi5jb20vamlhbmd4aW4vZ2l0Lz5cbiIKICJMYW5ndWFnZTogemhfQ05cbiIKQEAgLTE0OCwzNyArMTQ5LDcwNCBAQAogIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKICJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD0obiAhPSAxKTtcbiIKIAotIzogYWR2aWNlLmM6OTkKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjM2OAorIywgYy1mb3JtYXQKK21zZ2lkICJIdWggKCVzKT8iCittc2dzdHIgIuWXr++8iCVz77yJ77yfIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo1MjEgYWRkLWludGVyYWN0aXZlLmM6ODIyIHNlcXVlbmNlci5jOjMxMjQKKyM6IHNlcXVlbmNlci5jOjM1NjIgYnVpbHRpbi9yZWJhc2UuYzo4NzUgYnVpbHRpbi9yZWJhc2UuYzoxNjg3CisjOiBidWlsdGluL3JlYmFzZS5jOjIwODYgYnVpbHRpbi9yZWJhc2UuYzoyMTMwCittc2dpZCAiY291bGQgbm90IHJlYWQgaW5kZXgiCittc2dzdHIgIuS4jeiDveivu+WPlue0ouW8lSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NTc2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjY5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI5NAorbXNnaWQgImJpbmFyeSIKK21zZ3N0ciAi5LqM6L+b5Yi2IgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2MzQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyNzgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzMyCittc2dpZCAibm90aGluZyIKK21zZ3N0ciAi5pegIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2MzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMTQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzI5Cittc2dpZCAidW5jaGFuZ2VkIgorbXNnc3RyICLmsqHmnInkv67mlLkiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY3MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY0MworbXNnaWQgIlVwZGF0ZSIKK21zZ3N0ciAi5pu05pawIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2ODkgYWRkLWludGVyYWN0aXZlLmM6ODc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGFnZSAnJXMnIgorbXNnc3RyICLkuI3og73mmoLlrZggJyVzJyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6Njk1IGFkZC1pbnRlcmFjdGl2ZS5jOjg4NCBzZXF1ZW5jZXIuYzozMzE3CisjOiBidWlsdGluL3JlYmFzZS5jOjg5OQorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBpbmRleCIKK21zZ3N0ciAi5LiN6IO95YaZ5YWl57Si5byVIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2OTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MjgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgInVwZGF0ZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJ1cGRhdGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gIuabtOaWsOS6hiAlZCDkuKrot6/lvoRcbiIKK21zZ3N0clsxXSAi5pu05paw5LqGICVkIOS4qui3r+W+hFxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3MTYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NzgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vdGU6ICVzIGlzIHVudHJhY2tlZCBub3cuXG4iCittc2dzdHIgIuivtOaYju+8miVzIOeOsOW3suaIkOS4uuacqui3n+i4queahOOAglxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3MjEgYXBwbHkuYzo0MTEwIGJ1aWx0aW4vY2hlY2tvdXQuYzoyODEKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFrZV9jYWNoZV9lbnRyeSBmYWlsZWQgZm9yIHBhdGggJyVzJyIKK21zZ3N0ciAi5a+56Lev5b6EICclcycg55qEIG1ha2VfY2FjaGVfZW50cnkg5pON5L2c5aSx6LSlIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3NTEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NTUKK21zZ2lkICJSZXZlcnQiCittc2dzdHIgIui/mOWOnyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NzY3Cittc2dpZCAiQ291bGQgbm90IHBhcnNlIEhFQURee3RyZWV9IgorbXNnc3RyICLkuI3og73op6PmnpAgSEVBRF57dHJlZX0iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjgwNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzMQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAicmV2ZXJ0ZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJyZXZlcnRlZCAlZCBwYXRoc1xuIgorbXNnc3RyWzBdICLov5jljp/kuoYgJWQg5Liq6Lev5b6EXG4iCittc2dzdHJbMV0gIui/mOWOn+S6hiAlZCDkuKrot6/lvoRcbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODU2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Njk1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHVudHJhY2tlZCBmaWxlcy5cbiIKK21zZ3N0ciAi5rKh5pyJ5pyq6Lef6Liq55qE5paH5Lu244CCXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjg2MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY4OQorbXNnaWQgIkFkZCB1bnRyYWNrZWQiCittc2dzdHIgIua3u+WKoOacqui3n+i4queahCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODg3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjI1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJhZGRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgImFkZGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gIuWinuWKoOS6hiAlZCDkuKrot6/lvoRcbiIKK21zZ3N0clsxXSAi5aKe5Yqg5LqGICVkIOS4qui3r+W+hFxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgdW5tZXJnZWQ6ICVzIgorbXNnc3RyICLlv73nlaXmnKrlkIjlhaXnmoTvvJolcyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTI5IGFkZC1wYXRjaC5jOjE2NzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzY2CisjLCBjLWZvcm1hdAorbXNnaWQgIk9ubHkgYmluYXJ5IGZpbGVzIGNoYW5nZWQuXG4iCittc2dzdHIgIuWPquacieS6jOi/m+WItuaWh+S7tuiiq+S/ruaUueOAglxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5MzEgYWRkLXBhdGNoLmM6MTY3MyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gY2hhbmdlcy5cbiIKK21zZ3N0ciAi5rKh5pyJ5L+u5pS544CCXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkzNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNzYKK21zZ2lkICJQYXRjaCB1cGRhdGUiCittc2dzdHIgIuihpeS4geabtOaWsCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTc0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1NAorbXNnaWQgIlJldmlldyBkaWZmIgorbXNnc3RyICLmo4Dop4YgZGlmZiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwMgorbXNnaWQgInNob3cgcGF0aHMgd2l0aCBjaGFuZ2VzIgorbXNnc3RyICLmmL7npLrlkKvlj5jmm7TnmoTot6/lvoQiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDQKK21zZ2lkICJhZGQgd29ya2luZyB0cmVlIHN0YXRlIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXMiCittc2dzdHIgIuWwhuW3peS9nOWMuueKtuaAgea3u+WKoOWIsOaaguWtmOWMuuS/ruaUuembhuS4rSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAwNgorbXNnaWQgInJldmVydCBzdGFnZWQgc2V0IG9mIGNoYW5nZXMgYmFjayB0byB0aGUgSEVBRCB2ZXJzaW9uIgorbXNnc3RyICLlsIbmmoLlrZjnmoTkv67mlLnpm4bmgaLlpI3kuLogSEVBRCDniYjmnKwiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDgKK21zZ2lkICJwaWNrIGh1bmtzIGFuZCB1cGRhdGUgc2VsZWN0aXZlbHkiCittc2dzdHIgIuaMkemAieaVsOaNruWdl+W5tuaciemAieaLqeWcsOabtOaWsCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAxMAorbXNnaWQgInZpZXcgZGlmZiBiZXR3ZWVuIEhFQUQgYW5kIGluZGV4IgorbXNnc3RyICLmmL7npLogSEVBRCDlkozntKLlvJXnmoTlt67lvIIiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMTIKK21zZ2lkICJhZGQgY29udGVudHMgb2YgdW50cmFja2VkIGZpbGVzIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXMiCittc2dzdHIgIuWwhuacqui3n+i4quaWh+S7tueahOWGheWuuea3u+WKoOWIsOaaguWtmOWMuuS/ruaUuembhuS4rSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyMCBhZGQtaW50ZXJhY3RpdmUuYzoxMDY5Cittc2dpZCAiUHJvbXB0IGhlbHA6IgorbXNnc3RyICLluK7liqnvvJoiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjIKK21zZ2lkICJzZWxlY3QgYSBzaW5nbGUgaXRlbSIKK21zZ3N0ciAi6YCJ5oup5LiA5Liq5p2h55uuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDI0Cittc2dpZCAic2VsZWN0IGEgcmFuZ2Ugb2YgaXRlbXMiCittc2dzdHIgIumAieaLqeS4gOezu+WIl+adoeebriIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyNgorbXNnaWQgInNlbGVjdCBtdWx0aXBsZSByYW5nZXMiCittc2dzdHIgIumAieaLqeWkmuS4quiMg+WbtCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyOCBhZGQtaW50ZXJhY3RpdmUuYzoxMDczCittc2dpZCAic2VsZWN0IGl0ZW0gYmFzZWQgb24gdW5pcXVlIHByZWZpeCIKK21zZ3N0ciAi5Z+65LqO5ZSv5LiA5YmN57yA6YCJ5oup5p2h55uuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDMwCittc2dpZCAidW5zZWxlY3Qgc3BlY2lmaWVkIGl0ZW1zIgorbXNnc3RyICLlj43pgInmjIflrprnmoTmnaHnm64iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMzIKK21zZ2lkICJjaG9vc2UgYWxsIGl0ZW1zIgorbXNnc3RyICLpgInmi6nmiYDmnInmnaHnm64iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMzQKK21zZ2lkICIoZW1wdHkpIGZpbmlzaCBzZWxlY3RpbmciCittc2dzdHIgIu+8iOepuu+8iee7k+adn+mAieaLqSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3MQorbXNnaWQgInNlbGVjdCBhIG51bWJlcmVkIGl0ZW0iCittc2dzdHIgIumAieaLqeS4gOS4que8luWPt+adoeebriIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA3NQorbXNnaWQgIihlbXB0eSkgc2VsZWN0IG5vdGhpbmciCittc2dzdHIgIu+8iOepuu+8ieS4jemAieaLqeS7u+S9leWGheWuuSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA4MyBidWlsdGluL2NsZWFuLmM6ODIyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTg1MQorbXNnaWQgIioqKiBDb21tYW5kcyAqKioiCittc2dzdHIgIioqKiDlkb3ku6QgKioqIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDg0IGJ1aWx0aW4vY2xlYW4uYzo4MjMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODQ4Cittc2dpZCAiV2hhdCBub3ciCittc2dzdHIgIuivt+mAieaLqSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTEzNiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMworbXNnaWQgInN0YWdlZCIKK21zZ3N0ciAi57yT5a2YIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTM2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEzCittc2dpZCAidW5zdGFnZWQiCittc2dzdHIgIuacque8k+WtmCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTEzNiBhcHBseS5jOjQ5NjcgYXBwbHkuYzo0OTcwIGJ1aWx0aW4vYW0uYzoyMjUxCisjOiBidWlsdGluL2FtLmM6MjI1NCBidWlsdGluL2Nsb25lLmM6MTIzIGJ1aWx0aW4vZmV0Y2guYzoxNDQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzQgYnVpbHRpbi9wdWxsLmM6MTg5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MDkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzk3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwMiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwNQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNDggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJwYXRoIgorbXNnc3RyICLot6/lvoQiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExNDMKK21zZ2lkICJjb3VsZCBub3QgcmVmcmVzaCBpbmRleCIKK21zZ3N0ciAi5LiN6IO95Yi35paw57Si5byVIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTU3IGJ1aWx0aW4vY2xlYW4uYzo3ODcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIkJ5ZS5cbiIKK21zZ3N0ciAi5YaN6KeB44CCXG4iCisKKyM6IGFkZC1wYXRjaC5jOjMzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQyOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3RhZ2UgbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuaaguWtmOaooeW8j+WPmOabtCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDI5CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5pqC5a2Y5Yig6Zmk5Yqo5L2cIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzozNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5pqC5a2Y6K+l5Z2XIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzozNworbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJzdGFnaW5nLiIKK21zZ3N0ciAi5aaC5p6c6KGl5LiB6IO95q2j56Gu5Zyw5bqU55So77yM57yW6L6R5Z2X5bCG56uL5Y2z5qCH6K6w5Li65pqC5a2Y44CCIgorCisjOiBhZGQtcGF0Y2guYzo0MAorbXNnaWQgIiIKKyJ5IC0gc3RhZ2UgdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHN0YWdlIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIOaaguWtmOivpeWdl1xuIgorIm4gLSDkuI3opoHmmoLlrZjor6XlnZdcbiIKKyJxIC0g6YCA5Ye644CC5LiN5pqC5a2Y6K+l5Z2X5Y+K5ZCO6Z2i55qE5YWo6YOo5Z2XXG4iCisiYSAtIOaaguWtmOivpeWdl+WSjOacrOaWh+S7tuS4reWQjumdoueahOWFqOmDqOWdl1xuIgorImQgLSDkuI3mmoLlrZjor6XlnZflkozmnKzmlofku7bkuK3lkI7pnaLnmoTlhajpg6jlnZdcbiIKKworIzogYWRkLXBhdGNoLmM6NTQgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDMzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi6LSu6JeP5qih5byP5Y+Y5pu0IFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo1NSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YXNoIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLotK7ol4/liKDpmaTliqjkvZwgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjU2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzNQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3Rhc2ggdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLotK7ol4/or6XlnZcgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjU4Cittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorInN0YXNoaW5nLiIKK21zZ3N0ciAi5aaC5p6c6KGl5LiB6IO95q2j56Gu5Zyw5bqU55So77yM57yW6L6R5Z2X5bCG56uL5Y2z5qCH6K6w5Li66LSu6JeP44CCIgorCisjOiBhZGQtcGF0Y2guYzo2MQorbXNnaWQgIiIKKyJ5IC0gc3Rhc2ggdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCBzdGFzaCB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHN0YXNoIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHN0YXNoIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBzdGFzaCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIOi0ruiXj+ivpeWdl1xuIgorIm4gLSDkuI3opoHotK7ol4/or6XlnZdcbiIKKyJxIC0g6YCA5Ye644CC5LiN6LSu6JeP6K+l5Z2X5Y+K5ZCO6Z2i55qE5YWo6YOo5Z2XXG4iCisiYSAtIOi0ruiXj+ivpeWdl+WSjOacrOaWh+S7tuS4reWQjumdoueahOWFqOmDqOWdl1xuIgorImQgLSDkuI3otK7ol4/or6XlnZflkozmnKzmlofku7bkuK3lkI7pnaLnmoTlhajpg6jlnZdcbiIKKworIzogYWRkLXBhdGNoLmM6NzcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLlj5bmtojmmoLlrZjmqKHlvI/lj5jmm7QgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjc4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzOQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5zdGFnZSBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5Y+W5raI5pqC5a2Y5Yig6Zmk5Yqo5L2cIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo3OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDAKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLlj5bmtojmmoLlrZjor6XlnZcgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjgxCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorInVuc3RhZ2luZy4iCittc2dzdHIgIuWmguaenOihpeS4geiDveato+ehruWcsOW6lOeUqO+8jOe8lui+keWdl+Wwhueri+WNs+agh+iusOS4uuacquaaguWtmOOAgiIKKworIzogYWRkLXBhdGNoLmM6ODQKK21zZ2lkICIiCisieSAtIHVuc3RhZ2UgdGhpcyBodW5rXG4iCisibiAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVua1xuIgorInEgLSBxdWl0OyBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSB1bnN0YWdlIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0g5Y+W5raI5pqC5a2Y6K+l5Z2XXG4iCisibiAtIOS4jeimgeWPlua2iOaaguWtmOivpeWdl1xuIgorInEgLSDpgIDlh7rjgILkuI3opoHlj5bmtojmmoLlrZjor6XlnZflj4rlkI7pnaLnmoTlhajpg6jlnZdcbiIKKyJhIC0g5Y+W5raI5pqC5a2Y6K+l5Z2X5ZKM5pys5paH5Lu25Lit5ZCO6Z2i55qE5YWo6YOo5Z2XXG4iCisiZCAtIOS4jeimgeWPlua2iOaaguWtmOivpeWdl+WSjOacrOaWh+S7tuS4reWQjumdoueahOWFqOmDqOWdl1xuIgorCisjOiBhZGQtcGF0Y2guYzo5OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDMKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLlsIbmqKHlvI/lj5jmm7TlupTnlKjliLDntKLlvJUgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEwMCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLlsIbliKDpmaTmk43kvZzlupTnlKjliLDntKLlvJUgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEwMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NDUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5bCG6K+l5Z2X5bqU55So5Yiw57Si5byVIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMDMgYWRkLXBhdGNoLmM6MTY4IGFkZC1wYXRjaC5jOjIxMQorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJhcHBseWluZy4iCittc2dzdHIgIuWmguaenOihpeS4geiDveato+ehruWcsOW6lOeUqO+8jOe8lui+keWdl+Wwhueri+WNs+agh+iusOS4uuW6lOeUqOOAgiIKKworIzogYWRkLXBhdGNoLmM6MTA2Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0g5Zyo57Si5byV5Lit5bqU55So6K+l5Z2XXG4iCisibiAtIOS4jeimgeWcqOe0ouW8leS4reW6lOeUqOivpeWdl1xuIgorInEgLSDpgIDlh7rjgILkuI3opoHlupTnlKjor6XlnZflj4rlkI7pnaLnmoTlhajpg6jlnZdcbiIKKyJhIC0g5bqU55So6K+l5Z2X5ZKM5pys5paH5Lu25Lit5ZCO6Z2i55qE5YWo6YOo5Z2XXG4iCisiZCAtIOS4jeimgeW6lOeUqOivpeWdl+WSjOacrOaWh+S7tuS4reWQjumdoueahOWFqOmDqOWdl1xuIgorCisjOiBhZGQtcGF0Y2guYzoxMjEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjMKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5LuO5bel5L2c5Yy65Lit5Lii5byD5qih5byP5Y+Y5pu0IFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5LuO5bel5L2c5Yy65Lit5Lii5byD5Yig6Zmk5Yqo5L2cIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDUwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuS7juW3peS9nOWMuuS4reS4ouW8g+ivpeWdlyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTI1IGFkZC1wYXRjaC5jOjE0NyBhZGQtcGF0Y2guYzoxOTAKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisiZGlzY2FyZGluZy4iCittc2dzdHIgIuWmguaenOihpeS4geiDveato+ehruWcsOW6lOeUqO+8jOe8lui+keWdl+Wwhueri+WNs+agh+iusOS4uuS4ouW8g+OAgiIKKworIzogYWRkLXBhdGNoLmM6MTI4IGFkZC1wYXRjaC5jOjE5MworbXNnaWQgIiIKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0g5Zyo5bel5L2c5Yy65Lit5Lii5byD6K+l5Z2XXG4iCisibiAtIOS4jeimgeWcqOW3peS9nOWMuuS4reS4ouW8g+ivpeWdl1xuIgorInEgLSDpgIDlh7rjgILkuI3opoHkuKLlvIPor6XlnZflj4rlkI7pnaLnmoTlhajpg6jlnZdcbiIKKyJhIC0g5Lii5byD6K+l5Z2X5ZKM5pys5paH5Lu25Lit5ZCO6Z2i55qE5YWo6YOo5Z2XXG4iCisiZCAtIOS4jeimgeS4ouW8g+ivpeWdl+WSjOacrOaWh+S7tuS4reWQjumdoueahOWFqOmDqOWdl1xuIgorCisjOiBhZGQtcGF0Y2guYzoxNDMgYWRkLXBhdGNoLmM6MTg2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1MworIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBtb2RlIGNoYW5nZSBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5LuO57Si5byV5ZKM5bel5L2c5Yy65Lit5Lii5byD5qih5byP5Y+Y5pu0IFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNDQgYWRkLXBhdGNoLmM6MTg3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1NAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCBkZWxldGlvbiBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5LuO57Si5byV5ZKM5bel5L2c5Yy65Lit5Lii5byD5Yig6ZmkIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNDUgYWRkLXBhdGNoLmM6MTg4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuS7jue0ouW8leWSjOW3peS9nOWMuuS4reS4ouW8g+ivpeWdlyBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTUwCittc2dpZCAiIgorInkgLSBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gZGlzY2FyZCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIOWcqOe0ouW8leWSjOW3peS9nOWMuuS4reS4ouW8g+ivpeWdl1xuIgorIm4gLSDkuI3opoHlnKjntKLlvJXlkozlt6XkvZzljLrkuK3kuKLlvIPor6XlnZdcbiIKKyJxIC0g6YCA5Ye644CC5LiN6KaB5Lii5byD6K+l5Z2X5Y+K5ZCO6Z2i55qE5YWo6YOo5Z2XXG4iCisiYSAtIOS4ouW8g+ivpeWdl+WSjOacrOaWh+S7tuS4reWQjumdoueahOWFqOmDqOWdl1xuIgorImQgLSDkuI3opoHkuKLlvIPor6XlnZflkozmnKzmlofku7bkuK3lkI7pnaLnmoTlhajpg6jlnZdcbiIKKworIzogYWRkLXBhdGNoLmM6MTY0IGFkZC1wYXRjaC5jOjIwNyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IG1vZGUgY2hhbmdlIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5bCG5qih5byP5Y+Y5pu05bqU55So5Yiw57Si5byV5ZKM5bel5L2c5Yy6IFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNjUgYWRkLXBhdGNoLmM6MjA4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1OQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLlsIbliKDpmaTmk43kvZzlupTnlKjliLDntKLlvJXlkozlt6XkvZzljLogW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE2NiBhZGQtcGF0Y2guYzoyMDkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDYwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLlsIbor6XlnZflupTnlKjliLDntKLlvJXlkozlt6XkvZzljLogW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE3MQorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0g5Zyo57Si5byV5ZKM5bel5L2c5Yy65Lit5bqU55So6K+l5Z2XXG4iCisibiAtIOS4jeimgeWcqOe0ouW8leWSjOW3peS9nOWMuuS4reW6lOeUqOivpeWdl1xuIgorInEgLSDpgIDlh7rjgILkuI3opoHlupTnlKjor6XlnZflj4rlkI7pnaLnmoTlhajpg6jlnZdcbiIKKyJhIC0g5bqU55So6K+l5Z2X5ZKM5pys5paH5Lu25Lit5ZCO6Z2i55qE5YWo6YOo5Z2XXG4iCisiZCAtIOS4jeimgeW6lOeUqOivpeWdl+WSjOacrOaWh+S7tuS4reWQjumdoueahOWFqOmDqOWdl1xuIgorCisjOiBhZGQtcGF0Y2guYzoyMTQKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSDlnKjlt6XkvZzljLrkuK3lupTnlKjor6XlnZdcbiIKKyJuIC0g5LiN6KaB5Zyo5bel5L2c5Yy65Lit5bqU55So6K+l5Z2XXG4iCisicSAtIOmAgOWHuuOAguS4jeimgeW6lOeUqOivpeWdl+WPiuWQjumdoueahOWFqOmDqOWdl1xuIgorImEgLSDlupTnlKjor6XlnZflkozmnKzmlofku7bkuK3lkI7pnaLnmoTlhajpg6jlnZdcbiIKKyJkIC0g5LiN6KaB5bqU55So6K+l5Z2X5ZKM5pys5paH5Lu25Lit5ZCO6Z2i55qE5YWo6YOo5Z2XXG4iCisKKyM6IGFkZC1wYXRjaC5jOjMxOAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgaHVuayBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICLml6Dms5Xop6PmnpDmlbDmja7lnZflpLTkv6Hmga8gJyUuKnMnIgorCisjOiBhZGQtcGF0Y2guYzozMzcgYWRkLXBhdGNoLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb2xvcmVkIGh1bmsgaGVhZGVyICclLipzJyIKK21zZ3N0ciAi5peg5rOV6Kej5p6Q5b2p6Imy5pWw5o2u5Z2X5aS05L+h5oGvICclLipzJyIKKworIzogYWRkLXBhdGNoLmM6Mzk1Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGRpZmYiCittc2dzdHIgIuS4jeiDveino+aekOW3ruW8guS/oeaBryIKKworIzogYWRkLXBhdGNoLmM6NDE0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGNvbG9yZWQgZGlmZiIKK21zZ3N0ciAi5LiN6IO96Kej5p6Q5b2p6Imy5beu5byC5L+h5oGvIgorCisjOiBhZGQtcGF0Y2guYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJ1biAnJXMnIgorbXNnc3RyICLov5DooYwgJyVzJyDlpLHotKUiCisKKyM6IGFkZC1wYXRjaC5jOjU4NworbXNnaWQgIm1pc21hdGNoZWQgb3V0cHV0IGZyb20gaW50ZXJhY3RpdmUuZGlmZkZpbHRlciIKK21zZ3N0ciAiaW50ZXJhY3RpdmUuZGlmZkZpbHRlciDnmoTovpPlh7rkuI3ljLnphY0iCisKKyM6IGFkZC1wYXRjaC5jOjU4OAorbXNnaWQgIiIKKyJZb3VyIGZpbHRlciBtdXN0IG1haW50YWluIGEgb25lLXRvLW9uZSBjb3JyZXNwb25kZW5jZVxuIgorImJldHdlZW4gaXRzIGlucHV0IGFuZCBvdXRwdXQgbGluZXMuIgorbXNnc3RyICLmgqjnmoTov4fmu6Tlmajlv4XpobvlnKjlhbbovpPlhaXlkozovpPlh7rnmoTooYzkuYvpl7Tkv53mjIHkuIDkuIDlr7nlupTnmoTlhbPns7vjgIIiCisKKyM6IGFkZC1wYXRjaC5jOjc2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZXhwZWN0ZWQgY29udGV4dCBsaW5lICMlZCBpblxuIgorIiUuKnMiCittc2dzdHIgIiIKKyLpooTmnJ/kuIrkuIvmlofooYwgIyVkIOS6jlxuIgorIiUuKnMiCisKKyM6IGFkZC1wYXRjaC5jOjc3NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaHVua3MgZG8gbm90IG92ZXJsYXA6XG4iCisiJS4qc1xuIgorIlx0ZG9lcyBub3QgZW5kIHdpdGg6XG4iCisiJS4qcyIKK21zZ3N0ciAiIgorIuWdl+S4jemHjeWPoO+8mlxuIgorIiUuKnNcbiIKKyJcdOS4jeaYr+e7k+WwvuS6ju+8mlxuIgorIiUuKnMiCisKKyM6IGFkZC1wYXRjaC5jOjEwNTIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTEyCittc2dpZCAiTWFudWFsIGh1bmsgZWRpdCBtb2RlIC0tIHNlZSBib3R0b20gZm9yIGEgcXVpY2sgZ3VpZGUuXG4iCittc2dzdHIgIuaJi+WKqOWdl+e8lui+keaooeW8jyAtLSDmn6XnnIvlupXpg6jnmoTlv6vpgJ/mjIfljZfjgIJcbiIKKworIzogYWRkLXBhdGNoLmM6MTA1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0tXG4iCisiVG8gcmVtb3ZlICclYycgbGluZXMsIG1ha2UgdGhlbSAnICcgbGluZXMgKGNvbnRleHQpLlxuIgorIlRvIHJlbW92ZSAnJWMnIGxpbmVzLCBkZWxldGUgdGhlbS5cbiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICVjIHdpbGwgYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorIi0tLVxuIgorIuimgeWIoOmZpCAnJWMnIOW8gOWni+eahOihjO+8jOS9v+WFtuaIkOS4uiAnICcg5byA5aeL55qE6KGM77yI5LiK5LiL5paH77yJ44CCXG4iCisi6KaB5Yig6ZmkICclYycg5byA5aeL55qE6KGM77yM5Yig6Zmk5a6D5Lus44CCXG4iCisi5LulICVjIOW8gOWni+eahOihjOWwhuiiq+WIoOmZpOOAglxuIgorCisjLiBUUkFOU0xBVE9SUzogJ2l0JyByZWZlcnMgdG8gdGhlIHBhdGNoIG1lbnRpb25lZCBpbiB0aGUgcHJldmlvdXMgbWVzc2FnZXMuCisjOiBhZGQtcGF0Y2guYzoxMDcwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTEyNgorbXNnaWQgIiIKKyJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSBnaXZlbiBhbiBvcHBvcnR1bml0eSB0b1xuIgorImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlIHJlbW92ZWQsIHRoZW4gdGhlIGVkaXQgaXNcbiIKKyJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIKK21zZ3N0ciAiIgorIuWmguaenOS4jeiDveW5suWHgOWcsOW6lOeUqO+8jOaCqOWwhuacieacuuS8mumHjeaWsOe8lui+keOAguWmguaenOivpeWdl+eahOWFqOmDqOWGheWuueWIoOmZpO+8jOWImVxuIgorIuatpOasoee8lui+keiiq+e7iOatou+8jOivpeWdl+S4jeS8muiiq+S/ruaUueOAglxuIgorCisjOiBhZGQtcGF0Y2guYzoxMTAzCittc2dpZCAiY291bGQgbm90IHBhcnNlIGh1bmsgaGVhZGVyIgorbXNnc3RyICLml6Dms5Xop6PmnpDmlbDmja7lnZflpLTkv6Hmga8iCisKKyM6IGFkZC1wYXRjaC5jOjExNDgKK21zZ2lkICInZ2l0IGFwcGx5IC0tY2FjaGVkJyBmYWlsZWQiCittc2dzdHIgIidnaXQgYXBwbHkgLS1jYWNoZWQnIOWksei0pSIKKworIy4gVFJBTlNMQVRPUlM6IGRvIG5vdCB0cmFuc2xhdGUgW3kvbl0KKyMuIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgdGhhdCBpbnB1dCBhdCB0aGlzIHBvaW50LgorIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKKyMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCisjLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KKyMuCisjLiBUUkFOU0xBVE9SUzogZG8gbm90IHRyYW5zbGF0ZSBbeS9uXQorIy4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCB0aGF0IGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKKyMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCisjLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KKyM6IGFkZC1wYXRjaC5jOjEyMTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjM5Cittc2dpZCAiIgorIllvdXIgZWRpdGVkIGh1bmsgZG9lcyBub3QgYXBwbHkuIEVkaXQgYWdhaW4gKHNheWluZyBcIm5vXCIgZGlzY2FyZHMhKSBbeS9uXT8gIgorbXNnc3RyICLmgqjnmoTnvJbovpHlnZfkuI3og73ooqvlupTnlKjjgILph43mlrDnvJbovpHvvIjpgInmi6kgXCJub1wiIOS4ouW8g++8ge+8iSBbeS9uXT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMjYxCittc2dpZCAiVGhlIHNlbGVjdGVkIGh1bmtzIGRvIG5vdCBhcHBseSB0byB0aGUgaW5kZXghIgorbXNnc3RyICLpgInkuK3nmoTlnZfkuI3og73lupTnlKjliLDntKLlvJXvvIEiCisKKyM6IGFkZC1wYXRjaC5jOjEyNjIgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQzCittc2dpZCAiQXBwbHkgdGhlbSB0byB0aGUgd29ya3RyZWUgYW55d2F5PyAiCittc2dzdHIgIuaXoOiuuuWmguS9lemDveimgeW6lOeUqOWIsOW3peS9nOWMuuS5iO+8nyIKKworIzogYWRkLXBhdGNoLmM6MTI2OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDYKK21zZ2lkICJOb3RoaW5nIHdhcyBhcHBsaWVkLlxuIgorbXNnc3RyICLmnKrlupTnlKjjgIJcbiIKKworIzogYWRkLXBhdGNoLmM6MTMyNgorbXNnaWQgIiIKKyJqIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIG5leHQgdW5kZWNpZGVkIGh1bmtcbiIKKyJKIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIG5leHQgaHVua1xuIgorImsgLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgcHJldmlvdXMgdW5kZWNpZGVkIGh1bmtcbiIKKyJLIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIHByZXZpb3VzIGh1bmtcbiIKKyJnIC0gc2VsZWN0IGEgaHVuayB0byBnbyB0b1xuIgorIi8gLSBzZWFyY2ggZm9yIGEgaHVuayBtYXRjaGluZyB0aGUgZ2l2ZW4gcmVnZXhcbiIKKyJzIC0gc3BsaXQgdGhlIGN1cnJlbnQgaHVuayBpbnRvIHNtYWxsZXIgaHVua3NcbiIKKyJlIC0gbWFudWFsbHkgZWRpdCB0aGUgY3VycmVudCBodW5rXG4iCisiPyAtIHByaW50IGhlbHBcbiIKK21zZ3N0ciAiIgorImogLSDnu7TmjIHor6XlnZfmnKrlhrPnirbmgIHvvIzmn6XnnIvkuIvkuIDkuKrmnKrlhrPlnZdcbiIKKyJKIC0g57u05oyB6K+l5Z2X5pyq5Yaz54q25oCB77yM5p+l55yL5LiL5LiA5Liq5Z2XXG4iCisiayAtIOe7tOaMgeivpeWdl+acquWGs+eKtuaAge+8jOafpeeci+S4iuS4gOS4quacquWGs+Wdl1xuIgorIksgLSDnu7TmjIHor6XlnZfmnKrlhrPnirbmgIHvvIzmn6XnnIvkuIrkuIDkuKrlnZdcbiIKKyJnIC0g6YCJ5oup6Lez6L2s5Yiw5LiA5Liq5Z2XXG4iCisiLyAtIOafpeaJvuWSjOe7meWumuato+WImeihqOi+vuW8j+WMuemFjeeahOWdl1xuIgorInMgLSDmi4bliIblvZPliY3lnZfkuLrmm7TlsI/nmoTlnZdcbiIKKyJlIC0g5omL5Yqo57yW6L6R5b2T5YmN5Z2XXG4iCisiPyAtIOaYvuekuuW4ruWKqVxuIgorCisjOiBhZGQtcGF0Y2guYzoxNDQ3IGFkZC1wYXRjaC5jOjE0NTcKK21zZ2lkICJObyBwcmV2aW91cyBodW5rIgorbXNnc3RyICLmsqHmnInliY3kuIDkuKrlnZciCisKKyM6IGFkZC1wYXRjaC5jOjE0NTIgYWRkLXBhdGNoLmM6MTQ2MgorbXNnaWQgIk5vIG5leHQgaHVuayIKK21zZ3N0ciAi5rKh5pyJ5LiL5LiA5Liq5Z2XIgorCisjOiBhZGQtcGF0Y2guYzoxNDY4Cittc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gZ290byIKK21zZ3N0ciAi5rKh5pyJ5YW25a6D5Y+v5L6b6Lez6L2s55qE5Z2XIgorCisjOiBhZGQtcGF0Y2guYzoxNDc5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3NworbXNnaWQgImdvIHRvIHdoaWNoIGh1bmsgKDxyZXQ+IHRvIHNlZSBtb3JlKT8gIgorbXNnc3RyICLot7PovazliLDlk6rkuKrlnZfvvIg85Zue6L2mPiDmn6XnnIvmm7TlpJrvvInvvJ8gIgorCisjOiBhZGQtcGF0Y2guYzoxNDgwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3OQorbXNnaWQgImdvIHRvIHdoaWNoIGh1bms/ICIKK21zZ3N0ciAi6Lez6L2s5Yiw5ZOq5Liq5Z2X77yfIgorCisjOiBhZGQtcGF0Y2guYzoxNDkxCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgbnVtYmVyOiAnJXMnIgorbXNnc3RyICLml6DmlYjmlbDlrZfvvJonJXMnIgorCisjOiBhZGQtcGF0Y2guYzoxNDk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlNvcnJ5LCBvbmx5ICVkIGh1bmsgYXZhaWxhYmxlLiIKK21zZ2lkX3BsdXJhbCAiU29ycnksIG9ubHkgJWQgaHVua3MgYXZhaWxhYmxlLiIKK21zZ3N0clswXSAi5a+55LiN6LW377yM5Y+q5pyJICVkIOS4quWPr+eUqOWdl+OAgiIKK21zZ3N0clsxXSAi5a+55LiN6LW377yM5Y+q5pyJICVkIOS4quWPr+eUqOWdl+OAgiIKKworIzogYWRkLXBhdGNoLmM6MTUwNQorbXNnaWQgIk5vIG90aGVyIGh1bmtzIHRvIHNlYXJjaCIKK21zZ3N0ciAi5rKh5pyJ5YW25a6D5Y+v5L6b5p+l5om+55qE5Z2XIgorCisjOiBhZGQtcGF0Y2guYzoxNTExIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYyMworbXNnaWQgInNlYXJjaCBmb3IgcmVnZXg/ICIKK21zZ3N0ciAi5L2/55So5q2j5YiZ6KGo6L6+5byP5pCc57Si77yfIgorCisjOiBhZGQtcGF0Y2guYzoxNTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIk1hbGZvcm1lZCBzZWFyY2ggcmVnZXhwICVzOiAlcyIKK21zZ3N0ciAi6ZSZ6K+v55qE5q2j5YiZ6KGo6L6+5byPICVz77yaJXMiCisKKyM6IGFkZC1wYXRjaC5jOjE1NDMKK21zZ2lkICJObyBodW5rIG1hdGNoZXMgdGhlIGdpdmVuIHBhdHRlcm4iCittc2dzdHIgIuayoeacieWSjOe7meWumuaooeW8j+ebuOWMuemFjeeahOWdlyIKKworIzogYWRkLXBhdGNoLmM6MTU1MAorbXNnaWQgIlNvcnJ5LCBjYW5ub3Qgc3BsaXQgdGhpcyBodW5rIgorbXNnc3RyICLlr7nkuI3otbfvvIzkuI3og73mi4bliIbov5nkuKrlnZciCisKKyM6IGFkZC1wYXRjaC5jOjE1NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3BsaXQgaW50byAlZCBodW5rcy4iCittc2dzdHIgIuaLhuWIhuS4uiAlZCDlnZfjgIIiCisKKyM6IGFkZC1wYXRjaC5jOjE1NTgKK21zZ2lkICJTb3JyeSwgY2Fubm90IGVkaXQgdGhpcyBodW5rIgorbXNnc3RyICLlr7nkuI3otbfvvIzkuI3og73nvJbovpHov5nkuKrlnZciCisKKyM6IGFkZC1wYXRjaC5jOjE2MDkKK21zZ2lkICInZ2l0IGFwcGx5JyBmYWlsZWQiCittc2dzdHIgIidnaXQgYXBwbHknIOWksei0pSIKKworIzogYWR2aWNlLmM6MTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzaGludDogJS4qcyVzXG4iCiBtc2dzdHIgIiVz5o+Q56S677yaJS4qcyVzXG4iCiAKLSM6IGFkdmljZS5jOjE1MgorIzogYWR2aWNlLmM6MTY4CiBtc2dpZCAiQ2hlcnJ5LXBpY2tpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICLml6Dms5Xmi6PpgInvvIzlm6DkuLrmgqjmnInmnKrlkIjlubbnmoTmlofku7bjgIIiCiAKLSM6IGFkdmljZS5jOjE1NAorIzogYWR2aWNlLmM6MTcwCiBtc2dpZCAiQ29tbWl0dGluZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgIuaXoOazleaPkOS6pO+8jOWboOS4uuaCqOacieacquWQiOW5tueahOaWh+S7tuOAgiIKIAotIzogYWR2aWNlLmM6MTU2CisjOiBhZHZpY2UuYzoxNzIKIG1zZ2lkICJNZXJnaW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAi5peg5rOV5ZCI5bm277yM5Zug5Li65oKo5pyJ5pyq5ZCI5bm255qE5paH5Lu244CCIgogCi0jOiBhZHZpY2UuYzoxNTgKKyM6IGFkdmljZS5jOjE3NAogbXNnaWQgIlB1bGxpbmcgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgogbXNnc3RyICLml6Dms5Xmi4nlj5bvvIzlm6DkuLrmgqjmnInmnKrlkIjlubbnmoTmlofku7bjgIIiCiAKLSM6IGFkdmljZS5jOjE2MAorIzogYWR2aWNlLmM6MTc2CiBtc2dpZCAiUmV2ZXJ0aW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKIG1zZ3N0ciAi5peg5rOV5Zue6YCA77yM5Zug5Li65oKo5pyJ5pyq5ZCI5bm255qE5paH5Lu244CCIgogCi0jOiBhZHZpY2UuYzoxNjIKKyM6IGFkdmljZS5jOjE3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJJdCBpcyBub3QgcG9zc2libGUgdG8gJXMgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCiBtc2dzdHIgIuaXoOazlSAlc++8jOWboOS4uuaCqOacieacquWQiOW5tueahOaWh+S7tuOAgiIKIAotIzogYWR2aWNlLmM6MTcwCisjOiBhZHZpY2UuYzoxODYKIG1zZ2lkICIiCiAiRml4IHRoZW0gdXAgaW4gdGhlIHdvcmsgdHJlZSwgYW5kIHRoZW4gdXNlICdnaXQgYWRkL3JtIDxmaWxlPidcbiIKICJhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24gYW5kIG1ha2UgYSBjb21taXQuIgpAQCAtMTg2LDEzNSArODU0LDE0NSBAQAogIuivt+WcqOW3peS9nOWMuuaUueato+aWh+S7tu+8jOeEtuWQjumFjOaDheS9v+eUqCAnZ2l0IGFkZC9ybSA85paH5Lu2Picg5ZG95Luk5qCH6K6wXG4iCiAi6Kej5Yaz5pa55qGI5bm25o+Q5Lqk44CCIgogCi0jOiBhZHZpY2UuYzoxNzgKKyM6IGFkdmljZS5jOjE5NAogbXNnaWQgIkV4aXRpbmcgYmVjYXVzZSBvZiBhbiB1bnJlc29sdmVkIGNvbmZsaWN0LiIKIG1zZ3N0ciAi5Zug5Li65a2Y5Zyo5pyq6Kej5Yaz55qE5Yay56qB6ICM6YCA5Ye644CCIgogCi0jOiBhZHZpY2UuYzoxODMgYnVpbHRpbi9tZXJnZS5jOjEyODkKKyM6IGFkdmljZS5jOjE5OSBidWlsdGluL21lcmdlLmM6MTMzNQogbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBtZXJnZSAoTUVSR0VfSEVBRCBleGlzdHMpLiIKIG1zZ3N0ciAi5oKo5bCa5pyq57uT5p2f5oKo55qE5ZCI5bm277yI5a2Y5ZyoIE1FUkdFX0hFQUTvvInjgIIiCiAKLSM6IGFkdmljZS5jOjE4NQorIzogYWR2aWNlLmM6MjAxCiBtc2dpZCAiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSBtZXJnaW5nLiIKIG1zZ3N0ciAi6K+35Zyo5ZCI5bm25YmN5YWI5o+Q5Lqk5oKo55qE5L+u5pS544CCIgogCi0jOiBhZHZpY2UuYzoxODYKKyM6IGFkdmljZS5jOjIwMgogbXNnaWQgIkV4aXRpbmcgYmVjYXVzZSBvZiB1bmZpbmlzaGVkIG1lcmdlLiIKIG1zZ3N0ciAi5Zug5Li65a2Y5Zyo5pyq5a6M5oiQ55qE5ZCI5bm26ICM6YCA5Ye644CCIgogCi0jOiBhZHZpY2UuYzoxOTIKKyM6IGFkdmljZS5jOjIwOAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCi0iTm90ZTogY2hlY2tpbmcgb3V0ICclcycuXG4iCisiTm90ZTogc3dpdGNoaW5nIHRvICclcycuXG4iCiAiXG4iCiAiWW91IGFyZSBpbiAnZGV0YWNoZWQgSEVBRCcgc3RhdGUuIFlvdSBjYW4gbG9vayBhcm91bmQsIG1ha2UgZXhwZXJpbWVudGFsXG4iCiAiY2hhbmdlcyBhbmQgY29tbWl0IHRoZW0sIGFuZCB5b3UgY2FuIGRpc2NhcmQgYW55IGNvbW1pdHMgeW91IG1ha2UgaW4gdGhpc1xuIgotInN0YXRlIHdpdGhvdXQgaW1wYWN0aW5nIGFueSBicmFuY2hlcyBieSBwZXJmb3JtaW5nIGFub3RoZXIgY2hlY2tvdXQuXG4iCisic3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHN3aXRjaGluZyBiYWNrIHRvIGEgYnJhbmNoLlxuIgogIlxuIgogIklmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIG5ldyBicmFuY2ggdG8gcmV0YWluIGNvbW1pdHMgeW91IGNyZWF0ZSwgeW91IG1heVxuIgotImRvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1iIHdpdGggdGhlIGNoZWNrb3V0IGNvbW1hbmQgYWdhaW4uIEV4YW1wbGU6XG4iCisiZG8gc28gKG5vdyBvciBsYXRlcikgYnkgdXNpbmcgLWMgd2l0aCB0aGUgc3dpdGNoIGNvbW1hbmQuIEV4YW1wbGU6XG4iCiAiXG4iCi0iICBnaXQgY2hlY2tvdXQgLWIgPG5ldy1icmFuY2gtbmFtZT5cbiIKKyIgIGdpdCBzd2l0Y2ggLWMgPG5ldy1icmFuY2gtbmFtZT5cbiIKKyJcbiIKKyJPciB1bmRvIHRoaXMgb3BlcmF0aW9uIHdpdGg6XG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1cbiIKKyJcbiIKKyJUdXJuIG9mZiB0aGlzIGFkdmljZSBieSBzZXR0aW5nIGNvbmZpZyB2YXJpYWJsZSBhZHZpY2UuZGV0YWNoZWRIZWFkIHRvICIKKyJmYWxzZVxuIgogIlxuIgogbXNnc3RyICIiCi0i5rOo5oSP77ya5q2j5Zyo5qOA5Ye6ICclcyfjgIJcbiIKKyLms6jmhI/vvJrmraPlnKjliIfmjaLliLAgJyVzJ+OAglxuIgogIlxuIgotIuaCqOato+WkhOS6juWIhuemu+WktOaMh+mSiOeKtuaAgeOAguaCqOWPr+S7peafpeeci+OAgeWBmuivlemqjOaAp+eahOS/ruaUueWPiuaPkOS6pO+8jOW5tuS4lOaCqOWPr+S7pemAmui/h+WPpiIKLSLlpJZcbiIKLSLnmoTmo4Dlh7rliIbmlK/mk43kvZzkuKLlvIPlnKjov5nkuKrnirbmgIHkuIvmiYDlgZrnmoTku7vkvZXmj5DkuqTjgIJcbiIKKyLmgqjmraPlpITkuo7liIbnprvlpLTmjIfpkojnirbmgIHjgILmgqjlj6/ku6Xmn6XnnIvjgIHlgZror5XpqozmgKfnmoTkv67mlLnlj4rmj5DkuqTvvIzlubbkuJTmgqjlj6/ku6XlnKjliIfmjaJcbiIKKyLlm57kuIDkuKrliIbmlK/ml7bvvIzkuKLlvIPlnKjmraTnirbmgIHkuIvmiYDlgZrnmoTmj5DkuqTogIzkuI3lr7nliIbmlK/pgKDmiJDlvbHlk43jgIJcbiIKICJcbiIKLSLlpoLmnpzmgqjmg7PopoHpgJrov4fliJvlu7rliIbmlK/mnaXkv53nlZnlnKjmraTnirbmgIHkuIvmiYDlgZrnmoTmj5DkuqTvvIzmgqjlj6/ku6XpgJrov4flnKjmo4Dlh7rlkb3ku6Tmt7vliqBcbiIKLSLlj4LmlbAgLWIg5p2l5a6e546w77yI546w5Zyo5oiW56iN5ZCO77yJ44CC5L6L5aaC77yaXG4iCisi5aaC5p6c5oKo5oOz6KaB6YCa6L+H5Yib5bu65YiG5pSv5p2l5L+d55WZ5Zyo5q2k54q25oCB5LiL5omA5YGa55qE5o+Q5Lqk77yM5oKo5Y+v5Lul6YCa6L+H5ZyoIHN3aXRjaCDlkb3ku6RcbiIKKyLkuK3mt7vliqDlj4LmlbAgLWMg5p2l5a6e546w77yI546w5Zyo5oiW56iN5ZCO77yJ44CC5L6L5aaC77yaXG4iCiAiXG4iCi0iICBnaXQgY2hlY2tvdXQgLWIgPOaWsOWIhuaUr+WQjT5cbiIKKyIgIGdpdCBzd2l0Y2ggLWMgPOaWsOWIhuaUr+WQjT5cbiIKKyJcbiIKKyLmiJbogIXmkqTplIDmraTmk43kvZzvvJpcbiIKKyJcbiIKKyIgIGdpdCBzd2l0Y2ggLVxuIgorIlxuIgorIumAmui/h+WwhumFjee9ruWPmOmHjyBhZHZpY2UuZGV0YWNoZWRIZWFkIOiuvue9ruS4uiBmYWxzZSDmnaXlhbPpl63mraTlu7rorq5cbiIKICJcbiIKIAotIzogYXBwbHkuYzo1OQorIzogYWxpYXMuYzo1MAorbXNnaWQgImNtZGxpbmUgZW5kcyB3aXRoIFxcIgorbXNnc3RyICLlkb3ku6TooYzku6UgXFwg57uT5bC+IgorCisjOiBhbGlhcy5jOjUxCittc2dpZCAidW5jbG9zZWQgcXVvdGUiCittc2dzdHIgIuacquWFs+mXreeahOW8leWPtyIKKworIzogYXBwbHkuYzo2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgd2hpdGVzcGFjZSBvcHRpb24gJyVzJyIKIG1zZ3N0ciAi5pyq6IO96K+G5Yir55qE56m655m95a2X56ym6YCJ6aG5ICclcyciCiAKLSM6IGFwcGx5LmM6NzUKKyM6IGFwcGx5LmM6ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2UgaWdub3JlIG9wdGlvbiAnJXMnIgogbXNnc3RyICLmnKrog73or4bliKvnmoTnqbrnmb3lrZfnrKblv73nlaXpgInpobkgJyVzJyIKIAotIzogYXBwbHkuYzoxMjUKKyM6IGFwcGx5LmM6MTM1CiBtc2dpZCAiLS1yZWplY3QgYW5kIC0tM3dheSBjYW5ub3QgYmUgdXNlZCB0b2dldGhlci4iCiBtc2dzdHIgIi0tcmVqZWN0IOWSjCAtLTN3YXkg5LiN6IO95ZCM5pe25L2/55So44CCIgogCi0jOiBhcHBseS5jOjEyNworIzogYXBwbHkuYzoxMzcKIG1zZ2lkICItLWNhY2hlZCBhbmQgLS0zd2F5IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyLiIKIG1zZ3N0ciAiLS1jYWNoZWQg5ZKMIC0tM3dheSDkuI3og73lkIzml7bkvb/nlKjjgIIiCiAKLSM6IGFwcGx5LmM6MTMwCisjOiBhcHBseS5jOjE0MAogbXNnaWQgIi0tM3dheSBvdXRzaWRlIGEgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiLS0zd2F5IOWcqOS4gOS4quS7k+W6k+S5i+WkliIKIAotIzogYXBwbHkuYzoxNDEKKyM6IGFwcGx5LmM6MTUxCiBtc2dpZCAiLS1pbmRleCBvdXRzaWRlIGEgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiLS1pbmRleCDlnKjkuIDkuKrku5PlupPkuYvlpJYiCiAKLSM6IGFwcGx5LmM6MTQ0CisjOiBhcHBseS5jOjE1NAogbXNnaWQgIi0tY2FjaGVkIG91dHNpZGUgYSByZXBvc2l0b3J5IgogbXNnc3RyICItLWNhY2hlZCDlnKjkuIDkuKrku5PlupPkuYvlpJYiCiAKLSM6IGFwcGx5LmM6ODI2CisjOiBhcHBseS5jOjgwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgcHJlcGFyZSB0aW1lc3RhbXAgcmVnZXhwICVzIgogbXNnc3RyICLml6Dms5Xlh4blpIfml7bpl7TmiLPmraPliJnooajovr7lvI8gJXMiCiAKLSM6IGFwcGx5LmM6ODM1CisjOiBhcHBseS5jOjgxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWdleGVjIHJldHVybmVkICVkIGZvciBpbnB1dDogJXMiCiBtc2dzdHIgInJlZ2V4ZWMg6L+U5ZueICVk77yM6L6T5YWl5Li677yaJXMiCiAKLSM6IGFwcGx5LmM6OTA5CisjOiBhcHBseS5jOjg4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZmluZCBmaWxlbmFtZSBpbiBwYXRjaCBhdCBsaW5lICVkIgogbXNnc3RyICLkuI3og73lnKjooaXkuIHnmoTnrKwgJWQg6KGM5om+5Yiw5paH5Lu25ZCNIgogCi0jOiBhcHBseS5jOjk0NworIzogYXBwbHkuYzo5MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwsIGdvdCAlcyBvbiBsaW5lICVkIgogbXNnc3RyICJnaXQgYXBwbHnvvJrplJnor6/nmoQgZ2l0LWRpZmYgLSDlupTkuLogL2Rldi9udWxs77yM5L2G5Zyo56ysICUyJGQg6KGM5b6X5YiwICUxJHMiCiAKLSM6IGFwcGx5LmM6OTUzCisjOiBhcHBseS5jOjkyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGluY29uc2lzdGVudCBuZXcgZmlsZW5hbWUgb24gbGluZSAlZCIKIG1zZ3N0ciAiZ2l0IGFwcGx577ya6ZSZ6K+v55qEIGdpdC1kaWZmIC0g56ysICVkIOihjOS4iuaWsOaWh+S7tuWQjeS4jeS4gOiHtCIKIAotIzogYXBwbHkuYzo5NTQKKyM6IGFwcGx5LmM6OTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gaW5jb25zaXN0ZW50IG9sZCBmaWxlbmFtZSBvbiBsaW5lICVkIgogbXNnc3RyICJnaXQgYXBwbHnvvJrplJnor6/nmoQgZ2l0LWRpZmYgLSDnrKwgJWQg6KGM5LiK5pen5paH5Lu25ZCN5LiN5LiA6Ie0IgogCi0jOiBhcHBseS5jOjk1OQorIzogYXBwbHkuYzo5MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBleHBlY3RlZCAvZGV2L251bGwgb24gbGluZSAlZCIKIG1zZ3N0ciAiZ2l0IGFwcGx577ya6ZSZ6K+v55qEIGdpdC1kaWZmIC0g56ysICVkIOihjOWkhOW6lOS4uiAvZGV2L251bGwiCiAKLSM6IGFwcGx5LmM6OTg4CisjOiBhcHBseS5jOjk2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG1vZGUgb24gbGluZSAlZDogJXMiCiBtc2dzdHIgIuesrCAlZCDooYzljIXlkKvml6DmlYjmlofku7bmqKHlvI/vvJolcyIKIAotIzogYXBwbHkuYzoxMzA3CisjOiBhcHBseS5jOjEyODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5jb25zaXN0ZW50IGhlYWRlciBsaW5lcyAlZCBhbmQgJWQiCiBtc2dzdHIgIuS4jeS4gOiHtOeahOaWh+S7tuWktO+8jCVkIOihjOWSjCAlZCDooYwiCiAKLSM6IGFwcGx5LmM6MTQ3OQotIywgYy1mb3JtYXQKLW1zZ2lkICJyZWNvdW50OiB1bmV4cGVjdGVkIGxpbmU6ICUuKnMiCi1tc2dzdHIgInJlY291bnTvvJrmhI/lpJbnmoTooYzvvJolLipzIgotCi0jOiBhcHBseS5jOjE1NDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAicGF0Y2ggZnJhZ21lbnQgd2l0aG91dCBoZWFkZXIgYXQgbGluZSAlZDogJS4qcyIKLW1zZ3N0ciAi56ysICVkIOihjOeahOihpeS4geeJh+auteayoeacieWktOS/oeaBr++8miUuKnMiCi0KLSM6IGFwcGx5LmM6MTU2OAorIzogYXBwbHkuYzoxMzcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gd2hlbiByZW1vdmluZyAlZCBsZWFkaW5nIHBhdGhuYW1lICIKQEAgLTMyNSw4MiArMTAwMyw5MiBAQAogbXNnc3RyWzBdICLlvZPnp7vpmaQgJWQg5Liq5YmN5a+86Lev5b6E5ZCOIGdpdCBkaWZmIOWktOe8uuS5j+aWh+S7tuWQjeS/oeaBr++8iOesrCAlZCDooYzvvIkiCiBtc2dzdHJbMV0gIuW9k+enu+mZpCAlZCDkuKrliY3lr7zot6/lvoTlkI4gZ2l0IGRpZmYg5aS057y65LmP5paH5Lu25ZCN5L+h5oGv77yI56ysICVkIOihjO+8iSIKIAotIzogYXBwbHkuYzoxNTgxCisjOiBhcHBseS5jOjEzODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIChsaW5lICVkKSIKIG1zZ3N0ciAiZ2l0IGRpZmYg55qE5aS05L+h5oGv5Lit57y65LmP5paH5Lu25ZCN5L+h5oGv77yI56ysICVkIOihjO+8iSIKIAotIzogYXBwbHkuYzoxNzY5CisjOiBhcHBseS5jOjE0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVjb3VudDogdW5leHBlY3RlZCBsaW5lOiAlLipzIgorbXNnc3RyICJyZWNvdW5077ya5oSP5aSW55qE6KGM77yaJS4qcyIKKworIzogYXBwbHkuYzoxNTUwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGNoIGZyYWdtZW50IHdpdGhvdXQgaGVhZGVyIGF0IGxpbmUgJWQ6ICUuKnMiCittc2dzdHIgIuesrCAlZCDooYznmoTooaXkuIHniYfmrrXmsqHmnInlpLTkv6Hmga/vvJolLipzIgorCisjOiBhcHBseS5jOjE3NTMKIG1zZ2lkICJuZXcgZmlsZSBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKIG1zZ3N0ciAi5paw5paH5Lu25L6d6LWW5pen5YaF5a65IgogCi0jOiBhcHBseS5jOjE3NzEKKyM6IGFwcGx5LmM6MTc1NQogbXNnaWQgImRlbGV0ZWQgZmlsZSBzdGlsbCBoYXMgY29udGVudHMiCiBtc2dzdHIgIuWIoOmZpOeahOaWh+S7tuS7jeacieWGheWuuSIKIAotIzogYXBwbHkuYzoxODA1CisjOiBhcHBseS5jOjE3ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBwYXRjaCBhdCBsaW5lICVkIgogbXNnc3RyICLooaXkuIHlnKjnrKwgJWQg6KGM5o2f5Z2PIgogCi0jOiBhcHBseS5jOjE4NDIKKyM6IGFwcGx5LmM6MTgyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgZmlsZSAlcyBkZXBlbmRzIG9uIG9sZCBjb250ZW50cyIKIG1zZ3N0ciAi5paw5paH5Lu2ICVzIOS+nei1luaXp+WGheWuuSIKIAotIzogYXBwbHkuYzoxODQ0CisjOiBhcHBseS5jOjE4MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsZXRlZCBmaWxlICVzIHN0aWxsIGhhcyBjb250ZW50cyIKIG1zZ3N0ciAi5Yig6Zmk55qE5paH5Lu2ICVzIOS7jeacieWGheWuuSIKIAotIzogYXBwbHkuYzoxODQ3CisjOiBhcHBseS5jOjE4MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiKiogd2FybmluZzogZmlsZSAlcyBiZWNvbWVzIGVtcHR5IGJ1dCBpcyBub3QgZGVsZXRlZCIKIG1zZ3N0ciAiKiog6K2m5ZGK77ya5paH5Lu2ICVzIOaIkOS4uuepuuaWh+S7tuS9huW5tuacquWIoOmZpCIKIAotIzogYXBwbHkuYzoxOTk0CisjOiBhcHBseS5jOjE5NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZDogJS4qcyIKIG1zZ3N0ciAi5LqM6L+b5Yi26KGl5LiB5Zyo56ysICVkIOihjOaNn+Wdj++8miUuKnMiCiAKLSM6IGFwcGx5LmM6MjAzMQorIzogYXBwbHkuYzoyMDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBiaW5hcnkgcGF0Y2ggYXQgbGluZSAlZCIKIG1zZ3N0ciAi5pyq6IO96K+G5Yir55qE5LqM6L+b5Yi26KGl5LiB5L2N5LqO56ysICVkIOihjCIKIAotIzogYXBwbHkuYzoyMTkzCisjOiBhcHBseS5jOjIxNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0Y2ggd2l0aCBvbmx5IGdhcmJhZ2UgYXQgbGluZSAlZCIKIG1zZ3N0ciAi6KGl5LiB5paH5Lu255qE56ysICVkIOihjOWPquacieWeg+WcvuaVsOaNriIKIAotIzogYXBwbHkuYzoyMjc5CisjOiBhcHBseS5jOjIyNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgc3ltbGluayAlcyIKIG1zZ3N0ciAi5peg5rOV6K+75Y+W56ym5Y+36ZO+5o6lICVzIgogCi0jOiBhcHBseS5jOjIyODMKKyM6IGFwcGx5LmM6MjI2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBvciByZWFkICVzIgogbXNnc3RyICLkuI3og73miZPlvIDmiJbor7vlj5YgJXMiCiAKLSM6IGFwcGx5LmM6Mjk0MgorIzogYXBwbHkuYzoyOTM2CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc3RhcnQgb2YgbGluZTogJyVjJyIKIG1zZ3N0ciAi5peg5pWI55qE6KGM6aaW5a2X56ym77yaJyVjJyIKIAotIzogYXBwbHkuYzozMDYzCisjOiBhcHBseS5jOjMwNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiSHVuayAjJWQgc3VjY2VlZGVkIGF0ICVkIChvZmZzZXQgJWQgbGluZSkuIgogbXNnaWRfcGx1cmFsICJIdW5rICMlZCBzdWNjZWVkZWQgYXQgJWQgKG9mZnNldCAlZCBsaW5lcykuIgogbXNnc3RyWzBdICLlnZcgIyVkIOaIkOWKn+W6lOeUqOS6jiAlZO+8iOWBj+enuyAlZCDooYzvvIkiCiBtc2dzdHJbMV0gIuWdlyAjJWQg5oiQ5Yqf5bqU55So5LqOICVk77yI5YGP56e7ICVkIOihjO+8iSIKIAotIzogYXBwbHkuYzozMDc1CisjOiBhcHBseS5jOjMwNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29udGV4dCByZWR1Y2VkIHRvICglbGQvJWxkKSB0byBhcHBseSBmcmFnbWVudCBhdCAlZCIKIG1zZ3N0ciAi5LiK5LiL5paH5YeP5bCR5Yiw77yIJWxkLyVsZO+8ieS7peWcqOesrCAlZCDooYzlupTnlKjooaXkuIHniYfmrrUiCiAKLSM6IGFwcGx5LmM6MzA4MQorIzogYXBwbHkuYzozMDc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ3aGlsZSBzZWFyY2hpbmcgZm9yOlxuIgpAQCAtNDA5LDQ1MSArMTA5Nyw0MzcgQEAKICLlvZPmn6Xor6LvvJpcbiIKICIlLipzIgogCi0jOiBhcHBseS5jOjMxMDMKKyM6IGFwcGx5LmM6MzA5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIGJpbmFyeSBwYXRjaCBkYXRhIGZvciAnJXMnIgogbXNnc3RyICLnvLrlpLEgJyVzJyDnmoTkuozov5vliLbooaXkuIHmlbDmja4iCiAKLSM6IGFwcGx5LmM6MzExMQorIzogYXBwbHkuYzozMTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZXZlcnNlLWFwcGx5IGEgYmluYXJ5IHBhdGNoIHdpdGhvdXQgdGhlIHJldmVyc2UgaHVuayB0byAnJXMnIgogbXNnc3RyICLkuI3og73lj43lkJHlupTnlKjkuIDkuKrnvLrlsJHliLAgJyVzJyDnmoTlj43lkJHmlbDmja7lnZfnmoTkuozov5vliLbooaXkuIEiCiAKLSM6IGFwcGx5LmM6MzE1OAorIzogYXBwbHkuYzozMTUyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBhcHBseSBiaW5hcnkgcGF0Y2ggdG8gJyVzJyB3aXRob3V0IGZ1bGwgaW5kZXggbGluZSIKIG1zZ3N0ciAi5LiN6IO95ZyoICclcycg5LiK5bqU55So5rKh5pyJ5a6M5pW057Si5byV6KGM55qE5LqM6L+b5Yi26KGl5LiBIgogCi0jOiBhcHBseS5jOjMxNjgKKyM6IGFwcGx5LmM6MzE2MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidGhlIHBhdGNoIGFwcGxpZXMgdG8gJyVzJyAoJXMpLCB3aGljaCBkb2VzIG5vdCBtYXRjaCB0aGUgY3VycmVudCBjb250ZW50cy4iCiBtc2dzdHIgIuihpeS4geW6lOeUqOWIsCAnJXMn77yIJXPvvInvvIzkvYbmmK/lkozlvZPliY3lhoXlrrnkuI3ljLnphY3jgIIiCiAKLSM6IGFwcGx5LmM6MzE3NgorIzogYXBwbHkuYzozMTcxCiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSBwYXRjaCBhcHBsaWVzIHRvIGFuIGVtcHR5ICclcycgYnV0IGl0IGlzIG5vdCBlbXB0eSIKIG1zZ3N0ciAi6KGl5LiB5bqU55So5Yiw56m65paH5Lu2ICclcyfvvIzkvYblhbblubbpnZ7nqbrmlofku7YiCiAKLSM6IGFwcGx5LmM6MzE5NAorIzogYXBwbHkuYzozMTg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSBuZWNlc3NhcnkgcG9zdGltYWdlICVzIGZvciAnJXMnIGNhbm5vdCBiZSByZWFkIgogbXNnc3RyICLml6Dms5Xor7vlj5YgJyUyJHMnIOW/hemcgOeahOebruagh+aWh+S7tiAlMSRzIgogCi0jOiBhcHBseS5jOjMyMDcKKyM6IGFwcGx5LmM6MzIwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJiaW5hcnkgcGF0Y2ggZG9lcyBub3QgYXBwbHkgdG8gJyVzJyIKIG1zZ3N0ciAi5LqM6L+b5Yi26KGl5LiB5pyq5bqU55So5YiwICclcyciCiAKLSM6IGFwcGx5LmM6MzIxMworIzogYXBwbHkuYzozMjA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImJpbmFyeSBwYXRjaCB0byAnJXMnIGNyZWF0ZXMgaW5jb3JyZWN0IHJlc3VsdCAoZXhwZWN0aW5nICVzLCBnb3QgJXMpIgogbXNnc3RyICLliLAgJyVzJyDnmoTkuozov5vliLbooaXkuIHkuqfnlJ/kuobkuI3mraPnoa7nmoTnu5PmnpzvvIjlupTkuLogJXPvvIzljbTkuLogJXPvvIkiCiAKLSM6IGFwcGx5LmM6MzIzNAorIzogYXBwbHkuYzozMjMwCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGNoIGZhaWxlZDogJXM6JWxkIgogbXNnc3RyICLmiZPooaXkuIHlpLHotKXvvJolczolbGQiCiAKLSM6IGFwcGx5LmM6MzM1NgorIzogYXBwbHkuYzozMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGVja291dCAlcyIKIG1zZ3N0ciAi5LiN6IO95qOA5Ye6ICVzIgogCi0jOiBhcHBseS5jOjM0MDggYXBwbHkuYzozNDE5IGFwcGx5LmM6MzQ2NSBtaWR4LmM6NTggc2V0dXAuYzoyNzgKKyM6IGFwcGx5LmM6MzQwNSBhcHBseS5jOjM0MTYgYXBwbHkuYzozNDYyIG1pZHguYzo2MSBzZXR1cC5jOjI5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCAlcyIKIG1zZ3N0ciAi5peg5rOV6K+75Y+WICVzIgogCi0jOiBhcHBseS5jOjM0MTYKKyM6IGFwcGx5LmM6MzQxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkaW5nIGZyb20gJyVzJyBiZXlvbmQgYSBzeW1ib2xpYyBsaW5rIgogbXNnc3RyICLor7vlj5bkvY3kuo7nrKblj7fpk77mjqXkuK3nmoQgJyVzJyIKIAotIzogYXBwbHkuYzozNDQ1IGFwcGx5LmM6MzY4OAorIzogYXBwbHkuYzozNDQyIGFwcGx5LmM6MzY4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICVzIGhhcyBiZWVuIHJlbmFtZWQvZGVsZXRlZCIKIG1zZ3N0ciAi6Lev5b6EICVzIOW3sue7j+iiq+mHjeWRveWQjS/liKDpmaQiCiAKLSM6IGFwcGx5LmM6MzUzMSBhcHBseS5jOjM3MDMKKyM6IGFwcGx5LmM6MzUyOCBhcHBseS5jOjM3MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGRvZXMgbm90IGV4aXN0IGluIGluZGV4IgogbXNnc3RyICIlc++8muS4jeWtmOWcqOS6jue0ouW8leS4rSIKIAotIzogYXBwbHkuYzozNTQwIGFwcGx5LmM6MzcxMQorIzogYXBwbHkuYzozNTM3IGFwcGx5LmM6MzcwOAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogZG9lcyBub3QgbWF0Y2ggaW5kZXgiCiBtc2dzdHIgIiVz77ya5ZKM57Si5byV5LiN5Yy56YWNIgogCi0jOiBhcHBseS5jOjM1NzUKKyM6IGFwcGx5LmM6MzU3MgogbXNnaWQgInJlcG9zaXRvcnkgbGFja3MgdGhlIG5lY2Vzc2FyeSBibG9iIHRvIGZhbGwgYmFjayBvbiAzLXdheSBtZXJnZS4iCiBtc2dzdHIgIuS7k+W6k+e8uuS5j+W/heimgeeahOaVsOaNruWvueixoeS7pei/m+ihjOS4ieaWueWQiOW5tuOAgiIKIAotIzogYXBwbHkuYzozNTc4CisjOiBhcHBseS5jOjM1NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFsbGluZyBiYWNrIHRvIHRocmVlLXdheSBtZXJnZS4uLlxuIgogbXNnc3RyICLlm57okL3liLDkuInmlrnlkIjlubYuLi5cbiIKIAotIzogYXBwbHkuYzozNTk0IGFwcGx5LmM6MzU5OAorIzogYXBwbHkuYzozNTkxIGFwcGx5LmM6MzU5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCB0aGUgY3VycmVudCBjb250ZW50cyBvZiAnJXMnIgogbXNnc3RyICLml6Dms5Xor7vlj5YgJyVzJyDnmoTlvZPliY3lhoXlrrkiCiAKLSM6IGFwcGx5LmM6MzYxMAorIzogYXBwbHkuYzozNjA3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBmYWxsIGJhY2sgb24gdGhyZWUtd2F5IG1lcmdlLi4uXG4iCiBtc2dzdHIgIuaXoOazleWbnuiQveWIsOS4ieaWueWQiOW5ti4uLlxuIgogCi0jOiBhcHBseS5jOjM2MjQKKyM6IGFwcGx5LmM6MzYyMQogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBsaWVkIHBhdGNoIHRvICclcycgd2l0aCBjb25mbGljdHMuXG4iCiBtc2dzdHIgIuW6lOeUqOihpeS4geWIsCAnJXMnIOWtmOWcqOWGsueqgeOAglxuIgogCi0jOiBhcHBseS5jOjM2MjkKKyM6IGFwcGx5LmM6MzYyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBsaWVkIHBhdGNoIHRvICclcycgY2xlYW5seS5cbiIKIG1zZ3N0ciAi5oiQ5Yqf5bqU55So6KGl5LiB5YiwICclcyfjgIJcbiIKIAotIzogYXBwbHkuYzozNjU1CisjOiBhcHBseS5jOjM2NTIKIG1zZ2lkICJyZW1vdmFsIHBhdGNoIGxlYXZlcyBmaWxlIGNvbnRlbnRzIgogbXNnc3RyICLnp7vpmaTooaXkuIHku43nlZnkuIvkuobmlofku7blhoXlrrkiCiAKLSM6IGFwcGx5LmM6MzcyOAorIzogYXBwbHkuYzozNzI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiB3cm9uZyB0eXBlIgogbXNnc3RyICIlc++8mumUmeivr+exu+WeiyIKIAotIzogYXBwbHkuYzozNzMwCisjOiBhcHBseS5jOjM3MjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaGFzIHR5cGUgJW8sIGV4cGVjdGVkICVvIgogbXNnc3RyICIlcyDnmoTnsbvlnovmmK8gJW/vvIzlupTkuLogJW8iCiAKLSM6IGFwcGx5LmM6Mzg4MSBhcHBseS5jOjM4ODMKKyM6IGFwcGx5LmM6Mzg3OCBhcHBseS5jOjM4ODAgcmVhZC1jYWNoZS5jOjgzMCByZWFkLWNhY2hlLmM6ODU2CisjOiByZWFkLWNhY2hlLmM6MTMyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHBhdGggJyVzJyIKIG1zZ3N0ciAi5peg5pWI6Lev5b6EICclcyciCiAKLSM6IGFwcGx5LmM6MzkzOQorIzogYXBwbHkuYzozOTM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBhbHJlYWR5IGV4aXN0cyBpbiBpbmRleCIKIG1zZ3N0ciAiJXPvvJrlt7Lnu4/lrZjlnKjkuo7ntKLlvJXkuK0iCiAKLSM6IGFwcGx5LmM6Mzk0MgorIzogYXBwbHkuYzozOTM5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBhbHJlYWR5IGV4aXN0cyBpbiB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAiJXPvvJrlt7Lnu4/lrZjlnKjkuo7lt6XkvZzljLrkuK0iCiAKLSM6IGFwcGx5LmM6Mzk2MgorIzogYXBwbHkuYzozOTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSIKIG1zZ3N0ciAiJTIkcyDnmoTmlrDmqKHlvI/vvIglMSRv77yJ5ZKM5pen5qih5byP77yIJTMkb++8ieS4jeWMuemFjSIKIAotIzogYXBwbHkuYzozOTY3CisjOiBhcHBseS5jOjM5NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAibmV3IG1vZGUgKCVvKSBvZiAlcyBkb2VzIG5vdCBtYXRjaCBvbGQgbW9kZSAoJW8pIG9mICVzIgogbXNnc3RyICIlMiRzIOeahOaWsOaooeW8j++8iCUxJG/vvInlkowgJTQkcyDnmoTml6fmqKHlvI/vvIglMyRv77yJ5LiN5Yy56YWNIgogCi0jOiBhcHBseS5jOjM5ODcKKyM6IGFwcGx5LmM6Mzk4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJhZmZlY3RlZCBmaWxlICclcycgaXMgYmV5b25kIGEgc3ltYm9saWMgbGluayIKIG1zZ3N0ciAi5Y+X5b2x5ZON55qE5paH5Lu2ICclcycg5L2N5LqO56ym5Y+36ZO+5o6l5LitIgogCi0jOiBhcHBseS5jOjM5OTEKKyM6IGFwcGx5LmM6Mzk4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogcGF0Y2ggZG9lcyBub3QgYXBwbHkiCiBtc2dzdHIgIiVz77ya6KGl5LiB5pyq5bqU55SoIgogCi0jOiBhcHBseS5jOjQwMDYKKyM6IGFwcGx5LmM6NDAwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJDaGVja2luZyBwYXRjaCAlcy4uLiIKLW1zZ3N0ciAi5qOA5p+l6KGl5LiBICVzLi4uIgorbXNnc3RyICLmraPlnKjmo4Dmn6XooaXkuIEgJXMuLi4iCiAKLSM6IGFwcGx5LmM6NDA5OAorIzogYXBwbHkuYzo0MDk1CiAjLCBjLWZvcm1hdAogbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzIGZvciBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIuWtkOaooee7hCAlcyDnmoQgc2hhMSDkv6Hmga/nvLrlpLHmiJbml6DmlYgiCiAKLSM6IGFwcGx5LmM6NDEwNQorIzogYXBwbHkuYzo0MTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1vZGUgY2hhbmdlIGZvciAlcywgd2hpY2ggaXMgbm90IGluIGN1cnJlbnQgSEVBRCIKIG1zZ3N0ciAiJXMg55qE5qih5byP5Y+Y5pu077yM5L2G5a6D5LiN5Zyo5b2T5YmNIEhFQUQg5LitIgogCi0jOiBhcHBseS5jOjQxMDgKKyM6IGFwcGx5LmM6NDEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJzaGExIGluZm9ybWF0aW9uIGlzIGxhY2tpbmcgb3IgdXNlbGVzcyAoJXMpLiIKIG1zZ3N0ciAic2hhMSDkv6Hmga/nvLrlpLHmiJbml6DmlYjvvIglc++8ieOAgiIKIAotIzogYXBwbHkuYzo0MTEzIGJ1aWx0aW4vY2hlY2tvdXQuYzoyNDQgYnVpbHRpbi9yZXNldC5jOjE0MgotIywgYy1mb3JtYXQKLW1zZ2lkICJtYWtlX2NhY2hlX2VudHJ5IGZhaWxlZCBmb3IgcGF0aCAnJXMnIgotbXNnc3RyICLlr7not6/lvoQgJyVzJyDnmoQgbWFrZV9jYWNoZV9lbnRyeSDmk43kvZzlpLHotKUiCi0KLSM6IGFwcGx5LmM6NDExNworIzogYXBwbHkuYzo0MTE0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBhZGQgJXMgdG8gdGVtcG9yYXJ5IGluZGV4IgogbXNnc3RyICLkuI3og73lnKjkuLTml7bntKLlvJXkuK3mt7vliqAgJXMiCiAKLSM6IGFwcGx5LmM6NDEyNworIzogYXBwbHkuYzo0MTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSB0ZW1wb3JhcnkgaW5kZXggdG8gJXMiCiBtc2dzdHIgIuS4jeiDveaKiuS4tOaXtue0ouW8leWGmeWFpeWIsCAlcyIKIAotIzogYXBwbHkuYzo0MjY1CisjOiBhcHBseS5jOjQyNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlcyBmcm9tIGluZGV4IgogbXNnc3RyICLkuI3og73ku47ntKLlvJXkuK3np7vpmaQgJXMiCiAKLSM6IGFwcGx5LmM6NDI5OQorIzogYXBwbHkuYzo0Mjk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgcGF0Y2ggZm9yIHN1Ym1vZHVsZSAlcyIKIG1zZ3N0ciAi5a2Q5qih57uEICVzIOaNn+Wdj+eahOihpeS4gSIKIAotIzogYXBwbHkuYzo0MzA1CisjOiBhcHBseS5jOjQzMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3bHkgY3JlYXRlZCBmaWxlICclcyciCiBtc2dzdHIgIuS4jeiDveWvueaWsOW7uuaWh+S7tiAnJXMnIOiwg+eUqCBzdGF0IgogCi0jOiBhcHBseS5jOjQzMTMKKyM6IGFwcGx5LmM6NDMxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGJhY2tpbmcgc3RvcmUgZm9yIG5ld2x5IGNyZWF0ZWQgZmlsZSAlcyIKIG1zZ3N0ciAi5LiN6IO95Li65paw5bu65paH5Lu2ICVzIOWIm+W7uuWQjuerr+WtmOWCqCIKIAotIzogYXBwbHkuYzo0MzE5IGFwcGx5LmM6NDQ2NAorIzogYXBwbHkuYzo0MzE2IGFwcGx5LmM6NDQ2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYWRkIGNhY2hlIGVudHJ5IGZvciAlcyIKIG1zZ3N0ciAi5peg5rOV5Li6ICVzIOa3u+WKoOe8k+WtmOadoeebriIKIAotIzogYXBwbHkuYzo0MzYyCisjOiBhcHBseS5jOjQzNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvICclcyciCiBtc2dzdHIgIuWGmeWFpSAnJXMnIOWksei0pSIKIAotIzogYXBwbHkuYzo0MzY2CisjOiBhcHBseS5jOjQzNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2xvc2luZyBmaWxlICclcyciCiBtc2dzdHIgIuWFs+mXreaWh+S7tiAnJXMnIgogCi0jOiBhcHBseS5jOjQ0MzYKKyM6IGFwcGx5LmM6NDQzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIG1vZGUgJW8iCiBtc2dzdHIgIuS4jeiDveWGmeaWh+S7tiAnJXMnIOadg+mZkCAlbyIKIAotIzogYXBwbHkuYzo0NTM0CisjOiBhcHBseS5jOjQ1MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbGllZCBwYXRjaCAlcyBjbGVhbmx5LiIKIG1zZ3N0ciAi5oiQ5Yqf5bqU55So6KGl5LiBICVz44CCIgogCi0jOiBhcHBseS5jOjQ1NDIKKyM6IGFwcGx5LmM6NDUzOQogbXNnaWQgImludGVybmFsIGVycm9yIgogbXNnc3RyICLlhoXpg6jplJnor68iCiAKLSM6IGFwcGx5LmM6NDU0NQorIzogYXBwbHkuYzo0NTQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdC4uLiIKIG1zZ2lkX3BsdXJhbCAiQXBwbHlpbmcgcGF0Y2ggJSVzIHdpdGggJWQgcmVqZWN0cy4uLiIKIG1zZ3N0clswXSAi5bqU55SoICUlcyDkuKrooaXkuIHvvIzlhbbkuK0gJWQg5Liq6KKr5ouS57udLi4uIgogbXNnc3RyWzFdICLlupTnlKggJSVzIOS4quihpeS4ge+8jOWFtuS4rSAlZCDkuKrooqvmi5Lnu50uLi4iCiAKLSM6IGFwcGx5LmM6NDU1NgorIzogYXBwbHkuYzo0NTUzCiAjLCBjLWZvcm1hdAogbXNnaWQgInRydW5jYXRpbmcgLnJlaiBmaWxlbmFtZSB0byAlLipzLnJlaiIKIG1zZ3N0ciAi5oiq55+tIC5yZWog5paH5Lu25ZCN5Li6ICUuKnMucmVqIgogCi0jOiBhcHBseS5jOjQ1NjQgYnVpbHRpbi9mZXRjaC5jOjg0MyBidWlsdGluL2ZldGNoLmM6MTEyMgorIzogYXBwbHkuYzo0NTYxIGJ1aWx0aW4vZmV0Y2guYzo5MDEgYnVpbHRpbi9mZXRjaC5jOjEyMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IG9wZW4gJXMiCiBtc2dzdHIgIuS4jeiDveaJk+W8gCAlcyIKIAotIzogYXBwbHkuYzo0NTc4CisjOiBhcHBseS5jOjQ1NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiSHVuayAjJWQgYXBwbGllZCBjbGVhbmx5LiIKIG1zZ3N0ciAi56ysICMlZCDkuKrniYfmrrXmiJDlip/lupTnlKjjgIIiCiAKLSM6IGFwcGx5LmM6NDU4MgorIzogYXBwbHkuYzo0NTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlamVjdGVkIGh1bmsgIyVkLiIKIG1zZ3N0ciAi5ouS57ud56ysICMlZCDkuKrniYfmrrXjgIIiCiAKLSM6IGFwcGx5LmM6NDY5MgorIzogYXBwbHkuYzo0Njk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwZWQgcGF0Y2ggJyVzJy4iCiBtc2dzdHIgIueVpei/h+ihpeS4gSAnJXMn44CCIgogCi0jOiBhcHBseS5jOjQ3MDAKKyM6IGFwcGx5LmM6NDcwNgogbXNnaWQgInVucmVjb2duaXplZCBpbnB1dCIKIG1zZ3N0ciAi5pyq6IO96K+G5Yir55qE6L6T5YWlIgogCi0jOiBhcHBseS5jOjQ3MTkKKyM6IGFwcGx5LmM6NDcyNgogbXNnaWQgInVuYWJsZSB0byByZWFkIGluZGV4IGZpbGUiCiBtc2dzdHIgIuaXoOazleivu+WPlue0ouW8leaWh+S7tiIKIAotIzogYXBwbHkuYzo0ODc0CisjOiBhcHBseS5jOjQ4ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2FuJ3Qgb3BlbiBwYXRjaCAnJXMnOiAlcyIKIG1zZ3N0ciAi5LiN6IO95omT5byA6KGl5LiBICclcyfvvJolcyIKIAotIzogYXBwbHkuYzo0OTAxCisjOiBhcHBseS5jOjQ5MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAic3F1ZWxjaGVkICVkIHdoaXRlc3BhY2UgZXJyb3IiCiBtc2dpZF9wbHVyYWwgInNxdWVsY2hlZCAlZCB3aGl0ZXNwYWNlIGVycm9ycyIKIG1zZ3N0clswXSAi5oqR5Yi25LiL5LuN5pyJICVkIOS4quepuueZveWtl+espuivr+eUqCIKIG1zZ3N0clsxXSAi5oqR5Yi25LiL5LuN5pyJICVkIOS4quepuueZveWtl+espuivr+eUqCIKIAotIzogYXBwbHkuYzo0OTA3IGFwcGx5LmM6NDkyMgorIzogYXBwbHkuYzo0OTE2IGFwcGx5LmM6NDkzMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlZCBsaW5lIGFkZHMgd2hpdGVzcGFjZSBlcnJvcnMuIgogbXNnaWRfcGx1cmFsICIlZCBsaW5lcyBhZGQgd2hpdGVzcGFjZSBlcnJvcnMuIgogbXNnc3RyWzBdICIlZCDooYzmlrDlop7kuobnqbrnmb3lrZfnrKbor6/nlKjjgIIiCiBtc2dzdHJbMV0gIiVkIOihjOaWsOWinuS6huepuueZveWtl+espuivr+eUqOOAgiIKIAotIzogYXBwbHkuYzo0OTE1CisjOiBhcHBseS5jOjQ5MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJWQgbGluZSBhcHBsaWVkIGFmdGVyIGZpeGluZyB3aGl0ZXNwYWNlIGVycm9ycy4iCiBtc2dpZF9wbHVyYWwgIiVkIGxpbmVzIGFwcGxpZWQgYWZ0ZXIgZml4aW5nIHdoaXRlc3BhY2UgZXJyb3JzLiIKIG1zZ3N0clswXSAi5L+u5aSN56m655m96ZSZ6K+v5ZCO77yM5bqU55So5LqGICVkIOihjOOAgiIKIG1zZ3N0clsxXSAi5L+u5aSN56m655m96ZSZ6K+v5ZCO77yM5bqU55So5LqGICVkIOihjOOAgiIKIAotIzogYXBwbHkuYzo0OTMxIGJ1aWx0aW4vYWRkLmM6NTM4IGJ1aWx0aW4vbXYuYzozMDAgYnVpbHRpbi9ybS5jOjM4OQorIzogYXBwbHkuYzo0OTQwIGJ1aWx0aW4vYWRkLmM6NjEyIGJ1aWx0aW4vbXYuYzozMDEgYnVpbHRpbi9ybS5jOjQwNgogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAi5peg5rOV5YaZ5YWl5paw57Si5byV5paH5Lu2IgogCi0jOiBhcHBseS5jOjQ5NTggYXBwbHkuYzo0OTYxIGJ1aWx0aW4vYW0uYzoyMjA5IGJ1aWx0aW4vYW0uYzoyMjEyCi0jOiBidWlsdGluL2Nsb25lLmM6MTIxIGJ1aWx0aW4vZmV0Y2guYzoxMTggYnVpbHRpbi9tZXJnZS5jOjI2MgotIzogYnVpbHRpbi9wdWxsLmM6MTk5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MDYKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzYyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY1Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0NiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0OQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIwODggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTcKLW1zZ2lkICJwYXRoIgotbXNnc3RyICLot6/lvoQiCi0KLSM6IGFwcGx5LmM6NDk1OQorIzogYXBwbHkuYzo0OTY4CiBtc2dpZCAiZG9uJ3QgYXBwbHkgY2hhbmdlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCIKIG1zZ3N0ciAi5LiN6KaB5bqU55So5LiO57uZ5Ye66Lev5b6E5ZCR5Yy56YWN55qE5Y+Y5pu0IgogCi0jOiBhcHBseS5jOjQ5NjIKKyM6IGFwcGx5LmM6NDk3MQogbXNnaWQgImFwcGx5IGNoYW5nZXMgbWF0Y2hpbmcgdGhlIGdpdmVuIHBhdGgiCiBtc2dzdHIgIuW6lOeUqOS4jue7meWHuui3r+W+hOWQkeWMuemFjeeahOWPmOabtCIKIAotIzogYXBwbHkuYzo0OTY0IGJ1aWx0aW4vYW0uYzoyMjE4CisjOiBhcHBseS5jOjQ5NzMgYnVpbHRpbi9hbS5jOjIyNjAKIG1zZ2lkICJudW0iCiBtc2dzdHIgIuaVsOWtlyIKIAotIzogYXBwbHkuYzo0OTY1CisjOiBhcHBseS5jOjQ5NzQKIG1zZ2lkICJyZW1vdmUgPG51bT4gbGVhZGluZyBzbGFzaGVzIGZyb20gdHJhZGl0aW9uYWwgZGlmZiBwYXRocyIKIG1zZ3N0ciAi5LuO5Lyg57uf55qEIGRpZmYg6Lev5b6E5Lit56e76Zmk5oyH5a6a5pWw6YeP55qE5YmN5a+85pac57q/IgogCi0jOiBhcHBseS5jOjQ5NjgKKyM6IGFwcGx5LmM6NDk3NwogbXNnaWQgImlnbm9yZSBhZGRpdGlvbnMgbWFkZSBieSB0aGUgcGF0Y2giCiBtc2dzdHIgIuW/veeVpeihpeS4geS4reeahOa3u+WKoOeahOaWh+S7tiIKIAotIzogYXBwbHkuYzo0OTcwCisjOiBhcHBseS5jOjQ5NzkKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGRpZmZzdGF0IGZvciB0aGUgaW5wdXQiCiBtc2dzdHIgIuS4jeW6lOeUqOihpeS4ge+8jOiAjOaYr+aYvuekuui+k+WFpeeahOW3ruW8gue7n+iuoe+8iGRpZmZzdGF077yJIgogCi0jOiBhcHBseS5jOjQ5NzQKKyM6IGFwcGx5LmM6NDk4MwogbXNnaWQgInNob3cgbnVtYmVyIG9mIGFkZGVkIGFuZCBkZWxldGVkIGxpbmVzIGluIGRlY2ltYWwgbm90YXRpb24iCiBtc2dzdHIgIuS7peWNgei/m+WItuaVsOaYvuekuua3u+WKoOWSjOWIoOmZpOeahOihjOaVsCIKIAotIzogYXBwbHkuYzo0OTc2CisjOiBhcHBseS5jOjQ5ODUKIG1zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGEgc3VtbWFyeSBmb3IgdGhlIGlucHV0IgogbXNnc3RyICLkuI3lupTnlKjooaXkuIHvvIzogIzmmK/mmL7npLrovpPlhaXnmoTmpoLopoEiCiAKLSM6IGFwcGx5LmM6NDk3OAorIzogYXBwbHkuYzo0OTg3CiBtc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIHNlZSBpZiB0aGUgcGF0Y2ggaXMgYXBwbGljYWJsZSIKIG1zZ3N0ciAi5LiN5bqU55So6KGl5LiB77yM6ICM5piv5p+l55yL6KGl5LiB5piv5ZCm5Y+v5bqU55SoIgogCi0jOiBhcHBseS5jOjQ5ODAKKyM6IGFwcGx5LmM6NDk4OQogbXNnaWQgIm1ha2Ugc3VyZSB0aGUgcGF0Y2ggaXMgYXBwbGljYWJsZSB0byB0aGUgY3VycmVudCBpbmRleCIKIG1zZ3N0ciAi56Gu6K6k6KGl5LiB5Y+v5Lul5bqU55So5Yiw5b2T5YmN57Si5byVIgogCi0jOiBhcHBseS5jOjQ5ODIKKyM6IGFwcGx5LmM6NDk5MQogbXNnaWQgIm1hcmsgbmV3IGZpbGVzIHdpdGggYGdpdCBhZGQgLS1pbnRlbnQtdG8tYWRkYCIKIG1zZ3N0ciAi5L2/55So5ZG95LukIGBnaXQgYWRkIC0taW50ZW50LXRvLWFkZGAg5qCH6K6w5paw5aKe5paH5Lu2IgogCi0jOiBhcHBseS5jOjQ5ODQKKyM6IGFwcGx5LmM6NDk5MwogbXNnaWQgImFwcGx5IGEgcGF0Y2ggd2l0aG91dCB0b3VjaGluZyB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICLlupTnlKjooaXkuIHogIzkuI3kv67mlLnlt6XkvZzljLoiCiAKLSM6IGFwcGx5LmM6NDk4NgorIzogYXBwbHkuYzo0OTk1CiBtc2dpZCAiYWNjZXB0IGEgcGF0Y2ggdGhhdCB0b3VjaGVzIG91dHNpZGUgdGhlIHdvcmtpbmcgYXJlYSIKIG1zZ3N0ciAi5o6l5Y+X5L+u5pS55bel5L2c5Yy65LmL5aSW5paH5Lu255qE6KGl5LiBIgogCi0jOiBhcHBseS5jOjQ5ODkKKyM6IGFwcGx5LmM6NDk5OAogbXNnaWQgImFsc28gYXBwbHkgdGhlIHBhdGNoICh1c2Ugd2l0aCAtLXN0YXQvLS1zdW1tYXJ5Ly0tY2hlY2spIgogbXNnc3RyICLov5jlupTnlKjmraTooaXkuIHvvIjkuI4gLS1zdGF0Ly0tc3VtbWFyeS8tLWNoZWNrIOmAiemhueWQjOaXtuS9v+eUqO+8iSIKIAotIzogYXBwbHkuYzo0OTkxCisjOiBhcHBseS5jOjUwMDAKIG1zZ2lkICJhdHRlbXB0IHRocmVlLXdheSBtZXJnZSBpZiBhIHBhdGNoIGRvZXMgbm90IGFwcGx5IgogbXNnc3RyICLlpoLmnpzkuIDkuKrooaXkuIHkuI3og73lupTnlKjliJnlsJ3or5XkuInmlrnlkIjlubYiCiAKLSM6IGFwcGx5LmM6NDk5MworIzogYXBwbHkuYzo1MDAyCiBtc2dpZCAiYnVpbGQgYSB0ZW1wb3JhcnkgaW5kZXggYmFzZWQgb24gZW1iZWRkZWQgaW5kZXggaW5mb3JtYXRpb24iCiBtc2dzdHIgIuWIm+W7uuS4gOS4quS4tOaXtue0ouW8leWfuuS6juW1jOWFpeeahOe0ouW8leS/oeaBryIKIAotIzogYXBwbHkuYzo0OTk2IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzAgYnVpbHRpbi9scy1maWxlcy5jOjUyMworIzogYXBwbHkuYzo1MDA1IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzMgYnVpbHRpbi9scy1maWxlcy5jOjUyNAogbXNnaWQgInBhdGhzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgogbXNnc3RyICLot6/lvoTku6UgTlVMIOWtl+espuWIhumalCIKIAotIzogYXBwbHkuYzo0OTk4CisjOiBhcHBseS5jOjUwMDcKIG1zZ2lkICJlbnN1cmUgYXQgbGVhc3QgPG4+IGxpbmVzIG9mIGNvbnRleHQgbWF0Y2giCiBtc2dzdHIgIuehruS/neiHs+WwkeWMuemFjSA8bj4g6KGM5LiK5LiL5paHIgogCi0jOiBhcHBseS5jOjQ5OTkgYnVpbHRpbi9hbS5jOjIxOTcgYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NwotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5OSBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzEyIGJ1aWx0aW4vcmViYXNlLmM6ODU3CisjOiBhcHBseS5jOjUwMDggYnVpbHRpbi9hbS5jOjIyMzkgYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5OAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDAgYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ1NyBidWlsdGluL3JlYmFzZS5jOjE1MDgKIG1zZ2lkICJhY3Rpb24iCiBtc2dzdHIgIuWKqOS9nCIKIAotIzogYXBwbHkuYzo1MDAwCisjOiBhcHBseS5jOjUwMDkKIG1zZ2lkICJkZXRlY3QgbmV3IG9yIG1vZGlmaWVkIGxpbmVzIHRoYXQgaGF2ZSB3aGl0ZXNwYWNlIGVycm9ycyIKIG1zZ3N0ciAi5qOA5p+l5paw5aKe5ZKM5L+u5pS555qE6KGM5Lit6Ze055qE56m655m95a2X56ym5rul55SoIgogCi0jOiBhcHBseS5jOjUwMDMgYXBwbHkuYzo1MDA2CisjOiBhcHBseS5jOjUwMTIgYXBwbHkuYzo1MDE1CiBtc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSB3aGVuIGZpbmRpbmcgY29udGV4dCIKIG1zZ3N0ciAi5p+l5om+5LiK5LiL5paH5pe25b+955Wl56m655m95a2X56ym55qE5Y+Y5pu0IgogCi0jOiBhcHBseS5jOjUwMDkKKyM6IGFwcGx5LmM6NTAxOAogbXNnaWQgImFwcGx5IHRoZSBwYXRjaCBpbiByZXZlcnNlIgogbXNnc3RyICLlj43lkJHlupTnlKjooaXkuIEiCiAKLSM6IGFwcGx5LmM6NTAxMQorIzogYXBwbHkuYzo1MDIwCiBtc2dpZCAiZG9uJ3QgZXhwZWN0IGF0IGxlYXN0IG9uZSBsaW5lIG9mIGNvbnRleHQiCiBtc2dzdHIgIuaXoOmcgOiHs+WwkeS4gOihjOS4iuS4i+aWhyIKIAotIzogYXBwbHkuYzo1MDEzCisjOiBhcHBseS5jOjUwMjIKIG1zZ2lkICJsZWF2ZSB0aGUgcmVqZWN0ZWQgaHVua3MgaW4gY29ycmVzcG9uZGluZyAqLnJlaiBmaWxlcyIKIG1zZ3N0ciAi5bCG5ouS57ud55qE6KGl5LiB54mH5q615L+d5a2Y5Zyo5a+55bqU55qEICoucmVqIOaWh+S7tuS4rSIKIAotIzogYXBwbHkuYzo1MDE1CisjOiBhcHBseS5jOjUwMjQKIG1zZ2lkICJhbGxvdyBvdmVybGFwcGluZyBodW5rcyIKIG1zZ3N0ciAi5YWB6K646YeN5Y+g55qE6KGl5LiB54mH5q61IgogCi0jOiBhcHBseS5jOjUwMTYgYnVpbHRpbi9hZGQuYzoyOTAgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyMQotIzogYnVpbHRpbi9jb21taXQuYzoxMzA5IGJ1aWx0aW4vY291bnQtb2JqZWN0cy5jOjk4IGJ1aWx0aW4vZnNjay5jOjY5OAotIzogYnVpbHRpbi9sb2cuYzoyMDIzIGJ1aWx0aW4vbXYuYzoxMjIgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjcKLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1NworIzogYXBwbHkuYzo1MDI1IGJ1aWx0aW4vYWRkLmM6MzIzIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MCBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5OCBidWlsdGluL2ZzY2suYzo3NzQKKyM6IGJ1aWx0aW4vbG9nLmM6MjE2NiBidWlsdGluL212LmM6MTIzIGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI4CiBtc2dpZCAiYmUgdmVyYm9zZSIKIG1zZ3N0ciAi5YaX6ZW/6L6T5Ye6IgogCi0jOiBhcHBseS5jOjUwMTgKKyM6IGFwcGx5LmM6NTAyNwogbXNnaWQgInRvbGVyYXRlIGluY29ycmVjdGx5IGRldGVjdGVkIG1pc3NpbmcgbmV3LWxpbmUgYXQgdGhlIGVuZCBvZiBmaWxlIgogbXNnc3RyICLlhYHorrjkuI3mraPnoa7nmoTmlofku7bmnKvlsL7mjaLooYznrKYiCiAKLSM6IGFwcGx5LmM6NTAyMQorIzogYXBwbHkuYzo1MDMwCiBtc2dpZCAiZG8gbm90IHRydXN0IHRoZSBsaW5lIGNvdW50cyBpbiB0aGUgaHVuayBoZWFkZXJzIgogbXNnc3RyICLkuI3kv6Hku7vooaXkuIHniYfmrrXnmoTlpLTkv6Hmga/kuK3nmoTooYzlj7ciCiAKLSM6IGFwcGx5LmM6NTAyMyBidWlsdGluL2FtLmM6MjIwNgorIzogYXBwbHkuYzo1MDMyIGJ1aWx0aW4vYW0uYzoyMjQ4CiBtc2dpZCAicm9vdCIKIG1zZ3N0ciAi5qC555uu5b2VIgogCi0jOiBhcHBseS5jOjUwMjQKKyM6IGFwcGx5LmM6NTAzMwogbXNnaWQgInByZXBlbmQgPHJvb3Q+IHRvIGFsbCBmaWxlbmFtZXMiCiBtc2dzdHIgIuS4uuaJgOacieaWh+S7tuWQjeWJjea3u+WKoCA85qC555uu5b2VPiIKIAogIzogYXJjaGl2ZS5jOjE0CiBtc2dpZCAiZ2l0IGFyY2hpdmUgWzxvcHRpb25zPl0gPHRyZWUtaXNoPiBbPHBhdGg+Li4uXSIKLW1zZ3N0ciAiZ2l0IGFyY2hpdmUgWzzpgInpobk+XSA85qCR5oiW5o+Q5LqkPiBbPOi3r+W+hD4uLi5dIgorbXNnc3RyICJnaXQgYXJjaGl2ZSBbPOmAiemhuT5dIDzmoJHlr7nosaE+IFs86Lev5b6EPi4uLl0iCiAKICM6IGFyY2hpdmUuYzoxNQogbXNnaWQgImdpdCBhcmNoaXZlIC0tbGlzdCIKQEAgLTg2MywxNTQgKzE1MzcsMTc0IEBACiBtc2dpZCAiIgogImdpdCBhcmNoaXZlIC0tcmVtb3RlIDxyZXBvPiBbLS1leGVjIDxjbWQ+XSBbPG9wdGlvbnM+XSA8dHJlZS1pc2g+IFs8cGF0aD4uLi5dIgogbXNnc3RyICIiCi0iZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPOS7k+W6kz4gWy0tZXhlYyA85ZG95LukPl0gWzzpgInpobk+XSA85qCR5oiW5o+Q5LqkPiBbPOi3r+W+hD4uLi5dIgorImdpdCBhcmNoaXZlIC0tcmVtb3RlIDzku5PlupM+IFstLWV4ZWMgPOWRveS7pD5dIFs86YCJ6aG5Pl0gPOagkeWvueixoT4gWzzot6/lvoQ+Li4uXSIKIAogIzogYXJjaGl2ZS5jOjE3CiBtc2dpZCAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPHJlcG8+IFstLWV4ZWMgPGNtZD5dIC0tbGlzdCIKIG1zZ3N0ciAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPOS7k+W6kz4gWy0tZXhlYyA85ZG95LukPl0gLS1saXN0IgogCi0jOiBhcmNoaXZlLmM6MzcwIGJ1aWx0aW4vYWRkLmM6MTc2IGJ1aWx0aW4vYWRkLmM6NTE0IGJ1aWx0aW4vcm0uYzoyOTgKKyM6IGFyY2hpdmUuYzozNzIgYnVpbHRpbi9hZGQuYzoxODEgYnVpbHRpbi9hZGQuYzo1ODggYnVpbHRpbi9ybS5jOjMxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGRpZCBub3QgbWF0Y2ggYW55IGZpbGVzIgogbXNnc3RyICLot6/lvoTop4TmoLwgJyVzJyDmnKrljLnphY3ku7vkvZXmlofku7YiCiAKLSM6IGFyY2hpdmUuYzo0NTMKKyM6IGFyY2hpdmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VjaCByZWY6ICUuKnMiCittc2dzdHIgIuaXoOatpOW8leeUqO+8miUuKnMiCisKKyM6IGFyY2hpdmUuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0IG5hbWU6ICVzIgorbXNnc3RyICLkuI3mmK/kuIDkuKrmnInmlYjnmoTlr7nosaHlkI3vvJolcyIKKworIzogYXJjaGl2ZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB0cmVlIG9iamVjdDogJXMiCittc2dzdHIgIuS4jeaYr+S4gOS4quagkeWvueixoe+8miVzIgorCisjOiBhcmNoaXZlLmM6NDI2Cittc2dpZCAiY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSBpcyB1bnRyYWNrZWQiCittc2dzdHIgIuW9k+WJjeW3peS9nOebruW9leacquiiq+i3n+i4qiIKKworIzogYXJjaGl2ZS5jOjQ1NwogbXNnaWQgImZtdCIKIG1zZ3N0ciAi5qC85byPIgogCi0jOiBhcmNoaXZlLmM6NDUzCisjOiBhcmNoaXZlLmM6NDU3CiBtc2dpZCAiYXJjaGl2ZSBmb3JtYXQiCiBtc2dzdHIgIuW9kuaho+agvOW8jyIKIAotIzogYXJjaGl2ZS5jOjQ1NCBidWlsdGluL2xvZy5jOjE1MzYKKyM6IGFyY2hpdmUuYzo0NTggYnVpbHRpbi9sb2cuYzoxNjUzCiBtc2dpZCAicHJlZml4IgogbXNnc3RyICLliY3nvIAiCiAKLSM6IGFyY2hpdmUuYzo0NTUKKyM6IGFyY2hpdmUuYzo0NTkKIG1zZ2lkICJwcmVwZW5kIHByZWZpeCB0byBlYWNoIHBhdGhuYW1lIGluIHRoZSBhcmNoaXZlIgogbXNnc3RyICLkuLrlvZLmoaPkuK3mr4/kuKrot6/lvoTlkI3liqDkuIrliY3nvIAiCiAKLSM6IGFyY2hpdmUuYzo0NTYgYnVpbHRpbi9ibGFtZS5jOjgyMCBidWlsdGluL2JsYW1lLmM6ODIxIGJ1aWx0aW4vY29uZmlnLmM6MTI5Ci0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNSBidWlsdGluL2dyZXAuYzo4ODQKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDQgYnVpbHRpbi9scy1maWxlcy5jOjU1OSBidWlsdGluL2xzLWZpbGVzLmM6NTYyCi0jOiBidWlsdGluL25vdGVzLmM6NDEyIGJ1aWx0aW4vbm90ZXMuYzo1NzUgYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjIKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNjIKKyM6IGFyY2hpdmUuYzo0NjAgYnVpbHRpbi9ibGFtZS5jOjg2MSBidWlsdGluL2JsYW1lLmM6ODY1IGJ1aWx0aW4vYmxhbWUuYzo4NjYKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTcgYnVpbHRpbi9jb25maWcuYzoxMzAgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY0IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY4IGJ1aWx0aW4vZ3JlcC5jOjg4NworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNSBidWlsdGluL2xzLWZpbGVzLmM6NTYwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTIgYnVpbHRpbi9ub3Rlcy5jOjU3OCBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogcGFyc2Utb3B0aW9ucy5oOjE5MAogbXNnaWQgImZpbGUiCiBtc2dzdHIgIuaWh+S7tiIKIAotIzogYXJjaGl2ZS5jOjQ1NyBidWlsdGluL2FyY2hpdmUuYzo4OQorIzogYXJjaGl2ZS5jOjQ2MSBidWlsdGluL2FyY2hpdmUuYzo5MAogbXNnaWQgIndyaXRlIHRoZSBhcmNoaXZlIHRvIHRoaXMgZmlsZSIKIG1zZ3N0ciAi5b2S5qGj5YaZ5YWl5q2k5paH5Lu2IgogCi0jOiBhcmNoaXZlLmM6NDU5CisjOiBhcmNoaXZlLmM6NDYzCiBtc2dpZCAicmVhZCAuZ2l0YXR0cmlidXRlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSIKIG1zZ3N0ciAi6K+75Y+W5bel5L2c5Yy65Lit55qEIC5naXRhdHRyaWJ1dGVzIgogCi0jOiBhcmNoaXZlLmM6NDYwCisjOiBhcmNoaXZlLmM6NDY0CiBtc2dpZCAicmVwb3J0IGFyY2hpdmVkIGZpbGVzIG9uIHN0ZGVyciIKIG1zZ3N0ciAi5Zyo5qCH5YeG6ZSZ6K+v5LiK5oql5ZGK5b2S5qGj5paH5Lu2IgogCi0jOiBhcmNoaXZlLmM6NDYxCisjOiBhcmNoaXZlLmM6NDY1CiBtc2dpZCAic3RvcmUgb25seSIKIG1zZ3N0ciAi5Y+q5a2Y5YKoIgogCi0jOiBhcmNoaXZlLmM6NDYyCisjOiBhcmNoaXZlLmM6NDY2CiBtc2dpZCAiY29tcHJlc3MgZmFzdGVyIgogbXNnc3RyICLljovnvKnpgJ/luqbmm7Tlv6siCiAKLSM6IGFyY2hpdmUuYzo0NzAKKyM6IGFyY2hpdmUuYzo0NzQKIG1zZ2lkICJjb21wcmVzcyBiZXR0ZXIiCiBtc2dzdHIgIuWOi+e8qeaViOaenOabtOWlvSIKIAotIzogYXJjaGl2ZS5jOjQ3MworIzogYXJjaGl2ZS5jOjQ3NwogbXNnaWQgImxpc3Qgc3VwcG9ydGVkIGFyY2hpdmUgZm9ybWF0cyIKIG1zZ3N0ciAi5YiX5Ye65pSv5oyB55qE5b2S5qGj5qC85byPIgogCi0jOiBhcmNoaXZlLmM6NDc1IGJ1aWx0aW4vYXJjaGl2ZS5jOjkwIGJ1aWx0aW4vY2xvbmUuYzoxMTEgYnVpbHRpbi9jbG9uZS5jOjExNAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTUKKyM6IGFyY2hpdmUuYzo0NzkgYnVpbHRpbi9hcmNoaXZlLmM6OTEgYnVpbHRpbi9jbG9uZS5jOjExMyBidWlsdGluL2Nsb25lLmM6MTE2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxMQogbXNnaWQgInJlcG8iCiBtc2dzdHIgIuS7k+W6kyIKIAotIzogYXJjaGl2ZS5jOjQ3NiBidWlsdGluL2FyY2hpdmUuYzo5MQorIzogYXJjaGl2ZS5jOjQ4MCBidWlsdGluL2FyY2hpdmUuYzo5MgogbXNnaWQgInJldHJpZXZlIHRoZSBhcmNoaXZlIGZyb20gcmVtb3RlIHJlcG9zaXRvcnkgPHJlcG8+IgogbXNnc3RyICLku47ov5znqIvku5PlupPvvIg85LuT5bqTPu+8ieaPkOWPluW9kuaho+aWh+S7tiIKIAotIzogYXJjaGl2ZS5jOjQ3NyBidWlsdGluL2FyY2hpdmUuYzo5MiBidWlsdGluL2RpZmZ0b29sLmM6NzE0Ci0jOiBidWlsdGluL25vdGVzLmM6NDk2CisjOiBhcmNoaXZlLmM6NDgxIGJ1aWx0aW4vYXJjaGl2ZS5jOjkzIGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTgKIG1zZ2lkICJjb21tYW5kIgogbXNnc3RyICLlkb3ku6QiCiAKLSM6IGFyY2hpdmUuYzo0NzggYnVpbHRpbi9hcmNoaXZlLmM6OTMKKyM6IGFyY2hpdmUuYzo0ODIgYnVpbHRpbi9hcmNoaXZlLmM6OTQKIG1zZ2lkICJwYXRoIHRvIHRoZSByZW1vdGUgZ2l0LXVwbG9hZC1hcmNoaXZlIGNvbW1hbmQiCiBtc2dzdHIgIui/nOeoiyBnaXQtdXBsb2FkLWFyY2hpdmUg5ZG95Luk55qE6Lev5b6EIgogCi0jOiBhcmNoaXZlLmM6NDg1CisjOiBhcmNoaXZlLmM6NDg5CiBtc2dpZCAiVW5leHBlY3RlZCBvcHRpb24gLS1yZW1vdGUiCiBtc2dzdHIgIuacquefpeWPguaVsCAtLXJlbW90ZSIKIAotIzogYXJjaGl2ZS5jOjQ4NworIzogYXJjaGl2ZS5jOjQ5MQogbXNnaWQgIk9wdGlvbiAtLWV4ZWMgY2FuIG9ubHkgYmUgdXNlZCB0b2dldGhlciB3aXRoIC0tcmVtb3RlIgogbXNnc3RyICLpgInpobkgLS1leGVjIOWPquiDveWSjCAtLXJlbW90ZSDlkIzml7bkvb/nlKgiCiAKLSM6IGFyY2hpdmUuYzo0ODkKKyM6IGFyY2hpdmUuYzo0OTMKIG1zZ2lkICJVbmV4cGVjdGVkIG9wdGlvbiAtLW91dHB1dCIKIG1zZ3N0ciAi5pyq55+l5Y+C5pWwIC0tb3V0cHV0IgogCi0jOiBhcmNoaXZlLmM6NTExCisjOiBhcmNoaXZlLmM6NTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gYXJjaGl2ZSBmb3JtYXQgJyVzJyIKIG1zZ3N0ciAi5pyq55+l5b2S5qGj5qC85byPICclcyciCiAKLSM6IGFyY2hpdmUuYzo1MTgKKyM6IGFyY2hpdmUuYzo1MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXJndW1lbnQgbm90IHN1cHBvcnRlZCBmb3IgZm9ybWF0ICclcyc6IC0lZCIKIG1zZ3N0ciAi5Y+C5pWw5LiN5pSv5oyB5q2k5qC85byPICclcyfvvJotJWQiCiAKLSM6IGFyY2hpdmUtdGFyLmM6MTI1IGFyY2hpdmUtemlwLmM6MzQ1CisjOiBhcmNoaXZlLXRhci5jOjEyNSBhcmNoaXZlLXppcC5jOjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgc3RyZWFtIGJsb2IgJXMiCiBtc2dzdHIgIuS4jeiDveaJk+W8gOaVsOaNruWvueixoSAlcyIKIAotIzogYXJjaGl2ZS10YXIuYzoyNjAgYXJjaGl2ZS16aXAuYzozNjMKKyM6IGFyY2hpdmUtdGFyLmM6MjY2IGFyY2hpdmUtemlwLmM6MzY5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuc3VwcG9ydGVkIGZpbGUgbW9kZTogMCVvIChTSEExOiAlcykiCiBtc2dzdHIgIuS4jeaUr+aMgeeahOaWh+S7tuaooeW8j++8mjAlbyAoU0hBMTogJXMpIgogCi0jOiBhcmNoaXZlLXRhci5jOjI4NyBhcmNoaXZlLXppcC5jOjM1MworIzogYXJjaGl2ZS10YXIuYzoyOTMgYXJjaGl2ZS16aXAuYzozNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJXMiCiBtc2dzdHIgIuS4jeiDveivu+WPliAlcyIKIAotIzogYXJjaGl2ZS10YXIuYzo0NTgKKyM6IGFyY2hpdmUtdGFyLmM6NDY1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBzdGFydCAnJXMnIGZpbHRlciIKIG1zZ3N0ciAi5peg5rOV5ZCv5YqoICclcycg6L+H5ruk5ZmoIgogCi0jOiBhcmNoaXZlLXRhci5jOjQ2MQorIzogYXJjaGl2ZS10YXIuYzo0NjgKIG1zZ2lkICJ1bmFibGUgdG8gcmVkaXJlY3QgZGVzY3JpcHRvciIKIG1zZ3N0ciAi5peg5rOV6YeN5a6a5ZCR5o+P6L+w56ymIgogCi0jOiBhcmNoaXZlLXRhci5jOjQ2OAorIzogYXJjaGl2ZS10YXIuYzo0NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBmaWx0ZXIgcmVwb3J0ZWQgZXJyb3IiCiBtc2dzdHIgIiclcycg6L+H5ruk5Zmo5oql5ZGK5LqG6ZSZ6K+vIgogCi0jOiBhcmNoaXZlLXppcC5jOjMxNAorIzogYXJjaGl2ZS16aXAuYzozMTkKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCBpcyBub3QgdmFsaWQgVVRGLTg6ICVzIgogbXNnc3RyICLot6/lvoTkuI3mmK/mnInmlYjnmoQgVVRGLTjvvJolcyIKIAotIzogYXJjaGl2ZS16aXAuYzozMTgKKyM6IGFyY2hpdmUtemlwLmM6MzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggdG9vIGxvbmcgKCVkIGNoYXJzLCBTSEExOiAlcyk6ICVzIgogbXNnc3RyICLot6/lvoTlpKrplb/vvIglZCDlrZfnrKbvvIxTSEEx77yaJXPvvInvvJolcyIKIAotIzogYXJjaGl2ZS16aXAuYzo0NzQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjcKKyM6IGFyY2hpdmUtemlwLmM6NDgwIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjMxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlZmxhdGUgZXJyb3IgKCVkKSIKIG1zZ3N0ciAi5Y6L57yp6ZSZ6K+vICglZCkiCiAKLSM6IGFyY2hpdmUtemlwLmM6NjA5CisjOiBhcmNoaXZlLXppcC5jOjYxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aW1lc3RhbXAgdG9vIGxhcmdlIGZvciB0aGlzIHN5c3RlbTogJTxQUkl1TUFYPiIKIG1zZ3N0ciAi5a+55LqO5pys57O757uf5pe26Ze05oiz5aSq5aSn77yaJTxQUkl1TUFYPiIKQEAgLTEwMjAsNiArMTcxNCwxMSBAQAogbXNnaWQgIiUuKnMgaXMgbm90IGEgdmFsaWQgYXR0cmlidXRlIG5hbWUiCiBtc2dzdHIgIiUuKnMg5LiN5piv5LiA5Liq5pyJ5pWI55qE5bGe5oCn5ZCNIgogCisjOiBhdHRyLmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIG5vdCBhbGxvd2VkOiAlczolZCIKK21zZ3N0ciAi5LiN5YWB6K64ICVz77yaJXM6JWQiCisKICM6IGF0dHIuYzo0MDkKIG1zZ2lkICIiCiAiTmVnYXRpdmUgcGF0dGVybnMgYXJlIGlnbm9yZWQgaW4gZ2l0IGF0dHJpYnV0ZXNcbiIKQEAgLTEwMzMsMTcgKzE3MzIsMTcgQEAKIG1zZ2lkICJCYWRseSBxdW90ZWQgY29udGVudCBpbiBmaWxlICclcyc6ICVzIgogbXNnc3RyICLmlofku7YgJyVzJyDljIXlkKvplJnor6/nmoTlvJXnlKjmoLzlvI/vvJolcyIKIAotIzogYmlzZWN0LmM6Njc2CisjOiBiaXNlY3QuYzo2NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiV2UgY2Fubm90IGJpc2VjdCBtb3JlIVxuIgogbXNnc3RyICLmiJHku6zml6Dms5Xov5vooYzmm7TlpJrnmoTkuozliIbmn6Xmib7vvIFcbiIKIAotIzogYmlzZWN0LmM6NzMwCisjOiBiaXNlY3QuYzo3NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgY29tbWl0IG5hbWUgJXMiCiBtc2dzdHIgIuS4jeaYr+S4gOS4quacieaViOeahOaPkOS6pOWQjSAlcyIKIAotIzogYmlzZWN0LmM6NzU0CisjOiBiaXNlY3QuYzo3NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBtZXJnZSBiYXNlICVzIGlzIGJhZC5cbiIKQEAgLTEwNTIsNyArMTc1MSw3IEBACiAi5ZCI5bm25Z+657q/ICVzIOaYr+Wdj+eahOOAglxuIgogIui/meaEj+WRs+edgOS7i+S6jiAlcyDlkowgWyVzXSDkuYvpl7TnmoQgYnVnIOW3sue7j+iiq+S/ruWkjeOAglxuIgogCi0jOiBiaXNlY3QuYzo3NTkKKyM6IGJpc2VjdC5jOjc3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIG1lcmdlIGJhc2UgJXMgaXMgbmV3LlxuIgpAQCAtMTA2MSw3ICsxNzYwLDcgQEAKICLlkIjlubbln7rnur8gJXMg5piv5paw55qE44CCXG4iCiAi5LuL5LqOICVzIOWSjCBbJXNdIOS5i+mXtOeahOWxnuaAp+W3sue7j+iiq+S/ruaUueOAglxuIgogCi0jOiBiaXNlY3QuYzo3NjQKKyM6IGJpc2VjdC5jOjc4MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIG1lcmdlIGJhc2UgJXMgaXMgJXMuXG4iCkBAIC0xMDcwLDcgKzE3NjksNyBAQAogIuWQiOW5tuWfuue6vyAlcyDmmK8gJXPjgIJcbiIKICLov5nmhI/lkbPnnYDnrKzkuIDkuKogJyVzJyDmj5DkuqTkvY3kuo4gJXMg5ZKMIFslc10g5LmL6Ze044CCXG4iCiAKLSM6IGJpc2VjdC5jOjc3MgorIzogYmlzZWN0LmM6Nzg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTb21lICVzIHJldnMgYXJlIG5vdCBhbmNlc3RvcnMgb2YgdGhlICVzIHJldi5cbiIKQEAgLTEwODEsNyArMTc4MCw3IEBACiAi6L+Z56eN5oOF5Ya15LiLIGdpdCDkuozliIbmn6Xmib7ml6Dms5XmraPluLjlt6XkvZzjgIJcbiIKICLmgqjlj6/og73lvITplJnkuoYgJXMg5ZKMICVzIOeJiOacrO+8n1xuIgogCi0jOiBiaXNlY3QuYzo3ODUKKyM6IGJpc2VjdC5jOjgwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidGhlIG1lcmdlIGJhc2UgYmV0d2VlbiAlcyBhbmQgWyVzXSBtdXN0IGJlIHNraXBwZWQuXG4iCkBAIC0xMDkyLDM2ICsxNzkxLDM2IEBACiAi5omA5Lul5oiR5Lus5peg5rOV56Gu6K6k56ys5LiA5LiqICVzIOaPkOS6pOaYr+WQpuS7i+S6jiAlcyDlkowgJXMg5LmL6Ze044CCXG4iCiAi5oiR5Lus5LuN5pen57un57ut44CCIgogCi0jOiBiaXNlY3QuYzo4MTgKKyM6IGJpc2VjdC5jOjg0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJCaXNlY3Rpbmc6IGEgbWVyZ2UgYmFzZSBtdXN0IGJlIHRlc3RlZFxuIgogbXNnc3RyICLkuozliIbmn6Xmib7kuK3vvJrlkIjlubbln7rnur/lv4XpobvmmK/nu4/ov4fmtYvor5XnmoRcbiIKIAotIzogYmlzZWN0LmM6ODU4CisjOiBiaXNlY3QuYzo4OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSAlcyByZXZpc2lvbiBpcyBuZWVkZWQiCiBtc2dzdHIgIumcgOimgeS4gOS4qiAlcyDniYjmnKwiCiAKLSM6IGJpc2VjdC5jOjg3NyBidWlsdGluL25vdGVzLmM6MTc3IGJ1aWx0aW4vdGFnLmM6MjM3CisjOiBiaXNlY3QuYzo5MjAgYnVpbHRpbi9ub3Rlcy5jOjE3NyBidWlsdGluL3RhZy5jOjI1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGZpbGUgJyVzJyIKIG1zZ3N0ciAi5LiN6IO95Yib5bu65paH5Lu2ICclcyciCiAKLSM6IGJpc2VjdC5jOjkyOCBidWlsdGluL21lcmdlLmM6MTM4CisjOiBiaXNlY3QuYzo5NjYgYnVpbHRpbi9tZXJnZS5jOjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBmaWxlICclcyciCiBtc2dzdHIgIuS4jeiDveivu+WPluaWh+S7tiAnJXMnIgogCi0jOiBiaXNlY3QuYzo5NTgKKyM6IGJpc2VjdC5jOjk5NwogbXNnaWQgInJlYWRpbmcgYmlzZWN0IHJlZnMgZmFpbGVkIgogbXNnc3RyICLor7vlj5bkuozliIbmn6Xmib7lvJXnlKjlpLHotKUiCiAKLSM6IGJpc2VjdC5jOjk3NworIzogYmlzZWN0LmM6MTAxOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB3YXMgYm90aCAlcyBhbmQgJXNcbiIKIG1zZ3N0ciAiJXMg5ZCM5pe25Li6ICVzIOWSjCAlc1xuIgogCi0jOiBiaXNlY3QuYzo5ODUKKyM6IGJpc2VjdC5jOjEwMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk5vIHRlc3RhYmxlIGNvbW1pdCBmb3VuZC5cbiIKQEAgLTExMzAsNyArMTgyOSw3IEBACiAi5rKh5pyJ5Y+R546w5Y+v5rWL6K+V55qE5o+Q5Lqk44CCXG4iCiAi5Y+v6IO95oKo5Zyo6L+Q6KGM5pe25L2/55So5LqG6ZSZ6K+v55qE6Lev5b6E5Y+C5pWw77yfXG4iCiAKLSM6IGJpc2VjdC5jOjEwMDQKKyM6IGJpc2VjdC5jOjEwNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiKHJvdWdobHkgJWQgc3RlcCkiCiBtc2dpZF9wbHVyYWwgIihyb3VnaGx5ICVkIHN0ZXBzKSIKQEAgLTExNDAsNDkgKzE4MzksNDkgQEAKICMuIFRSQU5TTEFUT1JTOiB0aGUgbGFzdCAlcyB3aWxsIGJlIHJlcGxhY2VkIHdpdGggIihyb3VnaGx5ICVkCiAjLiBzdGVwcykiIHRyYW5zbGF0aW9uLgogIy4KLSM6IGJpc2VjdC5jOjEwMTAKKyM6IGJpc2VjdC5jOjEwNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmlzZWN0aW5nOiAlZCByZXZpc2lvbiBsZWZ0IHRvIHRlc3QgYWZ0ZXIgdGhpcyAlc1xuIgogbXNnaWRfcGx1cmFsICJCaXNlY3Rpbmc6ICVkIHJldmlzaW9ucyBsZWZ0IHRvIHRlc3QgYWZ0ZXIgdGhpcyAlc1xuIgogbXNnc3RyWzBdICLkuozliIbmn6Xmib7kuK3vvJrlnKjmraTkuYvlkI7vvIzov5jliakgJWQg5Liq54mI5pys5b6F5rWL6K+VICVzXG4iCiBtc2dzdHJbMV0gIuS6jOWIhuafpeaJvuS4re+8muWcqOatpOS5i+WQju+8jOi/mOWJqSAlZCDkuKrniYjmnKzlvoXmtYvor5UgJXNcbiIKIAotIzogYmxhbWUuYzoxNzg3CisjOiBibGFtZS5jOjI3MDAKIG1zZ2lkICItLWNvbnRlbnRzIGFuZCAtLXJldmVyc2UgZG8gbm90IGJsZW5kIHdlbGwuIgogbXNnc3RyICItLWNvbnRlbnRzIOWSjCAtLXJldmVyc2Ug5LiN6IO95re355So44CCIgogCi0jOiBibGFtZS5jOjE4MDEKKyM6IGJsYW1lLmM6MjcxNAogbXNnaWQgImNhbm5vdCB1c2UgLS1jb250ZW50cyB3aXRoIGZpbmFsIGNvbW1pdCBvYmplY3QgbmFtZSIKIG1zZ3N0ciAi5LiN6IO95bCGIC0tY29udGVudHMg5ZKM5pyA57uI55qE5o+Q5Lqk5a+56LGh5ZCN5YWx55SoIgogCi0jOiBibGFtZS5jOjE4MjIKKyM6IGJsYW1lLmM6MjczNQogbXNnaWQgIi0tcmV2ZXJzZSBhbmQgLS1maXJzdC1wYXJlbnQgdG9nZXRoZXIgcmVxdWlyZSBzcGVjaWZpZWQgbGF0ZXN0IGNvbW1pdCIKIG1zZ3N0ciAiLS1yZXZlcnNlIOWSjCAtLWZpcnN0LXBhcmVudCDlhbHnlKjvvIzpnIDopoHmjIflrprmnIDmlrDnmoTmj5DkuqQiCiAKLSM6IGJsYW1lLmM6MTgzMSBidW5kbGUuYzoxNjIgcmVmLWZpbHRlci5jOjIwNDYgc2VxdWVuY2VyLmM6MTk2MwotIzogc2VxdWVuY2VyLmM6NDAwMiBidWlsdGluL2NvbW1pdC5jOjEwMDEgYnVpbHRpbi9sb2cuYzozNzcgYnVpbHRpbi9sb2cuYzo5MzIKLSM6IGJ1aWx0aW4vbG9nLmM6MTQwNyBidWlsdGluL2xvZy5jOjE3ODMgYnVpbHRpbi9sb2cuYzoyMDcyIGJ1aWx0aW4vbWVyZ2UuYzo0MDYKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzNyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxNTIKKyM6IGJsYW1lLmM6Mjc0NCBidW5kbGUuYzoxNjcgcmVmLWZpbHRlci5jOjIyMDMgcmVtb3RlLmM6MTk0MiBzZXF1ZW5jZXIuYzoyMDA2CisjOiBzZXF1ZW5jZXIuYzo0MzU4IHN1Ym1vZHVsZS5jOjg0NyBidWlsdGluL2NvbW1pdC5jOjEwNDUgYnVpbHRpbi9sb2cuYzozODgKKyM6IGJ1aWx0aW4vbG9nLmM6OTkxIGJ1aWx0aW4vbG9nLmM6MTUyMCBidWlsdGluL2xvZy5jOjE5MjUgYnVpbHRpbi9sb2cuYzoyMjE1CisjOiBidWlsdGluL21lcmdlLmM6NDEyIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTAKICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxOTIKIG1zZ2lkICJyZXZpc2lvbiB3YWxrIHNldHVwIGZhaWxlZCIKIG1zZ3N0ciAi54mI5pys6YGN5Y6G6K6+572u5aSx6LSlIgogCi0jOiBibGFtZS5jOjE4NDkKKyM6IGJsYW1lLmM6Mjc2MgogbXNnaWQgIiIKICItLXJldmVyc2UgLS1maXJzdC1wYXJlbnQgdG9nZXRoZXIgcmVxdWlyZSByYW5nZSBhbG9uZyBmaXJzdC1wYXJlbnQgY2hhaW4iCiBtc2dzdHIgIi0tcmV2ZXJzZSDlkowgLS1maXJzdC1wYXJlbnQg5YWx55So77yM6ZyA6KaB56ys5LiA56WW5YWI6ZO+5LiK55qE5o+Q5Lqk6IyD5Zu0IgogCi0jOiBibGFtZS5jOjE4NjAKKyM6IGJsYW1lLmM6Mjc3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIHBhdGggJXMgaW4gJXMiCiBtc2dzdHIgIuWcqCAlMiRzIOS4reaXoOatpOi3r+W+hCAlMSRzIgogCi0jOiBibGFtZS5jOjE4NzEKKyM6IGJsYW1lLmM6Mjc4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBibG9iICVzIGZvciBwYXRoICVzIgogbXNnc3RyICLkuI3og73kuLrot6/lvoQgJTIkcyDor7vlj5bmlbDmja7lr7nosaEgJTEkcyIKIAotIzogYnJhbmNoLmM6NTIKKyM6IGJyYW5jaC5jOjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTExOTQsODUgKzE4OTMsODUgQEAKICLlnKjkv67lpI3plJnor6/lkI7vvIzmgqjlj6/ku6XlsJ3or5Xkv67mlLnov5znqIvot5/ouKrliIbmlK/vvIzpgJrov4fmiafooYzlkb3ku6RcbiIKICJcImdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMlcyVzXCIg44CCIgogCi0jOiBicmFuY2guYzo2NgorIzogYnJhbmNoLmM6NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IHNldHRpbmcgYnJhbmNoICVzIGFzIGl0cyBvd24gdXBzdHJlYW0uIgogbXNnc3RyICLmnKrorr7nva7liIbmlK8gJXMg5L2c5Li65a6D6Ieq5bex55qE5LiK5ri444CCIgogCi0jOiBicmFuY2guYzo5MgorIzogYnJhbmNoLmM6OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIHJlbW90ZSBicmFuY2ggJyVzJyBmcm9tICclcycgYnkgcmViYXNpbmcuIgogbXNnc3RyICLliIbmlK8gJyUxJHMnIOiuvue9ruS4uuS9v+eUqOWPmOWfuuadpei3n+i4quadpeiHqiAnJTMkcycg55qE6L+c56iL5YiG5pSvICclMiRzJ+OAgiIKIAotIzogYnJhbmNoLmM6OTMKKyM6IGJyYW5jaC5jOjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgYnJhbmNoICclcycgZnJvbSAnJXMnLiIKIG1zZ3N0ciAi5YiG5pSvICclMSRzJyDorr7nva7kuLrot5/ouKrmnaXoh6ogJyUzJHMnIOeahOi/nOeoi+WIhuaUryAnJTIkcyfjgIIiCiAKLSM6IGJyYW5jaC5jOjk3CisjOiBicmFuY2guYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycgYnkgcmViYXNpbmcuIgogbXNnc3RyICLliIbmlK8gJyVzJyDorr7nva7kuLrkvb/nlKjlj5jln7rmnaXot5/ouKrmnKzlnLDliIbmlK8gJyVzJ+OAgiIKIAotIzogYnJhbmNoLmM6OTgKKyM6IGJyYW5jaC5jOjk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCBicmFuY2ggJyVzJy4iCiBtc2dzdHIgIuWIhuaUryAnJXMnIOiuvue9ruS4uui3n+i4quacrOWcsOWIhuaUryAnJXMn44CCIgogCi0jOiBicmFuY2guYzoxMDMKKyM6IGJyYW5jaC5jOjEwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgcmVtb3RlIHJlZiAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAi5YiG5pSvICclcycg6K6+572u5Li65L2/55So5Y+Y5Z+65p2l6Lef6Liq6L+c56iL5byV55SoICclcyfjgIIiCiAKLSM6IGJyYW5jaC5jOjEwNAorIzogYnJhbmNoLmM6MTA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgcmVmICclcycuIgogbXNnc3RyICLliIbmlK8gJyVzJyDorr7nva7kuLrot5/ouKrov5znqIvlvJXnlKggJyVzJ+OAgiIKIAotIzogYnJhbmNoLmM6MTA4CisjOiBicmFuY2guYzoxMDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIHJlZiAnJXMnIGJ5IHJlYmFzaW5nLiIKIG1zZ3N0ciAi5YiG5pSvICclcycg6K6+572u5Li65L2/55So5Y+Y5Z+65p2l6Lef6Liq5pys5Zyw5byV55SoICclcyfjgIIiCiAKLSM6IGJyYW5jaC5jOjEwOQorIzogYnJhbmNoLmM6MTEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCByZWYgJyVzJy4iCiBtc2dzdHIgIuWIhuaUryAnJXMnIOiuvue9ruS4uui3n+i4quacrOWcsOW8leeUqCAnJXMn44CCIgogCi0jOiBicmFuY2guYzoxMTgKKyM6IGJyYW5jaC5jOjExOQogbXNnaWQgIlVuYWJsZSB0byB3cml0ZSB1cHN0cmVhbSBicmFuY2ggY29uZmlndXJhdGlvbiIKIG1zZ3N0ciAi5peg5rOV5YaZ5YWl5LiK5ri45YiG5pSv6YWN572uIgogCi0jOiBicmFuY2guYzoxNTUKKyM6IGJyYW5jaC5jOjE1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJOb3QgdHJhY2tpbmc6IGFtYmlndW91cyBpbmZvcm1hdGlvbiBmb3IgcmVmICVzIgogbXNnc3RyICLmnKrot5/ouKrvvJrlvJXnlKggJXMg5pyJ5q2n5LmJIgogCi0jOiBicmFuY2guYzoxODgKKyM6IGJyYW5jaC5jOjE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIGJyYW5jaCBuYW1lLiIKIG1zZ3N0ciAiJyVzJyDkuI3mmK/kuIDkuKrmnInmlYjnmoTliIbmlK/lkI3np7DjgIIiCiAKLSM6IGJyYW5jaC5jOjIwNworIzogYnJhbmNoLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkEgYnJhbmNoIG5hbWVkICclcycgYWxyZWFkeSBleGlzdHMuIgogbXNnc3RyICLkuIDkuKrliIbmlK/lkI0gJyVzJyDlt7Lnu4/lrZjlnKjjgIIiCiAKLSM6IGJyYW5jaC5jOjIxMgorIzogYnJhbmNoLmM6MjEzCiBtc2dpZCAiQ2Fubm90IGZvcmNlIHVwZGF0ZSB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICLml6Dms5XlvLrliLbmm7TmlrDlvZPliY3liIbmlK/jgIIiCiAKLSM6IGJyYW5jaC5jOjIzMgorIzogYnJhbmNoLmM6MjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBzZXR1cCB0cmFja2luZyBpbmZvcm1hdGlvbjsgc3RhcnRpbmcgcG9pbnQgJyVzJyBpcyBub3QgYSBicmFuY2guIgogbXNnc3RyICLml6Dms5Xorr7nva7ot5/ouKrkv6Hmga/vvJvotbflp4vngrkgJyVzJyDkuI3mmK/kuIDkuKrliIbmlK/jgIIiCiAKLSM6IGJyYW5jaC5jOjIzNAorIzogYnJhbmNoLmM6MjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRoZSByZXF1ZXN0ZWQgdXBzdHJlYW0gYnJhbmNoICclcycgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgIuivt+axgueahOS4iua4uOWIhuaUryAnJXMnIOS4jeWtmOWcqCIKIAotIzogYnJhbmNoLmM6MjM2CisjOiBicmFuY2guYzoyMzcKIG1zZ2lkICIiCiAiXG4iCiAiSWYgeW91IGFyZSBwbGFubmluZyBvbiBiYXNpbmcgeW91ciB3b3JrIG9uIGFuIHVwc3RyZWFtXG4iCkBAIC0xMjkwLDI3ICsxOTg5LDI3IEBACiAi5aaC5p6c5oKo5q2j6K6h5YiS5o6o6YCB5LiA5Liq6IO95LiO5a+55bqU6L+c56iL5YiG5pSv5bu656uL6Lef6Liq55qE5paw55qE5pys5Zyw5YiG5pSv77yMXG4iCiAi5oKo5Y+v6IO96ZyA6KaB5L2/55SoIFwiZ2l0IHB1c2ggLXVcIiDmjqjpgIHliIbmlK/lubbphY3nva7lkozkuIrmuLjnmoTlhbPogZTjgIIiCiAKLSM6IGJyYW5jaC5jOjI3OQorIzogYnJhbmNoLmM6MjgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnLiIKIG1zZ3N0ciAi5LiN5piv5LiA5Liq5pyJ5pWI55qE5a+56LGh5ZCN77yaJyVzJ+OAgiIKIAotIzogYnJhbmNoLmM6Mjk5CisjOiBicmFuY2guYzozMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQW1iaWd1b3VzIG9iamVjdCBuYW1lOiAnJXMnLiIKIG1zZ3N0ciAi5q2n5LmJ55qE5a+56LGh5ZCN77yaJyVzJ+OAgiIKIAotIzogYnJhbmNoLmM6MzA0CisjOiBicmFuY2guYzozMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgYnJhbmNoIHBvaW50OiAnJXMnLiIKIG1zZ3N0ciAi5peg5pWI55qE5YiG5pSv54K577yaJyVzJ+OAgiIKIAotIzogYnJhbmNoLmM6MzU4CisjOiBicmFuY2guYzozNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbHJlYWR5IGNoZWNrZWQgb3V0IGF0ICclcyciCiBtc2dzdHIgIiclcycg5bey57uP5qOA5Ye65YiwICclcyciCiAKLSM6IGJyYW5jaC5jOjM4MQorIzogYnJhbmNoLmM6Mzg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkhFQUQgb2Ygd29ya2luZyB0cmVlICVzIGlzIG5vdCB1cGRhdGVkIgogbXNnc3RyICLlt6XkvZzljLogJXMg55qEIEhFQUQg5oyH5ZCR5rKh5pyJ6KKr5pu05pawIgpAQCAtMTMyNSw4NiArMjAyNCw4OSBAQAogbXNnaWQgInVucmVjb2duaXplZCBoZWFkZXI6ICVzJXMgKCVkKSIKIG1zZ3N0ciAi5pyq6IO96K+G5Yir55qE5YyF5aS077yaJXMlcyAoJWQpIgogCi0jOiBidW5kbGUuYzo5MCByZXJlcmUuYzo0ODAgcmVyZXJlLmM6NjkwIHNlcXVlbmNlci5jOjIxODIgc2VxdWVuY2VyLmM6MjcyMgotIzogYnVpbHRpbi9jb21taXQuYzo3NzQKKyM6IGJ1bmRsZS5jOjkwIHJlcmVyZS5jOjQ4MCByZXJlcmUuYzo2OTAgc2VxdWVuY2VyLmM6MjI1OCBzZXF1ZW5jZXIuYzozMDE2CisjOiBidWlsdGluL2NvbW1pdC5jOjgxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIgogbXNnc3RyICLkuI3og73miZPlvIAgJyVzJyIKIAotIzogYnVuZGxlLmM6MTQxCisjOiBidW5kbGUuYzoxNDMKIG1zZ2lkICJSZXBvc2l0b3J5IGxhY2tzIHRoZXNlIHByZXJlcXVpc2l0ZSBjb21taXRzOiIKIG1zZ3N0ciAi5LuT5bqT5Lit57y65bCR6L+Z5Lqb5b+F5aSH55qE5o+Q5Lqk77yaIgogCi0jOiBidW5kbGUuYzoxOTIKKyM6IGJ1bmRsZS5jOjE0NgorbXNnaWQgIm5lZWQgYSByZXBvc2l0b3J5IHRvIHZlcmlmeSBhIGJ1bmRsZSIKK21zZ3N0ciAi6ZyA6KaB5LiA5Liq5LuT5bqT5p2l5qCh6aqM5LiA5Liq5YyFIgorCisjOiBidW5kbGUuYzoxOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhlIGJ1bmRsZSBjb250YWlucyB0aGlzIHJlZjoiCiBtc2dpZF9wbHVyYWwgIlRoZSBidW5kbGUgY29udGFpbnMgdGhlc2UgJWQgcmVmczoiCiBtc2dzdHJbMF0gIui/meS4quWMheS4reWQq+aciei/meS4quW8leeUqO+8miIKIG1zZ3N0clsxXSAi6L+Z5Liq5YyF5Lit5ZCr5pyJICVkIOS4quW8leeUqO+8miIKIAotIzogYnVuZGxlLmM6MTk5CisjOiBidW5kbGUuYzoyMDQKIG1zZ2lkICJUaGUgYnVuZGxlIHJlY29yZHMgYSBjb21wbGV0ZSBoaXN0b3J5LiIKIG1zZ3N0ciAi6L+Z5Liq5YyF6K6w5b2V5LiA5Liq5a6M5pW05Y6G5Y+y44CCIgogCi0jOiBidW5kbGUuYzoyMDEKKyM6IGJ1bmRsZS5jOjIwNgogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoaXMgcmVmOiIKIG1zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSByZXF1aXJlcyB0aGVzZSAlZCByZWZzOiIKIG1zZ3N0clswXSAi6L+Z5Liq5YyF6ZyA6KaB6L+Z5Liq5byV55So77yaIgogbXNnc3RyWzFdICLov5nkuKrljIXpnIDopoEgJWQg5Liq5byV55So77yaIgogCi0jOiBidW5kbGUuYzoyNjcKKyM6IGJ1bmRsZS5jOjI3MwogbXNnaWQgInVuYWJsZSB0byBkdXAgYnVuZGxlIGRlc2NyaXB0b3IiCiBtc2dzdHIgIuaXoOazleWkjeWItiBidW5kbGUg5o+P6L+w56ymIgogCi0jOiBidW5kbGUuYzoyNzQKKyM6IGJ1bmRsZS5jOjI4MAogbXNnaWQgIkNvdWxkIG5vdCBzcGF3biBwYWNrLW9iamVjdHMiCiBtc2dzdHIgIuS4jeiDveeUn+aIkCBwYWNrLW9iamVjdHMg6L+b56iLIgogCi0jOiBidW5kbGUuYzoyODUKKyM6IGJ1bmRsZS5jOjI5MQogbXNnaWQgInBhY2stb2JqZWN0cyBkaWVkIgogbXNnc3RyICJwYWNrLW9iamVjdHMg57uI5q2iIgogCi0jOiBidW5kbGUuYzozMjcKKyM6IGJ1bmRsZS5jOjMzMwogbXNnaWQgInJldi1saXN0IGRpZWQiCiBtc2dzdHIgInJldi1saXN0IOe7iOatoiIKIAotIzogYnVuZGxlLmM6Mzc2CisjOiBidW5kbGUuYzozODIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmICclcycgaXMgZXhjbHVkZWQgYnkgdGhlIHJldi1saXN0IG9wdGlvbnMiCiBtc2dzdHIgIuW8leeUqCAnJXMnIOiiqyByZXYtbGlzdCDpgInpobnmjpLpmaQiCiAKLSM6IGJ1bmRsZS5jOjQ1NiBidWlsdGluL2xvZy5jOjE5MiBidWlsdGluL2xvZy5jOjE2ODggYnVpbHRpbi9zaG9ydGxvZy5jOjMwNAorIzogYnVuZGxlLmM6NDYxIGJ1aWx0aW4vbG9nLmM6MjAzIGJ1aWx0aW4vbG9nLmM6MTgxNCBidWlsdGluL3Nob3J0bG9nLmM6MzA2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBhcmd1bWVudDogJXMiCiBtc2dzdHIgIuacquiDveivhuWIq+eahOWPguaVsO+8miVzIgogCi0jOiBidW5kbGUuYzo0NjQKKyM6IGJ1bmRsZS5jOjQ2OQogbXNnaWQgIlJlZnVzaW5nIHRvIGNyZWF0ZSBlbXB0eSBidW5kbGUuIgogbXNnc3RyICLkuI3og73liJvlu7rnqbrljIXjgIIiCiAKLSM6IGJ1bmRsZS5jOjQ3NAorIzogYnVuZGxlLmM6NDc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjcmVhdGUgJyVzJyIKIG1zZ3N0ciAi5LiN6IO95Yib5bu6ICclcyciCiAKLSM6IGJ1bmRsZS5jOjQ5OAorIzogYnVuZGxlLmM6NTA0CiBtc2dpZCAiaW5kZXgtcGFjayBkaWVkIgogbXNnc3RyICJpbmRleC1wYWNrIOe7iOatoiIKIAotIzogY29sb3IuYzoyOTYKKyM6IGNvbG9yLmM6MzI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29sb3IgdmFsdWU6ICUuKnMiCiBtc2dzdHIgIuaXoOaViOeahOminOiJsuWAvO+8miUuKnMiCiAKLSM6IGNvbW1pdC5jOjUwIHNlcXVlbmNlci5jOjI1MjggYnVpbHRpbi9hbS5jOjM3MCBidWlsdGluL2FtLmM6NDE0Ci0jOiBidWlsdGluL2FtLmM6MTM5MCBidWlsdGluL2FtLmM6MjAyNSBidWlsdGluL3JlcGxhY2UuYzozNzYKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ0OAorIzogY29tbWl0LmM6NTEgc2VxdWVuY2VyLmM6MjcxOSBidWlsdGluL2FtLmM6MzU5IGJ1aWx0aW4vYW0uYzo0MDMKKyM6IGJ1aWx0aW4vYW0uYzoxMzcxIGJ1aWx0aW4vYW0uYzoyMDE0IGJ1aWx0aW4vcmVwbGFjZS5jOjQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgJXMiCiBtc2dzdHIgIuS4jeiDveino+aekCAlcyIKIAotIzogY29tbWl0LmM6NTIKKyM6IGNvbW1pdC5jOjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzICVzIGlzIG5vdCBhIGNvbW1pdCEiCiBtc2dzdHIgIiVzICVzIOS4jeaYr+S4gOS4quaPkOS6pO+8gSIKQEAgLTE0MjksMjcgKzIxMzEsMjcgQEAKICLorr7nva4gXCJnaXQgY29uZmlnIGFkdmljZS5ncmFmdEZpbGVEZXByZWNhdGVkIGZhbHNlXCJcbiIKICLlj6/lhbPpl63mnKzmtojmga8iCiAKLSM6IGNvbW1pdC5jOjExMTUKKyM6IGNvbW1pdC5jOjExNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29tbWl0ICVzIGhhcyBhbiB1bnRydXN0ZWQgR1BHIHNpZ25hdHVyZSwgYWxsZWdlZGx5IGJ5ICVzLiIKIG1zZ3N0ciAi5o+Q5LqkICVzIOacieS4gOS4qumdnuWPr+S/oeeahOWjsOensOadpeiHqiAlcyDnmoQgR1BHIOetvuWQjeOAgiIKIAotIzogY29tbWl0LmM6MTExOAorIzogY29tbWl0LmM6MTE1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgaGFzIGEgYmFkIEdQRyBzaWduYXR1cmUgYWxsZWdlZGx5IGJ5ICVzLiIKIG1zZ3N0ciAi5o+Q5LqkICVzIOacieS4gOS4qumUmeivr+eahOWjsOensOadpeiHqiAlcyDnmoQgR1BHIOetvuWQjeOAgiIKIAotIzogY29tbWl0LmM6MTEyMQorIzogY29tbWl0LmM6MTE2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb21taXQgJXMgZG9lcyBub3QgaGF2ZSBhIEdQRyBzaWduYXR1cmUuIgogbXNnc3RyICLmj5DkuqQgJXMg5rKh5pyJIEdQRyDnrb7lkI3jgIIiCiAKLSM6IGNvbW1pdC5jOjExMjQKKyM6IGNvbW1pdC5jOjExNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29tbWl0ICVzIGhhcyBhIGdvb2QgR1BHIHNpZ25hdHVyZSBieSAlc1xuIgogbXNnc3RyICLmj5DkuqQgJXMg5pyJ5LiA5Liq5p2l6IeqICVzIOeahOWlveeahCBHUEcg562+5ZCN44CCXG4iCiAKLSM6IGNvbW1pdC5jOjEzNzgKKyM6IGNvbW1pdC5jOjE0MTcKIG1zZ2lkICIiCiAiV2FybmluZzogY29tbWl0IG1lc3NhZ2UgZGlkIG5vdCBjb25mb3JtIHRvIFVURi04LlxuIgogIllvdSBtYXkgd2FudCB0byBhbWVuZCBpdCBhZnRlciBmaXhpbmcgdGhlIG1lc3NhZ2UsIG9yIHNldCB0aGUgY29uZmlnXG4iCkBAIC0xNDU5LDk1ICsyMTYxLDI2MiBAQAogIuaCqOWPr+S7pemAmui/h+S/ruihpeaPkOS6pOadpeaUueato+aPkOS6pOivtOaYju+8jOaIluiAheWwhumFjee9ruWPmOmHjyBpMThuLmNvbW1pdGVuY29kaW5nXG4iCiAi6K6+572u5Li65oKo6aG555uu5omA55So55qE5a2X56ym57yW56CB44CCXG4iCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjEwOAotIywgYy1mb3JtYXQKLW1zZ2lkICJncmFwaCBmaWxlICVzIGlzIHRvbyBzbWFsbCIKLW1zZ3N0ciAi5Zu+5b2i5paH5Lu2ICVzIOWkquWwjyIKLQotIzogY29tbWl0LWdyYXBoLmM6MTE1Ci0jLCBjLWZvcm1hdAotbXNnaWQgImdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCi1tc2dzdHIgIuWbvuW9ouetvuWQjSAlWCDlkoznrb7lkI0gJVgg5LiN5Yy56YWNIgotCiAjOiBjb21taXQtZ3JhcGguYzoxMjIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ3JhcGggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgotbXNnc3RyICLlm77lvaLniYjmnKwgJVgg5ZKM54mI5pysICVYIOS4jeWMuemFjSIKLQotIzogY29tbWl0LWdyYXBoLmM6MTI5Ci0jLCBjLWZvcm1hdAotbXNnaWQgImhhc2ggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgotbXNnc3RyICLmlaPliJfniYjmnKwgJVgg5ZKM54mI5pysICVYIOS4jeWMuemFjSIKLQotIzogY29tbWl0LWdyYXBoLmM6MTUzCi0jLCBjLWZvcm1hdAotbXNnaWQgImltcHJvcGVyIGNodW5rIG9mZnNldCAlMDh4JTA4eCIKLW1zZ3N0ciAi5LiN5q2j56Gu55qE5Z2X5YGP56e7ICUwOHglMDh4IgorbXNnaWQgImNvbW1pdC1ncmFwaCBmaWxlIGlzIHRvbyBzbWFsbCIKK21zZ3N0ciAi5o+Q5Lqk5Zu+5b2i5paH5Lu25aSq5bCPIgogCiAjOiBjb21taXQtZ3JhcGguYzoxODkKICMsIGMtZm9ybWF0Ci1tc2dpZCAiY2h1bmsgaWQgJTA4eCBhcHBlYXJzIG11bHRpcGxlIHRpbWVzIgotbXNnc3RyICLlnZcgaWQgJTA4eCDlh7rnjrDkuoblpJrmrKEiCittc2dpZCAiY29tbWl0LWdyYXBoIHNpZ25hdHVyZSAlWCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgJVgiCittc2dzdHIgIuaPkOS6pOWbvuW9ouetvuWQjSAlWCDlkoznrb7lkI0gJVgg5LiN5Yy56YWNIgogCi0jOiBjb21taXQtZ3JhcGguYzozMDgKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgorbXNnc3RyICLmj5DkuqTlm77lvaLniYjmnKwgJVgg5ZKM54mI5pysICVYIOS4jeWMuemFjSIKKworIzogY29tbWl0LWdyYXBoLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXNoIHZlcnNpb24gJVggZG9lcyBub3QgbWF0Y2ggdmVyc2lvbiAlWCIKK21zZ3N0ciAi5o+Q5Lqk5Zu+5b2i5ZOI5biM54mI5pysICVYIOWSjOeJiOacrCAlWCDkuI3ljLnphY0iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIyNgorbXNnaWQgImNvbW1pdC1ncmFwaCBjaHVuayBsb29rdXAgdGFibGUgZW50cnkgbWlzc2luZzsgZmlsZSBtYXkgYmUgaW5jb21wbGV0ZSIKK21zZ3N0ciAi5o+Q5Lqk5Zu+5b2i5Z2X5p+l5om+6KGo5p2h55uu5Lii5aSx77yM5paH5Lu25Y+v6IO95LiN5a6M5pW0IgorCisjOiBjb21taXQtZ3JhcGguYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGltcHJvcGVyIGNodW5rIG9mZnNldCAlMDh4JTA4eCIKK21zZ3N0ciAi5o+Q5Lqk5Zu+5b2i5LiN5q2j56Gu55qE5Z2X5YGP56e7ICUwOHglMDh4IgorCisjOiBjb21taXQtZ3JhcGguYzoyODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGNodW5rIGlkICUwOHggYXBwZWFycyBtdWx0aXBsZSB0aW1lcyIKK21zZ3N0ciAi5o+Q5Lqk5Zu+5b2i5Z2XIGlkICUwOHgg5Ye6546w5LqG5aSa5qyhIgorCisjOiBjb21taXQtZ3JhcGguYzozNDMKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzIG5vIGJhc2UgZ3JhcGhzIGNodW5rIgorbXNnc3RyICLmj5DkuqTlm77lvaLmsqHmnInln7rnoYDlm77lvaLlnZciCisKKyM6IGNvbW1pdC1ncmFwaC5jOjM1MworbXNnaWQgImNvbW1pdC1ncmFwaCBjaGFpbiBkb2VzIG5vdCBtYXRjaCIKK21zZ3N0ciAi5o+Q5Lqk5Zu+5b2i6ZO+5LiN5Yy56YWNIgorCisjOiBjb21taXQtZ3JhcGguYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21taXQtZ3JhcGggY2hhaW46IGxpbmUgJyVzJyBub3QgYSBoYXNoIgorbXNnc3RyICLml6DmlYjnmoTmj5DkuqTlm77lvaLpk77vvJrooYwgJyVzJyDkuI3mmK/kuIDkuKrlk4jluIzlgLwiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjQyNQorbXNnaWQgInVuYWJsZSB0byBmaW5kIGFsbCBjb21taXQtZ3JhcGggZmlsZXMiCittc2dzdHIgIuaXoOazleaJvuWIsOaJgOacieaPkOS6pOWbvuW9ouaWh+S7tiIKKworIzogY29tbWl0LWdyYXBoLmM6NTU4IGNvbW1pdC1ncmFwaC5jOjYxOAorbXNnaWQgImludmFsaWQgY29tbWl0IHBvc2l0aW9uLiBjb21taXQtZ3JhcGggaXMgbGlrZWx5IGNvcnJ1cHQiCittc2dzdHIgIuaXoOaViOeahOaPkOS6pOS9jee9ruOAguaPkOS6pOWbvuW9ouWPr+iDveW3suaNn+WdjyIKKworIzogY29tbWl0LWdyYXBoLmM6NTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBmaW5kIGNvbW1pdCAlcyIKIG1zZ3N0ciAi5peg5rOV5om+5Yiw5o+Q5LqkICVzIgogCi0jOiBjb21taXQtZ3JhcGguYzo2MTcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjUyCisjOiBjb21taXQtZ3JhcGguYzo4NTIgYnVpbHRpbi9hbS5jOjEyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbW1pdCAlcyIKK21zZ3N0ciAi5LiN6IO96Kej5p6Q5o+Q5LqkICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoxMDExIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjc4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHR5cGUgb2Ygb2JqZWN0ICVzIgogbXNnc3RyICLml6Dms5Xojrflvpflr7nosaEgJXMg57G75Z6LIgogCi0jOiBjb21taXQtZ3JhcGguYzo2NTEKLW1zZ2lkICJBbm5vdGF0aW5nIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgotbXNnc3RyICLmraPlnKjms6jop6Pmj5DkuqTlm77kuK3nmoTmj5DkuqQiCisjOiBjb21taXQtZ3JhcGguYzoxMDQzCittc2dpZCAiTG9hZGluZyBrbm93biBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAi5q2j5Zyo5Yqg6L295o+Q5Lqk5Zu+5Lit55qE5bey55+l5o+Q5LqkIgogCi0jOiBjb21taXQtZ3JhcGguYzo2OTEKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNjAKK21zZ2lkICJFeHBhbmRpbmcgcmVhY2hhYmxlIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICLmraPlnKjmianlsZXmj5DkuqTlm77kuK3nmoTlj6/ovr7mj5DkuqQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNzkKK21zZ2lkICJDbGVhcmluZyBjb21taXQgbWFya3MgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICLmraPlnKjmuIXpmaTmj5DkuqTlm77kuK3nmoTmj5DkuqTmoIforrAiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwOTgKIG1zZ2lkICJDb21wdXRpbmcgY29tbWl0IGdyYXBoIGdlbmVyYXRpb24gbnVtYmVycyIKIG1zZ3N0ciAi5q2j5Zyo6K6h566X5o+Q5Lqk5Zu+5LiW5Luj5pWw5a2XIgogCi0jOiBjb21taXQtZ3JhcGguYzo4MDMgY29tbWl0LWdyYXBoLmM6ODI2IGNvbW1pdC1ncmFwaC5jOjg1MgotbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIgotbXNnc3RyICLmraPlnKjmn6Xmib7mj5DkuqTlm77nmoTmj5DkuqQiCisjOiBjb21taXQtZ3JhcGguYzoxMTczCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGluICVkIHBhY2siCittc2dpZF9wbHVyYWwgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGluICVkIHBhY2tzIgorbXNnc3RyWzBdICLmraPlnKggJWQg5Liq5YyF5Lit5p+l5om+5o+Q5Lqk5Zu+55qE5o+Q5LqkIgorbXNnc3RyWzFdICLmraPlnKggJWQg5Liq5YyF5Lit5p+l5om+5o+Q5Lqk5Zu+55qE5o+Q5LqkIgogCi0jOiBjb21taXQtZ3JhcGguYzo4MTIKKyM6IGNvbW1pdC1ncmFwaC5jOjExODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgYWRkaW5nIHBhY2sgJXMiCiBtc2dzdHIgIua3u+WKoOWMhSAlcyDlh7rplJkiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjgxNAorIzogY29tbWl0LWdyYXBoLmM6MTE5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBvcGVuaW5nIGluZGV4IGZvciAlcyIKIG1zZ3N0ciAi5Li6ICVzIOaJk+W8gOe0ouW8leWHuumUmSIKIAotIzogY29tbWl0LWdyYXBoLmM6ODY4CisjOiBjb21taXQtZ3JhcGguYzoxMjE0CiAjLCBjLWZvcm1hdAotbXNnaWQgInRoZSBjb21taXQgZ3JhcGggZm9ybWF0IGNhbm5vdCB3cml0ZSAlZCBjb21taXRzIgotbXNnc3RyICLmj5DkuqTlm77moLzlvI/kuI3og73lhpnlhaUgJWQg5Liq5o+Q5LqkIgorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGZyb20gJWQgcmVmIgorbXNnaWRfcGx1cmFsICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBmcm9tICVkIHJlZnMiCittc2dzdHJbMF0gIuato+WcqOS7jiAlZCDkuKrlvJXnlKjkuK3mn6Xmib7mj5DkuqTlm77nmoTmj5DkuqQiCittc2dzdHJbMV0gIuato+WcqOS7jiAlZCDkuKrlvJXnlKjkuK3mn6Xmib7mj5DkuqTlm77nmoTmj5DkuqQiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjg5NQotbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgdG8gd3JpdGUgZ3JhcGgiCi1tc2dzdHIgIuaPkOS6pOWkquWkmuS4jeiDveeUu+WbviIKKyM6IGNvbW1pdC1ncmFwaC5jOjEyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21taXQgb2JqZWN0IGlkOiAlcyIKK21zZ3N0ciAi5peg5pWI55qE5o+Q5Lqk5a+56LGhIElE77yaJXMiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjkwMiBtaWR4LmM6NzY5CisjOiBjb21taXQtZ3JhcGguYzoxMjQ5Cittc2dpZCAiRmluZGluZyBjb21taXRzIGZvciBjb21taXQgZ3JhcGggYW1vbmcgcGFja2VkIG9iamVjdHMiCittc2dzdHIgIuato+WcqOaJk+WMheWvueixoeS4reafpeaJvuaPkOS6pOWbvueahOaPkOS6pCIKKworIzogY29tbWl0LWdyYXBoLmM6MTI2NAorbXNnaWQgIkNvdW50aW5nIGRpc3RpbmN0IGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICLmraPlnKjorqHnrpfmj5DkuqTlm77kuK3kuI3lkIznmoTmj5DkuqQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyOTQKK21zZ2lkICJGaW5kaW5nIGV4dHJhIGVkZ2VzIGluIGNvbW1pdCBncmFwaCIKK21zZ3N0ciAi5q2j5Zyo5p+l5om+5o+Q5Lqk5Zu+5Lit6aKd5aSW55qE6L65IgorCisjOiBjb21taXQtZ3JhcGguYzoxMzQwCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGNvcnJlY3QgbnVtYmVyIG9mIGJhc2UgZ3JhcGggaWRzIgorbXNnc3RyICLml6Dms5XlhpnlhaXmraPnoa7mlbDph4/nmoTln7rnoYDlm77lvaIgSUQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEzNzMgbWlkeC5jOjgxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxlYWRpbmcgZGlyZWN0b3JpZXMgb2YgJXMiCiBtc2dzdHIgIuS4jeiDveS4uiAlcyDliJvlu7rlhYjlr7znm67lvZUiCiAKLSM6IGNvbW1pdC1ncmFwaC5jOjEwMDIKKyM6IGNvbW1pdC1ncmFwaC5jOjEzODUgYnVpbHRpbi9pbmRleC1wYWNrLmM6MzA2IGJ1aWx0aW4vcmVwYWNrLmM6MjQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgJyVzJyIKK21zZ3N0ciAi5LiN6IO95Yib5bu6ICclcyciCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiV3JpdGluZyBvdXQgY29tbWl0IGdyYXBoIGluICVkIHBhc3MiCittc2dpZF9wbHVyYWwgIldyaXRpbmcgb3V0IGNvbW1pdCBncmFwaCBpbiAlZCBwYXNzZXMiCittc2dzdHJbMF0gIuato+WcqOeUqCAlZCDmraXlhpnlh7rmj5DkuqTlm74iCittc2dzdHJbMV0gIuato+WcqOeUqCAlZCDmraXlhpnlh7rmj5DkuqTlm74iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0ODYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjb21taXQtZ3JhcGggY2hhaW4gZmlsZSIKK21zZ3N0ciAi5peg5rOV5omT5byA5o+Q5Lqk5Zu+5b2i6ZO+5paH5Lu2IgorCisjOiBjb21taXQtZ3JhcGguYzoxNDk4Cittc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSBiYXNlIGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICLml6Dms5Xph43lkb3lkI3ln7rnoYDmj5DkuqTlm77lvaLmlofku7YiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE1MTgKK21zZ2lkICJmYWlsZWQgdG8gcmVuYW1lIHRlbXBvcmFyeSBjb21taXQtZ3JhcGggZmlsZSIKK21zZ3N0ciAi5peg5rOV6YeN5ZG95ZCN5Li05pe25o+Q5Lqk5Zu+5b2i5paH5Lu2IgorCisjOiBjb21taXQtZ3JhcGguYzoxNjMxCittc2dpZCAiU2Nhbm5pbmcgbWVyZ2VkIGNvbW1pdHMiCittc2dzdHIgIuato+WcqOaJq+aPj+WQiOW5tuaPkOS6pCIKKworIzogY29tbWl0LWdyYXBoLmM6MTY0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGR1cGxpY2F0ZSBjb21taXQgaWQgJXMiCittc2dzdHIgIuaEj+WklueahOmHjeWkjeaPkOS6pCBJRCAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTY2NQorbXNnaWQgIk1lcmdpbmcgY29tbWl0LWdyYXBoIgorbXNnc3RyICLmraPlnKjlkIjlubbmj5DkuqTlm77lvaIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE4NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlIGNvbW1pdCBncmFwaCBmb3JtYXQgY2Fubm90IHdyaXRlICVkIGNvbW1pdHMiCittc2dzdHIgIuaPkOS6pOWbvuagvOW8j+S4jeiDveWGmeWFpSAlZCDkuKrmj5DkuqQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE4NTUKK21zZ2lkICJ0b28gbWFueSBjb21taXRzIHRvIHdyaXRlIGdyYXBoIgorbXNnc3RyICLmj5DkuqTlpKrlpJrkuI3og73nlLvlm74iCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NDQKIG1zZ2lkICJ0aGUgY29tbWl0LWdyYXBoIGZpbGUgaGFzIGluY29ycmVjdCBjaGVja3N1bSBhbmQgaXMgbGlrZWx5IGNvcnJ1cHQiCiBtc2dzdHIgIuaPkOS6pOWbvuaWh+S7tueahOagoemqjOeggemUmeivr++8jOWPr+iDveW3sue7j+aNn+WdjyIKIAotIzogY29tbWl0LWdyYXBoLmM6MTA0NgotbXNnaWQgIlZlcmlmeWluZyBjb21taXRzIGluIGNvbW1pdCBncmFwaCIKLW1zZ3N0ciAi5qCh6aqM5o+Q5Lqk5Zu+5Lit55qE5o+Q5LqkIgorIzogY29tbWl0LWdyYXBoLmM6MTk1NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaGFzIGluY29ycmVjdCBPSUQgb3JkZXI6ICVzIHRoZW4gJXMiCittc2dzdHIgIuaPkOS6pOWbvuW9oueahOWvueixoSBJRCDpobrluo/kuI3mraPnoa7vvJolcyDnhLblkI4gJXMiCiAKLSM6IGNvbXBhdC9vYnN0YWNrLmM6NDA1IGNvbXBhdC9vYnN0YWNrLmM6NDA3CisjOiBjb21taXQtZ3JhcGguYzoxOTY0IGNvbW1pdC1ncmFwaC5jOjE5NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGhhcyBpbmNvcnJlY3QgZmFub3V0IHZhbHVlOiBmYW5vdXRbJWRdID0gJXUgIT0gJXUiCittc2dzdHIgIuaPkOS6pOWbvuW9ouacieS4jeato+ehrueahOaJh+WHuuWAvO+8mmZhbm91dFslZF0gPSAldSAhPSAldSIKKworIzogY29tbWl0LWdyYXBoLmM6MTk3MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgY29tbWl0ICVzIGZyb20gY29tbWl0LWdyYXBoIgorbXNnc3RyICLml6Dms5Xku47mj5DkuqTlm77lvaLkuK3op6PmnpDmj5DkuqQgJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5ODkKK21zZ2lkICJWZXJpZnlpbmcgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIuato+WcqOagoemqjOaPkOS6pOWbvuS4reeahOaPkOS6pCIKKworIzogY29tbWl0LWdyYXBoLmM6MjAwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgY29tbWl0ICVzIGZyb20gb2JqZWN0IGRhdGFiYXNlIGZvciBjb21taXQtZ3JhcGgiCittc2dzdHIgIuaXoOazleS7juaPkOS6pOWbvuW9oueahOWvueixoeW6k+S4reino+aekOaPkOS6pCAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MjAxMAorIywgYy1mb3JtYXQKK21zZ2lkICJyb290IHRyZWUgT0lEIGZvciBjb21taXQgJXMgaW4gY29tbWl0LWdyYXBoIGlzICVzICE9ICVzIgorbXNnc3RyICLmj5DkuqTlm77lvaLkuK3nmoTmj5DkuqQgJXMg55qE5qC55qCR5a+56LGhIElEIOaYryAlcyAhPSAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MjAyMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggcGFyZW50IGxpc3QgZm9yIGNvbW1pdCAlcyBpcyB0b28gbG9uZyIKK21zZ3N0ciAi5o+Q5LqkICVzIOeahOaPkOS6pOWbvuW9oueItuaPkOS6pOWIl+ihqOWkqumVv+S6hiIKKworIzogY29tbWl0LWdyYXBoLmM6MjAyOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggcGFyZW50IGZvciAlcyBpcyAlcyAhPSAlcyIKK21zZ3N0ciAiJXMg55qE5o+Q5Lqk5Zu+5b2i54i25o+Q5Lqk5pivICVzICE9ICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBwYXJlbnQgbGlzdCBmb3IgY29tbWl0ICVzIHRlcm1pbmF0ZXMgZWFybHkiCittc2dzdHIgIuaPkOS6pCAlcyDnmoTmj5DkuqTlm77lvaLniLbmj5DkuqTliJfooajov4fml6nnu4jmraIiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbW1pdC1ncmFwaCBoYXMgZ2VuZXJhdGlvbiBudW1iZXIgemVybyBmb3IgY29tbWl0ICVzLCBidXQgbm9uLXplcm8gZWxzZXdoZXJlIgorbXNnc3RyICLmj5DkuqTlm77lvaLkuK3mj5DkuqQgJXMg55qE5LiW5Luj5Y+35piv6Zu277yM5L2G5YW25a6D5Zyw5pa56Z2e6Zu2IgorCisjOiBjb21taXQtZ3JhcGguYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb21taXQtZ3JhcGggaGFzIG5vbi16ZXJvIGdlbmVyYXRpb24gbnVtYmVyIGZvciBjb21taXQgJXMsIGJ1dCB6ZXJvIGVsc2V3aGVyZSIKK21zZ3N0ciAi5o+Q5Lqk5Zu+5b2i5Lit5o+Q5LqkICVzIOeahOS4luS7o+WPt+mdnumbtu+8jOS9huWFtuWug+WcsOaWueaYr+mbtiIKKworIzogY29tbWl0LWdyYXBoLmM6MjA2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggZ2VuZXJhdGlvbiBmb3IgY29tbWl0ICVzIGlzICV1ICE9ICV1IgorbXNnc3RyICLmj5DkuqTlm77lvaLkuK3nmoTmj5DkuqQgJXMg55qE5LiW5Luj5Y+35pivICV1ICE9ICV1IgorCisjOiBjb21taXQtZ3JhcGguYzoyMDcyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdCBkYXRlIGZvciBjb21taXQgJXMgaW4gY29tbWl0LWdyYXBoIGlzICU8UFJJdU1BWD4gIT0gJTxQUkl1TUFYPiIKK21zZ3N0ciAi5o+Q5Lqk5Zu+5b2i5Lit5o+Q5LqkICVzIOeahOaPkOS6pOaXpeacn+aYryAlPFBSSXVNQVg+ICE9ICU8UFJJdU1BWD4iCisKKyM6IGNvbXBhdC9vYnN0YWNrLmM6NDA2IGNvbXBhdC9vYnN0YWNrLmM6NDA4CiBtc2dpZCAibWVtb3J5IGV4aGF1c3RlZCIKIG1zZ3N0ciAi5YaF5a2Y6ICX5bC9IgogCi0jOiBjb25maWcuYzoxMjMKKyM6IGNvbmZpZy5jOjEyNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhjZWVkZWQgbWF4aW11bSBpbmNsdWRlIGRlcHRoICglZCkgd2hpbGUgaW5jbHVkaW5nXG4iCkBAIC0xNTYyLDI5NCArMjQzMSwyODkgQEAKICJcdCUyJHNcbiIKICLov5nlj6/og73mmK/lm6DkuLrlvqrnjq/ljIXlkKvjgIIiCiAKLSM6IGNvbmZpZy5jOjEzOQorIzogY29uZmlnLmM6MTQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBleHBhbmQgaW5jbHVkZSBwYXRoICclcyciCiBtc2dzdHIgIuaXoOazleaJqeWxleWMheWQq+i3r+W+hCAnJXMnIgogCi0jOiBjb25maWcuYzoxNTAKKyM6IGNvbmZpZy5jOjE1MQogbXNnaWQgInJlbGF0aXZlIGNvbmZpZyBpbmNsdWRlcyBtdXN0IGNvbWUgZnJvbSBmaWxlcyIKIG1zZ3N0ciAi55u45a+56Lev5b6E55qE6YWN572u5paH5Lu25byV55So5b+F6aG75p2l6Ieq5LqO5paH5Lu2IgogCi0jOiBjb25maWcuYzoxOTAKKyM6IGNvbmZpZy5jOjE5NwogbXNnaWQgInJlbGF0aXZlIGNvbmZpZyBpbmNsdWRlIGNvbmRpdGlvbmFscyBtdXN0IGNvbWUgZnJvbSBmaWxlcyIKIG1zZ3N0ciAi55u45a+56Lev5b6E55qE6YWN572u5paH5Lu25p2h5Lu25byV55So5b+F6aG75p2l6Ieq5LqO5paH5Lu2IgogCi0jOiBjb25maWcuYzozNDgKKyM6IGNvbmZpZy5jOjM3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJrZXkgZG9lcyBub3QgY29udGFpbiBhIHNlY3Rpb246ICVzIgogbXNnc3RyICLplK7lkI3msqHmnInljIXlkKvkuIDkuKrlsI/oioLlkI3np7DvvJolcyIKIAotIzogY29uZmlnLmM6MzU0CisjOiBjb25maWcuYzozODIKICMsIGMtZm9ybWF0CiBtc2dpZCAia2V5IGRvZXMgbm90IGNvbnRhaW4gdmFyaWFibGUgbmFtZTogJXMiCiBtc2dzdHIgIumUruWQjeayoeacieWMheWQq+WPmOmHj+WQje+8miVzIgogCi0jOiBjb25maWcuYzozNzggc2VxdWVuY2VyLmM6MjI5NgorIzogY29uZmlnLmM6NDA2IHNlcXVlbmNlci5jOjI0NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBrZXk6ICVzIgogbXNnc3RyICLml6DmlYjplK7lkI3vvJolcyIKIAotIzogY29uZmlnLmM6Mzg0CisjOiBjb25maWcuYzo0MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBrZXkgKG5ld2xpbmUpOiAlcyIKIG1zZ3N0ciAi5peg5pWI6ZSu5ZCN77yI5pyJ5o2i6KGM56ym77yJ77yaJXMiCiAKLSM6IGNvbmZpZy5jOjQyMCBjb25maWcuYzo0MzIKKyM6IGNvbmZpZy5jOjQ0OCBjb25maWcuYzo0NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYm9ndXMgY29uZmlnIHBhcmFtZXRlcjogJXMiCiBtc2dzdHIgIuS8qumFjee9ruWPguaVsO+8miVzIgogCi0jOiBjb25maWcuYzo0NjcKKyM6IGNvbmZpZy5jOjQ5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJib2d1cyBmb3JtYXQgaW4gJXMiCiBtc2dzdHIgIiVzIOS4reagvOW8j+mUmeivryIKIAotIzogY29uZmlnLmM6NzkzCisjOiBjb25maWcuYzo4MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluIGJsb2IgJXMiCiBtc2dzdHIgIuaVsOaNruWvueixoSAlMiRzIOS4remUmeivr+eahOmFjee9ruihjCAlMSRkIgogCi0jOiBjb25maWcuYzo3OTcKKyM6IGNvbmZpZy5jOjgyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gZmlsZSAlcyIKIG1zZ3N0ciAi5paH5Lu2ICUyJHMg5Lit6ZSZ6K+v55qE6YWN572u6KGMICUxJGQiCiAKLSM6IGNvbmZpZy5jOjgwMQorIzogY29uZmlnLmM6ODI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAi5qCH5YeG6L6T5YWl5Lit6ZSZ6K+v55qE6YWN572u6KGMICVkIgogCi0jOiBjb25maWcuYzo4MDUKKyM6IGNvbmZpZy5jOjgzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gc3VibW9kdWxlLWJsb2IgJXMiCiBtc2dzdHIgIuWtkOaooee7hOaVsOaNruWvueixoSAlMiRzIOS4remUmeivr+eahOmFjee9ruihjCAlMSRkIgogCi0jOiBjb25maWcuYzo4MDkKKyM6IGNvbmZpZy5jOjgzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gY29tbWFuZCBsaW5lICVzIgogbXNnc3RyICLlkb3ku6TooYwgJTIkcyDkuK3plJnor6/nmoTphY3nva7ooYwgJTEkZCIKIAotIzogY29uZmlnLmM6ODEzCisjOiBjb25maWcuYzo4NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyBsaW5lICVkIGluICVzIgogbXNnc3RyICLlnKggJTIkcyDkuK3plJnor6/nmoTphY3nva7ooYwgJTEkZCIKIAotIzogY29uZmlnLmM6OTUyCisjOiBjb25maWcuYzo5NzgKIG1zZ2lkICJvdXQgb2YgcmFuZ2UiCiBtc2dzdHIgIui2heWHuuiMg+WbtCIKIAotIzogY29uZmlnLmM6OTUyCisjOiBjb25maWcuYzo5NzgKIG1zZ2lkICJpbnZhbGlkIHVuaXQiCiBtc2dzdHIgIuaXoOaViOeahOWNleS9jSIKIAotIzogY29uZmlnLmM6OTU4CisjOiBjb25maWcuYzo5NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcyc6ICVzIgogbXNnc3RyICLphY3nva7lj5jph48gJyUyJHMnIOeahOaVsOWtl+WPluWAvCAnJTEkcycg6K6+572u6ZSZ6K+v77yaJTMkcyIKIAotIzogY29uZmlnLmM6OTYzCisjOiBjb25maWcuYzo5OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gYmxvYiAlczogJXMiCiBtc2dzdHIgIuaVsOaNruWvueixoSAlMyRzIOS4remFjee9ruWPmOmHjyAnJTIkcycg6ZSZ6K+v55qE5Y+W5YC8ICclMSRzJ++8miU0JHMiCiAKLSM6IGNvbmZpZy5jOjk2NgorIzogY29uZmlnLmM6MTAwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBmaWxlICVzOiAlcyIKIG1zZ3N0ciAi5paH5Lu2ICUzJHMg5Lit6YWN572u5Y+Y6YePICclMiRzJyDplJnor6/nmoTlj5blgLwgJyUxJHMn77yaJTQkcyIKIAotIzogY29uZmlnLmM6OTY5CisjOiBjb25maWcuYzoxMDA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN0YW5kYXJkIGlucHV0OiAlcyIKIG1zZ3N0ciAi5qCH5YeG6L6T5YWl5Lit6YWN572u5Y+Y6YePICclMiRzJyDplJnor6/nmoTlj5blgLwgJyUxJHMn77yaJTMkcyIKIAotIzogY29uZmlnLmM6OTcyCisjOiBjb25maWcuYzoxMDA3CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIHN1Ym1vZHVsZS1ibG9iICVzOiAlcyIKIG1zZ3N0ciAi5a2Q5qih57uE5pWw5o2uICUzJHMg5Lit6YWN572u5Y+Y6YePICclMiRzJyDplJnor6/nmoTlj5blgLwgJyUxJHMn77yaJTQkcyIKIAotIzogY29uZmlnLmM6OTc1CisjOiBjb25maWcuYzoxMDEwCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIGNvbW1hbmQgbGluZSAlczogJXMiCiBtc2dzdHIgIuWRveS7pOihjCAlMyRzIOS4remFjee9ruWPmOmHjyAnJTIkcycg6ZSZ6K+v55qE5Y+W5YC8ICclMSRzJ++8miU0JHMiCiAKLSM6IGNvbmZpZy5jOjk3OAorIzogY29uZmlnLmM6MTAxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiAlczogJXMiCiBtc2dzdHIgIuWcqCAlMyRzIOS4remFjee9ruWPmOmHjyAnJTIkcycg6ZSZ6K+v55qE5Y+W5YC8ICclMSRzJ++8miU0JHMiCiAKLSM6IGNvbmZpZy5jOjEwNzMKKyM6IGNvbmZpZy5jOjExMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGV4cGFuZCB1c2VyIGRpciBpbjogJyVzJyIKIG1zZ3N0ciAi5peg5rOV5omp5bGV55So5oi355uu5b2V77yaJyVzJyIKIAotIzogY29uZmlnLmM6MTA4MgorIzogY29uZmlnLmM6MTExNwogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGZvciAnJXMnIGlzIG5vdCBhIHZhbGlkIHRpbWVzdGFtcCIKIG1zZ3N0ciAiJyUyJHMnIOeahOWAvCAnJTEkcycg5LiN5piv5LiA5Liq5pyJ5pWI55qE5pe26Ze05oizIgogCi0jOiBjb25maWcuYzoxMTczCisjOiBjb25maWcuYzoxMjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImFiYnJldiBsZW5ndGggb3V0IG9mIHJhbmdlOiAlZCIKIG1zZ3N0ciAi57yp5YaZ6ZW/5bqm6LaF5Ye66IyD5Zu077yaJWQiCiAKLSM6IGNvbmZpZy5jOjExODcgY29uZmlnLmM6MTE5OAorIzogY29uZmlnLmM6MTIyMiBjb25maWcuYzoxMjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCB6bGliIGNvbXByZXNzaW9uIGxldmVsICVkIgogbXNnc3RyICLplJnor6/nmoQgemxpYiDljovnvKnnuqfliKsgJWQiCiAKLSM6IGNvbmZpZy5jOjEyOTAKKyM6IGNvbmZpZy5jOjEzMjUKIG1zZ2lkICJjb3JlLmNvbW1lbnRDaGFyIHNob3VsZCBvbmx5IGJlIG9uZSBjaGFyYWN0ZXIiCiBtc2dzdHIgImNvcmUuY29tbWVudENoYXIg5bqU6K+l5piv5LiA5Liq5a2X56ymIgogCi0jOiBjb25maWcuYzoxMzIzCisjOiBjb25maWcuYzoxMzU4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbW9kZSBmb3Igb2JqZWN0IGNyZWF0aW9uOiAlcyIKIG1zZ3N0ciAi5peg5pWI55qE5a+56LGh5Yib5bu65qih5byP77yaJXMiCiAKLSM6IGNvbmZpZy5jOjEzOTUKKyM6IGNvbmZpZy5jOjE0MzAKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIHZhbHVlIGZvciAlcyIKIG1zZ3N0ciAiJXMg55qE5Y+W5YC85qC85byP6ZSZ6K+vIgogCi0jOiBjb25maWcuYzoxNDIxCisjOiBjb25maWcuYzoxNDU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICIlcyDnmoTlj5blgLzmoLzlvI/plJnor6/vvJolcyIKIAotIzogY29uZmlnLmM6MTQyMgorIzogY29uZmlnLmM6MTQ1NwogbXNnaWQgIm11c3QgYmUgb25lIG9mIG5vdGhpbmcsIG1hdGNoaW5nLCBzaW1wbGUsIHVwc3RyZWFtIG9yIGN1cnJlbnQiCiBtc2dzdHIgIuW/hemhu+aYr+WFtuS4reS5i+S4gO+8mm5vdGhpbmfjgIFtYXRjaGluZ+OAgXNpbXBsZeOAgXVwc3RyZWFtIOaIliBjdXJyZW50IgogCi0jOiBjb25maWcuYzoxNDgxIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5MQorIzogY29uZmlnLmM6MTUxOCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2sgY29tcHJlc3Npb24gbGV2ZWwgJWQiCiBtc2dzdHIgIumUmeivr+eahOaJk+WMheWOi+e8qee6p+WIqyAlZCIKIAotIzogY29uZmlnLmM6MTYwMgorIzogY29uZmlnLmM6MTYzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbG9hZCBjb25maWcgYmxvYiBvYmplY3QgJyVzJyIKIG1zZ3N0ciAi5peg5rOV5LuO5pWw5o2u5a+56LGhICclcycg5Yqg6L296YWN572uIgogCi0jOiBjb25maWcuYzoxNjA1CisjOiBjb25maWcuYzoxNjQyCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSAnJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgYmxvYiIKIG1zZ3N0ciAi5byV55SoICclcycg5rKh5pyJ5oyH5ZCR5LiA5Liq5pWw5o2u5a+56LGhIgogCi0jOiBjb25maWcuYzoxNjIyCisjOiBjb25maWcuYzoxNjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIGNvbmZpZyBibG9iICclcyciCiBtc2dzdHIgIuS4jeiDveino+aekOmFjee9ruWvueixoSAnJXMnIgogCi0jOiBjb25maWcuYzoxNjUyCisjOiBjb25maWcuYzoxNjg5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwYXJzZSAlcyIKIG1zZ3N0ciAi6Kej5p6QICVzIOWksei0pSIKIAotIzogY29uZmlnLmM6MTcwNQorIzogY29uZmlnLmM6MTc0MwogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21tYW5kLWxpbmUgY29uZmlnIgogbXNnc3RyICLml6Dms5Xop6PmnpDlkb3ku6TooYzkuK3nmoTphY3nva4iCiAKLSM6IGNvbmZpZy5jOjIwMzcKKyM6IGNvbmZpZy5jOjIwOTcKIG1zZ2lkICJ1bmtub3duIGVycm9yIG9jY3VycmVkIHdoaWxlIHJlYWRpbmcgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMiCiBtc2dzdHIgIuWcqOivu+WPlumFjee9ruaWh+S7tuaXtumBh+WIsOacquefpemUmeivryIKIAotIzogY29uZmlnLmM6MjIwNworIzogY29uZmlnLmM6MjI2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkICVzOiAnJXMnIgogbXNnc3RyICLml6DmlYggJXPvvJonJXMnIgogCi0jOiBjb25maWcuYzoyMjUwCi0jLCBjLWZvcm1hdAotbXNnaWQgInVua25vd24gY29yZS51bnRyYWNrZWRDYWNoZSB2YWx1ZSAnJXMnOyB1c2luZyAna2VlcCcgZGVmYXVsdCB2YWx1ZSIKLW1zZ3N0ciAi5pyq55+l55qEIGNvcmUudW50cmFja2VkQ2FjaGUg5Y+W5YC8ICclcyfvvIzkvb/nlKjpu5jorqTlgLwgJ2tlZXAnIgotCi0jOiBjb25maWcuYzoyMjc2CisjOiBjb25maWcuYzoyMzEyCiAjLCBjLWZvcm1hdAogbXNnaWQgInNwbGl0SW5kZXgubWF4UGVyY2VudENoYW5nZSB2YWx1ZSAnJWQnIHNob3VsZCBiZSBiZXR3ZWVuIDAgYW5kIDEwMCIKIG1zZ3N0ciAic3BsaXRJbmRleC5tYXhQZXJjZW50Q2hhbmdlIOeahOWPluWAvCAnJWQnIOW6lOivpeS7i+S6jiAwIOWSjCAxMDAg5LmL6Ze0IgogCi0jOiBjb25maWcuYzoyMzIyCisjOiBjb25maWcuYzoyMzU4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAnJXMnIGZyb20gY29tbWFuZC1saW5lIGNvbmZpZyIKIG1zZ3N0ciAi5peg5rOV6Kej5p6Q5ZG95Luk6KGM6YWN572u5Lit55qEICclcyciCiAKLSM6IGNvbmZpZy5jOjIzMjQKKyM6IGNvbmZpZy5jOjIzNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIGNvbmZpZyB2YXJpYWJsZSAnJXMnIGluIGZpbGUgJyVzJyBhdCBsaW5lICVkIgogbXNnc3RyICLlnKjmlofku7YgJyUyJHMnIOeahOesrCAlMyRkIOihjOWPkeeOsOmUmeivr+eahOmFjee9ruWPmOmHjyAnJTEkcyciCiAKLSM6IGNvbmZpZy5jOjI0MDUKKyM6IGNvbmZpZy5jOjI0NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBzZWN0aW9uIG5hbWUgJyVzJyIKIG1zZ3N0ciAi5peg5pWI55qE5bCP6IqC5ZCN56ewICclcyciCiAKLSM6IGNvbmZpZy5jOjI0MzcKKyM6IGNvbmZpZy5jOjI0NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaGFzIG11bHRpcGxlIHZhbHVlcyIKIG1zZ3N0ciAiJXMg5pyJ5aSa5Liq5Y+W5YC8IgogCi0jOiBjb25maWcuYzoyNDY2CisjOiBjb25maWcuYzoyNTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byB3cml0ZSBuZXcgY29uZmlndXJhdGlvbiBmaWxlICVzIgogbXNnc3RyICLlhpnlhaXmlrDnmoTphY3nva7mlofku7YgJXMg5aSx6LSlIgogCi0jOiBjb25maWcuYzoyNzE3IGNvbmZpZy5jOjMwNDEKKyM6IGNvbmZpZy5jOjI3NTQgY29uZmlnLmM6MzA3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9jayBjb25maWcgZmlsZSAlcyIKIG1zZ3N0ciAi5LiN6IO96ZSB5a6a6YWN572u5paH5Lu2ICVzIgogCi0jOiBjb25maWcuYzoyNzI4CisjOiBjb25maWcuYzoyNzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9wZW5pbmcgJXMiCiBtc2dzdHIgIuaJk+W8gCAlcyIKIAotIzogY29uZmlnLmM6Mjc2MyBidWlsdGluL2NvbmZpZy5jOjMyNworIzogY29uZmlnLmM6MjgwMCBidWlsdGluL2NvbmZpZy5jOjM0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHBhdHRlcm46ICVzIgogbXNnc3RyICLml6DmlYjmqKHlvI/vvJolcyIKIAotIzogY29uZmlnLmM6Mjc4OAorIzogY29uZmlnLmM6MjgyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbmZpZyBmaWxlICVzIgogbXNnc3RyICLml6DmlYjnmoTphY3nva7mlofku7YgJXMiCiAKLSM6IGNvbmZpZy5jOjI4MDEgY29uZmlnLmM6MzA1NAorIzogY29uZmlnLmM6MjgzOCBjb25maWcuYzozMDkxCiAjLCBjLWZvcm1hdAogbXNnaWQgImZzdGF0IG9uICVzIGZhaWxlZCIKIG1zZ3N0ciAi5a+5ICVzIOiwg+eUqCBmc3RhdCDlpLHotKUiCiAKLSM6IGNvbmZpZy5jOjI4MTIKKyM6IGNvbmZpZy5jOjI4NDkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG1tYXAgJyVzJyIKIG1zZ3N0ciAi5LiN6IO9IG1tYXAgJyVzJyIKIAotIzogY29uZmlnLmM6MjgyMSBjb25maWcuYzozMDU5CisjOiBjb25maWcuYzoyODU4IGNvbmZpZy5jOjMwOTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2htb2Qgb24gJXMgZmFpbGVkIgogbXNnc3RyICLlr7kgJXMg6LCD55SoIGNobW9kIOWksei0pSIKIAotIzogY29uZmlnLmM6MjkwNiBjb25maWcuYzozMTU2CisjOiBjb25maWcuYzoyOTQzIGNvbmZpZy5jOjMxOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHdyaXRlIGNvbmZpZyBmaWxlICVzIgogbXNnc3RyICLkuI3og73lhpnlhaXphY3nva7mlofku7YgJXMiCiAKLSM6IGNvbmZpZy5jOjI5NDAKKyM6IGNvbmZpZy5jOjI5NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHNldCAnJXMnIHRvICclcyciCiBtc2dzdHIgIuS4jeiDveiuvue9riAnJXMnIOS4uiAnJXMnIgogCi0jOiBjb25maWcuYzoyOTQyIGJ1aWx0aW4vcmVtb3RlLmM6NzgyCisjOiBjb25maWcuYzoyOTc5IGJ1aWx0aW4vcmVtb3RlLmM6NjU1IGJ1aWx0aW4vcmVtb3RlLmM6ODQ5IGJ1aWx0aW4vcmVtb3RlLmM6ODU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB1bnNldCAnJXMnIgogbXNnc3RyICLkuI3og73lj5bmtojorr7nva4gJyVzJyIKIAotIzogY29uZmlnLmM6MzAzMgorIzogY29uZmlnLmM6MzA2OQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIHNlY3Rpb24gbmFtZTogJXMiCiBtc2dzdHIgIuaXoOaViOeahOWwj+iKguWQjeensO+8miVzIgogCi0jOiBjb25maWcuYzozMTk5CisjOiBjb25maWcuYzozMjM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3NpbmcgdmFsdWUgZm9yICclcyciCiBtc2dzdHIgIiVzIOeahOWPluWAvOe8uuWksSIKQEAgLTE5MDEsNTAgKzI3NjUsNDUgQEAKIG1zZ2lkICJyZXBvc2l0b3J5IG9uIHRoZSBvdGhlciBlbmQgY2Fubm90IGJlIHNoYWxsb3ciCiBtc2dzdHIgIuWPpuS4gOerr+eahOS7k+W6k+S4jeiDveaYr+a1heWFi+mahuS7k+W6kyIKIAotIzogY29ubmVjdC5jOjMxMCBmZXRjaC1wYWNrLmM6MTgyIGJ1aWx0aW4vYXJjaGl2ZS5jOjYzCi0jLCBjLWZvcm1hdAotbXNnaWQgInJlbW90ZSBlcnJvcjogJXMiCi1tc2dzdHIgIui/nOeoi+mUmeivr++8miVzIgotCi0jOiBjb25uZWN0LmM6MzE2CisjOiBjb25uZWN0LmM6MzEzCiBtc2dpZCAiaW52YWxpZCBwYWNrZXQiCiBtc2dzdHIgIuaXoOaViOaVsOaNruWMhSIKIAotIzogY29ubmVjdC5jOjMzNgorIzogY29ubmVjdC5jOjMzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogdW5leHBlY3RlZCAnJXMnIgogbXNnc3RyICLljY/orq7plJnor6/vvJrmhI/lpJbnmoQgJyVzJyIKIAotIzogY29ubmVjdC5jOjQ0NAorIzogY29ubmVjdC5jOjQ0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGxzLXJlZnMgcmVzcG9uc2U6ICVzIgogbXNnc3RyICLml6DmlYjnmoQgbHMtcmVmcyDlk43lupTvvJolcyIKIAotIzogY29ubmVjdC5jOjQ0OAorIzogY29ubmVjdC5jOjQ0NQogbXNnaWQgImV4cGVjdGVkIGZsdXNoIGFmdGVyIHJlZiBsaXN0aW5nIgogbXNnc3RyICLlnKjlvJXnlKjliJfooajkuYvlkI7lupTor6XmnInkuIDkuKogZmx1c2gg5YyFIgogCi0jOiBjb25uZWN0LmM6NTQ3CisjOiBjb25uZWN0LmM6NTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgInByb3RvY29sICclcycgaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAi5LiN5pSv5oyBICclcycg5Y2P6K6uIgogCi0jOiBjb25uZWN0LmM6NTk4CisjOiBjb25uZWN0LmM6NTk1CiBtc2dpZCAidW5hYmxlIHRvIHNldCBTT19LRUVQQUxJVkUgb24gc29ja2V0IgogbXNnc3RyICLml6Dms5XkuLogc29ja2V0IOiuvue9riBTT19LRUVQQUxJVkUiCiAKLSM6IGNvbm5lY3QuYzo2MzggY29ubmVjdC5jOjcwMQorIzogY29ubmVjdC5jOjYzNSBjb25uZWN0LmM6Njk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkxvb2tpbmcgdXAgJXMgLi4uICIKIG1zZ3N0ciAi5p+l5om+ICVzIC4uLiIKIAotIzogY29ubmVjdC5jOjY0MgorIzogY29ubmVjdC5jOjYzOQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gbG9vayB1cCAlcyAocG9ydCAlcykgKCVzKSIKIG1zZ3N0ciAi5peg5rOV5p+l5om+ICVz77yI56uv5Y+jICVz77yJ77yIJXPvvIkiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkxvb2tpbmcgdXAgJXMgLi4uICIKLSM6IGNvbm5lY3QuYzo2NDYgY29ubmVjdC5jOjcxNworIzogY29ubmVjdC5jOjY0MyBjb25uZWN0LmM6NzE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJkb25lLlxuIgpAQCAtMTk1Myw3ICsyODEyLDcgQEAKICLlrozmiJDjgIJcbiIKICLov57mjqXliLAgJXPvvIjnq6/lj6MgJXPvvIkuLi4gIgogCi0jOiBjb25uZWN0LmM6NjY4IGNvbm5lY3QuYzo3NDUKKyM6IGNvbm5lY3QuYzo2NjUgY29ubmVjdC5jOjc0MgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAidW5hYmxlIHRvIGNvbm5lY3QgdG8gJXM6XG4iCkBAIC0xOTYzLDczICsyODIyLDczIEBACiAiJXMiCiAKICMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkNvbm5lY3RpbmcgdG8gJXMgKHBvcnQgJXMpIC4uLiAiCi0jOiBjb25uZWN0LmM6Njc0IGNvbm5lY3QuYzo3NTEKKyM6IGNvbm5lY3QuYzo2NzEgY29ubmVjdC5jOjc0OAogbXNnaWQgImRvbmUuIgogbXNnc3RyICLlrozmiJDjgIIiCiAKLSM6IGNvbm5lY3QuYzo3MDUKKyM6IGNvbm5lY3QuYzo3MDIKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGxvb2sgdXAgJXMgKCVzKSIKIG1zZ3N0ciAi5peg5rOV5p+l5om+ICVz77yIJXPvvIkiCiAKLSM6IGNvbm5lY3QuYzo3MTEKKyM6IGNvbm5lY3QuYzo3MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBwb3J0ICVzIgogbXNnc3RyICLmnKrnn6Xnq6/lj6MgJXMiCiAKLSM6IGNvbm5lY3QuYzo4NDggY29ubmVjdC5jOjExNzQKKyM6IGNvbm5lY3QuYzo4NDUgY29ubmVjdC5jOjExNzUKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBob3N0bmFtZSAnJXMnIGJsb2NrZWQiCiBtc2dzdHIgIuW3sumYu+atouWlh+aAqueahOS4u+acuuWQjSAnJXMnIgogCi0jOiBjb25uZWN0LmM6ODUwCisjOiBjb25uZWN0LmM6ODQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInN0cmFuZ2UgcG9ydCAnJXMnIGJsb2NrZWQiCiBtc2dzdHIgIuW3sumYu+atouWlh+aAqueahOerr+WPo+WPtyAnJXMnIgogCi0jOiBjb25uZWN0LmM6ODYwCisjOiBjb25uZWN0LmM6ODU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdGFydCBwcm94eSAlcyIKIG1zZ3N0ciAi5LiN6IO95ZCv5Yqo5Luj55CGICVzIgogCi0jOiBjb25uZWN0LmM6OTI3CisjOiBjb25uZWN0LmM6OTI4CiBtc2dpZCAibm8gcGF0aCBzcGVjaWZpZWQ7IHNlZSAnZ2l0IGhlbHAgcHVsbCcgZm9yIHZhbGlkIHVybCBzeW50YXgiCiBtc2dzdHIgIuacquaMh+Wumui3r+W+hO+8jOaJp+ihjCAnZ2l0IGhlbHAgcHVsbCcg5p+l55yL5pyJ5pWI55qEIHVybCDor63ms5UiCiAKLSM6IGNvbm5lY3QuYzoxMTIyCisjOiBjb25uZWN0LmM6MTEyMwogbXNnaWQgInNzaCB2YXJpYW50ICdzaW1wbGUnIGRvZXMgbm90IHN1cHBvcnQgLTQiCiBtc2dzdHIgInNzaCDlj5jkvZMgJ3NpbXBsZScg5LiN5pSv5oyBIC00IgogCi0jOiBjb25uZWN0LmM6MTEzNAorIzogY29ubmVjdC5jOjExMzUKIG1zZ2lkICJzc2ggdmFyaWFudCAnc2ltcGxlJyBkb2VzIG5vdCBzdXBwb3J0IC02IgogbXNnc3RyICJzc2gg5Y+Y5L2TICdzaW1wbGUnIOS4jeaUr+aMgSAtNiIKIAotIzogY29ubmVjdC5jOjExNTEKKyM6IGNvbm5lY3QuYzoxMTUyCiBtc2dpZCAic3NoIHZhcmlhbnQgJ3NpbXBsZScgZG9lcyBub3Qgc3VwcG9ydCBzZXR0aW5nIHBvcnQiCiBtc2dzdHIgInNzaCDlj5jkvZMgJ3NpbXBsZScg5LiN5pSv5oyB6K6+572u56uv5Y+jIgogCi0jOiBjb25uZWN0LmM6MTI2MgorIzogY29ubmVjdC5jOjEyNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAic3RyYW5nZSBwYXRobmFtZSAnJXMnIGJsb2NrZWQiCiBtc2dzdHIgIuW3sumYu+atouWlh+aAqueahOi3r+W+hOWQjSAnJXMnIgogCi0jOiBjb25uZWN0LmM6MTMwNworIzogY29ubmVjdC5jOjEzMTEKIG1zZ2lkICJ1bmFibGUgdG8gZm9yayIKIG1zZ3N0ciAi5peg5rOVIGZvcmsiCiAKLSM6IGNvbm5lY3RlZC5jOjY4IGJ1aWx0aW4vZnNjay5jOjIwMiBidWlsdGluL3BydW5lLmM6MTQ3CisjOiBjb25uZWN0ZWQuYzo5OCBidWlsdGluL2ZzY2suYzoyMDggYnVpbHRpbi9wcnVuZS5jOjQzCiBtc2dpZCAiQ2hlY2tpbmcgY29ubmVjdGl2aXR5IgotbXNnc3RyICLmo4Dmn6Xov57mjqXkuK0iCittc2dzdHIgIuato+WcqOajgOafpei/numAmuaApyIKIAotIzogY29ubmVjdGVkLmM6ODAKKyM6IGNvbm5lY3RlZC5jOjExMAogbXNnaWQgIkNvdWxkIG5vdCBydW4gJ2dpdCByZXYtbGlzdCciCiBtc2dzdHIgIuS4jeiDveaJp+ihjCAnZ2l0IHJldi1saXN0JyIKIAotIzogY29ubmVjdGVkLmM6MTAwCisjOiBjb25uZWN0ZWQuYzoxMzAKIG1zZ2lkICJmYWlsZWQgd3JpdGUgdG8gcmV2LWxpc3QiCiBtc2dzdHIgIuWGmeWFpSByZXYtbGlzdCDlpLHotKUiCiAKLSM6IGNvbm5lY3RlZC5jOjEwNworIzogY29ubmVjdGVkLmM6MTM3CiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHJldi1saXN0J3Mgc3RkaW4iCiBtc2dzdHIgIuWFs+mXrSByZXYtbGlzdCDnmoTmoIflh4bovpPlhaXlpLHotKUiCiAKQEAgLTIwNjYsMjQgKzI5MjUsMjUgQEAKICIlcyDkuK3nmoQgTEYg5bCG6KKrIENSTEYg5pu/5o2i44CCXG4iCiAi5Zyo5bel5L2c5Yy65Lit6K+l5paH5Lu25LuN5L+d5oyB5Y6f5pyJ55qE5o2i6KGM56ymIgogCi0jOiBjb252ZXJ0LmM6MjgwCisjOiBjb252ZXJ0LmM6Mjg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJPTSBpcyBwcm9oaWJpdGVkIGluICclcycgaWYgZW5jb2RlZCBhcyAlcyIKIG1zZ3N0ciAi5aaC5p6c5L2/55SoICUyJHMg57yW56CB77yM56aB5q2i5ZyoICclMSRzJyDkuK3kvb/nlKggQk9NIgogCi0jOiBjb252ZXJ0LmM6Mjg3CisjOiBjb252ZXJ0LmM6MjkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKLSJUaGUgZmlsZSAnJXMnIGNvbnRhaW5zIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lcyBhcyB3b3JraW5nLSIKLSJ0cmVlLWVuY29kaW5nLiIKLW1zZ3N0ciAi5paH5Lu2ICclcycg5YyF5ZCr5LiA5Liq5a2X6IqC6aG65bqP5qCH6K6w77yIQk9N77yJ44CC6K+35L2/55SoIFVURi0lcyDkvZzkuLrlt6XkvZzljLrnvJbnoIHjgIIiCisiVGhlIGZpbGUgJyVzJyBjb250YWlucyBhIGJ5dGUgb3JkZXIgbWFyayAoQk9NKS4gUGxlYXNlIHVzZSBVVEYtJS4qcyBhcyAiCisid29ya2luZy10cmVlLWVuY29kaW5nLiIKK21zZ3N0ciAiIgorIuaWh+S7tiAnJXMnIOWMheWQq+S4gOS4quWtl+iKgumhuuW6j+agh+iusO+8iEJPTe+8ieOAguivt+S9v+eUqCBVVEYtJS4qcyDkvZzkuLrlt6XkvZzljLrnvJbnoIHjgIIiCiAKLSM6IGNvbnZlcnQuYzozMDUKKyM6IGNvbnZlcnQuYzozMDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQk9NIGlzIHJlcXVpcmVkIGluICclcycgaWYgZW5jb2RlZCBhcyAlcyIKIG1zZ3N0ciAi5aaC5p6c57yW56CB5Li6ICUyJHPvvIzpnIDopoHlnKggJyUxJHMnIOS4reS9v+eUqCBCT00iCiAKLSM6IGNvbnZlcnQuYzozMDcKKyM6IGNvbnZlcnQuYzozMDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmaWxlICclcycgaXMgbWlzc2luZyBhIGJ5dGUgb3JkZXIgbWFyayAoQk9NKS4gUGxlYXNlIHVzZSBVVEYtJXNCRSBvciBVVEYtIgpAQCAtMjA5MiwxMTcgKzI5NTIsMTE3IEBACiAi5paH5Lu2ICclcycg57y65aSx5LiA5Liq5a2X6IqC6aG65bqP5qCH6K6w77yIQk9N77yJ44CC6K+35L2/55SoIFVURi0lc0JFIG9yIFVURi0lc0xF77yI5Y+W5Yaz5LqO5a2XIgogIuiKguW6j++8ieS9nOS4uuW3peS9nOWMuue8lueggeOAgiIKIAotIzogY29udmVydC5jOjQyNSBjb252ZXJ0LmM6NDk2CisjOiBjb252ZXJ0LmM6NDE5IGNvbnZlcnQuYzo0OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGVuY29kZSAnJXMnIGZyb20gJXMgdG8gJXMiCiBtc2dzdHIgIuaXoOazleWvuSAnJXMnIOi/m+ihjOS7jiAlcyDliLAgJXMg55qE57yW56CBIgogCi0jOiBjb252ZXJ0LmM6NDY4CisjOiBjb252ZXJ0LmM6NDYyCiAjLCBjLWZvcm1hdAogbXNnaWQgImVuY29kaW5nICclcycgZnJvbSAlcyB0byAlcyBhbmQgYmFjayBpcyBub3QgdGhlIHNhbWUiCiBtc2dzdHIgIuWwhiclcycg55qE57yW56CB5LuOICVzIOWIsCAlcyDmnaXlm57ovazmjaLkuI3kuIDoh7QiCiAKLSM6IGNvbnZlcnQuYzo2NzQKKyM6IGNvbnZlcnQuYzo2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGZvcmsgdG8gcnVuIGV4dGVybmFsIGZpbHRlciAnJXMnIgogbXNnc3RyICLkuI3og70gZm9yayDku6XmiafooYzlpJbpg6jov4fmu6TlmaggJyVzJyIKIAotIzogY29udmVydC5jOjY5NAorIzogY29udmVydC5jOjY4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmVlZCB0aGUgaW5wdXQgdG8gZXh0ZXJuYWwgZmlsdGVyICclcyciCiBtc2dzdHIgIuS4jeiDveWwhui+k+WFpeS8oOmAkue7meWklumDqOi/h+a7pOWZqCAnJXMnIgogCi0jOiBjb252ZXJ0LmM6NzAxCisjOiBjb252ZXJ0LmM6Njk1CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4dGVybmFsIGZpbHRlciAnJXMnIGZhaWxlZCAlZCIKIG1zZ3N0ciAi5aSW6YOo6L+H5ruk5ZmoICclcycg5aSx6LSl56CBICVkIgogCi0jOiBjb252ZXJ0LmM6NzM2IGNvbnZlcnQuYzo3MzkKKyM6IGNvbnZlcnQuYzo3MzAgY29udmVydC5jOjczMwogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkIGZyb20gZXh0ZXJuYWwgZmlsdGVyICclcycgZmFpbGVkIgogbXNnc3RyICLku47lpJbpg6jov4fmu6TlmaggJyVzJyDor7vlj5blpLHotKUiCiAKLSM6IGNvbnZlcnQuYzo3NDIgY29udmVydC5jOjc5NgorIzogY29udmVydC5jOjczNiBjb252ZXJ0LmM6NzkxCiAjLCBjLWZvcm1hdAogbXNnaWQgImV4dGVybmFsIGZpbHRlciAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAi5aSW6YOo6L+H5ruk5ZmoICclcycg5aSx6LSlIgogCi0jOiBjb252ZXJ0LmM6ODQ0CisjOiBjb252ZXJ0LmM6ODM5CiBtc2dpZCAidW5leHBlY3RlZCBmaWx0ZXIgdHlwZSIKIG1zZ3N0ciAi5oSP5aSW55qE6L+H5ruk57G75Z6LIgogCi0jOiBjb252ZXJ0LmM6ODU1CisjOiBjb252ZXJ0LmM6ODUwCiBtc2dpZCAicGF0aCBuYW1lIHRvbyBsb25nIGZvciBleHRlcm5hbCBmaWx0ZXIiCiBtc2dzdHIgIuWklumDqOi/h+a7pOWZqOeahOi3r+W+hOWQjeWkqumVvyIKIAotIzogY29udmVydC5jOjkyOQorIzogY29udmVydC5jOjkyNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXh0ZXJuYWwgZmlsdGVyICclcycgaXMgbm90IGF2YWlsYWJsZSBhbnltb3JlIGFsdGhvdWdoIG5vdCBhbGwgcGF0aHMgaGF2ZSAiCiAiYmVlbiBmaWx0ZXJlZCIKIG1zZ3N0ciAi5aSW6YOo6L+H5ruk5ZmoICclcycg5LiN5YaN5Y+v55So77yM5L2G5bm26Z2e5omA5pyJ6Lev5b6E6YO95bey6L+H5rukIgogCi0jOiBjb252ZXJ0LmM6MTIyOAorIzogY29udmVydC5jOjEyMjMKIG1zZ2lkICJ0cnVlL2ZhbHNlIGFyZSBubyB2YWxpZCB3b3JraW5nLXRyZWUtZW5jb2RpbmdzIgogbXNnc3RyICJ0cnVlL2ZhbHNlIOS4jeaYr+acieaViOeahOW3peS9nOWMuue8lueggSIKIAotIzogY29udmVydC5jOjEzOTggY29udmVydC5jOjE0MzIKKyM6IGNvbnZlcnQuYzoxNDExIGNvbnZlcnQuYzoxNDQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBjbGVhbiBmaWx0ZXIgJyVzJyBmYWlsZWQiCiBtc2dzdHIgIiVz77yaY2xlYW4g6L+H5ruk5ZmoICclcycg5aSx6LSlIgogCi0jOiBjb252ZXJ0LmM6MTQ3NgorIzogY29udmVydC5jOjE0ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHNtdWRnZSBmaWx0ZXIgJXMgZmFpbGVkIgogbXNnc3RyICIlc++8mnNtdWRnZSDov4fmu6TlmaggJXMg5aSx6LSlIgogCi0jOiBkYXRlLmM6MTE2CisjOiBkYXRlLmM6MTM4CiBtc2dpZCAiaW4gdGhlIGZ1dHVyZSIKIG1zZ3N0ciAi5Zyo5bCG5p2lIgogCi0jOiBkYXRlLmM6MTIyCisjOiBkYXRlLmM6MTQ0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gc2Vjb25kIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBzZWNvbmRzIGFnbyIKIG1zZ3N0clswXSAiJTxQUkl1TUFYPiDnp5Lpkp/liY0iCiBtc2dzdHJbMV0gIiU8UFJJdU1BWD4g56eS6ZKf5YmNIgogCi0jOiBkYXRlLmM6MTI5CisjOiBkYXRlLmM6MTUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gbWludXRlIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtaW51dGVzIGFnbyIKIG1zZ3N0clswXSAiJTxQUkl1TUFYPiDliIbpkp/liY0iCiBtc2dzdHJbMV0gIiU8UFJJdU1BWD4g5YiG6ZKf5YmNIgogCi0jOiBkYXRlLmM6MTM2CisjOiBkYXRlLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4gaG91ciBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gaG91cnMgYWdvIgogbXNnc3RyWzBdICIlPFBSSXVNQVg+IOWwj+aXtuWJjSIKIG1zZ3N0clsxXSAiJTxQUkl1TUFYPiDlsI/ml7bliY0iCiAKLSM6IGRhdGUuYzoxNDMKKyM6IGRhdGUuYzoxNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiBkYXkgYWdvIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IGRheXMgYWdvIgogbXNnc3RyWzBdICIlPFBSSXVNQVg+IOWkqeWJjSIKIG1zZ3N0clsxXSAiJTxQUkl1TUFYPiDlpKnliY0iCiAKLSM6IGRhdGUuYzoxNDkKKyM6IGRhdGUuYzoxNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiB3ZWVrIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiB3ZWVrcyBhZ28iCiBtc2dzdHJbMF0gIiU8UFJJdU1BWD4g5ZGo5YmNIgogbXNnc3RyWzFdICIlPFBSSXVNQVg+IOWRqOWJjSIKIAotIzogZGF0ZS5jOjE1NgorIzogZGF0ZS5jOjE3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlPFBSSXVNQVg+IG1vbnRoIGFnbyIKIG1zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBtb250aHMgYWdvIgogbXNnc3RyWzBdICIlPFBSSXVNQVg+IOS4quaciOWJjSIKIG1zZ3N0clsxXSAiJTxQUkl1TUFYPiDkuKrmnIjliY0iCiAKLSM6IGRhdGUuYzoxNjcKKyM6IGRhdGUuYzoxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJTxQUkl1TUFYPiB5ZWFyIgogbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHllYXJzIgpAQCAtMjIxMCw0MCArMzA3MCw0MCBAQAogbXNnc3RyWzFdICIlPFBSSXVNQVg+IOW5tCIKIAogIy4gVFJBTlNMQVRPUlM6ICIlcyIgaXMgIjxuPiB5ZWFycyIKLSM6IGRhdGUuYzoxNzAKKyM6IGRhdGUuYzoxOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMsICU8UFJJdU1BWD4gbW9udGggYWdvIgogbXNnaWRfcGx1cmFsICIlcywgJTxQUkl1TUFYPiBtb250aHMgYWdvIgogbXNnc3RyWzBdICIlcyAlPFBSSXVNQVg+IOS4quaciOWJjSIKIG1zZ3N0clsxXSAiJXMgJTxQUkl1TUFYPiDkuKrmnIjliY0iCiAKLSM6IGRhdGUuYzoxNzUgZGF0ZS5jOjE4MAorIzogZGF0ZS5jOjE5NyBkYXRlLmM6MjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiU8UFJJdU1BWD4geWVhciBhZ28iCiBtc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4geWVhcnMgYWdvIgogbXNnc3RyWzBdICIlPFBSSXVNQVg+IOW5tOWJjSIKIG1zZ3N0clsxXSAiJTxQUkl1TUFYPiDlubTliY0iCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzoyNjgKKyM6IGRlbHRhLWlzbGFuZHMuYzoyNzIKIG1zZ2lkICJQcm9wYWdhdGluZyBpc2xhbmQgbWFya3MiCiBtc2dzdHIgIuato+WcqOS8oOaSreaVsOaNruWym+agh+iusCIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjI4NgorIzogZGVsdGEtaXNsYW5kcy5jOjI5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgdHJlZSBvYmplY3QgJXMiCiBtc2dzdHIgIuWdj+eahOagkeWvueixoSAlcyIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjMzMAorIzogZGVsdGEtaXNsYW5kcy5jOjMzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gbG9hZCBpc2xhbmQgcmVnZXggZm9yICclcyc6ICVzIgogbXNnc3RyICLmnKrog73liqDovb0gJyVzJyDnmoTmlbDmja7lspvmraPliJnooajovr7lvI/vvJolcyIKIAotIzogZGVsdGEtaXNsYW5kcy5jOjM4NgorIzogZGVsdGEtaXNsYW5kcy5jOjM5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJpc2xhbmQgcmVnZXggZnJvbSBjb25maWcgaGFzIHRvbyBtYW55IGNhcHR1cmUgZ3JvdXBzIChtYXg9JWQpIgogbXNnc3RyICLmnaXoh6ogY29uZmlnIOeahOaVsOaNruWym+ato+WImeihqOi+vuW8j+acieWkquWkmueahOaNleiOt+e7hO+8iOacgOWkmiAlZCDkuKrvvIkiCiAKLSM6IGRlbHRhLWlzbGFuZHMuYzo0NjIKKyM6IGRlbHRhLWlzbGFuZHMuYzo0NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWFya2VkICVkIGlzbGFuZHMsIGRvbmUuXG4iCiBtc2dzdHIgIuW3suagh+iusCAlZCDkuKrmlbDmja7lspvvvIznu5PmnZ/jgIJcbiIKQEAgLTIyNTMsMjggKzMxMTMsMzMgQEAKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcmRlcmZpbGUgJyVzJyIKIG1zZ3N0ciAi6K+75Y+W5o6S5bqP5paH5Lu2ICclcycg5aSx6LSlIgogCi0jOiBkaWZmY29yZS1yZW5hbWUuYzo1NDQKKyM6IGRpZmZjb3JlLXJlbmFtZS5jOjU0MwogbXNnaWQgIlBlcmZvcm1pbmcgaW5leGFjdCByZW5hbWUgZGV0ZWN0aW9uIgogbXNnc3RyICLmraPlnKjov5vooYzpnZ7nsr7noa7nmoTph43lkb3lkI3mjqLmtYsiCiAKLSM6IGRpZmYuYzoxMDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAib3B0aW9uICclcycgcmVxdWlyZXMgYSB2YWx1ZSIKLW1zZ3N0ciAi6YCJ6aG5ICclcycgIOmcgOimgeS4gOS4quWAvCIKKyM6IGRpZmYtbm8taW5kZXguYzoyMzgKK21zZ2lkICJnaXQgZGlmZiAtLW5vLWluZGV4IFs8b3B0aW9ucz5dIDxwYXRoPiA8cGF0aD4iCittc2dzdHIgImdpdCBkaWZmIC0tbm8taW5kZXggWzzpgInpobk+XSA86Lev5b6EPiA86Lev5b6EPiIKKworIzogZGlmZi1uby1pbmRleC5jOjI2MworbXNnaWQgIiIKKyJOb3QgYSBnaXQgcmVwb3NpdG9yeS4gVXNlIC0tbm8taW5kZXggdG8gY29tcGFyZSB0d28gcGF0aHMgb3V0c2lkZSBhIHdvcmtpbmcgIgorInRyZWUiCittc2dzdHIgIuS4jeaYr+S4gOS4qiBnaXQg5LuT5bqT44CC5L2/55SoIC0tbm8taW5kZXgg5q+U6L6D5bel5L2c5Yy65LmL5aSW55qE5Lik5Liq6Lev5b6EIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IGRpZmYuYzoxNTgKKyM6IGRpZmYuYzoxNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBGYWlsZWQgdG8gcGFyc2UgZGlyc3RhdCBjdXQtb2ZmIHBlcmNlbnRhZ2UgJyVzJ1xuIgogbXNnc3RyICIgIOaXoOazleino+aekCBkaXJzdGF0IOaIquatou+8iGN1dC1vZmbvvInnmb7liIbmr5QgJyVzJ1xuIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IGRpZmYuYzoxNjMKKyM6IGRpZmYuYzoxNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBVbmtub3duIGRpcnN0YXQgcGFyYW1ldGVyICclcydcbiIKIG1zZ3N0ciAiICDmnKrnn6XnmoQgZGlyc3RhdCDlj4LmlbAgJyVzJ1xuIgogCi0jOiBkaWZmLmM6MjkxCisjOiBkaWZmLmM6Mjk2CiBtc2dpZCAiIgogImNvbG9yIG1vdmVkIHNldHRpbmcgbXVzdCBiZSBvbmUgb2YgJ25vJywgJ2RlZmF1bHQnLCAnYmxvY2tzJywgJ3plYnJhJywgIgogIidkaW1tZWQtemVicmEnLCAncGxhaW4nIgpAQCAtMjI4MiwyMyArMzE0NywyNyBAQAogIuenu+WKqOeahOminOiJsuiuvue9ruW/hemhu+aYryAnbm8n44CBJ2RlZmF1bHQn44CBJ2Jsb2NrcyfjgIEnemVicmEn44CBJ2RpbW1lZF96ZWJyYScg5oiWICIKICIncGxhaW4nIgogCi0jOiBkaWZmLmM6MzE2CisjOiBkaWZmLmM6MzI0CiAjLCBjLWZvcm1hdAotbXNnaWQgImlnbm9yaW5nIHVua25vd24gY29sb3ItbW92ZWQtd3MgbW9kZSAnJXMnIgotbXNnc3RyICLlv73nlaXmnKrnn6XnmoQgY29sb3ItbW92ZWQtd3Mg5qih5byPICclcyciCi0KLSM6IGRpZmYuYzozMjMKIG1zZ2lkICIiCi0iY29sb3ItbW92ZWQtd3M6IGFsbG93LWluZGVudGF0aW9uLWNoYW5nZSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB3aGl0ZSAiCi0ic3BhY2UgbW9kZXMiCisidW5rbm93biBjb2xvci1tb3ZlZC13cyBtb2RlICclcycsIHBvc3NpYmxlIHZhbHVlcyBhcmUgJ2lnbm9yZS1zcGFjZS1jaGFuZ2UnLCAiCisiJ2lnbm9yZS1zcGFjZS1hdC1lb2wnLCAnaWdub3JlLWFsbC1zcGFjZScsICdhbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UnIgorbXNnc3RyICIiCisi5pyq55+l55qEIGNvbG9yLW1vdmVkLXdzIOaooeW8jyAnJXMn77yM5Y+v6IO955qE5Y+W5YC85pyJICdpZ25vcmUtc3BhY2UtY2hhbmdlJ+OAgSdpZ25vcmUtIgorInNwYWNlLWF0LWVvbCfjgIEnaWdub3JlLWFsbC1zcGFjZSfjgIEnYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlJyIKKworIzogZGlmZi5jOjMzMgorbXNnaWQgIiIKKyJjb2xvci1tb3ZlZC13czogYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyICIKKyJ3aGl0ZXNwYWNlIG1vZGVzIgogbXNnc3RyICJjb2xvci1tb3ZlZC13c++8mmFsbG93LWluZGVudGF0aW9uLWNoYW5nZSDkuI3og73kuI7lhbblroPnqbrnmb3lrZfnrKbmqKHlvI/lhbHnlKgiCiAKLSM6IGRpZmYuYzozOTQKKyM6IGRpZmYuYzo0MDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5rbm93biB2YWx1ZSBmb3IgJ2RpZmYuc3VibW9kdWxlJyBjb25maWcgdmFyaWFibGU6ICclcyciCiBtc2dzdHIgIumFjee9ruWPmOmHjyAnZGlmZi5zdWJtb2R1bGUnIOacquefpeeahOWPluWAvO+8miclcyciCiAKLSM6IGRpZmYuYzo0NTQKKyM6IGRpZmYuYzo0NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkZvdW5kIGVycm9ycyBpbiAnZGlmZi5kaXJzdGF0JyBjb25maWcgdmFyaWFibGU6XG4iCkBAIC0yMzA3LDI0ICszMTc2LDM1IEBACiAi5Y+R546w6YWN572u5Y+Y6YePICdkaWZmLmRpcnN0YXQnIOS4reeahOmUmeivr++8mlxuIgogIiVzIgogCi0jOiBkaWZmLmM6NDE0MAorIzogZGlmZi5jOjQyMDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXh0ZXJuYWwgZGlmZiBkaWVkLCBzdG9wcGluZyBhdCAlcyIKIG1zZ3N0ciAi5aSW6YOoIGRpZmYg6YCA5Ye677yM5YGc5q2i5ZyoICVzIgogCi0jOiBkaWZmLmM6NDQ4MgorIzogZGlmZi5jOjQ1NDcKIG1zZ2lkICItLW5hbWUtb25seSwgLS1uYW1lLXN0YXR1cywgLS1jaGVjayBhbmQgLXMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLS1uYW1lLW9ubHnjgIEtLW5hbWUtc3RhdHVz44CBLS1jaGVjayDlkowgLXMg5piv5LqS5pal55qEIgogCi0jOiBkaWZmLmM6NDQ4NQorIzogZGlmZi5jOjQ1NTAKIG1zZ2lkICItRywgLVMgYW5kIC0tZmluZC1vYmplY3QgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLUfjgIEtUyDlkowgLS1maW5kLW9iamVjdCDmmK/kupLmlqXnmoQiCiAKLSM6IGRpZmYuYzo0NTYzCisjOiBkaWZmLmM6NDYyOAogbXNnaWQgIi0tZm9sbG93IHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhdGhzcGVjIgogbXNnc3RyICItLWZvbGxvdyDmmI7noa7opoHmsYLlj6rot5/kuIDkuKrot6/lvoTop4TmoLwiCiAKLSM6IGRpZmYuYzo0NzI5CisjOiBkaWZmLmM6NDY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIC0tc3RhdCB2YWx1ZTogJXMiCittc2dzdHIgIuaXoOaViOeahCAtLXN0YXQg5YC877yaJXMiCisKKyM6IGRpZmYuYzo0NjgxIGRpZmYuYzo0Njg2IGRpZmYuYzo0NjkxIGRpZmYuYzo0Njk2IGRpZmYuYzo1MjA5CisjOiBwYXJzZS1vcHRpb25zLmM6MTk3IHBhcnNlLW9wdGlvbnMuYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKK21zZ3N0ciAiJXMg5pyf5pyb5LiA5Liq5pWw5a2X5YC8IgorCisjOiBkaWZmLmM6NDcxMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiRmFpbGVkIHRvIHBhcnNlIC0tZGlyc3RhdC8tWCBvcHRpb24gcGFyYW1ldGVyOlxuIgpAQCAtMjMzMyw1OSArMzIxMyw1NDkgQEAKICLml6Dms5Xop6PmnpAgLS1kaXJzdGF0Ly1YIOmAiemhueeahOWPguaVsO+8mlxuIgogIiVzIgogCi0jOiBkaWZmLmM6NDc0MworIzogZGlmZi5jOjQ3OTgKICMsIGMtZm9ybWF0Ci1tc2dpZCAiRmFpbGVkIHRvIHBhcnNlIC0tc3VibW9kdWxlIG9wdGlvbiBwYXJhbWV0ZXI6ICclcyciCittc2dpZCAidW5rbm93biBjaGFuZ2UgY2xhc3MgJyVjJyBpbiAtLWRpZmYtZmlsdGVyPSVzIgorbXNnc3RyICItLWRpZmYtZmlsdGVyPSUyJHMg5Lit5pyq55+l55qE5Y+Y5pu057G7ICclMSRjJyIKKworIzogZGlmZi5jOjQ4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB2YWx1ZSBhZnRlciB3cy1lcnJvci1oaWdobGlnaHQ9JS4qcyIKK21zZ3N0ciAid3MtZXJyb3ItaGlnaGxpZ2h0PSUuKnMg5LmL5ZCO5pyq55+l55qE5YC8IgorCisjOiBkaWZmLmM6NDgzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSAnJXMnIgorbXNnc3RyICLkuI3og73op6PmnpAgJyVzJyIKKworIzogZGlmZi5jOjQ4ODYgZGlmZi5jOjQ4OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyA8bj4vPG0+IGZvcm0iCittc2dzdHIgIiVzIOacn+acmyA8bj4vPG0+IOagvOW8jyIKKworIzogZGlmZi5jOjQ5MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZXhwZWN0cyBhIGNoYXJhY3RlciwgZ290ICclcyciCittc2dzdHIgIiVzIOacn+acm+S4gOS4quWtl+espu+8jOW+l+WIsCAnJXMnIgorCisjOiBkaWZmLmM6NDkyNQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS1jb2xvci1tb3ZlZCBhcmd1bWVudDogJXMiCittc2dzdHIgIuWdj+eahCAtLWNvbG9yLW1vdmVkIOWPguaVsO+8miVzIgorCisjOiBkaWZmLmM6NDk0NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG1vZGUgJyVzJyBpbiAtLWNvbG9yLW1vdmVkLXdzIgorbXNnc3RyICItLWNvbG9yLW1vdmVkLXdzIOS4reeahOaXoOaViOaooeW8jyAnJXMnICIKKworIzogZGlmZi5jOjQ5ODQKK21zZ2lkICIiCisib3B0aW9uIGRpZmYtYWxnb3JpdGhtIGFjY2VwdHMgXCJteWVyc1wiLCBcIm1pbmltYWxcIiwgXCJwYXRpZW5jZVwiIGFuZCAiCisiXCJoaXN0b2dyYW1cIiIKK21zZ3N0ciAiIgorImRpZmYtYWxnb3JpdGhtIOmAiemhueaciSBcIm15ZXJzXCLjgIFcIm1pbmltYWxcIuOAgVwicGF0aWVuY2VcIiDlkowgXCJoaXN0b2dyYW1cIiIKKworIzogZGlmZi5jOjUwMjAgZGlmZi5jOjUwNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBhcmd1bWVudCB0byAlcyIKK21zZ3N0ciAiJXMg55qE5Y+C5pWw5peg5pWIIgorCisjOiBkaWZmLmM6NTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgLS1zdWJtb2R1bGUgb3B0aW9uIHBhcmFtZXRlcjogJyVzJyIKIG1zZ3N0ciAi5peg5rOV6Kej5p6QIC0tc3VibW9kdWxlIOmAiemhueeahOWPguaVsO+8miclcyciCiAKLSM6IGRpZmYuYzo1ODIzCisjOiBkaWZmLmM6NTIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS13b3JkLWRpZmYgYXJndW1lbnQ6ICVzIgorbXNnc3RyICLlnY/nmoQgLS13b3JkLWRpZmYg5Y+C5pWw77yaJXMiCisKKyM6IGRpZmYuYzo1MjU3Cittc2dpZCAiRGlmZiBvdXRwdXQgZm9ybWF0IG9wdGlvbnMiCittc2dzdHIgIuW3ruW8gui+k+WHuuagvOW8j+WMlumAiemhuSIKKworIzogZGlmZi5jOjUyNTkgZGlmZi5jOjUyNjUKK21zZ2lkICJnZW5lcmF0ZSBwYXRjaCIKK21zZ3N0ciAi55Sf5oiQ6KGl5LiBIgorCisjOiBkaWZmLmM6NTI2MiBidWlsdGluL2xvZy5jOjE3MworbXNnaWQgInN1cHByZXNzIGRpZmYgb3V0cHV0IgorbXNnc3RyICLkuI3mmL7npLrlt67lvILovpPlh7oiCisKKyM6IGRpZmYuYzo1MjY3IGRpZmYuYzo1MzgxIGRpZmYuYzo1Mzg4Cittc2dpZCAiPG4+IgorbXNnc3RyICI8bj4iCisKKyM6IGRpZmYuYzo1MjY4IGRpZmYuYzo1MjcxCittc2dpZCAiZ2VuZXJhdGUgZGlmZnMgd2l0aCA8bj4gbGluZXMgY29udGV4dCIKK21zZ3N0ciAi55Sf5oiQ5ZCrIDxuPiDooYzkuIrkuIvmlofnmoTlt67lvIIiCisKKyM6IGRpZmYuYzo1MjczCittc2dpZCAiZ2VuZXJhdGUgdGhlIGRpZmYgaW4gcmF3IGZvcm1hdCIKK21zZ3N0ciAi55Sf5oiQ5Y6f5aeL5qC85byP55qE5beu5byCIgorCisjOiBkaWZmLmM6NTI3NgorbXNnaWQgInN5bm9ueW0gZm9yICctcCAtLXJhdyciCittc2dzdHIgIuWSjCAnLXAgLS1yYXcnIOWQjOS5iSIKKworIzogZGlmZi5jOjUyODAKK21zZ2lkICJzeW5vbnltIGZvciAnLXAgLS1zdGF0JyIKK21zZ3N0ciAi5ZKMICctcCAtLXN0YXQnIOWQjOS5iSIKKworIzogZGlmZi5jOjUyODQKK21zZ2lkICJtYWNoaW5lIGZyaWVuZGx5IC0tc3RhdCIKK21zZ3N0ciAi5py65Zmo5Y+L5aW955qEIC0tc3RhdCIKKworIzogZGlmZi5jOjUyODcKK21zZ2lkICJvdXRwdXQgb25seSB0aGUgbGFzdCBsaW5lIG9mIC0tc3RhdCIKK21zZ3N0ciAi5Y+q6L6T5Ye6IC0tc3RhdCDnmoTmnIDlkI7kuIDooYwiCisKKyM6IGRpZmYuYzo1Mjg5IGRpZmYuYzo1Mjk3Cittc2dpZCAiPHBhcmFtMSxwYXJhbTI+Li4uIgorbXNnc3RyICI85Y+C5pWwMSzlj4LmlbAyPi4uLiIKKworIzogZGlmZi5jOjUyOTAKK21zZ2lkICIiCisib3V0cHV0IHRoZSBkaXN0cmlidXRpb24gb2YgcmVsYXRpdmUgYW1vdW50IG9mIGNoYW5nZXMgZm9yIGVhY2ggc3ViLWRpcmVjdG9yeSIKK21zZ3N0ciAi6L6T5Ye65q+P5Liq5a2Q55uu5b2V55u45a+55Y+Y5pu055qE5YiG5biDIgorCisjOiBkaWZmLmM6NTI5NAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1jdW11bGF0aXZlIgorbXNnc3RyICLlkowgLS1kaXJzdGF0PWN1bXVsYXRpdmUg5ZCM5LmJIgorCisjOiBkaWZmLmM6NTI5OAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1maWxlcyxwYXJhbTEscGFyYW0yLi4uIgorbXNnc3RyICLmmK8gLS1kaXJzdGF0PWZpbGVzLHBhcmFtMSxwYXJhbTIuLi4g55qE5ZCM5LmJ6K+NIgorCisjOiBkaWZmLmM6NTMwMgorbXNnaWQgIndhcm4gaWYgY2hhbmdlcyBpbnRyb2R1Y2UgY29uZmxpY3QgbWFya2VycyBvciB3aGl0ZXNwYWNlIGVycm9ycyIKK21zZ3N0ciAi5aaC5p6c5Y+Y5pu05Lit5byV5YWl5Yay56qB5a6a55WM56ym5oiW56m655m96ZSZ6K+v77yM57uZ5Ye66K2m5ZGKIgorCisjOiBkaWZmLmM6NTMwNQorbXNnaWQgImNvbmRlbnNlZCBzdW1tYXJ5IHN1Y2ggYXMgY3JlYXRpb25zLCByZW5hbWVzIGFuZCBtb2RlIGNoYW5nZXMiCittc2dzdHIgIueyvueugOaRmOimge+8jOS+i+WmguWIm+W7uuOAgemHjeWRveWQjeWSjOaooeW8j+WPmOabtCIKKworIzogZGlmZi5jOjUzMDgKK21zZ2lkICJzaG93IG9ubHkgbmFtZXMgb2YgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAi5Y+q5pi+56S65Y+Y5pu05paH5Lu255qE5paH5Lu25ZCNIgorCisjOiBkaWZmLmM6NTMxMQorbXNnaWQgInNob3cgb25seSBuYW1lcyBhbmQgc3RhdHVzIG9mIGNoYW5nZWQgZmlsZXMiCittc2dzdHIgIuWPquaYvuekuuWPmOabtOaWh+S7tueahOaWh+S7tuWQjeWSjOeKtuaAgSIKKworIzogZGlmZi5jOjUzMTMKK21zZ2lkICI8d2lkdGg+Wyw8bmFtZS13aWR0aD5bLDxjb3VudD5dXSIKK21zZ3N0ciAiPOWuveW6pj5bLDzmlofku7blkI3lrr3luqY+Wyw85qyh5pWwPl1dIgorCisjOiBkaWZmLmM6NTMxNAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IgorbXNnc3RyICLnlJ/miJDlt67lvILnu5/orqHvvIhkaWZmc3RhdO+8iSIKKworIzogZGlmZi5jOjUzMTYgZGlmZi5jOjUzMTkgZGlmZi5jOjUzMjIKK21zZ2lkICI8d2lkdGg+IgorbXNnc3RyICI85a695bqmPiIKKworIzogZGlmZi5jOjUzMTcKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGEgZ2l2ZW4gd2lkdGgiCittc2dzdHIgIuS9v+eUqOe7meWumueahOmVv+W6pueUn+aIkOW3ruW8gue7n+iuoSIKKworIzogZGlmZi5jOjUzMjAKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGEgZ2l2ZW4gbmFtZSB3aWR0aCIKK21zZ3N0ciAi5L2/55So57uZ5a6a55qE5paH5Lu25ZCN6ZW/5bqm55Sf5oiQ5beu5byC57uf6K6hIgorCisjOiBkaWZmLmM6NTMyMworbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBncmFwaCB3aWR0aCIKK21zZ3N0ciAi5L2/55So57uZ5a6a55qE5Zu+5b2i6ZW/5bqm55Sf5oiQ5beu5byC57uf6K6hIgorCisjOiBkaWZmLmM6NTMyNQorbXNnaWQgIjxjb3VudD4iCittc2dzdHIgIjzmrKHmlbA+IgorCisjOiBkaWZmLmM6NTMyNgorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggbGltaXRlZCBsaW5lcyIKK21zZ3N0ciAi55Sf5oiQ5pyJ6ZmQ6KGM5pWw55qE5beu5byC57uf6K6hIgorCisjOiBkaWZmLmM6NTMyOQorbXNnaWQgImdlbmVyYXRlIGNvbXBhY3Qgc3VtbWFyeSBpbiBkaWZmc3RhdCIKK21zZ3N0ciAi55Sf5oiQ5beu5byC57uf6K6h55qE566A5rSB5pGY6KaBIgorCisjOiBkaWZmLmM6NTMzMgorbXNnaWQgIm91dHB1dCBhIGJpbmFyeSBkaWZmIHRoYXQgY2FuIGJlIGFwcGxpZWQiCittc2dzdHIgIui+k+WHuuS4gOS4quWPr+S7peW6lOeUqOeahOS6jOi/m+WItuW3ruW8giIKKworIzogZGlmZi5jOjUzMzUKK21zZ2lkICJzaG93IGZ1bGwgcHJlLSBhbmQgcG9zdC1pbWFnZSBvYmplY3QgbmFtZXMgb24gdGhlIFwiaW5kZXhcIiBsaW5lcyIKK21zZ3N0ciAi5ZyoIFwiaW5kZXhcIiDooYzmmL7npLrlrozmlbTnmoTliY3lkI7lr7nosaHlkI3np7AiCisKKyM6IGRpZmYuYzo1MzM3Cittc2dpZCAic2hvdyBjb2xvcmVkIGRpZmYiCittc2dzdHIgIuaYvuekuuW4puminOiJsueahOW3ruW8giIKKworIzogZGlmZi5jOjUzMzgKK21zZ2lkICI8a2luZD4iCittc2dzdHIgIjznsbvlnos+IgorCisjOiBkaWZmLmM6NTMzOQorbXNnaWQgIiIKKyJoaWdobGlnaHQgd2hpdGVzcGFjZSBlcnJvcnMgaW4gdGhlICdjb250ZXh0JywgJ29sZCcgb3IgJ25ldycgbGluZXMgaW4gdGhlICIKKyJkaWZmIgorbXNnc3RyICLlr7nkuo7lt67lvILkuK3nmoTkuIrkuIvmlofjgIHml6fnmoTlkozmlrDnmoTooYzvvIzliqDkuq7mmL7npLrplJnor6/nmoTnqbrnmb3lrZfnrKYiCisKKyM6IGRpZmYuYzo1MzQyCittc2dpZCAiIgorImRvIG5vdCBtdW5nZSBwYXRobmFtZXMgYW5kIHVzZSBOVUxzIGFzIG91dHB1dCBmaWVsZCB0ZXJtaW5hdG9ycyBpbiAtLXJhdyBvciAiCisiLS1udW1zdGF0IgorbXNnc3RyICIiCisi5ZyoIC0tcmF3IOaIluiAhSAtLW51bXN0YXQg5Lit77yM5LiN5a+56Lev5b6E5a2X56ym6L2s56CB5bm25L2/55SoIE5VTCDlrZfnrKblgZrkuLrovpPlh7rlrZfmrrXnmoTliIbpmpQiCisi56ymIgorCisjOiBkaWZmLmM6NTM0NSBkaWZmLmM6NTM0OCBkaWZmLmM6NTM1MSBkaWZmLmM6NTQ1NworbXNnaWQgIjxwcmVmaXg+IgorbXNnc3RyICI85YmN57yAPiIKKworIzogZGlmZi5jOjUzNDYKK21zZ2lkICJzaG93IHRoZSBnaXZlbiBzb3VyY2UgcHJlZml4IGluc3RlYWQgb2YgXCJhL1wiIgorbXNnc3RyICLmmL7npLrnu5nlrprnmoTmupDliY3nvIDlj5bku6MgXCJhL1wiIgorCisjOiBkaWZmLmM6NTM0OQorbXNnaWQgInNob3cgdGhlIGdpdmVuIGRlc3RpbmF0aW9uIHByZWZpeCBpbnN0ZWFkIG9mIFwiYi9cIiIKK21zZ3N0ciAi5pi+56S657uZ5a6a55qE55uu5qCH5YmN57yA5Y+W5LujIFwiYi9cIiIKKworIzogZGlmZi5jOjUzNTIKK21zZ2lkICJwcmVwZW5kIGFuIGFkZGl0aW9uYWwgcHJlZml4IHRvIGV2ZXJ5IGxpbmUgb2Ygb3V0cHV0IgorbXNnc3RyICLovpPlh7rnmoTmr4/kuIDooYzpmYTliqDliY3nvIAiCisKKyM6IGRpZmYuYzo1MzU1Cittc2dpZCAiZG8gbm90IHNob3cgYW55IHNvdXJjZSBvciBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIuS4jeaYvuekuuS7u+S9lea6kOWSjOebruagh+WJjee8gCIKKworIzogZGlmZi5jOjUzNTgKK21zZ2lkICJzaG93IGNvbnRleHQgYmV0d2VlbiBkaWZmIGh1bmtzIHVwIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGxpbmVzIgorbXNnc3RyICLmmL7npLrmjIflrprooYzmlbDnmoTlt67lvILlnZfpl7TnmoTkuIrkuIvmlociCisKKyM6IGRpZmYuYzo1MzYyIGRpZmYuYzo1MzY3IGRpZmYuYzo1MzcyCittc2dpZCAiPGNoYXI+IgorbXNnc3RyICI85a2X56ymPiIKKworIzogZGlmZi5jOjUzNjMKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBuZXcgbGluZSBpbnN0ZWFkIG9mICcrJyIKK21zZ3N0ciAi5oyH5a6a5LiA5Liq5a2X56ym5Y+W5LujICcrJyDmnaXooajnpLrmlrDnmoTkuIDooYwiCisKKyM6IGRpZmYuYzo1MzY4Cittc2dpZCAic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGFuIG9sZCBsaW5lIGluc3RlYWQgb2YgJy0nIgorbXNnc3RyICLmjIflrprkuIDkuKrlrZfnrKblj5bku6MgJy0nIOadpeihqOekuuaXp+eahOS4gOihjCIKKworIzogZGlmZi5jOjUzNzMKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBjb250ZXh0IGluc3RlYWQgb2YgJyAnIgorbXNnc3RyICLmjIflrprkuIDkuKrlrZfnrKblj5bku6MgJyAnIOadpeihqOekuuS4gOihjOS4iuS4i+aWhyIKKworIzogZGlmZi5jOjUzNzYKK21zZ2lkICJEaWZmIHJlbmFtZSBvcHRpb25zIgorbXNnc3RyICLlt67lvILph43lkb3lkI3pgInpobkiCisKKyM6IGRpZmYuYzo1Mzc3Cittc2dpZCAiPG4+Wy88bT5dIgorbXNnc3RyICI8bj5bLzxtPl0iCisKKyM6IGRpZmYuYzo1Mzc4Cittc2dpZCAiYnJlYWsgY29tcGxldGUgcmV3cml0ZSBjaGFuZ2VzIGludG8gcGFpcnMgb2YgZGVsZXRlIGFuZCBjcmVhdGUiCittc2dzdHIgIuWwhuWujOWFqOmHjeWGmeeahOWPmOabtOaJk+egtOS4uuaIkOWvueeahOWIoOmZpOWSjOWIm+W7uiIKKworIzogZGlmZi5jOjUzODIKK21zZ2lkICJkZXRlY3QgcmVuYW1lcyIKK21zZ3N0ciAi5qOA5rWL6YeN5ZG95ZCNIgorCisjOiBkaWZmLmM6NTM4NgorbXNnaWQgIm9taXQgdGhlIHByZWltYWdlIGZvciBkZWxldGVzIgorbXNnc3RyICLnnIHnlaXliKDpmaTmk43kvZznmoTlt67lvILovpPlh7oiCisKKyM6IGRpZmYuYzo1Mzg5Cittc2dpZCAiZGV0ZWN0IGNvcGllcyIKK21zZ3N0ciAi5qOA5rWL5ou36LSdIgorCisjOiBkaWZmLmM6NTM5MworbXNnaWQgInVzZSB1bm1vZGlmaWVkIGZpbGVzIGFzIHNvdXJjZSB0byBmaW5kIGNvcGllcyIKK21zZ3N0ciAi5L2/55So5pyq5L+u5pS555qE5paH5Lu25YGa5Li65Y+R546w5ou36LSd55qE5rqQIgorCisjOiBkaWZmLmM6NTM5NQorbXNnaWQgImRpc2FibGUgcmVuYW1lIGRldGVjdGlvbiIKK21zZ3N0ciAi56aB55So6YeN5ZG95ZCN5o6i5rWLIgorCisjOiBkaWZmLmM6NTM5OAorbXNnaWQgInVzZSBlbXB0eSBibG9icyBhcyByZW5hbWUgc291cmNlIgorbXNnc3RyICLkvb/nlKjnqbrnmoTmlbDmja7lr7nosaHlgZrkuLrph43lkb3lkI3nmoTmupAiCisKKyM6IGRpZmYuYzo1NDAwCittc2dpZCAiY29udGludWUgbGlzdGluZyB0aGUgaGlzdG9yeSBvZiBhIGZpbGUgYmV5b25kIHJlbmFtZXMiCittc2dzdHIgIue7p+e7reWIl+WHuuaWh+S7tumHjeWRveWQjeS7peWklueahOWOhuWPsuiusOW9lSIKKworIzogZGlmZi5jOjU0MDMKK21zZ2lkICIiCisicHJldmVudCByZW5hbWUvY29weSBkZXRlY3Rpb24gaWYgdGhlIG51bWJlciBvZiByZW5hbWUvY29weSB0YXJnZXRzIGV4Y2VlZHMgIgorImdpdmVuIGxpbWl0IgorbXNnc3RyICLlpoLmnpzph43lkb3lkI0v5ou36LSd55uu5qCH6LaF6L+H57uZ5a6a55qE6ZmQ5Yi277yM56aB5q2i6YeN5ZG95ZCNL+aLt+i0neajgOa1iyIKKworIzogZGlmZi5jOjU0MDUKK21zZ2lkICJEaWZmIGFsZ29yaXRobSBvcHRpb25zIgorbXNnc3RyICLlt67lvILnrpfms5XpgInpobkiCisKKyM6IGRpZmYuYzo1NDA3Cittc2dpZCAicHJvZHVjZSB0aGUgc21hbGxlc3QgcG9zc2libGUgZGlmZiIKK21zZ3N0ciAi55Sf5oiQ5bC95Y+v6IO95bCP55qE5beu5byCIgorCisjOiBkaWZmLmM6NTQxMAorbXNnaWQgImlnbm9yZSB3aGl0ZXNwYWNlIHdoZW4gY29tcGFyaW5nIGxpbmVzIgorbXNnc3RyICLooYzmr5TovoPml7blv73nlaXnqbrnmb3lrZfnrKYiCisKKyM6IGRpZmYuYzo1NDEzCittc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gYW1vdW50IG9mIHdoaXRlc3BhY2UiCittc2dzdHIgIuW/veeVpeepuueZveWtl+espueahOWPmOabtCIKKworIzogZGlmZi5jOjU0MTYKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyBpbiB3aGl0ZXNwYWNlIGF0IEVPTCIKK21zZ3N0ciAi5b+955Wl6KGM5bC+55qE56m655m95a2X56ym5Y+Y5pu0IgorCisjOiBkaWZmLmM6NTQxOQorbXNnaWQgImlnbm9yZSBjYXJyaWVyLXJldHVybiBhdCB0aGUgZW5kIG9mIGxpbmUiCittc2dzdHIgIuW/veeVpeihjOWwvueahOWbnui9puespu+8iENS77yJIgorCisjOiBkaWZmLmM6NTQyMgorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIHdob3NlIGxpbmVzIGFyZSBhbGwgYmxhbmsiCittc2dzdHIgIuW/veeVpeaVtOihjOmDveaYr+epuueZveeahOWPmOabtCIKKworIzogZGlmZi5jOjU0MjUKK21zZ2lkICJoZXVyaXN0aWMgdG8gc2hpZnQgZGlmZiBodW5rIGJvdW5kYXJpZXMgZm9yIGVhc3kgcmVhZGluZyIKK21zZ3N0ciAi5ZCv5Y+R5byP6L2s5o2i5beu5byC6L6555WM5Lul5L6/6ZiF6K+7IgorCisjOiBkaWZmLmM6NTQyOAorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwicGF0aWVuY2UgZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAi5L2/55SoIFwicGF0aWVuY2UgZGlmZlwiIOeul+azleeUn+aIkOW3ruW8giIKKworIzogZGlmZi5jOjU0MzIKK21zZ2lkICJnZW5lcmF0ZSBkaWZmIHVzaW5nIHRoZSBcImhpc3RvZ3JhbSBkaWZmXCIgYWxnb3JpdGhtIgorbXNnc3RyICLkvb/nlKggXCJoaXN0b2dyYW0gZGlmZlwiIOeul+azleeUn+aIkOW3ruW8giIKKworIzogZGlmZi5jOjU0MzQKK21zZ2lkICI8YWxnb3JpdGhtPiIKK21zZ3N0ciAiPOeul+azlT4iCisKKyM6IGRpZmYuYzo1NDM1Cittc2dpZCAiY2hvb3NlIGEgZGlmZiBhbGdvcml0aG0iCittc2dzdHIgIumAieaLqeS4gOS4quW3ruW8gueul+azlSIKKworIzogZGlmZi5jOjU0MzcKK21zZ2lkICI8dGV4dD4iCittc2dzdHIgIjzmlofmnKw+IgorCisjOiBkaWZmLmM6NTQzOAorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwiYW5jaG9yZWQgZGlmZlwiIGFsZ29yaXRobSIKK21zZ3N0ciAi5L2/55SoIFwiYW5jaG9yZWQgZGlmZlwiIOeul+azleeUn+aIkOW3ruW8giIKKworIzogZGlmZi5jOjU0NDAgZGlmZi5jOjU0NDkgZGlmZi5jOjU0NTIKK21zZ2lkICI8bW9kZT4iCittc2dzdHIgIjzmqKHlvI8+IgorCisjOiBkaWZmLmM6NTQ0MQorbXNnaWQgInNob3cgd29yZCBkaWZmLCB1c2luZyA8bW9kZT4gdG8gZGVsaW1pdCBjaGFuZ2VkIHdvcmRzIgorbXNnc3RyICLmmL7npLrljZXor43lt67lvILvvIzkvb/nlKggPOaooeW8jz4g5YiG6ZqU5Y+Y5pu055qE5Y2V6K+NIgorCisjOiBkaWZmLmM6NTQ0MyBkaWZmLmM6NTQ0NiBkaWZmLmM6NTQ5MQorbXNnaWQgIjxyZWdleD4iCittc2dzdHIgIjzmraPliJk+IgorCisjOiBkaWZmLmM6NTQ0NAorbXNnaWQgInVzZSA8cmVnZXg+IHRvIGRlY2lkZSB3aGF0IGEgd29yZCBpcyIKK21zZ3N0ciAi5L2/55SoIDzmraPliJnooajovr7lvI8+IOehruWumuS9leS4uuS4gOS4quivjSIKKworIzogZGlmZi5jOjU0NDcKK21zZ2lkICJlcXVpdmFsZW50IHRvIC0td29yZC1kaWZmPWNvbG9yIC0td29yZC1kaWZmLXJlZ2V4PTxyZWdleD4iCittc2dzdHIgIuebuOW9k+S6jiAtLXdvcmQtZGlmZj1jb2xvciAtLXdvcmQtZGlmZi1yZWdleD085q2j5YiZPiIKKworIzogZGlmZi5jOjU0NTAKK21zZ2lkICJtb3ZlZCBsaW5lcyBvZiBjb2RlIGFyZSBjb2xvcmVkIGRpZmZlcmVudGx5IgorbXNnc3RyICLnp7vliqjnmoTku6PnoIHooYznlKjkuI3lkIzmlrnlvI/nnYDoibIiCisKKyM6IGRpZmYuYzo1NDUzCittc2dpZCAiaG93IHdoaXRlIHNwYWNlcyBhcmUgaWdub3JlZCBpbiAtLWNvbG9yLW1vdmVkIgorbXNnc3RyICLlnKggLS1jb2xvci1tb3ZlZCDkuIvlpoLkvZXlv73nlaXnqbrnmb3lrZfnrKYiCisKKyM6IGRpZmYuYzo1NDU2Cittc2dpZCAiT3RoZXIgZGlmZiBvcHRpb25zIgorbXNnc3RyICLlhbblroPlt67lvILpgInpobkiCisKKyM6IGRpZmYuYzo1NDU4Cittc2dpZCAid2hlbiBydW4gZnJvbSBzdWJkaXIsIGV4Y2x1ZGUgY2hhbmdlcyBvdXRzaWRlIGFuZCBzaG93IHJlbGF0aXZlIHBhdGhzIgorbXNnc3RyICLlvZPku47lrZDnm67lvZXov5DooYzvvIzmjpLpmaTnm67lvZXkuYvlpJbnmoTlj5jmm7TlubbmmL7npLrnm7jlr7not6/lvoQiCisKKyM6IGRpZmYuYzo1NDYyCittc2dpZCAidHJlYXQgYWxsIGZpbGVzIGFzIHRleHQiCittc2dzdHIgIuaKiuaJgOacieaWh+S7tuW9k+WBmuaWh+acrOWkhOeQhiIKKworIzogZGlmZi5jOjU0NjQKK21zZ2lkICJzd2FwIHR3byBpbnB1dHMsIHJldmVyc2UgdGhlIGRpZmYiCittc2dzdHIgIuS6pOaNouS4pOS4qui+k+WFpe+8jOWPjei9rOW3ruW8giIKKworIzogZGlmZi5jOjU0NjYKK21zZ2lkICJleGl0IHdpdGggMSBpZiB0aGVyZSB3ZXJlIGRpZmZlcmVuY2VzLCAwIG90aGVyd2lzZSIKK21zZ3N0ciAi5pyJ5beu5byC5pe26YCA5Ye656CB5Li6IDHvvIzlkKbliJnkuLogMCIKKworIzogZGlmZi5jOjU0NjgKK21zZ2lkICJkaXNhYmxlIGFsbCBvdXRwdXQgb2YgdGhlIHByb2dyYW0iCittc2dzdHIgIuemgeeUqOacrOeoi+W6j+eahOaJgOaciei+k+WHuiIKKworIzogZGlmZi5jOjU0NzAKK21zZ2lkICJhbGxvdyBhbiBleHRlcm5hbCBkaWZmIGhlbHBlciB0byBiZSBleGVjdXRlZCIKK21zZ3N0ciAi5YWB6K645omn6KGM5LiA5Liq5aSW572u55qE5beu5byC5Yqp5omLIgorCisjOiBkaWZmLmM6NTQ3MgorbXNnaWQgInJ1biBleHRlcm5hbCB0ZXh0IGNvbnZlcnNpb24gZmlsdGVycyB3aGVuIGNvbXBhcmluZyBiaW5hcnkgZmlsZXMiCittc2dzdHIgIuW9k+avlOi+g+S6jOi/m+WItuaWh+S7tuaXtu+8jOi/kOihjOWklumDqOeahOaWh+acrOi9rOaNoui/h+a7pOWZqCIKKworIzogZGlmZi5jOjU0NzQKK21zZ2lkICI8d2hlbj4iCittc2dzdHIgIjzkvZXml7Y+IgorCisjOiBkaWZmLmM6NTQ3NQorbXNnaWQgImlnbm9yZSBjaGFuZ2VzIHRvIHN1Ym1vZHVsZXMgaW4gdGhlIGRpZmYgZ2VuZXJhdGlvbiIKK21zZ3N0ciAi5Zyo55Sf5oiQ5beu5byC5pe277yM5b+955Wl5a2Q5qih57uE55qE5pu05pS5IgorCisjOiBkaWZmLmM6NTQ3OAorbXNnaWQgIjxmb3JtYXQ+IgorbXNnc3RyICI85qC85byPPiIKKworIzogZGlmZi5jOjU0NzkKK21zZ2lkICJzcGVjaWZ5IGhvdyBkaWZmZXJlbmNlcyBpbiBzdWJtb2R1bGVzIGFyZSBzaG93biIKK21zZ3N0ciAi5oyH5a6a5a2Q5qih57uE55qE5beu5byC5aaC5L2V5pi+56S6IgorCisjOiBkaWZmLmM6NTQ4MworbXNnaWQgImhpZGUgJ2dpdCBhZGQgLU4nIGVudHJpZXMgZnJvbSB0aGUgaW5kZXgiCittc2dzdHIgIumakOiXj+e0ouW8leS4rSAnZ2l0IGFkZCAtTicg5p2h55uuIgorCisjOiBkaWZmLmM6NTQ4NgorbXNnaWQgInRyZWF0ICdnaXQgYWRkIC1OJyBlbnRyaWVzIGFzIHJlYWwgaW4gdGhlIGluZGV4IgorbXNnc3RyICLlsIbntKLlvJXkuK0gJ2dpdCBhZGQgLU4nIOadoeebruW9k+WBmuecn+WunueahCIKKworIzogZGlmZi5jOjU0ODgKK21zZ2lkICI8c3RyaW5nPiIKK21zZ3N0ciAiPOWtl+espuS4sj4iCisKKyM6IGRpZmYuYzo1NDg5Cittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisic3RyaW5nIgorbXNnc3RyICLmn6Xmib7mlLnlj5jkuobmjIflrprlrZfnrKbkuLLlh7rnjrDmrKHmlbDnmoTlt67lvIIiCisKKyM6IGRpZmYuYzo1NDkyCittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisicmVnZXgiCittc2dzdHIgIuafpeaJvuaUueWPmOaMh+Wumuato+WImeWMuemFjeWHuueOsOasoeaVsOeahOW3ruW8giIKKworIzogZGlmZi5jOjU0OTUKK21zZ2lkICJzaG93IGFsbCBjaGFuZ2VzIGluIHRoZSBjaGFuZ2VzZXQgd2l0aCAtUyBvciAtRyIKK21zZ3N0ciAi5pi+56S65L2/55SoIC1TIOaIliAtRyDnmoTlj5jmm7Tpm4bnmoTmiYDmnInlj5jmm7QiCisKKyM6IGRpZmYuYzo1NDk4Cittc2dpZCAidHJlYXQgPHN0cmluZz4gaW4gLVMgYXMgZXh0ZW5kZWQgUE9TSVggcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICLlsIYgLVMg55qEIDxzdHJpbmc+IOW9k+WBmuaJqeWxleeahCBQT1NJWCDmraPliJnooajovr7lvI8iCisKKyM6IGRpZmYuYzo1NTAxCittc2dpZCAiY29udHJvbCB0aGUgb3JkZXIgaW4gd2hpY2ggZmlsZXMgYXBwZWFyIGluIHRoZSBvdXRwdXQiCittc2dzdHIgIuaOp+WItui+k+WHuuS4reeahOaWh+S7tuaYvuekuumhuuW6jyIKKworIzogZGlmZi5jOjU1MDIKK21zZ2lkICI8b2JqZWN0LWlkPiIKK21zZ3N0ciAiPOWvueixoSBJRD4iCisKKyM6IGRpZmYuYzo1NTAzCittc2dpZCAiIgorImxvb2sgZm9yIGRpZmZlcmVuY2VzIHRoYXQgY2hhbmdlIHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2YgdGhlIHNwZWNpZmllZCAiCisib2JqZWN0IgorbXNnc3RyICLmn6Xmib7mlLnlj5jmjIflrprlr7nosaHlh7rnjrDmrKHmlbDnmoTlt67lvIIiCisKKyM6IGRpZmYuYzo1NTA1Cittc2dpZCAiWyhBfEN8RHxNfFJ8VHxVfFh8QikuLi5bKl1dIgorbXNnc3RyICJbKEF8Q3xEfE18UnxUfFV8WHxCKS4uLlsqXV0iCisKKyM6IGRpZmYuYzo1NTA2Cittc2dpZCAic2VsZWN0IGZpbGVzIGJ5IGRpZmYgdHlwZSIKK21zZ3N0ciAi6YCa6L+H5beu5byC57G75Z6L6YCJ5oup5paH5Lu2IgorCisjOiBkaWZmLmM6NTUwOAorbXNnaWQgIjxmaWxlPiIKK21zZ3N0ciAiPOaWh+S7tj4iCisKKyM6IGRpZmYuYzo1NTA5Cittc2dpZCAiT3V0cHV0IHRvIGEgc3BlY2lmaWMgZmlsZSIKK21zZ3N0ciAi6L6T5Ye65Yiw5LiA5Liq5oyH5a6a55qE5paH5Lu2IgorCisjOiBkaWZmLmM6NjE2NAogbXNnaWQgImluZXhhY3QgcmVuYW1lIGRldGVjdGlvbiB3YXMgc2tpcHBlZCBkdWUgdG8gdG9vIG1hbnkgZmlsZXMuIgogbXNnc3RyICLlm6DkuLrmlofku7blpKrlpJrvvIznlaXov4fkuI3kuKXmoLznmoTph43lkb3lkI3mo4Dmn6XjgIIiCiAKLSM6IGRpZmYuYzo1ODI2CisjOiBkaWZmLmM6NjE2NwogbXNnaWQgIm9ubHkgZm91bmQgY29waWVzIGZyb20gbW9kaWZpZWQgcGF0aHMgZHVlIHRvIHRvbyBtYW55IGZpbGVzLiIKIG1zZ3N0ciAi5Zug5Li65paH5Lu25aSq5aSa77yM5Y+q5Zyo5L+u5pS555qE6Lev5b6E5Lit5p+l5om+5ou36LSd44CCIgogCi0jOiBkaWZmLmM6NTgyOQorIzogZGlmZi5jOjYxNzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInlvdSBtYXkgd2FudCB0byBzZXQgeW91ciAlcyB2YXJpYWJsZSB0byBhdCBsZWFzdCAlZCBhbmQgcmV0cnkgdGhlIGNvbW1hbmQuIgogbXNnc3RyICLmgqjlj6/og73mg7PopoHlsIblj5jph48gJXMg6K6+572u5Li66Iez5bCRICVkIOW5tuWGjeasoeaJp+ihjOatpOWRveS7pOOAgiIKIAotIzogZGlyLmM6NTc2CisjOiBkaXIuYzo1NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlKHMpIGtub3duIHRvIGdpdCIKIG1zZ3N0ciAi6Lev5b6E6KeE5qC8ICclcycg5pyq5Yy56YWN5Lu75L2VIGdpdCDlt7Lnn6Xmlofku7YiCiAKLSM6IGRpci5jOjk2NQorIzogZGlyLmM6Njk1IGRpci5jOjcyNCBkaXIuYzo3MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIHBhdHRlcm46ICclcyciCittc2dzdHIgIuacquivhuWIq+eahOaooeW8j++8miclcyciCisKKyM6IGRpci5jOjc1NCBkaXIuYzo3NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIG5lZ2F0aXZlIHBhdHRlcm46ICclcyciCittc2dzdHIgIuacquivhuWIq+eahOWPjeWQkeaooeW8j++8miclcyciCisKKyM6IGRpci5jOjc4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ5b3VyIHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBoYXZlIGlzc3VlczogcGF0dGVybiAnJXMnIGlzIHJlcGVhdGVkIgorbXNnc3RyICLmgqjnmoQgc3BhcnNlLWNoZWNrb3V0IOaWh+S7tuWPr+iDveaciemXrumimO+8mumHjeWkjeeahOaooeW8jyAnJXMnIgorCisjOiBkaXIuYzo3OTYKK21zZ2lkICJkaXNhYmxpbmcgY29uZSBwYXR0ZXJuIG1hdGNoaW5nIgorbXNnc3RyICLnpoHmraIgY29uZSDmqKHlvI/ljLnphY0iCisKKyM6IGRpci5jOjExNzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHVzZSAlcyBhcyBhbiBleGNsdWRlIGZpbGUiCiBtc2dzdHIgIuS4jeiDveWwhiAlcyDnlKjkvZzmjpLpmaTmlofku7YiCiAKLSM6IGRpci5jOjE4ODAKKyM6IGRpci5jOjIxNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgIuS4jeiDveaJk+W8gOebruW9lSAnJXMnIgogCi0jOiBkaXIuYzoyMTIyCisjOiBkaXIuYzoyNDc5CiBtc2dpZCAiZmFpbGVkIHRvIGdldCBrZXJuZWwgbmFtZSBhbmQgaW5mb3JtYXRpb24iCiBtc2dzdHIgIuaXoOazleiOt+W+l+WGheaguOWQjeensOWSjOS/oeaBryIKIAotIzogZGlyLmM6MjI0NgorIzogZGlyLmM6MjYwMwogbXNnaWQgInVudHJhY2tlZCBjYWNoZSBpcyBkaXNhYmxlZCBvbiB0aGlzIHN5c3RlbSBvciBsb2NhdGlvbiIKIG1zZ3N0ciAi57yT5a2Y5pyq6Lef6Liq5paH5Lu25Zyo5pys57O757uf5oiW5L2N572u5Lit6KKr56aB55SoIgogCi0jOiBkaXIuYzozMDQ3CisjOiBkaXIuYzozNDA3CiAjLCBjLWZvcm1hdAogbXNnaWQgImluZGV4IGZpbGUgY29ycnVwdCBpbiByZXBvICVzIgogbXNnc3RyICLku5PlupMgJXMg5Lit55qE57Si5byV5paH5Lu25o2f5Z2PIgogCi0jOiBkaXIuYzozMDkyIGRpci5jOjMwOTcKKyM6IGRpci5jOjM0NTIgZGlyLmM6MzQ1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yaWVzIGZvciAlcyIKIG1zZ3N0ciAi5LiN6IO95Li6ICVzIOWIm+W7uuebruW9lSIKIAotIzogZGlyLmM6MzEyNgorIzogZGlyLmM6MzQ4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbWlncmF0ZSBnaXQgZGlyZWN0b3J5IGZyb20gJyVzJyB0byAnJXMnIgogbXNnc3RyICLkuI3og73ku44gJyVzJyDov4Hnp7sgZ2l0IOebruW9leWIsCAnJXMnIgpAQCAtMjM5OSwyOTcgKzM3NjksMjg5IEBACiBtc2dpZCAiRmlsdGVyaW5nIGNvbnRlbnQiCiBtc2dzdHIgIui/h+a7pOWGheWuuSIKIAotIzogZW50cnkuYzo0NjUKKyM6IGVudHJ5LmM6NDc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0IGZpbGUgJyVzJyIKIG1zZ3N0ciAi5LiN6IO95a+55paH5Lu2ICclcycg6LCD55SoIHN0YXQiCiAKLSM6IGVudmlyb25tZW50LmM6MTUwCisjOiBlbnZpcm9ubWVudC5jOjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgZ2l0IG5hbWVzcGFjZSBwYXRoIFwiJXNcIiIKIG1zZ3N0ciAi6ZSZ6K+v55qEIGdpdCDlkI3lrZfnqbrpl7Tot6/lvoQgXCIlc1wiIgogCi0jOiBlbnZpcm9ubWVudC5jOjMzMgorIzogZW52aXJvbm1lbnQuYzozMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHNldCBHSVRfRElSIHRvICclcyciCiBtc2dzdHIgIuS4jeiDveiuvue9riBHSVRfRElSIOS4uiAnJXMnIgogCi0jOiBleGVjLWNtZC5jOjM2MQorIzogZXhlYy1jbWQuYzozNjMKICMsIGMtZm9ybWF0CiBtc2dpZCAidG9vIG1hbnkgYXJncyB0byBydW4gJXMiCiBtc2dzdHIgIuaJp+ihjCAlcyDnmoTlj4LmlbDlpKrlpJoiCiAKLSM6IGZldGNoLW9iamVjdC5jOjE3Ci1tc2dpZCAiUmVtb3RlIHdpdGggbm8gVVJMIgotbXNnc3RyICLov5znqIvmnKrorr7nva4gVVJMIgotCi0jOiBmZXRjaC1wYWNrLmM6MTUxCisjOiBmZXRjaC1wYWNrLmM6MTUwCiBtc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIHNoYWxsb3cgbGlzdCIKIG1zZ3N0ciAiZ2l0IGZldGNoLXBhY2vvvJrlupTkuLogc2hhbGxvdyDliJfooagiCiAKLSM6IGZldGNoLXBhY2suYzoxNjMKKyM6IGZldGNoLXBhY2suYzoxNTMKK21zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgYSBmbHVzaCBwYWNrZXQgYWZ0ZXIgc2hhbGxvdyBsaXN0IgorbXNnc3RyICJnaXQgZmV0Y2gtcGFja++8muWcqOa1heWFi+mahuWIl+ihqOS5i+WQjuacn+acm+S4gOS4qiBmbHVzaCDljIUiCisKKyM6IGZldGNoLXBhY2suYzoxNjQKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290IGEgZmx1c2ggcGFja2V0IgogbXNnc3RyICJnaXQgZmV0Y2gtcGFja++8muacn+acmyBBQ0svTkFL77yM5Y205b6X5YiwIGZsdXNoIOWMhSIKIAotIzogZmV0Y2gtcGFjay5jOjE4MworIzogZmV0Y2gtcGFjay5jOjE4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290ICclcyciCiBtc2dzdHIgImdpdCBmZXRjaC1wYWNr77ya5bqU5Li6IEFDSy9OQUvvvIzljbTlvpfliLAgJyVzJyIKIAotIzogZmV0Y2gtcGFjay5jOjI1MworIzogZmV0Y2gtcGFjay5jOjE5NQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byByZW1vdGUiCittc2dzdHIgIuaXoOazleWGmeWIsOi/nOeoiyIKKworIzogZmV0Y2gtcGFjay5jOjI1NwogbXNnaWQgIi0tc3RhdGVsZXNzLXJwYyByZXF1aXJlcyBtdWx0aV9hY2tfZGV0YWlsZWQiCiBtc2dzdHIgIi0tc3RhdGVsZXNzLXJwYyDpnIDopoEgbXVsdGlfYWNrX2RldGFpbGVkIgogCi0jOiBmZXRjaC1wYWNrLmM6MzQ3IGZldGNoLXBhY2suYzoxMjc3CisjOiBmZXRjaC1wYWNrLmM6MzU2IGZldGNoLXBhY2suYzoxMzQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgc2hhbGxvdyBsaW5lOiAlcyIKIG1zZ3N0ciAi5peg5pWI55qEIHNoYWxsb3cg5L+h5oGv77yaJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNTMgZmV0Y2gtcGFjay5jOjEyODMKKyM6IGZldGNoLXBhY2suYzozNjIgZmV0Y2gtcGFjay5jOjEzNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB1bnNoYWxsb3cgbGluZTogJXMiCiBtc2dzdHIgIuaXoOaViOeahCB1bnNoYWxsb3cg5L+h5oGv77yaJXMiCiAKLSM6IGZldGNoLXBhY2suYzozNTUgZmV0Y2gtcGFjay5jOjEyODUKKyM6IGZldGNoLXBhY2suYzozNjQgZmV0Y2gtcGFjay5jOjEzNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IG5vdCBmb3VuZDogJXMiCiBtc2dzdHIgIuWvueixoeacquaJvuWIsO+8miVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzU4IGZldGNoLXBhY2suYzoxMjg4CisjOiBmZXRjaC1wYWNrLmM6MzY3IGZldGNoLXBhY2suYzoxMzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIGluIG9iamVjdDogJXMiCiBtc2dzdHIgIuWvueixoeS4reWHuumUme+8miVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzYwIGZldGNoLXBhY2suYzoxMjkwCisjOiBmZXRjaC1wYWNrLmM6MzY5IGZldGNoLXBhY2suYzoxMzUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHNoYWxsb3cgZm91bmQ6ICVzIgogbXNnc3RyICLmnKrlj5HnjrAgc2hhbGxvd++8miVzIgogCi0jOiBmZXRjaC1wYWNrLmM6MzYzIGZldGNoLXBhY2suYzoxMjkzCisjOiBmZXRjaC1wYWNrLmM6MzcyIGZldGNoLXBhY2suYzoxMzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIHNoYWxsb3cvdW5zaGFsbG93LCBnb3QgJXMiCiBtc2dzdHIgIuW6lOS4uiBzaGFsbG93L3Vuc2hhbGxvd++8jOWNtOW+l+WIsCAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjQwNAorIzogZmV0Y2gtcGFjay5jOjQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJnb3QgJXMgJWQgJXMiCiBtc2dzdHIgIuW+l+WIsCAlcyAlZCAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjQyMQorIzogZmV0Y2gtcGFjay5jOjQzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGNvbW1pdCAlcyIKIG1zZ3N0ciAi5peg5pWI5o+Q5LqkICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6NDUyCisjOiBmZXRjaC1wYWNrLmM6NDYyCiBtc2dpZCAiZ2l2aW5nIHVwIgogbXNnc3RyICLmlL7lvIMiCiAKLSM6IGZldGNoLXBhY2suYzo0NjQgcHJvZ3Jlc3MuYzoyMjkKKyM6IGZldGNoLXBhY2suYzo0NzUgcHJvZ3Jlc3MuYzozMjMKIG1zZ2lkICJkb25lIgogbXNnc3RyICLlrozmiJAiCiAKLSM6IGZldGNoLXBhY2suYzo0NzYKKyM6IGZldGNoLXBhY2suYzo0ODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ290ICVzICglZCkgJXMiCiBtc2dzdHIgIuW+l+WIsCAlcyAoJWQpICVzIgogCi0jOiBmZXRjaC1wYWNrLmM6NTIyCisjOiBmZXRjaC1wYWNrLmM6NTMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1hcmtpbmcgJXMgYXMgY29tcGxldGUiCiBtc2dzdHIgIuagh+iusCAlcyDkuLrlrozmiJAiCiAKLSM6IGZldGNoLXBhY2suYzo3NjQKKyM6IGZldGNoLXBhY2suYzo3NTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWxyZWFkeSBoYXZlICVzICglcykiCiBtc2dzdHIgIuW3sue7j+aciSAlc++8iCVz77yJIgogCi0jOiBmZXRjaC1wYWNrLmM6ODAzCisjOiBmZXRjaC1wYWNrLmM6ODE4CiBtc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiBtc2dzdHIgImZldGNoLXBhY2vvvJrml6Dms5XmtL7nlJ8gc2lkZWJhbmQg5aSa6Lev6L6T5Ye6IgogCi0jOiBmZXRjaC1wYWNrLmM6ODExCisjOiBmZXRjaC1wYWNrLmM6ODI2CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBwYWNrIGhlYWRlciIKIG1zZ3N0ciAi5Y2P6K6u6ZSZ6K+v77ya5Z2P55qE5YyF5aS0IgogCi0jOiBmZXRjaC1wYWNrLmM6ODc5CisjOiBmZXRjaC1wYWNrLmM6OTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImZldGNoLXBhY2s6IHVuYWJsZSB0byBmb3JrIG9mZiAlcyIKIG1zZ3N0ciAiZmV0Y2gtcGFja++8muaXoOazlea0vueUn+i/m+eoiyAlcyIKIAotIzogZmV0Y2gtcGFjay5jOjg5NQorIzogZmV0Y2gtcGFjay5jOjkxNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBmYWlsZWQiCiBtc2dzdHIgIiVzIOWksei0pSIKIAotIzogZmV0Y2gtcGFjay5jOjg5NworIzogZmV0Y2gtcGFjay5jOjkxOAogbXNnaWQgImVycm9yIGluIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCiBtc2dzdHIgInNpZGViYW5kIOWkmui3r+i+k+WHuuWHuumUmSIKIAotIzogZmV0Y2gtcGFjay5jOjkyNgotbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2xpZW50cyIKLW1zZ3N0ciAi5pyN5Yqh5Zmo5LiN5pSv5oyBIHNoYWxsbG93IOWuouaIt+erryIKLQotIzogZmV0Y2gtcGFjay5jOjkzMAotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBtdWx0aV9hY2tfZGV0YWlsZWQiCi1tc2dzdHIgIuacjeWKoeWZqOaUr+aMgSBtdWx0aV9hY2tfZGV0YWlsZWQiCi0KLSM6IGZldGNoLXBhY2suYzo5MzMKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgbm8tZG9uZSIKLW1zZ3N0ciAi5pyN5Yqh5Zmo5pSv5oyBIG5vLWRvbmUiCi0KLSM6IGZldGNoLXBhY2suYzo5MzkKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgbXVsdGlfYWNrIgotbXNnc3RyICLmnI3liqHlmajmlK/mjIEgbXVsdGlfYWNrIgotCi0jOiBmZXRjaC1wYWNrLmM6OTQzCi1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIHNpZGUtYmFuZC02NGsiCi1tc2dzdHIgIuacjeWKoeWZqOaUr+aMgSBzaWRlLWJhbmQtNjRrIgotCi0jOiBmZXRjaC1wYWNrLmM6OTQ3Ci1tc2dpZCAiU2VydmVyIHN1cHBvcnRzIHNpZGUtYmFuZCIKLW1zZ3N0ciAi5pyN5Yqh5Zmo5pSv5oyBIHNpZGUtYmFuZCIKLQotIzogZmV0Y2gtcGFjay5jOjk1MQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBhbGxvdy10aXAtc2hhMS1pbi13YW50IgotbXNnc3RyICLmnI3liqHlmajmlK/mjIEgYWxsb3ctdGlwLXNoYTEtaW4td2FudCIKLQotIzogZmV0Y2gtcGFjay5jOjk1NQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBhbGxvdy1yZWFjaGFibGUtc2hhMS1pbi13YW50IgotbXNnc3RyICLmnI3liqHlmajmlK/mjIEgYWxsb3ctcmVhY2hhYmxlLXNoYTEtaW4td2FudCIKLQogIzogZmV0Y2gtcGFjay5jOjk2NQotbXNnaWQgIlNlcnZlciBzdXBwb3J0cyBvZnMtZGVsdGEiCi1tc2dzdHIgIuacjeWKoeWZqOaUr+aMgSBvZnMtZGVsdGEiCi0KLSM6IGZldGNoLXBhY2suYzo5NzEgZmV0Y2gtcGFjay5jOjExNTgKLW1zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgZmlsdGVyIgotbXNnc3RyICLmnI3liqHlmajmlK/mjIEgZmlsdGVyIgotCi0jOiBmZXRjaC1wYWNrLmM6OTc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNlcnZlciB2ZXJzaW9uIGlzICUuKnMiCiBtc2dzdHIgIuacjeWKoeWZqOeJiOacrCAlLipzIgogCi0jOiBmZXRjaC1wYWNrLmM6OTg1CisjOiBmZXRjaC1wYWNrLmM6OTcwIGZldGNoLXBhY2suYzo5NzYgZmV0Y2gtcGFjay5jOjk3OSBmZXRjaC1wYWNrLmM6OTg1CisjOiBmZXRjaC1wYWNrLmM6OTg5IGZldGNoLXBhY2suYzo5OTMgZmV0Y2gtcGFjay5jOjk5NyBmZXRjaC1wYWNrLmM6MTAwMQorIzogZmV0Y2gtcGFjay5jOjEwMDUgZmV0Y2gtcGFjay5jOjEwMDkgZmV0Y2gtcGFjay5jOjEwMTMgZmV0Y2gtcGFjay5jOjEwMTcKKyM6IGZldGNoLXBhY2suYzoxMDIzIGZldGNoLXBhY2suYzoxMDI5IGZldGNoLXBhY2suYzoxMDM0IGZldGNoLXBhY2suYzoxMDM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlNlcnZlciBzdXBwb3J0cyAlcyIKK21zZ3N0ciAi5pyN5Yqh5Zmo5pSv5oyBICVzIgorCisjOiBmZXRjaC1wYWNrLmM6OTcyCittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjbGllbnRzIgorbXNnc3RyICLmnI3liqHlmajkuI3mlK/mjIEgc2hhbGxsb3cg5a6i5oi356uvIgorCisjOiBmZXRjaC1wYWNrLmM6MTAzMgogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tc2hhbGxvdy1zaW5jZSIKIG1zZ3N0ciAi5pyN5Yqh5Zmo5LiN5pSv5oyBIC0tc2hhbGxvdy1zaW5jZSIKIAotIzogZmV0Y2gtcGFjay5jOjk4OQorIzogZmV0Y2gtcGFjay5jOjEwMzcKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLXNoYWxsb3ctZXhjbHVkZSIKIG1zZ3N0ciAi5pyN5Yqh5Zmo5LiN5pSv5oyBIC0tc2hhbGxvdy1leGNsdWRlIgogCi0jOiBmZXRjaC1wYWNrLmM6OTkxCisjOiBmZXRjaC1wYWNrLmM6MTA0MQogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IC0tZGVlcGVuIgogbXNnc3RyICLmnI3liqHlmajkuI3mlK/mjIEgLS1kZWVwZW4iCiAKLSM6IGZldGNoLXBhY2suYzoxMDA4CisjOiBmZXRjaC1wYWNrLmM6MTA1OAogbXNnaWQgIm5vIGNvbW1vbiBjb21taXRzIgogbXNnc3RyICLmsqHmnInlhbHlkIznmoTmj5DkuqQiCiAKLSM6IGZldGNoLXBhY2suYzoxMDIwIGZldGNoLXBhY2suYzoxNDE4CisjOiBmZXRjaC1wYWNrLmM6MTA3MCBmZXRjaC1wYWNrLmM6MTUzNgogbXNnaWQgImdpdCBmZXRjaC1wYWNrOiBmZXRjaCBmYWlsZWQuIgogbXNnc3RyICJnaXQgZmV0Y2gtcGFja++8muiOt+WPluWksei0peOAgiIKIAotIzogZmV0Y2gtcGFjay5jOjExNTMKKyM6IGZldGNoLXBhY2suYzoxMjA5CiBtc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyByZXF1ZXN0cyIKIG1zZ3N0ciAi5pyN5Yqh5Zmo5LiN5pSv5oyBIHNoYWxsbG93IOivt+axgiIKIAotIzogZmV0Y2gtcGFjay5jOjExOTkKKyM6IGZldGNoLXBhY2suYzoxMjE2Cittc2dpZCAiU2VydmVyIHN1cHBvcnRzIGZpbHRlciIKK21zZ3N0ciAi5pyN5Yqh5Zmo5pSv5oyBIGZpbHRlciIKKworIzogZmV0Y2gtcGFjay5jOjEyMzkKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcmVxdWVzdCB0byByZW1vdGUiCittc2dzdHIgIuaXoOazleWwhuivt+axguWGmeWIsOi/nOeoiyIKKworIzogZmV0Y2gtcGFjay5jOjEyNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcmVhZGluZyBzZWN0aW9uIGhlYWRlciAnJXMnIgogbXNnc3RyICLor7vlj5boioLmoIfpopggJyVzJyDlh7rplJkiCiAKLSM6IGZldGNoLXBhY2suYzoxMjA1CisjOiBmZXRjaC1wYWNrLmM6MTI2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCAnJXMnLCByZWNlaXZlZCAnJXMnIgogbXNnc3RyICLpooTmnJ8gJyVzJ++8jOW+l+WIsCAnJXMnIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI0NAorIzogZmV0Y2gtcGFjay5jOjEzMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCBhY2tub3dsZWRnbWVudCBsaW5lOiAnJXMnIgogbXNnc3RyICLmhI/lpJbnmoTnoa7orqTooYzvvJonJXMnIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI0OQorIzogZmV0Y2gtcGFjay5jOjEzMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBhY2tzOiAlZCIKIG1zZ3N0ciAi5aSE55CGIGFjayDlh7rplJnvvJolZCIKIAotIzogZmV0Y2gtcGFjay5jOjEyNTkKKyM6IGZldGNoLXBhY2suYzoxMzE4CiBtc2dpZCAiZXhwZWN0ZWQgcGFja2ZpbGUgdG8gYmUgc2VudCBhZnRlciAncmVhZHknIgogbXNnc3RyICLpooTmnJ/lnKggJ3JlYWR5JyDkuYvlkI7lj5HpgIEgcGFja2ZpbGUiCiAKLSM6IGZldGNoLXBhY2suYzoxMjYxCisjOiBmZXRjaC1wYWNrLmM6MTMyMAogbXNnaWQgImV4cGVjdGVkIG5vIG90aGVyIHNlY3Rpb25zIHRvIGJlIHNlbnQgYWZ0ZXIgbm8gJ3JlYWR5JyIKIG1zZ3N0ciAi5Zyo5rKh5pyJICdyZWFkeScg5LiN5bqU6K+l5Y+R6YCB5YW25a6D5bCP6IqCIgogCi0jOiBmZXRjaC1wYWNrLmM6MTI5OAorIzogZmV0Y2gtcGFjay5jOjEzNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBzaGFsbG93IGluZm86ICVkIgogbXNnc3RyICLlpITnkIbmtYXlhYvpmobkv6Hmga/lh7rplJnvvJolZCIKIAotIzogZmV0Y2gtcGFjay5jOjEzMTQKKyM6IGZldGNoLXBhY2suYzoxNDA5CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIHdhbnRlZC1yZWYsIGdvdCAnJXMnIgogbXNnc3RyICLpooTmnJ8gd2FudGVkLXJlZu+8jOW+l+WIsCAnJXMnIgogCi0jOiBmZXRjaC1wYWNrLmM6MTMyNAorIzogZmV0Y2gtcGFjay5jOjE0MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5leHBlY3RlZCB3YW50ZWQtcmVmOiAnJXMnIgogbXNnc3RyICLmhI/lpJbnmoQgd2FudGVkLXJlZu+8miclcyciCiAKLSM6IGZldGNoLXBhY2suYzoxMzI4CisjOiBmZXRjaC1wYWNrLmM6MTQxOQogIywgYy1mb3JtYXQKIG1zZ2lkICJlcnJvciBwcm9jZXNzaW5nIHdhbnRlZCByZWZzOiAlZCIKIG1zZ3N0ciAi5aSE55CG6KaB6I635Y+W55qE5byV55So5Ye66ZSZ77yaJWQiCiAKLSM6IGZldGNoLXBhY2suYzoxNjQyCisjOiBmZXRjaC1wYWNrLmM6MTc2MgogbXNnaWQgIm5vIG1hdGNoaW5nIHJlbW90ZSBoZWFkIgogbXNnc3RyICLmsqHmnInljLnphY3nmoTov5znqIvliIbmlK8iCiAKLSM6IGZldGNoLXBhY2suYzoxNjYwIGJ1aWx0aW4vY2xvbmUuYzo2NjQKKyM6IGZldGNoLXBhY2suYzoxNzg1IGJ1aWx0aW4vY2xvbmUuYzo2ODkKIG1zZ2lkICJyZW1vdGUgZGlkIG5vdCBzZW5kIGFsbCBuZWNlc3Nhcnkgb2JqZWN0cyIKIG1zZ3N0ciAi6L+c56iL5rKh5pyJ5Y+R6YCB5omA5pyJ5b+F6ZyA55qE5a+56LGhIgogCi0jOiBmZXRjaC1wYWNrLmM6MTY4NgorIzogZmV0Y2gtcGFjay5jOjE4MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCByZW1vdGUgcmVmICVzIgogbXNnc3RyICLmsqHmnInov5nmoLfnmoTov5znqIvlvJXnlKggJXMiCiAKLSM6IGZldGNoLXBhY2suYzoxNjg5CisjOiBmZXRjaC1wYWNrLmM6MTgxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJTZXJ2ZXIgZG9lcyBub3QgYWxsb3cgcmVxdWVzdCBmb3IgdW5hZHZlcnRpc2VkIG9iamVjdCAlcyIKIG1zZ3N0ciAi5pyN5Yqh5Zmo5LiN5YWB6K646K+35rGC5pyq5YWs5byA55qE5a+56LGhICVzIgogCi0jOiBncGctaW50ZXJmYWNlLmM6MzE4CisjOiBncGctaW50ZXJmYWNlLmM6NDA4CiBtc2dpZCAiZ3BnIGZhaWxlZCB0byBzaWduIHRoZSBkYXRhIgotbXNnc3RyICJncGcg5peg5rOV5Li65pWw5o2u562+5ZCNIgorbXNnc3RyICJncGcg5pWw5o2u562+5ZCN5aSx6LSlIgogCi0jOiBncGctaW50ZXJmYWNlLmM6MzQ0CisjOiBncGctaW50ZXJmYWNlLmM6NDM0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZSIKIG1zZ3N0ciAi5LiN6IO95Yib5bu65Li05pe25paH5Lu2IgogCi0jOiBncGctaW50ZXJmYWNlLmM6MzQ3CisjOiBncGctaW50ZXJmYWNlLmM6NDM3CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB3cml0aW5nIGRldGFjaGVkIHNpZ25hdHVyZSB0byAnJXMnIgogbXNnc3RyICLml6Dms5XlsIbliIbnprvlvI/nrb7lkI3lhpnlhaUgJyVzJyIKIAotIzogZ3JhcGguYzo5NworIzogZ3JhcGguYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmUgaW52YWxpZCBjb2xvciAnJS4qcycgaW4gbG9nLmdyYXBoQ29sb3JzIgogbXNnc3RyICLlv73nlaUgbG9nLmdyYXBoQ29sb3JzIOS4reaXoOaViOeahOminOiJsiAnJS4qcyciCiAKLSM6IGdyZXAuYzoyMTEzCisjOiBncmVwLmM6NjY4Cittc2dpZCAiIgorImdpdmVuIHBhdHRlcm4gY29udGFpbnMgTlVMTCBieXRlICh2aWEgLWYgPGZpbGU+KS4gVGhpcyBpcyBvbmx5IHN1cHBvcnRlZCAiCisid2l0aCAtUCB1bmRlciBQQ1JFIHYyIgorbXNnc3RyICIiCisi57uZ5a6a55qE5qih5byP5YyF5ZCrIE5VTEwg5a2X56ym77yI6YCa6L+HIC1mIDzmlofku7Y+IOWPguaVsO+8ieOAguWPquaciSBQQ1JFIHYyIOS4i+eahCAtUCDmlK/mjIHmraQiCisi5Yqf6IO9IgorCisjOiBncmVwLmM6MjEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiB1bmFibGUgdG8gcmVhZCAlcyIKIG1zZ3N0ciAiJyVzJ++8muaXoOazleivu+WPliAlcyIKIAotIzogZ3JlcC5jOjIxMzAgc2V0dXAuYzoxNjQgYnVpbHRpbi9jbG9uZS5jOjQxMCBidWlsdGluL2RpZmYuYzo4MQotIzogYnVpbHRpbi9ybS5jOjEzNAorIzogZ3JlcC5jOjIxNDUgc2V0dXAuYzoxNjYgYnVpbHRpbi9jbG9uZS5jOjQxMSBidWlsdGluL2RpZmYuYzo4MgorIzogYnVpbHRpbi9ybS5jOjEzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJXMnIgogbXNnc3RyICLlr7kgJyVzJyDosIPnlKggc3RhdCDlpLHotKUiCiAKLSM6IGdyZXAuYzoyMTQxCisjOiBncmVwLmM6MjE1NgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiBzaG9ydCByZWFkIgogbXNnc3RyICInJXMn77ya6K+75Y+W5LiN5a6M5pW0IgpAQCAtMjczOSw0OCArNDEwMSw0OCBAQAogbXNnc3RyICLkvY7nuqflkb3ku6Qv6K+i6Zeu6ICFIgogCiAjOiBoZWxwLmM6MzcKLW1zZ2lkICJMb3ctbGV2ZWwgQ29tbWFuZHMgLyBTeW5jaGluZyBSZXBvc2l0b3JpZXMiCittc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gU3luY2luZyBSZXBvc2l0b3JpZXMiCiBtc2dzdHIgIuS9jue6p+WRveS7pC/lkIzmraXku5PlupMiCiAKICM6IGhlbHAuYzozOAogbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIEludGVybmFsIEhlbHBlcnMiCiBtc2dzdHIgIuS9jue6p+WRveS7pC/lhoXpg6jliqnmiYsiCiAKLSM6IGhlbHAuYzoyOTYKKyM6IGhlbHAuYzoyOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYXZhaWxhYmxlIGdpdCBjb21tYW5kcyBpbiAnJXMnIgogbXNnc3RyICLlnKggJyVzJyDkuIvlj6/nlKjnmoQgZ2l0IOWRveS7pCIKIAotIzogaGVscC5jOjMwMworIzogaGVscC5jOjMwNQogbXNnaWQgImdpdCBjb21tYW5kcyBhdmFpbGFibGUgZnJvbSBlbHNld2hlcmUgb24geW91ciAkUEFUSCIKIG1zZ3N0ciAi5ZyoICRQQVRIIOi3r+W+hOS4reeahOWFtuS7luWcsOaWueWPr+eUqOeahCBnaXQg5ZG95LukIgogCi0jOiBoZWxwLmM6MzEyCisjOiBoZWxwLmM6MzE0CiBtc2dpZCAiVGhlc2UgYXJlIGNvbW1vbiBHaXQgY29tbWFuZHMgdXNlZCBpbiB2YXJpb3VzIHNpdHVhdGlvbnM6IgogbXNnc3RyICLov5nkupvmmK/lkITnp43lnLrlkIjluLjop4HnmoQgR2l0IOWRveS7pO+8miIKIAotIzogaGVscC5jOjM2MSBnaXQuYzo5MAorIzogaGVscC5jOjM2MyBnaXQuYzo5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnN1cHBvcnRlZCBjb21tYW5kIGxpc3RpbmcgdHlwZSAnJXMnIgogbXNnc3RyICLkuI3mlK/mjIHnmoTlkb3ku6TliJfooajnsbvlnosgJyVzJyIKIAotIzogaGVscC5jOjQwOAorIzogaGVscC5jOjQwMwogbXNnaWQgIlRoZSBjb21tb24gR2l0IGd1aWRlcyBhcmU6IgogbXNnc3RyICLmnIDluLjnlKjnmoQgR2l0IOWQkeWvvOacie+8miIKIAotIzogaGVscC5jOjUxNworIzogaGVscC5jOjUxMgogbXNnaWQgIlNlZSAnZ2l0IGhlbHAgPGNvbW1hbmQ+JyB0byByZWFkIGFib3V0IGEgc3BlY2lmaWMgc3ViY29tbWFuZCIKIG1zZ3N0ciAi5omn6KGM44CAJ2dpdCBoZWxwIDxjb21tYW5kPicg5p2l5p+l55yL54m55a6a5a2Q5ZG95LukIgogCi0jOiBoZWxwLmM6NTIyCisjOiBoZWxwLmM6NTE3CiBtc2dpZCAiRXh0ZXJuYWwgY29tbWFuZHMiCiBtc2dzdHIgIuWklumDqOWRveS7pCIKIAotIzogaGVscC5jOjUzMAorIzogaGVscC5jOjUzMgogbXNnaWQgIkNvbW1hbmQgYWxpYXNlcyIKIG1zZ3N0ciAi5ZG95Luk5Yir5ZCNIgogCi0jOiBoZWxwLmM6NTk0CisjOiBoZWxwLmM6NTk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGFwcGVhcnMgdG8gYmUgYSBnaXQgY29tbWFuZCwgYnV0IHdlIHdlcmUgbm90XG4iCkBAIC0yNzg5LDMxICs0MTUxLDMxIEBACiAiJyVzJyDlg4/mmK/kuIDkuKogZ2l0IOWRveS7pO+8jOS9huWNtOaXoOazlei/kOihjOOAglxuIgogIuWPr+iDveaYryBnaXQtJXMg5Y+X5o2f77yfIgogCi0jOiBoZWxwLmM6NjUzCisjOiBoZWxwLmM6NjU1CiBtc2dpZCAiVWggb2guIFlvdXIgc3lzdGVtIHJlcG9ydHMgbm8gR2l0IGNvbW1hbmRzIGF0IGFsbC4iCiBtc2dzdHIgIuWUieWRgO+8jOaCqOeahOezu+e7n+S4reacquWPkeeOsCBHaXQg5ZG95Luk44CCIgogCi0jOiBoZWxwLmM6Njc1CisjOiBoZWxwLmM6Njc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIldBUk5JTkc6IFlvdSBjYWxsZWQgYSBHaXQgY29tbWFuZCBuYW1lZCAnJXMnLCB3aGljaCBkb2VzIG5vdCBleGlzdC4iCiBtc2dzdHIgIuitpuWRiu+8muaCqOi/kOihjOS6huS4gOS4quW5tuS4jeWtmOWcqOeahCBHaXQg5ZG95LukICclcyfjgIIiCiAKLSM6IGhlbHAuYzo2ODAKKyM6IGhlbHAuYzo2ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29udGludWluZyB1bmRlciB0aGUgYXNzdW1wdGlvbiB0aGF0IHlvdSBtZWFudCAnJXMnLiIKIG1zZ3N0ciAi5YGH5a6a5L2g5oOz6KaB55qE5pivICclcycg5bm257un57ut44CCIgogCi0jOiBoZWxwLmM6Njg1CisjOiBoZWxwLmM6Njg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvbnRpbnVpbmcgaW4gJTAuMWYgc2Vjb25kcywgYXNzdW1pbmcgdGhhdCB5b3UgbWVhbnQgJyVzJy4iCiBtc2dzdHIgIuWBh+WumuS9oOaDs+imgeeahOaYryAnJTIkcyfvvIzlnKggJTEkMC4xZiDnp5Lpkp/lkI7nu6fnu63jgIIiCiAKLSM6IGhlbHAuYzo2OTMKKyM6IGhlbHAuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0OiAnJXMnIGlzIG5vdCBhIGdpdCBjb21tYW5kLiBTZWUgJ2dpdCAtLWhlbHAnLiIKIG1zZ3N0ciAiZ2l077yaJyVzJyDkuI3mmK/kuIDkuKogZ2l0IOWRveS7pOOAguWPguingSAnZ2l0IC0taGVscCfjgIIiCiAKLSM6IGhlbHAuYzo2OTcKKyM6IGhlbHAuYzo2OTkKIG1zZ2lkICIiCiAiXG4iCiAiVGhlIG1vc3Qgc2ltaWxhciBjb21tYW5kIGlzIgpAQCAtMjgyNywxNiArNDE4OSwxNiBAQAogIlxuIgogIuacgOebuOS8vOeahOWRveS7pOaYryIKIAotIzogaGVscC5jOjcxMgorIzogaGVscC5jOjcxNAogbXNnaWQgImdpdCB2ZXJzaW9uIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgdmVyc2lvbiBbPOmAiemhuT5dIgogCi0jOiBoZWxwLmM6NzgwCisjOiBoZWxwLmM6NzgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAlcyAtICVzIgogbXNnc3RyICIlc++8miVzIC0gJXMiCiAKLSM6IGhlbHAuYzo3ODQKKyM6IGhlbHAuYzo3ODcKIG1zZ2lkICIiCiAiXG4iCiAiRGlkIHlvdSBtZWFuIHRoaXM/IgpAQCAtMjg1MCw3ICs0MjEyLDcgQEAKICJcbiIKICLmgqjmjIfnmoTmmK/ov5nlhbbkuK3nmoTmn5DkuIDkuKrkuYjvvJ8iCiAKLSM6IGlkZW50LmM6MzQ1CisjOiBpZGVudC5jOjM0OQogbXNnaWQgIiIKICJcbiIKICIqKiogUGxlYXNlIHRlbGwgbWUgd2hvIHlvdSBhcmUuXG4iCkBAIC0yODc1LDUwICs0MjM3LDg5IEBACiAi5p2l6K6+572u5oKo6LSm5Y+355qE57y655yB6Lqr5Lu95qCH6K+G44CCXG4iCiAi5aaC5p6c5LuF5Zyo5pys5LuT5bqT6K6+572u6Lqr5Lu95qCH6K+G77yM5YiZ55yB55WlIC0tZ2xvYmFsIOWPguaVsOOAglxuIgogCi0jOiBpZGVudC5jOjM2OQorIzogaWRlbnQuYzozNzkKIG1zZ2lkICJubyBlbWFpbCB3YXMgZ2l2ZW4gYW5kIGF1dG8tZGV0ZWN0aW9uIGlzIGRpc2FibGVkIgogbXNnc3RyICLmnKrmj5Dkvpvpgq7ku7blnLDlnYDkuJToh6rliqjmjqLmtYvooqvnpoHnlKgiCiAKLSM6IGlkZW50LmM6Mzc0CisjOiBpZGVudC5jOjM4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYXV0by1kZXRlY3QgZW1haWwgYWRkcmVzcyAoZ290ICclcycpIgogbXNnc3RyICLml6Dms5Xoh6rliqjmjqLmtYvpgq7ku7blnLDlnYDvvIjlvpfliLAgJyVzJ++8iSIKIAotIzogaWRlbnQuYzozODQKKyM6IGlkZW50LmM6NDAxCiBtc2dpZCAibm8gbmFtZSB3YXMgZ2l2ZW4gYW5kIGF1dG8tZGV0ZWN0aW9uIGlzIGRpc2FibGVkIgogbXNnc3RyICLmnKrmj5Dkvpvlp5PlkI3kuJToh6rliqjmjqLmtYvooqvnpoHnlKgiCiAKLSM6IGlkZW50LmM6MzkwCisjOiBpZGVudC5jOjQwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gYXV0by1kZXRlY3QgbmFtZSAoZ290ICclcycpIgogbXNnc3RyICLml6Dms5Xoh6rliqjmjqLmtYvlp5PlkI3vvIjlvpfliLAgJyVzJ++8iSIKIAotIzogaWRlbnQuYzozOTgKKyM6IGlkZW50LmM6NDE1CiAjLCBjLWZvcm1hdAogbXNnaWQgImVtcHR5IGlkZW50IG5hbWUgKGZvciA8JXM+KSBub3QgYWxsb3dlZCIKIG1zZ3N0ciAi5LiN5YWB6K6456m655qE5aeT5ZCN77yI5a+55LqOIDwlcz7vvIkiCiAKLSM6IGlkZW50LmM6NDA0CisjOiBpZGVudC5jOjQyMQogIywgYy1mb3JtYXQKIG1zZ2lkICJuYW1lIGNvbnNpc3RzIG9ubHkgb2YgZGlzYWxsb3dlZCBjaGFyYWN0ZXJzOiAlcyIKIG1zZ3N0ciAi5aeT5ZCN5Lit5LuF5YyF5ZCr56aB55So5a2X56ym77yaJXMiCiAKLSM6IGlkZW50LmM6NDE5IGJ1aWx0aW4vY29tbWl0LmM6NjA2CisjOiBpZGVudC5jOjQzNiBidWlsdGluL2NvbW1pdC5jOjYzNQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGRhdGUgZm9ybWF0OiAlcyIKIG1zZ3N0ciAi5peg5pWI55qE5pel5pyf5qC85byP77yaJXMiCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjM1Ci1tc2dpZCAibXVsdGlwbGUgZmlsdGVyLXNwZWNzIGNhbm5vdCBiZSBjb21iaW5lZCIKLW1zZ3N0ciAi5LiN6IO95re355So5aSa56eN6L+H5ruk6KeE5qC8IgorIzogbGlzdC1vYmplY3RzLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImVudHJ5ICclcycgaW4gdHJlZSAlcyBoYXMgdHJlZSBtb2RlLCBidXQgaXMgbm90IGEgdHJlZSIKK21zZ3N0ciAi5qCRICUyJHMg5Lit55qE5p2h55uuICclMSRzJyDlhbfmnInmoJHnmoTlsZ7mgKfvvIzkvYbkuI3mmK/kuIDkuKrmoJHlr7nosaEiCisKKyM6IGxpc3Qtb2JqZWN0cy5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJlbnRyeSAnJXMnIGluIHRyZWUgJXMgaGFzIGJsb2IgbW9kZSwgYnV0IGlzIG5vdCBhIGJsb2IiCittc2dzdHIgIuagkSAlMiRzIOS4reeahOadoeebriAnJTEkcycg5YW35pyJ5pWw5o2u5a+56LGh55qE5bGe5oCn77yM5L2G5LiN5piv5LiA5Liq5pWw5o2u5a+56LGhIgorCisjOiBsaXN0LW9iamVjdHMuYzozNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGxvYWQgcm9vdCB0cmVlIGZvciBjb21taXQgJXMiCittc2dzdHIgIuaXoOazleS4uuaPkOS6pCAlcyDliqDovb3moLnmoJEiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXIuYzo0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBzcGFyc2UgYmxvYiBpbiAnJXMnIgorbXNnc3RyICLkuI3og73orr/pl64gJyVzJyDkuK3nmoTnqIDnlo/mlbDmja7lr7nosaEiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXIuYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIHNwYXJzZSBmaWx0ZXIgZGF0YSBpbiAlcyIKK21zZ3N0ciAi5peg5rOV6Kej5p6QICVzIOS4reeahOeogOeWj+i/h+a7pOWZqOaVsOaNriIKIAogIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6NTgKLW1zZ2lkICJvbmx5ICd0cmVlOjAnIGlzIHN1cHBvcnRlZCIKLW1zZ3N0ciAi5Y+q5pSv5oyBICd0cmVlOjAnIgorbXNnaWQgImV4cGVjdGVkICd0cmVlOjxkZXB0aD4nIgorbXNnc3RyICLmnJ/mnJsgJ3RyZWU6POa3seW6pj4nIgogCi0jOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxMzcKLW1zZ2lkICJjYW5ub3QgY2hhbmdlIHBhcnRpYWwgY2xvbmUgcHJvbWlzb3IgcmVtb3RlIgotbXNnc3RyICLml6Dms5Xkv67mlLnpg6jliIblhYvpmobnmoQgcHJvbWlzb3Ig6L+c56iL5LuT5bqTIgorIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6NzMKK21zZ2lkICJzcGFyc2U6cGF0aCBmaWx0ZXJzIHN1cHBvcnQgaGFzIGJlZW4gZHJvcHBlZCIKK21zZ3N0ciAic3BhcnNlOnBhdGgg6L+H5ruk5Zmo5pSv5oyB5bey6KKr5Yig6ZmkIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGZpbHRlci1zcGVjICclcyciCittc2dzdHIgIuaXoOaViOeahOi/h+a7pOWZqOihqOi+vuW8jyAnJXMnIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVzdCBlc2NhcGUgY2hhciBpbiBzdWItZmlsdGVyLXNwZWM6ICclYyciCittc2dzdHIgIuW/hemhu+WvuSBzdWItZmlsdGVyLXNwZWMg5Lit55qE5a2X56ym6L+b6KGM6L2s5LmJ77yaJyVjJyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTQ0Cittc2dpZCAiZXhwZWN0ZWQgc29tZXRoaW5nIGFmdGVyIGNvbWJpbmU6IgorbXNnc3RyICLmnJ/mnJvlnKjnu4TlkIjlkI7mnInkuIDkupvkuJzopb/vvJoiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjIyNgorbXNnaWQgIm11bHRpcGxlIGZpbHRlci1zcGVjcyBjYW5ub3QgYmUgY29tYmluZWQiCittc2dzdHIgIuS4jeiDvea3t+eUqOWkmuenjei/h+a7pOinhOagvCIKIAogIzogbG9ja2ZpbGUuYzoxNTEKICMsIGMtZm9ybWF0CkBAIC0yOTQ3LDExMyArNDM0OCwxMTAgQEAKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCB0aGUgY2FjaGUiCiBtc2dzdHIgIuivu+WPlue8k+WtmOWksei0pSIKIAotIzogbWVyZ2UuYzoxMDcgcmVyZXJlLmM6NzIwIGJ1aWx0aW4vYW0uYzoxODk5IGJ1aWx0aW4vYW0uYzoxOTMzCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Mzg3IGJ1aWx0aW4vY2hlY2tvdXQuYzo3MDggYnVpbHRpbi9jbG9uZS5jOjc2NAorIzogbWVyZ2UuYzoxMDcgcmVyZXJlLmM6NzIwIGJ1aWx0aW4vYW0uYzoxODc5IGJ1aWx0aW4vYW0uYzoxOTEzCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTQxIGJ1aWx0aW4vY2hlY2tvdXQuYzo4MDAgYnVpbHRpbi9jbG9uZS5jOjgxMAorIzogYnVpbHRpbi9zdGFzaC5jOjI2NQogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAi5peg5rOV5YaZ5paw55qE57Si5byV5paH5Lu2IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NgogbXNnaWQgIihiYWQgY29tbWl0KVxuIgogbXNnc3RyICLvvIjlnY/mj5DkuqTvvIlcbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQ1CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkX2NhY2hlaW5mbyBmYWlsZWQgZm9yIHBhdGggJyVzJzsgbWVyZ2UgYWJvcnRpbmcuIgogbXNnc3RyICJhZGRfY2FjaGVpbmZvIOWvuei3r+W+hCAnJXMnIOaJp+ihjOWksei0pe+8jOWQiOW5tue7iOatouOAgiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzUzCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWRkX2NhY2hlaW5mbyBmYWlsZWQgdG8gcmVmcmVzaCBmb3IgcGF0aCAnJXMnOyBtZXJnZSBhYm9ydGluZy4iCiBtc2dzdHIgImFkZF9jYWNoZWluZm8g5peg5rOV5Yi35paw6Lev5b6EICclcyfvvIzlkIjlubbnu4jmraLjgIIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjQzNQotbXNnaWQgImVycm9yIGJ1aWxkaW5nIHRyZWVzIgotbXNnc3RyICLliJvlu7rmoJHlh7rplJkiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkwNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6ODc0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGF0aCAnJXMnJXMiCiBtc2dzdHIgIuWIm+W7uui3r+W+hCAnJXMnJXMg5aSx6LSlIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5MTcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmluZyAlcyB0byBtYWtlIHJvb20gZm9yIHN1YmRpcmVjdG9yeVxuIgogbXNnc3RyICLliKDpmaQgJXMg5Lul5L6/5Li65a2Q55uu5b2V55WZ5Ye656m66Ze0XG4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkzMSBtZXJnZS1yZWN1cnNpdmUuYzo5NTAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjg5OSBtZXJnZS1yZWN1cnNpdmUuYzo5MTgKIG1zZ2lkICI6IHBlcmhhcHMgYSBEL0YgY29uZmxpY3Q/IgogbXNnc3RyICLvvJrlj6/og73mmK/kuIDkuKrnm67lvZUv5paH5Lu25Yay56qB77yfIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzo5NDAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjkwOAogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICclcyciCiBtc2dzdHIgIuaLkue7neS4ouW8gyAnJXMnIOS4reeahOacqui3n+i4quaWh+S7tiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTgyIGJ1aWx0aW4vY2F0LWZpbGUuYzozOQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTQ5IGJ1aWx0aW4vY2F0LWZpbGUuYzo0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBvYmplY3QgJXMgJyVzJyIKIG1zZ3N0ciAi5LiN6IO96K+75Y+W5a+56LGhICVzICclcyciCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjk4NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImJsb2IgZXhwZWN0ZWQgZm9yICVzICclcyciCiBtc2dzdHIgIiVzICclcycg5bqU5Li65pWw5o2u5a+56LGhIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDA4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJzogJXMiCiBtc2dzdHIgIuaJk+W8gCAnJXMnIOWksei0pe+8miVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDE5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHN5bWxpbmsgJyVzJzogJXMiCiBtc2dzdHIgIuWIm+W7uuespuWPt+mTvuaOpSAnJXMnIOWksei0pe+8miVzIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMDI0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZG8gbm90IGtub3cgd2hhdCB0byBkbyB3aXRoICUwNm8gJXMgJyVzJyIKIG1zZ3N0ciAi5LiN55+l6YGT5aaC5L2V5aSE55CGICUwNm8gJXMgJyVzJyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxMgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTE5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChub3QgY2hlY2tlZCBvdXQpIgogbXNnc3RyICLml6Dms5XlkIjlubblrZDmqKHnu4QgJXMg77yI5rKh5pyJ5qOA5Ye677yJIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjE5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKGNvbW1pdHMgbm90IHByZXNlbnQpIgogbXNnc3RyICLml6Dms5XlkIjlubblrZDmqKHnu4QgJXPvvIjmj5DkuqTkuI3lrZjlnKjvvIkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMjYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAoY29tbWl0cyBkb24ndCBmb2xsb3cgbWVyZ2UtYmFzZSkiCiBtc2dzdHIgIuaXoOazleWQiOW5tuWtkOaooee7hCAlcyDvvIjmj5DkuqTmnKrot5/pmo/lkIjlubbln7rnur/vvIkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMzQgbWVyZ2UtcmVjdXJzaXZlLmM6MTI0NgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxMyBtZXJnZS1yZWN1cnNpdmUuYzoxMjI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMgdG8gdGhlIGZvbGxvd2luZyBjb21taXQ6IgogbXNnc3RyICLlrZDmqKHnu4QgJXMg5b+r6L+b5Yiw5aaC5LiL5o+Q5Lqk77yaIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjM3IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNDkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTYgbWVyZ2UtcmVjdXJzaXZlLmM6MTIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIgogbXNnc3RyICLlv6vov5vlrZDmqKHnu4QgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNzEKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobWVyZ2UgZm9sbG93aW5nIGNvbW1pdHMgbm90IGZvdW5kKSIKIG1zZ3N0ciAi5peg5rOV5ZCI5bm25a2Q5qih57uEICVzIO+8iOayoeWPkeeOsOWQiOW5tui3n+maj+eahOaPkOS6pO+8iSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChub3QgZmFzdC1mb3J3YXJkKSIKIG1zZ3N0ciAi5peg5rOV5ZCI5bm25a2Q5qih57uEICVz77yI6Z2e5b+r6L+b77yJIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjc2CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU2CiBtc2dpZCAiRm91bmQgYSBwb3NzaWJsZSBtZXJnZSByZXNvbHV0aW9uIGZvciB0aGUgc3VibW9kdWxlOlxuIgogbXNnc3RyICLmib7liLDlrZDmqKHnu4TnmoTkuIDkuKrlj6/og73nmoTlkIjlubbmlrnmoYjvvJpcbiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI3OQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSWYgdGhpcyBpcyBjb3JyZWN0IHNpbXBseSBhZGQgaXQgdG8gdGhlIGluZGV4IGZvciBleGFtcGxlXG4iCkBAIC0zMDY5LDMxICs0NDY3LDMxIEBACiAiXG4iCiAi5Lul5o6l5Y+X5q2k5bu66K6u44CCXG4iCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyODgKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobXVsdGlwbGUgbWVyZ2VzIGZvdW5kKSIKIG1zZ3N0ciAi5peg5rOV5ZCI5bm25a2Q5qih57uEICVzIO+8iOWPkeeOsOWkmuS4quWQiOW5tu+8iSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM1OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM0MQogbXNnaWQgIkZhaWxlZCB0byBleGVjdXRlIGludGVybmFsIG1lcmdlIgogbXNnc3RyICLml6Dms5XmiafooYzlhoXpg6jlkIjlubYiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNjMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGFkZCAlcyB0byBkYXRhYmFzZSIKIG1zZ3N0ciAi5LiN6IO95re75YqgICVzIOiHs+WvueixoeW6kyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM5NQorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvLW1lcmdpbmcgJXMiCiBtc2dzdHIgIuiHquWKqOWQiOW5tiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQxNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJFcnJvcjogUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlczsgd3JpdGluZyB0byAlcyBpbnN0ZWFkLiIKIG1zZ3N0ciAi6ZSZ6K+v77ya5ouS57ud5Lii5aSx5pyq6Lef6Liq5paH5Lu2ICclcyfvvIzogIzmmK/lhpnlhaUgJXPjgIIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0ODMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0ICIKQEAgLTMxMDIsNyArNDUwMCw3IEBACiAi5Yay56qB77yIJTEkcy/liKDpmaTvvInvvJolMiRzIOWcqCAlMyRzIOS4reiiq+WIoOmZpO+8jOWcqCAlNSRzIOS4reiiqyAlNCRz44CCJTckcyDnmoQgJTYkcyDniYgiCiAi5pys6KKr5L+d55WZ44CCIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDg4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgdG8gJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgIgpAQCAtMzExMSw3ICs0NTA5LDcgQEAKICLlhrLnqoHvvIglMSRzL+WIoOmZpO+8ie+8miUyJHMg5ZyoICUzJHMg5Lit6KKr5Yig6Zmk77yM5ZyoICU2JHMg5Lit55qEICU1JHMg6KKrICU0JHPjgIIlOCRzIOeahCAiCiAiJTckcyDniYjmnKzooqvkv53nlZnjgIIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0OTUKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0ICIKQEAgLTMxMjAsNyArNDUxOCw3IEBACiAi5Yay56qB77yIJTEkcy/liKDpmaTvvInvvJolMiRzIOWcqCAlMyRzIOS4reiiq+WIoOmZpO+8jOWcqCAlNSRzIOS4reiiqyAlNCRz44CCJTckcyDnmoQgJTYkcyDniYgiCiAi5pys5L+d55WZ5ZyoICU4JHMg5Lit44CCIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTAwCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgdG8gJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgIgpAQCAtMzEyOSwzMSArNDUyNyw0MCBAQAogIuWGsueqge+8iCUxJHMv5Yig6Zmk77yJ77yaJTIkcyDlnKggJTMkcyDkuK3ooqvliKDpmaTvvIzlnKggJTYkcyDkuK3nmoQgJTUkcyDooqsgJTQkc+OAgiU4JHMg55qEICIKICIlNyRzIOeJiOacrOS/neeVmeWcqCAlOSRzIOS4reOAgiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUzNAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUyNgogbXNnaWQgInJlbmFtZSIKIG1zZ3N0ciAi6YeN5ZG95ZCNIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTM0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTI2CiBtc2dpZCAicmVuYW1lZCIKIG1zZ3N0ciAi6YeN5ZG95ZCNIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTg4IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MzcgbWVyZ2UtcmVjdXJzaXZlLmM6MjM2OQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzEyNAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTU3NyBtZXJnZS1yZWN1cnNpdmUuYzoyNDcyIG1lcmdlLXJlY3Vyc2l2ZS5jOjMxMTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSBkaXJ0eSBmaWxlIGF0ICVzIgogbXNnc3RyICLmi5Lnu53kuKLlpLHohI/mlofku7YgJyVzJyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTYwMgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTU4NworIywgYy1mb3JtYXQKK21zZ2lkICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzLCBldmVuIHRob3VnaCBpdCdzIGluIHRoZSB3YXkuIgorbXNnc3RyICLmi5Lnu53lnKggJyVzJyDlpITlpLHljrvmnKrot5/ouKrmlofku7bvvIzljbPkvb/lroPlrZjlnKjkuo7ph43lkb3lkI3kuK3jgIIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9hZGQpOiBSZW5hbWUgJXMtPiVzIGluICVzLiAgQWRkZWQgJXMgaW4gJXMiCittc2dzdHIgIuWGsueqge+8iOmHjeWRveWQjS/mt7vliqDvvInvvJrlnKggJTMkcyDkuK3ph43lkb3lkI0gJTEkcy0+JTIkc+OAguWcqCAlNSRzIOS4rea3u+WKoCAlNCRzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGlzIGEgZGlyZWN0b3J5IGluICVzIGFkZGluZyBhcyAlcyBpbnN0ZWFkIgogbXNnc3RyICIlcyDmmK8gJXMg5Lit55qE5LiA5Liq55uu5b2V6ICM5LulICVzIOS4uuWQjeiiq+a3u+WKoCIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTYwNworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTY4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzOyBhZGRpbmcgYXMgJXMgaW5zdGVhZCIKIG1zZ3N0ciAi5ouS57ud5Lii5aSx5pyq6Lef6Liq5paH5Lu2ICclcyfvvIzogIzmmK/mt7vliqDkuLogJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE2MzMKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIFwiJXNcIi0+XCIlc1wiIGluIGJyYW5jaCBcIiVzXCIgcmVuYW1lIFwiJXMiCkBAIC0zMTYyLDI4ICs0NTY5LDE4IEBACiAi5Yay56qB77yI6YeN5ZG95ZCNL+mHjeWRveWQje+8ie+8muWcqOWIhuaUryBcIiUzJHNcIiDkuK3ph43lkb3lkI0gXCIlMSRzXCItPlwiJTIkc1wi77yM5Zyo5YiG5pSvICIKICJcIiU2JHNcIiDkuK3ph43lkb3lkI0gXCIlNCRzXCItPlwiJTUkc1wiJTckcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTYzOAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTcxMwogbXNnaWQgIiAobGVmdCB1bnJlc29sdmVkKSIKIG1zZ3N0ciAi77yI55WZ5LiL5pyq6Kej5Yaz77yJIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjk5CisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNzkzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lICVzLT4lcyBpbiAlcy4gUmVuYW1lICVzLT4lcyBpbiAlcyIKIG1zZ3N0ciAiIgogIuWGsueqge+8iOmHjeWRveWQjS/ph43lkb3lkI3vvInvvJrlnKggJTMkcyDkuK3ph43lkb3lkI0gJTEkcy0+JTIkc++8jOWcqCAlNiRzIOS4remHjeWRveWQjSAlNCRzLT4iCiAiJTUkcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTczNAotIywgYy1mb3JtYXQKLW1zZ2lkICJSZW5hbWluZyAlcyB0byAlcyBhbmQgJXMgdG8gJXMgaW5zdGVhZCIKLW1zZ3N0ciAi5Luj5LmL5Lul6YeN5ZG95ZCNICVzIOiHsyAlc++8jOS7peWPiiAlcyDoh7MgJXMiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3NDYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlcywgZXZlbiB0aG91Z2ggaXQncyBpbiB0aGUgd2F5LiIKLW1zZ3N0ciAi5ouS57ud5ZyoICclcycg5aSE5aSx5Y675pyq6Lef6Liq5paH5Lu277yM5Y2z5L2/5a6D5a2Y5Zyo5LqO6YeN5ZG95ZCN5Lit44CCIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoxOTUyCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDU2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDT05GTElDVCAoZGlyZWN0b3J5IHJlbmFtZSBzcGxpdCk6IFVuY2xlYXIgd2hlcmUgdG8gcGxhY2UgJXMgYmVjYXVzZSAiCkBAIC0zMTkzLDcgKzQ1OTAsNyBAQAogIuWGsueqge+8iOWIhuWJsueahOebruW9lemHjeWRveWQje+8ie+8muS4jea4healmiAlcyDlupTor6XmlL7lnKjlk6rph4zvvIzlm6DkuLrnm67lvZUgJXMg6KKr6YeN5ZG95ZCN5Yiw5aSa5LiqIgogIuWFtuWug+ebruW9le+8jOayoeacieebruW9leWMheWQq+Wkp+mDqOWIhuaWh+S7tuOAgiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTk4NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjA4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKGltcGxpY2l0IGRpciByZW5hbWUpOiBFeGlzdGluZyBmaWxlL2RpciBhdCAlcyBpbiB0aGUgd2F5IG9mICIKQEAgLTMyMDIsNyArNDU5OSw3IEBACiAi5Yay56qB77yI6ZqQ5byP55uu5b2V6YeN5ZG95ZCN77yJ77ya5aSE5LqO6ZqQ5byP55uu5b2V6YeN5ZG95ZCN55qE546w5a2Y5paH5Lu2L+ebruW9lSAlc++8jOWwhuS7peS4i+i3r+W+hOaUviIKICLlnKjvvJolc+OAgiIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTk5NAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MjA5OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ09ORkxJQ1QgKGltcGxpY2l0IGRpciByZW5hbWUpOiBDYW5ub3QgbWFwIG1vcmUgdGhhbiBvbmUgcGF0aCB0byAlczsgIgpAQCAtMzIxMSw3ICs0NjA4LDcgQEAKICLlhrLnqoHvvIjpmpDlvI/nm67lvZXph43lkb3lkI3vvInvvJrml6Dms5XmmKDlsITkuIDkuKrku6XkuIrot6/lvoTliLAgJXPvvIzpmpDlvI/nm67lvZXph43lkb3lkI3lsJ3or5XlsIbov5nkupvot68iCiAi5b6E5pS+572u5LqO5q2k77yaJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwODYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIxOTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIGRpcmVjdG9yeSAlcy0+JXMgaW4gJXMuIFJlbmFtZSBkaXJlY3RvcnkgJXMtIgpAQCAtMzIyMCw5MiArNDYxNywxNDYgQEAKICLlhrLnqoHvvIjph43lkb3lkI0v6YeN5ZG95ZCN77yJ77ya5ZyoICUzJHMg5Lit6YeN5ZG95ZCN55uu5b2VICUxJHMtPiUyJHPvvIzlnKggJTYkcyDkuK3ph43lkb3lkI3nm67lvZUgIgogIiU0JHMtPiU1JHMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIzMzEKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI0MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIldBUk5JTkc6IEF2b2lkaW5nIGFwcGx5aW5nICVzIC0+ICVzIHJlbmFtZSB0byAlcywgYmVjYXVzZSAlcyBpdHNlbGYgd2FzICIKICJyZW5hbWVkLiIKIG1zZ3N0ciAi6K2m5ZGK77ya6YG/5YWN5bqU55SoICVzIC0+ICVzIOeahOmHjeWRveWQjeWIsCAlc++8jOWboOS4uiAlcyDmnKzouqvlt7Looqvph43lkb3lkI3jgIIiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI3MzcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ09ORkxJQ1QgKHJlbmFtZS9hZGQpOiBSZW5hbWUgJXMtPiVzIGluICVzLiAlcyBhZGRlZCBpbiAlcyIKLW1zZ3N0ciAi5Yay56qB77yI6YeN5ZG95ZCNL+a3u+WKoO+8ie+8muWcqCAlMyRzIOS4remHjeWRveWQjSAlMSRzLT4lMiRz44CC5ZyoICU1JHMg5Lit5re75YqgICU0JHMiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI3NjMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQWRkaW5nIG1lcmdlZCAlcyIKLW1zZ3N0ciAi5re75Yqg5ZCI5bm25ZCO55qEICVzIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzoyNzcwIG1lcmdlLXJlY3Vyc2l2ZS5jOjMxMjcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQWRkaW5nIGFzICVzIGluc3RlYWQiCi1tc2dzdHIgIuiAjOaYr+S7pSAlcyDkuLrlkI3mt7vliqAiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5MzQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5NjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgb2JqZWN0ICVzIgogbXNnc3RyICLkuI3og73or7vlj5blr7nosaEgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5MzcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGlzIG5vdCBhIGJsb2IiCiBtc2dzdHIgIuWvueixoSAlcyDkuI3mmK/kuIDkuKrmlbDmja7lr7nosaEiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMDYKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjgKIG1zZ2lkICJtb2RpZnkiCiBtc2dzdHIgIuS/ruaUuSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAwNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAyOAogbXNnaWQgIm1vZGlmaWVkIgogbXNnc3RyICLkv67mlLkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMTcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDAKIG1zZ2lkICJjb250ZW50IgogbXNnc3RyICLlhoXlrrkiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDQKIG1zZ2lkICJhZGQvYWRkIgogbXNnc3RyICLmt7vliqAv5re75YqgIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDcxCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDY3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwZWQgJXMgKG1lcmdlZCBzYW1lIGFzIGV4aXN0aW5nKSIKIG1zZ3N0ciAi55Wl6L+HICVz77yI5bey57uP5YGa6L+H55u45ZCM5ZCI5bm277yJIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkzIGdpdC1zdWJtb2R1bGUuc2g6ODU4CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDg5IGdpdC1zdWJtb2R1bGUuc2g6MTAwMwogbXNnaWQgInN1Ym1vZHVsZSIKIG1zZ3N0ciAi5a2Q5qih57uEIgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMDk0CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUICglcyk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgogbXNnc3RyICLlhrLnqoHvvIglc++8ie+8muWQiOW5tuWGsueqgeS6jiAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIxNgorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzEyMAorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgYXMgJXMgaW5zdGVhZCIKK21zZ3N0ciAi6ICM5piv5LulICVzIOS4uuWQjea3u+WKoCIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGF0aCB1cGRhdGVkOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCBpbiAlczsgIgorIm1vdmluZyBpdCB0byAlcy4iCittc2dzdHIgIiIKKyLot6/lvoTlt7Lmm7TmlrDvvJolcyDmt7vliqDliLAgJXPvvIzkvY3kuo7kuIDkuKrooqvph43lkb3lkI3liLAgJXMg55qE55uu5b2V5Lit77yM5bCG5YW256e75Yqo5YiwICVz44CCIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoZmlsZSBsb2NhdGlvbik6ICVzIGFkZGVkIGluICVzIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkICIKKyJpbiAlcywgc3VnZ2VzdGluZyBpdCBzaG91bGQgcGVyaGFwcyBiZSBtb3ZlZCB0byAlcy4iCittc2dzdHIgIiIKKyLlhrLnqoHvvIjmlofku7bkvY3nva7vvInvvJolcyDmt7vliqDliLAgJXPvvIzkvY3kuo7kuIDkuKrooqvph43lkb3lkI3kuLogJXMg55qE55uu5b2V5Lit77yM5bu66K6u5bCG5YW256e75YqoIgorIuWIsCAlc+OAgiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIxMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGF0aCB1cGRhdGVkOiAlcyByZW5hbWVkIHRvICVzIGluICVzLCBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCBpbiAiCisiJXM7IG1vdmluZyBpdCB0byAlcy4iCittc2dzdHIgIiIKKyLot6/lvoTlt7Lmm7TmlrDvvJolMSRzIOmHjeWRveWQjeS4uiAlMyRzIOS4reeahCAlMiRz77yM6ICM6K+l55uu5b2V6KKr6YeN5ZG95ZCN5YiwICU0JHMg5Lit77yM5bCG5YW256e7IgorIuWKqOWIsCAlNSRz44CCIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoZmlsZSBsb2NhdGlvbik6ICVzIHJlbmFtZWQgdG8gJXMgaW4gJXMsIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0ICIKKyJ3YXMgcmVuYW1lZCBpbiAlcywgc3VnZ2VzdGluZyBpdCBzaG91bGQgcGVyaGFwcyBiZSBtb3ZlZCB0byAlcy4iCittc2dzdHIgIiIKKyLlhrLnqoHvvIjmlofku7bkvY3nva7vvInvvJolMSRzIOmHjeWRveWQjeS4uiAlMyRzIOS4reeahCAlMiRz77yM6ICM6K+l55uu5b2V6KKr6YeN5ZG95ZCN5YiwICU0JHMg5Lit77yMIgorIuW7uuiuruWwhuWFtuenu+WKqOWIsCAlNSRz44CCIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzIgogbXNnc3RyICLliKDpmaQgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNDIKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNTAKIG1zZ2lkICJmaWxlL2RpcmVjdG9yeSIKIG1zZ3N0ciAi5paH5Lu2L+ebruW9lSIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzI0OAorIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM1NQogbXNnaWQgImRpcmVjdG9yeS9maWxlIgogbXNnc3RyICLnm67lvZUv5paH5Lu2IgogCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozMjU1CisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzYyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNPTkZMSUNUICglcyk6IFRoZXJlIGlzIGEgZGlyZWN0b3J5IHdpdGggbmFtZSAlcyBpbiAlcy4gQWRkaW5nICVzIGFzICVzIgogbXNnc3RyICLlhrLnqoHvvIglMSRz77yJ77ya5ZyoICUzJHMg5Lit5pyJ5LiA5Liq5ZCN5Li6ICUyJHMg55qE55uu5b2V44CC5LulICU1JHMg5Li65ZCN5re75YqgICU0JHMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMyNjQKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWRkaW5nICVzIgogbXNnc3RyICLmt7vliqAgJXMiCiAKLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzMDAKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKGFkZC9hZGQpOiBNZXJnZSBjb25mbGljdCBpbiAlcyIKK21zZ3N0ciAi5Yay56qB77yIYWRkL2FkZO+8ie+8muWQiOW5tuWGsueqgeS6jiAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQyNAorbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZSEiCittc2dzdHIgIuW3sue7j+aYr+acgOaWsOeahO+8gSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQzMworIywgYy1mb3JtYXQKK21zZ2lkICJtZXJnaW5nIG9mIHRyZWVzICVzIGFuZCAlcyBmYWlsZWQiCittc2dzdHIgIuaXoOazleWQiOW5tuagkSAlcyDlkowgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1MzcKK21zZ2lkICJNZXJnaW5nOiIKK21zZ3N0ciAi5ZCI5bm277yaIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNTUwCisjLCBjLWZvcm1hdAorbXNnaWQgImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcjoiCittc2dpZF9wbHVyYWwgImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcnM6IgorbXNnc3RyWzBdICLlj5HnjrAgJXUg5Liq5YWx5ZCM56WW5YWI77yaIgorbXNnc3RyWzFdICLlj5HnjrAgJXUg5Liq5YWx5ZCM56WW5YWI77yaIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjAwCittc2dpZCAibWVyZ2UgcmV0dXJuZWQgbm8gY29tbWl0IgorbXNnc3RyICLlkIjlubbmnKrov5Tlm57mj5DkuqQiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM2NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtMzMxNCwxNjcgKzQ3NjUsMTg0IEBACiAi5oKo5a+55LiL5YiX5paH5Lu255qE5pys5Zyw5L+u5pS55bCG6KKr5ZCI5bm25pON5L2c6KaG55uW77yaXG4iCiAiICAlcyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMxMQotbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZSEiCi1tc2dzdHIgIuW3sue7j+aYr+acgOaWsOeahO+8gSIKLQotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzMyMAotIywgYy1mb3JtYXQKLW1zZ2lkICJtZXJnaW5nIG9mIHRyZWVzICVzIGFuZCAlcyBmYWlsZWQiCi1tc2dzdHIgIuaXoOazleWQiOW5tuagkSAlcyDlkowgJXMiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM0MTkKLW1zZ2lkICJNZXJnaW5nOiIKLW1zZ3N0ciAi5ZCI5bm277yaIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDMyCi0jLCBjLWZvcm1hdAotbXNnaWQgImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcjoiCi1tc2dpZF9wbHVyYWwgImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcnM6IgotbXNnc3RyWzBdICLlj5HnjrAgJXUg5Liq5YWx5ZCM56WW5YWI77yaIgotbXNnc3RyWzFdICLlj5HnjrAgJXUg5Liq5YWx5ZCM56WW5YWI77yaIgotCi0jOiBtZXJnZS1yZWN1cnNpdmUuYzozNDcxCi1tc2dpZCAibWVyZ2UgcmV0dXJuZWQgbm8gY29tbWl0IgotbXNnc3RyICLlkIjlubbmnKrov5Tlm57mj5DkuqQiCi0KLSM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1MzcKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHBhcnNlIG9iamVjdCAnJXMnIgogbXNnc3RyICLkuI3og73op6PmnpDlr7nosaEgJyVzJyIKIAotIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzU1MyBidWlsdGluL21lcmdlLmM6NjkxIGJ1aWx0aW4vbWVyZ2UuYzo4NDkKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3NzQgYnVpbHRpbi9tZXJnZS5jOjY5NyBidWlsdGluL21lcmdlLmM6ODc3CiBtc2dpZCAiVW5hYmxlIHRvIHdyaXRlIGluZGV4LiIKIG1zZ3N0ciAi5LiN6IO95YaZ5YWl57Si5byV44CCIgogCi0jOiBtaWR4LmM6NjUKKyM6IG1pZHguYzo2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IGZpbGUgJXMgaXMgdG9vIHNtYWxsIgogbXNnc3RyICLlpJrljIXntKLlvJXmlofku7YgJXMg5aSq5bCPIgogCi0jOiBtaWR4LmM6ODEKKyM6IG1pZHguYzo4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHNpZ25hdHVyZSAweCUwOHggZG9lcyBub3QgbWF0Y2ggc2lnbmF0dXJlIDB4JTA4eCIKIG1zZ3N0ciAi5aSa5YyF57Si5byV562+5ZCNIDB4JTA4eCDlkoznrb7lkI0gMHglMDh4IOS4jeWMuemFjSIKIAotIzogbWlkeC5jOjg2CisjOiBtaWR4LmM6ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCB2ZXJzaW9uICVkIG5vdCByZWNvZ25pemVkIgogbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4IOeJiOacrCAlZCDkuI3og73ooqvor4bliKsiCiAKLSM6IG1pZHguYzo5MQorIzogbWlkeC5jOjk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImhhc2ggdmVyc2lvbiAldSBkb2VzIG5vdCBtYXRjaCIKIG1zZ3N0ciAi5pWj5YiX54mI5pysICV1IOS4jeWMuemFjSIKIAotIzogbWlkeC5jOjEwNQorIzogbWlkeC5jOjEwOAogbXNnaWQgImludmFsaWQgY2h1bmsgb2Zmc2V0ICh0b28gbGFyZ2UpIgogbXNnc3RyICLml6DmlYjnmoTlnZflgY/np7vvvIjlpKrlpKfvvIkiCiAKLSM6IG1pZHguYzoxMjkKKyM6IG1pZHguYzoxMzIKIG1zZ2lkICJ0ZXJtaW5hdGluZyBtdWx0aS1wYWNrLWluZGV4IGNodW5rIGlkIGFwcGVhcnMgZWFybGllciB0aGFuIGV4cGVjdGVkIgogbXNnc3RyICLnu4jmraLlpJrljIXntKLlvJXlnZcgaWQg5Ye6546w5pe26Ze05pep5LqO6aKE5pyfIgogCi0jOiBtaWR4LmM6MTQyCisjOiBtaWR4LmM6MTQ1CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIHBhY2stbmFtZSBjaHVuayIKIG1zZ3N0ciAi5aSa5YyF57Si5byV57y65bCR5b+F6ZyA55qE5YyF5ZCN5Z2XIgogCi0jOiBtaWR4LmM6MTQ0CisjOiBtaWR4LmM6MTQ3CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIE9JRCBmYW5vdXQgY2h1bmsiCi1tc2dzdHIgIuWkmuWMhee0ouW8lee8uuWwkeW/hemcgOeahCBPSUQg5omH5Ye65Z2XIgorbXNnc3RyICLlpJrljIXntKLlvJXnvLrlsJHlv4XpnIDnmoTlr7nosaEgSUQg5omH5Ye65Z2XIgogCi0jOiBtaWR4LmM6MTQ2CisjOiBtaWR4LmM6MTQ5CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIE9JRCBsb29rdXAgY2h1bmsiCi1tc2dzdHIgIuWkmuWMhee0ouW8lee8uuWwkeW/hemcgOeahCBPSUQg5p+l6K+i5Z2XIgorbXNnc3RyICLlpJrljIXntKLlvJXnvLrlsJHlv4XpnIDnmoTlr7nosaEgSUQg5p+l6K+i5Z2XIgogCi0jOiBtaWR4LmM6MTQ4CisjOiBtaWR4LmM6MTUxCiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIG9iamVjdCBvZmZzZXRzIGNodW5rIgogbXNnc3RyICLlpJrljIXntKLlvJXnvLrlsJHlv4XpnIDnmoTlr7nosaHlgY/np7vlnZciCiAKLSM6IG1pZHguYzoxNjIKKyM6IG1pZHguYzoxNjUKICMsIGMtZm9ybWF0CiBtc2dpZCAibXVsdGktcGFjay1pbmRleCBwYWNrIG5hbWVzIG91dCBvZiBvcmRlcjogJyVzJyBiZWZvcmUgJyVzJyIKIG1zZ3N0ciAi5aSa5YyF57Si5byV5YyF5ZCN5peg5bqP77yaJyVzJyDlnKggJyVzJyDkuYvliY0iCiAKLSM6IG1pZHguYzoyMDUKKyM6IG1pZHguYzoyMTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHBhY2staW50LWlkOiAldSAoJXUgdG90YWwgcGFja3MpIgogbXNnc3RyICLplJnnmoQgcGFjay1pbnQtaWTvvJolde+8iOWFseaciSAldSDkuKrljIXvvIkiCiAKLSM6IG1pZHguYzoyNDYKKyM6IG1pZHguYzoyNjAKIG1zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHN0b3JlcyBhIDY0LWJpdCBvZmZzZXQsIGJ1dCBvZmZfdCBpcyB0b28gc21hbGwiCiBtc2dzdHIgIuWkmuWMhee0ouW8leWtmOWCqOS4gOS4qjY05L2N5YGP56e777yM5L2G5pivIG9mZl90IOWkquWwjyIKIAotIzogbWlkeC5jOjI3MQorIzogbWlkeC5jOjI4OAogbXNnaWQgImVycm9yIHByZXBhcmluZyBwYWNrZmlsZSBmcm9tIG11bHRpLXBhY2staW5kZXgiCiBtc2dzdHIgIuS7juWkmuWMhee0ouW8leWHhuWkhyBwYWNrZmlsZSDlh7rplJkiCiAKLSM6IG1pZHguYzo0MDcKKyM6IG1pZHguYzo0NzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGFkZCBwYWNrZmlsZSAnJXMnIgogbXNnc3RyICLmt7vliqDljIXmlofku7YgJyVzJyDlpLHotKUiCiAKLSM6IG1pZHguYzo0MTMKKyM6IG1pZHguYzo0NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFjay1pbmRleCAnJXMnIgogbXNnc3RyICLmiZPlvIDljIXntKLlvJUgJyVzJyDlpLHotKUiCiAKLSM6IG1pZHguYzo1MDcKKyM6IG1pZHguYzo1MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvY2F0ZSBvYmplY3QgJWQgaW4gcGFja2ZpbGUiCiBtc2dzdHIgIuWcqOWMheaWh+S7tuS4reWumuS9jeWvueixoSAlZCDlpLHotKUiCiAKLSM6IG1pZHguYzo5NDMKKyM6IG1pZHguYzo4NDIKK21zZ2lkICJBZGRpbmcgcGFja2ZpbGVzIHRvIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIua3u+WKoOWMheaWh+S7tuWIsOWkmuWMhee0ouW8lSIKKworIzogbWlkeC5jOjg3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaWQgbm90IHNlZSBwYWNrLWZpbGUgJXMgdG8gZHJvcCIKK21zZ3N0ciAi5rKh5pyJ55yL5Yiw6KaB5Lii5byD55qE5YyF5paH5Lu2ICVzIgorCisjOiBtaWR4LmM6OTczCittc2dpZCAiV3JpdGluZyBjaHVua3MgdG8gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAi5YaZ5YWl5Z2X5Yiw5aSa5YyF57Si5byVIgorCisjOiBtaWR4LmM6MTA1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY2xlYXIgbXVsdGktcGFjay1pbmRleCBhdCAlcyIKIG1zZ3N0ciAi5riF55CG5L2N5LqOICVzIOeahOWkmuWMhee0ouW8leWksei0pSIKIAotIzogbWlkeC5jOjk4MQorIzogbWlkeC5jOjExMDgKK21zZ2lkICJMb29raW5nIGZvciByZWZlcmVuY2VkIHBhY2tmaWxlcyIKK21zZ3N0ciAi5q2j5Zyo5p+l5om+5byV55So55qE5YyF5paH5Lu2IgorCisjOiBtaWR4LmM6MTEyMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAib2lkIGZhbm91dCBvdXQgb2Ygb3JkZXI6IGZhbm91dFslZF0gPSAlPFBSSXgzMj4gPiAlPFBSSXgzMj4gPSBmYW5vdXRbJWRdIgotbXNnc3RyICJvaWQg5omH5Ye65peg5bqP77yaZmFub3V0WyVkXSA9ICU8UFJJeDMyPiA+ICU8UFJJeDMyPiA9IGZhbm91dFslZF0iCittc2dzdHIgIuWvueixoSBJRCDmiYflh7rml6Dluo/vvJpmYW5vdXRbJWRdID0gJTxQUkl4MzI+ID4gJTxQUkl4MzI+ID0gZmFub3V0WyVkXSIKIAotIzogbWlkeC5jOjk5MgorIzogbWlkeC5jOjExMjgKK21zZ2lkICJWZXJpZnlpbmcgT0lEIG9yZGVyIGluIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIuagoemqjOWkmuWMhee0ouW8leS4reeahCBPSUQg6aG65bqPIgorCisjOiBtaWR4LmM6MTEzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJvaWQgbG9va3VwIG91dCBvZiBvcmRlcjogb2lkWyVkXSA9ICVzID49ICVzID0gb2lkWyVkXSIKLW1zZ3N0ciAib2lkIOafpeivouaXoOW6j++8mm9pZFslZF0gPSAlcyA+PSAlcyA9IG9pZFslZF0iCittc2dzdHIgIuWvueixoSBJRCDmn6Xor6Lml6Dluo/vvJpvaWRbJWRdID0gJXMgPj0gJXMgPSBvaWRbJWRdIgogCi0jOiBtaWR4LmM6OTk2CisjOiBtaWR4LmM6MTE1NworbXNnaWQgIlNvcnRpbmcgb2JqZWN0cyBieSBwYWNrZmlsZSIKK21zZ3N0ciAi6YCa6L+H5YyF5paH5Lu25Li65a+56LGh5o6S5bqPIgorCisjOiBtaWR4LmM6MTE2NAogbXNnaWQgIlZlcmlmeWluZyBvYmplY3Qgb2Zmc2V0cyIKIG1zZ3N0ciAi5qCh6aqM5a+56LGh5YGP56e7IgogCi0jOiBtaWR4LmM6MTAwNAorIzogbWlkeC5jOjExODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGxvYWQgcGFjayBlbnRyeSBmb3Igb2lkWyVkXSA9ICVzIgogbXNnc3RyICLkuLogb2lkWyVkXSA9ICVzIOWKoOi9veWMheadoeebruWksei0pSIKIAotIzogbWlkeC5jOjEwMTAKKyM6IG1pZHguYzoxMTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBsb2FkIHBhY2staW5kZXggZm9yIHBhY2tmaWxlICVzIgogbXNnc3RyICLkuLrljIXmlofku7YgJXMg5Yqg6L295YyF57Si5byV5aSx6LSlIgogCi0jOiBtaWR4LmM6MTAxOQorIzogbWlkeC5jOjExOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5jb3JyZWN0IG9iamVjdCBvZmZzZXQgZm9yIG9pZFslZF0gPSAlczogJTxQUkl4NjQ+ICE9ICU8UFJJeDY0PiIKIG1zZ3N0ciAib2lkWyVkXSA9ICVzIOmUmeivr+eahOWvueixoeWBj+enu++8miU8UFJJeDY0PiAhPSAlPFBSSXg2ND4iCiAKLSM6IG5hbWUtaGFzaC5jOjUzMgorIzogbWlkeC5jOjEyMjAKK21zZ2lkICJDb3VudGluZyByZWZlcmVuY2VkIG9iamVjdHMiCittc2dzdHIgIuato+WcqOWvueW8leeUqOWvueixoeiuoeaVsCIKKworIzogbWlkeC5jOjEyMzAKK21zZ2lkICJGaW5kaW5nIGFuZCBkZWxldGluZyB1bnJlZmVyZW5jZWQgcGFja2ZpbGVzIgorbXNnc3RyICLmraPlnKjmn6Xmib7lkozliKDpmaTmnKrlvJXnlKjnmoTljIXmlofku7YiCisKKyM6IG1pZHguYzoxMzg4Cittc2dpZCAiY291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyIKK21zZ3N0ciAi5LiN6IO95byA5aeLIHBhY2stb2JqZWN0cyIKKworIzogbWlkeC5jOjE0MDcKK21zZ2lkICJjb3VsZCBub3QgZmluaXNoIHBhY2stb2JqZWN0cyIKK21zZ3N0ciAi5LiN6IO957uT5p2fIHBhY2stb2JqZWN0cyIKKworIzogbmFtZS1oYXNoLmM6NTM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbGF6eV9kaXIgdGhyZWFkOiAlcyIKIG1zZ3N0ciAi5LiN6IO95Yib5bu6IGxhenlfZGlyIOe6v+eoi++8miVzIgogCi0jOiBuYW1lLWhhc2guYzo1NTQKKyM6IG5hbWUtaGFzaC5jOjU1OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgogbXNnc3RyICLkuI3og73liJvlu7ogbGF6eV9uYW1lIOe6v+eoi++8miVzIgogCi0jOiBuYW1lLWhhc2guYzo1NjAKKyM6IG5hbWUtaGFzaC5jOjU2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gam9pbiBsYXp5X25hbWUgdGhyZWFkOiAlcyIKIG1zZ3N0ciAi5LiN6IO95Yqg5YWlIGxhc3lfbmFtZSDnur/nqIvvvJolcyIKIAotIzogbm90ZXMtbWVyZ2UuYzoyNzUKKyM6IG5vdGVzLW1lcmdlLmM6Mjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgcHJldmlvdXMgbm90ZXMgbWVyZ2UgKCVzIGV4aXN0cykuXG4iCkBAIC0zNDg1LDIxICs0OTUzLDIxIEBACiAi5Zyo5byA5aeL5LiA5Liq5paw55qE5rOo6YeK5ZCI5bm25LmL5YmN77yM6K+35L2/55SoICdnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXQnIOaIluiAhSAnZ2l0ICIKICJub3RlcyBtZXJnZSAtLWFib3J0JyDmnaXmj5DkuqQv57uI5q2i5YmN5LiA5qyh5ZCI5bm244CCIgogCi0jOiBub3Rlcy1tZXJnZS5jOjI4MgorIzogbm90ZXMtbWVyZ2UuYzoyODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG5vdGVzIG1lcmdlICglcyBleGlzdHMpLiIKIG1zZ3N0ciAi5oKo5bCa5pyq57uT5p2f5rOo6YeK5ZCI5bm277yI5a2Y5ZyoICVz77yJ44CCIgogCi0jOiBub3Rlcy11dGlscy5jOjQ1CisjOiBub3Rlcy11dGlscy5jOjQ2CiBtc2dpZCAiQ2Fubm90IGNvbW1pdCB1bmluaXRpYWxpemVkL3VucmVmZXJlbmNlZCBub3RlcyB0cmVlIgogbXNnc3RyICLkuI3og73mj5DkuqTmnKrliJ3lp4vljJYv5pyq5byV55So55qE5rOo6Kej5qCRIgogCi0jOiBub3Rlcy11dGlscy5jOjEwNAorIzogbm90ZXMtdXRpbHMuYzoxMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQmFkIG5vdGVzLnJld3JpdGVNb2RlIHZhbHVlOiAnJXMnIgogbXNnc3RyICLlnY/nmoQgbm90ZXMucmV3cml0ZU1vZGUg5YC877yaJyVzJyIKIAotIzogbm90ZXMtdXRpbHMuYzoxMTQKKyM6IG5vdGVzLXV0aWxzLmM6MTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIHJld3JpdGUgbm90ZXMgaW4gJXMgKG91dHNpZGUgb2YgcmVmcy9ub3Rlcy8pIgogbXNnc3RyICLmi5Lnu53lkJEgJXPvvIjlnKggcmVmcy9ub3Rlcy8g5LmL5aSW77yJ5YaZ5YWl5rOo6KejIgpAQCAtMzUwOCwxMiArNDk3NiwxMiBAQAogIy4gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlLCB0aGUgc2Vjb25kICVzIGlzCiAjLiBpdHMgdmFsdWUuCiAjLgotIzogbm90ZXMtdXRpbHMuYzoxNDQKKyM6IG5vdGVzLXV0aWxzLmM6MTQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCAlcyB2YWx1ZTogJyVzJyIKIG1zZ3N0ciAi5Z2P55qEICVzIOWAvO+8miclcyciCiAKLSM6IG9iamVjdC5jOjU0CisjOiBvYmplY3QuYzo1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9iamVjdCB0eXBlIFwiJXNcIiIKIG1zZ3N0ciAi5peg5pWI55qE5a+56LGh57G75Z6LIFwiJXNcIiIKQEAgLTM1MzMsMzAgKzUwMDEsOTAgQEAKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2Ugb2JqZWN0OiAlcyIKIG1zZ3N0ciAi5LiN6IO96Kej5p6Q5a+56LGh77yaJXMiCiAKLSM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzcKKyM6IG9iamVjdC5jOjI2NiBvYmplY3QuYzoyNzgKICMsIGMtZm9ybWF0Ci1tc2dpZCAic2hhMSBtaXNtYXRjaCAlcyIKLW1zZ3N0ciAic2hhMSDkuI4gJXMg5LiN5Yy56YWNIgorbXNnaWQgImhhc2ggbWlzbWF0Y2ggJXMiCittc2dzdHIgIuWTiOW4jOWAvOS4jiAlcyDkuI3ljLnphY0iCiAKLSM6IHBhY2tmaWxlLmM6NjA3CisjOiBwYWNrZmlsZS5jOjYyOQogbXNnaWQgIm9mZnNldCBiZWZvcmUgZW5kIG9mIHBhY2tmaWxlIChicm9rZW4gLmlkeD8pIgogbXNnc3RyICLlgY/np7vph4/lnKjljIXmlofku7bnu5PmnZ/kuYvliY3vvIjmjZ/lnY/nmoQgLmlkeO+8n++8iSIKIAotIzogcGFja2ZpbGUuYzoxODY0CisjOiBwYWNrZmlsZS5jOjE4OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAib2Zmc2V0IGJlZm9yZSBzdGFydCBvZiBwYWNrIGluZGV4IGZvciAlcyAoY29ycnVwdCBpbmRleD8pIgogbXNnc3RyICLlgY/np7vph4/lnKggJXMg55qE5YyF57Si5byV5byA5aeL5LmL5YmN77yI5o2f5Z2P55qE57Si5byV77yf77yJIgogCi0jOiBwYWNrZmlsZS5jOjE4NjgKKyM6IHBhY2tmaWxlLmM6MTkwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJvZmZzZXQgYmV5b25kIGVuZCBvZiBwYWNrIGluZGV4IGZvciAlcyAodHJ1bmNhdGVkIGluZGV4PykiCiBtc2dzdHIgIuWBj+enu+mHj+i2iui/h+S6hiAlcyDnmoTljIXntKLlvJXnmoTnu5PlsL7vvIjooqvmiKrmlq3nmoTntKLlvJXvvJ/vvIkiCiAKLSM6IHBhcnNlLW9wdGlvbnMuYzo2NzIKKyM6IHBhY2stYml0bWFwLmM6ODAwIHBhY2stYml0bWFwLmM6ODA2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IHNpemUgb2YgJXMiCittc2dzdHIgIuaXoOazleW+l+WIsCAlcyDnmoTlpKflsI8iCisKKyM6IHBhcnNlLW9wdGlvbnMuYzozOAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZXF1aXJlcyBhIHZhbHVlIgorbXNnc3RyICIlcyDpnIDopoHkuIDkuKrlgLwiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAlcyIKK21zZ3N0ciAiJXMg5LiOICVzIOS4jeWFvOWuuSIKKworIzogcGFyc2Utb3B0aW9ucy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIDogaW5jb21wYXRpYmxlIHdpdGggc29tZXRoaW5nIGVsc2UiCittc2dzdHIgIiVz77ya5ZKM5YW25a6D55qE5LiN5YW85a65IgorCisjOiBwYXJzZS1vcHRpb25zLmM6OTIgcGFyc2Utb3B0aW9ucy5jOjk2IHBhcnNlLW9wdGlvbnMuYzozMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdGFrZXMgbm8gdmFsdWUiCittc2dzdHIgIiVzIOS4jeWPluWAvCIKKworIzogcGFyc2Utb3B0aW9ucy5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzbid0IGF2YWlsYWJsZSIKK21zZ3N0ciAiJXMg5LiN5Y+v55SoIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MjE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBub24tbmVnYXRpdmUgaW50ZWdlciB2YWx1ZSB3aXRoIGFuIG9wdGlvbmFsIGsvbS9nIHN1ZmZpeCIKK21zZ3N0ciAiJXMg5pyf5pyb5LiA5Liq6Z2e6LSf5pW05pWw5ZKM5LiA5Liq5Y+v6YCJ55qEIGsvbS9nIOWQjue8gCIKKworIzogcGFyc2Utb3B0aW9ucy5jOjM4NgorIywgYy1mb3JtYXQKK21zZ2lkICJhbWJpZ3VvdXMgb3B0aW9uOiAlcyAoY291bGQgYmUgLS0lcyVzIG9yIC0tJXMlcykiCittc2dzdHIgIuacieatp+S5ieeahOmAiemhue+8miVz77yI5Y+v5Lul5pivIC0tJXMlcyDmiJYgLS0lcyVz77yJIgorCisjOiBwYXJzZS1vcHRpb25zLmM6NDIwIHBhcnNlLW9wdGlvbnMuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIHlvdSBtZWFuIGAtLSVzYCAod2l0aCB0d28gZGFzaGVzKT8iCittc2dzdHIgIuS9oOeahOaEj+aAneaYryBgLS0lc2DvvIjmnInkuKTkuKrnn63nur/vvInvvJ8iCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAi5pyq55+l6YCJ6aG5IGAlcyciCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBzd2l0Y2ggYCVjJyIKK21zZ3N0ciAi5pyq55+l5byA5YWzIGAlYyciCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBub24tYXNjaWkgb3B0aW9uIGluIHN0cmluZzogYCVzJyIKK21zZ3N0ciAi5a2X56ym5Liy5Lit5pyq55+l55qE6Z2eIGFzY2lpIOWtl+espumAiemhue+8mmAlcyciCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4ODUKIG1zZ2lkICIuLi4iCiBtc2dzdHIgIi4uLiIKIAotIzogcGFyc2Utb3B0aW9ucy5jOjY5MQorIzogcGFyc2Utb3B0aW9ucy5jOjkwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1c2FnZTogJXMiCiBtc2dzdHIgIueUqOazle+8miVzIgpAQCAtMzU2NCwxODUgKzUwOTIsMjcxIEBACiAjLiBUUkFOU0xBVE9SUzogdGhlIGNvbG9uIGhlcmUgc2hvdWxkIGFsaWduIHdpdGggdGhlCiAjLiBvbmUgaW4gInVzYWdlOiAlcyIgdHJhbnNsYXRpb24uCiAjLgotIzogcGFyc2Utb3B0aW9ucy5jOjY5NworIzogcGFyc2Utb3B0aW9ucy5jOjkxMAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICBvcjogJXMiCiBtc2dzdHIgIiAg5oiW77yaJXMiCiAKICMgIOivkeiAhe+8muS4uuS/neivgeWcqOi+k+WHuuS4reWvuem9kO+8jOazqOaEj+iwg+aVtOWPpeS4reepuuagvO+8gQotIzogcGFyc2Utb3B0aW9ucy5jOjcwMAorIzogcGFyc2Utb3B0aW9ucy5jOjkxMwogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJXMiCiBtc2dzdHIgIiAgICAlcyIKIAotIzogcGFyc2Utb3B0aW9ucy5jOjczOQorIzogcGFyc2Utb3B0aW9ucy5jOjk1MgogbXNnaWQgIi1OVU0iCiBtc2dzdHIgIi3mlbDlrZciCiAKLSM6IHBhcnNlLW9wdGlvbnMtY2IuYzozNworIzogcGFyc2Utb3B0aW9ucy5jOjk2NgorIywgYy1mb3JtYXQKK21zZ2lkICJhbGlhcyBvZiAtLSVzIgorbXNnc3RyICItLSVzIOeahOWIq+WQjSIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjIwIHBhcnNlLW9wdGlvbnMtY2IuYzoyNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgorbXNnc3RyICLpgInpobkgYCVzJyDmnJ/mnJvkuIDkuKrmlbDlrZflgLwiCisKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzo0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgZXhwaXJhdGlvbiBkYXRlICclcyciCiBtc2dzdHIgIuagvOW8j+mUmeivr+eahOWIsOacn+aXtumXtO+8miclcyciCiAKLSM6IHBhcnNlLW9wdGlvbnMtY2IuYzoxMDkKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBleHBlY3RzIFwiYWx3YXlzXCIsIFwiYXV0b1wiLCBvciBcIm5ldmVyXCIiCittc2dzdHIgIumAiemhuSBgJXMnIOacn+acmyBcImFsd2F5c1wi44CBXCJhdXRvXCIg5oiWIFwibmV2ZXJcIiIKKworIzogcGFyc2Utb3B0aW9ucy1jYi5jOjEzMCBwYXJzZS1vcHRpb25zLWNiLmM6MTQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAnJXMnIgogbXNnc3RyICLmoLzlvI/plJnor6/nmoTlr7nosaHlkI0gJyVzJyIKIAotIzogcGF0aC5jOjg5NAorIzogcGF0aC5jOjkxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgbWFrZSAlcyB3cml0YWJsZSBieSBncm91cCIKIG1zZ3N0ciAi5LiN6IO96K6+572uICVzIOS4uue7hOWPr+WGmSIKIAotIzogcGF0aHNwZWMuYzoxMjkKKyM6IHBhdGhzcGVjLmM6MTMwCiBtc2dpZCAiRXNjYXBlIGNoYXJhY3RlciAnXFwnIG5vdCBhbGxvd2VkIGFzIGxhc3QgY2hhcmFjdGVyIGluIGF0dHIgdmFsdWUiCiBtc2dzdHIgIui9rOS5ieWtl+espiAnXFwnIOS4jeiDveS9nOS4uuWxnuaAp+WAvOeahOacgOWQjuS4gOS4quWtl+espiIKIAotIzogcGF0aHNwZWMuYzoxNDcKKyM6IHBhdGhzcGVjLmM6MTQ4CiBtc2dpZCAiT25seSBvbmUgJ2F0dHI6JyBzcGVjaWZpY2F0aW9uIGlzIGFsbG93ZWQuIgogbXNnc3RyICLlj6rlhYHorrjkuIDkuKogJ2F0dHI6JyDop4TmoLzjgIIiCiAKLSM6IHBhdGhzcGVjLmM6MTUwCisjOiBwYXRoc3BlYy5jOjE1MQogbXNnaWQgImF0dHIgc3BlYyBtdXN0IG5vdCBiZSBlbXB0eSIKIG1zZ3N0ciAi5bGe5oCn6KeE5qC85LiN6IO95Li656m6IgogCi0jOiBwYXRoc3BlYy5jOjE5MworIzogcGF0aHNwZWMuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBhdHRyaWJ1dGUgbmFtZSAlcyIKIG1zZ3N0ciAi5peg5pWI55qE5bGe5oCn5ZCNICVzIgogCi0jOiBwYXRoc3BlYy5jOjI1OAorIzogcGF0aHNwZWMuYzoyNTkKIG1zZ2lkICJnbG9iYWwgJ2dsb2InIGFuZCAnbm9nbG9iJyBwYXRoc3BlYyBzZXR0aW5ncyBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICLlhajlsYDnmoQgJ2dsb2InIOWSjCAnbm9nbG9iJyDot6/lvoTop4TmoLzorr7nva7kuI3lhbzlrrkiCiAKLSM6IHBhdGhzcGVjLmM6MjY1CisjOiBwYXRoc3BlYy5jOjI2NgogbXNnaWQgIiIKICJnbG9iYWwgJ2xpdGVyYWwnIHBhdGhzcGVjIHNldHRpbmcgaXMgaW5jb21wYXRpYmxlIHdpdGggYWxsIG90aGVyIGdsb2JhbCAiCiAicGF0aHNwZWMgc2V0dGluZ3MiCiBtc2dzdHIgIuWFqOWxgOeahCAnbGl0ZXJhbCcg6Lev5b6E6KeE5qC86K6+572u5ZKM5YW25a6D55qE5YWo5bGA6Lev5b6E6KeE5qC86K6+572u5LiN5YW85a65IgogCi0jOiBwYXRoc3BlYy5jOjMwNQorIzogcGF0aHNwZWMuYzozMDYKIG1zZ2lkICJpbnZhbGlkIHBhcmFtZXRlciBmb3IgcGF0aHNwZWMgbWFnaWMgJ3ByZWZpeCciCiBtc2dzdHIgIui3r+W+hOinhOagvOWMheWQq+aXoOaViOeahOelnuWlh+WJjee8gCIKIAotIzogcGF0aHNwZWMuYzozMjYKKyM6IHBhdGhzcGVjLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgcGF0aHNwZWMgbWFnaWMgJyUuKnMnIGluICclcyciCiBtc2dzdHIgIuWcqOi3r+W+hOinhOagvCAnJTMkcycg5Lit5peg5pWI55qE56We5aWH5YmN57yAICclMiQuKjEkcyciCiAKLSM6IHBhdGhzcGVjLmM6MzMxCisjOiBwYXRoc3BlYy5jOjMzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJNaXNzaW5nICcpJyBhdCB0aGUgZW5kIG9mIHBhdGhzcGVjIG1hZ2ljIGluICclcyciCiBtc2dzdHIgIui3r+W+hOinhOagvCAnJXMnIOeahOelnuWlh+WJjee8gOe7k+WwvuWwkeS6huS4gOS4qiAnKSciCiAKLSM6IHBhdGhzcGVjLmM6MzY5CisjOiBwYXRoc3BlYy5jOjM3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJVbmltcGxlbWVudGVkIHBhdGhzcGVjIG1hZ2ljICclYycgaW4gJyVzJyIKIG1zZ3N0ciAi6Lev5b6E6KeE5qC8ICclMiRzJyDkuK3ljIXlkKvmnKrlrp7njrDnmoTnpZ7lpYfliY3nvIAgJyUxJGMnIgogCi0jOiBwYXRoc3BlYy5jOjQyOAorIzogcGF0aHNwZWMuYzo0MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6ICdsaXRlcmFsJyBhbmQgJ2dsb2InIGFyZSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIiVz77yaJ2xpdGVyYWwnIOWSjCAnZ2xvYicg5LiN5YW85a65IgogCi0jOiBwYXRoc3BlYy5jOjQ0MQorIzogcGF0aHNwZWMuYzo0NDIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJXM6ICclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IgotbXNnc3RyICIlc++8miclcycg5Zyo5LuT5bqT5LmL5aSWIgorbXNnaWQgIiVzOiAnJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSBhdCAnJXMnIgorbXNnc3RyICIlc++8miclcycg5Zyo5L2N5LqOICclcycg55qE5LuT5bqT5LmL5aSWIgogCi0jOiBwYXRoc3BlYy5jOjUxNQorIzogcGF0aHNwZWMuYzo1MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyAobW5lbW9uaWM6ICclYycpIgogbXNnc3RyICInJXMn77yI5Yqp6K6w56ym77yaJyVjJ++8iSIKIAotIzogcGF0aHNwZWMuYzo1MjUKKyM6IHBhdGhzcGVjLmM6NTI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBwYXRoc3BlYyBtYWdpYyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgY29tbWFuZDogJXMiCiBtc2dzdHIgIiVz77ya6Lev5b6E6KeE5qC856We5aWH5YmN57yA5LiN6KKr5q2k5ZG95Luk5pSv5oyB77yaJXMiCiAKLSM6IHBhdGhzcGVjLmM6NTkyCisjOiBwYXRoc3BlYy5jOjU5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoc3BlYyAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCiBtc2dzdHIgIui3r+W+hOinhOagvCAnJXMnIOS9jeS6juespuWPt+mTvuaOpeS4rSIKIAotIzogcGt0LWxpbmUuYzoxMDQKKyM6IHBhdGhzcGVjLmM6NjM5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgaXMgYmFkbHkgcXVvdGVkOiAlcyIKK21zZ3N0ciAi6KGM6KKr6ZSZ6K+v5Zyw5byV55So77yaJXMiCisKKyM6IHBrdC1saW5lLmM6OTIKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmx1c2ggcGFja2V0IgorbXNnc3RyICLml6Dms5XlhpkgZmx1c2gg5YyFIgorCisjOiBwa3QtbGluZS5jOjk5Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGRlbGltIHBhY2tldCIKK21zZ3N0ciAi5peg5rOV5YaZIGRlbGltIOWMhSIKKworIzogcGt0LWxpbmUuYzoxMDYKIG1zZ2lkICJmbHVzaCBwYWNrZXQgd3JpdGUgZmFpbGVkIgogbXNnc3RyICJmbHVzaCDljIXlhpnplJnor68iCiAKLSM6IHBrdC1saW5lLmM6MTQyIHBrdC1saW5lLmM6MjI4CisjOiBwa3QtbGluZS5jOjE0NiBwa3QtbGluZS5jOjIzMgogbXNnaWQgInByb3RvY29sIGVycm9yOiBpbXBvc3NpYmx5IGxvbmcgbGluZSIKIG1zZ3N0ciAi5Y2P6K6u6ZSZ6K+v77ya5LiN5Y+v6IO955qE6ZW/6KGMIgogCi0jOiBwa3QtbGluZS5jOjE1OCBwa3QtbGluZS5jOjE2MAorIzogcGt0LWxpbmUuYzoxNjIgcGt0LWxpbmUuYzoxNjQKIG1zZ2lkICJwYWNrZXQgd3JpdGUgd2l0aCBmb3JtYXQgZmFpbGVkIgogbXNnc3RyICLmoLzlvI/ljJbljIXlhpnlhaXplJnor68iCiAKLSM6IHBrdC1saW5lLmM6MTkyCisjOiBwa3QtbGluZS5jOjE5NgogbXNnaWQgInBhY2tldCB3cml0ZSBmYWlsZWQgLSBkYXRhIGV4Y2VlZHMgbWF4IHBhY2tldCBzaXplIgogbXNnc3RyICLlhpnmlbDmja7ljIXlpLHotKXvvJrmlbDmja7otoXov4fkuobljIXnmoTmnIDlpKfplb/luqYiCiAKLSM6IHBrdC1saW5lLmM6MTk5IHBrdC1saW5lLmM6MjA2CisjOiBwa3QtbGluZS5jOjIwMyBwa3QtbGluZS5jOjIxMAogbXNnaWQgInBhY2tldCB3cml0ZSBmYWlsZWQiCiBtc2dzdHIgIuaVsOaNruWMheWGmeWFpeWksei0pSIKIAotIzogcGt0LWxpbmUuYzoyOTEKKyM6IHBrdC1saW5lLmM6Mjk1CiBtc2dpZCAicmVhZCBlcnJvciIKIG1zZ3N0ciAi6K+75Y+W6ZSZ6K+vIgogCi0jOiBwa3QtbGluZS5jOjI5OQorIzogcGt0LWxpbmUuYzozMDMKIG1zZ2lkICJ0aGUgcmVtb3RlIGVuZCBodW5nIHVwIHVuZXhwZWN0ZWRseSIKIG1zZ3N0ciAi6L+c56uv5oSP5aSW5oyC5pat5LqGIgogCi0jOiBwa3QtbGluZS5jOjMyNworIzogcGt0LWxpbmUuYzozMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBsaW5lIGxlbmd0aCBjaGFyYWN0ZXI6ICUuNHMiCiBtc2dzdHIgIuWNj+iurumUmeivr++8mumUmeivr+eahOihjOmVv+W6puWtl+espuS4su+8miUuNHMiCiAKLSM6IHBrdC1saW5lLmM6MzM3IHBrdC1saW5lLmM6MzQyCisjOiBwa3QtbGluZS5jOjM0MSBwa3QtbGluZS5jOjM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIGxpbmUgbGVuZ3RoICVkIgogbXNnc3RyICLljY/orq7plJnor6/vvJrplJnor6/nmoTooYzplb/luqYgJWQiCiAKLSM6IHByZWxvYWQtaW5kZXguYzoxMTgKKyM6IHBrdC1saW5lLmM6MzYyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW90ZSBlcnJvcjogJXMiCittc2dzdHIgIui/nOeoi+mUmeivr++8miVzIgorCisjOiBwcmVsb2FkLWluZGV4LmM6MTE5CiBtc2dpZCAiUmVmcmVzaGluZyBpbmRleCIKIG1zZ3N0ciAi5q2j5Zyo5Yi35paw57Si5byVIgogCi0jOiBwcmVsb2FkLWluZGV4LmM6MTM3CisjOiBwcmVsb2FkLWluZGV4LmM6MTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGhyZWFkZWQgbHN0YXQ6ICVzIgogbXNnc3RyICLml6Dms5XliJvlu7rnur/nqIsgbHN0YXTvvJolcyIKIAotIzogcHJldHR5LmM6OTYyCisjOiBwcmV0dHkuYzo5ODEKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgLS1wcmV0dHkgZm9ybWF0IgogbXNnc3RyICLkuI3og73op6PmnpAgLS1wcmV0dHkg5qC85byPIgogCi0jOiByYW5nZS1kaWZmLmM6NTYKKyM6IHByb21pc29yLXJlbW90ZS5jOjIzCittc2dpZCAiUmVtb3RlIHdpdGggbm8gVVJMIgorbXNnc3RyICLov5znqIvmnKrorr7nva4gVVJMIgorCisjOiBwcm9taXNvci1yZW1vdGUuYzo1OAorIywgYy1mb3JtYXQKK21zZ2lkICJwcm9taXNvciByZW1vdGUgbmFtZSBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIgorbXNnc3RyICJwcm9taXNvciDov5znqIvlkI3np7DkuI3og73ku6UgJy8nIOW8gOWni++8miVzIgorCisjOiByYW5nZS1kaWZmLmM6NzUKIG1zZ2lkICJjb3VsZCBub3Qgc3RhcnQgYGxvZ2AiCiBtc2dzdHIgIuS4jeiDveWQr+WKqCBgbG9nYCIKIAotIzogcmFuZ2UtZGlmZi5jOjU5CisjOiByYW5nZS1kaWZmLmM6NzcKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBgbG9nYCBvdXRwdXQiCiBtc2dzdHIgIuS4jeiDveivu+WPliBgbG9nYCDnmoTovpPlh7oiCiAKLSM6IHJhbmdlLWRpZmYuYzo3NCBzZXF1ZW5jZXIuYzo0NzY0CisjOiByYW5nZS1kaWZmLmM6OTYgc2VxdWVuY2VyLmM6NTAyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0ICclcyciCiBtc2dzdHIgIuS4jeiDveino+aekOaPkOS6pCAnJXMnIgogCi0jOiByYW5nZS1kaWZmLmM6MjI0CisjOiByYW5nZS1kaWZmLmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBnaXQgaGVhZGVyICclLipzJyIKK21zZ3N0ciAi5peg5rOV6Kej5p6QIGdpdCDlpLQgJyUuKnMnIgorCisjOiByYW5nZS1kaWZmLmM6Mjg1CiBtc2dpZCAiZmFpbGVkIHRvIGdlbmVyYXRlIGRpZmYiCiBtc2dzdHIgIueUn+aIkCBkaWZmIOWksei0pSIKIAotIzogcmFuZ2UtZGlmZi5jOjQ1NSByYW5nZS1kaWZmLmM6NDU3CisjOiByYW5nZS1kaWZmLmM6NTE4IHJhbmdlLWRpZmYuYzo1MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGxvZyBmb3IgJyVzJyIKIG1zZ3N0ciAi5LiN6IO96Kej5p6QICclcycg55qE5pel5b+XIgogCi0jOiByZWFkLWNhY2hlLmM6MTQ5MAorIzogcmVhZC1jYWNoZS5jOjY4MAorIywgYy1mb3JtYXQKK21zZ2lkICJ3aWxsIG5vdCBhZGQgZmlsZSBhbGlhcyAnJXMnICgnJXMnIGFscmVhZHkgZXhpc3RzIGluIGluZGV4KSIKK21zZ3N0ciAi5bCG5LiN5Lya5re75Yqg5paH5Lu25Yir5ZCNICclcyfvvIgnJXMnIOW3sue7j+WtmOWcqOS6jue0ouW8leS4re+8iSIKKworIzogcmVhZC1jYWNoZS5jOjY5NgorbXNnaWQgImNhbm5vdCBjcmVhdGUgYW4gZW1wdHkgYmxvYiBpbiB0aGUgb2JqZWN0IGRhdGFiYXNlIgorbXNnc3RyICLkuI3og73lnKjlr7nosaHmlbDmja7lupPkuK3liJvlu7rnqbrnmoTmlbDmja7lr7nosaEiCisKKyM6IHJlYWQtY2FjaGUuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbiBvbmx5IGFkZCByZWd1bGFyIGZpbGVzLCBzeW1ib2xpYyBsaW5rcyBvciBnaXQtZGlyZWN0b3JpZXMiCittc2dzdHIgIiVz77ya5Y+q6IO95re75Yqg5bi46KeE5paH5Lu244CB56ym5Y+36ZO+5o6l5oiWIGdpdCDnm67lvZUiCisKKyM6IHJlYWQtY2FjaGUuYzo3MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBoYXZlIGEgY29tbWl0IGNoZWNrZWQgb3V0IgorbXNnc3RyICInJXMnIOayoeacieajgOWHuuS4gOS4quaPkOS6pCIKKworIzogcmVhZC1jYWNoZS5jOjc3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5kZXggZmlsZSAnJXMnIgorbXNnc3RyICLml6Dms5XntKLlvJXmlofku7YgJyVzJyIKKworIzogcmVhZC1jYWNoZS5jOjc5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWRkICclcycgdG8gaW5kZXgiCittc2dzdHIgIuaXoOazleWcqOe0ouW8leS4rea3u+WKoCAnJXMnIgorCisjOiByZWFkLWNhY2hlLmM6ODA1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICclcyciCittc2dzdHIgIuaXoOazleWvuSAlcyDmiafooYwgc3RhdCIKKworIzogcmVhZC1jYWNoZS5jOjEzMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBhcHBlYXJzIGFzIGJvdGggYSBmaWxlIGFuZCBhcyBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiJyVzJyDnnIvotbfmnaXml6LmmK/mlofku7blj4jmmK/nm67lvZUiCisKKyM6IHJlYWQtY2FjaGUuYzoxNTM2CiBtc2dpZCAiUmVmcmVzaCBpbmRleCIKIG1zZ3N0ciAi5Yi35paw57Si5byVIgogCi0jOiByZWFkLWNhY2hlLmM6MTYwNAorIzogcmVhZC1jYWNoZS5jOjE2NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImluZGV4LnZlcnNpb24gc2V0LCBidXQgdGhlIHZhbHVlIGlzIGludmFsaWQuXG4iCkBAIC0zNzUxLDcgKzUzNjUsNyBAQAogIuiuvue9ruS6hiBpbmRleC52ZXJzaW9u77yM5L2G5piv5Y+W5YC85peg5pWI44CCXG4iCiAi5L2/55So54mI5pysICVpIgogCi0jOiByZWFkLWNhY2hlLmM6MTYxNAorIzogcmVhZC1jYWNoZS5jOjE2NjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIkdJVF9JTkRFWF9WRVJTSU9OIHNldCwgYnV0IHRoZSB2YWx1ZSBpcyBpbnZhbGlkLlxuIgpAQCAtMzc2MCw2MCArNTM3NCwxNjAgQEAKICLorr7nva7kuoYgR0lUX0lOREVYX1ZFUlNJT07vvIzkvYbmmK/lj5blgLzml6DmlYjjgIJcbiIKICLkvb/nlKjniYjmnKwgJWkiCiAKLSM6IHJlYWQtY2FjaGUuYzoxNzkyCisjOiByZWFkLWNhY2hlLmM6MTcxNworIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgc2lnbmF0dXJlIDB4JTA4eCIKK21zZ3N0ciAi5Z2P55qE562+5ZCNIDB4JTA4eCIKKworIzogcmVhZC1jYWNoZS5jOjE3MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGluZGV4IHZlcnNpb24gJWQiCittc2dzdHIgIuWdj+eahOe0ouW8leeJiOacrCAlZCIKKworIzogcmVhZC1jYWNoZS5jOjE3MjkKK21zZ2lkICJiYWQgaW5kZXggZmlsZSBzaGExIHNpZ25hdHVyZSIKK21zZ3N0ciAi5Z2P55qE57Si5byV5paH5Lu2IHNoYTEg562+5ZCNIgorCisjOiByZWFkLWNhY2hlLmM6MTc1OQorIywgYy1mb3JtYXQKK21zZ2lkICJpbmRleCB1c2VzICUuNHMgZXh0ZW5zaW9uLCB3aGljaCB3ZSBkbyBub3QgdW5kZXJzdGFuZCIKK21zZ3N0ciAi57Si5byV5L2/55So5LiN6KKr5pSv5oyB55qEICUuNHMg5omp5bGVIgorCisjIAkKKyM6IHJlYWQtY2FjaGUuYzoxNzYxCisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICUuNHMgZXh0ZW5zaW9uIgorbXNnc3RyICLlv73nlaUgJS40cyDmianlsZUiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gaW5kZXggZW50cnkgZm9ybWF0IDB4JTA4eCIKK21zZ3N0ciAi5pyq55+l55qE57Si5byV5p2h55uu5qC85byPIDB4JTA4eCIKKworIzogcmVhZC1jYWNoZS5jOjE4MTQKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG5hbWUgZmllbGQgaW4gdGhlIGluZGV4LCBuZWFyIHBhdGggJyVzJyIKIG1zZ3N0ciAi57Si5byV5Lit6Z2g6L+R6Lev5b6EICclcycg5pyJ6ZSZ6K+v55qE5ZCN56ew5a2X5q61IgogCi0jOiByZWFkLWNhY2hlLmM6MTk2MCByZXJlcmUuYzo1NjUgcmVyZXJlLmM6NTk5IHJlcmVyZS5jOjExMTEgYnVpbHRpbi9hZGQuYzo0NTgKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTc3IGJ1aWx0aW4vY2hlY2tvdXQuYzoyODkgYnVpbHRpbi9jaGVja291dC5jOjU4NQotIzogYnVpbHRpbi9jaGVja291dC5jOjk1MyBidWlsdGluL2NsZWFuLmM6OTU0IGJ1aWx0aW4vY29tbWl0LmM6MzQzCi0jOiBidWlsdGluL2RpZmYtdHJlZS5jOjExNSBidWlsdGluL2dyZXAuYzo0ODkgYnVpbHRpbi9tdi5jOjE0NAotIzogYnVpbHRpbi9yZXNldC5jOjI0NCBidWlsdGluL3JtLmM6MjcwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzozMjkKKyM6IHJlYWQtY2FjaGUuYzoxODcxCittc2dpZCAidW5vcmRlcmVkIHN0YWdlIGVudHJpZXMgaW4gaW5kZXgiCittc2dzdHIgIue0ouW8leS4reacieacquaOkuW6j+eahOaaguWtmOadoeebriIKKworIzogcmVhZC1jYWNoZS5jOjE4NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgc3RhZ2UgZW50cmllcyBmb3IgbWVyZ2VkIGZpbGUgJyVzJyIKK21zZ3N0ciAi5ZCI5bm25paH5Lu2ICclcycg5pyJ5aSa5Liq5pqC5a2Y5p2h55uuIgorCisjOiByZWFkLWNhY2hlLmM6MTg3NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBmb3IgJyVzJyIKK21zZ3N0ciAiJyVzJyDnmoTmnKrmjpLluo/mmoLlrZjmnaHnm64iCisKKyM6IHJlYWQtY2FjaGUuYzoxOTgzIHJlYWQtY2FjaGUuYzoyMjcxIHJlcmVyZS5jOjU2NSByZXJlcmUuYzo1OTkgcmVyZXJlLmM6MTExMQorIzogc3VibW9kdWxlLmM6MTYxOSBidWlsdGluL2FkZC5jOjUzMiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE4MQorIzogYnVpbHRpbi9jaGVja291dC5jOjQ3MCBidWlsdGluL2NoZWNrb3V0LmM6NjU2IGJ1aWx0aW4vY2xlYW4uYzo5NjcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzY3IGJ1aWx0aW4vZGlmZi10cmVlLmM6MTIwIGJ1aWx0aW4vZ3JlcC5jOjQ4NQorIzogYnVpbHRpbi9tdi5jOjE0NSBidWlsdGluL3Jlc2V0LmM6MjQ2IGJ1aWx0aW4vcm0uYzoyOTAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzozMzIKIG1zZ2lkICJpbmRleCBmaWxlIGNvcnJ1cHQiCiBtc2dzdHIgIue0ouW8leaWh+S7tuaNn+WdjyIKIAotIzogcmVhZC1jYWNoZS5jOjIxMDEKKyM6IHJlYWQtY2FjaGUuYzoyMTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCiBtc2dzdHIgIuaXoOazleWIm+W7uiBsb2FkX2NhY2hlX2VudHJpZXMg57q/56iL77yaJXMiCiAKLSM6IHJlYWQtY2FjaGUuYzoyMTE0CisjOiByZWFkLWNhY2hlLmM6MjEzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gam9pbiBsb2FkX2NhY2hlX2VudHJpZXMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAi5peg5rOV5Yqg5YWlIGxvYWRfY2FjaGVfZW50cmllcyDnur/nqIvvvJolcyIKIAotIzogcmVhZC1jYWNoZS5jOjIyMDEKKyM6IHJlYWQtY2FjaGUuYzoyMTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbmRleCBmaWxlIG9wZW4gZmFpbGVkIgorbXNnc3RyICIlc++8muaJk+W8gOe0ouW8leaWh+S7tuWksei0pSIKKworIzogcmVhZC1jYWNoZS5jOjIxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbm5vdCBzdGF0IHRoZSBvcGVuIGluZGV4IgorbXNnc3RyICIlc++8muS4jeiDveWvueaJk+W8gOeahOe0ouW8leaJp+ihjCBzdGF0IOaTjeS9nCIKKworIzogcmVhZC1jYWNoZS5jOjIxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGluZGV4IGZpbGUgc21hbGxlciB0aGFuIGV4cGVjdGVkIgorbXNnc3RyICIlc++8mue0ouW8leaWh+S7tuavlOmihOacn+eahOWwjyIKKworIzogcmVhZC1jYWNoZS5jOjIxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBtYXAgaW5kZXggZmlsZSIKK21zZ3N0ciAiJXPvvJrml6Dms5Xlr7nntKLlvJXmlofku7bmiafooYwgbWFwIOaTjeS9nCIKKworIzogcmVhZC1jYWNoZS5jOjIyMjQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsb2FkX2luZGV4X2V4dGVuc2lvbnMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAi5peg5rOV5Yib5bu6IGxvYWRfaW5kZXhfZXh0ZW5zaW9ucyDnur/nqIvvvJolcyIKIAotIzogcmVhZC1jYWNoZS5jOjIyMjgKKyM6IHJlYWQtY2FjaGUuYzoyMjUxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBqb2luIGxvYWRfaW5kZXhfZXh0ZW5zaW9ucyB0aHJlYWQ6ICVzIgogbXNnc3RyICLml6Dms5XliqDlhaUgbG9hZF9pbmRleF9leHRlbnNpb25zIOe6v+eoi++8miVzIgogCi0jOiByZWFkLWNhY2hlLmM6Mjk4MiBzZXF1ZW5jZXIuYzo0NzI3IHdyYXBwZXIuYzo2NTggYnVpbHRpbi9tZXJnZS5jOjEwODYKKyM6IHJlYWQtY2FjaGUuYzoyMjgzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmcmVzaGVuIHNoYXJlZCBpbmRleCAnJXMnIgorbXNnc3RyICLml6Dms5XliLfmlrDlhbHkuqvntKLlvJUgJyVzJyIKKworIzogcmVhZC1jYWNoZS5jOjIzMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYnJva2VuIGluZGV4LCBleHBlY3QgJXMgaW4gJXMsIGdvdCAlcyIKK21zZ3N0ciAi5o2f5Z2P55qE57Si5byV77yM5pyf5pyb5ZyoICUyJHMg5Lit55qEICUxJHPvvIzlvpfliLAgJTMkcyIKKworIzogcmVhZC1jYWNoZS5jOjMwMjYgc3RyYnVmLmM6MTE2MCB3cmFwcGVyLmM6NjIyIGJ1aWx0aW4vbWVyZ2UuYzoxMTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjbG9zZSAnJXMnIgogbXNnc3RyICLkuI3og73lhbPpl60gJyVzJyIKIAotIzogcmVhZC1jYWNoZS5jOjMwNTUgc2VxdWVuY2VyLmM6MjIwMyBzZXF1ZW5jZXIuYzozNTkyCisjOiByZWFkLWNhY2hlLmM6MzEyOSBzZXF1ZW5jZXIuYzoyMzQzIHNlcXVlbmNlci5jOjM5NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN0YXQgJyVzJyIKIG1zZ3N0ciAi5LiN6IO95a+5ICclcycg6LCD55SoIHN0YXQiCiAKLSM6IHJlYWQtY2FjaGUuYzozMDY4CisjOiByZWFkLWNhY2hlLmM6MzE0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBnaXQgZGlyOiAlcyIKIG1zZ3N0ciAi5LiN6IO95omT5byAIGdpdCDnm67lvZXvvJolcyIKIAotIzogcmVhZC1jYWNoZS5jOjMwODAKKyM6IHJlYWQtY2FjaGUuYzozMTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bmxpbms6ICVzIgogbXNnc3RyICLml6Dms5XliKDpmaTvvJolcyIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTAKKyM6IHJlYWQtY2FjaGUuYzozMTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmaXggcGVybWlzc2lvbiBiaXRzIG9uICclcyciCittc2dzdHIgIuS4jeiDveS/ruWkjSAnJXMnIOeahOadg+mZkOS9jSIKKworIzogcmVhZC1jYWNoZS5jOjMzMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbm5vdCBkcm9wIHRvIHN0YWdlICMwIgorbXNnc3RyICIlc++8muS4jeiDveiQveWIsOaaguWtmOWMuiAjMCIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTEKK21zZ2lkICIiCisiWW91IGNhbiBmaXggdGhpcyB3aXRoICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyBhbmQgdGhlbiBydW4gJ2dpdCByZWJhc2UgLS0iCisiY29udGludWUnLlxuIgorIk9yIHlvdSBjYW4gYWJvcnQgdGhlIHJlYmFzZSB3aXRoICdnaXQgcmViYXNlIC0tYWJvcnQnLlxuIgorbXNnc3RyICIiCisi5oKo5Y+v5Lul55SoICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyDkv67mraPvvIznhLblkI7miafooYwgJ2dpdCByZWJhc2UgLS1jb250aW51ZSfjgIJcbiIKKyLmiJbogIXmgqjlj6/ku6XnlKggJ2dpdCByZWJhc2UgLS1hYm9ydCcg57uI5q2i5Y+Y5Z+644CCXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bnJlY29nbml6ZWQgc2V0dGluZyAlcyBmb3Igb3B0aW9uIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmluZy4iCittc2dzdHIgIumAiemhuSByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjayDnmoTlgLwgJXMg5peg5rOV6K+G5Yir44CC5bey5b+955Wl44CCIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo0MgogbXNnaWQgIiIKICJcbiIKICJDb21tYW5kczpcbiIKQEAgLTM4NTMsNyArNTU2NywxNCBAQAogIlxuIgogIuWPr+S7peWvuei/meS6m+ihjOmHjeaWsOaOkuW6j++8jOWwhuS7juS4iuiHs+S4i+aJp+ihjOOAglxuIgogCi0jOiByZWJhc2UtaW50ZXJhY3RpdmUuYzozMSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTczCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZCkiCittc2dpZF9wbHVyYWwgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kcykiCittc2dzdHJbMF0gIuWPmOWfuiAlcyDliLAgJXPvvIglZCDkuKrmj5DkuqTvvIkiCittc2dzdHJbMV0gIuWPmOWfuiAlcyDliLAgJXPvvIglZCDkuKrmj5DkuqTvvIkiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjcyIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyMjgKIG1zZ2lkICIiCiAiXG4iCiAiRG8gbm90IHJlbW92ZSBhbnkgbGluZS4gVXNlICdkcm9wJyBleHBsaWNpdGx5IHRvIHJlbW92ZSBhIGNvbW1pdC5cbiIKQEAgLTM4NjEsNyArNTU4Miw3IEBACiAiXG4iCiAi5LiN6KaB5Yig6Zmk5Lu75oSP5LiA6KGM44CC5L2/55SoICdkcm9wJyDmmL7lvI/lnLDliKDpmaTkuIDkuKrmj5DkuqTjgIJcbiIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6MzQgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjE3NworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NzUgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjIzMgogbXNnaWQgIiIKICJcbiIKICJJZiB5b3UgcmVtb3ZlIGEgbGluZSBoZXJlIFRIQVQgQ09NTUlUIFdJTEwgQkUgTE9TVC5cbiIKQEAgLTM4NjksNyArNTU5MCw3IEBACiAiXG4iCiAi5aaC5p6c5oKo5Zyo6L+Z6YeM5Yig6Zmk5LiA6KGM77yM5a+55bqU55qE5o+Q5Lqk5bCG5Lya5Lii5aSx44CCXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQwIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MTYKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjgxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NzEKIG1zZ2lkICIiCiAiXG4iCiAiWW91IGFyZSBlZGl0aW5nIHRoZSB0b2RvIGZpbGUgb2YgYW4gb25nb2luZyBpbnRlcmFjdGl2ZSByZWJhc2UuXG4iCkBAIC0zODgzLDcgKzU2MDQsNyBAQAogIiAgICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKICJcbiIKIAotIzogcmViYXNlLWludGVyYWN0aXZlLmM6NDUgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg5MworIzogcmViYXNlLWludGVyYWN0aXZlLmM6ODYgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk0OAogbXNnaWQgIiIKICJcbiIKICJIb3dldmVyLCBpZiB5b3UgcmVtb3ZlIGV2ZXJ5dGhpbmcsIHRoZSByZWJhc2Ugd2lsbCBiZSBhYm9ydGVkLlxuIgpAQCAtMzg5MywxMjUgKzU2MTQsMTU5IEBACiAi54S26ICM77yM5aaC5p6c5oKo5Yig6Zmk5YWo6YOo5YaF5a6577yM5Y+Y5Z+65pON5L2c5bCG5Lya57uI5q2i44CCXG4iCiAiXG4iCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjUxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5MDAKLW1zZ2lkICJOb3RlIHRoYXQgZW1wdHkgY29tbWl0cyBhcmUgY29tbWVudGVkIG91dCIKLW1zZ3N0ciAi5rOo5oSP56m65o+Q5Lqk5bey6KKr5rOo6YeK5o6JIgorIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTEwIHJlcmVyZS5jOjQ4NSByZXJlcmUuYzo2OTIgc2VxdWVuY2VyLmM6MzQ0NAorIzogc2VxdWVuY2VyLmM6MzQ3MCBzZXF1ZW5jZXIuYzo1MTI1IGJ1aWx0aW4vZnNjay5jOjM0NiBidWlsdGluL3JlYmFzZS5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJyIKK21zZ3N0ciAi5LiN6IO95YaZ5YWlICclcyciCiAKLSM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjYyIHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjc1IHNlcXVlbmNlci5jOjIxODYKLSM6IHNlcXVlbmNlci5jOjQ1MDUgc2VxdWVuY2VyLmM6NDU2MSBzZXF1ZW5jZXIuYzo0ODM2CisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMTYgYnVpbHRpbi9yZWJhc2UuYzoxODQgYnVpbHRpbi9yZWJhc2UuYzoyMTAKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjM0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnLiIKK21zZ3N0ciAi5LiN6IO95YaZ5YWlICclcyfjgIIiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCisiRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCittc2dzdHIgIiIKKyLorablkYrvvJrkuIDkupvmj5DkuqTlj6/og73ooqvmhI/lpJbkuKLlvIPjgIJcbiIKKyLkuKLlvIPnmoTmj5DkuqTvvIjku47mlrDliLDml6fvvInvvJpcbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUbyBhdm9pZCB0aGlzIG1lc3NhZ2UsIHVzZSBcImRyb3BcIiB0byBleHBsaWNpdGx5IHJlbW92ZSBhIGNvbW1pdC5cbiIKKyJcbiIKKyJVc2UgJ2dpdCBjb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2snIHRvIGNoYW5nZSB0aGUgbGV2ZWwgb2YgIgorIndhcm5pbmdzLlxuIgorIlRoZSBwb3NzaWJsZSBiZWhhdmlvdXJzIGFyZTogaWdub3JlLCB3YXJuLCBlcnJvci5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuS4uumBv+WFjei/meadoeS/oeaBr++8jOS9v+eUqCBcImRyb3BcIiDmjIfku6TmmL7lvI/lnLDliKDpmaTkuIDkuKrmj5DkuqTjgIJcbiIKKyJcbiIKKyLkvb/nlKggJ2dpdCBjb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2snIOadpeS/ruaUueitpuWRiue6p+WIq+OAglxuIgorIuWPr+mAieWAvOacie+8mmlnbm9yZeOAgXdhcm7jgIFlcnJvcuOAglxuIgorIlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoyMzMgcmViYXNlLWludGVyYWN0aXZlLmM6MjM4IHNlcXVlbmNlci5jOjIyNjIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTcwIGJ1aWx0aW4vcmViYXNlLmM6MTk1IGJ1aWx0aW4vcmViYXNlLmM6MjIxCisjOiBidWlsdGluL3JlYmFzZS5jOjI0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCAnJXMnLiIKIG1zZ3N0ciAi5LiN6IO96K+75Y+WICclcyfjgIIiCiAKLSM6IHJlZnMuYzoxOTIKKyM6IHJlZnMuYzoyNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgZG9lcyBub3QgcG9pbnQgdG8gYSB2YWxpZCBvYmplY3QhIgogbXNnc3RyICIlcyDmsqHmnInmjIflkJHkuIDkuKrmnInmlYjnmoTlr7nosaHvvIEiCiAKLSM6IHJlZnMuYzo1ODMKKyM6IHJlZnMuYzo2NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgZGFuZ2xpbmcgc3ltcmVmICVzIgogbXNnc3RyICLlv73nlaXmgqznqbrnrKblj7flvJXnlKggJXMiCiAKLSM6IHJlZnMuYzo1ODUgcmVmLWZpbHRlci5jOjE5NTEKKyM6IHJlZnMuYzo2NjkgcmVmLWZpbHRlci5jOjIwOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgYnJva2VuIHJlZiAlcyIKIG1zZ3N0ciAi5b+955Wl5o2f5Z2P55qE5byV55SoICVzIgogCi0jOiByZWZzLmM6NzExCisjOiByZWZzLmM6ODA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmc6ICVzIgogbXNnc3RyICLml6Dms5XkuLrlhpnlhaXmiZPlvIAgJyVzJ++8miVzIgogCi0jOiByZWZzLmM6NzIxIHJlZnMuYzo3NzIKKyM6IHJlZnMuYzo4MTQgcmVmcy5jOjg2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCByZWYgJyVzJyIKIG1zZ3N0ciAi5peg5rOV6K+75Y+W5byV55SoICclcyciCiAKLSM6IHJlZnMuYzo3MjcKKyM6IHJlZnMuYzo4MjAKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIuW8leeUqCAnJXMnIOW3sue7j+WtmOWcqCIKIAotIzogcmVmcy5jOjczMgorIzogcmVmcy5jOjgyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG9iamVjdCBJRCB3aGVuIHdyaXRpbmcgJyVzJyIKIG1zZ3N0ciAi5YaZ5YWlICclcycg5pe25oSP5aSW55qE5a+56LGhIElEIgogCi0jOiByZWZzLmM6NzQwIHNlcXVlbmNlci5jOjM5NCBzZXF1ZW5jZXIuYzoyNTEwIHNlcXVlbmNlci5jOjI2MzYKLSM6IHNlcXVlbmNlci5jOjI2NTAgc2VxdWVuY2VyLmM6Mjg3NyBzZXF1ZW5jZXIuYzo0NzI1IHNlcXVlbmNlci5jOjQ3ODgKLSM6IHdyYXBwZXIuYzo2NTYKKyM6IHJlZnMuYzo4MzMgc2VxdWVuY2VyLmM6NDA3IHNlcXVlbmNlci5jOjI3MDEgc2VxdWVuY2VyLmM6MjkwNQorIzogc2VxdWVuY2VyLmM6MjkxOSBzZXF1ZW5jZXIuYzozMTc3IHNlcXVlbmNlci5jOjUwMzYgc3RyYnVmLmM6MTE1NworIzogd3JhcHBlci5jOjYyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgdG8gJyVzJyIKIG1zZ3N0ciAi5LiN6IO95YaZ5YWlICclcyciCiAKLSM6IHJlZnMuYzo3Njcgc2VxdWVuY2VyLmM6NDcyMyBzZXF1ZW5jZXIuYzo0NzgyIHdyYXBwZXIuYzoyMjUgd3JhcHBlci5jOjM5NQotIzogYnVpbHRpbi9hbS5jOjcyOAorIzogcmVmcy5jOjg2MCBzdHJidWYuYzoxMTU1IHdyYXBwZXIuYzoxODggd3JhcHBlci5jOjM1OCBidWlsdGluL2FtLmM6NzE5CisjOiBidWlsdGluL3JlYmFzZS5jOjEwMjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZyIKIG1zZ3N0ciAi5peg5rOV5omT5byAICclcycg6L+b6KGM5YaZ5YWlIgogCi0jOiByZWZzLmM6Nzc0CisjOiByZWZzLmM6ODY3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuZXhwZWN0ZWQgb2JqZWN0IElEIHdoZW4gZGVsZXRpbmcgJyVzJyIKIG1zZ3N0ciAi5Yig6ZmkICclcycg5pe25oSP5aSW55qE5a+56LGhIElEIgogCi0jOiByZWZzLmM6OTA1CisjOiByZWZzLmM6OTk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImxvZyBmb3IgcmVmICVzIGhhcyBnYXAgYWZ0ZXIgJXMiCiBtc2dzdHIgIuW8leeUqCAlcyDnmoTml6Xlv5flnKggJXMg5LmL5ZCO5pyJ57y65Y+jIgogCi0jOiByZWZzLmM6OTExCisjOiByZWZzLmM6MTAwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2cgZm9yIHJlZiAlcyB1bmV4cGVjdGVkbHkgZW5kZWQgb24gJXMiCiBtc2dzdHIgIuW8leeUqCAlcyDnmoTml6Xlv5fmhI/lpJbnu4jmraLkuo4gJXMgIgogCi0jOiByZWZzLmM6OTY5CisjOiByZWZzLmM6MTA2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJsb2cgZm9yICVzIGlzIGVtcHR5IgogbXNnc3RyICIlcyDnmoTml6Xlv5fkuLrnqboiCiAKLSM6IHJlZnMuYzoxMDYxCisjOiByZWZzLmM6MTE1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWZ1c2luZyB0byB1cGRhdGUgcmVmIHdpdGggYmFkIG5hbWUgJyVzJyIKIG1zZ3N0ciAi5ouS57ud5pu05paw5pyJ6ZSZ6K+v5ZCN56ewICclcycg55qE5byV55SoIgogCi0jOiByZWZzLmM6MTEzNworIzogcmVmcy5jOjEyMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidXBkYXRlX3JlZiBmYWlsZWQgZm9yIHJlZiAnJXMnOiAlcyIKIG1zZ3N0ciAi5a+55byV55SoICclcycg5omn6KGMIHVwZGF0ZV9yZWYg5aSx6LSl77yaJXMiCiAKLSM6IHJlZnMuYzoxOTExCisjOiByZWZzLmM6MjAyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJtdWx0aXBsZSB1cGRhdGVzIGZvciByZWYgJyVzJyBub3QgYWxsb3dlZCIKIG1zZ3N0ciAi5LiN5YWB6K645a+55byV55SoICclcycg5aSa5qyh5pu05pawIgogCi0jOiByZWZzLmM6MTk0MworIzogcmVmcy5jOjIwNTUKIG1zZ2lkICJyZWYgdXBkYXRlcyBmb3JiaWRkZW4gaW5zaWRlIHF1YXJhbnRpbmUgZW52aXJvbm1lbnQiCiBtc2dzdHIgIuWcqOmalOemu+eOr+Wig+S4reemgeatouabtOaWsOW8leeUqCIKIAotIzogcmVmcy5jOjIwMzkgcmVmcy5jOjIwNjkKKyM6IHJlZnMuYzoyMTUxIHJlZnMuYzoyMTgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZXhpc3RzOyBjYW5ub3QgY3JlYXRlICclcyciCiBtc2dzdHIgIiclcycg5bey5a2Y5Zyo77yM5peg5rOV5Yib5bu6ICclcyciCiAKLSM6IHJlZnMuYzoyMDQ1IHJlZnMuYzoyMDgwCisjOiByZWZzLmM6MjE1NyByZWZzLmM6MjE5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcHJvY2VzcyAnJXMnIGFuZCAnJXMnIGF0IHRoZSBzYW1lIHRpbWUiCiBtc2dzdHIgIuaXoOazleWQjOaXtuWkhOeQhiAnJXMnIOWSjCAnJXMnIgogCi0jOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjI4CisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgcmVmZXJlbmNlICVzIgogbXNnc3RyICLml6Dms5XliKDpmaTlvJXnlKggJXMiCiAKLSM6IHJlZnMvZmlsZXMtYmFja2VuZC5jOjEyNDIgcmVmcy9wYWNrZWQtYmFja2VuZC5jOjE1MzIKLSM6IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQyCisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjQ3IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQxCisjOiByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZGVsZXRlIHJlZmVyZW5jZSAlczogJXMiCiBtc2dzdHIgIuaXoOazleWIoOmZpOW8leeUqCAlc++8miVzIgogCi0jOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjQ1IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQ1CisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjUwIHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgcmVmZXJlbmNlczogJXMiCiBtc2dzdHIgIuaXoOazleWIoOmZpOW8leeUqO+8miVzIgpAQCAtNDAyMSwzNDggKzU3NzYsNDc3IEBACiBtc2dpZCAiaW52YWxpZCByZWZzcGVjICclcyciCiBtc2dzdHIgIuaXoOaViOeahOW8leeUqOihqOi+vuW8j++8miclcyciCiAKLSM6IHJlZi1maWx0ZXIuYzozOSB3dC1zdGF0dXMuYzoxODU1CisjOiByZWYtZmlsdGVyLmM6NDIgd3Qtc3RhdHVzLmM6MTkzOAogbXNnaWQgImdvbmUiCiBtc2dzdHIgIuS4ouWksSIKIAotIzogcmVmLWZpbHRlci5jOjQwCisjOiByZWYtZmlsdGVyLmM6NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYWhlYWQgJWQiCiBtc2dzdHIgIumihuWFiCAlZCIKIAotIzogcmVmLWZpbHRlci5jOjQxCisjOiByZWYtZmlsdGVyLmM6NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmVoaW5kICVkIgogbXNnc3RyICLokL3lkI4gJWQiCiAKLSM6IHJlZi1maWx0ZXIuYzo0MgorIzogcmVmLWZpbHRlci5jOjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImFoZWFkICVkLCBiZWhpbmQgJWQiCiBtc2dzdHIgIumihuWFiCAlZO+8jOiQveWQjiAlZCIKIAotIzogcmVmLWZpbHRlci5jOjEzOAorIzogcmVmLWZpbHRlci5jOjE2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBmb3JtYXQ6ICUlKGNvbG9yOjxjb2xvcj4pIgogbXNnc3RyICLmnJ/mnJvnmoTmoLzlvI/vvJolJShjb2xvcjo86aKc6ImyPikiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDAKKyM6IHJlZi1maWx0ZXIuYzoxNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkIGNvbG9yOiAlJShjb2xvcjolcykiCiBtc2dzdHIgIuacquiDveivhuWIq+eahOminOiJsu+8miUlKGNvbG9yOiVzKSIKIAotIzogcmVmLWZpbHRlci5jOjE2MgorIzogcmVmLWZpbHRlci5jOjE4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6bHN0cmlwPSVzIgogbXNnc3RyICLmnJ/mnJvmlbTmlbDlgLwgcmVmbmFtZTpsc3RyaXA9JXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNjYKKyM6IHJlZi1maWx0ZXIuYzoxOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW50ZWdlciB2YWx1ZSBleHBlY3RlZCByZWZuYW1lOnJzdHJpcD0lcyIKIG1zZ3N0ciAi5pyf5pyb5pW05pWw5YC8IHJlZm5hbWU6cnN0cmlwPSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTY4CisjOiByZWYtZmlsdGVyLmM6MTk1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJSglcykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICLmnKrog73or4bliKvnmoQgJSUoJXMpIOWPguaVsO+8miVzIgogCi0jOiByZWYtZmlsdGVyLmM6MjIzCisjOiByZWYtZmlsdGVyLmM6MjUwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiUlKG9iamVjdHR5cGUpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgogbXNnc3RyICIlJShvYmplY3R0eXBlKSDkuI3luKblj4LmlbAiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMzUKKyM6IHJlZi1maWx0ZXIuYzoyNzIKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJSUob2JqZWN0c2l6ZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCi1tc2dzdHIgIiUlKG9iamVjdHNpemUpIOS4jeW4puWPguaVsCIKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUob2JqZWN0c2l6ZSkgYXJndW1lbnQ6ICVzIgorbXNnc3RyICLmnKrog73or4bliKvnmoQgJSUob2JqZWN0c2l6ZSkg5Y+C5pWw77yaJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoyNDcKKyM6IHJlZi1maWx0ZXIuYzoyODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJSUoZGVsdGFiYXNlKSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKK21zZ3N0ciAiJSUoZGVsdGFiYXNlKSDkuI3luKblj4LmlbAiCisKKyM6IHJlZi1maWx0ZXIuYzoyOTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJSUoYm9keSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCiBtc2dzdHIgIiUlKGJvZHkpIOS4jeW4puWPguaVsCIKIAotIzogcmVmLWZpbHRlci5jOjI1NgorIzogcmVmLWZpbHRlci5jOjMwMQogIywgYy1mb3JtYXQKIG1zZ2lkICIlJShzdWJqZWN0KSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIKIG1zZ3N0ciAiJSUoc3ViamVjdCkg5LiN5bim5Y+C5pWwIgogCi0jOiByZWYtZmlsdGVyLmM6Mjc4CisjOiByZWYtZmlsdGVyLmM6MzIzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gJSUodHJhaWxlcnMpIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAi5pyq55+l55qEICUlKHRyYWlsZXJzKSDlj4LmlbDvvJolcyIKIAotIzogcmVmLWZpbHRlci5jOjMwNworIzogcmVmLWZpbHRlci5jOjM1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJwb3NpdGl2ZSB2YWx1ZSBleHBlY3RlZCBjb250ZW50czpsaW5lcz0lcyIKIG1zZ3N0ciAi5pyf5pyb5LiA5Liq5q2j5pWwIGNvbnRlbnRzOmxpbmVzPSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzA5CisjOiByZWYtZmlsdGVyLmM6MzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShjb250ZW50cykgYXJndW1lbnQ6ICVzIgogbXNnc3RyICLmnKrog73or4bliKvnmoQgJSUoY29udGVudHMpIOWPguaVsO+8miVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzI0CisjOiByZWYtZmlsdGVyLmM6MzY5CiAjLCBjLWZvcm1hdAogbXNnaWQgInBvc2l0aXZlIHZhbHVlIGV4cGVjdGVkIG9iamVjdG5hbWU6c2hvcnQ9JXMiCiBtc2dzdHIgIuacn+acm+S4gOS4quato+aVsCBvYmplY3RuYW1lOnNob3J0PSVzIgogCi0jOiByZWYtZmlsdGVyLmM6MzI4CisjOiByZWYtZmlsdGVyLmM6MzczCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShvYmplY3RuYW1lKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgIuacquiDveivhuWIq+eahCAlJShvYmplY3RuYW1lKSDlj4LmlbDvvJolcyIKIAotIzogcmVmLWZpbHRlci5jOjM1OAorIzogcmVmLWZpbHRlci5jOjQwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJleHBlY3RlZCBmb3JtYXQ6ICUlKGFsaWduOjx3aWR0aD4sPHBvc2l0aW9uPikiCiBtc2dzdHIgIuacn+acm+eahOagvOW8j++8miUlKGFsaWduOjzlrr3luqY+LDzkvY3nva4+KSIKIAotIzogcmVmLWZpbHRlci5jOjM3MAorIzogcmVmLWZpbHRlci5jOjQxNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnJlY29nbml6ZWQgcG9zaXRpb246JXMiCiBtc2dzdHIgIuacquiDveivhuWIq+eahOS9jee9ru+8miVzIgogCi0jOiByZWYtZmlsdGVyLmM6Mzc3CisjOiByZWYtZmlsdGVyLmM6NDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCB3aWR0aDolcyIKIG1zZ3N0ciAi5pyq6IO96K+G5Yir55qE5a695bqm77yaJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozODYKKyM6IHJlZi1maWx0ZXIuYzo0MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5yZWNvZ25pemVkICUlKGFsaWduKSBhcmd1bWVudDogJXMiCiBtc2dzdHIgIuacquiDveivhuWIq+eahCAlJShhbGlnbikg5Y+C5pWw77yaJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzozOTQKKyM6IHJlZi1maWx0ZXIuYzo0MzkKICMsIGMtZm9ybWF0CiBtc2dpZCAicG9zaXRpdmUgd2lkdGggZXhwZWN0ZWQgd2l0aCB0aGUgJSUoYWxpZ24pIGF0b20iCiBtc2dzdHIgIuWFg+e0oCAlJShhbGlnbikg6ZyA6KaB5LiA5Liq5q2j5pWw55qE5a695bqmIgogCi0jOiByZWYtZmlsdGVyLmM6NDEyCisjOiByZWYtZmlsdGVyLmM6NDU3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAlJShpZikgYXJndW1lbnQ6ICVzIgogbXNnc3RyICLmnKrog73or4bliKvnmoQgJSUoaWYpIOWPguaVsO+8miVzIgogCi0jOiByZWYtZmlsdGVyLmM6NTA4CisjOiByZWYtZmlsdGVyLmM6NTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBmaWVsZCBuYW1lOiAlLipzIgogbXNnc3RyICLmoLzlvI/plJnor6/nmoTlrZfmrrXlkI3vvJolLipzIgogCi0jOiByZWYtZmlsdGVyLmM6NTM1CisjOiByZWYtZmlsdGVyLmM6NTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gZmllbGQgbmFtZTogJS4qcyIKIG1zZ3N0ciAi5pyq55+l55qE5a2X5q615ZCN77yaJS4qcyIKIAotIzogcmVmLWZpbHRlci5jOjUzOQorIzogcmVmLWZpbHRlci5jOjU5MAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibm90IGEgZ2l0IHJlcG9zaXRvcnksIGJ1dCB0aGUgZmllbGQgJyUuKnMnIHJlcXVpcmVzIGFjY2VzcyB0byBvYmplY3QgZGF0YSIKIG1zZ3N0ciAi5LiN5piv5LiA5LiqIGdpdCDku5PlupPvvIzkvYbmmK/lrZfmrrUgJyUuKnMnIOmcgOimgeiuv+mXruWvueixoeaVsOaNriIKIAotIzogcmVmLWZpbHRlci5jOjY2MworIzogcmVmLWZpbHRlci5jOjcxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGlmKSBhdG9tIHVzZWQgd2l0aG91dCBhICUlKHRoZW4pIGF0b20iCiBtc2dzdHIgIuagvOW8j++8muS9v+eUqOS6hiAlJShpZikg5YWD57Sg6ICM5rKh5pyJICUlKHRoZW4pIOWFg+e0oCIKIAotIzogcmVmLWZpbHRlci5jOjcyNgorIzogcmVmLWZpbHRlci5jOjc3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKHRoZW4pIGF0b20gdXNlZCB3aXRob3V0IGFuICUlKGlmKSBhdG9tIgogbXNnc3RyICLmoLzlvI/vvJrkvb/nlKjkuoYgJSUodGhlbikg5YWD57Sg6ICM5rKh5pyJICUlKGlmKSDlhYPntKAiCiAKLSM6IHJlZi1maWx0ZXIuYzo3MjgKKyM6IHJlZi1maWx0ZXIuYzo3NzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgbW9yZSB0aGFuIG9uY2UiCiBtc2dzdHIgIuagvOW8j++8miUlKHRoZW4pIOWFg+e0oOeUqOS6huWkmuasoSIKIAotIzogcmVmLWZpbHRlci5jOjczMAorIzogcmVmLWZpbHRlci5jOjc4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKHRoZW4pIGF0b20gdXNlZCBhZnRlciAlJShlbHNlKSIKIG1zZ3N0ciAi5qC85byP77yaJSUodGhlbikg5YWD57Sg55So5Zyo5LqGICUlKGVsc2UpIOS5i+WQjiIKIAotIzogcmVmLWZpbHRlci5jOjc1OAorIzogcmVmLWZpbHRlci5jOjgwOQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCB3aXRob3V0IGFuICUlKGlmKSBhdG9tIgogbXNnc3RyICLmoLzlvI/vvJrkvb/nlKjkuoYgJSUoZWxzZSkg5YWD57Sg6ICM5rKh5pyJICUlKGlmKSDlhYPntKAiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NjAKKyM6IHJlZi1maWx0ZXIuYzo4MTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgd2l0aG91dCBhICUlKHRoZW4pIGF0b20iCiBtc2dzdHIgIuagvOW8j++8muS9v+eUqOS6hiAlJShlbHNlKSDlhYPntKDogIzmsqHmnIkgJSUodGhlbikg5YWD57SgIgogCi0jOiByZWYtZmlsdGVyLmM6NzYyCisjOiByZWYtZmlsdGVyLmM6ODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgogbXNnc3RyICLmoLzlvI/vvJolJShlbHNlKSDlhYPntKDnlKjkuoblpJrmrKEiCiAKLSM6IHJlZi1maWx0ZXIuYzo3NzcKKyM6IHJlZi1maWx0ZXIuYzo4MjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZm9ybWF0OiAlJShlbmQpIGF0b20gdXNlZCB3aXRob3V0IGNvcnJlc3BvbmRpbmcgYXRvbSIKIG1zZ3N0ciAi5qC85byP77ya5L2/55So5LqGICUlKGVuZCkg5YWD57Sg5Y205rKh5pyJ5a6D55qE5a+55bqU5YWD57SgIgogCi0jOiByZWYtZmlsdGVyLmM6ODM0CisjOiByZWYtZmlsdGVyLmM6ODg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBmb3JtYXQgc3RyaW5nICVzIgogbXNnc3RyICLplJnor6/nmoTmoLzlvI/ljJblrZfnrKbkuLIgJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDI0CisjOiByZWYtZmlsdGVyLmM6MTQ4OAogIywgYy1mb3JtYXQKLW1zZ2lkICIobm8gYnJhbmNoLCByZWJhc2luZyAlcykiCi1tc2dzdHIgIu+8iOmdnuWIhuaUr++8jOato+WPmOWfuiAlc++8iSIKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nICVzIgorbXNnc3RyICLpnZ7liIbmlK/vvIzmraPlj5jln7ogJXMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDI3CisjOiByZWYtZmlsdGVyLmM6MTQ5MQogIywgYy1mb3JtYXQKLW1zZ2lkICIobm8gYnJhbmNoLCByZWJhc2luZyBkZXRhY2hlZCBIRUFEICVzKSIKLW1zZ3N0ciAi77yI6Z2e5YiG5pSv77yM5q2j5Y+Y5Z+65YiG56a75aS05oyH6ZKIICVz77yJIgorbXNnaWQgIm5vIGJyYW5jaCwgcmViYXNpbmcgZGV0YWNoZWQgSEVBRCAlcyIKK21zZ3N0ciAi6Z2e5YiG5pSv77yM5q2j5Y+Y5Z+65YiG56a75aS05oyH6ZKIICVzIgogCi0jOiByZWYtZmlsdGVyLmM6MTQzMAorIzogcmVmLWZpbHRlci5jOjE0OTQKICMsIGMtZm9ybWF0Ci1tc2dpZCAiKG5vIGJyYW5jaCwgYmlzZWN0IHN0YXJ0ZWQgb24gJXMpIgotbXNnc3RyICLvvIjpnZ7liIbmlK/vvIzkuozliIbmn6Xmib7lvIDlp4vkuo4gJXPvvIkiCittc2dpZCAibm8gYnJhbmNoLCBiaXNlY3Qgc3RhcnRlZCBvbiAlcyIKK21zZ3N0ciAi6Z2e5YiG5pSv77yM5LqM5YiG5p+l5om+5byA5aeL5LqOICVzIgogCi0jLiBUUkFOU0xBVE9SUzogbWFrZSBzdXJlIHRoaXMgbWF0Y2hlcyAiSEVBRAotIy4gZGV0YWNoZWQgYXQgIiBpbiB3dC1zdGF0dXMuYwotIy4KLSM6IHJlZi1maWx0ZXIuYzoxNDM4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIihIRUFEIGRldGFjaGVkIGF0ICVzKSIKLW1zZ3N0ciAi77yI5aS05oyH6ZKI5YiG56a75LqOICVz77yJIgorIzogcmVmLWZpbHRlci5jOjE1MDQKK21zZ2lkICJubyBicmFuY2giCittc2dzdHIgIumdnuWIhuaUryIKIAotIy4gVFJBTlNMQVRPUlM6IG1ha2Ugc3VyZSB0aGlzIG1hdGNoZXMgIkhFQUQKLSMuIGRldGFjaGVkIGZyb20gIiBpbiB3dC1zdGF0dXMuYwotIy4KLSM6IHJlZi1maWx0ZXIuYzoxNDQ1Ci0jLCBjLWZvcm1hdAotbXNnaWQgIihIRUFEIGRldGFjaGVkIGZyb20gJXMpIgotbXNnc3RyICLvvIjlpLTmjIfpkojliIbnprvoh6ogJXPvvIkiCi0KLSM6IHJlZi1maWx0ZXIuYzoxNDQ5Ci1tc2dpZCAiKG5vIGJyYW5jaCkiCi1tc2dzdHIgIu+8iOmdnuWIhuaUr++8iSIKLQotIzogcmVmLWZpbHRlci5jOjE0ODMgcmVmLWZpbHRlci5jOjE2MzgKKyM6IHJlZi1maWx0ZXIuYzoxNTQwIHJlZi1maWx0ZXIuYzoxNzQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm1pc3Npbmcgb2JqZWN0ICVzIGZvciAlcyIKIG1zZ3N0ciAi57y65aSxICUyJHMg55qE5a+56LGhICUxJHMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxNDkxCisjOiByZWYtZmlsdGVyLmM6MTU1MAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXJzZV9vYmplY3RfYnVmZmVyIGZhaWxlZCBvbiAlcyBmb3IgJXMiCiBtc2dzdHIgInBhcnNlX29iamVjdF9idWZmZXIg5aSx6LSl5LqOICUyJHMg55qEICUxJHMiCiAKLSM6IHJlZi1maWx0ZXIuYzoxODU3CisjOiByZWYtZmlsdGVyLmM6MjAwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IGF0ICclcyciCiBtc2dzdHIgIuagvOW8j+mUmeivr+eahOWvueixoSAnJXMnIgogCi0jOiByZWYtZmlsdGVyLmM6MTk0NgorIzogcmVmLWZpbHRlci5jOjIwOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgcmVmIHdpdGggYnJva2VuIG5hbWUgJXMiCiBtc2dzdHIgIuW/veeVpeW4puaciemUmeivr+WQjeensCAlcyDnmoTlvJXnlKgiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMjMyCisjOiByZWYtZmlsdGVyLmM6MjM4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmb3JtYXQ6ICUlKGVuZCkgYXRvbSBtaXNzaW5nIgogbXNnc3RyICLmoLzlvI/vvJrnvLrlsJEgJSUoZW5kKSDlhYPntKAiCiAKLSM6IHJlZi1maWx0ZXIuYzoyMzM4CisjOiByZWYtZmlsdGVyLmM6MjQ4OQorIywgYy1mb3JtYXQKK21zZ2lkICJvcHRpb24gYCVzJyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW1lcmdlZCIKK21zZ3N0ciAi6YCJ6aG5IGAlcycg5ZKMIC0tbWVyZ2VkIOS4jeWFvOWuuSIKKworIzogcmVmLWZpbHRlci5jOjI0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1uby1tZXJnZWQiCittc2dzdHIgIumAiemhuSBgJXMnIOWSjCAtLW5vLW1lcmdlZCDkuI3lhbzlrrkiCisKKyM6IHJlZi1maWx0ZXIuYzoyNTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm1hbGZvcm1lZCBvYmplY3QgbmFtZSAlcyIKIG1zZ3N0ciAi5qC85byP6ZSZ6K+v55qE5a+56LGh5ZCNICVzIgogCi0jOiByZW1vdGUuYzo2MDcKKyM6IHJlZi1maWx0ZXIuYzoyNTA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIG11c3QgcG9pbnQgdG8gYSBjb21taXQiCittc2dzdHIgIumAiemhuSBgJXMnIOW/hemhu+aMh+WQkeS4gOS4quaPkOS6pCIKKworIzogcmVtb3RlLmM6MzY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZyByZW1vdGUgc2hvcnRoYW5kIGNhbm5vdCBiZWdpbiB3aXRoICcvJzogJXMiCittc2dzdHIgIumFjee9rueahOi/nOeoi+efreWQjeensOS4jeiDveS7pSAnLycg5byA5aeL77yaJXMiCisKKyM6IHJlbW90ZS5jOjQxNAorbXNnaWQgIm1vcmUgdGhhbiBvbmUgcmVjZWl2ZXBhY2sgZ2l2ZW4sIHVzaW5nIHRoZSBmaXJzdCIKK21zZ3N0ciAi5o+Q5L6b5LqG5LiA5Liq5Lul5LiK55qEIHJlY2VpdmVwYWNr77yM5L2/55So56ys5LiA5LiqIgorCisjOiByZW1vdGUuYzo0MjIKK21zZ2lkICJtb3JlIHRoYW4gb25lIHVwbG9hZHBhY2sgZ2l2ZW4sIHVzaW5nIHRoZSBmaXJzdCIKK21zZ3N0ciAi5o+Q5L6b5LqG5LiA5Liq5Lul5LiK55qEIHVwbG9hZHBhY2vvvIzkvb/nlKjnrKzkuIDkuKoiCisKKyM6IHJlbW90ZS5jOjYxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZmV0Y2ggYm90aCAlcyBhbmQgJXMgdG8gJXMiCiBtc2dzdHIgIuS4jeiDveWQjOaXtuiOt+WPliAlcyDlkowgJXMg6IezICVzIgogCi0jOiByZW1vdGUuYzo2MTEKKyM6IHJlbW90ZS5jOjYxNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB1c3VhbGx5IHRyYWNrcyAlcywgbm90ICVzIgogbXNnc3RyICIlcyDpgJrluLjot5/ouKogJXPvvIzogIzpnZ4gJXMiCiAKLSM6IHJlbW90ZS5jOjYxNQorIzogcmVtb3RlLmM6NjIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIHRyYWNrcyBib3RoICVzIGFuZCAlcyIKIG1zZ3N0ciAiJXMg5ZCM5pe26Lef6LiqICVzIOWSjCAlcyIKIAotIzogcmVtb3RlLmM6NjIzCi1tc2dpZCAiSW50ZXJuYWwgZXJyb3IiCi1tc2dzdHIgIuWGhemDqOmUmeivryIKKyM6IHJlbW90ZS5jOjY4OAorIywgYy1mb3JtYXQKK21zZ2lkICJrZXkgJyVzJyBvZiBwYXR0ZXJuIGhhZCBubyAnKiciCittc2dzdHIgIuaooeW8j+eahOmUriAnJXMnIOayoeaciSAnKiciCiAKLSM6IHJlbW90ZS5jOjE1NjkgcmVtb3RlLmM6MTY3MAorIzogcmVtb3RlLmM6Njk4CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlICclcycgb2YgcGF0dGVybiBoYXMgbm8gJyonIgorbXNnc3RyICLmqKHlvI/nmoTlgLwgJyVzJyDmsqHmnIkgJyonIgorCisjOiByZW1vdGUuYzoxMDA0CisjLCBjLWZvcm1hdAorbXNnaWQgInNyYyByZWZzcGVjICVzIGRvZXMgbm90IG1hdGNoIGFueSIKK21zZ3N0ciAi5rqQ5byV55So6KGo6L6+5byPICVzIOayoeacieWMuemFjSIKKworIzogcmVtb3RlLmM6MTAwOQorIywgYy1mb3JtYXQKK21zZ2lkICJzcmMgcmVmc3BlYyAlcyBtYXRjaGVzIG1vcmUgdGhhbiBvbmUiCittc2dzdHIgIua6kOW8leeUqOihqOi+vuW8jyAlcyDljLnphY3otoXov4fkuIDkuKoiCisKKyMuIFRSQU5TTEFUT1JTOiAibWF0Y2hlcyAnJXMnJSIgaXMgdGhlIDxkc3Q+IHBhcnQgb2YgImdpdCBwdXNoCisjLiA8cmVtb3RlPiA8c3JjPjo8ZHN0PiIgcHVzaCwgYW5kICJiZWluZyBwdXNoZWQgKCclcycpIiBpcworIy4gdGhlIDxzcmM+LgorIy4KKyM6IHJlbW90ZS5jOjEwMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBkZXN0aW5hdGlvbiB5b3UgcHJvdmlkZWQgaXMgbm90IGEgZnVsbCByZWZuYW1lIChpLmUuLFxuIgorInN0YXJ0aW5nIHdpdGggXCJyZWZzL1wiKS4gV2UgdHJpZWQgdG8gZ3Vlc3Mgd2hhdCB5b3UgbWVhbnQgYnk6XG4iCisiXG4iCisiLSBMb29raW5nIGZvciBhIHJlZiB0aGF0IG1hdGNoZXMgJyVzJyBvbiB0aGUgcmVtb3RlIHNpZGUuXG4iCisiLSBDaGVja2luZyBpZiB0aGUgPHNyYz4gYmVpbmcgcHVzaGVkICgnJXMnKVxuIgorIiAgaXMgYSByZWYgaW4gXCJyZWZzL3toZWFkcyx0YWdzfS9cIi4gSWYgc28gd2UgYWRkIGEgY29ycmVzcG9uZGluZ1xuIgorIiAgcmVmcy97aGVhZHMsdGFnc30vIHByZWZpeCBvbiB0aGUgcmVtb3RlIHNpZGUuXG4iCisiXG4iCisiTmVpdGhlciB3b3JrZWQsIHNvIHdlIGdhdmUgdXAuIFlvdSBtdXN0IGZ1bGx5IHF1YWxpZnkgdGhlIHJlZi4iCittc2dzdHIgIiIKKyLmgqjmj5DkvpvnmoTnm67moIfkuI3mmK/kuIDkuKrlrozmlbTnmoTlvJXnlKjlkI3np7DvvIjljbPku6UgXCJyZWZzL1wiIOW8gOWktO+8ieOAguaIkeS7rFxuIgorIuivleedgOeMnOa1i+aCqOeahOaDs+azle+8mlxuIgorIlxuIgorIi0g5Zyo6L+c56uv5p+l6K+i5ZKMICclcycg5Yy56YWN55qE5byV55So44CCXG4iCisiLSDmo4Dmn6XopoHmjqjpgIHnmoQgPHNyYz7vvIgnJXMn77yJ5piv5LiN5piv5ZyoIFwicmVmcy97aGVhZHMsdGFnc30vXCIg5Lit55qEXG4iCisiICDlvJXnlKjjgILlpoLmnpzmmK/vvIzmiJHku6zkvJrlnKjlr7nlupTnmoTov5znq6/mt7vliqAgcmVmcy97aGVhZHMsdGFnc30vIOWJjee8gOOAglxuIgorIlxuIgorIumDveS4jeihjO+8jOaJgOS7peaIkeS7rOW3suaUvuW8g+OAguaCqOW/hemhu+e7meWHuuWujOaVtOeahOW8leeUqOOAgiIKKworIzogcmVtb3RlLmM6MTA0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSBjb21taXQgb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byBjcmVhdGUgYSBuZXcgYnJhbmNoIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy9oZWFkcy8lcyc/IgorbXNnc3RyICIiCisi5byV55So6KGo6L6+5byP55qEIDxzcmM+IOaYr+S4gOS4quaPkOS6pOWvueixoeOAguaCqOaYr+aDs+WIm+W7uuS4gOS4quaWsOeahOWIhuaUr+iAjOWQkVxuIgorIiclczpyZWZzL2hlYWRzLyVzJyDmjqjpgIHkuYjvvJ8iCisKKyM6IHJlbW90ZS5jOjEwNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgdGFnIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gY3JlYXRlIGEgbmV3IHRhZyBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisi5byV55So6KGo6L6+5byP55qEIDxzcmM+IOaYr+S4gOS4quagh+etvuWvueixoeOAguaCqOaYr+aDs+WIm+W7uuS4gOS4quaWsOeahOagh+etvuiAjOWQkVxuIgorIiclczpyZWZzL3RhZ3MvJXMnIOaOqOmAgeS5iO+8nyIKKworIzogcmVtb3RlLmM6MTA1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSB0cmVlIG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gdGFnIGEgbmV3IHRyZWUgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorIuW8leeUqOihqOi+vuW8j+eahCA8c3JjPiDmmK/kuIDkuKrmoJHlr7nosaHjgILmgqjmmK/mg7PkuLrov5nkuKrmoJHlr7nosaHliJvlu7rmoIfnrb7ogIzlkJFcbiIKKyInJXM6cmVmcy90YWdzLyVzJyDmjqjpgIHkuYjvvJ8iCisKKyM6IHJlbW90ZS5jOjEwNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgYmxvYiBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHRhZyBhIG5ldyBibG9iIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKyLlvJXnlKjooajovr7lvI/nmoQgPHNyYz4g5piv5LiA5Liq5pWw5o2u5a+56LGh44CC5oKo5piv5oOz5Li66L+Z5Liq5pWw5o2u5a+56LGh5Yib5bu65qCH562+6ICM5ZCRXG4iCisiJyVzOnJlZnMvdGFncy8lcycg5o6o6YCB5LmI77yfIgorCisjOiByZW1vdGUuYzoxMDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNhbm5vdCBiZSByZXNvbHZlZCB0byBicmFuY2giCittc2dzdHIgIiVzIOaXoOazleiiq+ino+aekOS4uuWIhuaUryIKKworIzogcmVtb3RlLmM6MTEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlICclcyc6IHJlbW90ZSByZWYgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIuaXoOazleWIoOmZpCAnJXMn77ya6L+c56iL5byV55So5LiN5a2Y5ZyoIgorCisjOiByZW1vdGUuYzoxMTE4CisjLCBjLWZvcm1hdAorbXNnaWQgImRzdCByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIKK21zZ3N0ciAi55uu5qCH5byV55So6KGo6L6+5byPICVzIOWMuemFjei2hei/h+S4gOS4qiIKKworIzogcmVtb3RlLmM6MTEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkc3QgcmVmICVzIHJlY2VpdmVzIGZyb20gbW9yZSB0aGFuIG9uZSBzcmMiCittc2dzdHIgIuebruagh+W8leeUqCAlcyDmjqXmlLbotoXov4fkuIDkuKrmupAiCisKKyM6IHJlbW90ZS5jOjE2MjggcmVtb3RlLmM6MTcyOQogbXNnaWQgIkhFQUQgZG9lcyBub3QgcG9pbnQgdG8gYSBicmFuY2giCiBtc2dzdHIgIkhFQUQg5rKh5pyJ5oyH5ZCR5LiA5Liq5YiG5pSvIgogCi0jOiByZW1vdGUuYzoxNTc4CisjOiByZW1vdGUuYzoxNjM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHN1Y2ggYnJhbmNoOiAnJXMnIgogbXNnc3RyICLmsqHmnInmraTliIbmlK/vvJonJXMnIgogCi0jOiByZW1vdGUuYzoxNTgxCisjOiByZW1vdGUuYzoxNjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHVwc3RyZWFtIGNvbmZpZ3VyZWQgZm9yIGJyYW5jaCAnJXMnIgogbXNnc3RyICLlsJrmnKrnu5nliIbmlK8gJyVzJyDorr7nva7kuIrmuLgiCiAKLSM6IHJlbW90ZS5jOjE1ODcKKyM6IHJlbW90ZS5jOjE2NDYKICMsIGMtZm9ybWF0CiBtc2dpZCAidXBzdHJlYW0gYnJhbmNoICclcycgbm90IHN0b3JlZCBhcyBhIHJlbW90ZS10cmFja2luZyBicmFuY2giCiBtc2dzdHIgIuS4iua4uOWIhuaUryAnJXMnIOayoeacieWtmOWCqOS4uuS4gOS4qui/nOeoi+i3n+i4quWIhuaUryIKIAotIzogcmVtb3RlLmM6MTYwMgorIzogcmVtb3RlLmM6MTY2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwdXNoIGRlc3RpbmF0aW9uICclcycgb24gcmVtb3RlICclcycgaGFzIG5vIGxvY2FsIHRyYWNraW5nIGJyYW5jaCIKIG1zZ3N0ciAi5o6o6YCB55uu5qCHICclcycg6Iez6L+c56iLICclcycg5rKh5pyJ5pys5Zyw6Lef6Liq5YiG5pSvIgogCi0jOiByZW1vdGUuYzoxNjE0CisjOiByZW1vdGUuYzoxNjczCiAjLCBjLWZvcm1hdAogbXNnaWQgImJyYW5jaCAnJXMnIGhhcyBubyByZW1vdGUgZm9yIHB1c2hpbmciCiBtc2dzdHIgIuWIhuaUryAnJXMnIOayoeacieiuvue9ruimgeaOqOmAgeeahOi/nOeoi+acjeWKoeWZqCIKIAotIzogcmVtb3RlLmM6MTYyNAorIzogcmVtb3RlLmM6MTY4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJwdXNoIHJlZnNwZWNzIGZvciAnJXMnIGRvIG5vdCBpbmNsdWRlICclcyciCiBtc2dzdHIgIuWQkSAnJXMnIOaOqOmAgeW8leeUqOinhOagvOacquWMheWQqyAnJXMnIgogCi0jOiByZW1vdGUuYzoxNjM3CisjOiByZW1vdGUuYzoxNjk2CiBtc2dpZCAicHVzaCBoYXMgbm8gZGVzdGluYXRpb24gKHB1c2guZGVmYXVsdCBpcyAnbm90aGluZycpIgogbXNnc3RyICLmjqjpgIHml6Dnm67moIfvvIhwdXNoLmRlZmF1bHQg5pivICdub3RoaW5nJ++8iSIKIAotIzogcmVtb3RlLmM6MTY1OQorIzogcmVtb3RlLmM6MTcxOAogbXNnaWQgImNhbm5vdCByZXNvbHZlICdzaW1wbGUnIHB1c2ggdG8gYSBzaW5nbGUgZGVzdGluYXRpb24iCiBtc2dzdHIgIuaXoOazleino+aekCAnc2ltcGxlJyDmjqjpgIHoh7PkuIDkuKrljZXni6znmoTnm67moIciCiAKLSM6IHJlbW90ZS5jOjE5MzUKKyM6IHJlbW90ZS5jOjE4NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgZmluZCByZW1vdGUgcmVmICVzIgorbXNnc3RyICLml6Dms5Xmib7liLDov5znqIvlvJXnlKggJXMiCisKKyM6IHJlbW90ZS5jOjE4NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiKiBJZ25vcmluZyBmdW5ueSByZWYgJyVzJyBsb2NhbGx5IgorbXNnc3RyICIqIOWcqOacrOWcsOW/veeVpeWPr+eskeeahOW8leeUqCAnJXMnIgorCisjOiByZW1vdGUuYzoyMDIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIGJhc2VkIG9uICclcycsIGJ1dCB0aGUgdXBzdHJlYW0gaXMgZ29uZS5cbiIKIG1zZ3N0ciAi5oKo55qE5YiG5pSv5Z+65LqOICclcyfvvIzkvYbmraTkuIrmuLjliIbmlK/lt7Lnu4/kuI3lrZjlnKjjgIJcbiIKIAotIzogcmVtb3RlLmM6MTkzOQorIzogcmVtb3RlLmM6MjAyNAogbXNnaWQgIiAgKHVzZSBcImdpdCBicmFuY2ggLS11bnNldC11cHN0cmVhbVwiIHRvIGZpeHVwKVxuIgogbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCBicmFuY2ggLS11bnNldC11cHN0cmVhbVwiIOadpeS/ruWkje+8iVxuIgogCi0jOiByZW1vdGUuYzoxOTQyCisjOiByZW1vdGUuYzoyMDI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIHVwIHRvIGRhdGUgd2l0aCAnJXMnLlxuIgogbXNnc3RyICLmgqjnmoTliIbmlK/kuI7kuIrmuLjliIbmlK8gJyVzJyDkuIDoh7TjgIJcbiIKIAotIzogcmVtb3RlLmM6MTk0NgorIzogcmVtb3RlLmM6MjAzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3VyIGJyYW5jaCBhbmQgJyVzJyByZWZlciB0byBkaWZmZXJlbnQgY29tbWl0cy5cbiIKIG1zZ3N0ciAi5oKo55qE5YiG5pSv5ZKMICclcycg5oyH5ZCR5LiN5ZCM55qE5o+Q5Lqk44CCXG4iCiAKLSM6IHJlbW90ZS5jOjE5NDkKKyM6IHJlbW90ZS5jOjIwMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAodXNlIFwiJXNcIiBmb3IgZGV0YWlscylcbiIKIG1zZ3N0ciAiICDvvIjkvb/nlKggXCIlc1wiIOafpeeci+ivpuaDhe+8iVxuIgogCi0jOiByZW1vdGUuYzoxOTUzCisjOiByZW1vdGUuYzoyMDM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIGFoZWFkIG9mICclcycgYnkgJWQgY29tbWl0LlxuIgogbXNnaWRfcGx1cmFsICJZb3VyIGJyYW5jaCBpcyBhaGVhZCBvZiAnJXMnIGJ5ICVkIGNvbW1pdHMuXG4iCiBtc2dzdHJbMF0gIuaCqOeahOWIhuaUr+mihuWFiCAnJXMnIOWFsSAlZCDkuKrmj5DkuqTjgIJcbiIKIG1zZ3N0clsxXSAi5oKo55qE5YiG5pSv6aKG5YWIICclcycg5YWxICVkIOS4quaPkOS6pOOAglxuIgogCi0jOiByZW1vdGUuYzoxOTU5CisjOiByZW1vdGUuYzoyMDQ0CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1c2hcIiB0byBwdWJsaXNoIHlvdXIgbG9jYWwgY29tbWl0cylcbiIKIG1zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgcHVzaFwiIOadpeWPkeW4g+aCqOeahOacrOWcsOaPkOS6pO+8iVxuIgogCi0jOiByZW1vdGUuYzoxOTYyCisjOiByZW1vdGUuYzoyMDQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIllvdXIgYnJhbmNoIGlzIGJlaGluZCAnJXMnIGJ5ICVkIGNvbW1pdCwgYW5kIGNhbiBiZSBmYXN0LWZvcndhcmRlZC5cbiIKIG1zZ2lkX3BsdXJhbCAiIgpAQCAtNDM3MSwxMSArNjI1NSwxMSBAQAogbXNnc3RyWzFdICLmgqjnmoTliIbmlK/okL3lkI4gJyVzJyDlhbEgJWQg5Liq5o+Q5Lqk77yM5bm25LiU5Y+v5Lul5b+r6L+b44CCXG4iCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogcmVtb3RlLmM6MTk3MAorIzogcmVtb3RlLmM6MjA1NQogbXNnaWQgIiAgKHVzZSBcImdpdCBwdWxsXCIgdG8gdXBkYXRlIHlvdXIgbG9jYWwgYnJhbmNoKVxuIgogbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCBwdWxsXCIg5p2l5pu05paw5oKo55qE5pys5Zyw5YiG5pSv77yJXG4iCiAKLSM6IHJlbW90ZS5jOjE5NzMKKyM6IHJlbW90ZS5jOjIwNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgYnJhbmNoIGFuZCAnJXMnIGhhdmUgZGl2ZXJnZWQsXG4iCkBAIC00MzkxLDEwICs2Mjc1LDE1IEBACiAi5bm25LiU5YiG5Yir5pyJICVkIOWSjCAlZCDlpITkuI3lkIznmoTmj5DkuqTjgIJcbiIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiByZW1vdGUuYzoxOTgzCisjOiByZW1vdGUuYzoyMDY4CiBtc2dpZCAiICAodXNlIFwiZ2l0IHB1bGxcIiB0byBtZXJnZSB0aGUgcmVtb3RlIGJyYW5jaCBpbnRvIHlvdXJzKVxuIgogbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCBwdWxsXCIg5p2l5ZCI5bm26L+c56iL5YiG5pSv77yJXG4iCiAKKyM6IHJlbW90ZS5jOjIyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHBhcnNlIGV4cGVjdGVkIG9iamVjdCBuYW1lICclcyciCittc2dzdHIgIuaXoOazleino+aekOacn+acm+eahOWvueixoeWQjSAnJXMnIgorCiAjOiByZXBsYWNlLW9iamVjdC5jOjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCByZXBsYWNlIHJlZiBuYW1lOiAlcyIKQEAgLTQ0MDUsNyArNjI5NCw3IEBACiBtc2dpZCAiZHVwbGljYXRlIHJlcGxhY2UgcmVmOiAlcyIKIG1zZ3N0ciAi6YeN5aSN55qE5pu/5o2i5byV55So77yaJXMiCiAKLSM6IHJlcGxhY2Utb2JqZWN0LmM6NzMKKyM6IHJlcGxhY2Utb2JqZWN0LmM6ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZSBkZXB0aCB0b28gaGlnaCBmb3Igb2JqZWN0ICVzIgogbXNnc3RyICLlr7nosaEgJXMg55qE5pu/5o2i5bGC57qn5aSq5rexIgpAQCAtNDQxOCwxMSArNjMwNyw2IEBACiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHJlcmVyZSByZWNvcmQiCiBtc2dzdHIgIuaXoOazleWGmeWFpSByZXJlcmUg6K6w5b2VIgogCi0jOiByZXJlcmUuYzo0ODUgcmVyZXJlLmM6NjkyIHNlcXVlbmNlci5jOjMxMzYgc2VxdWVuY2VyLmM6MzE2MgotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJyIKLW1zZ3N0ciAi5LiN6IO95YaZ5YWlICclcyciCi0KICM6IHJlcmVyZS5jOjQ5NQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0aGVyZSB3ZXJlIGVycm9ycyB3aGlsZSB3cml0aW5nICclcycgKCVzKSIKQEAgLTQ0NzMsOCArNjM1Nyw4IEBACiBtc2dpZCAiUmVjb3JkZWQgcHJlaW1hZ2UgZm9yICclcyciCiBtc2dzdHIgIuS4uiAnJXMnIOiusOW9lSBwcmVpbWFnZSIKIAotIzogcmVyZXJlLmM6ODgxIHN1Ym1vZHVsZS5jOjE3NjMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTMKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDIzCisjOiByZXJlcmUuYzo4ODEgc3VibW9kdWxlLmM6MjA3OCBidWlsdGluL2xvZy5jOjE4NzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDU0IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciCiBtc2dzdHIgIuS4jeiDveWIm+W7uuebruW9lSAnJXMnIgpAQCAtNDUwOCwyOSArNjM5MiwzMyBAQAogbXNnaWQgInVuYWJsZSB0byBvcGVuIHJyLWNhY2hlIGRpcmVjdG9yeSIKIG1zZ3N0ciAi5LiN6IO95omT5byAIHJyLWNhY2hlIOebruW9lSIKIAotIzogcmV2aXNpb24uYzoyMzI0CisjOiByZXZpc2lvbi5jOjI0OTcKIG1zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoIGFwcGVhcnMgdG8gYmUgYnJva2VuIgogbXNnc3RyICLmgqjnmoTlvZPliY3liIbmlK/lpb3lg4/ooqvmjZ/lnY8iCiAKLSM6IHJldmlzaW9uLmM6MjMyNworIzogcmV2aXNpb24uYzoyNTAwCiAjLCBjLWZvcm1hdAogbXNnaWQgInlvdXIgY3VycmVudCBicmFuY2ggJyVzJyBkb2VzIG5vdCBoYXZlIGFueSBjb21taXRzIHlldCIKIG1zZ3N0ciAi5oKo55qE5b2T5YmN5YiG5pSvICclcycg5bCa5peg5Lu75L2V5o+Q5LqkIgogCi0jOiByZXZpc2lvbi5jOjI1MjMKKyM6IHJldmlzaW9uLmM6MjcwOAogbXNnaWQgIi0tZmlyc3QtcGFyZW50IGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYmlzZWN0IgogbXNnc3RyICItLWZpcnN0LXBhcmVudCDkuI4gLS1iaXNlY3Qg5LiN5YW85a65IgogCi0jOiBydW4tY29tbWFuZC5jOjc0MAorIzogcmV2aXNpb24uYzoyNzEyCittc2dpZCAiLUwgZG9lcyBub3QgeWV0IHN1cHBvcnQgZGlmZiBmb3JtYXRzIGJlc2lkZXMgLXAgYW5kIC1zIgorbXNnc3RyICItTCDlsJrkuI3mlK/mjIEgLXAg5ZKMIC1zIOS5i+WklueahOW3ruW8guagvOW8jyIKKworIzogcnVuLWNvbW1hbmQuYzo3NjMKIG1zZ2lkICJvcGVuIC9kZXYvbnVsbCBmYWlsZWQiCiBtc2dzdHIgIuS4jeiDveaJk+W8gCAvZGV2L251bGwiCiAKLSM6IHJ1bi1jb21tYW5kLmM6MTIyOQorIzogcnVuLWNvbW1hbmQuYzoxMjY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjcmVhdGUgYXN5bmMgdGhyZWFkOiAlcyIKIG1zZ3N0ciAi5LiN6IO95Yib5bu6IGFzeW5jIOe6v+eoi++8miVzIgogCi0jOiBydW4tY29tbWFuZC5jOjEyOTMKKyM6IHJ1bi1jb21tYW5kLmM6MTMzMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlICclcycgaG9vayB3YXMgaWdub3JlZCBiZWNhdXNlIGl0J3Mgbm90IHNldCBhcyBleGVjdXRhYmxlLlxuIgpAQCAtNDUzOSw3MCArNjQyNyw3NSBAQAogIuWboOS4uuayoeacieWwhumSqeWtkCAnJXMnIOiuvue9ruS4uuWPr+aJp+ihjO+8jOmSqeWtkOiiq+W/veeVpeOAguaCqOWPr+S7pemAmui/h1xuIgogIumFjee9riBgZ2l0IGNvbmZpZyBhZHZpY2UuaWdub3JlZEhvb2sgZmFsc2VgIOadpeWFs+mXrei/meadoeitpuWRiuOAgiIKIAotIzogc2VuZC1wYWNrLmM6MTQyCisjOiBzZW5kLXBhY2suYzoxNDQKIG1zZ2lkICJ1bmV4cGVjdGVkIGZsdXNoIHBhY2tldCB3aGlsZSByZWFkaW5nIHJlbW90ZSB1bnBhY2sgc3RhdHVzIgogbXNnc3RyICLor7vlj5bov5znqIvop6PljIXnirbmgIHml7bmlLbliLDmhI/lpJbnmoQgZmx1c2gg5YyFIgogCi0jOiBzZW5kLXBhY2suYzoxNDQKKyM6IHNlbmQtcGFjay5jOjE0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgcmVtb3RlIHVucGFjayBzdGF0dXM6ICVzIgogbXNnc3RyICLkuI3og73op6PmnpDov5znqIvop6PljIXnirbmgIHvvJolcyIKIAotIzogc2VuZC1wYWNrLmM6MTQ2CisjOiBzZW5kLXBhY2suYzoxNDgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3RlIHVucGFjayBmYWlsZWQ6ICVzIgogbXNnc3RyICLov5znqIvop6PljIXlpLHotKXvvJolcyIKIAotIzogc2VuZC1wYWNrLmM6MzA4CisjOiBzZW5kLXBhY2suYzozMDkKIG1zZ2lkICJmYWlsZWQgdG8gc2lnbiB0aGUgcHVzaCBjZXJ0aWZpY2F0ZSIKIG1zZ3N0ciAi5Li65o6o6YCB6K+B5Lmm562+5ZCN5aSx6LSlIgogCi0jOiBzZW5kLXBhY2suYzo0MjEKKyM6IHNlbmQtcGFjay5jOjQyMwogbXNnaWQgInRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS1zaWduZWQgcHVzaCIKIG1zZ3N0ciAi5o6l5pS256uv5LiN5pSv5oyB562+5ZCN5o6o6YCBIgogCi0jOiBzZW5kLXBhY2suYzo0MjMKKyM6IHNlbmQtcGFjay5jOjQyNQogbXNnaWQgIiIKICJub3Qgc2VuZGluZyBhIHB1c2ggY2VydGlmaWNhdGUgc2luY2UgdGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCAtLSIKICJzaWduZWQgcHVzaCIKIG1zZ3N0ciAi5pyq5Y+R6YCB5o6o6YCB6K+B5Lmm77yM5Zug5Li65o6l5pS256uv5LiN5pSv5oyB562+5ZCN5o6o6YCBIgogCi0jOiBzZW5kLXBhY2suYzo0MzUKKyM6IHNlbmQtcGFjay5jOjQzNwogbXNnaWQgInRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgLS1hdG9taWMgcHVzaCIKIG1zZ3N0ciAi5o6l5pS256uv5LiN5pSv5oyB5Y6f5a2Q5o6o6YCBIgogCi0jOiBzZW5kLXBhY2suYzo0NDAKKyM6IHNlbmQtcGFjay5jOjQ0MgogbXNnaWQgInRoZSByZWNlaXZpbmcgZW5kIGRvZXMgbm90IHN1cHBvcnQgcHVzaCBvcHRpb25zIgogbXNnc3RyICLmjqXmlLbnq6/kuI3mlK/mjIHmjqjpgIHpgInpobkiCiAKLSM6IHNlcXVlbmNlci5jOjE4MworIzogc2VxdWVuY2VyLmM6MTkxCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29tbWl0IG1lc3NhZ2UgY2xlYW51cCBtb2RlICclcyciCiBtc2dzdHIgIuaXoOaViOeahOaPkOS6pOS/oeaBr+a4heeQhuaooeW8jyAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzoyODcKKyM6IHNlcXVlbmNlci5jOjI5NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZGVsZXRlICclcyciCiBtc2dzdHIgIuaXoOazleWIoOmZpCAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzozMTMKKyM6IHNlcXVlbmNlci5jOjMxNSBidWlsdGluL3JlYmFzZS5jOjc4NSBidWlsdGluL3JlYmFzZS5jOjE3NTAgYnVpbHRpbi9ybS5jOjM4NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVtb3ZlICclcyciCittc2dzdHIgIuaXoOazleWIoOmZpCAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzozMjUKIG1zZ2lkICJyZXZlcnQiCiBtc2dzdHIgIui/mOWOnyIKIAotIzogc2VxdWVuY2VyLmM6MzE1CisjOiBzZXF1ZW5jZXIuYzozMjcKIG1zZ2lkICJjaGVycnktcGljayIKIG1zZ3N0ciAi5ouj6YCJIgogCi0jOiBzZXF1ZW5jZXIuYzozMTcKLW1zZ2lkICJyZWJhc2UgLWkiCi1tc2dzdHIgInJlYmFzZSAtaSIKKyM6IHNlcXVlbmNlci5jOjMyOQorbXNnaWQgInJlYmFzZSIKK21zZ3N0ciAi5Y+Y5Z+6IgogCi0jOiBzZXF1ZW5jZXIuYzozMTkKKyM6IHNlcXVlbmNlci5jOjMzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIGFjdGlvbjogJWQiCiBtc2dzdHIgIuacquefpeWKqOS9nO+8miVkIgogCi0jOiBzZXF1ZW5jZXIuYzozNzYKKyM6IHNlcXVlbmNlci5jOjM4OQogbXNnaWQgIiIKICJhZnRlciByZXNvbHZpbmcgdGhlIGNvbmZsaWN0cywgbWFyayB0aGUgY29ycmVjdGVkIHBhdGhzXG4iCiAid2l0aCAnZ2l0IGFkZCA8cGF0aHM+JyBvciAnZ2l0IHJtIDxwYXRocz4nIgpAQCAtNDYxMCw3ICs2NTAzLDcgQEAKICLlhrLnqoHop6PlhrPlrozmr5XlkI7vvIznlKggJ2dpdCBhZGQgPOi3r+W+hD4nIOaIliAnZ2l0IHJtIDzot6/lvoQ+J1xuIgogIuWRveS7pOagh+iusOS/ruato+WQjueahOaWh+S7tiIKIAotIzogc2VxdWVuY2VyLmM6Mzc5CisjOiBzZXF1ZW5jZXIuYzozOTIKIG1zZ2lkICIiCiAiYWZ0ZXIgcmVzb2x2aW5nIHRoZSBjb25mbGljdHMsIG1hcmsgdGhlIGNvcnJlY3RlZCBwYXRoc1xuIgogIndpdGggJ2dpdCBhZGQgPHBhdGhzPicgb3IgJ2dpdCBybSA8cGF0aHM+J1xuIgpAQCAtNDYxOSwxMTAgKzY1MTIsMTEwIEBACiAi5Yay56qB6Kej5Yaz5a6M5q+V5ZCO77yM55SoICdnaXQgYWRkIDzot6/lvoQ+JyDmiJYgJ2dpdCBybSA86Lev5b6EPidcbiIKICLlr7nkv67mraPlkI7nmoTmlofku7blgZrmoIforrDvvIznhLblkI7nlKggJ2dpdCBjb21taXQnIOaPkOS6pCIKIAotIzogc2VxdWVuY2VyLmM6MzkyIHNlcXVlbmNlci5jOjI2MzIKKyM6IHNlcXVlbmNlci5jOjQwNSBzZXF1ZW5jZXIuYzoyOTAxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBsb2NrICclcyciCiBtc2dzdHIgIuS4jeiDvemUgeWumiAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzozOTkKKyM6IHNlcXVlbmNlci5jOjQxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZW9sIHRvICclcyciCiBtc2dzdHIgIuS4jeiDveWwhuaNouihjOespuWGmeWFpSAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzo0MDQgc2VxdWVuY2VyLmM6MjUxNSBzZXF1ZW5jZXIuYzoyNjM4IHNlcXVlbmNlci5jOjI2NTIKLSM6IHNlcXVlbmNlci5jOjI4ODUKKyM6IHNlcXVlbmNlci5jOjQxNyBzZXF1ZW5jZXIuYzoyNzA2IHNlcXVlbmNlci5jOjI5MDcgc2VxdWVuY2VyLmM6MjkyMQorIzogc2VxdWVuY2VyLmM6MzE4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZmluYWxpemUgJyVzJyIKIG1zZ3N0ciAi5peg5rOV5a6M5oiQICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjQyNyBzZXF1ZW5jZXIuYzo5MjEgc2VxdWVuY2VyLmM6MTU5NCBzZXF1ZW5jZXIuYzoyNTM1Ci0jOiBzZXF1ZW5jZXIuYzoyODY3IHNlcXVlbmNlci5jOjI5NzQgYnVpbHRpbi9hbS5jOjI2MCBidWlsdGluL2NvbW1pdC5jOjc0NgotIzogYnVpbHRpbi9tZXJnZS5jOjEwODQgYnVpbHRpbi9yZWJhc2UuYzoxNTIKKyM6IHNlcXVlbmNlci5jOjQ0MCBzZXF1ZW5jZXIuYzoxNjEzIHNlcXVlbmNlci5jOjI3MjYgc2VxdWVuY2VyLmM6MzE2NworIzogc2VxdWVuY2VyLmM6MzI3NiBidWlsdGluL2FtLmM6MjQ5IGJ1aWx0aW4vY29tbWl0LmM6Nzg3IGJ1aWx0aW4vbWVyZ2UuYzoxMTIwCisjOiBidWlsdGluL3JlYmFzZS5jOjU5MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCAnJXMnIgogbXNnc3RyICLkuI3og73or7vlj5YgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6NDUzCisjOiBzZXF1ZW5jZXIuYzo0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAieW91ciBsb2NhbCBjaGFuZ2VzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzLiIKIG1zZ3N0ciAi5oKo55qE5pys5Zyw5L+u5pS55bCG6KKrJXPopobnm5bjgIIiCiAKLSM6IHNlcXVlbmNlci5jOjQ1NworIzogc2VxdWVuY2VyLmM6NDcwCiBtc2dpZCAiY29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQuIgogbXNnc3RyICLmj5DkuqTmgqjnmoTkv67mlLnmiJbotK7ol4/lkI7lho3nu6fnu63jgIIiCiAKLSM6IHNlcXVlbmNlci5jOjQ4NgorIzogc2VxdWVuY2VyLmM6NTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBmYXN0LWZvcndhcmQiCiBtc2dzdHIgIiVz77ya5b+r6L+bIgogCisjOiBzZXF1ZW5jZXIuYzo1NDEgYnVpbHRpbi90YWcuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBjbGVhbnVwIG1vZGUgJXMiCittc2dzdHIgIuaXoOaViOeahOa4heeQhuaooeW8jyAlcyIKKwogIy4gVFJBTlNMQVRPUlM6ICVzIHdpbGwgYmUgInJldmVydCIsICJjaGVycnktcGljayIgb3IKLSMuICJyZWJhc2UgLWkiLgorIy4gInJlYmFzZSIuCiAjLgotIzogc2VxdWVuY2VyLmM6NTc1CisjOiBzZXF1ZW5jZXIuYzo2MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IFVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAiJXPvvJrml6Dms5XlhpnlhaXmlrDntKLlvJXmlofku7YiCiAKLSM6IHNlcXVlbmNlci5jOjU5MQorIzogc2VxdWVuY2VyLmM6NjUyCiBtc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBjYWNoZSB0cmVlIgogbXNnc3RyICLkuI3og73mm7TmlrDnvJPlrZjmoJEiCiAKLSM6IHNlcXVlbmNlci5jOjYwNAorIzogc2VxdWVuY2VyLmM6NjY2CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgSEVBRCBjb21taXQiCiBtc2dzdHIgIuS4jeiDveino+aekCBIRUFEIOaPkOS6pCIKIAotIzogc2VxdWVuY2VyLmM6Njg0CisjOiBzZXF1ZW5jZXIuYzo3NDYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8ga2V5IHByZXNlbnQgaW4gJyUuKnMnIgogbXNnc3RyICLlnKggJyUuKnMnIOS4reayoeaciSBrZXkiCiAKLSM6IHNlcXVlbmNlci5jOjY5NQorIzogc2VxdWVuY2VyLmM6NzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBkZXF1b3RlIHZhbHVlIG9mICclcyciCiBtc2dzdHIgIuaXoOazleS4uiAnJXMnIOeahOWAvOWOu+W8leWPtyIKIAotIzogc2VxdWVuY2VyLmM6NzMyIHdyYXBwZXIuYzoyMjcgd3JhcHBlci5jOjM5NyBidWlsdGluL2FtLmM6NzE5Ci0jOiBidWlsdGluL2FtLmM6ODExIGJ1aWx0aW4vbWVyZ2UuYzoxMDgxCisjOiBzZXF1ZW5jZXIuYzo3OTQgd3JhcHBlci5jOjE5MCB3cmFwcGVyLmM6MzYwIGJ1aWx0aW4vYW0uYzo3MTAKKyM6IGJ1aWx0aW4vYW0uYzo4MDIgYnVpbHRpbi9tZXJnZS5jOjExMTcgYnVpbHRpbi9yZWJhc2UuYzoxMDcyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHJlYWRpbmciCiBtc2dzdHIgIuaXoOazleaJk+W8gCAnJXMnIOi/m+ihjOivu+WPliIKIAotIzogc2VxdWVuY2VyLmM6NzQyCisjOiBzZXF1ZW5jZXIuYzo4MDQKIG1zZ2lkICInR0lUX0FVVEhPUl9OQU1FJyBhbHJlYWR5IGdpdmVuIgogbXNnc3RyICLlt7Lnu4/nu5nlh7ogJ0dJVF9BVVRIT1JfTkFNRSciCiAKLSM6IHNlcXVlbmNlci5jOjc0NworIzogc2VxdWVuY2VyLmM6ODA5CiBtc2dpZCAiJ0dJVF9BVVRIT1JfRU1BSUwnIGFscmVhZHkgZ2l2ZW4iCiBtc2dzdHIgIuW3sue7j+e7meWHuiAnR0lUX0FVVEhPUl9FTUFJTCciCiAKLSM6IHNlcXVlbmNlci5jOjc1MgorIzogc2VxdWVuY2VyLmM6ODE0CiBtc2dpZCAiJ0dJVF9BVVRIT1JfREFURScgYWxyZWFkeSBnaXZlbiIKIG1zZ3N0ciAi5bey57uP57uZ5Ye6ICdHSVRfQVVUSE9SX0RBVEUnIgogCi0jOiBzZXF1ZW5jZXIuYzo3NTYKKyM6IHNlcXVlbmNlci5jOjgxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHZhcmlhYmxlICclcyciCiBtc2dzdHIgIuacquefpeWPmOmHjyAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzo3NjEKKyM6IHNlcXVlbmNlci5jOjgyMwogbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfTkFNRSciCiBtc2dzdHIgIue8uuWwkSAnR0lUX0FVVEhPUl9OQU1FJyIKIAotIzogc2VxdWVuY2VyLmM6NzYzCisjOiBzZXF1ZW5jZXIuYzo4MjUKIG1zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX0VNQUlMJyIKIG1zZ3N0ciAi57y65bCRICdHSVRfQVVUSE9SX0VNQUlMJyIKIAotIzogc2VxdWVuY2VyLmM6NzY1CisjOiBzZXF1ZW5jZXIuYzo4MjcKIG1zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX0RBVEUnIgogbXNnc3RyICLnvLrlsJEgJ0dJVF9BVVRIT1JfREFURSciCiAKLSM6IHNlcXVlbmNlci5jOjgyNQotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIGRhdGUgZm9ybWF0ICclcycgaW4gJyVzJyIKLW1zZ3N0ciAiJyUyJHMnIOS4reaXoOaViOeahOaXpeacn+agvOW8jyAnJTEkcyciCi0KLSM6IHNlcXVlbmNlci5jOjg0MgorIzogc2VxdWVuY2VyLmM6ODc2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJ5b3UgaGF2ZSBzdGFnZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZVxuIgpAQCAtNDc1MSwxNSArNjY0NCwxMSBAQAogIlxuIgogIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IHNlcXVlbmNlci5jOjkzNQotbXNnaWQgIndyaXRpbmcgcm9vdCBjb21taXQiCi1tc2dzdHIgIuWGmeagueaPkOS6pCIKLQotIzogc2VxdWVuY2VyLmM6MTE0MgorIzogc2VxdWVuY2VyLmM6MTE0OAogbXNnaWQgIidwcmVwYXJlLWNvbW1pdC1tc2cnIGhvb2sgZmFpbGVkIgogbXNnc3RyICIncHJlcGFyZS1jb21taXQtbXNnJyDpkqnlrZDlpLHotKUiCiAKLSM6IHNlcXVlbmNlci5jOjExNDkKKyM6IHNlcXVlbmNlci5jOjExNTQKIG1zZ2lkICIiCiAiWW91ciBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIHdlcmUgY29uZmlndXJlZCBhdXRvbWF0aWNhbGx5IGJhc2VkXG4iCiAib24geW91ciB1c2VybmFtZSBhbmQgaG9zdG5hbWUuIFBsZWFzZSBjaGVjayB0aGF0IHRoZXkgYXJlIGFjY3VyYXRlLlxuIgpAQCAtNDc4Myw3ICs2NjcyLDcgQEAKICJcbiIKICIgICAgZ2l0IGNvbW1pdCAtLWFtZW5kIC0tcmVzZXQtYXV0aG9yXG4iCiAKLSM6IHNlcXVlbmNlci5jOjExNjIKKyM6IHNlcXVlbmNlci5jOjExNjcKIG1zZ2lkICIiCiAiWW91ciBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIHdlcmUgY29uZmlndXJlZCBhdXRvbWF0aWNhbGx5IGJhc2VkXG4iCiAib24geW91ciB1c2VybmFtZSBhbmQgaG9zdG5hbWUuIFBsZWFzZSBjaGVjayB0aGF0IHRoZXkgYXJlIGFjY3VyYXRlLlxuIgpAQCAtNDgwNiwzMDAgKzY2OTUsMzQ4IEBACiAiXG4iCiAiICAgIGdpdCBjb21taXQgLS1hbWVuZCAtLXJlc2V0LWF1dGhvclxuIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjAyCisjOiBzZXF1ZW5jZXIuYzoxMjA5CiBtc2dpZCAiY291bGRuJ3QgbG9vayB1cCBuZXdseSBjcmVhdGVkIGNvbW1pdCIKIG1zZ3N0ciAi5peg5rOV5om+5Yiw5paw5Yib5bu655qE5o+Q5LqkIgogCi0jOiBzZXF1ZW5jZXIuYzoxMjA0CisjOiBzZXF1ZW5jZXIuYzoxMjExCiBtc2dpZCAiY291bGQgbm90IHBhcnNlIG5ld2x5IGNyZWF0ZWQgY29tbWl0IgogbXNnc3RyICLkuI3og73op6PmnpDmlrDliJvlu7rnmoTmj5DkuqQiCiAKLSM6IHNlcXVlbmNlci5jOjEyNTAKKyM6IHNlcXVlbmNlci5jOjEyNTcKIG1zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBIRUFEIGFmdGVyIGNyZWF0aW5nIGNvbW1pdCIKIG1zZ3N0ciAi5Yib5bu65o+Q5Lqk5ZCO77yM5LiN6IO96Kej5p6QIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjEyNTIKKyM6IHNlcXVlbmNlci5jOjEyNTkKIG1zZ2lkICJkZXRhY2hlZCBIRUFEIgogbXNnc3RyICLliIbnprvlpLTmjIfpkogiCiAKICMgIOivkeiAhe+8muS4reaWh+Wtl+espuS4suaLvOaOpe+8jOWPr+WIoOmZpOWJjeWvvOepuuagvAotIzogc2VxdWVuY2VyLmM6MTI1NgorIzogc2VxdWVuY2VyLmM6MTI2MwogbXNnaWQgIiAocm9vdC1jb21taXQpIgogbXNnc3RyICLvvIjmoLnmj5DkuqTvvIkiCiAKLSM6IHNlcXVlbmNlci5jOjEyNzcKKyM6IHNlcXVlbmNlci5jOjEyODQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgSEVBRCIKIG1zZ3N0ciAi5LiN6IO96Kej5p6QIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjEyNzkKKyM6IHNlcXVlbmNlci5jOjEyODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiSEVBRCAlcyBpcyBub3QgYSBjb21taXQhIgogbXNnc3RyICJIRUFEICVzIOS4jeaYr+S4gOS4quaPkOS6pO+8gSIKIAotIzogc2VxdWVuY2VyLmM6MTI4MyBidWlsdGluL2NvbW1pdC5jOjE1NDMKKyM6IHNlcXVlbmNlci5jOjEyOTAgc2VxdWVuY2VyLmM6MTM2NCBidWlsdGluL2NvbW1pdC5jOjE1NzQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgSEVBRCBjb21taXQiCiBtc2dzdHIgIuS4jeiDveino+aekCBIRUFEIOaPkOS6pCIKIAotIzogc2VxdWVuY2VyLmM6MTMzNCBzZXF1ZW5jZXIuYzoxOTM0CisjOiBzZXF1ZW5jZXIuYzoxMzQyIHNlcXVlbmNlci5jOjE5NjgKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0IGF1dGhvciIKIG1zZ3N0ciAi5LiN6IO96Kej5p6Q5o+Q5Lqk5L2c6ICFIgogCi0jOiBzZXF1ZW5jZXIuYzoxMzQ0IGJ1aWx0aW4vYW0uYzoxNTg1IGJ1aWx0aW4vbWVyZ2UuYzo2NzcKKyM6IHNlcXVlbmNlci5jOjEzNTMgYnVpbHRpbi9hbS5jOjE1NjYgYnVpbHRpbi9tZXJnZS5jOjY4NwogbXNnaWQgImdpdCB3cml0ZS10cmVlIGZhaWxlZCB0byB3cml0ZSBhIHRyZWUiCiBtc2dzdHIgImdpdCB3cml0ZS10cmVlIOaXoOazleWGmeWFpeagkeWvueixoSIKIAotIzogc2VxdWVuY2VyLmM6MTM2MSBzZXF1ZW5jZXIuYzoxNDE2CisjOiBzZXF1ZW5jZXIuYzoxMzg2IHNlcXVlbmNlci5jOjE0NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgY29tbWl0IG1lc3NhZ2UgZnJvbSAnJXMnIgogbXNnc3RyICLkuI3og73ku44gJyVzJyDor7vlj5bmj5DkuqTor7TmmI4iCiAKLSM6IHNlcXVlbmNlci5jOjEzODMgYnVpbHRpbi9hbS5jOjE2MDYgYnVpbHRpbi9jb21taXQuYzoxNjQ2IGJ1aWx0aW4vbWVyZ2UuYzo4NTgKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo4ODMKKyM6IHNlcXVlbmNlci5jOjE0MTMgYnVpbHRpbi9hbS5jOjE1ODggYnVpbHRpbi9jb21taXQuYzoxNjczIGJ1aWx0aW4vbWVyZ2UuYzo4ODYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5MTEKIG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgY29tbWl0IG9iamVjdCIKIG1zZ3N0ciAi5YaZ5o+Q5Lqk5a+56LGh5aSx6LSlIgogCi0jOiBzZXF1ZW5jZXIuYzoxNDQzCisjOiBzZXF1ZW5jZXIuYzoxNDc0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgJXMiCiBtc2dzdHIgIuS4jeiDveino+aekOaPkOS6pCAlcyIKIAotIzogc2VxdWVuY2VyLmM6MTQ0OAorIzogc2VxdWVuY2VyLmM6MTQ3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgcGFyZW50IGNvbW1pdCAlcyIKIG1zZ3N0ciAi5LiN6IO96Kej5p6Q54i25o+Q5LqkICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxNTQ2IHNlcXVlbmNlci5jOjE2NTQKKyM6IHNlcXVlbmNlci5jOjE1NjIgc2VxdWVuY2VyLmM6MTY3MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIGNvbW1hbmQ6ICVkIgogbXNnc3RyICLmnKrnn6Xlkb3ku6TvvJolZCIKIAotIzogc2VxdWVuY2VyLmM6MTYwMSBzZXF1ZW5jZXIuYzoxNjI2CisjOiBzZXF1ZW5jZXIuYzoxNjIwIHNlcXVlbmNlci5jOjE2NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mICVkIGNvbW1pdHMuIgogbXNnc3RyICLov5nmmK/kuIDkuKogJWQg5Liq5o+Q5Lqk55qE57uE5ZCI44CCIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjExIHNlcXVlbmNlci5jOjQ3NDQKKyM6IHNlcXVlbmNlci5jOjE2MzAKIG1zZ2lkICJuZWVkIGEgSEVBRCB0byBmaXh1cCIKIG1zZ3N0ciAi6ZyA6KaB5LiA5LiqIEhFQUQg5p2l5L+u5aSNIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjEzIHNlcXVlbmNlci5jOjI5MTIKKyM6IHNlcXVlbmNlci5jOjE2MzIgc2VxdWVuY2VyLmM6MzIxMgogbXNnaWQgImNvdWxkIG5vdCByZWFkIEhFQUQiCiBtc2dzdHIgIuS4jeiDveivu+WPliBIRUFEIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjE1CisjOiBzZXF1ZW5jZXIuYzoxNjM0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgSEVBRCdzIGNvbW1pdCBtZXNzYWdlIgogbXNnc3RyICLkuI3og73or7vlj5YgSEVBRCDnmoTmj5DkuqTor7TmmI4iCiAKLSM6IHNlcXVlbmNlci5jOjE2MjEKKyM6IHNlcXVlbmNlci5jOjE2NDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHdyaXRlICclcyciCiBtc2dzdHIgIuS4jeiDveWGmSAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjI4IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NDEKKyM6IHNlcXVlbmNlci5jOjE2NDcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5NgogbXNnaWQgIlRoaXMgaXMgdGhlIDFzdCBjb21taXQgbWVzc2FnZToiCiBtc2dzdHIgIui/meaYr+esrOS4gOS4quaPkOS6pOivtOaYju+8miIKIAotIzogc2VxdWVuY2VyLmM6MTYzNgorIzogc2VxdWVuY2VyLmM6MTY1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBjb21taXQgbWVzc2FnZSBvZiAlcyIKIG1zZ3N0ciAi5LiN6IO96K+75Y+WICVzIOeahOaPkOS6pOivtOaYjiIKIAotIzogc2VxdWVuY2VyLmM6MTY0MworIzogc2VxdWVuY2VyLmM6MTY2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGlzIGlzIHRoZSBjb21taXQgbWVzc2FnZSAjJWQ6IgogbXNnc3RyICLov5nmmK/mj5DkuqTor7TmmI4gIyVk77yaIgogCi0jOiBzZXF1ZW5jZXIuYzoxNjQ5CisjOiBzZXF1ZW5jZXIuYzoxNjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBjb21taXQgbWVzc2FnZSAjJWQgd2lsbCBiZSBza2lwcGVkOiIKIG1zZ3N0ciAi5o+Q5Lqk6K+05piOICMlZCDlsIbooqvot7Pov4fvvJoiCiAKLSM6IHNlcXVlbmNlci5jOjE3MzIKKyM6IHNlcXVlbmNlci5jOjE3NTYKIG1zZ2lkICJ5b3VyIGluZGV4IGZpbGUgaXMgdW5tZXJnZWQuIgogbXNnc3RyICLmgqjnmoTntKLlvJXmlofku7bmnKrlrozmiJDlkIjlubbjgIIiCiAKLSM6IHNlcXVlbmNlci5jOjE3MzkKKyM6IHNlcXVlbmNlci5jOjE3NjMKIG1zZ2lkICJjYW5ub3QgZml4dXAgcm9vdCBjb21taXQiCiBtc2dzdHIgIuS4jeiDveS/ruWkjeagueaPkOS6pCIKIAotIzogc2VxdWVuY2VyLmM6MTc1OAorIzogc2VxdWVuY2VyLmM6MTc4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21taXQgJXMgaXMgYSBtZXJnZSBidXQgbm8gLW0gb3B0aW9uIHdhcyBnaXZlbi4iCiBtc2dzdHIgIuaPkOS6pCAlcyDmmK/kuIDkuKrlkIjlubbmj5DkuqTkvYbmnKrmj5DkvpsgLW0g6YCJ6aG544CCIgogCi0jOiBzZXF1ZW5jZXIuYzoxNzY2CisjOiBzZXF1ZW5jZXIuYzoxNzkwIHNlcXVlbmNlci5jOjE3OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICVzIGRvZXMgbm90IGhhdmUgcGFyZW50ICVkIgogbXNnc3RyICLmj5DkuqQgJXMg5rKh5pyJ56ysICVkIOS4queItuaPkOS6pCIKIAotIzogc2VxdWVuY2VyLmM6MTc3MAotIywgYy1mb3JtYXQKLW1zZ2lkICJtYWlubGluZSB3YXMgc3BlY2lmaWVkIGJ1dCBjb21taXQgJXMgaXMgbm90IGEgbWVyZ2UuIgotbXNnc3RyICLmjIflrprkuobkuLvnur/vvIzkvYbmmK/mj5DkuqQgJXMg5LiN5piv5LiA5Liq5ZCI5bm25o+Q5Lqk44CCIgotCi0jOiBzZXF1ZW5jZXIuYzoxNzc2CisjOiBzZXF1ZW5jZXIuYzoxODA0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBnZXQgY29tbWl0IG1lc3NhZ2UgZm9yICVzIgogbXNnc3RyICLkuI3og73lvpfliLAgJXMg55qE5o+Q5Lqk6K+05piOIgogCiAjLiBUUkFOU0xBVE9SUzogVGhlIGZpcnN0ICVzIHdpbGwgYmUgYSAidG9kbyIgY29tbWFuZCBsaWtlCiAjLiAicmV2ZXJ0IiBvciAicGljayIsIHRoZSBzZWNvbmQgJXMgYSBTSEExLgotIzogc2VxdWVuY2VyLmM6MTc5NQorIzogc2VxdWVuY2VyLmM6MTgyMwogIywgYy1mb3JtYXQKIG1zZ2lkICIlczogY2Fubm90IHBhcnNlIHBhcmVudCBjb21taXQgJXMiCiBtc2dzdHIgIiVz77ya5LiN6IO96Kej5p6Q54i25o+Q5LqkICVzIgogCi0jOiBzZXF1ZW5jZXIuYzoxODYwCisjOiBzZXF1ZW5jZXIuYzoxODg4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgogbXNnc3RyICLkuI3og73lsIYgJyVzJyDph43lkb3lkI3kuLogJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MTkxNQorIzogc2VxdWVuY2VyLmM6MTk0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmV2ZXJ0ICVzLi4uICVzIgogbXNnc3RyICLkuI3og73ov5jljp8gJXMuLi4gJXMiCiAKLSM6IHNlcXVlbmNlci5jOjE5MTYKKyM6IHNlcXVlbmNlci5jOjE5NDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGFwcGx5ICVzLi4uICVzIgogbXNnc3RyICLkuI3og73lupTnlKggJXMuLi4gJXMiCiAKLSM6IHNlcXVlbmNlci5jOjE5NzQKKyM6IHNlcXVlbmNlci5jOjE5NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHJvcHBpbmcgJXMgJXMgLS0gcGF0Y2ggY29udGVudHMgYWxyZWFkeSB1cHN0cmVhbVxuIgorbXNnc3RyICLkuKLlvIMgJXMgJXMgLS0g6KGl5LiB5YaF5a655bey5Zyo5LiK5ri4XG4iCisKKyM6IHNlcXVlbmNlci5jOjIwMTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0ICVzOiBmYWlsZWQgdG8gcmVhZCB0aGUgaW5kZXgiCiBtc2dzdHIgImdpdCAlc++8muaXoOazleivu+WPlue0ouW8lSIKIAotIzogc2VxdWVuY2VyLmM6MTk4MQorIzogc2VxdWVuY2VyLmM6MjAyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJnaXQgJXM6IGZhaWxlZCB0byByZWZyZXNoIHRoZSBpbmRleCIKIG1zZ3N0ciAiZ2l0ICVz77ya5peg5rOV5Yi35paw57Si5byVIgogCi0jOiBzZXF1ZW5jZXIuYzoyMDYyCisjOiBzZXF1ZW5jZXIuYzoyMTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRvZXMgbm90IGFjY2VwdCBhcmd1bWVudHM6ICclcyciCiBtc2dzdHIgIiVzIOS4jeaOpeWPl+WPguaVsO+8miclcyciCiAKLSM6IHNlcXVlbmNlci5jOjIwNzEKKyM6IHNlcXVlbmNlci5jOjIxMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAibWlzc2luZyBhcmd1bWVudHMgZm9yICVzIgogbXNnc3RyICLnvLrlsJEgJXMg55qE5Y+C5pWwIgogCi0jOiBzZXF1ZW5jZXIuYzoyMTMwCisjOiBzZXF1ZW5jZXIuYzoyMTQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJXMnIgorbXNnc3RyICLml6Dms5Xop6PmnpAgJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MjIwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGxpbmUgJWQ6ICUuKnMiCiBtc2dzdHIgIuaXoOaViOihjCAlZO+8miUuKnMiCiAKLSM6IHNlcXVlbmNlci5jOjIxMzgKKyM6IHNlcXVlbmNlci5jOjIyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90ICclcycgd2l0aG91dCBhIHByZXZpb3VzIGNvbW1pdCIKIG1zZ3N0ciAi5rKh5pyJ54i25o+Q5Lqk55qE5oOF5Ya15LiL5LiN6IO9ICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjIyMDkKKyM6IHNlcXVlbmNlci5jOjIyOTgKK21zZ2lkICJjYW5jZWxsaW5nIGEgY2hlcnJ5IHBpY2tpbmcgaW4gcHJvZ3Jlc3MiCittc2dzdHIgIuato+WcqOWPlua2iOS4gOS4qui/m+ihjOS4reeahOaLo+mAiSIKKworIzogc2VxdWVuY2VyLmM6MjMwNQorbXNnaWQgImNhbmNlbGxpbmcgYSByZXZlcnQgaW4gcHJvZ3Jlc3MiCittc2dzdHIgIuato+WcqOWPlua2iOS4gOS4qui/m+ihjOS4reeahOi/mOWOnyIKKworIzogc2VxdWVuY2VyLmM6MjM0OQogbXNnaWQgInBsZWFzZSBmaXggdGhpcyB1c2luZyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycuIgogbXNnc3RyICLor7fnlKggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIOadpeS/ruaUueOAgiIKIAotIzogc2VxdWVuY2VyLmM6MjIxMQorIzogc2VxdWVuY2VyLmM6MjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnVzYWJsZSBpbnN0cnVjdGlvbiBzaGVldDogJyVzJyIKIG1zZ3N0ciAi5LiN5Y+v55So55qE5oyH5Luk5riF5Y2V77yaJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6MjIxNgorIzogc2VxdWVuY2VyLmM6MjM1NgogbXNnaWQgIm5vIGNvbW1pdHMgcGFyc2VkLiIKIG1zZ3N0ciAi5rKh5pyJ6Kej5p6Q5o+Q5Lqk44CCIgogCi0jOiBzZXF1ZW5jZXIuYzoyMjI3CisjOiBzZXF1ZW5jZXIuYzoyMzY3CiBtc2dpZCAiY2Fubm90IGNoZXJyeS1waWNrIGR1cmluZyBhIHJldmVydC4iCiBtc2dzdHIgIuS4jeiDveWcqOWbnumAgOS4reaJp+ihjOaLo+mAieOAgiIKIAotIzogc2VxdWVuY2VyLmM6MjIyOQorIzogc2VxdWVuY2VyLmM6MjM2OQogbXNnaWQgImNhbm5vdCByZXZlcnQgZHVyaW5nIGEgY2hlcnJ5LXBpY2suIgogbXNnc3RyICLkuI3og73lnKjmi6PpgInkuK3miafooYzlm57pgIDjgIIiCiAKLSM6IHNlcXVlbmNlci5jOjIyOTkKKyM6IHNlcXVlbmNlci5jOjI0NDcKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgogbXNnc3RyICIlcyDnmoTlgLzml6DmlYjvvJolcyIKIAotIzogc2VxdWVuY2VyLmM6MjM4MAorIzogc2VxdWVuY2VyLmM6MjU0MAogbXNnaWQgInVudXNhYmxlIHNxdWFzaC1vbnRvIgogbXNnc3RyICLkuI3lj6/nlKjnmoQgc3F1YXNoLW9udG8iCiAKLSM6IHNlcXVlbmNlci5jOjIzOTYKKyM6IHNlcXVlbmNlci5jOjI1NTYKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG9wdGlvbnMgc2hlZXQ6ICclcyciCiBtc2dzdHIgIuagvOW8j+mUmeivr+eahOmAiemhuea4heWNle+8miclcyciCiAKLSM6IHNlcXVlbmNlci5jOjI0Nzkgc2VxdWVuY2VyLmM6NDAwNQorIzogc2VxdWVuY2VyLmM6MjY0NCBzZXF1ZW5jZXIuYzo0MzYxCiBtc2dpZCAiZW1wdHkgY29tbWl0IHNldCBwYXNzZWQiCiBtc2dzdHIgIuaPkOS+m+S6huepuueahOaPkOS6pOmbhiIKIAotIzogc2VxdWVuY2VyLmM6MjQ4NwotbXNnaWQgImEgY2hlcnJ5LXBpY2sgb3IgcmV2ZXJ0IGlzIGFscmVhZHkgaW4gcHJvZ3Jlc3MiCi1tc2dzdHIgIuS4gOS4quaLo+mAieaIlui/mOWOn+aTjeS9nOW3suWcqOi/m+ihjCIKKyM6IHNlcXVlbmNlci5jOjI2NjAKK21zZ2lkICJyZXZlcnQgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIKK21zZ3N0ciAi5LiA5Liq6L+Y5Y6f5pON5L2c5bey5Zyo6L+b6KGMIgogCi0jOiBzZXF1ZW5jZXIuYzoyNDg4Ci1tc2dpZCAidHJ5IFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgLS1xdWl0IHwgLS1hYm9ydClcIiIKLW1zZ3N0ciAi5bCd6K+VIFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgLS1xdWl0IHwgLS1hYm9ydClcIiIKKyM6IHNlcXVlbmNlci5jOjI2NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5IFwiZ2l0IHJldmVydCAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKK21zZ3N0ciAi5bCd6K+VIFwiZ2l0IHJldmVydCAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKIAotIzogc2VxdWVuY2VyLmM6MjQ5MQorIzogc2VxdWVuY2VyLmM6MjY2NQorbXNnaWQgImNoZXJyeS1waWNrIGlzIGFscmVhZHkgaW4gcHJvZ3Jlc3MiCittc2dzdHIgIuaLo+mAieaTjeS9nOW3suWcqOi/m+ihjCIKKworIzogc2VxdWVuY2VyLmM6MjY2NworIywgYy1mb3JtYXQKK21zZ2lkICJ0cnkgXCJnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAlcy0tYWJvcnQgfCAtLXF1aXQpXCIiCittc2dzdHIgIuWwneivlSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKKworIzogc2VxdWVuY2VyLmM6MjY4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHNlcXVlbmNlciBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAi5LiN6IO95Yib5bu65bqP5YiX55uu5b2VICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjI1MDUKKyM6IHNlcXVlbmNlci5jOjI2OTYKIG1zZ2lkICJjb3VsZCBub3QgbG9jayBIRUFEIgogbXNnc3RyICLkuI3og73plIHlrpogSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6MjU2MCBzZXF1ZW5jZXIuYzozNzYxCisjOiBzZXF1ZW5jZXIuYzoyNzU2IHNlcXVlbmNlci5jOjQwOTkKIG1zZ2lkICJubyBjaGVycnktcGljayBvciByZXZlcnQgaW4gcHJvZ3Jlc3MiCiBtc2dzdHIgIuaLo+mAieaIlui/mOWOn+aTjeS9nOW5tuacqui/m+ihjCIKIAotIzogc2VxdWVuY2VyLmM6MjU2MgorIzogc2VxdWVuY2VyLmM6Mjc1OCBzZXF1ZW5jZXIuYzoyNzY5CiBtc2dpZCAiY2Fubm90IHJlc29sdmUgSEVBRCIKIG1zZ3N0ciAi5LiN6IO96Kej5p6QIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjI1NjQgc2VxdWVuY2VyLmM6MjU5OQorIzogc2VxdWVuY2VyLmM6Mjc2MCBzZXF1ZW5jZXIuYzoyODA0CiBtc2dpZCAiY2Fubm90IGFib3J0IGZyb20gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iCiBtc2dzdHIgIuS4jeiDveS7juWwmuacquW7uueri+eahOWIhuaUr+e7iOatoiIKIAotIzogc2VxdWVuY2VyLmM6MjU4NSBidWlsdGluL2dyZXAuYzo3MjEKKyM6IHNlcXVlbmNlci5jOjI3OTAgYnVpbHRpbi9ncmVwLmM6NzI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBvcGVuICclcyciCiBtc2dzdHIgIuS4jeiDveaJk+W8gCAnJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTg3CisjOiBzZXF1ZW5jZXIuYzoyNzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICclcyc6ICVzIgogbXNnc3RyICLkuI3og73or7vlj5YgJyVzJ++8miVzIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTg4CisjOiBzZXF1ZW5jZXIuYzoyNzkzCiBtc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSIKIG1zZ3N0ciAi5oSP5aSW55qE5paH5Lu257uT5p2fIgogCi0jOiBzZXF1ZW5jZXIuYzoyNTk0CisjOiBzZXF1ZW5jZXIuYzoyNzk5CiAjLCBjLWZvcm1hdAogbXNnaWQgInN0b3JlZCBwcmUtY2hlcnJ5LXBpY2sgSEVBRCBmaWxlICclcycgaXMgY29ycnVwdCIKIG1zZ3N0ciAi5L+d5a2Y5ouj6YCJ5o+Q5Lqk5YmN55qEIEhFQUQg5paH5Lu2ICclcycg5o2f5Z2PIgogCi0jOiBzZXF1ZW5jZXIuYzoyNjA1CisjOiBzZXF1ZW5jZXIuYzoyODEwCiBtc2dpZCAiWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFELiBOb3QgcmV3aW5kaW5nLCBjaGVjayB5b3VyIEhFQUQhIgogbXNnc3RyICLmgqjlpb3lg4/np7vliqjkuoYgSEVBROOAguacquiDveWbnumAgO+8jOajgOafpeaCqOeahCBIRUFE77yBIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzA5IHNlcXVlbmNlci5jOjM2NzkKKyM6IHNlcXVlbmNlci5jOjI4NTEKK21zZ2lkICJubyByZXZlcnQgaW4gcHJvZ3Jlc3MiCittc2dzdHIgIuayoeacieato+WcqOi/m+ihjOeahOi/mOWOnyIKKworIzogc2VxdWVuY2VyLmM6Mjg1OQorbXNnaWQgIm5vIGNoZXJyeS1waWNrIGluIHByb2dyZXNzIgorbXNnc3RyICLmsqHmnInmraPlnKjov5vooYznmoTmi6PpgIkiCisKKyM6IHNlcXVlbmNlci5jOjI4NjkKK21zZ2lkICJmYWlsZWQgdG8gc2tpcCB0aGUgY29tbWl0IgorbXNnc3RyICLml6Dms5Xot7Pov4fov5nkuKrmj5DkuqQiCisKKyM6IHNlcXVlbmNlci5jOjI4NzYKK21zZ2lkICJ0aGVyZSBpcyBub3RoaW5nIHRvIHNraXAiCittc2dzdHIgIuayoeacieimgei3s+i/h+eahCIKKworIzogc2VxdWVuY2VyLmM6Mjg3OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaGF2ZSB5b3UgY29tbWl0dGVkIGFscmVhZHk/XG4iCisidHJ5IFwiZ2l0ICVzIC0tY29udGludWVcIiIKK21zZ3N0ciAiIgorIuaCqOW3sue7j+aPkOS6pOS6huS5iO+8n1xuIgorIuivleivlSBcImdpdCAlcyAtLWNvbnRpbnVlXCIiCisKKyM6IHNlcXVlbmNlci5jOjMwMDMgc2VxdWVuY2VyLmM6NDAxMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgdXBkYXRlICVzIgogbXNnc3RyICLkuI3og73mm7TmlrAgJXMiCiAKLSM6IHNlcXVlbmNlci5jOjI3NDcgc2VxdWVuY2VyLmM6MzY1OQorIzogc2VxdWVuY2VyLmM6MzA0MiBzZXF1ZW5jZXIuYzozOTkxCiBtc2dpZCAiY2Fubm90IHJlYWQgSEVBRCIKIG1zZ3N0ciAi5LiN6IO96K+75Y+WIEhFQUQiCiAKLSM6IHNlcXVlbmNlci5jOjI3NjIKKyM6IHNlcXVlbmNlci5jOjMwNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNvcHkgJyVzJyB0byAnJXMnIgogbXNnc3RyICLml6Dms5Xmi7fotJ0gJyVzJyDoh7MgJyVzJyIKIAotIzogc2VxdWVuY2VyLmM6Mjc3MAorIzogc2VxdWVuY2VyLmM6MzA2NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGNhbiBhbWVuZCB0aGUgY29tbWl0IG5vdywgd2l0aFxuIgpAQCAtNTExOCwyOCArNzA1NSwyMyBAQAogIlxuIgogIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IHNlcXVlbmNlci5jOjI3ODAKKyM6IHNlcXVlbmNlci5jOjMwNzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICVzLi4uICUuKnMiCiBtc2dzdHIgIuS4jeiDveW6lOeUqCAlcy4uLiAlLipzIgogCi0jOiBzZXF1ZW5jZXIuYzoyNzg3CisjOiBzZXF1ZW5jZXIuYzozMDg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBtZXJnZSAlLipzIgogbXNnc3RyICLkuI3og73lkIjlubYgJS4qcyIKIAotIzogc2VxdWVuY2VyLmM6Mjc5OCBzZXF1ZW5jZXIuYzoyODAyIGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDAKKyM6IHNlcXVlbmNlci5jOjMwOTggc2VxdWVuY2VyLmM6MzEwMiBidWlsdGluL2RpZmZ0b29sLmM6NjQxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBjb3B5ICclcycgdG8gJyVzJyIKIG1zZ3N0ciAi5LiN6IO95ou36LSdICclcycg6IezICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjI4MjQgc2VxdWVuY2VyLmM6MzI0MiBidWlsdGluL3JlYmFzZS5jOjU4MCBidWlsdGluL3JlYmFzZS5jOjEwMTkKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTM3MiBidWlsdGluL3JlYmFzZS5jOjE0MjYKLW1zZ2lkICJjb3VsZCBub3QgcmVhZCBpbmRleCIKLW1zZ3N0ciAi5LiN6IO96K+75Y+W57Si5byVIgotCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IHNlcXVlbmNlci5jOjI4MjkKKyM6IHNlcXVlbmNlci5jOjMxMjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4ZWN1dGlvbiBmYWlsZWQ6ICVzXG4iCkBAIC01MTU0LDExICs3MDg2LDExIEBACiAiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKICJcbiIKIAotIzogc2VxdWVuY2VyLmM6MjgzNQorIzogc2VxdWVuY2VyLmM6MzEzNQogbXNnaWQgImFuZCBtYWRlIGNoYW5nZXMgdG8gdGhlIGluZGV4IGFuZC9vciB0aGUgd29ya2luZyB0cmVlXG4iCiBtc2dzdHIgIuW5tuS4lOS/ruaUuee0ouW8leWSjC/miJblt6XkvZzljLpcbiIKIAotIzogc2VxdWVuY2VyLmM6Mjg0MQorIzogc2VxdWVuY2VyLmM6MzE0MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZXhlY3V0aW9uIHN1Y2NlZWRlZDogJXNcbiIKQEAgLTUxNzUsNzYgKzcxMDcsNzIgQEAKICIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogIlxuIgogCi0jOiBzZXF1ZW5jZXIuYzoyOTAyCisjOiBzZXF1ZW5jZXIuYzozMjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImlsbGVnYWwgbGFiZWwgbmFtZTogJyUuKnMnIgogbXNnc3RyICLpnZ7ms5XnmoTmoIfnrb7lkI3np7DvvJonJS4qcyciCiAKLSM6IHNlcXVlbmNlci5jOjI5NTQKKyM6IHNlcXVlbmNlci5jOjMyNTYKIG1zZ2lkICJ3cml0aW5nIGZha2Ugcm9vdCBjb21taXQiCiBtc2dzdHIgIuWGmeS8quagueaPkOS6pCIKIAotIzogc2VxdWVuY2VyLmM6Mjk1OQorIzogc2VxdWVuY2VyLmM6MzI2MQogbXNnaWQgIndyaXRpbmcgc3F1YXNoLW9udG8iCiBtc2dzdHIgIuWGmeWFpSBzcXVhc2gtb250byIKIAotIzogc2VxdWVuY2VyLmM6Mjk5NyBidWlsdGluL3JlYmFzZS5jOjU4NSBidWlsdGluL3JlYmFzZS5jOjU5MQorIzogc2VxdWVuY2VyLmM6MzI5OSBidWlsdGluL3JlYmFzZS5jOjg4MCBidWlsdGluL3JlYmFzZS5jOjg4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZmluZCB0cmVlIG9mICVzIgogbXNnc3RyICLml6Dms5Xmib7liLAgJXMg5oyH5ZCR55qE5qCR44CCIgogCi0jOiBzZXF1ZW5jZXIuYzozMDE1IGJ1aWx0aW4vcmViYXNlLmM6NjA0Ci1tc2dpZCAiY291bGQgbm90IHdyaXRlIGluZGV4IgotbXNnc3RyICLkuI3og73lhpnlhaXntKLlvJUiCi0KLSM6IHNlcXVlbmNlci5jOjMwNDIKKyM6IHNlcXVlbmNlci5jOjMzNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlc29sdmUgJyVzJyIKIG1zZ3N0ciAi5peg5rOV6Kej5p6QICclcyciCiAKLSM6IHNlcXVlbmNlci5jOjMwNjgKKyM6IHNlcXVlbmNlci5jOjMzNzUKIG1zZ2lkICJjYW5ub3QgbWVyZ2Ugd2l0aG91dCBhIGN1cnJlbnQgcmV2aXNpb24iCiBtc2dzdHIgIuayoeacieW9k+WJjeeJiOacrOS4jeiDveWQiOW5tiIKIAotIzogc2VxdWVuY2VyLmM6MzA5MAorIzogc2VxdWVuY2VyLmM6MzM5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJyUuKnMnIgogbXNnc3RyICLml6Dms5Xop6PmnpAgJyUuKnMnIgogCi0jOiBzZXF1ZW5jZXIuYzozMDk5CisjOiBzZXF1ZW5jZXIuYzozNDA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gbWVyZ2U6ICclLipzJyIKIG1zZ3N0ciAi5peg5Y+v55So5ZCI5bm277yaJyUuKnMnIgogCi0jOiBzZXF1ZW5jZXIuYzozMTExCisjOiBzZXF1ZW5jZXIuYzozNDE4CiBtc2dpZCAib2N0b3B1cyBtZXJnZSBjYW5ub3QgYmUgZXhlY3V0ZWQgb24gdG9wIG9mIGEgW25ldyByb290XSIKIG1zZ3N0ciAi56ug6bG85ZCI5bm25LiN6IO95Zyo5LiA5Liq5paw55qE5qC55o+Q5Lqk5LiK5omn6KGMIgogCi0jOiBzZXF1ZW5jZXIuYzozMTI2CisjOiBzZXF1ZW5jZXIuYzozNDM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBnZXQgY29tbWl0IG1lc3NhZ2Ugb2YgJyVzJyIKIG1zZ3N0ciAi5LiN6IO96I635Y+WICclcycg55qE5o+Q5Lqk6K+05piOIgogCi0jOiBzZXF1ZW5jZXIuYzozMjc0CisjOiBzZXF1ZW5jZXIuYzozNTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBldmVuIGF0dGVtcHQgdG8gbWVyZ2UgJyUuKnMnIgogbXNnc3RyICLnlJroh7PkuI3og73lsJ3or5XlkIjlubYgJyUuKnMnIgogCi0jOiBzZXF1ZW5jZXIuYzozMjkwCisjOiBzZXF1ZW5jZXIuYzozNjEwCiBtc2dpZCAibWVyZ2U6IFVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKIG1zZ3N0ciAi5ZCI5bm277ya5peg5rOV5YaZ5YWl5paw57Si5byV5paH5Lu2IgogCi0jOiBzZXF1ZW5jZXIuYzozMzU4IGJ1aWx0aW4vcmViYXNlLmM6MjY4CisjOiBzZXF1ZW5jZXIuYzozNjc5IGJ1aWx0aW4vcmViYXNlLmM6NzM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkFwcGxpZWQgYXV0b3N0YXNoLlxuIgogbXNnc3RyICLlt7LlupTnlKggYXV0b3N0YXNo44CCXG4iCiAKLSM6IHNlcXVlbmNlci5jOjMzNzAKKyM6IHNlcXVlbmNlci5jOjM2OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0b3JlICVzIgogbXNnc3RyICLkuI3og73lrZjlgqggJXMiCiAKLSM6IHNlcXVlbmNlci5jOjMzNzMgYnVpbHRpbi9yZWJhc2UuYzoyODQKKyM6IHNlcXVlbmNlci5jOjM2OTQgYnVpbHRpbi9yZWJhc2UuYzo3NTMgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjExMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQXBwbHlpbmcgYXV0b3N0YXNoIHJlc3VsdGVkIGluIGNvbmZsaWN0cy5cbiIKQEAgLTUyNTUsMzEgKzcxODMsMjYgQEAKICLmgqjnmoTkv67mlLnlronlhajlnLDkv53lrZjlnKjotK7ol4/ljLrkuK3jgIJcbiIKICLmgqjlj6/ku6XlnKjku7vkvZXml7blgJnov5DooYwgXCJnaXQgc3Rhc2ggcG9wXCIg5oiWIFwiZ2l0IHN0YXNoIGRyb3BcIuOAglxuIgogCi0jOiBzZXF1ZW5jZXIuYzozNDI3Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBjaGVja291dCAlcyIKLW1zZ3N0ciAi5LiN6IO95qOA5Ye6ICVzIgotCi0jOiBzZXF1ZW5jZXIuYzozNDQxCisjOiBzZXF1ZW5jZXIuYzozNzU1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBub3QgYSB2YWxpZCBPSUQiCi1tc2dzdHIgIiVz77ya5LiN5piv5LiA5Liq5pyJ5pWI55qEIE9JRCIKK21zZ3N0ciAiJXPvvJrkuI3mmK/kuIDkuKrmnInmlYjnmoTlr7nosaEgSUQiCiAKLSM6IHNlcXVlbmNlci5jOjM0NDYgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcyNAorIzogc2VxdWVuY2VyLmM6Mzc2MCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzc5CiBtc2dpZCAiY291bGQgbm90IGRldGFjaCBIRUFEIgogbXNnc3RyICLkuI3og73liIbnprvlpLTmjIfpkogiCiAKLSM6IHNlcXVlbmNlci5jOjM0NjEKKyM6IHNlcXVlbmNlci5jOjM3NzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCBIRUFEXG4iCiBtc2dzdHIgIuWBnOatouWcqCBIRUFEXG4iCiAKLSM6IHNlcXVlbmNlci5jOjM0NjMKKyM6IHNlcXVlbmNlci5jOjM3NzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3RvcHBlZCBhdCAlc1xuIgogbXNnc3RyICLlgZzmraLlnKggJXNcbiIKIAotIzogc2VxdWVuY2VyLmM6MzQ3MQorIzogc2VxdWVuY2VyLmM6Mzc4NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IGV4ZWN1dGUgdGhlIHRvZG8gY29tbWFuZFxuIgpAQCAtNTI5OSw0OCArNzIyMiw0OCBAQAogIiAgICBnaXQgcmViYXNlIC0tZWRpdC10b2RvXG4iCiAiICAgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgogCi0jOiBzZXF1ZW5jZXIuYzozNTQzCisjOiBzZXF1ZW5jZXIuYzozODY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN0b3BwZWQgYXQgJXMuLi4gICUuKnNcbiIKIG1zZ3N0ciAi5YGc5q2i5ZyoICVzLi4uICUuKnNcbiIKIAotIzogc2VxdWVuY2VyLmM6MzYyMgorIzogc2VxdWVuY2VyLmM6Mzk0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIGNvbW1hbmQgJWQiCiBtc2dzdHIgIuacquefpeWRveS7pCAlZCIKIAotIzogc2VxdWVuY2VyLmM6MzY2NworIzogc2VxdWVuY2VyLmM6Mzk5OQogbXNnaWQgImNvdWxkIG5vdCByZWFkIG9yaWctaGVhZCIKIG1zZ3N0ciAi5LiN6IO96K+75Y+WIG9yaWctaGVhZCIKIAotIzogc2VxdWVuY2VyLmM6MzY3MiBzZXF1ZW5jZXIuYzo0NzQxCisjOiBzZXF1ZW5jZXIuYzo0MDA0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgJ29udG8nIgogbXNnc3RyICLkuI3og73or7vlj5YgJ29udG8nIgogCi0jOiBzZXF1ZW5jZXIuYzozNjg2CisjOiBzZXF1ZW5jZXIuYzo0MDE4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB1cGRhdGUgSEVBRCB0byAlcyIKIG1zZ3N0ciAi5LiN6IO95pu05pawIEhFQUQg5Li6ICVzIgogCi0jOiBzZXF1ZW5jZXIuYzozNzcyCisjOiBzZXF1ZW5jZXIuYzo0MTExCiBtc2dpZCAiY2Fubm90IHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIuS4jeiDveWPmOWfuu+8muaCqOacieacquaaguWtmOeahOWPmOabtOOAgiIKIAotIzogc2VxdWVuY2VyLmM6Mzc4MQorIzogc2VxdWVuY2VyLmM6NDEyMAogbXNnaWQgImNhbm5vdCBhbWVuZCBub24tZXhpc3RpbmcgY29tbWl0IgogbXNnc3RyICLkuI3og73kv67ooaXkuI3lrZjlnKjnmoTmj5DkuqQiCiAKLSM6IHNlcXVlbmNlci5jOjM3ODMKKyM6IHNlcXVlbmNlci5jOjQxMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBmaWxlOiAnJXMnIgogbXNnc3RyICLml6DmlYjmlofku7bvvJonJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzozNzg1CisjOiBzZXF1ZW5jZXIuYzo0MTI0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29udGVudHM6ICclcyciCiBtc2dzdHIgIuaXoOaViOWGheWuue+8miclcyciCiAKLSM6IHNlcXVlbmNlci5jOjM3ODgKKyM6IHNlcXVlbmNlci5jOjQxMjcKIG1zZ2lkICIiCiAiXG4iCiAiWW91IGhhdmUgdW5jb21taXR0ZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS4gUGxlYXNlLCBjb21taXQgdGhlbVxuIgpAQCAtNTM0OSwxMjEgKzcyNzIsNTkgQEAKICJcbiIKICLmgqjnmoTlt6XkvZzljLrkuK3mnInmnKrmj5DkuqTnmoTlj5jmm7TjgILor7flhYjmj5DkuqTnhLblkI7lho3mrKHov5DooYwgJ2dpdCByZWJhc2UgLS1jb250aW51ZSfjgIIiCiAKLSM6IHNlcXVlbmNlci5jOjM4MjQgc2VxdWVuY2VyLmM6Mzg2MgorIzogc2VxdWVuY2VyLmM6NDE2MyBzZXF1ZW5jZXIuYzo0MjAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBmaWxlOiAnJXMnIgogbXNnc3RyICLkuI3og73lhpnlhaXmlofku7bvvJonJXMnIgogCi0jOiBzZXF1ZW5jZXIuYzozODc3CisjOiBzZXF1ZW5jZXIuYzo0MjE3CiBtc2dpZCAiY291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgogbXNnc3RyICLkuI3og73liKDpmaQgQ0hFUlJZX1BJQ0tfSEVBRCIKIAotIzogc2VxdWVuY2VyLmM6Mzg4NAorIzogc2VxdWVuY2VyLmM6NDIyNAogbXNnaWQgImNvdWxkIG5vdCBjb21taXQgc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICLkuI3og73mj5DkuqTmmoLlrZjnmoTkv67mlLnjgIIiCiAKLSM6IHNlcXVlbmNlci5jOjM5ODIKKyM6IHNlcXVlbmNlci5jOjQzMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGNhbid0IGNoZXJyeS1waWNrIGEgJXMiCiBtc2dzdHIgIiVz77ya5LiN6IO95ouj6YCJ5LiA5LiqJXMiCiAKLSM6IHNlcXVlbmNlci5jOjM5ODYKKyM6IHNlcXVlbmNlci5jOjQzNDIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGJhZCByZXZpc2lvbiIKIG1zZ3N0ciAiJXPvvJrplJnor6/nmoTniYjmnKwiCiAKLSM6IHNlcXVlbmNlci5jOjQwMjEKKyM6IHNlcXVlbmNlci5jOjQzNzcKIG1zZ2lkICJjYW4ndCByZXZlcnQgYXMgaW5pdGlhbCBjb21taXQiCiBtc2dzdHIgIuS4jeiDveS9nOS4uuWIneWni+aPkOS6pOWbnumAgCIKIAotIzogc2VxdWVuY2VyLmM6NDQ2NgorIzogc2VxdWVuY2VyLmM6NDg0NgogbXNnaWQgIm1ha2Vfc2NyaXB0OiB1bmhhbmRsZWQgb3B0aW9ucyIKIG1zZ3N0ciAibWFrZV9zY3JpcHTvvJrmnInmnKrog73lpITnkIbnmoTpgInpobkiCiAKLSM6IHNlcXVlbmNlci5jOjQ0NjkKKyM6IHNlcXVlbmNlci5jOjQ4NDkKIG1zZ2lkICJtYWtlX3NjcmlwdDogZXJyb3IgcHJlcGFyaW5nIHJldmlzaW9ucyIKIG1zZ3N0ciAibWFrZV9zY3JpcHTvvJrlh4blpIfniYjmnKzml7bplJnor68iCiAKLSM6IHNlcXVlbmNlci5jOjQ1MDkgc2VxdWVuY2VyLmM6NDU2NSBzZXF1ZW5jZXIuYzo0ODQwCi0jLCBjLWZvcm1hdAotbXNnaWQgInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIKLW1zZ3N0ciAi5LiN5Y+v55So55qE5b6F5Yqe5YiX6KGo77yaJyVzJyIKLQotIzogc2VxdWVuY2VyLmM6NDYyMAotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0idW5yZWNvZ25pemVkIHNldHRpbmcgJXMgZm9yIG9wdGlvbiByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4gSWdub3JpbmcuIgotbXNnc3RyICLpgInpobkgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2sg55qE5YC8ICVzIOaXoOazleivhuWIq+OAguW3suW/veeVpeOAgiIKLQotIzogc2VxdWVuY2VyLmM6NDY5MAotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuXG4iCi0iRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iCi1tc2dzdHIgIiIKLSLorablkYrvvJrkuIDkupvmj5DkuqTlj6/og73ooqvmhI/lpJbkuKLlvIPjgIJcbiIKLSLkuKLlvIPnmoTmj5DkuqTvvIjku47mlrDliLDml6fvvInvvJpcbiIKLQotIzogc2VxdWVuY2VyLmM6NDY5NwotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iVG8gYXZvaWQgdGhpcyBtZXNzYWdlLCB1c2UgXCJkcm9wXCIgdG8gZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuXG4iCi0iXG4iCi0iVXNlICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyB0byBjaGFuZ2UgdGhlIGxldmVsIG9mICIKLSJ3YXJuaW5ncy5cbiIKLSJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCi0iXG4iCi1tc2dzdHIgIiIKLSLkuLrpgb/lhY3ov5nmnaHkv6Hmga/vvIzkvb/nlKggXCJkcm9wXCIg5oyH5Luk5pi+5byP5Zyw5Yig6Zmk5LiA5Liq5o+Q5Lqk44CCXG4iCi0iXG4iCi0i5L2/55SoICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyDmnaXkv67mlLnorablkYrnuqfliKvjgIJcbiIKLSLlj6/pgInlgLzmnInvvJppZ25vcmXjgIF3YXJu44CBZXJyb3LjgIJcbiIKLSJcbiIKLQotIzogc2VxdWVuY2VyLmM6NDcxMAotIywgYy1mb3JtYXQKLW1zZ2lkICIiCi0iWW91IGNhbiBmaXggdGhpcyB3aXRoICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyBhbmQgdGhlbiBydW4gJ2dpdCByZWJhc2UgLS0iCi0iY29udGludWUnLlxuIgotIk9yIHlvdSBjYW4gYWJvcnQgdGhlIHJlYmFzZSB3aXRoICdnaXQgcmViYXNlIC0tYWJvcnQnLlxuIgotbXNnc3RyICIiCi0i5oKo5Y+v5Lul55SoICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyDkv67mraPvvIznhLblkI7miafooYwgJ2dpdCByZWJhc2UgLS1jb250aW51ZSfjgIJcbiIKLSLmiJbogIXmgqjlj6/ku6XnlKggJ2dpdCByZWJhc2UgLS1hYm9ydCcg57uI5q2i5Y+Y5Z+644CCXG4iCi0KLSM6IHNlcXVlbmNlci5jOjQ4NDggc2VxdWVuY2VyLmM6NDg4NgorIzogc2VxdWVuY2VyLmM6NTA4MyBzZXF1ZW5jZXIuYzo1MTAwCiBtc2dpZCAibm90aGluZyB0byBkbyIKIG1zZ3N0ciAi5peg5LqL5Y+v5YGaIgogCi0jOiBzZXF1ZW5jZXIuYzo0ODUyCi0jLCBjLWZvcm1hdAotbXNnaWQgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kKSIKLW1zZ2lkX3BsdXJhbCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmRzKSIKLW1zZ3N0clswXSAi5Y+Y5Z+6ICVzIOWIsCAlc++8iCVkIOS4quaPkOS6pO+8iSIKLW1zZ3N0clsxXSAi5Y+Y5Z+6ICVzIOWIsCAlc++8iCVkIOS4quaPkOS6pO+8iSIKLQotIzogc2VxdWVuY2VyLmM6NDg2NAotIywgYy1mb3JtYXQKLW1zZ2lkICJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcycuIgotbXNnc3RyICLkuI3og73mi7fotJ0gJyVzJyDoh7MgJyVzJ+OAgiIKLQotIzogc2VxdWVuY2VyLmM6NDg2OCBzZXF1ZW5jZXIuYzo0ODk3Ci1tc2dpZCAiY291bGQgbm90IHRyYW5zZm9ybSB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICLml6Dms5XmlLnlj5jlvoXlip7liJfooagiCi0KLSM6IHNlcXVlbmNlci5jOjQ5MDAKKyM6IHNlcXVlbmNlci5jOjUxMTkKIG1zZ2lkICJjb3VsZCBub3Qgc2tpcCB1bm5lY2Vzc2FyeSBwaWNrIGNvbW1hbmRzIgogbXNnc3RyICLml6Dms5Xot7Pov4fkuI3lv4XopoHnmoTmi6PpgIkiCiAKLSM6IHNlcXVlbmNlci5jOjQ5ODMKKyM6IHNlcXVlbmNlci5jOjUyMTMKIG1zZ2lkICJ0aGUgc2NyaXB0IHdhcyBhbHJlYWR5IHJlYXJyYW5nZWQuIgogbXNnc3RyICLohJrmnKzlt7Lnu4/ph43mlrDnvJbmjpLjgIIiCiAKLSM6IHNldHVwLmM6MTIzCisjOiBzZXR1cC5jOjEyNAogIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSIKLW1zZ3N0ciAiJyVzJyDlnKjku5PlupPkuYvlpJYiCittc2dpZCAiJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkgYXQgJyVzJyIKK21zZ3N0ciAiJyVzJyDlnKjkvY3kuo4gJyVzJyDnmoTku5PlupPkuYvlpJYiCiAKLSM6IHNldHVwLmM6MTcyCisjOiBzZXR1cC5jOjE3NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiJXM6IG5vIHN1Y2ggcGF0aCBpbiB0aGUgd29ya2luZyB0cmVlLlxuIgpAQCAtNTQ3Miw3ICs3MzMzLDcgQEAKICIlc++8muW3peS9nOWMuuS4reaXoOatpOi3r+W+hOOAglxuIgogIuS9v+eUqOWRveS7pCAnZ2l0IDzlkb3ku6Q+IC0tIDzot6/lvoQ+Li4uJyDmnaXmjIflrprmnKzlnLDkuI3lrZjlnKjnmoTot6/lvoTjgIIiCiAKLSM6IHNldHVwLmM6MTg1CisjOiBzZXR1cC5jOjE4OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IHVua25vd24gcmV2aXNpb24gb3IgcGF0aCBub3QgaW4gdGhlIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTU0ODMsMTIgKzczNDQsMTIgQEAKICLkvb/nlKggJy0tJyDmnaXliIbpmpTniYjmnKzlkozot6/lvoTvvIzkvovlpoLvvJpcbiIKICInZ2l0IDzlkb3ku6Q+IFs854mI5pysPi4uLl0gLS0gWzzmlofku7Y+Li4uXSciCiAKLSM6IHNldHVwLmM6MjM0CisjOiBzZXR1cC5jOjI1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJvcHRpb24gJyVzJyBtdXN0IGNvbWUgYmVmb3JlIG5vbi1vcHRpb24gYXJndW1lbnRzIgogbXNnc3RyICLpgInpobkgJyVzJyDlv4XpobvlnKjlhbbku5bpnZ7pgInpobnlj4LmlbDkuYvliY0iCiAKLSM6IHNldHVwLmM6MjUzCisjOiBzZXR1cC5jOjI3MwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiYW1iaWd1b3VzIGFyZ3VtZW50ICclcyc6IGJvdGggcmV2aXNpb24gYW5kIGZpbGVuYW1lXG4iCkBAIC01NDk5LDkyICs3MzYwLDkyIEBACiAi5L2/55SoICctLScg5p2l5YiG6ZqU54mI5pys5ZKM6Lev5b6E77yM5L6L5aaC77yaXG4iCiAiJ2dpdCA85ZG95LukPiBbPOeJiOacrD4uLi5dIC0tIFs85paH5Lu2Pi4uLl0nIgogCi0jOiBzZXR1cC5jOjM4OQorIzogc2V0dXAuYzo0MDkKIG1zZ2lkICJ1bmFibGUgdG8gc2V0IHVwIHdvcmsgdHJlZSB1c2luZyBpbnZhbGlkIGNvbmZpZyIKIG1zZ3N0ciAi5peg5rOV5L2/55So5peg5pWI6YWN572u5p2l5Yib5bu65bel5L2c5Yy6IgogCi0jOiBzZXR1cC5jOjM5MworIzogc2V0dXAuYzo0MTMKIG1zZ2lkICJ0aGlzIG9wZXJhdGlvbiBtdXN0IGJlIHJ1biBpbiBhIHdvcmsgdHJlZSIKIG1zZ3N0ciAi6K+l5pON5L2c5b+F6aG75Zyo5LiA5Liq5bel5L2c5Yy65Lit6L+Q6KGMIgogCi0jOiBzZXR1cC5jOjUyNworIzogc2V0dXAuYzo1NTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXhwZWN0ZWQgZ2l0IHJlcG8gdmVyc2lvbiA8PSAlZCwgZm91bmQgJWQiCiBtc2dzdHIgIuacn+acmyBnaXQg5LuT5bqT54mI5pysIDw9ICVk77yM5Y205b6X5YiwICVkIgogCi0jOiBzZXR1cC5jOjUzNQorIzogc2V0dXAuYzo1NjcKIG1zZ2lkICJ1bmtub3duIHJlcG9zaXRvcnkgZXh0ZW5zaW9ucyBmb3VuZDoiCiBtc2dzdHIgIuWPkeeOsOacquefpeeahOS7k+W6k+aJqeWxle+8miIKIAotIzogc2V0dXAuYzo1NTQKKyM6IHNldHVwLmM6NTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgImVycm9yIG9wZW5pbmcgJyVzJyIKIG1zZ3N0ciAi5omT5byAICclcycg5Ye66ZSZIgogCi0jOiBzZXR1cC5jOjU1NgorIzogc2V0dXAuYzo1ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAidG9vIGxhcmdlIHRvIGJlIGEgLmdpdCBmaWxlOiAnJXMnIgogbXNnc3RyICLmlofku7blpKrlpKfvvIzml6Dms5XkvZzkuLogLmdpdCDmlofku7bvvJonJXMnIgogCi0jOiBzZXR1cC5jOjU1OAorIzogc2V0dXAuYzo1OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXJyb3IgcmVhZGluZyAlcyIKIG1zZ3N0ciAi6K+75Y+WICVzIOWHuumUmSIKIAotIzogc2V0dXAuYzo1NjAKKyM6IHNldHVwLmM6NTkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgZ2l0ZmlsZSBmb3JtYXQ6ICVzIgogbXNnc3RyICLml6DmlYjnmoQgZ2l0ZmlsZSDmoLzlvI/vvJolcyIKIAotIzogc2V0dXAuYzo1NjIKKyM6IHNldHVwLmM6NTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIHBhdGggaW4gZ2l0ZmlsZTogJXMiCiBtc2dzdHIgIuWcqCBnaXRmaWxlIOS4reayoeaciei3r+W+hO+8miVzIgogCi0jOiBzZXR1cC5jOjU2NAorIzogc2V0dXAuYzo1OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnk6ICVzIgogbXNnc3RyICLkuI3mmK/kuIDkuKogZ2l0IOS7k+W6k++8miVzIgogCi0jOiBzZXR1cC5jOjY2MworIzogc2V0dXAuYzo2OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyQlcycgdG9vIGJpZyIKIG1zZ3N0ciAiJyQlcycg5aSq5aSnIgogCi0jOiBzZXR1cC5jOjY3NworIzogc2V0dXAuYzo3MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnk6ICclcyciCiBtc2dzdHIgIuS4jeaYr+S4gOS4qiBnaXQg5LuT5bqT77yaJyVzJyIKIAotIzogc2V0dXAuYzo3MDYgc2V0dXAuYzo3MDggc2V0dXAuYzo3MzkKKyM6IHNldHVwLmM6NzM4IHNldHVwLmM6NzQwIHNldHVwLmM6NzcxCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjaGRpciB0byAnJXMnIgogbXNnc3RyICLkuI3og73liIfmjaLnm67lvZXliLAgJyVzJyIKIAotIzogc2V0dXAuYzo3MTEgc2V0dXAuYzo3Njcgc2V0dXAuYzo3Nzcgc2V0dXAuYzo4MTYgc2V0dXAuYzo4MjQgc2V0dXAuYzo4MzkKKyM6IHNldHVwLmM6NzQzIHNldHVwLmM6Nzk5IHNldHVwLmM6ODA5IHNldHVwLmM6ODQ4IHNldHVwLmM6ODU2CiBtc2dpZCAiY2Fubm90IGNvbWUgYmFjayB0byBjd2QiCiBtc2dzdHIgIuaXoOazlei/lOWbnuW9k+WJjeW3peS9nOebruW9lSIKIAotIzogc2V0dXAuYzo4MzcKLSMsIGMtZm9ybWF0Ci1tc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBvZiB0aGUgcGFyZW50IGRpcmVjdG9yaWVzKTogJXMiCi1tc2dzdHIgIuS4jeaYr+S4gOS4qiBnaXQg5LuT5bqT77yI5oiW6ICF5Lu75L2V54i255uu5b2V77yJ77yaJXMiCi0KLSM6IHNldHVwLmM6ODQ4CisjOiBzZXR1cC5jOjg3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RhdCAnJSpzJXMlcyciCiBtc2dzdHIgIuiOt+WPliAnJSpzJXMlcycg54q25oCB77yIc3RhdO+8ieWksei0pSIKIAotIzogc2V0dXAuYzoxMDc4CisjOiBzZXR1cC5jOjExMDgKIG1zZ2lkICJVbmFibGUgdG8gcmVhZCBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IgogbXNnc3RyICLkuI3og73or7vlj5blvZPliY3lt6XkvZznm67lvZUiCiAKLSM6IHNldHVwLmM6MTA5MCBzZXR1cC5jOjEwOTYKKyM6IHNldHVwLmM6MTExNyBzZXR1cC5jOjExMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoYW5nZSB0byAnJXMnIgogbXNnc3RyICLkuI3og73liIfmjaLliLAgJyVzJyIKIAotIzogc2V0dXAuYzoxMTA5CisjOiBzZXR1cC5jOjExMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBvZiB0aGUgcGFyZW50IGRpcmVjdG9yaWVzKTogJXMiCittc2dzdHIgIuS4jeaYr+S4gOS4qiBnaXQg5LuT5bqT77yI5oiW6ICF5Lu75L2V54i255uu5b2V77yJ77yaJXMiCisKKyM6IHNldHVwLmM6MTEzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBwYXJlbnQgdXAgdG8gbW91bnQgcG9pbnQgJXMpXG4iCkBAIC01NTkzLDcgKzc0NTQsNyBAQAogIuS4jeaYr+S4gOS4qiBnaXQg5LuT5bqT77yI5oiW6ICF55u06Iez5oyC6L2954K5ICVzIOeahOS7u+S9leeItuebruW9le+8iVxuIgogIuWBnOatouWcqOaWh+S7tuezu+e7n+i+ueeVjO+8iOacquiuvue9riBHSVRfRElTQ09WRVJZX0FDUk9TU19GSUxFU1lTVEVN77yJ44CCIgogCi0jOiBzZXR1cC5jOjExOTIKKyM6IHNldHVwLmM6MTI0NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicHJvYmxlbSB3aXRoIGNvcmUuc2hhcmVkUmVwb3NpdG9yeSBmaWxlbW9kZSB2YWx1ZSAoMCUuM28pLlxuIgpAQCAtNTYwMiwzNzEgKzc0NjMsNTg2IEBACiAi5Y+C5pWwIGNvcmUuc2hhcmVkUmVwb3NpdG9yeSDnmoTmlofku7blsZ7mgKflgLzmnInpl67popjvvIgwJS4zb++8ieOAglxuIgogIuaWh+S7tuWxnuS4u+W/hemhu+Wni+e7iOaLpeacieivu+WGmeadg+mZkOOAgiIKIAotIzogc2V0dXAuYzoxMjM1CisjOiBzZXR1cC5jOjEyODkKIG1zZ2lkICJvcGVuIC9kZXYvbnVsbCBvciBkdXAgZmFpbGVkIgogbXNnc3RyICLkuI3og73miZPlvIDmiJbogIXlpI3liLYgL2Rldi9udWxsIgogCi0jOiBzZXR1cC5jOjEyNTAKKyM6IHNldHVwLmM6MTMwNAogbXNnaWQgImZvcmsgZmFpbGVkIgogbXNnc3RyICJmb3JrIOWksei0pSIKIAotIzogc2V0dXAuYzoxMjU1CisjOiBzZXR1cC5jOjEzMDkKIG1zZ2lkICJzZXRzaWQgZmFpbGVkIgogbXNnc3RyICJzZXRzaWQg5aSx6LSlIgogCi0jOiBzaGExLWZpbGUuYzozODEKKyM6IHNoYTEtZmlsZS5jOjQ1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJvYmplY3QgZGlyZWN0b3J5ICVzIGRvZXMgbm90IGV4aXN0OyBjaGVjayAuZ2l0L29iamVjdHMvaW5mby9hbHRlcm5hdGVzIgogbXNnc3RyICLlr7nosaHnm67lvZUgJXMg5LiN5a2Y5Zyo77yM5qOA5p+lIC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiCiAKLSM6IHNoYTEtZmlsZS5jOjQzMgorIzogc2hhMS1maWxlLmM6NTAzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgYWx0ZXJuYXRlIG9iamVjdCBwYXRoOiAlcyIKIG1zZ3N0ciAi5peg5rOV6KeE6IyD5YyW5aSH55So5a+56LGh6Lev5b6E77yaJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjUwMworIzogc2hhMS1maWxlLmM6NTc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiBpZ25vcmluZyBhbHRlcm5hdGUgb2JqZWN0IHN0b3JlcywgbmVzdGluZyB0b28gZGVlcCIKIG1zZ3N0ciAiJXPvvJrlv73nlaXlpIfnlKjlr7nosaHlupPvvIzltYzlpZflpKrmt7EiCiAKLSM6IHNoYTEtZmlsZS5jOjUxMAorIzogc2hhMS1maWxlLmM6NTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgb2JqZWN0IGRpcmVjdG9yeTogJXMiCiBtc2dzdHIgIuaXoOazleinhOiMg+WMluWvueixoeebruW9lTogJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjU2NQorIzogc2hhMS1maWxlLmM6NjI1CiBtc2dpZCAidW5hYmxlIHRvIGZkb3BlbiBhbHRlcm5hdGVzIGxvY2tmaWxlIgogbXNnc3RyICLml6Dms5UgZmRvcGVuIOabv+aNoumUgeaWh+S7tiIKIAotIzogc2hhMS1maWxlLmM6NTgzCisjOiBzaGExLWZpbGUuYzo2NDMKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBhbHRlcm5hdGVzIGZpbGUiCiBtc2dzdHIgIuaXoOazleivu+WPluabv+S7o+aWh+S7tiIKIAotIzogc2hhMS1maWxlLmM6NTkwCisjOiBzaGExLWZpbGUuYzo2NTAKIG1zZ2lkICJ1bmFibGUgdG8gbW92ZSBuZXcgYWx0ZXJuYXRlcyBmaWxlIGludG8gcGxhY2UiCiBtc2dzdHIgIuaXoOazleWwhuaWsOeahOabv+S7o+aWh+S7tuenu+WKqOWIsOS9jSIKIAotIzogc2hhMS1maWxlLmM6NjI1CisjOiBzaGExLWZpbGUuYzo2ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICLot6/lvoQgJyVzJyDkuI3lrZjlnKgiCiAKLSM6IHNoYTEtZmlsZS5jOjY1MQorIzogc2hhMS1maWxlLmM6NzExCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgYXMgYSBsaW5rZWQgY2hlY2tvdXQgaXMgbm90IHN1cHBvcnRlZCB5ZXQuIgogbXNnc3RyICLlsJrkuI3mlK/mjIHlsIblj4LogIPku5PlupMgJyVzJyDkvZzkuLrkuIDkuKrpk77mjqXmo4Dlh7rjgIIiCiAKLSM6IHNoYTEtZmlsZS5jOjY1NworIzogc2hhMS1maWxlLmM6NzE3CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgbm90IGEgbG9jYWwgcmVwb3NpdG9yeS4iCiBtc2dzdHIgIuWPguiAg+S7k+W6kyAnJXMnIOS4jeaYr+S4gOS4quacrOWcsOS7k+W6k+OAgiIKIAotIzogc2hhMS1maWxlLmM6NjYzCisjOiBzaGExLWZpbGUuYzo3MjMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBpcyBzaGFsbG93IgogbXNnc3RyICLlj4LogIPku5PlupMgJyVzJyDmmK/kuIDkuKrmtYXlhYvpmoYiCiAKLSM6IHNoYTEtZmlsZS5jOjY3MQorIzogc2hhMS1maWxlLmM6NzMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZmVyZW5jZSByZXBvc2l0b3J5ICclcycgaXMgZ3JhZnRlZCIKIG1zZ3N0ciAi5Y+C6ICD5LuT5bqTICclcycg5bey6KKr56e75qSNIgogCi0jOiBzaGExLWZpbGUuYzo3ODEKKyM6IHNoYTEtZmlsZS5jOjc5MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGxpbmUgd2hpbGUgcGFyc2luZyBhbHRlcm5hdGUgcmVmczogJXMiCittc2dzdHIgIuino+aekOWkh+eUqOW8leeUqOaXtuaXoOaViOeahOihjO+8miVzIgorCisjOiBzaGExLWZpbGUuYzo5NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYXR0ZW1wdGluZyB0byBtbWFwICU8UFJJdU1BWD4gb3ZlciBsaW1pdCAlPFBSSXVNQVg+IgogbXNnc3RyICLlsJ3or5UgbW1hcCAlPFBSSXVNQVg+77yM6LaF6L+H5LqG5pyA5aSn5YC8ICU8UFJJdU1BWD4iCiAKLSM6IHNoYTEtZmlsZS5jOjgwNgorIzogc2hhMS1maWxlLmM6OTY0CiBtc2dpZCAibW1hcCBmYWlsZWQiCiBtc2dzdHIgIm1tYXAg5aSx6LSlIgogCi0jOiBzaGExLWZpbGUuYzo5NzMKKyM6IHNoYTEtZmlsZS5jOjExMjgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0IGZpbGUgJXMgaXMgZW1wdHkiCiBtc2dzdHIgIuWvueixoeaWh+S7tiAlcyDkuLrnqboiCiAKLSM6IHNoYTEtZmlsZS5jOjEwOTMgc2hhMS1maWxlLmM6MjIxNQorIzogc2hhMS1maWxlLmM6MTI2MyBzaGExLWZpbGUuYzoyNDQzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvcnJ1cHQgbG9vc2Ugb2JqZWN0ICclcyciCiBtc2dzdHIgIuaNn+Wdj+eahOadvuaVo+WvueixoSAnJXMnIgogCi0jOiBzaGExLWZpbGUuYzoxMDk1IHNoYTEtZmlsZS5jOjIyMTkKKyM6IHNoYTEtZmlsZS5jOjEyNjUgc2hhMS1maWxlLmM6MjQ0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJnYXJiYWdlIGF0IGVuZCBvZiBsb29zZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAi5p2+5pWj5a+56LGhICclcycg5ZCO6Z2i5pyJ5Z6D5Zy+5pWw5o2uIgogCi0jOiBzaGExLWZpbGUuYzoxMTM3CisjOiBzaGExLWZpbGUuYzoxMzA3CiBtc2dpZCAiaW52YWxpZCBvYmplY3QgdHlwZSIKIG1zZ3N0ciAi5peg5pWI55qE5a+56LGh57G75Z6LIgogCi0jOiBzaGExLWZpbGUuYzoxMjE5CisjOiBzaGExLWZpbGUuYzoxMzkxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgJXMgaGVhZGVyIHdpdGggLS1hbGxvdy11bmtub3duLXR5cGUiCiBtc2dzdHIgIuaXoOazleeUqCAtLWFsbG93LXVua25vd24tdHlwZSDlj4LmlbDop6PlvIAgJXMg5aS05L+h5oGvIgogCi0jOiBzaGExLWZpbGUuYzoxMjIyCisjOiBzaGExLWZpbGUuYzoxMzk0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgJXMgaGVhZGVyIgogbXNnc3RyICLml6Dms5Xop6PlvIAgJXMg5aS06YOoIgogCi0jOiBzaGExLWZpbGUuYzoxMjI4CisjOiBzaGExLWZpbGUuYzoxNDAwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIKIG1zZ3N0ciAi5peg5rOV55SoIC0tYWxsb3ctdW5rbm93bi10eXBlIOWPguaVsOino+aekCAlcyDlpLTkv6Hmga8iCiAKLSM6IHNoYTEtZmlsZS5jOjEyMzEKKyM6IHNoYTEtZmlsZS5jOjE0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciIKIG1zZ3N0ciAi5peg5rOV6Kej5p6QICVzIOWktOmDqCIKIAotIzogc2hhMS1maWxlLmM6MTQyMgorIzogc2hhMS1maWxlLmM6MTYyOQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBvYmplY3QgJXMiCiBtc2dzdHIgIuivu+WPluWvueixoSAlcyDlpLHotKUiCiAKLSM6IHNoYTEtZmlsZS5jOjE0MjYKKyM6IHNoYTEtZmlsZS5jOjE2MzMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwbGFjZW1lbnQgJXMgbm90IGZvdW5kIGZvciAlcyIKIG1zZ3N0ciAi5om+5LiN5YiwICUyJHMg55qE5pu/5LujICUxJHMiCiAKLSM6IHNoYTEtZmlsZS5jOjE0MzAKKyM6IHNoYTEtZmlsZS5jOjE2MzcKICMsIGMtZm9ybWF0CiBtc2dpZCAibG9vc2Ugb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCiBtc2dzdHIgIuadvuaVo+WvueixoSAlc++8iOS/neWtmOWcqCAlc++8ieW3suaNn+WdjyIKIAotIzogc2hhMS1maWxlLmM6MTQzNAorIzogc2hhMS1maWxlLmM6MTY0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrZWQgb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCiBtc2dzdHIgIuaJk+WMheWvueixoSAlc++8iOS/neWtmOWcqCAlc++8ieW3suaNn+WdjyIKIAotIzogc2hhMS1maWxlLmM6MTUzNgorIzogc2hhMS1maWxlLmM6MTc0NgogIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgc2hhMSBmaWxlbmFtZSAlcyIKLW1zZ3N0ciAi5peg5rOV5YaZ5YWlIHNoYTEg5paH5Lu25ZCNICVzIgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICVzIgorbXNnc3RyICLml6Dms5Xlhpnmlofku7YgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjE1NDMKKyM6IHNoYTEtZmlsZS5jOjE3NTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHNldCBwZXJtaXNzaW9uIHRvICclcyciCiBtc2dzdHIgIuaXoOazleS4uiAnJXMnIOiuvue9ruadg+mZkCIKIAotIzogc2hhMS1maWxlLmM6MTU1MAorIzogc2hhMS1maWxlLmM6MTc2MAogbXNnaWQgImZpbGUgd3JpdGUgZXJyb3IiCiBtc2dzdHIgIuaWh+S7tuWGmemUmeivryIKIAotIzogc2hhMS1maWxlLmM6MTU2OQotbXNnaWQgImVycm9yIHdoZW4gY2xvc2luZyBzaGExIGZpbGUiCi1tc2dzdHIgIuWFs+mXrSBzaGExIOaWh+S7tuaXtuWHuumUmSIKKyM6IHNoYTEtZmlsZS5jOjE3ODAKK21zZ2lkICJlcnJvciB3aGVuIGNsb3NpbmcgbG9vc2Ugb2JqZWN0IGZpbGUiCittc2dzdHIgIuWFs+mXreadvuaVo+WvueixoeaWh+S7tuaXtuWHuumUmSIKIAotIzogc2hhMS1maWxlLmM6MTYzNQorIzogc2hhMS1maWxlLmM6MTg0NQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnN1ZmZpY2llbnQgcGVybWlzc2lvbiBmb3IgYWRkaW5nIGFuIG9iamVjdCB0byByZXBvc2l0b3J5IGRhdGFiYXNlICVzIgogbXNnc3RyICLmnYPpmZDkuI3otrPvvIzml6Dms5XlnKjku5PlupPlr7nosaHlupMgJXMg5Lit5re75Yqg5a+56LGhIgogCi0jOiBzaGExLWZpbGUuYzoxNjM3CisjOiBzaGExLWZpbGUuYzoxODQ3CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZSIKIG1zZ3N0ciAi5peg5rOV5Yib5bu65Li05pe25paH5Lu2IgogCi0jOiBzaGExLWZpbGUuYzoxNjYxCi1tc2dpZCAidW5hYmxlIHRvIHdyaXRlIHNoYTEgZmlsZSIKLW1zZ3N0ciAi5peg5rOV5YaZ5YWlIHNoYTEg5paH5Lu2IgorIzogc2hhMS1maWxlLmM6MTg3MQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBsb29zZSBvYmplY3QgZmlsZSIKK21zZ3N0ciAi5LiN6IO95YaZ5p2+5pWj5a+56LGh5paH5Lu2IgogCi0jOiBzaGExLWZpbGUuYzoxNjY3CisjOiBzaGExLWZpbGUuYzoxODc3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBkZWZsYXRlIG5ldyBvYmplY3QgJXMgKCVkKSIKIG1zZ3N0ciAi5LiN6IO95Y6L57yp5paw5a+56LGhICVz77yIJWTvvIkiCiAKLSM6IHNoYTEtZmlsZS5jOjE2NzEKKyM6IHNoYTEtZmlsZS5jOjE4ODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVmbGF0ZUVuZCBvbiBvYmplY3QgJXMgZmFpbGVkICglZCkiCiBtc2dzdHIgIuWcqOWvueixoSAlcyDkuIrosIPnlKggZGVmbGF0ZUVuZCDlpLHotKXvvIglZO+8iSIKIAotIzogc2hhMS1maWxlLmM6MTY3NQorIzogc2hhMS1maWxlLmM6MTg4NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb25mdXNlZCBieSB1bnN0YWJsZSBvYmplY3Qgc291cmNlIGRhdGEgZm9yICVzIgogbXNnc3RyICLooqsgJXMg55qE5LiN56iz5a6a5a+56LGh5rqQ5pWw5o2u5pCe57OK5raC5LqGIgogCi0jOiBzaGExLWZpbGUuYzoxNjg1IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6OTE4CisjOiBzaGExLWZpbGUuYzoxODk1IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdXRpbWUoKSBvbiAlcyIKIG1zZ3N0ciAi5ZyoICVzIOS4iuiwg+eUqCB1dGltZSgpIOWksei0pSIKIAotIzogc2hhMS1maWxlLmM6MTc2MAorIzogc2hhMS1maWxlLmM6MTk3MgogIywgYy1mb3JtYXQKLW1zZ2lkICJjYW5ub3QgcmVhZCBzaGExX2ZpbGUgZm9yICVzIgotbXNnc3RyICLkuI3og73ku44gJXMg6K+75Y+WIHNoYTEg5paH5Lu2IgorbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCBmb3IgJXMiCittc2dzdHIgIuS4jeiDveivu+WPluWvueixoSAlcyIKIAotIzogc2hhMS1maWxlLmM6MTgwNQorIzogc2hhMS1maWxlLmM6MjAxMQogbXNnaWQgImNvcnJ1cHQgY29tbWl0IgogbXNnc3RyICLmjZ/lnY/nmoTmj5DkuqQiCiAKLSM6IHNoYTEtZmlsZS5jOjE4MTMKKyM6IHNoYTEtZmlsZS5jOjIwMTkKIG1zZ2lkICJjb3JydXB0IHRhZyIKIG1zZ3N0ciAi5o2f5Z2P55qE5qCH562+IgogCi0jOiBzaGExLWZpbGUuYzoxOTEyCisjOiBzaGExLWZpbGUuYzoyMTE5CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlYWQgZXJyb3Igd2hpbGUgaW5kZXhpbmcgJXMiCiBtc2dzdHIgIue0ouW8lSAlcyDml7bor7vlj5bplJnor68iCiAKLSM6IHNoYTEtZmlsZS5jOjE5MTUKKyM6IHNoYTEtZmlsZS5jOjIxMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAic2hvcnQgcmVhZCB3aGlsZSBpbmRleGluZyAlcyIKIG1zZ3N0ciAi57Si5byVICVzIOaXtuivu+WFpeS4jeWujOaVtCIKIAotIzogc2hhMS1maWxlLmM6MTk4OCBzaGExLWZpbGUuYzoxOTk3CisjOiBzaGExLWZpbGUuYzoyMTk1IHNoYTEtZmlsZS5jOjIyMDUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IGZhaWxlZCB0byBpbnNlcnQgaW50byBkYXRhYmFzZSIKIG1zZ3N0ciAiJXPvvJrmj5LlhaXmlbDmja7lupPlpLHotKUiCiAKLSM6IHNoYTEtZmlsZS5jOjIwMDMKKyM6IHNoYTEtZmlsZS5jOjIyMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXM6IHVuc3VwcG9ydGVkIGZpbGUgdHlwZSIKIG1zZ3N0ciAiJXPvvJrkuI3mlK/mjIHnmoTmlofku7bnsbvlnosiCiAKLSM6IHNoYTEtZmlsZS5jOjIwMjcKKyM6IHNoYTEtZmlsZS5jOjIyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgb2JqZWN0IgogbXNnc3RyICIlcyDkuI3mmK/kuIDkuKrmnInmlYjnmoTlr7nosaEiCiAKLSM6IHNoYTEtZmlsZS5jOjIwMjkKKyM6IHNoYTEtZmlsZS5jOjIyMzcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgJyVzJyBvYmplY3QiCiBtc2dzdHIgIiVzIOS4jeaYr+S4gOS4quacieaViOeahCAnJXMnIOWvueixoSIKIAotIzogc2hhMS1maWxlLmM6MjA1NiBidWlsdGluL2luZGV4LXBhY2suYzoxNTQKKyM6IHNoYTEtZmlsZS5jOjIyNjQgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU1CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIgogbXNnc3RyICLkuI3og73miZPlvIAgJXMiCiAKLSM6IHNoYTEtZmlsZS5jOjIyMjYgc2hhMS1maWxlLmM6MjI3OAorIzogc2hhMS1maWxlLmM6MjQ1NCBzaGExLWZpbGUuYzoyNTA3CiAjLCBjLWZvcm1hdAotbXNnaWQgInNoYTEgbWlzbWF0Y2ggZm9yICVzIChleHBlY3RlZCAlcykiCi1tc2dzdHIgIiVzIOeahCBzaGExIOS4jeWMuemFje+8iOmihOacnyAlc++8iSIKK21zZ2lkICJoYXNoIG1pc21hdGNoIGZvciAlcyAoZXhwZWN0ZWQgJXMpIgorbXNnc3RyICIlcyDnmoTlk4jluIzlgLzkuI3ljLnphY3vvIjpooTmnJ8gJXPvvIkiCiAKLSM6IHNoYTEtZmlsZS5jOjIyNTAKKyM6IHNoYTEtZmlsZS5jOjI0NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG1tYXAgJXMiCiBtc2dzdHIgIuS4jeiDvSBtbWFwICVzIgogCi0jOiBzaGExLWZpbGUuYzoyMjU1CisjOiBzaGExLWZpbGUuYzoyNDgzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgaGVhZGVyIG9mICVzIgogbXNnc3RyICLml6Dms5Xop6PljovnvKkgJXMg55qE5aS06YOoIgogCi0jOiBzaGExLWZpbGUuYzoyMjYxCisjOiBzaGExLWZpbGUuYzoyNDg5CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBoZWFkZXIgb2YgJXMiCiBtc2dzdHIgIuaXoOazleino+aekCAlcyDnmoTlpLTpg6giCiAKLSM6IHNoYTEtZmlsZS5jOjIyNzIKKyM6IHNoYTEtZmlsZS5jOjI1MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHVucGFjayBjb250ZW50cyBvZiAlcyIKIG1zZ3N0ciAi5peg5rOV6Kej5Y6L57ypICVzIOeahOWGheWuuSIKIAotIzogc2hhMS1uYW1lLmM6NDc2CisjOiBzaGExLW5hbWUuYzo0ODYKICMsIGMtZm9ybWF0CiBtc2dpZCAic2hvcnQgU0hBMSAlcyBpcyBhbWJpZ3VvdXMiCiBtc2dzdHIgIuefrSBTSEExICVzIOWtmOWcqOatp+S5iSIKIAotIzogc2hhMS1uYW1lLmM6NDg3CisjOiBzaGExLW5hbWUuYzo0OTcKIG1zZ2lkICJUaGUgY2FuZGlkYXRlcyBhcmU6IgogbXNnc3RyICLlgJnpgInogIXmnInvvJoiCiAKLSM6IHNoYTEtbmFtZS5jOjc3MAorIzogc2hhMS1uYW1lLmM6Nzk2CiBtc2dpZCAiIgogIkdpdCBub3JtYWxseSBuZXZlciBjcmVhdGVzIGEgcmVmIHRoYXQgZW5kcyB3aXRoIDQwIGhleCBjaGFyYWN0ZXJzXG4iCiAiYmVjYXVzZSBpdCB3aWxsIGJlIGlnbm9yZWQgd2hlbiB5b3UganVzdCBzcGVjaWZ5IDQwLWhleC4gVGhlc2UgcmVmc1xuIgogIm1heSBiZSBjcmVhdGVkIGJ5IG1pc3Rha2UuIEZvciBleGFtcGxlLFxuIgogIlxuIgotIiAgZ2l0IGNoZWNrb3V0IC1iICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgorIiAgZ2l0IHN3aXRjaCAtYyAkYnIgJChnaXQgcmV2LXBhcnNlIC4uLilcbiIKICJcbiIKICJ3aGVyZSBcIiRiclwiIGlzIHNvbWVob3cgZW1wdHkgYW5kIGEgNDAtaGV4IHJlZiBpcyBjcmVhdGVkLiBQbGVhc2VcbiIKICJleGFtaW5lIHRoZXNlIHJlZnMgYW5kIG1heWJlIGRlbGV0ZSB0aGVtLiBUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnlcbiIKICJydW5uaW5nIFwiZ2l0IGNvbmZpZyBhZHZpY2Uub2JqZWN0TmFtZVdhcm5pbmcgZmFsc2VcIiIKIG1zZ3N0ciAiIgotIkdpdCDpgJrluLjkuI3kvJrliJvlu7rkuIDkuKrku6U0MOS9jeWNgeWFrei/m+WItuWtl+espuWRveWQjeeahOW8leeUqO+8jOWboOS4uuW9k+S9oOaPkOS+mzQw5L2NXG4iCi0i5Y2B5YWt6L+b5Yi25a2X56ym5pe25bCG6KKr5b+955Wl44CC5LiN6L+H6L+Z5Lqb5byV55So5Lmf5Y+v6IO96KKr6ZSZ6K+v5Zyw5Yib5bu644CC5L6L5aaC77yaXG4iCisiR2l0IOmAmuW4uOS4jeS8muWIm+W7uuS4gOS4quS7pTQw5Liq5Y2B5YWt6L+b5Yi25a2X56ym57uT5bC+55qE5byV55So77yM5Zug5Li65b2T5oKo5Y+q5o+Q5L6bNDBcbiIKKyLkuKrljYHlha3ov5vliLblrZfnrKbml7blsIbooqvlv73nlaXjgILov5nkupvlvJXnlKjlj6/og73ooqvplJnor6/lnLDliJvlu7rjgILkvovlpoLvvJpcbiIKICJcbiIKLSIgIGdpdCBjaGVja291dCAtYiAkYnIgJChnaXQgcmV2LXBhcnNlIC4uLilcbiIKKyIgIGdpdCBzd2l0Y2ggLWMgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCiAiXG4iCi0i5b2TIFwiJGJyXCIg56m655m95pe25LiA5LiqNDDkvY3ljYHlha3ov5vliLbnmoTlvJXnlKjlsIbooqvliJvlu7rjgILor7fmo4Dmn6Xov5nkupvlvJXnlKjvvIxcbiIKLSLlj6/og73pnIDopoHliKDpmaTlroPku6zjgILnlKggXCJnaXQgY29uZmlnIGFkdmljZS5vYmplY3ROYW1lV2FybmluZyBmYWxzZVwiXG4iCi0i5ZG95Luk5YWz6Zet5pys5raI5oGv6YCa55+l44CCIgorIuW9kyBcIiRiclwiIOafkOenjeWOn+WboOepuueZveaXtu+8jOS4gOS4qjQw5L2N5Y2B5YWt6L+b5Yi255qE5byV55So5bCG6KKr5Yib5bu644CC6K+35qOA5p+l6L+Z5LqbXG4iCisi5byV55So77yM5Y+v6IO96ZyA6KaB5Yig6Zmk5a6D5Lus44CC6L+Q6KGMIFwiZ2l0IGNvbmZpZyBhZHZpY2Uub2JqZWN0TmFtZVdhcm5pbmdcbiIKKyJmYWxzZVwiIOWRveS7pOWFs+mXreacrOa2iOaBr+mAmuefpeOAgiIKIAotIzogc3VibW9kdWxlLmM6MTE2IHN1Ym1vZHVsZS5jOjE0NQorIzogc2hhMS1uYW1lLmM6OTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvZyBmb3IgJyUuKnMnIG9ubHkgZ29lcyBiYWNrIHRvICVzIgorbXNnc3RyICInJS4qcycg55qE5pel5b+X5LuF6IO95Zue5YiwICVzIgorCisjOiBzaGExLW5hbWUuYzo5MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciAnJS4qcycgb25seSBoYXMgJWQgZW50cmllcyIKK21zZ3N0ciAiJyUuKnMnIOeahOaXpeW/l+S7heaciSAlZCDkuKrmnaHnm64iCisKKyM6IHNoYTEtbmFtZS5jOjE2ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGV4aXN0cyBvbiBkaXNrLCBidXQgbm90IGluICclLipzJyIKK21zZ3N0ciAi6Lev5b6EICclcycg5Zyo56OB55uY5LiK77yM5L2G5piv5LiN5ZyoICclLipzJyDkuK0iCisKKyM6IHNoYTEtbmFtZS5jOjE2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBleGlzdHMsIGJ1dCBub3QgJyVzJ1xuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnJS4qczolcycgYWthICclLipzOi4vJXMnPyIKK21zZ3N0ciAiIgorIui3r+W+hCAnJXMnIOWtmOWcqO+8jOiAjCAnJXMnIOS4jeWtmOWcqFxuIgorIuaPkOekuu+8muaCqOeahOaEj+aAneaYryAnJS4qczolcycg5Lqm5Y2zICclLipzOi4vJXMn77yfIgorCisjOiBzaGExLW5hbWUuYzoxNzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCBpbiAnJS4qcyciCittc2dzdHIgIui3r+W+hCAnJXMnIOS4jeWcqCAnJS4qcycg5LitIgorCisjOiBzaGExLW5hbWUuYzoxNzMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXRoICclcycgaXMgaW4gdGhlIGluZGV4LCBidXQgbm90IGF0IHN0YWdlICVkXG4iCisiaGludDogRGlkIHlvdSBtZWFuICc6JWQ6JXMnPyIKK21zZ3N0ciAiIgorIui3r+W+hCAnJXMnIOWcqOe0ouW8leS4re+8jOS9huS4jeWcqOaaguWtmOWMuiAlZCDkuK1cbiIKKyLmj5DnpLrvvJrmgqjnmoTmhI/mgJ3mmK8gJzolZDolcyfvvJ8iCisKKyM6IHNoYTEtbmFtZS5jOjE3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhdGggJyVzJyBpcyBpbiB0aGUgaW5kZXgsIGJ1dCBub3QgJyVzJ1xuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnOiVkOiVzJyBha2EgJzolZDouLyVzJz8iCittc2dzdHIgIiIKKyLot6/lvoQgJyVzJyDlnKjntKLlvJXkuK3vvIzkvYYgJyVzJyDkuI3lnKhcbiIKKyLmj5DnpLrvvJrmgqjnmoTmhI/mgJ3mmK8gJzolZDolcycg5Lqm5Y2zICc6JWQ6Li8lcyfvvJ8iCisKKyM6IHNoYTEtbmFtZS5jOjE3NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGV4aXN0cyBvbiBkaXNrLCBidXQgbm90IGluIHRoZSBpbmRleCIKK21zZ3N0ciAi6Lev5b6EICclcycg5Zyo56OB55uY5LiK77yM5L2G5LiN5Zyo57Si5byV6YeMIgorCisjOiBzaGExLW5hbWUuYzoxNzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCAobmVpdGhlciBvbiBkaXNrIG5vciBpbiB0aGUgaW5kZXgpIgorbXNnc3RyICLot6/lvoQgJyVzJyDkuI3lrZjlnKjvvIjml6LkuI3lnKjno4Hnm5jkuIrvvIzkuZ/kuI3lnKjntKLlvJXkuK3vvIkiCisKKyM6IHNoYTEtbmFtZS5jOjE3NzEKK21zZ2lkICJyZWxhdGl2ZSBwYXRoIHN5bnRheCBjYW4ndCBiZSB1c2VkIG91dHNpZGUgd29ya2luZyB0cmVlIgorbXNnc3RyICLkuI3og73lnKjlt6XkvZzljLrkuYvlpJbkvb/nlKjnm7jlr7not6/lvoTor63ms5UiCisKKyM6IHNoYTEtbmFtZS5jOjE5MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBvYmplY3QgbmFtZSAnJS4qcycuIgorbXNnc3RyICLml6DmlYjnmoTlr7nosaHlkI0gJyUuKnMn44CCIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggZ2liaWJ5dGUKKyM6IHN0cmJ1Zi5jOjgzNworIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBHaUIiCittc2dzdHIgIiV1LiUyLjJ1IEdpQiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGdpYmlieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEdpQi9zIgorbXNnc3RyICIldS4lMi4ydSBHaUIvcyIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IG1lYmlieXRlCisjOiBzdHJidWYuYzo4NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgTWlCIgorbXNnc3RyICIldS4lMi4ydSBNaUIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBtZWJpYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjg0OQorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBNaUIvcyIKK21zZ3N0ciAiJXUuJTIuMnUgTWlCL3MiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBraWJpYnl0ZQorIzogc3RyYnVmLmM6ODU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEtpQiIKK21zZ3N0ciAiJXUuJTIuMnUgS2lCIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDgga2liaWJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgS2lCL3MiCittc2dzdHIgIiV1LiUyLjJ1IEtpQi9zIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggYnl0ZQorIzogc3RyYnVmLmM6ODY0CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1IGJ5dGUiCittc2dpZF9wbHVyYWwgIiV1IGJ5dGVzIgorbXNnc3RyWzBdICIldSDlrZfoioIiCittc2dzdHJbMV0gIiV1IOWtl+iKgiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUgYnl0ZS9zIgorbXNnaWRfcGx1cmFsICIldSBieXRlcy9zIgorbXNnc3RyWzBdICIldSDlrZfoioIv56eSIgorbXNnc3RyWzFdICIldSDlrZfoioIv56eSIgorCisjOiBzdHJidWYuYzoxMTY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBlZGl0ICclcyciCittc2dzdHIgIuS4jeiDvee8lui+kSAnJXMnIgorCisjOiBzdWJtb2R1bGUuYzoxMTQgc3VibW9kdWxlLmM6MTQzCiBtc2dpZCAiQ2Fubm90IGNoYW5nZSB1bm1lcmdlZCAuZ2l0bW9kdWxlcywgcmVzb2x2ZSBtZXJnZSBjb25mbGljdHMgZmlyc3QiCiBtc2dzdHIgIuaXoOazleS/ruaUueacquWQiOW5tueahCAuZ2l0bW9kdWxlc++8jOWFiOino+WGs+WQiOW5tuWGsueqgSIKIAotIzogc3VibW9kdWxlLmM6MTIwIHN1Ym1vZHVsZS5jOjE0OQorIzogc3VibW9kdWxlLmM6MTE4IHN1Ym1vZHVsZS5jOjE0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZmluZCBzZWN0aW9uIGluIC5naXRtb2R1bGVzIHdoZXJlIHBhdGg9JXMiCiBtc2dzdHIgIuaXoOazleWcqCAuZ2l0bW9kdWxlcyDkuK3mib7liLAgcGF0aD0lcyDnmoTlsI/oioIiCiAKLSM6IHN1Ym1vZHVsZS5jOjE1NgorIzogc3VibW9kdWxlLmM6MTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgLmdpdG1vZHVsZXMgZW50cnkgZm9yICVzIgogbXNnc3RyICLml6Dms5Xnp7vpmaQgJXMg55qEIC5naXRtb2R1bGVzIOadoeebriIKIAotIzogc3VibW9kdWxlLmM6MTY3CisjOiBzdWJtb2R1bGUuYzoxNjUKIG1zZ2lkICJzdGFnaW5nIHVwZGF0ZWQgLmdpdG1vZHVsZXMgZmFpbGVkIgogbXNnc3RyICLlsIbmm7TmlrDlkI4gLmdpdG1vZHVsZXMg5re75Yqg5pqC5a2Y5Yy65aSx6LSlIgogCi0jOiBzdWJtb2R1bGUuYzozMjkKKyM6IHN1Ym1vZHVsZS5jOjMyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbiB1bnBvcHVsYXRlZCBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAi5L2N5LqO5pyq5qOA5Ye655qE5a2Q5qih57uEICclcyciCiAKLSM6IHN1Ym1vZHVsZS5jOjM2MAorIzogc3VibW9kdWxlLmM6MzU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlBhdGhzcGVjICclcycgaXMgaW4gc3VibW9kdWxlICclLipzJyIKIG1zZ3N0ciAi6Lev5b6E6KeE5qC8ICclcycg5Zyo5a2Q5qih57uEICclLipzJyDkuK0iCiAKLSM6IHN1Ym1vZHVsZS5jOjg1NworIzogc3VibW9kdWxlLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCAtLWlnbm9yZS1zdWJtb2R1bGVzIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAi5Z2P55qEIC0taWdub3JlLXN1Ym1vZHVsZXMg5Y+C5pWw77yaJXMiCisKKyM6IHN1Ym1vZHVsZS5jOjgxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU3VibW9kdWxlIGluIGNvbW1pdCAlcyBhdCBwYXRoOiAnJXMnIGNvbGxpZGVzIHdpdGggYSBzdWJtb2R1bGUgbmFtZWQgdGhlICIKKyJzYW1lLiBTa2lwcGluZyBpdC4iCittc2dzdHIgIuaPkOS6pCAlcyDkuK3kvY3kuo7ot6/lvoQgJyVzJyDnmoTlrZDmqKHnu4TlkozlkIzlkI3nmoTlrZDmqKHnu4TlhrLnqoHjgIIg6Lez6L+H5a6D44CCIgorCisjOiBzdWJtb2R1bGUuYzo5MTAKICMsIGMtZm9ybWF0CiBtc2dpZCAic3VibW9kdWxlIGVudHJ5ICclcycgKCVzKSBpcyBhICVzLCBub3QgYSBjb21taXQiCiBtc2dzdHIgIuWtkOaooee7hOadoeebriAnJXMn77yIJXPvvInmmK/kuIDkuKogJXPvvIzkuI3mmK/kuIDkuKrmj5DkuqQiCiAKLSM6IHN1Ym1vZHVsZS5jOjEwOTcgYnVpbHRpbi9icmFuY2guYzo2NTYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5ODUKKyM6IHN1Ym1vZHVsZS5jOjk5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ291bGQgbm90IHJ1biAnZ2l0IHJldi1saXN0IDxjb21taXRzPiAtLW5vdCAtLXJlbW90ZXMgLW4gMScgY29tbWFuZCBpbiAiCisic3VibW9kdWxlICVzIgorbXNnc3RyICLml6Dms5XlnKjlrZDmqKHnu4QgJXMg5Lit5omn6KGMICdnaXQgcmV2LWxpc3QgPOaPkOS6pD4gLS1ub3QgLS1yZW1vdGVzIC1uIDEnIgorCisjOiBzdWJtb2R1bGUuYzoxMTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInByb2Nlc3MgZm9yIHN1Ym1vZHVsZSAnJXMnIGZhaWxlZCIKK21zZ3N0ciAi5aSE55CG5a2Q5qih57uEICclcycg5aSx6LSlIgorCisjOiBzdWJtb2R1bGUuYzoxMTQ3IGJ1aWx0aW4vYnJhbmNoLmM6NjgwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDQ1CiBtc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgSEVBRCBhcyBhIHZhbGlkIHJlZi4iCiBtc2dzdHIgIuaXoOazleWwhiBIRUFEIOino+aekOS4uuacieaViOW8leeUqOOAgiIKIAotIzogc3VibW9kdWxlLmM6MTQwNAorIzogc3VibW9kdWxlLmM6MTE1OAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXNoaW5nIHN1Ym1vZHVsZSAnJXMnXG4iCittc2dzdHIgIuato+WcqOaOqOmAgeWtkOaooee7hCAnJXMnXG4iCisKKyM6IHN1Ym1vZHVsZS5jOjExNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIHB1c2ggc3VibW9kdWxlICclcydcbiIKK21zZ3N0ciAi5peg5rOV5o6o6YCB5a2Q5qih57uEICclcydcbiIKKworIzogc3VibW9kdWxlLmM6MTQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJGZXRjaGluZyBzdWJtb2R1bGUgJXMlc1xuIgorbXNnc3RyICLmraPlnKjojrflj5blrZDmqKHnu4QgJXMlc1xuIgorCisjOiBzdWJtb2R1bGUuYzoxNDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBhY2Nlc3Mgc3VibW9kdWxlICclcydcbiIKK21zZ3N0ciAi5peg5rOV6K6/6Zeu5a2Q5qih57uEICclcydcbiIKKworIzogc3VibW9kdWxlLmM6MTYzNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXJyb3JzIGR1cmluZyBzdWJtb2R1bGUgZmV0Y2g6XG4iCisiJXMiCittc2dzdHIgIiIKKyLojrflj5blrZDmqKHnu4Tml7bnmoTplJnor6/vvJpcbiIKKyIlcyIKKworIzogc3VibW9kdWxlLmM6MTY2MgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIG5vdCByZWNvZ25pemVkIGFzIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIuaXoOazleWwhiAnJXMnIOivhuWIq+S4uuS4gOS4qiBnaXQg5LuT5bqTIgogCi0jOiBzdWJtb2R1bGUuYzoxNTQyCisjOiBzdWJtb2R1bGUuYzoxNjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBydW4gJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgaW4gc3VibW9kdWxlICVzIgorbXNnc3RyICLml6Dms5XlnKjlrZDmqKHnu4QgJXMg5Lit5omn6KGMICdnaXQgc3RhdHVzIC0tcG9yY2VsYWluPTInIgorCisjOiBzdWJtb2R1bGUuYzoxNzIwCisjLCBjLWZvcm1hdAorbXNnaWQgIidnaXQgc3RhdHVzIC0tcG9yY2VsYWluPTInIGZhaWxlZCBpbiBzdWJtb2R1bGUgJXMiCittc2dzdHIgIuWcqOWtkOaooee7hCAlcyDkuK3miafooYwgJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49Micg5aSx6LSlIgorCisjOiBzdWJtb2R1bGUuYzoxODAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGFydCAnZ2l0IHN0YXR1cycgaW4gc3VibW9kdWxlICclcyciCiBtc2dzdHIgIuaXoOazleWcqOWtkOaooee7hCAnJXMnIOS4reWQr+WKqCAnZ2l0IHN0YXR1cyciCiAKLSM6IHN1Ym1vZHVsZS5jOjE1NTUKKyM6IHN1Ym1vZHVsZS5jOjE4MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJ1biAnZ2l0IHN0YXR1cycgaW4gc3VibW9kdWxlICclcyciCiBtc2dzdHIgIuaXoOazleWcqOWtkOaooee7hCAnJXMnIOS4reaJp+ihjCAnZ2l0IHN0YXR1cyciCiAKLSM6IHN1Ym1vZHVsZS5jOjE2NDgKKyM6IHN1Ym1vZHVsZS5jOjE4MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHVuc2V0IGNvcmUud29ya3RyZWUgc2V0dGluZyBpbiBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAi5peg5rOV5Zyo5a2Q5qih57uEICclcycg5Lit5Y+W5raIIGNvcmUud29ya3RyZWUg55qE6K6+572uIgorCisjOiBzdWJtb2R1bGUuYzoxODU1IHN1Ym1vZHVsZS5jOjIxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAi5peg5rOV6YCS5b2S6L+b5a2Q5qih57uE6Lev5b6EICclcyciCisKKyM6IHN1Ym1vZHVsZS5jOjE4NzYKK21zZ2lkICJjb3VsZCBub3QgcmVzZXQgc3VibW9kdWxlIGluZGV4IgorbXNnc3RyICLml6Dms5Xph43nva7lrZDmqKHnu4TntKLlvJUiCisKKyM6IHN1Ym1vZHVsZS5jOjE5MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAic3VibW9kdWxlICclcycgaGFzIGRpcnR5IGluZGV4IgogbXNnc3RyICLlrZDmqKHnu4QgJyVzJyDkuK3mnInohI/ntKLlvJUiCiAKLSM6IHN1Ym1vZHVsZS5jOjE3MDAKKyM6IHN1Ym1vZHVsZS5jOjE5NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlICclcycgY291bGQgbm90IGJlIHVwZGF0ZWQuIgogbXNnc3RyICLlrZDmqKHnu4QgJyVzJyDml6Dms5Xooqvmm7TmlrDjgIIiCiAKLSM6IHN1Ym1vZHVsZS5jOjE3NDcKKyM6IHN1Ym1vZHVsZS5jOjIwMzgKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VibW9kdWxlIGdpdCBkaXIgJyVzJyBpcyBpbnNpZGUgZ2l0IGRpciAnJS4qcyciCittc2dzdHIgIuWtkOaooee7hCBnaXQg55uu5b2VICclcycg5L2N5LqOIGdpdCDnm67lvZUgJyUuKnMnIOS4rSIKKworIzogc3VibW9kdWxlLmM6MjA1OQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAicmVsb2NhdGVfZ2l0ZGlyIGZvciBzdWJtb2R1bGUgJyVzJyB3aXRoIG1vcmUgdGhhbiBvbmUgd29ya3RyZWUgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAi5LiN5pSv5oyB5a+55pyJ5aSa5Liq5bel5L2c5Yy655qE5a2Q5qih57uEICclcycg5omn6KGMIHJlbG9jYXRlX2dpdGRpciIKIAotIzogc3VibW9kdWxlLmM6MTc1OSBzdWJtb2R1bGUuYzoxODE1CisjOiBzdWJtb2R1bGUuYzoyMDcxIHN1Ym1vZHVsZS5jOjIxMzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGxvb2t1cCBuYW1lIGZvciBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAi5LiN6IO95p+l6K+i5a2Q5qih57uEICclcycg55qE5ZCN56ewIgogCi0jOiBzdWJtb2R1bGUuYzoxNzY2CisjOiBzdWJtb2R1bGUuYzoyMDc1CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZnVzaW5nIHRvIG1vdmUgJyVzJyBpbnRvIGFuIGV4aXN0aW5nIGdpdCBkaXIiCittc2dzdHIgIuemgeatouenu+WKqCAnJXMnIOWIsOeOsOWtmCBnaXQg55uu5b2V5LitIgorCisjOiBzdWJtb2R1bGUuYzoyMDgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJNaWdyYXRpbmcgZ2l0IGRpcmVjdG9yeSBvZiAnJXMlcycgZnJvbVxuIgpAQCAtNTk3Nyw0MCArODA1MywzNSBAQAogIiclcycg6L+B56e76IezXG4iCiAiJyVzJ1xuIgogCi0jOiBzdWJtb2R1bGUuYzoxODUwCi0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCByZWN1cnNlIGludG8gc3VibW9kdWxlICclcyciCi1tc2dzdHIgIuaXoOazlemAkuW9kui/m+WtkOaooee7hOi3r+W+hCAnJXMnIgotCi0jOiBzdWJtb2R1bGUuYzoxODk0CisjOiBzdWJtb2R1bGUuYzoyMjA5CiBtc2dpZCAiY291bGQgbm90IHN0YXJ0IGxzLWZpbGVzIGluIC4uIgogbXNnc3RyICLml6Dms5XlnKggLi4g5Lit5ZCv5YqoIGxzLWZpbGVzIgogCi0jOiBzdWJtb2R1bGUuYzoxOTMzCisjOiBzdWJtb2R1bGUuYzoyMjQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgImxzLXRyZWUgcmV0dXJuZWQgdW5leHBlY3RlZCByZXR1cm4gY29kZSAlZCIKIG1zZ3N0ciAibHMtdHJlZSDov5Tlm57mnKrnn6Xov5Tlm57lgLwgJWQiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzIKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzoyMzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3Jpbmcgc3VzcGljaW91cyBzdWJtb2R1bGUgbmFtZTogJXMiCiBtc2dzdHIgIuW/veeVpeWPr+eWkeeahOWtkOaooee7hOWQjeensO+8miVzIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6Mjk2CisjOiBzdWJtb2R1bGUtY29uZmlnLmM6MzAzCiBtc2dpZCAibmVnYXRpdmUgdmFsdWVzIG5vdCBhbGxvd2VkIGZvciBzdWJtb2R1bGUuZmV0Y2hqb2JzIgogbXNnc3RyICJzdWJtb2R1bGUuZmV0Y2hqb2JzIOS4jeWFgeiuuOS4uui0n+WAvCIKIAotIzogc3VibW9kdWxlLWNvbmZpZy5jOjM5MAorIzogc3VibW9kdWxlLWNvbmZpZy5jOjQwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJpZ25vcmluZyAnJXMnIHdoaWNoIG1heSBiZSBpbnRlcnByZXRlZCBhcyBhIGNvbW1hbmQtbGluZSBvcHRpb246ICVzIgogbXNnc3RyICLlv73nlaXlj6/og73ooqvop6PmnpDkuLrlkb3ku6TooYzpgInpobnnmoQgJyVzJ++8miVzIgogCi0jOiBzdWJtb2R1bGUtY29uZmlnLmM6NDc5CisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NDk4CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yICVzIgogbXNnc3RyICIlcyDnmoTlgLzml6DmlYgiCiAKLSM6IHN1Ym1vZHVsZS1jb25maWcuYzo3NTQKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo3NjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHVwZGF0ZSAuZ2l0bW9kdWxlcyBlbnRyeSAlcyIKIG1zZ3N0ciAi5LiN6IO95pu05pawIC5naXRtb2R1bGVzIOadoeebriAlcyIKQEAgLTYwMjYsNyArODA5Nyw3IEBACiBtc2dpZCAidW5rbm93biB2YWx1ZSAnJXMnIGZvciBrZXkgJyVzJyIKIG1zZ3N0ciAi6ZSuICclMiRzJyDnmoTmnKrnn6Xlj5blgLwgJyUxJHMnIgogCi0jOiB0cmFpbGVyLmM6NTM5IHRyYWlsZXIuYzo1NDQgYnVpbHRpbi9yZW1vdGUuYzoyOTUKKyM6IHRyYWlsZXIuYzo1MzkgdHJhaWxlci5jOjU0NCBidWlsdGluL3JlbW90ZS5jOjI5OCBidWlsdGluL3JlbW90ZS5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJtb3JlIHRoYW4gb25lICVzIgogbXNnc3RyICLlpJrkuo7kuIDkuKogJXMiCkBAIC02MDQ1LDcgKzgxMTYsNyBAQAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGZyb20gc3RkaW4iCiBtc2dzdHIgIuS4jeiDveiHquagh+WHhui+k+WFpeivu+WPliIKIAotIzogdHJhaWxlci5jOjEwMTEgYnVpbHRpbi9hbS5jOjQ3CisjOiB0cmFpbGVyLmM6MTAxMSB3cmFwcGVyLmM6NjY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBzdGF0ICVzIgogbXNnc3RyICLkuI3og73lr7kgJXMg6LCD55SoIHN0YXQiCkBAIC02MDc0LDQ2ICs4MTQ1LDU0IEBACiBtc2dpZCAiV291bGQgc2V0IHVwc3RyZWFtIG9mICclcycgdG8gJyVzJyBvZiAnJXMnXG4iCiBtc2dzdHIgIuWwhuimgeiuvue9riAnJTEkcycg55qE5LiK5ri45Li6ICclMyRzJyDnmoQgJyUyJHMnXG4iCiAKLSM6IHRyYW5zcG9ydC5jOjE0MgorIzogdHJhbnNwb3J0LmM6MTQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGJ1bmRsZSAnJXMnIgogbXNnc3RyICLml6Dms5Xor7vlj5YgYnVuZGxlICclcyciCiAKLSM6IHRyYW5zcG9ydC5jOjIwOAorIzogdHJhbnNwb3J0LmM6MjE0CiAjLCBjLWZvcm1hdAogbXNnaWQgInRyYW5zcG9ydDogaW52YWxpZCBkZXB0aCBvcHRpb24gJyVzJyIKIG1zZ3N0ciAi5Lyg6L6T77ya5peg5pWI55qE5rex5bqm6YCJ6aG5ICclcyciCiAKLSM6IHRyYW5zcG9ydC5jOjYxNgorIzogdHJhbnNwb3J0LmM6MjY2Cittc2dpZCAic2VlIHByb3RvY29sLnZlcnNpb24gaW4gJ2dpdCBoZWxwIGNvbmZpZycgZm9yIG1vcmUgZGV0YWlscyIKK21zZ3N0ciAi5p+l55yLICdnaXQgaGVscCBjb25maWcnIOS4reeahCBwcm90b2NvbC52ZXJzaW9uIOiOt+WPluabtOWkmuS/oeaBryIKKworIzogdHJhbnNwb3J0LmM6MjY3Cittc2dpZCAic2VydmVyIG9wdGlvbnMgcmVxdWlyZSBwcm90b2NvbCB2ZXJzaW9uIDIgb3IgbGF0ZXIiCittc2dzdHIgIuacjeWKoeerr+mAiemhuemcgOimgeeJiOacrCAyIOWNj+iuruaIluabtOmrmCIKKworIzogdHJhbnNwb3J0LmM6NjMyCiBtc2dpZCAiY291bGQgbm90IHBhcnNlIHRyYW5zcG9ydC5jb2xvci4qIGNvbmZpZyIKIG1zZ3N0ciAi5LiN6IO96Kej5p6QIHRyYW5zcG9ydC5jb2xvci4qIOmFjee9riIKIAotIzogdHJhbnNwb3J0LmM6Njg5CisjOiB0cmFuc3BvcnQuYzo3MDUKIG1zZ2lkICJzdXBwb3J0IGZvciBwcm90b2NvbCB2MiBub3QgaW1wbGVtZW50ZWQgeWV0IgogbXNnc3RyICLljY/orq4gdjIg55qE5pSv5oyB5bCa5pyq5a6e546wIgogCi0jOiB0cmFuc3BvcnQuYzo4MTYKKyM6IHRyYW5zcG9ydC5jOjgzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIHZhbHVlIGZvciBjb25maWcgJyVzJzogJXMiCiBtc2dzdHIgIumFjee9riAnJXMnIOeahOWPluWAvOacquefpe+8miVzIgogCi0jOiB0cmFuc3BvcnQuYzo4ODIKKyM6IHRyYW5zcG9ydC5jOjg5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0cmFuc3BvcnQgJyVzJyBub3QgYWxsb3dlZCIKIG1zZ3N0ciAi5Lyg6L6TICclcycg5LiN5YWB6K64IgogCi0jOiB0cmFuc3BvcnQuYzo5MzYKKyM6IHRyYW5zcG9ydC5jOjk0OQogbXNnaWQgImdpdC1vdmVyLXJzeW5jIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQiCiBtc2dzdHIgIuS4jeWGjeaUr+aMgSBnaXQtb3Zlci1yc3luYyIKIAotIzogdHJhbnNwb3J0LmM6MTAzMQorIzogdHJhbnNwb3J0LmM6MTA0NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyBzdWJtb2R1bGUgcGF0aHMgY29udGFpbiBjaGFuZ2VzIHRoYXQgY2FuXG4iCiAibm90IGJlIGZvdW5kIG9uIGFueSByZW1vdGU6XG4iCiBtc2dzdHIgIuS4i+WIl+WtkOaooee7hOi3r+W+hOaJgOWMheWQq+eahOS/ruaUueWcqOS7u+S9lei/nOeoi+a6kOS4remDveaJvuS4jeWIsO+8mlxuIgogCi0jOiB0cmFuc3BvcnQuYzoxMDM1CisjOiB0cmFuc3BvcnQuYzoxMDQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTYxNDAsMTM2ICs4MjE5LDEzNiBAQAogIuS7peaOqOmAgeiHs+i/nOeoi+OAglxuIgogIlxuIgogCi0jOiB0cmFuc3BvcnQuYzoxMDQzCisjOiB0cmFuc3BvcnQuYzoxMDU2CiBtc2dpZCAiQWJvcnRpbmcuIgogbXNnc3RyICLmraPlnKjnu4jmraLjgIIiCiAKLSM6IHRyYW5zcG9ydC5jOjExODIKKyM6IHRyYW5zcG9ydC5jOjEyMDEKIG1zZ2lkICJmYWlsZWQgdG8gcHVzaCBhbGwgbmVlZGVkIHN1Ym1vZHVsZXMiCiBtc2dzdHIgIuS4jeiDveaOqOmAgeWFqOmDqOmcgOimgeeahOWtkOaooee7hCIKIAotIzogdHJhbnNwb3J0LmM6MTMxNSB0cmFuc3BvcnQtaGVscGVyLmM6NjQzCisjOiB0cmFuc3BvcnQuYzoxMzQ1IHRyYW5zcG9ydC1oZWxwZXIuYzo2NTcKIG1zZ2lkICJvcGVyYXRpb24gbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbCIKIG1zZ3N0ciAi5Y2P6K6u5LiN5pSv5oyB6K+l5pON5L2cIgogCi0jOiB0cmFuc3BvcnQuYzoxNDE5Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgbGluZSB3aGlsZSBwYXJzaW5nIGFsdGVybmF0ZSByZWZzOiAlcyIKLW1zZ3N0ciAi6Kej5p6Q5aSH55So5byV55So5pe25peg5pWI55qE6KGM77yaJXMiCi0KLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MSB0cmFuc3BvcnQtaGVscGVyLmM6ODAKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo2MSB0cmFuc3BvcnQtaGVscGVyLmM6OTAKIG1zZ2lkICJmdWxsIHdyaXRlIHRvIHJlbW90ZSBoZWxwZXIgZmFpbGVkIgogbXNnc3RyICLlrozmlbTlhpnlhaXov5znqIvliqnmiYvlpLHotKUiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGZpbmQgcmVtb3RlIGhlbHBlciBmb3IgJyVzJyIKIG1zZ3N0ciAi5peg5rOV5Li6ICclcycg5om+5Yiw6L+c56iL5Yqp5omLIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQ4IHRyYW5zcG9ydC1oZWxwZXIuYzo1NTcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNjAgdHJhbnNwb3J0LWhlbHBlci5jOjU3MQogbXNnaWQgImNhbid0IGR1cCBoZWxwZXIgb3V0cHV0IGZkIgogbXNnc3RyICLml6Dms5XlpI3liLbliqnmiYvovpPlh7rmlofku7blj6Xmn4QiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxOTkKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyMTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInVua25vd24gbWFuZGF0b3J5IGNhcGFiaWxpdHkgJXM7IHRoaXMgcmVtb3RlIGhlbHBlciBwcm9iYWJseSBuZWVkcyBuZXdlciAiCiAidmVyc2lvbiBvZiBHaXQiCiBtc2dzdHIgIuacquefpeeahOW8uuWItuiDveWKmyAlc++8jOivpei/nOeoi+WKqeaJi+WPr+iDvemcgOimgeaWsOeJiOacrOeahEdpdCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjIwNQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxNwogbXNnaWQgInRoaXMgcmVtb3RlIGhlbHBlciBzaG91bGQgaW1wbGVtZW50IHJlZnNwZWMgY2FwYWJpbGl0eSIKIG1zZ3N0ciAi6L+c56iL5Yqp5omL6ZyA6KaB5a6e546wIHJlZnNwZWMg6IO95YqbIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MjcyIHRyYW5zcG9ydC1oZWxwZXIuYzo0MTIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyODQgdHJhbnNwb3J0LWhlbHBlci5jOjQyNQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB1bmV4cGVjdGVkbHkgc2FpZDogJyVzJyIKIG1zZ3N0ciAiJXMg5oSP5aSW5Zyw6K+077yaJyVzJyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjQwMQorIzogdHJhbnNwb3J0LWhlbHBlci5jOjQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBhbHNvIGxvY2tlZCAlcyIKIG1zZ3N0ciAiJXMg5Lmf6ZSB5a6a5LqGICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NDc5CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NDkzCiBtc2dpZCAiY291bGRuJ3QgcnVuIGZhc3QtaW1wb3J0IgogbXNnc3RyICLkuI3og73miafooYwgZmFzdC1pbXBvcnQiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MDIKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MTYKIG1zZ2lkICJlcnJvciB3aGlsZSBydW5uaW5nIGZhc3QtaW1wb3J0IgogbXNnc3RyICLmiafooYwgZmFzdC1pbXBvcnQg5Ye66ZSZIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTMxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMDkxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTQ1IHRyYW5zcG9ydC1oZWxwZXIuYzoxMTM0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAlcyIKIG1zZ3N0ciAi5peg5rOV6K+75Y+W5byV55SoICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTc2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTkwCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gcmVzcG9uc2UgdG8gY29ubmVjdDogJXMiCiBtc2dzdHIgIui/nuaOpeaXtuacquefpeeahOWTjeW6lO+8miVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NTk4CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjEyCiBtc2dpZCAic2V0dGluZyByZW1vdGUgc2VydmljZSBwYXRoIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCiBtc2dzdHIgIuWNj+iuruS4jeaUr+aMgeiuvue9rui/nOeoi+acjeWKoei3r+W+hCIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjYwMAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjYxNAogbXNnaWQgImludmFsaWQgcmVtb3RlIHNlcnZpY2UgcGF0aCIKIG1zZ3N0ciAi5peg5pWI55qE6L+c56iL5pyN5Yqh6Lev5b6EIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NjQ2CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IGNvbm5lY3QgdG8gc3Vic2VydmljZSAlcyIKIG1zZ3N0ciAi5LiN6IO96L+e5o6l5Yiw5a2Q5pyN5YqhICVzIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6NzEzCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NzM2CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGVjdGVkIG9rL2Vycm9yLCBoZWxwZXIgc2FpZCAnJXMnIgogbXNnc3RyICLpooTmnJ8gb2svZXJyb3LvvIzliqnmiYvor7QgJyVzJyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjc2NgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjc4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJoZWxwZXIgcmVwb3J0ZWQgdW5leHBlY3RlZCBzdGF0dXMgb2YgJXMiCiBtc2dzdHIgIuWKqeaJi+aKpeWRiiAlcyDnmoTmhI/lpJbnirbmgIEiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4MjcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgZHJ5LXJ1biIKIG1zZ3N0ciAi5Yqp5omLICVzIOS4jeaUr+aMgSBkcnktcnVuIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODMwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIgogbXNnc3RyICLliqnmiYsgJXMg5LiN5pSv5oyBIC0tc2lnbmVkIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODMzCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODU2CiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkPWlmLWFza2VkIgogbXNnc3RyICLliqnmiYsgJXMg5LiN5pSv5oyBIC0tc2lnbmVkPWlmLWFza2VkIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6ODQwCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODYxCisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tYXRvbWljIgorbXNnc3RyICLliqnmiYsgJXMg5LiN5pSv5oyBIC0tYXRvbWljIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODY3CiAjLCBjLWZvcm1hdAogbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0ICdwdXNoLW9wdGlvbiciCiBtc2dzdHIgIuWKqeaJiyAlcyDkuI3mlK/mjIEgJ3B1c2gtb3B0aW9uJyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjkzMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjk2NQogbXNnaWQgInJlbW90ZS1oZWxwZXIgZG9lc24ndCBzdXBwb3J0IHB1c2g7IHJlZnNwZWMgbmVlZGVkIgogbXNnc3RyICJyZW1vdGUtaGVwZXIg5LiN5pSv5oyBIHB1c2jvvIzpnIDopoHlvJXnlKjooajovr7lvI8iCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5MzcKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgJ2ZvcmNlJyIKIG1zZ3N0ciAi5Yqp5omLICVzIOS4jeaUr+aMgSAnZm9yY2UnIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTg0CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTAxNwogbXNnaWQgImNvdWxkbid0IHJ1biBmYXN0LWV4cG9ydCIKIG1zZ3N0ciAi5peg5rOV5omn6KGMIGZhc3QtZXhwb3J0IgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6OTg5CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTAyMgogbXNnaWQgImVycm9yIHdoaWxlIHJ1bm5pbmcgZmFzdC1leHBvcnQiCiBtc2dzdHIgIuaJp+ihjCBmYXN0LWV4cG9ydCDml7blh7rplJkiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDE0CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTA0NwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gcmVmcyBpbiBjb21tb24gYW5kIG5vbmUgc3BlY2lmaWVkOyBkb2luZyBub3RoaW5nLlxuIgpAQCAtNjI3OCw2NyArODM1Nyw2NyBAQAogIuayoeacieWFseWQjOeahOW8leeUqOW5tuS4lOS5n+ayoeacieaMh+Wumu+8jOS7gOS5iOS5n+S4jeS8muWBmuOAglxuIgogIuWPr+iDveaCqOW6lOivpeaMh+WumuS4gOS4quWIhuaUr+WmgiAnbWFzdGVyJ+OAglxuIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTA3NworIzogdHJhbnNwb3J0LWhlbHBlci5jOjExMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIHJlc3BvbnNlIGluIHJlZiBsaXN0OiAlcyIKIG1zZ3N0ciAi5byV55So5YiX6KGo5Lit5qC85byP6ZSZ6K+v55qE5ZON5bqU77yaJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMjMxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWFkKCVzKSBmYWlsZWQiCiBtc2dzdHIgIuivu+WPlu+8iCVz77yJ5aSx6LSlIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTI1OAorIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyOTkKICMsIGMtZm9ybWF0CiBtc2dpZCAid3JpdGUoJXMpIGZhaWxlZCIKIG1zZ3N0ciAi5YaZ77yIJXPvvInlpLHotKUiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzA3CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM0OAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB0aHJlYWQgZmFpbGVkIgogbXNnc3RyICIlcyDnur/nqIvlpLHotKUiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzExCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM1MgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyB0aHJlYWQgZmFpbGVkIHRvIGpvaW46ICVzIgogbXNnc3RyICIlcyDnur/nqIvnrYnlvoXlpLHotKXvvJolcyIKIAotIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzMzAgdHJhbnNwb3J0LWhlbHBlci5jOjEzMzQKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzcxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IHN0YXJ0IHRocmVhZCBmb3IgY29weWluZyBkYXRhOiAlcyIKIG1zZ3N0ciAi5LiN6IO95ZCv5Yqo57q/56iL5p2l5ou36LSd5pWw5o2u77yaJXMiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzcxCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQxMgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBwcm9jZXNzIGZhaWxlZCB0byB3YWl0IgogbXNnc3RyICIlcyDov5vnqIvnrYnlvoXlpLHotKUiCiAKLSM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzc1CisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQxNgogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBwcm9jZXNzIGZhaWxlZCIKIG1zZ3N0ciAiJXMg6L+b56iL5aSx6LSlIgogCi0jOiB0cmFuc3BvcnQtaGVscGVyLmM6MTM5MyB0cmFuc3BvcnQtaGVscGVyLmM6MTQwMgorIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0MzQgdHJhbnNwb3J0LWhlbHBlci5jOjE0NDMKIG1zZ2lkICJjYW4ndCBzdGFydCB0aHJlYWQgZm9yIGNvcHlpbmcgZGF0YSIKIG1zZ3N0ciAi5LiN6IO95ZCv5Yqo57q/56iL5p2l5ou36LSd5pWw5o2uIgogCi0jOiB0cmVlLXdhbGsuYzozMworIzogdHJlZS13YWxrLmM6MzIKIG1zZ2lkICJ0b28tc2hvcnQgdHJlZSBvYmplY3QiCiBtc2dzdHIgIuWkquefreeahOagkeWvueixoSIKIAotIzogdHJlZS13YWxrLmM6MzkKKyM6IHRyZWUtd2Fsay5jOjM4CiBtc2dpZCAibWFsZm9ybWVkIG1vZGUgaW4gdHJlZSBlbnRyeSIKIG1zZ3N0ciAi5qCR5a+56LGh5Lit55qE5p2h55uu5qih5byP6ZSZ6K+vIgogCi0jOiB0cmVlLXdhbGsuYzo0MworIzogdHJlZS13YWxrLmM6NDIKIG1zZ2lkICJlbXB0eSBmaWxlbmFtZSBpbiB0cmVlIGVudHJ5IgogbXNnc3RyICLmoJHlr7nosaHmnaHnm67kuK3nqbrnmoTmlofku7blkI0iCiAKLSM6IHRyZWUtd2Fsay5jOjExNQorIzogdHJlZS13YWxrLmM6MTE3CiBtc2dpZCAidG9vLXNob3J0IHRyZWUgZmlsZSIKIG1zZ3N0ciAi5aSq55+t55qE5qCR5paH5Lu2IgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTIKKyM6IHVucGFjay10cmVlcy5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6XG4iCkBAIC02MzQ3LDcgKzg0MjYsNyBAQAogIuaCqOWvueS4i+WIl+aWh+S7tueahOacrOWcsOS/ruaUueWwhuiiq+ajgOWHuuaTjeS9nOimhueblu+8mlxuIgogIiUlc+ivt+WcqOWIh+aNouWIhuaUr+WJjeaPkOS6pOaIlui0ruiXj+aCqOeahOS/ruaUueOAgiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTE0CisjOiB1bnBhY2stdHJlZXMuYzoxMTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IGNoZWNrb3V0OlxuIgpAQCAtNjM1Niw3ICs4NDM1LDcgQEAKICLmgqjlr7nkuIvliJfmlofku7bnmoTmnKzlnLDkv67mlLnlsIbooqvmo4Dlh7rmk43kvZzopobnm5bvvJpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjExNworIzogdW5wYWNrLXRyZWVzLmM6MTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTYzNjUsNyArODQ0NCw3IEBACiAi5oKo5a+55LiL5YiX5paH5Lu255qE5pys5Zyw5L+u5pS55bCG6KKr5ZCI5bm25pON5L2c6KaG55uW77yaXG4iCiAiJSVz6K+35Zyo5ZCI5bm25YmN5o+Q5Lqk5oiW6LSu6JeP5oKo55qE5L+u5pS544CCIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMTkKKyM6IHVucGFjay10cmVlcy5jOjExNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCkBAIC02Mzc0LDcgKzg0NTMsNyBAQAogIuaCqOWvueS4i+WIl+aWh+S7tueahOacrOWcsOS/ruaUueWwhuiiq+WQiOW5tuaTjeS9nOimhueblu+8mlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTIyCisjOiB1bnBhY2stdHJlZXMuYzoxMjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjM4Myw3ICs4NDYyLDcgQEAKICLmgqjlr7nkuIvliJfmlofku7bnmoTmnKzlnLDkv67mlLnlsIbooqsgJXMg6KaG55uW77yaXG4iCiAiJSVz6K+35ZyoICVzIOS5i+WJjeaPkOS6pOaIlui0ruiXj+aCqOeahOS/ruaUueOAgiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTI0CisjOiB1bnBhY2stdHJlZXMuYzoxMjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjM5Miw3ICs4NDcxLDcgQEAKICLmgqjlr7nkuIvliJfmlofku7bnmoTmnKzlnLDkv67mlLnlsIbooqsgJXMg6KaG55uW77yaXG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMjkKKyM6IHVucGFjay10cmVlcy5jOjEyNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVXBkYXRpbmcgdGhlIGZvbGxvd2luZyBkaXJlY3RvcmllcyB3b3VsZCBsb3NlIHVudHJhY2tlZCBmaWxlcyBpbiB0aGVtOlxuIgpAQCAtNjQwMSw3ICs4NDgwLDcgQEAKICLmm7TmlrDlpoLkuIvnm67lvZXlsIbkvJrkuKLlpLHlhbbkuK3mnKrot5/ouKrnmoTmlofku7bvvJpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTMzCisjOiB1bnBhY2stdHJlZXMuYzoxMzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IGNoZWNrb3V0OlxuIgpAQCAtNjQxMCw3ICs4NDg5LDcgQEAKICLlt6XkvZzljLrkuK3kuIvliJfmnKrot5/ouKrnmoTmlofku7blsIbkvJrlm6DkuLrmo4Dlh7rmk43kvZzogIzooqvliKDpmaTvvJpcbiIKICIlJXPor7flnKjliIfmjaLliIbmlK/kuYvliY3np7vliqjmiJbliKDpmaTjgIIiCiAKLSM6IHVucGFjay10cmVlcy5jOjEzNQorIzogdW5wYWNrLXRyZWVzLmM6MTMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBjaGVja291dDpcbiIKQEAgLTY0MTksNyArODQ5OCw3IEBACiAi5bel5L2c5Yy65Lit5LiL5YiX5pyq6Lef6Liq55qE5paH5Lu25bCG5Lya5Zug5Li65qOA5Ye65pON5L2c6ICM6KKr5Yig6Zmk77yaXG4iCiAiJSVzIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxMzgKKyM6IHVucGFjay10cmVlcy5jOjEzNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgbWVyZ2U6XG4iCkBAIC02NDI4LDcgKzg1MDcsNyBAQAogIuW3peS9nOWMuuS4reS4i+WIl+acqui3n+i4queahOaWh+S7tuWwhuS8muWboOS4uuWQiOW5tuaTjeS9nOiAjOiiq+WIoOmZpO+8mlxuIgogIiUlc+ivt+WcqOWQiOW5tuWJjeenu+WKqOaIluWIoOmZpOOAgiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTQwCisjOiB1bnBhY2stdHJlZXMuYzoxMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IG1lcmdlOlxuIgpAQCAtNjQzNyw3ICs4NTE2LDcgQEAKICLlt6XkvZzljLrkuK3kuIvliJfmnKrot5/ouKrnmoTmlofku7blsIbkvJrlm6DkuLrlkIjlubbmk43kvZzogIzooqvliKDpmaTvvJpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE0MworIzogdW5wYWNrLXRyZWVzLmM6MTQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSAlczpcbiIKQEAgLTY0NDYsNyArODUyNSw3IEBACiAi5bel5L2c5Yy65Lit5LiL5YiX5pyq6Lef6Liq55qE5paH5Lu25bCG5Lya5Zug5Li6ICVzIOaTjeS9nOiAjOiiq+WIoOmZpO+8mlxuIgogIiUlc+ivt+WcqCAlcyDliY3np7vliqjmiJbliKDpmaTjgIIiCiAKLSM6IHVucGFjay10cmVlcy5jOjE0NQorIzogdW5wYWNrLXRyZWVzLmM6MTQzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSAlczpcbiIKQEAgLTY0NTUsNyArODUzNCw3IEBACiAi5bel5L2c5Yy65Lit5LiL5YiX5pyq6Lef6Liq55qE5paH5Lu25bCG5Lya5Zug5Li6ICVzIOaTjeS9nOiAjOiiq+WIoOmZpO+8mlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTUxCisjOiB1bnBhY2stdHJlZXMuYzoxNDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCkBAIC02NDY1LDcgKzg1NDQsNyBAQAogIuW3peS9nOWMuuS4reS4i+WIl+acqui3n+i4queahOaWh+S7tuWwhuS8muWboOS4uuajgOWHuuaTjeS9nOiAjOiiq+imhueblu+8mlxuIgogIiUlc+ivt+WcqOWIh+aNouWIhuaUr+WJjeenu+WKqOaIluWIoOmZpOOAgiIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTUzCisjOiB1bnBhY2stdHJlZXMuYzoxNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCkBAIC02NDc1LDcgKzg1NTQsNyBAQAogIuW3peS9nOWMuuS4reS4i+WIl+acqui3n+i4queahOaWh+S7tuWwhuS8muWboOS4uuajgOWHuuaTjeS9nOiAjOiiq+imhueblu+8mlxuIgogIiUlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTU2CisjOiB1bnBhY2stdHJlZXMuYzoxNTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKQEAgLTY0ODQsNyArODU2Myw3IEBACiAi5bel5L2c5Yy65Lit5LiL5YiX5pyq6Lef6Liq55qE5paH5Lu25bCG5Lya5Zug5Li65ZCI5bm25pON5L2c6ICM6KKr6KaG55uW77yaXG4iCiAiJSVz6K+35Zyo5ZCI5bm25YmN56e75Yqo5oiW5Yig6Zmk44CCIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNTgKKyM6IHVucGFjay10cmVlcy5jOjE1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgpAQCAtNjQ5Myw3ICs4NTcyLDcgQEAKICLlt6XkvZzljLrkuK3kuIvliJfmnKrot5/ouKrnmoTmlofku7blsIbkvJrlm6DkuLrlkIjlubbmk43kvZzogIzooqvopobnm5bvvJpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE2MQorIzogdW5wYWNrLXRyZWVzLmM6MTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCkBAIC02NTAyLDcgKzg1ODEsNyBAQAogIuW3peS9nOWMuuS4reS4i+WIl+acqui3n+i4queahOaWh+S7tuWwhuS8muWboOS4uiAlcyDmk43kvZzogIzooqvopobnm5bvvJpcbiIKICIlJXPor7flnKggJXMg5YmN56e75Yqo5oiW5Yig6Zmk44CCIgogCi0jOiB1bnBhY2stdHJlZXMuYzoxNjMKKyM6IHVucGFjay10cmVlcy5jOjE2MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgpAQCAtNjUxMSwxMiArODU5MCwxMiBAQAogIuW3peS9nOWMuuS4reS4i+WIl+acqui3n+i4queahOaWh+S7tuWwhuS8muWboOS4uiAlcyDmk43kvZzogIzooqvopobnm5bvvJpcbiIKICIlJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE3MQorIzogdW5wYWNrLXRyZWVzLmM6MTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkVudHJ5ICclcycgb3ZlcmxhcHMgd2l0aCAnJXMnLiAgQ2Fubm90IGJpbmQuIgogbXNnc3RyICLmnaHnm64gJyVzJyDlkowgJyVzJyDph43lj6DjgILml6Dms5XlkIjlubbjgIIiCiAKLSM6IHVucGFjay10cmVlcy5jOjE3NAorIzogdW5wYWNrLXRyZWVzLmM6MTcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgdXBkYXRlIHNwYXJzZSBjaGVja291dDogdGhlIGZvbGxvd2luZyBlbnRyaWVzIGFyZSBub3QgdXAgdG8gZGF0ZTpcbiIKQEAgLTY1MjUsNyArODYwNCw3IEBACiAi5peg5rOV5pu05paw56iA55aP5qOA5Ye677ya5aaC5LiL5p2h55uu5LiN5piv5pyA5paw77yaXG4iCiAiJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE3NgorIzogdW5wYWNrLXRyZWVzLmM6MTc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBzcGFyc2UgY2hlY2tvdXQgIgpAQCAtNjUzNSw3ICs4NjE0LDcgQEAKICLlt6XkvZzljLrkuK3kuIvliJfmlofku7blsIbooqvnqIDnlo/mo4Dlh7rmm7TmlrDmiYDopobnm5bvvJpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MTc4CisjOiB1bnBhY2stdHJlZXMuYzoxNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgc3BhcnNlIGNoZWNrb3V0ICIKQEAgLTY1NDUsNyArODYyNCw3IEBACiAi5bel5L2c5Yy65Lit5LiL5YiX5paH5Lu25bCG6KKr56iA55aP5qOA5Ye65pu05paw5omA5Yig6Zmk77yaXG4iCiAiJXMiCiAKLSM6IHVucGFjay10cmVlcy5jOjE4MAorIzogdW5wYWNrLXRyZWVzLmM6MTc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgdXBkYXRlIHN1Ym1vZHVsZTpcbiIKQEAgLTY1NTQsMTYgKzg2MzMsMTYgQEAKICLml6Dms5Xmm7TmlrDlrZDmqKHnu4TvvJpcbiIKICIlcyIKIAotIzogdW5wYWNrLXRyZWVzLmM6MjU0CisjOiB1bnBhY2stdHJlZXMuYzoyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQWJvcnRpbmdcbiIKLW1zZ3N0ciAi57uI5q2i5LitXG4iCittc2dzdHIgIuato+WcqOe7iOatolxuIgogCi0jOiB1bnBhY2stdHJlZXMuYzozMzYKLW1zZ2lkICJDaGVja2luZyBvdXQgZmlsZXMiCi1tc2dzdHIgIuato+WcqOajgOWHuuaWh+S7tiIKKyM6IHVucGFjay10cmVlcy5jOjMxNworbXNnaWQgIlVwZGF0aW5nIGZpbGVzIgorbXNnc3RyICLmraPlnKjmm7TmlrDmlofku7YiCiAKLSM6IHVucGFjay10cmVlcy5jOjM2OAorIzogdW5wYWNrLXRyZWVzLmM6MzQ5CiBtc2dpZCAiIgogInRoZSBmb2xsb3dpbmcgcGF0aHMgaGF2ZSBjb2xsaWRlZCAoZS5nLiBjYXNlLXNlbnNpdGl2ZSBwYXRoc1xuIgogIm9uIGEgY2FzZS1pbnNlbnNpdGl2ZSBmaWxlc3lzdGVtKSBhbmQgb25seSBvbmUgZnJvbSB0aGUgc2FtZVxuIgpAQCAtNjU3Miw2ICs4NjUxLDEwIEBACiAi5Lul5LiL6Lev5b6E5Y+R55Sf56Kw5pKe77yI5aaC77ya5Zyo5LiN5Yy65YiG5aSn5bCP5YaZ55qE5paH5Lu257O757uf5LiK55qE5Yy65YiG5aSn5bCP5YaZ55qE6Lev5b6E77yJ77yMXG4iCiAi5bm25LiU56Kw5pKe57uE5Lit5Y+q5pyJ5LiA5Liq5paH5Lu25a2Y5Zyo5bel5L2c5Yy65Lit77yaXG4iCiAKKyM6IHVucGFjay10cmVlcy5jOjE0NDUKK21zZ2lkICJVcGRhdGluZyBpbmRleCBmbGFncyIKK21zZ3N0ciAi5q2j5Zyo5pu05paw57Si5byV5qCH5b+XIgorCiAjOiB1cmxtYXRjaC5jOjE2MwogbXNnaWQgImludmFsaWQgVVJMIHNjaGVtZSBuYW1lIG9yIG1pc3NpbmcgJzovLycgc3VmZml4IgogbXNnc3RyICLml6DmlYjnmoQgVVJMIOaWueahiOWQjeensOaIluS4ouWksSAnOi8vJyDlkI7nvIAiCkBAIC02NjAxLDIwNiArODY4NCwyMTUgQEAKIG1zZ2lkICJpbnZhbGlkICcuLicgcGF0aCBzZWdtZW50IgogbXNnc3RyICLml6DmlYjnmoQgJy4uJyDot6/lvoTniYfmrrUiCiAKLSM6IHdvcmt0cmVlLmM6MjQ5IGJ1aWx0aW4vYW0uYzoyMTAwCisjOiB3YWxrZXIuYzoxNzAKK21zZ2lkICJGZXRjaGluZyBvYmplY3RzIgorbXNnc3RyICLmraPlnKjojrflj5blr7nosaEiCisKKyM6IHdvcmt0cmVlLmM6MjU5IGJ1aWx0aW4vYW0uYzoyMDk5CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byByZWFkICclcyciCiBtc2dzdHIgIuivu+WPliAnJXMnIOWksei0pSIKIAotIzogd29ya3RyZWUuYzoyOTUKKyM6IHdvcmt0cmVlLmM6MzA1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgYXQgbWFpbiB3b3JraW5nIHRyZWUgaXMgbm90IHRoZSByZXBvc2l0b3J5IGRpcmVjdG9yeSIKIG1zZ3N0ciAi5Zyo5Li75bel5L2c5Yy655qEICclcycg5LiN5piv5LuT5bqT55uu5b2VIgogCi0jOiB3b3JrdHJlZS5jOjMwNgorIzogd29ya3RyZWUuYzozMTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBmaWxlIGRvZXMgbm90IGNvbnRhaW4gYWJzb2x1dGUgcGF0aCB0byB0aGUgd29ya2luZyB0cmVlIGxvY2F0aW9uIgogbXNnc3RyICLmlofku7YgJyVzJyDkuI3ljIXlkKvlt6XkvZzljLrnmoTnu53lr7not6/lvoQiCiAKLSM6IHdvcmt0cmVlLmM6MzE4CisjOiB3b3JrdHJlZS5jOjMyOAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICInJXMnIOS4jeWtmOWcqCIKIAotIzogd29ya3RyZWUuYzozMjQKKyM6IHdvcmt0cmVlLmM6MzM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgLmdpdCBmaWxlLCBlcnJvciBjb2RlICVkIgogbXNnc3RyICInJXMnIOS4jeaYr+S4gOS4qiAuZ2l0IOaWh+S7tu+8jOmUmeivr+eggSAlZCIKIAotIzogd29ya3RyZWUuYzozMzIKKyM6IHdvcmt0cmVlLmM6MzQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZG9lcyBub3QgcG9pbnQgYmFjayB0byAnJXMnIgogbXNnc3RyICInJXMnIOayoeacieaMh+WbnuWIsCAnJXMnIgogCi0jOiB3cmFwcGVyLmM6MjIzIHdyYXBwZXIuYzozOTMKKyM6IHdyYXBwZXIuYzoxODYgd3JhcHBlci5jOjM1NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciByZWFkaW5nIGFuZCB3cml0aW5nIgogbXNnc3RyICLml6Dms5XmiZPlvIAgJyVzJyDov5vooYzor7vlhpkiCiAKLSM6IHdyYXBwZXIuYzo0MjQgd3JhcHBlci5jOjYyNAorIzogd3JhcHBlci5jOjM4NyB3cmFwcGVyLmM6NTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgJyVzJyIKIG1zZ3N0ciAi5LiN6IO96K6/6ZeuICclcyciCiAKLSM6IHdyYXBwZXIuYzo2MzIKKyM6IHdyYXBwZXIuYzo1OTYKIG1zZ2lkICJ1bmFibGUgdG8gZ2V0IGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkiCiBtc2dzdHIgIuS4jeiDveiOt+WPluW9k+WJjeW3peS9nOebruW9lSIKIAotIzogd3Qtc3RhdHVzLmM6MTU0CisjOiB3dC1zdGF0dXMuYzoxNTgKIG1zZ2lkICJVbm1lcmdlZCBwYXRoczoiCiBtc2dzdHIgIuacquWQiOW5tueahOi3r+W+hO+8miIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoxODEgd3Qtc3RhdHVzLmM6MjA4Ci0jLCBjLWZvcm1hdAotbXNnaWQgIiAgKHVzZSBcImdpdCByZXNldCAlcyA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKLW1zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgcmVzZXQgJXMgPOaWh+S7tj4uLi5cIiDku6Xlj5bmtojmmoLlrZjvvIkiCisjOiB3dC1zdGF0dXMuYzoxODcgd3Qtc3RhdHVzLmM6MjE5Cittc2dpZCAiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPOaWh+S7tj4uLi5cIiDku6Xlj5bmtojmmoLlrZjvvIkiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogd3Qtc3RhdHVzLmM6MTgzIHd0LXN0YXR1cy5jOjIxMAorIzogd3Qtc3RhdHVzLmM6MTkwIHd0LXN0YXR1cy5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIgICh1c2UgXCJnaXQgcmVzdG9yZSAtLXNvdXJjZT0lcyAtLXN0YWdlZCA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKK21zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgcmVzdG9yZSAtLXNvdXJjZT0lcyAtLXN0YWdlZCA85paH5Lu2Pi4uLlwiIOS7peWPlua2iOaaguWtmO+8iSIKKworIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8CisjOiB3dC1zdGF0dXMuYzoxOTMgd3Qtc3RhdHVzLmM6MjI1CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJtIC0tY2FjaGVkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgogbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCBybSAtLWNhY2hlZCA85paH5Lu2Pi4uLlwiIOS7peWPlua2iOaaguWtmO+8iSIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoxODcKKyM6IHd0LXN0YXR1cy5jOjE5NwogbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQgPGZpbGU+Li4uXCIgdG8gbWFyayByZXNvbHV0aW9uKSIKIG1zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgYWRkIDzmlofku7Y+Li4uXCIg5qCH6K6w6Kej5Yaz5pa55qGI77yJIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IHd0LXN0YXR1cy5jOjE4OSB3dC1zdGF0dXMuYzoxOTMKKyM6IHd0LXN0YXR1cy5jOjE5OSB3dC1zdGF0dXMuYzoyMDMKIG1zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIGFzIGFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbikiCiBtc2dzdHIgIiAg77yI6YWM5oOF5L2/55SoIFwiZ2l0IGFkZC9ybSA85paH5Lu2Pi4uLlwiIOagh+iusOino+WGs+aWueahiO+8iSIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoxOTEKKyM6IHd0LXN0YXR1cy5jOjIwMQogbXNnaWQgIiAgKHVzZSBcImdpdCBybSA8ZmlsZT4uLi5cIiB0byBtYXJrIHJlc29sdXRpb24pIgogbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCBybSA85paH5Lu2Pi4uLlwiIOagh+iusOino+WGs+aWueahiO+8iSIKIAotIzogd3Qtc3RhdHVzLmM6MjAyIHd0LXN0YXR1cy5jOjEwNDIKKyM6IHd0LXN0YXR1cy5jOjIxMSB3dC1zdGF0dXMuYzoxMDc0CiBtc2dpZCAiQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6IgogbXNnc3RyICLopoHmj5DkuqTnmoTlj5jmm7TvvJoiCiAKLSM6IHd0LXN0YXR1cy5jOjIyMCB3dC1zdGF0dXMuYzoxMDUxCisjOiB3dC1zdGF0dXMuYzoyMzQgd3Qtc3RhdHVzLmM6MTA4MwogbXNnaWQgIkNoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OiIKIG1zZ3N0ciAi5bCa5pyq5pqC5a2Y5Lul5aSH5o+Q5Lqk55qE5Y+Y5pu077yaIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IHd0LXN0YXR1cy5jOjIyNAorIzogd3Qtc3RhdHVzLmM6MjM4CiBtc2dpZCAiICAodXNlIFwiZ2l0IGFkZCA8ZmlsZT4uLi5cIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCiBtc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IGFkZCA85paH5Lu2Pi4uLlwiIOabtOaWsOimgeaPkOS6pOeahOWGheWuue+8iSIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoyMjYKKyM6IHd0LXN0YXR1cy5jOjI0MAogbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQvcm0gPGZpbGU+Li4uXCIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIgogbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCBhZGQvcm0gPOaWh+S7tj4uLi5cIiDmm7TmlrDopoHmj5DkuqTnmoTlhoXlrrnvvIkiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogd3Qtc3RhdHVzLmM6MjI3CisjOiB3dC1zdGF0dXMuYzoyNDEKIG1zZ2lkICIiCi0iICAodXNlIFwiZ2l0IGNoZWNrb3V0IC0tIDxmaWxlPi4uLlwiIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkiCi1tc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IGNoZWNrb3V0IC0tIDzmlofku7Y+Li4uXCIg5Lii5byD5bel5L2c5Yy655qE5pS55Yqo77yJIgorIiAgKHVzZSBcImdpdCByZXN0b3JlIDxmaWxlPi4uLlwiIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkiCittc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IHJlc3RvcmUgPOaWh+S7tj4uLi5cIiDkuKLlvIPlt6XkvZzljLrnmoTmlLnliqjvvIkiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogd3Qtc3RhdHVzLmM6MjI5CisjOiB3dC1zdGF0dXMuYzoyNDMKIG1zZ2lkICIgIChjb21taXQgb3IgZGlzY2FyZCB0aGUgdW50cmFja2VkIG9yIG1vZGlmaWVkIGNvbnRlbnQgaW4gc3VibW9kdWxlcykiCiBtc2dzdHIgIiAg77yI5o+Q5Lqk5oiW5Lii5byD5a2Q5qih57uE5Lit5pyq6Lef6Liq5oiW5L+u5pS555qE5YaF5a6577yJIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IHd0LXN0YXR1cy5jOjI0MQorIzogd3Qtc3RhdHVzLmM6MjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgKHVzZSBcImdpdCAlcyA8ZmlsZT4uLi5cIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIgogbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCAlcyA85paH5Lu2Pi4uLlwiIOS7peWMheWQq+imgeaPkOS6pOeahOWGheWuue+8iSIKIAotIzogd3Qtc3RhdHVzLmM6MjU2CisjOiB3dC1zdGF0dXMuYzoyNjgKIG1zZ2lkICJib3RoIGRlbGV0ZWQ6IgogbXNnc3RyICLlj4zmlrnliKDpmaTvvJoiCiAKLSM6IHd0LXN0YXR1cy5jOjI1OAorIzogd3Qtc3RhdHVzLmM6MjcwCiBtc2dpZCAiYWRkZWQgYnkgdXM6IgogbXNnc3RyICLnlLHmiJHku6zmt7vliqDvvJoiCiAKLSM6IHd0LXN0YXR1cy5jOjI2MAorIzogd3Qtc3RhdHVzLmM6MjcyCiBtc2dpZCAiZGVsZXRlZCBieSB0aGVtOiIKIG1zZ3N0ciAi55Sx5LuW5Lus5Yig6Zmk77yaIgogCi0jOiB3dC1zdGF0dXMuYzoyNjIKKyM6IHd0LXN0YXR1cy5jOjI3NAogbXNnaWQgImFkZGVkIGJ5IHRoZW06IgogbXNnc3RyICLnlLHku5bku6zmt7vliqDvvJoiCiAKLSM6IHd0LXN0YXR1cy5jOjI2NAorIzogd3Qtc3RhdHVzLmM6Mjc2CiBtc2dpZCAiZGVsZXRlZCBieSB1czoiCiBtc2dzdHIgIueUseaIkeS7rOWIoOmZpO+8miIKIAotIzogd3Qtc3RhdHVzLmM6MjY2CisjOiB3dC1zdGF0dXMuYzoyNzgKIG1zZ2lkICJib3RoIGFkZGVkOiIKIG1zZ3N0ciAi5Y+M5pa55re75Yqg77yaIgogCi0jOiB3dC1zdGF0dXMuYzoyNjgKKyM6IHd0LXN0YXR1cy5jOjI4MAogbXNnaWQgImJvdGggbW9kaWZpZWQ6IgogbXNnc3RyICLlj4zmlrnkv67mlLnvvJoiCiAKLSM6IHd0LXN0YXR1cy5jOjI3OAorIzogd3Qtc3RhdHVzLmM6MjkwCiBtc2dpZCAibmV3IGZpbGU6IgogbXNnc3RyICLmlrDmlofku7bvvJoiCiAKLSM6IHd0LXN0YXR1cy5jOjI4MAorIzogd3Qtc3RhdHVzLmM6MjkyCiBtc2dpZCAiY29waWVkOiIKIG1zZ3N0ciAi5ou36LSd77yaIgogCi0jOiB3dC1zdGF0dXMuYzoyODIKKyM6IHd0LXN0YXR1cy5jOjI5NAogbXNnaWQgImRlbGV0ZWQ6IgogbXNnc3RyICLliKDpmaTvvJoiCiAKLSM6IHd0LXN0YXR1cy5jOjI4NAorIzogd3Qtc3RhdHVzLmM6Mjk2CiBtc2dpZCAibW9kaWZpZWQ6IgogbXNnc3RyICLkv67mlLnvvJoiCiAKLSM6IHd0LXN0YXR1cy5jOjI4NgorIzogd3Qtc3RhdHVzLmM6Mjk4CiBtc2dpZCAicmVuYW1lZDoiCiBtc2dzdHIgIumHjeWRveWQje+8miIKIAotIzogd3Qtc3RhdHVzLmM6Mjg4CisjOiB3dC1zdGF0dXMuYzozMDAKIG1zZ2lkICJ0eXBlY2hhbmdlOiIKIG1zZ3N0ciAi57G75Z6L5Y+Y5pu077yaIgogCi0jOiB3dC1zdGF0dXMuYzoyOTAKKyM6IHd0LXN0YXR1cy5jOjMwMgogbXNnaWQgInVua25vd246IgogbXNnc3RyICLmnKrnn6XvvJoiCiAKLSM6IHd0LXN0YXR1cy5jOjI5MgorIzogd3Qtc3RhdHVzLmM6MzA0CiBtc2dpZCAidW5tZXJnZWQ6IgogbXNnc3RyICLmnKrlkIjlubbvvJoiCiAKICMgIOivkeiAhe+8muacq+WwvuS4pOS4quWtl+iKguWPr+iDveiiq+WIoOWHj++8jOWmguaenOe/u+ivkeS4uuS4reaWh+agh+eCueS8muWHuueOsOWNiuS4quaxieWtlwotIzogd3Qtc3RhdHVzLmM6MzcyCisjOiB3dC1zdGF0dXMuYzozODQKIG1zZ2lkICJuZXcgY29tbWl0cywgIgogbXNnc3RyICLmlrDmj5DkuqQsICIKIAogIyAg6K+R6ICF77ya5pyr5bC+5Lik5Liq5a2X6IqC5Y+v6IO96KKr5Yig5YeP77yM5aaC5p6c57+76K+R5Li65Lit5paH5qCH54K55Lya5Ye6546w5Y2K5Liq5rGJ5a2XCi0jOiB3dC1zdGF0dXMuYzozNzQKKyM6IHd0LXN0YXR1cy5jOjM4NgogbXNnaWQgIm1vZGlmaWVkIGNvbnRlbnQsICIKIG1zZ3N0ciAi5L+u5pS555qE5YaF5a65LCAiCiAKICMgIOivkeiAhe+8muacq+WwvuS4pOS4quWtl+iKguWPr+iDveiiq+WIoOWHj++8jOWmguaenOe/u+ivkeS4uuS4reaWh+agh+eCueS8muWHuueOsOWNiuS4quaxieWtlwotIzogd3Qtc3RhdHVzLmM6Mzc2CisjOiB3dC1zdGF0dXMuYzozODgKIG1zZ2lkICJ1bnRyYWNrZWQgY29udGVudCwgIgogbXNnc3RyICLmnKrot5/ouKrnmoTlhoXlrrksICIKIAotIzogd3Qtc3RhdHVzLmM6ODgwCisjOiB3dC1zdGF0dXMuYzo5MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91ciBzdGFzaCBjdXJyZW50bHkgaGFzICVkIGVudHJ5IgogbXNnaWRfcGx1cmFsICJZb3VyIHN0YXNoIGN1cnJlbnRseSBoYXMgJWQgZW50cmllcyIKIG1zZ3N0clswXSAi5oKo55qE6LSu6JeP5Yy65b2T5YmN5pyJICVkIOadoeiusOW9lSIKIG1zZ3N0clsxXSAi5oKo55qE6LSu6JeP5Yy65b2T5YmN5pyJICVkIOadoeiusOW9lSIKIAotIzogd3Qtc3RhdHVzLmM6OTEyCisjOiB3dC1zdGF0dXMuYzo5MzgKIG1zZ2lkICJTdWJtb2R1bGVzIGNoYW5nZWQgYnV0IG5vdCB1cGRhdGVkOiIKIG1zZ3N0ciAi5a2Q5qih57uE5bey5L+u5pS55L2G5bCa5pyq5pu05paw77yaIgogCi0jOiB3dC1zdGF0dXMuYzo5MTQKKyM6IHd0LXN0YXR1cy5jOjk0MAogbXNnaWQgIlN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCiBtc2dzdHIgIuimgeaPkOS6pOeahOWtkOaooee7hOWPmOabtO+8miIKIAotIzogd3Qtc3RhdHVzLmM6OTk2CisjOiB3dC1zdGF0dXMuYzoxMDIyCiBtc2dpZCAiIgogIkRvIG5vdCBtb2RpZnkgb3IgcmVtb3ZlIHRoZSBsaW5lIGFib3ZlLlxuIgogIkV2ZXJ5dGhpbmcgYmVsb3cgaXQgd2lsbCBiZSBpZ25vcmVkLiIKQEAgLTY4MDgsNzcgKzg5MDAsODggQEAKICLkuI3opoHmlLnliqjmiJbliKDpmaTkuIrpnaLnmoTkuIDooYzjgIJcbiIKICLlhbbkuIvmiYDmnInlhoXlrrnpg73lsIbooqvlv73nlaXjgIIiCiAKLSM6IHd0LXN0YXR1cy5jOjEwOTcKKyM6IHd0LXN0YXR1cy5jOjExMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGNvbXB1dGUgdGhlIGJyYW5jaCBhaGVhZC9iZWhpbmQgdmFsdWVzLlxuIgorIllvdSBjYW4gdXNlICctLW5vLWFoZWFkLWJlaGluZCcgdG8gYXZvaWQgdGhpcy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIuiKseS6hiAlLjJmIOenkuaJjeiuoeeul+WHuuWIhuaUr+eahOmihuWFiC/okL3lkI7ojIPlm7TjgIJcbiIKKyLkuLrpgb/lhY3vvIzmgqjlj6/ku6Xkvb/nlKggJy0tbm8tYWhlYWQtYmVoaW5kJ+OAglxuIgorCisjOiB3dC1zdGF0dXMuYzoxMTQ0CiBtc2dpZCAiWW91IGhhdmUgdW5tZXJnZWQgcGF0aHMuIgogbXNnc3RyICLmgqjmnInlsJrmnKrlkIjlubbnmoTot6/lvoTjgIIiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogd3Qtc3RhdHVzLmM6MTEwMAorIzogd3Qtc3RhdHVzLmM6MTE0NwogbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjb21taXRcIikiCiBtc2dzdHIgIiAg77yI6Kej5Yaz5Yay56qB5bm26L+Q6KGMIFwiZ2l0IGNvbW1pdFwi77yJIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IHd0LXN0YXR1cy5jOjExMDIKKyM6IHd0LXN0YXR1cy5jOjExNDkKIG1zZ2lkICIgICh1c2UgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIHRvIGFib3J0IHRoZSBtZXJnZSkiCiBtc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IG1lcmdlIC0tYWJvcnRcIiDnu4jmraLlkIjlubbvvIkiCiAKLSM6IHd0LXN0YXR1cy5jOjExMDYKKyM6IHd0LXN0YXR1cy5jOjExNTMKIG1zZ2lkICJBbGwgY29uZmxpY3RzIGZpeGVkIGJ1dCB5b3UgYXJlIHN0aWxsIG1lcmdpbmcuIgogbXNnc3RyICLmiYDmnInlhrLnqoHlt7Lop6PlhrPkvYbmgqjku43lpITkuo7lkIjlubbkuK3jgIIiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogd3Qtc3RhdHVzLmM6MTEwOQorIzogd3Qtc3RhdHVzLmM6MTE1NgogbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXRcIiB0byBjb25jbHVkZSBtZXJnZSkiCiBtc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IGNvbW1pdFwiIOe7k+adn+WQiOW5tu+8iSIKIAotIzogd3Qtc3RhdHVzLmM6MTExOAorIzogd3Qtc3RhdHVzLmM6MTE2NQogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbiBhbSBzZXNzaW9uLiIKIG1zZ3N0ciAi5oKo5q2j5aSE5LqOIGFtIOaTjeS9nOi/h+eoi+S4reOAgiIKIAotIzogd3Qtc3RhdHVzLmM6MTEyMQorIzogd3Qtc3RhdHVzLmM6MTE2OAogbXNnaWQgIlRoZSBjdXJyZW50IHBhdGNoIGlzIGVtcHR5LiIKIG1zZ3N0ciAi5b2T5YmN55qE6KGl5LiB5Li656m644CCIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IHd0LXN0YXR1cy5jOjExMjUKKyM6IHd0LXN0YXR1cy5jOjExNzIKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCB0aGVuIHJ1biBcImdpdCBhbSAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgIO+8iOino+WGs+WGsueqge+8jOeEtuWQjui/kOihjCBcImdpdCBhbSAtLWNvbnRpbnVlXCLvvIkiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogd3Qtc3RhdHVzLmM6MTEyNworIzogd3Qtc3RhdHVzLmM6MTE3NAogbXNnaWQgIiAgKHVzZSBcImdpdCBhbSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgogbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCBhbSAtLXNraXBcIiDot7Pov4fmraTooaXkuIHvvIkiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogd3Qtc3RhdHVzLmM6MTEyOQorIzogd3Qtc3RhdHVzLmM6MTE3NgogbXNnaWQgIiAgKHVzZSBcImdpdCBhbSAtLWFib3J0XCIgdG8gcmVzdG9yZSB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgYW0gLS1hYm9ydFwiIOaBouWkjeWOn+acieWIhuaUr++8iSIKIAotIzogd3Qtc3RhdHVzLmM6MTI2MAorIzogd3Qtc3RhdHVzLmM6MTMwOQogbXNnaWQgImdpdC1yZWJhc2UtdG9kbyBpcyBtaXNzaW5nLiIKIG1zZ3N0ciAiZ2l0LXJlYmFzZS10b2RvIOS4ouWkseOAgiIKIAotIzogd3Qtc3RhdHVzLmM6MTI2MgorIzogd3Qtc3RhdHVzLmM6MTMxMQogbXNnaWQgIk5vIGNvbW1hbmRzIGRvbmUuIgogbXNnc3RyICLmsqHmnInlkb3ku6TooqvmiafooYzjgIIiCiAKLSM6IHd0LXN0YXR1cy5jOjEyNjUKKyM6IHd0LXN0YXR1cy5jOjEzMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiTGFzdCBjb21tYW5kIGRvbmUgKCVkIGNvbW1hbmQgZG9uZSk6IgogbXNnaWRfcGx1cmFsICJMYXN0IGNvbW1hbmRzIGRvbmUgKCVkIGNvbW1hbmRzIGRvbmUpOiIKIG1zZ3N0clswXSAi5pyA5ZCO5LiA5p2h5ZG95Luk5bey5a6M5oiQ77yIJWQg5p2h5ZG95Luk6KKr5omn6KGM77yJ77yaIgogbXNnc3RyWzFdICLmnIDlkI7nmoTlkb3ku6Tlt7LlrozmiJDvvIglZCDmnaHlkb3ku6TooqvmiafooYzvvInvvJoiCiAKLSM6IHd0LXN0YXR1cy5jOjEyNzYKKyM6IHd0LXN0YXR1cy5jOjEzMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAoc2VlIG1vcmUgaW4gZmlsZSAlcykiCiBtc2dzdHIgIiAg77yI5pu05aSa5Y+C6KeB5paH5Lu2ICVz77yJIgogCi0jOiB3dC1zdGF0dXMuYzoxMjgxCisjOiB3dC1zdGF0dXMuYzoxMzMwCiBtc2dpZCAiTm8gY29tbWFuZHMgcmVtYWluaW5nLiIKIG1zZ3N0ciAi5pyq5Ymp5LiL5Lu75L2V5ZG95Luk44CCIgogCi0jOiB3dC1zdGF0dXMuYzoxMjg0CisjOiB3dC1zdGF0dXMuYzoxMzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5leHQgY29tbWFuZCB0byBkbyAoJWQgcmVtYWluaW5nIGNvbW1hbmQpOiIKIG1zZ2lkX3BsdXJhbCAiTmV4dCBjb21tYW5kcyB0byBkbyAoJWQgcmVtYWluaW5nIGNvbW1hbmRzKToiCkBAIC02ODg2LDE2OSArODk4OSwxODkgQEAKIG1zZ3N0clsxXSAi5o6l5LiL5p2l6KaB5omn6KGM55qE5ZG95Luk77yI5Ymp5L2ZICVkIOadoeWRveS7pO+8ie+8miIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoxMjkyCisjOiB3dC1zdGF0dXMuYzoxMzQxCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb1wiIHRvIHZpZXcgYW5kIGVkaXQpIgogbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCByZWJhc2UgLS1lZGl0LXRvZG9cIiDmnaXmn6XnnIvlkoznvJbovpHvvIkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMDQKKyM6IHd0LXN0YXR1cy5jOjEzNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmViYXNpbmcgYnJhbmNoICclcycgb24gJyVzJy4iCiBtc2dzdHIgIuaCqOWcqOaJp+ihjOWwhuWIhuaUryAnJXMnIOWPmOWfuuWIsCAnJXMnIOeahOaTjeS9nOOAgiIKIAotIzogd3Qtc3RhdHVzLmM6MTMwOQorIzogd3Qtc3RhdHVzLmM6MTM1OAogbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJlYmFzaW5nLiIKIG1zZ3N0ciAi5oKo5Zyo5omn6KGM5Y+Y5Z+65pON5L2c44CCIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IHd0LXN0YXR1cy5jOjEzMjIKKyM6IHd0LXN0YXR1cy5jOjEzNzEKIG1zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCB0aGVuIHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKIG1zZ3N0ciAiICDvvIjop6PlhrPlhrLnqoHvvIznhLblkI7ov5DooYwgXCJnaXQgcmViYXNlIC0tY29udGludWVcIu+8iSIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoxMzI0CisjOiB3dC1zdGF0dXMuYzoxMzczCiBtc2dpZCAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgogbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCByZWJhc2UgLS1za2lwXCIg6Lez6L+H5q2k6KGl5LiB77yJIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IHd0LXN0YXR1cy5jOjEzMjYKKyM6IHd0LXN0YXR1cy5jOjEzNzUKIG1zZ2lkICIgICh1c2UgXCJnaXQgcmViYXNlIC0tYWJvcnRcIiB0byBjaGVjayBvdXQgdGhlIG9yaWdpbmFsIGJyYW5jaCkiCiBtc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IHJlYmFzZSAtLWFib3J0XCIg5Lul5qOA5Ye65Y6f5pyJ5YiG5pSv77yJIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IHd0LXN0YXR1cy5jOjEzMzMKKyM6IHd0LXN0YXR1cy5jOjEzODIKIG1zZ2lkICIgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiAg77yI5omA5pyJ5Yay56qB5bey6Kej5Yaz77ya6L+Q6KGMIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCLvvIkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzMzcKKyM6IHd0LXN0YXR1cy5jOjEzODYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIllvdSBhcmUgY3VycmVudGx5IHNwbGl0dGluZyBhIGNvbW1pdCB3aGlsZSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKIG1zZ3N0ciAi5oKo5Zyo5omn6KGM5bCG5YiG5pSvICclcycg5Y+Y5Z+65YiwICclcycg55qE5pON5L2c5pe25ouG5YiG5o+Q5Lqk44CCIgogCi0jOiB3dC1zdGF0dXMuYzoxMzQyCisjOiB3dC1zdGF0dXMuYzoxMzkxCiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgc3BsaXR0aW5nIGEgY29tbWl0IGR1cmluZyBhIHJlYmFzZS4iCiBtc2dzdHIgIuaCqOWcqOaJp+ihjOWPmOWfuuaTjeS9nOaXtuaLhuWIhuaPkOS6pOOAgiIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoxMzQ1CisjOiB3dC1zdGF0dXMuYzoxMzk0CiBtc2dpZCAiICAoT25jZSB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IGlzIGNsZWFuLCBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIikiCiBtc2dzdHIgIiAg77yI5LiA5pem5oKo5bel5L2c55uu5b2V5o+Q5Lqk5bmy5YeA5ZCO77yM6L+Q6KGMIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCLvvIkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNDkKKyM6IHd0LXN0YXR1cy5jOjEzOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgZWRpdGluZyBhIGNvbW1pdCB3aGlsZSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKIG1zZ3N0ciAi5oKo5Zyo5omn6KGM5bCG5YiG5pSvICclcycg5Y+Y5Z+65YiwICclcycg55qE5pON5L2c5pe257yW6L6R5o+Q5Lqk44CCIgogCi0jOiB3dC1zdGF0dXMuYzoxMzU0CisjOiB3dC1zdGF0dXMuYzoxNDAzCiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgZWRpdGluZyBhIGNvbW1pdCBkdXJpbmcgYSByZWJhc2UuIgogbXNnc3RyICLmgqjlnKjmiafooYzlj5jln7rmk43kvZzml7bnvJbovpHmj5DkuqTjgIIiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogd3Qtc3RhdHVzLmM6MTM1NworIzogd3Qtc3RhdHVzLmM6MTQwNgogbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXQgLS1hbWVuZFwiIHRvIGFtZW5kIHRoZSBjdXJyZW50IGNvbW1pdCkiCiBtc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IGNvbW1pdCAtLWFtZW5kXCIg5L+u6KGl5b2T5YmN5o+Q5Lqk77yJIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IHd0LXN0YXR1cy5jOjEzNTkKKyM6IHd0LXN0YXR1cy5jOjE0MDgKIG1zZ2lkICIiCiAiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIgb25jZSB5b3UgYXJlIHNhdGlzZmllZCB3aXRoIHlvdXIgY2hhbmdlcykiCiBtc2dzdHIgIiAg77yI5b2T5oKo5a+55oKo55qE5L+u5pS55ruh5oSP5ZCO5omn6KGMIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCLvvIkiCiAKLSM6IHd0LXN0YXR1cy5jOjEzNjgKKyM6IHd0LXN0YXR1cy5jOjE0MTkKK21zZ2lkICJDaGVycnktcGljayBjdXJyZW50bHkgaW4gcHJvZ3Jlc3MuIgorbXNnc3RyICLmi6PpgInmk43kvZzmraPlnKjov5vooYzkuK3jgIIiCisKKyM6IHd0LXN0YXR1cy5jOjE0MjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgY2hlcnJ5LXBpY2tpbmcgY29tbWl0ICVzLiIKIG1zZ3N0ciAi5oKo5Zyo5omn6KGM5ouj6YCJ5o+Q5LqkICVzIOeahOaTjeS9nOOAgiIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoxMzczCisjOiB3dC1zdGF0dXMuYzoxNDI5CiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCiBtc2dzdHIgIiAg77yI6Kej5Yaz5Yay56qB5bm26L+Q6KGMIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIu+8iSIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoxMzc2CisjOiB3dC1zdGF0dXMuYzoxNDMyCittc2dpZCAiICAocnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiB0byBjb250aW51ZSkiCittc2dzdHIgIiAg77yI5omn6KGMIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIiDku6Xnu6fnu63vvIkiCisKKyMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAorIzogd3Qtc3RhdHVzLmM6MTQzNQogbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIgogbXNnc3RyICIgIO+8iOaJgOacieWGsueqgeW3suino+WGs++8mui/kOihjCBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCLvvIkiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogd3Qtc3RhdHVzLmM6MTM3OAorIzogd3Qtc3RhdHVzLmM6MTQzNworbXNnaWQgIiAgKHVzZSBcImdpdCBjaGVycnktcGljayAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgorbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCBjaGVycnktcGljayAtLXNraXBcIiDot7Pov4fmraTooaXkuIHvvIkiCisKKyMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAorIzogd3Qtc3RhdHVzLmM6MTQzOQogbXNnaWQgIiAgKHVzZSBcImdpdCBjaGVycnktcGljayAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSBjaGVycnktcGljayBvcGVyYXRpb24pIgogbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCBjaGVycnktcGljayAtLWFib3J0XCIg5Lul5Y+W5raI5ouj6YCJ5pON5L2c77yJIgogCi0jOiB3dC1zdGF0dXMuYzoxMzg2CisjOiB3dC1zdGF0dXMuYzoxNDQ5Cittc2dpZCAiUmV2ZXJ0IGN1cnJlbnRseSBpbiBwcm9ncmVzcy4iCittc2dzdHIgIui/mOWOn+aTjeS9nOato+WcqOihjOS4reOAgiIKKworIzogd3Qtc3RhdHVzLmM6MTQ1MgogIywgYy1mb3JtYXQKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSByZXZlcnRpbmcgY29tbWl0ICVzLiIKIG1zZ3N0ciAi5oKo5Zyo5omn6KGM5Y+N6L2s5o+Q5LqkICVzIOeahOaTjeS9nOOAgiIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoxMzkxCisjOiB3dC1zdGF0dXMuYzoxNDU4CiBtc2dpZCAiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIpIgotbXNnc3RyICIgIO+8iOino+WGs+WGsueqgeW5tui/kOihjCBcImdpdCByZXZlcnQgLS1jb250aW51ZVwi77yJIgorbXNnc3RyICIgIO+8iOino+WGs+WGsueqgeW5tuaJp+ihjCBcImdpdCByZXZlcnQgLS1jb250aW51ZVwi77yJIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IHd0LXN0YXR1cy5jOjEzOTQKKyM6IHd0LXN0YXR1cy5jOjE0NjEKK21zZ2lkICIgIChydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIiB0byBjb250aW51ZSkiCittc2dzdHIgIiAg77yI5omn6KGMIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCIg5Lul57un57ut77yJIgorCisjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjE0NjQKIG1zZ2lkICIgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCi1tc2dzdHIgIiAg77yI5omA5pyJ5Yay56qB5bey6Kej5Yaz77ya6L+Q6KGMIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCLvvIkiCittc2dzdHIgIiAg77yI5omA5pyJ5Yay56qB5bey6Kej5Yaz77ya5omn6KGMIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCLvvIkiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogd3Qtc3RhdHVzLmM6MTM5NgorIzogd3Qtc3RhdHVzLmM6MTQ2NgorbXNnaWQgIiAgKHVzZSBcImdpdCByZXZlcnQgLS1za2lwXCIgdG8gc2tpcCB0aGlzIHBhdGNoKSIKK21zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgcmV2ZXJ0IC0tc2tpcFwiIOi3s+i/h+atpOihpeS4ge+8iSIKKworIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8CisjOiB3dC1zdGF0dXMuYzoxNDY4CiBtc2dpZCAiICAodXNlIFwiZ2l0IHJldmVydCAtLWFib3J0XCIgdG8gY2FuY2VsIHRoZSByZXZlcnQgb3BlcmF0aW9uKSIKIG1zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgcmV2ZXJ0IC0tYWJvcnRcIiDku6Xlj5bmtojlj43ovazmj5DkuqTmk43kvZzvvIkiCiAKLSM6IHd0LXN0YXR1cy5jOjE0MDYKKyM6IHd0LXN0YXR1cy5jOjE0NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgYmlzZWN0aW5nLCBzdGFydGVkIGZyb20gYnJhbmNoICclcycuIgogbXNnc3RyICLmgqjlnKjmiafooYzku47liIbmlK8gJyVzJyDlvIDlp4vnmoTkuozliIbmn6Xmib7mk43kvZzjgIIiCiAKLSM6IHd0LXN0YXR1cy5jOjE0MTAKKyM6IHd0LXN0YXR1cy5jOjE0ODIKIG1zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcuIgogbXNnc3RyICLmgqjlnKjmiafooYzkuozliIbmn6Xmib7mk43kvZzjgIIiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogd3Qtc3RhdHVzLmM6MTQxMworIzogd3Qtc3RhdHVzLmM6MTQ4NQogbXNnaWQgIiAgKHVzZSBcImdpdCBiaXNlY3QgcmVzZXRcIiB0byBnZXQgYmFjayB0byB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKIG1zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgYmlzZWN0IHJlc2V0XCIg5Lul5Zue5Yiw5Y6f5pyJ5YiG5pSv77yJIgogCi0jOiB3dC1zdGF0dXMuYzoxNjExCisjOiB3dC1zdGF0dXMuYzoxNjk0CiBtc2dpZCAiT24gYnJhbmNoICIKIG1zZ3N0ciAi5L2N5LqO5YiG5pSvICIKIAotIzogd3Qtc3RhdHVzLmM6MTYxOAorIzogd3Qtc3RhdHVzLmM6MTcwMQogbXNnaWQgImludGVyYWN0aXZlIHJlYmFzZSBpbiBwcm9ncmVzczsgb250byAiCiBtc2dzdHIgIuS6pOS6kuW8j+WPmOWfuuaTjeS9nOato+WcqOi/m+ihjOS4re+8m+iHsyAiCiAKLSM6IHd0LXN0YXR1cy5jOjE2MjAKKyM6IHd0LXN0YXR1cy5jOjE3MDMKIG1zZ2lkICJyZWJhc2UgaW4gcHJvZ3Jlc3M7IG9udG8gIgogbXNnc3RyICLlj5jln7rmk43kvZzmraPlnKjov5vooYzkuK3vvJvoh7MgIgogCi0jOiB3dC1zdGF0dXMuYzoxNjI1Ci1tc2dpZCAiSEVBRCBkZXRhY2hlZCBhdCAiCi1tc2dzdHIgIuWktOaMh+mSiOWIhuemu+S6jiAiCi0KLSM6IHd0LXN0YXR1cy5jOjE2MjcKLW1zZ2lkICJIRUFEIGRldGFjaGVkIGZyb20gIgotbXNnc3RyICLlpLTmjIfpkojliIbnprvoh6ogIgotCi0jOiB3dC1zdGF0dXMuYzoxNjMwCisjOiB3dC1zdGF0dXMuYzoxNzEzCiBtc2dpZCAiTm90IGN1cnJlbnRseSBvbiBhbnkgYnJhbmNoLiIKIG1zZ3N0ciAi5b2T5YmN5LiN5Zyo5Lu75L2V5YiG5pSv5LiK44CCIgogCi0jOiB3dC1zdGF0dXMuYzoxNjQ3CisjOiB3dC1zdGF0dXMuYzoxNzMwCiBtc2dpZCAiSW5pdGlhbCBjb21taXQiCiBtc2dzdHIgIuWIneWni+aPkOS6pCIKIAotIzogd3Qtc3RhdHVzLmM6MTY0OAorIzogd3Qtc3RhdHVzLmM6MTczMQogbXNnaWQgIk5vIGNvbW1pdHMgeWV0IgogbXNnc3RyICLlsJrml6Dmj5DkuqQiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NjIKKyM6IHd0LXN0YXR1cy5jOjE3NDUKIG1zZ2lkICJVbnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgIuacqui3n+i4queahOaWh+S7tiIKIAotIzogd3Qtc3RhdHVzLmM6MTY2NAorIzogd3Qtc3RhdHVzLmM6MTc0NwogbXNnaWQgIklnbm9yZWQgZmlsZXMiCiBtc2dzdHIgIuW/veeVpeeahOaWh+S7tiIKIAotIzogd3Qtc3RhdHVzLmM6MTY2OAorIzogd3Qtc3RhdHVzLmM6MTc1MQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSXQgdG9vayAlLjJmIHNlY29uZHMgdG8gZW51bWVyYXRlIHVudHJhY2tlZCBmaWxlcy4gJ3N0YXR1cyAtdW5vJ1xuIgpAQCAtNzA1OCwyMjEgKzkxODEsMjMwIEBACiAi6ICX6LS55LqGICUuMmYg56eS5Lul5p6a5Li+5pyq6Lef6Liq55qE5paH5Lu244CCJ3N0YXR1cyAtdW5vJyDkuZ/orrjog73mj5Dpq5jpgJ/luqbvvIxcbiIKICLkvYbmgqjpnIDopoHlsI/lv4PkuI3opoHlv5jkuobmt7vliqDmlrDmlofku7bvvIjlj4Lop4EgJ2dpdCBoZWxwIHN0YXR1cyfvvInjgIIiCiAKLSM6IHd0LXN0YXR1cy5jOjE2NzQKKyM6IHd0LXN0YXR1cy5jOjE3NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW50cmFja2VkIGZpbGVzIG5vdCBsaXN0ZWQlcyIKIG1zZ3N0ciAi5pyq6Lef6Liq55qE5paH5Lu25rKh5pyJ5YiX5Ye6JXMiCiAKICMgIOivkeiAhe+8muS4reaWh+Wtl+espuS4suaLvOaOpe+8jOWPr+WIoOmZpOWJjeWvvOepuuagvAotIzogd3Qtc3RhdHVzLmM6MTY3NgorIzogd3Qtc3RhdHVzLmM6MTc1OQogbXNnaWQgIiAodXNlIC11IG9wdGlvbiB0byBzaG93IHVudHJhY2tlZCBmaWxlcykiCiBtc2dzdHIgIu+8iOS9v+eUqCAtdSDlj4LmlbDmmL7npLrmnKrot5/ouKrnmoTmlofku7bvvIkiCiAKLSM6IHd0LXN0YXR1cy5jOjE2ODIKKyM6IHd0LXN0YXR1cy5jOjE3NjUKIG1zZ2lkICJObyBjaGFuZ2VzIgogbXNnc3RyICLmsqHmnInkv67mlLkiCiAKLSM6IHd0LXN0YXR1cy5jOjE2ODcKKyM6IHd0LXN0YXR1cy5jOjE3NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXQgKHVzZSBcImdpdCBhZGRcIiBhbmQvb3IgXCJnaXQgY29tbWl0IC1hXCIpXG4iCiBtc2dzdHIgIuS/ruaUueWwmuacquWKoOWFpeaPkOS6pO+8iOS9v+eUqCBcImdpdCBhZGRcIiDlkowv5oiWIFwiZ2l0IGNvbW1pdCAtYVwi77yJXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTAKKyM6IHd0LXN0YXR1cy5jOjE3NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXRcbiIKIG1zZ3N0ciAi5L+u5pS55bCa5pyq5Yqg5YWl5o+Q5LqkXG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE2OTMKKyM6IHd0LXN0YXR1cy5jOjE3NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdGhpbmcgYWRkZWQgdG8gY29tbWl0IGJ1dCB1bnRyYWNrZWQgZmlsZXMgcHJlc2VudCAodXNlIFwiZ2l0IGFkZFwiIHRvICIKICJ0cmFjaylcbiIKIG1zZ3N0ciAi5o+Q5Lqk5Li656m677yM5L2G5piv5a2Y5Zyo5bCa5pyq6Lef6Liq55qE5paH5Lu277yI5L2/55SoIFwiZ2l0IGFkZFwiIOW7uueri+i3n+i4qu+8iVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNjk2CisjOiB3dC1zdGF0dXMuYzoxNzc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgYWRkZWQgdG8gY29tbWl0IGJ1dCB1bnRyYWNrZWQgZmlsZXMgcHJlc2VudFxuIgogbXNnc3RyICLmj5DkuqTkuLrnqbrvvIzkvYbmmK/lrZjlnKjlsJrmnKrot5/ouKrnmoTmlofku7ZcbiIKIAogIyAg6K+R6ICF77ya5Lit5paH5a2X56ym5Liy5ou85o6l77yM5Y+v5Yig6Zmk5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoxNjk5CisjOiB3dC1zdGF0dXMuYzoxNzgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0IChjcmVhdGUvY29weSBmaWxlcyBhbmQgdXNlIFwiZ2l0IGFkZFwiIHRvIHRyYWNrKVxuIgogbXNnc3RyICLml6Dmlofku7bopoHmj5DkuqTvvIjliJvlu7ov5ou36LSd5paH5Lu25bm25L2/55SoIFwiZ2l0IGFkZFwiIOW7uueri+i3n+i4qu+8iVxuIgogCi0jOiB3dC1zdGF0dXMuYzoxNzAyIHd0LXN0YXR1cy5jOjE3MDcKKyM6IHd0LXN0YXR1cy5jOjE3ODUgd3Qtc3RhdHVzLmM6MTc5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJub3RoaW5nIHRvIGNvbW1pdFxuIgogbXNnc3RyICLml6Dmlofku7bopoHmj5DkuqRcbiIKIAogIyAg6K+R6ICF77ya5Lit5paH5a2X56ym5Liy5ou85o6l77yM5Y+v5Yig6Zmk5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoxNzA1CisjOiB3dC1zdGF0dXMuYzoxNzg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0ICh1c2UgLXUgdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpXG4iCiBtc2dzdHIgIuaXoOaWh+S7tuimgeaPkOS6pO+8iOS9v+eUqCAtdSDmmL7npLrmnKrot5/ouKrnmoTmlofku7bvvIlcbiIKIAogIyAg6K+R6ICF77ya5Lit5paH5a2X56ym5Liy5ou85o6l77yM5Y+v5Yig6Zmk5YmN5a+856m65qC8Ci0jOiB3dC1zdGF0dXMuYzoxNzA5CisjOiB3dC1zdGF0dXMuYzoxNzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0LCB3b3JraW5nIHRyZWUgY2xlYW5cbiIKIG1zZ3N0ciAi5peg5paH5Lu26KaB5o+Q5Lqk77yM5bmy5YeA55qE5bel5L2c5Yy6XG4iCiAKLSM6IHd0LXN0YXR1cy5jOjE4MjIKKyM6IHd0LXN0YXR1cy5jOjE5MDUKIG1zZ2lkICJObyBjb21taXRzIHlldCBvbiAiCiBtc2dzdHIgIuWwmuaXoOaPkOS6pOWcqCAiCiAKLSM6IHd0LXN0YXR1cy5jOjE4MjYKKyM6IHd0LXN0YXR1cy5jOjE5MDkKIG1zZ2lkICJIRUFEIChubyBicmFuY2gpIgogbXNnc3RyICJIRUFE77yI6Z2e5YiG5pSv77yJIgogCi0jOiB3dC1zdGF0dXMuYzoxODU3CisjOiB3dC1zdGF0dXMuYzoxOTQwCiBtc2dpZCAiZGlmZmVyZW50IgogbXNnc3RyICLkuI3lkIwiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWPpeWwvuepuuagvAotIzogd3Qtc3RhdHVzLmM6MTg1OSB3dC1zdGF0dXMuYzoxODY3CisjOiB3dC1zdGF0dXMuYzoxOTQyIHd0LXN0YXR1cy5jOjE5NTAKIG1zZ2lkICJiZWhpbmQgIgogbXNnc3RyICLokL3lkI4gIgogCi0jOiB3dC1zdGF0dXMuYzoxODYyIHd0LXN0YXR1cy5jOjE4NjUKKyM6IHd0LXN0YXR1cy5jOjE5NDUgd3Qtc3RhdHVzLmM6MTk0OAogbXNnaWQgImFoZWFkICIKIG1zZ3N0ciAi6aKG5YWIICIKIAogIy4gVFJBTlNMQVRPUlM6IHRoZSBhY3Rpb24gaXMgZS5nLiAicHVsbCB3aXRoIHJlYmFzZSIKLSM6IHd0LXN0YXR1cy5jOjIzNzQKKyM6IHd0LXN0YXR1cy5jOjI0NzAKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90ICVzOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAi5LiN6IO9JXPvvJrmgqjmnInmnKrmmoLlrZjnmoTlj5jmm7TjgIIiCiAKLSM6IHd0LXN0YXR1cy5jOjIzODAKKyM6IHd0LXN0YXR1cy5jOjI0NzYKIG1zZ2lkICJhZGRpdGlvbmFsbHksIHlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIuWPpuWklu+8jOaCqOeahOe0ouW8leS4reWMheWQq+acquaPkOS6pOeahOWPmOabtOOAgiIKIAotIzogd3Qtc3RhdHVzLmM6MjM4MgorIzogd3Qtc3RhdHVzLmM6MjQ3OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgJXM6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIuS4jeiDvSVz77ya5oKo55qE57Si5byV5Lit5YyF5ZCr5pyq5o+Q5Lqk55qE5Y+Y5pu044CCIgogCi0jOiBidWlsdGluL2FkZC5jOjI0CisjOiBjb21wYXQvcHJlY29tcG9zZV91dGY4LmM6NTggYnVpbHRpbi9jbG9uZS5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rICclcyciCittc2dzdHIgIuWIoOmZpCAnJXMnIOWksei0pSIKKworIzogYnVpbHRpbi9hZGQuYzoyNgogbXNnaWQgImdpdCBhZGQgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgogbXNnc3RyICJnaXQgYWRkIFs86YCJ6aG5Pl0gWy0tXSA86Lev5b6E6KeE5qC8Pi4uLiIKIAotIzogYnVpbHRpbi9hZGQuYzo4MworIzogYnVpbHRpbi9hZGQuYzo4OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIGRpZmYgc3RhdHVzICVjIgogbXNnc3RyICLmhI/lpJbnmoTlt67lvILnirbmgIEgJWMiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6ODggYnVpbHRpbi9jb21taXQuYzoyODQKKyM6IGJ1aWx0aW4vYWRkLmM6OTMgYnVpbHRpbi9jb21taXQuYzoyODgKIG1zZ2lkICJ1cGRhdGluZyBmaWxlcyBmYWlsZWQiCiBtc2dzdHIgIuabtOaWsOaWh+S7tuWksei0pSIKIAotIzogYnVpbHRpbi9hZGQuYzo5OAorIzogYnVpbHRpbi9hZGQuYzoxMDMKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3ZlICclcydcbiIKIG1zZ3N0ciAi5Yig6ZmkICclcydcbiIKIAotIzogYnVpbHRpbi9hZGQuYzoxNzMKKyM6IGJ1aWx0aW4vYWRkLmM6MTc4CiBtc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZWZyZXNoaW5nIHRoZSBpbmRleDoiCiBtc2dzdHIgIuWIt+aWsOe0ouW8leS5i+WQjuWwmuacquiiq+aaguWtmOeahOWPmOabtO+8miIKIAotIzogYnVpbHRpbi9hZGQuYzoyMzMgYnVpbHRpbi9yZXYtcGFyc2UuYzo4OTUKKyM6IGJ1aWx0aW4vYWRkLmM6MjY2IGJ1aWx0aW4vcmV2LXBhcnNlLmM6ODk5CiBtc2dpZCAiQ291bGQgbm90IHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICLkuI3og73or7vlj5bntKLlvJUiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQ0CisjOiBidWlsdGluL2FkZC5jOjI3NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nLiIKIG1zZ3N0ciAi5peg5rOV5Li65YaZ5YWl5omT5byAICclcyfjgIIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjQ4CisjOiBidWlsdGluL2FkZC5jOjI4MQogbXNnaWQgIkNvdWxkIG5vdCB3cml0ZSBwYXRjaCIKIG1zZ3N0ciAi5LiN6IO955Sf5oiQ6KGl5LiBIgogCi0jOiBidWlsdGluL2FkZC5jOjI1MQorIzogYnVpbHRpbi9hZGQuYzoyODQKIG1zZ2lkICJlZGl0aW5nIHBhdGNoIGZhaWxlZCIKIG1zZ3N0ciAi57yW6L6R6KGl5LiB5aSx6LSlIgogCi0jOiBidWlsdGluL2FkZC5jOjI1NAorIzogYnVpbHRpbi9hZGQuYzoyODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHN0YXQgJyVzJyIKIG1zZ3N0ciAi5LiN6IO95a+5ICclcycg6LCD55SoIHN0YXQiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjU2CisjOiBidWlsdGluL2FkZC5jOjI4OQogbXNnaWQgIkVtcHR5IHBhdGNoLiBBYm9ydGVkLiIKIG1zZ3N0ciAi56m66KGl5LiB44CC5byC5bi457uI5q2i44CCIgogCi0jOiBidWlsdGluL2FkZC5jOjI2MQorIzogYnVpbHRpbi9hZGQuYzoyOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGFwcGx5ICclcyciCiBtc2dzdHIgIuS4jeiDveW6lOeUqCAnJXMnIgogCi0jOiBidWlsdGluL2FkZC5jOjI2OQorIzogYnVpbHRpbi9hZGQuYzozMDIKIG1zZ2lkICJUaGUgZm9sbG93aW5nIHBhdGhzIGFyZSBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6XG4iCiBtc2dzdHIgIuS4i+WIl+i3r+W+hOagueaNruaCqOeahOS4gOS4qiAuZ2l0aWdub3JlIOaWh+S7tuiAjOiiq+W/veeVpe+8mlxuIgogCi0jOiBidWlsdGluL2FkZC5jOjI4OSBidWlsdGluL2NsZWFuLmM6OTA3IGJ1aWx0aW4vZmV0Y2guYzoxMzcgYnVpbHRpbi9tdi5jOjEyMwotIzogYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1NiBidWlsdGluL3B1bGwuYzoyMTMgYnVpbHRpbi9wdXNoLmM6NTU3Ci0jOiBidWlsdGluL3JlbW90ZS5jOjEzNDUgYnVpbHRpbi9ybS5jOjI0MCBidWlsdGluL3NlbmQtcGFjay5jOjE2NQorIzogYnVpbHRpbi9hZGQuYzozMjIgYnVpbHRpbi9jbGVhbi5jOjkxMCBidWlsdGluL2ZldGNoLmM6MTYzIGJ1aWx0aW4vbXYuYzoxMjQKKyM6IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NTYgYnVpbHRpbi9wdWxsLmM6MjAzIGJ1aWx0aW4vcHVzaC5jOjU0OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNDIxIGJ1aWx0aW4vcm0uYzoyNDIgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjUKIG1zZ2lkICJkcnkgcnVuIgogbXNnc3RyICLmvJTkuaAiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MjkyCisjOiBidWlsdGluL2FkZC5jOjMyNQogbXNnaWQgImludGVyYWN0aXZlIHBpY2tpbmciCiBtc2dzdHIgIuS6pOS6kuW8j+aLo+mAiSIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTMgYnVpbHRpbi9jaGVja291dC5jOjEyNTggYnVpbHRpbi9yZXNldC5jOjMwNQorIzogYnVpbHRpbi9hZGQuYzozMjYgYnVpbHRpbi9jaGVja291dC5jOjE1MTEgYnVpbHRpbi9yZXNldC5jOjMwNwogbXNnaWQgInNlbGVjdCBodW5rcyBpbnRlcmFjdGl2ZWx5IgogbXNnc3RyICLkuqTkupLlvI/mjJHpgInmlbDmja7lnZciCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk0CisjOiBidWlsdGluL2FkZC5jOjMyNwogbXNnaWQgImVkaXQgY3VycmVudCBkaWZmIGFuZCBhcHBseSIKIG1zZ3N0ciAi57yW6L6R5b2T5YmN5beu5byC5bm25bqU55SoIgogCi0jOiBidWlsdGluL2FkZC5jOjI5NQorIzogYnVpbHRpbi9hZGQuYzozMjgKIG1zZ2lkICJhbGxvdyBhZGRpbmcgb3RoZXJ3aXNlIGlnbm9yZWQgZmlsZXMiCiBtc2dzdHIgIuWFgeiuuOa3u+WKoOW/veeVpeeahOaWh+S7tiIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTYKKyM6IGJ1aWx0aW4vYWRkLmM6MzI5CiBtc2dpZCAidXBkYXRlIHRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgIuabtOaWsOW3sui3n+i4queahOaWh+S7tiIKIAotIzogYnVpbHRpbi9hZGQuYzoyOTcKKyM6IGJ1aWx0aW4vYWRkLmM6MzMwCiBtc2dpZCAicmVub3JtYWxpemUgRU9MIG9mIHRyYWNrZWQgZmlsZXMgKGltcGxpZXMgLXUpIgogbXNnc3RyICLlr7nlt7Lot5/ouKrmlofku7bvvIjmmpflkKsgLXXvvInph43mlrDlvZLkuIDmjaLooYznrKYiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6Mjk4CisjOiBidWlsdGluL2FkZC5jOjMzMQogbXNnaWQgInJlY29yZCBvbmx5IHRoZSBmYWN0IHRoYXQgdGhlIHBhdGggd2lsbCBiZSBhZGRlZCBsYXRlciIKIG1zZ3N0ciAi5Y+q6K6w5b2V77yM6K+l6Lev5b6E56iN5ZCO5YaN5re75YqgIgogCi0jOiBidWlsdGluL2FkZC5jOjI5OQorIzogYnVpbHRpbi9hZGQuYzozMzIKIG1zZ2lkICJhZGQgY2hhbmdlcyBmcm9tIGFsbCB0cmFja2VkIGFuZCB1bnRyYWNrZWQgZmlsZXMiCiBtc2dzdHIgIua3u+WKoOaJgOacieaUueWPmOeahOW3sui3n+i4quaWh+S7tuWSjOacqui3n+i4quaWh+S7tiIKIAotIzogYnVpbHRpbi9hZGQuYzozMDIKKyM6IGJ1aWx0aW4vYWRkLmM6MzM1CiBtc2dpZCAiaWdub3JlIHBhdGhzIHJlbW92ZWQgaW4gdGhlIHdvcmtpbmcgdHJlZSAoc2FtZSBhcyAtLW5vLWFsbCkiCiBtc2dzdHIgIuW/veeVpeW3peS9nOWMuuS4reenu+mZpOeahOi3r+W+hO+8iOWSjCAtLW5vLWFsbCDnm7jlkIzvvIkiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzA0CisjOiBidWlsdGluL2FkZC5jOjMzNwogbXNnaWQgImRvbid0IGFkZCwgb25seSByZWZyZXNoIHRoZSBpbmRleCIKIG1zZ3N0ciAi5LiN5re75Yqg77yM5Y+q5Yi35paw57Si5byVIgogCi0jOiBidWlsdGluL2FkZC5jOjMwNQorIzogYnVpbHRpbi9hZGQuYzozMzgKIG1zZ2lkICJqdXN0IHNraXAgZmlsZXMgd2hpY2ggY2Fubm90IGJlIGFkZGVkIGJlY2F1c2Ugb2YgZXJyb3JzIgogbXNnc3RyICLot7Pov4flm6Dlh7rplJnkuI3og73mt7vliqDnmoTmlofku7YiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzA2CisjOiBidWlsdGluL2FkZC5jOjMzOQogbXNnaWQgImNoZWNrIGlmIC0gZXZlbiBtaXNzaW5nIC0gZmlsZXMgYXJlIGlnbm9yZWQgaW4gZHJ5IHJ1biIKIG1zZ3N0ciAi5qOA5p+l5Zyo5ryU5Lmg5qih5byP5LiL5paH5Lu277yI5Y2z5L2/5LiN5a2Y5Zyo77yJ5piv5ZCm6KKr5b+955WlIgogCi0jOiBidWlsdGluL2FkZC5jOjMwOCBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5MAorIzogYnVpbHRpbi9hZGQuYzozNDEgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA0CiBtc2dpZCAib3ZlcnJpZGUgdGhlIGV4ZWN1dGFibGUgYml0IG9mIHRoZSBsaXN0ZWQgZmlsZXMiCiBtc2dzdHIgIuimhuebluWIl+ihqOmHjOaWh+S7tueahOWPr+aJp+ihjOS9jSIKIAotIzogYnVpbHRpbi9hZGQuYzozMTAKKyM6IGJ1aWx0aW4vYWRkLmM6MzQzCiBtc2dpZCAid2FybiB3aGVuIGFkZGluZyBhbiBlbWJlZGRlZCByZXBvc2l0b3J5IgogbXNnc3RyICLliJvlu7rkuIDkuKrltYzlhaXlvI/ku5PlupPml7bnu5nkuojorablkYoiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzI1CisjOiBidWlsdGluL2FkZC5jOjM0NQorbXNnaWQgImJhY2tlbmQgZm9yIGBnaXQgc3Rhc2ggLXBgIgorbXNnc3RyICJgZ2l0IHN0YXNoIC1wYCDnmoTlkI7nq68iCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzYzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UndmUgYWRkZWQgYW5vdGhlciBnaXQgcmVwb3NpdG9yeSBpbnNpZGUgeW91ciBjdXJyZW50IHJlcG9zaXRvcnkuXG4iCkBAIC03Mjg5LDkgKzk0MjEsOCBAQAogIlxuIgogIlNlZSBcImdpdCBoZWxwIHN1Ym1vZHVsZVwiIGZvciBtb3JlIGluZm9ybWF0aW9uLiIKIG1zZ3N0ciAiIgotIuaCqOWcqOW9k+WJjeS7k+W6k+S4rea3u+WKoOS6huWPpuWkluS4gOS4qkdpdOS7k+W6k+OAguWFi+mahuWkluWxgueahOS7k+W6k+WwhuS4jeWMheWQq+W1jOWFpeS7k+W6k+eahOWGheWuue+8jOW5tiIKLSLkuJTkuI3nn6XpgZPor6XlpoLkvZXojrflj5blroPjgIJcbiIKLSLlpoLmnpzmgqjopoHmt7vliqDkuIDkuKrlrZDmqKHnu4TvvIzkvb/nlKjvvJpcbiIKKyLmgqjlnKjlvZPliY3ku5PlupPkuK3mt7vliqDkuoblj6bkuIDkuKpHaXTku5PlupPjgILlhYvpmoblpJblsYLnmoTku5PlupPlsIbkuI3ljIXlkKvltYzlhaXku5PlupPnmoRcbiIKKyLlhoXlrrnvvIzlubbkuJTkuI3nn6XpgZPor6XlpoLkvZXojrflj5blroPjgILlpoLmnpzmgqjopoHmt7vliqDkuIDkuKrlrZDmqKHnu4TvvIzkvb/nlKjvvJpcbiIKICJcbiIKICJcdGdpdCBzdWJtb2R1bGUgYWRkIDx1cmw+ICVzXG4iCiAiXG4iCkBAIC03MzAxLDE0NiArOTQzMiwxNzAgQEAKICJcbiIKICLlj4Lop4EgXCJnaXQgaGVscCBzdWJtb2R1bGVcIiDojrflj5bmm7TlpJrkv6Hmga/jgIIiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6MzUzCisjOiBidWlsdGluL2FkZC5jOjM5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJhZGRpbmcgZW1iZWRkZWQgZ2l0IHJlcG9zaXRvcnk6ICVzIgogbXNnc3RyICLmraPlnKjmt7vliqDltYzlhaXlvI8gZ2l0IOS7k+W6k++8miVzIgogCi0jOiBidWlsdGluL2FkZC5jOjM3MQotIywgYy1mb3JtYXQKLW1zZ2lkICJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCB0aGVtLlxuIgotbXNnc3RyICLkvb/nlKggLWYg5Y+C5pWw5aaC5p6c5oKo56Gu5a6e6KaB5re75Yqg5a6D5Lus44CCXG4iCisjOiBidWlsdGluL2FkZC5jOjQxMAorbXNnaWQgIiIKKyJVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCB0aGVtLlxuIgorIlR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieSBydW5uaW5nXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5hZGRJZ25vcmVkRmlsZSBmYWxzZVwiIgorbXNnc3RyICIiCisi5aaC5p6c5oKo56Gu5a6e6KaB5re75Yqg5a6D5Lus77yM5L2/55SoIC1mIOWPguaVsOOAglxuIgorIui/kOihjOS4i+mdoueahOWRveS7pOadpeWFs+mXreacrOa2iOaBr1xuIgorIlwiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkSWdub3JlZEZpbGUgZmFsc2VcIiIKIAotIzogYnVpbHRpbi9hZGQuYzozNzkKKyM6IGJ1aWx0aW4vYWRkLmM6NDE5CiBtc2dpZCAiYWRkaW5nIGZpbGVzIGZhaWxlZCIKIG1zZ3N0ciAi5re75Yqg5paH5Lu25aSx6LSlIgogCi0jOiBidWlsdGluL2FkZC5jOjQxNworIzogYnVpbHRpbi9hZGQuYzo0NDcgYnVpbHRpbi9jb21taXQuYzozNDgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWludGVyYWN0aXZlLy0tcGF0Y2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIOS4jiAtLWludGVyYWN0aXZlLy0tcGF0Y2gg5LiN5YW85a65IgorCisjOiBidWlsdGluL2FkZC5jOjQ2NAorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tZWRpdCIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUg5LiOIC0tZWRpdCDkuI3lhbzlrrkiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDc2CiBtc2dpZCAiLUEgYW5kIC11IGFyZSBtdXR1YWxseSBpbmNvbXBhdGlibGUiCiBtc2dzdHIgIi1BIOWSjCAtdSDpgInpobnkupLmlqUiCiAKLSM6IGJ1aWx0aW4vYWRkLmM6NDI0CisjOiBidWlsdGluL2FkZC5jOjQ3OQogbXNnaWQgIk9wdGlvbiAtLWlnbm9yZS1taXNzaW5nIGNhbiBvbmx5IGJlIHVzZWQgdG9nZXRoZXIgd2l0aCAtLWRyeS1ydW4iCiBtc2dzdHIgIumAiemhuSAtLWlnbm9yZS1taXNzaW5nIOWPquiDveWSjCAtLWRyeS1ydW4g5ZCM5pe25L2/55SoIgogCi0jOiBidWlsdGluL2FkZC5jOjQyOAorIzogYnVpbHRpbi9hZGQuYzo0ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiLS1jaG1vZCBwYXJhbSAnJXMnIG11c3QgYmUgZWl0aGVyIC14IG9yICt4IgogbXNnc3RyICLlj4LmlbAgLS1jaG1vZCDlj5blgLwgJyVzJyDlv4XpobvmmK8gLXgg5oiWICt4IgogCi0jOiBidWlsdGluL2FkZC5jOjQ0MworIzogYnVpbHRpbi9hZGQuYzo1MDEgYnVpbHRpbi9jaGVja291dC5jOjE2NzUgYnVpbHRpbi9jb21taXQuYzozNTQKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMjcgYnVpbHRpbi9ybS5jOjI3MiBidWlsdGluL3N0YXNoLmM6MTUwOQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUg5LiO6Lev5b6E6KGo6L6+5byP5Y+C5pWw5LiN5YW85a65IgorCisjOiBidWlsdGluL2FkZC5jOjUwOCBidWlsdGluL2NoZWNrb3V0LmM6MTY4NyBidWlsdGluL2NvbW1pdC5jOjM2MAorIzogYnVpbHRpbi9yZXNldC5jOjMzMyBidWlsdGluL3JtLmM6Mjc4IGJ1aWx0aW4vc3Rhc2guYzoxNTE1Cittc2dpZCAiLS1wYXRoc3BlYy1maWxlLW51bCByZXF1aXJlcyAtLXBhdGhzcGVjLWZyb20tZmlsZSIKK21zZ3N0ciAiLS1wYXRoc3BlYy1maWxlLW51bCDpnIDopoEgLS1wYXRoc3BlYy1mcm9tLWZpbGUiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NTEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdGhpbmcgc3BlY2lmaWVkLCBub3RoaW5nIGFkZGVkLlxuIgogbXNnc3RyICLmsqHmnInmjIflrprmlofku7bvvIzkuZ/msqHmnInmlofku7booqvmt7vliqDjgIJcbiIKIAotIzogYnVpbHRpbi9hZGQuYzo0NDQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiTWF5YmUgeW91IHdhbnRlZCB0byBzYXkgJ2dpdCBhZGQgLic/XG4iCi1tc2dzdHIgIuS5n+iuuOaCqOaDs+imgeaJp+ihjCAnZ2l0IGFkZCAuJ++8n1xuIgorIzogYnVpbHRpbi9hZGQuYzo1MTQKK21zZ2lkICIiCisiTWF5YmUgeW91IHdhbnRlZCB0byBzYXkgJ2dpdCBhZGQgLic/XG4iCisiVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5IHJ1bm5pbmdcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZEVtcHR5UGF0aHNwZWMgZmFsc2VcIiIKK21zZ3N0ciAiIgorIuS5n+iuuOaCqOaDs+imgeaJp+ihjCAnZ2l0IGFkZCAuJ++8n1xuIgorIui/kOihjOS4i+mdoueahOWRveS7pOadpeWFs+mXreacrOa2iOaBr1xuIgorIlwiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkRW1wdHlQYXRoc3BlYyBmYWxzZVwiIgogCi0jOiBidWlsdGluL2FtLmM6MzYzCisjOiBidWlsdGluL2FtLmM6MzUyCiBtc2dpZCAiY291bGQgbm90IHBhcnNlIGF1dGhvciBzY3JpcHQiCiBtc2dzdHIgIuS4jeiDveino+aekOS9nOiAheiEmuacrCIKIAotIzogYnVpbHRpbi9hbS5jOjQ0NworIzogYnVpbHRpbi9hbS5jOjQzNgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIHdhcyBkZWxldGVkIGJ5IHRoZSBhcHBseXBhdGNoLW1zZyBob29rIgogbXNnc3RyICInJXMnIOiiqyBhcHBseXBhdGNoLW1zZyDpkqnlrZDliKDpmaQiCiAKLSM6IGJ1aWx0aW4vYW0uYzo0ODgKKyM6IGJ1aWx0aW4vYW0uYzo0NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWFsZm9ybWVkIGlucHV0IGxpbmU6ICclcycuIgogbXNnc3RyICLpnZ7ms5XnmoTovpPlhaXooYzvvJonJXMn44CCIgogCi0jOiBidWlsdGluL2FtLmM6NTI1CisjOiBidWlsdGluL2FtLmM6NTE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBjb3B5IG5vdGVzIGZyb20gJyVzJyB0byAnJXMnIgogbXNnc3RyICLku44gJyVzJyDmi7fotJ3ms6jop6PliLAgJyVzJyDml7blpLHotKUiCiAKLSM6IGJ1aWx0aW4vYW0uYzo1NTEKKyM6IGJ1aWx0aW4vYW0uYzo1NDIKIG1zZ2lkICJmc2VlayBmYWlsZWQiCiBtc2dzdHIgImZzZWVrIOWksei0pSIKIAotIzogYnVpbHRpbi9hbS5jOjczOQorIzogYnVpbHRpbi9hbS5jOjczMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgcGF0Y2ggJyVzJyIKIG1zZ3N0ciAi5peg5rOV6Kej5p6Q6KGl5LiBICclcyciCiAKLSM6IGJ1aWx0aW4vYW0uYzo4MDQKKyM6IGJ1aWx0aW4vYW0uYzo3OTUKIG1zZ2lkICJPbmx5IG9uZSBTdEdJVCBwYXRjaCBzZXJpZXMgY2FuIGJlIGFwcGxpZWQgYXQgb25jZSIKIG1zZ3N0ciAi5LiA5qyh5Y+q6IO95pyJ5LiA5LiqIFN0R0lUIOihpeS4gemYn+WIl+iiq+W6lOeUqCIKIAotIzogYnVpbHRpbi9hbS5jOjg1MgorIzogYnVpbHRpbi9hbS5jOjg0MwogbXNnaWQgImludmFsaWQgdGltZXN0YW1wIgogbXNnc3RyICLml6DmlYjnmoTml7bpl7TmiLMiCiAKLSM6IGJ1aWx0aW4vYW0uYzo4NTcgYnVpbHRpbi9hbS5jOjg2OQorIzogYnVpbHRpbi9hbS5jOjg0OCBidWlsdGluL2FtLmM6ODYwCiBtc2dpZCAiaW52YWxpZCBEYXRlIGxpbmUiCiBtc2dzdHIgIuaXoOaViOeahOaXpeacn+ihjCIKIAotIzogYnVpbHRpbi9hbS5jOjg2NAorIzogYnVpbHRpbi9hbS5jOjg1NQogbXNnaWQgImludmFsaWQgdGltZXpvbmUgb2Zmc2V0IgogbXNnc3RyICLml6DmlYjnmoTml7bljLrlgY/np7vlgLwiCiAKLSM6IGJ1aWx0aW4vYW0uYzo5NTcKKyM6IGJ1aWx0aW4vYW0uYzo5NDgKIG1zZ2lkICJQYXRjaCBmb3JtYXQgZGV0ZWN0aW9uIGZhaWxlZC4iCiBtc2dzdHIgIuihpeS4geagvOW8j+aOoua1i+Wksei0peOAgiIKIAotIzogYnVpbHRpbi9hbS5jOjk2MiBidWlsdGluL2Nsb25lLmM6NDA4CisjOiBidWlsdGluL2FtLmM6OTUzIGJ1aWx0aW4vY2xvbmUuYzo0MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKIG1zZ3N0ciAi5Yib5bu655uu5b2VICclcycg5aSx6LSlIgogCi0jOiBidWlsdGluL2FtLmM6OTY3CisjOiBidWlsdGluL2FtLmM6OTU4CiBtc2dpZCAiRmFpbGVkIHRvIHNwbGl0IHBhdGNoZXMuIgogbXNnc3RyICLmi4bliIbooaXkuIHlpLHotKXjgIIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMDk3IGJ1aWx0aW4vY29tbWl0LmM6MzY5Ci1tc2dpZCAidW5hYmxlIHRvIHdyaXRlIGluZGV4IGZpbGUiCi1tc2dzdHIgIuaXoOazleWGmeWFpee0ouW8leaWh+S7tiIKLQotIzogYnVpbHRpbi9hbS5jOjExMTEKKyM6IGJ1aWx0aW4vYW0uYzoxMDg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIldoZW4geW91IGhhdmUgcmVzb2x2ZWQgdGhpcyBwcm9ibGVtLCBydW4gXCIlcyAtLWNvbnRpbnVlXCIuIgogbXNnc3RyICLlvZPmgqjop6PlhrPov5nkuIDpl67popjvvIzmiafooYwgXCIlcyAtLWNvbnRpbnVlXCLjgIIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMTEyCisjOiBidWlsdGluL2FtLmM6MTA5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJJZiB5b3UgcHJlZmVyIHRvIHNraXAgdGhpcyBwYXRjaCwgcnVuIFwiJXMgLS1za2lwXCIgaW5zdGVhZC4iCiBtc2dzdHIgIuWmguaenOaCqOaDs+imgei3s+i/h+i/meS4gOihpeS4ge+8jOWImeaJp+ihjCBcIiVzIC0tc2tpcFwi44CCIgogCi0jOiBidWlsdGluL2FtLmM6MTExMworIzogYnVpbHRpbi9hbS5jOjEwOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiVG8gcmVzdG9yZSB0aGUgb3JpZ2luYWwgYnJhbmNoIGFuZCBzdG9wIHBhdGNoaW5nLCBydW4gXCIlcyAtLWFib3J0XCIuIgogbXNnc3RyICLoi6XopoHlpI3ljp/oh7Pljp/lp4vliIbmlK/lubblgZzmraLooaXkuIHmk43kvZzvvIzmiafooYwgXCIlcyAtLWFib3J0XCLjgIIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMTk2CisjOiBidWlsdGluL2FtLmM6MTE3NAogbXNnaWQgIlBhdGNoIHNlbnQgd2l0aCBmb3JtYXQ9Zmxvd2VkOyBzcGFjZSBhdCB0aGUgZW5kIG9mIGxpbmVzIG1pZ2h0IGJlIGxvc3QuIgogbXNnc3RyICLooaXkuIHkvb/nlKggZm9ybWF0PWZsb3dlZCDmoLzlvI/lj5HpgIHvvIzooYzlsL7nmoTnqbrmoLzlj6/og73kvJrkuKLlpLHjgIIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxMjI0CisjOiBidWlsdGluL2FtLmM6MTIwMgogbXNnaWQgIlBhdGNoIGlzIGVtcHR5LiIKIG1zZ3N0ciAi6KGl5LiB5Li656m644CCIgogCi0jOiBidWlsdGluL2FtLmM6MTI5MAorIzogYnVpbHRpbi9hbS5jOjEyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyBhdXRob3IgbGluZSBpbiBjb21taXQgJXMiCittc2dzdHIgIuWcqOaPkOS6pCAlcyDkuK3nvLrlpLHkvZzogIXooYwiCisKKyM6IGJ1aWx0aW4vYW0uYzoxMjcwCiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgaWRlbnQgbGluZTogJS4qcyIKIG1zZ3N0ciAi5peg5pWI55qE6Lqr5Lu95qCH6K+G77yaJS4qcyIKIAotIzogYnVpbHRpbi9hbS5jOjEzMTIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIHBhcnNlIGNvbW1pdCAlcyIKLW1zZ3N0ciAi5LiN6IO96Kej5p6Q5o+Q5LqkICVzIgotCi0jOiBidWlsdGluL2FtLmM6MTUwOAorIzogYnVpbHRpbi9hbS5jOjE0ODkKIG1zZ2lkICJSZXBvc2l0b3J5IGxhY2tzIG5lY2Vzc2FyeSBibG9icyB0byBmYWxsIGJhY2sgb24gMy13YXkgbWVyZ2UuIgogbXNnc3RyICLku5PlupPnvLrkuY/lv4XopoHnmoTmlbDmja7lr7nosaHku6Xov5vooYzkuInmlrnlkIjlubbjgIIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTEwCisjOiBidWlsdGluL2FtLmM6MTQ5MQogbXNnaWQgIlVzaW5nIGluZGV4IGluZm8gdG8gcmVjb25zdHJ1Y3QgYSBiYXNlIHRyZWUuLi4iCiBtc2dzdHIgIuS9v+eUqOe0ouW8leadpemHjeW7uuS4gOS4qu+8iOS4ieaWueWQiOW5tueahO+8ieWfuuehgOebruW9leagkS4uLiIKIAotIzogYnVpbHRpbi9hbS5jOjE1MjkKKyM6IGJ1aWx0aW4vYW0uYzoxNTEwCiBtc2dpZCAiIgogIkRpZCB5b3UgaGFuZCBlZGl0IHlvdXIgcGF0Y2g/XG4iCiAiSXQgZG9lcyBub3QgYXBwbHkgdG8gYmxvYnMgcmVjb3JkZWQgaW4gaXRzIGluZGV4LiIKQEAgLTc0NDgsMjggKzk2MDMsMjQgQEAKICLmgqjmmK/lkKbmm77miYvliqjnvJbovpHov4fmgqjnmoTooaXkuIHvvJ9cbiIKICLml6Dms5XlupTnlKjooaXkuIHliLDntKLlvJXkuK3nmoTmlbDmja7lr7nosaHkuIrjgIIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTM1CisjOiBidWlsdGluL2FtLmM6MTUxNgogbXNnaWQgIkZhbGxpbmcgYmFjayB0byBwYXRjaGluZyBiYXNlIGFuZCAzLXdheSBtZXJnZS4uLiIKIG1zZ3N0ciAi5Zue6JC95Yiw5Z+656GA54mI5pys5LiK5omT6KGl5LiB5Y+K6L+b6KGM5LiJ5pa55ZCI5bm2Li4uIgogCi0jOiBidWlsdGluL2FtLmM6MTU2MQorIzogYnVpbHRpbi9hbS5jOjE1NDIKIG1zZ2lkICJGYWlsZWQgdG8gbWVyZ2UgaW4gdGhlIGNoYW5nZXMuIgogbXNnc3RyICLml6Dms5XlkIjlubblj5jmm7TjgIIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNTkzCisjOiBidWlsdGluL2FtLmM6MTU3NAogbXNnaWQgImFwcGx5aW5nIHRvIGFuIGVtcHR5IGhpc3RvcnkiCiBtc2dzdHIgIuato+W6lOeUqOWIsOS4gOS4quepuuWOhuWPsuS4iiIKIAotIzogYnVpbHRpbi9hbS5jOjE2MzkgYnVpbHRpbi9hbS5jOjE2NDMKKyM6IGJ1aWx0aW4vYW0uYzoxNjIxIGJ1aWx0aW4vYW0uYzoxNjI1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZXN1bWU6ICVzIGRvZXMgbm90IGV4aXN0LiIKIG1zZ3N0ciAi5peg5rOV57un57ut77yaJXMg5LiN5a2Y5Zyo44CCIgogCi0jOiBidWlsdGluL2FtLmM6MTY1OQotbXNnaWQgImNhbm5vdCBiZSBpbnRlcmFjdGl2ZSB3aXRob3V0IHN0ZGluIGNvbm5lY3RlZCB0byBhIHRlcm1pbmFsLiIKLW1zZ3N0ciAi5qCH5YeG6L6T5YWl5rKh5pyJ5ZKM57uI56uv5YWz6IGU77yM5LiN6IO96L+b6KGM5Lqk5LqS5byP5pON5L2c44CCIgotCi0jOiBidWlsdGluL2FtLmM6MTY2NAorIzogYnVpbHRpbi9hbS5jOjE2NDMKIG1zZ2lkICJDb21taXQgQm9keSBpczoiCiBtc2dzdHIgIuaPkOS6pOWGheWuueS4uu+8miIKIApAQCAtNzQ3OCwzNCArOTYyOSwzOSBAQAogIy4gaW4geW91ciB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoCiAjLiBpbnB1dCBhdCB0aGlzIHBvaW50LgogIy4KLSM6IGJ1aWx0aW4vYW0uYzoxNjc0CisjOiBidWlsdGluL2FtLmM6MTY1MworIywgYy1mb3JtYXQKIG1zZ2lkICJBcHBseT8gW3ldZXMvW25dby9bZV1kaXQvW3ZdaWV3IHBhdGNoL1thXWNjZXB0IGFsbDogIgogbXNnc3RyICLlupTnlKjvvJ/mmK9beV0v5ZCmW25dL+e8lui+kVtlXS/mn6XnnIvooaXkuIFbdl0v5bqU55So5omA5pyJW2Fd77yaIgogCi0jOiBidWlsdGluL2FtLmM6MTcyNAorIzogYnVpbHRpbi9hbS5jOjE3MDAgYnVpbHRpbi9jb21taXQuYzozOTgKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgaW5kZXggZmlsZSIKK21zZ3N0ciAi5peg5rOV5YaZ5YWl57Si5byV5paH5Lu2IgorCisjOiBidWlsdGluL2FtLmM6MTcwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJEaXJ0eSBpbmRleDogY2Fubm90IGFwcGx5IHBhdGNoZXMgKGRpcnR5OiAlcykiCiBtc2dzdHIgIuiEj+e0ouW8le+8muS4jeiDveW6lOeUqOihpeS4ge+8iOiEj+aWh+S7tu+8miVz77yJIgogCi0jOiBidWlsdGluL2FtLmM6MTc2NCBidWlsdGluL2FtLmM6MTgzMgorIzogYnVpbHRpbi9hbS5jOjE3NDQgYnVpbHRpbi9hbS5jOjE4MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXBwbHlpbmc6ICUuKnMiCiBtc2dzdHIgIuW6lOeUqO+8miUuKnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzgxCisjOiBidWlsdGluL2FtLmM6MTc2MQogbXNnaWQgIk5vIGNoYW5nZXMgLS0gUGF0Y2ggYWxyZWFkeSBhcHBsaWVkLiIKIG1zZ3N0ciAi5rKh5pyJ5Y+Y5pu0IOKAlOKAlCDooaXkuIHlt7Lnu4/lupTnlKjov4fjgIIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzg3CisjOiBidWlsdGluL2FtLmM6MTc2NwogIywgYy1mb3JtYXQKIG1zZ2lkICJQYXRjaCBmYWlsZWQgYXQgJXMgJS4qcyIKIG1zZ3N0ciAi5omT6KGl5LiB5aSx6LSl5LqOICVzICUuKnMiCiAKLSM6IGJ1aWx0aW4vYW0uYzoxNzkxCi1tc2dpZCAiVXNlICdnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2gnIHRvIHNlZSB0aGUgZmFpbGVkIHBhdGNoIgotbXNnc3RyICLnlKggJ2dpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaCcg5ZG95Luk5p+l55yL5aSx6LSl55qE6KGl5LiBIgorIzogYnVpbHRpbi9hbS5jOjE3NzEKK21zZ2lkICJVc2UgJ2dpdCBhbSAtLXNob3ctY3VycmVudC1wYXRjaD1kaWZmJyB0byBzZWUgdGhlIGZhaWxlZCBwYXRjaCIKK21zZ3N0ciAi55SoICdnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2g9ZGlmZicg5ZG95Luk5p+l55yL5aSx6LSl55qE6KGl5LiBIgogCi0jOiBidWlsdGluL2FtLmM6MTgzNQorIzogYnVpbHRpbi9hbS5jOjE4MTUKIG1zZ2lkICIiCiAiTm8gY2hhbmdlcyAtIGRpZCB5b3UgZm9yZ2V0IHRvIHVzZSAnZ2l0IGFkZCc/XG4iCiAiSWYgdGhlcmUgaXMgbm90aGluZyBsZWZ0IHRvIHN0YWdlLCBjaGFuY2VzIGFyZSB0aGF0IHNvbWV0aGluZyBlbHNlXG4iCkBAIC03NTE1LDcgKzk2NzEsNyBAQAogIuWmguaenOayoeacieS7gOS5iOimgea3u+WKoOWIsOaaguWtmOWMuueahO+8jOWImeW+iOWPr+iDveaYr+WFtuWug+aPkOS6pOW3sue7j+W8leWFpeS6huebuOWQjOeahOWPmOabtOOAglxuIgogIuaCqOS5n+iuuOaDs+imgei3s+i/h+i/meS4quihpeS4geOAgiIKIAotIzogYnVpbHRpbi9hbS5jOjE4NDIKKyM6IGJ1aWx0aW4vYW0uYzoxODIyCiBtc2dpZCAiIgogIllvdSBzdGlsbCBoYXZlIHVubWVyZ2VkIHBhdGhzIGluIHlvdXIgaW5kZXguXG4iCiAiWW91IHNob3VsZCAnZ2l0IGFkZCcgZWFjaCBmaWxlIHdpdGggcmVzb2x2ZWQgY29uZmxpY3RzIHRvIG1hcmsgdGhlbSBhcyAiCkBAIC03NTI2LDE1OSArOTY4MiwxNjkgQEAKICLmgqjlupTor6Xlr7nlt7Lnu4/lhrLnqoHop6PlhrPnmoTmr4/kuIDkuKrmlofku7bmiafooYwgJ2dpdCBhZGQnIOadpeagh+iusOW3sue7j+WujOaIkOOAgiBcbiIKICLkvaDlj6/ku6Xlr7kgXCLnlLHku5bku6zliKDpmaRcIiDnmoTmlofku7bmiafooYwgYGdpdCBybWAg5ZG95Luk44CCIgogCi0jOiBidWlsdGluL2FtLmM6MTk0OSBidWlsdGluL2FtLmM6MTk1MyBidWlsdGluL2FtLmM6MTk2NSBidWlsdGluL3Jlc2V0LmM6MzI4Ci0jOiBidWlsdGluL3Jlc2V0LmM6MzM2CisjOiBidWlsdGluL2FtLmM6MTkyOSBidWlsdGluL2FtLmM6MTkzMyBidWlsdGluL2FtLmM6MTk0NSBidWlsdGluL3Jlc2V0LmM6MzQ2CisjOiBidWlsdGluL3Jlc2V0LmM6MzU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJy4iCiBtc2dzdHIgIuS4jeiDveino+aekOWvueixoSAnJXMn44CCIgogCi0jOiBidWlsdGluL2FtLmM6MjAwMQorIzogYnVpbHRpbi9hbS5jOjE5ODEKIG1zZ2lkICJmYWlsZWQgdG8gY2xlYW4gaW5kZXgiCiBtc2dzdHIgIua4heepuue0ouW8leWksei0pSIKIAotIzogYnVpbHRpbi9hbS5jOjIwMzYKKyM6IGJ1aWx0aW4vYW0uYzoyMDI1CiBtc2dpZCAiIgogIllvdSBzZWVtIHRvIGhhdmUgbW92ZWQgSEVBRCBzaW5jZSB0aGUgbGFzdCAnYW0nIGZhaWx1cmUuXG4iCiAiTm90IHJld2luZGluZyB0byBPUklHX0hFQUQiCiBtc2dzdHIgIuaCqOWlveWDj+WcqOS4iuS4gOasoSAnYW0nIOWksei0peWQjuenu+WKqOS6hiBIRUFE44CC5pyq5Zue6YCA6IezIE9SSUdfSEVBRCIKIAotIzogYnVpbHRpbi9hbS5jOjIxMjkKKyM6IGJ1aWx0aW4vYW0uYzoyMTMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdmFsdWUgZm9yIC0tcGF0Y2gtZm9ybWF0OiAlcyIKIG1zZ3N0ciAi5peg5pWI55qEIC0tcGF0Y2gtZm9ybWF0IOWAvO+8miVzIgogCi0jOiBidWlsdGluL2FtLmM6MjE2NQorIzogYnVpbHRpbi9hbS5jOjIxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgLS1zaG93LWN1cnJlbnQtcGF0Y2g6ICVzIgorbXNnc3RyICLml6DmlYjnmoQgLS1zaG93LWN1cnJlbnQtcGF0Y2gg5YC877yaJXMiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIgorbXNnc3RyICItLXNob3ctY3VycmVudC1wYXRjaD0lcyDlkowgLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMg5LiN5YW85a65IgorCisjOiBidWlsdGluL2FtLmM6MjIwNwogbXNnaWQgImdpdCBhbSBbPG9wdGlvbnM+XSBbKDxtYm94PiB8IDxNYWlsZGlyPikuLi5dIgogbXNnc3RyICJnaXQgYW0gWzzpgInpobk+XSBbKDxtYm94PiB8IDxNYWlsZGlyPikuLi5dIgogCi0jOiBidWlsdGluL2FtLmM6MjE2NgorIzogYnVpbHRpbi9hbS5jOjIyMDgKIG1zZ2lkICJnaXQgYW0gWzxvcHRpb25zPl0gKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0KSIKIG1zZ3N0ciAiZ2l0IGFtIFs86YCJ6aG5Pl0gKC0tY29udGludWUgfCAtLXNraXAgfCAtLWFib3J0KSIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzIKKyM6IGJ1aWx0aW4vYW0uYzoyMjE0CiBtc2dpZCAicnVuIGludGVyYWN0aXZlbHkiCiBtc2dzdHIgIuS7peS6pOS6kuW8j+aWueW8j+i/kOihjCIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzQKKyM6IGJ1aWx0aW4vYW0uYzoyMjE2CiBtc2dpZCAiaGlzdG9yaWNhbCBvcHRpb24gLS0gbm8tb3AiCiBtc2dzdHIgIuiAgeeahOWPguaVsCDigJTigJQg5peg5L2c55SoIgogCi0jOiBidWlsdGluL2FtLmM6MjE3NgorIzogYnVpbHRpbi9hbS5jOjIyMTgKIG1zZ2lkICJhbGxvdyBmYWxsIGJhY2sgb24gM3dheSBtZXJnaW5nIGlmIG5lZWRlZCIKIG1zZ3N0ciAi5aaC5p6c5b+F6KaB77yM5YWB6K645L2/55So5LiJ5pa55ZCI5bm244CCIgogCi0jOiBidWlsdGluL2FtLmM6MjE3NyBidWlsdGluL2luaXQtZGIuYzo0ODYgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo1OAotIzogYnVpbHRpbi9yZXBhY2suYzozMDYKKyM6IGJ1aWx0aW4vYW0uYzoyMjE5IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5NCBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU4CisjOiBidWlsdGluL3JlcGFjay5jOjMwNCBidWlsdGluL3N0YXNoLmM6ODEyCiBtc2dpZCAiYmUgcXVpZXQiCiBtc2dzdHIgIumdmem7mOaooeW8jyIKIAotIzogYnVpbHRpbi9hbS5jOjIxNzkKKyM6IGJ1aWx0aW4vYW0uYzoyMjIxCiBtc2dpZCAiYWRkIGEgU2lnbmVkLW9mZi1ieSBsaW5lIHRvIHRoZSBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAi5Zyo5o+Q5Lqk6K+05piO5Lit5re75Yqg5LiA5LiqIFNpZ25lZC1vZmYtYnkg562+5ZCNIgogCi0jOiBidWlsdGluL2FtLmM6MjE4MgorIzogYnVpbHRpbi9hbS5jOjIyMjQKIG1zZ2lkICJyZWNvZGUgaW50byB1dGY4IChkZWZhdWx0KSIKIG1zZ3N0ciAi5L2/55SoIHV0Zjgg5a2X56ym6ZuG77yI6buY6K6k77yJIgogCi0jOiBidWlsdGluL2FtLmM6MjE4NAorIzogYnVpbHRpbi9hbS5jOjIyMjYKIG1zZ2lkICJwYXNzIC1rIGZsYWcgdG8gZ2l0LW1haWxpbmZvIgogbXNnc3RyICLlkJEgZ2l0LW1haWxpbmZvIOS8oOmAkiAtayDlj4LmlbAiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTg2CisjOiBidWlsdGluL2FtLmM6MjIyOAogbXNnaWQgInBhc3MgLWIgZmxhZyB0byBnaXQtbWFpbGluZm8iCiBtc2dzdHIgIuWQkSBnaXQtbWFpbGluZm8g5Lyg6YCSIC1iIOWPguaVsCIKIAotIzogYnVpbHRpbi9hbS5jOjIxODgKKyM6IGJ1aWx0aW4vYW0uYzoyMjMwCiBtc2dpZCAicGFzcyAtbSBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKIG1zZ3N0ciAi5ZCRIGdpdC1tYWlsaW5mbyDkvKDpgJIgLW0g5Y+C5pWwIgogCi0jOiBidWlsdGluL2FtLmM6MjE5MAorIzogYnVpbHRpbi9hbS5jOjIyMzIKIG1zZ2lkICJwYXNzIC0ta2VlcC1jciBmbGFnIHRvIGdpdC1tYWlsc3BsaXQgZm9yIG1ib3ggZm9ybWF0IgogbXNnc3RyICLpkojlr7kgbWJveCDmoLzlvI/vvIzlkJEgZ2l0LW1haWxzcGxpdCDkvKDpgJIgLS1rZWVwLWNyIOWPguaVsCIKIAotIzogYnVpbHRpbi9hbS5jOjIxOTMKKyM6IGJ1aWx0aW4vYW0uYzoyMjM1CiBtc2dpZCAiZG8gbm90IHBhc3MgLS1rZWVwLWNyIGZsYWcgdG8gZ2l0LW1haWxzcGxpdCBpbmRlcGVuZGVudCBvZiBhbS5rZWVwY3IiCiBtc2dzdHIgIuS4jeWQkSBnaXQtbWFpbHNwbGl0IOS8oOmAkiAtLWtlZXAtY3Ig5Y+C5pWw77yM6KaG55uWIGFtLmtlZXBjciDnmoTorr7nva4iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMTk2CisjOiBidWlsdGluL2FtLmM6MjIzOAogbXNnaWQgInN0cmlwIGV2ZXJ5dGhpbmcgYmVmb3JlIGEgc2Npc3NvcnMgbGluZSIKIG1zZ3N0ciAi5Lii5byD6KOB5YiH57q/5YmN55qE5omA5pyJ5YaF5a65IgogCi0jOiBidWlsdGluL2FtLmM6MjE5OCBidWlsdGluL2FtLmM6MjIwMSBidWlsdGluL2FtLmM6MjIwNCBidWlsdGluL2FtLmM6MjIwNwotIzogYnVpbHRpbi9hbS5jOjIyMTAgYnVpbHRpbi9hbS5jOjIyMTMgYnVpbHRpbi9hbS5jOjIyMTYgYnVpbHRpbi9hbS5jOjIyMTkKLSM6IGJ1aWx0aW4vYW0uYzoyMjI1CisjOiBidWlsdGluL2FtLmM6MjI0MCBidWlsdGluL2FtLmM6MjI0MyBidWlsdGluL2FtLmM6MjI0NiBidWlsdGluL2FtLmM6MjI0OQorIzogYnVpbHRpbi9hbS5jOjIyNTIgYnVpbHRpbi9hbS5jOjIyNTUgYnVpbHRpbi9hbS5jOjIyNTggYnVpbHRpbi9hbS5jOjIyNjEKKyM6IGJ1aWx0aW4vYW0uYzoyMjY3CiBtc2dpZCAicGFzcyBpdCB0aHJvdWdoIGdpdC1hcHBseSIKIG1zZ3N0ciAi5Lyg6YCS57uZIGdpdC1hcHBseSIKIAotIzogYnVpbHRpbi9hbS5jOjIyMTUgYnVpbHRpbi9jb21taXQuYzoxMzQwIGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MQotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc0IGJ1aWx0aW4vZ3JlcC5jOjg2OCBidWlsdGluL21lcmdlLmM6MjM5Ci0jOiBidWlsdGluL3B1bGwuYzoxNTEgYnVpbHRpbi9wdWxsLmM6MjA5IGJ1aWx0aW4vcmViYXNlLmM6ODU0Ci0jOiBidWlsdGluL3JlcGFjay5jOjMxNyBidWlsdGluL3JlcGFjay5jOjMyMSBidWlsdGluL3JlcGFjay5jOjMyMwotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MSBidWlsdGluL3Nob3ctcmVmLmM6MTcxIGJ1aWx0aW4vdGFnLmM6Mzg2Ci0jOiBwYXJzZS1vcHRpb25zLmg6MTQ0IHBhcnNlLW9wdGlvbnMuaDoxNDYgcGFyc2Utb3B0aW9ucy5oOjI2OAorIzogYnVpbHRpbi9hbS5jOjIyNTcgYnVpbHRpbi9jb21taXQuYzoxMzkxIGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MAorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjczIGJ1aWx0aW4vZ3JlcC5jOjg3MSBidWlsdGluL21lcmdlLmM6MjUwCisjOiBidWlsdGluL3B1bGwuYzoxNDAgYnVpbHRpbi9wdWxsLmM6MTk5IGJ1aWx0aW4vcmViYXNlLmM6MTUwNQorIzogYnVpbHRpbi9yZXBhY2suYzozMTUgYnVpbHRpbi9yZXBhY2suYzozMTkgYnVpbHRpbi9yZXBhY2suYzozMjEKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTAgYnVpbHRpbi9zaG93LXJlZi5jOjE3MiBidWlsdGluL3RhZy5jOjQwMworIzogcGFyc2Utb3B0aW9ucy5oOjE1NCBwYXJzZS1vcHRpb25zLmg6MTc1IHBhcnNlLW9wdGlvbnMuaDozMTYKIG1zZ2lkICJuIgogbXNnc3RyICJuIgogCi0jOiBidWlsdGluL2FtLmM6MjIyMSBidWlsdGluL2JyYW5jaC5jOjYzNyBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4Ci0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDQgYnVpbHRpbi90YWcuYzo0MjIgYnVpbHRpbi92ZXJpZnktdGFnLmM6MzkKKyM6IGJ1aWx0aW4vYW0uYzoyMjYzIGJ1aWx0aW4vYnJhbmNoLmM6NjYxIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzgKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NiBidWlsdGluL3RhZy5jOjQzNyBidWlsdGluL3ZlcmlmeS10YWcuYzozOAogbXNnaWQgImZvcm1hdCIKIG1zZ3N0ciAi5qC85byPIgogCi0jOiBidWlsdGluL2FtLmM6MjIyMgorIzogYnVpbHRpbi9hbS5jOjIyNjQKIG1zZ2lkICJmb3JtYXQgdGhlIHBhdGNoKGVzKSBhcmUgaW4iCiBtc2dzdHIgIuihpeS4geeahOagvOW8jyIKIAotIzogYnVpbHRpbi9hbS5jOjIyMjgKKyM6IGJ1aWx0aW4vYW0uYzoyMjcwCiBtc2dpZCAib3ZlcnJpZGUgZXJyb3IgbWVzc2FnZSB3aGVuIHBhdGNoIGZhaWx1cmUgb2NjdXJzIgogbXNnc3RyICLmiZPooaXkuIHlpLHotKXml7bmmL7npLrnmoTplJnor6/kv6Hmga8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjMwCisjOiBidWlsdGluL2FtLmM6MjI3MgogbXNnaWQgImNvbnRpbnVlIGFwcGx5aW5nIHBhdGNoZXMgYWZ0ZXIgcmVzb2x2aW5nIGEgY29uZmxpY3QiCiBtc2dzdHIgIuWGsueqgeino+WGs+WQjue7p+e7reW6lOeUqOihpeS4gSIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzMKKyM6IGJ1aWx0aW4vYW0uYzoyMjc1CiBtc2dpZCAic3lub255bXMgZm9yIC0tY29udGludWUiCiBtc2dzdHIgIuWSjCAtLWNvbnRpbnVlIOWQjOS5iSIKIAotIzogYnVpbHRpbi9hbS5jOjIyMzYKKyM6IGJ1aWx0aW4vYW0uYzoyMjc4CiBtc2dpZCAic2tpcCB0aGUgY3VycmVudCBwYXRjaCIKIG1zZ3N0ciAi6Lez6L+H5b2T5YmN6KGl5LiBIgogCi0jOiBidWlsdGluL2FtLmM6MjIzOQorIzogYnVpbHRpbi9hbS5jOjIyODEKIG1zZ2lkICJyZXN0b3JlIHRoZSBvcmlnaW5hbCBicmFuY2ggYW5kIGFib3J0IHRoZSBwYXRjaGluZyBvcGVyYXRpb24uIgogbXNnc3RyICLmgaLlpI3ljp/lp4vliIbmlK/lubbnu4jmraLmiZPooaXkuIHmk43kvZzjgIIiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjQyCisjOiBidWlsdGluL2FtLmM6MjI4NAogbXNnaWQgImFib3J0IHRoZSBwYXRjaGluZyBvcGVyYXRpb24gYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcy4iCiBtc2dzdHIgIue7iOatouihpeS4geaTjeS9nOS9huS/neaMgSBIRUFEIOS4jeWPmOOAgiIKIAotIzogYnVpbHRpbi9hbS5jOjIyNDUKLW1zZ2lkICJzaG93IHRoZSBwYXRjaCBiZWluZyBhcHBsaWVkLiIKLW1zZ3N0ciAi5pi+56S65q2j5Zyo5bqU55So55qE6KGl5LiB44CCIgorIzogYnVpbHRpbi9hbS5jOjIyODgKK21zZ2lkICJzaG93IHRoZSBwYXRjaCBiZWluZyBhcHBsaWVkIgorbXNnc3RyICLmmL7npLrmraPlnKjlupTnlKjnmoTooaXkuIEiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjQ5CisjOiBidWlsdGluL2FtLmM6MjI5MwogbXNnaWQgImxpZSBhYm91dCBjb21taXR0ZXIgZGF0ZSIKIG1zZ3N0ciAi5bCG5L2c6ICF5pel5pyf5L2c5Li65o+Q5Lqk5pel5pyfIgogCi0jOiBidWlsdGluL2FtLmM6MjI1MQorIzogYnVpbHRpbi9hbS5jOjIyOTUKIG1zZ2lkICJ1c2UgY3VycmVudCB0aW1lc3RhbXAgZm9yIGF1dGhvciBkYXRlIgogbXNnc3RyICLnlKjlvZPliY3ml7bpl7TkvZzkuLrkvZzogIXml6XmnJ8iCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjUzIGJ1aWx0aW4vY29tbWl0LmM6MTQ4MyBidWlsdGluL21lcmdlLmM6MjczCi0jOiBidWlsdGluL3B1bGwuYzoxODQgYnVpbHRpbi9yZWJhc2UuYzo4OTggYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgzCi0jOiBidWlsdGluL3JldmVydC5jOjExMyBidWlsdGluL3RhZy5jOjQwMgorIzogYnVpbHRpbi9hbS5jOjIyOTcgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMCBidWlsdGluL2NvbW1pdC5jOjE1MTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODcgYnVpbHRpbi9wdWxsLmM6MTc0IGJ1aWx0aW4vcmViYXNlLmM6NTE3CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NTYgYnVpbHRpbi9yZXZlcnQuYzoxMTcgYnVpbHRpbi90YWcuYzo0MTgKIG1zZ2lkICJrZXktaWQiCiBtc2dzdHIgImtleS1pZCIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9yZWJhc2UuYzo4OTkgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg0CisjOiBidWlsdGluL2FtLmM6MjI5OCBidWlsdGluL3JlYmFzZS5jOjUxOCBidWlsdGluL3JlYmFzZS5jOjE1NTcKIG1zZ2lkICJHUEctc2lnbiBjb21taXRzIgogbXNnc3RyICLkvb/nlKggR1BHIOetvuWQjeaPkOS6pCIKIAotIzogYnVpbHRpbi9hbS5jOjIyNTcKKyM6IGJ1aWx0aW4vYW0uYzoyMzAxCiBtc2dpZCAiKGludGVybmFsIHVzZSBmb3IgZ2l0LXJlYmFzZSkiCiBtc2dzdHIgIu+8iOWGhemDqOS9v+eUqO+8jOeUqOS6jiBnaXQtcmViYXNl77yJIgogCi0jOiBidWlsdGluL2FtLmM6MjI3NQorIzogYnVpbHRpbi9hbS5jOjIzMTkKIG1zZ2lkICIiCiAiVGhlIC1iLy0tYmluYXJ5IG9wdGlvbiBoYXMgYmVlbiBhIG5vLW9wIGZvciBsb25nIHRpbWUsIGFuZFxuIgogIml0IHdpbGwgYmUgcmVtb3ZlZC4gUGxlYXNlIGRvIG5vdCB1c2UgaXQgYW55bW9yZS4iCkBAIC03Njg2LDE2ICs5ODUyLDE2IEBACiAi5Y+C5pWwIC1iLy0tYmluYXJ5IOW3sue7j+W+iOmVv+aXtumXtOS4jeWBmuS7u+S9leWunui0qOaTjeS9nOS6hu+8jOW5tuS4lOWwhuiiq+enu+mZpOOAglxuIgogIuivt+S4jeimgeWGjeS9v+eUqOWug+S6huOAgiIKIAotIzogYnVpbHRpbi9hbS5jOjIyODIKKyM6IGJ1aWx0aW4vYW0uYzoyMzI2CiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICLor7vlj5bntKLlvJXlpLHotKUiCiAKLSM6IGJ1aWx0aW4vYW0uYzoyMjk3CisjOiBidWlsdGluL2FtLmM6MjM0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwcmV2aW91cyByZWJhc2UgZGlyZWN0b3J5ICVzIHN0aWxsIGV4aXN0cyBidXQgbWJveCBnaXZlbi4iCiBtc2dzdHIgIuS5i+WJjeeahOWPmOWfuuebruW9lSAlcyDku43nhLblrZjlnKjvvIzkvYbljbTmj5DkvpvkuoYgbWJveOOAgiIKIAotIzogYnVpbHRpbi9hbS5jOjIzMjEKKyM6IGJ1aWx0aW4vYW0uYzoyMzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdHJheSAlcyBkaXJlY3RvcnkgZm91bmQuXG4iCkBAIC03NzA0LDEwICs5ODcwLDE0IEBACiAi5Y+R546w5LqG6ZSZ6K+v55qEICVzIOebruW9leOAglxuIgogIuS9v+eUqCBcImdpdCBhbSAtLWFib3J0XCIg5Yig6Zmk5a6D44CCIgogCi0jOiBidWlsdGluL2FtLmM6MjMyNworIzogYnVpbHRpbi9hbS5jOjIzNzEKIG1zZ2lkICJSZXNvbHZlIG9wZXJhdGlvbiBub3QgaW4gcHJvZ3Jlc3MsIHdlIGFyZSBub3QgcmVzdW1pbmcuIgogbXNnc3RyICLop6PlhrPmk43kvZzmnKrov5vooYzvvIzmiJHku6zkuI3kvJrnu6fnu63jgIIiCiAKKyM6IGJ1aWx0aW4vYW0uYzoyMzgxCittc2dpZCAiaW50ZXJhY3RpdmUgbW9kZSByZXF1aXJlcyBwYXRjaGVzIG9uIHRoZSBjb21tYW5kIGxpbmUiCittc2dzdHIgIuS6pOS6kuW8j+aooeW8j+mcgOimgeWRveS7pOihjOS4iuaPkOS+m+ihpeS4gSIKKwogIzogYnVpbHRpbi9hcHBseS5jOjgKIG1zZ2lkICJnaXQgYXBwbHkgWzxvcHRpb25zPl0gWzxwYXRjaD4uLi5dIgogbXNnc3RyICJnaXQgYXBwbHkgWzzpgInpobk+XSBbPOihpeS4gT4uLi5dIgpAQCAtNzcyNSw4NSArOTg5NSwyOTQgQEAKIG1zZ2lkICJnaXQgYXJjaGl2ZTogUmVtb3RlIHdpdGggbm8gVVJMIgogbXNnc3RyICJnaXQgYXJjaGl2Ze+8muacquaPkOS+m+i/nOeoiyBVUkwiCiAKLSM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjU4CisjOiBidWlsdGluL2FyY2hpdmUuYzo2MQogbXNnaWQgImdpdCBhcmNoaXZlOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgYSBmbHVzaCBwYWNrZXQiCiBtc2dzdHIgImdpdCBhcmNoaXZl77ya5pyf5pyb5pivIEFDSy9OQUvvvIzljbTlvpfliLAgZmx1c2gg5YyFIgogCi0jOiBidWlsdGluL2FyY2hpdmUuYzo2MQorIzogYnVpbHRpbi9hcmNoaXZlLmM6NjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IGFyY2hpdmU6IE5BQ0sgJXMiCiBtc2dzdHIgImdpdCBhcmNoaXZl77yaTkFDSyAlcyIKIAotIzogYnVpbHRpbi9hcmNoaXZlLmM6NjQKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY1CiBtc2dpZCAiZ2l0IGFyY2hpdmU6IHByb3RvY29sIGVycm9yIgogbXNnc3RyICJnaXQgYXJjaGl2Ze+8muWNj+iurumUmeivryIKIAotIzogYnVpbHRpbi9hcmNoaXZlLmM6NjgKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY5CiBtc2dpZCAiZ2l0IGFyY2hpdmU6IGV4cGVjdGVkIGEgZmx1c2giCiBtc2dzdHIgImdpdCBhcmNoaXZl77ya5bqU5pyJ5LiA5LiqIGZsdXNoIOWMhSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjIKIG1zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCBbLS1uby1jaGVja291dF0iCiBtc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLW5leHQtYWxsIFstLW5vLWNoZWNrb3V0XSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEzCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjMKIG1zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS13cml0ZS10ZXJtcyA8YmFkX3Rlcm0+IDxnb29kX3Rlcm0+IgogbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS13cml0ZS10ZXJtcyA85Z2PLeacr+ivrT4gPOWlvS3mnK/or60+IgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTQKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNAogbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jbGVhbi1zdGF0ZSIKIG1zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNsZWFuLXN0YXRlIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDYKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNQorbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1yZXNldCBbPGNvbW1pdD5dIgorbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtcmVzZXQgWzzmj5DkuqQ+XSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI2Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC13cml0ZSBbLS1uby1sb2ddIDxzdGF0ZT4gPHJldmlzaW9uPiA8Z29vZF90ZXJtPiAiCisiPGJhZF90ZXJtPiIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC13cml0ZSBbLS1uby1sb2ddIDznirbmgIE+IDzniYjmnKw+IDzlpb0t5pyv6K+tPiA85Z2PLeacr+ivrSIKKyI+IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjcKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNoZWNrLWFuZC1zZXQtdGVybXMgPGNvbW1hbmQ+IDxnb29kX3Rlcm0+ICIKKyI8YmFkX3Rlcm0+IgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNoZWNrLWFuZC1zZXQtdGVybXMgPOWRveS7pD4gPOWlvS3mnK/or60+IDzlnY8t5pyv6K+tPiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI4Cittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LW5leHQtY2hlY2sgPGdvb2RfdGVybT4gPGJhZF90ZXJtPiBbPHRlcm0+XSIKK21zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LW5leHQtY2hlY2sgPOWlvS3mnK/or60+IDzlnY8t5pyv6K+tPiBbPOacr+ivrT5dIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjkKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXRlcm1zIFstLXRlcm0tZ29vZCB8IC0tdGVybS1vbGQgfCAtLXRlcm0tYmFkIHwgLS0iCisidGVybS1uZXddIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzAKK21zZ2lkICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT08dGVybT4gLS10ZXJtLXtuZXcsYmFkfSIKKyI9PHRlcm0+XVstLW5vLWNoZWNrb3V0XSBbPGJhZD4gWzxnb29kPi4uLl1dIFstLV0gWzxwYXRocz4uLi5dIgorbXNnc3RyICIiCisiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXN0YXJ0IFstLXRlcm0te29sZCxnb29kfT085pyv6K+tPiAtLXRlcm0te25ldyxiYWR9IgorIj085pyv6K+tPl1bLS1uby1jaGVja291dF0gWzzlnY8+IFs85aW9Pi4uLl1dIFstLV0gWzzot6/lvoQ+Li4uXSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgdGVybSIKIG1zZ3N0ciAiJyVzJyDkuI3mmK/kuIDkuKrmnInmlYjnmoTmnK/or60iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1MAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbid0IHVzZSB0aGUgYnVpbHRpbiBjb21tYW5kICclcycgYXMgYSB0ZXJtIgogbXNnc3RyICLkuI3og73kvb/nlKjlhoXnva7lkb3ku6QgJyVzJyDkvZzkuLrmnK/or60iCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEwMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW4ndCBjaGFuZ2UgdGhlIG1lYW5pbmcgb2YgdGhlIHRlcm0gJyVzJyIKIG1zZ3N0ciAi5LiN6IO95L+u5pS55pyv6K+tICclcycg55qE5ZCr5LmJIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzEKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMTEKIG1zZ2lkICJwbGVhc2UgdXNlIHR3byBkaWZmZXJlbnQgdGVybXMiCiBtc2dzdHIgIuivt+S9v+eUqOS4pOS4quS4jeWQjOeahOacr+ivrSIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjc4CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTE4CiBtc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGZpbGUgQklTRUNUX1RFUk1TIgogbXNnc3RyICLkuI3og73miZPlvIDmlofku7YgQklTRUNUX1RFUk1TIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTIwCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLlxuIgorbXNnc3RyICLmiJHku6zmsqHmnInlnKjkuozliIbmn6Xmib7jgIJcbiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIGNvbW1pdCIKK21zZ3N0ciAiJyVzJyDkuI3mmK/kuIDkuKrmnInmlYjnmoTmj5DkuqQiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvdWxkIG5vdCBjaGVjayBvdXQgb3JpZ2luYWwgSEVBRCAnJXMnLiBUcnkgJ2dpdCBiaXNlY3QgcmVzZXQgPGNvbW1pdD4nLiIKK21zZ3N0ciAi5LiN6IO95qOA5Ye65Y6f5aeLIEhFQUQgJyVzJ+OAguWwneivlSAnZ2l0IGJpc2VjdCByZXNldCA85o+Q5LqkPifjgIIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmFkIGJpc2VjdF93cml0ZSBhcmd1bWVudDogJXMiCittc2dzdHIgIuWdj+eahCBiaXNlY3Rfd3JpdGUg5Y+C5pWw77yaJXMiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgZ2V0IHRoZSBvaWQgb2YgdGhlIHJldiAnJXMnIgorbXNnc3RyICLml6Dms5Xojrflj5bniYjmnKwgJyVzJyDnmoTlr7nosaEgSUQiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiB0aGUgZmlsZSAnJXMnIgorbXNnc3RyICLml6Dms5XmiZPlvIDmlofku7YgJyVzJyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGNvbW1hbmQ6IHlvdSdyZSBjdXJyZW50bHkgaW4gYSAlcy8lcyBiaXNlY3QiCittc2dzdHIgIuaXoOaViOeahOWRveS7pO+8muaCqOW9k+WJjeato+WkhOS6juS4gOS4qiAlcy8lcyDkuozliIbmn6Xmib7kuK0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICVzIGFuZCAlcyByZXZpc2lvbi5cbiIKKyJZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJXNcIiBhbmQgXCJnaXQgYmlzZWN0ICVzXCIgZm9yIHRoYXQuIgorbXNnc3RyICIiCisi5oKo6ZyA6KaB57uZ5oiR6Iez5bCR5LiA5LiqICVzIOWSjOS4gOS4qiAlcyDniYjmnKzjgIJcbiIKKyLkuLrmraTmgqjlj6/ku6XnlKggXCJnaXQgYmlzZWN0ICVzXCIg5ZKMIFwiZ2l0IGJpc2VjdCAlc1wi44CCIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKKyJZb3UgdGhlbiBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICVzIGFuZCAlcyByZXZpc2lvbi5cbiIKKyJZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJXNcIiBhbmQgXCJnaXQgYmlzZWN0ICVzXCIgZm9yIHRoYXQuIgorbXNnc3RyICIiCisi5oKo6ZyA6KaB5omn6KGMIFwiZ2l0IGJpc2VjdCBzdGFydFwiIOadpeW8gOWni+OAglxuIgorIueEtuWQjumcgOimgeaPkOS+m+aIkeiHs+WwkeS4gOS4qiAlcyDlkozkuIDkuKogJXMg54mI5pys44CCXG4iCisi5Li65q2k5oKo5Y+v5Lul55SoIFwiZ2l0IGJpc2VjdCAlc1wiIOWSjCBcImdpdCBiaXNlY3QgJXNcIiDlkb3ku6TjgIIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmlzZWN0aW5nIG9ubHkgd2l0aCBhICVzIGNvbW1pdCIKK21zZ3N0ciAi5Zyo5Y+q5pyJ5LiA5LiqICVzIOaPkOS6pOeahOaDheWGteS4i+S6jOWIhuafpeaJviIKKworIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5Y+l5bC+56m65qC8CisjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW1ldIGFuZCBbbl0gaW4geW91cgorIy4gdHJhbnNsYXRpb24uIFRoZSBwcm9ncmFtIHdpbGwgb25seSBhY2NlcHQgRW5nbGlzaCBpbnB1dAorIy4gYXQgdGhpcyBwb2ludC4KKyMuCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzE4Cittc2dpZCAiQXJlIHlvdSBzdXJlIFtZL25dPyAiCittc2dzdHIgIuaCqOehruiupOS5iFtZL25d77yfICIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM3OQorbXNnaWQgIm5vIHRlcm1zIGRlZmluZWQiCittc2dzdHIgIuacquWumuS5ieacr+ivrSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBjdXJyZW50IHRlcm1zIGFyZSAlcyBmb3IgdGhlIG9sZCBzdGF0ZVxuIgorImFuZCAlcyBmb3IgdGhlIG5ldyBzdGF0ZS5cbiIKK21zZ3N0ciAi5oKo5b2T5YmN6ZKI5a+55pen54q25oCB55qE5pyv6K+t5pivICVz77yM5a+55paw54q25oCB55qE5pyv6K+t5pivICVz44CCXG4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgYXJndW1lbnQgJXMgZm9yICdnaXQgYmlzZWN0IHRlcm1zJy5cbiIKKyJTdXBwb3J0ZWQgb3B0aW9ucyBhcmU6IC0tdGVybS1nb29kfC0tdGVybS1vbGQgYW5kIC0tdGVybS1iYWR8LS10ZXJtLW5ldy4iCittc2dzdHIgIiIKKyLlkb3ku6QgJ2dpdCBiaXNlY3QgdGVybXMnIOeahOWPguaVsCAlcyDml6DmlYjjgIJcbiIKKyLmlK/mjIHnmoTpgInpobnmnInvvJotLXRlcm0tZ29vZHwtLXRlcm0tb2xkIOWSjCAtLXRlcm0tYmFkfC0tdGVybS1uZXfjgIIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIG9wdGlvbjogJyVzJyIKK21zZ3N0ciAi5pyq6K+G5Yir55qE6YCJ6aG577yaJyVzJyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IGFwcGVhciB0byBiZSBhIHZhbGlkIHJldmlzaW9uIgorbXNnc3RyICInJXMnIOeci+i1t+adpeS4jeaYr+S4gOS4quacieaViOeahOeJiOacrCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUxNAorbXNnaWQgImJhZCBIRUFEIC0gSSBuZWVkIGEgSEVBRCIKK21zZ3N0ciAi5Z2P55qEIEhFQUQgLSDmiJHpnIDopoHkuIDkuKogSEVBRCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjUyOQorIywgYy1mb3JtYXQKK21zZ2lkICJjaGVja2luZyBvdXQgJyVzJyBmYWlsZWQuIFRyeSAnZ2l0IGJpc2VjdCBzdGFydCA8dmFsaWQtYnJhbmNoPicuIgorbXNnc3RyICLmo4Dlh7ogJyVzJyDlpLHotKXjgILlsJ3or5UgJ2dpdCBiaXNlY3Qgc3RhcnQgPOacieaViOWIhuaUrz4n44CCIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTUwCittc2dpZCAid29uJ3QgYmlzZWN0IG9uIGNnLXNlZWsnZWQgdHJlZSIKK21zZ3N0ciAi5LiN5Lya5Zyo5YGa5LqGIGNnLXNlZWsg55qE5qCR5LiK5YGa5LqM5YiG5p+l5om+IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTUzCittc2dpZCAiYmFkIEhFQUQgLSBzdHJhbmdlIHN5bWJvbGljIHJlZiIKK21zZ3N0ciAi5Z2P55qEIEhFQUQgLSDlpYfmgKrnmoTnrKblj7flvJXnlKgiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWY6ICclcyciCittc2dzdHIgIuaXoOaViOeahOW8leeUqO+8miclcyciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzMKIG1zZ2lkICJwZXJmb3JtICdnaXQgYmlzZWN0IG5leHQnIgogbXNnc3RyICLmiafooYwgJ2dpdCBiaXNlY3QgbmV4dCciCiAKLSM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMjIKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzUKIG1zZ2lkICJ3cml0ZSB0aGUgdGVybXMgdG8gLmdpdC9CSVNFQ1RfVEVSTVMiCiBtc2dzdHIgIuWwhuacr+ivreWGmeWFpSAuZ2l0L0JJU0VDVF9URVJNUyIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyNAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzNwogbXNnaWQgImNsZWFudXAgdGhlIGJpc2VjdGlvbiBzdGF0ZSIKIG1zZ3N0ciAi5riF6Zmk5LqM5YiG5p+l5om+54q25oCBIgogCi0jOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTI2CisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjM5CiBtc2dpZCAiY2hlY2sgZm9yIGV4cGVjdGVkIHJldnMiCiBtc2dzdHIgIuajgOafpemihOacn+eahOeJiOacrCIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEyOAorIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0MQorbXNnaWQgInJlc2V0IHRoZSBiaXNlY3Rpb24gc3RhdGUiCittc2dzdHIgIua4hemZpOS6jOWIhuafpeaJvueKtuaAgSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY0MworbXNnaWQgIndyaXRlIG91dCB0aGUgYmlzZWN0aW9uIHN0YXRlIGluIEJJU0VDVF9MT0ciCittc2dzdHIgIuWwhuS6jOWIhuafpeaJvueahOeKtuaAgeWGmeWFpSBCSVNFQ1RfTE9HIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ1Cittc2dpZCAiY2hlY2sgYW5kIHNldCB0ZXJtcyBpbiBhIGJpc2VjdGlvbiBzdGF0ZSIKK21zZ3N0ciAi5Zyo5LiA5Liq5LqM5YiG5p+l5om+54q25oCB5Lit5qOA5p+l5ZKM6K6+572u5pyv6K+tIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ3Cittc2dpZCAiY2hlY2sgd2hldGhlciBiYWQgb3IgZ29vZCB0ZXJtcyBleGlzdCIKK21zZ3N0ciAi5qOA5p+l5Z2P55qE5oiW5aW955qE5pyv6K+t5piv5ZCm5a2Y5ZyoIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQ5Cittc2dpZCAicHJpbnQgb3V0IHRoZSBiaXNlY3QgdGVybXMiCittc2dzdHIgIuaJk+WNsOS6jOWIhuafpeaJvuacr+ivrSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY1MQorbXNnaWQgInN0YXJ0IHRoZSBiaXNlY3Qgc2Vzc2lvbiIKK21zZ3N0ciAi5ZCv5Yqo5LqM5YiG5p+l5om+6L+H56iLIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUzCiBtc2dpZCAidXBkYXRlIEJJU0VDVF9IRUFEIGluc3RlYWQgb2YgY2hlY2tpbmcgb3V0IHRoZSBjdXJyZW50IGNvbW1pdCIKIG1zZ3N0ciAi5pu05pawIEJJU0VDVF9IRUFEIOiAjOmdnuajgOWHuuW9k+WJjeaPkOS6pCIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE0MworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY1NQorbXNnaWQgIm5vIGxvZyBmb3IgQklTRUNUX1dSSVRFIgorbXNnc3RyICJCSVNFQ1RfV1JJVEUg5peg5pel5b+XIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjczCiBtc2dpZCAiLS13cml0ZS10ZXJtcyByZXF1aXJlcyB0d28gYXJndW1lbnRzIgogbXNnc3RyICItLXdyaXRlLXRlcm1zIOmcgOimgeS4pOS4quWPguaVsCIKIAotIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE0NworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY3NwogbXNnaWQgIi0tYmlzZWN0LWNsZWFuLXN0YXRlIHJlcXVpcmVzIG5vIGFyZ3VtZW50cyIKLW1zZ3N0ciAiLS1iaXNlY3QtY2xlYW4tc3RhdGUg5LiN6ZyA6KaB5Y+C5pWwIgorbXNnc3RyICItLWJpc2VjdC1jbGVhbi1zdGF0ZSDkuI3luKblj4LmlbAiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2ODQKK21zZ2lkICItLWJpc2VjdC1yZXNldCByZXF1aXJlcyBlaXRoZXIgbm8gYXJndW1lbnQgb3IgYSBjb21taXQiCittc2dzdHIgIi0tYmlzZWN0LXJlc2V0IOaXoOmcgOWPguaVsOaIluiAhemcgOimgeS4gOS4quaPkOS6pCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY4OAorbXNnaWQgIi0tYmlzZWN0LXdyaXRlIHJlcXVpcmVzIGVpdGhlciA0IG9yIDUgYXJndW1lbnRzIgorbXNnc3RyICItLWJpc2VjdC13cml0ZSDpnIDopoEgNCDmiJYgNSDkuKrlj4LmlbAiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2OTQKK21zZ2lkICItLWNoZWNrLWFuZC1zZXQtdGVybXMgcmVxdWlyZXMgMyBhcmd1bWVudHMiCittc2dzdHIgIi0tY2hlY2stYW5kLXNldC10ZXJtcyDpnIDopoEgMyDkuKrlj4LmlbAiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3MDAKK21zZ2lkICItLWJpc2VjdC1uZXh0LWNoZWNrIHJlcXVpcmVzIDIgb3IgMyBhcmd1bWVudHMiCittc2dzdHIgIi0tYmlzZWN0LW5leHQtY2hlY2sg6ZyA6KaBIDIg5oiWIDMg5Liq5Y+C5pWwIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzA2Cittc2dpZCAiLS1iaXNlY3QtdGVybXMgcmVxdWlyZXMgMCBvciAxIGFyZ3VtZW50IgorbXNnc3RyICItLWJpc2VjdC10ZXJtcyDpnIDopoEgMCDmiJYgMSDkuKrlj4LmlbAiCiAKICM6IGJ1aWx0aW4vYmxhbWUuYzozMQogbXNnaWQgImdpdCBibGFtZSBbPG9wdGlvbnM+XSBbPHJldi1vcHRzPl0gWzxyZXY+XSBbLS1dIDxmaWxlPiIKQEAgLTc4MTMsMTMzICsxMDE5MiwxNDYgQEAKIG1zZ2lkICI8cmV2LW9wdHM+IGFyZSBkb2N1bWVudGVkIGluIGdpdC1yZXYtbGlzdCgxKSIKIG1zZ3N0ciAiPOeJiOacrOmAiemhuT4g55qE5paH5qGj6K6w5b2V5ZyoIGdpdC1yZXYtbGlzdCgxKSDkuK0iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo0MDYKKyM6IGJ1aWx0aW4vYmxhbWUuYzo0MDkKICMsIGMtZm9ybWF0CiBtc2dpZCAiZXhwZWN0aW5nIGEgY29sb3I6ICVzIgogbXNnc3RyICLmnJ/mnJvkuIDkuKrpopzoibLvvJolcyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjQxMworIzogYnVpbHRpbi9ibGFtZS5jOjQxNgogbXNnaWQgIm11c3QgZW5kIHdpdGggYSBjb2xvciIKIG1zZ3N0ciAi5b+F6aG75Lul5LiA5Liq6aKc6Imy57uT5bC+IgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzAwCisjOiBidWlsdGluL2JsYW1lLmM6NzI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgY29sb3IgJyVzJyBpbiBjb2xvci5ibGFtZS5yZXBlYXRlZExpbmVzIgogbXNnc3RyICLorr7nva4gY29sb3IuYmxhbWUucmVwZWF0ZWRMaW5lcyDkuK3nmoTml6DmlYjpopzoibIgJyVzJyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjcxOAorIzogYnVpbHRpbi9ibGFtZS5jOjc0NwogbXNnaWQgImludmFsaWQgdmFsdWUgZm9yIGJsYW1lLmNvbG9yaW5nIgogbXNnc3RyICLorr7nva4gYmxhbWUuY29sb3Jpbmcg5Lit55qE5peg5pWI5Y+W5YC8IgogCi0jOiBidWlsdGluL2JsYW1lLmM6NzkzCisjOiBidWlsdGluL2JsYW1lLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmaW5kIHJldmlzaW9uICVzIHRvIGlnbm9yZSIKK21zZ3N0ciAi5LiN6IO95om+5Yiw6KaB5b+955Wl55qE54mI5pysICVzIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ0CiBtc2dpZCAiU2hvdyBibGFtZSBlbnRyaWVzIGFzIHdlIGZpbmQgdGhlbSwgaW5jcmVtZW50YWxseSIKIG1zZ3N0ciAi5aKe6YeP5byP5Zyw5pi+56S65Y+R546w55qEIGJsYW1lIOadoeebriIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5NAorIzogYnVpbHRpbi9ibGFtZS5jOjg0NQogbXNnaWQgIlNob3cgYmxhbmsgU0hBLTEgZm9yIGJvdW5kYXJ5IGNvbW1pdHMgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIui+ueeVjOaPkOS6pOaYvuekuuepuueahCBTSEEtMe+8iOm7mOiupO+8muWFs+mXre+8iSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5NQorIzogYnVpbHRpbi9ibGFtZS5jOjg0NgogbXNnaWQgIkRvIG5vdCB0cmVhdCByb290IGNvbW1pdHMgYXMgYm91bmRhcmllcyAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAi5LiN5oqK5qC55o+Q5Lqk5L2c5Li66L6555WM77yI6buY6K6k77ya5YWz6Zet77yJIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk2CisjOiBidWlsdGluL2JsYW1lLmM6ODQ3CiBtc2dpZCAiU2hvdyB3b3JrIGNvc3Qgc3RhdGlzdGljcyIKIG1zZ3N0ciAi5pi+56S65ZG95Luk5raI6ICX57uf6K6hIgogCi0jOiBidWlsdGluL2JsYW1lLmM6Nzk3CisjOiBidWlsdGluL2JsYW1lLmM6ODQ4CiBtc2dpZCAiRm9yY2UgcHJvZ3Jlc3MgcmVwb3J0aW5nIgogbXNnc3RyICLlvLrliLbov5vluqbmmL7npLoiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo3OTgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDkKIG1zZ2lkICJTaG93IG91dHB1dCBzY29yZSBmb3IgYmxhbWUgZW50cmllcyIKIG1zZ3N0ciAi5pi+56S65Yik5patIGJsYW1lIOadoeebruS9jeenu+eahOW+l+WIhuiviuaWreS/oeaBryIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjc5OQorIzogYnVpbHRpbi9ibGFtZS5jOjg1MAogbXNnaWQgIlNob3cgb3JpZ2luYWwgZmlsZW5hbWUgKERlZmF1bHQ6IGF1dG8pIgogbXNnc3RyICLmmL7npLrljp/lp4vmlofku7blkI3vvIjpu5jorqTvvJroh6rliqjvvIkiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTEKIG1zZ2lkICJTaG93IG9yaWdpbmFsIGxpbmVudW1iZXIgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIuaYvuekuuWOn+Wni+eahOihjOWPt++8iOm7mOiupO+8muWFs+mXre+8iSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwMQorIzogYnVpbHRpbi9ibGFtZS5jOjg1MgogbXNnaWQgIlNob3cgaW4gYSBmb3JtYXQgZGVzaWduZWQgZm9yIG1hY2hpbmUgY29uc3VtcHRpb24iCiBtc2dzdHIgIuaYvuekuuS4uuS4gOS4qumAguWQiOacuuWZqOivu+WPlueahOagvOW8jyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwMgorIzogYnVpbHRpbi9ibGFtZS5jOjg1MwogbXNnaWQgIlNob3cgcG9yY2VsYWluIGZvcm1hdCB3aXRoIHBlci1saW5lIGNvbW1pdCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAi5Li65q+P5LiA6KGM5pi+56S65py65Zmo6YCC55So55qE5o+Q5Lqk5L+h5oGvIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODAzCisjOiBidWlsdGluL2JsYW1lLmM6ODU0CiBtc2dpZCAiVXNlIHRoZSBzYW1lIG91dHB1dCBtb2RlIGFzIGdpdC1hbm5vdGF0ZSAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAi5L2/55So5ZKMIGdpdC1hbm5vdGF0ZSDnm7jlkIznmoTovpPlh7rmqKHlvI/vvIjpu5jorqTvvJrlhbPpl63vvIkiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDQKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTUKIG1zZ2lkICJTaG93IHJhdyB0aW1lc3RhbXAgKERlZmF1bHQ6IG9mZikiCiBtc2dzdHIgIuaYvuekuuWOn+Wni+aXtumXtOaIs++8iOm7mOiupO+8muWFs+mXre+8iSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgwNQorIzogYnVpbHRpbi9ibGFtZS5jOjg1NgogbXNnaWQgIlNob3cgbG9uZyBjb21taXQgU0hBMSAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAi5pi+56S66ZW/55qEIFNIQTEg5o+Q5Lqk5Y+377yI6buY6K6k77ya5YWz6Zet77yJIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA2CisjOiBidWlsdGluL2JsYW1lLmM6ODU3CiBtc2dpZCAiU3VwcHJlc3MgYXV0aG9yIG5hbWUgYW5kIHRpbWVzdGFtcCAoRGVmYXVsdDogb2ZmKSIKIG1zZ3N0ciAi6ZqQ6JeP5L2c6ICF5ZCN5a2X5ZKM5pe26Ze05oiz77yI6buY6K6k77ya5YWz6Zet77yJIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA3CisjOiBidWlsdGluL2JsYW1lLmM6ODU4CiBtc2dpZCAiU2hvdyBhdXRob3IgZW1haWwgaW5zdGVhZCBvZiBuYW1lIChEZWZhdWx0OiBvZmYpIgogbXNnc3RyICLmmL7npLrkvZzogIXnmoTpgq7nrrHogIzkuI3mmK/lkI3lrZfvvIjpu5jorqTvvJrlhbPpl63vvIkiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MDgKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTkKIG1zZ2lkICJJZ25vcmUgd2hpdGVzcGFjZSBkaWZmZXJlbmNlcyIKIG1zZ3N0ciAi5b+955Wl56m655m95beu5byCIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODA5CisjOiBidWlsdGluL2JsYW1lLmM6ODYwIGJ1aWx0aW4vbG9nLmM6MTcwMgorbXNnaWQgInJldiIKK21zZ3N0ciAi54mI5pysIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYwCittc2dpZCAiSWdub3JlIDxyZXY+IHdoZW4gYmxhbWluZyIKK21zZ3N0ciAi5Zyo5omn6KGMIGJsYW1lIOaTjeS9nOaXtuW/veeVpSA854mI5pysPiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MQorbXNnaWQgIklnbm9yZSByZXZpc2lvbnMgZnJvbSA8ZmlsZT4iCittc2dzdHIgIuW/veeVpeadpeiHqiA85paH5Lu2PiDkuK3nmoTniYjmnKwiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjIKIG1zZ2lkICJjb2xvciByZWR1bmRhbnQgbWV0YWRhdGEgZnJvbSBwcmV2aW91cyBsaW5lIGRpZmZlcmVudGx5IgogbXNnc3RyICLkvb/nlKjpopzoibLpl7TpmpTovpPlh7rkuI7liY3kuIDooYzkuI3lkIznmoTph43lpI3lhYPkv6Hmga8iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MTAKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjMKIG1zZ2lkICJjb2xvciBsaW5lcyBieSBhZ2UiCiBtc2dzdHIgIuS+neaNruaXtumXtOedgOiJsiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgxNwotbXNnaWQgIlVzZSBhbiBleHBlcmltZW50YWwgaGV1cmlzdGljIHRvIGltcHJvdmUgZGlmZnMiCi1tc2dzdHIgIuS9v+eUqOS4gOS4quivlemqjOaAp+eahOWQr+WPkeW8j+eul+azleaUuei/m+W3ruW8guaYvuekuiIKLQotIzogYnVpbHRpbi9ibGFtZS5jOjgxOQorIzogYnVpbHRpbi9ibGFtZS5jOjg2NAogbXNnaWQgIlNwZW5kIGV4dHJhIGN5Y2xlcyB0byBmaW5kIGJldHRlciBtYXRjaCIKIG1zZ3N0ciAi6Iqx6LS56aKd5aSW55qE5b6q546v5p2l5om+5Yiw5pu05aW955qE5Yy56YWNIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODIwCisjOiBidWlsdGluL2JsYW1lLmM6ODY1CiBtc2dpZCAiVXNlIHJldmlzaW9ucyBmcm9tIDxmaWxlPiBpbnN0ZWFkIG9mIGNhbGxpbmcgZ2l0LXJldi1saXN0IgogbXNnc3RyICLkvb/nlKjmnaXoh6ogPOaWh+S7tj4g55qE5L+u6K6i6ZuG6ICM5LiN5piv6LCD55SoIGdpdC1yZXYtbGlzdCIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMQorIzogYnVpbHRpbi9ibGFtZS5jOjg2NgogbXNnaWQgIlVzZSA8ZmlsZT4ncyBjb250ZW50cyBhcyB0aGUgZmluYWwgaW1hZ2UiCiBtc2dzdHIgIuS9v+eUqCA85paH5Lu2PiDnmoTlhoXlrrnkvZzkuLrmnIDnu4jnmoTlm77niYciCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIgYnVpbHRpbi9ibGFtZS5jOjgyMworIzogYnVpbHRpbi9ibGFtZS5jOjg2NyBidWlsdGluL2JsYW1lLmM6ODY4CiBtc2dpZCAic2NvcmUiCiBtc2dzdHIgIuW+l+WIhiIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMgorIzogYnVpbHRpbi9ibGFtZS5jOjg2NwogbXNnaWQgIkZpbmQgbGluZSBjb3BpZXMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCiBtc2dzdHIgIuaJvuWIsOaWh+S7tuWGheWPiui3qOaWh+S7tueahOihjOaLt+i0nSIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyMworIzogYnVpbHRpbi9ibGFtZS5jOjg2OAogbXNnaWQgIkZpbmQgbGluZSBtb3ZlbWVudHMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCiBtc2dzdHIgIuaJvuWIsOaWh+S7tuWGheWPiui3qOaWh+S7tueahOihjOenu+WKqCIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjgyNAorIzogYnVpbHRpbi9ibGFtZS5jOjg2OQogbXNnaWQgIm4sbSIKIG1zZ3N0ciAibixtIgogCi0jOiBidWlsdGluL2JsYW1lLmM6ODI0CisjOiBidWlsdGluL2JsYW1lLmM6ODY5CiBtc2dpZCAiUHJvY2VzcyBvbmx5IGxpbmUgcmFuZ2UgbixtLCBjb3VudGluZyBmcm9tIDEiCiBtc2dzdHIgIuWPquWkhOeQhuihjOiMg+WbtOWcqCBuIOWSjCBtIOS5i+mXtOeahO+8jOS7jiAxIOW8gOWniyIKIAotIzogYnVpbHRpbi9ibGFtZS5jOjg3MworIzogYnVpbHRpbi9ibGFtZS5jOjkyMQogbXNnaWQgIi0tcHJvZ3Jlc3MgY2FuJ3QgYmUgdXNlZCB3aXRoIC0taW5jcmVtZW50YWwgb3IgcG9yY2VsYWluIGZvcm1hdHMiCiBtc2dzdHIgIi0tcHJvZ3Jlc3Mg5LiN6IO95ZKMIC0taW5jcmVtZW50YWwg5oiWIC0tcG9yY2VsYWluIOWQjOaXtuS9v+eUqCIKIApAQCAtNzk1MSwxOCArMTAzNDMsMTggQEAKICMuIHlvdXIgbGFuZ3VhZ2UgbWF5IG5lZWQgbW9yZSBvciBmZXdlciBkaXNwbGF5CiAjLiBjb2x1bW5zLgogIy4KLSM6IGJ1aWx0aW4vYmxhbWUuYzo5MjQKKyM6IGJ1aWx0aW4vYmxhbWUuYzo5NzIKIG1zZ2lkICI0IHllYXJzLCAxMSBtb250aHMgYWdvIgogbXNnc3RyICI0IOW5tCAxMSDkuKrmnIjliY0iCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzoxMDExCisjOiBidWlsdGluL2JsYW1lLmM6MTA3OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmaWxlICVzIGhhcyBvbmx5ICVsdSBsaW5lIgogbXNnaWRfcGx1cmFsICJmaWxlICVzIGhhcyBvbmx5ICVsdSBsaW5lcyIKIG1zZ3N0clswXSAi5paH5Lu2ICVzIOWPquaciSAlbHUg6KGMIgogbXNnc3RyWzFdICLmlofku7YgJXMg5Y+q5pyJICVsdSDooYwiCiAKLSM6IGJ1aWx0aW4vYmxhbWUuYzoxMDU3CisjOiBidWlsdGluL2JsYW1lLmM6MTEyNQogbXNnaWQgIkJsYW1pbmcgbGluZXMiCiBtc2dzdHIgIui/vei4quS7o+eggeihjCIKIApAQCAtNzk5NSw3ICsxMDM4Nyw3IEBACiBtc2dzdHIgImdpdCBicmFuY2ggWzzpgInpobk+XSBbLXIgfCAtYV0gWy0tZm9ybWF0XSIKIAogIyAg6K+R6ICF77ya5L+d5oyB5Y6f5o2i6KGM5qC85byP77yM5Zyo6L6T5Ye65pe2ICVzIOeahOabv+S7o+WGheWuueS8muiuqeWtl+espuS4suWPmOmVvwotIzogYnVpbHRpbi9icmFuY2guYzoxNTEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJkZWxldGluZyBicmFuY2ggJyVzJyB0aGF0IGhhcyBiZWVuIG1lcmdlZCB0b1xuIgpAQCAtODAwNSw3ICsxMDM5Nyw3IEBACiAiICAgICAgICAgJyVzJ++8jOS9huacquWQiOW5tuWIsCBIRUFE44CCIgogCiAjICDor5HogIXvvJrkv53mjIHljp/mjaLooYzmoLzlvI/vvIzlnKjovpPlh7rml7YgJXMg55qE5pu/5Luj5YaF5a655Lya6K6p5a2X56ym5Liy5Y+Y6ZW/Ci0jOiBidWlsdGluL2JyYW5jaC5jOjE1NQorIzogYnVpbHRpbi9icmFuY2guYzoxNTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm5vdCBkZWxldGluZyBicmFuY2ggJyVzJyB0aGF0IGlzIG5vdCB5ZXQgbWVyZ2VkIHRvXG4iCkBAIC04MDE0LDEyICsxMDQwNiwxMiBAQAogIuW5tuacquWIoOmZpOWIhuaUryAnJXMn77yMIOiZveeEtuWug+W3sue7j+WQiOW5tuWIsCBIRUFE77yMXG4iCiAiICAgICAgICAg54S26ICM5Y205bCa5pyq6KKr5ZCI5bm25Yiw5YiG5pSvICclcycg44CCIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjE2OQorIzogYnVpbHRpbi9icmFuY2guYzoxNzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGRuJ3QgbG9vayB1cCBjb21taXQgb2JqZWN0IGZvciAnJXMnIgogbXNnc3RyICLml6Dms5Xmn6Xor6IgJyVzJyDmjIflkJHnmoTmj5DkuqTlr7nosaEiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6MTczCisjOiBidWlsdGluL2JyYW5jaC5jOjE3NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIGJyYW5jaCAnJXMnIGlzIG5vdCBmdWxseSBtZXJnZWQuXG4iCkBAIC04MDI4LDExMiArMTA0MjAsMTIxIEBACiAi5YiG5pSvICclcycg5rKh5pyJ5a6M5YWo5ZCI5bm244CCXG4iCiAi5aaC5p6c5oKo56Gu6K6k6KaB5Yig6Zmk5a6D77yM5omn6KGMICdnaXQgYnJhbmNoIC1EICVzJ+OAgiIKIAotIzogYnVpbHRpbi9icmFuY2guYzoxODYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTg5CiBtc2dpZCAiVXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKIG1zZ3N0ciAi5pu05paw6YWN572u5paH5Lu25aSx6LSlIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjIxNworIzogYnVpbHRpbi9icmFuY2guYzoyMjAKIG1zZ2lkICJjYW5ub3QgdXNlIC1hIHdpdGggLWQiCiBtc2dzdHIgIuS4jeiDveWwhiAtYSDlkowgLWQg5ZCM5pe25L2/55SoIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjIyMworIzogYnVpbHRpbi9icmFuY2guYzoyMjYKIG1zZ2lkICJDb3VsZG4ndCBsb29rIHVwIGNvbW1pdCBvYmplY3QgZm9yIEhFQUQiCiBtc2dzdHIgIuaXoOazleafpeivoiBIRUFEIOaMh+WQkeeahOaPkOS6pOWvueixoSIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyMzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjQwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBkZWxldGUgYnJhbmNoICclcycgY2hlY2tlZCBvdXQgYXQgJyVzJyIKIG1zZ3N0ciAi5peg5rOV5Yig6Zmk5qOA5Ye65LqOICclMiRzJyDnmoTliIbmlK8gJyUxJHMn44CCIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI1MgorIzogYnVpbHRpbi9icmFuY2guYzoyNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3RlLXRyYWNraW5nIGJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCiBtc2dzdHIgIuacquiDveaJvuWIsOi/nOeoi+i3n+i4quWIhuaUryAnJXMn44CCIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI1MworIzogYnVpbHRpbi9icmFuY2guYzoyNTYKICMsIGMtZm9ybWF0CiBtc2dpZCAiYnJhbmNoICclcycgbm90IGZvdW5kLiIKIG1zZ3N0ciAi5YiG5pSvICclcycg5pyq5Y+R546w44CCIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjI2OAorIzogYnVpbHRpbi9icmFuY2guYzoyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRXJyb3IgZGVsZXRpbmcgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCAnJXMnIgogbXNnc3RyICLml6Dms5XliKDpmaTov5znqIvot5/ouKrliIbmlK8gJyVzJyIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNjkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkVycm9yIGRlbGV0aW5nIGJyYW5jaCAnJXMnIgogbXNnc3RyICLml6Dms5XliKDpmaTliIbmlK8gJyVzJyIKIAotIzogYnVpbHRpbi9icmFuY2guYzoyNzYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRlbGV0ZWQgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCAlcyAod2FzICVzKS5cbiIKIG1zZ3N0ciAi5bey5Yig6Zmk6L+c56iL6Lef6Liq5YiG5pSvICVz77yI5pu+5Li6ICVz77yJ44CCXG4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Mjc3CisjOiBidWlsdGluL2JyYW5jaC5jOjI4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWxldGVkIGJyYW5jaCAlcyAod2FzICVzKS5cbiIKIG1zZ3N0ciAi5bey5Yig6Zmk5YiG5pSvICVz77yI5pu+5Li6ICVz77yJ44CCXG4iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NDIxIGJ1aWx0aW4vdGFnLmM6NTkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDI5IGJ1aWx0aW4vdGFnLmM6NjEKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2UgZm9ybWF0IHN0cmluZyIKIG1zZ3N0ciAi5LiN6IO96Kej5p6Q5qC85byP5YyW5a2X56ym5LiyIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ1OAorIzogYnVpbHRpbi9icmFuY2guYzo0NjAKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIgorbXNnc3RyICLkuI3og73op6PmnpAgSEVBRCDmj5DkuqQiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDY2CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgKCVzKSBwb2ludHMgb3V0c2lkZSBvZiByZWZzL2hlYWRzLyIKK21zZ3N0ciAiSEVBRCAoJXMpIOaMh+WQkSByZWZzL2hlYWRzLyDkuYvlpJYiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDgxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCAlcyBpcyBiZWluZyByZWJhc2VkIGF0ICVzIgogbXNnc3RyICLliIbmlK8gJXMg5q2j6KKr5Y+Y5Z+65YiwICVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ2MgorIzogYnVpbHRpbi9icmFuY2guYzo0ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQnJhbmNoICVzIGlzIGJlaW5nIGJpc2VjdGVkIGF0ICVzIgogbXNnc3RyICLliIbmlK8gJXMg5q2j6KKr5LqM5YiG5p+l5om+5LqOICVzIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjQ3OQorIzogYnVpbHRpbi9icmFuY2guYzo1MDIKIG1zZ2lkICJjYW5ub3QgY29weSB0aGUgY3VycmVudCBicmFuY2ggd2hpbGUgbm90IG9uIGFueS4iCiBtc2dzdHIgIuaXoOazleaLt+i0neW9k+WJjeWIhuaUr+WboOS4uuS4jeWkhOS6juS7u+S9leWIhuaUr+S4iuOAgiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0ODEKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTA0CiBtc2dpZCAiY2Fubm90IHJlbmFtZSB0aGUgY3VycmVudCBicmFuY2ggd2hpbGUgbm90IG9uIGFueS4iCiBtc2dzdHIgIuaXoOazlemHjeWRveWQjeW9k+WJjeWIhuaUr+WboOS4uuS4jeWkhOS6juS7u+S9leWIhuaUr+S4iuOAgiIKIAotIzogYnVpbHRpbi9icmFuY2guYzo0OTIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTE1CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgYnJhbmNoIG5hbWU6ICclcyciCiBtc2dzdHIgIuaXoOaViOeahOWIhuaUr+WQje+8miclcyciCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTE5CisjOiBidWlsdGluL2JyYW5jaC5jOjU0MgogbXNnaWQgIkJyYW5jaCByZW5hbWUgZmFpbGVkIgogbXNnc3RyICLliIbmlK/ph43lkb3lkI3lpLHotKUiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTIxCisjOiBidWlsdGluL2JyYW5jaC5jOjU0NAogbXNnaWQgIkJyYW5jaCBjb3B5IGZhaWxlZCIKIG1zZ3N0ciAi5YiG5pSv5ou36LSd5aSx6LSlIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyNQorIzogYnVpbHRpbi9icmFuY2guYzo1NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ3JlYXRlZCBhIGNvcHkgb2YgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyIKIG1zZ3N0ciAi5bey5Li66ZSZ6K+v5ZG95ZCN55qE5YiG5pSvICclcycg5Yib5bu65LqG5LiA5Liq5Ymv5pysIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjUyOAorIzogYnVpbHRpbi9icmFuY2guYzo1NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVuYW1lZCBhIG1pc25hbWVkIGJyYW5jaCAnJXMnIGF3YXkiCiBtc2dzdHIgIuW3suWwhumUmeivr+WRveWQjeeahOWIhuaUryAnJXMnIOmHjeWRveWQjSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1MzQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJyYW5jaCByZW5hbWVkIHRvICVzLCBidXQgSEVBRCBpcyBub3QgdXBkYXRlZCEiCiBtc2dzdHIgIuWIhuaUr+mHjeWRveWQjeS4uiAlc++8jOS9hiBIRUFEIOayoeacieabtOaWsO+8gSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1NDMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTY2CiBtc2dpZCAiQnJhbmNoIGlzIHJlbmFtZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICLliIbmlK/ooqvph43lkb3lkI3vvIzkvYbmm7TmlrDphY3nva7mlofku7blpLHotKUiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTQ1CisjOiBidWlsdGluL2JyYW5jaC5jOjU2OAogbXNnaWQgIkJyYW5jaCBpcyBjb3BpZWQsIGJ1dCB1cGRhdGUgb2YgY29uZmlnLWZpbGUgZmFpbGVkIgogbXNnc3RyICLliIbmlK/lt7Lmi7fotJ3vvIzkvYbmm7TmlrDphY3nva7mlofku7blpLHotKUiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NTYxCisjOiBidWlsdGluL2JyYW5jaC5jOjU4NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUGxlYXNlIGVkaXQgdGhlIGRlc2NyaXB0aW9uIGZvciB0aGUgYnJhbmNoXG4iCkBAIC04MTQ0LDIzOSArMTA1NDUsMjgyIEBACiAiICAlc1xuIgogIuS7pSAnJWMnIOW8gOWktOeahOihjOWwhuiiq+i/h+a7pOOAglxuIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5NAorIzogYnVpbHRpbi9icmFuY2guYzo2MTgKIG1zZ2lkICJHZW5lcmljIG9wdGlvbnMiCiBtc2dzdHIgIumAmueUqOmAiemhuSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIwCiBtc2dpZCAic2hvdyBoYXNoIGFuZCBzdWJqZWN0LCBnaXZlIHR3aWNlIGZvciB1cHN0cmVhbSBicmFuY2giCiBtc2dzdHIgIuaYvuekuuWTiOW4jOWAvOWSjOS4u+mimO+8jOiLpeWPguaVsOWHuueOsOS4pOasoeWImeaYvuekuuS4iua4uOWIhuaUryIKIAotIzogYnVpbHRpbi9icmFuY2guYzo1OTcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIxCiBtc2dpZCAic3VwcHJlc3MgaW5mb3JtYXRpb25hbCBtZXNzYWdlcyIKIG1zZ3N0ciAi5LiN5pi+56S65L+h5oGvIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjU5OAorIzogYnVpbHRpbi9icmFuY2guYzo2MjIKIG1zZ2lkICJzZXQgdXAgdHJhY2tpbmcgbW9kZSAoc2VlIGdpdC1wdWxsKDEpKSIKIG1zZ3N0ciAi6K6+572u6Lef6Liq5qih5byP77yI5Y+C6KeBIGdpdC1wdWxsKDEp77yJIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMAorIzogYnVpbHRpbi9icmFuY2guYzo2MjQKIG1zZ2lkICJkbyBub3QgdXNlIgogbXNnc3RyICLkuI3opoHkvb/nlKgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjAyIGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MAorIzogYnVpbHRpbi9icmFuY2guYzo2MjYgYnVpbHRpbi9yZWJhc2UuYzo1MTMKIG1zZ2lkICJ1cHN0cmVhbSIKIG1zZ3N0ciAi5LiK5ri4IgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwMgorIzogYnVpbHRpbi9icmFuY2guYzo2MjYKIG1zZ2lkICJjaGFuZ2UgdGhlIHVwc3RyZWFtIGluZm8iCiBtc2dzdHIgIuaUueWPmOS4iua4uOS/oeaBryIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDMKLW1zZ2lkICJVbnNldCB0aGUgdXBzdHJlYW0gaW5mbyIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI3Cittc2dpZCAidW5zZXQgdGhlIHVwc3RyZWFtIGluZm8iCiBtc2dzdHIgIuWPlua2iOS4iua4uOS/oeaBr+eahOiuvue9riIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI4CiBtc2dpZCAidXNlIGNvbG9yZWQgb3V0cHV0IgogbXNnc3RyICLkvb/nlKjlvanoibLovpPlh7oiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjA1CisjOiBidWlsdGluL2JyYW5jaC5jOjYyOQogbXNnaWQgImFjdCBvbiByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMiCiBtc2dzdHIgIuS9nOeUqOS6jui/nOeoi+i3n+i4quWIhuaUryIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MDcgYnVpbHRpbi9icmFuY2guYzo2MDkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMxIGJ1aWx0aW4vYnJhbmNoLmM6NjMzCiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAi5Y+q5omT5Y2w5YyF5ZCr6K+l5o+Q5Lqk55qE5YiG5pSvIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYwOCBidWlsdGluL2JyYW5jaC5jOjYxMAorIzogYnVpbHRpbi9icmFuY2guYzo2MzIgYnVpbHRpbi9icmFuY2guYzo2MzQKIG1zZ2lkICJwcmludCBvbmx5IGJyYW5jaGVzIHRoYXQgZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgogbXNnc3RyICLlj6rmiZPljbDkuI3ljIXlkKvor6Xmj5DkuqTnmoTliIbmlK8iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjEzCisjOiBidWlsdGluL2JyYW5jaC5jOjYzNwogbXNnaWQgIlNwZWNpZmljIGdpdC1icmFuY2ggYWN0aW9uczoiCiBtc2dzdHIgIuWFt+S9k+eahCBnaXQtYnJhbmNoIOWKqOS9nO+8miIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTQKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM4CiBtc2dpZCAibGlzdCBib3RoIHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCiBtc2dzdHIgIuWIl+WHuui/nOeoi+i3n+i4quWPiuacrOWcsOWIhuaUryIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQwCiBtc2dpZCAiZGVsZXRlIGZ1bGx5IG1lcmdlZCBicmFuY2giCiBtc2dzdHIgIuWIoOmZpOWujOWFqOWQiOW5tueahOWIhuaUryIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQxCiBtc2dpZCAiZGVsZXRlIGJyYW5jaCAoZXZlbiBpZiBub3QgbWVyZ2VkKSIKIG1zZ3N0ciAi5Yig6Zmk5YiG5pSv77yI5Y2z5L2/5rKh5pyJ5ZCI5bm277yJIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYxOAorIzogYnVpbHRpbi9icmFuY2guYzo2NDIKIG1zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCBhbmQgaXRzIHJlZmxvZyIKIG1zZ3N0ciAi56e75YqoL+mHjeWRveWQjeS4gOS4quWIhuaUr++8jOS7peWPiuWug+eahOW8leeUqOaXpeW/lyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MTkKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQzCiBtc2dpZCAibW92ZS9yZW5hbWUgYSBicmFuY2gsIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAi56e75YqoL+mHjeWRveWQjeS4gOS4quWIhuaUr++8jOWNs+S9v+ebruagh+W3suWtmOWcqCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ0CiBtc2dpZCAiY29weSBhIGJyYW5jaCBhbmQgaXRzIHJlZmxvZyIKIG1zZ3N0ciAi5ou36LSd5LiA5Liq5YiG5pSv5ZKM5a6D55qE5byV55So5pel5b+XIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYyMQorIzogYnVpbHRpbi9icmFuY2guYzo2NDUKIG1zZ2lkICJjb3B5IGEgYnJhbmNoLCBldmVuIGlmIHRhcmdldCBleGlzdHMiCiBtc2dzdHIgIuaLt+i0neS4gOS4quWIhuaUr++8jOWNs+S9v+ebruagh+W3suWtmOWcqCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjIKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ2CiBtc2dpZCAibGlzdCBicmFuY2ggbmFtZXMiCiBtc2dzdHIgIuWIl+WHuuWIhuaUr+WQjSIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjMKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ3Cittc2dpZCAic2hvdyBjdXJyZW50IGJyYW5jaCBuYW1lIgorbXNnc3RyICLmmL7npLrlvZPliY3liIbmlK/lkI0iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjQ4CiBtc2dpZCAiY3JlYXRlIHRoZSBicmFuY2gncyByZWZsb2ciCiBtc2dzdHIgIuWIm+W7uuWIhuaUr+eahOW8leeUqOaXpeW/lyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUwCiBtc2dpZCAiZWRpdCB0aGUgZGVzY3JpcHRpb24gZm9yIHRoZSBicmFuY2giCiBtc2dzdHIgIuagh+iusOWIhuaUr+eahOaPj+i/sCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjYKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUxCiBtc2dpZCAiZm9yY2UgY3JlYXRpb24sIG1vdmUvcmVuYW1lLCBkZWxldGlvbiIKIG1zZ3N0ciAi5by65Yi25Yib5bu644CB56e75YqoL+mHjeWRveWQjeOAgeWIoOmZpCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUyCiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGFyZSBtZXJnZWQiCiBtc2dzdHIgIuWPquaJk+WNsOW3sue7j+WQiOW5tueahOWIhuaUryIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2MjgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUzCiBtc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGFyZSBub3QgbWVyZ2VkIgogbXNnc3RyICLlj6rmiZPljbDlsJrmnKrlkIjlubbnmoTliIbmlK8iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI5CisjOiBidWlsdGluL2JyYW5jaC5jOjY1NAogbXNnaWQgImxpc3QgYnJhbmNoZXMgaW4gY29sdW1ucyIKIG1zZ3N0ciAi5Lul5YiX55qE5pa55byP5pi+56S65YiG5pSvIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzMCBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQwIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NzAKLSM6IGJ1aWx0aW4vdGFnLmM6NDE1Ci1tc2dpZCAia2V5IgotbXNnc3RyICJrZXkiCi0KLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMxIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDEgYnVpbHRpbi9scy1yZW1vdGUuYzo3MQotIzogYnVpbHRpbi90YWcuYzo0MTYKLW1zZ2lkICJmaWVsZCBuYW1lIHRvIHNvcnQgb24iCi1tc2dzdHIgIuaOkuW6j+eahOWtl+auteWQjSIKLQotIzogYnVpbHRpbi9icmFuY2guYzo2MzMgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MyBidWlsdGluL25vdGVzLmM6NDE1Ci0jOiBidWlsdGluL25vdGVzLmM6NDE4IGJ1aWx0aW4vbm90ZXMuYzo1NzggYnVpbHRpbi9ub3Rlcy5jOjU4MQotIzogYnVpbHRpbi90YWcuYzo0MTgKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjU3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIgYnVpbHRpbi9ub3Rlcy5jOjQxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQxOCBidWlsdGluL25vdGVzLmM6NTgxIGJ1aWx0aW4vbm90ZXMuYzo1ODQKKyM6IGJ1aWx0aW4vdGFnLmM6NDMzCiBtc2dpZCAib2JqZWN0IgogbXNnc3RyICLlr7nosaEiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM0CisjOiBidWlsdGluL2JyYW5jaC5jOjY1OAogbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgb2YgdGhlIG9iamVjdCIKIG1zZ3N0ciAi5Y+q5omT5Y2w5oyH5ZCR6K+l5a+56LGh55qE5YiG5pSvIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjYzNiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ5IGJ1aWx0aW4vdGFnLmM6NDI1CisjOiBidWlsdGluL2JyYW5jaC5jOjY2MCBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ4IGJ1aWx0aW4vdGFnLmM6NDQwCiBtc2dpZCAic29ydGluZyBhbmQgZmlsdGVyaW5nIGFyZSBjYXNlIGluc2Vuc2l0aXZlIgogbXNnc3RyICLmjpLluo/lkozov4fmu6TlsZ7kuo7lpKflsI/lhpnkuI3mlY/mhJ8iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzggYnVpbHRpbi90YWcuYzo0MjMKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM5CisjOiBidWlsdGluL2JyYW5jaC5jOjY2MSBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM4IGJ1aWx0aW4vdGFnLmM6NDM4CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzozOAogbXNnaWQgImZvcm1hdCB0byB1c2UgZm9yIHRoZSBvdXRwdXQiCiBtc2dzdHIgIui+k+WHuuagvOW8jyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo2NjAgYnVpbHRpbi9jbG9uZS5jOjczOQorIzogYnVpbHRpbi9icmFuY2guYzo2ODQgYnVpbHRpbi9jbG9uZS5jOjc4NQogbXNnaWQgIkhFQUQgbm90IGZvdW5kIGJlbG93IHJlZnMvaGVhZHMhIgogbXNnc3RyICJIRUFEIOayoeacieS9jeS6jiAvcmVmcy9oZWFkcyDkuYvkuIvvvIEiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NjgzCisjOiBidWlsdGluL2JyYW5jaC5jOjcwOAogbXNnaWQgIi0tY29sdW1uIGFuZCAtLXZlcmJvc2UgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1jb2x1bW4g5ZKMIC0tdmVyYm9zZSDkuI3lhbzlrrkiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Njk4IGJ1aWx0aW4vYnJhbmNoLmM6NzQ5IGJ1aWx0aW4vYnJhbmNoLmM6NzU4CisjOiBidWlsdGluL2JyYW5jaC5jOjcyMyBidWlsdGluL2JyYW5jaC5jOjc3NyBidWlsdGluL2JyYW5jaC5jOjc4NgogbXNnaWQgImJyYW5jaCBuYW1lIHJlcXVpcmVkIgogbXNnc3RyICLlv4Xpobvmj5DkvpvliIbmlK/lkI0iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzI1CisjOiBidWlsdGluL2JyYW5jaC5jOjc1MwogbXNnaWQgIkNhbm5vdCBnaXZlIGRlc2NyaXB0aW9uIHRvIGRldGFjaGVkIEhFQUQiCiBtc2dzdHIgIuS4jeiDveWQkeWIhuemu+WktOaMh+mSiOaPkOS+m+aPj+i/sCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MzAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzU4CiBtc2dpZCAiY2Fubm90IGVkaXQgZGVzY3JpcHRpb24gb2YgbW9yZSB0aGFuIG9uZSBicmFuY2giCiBtc2dzdHIgIuS4jeiDveS4uuS4gOS4quS7peS4iueahOWIhuaUr+e8lui+keaPj+i/sCIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3MzcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIGNvbW1pdCBvbiBicmFuY2ggJyVzJyB5ZXQuIgogbXNnc3RyICLliIbmlK8gJyVzJyDlsJrml6Dmj5DkuqTjgIIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzQwCisjOiBidWlsdGluL2JyYW5jaC5jOjc2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBicmFuY2ggbmFtZWQgJyVzJy4iCiBtc2dzdHIgIuayoeacieWIhuaUryAnJXMn44CCIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc1NQorIzogYnVpbHRpbi9icmFuY2guYzo3ODMKIG1zZ2lkICJ0b28gbWFueSBicmFuY2hlcyBmb3IgYSBjb3B5IG9wZXJhdGlvbiIKIG1zZ3N0ciAi5Li65ou36LSd5pON5L2c5o+Q5L6b5LqG5aSq5aSa55qE5YiG5pSv5ZCNIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc2NAorIzogYnVpbHRpbi9icmFuY2guYzo3OTIKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgZm9yIGEgcmVuYW1lIG9wZXJhdGlvbiIKIG1zZ3N0ciAi5Li66YeN5ZG95ZCN5pON5L2c5o+Q5L6b5LqG5aSq5aSa55qE5Y+C5pWwIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc2OQorIzogYnVpbHRpbi9icmFuY2guYzo3OTcKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgdG8gc2V0IG5ldyB1cHN0cmVhbSIKIG1zZ3N0ciAi5Li66K6+572u5paw5LiK5ri45o+Q5L6b5LqG5aSq5aSa55qE5Y+C5pWwIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc3MworIzogYnVpbHRpbi9icmFuY2guYzo4MDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNvdWxkIG5vdCBzZXQgdXBzdHJlYW0gb2YgSEVBRCB0byAlcyB3aGVuIGl0IGRvZXMgbm90IHBvaW50IHRvIGFueSBicmFuY2guIgogbXNnc3RyICLml6Dms5Xorr7nva4gSEVBRCDnmoTkuIrmuLjkuLogJXPvvIzlm6DkuLogSEVBRCDmsqHmnInmjIflkJHku7vkvZXliIbmlK/jgIIiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzc2IGJ1aWx0aW4vYnJhbmNoLmM6Nzk4CisjOiBidWlsdGluL2JyYW5jaC5jOjgwNCBidWlsdGluL2JyYW5jaC5jOjgyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBzdWNoIGJyYW5jaCAnJXMnIgogbXNnc3RyICLmsqHmnInmraTliIbmlK8gJyVzJyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo3ODAKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODA4CiAjLCBjLWZvcm1hdAogbXNnaWQgImJyYW5jaCAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICLliIbmlK8gJyVzJyDkuI3lrZjlnKgiCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6NzkyCisjOiBidWlsdGluL2JyYW5jaC5jOjgyMQogbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyB0byB1bnNldCB1cHN0cmVhbSIKIG1zZ3N0ciAi5Li65Y+W5raI5LiK5ri46K6+572u5pON5L2c5o+Q5L6b5LqG5aSq5aSa55qE5Y+C5pWwIgogCi0jOiBidWlsdGluL2JyYW5jaC5jOjc5NgorIzogYnVpbHRpbi9icmFuY2guYzo4MjUKIG1zZ2lkICJjb3VsZCBub3QgdW5zZXQgdXBzdHJlYW0gb2YgSEVBRCB3aGVuIGl0IGRvZXMgbm90IHBvaW50IHRvIGFueSBicmFuY2guIgogbXNnc3RyICLml6Dms5Xlj5bmtoggSEVBRCDnmoTkuIrmuLjorr7nva7lm6DkuLrlroPmsqHmnInmjIflkJHkuIDkuKrliIbmlK8iCiAKLSM6IGJ1aWx0aW4vYnJhbmNoLmM6ODAyCisjOiBidWlsdGluL2JyYW5jaC5jOjgzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJCcmFuY2ggJyVzJyBoYXMgbm8gdXBzdHJlYW0gaW5mb3JtYXRpb24iCiBtc2dzdHIgIuWIhuaUryAnJXMnIOayoeacieS4iua4uOS/oeaBryIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MTIKLW1zZ2lkICItYSBhbmQgLXIgb3B0aW9ucyB0byAnZ2l0IGJyYW5jaCcgZG8gbm90IG1ha2Ugc2Vuc2Ugd2l0aCBhIGJyYW5jaCBuYW1lIgotbXNnc3RyICInZ2l0IGJyYW5jaCcg55qEIC1hIOWSjCAtciDpgInpobnluKbkuIDkuKrliIbmlK/lkI3lj4LmlbDmsqHmnInmhI/kuYkiCisjOiBidWlsdGluL2JyYW5jaC5jOjg0MQorbXNnaWQgIiIKKyJUaGUgLWEsIGFuZCAtciwgb3B0aW9ucyB0byAnZ2l0IGJyYW5jaCcgZG8gbm90IHRha2UgYSBicmFuY2ggbmFtZS5cbiIKKyJEaWQgeW91IG1lYW4gdG8gdXNlOiAtYXwtciAtLWxpc3QgPHBhdHRlcm4+PyIKK21zZ3N0ciAiIgorIidnaXQgYnJhbmNoJyDnmoQgLWEg5ZKMIC1yIOmAiemhueS4jeW4puS4gOS4quWIhuaUr+WQjeOAglxuIgorIuaCqOaYr+WQpuaDs+imgeS9v+eUqO+8mi1hfC1yIC0tbGlzdCA85qih5byPPu+8nyIKIAotIzogYnVpbHRpbi9icmFuY2guYzo4MTUKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODQ1CiBtc2dpZCAiIgogInRoZSAnLS1zZXQtdXBzdHJlYW0nIG9wdGlvbiBpcyBubyBsb25nZXIgc3VwcG9ydGVkLiBQbGVhc2UgdXNlICctLXRyYWNrJyBvciAiCiAiJy0tc2V0LXVwc3RyZWFtLXRvJyBpbnN0ZWFkLiIKIG1zZ3N0ciAiIgogIuS4jeWGjeaUr+aMgemAiemhuSAnLS1zZXQtdXBzdHJlYW0n44CC6K+35L2/55SoICctLXRyYWNrJyDmiJYgJy0tc2V0LXVwc3RyZWFtLXRvJ+OAgiIKIAotIzogYnVpbHRpbi9idW5kbGUuYzo0NQorIzogYnVpbHRpbi9idW5kbGUuYzoxNSBidWlsdGluL2J1bmRsZS5jOjIzCittc2dpZCAiZ2l0IGJ1bmRsZSBjcmVhdGUgWzxvcHRpb25zPl0gPGZpbGU+IDxnaXQtcmV2LWxpc3QgYXJncz4iCittc2dzdHIgImdpdCBidW5kbGUgY3JlYXRlIFs86YCJ6aG5Pl0gPOaWh+S7tj4gPGdpdC1yZXYtbGlzdCDlj4LmlbA+IgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE2IGJ1aWx0aW4vYnVuZGxlLmM6MjgKK21zZ2lkICJnaXQgYnVuZGxlIHZlcmlmeSBbPG9wdGlvbnM+XSA8ZmlsZT4iCittc2dzdHIgImdpdCBidW5kbGUgdmVyaWZ5IFs86YCJ6aG5Pl0gPOaWh+S7tj4iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTcgYnVpbHRpbi9idW5kbGUuYzozMworbXNnaWQgImdpdCBidW5kbGUgbGlzdC1oZWFkcyA8ZmlsZT4gWzxyZWZuYW1lPi4uLl0iCittc2dzdHIgImdpdCBidW5kbGUgbGlzdC1oZWFkcyA85paH5Lu2PiBbPOW8leeUqOWQjT4uLi5dIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE4IGJ1aWx0aW4vYnVuZGxlLmM6MzgKK21zZ2lkICJnaXQgYnVuZGxlIHVuYnVuZGxlIDxmaWxlPiBbPHJlZm5hbWU+Li4uXSIKK21zZ3N0ciAiZ2l0IGJ1bmRsZSB1bmJ1bmRsZSA85paH5Lu2PiBbPOW8leeUqOWQjT4uLi5dIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjY2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM3NQorbXNnaWQgImRvIG5vdCBzaG93IHByb2dyZXNzIG1ldGVyIgorbXNnc3RyICLkuI3mmL7npLrov5vluqbooagiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NjggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzc3Cittc2dpZCAic2hvdyBwcm9ncmVzcyBtZXRlciIKK21zZ3N0ciAi5pi+56S66L+b5bqm6KGoIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjcwIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM3OQorbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIgZHVyaW5nIG9iamVjdCB3cml0aW5nIHBoYXNlIgorbXNnc3RyICLlnKjlr7nosaHlhpnlhaXpmLbmrrXmmL7npLrov5vluqbooagiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6NzMgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzgyCittc2dpZCAic2ltaWxhciB0byAtLWFsbC1wcm9ncmVzcyB3aGVuIHByb2dyZXNzIG1ldGVyIGlzIHNob3duIgorbXNnc3RyICLlvZPov5vluqbooajmmL7npLrml7bnsbvkvLzkuo4gLS1hbGwtcHJvZ3Jlc3MiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6OTMKK21zZ2lkICJOZWVkIGEgcmVwb3NpdG9yeSB0byBjcmVhdGUgYSBidW5kbGUuIgorbXNnc3RyICLpnIDopoHkuIDkuKrku5PlupPmnaXliJvlu7rljIXjgIIiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTA0Cittc2dpZCAiZG8gbm90IHNob3cgYnVuZGxlIGRldGFpbHMiCittc2dzdHIgIuS4jeaYvuekuiBidW5kbGUg57uG6IqCIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjExOQogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBva2F5XG4iCiBtc2dzdHIgIiVzIOWPr+S7pVxuIgogCi0jOiBidWlsdGluL2J1bmRsZS5jOjU4Ci1tc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKLW1zZ3N0ciAi6ZyA6KaB5LiA5Liq5LuT5bqT5p2l5Yib5bu65YyF44CCIgotCi0jOiBidWlsdGluL2J1bmRsZS5jOjYyCisjOiBidWlsdGluL2J1bmRsZS5jOjE2MAogbXNnaWQgIk5lZWQgYSByZXBvc2l0b3J5IHRvIHVuYnVuZGxlLiIKIG1zZ3N0ciAi6ZyA6KaB5LiA5Liq5LuT5bqT5p2l6Kej5YyF44CCIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NTg3CisjOiBidWlsdGluL2J1bmRsZS5jOjE2OCBidWlsdGluL3JlbW90ZS5jOjE2ODYKK21zZ2lkICJiZSB2ZXJib3NlOyBtdXN0IGJlIHBsYWNlZCBiZWZvcmUgYSBzdWJjb21tYW5kIgorbXNnc3RyICLlhpfplb/ovpPlh7rvvJvlv4Xpobvnva7kuo7lrZDlkb3ku6TkuYvliY0iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTkwIGJ1aWx0aW4vcmVtb3RlLmM6MTcxNworIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHN1YmNvbW1hbmQ6ICVzIgorbXNnc3RyICLmnKrnn6XlrZDlkb3ku6TvvJolcyIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU5NQogbXNnaWQgIiIKICJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtIgogInAgfCA8dHlwZT4gfCAtLXRleHRjb252IHwgLS1maWx0ZXJzKSBbLS1wYXRoPTxwYXRoPl0gPG9iamVjdD4iCkBAIC04Mzg0LDcgKzEwODI4LDcgQEAKICJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtIgogInAgfCA857G75Z6LPiB8IC0tdGV4dGNvbnYgfCAtLWZpbHRlcnMpIFstLXBhdGg9POi3r+W+hD5dIDzlr7nosaE+IgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NTg4CisjOiBidWlsdGluL2NhdC1maWxlLmM6NTk2CiBtc2dpZCAiIgogImdpdCBjYXQtZmlsZSAoLS1iYXRjaCB8IC0tYmF0Y2gtY2hlY2spIFstLWZvbGxvdy1zeW1saW5rc10gWy0tdGV4dGNvbnYgfCAtLSIKICJmaWx0ZXJzXSIKQEAgLTgzOTIsMTMyICsxMDgzNiwxMzIgQEAKICJnaXQgY2F0LWZpbGUgKC0tYmF0Y2ggfCAtLWJhdGNoLWNoZWNrKSBbLS1mb2xsb3ctc3ltbGlua3NdIFstLXRleHRjb252IHwgLS0iCiAiZmlsdGVyc10iCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MDkKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MTcKIG1zZ2lkICJvbmx5IG9uZSBiYXRjaCBvcHRpb24gbWF5IGJlIHNwZWNpZmllZCIKIG1zZ3N0ciAi5Y+q6IO95oyH5a6a5LiA5Liq5om55aSE55CG6YCJ6aG5IgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjI3CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM1CiBtc2dpZCAiPHR5cGU+IGNhbiBiZSBvbmUgb2Y6IGJsb2IsIHRyZWUsIGNvbW1pdCwgdGFnIgogbXNnc3RyICI857G75Z6LPiDlj6/ku6XmmK/lhbbkuK3kuYvkuIDvvJpibG9i44CBdHJlZeOAgWNvbW1pdOOAgXRhZyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYyOAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNgogbXNnaWQgInNob3cgb2JqZWN0IHR5cGUiCiBtc2dzdHIgIuaYvuekuuWvueixoeexu+WeiyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYyOQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNwogbXNnaWQgInNob3cgb2JqZWN0IHNpemUiCiBtc2dzdHIgIuaYvuekuuWvueixoeWkp+WwjyIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzMQorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzOQogbXNnaWQgImV4aXQgd2l0aCB6ZXJvIHdoZW4gdGhlcmUncyBubyBlcnJvciIKIG1zZ3N0ciAi5b2T5rKh5pyJ6ZSZ6K+v5pe26YCA5Ye65bm26L+U5Zue6Zu2IgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjMyCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQwCiBtc2dpZCAicHJldHR5LXByaW50IG9iamVjdCdzIGNvbnRlbnQiCiBtc2dzdHIgIue+juinguWcsOaJk+WNsOWvueixoeeahOWGheWuuSIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYzNAorIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0MgogbXNnaWQgImZvciBibG9iIG9iamVjdHMsIHJ1biB0ZXh0Y29udiBvbiBvYmplY3QncyBjb250ZW50IgogbXNnc3RyICLlr7nkuo7mlbDmja7lr7nosaHvvIzlr7nlhbblhoXlrrnlgZrmlofmnKzovazmjaIiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzYKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDQKIG1zZ2lkICJmb3IgYmxvYiBvYmplY3RzLCBydW4gZmlsdGVycyBvbiBvYmplY3QncyBjb250ZW50IgogbXNnc3RyICLlr7nkuo7mlbDmja7lr7nosaHvvIzlr7nlhbblhoXlrrnlgZrov4fmu6QiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzcgZ2l0LXN1Ym1vZHVsZS5zaDo4NTcKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDUgZ2l0LXN1Ym1vZHVsZS5zaDoxMDAyCiBtc2dpZCAiYmxvYiIKIG1zZ3N0ciAi5pWw5o2u5a+56LGhIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjM4CisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ2CiBtc2dpZCAidXNlIGEgc3BlY2lmaWMgcGF0aCBmb3IgLS10ZXh0Y29udi8tLWZpbHRlcnMiCiBtc2dzdHIgIuWvueS6jiAtLXRleHRjb252Ly0tZmlsdGVycyDkvb/nlKjkuIDkuKrnibnlrprnmoTot6/lvoQiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDAKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDgKIG1zZ2lkICJhbGxvdyAtcyBhbmQgLXQgdG8gd29yayB3aXRoIGJyb2tlbi9jb3JydXB0IG9iamVjdHMiCiBtc2dzdHIgIuWFgeiuuCAtcyDlkowgLXQg5a+55o2f5Z2P55qE5a+56LGh55Sf5pWIIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjQxCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQ5CiBtc2dpZCAiYnVmZmVyIC0tYmF0Y2ggb3V0cHV0IgogbXNnc3RyICLnvJPlhrIgLS1iYXRjaCDnmoTovpPlh7oiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDMKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTEKIG1zZ2lkICJzaG93IGluZm8gYW5kIGNvbnRlbnQgb2Ygb2JqZWN0cyBmZWQgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgIuaYvuekuuS7juagh+WHhui+k+WFpeaPkOS+m+eahOWvueixoeeahOS/oeaBr+WSjOWGheWuuSIKIAotIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1NQogbXNnaWQgInNob3cgaW5mbyBhYm91dCBvYmplY3RzIGZlZCBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAi5pi+56S65LuO5qCH5YeG6L6T5YWl5o+Q5L6b55qE5a+56LGh55qE5L+h5oGvIgogCi0jOiBidWlsdGluL2NhdC1maWxlLmM6NjUxCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjU5CiBtc2dpZCAiZm9sbG93IGluLXRyZWUgc3ltbGlua3MgKHVzZWQgd2l0aCAtLWJhdGNoIG9yIC0tYmF0Y2gtY2hlY2spIgogbXNnc3RyICLot5/pmo/moJHlhoXnrKblj7fpk77mjqXvvIjlkowgLS1iYXRjaCDmiJYgLS1iYXRjaC1jaGVjayDlhbHnlKjvvIkiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTMKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NjEKIG1zZ2lkICJzaG93IGFsbCBvYmplY3RzIHdpdGggLS1iYXRjaCBvciAtLWJhdGNoLWNoZWNrIgogbXNnc3RyICLkvb/nlKggLS1iYXRjaCDmiJYgLS1iYXRjaC1jaGVjayDlj4LmlbDmmL7npLrmiYDmnInlr7nosaEiCiAKLSM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTUKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NjMKIG1zZ2lkICJkbyBub3Qgb3JkZXIgLS1iYXRjaC1hbGwtb2JqZWN0cyBvdXRwdXQiCiBtc2dzdHIgIuS4jeimgeWvuSAtLWJhdGNoLWFsbC1vYmplY3RzIOeahOi+k+WHuuaOkuW6jyIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTIKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjEzCiBtc2dpZCAiZ2l0IGNoZWNrLWF0dHIgWy1hIHwgLS1hbGwgfCA8YXR0cj4uLi5dIFstLV0gPHBhdGhuYW1lPi4uLiIKIG1zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgWy1hIHwgLS1hbGwgfCA85bGe5oCnPi4uLl0gWy0tXSA86Lev5b6E5ZCNPi4uLiIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MTMKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjE0CiBtc2dpZCAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSIKIG1zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPOWxnuaApz4uLi5dIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMAorIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjEKIG1zZ2lkICJyZXBvcnQgYWxsIGF0dHJpYnV0ZXMgc2V0IG9uIGZpbGUiCiBtc2dzdHIgIuaKpeWRiuiuvue9ruWcqOaWh+S7tuS4iueahOaJgOacieWxnuaApyIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjEKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIyCiBtc2dpZCAidXNlIC5naXRhdHRyaWJ1dGVzIG9ubHkgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgIuWPquS9v+eUqOe0ouW8leS4reeahCAuZ2l0YXR0cmlidXRlcyIKIAotIzogYnVpbHRpbi9jaGVjay1hdHRyLmM6MjIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoyNCBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAxCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMyBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI1IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKIG1zZ2lkICJyZWFkIGZpbGUgbmFtZXMgZnJvbSBzdGRpbiIKIG1zZ3N0ciAi5LuO5qCH5YeG6L6T5YWl6K+75Ye65paH5Lu25ZCNIgogCi0jOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyNCBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI2CisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyNSBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI3CiBtc2dpZCAidGVybWluYXRlIGlucHV0IGFuZCBvdXRwdXQgcmVjb3JkcyBieSBhIE5VTCBjaGFyYWN0ZXIiCiBtc2dzdHIgIui+k+WFpeWSjOi+k+WHuueahOiusOW9leS9v+eUqCBOVUwg5a2X56ym57uI57uTIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjIwIGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM0IGJ1aWx0aW4vZ2MuYzo1MTcKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTUKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjEgYnVpbHRpbi9jaGVja291dC5jOjE0NjQgYnVpbHRpbi9nYy5jOjUzNworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5OQogbXNnaWQgInN1cHByZXNzIHByb2dyZXNzIHJlcG9ydGluZyIKIG1zZ3N0ciAi5LiN5pi+56S66L+b5bqm5oql5ZGKIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI4CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI5CiBtc2dpZCAic2hvdyBub24tbWF0Y2hpbmcgaW5wdXQgcGF0aHMiCiBtc2dzdHIgIuaYvuekuuacquWMuemFjeeahOi+k+WFpei3r+W+hCIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzozMAorIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzozMQogbXNnaWQgImlnbm9yZSBpbmRleCB3aGVuIGNoZWNraW5nIgogbXNnc3RyICLmo4Dmn6Xml7blv73nlaXntKLlvJUiCiAKLSM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTU5CisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2MwogbXNnaWQgImNhbm5vdCBzcGVjaWZ5IHBhdGhuYW1lcyB3aXRoIC0tc3RkaW4iCiBtc2dzdHIgIuS4jeiDveWQjOaXtuaMh+Wumui3r+W+hOWPiiAtLXN0ZGluIOWPguaVsCIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjIKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY2CiBtc2dpZCAiLXogb25seSBtYWtlcyBzZW5zZSB3aXRoIC0tc3RkaW4iCiBtc2dzdHIgIi16IOmcgOimgeWSjCAtLXN0ZGluIOWPguaVsOWFseeUqOaJjeacieaEj+S5iSIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjQKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY4CiBtc2dpZCAibm8gcGF0aCBzcGVjaWZpZWQiCiBtc2dzdHIgIuacquaMh+Wumui3r+W+hCIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNjgKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTcyCiBtc2dpZCAiLS1xdWlldCBpcyBvbmx5IHZhbGlkIHdpdGggYSBzaW5nbGUgcGF0aG5hbWUiCiBtc2dzdHIgIuWPguaVsCAtLXF1aWV0IOWPquWcqOaPkOS+m+S4gOS4qui3r+W+hOWQjeaXtuacieaViCIKIAotIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzAKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTc0CiBtc2dpZCAiY2Fubm90IGhhdmUgYm90aCAtLXF1aWV0IGFuZCAtLXZlcmJvc2UiCiBtc2dzdHIgIuS4jeiDveWQjOaXtuaPkOS+myAtLXF1aWV0IOWSjCAtLXZlcmJvc2Ug5Y+C5pWwIgogCi0jOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3MworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzcKIG1zZ2lkICItLW5vbi1tYXRjaGluZyBpcyBvbmx5IHZhbGlkIHdpdGggLS12ZXJib3NlIgogbXNnc3RyICItLW5vbi1tYXRjaGluZyDpgInpobnlj6rlnKjkvb/nlKggLS12ZXJib3NlIOaXtuacieaViCIKIApAQCAtODUzOCw1NCArMTA5ODIsNTQgQEAKIG1zZ2lkICJubyBjb250YWN0cyBzcGVjaWZpZWQiCiBtc2dzdHIgIuacquaMh+WumuiBlOezu+WcsOWdgCIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjEyOAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjEzMQogbXNnaWQgImdpdCBjaGVja291dC1pbmRleCBbPG9wdGlvbnM+XSBbLS1dIFs8ZmlsZT4uLi5dIgogbXNnc3RyICJnaXQgY2hlY2tvdXQtaW5kZXggWzzpgInpobk+XSBbLS1dIFs85paH5Lu2Pi4uLl0iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNDUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNDgKIG1zZ2lkICJzdGFnZSBzaG91bGQgYmUgYmV0d2VlbiAxIGFuZCAzIG9yIGFsbCIKIG1zZ3N0ciAi57Si5byV5YC85bqU6K+l5Y+W5YC8IDEg5YiwIDMg5oiW6ICFIGFsbCIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2MQorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NAogbXNnaWQgImNoZWNrIG91dCBhbGwgZmlsZXMgaW4gdGhlIGluZGV4IgogbXNnc3RyICLmo4Dlh7rntKLlvJXljLrnmoTmiYDmnInmlofku7YiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNjUKIG1zZ2lkICJmb3JjZSBvdmVyd3JpdGUgb2YgZXhpc3RpbmcgZmlsZXMiCiBtc2dzdHIgIuW8uuWItuimhueblueOsOacieeahOaWh+S7tiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NAorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NwogbXNnaWQgIm5vIHdhcm5pbmcgZm9yIGV4aXN0aW5nIGZpbGVzIGFuZCBmaWxlcyBub3QgaW4gaW5kZXgiCiBtc2dzdHIgIuWtmOWcqOaIluS4jeWcqOe0ouW8leS4reeahOaWh+S7tumDveayoeacieitpuWRiiIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2OQogbXNnaWQgImRvbid0IGNoZWNrb3V0IG5ldyBmaWxlcyIKIG1zZ3N0ciAi5LiN5qOA5Ye65paw5paH5Lu2IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTcxCiBtc2dpZCAidXBkYXRlIHN0YXQgaW5mb3JtYXRpb24gaW4gdGhlIGluZGV4IGZpbGUiCiBtc2dzdHIgIuabtOaWsOe0ouW8leS4reaWh+S7tueahOeKtuaAgeS/oeaBryIKIAotIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3MgorIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3NQogbXNnaWQgInJlYWQgbGlzdCBvZiBwYXRocyBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAi5LuO5qCH5YeG6L6T5YWl6K+75Y+W6Lev5b6E5YiX6KGoIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc0CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc3CiBtc2dpZCAid3JpdGUgdGhlIGNvbnRlbnQgdG8gdGVtcG9yYXJ5IGZpbGVzIgogbXNnc3RyICLlsIblhoXlrrnlhpnlhaXkuLTml7bmlofku7YiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzUgYnVpbHRpbi9jb2x1bW4uYzozMQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjggYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNzEKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODUzCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjY4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc4IGJ1aWx0aW4vY29sdW1uLmM6MzEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxMSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY3MgogbXNnaWQgInN0cmluZyIKIG1zZ3N0ciAi5a2X56ym5LiyIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc2CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc5CiBtc2dpZCAid2hlbiBjcmVhdGluZyBmaWxlcywgcHJlcGVuZCA8c3RyaW5nPiIKIG1zZ3N0ciAi5Zyo5Yib5bu65paH5Lu25pe277yM5Zyo5YmN6Z2i5Yqg5LiKIDzlrZfnrKbkuLI+IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc4CisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTgxCiBtc2dpZCAiY29weSBvdXQgdGhlIGZpbGVzIGZyb20gbmFtZWQgc3RhZ2UiCiBtc2dzdHIgIuS7juaMh+WumuaaguWtmOWMuuS4reaLt+WHuuaWh+S7tiIKIApAQCAtODU5NywxMDYgKzExMDQxLDE1OSBAQAogbXNnaWQgImdpdCBjaGVja291dCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIC0tIDxmaWxlPi4uLiIKIG1zZ3N0ciAiZ2l0IGNoZWNrb3V0IFs86YCJ6aG5Pl0gWzzliIbmlK8+XSAtLSA85paH5Lu2Pi4uLiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjE0NCBidWlsdGluL2NoZWNrb3V0LmM6MTc3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MzcKK21zZ2lkICJnaXQgc3dpdGNoIFs8b3B0aW9ucz5dIFs8YnJhbmNoPl0iCittc2dzdHIgImdpdCBzd2l0Y2ggWzzpgInpobk+XSBbPOWIhuaUrz5dIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDIKK21zZ2lkICJnaXQgcmVzdG9yZSBbPG9wdGlvbnM+XSBbLS1zb3VyY2U9PGJyYW5jaD5dIDxmaWxlPi4uLiIKK21zZ3N0ciAiZ2l0IHJlc3RvcmUgWzzpgInpobk+XSBbLS1zb3VyY2U9POWIhuaUrz5dIDzmlofku7Y+Li4uIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc1IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgb3VyIHZlcnNpb24iCiBtc2dzdHIgIui3r+W+hCAnJXMnIOayoeacieaIkeS7rOeahOeJiOacrCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjE0NiBidWlsdGluL2NoZWNrb3V0LmM6MTc5CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3IGJ1aWx0aW4vY2hlY2tvdXQuYzoyMTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgdGhlaXIgdmVyc2lvbiIKIG1zZ3N0ciAi6Lev5b6EICclcycg5rKh5pyJ5LuW5Lus55qE54mI5pysIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTYyCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTkzCiAjLCBjLWZvcm1hdAogbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIGFsbCBuZWNlc3NhcnkgdmVyc2lvbnMiCiBtc2dzdHIgIui3r+W+hCAnJXMnIOayoeacieWFqOmDqOW/hemcgOeahOeJiOacrCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjIwNgorIzogYnVpbHRpbi9jaGVja291dC5jOjI0MwogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSBuZWNlc3NhcnkgdmVyc2lvbnMiCiBtc2dzdHIgIui3r+W+hCAnJXMnIOayoeacieW/hemcgOeahOeJiOacrCIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjIyNAorIzogYnVpbHRpbi9jaGVja291dC5jOjI2MQogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcyc6IGNhbm5vdCBtZXJnZSIKIG1zZ3N0ciAicGF0aCAnJXMn77ya5peg5rOV5ZCI5bm2IgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjQwCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBhZGQgbWVyZ2UgcmVzdWx0IGZvciAnJXMnIgogbXNnc3RyICLml6Dms5XkuLogJyVzJyDmt7vliqDlkIjlubbnu5PmnpwiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNjIgYnVpbHRpbi9jaGVja291dC5jOjI2NSBidWlsdGluL2NoZWNrb3V0LmM6MjY4Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjcxCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY3JlYXRlZCAlZCBtZXJnZSBjb25mbGljdCIKK21zZ2lkX3BsdXJhbCAiUmVjcmVhdGVkICVkIG1lcmdlIGNvbmZsaWN0cyIKK21zZ3N0clswXSAi6YeN5paw5Yib5bu65LqGICVkIOS4quWQiOW5tuWGsueqgSIKK21zZ3N0clsxXSAi6YeN5paw5Yib5bu65LqGICVkIOS4quWQiOW5tuWGsueqgSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4MgorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSAlcyIKK21zZ2lkX3BsdXJhbCAiVXBkYXRlZCAlZCBwYXRocyBmcm9tICVzIgorbXNnc3RyWzBdICLku44gJTIkcyDmm7TmlrDkuoYgJTEkZCDkuKrot6/lvoQiCittc2dzdHJbMV0gIuS7jiAlMiRzIOabtOaWsOS6hiAlMSRkIOS4qui3r+W+hCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM4OQorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkICVkIHBhdGggZnJvbSB0aGUgaW5kZXgiCittc2dpZF9wbHVyYWwgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSB0aGUgaW5kZXgiCittc2dzdHJbMF0gIuS7jue0ouW8leWMuuabtOaWsOS6hiAlZCDkuKrot6/lvoQiCittc2dzdHJbMV0gIuS7jue0ouW8leWMuuabtOaWsOS6hiAlZCDkuKrot6/lvoQiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTIgYnVpbHRpbi9jaGVja291dC5jOjQxNSBidWlsdGluL2NoZWNrb3V0LmM6NDE4CisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCB1cGRhdGluZyBwYXRocyIKIG1zZ3N0ciAiJyVzJyDkuI3og73lnKjmm7TmlrDot6/lvoTml7bkvb/nlKgiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzQgYnVpbHRpbi9jaGVja291dC5jOjI3NworIzogYnVpbHRpbi9jaGVja291dC5jOjQyNSBidWlsdGluL2NoZWNrb3V0LmM6NDI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKIG1zZ3N0ciAiJyVzJyDkuI3og73lkowgJXMg5ZCM5pe25L2/55SoIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MjgwCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCB1cGRhdGUgcGF0aHMgYW5kIHN3aXRjaCB0byBicmFuY2ggJyVzJyBhdCB0aGUgc2FtZSB0aW1lLiIKIG1zZ3N0ciAi5LiN6IO95ZCM5pe25pu05paw6Lev5b6E5bm25YiH5o2i5Yiw5YiG5pSvJyVzJ+OAgiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjM0OSBidWlsdGluL2NoZWNrb3V0LmM6MzU2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5laXRoZXIgJyVzJyBvciAnJXMnIGlzIHNwZWNpZmllZCIKK21zZ3N0ciAiJyVzJyDmiJYgJyVzJyDpg73msqHmnInmjIflrpoiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBtdXN0IGJlIHVzZWQgd2hlbiAnJXMnIGlzIG5vdCBzcGVjaWZpZWQiCittc2dzdHIgIuacquaMh+WumiAnJTIkcycg5pe277yM5b+F6aG75L2/55SoICclMSRzJyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQ0NSBidWlsdGluL2NoZWNrb3V0LmM6NDUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgb3IgJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgorbXNnc3RyICInJXMnIOaIliAnJXMnIOS4jeiDveWSjCAlcyDkuIDotbfkvb/nlKgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo1MDkgYnVpbHRpbi9jaGVja291dC5jOjUxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJwYXRoICclcycgaXMgdW5tZXJnZWQiCiBtc2dzdHIgIui3r+W+hCAnJXMnIOacquWQiOW5tiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjYwOAorIzogYnVpbHRpbi9jaGVja291dC5jOjY4NCBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjEwNgogbXNnaWQgInlvdSBuZWVkIHRvIHJlc29sdmUgeW91ciBjdXJyZW50IGluZGV4IGZpcnN0IgogbXNnc3RyICLmgqjpnIDopoHlhYjop6PlhrPlvZPliY3ntKLlvJXnmoTlhrLnqoEiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3NDUKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNhbm5vdCBjb250aW51ZSB3aXRoIHN0YWdlZCBjaGFuZ2VzIGluIHRoZSBmb2xsb3dpbmcgZmlsZXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyLkuI3og73nu6fnu63vvIzkuIvliJfmlofku7bmnInmmoLlrZjnmoTkv67mlLnvvJpcbiIKKyIlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjgzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW4gbm90IGRvIHJlZmxvZyBmb3IgJyVzJzogJXNcbiIKIG1zZ3N0ciAi5LiN6IO95a+5ICclcycg5omn6KGMIHJlZmxvZyDmk43kvZzvvJolc1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6Nzg2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODc5CiBtc2dpZCAiSEVBRCBpcyBub3cgYXQiCiBtc2dzdHIgIkhFQUQg55uu5YmN5L2N5LqOIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6NzkwIGJ1aWx0aW4vY2xvbmUuYzo2OTIKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODMgYnVpbHRpbi9jbG9uZS5jOjcxNwogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgSEVBRCIKIG1zZ3N0ciAi5LiN6IO95pu05pawIEhFQUQiCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo3OTQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODcKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVzZXQgYnJhbmNoICclcydcbiIKIG1zZ3N0ciAi6YeN572u5YiG5pSvICclcydcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjc5NworIzogYnVpbHRpbi9jaGVja291dC5jOjg5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJBbHJlYWR5IG9uICclcydcbiIKIG1zZ3N0ciAi5bey57uP5L2N5LqOICclcydcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjgwMQorIzogYnVpbHRpbi9jaGVja291dC5jOjg5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJTd2l0Y2hlZCB0byBhbmQgcmVzZXQgYnJhbmNoICclcydcbiIKIG1zZ3N0ciAi5YiH5o2i5bm26YeN572u5YiG5pSvICclcydcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjgwMyBidWlsdGluL2NoZWNrb3V0LmM6MTE2NgorIzogYnVpbHRpbi9jaGVja291dC5jOjg5NiBidWlsdGluL2NoZWNrb3V0LmM6MTMyMAogIywgYy1mb3JtYXQKIG1zZ2lkICJTd2l0Y2hlZCB0byBhIG5ldyBicmFuY2ggJyVzJ1xuIgogbXNnc3RyICLliIfmjaLliLDkuIDkuKrmlrDliIbmlK8gJyVzJ1xuIgogCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6ODA1CisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlN3aXRjaGVkIHRvIGJyYW5jaCAnJXMnXG4iCiBtc2dzdHIgIuWIh+aNouWIsOWIhuaUryAnJXMnXG4iCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogYnVpbHRpbi9jaGVja291dC5jOjg1NgorIzogYnVpbHRpbi9jaGVja291dC5jOjk0OQogIywgYy1mb3JtYXQKIG1zZ2lkICIgLi4uIGFuZCAlZCBtb3JlLlxuIgogbXNnc3RyICIgLi4uIOWPiuWFtuWugyAlZCDkuKrjgIJcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjg2MgorIzogYnVpbHRpbi9jaGVja291dC5jOjk1NQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiV2FybmluZzogeW91IGFyZSBsZWF2aW5nICVkIGNvbW1pdCBiZWhpbmQsIG5vdCBjb25uZWN0ZWQgdG9cbiIKQEAgLTg3MTcsNyArMTEyMTQsNyBAQAogIlxuIgogIiVzXG4iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4ODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIklmIHlvdSB3YW50IHRvIGtlZXAgaXQgYnkgY3JlYXRpbmcgYSBuZXcgYnJhbmNoLCB0aGlzIG1heSBiZSBhIGdvb2QgdGltZVxuIgpAQCAtODc0NCwxNzMgKzExMjQxLDI5IEBACiAiIGdpdCBicmFuY2ggPOaWsOWIhuaUr+WQjT4gJXNcbiIKICJcbiIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjkxMworIzogYnVpbHRpbi9jaGVja291dC5jOjEwMDkKIG1zZ2lkICJpbnRlcm5hbCBlcnJvciBpbiByZXZpc2lvbiB3YWxrIgogbXNnc3RyICLlnKjniYjmnKzpgY3ljobml7bpgYfliLDlhoXpg6jplJnor68iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5MTcKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDEzCiBtc2dpZCAiUHJldmlvdXMgSEVBRCBwb3NpdGlvbiB3YXMiCiBtc2dzdHIgIuS5i+WJjeeahCBIRUFEIOS9jee9ruaYryIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjk0NSBidWlsdGluL2NoZWNrb3V0LmM6MTE2MQorIzogYnVpbHRpbi9jaGVja291dC5jOjEwNTMgYnVpbHRpbi9jaGVja291dC5jOjEzMTUKIG1zZ2lkICJZb3UgYXJlIG9uIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIgogbXNnc3RyICLmgqjkvY3kuo7kuIDkuKrlsJrmnKrliJ3lp4vljJbnmoTliIbmlK8iCiAKLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDY2CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTEyOAogIywgYy1mb3JtYXQKLW1zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQsICVkIGdpdmVuLiIKLW1zZ3N0ciAi5bqU5Y+q5pyJ5LiA5Liq5byV55So77yM5Y2057uZ5Ye65LqGICVkIOS4qiIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExMDcgYnVpbHRpbi93b3JrdHJlZS5jOjI4OSBidWlsdGluL3dvcmt0cmVlLmM6NDQ0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKLW1zZ3N0ciAi5peg5pWI5byV55So77yaJXMiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTM2Ci0jLCBjLWZvcm1hdAotbXNnaWQgInJlZmVyZW5jZSBpcyBub3QgYSB0cmVlOiAlcyIKLW1zZ3N0ciAi5byV55So5LiN5piv5LiA5Liq5qCR77yaJXMiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTc1Ci1tc2dpZCAicGF0aHMgY2Fubm90IGJlIHVzZWQgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMiCi1tc2dzdHIgIui3r+W+hOS4jeiDveWSjOWIh+aNouWIhuaUr+WQjOaXtuS9v+eUqCIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjExNzggYnVpbHRpbi9jaGVja291dC5jOjExODIKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKLW1zZ3N0ciAiJyVzJyDkuI3og73lkozliIfmjaLliIbmlK/lkIzml7bkvb/nlKgiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTg2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTg5IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTk0Ci0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTE5NwotIywgYy1mb3JtYXQKLW1zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJyVzJyIKLW1zZ3N0ciAiJyVzJyDkuI3og73lkowgJyVzJyDlkIzml7bkvb/nlKgiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjAyCi0jLCBjLWZvcm1hdAotbXNnaWQgIkNhbm5vdCBzd2l0Y2ggYnJhbmNoIHRvIGEgbm9uLWNvbW1pdCAnJXMnIgotbXNnc3RyICLkuI3og73liIfmjaLliIbmlK/liLDkuIDkuKrpnZ7mj5DkuqQgJyVzJyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMzUgYnVpbHRpbi9jaGVja291dC5jOjEyMzcgYnVpbHRpbi9jbG9uZS5jOjExOQotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjkgYnVpbHRpbi9yZW1vdGUuYzoxNzEgYnVpbHRpbi93b3JrdHJlZS5jOjQ4OAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MAotbXNnaWQgImJyYW5jaCIKLW1zZ3N0ciAi5YiG5pSvIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTIzNgotbXNnaWQgImNyZWF0ZSBhbmQgY2hlY2tvdXQgYSBuZXcgYnJhbmNoIgotbXNnc3RyICLliJvlu7rlubbmo4Dlh7rkuIDkuKrmlrDnmoTliIbmlK8iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjM4Ci1tc2dpZCAiY3JlYXRlL3Jlc2V0IGFuZCBjaGVja291dCBhIGJyYW5jaCIKLW1zZ3N0ciAi5Yib5bu6L+mHjee9ruW5tuajgOWHuuS4gOS4quWIhuaUryIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyMzkKLW1zZ2lkICJjcmVhdGUgcmVmbG9nIGZvciBuZXcgYnJhbmNoIgotbXNnc3RyICLkuLrmlrDnmoTliIbmlK/liJvlu7rlvJXnlKjml6Xlv5ciCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQwIGJ1aWx0aW4vd29ya3RyZWUuYzo0OTIKLW1zZ2lkICJkZXRhY2ggSEVBRCBhdCBuYW1lZCBjb21taXQiCi1tc2dzdHIgIkhFQUQg5LuO5oyH5a6a55qE5o+Q5Lqk5YiG56a7IgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MQotbXNnaWQgInNldCB1cHN0cmVhbSBpbmZvIGZvciBuZXcgYnJhbmNoIgotbXNnc3RyICLkuLrmlrDnmoTliIbmlK/orr7nva7kuIrmuLjkv6Hmga8iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjQzCi1tc2dpZCAibmV3LWJyYW5jaCIKLW1zZ3N0ciAi5paw5YiG5pSvIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0MwotbXNnaWQgIm5ldyB1bnBhcmVudGVkIGJyYW5jaCIKLW1zZ3N0ciAi5paw55qE5rKh5pyJ54i25o+Q5Lqk55qE5YiG5pSvIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0NQotbXNnaWQgImNoZWNrb3V0IG91ciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKLW1zZ3N0ciAi5a+55bCa5pyq5ZCI5bm255qE5paH5Lu25qOA5Ye65oiR5Lus55qE54mI5pysIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI0OAotbXNnaWQgImNoZWNrb3V0IHRoZWlyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgotbXNnc3RyICLlr7nlsJrmnKrlkIjlubbnmoTmlofku7bmo4Dlh7rku5bku6znmoTniYjmnKwiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjUwCi1tc2dpZCAiZm9yY2UgY2hlY2tvdXQgKHRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucykiCi1tc2dzdHIgIuW8uuWItuajgOWHuu+8iOS4ouW8g+acrOWcsOS/ruaUue+8iSIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTIKLW1zZ2lkICJwZXJmb3JtIGEgMy13YXkgbWVyZ2Ugd2l0aCB0aGUgbmV3IGJyYW5jaCIKLW1zZ3N0ciAi5ZKM5paw55qE5YiG5pSv5omn6KGM5LiJ5pa55ZCI5bm2IgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI1NCBidWlsdGluL21lcmdlLmM6Mjc1Ci1tc2dpZCAidXBkYXRlIGlnbm9yZWQgZmlsZXMgKGRlZmF1bHQpIgotbXNnc3RyICLmm7TmlrDlv73nlaXnmoTmlofku7bvvIjpu5jorqTvvIkiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjU2IGJ1aWx0aW4vbG9nLmM6MTU3MyBwYXJzZS1vcHRpb25zLmg6Mjc0Ci1tc2dpZCAic3R5bGUiCi1tc2dzdHIgIumjjuagvCIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEyNTcKLW1zZ2lkICJjb25mbGljdCBzdHlsZSAobWVyZ2Ugb3IgZGlmZjMpIgotbXNnc3RyICLlhrLnqoHovpPlh7rpo47moLzvvIhtZXJnZSDmiJYgZGlmZjPvvIkiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjYwCi1tc2dpZCAiZG8gbm90IGxpbWl0IHBhdGhzcGVjcyB0byBzcGFyc2UgZW50cmllcyBvbmx5IgotbXNnc3RyICLlr7not6/lvoTkuI3lgZrnqIDnlo/mo4Dlh7rnmoTpmZDliLYiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjYyCi1tc2dpZCAic2Vjb25kIGd1ZXNzICdnaXQgY2hlY2tvdXQgPG5vLXN1Y2gtYnJhbmNoPiciCi1tc2dzdHIgIuS6jOasoeeMnOa1iydnaXQgY2hlY2tvdXQgPOaXoOatpOWIhuaUrz4nIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI2NAotbXNnaWQgImRvIG5vdCBjaGVjayBpZiBhbm90aGVyIHdvcmt0cmVlIGlzIGhvbGRpbmcgdGhlIGdpdmVuIHJlZiIKLW1zZ3N0ciAi5LiN5qOA5p+l5oyH5a6a55qE5byV55So5piv5ZCm6KKr5YW25LuW5bel5L2c5Yy65omA5Y2g55SoIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI2OCBidWlsdGluL2Nsb25lLmM6ODYgYnVpbHRpbi9mZXRjaC5jOjE0MQotIzogYnVpbHRpbi9tZXJnZS5jOjI3MiBidWlsdGluL3B1bGwuYzoxMjkgYnVpbHRpbi9wdXNoLmM6NTcyCi0jOiBidWlsdGluL3NlbmQtcGFjay5jOjE3NAotbXNnaWQgImZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKLW1zZ3N0ciAi5by65Yi25pi+56S66L+b5bqm5oql5ZGKIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTI5OAotbXNnaWQgIi1iLCAtQiBhbmQgLS1vcnBoYW4gYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKLW1zZ3N0ciAiLWLjgIEtQiDlkowgLS1vcnBoYW4g5piv5LqS5pal55qEIgotCi0jOiBidWlsdGluL2NoZWNrb3V0LmM6MTMxNQotbXNnaWQgIi0tdHJhY2sgbmVlZHMgYSBicmFuY2ggbmFtZSIKLW1zZ3N0ciAiLS10cmFjayDpnIDopoHkuIDkuKrliIbmlK/lkI0iCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzIwCi1tc2dpZCAibWlzc2luZyBicmFuY2ggbmFtZTsgdHJ5IC1iIgotbXNnc3RyICLnvLrlsJHliIbmlK/lkI3vvIzlsJ3or5UgLWIiCi0KLSM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzU3Ci1tc2dpZCAiaW52YWxpZCBwYXRoIHNwZWNpZmljYXRpb24iCi1tc2dzdHIgIuaXoOaViOeahOi3r+W+hOinhOagvCIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiJyVzJyBpcyBub3QgYSBjb21taXQgYW5kIGEgYnJhbmNoICclcycgY2Fubm90IGJlIGNyZWF0ZWQgZnJvbSBpdCIKLW1zZ3N0ciAiJyVzJyDkuI3mmK/kuIDkuKrmj5DkuqTvvIzkuI3og73ln7rkuo7lroPliJvlu7rliIbmlK8gJyVzJyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCAnJXMnIgotbXNnc3RyICJnaXQgY2hlY2tvdXTvvJotLWRldGFjaCDkuI3og73mjqXmlLbot6/lvoTlj4LmlbAgJyVzJyIKLQotIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzIKIG1zZ2lkICIiCi0iZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgYW5kIC0tbWVyZ2UgYXJlIGluY29tcGF0aWJsZSB3aGVuXG4iCi0iY2hlY2tpbmcgb3V0IG9mIHRoZSBpbmRleC4iCisiJyVzJyBjb3VsZCBiZSBib3RoIGEgbG9jYWwgZmlsZSBhbmQgYSB0cmFja2luZyBicmFuY2guXG4iCisiUGxlYXNlIHVzZSAtLSAoYW5kIG9wdGlvbmFsbHkgLS1uby1ndWVzcykgdG8gZGlzYW1iaWd1YXRlIgogbXNnc3RyICIiCi0iZ2l0IGNoZWNrb3V077ya5Zyo5LuO57Si5byV5qOA5Ye65pe277yMLS1vdXJzLy0tdGhlaXJz44CBLS1mb3JjZSDlkowgLS1tZXJnZSDkuI3lhbzlrrnjgIIiCisiJyVzJyDml6Llj6/ku6XmmK/kuIDkuKrmnKzlnLDmlofku7bvvIzkuZ/lj6/ku6XmmK/kuIDkuKrot5/ouKrliIbmlK/jgIJcbiIKKyLor7fkvb/nlKggLS3vvIjlkozlj6/pgInnmoQgLS1uby1ndWVzc++8ieadpea2iOmZpOatp+S5iSIKIAotIzogYnVpbHRpbi9jaGVja291dC5jOjEzOTIKLSMsIGMtZm9ybWF0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTEzNQogbXNnaWQgIiIKLSInJXMnIG1hdGNoZWQgbW9yZSB0aGFuIG9uZSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoLlxuIgotIldlIGZvdW5kICVkIHJlbW90ZXMgd2l0aCBhIHJlZmVyZW5jZSB0aGF0IG1hdGNoZWQuIFNvIHdlIGZlbGwgYmFja1xuIgotIm9uIHRyeWluZyB0byByZXNvbHZlIHRoZSBhcmd1bWVudCBhcyBhIHBhdGgsIGJ1dCBmYWlsZWQgdGhlcmUgdG9vIVxuIgotIlxuIgogIklmIHlvdSBtZWFudCB0byBjaGVjayBvdXQgYSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoIG9uLCBlLmcuICdvcmlnaW4nLFxuIgogInlvdSBjYW4gZG8gc28gYnkgZnVsbHkgcXVhbGlmeWluZyB0aGUgbmFtZSB3aXRoIHRoZSAtLXRyYWNrIG9wdGlvbjpcbiIKICJcbiIKQEAgLTg5MjAsNTAgKzExMjczLDM0MyBAQAogIm9uZSByZW1vdGUsIGUuZy4gdGhlICdvcmlnaW4nIHJlbW90ZSwgY29uc2lkZXIgc2V0dGluZ1xuIgogImNoZWNrb3V0LmRlZmF1bHRSZW1vdGU9b3JpZ2luIGluIHlvdXIgY29uZmlnLiIKIG1zZ3N0ciAiIgotIiclcycg5Yy56YWN5LqG5LiA5Liq5Lul5LiK55qE6L+c56iL6Lef6Liq5YiG5pSv44CCXG4iCi0i5oiR5Lus5Y+R546wICVkIOS4qui/nOeoi+S7k+W6k+WFt+acieWQjOWQjeWIhuaUr+OAguaJgOS7peaIkeS7rOi9rOiAjOWwneivleWwhui/meS4quWPguaVsOino+aekOS4ulxuIgotIui3r+W+hO+8jOS9huaYr+S5n+Wksei0peS6hu+8gVxuIgorIuWmguaenOaCqOaDs+imgeajgOWHuuS4gOS4qui/nOeoi+i3n+i4quWIhuaUr++8jOS+i+WmguWcqCAnb3JpZ2luJyDkuIrnmoTvvIzmgqjlj6/ku6Xkvb/nlKjliIbmlK9cbiIKKyLlhajlkI3lkowgLS10cmFjayDpgInpobnvvJpcbiIKICJcbiIKLSLlpoLmnpzmgqjmg7PopoHmo4Dlh7rkuIDkuKrov5znqIvot5/ouKrliIbmlK/vvIzkvovlpoLlnKjov5znqIvku5PlupMgJ29yaWdpbicg5LiK55qE77yM5oKo5Y+v5LulXG4iCi0i5L2/55So5YiG5pSv5YWo5ZCN5ZKMIC0tdHJhY2sg6YCJ6aG577yaXG4iCisiICAgIGdpdCBjaGVja291dCAtLXRyYWNrIG9yaWdpbi885ZCN56ewPlxuIgogIlxuIgotIiAgICBnaXQgY2hlY2tvdXQgLS10cmFjayBvcmlnaW4vPG5hbWU+XG4iCi0iXG4iCi0i5aaC5p6c5oKo5oC75piv5Zac5qyi5L2/55So5qih57OK55qE566A55+t5YiG5pSv5ZCNIDxuYW1lPu+8jOiAjOS4jeWWnOasouWmgiAnb3JpZ2luJyDnmoTov5znqItcbiIKLSLku5PlupPlkI3vvIzlj6/ku6XlnKjphY3nva7kuK3orr7nva4gY2hlY2tvdXQuZGVmYXVsdFJlbW90ZT1vcmlnaW7jgIIiCisi5aaC5p6c5oKo5oC75piv5Zac5qyi5L2/55So5qih57OK55qE566A55+t5YiG5pSv5ZCNIDzlkI3np7A+77yM6ICM5LiN5Zac5qyi5aaCICdvcmlnaW4nIOeahOi/nOeoi1xuIgorIuWQjeensO+8jOWPr+S7peWcqOmFjee9ruS4reiuvue9riBjaGVja291dC5kZWZhdWx0UmVtb3RlPW9yaWdpbuOAgiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjI3CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTE0NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG1hdGNoZWQgbXVsdGlwbGUgKCVkKSByZW1vdGUgdHJhY2tpbmcgYnJhbmNoZXMiCittc2dzdHIgIiclcycg5Yy56YWN5aSa5Liq77yIJWQg5Liq77yJ6L+c56iL6Lef6Liq5YiG5pSvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTIxMQorbXNnaWQgIm9ubHkgb25lIHJlZmVyZW5jZSBleHBlY3RlZCIKK21zZ3N0ciAi5Y+q5pyf5pyb5LiA5Liq5byV55SoIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJvbmx5IG9uZSByZWZlcmVuY2UgZXhwZWN0ZWQsICVkIGdpdmVuLiIKK21zZ3N0ciAi5bqU5Y+q5pyJ5LiA5Liq5byV55So77yM5Y2057uZ5Ye65LqGICVkIOS4qiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyNzQgYnVpbHRpbi93b3JrdHJlZS5jOjI4MyBidWlsdGluL3dvcmt0cmVlLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmZXJlbmNlOiAlcyIKK21zZ3N0ciAi5peg5pWI5byV55So77yaJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjg3IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZmVyZW5jZSBpcyBub3QgYSB0cmVlOiAlcyIKK21zZ3N0ciAi5byV55So5LiN5piv5LiA5Liq5qCR77yaJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM0CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgdGFnICclcyciCittc2dzdHIgIuacn+acm+S4gOS4quWIhuaUr++8jOW+l+WIsOagh+etviAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTMzNgorIywgYy1mb3JtYXQKK21zZ2lkICJhIGJyYW5jaCBpcyBleHBlY3RlZCwgZ290IHJlbW90ZSBicmFuY2ggJyVzJyIKK21zZ3N0ciAi5pyf5pyb5LiA5Liq5YiG5pSv77yM5b6X5Yiw6L+c56iL5YiG5pSvICclcyciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM3IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgJyVzJyIKK21zZ3N0ciAi5pyf5pyb5LiA5Liq5YiG5pSv77yM5b6X5YiwICclcyciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzQwCisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgY29tbWl0ICclcyciCittc2dzdHIgIuacn+acm+S4gOS4quWIhuaUr++8jOW+l+WIsOaPkOS6pCAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM1NgorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSBtZXJnaW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgbWVyZ2UgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisi5LiN6IO95Zyo5ZCI5bm25pe25YiH5o2i5YiG5pSvXG4iCisi6ICD6JmR5L2/55SoIFwiZ2l0IG1lcmdlIC0tcXVpdFwiIOaIliBcImdpdCB3b3JrdHJlZSBhZGRcIuOAgiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjAKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggaW4gdGhlIG1pZGRsZSBvZiBhbiBhbSBzZXNzaW9uXG4iCisiQ29uc2lkZXIgXCJnaXQgYW0gLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisi5LiN6IO95Zyo5LiA5LiqIGFtIOS8muivneacn+mXtOWIh+aNouWIhuaUr1xuIgorIuiAg+iZkeS9v+eUqCBcImdpdCBhbSAtLXF1aXRcIiDmiJYgXCJnaXQgd29ya3RyZWUgYWRkXCLjgIIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY0Cittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIHJlYmFzaW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgcmViYXNlIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorIuS4jeiDveWcqOWPmOWfuuaXtuWIh+aNouWIhuaUr1xuIgorIuiAg+iZkeS9v+eUqCBcImdpdCByZWJhc2UgLS1xdWl0XCIg5oiWIFwiZ2l0IHdvcmt0cmVlIGFkZFwi44CCIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2OAorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCB3aGlsZSBjaGVycnktcGlja2luZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IGNoZXJyeS1waWNrIC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorIuS4jeiDveWcqOaLo+mAieaXtuWIh+aNouWIhuaUr1xuIgorIuiAg+iZkeS9v+eUqCBcImdpdCBjaGVycnktcGljayAtLXF1aXRcIiDmiJYgXCJnaXQgd29ya3RyZWUgYWRkXCLjgIIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzcyCittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIHJldmVydGluZ1xuIgorIkNvbnNpZGVyIFwiZ2l0IHJldmVydCAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyLkuI3og73lnKjov5jljp/ml7bliIfmjaLliIbmlK9cbiIKKyLogIPomZHkvb/nlKggXCJnaXQgcmV2ZXJ0IC0tcXVpdFwiIOaIliBcImdpdCB3b3JrdHJlZSBhZGRcIuOAgiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzYKK21zZ2lkICJ5b3UgYXJlIHN3aXRjaGluZyBicmFuY2ggd2hpbGUgYmlzZWN0aW5nIgorbXNnc3RyICLmgqjlnKjmiafooYzkuozliIbmn6Xmib7ml7bliIfmjaLliIbmlK8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzgzCittc2dpZCAicGF0aHMgY2Fubm90IGJlIHVzZWQgd2l0aCBzd2l0Y2hpbmcgYnJhbmNoZXMiCittc2dzdHIgIui3r+W+hOS4jeiDveWSjOWIh+aNouWIhuaUr+WQjOaXtuS9v+eUqCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzODYgYnVpbHRpbi9jaGVja291dC5jOjEzOTAgYnVpbHRpbi9jaGVja291dC5jOjEzOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKK21zZ3N0ciAiJyVzJyDkuI3og73lkozliIfmjaLliIbmlK/lkIzml7bkvb/nlKgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzk4IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDAxIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDA0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQwOSBidWlsdGluL2NoZWNrb3V0LmM6MTQxNAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggJyVzJyIKK21zZ3N0ciAiJyVzJyDkuI3og73lkowgJyVzJyDlkIzml7bkvb/nlKgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDExCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IHRha2UgPHN0YXJ0LXBvaW50PiIKK21zZ3N0ciAiJyVzJyDkuI3luKYgPOi1t+Wni+eCuT4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDE5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBzd2l0Y2ggYnJhbmNoIHRvIGEgbm9uLWNvbW1pdCAnJXMnIgorbXNnc3RyICLkuI3og73liIfmjaLliIbmlK/liLDkuIDkuKrpnZ7mj5DkuqQgJyVzJyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MjYKK21zZ2lkICJtaXNzaW5nIGJyYW5jaCBvciBjb21taXQgYXJndW1lbnQiCittc2dzdHIgIue8uuWwkeWIhuaUr+aIluaPkOS6pOWPguaVsCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NjggYnVpbHRpbi9jbG9uZS5jOjkxIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzIKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM1IGJ1aWx0aW4vZmV0Y2guYzoxNjcgYnVpbHRpbi9tZXJnZS5jOjI4NgorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjcgYnVpbHRpbi9wdWxsLmM6MTE4IGJ1aWx0aW4vcHVzaC5jOjU2MworIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzQKK21zZ2lkICJmb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCittc2dzdHIgIuW8uuWItuaYvuekuui/m+W6puaKpeWRiiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NjkKK21zZ2lkICJwZXJmb3JtIGEgMy13YXkgbWVyZ2Ugd2l0aCB0aGUgbmV3IGJyYW5jaCIKK21zZ3N0ciAi5ZKM5paw55qE5YiG5pSv5omn6KGM5LiJ5pa55ZCI5bm2IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ3MCBidWlsdGluL2xvZy5jOjE2OTAgcGFyc2Utb3B0aW9ucy5oOjMyMgorbXNnaWQgInN0eWxlIgorbXNnc3RyICLpo47moLwiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDcxCittc2dpZCAiY29uZmxpY3Qgc3R5bGUgKG1lcmdlIG9yIGRpZmYzKSIKK21zZ3N0ciAi5Yay56qB6L6T5Ye66aOO5qC877yIbWVyZ2Ug5oiWIGRpZmYz77yJIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4MyBidWlsdGluL3dvcmt0cmVlLmM6NDk2Cittc2dpZCAiZGV0YWNoIEhFQUQgYXQgbmFtZWQgY29tbWl0IgorbXNnc3RyICJIRUFEIOS7juaMh+WumueahOaPkOS6pOWIhuemuyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODQKK21zZ2lkICJzZXQgdXBzdHJlYW0gaW5mbyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAi5Li65paw55qE5YiG5pSv6K6+572u5LiK5ri45L+h5oGvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4NgorbXNnaWQgImZvcmNlIGNoZWNrb3V0ICh0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMpIgorbXNnc3RyICLlvLrliLbmo4Dlh7rvvIjkuKLlvIPmnKzlnLDkv67mlLnvvIkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg4Cittc2dpZCAibmV3LWJyYW5jaCIKK21zZ3N0ciAi5paw5YiG5pSvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4OAorbXNnaWQgIm5ldyB1bnBhcmVudGVkIGJyYW5jaCIKK21zZ3N0ciAi5paw55qE5rKh5pyJ54i25o+Q5Lqk55qE5YiG5pSvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ5MCBidWlsdGluL21lcmdlLmM6Mjg5Cittc2dpZCAidXBkYXRlIGlnbm9yZWQgZmlsZXMgKGRlZmF1bHQpIgorbXNnc3RyICLmm7TmlrDlv73nlaXnmoTmlofku7bvvIjpu5jorqTvvIkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDkzCittc2dpZCAiZG8gbm90IGNoZWNrIGlmIGFub3RoZXIgd29ya3RyZWUgaXMgaG9sZGluZyB0aGUgZ2l2ZW4gcmVmIgorbXNnc3RyICLkuI3mo4Dmn6XmjIflrprnmoTlvJXnlKjmmK/lkKbooqvlhbbku5blt6XkvZzljLrmiYDljaDnlKgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTA2Cittc2dpZCAiY2hlY2tvdXQgb3VyIHZlcnNpb24gZm9yIHVubWVyZ2VkIGZpbGVzIgorbXNnc3RyICLlr7nlsJrmnKrlkIjlubbnmoTmlofku7bmo4Dlh7rmiJHku6znmoTniYjmnKwiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNTA5Cittc2dpZCAiY2hlY2tvdXQgdGhlaXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCittc2dzdHIgIuWvueWwmuacquWQiOW5tueahOaWh+S7tuajgOWHuuS7luS7rOeahOeJiOacrCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MTMKK21zZ2lkICJkbyBub3QgbGltaXQgcGF0aHNwZWNzIHRvIHNwYXJzZSBlbnRyaWVzIG9ubHkiCittc2dzdHIgIuWvuei3r+W+hOS4jeWBmueogOeWj+ajgOWHuueahOmZkOWItiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1NjUKK21zZ2lkICItYiwgLUIgYW5kIC0tb3JwaGFuIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIi1i44CBLUIg5ZKMIC0tb3JwaGFuIOaYr+S6kuaWpeeahCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1NjgKK21zZ2lkICItcCBhbmQgLS1vdmVybGF5IGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIi1wIOWSjCAtLW92ZXJsYXkg5LqS5palIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTYwNQorbXNnaWQgIi0tdHJhY2sgbmVlZHMgYSBicmFuY2ggbmFtZSIKK21zZ3N0ciAiLS10cmFjayDpnIDopoHkuIDkuKrliIbmlK/lkI0iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjEwCittc2dpZCAibWlzc2luZyBicmFuY2ggbmFtZTsgdHJ5IC1iIgorbXNnc3RyICLnvLrlsJHliIbmlK/lkI3vvIzlsJ3or5UgLWIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjQyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZXNvbHZlICVzIgorbXNnc3RyICLml6Dms5Xop6PmnpAgJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjU4Cittc2dpZCAiaW52YWxpZCBwYXRoIHNwZWNpZmljYXRpb24iCittc2dzdHIgIuaXoOaViOeahOi3r+W+hOinhOagvCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBjb21taXQgYW5kIGEgYnJhbmNoICclcycgY2Fubm90IGJlIGNyZWF0ZWQgZnJvbSBpdCIKK21zZ3N0ciAiJyVzJyDkuI3mmK/kuIDkuKrmj5DkuqTvvIzkuI3og73ln7rkuo7lroPliJvlu7rliIbmlK8gJyVzJyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNoZWNrb3V0OiAtLWRldGFjaCBkb2VzIG5vdCB0YWtlIGEgcGF0aCBhcmd1bWVudCAnJXMnIgorbXNnc3RyICJnaXQgY2hlY2tvdXTvvJotLWRldGFjaCDkuI3og73mjqXmlLbot6/lvoTlj4LmlbAgJyVzJyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NzgKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWRldGFjaCIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUg5LiOIC0tZGV0YWNoIOS4jeWFvOWuuSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2ODEgYnVpbHRpbi9yZXNldC5jOjMyNCBidWlsdGluL3N0YXNoLmM6MTUwNgorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tcGF0Y2giCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIOS4jiAtLXBhdGNoIOS4jeWFvOWuuSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2OTIKK21zZ2lkICIiCisiZ2l0IGNoZWNrb3V0OiAtLW91cnMvLS10aGVpcnMsIC0tZm9yY2UgYW5kIC0tbWVyZ2UgYXJlIGluY29tcGF0aWJsZSB3aGVuXG4iCisiY2hlY2tpbmcgb3V0IG9mIHRoZSBpbmRleC4iCittc2dzdHIgIiIKKyJnaXQgY2hlY2tvdXTvvJrlnKjku47ntKLlvJXmo4Dlh7rml7bvvIwtLW91cnMvLS10aGVpcnPjgIEtLWZvcmNlIOWSjCAtLW1lcmdlIOS4jeWFvOWuueOAgiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2OTcKK21zZ2lkICJ5b3UgbXVzdCBzcGVjaWZ5IHBhdGgocykgdG8gcmVzdG9yZSIKK21zZ3N0ciAi5oKo5b+F6aG75oyH5a6a5LiA5Liq6KaB5oGi5aSN55qE6Lev5b6EIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyMyBidWlsdGluL2NoZWNrb3V0LmM6MTcyNSBidWlsdGluL2NoZWNrb3V0LmM6MTc3NAorIzogYnVpbHRpbi9jaGVja291dC5jOjE3NzYgYnVpbHRpbi9jbG9uZS5jOjEyMSBidWlsdGluL3JlbW90ZS5jOjE3MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNzIgYnVpbHRpbi93b3JrdHJlZS5jOjQ5MiBidWlsdGluL3dvcmt0cmVlLmM6NDk0Cittc2dpZCAiYnJhbmNoIgorbXNnc3RyICLliIbmlK8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI0Cittc2dpZCAiY3JlYXRlIGFuZCBjaGVja291dCBhIG5ldyBicmFuY2giCittc2dzdHIgIuWIm+W7uuW5tuajgOWHuuS4gOS4quaWsOeahOWIhuaUryIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjYKK21zZ2lkICJjcmVhdGUvcmVzZXQgYW5kIGNoZWNrb3V0IGEgYnJhbmNoIgorbXNnc3RyICLliJvlu7ov6YeN572u5bm25qOA5Ye65LiA5Liq5YiG5pSvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyNworbXNnaWQgImNyZWF0ZSByZWZsb2cgZm9yIG5ldyBicmFuY2giCittc2dzdHIgIuS4uuaWsOeahOWIhuaUr+WIm+W7uuW8leeUqOaXpeW/lyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjkKK21zZ2lkICJzZWNvbmQgZ3Vlc3MgJ2dpdCBjaGVja291dCA8bm8tc3VjaC1icmFuY2g+JyAoZGVmYXVsdCkiCittc2dzdHIgIuS6jOasoeeMnOa1iyAnZ2l0IGNoZWNrb3V0IDzml6DmraTliIbmlK8+J++8iOm7mOiupO+8iSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MzAKK21zZ2lkICJ1c2Ugb3ZlcmxheSBtb2RlIChkZWZhdWx0KSIKK21zZ3N0ciAi5L2/55So5Y+g5Yqg5qih5byP77yI6buY6K6k77yJIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3NQorbXNnaWQgImNyZWF0ZSBhbmQgc3dpdGNoIHRvIGEgbmV3IGJyYW5jaCIKK21zZ3N0ciAi5Yib5bu65bm25YiH5o2i5LiA5Liq5paw5YiG5pSvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3NworbXNnaWQgImNyZWF0ZS9yZXNldCBhbmQgc3dpdGNoIHRvIGEgYnJhbmNoIgorbXNnc3RyICLliJvlu7ov6YeN572u5bm25YiH5o2i5LiA5Liq5YiG5pSvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3OQorbXNnaWQgInNlY29uZCBndWVzcyAnZ2l0IHN3aXRjaCA8bm8tc3VjaC1icmFuY2g+JyIKK21zZ3N0ciAi5LqM5qyh54yc5rWLICdnaXQgc3dpdGNoIDzml6DmraTliIbmlK8+JyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3ODEKK21zZ2lkICJ0aHJvdyBhd2F5IGxvY2FsIG1vZGlmaWNhdGlvbnMiCittc2dzdHIgIuS4ouW8g+acrOWcsOS/ruaUuSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTMKK21zZ2lkICJ3aGljaCB0cmVlLWlzaCB0byBjaGVja291dCBmcm9tIgorbXNnc3RyICLopoHmo4Dlh7rlk6rkuIDkuKrmoJEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODE1Cittc2dpZCAicmVzdG9yZSB0aGUgaW5kZXgiCittc2dzdHIgIuaBouWkjee0ouW8lSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTcKK21zZ2lkICJyZXN0b3JlIHRoZSB3b3JraW5nIHRyZWUgKGRlZmF1bHQpIgorbXNnc3RyICLmgaLlpI3lt6XkvZzljLrvvIjpu5jorqTvvIkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxODE5Cittc2dpZCAiaWdub3JlIHVubWVyZ2VkIGVudHJpZXMiCittc2dzdHIgIuW/veeVpeacquWQiOW5tuadoeebriIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MjAKK21zZ2lkICJ1c2Ugb3ZlcmxheSBtb2RlIgorbXNnc3RyICLkvb/nlKjlj6DliqDmqKHlvI8iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzoyOAogbXNnaWQgIiIKICJnaXQgY2xlYW4gWy1kXSBbLWZdIFstaV0gWy1uXSBbLXFdIFstZSA8cGF0dGVybj5dIFsteCB8IC1YXSBbLS1dIDxwYXRocz4uLi4iCiBtc2dzdHIgIiIKICJnaXQgY2xlYW4gWy1kXSBbLWZdIFstaV0gWy1uXSBbLXFdIFstZSA85qih5byPPl0gWy14IHwgLVhdIFstLV0gPOi3r+W+hD4uLi4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMQorIzogYnVpbHRpbi9jbGVhbi5jOjMyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nICVzXG4iCiBtc2dzdHIgIuato+WIoOmZpCAlc1xuIgogCi0jOiBidWlsdGluL2NsZWFuLmM6MzIKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMwogIywgYy1mb3JtYXQKIG1zZ2lkICJXb3VsZCByZW1vdmUgJXNcbiIKIG1zZ3N0ciAi5bCG5Yig6ZmkICVzXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozMworIzogYnVpbHRpbi9jbGVhbi5jOjM0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwaW5nIHJlcG9zaXRvcnkgJXNcbiIKIG1zZ3N0ciAi5b+955Wl5LuT5bqTICVzXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzozNAorIzogYnVpbHRpbi9jbGVhbi5jOjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIldvdWxkIHNraXAgcmVwb3NpdG9yeSAlc1xuIgogbXNnc3RyICLlsIblv73nlaXku5PlupMgJXNcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjM1CisjOiBidWlsdGluL2NsZWFuLmM6MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAlcyIKIG1zZ3N0ciAi5Yig6ZmkICVzIOWksei0pSIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjI5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3OQorIzogYnVpbHRpbi9jbGVhbi5jOjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBsc3RhdCAlc1xuIgorbXNnc3RyICLkuI3og73lr7kgJXMg6LCD55SoIGxzdGF0XG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozMDEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1OTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlByb21wdCBoZWxwOlxuIgpAQCAtODk3Niw3ICsxMTYyMiw3IEBACiAiZm9vICAgICAgICAtIOmAmui/h+WUr+S4gOWJjee8gOmAieaLqeS4gOS4qumAiemhuVxuIgogIiAgICAgICAgICAgLSDvvIjnqbrvvInku4DkuYjkuZ/kuI3pgInmi6lcbiIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjMwMiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU4OAorIzogYnVpbHRpbi9jbGVhbi5jOjMwNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYwNAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiUHJvbXB0IGhlbHA6XG4iCkBAIC04OTk3LDM4ICsxMTY0MywzMyBAQAogIiogICAgICAgICAgLSDpgInmi6nmiYDmnInpgInpoblcbiIKICIgICAgICAgICAgIC0g77yI56m677yJ57uT5p2f6YCJ5oupXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo1MTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo1NTQKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTU5CisjOiBidWlsdGluL2NsZWFuLmM6NTIxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTcwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3NQogIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0CiBtc2dpZCAiSHVoICglcyk/XG4iCiBtc2dzdHIgIuWXr++8iCVz77yJ77yfXG4iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo2NjAKKyM6IGJ1aWx0aW4vY2xlYW4uYzo2NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW5wdXQgaWdub3JlIHBhdHRlcm5zPj4gIgogbXNnc3RyICLovpPlhaXmqKHniYjku6XmjpLpmaTmnaHnm64+PiAiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo2OTcKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiV0FSTklORzogQ2Fubm90IGZpbmQgaXRlbXMgbWF0Y2hlZCBieTogJXMiCiBtc2dzdHIgIuitpuWRiu+8muaXoOazleaJvuWIsOWSjCAlcyDljLnphY3nmoTmnaHnm64iCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo3MTgKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3MjEKIG1zZ2lkICJTZWxlY3QgaXRlbXMgdG8gZGVsZXRlIgogbXNnc3RyICLpgInmi6nopoHliKDpmaTnmoTmnaHnm64iCiAKICMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8ga2VlcCBbeS9OXSBhcyBpcwotIzogYnVpbHRpbi9jbGVhbi5jOjc1OQorIzogYnVpbHRpbi9jbGVhbi5jOjc2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJSZW1vdmUgJXMgW3kvTl0/ICIKIG1zZ3N0ciAi5Yig6ZmkICVzIFt5L05d77yfIgogCi0jOiBidWlsdGluL2NsZWFuLmM6Nzg0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcxNwotIywgYy1mb3JtYXQKLW1zZ2lkICJCeWUuXG4iCi1tc2dzdHIgIuWGjeingeOAglxuIgotCi0jOiBidWlsdGluL2NsZWFuLmM6NzkyCisjOiBidWlsdGluL2NsZWFuLmM6Nzk1CiBtc2dpZCAiIgogImNsZWFuICAgICAgICAgICAgICAgLSBzdGFydCBjbGVhbmluZ1xuIgogImZpbHRlciBieSBwYXR0ZXJuICAgLSBleGNsdWRlIGl0ZW1zIGZyb20gZGVsZXRpb25cbiIKQEAgLTkwNDYsMjE3ICsxMTY4NywyMjggQEAKICJoZWxwICAgICAgICAgICAgICAgIC0g5pi+56S65pys5biu5YqpXG4iCiAiPyAgICAgICAgICAgICAgICAgICAtIOaYvuekuuWmguS9leWcqOaPkOekuuespuS4i+mAieaLqeeahOW4ruWKqSIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjgxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTMKLW1zZ2lkICIqKiogQ29tbWFuZHMgKioqIgotbXNnc3RyICIqKiog5ZG95LukICoqKiIKLQotIzogYnVpbHRpbi9jbGVhbi5jOjgyMCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTAKLW1zZ2lkICJXaGF0IG5vdyIKLW1zZ3N0ciAi6K+36YCJ5oupIgotCi0jOiBidWlsdGluL2NsZWFuLmM6ODI4CisjOiBidWlsdGluL2NsZWFuLmM6ODMxCiBtc2dpZCAiV291bGQgcmVtb3ZlIHRoZSBmb2xsb3dpbmcgaXRlbToiCiBtc2dpZF9wbHVyYWwgIldvdWxkIHJlbW92ZSB0aGUgZm9sbG93aW5nIGl0ZW1zOiIKIG1zZ3N0clswXSAi5bCG5Yig6Zmk5aaC5LiL5p2h55uu77yaIgogbXNnc3RyWzFdICLlsIbliKDpmaTlpoLkuIvmnaHnm67vvJoiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo4NDQKKyM6IGJ1aWx0aW4vY2xlYW4uYzo4NDcKIG1zZ2lkICJObyBtb3JlIGZpbGVzIHRvIGNsZWFuLCBleGl0aW5nLiIKIG1zZ3N0ciAi5rKh5pyJ6KaB5riF55CG55qE5paH5Lu277yM6YCA5Ye644CCIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTA2CisjOiBidWlsdGluL2NsZWFuLmM6OTA5CiBtc2dpZCAiZG8gbm90IHByaW50IG5hbWVzIG9mIGZpbGVzIHJlbW92ZWQiCiBtc2dzdHIgIuS4jeaJk+WNsOWIoOmZpOaWh+S7tueahOWQjeensCIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkwOAorIzogYnVpbHRpbi9jbGVhbi5jOjkxMQogbXNnaWQgImZvcmNlIgogbXNnc3RyICLlvLrliLYiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MDkKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTIKIG1zZ2lkICJpbnRlcmFjdGl2ZSBjbGVhbmluZyIKIG1zZ3N0ciAi5Lqk5LqS5byP5riF6ZmkIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTExCisjOiBidWlsdGluL2NsZWFuLmM6OTE0CiBtc2dpZCAicmVtb3ZlIHdob2xlIGRpcmVjdG9yaWVzIgogbXNnc3RyICLliKDpmaTmlbTkuKrnm67lvZUiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5MTIgYnVpbHRpbi9kZXNjcmliZS5jOjU0NSBidWlsdGluL2Rlc2NyaWJlLmM6NTQ3Ci0jOiBidWlsdGluL2dyZXAuYzo4ODYgYnVpbHRpbi9sb2cuYzoxNjYgYnVpbHRpbi9sb2cuYzoxNjgKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTYgYnVpbHRpbi9uYW1lLXJldi5jOjQxNSBidWlsdGluL25hbWUtcmV2LmM6NDE3Ci0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTc4CisjOiBidWlsdGluL2NsZWFuLmM6OTE1IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjIgYnVpbHRpbi9kZXNjcmliZS5jOjU2NAorIzogYnVpbHRpbi9ncmVwLmM6ODg5IGJ1aWx0aW4vbG9nLmM6MTc3IGJ1aWx0aW4vbG9nLmM6MTc5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU3IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjYgYnVpbHRpbi9uYW1lLXJldi5jOjUyOAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OQogbXNnaWQgInBhdHRlcm4iCiBtc2dzdHIgIuaooeW8jyIKIAotIzogYnVpbHRpbi9jbGVhbi5jOjkxMworIzogYnVpbHRpbi9jbGVhbi5jOjkxNgogbXNnaWQgImFkZCA8cGF0dGVybj4gdG8gaWdub3JlIHJ1bGVzIgogbXNnc3RyICLmt7vliqAgPOaooeW8jz4g5Yiw5b+955Wl6KeE5YiZIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTE0CisjOiBidWlsdGluL2NsZWFuLmM6OTE3CiBtc2dpZCAicmVtb3ZlIGlnbm9yZWQgZmlsZXMsIHRvbyIKIG1zZ3N0ciAi5Lmf5Yig6Zmk5b+955Wl55qE5paH5Lu2IgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTE2CisjOiBidWlsdGluL2NsZWFuLmM6OTE5CiBtc2dpZCAicmVtb3ZlIG9ubHkgaWdub3JlZCBmaWxlcyIKIG1zZ3N0ciAi5Y+q5Yig6Zmk5b+955Wl55qE5paH5Lu2IgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTM0CisjOiBidWlsdGluL2NsZWFuLmM6OTM3CiBtc2dpZCAiLXggYW5kIC1YIGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIgogbXNnc3RyICIteCDlkowgLVgg5LiN6IO95ZCM5pe25L2/55SoIgogCi0jOiBidWlsdGluL2NsZWFuLmM6OTM4CisjOiBidWlsdGluL2NsZWFuLmM6OTQxCiBtc2dpZCAiIgogImNsZWFuLnJlcXVpcmVGb3JjZSBzZXQgdG8gdHJ1ZSBhbmQgbmVpdGhlciAtaSwgLW4sIG5vciAtZiBnaXZlbjsgcmVmdXNpbmcgdG8gIgogImNsZWFuIgogbXNnc3RyICIiCiAiY2xlYW4ucmVxdWlyZUZvcmNlIOiuvue9ruS4uiB0cnVlIOS4lOacquaPkOS+myAtaeOAgS1uIOaIliAtZiDpgInpobnvvIzmi5Lnu53miafooYzmuIXnkIbliqjkvZwiCiAKLSM6IGJ1aWx0aW4vY2xlYW4uYzo5NDEKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5NDQKIG1zZ2lkICIiCiAiY2xlYW4ucmVxdWlyZUZvcmNlIGRlZmF1bHRzIHRvIHRydWUgYW5kIG5laXRoZXIgLWksIC1uLCBub3IgLWYgZ2l2ZW47ICIKICJyZWZ1c2luZyB0byBjbGVhbiIKIG1zZ3N0ciAiIgogImNsZWFuLnJlcXVpcmVGb3JjZSDpu5jorqTkuLogdHJ1ZSDkuJTmnKrmj5DkvpsgLWnjgIEtbiDmiJYgLWYg6YCJ6aG577yM5ouS57ud5omn6KGM5riF55CG5Yqo5L2cIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDMKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NQogbXNnaWQgImdpdCBjbG9uZSBbPG9wdGlvbnM+XSBbLS1dIDxyZXBvPiBbPGRpcj5dIgogbXNnc3RyICJnaXQgY2xvbmUgWzzpgInpobk+XSBbLS1dIDzku5PlupM+IFs86Lev5b6EPl0iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4OAorIzogYnVpbHRpbi9jbG9uZS5jOjkzCiBtc2dpZCAiZG9uJ3QgY3JlYXRlIGEgY2hlY2tvdXQiCiBtc2dzdHIgIuS4jeWIm+W7uuS4gOS4quajgOWHuiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjg5IGJ1aWx0aW4vY2xvbmUuYzo5MSBidWlsdGluL2luaXQtZGIuYzo0ODEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NCBidWlsdGluL2Nsb25lLmM6OTYgYnVpbHRpbi9pbml0LWRiLmM6NDg5CiBtc2dpZCAiY3JlYXRlIGEgYmFyZSByZXBvc2l0b3J5IgogbXNnc3RyICLliJvlu7rkuIDkuKrnuq/ku5PlupMiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MworIzogYnVpbHRpbi9jbG9uZS5jOjk4CiBtc2dpZCAiY3JlYXRlIGEgbWlycm9yIHJlcG9zaXRvcnkgKGltcGxpZXMgYmFyZSkiCiBtc2dzdHIgIuWIm+W7uuS4gOS4qumVnOWDj+S7k+W6k++8iOS5n+aYr+e6r+S7k+W6k++8iSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk1CisjOiBidWlsdGluL2Nsb25lLmM6MTAwCiBtc2dpZCAidG8gY2xvbmUgZnJvbSBhIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgIuS7juacrOWcsOS7k+W6k+WFi+mahiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk3CisjOiBidWlsdGluL2Nsb25lLmM6MTAyCiBtc2dpZCAiZG9uJ3QgdXNlIGxvY2FsIGhhcmRsaW5rcywgYWx3YXlzIGNvcHkiCiBtc2dzdHIgIuS4jeS9v+eUqOacrOWcsOehrOmTvuaOpe+8jOWni+e7iOWkjeWItiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk5CisjOiBidWlsdGluL2Nsb25lLmM6MTA0CiBtc2dpZCAic2V0dXAgYXMgc2hhcmVkIHJlcG9zaXRvcnkiCiBtc2dzdHIgIuiuvue9ruS4uuWFseS6q+S7k+W6kyIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwMSBidWlsdGluL2Nsb25lLmM6MTA1CisjOiBidWlsdGluL2Nsb25lLmM6MTA3CiBtc2dpZCAicGF0aHNwZWMiCiBtc2dzdHIgIui3r+W+hOinhOagvCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwMSBidWlsdGluL2Nsb25lLmM6MTA1CisjOiBidWlsdGluL2Nsb25lLmM6MTA3CiBtc2dpZCAiaW5pdGlhbGl6ZSBzdWJtb2R1bGVzIGluIHRoZSBjbG9uZSIKIG1zZ3N0ciAi5Zyo5YWL6ZqG5pe25Yid5aeL5YyW5a2Q5qih57uEIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA4CisjOiBidWlsdGluL2Nsb25lLmM6MTEwCiBtc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgY2xvbmVkIGluIHBhcmFsbGVsIgogbXNnc3RyICLlubblj5HlhYvpmobnmoTlrZDmqKHnu4TnmoTmlbDph48iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDkgYnVpbHRpbi9pbml0LWRiLmM6NDc4CisjOiBidWlsdGluL2Nsb25lLmM6MTExIGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NgogbXNnaWQgInRlbXBsYXRlLWRpcmVjdG9yeSIKIG1zZ3N0ciAi5qih5p2/55uu5b2VIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTEwIGJ1aWx0aW4vaW5pdC1kYi5jOjQ3OQorIzogYnVpbHRpbi9jbG9uZS5jOjExMiBidWlsdGluL2luaXQtZGIuYzo0ODcKIG1zZ2lkICJkaXJlY3RvcnkgZnJvbSB3aGljaCB0ZW1wbGF0ZXMgd2lsbCBiZSB1c2VkIgogbXNnc3RyICLmqKHmnb/nm67lvZXlsIbooqvkvb/nlKgiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTIgYnVpbHRpbi9jbG9uZS5jOjExNCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM3NQotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NTYKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTQgYnVpbHRpbi9jbG9uZS5jOjExNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTIKIG1zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi5Y+C6ICD5LuT5bqTIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE2IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc3Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg1OAorIzogYnVpbHRpbi9jbG9uZS5jOjExOCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTQKIG1zZ2lkICJ1c2UgLS1yZWZlcmVuY2Ugb25seSB3aGlsZSBjbG9uaW5nIgogbXNnc3RyICLku4XlnKjlhYvpmobml7blj4LogIMgLS1yZWZlcmVuY2Ug5oyH5ZCR55qE5pys5Zyw5LuT5bqTIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE3IGJ1aWx0aW4vY29sdW1uLmM6MjcgYnVpbHRpbi9tZXJnZS1maWxlLmM6NDYKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMwMSBidWlsdGluL3JlcGFjay5jOjMyOQorIzogYnVpbHRpbi9jbG9uZS5jOjExOSBidWlsdGluL2NvbHVtbi5jOjI3IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjQ2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDEgYnVpbHRpbi9yZXBhY2suYzozMjcKIG1zZ2lkICJuYW1lIgogbXNnc3RyICLlkI3np7AiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjAKIG1zZ2lkICJ1c2UgPG5hbWU+IGluc3RlYWQgb2YgJ29yaWdpbicgdG8gdHJhY2sgdXBzdHJlYW0iCiBtc2dzdHIgIuS9v+eUqCA85ZCN56ewPiDogIzkuI3mmK8gJ29yaWdpbicg5Y676Lef6Liq5LiK5ri4IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTIwCisjOiBidWlsdGluL2Nsb25lLmM6MTIyCiBtc2dpZCAiY2hlY2tvdXQgPGJyYW5jaD4gaW5zdGVhZCBvZiB0aGUgcmVtb3RlJ3MgSEVBRCIKIG1zZ3N0ciAi5qOA5Ye6IDzliIbmlK8+IOiAjOS4jeaYr+i/nOeoiyBIRUFEIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTIyCisjOiBidWlsdGluL2Nsb25lLmM6MTI0CiBtc2dpZCAicGF0aCB0byBnaXQtdXBsb2FkLXBhY2sgb24gdGhlIHJlbW90ZSIKIG1zZ3N0ciAi6L+c56iLIGdpdC11cGxvYWQtcGFjayDot6/lvoQiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMjMgYnVpbHRpbi9mZXRjaC5jOjE0MiBidWlsdGluL2dyZXAuYzo4MjUKLSM6IGJ1aWx0aW4vcHVsbC5jOjIxNworIzogYnVpbHRpbi9jbG9uZS5jOjEyNSBidWlsdGluL2ZldGNoLmM6MTY4IGJ1aWx0aW4vZ3JlcC5jOjgyOAorIzogYnVpbHRpbi9wdWxsLmM6MjA3CiBtc2dpZCAiZGVwdGgiCiBtc2dzdHIgIua3seW6piIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyNAorIzogYnVpbHRpbi9jbG9uZS5jOjEyNgogbXNnaWQgImNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgb2YgdGhhdCBkZXB0aCIKIG1zZ3N0ciAi5Yib5bu65LiA5Liq5oyH5a6a5rex5bqm55qE5rWF5YWL6ZqGIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI1IGJ1aWx0aW4vZmV0Y2guYzoxNDQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkyCisjOiBidWlsdGluL2Nsb25lLmM6MTI3IGJ1aWx0aW4vZmV0Y2guYzoxNzAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDMwCiBtc2dpZCAidGltZSIKIG1zZ3N0ciAi5pe26Ze0IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTI2CisjOiBidWlsdGluL2Nsb25lLmM6MTI4CiBtc2dpZCAiY3JlYXRlIGEgc2hhbGxvdyBjbG9uZSBzaW5jZSBhIHNwZWNpZmljIHRpbWUiCiBtc2dzdHIgIuS7juS4gOS4queJueWumuaXtumXtOWIm+W7uuS4gOS4qua1heWFi+mahiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyNyBidWlsdGluL2ZldGNoLmM6MTQ2IGJ1aWx0aW4vZmV0Y2guYzoxNjkKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODMxCisjOiBidWlsdGluL2Nsb25lLmM6MTI5IGJ1aWx0aW4vZmV0Y2guYzoxNzIgYnVpbHRpbi9mZXRjaC5jOjE5NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgwCiBtc2dpZCAicmV2aXNpb24iCiBtc2dzdHIgIueJiOacrCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEyOCBidWlsdGluL2ZldGNoLmM6MTQ3CisjOiBidWlsdGluL2Nsb25lLmM6MTMwIGJ1aWx0aW4vZmV0Y2guYzoxNzMKIG1zZ2lkICJkZWVwZW4gaGlzdG9yeSBvZiBzaGFsbG93IGNsb25lLCBleGNsdWRpbmcgcmV2IgogbXNnc3RyICLmt7HljJbmtYXlhYvpmobnmoTljoblj7LvvIzpmaTkuobnibnlrprniYjmnKwiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzAKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI4CiBtc2dpZCAiY2xvbmUgb25seSBvbmUgYnJhbmNoLCBIRUFEIG9yIC0tYnJhbmNoIgogbXNnc3RyICLlj6rlhYvpmobkuIDkuKrliIbmlK/jgIFIRUFEIOaIliAtLWJyYW5jaCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzMgorIzogYnVpbHRpbi9jbG9uZS5jOjEzNAogbXNnaWQgImRvbid0IGNsb25lIGFueSB0YWdzLCBhbmQgbWFrZSBsYXRlciBmZXRjaGVzIG5vdCB0byBmb2xsb3cgdGhlbSIKIG1zZ3N0ciAi5LiN6KaB5YWL6ZqG5Lu75L2V5qCH562+77yM5bm25LiU5ZCO57ut6I635Y+W5pON5L2c5Lmf5LiN5LiL6L295a6D5LusIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM0CisjOiBidWlsdGluL2Nsb25lLmM6MTM2CiBtc2dpZCAiYW55IGNsb25lZCBzdWJtb2R1bGVzIHdpbGwgYmUgc2hhbGxvdyIKIG1zZ3N0ciAi5a2Q5qih57uE5bCG5Lul5rWF5LiL6L295qih5byP5YWL6ZqGIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM1IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NworIzogYnVpbHRpbi9jbG9uZS5jOjEzNyBidWlsdGluL2luaXQtZGIuYzo0OTUKIG1zZ2lkICJnaXRkaXIiCiBtc2dzdHIgImdpdOebruW9lSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzNiBidWlsdGluL2luaXQtZGIuYzo0ODgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzggYnVpbHRpbi9pbml0LWRiLmM6NDk2CiBtc2dpZCAic2VwYXJhdGUgZ2l0IGRpciBmcm9tIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAiZ2l055uu5b2V5ZKM5bel5L2c5Yy65YiG56a7IgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTM3CisjOiBidWlsdGluL2Nsb25lLmM6MTM5CiBtc2dpZCAia2V5PXZhbHVlIgogbXNnc3RyICJrZXk9dmFsdWUiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMzgKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDAKIG1zZ2lkICJzZXQgY29uZmlnIGluc2lkZSB0aGUgbmV3IHJlcG9zaXRvcnkiCiBtc2dzdHIgIuWcqOaWsOS7k+W6k+S4reiuvue9rumFjee9ruS/oeaBryIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEzOSBidWlsdGluL2ZldGNoLmM6MTY1IGJ1aWx0aW4vcHVsbC5jOjIzMAotIzogYnVpbHRpbi9wdXNoLmM6NTgzCisjOiBidWlsdGluL2Nsb25lLmM6MTQyIGJ1aWx0aW4vZmV0Y2guYzoxOTAgYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9wdXNoLmM6NTczIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTcyCittc2dpZCAic2VydmVyLXNwZWNpZmljIgorbXNnc3RyICJzZXJ2ZXItc3BlY2lmaWMiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDIgYnVpbHRpbi9mZXRjaC5jOjE5MCBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL3B1c2guYzo1NzMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzMKK21zZ2lkICJvcHRpb24gdG8gdHJhbnNtaXQiCittc2dzdHIgIuS8oOi+k+mAiemhuSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0MyBidWlsdGluL2ZldGNoLmM6MTkxIGJ1aWx0aW4vcHVsbC5jOjIyMAorIzogYnVpbHRpbi9wdXNoLmM6NTc0CiBtc2dpZCAidXNlIElQdjQgYWRkcmVzc2VzIG9ubHkiCiBtc2dzdHIgIuWPquS9v+eUqCBJUHY0IOWcsOWdgCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjE0MSBidWlsdGluL2ZldGNoLmM6MTY3IGJ1aWx0aW4vcHVsbC5jOjIzMwotIzogYnVpbHRpbi9wdXNoLmM6NTg1CisjOiBidWlsdGluL2Nsb25lLmM6MTQ1IGJ1aWx0aW4vZmV0Y2guYzoxOTMgYnVpbHRpbi9wdWxsLmM6MjIzCisjOiBidWlsdGluL3B1c2guYzo1NzYKIG1zZ2lkICJ1c2UgSVB2NiBhZGRyZXNzZXMgb25seSIKIG1zZ3N0ciAi5Y+q5L2/55SoIElQdjYg5Zyw5Z2AIgogCi0jOiBidWlsdGluL2Nsb25lLmM6Mjc5CisjOiBidWlsdGluL2Nsb25lLmM6MTQ5Cittc2dpZCAiYW55IGNsb25lZCBzdWJtb2R1bGVzIHdpbGwgdXNlIHRoZWlyIHJlbW90ZS10cmFja2luZyBicmFuY2giCittc2dzdHIgIuS7u+S9leWFi+mahueahOWtkOaooee7hOWwhuS9v+eUqOWug+S7rOeahOi/nOeoi+i3n+i4quWIhuaUryIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE1MQorbXNnaWQgImluaXRpYWxpemUgc3BhcnNlLWNoZWNrb3V0IGZpbGUgdG8gaW5jbHVkZSBvbmx5IGZpbGVzIGF0IHJvb3QiCittc2dzdHIgIuWIneWni+WMlueogOeWj+ajgOWHuuaWh+S7tu+8jOWPquWMheWQq+agueebruW9leaWh+S7tiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjI4NwogbXNnaWQgIiIKICJObyBkaXJlY3RvcnkgbmFtZSBjb3VsZCBiZSBndWVzc2VkLlxuIgogIlBsZWFzZSBzcGVjaWZ5IGEgZGlyZWN0b3J5IG9uIHRoZSBjb21tYW5kIGxpbmUiCkBAIC05MjY0LDE4MCArMTE5MTYsMTc5IEBACiAi5peg5rOV54yc5Yiw55uu5b2V5ZCN44CCXG4iCiAi6K+35Zyo5ZG95Luk6KGM5oyH5a6a5LiA5Liq55uu5b2VIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MzMyCisjOiBidWlsdGluL2Nsb25lLmM6MzQwCiAjLCBjLWZvcm1hdAogbXNnaWQgImluZm86IENvdWxkIG5vdCBhZGQgYWx0ZXJuYXRlIGZvciAnJXMnOiAlc1xuIgogbXNnc3RyICJpbmZvOiDkuI3og73kuLogJyVzJyDmt7vliqDkuIDkuKrlpIfnlKjvvJolc1xuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDA0Ci0jLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBvcGVuICclcyciCi1tc2dzdHIgIuaJk+W8gCAnJXMnIOWksei0pSIKLQotIzogYnVpbHRpbi9jbG9uZS5jOjQxMgorIzogYnVpbHRpbi9jbG9uZS5jOjQxMwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBleGlzdHMgYW5kIGlzIG5vdCBhIGRpcmVjdG9yeSIKIG1zZ3N0ciAiJXMg5a2Y5Zyo5LiU5LiN5piv5LiA5Liq55uu5b2VIgogCi0jOiBidWlsdGluL2Nsb25lLmM6NDI2CisjOiBidWlsdGluL2Nsb25lLmM6NDMwCiAjLCBjLWZvcm1hdAotbXNnaWQgImZhaWxlZCB0byBzdGF0ICVzXG4iCi1tc2dzdHIgIuWvuSAlcyDosIPnlKggc3RhdCDlpLHotKVcbiIKK21zZ2lkICJmYWlsZWQgdG8gc3RhcnQgaXRlcmF0b3Igb3ZlciAnJXMnIgorbXNnc3RyICLml6Dms5XlnKggJyVzJyDkuIrlkK/liqjov63ku6PlmagiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo0NDMKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIHVubGluayAnJXMnIgotbXNnc3RyICLliKDpmaQgJyVzJyDlpLHotKUiCi0KLSM6IGJ1aWx0aW4vY2xvbmUuYzo0NDgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBsaW5rICclcyciCiBtc2dzdHIgIuWIm+W7uumTvuaOpSAnJXMnIOWksei0pSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ1MgorIzogYnVpbHRpbi9jbG9uZS5jOjQ2NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY29weSBmaWxlIHRvICclcyciCiBtc2dzdHIgIuaLt+i0neaWh+S7tuiHsyAnJXMnIOWksei0pSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ3OAorIzogYnVpbHRpbi9jbG9uZS5jOjQ2OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaXRlcmF0ZSBvdmVyICclcyciCittc2dzdHIgIuaXoOazleWcqCAnJXMnIOS4iui/reS7oyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjQ5NAogIywgYy1mb3JtYXQKIG1zZ2lkICJkb25lLlxuIgogbXNnc3RyICLlrozmiJDjgIJcbiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjQ5MgorIzogYnVpbHRpbi9jbG9uZS5jOjUwOAogbXNnaWQgIiIKICJDbG9uZSBzdWNjZWVkZWQsIGJ1dCBjaGVja291dCBmYWlsZWQuXG4iCiAiWW91IGNhbiBpbnNwZWN0IHdoYXQgd2FzIGNoZWNrZWQgb3V0IHdpdGggJ2dpdCBzdGF0dXMnXG4iCi0iYW5kIHJldHJ5IHRoZSBjaGVja291dCB3aXRoICdnaXQgY2hlY2tvdXQgLWYgSEVBRCdcbiIKKyJhbmQgcmV0cnkgd2l0aCAnZ2l0IHJlc3RvcmUgLS1zb3VyY2U9SEVBRCA6LydcbiIKIG1zZ3N0ciAiIgogIuWFi+mahuaIkOWKn++8jOS9huaYr+ajgOWHuuWksei0peOAglxuIgogIuaCqOWPr+S7pemAmui/hyAnZ2l0IHN0YXR1cycg5qOA5p+l5ZOq5Lqb5bey6KKr5qOA5Ye677yM54S25ZCO5L2/55So5ZG95LukXG4iCi0iJ2dpdCBjaGVja291dCAtZiBIRUFEJyDph43or5VcbiIKKyInZ2l0IHJlc3RvcmUgLS1zb3VyY2U9SEVBRCA6Lycg6YeN6K+VXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo1NjkKKyM6IGJ1aWx0aW4vY2xvbmUuYzo1ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZpbmQgcmVtb3RlIGJyYW5jaCAlcyB0byBjbG9uZS4iCiBtc2dzdHIgIuS4jeiDveWPkeeOsOimgeWFi+mahueahOi/nOeoi+WIhuaUryAlc+OAgiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjY4MAorIzogYnVpbHRpbi9jbG9uZS5jOjcwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlICVzIgogbXNnc3RyICLkuI3og73mm7TmlrAgJXMiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo3MzAKKyM6IGJ1aWx0aW4vY2xvbmUuYzo3NTMKK21zZ2lkICJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgIuaXoOazleWIneWni+WMlueogOeWj+ajgOWHuiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjc3NgogbXNnaWQgInJlbW90ZSBIRUFEIHJlZmVycyB0byBub25leGlzdGVudCByZWYsIHVuYWJsZSB0byBjaGVja291dC5cbiIKIG1zZ3N0ciAi6L+c56iLIEhFQUQg5oyH5ZCR5LiA5Liq5LiN5a2Y5Zyo55qE5byV55So77yM5peg5rOV5qOA5Ye644CCXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo3NjEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4MDcKIG1zZ2lkICJ1bmFibGUgdG8gY2hlY2tvdXQgd29ya2luZyB0cmVlIgogbXNnc3RyICLkuI3og73mo4Dlh7rlt6XkvZzljLoiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4MDYKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4NjIKIG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcGFyYW1ldGVycyB0byBjb25maWcgZmlsZSIKIG1zZ3N0ciAi5peg5rOV5bCG5Y+C5pWw5YaZ5YWl6YWN572u5paH5Lu2IgogCi0jOiBidWlsdGluL2Nsb25lLmM6ODY5CisjOiBidWlsdGluL2Nsb25lLmM6OTI1CiBtc2dpZCAiY2Fubm90IHJlcGFjayB0byBjbGVhbiB1cCIKIG1zZ3N0ciAi5peg5rOV5omn6KGMIHJlcGFjayDmnaXmuIXnkIYiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo4NzEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MjcKIG1zZ2lkICJjYW5ub3QgdW5saW5rIHRlbXBvcmFyeSBhbHRlcm5hdGVzIGZpbGUiCiBtc2dzdHIgIuaXoOazleWIoOmZpOS4tOaXtueahCBhbHRlcm5hdGVzIOaWh+S7tiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkxMSBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NDEKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NjUgYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTUwCiBtc2dpZCAiVG9vIG1hbnkgYXJndW1lbnRzLiIKIG1zZ3N0ciAi5aSq5aSa5Y+C5pWw44CCIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTE1CisjOiBidWlsdGluL2Nsb25lLmM6OTY5CiBtc2dpZCAiWW91IG11c3Qgc3BlY2lmeSBhIHJlcG9zaXRvcnkgdG8gY2xvbmUuIgogbXNnc3RyICLmgqjlv4XpobvmjIflrprkuIDkuKrku5PlupPmnaXlhYvpmobjgIIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5MjgKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiLS1iYXJlIGFuZCAtLW9yaWdpbiAlcyBvcHRpb25zIGFyZSBpbmNvbXBhdGlibGUuIgogbXNnc3RyICItLWJhcmUg5ZKMIC0tb3JpZ2luICVzIOmAiemhueS4jeWFvOWuueOAgiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjkzMQorIzogYnVpbHRpbi9jbG9uZS5jOjk4NQogbXNnaWQgIi0tYmFyZSBhbmQgLS1zZXBhcmF0ZS1naXQtZGlyIGFyZSBpbmNvbXBhdGlibGUuIgogbXNnc3RyICItLWJhcmUg5ZKMIC0tc2VwYXJhdGUtZ2l0LWRpciDpgInpobnkuI3lhbzlrrnjgIIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NDQKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5OTgKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVwb3NpdG9yeSAnJXMnIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICLku5PlupMgJyVzJyDkuI3lrZjlnKgiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzo5NTAgYnVpbHRpbi9mZXRjaC5jOjE2MDYKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDA0IGJ1aWx0aW4vZmV0Y2guYzoxNzk2CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlcHRoICVzIGlzIG5vdCBhIHBvc2l0aXZlIG51bWJlciIKIG1zZ3N0ciAi5rex5bqmICVzIOS4jeaYr+S4gOS4quato+aVsCIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk2MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzdGluYXRpb24gcGF0aCAnJXMnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYW4gZW1wdHkgZGlyZWN0b3J5LiIKIG1zZ3N0ciAi55uu5qCH6Lev5b6EICclcycg5bey57uP5a2Y5Zyo77yM5bm25LiU5LiN5piv5LiA5Liq56m655uu5b2V44CCIgogCi0jOiBidWlsdGluL2Nsb25lLmM6OTcwCisjOiBidWlsdGluL2Nsb25lLmM6MTAyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJ3b3JraW5nIHRyZWUgJyVzJyBhbHJlYWR5IGV4aXN0cy4iCiBtc2dzdHIgIuW3peS9nOWMuiAnJXMnIOW3sue7j+WtmOWcqOOAgiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk4NSBidWlsdGluL2Nsb25lLmM6MTAwNiBidWlsdGluL2RpZmZ0b29sLmM6MjcxCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Mjk1IGJ1aWx0aW4vd29ya3RyZWUuYzozMjUKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDM5IGJ1aWx0aW4vY2xvbmUuYzoxMDYwIGJ1aWx0aW4vZGlmZnRvb2wuYzoyNzEKKyM6IGJ1aWx0aW4vbG9nLmM6MTg2NiBidWlsdGluL3dvcmt0cmVlLmM6Mjk1IGJ1aWx0aW4vd29ya3RyZWUuYzozMjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBsZWFkaW5nIGRpcmVjdG9yaWVzIG9mICclcyciCiBtc2dzdHIgIuS4jeiDveS4uiAnJXMnIOWIm+W7uuWFiOWvvOebruW9lSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjk5MAorIzogYnVpbHRpbi9jbG9uZS5jOjEwNDQKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSB3b3JrIHRyZWUgZGlyICclcyciCiBtc2dzdHIgIuS4jeiDveWIm+W7uuW3peS9nOWMuuebruW9lSAnJXMnIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAxMAorIzogYnVpbHRpbi9jbG9uZS5jOjEwNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2xvbmluZyBpbnRvIGJhcmUgcmVwb3NpdG9yeSAnJXMnLi4uXG4iCiBtc2dzdHIgIuWFi+mahuWIsOe6r+S7k+W6kyAnJXMnLi4uXG4iCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMDEyCisjOiBidWlsdGluL2Nsb25lLmM6MTA2NgogIywgYy1mb3JtYXQKIG1zZ2lkICJDbG9uaW5nIGludG8gJyVzJy4uLlxuIgogbXNnc3RyICLmraPlhYvpmobliLAgJyVzJy4uLlxuIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTAzNgorIzogYnVpbHRpbi9jbG9uZS5jOjEwOTAKIG1zZ2lkICIiCiAiY2xvbmUgLS1yZWN1cnNpdmUgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBib3RoIC0tcmVmZXJlbmNlIGFuZCAtLXJlZmVyZW5jZS1pZi0iCiAiYWJsZSIKIG1zZ3N0ciAiY2xvbmUgLS1yZWN1cnNpdmUg5ZKMIC0tcmVmZXJlbmNlIOS7peWPiiAtLXJlZmVyZW5jZS1pZi1hYmxlIOS4jeWFvOWuuSIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjEwOTcKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTU0CiBtc2dpZCAiLS1kZXB0aCBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCiBtc2dzdHIgIi0tZGVwdGgg5Zyo5pys5Zyw5YWL6ZqG5pe26KKr5b+955Wl77yM6K+35pS555SoIGZpbGU6Ly8g5Y2P6K6u44CCIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTA5OQorIzogYnVpbHRpbi9jbG9uZS5jOjExNTYKIG1zZ2lkICItLXNoYWxsb3ctc2luY2UgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICItLXNoYWxsb3ctc2luY2Ug5Zyo5pys5Zyw5YWL6ZqG5pe26KKr5b+955Wl77yM6K+35pS555SoIGZpbGU6Ly8g5Y2P6K6u44CCIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTEwMQorIzogYnVpbHRpbi9jbG9uZS5jOjExNTgKIG1zZ2lkICItLXNoYWxsb3ctZXhjbHVkZSBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCiBtc2dzdHIgIi0tc2hhbGxvdy1leGNsdWRlIOWcqOacrOWcsOWFi+mahuaXtuiiq+W/veeVpe+8jOivt+aUueeUqCBmaWxlOi8vIOWNj+iuruOAgiIKIAotIzogYnVpbHRpbi9jbG9uZS5jOjExMDMKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTYwCiBtc2dpZCAiLS1maWx0ZXIgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgogbXNnc3RyICItLWZpbHRlciDlnKjmnKzlnLDlhYvpmobml7booqvlv73nlaXvvIzor7fmlLnnlKggZmlsZTovLyDljY/orq7jgIIiCiAKLSM6IGJ1aWx0aW4vY2xvbmUuYzoxMTA2CisjOiBidWlsdGluL2Nsb25lLmM6MTE2MwogbXNnaWQgInNvdXJjZSByZXBvc2l0b3J5IGlzIHNoYWxsb3csIGlnbm9yaW5nIC0tbG9jYWwiCiBtc2dzdHIgIua6kOS7k+W6k+aYr+a1heWFi+mahu+8jOW/veeVpSAtLWxvY2FsIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTExMQorIzogYnVpbHRpbi9jbG9uZS5jOjExNjgKIG1zZ2lkICItLWxvY2FsIGlzIGlnbm9yZWQiCiBtc2dzdHIgIi0tbG9jYWwg6KKr5b+955WlIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE4MSBidWlsdGluL2Nsb25lLmM6MTE4OQorIzogYnVpbHRpbi9jbG9uZS5jOjEyNDMgYnVpbHRpbi9jbG9uZS5jOjEyNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVtb3RlIGJyYW5jaCAlcyBub3QgZm91bmQgaW4gdXBzdHJlYW0gJXMiCiBtc2dzdHIgIui/nOeoi+WIhuaUryAlcyDlnKjkuIrmuLggJXMg5pyq5Y+R546wIgogCi0jOiBidWlsdGluL2Nsb25lLmM6MTE5MgorIzogYnVpbHRpbi9jbG9uZS5jOjEyNTQKIG1zZ2lkICJZb3UgYXBwZWFyIHRvIGhhdmUgY2xvbmVkIGFuIGVtcHR5IHJlcG9zaXRvcnkuIgogbXNnc3RyICLmgqjkvLzkuY7lhYvpmobkuobkuIDkuKrnqbrku5PlupPjgIIiCiAKQEAgLTk0NzMsMTUgKzEyMTI0LDgzIEBACiBtc2dpZCAiLS1jb21tYW5kIG11c3QgYmUgdGhlIGZpcnN0IGFyZ3VtZW50IgogbXNnc3RyICItLWNvbW1hbmQg5b+F6aG75piv56ys5LiA5Liq5Y+C5pWwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQwCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTgKK21zZ2lkICIiCisiZ2l0IGNvbW1pdC10cmVlIFsoLXAgPHBhcmVudD4pLi4uXSBbLVNbPGtleWlkPl1dIFsoLW0gPG1lc3NhZ2U+KS4uLl0gWygtRiAiCisiPGZpbGU+KS4uLl0gPHRyZWU+IgorbXNnc3RyICIiCisiZ2l0IGNvbW1pdC10cmVlIFsoLXAgPOeItuaPkOS6pD4pLi4uXSBbLVNbPGtleWlkPl1dIFsoLW0gPOa2iOaBrz4pLi4uXSBbKC1GIDzmlofku7YiCisiPikuLi5dIDzmoJE+IgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhcmVudCAlcyBpZ25vcmVkIgorbXNnc3RyICLlv73nlaXph43lpI3nmoTniLbmj5DkuqQgJXMiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzo1NiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTM2IGJ1aWx0aW4vbG9nLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lICVzIgorbXNnc3RyICLkuI3mmK/kuIDkuKrmnInmlYjnmoTlr7nosaHlkI0gJXMiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byBvcGVuICclcyciCittc2dzdHIgImdpdCBjb21taXQtdHJlZe+8muaXoOazleaJk+W8gCAnJXMnIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gcmVhZCAnJXMnIgorbXNnc3RyICJnaXQgY29tbWl0LXRyZWXvvJrml6Dms5Xor7vlj5YgJyVzJyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk4CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIGNsb3NlICclcyciCittc2dzdHIgImdpdCBjb21taXQtdHJlZe+8muaXoOazleWFs+mXrSAnJXMnIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTExCittc2dpZCAicGFyZW50IgorbXNnc3RyICLniLbmj5DkuqQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTIKK21zZ2lkICJpZCBvZiBhIHBhcmVudCBjb21taXQgb2JqZWN0IgorbXNnc3RyICLniLbmj5DkuqTlr7nosaEgSUQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTQgYnVpbHRpbi9jb21taXQuYzoxNTAxIGJ1aWx0aW4vbWVyZ2UuYzoyNzEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MDkgYnVpbHRpbi9ub3Rlcy5jOjU3NSBidWlsdGluL3N0YXNoLmM6MTQ3NworIzogYnVpbHRpbi90YWcuYzo0MTIKK21zZ2lkICJtZXNzYWdlIgorbXNnc3RyICLor7TmmI4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTUgYnVpbHRpbi9jb21taXQuYzoxNTAxCittc2dpZCAiY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIuaPkOS6pOivtOaYjiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExOAorbXNnaWQgInJlYWQgY29tbWl0IGxvZyBtZXNzYWdlIGZyb20gZmlsZSIKK21zZ3N0ciAi5LuO5paH5Lu25Lit6K+75Y+W5o+Q5Lqk6K+05piOIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTIxIGJ1aWx0aW4vY29tbWl0LmM6MTUxMyBidWlsdGluL21lcmdlLmM6Mjg4CisjOiBidWlsdGluL3B1bGwuYzoxNzUgYnVpbHRpbi9yZXZlcnQuYzoxMTgKK21zZ2lkICJHUEcgc2lnbiBjb21taXQiCittc2dzdHIgIkdQRyDmj5DkuqTnrb7lkI0iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMzMKK21zZ2lkICJtdXN0IGdpdmUgZXhhY3RseSBvbmUgdHJlZSIKK21zZ3N0ciAi5b+F6aG757K+56Gu5Zyw5o+Q5L6b5LiA5Liq5qCRIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTQwCittc2dpZCAiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gcmVhZCIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVl77ya6K+75Y+W5aSx6LSlIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjQxCiBtc2dpZCAiZ2l0IGNvbW1pdCBbPG9wdGlvbnM+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCiBtc2dzdHIgImdpdCBjb21taXQgWzzpgInpobk+XSBbLS1dIDzot6/lvoTop4TmoLw+Li4uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ1CisjOiBidWlsdGluL2NvbW1pdC5jOjQ2CiBtc2dpZCAiZ2l0IHN0YXR1cyBbPG9wdGlvbnM+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCiBtc2dzdHIgImdpdCBzdGF0dXMgWzzpgInpobk+XSBbLS1dIDzot6/lvoTop4TmoLw+Li4uIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjUwCisjOiBidWlsdGluL2NvbW1pdC5jOjUxCiBtc2dpZCAiIgogIllvdSBhc2tlZCB0byBhbWVuZCB0aGUgbW9zdCByZWNlbnQgY29tbWl0LCBidXQgZG9pbmcgc28gd291bGQgbWFrZVxuIgogIml0IGVtcHR5LiBZb3UgY2FuIHJlcGVhdCB5b3VyIGNvbW1hbmQgd2l0aCAtLWFsbG93LWVtcHR5LCBvciB5b3UgY2FuXG4iCkBAIC05NDkwLDcgKzEyMjA5LDcgQEAKICLmgqjopoHkv67ooaXmnIDov5HnmoTmj5DkuqTvvIzkvYbov5nkuYjlgZrkvJrorqnlroPmiJDkuLrnqbrmj5DkuqTjgILmgqjlj6/ku6Xph43lpI3mgqjnmoTlkb3ku6TlubbluKbkuIpcbiIKICItLWFsbG93LWVtcHR5IOmAiemhue+8jOaIluiAheaCqOWPr+eUqOWRveS7pCBcImdpdCByZXNldCBIRUFEXlwiIOaVtOS4quWIoOmZpOivpeaPkOS6pOOAglxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU1CisjOiBidWlsdGluL2NvbW1pdC5jOjU2CiBtc2dpZCAiIgogIlRoZSBwcmV2aW91cyBjaGVycnktcGljayBpcyBub3cgZW1wdHksIHBvc3NpYmx5IGR1ZSB0byBjb25mbGljdCByZXNvbHV0aW9uLlxuIgogIklmIHlvdSB3aXNoIHRvIGNvbW1pdCBpdCBhbnl3YXksIHVzZTpcbiIKQEAgLTk1MDQsMTE4ICsxMjIyMywxMzEgQEAKICIgICAgZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5XG4iCiAiXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjIKLW1zZ2lkICJPdGhlcndpc2UsIHBsZWFzZSB1c2UgJ2dpdCByZXNldCdcbiIKLW1zZ3N0ciAi5ZCm5YiZ77yM6K+35L2/55So5ZG95LukICdnaXQgcmVzZXQnXG4iCisjOiBidWlsdGluL2NvbW1pdC5jOjYzCittc2dpZCAiT3RoZXJ3aXNlLCBwbGVhc2UgdXNlICdnaXQgY2hlcnJ5LXBpY2sgLS1za2lwJ1xuIgorbXNnc3RyICLlkKbliJnvvIzor7fkvb/nlKggJ2dpdCBjaGVycnktcGljayAtLXNraXAnXG4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjYKIG1zZ2lkICIiCisiYW5kIHRoZW4gdXNlOlxuIgorIlxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVxuIgorIlxuIgorInRvIHJlc3VtZSBjaGVycnktcGlja2luZyB0aGUgcmVtYWluaW5nIGNvbW1pdHMuXG4iCiAiSWYgeW91IHdpc2ggdG8gc2tpcCB0aGlzIGNvbW1pdCwgdXNlOlxuIgogIlxuIgotIiAgICBnaXQgcmVzZXRcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFxuIgogIlxuIgotIlRoZW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIHdpbGwgcmVzdW1lIGNoZXJyeS1waWNraW5nXG4iCi0idGhlIHJlbWFpbmluZyBjb21taXRzLlxuIgogbXNnc3RyICIiCi0i5aaC5p6c5oKo5oOz6Lez6L+H6L+Z5Liq5o+Q5Lqk77yM5L2/55So5ZG95Luk77yaXG4iCisi54S25ZCO5L2/55So77yaXG4iCiAiXG4iCi0iICAgIGdpdCByZXNldFxuIgorIiAgICBnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVxuIgogIlxuIgotIueEtuWQjuaJp+ihjCBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIg57un57ut5a+55YW25L2Z5o+Q5Lqk5omn6KGM5ouj6YCJXG4iCi0i5pON5L2c44CCXG4iCisi5p2l57un57ut5ouj6YCJ5Ymp5L2Z5o+Q5Lqk44CC5aaC5p6c5oKo5oOz6Lez6L+H5q2k5o+Q5Lqk77yM5L2/55So77yaXG4iCisiXG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLXNraXBcbiIKKyJcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzozMTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzE1CiBtc2dpZCAiZmFpbGVkIHRvIHVucGFjayBIRUFEIHRyZWUgb2JqZWN0IgogbXNnc3RyICLop6PljIUgSEVBRCDmoJHlr7nosaHlpLHotKUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzUyCisjOiBidWlsdGluL2NvbW1pdC5jOjM1MQorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUg5ZKMIC1hIOWcqOS4gOi1t+ayoeacieaEj+S5iSIKKworIzogYnVpbHRpbi9jb21taXQuYzozNjQKK21zZ2lkICJObyBwYXRocyB3aXRoIC0taW5jbHVkZS8tLW9ubHkgZG9lcyBub3QgbWFrZSBzZW5zZS4iCittc2dzdHIgIuWPguaVsCAtLWluY2x1ZGUvLS1vbmx5IOS4jei3n+i3r+W+hOayoeacieaEj+S5ieOAgiIKKworIzogYnVpbHRpbi9jb21taXQuYzozNzYKIG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBpbmRleCIKIG1zZ3N0ciAi5LiN6IO95Yib5bu65Li05pe257Si5byVIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjM1OAorIzogYnVpbHRpbi9jb21taXQuYzozODUKIG1zZ2lkICJpbnRlcmFjdGl2ZSBhZGQgZmFpbGVkIgogbXNnc3RyICLkuqTkupLlvI/mt7vliqDlpLHotKUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzcxCisjOiBidWlsdGluL2NvbW1pdC5jOjQwMAogbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgdGVtcG9yYXJ5IGluZGV4IgogbXNnc3RyICLml6Dms5Xmm7TmlrDkuLTml7bntKLlvJUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MzczCisjOiBidWlsdGluL2NvbW1pdC5jOjQwMgogbXNnaWQgIkZhaWxlZCB0byB1cGRhdGUgbWFpbiBjYWNoZSB0cmVlIgogbXNnc3RyICLkuI3og73mm7TmlrDmoJHnmoTkuLvnvJPlrZgiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6Mzk4IGJ1aWx0aW4vY29tbWl0LmM6NDIxIGJ1aWx0aW4vY29tbWl0LmM6NDY3CisjOiBidWlsdGluL2NvbW1pdC5jOjQyNyBidWlsdGluL2NvbW1pdC5jOjQ1MCBidWlsdGluL2NvbW1pdC5jOjQ5NgogbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXdfaW5kZXggZmlsZSIKIG1zZ3N0ciAi5peg5rOV5YaZIG5ld19pbmRleCDmlofku7YiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDUwCisjOiBidWlsdGluL2NvbW1pdC5jOjQ3OQogbXNnaWQgImNhbm5vdCBkbyBhIHBhcnRpYWwgY29tbWl0IGR1cmluZyBhIG1lcmdlLiIKIG1zZ3N0ciAi5Zyo5ZCI5bm26L+H56iL5Lit5LiN6IO95YGa6YOo5YiG5o+Q5Lqk44CCIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjQ1MgorIzogYnVpbHRpbi9jb21taXQuYzo0ODEKIG1zZ2lkICJjYW5ub3QgZG8gYSBwYXJ0aWFsIGNvbW1pdCBkdXJpbmcgYSBjaGVycnktcGljay4iCiBtc2dzdHIgIuWcqOaLo+mAiei/h+eoi+S4reS4jeiDveWBmumDqOWIhuaPkOS6pOOAgiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo0NjAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDg5CiBtc2dpZCAiY2Fubm90IHJlYWQgdGhlIGluZGV4IgogbXNnc3RyICLml6Dms5Xor7vlj5bntKLlvJUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NDc5CisjOiBidWlsdGluL2NvbW1pdC5jOjUwOAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0ZW1wb3JhcnkgaW5kZXggZmlsZSIKIG1zZ3N0ciAi5peg5rOV5YaZ5Li05pe257Si5byV5paH5Lu2IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3NworIzogYnVpbHRpbi9jb21taXQuYzo2MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgbGFja3MgYXV0aG9yIGhlYWRlciIKIG1zZ3N0ciAi5o+Q5LqkICclcycg57y65bCR5L2c6ICF5L+h5oGvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU3OQorIzogYnVpbHRpbi9jb21taXQuYzo2MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29tbWl0ICclcycgaGFzIG1hbGZvcm1lZCBhdXRob3IgbGluZSIKIG1zZ3N0ciAi5o+Q5LqkICclcycg5pyJ5qC85byP6ZSZ6K+v55qE5L2c6ICF5L+h5oGvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjU5OAorIzogYnVpbHRpbi9jb21taXQuYzo2MjcKIG1zZ2lkICJtYWxmb3JtZWQgLS1hdXRob3IgcGFyYW1ldGVyIgogbXNnc3RyICLmoLzlvI/plJnor6/nmoQgLS1hdXRob3Ig5Y+C5pWwIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY1MAorIzogYnVpbHRpbi9jb21taXQuYzo2ODAKIG1zZ2lkICIiCiAidW5hYmxlIHRvIHNlbGVjdCBhIGNvbW1lbnQgY2hhcmFjdGVyIHRoYXQgaXMgbm90IHVzZWRcbiIKICJpbiB0aGUgY3VycmVudCBjb21taXQgbWVzc2FnZSIKIG1zZ3N0ciAi5peg5rOV6YCJ5oup5LiA5Liq5pyq6KKr5b2T5YmN5o+Q5Lqk6K+05piO5L2/55So55qE5rOo6YeK5a2X56ymIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY4NyBidWlsdGluL2NvbW1pdC5jOjcyMCBidWlsdGluL2NvbW1pdC5jOjEwNDkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzE4IGJ1aWx0aW4vY29tbWl0LmM6NzUxIGJ1aWx0aW4vY29tbWl0LmM6MTA5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbG9va3VwIGNvbW1pdCAlcyIKIG1zZ3N0ciAi5LiN6IO95p+l6K+i5o+Q5LqkICVzIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjY5OSBidWlsdGluL3Nob3J0bG9nLmM6MzE3CisjOiBidWlsdGluL2NvbW1pdC5jOjczMCBidWlsdGluL3Nob3J0bG9nLmM6MzE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIihyZWFkaW5nIGxvZyBtZXNzYWdlIGZyb20gc3RhbmRhcmQgaW5wdXQpXG4iCiBtc2dzdHIgIu+8iOato+S7juagh+WHhui+k+WFpeS4reivu+WPluaXpeW/l+S/oeaBr++8iVxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjcwMQorIzogYnVpbHRpbi9jb21taXQuYzo3MzIKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBsb2cgZnJvbSBzdGFuZGFyZCBpbnB1dCIKIG1zZ3N0ciAi5LiN6IO95LuO5qCH5YeG6L6T5YWl5Lit6K+75Y+W5pel5b+X5L+h5oGvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjcwNQorIzogYnVpbHRpbi9jb21taXQuYzo3MzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZpbGUgJyVzJyIKIG1zZ3N0ciAi5LiN6IO96K+75Y+W5pel5b+X5paH5Lu2ICclcyciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzM0IGJ1aWx0aW4vY29tbWl0LmM6NzQyCisjOiBidWlsdGluL2NvbW1pdC5jOjc2NyBidWlsdGluL2NvbW1pdC5jOjc4MwogbXNnaWQgImNvdWxkIG5vdCByZWFkIFNRVUFTSF9NU0ciCiBtc2dzdHIgIuS4jeiDveivu+WPliBTUVVBU0hfTVNHIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjczOQorIzogYnVpbHRpbi9jb21taXQuYzo3NzQKIG1zZ2lkICJjb3VsZCBub3QgcmVhZCBNRVJHRV9NU0ciCiBtc2dzdHIgIuS4jeiDveivu+WPliBNRVJHRV9NU0ciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6NzkzCisjOiBidWlsdGluL2NvbW1pdC5jOjgzNAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBjb21taXQgdGVtcGxhdGUiCiBtc2dzdHIgIuS4jeiDveWGmeaPkOS6pOaooeeJiCIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MTEKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTk2MjksNyArMTIzNjEsNyBAQAogIlx0JXNcbiIKICLnhLblkI7ph43or5XjgIJcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MTYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODU4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJcbiIKQEAgLTk2NDMsNyArMTIzNzUsNyBAQAogIlx0JXNcbiIKICLnhLblkI7ph43or5XjgIJcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MjkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODcxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQbGVhc2UgZW50ZXIgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB5b3VyIGNoYW5nZXMuIExpbmVzIHN0YXJ0aW5nXG4iCkBAIC05NjUyLDcgKzEyMzg0LDcgQEAKICLor7fkuLrmgqjnmoTlj5jmm7TovpPlhaXmj5DkuqTor7TmmI7jgILku6UgJyVjJyDlvIDlp4vnmoTooYzlsIbooqvlv73nlaXvvIzogIzkuIDkuKrnqbrnmoTmj5DkuqRcbiIKICLor7TmmI7lsIbkvJrnu4jmraLmj5DkuqTjgIJcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzo4MzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODc5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJQbGVhc2UgZW50ZXIgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB5b3VyIGNoYW5nZXMuIExpbmVzIHN0YXJ0aW5nXG4iCkBAIC05NjYzLDQwNyArMTIzOTUsMzk2IEBACiAi5Lmf5Y+v5Lul5Yig6Zmk5a6D5Lus44CC5LiA5Liq56m655qE5o+Q5Lqk6K+05piO5bCG5Lya57uI5q2i5o+Q5Lqk44CCXG4iCiAKICMgIOivkeiAhe+8muS4uuS/neivgeWcqOi+k+WHuuS4reWvuem9kO+8jOazqOaEj+iwg+aVtOWPpeS4reepuuagvO+8gQotIzogYnVpbHRpbi9jb21taXQuYzo4NTQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzQXV0aG9yOiAgICAlLipzIDwlLipzPiIKIG1zZ3N0ciAiJXPkvZzogIXvvJogICUuKnMgPCUuKnM+IgogCiAjICDor5HogIXvvJrkuLrkv53or4HlnKjovpPlh7rkuK3lr7npvZDvvIzms6jmhI/osIPmlbTlj6XkuK3nqbrmoLzvvIEKLSM6IGJ1aWx0aW4vY29tbWl0LmM6ODYyCisjOiBidWlsdGluL2NvbW1pdC5jOjkwNAogIywgYy1mb3JtYXQKIG1zZ2lkICIlc0RhdGU6ICAgICAgJXMiCiBtc2dzdHIgIiVz5pel5pyf77yaICAlcyIKIAogIyAg6K+R6ICF77ya5Li65L+d6K+B5Zyo6L6T5Ye65Lit5a+56b2Q77yM5rOo5oSP6LCD5pW05Y+l5Lit56m65qC877yBCi0jOiBidWlsdGluL2NvbW1pdC5jOjg2OQorIzogYnVpbHRpbi9jb21taXQuYzo5MTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXNDb21taXR0ZXI6ICUuKnMgPCUuKnM+IgogbXNnc3RyICIlc+aPkOS6pOiAhe+8miUuKnMgPCUuKnM+IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjg4NworIzogYnVpbHRpbi9jb21taXQuYzo5MjkKIG1zZ2lkICJDYW5ub3QgcmVhZCBpbmRleCIKIG1zZ3N0ciAi5peg5rOV6K+75Y+W57Si5byVIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjk1MworIzogYnVpbHRpbi9jb21taXQuYzo5OTcKIG1zZ2lkICJFcnJvciBidWlsZGluZyB0cmVlcyIKIG1zZ3N0ciAi5peg5rOV5Yib5bu65qCR5a+56LGhIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjk2NyBidWlsdGluL3RhZy5jOjI1OAorIzogYnVpbHRpbi9jb21taXQuYzoxMDExIGJ1aWx0aW4vdGFnLmM6Mjc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIlBsZWFzZSBzdXBwbHkgdGhlIG1lc3NhZ2UgdXNpbmcgZWl0aGVyIC1tIG9yIC1GIG9wdGlvbi5cbiIKIG1zZ3N0ciAi6K+35L2/55SoIC1tIOaIliAtRiDpgInpobnmj5Dkvpvmj5DkuqTor7TmmI7jgIJcbiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMDExCisjOiBidWlsdGluL2NvbW1pdC5jOjEwNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiLS1hdXRob3IgJyVzJyBpcyBub3QgJ05hbWUgPGVtYWlsPicgYW5kIG1hdGNoZXMgbm8gZXhpc3RpbmcgYXV0aG9yIgogbXNnc3RyICItLWF1dGhvciAnJXMnIOS4jeaYryAn5aeT5ZCNIDzpgq7nrrE+JyDmoLzlvI/vvIzkuJTmnKrog73lnKjnjrDmnInkvZzogIXkuK3mib7liLDljLnphY0iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTAyNQorIzogYnVpbHRpbi9jb21taXQuYzoxMDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgaWdub3JlZCBtb2RlICclcyciCiBtc2dzdHIgIuaXoOaViOeahOW/veeVpeaooeW8jyAnJXMnIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEwMzkgYnVpbHRpbi9jb21taXQuYzoxMjc2CisjOiBidWlsdGluL2NvbW1pdC5jOjEwODcgYnVpbHRpbi9jb21taXQuYzoxMzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdW50cmFja2VkIGZpbGVzIG1vZGUgJyVzJyIKIG1zZ3N0ciAi5peg5pWI55qE5pyq6L+96Liq5paH5Lu25Y+C5pWwICclcyciCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTA3NworIzogYnVpbHRpbi9jb21taXQuYzoxMTI3CiBtc2dpZCAiLS1sb25nIGFuZCAteiBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWxvbmcg5ZKMIC16IOmAiemhueS4jeWFvOWuuSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTEwCisjOiBidWlsdGluL2NvbW1pdC5jOjExNzEKIG1zZ2lkICJVc2luZyBib3RoIC0tcmVzZXQtYXV0aG9yIGFuZCAtLWF1dGhvciBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICLlkIzml7bkvb/nlKggLS1yZXNldC1hdXRob3Ig5ZKMIC0tYXV0aG9yIOayoeacieaEj+S5iSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTE5CisjOiBidWlsdGluL2NvbW1pdC5jOjExODAKIG1zZ2lkICJZb3UgaGF2ZSBub3RoaW5nIHRvIGFtZW5kLiIKIG1zZ3N0ciAi5oKo5rKh5pyJ5Y+v5L+u6KGl55qE5o+Q5Lqk44CCIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MwogbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIC0tIGNhbm5vdCBhbWVuZC4iCiBtc2dzdHIgIuaCqOato+WkhOS6juS4gOS4quWQiOW5tui/h+eoi+S4rSAtLSDml6Dms5Xkv67ooaXmj5DkuqTjgIIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEyNAorIzogYnVpbHRpbi9jb21taXQuYzoxMTg1CiBtc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgY2hlcnJ5LXBpY2sgLS0gY2Fubm90IGFtZW5kLiIKIG1zZ3N0ciAi5oKo5q2j5aSE5LqO5LiA5Liq5ouj6YCJ6L+H56iL5LitIC0tIOaXoOazleS/ruihpeaPkOS6pOOAgiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTI3CisjOiBidWlsdGluL2NvbW1pdC5jOjExODgKIG1zZ2lkICJPcHRpb25zIC0tc3F1YXNoIGFuZCAtLWZpeHVwIGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIgogbXNnc3RyICLpgInpobkgLS1zcXVhc2gg5ZKMIC0tZml4dXAg5LiN6IO95ZCM5pe25L2/55SoIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExMzcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTE5OAogbXNnaWQgIk9ubHkgb25lIG9mIC1jLy1DLy1GLy0tZml4dXAgY2FuIGJlIHVzZWQuIgogbXNnc3RyICLlj6rog73nlKjkuIDkuKogLWMvLUMvLUYvLS1maXh1cCDpgInpobnjgIIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTEzOQorIzogYnVpbHRpbi9jb21taXQuYzoxMjAwCiBtc2dpZCAiT3B0aW9uIC1tIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIC1jLy1DLy1GLiIKIG1zZ3N0ciAi6YCJ6aG5IC1tIOS4jeiDveWSjCAtYy8tQy8tRiDlkIzml7bkvb/nlKjjgIIiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE0NworIzogYnVpbHRpbi9jb21taXQuYzoxMjA4CiBtc2dpZCAiLS1yZXNldC1hdXRob3IgY2FuIGJlIHVzZWQgb25seSB3aXRoIC1DLCAtYyBvciAtLWFtZW5kLiIKIG1zZ3N0ciAiLS1yZXNldC1hdXRob3Ig5Y+q6IO95ZKMIC1D44CBLWMg5oiWIC0tYW1lbmQg5ZCM5pe25L2/55So44CCIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjExNjQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIyNQogbXNnaWQgIk9ubHkgb25lIG9mIC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIGNhbiBiZSB1c2VkLiIKIG1zZ3N0ciAi5Y+q6IO955So5LiA5LiqIC0taW5jbHVkZS8tLW9ubHkvLS1hbGwvLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIOmAiemhueOAgiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMTY2Ci1tc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgotbXNnc3RyICLlj4LmlbAgLS1pbmNsdWRlLy0tb25seSDkuI3ot5/ot6/lvoTmsqHmnInmhI/kuYnjgIIiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4MCBidWlsdGluL3RhZy5jOjU0NgorIzogYnVpbHRpbi9jb21taXQuYzoxMjMxCiAjLCBjLWZvcm1hdAotbXNnaWQgIkludmFsaWQgY2xlYW51cCBtb2RlICVzIgotbXNnc3RyICLml6DmlYjnmoTmuIXnkIbmqKHlvI8gJXMiCittc2dpZCAicGF0aHMgJyVzIC4uLicgd2l0aCAtYSBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICLot6/lvoQgICclcyAuLi4nIOWSjCAtYSDpgInpobnlkIzml7bkvb/nlKjmsqHmnInmhI/kuYkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTE4NQotbXNnaWQgIlBhdGhzIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZS4iCi1tc2dzdHIgIui3r+W+hOWSjCAtYSDpgInpobnlkIzml7bkvb/nlKjmsqHmnInmhI/kuYnjgIIiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxMSBidWlsdGluL2NvbW1pdC5jOjE0OTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MiBidWlsdGluL2NvbW1pdC5jOjE1MjQKIG1zZ2lkICJzaG93IHN0YXR1cyBjb25jaXNlbHkiCiBtc2dzdHIgIuS7peeugOa0geeahOagvOW8j+aYvuekuueKtuaAgSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxMzEzIGJ1aWx0aW4vY29tbWl0LmM6MTQ5NworIzogYnVpbHRpbi9jb21taXQuYzoxMzY0IGJ1aWx0aW4vY29tbWl0LmM6MTUyNgogbXNnaWQgInNob3cgYnJhbmNoIGluZm9ybWF0aW9uIgogbXNnc3RyICLmmL7npLrliIbmlK/kv6Hmga8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxNQorIzogYnVpbHRpbi9jb21taXQuYzoxMzY2CiBtc2dpZCAic2hvdyBzdGFzaCBpbmZvcm1hdGlvbiIKIG1zZ3N0ciAi5pi+56S66LSu6JeP5Yy65L+h5oGvIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTcgYnVpbHRpbi9jb21taXQuYzoxNDk5CisjOiBidWlsdGluL2NvbW1pdC5jOjEzNjggYnVpbHRpbi9jb21taXQuYzoxNTI4CiBtc2dpZCAiY29tcHV0ZSBmdWxsIGFoZWFkL2JlaGluZCB2YWx1ZXMiCiBtc2dzdHIgIuiuoeeul+WujOaVtOeahOmihuWFiC/okL3lkI7lgLwiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMxOQorIzogYnVpbHRpbi9jb21taXQuYzoxMzcwCiBtc2dpZCAidmVyc2lvbiIKIG1zZ3N0ciAi54mI5pysIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMTkgYnVpbHRpbi9jb21taXQuYzoxNTAxIGJ1aWx0aW4vcHVzaC5jOjU1OAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjYzOQorIzogYnVpbHRpbi9jb21taXQuYzoxMzcwIGJ1aWx0aW4vY29tbWl0LmM6MTUzMCBidWlsdGluL3B1c2guYzo1NDkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NDMKIG1zZ2lkICJtYWNoaW5lLXJlYWRhYmxlIG91dHB1dCIKIG1zZ3N0ciAi5py65Zmo5Y+v6K+755qE6L6T5Ye6IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMjIgYnVpbHRpbi9jb21taXQuYzoxNTAzCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzMgYnVpbHRpbi9jb21taXQuYzoxNTMyCiBtc2dpZCAic2hvdyBzdGF0dXMgaW4gbG9uZyBmb3JtYXQgKGRlZmF1bHQpIgogbXNnc3RyICLku6Xplb/moLzlvI/mmL7npLrnirbmgIHvvIjpu5jorqTvvIkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNSBidWlsdGluL2NvbW1pdC5jOjE1MDYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3NiBidWlsdGluL2NvbW1pdC5jOjE1MzUKIG1zZ2lkICJ0ZXJtaW5hdGUgZW50cmllcyB3aXRoIE5VTCIKIG1zZ3N0ciAi5p2h55uu5LulIE5VTCDlrZfnrKbnu5PlsL4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyNyBidWlsdGluL2NvbW1pdC5jOjEzMzEgYnVpbHRpbi9jb21taXQuYzoxNTA5Ci0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAwNyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxMCBidWlsdGluL3JlYmFzZS5jOjkxMAotIzogYnVpbHRpbi90YWcuYzo0MDAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3OCBidWlsdGluL2NvbW1pdC5jOjEzODIgYnVpbHRpbi9jb21taXQuYzoxNTM4CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1MyBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1NgorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTkgYnVpbHRpbi9yZWJhc2UuYzoxNTY5IHBhcnNlLW9wdGlvbnMuaDozMzYKIG1zZ2lkICJtb2RlIgogbXNnc3RyICLmqKHlvI8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMyOCBidWlsdGluL2NvbW1pdC5jOjE1MDkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3OSBidWlsdGluL2NvbW1pdC5jOjE1MzgKIG1zZ2lkICJzaG93IHVudHJhY2tlZCBmaWxlcywgb3B0aW9uYWwgbW9kZXM6IGFsbCwgbm9ybWFsLCBuby4gKERlZmF1bHQ6IGFsbCkiCiBtc2dzdHIgIuaYvuekuuacqui3n+i4queahOaWh+S7tu+8jOKAnOaooeW8j+KAneeahOWPr+mAieWPguaVsO+8mmFsbOOAgW5vcm1hbOOAgW5v44CC77yI6buY6K6k77yaYWxs77yJIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4MwogbXNnaWQgIiIKICJzaG93IGlnbm9yZWQgZmlsZXMsIG9wdGlvbmFsIG1vZGVzOiB0cmFkaXRpb25hbCwgbWF0Y2hpbmcsIG5vLiAoRGVmYXVsdDogIgogInRyYWRpdGlvbmFsKSIKIG1zZ3N0ciAiIgogIuaYvuekuuW3suW/veeVpeeahOaWh+S7tu+8jOWPr+mAieaooeW8j++8mnRyYWRpdGlvbmFs44CBbWF0Y2hpbmfjgIFub+OAgu+8iOm7mOiupO+8mnRyYWRpdGlvbmFs77yJIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzQgcGFyc2Utb3B0aW9ucy5oOjE2NAorIzogYnVpbHRpbi9jb21taXQuYzoxMzg1IHBhcnNlLW9wdGlvbnMuaDoxOTIKIG1zZ2lkICJ3aGVuIgogbXNnc3RyICLkvZXml7YiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMzNQorIzogYnVpbHRpbi9jb21taXQuYzoxMzg2CiBtc2dpZCAiIgogImlnbm9yZSBjaGFuZ2VzIHRvIHN1Ym1vZHVsZXMsIG9wdGlvbmFsIHdoZW46IGFsbCwgZGlydHksIHVudHJhY2tlZC4gIgogIihEZWZhdWx0OiBhbGwpIgogbXNnc3RyICIiCiAi5b+955Wl5a2Q5qih57uE55qE5pu05pS577yM4oCc5L2V5pe24oCd55qE5Y+v6YCJ5Y+C5pWw77yaYWxs44CBZGlydHnjgIF1bnRyYWNrZWTjgILvvIjpu5jorqTvvJphbGzvvIkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTMzNworIzogYnVpbHRpbi9jb21taXQuYzoxMzg4CiBtc2dpZCAibGlzdCB1bnRyYWNrZWQgZmlsZXMgaW4gY29sdW1ucyIKIG1zZ3N0ciAi5Lul5YiX55qE5pa55byP5pi+56S65pyq6Lef6Liq55qE5paH5Lu2IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzMzgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4OQogbXNnaWQgImRvIG5vdCBkZXRlY3QgcmVuYW1lcyIKIG1zZ3N0ciAi5LiN5qOA5rWL6YeN5ZG95ZCNIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjEzNDAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM5MQogbXNnaWQgImRldGVjdCByZW5hbWVzLCBvcHRpb25hbGx5IHNldCBzaW1pbGFyaXR5IGluZGV4IgogbXNnc3RyICLmo4DmtYvph43lkb3lkI3vvIzlj6/ku6Xorr7nva7ntKLlvJXnm7jkvLzluqYiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MAorIzogYnVpbHRpbi9jb21taXQuYzoxNDExCiBtc2dpZCAiVW5zdXBwb3J0ZWQgY29tYmluYXRpb24gb2YgaWdub3JlZCBhbmQgdW50cmFja2VkLWZpbGVzIGFyZ3VtZW50cyIKIG1zZ3N0ciAi5LiN5pSv5oyB5bey5b+955Wl5ZKM5pyq6Lef6Liq5paH5Lu25Y+C5pWw55qE57uE5ZCIIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NAogbXNnaWQgInN1cHByZXNzIHN1bW1hcnkgYWZ0ZXIgc3VjY2Vzc2Z1bCBjb21taXQiCiBtc2dzdHIgIuaPkOS6pOaIkOWKn+WQjuS4jeaYvuekuuamgui/sOS/oeaBryIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDY2CisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTUKIG1zZ2lkICJzaG93IGRpZmYgaW4gY29tbWl0IG1lc3NhZ2UgdGVtcGxhdGUiCiBtc2dzdHIgIuWcqOaPkOS6pOivtOaYjuaooeadv+mHjOaYvuekuuW3ruW8giIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDY4CisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTcKIG1zZ2lkICJDb21taXQgbWVzc2FnZSBvcHRpb25zIgogbXNnc3RyICLmj5DkuqTor7TmmI7pgInpobkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ2OSBidWlsdGluL21lcmdlLmM6MjYzIGJ1aWx0aW4vdGFnLmM6Mzk3CisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTggYnVpbHRpbi9tZXJnZS5jOjI3NSBidWlsdGluL3RhZy5jOjQxNAogbXNnaWQgInJlYWQgbWVzc2FnZSBmcm9tIGZpbGUiCiBtc2dzdHIgIuS7juaWh+S7tuS4reivu+WPluaPkOS6pOivtOaYjiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcwCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTkKIG1zZ2lkICJhdXRob3IiCiBtc2dzdHIgIuS9nOiAhSIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDcwCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTkKIG1zZ2lkICJvdmVycmlkZSBhdXRob3IgZm9yIGNvbW1pdCIKIG1zZ3N0ciAi5o+Q5Lqk5pe26KaG55uW5L2c6ICFIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzEgYnVpbHRpbi9nYy5jOjUxOAorIzogYnVpbHRpbi9jb21taXQuYzoxNTAwIGJ1aWx0aW4vZ2MuYzo1MzgKIG1zZ2lkICJkYXRlIgogbXNnc3RyICLml6XmnJ8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MQorIzogYnVpbHRpbi9jb21taXQuYzoxNTAwCiBtc2dpZCAib3ZlcnJpZGUgZGF0ZSBmb3IgY29tbWl0IgogbXNnc3RyICLmj5DkuqTml7bopobnm5bml6XmnJ8iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MiBidWlsdGluL21lcmdlLmM6MjU5IGJ1aWx0aW4vbm90ZXMuYzo0MDkKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1NzIgYnVpbHRpbi90YWcuYzozOTUKLW1zZ2lkICJtZXNzYWdlIgotbXNnc3RyICLor7TmmI4iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MgotbXNnaWQgImNvbW1pdCBtZXNzYWdlIgotbXNnc3RyICLmj5DkuqTor7TmmI4iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3MyBidWlsdGluL2NvbW1pdC5jOjE0NzQgYnVpbHRpbi9jb21taXQuYzoxNDc1Ci0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzYgcmVmLWZpbHRlci5oOjkyIHBhcnNlLW9wdGlvbnMuaDoyODAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMiBidWlsdGluL2NvbW1pdC5jOjE1MDMgYnVpbHRpbi9jb21taXQuYzoxNTA0CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDUgcGFyc2Utb3B0aW9ucy5oOjMyOCByZWYtZmlsdGVyLmg6OTIKIG1zZ2lkICJjb21taXQiCiBtc2dzdHIgIuaPkOS6pCIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDczCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDIKIG1zZ2lkICJyZXVzZSBhbmQgZWRpdCBtZXNzYWdlIGZyb20gc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAi6YeN55So5bm257yW6L6R5oyH5a6a5o+Q5Lqk55qE5o+Q5Lqk6K+05piOIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzQKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMwogbXNnaWQgInJldXNlIG1lc3NhZ2UgZnJvbSBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICLph43nlKjmjIflrprmj5DkuqTnmoTmj5DkuqTor7TmmI4iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NQorIzogYnVpbHRpbi9jb21taXQuYzoxNTA0CiBtc2dpZCAidXNlIGF1dG9zcXVhc2ggZm9ybWF0dGVkIG1lc3NhZ2UgdG8gZml4dXAgc3BlY2lmaWVkIGNvbW1pdCIKIG1zZ3N0ciAi5L2/55SoIGF1dG9zcXVhc2gg5qC85byP55qE5o+Q5Lqk6K+05piO55So5Lul5L+u5q2j5oyH5a6a55qE5o+Q5LqkIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzYKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNQogbXNnaWQgInVzZSBhdXRvc3F1YXNoIGZvcm1hdHRlZCBtZXNzYWdlIHRvIHNxdWFzaCBzcGVjaWZpZWQgY29tbWl0IgogbXNnc3RyICLkvb/nlKggYXV0b3NxdWFzaCDmoLzlvI/nmoTmj5DkuqTor7TmmI7nlKjku6XljovnvKnoh7PmjIflrprnmoTmj5DkuqQiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3NworIzogYnVpbHRpbi9jb21taXQuYzoxNTA2CiBtc2dpZCAidGhlIGNvbW1pdCBpcyBhdXRob3JlZCBieSBtZSBub3cgKHVzZWQgd2l0aCAtQy8tYy8tLWFtZW5kKSIKIG1zZ3N0ciAi546w5Zyo5bCG6K+l5o+Q5Lqk55qE5L2c6ICF5pS55Li65oiR77yI5ZKMIC1DLy1jLy0tYW1lbmQg5Y+C5pWw5YWx55So77yJIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0NzggYnVpbHRpbi9sb2cuYzoxNTIwIGJ1aWx0aW4vbWVyZ2UuYzoyNzYKLSM6IGJ1aWx0aW4vcHVsbC5jOjE1NSBidWlsdGluL3JldmVydC5jOjEwNgorIzogYnVpbHRpbi9jb21taXQuYzoxNTA3IGJ1aWx0aW4vbG9nLmM6MTYzNCBidWlsdGluL21lcmdlLmM6MjkwCisjOiBidWlsdGluL3B1bGwuYzoxNDQgYnVpbHRpbi9yZXZlcnQuYzoxMTAKIG1zZ2lkICJhZGQgU2lnbmVkLW9mZi1ieToiCiBtc2dzdHIgIua3u+WKoCBTaWduZWQtb2ZmLWJ5OiDnrb7lkI0iCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ3OQorIzogYnVpbHRpbi9jb21taXQuYzoxNTA4CiBtc2dpZCAidXNlIHNwZWNpZmllZCB0ZW1wbGF0ZSBmaWxlIgogbXNnc3RyICLkvb/nlKjmjIflrprnmoTmqKHmnb/mlofku7YiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MAorIzogYnVpbHRpbi9jb21taXQuYzoxNTA5CiBtc2dpZCAiZm9yY2UgZWRpdCBvZiBjb21taXQiCiBtc2dzdHIgIuW8uuWItue8lui+keaPkOS6pCIKIAotIyAg6K+R6ICF77ya5Y+v6YCJ5YC877yM5LiN6IO957+76K+R77yI5oiW5piv5Y6f5paH5Lit56yU6K+v77yM5bqU5Li6IG1vZGXvvIkKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MQotbXNnaWQgImRlZmF1bHQiCi1tc2dzdHIgImRlZmF1bHQiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MSBidWlsdGluL3RhZy5jOjQwMQotbXNnaWQgImhvdyB0byBzdHJpcCBzcGFjZXMgYW5kICNjb21tZW50cyBmcm9tIG1lc3NhZ2UiCi1tc2dzdHIgIuiuvue9ruWmguS9leWIoOmZpOaPkOS6pOivtOaYjumHjOeahOepuuagvOWSjCPms6jph4oiCi0KLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ4MgorIzogYnVpbHRpbi9jb21taXQuYzoxNTExCiBtc2dpZCAiaW5jbHVkZSBzdGF0dXMgaW4gY29tbWl0IG1lc3NhZ2UgdGVtcGxhdGUiCiBtc2dzdHIgIuWcqOaPkOS6pOivtOaYjuaooeadv+mHjOWMheWQq+eKtuaAgeS/oeaBryIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNDg0IGJ1aWx0aW4vbWVyZ2UuYzoyNzQgYnVpbHRpbi9wdWxsLmM6MTg1Ci0jOiBidWlsdGluL3JldmVydC5jOjExNAotbXNnaWQgIkdQRyBzaWduIGNvbW1pdCIKLW1zZ3N0ciAiR1BHIOaPkOS6pOetvuWQjSIKLQotIzogYnVpbHRpbi9jb21taXQuYzoxNDg3CisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTYKIG1zZ2lkICJDb21taXQgY29udGVudHMgb3B0aW9ucyIKIG1zZ3N0ciAi5o+Q5Lqk5YaF5a656YCJ6aG5IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNwogbXNnaWQgImNvbW1pdCBhbGwgY2hhbmdlZCBmaWxlcyIKIG1zZ3N0ciAi5o+Q5Lqk5omA5pyJ5pS55Yqo55qE5paH5Lu2IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0ODkKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxOAogbXNnaWQgImFkZCBzcGVjaWZpZWQgZmlsZXMgdG8gaW5kZXggZm9yIGNvbW1pdCIKIG1zZ3N0ciAi5re75Yqg5oyH5a6a55qE5paH5Lu25Yiw57Si5byV5Yy6562J5b6F5o+Q5LqkIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxOQogbXNnaWQgImludGVyYWN0aXZlbHkgYWRkIGZpbGVzIgogbXNnc3RyICLkuqTkupLlvI/mt7vliqDmlofku7YiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5MQorIzogYnVpbHRpbi9jb21taXQuYzoxNTIwCiBtc2dpZCAiaW50ZXJhY3RpdmVseSBhZGQgY2hhbmdlcyIKIG1zZ3N0ciAi5Lqk5LqS5byP5re75Yqg5Y+Y5pu0IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMQogbXNnaWQgImNvbW1pdCBvbmx5IHNwZWNpZmllZCBmaWxlcyIKIG1zZ3N0ciAi5Y+q5o+Q5Lqk5oyH5a6a55qE5paH5Lu2IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE0OTMKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUyMgogbXNnaWQgImJ5cGFzcyBwcmUtY29tbWl0IGFuZCBjb21taXQtbXNnIGhvb2tzIgogbXNnc3RyICLnu5Xov4cgcHJlLWNvbW1pdCDlkowgY29tbWl0LW1zZyDpkqnlrZAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NAorIzogYnVpbHRpbi9jb21taXQuYzoxNTIzCiBtc2dpZCAic2hvdyB3aGF0IHdvdWxkIGJlIGNvbW1pdHRlZCIKIG1zZ3N0ciAi5pi+56S65bCG6KaB5o+Q5Lqk55qE5YaF5a65IgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MDcKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUzNgogbXNnaWQgImFtZW5kIHByZXZpb3VzIGNvbW1pdCIKIG1zZ3N0ciAi5L+u5pS55YWI5YmN55qE5o+Q5LqkIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MDgKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUzNwogbXNnaWQgImJ5cGFzcyBwb3N0LXJld3JpdGUgaG9vayIKIG1zZ3N0ciAi57uV6L+HIHBvc3QtcmV3cml0ZSDpkqnlrZAiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxMworIzogYnVpbHRpbi9jb21taXQuYzoxNTQ0CiBtc2dpZCAib2sgdG8gcmVjb3JkIGFuIGVtcHR5IGNoYW5nZSIKIG1zZ3N0ciAi5YWB6K645LiA5Liq56m65o+Q5LqkIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE1MTUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTU0NgogbXNnaWQgIm9rIHRvIHJlY29yZCBhIGNoYW5nZSB3aXRoIGFuIGVtcHR5IG1lc3NhZ2UiCiBtc2dzdHIgIuWFgeiuuOepuueahOaPkOS6pOivtOaYjiIKIAotIzogYnVpbHRpbi9jb21taXQuYzoxNTg4CisjOiBidWlsdGluL2NvbW1pdC5jOjE2MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ29ycnVwdCBNRVJHRV9IRUFEIGZpbGUgKCVzKSIKIG1zZ3N0ciAi5o2f5Z2P55qEIE1FUkdFX0hFQUQg5paH5Lu277yIJXPvvIkiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTU5NQorIzogYnVpbHRpbi9jb21taXQuYzoxNjI2CiBtc2dpZCAiY291bGQgbm90IHJlYWQgTUVSR0VfTU9ERSIKIG1zZ3N0ciAi5LiN6IO96K+75Y+WIE1FUkdFX01PREUiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTYxNAorIzogYnVpbHRpbi9jb21taXQuYzoxNjQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCByZWFkIGNvbW1pdCBtZXNzYWdlOiAlcyIKIG1zZ3N0ciAi5LiN6IO96K+75Y+W5o+Q5Lqk6K+05piO77yaJXMiCiAKLSM6IGJ1aWx0aW4vY29tbWl0LmM6MTYyNQorIzogYnVpbHRpbi9jb21taXQuYzoxNjUyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkFib3J0aW5nIGNvbW1pdCBkdWUgdG8gZW1wdHkgY29tbWl0IG1lc3NhZ2UuXG4iCiBtc2dzdHIgIue7iOatouaPkOS6pOWboOS4uuaPkOS6pOivtOaYjuS4uuepuuOAglxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE2MzAKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJBYm9ydGluZyBjb21taXQ7IHlvdSBkaWQgbm90IGVkaXQgdGhlIG1lc3NhZ2UuXG4iCiBtc2dzdHIgIue7iOatouaPkOS6pO+8m+aCqOacquabtOaUueadpeiHquaooeeJiOeahOaPkOS6pOivtOaYjuOAglxuIgogCi0jOiBidWlsdGluL2NvbW1pdC5jOjE2NjUKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY5MQogbXNnaWQgIiIKICJyZXBvc2l0b3J5IGhhcyBiZWVuIHVwZGF0ZWQsIGJ1dCB1bmFibGUgdG8gd3JpdGVcbiIKICJuZXdfaW5kZXggZmlsZS4gQ2hlY2sgdGhhdCBkaXNrIGlzIG5vdCBmdWxsIGFuZCBxdW90YSBpc1xuIgotIm5vdCBleGNlZWRlZCwgYW5kIHRoZW4gXCJnaXQgcmVzZXQgSEVBRFwiIHRvIHJlY292ZXIuIgorIm5vdCBleGNlZWRlZCwgYW5kIHRoZW4gXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA6L1wiIHRvIHJlY292ZXIuIgogbXNnc3RyICIiCi0i5LuT5bqT5bey5pu05paw77yM5L2G5peg5rOV5YaZIG5ld19pbmRleCDmlofku7bjgILmo4Dmn6XmmK/lkKbno4Hnm5jlt7Lmu6FcbiIKLSLmiJbno4Hnm5jphY3pop3lt7LogJflsL3vvIznhLblkI7miafooYwgXCJnaXQgcmVzZXQgSEVBRFwiIOaBouWkjeOAgiIKKyLku5PlupPlt7Lmm7TmlrDvvIzkvYbml6Dms5XlhpkgbmV3X2luZGV4IOaWh+S7tuOAguajgOafpeaYr+WQpuejgeebmOW3sua7oeaIllxuIgorIuejgeebmOmFjemineW3suiAl+Wwve+8jOeEtuWQjuaJp+ihjCBcImdpdCByZXN0b3JlIC0tc3RhZ2VkIDovXCIg5oGi5aSN44CCIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEwCi1tc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSIKLW1zZ3N0ciAiZ2l0IGNvbW1pdC1ncmFwaCBbLS1vYmplY3QtZGlyIDzlr7nosaHnm67lvZU+XSIKLQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIzCi1tc2dpZCAiZ2l0IGNvbW1pdC1ncmFwaCByZWFkIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgotbXNnc3RyICJnaXQgY29tbWl0LWdyYXBoIHJlYWQgWy0tb2JqZWN0LWRpciA85a+56LGh55uu5b2VPl0iCi0KLSM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTIgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxOAotbXNnaWQgImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPG9iamRpcj5dIgotbXNnc3RyICJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDzlr7nosaHnm67lvZU+XSIKLQotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMyBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjI4CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjExIGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTcKIG1zZ2lkICIiCi0iZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1hcHBlbmRdIFstLXJlYWNoYWJsZXwtLSIKLSJzdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIgorImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPG9iamRpcj5dIFstLXNoYWxsb3ddIFstLVtuby1dcHJvZ3Jlc3NdIgogbXNnc3RyICIiCi0iZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSBbLS1vYmplY3QtZGlyIDzlr7nosaHnm67lvZU+XSBbLS1hcHBlbmRdIFstLXJlYWNoYWJsZXwtLSIKLSJzdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIgorImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPOWvueixoeebruW9lT5dIFstLXNoYWxsb3ddIFstLSIKKyJbbm8tXXByb2dyZXNzXSIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo0OCBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjc4Ci0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE5MCBidWlsdGluL2ZldGNoLmM6MTUzCi0jOiBidWlsdGluL2xvZy5jOjE1NDAKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTIgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMgorbXNnaWQgIiIKKyJnaXQgY29tbWl0LWdyYXBoIHdyaXRlIFstLW9iamVjdC1kaXIgPG9iamRpcj5dIFstLWFwcGVuZHwtLXNwbGl0XSBbLS0iCisicmVhY2hhYmxlfC0tc3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSBbLS1bbm8tXXByb2dyZXNzXSA8c3BsaXQgb3B0aW9ucz4iCittc2dzdHIgIiIKKyJnaXQgY29tbWl0LWdyYXBoIHdyaXRlIFstLW9iamVjdC1kaXIgPOWvueixoeebruW9lT5dIFstLWFwcGVuZHwtLXNwbGl0XSBbLS0iCisicmVhY2hhYmxlfC0tc3RkaW4tcGFja3N8LS1zdGRpbi1jb21taXRzXSBbLS1bbm8tXXByb2dyZXNzXSA8c3BsaXQgb3B0aW9ucz4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZpbmQgb2JqZWN0IGRpcmVjdG9yeSBtYXRjaGluZyAlcyIKK21zZ3N0ciAi5peg5rOV5om+5Yiw5ZKMICVzIOWMuemFjeeahOWvueixoeebruW9lSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo2OCBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyNQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMTAgYnVpbHRpbi9mZXRjaC5jOjE3OSBidWlsdGluL2xvZy5jOjE2NTcKIG1zZ2lkICJkaXIiCiBtc2dzdHIgIuebruW9lSIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo0OSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjc5Ci0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzMyBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE5MQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo2OSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyNgorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoyMTEKIG1zZ2lkICJUaGUgb2JqZWN0IGRpcmVjdG9yeSB0byBzdG9yZSB0aGUgZ3JhcGgiCiBtc2dzdHIgIuS/neWtmOWbvuW9oueahOWvueixoeebruW9lSIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzUKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6NzEKK21zZ2lkICJpZiB0aGUgY29tbWl0LWdyYXBoIGlzIHNwbGl0LCBvbmx5IHZlcmlmeSB0aGUgdGlwIGZpbGUiCittc2dzdHIgIuWmguaenOaPkOS6pOWbvuW9ouiiq+aLhuWIhu+8jOWPqumqjOivgeWktOS4gOS4quaWh+S7tiIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo5NCB0L2hlbHBlci90ZXN0LXJlYWQtZ3JhcGguYzoyMworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgb3BlbiBjb21taXQtZ3JhcGggJyVzJyIKK21zZ3N0ciAi5peg5rOV5omT5byA5o+Q5Lqk5Zu+5b2iICclcyciCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTI4CiBtc2dpZCAic3RhcnQgd2FsayBhdCBhbGwgcmVmcyIKIG1zZ3N0ciAi5byA5aeL6YGN5Y6G5omA5pyJ5byV55SoIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzNworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzAKIG1zZ2lkICJzY2FuIHBhY2staW5kZXhlcyBsaXN0ZWQgYnkgc3RkaW4gZm9yIGNvbW1pdHMiCiBtc2dzdHIgIuS7juagh+WHhui+k+WFpeS4reeahOWMhee0ouW8leaWh+S7tuWIl+ihqOS4reaJq+aPj+aPkOS6pCIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzkKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTMyCiBtc2dpZCAic3RhcnQgd2FsayBhdCBjb21taXRzIGxpc3RlZCBieSBzdGRpbiIKIG1zZ3N0ciAi5LuO5qCH5YeG6L6T5YWl5Lit55qE5o+Q5Lqk5byA5aeL5omr5o+PIgogCi0jOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0MQorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzQKIG1zZ2lkICJpbmNsdWRlIGFsbCBjb21taXRzIGFscmVhZHkgaW4gdGhlIGNvbW1pdC1ncmFwaCBmaWxlIgogbXNnc3RyICLljIXlkKsgY29tbWl0LWdyYXBoIOaWh+S7tuS4reW3suacieaJgOacieaPkOS6pCIKIAotIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNTAKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM3Cittc2dpZCAiYWxsb3cgd3JpdGluZyBhbiBpbmNyZW1lbnRhbCBjb21taXQtZ3JhcGggZmlsZSIKK21zZ3N0ciAi5YWB6K645YaZ5LiA5Liq5aKe6YeP5o+Q5Lqk5Zu+5b2i5paH5Lu2IgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzOSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0MworbXNnaWQgIm1heGltdW0gbnVtYmVyIG9mIGNvbW1pdHMgaW4gYSBub24tYmFzZSBzcGxpdCBjb21taXQtZ3JhcGgiCittc2dzdHIgIuWcqOmdnuWfuuacrOaLhuWIhuaPkOS6pOWbvuW9ouS4reeahOacgOWkp+aPkOS6pOaVsCIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDEKK21zZ2lkICJtYXhpbXVtIHJhdGlvIGJldHdlZW4gdHdvIGxldmVscyBvZiBhIHNwbGl0IGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAi5LiA5Liq5ouG5YiG5o+Q5Lqk5Zu+5b2i55qE5Lik5Liq57qn5Yir5LmL6Ze055qE5pyA5aSn5q+U546HIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE1OQogbXNnaWQgInVzZSBhdCBtb3N0IG9uZSBvZiAtLXJlYWNoYWJsZSwgLS1zdGRpbi1jb21taXRzLCBvciAtLXN0ZGluLXBhY2tzIgogbXNnc3RyICLkuI3og73lkIzml7bkvb/nlKggLS1yZWFjaGFibGXjgIEtLXN0ZGluLWNvbW1pdHMg5oiWIC0tc3RkaW4tcGFja3MiCiAKQEAgLTEwMDcxLDIwNSArMTI3OTIsMjA5IEBACiBtc2dpZCAiZ2l0IGNvbmZpZyBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IGNvbmZpZyBbPOmAiemhuT5dIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEwMworIzogYnVpbHRpbi9jb25maWcuYzoxMDQgYnVpbHRpbi9lbnYtLWhlbHBlci5jOjIzCiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCAtLXR5cGUgYXJndW1lbnQsICVzIgogbXNnc3RyICLmnKrog73or4bliKvnmoQgLS10eXBlIOWPguaVsO+8jCVzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjExNQorIzogYnVpbHRpbi9jb25maWcuYzoxMTYKIG1zZ2lkICJvbmx5IG9uZSB0eXBlIGF0IGEgdGltZSIKIG1zZ3N0ciAi5LiA5qyh5Y+q6IO95LiA5Liq57G75Z6LIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNAorIzogYnVpbHRpbi9jb25maWcuYzoxMjUKIG1zZ2lkICJDb25maWcgZmlsZSBsb2NhdGlvbiIKIG1zZ3N0ciAi6YWN572u5paH5Lu25L2N572uIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyNQorIzogYnVpbHRpbi9jb25maWcuYzoxMjYKIG1zZ2lkICJ1c2UgZ2xvYmFsIGNvbmZpZyBmaWxlIgogbXNnc3RyICLkvb/nlKjlhajlsYDphY3nva7mlofku7YiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTI2CisjOiBidWlsdGluL2NvbmZpZy5jOjEyNwogbXNnaWQgInVzZSBzeXN0ZW0gY29uZmlnIGZpbGUiCiBtc2dzdHIgIuS9v+eUqOezu+e7n+e6p+mFjee9ruaWh+S7tiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI4CiBtc2dpZCAidXNlIHJlcG9zaXRvcnkgY29uZmlnIGZpbGUiCiBtc2dzdHIgIuS9v+eUqOS7k+W6k+e6p+mFjee9ruaWh+S7tiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMjgKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI5CiBtc2dpZCAidXNlIHBlci13b3JrdHJlZSBjb25maWcgZmlsZSIKIG1zZ3N0ciAi5L2/55So5bel5L2c5Yy657qn5Yir55qE6YWN572u5paH5Lu2IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEyOQorIzogYnVpbHRpbi9jb25maWcuYzoxMzAKIG1zZ2lkICJ1c2UgZ2l2ZW4gY29uZmlnIGZpbGUiCiBtc2dzdHIgIuS9v+eUqOaMh+WumueahOmFjee9ruaWh+S7tiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMxCiBtc2dpZCAiYmxvYi1pZCIKIG1zZ3N0ciAi5pWw5o2u5a+56LGhIElEIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMAorIzogYnVpbHRpbi9jb25maWcuYzoxMzEKIG1zZ2lkICJyZWFkIGNvbmZpZyBmcm9tIGdpdmVuIGJsb2Igb2JqZWN0IgogbXNnc3RyICLku47nu5nlrprnmoTmlbDmja7lr7nosaHor7vlj5bphY3nva4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTMxCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMgogbXNnaWQgIkFjdGlvbiIKIG1zZ3N0ciAi5pON5L2cIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMgorIzogYnVpbHRpbi9jb25maWcuYzoxMzMKIG1zZ2lkICJnZXQgdmFsdWU6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAi6I635Y+W5YC877yabmFtZSBbdmFsdWUtcmVnZXhdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzMworIzogYnVpbHRpbi9jb25maWcuYzoxMzQKIG1zZ2lkICJnZXQgYWxsIHZhbHVlczoga2V5IFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgIuiOt+W+l+aJgOacieeahOWAvO+8mmtleSBbdmFsdWUtcmVnZXhdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNAorIzogYnVpbHRpbi9jb25maWcuYzoxMzUKIG1zZ2lkICJnZXQgdmFsdWVzIGZvciByZWdleHA6IG5hbWUtcmVnZXggW3ZhbHVlLXJlZ2V4XSIKIG1zZ3N0ciAi5qC55o2u5q2j5YiZ6KGo6L6+5byP6I635b6X5YC877yabmFtZS1yZWdleCBbdmFsdWUtcmVnZXhdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNQorIzogYnVpbHRpbi9jb25maWcuYzoxMzYKIG1zZ2lkICJnZXQgdmFsdWUgc3BlY2lmaWMgZm9yIHRoZSBVUkw6IHNlY3Rpb25bLnZhcl0gVVJMIgogbXNnc3RyICLojrflvpcgVVJMIOWPluWAvO+8mnNlY3Rpb25bLnZhcl0gVVJMIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNgorIzogYnVpbHRpbi9jb25maWcuYzoxMzcKIG1zZ2lkICJyZXBsYWNlIGFsbCBtYXRjaGluZyB2YXJpYWJsZXM6IG5hbWUgdmFsdWUgW3ZhbHVlX3JlZ2V4XSIKIG1zZ3N0ciAi5pu/5o2i5omA5pyJ5Yy56YWN55qE5Y+Y6YeP77yabmFtZSB2YWx1ZSBbdmFsdWVfcmVnZXhdIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjEzNworIzogYnVpbHRpbi9jb25maWcuYzoxMzgKIG1zZ2lkICJhZGQgYSBuZXcgdmFyaWFibGU6IG5hbWUgdmFsdWUiCiBtc2dzdHIgIua3u+WKoOS4gOS4quaWsOeahOWPmOmHj++8mm5hbWUgdmFsdWUiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTM4CisjOiBidWlsdGluL2NvbmZpZy5jOjEzOQogbXNnaWQgInJlbW92ZSBhIHZhcmlhYmxlOiBuYW1lIFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgIuWIoOmZpOS4gOS4quWPmOmHj++8mm5hbWUgW3ZhbHVlLXJlZ2V4XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxMzkKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQwCiBtc2dpZCAicmVtb3ZlIGFsbCBtYXRjaGVzOiBuYW1lIFt2YWx1ZS1yZWdleF0iCiBtc2dzdHIgIuWIoOmZpOaJgOacieWMuemFjemhue+8mm5hbWUgW3ZhbHVlLXJlZ2V4XSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDAKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQxCiBtc2dpZCAicmVuYW1lIHNlY3Rpb246IG9sZC1uYW1lIG5ldy1uYW1lIgogbXNnc3RyICLph43lkb3lkI3lsI/oioLvvJpvbGQtbmFtZSBuZXctbmFtZSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQyCiBtc2dpZCAicmVtb3ZlIGEgc2VjdGlvbjogbmFtZSIKIG1zZ3N0ciAi5Yig6Zmk5LiA5Liq5bCP6IqC77yabmFtZSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQzCiBtc2dpZCAibGlzdCBhbGwiCiBtc2dzdHIgIuWIl+WHuuaJgOaciSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ0CiBtc2dpZCAib3BlbiBhbiBlZGl0b3IiCiBtc2dzdHIgIuaJk+W8gOS4gOS4que8lui+keWZqCIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ1CiBtc2dpZCAiZmluZCB0aGUgY29sb3IgY29uZmlndXJlZDogc2xvdCBbZGVmYXVsdF0iCiBtc2dzdHIgIuiOt+W+l+mFjee9rueahOminOiJsu+8mumFjee9riBb6buY6K6kXSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ2CiBtc2dpZCAiZmluZCB0aGUgY29sb3Igc2V0dGluZzogc2xvdCBbc3Rkb3V0LWlzLXR0eV0iCiBtc2dzdHIgIuiOt+W+l+minOiJsuiuvue9ru+8mumFjee9riBbc3Rkb3V0LWlzLXR0eV0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ2CisjOiBidWlsdGluL2NvbmZpZy5jOjE0NwogbXNnaWQgIlR5cGUiCiBtc2dzdHIgIuexu+WeiyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNDcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ4IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzozOAogbXNnaWQgInZhbHVlIGlzIGdpdmVuIHRoaXMgdHlwZSIKIG1zZ3N0ciAi5Y+W5YC85Li66K+l57G75Z6LIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0OAorIzogYnVpbHRpbi9jb25maWcuYzoxNDkKIG1zZ2lkICJ2YWx1ZSBpcyBcInRydWVcIiBvciBcImZhbHNlXCIiCiBtc2dzdHIgIuWAvOaYryBcInRydWVcIiDmiJYgXCJmYWxzZVwiIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE0OQorIzogYnVpbHRpbi9jb25maWcuYzoxNTAKIG1zZ2lkICJ2YWx1ZSBpcyBkZWNpbWFsIG51bWJlciIKIG1zZ3N0ciAi5YC85piv5Y2B6L+b5Yi25pWwIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1MAorIzogYnVpbHRpbi9jb25maWcuYzoxNTEKIG1zZ2lkICJ2YWx1ZSBpcyAtLWJvb2wgb3IgLS1pbnQiCiBtc2dzdHIgIuWAvOaYryAtLWJvb2wgb3IgLS1pbnQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTUxCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MgogbXNnaWQgInZhbHVlIGlzIGEgcGF0aCAoZmlsZSBvciBkaXJlY3RvcnkgbmFtZSkiCiBtc2dzdHIgIuWAvOaYr+S4gOS4qui3r+W+hO+8iOaWh+S7tuaIluebruW9leWQje+8iSIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTIKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUzCiBtc2dpZCAidmFsdWUgaXMgYW4gZXhwaXJ5IGRhdGUiCiBtc2dzdHIgIuWAvOaYr+S4gOS4quWIsOacn+aXpeacnyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU0CiBtc2dpZCAiT3RoZXIiCiBtc2dzdHIgIuWFtuWugyIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTQKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU1CiBtc2dpZCAidGVybWluYXRlIHZhbHVlcyB3aXRoIE5VTCBieXRlIgogbXNnc3RyICLnu4jmraLlgLzmmK8gTlVMIOWtl+iKgiIKIAotIzogYnVpbHRpbi9jb25maWcuYzoxNTUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU2CiBtc2dpZCAic2hvdyB2YXJpYWJsZSBuYW1lcyBvbmx5IgogbXNnc3RyICLlj6rmmL7npLrlj5jph4/lkI0iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU2CisjOiBidWlsdGluL2NvbmZpZy5jOjE1NwogbXNnaWQgInJlc3BlY3QgaW5jbHVkZSBkaXJlY3RpdmVzIG9uIGxvb2t1cCIKIG1zZ3N0ciAi5p+l6K+i5pe25Y+C54WnIGluY2x1ZGUg5oyH5Luk6YCS5b2S5p+l5om+IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1NworIzogYnVpbHRpbi9jb25maWcuYzoxNTgKIG1zZ2lkICJzaG93IG9yaWdpbiBvZiBjb25maWcgKGZpbGUsIHN0YW5kYXJkIGlucHV0LCBibG9iLCBjb21tYW5kIGxpbmUpIgogbXNnc3RyICLmmL7npLrphY3nva7nmoTmnaXmupDvvIjmlofku7bjgIHmoIflh4bovpPlhaXjgIHmlbDmja7lr7nosaHvvIzmiJblkb3ku6TooYzvvIkiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTU4CisjOiBidWlsdGluL2NvbmZpZy5jOjE1OQorbXNnaWQgInNob3cgc2NvcGUgb2YgY29uZmlnICh3b3JrdHJlZSwgbG9jYWwsIGdsb2JhbCwgc3lzdGVtLCBjb21tYW5kKSIKK21zZ3N0ciAi5pi+56S66YWN572u55qE5L2c55So5Z+f77yI5bel5L2c5Yy644CB5pys5Zyw44CB5YWo5bGA44CB57O757uf44CB5ZG95Luk77yJIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE2MCBidWlsdGluL2Vudi0taGVscGVyLmM6NDAKIG1zZ2lkICJ2YWx1ZSIKIG1zZ3N0ciAi5Y+W5YC8IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjE1OAorIzogYnVpbHRpbi9jb25maWcuYzoxNjAKIG1zZ2lkICJ3aXRoIC0tZ2V0LCB1c2UgZGVmYXVsdCB2YWx1ZSB3aGVuIG1pc3NpbmcgZW50cnkiCiBtc2dzdHIgIuS9v+eUqCAtLWdldCDlj4LmlbDvvIzlvZPnvLrlsJHorr7nva7ml7bkvb/nlKjpu5jorqTlgLwiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTcxCisjOiBidWlsdGluL2NvbmZpZy5jOjE3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgJWQiCiBtc2dzdHIgIumUmeivr+eahOWPguaVsOS4quaVsO+8jOW6lOivpeS4uiAlZCDkuKoiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MTczCisjOiBidWlsdGluL2NvbmZpZy5jOjE3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgZnJvbSAlZCB0byAlZCIKIG1zZ3N0ciAi6ZSZ6K+v55qE5Y+C5pWw5Liq5pWw77yM5bqU6K+l5Li65LuOICVkIOS4quWIsCAlZCDkuKoiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MzA3CisjOiBidWlsdGluL2NvbmZpZy5jOjMyNAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGtleSBwYXR0ZXJuOiAlcyIKIG1zZ3N0ciAi5peg5pWI6ZSu5ZCN5qih5byP77yaJXMiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6MzQzCisjOiBidWlsdGluL2NvbmZpZy5jOjM2MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZm9ybWF0IGRlZmF1bHQgY29uZmlnIHZhbHVlOiAlcyIKIG1zZ3N0ciAi5qC85byP5YyW6buY6K6k6YWN572u5YC85aSx6LSl77yaJXMiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDAwCisjOiBidWlsdGluL2NvbmZpZy5jOjQxNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcGFyc2UgY29sb3IgJyVzJyIKIG1zZ3N0ciAi5peg5rOV6Kej5p6Q6aKc6ImyICclcyciCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDQyCisjOiBidWlsdGluL2NvbmZpZy5jOjQ1OQogbXNnaWQgInVuYWJsZSB0byBwYXJzZSBkZWZhdWx0IGNvbG9yIHZhbHVlIgogbXNnc3RyICLml6Dms5Xop6PmnpDpu5jorqTpopzoibLlgLwiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NDk1IGJ1aWx0aW4vY29uZmlnLmM6NzQxCisjOiBidWlsdGluL2NvbmZpZy5jOjUxMiBidWlsdGluL2NvbmZpZy5jOjc2OAogbXNnaWQgIm5vdCBpbiBhIGdpdCBkaXJlY3RvcnkiCiBtc2dzdHIgIuS4jeWcqCBnaXQg5LuT5bqT5LitIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjQ5OAorIzogYnVpbHRpbi9jb25maWcuYzo1MTUKIG1zZ2lkICJ3cml0aW5nIHRvIHN0ZGluIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgIuS4jeaUr+aMgeWGmeWIsOagh+WHhui+k+WFpSIKIAotIzogYnVpbHRpbi9jb25maWcuYzo1MDEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NTE4CiBtc2dpZCAid3JpdGluZyBjb25maWcgYmxvYnMgaXMgbm90IHN1cHBvcnRlZCIKIG1zZ3N0ciAi5LiN5pSv5oyB5YaZ5Yiw6YWN572u5pWw5o2u5a+56LGhIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjU4NgorIzogYnVpbHRpbi9jb25maWcuYzo2MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiMgVGhpcyBpcyBHaXQncyBwZXItdXNlciBjb25maWd1cmF0aW9uIGZpbGUuXG4iCkBAIC0xMDI4NCwyMyArMTMwMDksMjMgQEAKICIjXHRuYW1lID0gJXNcbiIKICIjXHRlbWFpbCA9ICVzXG4iCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjEwCisjOiBidWlsdGluL2NvbmZpZy5jOjYyNwogbXNnaWQgIm9ubHkgb25lIGNvbmZpZyBmaWxlIGF0IGEgdGltZSIKIG1zZ3N0ciAi5LiA5qyh5Y+q6IO95pyJ5LiA5Liq6YWN572u5paH5Lu2IgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYxNQorIzogYnVpbHRpbi9jb25maWcuYzo2MzIKIG1zZ2lkICItLWxvY2FsIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlIGEgZ2l0IHJlcG9zaXRvcnkiCiBtc2dzdHIgIi0tbG9jYWwg5Y+q6IO95Zyo5LiA5Liq5LuT5bqT5YaF5L2/55SoIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjYxOAorIzogYnVpbHRpbi9jb25maWcuYzo2MzUKIG1zZ2lkICItLWJsb2IgY2FuIG9ubHkgYmUgdXNlZCBpbnNpZGUgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiLS1ibG9iIOWPquiDveWcqOS4gOS4quS7k+W6k+WGheS9v+eUqCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo2MzcKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjU1CiBtc2dpZCAiJEhPTUUgbm90IHNldCIKIG1zZ3N0ciAiJEhPTUUg5pyq6K6+572uIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjY1NworIzogYnVpbHRpbi9jb25maWcuYzo2NzkKIG1zZ2lkICIiCiAiLS13b3JrdHJlZSBjYW5ub3QgYmUgdXNlZCB3aXRoIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMgdW5sZXNzIHRoZSBjb25maWdcbiIKICJleHRlbnNpb24gd29ya3RyZWVDb25maWcgaXMgZW5hYmxlZC4gUGxlYXNlIHJlYWQgXCJDT05GSUdVUkFUSU9OIEZJTEVcIlxuIgpAQCAtMTAzMDksNTEgKzEzMDM0LDUxIEBACiAi5LiN6IO95ZKM5aSa5Liq5bel5L2c5Yy65LiA6LW35L2/55SoIC0td29ya3RyZWXvvIzpmaTpnZ7lkK/nlKggd29ya3RyZWVDb25maWcg6YWN572u5omp5bGV44CCXG4iCiAi6K+m5oOF6K+36ZiF6K+74oCcZ2l0IGhlbHAgd29ya3RyZWXigJ3nmoTigJxDT05GSUdVUkFUSU9OIEZJTEXigJ3lsI/oioIiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6Njg3CisjOiBidWlsdGluL2NvbmZpZy5jOjcxNAogbXNnaWQgIi0tZ2V0LWNvbG9yIGFuZCB2YXJpYWJsZSB0eXBlIGFyZSBpbmNvaGVyZW50IgogbXNnc3RyICItLWdldC1jb2xvciDlkozlj5jph4/nsbvlnovkuI3lhbzlrrkiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NjkyCisjOiBidWlsdGluL2NvbmZpZy5jOjcxOQogbXNnaWQgIm9ubHkgb25lIGFjdGlvbiBhdCBhIHRpbWUiCiBtc2dzdHIgIuS4gOasoeWPquiDveacieS4gOS4quWKqOS9nCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MDUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzMyCiBtc2dpZCAiLS1uYW1lLW9ubHkgaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tbGlzdCBvciAtLWdldC1yZWdleHAiCiBtc2dzdHIgIi0tbmFtZS1vbmx5IOS7hemAgueUqOS6jiAtLWxpc3Qg5oiWIC0tZ2V0LXJlZ2V4cCIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MTEKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzM4CiBtc2dpZCAiIgogIi0tc2hvdy1vcmlnaW4gaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCwgYW5kIC0tIgogImxpc3QiCiBtc2dzdHIgIi0tc2hvdy1vcmlnaW4g5LuF6YCC55So5LqOIC0tZ2V044CBLS1nZXQtYWxs44CBLS1nZXQtcmVnZXhwIOWSjCAtLWxpc3QiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzE3CisjOiBidWlsdGluL2NvbmZpZy5jOjc0NAogbXNnaWQgIi0tZGVmYXVsdCBpcyBvbmx5IGFwcGxpY2FibGUgdG8gLS1nZXQiCiBtc2dzdHIgIi0tZGVmYXVsdCDku4XpgILnlKjkuo4gLS1nZXQiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzMwCisjOiBidWlsdGluL2NvbmZpZy5jOjc1NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBjb25maWcgZmlsZSAnJXMnIgogbXNnc3RyICLml6Dms5Xor7vlj5bphY3nva7mlofku7YgJyVzJyIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3MzMKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzYwCiBtc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBjb25maWcgZmlsZShzKSIKIG1zZ3N0ciAi5aSE55CG6YWN572u5paH5Lu25Ye66ZSZIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc0MworIzogYnVpbHRpbi9jb25maWcuYzo3NzAKIG1zZ2lkICJlZGl0aW5nIHN0ZGluIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgIuS4jeaUr+aMgee8lui+keagh+WHhui+k+WFpSIKIAotIzogYnVpbHRpbi9jb25maWcuYzo3NDUKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzcyCiBtc2dpZCAiZWRpdGluZyBibG9icyBpcyBub3Qgc3VwcG9ydGVkIgogbXNnc3RyICLkuI3mlK/mjIHnvJbovpHmlbDmja7lr7nosaEiCiAKLSM6IGJ1aWx0aW4vY29uZmlnLmM6NzU5CisjOiBidWlsdGluL2NvbmZpZy5jOjc4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgY3JlYXRlIGNvbmZpZ3VyYXRpb24gZmlsZSAlcyIKIG1zZ3N0ciAi5LiN6IO95Yib5bu66YWN572u5paH5Lu2ICVzIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjc3MgorIzogYnVpbHRpbi9jb25maWcuYzo3OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNhbm5vdCBvdmVyd3JpdGUgbXVsdGlwbGUgdmFsdWVzIHdpdGggYSBzaW5nbGUgdmFsdWVcbiIKQEAgLTEwMzYyLDcgKzEzMDg3LDcgQEAKICLml6Dms5XnlKjkuIDkuKrlgLzopobnm5blpJrkuKrlgLxcbiIKICIgICAgICAg5L2/55So5LiA5Liq5q2j5YiZ6KGo6L6+5byP44CBLS1hZGQg5oiWIC0tcmVwbGFjZS1hbGwg5p2l5L+u5pS5ICVz44CCIgogCi0jOiBidWlsdGluL2NvbmZpZy5jOjg0NiBidWlsdGluL2NvbmZpZy5jOjg1NworIzogYnVpbHRpbi9jb25maWcuYzo4NzMgYnVpbHRpbi9jb25maWcuYzo4ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCBzZWN0aW9uOiAlcyIKIG1zZ3N0ciAi5peg5q2k5bCP6IqC77yaJXMiCkBAIC0xMDM5NSwzNyArMTMxMjAsMzcgQEAKIG1zZ2lkICJhbm5vdGF0ZWQiCiBtc2dzdHIgIumZhOazqOeahCIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3MgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3NQogIywgYy1mb3JtYXQKIG1zZ2lkICJhbm5vdGF0ZWQgdGFnICVzIG5vdCBhdmFpbGFibGUiCiBtc2dzdHIgIumZhOazqOagh+etviAlcyDml6DmlYgiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNzYKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiYW5ub3RhdGVkIHRhZyAlcyBoYXMgbm8gZW1iZWRkZWQgbmFtZSIKIG1zZ3N0ciAi6ZmE5rOo5qCH562+ICVzIOayoeacieW1jOWFpeWQjeensCIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3OAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjI4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ0YWcgJyVzJyBpcyByZWFsbHkgJyVzJyBoZXJlIgogbXNnc3RyICLmoIfnrb4gJyVzJyDnmoTnoa7mmK/lnKggJyVzJyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyMgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjMyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJubyB0YWcgZXhhY3RseSBtYXRjaGVzICclcyciCiBtc2dzdHIgIuayoeacieagh+etvuWHhuehruWMuemFjSAnJXMnIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIGV4YWN0IG1hdGNoIG9uIHJlZnMgb3IgdGFncywgc2VhcmNoaW5nIHRvIGRlc2NyaWJlXG4iCiBtc2dzdHIgIuayoeacieeyvuehruWMuemFjeWIsOW8leeUqOaIluagh+etvu+8jOe7p+e7reaQnOe0oui/m+ihjOaPj+i/sFxuIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6Mzc4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mzk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImZpbmlzaGVkIHNlYXJjaCBhdCAlc1xuIgogbXNnc3RyICLlrozmiJDmkJzntKIgJXNcbiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjQwNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjQyMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiTm8gYW5ub3RhdGVkIHRhZ3MgY2FuIGRlc2NyaWJlICclcycuXG4iCkBAIC0xMDQzNCw3ICsxMzE1OSw3IEBACiAi5rKh5pyJ6ZmE5rOo5qCH562+6IO95o+P6L+wICclcyfjgIJcbiIKICLnhLbogIzvvIzlrZjlnKjmnKrpmYTms6jmoIfnrb7vvJrlsJ3or5UgLS10YWdz44CCIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NDA4CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDI1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJObyB0YWdzIGNhbiBkZXNjcmliZSAnJXMnLlxuIgpAQCAtMTA0NDMsMTIgKzEzMTY4LDEyIEBACiAi5rKh5pyJ5qCH562+6IO95o+P6L+wICclcyfjgIJcbiIKICLlsJ3or5UgLS1hbHdheXPvvIzmiJbogIXliJvlu7rkuIDkupvmoIfnrb7jgIIiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0MzgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidHJhdmVyc2VkICVsdSBjb21taXRzXG4iCiBtc2dzdHIgIuW3sumBjeWOhiAlbHUg5Liq5o+Q5LqkXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NDEKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo0NTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIm1vcmUgdGhhbiAlaSB0YWdzIGZvdW5kOyBsaXN0ZWQgJWkgbW9zdCByZWNlbnRcbiIKQEAgLTEwNDU3LDExOCArMTMxODIsMTE4IEBACiAi5Y+R546w5aSa5LqOICVpIOS4quagh+etvu+8jOWIl+WHuuacgOi/keeahCAlaSDkuKpcbiIKICLlnKggJXMg5pS+5byD5pCc57SiXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MDkKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVzY3JpYmUgJXNcbiIKIG1zZ3N0ciAi5o+P6L+wICVzXG4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MTIgYnVpbHRpbi9sb2cuYzo1MTMKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgb2JqZWN0IG5hbWUgJXMiCiBtc2dzdHIgIuS4jeaYr+S4gOS4quacieaViOeahOWvueixoeWQjSAlcyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyMAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzNwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyBpcyBuZWl0aGVyIGEgY29tbWl0IG5vciBibG9iIgogbXNnc3RyICIlcyDml6LkuI3mmK/mj5DkuqTkuZ/kuI3mmK/mlbDmja7lr7nosaEiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzQKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTEKIG1zZ2lkICJmaW5kIHRoZSB0YWcgdGhhdCBjb21lcyBhZnRlciB0aGUgY29tbWl0IgogbXNnc3RyICLlr7vmib7or6Xmj5DkuqTkuYvlkI7nmoTmoIfnrb4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzUKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTIKIG1zZ2lkICJkZWJ1ZyBzZWFyY2ggc3RyYXRlZ3kgb24gc3RkZXJyIgogbXNnc3RyICLlnKjmoIflh4bplJnor6/kuIrosIPor5XmkJzntKLnrZbnlaUiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1MzYKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTMKIG1zZ2lkICJ1c2UgYW55IHJlZiIKIG1zZ3N0ciAi5L2/55So5Lu75oSP5byV55SoIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU0CiBtc2dpZCAidXNlIGFueSB0YWcsIGV2ZW4gdW5hbm5vdGF0ZWQiCiBtc2dzdHIgIuS9v+eUqOS7u+aEj+agh+etvu+8jOWNs+S9v+acqumZhOW4puazqOmHiiIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NQogbXNnaWQgImFsd2F5cyB1c2UgbG9uZyBmb3JtYXQiCiBtc2dzdHIgIuWni+e7iOS9v+eUqOmVv+aPkOS6pOWPt+agvOW8jyIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjUzOQorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1NgogbXNnaWQgIm9ubHkgZm9sbG93IGZpcnN0IHBhcmVudCIKIG1zZ3N0ciAi5Y+q6Lef6ZqP56ys5LiA5Liq54i25o+Q5LqkIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU5CiBtc2dpZCAib25seSBvdXRwdXQgZXhhY3QgbWF0Y2hlcyIKIG1zZ3N0ciAi5Y+q6L6T5Ye657K+56Gu5Yy56YWNIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTQ0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTYxCiBtc2dpZCAiY29uc2lkZXIgPG4+IG1vc3QgcmVjZW50IHRhZ3MgKGRlZmF1bHQ6IDEwKSIKIG1zZ3N0ciAi6ICD6JmR5pyA6L+RIDxuPiDkuKrmoIfnrb7vvIjpu5jorqTvvJoxMO+8iSIKIAotIzogYnVpbHRpbi9kZXNjcmliZS5jOjU0NgorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2MwogbXNnaWQgIm9ubHkgY29uc2lkZXIgdGFncyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgIuWPquiAg+iZkeWMuemFjSA85qih5byPPiDnmoTmoIfnrb4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NDgKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjUKIG1zZ2lkICJkbyBub3QgY29uc2lkZXIgdGFncyBtYXRjaGluZyA8cGF0dGVybj4iCiBtc2dzdHIgIuS4jeiAg+iZkeWMuemFjSA85qih5byPPiDnmoTmoIfnrb4iCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTAgYnVpbHRpbi9uYW1lLXJldi5jOjQyNAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2NyBidWlsdGluL25hbWUtcmV2LmM6NTM1CiBtc2dpZCAic2hvdyBhYmJyZXZpYXRlZCBjb21taXQgb2JqZWN0IGFzIGZhbGxiYWNrIgogbXNnc3RyICLmmL7npLrnroDlhpnnmoTmj5DkuqTlj7fkvZzkuLrlkI7lpIciCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTEgYnVpbHRpbi9kZXNjcmliZS5jOjU1NAorIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2OCBidWlsdGluL2Rlc2NyaWJlLmM6NTcxCiBtc2dpZCAibWFyayIKIG1zZ3N0ciAi5qCH6K6wIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTUyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTY5CiBtc2dpZCAiYXBwZW5kIDxtYXJrPiBvbiBkaXJ0eSB3b3JraW5nIHRyZWUgKGRlZmF1bHQ6IFwiLWRpcnR5XCIpIgogbXNnc3RyICLlr7nkuo7ohI/lt6XkvZzljLrvvIzov73liqAgPOagh+iusD7vvIjpu5jorqTvvJpcIi1kaXJ0eVwi77yJIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU1CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTcyCiBtc2dpZCAiYXBwZW5kIDxtYXJrPiBvbiBicm9rZW4gd29ya2luZyB0cmVlIChkZWZhdWx0OiBcIi1icm9rZW5cIikiCiBtc2dzdHIgIuWvueS6juaNn+Wdj+eahOW3peS9nOWMuu+8jOi/veWKoCA85qCH6K6wPu+8iOm7mOiupO+8mlwiLWJyb2tlblwi77yJIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NTczCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTkwCiBtc2dpZCAiLS1sb25nIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tYWJicmV2PTAiCiBtc2dzdHIgIi0tbG9uZyDkuI4gLS1hYmJyZXY9MCDkuI3lhbzlrrkiCiAKLSM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MDIKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MTkKIG1zZ2lkICJObyBuYW1lcyBmb3VuZCwgY2Fubm90IGRlc2NyaWJlIGFueXRoaW5nLiIKIG1zZ3N0ciAi5rKh5pyJ5Y+R546w5ZCN56ew77yM5peg5rOV5o+P6L+w5Lu75L2V5Lic6KW/44CCIgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NjUyCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjcwCiBtc2dpZCAiLS1kaXJ0eSBpcyBpbmNvbXBhdGlibGUgd2l0aCBjb21taXQtaXNoZXMiCiBtc2dzdHIgIi0tZGlydHkg5LiO5o+Q5Lqk5Y+35LiN5YW85a65IgogCi0jOiBidWlsdGluL2Rlc2NyaWJlLmM6NjU0CisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjcyCiBtc2dpZCAiLS1icm9rZW4gaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgogbXNnc3RyICItLWJyb2tlbiDkuI7mj5DkuqTlj7fkuI3lhbzlrrkiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjgzCisjOiBidWlsdGluL2RpZmYuYzo4NAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiBub3QgYSByZWd1bGFyIGZpbGUgb3Igc3ltbGluayIKIG1zZ3N0ciAiJyVzJ++8muS4jeaYr+S4gOS4quato+inhOaWh+S7tuaIluespuWPt+mTvuaOpSIKIAotIzogYnVpbHRpbi9kaWZmLmM6MjM0CisjOiBidWlsdGluL2RpZmYuYzoyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBvcHRpb246ICVzIgogbXNnc3RyICLml6DmlYjpgInpobnvvJolcyIKIAotIzogYnVpbHRpbi9kaWZmLmM6MzYzCisjOiBidWlsdGluL2RpZmYuYzozNTAKIG1zZ2lkICJOb3QgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi5LiN5piv5LiA5LiqIGdpdCDku5PlupMiCiAKLSM6IGJ1aWx0aW4vZGlmZi5jOjQwNworIzogYnVpbHRpbi9kaWZmLmM6Mzk0CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgb2JqZWN0ICclcycgZ2l2ZW4uIgogbXNnc3RyICLmj5Dkvpvkuobml6DmlYjlr7nosaEgJyVzJ+OAgiIKIAotIzogYnVpbHRpbi9kaWZmLmM6NDE2CisjOiBidWlsdGluL2RpZmYuYzo0MDMKICMsIGMtZm9ybWF0CiBtc2dpZCAibW9yZSB0aGFuIHR3byBibG9icyBnaXZlbjogJyVzJyIKIG1zZ3N0ciAi5o+Q5L6b5LqG6LaF6L+H5Lik5Liq5pWw5o2u5a+56LGh77yaJyVzJyIKIAotIzogYnVpbHRpbi9kaWZmLmM6NDIxCisjOiBidWlsdGluL2RpZmYuYzo0MDgKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5oYW5kbGVkIG9iamVjdCAnJXMnIGdpdmVuLiIKIG1zZ3N0ciAi5peg5rOV5aSE55CG55qE5a+56LGhICclcyfjgIIiCkBAIC0xMDYwNSwzMTggKzEzMzMwLDQyMSBAQAogIuS4jeaUr+aMgeWcqOebruW9leavlOi+g+aooeW8j++8iCctZCcg5ZKMICctLWRpci1kaWZmJ++8ieS4remHh+eUqOe7hOWQiOW3ruW8guagvOW8j++8iCctYycg5ZKMICctLSIKICJjYyfvvInjgIIiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzMKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiYm90aCBmaWxlcyBtb2RpZmllZDogJyVzJyBhbmQgJyVzJy4iCiBtc2dzdHIgIuS4pOS4quaWh+S7tumDveiiq+S/ruaUue+8miclcycg5ZKMICclcyfjgIIiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzUKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzYKIG1zZ2lkICJ3b3JraW5nIHRyZWUgZmlsZSBoYXMgYmVlbiBsZWZ0LiIKIG1zZ3N0ciAi5bel5L2c5Yy65paH5Lu26KKr55WZ5LqG5LiL5p2l44CCIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgInRlbXBvcmFyeSBmaWxlcyBleGlzdCBpbiAnJXMnLiIKIG1zZ3N0ciAi5Li05pe25paH5Lu25a2Y5Zyo5LqOICclcyfjgIIiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDcKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDgKIG1zZ2lkICJ5b3UgbWF5IHdhbnQgdG8gY2xlYW51cCBvciByZWNvdmVyIHRoZXNlLiIKIG1zZ3N0ciAi5oKo5Y+v6IO95oOz6KaB5riF55CG5oiW6ICF5oGi5aSN5a6D5Lus44CCIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6Njk2CisjOiBidWlsdGluL2RpZmZ0b29sLmM6Njk3CiBtc2dpZCAidXNlIGBkaWZmLmd1aXRvb2xgIGluc3RlYWQgb2YgYGRpZmYudG9vbGAiCiBtc2dzdHIgIuS9v+eUqCBgZGlmZi5ndWl0b29sYCDku6Pmm78gYGRpZmYudG9vbGAiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTgKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTkKIG1zZ2lkICJwZXJmb3JtIGEgZnVsbC1kaXJlY3RvcnkgZGlmZiIKIG1zZ3N0ciAi5omn6KGM5LiA5Liq5YWo55uu5b2V5beu5byC5q+U6L6DIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzAwCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzAxCiBtc2dpZCAiZG8gbm90IHByb21wdCBiZWZvcmUgbGF1bmNoaW5nIGEgZGlmZiB0b29sIgogbXNnc3RyICLlkK/liqjlt67lvILmr5TovoPlt6XlhbfkuYvliY3kuI3mj5DnpLoiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDUKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDYKIG1zZ2lkICJ1c2Ugc3ltbGlua3MgaW4gZGlyLWRpZmYgbW9kZSIKIG1zZ3N0ciAi5ZyoIGRpci1kaWZmIOaooeW8j+S4reS9v+eUqOespuWPt+mTvuaOpSIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNwogbXNnaWQgInRvb2wiCiBtc2dzdHIgIuW3peWFtyIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOAogbXNnaWQgInVzZSB0aGUgc3BlY2lmaWVkIGRpZmYgdG9vbCIKIG1zZ3N0ciAi5L2/55So5oyH5a6a55qE5beu5byC5q+U6L6D5bel5YW3IgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzA5CisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEwCiBtc2dpZCAicHJpbnQgYSBsaXN0IG9mIGRpZmYgdG9vbHMgdGhhdCBtYXkgYmUgdXNlZCB3aXRoIGAtLXRvb2xgIgogbXNnc3RyICLmmL7npLrlj6/ku6XnlKjlnKggYC0tdG9vbGAg5Y+C5pWw5ZCO55qE5beu5byC5bel5YW35YiX6KGoIgogCi0jOiBidWlsdGluL2RpZmZ0b29sLmM6NzEyCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEzCiBtc2dpZCAiIgogIm1ha2UgJ2dpdC1kaWZmdG9vbCcgZXhpdCB3aGVuIGFuIGludm9rZWQgZGlmZiB0b29sIHJldHVybnMgYSBub24gLSB6ZXJvIGV4aXQgIgogImNvZGUiCiBtc2dzdHIgIuW9k+aJp+ihjCBkaWZmIOW3peWFt+i/lOWbnumdnumbtumAgOWHuueggeaXtu+8jOS9vyAnZ2l0LWRpZmZ0b29sJyDpgIDlh7oiCiAKLSM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTUKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTYKIG1zZ2lkICJzcGVjaWZ5IGEgY3VzdG9tIGNvbW1hbmQgZm9yIHZpZXdpbmcgZGlmZnMiCiBtc2dzdHIgIuaMh+WumuS4gOS4queUqOS6juafpeeci+W3ruW8gueahOiHquWumuS5ieWRveS7pCIKIAorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxNworbXNnaWQgInBhc3NlZCB0byBgZGlmZmAiCittc2dzdHIgIuS8oOmAkue7mSBgZGlmZmAiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzIKK21zZ2lkICJkaWZmdG9vbCByZXF1aXJlcyB3b3JrdHJlZSBvciAtLW5vLWluZGV4IgorbXNnc3RyICJkaWZmdG9vbCDopoHmsYLlt6XkvZzljLrmiJbogIUgLS1uby1pbmRleCIKKwogIzogYnVpbHRpbi9kaWZmdG9vbC5jOjczOQorbXNnaWQgIi0tZGlyLWRpZmYgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1uby1pbmRleCIKK21zZ3N0ciAiLS1kaXItZGlmZiDlkowgLS1uby1pbmRleCDkuI3lhbzlrrkiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDIKK21zZ2lkICItLWd1aSwgLS10b29sIGFuZCAtLWV4dGNtZCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICItLWd1aeOAgS0tdG9vbCDlkowgLS1leHRjbWQg5LqS5palIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzUwCiBtc2dpZCAibm8gPHRvb2w+IGdpdmVuIGZvciAtLXRvb2w9PHRvb2w+IgogbXNnc3RyICLmsqHmnInkuLogLS10b29sPTzlt6Xlhbc+IOWPguaVsOaPkOS+myA85bel5YW3PiIKIAotIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc0NgorIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc1NwogbXNnaWQgIm5vIDxjbWQ+IGdpdmVuIGZvciAtLWV4dGNtZD08Y21kPiIKIG1zZ3N0ciAi5rKh5pyJ5Li6IC0tZXh0Y21kPTzlkb3ku6Q+IOWPguaVsOaPkOS+myA85ZG95LukPiIKIAorIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjYKK21zZ2lkICJnaXQgZW52LS1oZWxwZXIgLS10eXBlPVtib29sfHVsb25nXSA8b3B0aW9ucz4gPGVudi12YXI+IgorbXNnc3RyICJnaXQgZW52LS1oZWxwZXIgLS10eXBlPVtib29sfHVsb25nXSA86YCJ6aG5PiA8546v5aKD5Y+Y6YePPiIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjM3IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAorbXNnaWQgInR5cGUiCittc2dzdHIgIuexu+WeiyIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjQxCittc2dpZCAiZGVmYXVsdCBmb3IgZ2l0X2Vudl8qKC4uLikgdG8gZmFsbCBiYWNrIG9uIgorbXNnc3RyICJnaXRfZW52XyooLi4uKSDnmoTpu5jorqTlgLwiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MworbXNnaWQgImJlIHF1aWV0IG9ubHkgdXNlIGdpdF9lbnZfKigpIHZhbHVlIGFzIGV4aXQgY29kZSIKK21zZ3N0ciAi5a6J6Z2Z5qih5byP77yM5Y+q5L2/55SoIGdpdF9lbnZfKigpIOeahOWAvOS9nOS4uumAgOWHuueggSIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjYyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgLS1kZWZhdWx0JyBleHBlY3RzIGEgYm9vbGVhbiB2YWx1ZSB3aXRoIGAtLXR5cGU9Ym9vbGAsIG5vdCBgJXNgIgorbXNnc3RyICLpgInpobkgYC0tZGVmYXVsdCcg5ZKMIGB0eXBlPWJvb2xgIOacn+acm+S4gOS4quW4g+WwlOWAvO+8jOS4jeaYryBgJXNgIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9wdGlvbiBgLS1kZWZhdWx0JyBleHBlY3RzIGFuIHVuc2lnbmVkIGxvbmcgdmFsdWUgd2l0aCBgLS10eXBlPXVsb25nYCwgbm90IGAiCisiJXNgIgorbXNnc3RyICLpgInpobkgYC0tZGVmYXVsdCcg5ZKMIGB0eXBlPXVsb25nYCDmnJ/mnJvkuIDkuKrml6DnrKblj7fplb/mlbTlnovvvIzkuI3mmK8gYCVzYCIKKwogIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjI5CiBtc2dpZCAiZ2l0IGZhc3QtZXhwb3J0IFtyZXYtbGlzdC1vcHRzXSIKIG1zZ3N0ciAiZ2l0IGZhc3QtZXhwb3J0IFtyZXYtbGlzdC1vcHRzXSIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMDYKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzo4NTMKK21zZ2lkICJFcnJvcjogQ2Fubm90IGV4cG9ydCBuZXN0ZWQgdGFncyB1bmxlc3MgLS1tYXJrLXRhZ3MgaXMgc3BlY2lmaWVkLiIKK21zZ3N0ciAi6ZSZ6K+v77ya6Zmk6Z2e5oyH5a6aIC0tbWFyay10YWdz77yM5ZCm5YiZ5peg5rOV5a+85Ye65bWM5aWX5qCH562+44CCIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE1MgogbXNnaWQgInNob3cgcHJvZ3Jlc3MgYWZ0ZXIgPG4+IG9iamVjdHMiCiBtc2dzdHIgIuWcqCA8bj4g5Liq5a+56LGh5LmL5ZCO5pi+56S66L+b5bqmIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAwOAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTQKIG1zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2Ygc2lnbmVkIHRhZ3MiCiBtc2dzdHIgIumAieaLqeWmguS9leWkhOeQhuetvuWQjeagh+etviIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMTEKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTU3CiBtc2dpZCAic2VsZWN0IGhhbmRsaW5nIG9mIHRhZ3MgdGhhdCB0YWcgZmlsdGVyZWQgb2JqZWN0cyIKIG1zZ3N0ciAi6YCJ5oup5b2T5qCH562+5oyH5ZCR6KKr6L+H5ruk5a+56LGh5pe26K+l5qCH562+55qE5aSE55CG5pa55byPIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxNAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjAKK21zZ2lkICJzZWxlY3QgaGFuZGxpbmcgb2YgY29tbWl0IG1lc3NhZ2VzIGluIGFuIGFsdGVybmF0ZSBlbmNvZGluZyIKK21zZ3N0ciAi6YCJ5oup5L2/55So5aSH55So57yW56CB5aSE55CG5o+Q5Lqk6K+05piOIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2MwogbXNnaWQgIkR1bXAgbWFya3MgdG8gdGhpcyBmaWxlIgogbXNnc3RyICLmiormoIforrDlrZjlgqjliLDov5nkuKrmlofku7YiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDE2CisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2NQogbXNnaWQgIkltcG9ydCBtYXJrcyBmcm9tIHRoaXMgZmlsZSIKIG1zZ3N0ciAi5LuO6L+Z5Liq5paH5Lu25a+85YWl5qCH6K6wIgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAxOAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjkKK21zZ2lkICJJbXBvcnQgbWFya3MgZnJvbSB0aGlzIGZpbGUgaWYgaXQgZXhpc3RzIgorbXNnc3RyICLku47or6Xmlofku7blr7zlhaXmoIforrDvvIjlpoLmnpzlrZjlnKjnmoTor53vvIkiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTcxCiBtc2dpZCAiRmFrZSBhIHRhZ2dlciB3aGVuIHRhZ3MgbGFjayBvbmUiCiBtc2dzdHIgIuW9k+agh+etvue8uuWwkeagh+iusOiAheWtl+auteaXtu+8jOWBh+ijheaPkOS+m+S4gOS4qiIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjAKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTczCiBtc2dpZCAiT3V0cHV0IGZ1bGwgdHJlZSBmb3IgZWFjaCBjb21taXQiCiBtc2dzdHIgIuavj+asoeaPkOS6pOmDvei+k+WHuuaVtOS4quagkSIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc1CiBtc2dpZCAiVXNlIHRoZSBkb25lIGZlYXR1cmUgdG8gdGVybWluYXRlIHRoZSBzdHJlYW0iCiBtc2dzdHIgIuS9v+eUqCBkb25lIOWKn+iDveadpee7iOatoua1gSIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjMKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc2CiBtc2dpZCAiU2tpcCBvdXRwdXQgb2YgYmxvYiBkYXRhIgogbXNnc3RyICLot7Pov4fmlbDmja7lr7nosaHnmoTovpPlh7oiCiAKLSM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMDI0IGJ1aWx0aW4vbG9nLmM6MTU4OAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzcgYnVpbHRpbi9sb2cuYzoxNzA1CiBtc2dpZCAicmVmc3BlYyIKIG1zZ3N0ciAi5byV55So6KeE5qC8IgogCi0jOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTAyNQorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzgKIG1zZ2lkICJBcHBseSByZWZzcGVjIHRvIGV4cG9ydGVkIHJlZnMiCiBtc2dzdHIgIuWvueWvvOWHuueahOW8leeUqOW6lOeUqOW8leeUqOinhOagvCIKIAotIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjEwMjYKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc5CiBtc2dpZCAiYW5vbnltaXplIG91dHB1dCIKIG1zZ3N0ciAi5Yy/5ZCN6L6T5Ye6IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MjgKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTgxCittc2dpZCAiUmVmZXJlbmNlIHBhcmVudHMgd2hpY2ggYXJlIG5vdCBpbiBmYXN0LWV4cG9ydCBzdHJlYW0gYnkgb2JqZWN0IGlkIgorbXNnc3RyICLlvJXnlKjniLblr7nosaEgSUQg5LiN5ZyoIGZhc3QtZXhwb3J0IOa1geS4rSIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODMKK21zZ2lkICJTaG93IG9yaWdpbmFsIG9iamVjdCBpZHMgb2YgYmxvYnMvY29tbWl0cyIKK21zZ3N0ciAi5pi+56S65pWw5o2u5a+56LGhL+aPkOS6pOeahOWOn+Wni+WvueixoSBJRCIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODUKK21zZ2lkICJMYWJlbCB0YWdzIHdpdGggbWFyayBpZHMiCittc2dzdHIgIuWvueW4puacieagh+iusCBJRCDnmoTmoIfnrb7lgZrmoIforrAiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMjIwCittc2dpZCAiQ2Fubm90IHBhc3MgYm90aCAtLWltcG9ydC1tYXJrcyBhbmQgLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzIgorbXNnc3RyICLkuI3og73lkIzml7bkvKDpgJLlj4LmlbAgLS1pbXBvcnQtbWFya3Mg5ZKMIC0taW1wb3J0LW1hcmtzLWlmLWV4aXN0cyIKKworIzogYnVpbHRpbi9mZXRjaC5jOjM0CiBtc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIFs8cmVwb3NpdG9yeT4gWzxyZWZzcGVjPi4uLl1dIgogbXNnc3RyICJnaXQgZmV0Y2ggWzzpgInpobk+XSBbPOS7k+W6kz4gWzzlvJXnlKjop4TmoLw+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoyOQorIzogYnVpbHRpbi9mZXRjaC5jOjM1CiBtc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIDxncm91cD4iCiBtc2dzdHIgImdpdCBmZXRjaCBbPOmAiemhuT5dIDznu4Q+IgogCi0jOiBidWlsdGluL2ZldGNoLmM6MzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNgogbXNnaWQgImdpdCBmZXRjaCAtLW11bHRpcGxlIFs8b3B0aW9ucz5dIFsoPHJlcG9zaXRvcnk+IHwgPGdyb3VwPikuLi5dIgogbXNnc3RyICJnaXQgZmV0Y2ggLS1tdWx0aXBsZSBbPOmAiemhuT5dIFsoPOS7k+W6kz4gfCA857uEPikuLi5dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MzEKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNwogbXNnaWQgImdpdCBmZXRjaCAtLWFsbCBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IGZldGNoIC0tYWxsIFs86YCJ6aG5Pl0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTUgYnVpbHRpbi9wdWxsLmM6MTk0CisjOiBidWlsdGluL2ZldGNoLmM6MTE2Cittc2dpZCAiZmV0Y2gucGFyYWxsZWwgY2Fubm90IGJlIG5lZ2F0aXZlIgorbXNnc3RyICJmZXRjaC5wYXJhbGxlbCDkuI3og73kuLrotJ/mlbAiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMzkgYnVpbHRpbi9wdWxsLmM6MTg0CiBtc2dpZCAiZmV0Y2ggZnJvbSBhbGwgcmVtb3RlcyIKIG1zZ3N0ciAi5LuO5omA5pyJ55qE6L+c56iL5oqT5Y+WIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTE3IGJ1aWx0aW4vcHVsbC5jOjE5NworIzogYnVpbHRpbi9mZXRjaC5jOjE0MSBidWlsdGluL3B1bGwuYzoyMjgKK21zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL2ZldGNoIgorbXNnc3RyICLkuLogZ2l0IHB1bGwvZmV0Y2gg6K6+572u5LiK5ri4IgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzIGJ1aWx0aW4vcHVsbC5jOjE4NwogbXNnaWQgImFwcGVuZCB0byAuZ2l0L0ZFVENIX0hFQUQgaW5zdGVhZCBvZiBvdmVyd3JpdGluZyIKIG1zZ3N0ciAi6L+95Yqg5YiwIC5naXQvRkVUQ0hfSEVBRCDogIzkuI3mmK/opobnm5blroMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTkgYnVpbHRpbi9wdWxsLmM6MjAwCisjOiBidWlsdGluL2ZldGNoLmM6MTQ1IGJ1aWx0aW4vcHVsbC5jOjE5MAogbXNnaWQgInBhdGggdG8gdXBsb2FkIHBhY2sgb24gcmVtb3RlIGVuZCIKIG1zZ3N0ciAi5LiK5Lyg5YyF5Yiw6L+c56iL55qE6Lev5b6EIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTIwCisjOiBidWlsdGluL2ZldGNoLmM6MTQ2CiBtc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGxvY2FsIHJlZmVyZW5jZSIKIG1zZ3N0ciAi5by65Yi26KaG55uW5pys5Zyw5byV55SoIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTIyCisjOiBidWlsdGluL2ZldGNoLmM6MTQ4CiBtc2dpZCAiZmV0Y2ggZnJvbSBtdWx0aXBsZSByZW1vdGVzIgogbXNnc3RyICLku47lpJrkuKrov5znqIvmipPlj5YiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMjQgYnVpbHRpbi9wdWxsLmM6MjA0CisjOiBidWlsdGluL2ZldGNoLmM6MTUwIGJ1aWx0aW4vcHVsbC5jOjE5NAogbXNnaWQgImZldGNoIGFsbCB0YWdzIGFuZCBhc3NvY2lhdGVkIG9iamVjdHMiCiBtc2dzdHIgIuaKk+WPluaJgOacieeahOagh+etvuWSjOWFs+iBlOWvueixoSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjEyNgorIzogYnVpbHRpbi9mZXRjaC5jOjE1MgogbXNnaWQgImRvIG5vdCBmZXRjaCBhbGwgdGFncyAoLS1uby10YWdzKSIKIG1zZ3N0ciAi5LiN5oqT5Y+W5Lu75L2V5qCH562+KC0tbm8tdGFncykiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMjgKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQKIG1zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBmZXRjaGVkIGluIHBhcmFsbGVsIgogbXNnc3RyICLlrZDmqKHnu4Tojrflj5bnmoTlubblj5HmlbAiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzAgYnVpbHRpbi9wdWxsLmM6MjA3CisjOiBidWlsdGluL2ZldGNoLmM6MTU2IGJ1aWx0aW4vcHVsbC5jOjE5NwogbXNnaWQgInBydW5lIHJlbW90ZS10cmFja2luZyBicmFuY2hlcyBubyBsb25nZXIgb24gcmVtb3RlIgogbXNnc3RyICLmuIXpmaTov5znqIvlt7Lnu4/kuI3lrZjlnKjnmoTliIbmlK/nmoTot5/ouKrliIbmlK8iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMzIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTgKIG1zZ2lkICJwcnVuZSBsb2NhbCB0YWdzIG5vIGxvbmdlciBvbiByZW1vdGUgYW5kIGNsb2JiZXIgY2hhbmdlZCB0YWdzIgogbXNnc3RyICLmuIXpmaTov5znqIvkuI3lrZjlnKjnmoTmnKzlnLDmoIfnrb7vvIzlubbkuJTmm7/mjaLlj5jmm7TmoIfnrb4iCiAKICMgIOivkeiAhe+8muWPr+mAieWAvO+8jOS4jeiDvee/u+ivkQotIzogYnVpbHRpbi9mZXRjaC5jOjEzMyBidWlsdGluL2ZldGNoLmM6MTU2IGJ1aWx0aW4vcHVsbC5jOjEzMgorIzogYnVpbHRpbi9mZXRjaC5jOjE1OSBidWlsdGluL2ZldGNoLmM6MTgyIGJ1aWx0aW4vcHVsbC5jOjEyMQogbXNnaWQgIm9uLWRlbWFuZCIKIG1zZ3N0ciAib24tZGVtYW5kIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTM0CisjOiBidWlsdGluL2ZldGNoLmM6MTYwCiBtc2dpZCAiY29udHJvbCByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyIKIG1zZ3N0ciAi5o6n5Yi25a2Q5qih57uE55qE6YCS5b2S5oqT5Y+WIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTM4IGJ1aWx0aW4vcHVsbC5jOjIxNQorIzogYnVpbHRpbi9mZXRjaC5jOjE2NCBidWlsdGluL3B1bGwuYzoyMDUKIG1zZ2lkICJrZWVwIGRvd25sb2FkZWQgcGFjayIKIG1zZ3N0ciAi5L+d5oyB5LiL6L295YyFIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQwCisjOiBidWlsdGluL2ZldGNoLmM6MTY2CiBtc2dpZCAiYWxsb3cgdXBkYXRpbmcgb2YgSEVBRCByZWYiCiBtc2dzdHIgIuWFgeiuuOabtOaWsCBIRUFEIOW8leeUqCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0MyBidWlsdGluL2ZldGNoLmM6MTQ5IGJ1aWx0aW4vcHVsbC5jOjIxOAorIzogYnVpbHRpbi9mZXRjaC5jOjE2OSBidWlsdGluL2ZldGNoLmM6MTc1IGJ1aWx0aW4vcHVsbC5jOjIwOAogbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgY2xvbmUiCiBtc2dzdHIgIua3seWMlua1heWFi+mahueahOWOhuWPsiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE0NQorIzogYnVpbHRpbi9mZXRjaC5jOjE3MQogbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgcmVwb3NpdG9yeSBiYXNlZCBvbiB0aW1lIgogbXNnc3RyICLln7rkuo7ml7bpl7TmnaXmt7HljJbmtYXlhYvpmobnmoTljoblj7IiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTEgYnVpbHRpbi9wdWxsLmM6MjIxCisjOiBidWlsdGluL2ZldGNoLmM6MTc3IGJ1aWx0aW4vcHVsbC5jOjIxMQogbXNnaWQgImNvbnZlcnQgdG8gYSBjb21wbGV0ZSByZXBvc2l0b3J5IgogbXNnc3RyICLovazmjaLkuLrkuIDkuKrlrozmlbTnmoTku5PlupMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODAKIG1zZ2lkICJwcmVwZW5kIHRoaXMgdG8gc3VibW9kdWxlIHBhdGggb3V0cHV0IgogbXNnc3RyICLlnKjlrZDmqKHnu4Tot6/lvoTovpPlh7rnmoTliY3pnaLliqDkuIrmraTnm67lvZUiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODMKIG1zZ2lkICIiCiAiZGVmYXVsdCBmb3IgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMgKGxvd2VyIHByaW9yaXR5IHRoYW4gY29uZmlnICIKICJmaWxlcykiCiBtc2dzdHIgIumAkuW9kuiOt+WPluWtkOaooee7hOeahOe8uuecgeWAvO+8iOavlOmFjee9ruaWh+S7tuS8mOWFiOe6p+S9ju+8iSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MSBidWlsdGluL3B1bGwuYzoyMjQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODcgYnVpbHRpbi9wdWxsLmM6MjE0CiBtc2dpZCAiYWNjZXB0IHJlZnMgdGhhdCB1cGRhdGUgLmdpdC9zaGFsbG93IgogbXNnc3RyICLmjqXlj5fmm7TmlrAgLmdpdC9zaGFsbG93IOeahOW8leeUqCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MiBidWlsdGluL3B1bGwuYzoyMjYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODggYnVpbHRpbi9wdWxsLmM6MjE2CiBtc2dpZCAicmVmbWFwIgogbXNnc3RyICLlvJXnlKjmmKDlsIQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjMgYnVpbHRpbi9wdWxsLmM6MjI3CisjOiBidWlsdGluL2ZldGNoLmM6MTg5IGJ1aWx0aW4vcHVsbC5jOjIxNwogbXNnaWQgInNwZWNpZnkgZmV0Y2ggcmVmbWFwIgogbXNnc3RyICLmjIflrprojrflj5bmk43kvZznmoTlvJXnlKjmmKDlsIQiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9scy1yZW1vdGUuYzo3NyBidWlsdGluL3B1c2guYzo1ODIKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTcyCi1tc2dpZCAic2VydmVyLXNwZWNpZmljIgotbXNnc3RyICJzZXJ2ZXItc3BlY2lmaWMiCi0KLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjQgYnVpbHRpbi9scy1yZW1vdGUuYzo3NyBidWlsdGluL3B1c2guYzo1ODIKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTczCi1tc2dpZCAib3B0aW9uIHRvIHRyYW5zbWl0IgotbXNnc3RyICLkvKDovpPpgInpobkiCi0KLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxOTYKIG1zZ2lkICJyZXBvcnQgdGhhdCB3ZSBoYXZlIG9ubHkgb2JqZWN0cyByZWFjaGFibGUgZnJvbSB0aGlzIG9iamVjdCIKIG1zZ3N0ciAi5oql5ZGK5oiR5Lus5Y+q5oul5pyJ5LuO6K+l5a+56LGh5byA5aeL5Y+v6L6+55qE5a+56LGhIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NDcwCisjOiBidWlsdGluL2ZldGNoLmM6MTk5Cittc2dpZCAicnVuICdnYyAtLWF1dG8nIGFmdGVyIGZldGNoaW5nIgorbXNnc3RyICLojrflj5blkI7miafooYwgJ2djIC0tYXV0byciCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoyMDEgYnVpbHRpbi9wdWxsLmM6MjI2Cittc2dpZCAiY2hlY2sgZm9yIGZvcmNlZC11cGRhdGVzIG9uIGFsbCB1cGRhdGVkIGJyYW5jaGVzIgorbXNnc3RyICLlnKjmiYDmnInmm7TmlrDliIbmlK/kuIrmo4Dmn6XlvLrliLbmm7TmlrAiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoyMDMKK21zZ2lkICJ3cml0ZSB0aGUgY29tbWl0LWdyYXBoIGFmdGVyIGZldGNoaW5nIgorbXNnc3RyICLmipPlj5blkI7lhpnmj5DkuqTlm74iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo1MTMKIG1zZ2lkICJDb3VsZG4ndCBmaW5kIHJlbW90ZSByZWYgSEVBRCIKIG1zZ3N0ciAi5peg5rOV5Y+R546w6L+c56iLIEhFQUQg5byV55SoIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NjA5CisjOiBidWlsdGluL2ZldGNoLmM6NjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvbmZpZ3VyYXRpb24gZmV0Y2gub3V0cHV0IGNvbnRhaW5zIGludmFsaWQgdmFsdWUgJXMiCiBtc2dzdHIgIumFjee9ruWPmOmHjyBmZXRjaC5vdXRwdXQg5YyF5ZCr5peg5pWI5YC8ICVzIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzAyCisjOiBidWlsdGluL2ZldGNoLmM6NzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBub3QgZm91bmQiCiBtc2dzdHIgIuWvueixoSAlcyDmnKrlj5HnjrAiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MDYKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTUKIG1zZ2lkICJbdXAgdG8gZGF0ZV0iCiBtc2dzdHIgIlvmnIDmlrBdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzE5IGJ1aWx0aW4vZmV0Y2guYzo3MzUgYnVpbHRpbi9mZXRjaC5jOjgwNworIzogYnVpbHRpbi9mZXRjaC5jOjc2OCBidWlsdGluL2ZldGNoLmM6Nzg0IGJ1aWx0aW4vZmV0Y2guYzo4NTYKIG1zZ2lkICJbcmVqZWN0ZWRdIgogbXNnc3RyICJb5bey5ouS57udXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjcyMAorIzogYnVpbHRpbi9mZXRjaC5jOjc2OQogbXNnaWQgImNhbid0IGZldGNoIGluIGN1cnJlbnQgYnJhbmNoIgogbXNnc3RyICLlvZPliY3liIbmlK/kuIvkuI3og73miafooYzojrflj5bmk43kvZwiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3MzAKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NzkKIG1zZ2lkICJbdGFnIHVwZGF0ZV0iCiBtc2dzdHIgIlvmoIfnrb7mm7TmlrBdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzMxIGJ1aWx0aW4vZmV0Y2guYzo3NzEgYnVpbHRpbi9mZXRjaC5jOjc4NwotIzogYnVpbHRpbi9mZXRjaC5jOjgwMgorIzogYnVpbHRpbi9mZXRjaC5jOjc4MCBidWlsdGluL2ZldGNoLmM6ODE3IGJ1aWx0aW4vZmV0Y2guYzo4MzkKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NTEKIG1zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIGxvY2FsIHJlZiIKIG1zZ3N0ciAi5LiN6IO95pu05paw5pys5Zyw5byV55SoIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzM1CisjOiBidWlsdGluL2ZldGNoLmM6Nzg0CiBtc2dpZCAid291bGQgY2xvYmJlciBleGlzdGluZyB0YWciCiBtc2dzdHIgIuS8muegtOWdj+eOsOacieeahOagh+etviIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjc1NworIzogYnVpbHRpbi9mZXRjaC5jOjgwNgogbXNnaWQgIltuZXcgdGFnXSIKIG1zZ3N0ciAiW+aWsOagh+etvl0iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo3NjAKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MDkKIG1zZ2lkICJbbmV3IGJyYW5jaF0iCiBtc2dzdHIgIlvmlrDliIbmlK9dIgogCi0jOiBidWlsdGluL2ZldGNoLmM6NzYzCisjOiBidWlsdGluL2ZldGNoLmM6ODEyCiBtc2dpZCAiW25ldyByZWZdIgogbXNnc3RyICJb5paw5byV55SoXSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjgwMgorIzogYnVpbHRpbi9mZXRjaC5jOjg1MQogbXNnaWQgImZvcmNlZCB1cGRhdGUiCiBtc2dzdHIgIuW8uuWItuabtOaWsCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjgwNworIzogYnVpbHRpbi9mZXRjaC5jOjg1NgogbXNnaWQgIm5vbi1mYXN0LWZvcndhcmQiCiBtc2dzdHIgIumdnuW/q+i/myIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjg1MworIzogYnVpbHRpbi9mZXRjaC5jOjg3NworbXNnaWQgIiIKKyJGZXRjaCBub3JtYWxseSBpbmRpY2F0ZXMgd2hpY2ggYnJhbmNoZXMgaGFkIGEgZm9yY2VkIHVwZGF0ZSxcbiIKKyJidXQgdGhhdCBjaGVjayBoYXMgYmVlbiBkaXNhYmxlZC4gVG8gcmUtZW5hYmxlLCB1c2UgJy0tc2hvdy1mb3JjZWQtdXBkYXRlcydcbiIKKyJmbGFnIG9yIHJ1biAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyB0cnVlJy4iCittc2dzdHIgIiIKKyLojrflj5bmk43kvZzpgJrluLjmmL7npLrlk6rkupvliIbmlK/lj5HnlJ/kuoblvLrliLbmm7TmlrDvvIzkvYbor6Xmo4Dmn6Xlt7LooqvnpoHnlKjjgIJcbiIKKyLopoHph43mlrDlkK/nlKjvvIzor7fkvb/nlKggJy0tc2hvdy1mb3JjZWQtdXBkYXRlcycg6YCJ6aG55oiW6L+Q6KGMXG4iCisiJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgdHJ1ZSfjgIIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGNoZWNrIGZvcmNlZCB1cGRhdGVzLiBZb3UgY2FuIHVzZVxuIgorIictLW5vLXNob3ctZm9yY2VkLXVwZGF0ZXMnIG9yIHJ1biAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyAiCisiZmFsc2UnXG4iCisiIHRvIGF2b2lkIHRoaXMgY2hlY2suXG4iCittc2dzdHIgIiIKKyLoirHkuoYgJS4yZiDnp5LmnaXmo4Dmn6XlvLrliLbmm7TmlrDjgILmgqjlj6/ku6Xkvb/nlKggJy0tbm8tc2hvdy1mb3JjZWQtdXBkYXRlcydcbiIKKyLmiJbov5DooYwgJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgZmFsc2UnIOS7pemBv+WFjeatpOmhueajgOafpeOAglxuIgorCisjOiBidWlsdGluL2ZldGNoLmM6OTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRpZCBub3Qgc2VuZCBhbGwgbmVjZXNzYXJ5IG9iamVjdHNcbiIKIG1zZ3N0ciAiJXMg5pyq5Y+R6YCB5omA5pyJ5b+F6ZyA55qE5a+56LGhXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo4NzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzo5NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVqZWN0ICVzIGJlY2F1c2Ugc2hhbGxvdyByb290cyBhcmUgbm90IGFsbG93ZWQgdG8gYmUgdXBkYXRlZCIKIG1zZ3N0ciAi5ouS57udICVzIOWboOS4uua1heWFi+mahuS4jeWFgeiuuOiiq+abtOaWsCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjk2MyBidWlsdGluL2ZldGNoLmM6MTA4NQorIzogYnVpbHRpbi9mZXRjaC5jOjEwMjYgYnVpbHRpbi9mZXRjaC5jOjExNjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRnJvbSAlLipzXG4iCiBtc2dzdHIgIuadpeiHqiAlLipzXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzo5NzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMDM3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJzb21lIGxvY2FsIHJlZnMgY291bGQgbm90IGJlIHVwZGF0ZWQ7IHRyeSBydW5uaW5nXG4iCkBAIC0xMDkyNiwxMjAgKzEzNzU0LDE1MCBAQAogIiAnZ2l0IHJlbW90ZSBwcnVuZSAlcycg5p2l5Yig6Zmk5pen55qE44CB5pyJ5Yay56qB55qE5YiG5pSvIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMDU1CisjOiBidWlsdGluL2ZldGNoLmM6MTEzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAoJXMgd2lsbCBiZWNvbWUgZGFuZ2xpbmcpIgogbXNnc3RyICIgICDvvIglcyDlsIbmiJDkuLrmgqznqbrnirbmgIHvvIkiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogYnVpbHRpbi9mZXRjaC5jOjEwNTYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAgICglcyBoYXMgYmVjb21lIGRhbmdsaW5nKSIKIG1zZ3N0ciAiICAg77yIJXMg5bey5oiQ5Li65oKs56m654q25oCB77yJIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA4OAorIzogYnVpbHRpbi9mZXRjaC5jOjExNjcKIG1zZ2lkICJbZGVsZXRlZF0iCiBtc2dzdHIgIlvlt7LliKDpmaRdIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTA4OSBidWlsdGluL3JlbW90ZS5jOjEwMzYKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTY4IGJ1aWx0aW4vcmVtb3RlLmM6MTExMgogbXNnaWQgIihub25lKSIKIG1zZ3N0ciAi77yI5peg77yJIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTExMgorIzogYnVpbHRpbi9mZXRjaC5jOjExOTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVmdXNpbmcgdG8gZmV0Y2ggaW50byBjdXJyZW50IGJyYW5jaCAlcyBvZiBub24tYmFyZSByZXBvc2l0b3J5IgogbXNnc3RyICLmi5Lnu53ojrflj5bliLDpnZ7nuq/ku5PlupPnmoTlvZPliY3liIbmlK8gJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxMTMxCisjOiBidWlsdGluL2ZldGNoLmM6MTIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJPcHRpb24gXCIlc1wiIHZhbHVlIFwiJXNcIiBpcyBub3QgdmFsaWQgZm9yICVzIgogbXNnc3RyICLpgInpobkgXCIlc1wiIOeahOWAvCBcIiVzXCIg5a+55LqOICVzIOaYr+aXoOaViOeahCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjExMzQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMjEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk9wdGlvbiBcIiVzXCIgaXMgaWdub3JlZCBmb3IgJXNcbiIKIG1zZ3N0ciAi6YCJ6aG5IFwiJXNcIiDkuLogJXMg5omA5b+955WlXG4iCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDMzCisjOiBidWlsdGluL2ZldGNoLmM6MTQyMQorbXNnaWQgIm11bHRpcGxlIGJyYW5jaGVzIGRldGVjdGVkLCBpbmNvbXBhdGlibGUgd2l0aCAtLXNldC11cHN0cmVhbSIKK21zZ3N0ciAi5qOA5rWL5Yiw5aSa5YiG5pSv77yM5ZKMIC0tc2V0LXVwc3RyZWFtIOS4jeWFvOWuuSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MzYKK21zZ2lkICJub3Qgc2V0dGluZyB1cHN0cmVhbSBmb3IgYSByZW1vdGUgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKK21zZ3N0ciAi5rKh5pyJ5Li65LiA5Liq6L+c56iL6Lef6Liq5YiG5pSv6K6+572u5LiK5ri4IgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQzOAorbXNnaWQgIm5vdCBzZXR0aW5nIHVwc3RyZWFtIGZvciBhIHJlbW90ZSB0YWciCittc2dzdHIgIuayoeacieS4uuS4gOS4qui/nOeoi+agh+etvuiuvue9ruS4iua4uCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0NDAKK21zZ2lkICJ1bmtub3duIGJyYW5jaCB0eXBlIgorbXNnc3RyICLmnKrnn6XnmoTliIbmlK/nsbvlnosiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDQyCittc2dpZCAiIgorIm5vIHNvdXJjZSBicmFuY2ggZm91bmQuXG4iCisieW91IG5lZWQgdG8gc3BlY2lmeSBleGFjdGx5IG9uZSBicmFuY2ggd2l0aCB0aGUgLS1zZXQtdXBzdHJlYW0gb3B0aW9uLiIKK21zZ3N0ciAiIgorIuacquWPkeeOsOa6kOWIhuaUr+OAglxuIgorIuaCqOmcgOimgeS9v+eUqCAtLXNldC11cHN0cmVhbSDpgInpobnmjIflrprkuIDkuKrliIbmlK/jgIIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTY4IGJ1aWx0aW4vZmV0Y2guYzoxNjMxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZldGNoaW5nICVzXG4iCiBtc2dzdHIgIuato+WcqOiOt+WPliAlc1xuIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTQzNSBidWlsdGluL3JlbW90ZS5jOjEwMAorIzogYnVpbHRpbi9mZXRjaC5jOjE1NzggYnVpbHRpbi9mZXRjaC5jOjE2MzMgYnVpbHRpbi9yZW1vdGUuYzoxMDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGZldGNoICVzIgogbXNnc3RyICLkuI3og73ojrflj5YgJXMiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNDgxIGJ1aWx0aW4vZmV0Y2guYzoxNjQ5Ci1tc2dpZCAiIgotIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gY29yZS5wYXJ0aWFsQ2xvbmUiCi1tc2dzdHIgIuWPquWPr+S7peWwhiAtLWZpbHRlciDnlKjkuo7lnKggY29yZS5wYXJ0aWFsQ2xvbmUg5Lit6YWN572u55qE6L+c56iL5LuT5bqTIgorIzogYnVpbHRpbi9mZXRjaC5jOjE1OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZldGNoICclcycgKGV4aXQgY29kZTogJWQpXG4iCittc2dzdHIgIuaXoOazleiOt+WPliAnJXMn77yI6YCA5Ye656CB77yaJWTvvIlcbiIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1MDQKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjkzCiBtc2dpZCAiIgogIk5vIHJlbW90ZSByZXBvc2l0b3J5IHNwZWNpZmllZC4gIFBsZWFzZSwgc3BlY2lmeSBlaXRoZXIgYSBVUkwgb3IgYVxuIgogInJlbW90ZSBuYW1lIGZyb20gd2hpY2ggbmV3IHJldmlzaW9ucyBzaG91bGQgYmUgZmV0Y2hlZC4iCiBtc2dzdHIgIuacquaMh+Wumui/nOeoi+S7k+W6k+OAguivt+mAmui/h+S4gOS4qiBVUkwg5oiW6L+c56iL5LuT5bqT5ZCN5oyH5a6a77yM55So5Lul6I635Y+W5paw5o+Q5Lqk44CCIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU0MQorIzogYnVpbHRpbi9mZXRjaC5jOjE3MzAKIG1zZ2lkICJZb3UgbmVlZCB0byBzcGVjaWZ5IGEgdGFnIG5hbWUuIgogbXNnc3RyICLmgqjpnIDopoHmjIflrprkuIDkuKrmoIfnrb7lkI3np7DjgIIiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNTkwCisjOiBidWlsdGluL2ZldGNoLmM6MTc4MAogbXNnaWQgIk5lZ2F0aXZlIGRlcHRoIGluIC0tZGVlcGVuIGlzIG5vdCBzdXBwb3J0ZWQiCiBtc2dzdHIgIi0tZGVlcGVuIOS4jeaUr+aMgei0n+aVsOa3seW6piIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE1OTIKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzgyCiBtc2dpZCAiLS1kZWVwZW4gYW5kIC0tZGVwdGggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLS1kZWVwZW4g5ZKMIC0tZGVwdGgg5piv5LqS5pal55qEIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU5NworIzogYnVpbHRpbi9mZXRjaC5jOjE3ODcKIG1zZ2lkICItLWRlcHRoIGFuZCAtLXVuc2hhbGxvdyBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKIG1zZ3N0ciAiLS1kZXB0aCDlkowgLS11bnNoYWxsb3cg5LiN6IO95ZCM5pe25L2/55SoIgogCi0jOiBidWlsdGluL2ZldGNoLmM6MTU5OQorIzogYnVpbHRpbi9mZXRjaC5jOjE3ODkKIG1zZ2lkICItLXVuc2hhbGxvdyBvbiBhIGNvbXBsZXRlIHJlcG9zaXRvcnkgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAi5a+55LqO5LiA5Liq5a6M5pW055qE5LuT5bqT77yM5Y+C5pWwIC0tdW5zaGFsbG93IOayoeacieaEj+S5iSIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MTUKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODA1CiBtc2dpZCAiZmV0Y2ggLS1hbGwgZG9lcyBub3QgdGFrZSBhIHJlcG9zaXRvcnkgYXJndW1lbnQiCiBtc2dzdHIgImZldGNoIC0tYWxsIOS4jeiDveW4puS4gOS4quS7k+W6k+WPguaVsCIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MTcKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODA3CiBtc2dpZCAiZmV0Y2ggLS1hbGwgZG9lcyBub3QgbWFrZSBzZW5zZSB3aXRoIHJlZnNwZWNzIgogbXNnc3RyICJmZXRjaCAtLWFsbCDluKblvJXnlKjop4TmoLzmsqHmnInku7vkvZXmhI/kuYkiCiAKLSM6IGJ1aWx0aW4vZmV0Y2guYzoxNjI2CisjOiBidWlsdGluL2ZldGNoLmM6MTgxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIHJlbW90ZSBvciByZW1vdGUgZ3JvdXA6ICVzIgogbXNnc3RyICLmsqHmnInov5nmoLfnmoTov5znqIvmiJbov5znqIvnu4TvvJolcyIKIAotIzogYnVpbHRpbi9mZXRjaC5jOjE2MzMKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODIzCiBtc2dpZCAiRmV0Y2hpbmcgYSBncm91cCBhbmQgc3BlY2lmeWluZyByZWZzcGVjcyBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICLojrflj5bnu4TlubbmjIflrprlvJXnlKjop4TmoLzmsqHmnInmhI/kuYkiCiAKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODQxCittc2dpZCAiIgorIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gZXh0ZW5zaW9ucy4iCisicGFydGlhbGNsb25lIgorbXNnc3RyICLlj6rlj6/ku6XlsIYgLS1maWx0ZXIg55So5LqO5ZyoIGV4dGVuc2lvbnMucGFydGlhbENsb25lIOS4remFjee9rueahOi/nOeoi+S7k+W6kyIKKwogIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6MTgKIG1zZ2lkICIiCiAiZ2l0IGZtdC1tZXJnZS1tc2cgWy1tIDxtZXNzYWdlPl0gWy0tbG9nWz08bj5dIHwgLS1uby1sb2ddIFstLWZpbGUgPGZpbGU+XSIKIG1zZ3N0ciAiZ2l0IGZtdC1tZXJnZS1tc2cgWy1tIDzor7TmmI4+XSBbLS1sb2dbPTxuPl0gfCAtLW5vLWxvZ10gWy0tZmlsZSA85paH5Lu2Pl0iCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MgorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6NjcxCiBtc2dpZCAicG9wdWxhdGUgbG9nIHdpdGggYXQgbW9zdCA8bj4gZW50cmllcyBmcm9tIHNob3J0bG9nIgogbXNnc3RyICLlkJHmj5DkuqTor7TmmI7kuK3mnIDlpJrlpI3liLbmjIflrprmnaHnm67vvIjlkIjlubbogIzmnaXnmoTmj5DkuqTvvInnmoTnroDnn63or7TmmI4iCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3NQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc0CiBtc2dpZCAiYWxpYXMgZm9yIC0tbG9nIChkZXByZWNhdGVkKSIKIG1zZ3N0ciAi5Y+C5pWwIC0tbG9nIOeahOWIq+WQje+8iOW3suW8g+eUqO+8iSIKIAotIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc4CisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzcKIG1zZ2lkICJ0ZXh0IgogbXNnc3RyICLmlofmnKwiCiAKLSM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQorIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc4CiBtc2dpZCAidXNlIDx0ZXh0PiBhcyBzdGFydCBvZiBtZXNzYWdlIgogbXNnc3RyICLkvb/nlKggPOaWh+acrD4g5L2c5Li65o+Q5Lqk6K+05piO55qE5byA5aeLIgogCi0jOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2ODAKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OQogbXNnaWQgImZpbGUgdG8gcmVhZCBmcm9tIgogbXNnc3RyICLku47mlofku7bkuK3or7vlj5YiCiAKQEAgLTExMDc5LDkxICsxMzkzNywyNzQgQEAKIG1zZ2lkICJzaG93IG9ubHkgPG4+IG1hdGNoZWQgcmVmcyIKIG1zZ3N0ciAi5Y+q5pi+56S6IDxuPiDkuKrljLnphY3nmoTlvJXnlKgiCiAKLSM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzkgYnVpbHRpbi90YWcuYzo0MjQKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzkgYnVpbHRpbi90YWcuYzo0MzkKIG1zZ2lkICJyZXNwZWN0IGZvcm1hdCBjb2xvcnMiCiBtc2dzdHIgIumBteeFp+agvOW8j+S4reeahOminOiJsui+k+WHuiIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0MgogbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBwb2ludHMgYXQgdGhlIGdpdmVuIG9iamVjdCIKIG1zZ3N0ciAi5Y+q5omT5Y2w5oyH5ZCR57uZ5a6a5a+56LGh55qE5byV55SoIgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ1CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ0CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAi5Y+q5omT5Y2w5bey57uP5ZCI5bm255qE5byV55SoIgogCi0jOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ2CisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjQ1CiBtc2dpZCAicHJpbnQgb25seSByZWZzIHRoYXQgYXJlIG5vdCBtZXJnZWQiCiBtc2dzdHIgIuWPquaJk+WNsOayoeacieWQiOW5tueahOW8leeUqCIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NgogbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgIuWPquaJk+WNsOWMheWQq+ivpeaPkOS6pOeahOW8leeUqCIKIAotIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0OAorIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NwogbXNnaWQgInByaW50IG9ubHkgcmVmcyB3aGljaCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgIuWPquaJk+WNsOS4jeWMheWQq+ivpeaPkOS6pOeahOW8leeUqCIKIAotIzogYnVpbHRpbi9mc2NrLmM6NTk4Ci1tc2dpZCAiQ2hlY2tpbmcgb2JqZWN0IGRpcmVjdG9yaWVzIgotbXNnc3RyICLmo4Dmn6Xlr7nosaHnm67lvZXkuK0iCisjOiBidWlsdGluL2ZzY2suYzo2OCBidWlsdGluL2ZzY2suYzoxNDcgYnVpbHRpbi9mc2NrLmM6MTQ4Cittc2dpZCAidW5rbm93biIKK21zZ3N0ciAi5pyq55+lIgogCi0jOiBidWlsdGluL2ZzY2suYzo2OTMKKyMuIFRSQU5TTEFUT1JTOiBlLmcuIGVycm9yIGluIHRyZWUgMDFiZmRhOiA8bW9yZSBleHBsYW5hdGlvbj4KKyM6IGJ1aWx0aW4vZnNjay5jOjEwMCBidWlsdGluL2ZzY2suYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gJXMgJXM6ICVzIgorbXNnc3RyICIlcyAlcyDplJnor6/vvJolcyIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gd2FybmluZyBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FybmluZyBpbiAlcyAlczogJXMiCittc2dzdHIgIiVzICVzIOitpuWRiu+8miVzIgorCisjOiBidWlsdGluL2ZzY2suYzoxNDMgYnVpbHRpbi9mc2NrLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImJyb2tlbiBsaW5rIGZyb20gJTdzICVzIgorbXNnc3RyICLmnaXoh6ogJTdzICVzIOeahOaNn+Wdj+eahOmTvuaOpSIKKworIzogYnVpbHRpbi9mc2NrLmM6MTU1Cittc2dpZCAid3Jvbmcgb2JqZWN0IHR5cGUgaW4gbGluayIKK21zZ3N0ciAi6ZO+5o6l5Lit6ZSZ6K+v55qE5a+56LGh57G75Z6LIgorCisjOiBidWlsdGluL2ZzY2suYzoxNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImJyb2tlbiBsaW5rIGZyb20gJTdzICVzXG4iCisiICAgICAgICAgICAgICB0byAlN3MgJXMiCittc2dzdHIgIiIKKyLmjZ/lnY/nmoTpk77mjqXmnaXoh6rkuo4gJTdzICVzXG4iCisiICAgICAgICAgICAgICDliLAgJTdzICVzIgorCisjOiBidWlsdGluL2ZzY2suYzoyODIKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyAlcyIKK21zZ3N0ciAi57y65aSxICVzICVzIgorCisjOiBidWlsdGluL2ZzY2suYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWFjaGFibGUgJXMgJXMiCittc2dzdHIgIuS4jeWPr+i+viAlcyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MzI5CisjLCBjLWZvcm1hdAorbXNnaWQgImRhbmdsaW5nICVzICVzIgorbXNnc3RyICLmgqznqbogJXMgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjMzOQorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgbG9zdC1mb3VuZCIKK21zZ3N0ciAi5LiN6IO95Yib5bu6IGxvc3QtZm91bmQiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjM1MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZmluaXNoICclcyciCittc2dzdHIgIuS4jeiDveWujOaIkCAnJXMnIgorCisjOiBidWlsdGluL2ZzY2suYzozNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMiCittc2dzdHIgIuato+WcqOajgOafpSAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIGNvbm5lY3Rpdml0eSAoJWQgb2JqZWN0cykiCittc2dzdHIgIuato+WcqOajgOafpei/numAmuaAp++8iCVkIOS4quWvueixoe+8iSIKKworIzogYnVpbHRpbi9mc2NrLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzICVzIgorbXNnc3RyICLmraPlnKjmo4Dmn6UgJXMgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQyOQorbXNnaWQgImJyb2tlbiBsaW5rcyIKK21zZ3N0ciAi5o2f5Z2P55qE6ZO+5o6lIgorCisjOiBidWlsdGluL2ZzY2suYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAicm9vdCAlcyIKK21zZ3N0ciAi5qC5ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFnZ2VkICVzICVzICglcykgaW4gJXMiCittc2dzdHIgIuagh+iusCAlcyAlcyAoJXMpIOS6jiAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgY29ycnVwdCBvciBtaXNzaW5nIgorbXNnc3RyICIlc++8muWvueixoeaNn+Wdj+aIluS4ouWksSIKKworIzogYnVpbHRpbi9mc2NrLmM6NTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHJlZmxvZyBlbnRyeSAlcyIKK21zZ3N0ciAiJXPvvJrml6DmlYjnmoTlvJXnlKjml6Xlv5fmnaHnm64gJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjUxNAorIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyByZWZsb2cgJXMtPiVzIgorbXNnc3RyICLmraPlnKjmo4Dmn6XlvJXnlKjml6Xlv5cgJXMtPiVzIgorCisjOiBidWlsdGluL2ZzY2suYzo1NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyICVzIgorbXNnc3RyICIlc++8muaXoOaViOeahCBzaGExIOaMh+mSiCAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBub3QgYSBjb21taXQiCittc2dzdHIgIiVz77ya5LiN5piv5LiA5Liq5o+Q5LqkIgorCisjOiBidWlsdGluL2ZzY2suYzo2MDkKK21zZ2lkICJub3RpY2U6IE5vIGRlZmF1bHQgcmVmZXJlbmNlcyIKK21zZ3N0ciAi5rOo5oSP77ya5peg6buY6K6k5byV55SoIgorCisjOiBidWlsdGluL2ZzY2suYzo2MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3Npbmc6ICVzIgorbXNnc3RyICIlc++8muWvueixoeaNn+Wdj+aIluS4ouWkse+8miVzIgorCisjOiBidWlsdGluL2ZzY2suYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3VsZCBub3QgYmUgcGFyc2VkOiAlcyIKK21zZ3N0ciAiJXPvvJrkuI3og73op6PmnpDlr7nosaHvvJolcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjU3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaGExIGZpbGU6ICVzIgorbXNnc3RyICLlnY/nmoQgc2hhMSDmlofku7bvvJolcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjcyCittc2dpZCAiQ2hlY2tpbmcgb2JqZWN0IGRpcmVjdG9yeSIKK21zZ3N0ciAi5q2j5Zyo5qOA5p+l5a+56LGh55uu5b2VIgorCisjOiBidWlsdGluL2ZzY2suYzo2NzUKK21zZ2lkICJDaGVja2luZyBvYmplY3QgZGlyZWN0b3JpZXMiCittc2dzdHIgIuato+WcqOajgOafpeWvueixoeebruW9lSIKKworIzogYnVpbHRpbi9mc2NrLmM6NjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzIGxpbmsiCittc2dzdHIgIuato+WcqOajgOafpSAlcyDpk77mjqUiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY5NSBidWlsdGluL2luZGV4LXBhY2suYzo4NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAlcyIKK21zZ3N0ciAi5peg5pWI55qEICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo3MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcG9pbnRzIHRvIHNvbWV0aGluZyBzdHJhbmdlICglcykiCittc2dzdHIgIiVzIOaMh+WQkeWlh+aAqueahOS4nOilv++8iCVz77yJIgorCisjOiBidWlsdGluL2ZzY2suYzo3MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRldGFjaGVkIEhFQUQgcG9pbnRzIGF0IG5vdGhpbmciCittc2dzdHIgIiVz77ya5YiG56a75aS05oyH6ZKI55qE5oyH5ZCR5LiN5a2Y5ZyoIgorCisjOiBidWlsdGluL2ZzY2suYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aWNlOiAlcyBwb2ludHMgdG8gYW4gdW5ib3JuIGJyYW5jaCAoJXMpIgorbXNnc3RyICLms6jmhI/vvJolcyDmjIflkJHkuIDkuKrlsJrmnKror57nlJ/nmoTliIbmlK/vvIglc++8iSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzI0Cittc2dpZCAiQ2hlY2tpbmcgY2FjaGUgdHJlZSIKK21zZ3N0ciAi5q2j5Zyo5qOA5p+l57yT5a2Y5qCRIgorCisjOiBidWlsdGluL2ZzY2suYzo3MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyIGluIGNhY2hlLXRyZWUiCittc2dzdHIgIiVz77yaY2FjaGUtdHJlZSDkuK3ml6DmlYjnmoQgc2hhMSDmjIfpkogiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjczOAorbXNnaWQgIm5vbi10cmVlIGluIGNhY2hlLXRyZWUiCittc2dzdHIgImNhY2hlLXRyZWUg5Lit6Z2e5qCR5a+56LGhIgorCisjOiBidWlsdGluL2ZzY2suYzo3NjkKIG1zZ2lkICJnaXQgZnNjayBbPG9wdGlvbnM+XSBbPG9iamVjdD4uLi5dIgogbXNnc3RyICJnaXQgZnNjayBbPOmAiemhuT5dIFs85a+56LGhPi4uLl0iCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjY5OQorIzogYnVpbHRpbi9mc2NrLmM6Nzc1CiBtc2dpZCAic2hvdyB1bnJlYWNoYWJsZSBvYmplY3RzIgogbXNnc3RyICLmmL7npLrkuI3lj6/ovr7nmoTlr7nosaEiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMAorIzogYnVpbHRpbi9mc2NrLmM6Nzc2CiBtc2dpZCAic2hvdyBkYW5nbGluZyBvYmplY3RzIgogbXNnc3RyICLmmL7npLrmgqznqbrnmoTlr7nosaEiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwMQorIzogYnVpbHRpbi9mc2NrLmM6Nzc3CiBtc2dpZCAicmVwb3J0IHRhZ3MiCiBtc2dzdHIgIuaKpeWRiuagh+etviIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzAyCisjOiBidWlsdGluL2ZzY2suYzo3NzgKIG1zZ2lkICJyZXBvcnQgcm9vdCBub2RlcyIKIG1zZ3N0ciAi5oql5ZGK5qC56IqC54K5IgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDMKKyM6IGJ1aWx0aW4vZnNjay5jOjc3OQogbXNnaWQgIm1ha2UgaW5kZXggb2JqZWN0cyBoZWFkIG5vZGVzIgogbXNnc3RyICLlsIbntKLlvJXkuqbkvZzkuLrmo4Dmn6XnmoTlpLToioLngrkiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwNAorIzogYnVpbHRpbi9mc2NrLmM6NzgwCiBtc2dpZCAibWFrZSByZWZsb2dzIGhlYWQgbm9kZXMgKGRlZmF1bHQpIgogbXNnc3RyICLlsIblvJXnlKjml6Xlv5fkvZzkuLrmo4Dmn6XnmoTlpLToioLngrnvvIjpu5jorqTvvIkiCiAKLSM6IGJ1aWx0aW4vZnNjay5jOjcwNQorIzogYnVpbHRpbi9mc2NrLmM6NzgxCiBtc2dpZCAiYWxzbyBjb25zaWRlciBwYWNrcyBhbmQgYWx0ZXJuYXRlIG9iamVjdHMiCiBtc2dzdHIgIuS5n+iAg+iZkeWMheWSjOWkh+eUqOWvueixoSIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzA2CisjOiBidWlsdGluL2ZzY2suYzo3ODIKIG1zZ2lkICJjaGVjayBvbmx5IGNvbm5lY3Rpdml0eSIKIG1zZ3N0ciAi5LuF5qOA5p+l6L+e6YCa5oCnIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDcKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MwogbXNnaWQgImVuYWJsZSBtb3JlIHN0cmljdCBjaGVja2luZyIKIG1zZ3N0ciAi5ZCv55So5pu05Lil5qC855qE5qOA5p+lIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MDkKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NQogbXNnaWQgIndyaXRlIGRhbmdsaW5nIG9iamVjdHMgaW4gLmdpdC9sb3N0LWZvdW5kIgogbXNnc3RyICLlsIbmgqznqbrlr7nosaHlhpnlhaUgLmdpdC9sb3N0LWZvdW5kIOS4rSIKIAotIzogYnVpbHRpbi9mc2NrLmM6NzEwIGJ1aWx0aW4vcHJ1bmUuYzoxMTAKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NiBidWlsdGluL3BydW5lLmM6MTMyCiBtc2dpZCAic2hvdyBwcm9ncmVzcyIKIG1zZ3N0ciAi5pi+56S66L+b5bqmIgogCi0jOiBidWlsdGluL2ZzY2suYzo3MTEKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NwogbXNnaWQgInNob3cgdmVyYm9zZSBuYW1lcyBmb3IgcmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgIuaYvuekuuWPr+i+vuWvueixoeeahOivpue7huWQjeensCIKIAotIzogYnVpbHRpbi9mc2NrLmM6Nzc2CisjOiBidWlsdGluL2ZzY2suYzo4NDYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MjI1CiBtc2dpZCAiQ2hlY2tpbmcgb2JqZWN0cyIKLW1zZ3N0ciAi5qOA5p+l5a+56LGh5LitIgorbXNnc3RyICLmraPlnKjmo4Dmn6Xlr7nosaEiCiAKLSM6IGJ1aWx0aW4vZ2MuYzozNAorIzogYnVpbHRpbi9mc2NrLmM6ODc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgbWlzc2luZyIKK21zZ3N0ciAiJXPvvJrlr7nosaHnvLrlpLEiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjg4NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhcmFtZXRlcjogZXhwZWN0ZWQgc2hhMSwgZ290ICclcyciCittc2dzdHIgIuaXoOaViOeahOWPguaVsO+8muacn+acmyBzaGEx77yM5b6X5YiwICclcyciCisKKyM6IGJ1aWx0aW4vZ2MuYzozNQogbXNnaWQgImdpdCBnYyBbPG9wdGlvbnM+XSIKIG1zZ3N0ciAiZ2l0IGdjIFs86YCJ6aG5Pl0iCiAKQEAgLTExMTcyLDE3ICsxNDIxMywyMiBAQAogbXNnaWQgIkZhaWxlZCB0byBmc3RhdCAlczogJXMiCiBtc2dzdHIgIuWvuSAlcyDosIPnlKggZnN0YXQg5aSx6LSl77yaJXMiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo0NjEgYnVpbHRpbi9pbml0LWRiLmM6NTUKKyM6IGJ1aWx0aW4vZ2MuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlICclcycgdmFsdWUgJyVzJyIKK21zZ3N0ciAi5peg5rOV6Kej5p6QICclcycg5YC8ICclcyciCisKKyM6IGJ1aWx0aW4vZ2MuYzo0NzUgYnVpbHRpbi9pbml0LWRiLmM6NTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHN0YXQgJyVzJyIKIG1zZ3N0ciAi5LiN6IO95a+5ICclcycg6LCD55SoIHN0YXQiCiAKLSM6IGJ1aWx0aW4vZ2MuYzo0NzAgYnVpbHRpbi9ub3Rlcy5jOjI0MCBidWlsdGluL3RhZy5jOjUxMAorIzogYnVpbHRpbi9nYy5jOjQ4NCBidWlsdGluL25vdGVzLmM6MjQwIGJ1aWx0aW4vdGFnLmM6NTI5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCByZWFkICclcyciCiBtc2dzdHIgIuS4jeiDveivu+WPliAnJXMnIgogCi0jOiBidWlsdGluL2djLmM6NDc3CisjOiBidWlsdGluL2djLmM6NDkxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJUaGUgbGFzdCBnYyBydW4gcmVwb3J0ZWQgdGhlIGZvbGxvd2luZy4gUGxlYXNlIGNvcnJlY3QgdGhlIHJvb3QgY2F1c2VcbiIKQEAgLTExMTk2LDczICsxNDI0Miw3MyBAQAogIlxuIgogIiVzIgogCi0jOiBidWlsdGluL2djLmM6NTE5CisjOiBidWlsdGluL2djLmM6NTM5CiBtc2dpZCAicHJ1bmUgdW5yZWZlcmVuY2VkIG9iamVjdHMiCiBtc2dzdHIgIua4hemZpOacquW8leeUqOeahOWvueixoSIKIAotIzogYnVpbHRpbi9nYy5jOjUyMQorIzogYnVpbHRpbi9nYy5jOjU0MQogbXNnaWQgImJlIG1vcmUgdGhvcm91Z2ggKGluY3JlYXNlZCBydW50aW1lKSIKIG1zZ3N0ciAi5pu05b275bqV77yI5aKe5Yqg6L+Q6KGM5pe26Ze077yJIgogCi0jOiBidWlsdGluL2djLmM6NTIyCisjOiBidWlsdGluL2djLmM6NTQyCiBtc2dpZCAiZW5hYmxlIGF1dG8tZ2MgbW9kZSIKIG1zZ3N0ciAi5ZCv55So6Ieq5Yqo5Z6D5Zy+5Zue5pS25qih5byPIgogCi0jOiBidWlsdGluL2djLmM6NTI1CisjOiBidWlsdGluL2djLmM6NTQ1CiBtc2dpZCAiZm9yY2UgcnVubmluZyBnYyBldmVuIGlmIHRoZXJlIG1heSBiZSBhbm90aGVyIGdjIHJ1bm5pbmciCiBtc2dzdHIgIuW8uuWItuaJp+ihjCBnYyDljbPkvb/lj6blpJbkuIDkuKogZ2Mg5q2j5Zyo5omn6KGMIgogCi0jOiBidWlsdGluL2djLmM6NTI4CisjOiBidWlsdGluL2djLmM6NTQ4CiBtc2dpZCAicmVwYWNrIGFsbCBvdGhlciBwYWNrcyBleGNlcHQgdGhlIGxhcmdlc3QgcGFjayIKIG1zZ3N0ciAi6Zmk5LqG5pyA5aSn55qE5YyF5LmL5aSW77yM5a+55omA5pyJ5YW25a6D5YyF5paH5Lu26YeN5paw5omT5YyFIgogCi0jOiBidWlsdGluL2djLmM6NTQ1CisjOiBidWlsdGluL2djLmM6NTY1CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBwYXJzZSBnYy5sb2dleHBpcnkgdmFsdWUgJXMiCiBtc2dzdHIgIuino+aekCBnYy5sb2dleHBpcnkg55qE5YC8ICVzIOWksei0pSIKIAotIzogYnVpbHRpbi9nYy5jOjU1NgorIzogYnVpbHRpbi9nYy5jOjU3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcGFyc2UgcHJ1bmUgZXhwaXJ5IHZhbHVlICVzIgogbXNnc3RyICLop6PmnpDmuIXpmaTmnJ/pmZDlgLwgJXMg5aSx6LSlIgogCi0jOiBidWlsdGluL2djLmM6NTc2CisjOiBidWlsdGluL2djLmM6NTk2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF1dG8gcGFja2luZyB0aGUgcmVwb3NpdG9yeSBpbiBiYWNrZ3JvdW5kIGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgogbXNnc3RyICLoh6rliqjlnKjlkI7lj7DmiafooYzku5PlupPmiZPljIXku6XmsYLmnIDkvbPmgKfog73jgIJcbiIKIAotIzogYnVpbHRpbi9nYy5jOjU3OAorIzogYnVpbHRpbi9nYy5jOjU5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJBdXRvIHBhY2tpbmcgdGhlIHJlcG9zaXRvcnkgZm9yIG9wdGltdW0gcGVyZm9ybWFuY2UuXG4iCiBtc2dzdHIgIuiHquWKqOaJk+WMheS7k+W6k+S7peaxguacgOS9s+aAp+iDveOAglxuIgogCi0jOiBidWlsdGluL2djLmM6NTc5CisjOiBidWlsdGluL2djLmM6NTk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlNlZSBcImdpdCBoZWxwIGdjXCIgZm9yIG1hbnVhbCBob3VzZWtlZXBpbmcuXG4iCiBtc2dzdHIgIuaJi+W3pee7tOaKpOWPguingSBcImdpdCBoZWxwIGdjXCLjgIJcbiIKIAotIzogYnVpbHRpbi9nYy5jOjYxOQorIzogYnVpbHRpbi9nYy5jOjYzOQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiZ2MgaXMgYWxyZWFkeSBydW5uaW5nIG9uIG1hY2hpbmUgJyVzJyBwaWQgJTxQUkl1TUFYPiAodXNlIC0tZm9yY2UgaWYgbm90KSIKIG1zZ3N0ciAiIgogIuW3sue7j+acieS4gOS4qiBnYyDmraPov5DooYzlnKjmnLrlmaggJyVzJyBwaWQgJTxQUkl1TUFYPu+8iOWmguaenOS4jeaYr++8jOS9v+eUqCAtLWZvcmNl77yJIgogCi0jOiBidWlsdGluL2djLmM6NjcwCisjOiBidWlsdGluL2djLmM6Njk0CiBtc2dpZCAiIgogIlRoZXJlIGFyZSB0b28gbWFueSB1bnJlYWNoYWJsZSBsb29zZSBvYmplY3RzOyBydW4gJ2dpdCBwcnVuZScgdG8gcmVtb3ZlIHRoZW0uIgogbXNnc3RyICLmnInlpKrlpJrkuI3lj6/ovr7nmoTmnb7mlaPlr7nosaHvvIzov5DooYwgJ2dpdCBwcnVuZScg5Yig6Zmk5a6D5Lus44CCIgogCi0jOiBidWlsdGluL2dyZXAuYzoyOAorIzogYnVpbHRpbi9ncmVwLmM6MzAKIG1zZ2lkICJnaXQgZ3JlcCBbPG9wdGlvbnM+XSBbLWVdIDxwYXR0ZXJuPiBbPHJldj4uLi5dIFtbLS1dIDxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBncmVwIFs86YCJ6aG5Pl0gWy1lXSA85qih5byPPiBbPOeJiOacrD4uLi5dIFtbLS1dIDzot6/lvoQ+Li4uXSIKIAotIzogYnVpbHRpbi9ncmVwLmM6MjI0CisjOiBidWlsdGluL2dyZXAuYzoyMjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ3JlcDogZmFpbGVkIHRvIGNyZWF0ZSB0aHJlYWQ6ICVzIgogbXNnc3RyICJncmVw77ya5peg5rOV5Yib5bu657q/56iL77yaJXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjI3OAorIzogYnVpbHRpbi9ncmVwLmM6Mjc5CiAjLCBjLWZvcm1hdAogbXNnaWQgImludmFsaWQgbnVtYmVyIG9mIHRocmVhZHMgc3BlY2lmaWVkICglZCkgZm9yICVzIgogbXNnc3RyICLkuLogJTIkcyDorr7lrprnmoTnur/nqIvmlbAgKCUxJGQpIOaXoOaViCIKQEAgLTExMjcxLDI2MyArMTQzMTcsMjYzIEBACiAjLiB2YXJpYWJsZSBmb3IgdHdlYWtpbmcgdGhyZWFkcywgY3VycmVudGx5CiAjLiBncmVwLnRocmVhZHMKICMuCi0jOiBidWlsdGluL2dyZXAuYzoyODYgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUwNiBidWlsdGluL2luZGV4LXBhY2suYzoxNjk3Ci0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MTkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjI4NyBidWlsdGluL2luZGV4LXBhY2suYzoxNTM4IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MzEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyB0aHJlYWRzIHN1cHBvcnQsIGlnbm9yaW5nICVzIgogbXNnc3RyICLmsqHmnInnur/nqIvmlK/mjIHvvIzlv73nlaUgJXMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjQ1OCBidWlsdGluL2dyZXAuYzo1NzkgYnVpbHRpbi9ncmVwLmM6NjIwCisjOiBidWlsdGluL2dyZXAuYzo0NTMgYnVpbHRpbi9ncmVwLmM6NTc4IGJ1aWx0aW4vZ3JlcC5jOjYxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCB0cmVlICglcykiCiBtc2dzdHIgIuaXoOazleivu+WPluagke+8iCVz77yJIgogCi0jOiBidWlsdGluL2dyZXAuYzo2MzUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjYzMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ3JlcCBmcm9tIG9iamVjdCBvZiB0eXBlICVzIgogbXNnc3RyICLml6Dms5XmipPlj5bmnaXoh6rkuo4gJXMg57G75Z6L55qE5a+56LGhIgogCi0jOiBidWlsdGluL2dyZXAuYzo3MDEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjcwNAogIywgYy1mb3JtYXQKIG1zZ2lkICJzd2l0Y2ggYCVjJyBleHBlY3RzIGEgbnVtZXJpY2FsIHZhbHVlIgogbXNnc3RyICLlvIDlhbMgYCVjJyDmnJ/mnJvkuIDkuKrmlbDlrZflgLwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwMAorIzogYnVpbHRpbi9ncmVwLmM6ODAzCiBtc2dpZCAic2VhcmNoIGluIGluZGV4IGluc3RlYWQgb2YgaW4gdGhlIHdvcmsgdHJlZSIKIG1zZ3N0ciAi5Zyo57Si5byV5Yy65pCc57Si6ICM5LiN5piv5Zyo5bel5L2c5Yy6IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwNQogbXNnaWQgImZpbmQgaW4gY29udGVudHMgbm90IG1hbmFnZWQgYnkgZ2l0IgogbXNnc3RyICLlnKjmnKrooqsgZ2l0IOeuoeeQhueahOWGheWuueS4reafpeaJviIKIAogIyAg6K+R6ICF77ya5Lit5paH5a2X56ym5Liy5ou85o6l77yM5Y+v5Yig6Zmk5YmN5a+856m65qC8Ci0jOiBidWlsdGluL2dyZXAuYzo4MDQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwNwogbXNnaWQgInNlYXJjaCBpbiBib3RoIHRyYWNrZWQgYW5kIHVudHJhY2tlZCBmaWxlcyIKIG1zZ3N0ciAi5Zyo6Lef6Liq5ZKM5pyq6Lef6Liq55qE5paH5Lu25Lit5pCc57SiIgogCi0jOiBidWlsdGluL2dyZXAuYzo4MDYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwOQogbXNnaWQgImlnbm9yZSBmaWxlcyBzcGVjaWZpZWQgdmlhICcuZ2l0aWdub3JlJyIKIG1zZ3N0ciAi5b+955WlICcuZ2l0aWdub3JlJyDljIXlkKvnmoTmlofku7YiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgwOAorIzogYnVpbHRpbi9ncmVwLmM6ODExCiBtc2dpZCAicmVjdXJzaXZlbHkgc2VhcmNoIGluIGVhY2ggc3VibW9kdWxlIgogbXNnc3RyICLlnKjmr4/kuIDkuKrlrZDmqKHnu4TkuK3pgJLlvZLmkJzntKIiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxMQorIzogYnVpbHRpbi9ncmVwLmM6ODE0CiBtc2dpZCAic2hvdyBub24tbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgIuaYvuekuuacquWMuemFjeeahOihjCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODEzCisjOiBidWlsdGluL2dyZXAuYzo4MTYKIG1zZ2lkICJjYXNlIGluc2Vuc2l0aXZlIG1hdGNoaW5nIgogbXNnc3RyICLkuI3ljLrliIblpKflsI/lhpnljLnphY0iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxNQorIzogYnVpbHRpbi9ncmVwLmM6ODE4CiBtc2dpZCAibWF0Y2ggcGF0dGVybnMgb25seSBhdCB3b3JkIGJvdW5kYXJpZXMiCiBtc2dzdHIgIuWPquWcqOWNleivjei+ueeVjOWMuemFjeaooeW8jyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODE3CisjOiBidWlsdGluL2dyZXAuYzo4MjAKIG1zZ2lkICJwcm9jZXNzIGJpbmFyeSBmaWxlcyBhcyB0ZXh0IgogbXNnc3RyICLmiorkuozov5vliLbmlofku7blvZPlgZrmlofmnKzlpITnkIYiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgxOQorIzogYnVpbHRpbi9ncmVwLmM6ODIyCiBtc2dpZCAiZG9uJ3QgbWF0Y2ggcGF0dGVybnMgaW4gYmluYXJ5IGZpbGVzIgogbXNnc3RyICLkuI3lnKjkuozov5vliLbmlofku7bkuK3ljLnphY3mqKHlvI8iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgyMgorIzogYnVpbHRpbi9ncmVwLmM6ODI1CiBtc2dpZCAicHJvY2VzcyBiaW5hcnkgZmlsZXMgd2l0aCB0ZXh0Y29udiBmaWx0ZXJzIgogbXNnc3RyICLnlKggdGV4dGNvbnYg6L+H5ruk5Zmo5aSE55CG5LqM6L+b5Yi25paH5Lu2IgogCi0jOiBidWlsdGluL2dyZXAuYzo4MjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyNwogbXNnaWQgInNlYXJjaCBpbiBzdWJkaXJlY3RvcmllcyAoZGVmYXVsdCkiCiBtc2dzdHIgIuWcqOWtkOebruW9leS4reWvu+aJvu+8iOm7mOiupO+8iSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODI2CisjOiBidWlsdGluL2dyZXAuYzo4MjkKIG1zZ2lkICJkZXNjZW5kIGF0IG1vc3QgPGRlcHRoPiBsZXZlbHMiCiBtc2dzdHIgIuacgOWkmuS7peaMh+WumueahOa3seW6puWQkeS4i+Wvu+aJviIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODMwCisjOiBidWlsdGluL2dyZXAuYzo4MzMKIG1zZ2lkICJ1c2UgZXh0ZW5kZWQgUE9TSVggcmVndWxhciBleHByZXNzaW9ucyIKIG1zZ3N0ciAi5L2/55So5omp5bGV55qEIFBPU0lYIOato+WImeihqOi+vuW8jyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODMzCisjOiBidWlsdGluL2dyZXAuYzo4MzYKIG1zZ2lkICJ1c2UgYmFzaWMgUE9TSVggcmVndWxhciBleHByZXNzaW9ucyAoZGVmYXVsdCkiCiBtc2dzdHIgIuS9v+eUqOWfuuacrOeahCBQT1NJWCDmraPliJnooajovr7lvI/vvIjpu5jorqTvvIkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjgzNgorIzogYnVpbHRpbi9ncmVwLmM6ODM5CiBtc2dpZCAiaW50ZXJwcmV0IHBhdHRlcm5zIGFzIGZpeGVkIHN0cmluZ3MiCiBtc2dzdHIgIuaKiuaooeW8j+ino+aekOS4uuWbuuWumueahOWtl+espuS4siIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODM5CisjOiBidWlsdGluL2dyZXAuYzo4NDIKIG1zZ2lkICJ1c2UgUGVybC1jb21wYXRpYmxlIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCiBtc2dzdHIgIuS9v+eUqCBQZXJsIOWFvOWuueeahOato+WImeihqOi+vuW8jyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQyCisjOiBidWlsdGluL2dyZXAuYzo4NDUKIG1zZ2lkICJzaG93IGxpbmUgbnVtYmVycyIKIG1zZ3N0ciAi5pi+56S66KGM5Y+3IgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NgogbXNnaWQgInNob3cgY29sdW1uIG51bWJlciBvZiBmaXJzdCBtYXRjaCIKIG1zZ3N0ciAi5pi+56S656ys5LiA5Liq5Yy56YWN55qE5YiX5Y+3IgogCi0jOiBidWlsdGluL2dyZXAuYzo4NDQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NwogbXNnaWQgImRvbid0IHNob3cgZmlsZW5hbWVzIgogbXNnc3RyICLkuI3mmL7npLrmlofku7blkI0iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0NQorIzogYnVpbHRpbi9ncmVwLmM6ODQ4CiBtc2dpZCAic2hvdyBmaWxlbmFtZXMiCiBtc2dzdHIgIuaYvuekuuaWh+S7tuWQjSIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODQ3CisjOiBidWlsdGluL2dyZXAuYzo4NTAKIG1zZ2lkICJzaG93IGZpbGVuYW1lcyByZWxhdGl2ZSB0byB0b3AgZGlyZWN0b3J5IgogbXNnc3RyICLmmL7npLrnm7jlr7nkuo7pobbnuqfnm67lvZXnmoTmlofku7blkI0iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg0OQorIzogYnVpbHRpbi9ncmVwLmM6ODUyCiBtc2dpZCAic2hvdyBvbmx5IGZpbGVuYW1lcyBpbnN0ZWFkIG9mIG1hdGNoaW5nIGxpbmVzIgogbXNnc3RyICLlj6rmmL7npLrmlofku7blkI3ogIzkuI3mmL7npLrljLnphY3nmoTooYwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1MQorIzogYnVpbHRpbi9ncmVwLmM6ODU0CiBtc2dpZCAic3lub255bSBmb3IgLS1maWxlcy13aXRoLW1hdGNoZXMiCiBtc2dzdHIgIuWSjCAtLWZpbGVzLXdpdGgtbWF0Y2hlcyDlkIzkuYkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1NAorIzogYnVpbHRpbi9ncmVwLmM6ODU3CiBtc2dpZCAic2hvdyBvbmx5IHRoZSBuYW1lcyBvZiBmaWxlcyB3aXRob3V0IG1hdGNoIgogbXNnc3RyICLlj6rmmL7npLrmnKrljLnphY3nmoTmlofku7blkI0iCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1NgorIzogYnVpbHRpbi9ncmVwLmM6ODU5CiBtc2dpZCAicHJpbnQgTlVMIGFmdGVyIGZpbGVuYW1lcyIKIG1zZ3N0ciAi5Zyo5paH5Lu25ZCN5ZCO6L6T5Ye6IE5VTCDlrZfnrKYiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg1OQorIzogYnVpbHRpbi9ncmVwLmM6ODYyCiBtc2dpZCAic2hvdyBvbmx5IG1hdGNoaW5nIHBhcnRzIG9mIGEgbGluZSIKIG1zZ3N0ciAi5Y+q5pi+56S66KGM5Lit55qE5Yy56YWN55qE6YOo5YiGIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2NAogbXNnaWQgInNob3cgdGhlIG51bWJlciBvZiBtYXRjaGVzIGluc3RlYWQgb2YgbWF0Y2hpbmcgbGluZXMiCiBtc2dzdHIgIuaYvuekuuaAu+WMuemFjeihjOaVsO+8jOiAjOS4jeaYvuekuuWMuemFjeeahOihjCIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODYyCisjOiBidWlsdGluL2dyZXAuYzo4NjUKIG1zZ2lkICJoaWdobGlnaHQgbWF0Y2hlcyIKIG1zZ3N0ciAi6auY5Lqu5pi+56S65Yy56YWN6aG5IgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2NwogbXNnaWQgInByaW50IGVtcHR5IGxpbmUgYmV0d2VlbiBtYXRjaGVzIGZyb20gZGlmZmVyZW50IGZpbGVzIgogbXNnc3RyICLlnKjkuI3lkIzmlofku7bnmoTljLnphY3pobnkuYvpl7TmiZPljbDnqbrooYwiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg2NgorIzogYnVpbHRpbi9ncmVwLmM6ODY5CiBtc2dpZCAic2hvdyBmaWxlbmFtZSBvbmx5IG9uY2UgYWJvdmUgbWF0Y2hlcyBmcm9tIHNhbWUgZmlsZSIKIG1zZ3N0ciAi5Y+q5Zyo5ZCM5LiA5paH5Lu255qE5Yy56YWN6aG555qE5LiK6Z2i5pi+56S65LiA5qyh5paH5Lu25ZCNIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NjkKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3MgogbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYmVmb3JlIGFuZCBhZnRlciBtYXRjaGVzIgogbXNnc3RyICLmmL7npLrljLnphY3pobnliY3lkI7nmoQgPG4+IOihjOS4iuS4i+aWhyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODcyCisjOiBidWlsdGluL2dyZXAuYzo4NzUKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGJlZm9yZSBtYXRjaGVzIgogbXNnc3RyICLmmL7npLrljLnphY3pobnliY0gPG4+IOihjOS4iuS4i+aWhyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODc0CisjOiBidWlsdGluL2dyZXAuYzo4NzcKIG1zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGFmdGVyIG1hdGNoZXMiCiBtc2dzdHIgIuaYvuekuuWMuemFjemhueWQjiA8bj4g6KGM5LiK5LiL5paHIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3OQogbXNnaWQgInVzZSA8bj4gd29ya2VyIHRocmVhZHMiCiBtc2dzdHIgIuS9v+eUqCA8bj4g5Liq5bel5L2c57q/56iLIgogCi0jOiBidWlsdGluL2dyZXAuYzo4NzcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4MAogbXNnaWQgInNob3J0Y3V0IGZvciAtQyBOVU0iCiBtc2dzdHIgIuW/q+aNt+mUriAtQyDmlbDlrZciCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4MAorIzogYnVpbHRpbi9ncmVwLmM6ODgzCiBtc2dpZCAic2hvdyBhIGxpbmUgd2l0aCB0aGUgZnVuY3Rpb24gbmFtZSBiZWZvcmUgbWF0Y2hlcyIKIG1zZ3N0ciAi5Zyo5Yy56YWN55qE5YmN6Z2i5pi+56S65LiA6KGM5Ye95pWw5ZCNIgogCi0jOiBidWlsdGluL2dyZXAuYzo4ODIKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4NQogbXNnaWQgInNob3cgdGhlIHN1cnJvdW5kaW5nIGZ1bmN0aW9uIgogbXNnc3RyICLmmL7npLrmiYDlnKjlh73mlbDnmoTliY3lkI7lhoXlrrkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjg4NQorIzogYnVpbHRpbi9ncmVwLmM6ODg4CiBtc2dpZCAicmVhZCBwYXR0ZXJucyBmcm9tIGZpbGUiCiBtc2dzdHIgIuS7juaWh+S7tuivu+WPluaooeW8jyIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODg3CisjOiBidWlsdGluL2dyZXAuYzo4OTAKIG1zZ2lkICJtYXRjaCA8cGF0dGVybj4iCiBtc2dzdHIgIuWMuemFjSA85qih5byPPiIKIAotIzogYnVpbHRpbi9ncmVwLmM6ODg5CisjOiBidWlsdGluL2dyZXAuYzo4OTIKIG1zZ2lkICJjb21iaW5lIHBhdHRlcm5zIHNwZWNpZmllZCB3aXRoIC1lIgogbXNnc3RyICLnu4TlkIjnlKggLWUg5Y+C5pWw6K6+5a6a55qE5qih5byPIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDEKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwNAogbXNnaWQgImluZGljYXRlIGhpdCB3aXRoIGV4aXQgc3RhdHVzIHdpdGhvdXQgb3V0cHV0IgogbXNnc3RyICLkuI3ovpPlh7rvvIzogIznlKjpgIDlh7rnoIHmoIfor4blkb3kuK3nirbmgIEiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwMworIzogYnVpbHRpbi9ncmVwLmM6OTA2CiBtc2dpZCAic2hvdyBvbmx5IG1hdGNoZXMgZnJvbSBmaWxlcyB0aGF0IG1hdGNoIGFsbCBwYXR0ZXJucyIKIG1zZ3N0ciAi5Y+q5pi+56S65Yy56YWN5omA5pyJ5qih5byP55qE5paH5Lu25Lit55qE5Yy56YWNIgogCi0jOiBidWlsdGluL2dyZXAuYzo5MDUKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkwOAogbXNnaWQgInNob3cgcGFyc2UgdHJlZSBmb3IgZ3JlcCBleHByZXNzaW9uIgogbXNnc3RyICLmmL7npLogZ3JlcCDooajovr7lvI/nmoTop6PmnpDmoJEiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjkwOQorIzogYnVpbHRpbi9ncmVwLmM6OTEyCiBtc2dpZCAicGFnZXIiCiBtc2dzdHIgIuWIhumhtSIKIAotIzogYnVpbHRpbi9ncmVwLmM6OTA5CisjOiBidWlsdGluL2dyZXAuYzo5MTIKIG1zZ2lkICJzaG93IG1hdGNoaW5nIGZpbGVzIGluIHRoZSBwYWdlciIKIG1zZ3N0ciAi5YiG6aG15pi+56S65Yy56YWN55qE5paH5Lu2IgogCi0jOiBidWlsdGluL2dyZXAuYzo5MTMKKyM6IGJ1aWx0aW4vZ3JlcC5jOjkxNgogbXNnaWQgImFsbG93IGNhbGxpbmcgb2YgZ3JlcCgxKSAoaWdub3JlZCBieSB0aGlzIGJ1aWxkKSIKIG1zZ3N0ciAi5YWB6K646LCD55SoIGdyZXAoMSnvvIjmnKzmrKHmnoTlu7rlv73nlaXvvIkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjk3NworIzogYnVpbHRpbi9ncmVwLmM6OTgzCiBtc2dpZCAibm8gcGF0dGVybiBnaXZlbiIKIG1zZ3N0ciAi5pyq5o+Q5L6b5Yy56YWN5qih5byPIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDEzCisjOiBidWlsdGluL2dyZXAuYzoxMDE5CiBtc2dpZCAiLS1uby1pbmRleCBvciAtLXVudHJhY2tlZCBjYW5ub3QgYmUgdXNlZCB3aXRoIHJldnMiCiBtc2dzdHIgIi0tbm8taW5kZXgg5oiWIC0tdW50cmFja2VkIOS4jeiDveWSjOeJiOacrOWQjOaXtuS9v+eUqCIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTAyMAorIzogYnVpbHRpbi9ncmVwLmM6MTAyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSByZXZpc2lvbjogJXMiCiBtc2dzdHIgIuS4jeiDveino+aekOeJiOacrO+8miVzIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMDUxCisjOiBidWlsdGluL2dyZXAuYzoxMDU3Cittc2dpZCAiLS11bnRyYWNrZWQgbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgorbXNnc3RyICItLXVudHJhY2tlZCDkuI3mlK/mjIHlkowgLS1yZWN1cnNlLXN1Ym1vZHVsZXMg5YWx55SoIgorCisjOiBidWlsdGluL2dyZXAuYzoxMDYxCiBtc2dpZCAiaW52YWxpZCBvcHRpb24gY29tYmluYXRpb24sIGlnbm9yaW5nIC0tdGhyZWFkcyIKIG1zZ3N0ciAi5peg5pWI55qE6YCJ6aG557uE5ZCI77yM5b+955WlIC0tdGhyZWFkcyIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTA1NCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTcKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjQgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTQ3CiBtc2dpZCAibm8gdGhyZWFkcyBzdXBwb3J0LCBpZ25vcmluZyAtLXRocmVhZHMiCiBtc2dzdHIgIuayoeaciee6v+eoi+aUr+aMge+8jOW/veeVpSAtLXRocmVhZHMiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUwMyBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI3MTYKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzNSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBudW1iZXIgb2YgdGhyZWFkcyBzcGVjaWZpZWQgKCVkKSIKIG1zZ3N0ciAi5oyH5a6a55qE57q/56iL5pWw5peg5pWI77yIJWTvvIkiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjEwODAKKyM6IGJ1aWx0aW4vZ3JlcC5jOjExMDEKIG1zZ2lkICItLW9wZW4tZmlsZXMtaW4tcGFnZXIgb25seSB3b3JrcyBvbiB0aGUgd29ya3RyZWUiCiBtc2dzdHIgIi0tb3Blbi1maWxlcy1pbi1wYWdlciDku4XnlKjkuo7lt6XkvZzljLoiCiAKLSM6IGJ1aWx0aW4vZ3JlcC5jOjExMDMKLW1zZ2lkICJvcHRpb24gbm90IHN1cHBvcnRlZCB3aXRoIC0tcmVjdXJzZS1zdWJtb2R1bGVzIgotbXNnc3RyICLpgInpobnkuI3mlK/mjIHlkowgLS1yZWN1cnNlLXN1Ym1vZHVsZXMg5YWx55SoIgotCi0jOiBidWlsdGluL2dyZXAuYzoxMTA5CisjOiBidWlsdGluL2dyZXAuYzoxMTI3CiBtc2dpZCAiLS1jYWNoZWQgb3IgLS11bnRyYWNrZWQgY2Fubm90IGJlIHVzZWQgd2l0aCAtLW5vLWluZGV4IgogbXNnc3RyICItLWNhY2hlZCDmiJYgLS11bnRyYWNrZWQg5LiN6IO95LiOIC0tbm8taW5kZXgg5ZCM5pe25L2/55SoIgogCi0jOiBidWlsdGluL2dyZXAuYzoxMTE1CisjOiBidWlsdGluL2dyZXAuYzoxMTMzCiBtc2dpZCAiLS1bbm8tXWV4Y2x1ZGUtc3RhbmRhcmQgY2Fubm90IGJlIHVzZWQgZm9yIHRyYWNrZWQgY29udGVudHMiCiBtc2dzdHIgIi0tW25vLV1leGNsdWRlLXN0YW5kYXJkIOS4jeiDveeUqOS6juW3sui3n+i4quWGheWuuSIKIAotIzogYnVpbHRpbi9ncmVwLmM6MTEyMworIzogYnVpbHRpbi9ncmVwLmM6MTE0MQogbXNnaWQgImJvdGggLS1jYWNoZWQgYW5kIHRyZWVzIGFyZSBnaXZlbiIKIG1zZ3N0ciAi5ZCM5pe257uZ5Ye65LqGIC0tY2FjaGVkIOWSjOagkeWvueixoSIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg0CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODUKIG1zZ2lkICIiCiAiZ2l0IGhhc2gtb2JqZWN0IFstdCA8dHlwZT5dIFstd10gWy0tcGF0aD08ZmlsZT4gfCAtLW5vLWZpbHRlcnNdIFstLXN0ZGluXSAiCiAiWy0tXSA8ZmlsZT4uLi4iCkBAIC0xMTUzNSwzNiArMTQ1ODEsMzIgQEAKICJnaXQgaGFzaC1vYmplY3QgWy10IDznsbvlnos+XSBbLXddIFstLXBhdGg9POaWh+S7tj4gfCAtLW5vLWZpbHRlcnNdIFstLXN0ZGluXSAiCiAiWy0tXSA85paH5Lu2Pi4uLiIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg1CisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6ODYKIG1zZ2lkICJnaXQgaGFzaC1vYmplY3QgIC0tc3RkaW4tcGF0aHMiCiBtc2dzdHIgImdpdCBoYXNoLW9iamVjdCAgLS1zdGRpbi1wYXRocyIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk3Ci1tc2dpZCAidHlwZSIKLW1zZ3N0ciAi57G75Z6LIgotCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTcKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAogbXNnaWQgIm9iamVjdCB0eXBlIgogbXNnc3RyICLlr7nosaHnsbvlnosiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjk5CiBtc2dpZCAid3JpdGUgdGhlIG9iamVjdCBpbnRvIHRoZSBvYmplY3QgZGF0YWJhc2UiCiBtc2dzdHIgIuWwhuWvueixoeWGmeWFpeWvueixoeaVsOaNruW6kyIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMQogbXNnaWQgInJlYWQgdGhlIG9iamVjdCBmcm9tIHN0ZGluIgogbXNnc3RyICLku47moIflh4bovpPlhaXor7vlj5blr7nosaEiCiAKLSM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDIKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDMKIG1zZ2lkICJzdG9yZSBmaWxlIGFzIGlzIHdpdGhvdXQgZmlsdGVycyIKIG1zZ3N0ciAi5Y6f5qC35a2Y5YKo5paH5Lu25LiN5L2/55So6L+H5ruk5ZmoIgogCi0jOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAzCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA0CiBtc2dpZCAiIgogImp1c3QgaGFzaCBhbnkgcmFuZG9tIGdhcmJhZ2UgdG8gY3JlYXRlIGNvcnJ1cHQgb2JqZWN0cyBmb3IgZGVidWdnaW5nIEdpdCIKIG1zZ3N0ciAi5YWB6K645a+55Lu75oSP6ZqP5py65Z6D5Zy+5pWw5o2u5YGa5pWj5YiX5p2l5Yib5bu65o2f5Z2P55qE5a+56LGh5Lul5L6/6LCD6K+VIEdpdCIKIAotIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNAorIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNQogbXNnaWQgInByb2Nlc3MgZmlsZSBhcyBpdCB3ZXJlIGZyb20gdGhpcyBwYXRoIgogbXNnc3RyICLlpITnkIbmlofku7blubblgYforr7lhbbmnaXoh6rkuo7mraTot6/lvoQiCiAKQEAgLTExNjA0LDMwICsxNDY0NiwzMCBAQAogbXNnaWQgImdpdCBoZWxwIFstLWFsbF0gWy0tZ3VpZGVzXSBbLS1tYW4gfCAtLXdlYiB8IC0taW5mb10gWzxjb21tYW5kPl0iCiBtc2dzdHIgImdpdCBoZWxwIFstLWFsbF0gWy0tZ3VpZGVzXSBbLS1tYW4gfCAtLXdlYiB8IC0taW5mb10gWzzlkb3ku6Q+XSIKIAotIzogYnVpbHRpbi9oZWxwLmM6NzMKKyM6IGJ1aWx0aW4vaGVscC5jOjc3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVucmVjb2duaXplZCBoZWxwIGZvcm1hdCAnJXMnIgogbXNnc3RyICLmnKrog73or4bliKvnmoTluK7liqnmoLzlvI8gJyVzJyIKIAotIzogYnVpbHRpbi9oZWxwLmM6MTAwCisjOiBidWlsdGluL2hlbHAuYzoxMDQKIG1zZ2lkICJGYWlsZWQgdG8gc3RhcnQgZW1hY3NjbGllbnQuIgogbXNnc3RyICLml6Dms5XlkK/liqggZW1hY3NjbGllbnTjgIIiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjExMworIzogYnVpbHRpbi9oZWxwLmM6MTE3CiBtc2dpZCAiRmFpbGVkIHRvIHBhcnNlIGVtYWNzY2xpZW50IHZlcnNpb24uIgogbXNnc3RyICLml6Dms5Xop6PmnpAgZW1hY3NjbGllbnQg54mI5pys44CCIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMjEKKyM6IGJ1aWx0aW4vaGVscC5jOjEyNQogIywgYy1mb3JtYXQKIG1zZ2lkICJlbWFjc2NsaWVudCB2ZXJzaW9uICclZCcgdG9vIG9sZCAoPCAyMikuIgogbXNnc3RyICJlbWFjc2NsaWVudCDniYjmnKwgJyVkJyDlpKrogIHvvIg8IDIy77yJ44CCIgogCi0jOiBidWlsdGluL2hlbHAuYzoxMzkgYnVpbHRpbi9oZWxwLmM6MTYxIGJ1aWx0aW4vaGVscC5jOjE3MSBidWlsdGluL2hlbHAuYzoxNzkKKyM6IGJ1aWx0aW4vaGVscC5jOjE0MyBidWlsdGluL2hlbHAuYzoxNjUgYnVpbHRpbi9oZWxwLmM6MTc1IGJ1aWx0aW4vaGVscC5jOjE4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZXhlYyAnJXMnIgogbXNnc3RyICLmiafooYwgJyVzJyDlpLHotKUiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjIxNworIzogYnVpbHRpbi9oZWxwLmM6MjIxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnOiBwYXRoIGZvciB1bnN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgpAQCAtMTE2MzYsNyArMTQ2NzgsNyBAQAogIiclcyfvvJrkuI3mlK/mjIHnmoQgbWFuIOaJi+WGjOafpeeci+WZqOeahOi3r+W+hOOAglxuIgogIuivt+S9v+eUqCAnbWFuLjzlt6Xlhbc+LmNtZCfjgIIiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjIyOQorIzogYnVpbHRpbi9oZWxwLmM6MjMzCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnOiBjbWQgZm9yIHN1cHBvcnRlZCBtYW4gdmlld2VyLlxuIgpAQCAtMTE2NDUsMzI3ICsxNDY4NywzMTcgQEAKICInJXMnOiDmlK/mjIHnmoQgbWFuIOaJi+WGjOafpeeci+WZqOWRveS7pOOAglxuIgogIuivt+S9v+eUqCAnbWFuLjzlt6Xlhbc+LnBhdGgn44CCIgogCi0jOiBidWlsdGluL2hlbHAuYzozNDYKKyM6IGJ1aWx0aW4vaGVscC5jOjM1MAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiB1bmtub3duIG1hbiB2aWV3ZXIuIgogbXNnc3RyICInJXMn77ya5pyq55+l55qEIG1hbiDmn6XnnIvlmajjgIIiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjM2MworIzogYnVpbHRpbi9oZWxwLmM6MzY3CiBtc2dpZCAibm8gbWFuIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgogbXNnc3RyICLmsqHmnIkgbWFuIOafpeeci+WZqOWkhOeQhuatpOivt+axgiIKIAotIzogYnVpbHRpbi9oZWxwLmM6MzcxCisjOiBidWlsdGluL2hlbHAuYzozNzUKIG1zZ2lkICJubyBpbmZvIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgogbXNnc3RyICLmsqHmnIkgaW5mbyDmn6XnnIvlmajlpITnkIbmraTor7fmsYIiCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQzMCBidWlsdGluL2hlbHAuYzo0NDEgZ2l0LmM6MzIyCisjOiBidWlsdGluL2hlbHAuYzo0MzQgYnVpbHRpbi9oZWxwLmM6NDQ1IGdpdC5jOjMzNgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFsaWFzZWQgdG8gJyVzJyIKIG1zZ3N0ciAiJyVzJyDmmK8gJyVzJyDnmoTliKvlkI0iCiAKLSM6IGJ1aWx0aW4vaGVscC5jOjQ0NAorIzogYnVpbHRpbi9oZWxwLmM6NDQ4IGdpdC5jOjM2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgYWxpYXMuJXMgc3RyaW5nOiAlcyIKIG1zZ3N0ciAi5Z2P55qEIGFsaWFzLiVzIOWtl+espuS4su+8miVzIgogCi0jOiBidWlsdGluL2hlbHAuYzo0NzMgYnVpbHRpbi9oZWxwLmM6NTAzCisjOiBidWlsdGluL2hlbHAuYzo0NzcgYnVpbHRpbi9oZWxwLmM6NTA3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVzYWdlOiAlcyVzIgogbXNnc3RyICLnlKjms5XvvJolcyVzIgogCi0jOiBidWlsdGluL2hlbHAuYzo0ODcKKyM6IGJ1aWx0aW4vaGVscC5jOjQ5MQogbXNnaWQgIidnaXQgaGVscCBjb25maWcnIGZvciBtb3JlIGluZm9ybWF0aW9uIgogbXNnc3RyICInZ2l0IGhlbHAgY29uZmlnJyDojrflj5bmm7TlpJrkv6Hmga8iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4NAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTg1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCB0eXBlIG1pc21hdGNoIGF0ICVzIgogbXNnc3RyICIlcyDnmoTlr7nosaHnsbvlnovkuI3ljLnphY0iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwNAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA1CiAjLCBjLWZvcm1hdAogbXNnaWQgImRpZCBub3QgcmVjZWl2ZSBleHBlY3RlZCBvYmplY3QgJXMiCiBtc2dzdHIgIuacquiDveiOt+WPlumihOacn+eahOWvueixoSAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjA3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzOiBleHBlY3RlZCB0eXBlICVzLCBmb3VuZCAlcyIKIG1zZ3N0ciAi5a+56LGhICVz77ya5bqU5Li657G75Z6LICVz77yM5Y205pivICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyNDkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI1OAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgZmlsbCAlZCBieXRlIgogbXNnaWRfcGx1cmFsICJjYW5ub3QgZmlsbCAlZCBieXRlcyIKIG1zZ3N0clswXSAi5peg5rOV5aGr5YWFICVkIOWtl+iKgiIKIG1zZ3N0clsxXSAi5peg5rOV5aGr5YWFICVkIOWtl+iKgiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjU5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyNjgKIG1zZ2lkICJlYXJseSBFT0YiCiBtc2dzdHIgIui/h+aXqeeahOaWh+S7tue7k+adn+espu+8iEVPRu+8iSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjYwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyNjkKIG1zZ2lkICJyZWFkIGVycm9yIG9uIGlucHV0IgogbXNnc3RyICLovpPlhaXkuIrnmoTor7vplJnor68iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI3MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjgxCiBtc2dpZCAidXNlZCBtb3JlIGJ5dGVzIHRoYW4gd2VyZSBhdmFpbGFibGUiCiBtc2dzdHIgIueUqOaOieS6hui2hei/h+WPr+eUqOeahOWtl+iKgiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6Mjc5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTk4CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyODggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo2MDYKIG1zZ2lkICJwYWNrIHRvbyBsYXJnZSBmb3IgY3VycmVudCBkZWZpbml0aW9uIG9mIG9mZl90IgogbXNnc3RyICLljIXlpKrlpKfotoXov4fkuoblvZPliY0gb2ZmX3Qg55qE5a6a5LmJIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoyODIgYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjk0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoyOTEgYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjk1CiBtc2dpZCAicGFjayBleGNlZWRzIG1heGltdW0gYWxsb3dlZCBzaXplIgogbXNnc3RyICLljIXotoXov4fkuobmnIDlpKflhYHorrjlgLwiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI5NwotIywgYy1mb3JtYXQKLW1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlICclcyciCi1tc2dzdHIgIuS4jeiDveWIm+W7uiAnJXMnIgotCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozMDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3Qgb3BlbiBwYWNrZmlsZSAnJXMnIgogbXNnc3RyICLml6Dms5XmiZPlvIDljIXmlofku7YgJyVzJyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MzE3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMjYKIG1zZ2lkICJwYWNrIHNpZ25hdHVyZSBtaXNtYXRjaCIKIG1zZ3N0ciAi5YyF562+5ZCN5LiN5Yy56YWNIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozMTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrIHZlcnNpb24gJTxQUkl1MzI+IHVuc3VwcG9ydGVkIgogbXNnc3RyICLkuI3mlK/mjIHljIXniYjmnKwgJTxQUkl1MzI+IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzozMzcKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjM0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJwYWNrIGhhcyBiYWQgb2JqZWN0IGF0IG9mZnNldCAlPFBSSXVNQVg+OiAlcyIKIG1zZ3N0ciAi5YyF5Lit5pyJ6ZSZ6K+v55qE5a+56LGh5L2N5LqO5YGP56e76YePICU8UFJJdU1BWD7vvJolcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NDU3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo0NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW5mbGF0ZSByZXR1cm5lZCAlZCIKIG1zZ3N0ciAi6Kej5Y6L57yp6L+U5ZueICVkIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo1MDYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNQogbXNnaWQgIm9mZnNldCB2YWx1ZSBvdmVyZmxvdyBmb3IgZGVsdGEgYmFzZSBvYmplY3QiCiBtc2dzdHIgIuWBj+enu+WAvOimhuebluS6hiBkZWx0YSDln7rlh4blr7nosaEiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTIzCiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgaXMgb3V0IG9mIGJvdW5kIgogbXNnc3RyICJkZWx0YSDln7rlh4blgY/np7votornlYwiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUyMgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTMxCiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gb2JqZWN0IHR5cGUgJWQiCiBtc2dzdHIgIuacquefpeWvueixoeexu+WeiyAlZCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTUzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NjIKIG1zZ2lkICJjYW5ub3QgcHJlYWQgcGFjayBmaWxlIgogbXNnc3RyICLml6Dms5Xor7vlj5bljIXmlofku7YiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU1NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTY0CiAjLCBjLWZvcm1hdAogbXNnaWQgInByZW1hdHVyZSBlbmQgb2YgcGFjayBmaWxlLCAlPFBSSXVNQVg+IGJ5dGUgbWlzc2luZyIKIG1zZ2lkX3BsdXJhbCAicHJlbWF0dXJlIGVuZCBvZiBwYWNrIGZpbGUsICU8UFJJdU1BWD4gYnl0ZXMgbWlzc2luZyIKIG1zZ3N0clswXSAi5YyF5paH5Lu26L+H5pep57uT5p2f77yM57y65bCRICU8UFJJdU1BWD4g5a2X6IqCIgogbXNnc3RyWzFdICLljIXmlofku7bov4fml6nnu5PmnZ/vvIznvLrlsJEgJTxQUkl1TUFYPiDlrZfoioIiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU4MQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTkwCiBtc2dpZCAic2VyaW91cyBpbmZsYXRlIGluY29uc2lzdGVuY3kiCiBtc2dzdHIgIuino+WOi+e8qeS4pemHjeeahOS4jeS4gOiHtCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzI2IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjczMiBidWlsdGluL2luZGV4LXBhY2suYzo3NTUKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc5NCBidWlsdGluL2luZGV4LXBhY2suYzo4MDMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjczNSBidWlsdGluL2luZGV4LXBhY2suYzo3NDEgYnVpbHRpbi9pbmRleC1wYWNrLmM6NzY1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MDQgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlNIQTEgQ09MTElTSU9OIEZPVU5EIFdJVEggJXMgISIKIG1zZ3N0ciAi5Y+R546wICVzIOWHuueOsCBTSEExIOWGsueqge+8gSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzI5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTUxCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxMSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwNQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzM4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxOCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlcyIKIG1zZ3N0ciAi5LiN6IO96K+7ICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo3OTIKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBleGlzdGluZyBvYmplY3QgaW5mbyAlcyIKIG1zZ3N0ciAi5LiN6IO96K+75Y+W546w5a2Y5a+56LGh5L+h5oGvICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4MDAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgcmVhZCBleGlzdGluZyBvYmplY3QgJXMiCiBtc2dzdHIgIuS4jeiDveivu+WPlueOsOWtmOWvueixoSAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODE0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBibG9iIG9iamVjdCAlcyIKIG1zZ3N0ciAi5peg5pWI55qE5pWw5o2u5a+56LGhICVzIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTcgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODM2CisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MjcgYnVpbHRpbi9pbmRleC1wYWNrLmM6ODQ2CiBtc2dpZCAiZnNjayBlcnJvciBpbiBwYWNrZWQgb2JqZWN0IgogbXNnc3RyICLlr7nmiZPljIXlr7nosaEgZnNjayDmo4Dmn6Xlh7rplJkiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzMwotIywgYy1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkICVzIgotbXNnc3RyICLml6DmlYjnmoQgJXMiCi0KLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgzOAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBhbGwgY2hpbGQgb2JqZWN0cyBvZiAlcyBhcmUgcmVhY2hhYmxlIgogbXNnc3RyICIlcyDnmoTmiYDmnInlrZDlr7nosaHlubbpnZ7pg73lj6/ovr4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjkxMCBidWlsdGluL2luZGV4LXBhY2suYzo5NDEKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjkyMCBidWlsdGluL2luZGV4LXBhY2suYzo5NTEKIG1zZ2lkICJmYWlsZWQgdG8gYXBwbHkgZGVsdGEiCiBtc2dzdHIgIuW6lOeUqCBkZWx0YSDlpLHotKUiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMDkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMjEKIG1zZ2lkICJSZWNlaXZpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi5o6l5pS25a+56LGh5LitIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTA5CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTIxCiBtc2dpZCAiSW5kZXhpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi57Si5byV5a+56LGh5LitIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTQzCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTU1CiBtc2dpZCAicGFjayBpcyBjb3JydXB0ZWQgKFNIQTEgbWlzbWF0Y2gpIgogbXNnc3RyICLljIXlhrLnqoHvvIhTSEExIOS4jeWMuemFje+8iSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE0OAorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE2MAogbXNnaWQgImNhbm5vdCBmc3RhdCBwYWNrZmlsZSIKIG1zZ3N0ciAi5LiN6IO95a+55YyF5paH5Lu26LCD55SoIGZzdGF0IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTUxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTYzCiBtc2dpZCAicGFjayBoYXMganVuayBhdCB0aGUgZW5kIgogbXNnc3RyICLljIXnmoTnu5PlsL7mnInlnoPlnL7mlbDmja4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNjMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExNzUKIG1zZ2lkICJjb25mdXNpb24gYmV5b25kIGluc2FuaXR5IGluIHBhcnNlX3BhY2tfb2JqZWN0cygpIgogbXNnc3RyICJwYXJzZV9wYWNrX29iamVjdHMoKSDkuK3pgYfliLDkuI3lj6/nkIbllrvnmoTpl67popgiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExODYKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExOTgKIG1zZ2lkICJSZXNvbHZpbmcgZGVsdGFzIgogbXNnc3RyICLlpITnkIYgZGVsdGEg5LitIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTk2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjQ5MgorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTIwOCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2MTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0aHJlYWQ6ICVzIgogbXNnc3RyICLkuI3og73liJvlu7rnur/nqIvvvJolcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTIzNworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI0OQogbXNnaWQgImNvbmZ1c2lvbiBiZXlvbmQgaW5zYW5pdHkiCiBtc2dzdHIgIuS4jeWPr+eQhuWWuyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI0MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb21wbGV0ZWQgd2l0aCAlZCBsb2NhbCBvYmplY3QiCiBtc2dpZF9wbHVyYWwgImNvbXBsZXRlZCB3aXRoICVkIGxvY2FsIG9iamVjdHMiCiBtc2dzdHJbMF0gIuWujOaIkCAlZCDkuKrmnKzlnLDlr7nosaEiCiBtc2dzdHJbMV0gIuWujOaIkCAlZCDkuKrmnKzlnLDlr7nosaEiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5leHBlY3RlZCB0YWlsIGNoZWNrc3VtIGZvciAlcyAoZGlzayBjb3JydXB0aW9uPykiCiBtc2dzdHIgIuWvuSAlcyDnmoTlsL7pg6jmoKHpqozlh7rnjrDmhI/lpJbvvIjno4Hnm5jmjZ/lnY/vvJ/vvIkiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjayBoYXMgJWQgdW5yZXNvbHZlZCBkZWx0YSIKIG1zZ2lkX3BsdXJhbCAicGFjayBoYXMgJWQgdW5yZXNvbHZlZCBkZWx0YXMiCiBtc2dzdHJbMF0gIuWMheaciSAlZCDkuKrmnKrop6PlhrPnmoQgZGVsdGEiCiBtc2dzdHJbMV0gIuWMheaciSAlZCDkuKrmnKrop6PlhrPnmoQgZGVsdGEiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyODMKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyOTUKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgYXBwZW5kZWQgb2JqZWN0ICglZCkiCiBtc2dzdHIgIuS4jeiDveWOi+e8qemZhOWKoOWvueixoe+8iCVk77yJIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzYwCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzkyCiAjLCBjLWZvcm1hdAogbXNnaWQgImxvY2FsIG9iamVjdCAlcyBpcyBjb3JydXB0IgogbXNnc3RyICLmnKzlnLDlr7nosaEgJXMg5bey5o2f5Z2PIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzc0CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDA2CiAjLCBjLWZvcm1hdAogbXNnaWQgInBhY2tmaWxlIG5hbWUgJyVzJyBkb2VzIG5vdCBlbmQgd2l0aCAnLnBhY2snIgogbXNnc3RyICLljIXmlofku7blkI0gJyVzJyDmsqHmnInku6UgJy5wYWNrJyDnu5PlsL4iCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEzOTkKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHdyaXRlICVzIGZpbGUgJyVzJyIKIG1zZ3N0ciAi5peg5rOV5YaZ5YWlICVzIOaWh+S7tiAnJXMnIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDA3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDM5CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBjbG9zZSB3cml0dGVuICVzIGZpbGUgJyVzJyIKIG1zZ3N0ciAi5peg5rOV5YWz6Zet5bey5YaZ5YWl55qEICVzIOaWh+S7tiAnJXMnIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDMxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDYzCiBtc2dpZCAiZXJyb3Igd2hpbGUgY2xvc2luZyBwYWNrIGZpbGUiCiBtc2dzdHIgIuWFs+mXreWMheaWh+S7tuaXtuWHuumUmSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ0NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ3NwogbXNnaWQgImNhbm5vdCBzdG9yZSBwYWNrIGZpbGUiCiBtc2dzdHIgIuaXoOazleWtmOWCqOWMheaWh+S7tiIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ1MworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ4NQogbXNnaWQgImNhbm5vdCBzdG9yZSBpbmRleCBmaWxlIgogbXNnc3RyICLml6Dms5XlrZjlgqjntKLlvJXmlofku7YiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0OTcgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzI3CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTI5IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjg2MgogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFjay5pbmRleHZlcnNpb249JTxQUkl1MzI+IgogbXNnc3RyICLlnY/nmoQgcGFjay5pbmRleHZlcnNpb249JTxQUkl1MzI+IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTY1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTk3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBvcGVuIGV4aXN0aW5nIHBhY2sgZmlsZSAnJXMnIgogbXNnc3RyICLml6Dms5XmiZPlvIDnjrDlrZjljIXmlofku7YgJyVzJyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU2NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3Qgb3BlbiBleGlzdGluZyBwYWNrIGlkeCBmaWxlIGZvciAnJXMnIgogbXNnc3RyICLml6Dms5XkuLogJXMg5omT5byA5YyF57Si5byV5paH5Lu2IgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjE1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vbiBkZWx0YTogJWQgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJub24gZGVsdGE6ICVkIG9iamVjdHMiCiBtc2dzdHJbMF0gIumdniBkZWx0Ye+8miVkIOS4quWvueixoSIKIG1zZ3N0clsxXSAi6Z2eIGRlbHRh77yaJWQg5Liq5a+56LGhIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjIyCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgImNoYWluIGxlbmd0aCA9ICVkOiAlbHUgb2JqZWN0IgogbXNnaWRfcGx1cmFsICJjaGFpbiBsZW5ndGggPSAlZDogJWx1IG9iamVjdHMiCiBtc2dzdHJbMF0gIumTvumVvyA9ICVkOiAlbHUg5a+56LGhIgogbXNnc3RyWzFdICLpk77plb8gPSAlZDogJWx1IOWvueixoSIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY1OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTY5MwogbXNnaWQgIkNhbm5vdCBjb21lIGJhY2sgdG8gY3dkIgogbXNnc3RyICLml6Dms5Xov5Tlm57lvZPliY3lt6XkvZznm67lvZUiCiAKLSM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3MDggYnVpbHRpbi9pbmRleC1wYWNrLmM6MTcxMQotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTcyNyBidWlsdGluL2luZGV4LXBhY2suYzoxNzMxCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQyIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NDUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NjEgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc2NQogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgJXMiCiBtc2dzdHIgIumUmeivr+mAiemhuSAlcyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0NworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4MQogbXNnaWQgIi0tZml4LXRoaW4gY2Fubm90IGJlIHVzZWQgd2l0aG91dCAtLXN0ZGluIgogbXNnc3RyICItLWZpeC10aGluIOS4jeiDveWSjCAtLXN0ZGluIOWQjOaXtuS9v+eUqCIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0OQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4MwogbXNnaWQgIi0tc3RkaW4gcmVxdWlyZXMgYSBnaXQgcmVwb3NpdG9yeSIKIG1zZ3N0ciAiLS1zdGRpbiDpnIDopoHkuIDkuKogZ2l0IOS7k+W6kyIKIAotIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc1NQorIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc4OQogbXNnaWQgIi0tdmVyaWZ5IHdpdGggbm8gcGFja2ZpbGUgbmFtZSBnaXZlbiIKIG1zZ3N0ciAiLS12ZXJpZnkg5rKh5pyJ5o+Q5L6b5YyF5paH5Lu25ZCN5Y+C5pWwIgogCi0jOiBidWlsdGluL2luZGV4LXBhY2suYzoxODAzIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1ODAKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4MzcgYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjU4MgogbXNnaWQgImZzY2sgZXJyb3IgaW4gcGFjayBvYmplY3RzIgogbXNnc3RyICLlnKjmiZPljIXlr7nosaHkuK0gZnNjayDmo4Dmn6Xlh7rplJkiCiAKQEAgLTEyMDA5LDQyICsxNTA0MSw0MiBAQAogbXNnaWQgIm5vdCBjb3B5aW5nIHRlbXBsYXRlcyBmcm9tICclcyc6ICVzIgogbXNnc3RyICLmsqHmnInku44gJyVzJyDlpI3liLbmqKHniYjvvJolcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6MzI5CisjOiBidWlsdGluL2luaXQtZGIuYzozMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGhhbmRsZSBmaWxlIHR5cGUgJWQiCiBtc2dzdHIgIuS4jeiDveWkhOeQhiAlZCDnsbvlnovnmoTmlofku7YiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMzMgorIzogYnVpbHRpbi9pbml0LWRiLmM6MzM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBtb3ZlICVzIHRvICVzIgogbXNnc3RyICLkuI3og73np7vliqggJXMg6IezICVzIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzozNDkgYnVpbHRpbi9pbml0LWRiLmM6MzUyCisjOiBidWlsdGluL2luaXQtZGIuYzozNTQgYnVpbHRpbi9pbml0LWRiLmM6MzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICIlcyDlt7Lnu4/lrZjlnKgiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQwNQorIzogYnVpbHRpbi9pbml0LWRiLmM6NDEzCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlaW5pdGlhbGl6ZWQgZXhpc3Rpbmcgc2hhcmVkIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAi6YeN5paw5Yid5aeL5YyW5bey5a2Y5Zyo55qE5YWx5LqrIEdpdCDku5PlupPkuo4gJXMlc1xuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MDYKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxNAogIywgYy1mb3JtYXQKIG1zZ2lkICJSZWluaXRpYWxpemVkIGV4aXN0aW5nIEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAi6YeN5paw5Yid5aeL5YyW5bey5a2Y5Zyo55qEIEdpdCDku5PlupPkuo4gJXMlc1xuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0MTAKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJJbml0aWFsaXplZCBlbXB0eSBzaGFyZWQgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgogbXNnc3RyICLlt7LliJ3lp4vljJbnqbrnmoTlhbHkuqsgR2l0IOS7k+W6k+S6jiAlcyVzXG4iCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMQorIzogYnVpbHRpbi9pbml0LWRiLmM6NDE5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkluaXRpYWxpemVkIGVtcHR5IEdpdCByZXBvc2l0b3J5IGluICVzJXNcbiIKIG1zZ3N0ciAi5bey5Yid5aeL5YyW56m655qEIEdpdCDku5PlupPkuo4gJXMlc1xuIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0NjAKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ2OAogbXNnaWQgIiIKICJnaXQgaW5pdCBbLXEgfCAtLXF1aWV0XSBbLS1iYXJlXSBbLS10ZW1wbGF0ZT08dGVtcGxhdGUtZGlyZWN0b3J5Pl0gWy0tIgogInNoYXJlZFs9PHBlcm1pc3Npb25zPl1dIFs8ZGlyZWN0b3J5Pl0iCkBAIC0xMjA1MiwzNyArMTUwODQsMzcgQEAKICJnaXQgaW5pdCBbLXEgfCAtLXF1aWV0XSBbLS1iYXJlXSBbLS10ZW1wbGF0ZT085qih5p2/55uu5b2VPl0gWy0tc2hhcmVkWz085p2D6ZmQPl1dICIKICJbPOebruW9lT5dIgogCi0jOiBidWlsdGluL2luaXQtZGIuYzo0ODMKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MQogbXNnaWQgInBlcm1pc3Npb25zIgogbXNnc3RyICLmnYPpmZAiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ4NAorIzogYnVpbHRpbi9pbml0LWRiLmM6NDkyCiBtc2dpZCAic3BlY2lmeSB0aGF0IHRoZSBnaXQgcmVwb3NpdG9yeSBpcyB0byBiZSBzaGFyZWQgYW1vbmdzdCBzZXZlcmFsIHVzZXJzIgogbXNnc3RyICLmjIflrpogZ2l0IOS7k+W6k+aYr+WkmuS4queUqOaIt+S5i+mXtOWFseS6q+eahCIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTE4IGJ1aWx0aW4vaW5pdC1kYi5jOjUyMworIzogYnVpbHRpbi9pbml0LWRiLmM6NTI5IGJ1aWx0aW4vaW5pdC1kYi5jOjUzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgbWtkaXIgJXMiCiBtc2dzdHIgIuS4jeiDveWIm+W7uuebruW9lSAlcyIKIAotIzogYnVpbHRpbi9pbml0LWRiLmM6NTI3CisjOiBidWlsdGluL2luaXQtZGIuYzo1MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGNoZGlyIHRvICVzIgogbXNnc3RyICLkuI3og73liIfmjaLnm67lvZXliLAgJXMiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU0OAorIzogYnVpbHRpbi9pbml0LWRiLmM6NTU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIlcyAob3IgLS13b3JrLXRyZWU9PGRpcmVjdG9yeT4pIG5vdCBhbGxvd2VkIHdpdGhvdXQgc3BlY2lmeWluZyAlcyAob3IgLS1naXQtIgogImRpcj08ZGlyZWN0b3J5PikiCiBtc2dzdHIgIuS4jeWFgeiuuCAlc++8iOaIliAtLXdvcmstdHJlZT0855uu5b2VPu+8ieiAjOayoeacieaMh+WumiAlc++8iOaIliAtLWdpdC1kaXI9POebruW9lT7vvIkiCiAKLSM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU3NgorIzogYnVpbHRpbi9pbml0LWRiLmM6NTg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBhY2Nlc3Mgd29yayB0cmVlICclcyciCiBtc2dzdHIgIuS4jeiDveiuv+mXruW3peS9nOWMuiAnJXMnIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjE1CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjE2CiBtc2dpZCAiIgogImdpdCBpbnRlcnByZXQtdHJhaWxlcnMgWy0taW4tcGxhY2VdIFstLXRyaW0tZW1wdHldIFsoLS10cmFpbGVyICIKICI8dG9rZW4+Wyg9fDopPHZhbHVlPl0pLi4uXSBbPGZpbGU+Li4uXSIKQEAgLTEyMDkwLDU2MSArMTUxMjIsNTY2IEBACiAiZ2l0IGludGVycHJldC10cmFpbGVycyBbLS1pbi1wbGFjZV0gWy0tdHJpbS1lbXB0eV0gWygtLXRyYWlsZXIgPOmUrj5bKD18Oik85YC8IgogIj5dKS4uLl0gWzzmlofku7Y+Li4uXSIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NQogbXNnaWQgImVkaXQgZmlsZXMgaW4gcGxhY2UiCiBtc2dzdHIgIuWcqOWOn+S9jee8lui+keaWh+S7tiIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5NgogbXNnaWQgInRyaW0gZW1wdHkgdHJhaWxlcnMiCiBtc2dzdHIgIuWIoOmZpOepuueahOWwvumDqOe9suWQjSIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5OAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzo5OQogbXNnaWQgIndoZXJlIHRvIHBsYWNlIHRoZSBuZXcgdHJhaWxlciIKIG1zZ3N0ciAi5Zyo5ZOq6YeM5pS+572u5paw55qE5bC+6YOo572y5ZCNIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDEKIG1zZ2lkICJhY3Rpb24gaWYgdHJhaWxlciBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAi5b2T5bC+6YOo572y5ZCN5bey57uP5a2Y5Zyo5pe25omA6YeH5Y+W55qE5Yqo5L2cIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMgorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDMKIG1zZ2lkICJhY3Rpb24gaWYgdHJhaWxlciBpcyBtaXNzaW5nIgogbXNnc3RyICLlvZPlsL7pg6jnvbLlkI3nvLrlpLHml7bmiYDph4flj5bnmoTliqjkvZwiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA0CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNQogbXNnaWQgIm91dHB1dCBvbmx5IHRoZSB0cmFpbGVycyIKIG1zZ3N0ciAi5Y+q6L6T5Ye65bC+6YOo572y5ZCNIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNQorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDYKIG1zZ2lkICJkbyBub3QgYXBwbHkgY29uZmlnIHJ1bGVzIgogbXNnc3RyICLkuI3opoHlupTnlKjphY3nva7op4TliJkiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA2CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNwogbXNnaWQgImpvaW4gd2hpdGVzcGFjZS1jb250aW51ZWQgdmFsdWVzIgogbXNnc3RyICLov57mjqXnqbrnmb3mipjooYznmoTlgLwiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA3CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwOAogbXNnaWQgInNldCBwYXJzaW5nIG9wdGlvbnMiCiBtc2dzdHIgIuiuvue9ruino+aekOmAiemhuSIKIAotIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDkKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEwCiBtc2dpZCAiZG8gbm90IHRyZWF0IC0tLSBzcGVjaWFsbHkiCiBtc2dzdHIgIuS4jeimgeWvuSAtLS0g54m55q6K5aSE55CGIgogCi0jOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMAorIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTEKIG1zZ2lkICJ0cmFpbGVyIgogbXNnc3RyICLlsL7pg6jnvbLlkI0iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTExCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMgogbXNnaWQgInRyYWlsZXIocykgdG8gYWRkIgogbXNnc3RyICLopoHmt7vliqDnmoTlsL7pg6jnvbLlkI0iCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTIwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEyMwogbXNnaWQgIi0tdHJhaWxlciB3aXRoIC0tb25seS1pbnB1dCBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLXRyYWlsZXIg5ZKMIC0tb25seS1pbnB1dCDlkIzml7bkvb/nlKjmsqHmnInmhI/kuYkiCiAKLSM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTMwCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEzMwogbXNnaWQgIm5vIGlucHV0IGZpbGUgZ2l2ZW4gZm9yIGluLXBsYWNlIGVkaXRpbmciCiBtc2dzdHIgIuayoeaciee7meWHuuimgeWOn+S9jee8lui+keeahOaWh+S7tiIKIAotIzogYnVpbHRpbi9sb2cuYzo1NAorIzogYnVpbHRpbi9sb2cuYzo1NgogbXNnaWQgImdpdCBsb2cgWzxvcHRpb25zPl0gWzxyZXZpc2lvbi1yYW5nZT5dIFtbLS1dIDxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBsb2cgWzzpgInpobk+XSBbPOeJiOacrOiMg+WbtD5dIFtbLS1dIDzot6/lvoQ+Li4uXSIKIAotIzogYnVpbHRpbi9sb2cuYzo1NQorIzogYnVpbHRpbi9sb2cuYzo1NwogbXNnaWQgImdpdCBzaG93IFs8b3B0aW9ucz5dIDxvYmplY3Q+Li4uIgogbXNnc3RyICJnaXQgc2hvdyBbPOmAiemhuT5dIDzlr7nosaE+Li4uIgogCi0jOiBidWlsdGluL2xvZy5jOjk5CisjOiBidWlsdGluL2xvZy5jOjExMAogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIC0tZGVjb3JhdGUgb3B0aW9uOiAlcyIKIG1zZ3N0ciAi5peg5pWI55qEIC0tZGVjb3JhdGUg6YCJ6aG577yaJXMiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTYyCi1tc2dpZCAic3VwcHJlc3MgZGlmZiBvdXRwdXQiCi1tc2dzdHIgIuS4jeaYvuekuuW3ruW8gui+k+WHuiIKLQotIzogYnVpbHRpbi9sb2cuYzoxNjMKKyM6IGJ1aWx0aW4vbG9nLmM6MTc0CiBtc2dpZCAic2hvdyBzb3VyY2UiCiBtc2dzdHIgIuaYvuekuua6kCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjQKKyM6IGJ1aWx0aW4vbG9nLmM6MTc1CiBtc2dpZCAiVXNlIG1haWwgbWFwIGZpbGUiCiBtc2dzdHIgIuS9v+eUqOmCruS7tuaYoOWwhOaWh+S7tiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjYKKyM6IGJ1aWx0aW4vbG9nLmM6MTc3CiBtc2dpZCAib25seSBkZWNvcmF0ZSByZWZzIHRoYXQgbWF0Y2ggPHBhdHRlcm4+IgogbXNnc3RyICLlj6rkv67ppbDkuI4gPOaooeW8jz4g5Yy56YWN55qE5byV55SoIgogCi0jOiBidWlsdGluL2xvZy5jOjE2OAorIzogYnVpbHRpbi9sb2cuYzoxNzkKIG1zZ2lkICJkbyBub3QgZGVjb3JhdGUgcmVmcyB0aGF0IG1hdGNoIDxwYXR0ZXJuPiIKIG1zZ3N0ciAi5LiN5L+u6aWw5ZKMIDzmqKHlvI8+IOWMuemFjeeahOW8leeUqCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjkKKyM6IGJ1aWx0aW4vbG9nLmM6MTgwCiBtc2dpZCAiZGVjb3JhdGUgb3B0aW9ucyIKIG1zZ3N0ciAi5L+u6aWw6YCJ6aG5IgogCi0jOiBidWlsdGluL2xvZy5jOjE3MgorIzogYnVpbHRpbi9sb2cuYzoxODMKIG1zZ2lkICJQcm9jZXNzIGxpbmUgcmFuZ2UgbixtIGluIGZpbGUsIGNvdW50aW5nIGZyb20gMSIKIG1zZ3N0ciAi5aSE55CG5paH5Lu25Lit56ysIG4g5YiwIG0g5LmL6Ze055qE6KGM77yM5LuOIDEg5byA5aeLIgogCi0jOiBidWlsdGluL2xvZy5jOjI3MAorIzogYnVpbHRpbi9sb2cuYzoyODEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmluYWwgb3V0cHV0OiAlZCAlc1xuIgogbXNnc3RyICLmnIDnu4jovpPlh7rvvJolZCAlc1xuIgogCi0jOiBidWlsdGluL2xvZy5jOjUyMgorIzogYnVpbHRpbi9sb2cuYzo1MzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IHNob3cgJXM6IGJhZCBmaWxlIgogbXNnc3RyICJnaXQgc2hvdyAlczog5o2f5Z2P55qE5paH5Lu2IgogCi0jOiBidWlsdGluL2xvZy5jOjUzNyBidWlsdGluL2xvZy5jOjYzMQorIzogYnVpbHRpbi9sb2cuYzo1NTAgYnVpbHRpbi9sb2cuYzo2NDUKICMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IHJlYWQgb2JqZWN0ICVzIgorbXNnaWQgImNvdWxkIG5vdCByZWFkIG9iamVjdCAlcyIKIG1zZ3N0ciAi5LiN6IO96K+75Y+W5a+56LGhICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjY1NQorIzogYnVpbHRpbi9sb2cuYzo2NzAKICMsIGMtZm9ybWF0Ci1tc2dpZCAiVW5rbm93biB0eXBlOiAlZCIKK21zZ2lkICJ1bmtub3duIHR5cGU6ICVkIgogbXNnc3RyICLmnKrnn6XnsbvlnovvvJolZCIKIAotIzogYnVpbHRpbi9sb2cuYzo3NzYKKyM6IGJ1aWx0aW4vbG9nLmM6ODE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIGNvdmVyIGZyb20gZGVzY3JpcHRpb24gbW9kZSIKK21zZ3N0ciAiJXPvvJrku47mj4/ov7DnlJ/miJDpmYTlh73nmoTmqKHlvI/ml6DmlYgiCisKKyM6IGJ1aWx0aW4vbG9nLmM6ODIxCiBtc2dpZCAiZm9ybWF0LmhlYWRlcnMgd2l0aG91dCB2YWx1ZSIKIG1zZ3N0ciAiZm9ybWF0LmhlYWRlcnMg5rKh5pyJ5YC8IgogCi0jOiBidWlsdGluL2xvZy5jOjg3NworIzogYnVpbHRpbi9sb2cuYzo5MzYKIG1zZ2lkICJuYW1lIG9mIG91dHB1dCBkaXJlY3RvcnkgaXMgdG9vIGxvbmciCiBtc2dzdHIgIui+k+WHuuebruW9leWQjeWkqumVvyIKIAotIzogYnVpbHRpbi9sb2cuYzo4OTMKKyM6IGJ1aWx0aW4vbG9nLmM6OTUyCiAjLCBjLWZvcm1hdAotbXNnaWQgIkNhbm5vdCBvcGVuIHBhdGNoIGZpbGUgJXMiCittc2dpZCAiY2Fubm90IG9wZW4gcGF0Y2ggZmlsZSAlcyIKIG1zZ3N0ciAi5peg5rOV5omT5byA6KGl5LiB5paH5Lu2ICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjkxMAotbXNnaWQgIk5lZWQgZXhhY3RseSBvbmUgcmFuZ2UuIgotbXNnc3RyICLlj6rpnIDopoHkuIDkuKrojIPlm7TjgIIiCisjOiBidWlsdGluL2xvZy5jOjk2OQorbXNnaWQgIm5lZWQgZXhhY3RseSBvbmUgcmFuZ2UiCittc2dzdHIgIuWPqumcgOimgeS4gOS4quiMg+WbtCIKIAotIzogYnVpbHRpbi9sb2cuYzo5MjAKLW1zZ2lkICJOb3QgYSByYW5nZS4iCi1tc2dzdHIgIuS4jeaYr+S4gOS4quiMg+WbtOOAgiIKKyM6IGJ1aWx0aW4vbG9nLmM6OTc5Cittc2dpZCAibm90IGEgcmFuZ2UiCittc2dzdHIgIuS4jeaYr+S4gOS4quiMg+WbtCIKIAotIzogYnVpbHRpbi9sb2cuYzoxMDQzCi1tc2dpZCAiQ292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKLW1zZ3N0ciAi5L+h5bCB6ZyA6KaB6YKu5Lu25Zyw5Z2A5qC85byPIgorIzogYnVpbHRpbi9sb2cuYzoxMTQzCittc2dpZCAiY292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKK21zZ3N0ciAi6ZmE5Ye96ZyA6KaB6YKu5Lu25Zyw5Z2A5qC85byPIgogCi0jOiBidWlsdGluL2xvZy5jOjExMTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTE0OQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgY292ZXItbGV0dGVyIGZpbGUiCittc2dzdHIgIuaXoOazleWIm+W7uumZhOWHveaWh+S7tiIKKworIzogYnVpbHRpbi9sb2cuYzoxMjI4CiAjLCBjLWZvcm1hdAogbXNnaWQgImluc2FuZSBpbi1yZXBseS10bzogJXMiCiBtc2dzdHIgIuS4jeato+W4uOeahCBpbi1yZXBseS10b++8miVzIgogCi0jOiBidWlsdGluL2xvZy5jOjExNDYKKyM6IGJ1aWx0aW4vbG9nLmM6MTI1NQogbXNnaWQgImdpdCBmb3JtYXQtcGF0Y2ggWzxvcHRpb25zPl0gWzxzaW5jZT4gfCA8cmV2aXNpb24tcmFuZ2U+XSIKIG1zZ3N0ciAiZ2l0IGZvcm1hdC1wYXRjaCBbPOmAiemhuT5dIFs85LuOPiB8IDzniYjmnKzojIPlm7Q+XSIKIAotIzogYnVpbHRpbi9sb2cuYzoxMjA0Ci1tc2dpZCAiVHdvIG91dHB1dCBkaXJlY3Rvcmllcz8iCisjOiBidWlsdGluL2xvZy5jOjEzMTMKK21zZ2lkICJ0d28gb3V0cHV0IGRpcmVjdG9yaWVzPyIKIG1zZ3N0ciAi5Lik5Liq6L6T5Ye655uu5b2V77yfIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMTEgYnVpbHRpbi9sb2cuYzoyMDU0IGJ1aWx0aW4vbG9nLmM6MjA1NiBidWlsdGluL2xvZy5jOjIwNjgKKyM6IGJ1aWx0aW4vbG9nLmM6MTQyNCBidWlsdGluL2xvZy5jOjIxOTcgYnVpbHRpbi9sb2cuYzoyMTk5IGJ1aWx0aW4vbG9nLmM6MjIxMQogIywgYy1mb3JtYXQKLW1zZ2lkICJVbmtub3duIGNvbW1pdCAlcyIKK21zZ2lkICJ1bmtub3duIGNvbW1pdCAlcyIKIG1zZ3N0ciAi5pyq55+l5o+Q5LqkICVzIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMjEgYnVpbHRpbi9ub3Rlcy5jOjg5NCBidWlsdGluL3RhZy5jOjUyNgorIzogYnVpbHRpbi9sb2cuYzoxNDM0IGJ1aWx0aW4vcmVwbGFjZS5jOjU4IGJ1aWx0aW4vcmVwbGFjZS5jOjIwNworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjEwCiAjLCBjLWZvcm1hdAotbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgotbXNnc3RyICLml6Dms5Xop6PmnpAgJyVzJyDkuLrkuIDkuKrmnInmlYjlvJXnlKjjgIIiCittc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZiIKK21zZ3N0ciAi5peg5rOV5bCGICclcycg6Kej5p6Q5Li65LiA5Liq5pyJ5pWI5byV55SoIgogCi0jOiBidWlsdGluL2xvZy5jOjEzMjYKLW1zZ2lkICJDb3VsZCBub3QgZmluZCBleGFjdCBtZXJnZSBiYXNlLiIKLW1zZ3N0ciAi5LiN6IO95om+5Yiw5YeG56Gu55qE5ZCI5bm25Z+657q/44CCIgorIzogYnVpbHRpbi9sb2cuYzoxNDM5Cittc2dpZCAiY291bGQgbm90IGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKK21zZ3N0ciAi5LiN6IO95om+5Yiw5YeG56Gu55qE5ZCI5bm25Z+657q/IgogCi0jOiBidWlsdGluL2xvZy5jOjEzMzAKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ0MwogbXNnaWQgIiIKLSJGYWlsZWQgdG8gZ2V0IHVwc3RyZWFtLCBpZiB5b3Ugd2FudCB0byByZWNvcmQgYmFzZSBjb21taXQgYXV0b21hdGljYWxseSxcbiIKKyJmYWlsZWQgdG8gZ2V0IHVwc3RyZWFtLCBpZiB5b3Ugd2FudCB0byByZWNvcmQgYmFzZSBjb21taXQgYXV0b21hdGljYWxseSxcbiIKICJwbGVhc2UgdXNlIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG8gdG8gdHJhY2sgYSByZW1vdGUgYnJhbmNoLlxuIgotIk9yIHlvdSBjb3VsZCBzcGVjaWZ5IGJhc2UgY29tbWl0IGJ5IC0tYmFzZT08YmFzZS1jb21taXQtaWQ+IG1hbnVhbGx5LiIKKyJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseSIKIG1zZ3N0ciAiIgogIuaXoOazleW+l+WIsOS4iua4uOWcsOWdgO+8jOWmguaenOS9oOaDs+iHquWKqOiusOW9leWfuue6v+aPkOS6pO+8jOivt+S9v+eUqOWRveS7pFxuIgogImdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG8g5p2l6Lef6Liq5LiA5Liq6L+c56iL5YiG5pSv44CC5oiW6ICF5L2g5Y+v5Lul6YCa6L+HXG4iCi0i5Y+C5pWwIC0tYmFzZT085Z+657q/5o+Q5LqkPiDmiYvliqjmjIflrprkuIDkuKrln7rnur/mj5DkuqTjgIIiCisi5Y+C5pWwIC0tYmFzZT085Z+657q/5o+Q5LqkPiDmiYvliqjmjIflrprkuIDkuKrln7rnur/mj5DkuqQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTM1MAotbXNnaWQgIkZhaWxlZCB0byBmaW5kIGV4YWN0IG1lcmdlIGJhc2UiCisjOiBidWlsdGluL2xvZy5jOjE0NjMKK21zZ2lkICJmYWlsZWQgdG8gZmluZCBleGFjdCBtZXJnZSBiYXNlIgogbXNnc3RyICLml6Dms5Xmib7liLDlh4bnoa7nmoTlkIjlubbln7rnur8iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTM2MQorIzogYnVpbHRpbi9sb2cuYzoxNDc0CiBtc2dpZCAiYmFzZSBjb21taXQgc2hvdWxkIGJlIHRoZSBhbmNlc3RvciBvZiByZXZpc2lvbiBsaXN0IgogbXNnc3RyICLln7rnur/mj5DkuqTlupTor6XmmK/niYjmnKzliJfooajnmoTnpZblhYgiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTM2NQorIzogYnVpbHRpbi9sb2cuYzoxNDc4CiBtc2dpZCAiYmFzZSBjb21taXQgc2hvdWxkbid0IGJlIGluIHJldmlzaW9uIGxpc3QiCiBtc2dzdHIgIuWfuue6v+aPkOS6pOS4jeW6lOivpeWHuueOsOWcqOeJiOacrOWIl+ihqOS4rSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNDE4CisjOiBidWlsdGluL2xvZy5jOjE1MzEKIG1zZ2lkICJjYW5ub3QgZ2V0IHBhdGNoIGlkIgogbXNnc3RyICLml6Dms5XlvpfliLDooaXkuIEgaWQiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTQ3MAorIzogYnVpbHRpbi9sb2cuYzoxNTgzCiBtc2dpZCAiZmFpbGVkIHRvIGluZmVyIHJhbmdlLWRpZmYgcmFuZ2VzIgogbXNnc3RyICLml6Dms5Xmjqjmlq0gcmFuZ2UtZGlmZiDojIPlm7QiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUxNQorIzogYnVpbHRpbi9sb2cuYzoxNjI5CiBtc2dpZCAidXNlIFtQQVRDSCBuL21dIGV2ZW4gd2l0aCBhIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAi5L2/55SoIFtQQVRDSCBuL21d77yM5Y2z5L2/5Y+q5pyJ5LiA5Liq6KGl5LiBIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MTgKKyM6IGJ1aWx0aW4vbG9nLmM6MTYzMgogbXNnaWQgInVzZSBbUEFUQ0hdIGV2ZW4gd2l0aCBtdWx0aXBsZSBwYXRjaGVzIgogbXNnc3RyICLkvb/nlKggW1BBVENIXe+8jOWNs+S9v+acieWkmuS4quihpeS4gSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTIyCisjOiBidWlsdGluL2xvZy5jOjE2MzYKIG1zZ2lkICJwcmludCBwYXRjaGVzIHRvIHN0YW5kYXJkIG91dCIKIG1zZ3N0ciAi5omT5Y2w6KGl5LiB5Yiw5qCH5YeG6L6T5Ye6IgogCi0jOiBidWlsdGluL2xvZy5jOjE1MjQKKyM6IGJ1aWx0aW4vbG9nLmM6MTYzOAogbXNnaWQgImdlbmVyYXRlIGEgY292ZXIgbGV0dGVyIgotbXNnc3RyICLnlJ/miJDkuIDlsIHpmYTkv6EiCittc2dzdHIgIueUn+aIkOS4gOWwgemZhOWHvSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI2CisjOiBidWlsdGluL2xvZy5jOjE2NDAKIG1zZ2lkICJ1c2Ugc2ltcGxlIG51bWJlciBzZXF1ZW5jZSBmb3Igb3V0cHV0IGZpbGUgbmFtZXMiCiBtc2dzdHIgIuS9v+eUqOeugOWNleeahOaVsOWtl+W6j+WIl+S9nOS4uui+k+WHuuaWh+S7tuWQjSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI3CisjOiBidWlsdGluL2xvZy5jOjE2NDEKIG1zZ2lkICJzZngiCiBtc2dzdHIgIuWQjue8gCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTI4CisjOiBidWlsdGluL2xvZy5jOjE2NDIKIG1zZ2lkICJ1c2UgPHNmeD4gaW5zdGVhZCBvZiAnLnBhdGNoJyIKIG1zZ3N0ciAi5L2/55SoIDzlkI7nvIA+IOS7o+abvyAnLnBhdGNoJyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTMwCisjOiBidWlsdGluL2xvZy5jOjE2NDQKIG1zZ2lkICJzdGFydCBudW1iZXJpbmcgcGF0Y2hlcyBhdCA8bj4gaW5zdGVhZCBvZiAxIgogbXNnc3RyICLooaXkuIHku6UgPG4+IOW8gOWni+e8luWPt++8jOiAjOS4jeaYrzEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzMgorIzogYnVpbHRpbi9sb2cuYzoxNjQ2CiBtc2dpZCAibWFyayB0aGUgc2VyaWVzIGFzIE50aCByZS1yb2xsIgogbXNnc3RyICLmoIforrDooaXkuIHns7vliJfmmK/nrKzlh6DmrKHph43liLYiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTUzNAorIzogYnVpbHRpbi9sb2cuYzoxNjQ4CiBtc2dpZCAiVXNlIFtSRkMgUEFUQ0hdIGluc3RlYWQgb2YgW1BBVENIXSIKIG1zZ3N0ciAi5L2/55SoIFtSRkMgUEFUQ0hdIOS7o+abvyBbUEFUQ0hdIgogCi0jOiBidWlsdGluL2xvZy5jOjE1MzcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1MQorbXNnaWQgImNvdmVyLWZyb20tZGVzY3JpcHRpb24tbW9kZSIKK21zZ3N0ciAi5LuO5YiG5pSv5o+P6L+w6I635Y+W6ZmE5Ye955qE5qih5byPIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTIKK21zZ2lkICJnZW5lcmF0ZSBwYXJ0cyBvZiBhIGNvdmVyIGxldHRlciBiYXNlZCBvbiBhIGJyYW5jaCdzIGRlc2NyaXB0aW9uIgorbXNnc3RyICLln7rkuo7kuIDkuKrliIbmlK/mj4/ov7DnlJ/miJDpg6jliIbpmYTlh70iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1NAogbXNnaWQgIlVzZSBbPHByZWZpeD5dIGluc3RlYWQgb2YgW1BBVENIXSIKIG1zZ3N0ciAi5L2/55SoIFs85YmN57yAPl0g5Luj5pu/IFtQQVRDSF0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU0MAorIzogYnVpbHRpbi9sb2cuYzoxNjU3CiBtc2dpZCAic3RvcmUgcmVzdWx0aW5nIGZpbGVzIGluIDxkaXI+IgogbXNnc3RyICLmiornu5Pmnpzmlofku7blrZjlgqjlnKggPOebruW9lT4iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU0MworIzogYnVpbHRpbi9sb2cuYzoxNjYwCiBtc2dpZCAiZG9uJ3Qgc3RyaXAvYWRkIFtQQVRDSF0iCiBtc2dzdHIgIuS4jeWIoOmZpC/mt7vliqAgW1BBVENIXSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTQ2CisjOiBidWlsdGluL2xvZy5jOjE2NjMKIG1zZ2lkICJkb24ndCBvdXRwdXQgYmluYXJ5IGRpZmZzIgogbXNnc3RyICLkuI3ovpPlh7rkuozov5vliLblt67lvIIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU0OAorIzogYnVpbHRpbi9sb2cuYzoxNjY1CiBtc2dpZCAib3V0cHV0IGFsbC16ZXJvIGhhc2ggaW4gRnJvbSBoZWFkZXIiCiBtc2dzdHIgIuWcqCBGcm9tIOWktOS/oeaBr+S4rei+k+WHuuWFqOS4uumbtueahOWTiOW4jOWAvCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTUwCisjOiBidWlsdGluL2xvZy5jOjE2NjcKIG1zZ2lkICJkb24ndCBpbmNsdWRlIGEgcGF0Y2ggbWF0Y2hpbmcgYSBjb21taXQgdXBzdHJlYW0iCiBtc2dzdHIgIuS4jeWMheWQq+W3suWcqOS4iua4uOaPkOS6pOS4reeahOihpeS4gSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTUyCisjOiBidWlsdGluL2xvZy5jOjE2NjkKIG1zZ2lkICJzaG93IHBhdGNoIGZvcm1hdCBpbnN0ZWFkIG9mIGRlZmF1bHQgKHBhdGNoICsgc3RhdCkiCiBtc2dzdHIgIuaYvuekuue6r+ihpeS4geagvOW8j+iAjOmdnum7mOiupOeahO+8iOihpeS4gSvnirbmgIHvvIkiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NAorIzogYnVpbHRpbi9sb2cuYzoxNjcxCiBtc2dpZCAiTWVzc2FnaW5nIgogbXNnc3RyICLpgq7ku7blj5HpgIEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NQorIzogYnVpbHRpbi9sb2cuYzoxNjcyCiBtc2dpZCAiaGVhZGVyIgogbXNnc3RyICJoZWFkZXIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU1NgorIzogYnVpbHRpbi9sb2cuYzoxNjczCiBtc2dpZCAiYWRkIGVtYWlsIGhlYWRlciIKIG1zZ3N0ciAi5re75Yqg6YKu5Lu25aS0IgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTcgYnVpbHRpbi9sb2cuYzoxNTU5CisjOiBidWlsdGluL2xvZy5jOjE2NzQgYnVpbHRpbi9sb2cuYzoxNjc2CiBtc2dpZCAiZW1haWwiCiBtc2dzdHIgIumCruS7tuWcsOWdgCIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTU3CisjOiBidWlsdGluL2xvZy5jOjE2NzQKIG1zZ2lkICJhZGQgVG86IGhlYWRlciIKIG1zZ3N0ciAi5re75Yqg5pS25Lu25Lq6IgogCi0jOiBidWlsdGluL2xvZy5jOjE1NTkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3NgogbXNnaWQgImFkZCBDYzogaGVhZGVyIgogbXNnc3RyICLmt7vliqDmioTpgIEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2MQorIzogYnVpbHRpbi9sb2cuYzoxNjc4CiBtc2dpZCAiaWRlbnQiCiBtc2dzdHIgIuagh+ivhiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTYyCisjOiBidWlsdGluL2xvZy5jOjE2NzkKIG1zZ2lkICJzZXQgRnJvbSBhZGRyZXNzIHRvIDxpZGVudD4gKG9yIGNvbW1pdHRlciBpZGVudCBpZiBhYnNlbnQpIgogbXNnc3RyICLlsIYgRnJvbSDlnLDlnYDorr7nva7kuLogPOagh+ivhj7vvIjlpoLoi6XkuI3mj5DkvpvvvIzliJnnlKjmj5DkuqTogIUgSUQg5YGa5Li65Zyw5Z2A77yJIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjQKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4MQogbXNnaWQgIm1lc3NhZ2UtaWQiCiBtc2dzdHIgIumCruS7tuagh+ivhiIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTY1CisjOiBidWlsdGluL2xvZy5jOjE2ODIKIG1zZ2lkICJtYWtlIGZpcnN0IG1haWwgYSByZXBseSB0byA8bWVzc2FnZS1pZD4iCiBtc2dzdHIgIuS9v+esrOS4gOWwgemCruS7tuS9nOS4uuWvuSA86YKu5Lu25qCH6K+GPiDnmoTlm57lpI0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU2NiBidWlsdGluL2xvZy5jOjE1NjkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4MyBidWlsdGluL2xvZy5jOjE2ODYKIG1zZ2lkICJib3VuZGFyeSIKIG1zZ3N0ciAi6L6555WMIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NjcKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4NAogbXNnaWQgImF0dGFjaCB0aGUgcGF0Y2giCiBtc2dzdHIgIumZhOS7tuaWueW8j+a3u+WKoOihpeS4gSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTcwCisjOiBidWlsdGluL2xvZy5jOjE2ODcKIG1zZ2lkICJpbmxpbmUgdGhlIHBhdGNoIgogbXNnc3RyICLlhoXogZTmmL7npLrooaXkuIEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU3NAorIzogYnVpbHRpbi9sb2cuYzoxNjkxCiBtc2dpZCAiZW5hYmxlIG1lc3NhZ2UgdGhyZWFkaW5nLCBzdHlsZXM6IHNoYWxsb3csIGRlZXAiCiBtc2dzdHIgIuWQr+eUqOmCruS7tue6v+e0ou+8jOmjjuagvO+8mua1he+8jOa3sSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc2CisjOiBidWlsdGluL2xvZy5jOjE2OTMKIG1zZ2lkICJzaWduYXR1cmUiCiBtc2dzdHIgIuetvuWQjSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc3CisjOiBidWlsdGluL2xvZy5jOjE2OTQKIG1zZ2lkICJhZGQgYSBzaWduYXR1cmUiCiBtc2dzdHIgIua3u+WKoOS4gOS4quetvuWQjSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTc4CisjOiBidWlsdGluL2xvZy5jOjE2OTUKIG1zZ2lkICJiYXNlLWNvbW1pdCIKIG1zZ3N0ciAi5Z+657q/5o+Q5LqkIgogCi0jOiBidWlsdGluL2xvZy5jOjE1NzkKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5NgogbXNnaWQgImFkZCBwcmVyZXF1aXNpdGUgdHJlZSBpbmZvIHRvIHRoZSBwYXRjaCBzZXJpZXMiCiBtc2dzdHIgIuS4uuihpeS4geWIl+ihqOa3u+WKoOWJjee9ruagkeS/oeaBryIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTgxCisjOiBidWlsdGluL2xvZy5jOjE2OTgKIG1zZ2lkICJhZGQgYSBzaWduYXR1cmUgZnJvbSBhIGZpbGUiCiBtc2dzdHIgIuS7juaWh+S7tua3u+WKoOS4gOS4quetvuWQjSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTgyCisjOiBidWlsdGluL2xvZy5jOjE2OTkKIG1zZ2lkICJkb24ndCBwcmludCB0aGUgcGF0Y2ggZmlsZW5hbWVzIgogbXNnc3RyICLkuI3opoHmiZPljbDooaXkuIHmlofku7blkI0iCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU4NAorIzogYnVpbHRpbi9sb2cuYzoxNzAxCiBtc2dpZCAic2hvdyBwcm9ncmVzcyB3aGlsZSBnZW5lcmF0aW5nIHBhdGNoZXMiCiBtc2dzdHIgIuWcqOeUn+aIkOihpeS4geaXtuaYvuekuui/m+W6piIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTg1Ci1tc2dpZCAicmV2IgotbXNnc3RyICLniYjmnKwiCi0KLSM6IGJ1aWx0aW4vbG9nLmM6MTU4NgorIzogYnVpbHRpbi9sb2cuYzoxNzAzCiBtc2dpZCAic2hvdyBjaGFuZ2VzIGFnYWluc3QgPHJldj4gaW4gY292ZXIgbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAi5Zyo6ZmE5Ye95oiW5Y2V5Liq6KGl5LiB5Lit5pi+56S65ZKMIDxyZXY+IOeahOW3ruW8giIKIAotIzogYnVpbHRpbi9sb2cuYzoxNTg5CisjOiBidWlsdGluL2xvZy5jOjE3MDYKIG1zZ2lkICJzaG93IGNoYW5nZXMgYWdhaW5zdCA8cmVmc3BlYz4gaW4gY292ZXIgbGV0dGVyIG9yIHNpbmdsZSBwYXRjaCIKIG1zZ3N0ciAi5Zyo6ZmE5Ye95oiW5Y2V5Liq6KGl5LiB5Lit5pi+56S65ZKMIDxyZWZzcGVjPiDnmoTlt67lvIIiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTU5MQorIzogYnVpbHRpbi9sb2cuYzoxNzA4CiBtc2dpZCAicGVyY2VudGFnZSBieSB3aGljaCBjcmVhdGlvbiBpcyB3ZWlnaHRlZCIKIG1zZ3N0ciAi5Yib5bu65p2D6YeN55qE55m+5YiG5q+UIgogCi0jOiBidWlsdGluL2xvZy5jOjE2NjYKKyM6IGJ1aWx0aW4vbG9nLmM6MTc5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGlkZW50IGxpbmU6ICVzIgogbXNnc3RyICLljIXlkKvml6DmlYjnmoTouqvku73moIfor4bvvJolcyIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjgxCisjOiBidWlsdGluL2xvZy5jOjE4MDcKIG1zZ2lkICItbiBhbmQgLWsgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKIG1zZ3N0ciAiLW4g5ZKMIC1rIOS6kuaWpSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNjgzCisjOiBidWlsdGluL2xvZy5jOjE4MDkKIG1zZ2lkICItLXN1YmplY3QtcHJlZml4Ly0tcmZjIGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgogbXNnc3RyICItLXN1YmplY3QtcHJlZml4Ly0tcmZjIOWSjCAtayDkupLmlqUiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5MQorIzogYnVpbHRpbi9sb2cuYzoxODE3CiBtc2dpZCAiLS1uYW1lLW9ubHkgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS1uYW1lLW9ubHkg5peg5oSP5LmJIgogCi0jOiBidWlsdGluL2xvZy5jOjE2OTMKKyM6IGJ1aWx0aW4vbG9nLmM6MTgxOQogbXNnaWQgIi0tbmFtZS1zdGF0dXMgZG9lcyBub3QgbWFrZSBzZW5zZSIKIG1zZ3N0ciAiLS1uYW1lLXN0YXR1cyDml6DmhI/kuYkiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTY5NQorIzogYnVpbHRpbi9sb2cuYzoxODIxCiBtc2dpZCAiLS1jaGVjayBkb2VzIG5vdCBtYWtlIHNlbnNlIgogbXNnc3RyICItLWNoZWNrIOaXoOaEj+S5iSIKIAotIzogYnVpbHRpbi9sb2cuYzoxNzI3CisjOiBidWlsdGluL2xvZy5jOjE4NTQKIG1zZ2lkICJzdGFuZGFyZCBvdXRwdXQsIG9yIGRpcmVjdG9yeSwgd2hpY2ggb25lPyIKIG1zZ3N0ciAi5qCH5YeG6L6T5Ye65oiW55uu5b2V77yM5ZOq5LiA5Liq77yfIgogCi0jOiBidWlsdGluL2xvZy5jOjE3MjkKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKLW1zZ3N0ciAi5LiN6IO95Yib5bu655uu5b2VICclcyciCi0KLSM6IGJ1aWx0aW4vbG9nLmM6MTgxNgorIzogYnVpbHRpbi9sb2cuYzoxOTU4CiBtc2dpZCAiLS1pbnRlcmRpZmYgcmVxdWlyZXMgLS1jb3Zlci1sZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgogbXNnc3RyICItLWludGVyZGlmZiDpnIDopoEgLS1jb3Zlci1sZXR0ZXIg5oiW5Y2V5LiA6KGl5LiBIgogCi0jOiBidWlsdGluL2xvZy5jOjE4MjAKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2MgogbXNnaWQgIkludGVyZGlmZjoiCiBtc2dzdHIgIueJiOacrOmXtOW3ruW8gu+8miIKIAotIzogYnVpbHRpbi9sb2cuYzoxODIxCisjOiBidWlsdGluL2xvZy5jOjE5NjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW50ZXJkaWZmIGFnYWluc3QgdiVkOiIKIG1zZ3N0ciAi5a+5IHYlZCDnmoTniYjmnKzlt67lvILvvJoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTgyNworIzogYnVpbHRpbi9sb2cuYzoxOTY5CiBtc2dpZCAiLS1jcmVhdGlvbi1mYWN0b3IgcmVxdWlyZXMgLS1yYW5nZS1kaWZmIgogbXNnc3RyICItLWNyZWF0aW9uLWZhY3RvciDpnIDopoEgLS1yYW5nZS1kaWZmIgogCi0jOiBidWlsdGluL2xvZy5jOjE4MzEKKyM6IGJ1aWx0aW4vbG9nLmM6MTk3MwogbXNnaWQgIi0tcmFuZ2UtZGlmZiByZXF1aXJlcyAtLWNvdmVyLWxldHRlciBvciBzaW5nbGUgcGF0Y2giCiBtc2dzdHIgIi0tcmFuZ2UtZGlmZiDpnIDopoEgLS1jb3Zlci1sZXR0ZXIg5oiW5Y2V5LiA6KGl5LiBIgogCi0jOiBidWlsdGluL2xvZy5jOjE4MzkKKyM6IGJ1aWx0aW4vbG9nLmM6MTk4MQogbXNnaWQgIlJhbmdlLWRpZmY6IgogbXNnc3RyICLojIPlm7Tlt67lvILvvJoiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg0MAorIzogYnVpbHRpbi9sb2cuYzoxOTgyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJhbmdlLWRpZmYgYWdhaW5zdCB2JWQ6IgogbXNnc3RyICLlr7kgdiVkIOeahOiMg+WbtOW3ruW8gu+8miIKIAotIzogYnVpbHRpbi9sb2cuYzoxODUxCisjOiBidWlsdGluL2xvZy5jOjE5OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgc2lnbmF0dXJlIGZpbGUgJyVzJyIKIG1zZ3N0ciAi5peg5rOV6K+75Y+W562+5ZCN5paH5Lu2ICclcyciCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTg4NworIzogYnVpbHRpbi9sb2cuYzoyMDI5CiBtc2dpZCAiR2VuZXJhdGluZyBwYXRjaGVzIgogbXNnc3RyICLnlJ/miJDooaXkuIEiCiAKLSM6IGJ1aWx0aW4vbG9nLmM6MTkzMQotbXNnaWQgIkZhaWxlZCB0byBjcmVhdGUgb3V0cHV0IGZpbGVzIgorIzogYnVpbHRpbi9sb2cuYzoyMDczCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBvdXRwdXQgZmlsZXMiCiBtc2dzdHIgIuaXoOazleWIm+W7uui+k+WHuuaWh+S7tiIKIAotIzogYnVpbHRpbi9sb2cuYzoxOTg5CisjOiBidWlsdGluL2xvZy5jOjIxMzIKIG1zZ2lkICJnaXQgY2hlcnJ5IFstdl0gWzx1cHN0cmVhbT4gWzxoZWFkPiBbPGxpbWl0Pl1dXSIKIG1zZ3N0ciAiZ2l0IGNoZXJyeSBbLXZdIFs85LiK5ri4PiBbPOWktD4gWzzpmZDliLY+XV1dIgogCi0jOiBidWlsdGluL2xvZy5jOjIwNDMKKyM6IGJ1aWx0aW4vbG9nLmM6MjE4NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IGZpbmQgYSB0cmFja2VkIHJlbW90ZSBicmFuY2gsIHBsZWFzZSBzcGVjaWZ5IDx1cHN0cmVhbT4gbWFudWFsbHkuXG4iCiBtc2dzdHIgIuS4jeiDveaJvuWIsOi3n+i4queahOi/nOeoi+WIhuaUr++8jOivt+aJi+W3peaMh+WumiA85LiK5ri4PuOAglxuIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NDY5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NDcwCiBtc2dpZCAiZ2l0IGxzLWZpbGVzIFs8b3B0aW9ucz5dIFs8ZmlsZT4uLi5dIgogbXNnc3RyICJnaXQgbHMtZmlsZXMgWzzpgInpobk+XSBbPOaWh+S7tj4uLi5dIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTI1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTI2CiBtc2dpZCAiaWRlbnRpZnkgdGhlIGZpbGUgc3RhdHVzIHdpdGggdGFncyIKIG1zZ3N0ciAi55So5qCH562+5qCH6K+G5paH5Lu255qE54q25oCBIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTI3CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTI4CiBtc2dpZCAidXNlIGxvd2VyY2FzZSBsZXR0ZXJzIGZvciAnYXNzdW1lIHVuY2hhbmdlZCcgZmlsZXMiCiBtc2dzdHIgIuS9v+eUqOWwj+WGmeWtl+avjeihqOekuiAn5YGH6K6+5pyq5pS55Y+Y55qEJyDmlofku7YiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzAKIG1zZ2lkICJ1c2UgbG93ZXJjYXNlIGxldHRlcnMgZm9yICdmc21vbml0b3IgY2xlYW4nIGZpbGVzIgogbXNnc3RyICLkvb/nlKjlsI/lhpnlrZfmr43ooajnpLogJ2ZzbW9uaXRvciBjbGVhbicg5paH5Lu2IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTMxCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTMyCiBtc2dpZCAic2hvdyBjYWNoZWQgZmlsZXMgaW4gdGhlIG91dHB1dCAoZGVmYXVsdCkiCiBtc2dzdHIgIuaYvuekuue8k+WtmOeahOaWh+S7tu+8iOm7mOiupO+8iSIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNAogbXNnaWQgInNob3cgZGVsZXRlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICLmmL7npLrlt7LliKDpmaTnmoTmlofku7YiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzUKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzYKIG1zZ2lkICJzaG93IG1vZGlmaWVkIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgIuaYvuekuuW3suS/ruaUueeahOaWh+S7tiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzOAogbXNnaWQgInNob3cgb3RoZXIgZmlsZXMgaW4gdGhlIG91dHB1dCIKIG1zZ3N0ciAi5pi+56S65YW25a6D5paH5Lu2IgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTM5CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQwCiBtc2dpZCAic2hvdyBpZ25vcmVkIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgIuaYvuekuuW/veeVpeeahOaWh+S7tiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MgorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0MwogbXNnaWQgInNob3cgc3RhZ2VkIGNvbnRlbnRzJyBvYmplY3QgbmFtZSBpbiB0aGUgb3V0cHV0IgogbXNnc3RyICLmmL7npLrmmoLlrZjljLrlhoXlrrnnmoTlr7nosaHlkI3np7AiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDQKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDUKIG1zZ2lkICJzaG93IGZpbGVzIG9uIHRoZSBmaWxlc3lzdGVtIHRoYXQgbmVlZCB0byBiZSByZW1vdmVkIgogbXNnc3RyICLmmL7npLrmlofku7bns7vnu5/pnIDopoHliKDpmaTnmoTmlofku7YiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDYKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDcKIG1zZ2lkICJzaG93ICdvdGhlcicgZGlyZWN0b3JpZXMnIG5hbWVzIG9ubHkiCiBtc2dzdHIgIuWPquaYvuekuuKAnOWFtuS7luKAneebruW9leeahOWQjeensCIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU0OQogbXNnaWQgInNob3cgbGluZSBlbmRpbmdzIG9mIGZpbGVzIgogbXNnc3RyICLmmL7npLrmlofku7bmjaLooYznrKbmoLzlvI8iCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTAKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTEKIG1zZ2lkICJkb24ndCBzaG93IGVtcHR5IGRpcmVjdG9yaWVzIgogbXNnc3RyICLkuI3mmL7npLrnqbrnm67lvZUiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTMKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NTQKIG1zZ2lkICJzaG93IHVubWVyZ2VkIGZpbGVzIGluIHRoZSBvdXRwdXQiCiBtc2dzdHIgIuaYvuekuuacquWQiOW5tueahOaWh+S7tiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NgogbXNnaWQgInNob3cgcmVzb2x2ZS11bmRvIGluZm9ybWF0aW9uIgogbXNnc3RyICLmmL7npLogcmVzb2x2ZS11bmRvIOS/oeaBryIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1OAogbXNnaWQgInNraXAgZmlsZXMgbWF0Y2hpbmcgcGF0dGVybiIKIG1zZ3N0ciAi5Yy56YWN5o6S6Zmk5paH5Lu255qE5qih5byPIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTYwCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTYxCiBtc2dpZCAiZXhjbHVkZSBwYXR0ZXJucyBhcmUgcmVhZCBmcm9tIDxmaWxlPiIKIG1zZ3N0ciAi5LuOIDzmlofku7Y+IOS4reivu+WPluaOkumZpOaooeW8jyIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU2MworIzogYnVpbHRpbi9scy1maWxlcy5jOjU2NAogbXNnaWQgInJlYWQgYWRkaXRpb25hbCBwZXItZGlyZWN0b3J5IGV4Y2x1ZGUgcGF0dGVybnMgaW4gPGZpbGU+IgogbXNnc3RyICLku44gPOaWh+S7tj4g6K+75Y+W6aKd5aSW55qE5q+P5Liq55uu5b2V55qE5o6S6Zmk5qih5byPIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTY1CisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTY2CiBtc2dpZCAiYWRkIHRoZSBzdGFuZGFyZCBnaXQgZXhjbHVzaW9ucyIKIG1zZ3N0ciAi5re75Yqg5qCH5YeG55qEIGdpdCDmjpLpmaQiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjkKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzAKIG1zZ2lkICJtYWtlIHRoZSBvdXRwdXQgcmVsYXRpdmUgdG8gdGhlIHByb2plY3QgdG9wIGRpcmVjdG9yeSIKIG1zZ3N0ciAi5pi+56S655u45a+55LqO6aG257qn55uu5b2V55qE5paH5Lu25ZCNIgogCi0jOiBidWlsdGluL2xzLWZpbGVzLmM6NTcyCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTczCiBtc2dpZCAicmVjdXJzZSB0aHJvdWdoIHN1Ym1vZHVsZXMiCiBtc2dzdHIgIuWcqOWtkOaooee7hOS4remAkuW9kiIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NAorIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NQogbXNnaWQgImlmIGFueSA8ZmlsZT4gaXMgbm90IGluIHRoZSBpbmRleCwgdHJlYXQgdGhpcyBhcyBhbiBlcnJvciIKIG1zZ3N0ciAi5aaC5p6c5Lu75L2VIDzmlofku7Y+IOmDveS4jeWcqOe0ouW8leWMuu+8jOinhuS4uumUmeivryIKIAotIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NQotbXNnaWQgInRyZWUtaXNoIgotbXNnc3RyICLmoJHmiJbmj5DkuqQiCi0KICM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzYKLW1zZ2lkICJwcmV0ZW5kIHRoYXQgcGF0aHMgcmVtb3ZlZCBzaW5jZSA8dHJlZS1pc2g+IGFyZSBzdGlsbCBwcmVzZW50IgotbXNnc3RyICLlgYfoo4Xoh6rku44gPOagkeaIluaPkOS6pD4g5LmL5ZCO5Yig6Zmk55qE6Lev5b6E5LuN54S25a2Y5ZyoIgorbXNnaWQgInRyZWUtaXNoIgorbXNnc3RyICLmoJHlr7nosaEiCiAKLSM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzgKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzcKK21zZ2lkICJwcmV0ZW5kIHRoYXQgcGF0aHMgcmVtb3ZlZCBzaW5jZSA8dHJlZS1pc2g+IGFyZSBzdGlsbCBwcmVzZW50IgorbXNnc3RyICLlgYfoo4Xoh6rku44gPOagkeWvueixoT4g5LmL5ZCO5Yig6Zmk55qE6Lev5b6E5LuN54S25a2Y5ZyoIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc5CiBtc2dpZCAic2hvdyBkZWJ1Z2dpbmcgZGF0YSIKIG1zZ3N0ciAi5pi+56S66LCD6K+V5pWw5o2uIgogCkBAIC0xMjY2Miw3ICsxNTY5OSw3IEBACiBtc2dpZCAiZG8gbm90IHByaW50IHJlbW90ZSBVUkwiCiBtc2dzdHIgIuS4jeaJk+WNsOi/nOeoiyBVUkwiCiAKLSM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjAgYnVpbHRpbi9scy1yZW1vdGUuYzo2MiBidWlsdGluL3JlYmFzZS5jOjkwMworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2MCBidWlsdGluL2xzLXJlbW90ZS5jOjYyIGJ1aWx0aW4vcmViYXNlLmM6MTU2MQogbXNnaWQgImV4ZWMiCiBtc2dzdHIgImV4ZWMiCiAKQEAgLTEyNjg2LDE3ICsxNTcyMywxNyBAQAogbXNnaWQgInRha2UgdXJsLjxiYXNlPi5pbnN0ZWFkT2YgaW50byBhY2NvdW50IgogbXNnc3RyICLlj4LogIMgdXJsLjxiYXNlPi5pbnN0ZWFkT2Yg6K6+572uIgogCi0jOiBidWlsdGluL2xzLXJlbW90ZS5jOjczCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjcyCiBtc2dpZCAiZXhpdCB3aXRoIGV4aXQgY29kZSAyIGlmIG5vIG1hdGNoaW5nIHJlZnMgYXJlIGZvdW5kIgogbXNnc3RyICLoi6XmnKrmib7liLDljLnphY3nmoTlvJXnlKjliJnku6XpgIDlh7rnoIEy6YCA5Ye6IgogCi0jOiBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjc1CiBtc2dpZCAic2hvdyB1bmRlcmx5aW5nIHJlZiBpbiBhZGRpdGlvbiB0byB0aGUgb2JqZWN0IHBvaW50ZWQgYnkgaXQiCiBtc2dzdHIgIumZpOS6huaYvuekuuaMh+WQkeeahOWvueixoeWklu+8jOaYvuekuuaMh+WQkeeahOW8leeUqOWQjSIKIAogIzogYnVpbHRpbi9scy10cmVlLmM6MzAKIG1zZ2lkICJnaXQgbHMtdHJlZSBbPG9wdGlvbnM+XSA8dHJlZS1pc2g+IFs8cGF0aD4uLi5dIgotbXNnc3RyICJnaXQgbHMtdHJlZSBbPOmAiemhuT5dIDzmoJHmiJbmj5DkuqQ+IFs86Lev5b6EPi4uLl0iCittc2dzdHIgImdpdCBscy10cmVlIFs86YCJ6aG5Pl0gPOagkeWvueixoT4gWzzot6/lvoQ+Li4uXSIKIAogIzogYnVpbHRpbi9scy10cmVlLmM6MTI4CiBtc2dpZCAib25seSBzaG93IHRyZWVzIgpAQCAtMTI3MzUsMjU2ICsxNTc3MiwyNzcgQEAKIG1zZ2lkICJlbXB0eSBtYm94OiAnJXMnIgogbXNnc3RyICLnqbrnmoQgbWJveO+8miclcyciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1MgorIzogYnVpbHRpbi9tZXJnZS5jOjU1CiBtc2dpZCAiZ2l0IG1lcmdlIFs8b3B0aW9ucz5dIFs8Y29tbWl0Pi4uLl0iCiBtc2dzdHIgImdpdCBtZXJnZSBbPOmAiemhuT5dIFs85o+Q5LqkPi4uLl0iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo1MworIzogYnVpbHRpbi9tZXJnZS5jOjU2CiBtc2dpZCAiZ2l0IG1lcmdlIC0tYWJvcnQiCiBtc2dzdHIgImdpdCBtZXJnZSAtLWFib3J0IgogCi0jOiBidWlsdGluL21lcmdlLmM6NTQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo1NwogbXNnaWQgImdpdCBtZXJnZSAtLWNvbnRpbnVlIgogbXNnc3RyICJnaXQgbWVyZ2UgLS1jb250aW51ZSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjExMQorIzogYnVpbHRpbi9tZXJnZS5jOjExOQogbXNnaWQgInN3aXRjaCBgbScgcmVxdWlyZXMgYSB2YWx1ZSIKIG1zZ3N0ciAi5byA5YWzIGBtJyDpnIDopoHkuIDkuKrlgLwiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNzcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgcmVxdWlyZXMgYSB2YWx1ZSIKK21zZ3N0ciAi6YCJ6aG5IGAlcycg6ZyA6KaB5LiA5Liq5YC8IgorCisjOiBidWlsdGluL21lcmdlLmM6MTg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBmaW5kIG1lcmdlIHN0cmF0ZWd5ICclcycuXG4iCiBtc2dzdHIgIuS4jeiDveaJvuWIsOWQiOW5tuetlueVpSAnJXMn44CCXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNzgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXZhaWxhYmxlIHN0cmF0ZWdpZXMgYXJlOiIKIG1zZ3N0ciAi5Y+v55So55qE562W55Wl5pyJ77yaIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTgzCisjOiBidWlsdGluL21lcmdlLmM6MTk0CiAjLCBjLWZvcm1hdAogbXNnaWQgIkF2YWlsYWJsZSBjdXN0b20gc3RyYXRlZ2llcyBhcmU6IgogbXNnc3RyICLlj6/nlKjnmoToh6rlrprkuYnnrZbnlaXmnInvvJoiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzQgYnVpbHRpbi9wdWxsLmM6MTQzCisjOiBidWlsdGluL21lcmdlLmM6MjQ1IGJ1aWx0aW4vcHVsbC5jOjEzMgogbXNnaWQgImRvIG5vdCBzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCiBtc2dzdHIgIuWcqOWQiOW5tueahOacgOWQjuS4jeaYvuekuuW3ruW8gue7n+iuoSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjIzNyBidWlsdGluL3B1bGwuYzoxNDYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDggYnVpbHRpbi9wdWxsLmM6MTM1CiBtc2dpZCAic2hvdyBhIGRpZmZzdGF0IGF0IHRoZSBlbmQgb2YgdGhlIG1lcmdlIgogbXNnc3RyICLlnKjlkIjlubbnmoTmnIDlkI7mmL7npLrlt67lvILnu5/orqEiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyMzggYnVpbHRpbi9wdWxsLmM6MTQ5CisjOiBidWlsdGluL21lcmdlLmM6MjQ5IGJ1aWx0aW4vcHVsbC5jOjEzOAogbXNnaWQgIihzeW5vbnltIHRvIC0tc3RhdCkiCiBtc2dzdHIgIu+8iOWSjCAtLXN0YXQg5ZCM5LmJ77yJIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQwIGJ1aWx0aW4vcHVsbC5jOjE1MgorIzogYnVpbHRpbi9tZXJnZS5jOjI1MSBidWlsdGluL3B1bGwuYzoxNDEKIG1zZ2lkICJhZGQgKGF0IG1vc3QgPG4+KSBlbnRyaWVzIGZyb20gc2hvcnRsb2cgdG8gbWVyZ2UgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgIuWcqOWQiOW5tuaPkOS6pOS/oeaBr+S4rea3u+WKoO+8iOacgOWkmiA8bj4g5p2h77yJ57K+566A5o+Q5Lqk6K6w5b2VIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQzIGJ1aWx0aW4vcHVsbC5jOjE1OAorIzogYnVpbHRpbi9tZXJnZS5jOjI1NCBidWlsdGluL3B1bGwuYzoxNDcKIG1zZ2lkICJjcmVhdGUgYSBzaW5nbGUgY29tbWl0IGluc3RlYWQgb2YgZG9pbmcgYSBtZXJnZSIKIG1zZ3N0ciAi5Yib5bu65LiA5Liq5Y2V54us55qE5o+Q5Lqk6ICM5LiN5piv5YGa5LiA5qyh5ZCI5bm2IgogCi0jOiBidWlsdGluL21lcmdlLmM6MjQ1IGJ1aWx0aW4vcHVsbC5jOjE2MQorIzogYnVpbHRpbi9tZXJnZS5jOjI1NiBidWlsdGluL3B1bGwuYzoxNTAKIG1zZ2lkICJwZXJmb3JtIGEgY29tbWl0IGlmIHRoZSBtZXJnZSBzdWNjZWVkcyAoZGVmYXVsdCkiCiBtc2dzdHIgIuWmguaenOWQiOW5tuaIkOWKn++8jOaJp+ihjOS4gOasoeaPkOS6pO+8iOm7mOiupO+8iSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI0NyBidWlsdGluL3B1bGwuYzoxNjQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTggYnVpbHRpbi9wdWxsLmM6MTUzCiBtc2dpZCAiZWRpdCBtZXNzYWdlIGJlZm9yZSBjb21taXR0aW5nIgogbXNnc3RyICLlnKjmj5DkuqTliY3nvJbovpHmj5DkuqTor7TmmI4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNDgKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjAKIG1zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQgKGRlZmF1bHQpIgogbXNnc3RyICLlhYHorrjlv6vov5vvvIjpu5jorqTvvIkiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTAgYnVpbHRpbi9wdWxsLmM6MTcwCisjOiBidWlsdGluL21lcmdlLmM6MjYyIGJ1aWx0aW4vcHVsbC5jOjE2MAogbXNnaWQgImFib3J0IGlmIGZhc3QtZm9yd2FyZCBpcyBub3QgcG9zc2libGUiCiBtc2dzdHIgIuWmguaenOS4jeiDveW/q+i/m+WwseaUvuW8g+WQiOW5tiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NCBidWlsdGluL3B1bGwuYzoxNzMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjYgYnVpbHRpbi9wdWxsLmM6MTYzCiBtc2dpZCAidmVyaWZ5IHRoYXQgdGhlIG5hbWVkIGNvbW1pdCBoYXMgYSB2YWxpZCBHUEcgc2lnbmF0dXJlIgogbXNnc3RyICLpqozor4HmjIflrprnmoTmj5DkuqTmmK/lkKbljIXlkKvkuIDkuKrmnInmlYjnmoQgR1BHIOetvuWQjSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NSBidWlsdGluL25vdGVzLmM6Nzg0IGJ1aWx0aW4vcHVsbC5jOjE3NwotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTYgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTg2IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCisjOiBidWlsdGluL21lcmdlLmM6MjY3IGJ1aWx0aW4vbm90ZXMuYzo3ODcgYnVpbHRpbi9wdWxsLmM6MTY3CisjOiBidWlsdGluL3JlYmFzZS5jOjUyMCBidWlsdGluL3JlYmFzZS5jOjE1NzUgYnVpbHRpbi9yZXZlcnQuYzoxMTQKIG1zZ2lkICJzdHJhdGVneSIKIG1zZ3N0ciAi562W55WlIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjU2IGJ1aWx0aW4vcHVsbC5jOjE3OAorIzogYnVpbHRpbi9tZXJnZS5jOjI2OCBidWlsdGluL3B1bGwuYzoxNjgKIG1zZ2lkICJtZXJnZSBzdHJhdGVneSB0byB1c2UiCiBtc2dzdHIgIuimgeS9v+eUqOeahOWQiOW5tuetlueVpSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI1NyBidWlsdGluL3B1bGwuYzoxODEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjkgYnVpbHRpbi9wdWxsLmM6MTcxCiBtc2dpZCAib3B0aW9uPXZhbHVlIgogbXNnc3RyICJvcHRpb249dmFsdWUiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTggYnVpbHRpbi9wdWxsLmM6MTgyCisjOiBidWlsdGluL21lcmdlLmM6MjcwIGJ1aWx0aW4vcHVsbC5jOjE3MgogbXNnaWQgIm9wdGlvbiBmb3Igc2VsZWN0ZWQgbWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgIuaJgOmAieeahOWQiOW5tuetlueVpeeahOmAiemhuSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI2MAorIzogYnVpbHRpbi9tZXJnZS5jOjI3MgogbXNnaWQgIm1lcmdlIGNvbW1pdCBtZXNzYWdlIChmb3IgYSBub24tZmFzdC1mb3J3YXJkIG1lcmdlKSIKIG1zZ3N0ciAi5ZCI5bm255qE5o+Q5Lqk6K+05piO77yI6ZKI5a+56Z2e5b+r6L+b5byP5ZCI5bm277yJIgogCi0jOiBidWlsdGluL21lcmdlLmM6MjY3CisjOiBidWlsdGluL21lcmdlLmM6Mjc5CiBtc2dpZCAiYWJvcnQgdGhlIGN1cnJlbnQgaW4tcHJvZ3Jlc3MgbWVyZ2UiCiBtc2dzdHIgIuaUvuW8g+W9k+WJjeato+WcqOi/m+ihjOeahOWQiOW5tiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI2OQorIworIzogYnVpbHRpbi9tZXJnZS5jOjI4MQorbXNnaWQgIi0tYWJvcnQgYnV0IGxlYXZlIGluZGV4IGFuZCB3b3JraW5nIHRyZWUgYWxvbmUiCittc2dzdHIgIi0tYWJvcnTvvIzkvYbmmK/kv53nlZnntKLlvJXlkozlt6XkvZzljLoiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODMKIG1zZ2lkICJjb250aW51ZSB0aGUgY3VycmVudCBpbi1wcm9ncmVzcyBtZXJnZSIKIG1zZ3N0ciAi57un57ut5b2T5YmN5q2j5Zyo6L+b6KGM55qE5ZCI5bm2IgogCi0jOiBidWlsdGluL21lcmdlLmM6MjcxIGJ1aWx0aW4vcHVsbC5jOjE4OQorIzogYnVpbHRpbi9tZXJnZS5jOjI4NSBidWlsdGluL3B1bGwuYzoxNzkKIG1zZ2lkICJhbGxvdyBtZXJnaW5nIHVucmVsYXRlZCBoaXN0b3JpZXMiCiBtc2dzdHIgIuWFgeiuuOWQiOW5tuS4jeebuOWFs+eahOWOhuWPsiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjI3NwotbXNnaWQgInZlcmlmeSBjb21taXQtbXNnIGhvb2siCi1tc2dzdHIgIuagoemqjCBjb21taXQtbXNnIOmSqeWtkCIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyOTEKK21zZ2lkICJieXBhc3MgcHJlLW1lcmdlLWNvbW1pdCBhbmQgY29tbWl0LW1zZyBob29rcyIKK21zZ3N0ciAi57uV6L+HIHByZS1tZXJnZS1jb21taXQg5ZKMIGNvbW1pdC1tc2cg6ZKp5a2QIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzAyCisjOiBidWlsdGluL21lcmdlLmM6MzA4CiBtc2dpZCAiY291bGQgbm90IHJ1biBzdGFzaC4iCiBtc2dzdHIgIuS4jeiDvei/kOihjOi0ruiXj+OAgiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjMwNworIzogYnVpbHRpbi9tZXJnZS5jOjMxMwogbXNnaWQgInN0YXNoIGZhaWxlZCIKIG1zZ3N0ciAi6LSu6JeP5aSx6LSlIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzEyCisjOiBidWlsdGluL21lcmdlLmM6MzE4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdDogJXMiCiBtc2dzdHIgIuS4jeaYr+S4gOS4quacieaViOWvueixoe+8miVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6MzM0IGJ1aWx0aW4vbWVyZ2UuYzozNTEKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozNDAgYnVpbHRpbi9tZXJnZS5jOjM1NwogbXNnaWQgInJlYWQtdHJlZSBmYWlsZWQiCiBtc2dzdHIgIuivu+WPluagkeWksei0pSIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiBidWlsdGluL21lcmdlLmM6MzgxCisjOiBidWlsdGluL21lcmdlLmM6Mzg3CiBtc2dpZCAiIChub3RoaW5nIHRvIHNxdWFzaCkiCiBtc2dzdHIgIiDvvIjml6Dlj6/ljovnvKnvvIkiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzozOTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzozOTgKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3F1YXNoIGNvbW1pdCAtLSBub3QgdXBkYXRpbmcgSEVBRFxuIgogbXNnc3RyICLljovnvKnmj5DkuqQgLS0g5pyq5pu05pawIEhFQURcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjQ0MgorIzogYnVpbHRpbi9tZXJnZS5jOjQ0OAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBtZXJnZSBtZXNzYWdlIC0tIG5vdCB1cGRhdGluZyBIRUFEXG4iCiBtc2dzdHIgIuaXoOWQiOW5tuS/oeaBryAtLSDmnKrmm7TmlrAgSEVBRFxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6NDkzCisjOiBidWlsdGluL21lcmdlLmM6NDk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgZG9lcyBub3QgcG9pbnQgdG8gYSBjb21taXQiCiBtc2dzdHIgIiclcycg5rKh5pyJ5oyH5ZCR5LiA5Liq5o+Q5LqkIgogCi0jOiBidWlsdGluL21lcmdlLmM6NTgwCisjOiBidWlsdGluL21lcmdlLmM6NTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkJhZCBicmFuY2guJXMubWVyZ2VvcHRpb25zIHN0cmluZzogJXMiCiBtc2dzdHIgIuWdj+eahCBicmFuY2guJXMubWVyZ2VvcHRpb25zIOWtl+espuS4su+8miVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzAxCisjOiBidWlsdGluL21lcmdlLmM6NzA4CiBtc2dpZCAiTm90IGhhbmRsaW5nIGFueXRoaW5nIG90aGVyIHRoYW4gdHdvIGhlYWRzIG1lcmdlLiIKIG1zZ3N0ciAi5pyq5aSE55CG5Lik5Liq5aS05ZCI5bm25LmL5aSW55qE5Lu75L2V5pON5L2c44CCIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzE1CisjOiBidWlsdGluL21lcmdlLmM6NzIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gb3B0aW9uIGZvciBtZXJnZS1yZWN1cnNpdmU6IC1YJXMiCiBtc2dzdHIgIm1lcmdlLXJlY3Vyc2l2ZSDnmoTmnKrnn6XpgInpobnvvJotWCVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzMwCisjOiBidWlsdGluL21lcmdlLmM6NzM3CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byB3cml0ZSAlcyIKIG1zZ3N0ciAi5LiN6IO95YaZICVzIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzgyCisjOiBidWlsdGluL21lcmdlLmM6Nzg5CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZWFkIGZyb20gJyVzJyIKIG1zZ3N0ciAi5LiN6IO95LuOICclcycg6K+75Y+WIgogCi0jOiBidWlsdGluL21lcmdlLmM6NzkxCisjOiBidWlsdGluL21lcmdlLmM6Nzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vdCBjb21taXR0aW5nIG1lcmdlOyB1c2UgJ2dpdCBjb21taXQnIHRvIGNvbXBsZXRlIHRoZSBtZXJnZS5cbiIKIG1zZ3N0ciAi5pyq5o+Q5Lqk5ZCI5bm277yM5L2/55SoICdnaXQgY29tbWl0JyDlrozmiJDmraTmrKHlkIjlubbjgIJcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjc5NwotIywgYy1mb3JtYXQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4MDQKIG1zZ2lkICIiCiAiUGxlYXNlIGVudGVyIGEgY29tbWl0IG1lc3NhZ2UgdG8gZXhwbGFpbiB3aHkgdGhpcyBtZXJnZSBpcyBuZWNlc3NhcnksXG4iCiAiZXNwZWNpYWxseSBpZiBpdCBtZXJnZXMgYW4gdXBkYXRlZCB1cHN0cmVhbSBpbnRvIGEgdG9waWMgYnJhbmNoLlxuIgogIlxuIgotIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIGlnbm9yZWQsIGFuZCBhbiBlbXB0eSBtZXNzYWdlIGFib3J0c1xuIgotInRoZSBjb21taXQuXG4iCiBtc2dzdHIgIiIKICLor7fovpPlhaXkuIDkuKrmj5DkuqTkv6Hmga/ku6Xop6Pph4rmraTlkIjlubbnmoTlv4XopoHmgKfvvIzlsKTlhbbmmK/lsIbkuIDkuKrmm7TmlrDlkI7nmoTkuIrmuLjliIbmlK9cbiIKICLlkIjlubbliLDkuLvpopjliIbmlK/jgIJcbiIKICJcbiIKLSLku6UgJyVjJyDlvIDlpLTnmoTooYzlsIbooqvlv73nlaXvvIzogIzkuJTnqbrmj5DkuqTor7TmmI7lsIbkvJrnu4jmraLmj5DkuqTjgIJcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjgzMworIzogYnVpbHRpbi9tZXJnZS5jOjgwOQorbXNnaWQgIkFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCittc2dzdHIgIuepuueahOaPkOS6pOivtOaYjuS8mue7iOatouaPkOS6pOOAglxuIgorCisjOiBidWlsdGluL21lcmdlLmM6ODEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBpZ25vcmVkLCBhbmQgYW4gZW1wdHkgbWVzc2FnZSBhYm9ydHNcbiIKKyJ0aGUgY29tbWl0LlxuIgorbXNnc3RyICLku6UgJyVjJyDlvIDlp4vnmoTooYzlsIbooqvlv73nlaXvvIzogIznqbrnmoTmj5DkuqTor7TmmI7lsIbnu4jmraLmj5DkuqTjgIJcbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjg2NQogbXNnaWQgIkVtcHR5IGNvbW1pdCBtZXNzYWdlLiIKIG1zZ3N0ciAi56m65o+Q5Lqk5L+h5oGv44CCIgogCi0jOiBidWlsdGluL21lcmdlLmM6ODUyCisjOiBidWlsdGluL21lcmdlLmM6ODgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIldvbmRlcmZ1bC5cbiIKIG1zZ3N0ciAi5aSq5qOS5LqG44CCXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5MDUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0b21hdGljIG1lcmdlIGZhaWxlZDsgZml4IGNvbmZsaWN0cyBhbmQgdGhlbiBjb21taXQgdGhlIHJlc3VsdC5cbiIKIG1zZ3N0ciAi6Ieq5Yqo5ZCI5bm25aSx6LSl77yM5L+u5q2j5Yay56qB54S25ZCO5o+Q5Lqk5L+u5q2j55qE57uT5p6c44CCXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5NDQKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODAKIG1zZ2lkICJObyBjdXJyZW50IGJyYW5jaC4iCiBtc2dzdHIgIuayoeacieW9k+WJjeWIhuaUr+OAgiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjk0NgorIzogYnVpbHRpbi9tZXJnZS5jOjk4MgogbXNnaWQgIk5vIHJlbW90ZSBmb3IgdGhlIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAi5b2T5YmN5YiG5pSv5rKh5pyJ5a+55bqU55qE6L+c56iL5LuT5bqT44CCIgogCi0jOiBidWlsdGluL21lcmdlLmM6OTQ4CisjOiBidWlsdGluL21lcmdlLmM6OTg0CiBtc2dpZCAiTm8gZGVmYXVsdCB1cHN0cmVhbSBkZWZpbmVkIGZvciB0aGUgY3VycmVudCBicmFuY2guIgogbXNnc3RyICLlvZPliY3liIbmlK/msqHmnInlrprkuYnpu5jorqTnmoTkuIrmuLjliIbmlK/jgIIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzo5NTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gcmVtb3RlLXRyYWNraW5nIGJyYW5jaCBmb3IgJXMgZnJvbSAlcyIKIG1zZ3N0ciAi5a+55LqOICVzIOayoeacieadpeiHqiAlcyDnmoTov5znqIvot5/ouKrliIbmlK8iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMDEwCisjOiBidWlsdGluL21lcmdlLmM6MTA0NgogIywgYy1mb3JtYXQKIG1zZ2lkICJCYWQgdmFsdWUgJyVzJyBpbiBlbnZpcm9ubWVudCAnJXMnIgogbXNnc3RyICLnjq/looMgJyUyJHMnIOS4reWtmOWcqOWdj+eahOWPluWAvCAnJTEkcyciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTEzCisjOiBidWlsdGluL21lcmdlLmM6MTE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJub3Qgc29tZXRoaW5nIHdlIGNhbiBtZXJnZSBpbiAlczogJXMiCiBtc2dzdHIgIuS4jeiDveWcqCAlcyDkuK3lkIjlubbvvJolcyIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjExNDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTgzCiBtc2dpZCAibm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UiCiBtc2dzdHIgIuS4jeiDveWQiOW5tiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNTAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjg2CiBtc2dpZCAiLS1hYm9ydCBleHBlY3RzIG5vIGFyZ3VtZW50cyIKIG1zZ3N0ciAiLS1hYm9ydCDkuI3luKblj4LmlbAiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjU0CisjOiBidWlsdGluL21lcmdlLmM6MTI5MAogbXNnaWQgIlRoZXJlIGlzIG5vIG1lcmdlIHRvIGFib3J0IChNRVJHRV9IRUFEIG1pc3NpbmcpLiIKIG1zZ3N0ciAi5rKh5pyJ6KaB57uI5q2i55qE5ZCI5bm277yITUVSR0VfSEVBRCDkuKLlpLHvvInjgIIiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjY2CisjOiBidWlsdGluL21lcmdlLmM6MTI5OQorbXNnaWQgIi0tcXVpdCBleHBlY3RzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1xdWl0IOS4jeW4puWPguaVsCIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzMTIKIG1zZ2lkICItLWNvbnRpbnVlIGV4cGVjdHMgbm8gYXJndW1lbnRzIgogbXNnc3RyICItLWNvbnRpbnVlIOS4jeW4puWPguaVsCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyNzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzE2CiBtc2dpZCAiVGhlcmUgaXMgbm8gbWVyZ2UgaW4gcHJvZ3Jlc3MgKE1FUkdFX0hFQUQgbWlzc2luZykuIgogbXNnc3RyICLmsqHmnInov5vooYzkuK3nmoTlkIjlubbvvIhNRVJHRV9IRUFEIOS4ouWkse+8ieOAgiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyODYKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzMyCiBtc2dpZCAiIgogIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBtZXJnZSAoTUVSR0VfSEVBRCBleGlzdHMpLlxuIgogIlBsZWFzZSwgY29tbWl0IHlvdXIgY2hhbmdlcyBiZWZvcmUgeW91IG1lcmdlLiIKQEAgLTEyOTkyLDcgKzE2MDUwLDcgQEAKICLmgqjlsJrmnKrnu5PmnZ/mgqjnmoTlkIjlubbvvIjlrZjlnKggTUVSR0VfSEVBRO+8ieOAglxuIgogIuivt+WcqOWQiOW5tuWJjeWFiOaPkOS6pOaCqOeahOS/ruaUueOAgiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEyOTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzM5CiBtc2dpZCAiIgogIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdHMpLlxuIgogIlBsZWFzZSwgY29tbWl0IHlvdXIgY2hhbmdlcyBiZWZvcmUgeW91IG1lcmdlLiIKQEAgLTEzMDAwLDkyICsxNjA1OCw5NiBAQAogIuaCqOWwmuacque7k+adn+aCqOeahOaLo+mAie+8iOWtmOWcqCBDSEVSUllfUElDS19IRUFE77yJ44CCXG4iCiAi6K+35Zyo5ZCI5bm25YmN5YWI5o+Q5Lqk5oKo55qE5L+u5pS544CCIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTI5NgorIzogYnVpbHRpbi9tZXJnZS5jOjEzNDIKIG1zZ2lkICJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgY2hlcnJ5LXBpY2sgKENIRVJSWV9QSUNLX0hFQUQgZXhpc3RzKS4iCiBtc2dzdHIgIuaCqOWwmuacque7k+adn+aCqOeahOaLo+mAie+8iOWtmOWcqCBDSEVSUllfUElDS19IRUFE77yJ44CCIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMwNQorIzogYnVpbHRpbi9tZXJnZS5jOjEzNTYKIG1zZ2lkICJZb3UgY2Fubm90IGNvbWJpbmUgLS1zcXVhc2ggd2l0aCAtLW5vLWZmLiIKLW1zZ3N0ciAi5oKo5LiN6IO95bCGIC0tc3F1YXNoIOS4jiAtLW5vLWZmIOWQjOaXtuS9v+eUqOOAgiIKK21zZ3N0ciAi5oKo5LiN6IO95bCGIC0tc3F1YXNoIOWSjCAtLW5vLWZmIOe7hOWQiOS9v+eUqOOAgiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzU4Cittc2dpZCAiWW91IGNhbm5vdCBjb21iaW5lIC0tc3F1YXNoIHdpdGggLS1jb21taXQuIgorbXNnc3RyICLmgqjkuI3og73lsIYgLS1zcXVhc2gg5ZKMIC0tY29tbWl0IOe7hOWQiOS9v+eUqOOAgiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzNzQKIG1zZ2lkICJObyBjb21taXQgc3BlY2lmaWVkIGFuZCBtZXJnZS5kZWZhdWx0VG9VcHN0cmVhbSBub3Qgc2V0LiIKIG1zZ3N0ciAi5pyq5oyH5a6a5o+Q5Lqk5bm25LiUIG1lcmdlLmRlZmF1bHRUb1Vwc3RyZWFtIOacquiuvue9ruOAgiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzkxCiBtc2dpZCAiU3F1YXNoIGNvbW1pdCBpbnRvIGVtcHR5IGhlYWQgbm90IHN1cHBvcnRlZCB5ZXQiCiBtc2dzdHIgIuWwmuS4jeaUr+aMgeWIsOepuuWIhuaUr+eahOWOi+e8qeaPkOS6pCIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzkzCiBtc2dpZCAiTm9uLWZhc3QtZm9yd2FyZCBjb21taXQgZG9lcyBub3QgbWFrZSBzZW5zZSBpbnRvIGFuIGVtcHR5IGhlYWQiCiBtc2dzdHIgIuWIsOepuuWIhuaUr+eahOmdnuW/q+i/m+W8j+aPkOS6pOayoeacieaEj+S5iSIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjEzMzcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzk4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIC0gbm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UiCiBtc2dzdHIgIiVzIC0g5LiN6IO96KKr5ZCI5bm2IgogCi0jOiBidWlsdGluL21lcmdlLmM6MTMzOQorIzogYnVpbHRpbi9tZXJnZS5jOjE0MDAKIG1zZ2lkICJDYW4gbWVyZ2Ugb25seSBleGFjdGx5IG9uZSBjb21taXQgaW50byBlbXB0eSBoZWFkIgogbXNnc3RyICLlj6rog73lsIbkuIDkuKrmj5DkuqTlkIjlubbliLDnqbrliIbmlK/kuIoiCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDIxCisjOiBidWlsdGluL21lcmdlLmM6MTQ4MQogbXNnaWQgInJlZnVzaW5nIHRvIG1lcmdlIHVucmVsYXRlZCBoaXN0b3JpZXMiCiBtc2dzdHIgIuaLkue7neWQiOW5tuaXoOWFs+eahOWOhuWPsiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0MzAKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDkwCiBtc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlLiIKIG1zZ3N0ciAi5bey57uP5piv5pyA5paw55qE44CCIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTQ0MAorIzogYnVpbHRpbi9tZXJnZS5jOjE1MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRpbmcgJXMuLiVzXG4iCiBtc2dzdHIgIuabtOaWsCAlcy4uJXNcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0ODIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlRyeWluZyByZWFsbHkgdHJpdmlhbCBpbi1pbmRleCBtZXJnZS4uLlxuIgogbXNnc3RyICLlsJ3or5XpnZ7luLjlsI/nmoTntKLlvJXlhoXlkIjlubYuLi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE0ODkKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vcGUuXG4iCiBtc2dzdHIgIuaXoOOAglxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTUxNAorIzogYnVpbHRpbi9tZXJnZS5jOjE1NzQKIG1zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUuIFllZWFoISIKIG1zZ3N0ciAi5bey57uP5piv5pyA5paw55qE44CC6IC277yBIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTUyMAorIzogYnVpbHRpbi9tZXJnZS5jOjE1ODAKIG1zZ2lkICJOb3QgcG9zc2libGUgdG8gZmFzdC1mb3J3YXJkLCBhYm9ydGluZy4iCiBtc2dzdHIgIuaXoOazleW/q+i/m++8jOe7iOatouOAgiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1NDMgYnVpbHRpbi9tZXJnZS5jOjE2MjIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjAzIGJ1aWx0aW4vbWVyZ2UuYzoxNjY4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlJld2luZGluZyB0aGUgdHJlZSB0byBwcmlzdGluZS4uLlxuIgogbXNnc3RyICLlsIbmoJHlm57mu5roh7Pljp/lp4vnirbmgIEuLi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE1NDcKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjA3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRyeWluZyBtZXJnZSBzdHJhdGVneSAlcy4uLlxuIgogbXNnc3RyICLlsJ3or5XlkIjlubbnrZbnlaUgJXMuLi5cbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MTMKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjU5CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIG1lcmdlIHN0cmF0ZWd5IGhhbmRsZWQgdGhlIG1lcmdlLlxuIgogbXNnc3RyICLmsqHmnInlkIjlubbnrZbnlaXlpITnkIbmraTlkIjlubbjgIJcbiIKIAotIzogYnVpbHRpbi9tZXJnZS5jOjE2MTUKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjYxCiAjLCBjLWZvcm1hdAogbXNnaWQgIk1lcmdlIHdpdGggc3RyYXRlZ3kgJXMgZmFpbGVkLlxuIgogbXNnc3RyICLkvb/nlKjnrZbnlaUgJXMg5ZCI5bm25aSx6LSl44CCXG4iCiAKLSM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjI0CisjOiBidWlsdGluL21lcmdlLmM6MTY3MAogIywgYy1mb3JtYXQKIG1zZ2lkICJVc2luZyB0aGUgJXMgdG8gcHJlcGFyZSByZXNvbHZpbmcgYnkgaGFuZC5cbiIKIG1zZ3N0ciAi5L2/55SoICVzIOS7peWHhuWkh+aJi+W3peino+WGs+OAglxuIgogCi0jOiBidWlsdGluL21lcmdlLmM6MTYzNgorIzogYnVpbHRpbi9tZXJnZS5jOjE2ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiQXV0b21hdGljIG1lcmdlIHdlbnQgd2VsbDsgc3RvcHBlZCBiZWZvcmUgY29tbWl0dGluZyBhcyByZXF1ZXN0ZWRcbiIKIG1zZ3N0ciAi6Ieq5Yqo5ZCI5bm26L+b5bGV6aG65Yip77yM5oyJ6KaB5rGC5Zyo5o+Q5Lqk5YmN5YGc5q2iXG4iCkBAIC0xMzE3MCwzMyArMTYyMzIsMzMgQEAKIG1zZ2lkICJzZXQgbGFiZWxzIGZvciBmaWxlMS9vcmlnLWZpbGUvZmlsZTIiCiBtc2dzdHIgIuS4uiDmlofku7YxL+WIneWni+aWh+S7ti/mlofku7YyIOiuvue9ruagh+etviIKIAotIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo0NQorIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG9wdGlvbiAlcyIKIG1zZ3N0ciAi5pyq55+l6YCJ6aG5ICVzIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjUxCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJyIKIG1zZ3N0ciAi5LiN6IO96Kej5p6Q5a+56LGhICclcyciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTUKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgYmFzZS4gSWdub3JpbmcgJXMuIgogbXNnaWRfcGx1cmFsICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCBiYXNlcy4gSWdub3JpbmcgJXMuIgogbXNnc3RyWzBdICLml6Dms5XlpITnkIYgJWQg5p2h5Lul5LiK55qE5Z+657q/44CC5b+955WlICVz44CCIgogbXNnc3RyWzFdICLml6Dms5XlpITnkIYgJWQg5p2h5Lul5LiK55qE5Z+657q/44CC5b+955WlICVz44CCIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjYzCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjY1CiBtc2dpZCAibm90IGhhbmRsaW5nIGFueXRoaW5nIG90aGVyIHRoYW4gdHdvIGhlYWRzIG1lcmdlLiIKIG1zZ3N0ciAi5LiN6IO95aSE55CG5Lik5Liq5aS05ZCI5bm25LmL5aSW55qE5Lu75L2V5pON5L2c44CCIgogCi0jOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjY5IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzEKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzQgYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSByZWYgJyVzJyIKIG1zZ3N0ciAi5peg5rOV6Kej5p6Q5byV55SoICclcyciCiAKLSM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzcKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6ODIKICMsIGMtZm9ybWF0CiBtc2dpZCAiTWVyZ2luZyAlcyB3aXRoICVzXG4iCiBtc2dzdHIgIuWQiOW5tiAlcyDlkowgJXNcbiIKQEAgLTEzMjA5LDcgKzE2MjcxLDcgQEAKIG1zZ2lkICJpbnB1dCBpcyBOVUwgdGVybWluYXRlZCIKIG1zZ3N0ciAi6L6T5YWl5LulIE5VTCDlrZfnrKbnu4jmraIiCiAKLSM6IGJ1aWx0aW4vbWt0cmVlLmM6MTU1IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI1CisjOiBidWlsdGluL21rdHJlZS5jOjE1NSBidWlsdGluL3dyaXRlLXRyZWUuYzoyNgogbXNnaWQgImFsbG93IG1pc3Npbmcgb2JqZWN0cyIKIG1zZ3N0ciAi5YWB6K645Lii5aSx55qE5a+56LGhIgogCkBAIC0xMzIxNywxNTYgKzE2Mjc5LDE3MCBAQAogbXNnaWQgImFsbG93IGNyZWF0aW9uIG9mIG1vcmUgdGhhbiBvbmUgdHJlZSIKIG1zZ3N0ciAi5YWB6K645Yib5bu65LiA5Liq5Lul5LiK55qE5qCRIgogCi0jOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo4Ci1tc2dpZCAiZ2l0IG11bHRpLXBhY2staW5kZXggWy0tb2JqZWN0LWRpcj08ZGlyPl0gKHdyaXRlfHZlcmlmeSkiCi1tc2dzdHIgImdpdCBtdWx0aS1wYWNrLWluZGV4IFstLW9iamVjdC1kaXI9POebruW9lT5dICh3cml0ZXx2ZXJpZnkpIgorIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6OQorbXNnaWQgIiIKKyJnaXQgbXVsdGktcGFjay1pbmRleCBbPG9wdGlvbnM+XSAod3JpdGV8dmVyaWZ5fGV4cGlyZXxyZXBhY2sgLS1iYXRjaC0iCisic2l6ZT08c2l6ZT4pIgorbXNnc3RyICIiCisiZ2l0IG11bHRpLXBhY2staW5kZXggWzzpgInpobk+XSAod3JpdGV8dmVyaWZ5fGV4cGlyZXxyZXBhY2sgLS1iYXRjaC1zaXplPTzlpKflsI8iCisiPikiCiAKLSM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjIxCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyNgogbXNnaWQgIm9iamVjdCBkaXJlY3RvcnkgY29udGFpbmluZyBzZXQgb2YgcGFja2ZpbGUgYW5kIHBhY2staW5kZXggcGFpcnMiCiBtc2dzdHIgIuWMheWQq+aIkOWvueWMheaWh+S7tuWSjOWMhee0ouW8leeahOWvueixoeebruW9lSIKIAotIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MzkKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjI5Cittc2dpZCAiIgorImR1cmluZyByZXBhY2ssIGNvbGxlY3QgcGFjay1maWxlcyBvZiBzbWFsbGVyIHNpemUgaW50byBhIGJhdGNoIHRoYXQgaXMgIgorImxhcmdlciB0aGFuIHRoaXMgc2l6ZSIKK21zZ3N0ciAi5ZyoIHJlcGFjayDmnJ/pl7TvvIzlsIbovoPlsI/lsLrlr7jnmoTljIXmlofku7bmlLbpm4bliLDlpKfkuo7mraTlpKflsI/nmoTmibnmrKHkuK0iCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjUwIGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6NjcKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMiCiBtc2dzdHIgIuWkquWkmuWPguaVsCIKIAotIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NDgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5yZWNvZ25pemVkIHZlcmI6ICVzIgotbXNnc3RyICLmnKrog73or4bliKvnmoTliqjkvZzvvJolcyIKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjYwCittc2dpZCAiLS1iYXRjaC1zaXplIG9wdGlvbiBpcyBvbmx5IGZvciAncmVwYWNrJyBzdWJjb21tYW5kIgorbXNnc3RyICItLWJhdGNoLXNpemUg6YCJ6aG55LuF55So5LqOICdyZXBhY2snIOWtkOWRveS7pCIKIAotIzogYnVpbHRpbi9tdi5jOjE3CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgc3ViY29tbWFuZDogJXMiCittc2dzdHIgIuacquivhuWIq+eahOWtkOWRveS7pO+8miVzIgorCisjOiBidWlsdGluL212LmM6MTgKIG1zZ2lkICJnaXQgbXYgWzxvcHRpb25zPl0gPHNvdXJjZT4uLi4gPGRlc3RpbmF0aW9uPiIKIG1zZ3N0ciAiZ2l0IG12IFs86YCJ6aG5Pl0gPOa6kD4uLi4gPOebruaghz4iCiAKLSM6IGJ1aWx0aW4vbXYuYzo4MgorIzogYnVpbHRpbi9tdi5jOjgzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkRpcmVjdG9yeSAlcyBpcyBpbiBpbmRleCBhbmQgbm8gc3VibW9kdWxlPyIKIG1zZ3N0ciAi55uu5b2VICVzIOWcqOe0ouW8leS4reW5tuS4lOS4jeaYr+WtkOaooee7hO+8nyIKIAotIzogYnVpbHRpbi9tdi5jOjg0CisjOiBidWlsdGluL212LmM6ODUKIG1zZ2lkICJQbGVhc2Ugc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKIG1zZ3N0ciAi6K+35bCG5oKo55qE5L+u5pS55pqC5a2Y5YiwIC5naXRtb2R1bGVzIOS4reaIlui0ruiXj+WQjuWGjee7p+e7rSIKIAotIzogYnVpbHRpbi9tdi5jOjEwMgorIzogYnVpbHRpbi9tdi5jOjEwMwogIywgYy1mb3JtYXQKIG1zZ2lkICIlLipzIGlzIGluIGluZGV4IgogbXNnc3RyICIlLipzIOWcqOe0ouW8leS4rSIKIAotIzogYnVpbHRpbi9tdi5jOjEyNAorIzogYnVpbHRpbi9tdi5jOjEyNQogbXNnaWQgImZvcmNlIG1vdmUvcmVuYW1lIGV2ZW4gaWYgdGFyZ2V0IGV4aXN0cyIKIG1zZ3N0ciAi5by65Yi256e75YqoL+mHjeWRveS7pO+8jOWNs+S9v+ebruagh+WtmOWcqCIKIAotIzogYnVpbHRpbi9tdi5jOjEyNgorIzogYnVpbHRpbi9tdi5jOjEyNwogbXNnaWQgInNraXAgbW92ZS9yZW5hbWUgZXJyb3JzIgogbXNnc3RyICLot7Pov4fnp7vliqgv6YeN5ZG95ZCN6ZSZ6K+vIgogCi0jOiBidWlsdGluL212LmM6MTY4CisjOiBidWlsdGluL212LmM6MTY5CiAjLCBjLWZvcm1hdAogbXNnaWQgImRlc3RpbmF0aW9uICclcycgaXMgbm90IGEgZGlyZWN0b3J5IgogbXNnc3RyICLnm67moIcgJyVzJyDkuI3mmK/kuIDkuKrnm67lvZUiCiAKLSM6IGJ1aWx0aW4vbXYuYzoxNzkKKyM6IGJ1aWx0aW4vbXYuYzoxODAKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2hlY2tpbmcgcmVuYW1lIG9mICclcycgdG8gJyVzJ1xuIgogbXNnc3RyICLmo4Dmn6UgJyVzJyDliLAgJyVzJyDnmoTph43lkb3lkI1cbiIKIAotIzogYnVpbHRpbi9tdi5jOjE4MworIzogYnVpbHRpbi9tdi5jOjE4NAogbXNnaWQgImJhZCBzb3VyY2UiCiBtc2dzdHIgIuWdj+eahOa6kCIKIAotIzogYnVpbHRpbi9tdi5jOjE4NgorIzogYnVpbHRpbi9tdi5jOjE4NwogbXNnaWQgImNhbiBub3QgbW92ZSBkaXJlY3RvcnkgaW50byBpdHNlbGYiCiBtc2dzdHIgIuS4jeiDveWwhuebruW9leenu+WKqOWIsOiHqui6qyIKIAotIzogYnVpbHRpbi9tdi5jOjE4OQorIzogYnVpbHRpbi9tdi5jOjE5MAogbXNnaWQgImNhbm5vdCBtb3ZlIGRpcmVjdG9yeSBvdmVyIGZpbGUiCiBtc2dzdHIgIuS4jeiDveWwhuebruW9leenu+WKqOWIsOaWh+S7tiIKIAotIzogYnVpbHRpbi9tdi5jOjE5OAorIzogYnVpbHRpbi9tdi5jOjE5OQogbXNnaWQgInNvdXJjZSBkaXJlY3RvcnkgaXMgZW1wdHkiCiBtc2dzdHIgIua6kOebruW9leS4uuepuiIKIAotIzogYnVpbHRpbi9tdi5jOjIyMworIzogYnVpbHRpbi9tdi5jOjIyNAogbXNnaWQgIm5vdCB1bmRlciB2ZXJzaW9uIGNvbnRyb2wiCiBtc2dzdHIgIuS4jeWcqOeJiOacrOaOp+WItuS5i+S4iyIKIAotIzogYnVpbHRpbi9tdi5jOjIyNgorIzogYnVpbHRpbi9tdi5jOjIyNwogbXNnaWQgImRlc3RpbmF0aW9uIGV4aXN0cyIKIG1zZ3N0ciAi55uu5qCH5bey5a2Y5ZyoIgogCi0jOiBidWlsdGluL212LmM6MjM0CisjOiBidWlsdGluL212LmM6MjM1CiAjLCBjLWZvcm1hdAogbXNnaWQgIm92ZXJ3cml0aW5nICclcyciCiBtc2dzdHIgIuimhuebliAnJXMnIgogCi0jOiBidWlsdGluL212LmM6MjM3CisjOiBidWlsdGluL212LmM6MjM4CiBtc2dpZCAiQ2Fubm90IG92ZXJ3cml0ZSIKIG1zZ3N0ciAi5LiN6IO96KaG55uWIgogCi0jOiBidWlsdGluL212LmM6MjQwCisjOiBidWlsdGluL212LmM6MjQxCiBtc2dpZCAibXVsdGlwbGUgc291cmNlcyBmb3IgdGhlIHNhbWUgdGFyZ2V0IgogbXNnc3RyICLlkIzkuIDnm67moIflhbfmnInlpJrkuKrmupAiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNDIKKyM6IGJ1aWx0aW4vbXYuYzoyNDMKIG1zZ2lkICJkZXN0aW5hdGlvbiBkaXJlY3RvcnkgZG9lcyBub3QgZXhpc3QiCiBtc2dzdHIgIuebruagh+ebruW9leS4jeWtmOWcqCIKIAotIzogYnVpbHRpbi9tdi5jOjI0OQorIzogYnVpbHRpbi9tdi5jOjI1MAogIywgYy1mb3JtYXQKIG1zZ2lkICIlcywgc291cmNlPSVzLCBkZXN0aW5hdGlvbj0lcyIKIG1zZ3N0ciAiJXPvvIzmupA9JXPvvIznm67moIc9JXMiCiAKLSM6IGJ1aWx0aW4vbXYuYzoyNzAKKyM6IGJ1aWx0aW4vbXYuYzoyNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiUmVuYW1pbmcgJXMgdG8gJXNcbiIKIG1zZ3N0ciAi6YeN5ZG95ZCNICVzIOiHsyAlc1xuIgogCi0jOiBidWlsdGluL212LmM6Mjc2IGJ1aWx0aW4vcmVtb3RlLmM6NzE3IGJ1aWx0aW4vcmVwYWNrLmM6NTExCisjOiBidWlsdGluL212LmM6Mjc3IGJ1aWx0aW4vcmVtb3RlLmM6NzgxIGJ1aWx0aW4vcmVwYWNrLmM6NTE4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlbmFtaW5nICclcycgZmFpbGVkIgogbXNnc3RyICLph43lkb3lkI0gJyVzJyDlpLHotKUiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzozNTUKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0NjUKIG1zZ2lkICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gPGNvbW1pdD4uLi4iCiBtc2dzdHIgImdpdCBuYW1lLXJldiBbPOmAiemhuT5dIDzmj5DkuqQ+Li4uIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6MzU2CisjOiBidWlsdGluL25hbWUtcmV2LmM6NDY2CiBtc2dpZCAiZ2l0IG5hbWUtcmV2IFs8b3B0aW9ucz5dIC0tYWxsIgogbXNnc3RyICJnaXQgbmFtZS1yZXYgWzzpgInpobk+XSAtLWFsbCIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjM1NworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NwogbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLXN0ZGluIgogbXNnc3RyICJnaXQgbmFtZS1yZXYgWzzpgInpobk+XSAtLXN0ZGluIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDEzCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI0CiBtc2dpZCAicHJpbnQgb25seSBuYW1lcyAobm8gU0hBLTEpIgogbXNnc3RyICLlj6rmiZPljbDlkI3np7DvvIjml6AgU0hBLTHvvIkiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MTQKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjUKIG1zZ2lkICJvbmx5IHVzZSB0YWdzIHRvIG5hbWUgdGhlIGNvbW1pdHMiCiBtc2dzdHIgIuWPquS9v+eUqOagh+etvuadpeWRveWQjeaPkOS6pCIKIAotIzogYnVpbHRpbi9uYW1lLXJldi5jOjQxNgorIzogYnVpbHRpbi9uYW1lLXJldi5jOjUyNwogbXNnaWQgIm9ubHkgdXNlIHJlZnMgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICLlj6rkvb/nlKjlkowgPOaooeW8jz4g55u45Yy56YWN55qE5byV55SoIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDE4CisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI5CiBtc2dpZCAiaWdub3JlIHJlZnMgbWF0Y2hpbmcgPHBhdHRlcm4+IgogbXNnc3RyICLlv73nlaXlkowgPOaooeW8jz4g55u45Yy56YWN55qE5byV55SoIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIwCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMxCiBtc2dpZCAibGlzdCBhbGwgY29tbWl0cyByZWFjaGFibGUgZnJvbSBhbGwgcmVmcyIKIG1zZ3N0ciAi5YiX5Ye65Y+v5Lul5LuO5omA5pyJ5byV55So6K6/6Zeu55qE5o+Q5LqkIgogCi0jOiBidWlsdGluL25hbWUtcmV2LmM6NDIxCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMyCiBtc2dpZCAicmVhZCBmcm9tIHN0ZGluIgogbXNnc3RyICLku47moIflh4bovpPlhaXor7vlj5YiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjIKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzMKIG1zZ2lkICJhbGxvdyB0byBwcmludCBgdW5kZWZpbmVkYCBuYW1lcyAoZGVmYXVsdCkiCiBtc2dzdHIgIuWFgeiuuOaJk+WNsCBg5pyq5a6a5LmJYCDnmoTlkI3np7DvvIjpu5jorqTvvIkiCiAKLSM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0MjgKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MzkKIG1zZ2lkICJkZXJlZmVyZW5jZSB0YWdzIGluIHRoZSBpbnB1dCAoaW50ZXJuYWwgdXNlKSIKIG1zZ3N0ciAi5Y+N5ZCR6Kej5p6Q6L6T5YWl5Lit55qE5qCH562+77yI5YaF6YOo5L2/55So77yJIgogCkBAIC0xMzUxMCwxNCArMTY1ODYsMTQgQEAKIG1zZ2lkICJ0aGUgbm90ZSBjb250ZW50cyBoYXZlIGJlZW4gbGVmdCBpbiAlcyIKIG1zZ3N0ciAi5rOo6Kej5YaF5a656KKr55WZ5ZyoICVzIOS4rSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjI0MiBidWlsdGluL3RhZy5jOjUxMworIzogYnVpbHRpbi9ub3Rlcy5jOjI0MiBidWlsdGluL3RhZy5jOjUzMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBvciByZWFkICclcyciCiBtc2dzdHIgIuS4jeiDveaJk+W8gOaIluivu+WPliAnJXMnIgogCiAjOiBidWlsdGluL25vdGVzLmM6MjYzIGJ1aWx0aW4vbm90ZXMuYzozMTMgYnVpbHRpbi9ub3Rlcy5jOjMxNQotIzogYnVpbHRpbi9ub3Rlcy5jOjM4MyBidWlsdGluL25vdGVzLmM6NDM4IGJ1aWx0aW4vbm90ZXMuYzo1MjQKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MjkgYnVpbHRpbi9ub3Rlcy5jOjYwNyBidWlsdGluL25vdGVzLmM6NjY5CisjOiBidWlsdGluL25vdGVzLmM6MzgzIGJ1aWx0aW4vbm90ZXMuYzo0MzggYnVpbHRpbi9ub3Rlcy5jOjUyNgorIzogYnVpbHRpbi9ub3Rlcy5jOjUzMSBidWlsdGluL25vdGVzLmM6NjEwIGJ1aWx0aW4vbm90ZXMuYzo2NzIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZi4iCiBtc2dzdHIgIuaXoOazleino+aekCAnJXMnIOS4uuS4gOS4quacieaViOW8leeUqOOAgiIKQEAgLTEzNTUwLDM4ICsxNjYyNiwzOCBAQAogbXNnaWQgInJlZnVzaW5nIHRvICVzIG5vdGVzIGluICVzIChvdXRzaWRlIG9mIHJlZnMvbm90ZXMvKSIKIG1zZ3N0ciAi5ouS57ud5ZCRICUyJHPvvIjlnKggcmVmcy9ub3Rlcy8g5LmL5aSW77yJJTEkc+azqOinoyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjM3NiBidWlsdGluL25vdGVzLmM6NDMxIGJ1aWx0aW4vbm90ZXMuYzo1MDcKLSM6IGJ1aWx0aW4vbm90ZXMuYzo1MTkgYnVpbHRpbi9ub3Rlcy5jOjU5NSBidWlsdGluL25vdGVzLmM6NjYyCi0jOiBidWlsdGluL25vdGVzLmM6ODEyIGJ1aWx0aW4vbm90ZXMuYzo5NTkgYnVpbHRpbi9ub3Rlcy5jOjk4MAorIzogYnVpbHRpbi9ub3Rlcy5jOjM3NiBidWlsdGluL25vdGVzLmM6NDMxIGJ1aWx0aW4vbm90ZXMuYzo1MDkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MjEgYnVpbHRpbi9ub3Rlcy5jOjU5OCBidWlsdGluL25vdGVzLmM6NjY1CisjOiBidWlsdGluL25vdGVzLmM6ODE1IGJ1aWx0aW4vbm90ZXMuYzo5NjMgYnVpbHRpbi9ub3Rlcy5jOjk4NQogbXNnaWQgInRvbyBtYW55IHBhcmFtZXRlcnMiCiBtc2dzdHIgIuWPguaVsOWkquWkmiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjM4OSBidWlsdGluL25vdGVzLmM6Njc1CisjOiBidWlsdGluL25vdGVzLmM6Mzg5IGJ1aWx0aW4vbm90ZXMuYzo2NzgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gbm90ZSBmb3VuZCBmb3Igb2JqZWN0ICVzLiIKIG1zZ3N0ciAi5pyq5Y+R546w5a+56LGhICVzIOeahOazqOino+OAgiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxMCBidWlsdGluL25vdGVzLmM6NTczCisjOiBidWlsdGluL25vdGVzLmM6NDEwIGJ1aWx0aW4vbm90ZXMuYzo1NzYKIG1zZ2lkICJub3RlIGNvbnRlbnRzIGFzIGEgc3RyaW5nIgogbXNnc3RyICLms6jop6PlhoXlrrnkvZzkuLrkuIDkuKrlrZfnrKbkuLIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0MTMgYnVpbHRpbi9ub3Rlcy5jOjU3NgorIzogYnVpbHRpbi9ub3Rlcy5jOjQxMyBidWlsdGluL25vdGVzLmM6NTc5CiBtc2dpZCAibm90ZSBjb250ZW50cyBpbiBhIGZpbGUiCiBtc2dzdHIgIuazqOino+WGheWuueWIsOS4gOS4quaWh+S7tuS4rSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxNiBidWlsdGluL25vdGVzLmM6NTc5CisjOiBidWlsdGluL25vdGVzLmM6NDE2IGJ1aWx0aW4vbm90ZXMuYzo1ODIKIG1zZ2lkICJyZXVzZSBhbmQgZWRpdCBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCiBtc2dzdHIgIumHjeeUqOWSjOe8lui+keaMh+WumueahOazqOino+WvueixoSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQxOSBidWlsdGluL25vdGVzLmM6NTgyCisjOiBidWlsdGluL25vdGVzLmM6NDE5IGJ1aWx0aW4vbm90ZXMuYzo1ODUKIG1zZ2lkICJyZXVzZSBzcGVjaWZpZWQgbm90ZSBvYmplY3QiCiBtc2dzdHIgIumHjeeUqOaMh+WumueahOazqOino+WvueixoSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQyMiBidWlsdGluL25vdGVzLmM6NTg1CisjOiBidWlsdGluL25vdGVzLmM6NDIyIGJ1aWx0aW4vbm90ZXMuYzo1ODgKIG1zZ2lkICJhbGxvdyBzdG9yaW5nIGVtcHR5IG5vdGUiCiBtc2dzdHIgIuWFgeiuuOS/neWtmOepuueZveazqOmHiiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQyMyBidWlsdGluL25vdGVzLmM6NDk0CisjOiBidWlsdGluL25vdGVzLmM6NDIzIGJ1aWx0aW4vbm90ZXMuYzo0OTYKIG1zZ2lkICJyZXBsYWNlIGV4aXN0aW5nIG5vdGVzIgogbXNnc3RyICLmm7/mjaLlt7LlrZjlnKjnmoTms6jop6MiCiAKQEAgLTEzNTkyLDQxICsxNjY2OCw0MSBAQAogImV4aXN0aW5nIG5vdGVzIgogbXNnc3RyICLkuI3og73mt7vliqDms6jop6PjgILlj5HnjrDlr7nosaEgJXMg5bey5a2Y5Zyo5rOo6Kej44CC5L2/55SoICctZicg6KaG55uW546w5a2Y5rOo6KejIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDYzIGJ1aWx0aW4vbm90ZXMuYzo1NDIKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NjMgYnVpbHRpbi9ub3Rlcy5jOjU0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJPdmVyd3JpdGluZyBleGlzdGluZyBub3RlcyBmb3Igb2JqZWN0ICVzXG4iCiBtc2dzdHIgIuimhuebluWvueixoSAlcyDnjrDlrZjms6jop6NcbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjQ3NCBidWlsdGluL25vdGVzLmM6NjM0IGJ1aWx0aW4vbm90ZXMuYzo4OTkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NzUgYnVpbHRpbi9ub3Rlcy5jOjYzNyBidWlsdGluL25vdGVzLmM6OTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgIlJlbW92aW5nIG5vdGUgZm9yIG9iamVjdCAlc1xuIgogbXNnc3RyICLliKDpmaTlr7nosaEgJXMg55qE5rOo6KejXG4iCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo0OTUKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTcKIG1zZ2lkICJyZWFkIG9iamVjdHMgZnJvbSBzdGRpbiIKIG1zZ3N0ciAi5LuO5qCH5YeG6L6T5YWl6K+75Y+W5a+56LGhIgogCi0jOiBidWlsdGluL25vdGVzLmM6NDk3CisjOiBidWlsdGluL25vdGVzLmM6NDk5CiBtc2dpZCAibG9hZCByZXdyaXRpbmcgY29uZmlnIGZvciA8Y29tbWFuZD4gKGltcGxpZXMgLS1zdGRpbikiCiBtc2dzdHIgIumHjeaWsOWKoOi9vSA85ZG95LukPiDnmoTphY3nva7vvIjpmpDlkKsgLS1zdGRpbu+8iSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjUxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjUxNwogbXNnaWQgInRvbyBmZXcgcGFyYW1ldGVycyIKIG1zZ3N0ciAi5Y+C5pWw5aSq5bCRIgogCi0jOiBidWlsdGluL25vdGVzLmM6NTM2CisjOiBidWlsdGluL25vdGVzLmM6NTM4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJDYW5ub3QgY29weSBub3Rlcy4gRm91bmQgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlcy4gVXNlICctZicgdG8gb3ZlcndyaXRlICIKICJleGlzdGluZyBub3RlcyIKIG1zZ3N0ciAi5LiN6IO95ou36LSd5rOo6Kej44CC5Y+R546w5a+56LGhICVzIOW3suWtmOWcqOazqOino+OAguS9v+eUqCAnLWYnIOimhueblueOsOWtmOazqOinoyIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjU0OAorIzogYnVpbHRpbi9ub3Rlcy5jOjU1MAogIywgYy1mb3JtYXQKIG1zZ2lkICJtaXNzaW5nIG5vdGVzIG9uIHNvdXJjZSBvYmplY3QgJXMuIENhbm5vdCBjb3B5LiIKIG1zZ3N0ciAi5rqQ5a+56LGhICVzIOe8uuWwkeazqOino+OAguS4jeiDveaLt+i0neOAgiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjYwMAorIzogYnVpbHRpbi9ub3Rlcy5jOjYwMwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiVGhlIC1tLy1GLy1jLy1DIG9wdGlvbnMgaGF2ZSBiZWVuIGRlcHJlY2F0ZWQgZm9yIHRoZSAnZWRpdCcgc3ViY29tbWFuZC5cbiIKQEAgLTEzNjM1LDk3ICsxNjcxMSw5NyBAQAogIuWtkOWRveS7pCAnZWRpdCcg55qE6YCJ6aG5IC1tLy1GLy1jLy1DIOW3suW8g+eUqOOAglxuIgogIuivt+aNoueUqCAnZ2l0IG5vdGVzIGFkZCAtZiAtbS8tRi8tYy8tQyfjgIJcbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjY5NQorIzogYnVpbHRpbi9ub3Rlcy5jOjY5OAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgcmVmIE5PVEVTX01FUkdFX1BBUlRJQUwiCiBtc2dzdHIgIuWIoOmZpOW8leeUqCBOT1RFU19NRVJHRV9QQVJUSUFMIOWksei0pSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjY5NworIzogYnVpbHRpbi9ub3Rlcy5jOjcwMAogbXNnaWQgImZhaWxlZCB0byBkZWxldGUgcmVmIE5PVEVTX01FUkdFX1JFRiIKIG1zZ3N0ciAi5Yig6Zmk5byV55SoIE5PVEVTX01FUkdFX1JFRiDlpLHotKUiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo2OTkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MDIKIG1zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlICdnaXQgbm90ZXMgbWVyZ2UnIHdvcmt0cmVlIgogbXNnc3RyICLliKDpmaQgJ2dpdCBub3RlcyBtZXJnZScg5bel5L2c5Yy65aSx6LSlIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzE5CisjOiBidWlsdGluL25vdGVzLmM6NzIyCiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgcmVmIE5PVEVTX01FUkdFX1BBUlRJQUwiCiBtc2dzdHIgIuivu+WPluW8leeUqCBOT1RFU19NRVJHRV9QQVJUSUFMIOWksei0pSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjcyMQorIzogYnVpbHRpbi9ub3Rlcy5jOjcyNAogbXNnaWQgImNvdWxkIG5vdCBmaW5kIGNvbW1pdCBmcm9tIE5PVEVTX01FUkdFX1BBUlRJQUwuIgogbXNnc3RyICLml6Dms5Xku44gTk9URVNfTUVSR0VfUEFSVElBTCDkuK3mib7liLDmj5DkuqTjgIIiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjYKIG1zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0IGZyb20gTk9URVNfTUVSR0VfUEFSVElBTC4iCiBtc2dzdHIgIuaXoOazleS7jiBOT1RFU19NRVJHRV9QQVJUSUFMIOS4reino+aekOaPkOS6pOOAgiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjczNgorIzogYnVpbHRpbi9ub3Rlcy5jOjczOQogbXNnaWQgImZhaWxlZCB0byByZXNvbHZlIE5PVEVTX01FUkdFX1JFRiIKIG1zZ3N0ciAi6Kej5p6QIE5PVEVTX01FUkdFX1JFRiDlpLHotKUiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3MzkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NDIKIG1zZ2lkICJmYWlsZWQgdG8gZmluYWxpemUgbm90ZXMgbWVyZ2UiCiBtc2dzdHIgIuaXoOazleWujOaIkOazqOino+WQiOW5tiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc2NQorIzogYnVpbHRpbi9ub3Rlcy5jOjc2OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmtub3duIG5vdGVzIG1lcmdlIHN0cmF0ZWd5ICVzIgogbXNnc3RyICLmnKrnn6XnmoTms6jop6PlkIjlubbnrZbnlaUgJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo3ODEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3ODQKIG1zZ2lkICJHZW5lcmFsIG9wdGlvbnMiCiBtc2dzdHIgIumAmueUqOmAiemhuSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4MworIzogYnVpbHRpbi9ub3Rlcy5jOjc4NgogbXNnaWQgIk1lcmdlIG9wdGlvbnMiCiBtc2dzdHIgIuWQiOW5tumAiemhuSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjc4NQorIzogYnVpbHRpbi9ub3Rlcy5jOjc4OAogbXNnaWQgIiIKICJyZXNvbHZlIG5vdGVzIGNvbmZsaWN0cyB1c2luZyB0aGUgZ2l2ZW4gc3RyYXRlZ3kgKG1hbnVhbC9vdXJzL3RoZWlycy91bmlvbi8iCiAiY2F0X3NvcnRfdW5pcSkiCiBtc2dzdHIgIuS9v+eUqOaMh+WumueahOetlueVpeino+WGs+azqOino+WGsueqgSAobWFudWFsL291cnMvdGhlaXJzL3VuaW9uL2NhdF9zb3J0X3VuaXEpIgogCi0jOiBidWlsdGluL25vdGVzLmM6Nzg3CisjOiBidWlsdGluL25vdGVzLmM6NzkwCiBtc2dpZCAiQ29tbWl0dGluZyB1bm1lcmdlZCBub3RlcyIKIG1zZ3N0ciAi5o+Q5Lqk5pyq5ZCI5bm255qE5rOo6KejIgogCi0jOiBidWlsdGluL25vdGVzLmM6Nzg5CisjOiBidWlsdGluL25vdGVzLmM6NzkyCiBtc2dpZCAiZmluYWxpemUgbm90ZXMgbWVyZ2UgYnkgY29tbWl0dGluZyB1bm1lcmdlZCBub3RlcyIKIG1zZ3N0ciAi6YCa6L+H5o+Q5Lqk5pyq5ZCI5bm255qE5rOo6Kej5p2l5a6M5oiQ5rOo6Kej5ZCI5bm2IgogCi0jOiBidWlsdGluL25vdGVzLmM6NzkxCisjOiBidWlsdGluL25vdGVzLmM6Nzk0CiBtc2dpZCAiQWJvcnRpbmcgbm90ZXMgbWVyZ2UgcmVzb2x1dGlvbiIKIG1zZ3N0ciAi5Lit5q2i5rOo6Kej5ZCI5bm255qE5pa55qGIIgogCi0jOiBidWlsdGluL25vdGVzLmM6NzkzCisjOiBidWlsdGluL25vdGVzLmM6Nzk2CiBtc2dpZCAiYWJvcnQgbm90ZXMgbWVyZ2UiCiBtc2dzdHIgIuS4reatouazqOino+WQiOW5tiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjgwNAorIzogYnVpbHRpbi9ub3Rlcy5jOjgwNwogbXNnaWQgImNhbm5vdCBtaXggLS1jb21taXQsIC0tYWJvcnQgb3IgLXMvLS1zdHJhdGVneSIKIG1zZ3N0ciAi5LiN6IO95re355SoIC0tY29tbWl044CBLS1hYm9ydCDmiJYgLXMvLS1zdHJhdGVneSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjgwOQorIzogYnVpbHRpbi9ub3Rlcy5jOjgxMgogbXNnaWQgIm11c3Qgc3BlY2lmeSBhIG5vdGVzIHJlZiB0byBtZXJnZSIKIG1zZ3N0ciAi5b+F6aG75oyH5a6a5LiA5Liq5rOo6Kej5byV55So5p2l5ZCI5bm2IgogCi0jOiBidWlsdGluL25vdGVzLmM6ODMzCisjOiBidWlsdGluL25vdGVzLmM6ODM2CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gLXMvLS1zdHJhdGVneTogJXMiCiBtc2dzdHIgIuacquefpeeahCAtcy8tLXN0cmF0ZWd577yaJXMiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo4NzAKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4NzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiYSBub3RlcyBtZXJnZSBpbnRvICVzIGlzIGFscmVhZHkgaW4tcHJvZ3Jlc3MgYXQgJXMiCiBtc2dzdHIgIuS9jeS6jiAlMiRzIOeahOS4gOS4quWIsCAlMSRzIOS4reeahOazqOino+WQiOW5tuato+WcqOaJp+ihjOS4rSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg3MworIzogYnVpbHRpbi9ub3Rlcy5jOjg3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RvcmUgbGluayB0byBjdXJyZW50IG5vdGVzIHJlZiAoJXMpIgogbXNnc3RyICLml6Dms5XlrZjlgqjpk77mjqXliLDlvZPliY3nmoTms6jop6PlvJXnlKjvvIglc++8iSIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjg3NQorIzogYnVpbHRpbi9ub3Rlcy5jOjg3OAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQXV0b21hdGljIG5vdGVzIG1lcmdlIGZhaWxlZC4gRml4IGNvbmZsaWN0cyBpbiAlcyBhbmQgY29tbWl0IHRoZSByZXN1bHQgd2l0aCAiCkBAIC0xMzczNSwxNjkgKzE2ODExLDE1MCBAQAogIuiHquWKqOWQiOW5tuivtOaYjuWksei0peOAguS/ruaUuSAlcyDkuK3nmoTlhrLnqoHlubbkuJTkvb/nlKjlkb3ku6QgJ2dpdCBub3RlcyBtZXJnZSAtLWNvbW1pdCcg5o+QIgogIuS6pOe7k+aenO+8jOaIluiAheS9v+eUqOWRveS7pCAnZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQnIOe7iOatouWQiOW5tuOAglxuIgogCi0jOiBidWlsdGluL25vdGVzLmM6ODk3CisjOiBidWlsdGluL25vdGVzLmM6ODk3IGJ1aWx0aW4vdGFnLmM6NTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYuIgorbXNnc3RyICLml6Dms5Xop6PmnpAgJyVzJyDkuLrkuIDkuKrmnInmlYjlvJXnlKjjgIIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiT2JqZWN0ICVzIGhhcyBubyBub3RlXG4iCiBtc2dzdHIgIuWvueixoSAlcyDmsqHmnInms6jop6NcbiIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjkwOQorIzogYnVpbHRpbi9ub3Rlcy5jOjkxMgogbXNnaWQgImF0dGVtcHQgdG8gcmVtb3ZlIG5vbi1leGlzdGVudCBub3RlIGlzIG5vdCBhbiBlcnJvciIKIG1zZ3N0ciAi5bCd6K+V5Yig6Zmk5LiN5a2Y5Zyo55qE5rOo6Kej5LiN5piv5LiA5Liq6ZSZ6K+vIgogCi0jOiBidWlsdGluL25vdGVzLmM6OTEyCisjOiBidWlsdGluL25vdGVzLmM6OTE1CiBtc2dpZCAicmVhZCBvYmplY3QgbmFtZXMgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQiCiBtc2dzdHIgIuS7juagh+WHhui+k+WFpeivu+WPluWvueixoeWQjeensCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk1MCBidWlsdGluL3BydW5lLmM6MTA4IGJ1aWx0aW4vd29ya3RyZWUuYzoxNjQKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NTQgYnVpbHRpbi9wcnVuZS5jOjEzMCBidWlsdGluL3dvcmt0cmVlLmM6MTY0CiBtc2dpZCAiZG8gbm90IHJlbW92ZSwgc2hvdyBvbmx5IgogbXNnc3RyICLkuI3liKDpmaTvvIzlj6rmmL7npLoiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5NTEKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NTUKIG1zZ2lkICJyZXBvcnQgcHJ1bmVkIG5vdGVzIgogbXNnc3RyICLmiqXlkYrmuIXpmaTnmoTms6jop6MiCiAKLSM6IGJ1aWx0aW4vbm90ZXMuYzo5OTMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5OTgKIG1zZ2lkICJub3Rlcy1yZWYiCiBtc2dzdHIgIuazqOino+W8leeUqCIKIAotIzogYnVpbHRpbi9ub3Rlcy5jOjk5NAorIzogYnVpbHRpbi9ub3Rlcy5jOjk5OQogbXNnaWQgInVzZSBub3RlcyBmcm9tIDxub3Rlcy1yZWY+IgogbXNnc3RyICLku44gPOazqOino+W8leeUqD4g5L2/55So5rOo6KejIgogCi0jOiBidWlsdGluL25vdGVzLmM6MTAyOQorIzogYnVpbHRpbi9ub3Rlcy5jOjEwMzQgYnVpbHRpbi9zdGFzaC5jOjE2NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5rbm93biBzdWJjb21tYW5kOiAlcyIKIG1zZ3N0ciAi5pyq55+l5a2Q5ZG95Luk77yaJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTIKIG1zZ2lkICIiCiAiZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCBbPG9wdGlvbnM+Li4uXSBbPCA8cmVmLWxpc3Q+IHwgPCA8b2JqZWN0LWxpc3Q+XSIKIG1zZ3N0ciAiZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCBbPOmAiemhuT4uLi5dIFs8IDzlvJXnlKjliJfooag+IHwgPCA85a+56LGh5YiX6KGoPl0iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NTMKIG1zZ2lkICIiCiAiZ2l0IHBhY2stb2JqZWN0cyBbPG9wdGlvbnM+Li4uXSA8YmFzZS1uYW1lPiBbPCA8cmVmLWxpc3Q+IHwgPCA8b2JqZWN0LWxpc3Q+XSIKIG1zZ3N0ciAiZ2l0IHBhY2stb2JqZWN0cyBbPOmAiemhuT4uLi5dIDzliY3nvIDlkI3np7A+IFs8IDzlvJXnlKjliJfooag+IHwgPCA85a+56LGh5YiX6KGoPl0iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NDIyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQzMAogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcGFja2VkIG9iamVjdCBDUkMgZm9yICVzIgogbXNnc3RyICIlcyDplJnnmoTljIXlr7nosaEgQ1JDIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjQzMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0NDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiY29ycnVwdCBwYWNrZWQgb2JqZWN0IGZvciAlcyIKIG1zZ3N0ciAiJXMg5o2f5Z2P55qE5YyF5a+56LGhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjU2NAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1NzIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVjdXJzaXZlIGRlbHRhIGRldGVjdGVkIGZvciBvYmplY3QgJXMiCiBtc2dzdHIgIuWPkeeOsOWvueixoSAlcyDpgJLlvZIgZGVsdGEiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Nzc1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc4MwogIywgYy1mb3JtYXQKIG1zZ2lkICJvcmRlcmVkICV1IG9iamVjdHMsIGV4cGVjdGVkICU8UFJJdTMyPiIKIG1zZ3N0ciAi5o6S5bqP5LqGICV1IOS4quWvueixoe+8jOmihOacnyAlPFBSSXUzMj4g5LiqIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc4OAotIywgYy1mb3JtYXQKLW1zZ2lkICJwYWNrZmlsZSBpcyBpbnZhbGlkOiAlcyIKLW1zZ3N0ciAi5peg5pWI55qE5YyF5paH5Lu277yaJXMiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NzkyCi0jLCBjLWZvcm1hdAotbXNnaWQgInVuYWJsZSB0byBvcGVuIHBhY2tmaWxlIGZvciByZXVzZTogJXMiCi1tc2dzdHIgIuaXoOazleS4uumHjeeUqOaJk+W8gOWMheaWh+S7tu+8miVzIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjc5NgotbXNnaWQgInVuYWJsZSB0byBzZWVrIGluIHJldXNlZCBwYWNrZmlsZSIKLW1zZ3N0ciAi5peg5rOV5Zyo6YeN55So55qE5YyF5paH5Lu25Lit5p+l5om+IgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjgwNwotbXNnaWQgInVuYWJsZSB0byByZWFkIGZyb20gcmV1c2VkIHBhY2tmaWxlIgotbXNnc3RyICLml6Dms5Xor7vlj5bntKLlvJXmlofku7YiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODM1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk3MgogbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgcGFja3MgYXJlIHNwbGl0IGR1ZSB0byBwYWNrLnBhY2tTaXplTGltaXQiCiBtc2dzdHIgIuemgeeUqCBiaXRtYXAg5YaZ5YWl77yM5Zug5Li6IHBhY2sucGFja1NpemVMaW1pdCDorr7nva7kvb/lvpfljIXooqvliIfliIbkuLrlpJrkuKoiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6ODQ4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk4NQogbXNnaWQgIldyaXRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi5YaZ5YWl5a+56LGh5LitIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjkxMCBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjg4CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjEwNDYgYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gc3RhdCAlcyIKIG1zZ3N0ciAi5a+5ICVzIOiwg+eUqCBzdGF0IOWksei0pSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5NjMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTA5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ3cm90ZSAlPFBSSXUzMj4gb2JqZWN0cyB3aGlsZSBleHBlY3RpbmcgJTxQUkl1MzI+IgogbXNnc3RyICLlhpnlhaUgJTxQUkl1MzI+IOS4quWvueixoeiAjOmihOacnyAlPFBSSXUzMj4g5LiqIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjExNTcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTI5NwogbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgYXMgc29tZSBvYmplY3RzIGFyZSBub3QgYmVpbmcgcGFja2VkIgogbXNnc3RyICLnpoHnlKggYml0bWFwIOWGmeWFpe+8jOWboOS4uuS4gOS6m+WvueixoeWwhuS4jeS8muiiq+aJk+WMhSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTg1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE3MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgb3ZlcmZsb3cgaW4gcGFjayBmb3IgJXMiCiBtc2dzdHIgIiVzIOWOi+e8qeS4rSBkZWx0YSDln7rlh4blgY/np7votornlYwiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTU5NAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNzMzCiAjLCBjLWZvcm1hdAogbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IG91dCBvZiBib3VuZCBmb3IgJXMiCiBtc2dzdHIgIiVzIOeahCBkZWx0YSDln7rlh4blgY/np7votornlYwiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTg2MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDA0CiBtc2dpZCAiQ291bnRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi5a+56LGh6K6h5pWw5LitIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE5OTgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAidW5hYmxlIHRvIGdldCBzaXplIG9mICVzIgotbXNnc3RyICLkuI3og73lvpfliLAgJXMg55qE5aSn5bCPIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwMTMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjE0OQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFyc2Ugb2JqZWN0IGhlYWRlciBvZiAlcyIKIG1zZ3N0ciAi5peg5rOV6Kej5p6Q5a+56LGhICVzIOWktOS/oeaBryIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDgzIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjA5OQotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTA5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyMTkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjM1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNDUKICMsIGMtZm9ybWF0CiBtc2dpZCAib2JqZWN0ICVzIGNhbm5vdCBiZSByZWFkIgogbXNnc3RyICLlr7nosaEgJXMg5peg5rOV6K+75Y+WIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIwODYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTEzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyMjIgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMjQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIm9iamVjdCAlcyBpbmNvbnNpc3RlbnQgb2JqZWN0IGxlbmd0aCAoJTxQUkl1TUFYPiB2cyAlPFBSSXVNQVg+KSIKIG1zZ3N0ciAi5a+56LGhICVzIOS4jeS4gOiHtOeahOWvueixoemVv+W6pu+8iCU8UFJJdU1BWD4gdnMgJTxQUkl1TUFYPu+8iSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMTIzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNTkKIG1zZ2lkICJzdWJvcHRpbWFsIHBhY2sgLSBvdXQgb2YgbWVtb3J5IgogbXNnc3RyICLmrKHkvJjvvIhzdWJvcHRpbWFs77yJ5omT5YyFIC0g5YaF5a2Y5LiN6LazIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI0NTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjU3NAogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWx0YSBjb21wcmVzc2lvbiB1c2luZyB1cCB0byAlZCB0aHJlYWRzIgogbXNnc3RyICLkvb/nlKggJWQg5Liq57q/56iL6L+b6KGM5Y6L57ypIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI1ODMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjcxMwogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcGFjayBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHRhZyAlcyIKIG1zZ3N0ciAi5peg5rOV5Li65qCH562+ICVzIOWOi+e8qeWvueixoSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNjcwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4MDEKIG1zZ2lkICJDb21wcmVzc2luZyBvYmplY3RzIgogbXNnc3RyICLljovnvKnlr7nosaHkuK0iCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjY3NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODA3CiBtc2dpZCAiaW5jb25zaXN0ZW5jeSB3aXRoIGRlbHRhIGNvdW50IgogbXNnc3RyICLkuI3kuIDoh7TnmoTlt67lvILorqHmlbAiCiAKLSMKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6Mjc1MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODg4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJleHBlY3RlZCBlZGdlIG9iamVjdCBJRCwgZ290IGdhcmJhZ2U6XG4iCkBAIC0xMzkwNiw3ICsxNjk2Myw3IEBACiAi6aKE5pyf6L6555WM5a+56LGh77yIZWRnZSBvYmplY3TvvIlJRO+8jOWNtOW+l+WIsOWeg+WcvuaVsOaNru+8mlxuIgogIiAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzU5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4OTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImV4cGVjdGVkIG9iamVjdCBJRCwgZ290IGdhcmJhZ2U6XG4iCkBAIC0xMzkxNSwyNDcgKzE2OTcyLDI0MyBAQAogIumihOacn+WvueixoSBJRO+8jOWNtOW+l+WIsOWeg+WcvuaVsOaNru+8mlxuIgogIiAlcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODU3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5OTIKIG1zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciAtLW1pc3NpbmciCiBtc2dzdHIgIumAiemhuSAtLW1pc3Npbmcg55qE5YC85peg5pWIIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5MTYgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMDI0CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwNTEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTU5CiBtc2dpZCAiY2Fubm90IG9wZW4gcGFjayBpbmRleCIKIG1zZ3N0ciAi5peg5rOV5omT5byA5YyF5paH5Lu257Si5byVIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5NDcKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzA4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJsb29zZSBvYmplY3QgYXQgJXMgY291bGQgbm90IGJlIGV4YW1pbmVkIgogbXNnc3RyICLml6Dms5Xmo4Dmn6UgJXMg5aSE55qE5p2+5pWj5a+56LGhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwMzIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE2NwogbXNnaWQgInVuYWJsZSB0byBmb3JjZSBsb29zZSBvYmplY3QiCiBtc2dzdHIgIuaXoOazleW8uuWItuadvuaVo+WvueixoSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTIyCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm90IGEgcmV2ICclcyciCiBtc2dzdHIgIuS4jeaYr+S4gOS4queJiOacrCAnJXMnIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMxMjUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2MwogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgcmV2aXNpb24gJyVzJyIKIG1zZ3N0ciAi5Z2P55qE54mI5pysICclcyciCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzE1MAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg4CiBtc2dpZCAidW5hYmxlIHRvIGFkZCByZWNlbnQgb2JqZWN0cyIKIG1zZ3N0ciAi5peg5rOV5re75Yqg5pyA6L+R55qE5a+56LGhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMDMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bnN1cHBvcnRlZCBpbmRleCB2ZXJzaW9uICVzIgogbXNnc3RyICLkuI3mlK/mjIHnmoTntKLlvJXniYjmnKwgJXMiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzIwNworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQ1CiAjLCBjLWZvcm1hdAogbXNnaWQgImJhZCBpbmRleCB2ZXJzaW9uICclcyciCiBtc2dzdHIgIuWdj+eahOe0ouW8leeJiOacrCAnJXMnIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMzcKLW1zZ2lkICJkbyBub3Qgc2hvdyBwcm9ncmVzcyBtZXRlciIKLW1zZ3N0ciAi5LiN5pi+56S66L+b5bqm6KGoIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyMzkKLW1zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIgotbXNnc3RyICLmmL7npLrov5vluqbooagiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0MQotbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIgZHVyaW5nIG9iamVjdCB3cml0aW5nIHBoYXNlIgotbXNnc3RyICLlnKjlr7nosaHlhpnlhaXpmLbmrrXmmL7npLrov5vluqbooagiCi0KLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI0NAotbXNnaWQgInNpbWlsYXIgdG8gLS1hbGwtcHJvZ3Jlc3Mgd2hlbiBwcm9ncmVzcyBtZXRlciBpcyBzaG93biIKLW1zZ3N0ciAi5b2T6L+b5bqm6KGo5pi+56S65pe257G75Ly85LqOIC0tYWxsLXByb2dyZXNzIgotCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4MwogbXNnaWQgIjx2ZXJzaW9uPlssPG9mZnNldD5dIgogbXNnc3RyICI854mI5pysPlssPOWBj+enuz5dIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4NAogbXNnaWQgIndyaXRlIHRoZSBwYWNrIGluZGV4IGZpbGUgaW4gdGhlIHNwZWNpZmllZCBpZHggZm9ybWF0IHZlcnNpb24iCiBtc2dzdHIgIueUqOaMh+WumueahCBpZHgg5qC85byP54mI5pys5p2l5YaZ5YyF57Si5byV5paH5Lu2IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNDkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4NwogbXNnaWQgIm1heGltdW0gc2l6ZSBvZiBlYWNoIG91dHB1dCBwYWNrIGZpbGUiCiBtc2dzdHIgIuavj+S4qui+k+WHuuWMheeahOacgOWkp+WwuuWvuCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjUxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODkKIG1zZ2lkICJpZ25vcmUgYm9ycm93ZWQgb2JqZWN0cyBmcm9tIGFsdGVybmF0ZSBvYmplY3Qgc3RvcmUiCiBtc2dzdHIgIuW/veeVpeS7juWkh+eUqOWvueixoeWtmOWCqOmHjOWAn+eUqOWvueixoSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjUzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTEKIG1zZ2lkICJpZ25vcmUgcGFja2VkIG9iamVjdHMiCiBtc2dzdHIgIuW/veeVpeWMheWvueixoSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjU1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTMKIG1zZ2lkICJsaW1pdCBwYWNrIHdpbmRvdyBieSBvYmplY3RzIgogbXNnc3RyICLpmZDliLbmiZPljIXnqpflj6PnmoTlr7nosaHmlbAiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI1NworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzk1CiBtc2dpZCAibGltaXQgcGFjayB3aW5kb3cgYnkgbWVtb3J5IGluIGFkZGl0aW9uIHRvIG9iamVjdCBsaW1pdCIKIG1zZ3N0ciAi6Zmk5a+56LGh5pWw6YeP6ZmQ5Yi25aSW6K6+572u5omT5YyF56qX5Y+j55qE5YaF5a2Y6ZmQ5Yi2IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNTkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NwogbXNnaWQgIm1heGltdW0gbGVuZ3RoIG9mIGRlbHRhIGNoYWluIGFsbG93ZWQgaW4gdGhlIHJlc3VsdGluZyBwYWNrIgogbXNnc3RyICLmiZPljIXlhYHorrjnmoQgZGVsdGEg6ZO+55qE5pyA5aSn6ZW/5bqmIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5OQogbXNnaWQgInJldXNlIGV4aXN0aW5nIGRlbHRhcyIKIG1zZ3N0ciAi6YeN55So5bey5a2Y5Zyo55qEIGRlbHRhcyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjYzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDEKIG1zZ2lkICJyZXVzZSBleGlzdGluZyBvYmplY3RzIgogbXNnc3RyICLph43nlKjlt7LlrZjlnKjnmoTlr7nosaEiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI2NQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAzCiBtc2dpZCAidXNlIE9GU19ERUxUQSBvYmplY3RzIgogbXNnc3RyICLkvb/nlKggT0ZTX0RFTFRBIOWvueixoSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjY3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDUKIG1zZ2lkICJ1c2UgdGhyZWFkcyB3aGVuIHNlYXJjaGluZyBmb3IgYmVzdCBkZWx0YSBtYXRjaGVzIgogbXNnc3RyICLkvb/nlKjnur/nqIvmn6Xor6LmnIDkvbMgZGVsdGEg5Yy56YWNIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwNwogbXNnaWQgImRvIG5vdCBjcmVhdGUgYW4gZW1wdHkgcGFjayBvdXRwdXQiCiBtc2dzdHIgIuS4jeWIm+W7uuepuueahOWMhei+k+WHuiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjcxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDkKIG1zZ2lkICJyZWFkIHJldmlzaW9uIGFyZ3VtZW50cyBmcm9tIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICLku47moIflh4bovpPlhaXor7vlj5bniYjmnKzlj7flj4LmlbAiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3MworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDExCiBtc2dpZCAibGltaXQgdGhlIG9iamVjdHMgdG8gdGhvc2UgdGhhdCBhcmUgbm90IHlldCBwYWNrZWQiCiBtc2dzdHIgIumZkOWItumCo+S6m+WwmuacquaJk+WMheeahOWvueixoSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjc2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MTQKIG1zZ2lkICJpbmNsdWRlIG9iamVjdHMgcmVhY2hhYmxlIGZyb20gYW55IHJlZmVyZW5jZSIKIG1zZ3N0ciAi5YyF5ous5Y+v5Lul5LuO5Lu75L2V5byV55So6K6/6Zeu5Yiw55qE5a+56LGhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNzkKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNwogbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWZlcnJlZCBieSByZWZsb2cgZW50cmllcyIKIG1zZ3N0ciAi5YyF5ous6KKr5byV55So5pel5b+X5byV55So5Yiw55qE5a+56LGhIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyMAogbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWZlcnJlZCB0byBieSB0aGUgaW5kZXgiCiBtc2dzdHIgIuWMheaLrOiiq+e0ouW8leW8leeUqOWIsOeahOWvueixoSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjMKIG1zZ2lkICJvdXRwdXQgcGFjayB0byBzdGRvdXQiCiBtc2dzdHIgIui+k+WHuuWMheWIsOagh+WHhui+k+WHuiIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjUKIG1zZ2lkICJpbmNsdWRlIHRhZyBvYmplY3RzIHRoYXQgcmVmZXIgdG8gb2JqZWN0cyB0byBiZSBwYWNrZWQiCiBtc2dzdHIgIuWMheaLrOmCo+S6m+W8leeUqOS6huW+heaJk+WMheWvueixoeeahOagh+etvuWvueixoSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjg5CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjcKIG1zZ2lkICJrZWVwIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgIue7tOaMgeS4jeWPr+i+vueahOWvueixoSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjkKIG1zZ2lkICJwYWNrIGxvb3NlIHVucmVhY2hhYmxlIG9iamVjdHMiCiBtc2dzdHIgIuaJk+WMheadvuaVo+eahOS4jeWPr+i+vuWvueixoSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjkzCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzEKIG1zZ2lkICJ1bnBhY2sgdW5yZWFjaGFibGUgb2JqZWN0cyBuZXdlciB0aGFuIDx0aW1lPiIKIG1zZ3N0ciAi5bCG5q+U57uZ5a6aIDzml7bpl7Q+IOaWsOeahOaXoOazleiuv+mXrueahOWvueixoeino+WMhSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMjk2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzQKK21zZ2lkICJ1c2UgdGhlIHNwYXJzZSByZWFjaGFiaWxpdHkgYWxnb3JpdGhtIgorbXNnc3RyICLkvb/nlKjnqIDnlo/lj6/ovr7mgKfnrpfms5UiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQzNgogbXNnaWQgImNyZWF0ZSB0aGluIHBhY2tzIgogbXNnc3RyICLliJvlu7rnsr7nroDljIUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI5OAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDM4CiBtc2dpZCAiY3JlYXRlIHBhY2tzIHN1aXRhYmxlIGZvciBzaGFsbG93IGZldGNoZXMiCiBtc2dzdHIgIuWIm+W7uumAguWQiOa1heWFi+mahuS7k+W6k+iOt+WPlueahOWMhSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzAwCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDAKIG1zZ2lkICJpZ25vcmUgcGFja3MgdGhhdCBoYXZlIGNvbXBhbmlvbiAua2VlcCBmaWxlIgogbXNnc3RyICLlv73nlaXphY3mnIkgLmtlZXAg5paH5Lu255qE5YyFIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0MgogbXNnaWQgImlnbm9yZSB0aGlzIHBhY2siCiBtc2dzdHIgIuW/veeVpeivpSBwYWNrIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDQKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0NAogbXNnaWQgInBhY2sgY29tcHJlc3Npb24gbGV2ZWwiCiBtc2dzdHIgIuaJk+WMheWOi+e8qee6p+WIqyIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzA2CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDYKIG1zZ2lkICJkbyBub3QgaGlkZSBjb21taXRzIGJ5IGdyYWZ0cyIKIG1zZ3N0ciAi5pi+56S66KKr56e75qSN6ZqQ6JeP55qE5o+Q5LqkIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzMDgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ0OAogbXNnaWQgInVzZSBhIGJpdG1hcCBpbmRleCBpZiBhdmFpbGFibGUgdG8gc3BlZWQgdXAgY291bnRpbmcgb2JqZWN0cyIKIG1zZ3N0ciAi5L2/55SoIGJpdG1hcCDntKLlvJXvvIjlpoLmnpzmnInnmoTor53vvInku6Xmj5Dpq5jlr7nosaHorqHmlbDml7bnmoTpgJ/luqYiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxMAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDUwCiBtc2dpZCAid3JpdGUgYSBiaXRtYXAgaW5kZXggdG9nZXRoZXIgd2l0aCB0aGUgcGFjayBpbmRleCIKIG1zZ3N0ciAi5Zyo5bu656uL5YyF57Si5byV55qE5ZCM5pe25Yib5bu6IGJpdG1hcCDntKLlvJUiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxMworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU0Cittc2dpZCAid3JpdGUgYSBiaXRtYXAgaW5kZXggaWYgcG9zc2libGUiCittc2dzdHIgIuWmguaenOWPr+iDve+8jOWGmSBiaXRtYXAg57Si5byVIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTgKIG1zZ2lkICJoYW5kbGluZyBmb3IgbWlzc2luZyBvYmplY3RzIgogbXNnc3RyICLlpITnkIbkuKLlpLHnmoTlr7nosaEiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxNgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDYxCiBtc2dpZCAiZG8gbm90IHBhY2sgb2JqZWN0cyBpbiBwcm9taXNvciBwYWNrZmlsZXMiCiBtc2dzdHIgIuS4jeimgeaJk+WMhSBwcm9taXNvciDljIXmlofku7bkuK3nmoTlr7nosaEiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzMxOAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDYzCiBtc2dpZCAicmVzcGVjdCBpc2xhbmRzIGR1cmluZyBkZWx0YSBjb21wcmVzc2lvbiIKIG1zZ3N0ciAi5Zyo5aKe6YeP5Y6L57yp5pe25Y+C6ICD5pWw5o2u5bKbIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNDIKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ5MgogIywgYy1mb3JtYXQKIG1zZ2lkICJkZWx0YSBjaGFpbiBkZXB0aCAlZCBpcyB0b28gZGVlcCwgZm9yY2luZyAlZCIKIG1zZ3N0ciAi5aKe6YeP6ZO+5rex5bqmICVkIOWkqua3seS6hu+8jOW8uuWItuS4uiAlZCIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzQ3CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0OTcKICMsIGMtZm9ybWF0CiBtc2dpZCAicGFjay5kZWx0YUNhY2hlTGltaXQgaXMgdG9vIGhpZ2gsIGZvcmNpbmcgJWQiCiBtc2dzdHIgIumFjee9riBwYWNrLmRlbHRhQ2FjaGVMaW1pdCDlpKrpq5jkuobvvIzlvLrliLbkuLogJWQiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMQorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTUxCiBtc2dpZCAiLS1tYXgtcGFjay1zaXplIGNhbm5vdCBiZSB1c2VkIHRvIGJ1aWxkIGEgcGFjayBmb3IgdHJhbnNmZXIiCiBtc2dzdHIgIuS4jeiDveS9v+eUqCAtLW1heC1wYWNrLXNpemUg5p2l5p6E5bu65Lyg6L6T55So55qE5YyF5paH5Lu2IgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDMKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1MwogbXNnaWQgIm1pbmltdW0gcGFjayBzaXplIGxpbWl0IGlzIDEgTWlCIgogbXNnc3RyICLmnIDlsI/nmoTljIXmlofku7blpKflsI/mmK8gMSBNaUIiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwOAorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTU4CiBtc2dpZCAiLS10aGluIGNhbm5vdCBiZSB1c2VkIHRvIGJ1aWxkIGFuIGluZGV4YWJsZSBwYWNrIgogbXNnc3RyICItLXRoaW4g5LiN6IO955So5LqO5Yib5bu65LiA5Liq5Y+v57Si5byV5YyFIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MTEKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU2MQogbXNnaWQgIi0ta2VlcC11bnJlYWNoYWJsZSBhbmQgLS11bnBhY2stdW5yZWFjaGFibGUgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1rZWVwLXVucmVhY2hhYmxlIOWSjCAtLXVucGFjay11bnJlYWNoYWJsZSDkuI3lhbzlrrkiCiAKLSM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTY3CiBtc2dpZCAiY2Fubm90IHVzZSAtLWZpbHRlciB3aXRob3V0IC0tc3Rkb3V0IgogbXNnc3RyICLkuI3og73lnKjmsqHmnIkgLS1zdGRvdXQg55qE5oOF5Ya15LiL5L2/55SoIC0tZmlsdGVyIgogCi0jOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NzYKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzYyNwogbXNnaWQgIkVudW1lcmF0aW5nIG9iamVjdHMiCiBtc2dzdHIgIuaemuS4vuWvueixoSIKIAotIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDk1CisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM2NTcKICMsIGMtZm9ybWF0Ci1tc2dpZCAiVG90YWwgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCByZXVzZWQgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pIgotbXNnc3RyICLmgLvlhbEgJTxQUkl1MzI+IO+8iOW3ruW8giAlPFBSSXUzMj7vvInvvIzlpI3nlKggJTxQUkl1MzI+IO+8iOW3ruW8giAlPFBSSXUzMj7vvIkiCittc2dpZCAiIgorIlRvdGFsICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcmV1c2VkICU8UFJJdTMyPiAoZGVsdGEgJTxQUkl1MzI+KSwgcGFjay0iCisicmV1c2VkICU8UFJJdTMyPiIKK21zZ3N0ciAiIgorIuaAu+WFsSAlPFBSSXUzMj7vvIjlt67lvIIgJTxQUkl1MzI+77yJ77yM5aSN55SoICU8UFJJdTMyPu+8iOW3ruW8giAlPFBSSXUzMj7vvInvvIzljIXlpI3nlKggIgorIiU8UFJJdTMyPiIKIAotIzogYnVpbHRpbi9wYWNrLXJlZnMuYzo3CisjOiBidWlsdGluL3BhY2stcmVmcy5jOjgKIG1zZ2lkICJnaXQgcGFjay1yZWZzIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgcGFjay1yZWZzIFs86YCJ6aG5Pl0iCiAKLSM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTUKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKIG1zZ2lkICJwYWNrIGV2ZXJ5dGhpbmciCiBtc2dzdHIgIuaJk+WMheS4gOWIhyIKIAotIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNgorIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNwogbXNnaWQgInBydW5lIGxvb3NlIHJlZnMgKGRlZmF1bHQpIgogbXNnc3RyICLmuIXpmaTmnb7mlaPnmoTlvJXnlKjvvIjpu5jorqTvvIkiCiAKQEAgLTE0MTcxLDg2ICsxNzIyNCw4NiBAQAogbXNnaWQgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA8dGltZT5dIFstLV0gWzxoZWFkPi4uLl0iCiBtc2dzdHIgImdpdCBwcnVuZSBbLW5dIFstdl0gWy0tcHJvZ3Jlc3NdIFstLWV4cGlyZSA85pe26Ze0Pl0gWy0tXSBbPGhlYWQ+Li4uXSIKIAotIzogYnVpbHRpbi9wcnVuZS5jOjEwOQorIzogYnVpbHRpbi9wcnVuZS5jOjEzMQogbXNnaWQgInJlcG9ydCBwcnVuZWQgb2JqZWN0cyIKIG1zZ3N0ciAi5oql5ZGK5riF6Zmk55qE5a+56LGhIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTEyCisjOiBidWlsdGluL3BydW5lLmM6MTM0CiBtc2dpZCAiZXhwaXJlIG9iamVjdHMgb2xkZXIgdGhhbiA8dGltZT4iCiBtc2dzdHIgIuS9v+aXqeS6jue7meWumuaXtumXtOeahOWvueixoei/h+acnyIKIAotIzogYnVpbHRpbi9wcnVuZS5jOjExNAorIzogYnVpbHRpbi9wcnVuZS5jOjEzNgogbXNnaWQgImxpbWl0IHRyYXZlcnNhbCB0byBvYmplY3RzIG91dHNpZGUgcHJvbWlzb3IgcGFja2ZpbGVzIgogbXNnc3RyICLpmZDliLbpgY3ljoYgcHJvbWlzb3Ig5YyF5Lul5aSW55qE5a+56LGhIgogCi0jOiBidWlsdGluL3BydW5lLmM6MTI5CisjOiBidWlsdGluL3BydW5lLmM6MTUwCiBtc2dpZCAiY2Fubm90IHBydW5lIGluIGEgcHJlY2lvdXMtb2JqZWN0cyByZXBvIgogbXNnc3RyICLkuI3og73lnKjnj43lk4Hku5PlupPkuK3miafooYzmuIXnkIbmk43kvZwiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjYwIGJ1aWx0aW4vcHVsbC5jOjYyCisjOiBidWlsdGluL3B1bGwuYzo0NSBidWlsdGluL3B1bGwuYzo0NwogIywgYy1mb3JtYXQKIG1zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciAlczogJXMiCiBtc2dzdHIgIiVzIOeahOWAvOaXoOaViO+8miVzIgogCi0jOiBidWlsdGluL3B1bGwuYzo4MgorIzogYnVpbHRpbi9wdWxsLmM6NjcKIG1zZ2lkICJnaXQgcHVsbCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKIG1zZ3N0ciAiZ2l0IHB1bGwgWzzpgInpobk+XSBbPOS7k+W6kz4gWzzlvJXnlKjop4TmoLw+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjEzMworIzogYnVpbHRpbi9wdWxsLmM6MTIyCiBtc2dpZCAiY29udHJvbCBmb3IgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMiCiBtc2dzdHIgIuaOp+WItuWtkOaooee7hOeahOmAkuW9kuiOt+WPliIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTM3CisjOiBidWlsdGluL3B1bGwuYzoxMjYKIG1zZ2lkICJPcHRpb25zIHJlbGF0ZWQgdG8gbWVyZ2luZyIKIG1zZ3N0ciAi5ZKM5ZCI5bm255u45YWz55qE6YCJ6aG5IgogCi0jOiBidWlsdGluL3B1bGwuYzoxNDAKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyOQogbXNnaWQgImluY29ycG9yYXRlIGNoYW5nZXMgYnkgcmViYXNpbmcgcmF0aGVyIHRoYW4gbWVyZ2luZyIKIG1zZ3N0ciAi5L2/55So5Y+Y5Z+65pON5L2c5Y+W5Luj5ZCI5bm25pON5L2c5Lul5ZCI5YWl5L+u5pS5IgogCi0jOiBidWlsdGluL3B1bGwuYzoxNjcgYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTQ3IGJ1aWx0aW4vcmV2ZXJ0LmM6MTIyCisjOiBidWlsdGluL3B1bGwuYzoxNTcgYnVpbHRpbi9yZWJhc2UuYzo0NzEgYnVpbHRpbi9yZXZlcnQuYzoxMjYKIG1zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQiCiBtc2dzdHIgIuWFgeiuuOW/q+i/m+W8jyIKIAotIzogYnVpbHRpbi9wdWxsLmM6MTc2CisjOiBidWlsdGluL3B1bGwuYzoxNjYKIG1zZ2lkICJhdXRvbWF0aWNhbGx5IHN0YXNoL3N0YXNoIHBvcCBiZWZvcmUgYW5kIGFmdGVyIHJlYmFzZSIKIG1zZ3N0ciAi5Y+Y5Z+65pON5L2c5YmN5ZCO5omn6KGM6Ieq5Yqo6LSu6JeP5ZKM5by55Ye66LSu6JePIgogCi0jOiBidWlsdGluL3B1bGwuYzoxOTIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE4MgogbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBmZXRjaGluZyIKIG1zZ3N0ciAi5ZKM6I635Y+W55u45YWz55qE5Y+C5pWwIgogCi0jOiBidWlsdGluL3B1bGwuYzoyMDIKKyM6IGJ1aWx0aW4vcHVsbC5jOjE5MgogbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBsb2NhbCBicmFuY2giCiBtc2dzdHIgIuW8uuWItuimhuebluacrOWcsOWIhuaUryIKIAotIzogYnVpbHRpbi9wdWxsLmM6MjEwCisjOiBidWlsdGluL3B1bGwuYzoyMDAKIG1zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBwdWxsZWQgaW4gcGFyYWxsZWwiCiBtc2dzdHIgIuW5tuWPkeaLieWPlueahOWtkOaooee7hOeahOaVsOmHjyIKIAotIzogYnVpbHRpbi9wdWxsLmM6MzA1CisjOiBidWlsdGluL3B1bGwuYzozMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgcHVsbC5mZjogJXMiCiBtc2dzdHIgInB1bGwuZmYg55qE5Y+W5YC85peg5pWI77yaJXMiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyMQorIzogYnVpbHRpbi9wdWxsLmM6NDI2CiBtc2dpZCAiIgogIlRoZXJlIGlzIG5vIGNhbmRpZGF0ZSBmb3IgcmViYXNpbmcgYWdhaW5zdCBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0ICIKICJmZXRjaGVkLiIKIG1zZ3N0ciAi5Zyo5oKo5Yia5Yia6I635Y+W5Yiw55qE5byV55So5Lit5rKh5pyJ5Y+Y5Z+65pON5L2c55qE5YCZ6YCJ44CCIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MjMKKyM6IGJ1aWx0aW4vcHVsbC5jOjQyOAogbXNnaWQgIiIKICJUaGVyZSBhcmUgbm8gY2FuZGlkYXRlcyBmb3IgbWVyZ2luZyBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0IGZldGNoZWQuIgogbXNnc3RyICLlnKjmgqjliJrliJrojrflj5bliLDnmoTlvJXnlKjkuK3msqHmnInlkIjlubbmk43kvZznmoTlgJnpgInjgIIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQyNAorIzogYnVpbHRpbi9wdWxsLmM6NDI5CiBtc2dpZCAiIgogIkdlbmVyYWxseSB0aGlzIG1lYW5zIHRoYXQgeW91IHByb3ZpZGVkIGEgd2lsZGNhcmQgcmVmc3BlYyB3aGljaCBoYWQgbm9cbiIKICJtYXRjaGVzIG9uIHRoZSByZW1vdGUgZW5kLiIKIG1zZ3N0ciAi6YCa5bi46L+Z5oSP5ZGz552A5oKo5o+Q5L6b5LqG5LiA5Liq6YCa6YWN56ym5byV55So6KeE5qC85L2G5pyq6IO95ZKM6L+c56uv5Yy56YWN44CCIgogCi0jOiBidWlsdGluL3B1bGwuYzo0MjcKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzMgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFza2VkIHRvIHB1bGwgZnJvbSB0aGUgcmVtb3RlICclcycsIGJ1dCBkaWQgbm90IHNwZWNpZnlcbiIKQEAgLTE0MjYwLDQyICsxNzMxMyw0MiBAQAogIuaCqOimgeaxguS7jui/nOeoiyAnJXMnIOaLieWPlu+8jOS9huaYr+acquaMh+WumuS4gOS4quWIhuaUr+OAguWboOS4uui/meS4jeaYr+W9k+WJjVxuIgogIuWIhuaUr+m7mOiupOeahOi/nOeoi+S7k+W6k++8jOaCqOW/hemhu+WcqOWRveS7pOihjOS4reaMh+WumuS4gOS4quWIhuaUr+WQjeOAgiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDMyIGJ1aWx0aW4vcmViYXNlLmM6NzYxIGdpdC1wYXJzZS1yZW1vdGUuc2g6NzMKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzNyBidWlsdGluL3JlYmFzZS5jOjE0MDkgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3MwogbXNnaWQgIllvdSBhcmUgbm90IGN1cnJlbnRseSBvbiBhIGJyYW5jaC4iCiBtc2dzdHIgIuaCqOW9k+WJjeS4jeWcqOS4gOS4quWIhuaUr+S4iuOAgiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NDM0IGJ1aWx0aW4vcHVsbC5jOjQ0OSBnaXQtcGFyc2UtcmVtb3RlLnNoOjc5CisjOiBidWlsdGluL3B1bGwuYzo0MzkgYnVpbHRpbi9wdWxsLmM6NDU0IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzkKIG1zZ2lkICJQbGVhc2Ugc3BlY2lmeSB3aGljaCBicmFuY2ggeW91IHdhbnQgdG8gcmViYXNlIGFnYWluc3QuIgogbXNnc3RyICLor7fmjIflrprmgqjopoHlj5jln7rliLDlk6rkuIDkuKrliIbmlK/jgIIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzNiBidWlsdGluL3B1bGwuYzo0NTEgZ2l0LXBhcnNlLXJlbW90ZS5zaDo4MgorIzogYnVpbHRpbi9wdWxsLmM6NDQxIGJ1aWx0aW4vcHVsbC5jOjQ1NiBnaXQtcGFyc2UtcmVtb3RlLnNoOjgyCiBtc2dpZCAiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIG1lcmdlIHdpdGguIgogbXNnc3RyICLor7fmjIflrprmgqjopoHlkIjlubblk6rkuIDkuKrliIbmlK/jgIIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzNyBidWlsdGluL3B1bGwuYzo0NTIKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0MiBidWlsdGluL3B1bGwuYzo0NTcKIG1zZ2lkICJTZWUgZ2l0LXB1bGwoMSkgZm9yIGRldGFpbHMuIgogbXNnc3RyICLor6bop4EgZ2l0LXB1bGwoMSnjgIIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NDUgYnVpbHRpbi9wdWxsLmM6NDU0Ci0jOiBidWlsdGluL3JlYmFzZS5jOjc2NyBnaXQtcGFyc2UtcmVtb3RlLnNoOjY0CisjOiBidWlsdGluL3B1bGwuYzo0NDQgYnVpbHRpbi9wdWxsLmM6NDUwIGJ1aWx0aW4vcHVsbC5jOjQ1OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE1IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjQKIG1zZ2lkICI8cmVtb3RlPiIKIG1zZ3N0ciAiPOi/nOeoiz4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NTQgYnVpbHRpbi9wdWxsLmM6NDU5Ci0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1NTYgZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NQorIzogYnVpbHRpbi9wdWxsLmM6NDQ0IGJ1aWx0aW4vcHVsbC5jOjQ1OSBidWlsdGluL3B1bGwuYzo0NjQKKyM6IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjUKIG1zZ2lkICI8YnJhbmNoPiIKIG1zZ3N0ciAiPOWIhuaUrz4iCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ0NyBidWlsdGluL3JlYmFzZS5jOjc1OSBnaXQtcGFyc2UtcmVtb3RlLnNoOjc1CisjOiBidWlsdGluL3B1bGwuYzo0NTIgYnVpbHRpbi9yZWJhc2UuYzoxNDA3IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzUKIG1zZ2lkICJUaGVyZSBpcyBubyB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGN1cnJlbnQgYnJhbmNoLiIKIG1zZ3N0ciAi5b2T5YmN5YiG5pSv5rKh5pyJ6Lef6Liq5L+h5oGv44CCIgogCi0jOiBidWlsdGluL3B1bGwuYzo0NTYgZ2l0LXBhcnNlLXJlbW90ZS5zaDo5NQorIzogYnVpbHRpbi9wdWxsLmM6NDYxIGdpdC1wYXJzZS1yZW1vdGUuc2g6OTUKIG1zZ2lkICIiCiAiSWYgeW91IHdpc2ggdG8gc2V0IHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGlzIGJyYW5jaCB5b3UgY2FuIGRvIHNvIHdpdGg6IgogbXNnc3RyICLlpoLmnpzmgqjmg7PopoHkuLrmraTliIbmlK/liJvlu7rot5/ouKrkv6Hmga/vvIzmgqjlj6/ku6XmiafooYzvvJoiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjQ2MQorIzogYnVpbHRpbi9wdWxsLmM6NDY2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3VyIGNvbmZpZ3VyYXRpb24gc3BlY2lmaWVzIHRvIG1lcmdlIHdpdGggdGhlIHJlZiAnJXMnXG4iCkBAIC0xNDMwNCwzMiArMTczNTcsMzIgQEAKICLmgqjnmoTphY3nva7kuK3mjIflrpropoHlkIjlubbov5znqIvnmoTlvJXnlKggJyVzJ++8jFxuIgogIuS9huaYr+ayoeacieiOt+WPluWIsOi/meS4quW8leeUqOOAgiIKIAotIzogYnVpbHRpbi9wdWxsLmM6NTY1CisjOiBidWlsdGluL3B1bGwuYzo1NzYKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBjb21taXQgJXMiCiBtc2dzdHIgIuaXoOazleiuv+mXruaPkOS6pCAlcyIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODQzCisjOiBidWlsdGluL3B1bGwuYzo4NTcKIG1zZ2lkICJpZ25vcmluZyAtLXZlcmlmeS1zaWduYXR1cmVzIGZvciByZWJhc2UiCiBtc2dzdHIgIuS4uuWPmOWfuuaTjeS9nOW/veeVpSAtLXZlcmlmeS1zaWduYXR1cmVzIgogCi0jOiBidWlsdGluL3B1bGwuYzo4OTEKKyM6IGJ1aWx0aW4vcHVsbC5jOjkxMgogbXNnaWQgIi0tW25vLV1hdXRvc3Rhc2ggb3B0aW9uIGlzIG9ubHkgdmFsaWQgd2l0aCAtLXJlYmFzZS4iCiBtc2dzdHIgIi0tW25vLV1hdXRvc3Rhc2gg6YCJ6aG55Y+q5Zyo5L2/55SoIC0tcmViYXNlIOaXtuacieaViOOAgiIKIAotIzogYnVpbHRpbi9wdWxsLmM6ODk5CisjOiBidWlsdGluL3B1bGwuYzo5MjAKIG1zZ2lkICJVcGRhdGluZyBhbiB1bmJvcm4gYnJhbmNoIHdpdGggY2hhbmdlcyBhZGRlZCB0byB0aGUgaW5kZXguIgogbXNnc3RyICLmm7TmlrDlsJrmnKror57nlJ/nmoTliIbmlK/vvIzlj5jmm7Tmt7vliqDoh7PntKLlvJXjgIIiCiAKLSM6IGJ1aWx0aW4vcHVsbC5jOjkwMgorIzogYnVpbHRpbi9wdWxsLmM6OTI0CiBtc2dpZCAicHVsbCB3aXRoIHJlYmFzZSIKIG1zZ3N0ciAi5Y+Y5Z+65byP5ouJ5Y+WIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MDMKKyM6IGJ1aWx0aW4vcHVsbC5jOjkyNQogbXNnaWQgInBsZWFzZSBjb21taXQgb3Igc3Rhc2ggdGhlbS4iCiBtc2dzdHIgIuivt+aPkOS6pOaIlui0ruiXj+Wug+S7rOOAgiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTI4CisjOiBidWlsdGluL3B1bGwuYzo5NTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImZldGNoIHVwZGF0ZWQgdGhlIGN1cnJlbnQgYnJhbmNoIGhlYWQuXG4iCkBAIC0xNDMzOSw3ICsxNzM5Miw3IEBACiAiZmV0Y2gg5pu05paw5LqG5b2T5YmN55qE5YiG5pSv44CC5b+r6L+b5oKo55qE5bel5L2c5Yy6XG4iCiAi6Iez5o+Q5LqkICVz44CCIgogCi0jOiBidWlsdGluL3B1bGwuYzo5MzQKKyM6IGJ1aWx0aW4vcHVsbC5jOjk1NgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiQ2Fubm90IGZhc3QtZm9yd2FyZCB5b3VyIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTE0MzU2LDE1ICsxNzQwOSwxNSBAQAogIiQgZ2l0IHJlc2V0IC0taGFyZFxuIgogIuaBouWkjeS5i+WJjeeahOeKtuaAgeOAgiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTQ5CisjOiBidWlsdGluL3B1bGwuYzo5NzEKIG1zZ2lkICJDYW5ub3QgbWVyZ2UgbXVsdGlwbGUgYnJhbmNoZXMgaW50byBlbXB0eSBoZWFkLiIKIG1zZ3N0ciAi5peg5rOV5bCG5aSa5Liq5YiG5pSv5ZCI5bm25Yiw56m65YiG5pSv44CCIgogCi0jOiBidWlsdGluL3B1bGwuYzo5NTMKKyM6IGJ1aWx0aW4vcHVsbC5jOjk3NQogbXNnaWQgIkNhbm5vdCByZWJhc2Ugb250byBtdWx0aXBsZSBicmFuY2hlcy4iCiBtc2dzdHIgIuaXoOazleWPmOWfuuWIsOWkmuS4quWIhuaUr+OAgiIKIAotIzogYnVpbHRpbi9wdWxsLmM6OTYwCisjOiBidWlsdGluL3B1bGwuYzo5ODIKIG1zZ2lkICJjYW5ub3QgcmViYXNlIHdpdGggbG9jYWxseSByZWNvcmRlZCBzdWJtb2R1bGUgbW9kaWZpY2F0aW9ucyIKIG1zZ3N0ciAi5pys5Zyw5a2Q5qih57uE5Lit5pyJ5L+u5pS577yM5peg5rOV5Y+Y5Z+6IgogCkBAIC0xNDM3MiwxNSArMTc0MjUsMTUgQEAKIG1zZ2lkICJnaXQgcHVzaCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKIG1zZ3N0ciAiZ2l0IHB1c2ggWzzpgInpobk+XSBbPOS7k+W6kz4gWzzlvJXnlKjop4TmoLw+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjExMQorIzogYnVpbHRpbi9wdXNoLmM6MTEyCiBtc2dpZCAidGFnIHNob3J0aGFuZCB3aXRob3V0IDx0YWc+IgogbXNnc3RyICLmoIfnrb7lkI7pnaLmnKrmj5DkvpsgPOagh+etvj4g5Y+C5pWwIgogCi0jOiBidWlsdGluL3B1c2guYzoxMjEKKyM6IGJ1aWx0aW4vcHVzaC5jOjEyMgogbXNnaWQgIi0tZGVsZXRlIG9ubHkgYWNjZXB0cyBwbGFpbiB0YXJnZXQgcmVmIG5hbWVzIgogbXNnc3RyICItLWRlbGV0ZSDlj6rmjqXlj5fnroDljZXnmoTnm67moIflvJXnlKjlkI0iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE2NQorIzogYnVpbHRpbi9wdXNoLmM6MTY4CiBtc2dpZCAiIgogIlxuIgogIlRvIGNob29zZSBlaXRoZXIgb3B0aW9uIHBlcm1hbmVudGx5LCBzZWUgcHVzaC5kZWZhdWx0IGluICdnaXQgaGVscCBjb25maWcnLiIKQEAgLTE0Mzg4LDcgKzE3NDQxLDcgQEAKICJcbiIKICLkuLrkuobmsLjkuYXlnLDpgInmi6nku7vkuIDpgInpobnvvIzlj4Lop4EgJ2dpdCBoZWxwIGNvbmZpZycg5Lit55qEIHB1c2guZGVmYXVsdOOAgiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTY4CisjOiBidWlsdGluL3B1c2guYzoxNzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSB1cHN0cmVhbSBicmFuY2ggb2YgeW91ciBjdXJyZW50IGJyYW5jaCBkb2VzIG5vdCBtYXRjaFxuIgpAQCAtMTQ0MTIsNyArMTc0NjUsNyBAQAogIiAgICBnaXQgcHVzaCAlcyBIRUFEXG4iCiAiJXMiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjE4MworIzogYnVpbHRpbi9wdXNoLmM6MTg2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgYXJlIG5vdCBjdXJyZW50bHkgb24gYSBicmFuY2guXG4iCkBAIC0xNDQyNiw3ICsxNzQ3OSw3IEBACiAiXG4iCiAiICAgIGdpdCBwdXNoICVzIEhFQUQ6POi/nOeoi+WIhuaUr+WQjeWtlz5cbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MTk3CisjOiBidWlsdGluL3B1c2guYzoyMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBjdXJyZW50IGJyYW5jaCAlcyBoYXMgbm8gdXBzdHJlYW0gYnJhbmNoLlxuIgpAQCAtMTQ0MzksMTIgKzE3NDkyLDEyIEBACiAiXG4iCiAiICAgIGdpdCBwdXNoIC0tc2V0LXVwc3RyZWFtICVzICVzXG4iCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjIwNQorIzogYnVpbHRpbi9wdXNoLmM6MjA4CiAjLCBjLWZvcm1hdAogbXNnaWQgIlRoZSBjdXJyZW50IGJyYW5jaCAlcyBoYXMgbXVsdGlwbGUgdXBzdHJlYW0gYnJhbmNoZXMsIHJlZnVzaW5nIHRvIHB1c2guIgogbXNnc3RyICLlvZPliY3liIbmlK8gJXMg5pyJ5aSa5Liq5LiK5ri45YiG5pSv77yM5ouS57ud5o6o6YCB44CCIgogCi0jOiBidWlsdGluL3B1c2guYzoyMDgKKyM6IGJ1aWx0aW4vcHVzaC5jOjIxMQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGFyZSBwdXNoaW5nIHRvIHJlbW90ZSAnJXMnLCB3aGljaCBpcyBub3QgdGhlIHVwc3RyZWFtIG9mXG4iCkBAIC0xNDQ1NCwxMiArMTc1MDcsMTIgQEAKICLmgqjmraPmjqjpgIHoh7Pov5znqIsgJyVzJ++8iOWFtuW5tumdnuW9k+WJjeWIhuaUryAnJXMnIOeahOS4iua4uO+8ie+8jFxuIgogIuiAjOayoeacieWRiuivieaIkeimgeaOqOmAgeS7gOS5iOOAgeabtOaWsOWTquS4qui/nOeoi+WIhuaUr+OAgiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjY3CisjOiBidWlsdGluL3B1c2guYzoyNzAKIG1zZ2lkICIiCiAiWW91IGRpZG4ndCBzcGVjaWZ5IGFueSByZWZzcGVjcyB0byBwdXNoLCBhbmQgcHVzaC5kZWZhdWx0IGlzIFwibm90aGluZ1wiLiIKIG1zZ3N0ciAi5oKo5rKh5pyJ5Li65o6o6YCB5oyH5a6a5Lu75L2V5byV55So6KeE5qC877yM5bm25LiUIHB1c2guZGVmYXVsdCDkuLogXCJub3RoaW5nXCLjgIIiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI3NAorIzogYnVpbHRpbi9wdXNoLmM6Mjc3CiBtc2dpZCAiIgogIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSB0aXAgb2YgeW91ciBjdXJyZW50IGJyYW5jaCBpcyBiZWhpbmRcbiIKICJpdHMgcmVtb3RlIGNvdW50ZXJwYXJ0LiBJbnRlZ3JhdGUgdGhlIHJlbW90ZSBjaGFuZ2VzIChlLmcuXG4iCkBAIC0xNDQ3MCw3ICsxNzUyMyw3IEBACiAi5YaN5qyh5o6o6YCB5YmN77yM5YWI5LiO6L+c56iL5Y+Y5pu05ZCI5bm277yI5aaCICdnaXQgcHVsbCAuLi4n77yJ44CC6K+m6KeBXG4iCiAiJ2dpdCBwdXNoIC0taGVscCcg5Lit55qEICdOb3RlIGFib3V0IGZhc3QtZm9yd2FyZHMnIOWwj+iKguOAgiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjgwCisjOiBidWlsdGluL3B1c2guYzoyODMKIG1zZ2lkICIiCiAiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgYSBwdXNoZWQgYnJhbmNoIHRpcCBpcyBiZWhpbmQgaXRzIHJlbW90ZVxuIgogImNvdW50ZXJwYXJ0LiBDaGVjayBvdXQgdGhpcyBicmFuY2ggYW5kIGludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXNcbiIKQEAgLTE0NDgxLDcgKzE3NTM0LDcgQEAKICLmo4Dlh7ror6XliIbmlK/lubbmlbTlkIjov5znqIvlj5jmm7TvvIjlpoIgJ2dpdCBwdWxsIC4uLifvvInvvIznhLblkI7lho3mjqjpgIHjgILor6bop4FcbiIKICInZ2l0IHB1c2ggLS1oZWxwJyDkuK3nmoQgJ05vdGUgYWJvdXQgZmFzdC1mb3J3YXJkcycg5bCP6IqC44CCIgogCi0jOiBidWlsdGluL3B1c2guYzoyODYKKyM6IGJ1aWx0aW4vcHVzaC5jOjI4OQogbXNnaWQgIiIKICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgcmVtb3RlIGNvbnRhaW5zIHdvcmsgdGhhdCB5b3UgZG9cbiIKICJub3QgaGF2ZSBsb2NhbGx5LiBUaGlzIGlzIHVzdWFsbHkgY2F1c2VkIGJ5IGFub3RoZXIgcmVwb3NpdG9yeSBwdXNoaW5nXG4iCkBAIC0xNDQ5NCwxMSArMTc1NDcsMTEgQEAKICLvvIjlpoIgJ2dpdCBwdWxsIC4uLifvvInjgIJcbiIKICLor6bop4EgJ2dpdCBwdXNoIC0taGVscCcg5Lit55qEICdOb3RlIGFib3V0IGZhc3QtZm9yd2FyZHMnIOWwj+iKguOAgiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MjkzCisjOiBidWlsdGluL3B1c2guYzoyOTYKIG1zZ2lkICJVcGRhdGVzIHdlcmUgcmVqZWN0ZWQgYmVjYXVzZSB0aGUgdGFnIGFscmVhZHkgZXhpc3RzIGluIHRoZSByZW1vdGUuIgogbXNnc3RyICLmm7TmlrDooqvmi5Lnu53vvIzlm6DkuLror6XmoIfnrb7lnKjov5znqIvlt7Lnu4/lrZjlnKjjgIIiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjI5NgorIzogYnVpbHRpbi9wdXNoLmM6Mjk5CiBtc2dpZCAiIgogIllvdSBjYW5ub3QgdXBkYXRlIGEgcmVtb3RlIHJlZiB0aGF0IHBvaW50cyBhdCBhIG5vbi1jb21taXQgb2JqZWN0LFxuIgogIm9yIHVwZGF0ZSBhIHJlbW90ZSByZWYgdG8gbWFrZSBpdCBwb2ludCBhdCBhIG5vbi1jb21taXQgb2JqZWN0LFxuIgpAQCAtMTQ1MDcsMjIgKzE3NTYwLDk5IEBACiAi5aaC5p6c5LiN5L2/55SoICctLWZvcmNlJyDlj4LmlbDvvIzmgqjkuI3og73mm7TmlrDkuIDkuKrmjIflkJHpnZ7mj5DkuqTlr7nosaHnmoTov5znqIvlvJXnlKjvvIxcbiIKICLkuZ/kuI3og73mm7TmlrDov5znqIvlvJXnlKjorqnlhbbmjIflkJHkuIDkuKrpnZ7mj5DkuqTlr7nosaHjgIJcbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MzU3CisjOiBidWlsdGluL3B1c2guYzozNjAKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHVzaGluZyB0byAlc1xuIgogbXNnc3RyICLmjqjpgIHliLAgJXNcbiIKIAotIzogYnVpbHRpbi9wdXNoLmM6MzYxCisjOiBidWlsdGluL3B1c2guYzozNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHB1c2ggc29tZSByZWZzIHRvICclcyciCiBtc2dzdHIgIuaOqOmAgeS4gOS6m+W8leeUqOWIsCAnJXMnIOWksei0pSIKIAotIzogYnVpbHRpbi9wdXNoLmM6Mzk1CisjOiBidWlsdGluL3B1c2guYzo1NDIKK21zZ2lkICJyZXBvc2l0b3J5IgorbXNnc3RyICLku5PlupMiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0MyBidWlsdGluL3NlbmQtcGFjay5jOjE2NAorbXNnaWQgInB1c2ggYWxsIHJlZnMiCittc2dzdHIgIuaOqOmAgeaJgOacieW8leeUqCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ0IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY2Cittc2dpZCAibWlycm9yIGFsbCByZWZzIgorbXNnc3RyICLplZzlg4/miYDmnInlvJXnlKgiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0NgorbXNnaWQgImRlbGV0ZSByZWZzIgorbXNnc3RyICLliKDpmaTlvJXnlKgiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0NworbXNnaWQgInB1c2ggdGFncyAoY2FuJ3QgYmUgdXNlZCB3aXRoIC0tYWxsIG9yIC0tbWlycm9yKSIKK21zZ3N0ciAi5o6o6YCB5qCH562+77yI5LiN6IO95L2/55SoIC0tYWxsIG9yIC0tbWlycm9y77yJIgorCisjOiBidWlsdGluL3B1c2guYzo1NTAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjcKK21zZ2lkICJmb3JjZSB1cGRhdGVzIgorbXNnc3RyICLlvLrliLbmm7TmlrAiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1MiBidWlsdGluL3NlbmQtcGFjay5jOjE4MQorbXNnaWQgIjxyZWZuYW1lPjo8ZXhwZWN0PiIKK21zZ3N0ciAiPOW8leeUqOWQjT46POacn+acm+WAvD4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1MyBidWlsdGluL3NlbmQtcGFjay5jOjE4MgorbXNnaWQgInJlcXVpcmUgb2xkIHZhbHVlIG9mIHJlZiB0byBiZSBhdCB0aGlzIHZhbHVlIgorbXNnc3RyICLopoHmsYLlvJXnlKjml6fnmoTlj5blgLzkuLrorr7lrprlgLwiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1NgorbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIHB1c2hpbmcgb2Ygc3VibW9kdWxlcyIKK21zZ3N0ciAi5o6n5Yi25a2Q5qih57uE55qE6YCS5b2S5o6o6YCBIgorCisjOiBidWlsdGluL3B1c2guYzo1NTggYnVpbHRpbi9zZW5kLXBhY2suYzoxNzUKK21zZ2lkICJ1c2UgdGhpbiBwYWNrIgorbXNnc3RyICLkvb/nlKjnsr7nroDmiZPljIUiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1OSBidWlsdGluL3B1c2guYzo1NjAgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjEKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYyCittc2dpZCAicmVjZWl2ZSBwYWNrIHByb2dyYW0iCittc2dzdHIgIuaOpeaUtuWMheeoi+W6jyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTYxCittc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9zdGF0dXMiCittc2dzdHIgIuiuvue9riBnaXQgcHVsbC9zdGF0dXMg55qE5LiK5ri4IgorCisjOiBidWlsdGluL3B1c2guYzo1NjQKK21zZ2lkICJwcnVuZSBsb2NhbGx5IHJlbW92ZWQgcmVmcyIKK21zZ3N0ciAi5riF6Zmk5pys5Zyw5Yig6Zmk55qE5byV55SoIgorCisjOiBidWlsdGluL3B1c2guYzo1NjYKK21zZ2lkICJieXBhc3MgcHJlLXB1c2ggaG9vayIKK21zZ3N0ciAi57uV6L+HIHByZS1wdXNoIOmSqeWtkCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTY3Cittc2dpZCAicHVzaCBtaXNzaW5nIGJ1dCByZWxldmFudCB0YWdzIgorbXNnc3RyICLmjqjpgIHnvLrlpLHkvYbmnInlhbPnmoTmoIfnrb4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU3MCBidWlsdGluL3NlbmQtcGFjay5jOjE2OQorbXNnaWQgIkdQRyBzaWduIHRoZSBwdXNoIgorbXNnc3RyICLnlKggR1BHIOS4uuaOqOmAgeetvuWQjSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc2Cittc2dpZCAicmVxdWVzdCBhdG9taWMgdHJhbnNhY3Rpb24gb24gcmVtb3RlIHNpZGUiCittc2dzdHIgIumcgOimgei/nOerr+aUr+aMgeWOn+WtkOS6i+WKoSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTkwCittc2dpZCAiLS1kZWxldGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tbWlycm9yIGFuZCAtLXRhZ3MiCittc2dzdHIgIi0tZGVsZXRlIOS4jiAtLWFsbOOAgS0tbWlycm9yIOWPiiAtLXRhZ3Mg5LiN5YW85a65IgorCisjOiBidWlsdGluL3B1c2guYzo1OTIKK21zZ2lkICItLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2Ugd2l0aG91dCBhbnkgcmVmcyIKK21zZ3N0ciAiLS1kZWxldGUg5pyq5o6l5Lu75L2V5byV55So5rKh5pyJ5oSP5LmJIgorCisjOiBidWlsdGluL3B1c2guYzo2MTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiYmFkIHJlcG9zaXRvcnkgJyVzJyIKIG1zZ3N0ciAi5Z2P55qE5LuT5bqTICclcyciCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjM5NgorIzogYnVpbHRpbi9wdXNoLmM6NjEzCiBtc2dpZCAiIgogIk5vIGNvbmZpZ3VyZWQgcHVzaCBkZXN0aW5hdGlvbi5cbiIKICJFaXRoZXIgc3BlY2lmeSB0aGUgVVJMIGZyb20gdGhlIGNvbW1hbmQtbGluZSBvciBjb25maWd1cmUgYSByZW1vdGUgIgpAQCAtMTQ1NDMsMTA0ICsxNzY3MywyNyBAQAogIlxuIgogIiAgICBnaXQgcHVzaCA85ZCN56ewPlxuIgogCi0jOiBidWlsdGluL3B1c2guYzo1NTEKLW1zZ2lkICJyZXBvc2l0b3J5IgotbXNnc3RyICLku5PlupMiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1MiBidWlsdGluL3NlbmQtcGFjay5jOjE2NAotbXNnaWQgInB1c2ggYWxsIHJlZnMiCi1tc2dzdHIgIuaOqOmAgeaJgOacieW8leeUqCIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTUzIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY2Ci1tc2dpZCAibWlycm9yIGFsbCByZWZzIgotbXNnc3RyICLplZzlg4/miYDmnInlvJXnlKgiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1NQotbXNnaWQgImRlbGV0ZSByZWZzIgotbXNnc3RyICLliKDpmaTlvJXnlKgiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU1NgotbXNnaWQgInB1c2ggdGFncyAoY2FuJ3QgYmUgdXNlZCB3aXRoIC0tYWxsIG9yIC0tbWlycm9yKSIKLW1zZ3N0ciAi5o6o6YCB5qCH562+77yI5LiN6IO95L2/55SoIC0tYWxsIG9yIC0tbWlycm9y77yJIgotCi0jOiBidWlsdGluL3B1c2guYzo1NTkgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjcKLW1zZ2lkICJmb3JjZSB1cGRhdGVzIgotbXNnc3RyICLlvLrliLbmm7TmlrAiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2MSBidWlsdGluL3NlbmQtcGFjay5jOjE4MQotbXNnaWQgIjxyZWZuYW1lPjo8ZXhwZWN0PiIKLW1zZ3N0ciAiPOW8leeUqOWQjT46POacn+acm+WAvD4iCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2MiBidWlsdGluL3NlbmQtcGFjay5jOjE4MgotbXNnaWQgInJlcXVpcmUgb2xkIHZhbHVlIG9mIHJlZiB0byBiZSBhdCB0aGlzIHZhbHVlIgotbXNnc3RyICLopoHmsYLlvJXnlKjml6fnmoTlj5blgLzkuLrorr7lrprlgLwiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2NQotbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIHB1c2hpbmcgb2Ygc3VibW9kdWxlcyIKLW1zZ3N0ciAi5o6n5Yi25a2Q5qih57uE55qE6YCS5b2S5o6o6YCBIgotCi0jOiBidWlsdGluL3B1c2guYzo1NjcgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzUKLW1zZ2lkICJ1c2UgdGhpbiBwYWNrIgotbXNnc3RyICLkvb/nlKjnsr7nroDmiZPljIUiCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU2OCBidWlsdGluL3B1c2guYzo1NjkgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjEKLSM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYyCi1tc2dpZCAicmVjZWl2ZSBwYWNrIHByb2dyYW0iCi1tc2dzdHIgIuaOpeaUtuWMheeoi+W6jyIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTcwCi1tc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9zdGF0dXMiCi1tc2dzdHIgIuiuvue9riBnaXQgcHVsbC9zdGF0dXMg55qE5LiK5ri4IgotCi0jOiBidWlsdGluL3B1c2guYzo1NzMKLW1zZ2lkICJwcnVuZSBsb2NhbGx5IHJlbW92ZWQgcmVmcyIKLW1zZ3N0ciAi5riF6Zmk5pys5Zyw5Yig6Zmk55qE5byV55SoIgotCi0jOiBidWlsdGluL3B1c2guYzo1NzUKLW1zZ2lkICJieXBhc3MgcHJlLXB1c2ggaG9vayIKLW1zZ3N0ciAi57uV6L+HIHByZS1wdXNoIOmSqeWtkCIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTc2Ci1tc2dpZCAicHVzaCBtaXNzaW5nIGJ1dCByZWxldmFudCB0YWdzIgotbXNnc3RyICLmjqjpgIHnvLrlpLHkvYbmnInlhbPnmoTmoIfnrb4iCi0KLSM6IGJ1aWx0aW4vcHVzaC5jOjU3OSBidWlsdGluL3NlbmQtcGFjay5jOjE2OQotbXNnaWQgIkdQRyBzaWduIHRoZSBwdXNoIgotbXNnc3RyICLnlKggR1BHIOS4uuaOqOmAgeetvuWQjSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTgxIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc2Ci1tc2dpZCAicmVxdWVzdCBhdG9taWMgdHJhbnNhY3Rpb24gb24gcmVtb3RlIHNpZGUiCi1tc2dzdHIgIumcgOimgei/nOerr+aUr+aMgeWOn+WtkOS6i+WKoSIKLQotIzogYnVpbHRpbi9wdXNoLmM6NTk5Ci1tc2dpZCAiLS1kZWxldGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tbWlycm9yIGFuZCAtLXRhZ3MiCi1tc2dzdHIgIi0tZGVsZXRlIOS4jiAtLWFsbOOAgS0tbWlycm9yIOWPiiAtLXRhZ3Mg5LiN5YW85a65IgotCi0jOiBidWlsdGluL3B1c2guYzo2MDEKLW1zZ2lkICItLWRlbGV0ZSBkb2Vzbid0IG1ha2Ugc2Vuc2Ugd2l0aG91dCBhbnkgcmVmcyIKLW1zZ3N0ciAiLS1kZWxldGUg5pyq5o6l5Lu75L2V5byV55So5rKh5pyJ5oSP5LmJIgotCi0jOiBidWlsdGluL3B1c2guYzo2MDQKKyM6IGJ1aWx0aW4vcHVzaC5jOjYyOAogbXNnaWQgIi0tYWxsIGFuZCAtLXRhZ3MgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1hbGwg5ZKMIC0tdGFncyDkuI3lhbzlrrkiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYwNgorIzogYnVpbHRpbi9wdXNoLmM6NjMwCiBtc2dpZCAiLS1hbGwgY2FuJ3QgYmUgY29tYmluZWQgd2l0aCByZWZzcGVjcyIKIG1zZ3N0ciAiLS1hbGwg5LiN6IO95ZKM5byV55So6KeE5qC85ZCM5pe25L2/55SoIgogCi0jOiBidWlsdGluL3B1c2guYzo2MTAKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzNAogbXNnaWQgIi0tbWlycm9yIGFuZCAtLXRhZ3MgYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1taXJyb3Ig5ZKMIC0tdGFncyDkuI3lhbzlrrkiCiAKLSM6IGJ1aWx0aW4vcHVzaC5jOjYxMgorIzogYnVpbHRpbi9wdXNoLmM6NjM2CiBtc2dpZCAiLS1taXJyb3IgY2FuJ3QgYmUgY29tYmluZWQgd2l0aCByZWZzcGVjcyIKIG1zZ3N0ciAiLS1taXJyb3Ig5LiN6IO95ZKM5byV55So6KeE5qC85ZCM5pe25L2/55SoIgogCi0jOiBidWlsdGluL3B1c2guYzo2MTUKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzOQogbXNnaWQgIi0tYWxsIGFuZCAtLW1pcnJvciBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWFsbCDlkowgLS1taXJyb3Ig5LiN5YW85a65IgogCi0jOiBidWlsdGluL3B1c2guYzo2MzQKKyM6IGJ1aWx0aW4vcHVzaC5jOjY0MwogbXNnaWQgInB1c2ggb3B0aW9ucyBtdXN0IG5vdCBoYXZlIG5ldyBsaW5lIGNoYXJhY3RlcnMiCiBtc2dzdHIgIuaOqOmAgemAiemhueS4jeiDveacieaNouihjOespiIKIApAQCAtMTQ2NTYsMjggKzE3NzA5LDM2IEBACiBtc2dpZCAiZ2l0IHJhbmdlLWRpZmYgWzxvcHRpb25zPl0gPGJhc2U+IDxvbGQtdGlwPiA8bmV3LXRpcD4iCiBtc2dzdHIgImdpdCByYW5nZS1kaWZmIFs86YCJ6aG5Pl0gPGJhc2U+IDxvbGQtdGlwPiA8bmV3LXRpcD4iCiAKLSM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjIxCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyMgogbXNnaWQgIlBlcmNlbnRhZ2UgYnkgd2hpY2ggY3JlYXRpb24gaXMgd2VpZ2h0ZWQiCiBtc2dzdHIgIuWIm+W7uuadg+mHjeeahOeZvuWIhuavlCIKIAotIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjMKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI0CiBtc2dpZCAidXNlIHNpbXBsZSBkaWZmIGNvbG9ycyIKIG1zZ3N0ciAi5L2/55So566A5Y2V5beu5byC6aKc6ImyIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo2MSBidWlsdGluL3JhbmdlLWRpZmYuYzo2NQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjYKK21zZ2lkICJub3RlcyIKK21zZ3N0ciAi5rOo6KejIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyNgorbXNnaWQgInBhc3NlZCB0byAnZ2l0IGxvZyciCittc2dzdHIgIuS8oOmAkue7mSAnZ2l0IGxvZyciCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjUwIGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIC4uIGluIHJhbmdlOiAnJXMnIgogbXNnc3RyICLmsqHmnInlnKjojIPlm7TkuK3kvb/nlKggLi7vvJonJXMnIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo3NQorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NjQKIG1zZ2lkICJzaW5nbGUgYXJnIGZvcm1hdCBtdXN0IGJlIHN5bW1ldHJpYyByYW5nZSIKIG1zZ3N0ciAi5Y2V5Liq5Y+C5pWw5qC85byP5b+F6aG75piv5a+556ew6IyD5Zu077yI5Y2z5YyF5ZCrLi4u77yJIgogCi0jOiBidWlsdGluL3JhbmdlLWRpZmYuYzo5MAorIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NzkKIG1zZ2lkICJuZWVkIHR3byBjb21taXQgcmFuZ2VzIgogbXNnc3RyICLpnIDopoHkuKTkuKrmj5DkuqTojIPlm7QiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6NDAKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6NDEKIG1zZ2lkICIiCiAiZ2l0IHJlYWQtdHJlZSBbKC1tIFstLXRyaXZpYWxdIFstLWFnZ3Jlc3NpdmVdIHwgLS1yZXNldCB8IC0tcHJlZml4PTxwcmVmaXg+KSAiCiAiWy11IFstLWV4Y2x1ZGUtcGVyLWRpcmVjdG9yeT08Z2l0aWdub3JlPl0gfCAtaV1dIFstLW5vLXNwYXJzZS1jaGVja291dF0gWy0tIgpAQCAtMTQ2ODcsMTE4ICsxNzc0OCwyOTcgQEAKICJ1IFstLWV4Y2x1ZGUtcGVyLWRpcmVjdG9yeT08Z2l0aWdub3JlPl0gfCAtaV1dIFstLW5vLXNwYXJzZS1jaGVja291dF0gWy0tIgogImluZGV4LW91dHB1dD085paH5Lu2Pl0gKC0tZW1wdHkgfCA85qCR5a+56LGhMT4gWzzmoJHlr7nosaEyPiBbPOagkeWvueixoTM+XV0pIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjQKIG1zZ2lkICJ3cml0ZSByZXN1bHRpbmcgaW5kZXggdG8gPGZpbGU+IgogbXNnc3RyICLlsIbntKLlvJXnu5PmnpzlhpnlhaUgPOaWh+S7tj4iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI2CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyNwogbXNnaWQgIm9ubHkgZW1wdHkgdGhlIGluZGV4IgogbXNnc3RyICLlj6rmmK/muIXnqbrntKLlvJUiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI4CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEyOQogbXNnaWQgIk1lcmdpbmciCiBtc2dzdHIgIuWQiOW5tiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzAKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMxCiBtc2dpZCAicGVyZm9ybSBhIG1lcmdlIGluIGFkZGl0aW9uIHRvIGEgcmVhZCIKIG1zZ3N0ciAi6K+75Y+W5LmL5L2Z5YaN5omn6KGM5LiA5Liq5ZCI5bm2IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMgorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzMKIG1zZ2lkICIzLXdheSBtZXJnZSBpZiBubyBmaWxlIGxldmVsIG1lcmdpbmcgcmVxdWlyZWQiCiBtc2dzdHIgIuWmguaenOayoeacieaWh+S7tue6p+WQiOW5tumcgOimge+8jOaJp+ihjOS4ieaWueWQiOW5tiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzQKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM1CiBtc2dpZCAiMy13YXkgbWVyZ2UgaW4gcHJlc2VuY2Ugb2YgYWRkcyBhbmQgcmVtb3ZlcyIKIG1zZ3N0ciAi5a2Y5Zyo5re75Yqg5ZKM5Yig6Zmk5pe277yM5Lmf5omn6KGM5LiJ5pa55ZCI5bm2IgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNgorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzcKIG1zZ2lkICJzYW1lIGFzIC1tLCBidXQgZGlzY2FyZCB1bm1lcmdlZCBlbnRyaWVzIgogbXNnc3RyICLnsbvkvLzkuo4gLW3vvIzkvYbkuKLlvIPmnKrlkIjlubbnmoTmnaHnm64iCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM3CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzOAogbXNnaWQgIjxzdWJkaXJlY3Rvcnk+LyIKIG1zZ3N0ciAiPOWtkOebruW9lT4vIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzOAorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzkKIG1zZ2lkICJyZWFkIHRoZSB0cmVlIGludG8gdGhlIGluZGV4IHVuZGVyIDxzdWJkaXJlY3Rvcnk+LyIKIG1zZ3N0ciAi6K+75Y+W5qCR5a+56LGh5Yiw57Si5byV55qEIDzlrZDnm67lvZU+LyDkuIsiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQxCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0MgogbXNnaWQgInVwZGF0ZSB3b3JraW5nIHRyZWUgd2l0aCBtZXJnZSByZXN1bHQiCiBtc2dzdHIgIueUqOWQiOW5tueahOe7k+aenOabtOaWsOW3peS9nOWMuiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDMKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ0CiBtc2dpZCAiZ2l0aWdub3JlIgogbXNnc3RyICJnaXRpZ25vcmUiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ0CisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NQogbXNnaWQgImFsbG93IGV4cGxpY2l0bHkgaWdub3JlZCBmaWxlcyB0byBiZSBvdmVyd3JpdHRlbiIKIG1zZ3N0ciAi5YWB6K645b+955Wl5paH5Lu25Lit6K6+5a6a55qE5paH5Lu25Y+v5Lul6KKr6KaG55uWIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0NworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDgKIG1zZ2lkICJkb24ndCBjaGVjayB0aGUgd29ya2luZyB0cmVlIGFmdGVyIG1lcmdpbmciCiBtc2dzdHIgIuWQiOW5tuWQjuS4jeajgOafpeW3peS9nOWMuiIKIAotIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDgKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTQ5CiBtc2dpZCAiZG9uJ3QgdXBkYXRlIHRoZSBpbmRleCBvciB0aGUgd29yayB0cmVlIgogbXNnc3RyICLkuI3mm7TmlrDntKLlvJXljLrlkozlt6XkvZzljLoiCiAKLSM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTUwCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MQogbXNnaWQgInNraXAgYXBwbHlpbmcgc3BhcnNlIGNoZWNrb3V0IGZpbHRlciIKIG1zZ3N0ciAi6Lez6L+H5bqU55So56iA55aP5qOA5Ye66L+H5ruk5ZmoIgogCi0jOiBidWlsdGluL3JlYWQtdHJlZS5jOjE1MgorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTMKIG1zZ2lkICJkZWJ1ZyB1bnBhY2stdHJlZXMiCiBtc2dzdHIgIuiwg+ivlSB1bnBhY2stdHJlZXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MjkKLW1zZ2lkICIiCi0iZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPl0gWzx1cHN0cmVhbT5dICIKLSJbPGJyYW5jaD5dIgotbXNnc3RyICIiCi0iZ2l0IHJlYmFzZSBbLWldIFvpgInpobldIFstLWV4ZWMgPOWRveS7pD5dIFstLW9udG8gPOaWsOWfuue6vz5dIFs85LiK5ri4Pl0gWzzliIbmlK8+XSIKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTU3Cittc2dpZCAic3VwcHJlc3MgZmVlZGJhY2sgbWVzc2FnZXMiCittc2dzdHIgIuaKkeWItuWPjemmiOS/oeaBryIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzozMQorIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxODgKK21zZ2lkICJZb3UgbmVlZCB0byByZXNvbHZlIHlvdXIgY3VycmVudCBpbmRleCBmaXJzdCIKK21zZ3N0ciAi5oKo6ZyA6KaB5YWI6Kej5Yaz5b2T5YmN57Si5byV55qE5Yay56qBIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjMyCittc2dpZCAiIgorImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT4gfCAtLWtlZXAtYmFzZV0gIgorIls8dXBzdHJlYW0+IFs8YnJhbmNoPl1dIgorbXNnc3RyICIiCisiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDzlkb3ku6Q+XSBbLS1vbnRvIDzmlrDln7rnur8+IHwgLS1rZWVwLWJhc2VdIFs8IgorIuS4iua4uD4gWzzliIbmlK8+XV0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzQKIG1zZ2lkICIiCiAiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPl0gLS1yb290IFs8YnJhbmNoPl0iCiBtc2dzdHIgIiIKICJnaXQgcmViYXNlIFstaV0gW+mAiemhuV0gWy0tZXhlYyA85ZG95LukPl0gWy0tb250byA85paw5Z+657q/Pl0gLS1yb290IFs85YiG5pSvPl0iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MzMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzYKIG1zZ2lkICJnaXQgcmViYXNlIC0tY29udGludWUgfCAtLWFib3J0IHwgLS1za2lwIHwgLS1lZGl0LXRvZG8iCiBtc2dzdHIgImdpdCByZWJhc2UgLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXAgfCAtLWVkaXQtdG9kbyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTc1IGJ1aWx0aW4vcmViYXNlLmM6MTk5IGJ1aWx0aW4vcmViYXNlLmM6MjI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIKK21zZ3N0ciAi5LiN5Y+v55So55qE5b6F5Yqe5YiX6KGo77yaJyVzJyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJXMiCittc2dzdHIgIuaXoOazleWIm+W7uuS4tOaXtueahCAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyOTgKK21zZ2lkICJjb3VsZCBub3QgbWFyayBhcyBpbnRlcmFjdGl2ZSIKK21zZ3N0ciAi5peg5rOV5qCH6K6w5Li65Lqk5LqS5byPIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM1MgorbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSB0b2RvIGxpc3QiCittc2dzdHIgIuaXoOazleeUn+aIkOW+heWKnuWIl+ihqCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzozOTEKK21zZ2lkICJhIGJhc2UgY29tbWl0IG11c3QgYmUgcHJvdmlkZWQgd2l0aCAtLXVwc3RyZWFtIG9yIC0tb250byIKK21zZ3N0ciAi5L2/55SoIC0tdXBzdHJlYW0g5oiWIC0tb250byDlv4Xpobvmj5DkvpvkuIDkuKrln7rnur/mj5DkuqQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDYxCittc2dpZCAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCByZWJhc2UtLWludGVyYWN0aXZlIFs86YCJ6aG5Pl0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDc0IGJ1aWx0aW4vcmViYXNlLmM6MTU1MAorbXNnaWQgIihERVBSRUNBVEVEKSBrZWVwIGVtcHR5IGNvbW1pdHMiCittc2dzdHIgIu+8iOW3suW8g+eUqO+8ieS/neeVmeepuuaPkOS6pCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NzggYnVpbHRpbi9yZXZlcnQuYzoxMjgKK21zZ2lkICJhbGxvdyBjb21taXRzIHdpdGggZW1wdHkgbWVzc2FnZXMiCittc2dzdHIgIuWFgeiuuOaPkOS6pOivtOaYjuS4uuepuiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODAKK21zZ2lkICJyZWJhc2UgbWVyZ2UgY29tbWl0cyIKK21zZ3N0ciAi5a+55ZCI5bm25o+Q5Lqk5Y+Y5Z+6IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4MgorbXNnaWQgImtlZXAgb3JpZ2luYWwgYnJhbmNoIHBvaW50cyBvZiBjb3VzaW5zIgorbXNnc3RyICLkv53mjIHlhYTlvJ/mj5DkuqTnmoTljp/lp4vliIbmlK/ngrkiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg0Cittc2dpZCAibW92ZSBjb21taXRzIHRoYXQgYmVnaW4gd2l0aCBzcXVhc2ghL2ZpeHVwISIKK21zZ3N0ciAi56e75Yqo5LulIHNxdWFzaCEvZml4dXAhIOW8gOWktOeahOaPkOS6pCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODUKK21zZ2lkICJzaWduIGNvbW1pdHMiCittc2dzdHIgIuetvuWQjeaPkOS6pCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODcgYnVpbHRpbi9yZWJhc2UuYzoxNDkwCittc2dpZCAiZGlzcGxheSBhIGRpZmZzdGF0IG9mIHdoYXQgY2hhbmdlZCB1cHN0cmVhbSIKK21zZ3N0ciAi5pi+56S65LiK5ri45Y+Y5YyW55qE5beu5byC57uf6K6hIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4OQorbXNnaWQgImNvbnRpbnVlIHJlYmFzZSIKK21zZ3N0ciAi57un57ut5Y+Y5Z+6IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5MQorbXNnaWQgInNraXAgY29tbWl0IgorbXNnc3RyICLot7Pov4fmj5DkuqQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDkyCittc2dpZCAiZWRpdCB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICLlj5jln7rlvoXlip7liJfooagiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk0Cittc2dpZCAic2hvdyB0aGUgY3VycmVudCBwYXRjaCIKK21zZ3N0ciAi5pi+56S65b2T5YmN6KGl5LiBIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ5NworbXNnaWQgInNob3J0ZW4gY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICLnvKnnn63lvoXlip7liJfooajkuK3nmoTmj5DkuqTlj7ciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk5Cittc2dpZCAiZXhwYW5kIGNvbW1pdCBpZHMgaW4gdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAi5omp5bGV5b6F5Yqe5YiX6KGo5Lit55qE5o+Q5Lqk5Y+3IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwMQorbXNnaWQgImNoZWNrIHRoZSB0b2RvIGxpc3QiCittc2dzdHIgIuajgOafpeW+heWKnuWIl+ihqCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDMKK21zZ2lkICJyZWFycmFuZ2UgZml4dXAvc3F1YXNoIGxpbmVzIgorbXNnc3RyICLph43mlrDmjpLliJcgZml4dXAvc3F1YXNoIOihjCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDUKK21zZ2lkICJpbnNlcnQgZXhlYyBjb21tYW5kcyBpbiB0b2RvIGxpc3QiCittc2dzdHIgIuWcqOW+heWKnuWIl+ihqOS4reaPkuWFpSBleGVjIOaJp+ihjOWRveS7pCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDYKK21zZ2lkICJvbnRvIgorbXNnc3RyICJvbnRvIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwOQorbXNnaWQgInJlc3RyaWN0LXJldmlzaW9uIgorbXNnc3RyICJyZXN0cmljdC1yZXZpc2lvbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MDkKK21zZ2lkICJyZXN0cmljdCByZXZpc2lvbiIKK21zZ3N0ciAi6ZmQ5Yi254mI5pysIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxMQorbXNnaWQgInNxdWFzaC1vbnRvIgorbXNnc3RyICJzcXVhc2gtb250byIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTIKK21zZ2lkICJzcXVhc2ggb250byIKK21zZ3N0ciAic3F1YXNoIG9udG8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTE0Cittc2dpZCAidGhlIHVwc3RyZWFtIGNvbW1pdCIKK21zZ3N0ciAi5LiK5ri45o+Q5LqkIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxNgorbXNnaWQgImhlYWQtbmFtZSIKK21zZ3N0ciAiaGVhZC1uYW1lIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxNgorbXNnaWQgImhlYWQgbmFtZSIKK21zZ3N0ciAiaGVhZCDlkI3np7AiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTIxCittc2dpZCAicmViYXNlIHN0cmF0ZWd5IgorbXNnc3RyICLlj5jln7rnrZbnlaUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTIyCittc2dpZCAic3RyYXRlZ3ktb3B0cyIKK21zZ3N0ciAic3RyYXRlZ3ktb3B0cyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjMKK21zZ2lkICJzdHJhdGVneSBvcHRpb25zIgorbXNnc3RyICLnrZbnlaXpgInpobkiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI0Cittc2dpZCAic3dpdGNoLXRvIgorbXNnc3RyICLliIfmjaLliLAiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTI1Cittc2dpZCAidGhlIGJyYW5jaCBvciBjb21taXQgdG8gY2hlY2tvdXQiCittc2dzdHIgIuimgeajgOWHuueahOWIhuaUr+aIluaPkOS6pCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjYKK21zZ2lkICJvbnRvLW5hbWUiCittc2dzdHIgIm9udG8tbmFtZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjYKK21zZ2lkICJvbnRvIG5hbWUiCittc2dzdHIgIm9udG8gbmFtZSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjcKK21zZ2lkICJjbWQiCittc2dzdHIgImNtZCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjcKK21zZ2lkICJ0aGUgY29tbWFuZCB0byBydW4iCittc2dzdHIgIuimgeaJp+ihjOeahOWRveS7pCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MzAgYnVpbHRpbi9yZWJhc2UuYzoxNTg0Cittc2dpZCAiYXV0b21hdGljYWxseSByZS1zY2hlZHVsZSBhbnkgYGV4ZWNgIHRoYXQgZmFpbHMiCittc2dzdHIgIuiHquWKqOmHjeaWsOWuieaOkuS7u+S9leWksei0peeahCBgZXhlY2AiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTQ2Cittc2dpZCAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIGhhcyBubyBlZmZlY3Qgd2l0aG91dCAtLXJlYmFzZS1tZXJnZXMiCittc2dzdHIgIuS4jeS9v+eUqCAtLXJlYmFzZS1tZXJnZXPvvIzliJkgLS1bbm8tXXJlYmFzZS1jb3VzaW5zIOayoeacieaViOaenCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1NjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJXMgcmVxdWlyZXMgYW4gaW50ZXJhY3RpdmUgcmViYXNlIgogbXNnc3RyICIlcyDpnIDopoHkuqTkupLlvI/lj5jln7oiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTcxCisjOiBidWlsdGluL3JlYmFzZS5jOjYxMgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0ICdvbnRvJzogJyVzJyIKIG1zZ3N0ciAi5peg5rOV6I635Y+WICdvbnRvJ++8miclcyciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTg2CisjOiBidWlsdGluL3JlYmFzZS5jOjYyNwogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIG9yaWctaGVhZDogJyVzJyIKIG1zZ3N0ciAi5peg5pWI55qE5Y6f5aeLIGhlYWTvvJonJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjIxNAorIzogYnVpbHRpbi9yZWJhc2UuYzo2NTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgaW52YWxpZCBhbGxvd19yZXJlcmVfYXV0b3VwZGF0ZTogJyVzJyIKIG1zZ3N0ciAi5b+955Wl5peg5pWI55qEIGFsbG93X3JlcmVyZV9hdXRvdXBkYXRl77yaJyVzJyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoyNTkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NzI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZWFkICclcyciCiBtc2dzdHIgIuS4jeiDveivu+WPliAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjI3NworIzogYnVpbHRpbi9yZWJhc2UuYzo3NDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHN0b3JlICVzIgogbXNnc3RyICLkuI3og73lrZjlgqggJXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MzM3CisjOiBidWlsdGluL3JlYmFzZS5jOjg1MworbXNnaWQgImNvdWxkIG5vdCBkZXRlcm1pbmUgSEVBRCByZXZpc2lvbiIKK21zZ3N0ciAi5LiN6IO956Gu5a6aIEhFQUQg54mI5pysIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjk3NiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODEKIG1zZ2lkICIiCiAiUmVzb2x2ZSBhbGwgY29uZmxpY3RzIG1hbnVhbGx5LCBtYXJrIHRoZW0gYXMgcmVzb2x2ZWQgd2l0aFxuIgogIlwiZ2l0IGFkZC9ybSA8Y29uZmxpY3RlZF9maWxlcz5cIiwgdGhlbiBydW4gXCJnaXQgcmViYXNlIC0tY29udGludWVcIi5cbiIKQEAgLTE0ODExLDExICsxODA1MSwzMiBAQAogIlwiZ2l0IHJlYmFzZSAtLXNraXBcIiDlkb3ku6Tot7Pov4fov5nkuKrmj5DkuqTjgILlpoLmnpzmg7PopoHnu4jmraLmiafooYzlubblm57liLBcbiIKICJcImdpdCByZWJhc2VcIiDmiafooYzkuYvliY3nmoTnirbmgIHvvIzmiafooYwgXCJnaXQgcmViYXNlIC0tYWJvcnRcIuOAgiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo1NjEKLW1zZ2lkICJjb3VsZCBub3QgZGV0ZXJtaW5lIEhFQUQgcmV2aXNpb24iCi1tc2dzdHIgIuS4jeiDveehruWumiBIRUFEIOeJiOacrCIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiZ2l0IGVuY291bnRlcmVkIGFuIGVycm9yIHdoaWxlIHByZXBhcmluZyB0aGUgcGF0Y2hlcyB0byByZXBsYXlcbiIKKyJ0aGVzZSByZXZpc2lvbnM6XG4iCisiXG4iCisiICAgICVzXG4iCisiXG4iCisiQXMgYSByZXN1bHQsIGdpdCBjYW5ub3QgcmViYXNlIHRoZW0uIgorbXNnc3RyICIiCisiXG4iCisi5Zyo5Li66YeN5pS+6L+Z5Lqb54mI5pys6ICM5YeG5aSH6KGl5LiB5pe277yMZ2l0IOmBh+WIsOS6huS4gOS4qumUmeivr++8mlxuIgorIlxuIgorIiAgICAlc1xuIgorIlxuIgorIuWboOatpCBnaXQg5peg5rOV5a+55YW25Y+Y5Z+644CCIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjc1MworIzogYnVpbHRpbi9yZWJhc2UuYzoxMzgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bnJlY29nbml6ZWQgZW1wdHkgdHlwZSAnJXMnOyB2YWxpZCB2YWx1ZXMgYXJlIFwiZHJvcFwiLCBcImtlZXBcIiwgYW5kIFwiYXNrIgorIlwiLiIKK21zZ3N0ciAi5peg5rOV6K+G5Yir55qE56m657G75Z6LICclcyfvvJvmnInmlYjlgLzmnIkgXCJkcm9wXCLjgIFcImtlZXBcIiDlkowgXCJhc2tcIuOAgiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDAxCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICIlc1xuIgpAQCAtMTQ4MzIsNyArMTgwOTMsNyBAQAogIiAgICBnaXQgcmViYXNlICc8YnJhbmNoPidcbiIKICJcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo3NjkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxNwogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiSWYgeW91IHdpc2ggdG8gc2V0IHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGlzIGJyYW5jaCB5b3UgY2FuIGRvIHNvIHdpdGg6XG4iCkBAIC0xNDg0NSwxNDkgKzE4MTA2LDE3MyBAQAogIiAgICBnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvPSVzLzxicmFuY2g+ICVzXG4iCiAiXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODMyCisjOiBidWlsdGluL3JlYmFzZS5jOjE0NDcKK21zZ2lkICJleGVjIGNvbW1hbmRzIGNhbm5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJleGVjIOWRveS7pOS4jeiDveWMheWQq+aNouihjOespiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDUxCittc2dpZCAiZW1wdHkgZXhlYyBjb21tYW5kIgorbXNnc3RyICLnqbrnmoQgZXhlYyDlkb3ku6QiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4MQogbXNnaWQgInJlYmFzZSBvbnRvIGdpdmVuIGJyYW5jaCBpbnN0ZWFkIG9mIHVwc3RyZWFtIgogbXNnc3RyICLlj5jln7rliLDnu5nlrprnmoTliIbmlK/ogIzpnZ7kuIrmuLgiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODM0CisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODMKK21zZ2lkICJ1c2UgdGhlIG1lcmdlLWJhc2Ugb2YgdXBzdHJlYW0gYW5kIGJyYW5jaCBhcyB0aGUgY3VycmVudCBiYXNlIgorbXNnc3RyICLkvb/nlKjkuIrmuLjlkozliIbmlK/nmoTlkIjlubbln7rnur/lgZrkuLrlvZPliY3ln7rnur8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4NQogbXNnaWQgImFsbG93IHByZS1yZWJhc2UgaG9vayB0byBydW4iCiBtc2dzdHIgIuWFgeiuuOaJp+ihjCBwcmUtcmViYXNlIOmSqeWtkCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4NwogbXNnaWQgImJlIHF1aWV0LiBpbXBsaWVzIC0tbm8tc3RhdCIKIG1zZ3N0ciAi5a6J6Z2Z44CC5pqX56S6IC0tbm8tc3RhdCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4MzkKLW1zZ2lkICJkaXNwbGF5IGEgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtIgotbXNnc3RyICLmmL7npLrkuIrmuLjlj5jljJbnmoQgZGlmZnN0YXQiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODQyCisjOiBidWlsdGluL3JlYmFzZS5jOjE0OTMKIG1zZ2lkICJkbyBub3Qgc2hvdyBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCi1tc2dzdHIgIuS4jeaYvuekuuS4iua4uOWPmOWMlueahCBkaWZmc3RhdCIKK21zZ3N0ciAi5LiN5pi+56S65LiK5ri45Y+Y5YyW55qE5beu5byC57uf6K6hIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg0NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDk2CiBtc2dpZCAiYWRkIGEgU2lnbmVkLW9mZi1ieTogbGluZSB0byBlYWNoIGNvbW1pdCIKIG1zZ3N0ciAi5Li65q+P5LiA5Liq5o+Q5Lqk5re75Yqg5LiA5LiqIFNpZ25lZC1vZmYtYnk6IOetvuWQjSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NDcgYnVpbHRpbi9yZWJhc2UuYzo4NTEgYnVpbHRpbi9yZWJhc2UuYzo4NTMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5OCBidWlsdGluL3JlYmFzZS5jOjE1MDIgYnVpbHRpbi9yZWJhc2UuYzoxNTA0CiBtc2dpZCAicGFzc2VkIHRvICdnaXQgYW0nIgotbXNnc3RyICLkvKDpgJLnu5kgJ2dpdCBhbSciCittc2dzdHIgIuS8oOmAkue7mSAnZ2l0IGFtIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg1NSBidWlsdGluL3JlYmFzZS5jOjg1NworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTA2IGJ1aWx0aW4vcmViYXNlLmM6MTUwOAogbXNnaWQgInBhc3NlZCB0byAnZ2l0IGFwcGx5JyIKIG1zZ3N0ciAi5Lyg6YCS57uZICdnaXQgYXBwbHknIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg1OSBidWlsdGluL3JlYmFzZS5jOjg2MgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTEwIGJ1aWx0aW4vcmViYXNlLmM6MTUxMwogbXNnaWQgImNoZXJyeS1waWNrIGFsbCBjb21taXRzLCBldmVuIGlmIHVuY2hhbmdlZCIKIG1zZ3N0ciAi5ouj6YCJ5omA5pyJ5o+Q5Lqk77yM5Y2z5L2/5pyq5L+u5pS5IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg2NAorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTE1CiBtc2dpZCAiY29udGludWUiCiBtc2dzdHIgIue7p+e7rSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4NjcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxOAogbXNnaWQgInNraXAgY3VycmVudCBwYXRjaCBhbmQgY29udGludWUiCiBtc2dzdHIgIui3s+i/h+W9k+WJjeihpeS4geW5tue7p+e7rSIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiBidWlsdGluL3JlYmFzZS5jOjg2OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTIwCiBtc2dpZCAiYWJvcnQgYW5kIGNoZWNrIG91dCB0aGUgb3JpZ2luYWwgYnJhbmNoIgogbXNnc3RyICLnu4jmraLlubbmo4Dlh7rljp/mnInliIbmlK8iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODcyCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjMKIG1zZ2lkICJhYm9ydCBidXQga2VlcCBIRUFEIHdoZXJlIGl0IGlzIgogbXNnc3RyICLnu4jmraLkvYbkv53mjIEgSEVBRCDkuI3lj5giCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODczCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjQKIG1zZ2lkICJlZGl0IHRoZSB0b2RvIGxpc3QgZHVyaW5nIGFuIGludGVyYWN0aXZlIHJlYmFzZSIKIG1zZ3N0ciAi5Zyo5Lqk5LqS5byP5Y+Y5Z+65Lit57yW6L6R5b6F5Yqe5YiX6KGoIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3NgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTI3CiBtc2dpZCAic2hvdyB0aGUgcGF0Y2ggZmlsZSBiZWluZyBhcHBsaWVkIG9yIG1lcmdlZCIKIG1zZ3N0ciAi5pi+56S65q2j5Zyo5bqU55So5oiW5ZCI5bm255qE6KGl5LiB5paH5Lu2IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg3OQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTMwCittc2dpZCAidXNlIGFwcGx5IHN0cmF0ZWdpZXMgdG8gcmViYXNlIgorbXNnc3RyICLkvb/nlKjlupTnlKjnrZbnlaXov5vooYzlj5jln7oiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUzNAogbXNnaWQgInVzZSBtZXJnaW5nIHN0cmF0ZWdpZXMgdG8gcmViYXNlIgogbXNnc3RyICLkvb/nlKjlkIjlubbnrZbnlaXov5vooYzlj5jln7oiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODgzCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzgKIG1zZ2lkICJsZXQgdGhlIHVzZXIgZWRpdCB0aGUgbGlzdCBvZiBjb21taXRzIHRvIHJlYmFzZSIKIG1zZ3N0ciAi6K6p55So5oi357yW6L6R6KaB5Y+Y5Z+655qE5o+Q5Lqk5YiX6KGoIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjg4NwotbXNnaWQgInRyeSB0byByZWNyZWF0ZSBtZXJnZXMgaW5zdGVhZCBvZiBpZ25vcmluZyB0aGVtIgotbXNnc3RyICLlsJ3or5Xph43lu7rlkIjlubbmj5DkuqTogIzpnZ7lv73nlaXlroPku6wiCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NDIKK21zZ2lkICIoREVQUkVDQVRFRCkgdHJ5IHRvIHJlY3JlYXRlIG1lcmdlcyBpbnN0ZWFkIG9mIGlnbm9yaW5nIHRoZW0iCittc2dzdHIgIu+8iOW3suW8g+eUqO+8ieWwneivlemHjeW7uuWQiOW5tuaPkOS6pOiAjOmdnuW/veeVpeWug+S7rCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo4OTEKLW1zZ2lkICJhbGxvdyByZXJlcmUgdG8gdXBkYXRlIGluZGV4IHdpdGggcmVzb2x2ZWQgY29uZmxpY3QiCi1tc2dzdHIgIuWFgeiuuCByZXJlcmUg55So5bey6Kej5Yaz55qE5Yay56qB5pu05paw57Si5byVIgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTQ3Cittc2dpZCAiaG93IHRvIGhhbmRsZSBjb21taXRzIHRoYXQgYmVjb21lIGVtcHR5IgorbXNnc3RyICLlpoLkvZXlpITnkIbmiJDkuLrnqbrmj5DkuqTnmoTmj5DkuqQiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODk0Ci1tc2dpZCAicHJlc2VydmUgZW1wdHkgY29tbWl0cyBkdXJpbmcgcmViYXNlIgotbXNnc3RyICLlj5jln7rml7bkv53nlZnnqbrmj5DkuqQiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6ODk2CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NTQKIG1zZ2lkICJtb3ZlIGNvbW1pdHMgdGhhdCBiZWdpbiB3aXRoIHNxdWFzaCEvZml4dXAhIHVuZGVyIC1pIgogbXNnc3RyICLlnKggLWkg5Lqk5LqS5qih5byP5LiL77yM56e75Yqo5LulIHNxdWFzaCEvZml4dXAhIOW8gOWktOeahOaPkOS6pCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MDIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU2MAogbXNnaWQgImF1dG9tYXRpY2FsbHkgc3Rhc2gvc3Rhc2ggcG9wIGJlZm9yZSBhbmQgYWZ0ZXIiCiBtc2dzdHIgIuWcqOaTjeS9nOWJjeWQjuaJp+ihjOiHquWKqOi0ruiXj+WSjOW8ueWHuui0ruiXjyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MDQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU2MgogbXNnaWQgImFkZCBleGVjIGxpbmVzIGFmdGVyIGVhY2ggY29tbWl0IG9mIHRoZSBlZGl0YWJsZSBsaXN0IgogbXNnc3RyICLlj6/nvJbovpHliJfooajnmoTmr4/kuIDkuKrmj5DkuqTkuIvpnaLlop7liqDkuIDooYwgZXhlYyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU2NgogbXNnaWQgImFsbG93IHJlYmFzaW5nIGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKIG1zZ3N0ciAi5YWB6K646ZKI5a+556m65o+Q5Lqk6K+05piO55qE5o+Q5Lqk5Y+Y5Z+6IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxMQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTcwCiBtc2dpZCAidHJ5IHRvIHJlYmFzZSBtZXJnZXMgaW5zdGVhZCBvZiBza2lwcGluZyB0aGVtIgogbXNnc3RyICLlsJ3or5Xlr7nlkIjlubbmj5DkuqTlj5jln7rogIzkuI3mmK/lv73nlaXlroPku6wiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTE0CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzMKIG1zZ2lkICJ1c2UgJ21lcmdlLWJhc2UgLS1mb3JrLXBvaW50JyB0byByZWZpbmUgdXBzdHJlYW0iCiBtc2dzdHIgIuS9v+eUqCAnbWVyZ2UtYmFzZSAtLWZvcmstcG9pbnQnIOadpeS8mOWMluS4iua4uCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3NQogbXNnaWQgInVzZSB0aGUgZ2l2ZW4gbWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgIuS9v+eUqOe7meWumueahOWQiOW5tuetlueVpSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MTggYnVpbHRpbi9yZXZlcnQuYzoxMTEKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3NyBidWlsdGluL3JldmVydC5jOjExNQogbXNnaWQgIm9wdGlvbiIKIG1zZ3N0ciAi6YCJ6aG5IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjkxOQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNTc4CiBtc2dpZCAicGFzcyB0aGUgYXJndW1lbnQgdGhyb3VnaCB0byB0aGUgbWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgIuWwhuWPguaVsOS8oOmAkue7meWQiOW5tuetlueVpSIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MjIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU4MQogbXNnaWQgInJlYmFzZSBhbGwgcmVhY2hhYmxlIGNvbW1pdHMgdXAgdG8gdGhlIHJvb3QocykiCiBtc2dzdHIgIuWwhuaJgOacieWPr+i+vueahOaPkOS6pOWPmOWfuuWIsOagueaPkOS6pCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzo5MzgKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IGV4ZWMgJXMiCi1tc2dzdHIgIuS4jeiDveaJp+ihjCAlcyIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU5OAorbXNnaWQgIiIKKyJ0aGUgcmViYXNlLnVzZUJ1aWx0aW4gc3VwcG9ydCBoYXMgYmVlbiByZW1vdmVkIVxuIgorIlNlZSBpdHMgZW50cnkgaW4gJ2dpdCBoZWxwIGNvbmZpZycgZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisi5a+5IHJlYmFzZS51c2VCdWlsdGluIOeahOaUr+aMgeW3suiiq+WIoOmZpO+8gVxuIgorIuivpuingSAnZ2l0IGhlbHAgY29uZmlnJyDkuK3nmoTmnaHnm67jgIIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTU2IGdpdC1sZWdhY3ktcmViYXNlLnNoOjIxMworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjA0CiBtc2dpZCAiSXQgbG9va3MgbGlrZSAnZ2l0IGFtJyBpcyBpbiBwcm9ncmVzcy4gQ2Fubm90IHJlYmFzZS4iCiBtc2dzdHIgIueci+i1t+adpSAnZ2l0LWFtJyDmraPlnKjmiafooYzkuK3jgILml6Dms5Xlj5jln7rjgIIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6OTk3IGdpdC1sZWdhY3ktcmViYXNlLnNoOjM5NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjQ1Cittc2dpZCAiIgorImdpdCByZWJhc2UgLS1wcmVzZXJ2ZS1tZXJnZXMgaXMgZGVwcmVjYXRlZC4gVXNlIC0tcmViYXNlLW1lcmdlcyBpbnN0ZWFkLiIKK21zZ3N0ciAiZ2l0IHJlYmFzZSAtLXByZXNlcnZlLW1lcmdlcyDooqvlvIPnlKjjgILnlKggLS1yZWJhc2UtbWVyZ2VzIOS7o+abv+OAgiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjUwCittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0ta2VlcC1iYXNlJyB3aXRoICctLW9udG8nIgorbXNnc3RyICLkuI3og73lsIYgJy0ta2VlcC1iYXNlJyDlkowgJy0tb250bycg57uE5ZCI5L2/55SoIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NTIKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1rZWVwLWJhc2UnIHdpdGggJy0tcm9vdCciCittc2dzdHIgIuS4jeiDveWwhiAnLS1rZWVwLWJhc2UnIOWSjCAnLS1yb290JyDnu4TlkIjkvb/nlKgiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1NgogbXNnaWQgIk5vIHJlYmFzZSBpbiBwcm9ncmVzcz8iCiBtc2dzdHIgIuayoeacieato+WcqOi/m+ihjOeahOWPmOWfuu+8nyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDAxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjQwNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjYwCiBtc2dpZCAiVGhlIC0tZWRpdC10b2RvIGFjdGlvbiBjYW4gb25seSBiZSB1c2VkIGR1cmluZyBpbnRlcmFjdGl2ZSByZWJhc2UuIgogbXNnc3RyICLliqjkvZwgLS1lZGl0LXRvZG8g5Y+q6IO955So5Zyo5Lqk5LqS5byP5Y+Y5Z+66L+H56iL5Lit44CCIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwMTUgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDEzCisjOiBidWlsdGluL3JlYmFzZS5jOjE2ODMKIG1zZ2lkICJDYW5ub3QgcmVhZCBIRUFEIgogbXNnc3RyICLkuI3og73or7vlj5YgSEVBRCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMDI4IGdpdC1sZWdhY3ktcmViYXNlLnNoOjQxNgorIzogYnVpbHRpbi9yZWJhc2UuYzoxNjk1CiBtc2dpZCAiIgogIllvdSBtdXN0IGVkaXQgYWxsIG1lcmdlIGNvbmZsaWN0cyBhbmQgdGhlblxuIgogIm1hcmsgdGhlbSBhcyByZXNvbHZlZCB1c2luZyBnaXQgYWRkIgpAQCAtMTQ5OTUsMjEgKzE4MjgwLDE2IEBACiAi5oKo5b+F6aG757yW6L6R5omA5pyJ55qE5ZCI5bm25Yay56qB77yM54S25ZCO6YCa6L+HIGdpdCBhZGRcbiIKICLlkb3ku6TlsIblroPku6zmoIforrDkuLrlt7Lop6PlhrMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTA0NworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzE0CiBtc2dpZCAiY291bGQgbm90IGRpc2NhcmQgd29ya3RyZWUgY2hhbmdlcyIKIG1zZ3N0ciAi5peg5rOV5Lii5byD5bel5L2c5Yy65Y+Y5pu0IgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEwNjYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTczMwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgbW92ZSBiYWNrIHRvICVzIgogbXNnc3RyICLml6Dms5Xnp7vlm54gJXMiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTA3NyBidWlsdGluL3JtLmM6MzY4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgJyVzJyIKLW1zZ3N0ciAi5peg5rOV5Yig6ZmkICclcyciCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTEwMworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJJdCBzZWVtcyB0aGF0IHRoZXJlIGlzIGFscmVhZHkgYSAlcyBkaXJlY3RvcnksIGFuZFxuIgpAQCAtMTUwMjgsMzM5ICsxODMwOCwxNjQgQEAKICJcdCVzXG4iCiAi54S25ZCO5YaN6YeN5paw5omn6KGM44CCIOS4uumBv+WFjeS4ouWksemHjeimgeaVsOaNru+8jOaIkeW3sue7j+WBnOatouW9k+WJjeaTjeS9nOOAglxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExMjQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTgwNgogbXNnaWQgInN3aXRjaCBgQycgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKIG1zZ3N0ciAi5byA5YWzIGBDJyDmnJ/mnJvkuIDkuKrmlbDlrZflgLwiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTE2MQorIzogYnVpbHRpbi9yZWJhc2UuYzoxODQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVua25vd24gbW9kZTogJXMiCiBtc2dzdHIgIuacquefpeaooeW8j++8miVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjExODMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg2OQogbXNnaWQgIi0tc3RyYXRlZ3kgcmVxdWlyZXMgLS1tZXJnZSBvciAtLWludGVyYWN0aXZlIgogbXNnc3RyICItLXN0cmF0ZWd5IOmcgOimgSAtLW1lcmdlIOaIliAtLWludGVyYWN0aXZlIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyMjYKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg5OQorbXNnaWQgImNhbm5vdCBjb21iaW5lIGFwcGx5IG9wdGlvbnMgd2l0aCBtZXJnZSBvcHRpb25zIgorbXNnc3RyICLkuI3og73nu4TlkIjkvb/nlKjlupTnlKjpgInpobnlkozlkIjlubbpgInpobkiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTkxMgogIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHJlYmFzZSBiYWNrZW5kOiAlcyIKK21zZ3N0ciAi5pyq55+l55qE5Y+Y5Z+65ZCO56uv77yaJXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTkzNworbXNnaWQgIi0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyByZXF1aXJlcyAtLWV4ZWMgb3IgLS1pbnRlcmFjdGl2ZSIKK21zZ3N0ciAiLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjIOmcgOimgSAtLWV4ZWMg5oiWIC0taW50ZXJhY3RpdmUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk1NworbXNnaWQgImNhbm5vdCBjb21iaW5lICctLXByZXNlcnZlLW1lcmdlcycgd2l0aCAnLS1yZWJhc2UtbWVyZ2VzJyIKK21zZ3N0ciAi5LiN6IO95bCGICctLXByZXNlcnZlLW1lcmdlcycg5ZKMICctLXJlYmFzZS1tZXJnZXMnIOWQjOaXtuS9v+eUqCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTYxCiBtc2dpZCAiIgotImVycm9yOiBjYW5ub3QgY29tYmluZSBpbnRlcmFjdGl2ZSBvcHRpb25zICgtLWludGVyYWN0aXZlLCAtLWV4ZWMsIC0tcmViYXNlLSIKLSJtZXJnZXMsIC0tcHJlc2VydmUtbWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250bykgd2l0aCBhbSBvcHRpb25zICIKLSIoJXMpIgorImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyciCiBtc2dzdHIgIiIKLSLplJnor6/vvJrml6Dms5XlkIzml7bkvb/nlKjkuqTkupLlvI/pgInpobnvvIgtLWludGVyYWN0aXZlLCAtLWV4ZWMsIC0tcmViYXNlLW1lcmdlcywgLS1wcmVzZXJ2ZS0iCi0ibWVyZ2VzLCAtLWtlZXAtZW1wdHksIC0tcm9vdCArIC0tb250b++8ieWSjCBhbSDpgInpobnvvIglc++8iSIKKyLplJnor6/vvJrkuI3og73lsIYgJy0tcHJlc2VydmUtbWVyZ2VzJyDlkowgJy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYycg5ZCM5pe25L2/55SoIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyMzEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiIgotImVycm9yOiBjYW5ub3QgY29tYmluZSBtZXJnZSBvcHRpb25zICgtLW1lcmdlLCAtLXN0cmF0ZWd5LCAtLXN0cmF0ZWd5LW9wdGlvbikgIgotIndpdGggYW0gb3B0aW9ucyAoJXMpIgotbXNnc3RyICLplJnor6/vvJrkuI3og73nu4TlkIjlkIjlubbpgInpobnvvIgtLW1lcmdl44CBLS1zdHJhdGVneeOAgS0tc3RyYXRlZ3ktb3B0aW9u77yJ5ZKMIGFtIOmAiemhue+8iCVz77yJIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyNTEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTM2Ci1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXByZXNlcnZlLW1lcmdlcycgd2l0aCAnLS1yZWJhc2UtbWVyZ2VzJyIKLW1zZ3N0ciAi6ZSZ6K+v77ya5LiN6IO957uE5ZCIICctLXByZXNlcnZlLW1lcmdlcycg5ZKMICctLXJlYmFzZS1tZXJnZXMnIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyNTYgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTQyCi1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3ktb3B0aW9uJyIKLW1zZ3N0ciAi6ZSZ6K+v77ya5LiN6IO957uE5ZCIICctLXJlYmFzZS1tZXJnZXMnIOWSjCAnLS1zdHJhdGVneS1vcHRpb24nIgotCi0jOiBidWlsdGluL3JlYmFzZS5jOjEyNTkgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTQ0Ci1tc2dpZCAiZXJyb3I6IGNhbm5vdCBjb21iaW5lICctLXJlYmFzZS1tZXJnZXMnIHdpdGggJy0tc3RyYXRlZ3knIgotbXNnc3RyICLplJnor6/vvJrkuI3og73nu4TlkIggJy0tcmViYXNlLW1lcmdlcycg5ZKMICctLXN0cmF0ZWd5JyIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjgzCisjOiBidWlsdGluL3JlYmFzZS5jOjE5ODUKICMsIGMtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCB1cHN0cmVhbSAnJXMnIgogbXNnc3RyICLml6DmlYjnmoTkuIrmuLggJyVzJyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMjg5CisjOiBidWlsdGluL3JlYmFzZS5jOjE5OTEKIG1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIG5ldyByb290IGNvbW1pdCIKIG1zZ3N0ciAi5LiN6IO95Yib5bu65paw55qE5qC55o+Q5LqkIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzMDcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAxNworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnOiBuZWVkIGV4YWN0bHkgb25lIG1lcmdlIGJhc2Ugd2l0aCBicmFuY2giCittc2dzdHIgIiclcyfvvJrlj6rpnIDopoHkuI7liIbmlK/nmoTkuIDkuKrlkIjlubbln7rnur8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAyMAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnOiBuZWVkIGV4YWN0bHkgb25lIG1lcmdlIGJhc2UiCiBtc2dzdHIgIiclcyfvvJrlj6rpnIDopoHkuIDkuKrlkIjlubbln7rnur8iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTMxNAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMDI4CiAjLCBjLWZvcm1hdAogbXNnaWQgIkRvZXMgbm90IHBvaW50IHRvIGEgdmFsaWQgY29tbWl0ICclcyciCiBtc2dzdHIgIuayoeacieaMh+WQkeS4gOS4quacieaViOeahOaPkOS6pCAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzMzkKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICclcyciCi1tc2dzdHIgIuS4pemHjemUmeivr++8muaXoOatpOWIhuaUry/mj5DkuqQgJyVzJyIKK21zZ3N0ciAi6Ie05ZG96ZSZ6K+v77ya5peg5q2k5YiG5pSvL+aPkOS6pCAnJXMnIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjEzNDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjM3Ci0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkzMAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMDYyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCByZWY6ICVzIgogbXNnc3RyICLmsqHmnInov5nmoLfnmoTlvJXnlKjvvJolcyIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzU5CisjOiBidWlsdGluL3JlYmFzZS5jOjIwNzMKIG1zZ2lkICJDb3VsZCBub3QgcmVzb2x2ZSBIRUFEIHRvIGEgcmV2aXNpb24iCiBtc2dzdHIgIuaXoOazleWwhiBIRUFEIOino+aekOS4uuS4gOS4queJiOacrCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxMzk5IGdpdC1sZWdhY3ktcmViYXNlLnNoOjY2NQorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTExCiBtc2dpZCAiQ2Fubm90IGF1dG9zdGFzaCIKIG1zZ3N0ciAi5peg5rOVIGF1dG9zdGFzaCIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDAyCisjOiBidWlsdGluL3JlYmFzZS5jOjIxMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiVW5leHBlY3RlZCBzdGFzaCByZXNwb25zZTogJyVzJyIKIG1zZ3N0ciAi5oSP5aSW55qEIHN0YXNoIOWTjeW6lO+8miclcyciCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQwOAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTIwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5IGZvciAnJXMnIgogbXNnc3RyICLkuI3og73kuLogJyVzJyDliJvlu7rnm67lvZUiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQxMQorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTIzCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNyZWF0ZWQgYXV0b3N0YXNoOiAlc1xuIgogbXNnc3RyICLliJvlu7rkuoYgYXV0b3N0YXNo77yaJXNcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE0CisjOiBidWlsdGluL3JlYmFzZS5jOjIxMjYKIG1zZ2lkICJjb3VsZCBub3QgcmVzZXQgLS1oYXJkIgogbXNnc3RyICLml6Dms5UgcmVzZXQgLS1oYXJkIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0MTUgYnVpbHRpbi9yZXNldC5jOjExMwotIywgYy1mb3JtYXQKLW1zZ2lkICJIRUFEIGlzIG5vdyBhdCAlcyIKLW1zZ3N0ciAiSEVBRCDnjrDlnKjkvY3kuo4gJXMiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQzMSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2NzQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjEzNQogbXNnaWQgIlBsZWFzZSBjb21taXQgb3Igc3Rhc2ggdGhlbS4iCiBtc2dzdHIgIuivt+aPkOS6pOaIlui0ruiXj+S/ruaUueOAgiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDU4Ci0jLCBjLWZvcm1hdAotbXNnaWQgImNvdWxkIG5vdCBwYXJzZSAnJXMnIgotbXNnc3RyICLml6Dms5Xop6PmnpAgJyVzJyIKLQotIzogYnVpbHRpbi9yZWJhc2UuYzoxNDcwCisjOiBidWlsdGluL3JlYmFzZS5jOjIxNjkKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IHN3aXRjaCB0byAlcyIKIG1zZ3N0ciAi5peg5rOV5YiH5o2i5YiwICVzIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0ODEgZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6Njk3Ci0jLCBzaC1mb3JtYXQKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE4MAogbXNnaWQgIkhFQUQgaXMgdXAgdG8gZGF0ZS4iCiBtc2dzdHIgIkhFQUQg5piv5pyA5paw55qE44CCIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE0ODMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE4MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDdXJyZW50IGJyYW5jaCAlcyBpcyB1cCB0byBkYXRlLlxuIgogbXNnc3RyICLlvZPliY3liIbmlK8gJXMg5piv5pyA5paw55qE44CCXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MSBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MDcKLSMsIHNoLWZvcm1hdAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMTkwCiBtc2dpZCAiSEVBRCBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLiIKIG1zZ3N0ciAiSEVBRCDmmK/mnIDmlrDnmoTvvIzlvLrliLblj5jln7rjgIIiCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ5MworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkN1cnJlbnQgYnJhbmNoICVzIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuXG4iCiBtc2dzdHIgIuW9k+WJjeWIhuaUryAlcyDmmK/mnIDmlrDnmoTvvIzlvLrliLblj5jln7rjgIJcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTAxIGdpdC1sZWdhY3ktcmViYXNlLnNoOjIwOAorIzogYnVpbHRpbi9yZWJhc2UuYzoyMjAwCiBtc2dpZCAiVGhlIHByZS1yZWJhc2UgaG9vayByZWZ1c2VkIHRvIHJlYmFzZS4iCiBtc2dzdHIgInByZS1yZWJhc2Ug6ZKp5a2Q5ouS57ud5LqG5Y+Y5Z+65pON5L2c44CCIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1MDgKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIwNwogIywgYy1mb3JtYXQKIG1zZ2lkICJDaGFuZ2VzIHRvICVzOlxuIgogbXNnc3RyICLliLAgJXMg55qE5Y+Y5pu077yaXG4iCiAKLSM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxMQorIzogYnVpbHRpbi9yZWJhc2UuYzoyMjEwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkNoYW5nZXMgZnJvbSAlcyB0byAlczpcbiIKIG1zZ3N0ciAi5LuOICVzIOWIsCAlcyDnmoTlj5jmm7TvvJpcbiIKIAotIzogYnVpbHRpbi9yZWJhc2UuYzoxNTM2CisjOiBidWlsdGluL3JlYmFzZS5jOjIyMzUKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uXG4iCiBtc2dzdHIgIummluWFiO+8jOWbnumAgOWktOaMh+mSiOS7peS+v+WcqOWFtuS4iumHjeaUvuaCqOeahOW3peS9nC4uLlxuIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1NDMKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjI0NAogbXNnaWQgIkNvdWxkIG5vdCBkZXRhY2ggSEVBRCIKIG1zZ3N0ciAi5peg5rOV5YiG56a75aS05oyH6ZKIIgogCi0jOiBidWlsdGluL3JlYmFzZS5jOjE1NTIKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjI1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJGYXN0LWZvcndhcmRlZCAlcyB0byAlcy5cbiIKIG1zZ3N0ciAi5b+r6L+bICVzIOWIsCAlc+OAglxuIgogCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoyNAotbXNnaWQgIm5vIEhFQUQ/IgotbXNnc3RyICLmsqHmnIkgSEVBRO+8nyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6NTEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgJXMiCi1tc2dzdHIgIuaXoOazleWIm+W7uuS4tOaXtueahCAlcyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6NTcKLW1zZ2lkICJjb3VsZCBub3QgbWFyayBhcyBpbnRlcmFjdGl2ZSIKLW1zZ3N0ciAi5peg5rOV5qCH6K6w5Li65Lqk5LqS5byPIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxMDEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiY291bGQgbm90IG9wZW4gJXMiCi1tc2dzdHIgIuaXoOazleaJk+W8gCAlcyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTE0Ci1tc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIHRvZG8gbGlzdCIKLW1zZ3N0ciAi5peg5rOV55Sf5oiQ5b6F5Yqe5YiX6KGoIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxMjkKLW1zZ2lkICJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPG9wdGlvbnM+XSIKLW1zZ3N0ciAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzzpgInpobk+XSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTQ4Ci1tc2dpZCAia2VlcCBlbXB0eSBjb21taXRzIgotbXNnc3RyICLkv53mjIHnqbrmj5DkuqQiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE1MCBidWlsdGluL3JldmVydC5jOjEyNAotbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKLW1zZ3N0ciAi5YWB6K645o+Q5Lqk6K+05piO5Li656m6IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTEKLW1zZ2lkICJyZWJhc2UgbWVyZ2UgY29tbWl0cyIKLW1zZ3N0ciAi5a+55ZCI5bm25o+Q5Lqk5Y+Y5Z+6IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTMKLW1zZ2lkICJrZWVwIG9yaWdpbmFsIGJyYW5jaCBwb2ludHMgb2YgY291c2lucyIKLW1zZ3N0ciAi5L+d5oyB5YWE5byf5o+Q5Lqk55qE5Y6f5aeL5YiG5pSv54K5IgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTUKLW1zZ2lkICJtb3ZlIGNvbW1pdHMgdGhhdCBiZWdpbiB3aXRoIHNxdWFzaCEvZml4dXAhIgotbXNnc3RyICLnp7vliqjku6Ugc3F1YXNoIS9maXh1cCEg5byA5aS055qE5o+Q5LqkIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNTYKLW1zZ2lkICJzaWduIGNvbW1pdHMiCi1tc2dzdHIgIuetvuWQjeaPkOS6pCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTU4Ci1tc2dpZCAiY29udGludWUgcmViYXNlIgotbXNnc3RyICLnu6fnu63lj5jln7oiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2MAotbXNnaWQgInNraXAgY29tbWl0IgotbXNnc3RyICLot7Pov4fmj5DkuqQiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2MQotbXNnaWQgImVkaXQgdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAi5Y+Y5Z+65b6F5Yqe5YiX6KGoIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNjMKLW1zZ2lkICJzaG93IHRoZSBjdXJyZW50IHBhdGNoIgotbXNnc3RyICLmmL7npLrlvZPliY3ooaXkuIEiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2NgotbXNnaWQgInNob3J0ZW4gY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgotbXNnc3RyICLnvKnnn63lvoXlip7liJfooajkuK3nmoTmj5DkuqTlj7ciCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE2OAotbXNnaWQgImV4cGFuZCBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCi1tc2dzdHIgIuaJqeWxleW+heWKnuWIl+ihqOS4reeahOaPkOS6pOWPtyIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTcwCi1tc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKLW1zZ3N0ciAi5qOA5p+l5b6F5Yqe5YiX6KGoIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzIKLW1zZ2lkICJyZWFycmFuZ2UgZml4dXAvc3F1YXNoIGxpbmVzIgotbXNnc3RyICLph43mlrDmjpLliJcgZml4dXAvc3F1YXNoIOihjCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc0Ci1tc2dpZCAiaW5zZXJ0IGV4ZWMgY29tbWFuZHMgaW4gdG9kbyBsaXN0IgotbXNnc3RyICLlnKjlvoXlip7liJfooajkuK3mj5LlhaUgZXhlYyDmiafooYzlkb3ku6QiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NQotbXNnaWQgIm9udG8iCi1tc2dzdHIgIm9udG8iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE3NwotbXNnaWQgInJlc3RyaWN0LXJldmlzaW9uIgotbXNnc3RyICJyZXN0cmljdC1yZXZpc2lvbiIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc3Ci1tc2dpZCAicmVzdHJpY3QgcmV2aXNpb24iCi1tc2dzdHIgIumZkOWItueJiOacrCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTc4Ci1tc2dpZCAic3F1YXNoLW9udG8iCi1tc2dzdHIgInNxdWFzaC1vbnRvIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxNzkKLW1zZ2lkICJzcXVhc2ggb250byIKLW1zZ3N0ciAic3F1YXNoIG9udG8iCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MQotbXNnaWQgInRoZSB1cHN0cmVhbSBjb21taXQiCi1tc2dzdHIgIuS4iua4uOaPkOS6pCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTgyCi1tc2dpZCAiaGVhZC1uYW1lIgotbXNnc3RyICJoZWFkLW5hbWUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4MgotbXNnaWQgImhlYWQgbmFtZSIKLW1zZ3N0ciAiaGVhZCDlkI3np7AiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE4NwotbXNnaWQgInJlYmFzZSBzdHJhdGVneSIKLW1zZ3N0ciAi5Y+Y5Z+6562W55WlIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODgKLW1zZ2lkICJzdHJhdGVneS1vcHRzIgotbXNnc3RyICJzdHJhdGVneS1vcHRzIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxODkKLW1zZ2lkICJzdHJhdGVneSBvcHRpb25zIgotbXNnc3RyICLnrZbnlaXpgInpobkiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MAotbXNnaWQgInN3aXRjaC10byIKLW1zZ3N0ciAi5YiH5o2i5YiwIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTEKLW1zZ2lkICJ0aGUgYnJhbmNoIG9yIGNvbW1pdCB0byBjaGVja291dCIKLW1zZ3N0ciAi6KaB5qOA5Ye655qE5YiG5pSv5oiW5o+Q5LqkIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTIKLW1zZ2lkICJvbnRvLW5hbWUiCi1tc2dzdHIgIm9udG8tbmFtZSIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MTkyCi1tc2dpZCAib250byBuYW1lIgotbXNnc3RyICJvbnRvIG5hbWUiCi0KLSM6IGJ1aWx0aW4vcmViYXNlLS1pbnRlcmFjdGl2ZS5jOjE5MwotbXNnaWQgImNtZCIKLW1zZ3N0ciAiY21kIgotCi0jOiBidWlsdGluL3JlYmFzZS0taW50ZXJhY3RpdmUuYzoxOTMKLW1zZ2lkICJ0aGUgY29tbWFuZCB0byBydW4iCi1tc2dzdHIgIuimgeaJp+ihjOeahOWRveS7pCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MjIwCi1tc2dpZCAiLS1bbm8tXXJlYmFzZS1jb3VzaW5zIGhhcyBubyBlZmZlY3Qgd2l0aG91dCAtLXJlYmFzZS1tZXJnZXMiCi1tc2dzdHIgIuS4jeS9v+eUqCAtLXJlYmFzZS1tZXJnZXPvvIzliJkgLS1bbm8tXXJlYmFzZS1jb3VzaW5zIOayoeacieaViOaenCIKLQotIzogYnVpbHRpbi9yZWJhc2UtLWludGVyYWN0aXZlLmM6MjI2Ci1tc2dpZCAiYSBiYXNlIGNvbW1pdCBtdXN0IGJlIHByb3ZpZGVkIHdpdGggLS11cHN0cmVhbSBvciAtLW9udG8iCi1tc2dzdHIgIuS9v+eUqCAtLXVwc3RyZWFtIOaIliAtLW9udG8g5b+F6aG75o+Q5L6b5LiA5Liq5Z+657q/5o+Q5LqkIgotCiAjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjMzCiBtc2dpZCAiZ2l0IHJlY2VpdmUtcGFjayA8Z2l0LWRpcj4iCiBtc2dzdHIgImdpdCByZWNlaXZlLXBhY2sgPOS7k+W6k+ebruW9lT4iCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODMwCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjgyMQogbXNnaWQgIiIKICJCeSBkZWZhdWx0LCB1cGRhdGluZyB0aGUgY3VycmVudCBicmFuY2ggaW4gYSBub24tYmFyZSByZXBvc2l0b3J5XG4iCiAiaXMgZGVuaWVkLCBiZWNhdXNlIGl0IHdpbGwgbWFrZSB0aGUgaW5kZXggYW5kIHdvcmsgdHJlZSBpbmNvbnNpc3RlbnRcbiIKQEAgLTE1Mzg2LDcgKzE4NDkxLDcgQEAKICLoi6XopoHlsY/olL3mraTkv6Hmga/kuJTkv53mjIHpu5jorqTooYzkuLrvvIzorr7nva4gJ3JlY2VpdmUuZGVueUN1cnJlbnRCcmFuY2gnXG4iCiAi6YWN572u5Y+Y6YeP5Li6ICdyZWZ1c2Un44CCIgogCi0jOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjg1MAorIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzo4NDEKIG1zZ2lkICIiCiAiQnkgZGVmYXVsdCwgZGVsZXRpbmcgdGhlIGN1cnJlbnQgYnJhbmNoIGlzIGRlbmllZCwgYmVjYXVzZSB0aGUgbmV4dFxuIgogIidnaXQgY2xvbmUnIHdvbid0IHJlc3VsdCBpbiBhbnkgZmlsZSBjaGVja2VkIG91dCwgY2F1c2luZyBjb25mdXNpb24uXG4iCkBAIC0xNTQwNSwyNCArMTg1MTAsNzkgQEAKICJcbiIKICLoi6XopoHlsY/olL3mraTkv6Hmga/vvIzmgqjlj6/ku6Xorr7nva7lroPkuLogJ3JlZnVzZSfjgIIiCiAKLSM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6MTkyOQorIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTM4CiBtc2dpZCAicXVpZXQiCiBtc2dzdHIgIumdmem7mOaooeW8jyIKIAotIzogYnVpbHRpbi9yZWNlaXZlLXBhY2suYzoxOTQzCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NTIKIG1zZ2lkICJZb3UgbXVzdCBzcGVjaWZ5IGEgZGlyZWN0b3J5LiIKIG1zZ3N0ciAi5oKo5b+F6aG75oyH5a6a5LiA5Liq55uu5b2V44CCIgogCi0jOiBidWlsdGluL3JlZmxvZy5jOjU2MyBidWlsdGluL3JlZmxvZy5jOjU2OAorIzogYnVpbHRpbi9yZWZsb2cuYzoxNworbXNnaWQgIiIKKyJnaXQgcmVmbG9nIGV4cGlyZSBbLS1leHBpcmU9PHRpbWU+XSBbLS1leHBpcmUtdW5yZWFjaGFibGU9PHRpbWU+XSBbLS0iCisicmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1zdGFsZS1maXhdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gWy0tYWxsXSAiCisiPHJlZnM+Li4uIgorbXNnc3RyICIiCisiZ2l0IHJlZmxvZyBleHBpcmUgWy0tZXhwaXJlPTzml7bpl7Q+XSBbLS1leHBpcmUtdW5yZWFjaGFibGU9POaXtumXtD5dIFstLSIKKyJyZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLXN0YWxlLWZpeF0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSBbLS1hbGxdIDzlvJUiCisi55SoPi4uLiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzoyMgorbXNnaWQgIiIKKyJnaXQgcmVmbG9nIGRlbGV0ZSBbLS1yZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLWRyeS1ydW4gfCAtbl0gWy0tdmVyYm9zZV0gIgorIjxyZWZzPi4uLiIKK21zZ3N0ciAiIgorImdpdCByZWZsb2cgZGVsZXRlIFstLXJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSA85byVIgorIueUqD4uLi4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6MjUKK21zZ2lkICJnaXQgcmVmbG9nIGV4aXN0cyA8cmVmPiIKK21zZ3N0ciAiZ2l0IHJlZmxvZyBleGlzdHMgPOW8leeUqD4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NTY4IGJ1aWx0aW4vcmVmbG9nLmM6NTczCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgdGltZXN0YW1wIgogbXNnc3RyICInJXMnIOS4jeaYr+S4gOS4quacieaViOeahOaXtumXtOaIsyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNgorIzogYnVpbHRpbi9yZWZsb2cuYzo2MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWFya2luZyByZWFjaGFibGUgb2JqZWN0cy4uLiIKK21zZ3N0ciAi5q2j5Zyo5qCH6K6w5Y+v6L6+5a+56LGhLi4uIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwb2ludHMgbm93aGVyZSEiCittc2dzdHIgIiVzIOaMh+WQkeS4jeWtmOWcqO+8gSIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo2OTYKK21zZ2lkICJubyByZWZsb2cgc3BlY2lmaWVkIHRvIGRlbGV0ZSIKK21zZ3N0ciAi5pyq5oyH5a6a6KaB5Yig6Zmk55qE5byV55So5pel5b+XIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjcwNQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSByZWZsb2c6ICVzIgorbXNnc3RyICLkuI3mmK/kuIDkuKrlvJXnlKjml6Xlv5fvvJolcyIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcmVmbG9nIGZvciAnJXMnIgorbXNnc3RyICLmsqHmnIkgJyVzJyDnmoTlvJXnlKjml6Xlv5ciCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzU2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmIGZvcm1hdDogJXMiCittc2dzdHIgIuaXoOaViOeahOW8leeUqOagvOW8j++8miVzIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjc2NQorbXNnaWQgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCittc2dzdHIgImdpdCByZWZsb2cgWyBzaG93IHwgZXhwaXJlIHwgZGVsZXRlIHwgZXhpc3RzIF0iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcKIG1zZ2lkICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0iCiBtc2dzdHIgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNworIzogYnVpbHRpbi9yZW1vdGUuYzoxOAogbXNnaWQgIiIKICJnaXQgcmVtb3RlIGFkZCBbLXQgPGJyYW5jaD5dIFstbSA8bWFzdGVyPl0gWy1mXSBbLS10YWdzIHwgLS1uby10YWdzXSBbLS0iCiAibWlycm9yPTxmZXRjaHxwdXNoPl0gPG5hbWU+IDx1cmw+IgpAQCAtMTU0MzAsODEgKzE4NTkwLDgxIEBACiAiZ2l0IHJlbW90ZSBhZGQgWy10IDzliIbmlK8+XSBbLW0gPG1hc3Rlcj5dIFstZl0gWy0tdGFncyB8IC0tbm8tdGFnc10gWy0tIgogIm1pcnJvcj08ZmV0Y2h8cHVzaD5dIDzlkI3np7A+IDzlnLDlnYA+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE4IGJ1aWx0aW4vcmVtb3RlLmM6MzgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTkgYnVpbHRpbi9yZW1vdGUuYzozOQogbXNnaWQgImdpdCByZW1vdGUgcmVuYW1lIDxvbGQ+IDxuZXc+IgogbXNnc3RyICJnaXQgcmVtb3RlIHJlbmFtZSA85pen5ZCN56ewPiA85paw5ZCN56ewPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOSBidWlsdGluL3JlbW90ZS5jOjQzCisjOiBidWlsdGluL3JlbW90ZS5jOjIwIGJ1aWx0aW4vcmVtb3RlLmM6NDQKIG1zZ2lkICJnaXQgcmVtb3RlIHJlbW92ZSA8bmFtZT4iCiBtc2dzdHIgImdpdCByZW1vdGUgcmVtb3ZlIDzlkI3np7A+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIwIGJ1aWx0aW4vcmVtb3RlLmM6NDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjEgYnVpbHRpbi9yZW1vdGUuYzo0OQogbXNnaWQgImdpdCByZW1vdGUgc2V0LWhlYWQgPG5hbWU+ICgtYSB8IC0tYXV0byB8IC1kIHwgLS1kZWxldGUgfCA8YnJhbmNoPikiCiBtc2dzdHIgImdpdCByZW1vdGUgc2V0LWhlYWQgPOWQjeensD4gKC1hIHwgLS1hdXRvIHwgLWQgfCAtLWRlbGV0ZSB8IDzliIbmlK8+KSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyMQorIzogYnVpbHRpbi9yZW1vdGUuYzoyMgogbXNnaWQgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSBzaG93IFstbl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gc2hvdyBbLW5dIDzlkI3np7A+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIyCisjOiBidWlsdGluL3JlbW90ZS5jOjIzCiBtc2dpZCAiZ2l0IHJlbW90ZSBwcnVuZSBbLW4gfCAtLWRyeS1ydW5dIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBwcnVuZSBbLW4gfCAtLWRyeS1ydW5dIDzlkI3np7A+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIzCisjOiBidWlsdGluL3JlbW90ZS5jOjI0CiBtc2dpZCAiIgogImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSB1cGRhdGUgWy1wIHwgLS1wcnVuZV0gWyg8Z3JvdXA+IHwgPHJlbW90ZT4pLi4uXSIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHVwZGF0ZSBbLXAgfCAtLXBydW5lXSBbKDznu4Q+IHwgPOi/nOeoiz4pLi4uXSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNAorIzogYnVpbHRpbi9yZW1vdGUuYzoyNQogbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIFstLWFkZF0gPG5hbWU+IDxicmFuY2g+Li4uIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyBbLS1hZGRdIDzlkI3np7A+IDzliIbmlK8+Li4uIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjI1IGJ1aWx0aW4vcmVtb3RlLmM6NzQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjYgYnVpbHRpbi9yZW1vdGUuYzo3NQogbXNnaWQgImdpdCByZW1vdGUgZ2V0LXVybCBbLS1wdXNoXSBbLS1hbGxdIDxuYW1lPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBnZXQtdXJsIFstLXB1c2hdIFstLWFsbF0gPOWQjeensD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjYgYnVpbHRpbi9yZW1vdGUuYzo3OQorIzogYnVpbHRpbi9yZW1vdGUuYzoyNyBidWlsdGluL3JlbW90ZS5jOjgwCiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIFstLXB1c2hdIDxuYW1lPiA8bmV3dXJsPiBbPG9sZHVybD5dIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgWy0tcHVzaF0gPOWQjeensD4gPOaWsOeahOWcsOWdgD4gWzzml6fnmoTlnLDlnYA+XSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoyNyBidWlsdGluL3JlbW90ZS5jOjgwCisjOiBidWlsdGluL3JlbW90ZS5jOjI4IGJ1aWx0aW4vcmVtb3RlLmM6ODEKIG1zZ2lkICJnaXQgcmVtb3RlIHNldC11cmwgLS1hZGQgPG5hbWU+IDxuZXd1cmw+IgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC11cmwgLS1hZGQgPOWQjeensD4gPOaWsOeahOWcsOWdgD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MjggYnVpbHRpbi9yZW1vdGUuYzo4MQorIzogYnVpbHRpbi9yZW1vdGUuYzoyOSBidWlsdGluL3JlbW90ZS5jOjgyCiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDxuYW1lPiA8dXJsPiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDzlkI3np7A+IDzlnLDlnYA+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjMzCisjOiBidWlsdGluL3JlbW90ZS5jOjM0CiBtc2dpZCAiZ2l0IHJlbW90ZSBhZGQgWzxvcHRpb25zPl0gPG5hbWU+IDx1cmw+IgogbXNnc3RyICJnaXQgcmVtb3RlIGFkZCBbPOmAiemhuT5dIDzlkI3np7A+IDzlnLDlnYA+IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjUzCisjOiBidWlsdGluL3JlbW90ZS5jOjU0CiBtc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgPG5hbWU+IDxicmFuY2g+Li4uIgogbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyA85ZCN56ewPiA85YiG5pSvPi4uLiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo1NAorIzogYnVpbHRpbi9yZW1vdGUuYzo1NQogbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIC0tYWRkIDxuYW1lPiA8YnJhbmNoPi4uLiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgLS1hZGQgPOWQjeensD4gPOWIhuaUrz4uLi4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjAKIG1zZ2lkICJnaXQgcmVtb3RlIHNob3cgWzxvcHRpb25zPl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHNob3cgWzzpgInpobk+XSA85ZCN56ewPiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NAorIzogYnVpbHRpbi9yZW1vdGUuYzo2NQogbXNnaWQgImdpdCByZW1vdGUgcHJ1bmUgWzxvcHRpb25zPl0gPG5hbWU+IgogbXNnc3RyICJnaXQgcmVtb3RlIHBydW5lIFs86YCJ6aG5Pl0gPOWQjeensD4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6NjkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzAKIG1zZ2lkICJnaXQgcmVtb3RlIHVwZGF0ZSBbPG9wdGlvbnM+XSBbPGdyb3VwPiB8IDxyZW1vdGU+XS4uLiIKIG1zZ3N0ciAiZ2l0IHJlbW90ZSB1cGRhdGUgWzzpgInpobk+XSBbPOe7hD4gfCA86L+c56iLPl0uLi4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRpbmcgJXMiCiBtc2dzdHIgIuabtOaWsCAlcyDkuK0iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMwCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMQogbXNnaWQgIiIKICItLW1pcnJvciBpcyBkYW5nZXJvdXMgYW5kIGRlcHJlY2F0ZWQ7IHBsZWFzZVxuIgogIlx0IHVzZSAtLW1pcnJvcj1mZXRjaCBvciAtLW1pcnJvcj1wdXNoIGluc3RlYWQiCkBAIC0xNTUxMiw4MiArMTg2NzIsOTggQEAKICItLW1pcnJvciDpgInpobnljbHpmankuJTov4fml7bvvIzor7fkvb/nlKggLS1taXJyb3I9ZmV0Y2hcbiIKICJcdCDmiJYgLS1taXJyb3I9cHVzaCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gbWlycm9yIGFyZ3VtZW50OiAlcyIKIG1zZ3N0ciAi5pyq55+l55qE6ZWc5YOP5Y+C5pWw77yaJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYzCisjOiBidWlsdGluL3JlbW90ZS5jOjE2NAogbXNnaWQgImZldGNoIHRoZSByZW1vdGUgYnJhbmNoZXMiCiBtc2dzdHIgIuaKk+WPlui/nOeoi+eahOWIhuaUryIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY2CiBtc2dpZCAiaW1wb3J0IGFsbCB0YWdzIGFuZCBhc3NvY2lhdGVkIG9iamVjdHMgd2hlbiBmZXRjaGluZyIKIG1zZ3N0ciAi5oqT5Y+W5pe25a+85YWl5omA5pyJ55qE5qCH562+5ZKM5YWz6IGU5a+56LGhIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjkKIG1zZ2lkICJvciBkbyBub3QgZmV0Y2ggYW55IHRhZyBhdCBhbGwgKC0tbm8tdGFncykiCiBtc2dzdHIgIuaIluS4jeaKk+WPluS7u+S9leagh+etvu+8iC0tbm8tdGFnc++8iSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNzAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcxCiBtc2dpZCAiYnJhbmNoKGVzKSB0byB0cmFjayIKIG1zZ3N0ciAi6Lef6Liq55qE5YiG5pSvIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE3MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNzIKIG1zZ2lkICJtYXN0ZXIgYnJhbmNoIgogbXNnc3RyICLkuLvnur/liIbmlK8iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTczCisjOiBidWlsdGluL3JlbW90ZS5jOjE3NAogbXNnaWQgInNldCB1cCByZW1vdGUgYXMgYSBtaXJyb3IgdG8gcHVzaCB0byBvciBmZXRjaCBmcm9tIgogbXNnc3RyICLmiorov5znqIvorr7nva7kuLrnlKjku6XmjqjpgIHmiJbmipPlj5bnmoTplZzlg48iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg1CisjOiBidWlsdGluL3JlbW90ZS5jOjE4NgogbXNnaWQgInNwZWNpZnlpbmcgYSBtYXN0ZXIgYnJhbmNoIG1ha2VzIG5vIHNlbnNlIHdpdGggLS1taXJyb3IiCiBtc2dzdHIgIuaMh+WumuS4gOS4qiBtYXN0ZXIg5YiG5pSv5bm25L2/55SoIC0tbWlycm9yIOmAiemhueayoeacieaEj+S5iSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxODcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTg4CiBtc2dpZCAic3BlY2lmeWluZyBicmFuY2hlcyB0byB0cmFjayBtYWtlcyBzZW5zZSBvbmx5IHdpdGggZmV0Y2ggbWlycm9ycyIKIG1zZ3N0ciAi5oyH5a6a6KaB6Lef6Liq55qE5YiG5pSv5Y+q5Zyo5LiO6I635Y+W6ZWc5YOP5ZCM5pe25L2/55So5omN5pyJ5oSP5LmJIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE5NCBidWlsdGluL3JlbW90ZS5jOjYzNgorIzogYnVpbHRpbi9yZW1vdGUuYzoxOTUgYnVpbHRpbi9yZW1vdGUuYzo2OTYKICMsIGMtZm9ybWF0CiBtc2dpZCAicmVtb3RlICVzIGFscmVhZHkgZXhpc3RzLiIKIG1zZ3N0ciAi6L+c56iLICVzIOW3sue7j+WtmOWcqOOAgiIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxOTggYnVpbHRpbi9yZW1vdGUuYzo2NDAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk5IGJ1aWx0aW4vcmVtb3RlLmM6NzAwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVtb3RlIG5hbWUiCiBtc2dzdHIgIiclcycg5LiN5piv5LiA5Liq5pyJ5pWI55qE6L+c56iL5ZCN56ewIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjIzOAorIzogYnVpbHRpbi9yZW1vdGUuYzoyMzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldHVwIG1hc3RlciAnJXMnIgogbXNnc3RyICLml6Dms5Xorr7nva4gbWFzdGVyICclcyciCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MzQ0CisjOiBidWlsdGluL3JlbW90ZS5jOjM1NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgZ2V0IGZldGNoIG1hcCBmb3IgcmVmc3BlYyAlcyIKIG1zZ3N0ciAi5peg5rOV5b6X5Yiw5byV55So6KeE5qC8ICVzIOeahOiOt+WPluWIl+ihqCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo0NDMgYnVpbHRpbi9yZW1vdGUuYzo0NTEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NDUzIGJ1aWx0aW4vcmVtb3RlLmM6NDYxCiBtc2dpZCAiKG1hdGNoaW5nKSIKIG1zZ3N0ciAi77yI5Yy56YWN77yJIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjQ1NQorIzogYnVpbHRpbi9yZW1vdGUuYzo0NjUKIG1zZ2lkICIoZGVsZXRlKSIKIG1zZ3N0ciAi77yI5Yig6Zmk77yJIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjYyOSBidWlsdGluL3JlbW90ZS5jOjc2NSBidWlsdGluL3JlbW90ZS5jOjg2NAorIzogYnVpbHRpbi9yZW1vdGUuYzo2NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHNldCAnJXMnIgorbXNnc3RyICLkuI3og73orr7nva4gJyVzJyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo2NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSAlcyBjb25maWd1cmF0aW9uIHJlbW90ZS5wdXNoRGVmYXVsdCBpbjpcbiIKKyJcdCVzOiVkXG4iCisibm93IG5hbWVzIHRoZSBub24tZXhpc3RlbnQgcmVtb3RlICclcyciCittc2dzdHIgIiIKKyLphY3nva7vvIglc++8iXJlbW90ZS5wdXNoRGVmYXVsdCDkvY3kuo7vvJpcbiIKKyJcdCVzOiVkXG4iCisi546w5Zyo5Zyo5Li65LiN5a2Y5Zyo55qE6L+c56iL5ZCNICclcycg5ZG95ZCNIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjY4OSBidWlsdGluL3JlbW90ZS5jOjgzMiBidWlsdGluL3JlbW90ZS5jOjk0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJObyBzdWNoIHJlbW90ZTogJyVzJyIKIG1zZ3N0ciAi5rKh5pyJ5q2k6L+c56iL5LuT5bqT77yaJyVzJyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NDYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzA2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCByZW5hbWUgY29uZmlnIHNlY3Rpb24gJyVzJyB0byAnJXMnIgogbXNnc3RyICLkuI3og73ph43lkb3lkI3phY3nva7lsI/oioIgJyVzJyDliLAgJyVzJyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo2NjYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzI2CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJOb3QgdXBkYXRpbmcgbm9uLWRlZmF1bHQgZmV0Y2ggcmVmc3BlY1xuIgpAQCAtMTU1OTgsMTcgKzE4Nzc0LDE3IEBACiAiXHQlc1xuIgogIlx05aaC5p6c5b+F6KaB6K+35omL5Yqo5pu05paw6YWN572u44CCIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjcwMgorIzogYnVpbHRpbi9yZW1vdGUuYzo3NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiZGVsZXRpbmcgJyVzJyBmYWlsZWQiCiBtc2dzdHIgIuWIoOmZpCAnJXMnIOWksei0pSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo3MzYKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6ODAwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNyZWF0aW5nICclcycgZmFpbGVkIgogbXNnc3RyICLliJvlu7ogJyVzJyDlpLHotKUiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6ODAyCisjOiBidWlsdGluL3JlbW90ZS5jOjg3NgogbXNnaWQgIiIKICJOb3RlOiBBIGJyYW5jaCBvdXRzaWRlIHRoZSByZWZzL3JlbW90ZXMvIGhpZXJhcmNoeSB3YXMgbm90IHJlbW92ZWQ7XG4iCiAidG8gZGVsZXRlIGl0LCB1c2U6IgpAQCAtMTU2MTgsMTE4ICsxODc5NCwxMTggQEAKIG1zZ3N0clswXSAi5rOo5oSP77yacmVmL3JlbW90ZXMg5bGC57qn5LmL5aSW55qE5LiA5Liq5YiG5pSv5pyq6KKr56e76Zmk44CC6KaB5Yig6Zmk5a6D77yM5L2/55So77yaIgogbXNnc3RyWzFdICLms6jmhI/vvJpyZWYvcmVtb3RlcyDlsYLnuqfkuYvlpJbnmoTkuIDkupvliIbmlK/mnKrooqvnp7vpmaTjgILopoHliKDpmaTlroPku6zvvIzkvb/nlKjvvJoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6ODE2CisjOiBidWlsdGluL3JlbW90ZS5jOjg5MAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIGNvbmZpZyBzZWN0aW9uICclcyciCiBtc2dzdHIgIuS4jeiDveenu+mZpOmFjee9ruWwj+iKgiAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkxNworIzogYnVpbHRpbi9yZW1vdGUuYzo5OTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIG5ldyAobmV4dCBmZXRjaCB3aWxsIHN0b3JlIGluIHJlbW90ZXMvJXMpIgogbXNnc3RyICIg5paw55qE77yI5LiL5LiA5qyh6I635Y+W5bCG5a2Y5YKo5LqOIHJlbW90ZXMvJXPvvIkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTIwCisjOiBidWlsdGluL3JlbW90ZS5jOjk5NgogbXNnaWQgIiB0cmFja2VkIgogbXNnc3RyICIg5bey6Lef6LiqIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkyMgorIzogYnVpbHRpbi9yZW1vdGUuYzo5OTgKIG1zZ2lkICIgc3RhbGUgKHVzZSAnZ2l0IHJlbW90ZSBwcnVuZScgdG8gcmVtb3ZlKSIKIG1zZ3N0ciAiIOi/h+aXtu+8iOS9v+eUqCAnZ2l0IHJlbW90ZSBwcnVuZScg5p2l56e76Zmk77yJIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjkyNAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDAwCiBtc2dpZCAiID8/PyIKIG1zZ3N0ciAiID8/PyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NjUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA0MQogIywgYy1mb3JtYXQKIG1zZ2lkICJpbnZhbGlkIGJyYW5jaC4lcy5tZXJnZTsgY2Fubm90IHJlYmFzZSBvbnRvID4gMSBicmFuY2giCiBtc2dzdHIgIuaXoOaViOeahCBicmFuY2guJXMubWVyZ2XvvIzkuI3og73lj5jln7rliLDkuIDkuKrku6XkuIrnmoTliIbmlK8iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTc0CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAicmViYXNlcyBpbnRlcmFjdGl2ZWx5IG9udG8gcmVtb3RlICVzIgogbXNnc3RyICLkuqTkupLlvI/lj5jln7rliLDov5znqIsgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTc2CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTIKICMsIGMtZm9ybWF0CiBtc2dpZCAicmViYXNlcyBpbnRlcmFjdGl2ZWx5ICh3aXRoIG1lcmdlcykgb250byByZW1vdGUgJXMiCiBtc2dzdHIgIuS6pOS6kuW8j+WPmOWfuu+8iOWQq+WQiOW5tuaPkOS6pO+8ieWIsOi/nOeoiyAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzo5NzkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1NQogIywgYy1mb3JtYXQKIG1zZ2lkICJyZWJhc2VzIG9udG8gcmVtb3RlICVzIgogbXNnc3RyICLlj5jln7rliLDov5znqIsgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTgzCisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIG1lcmdlcyB3aXRoIHJlbW90ZSAlcyIKIG1zZ3N0ciAiIOS4jui/nOeoiyAlcyDlkIjlubYiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6OTg2CisjOiBidWlsdGluL3JlbW90ZS5jOjEwNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAibWVyZ2VzIHdpdGggcmVtb3RlICVzIgogbXNnc3RyICLkuI7ov5znqIsgJXMg5ZCI5bm2IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjk4OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMDY1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiUtKnMgICAgYW5kIHdpdGggcmVtb3RlICVzXG4iCiBtc2dzdHIgIiUtKnMgICAg5Lul5Y+K5ZKM6L+c56iLICVzXG4iCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzMgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTA4CiBtc2dpZCAiY3JlYXRlIgogbXNnc3RyICLliJvlu7oiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzNQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTExCiBtc2dpZCAiZGVsZXRlIgogbXNnc3RyICLliKDpmaQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTAzOQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMTE1CiBtc2dpZCAidXAgdG8gZGF0ZSIKIG1zZ3N0ciAi5pyA5pawIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNDIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExOAogbXNnaWQgImZhc3QtZm9yd2FyZGFibGUiCiBtc2dzdHIgIuWPr+W/q+i/myIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDQ1CisjOiBidWlsdGluL3JlbW90ZS5jOjExMjEKIG1zZ2lkICJsb2NhbCBvdXQgb2YgZGF0ZSIKIG1zZ3N0ciAi5pys5Zyw5bey6L+H5pe2IgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNTIKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEyOAogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBmb3JjZXMgdG8gJS0qcyAoJXMpIgogbXNnc3RyICIgICAgJS0qcyDlvLrliLbmjqjpgIHoh7MgJS0qcyAoJXMpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNTUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzMQogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBwdXNoZXMgdG8gJS0qcyAoJXMpIgogbXNnc3RyICIgICAgJS0qcyDmjqjpgIHoh7MgJS0qcyAoJXMpIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEwNTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzNQogIywgYy1mb3JtYXQKIG1zZ2lkICIgICAgJS0qcyBmb3JjZXMgdG8gJXMiCiBtc2dzdHIgIiAgICAlLSpzIOW8uuWItuaOqOmAgeiHsyAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMDYyCisjOiBidWlsdGluL3JlbW90ZS5jOjExMzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiICAgICUtKnMgcHVzaGVzIHRvICVzIgogbXNnc3RyICIgICAgJS0qcyDmjqjpgIHoh7MgJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzMAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjA2CiBtc2dpZCAiZG8gbm90IHF1ZXJ5IHJlbW90ZXMiCiBtc2dzdHIgIuS4jeafpeivoui/nOeoiyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTU3CisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiKiByZW1vdGUgJXMiCiBtc2dzdHIgIiog6L+c56iLICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNTgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIzNAogIywgYy1mb3JtYXQKIG1zZ2lkICIgIEZldGNoIFVSTDogJXMiCiBtc2dzdHIgIiAg6I635Y+W5Zyw5Z2A77yaJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE1OSBidWlsdGluL3JlbW90ZS5jOjExNzUgYnVpbHRpbi9yZW1vdGUuYzoxMzE0CisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzUgYnVpbHRpbi9yZW1vdGUuYzoxMjUxIGJ1aWx0aW4vcmVtb3RlLmM6MTM5MAogbXNnaWQgIihubyBVUkwpIgogbXNnc3RyICIo5pegIFVSTCkiCiAKQEAgLTE1NzM3LDMyICsxODkxMywzMiBAQAogIy4gd2l0aCB0aGUgb25lIGluICIgRmV0Y2ggVVJMOiAlcyIKICMuIHRyYW5zbGF0aW9uLgogIy4KLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTE3MyBidWlsdGluL3JlbW90ZS5jOjExNzUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0OSBidWlsdGluL3JlbW90ZS5jOjEyNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBQdXNoICBVUkw6ICVzIgogbXNnc3RyICIgIOaOqOmAgeWcsOWdgO+8miVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExNzcgYnVpbHRpbi9yZW1vdGUuYzoxMTc5IGJ1aWx0aW4vcmVtb3RlLmM6MTE4MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMjUzIGJ1aWx0aW4vcmVtb3RlLmM6MTI1NSBidWlsdGluL3JlbW90ZS5jOjEyNTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBIRUFEIGJyYW5jaDogJXMiCiBtc2dzdHIgIiAgSEVBRCDliIbmlK/vvJolcyIKIAogIyAg6K+R6ICF77ya5Lit5paH5a2X56ym5Liy5ou85o6l77yM5Y+v5Yig6Zmk5YmN5a+856m65qC8Ci0jOiBidWlsdGluL3JlbW90ZS5jOjExNzcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1MwogbXNnaWQgIihub3QgcXVlcmllZCkiCiBtc2dzdHIgIu+8iOacquafpeivou+8iSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTc5CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTUKIG1zZ2lkICIodW5rbm93bikiCiBtc2dzdHIgIu+8iOacquefpe+8iSIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMTgzCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiAgSEVBRCBicmFuY2ggKHJlbW90ZSBIRUFEIGlzIGFtYmlndW91cywgbWF5IGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nKTpcbiIKIG1zZ3N0ciAiICBIRUFEIOWIhuaUr++8iOi/nOeoiyBIRUFEIOaooeeziu+8jOWPr+iDveaYr+S4i+WIl+S4reeahOS4gOS4qu+8ie+8mlxuIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjExOTUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3MQogIywgYy1mb3JtYXQKIG1zZ2lkICIgIFJlbW90ZSBicmFuY2g6JXMiCiBtc2dpZF9wbHVyYWwgIiAgUmVtb3RlIGJyYW5jaGVzOiVzIgpAQCAtMTU3NzAsMTY0ICsxODk0NiwxNTUgQEAKIG1zZ3N0clsxXSAiICDov5znqIvliIbmlK/vvJolcyIKIAogIyAg6K+R6ICF77ya5Lit5paH5a2X56ym5Liy5ou85o6l77yM5Y+v5Yig6Zmk5YmN5a+856m65qC8Ci0jOiBidWlsdGluL3JlbW90ZS5jOjExOTggYnVpbHRpbi9yZW1vdGUuYzoxMjI0CisjOiBidWlsdGluL3JlbW90ZS5jOjEyNzQgYnVpbHRpbi9yZW1vdGUuYzoxMzAwCiBtc2dpZCAiIChzdGF0dXMgbm90IHF1ZXJpZWQpIgogbXNnc3RyICLvvIjnirbmgIHmnKrmn6Xor6LvvIkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTIwNworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjgzCiBtc2dpZCAiICBMb2NhbCBicmFuY2ggY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dpZF9wbHVyYWwgIiAgTG9jYWwgYnJhbmNoZXMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCiBtc2dzdHJbMF0gIiAg5Li6ICdnaXQgcHVsbCcg6YWN572u55qE5pys5Zyw5YiG5pSv77yaIgogbXNnc3RyWzFdICIgIOS4uiAnZ2l0IHB1bGwnIOmFjee9rueahOacrOWcsOWIhuaUr++8miIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjE1CisjOiBidWlsdGluL3JlbW90ZS5jOjEyOTEKIG1zZ2lkICIgIExvY2FsIHJlZnMgd2lsbCBiZSBtaXJyb3JlZCBieSAnZ2l0IHB1c2gnIgogbXNnc3RyICIgIOacrOWcsOW8leeUqOWwhuWcqCAnZ2l0IHB1c2gnIOaXtuiiq+mVnOWDjyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjIxCisjOiBidWlsdGluL3JlbW90ZS5jOjEyOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiICBMb2NhbCByZWYgY29uZmlndXJlZCBmb3IgJ2dpdCBwdXNoJyVzOiIKIG1zZ2lkX3BsdXJhbCAiICBMb2NhbCByZWZzIGNvbmZpZ3VyZWQgZm9yICdnaXQgcHVzaCclczoiCiBtc2dzdHJbMF0gIiAg5Li6ICdnaXQgcHVzaCcg6YWN572u55qE5pys5Zyw5byV55SoJXPvvJoiCiBtc2dzdHJbMV0gIiAg5Li6ICdnaXQgcHVzaCcg6YWN572u55qE5pys5Zyw5byV55SoJXPvvJoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0MgorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzE4CiBtc2dpZCAic2V0IHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCBhY2NvcmRpbmcgdG8gcmVtb3RlIgogbXNnc3RyICLmoLnmja7ov5znqIvorr7nva4gcmVmcy9yZW1vdGVzLzzlkI3np7A+L0hFQUQiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzIwCiBtc2dpZCAiZGVsZXRlIHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCIKIG1zZ3N0ciAi5Yig6ZmkIHJlZnMvcmVtb3Rlcy885ZCN56ewPi9IRUFEIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNTkKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMzNQogbXNnaWQgIkNhbm5vdCBkZXRlcm1pbmUgcmVtb3RlIEhFQUQiCiBtc2dzdHIgIuaXoOazleehruWumui/nOeoiyBIRUFEIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEyNjEKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMzNwogbXNnaWQgIk11bHRpcGxlIHJlbW90ZSBIRUFEIGJyYW5jaGVzLiBQbGVhc2UgY2hvb3NlIG9uZSBleHBsaWNpdGx5IHdpdGg6IgogbXNnc3RyICLlpJrkuKrov5znqIsgSEVBRCDliIbmlK/jgILor7fmmI7noa7lnLDpgInmi6nkuIDkuKrnlKjlkb3ku6TvvJoiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzQ3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBkZWxldGUgJXMiCiBtc2dzdHIgIuaXoOazleWIoOmZpCAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMjc5CisjOiBidWlsdGluL3JlbW90ZS5jOjEzNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm90IGEgdmFsaWQgcmVmOiAlcyIKIG1zZ3N0ciAi5LiN5piv5LiA5Liq5pyJ5pWI5byV55So77yaJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI4MQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzU3CiAjLCBjLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBzZXR1cCAlcyIKIG1zZ3N0ciAi5LiN6IO96K6+572uICVzIgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI5OQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzc1CiAjLCBjLWZvcm1hdAogbXNnaWQgIiAlcyB3aWxsIGJlY29tZSBkYW5nbGluZyEiCiBtc2dzdHIgIiAlcyDlsIbmiJDkuLrmgqznqbrnirbmgIHvvIEiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzAwCisjOiBidWlsdGluL3JlbW90ZS5jOjEzNzYKICMsIGMtZm9ybWF0CiBtc2dpZCAiICVzIGhhcyBiZWNvbWUgZGFuZ2xpbmchIgogbXNnc3RyICIgJXMg5bey5oiQ5Li65oKs56m654q25oCB77yBIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMTAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTM4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJQcnVuaW5nICVzIgogbXNnc3RyICLkv67liaogJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxMQorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzg3CiAjLCBjLWZvcm1hdAogbXNnaWQgIlVSTDogJXMiCiBtc2dzdHIgIlVSTO+8miVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzMjcKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQwMwogIywgYy1mb3JtYXQKIG1zZ2lkICIgKiBbd291bGQgcHJ1bmVdICVzIgogbXNnc3RyICIgKiBb5bCG5Yig6ZmkXSAlcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxMzMwCisjOiBidWlsdGluL3JlbW90ZS5jOjE0MDYKICMsIGMtZm9ybWF0CiBtc2dpZCAiICogW3BydW5lZF0gJXMiCiBtc2dzdHIgIiAqIFvlt7LliKDpmaRdICVzIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjEzNzUKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ1MQogbXNnaWQgInBydW5lIHJlbW90ZXMgYWZ0ZXIgZmV0Y2hpbmciCiBtc2dzdHIgIuaKk+WPluWQjua4hemZpOi/nOeoiyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDM4IGJ1aWx0aW4vcmVtb3RlLmM6MTQ5MiBidWlsdGluL3JlbW90ZS5jOjE1NjAKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUxNCBidWlsdGluL3JlbW90ZS5jOjE1NjggYnVpbHRpbi9yZW1vdGUuYzoxNjM2CiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHN1Y2ggcmVtb3RlICclcyciCiBtc2dzdHIgIuayoeacieatpOi/nOeoiyAnJXMnIgogCi0jOiBidWlsdGluL3JlbW90ZS5jOjE0NTQKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzMAogbXNnaWQgImFkZCBicmFuY2giCiBtc2dzdHIgIua3u+WKoOWIhuaUryIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNDYxCisjOiBidWlsdGluL3JlbW90ZS5jOjE1MzcKIG1zZ2lkICJubyByZW1vdGUgc3BlY2lmaWVkIgogbXNnc3RyICLmnKrmjIflrprov5znqIsiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ3OAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTU0CiBtc2dpZCAicXVlcnkgcHVzaCBVUkxzIHJhdGhlciB0aGFuIGZldGNoIFVSTHMiCiBtc2dzdHIgIuafpeivouaOqOmAgSBVUkwg5Zyw5Z2A77yM6ICM6Z2e6I635Y+WIFVSTCDlnLDlnYAiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ4MAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNTU2CiBtc2dpZCAicmV0dXJuIGFsbCBVUkxzIgogbXNnc3RyICLov5Tlm57miYDmnIkgVVJMIOWcsOWdgCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTA4CisjOiBidWlsdGluL3JlbW90ZS5jOjE1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gVVJMcyBjb25maWd1cmVkIGZvciByZW1vdGUgJyVzJyIKIG1zZ3N0ciAi5rKh5pyJ57uZ6L+c56iL5LuT5bqTICclcycg6K6+5a6aIFVSTCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM0CisjOiBidWlsdGluL3JlbW90ZS5jOjE2MTAKIG1zZ2lkICJtYW5pcHVsYXRlIHB1c2ggVVJMcyIKIG1zZ3N0ciAi5pON5L2c5o6o6YCBIFVSTFMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzNgorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEyCiBtc2dpZCAiYWRkIFVSTCIKIG1zZ3N0ciAi5re75YqgIFVSTCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM4CisjOiBidWlsdGluL3JlbW90ZS5jOjE2MTQKIG1zZ2lkICJkZWxldGUgVVJMcyIKIG1zZ3N0ciAi5Yig6ZmkIFVSTFMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU0NQorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjIxCiBtc2dpZCAiLS1hZGQgLS1kZWxldGUgZG9lc24ndCBtYWtlIHNlbnNlIgogbXNnc3RyICItLWFkZCAtLWRlbGV0ZSDml6DmhI/kuYkiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU4NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjYwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgb2xkIFVSTCBwYXR0ZXJuOiAlcyIKIG1zZ3N0ciAi5peg5pWI55qE5penIFVSTCDljLnphY3mqKHniYjvvJolcyIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNTkyCisjOiBidWlsdGluL3JlbW90ZS5jOjE2NjgKICMsIGMtZm9ybWF0CiBtc2dpZCAiTm8gc3VjaCBVUkwgZm91bmQ6ICVzIgogbXNnc3RyICLmnKrmib7liLDmraQgVVJM77yaJXMiCiAKLSM6IGJ1aWx0aW4vcmVtb3RlLmM6MTU5NAorIzogYnVpbHRpbi9yZW1vdGUuYzoxNjcwCiBtc2dpZCAiV2lsbCBub3QgZGVsZXRlIGFsbCBub24tcHVzaCBVUkxzIgogbXNnc3RyICLlsIbkuI3kvJrliKDpmaTmiYDmnInpnZ7mjqjpgIEgVVJMIOWcsOWdgCIKIAotIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEwCi1tc2dpZCAiYmUgdmVyYm9zZTsgbXVzdCBiZSBwbGFjZWQgYmVmb3JlIGEgc3ViY29tbWFuZCIKLW1zZ3N0ciAi5YaX6ZW/6L6T5Ye677yb5b+F6aG7572u5LqO5a2Q5ZG95Luk5LmL5YmNIgotCi0jOiBidWlsdGluL3JlbW90ZS5jOjE2NDEKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiVW5rbm93biBzdWJjb21tYW5kOiAlcyIKLW1zZ3N0ciAi5pyq55+l5a2Q5ZG95Luk77yaJXMiCi0KLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MjIKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjMKIG1zZ2lkICJnaXQgcmVwYWNrIFs8b3B0aW9ucz5dIgogbXNnc3RyICJnaXQgcmVwYWNrIFs86YCJ6aG5Pl0iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MjcKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjgKIG1zZ2lkICIiCiAiSW5jcmVtZW50YWwgcmVwYWNrcyBhcmUgaW5jb21wYXRpYmxlIHdpdGggYml0bWFwIGluZGV4ZXMuICBVc2VcbiIKICItLW5vLXdyaXRlLWJpdG1hcC1pbmRleCBvciBkaXNhYmxlIHRoZSBwYWNrLndyaXRlYml0bWFwcyBjb25maWd1cmF0aW9uLiIKQEAgLTE1OTM1LDk1ICsxOTEwMiwxMjcgQEAKICLlop7ph48gcmVwYWNrIOWSjCBiaXRtYXAg57Si5byV5LiN5YW85a6544CCICDkvb/nlKggLS1uby13cml0ZS1iaXRtYXAtaW5kZXhcbiIKICLmiJbnpoHnlKggcGFjay53cml0ZWJpdG1hcHMg6YWN572u44CCIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjI5NAorIzogYnVpbHRpbi9yZXBhY2suYzoxOTEKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgcGFjay1vYmplY3RzIHRvIHJlcGFjayBwcm9taXNvciBvYmplY3RzIgorbXNnc3RyICLml6Dms5XlvIDlp4sgcGFjay1vYmplY3RzIOadpemHjeaWsOaJk+WMhSBwcm9taXNvciDlr7nosaEiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjMwIGJ1aWx0aW4vcmVwYWNrLmM6NDE2Cittc2dpZCAicmVwYWNrOiBFeHBlY3RpbmcgZnVsbCBoZXggb2JqZWN0IElEIGxpbmVzIG9ubHkgZnJvbSBwYWNrLW9iamVjdHMuIgorbXNnc3RyICJyZXBhY2vvvJrmnJ/mnJvmnaXoh6ogcGFjay1vYmplY3RzIOeahOWujOaVtOWNgeWFrei/m+WItuWvueixoSBJROOAgiIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyNTQKK21zZ2lkICJjb3VsZCBub3QgZmluaXNoIHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIKK21zZ3N0ciAi5peg5rOV5a6M5oiQIHBhY2stb2JqZWN0cyDmnaXph43mlrDmiZPljIUgcHJvbWlzb3Ig5a+56LGhIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI5MgogbXNnaWQgInBhY2sgZXZlcnl0aGluZyBpbiBhIHNpbmdsZSBwYWNrIgogbXNnc3RyICLmiYDmnInlhoXlrrnmiZPljIXliLDkuIDkuKrljIXmlofku7bkuK0iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk2CisjOiBidWlsdGluL3JlcGFjay5jOjI5NAogbXNnaWQgInNhbWUgYXMgLWEsIGFuZCB0dXJuIHVucmVhY2hhYmxlIG9iamVjdHMgbG9vc2UiCiBtc2dzdHIgIuWSjCAtYSDnm7jlkIzvvIzlubblsIbkuI3lj6/ovr7nmoTlr7nosaHorr7kuLrmnb7mlaPlr7nosaEiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk5CisjOiBidWlsdGluL3JlcGFjay5jOjI5NwogbXNnaWQgInJlbW92ZSByZWR1bmRhbnQgcGFja3MsIGFuZCBydW4gZ2l0LXBydW5lLXBhY2tlZCIKIG1zZ3N0ciAi5Yig6Zmk5aSa5L2Z55qE5YyF77yM6L+Q6KGMIGdpdC1wcnVuZS1wYWNrZWQiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCisjOiBidWlsdGluL3JlcGFjay5jOjI5OQogbXNnaWQgInBhc3MgLS1uby1yZXVzZS1kZWx0YSB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICLlkJEgZ2l0LXBhY2stb2JqZWN0cyDkvKDpgJLlj4LmlbAgLS1uby1yZXVzZS1kZWx0YSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMDMKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCiBtc2dpZCAicGFzcyAtLW5vLXJldXNlLW9iamVjdCB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICLlkJEgZ2l0LXBhY2stb2JqZWN0cyDkvKDpgJLlj4LmlbAgLS1uby1yZXVzZS1vYmplY3QiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA1CisjOiBidWlsdGluL3JlcGFjay5jOjMwMwogbXNnaWQgImRvIG5vdCBydW4gZ2l0LXVwZGF0ZS1zZXJ2ZXItaW5mbyIKIG1zZ3N0ciAi5LiN6L+Q6KGMIGdpdC11cGRhdGUtc2VydmVyLWluZm8iCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA4CisjOiBidWlsdGluL3JlcGFjay5jOjMwNgogbXNnaWQgInBhc3MgLS1sb2NhbCB0byBnaXQtcGFjay1vYmplY3RzIgogbXNnc3RyICLlkJEgZ2l0LXBhY2stb2JqZWN0cyDkvKDpgJLlj4LmlbAgLS1sb2NhbCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTAKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA4CiBtc2dpZCAid3JpdGUgYml0bWFwIGluZGV4IgogbXNnc3RyICLlhpkgYml0bWFwIOe0ouW8lSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTIKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEwCiBtc2dpZCAicGFzcyAtLWRlbHRhLWlzbGFuZHMgdG8gZ2l0LXBhY2stb2JqZWN0cyIKIG1zZ3N0ciAi5ZCRIGdpdC1wYWNrLW9iamVjdHMg5Lyg6YCS5Y+C5pWwIC0tZGVsdGEtaXNsYW5kcyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTMKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzExCiBtc2dpZCAiYXBwcm94aWRhdGUiCiBtc2dzdHIgIui/keS8vOaXpeacnyIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTQKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEyCiBtc2dpZCAid2l0aCAtQSwgZG8gbm90IGxvb3NlbiBvYmplY3RzIG9sZGVyIHRoYW4gdGhpcyIKIG1zZ3N0ciAi5L2/55SoIC1B77yM5LiN6KaB5bCG5pep5LqO57uZ5a6a5pe26Ze055qE5a+56LGh6L+H5pyfIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMxNgorIzogYnVpbHRpbi9yZXBhY2suYzozMTQKIG1zZ2lkICJ3aXRoIC1hLCByZXBhY2sgdW5yZWFjaGFibGUgb2JqZWN0cyIKIG1zZ3N0ciAi5L2/55SoIC1hIO+8jOmHjeaWsOWvueS4jeWPr+i+vuWvueixoeaJk+WMhSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMTgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE2CiBtc2dpZCAic2l6ZSBvZiB0aGUgd2luZG93IHVzZWQgZm9yIGRlbHRhIGNvbXByZXNzaW9uIgogbXNnc3RyICLnlKjkuo7lop7ph4/ljovnvKnnmoTnqpflj6PlgLwiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE5IGJ1aWx0aW4vcmVwYWNrLmM6MzI1CisjOiBidWlsdGluL3JlcGFjay5jOjMxNyBidWlsdGluL3JlcGFjay5jOjMyMwogbXNnaWQgImJ5dGVzIgogbXNnc3RyICLlrZfoioIiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIwCisjOiBidWlsdGluL3JlcGFjay5jOjMxOAogbXNnaWQgInNhbWUgYXMgdGhlIGFib3ZlLCBidXQgbGltaXQgbWVtb3J5IHNpemUgaW5zdGVhZCBvZiBlbnRyaWVzIGNvdW50IgogbXNnc3RyICLlkozkuIrpnaLnmoTnm7jkvLzvvIzkvYbpmZDliLblhoXlrZjlpKflsI/ogIzpnZ7mnaHnm67mlbAiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzIyCisjOiBidWlsdGluL3JlcGFjay5jOjMyMAogbXNnaWQgImxpbWl0cyB0aGUgbWF4aW11bSBkZWx0YSBkZXB0aCIKIG1zZ3N0ciAi6ZmQ5Yi25pyA5aSn5aKe6YeP5rex5bqmIgogCi0jOiBidWlsdGluL3JlcGFjay5jOjMyNAorIzogYnVpbHRpbi9yZXBhY2suYzozMjIKIG1zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gbnVtYmVyIG9mIHRocmVhZHMiCiBtc2dzdHIgIumZkOWItuacgOWkp+e6v+eoi+aVsCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMjYKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI0CiBtc2dpZCAibWF4aW11bSBzaXplIG9mIGVhY2ggcGFja2ZpbGUiCiBtc2dzdHIgIuavj+S4quWMheaWh+S7tueahOacgOWkp+WwuuWvuCIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozMjgKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzI2CiBtc2dpZCAicmVwYWNrIG9iamVjdHMgaW4gcGFja3MgbWFya2VkIHdpdGggLmtlZXAiCiBtc2dzdHIgIuWvueagh+iusOS4uiAua2VlcCDnmoTljIXkuK3nmoTlr7nosaHph43mlrDmiZPljIUiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzMwCisjOiBidWlsdGluL3JlcGFjay5jOjMyOAogbXNnaWQgImRvIG5vdCByZXBhY2sgdGhpcyBwYWNrIgogbXNnc3RyICLkuI3opoHlr7nor6XljIXmlofku7bph43mlrDmiZPljIUiCiAKLSM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQwCisjOiBidWlsdGluL3JlcGFjay5jOjMzOAogbXNnaWQgImNhbm5vdCBkZWxldGUgcGFja3MgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCiBtc2dzdHIgIuS4jeiDveWIoOmZpOePjeWTgeS7k+W6k+S4reeahOaJk+WMheaWh+S7tiIKIAotIzogYnVpbHRpbi9yZXBhY2suYzozNDQKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzQyCiBtc2dpZCAiLS1rZWVwLXVucmVhY2hhYmxlIGFuZCAtQSBhcmUgaW5jb21wYXRpYmxlIgogbXNnc3RyICItLWtlZXAtdW5yZWFjaGFibGUg5ZKMIC1BIOS4jeWFvOWuuSIKIAotIzogYnVpbHRpbi9yZXBhY2suYzo1MjcKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NDI1Cittc2dpZCAiTm90aGluZyBuZXcgdG8gcGFjay4iCittc2dzdHIgIuayoeacieaWsOeahOimgeaJk+WMheOAgiIKKworIzogYnVpbHRpbi9yZXBhY2suYzo0ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldBUk5JTkc6IFNvbWUgcGFja3MgaW4gdXNlIGhhdmUgYmVlbiByZW5hbWVkIGJ5XG4iCisiV0FSTklORzogcHJlZml4aW5nIG9sZC0gdG8gdGhlaXIgbmFtZSwgaW4gb3JkZXIgdG9cbiIKKyJXQVJOSU5HOiByZXBsYWNlIHRoZW0gd2l0aCB0aGUgbmV3IHZlcnNpb24gb2YgdGhlXG4iCisiV0FSTklORzogZmlsZS4gIEJ1dCB0aGUgb3BlcmF0aW9uIGZhaWxlZCwgYW5kIHRoZVxuIgorIldBUk5JTkc6IGF0dGVtcHQgdG8gcmVuYW1lIHRoZW0gYmFjayB0byB0aGVpclxuIgorIldBUk5JTkc6IG9yaWdpbmFsIG5hbWVzIGFsc28gZmFpbGVkLlxuIgorIldBUk5JTkc6IFBsZWFzZSByZW5hbWUgdGhlbSBpbiAlcyBtYW51YWxseTpcbiIKK21zZ3N0ciAiIgorIuitpuWRiu+8muS4uuS6huWwhuWMheaWh+S7tuabv+aNouS4uuaWsOeJiOacrO+8jOS4gOS6m+S9v+eUqOS4reeahOWMheW3sue7j1xuIgorIuitpuWRiu+8mumAmui/h+a3u+WKoCBvbGQtIOWJjee8gOeahOaWueW8j+mHjeWRveWQjeOAguS9huaYr+aTjeS9nOWksei0pe+8jFxuIgorIuitpuWRiu+8muW5tuS4lOWwneivlemHjeWRveWQjeaUueWbnuWOn+acieaWh+S7tuWQjeeahOaTjeS9nOS5n+Wksei0peOAglxuIgorIuitpuWRiu+8muivt+aJi+WKqOWwhiAlcyDkuIvnmoTov5nkupvmlofku7bph43lkb3lkI3vvJpcbiIKKworIzogYnVpbHRpbi9yZXBhY2suYzo1MzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSAnJXMnIgogbXNnc3RyICLliKDpmaQgJyVzJyDlpLHotKUiCkBAIC0xNjA1MiwxMiArMTkyNTEsNyBAQAogbXNnaWQgImdpdCByZXBsYWNlIFstLWZvcm1hdD08Zm9ybWF0Pl0gWy1sIFs8cGF0dGVybj5dXSIKIG1zZ3N0ciAiZ2l0IHJlcGxhY2UgWy0tZm9ybWF0PTzmoLzlvI8+XSBbLWwgWzzmqKHlvI8+XV0iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4IGJ1aWx0aW4vcmVwbGFjZS5jOjIwMyBidWlsdGluL3JlcGxhY2UuYzoyMDYKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZiIKLW1zZ3N0ciAi5peg5rOV5bCGICclcycg6Kej5p6Q5Li65LiA5Liq5pyJ5pWI5byV55SoIgotCi0jOiBidWlsdGluL3JlcGxhY2UuYzo4NgorIzogYnVpbHRpbi9yZXBsYWNlLmM6OTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImludmFsaWQgcmVwbGFjZSBmb3JtYXQgJyVzJ1xuIgpAQCAtMTYwNjYsMjcgKzE5MjYwLDI3IEBACiAi5peg5pWI55qE5pu/5o2i5qC85byPICclcydcbiIKICLmnInmlYjnmoTmoLzlvI/mnIkgJ3Nob3J0J+OAgSdtZWRpdW0nIOWSjCAnbG9uZyciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjEyMQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTI1CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2UgcmVmICclcycgbm90IGZvdW5kIgogbXNnc3RyICLmnKrlj5HnjrDmm7/mjaLlvJXnlKggJyVzJyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTM3CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNDEKICMsIGMtZm9ybWF0CiBtc2dpZCAiRGVsZXRlZCByZXBsYWNlIHJlZiAnJXMnIgogbXNnc3RyICLlt7LliKDpmaTmm7/mjaLlvJXnlKggJyVzJyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTQ5CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZWYgbmFtZSIKIG1zZ3N0ciAiJyVzJyDkuI3mmK/kuIDkuKrmnInmlYjnmoTlvJXnlKjlkI0iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE1NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MTU4CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlcGxhY2UgcmVmICclcycgYWxyZWFkeSBleGlzdHMiCiBtc2dzdHIgIuabv+aNouW8leeUqCAnJXMnIOW3sue7j+WtmOWcqCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MTc0CisjOiBidWlsdGluL3JlcGxhY2UuYzoxNzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIk9iamVjdHMgbXVzdCBiZSBvZiB0aGUgc2FtZSB0eXBlLlxuIgpAQCAtMTYwOTcsMTA3ICsxOTI5MSwxMTIgQEAKICInJXMnIOaMh+WQkSAnJXMnIOexu+Wei+eahOabv+aNouWvueixoVxuIgogIuiAjCAnJXMnIOaMh+WQkSAnJXMnIOexu+Wei+eahOabv+aNouWvueixoeOAgiIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjI1CisjOiBidWlsdGluL3JlcGxhY2UuYzoyMjkKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHdyaXRpbmciCiBtc2dzdHIgIuaXoOazleS4uuWGmeWFpeaJk+W8gCAlcyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjM4CisjOiBidWlsdGluL3JlcGxhY2UuYzoyNDIKIG1zZ2lkICJjYXQtZmlsZSByZXBvcnRlZCBmYWlsdXJlIgogbXNnc3RyICJjYXQtZmlsZSDmiqXlkYrlpLHotKUiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI1NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MjU4CiAjLCBjLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciByZWFkaW5nIgogbXNnc3RyICLml6Dms5XkuLror7vlj5bmiZPlvIAgJXMiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI2OAorIzogYnVpbHRpbi9yZXBsYWNlLmM6MjcyCiBtc2dpZCAidW5hYmxlIHRvIHNwYXduIG1rdHJlZSIKIG1zZ3N0ciAi5peg5rOV5ZCv5YqoIG1rdHJlZSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MjcyCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNzYKIG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmcm9tIG1rdHJlZSIKIG1zZ3N0ciAi5peg5rOV5LuOIG1rdHJlZSDor7vlj5YiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg1CiBtc2dpZCAibWt0cmVlIHJlcG9ydGVkIGZhaWx1cmUiCiBtc2dzdHIgIm1rdHJlZSDmiqXlkYrlpLHotKUiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI4NQorIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg5CiBtc2dpZCAibWt0cmVlIGRpZCBub3QgcmV0dXJuIGFuIG9iamVjdCBuYW1lIgogbXNnc3RyICJta3RyZWUg5rKh5pyJ6L+U5Zue5LiA5Liq5a+56LGh5ZCNIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzoyOTQKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI5OAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZnN0YXQgJXMiCiBtc2dzdHIgIuaXoOazleWvuSAlcyDmiafooYwgZnN0YXQiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI5OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6MzAzCiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIG9iamVjdCB0byBkYXRhYmFzZSIKIG1zZ3N0ciAi5peg5rOV5ZCR5pWw5o2u5bqT5YaZ5YWl5a+56LGhIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozMTggYnVpbHRpbi9yZXBsYWNlLmM6MzcxIGJ1aWx0aW4vcmVwbGFjZS5jOjQxNQotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDQ1CisjOiBidWlsdGluL3JlcGxhY2UuYzozMjIgYnVpbHRpbi9yZXBsYWNlLmM6Mzc4IGJ1aWx0aW4vcmVwbGFjZS5jOjQyNAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDU0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAnJXMnIgogbXNnc3RyICLkuI3mmK/kuIDkuKrmnInmlYjnmoTlr7nosaHlkI3vvJonJXMnIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozMjIKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyNgogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gZ2V0IG9iamVjdCB0eXBlIGZvciAlcyIKIG1zZ3N0ciAi5peg5rOV5b6X5YiwICVzIOeahOWvueixoeexu+WeiyIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6MzM4CisjOiBidWlsdGluL3JlcGxhY2UuYzozNDIKIG1zZ2lkICJlZGl0aW5nIG9iamVjdCBmaWxlIGZhaWxlZCIKIG1zZ3N0ciAi57yW6L6R5a+56LGh5paH5Lu25aSx6LSlIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzozNDcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjM1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJuZXcgb2JqZWN0IGlzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lOiAnJXMnIgogbXNnc3RyICLmlrDlr7nosaHlkozml6flr7nosaHnm7jlkIzvvJonJXMnIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0MDcKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjM4NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJXMgYXMgYSBjb21taXQiCittc2dzdHIgIuaXoOazleWwhiAlcyDop6PmnpDkuLrkuIDkuKrmj5DkuqQiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQxNgogIywgYy1mb3JtYXQKIG1zZ2lkICJiYWQgbWVyZ2V0YWcgaW4gY29tbWl0ICclcyciCiBtc2dzdHIgIuaPkOS6pCAnJXMnIOS4reWQq+acieaNn+Wdj+eahOWQiOW5tuagh+etviIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDA5CisjOiBidWlsdGluL3JlcGxhY2UuYzo0MTgKICMsIGMtZm9ybWF0CiBtc2dpZCAibWFsZm9ybWVkIG1lcmdldGFnIGluIGNvbW1pdCAnJXMnIgogbXNnc3RyICLmj5DkuqQgJyVzJyDkuK3lkKvmnInmoLzlvI/plJnor6/nmoTlkIjlubbmoIfnrb4iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQyMQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJvcmlnaW5hbCBjb21taXQgJyVzJyBjb250YWlucyBtZXJnZXRhZyAnJXMnIHRoYXQgaXMgZGlzY2FyZGVkOyB1c2UgLS1lZGl0ICIKICJpbnN0ZWFkIG9mIC0tZ3JhZnQiCiBtc2dzdHIgIuWOn+Wni+aPkOS6pCAnJXMnIOWMheWQq+W3sue7j+S4ouW8g+eahOWQiOW5tuagh+etviAnJXMn77yM5L2/55SoIC0tZWRpdCDku6Pmm78gLS1ncmFmdCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NDYwCisjOiBidWlsdGluL3JlcGxhY2UuYzo0NjkKICMsIGMtZm9ybWF0CiBtc2dpZCAidGhlIG9yaWdpbmFsIGNvbW1pdCAnJXMnIGhhcyBhIGdwZyBzaWduYXR1cmUiCiBtc2dzdHIgIuWOn+Wni+aPkOS6pCAnJXMnIOS4reacieS4gOS4qiBncGcg562+5ZCNIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo0NjEKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3MAogbXNnaWQgInRoZSBzaWduYXR1cmUgd2lsbCBiZSByZW1vdmVkIGluIHRoZSByZXBsYWNlbWVudCBjb21taXQhIgogbXNnc3RyICLlnKjmm7/mjaLnmoTmj5DkuqTkuK3nrb7lkI3lsIbooqvnp7vpmaTvvIEiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDgwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNvdWxkIG5vdCB3cml0ZSByZXBsYWNlbWVudCBjb21taXQgZm9yOiAnJXMnIgogbXNnc3RyICLkuI3og73kuLogJyVzJyDlhpnmm7/mjaLmj5DkuqQiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ3OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDg4CiAjLCBjLWZvcm1hdAogbXNnaWQgImdyYWZ0IGZvciAnJXMnIHVubmVjZXNzYXJ5IgogbXNnc3RyICLlr7kgJyVzJyDnp7vmpI3msqHmnInlv4XopoEiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ4MgorIzogYnVpbHRpbi9yZXBsYWNlLmM6NDkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIm5ldyBjb21taXQgaXMgdGhlIHNhbWUgYXMgdGhlIG9sZCBvbmU6ICclcyciCiBtc2dzdHIgIuaWsOaPkOS6pOWSjOaXp+eahOS4gOagt++8miclcyciCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUxNQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjb3VsZCBub3QgY29udmVydCB0aGUgZm9sbG93aW5nIGdyYWZ0KHMpOlxuIgpAQCAtMTYyMDYsNzEgKzE5NDA1LDcxIEBACiAi5LiN6IO96L2s5o2i5LiL5YiX56e75qSN77yaXG4iCiAiJXMiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzNgorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ4CiBtc2dpZCAibGlzdCByZXBsYWNlIHJlZnMiCiBtc2dzdHIgIuWIl+WHuuabv+aNoueahOW8leeUqCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM3CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NDkKIG1zZ2lkICJkZWxldGUgcmVwbGFjZSByZWZzIgogbXNnc3RyICLliKDpmaTmm7/mjaLnmoTlvJXnlKgiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjUzOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUwCiBtc2dpZCAiZWRpdCBleGlzdGluZyBvYmplY3QiCiBtc2dzdHIgIue8lui+keeOsOWtmOeahOWvueixoSIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTM5CisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTEKIG1zZ2lkICJjaGFuZ2UgYSBjb21taXQncyBwYXJlbnRzIgogbXNnc3RyICLkv67mlLnkuIDkuKrmj5DkuqTnmoTniLbmj5DkuqQiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0MAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUyCiBtc2dpZCAiY29udmVydCBleGlzdGluZyBncmFmdCBmaWxlIgogbXNnc3RyICLovazmjaLnjrDlrZjnmoTnp7vmpI3mlofku7YiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTUzCiBtc2dpZCAicmVwbGFjZSB0aGUgcmVmIGlmIGl0IGV4aXN0cyIKIG1zZ3N0ciAi5aaC5p6c5a2Y5Zyo5YiZ5pu/5o2i5byV55SoIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NDMKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NQogbXNnaWQgImRvIG5vdCBwcmV0dHktcHJpbnQgY29udGVudHMgZm9yIC0tZWRpdCIKIG1zZ3N0ciAi5LiN6KaB5Li6IC0tZWRpdCDmk43kvZznvo7op4LmmL7npLrlhoXlrrkiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU0NAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU2CiBtc2dpZCAidXNlIHRoaXMgZm9ybWF0IgogbXNnc3RyICLkvb/nlKjmraTmoLzlvI8iCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTY5CiBtc2dpZCAiLS1mb3JtYXQgY2Fubm90IGJlIHVzZWQgd2hlbiBub3QgbGlzdGluZyIKIG1zZ3N0ciAi5LiN5YiX5Ye65pe25LiN6IO95L2/55SoIC0tZm9ybWF0IgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1NjUKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU3NwogbXNnaWQgIi1mIG9ubHkgbWFrZXMgc2Vuc2Ugd2hlbiB3cml0aW5nIGEgcmVwbGFjZW1lbnQiCiBtc2dzdHIgIuWPquacieWGmeS4gOS4quabv+aNouaXtiAtZiDmiY3mnInmhI/kuYkiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU2OQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTgxCiBtc2dpZCAiLS1yYXcgb25seSBtYWtlcyBzZW5zZSB3aXRoIC0tZWRpdCIKIG1zZ3N0ciAiLS1yYXcg5Y+q5pyJ5ZKMIC0tZWRpdCDlhbHnlKjmiY3mnInmhI/kuYkiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU3NQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTg3CiBtc2dpZCAiLWQgbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IgogbXNnc3RyICItZCDpnIDopoHoh7PlsJHkuIDkuKrlj4LmlbAiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4MQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTkzCiBtc2dpZCAiYmFkIG51bWJlciBvZiBhcmd1bWVudHMiCiBtc2dzdHIgIumUmeivr+eahOWPguaVsOS4quaVsCIKIAotIzogYnVpbHRpbi9yZXBsYWNlLmM6NTg3CisjOiBidWlsdGluL3JlcGxhY2UuYzo1OTkKIG1zZ2lkICItZSBuZWVkcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKIG1zZ3N0ciAiLWUg6ZyA6KaB5LiU5LuF6ZyA6KaB5LiA5Liq5Y+C5pWwIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1OTMKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYwNQogbXNnaWQgIi1nIG5lZWRzIGF0IGxlYXN0IG9uZSBhcmd1bWVudCIKIG1zZ3N0ciAiLWcg6ZyA6KaB6Iez5bCR5LiA5Liq5Y+C5pWwIgogCi0jOiBidWlsdGluL3JlcGxhY2UuYzo1OTkKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYxMQogbXNnaWQgIi0tY29udmVydC1ncmFmdC1maWxlIHRha2VzIG5vIGFyZ3VtZW50IgogbXNnc3RyICItLWNvbnZlcnQtZ3JhZnQtZmlsZSDkuI3luKblj4LmlbAiCiAKLSM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYwNQorIzogYnVpbHRpbi9yZXBsYWNlLmM6NjE3CiBtc2dpZCAib25seSBvbmUgcGF0dGVybiBjYW4gYmUgZ2l2ZW4gd2l0aCAtbCIKIG1zZ3N0ciAi5Y+q6IO95Li6IC1sIOaPkOS+m+S4gOS4quaooeW8jyIKIApAQCAtMTYyODYsMTI2ICsxOTQ4NSwxMzcgQEAKIG1zZ2lkICInZ2l0IHJlcmVyZSBmb3JnZXQnIHdpdGhvdXQgcGF0aHMgaXMgZGVwcmVjYXRlZCIKIG1zZ3N0ciAi5rKh5pyJ6Lev5b6E55qEICdnaXQgcmVyZXJlIGZvcmdldCcg5bey57uP6L+H5pe2IgogCi0jOiBidWlsdGluL3JlcmVyZS5jOjExMQorIzogYnVpbHRpbi9yZXJlcmUuYzoxMTMKICMsIGMtZm9ybWF0CiBtc2dpZCAidW5hYmxlIHRvIGdlbmVyYXRlIGRpZmYgZm9yICclcyciCiBtc2dzdHIgIuaXoOazleS4uiAnJXMnIOeUn+aIkOW3ruW8giIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMxCisjOiBidWlsdGluL3Jlc2V0LmM6MzIKIG1zZ2lkICIiCiAiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPGNvbW1pdD5dIgogbXNnc3RyICJnaXQgcmVzZXQgWy0tbWl4ZWQgfCAtLXNvZnQgfCAtLWhhcmQgfCAtLW1lcmdlIHwgLS1rZWVwXSBbLXFdIFs85o+Q5LqkPl0iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMgotbXNnaWQgImdpdCByZXNldCBbLXFdIFs8dHJlZS1pc2g+XSBbLS1dIDxwYXRocz4uLi4iCi1tc2dzdHIgImdpdCByZXNldCBbLXFdIFs85qCR5oiW5o+Q5LqkPl0gWy0tXSA86Lev5b6EPi4uLiIKLQogIzogYnVpbHRpbi9yZXNldC5jOjMzCi1tc2dpZCAiZ2l0IHJlc2V0IC0tcGF0Y2ggWzx0cmVlLWlzaD5dIFstLV0gWzxwYXRocz4uLi5dIgotbXNnc3RyICJnaXQgcmVzZXQgLS1wYXRjaCBbPOagkeaIluaPkOS6pD5dIFstLV0gWzzot6/lvoQ+Li4uXSIKK21zZ2lkICJnaXQgcmVzZXQgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgorbXNnc3RyICJnaXQgcmVzZXQgWy1xXSBbPOagkeWvueixoT5dIFstLV0gPOi3r+W+hOihqOi+vuW8jz4uLi4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjM0Cittc2dpZCAiIgorImdpdCByZXNldCBbLXFdIFstLXBhdGhzcGVjLWZyb20tZmlsZSBbLS1wYXRoc3BlYy1maWxlLW51bF1dIFs8dHJlZS1pc2g+XSIKK21zZ3N0ciAiZ2l0IHJlc2V0IFstcV0gWy0tcGF0aHNwZWMtZnJvbS1maWxlIFstLXBhdGhzcGVjLWZpbGUtbnVsXV0gWzzmoJHlr7nosaE+XSIKKworIzogYnVpbHRpbi9yZXNldC5jOjM1Cittc2dpZCAiZ2l0IHJlc2V0IC0tcGF0Y2ggWzx0cmVlLWlzaD5dIFstLV0gWzxwYXRoc3BlYz4uLi5dIgorbXNnc3RyICJnaXQgcmVzZXQgLS1wYXRjaCBbPOagkeWvueixoT5dIFstLV0gWzzot6/lvoTooajovr7lvI8+Li4uXSIKKworIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAibWl4ZWQiCiBtc2dzdHIgIua3t+adgiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5CisjOiBidWlsdGluL3Jlc2V0LmM6NDEKIG1zZ2lkICJzb2Z0IgogbXNnc3RyICLova/mgKciCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAiaGFyZCIKIG1zZ3N0ciAi56Gs5oCnIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzkKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQogbXNnaWQgIm1lcmdlIgogbXNnc3RyICLlkIjlubYiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozOQorIzogYnVpbHRpbi9yZXNldC5jOjQxCiBtc2dpZCAia2VlcCIKIG1zZ3N0ciAi5L+d5oyBIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6ODAKKyM6IGJ1aWx0aW4vcmVzZXQuYzo4MgogbXNnaWQgIllvdSBkbyBub3QgaGF2ZSBhIHZhbGlkIEhFQUQuIgogbXNnc3RyICLmgqjmsqHmnInkuIDkuKrmnInmlYjnmoQgSEVBROOAgiIKIAotIzogYnVpbHRpbi9yZXNldC5jOjgyCisjOiBidWlsdGluL3Jlc2V0LmM6ODQKIG1zZ2lkICJGYWlsZWQgdG8gZmluZCB0cmVlIG9mIEhFQUQuIgogbXNnc3RyICLml6Dms5Xmib7liLAgSEVBRCDmjIflkJHnmoTmoJHjgIIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo4OAorIzogYnVpbHRpbi9yZXNldC5jOjkwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgJXMuIgogbXNnc3RyICLml6Dms5Xmib7liLAgJXMg5oyH5ZCR55qE5qCR44CCIgogCisjOiBidWlsdGluL3Jlc2V0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgaXMgbm93IGF0ICVzIgorbXNnc3RyICJIRUFEIOeOsOWcqOS9jeS6jiAlcyIKKwogIyAg6K+R6ICF77ya5rGJ5a2X5LmL6Ze05peg56m65qC877yM5pWF5Yig6ZmkJXPliY3lkI7nqbrmoLwKLSM6IGJ1aWx0aW4vcmVzZXQuYzoxOTIKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxOTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGRvIGEgJXMgcmVzZXQgaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlLiIKIG1zZ3N0ciAi5Zyo5ZCI5bm26L+H56iL5Lit5LiN6IO95YGaJXPph43nva7mk43kvZzjgIIiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTIKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQgYnVpbHRpbi9zdGFzaC5jOjUyMCBidWlsdGluL3N0YXNoLmM6NTk1CisjOiBidWlsdGluL3N0YXNoLmM6NjE5CiBtc2dpZCAiYmUgcXVpZXQsIG9ubHkgcmVwb3J0IGVycm9ycyIKIG1zZ3N0ciAi5a6J6Z2Z5qih5byP77yM5Y+q5oql5ZGK6ZSZ6K+vIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mjk0CisjOiBidWlsdGluL3Jlc2V0LmM6Mjk2CiBtc2dpZCAicmVzZXQgSEVBRCBhbmQgaW5kZXgiCiBtc2dzdHIgIumHjee9riBIRUFEIOWSjOe0ouW8lSIKIAotIzogYnVpbHRpbi9yZXNldC5jOjI5NQorIzogYnVpbHRpbi9yZXNldC5jOjI5NwogbXNnaWQgInJlc2V0IG9ubHkgSEVBRCIKIG1zZ3N0ciAi5Y+q6YeN572uIEhFQUQiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzoyOTcgYnVpbHRpbi9yZXNldC5jOjI5OQorIzogYnVpbHRpbi9yZXNldC5jOjI5OSBidWlsdGluL3Jlc2V0LmM6MzAxCiBtc2dpZCAicmVzZXQgSEVBRCwgaW5kZXggYW5kIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAi6YeN572uIEhFQUTjgIHntKLlvJXlkozlt6XkvZzljLoiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMDEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMDMKIG1zZ2lkICJyZXNldCBIRUFEIGJ1dCBrZWVwIGxvY2FsIGNoYW5nZXMiCiBtc2dzdHIgIumHjee9riBIRUFEIOS9huS/neWtmOacrOWcsOWPmOabtCIKIAotIzogYnVpbHRpbi9yZXNldC5jOjMwNworIzogYnVpbHRpbi9yZXNldC5jOjMwOQogbXNnaWQgInJlY29yZCBvbmx5IHRoZSBmYWN0IHRoYXQgcmVtb3ZlZCBwYXRocyB3aWxsIGJlIGFkZGVkIGxhdGVyIgogbXNnc3RyICLlsIbliKDpmaTnmoTot6/lvoTmoIforrDkuLrnqI3lkI7mt7vliqAiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozMjUKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJldmlzaW9uLiIKIG1zZ3N0ciAi5peg5rOV5bCGICclcycg6Kej5p6Q5Li65LiA5Liq5pyJ5pWI55qE54mI5pys44CCIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzMzCisjOiBidWlsdGluL3Jlc2V0LmM6MzUxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCB0cmVlLiIKIG1zZ3N0ciAi5peg5rOV5bCGICclcycg6Kej5p6Q5Li65LiA5Liq5pyJ5pWI55qE5qCR5a+56LGh44CCIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6MzQyCisjOiBidWlsdGluL3Jlc2V0LmM6MzYwCiBtc2dpZCAiLS1wYXRjaCBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLXtoYXJkLG1peGVkLHNvZnR9IgogbXNnc3RyICItLXBhdGNoIOS4jiAtLXtoYXJk44CBbWl4ZWTjgIFzb2Z0fSDpgInpobnkuI3lhbzlrrkiCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNTEKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNzAKIG1zZ2lkICItLW1peGVkIHdpdGggcGF0aHMgaXMgZGVwcmVjYXRlZDsgdXNlICdnaXQgcmVzZXQgLS0gPHBhdGhzPicgaW5zdGVhZC4iCiBtc2dzdHIgIi0tbWl4ZWQg5bim6Lev5b6E5bey5byD55So77yM6ICM5piv55SoICdnaXQgcmVzZXQgLS0gPOi3r+W+hD4n44CCIgogCiAjICDor5HogIXvvJrmsYnlrZfkuYvpl7Tml6DnqbrmoLzvvIzmlYXliKDpmaQlc+WJjeWQjuepuuagvAotIzogYnVpbHRpbi9yZXNldC5jOjM1MworIzogYnVpbHRpbi9yZXNldC5jOjM3MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZG8gJXMgcmVzZXQgd2l0aCBwYXRocy4iCiBtc2dzdHIgIuS4jeiDveW4pui3r+W+hOi/m+ihjCVz6YeN572u44CCIgogCiAjICDor5HogIXvvJrmsYnlrZfkuYvpl7Tml6DnqbrmoLzvvIzmlYXliKDpmaQlc+WJjeWQjuepuuagvAotIzogYnVpbHRpbi9yZXNldC5jOjM2MworIzogYnVpbHRpbi9yZXNldC5jOjM4NwogIywgYy1mb3JtYXQKIG1zZ2lkICIlcyByZXNldCBpcyBub3QgYWxsb3dlZCBpbiBhIGJhcmUgcmVwb3NpdG9yeSIKIG1zZ3N0ciAi5LiN6IO95a+557qv5LuT5bqT6L+b6KGMJXPph43nva4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzozNjcKKyM6IGJ1aWx0aW4vcmVzZXQuYzozOTEKIG1zZ2lkICItTiBjYW4gb25seSBiZSB1c2VkIHdpdGggLS1taXhlZCIKIG1zZ3N0ciAiLU4g5Y+q6IO95ZKMIC0tbWl4ZWQg5ZCM5pe25L2/55SoIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6Mzg3CisjOiBidWlsdGluL3Jlc2V0LmM6NDEyCiBtc2dpZCAiVW5zdGFnZWQgY2hhbmdlcyBhZnRlciByZXNldDoiCiBtc2dzdHIgIumHjee9ruWQjuWPlua2iOaaguWtmOeahOWPmOabtO+8miIKIAotIzogYnVpbHRpbi9yZXNldC5jOjM5MAorIzogYnVpbHRpbi9yZXNldC5jOjQxNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC0xNjQxNyw1MyArMTk2MjcsNDggQEAKICLph43nva7lkI7vvIzmnprkuL7mnKrmmoLlrZjlj5jmm7ToirHotLnkuoYgJS4yZiDnp5LjgIIg5oKo5Y+v5Lul5L2/55SoICctLXF1aWV0JyDpgb/lhY3mraTmg4XlhrXjgIJcbiIKICLlsIbphY3nva7lj5jph48gcmVzZXQucXVpZXQg6K6+572u5Li6IHRydWUg5Y+v5L2/5YW25oiQ5Li66buY6K6k5YC844CCXG4iCiAKLSM6IGJ1aWx0aW4vcmVzZXQuYzo0MDAKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MjUKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHJlc2V0IGluZGV4IGZpbGUgdG8gcmV2aXNpb24gJyVzJy4iCiBtc2dzdHIgIuS4jeiDvemHjee9rue0ouW8leaWh+S7tuiHs+eJiOacrCAnJXMn44CCIgogCi0jOiBidWlsdGluL3Jlc2V0LmM6NDA0CisjOiBidWlsdGluL3Jlc2V0LmM6NDI5CiBtc2dpZCAiQ291bGQgbm90IHdyaXRlIG5ldyBpbmRleCBmaWxlLiIKIG1zZ3N0ciAi5LiN6IO95YaZ5YWl5paw55qE57Si5byV5paH5Lu244CCIgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NDAzCisjOiBidWlsdGluL3Jldi1saXN0LmM6NDk5CiBtc2dpZCAiY2Fubm90IGNvbWJpbmUgLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgYW5kIC0tbWlzc2luZyIKIG1zZ3N0ciAi5LiN6IO95ZCM5pe25L2/55SoIC0tZXhjbHVkZS1wcm9taXNvci1vYmplY3RzIOWSjCAtLW1pc3Npbmcg6YCJ6aG5IgogCi0jOiBidWlsdGluL3Jldi1saXN0LmM6NDYxCisjOiBidWlsdGluL3Jldi1saXN0LmM6NTYwCiBtc2dpZCAib2JqZWN0IGZpbHRlcmluZyByZXF1aXJlcyAtLW9iamVjdHMiCiBtc2dzdHIgIuWvueixoei/h+a7pOmcgOimgSAtLW9iamVjdHMiCiAKLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0NjQKLSMsIGMtZm9ybWF0Ci1tc2dpZCAiaW52YWxpZCBzcGFyc2UgdmFsdWUgJyVzJyIKLW1zZ3N0ciAi5peg5pWI55qE56iA55aP5YC8ICclcyciCi0KLSM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1MDUKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo2MTAKIG1zZ2lkICJyZXYtbGlzdCBkb2VzIG5vdCBzdXBwb3J0IGRpc3BsYXkgb2Ygbm90ZXMiCiBtc2dzdHIgInJldi1saXN0IOS4jeaUr+aMgeaYvuekuuazqOinoyIKIAotIzogYnVpbHRpbi9yZXYtbGlzdC5jOjUwOAotbXNnaWQgImNhbm5vdCBjb21iaW5lIC0tdXNlLWJpdG1hcC1pbmRleCB3aXRoIG9iamVjdCBmaWx0ZXJpbmciCi1tc2dzdHIgIuS4jeiDveWwhiAtLXVzZS1iaXRtYXAtaW5kZXgg5ZKM5a+56LGh6L+H5ruk57uE5ZCI5L2/55SoIgorIzogYnVpbHRpbi9yZXYtbGlzdC5jOjYxNQorbXNnaWQgIm1hcmtlZCBjb3VudGluZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW9iamVjdHMiCittc2dzdHIgIuagh+iusOiuoeaVsOWSjCAtLW9iamVjdHMg5LiN5YW85a65IgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQwNworIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MDgKIG1zZ2lkICJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHRpb25zPl0gLS0gWzxhcmdzPi4uLl0iCiBtc2dzdHIgImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPOmAiemhuT5dIC0tIFs85Y+C5pWwPi4uLl0iCiAKLSM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDEyCisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxMwogbXNnaWQgImtlZXAgdGhlIGAtLWAgcGFzc2VkIGFzIGFuIGFyZyIKIG1zZ3N0ciAi5L+d5oyBIGAtLWAg5L2c5Li65LiA5Liq5Y+C5pWw5Lyg6YCSIgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjQxNAorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTUKIG1zZ2lkICJzdG9wIHBhcnNpbmcgYWZ0ZXIgdGhlIGZpcnN0IG5vbi1vcHRpb24gYXJndW1lbnQiCiBtc2dzdHIgIumBh+WIsOesrOS4gOS4qumdnumAiemhueWPguaVsOWQjuWBnOatouino+aekCIKIAotIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MTcKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE4CiBtc2dpZCAib3V0cHV0IGluIHN0dWNrIGxvbmcgZm9ybSIKIG1zZ3N0ciAi5Lul5Zu65a6a6ZW/5qC85byP6L6T5Ye6IgogCi0jOiBidWlsdGluL3Jldi1wYXJzZS5jOjU1MAorIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo1NTEKIG1zZ2lkICIiCiAiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IFs8b3B0aW9ucz5dIC0tIFs8YXJncz4uLi5dXG4iCiAiICAgb3I6IGdpdCByZXYtcGFyc2UgLS1zcS1xdW90ZSBbPGFyZz4uLi5dXG4iCkBAIC0xNjQ5Myw3MiArMTk2OTgsODEgQEAKIG1zZ2lkICJnaXQgY2hlcnJ5LXBpY2sgPHN1YmNvbW1hbmQ+IgogbXNnc3RyICJnaXQgY2hlcnJ5LXBpY2sgPOWtkOWRveS7pD4iCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6OTEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBhIG51bWJlciBncmVhdGVyIHRoYW4gemVybyIKK21zZ3N0ciAi6YCJ6aG5IGAlcycg5pyf5pyb5LiA5Liq5aSn5LqO6Zu255qE5pWw5a2XIgorCisjOiBidWlsdGluL3JldmVydC5jOjkyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzOiAlcyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgogbXNnc3RyICIlc++8miVzIOS4jeiDveWSjCAlcyDlkIzml7bkvb/nlKgiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAwCisjOiBidWlsdGluL3JldmVydC5jOjEwMgogbXNnaWQgImVuZCByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCiBtc2dzdHIgIue7iOatouWPjei9rOaIluaLo+mAieaTjeS9nCIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCiBtc2dpZCAicmVzdW1lIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKIG1zZ3N0ciAi57un57ut5Y+N6L2s5oiW5ouj6YCJ5pON5L2cIgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwMgorIzogYnVpbHRpbi9yZXZlcnQuYzoxMDQKIG1zZ2lkICJjYW5jZWwgcmV2ZXJ0IG9yIGNoZXJyeS1waWNrIHNlcXVlbmNlIgogbXNnc3RyICLlj5bmtojlj43ovazmiJbmi6PpgInmk43kvZwiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAzCisjOiBidWlsdGluL3JldmVydC5jOjEwNQorbXNnaWQgInNraXAgY3VycmVudCBjb21taXQgYW5kIGNvbnRpbnVlIgorbXNnc3RyICLot7Pov4flvZPliY3mj5DkuqTlubbnu6fnu60iCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA3CiBtc2dpZCAiZG9uJ3QgYXV0b21hdGljYWxseSBjb21taXQiCiBtc2dzdHIgIuS4jeimgeiHquWKqOaPkOS6pCIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDQKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA4CiBtc2dpZCAiZWRpdCB0aGUgY29tbWl0IG1lc3NhZ2UiCiBtc2dzdHIgIue8lui+keaPkOS6pOivtOaYjiIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMDcKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTExCiBtc2dpZCAicGFyZW50LW51bWJlciIKIG1zZ3N0ciAi54i257yW5Y+3IgogCi0jOiBidWlsdGluL3JldmVydC5jOjEwOAorIzogYnVpbHRpbi9yZXZlcnQuYzoxMTIKIG1zZ2lkICJzZWxlY3QgbWFpbmxpbmUgcGFyZW50IgogbXNnc3RyICLpgInmi6nkuLvlubLniLbmj5DkuqTnvJblj7ciCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEwCisjOiBidWlsdGluL3JldmVydC5jOjExNAogbXNnaWQgIm1lcmdlIHN0cmF0ZWd5IgogbXNnc3RyICLlkIjlubbnrZbnlaUiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTEyCisjOiBidWlsdGluL3JldmVydC5jOjExNgogbXNnaWQgIm9wdGlvbiBmb3IgbWVyZ2Ugc3RyYXRlZ3kiCiBtc2dzdHIgIuWQiOW5tuetlueVpeeahOmAiemhuSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoxMjEKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI1CiBtc2dpZCAiYXBwZW5kIGNvbW1pdCBuYW1lIgogbXNnc3RyICLov73liqDmj5DkuqTlkI3np7AiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTIzCisjOiBidWlsdGluL3JldmVydC5jOjEyNwogbXNnaWQgInByZXNlcnZlIGluaXRpYWxseSBlbXB0eSBjb21taXRzIgogbXNnc3RyICLkv53nlZnliJ3lp4vljJbnmoTnqbrmj5DkuqQiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTI1CisjOiBidWlsdGluL3JldmVydC5jOjEyOQogbXNnaWQgImtlZXAgcmVkdW5kYW50LCBlbXB0eSBjb21taXRzIgogbXNnc3RyICLkv53mjIHlpJrkvZnnmoTjgIHnqbrnmoTmj5DkuqQiCiAKLSM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjE5CisjOiBidWlsdGluL3JldmVydC5jOjIzMgogbXNnaWQgInJldmVydCBmYWlsZWQiCiBtc2dzdHIgIui/mOWOn+Wksei0pSIKIAotIzogYnVpbHRpbi9yZXZlcnQuYzoyMzIKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjQ1CiBtc2dpZCAiY2hlcnJ5LXBpY2sgZmFpbGVkIgogbXNnc3RyICLmi6PpgInlpLHotKUiCiAKLSM6IGJ1aWx0aW4vcm0uYzoxOAorIzogYnVpbHRpbi9ybS5jOjE5CiBtc2dpZCAiZ2l0IHJtIFs8b3B0aW9ucz5dIFstLV0gPGZpbGU+Li4uIgogbXNnc3RyICJnaXQgcm0gWzzpgInpobk+XSBbLS1dIDzmlofku7Y+Li4uIgogCi0jOiBidWlsdGluL3JtLmM6MjA2CisjOiBidWlsdGluL3JtLmM6MjA3CiBtc2dpZCAiIgogInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgc3RhZ2VkIGNvbnRlbnQgZGlmZmVyZW50IGZyb20gYm90aCB0aGVcbiIKICJmaWxlIGFuZCB0aGUgSEVBRDoiCkBAIC0xNjU2OCw3ICsxOTc4Miw3IEBACiBtc2dzdHJbMF0gIuWmguS4i+aWh+S7tuWFtuaaguWtmOeahOWGheWuueWSjOW3peS9nOWMuuWPiiBIRUFEIOS4reeahOmDveS4jeS4gOagt++8miIKIG1zZ3N0clsxXSAi5aaC5LiL5paH5Lu25YW25pqC5a2Y55qE5YaF5a655ZKM5bel5L2c5Yy65Y+KIEhFQUQg5Lit55qE6YO95LiN5LiA5qC377yaIgogCi0jOiBidWlsdGluL3JtLmM6MjExCisjOiBidWlsdGluL3JtLmM6MjEyCiBtc2dpZCAiIgogIlxuIgogIih1c2UgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCkBAIC0xNjU3NiwxMyArMTk3OTAsMTMgQEAKICJcbiIKICLvvIjkvb/nlKggLWYg5by65Yi25Yig6Zmk77yJIgogCi0jOiBidWlsdGluL3JtLmM6MjE1CisjOiBidWlsdGluL3JtLmM6MjE2CiBtc2dpZCAidGhlIGZvbGxvd2luZyBmaWxlIGhhcyBjaGFuZ2VzIHN0YWdlZCBpbiB0aGUgaW5kZXg6IgogbXNnaWRfcGx1cmFsICJ0aGUgZm9sbG93aW5nIGZpbGVzIGhhdmUgY2hhbmdlcyBzdGFnZWQgaW4gdGhlIGluZGV4OiIKIG1zZ3N0clswXSAi5LiL5YiX5paH5Lu257Si5byV5Lit5pyJ5Y+Y5pu0IgogbXNnc3RyWzFdICLkuIvliJfmlofku7bntKLlvJXkuK3mnInlj5jmm7QiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyMTkgYnVpbHRpbi9ybS5jOjIyOAorIzogYnVpbHRpbi9ybS5jOjIyMCBidWlsdGluL3JtLmM6MjI5CiBtc2dpZCAiIgogIlxuIgogIih1c2UgLS1jYWNoZWQgdG8ga2VlcCB0aGUgZmlsZSwgb3IgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCkBAIC0xNjU5MCw0MiArMTk4MDQsNDYgQEAKICJcbiIKICLvvIjkvb/nlKggLS1jYWNoZWQg5L+d55WZ5pys5Zyw5paH5Lu277yM5oiW55SoIC1mIOW8uuWItuWIoOmZpO+8iSIKIAotIzogYnVpbHRpbi9ybS5jOjIyNQorIzogYnVpbHRpbi9ybS5jOjIyNgogbXNnaWQgInRoZSBmb2xsb3dpbmcgZmlsZSBoYXMgbG9jYWwgbW9kaWZpY2F0aW9uczoiCiBtc2dpZF9wbHVyYWwgInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBsb2NhbCBtb2RpZmljYXRpb25zOiIKIG1zZ3N0clswXSAi5aaC5LiL5paH5Lu25pyJ5pys5Zyw5L+u5pS577yaIgogbXNnc3RyWzFdICLlpoLkuIvmlofku7bmnInmnKzlnLDkv67mlLnvvJoiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDEKKyM6IGJ1aWx0aW4vcm0uYzoyNDMKIG1zZ2lkICJkbyBub3QgbGlzdCByZW1vdmVkIGZpbGVzIgogbXNnc3RyICLkuI3liJflh7rliKDpmaTnmoTmlofku7YiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDIKKyM6IGJ1aWx0aW4vcm0uYzoyNDQKIG1zZ2lkICJvbmx5IHJlbW92ZSBmcm9tIHRoZSBpbmRleCIKIG1zZ3N0ciAi5Y+q5LuO57Si5byV5Yy65Yig6ZmkIgogCi0jOiBidWlsdGluL3JtLmM6MjQzCisjOiBidWlsdGluL3JtLmM6MjQ1CiBtc2dpZCAib3ZlcnJpZGUgdGhlIHVwLXRvLWRhdGUgY2hlY2siCiBtc2dzdHIgIuW/veeVpeaWh+S7tuabtOaWsOeKtuaAgeajgOafpSIKIAotIzogYnVpbHRpbi9ybS5jOjI0NAorIzogYnVpbHRpbi9ybS5jOjI0NgogbXNnaWQgImFsbG93IHJlY3Vyc2l2ZSByZW1vdmFsIgogbXNnc3RyICLlhYHorrjpgJLlvZLliKDpmaQiCiAKLSM6IGJ1aWx0aW4vcm0uYzoyNDYKKyM6IGJ1aWx0aW4vcm0uYzoyNDgKIG1zZ2lkICJleGl0IHdpdGggYSB6ZXJvIHN0YXR1cyBldmVuIGlmIG5vdGhpbmcgbWF0Y2hlZCIKIG1zZ3N0ciAi5Y2z5L2/5rKh5pyJ5Yy56YWN77yM5Lmf5Lul6Zu254q25oCB6YCA5Ye6IgogCi0jOiBidWlsdGluL3JtLmM6Mjg4CisjOiBidWlsdGluL3JtLmM6MjgyCittc2dpZCAiTm8gcGF0aHNwZWMgd2FzIGdpdmVuLiBXaGljaCBmaWxlcyBzaG91bGQgSSByZW1vdmU/IgorbXNnc3RyICLmsqHmnInmj5Dkvpvot6/lvoTop4TmoLzjgILmiJHlupTor6XliKDpmaTlk6rkupvmlofku7bvvJ8iCisKKyM6IGJ1aWx0aW4vcm0uYzozMDUKIG1zZ2lkICJwbGVhc2Ugc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKIG1zZ3N0ciAi6K+35bCG5oKo55qE5L+u5pS55pqC5a2Y5YiwIC5naXRtb2R1bGVzIOS4reaIlui0ruiXj+WQjuWGjee7p+e7rSIKIAotIzogYnVpbHRpbi9ybS5jOjMwNgorIzogYnVpbHRpbi9ybS5jOjMyMwogIywgYy1mb3JtYXQKIG1zZ2lkICJub3QgcmVtb3ZpbmcgJyVzJyByZWN1cnNpdmVseSB3aXRob3V0IC1yIgogbXNnc3RyICLmnKrmj5DkvpsgLXIg6YCJ6aG55LiN5Lya6YCS5b2S5Yig6ZmkICclcyciCiAKLSM6IGJ1aWx0aW4vcm0uYzozNDUKKyM6IGJ1aWx0aW4vcm0uYzozNjIKICMsIGMtZm9ybWF0CiBtc2dpZCAiZ2l0IHJtOiB1bmFibGUgdG8gcmVtb3ZlICVzIgogbXNnc3RyICJnaXQgcm3vvJrkuI3og73liKDpmaQgJXMiCkBAIC0xNjY1NywxOCArMTk4NzUsNiBAQAogbXNnaWQgInByaW50IHN0YXR1cyBmcm9tIHJlbW90ZSBoZWxwZXIiCiBtc2dzdHIgIuaJk+WNsOadpeiHqui/nOeoiyBoZWxwZXIg55qE54q25oCBIgogCi0jOiBidWlsdGluL3NlcnZlLmM6NwotbXNnaWQgImdpdCBzZXJ2ZSBbPG9wdGlvbnM+XSIKLW1zZ3N0ciAiZ2l0IHNlcnZlIFs86YCJ6aG5Pl0iCi0KLSM6IGJ1aWx0aW4vc2VydmUuYzoxNyBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjMKLW1zZ2lkICJxdWl0IGFmdGVyIGEgc2luZ2xlIHJlcXVlc3QvcmVzcG9uc2UgZXhjaGFuZ2UiCi1tc2dzdHIgIuWcqOS4gOasoeWNleeLrOeahOivt+axgi/lk43lupTkuYvlkI7pgIDlh7oiCi0KLSM6IGJ1aWx0aW4vc2VydmUuYzoxOQotbXNnaWQgImV4aXQgaW1tZWRpYXRlbHkgYWZ0ZXIgYWR2ZXJ0aXNpbmcgY2FwYWJpbGl0aWVzIgotbXNnc3RyICLlr7nog73lipvlub/lkYrkuYvlkI7nq4vljbPpgIDlh7oiCi0KICM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxNAogbXNnaWQgImdpdCBzaG9ydGxvZyBbPG9wdGlvbnM+XSBbPHJldmlzaW9uLXJhbmdlPl0gW1stLV0gPHBhdGg+Li4uXSIKIG1zZ3N0ciAiZ2l0IHNob3J0bG9nIFs86YCJ6aG5Pl0gWzzniYjmnKzojIPlm7Q+XSBbWy0tXSA86Lev5b6EPi4uLl0iCkBAIC0xNjcwMSw3ICsxOTkwNyw3IEBACiBtc2dpZCAiTGluZXdyYXAgb3V0cHV0IgogbXNnc3RyICLmipjooYzovpPlh7oiCiAKLSM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoyOTkKKyM6IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDEKIG1zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgZ2l2ZW4gb3V0c2lkZSByZXBvc2l0b3J5IgogbXNnc3RyICLku5PlupPlpJbmiafooYzmj5DkvpvkuoblpKrlpJrnmoTlj4LmlbAiCiAKQEAgLTE2NzI4LDExOCArMTk5MzQsMTE4IEBACiBtc2dzdHJbMF0gIuW/veeVpSAlc++8jOaXoOazleWkhOeQhiAlZCDkuKrku6XkuIrnmoTlvJXnlKgiCiBtc2dzdHJbMV0gIuW/veeVpSAlc++8jOaXoOazleWkhOeQhiAlZCDkuKrku6XkuIrnmoTlvJXnlKgiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo1NDkKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo1NDgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gbWF0Y2hpbmcgcmVmcyB3aXRoICVzIgogbXNnc3RyICLmsqHmnInlkowgJXMg5Yy56YWN55qE5byV55SoIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ2CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ1CiBtc2dpZCAic2hvdyByZW1vdGUtdHJhY2tpbmcgYW5kIGxvY2FsIGJyYW5jaGVzIgogbXNnc3RyICLmmL7npLrov5znqIvot5/ouKrnmoTlkozmnKzlnLDnmoTliIbmlK8iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDgKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDcKIG1zZ2lkICJzaG93IHJlbW90ZS10cmFja2luZyBicmFuY2hlcyIKIG1zZ3N0ciAi5pi+56S66L+c56iL6Lef6Liq55qE5YiG5pSvIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUwCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjQ5CiBtc2dpZCAiY29sb3IgJyohKy0nIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGJyYW5jaCIKIG1zZ3N0ciAi552A6ImyICcqISstJyDliLDnm7jlupTnmoTliIbmlK8iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTEKIG1zZ2lkICJzaG93IDxuPiBtb3JlIGNvbW1pdHMgYWZ0ZXIgdGhlIGNvbW1vbiBhbmNlc3RvciIKIG1zZ3N0ciAi5pi+56S65YWx5ZCM56WW5YWI5ZCO55qEIDxuPiDkuKrmj5DkuqQiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTQKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTMKIG1zZ2lkICJzeW5vbnltIHRvIG1vcmU9LTEiCiBtc2dzdHIgIuWSjCBtb3JlPS0xIOWQjOS5iSIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NQorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NAogbXNnaWQgInN1cHByZXNzIG5hbWluZyBzdHJpbmdzIgogbXNnc3RyICLkuI3mmL7npLrlrZfnrKbkuLLlkb3lkI0iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTcKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTYKIG1zZ2lkICJpbmNsdWRlIHRoZSBjdXJyZW50IGJyYW5jaCIKIG1zZ3N0ciAi5YyF5ous5b2T5YmN5YiG5pSvIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU5CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU4CiBtc2dpZCAibmFtZSBjb21taXRzIHdpdGggdGhlaXIgb2JqZWN0IG5hbWVzIgogbXNnc3RyICLku6Xlr7nosaHlkI3lrZflkb3lkI3mj5DkuqQiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjEKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjAKIG1zZ2lkICJzaG93IHBvc3NpYmxlIG1lcmdlIGJhc2VzIgogbXNnc3RyICLmmL7npLrlj6/og73lkIjlubbnmoTln7rnur8iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjMKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjIKIG1zZ2lkICJzaG93IHJlZnMgdW5yZWFjaGFibGUgZnJvbSBhbnkgb3RoZXIgcmVmIgogbXNnc3RyICLmmL7npLrmsqHmnInku7vkvZXlvJXnlKjnmoTnmoTlvJXnlKgiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjUKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjQKIG1zZ2lkICJzaG93IGNvbW1pdHMgaW4gdG9wb2xvZ2ljYWwgb3JkZXIiCiBtc2dzdHIgIuS7peaLk+aJkemhuuW6j+aYvuekuuaPkOS6pCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2OAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NwogbXNnaWQgInNob3cgb25seSBjb21taXRzIG5vdCBvbiB0aGUgZmlyc3QgYnJhbmNoIgogbXNnc3RyICLlj6rmmL7npLrkuI3lnKjnrKzkuIDkuKrliIbmlK/kuIrnmoTmj5DkuqQiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzAKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NjkKIG1zZ2lkICJzaG93IG1lcmdlcyByZWFjaGFibGUgZnJvbSBvbmx5IG9uZSB0aXAiCiBtc2dzdHIgIuaYvuekuuS7heS4gOS4quWIhuaUr+WPr+iuv+mXrueahOWQiOW5tuaPkOS6pCIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MgorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3MQogbXNnaWQgInRvcG9sb2dpY2FsbHkgc29ydCwgbWFpbnRhaW5pbmcgZGF0ZSBvcmRlciB3aGVyZSBwb3NzaWJsZSIKIG1zZ3N0ciAi5ouT5omR5pa55byP5o6S5bqP77yM5bm25bC95Y+v6IO95Zyw5L+d5oyB5pel5pyf6aG65bqPIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6Njc1CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6Njc0CiBtc2dpZCAiPG4+Wyw8YmFzZT5dIgogbXNnc3RyICI8bj5bLDxiYXNlPl0iCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzUKIG1zZ2lkICJzaG93IDxuPiBtb3N0IHJlY2VudCByZWYtbG9nIGVudHJpZXMgc3RhcnRpbmcgYXQgYmFzZSIKIG1zZ3N0ciAi5pi+56S65LuO6LW35aeL54K55byA5aeL55qEIDxuPiDmnaHmnIDov5HnmoTlvJXnlKjml6Xlv5forrDlvZUiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MTIKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MTEKIG1zZ2lkICIiCiAiLS1yZWZsb2cgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1hbGwsIC0tcmVtb3RlcywgLS1pbmRlcGVuZGVudCBvciAtLW1lcmdlLWJhc2UiCiBtc2dzdHIgIi0tcmVmbG9nIOWSjCAtLWFsbOOAgS0tcmVtb3Rlc+OAgS0taW5kZXBlbmRlbnQg5oiWIC0tbWVyZ2UtYmFzZSDkuI3lhbzlrrkiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzUKIG1zZ2lkICJubyBicmFuY2hlcyBnaXZlbiwgYW5kIEhFQUQgaXMgbm90IHZhbGlkIgogbXNnc3RyICLmnKrmj5DkvpvliIbmlK/vvIzkuJQgSEVBRCDml6DmlYgiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzkKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3MzgKIG1zZ2lkICItLXJlZmxvZyBvcHRpb24gbmVlZHMgb25lIGJyYW5jaCBuYW1lIgogbXNnc3RyICLpgInpobkgLS1yZWZsb2cg6ZyA6KaB5LiA5Liq5YiG5pSv5ZCNIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQyCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NzQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIm9ubHkgJWQgZW50cnkgY2FuIGJlIHNob3duIGF0IG9uZSB0aW1lLiIKIG1zZ2lkX3BsdXJhbCAib25seSAlZCBlbnRyaWVzIGNhbiBiZSBzaG93biBhdCBvbmUgdGltZS4iCiBtc2dzdHJbMF0gIuS4gOasoeWPquiDveaYvuekuiAlZCDkuKrmnaHnm67jgIIiCiBtc2dzdHJbMV0gIuS4gOasoeWPquiDveaYvuekuiAlZCDkuKrmnaHnm67jgIIiCiAKLSM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDYKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDUKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VjaCByZWYgJXMiCiBtc2dzdHIgIuaXoOatpOW8leeUqCAlcyIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzMAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCByZXYuIgogbXNnaWRfcGx1cmFsICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCByZXZzLiIKIG1zZ3N0clswXSAi5LiN6IO95aSE55CGICVkIOS4quS7peS4iueahOeJiOacrOOAgiIKIG1zZ3N0clsxXSAi5LiN6IO95aSE55CGICVkIOS4quS7peS4iueahOeJiOacrOOAgiIKIAotIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzNAorIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjgzNQogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHJlZi4iCiBtc2dzdHIgIiclcycg5LiN5piv5LiA5Liq5pyJ5pWI55qE5byV55So44CCIgogCi0jOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM3CisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM4CiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBmaW5kIGNvbW1pdCAlcyAoJXMpIgogbXNnc3RyICLkuI3og73mib7liLDmj5DkuqQgJXPvvIglc++8iSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjExCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTIKIG1zZ2lkICIiCiAiZ2l0IHNob3ctcmVmIFstcSB8IC0tcXVpZXRdIFstLXZlcmlmeV0gWy0taGVhZF0gWy1kIHwgLS1kZXJlZmVyZW5jZV0gWy1zIHwgLS0iCiAiaGFzaFs9PG4+XV0gWy0tYWJicmV2Wz08bj5dXSBbLS10YWdzXSBbLS1oZWFkc10gWy0tXSBbPHBhdHRlcm4+Li4uXSIKQEAgLTE2ODQ3LDQyICsyMDA1MywzNDcgQEAKICJnaXQgc2hvdy1yZWYgWy1xIHwgLS1xdWlldF0gWy0tdmVyaWZ5XSBbLS1oZWFkXSBbLWQgfCAtLWRlcmVmZXJlbmNlXSBbLXMgfCAtLSIKICJoYXNoWz08bj5dXSBbLS1hYmJyZXZbPTxuPl1dIFstLXRhZ3NdIFstLWhlYWRzXSBbLS1dIFs85qih5byPPi4uLl0iCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxMgorIzogYnVpbHRpbi9zaG93LXJlZi5jOjEzCiBtc2dpZCAiZ2l0IHNob3ctcmVmIC0tZXhjbHVkZS1leGlzdGluZ1s9PHBhdHRlcm4+XSIKIG1zZ3N0ciAiZ2l0IHNob3ctcmVmIC0tZXhjbHVkZS1leGlzdGluZ1s9POaooeW8jz5dIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTYxCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYyCiBtc2dpZCAib25seSBzaG93IHRhZ3MgKGNhbiBiZSBjb21iaW5lZCB3aXRoIGhlYWRzKSIKIG1zZ3N0ciAi5Y+q5pi+56S65qCH562+77yI5Y+v5Lul5ZKM5aS05YWx55So77yJIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTYyCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYzCiBtc2dpZCAib25seSBzaG93IGhlYWRzIChjYW4gYmUgY29tYmluZWQgd2l0aCB0YWdzKSIKIG1zZ3N0ciAi5Y+q5pi+56S65aS077yI5Y+v5Lul5ZKM5qCH562+5YWx55So77yJIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTYzCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTY0CiBtc2dpZCAic3RyaWN0ZXIgcmVmZXJlbmNlIGNoZWNraW5nLCByZXF1aXJlcyBleGFjdCByZWYgcGF0aCIKIG1zZ3N0ciAi5pu05Lil5qC855qE5byV55So5qOA5rWL77yM6ZyA6KaB57K+56Gu55qE5byV55So6Lev5b6EIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTY2IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjgKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjcgYnVpbHRpbi9zaG93LXJlZi5jOjE2OQogbXNnaWQgInNob3cgdGhlIEhFQUQgcmVmZXJlbmNlLCBldmVuIGlmIGl0IHdvdWxkIGJlIGZpbHRlcmVkIG91dCIKIG1zZ3N0ciAi5pi+56S6IEhFQUQg5byV55So77yM5Y2z5L2/6KKr6L+H5ruk5o6JIgogCi0jOiBidWlsdGluL3Nob3ctcmVmLmM6MTcwCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTcxCiBtc2dpZCAiZGVyZWZlcmVuY2UgdGFncyBpbnRvIG9iamVjdCBJRHMiCiBtc2dzdHIgIui9rOaNouagh+etvuWIsOWvueixoSBJRCIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MgorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MwogbXNnaWQgIm9ubHkgc2hvdyBTSEExIGhhc2ggdXNpbmcgPG4+IGRpZ2l0cyIKIG1zZ3N0ciAi5Y+q5pi+56S65L2/55SoIDxuPiDkuKrmlbDlrZfnmoQgU0hBMSDlk4jluIwiCiAKLSM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzYKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzcKIG1zZ2lkICJkbyBub3QgcHJpbnQgcmVzdWx0cyB0byBzdGRvdXQgKHVzZWZ1bCB3aXRoIC0tdmVyaWZ5KSIKIG1zZ3N0ciAi5LiN5omT5Y2w57uT5p6c5Yiw5qCH5YeG6L6T5Ye677yI5L6L5aaC5LiOIC0tdmVyaWZ5IOWPguaVsOWFseeUqO+8iSIKIAotIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OAorIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3OQogbXNnaWQgInNob3cgcmVmcyBmcm9tIHN0ZGluIHRoYXQgYXJlbid0IGluIGxvY2FsIHJlcG9zaXRvcnkiCiBtc2dzdHIgIuaYvuekuuS7juagh+WHhui+k+WFpeS4reivu+WFpeeahOS4jeWcqOacrOWcsOS7k+W6k+S4reeahOW8leeUqCIKIAorIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyMQorbXNnaWQgImdpdCBzcGFyc2UtY2hlY2tvdXQgKGluaXR8bGlzdHxzZXR8YWRkfGRpc2FibGUpIDxvcHRpb25zPiIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCAoaW5pdHxsaXN0fHNldHxhZGR8ZGlzYWJsZSkgPOmAiemhuT4iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NjQKK21zZ2lkICJ0aGlzIHdvcmt0cmVlIGlzIG5vdCBzcGFyc2UgKHNwYXJzZS1jaGVja291dCBmaWxlIG1heSBub3QgZXhpc3QpIgorbXNnc3RyICLmnKzlt6XkvZzljLrkuI3mmK/nqIDnlo/mqKHlvI/vvIjnqIDnlo/mo4Dlh7rmlofku7blj6/og73kuI3lrZjlnKjvvIkiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjI1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkgZm9yIHNwYXJzZS1jaGVja291dCBmaWxlIgorbXNnc3RyICLml6Dms5XkuLrnqIDnlo/mo4Dlh7rmlofku7bliJvlu7rnm67lvZUiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHNldCBleHRlbnNpb25zLndvcmt0cmVlQ29uZmlnIHNldHRpbmciCittc2dzdHIgIuaXoOazleiuvue9riBleHRlbnNpb25zLndvcmt0cmVlQ29uZmlnIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjI4MworbXNnaWQgImdpdCBzcGFyc2UtY2hlY2tvdXQgaW5pdCBbLS1jb25lXSIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCBpbml0IFstLWNvbmVdIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjMwMgorbXNnaWQgImluaXRpYWxpemUgdGhlIHNwYXJzZS1jaGVja291dCBpbiBjb25lIG1vZGUiCittc2dzdHIgIuWIneWni+WMlueogOeWj+ajgOWHuuS4uiBjb25lIOaooeW8jyIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzozMDgKK21zZ2lkICJpbml0aWFsaXplIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAi5Yid5aeL5YyW56iA55aP5qOA5Ye6IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIgorbXNnc3RyICLml6Dms5XmiZPlvIAgJyVzJyIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzozOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG5vcm1hbGl6ZSBwYXRoICVzIgorbXNnc3RyICLml6Dms5Xop4TojIPljJbot6/lvoQgJXMiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDEwCittc2dpZCAiZ2l0IHNwYXJzZS1jaGVja291dCAoc2V0fGFkZCkgKC0tc3RkaW4gfCA8cGF0dGVybnM+KSIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCAoc2V0fGFkZCkgKC0tc3RkaW4gfCA85qih5byPPikiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bnF1b3RlIEMtc3R5bGUgc3RyaW5nICclcyciCittc2dzdHIgIuaXoOazleS4uiBDIOivreiogOmjjuagvOeahOWtl+espuS4siAnJXMnIOWOu+W8leWPtyIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo0ODkgYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1MTMKK21zZ2lkICJ1bmFibGUgdG8gbG9hZCBleGlzdGluZyBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMiCittc2dzdHIgIuaXoOazleWKoOi9veeOsOWtmOeahOeogOeWj+ajgOWHuuaooeW8jyIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1NTgKK21zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gc3RhbmRhcmQgaW4iCittc2dzdHIgIuS7juagh+WHhui+k+WFpeivu+WPluaooeW8jyIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1NjQKK21zZ2lkICJzZXQgc3BhcnNlLWNoZWNrb3V0IHBhdHRlcm5zIgorbXNnc3RyICLorr7nva7nqIDnlo/mo4Dlh7rmqKHlvI8iCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NTgxCittc2dpZCAiZGlzYWJsZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgIuemgeeUqOeogOeWj+ajgOWHuiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1OTMKK21zZ2lkICJlcnJvciB3aGlsZSByZWZyZXNoaW5nIHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICLliLfmlrDlt6XkvZznm67lvZXml7blh7rplJkiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMiBidWlsdGluL3N0YXNoLmM6MzgKK21zZ2lkICJnaXQgc3Rhc2ggbGlzdCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGxpc3QgWzzpgInpobk+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjIzIGJ1aWx0aW4vc3Rhc2guYzo0MworbXNnaWQgImdpdCBzdGFzaCBzaG93IFs8b3B0aW9ucz5dIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIHNob3cgWzzpgInpobk+XSBbPHN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNCBidWlsdGluL3N0YXNoLmM6NDgKK21zZ2lkICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggZHJvcCBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjUKK21zZ2lkICJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggKCBwb3AgfCBhcHBseSApIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjYgYnVpbHRpbi9zdGFzaC5jOjYzCittc2dpZCAiZ2l0IHN0YXNoIGJyYW5jaCA8YnJhbmNobmFtZT4gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggYnJhbmNoIDzliIbmlK/lkI0+IFs8c3Rhc2g+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI3IGJ1aWx0aW4vc3Rhc2guYzo2OAorbXNnaWQgImdpdCBzdGFzaCBjbGVhciIKK21zZ3N0ciAiZ2l0IHN0YXNoIGNsZWFyIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjgKK21zZ2lkICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDxtZXNzYWdlPl1cbiIKKyIgICAgICAgICAgWy0tcGF0aHNwZWMtZnJvbS1maWxlPTxmaWxlPiBbLS1wYXRoc3BlYy1maWxlLW51bF1dXG4iCisiICAgICAgICAgIFstLV0gWzxwYXRoc3BlYz4uLi5dXSIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWy1tfC0tbWVzc2FnZSA85raI5oGvPl1cbiIKKyIgICAgICAgICAgWy0tcGF0aHNwZWMtZnJvbS1maWxlPTxmaWxlPiBbLS1wYXRoc3BlYy1maWxlLW51bF1dXG4iCisiICAgICAgICAgIFstLV0gWzzot6/lvoTop4TmoLw+Li4uXV0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzozMiBidWlsdGluL3N0YXNoLmM6ODUKK21zZ2lkICIiCisiZ2l0IHN0YXNoIHNhdmUgWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs8bWVzc2FnZT5dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIHNhdmUgWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFs85raI5oGvPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1MworbXNnaWQgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBwb3AgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1OAorbXNnaWQgImdpdCBzdGFzaCBhcHBseSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKK21zZ3N0ciAiZ2l0IHN0YXNoIGFwcGx5IFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NzMKK21zZ2lkICJnaXQgc3Rhc2ggc3RvcmUgWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dIFstcXwtLXF1aWV0XSA8Y29tbWl0PiIKK21zZ3N0ciAiZ2l0IHN0YXNoIHN0b3JlIFstbXwtLW1lc3NhZ2UgPOa2iOaBrz5dIFstcXwtLXF1aWV0XSA85o+Q5LqkPiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjc4Cittc2dpZCAiIgorImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWy1tfC0tbWVzc2FnZSA8bWVzc2FnZT5dXG4iCisiICAgICAgICAgIFstLV0gWzxwYXRoc3BlYz4uLi5dXSIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBbcHVzaCBbLXB8LS1wYXRjaF0gWy1rfC0tW25vLV1rZWVwLWluZGV4XSBbLXF8LS1xdWlldF1cbiIKKyIgICAgICAgICAgWy11fC0taW5jbHVkZS11bnRyYWNrZWRdIFstYXwtLWFsbF0gWy1tfC0tbWVzc2FnZSA85raI5oGvPl1cbiIKKyIgICAgICAgICAgWy0tXSBbPOi3r+W+hOinhOagvD4uLi5dXSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHN0YXNoLWxpa2UgY29tbWl0IgorbXNnc3RyICInJXMnIOS4jeWDj+aYr+S4gOS4qui0ruiXj+aPkOS6pCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJUb28gbWFueSByZXZpc2lvbnMgc3BlY2lmaWVkOiVzIgorbXNnc3RyICLmjIflrprkuoblpKrlpJrnmoTniYjmnKzvvJolcyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE2MiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU0OQorbXNnaWQgIk5vIHN0YXNoIGVudHJpZXMgZm91bmQuIgorbXNnc3RyICLmnKrlj5HnjrDotK7ol4/mnaHnm67jgIIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgcmVmZXJlbmNlIgorbXNnc3RyICIlcyDkuI3mmK/kuIDkuKrmnInmlYjnmoTlvJXnlKjlkI0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyMjUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3NQorbXNnaWQgImdpdCBzdGFzaCBjbGVhciB3aXRoIHBhcmFtZXRlcnMgaXMgdW5pbXBsZW1lbnRlZCIKK21zZ3N0ciAiZ2l0IHN0YXNoIGNsZWFyIOS4jeaUr+aMgeWPguaVsCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQwNAorbXNnaWQgImNhbm5vdCBhcHBseSBhIHN0YXNoIGluIHRoZSBtaWRkbGUgb2YgYSBtZXJnZSIKK21zZ3N0ciAi5peg5rOV5Zyo5ZCI5bm26L+H56iL5bqU55So6LSu6JePIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZW5lcmF0ZSBkaWZmICVzXiEuIgorbXNnc3RyICLml6Dms5XnlJ/miJDlt67lvIIgJXNeIS4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MjIKK21zZ2lkICJjb25mbGljdHMgaW4gaW5kZXguVHJ5IHdpdGhvdXQgLS1pbmRleC4iCittc2dzdHIgIue0ouW8leS4reacieWGsueqgeOAguWwneivleS4jeeUqCAtLWluZGV444CCIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDI4Cittc2dpZCAiY291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKK21zZ3N0ciAi5LiN6IO95L+d5a2Y57Si5byV5qCRIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDM3Cittc2dpZCAiY291bGQgbm90IHJlc3RvcmUgdW50cmFja2VkIGZpbGVzIGZyb20gc3Rhc2giCittc2dzdHIgIuaXoOazleS7jui0ruiXj+adoeebruS4reaBouWkjeacqui3n+i4quaWh+S7tiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQ1MQorIywgYy1mb3JtYXQKK21zZ2lkICJNZXJnaW5nICVzIHdpdGggJXMiCittc2dzdHIgIuato+WcqOWQiOW5tiAlcyDlkowgJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0NjEgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo2ODEKK21zZ2lkICJJbmRleCB3YXMgbm90IHVuc3Rhc2hlZC4iCittc2dzdHIgIue0ouW8leacquS7jui0ruiXj+S4reaBouWkjeOAgiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjUyMiBidWlsdGluL3N0YXNoLmM6NjIxCittc2dpZCAiYXR0ZW1wdCB0byByZWNyZWF0ZSB0aGUgaW5kZXgiCittc2dzdHIgIuWwneivlemHjeW7uue0ouW8lSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEcm9wcGVkICVzICglcykiCittc2dzdHIgIuS4ouW8g+S6hiAlc++8iCVz77yJIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBDb3VsZCBub3QgZHJvcCBzdGFzaCBlbnRyeSIKK21zZ3N0ciAiJXPvvJrml6Dms5XkuKLlvIPotK7ol4/mnaHnm64iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBzdGFzaCByZWZlcmVuY2UiCittc2dzdHIgIiclcycg5LiN5piv5LiA5Liq6LSu6JeP5byV55SoIgorCisjOiBidWlsdGluL3N0YXNoLmM6NjMzIGdpdC1sZWdhY3ktc3Rhc2guc2g6Njk1Cittc2dpZCAiVGhlIHN0YXNoIGVudHJ5IGlzIGtlcHQgaW4gY2FzZSB5b3UgbmVlZCBpdCBhZ2Fpbi4iCittc2dzdHIgIui0ruiXj+adoeebruiiq+S/neeVmeS7peWkh+aCqOWGjeasoemcgOimgeOAgiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjY1NiBnaXQtbGVnYWN5LXN0YXNoLnNoOjcxMworbXNnaWQgIk5vIGJyYW5jaCBuYW1lIHNwZWNpZmllZCIKK21zZ3N0ciAi5pyq5oyH5a6a5YiG5pSv5ZCNIgorCisjOiBidWlsdGluL3N0YXNoLmM6Nzk2IGJ1aWx0aW4vc3Rhc2guYzo4MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHVwZGF0ZSAlcyB3aXRoICVzIgorbXNnc3RyICLml6Dms5XnlKggJTIkcyDmm7TmlrAgJTEkcyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjgxNCBidWlsdGluL3N0YXNoLmM6MTQ3OCBidWlsdGluL3N0YXNoLmM6MTU0MworbXNnaWQgInN0YXNoIG1lc3NhZ2UiCittc2dzdHIgIui0ruiXj+ivtOaYjiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjgyNAorbXNnaWQgIlwiZ2l0IHN0YXNoIHN0b3JlXCIgcmVxdWlyZXMgb25lIDxjb21taXQ+IGFyZ3VtZW50IgorbXNnc3RyICJcImdpdCBzdGFzaCBzdG9yZVwiIOmcgOimgeS4gOS4qiA85o+Q5LqkPiDlj4LmlbAiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMDQ5IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjE4Cittc2dpZCAiTm8gY2hhbmdlcyBzZWxlY3RlZCIKK21zZ3N0ciAi5rKh5pyJ6YCJ5oup5Y+Y5pu0IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE0OSBnaXQtbGVnYWN5LXN0YXNoLnNoOjE1MAorbXNnaWQgIllvdSBkbyBub3QgaGF2ZSB0aGUgaW5pdGlhbCBjb21taXQgeWV0IgorbXNnc3RyICLmgqjlsJrmnKrlu7rnq4vliJ3lp4vmj5DkuqQiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTc2IGdpdC1sZWdhY3ktc3Rhc2guc2g6MTY1Cittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgaW5kZXggc3RhdGUiCittc2dzdHIgIuaXoOazleS/neWtmOW9k+WJjee0ouW8leeKtuaAgSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExODUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxODAKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgdW50cmFja2VkIGZpbGVzIgorbXNnc3RyICLml6Dms5Xkv53lrZjmnKrot5/ouKrmlofku7YiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTk2IGJ1aWx0aW4vc3Rhc2guYzoxMjA1IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjAxCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIxNAorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHdvcmt0cmVlIHN0YXRlIgorbXNnc3RyICLml6Dms5Xkv53lrZjlvZPliY3lt6XkvZzljLrnirbmgIEiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMjMzIGdpdC1sZWdhY3ktc3Rhc2guc2g6MjM0Cittc2dpZCAiQ2Fubm90IHJlY29yZCB3b3JraW5nIHRyZWUgc3RhdGUiCittc2dzdHIgIuS4jeiDveiusOW9leW3peS9nOWMuueKtuaAgSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEyODIgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozMzgKK21zZ2lkICJDYW4ndCB1c2UgLS1wYXRjaCBhbmQgLS1pbmNsdWRlLXVudHJhY2tlZCBvciAtLWFsbCBhdCB0aGUgc2FtZSB0aW1lIgorbXNnc3RyICLkuI3og73lkIzml7bkvb/nlKjlj4LmlbAgLS1wYXRjaCDlkowgLS1pbmNsdWRlLXVudHJhY2tlZCDmiJYgLS1hbGwiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMjk4Cittc2dpZCAiRGlkIHlvdSBmb3JnZXQgdG8gJ2dpdCBhZGQnPyIKK21zZ3N0ciAi5oKo5piv5ZCm5b+Y5LqG5omn6KGMICdnaXQgYWRkJ++8nyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMTMgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNDYKK21zZ2lkICJObyBsb2NhbCBjaGFuZ2VzIHRvIHNhdmUiCittc2dzdHIgIuayoeacieimgeS/neWtmOeahOacrOWcsOS/ruaUuSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMjAgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTEKK21zZ2lkICJDYW5ub3QgaW5pdGlhbGl6ZSBzdGFzaCIKK21zZ3N0ciAi5peg5rOV5Yid5aeL5YyW6LSu6JePIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTMzNSBnaXQtbGVnYWN5LXN0YXNoLnNoOjM1NQorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IHN0YXR1cyIKK21zZ3N0ciAi5peg5rOV5L+d5a2Y5b2T5YmN54q25oCBIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTM0MAorIywgYy1mb3JtYXQKK21zZ2lkICJTYXZlZCB3b3JraW5nIGRpcmVjdG9yeSBhbmQgaW5kZXggc3RhdGUgJXMiCittc2dzdHIgIuS/neWtmOW3peS9nOebruW9leWSjOe0ouW8leeKtuaAgSAlcyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0MzAgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozODUKK21zZ2lkICJDYW5ub3QgcmVtb3ZlIHdvcmt0cmVlIGNoYW5nZXMiCittc2dzdHIgIuaXoOazleWIoOmZpOW3peS9nOWMuuWPmOabtCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NjkgYnVpbHRpbi9zdGFzaC5jOjE1MzQKK21zZ2lkICJrZWVwIGluZGV4IgorbXNnc3RyICLkv53mjIHntKLlvJUiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDcxIGJ1aWx0aW4vc3Rhc2guYzoxNTM2Cittc2dpZCAic3Rhc2ggaW4gcGF0Y2ggbW9kZSIKK21zZ3N0ciAi5Lul6KGl5LiB5qih5byP6LSu6JePIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3MiBidWlsdGluL3N0YXNoLmM6MTUzNworbXNnaWQgInF1aWV0IG1vZGUiCittc2dzdHIgIumdmem7mOaooeW8jyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NzQgYnVpbHRpbi9zdGFzaC5jOjE1MzkKK21zZ2lkICJpbmNsdWRlIHVudHJhY2tlZCBmaWxlcyBpbiBzdGFzaCIKK21zZ3N0ciAi6LSu6JeP5Lit5YyF5ZCr5pyq6Lef6Liq5paH5Lu2IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3NiBidWlsdGluL3N0YXNoLmM6MTU0MQorbXNnaWQgImluY2x1ZGUgaWdub3JlIGZpbGVzIgorbXNnc3RyICLljIXlkKvlv73nlaXnmoTmlofku7YiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNjAwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBleGVjICVzIgorbXNnc3RyICLkuI3og73miafooYwgJXMiCisKICM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjE4CiBtc2dpZCAiZ2l0IHN0cmlwc3BhY2UgWy1zIHwgLS1zdHJpcC1jb21tZW50c10iCiBtc2dzdHIgImdpdCBzdHJpcHNwYWNlIFstcyB8IC0tc3RyaXAtY29tbWVudHNdIgpAQCAtMTY4OTEsNDggKzIwNDAyLDQ4IEBACiBtc2dpZCAiZ2l0IHN0cmlwc3BhY2UgWy1jIHwgLS1jb21tZW50LWxpbmVzXSIKIG1zZ3N0ciAiZ2l0IHN0cmlwc3BhY2UgWy1jIHwgLS1jb21tZW50LWxpbmVzXSIKIAotIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MzYKKyM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM3CiBtc2dpZCAic2tpcCBhbmQgcmVtb3ZlIGFsbCBsaW5lcyBzdGFydGluZyB3aXRoIGNvbW1lbnQgY2hhcmFjdGVyIgogbXNnc3RyICLot7Pov4flkoznp7vpmaTmiYDmnInnmoTms6jph4rooYwiCiAKLSM6IGJ1aWx0aW4vc3RyaXBzcGFjZS5jOjM5CisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzo0MAogbXNnaWQgInByZXBlbmQgY29tbWVudCBjaGFyYWN0ZXIgYW5kIHNwYWNlIHRvIGVhY2ggbGluZSIKIG1zZ3N0ciAi5Li65q+P5LiA6KGM55qE6KGM6aaW5re75Yqg5rOo6YeK56ym5ZKM56m65qC8IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MzkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJFeHBlY3RpbmcgYSBmdWxsIHJlZiBuYW1lLCBnb3QgJXMiCiBtc2dzdHIgIuacn+acm+S4gOS4quWujOaVtOeahOW8leeUqOWQjeensO+8jOWNtOW+l+WIsCAlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjQKIG1zZ2lkICJzdWJtb2R1bGUtLWhlbHBlciBwcmludC1kZWZhdWx0LXJlbW90ZSB0YWtlcyBubyBhcmd1bWVudHMiCiBtc2dzdHIgInN1Ym1vZHVsZS0taGVscGVyIHByaW50LWRlZmF1bHQtcmVtb3RlIOS4jeW4puWPguaVsCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAyCiAjLCBjLWZvcm1hdAogbXNnaWQgImNhbm5vdCBzdHJpcCBvbmUgY29tcG9uZW50IG9mZiB1cmwgJyVzJyIKIG1zZ3N0ciAi5peg5rOV5LuOIHVybCAnJXMnIOWJpeemu+S4gOS4que7hOS7tiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwNyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxMCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NQogbXNnaWQgImFsdGVybmF0aXZlIGFuY2hvciBmb3IgcmVsYXRpdmUgcGF0aHMiCiBtc2dzdHIgIuebuOWvuei3r+W+hOeahOabv+S7o+mUmuiusO+8iGFuY2hvcu+8iSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxMgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxNQogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBsaXN0IFstLXByZWZpeD08cGF0aD5dIFs8cGF0aD4uLi5dIgogbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbGlzdCBbLS1wcmVmaXg9POi3r+W+hD5dIFs86Lev5b6EPi4uLl0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NjkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYyNgotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY0OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQ3MiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjMwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjUzCiAjLCBjLWZvcm1hdAogbXNnaWQgIk5vIHVybCBmb3VuZCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyBpbiAuZ2l0bW9kdWxlcyIKIG1zZ3N0ciAi5ZyoIC5naXRtb2R1bGVzIOS4reacquaJvuWIsOWtkOaooee7hCAnJXMnIOeahCB1cmwiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAiRW50ZXJpbmcgJyVzJ1xuIgogbXNnc3RyICLov5vlhaUgJyVzJ1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTI0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTI3CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJydW5fY29tbWFuZCByZXR1cm5lZCBub24temVybyBzdGF0dXMgZm9yICVzXG4iCkBAIC0xNjk0MSw3ICsyMDQ1Miw3IEBACiAi5a+5ICVzIOaJp+ihjCBydW5fY29tbWFuZCDov5Tlm57pnZ7pm7blgLzjgIJcbiIKICIuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTQ1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJydW5fY29tbWFuZCByZXR1cm5lZCBub24temVybyBzdGF0dXMgd2hpbGUgcmVjdXJzaW5nIGluIHRoZSBuZXN0ZWQgIgpAQCAtMTY5NTEsMTIwICsyMDQ2MiwxMTkgQEAKICLlnKjpgJLlvZIgJXMg55qE5a2Q5qih57uE5omn6KGMIHJ1bl9jb21tYW5kIOaXtui/lOWbnumdnumbtuWAvOOAglxuIgogIi4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjEKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjUKIG1zZ2lkICJTdXBwcmVzcyBvdXRwdXQgb2YgZW50ZXJpbmcgZWFjaCBzdWJtb2R1bGUgY29tbWFuZCIKIG1zZ3N0ciAi6Zi75q2i6L+b5YWl5q+P5LiA5Liq5a2Q5qih57uE5ZG95Luk55qE6L6T5Ye6IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTYzIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDQ4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDYzCiBtc2dpZCAiUmVjdXJzZSBpbnRvIG5lc3RlZCBzdWJtb2R1bGVzIgogbXNnc3RyICLpgJLlvZLov5vlhaXltYzlpZflrZDmqKHnu4TkuK0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjgKLW1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSA8Y29tbWFuZD4iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIDzlkb3ku6Q+IgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU3MgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBmb3JlYWNoIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFstLV0gPGNvbW1hbmQ+IgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbLS1dIDzlkb3ku6Q+IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTk1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTk5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJjb3VsZCBub3QgbG9vayB1cCBjb25maWd1cmF0aW9uICclcycuIEFzc3VtaW5nIHRoaXMgcmVwb3NpdG9yeSBpcyBpdHMgb3duICIKICJhdXRob3JpdGF0aXZlIHVwc3RyZWFtLiIKIG1zZ3N0ciAi5peg5rOV5om+5Yiw6YWN572uICclcyfjgILlgYflrprov5nkuKrku5PlupPmmK/lhbboh6rouqvnmoTlrpjmlrnkuIrmuLjjgIIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NjMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHVybCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAi5peg5rOV5Li65a2Q5qih57uEICclcycg5rOo5YaMIHVybCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY2NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyAoJXMpIHJlZ2lzdGVyZWQgZm9yIHBhdGggJyVzJ1xuIgotbXNnc3RyICLlrZDmqKHnu4QgJyVzJ++8iCVz77yJ5pyq5a+56Lev5b6EICclcycg5rOo5YaMXG4iCittc2dzdHIgIuWtkOaooee7hCAnJXMn77yIJXPvvInlt7Llr7not6/lvoQgJyVzJyDms6jlhoxcbiIKIAotIwotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY3NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY4MQogIywgYy1mb3JtYXQKIG1zZ2lkICJ3YXJuaW5nOiBjb21tYW5kIHVwZGF0ZSBtb2RlIHN1Z2dlc3RlZCBmb3Igc3VibW9kdWxlICclcydcbiIKIG1zZ3N0ciAi6K2m5ZGK77ya5bu66K6u5a2Q5qih57uEICclcycg5L2/55So5ZG95Luk5pu05paw5qih5byPXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2ODQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2ODgKICMsIGMtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHVwZGF0ZSBtb2RlIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICLml6Dms5XkuLrlrZDmqKHnu4QgJyVzJyDms6jlhozmm7TmlrDmqKHlvI8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MDYKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MTAKIG1zZ2lkICJTdXBwcmVzcyBvdXRwdXQgZm9yIGluaXRpYWxpemluZyBhIHN1Ym1vZHVsZSIKIG1zZ3N0ciAi6Zi75q2i5a2Q5qih57uE5Yid5aeL5YyW55qE6L6T5Ye6IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzExCi1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxwYXRoPl0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs86Lev5b6EPl0iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NzE1Cittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzxvcHRpb25zPl0gWzxwYXRoPl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBpbml0IFs86YCJ6aG5Pl0gWzzot6/lvoQ+XSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjc4MyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Nzg5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5MjQKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gc3VibW9kdWxlIG1hcHBpbmcgZm91bmQgaW4gLmdpdG1vZHVsZXMgZm9yIHBhdGggJyVzJyIKIG1zZ3N0ciAi5ZyoIC5naXRtb2R1bGVzIOS4reayoeacieWPkeeOsOi3r+W+hCAnJXMnIOeahOWtkOaooee7hOaYoOWwhCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjgyMgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjgzNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIHJlZiBpbnNpZGUgdGhlIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICLml6Dms5Xop6PmnpDlrZDmqKHnu4QgJyVzJyDnmoQgSEVBRCDlvJXnlKgiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NDkgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMTgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NjQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMzMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKIG1zZ3N0ciAi6YCS5b2S5a2Q5qih57uEICclcycg5aSx6LSlIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODczIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTgyCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODg4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTk5CiBtc2dpZCAiU3VwcHJlc3Mgc3VibW9kdWxlIHN0YXR1cyBvdXRwdXQiCiBtc2dzdHIgIumYu+atouWtkOaooee7hOeKtuaAgei+k+WHuiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg3NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg4OQogbXNnaWQgIiIKICJVc2UgY29tbWl0IHN0b3JlZCBpbiB0aGUgaW5kZXggaW5zdGVhZCBvZiB0aGUgb25lIHN0b3JlZCBpbiB0aGUgc3VibW9kdWxlICIKICJIRUFEIgogbXNnc3RyICLkvb/nlKjlrZjlgqjlnKjntKLlvJXkuK3nmoTmj5DkuqTvvIzogIzpnZ7lrZjlgqjlnKjlrZDmqKHnu4QgSEVBRCDkuK3nmoTmj5DkuqQiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NzUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4OTAKIG1zZ2lkICJyZWN1cnNlIGludG8gbmVzdGVkIHN1Ym1vZHVsZXMiCiBtc2dzdHIgIumAkuW9kui/m+WFpeW1jOWll+WtkOaooee7hOS4rSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg4MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg5NQogbXNnaWQgImdpdCBzdWJtb2R1bGUgc3RhdHVzIFstLXF1aWV0XSBbLS1jYWNoZWRdIFstLXJlY3Vyc2l2ZV0gWzxwYXRoPi4uLl0iCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUgc3RhdHVzIFstLXF1aWV0XSBbLS1jYWNoZWRdIFstLXJlY3Vyc2l2ZV0gWzzot6/lvoQ+Li4uXSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkwNAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkxOQogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBuYW1lIDxwYXRoPiIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIG5hbWUgPOi3r+W+hD4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5NjgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5ODMKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIGZvciAnJXMnXG4iCiBtc2dzdHIgIuS4uiAnJXMnIOWQjOatpeWtkOaooee7hCB1cmxcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk3NAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk4OQogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcmVnaXN0ZXIgdXJsIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICLml6Dms5XkuLrlrZDmqKHnu4Tot6/lvoQgJyVzJyDms6jlhowgdXJsIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6OTg4CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAwMwogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gZ2V0IHRoZSBkZWZhdWx0IHJlbW90ZSBmb3Igc3VibW9kdWxlICclcyciCiBtc2dzdHIgIuaXoOazleW+l+WIsOWtkOaooee7hCAnJXMnIOeahOm7mOiupOi/nOeoi+WFs+iBlCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk5OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMTQKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHVwZGF0ZSByZW1vdGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICLml6Dms5XkuLrlrZDmqKHnu4QgJyVzJyDmm7TmlrDov5znqIvlhbPogZQiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDQ2CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA2MQogbXNnaWQgIlN1cHByZXNzIG91dHB1dCBvZiBzeW5jaHJvbml6aW5nIHN1Ym1vZHVsZSB1cmwiCiBtc2dzdHIgIumYu+atouWtkOaooee7hCB1cmwg5ZCM5q2l55qE6L6T5Ye6IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTA1MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwNjgKIG1zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgc3luYyBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbPHBhdGg+XSIKIG1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHN5bmMgWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWzzot6/lvoQ+XSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMDcKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTIyCiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICJTdWJtb2R1bGUgd29yayB0cmVlICclcycgY29udGFpbnMgYSAuZ2l0IGRpcmVjdG9yeSAodXNlICdybSAtcmYnIGlmIHlvdSAiCkBAIC0xNzA3MywyMjIgKzIwNTgzLDI1NyBAQAogIuWtkOaooee7hOW3peS9nOWMuiAnJXMnIOWMheWQq+S4gOS4qiAuZ2l0IOebruW9le+8iOWmguaenOaCqOehrumcgOWIoOmZpOWug+WPiuWFtuWFqOmDqOWOhuWPsu+8jOS9v+eUqCAncm0gIgogIi1yZicg5ZG95Luk77yJIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTExOQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExMzQKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJyBjb250YWlucyBsb2NhbCBtb2RpZmljYXRpb25zOyB1c2UgJy1mJyB0byBkaXNjYXJkICIKICJ0aGVtIgogbXNnc3RyICLlrZDmqKHnu4Tlt6XkvZzljLogJyVzJyDljIXlkKvmnKzlnLDkv67mlLnvvJvkvb/nlKggJy1mJyDkuKLlvIPlroPku6wiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTI3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE0MgogIywgYy1mb3JtYXQKIG1zZ2lkICJDbGVhcmVkIGRpcmVjdG9yeSAnJXMnXG4iCiBtc2dzdHIgIuW3sua4hemZpOebruW9lSAnJXMnXG4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTI5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIHN1Ym1vZHVsZSB3b3JrIHRyZWUgJyVzJ1xuIgogbXNnc3RyICLml6Dms5Xnp7vpmaTlrZDmqKHnu4Tlt6XkvZzljLogJyVzJ1xuIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTEzOAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExNTUKICMsIGMtZm9ybWF0CiBtc2dpZCAiY291bGQgbm90IGNyZWF0ZSBlbXB0eSBzdWJtb2R1bGUgZGlyZWN0b3J5ICVzIgogbXNnc3RyICLkuI3og73liJvlu7rnqbrnmoTlrZDmqKHnu4Tnm67lvZUgJXMiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTU0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE3MQogIywgYy1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgJyVzJyAoJXMpIHVucmVnaXN0ZXJlZCBmb3IgcGF0aCAnJXMnXG4iCiBtc2dzdHIgIuWtkOaooee7hCAnJXMn77yIJXPvvInmnKrlr7not6/lvoQgJyVzJyDms6jlhoxcbiIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjAwCiBtc2dpZCAiUmVtb3ZlIHN1Ym1vZHVsZSB3b3JraW5nIHRyZWVzIGV2ZW4gaWYgdGhleSBjb250YWluIGxvY2FsIGNoYW5nZXMiCiBtc2dzdHIgIuWIoOmZpOWtkOaooee7hOW3peS9nOWMuu+8jOWNs+S9v+WMheWQq+acrOWcsOS/ruaUuSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjExODQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjAxCiBtc2dpZCAiVW5yZWdpc3RlciBhbGwgc3VibW9kdWxlcyIKIG1zZ3N0ciAi5bCG5omA5pyJ5a2Q5qih57uE5Y+W5raI5rOo5YaMIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE4OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDYKIG1zZ2lkICIiCiAiZ2l0IHN1Ym1vZHVsZSBkZWluaXQgWy0tcXVpZXRdIFstZiB8IC0tZm9yY2VdIFstLWFsbCB8IFstLV0gWzxwYXRoPi4uLl1dIgogbXNnc3RyICIiCiAiZ2l0IHN1Ym1vZHVsZSBkZWluaXQgWy0tcXVpZXRdIFstZiB8IC0tZm9yY2VdIFstLWFsbCB8IFstLV0gWzzot6/lvoQ+Li4uXV0iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjAzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIyMAogbXNnaWQgIlVzZSAnLS1hbGwnIGlmIHlvdSByZWFsbHkgd2FudCB0byBkZWluaXRpYWxpemUgYWxsIHN1Ym1vZHVsZXMiCiBtc2dzdHIgIuWmguaenOaCqOehruWunuaDs+imgeWvueaJgOacieWtkOaooee7hOaJp+ihjOWPlua2iOWIneWni+WMlu+8jOivt+S9v+eUqCAnLS1hbGwnIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTI5NyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMwMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyODkKK21zZ2lkICIiCisiQW4gYWx0ZXJuYXRlIGNvbXB1dGVkIGZyb20gYSBzdXBlcnByb2plY3QncyBhbHRlcm5hdGUgaXMgaW52YWxpZC5cbiIKKyJUbyBhbGxvdyBHaXQgdG8gY2xvbmUgd2l0aG91dCBhbiBhbHRlcm5hdGUgaW4gc3VjaCBhIGNhc2UsIHNldFxuIgorInN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IHRvICdpbmZvJyBvciwgZXF1aXZhbGVudGx5LCBjbG9uZSB3aXRoXG4iCisiJy0tcmVmZXJlbmNlLWlmLWFibGUnIGluc3RlYWQgb2YgJy0tcmVmZXJlbmNlJy4iCittc2dzdHIgIiIKKyLku47kuIDkuKrniLbpobnnm67nmoTlpIfnlKjku5PlupPkuK3orqHnrpflh7rnmoTlpIfnlKjku5PlupPml6DmlYjjgIJcbiIKKyLmraTlnLrmma/kuIvvvIzorr7nva4gc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kg5Li6ICdpbmZvJ++8jOS7peWFgeiuuFxuIgorIkdpdCDkuI3kvb/nlKjlpIfnlKjku5PlupPlhYvpmobvvIzmiJbogIXnrYnmlYjlnLDkvb/nlKggJy0tcmVmZXJlbmNlLWlmLWFibGUnIOiAjOmdnlxuIgorIictLXJlZmVyZW5jZScg5p2l5YWL6ZqG44CCIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMyOCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJzdWJtb2R1bGUgJyVzJyBjYW5ub3QgYWRkIGFsdGVybmF0ZTogJXMiCiBtc2dzdHIgIuWtkOaooee7hCAnJXMnIOS4jeiDvea3u+WKoOS7k+W6k+Wkh+mAie+8miVzIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTMzNgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNjcKICMsIGMtZm9ybWF0CiBtc2dpZCAiVmFsdWUgJyVzJyBmb3Igc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kgaXMgbm90IHJlY29nbml6ZWQiCiBtc2dzdHIgIuS4jeiDveivhuWIqyBzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSDnmoTlj5blgLwgJyVzJyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzNDMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc0CiAjLCBjLWZvcm1hdAogbXNnaWQgIlZhbHVlICclcycgZm9yIHN1Ym1vZHVsZS5hbHRlcm5hdGVMb2NhdGlvbiBpcyBub3QgcmVjb2duaXplZCIKIG1zZ3N0ciAi5LiN6IO96K+G5YirIHN1Ym1vZHVsZS5hbHRlcm5hdGVMb2NhaW9uIOeahOWPluWAvCAnJXMnIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzOTgKIG1zZ2lkICJ3aGVyZSB0aGUgbmV3IHN1Ym1vZHVsZSB3aWxsIGJlIGNsb25lZCB0byIKIG1zZ3N0ciAi5paw55qE5a2Q5qih57uE5bCG6KaB5YWL6ZqG55qE6Lev5b6EIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM2OQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDEKIG1zZ2lkICJuYW1lIG9mIHRoZSBuZXcgc3VibW9kdWxlIgogbXNnc3RyICLmlrDlrZDmqKHnu4TnmoTlkI3np7AiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzcyCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwNAogbXNnaWQgInVybCB3aGVyZSB0byBjbG9uZSB0aGUgc3VibW9kdWxlIGZyb20iCiBtc2dzdHIgIuWFi+mahuWtkOaooee7hOeahCB1cmwg5Zyw5Z2AIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4MAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTIKIG1zZ2lkICJkZXB0aCBmb3Igc2hhbGxvdyBjbG9uZXMiCiBtc2dzdHIgIua1heWFi+mahueahOa3seW6piIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEzODMgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4NjgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE1IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTI0CiBtc2dpZCAiZm9yY2UgY2xvbmluZyBwcm9ncmVzcyIKIG1zZ3N0ciAi5by65Yi25pi+56S65YWL6ZqG6L+b5bqmIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM4OAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjYKK21zZ2lkICJkaXNhbGxvdyBjbG9uaW5nIGludG8gbm9uLWVtcHR5IGRpcmVjdG9yeSIKK21zZ3N0ciAi5LiN5YWB6K645YWL6ZqG5Yiw5LiA5Liq6Z2e56m655uu5b2VIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQyNAogbXNnaWQgIiIKICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY2xvbmUgWy0tcHJlZml4PTxwYXRoPl0gWy0tcXVpZXRdIFstLXJlZmVyZW5jZSAiCi0iPHJlcG9zaXRvcnk+XSBbLS1uYW1lIDxuYW1lPl0gWy0tZGVwdGggPGRlcHRoPl0gLS11cmwgPHVybD4gLS1wYXRoIDxwYXRoPiIKKyI8cmVwb3NpdG9yeT5dIFstLW5hbWUgPG5hbWU+XSBbLS1kZXB0aCA8ZGVwdGg+XSBbLS1zaW5nbGUtYnJhbmNoXSAtLXVybCAiCisiPHVybD4gLS1wYXRoIDxwYXRoPiIKIG1zZ3N0ciAiIgogImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjbG9uZSBbLS1wcmVmaXg9POi3r+W+hD5dIFstLXF1aWV0XSBbLS1yZWZlcmVuY2UgPOS7k+W6kz5dICIKLSJbLS1uYW1lIDzlkI3lrZc+XSBbLS1kZXB0aCA85rex5bqmPl0gLS11cmwgPHVybD4gLS1wYXRoIDzot6/lvoQ+IgorIlstLW5hbWUgPOWQjeWtlz5dIFstLWRlcHRoIDzmt7HluqY+XSBbLS1zaW5nbGUtYnJhbmNoXSAtLXVybCA8dXJsPiAtLXBhdGggPOi3r+W+hD4iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ0OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byBjcmVhdGUvdXNlICclcycgaW4gYW5vdGhlciBzdWJtb2R1bGUncyBnaXQgZGlyIgorbXNnc3RyICLmi5Lnu53lnKjlj6bkuIDkuKrlrZDmqKHnu4TnmoQgZ2l0IGRpciDkuK3liJvlu7ov5L2/55SoICclcyciCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDYwCiAjLCBjLWZvcm1hdAogbXNnaWQgImNsb25lIG9mICclcycgaW50byBzdWJtb2R1bGUgcGF0aCAnJXMnIGZhaWxlZCIKIG1zZ3N0ciAi5peg5rOV5YWL6ZqGICclcycg5Yiw5a2Q5qih57uE6Lev5b6EICclcyciCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDMzCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ2NAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXJlY3Rvcnkgbm90IGVtcHR5OiAnJXMnIgorbXNnc3RyICLnm67lvZXpnZ7nqbrvvJonJXMnIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ3NgogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0IHN1Ym1vZHVsZSBkaXJlY3RvcnkgZm9yICclcyciCiBtc2dzdHIgIuaXoOazleW+l+WIsCAnJXMnIOeahOWtkOaooee7hOebruW9lSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTEyCiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKIG1zZ3N0ciAi5a2Q5qih57uEICclMiRzJyDnmoTmm7TmlrDmqKHlvI8gJyUxJHMnIOaXoOaViCIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NzMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNTE2CiAjLCBjLWZvcm1hdAogbXNnaWQgIkludmFsaWQgdXBkYXRlIG1vZGUgJyVzJyBjb25maWd1cmVkIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgogbXNnc3RyICLkuLrlrZDmqKHnu4QgJyUyJHMnIOmFjee9rueahOabtOaWsOaooeW8jyAnJTEkcycg5peg5pWIIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTU2NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiU3VibW9kdWxlIHBhdGggJyVzJyBub3QgaW5pdGlhbGl6ZWQiCiBtc2dzdHIgIuWtkOaooee7hCAnJXMnIOWwmuacquWIneWni+WMliIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1NzAKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjIxCiBtc2dpZCAiTWF5YmUgeW91IHdhbnQgdG8gdXNlICd1cGRhdGUgLS1pbml0Jz8iCiBtc2dzdHIgIuS5n+iuuOaCqOaDs+imgeaJp+ihjCAndXBkYXRlIC0taW5pdCfvvJ8iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjAwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTY1MQogIywgYy1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyB1bm1lcmdlZCBzdWJtb2R1bGUgJXMiCiBtc2dzdHIgIueVpei/h+acquWQiOW5tueahOWtkOaooee7hCAlcyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MjkKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjgwCiAjLCBjLWZvcm1hdAogbXNnaWQgIlNraXBwaW5nIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICLnlaXov4flrZDmqKHnu4QgJyVzJyIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3NzMKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODMwCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBjbG9uZSAnJXMnLiBSZXRyeSBzY2hlZHVsZWQiCiBtc2dzdHIgIuWFi+mahiAnJXMnIOWksei0peOAguaMieiuoeWIkumHjeivlSIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE3ODQKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODQxCiAjLCBjLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBjbG9uZSAnJXMnIGEgc2Vjb25kIHRpbWUsIGFib3J0aW5nIgogbXNnc3RyICLnrKzkuozmrKHlsJ3or5XlhYvpmoYgJyVzJyDlpLHotKXvvIzpgIDlh7oiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODQ3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDg5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwMyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE0OQogbXNnaWQgInBhdGggaW50byB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICLliLDlt6XkvZzljLrnmoTot6/lvoQiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODUwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwNgogbXNnaWQgInBhdGggaW50byB0aGUgd29ya2luZyB0cmVlLCBhY3Jvc3MgbmVzdGVkIHN1Ym1vZHVsZSBib3VuZGFyaWVzIgogbXNnc3RyICLlt6XkvZzljLrkuK3nmoTot6/lvoTvvIzpgJLlvZLltYzlpZflrZDmqKHnu4QiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODU0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxMAogbXNnaWQgInJlYmFzZSwgbWVyZ2UsIGNoZWNrb3V0IG9yIG5vbmUiCiBtc2dzdHIgInJlYmFzZeOAgW1lcmdl44CBY2hlY2tvdXQg5oiWIG5vbmUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODYwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxNgogbXNnaWQgIkNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgdHJ1bmNhdGVkIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHJldmlzaW9ucyIKIG1zZ3N0ciAi5Yib5bu65LiA5Liq5oyH5a6a5rex5bqm55qE5rWF5YWL6ZqGIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2MworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTkKIG1zZ2lkICJwYXJhbGxlbCBqb2JzIgogbXNnc3RyICLlubblj5Hku7vliqEiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODY1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyMQogbXNnaWQgIndoZXRoZXIgdGhlIGluaXRpYWwgY2xvbmUgc2hvdWxkIGZvbGxvdyB0aGUgc2hhbGxvdyByZWNvbW1lbmRhdGlvbiIKIG1zZ3N0ciAi5Yid5aeL5YWL6ZqG5piv5ZCm5bqU6K+l6YG15a6I5o6o6I2Q55qE5rWF5YWL6ZqG6YCJ6aG5IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg2NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjIKIG1zZ2lkICJkb24ndCBwcmludCBjbG9uaW5nIHByb2dyZXNzIgogbXNnc3RyICLkuI3opoHovpPlh7rlhYvpmobov5vluqYiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxODczCi1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZV9jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKLW1zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZV9jbG9uZSBbLS1wcmVmaXg9POi3r+W+hD5dIFs86Lev5b6EPi4uLl0iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkzMworbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciB1cGRhdGUtY2xvbmUgWy0tcHJlZml4PTxwYXRoPl0gWzxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciB1cGRhdGUtY2xvbmUgWy0tcHJlZml4PTzot6/lvoQ+XSBbPOi3r+W+hD4uLi5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg4NgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5NDYKIG1zZ2lkICJiYWQgdmFsdWUgZm9yIHVwZGF0ZSBwYXJhbWV0ZXIiCiBtc2dzdHIgInVwZGF0ZSDlj4LmlbDlj5blgLzplJnor68iCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTM0CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk5NAogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiU3VibW9kdWxlICglcykgYnJhbmNoIGNvbmZpZ3VyZWQgdG8gaW5oZXJpdCBicmFuY2ggZnJvbSBzdXBlcnByb2plY3QsIGJ1dCAiCiAidGhlIHN1cGVycHJvamVjdCBpcyBub3Qgb24gYW55IGJyYW5jaCIKIG1zZ3N0ciAi5a2Q5qih57uE77yIJXPvvInnmoTliIbmlK/phY3nva7kuLrnu6fmib/kuIrnuqfpobnnm67nmoTliIbmlK/vvIzkvYbmmK/kuIrnuqfpobnnm67kuI3lnKjku7vkvZXliIbmlK/kuIoiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDU3CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjExNwogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZ2V0IGEgcmVwb3NpdG9yeSBoYW5kbGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgogbXNnc3RyICLml6Dms5XojrflvpflrZDmqKHnu4QgJyVzJyDnmoTku5PlupPlj6Xmn4QiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDkwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1MAogbXNnaWQgInJlY3Vyc2UgaW50byBzdWJtb2R1bGVzIgogbXNnc3RyICLlnKjlrZDmqKHnu4TkuK3pgJLlvZIiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDk2Ci1tc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGVtYmVkLWdpdC1kaXIgWzxwYXRoPi4uLl0iCi1tc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBlbWJlZC1naXQtZGlyIFs86Lev5b6EPi4uLl0iCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1NgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzxvcHRpb25zPl0gWzxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzzpgInpobk+XSBbPOi3r+W+hD4uLi5dIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1MgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMTIKIG1zZ2lkICJjaGVjayBpZiBpdCBpcyBzYWZlIHRvIHdyaXRlIHRvIHRoZSAuZ2l0bW9kdWxlcyBmaWxlIgogbXNnc3RyICLmo4Dmn6XlhpnlhaUgLmdpdG1vZHVsZXMg5paH5Lu25piv5ZCm5a6J5YWoIgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1NwotbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgbmFtZSBbdmFsdWVdIgotbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIG5hbWUgW3ZhbHVlXSIKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjE1Cittc2dpZCAidW5zZXQgdGhlIGNvbmZpZyBpbiB0aGUgLmdpdG1vZHVsZXMgZmlsZSIKK21zZ3N0ciAi5Y+W5raIIC5naXRtb2R1bGVzIOaWh+S7tuS4reeahOiuvue9riIKIAotIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTgKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjIwCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyA8bmFtZT4gWzx2YWx1ZT5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIDzlkI3np7A+IFs85YC8Pl0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjIxCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLXVuc2V0IDxuYW1lPiIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLXVuc2V0IDzlkI3np7A+IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIyMgogbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS1jaGVjay13cml0ZWFibGUiCiBtc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS1jaGVjay13cml0ZWFibGUiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTc1IGdpdC1zdWJtb2R1bGUuc2g6MTY5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI0MSBnaXQtc3VibW9kdWxlLnNoOjE3NAogIywgc2gtZm9ybWF0CiBtc2dpZCAicGxlYXNlIG1ha2Ugc3VyZSB0aGF0IHRoZSAuZ2l0bW9kdWxlcyBmaWxlIGlzIGluIHRoZSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIuivt+ehruiupCAuZ2l0bW9kdWxlcyDmlofku7blnKjlt6XkvZzljLrph4wiCiAKLSM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjI1CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI5MSBnaXQuYzo0MzMgZ2l0LmM6Njg0CiAjLCBjLWZvcm1hdAogbXNnaWQgIiVzIGRvZXNuJ3Qgc3VwcG9ydCAtLXN1cGVyLXByZWZpeCIKIG1zZ3N0ciAiJXMg5LiN5pSv5oyBIC0tc3VwZXItcHJlZml4IgogCi0jOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIzMQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyOTcKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCBzdWJtb2R1bGUtLWhlbHBlciBzdWJjb21tYW5kIgogbXNnc3RyICInJXMnIOS4jeaYr+S4gOS4quacieaViOeahCBzdWJtb2R1bGUtLWhlbHBlciDlrZDlkb3ku6QiCkBAIC0xNzMyMywxNiArMjA4NjgsMTcgQEAKIAogIzogYnVpbHRpbi90YWcuYzoyNQogbXNnaWQgIiIKLSJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPGtleS1pZD5dIFstZl0gWy1tIDxtc2c+IHwgLUYgPGZpbGU+XSA8dGFnbmFtZT4gIgotIls8aGVhZD5dIgorImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8a2V5LWlkPl0gWy1mXSBbLW0gPG1zZz4gfCAtRiA8ZmlsZT5dXG4iCisiXHRcdDx0YWduYW1lPiBbPGhlYWQ+XSIKIG1zZ3N0ciAiIgotImdpdCB0YWcgWy1hIHwgLXMgfCAtdSA8a2V5LWlkPl0gWy1mXSBbLW0gPOivtOaYjj4gfCAtRiA85paH5Lu2Pl0gPOagh+etvuWQjT4gWzzlpLQ+XSIKKyJnaXQgdGFnIFstYSB8IC1zIHwgLXUgPGtleS1pZD5dIFstZl0gWy1tIDzmtojmga8+IHwgLUYgPOaWh+S7tj5dXG4iCisiXHRcdDzmoIfnrb7lkI0+IFs85aS0Pl0iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjYKKyM6IGJ1aWx0aW4vdGFnLmM6MjcKIG1zZ2lkICJnaXQgdGFnIC1kIDx0YWduYW1lPi4uLiIKIG1zZ3N0ciAiZ2l0IHRhZyAtZCA85qCH562+5ZCNPi4uLiIKIAotIzogYnVpbHRpbi90YWcuYzoyNworIzogYnVpbHRpbi90YWcuYzoyOAogbXNnaWQgIiIKICJnaXQgdGFnIC1sIFstbls8bnVtPl1dIFstLWNvbnRhaW5zIDxjb21taXQ+XSBbLS1uby1jb250YWlucyA8Y29tbWl0Pl0gWy0tIgogInBvaW50cy1hdCA8b2JqZWN0Pl1cbiIKQEAgLTE3MzQyLDIxICsyMDg4OCwyMSBAQAogImF0IDzlr7nosaE+XVxuIgogIlx0XHRbLS1mb3JtYXQ9POagvOW8jz5dIFstLVtuby1dbWVyZ2VkIFs85o+Q5LqkPl1dIFs85qih5byPPi4uLl0iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjkKKyM6IGJ1aWx0aW4vdGFnLmM6MzAKIG1zZ2lkICJnaXQgdGFnIC12IFstLWZvcm1hdD08Zm9ybWF0Pl0gPHRhZ25hbWU+Li4uIgogbXNnc3RyICJnaXQgdGFnIC12IFstLWZvcm1hdD085qC85byPPl0gPOagh+etvuWQjT4uLi4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6ODcKKyM6IGJ1aWx0aW4vdGFnLmM6ODkKICMsIGMtZm9ybWF0CiBtc2dpZCAidGFnICclcycgbm90IGZvdW5kLiIKIG1zZ3N0ciAi5pyq5Y+R546w5qCH562+ICclcyfjgIIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTAzCisjOiBidWlsdGluL3RhZy5jOjEwNQogIywgYy1mb3JtYXQKIG1zZ2lkICJEZWxldGVkIHRhZyAnJXMnICh3YXMgJXMpXG4iCiBtc2dzdHIgIuW3suWIoOmZpOagh+etviAnJXMn77yI5pu+5Li6ICVz77yJXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTMzCisjOiBidWlsdGluL3RhZy5jOjEzNQogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiXG4iCkBAIC0xNzM2OSw3ICsyMDkxNSw3IEBACiAiICAlc1xuIgogIuS7pSAnJWMnIOW8gOWktOeahOihjOWwhuiiq+W/veeVpeOAglxuIgogCi0jOiBidWlsdGluL3RhZy5jOjEzNworIzogYnVpbHRpbi90YWcuYzoxMzkKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlxuIgpAQCAtMTczODMsMzU4ICsyMDkyOSwzNzUgQEAKICIgICVzXG4iCiAi5LulICclYycg5byA5aS055qE6KGM5bCG6KKr5L+d55WZ77yM5aaC5p6c5oKo5oS/5oSP5Lmf5Y+v5Lul5Yig6Zmk5a6D5Lus44CCXG4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MTkxCisjOiBidWlsdGluL3RhZy5jOjE5OAogbXNnaWQgInVuYWJsZSB0byBzaWduIHRoZSB0YWciCiBtc2dzdHIgIuaXoOazleetvue9suagh+etviIKIAotIzogYnVpbHRpbi90YWcuYzoxOTMKKyM6IGJ1aWx0aW4vdGFnLmM6MjAwCiBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRhZyBmaWxlIgogbXNnc3RyICLml6Dms5XlhpnmoIfnrb7mlofku7YiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6MjE4CisjOiBidWlsdGluL3RhZy5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGhhdmUgY3JlYXRlZCBhIG5lc3RlZCB0YWcuIFRoZSBvYmplY3QgcmVmZXJyZWQgdG8gYnkgeW91ciBuZXcgdGFnIGlzXG4iCisiYWxyZWFkeSBhIHRhZy4gSWYgeW91IG1lYW50IHRvIHRhZyB0aGUgb2JqZWN0IHRoYXQgaXQgcG9pbnRzIHRvLCB1c2U6XG4iCisiXG4iCisiXHRnaXQgdGFnIC1mICVzICVzXnt9IgorbXNnc3RyICIiCisi5oKo5Yib5bu65LqG5LiA5Liq5bWM5aWX55qE5qCH562+44CC5oKo55qE5paw5qCH562+5oyH5ZCR55qE5a+56LGh5bey57uP5piv5LiA5Liq5qCH562+44CC5aaC5p6c5oKo5oOz6KaBXG4iCisi5a+55YW25oyH5ZCR55qE55uu5qCH5Yib5bu65qCH562+77yM5L2/55So77yaXG4iCisiXG4iCisiXHRnaXQgdGFnIC1mICVzICVzXnt9IgorCisjOiBidWlsdGluL3RhZy5jOjIzMgogbXNnaWQgImJhZCBvYmplY3QgdHlwZS4iCiBtc2dzdHIgIuWdj+eahOWvueixoeexu+Wei+OAgiIKIAotIzogYnVpbHRpbi90YWcuYzoyNjcKKyM6IGJ1aWx0aW4vdGFnLmM6Mjg0CiBtc2dpZCAibm8gdGFnIG1lc3NhZ2U/IgogbXNnc3RyICLml6DmoIfnrb7or7TmmI7vvJ8iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6Mjc0CisjOiBidWlsdGluL3RhZy5jOjI5MQogIywgYy1mb3JtYXQKIG1zZ2lkICJUaGUgdGFnIG1lc3NhZ2UgaGFzIGJlZW4gbGVmdCBpbiAlc1xuIgogbXNnc3RyICLmoIfnrb7or7TmmI7ooqvkv53nlZnlnKggJXNcbiIKIAotIzogYnVpbHRpbi90YWcuYzozODUKKyM6IGJ1aWx0aW4vdGFnLmM6NDAyCiBtc2dpZCAibGlzdCB0YWcgbmFtZXMiCiBtc2dzdHIgIuWIl+WHuuagh+etvuWQjeensCIKIAotIzogYnVpbHRpbi90YWcuYzozODcKKyM6IGJ1aWx0aW4vdGFnLmM6NDA0CiBtc2dpZCAicHJpbnQgPG4+IGxpbmVzIG9mIGVhY2ggdGFnIG1lc3NhZ2UiCiBtc2dzdHIgIuavj+S4quagh+etvuS/oeaBr+aJk+WNsCA8bj4g6KGMIgogCi0jOiBidWlsdGluL3RhZy5jOjM4OQorIzogYnVpbHRpbi90YWcuYzo0MDYKIG1zZ2lkICJkZWxldGUgdGFncyIKIG1zZ3N0ciAi5Yig6Zmk5qCH562+IgogCi0jOiBidWlsdGluL3RhZy5jOjM5MAorIzogYnVpbHRpbi90YWcuYzo0MDcKIG1zZ2lkICJ2ZXJpZnkgdGFncyIKIG1zZ3N0ciAi6aqM6K+B5qCH562+IgogCi0jOiBidWlsdGluL3RhZy5jOjM5MgorIzogYnVpbHRpbi90YWcuYzo0MDkKIG1zZ2lkICJUYWcgY3JlYXRpb24gb3B0aW9ucyIKIG1zZ3N0ciAi5qCH562+5Yib5bu66YCJ6aG5IgogCi0jOiBidWlsdGluL3RhZy5jOjM5NAorIzogYnVpbHRpbi90YWcuYzo0MTEKIG1zZ2lkICJhbm5vdGF0ZWQgdGFnLCBuZWVkcyBhIG1lc3NhZ2UiCiBtc2dzdHIgIumZhOazqOagh+etvu+8jOmcgOimgeS4gOS4quivtOaYjiIKIAotIzogYnVpbHRpbi90YWcuYzozOTYKKyM6IGJ1aWx0aW4vdGFnLmM6NDEzCiBtc2dpZCAidGFnIG1lc3NhZ2UiCiBtc2dzdHIgIuagh+etvuivtOaYjiIKIAotIzogYnVpbHRpbi90YWcuYzozOTgKKyM6IGJ1aWx0aW4vdGFnLmM6NDE1CiBtc2dpZCAiZm9yY2UgZWRpdCBvZiB0YWcgbWVzc2FnZSIKIG1zZ3N0ciAi5by65Yi257yW6L6R5qCH562+6K+05piOIgogCi0jOiBidWlsdGluL3RhZy5jOjM5OQorIzogYnVpbHRpbi90YWcuYzo0MTYKIG1zZ2lkICJhbm5vdGF0ZWQgYW5kIEdQRy1zaWduZWQgdGFnIgogbXNnc3RyICLpmYTms6jlubbpmYTliqAgR1BHIOetvuWQjeeahOagh+etviIKIAotIzogYnVpbHRpbi90YWcuYzo0MDMKKyM6IGJ1aWx0aW4vdGFnLmM6NDE5CiBtc2dpZCAidXNlIGFub3RoZXIga2V5IHRvIHNpZ24gdGhlIHRhZyIKIG1zZ3N0ciAi5L2/55So5Y+m5aSW55qE56eB6ZKl562+5ZCN6K+l5qCH562+IgogCi0jOiBidWlsdGluL3RhZy5jOjQwNAorIzogYnVpbHRpbi90YWcuYzo0MjAKIG1zZ2lkICJyZXBsYWNlIHRoZSB0YWcgaWYgZXhpc3RzIgogbXNnc3RyICLlpoLmnpzlrZjlnKjvvIzmm7/mjaLnjrDmnInnmoTmoIfnrb4iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA1IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2OQorIzogYnVpbHRpbi90YWcuYzo0MjEgYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY5CiBtc2dpZCAiY3JlYXRlIGEgcmVmbG9nIgogbXNnc3RyICLliJvlu7rlvJXnlKjml6Xlv5ciCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA3CisjOiBidWlsdGluL3RhZy5jOjQyMwogbXNnaWQgIlRhZyBsaXN0aW5nIG9wdGlvbnMiCiBtc2dzdHIgIuagh+etvuWIl+ihqOmAiemhuSIKIAotIzogYnVpbHRpbi90YWcuYzo0MDgKKyM6IGJ1aWx0aW4vdGFnLmM6NDI0CiBtc2dpZCAic2hvdyB0YWcgbGlzdCBpbiBjb2x1bW5zIgogbXNnc3RyICLku6XliJfnmoTmlrnlvI/mmL7npLrmoIfnrb7liJfooagiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDA5IGJ1aWx0aW4vdGFnLmM6NDExCisjOiBidWlsdGluL3RhZy5jOjQyNSBidWlsdGluL3RhZy5jOjQyNwogbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGNvbnRhaW4gdGhlIGNvbW1pdCIKIG1zZ3N0ciAi5Y+q5omT5Y2w5YyF5ZCr6K+l5o+Q5Lqk55qE5qCH562+IgogCi0jOiBidWlsdGluL3RhZy5jOjQxMCBidWlsdGluL3RhZy5jOjQxMgorIzogYnVpbHRpbi90YWcuYzo0MjYgYnVpbHRpbi90YWcuYzo0MjgKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCiBtc2dzdHIgIuWPquaJk+WNsOS4jeWMheWQq+ivpeaPkOS6pOeahOagh+etviIKIAotIzogYnVpbHRpbi90YWcuYzo0MTMKKyM6IGJ1aWx0aW4vdGFnLmM6NDI5CiBtc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG1lcmdlZCIKIG1zZ3N0ciAi5Y+q5omT5Y2w5bey57uP5ZCI5bm255qE5qCH562+IgogCi0jOiBidWlsdGluL3RhZy5jOjQxNAorIzogYnVpbHRpbi90YWcuYzo0MzAKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3MgdGhhdCBhcmUgbm90IG1lcmdlZCIKIG1zZ3N0ciAi5Y+q5omT5Y2w5bCa5pyq5ZCI5bm255qE5qCH562+IgogCi0jOiBidWlsdGluL3RhZy5jOjQxOQorIzogYnVpbHRpbi90YWcuYzo0MzQKIG1zZ2lkICJwcmludCBvbmx5IHRhZ3Mgb2YgdGhlIG9iamVjdCIKIG1zZ3N0ciAi5Y+q5omT5Y2w5oyH5ZCR6K+l5a+56LGh55qE5qCH562+IgogCi0jOiBidWlsdGluL3RhZy5jOjQ2MworIzogYnVpbHRpbi90YWcuYzo0ODIKIG1zZ2lkICItLWNvbHVtbiBhbmQgLW4gYXJlIGluY29tcGF0aWJsZSIKIG1zZ3N0ciAiLS1jb2x1bW4g5ZKMIC1uIOS4jeWFvOWuuSIKIAotIzogYnVpbHRpbi90YWcuYzo0ODUKKyM6IGJ1aWx0aW4vdGFnLmM6NTA0CiBtc2dpZCAiLW4gb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgIi1uIOmAiemhueWPquWFgeiuuOeUqOWcqOWIl+ihqOaYvuekuuaooeW8jyIKIAotIzogYnVpbHRpbi90YWcuYzo0ODcKKyM6IGJ1aWx0aW4vdGFnLmM6NTA2CiBtc2dpZCAiLS1jb250YWlucyBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAiLS1jb250YWlucyDpgInpobnlj6rlhYHorrjnlKjlnKjliJfooajmmL7npLrmqKHlvI8iCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NDg5CisjOiBidWlsdGluL3RhZy5jOjUwOAogbXNnaWQgIi0tbm8tY29udGFpbnMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCiBtc2dzdHIgIi0tbm8tY29udGFpbnMg6YCJ6aG55Y+q5YWB6K6455So5Zyo5YiX6KGo5pi+56S65qih5byPIgogCi0jOiBidWlsdGluL3RhZy5jOjQ5MQorIzogYnVpbHRpbi90YWcuYzo1MTAKIG1zZ2lkICItLXBvaW50cy1hdCBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAiLS1wb2ludHMtYXQg6YCJ6aG55Y+q5YWB6K6455So5Zyo5YiX6KGo5pi+56S65qih5byPIgogCi0jOiBidWlsdGluL3RhZy5jOjQ5MworIzogYnVpbHRpbi90YWcuYzo1MTIKIG1zZ2lkICItLW1lcmdlZCBhbmQgLS1uby1tZXJnZWQgb3B0aW9ucyBhcmUgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKIG1zZ3N0ciAiLS1tZXJnZWQg5ZKMIC0tbm8tbWVyZ2VkIOmAiemhueWPquWFgeiuuOeUqOWcqOWIl+ihqOaYvuekuuaooeW8jyIKIAotIzogYnVpbHRpbi90YWcuYzo1MDQKKyM6IGJ1aWx0aW4vdGFnLmM6NTIzCiBtc2dpZCAib25seSBvbmUgLUYgb3IgLW0gb3B0aW9uIGlzIGFsbG93ZWQuIgogbXNnc3RyICLlj6rlhYHorrjkuIDkuKogLUYg5oiWIC1tIOmAiemhueOAgiIKIAotIzogYnVpbHRpbi90YWcuYzo1MjMKKyM6IGJ1aWx0aW4vdGFnLmM6NTQyCiBtc2dpZCAidG9vIG1hbnkgcGFyYW1zIgogbXNnc3RyICLlpKrlpJrlj4LmlbAiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTI5CisjOiBidWlsdGluL3RhZy5jOjU0OAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRhZyBuYW1lLiIKIG1zZ3N0ciAiJyVzJyDkuI3mmK/kuIDkuKrmnInmlYjnmoTmoIfnrb7lkI3np7DjgIIiCiAKLSM6IGJ1aWx0aW4vdGFnLmM6NTM0CisjOiBidWlsdGluL3RhZy5jOjU1MwogIywgYy1mb3JtYXQKIG1zZ2lkICJ0YWcgJyVzJyBhbHJlYWR5IGV4aXN0cyIKIG1zZ3N0ciAi5qCH562+ICclcycg5bey5a2Y5ZyoIgogCi0jOiBidWlsdGluL3RhZy5jOjU2NQorIzogYnVpbHRpbi90YWcuYzo1ODQKICMsIGMtZm9ybWF0CiBtc2dpZCAiVXBkYXRlZCB0YWcgJyVzJyAod2FzICVzKVxuIgogbXNnc3RyICLlt7Lmm7TmlrDmoIfnrb4gJyVzJ++8iOabvuS4uiAlc++8iVxuIgogCi0jOiBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTAwCisjOiBidWlsdGluL3VucGFjay1vYmplY3RzLmM6NTAyCiBtc2dpZCAiVW5wYWNraW5nIG9iamVjdHMiCiBtc2dzdHIgIuWxleW8gOWvueixoeS4rSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo4NAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAlcyIKIG1zZ3N0ciAi5Yib5bu655uu5b2VICVzIOWksei0pSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBmaWxlICVzIgogbXNnc3RyICLliJvlu7rmlofku7YgJXMg5aSx6LSlIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDgKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSBmaWxlICVzIgogbXNnc3RyICLliKDpmaTmlofku7YgJXMg5aSx6LSlIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExMyBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIxOQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTUgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSBkaXJlY3RvcnkgJXMiCiBtc2dzdHIgIuWIoOmZpOebruW9lSAlcyDlpLHotKUiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTM4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE0MAogIywgYy1mb3JtYXQKIG1zZ2lkICJUZXN0aW5nIG10aW1lIGluICclcycgIgogbXNnc3RyICLlnKggJyVzJyDkuK3mtYvor5UgbXRpbWUgIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE1MgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNTQKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBhZGRpbmcgYSBuZXcgZmlsZSIKIG1zZ3N0ciAi5re75Yqg5LiA5Liq5paw5paH5Lu25ZCO77yM55uu5b2V55qE54q25oCB5L+h5oGv5pyq5pS55Y+YIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE2NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNjcKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBhZGRpbmcgYSBuZXcgZGlyZWN0b3J5IgogbXNnc3RyICLmt7vliqDkuIDkuKrmlrDnm67lvZXlkI7vvIznm67lvZXnmoTnirbmgIHkv6Hmga/mnKrmlLnlj5giCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTc4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE4MAogbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gY2hhbmdlcyBhZnRlciB1cGRhdGluZyBhIGZpbGUiCiBtc2dzdHIgIuabtOaWsOS4gOS4quaWh+S7tuWQju+8jOebruW9leeahOeKtuaAgeS/oeaBr+iiq+S/ruaUuSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxODkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTkxCiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBjaGFuZ2VzIGFmdGVyIGFkZGluZyBhIGZpbGUgaW5zaWRlIHN1YmRpcmVjdG9yeSIKIG1zZ3N0ciAi5Zyo5a2Q55uu5b2V5Lit5re75Yqg5paH5Lu25ZCO77yM55uu5b2V55qE54q25oCB5L+h5oGv6KKr5L+u5pS5IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIwMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMDIKIG1zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGZpbGUiCiBtc2dzdHIgIuWIoOmZpOS4gOS4quaWh+S7tuWQju+8jOebruW9leeahOeKtuaAgeS/oeaBr+acquaUueWPmCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjE1CiBtc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgZGVsZXRpbmcgYSBkaXJlY3RvcnkiCiBtc2dzdHIgIuWIoOmZpOS4gOS4quebruW9leWQju+8jOebruW9leeahOeKtuaAgeS/oeaBr+acquaUueWPmCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMjAKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MjIyCiBtc2dpZCAiIE9LIgogbXNnc3RyICIgT0siCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6NTg4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjU5MQogbXNnaWQgImdpdCB1cGRhdGUtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKIG1zZ3N0ciAiZ2l0IHVwZGF0ZS1pbmRleCBbPOmAiemhuT5dIFstLV0gWzzmlofku7Y+Li4uXSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NjEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTc0CiBtc2dpZCAiY29udGludWUgcmVmcmVzaCBldmVuIHdoZW4gaW5kZXggbmVlZHMgdXBkYXRlIgogbXNnc3RyICLlvZPntKLlvJXpnIDopoHmm7TmlrDml7bnu6fnu63liLfmlrAiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTY0CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk3NwogbXNnaWQgInJlZnJlc2g6IGlnbm9yZSBzdWJtb2R1bGVzIgogbXNnc3RyICLliLfmlrDvvJrlv73nlaXlrZDmqKHnu4QiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTY3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4MAogbXNnaWQgImRvIG5vdCBpZ25vcmUgbmV3IGZpbGVzIgogbXNnc3RyICLkuI3lv73nlaXmlrDnmoTmlofku7YiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTY5CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4MgogbXNnaWQgImxldCBmaWxlcyByZXBsYWNlIGRpcmVjdG9yaWVzIGFuZCB2aWNlLXZlcnNhIgogbXNnc3RyICLorqnmlofku7bmm7/mjaLnm67lvZXvvIjlj43kuYvkuqbnhLbvvIkiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTcxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4NAogbXNnaWQgIm5vdGljZSBmaWxlcyBtaXNzaW5nIGZyb20gd29ya3RyZWUiCiBtc2dzdHIgIumAmuefpeaWh+S7tuS7juW3peS9nOWMuuS4ouWksSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg2CiBtc2dpZCAicmVmcmVzaCBldmVuIGlmIGluZGV4IGNvbnRhaW5zIHVubWVyZ2VkIGVudHJpZXMiCiBtc2dzdHIgIuWNs+S9v+e0ouW8leWMuuWMheWQq+acquWQiOW5tueahOadoeebruS5n+aJp+ihjOWIt+aWsCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg5CiBtc2dpZCAicmVmcmVzaCBzdGF0IGluZm9ybWF0aW9uIgogbXNnc3RyICLliLfmlrDnu5/orqHkv6Hmga8iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5MwogbXNnaWQgImxpa2UgLS1yZWZyZXNoLCBidXQgaWdub3JlIGFzc3VtZS11bmNoYW5nZWQgc2V0dGluZyIKIG1zZ3N0ciAi57G75Ly85LqOIC0tcmVmcmVzaO+8jOS9huaYr+W/veeVpSBhc3N1bWUtdW5jaGFuZ2VkIOiuvue9riIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk3CiBtc2dpZCAiPG1vZGU+LDxvYmplY3Q+LDxwYXRoPiIKIG1zZ3N0ciAiPOWtmOWPluaooeW8jz4sPOWvueixoT4sPOi3r+W+hD4iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg1CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5OAogbXNnaWQgImFkZCB0aGUgc3BlY2lmaWVkIGVudHJ5IHRvIHRoZSBpbmRleCIKIG1zZ3N0ciAi5re75Yqg5oyH5a6a55qE5p2h55uu5Yiw57Si5byV5Yy6IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk5NAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA4CiBtc2dpZCAibWFyayBmaWxlcyBhcyBcIm5vdCBjaGFuZ2luZ1wiIgogbXNnc3RyICLmiormlofku7bmoIforrDkuLogXCLmsqHmnInlj5jmm7RcIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMQogbXNnaWQgImNsZWFyIGFzc3VtZWQtdW5jaGFuZ2VkIGJpdCIKIG1zZ3N0ciAi5riF6ZmkIGFzc3VtZWQtdW5jaGFuZ2VkIOS9jSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTQKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIFwiaW5kZXgtb25seVwiIgogbXNnc3RyICLmiormlofku7bmoIforrDkuLogXCLku4XntKLlvJVcIiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDAzCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMTcKIG1zZ2lkICJjbGVhciBza2lwLXdvcmt0cmVlIGJpdCIKIG1zZ3N0ciAi5riF6ZmkIHNraXAtd29ya3RyZWUg5L2NIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMDYKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyMAorbXNnaWQgImRvIG5vdCB0b3VjaCBpbmRleC1vbmx5IGVudHJpZXMiCittc2dzdHIgIuS4jeimgeinpueisOS7hee0ouW8leadoeebriIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDIyCiBtc2dpZCAiYWRkIHRvIGluZGV4IG9ubHk7IGRvIG5vdCBhZGQgY29udGVudCB0byBvYmplY3QgZGF0YWJhc2UiCiBtc2dzdHIgIuWPqua3u+WKoOWIsOe0ouW8leWMuu+8m+S4jea3u+WKoOWvueixoeWIsOWvueixoeW6kyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDA4CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjQKIG1zZ2lkICJyZW1vdmUgbmFtZWQgcGF0aHMgZXZlbiBpZiBwcmVzZW50IGluIHdvcmt0cmVlIgogbXNnc3RyICLljbPkvb/lrZjlnKjlt6XkvZzljLrph4zvvIzkuZ/liKDpmaTot6/lvoQiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI2CiBtc2dpZCAid2l0aCAtLXN0ZGluOiBpbnB1dCBsaW5lcyBhcmUgdGVybWluYXRlZCBieSBudWxsIGJ5dGVzIgogbXNnc3RyICLmkLrluKYgLS1zdGRpbu+8mui+k+WFpeeahOihjOS7pSBudWxsIOWtl+espue7iOatoiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDEyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjgKIG1zZ2lkICJyZWFkIGxpc3Qgb2YgcGF0aHMgdG8gYmUgdXBkYXRlZCBmcm9tIHN0YW5kYXJkIGlucHV0IgogbXNnc3RyICLku47moIflh4bovpPlhaXkuK3or7vlj5bpnIDopoHmm7TmlrDnmoTot6/lvoTliJfooagiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNgorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDMyCiBtc2dpZCAiYWRkIGVudHJpZXMgZnJvbSBzdGFuZGFyZCBpbnB1dCB0byB0aGUgaW5kZXgiCiBtc2dzdHIgIuS7juagh+WHhui+k+WFpea3u+WKoOadoeebruWIsOe0ouW8leWMuiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDIwCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzYKIG1zZ2lkICJyZXBvcHVsYXRlIHN0YWdlcyAjMiBhbmQgIzMgZm9yIHRoZSBsaXN0ZWQgcGF0aHMiCiBtc2dzdHIgIuS4uuaMh+WumuaWh+S7tumHjeaWsOeUn+aIkOesrDLlkoznrKwz5pqC5a2Y5Yy6IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0MAogbXNnaWQgIm9ubHkgdXBkYXRlIGVudHJpZXMgdGhhdCBkaWZmZXIgZnJvbSBIRUFEIgogbXNnc3RyICLlj6rmm7TmlrDkuI4gSEVBRCDkuI3lkIznmoTmnaHnm64iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyOAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ0CiBtc2dpZCAiaWdub3JlIGZpbGVzIG1pc3NpbmcgZnJvbSB3b3JrdHJlZSIKIG1zZ3N0ciAi5b+955Wl5bel5L2c5Yy65Lii5aSx55qE5paH5Lu2IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NwogbXNnaWQgInJlcG9ydCBhY3Rpb25zIHRvIHN0YW5kYXJkIG91dHB1dCIKIG1zZ3N0ciAi5Zyo5qCH5YeG6L6T5Ye65pi+56S65pON5L2cIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0OQogbXNnaWQgIihmb3IgcG9yY2VsYWlucykgZm9yZ2V0IHNhdmVkIHVucmVzb2x2ZWQgY29uZmxpY3RzIgogbXNnc3RyICIoZm9yIHBvcmNlbGFpbnMpIOW/mOiusOS/neWtmOeahOacquino+WGs+eahOWGsueqgSIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDM3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTMKIG1zZ2lkICJ3cml0ZSBpbmRleCBpbiB0aGlzIGZvcm1hdCIKIG1zZ3N0ciAi5Lul6L+Z56eN5qC85byP5YaZ5YWl57Si5byV5Yy6IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMzkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1NQogbXNnaWQgImVuYWJsZSBvciBkaXNhYmxlIHNwbGl0IGluZGV4IgogbXNnc3RyICLlkK/nlKjmiJbnpoHnlKjntKLlvJXmi4bliIYiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0MQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDU3CiBtc2dpZCAiZW5hYmxlL2Rpc2FibGUgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICLlkK/nlKgv56aB55So5a+55pyq6Lef6Liq5paH5Lu255qE57yT5a2YIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDMKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1OQogbXNnaWQgInRlc3QgaWYgdGhlIGZpbGVzeXN0ZW0gc3VwcG9ydHMgdW50cmFja2VkIGNhY2hlIgogbXNnc3RyICLmtYvor5Xmlofku7bns7vnu5/mmK/lkKbmlK/mjIHmnKrot5/ouKrmlofku7bnvJPlrZgiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDYxCiBtc2dpZCAiZW5hYmxlIHVudHJhY2tlZCBjYWNoZSB3aXRob3V0IHRlc3RpbmcgdGhlIGZpbGVzeXN0ZW0iCiBtc2dzdHIgIuaXoOmcgOajgOa1i+aWh+S7tuezu+e7n++8jOWQr+eUqOWvueacqui3n+i4quaWh+S7tueahOe8k+WtmCIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ3CisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjMKIG1zZ2lkICJ3cml0ZSBvdXQgdGhlIGluZGV4IGV2ZW4gaWYgaXMgbm90IGZsYWdnZWQgYXMgY2hhbmdlZCIKIG1zZ3N0ciAi5Y2z5L2/5rKh5pyJ6KKr5qCH6K6w5Li65bey5pu05pS577yM5Lmf6KaB5YaZ5Ye657Si5byVIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNDkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2NQogbXNnaWQgImVuYWJsZSBvciBkaXNhYmxlIGZpbGUgc3lzdGVtIG1vbml0b3IiCiBtc2dzdHIgIuWQr+eUqOaIluemgeeUqOaWh+S7tuezu+e7n+ebkeaOpyIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDUxCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjcKIG1zZ2lkICJtYXJrIGZpbGVzIGFzIGZzbW9uaXRvciB2YWxpZCIKIG1zZ3N0ciAi5qCH6K6w5paH5Lu25Li6IGZzbW9uaXRvciDmnInmlYgiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA1NAorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDcwCiBtc2dpZCAiY2xlYXIgZnNtb25pdG9yIHZhbGlkIGJpdCIKIG1zZ3N0ciAi5riF6ZmkIGZzbW9uaXRvciDmnInmlYjkvY0iCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE1MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTczCiBtc2dpZCAiIgogImNvcmUuc3BsaXRJbmRleCBpcyBzZXQgdG8gZmFsc2U7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCB0byAiCiAiZW5hYmxlIHNwbGl0IGluZGV4IgogbXNnc3RyICIiCiAiY29yZS5zcGxpdEluZGV4IOiiq+iuvue9ruS4uiBmYWxzZeOAguWmguaenOaCqOehruWunuimgeWQr+eUqOe0ouW8leaLhuWIhu+8jOivt+WIoOmZpOaIluS/ruaUueWug+OAgiIKIAotIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTYyCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExODIKIG1zZ2lkICIiCiAiY29yZS5zcGxpdEluZGV4IGlzIHNldCB0byB0cnVlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgogImRpc2FibGUgc3BsaXQgaW5kZXgiCiBtc2dzdHIgIiIKICJjb3JlLnNwbGl0SW5kZXgg6KKr6K6+572u5Li6IHRydWXjgILlpoLmnpzmgqjnoa7lrp7opoHnpoHnlKjntKLlvJXmi4bliIbvvIzor7fliKDpmaTmiJbkv67mlLnlroPjgIIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTk0CiBtc2dpZCAiIgogImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCiAidG8gZGlzYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgpAQCAtMTc3NDIsMTEgKzIxMzA1LDExIEBACiAiY29yZS51bnRyYWNrZWRDYWNoZSDooqvorr7nva7kuLogdHJ1ZeOAguWmguaenOaCqOehruWunuimgeemgeeUqOacqui3n+i4quaWh+S7tue8k+WtmO+8jOivt+WIoOmZpOaIluS/riIKICLmlLnlroPjgIIiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3NworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTk4CiBtc2dpZCAiVW50cmFja2VkIGNhY2hlIGRpc2FibGVkIgogbXNnc3RyICLnvJPlrZjmnKrot5/ouKrmlofku7booqvnpoHnlKgiCiAKLSM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4NQorIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjA2CiBtc2dpZCAiIgogImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgIgogInRvIGVuYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgpAQCAtMTc3NTQsMjUgKzIxMzE3LDI1IEBACiAiY29yZS51bnRyYWNrZWRDYWNoZSDooqvorr7nva7kuLogZmFsc2XjgILlpoLmnpzmgqjnoa7lrp7opoHlkK/nlKjmnKrot5/ouKrmlofku7bnvJPlrZjvvIzor7fliKDpmaTmiJYiCiAi5L+u5pS55a6D44CCIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExODkKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIxMAogIywgYy1mb3JtYXQKIG1zZ2lkICJVbnRyYWNrZWQgY2FjaGUgZW5hYmxlZCBmb3IgJyVzJyIKIG1zZ3N0ciAi57yT5a2Y5pyq6Lef6Liq5paH5Lu25ZyoICclcycg5ZCv55SoIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjExOTcKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIxOAogbXNnaWQgImNvcmUuZnNtb25pdG9yIGlzIHVuc2V0OyBzZXQgaXQgaWYgeW91IHJlYWxseSB3YW50IHRvIGVuYWJsZSBmc21vbml0b3IiCiBtc2dzdHIgImNvcmUuZnNtb25pdG9yIOacquiuvue9ru+8m+WmguaenOaDs+imgeWQr+eUqCBmc21vbml0b3Ig6K+36K6+572u6K+l6YCJ6aG5IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDEKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyMgogbXNnaWQgImZzbW9uaXRvciBlbmFibGVkIgogbXNnc3RyICJmc21vbml0b3Ig6KKr5ZCv55SoIgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDQKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyNQogbXNnaWQgIiIKICJjb3JlLmZzbW9uaXRvciBpcyBzZXQ7IHJlbW92ZSBpdCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZGlzYWJsZSBmc21vbml0b3IiCiBtc2dzdHIgImNvcmUuZnNtb25pdG9yIOW3suiuvue9ru+8m+WmguaenOaDs+imgeemgeeUqCBmc21vbml0b3Ig6K+356e76Zmk6K+l6YCJ6aG5IgogCi0jOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDgKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyOQogbXNnaWQgImZzbW9uaXRvciBkaXNhYmxlZCIKIG1zZ3N0ciAiZnNtb25pdG9yIOiiq+emgeeUqCIKIApAQCAtMTc4MTYsNiArMjEzNzksMTAgQEAKIG1zZ2lkICJnaXQgdXBsb2FkLXBhY2sgWzxvcHRpb25zPl0gPGRpcj4iCiBtc2dzdHIgImdpdCB1cGxvYWQtcGFjayBbPOmAiemhuT5dIDznm67lvZU+IgogCisjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjMgdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjE3Cittc2dpZCAicXVpdCBhZnRlciBhIHNpbmdsZSByZXF1ZXN0L3Jlc3BvbnNlIGV4Y2hhbmdlIgorbXNnc3RyICLlnKjkuIDmrKHljZXni6znmoTor7fmsYIv5ZON5bqU5LmL5ZCO6YCA5Ye6IgorCiAjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjUKIG1zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGluaXRpYWwgcmVmIGFkdmVydGlzZW1lbnQiCiBtc2dzdHIgIuWcqOWIneWni+eahOW8leeUqOW5v+WRiuWQjueri+WNs+mAgOWHuiIKQEAgLTE3ODI4LDE1ICsyMTM5NSwxNSBAQAogbXNnaWQgImludGVycnVwdCB0cmFuc2ZlciBhZnRlciA8bj4gc2Vjb25kcyBvZiBpbmFjdGl2aXR5IgogbXNnc3RyICLkuI3mtLvliqggPG4+IOenkumSn+WQjue7iOatouS8oOi+kyIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6MjAKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjE5CiBtc2dpZCAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA8Y29tbWl0Pi4uLiIKIG1zZ3N0ciAiZ2l0IHZlcmlmeS1jb21taXQgWy12IHwgLS12ZXJib3NlXSA85o+Q5LqkPi4uLiIKIAotIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6NzYKKyM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjY4CiBtc2dpZCAicHJpbnQgY29tbWl0IGNvbnRlbnRzIgogbXNnc3RyICLmiZPljbDmj5DkuqTlhoXlrrkiCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LWNvbW1pdC5jOjc3IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM4CisjOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo2OSBidWlsdGluL3ZlcmlmeS10YWcuYzozNwogbXNnaWQgInByaW50IHJhdyBncGcgc3RhdHVzIG91dHB1dCIKIG1zZ3N0ciAi5omT5Y2w5Y6f5aeLIGdwZyDnirbmgIHovpPlh7oiCiAKQEAgLTE3ODUyLDExICsyMTQxOSwxMSBAQAogbXNnaWQgInNob3cgc3RhdGlzdGljcyBvbmx5IgogbXNnc3RyICLlj6rmmL7npLrnu5/orqEiCiAKLSM6IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjE5CisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzoxOAogbXNnaWQgImdpdCB2ZXJpZnktdGFnIFstdiB8IC0tdmVyYm9zZV0gWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnPi4uLiIKIG1zZ3N0ciAiZ2l0IHZlcmlmeS10YWcgWy12IHwgLS12ZXJib3NlXSBbLS1mb3JtYXQ9POagvOW8jz5dIDzmoIfnrb4+Li4uIgogCi0jOiBidWlsdGluL3ZlcmlmeS10YWcuYzozNworIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzYKIG1zZ2lkICJwcmludCB0YWcgY29udGVudHMiCiBtc2dzdHIgIuaJk+WNsOagh+etvuWGheWuuSIKIApAQCAtMTc4ODgsNyArMjE0NTUsNyBAQAogbXNnaWQgImdpdCB3b3JrdHJlZSB1bmxvY2sgPHBhdGg+IgogbXNnc3RyICJnaXQgd29ya3RyZWUgdW5sb2NrIDzot6/lvoQ+IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjAgYnVpbHRpbi93b3JrdHJlZS5jOjg3MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjYwIGJ1aWx0aW4vd29ya3RyZWUuYzo4OTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSAnJXMnIgogbXNnc3RyICLliKDpmaQgJyVzJyDlpLHotKUiCkBAIC0xNzkzOCwxMiArMjE1MDUsMTIgQEAKIG1zZ2lkICInJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICInJXMnIOW3sue7j+WtmOWcqCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjI0NAogIywgYy1mb3JtYXQKIG1zZ2lkICJ1bmFibGUgdG8gcmUtYWRkIHdvcmt0cmVlICclcyciCiBtc2dzdHIgIuaXoOazleWGjeasoea3u+WKoOW3peS9nOWMuiAnJXMnIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6MjU2CisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGlzIGEgbWlzc2luZyBidXQgbG9ja2VkIHdvcmt0cmVlO1xuIgpAQCAtMTc5NTIsNyArMjE1MTksNyBAQAogIiclcycg5piv5LiA5Liq5Lii5aSx5L2G6ZSB5a6a55qE5bel5L2c5Yy677yM5L2/55SoXG4iCiAiJ2FkZCAtZiAtZicg6KaG55uW77yM5oiWICd1bmxvY2snIOWSjCAncHJ1bmUnIOaIliAncmVtb3ZlJyDmuIXpmaQiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNTEKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIiclcycgaXMgYSBtaXNzaW5nIGJ1dCBhbHJlYWR5IHJlZ2lzdGVyZWQgd29ya3RyZWU7XG4iCkBAIC0xNzk2MSwxMjAgKzIxNTI4LDEyMCBAQAogIiclcycg5piv5LiA5Liq5Lii5aSx5L2G5bey57uP5rOo5YaM55qE5bel5L2c5Yy677yM5L2/55SoXG4iCiAiJ2FkZCAtZicg6KaG55uW77yM5oiWICdwcnVuZScg5oiWICdyZW1vdmUnIOa4hemZpCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjMwOQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjMwMQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSBvZiAnJXMnIgogbXNnc3RyICLkuI3og73liJvlu7rnm67lvZUgJyVzJyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQyOCBidWlsdGluL3dvcmt0cmVlLmM6NDM0CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDMyIGJ1aWx0aW4vd29ya3RyZWUuYzo0MzgKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChuZXcgYnJhbmNoICclcycpIgogbXNnc3RyICLlh4blpIflt6XkvZzljLrvvIjmlrDliIbmlK8gJyVzJ++8iSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzMAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQzNAogIywgYy1mb3JtYXQKIG1zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKHJlc2V0dGluZyBicmFuY2ggJyVzJzsgd2FzIGF0ICVzKSIKIG1zZ3N0ciAi5YeG5aSH5bel5L2c5Yy677yI6YeN572u5YiG5pSvICclcyfvvIzkuYvliY3kuLogJXPvvIkiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MzkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDMKICMsIGMtZm9ybWF0CiBtc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChjaGVja2luZyBvdXQgJyVzJykiCiBtc2dzdHIgIuWHhuWkh+W3peS9nOWMuu+8iOajgOWHuiAnJXMn77yJIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDQ1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDQ5CiAjLCBjLWZvcm1hdAogbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAoZGV0YWNoZWQgSEVBRCAlcykiCiBtc2dzdHIgIuWHhuWkh+W3peS9nOWMuu+8iOWIhuemu+WktOaMh+mSiCAlc++8iSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ4NgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5MAogbXNnaWQgImNoZWNrb3V0IDxicmFuY2g+IGV2ZW4gaWYgYWxyZWFkeSBjaGVja2VkIG91dCBpbiBvdGhlciB3b3JrdHJlZSIKIG1zZ3N0ciAi5qOA5Ye6IDzliIbmlK8+77yM5Y2z5L2/5bey57uP6KKr5qOA5Ye65Yiw5YW25a6D5bel5L2c5Yy6IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDg5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDkzCiBtc2dpZCAiY3JlYXRlIGEgbmV3IGJyYW5jaCIKIG1zZ3N0ciAi5Yib5bu65LiA5Liq5paw5YiG5pSvIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDkxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk1CiBtc2dpZCAiY3JlYXRlIG9yIHJlc2V0IGEgYnJhbmNoIgogbXNnc3RyICLliJvlu7rmiJbph43nva7kuIDkuKrliIbmlK8iCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTcKIG1zZ2lkICJwb3B1bGF0ZSB0aGUgbmV3IHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAi55Sf5oiQ5paw55qE5bel5L2c5Yy6IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NDk0CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDk4CiBtc2dpZCAia2VlcCB0aGUgbmV3IHdvcmtpbmcgdHJlZSBsb2NrZWQiCiBtc2dzdHIgIumUgeWumuaWsOW3peS9nOWMuiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NworIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwMQogbXNnaWQgInNldCB1cCB0cmFja2luZyBtb2RlIChzZWUgZ2l0LWJyYW5jaCgxKSkiCiBtc2dzdHIgIuiuvue9rui3n+i4quaooeW8j++8iOWPguingSBnaXQtYnJhbmNoKDEp77yJIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NTAwCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTA0CiBtc2dpZCAidHJ5IHRvIG1hdGNoIHRoZSBuZXcgYnJhbmNoIG5hbWUgd2l0aCBhIHJlbW90ZS10cmFja2luZyBicmFuY2giCiBtc2dzdHIgIuWwneivleS4uuaWsOWIhuaUr+WQjeWMuemFjeS4gOS4qui/nOeoi+i3n+i4quWIhuaUryIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjUwOAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjUxMgogbXNnaWQgIi1iLCAtQiwgYW5kIC0tZGV0YWNoIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCiBtc2dzdHIgIi1i44CBLUIg5ZKMIC0tZGV0YWNoIOaYr+S6kuaWpeeahCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjU2OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjU3MwogbXNnaWQgIi0tW25vLV10cmFjayBjYW4gb25seSBiZSB1c2VkIGlmIGEgbmV3IGJyYW5jaCBpcyBjcmVhdGVkIgogbXNnc3RyICLlj6rog73lnKjliJvlu7rmlrDliIbmlK/ml7bkvb/nlKjpgInpobkgLS1bbm8tXXRyYWNrICIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY2OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY3MwogbXNnaWQgInJlYXNvbiBmb3IgbG9ja2luZyIKIG1zZ3N0ciAi6ZSB5a6a5Y6f5ZugIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjgxIGJ1aWx0aW4vd29ya3RyZWUuYzo3MTQgYnVpbHRpbi93b3JrdHJlZS5jOjc3MgotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg5OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4NSBidWlsdGluL3dvcmt0cmVlLmM6NzE4IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTIKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MTkKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBub3QgYSB3b3JraW5nIHRyZWUiCiBtc2dzdHIgIiclcycg5LiN5piv5LiA5Liq5bel5L2c5Yy6IgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NjgzIGJ1aWx0aW4vd29ya3RyZWUuYzo3MTYKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODcgYnVpbHRpbi93b3JrdHJlZS5jOjcyMAogbXNnaWQgIlRoZSBtYWluIHdvcmtpbmcgdHJlZSBjYW5ub3QgYmUgbG9ja2VkIG9yIHVubG9ja2VkIgogbXNnc3RyICLkuLvlt6XkvZzljLrml6Dms5XooqvliqDplIHmiJbop6PplIEiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODgKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2OTIKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhbHJlYWR5IGxvY2tlZCwgcmVhc29uOiAlcyIKIG1zZ3N0ciAiJyVzJyDlt7LooqvplIHlrprvvIzljp/lm6DvvJolcyIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5MAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5NAogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIGFscmVhZHkgbG9ja2VkIgogbXNnc3RyICInJXMnIOW3suiiq+mUgeWumiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjcxOAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjcyMgogIywgYy1mb3JtYXQKIG1zZ2lkICInJXMnIGlzIG5vdCBsb2NrZWQiCiBtc2dzdHIgIiclcycg5pyq6KKr6ZSB5a6aIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6NzQzCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzYzCiBtc2dpZCAid29ya2luZyB0cmVlcyBjb250YWluaW5nIHN1Ym1vZHVsZXMgY2Fubm90IGJlIG1vdmVkIG9yIHJlbW92ZWQiCiBtc2dzdHIgIuS4jeiDveenu+WKqOaIluWIoOmZpOWMheWQq+WtkOaooee7hOeahOW3peS9nOWMuiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc1MQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3MQogbXNnaWQgImZvcmNlIG1vdmUgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCiBtc2dzdHIgIuW8uuWItuenu+WKqO+8jOWNs+S9v+W3peS9nOWMuuaYr+iEj+eahOaIluW3sumUgeWumiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3NCBidWlsdGluL3dvcmt0cmVlLmM6OTAxCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Nzk0IGJ1aWx0aW4vd29ya3RyZWUuYzo5MjEKICMsIGMtZm9ybWF0CiBtc2dpZCAiJyVzJyBpcyBhIG1haW4gd29ya2luZyB0cmVlIgogbXNnc3RyICInJXMnIOaYr+S4gOS4quS4u+W3peS9nOWMuiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc3OQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5OQogIywgYy1mb3JtYXQKIG1zZ2lkICJjb3VsZCBub3QgZmlndXJlIG91dCBkZXN0aW5hdGlvbiBuYW1lIGZyb20gJyVzJyIKIG1zZ3N0ciAi5peg5rOV5LuOICclcycg566X5Ye655uu5qCH5ZCN56ewIgogCi0jOiBidWlsdGluL3dvcmt0cmVlLmM6Nzg1CisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODA1CiAjLCBjLWZvcm1hdAogbXNnaWQgInRhcmdldCAnJXMnIGFscmVhZHkgZXhpc3RzIgogbXNnc3RyICLnm67moIcgJyVzJyDlt7LlrZjlnKgiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OTMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogImNhbm5vdCBtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZSwgbG9jayByZWFzb246ICVzXG4iCkBAIC0xODA4Myw3ICsyMTY1MCw3IEBACiAi5peg5rOV56e75Yqo5LiA5Liq6ZSB5a6a55qE5bel5L2c5Yy677yM6ZSB5a6a5Y6f5Zug77yaJXNcbiIKICLkvb/nlKggJ21vdmUgLWYgLWYnIOimhuebluaIluWFiOino+mUgSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5NQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxNQogbXNnaWQgIiIKICJjYW5ub3QgbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWU7XG4iCiAidXNlICdtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCkBAIC0xODA5MSwzNiArMjE2NTgsMzYgQEAKICLml6Dms5Xnp7vliqjkuIDkuKrplIHlrprnmoTlt6XkvZzljLrvvIxcbiIKICLkvb/nlKggJ21vdmUgLWYgLWYnIOimhuebluaIluWFiOino+mUgSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5OAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjgxOAogIywgYy1mb3JtYXQKIG1zZ2lkICJ2YWxpZGF0aW9uIGZhaWxlZCwgY2Fubm90IG1vdmUgd29ya2luZyB0cmVlOiAlcyIKIG1zZ3N0ciAi6aqM6K+B5aSx6LSl77yM5peg5rOV56e75Yqo5bel5L2c5Yy677yaJXMiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MDMKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIG1vdmUgJyVzJyB0byAnJXMnIgogbXNnc3RyICLnp7vliqggJyVzJyDliLAgJyVzJyDlpLHotKUiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NTEKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NzEKICMsIGMtZm9ybWF0CiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAnZ2l0IHN0YXR1cycgb24gJyVzJyIKIG1zZ3N0ciAi5ZyoICclcycg5Lit5omn6KGMICdnaXQgc3RhdHVzJyDlpLHotKUiCiAKLSM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NTUKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4NzUKICMsIGMtZm9ybWF0Ci1tc2dpZCAiJyVzJyBpcyBkaXJ0eSwgdXNlIC0tZm9yY2UgdG8gZGVsZXRlIGl0IgotbXNnc3RyICInJXMnIOaYr+iEj+eahO+8jOS9v+eUqCAtLWZvcmNlIOWIoOmZpCIKK21zZ2lkICInJXMnIGNvbnRhaW5zIG1vZGlmaWVkIG9yIHVudHJhY2tlZCBmaWxlcywgdXNlIC0tZm9yY2UgdG8gZGVsZXRlIGl0IgorbXNnc3RyICInJXMnIOWMheWQq+S/ruaUueaIluacqui3n+i4queahOaWh+S7tu+8jOS9v+eUqCAtLWZvcmNlIOWIoOmZpCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg2MAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjg4MAogIywgYy1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gcnVuICdnaXQgc3RhdHVzJyBvbiAnJXMnLCBjb2RlICVkIgogbXNnc3RyICLlnKggJyVzJyDkuK3miafooYwgJ2dpdCBzdGF0dXMnIOWksei0pe+8jOmAgOWHuueggSAlZCIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjg4MworIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwMwogbXNnaWQgImZvcmNlIHJlbW92YWwgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCiBtc2dzdHIgIuW8uuWItuWIoOmZpO+8jOWNs+S9v+W3peS9nOWMuuaYr+iEj+eahOaIluW3sumUgeWumiIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwNgorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyNgogIywgYy1mb3JtYXQKIG1zZ2lkICIiCiAiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlc1xuIgpAQCAtMTgxMjksNyArMjE2OTYsNyBAQAogIuaXoOazleWIoOmZpOS4gOS4qumUgeWumueahOW3peS9nOWMuu+8jOmUgeWumuWOn+WboO+8miVzXG4iCiAi5L2/55SoICdyZW1vdmUgLWYgLWYnIOimhuebluaIluWFiOino+mUgSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwOAorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyOAogbXNnaWQgIiIKICJjYW5ub3QgcmVtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZTtcbiIKICJ1c2UgJ3JlbW92ZSAtZiAtZicgdG8gb3ZlcnJpZGUgb3IgdW5sb2NrIGZpcnN0IgpAQCAtMTgxMzcsMjggKzIxNzA0LDQzIEBACiAi5peg5rOV5Yig6Zmk5LiA5Liq6ZSB5a6a55qE5bel5L2c5Yy677yMXG4iCiAi5L2/55SoICdyZW1vdmUgLWYgLWYnIOimhuebluaIluWFiOino+mUgSIKIAotIzogYnVpbHRpbi93b3JrdHJlZS5jOjkxMQorIzogYnVpbHRpbi93b3JrdHJlZS5jOjkzMQogIywgYy1mb3JtYXQKIG1zZ2lkICJ2YWxpZGF0aW9uIGZhaWxlZCwgY2Fubm90IHJlbW92ZSB3b3JraW5nIHRyZWU6ICVzIgogbXNnc3RyICLpqozor4HlpLHotKXvvIzml6Dms5XliKDpmaTlt6XkvZzljLrvvJolcyIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MTQKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjE1CiBtc2dpZCAiZ2l0IHdyaXRlLXRyZWUgWy0tbWlzc2luZy1va10gWy0tcHJlZml4PTxwcmVmaXg+L10iCiBtc2dzdHIgImdpdCB3cml0ZS10cmVlIFstLW1pc3Npbmctb2tdIFstLXByZWZpeD085YmN57yAPi9dIgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyNworIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjgKIG1zZ2lkICI8cHJlZml4Pi8iCiBtc2dzdHIgIjzliY3nvIA+LyIKIAotIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MjgKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjI5CiBtc2dpZCAid3JpdGUgdHJlZSBvYmplY3QgZm9yIGEgc3ViZGlyZWN0b3J5IDxwcmVmaXg+IgogbXNnc3RyICLlsIYgPOWJjee8gD4g5a2Q55uu5b2V5YaF5a655YaZ5Yiw5LiA5Liq5qCR5a+56LGhIgogCi0jOiBidWlsdGluL3dyaXRlLXRyZWUuYzozMAorIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MzEKIG1zZ2lkICJvbmx5IHVzZWZ1bCBmb3IgZGVidWdnaW5nIgogbXNnc3RyICLlj6rlr7nosIPor5XmnInnlKgiCiAKLSM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjIyMgorIzogZmFzdC1pbXBvcnQuYzozMTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkV4cGVjdGVkICdtYXJrJyBjb21tYW5kLCBnb3QgJXMiCittc2dzdHIgIumihOacnyAnbWFyaycg5ZG95Luk77yM5b6X5YiwICVzIgorCisjOiBmYXN0LWltcG9ydC5jOjMxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0ZWQgJ3RvJyBjb21tYW5kLCBnb3QgJXMiCittc2dzdHIgIumihOacnyAndG8nIOWRveS7pO+8jOW+l+WIsCAlcyIKKworIzogZmFzdC1pbXBvcnQuYzozMjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImZlYXR1cmUgJyVzJyBmb3JiaWRkZW4gaW4gaW5wdXQgd2l0aG91dCAtLWFsbG93LXVuc2FmZS1mZWF0dXJlcyIKK21zZ3N0ciAi5LiN5bimIC0tYWxsb3ctdW5zYWZlLWZlYXR1cmVzIOeahOi+k+WFpeS4reemgeatouS9v+eUqOWKn+iDvSAnJXMnIgorCisjOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyMjMKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogIlRoZSBwZXJtaXNzaW9ucyBvbiB5b3VyIHNvY2tldCBkaXJlY3RvcnkgYXJlIHRvbyBsb29zZTsgb3RoZXJcbiIKQEAgLTE4MTcxLDcgKzIxNzUzLDcgQEAKICJcbiIKICJcdGNobW9kIDA3MDAgJXMiCiAKLSM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjI3MQorIzogY3JlZGVudGlhbC1jYWNoZS0tZGFlbW9uLmM6MjcyCiBtc2dpZCAicHJpbnQgZGVidWdnaW5nIG1lc3NhZ2VzIHRvIHN0ZGVyciIKIG1zZ3N0ciAi6LCD6K+V5L+h5oGv6L6T5Ye65Yiw5qCH5YeG6ZSZ6K+vIgogCkBAIC0xODE4NCw2ICsyMTc2NiwxNCBAQAogbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgbWFya2VkIHJlYWNoYWJsZSIKIG1zZ3N0ciAi5aSq5aSa5o+Q5Lqk5qCH6K6w5Li65Y+v6L6+IgogCisjOiB0L2hlbHBlci90ZXN0LXNlcnZlLXYyLmM6NworbXNnaWQgInRlc3QtdG9vbCBzZXJ2ZS12MiBbPG9wdGlvbnM+XSIKK21zZ3N0ciAidGVzdC10b29sIHNlcnZlLXYyIFs86YCJ6aG5Pl0iCisKKyM6IHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzoxOQorbXNnaWQgImV4aXQgaW1tZWRpYXRlbHkgYWZ0ZXIgYWR2ZXJ0aXNpbmcgY2FwYWJpbGl0aWVzIgorbXNnc3RyICLlr7nog73lipvlub/lkYrkuYvlkI7nq4vljbPpgIDlh7oiCisKICM6IGdpdC5jOjI3CiBtc2dpZCAiIgogImdpdCBbLS12ZXJzaW9uXSBbLS1oZWxwXSBbLUMgPHBhdGg+XSBbLWMgPG5hbWU+PTx2YWx1ZT5dXG4iCkBAIC0xODIwNCw5OSArMjE3OTQsMTUxIEBACiBtc2dpZCAiIgogIidnaXQgaGVscCAtYScgYW5kICdnaXQgaGVscCAtZycgbGlzdCBhdmFpbGFibGUgc3ViY29tbWFuZHMgYW5kIHNvbWVcbiIKICJjb25jZXB0IGd1aWRlcy4gU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIG9yICdnaXQgaGVscCA8Y29uY2VwdD4nXG4iCi0idG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC4iCisidG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC5cbiIKKyJTZWUgJ2dpdCBoZWxwIGdpdCcgZm9yIGFuIG92ZXJ2aWV3IG9mIHRoZSBzeXN0ZW0uIgogbXNnc3RyICIiCiAi5ZG95LukICdnaXQgaGVscCAtYScg5ZKMICdnaXQgaGVscCAtZycg5pi+56S65Y+v55So55qE5a2Q5ZG95Luk5ZKM5LiA5Lqb5qaC5b+15biu5Yqp44CCXG4iCiAi5p+l55yLICdnaXQgaGVscCA85ZG95LukPicg5oiWICdnaXQgaGVscCA85qaC5b+1Picg5Lul6I635Y+W57uZ5a6a5a2Q5ZG95Luk5oiW5qaC5b+155qEXG4iCi0i5biu5Yqp44CCIgorIuW4ruWKqeOAglxuIgorIuacieWFs+ezu+e7n+eahOamgui/sO+8jOafpeeciyAnZ2l0IGhlbHAgZ2l0J+OAgiIKIAotIzogZ2l0LmM6MTczCisjOiBnaXQuYzoxODYKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtLWdpdC1kaXJcbiIKIG1zZ3N0ciAi5rKh5pyJ5Li6IC0tZ2l0LWRpciDmj5Dkvpvnm67lvZVcbiIKIAotIzogZ2l0LmM6MTg3CisjOiBnaXQuYzoyMDAKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gbmFtZXNwYWNlIGdpdmVuIGZvciAtLW5hbWVzcGFjZVxuIgogbXNnc3RyICLmsqHmnInkuLogLS1uYW1lc3BhY2Ug5o+Q5L6b5ZG95ZCN56m66Ze0XG4iCiAKLSM6IGdpdC5jOjIwMQorIzogZ2l0LmM6MjE0CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5vIGRpcmVjdG9yeSBnaXZlbiBmb3IgLS13b3JrLXRyZWVcbiIKIG1zZ3N0ciAi5rKh5pyJ5Li6IC0td29yay10cmVlIOaPkOS+m+ebruW9lVxuIgogCi0jOiBnaXQuYzoyMTUKKyM6IGdpdC5jOjIyOAogIywgYy1mb3JtYXQKIG1zZ2lkICJubyBwcmVmaXggZ2l2ZW4gZm9yIC0tc3VwZXItcHJlZml4XG4iCiBtc2dzdHIgIuayoeacieS4uiAtLXN1cGVyLXByZWZpeCDmj5DkvpvliY3nvIBcbiIKIAotIzogZ2l0LmM6MjM3CisjOiBnaXQuYzoyNTAKICMsIGMtZm9ybWF0CiBtc2dpZCAiLWMgZXhwZWN0cyBhIGNvbmZpZ3VyYXRpb24gc3RyaW5nXG4iCiBtc2dzdHIgIuW6lOS4uiAtYyDmj5DkvpvkuIDkuKrphY3nva7lrZfnrKbkuLJcbiIKIAotIzogZ2l0LmM6Mjc1CisjOiBnaXQuYzoyODgKICMsIGMtZm9ybWF0CiBtc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtQ1xuIgogbXNnc3RyICLmsqHmnInkuLogLUMg5o+Q5L6b55uu5b2VXG4iCiAKLSM6IGdpdC5jOjMwMAorIzogZ2l0LmM6MzE0CiAjLCBjLWZvcm1hdAogbXNnaWQgInVua25vd24gb3B0aW9uOiAlc1xuIgogbXNnc3RyICLmnKrnn6XpgInpobnvvJolc1xuIgogCi0jOiBnaXQuYzo3MTkKKyM6IGdpdC5jOjM2MAorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSBleHBhbmRpbmcgYWxpYXMgJyVzJzogJyVzJyIKK21zZ3N0ciAi5Zyo5omp5bGV5Yir5ZCNICclcycg5pe277yaJyVzJyIKKworIzogZ2l0LmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbGlhcyAnJXMnIGNoYW5nZXMgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIllvdSBjYW4gdXNlICchZ2l0JyBpbiB0aGUgYWxpYXMgdG8gZG8gdGhpcyIKK21zZ3N0ciAiIgorIuWIq+WQjSAnJXMnIOS/ruaUueeOr+Wig+WPmOmHj+OAguaCqOWPr+S7peS9v+eUqOWcqOWIq+WQjeS4rVxuIgorIuS9v+eUqCAnIWdpdCciCisKKyM6IGdpdC5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBhbGlhcyBmb3IgJXMiCittc2dzdHIgIiVzIOeahOepuuWIq+WQjSIKKworIzogZ2l0LmM6Mzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlY3Vyc2l2ZSBhbGlhczogJXMiCittc2dzdHIgIumAkuW9kueahOWIq+WQje+8miVzIgorCisjOiBnaXQuYzo0NTkKK21zZ2lkICJ3cml0ZSBmYWlsdXJlIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAi5Zyo5qCH5YeG6L6T5Ye65YaZ5YWl5aSx6LSlIgorCisjOiBnaXQuYzo0NjEKK21zZ2lkICJ1bmtub3duIHdyaXRlIGZhaWx1cmUgb24gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICLliLDmoIflh4bovpPlh7rnmoTmnKrnn6XlhpnlhaXplJnor68iCisKKyM6IGdpdC5jOjQ2MworbXNnaWQgImNsb3NlIGZhaWxlZCBvbiBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgIuagh+WHhui+k+WHuuWFs+mXreWksei0pSIKKworIzogZ2l0LmM6NzkzCiAjLCBjLWZvcm1hdAogbXNnaWQgImFsaWFzIGxvb3AgZGV0ZWN0ZWQ6IGV4cGFuc2lvbiBvZiAnJXMnIGRvZXMgbm90IHRlcm1pbmF0ZTolcyIKIG1zZ3N0ciAi5qOA5rWL5Yiw5Yir5ZCN5b6q546v77yaJyVzJ+eahOaJqeWxleacque7iOatou+8miVzIgogCi0jOiBnaXQuYzo4MDIKKyM6IGdpdC5jOjg0MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgaGFuZGxlICVzIGFzIGEgYnVpbHRpbiIKK21zZ3N0ciAi5LiN6IO95L2c5Li65YaF572u5ZG95Luk5aSE55CGICVzIgorCisjOiBnaXQuYzo4NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVzYWdlOiAlc1xuIgorIlxuIgorbXNnc3RyICIiCisi55So5rOV77yaJXNcbiIKKyJcbiIKKworIzogZ2l0LmM6ODc2CiAjLCBjLWZvcm1hdAogbXNnaWQgImV4cGFuc2lvbiBvZiBhbGlhcyAnJXMnIGZhaWxlZDsgJyVzJyBpcyBub3QgYSBnaXQgY29tbWFuZFxuIgogbXNnc3RyICLlsZXlvIDliKvlkI3lkb3ku6QgJyVzJyDlpLHotKXvvIwnJXMnIOS4jeaYr+S4gOS4qiBnaXQg5ZG95LukXG4iCiAKLSM6IGdpdC5jOjgxNAorIzogZ2l0LmM6ODg4CiAjLCBjLWZvcm1hdAogbXNnaWQgImZhaWxlZCB0byBydW4gY29tbWFuZCAnJXMnOiAlc1xuIgogbXNnc3RyICLov5DooYzlkb3ku6QgJyVzJyDlpLHotKXvvJolc1xuIgogCi0jOiBodHRwLmM6Mzc0CisjOiBodHRwLmM6Mzc4CiAjLCBjLWZvcm1hdAogbXNnaWQgIm5lZ2F0aXZlIHZhbHVlIGZvciBodHRwLnBvc3RidWZmZXI7IGRlZmF1bHRpbmcgdG8gJWQiCiBtc2dzdHIgImh0dHAucG9zdGJ1ZmZlciDkuLrotJ/lgLzvvIzpu5jorqTkuLogJWQiCiAKLSM6IGh0dHAuYzozOTUKKyM6IGh0dHAuYzozOTkKIG1zZ2lkICJEZWxlZ2F0aW9uIGNvbnRyb2wgaXMgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjIyLjAiCiBtc2dzdHIgIuS4jeaUr+aMgeWnlOaJmOaOp+WItu+8jOWboOS4uiBjVVJMIDwgNy4yMi4wIgogCi0jOiBodHRwLmM6NDA0CisjOiBodHRwLmM6NDA4CiBtc2dpZCAiUHVibGljIGtleSBwaW5uaW5nIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy40NC4wIgogbXNnc3RyICLkuI3mlK/mjIHlhazpkqXmlofku7bplIHlrprvvIzlm6DkuLogY1VSTCA8IDcuNDQuMCIKIAotIzogaHR0cC5jOjgzNworIzogaHR0cC5jOjg3NgogbXNnaWQgIkNVUkxTU0xPUFRfTk9fUkVWT0tFIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy40NC4wIgogbXNnc3RyICLkuI3mlK/mjIEgQ1VSTFNTTE9QVF9OT19SRVZPS0XvvIzlm6DkuLogY1VSTCA8IDcuNDQuMCIKIAotIzogaHR0cC5jOjkxMAorIzogaHR0cC5jOjk0OQogbXNnaWQgIlByb3RvY29sIHJlc3RyaWN0aW9ucyBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuMTkuNCIKIG1zZ3N0ciAi5LiN5pSv5oyB5Y2P6K6u6ZmQ5Yi277yM5Zug5Li6IGNVUkwgPCA3LjE5LjQiCiAKLSM6IGh0dHAuYzoxMDQ2CisjOiBodHRwLmM6MTA4NgogIywgYy1mb3JtYXQKIG1zZ2lkICJVbnN1cHBvcnRlZCBTU0wgYmFja2VuZCAnJXMnLiBTdXBwb3J0ZWQgU1NMIGJhY2tlbmRzOiIKIG1zZ3N0ciAi5LiN5pSv5oyB55qEIFNTTCDlkI7nq68gJyVzJ+OAguaUr+aMgeeahCBTU0wg5ZCO56uv77yaIgogCi0jOiBodHRwLmM6MTA1MworIzogaHR0cC5jOjEwOTMKICMsIGMtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHNldCBTU0wgYmFja2VuZCB0byAnJXMnOiBjVVJMIHdhcyBidWlsdCB3aXRob3V0IFNTTCBiYWNrZW5kcyIKIG1zZ3N0ciAi5peg5rOV6K6+572uIFNTTCDlkI7nq6/kuLogJyVzJ++8mmNVUkw6IGNVUkwg5rKh5pyJ5L2/55SoIFNTTCDlkI7nq6/mnoTlu7oiCiAKLSM6IGh0dHAuYzoxMDU3CisjOiBodHRwLmM6MTA5NwogIywgYy1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3Qgc2V0IFNTTCBiYWNrZW5kIHRvICclcyc6IGFscmVhZHkgc2V0IgogbXNnc3RyICLml6Dms5XlsIYgU1NMIOWQjuerr+iuvue9ruS4uiAnJXMn77ya5bey57uP6K6+572uIgogCi0jOiBodHRwLmM6MTkyMQorIzogaHR0cC5jOjE5NjYKICMsIGMtZm9ybWF0CiBtc2dpZCAiIgogInVuYWJsZSB0byB1cGRhdGUgdXJsIGJhc2UgZnJvbSByZWRpcmVjdGlvbjpcbiIKQEAgLTE4MzA3LDM5ICsyMTk0OSwxNzYgQEAKICIgICAgIOivt+axgu+8miVzXG4iCiAiICAg6YeN5a6a5ZCR77yaJXMiCiAKLSM6IHJlbW90ZS1jdXJsLmM6NDAxCisjOiByZW1vdGUtY3VybC5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHF1b3RpbmcgaW4gcHVzaC1vcHRpb24gdmFsdWU6ICclcyciCittc2dzdHIgIuWcqCBwdXNoLW9wdGlvbiDlj5blgLzkuK3ml6DmlYjnmoTlvJXlj7fvvJonJXMnIgorCisjOiByZW1vdGUtY3VybC5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIlc2luZm8vcmVmcyBub3QgdmFsaWQ6IGlzIHRoaXMgYSBnaXQgcmVwb3NpdG9yeT8iCittc2dzdHIgIiVzaW5mby9yZWZzIOaXoOaViO+8mui/meaYr+S4gOS4qiBnaXQg5LuT5bqT5LmI77yfIgorCisjOiByZW1vdGUtY3VybC5jOjM2NAorbXNnaWQgImludmFsaWQgc2VydmVyIHJlc3BvbnNlOyBleHBlY3RlZCBzZXJ2aWNlLCBnb3QgZmx1c2ggcGFja2V0IgorbXNnc3RyICLml6DmlYjnmoTmnI3liqHnq6/lk43lupTjgILpooTmnJ/mnI3liqHvvIzlvpfliLAgZmx1c2gg5YyFIgorCisjOiByZW1vdGUtY3VybC5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZ290ICclcyciCittc2dzdHIgIuaXoOaViOeahOacjeWKoeerr+WTjeW6lO+8jOW+l+WIsCAnJXMnIgorCisjOiByZW1vdGUtY3VybC5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZXBvc2l0b3J5ICclcycgbm90IGZvdW5kIgorbXNnc3RyICLku5PlupMgJyVzJyDmnKrmib7liLAiCisKKyM6IHJlbW90ZS1jdXJsLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW9uIGZhaWxlZCBmb3IgJyVzJyIKK21zZ3N0ciAiJyVzJyDpibTmnYPlpLHotKUiCisKKyM6IHJlbW90ZS1jdXJsLmM6NDYzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgJyVzJzogJXMiCittc2dzdHIgIuaXoOazleiuv+mXriAnJXMn77yaJXMiCisKKyM6IHJlbW90ZS1jdXJsLmM6NDY5CiAjLCBjLWZvcm1hdAogbXNnaWQgInJlZGlyZWN0aW5nIHRvICVzIgogbXNnc3RyICLph43lrprlkJHliLAgJXMiCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjYwCisjOiByZW1vdGUtY3VybC5jOjU5MworbXNnaWQgInNob3VsZG4ndCBoYXZlIEVPRiB3aGVuIG5vdCBnZW50bGUgb24gRU9GIgorbXNnc3RyICLlvZPmsqHmnInorr7nva7muKnlkozlpITnkIbmlofku7bnu5PmnZ/nrKbvvIhFT0bvvInml7bvvIzkuI3lupTor6XmnInmlofku7bnu5PmnZ/nrKYiCisKKyM6IHJlbW90ZS1jdXJsLmM6NjczCittc2dpZCAidW5hYmxlIHRvIHJld2luZCBycGMgcG9zdCBkYXRhIC0gdHJ5IGluY3JlYXNpbmcgaHR0cC5wb3N0QnVmZmVyIgorbXNnc3RyICLml6Dms5XlgJLlm54gcnBjIHBvc3Qg5pWw5o2uIC0g5bCd6K+V5aKe5YqgIGh0dHAucG9zdEJ1ZmZlciIKKworIzogcmVtb3RlLWN1cmwuYzo3MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUlBDIGZhaWxlZDsgJXMiCittc2dzdHIgIlJQQyDlpLHotKXjgIIlcyIKKworIzogcmVtb3RlLWN1cmwuYzo3NzMKK21zZ2lkICJjYW5ub3QgaGFuZGxlIHB1c2hlcyB0aGlzIGJpZyIKK21zZ3N0ciAi5LiN6IO95aSE55CG6L+Z5LmI5aSn55qE5o6o6YCBIgorCisjOiByZW1vdGUtY3VybC5jOjg4OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGRlZmxhdGUgZXJyb3IgJWQiCittc2dzdHIgIuS4jeiDveWOi+e8qeivt+axgu+8jHpsaWIg5Y6L57yp6ZSZ6K+vICVkIgorCisjOiByZW1vdGUtY3VybC5jOjg5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGVuZCBlcnJvciAlZCIKK21zZ3N0ciAi5LiN6IO95Y6L57yp6K+35rGC77yMemxpYiDnu5PmnZ/plJnor68gJWQiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTAyMworbXNnaWQgImR1bWIgaHR0cCB0cmFuc3BvcnQgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IGNhcGFiaWxpdGllcyIKK21zZ3N0ciAi5ZORIGh0dHAg5Lyg6L6T5LiN5pSv5oyBIHNoYWxsbG93IOiDveWKmyIKKworIzogcmVtb3RlLWN1cmwuYzoxMDM4Cittc2dpZCAiZmV0Y2ggZmFpbGVkLiIKK21zZ3N0ciAi6I635Y+W5aSx6LSl44CCIgorCisjOiByZW1vdGUtY3VybC5jOjEwODYKK21zZ2lkICJjYW5ub3QgZmV0Y2ggYnkgc2hhMSBvdmVyIHNtYXJ0IGh0dHAiCittc2dzdHIgIuaXoOazlemAmui/h+aZuuiDvSBIVFRQIOiOt+WPliBzaGExIgorCisjOiByZW1vdGUtY3VybC5jOjExMzAgcmVtb3RlLWN1cmwuYzoxMTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInByb3RvY29sIGVycm9yOiBleHBlY3RlZCBzaGEvcmVmLCBnb3QgJyVzJyIKK21zZ3N0ciAi5Y2P6K6u6ZSZ6K+v77ya5pyf5pybIHNoYS9yZWbvvIzljbTlvpfliLAgJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzoxMTQ4IHJlbW90ZS1jdXJsLmM6MTI2MworIywgYy1mb3JtYXQKK21zZ2lkICJodHRwIHRyYW5zcG9ydCBkb2VzIG5vdCBzdXBwb3J0ICVzIgorbXNnc3RyICJodHRwIOS8oOi+k+WNj+iuruS4jeaUr+aMgSAlcyIKKworIzogcmVtb3RlLWN1cmwuYzoxMTg0Cittc2dpZCAiZ2l0LWh0dHAtcHVzaCBmYWlsZWQiCittc2dzdHIgImdpdC1odHRwLXB1c2gg5aSx6LSlIgorCisjOiByZW1vdGUtY3VybC5jOjEzNjkKK21zZ2lkICJyZW1vdGUtY3VybDogdXNhZ2U6IGdpdCByZW1vdGUtY3VybCA8cmVtb3RlPiBbPHVybD5dIgorbXNnc3RyICJyZW1vdGUtY3VybO+8mueUqOazle+8mmdpdCByZW1vdGUtY3VybCA86L+c56iLPiBbPHVybD5dIgorCisjOiByZW1vdGUtY3VybC5jOjE0MDEKK21zZ2lkICJyZW1vdGUtY3VybDogZXJyb3IgcmVhZGluZyBjb21tYW5kIHN0cmVhbSBmcm9tIGdpdCIKK21zZ3N0ciAicmVtb3RlLWN1cmzvvJrplJnor6/or7vlj5bmnaXoh6ogZ2l0IOeahOWRveS7pOa1gSIKKworIzogcmVtb3RlLWN1cmwuYzoxNDA4Cittc2dpZCAicmVtb3RlLWN1cmw6IGZldGNoIGF0dGVtcHRlZCB3aXRob3V0IGEgbG9jYWwgcmVwbyIKK21zZ3N0ciAicmVtb3RlLWN1cmzvvJrlsJ3or5XmsqHmnInmnKzlnLDku5PlupPkuIvojrflj5YiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdGUtY3VybDogdW5rbm93biBjb21tYW5kICclcycgZnJvbSBnaXQiCittc2dzdHIgInJlbW90ZS1jdXJs77ya5pyq55+l55qE5p2l6IeqIGdpdCDnmoTlkb3ku6QgJyVzJyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6ODUKIG1zZ2lkICJhcmdzIgogbXNnc3RyICLlj4LmlbAiCiAKLSM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjYxCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuaDo4NgogbXNnaWQgIm9iamVjdCBmaWx0ZXJpbmciCiBtc2dzdHIgIuWvueixoei/h+a7pCIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjE1NAorIzogcGFyc2Utb3B0aW9ucy5oOjE4MwogbXNnaWQgImV4cGlyeS1kYXRlIgogbXNnc3RyICLliLDmnJ/ml7bpl7QiCiAKLSM6IHBhcnNlLW9wdGlvbnMuaDoxNjkKKyM6IHBhcnNlLW9wdGlvbnMuaDoxOTcKIG1zZ2lkICJuby1vcCAoYmFja3dhcmQgY29tcGF0aWJpbGl0eSkiCiBtc2dzdHIgIuepuuaTjeS9nO+8iOWQkeWQjuWFvOWuue+8iSIKIAotIzogcGFyc2Utb3B0aW9ucy5oOjI2MQorIzogcGFyc2Utb3B0aW9ucy5oOjMwOQogbXNnaWQgImJlIG1vcmUgdmVyYm9zZSIKIG1zZ3N0ciAi5pu05Yqg6K+m57uGIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MjYzCisjOiBwYXJzZS1vcHRpb25zLmg6MzExCiBtc2dpZCAiYmUgbW9yZSBxdWlldCIKIG1zZ3N0ciAi5pu05Yqg5a6J6Z2ZIgogCi0jOiBwYXJzZS1vcHRpb25zLmg6MjY5CisjOiBwYXJzZS1vcHRpb25zLmg6MzE3CiBtc2dpZCAidXNlIDxuPiBkaWdpdHMgdG8gZGlzcGxheSBTSEEtMXMiCiBtc2dzdHIgIueUqCA8bj4g5L2N5pWw5a2X5pi+56S6IFNIQS0xIOWTiOW4jOWAvCIKIAorIzogcGFyc2Utb3B0aW9ucy5oOjMzNgorbXNnaWQgImhvdyB0byBzdHJpcCBzcGFjZXMgYW5kICNjb21tZW50cyBmcm9tIG1lc3NhZ2UiCittc2dzdHIgIuiuvue9ruWmguS9leWIoOmZpOaPkOS6pOivtOaYjumHjOeahOepuuagvOWSjCPms6jph4oiCisKKyM6IHBhcnNlLW9wdGlvbnMuaDozMzcKK21zZ2lkICJyZWFkIHBhdGhzcGVjIGZyb20gZmlsZSIKK21zZ3N0ciAi5LuO5paH5Lu26K+75Y+W6Lev5b6E6KGo6L6+5byPIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzM4Cittc2dpZCAiIgorIndpdGggLS1wYXRoc3BlYy1mcm9tLWZpbGUsIHBhdGhzcGVjIGVsZW1lbnRzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgorbXNnc3RyICLkvb/nlKggLS1wYXRoc3BlYy1mcm9tLWZpbGXvvIzot6/lvoTooajovr7lvI/nlKjnqbrlrZfnrKbliIbpmpQiCisKKyM6IHJlZi1maWx0ZXIuaDoxMDEKK21zZ2lkICJrZXkiCittc2dzdHIgImtleSIKKworIzogcmVmLWZpbHRlci5oOjEwMQorbXNnaWQgImZpZWxkIG5hbWUgdG8gc29ydCBvbiIKK21zZ3N0ciAi5o6S5bqP55qE5a2X5q615ZCNIgorCisjOiByZXJlcmUuaDo0NAorbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKK21zZ3N0ciAi5aaC5p6c5Y+v6IO977yM6YeN55So5Yay56qB6Kej5Yaz5pu05paw57Si5byVIgorCisjOiB3dC1zdGF0dXMuaDo2NworbXNnaWQgIkhFQUQgZGV0YWNoZWQgYXQgIgorbXNnc3RyICLlpLTmjIfpkojliIbnprvkuo4gIgorCisjOiB3dC1zdGF0dXMuaDo2OAorbXNnaWQgIkhFQUQgZGV0YWNoZWQgZnJvbSAiCittc2dzdHIgIuWktOaMh+mSiOWIhuemu+iHqiAiCisKICM6IGNvbW1hbmQtbGlzdC5oOjUwCiBtc2dpZCAiQWRkIGZpbGUgY29udGVudHMgdG8gdGhlIGluZGV4IgogbXNnc3RyICLmt7vliqDmlofku7blhoXlrrnoh7PntKLlvJUiCkBAIC0xODQyNiw3ICsyMjIwNSw3IEBACiAKICM6IGNvbW1hbmQtbGlzdC5oOjcxCiBtc2dpZCAiQ2xvbmUgYSByZXBvc2l0b3J5IGludG8gYSBuZXcgZGlyZWN0b3J5IgotbXNnc3RyICLlhYvpmobkuIDkuKrku5PlupPliLDkuIDkuKrmlrDnm67lvZUiCittc2dzdHIgIuWFi+mahuS7k+W6k+WIsOS4gOS4quaWsOebruW9lSIKIAogIzogY29tbWFuZC1saXN0Lmg6NzIKIG1zZ2lkICJEaXNwbGF5IGRhdGEgaW4gY29sdW1ucyIKQEAgLTE4NTQ2LDcgKzIyMzI1LDcgQEAKIAogIzogY29tbWFuZC1saXN0Lmg6MTAxCiBtc2dpZCAiRXh0cmFjdCBjb21taXQgSUQgZnJvbSBhbiBhcmNoaXZlIGNyZWF0ZWQgdXNpbmcgZ2l0LWFyY2hpdmUiCi1tc2dzdHIgIuS7jiBnaXQtYXJjaGl2ZSDliJvlu7rnmoTlvZLmoaPmlofku7bkuK3mj5Dlj5bmj5DkuqRJRCIKK21zZ3N0ciAi5LuOIGdpdC1hcmNoaXZlIOWIm+W7uueahOW9kuaho+aWh+S7tuS4reaPkOWPluaPkOS6pCBJRCIKIAogIzogY29tbWFuZC1saXN0Lmg6MTAyCiBtc2dpZCAiUHJpbnQgbGluZXMgbWF0Y2hpbmcgYSBwYXR0ZXJuIgpAQCAtMTg1NTgsNyArMjIzMzcsNyBAQAogCiAjOiBjb21tYW5kLWxpc3QuaDoxMDQKIG1zZ2lkICJDb21wdXRlIG9iamVjdCBJRCBhbmQgb3B0aW9uYWxseSBjcmVhdGVzIGEgYmxvYiBmcm9tIGEgZmlsZSIKLW1zZ3N0ciAi5LuO5LiA5Liq5paH5Lu26K6h566X5a+56LGhSUTvvIzlubblj6/ku6XliJvlu7ogYmxvYiDmlbDmja7lr7nosaEiCittc2dzdHIgIuS7juS4gOS4quaWh+S7tuiuoeeul+WvueixoSBJRO+8jOW5tuWPr+S7peWIm+W7uiBibG9iIOaVsOaNruWvueixoSIKIAogIzogY29tbWFuZC1saXN0Lmg6MTA1CiBtc2dpZCAiRGlzcGxheSBoZWxwIGluZm9ybWF0aW9uIGFib3V0IEdpdCIKQEAgLTE4NTkzLDcgKzIyMzcyLDcgQEAKIG1zZ3N0ciAi5ZyoIGdpdHdlYiDkuK3ljbPml7bmtY/op4jmgqjnmoTlt6XkvZzku5PlupMiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjExMwotbXNnaWQgImFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKK21zZ2lkICJBZGQgb3IgcGFyc2Ugc3RydWN0dXJlZCBpbmZvcm1hdGlvbiBpbiBjb21taXQgbWVzc2FnZXMiCiBtc2dzdHIgIua3u+WKoOaIluino+aekOaPkOS6pOivtOaYjuS4reeahOe7k+aehOWMluS/oeaBryIKIAogIzogY29tbWFuZC1saXN0Lmg6MTE0CkBAIC0xODY5OSw3ICsyMjQ3OCw3IEBACiAKICM6IGNvbW1hbmQtbGlzdC5oOjEzOQogbXNnaWQgIkNvbXB1dGUgdW5pcXVlIElEIGZvciBhIHBhdGNoIgotbXNnc3RyICLorqHnrpfkuIDkuKrooaXkuIHnmoTllK/kuIBJRCIKK21zZ3N0ciAi6K6h566X5LiA5Liq6KGl5LiB55qE5ZSv5LiAIElEIgogCiAjOiBjb21tYW5kLWxpc3QuaDoxNDAKIG1zZ2lkICJQcnVuZSBhbGwgdW5yZWFjaGFibGUgb2JqZWN0cyBmcm9tIHRoZSBvYmplY3QgZGF0YWJhc2UiCkBAIC0xODc2NiwyMjEgKzIyNTQ1LDIzMyBAQAogbXNnc3RyICLph43nva7lvZPliY0gSEVBRCDliLDmjIflrprnirbmgIEiCiAKICM6IGNvbW1hbmQtbGlzdC5oOjE1NgorbXNnaWQgIlJlc3RvcmUgd29ya2luZyB0cmVlIGZpbGVzIgorbXNnc3RyICLmgaLlpI3lt6XkvZzljLrmlofku7YiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE1NwogbXNnaWQgIlJldmVydCBzb21lIGV4aXN0aW5nIGNvbW1pdHMiCiBtc2dzdHIgIuWbnumAgOS4gOS6m+eOsOWtmOaPkOS6pCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTU3CisjOiBjb21tYW5kLWxpc3QuaDoxNTgKIG1zZ2lkICJMaXN0cyBjb21taXQgb2JqZWN0cyBpbiByZXZlcnNlIGNocm9ub2xvZ2ljYWwgb3JkZXIiCiBtc2dzdHIgIuaMieaXtumXtOmhuuW6j+WIl+WHuuaPkOS6pOWvueixoSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTU4CisjOiBjb21tYW5kLWxpc3QuaDoxNTkKIG1zZ2lkICJQaWNrIG91dCBhbmQgbWFzc2FnZSBwYXJhbWV0ZXJzIgogbXNnc3RyICLpgInlh7rlubblpITnkIblj4LmlbAiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE1OQorIzogY29tbWFuZC1saXN0Lmg6MTYwCiBtc2dpZCAiUmVtb3ZlIGZpbGVzIGZyb20gdGhlIHdvcmtpbmcgdHJlZSBhbmQgZnJvbSB0aGUgaW5kZXgiCiBtc2dzdHIgIuS7juW3peS9nOWMuuWSjOe0ouW8leS4reWIoOmZpOaWh+S7tiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTYwCisjOiBjb21tYW5kLWxpc3QuaDoxNjEKIG1zZ2lkICJTZW5kIGEgY29sbGVjdGlvbiBvZiBwYXRjaGVzIGFzIGVtYWlscyIKIG1zZ3N0ciAi6YCa6L+H55S15a2Q6YKu5Lu25Y+R6YCB5LiA57uE6KGl5LiBIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjEKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MgogbXNnaWQgIlB1c2ggb2JqZWN0cyBvdmVyIEdpdCBwcm90b2NvbCB0byBhbm90aGVyIHJlcG9zaXRvcnkiCiBtc2dzdHIgIuS9v+eUqCBHaXQg5Y2P6K6u5o6o6YCB5a+56LGh5Yiw5Y+m5LiA5Liq5LuT5bqTIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjIKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MwogbXNnaWQgIlJlc3RyaWN0ZWQgbG9naW4gc2hlbGwgZm9yIEdpdC1vbmx5IFNTSCBhY2Nlc3MiCiBtc2dzdHIgIuWPquWFgeiuuCBHaXQgU1NIIOiuv+mXrueahOWPl+mZkOeZu+W9lXNoZWxsIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjMKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NAogbXNnaWQgIlN1bW1hcml6ZSAnZ2l0IGxvZycgb3V0cHV0IgogbXNnc3RyICInZ2l0IGxvZycg6L6T5Ye65pGY6KaBIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjQKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NQogbXNnaWQgIlNob3cgdmFyaW91cyB0eXBlcyBvZiBvYmplY3RzIgogbXNnc3RyICLmmL7npLrlkITnp43nsbvlnovnmoTlr7nosaEiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2NQorIzogY29tbWFuZC1saXN0Lmg6MTY2CiBtc2dpZCAiU2hvdyBicmFuY2hlcyBhbmQgdGhlaXIgY29tbWl0cyIKIG1zZ3N0ciAi5pi+56S65YiG5pSv5ZKM5o+Q5LqkIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNjYKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NwogbXNnaWQgIlNob3cgcGFja2VkIGFyY2hpdmUgaW5kZXgiCiBtc2dzdHIgIuaYvuekuuaJk+WMheW9kuaho+e0ouW8lSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTY3CisjOiBjb21tYW5kLWxpc3QuaDoxNjgKIG1zZ2lkICJMaXN0IHJlZmVyZW5jZXMgaW4gYSBsb2NhbCByZXBvc2l0b3J5IgogbXNnc3RyICLmmL7npLrmnKzlnLDku5PlupPkuK3nmoTlvJXnlKgiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2OAorIzogY29tbWFuZC1saXN0Lmg6MTY5CiBtc2dpZCAiR2l0J3MgaTE4biBzZXR1cCBjb2RlIGZvciBzaGVsbCBzY3JpcHRzIgogbXNnc3RyICLkuLogc2hlbGwg6ISa5pys5YeG5aSH55qEIEdpdCDlm73pmYXljJborr7nva7ku6PnoIEiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE2OQorIzogY29tbWFuZC1saXN0Lmg6MTcwCiBtc2dpZCAiQ29tbW9uIEdpdCBzaGVsbCBzY3JpcHQgc2V0dXAgY29kZSIKIG1zZ3N0ciAi5bi455So55qEIEdpdCBzaGVsbCDohJrmnKzorr7nva7ku6PnoIEiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3MAorIzogY29tbWFuZC1saXN0Lmg6MTcxCittc2dpZCAiSW5pdGlhbGl6ZSBhbmQgbW9kaWZ5IHRoZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgIuWIneWni+WMluWPiuS/ruaUueeogOeWj+ajgOWHuiIKKworIzogY29tbWFuZC1saXN0Lmg6MTcyCiBtc2dpZCAiU3Rhc2ggdGhlIGNoYW5nZXMgaW4gYSBkaXJ0eSB3b3JraW5nIGRpcmVjdG9yeSBhd2F5IgogbXNnc3RyICLotK7ol4/ohI/lt6XkvZzljLrkuK3nmoTkv67mlLkiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE3MQorIzogY29tbWFuZC1saXN0Lmg6MTczCiBtc2dpZCAiQWRkIGZpbGUgY29udGVudHMgdG8gdGhlIHN0YWdpbmcgYXJlYSIKIG1zZ3N0ciAi5bCG5paH5Lu25YaF5a655re75Yqg5Yiw57Si5byVIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzIKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NAogbXNnaWQgIlNob3cgdGhlIHdvcmtpbmcgdHJlZSBzdGF0dXMiCiBtc2dzdHIgIuaYvuekuuW3peS9nOWMuueKtuaAgSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTczCisjOiBjb21tYW5kLWxpc3QuaDoxNzUKIG1zZ2lkICJSZW1vdmUgdW5uZWNlc3Nhcnkgd2hpdGVzcGFjZSIKIG1zZ3N0ciAi5Yig6Zmk5LiN5b+F6KaB55qE56m655m95a2X56ymIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzQKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NgogbXNnaWQgIkluaXRpYWxpemUsIHVwZGF0ZSBvciBpbnNwZWN0IHN1Ym1vZHVsZXMiCiBtc2dzdHIgIuWIneWni+WMluOAgeabtOaWsOaIluajgOafpeWtkOaooee7hCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc1CisjOiBjb21tYW5kLWxpc3QuaDoxNzcKIG1zZ2lkICJCaWRpcmVjdGlvbmFsIG9wZXJhdGlvbiBiZXR3ZWVuIGEgU3VidmVyc2lvbiByZXBvc2l0b3J5IGFuZCBHaXQiCiBtc2dzdHIgIlN1YmVyc2lvbiDku5PlupPlkowgR2l0IOS5i+mXtOeahOWPjOWQkeaTjeS9nCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc2CisjOiBjb21tYW5kLWxpc3QuaDoxNzgKK21zZ2lkICJTd2l0Y2ggYnJhbmNoZXMiCittc2dzdHIgIuWIh+aNouWIhuaUryIKKworIzogY29tbWFuZC1saXN0Lmg6MTc5CiBtc2dpZCAiUmVhZCwgbW9kaWZ5IGFuZCBkZWxldGUgc3ltYm9saWMgcmVmcyIKIG1zZ3N0ciAi6K+75Y+W44CB5L+u5pS55ZKM5Yig6Zmk56ym5Y+35byV55SoIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzcKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MAogbXNnaWQgIkNyZWF0ZSwgbGlzdCwgZGVsZXRlIG9yIHZlcmlmeSBhIHRhZyBvYmplY3Qgc2lnbmVkIHdpdGggR1BHIgogbXNnc3RyICLliJvlu7rjgIHliJflh7rjgIHliKDpmaTmiJbmoKHpqozkuIDkuKogR1BHIOetvuWQjeeahOagh+etvuWvueixoSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTc4CisjOiBjb21tYW5kLWxpc3QuaDoxODEKIG1zZ2lkICJDcmVhdGVzIGEgdGVtcG9yYXJ5IGZpbGUgd2l0aCBhIGJsb2IncyBjb250ZW50cyIKIG1zZ3N0ciAi55SoIGJsb2Ig5pWw5o2u5a+56LGh55qE5YaF5a655Yib5bu65LiA5Liq5Li05pe25paH5Lu2IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxNzkKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MgogbXNnaWQgIlVucGFjayBvYmplY3RzIGZyb20gYSBwYWNrZWQgYXJjaGl2ZSIKIG1zZ3N0ciAi5LuO5omT5YyF5paH5Lu25Lit6Kej5Y6L57yp5a+56LGhIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODAKKyM6IGNvbW1hbmQtbGlzdC5oOjE4MwogbXNnaWQgIlJlZ2lzdGVyIGZpbGUgY29udGVudHMgaW4gdGhlIHdvcmtpbmcgdHJlZSB0byB0aGUgaW5kZXgiCiBtc2dzdHIgIuWwhuW3peS9nOWMuueahOaWh+S7tuWGheWuueazqOWGjOWIsOe0ouW8lSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTgxCisjOiBjb21tYW5kLWxpc3QuaDoxODQKIG1zZ2lkICJVcGRhdGUgdGhlIG9iamVjdCBuYW1lIHN0b3JlZCBpbiBhIHJlZiBzYWZlbHkiCiBtc2dzdHIgIuWuieWFqOWcsOabtOaWsOWtmOWCqOS6juW8leeUqOS4reeahOWvueixoeWQjeensCIKIAotIzogY29tbWFuZC1saXN0Lmg6MTgyCisjOiBjb21tYW5kLWxpc3QuaDoxODUKIG1zZ2lkICJVcGRhdGUgYXV4aWxpYXJ5IGluZm8gZmlsZSB0byBoZWxwIGR1bWIgc2VydmVycyIKIG1zZ3N0ciAi5pu05paw6L6F5Yqp5L+h5oGv5paH5Lu25Lul5biu5Yqp5ZOR5Y2P6K6u5pyN5YqhIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxODMKKyM6IGNvbW1hbmQtbGlzdC5oOjE4NgogbXNnaWQgIlNlbmQgYXJjaGl2ZSBiYWNrIHRvIGdpdC1hcmNoaXZlIgogbXNnc3RyICLlsIblrZjmoaPlj5HpgIHlm54gZ2l0LWFyY2hpdmUiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4NAorIzogY29tbWFuZC1saXN0Lmg6MTg3CiBtc2dpZCAiU2VuZCBvYmplY3RzIHBhY2tlZCBiYWNrIHRvIGdpdC1mZXRjaC1wYWNrIgogbXNnc3RyICLlsIblr7nosaHljovnvKnljIXlj5HpgIHlm54gZ2l0LWZldGNoLXBhY2siCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4NQorIzogY29tbWFuZC1saXN0Lmg6MTg4CiBtc2dpZCAiU2hvdyBhIEdpdCBsb2dpY2FsIHZhcmlhYmxlIgogbXNnc3RyICLmmL7npLrkuIDkuKpHaXTpgLvovpHlj5jph48iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4NgorIzogY29tbWFuZC1saXN0Lmg6MTg5CiBtc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgY29tbWl0cyIKIG1zZ3N0ciAi5qOA5p+lIEdQRyDmj5DkuqTnrb7lkI0iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4NworIzogY29tbWFuZC1saXN0Lmg6MTkwCiBtc2dpZCAiVmFsaWRhdGUgcGFja2VkIEdpdCBhcmNoaXZlIGZpbGVzIgogbXNnc3RyICLmoKHpqozmiZPljIXnmoRHaXTlrZjku5Pmlofku7YiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4OAorIzogY29tbWFuZC1saXN0Lmg6MTkxCiBtc2dpZCAiQ2hlY2sgdGhlIEdQRyBzaWduYXR1cmUgb2YgdGFncyIKIG1zZ3N0ciAi5qOA5p+l5qCH562+55qEIEdQRyDnrb7lkI0iCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE4OQorIzogY29tbWFuZC1saXN0Lmg6MTkyCiBtc2dpZCAiR2l0IHdlYiBpbnRlcmZhY2UgKHdlYiBmcm9udGVuZCB0byBHaXQgcmVwb3NpdG9yaWVzKSIKIG1zZ3N0ciAiR2l0IHdlYiDnlYzpnaLvvIhHaXQg5LuT5bqT55qEIHdlYiDliY3nq6/vvIkiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MAorIzogY29tbWFuZC1saXN0Lmg6MTkzCiBtc2dpZCAiU2hvdyBsb2dzIHdpdGggZGlmZmVyZW5jZSBlYWNoIGNvbW1pdCBpbnRyb2R1Y2VzIgogbXNnc3RyICLmmL7npLrmr4/kuIDkuKrmj5DkuqTlvJXlhaXnmoTlt67lvILml6Xlv5ciCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MQorIzogY29tbWFuZC1saXN0Lmg6MTk0CiBtc2dpZCAiTWFuYWdlIG11bHRpcGxlIHdvcmtpbmcgdHJlZXMiCiBtc2dzdHIgIueuoeeQhuWkmuS4quW3peS9nOWMuiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTkyCisjOiBjb21tYW5kLWxpc3QuaDoxOTUKIG1zZ2lkICJDcmVhdGUgYSB0cmVlIG9iamVjdCBmcm9tIHRoZSBjdXJyZW50IGluZGV4IgogbXNnc3RyICLku47lvZPliY3ntKLlvJXliJvlu7rkuIDkuKrmoJHlr7nosaEiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjE5MworIzogY29tbWFuZC1saXN0Lmg6MTk2CiBtc2dpZCAiRGVmaW5pbmcgYXR0cmlidXRlcyBwZXIgcGF0aCIKIG1zZ3N0ciAi5a6a5LmJ6Lev5b6E55qE5bGe5oCnIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTQKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NwogbXNnaWQgIkdpdCBjb21tYW5kLWxpbmUgaW50ZXJmYWNlIGFuZCBjb252ZW50aW9ucyIKIG1zZ3N0ciAiR2l0IOWRveS7pOihjOeVjOmdouWSjOe6puWumiIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk1CisjOiBjb21tYW5kLWxpc3QuaDoxOTgKIG1zZ2lkICJBIEdpdCBjb3JlIHR1dG9yaWFsIGZvciBkZXZlbG9wZXJzIgogbXNnc3RyICLpnaLlkJHlvIDlj5HkurrlkZjnmoQgR2l0IOaguOW/g+aVmeeoiyIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk2CisjOiBjb21tYW5kLWxpc3QuaDoxOTkKIG1zZ2lkICJHaXQgZm9yIENWUyB1c2VycyIKIG1zZ3N0ciAi6YCC5ZCIIENWUyDnlKjmiLfnmoQgR2l0IOW4ruWKqSIKIAotIzogY29tbWFuZC1saXN0Lmg6MTk3CisjOiBjb21tYW5kLWxpc3QuaDoyMDAKIG1zZ2lkICJUd2Vha2luZyBkaWZmIG91dHB1dCIKIG1zZ3N0ciAi6LCD5pW05beu5byC6L6T5Ye6IgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTgKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMQogbXNnaWQgIkEgdXNlZnVsIG1pbmltdW0gc2V0IG9mIGNvbW1hbmRzIGZvciBFdmVyeWRheSBHaXQiCiBtc2dzdHIgIuavj+S4gOWkqSBHaXQg55qE5LiA57uE5pyJ55So55qE5pyA5bCP5ZG95Luk6ZuG5ZCIIgogCi0jOiBjb21tYW5kLWxpc3QuaDoxOTkKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMgogbXNnaWQgIkEgR2l0IEdsb3NzYXJ5IgogbXNnc3RyICJHaXQg6K+N5rGH6KGoIgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDAKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMwogbXNnaWQgIkhvb2tzIHVzZWQgYnkgR2l0IgogbXNnc3RyICJHaXQg5L2/55So55qE6ZKp5a2QIgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDEKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNAogbXNnaWQgIlNwZWNpZmllcyBpbnRlbnRpb25hbGx5IHVudHJhY2tlZCBmaWxlcyB0byBpZ25vcmUiCiBtc2dzdHIgIuW/veeVpeaMh+WumueahOacqui3n+i4quaWh+S7tiIKIAotIzogY29tbWFuZC1saXN0Lmg6MjAyCisjOiBjb21tYW5kLWxpc3QuaDoyMDUKIG1zZ2lkICJEZWZpbmluZyBzdWJtb2R1bGUgcHJvcGVydGllcyIKIG1zZ3N0ciAi5a6a5LmJ5a2Q5qih57uE5bGe5oCnIgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDMKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNgogbXNnaWQgIkdpdCBuYW1lc3BhY2VzIgogbXNnc3RyICJHaXQg5ZCN5a2X56m66Ze0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDQKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNwogbXNnaWQgIkdpdCBSZXBvc2l0b3J5IExheW91dCIKIG1zZ3N0ciAiR2l0IOS7k+W6k+W4g+WxgCIKIAotIzogY29tbWFuZC1saXN0Lmg6MjA1CisjOiBjb21tYW5kLWxpc3QuaDoyMDgKIG1zZ2lkICJTcGVjaWZ5aW5nIHJldmlzaW9ucyBhbmQgcmFuZ2VzIGZvciBHaXQiCiBtc2dzdHIgIuaMh+WumiBHaXQg55qE54mI5pys5ZKM54mI5pys6IyD5Zu0IgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDYKKyM6IGNvbW1hbmQtbGlzdC5oOjIwOQorbXNnaWQgIk1vdW50aW5nIG9uZSByZXBvc2l0b3J5IGluc2lkZSBhbm90aGVyIgorbXNnc3RyICLlsIbkuIDkuKrku5PlupPlronoo4XliLDlj6blpJbkuIDkuKrku5PlupPkuK0iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMAogbXNnaWQgIkEgdHV0b3JpYWwgaW50cm9kdWN0aW9uIHRvIEdpdDogcGFydCB0d28iCiBtc2dzdHIgIuS4gOS4qiBHaXQg5pWZ56iL77ya56ys5LqM6YOo5YiGIgogCi0jOiBjb21tYW5kLWxpc3QuaDoyMDcKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMQogbXNnaWQgIkEgdHV0b3JpYWwgaW50cm9kdWN0aW9uIHRvIEdpdCIKIG1zZ3N0ciAi5LiA5LiqIEdpdCDmlZnnqIsiCiAKLSM6IGNvbW1hbmQtbGlzdC5oOjIwOAorIzogY29tbWFuZC1saXN0Lmg6MjEyCiBtc2dpZCAiQW4gb3ZlcnZpZXcgb2YgcmVjb21tZW5kZWQgd29ya2Zsb3dzIHdpdGggR2l0IgogbXNnc3RyICJHaXQg5o6o6I2Q55qE5bel5L2c5rWB5qaC6KeIIgogCi0jOiByZXJlcmUuaDo0NAotbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKLW1zZ3N0ciAi5aaC5p6c5Y+v6IO977yM6YeN55So5Yay56qB6Kej5Yaz5pu05paw57Si5byVIgotCiAjOiBnaXQtYmlzZWN0LnNoOjU0CiBtc2dpZCAiWW91IG5lZWQgdG8gc3RhcnQgYnkgXCJnaXQgYmlzZWN0IHN0YXJ0XCIiCiBtc2dzdHIgIuaCqOmcgOimgeaJp+ihjCBcImdpdCBiaXNlY3Qgc3RhcnRcIiDmnaXlvIDlp4siCkBAIC0xODk5MywxMzMgKzIyNzg0LDQ5IEBACiBtc2dpZCAiRG8geW91IHdhbnQgbWUgdG8gZG8gaXQgZm9yIHlvdSBbWS9uXT8gIgogbXNnc3RyICLmgqjmg7PorqnmiJHkuLrmgqjov5nmoLflgZrkuYhbWS9uXe+8nyAiCiAKLSM6IGdpdC1iaXNlY3Quc2g6MTIxCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJ1bnJlY29nbmlzZWQgb3B0aW9uOiAnJGFyZyciCi1tc2dzdHIgIuacquiDveivhuWIq+eahOmAiemhue+8mickYXJnJyIKLQotIzogZ2l0LWJpc2VjdC5zaDoxMjUKLSMsIHNoLWZvcm1hdAotbXNnaWQgIickYXJnJyBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYSB2YWxpZCByZXZpc2lvbiIKLW1zZ3N0ciAiJyRhcmcnIOeci+i1t+adpeS4jeWDj+aYr+S4gOS4quacieaViOeahOeJiOacrCIKLQotIzogZ2l0LWJpc2VjdC5zaDoxNTQKLW1zZ2lkICJCYWQgSEVBRCAtIEkgbmVlZCBhIEhFQUQiCi1tc2dzdHIgIuWdj+eahCBIRUFEIC0g5oiR6ZyA6KaB5LiA5LiqIEhFQUQiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTY3Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iQ2hlY2tpbmcgb3V0ICckc3RhcnRfaGVhZCcgZmFpbGVkLiBUcnkgJ2dpdCBiaXNlY3QgcmVzZXQgPHZhbGlkLWJyYW5jaD4nLiIKLW1zZ3N0ciAi5qOA5Ye6ICckc3RhcnRfaGVhZCcg5aSx6LSl44CC5bCd6K+VICdnaXQgYmlzZWN0IHJlc2V0IDzmnInmlYjliIbmlK8+J+OAgiIKLQotIzogZ2l0LWJpc2VjdC5zaDoxNzcKLW1zZ2lkICJ3b24ndCBiaXNlY3Qgb24gY2ctc2VlaydlZCB0cmVlIgotbXNnc3RyICLkuI3kvJrlnKjlgZrkuoYgY2ctc2VlayDnmoTmoJHkuIrlgZrkuozliIbmn6Xmib4iCi0KLSM6IGdpdC1iaXNlY3Quc2g6MTgxCi1tc2dpZCAiQmFkIEhFQUQgLSBzdHJhbmdlIHN5bWJvbGljIHJlZiIKLW1zZ3N0ciAi5Z2P55qEIEhFQUQgLSDlpYfmgKrnmoTnrKblj7flvJXnlKgiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MjMzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiAkc3RhdGUiCi1tc2dzdHIgIuWdj+eahCBiaXNlY3Rfd3JpdGUg5Y+C5pWw77yaJHN0YXRlIgotCi0jOiBnaXQtYmlzZWN0LnNoOjI0NgorIzogZ2l0LWJpc2VjdC5zaDoxMDEKICMsIHNoLWZvcm1hdAogbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRhcmciCiBtc2dzdHIgIuWdj+eahOi+k+WFpeeJiOacrO+8miRhcmciCiAKLSM6IGdpdC1iaXNlY3Quc2g6MjY1CisjOiBnaXQtYmlzZWN0LnNoOjEyMQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQmFkIHJldiBpbnB1dDogJGJpc2VjdGVkX2hlYWQiCiBtc2dzdHIgIuWdj+eahOi+k+WFpeeJiOacrO+8miRiaXNlY3RlZF9oZWFkIgogCi0jOiBnaXQtYmlzZWN0LnNoOjI3NAorIzogZ2l0LWJpc2VjdC5zaDoxMzAKICMsIHNoLWZvcm1hdAogbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRyZXYiCiBtc2dzdHIgIuWdj+eahOi+k+WFpeeJiOacrO+8miRyZXYiCiAKLSM6IGdpdC1iaXNlY3Quc2g6MjgzCisjOiBnaXQtYmlzZWN0LnNoOjEzOQogIywgc2gtZm9ybWF0CiBtc2dpZCAiJ2dpdCBiaXNlY3QgJFRFUk1fQkFEJyBjYW4gdGFrZSBvbmx5IG9uZSBhcmd1bWVudC4iCiBtc2dzdHIgIidnaXQgYmlzZWN0ICRURVJNX0JBRCcg5Y+q6IO95bim5LiA5Liq5Y+C5pWw44CCIgogCi0jOiBnaXQtYmlzZWN0LnNoOjMwNgotIywgc2gtZm9ybWF0Ci1tc2dpZCAiV2FybmluZzogYmlzZWN0aW5nIG9ubHkgd2l0aCBhICRURVJNX0JBRCBjb21taXQuIgotbXNnc3RyICLorablkYrvvJrlnKjku4XmnInkuIDkuKrlnY/vvIgkVEVSTV9CQUTvvInmj5DkuqTkuIvov5vooYzkuozliIbmn6Xmib7jgIIiCi0KLSMgIOivkeiAhe+8muazqOaEj+S/neaMgeWPpeWwvuepuuagvAotIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFtZXSBhbmQgW25dIGluIHlvdXIKLSMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKLSMuIGF0IHRoaXMgcG9pbnQuCi0jOiBnaXQtYmlzZWN0LnNoOjMxMgotbXNnaWQgIkFyZSB5b3Ugc3VyZSBbWS9uXT8gIgotbXNnc3RyICLmgqjnoa7orqTkuYhbWS9uXe+8nyAiCi0KLSM6IGdpdC1iaXNlY3Quc2g6MzI0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iWW91IG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJGJhZF9zeW4gYW5kIG9uZSAkZ29vZF9zeW4gcmV2aXNpb24uXG4iCi0iKFlvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIGFuZCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIgZm9yIHRoYXQuKSIKLW1zZ3N0ciAiIgotIuaCqOmcgOimgee7meaIkeiHs+WwkeS4gOS4quWlveeJiOacrOWSjOS4gOS4quWdj+eJiOacrOOAglxuIgotIu+8iOS4uuatpOaCqOWPr+S7peeUqCBcImdpdCBiaXNlY3QgJGJhZF9zeW5cIiDlkowgXCJnaXQgYmlzZWN0ICRnb29kX3N5blwiIOWRveS7pOOAgu+8iSIKLQotIzogZ2l0LWJpc2VjdC5zaDozMjcKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJZb3UgbmVlZCB0byBzdGFydCBieSBcImdpdCBiaXNlY3Qgc3RhcnRcIi5cbiIKLSJZb3UgdGhlbiBuZWVkIHRvIGdpdmUgbWUgYXQgbGVhc3Qgb25lICRnb29kX3N5biBhbmQgb25lICRiYWRfc3luIHJldmlzaW9uLlxuIgotIihZb3UgY2FuIHVzZSBcImdpdCBiaXNlY3QgJGJhZF9zeW5cIiBhbmQgXCJnaXQgYmlzZWN0ICRnb29kX3N5blwiIGZvciB0aGF0LikiCi1tc2dzdHIgIiIKLSLmgqjpnIDopoHmiafooYwgXCJnaXQgYmlzZWN0IHN0YXJ0XCIg5p2l5byA5aeL44CCXG4iCi0i54S25ZCO6ZyA6KaB5o+Q5L6b5oiR6Iez5bCR5LiA5Liq5aW954mI5pys5ZKM5LiA5Liq5Z2P54mI5pys44CCXG4iCi0i77yI5Li65q2k5oKo5Y+v5Lul55SoIFwiZ2l0IGJpc2VjdCAkYmFkX3N5blwiIOWSjCBcImdpdCBiaXNlY3QgJGdvb2Rfc3luXCIg5ZG95Luk44CC77yJIgotCi0jOiBnaXQtYmlzZWN0LnNoOjM5OCBnaXQtYmlzZWN0LnNoOjUxMgotbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLiIKLW1zZ3N0ciAi5oiR5Lus5rKh5pyJ5Zyo5LqM5YiG5p+l5om+44CCIgotCi0jOiBnaXQtYmlzZWN0LnNoOjQwNQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiJyRpbnZhbGlkJyBpcyBub3QgYSB2YWxpZCBjb21taXQiCi1tc2dzdHIgIickaW52YWxpZCcg5LiN5piv5LiA5Liq5pyJ5pWI55qE5o+Q5LqkIgotCi0jOiBnaXQtYmlzZWN0LnNoOjQxNAotIywgc2gtZm9ybWF0Ci1tc2dpZCAiIgotIkNvdWxkIG5vdCBjaGVjayBvdXQgb3JpZ2luYWwgSEVBRCAnJGJyYW5jaCcuXG4iCi0iVHJ5ICdnaXQgYmlzZWN0IHJlc2V0IDxjb21taXQ+Jy4iCi1tc2dzdHIgIiIKLSLkuI3og73mo4Dlh7rljp/lp4sgSEVBRCAnJGJyYW5jaCfjgIJcbiIKLSLlsJ3or5UgJ2dpdCBiaXNlY3QgcmVzZXQgPOaPkOS6pD4n44CCIgotCi0jOiBnaXQtYmlzZWN0LnNoOjQyMgorIzogZ2l0LWJpc2VjdC5zaDoyMDkKIG1zZ2lkICJObyBsb2dmaWxlIGdpdmVuIgogbXNnc3RyICLmnKrmj5Dkvpvml6Xlv5fmlofku7YiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDIzCisjOiBnaXQtYmlzZWN0LnNoOjIxMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiY2Fubm90IHJlYWQgJGZpbGUgZm9yIHJlcGxheWluZyIKIG1zZ3N0ciAi5LiN6IO96K+75Y+WICRmaWxlIOadpemHjeaUviIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NDQKKyM6IGdpdC1iaXNlY3Quc2g6MjMyCiBtc2dpZCAiPz8gd2hhdCBhcmUgeW91IHRhbGtpbmcgYWJvdXQ/IgogbXNnc3RyICI/PyDmgqjlnKjor7Tku4DkuYg/IgogCi0jOiBnaXQtYmlzZWN0LnNoOjQ1MworIzogZ2l0LWJpc2VjdC5zaDoyNDEKIG1zZ2lkICJiaXNlY3QgcnVuIGZhaWxlZDogbm8gY29tbWFuZCBwcm92aWRlZC4iCiBtc2dzdHIgIuS6jOWIhuafpeaJvui/kOihjOWksei0pe+8muayoeacieaPkOS+m+WRveS7pOOAgiIKIAotIzogZ2l0LWJpc2VjdC5zaDo0NTgKKyM6IGdpdC1iaXNlY3Quc2g6MjQ2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJydW5uaW5nICRjb21tYW5kIgogbXNnc3RyICLov5DooYwgJGNvbW1hbmQiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NDY1CisjOiBnaXQtYmlzZWN0LnNoOjI1MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiIgogImJpc2VjdCBydW4gZmFpbGVkOlxuIgpAQCAtMTkxMjgsMTEgKzIyODM1LDExIEBACiAi5LqM5YiG5p+l5om+6L+Q6KGM5aSx6LSl77yaXG4iCiAi5ZG95LukICckY29tbWFuZCcg55qE6YCA5Ye656CBICRyZXMg5bCP5LqOIDAg5oiW5aSn5LqO562J5LqOIDEyOCIKIAotIzogZ2l0LWJpc2VjdC5zaDo0OTEKKyM6IGdpdC1iaXNlY3Quc2g6Mjc5CiBtc2dpZCAiYmlzZWN0IHJ1biBjYW5ub3QgY29udGludWUgYW55IG1vcmUiCiBtc2dzdHIgIuS6jOWIhuafpeaJvuS4jeiDvee7p+e7rei/kOihjCIKIAotIzogZ2l0LWJpc2VjdC5zaDo0OTcKKyM6IGdpdC1iaXNlY3Quc2g6Mjg1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiYmlzZWN0IHJ1biBmYWlsZWQ6XG4iCkBAIC0xOTE0MSwyNyArMjI4NDgsMTMgQEAKICLkuozliIbmn6Xmib7ov5DooYzlpLHotKXvvJpcbiIKICInYmlzZWN0X3N0YXRlICRzdGF0ZScg6YCA5Ye656CB5Li6ICRyZXMiCiAKLSM6IGdpdC1iaXNlY3Quc2g6NTA0CisjOiBnaXQtYmlzZWN0LnNoOjI5MgogbXNnaWQgImJpc2VjdCBydW4gc3VjY2VzcyIKIG1zZ3N0ciAi5LqM5YiG5p+l5om+6L+Q6KGM5oiQ5YqfIgogCi0jOiBnaXQtYmlzZWN0LnNoOjUzMwotIywgc2gtZm9ybWF0Ci1tc2dpZCAiSW52YWxpZCBjb21tYW5kOiB5b3UncmUgY3VycmVudGx5IGluIGEgJFRFUk1fQkFELyRURVJNX0dPT0QgYmlzZWN0LiIKLW1zZ3N0ciAi5peg5pWI55qE5ZG95Luk77ya5oKo5b2T5YmN5q2j5aSE5LqO5LiA5LiqICRURVJNX0JBRC8kVEVSTV9HT09EIOS6jOWIhuafpeaJvuOAgiIKLQotIzogZ2l0LWJpc2VjdC5zaDo1NjcKLW1zZ2lkICJubyB0ZXJtcyBkZWZpbmVkIgotbXNnc3RyICLmnKrlrprkuYnmnK/or60iCi0KLSM6IGdpdC1iaXNlY3Quc2g6NTg0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICIiCi0iaW52YWxpZCBhcmd1bWVudCAkYXJnIGZvciAnZ2l0IGJpc2VjdCB0ZXJtcycuXG4iCi0iU3VwcG9ydGVkIG9wdGlvbnMgYXJlOiAtLXRlcm0tZ29vZHwtLXRlcm0tb2xkIGFuZCAtLXRlcm0tYmFkfC0tdGVybS1uZXcuIgotbXNnc3RyICIiCi0i5Y+C5pWwICRhcmcg5a+55ZG95LukICdnaXQgYmlzZWN0IHRlcm1zJyDml6DmlYjjgIJcbiIKLSLmlK/mjIHnmoTpgInpobnmnInvvJotLXRlcm0tZ29vZHwtLXRlcm0tb2xkIOWSjCAtLXRlcm0tYmFkfC0tdGVybS1uZXfjgIIiCisjOiBnaXQtYmlzZWN0LnNoOjMwMAorbXNnaWQgIldlIGFyZSBub3QgYmlzZWN0aW5nLiIKK21zZ3N0ciAi5oiR5Lus5rKh5pyJ5Zyo5LqM5YiG5p+l5om+44CCIgogCiAjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo0NgogbXNnaWQgIiIKQEAgLTE5MjAxLDI4NSArMjI4OTQsMTI4IEBACiBtc2dpZCAiU2ltcGxlIG1lcmdlIGRpZCBub3Qgd29yaywgdHJ5aW5nIGF1dG9tYXRpYyBtZXJnZS4iCiBtc2dzdHIgIueugOWNleWQiOW5tuacqueUn+aViO+8jOWwneivleiHquWKqOWQiOW5tuOAgiIKIAotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NDM0Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDb3VsZCBub3QgbW92ZSBiYWNrIHRvICRoZWFkX25hbWUiCi1tc2dzdHIgIuaXoOazleenu+WbniAkaGVhZF9uYW1lIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo0NjAKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJJdCBzZWVtcyB0aGF0IHRoZXJlIGlzIGFscmVhZHkgYSAkc3RhdGVfZGlyX2Jhc2UgZGlyZWN0b3J5LCBhbmRcbiIKLSJJIHdvbmRlciBpZiB5b3UgYXJlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciByZWJhc2UuICBJZiB0aGF0IGlzIHRoZVxuIgotImNhc2UsIHBsZWFzZSB0cnlcbiIKLSJcdCRjbWRfbGl2ZV9yZWJhc2VcbiIKLSJJZiB0aGF0IGlzIG5vdCB0aGUgY2FzZSwgcGxlYXNlXG4iCi0iXHQkY21kX2NsZWFyX3N0YWxlX3JlYmFzZVxuIgotImFuZCBydW4gbWUgYWdhaW4uICBJIGFtIHN0b3BwaW5nIGluIGNhc2UgeW91IHN0aWxsIGhhdmUgc29tZXRoaW5nXG4iCi0idmFsdWFibGUgdGhlcmUuIgotbXNnc3RyICIiCi0i5aW95YOP5bey5pyJICRzdGF0ZV9kaXJfYmFzZSDnm67lvZXvvIzmiJHmgIDnlpHmgqjmraPlpITkuo7lj6blpJbkuIDkuKrlj5jln7rmk43kvZxcbiIKLSLov4fnqIvkuK3jgIIg5aaC5p6c5piv6L+Z5qC377yM6K+35omn6KGMXG4iCi0iXHQkY21kX2xpdmVfcmViYXNlXG4iCi0i5aaC5p6c5LiN5piv6L+Z5qC377yM6K+35omn6KGMXG4iCi0iXHQkY21kX2NsZWFyX3N0YWxlX3JlYmFzZVxuIgotIueEtuWQjuWGjemHjeaWsOaJp+ihjOWPmOWfuuaTjeS9nOOAgiDkuLrpgb/lhY3kuKLlpLHph43opoHmlbDmja7vvIzmiJHlt7Lnu4/lgZzmraLlvZPliY3mk43kvZzjgIIiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjUyNQotbXNnaWQgImVycm9yOiBjYW5ub3QgY29tYmluZSAnLS1zaWdub2ZmJyB3aXRoICctLXByZXNlcnZlLW1lcmdlcyciCi1tc2dzdHIgIumUmeivr++8muS4jeiDvee7hOWQiCAnLS1zaWdub2ZmJyDlkowgJy0tcHJlc2VydmUtbWVyZ2VzJyIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NTcwCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJpbnZhbGlkIHVwc3RyZWFtICckdXBzdHJlYW1fbmFtZSciCi1tc2dzdHIgIuaXoOaViOeahOS4iua4uCAnJHVwc3RyZWFtX25hbWUnIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo1OTQKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiRvbnRvX25hbWU6IHRoZXJlIGFyZSBtb3JlIHRoYW4gb25lIG1lcmdlIGJhc2VzIgotbXNnc3RyICIkb250b19uYW1lOiDmnInkuIDkuKrku6XkuIrnmoTlkIjlubbln7rlh4YiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjU5NyBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2MDEKLSMsIHNoLWZvcm1hdAotbXNnaWQgIiRvbnRvX25hbWU6IHRoZXJlIGlzIG5vIG1lcmdlIGJhc2UiCi1tc2dzdHIgIiRvbnRvX25hbWU6IOayoeacieWQiOW5tuWfuuWHhiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjA2Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJEb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIGNvbW1pdDogJG9udG9fbmFtZSIKLW1zZ3N0ciAi5rKh5pyJ5oyH5ZCR5LiA5Liq5pyJ5pWI55qE5o+Q5Lqk77yaJG9udG9fbmFtZSIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NjMyCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJmYXRhbDogbm8gc3VjaCBicmFuY2gvY29tbWl0ICckYnJhbmNoX25hbWUnIgotbXNnc3RyICLkuKXph43plJnor6/vvJrml6DmraTliIbmlK8v5o+Q5LqkICckYnJhbmNoX25hbWUnIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2NzAKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkNyZWF0ZWQgYXV0b3N0YXNoOiAkc3Rhc2hfYWJicmV2IgotbXNnc3RyICLliJvlu7rkuoYgYXV0b3N0YXNoOiAkc3Rhc2hfYWJicmV2IgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo2OTkKLSMsIHNoLWZvcm1hdAotbXNnaWQgIkN1cnJlbnQgYnJhbmNoICRicmFuY2hfbmFtZSBpcyB1cCB0byBkYXRlLiIKLW1zZ3N0ciAi5b2T5YmN5YiG5pSvICRicmFuY2hfbmFtZSDmmK/mnIDmlrDnmoTjgIIiCi0KLSM6IGdpdC1sZWdhY3ktcmViYXNlLnNoOjcwOQotIywgc2gtZm9ybWF0Ci1tc2dpZCAiQ3VycmVudCBicmFuY2ggJGJyYW5jaF9uYW1lIGlzIHVwIHRvIGRhdGUsIHJlYmFzZSBmb3JjZWQuIgotbXNnc3RyICLlvZPliY3liIbmlK8gJGJyYW5jaF9uYW1lIOaYr+acgOaWsOeahO+8jOW8uuWItuWPmOWfuuOAgiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzIzCi0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDaGFuZ2VzIHRvICRvbnRvOiIKLW1zZ3N0ciAi5YiwICRvbnRvIOeahOWPmOabtO+8miIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzI1Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJDaGFuZ2VzIGZyb20gJG1iIHRvICRvbnRvOiIKLW1zZ3N0ciAi5LuOICRtYiDliLAgJG9udG8g55qE5Y+Y5pu077yaIgotCi0jOiBnaXQtbGVnYWN5LXJlYmFzZS5zaDo3MzYKLW1zZ2lkICJGaXJzdCwgcmV3aW5kaW5nIGhlYWQgdG8gcmVwbGF5IHlvdXIgd29yayBvbiB0b3Agb2YgaXQuLi4iCi1tc2dzdHIgIummluWFiO+8jOWbnumAgOWIhuaUr+S7peS+v+WcqOS4iumdoumHjeaUvuaCqOeahOW3peS9nC4uLiIKLQotIzogZ2l0LWxlZ2FjeS1yZWJhc2Uuc2g6NzQ2Ci0jLCBzaC1mb3JtYXQKLW1zZ2lkICJGYXN0LWZvcndhcmRlZCAkYnJhbmNoX25hbWUgdG8gJG9udG9fbmFtZS4iCi1tc2dzdHIgIuW/q+i/myAkYnJhbmNoX25hbWUg6IezICRvbnRvX25hbWXjgIIiCi0KLSM6IGdpdC1zdGFzaC5zaDo2MQotbXNnaWQgImdpdCBzdGFzaCBjbGVhciB3aXRoIHBhcmFtZXRlcnMgaXMgdW5pbXBsZW1lbnRlZCIKLW1zZ3N0ciAiZ2l0IHN0YXNoIGNsZWFyIOS4jeaUr+aMgeWPguaVsCIKLQotIzogZ2l0LXN0YXNoLnNoOjEwOAotbXNnaWQgIllvdSBkbyBub3QgaGF2ZSB0aGUgaW5pdGlhbCBjb21taXQgeWV0IgotbXNnc3RyICLmgqjlsJrmnKrlu7rnq4vliJ3lp4vmj5DkuqQiCi0KLSM6IGdpdC1zdGFzaC5zaDoxMjMKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBpbmRleCBzdGF0ZSIKLW1zZ3N0ciAi5peg5rOV5L+d5a2Y5b2T5YmN57Si5byV54q25oCBIgotCi0jOiBnaXQtc3Rhc2guc2g6MTM4Ci1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIHVudHJhY2tlZCBmaWxlcyIKLW1zZ3N0ciAi5peg5rOV5L+d5a2Y5pyq6Lef6Liq5paH5Lu2IgotCi0jOiBnaXQtc3Rhc2guc2g6MTU4IGdpdC1zdGFzaC5zaDoxNzEKLW1zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCB3b3JrdHJlZSBzdGF0ZSIKLW1zZ3N0ciAi5peg5rOV5L+d5a2Y5b2T5YmN5bel5L2c5Yy654q25oCBIgotCi0jOiBnaXQtc3Rhc2guc2g6MTc1Ci1tc2dpZCAiTm8gY2hhbmdlcyBzZWxlY3RlZCIKLW1zZ3N0ciAi5rKh5pyJ6YCJ5oup5Y+Y5pu0IgotCi0jOiBnaXQtc3Rhc2guc2g6MTc4CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIyMQogbXNnaWQgIkNhbm5vdCByZW1vdmUgdGVtcG9yYXJ5IGluZGV4IChjYW4ndCBoYXBwZW4pIgogbXNnc3RyICLml6Dms5XliKDpmaTkuLTml7bntKLlvJXvvIjkuI3lupTlj5HnlJ/vvIkiCiAKLSM6IGdpdC1zdGFzaC5zaDoxOTEKLW1zZ2lkICJDYW5ub3QgcmVjb3JkIHdvcmtpbmcgdHJlZSBzdGF0ZSIKLW1zZ3N0ciAi5LiN6IO96K6w5b2V5bel5L2c5Yy654q25oCBIgotCi0jOiBnaXQtc3Rhc2guc2g6MjI5CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjI3MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHVwZGF0ZSAkcmVmX3N0YXNoIHdpdGggJHdfY29tbWl0IgogbXNnc3RyICLml6Dms5XnlKggJHdfY29tbWl0IOabtOaWsCAkcmVmX3N0YXNoIgogCi0jOiBnaXQtc3Rhc2guc2g6MjgxCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjMyNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiZXJyb3I6IHVua25vd24gb3B0aW9uIGZvciAnc3Rhc2ggcHVzaCc6ICRvcHRpb24iCiBtc2dzdHIgIumUmeivr++8midzdGFzaCBwdXNoJyDnmoTmnKrnn6XpgInpobnvvJokb3B0aW9uIgogCi0jOiBnaXQtc3Rhc2guc2g6Mjk1Ci1tc2dpZCAiQ2FuJ3QgdXNlIC0tcGF0Y2ggYW5kIC0taW5jbHVkZS11bnRyYWNrZWQgb3IgLS1hbGwgYXQgdGhlIHNhbWUgdGltZSIKLW1zZ3N0ciAi5LiN6IO95ZCM5pe25L2/55So5Y+C5pWwIC0tcGF0Y2gg5ZKMIC0taW5jbHVkZS11bnRyYWNrZWQg5oiWIC0tYWxsIgotCi0jOiBnaXQtc3Rhc2guc2g6MzAzCi1tc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgotbXNnc3RyICLmsqHmnInopoHkv53lrZjnmoTmnKzlnLDkv67mlLkiCi0KLSM6IGdpdC1zdGFzaC5zaDozMDgKLW1zZ2lkICJDYW5ub3QgaW5pdGlhbGl6ZSBzdGFzaCIKLW1zZ3N0ciAi5peg5rOV5Yid5aeL5YyW6LSu6JePIgotCi0jOiBnaXQtc3Rhc2guc2g6MzEyCi1tc2dpZCAiQ2Fubm90IHNhdmUgdGhlIGN1cnJlbnQgc3RhdHVzIgotbXNnc3RyICLml6Dms5Xkv53lrZjlvZPliY3nirbmgIEiCi0KLSM6IGdpdC1zdGFzaC5zaDozMTMKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MzU2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTYXZlZCB3b3JraW5nIGRpcmVjdG9yeSBhbmQgaW5kZXggc3RhdGUgJHN0YXNoX21zZyIKIG1zZ3N0ciAi5L+d5a2Y5bel5L2c55uu5b2V5ZKM57Si5byV54q25oCBICRzdGFzaF9tc2ciCiAKLSM6IGdpdC1zdGFzaC5zaDozNDIKLW1zZ2lkICJDYW5ub3QgcmVtb3ZlIHdvcmt0cmVlIGNoYW5nZXMiCi1tc2dzdHIgIuaXoOazleWIoOmZpOW3peS9nOWMuuWPmOabtCIKLQotIzogZ2l0LXN0YXNoLnNoOjQ5MAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1MzYKICMsIHNoLWZvcm1hdAogbXNnaWQgInVua25vd24gb3B0aW9uOiAkb3B0IgogbXNnc3RyICLmnKrnn6XpgInpobk6ICRvcHQiCiAKLSM6IGdpdC1zdGFzaC5zaDo1MDMKLW1zZ2lkICJObyBzdGFzaCBlbnRyaWVzIGZvdW5kLiIKLW1zZ3N0ciAi5pyq5Y+R546w6LSu6JeP5p2h55uu44CCIgotCi0jOiBnaXQtc3Rhc2guc2g6NTEwCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU1NgogIywgc2gtZm9ybWF0CiBtc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDogJFJFViIKIG1zZ3N0ciAi5oyH5a6a5LqG5aSq5aSa55qE54mI5pys77yaJFJFViIKIAotIzogZ2l0LXN0YXNoLnNoOjUyNQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NzEKICMsIHNoLWZvcm1hdAogbXNnaWQgIiRyZWZlcmVuY2UgaXMgbm90IGEgdmFsaWQgcmVmZXJlbmNlIgogbXNnc3RyICIkcmVmZXJlbmNlIOS4jeaYr+S4gOS4quacieaViOeahOW8leeUqCIKIAotIzogZ2l0LXN0YXNoLnNoOjU1MworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1OTkKICMsIHNoLWZvcm1hdAogbXNnaWQgIickYXJncycgaXMgbm90IGEgc3Rhc2gtbGlrZSBjb21taXQiCiBtc2dzdHIgIickYXJncycg5LiN5piv6LSu6JeP5byP5o+Q5LqkIgogCi0jOiBnaXQtc3Rhc2guc2g6NTY0CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYxMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRhcmdzJyBpcyBub3QgYSBzdGFzaCByZWZlcmVuY2UiCiBtc2dzdHIgIickYXJncycg5LiN5piv5LiA5Liq6LSu6JeP5byV55SoIgogCi0jOiBnaXQtc3Rhc2guc2g6NTcyCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYxOAogbXNnaWQgInVuYWJsZSB0byByZWZyZXNoIGluZGV4IgogbXNnc3RyICLml6Dms5XliLfmlrDntKLlvJUiCiAKLSM6IGdpdC1zdGFzaC5zaDo1NzYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjIyCiBtc2dpZCAiQ2Fubm90IGFwcGx5IGEgc3Rhc2ggaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIgogbXNnc3RyICLml6Dms5XlnKjlkIjlubbov4fnqIvlupTnlKjotK7ol48iCiAKLSM6IGdpdC1zdGFzaC5zaDo1ODQKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjMwCiBtc2dpZCAiQ29uZmxpY3RzIGluIGluZGV4LiBUcnkgd2l0aG91dCAtLWluZGV4LiIKIG1zZ3N0ciAi57Si5byV5Lit5pyJ5Yay56qB44CC5bCd6K+V5LiN5L2/55SoIC0taW5kZXjjgIIiCiAKLSM6IGdpdC1zdGFzaC5zaDo1ODYKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjMyCiBtc2dpZCAiQ291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKIG1zZ3N0ciAi5LiN6IO95L+d5a2Y57Si5byV5qCRIgogCi0jOiBnaXQtc3Rhc2guc2g6NTk1CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjY0MQogbXNnaWQgIkNvdWxkIG5vdCByZXN0b3JlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHN0YXNoIGVudHJ5IgogbXNnc3RyICLml6Dms5Xku47otK7ol4/mnaHnm67kuK3mgaLlpI3mnKrot5/ouKrmlofku7YiCiAKLSM6IGdpdC1zdGFzaC5zaDo2MjAKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjY2CiBtc2dpZCAiQ2Fubm90IHVuc3RhZ2UgbW9kaWZpZWQgZmlsZXMiCiBtc2dzdHIgIuaXoOazleWwhuS/ruaUueeahOaWh+S7tuWPlua2iOaaguWtmCIKIAotIzogZ2l0LXN0YXNoLnNoOjYzNQotbXNnaWQgIkluZGV4IHdhcyBub3QgdW5zdGFzaGVkLiIKLW1zZ3N0ciAi57Si5byV5pyq5LuO6LSu6JeP5Lit5oGi5aSN44CCIgotCi0jOiBnaXQtc3Rhc2guc2g6NjQ5Ci1tc2dpZCAiVGhlIHN0YXNoIGVudHJ5IGlzIGtlcHQgaW4gY2FzZSB5b3UgbmVlZCBpdCBhZ2Fpbi4iCi1tc2dzdHIgIui0ruiXj+adoeebruiiq+S/neeVmeS7peWkh+aCqOWGjeasoemcgOimgeOAgiIKLQotIzogZ2l0LXN0YXNoLnNoOjY1OAorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDQKICMsIHNoLWZvcm1hdAogbXNnaWQgIkRyb3BwZWQgJHtSRVZ9ICgkcykiCiBtc2dzdHIgIuS4ouW8g+S6hiAke1JFVn0gKCRzKSIKIAotIzogZ2l0LXN0YXNoLnNoOjY1OQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiR7UkVWfTogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCiBtc2dzdHIgIiR7UkVWfe+8muaXoOazleS4ouW8g+i0ruiXj+adoeebriIKIAotIzogZ2l0LXN0YXNoLnNoOjY2NwotbXNnaWQgIk5vIGJyYW5jaCBuYW1lIHNwZWNpZmllZCIKLW1zZ3N0ciAi5pyq5oyH5a6a5YiG5pSv5ZCNIgotCi0jOiBnaXQtc3Rhc2guc2g6NzQ2CisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjc5MgogbXNnaWQgIihUbyByZXN0b3JlIHRoZW0gdHlwZSBcImdpdCBzdGFzaCBhcHBseVwiKSIKIG1zZ3N0ciAi77yI5Li65oGi5aSN5pWw5o2u6L6T5YWlIFwiZ2l0IHN0YXNoIGFwcGx5XCLvvIkiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MTk4CisjOiBnaXQtc3VibW9kdWxlLnNoOjIwMwogbXNnaWQgIlJlbGF0aXZlIHBhdGggY2FuIG9ubHkgYmUgdXNlZCBmcm9tIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIgogbXNnc3RyICLlj6rog73lnKjlt6XkvZzljLrnmoTpobbnuqfnm67lvZXkuK3kvb/nlKjnm7jlr7not6/lvoQiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjA4CisjOiBnaXQtc3VibW9kdWxlLnNoOjIxMwogIywgc2gtZm9ybWF0CiBtc2dpZCAicmVwbyBVUkw6ICckcmVwbycgbXVzdCBiZSBhYnNvbHV0ZSBvciBiZWdpbiB3aXRoIC4vfC4uLyIKIG1zZ3N0ciAi5LuT5bqTIFVSTO+8mickcmVwbycg5b+F6aG75piv57ud5a+56Lev5b6E5oiW5LulIC4vfC4uLyDotbflp4siCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjI3CisjOiBnaXQtc3VibW9kdWxlLnNoOjIzMgogIywgc2gtZm9ybWF0CiBtc2dpZCAiJyRzbV9wYXRoJyBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXgiCiBtc2dzdHIgIickc21fcGF0aCcg5bey57uP5a2Y5Zyo5LqO57Si5byV5LitIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjIzMAorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzUKICMsIHNoLWZvcm1hdAogbXNnaWQgIickc21fcGF0aCcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGluZGV4IGFuZCBpcyBub3QgYSBzdWJtb2R1bGUiCiBtc2dzdHIgIickc21fcGF0aCcg5bey57uP5a2Y5Zyo5LqO57Si5byV5Lit5LiU5LiN5piv5LiA5Liq5a2Q5qih57uEIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjIzNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNDIKICMsIHNoLWZvcm1hdAotbXNnaWQgIiIKLSJUaGUgZm9sbG93aW5nIHBhdGggaXMgaWdub3JlZCBieSBvbmUgb2YgeW91ciAuZ2l0aWdub3JlIGZpbGVzOlxuIgotIiRzbV9wYXRoXG4iCi0iVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgaXQuIgotbXNnc3RyICIiCi0i5Lul5LiL6Lev5b6E6KKr5oKo55qE5LiA5LiqIC5naXRpZ25vcmUg5paH5Lu25omA5b+955Wl77yaXG4iCi0iJHNtX3BhdGhcbiIKLSLlpoLmnpzmgqjnoa7lrp7mg7Pmt7vliqDlroPvvIzkvb/nlKggLWYg5Y+C5pWw44CCIgorbXNnaWQgIickc21fcGF0aCcgZG9lcyBub3QgaGF2ZSBhIGNvbW1pdCBjaGVja2VkIG91dCIKK21zZ3N0ciAiJyRzbV9wYXRoJyDmsqHmnInmo4Dlh7rnmoTmj5DkuqQiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6MjU5CisjOiBnaXQtc3VibW9kdWxlLnNoOjI3MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiQWRkaW5nIGV4aXN0aW5nIHJlcG8gYXQgJyRzbV9wYXRoJyB0byB0aGUgaW5kZXgiCiBtc2dzdHIgIua3u+WKoOS9jeS6jiAnJHNtX3BhdGgnIOeahOeOsOWtmOS7k+W6k+WIsOe0ouW8lSIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNjEKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjc1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYSB2YWxpZCBnaXQgcmVwbyIKIG1zZ3N0ciAiJyRzbV9wYXRoJyDlt7LlrZjlnKjkuJTkuI3mmK/kuIDkuKrmnInmlYjnmoQgZ2l0IOS7k+W6kyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNjkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjgzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJBIGdpdCBkaXJlY3RvcnkgZm9yICckc21fbmFtZScgaXMgZm91bmQgbG9jYWxseSB3aXRoIHJlbW90ZShzKToiCiBtc2dzdHIgIuacrOWcsOWPkeeOsCAnJHNtX25hbWUnIOeahOS4gOS4qiBnaXQg55uu5b2V77yM5LiO5YW25a+55bqU55qE6L+c56iL5LuT5bqT77yaIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI3MQorIzogZ2l0LXN1Ym1vZHVsZS5zaDoyODUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJJZiB5b3Ugd2FudCB0byByZXVzZSB0aGlzIGxvY2FsIGdpdCBkaXJlY3RvcnkgaW5zdGVhZCBvZiBjbG9uaW5nIGFnYWluIGZyb21cbiIKQEAgLTE5NDk0LDQ5ICsyMzAzMCw1MSBAQAogIuS9v+eUqCAnLS1mb3JjZScg6YCJ6aG544CC5aaC5p6c5pys5ZywIGdpdCDnm67lvZXkuI3mmK/mraPnoa7nmoTku5PlupNcbiIKICLmiJbogIXmgqjkuI3noa7lrprov5nph4znmoTlkKvkuYnvvIzkvb/nlKggJy0tbmFtZScg6YCJ6aG56YCJ5oup5Y+m5aSW55qE5ZCN56ew44CCIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjI3NworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYWN0aXZhdGluZyBsb2NhbCBnaXQgZGlyZWN0b3J5IGZvciBzdWJtb2R1bGUgJyRzbV9uYW1lJy4iCiBtc2dzdHIgIua/gOa0u+acrOWcsCBnaXQg55uu5b2V5Yiw5a2Q5qih57uEICckc21fbmFtZSfjgIIiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6Mjg5CisjOiBnaXQtc3VibW9kdWxlLnNoOjMwMwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGNoZWNrb3V0IHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICLkuI3og73mo4Dlh7rlrZDmqKHnu4QgJyRzbV9wYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDoyOTQKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MzA4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gYWRkIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgogbXNnc3RyICLml6Dms5Xmt7vliqDlrZDmqKHnu4QgJyRzbV9wYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDozMDMKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MzE3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gcmVnaXN0ZXIgc3VibW9kdWxlICckc21fcGF0aCciCiBtc2dzdHIgIuaXoOazleazqOWGjOWtkOaooee7hCAnJHNtX3BhdGgnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjU2MworIzogZ2l0LXN1Ym1vZHVsZS5zaDo1OTAKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBmaW5kIGN1cnJlbnQgcmV2aXNpb24gaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIuaXoOazleWcqOWtkOaooee7hOi3r+W+hCAnJGRpc3BsYXlwYXRoJyDkuK3mib7liLDlvZPliY3niYjmnKwiCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTczCisjOiBnaXQtc3VibW9kdWxlLnNoOjYwMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiVW5hYmxlIHRvIGZldGNoIGluIHN1Ym1vZHVsZSBwYXRoICckc21fcGF0aCciCiBtc2dzdHIgIuaXoOazleWcqOWtkOaooee7hOi3r+W+hCAnJHNtX3BhdGgnIOS4reiOt+WPliIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo1NzgKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjA1CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiVW5hYmxlIHRvIGZpbmQgY3VycmVudCAke3JlbW90ZV9uYW1lfS8ke2JyYW5jaH0gcmV2aXNpb24gaW4gc3VibW9kdWxlIHBhdGggIgogIickc21fcGF0aCciCiBtc2dzdHIgIuaXoOazleWcqOWtkOaooee7hOi3r+W+hCAnJHNtX3BhdGgnIOS4reaJvuWIsOW9k+WJjeeJiOacrCAke3JlbW90ZV9uYW1lfS8ke2JyYW5jaH0iCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NTk2CisjOiBnaXQtc3VibW9kdWxlLnNoOjYyMwogIywgc2gtZm9ybWF0Ci1tc2dpZCAiVW5hYmxlIHRvIGZldGNoIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgotbXNnc3RyICLml6Dms5XlnKjlrZDmqKHnu4Tot6/lvoQgJyRkaXNwbGF5cGF0aCcg5Lit6I635Y+WIgorbXNnaWQgIiIKKyJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc7IHRyeWluZyB0byBkaXJlY3RseSBmZXRjaCAiCisiJHNoYTE6IgorbXNnc3RyICLml6Dms5XlnKjlrZDmqKHnu4Tot6/lvoQgJyRkaXNwbGF5cGF0aCcg5Lit6I635Y+W77yM5bCd6K+V55u05o6l6I635Y+WICRzaGEx77yaIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYwMgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjkKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJGZXRjaGVkIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnLCBidXQgaXQgZGlkIG5vdCBjb250YWluICRzaGExLiAiCkBAIC0xOTU0NCw3NCArMjMwODIsNzQgQEAKIG1zZ3N0ciAiIgogIuiOt+WPluS6huWtkOaooee7hOi3r+W+hCAnJGRpc3BsYXlwYXRoJ++8jOS9huaYr+Wug+ayoeacieWMheWQqyAkc2hhMeOAguebtOaOpeiOt+WPluivpeaPkOS6pOWksei0peOAgiIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjM2CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gY2hlY2tvdXQgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKIG1zZ3N0ciAi5peg5rOV5Zyo5a2Q5qih57uE6Lev5b6EICckZGlzcGxheXBhdGgnIOS4reajgOWHuiAnJHNoYTEnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYxMAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MzcKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiBjaGVja2VkIG91dCAnJHNoYTEnIgogbXNnc3RyICLlrZDmqKHnu4Tot6/lvoQgJyRkaXNwbGF5cGF0aCfvvJrmo4Dlh7ogJyRzaGExJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MTQKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJVbmFibGUgdG8gcmViYXNlICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIuaXoOazleWcqOWtkOaooee7hOi3r+W+hCAnJGRpc3BsYXlwYXRoJyDkuK3lj5jln7ogJyRzaGExJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MTUKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQyCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogcmViYXNlZCBpbnRvICckc2hhMSciCiBtc2dzdHIgIuWtkOaooee7hOi3r+W+hCAnJGRpc3BsYXlwYXRoJ++8muWPmOWfuuiHsyAnJHNoYTEnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYyMAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDcKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVuYWJsZSB0byBtZXJnZSAnJHNoYTEnIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICLml6Dms5XlkIjlubYgJyRzaGExJyDliLDlrZDmqKHnu4Tot6/lvoQgJyRkaXNwbGF5cGF0aCcg5LitIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYyMQorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDgKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiBtZXJnZWQgaW4gJyRzaGExJyIKIG1zZ3N0ciAi5a2Q5qih57uE6Lev5b6EICckZGlzcGxheXBhdGgn77ya5bey5ZCI5bm25YWlICckc2hhMSciCiAKLSM6IGdpdC1zdWJtb2R1bGUuc2g6NjI2CisjOiBnaXQtc3VibW9kdWxlLnNoOjY1MwogIywgc2gtZm9ybWF0CiBtc2dpZCAiRXhlY3V0aW9uIG9mICckY29tbWFuZCAkc2hhMScgZmFpbGVkIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgogbXNnc3RyICLlnKjlrZDmqKHnu4QgJyRkaXNwbGF5cGF0aCcg5Lit5omn6KGMICckY29tbWFuZCAkc2hhMScg5aSx6LSlIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjYyNworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NTQKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiAnJGNvbW1hbmQgJHNoYTEnIgogbXNnc3RyICLlrZDmqKHnu4QgJyRkaXNwbGF5cGF0aCfvvJonJGNvbW1hbmQgJHNoYTEnIgogCi0jOiBnaXQtc3VibW9kdWxlLnNoOjY1OAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo2ODUKICMsIHNoLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byByZWN1cnNlIGludG8gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCiBtc2dzdHIgIuaXoOazlemAkuW9kui/m+WtkOaooee7hOi3r+W+hCAnJGRpc3BsYXlwYXRoJyIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo3NTQKKyM6IGdpdC1zdWJtb2R1bGUuc2g6ODk2CiBtc2dpZCAiVGhlIC0tY2FjaGVkIG9wdGlvbiBjYW5ub3QgYmUgdXNlZCB3aXRoIHRoZSAtLWZpbGVzIG9wdGlvbiIKIG1zZ3N0ciAi6YCJ6aG5IC0tY2FjaGVkIOS4jeiDveWSjOmAiemhuSAtLWZpbGVzIOWQjOaXtuS9v+eUqCIKIAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MDYKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTQ4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJ1bmV4cGVjdGVkIG1vZGUgJG1vZF9kc3QiCiBtc2dzdHIgIuaEj+WklueahOaooeW8jyAkbW9kX2RzdCIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiBnaXQtc3VibW9kdWxlLnNoOjgyNgorIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NjgKICMsIHNoLWZvcm1hdAogbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX3NyYyIKIG1zZ3N0ciAiICDorablkYrvvJokZGlzcGxheV9uYW1lIOacquWMheWQq+aPkOS6pCAkc2hhMV9zcmMiCiAKICMgIOivkeiAhe+8muazqOaEj+S/neaMgeWJjeWvvOepuuagvAotIzogZ2l0LXN1Ym1vZHVsZS5zaDo4MjkKKyM6IGdpdC1zdWJtb2R1bGUuc2g6OTcxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIgIFdhcm46ICRkaXNwbGF5X25hbWUgZG9lc24ndCBjb250YWluIGNvbW1pdCAkc2hhMV9kc3QiCiBtc2dzdHIgIiAg6K2m5ZGK77yaJGRpc3BsYXlfbmFtZSDmnKrljIXlkKvmj5DkuqQgJHNoYTFfZHN0IgogCiAjICDor5HogIXvvJrms6jmhI/kv53mjIHliY3lr7znqbrmoLwKLSM6IGdpdC1zdWJtb2R1bGUuc2g6ODMyCisjOiBnaXQtc3VibW9kdWxlLnNoOjk3NAogIywgc2gtZm9ybWF0CiBtc2dpZCAiICBXYXJuOiAkZGlzcGxheV9uYW1lIGRvZXNuJ3QgY29udGFpbiBjb21taXRzICRzaGExX3NyYyBhbmQgJHNoYTFfZHN0IgogbXNnc3RyICIgIOitpuWRiu+8miRkaXNwbGF5X25hbWUg5pyq5YyF5ZCr5o+Q5LqkICRzaGExX3NyYyDlkowgJHNoYTFfZHN0IgpAQCAtMTk2MjEsMTIgKzIzMTU5LDIxIEBACiBtc2dpZCAiU2VlIGdpdC0ke2NtZH0oMSkgZm9yIGRldGFpbHMuIgogbXNnc3RyICLor6bop4EgZ2l0LSR7Y21kfSgxKeOAgiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEzNgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEwOQorbXNnaWQgIkFwcGxpZWQgYXV0b3N0YXNoLiIKK21zZ3N0ciAi5bey5bqU55SoIGF1dG9zdGFzaOOAgiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjExMgorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN0b3JlICRzdGFzaF9zaGExIgorbXNnc3RyICLkuI3og73lrZjlgqggJHN0YXNoX3NoYTEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxOTEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYmFzaW5nICgkbmV3X2NvdW50LyR0b3RhbCkiCiBtc2dzdHIgIuWPmOWfuuS4re+8iCRuZXdfY291bnQvJHRvdGFs77yJIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTUyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjA3CiBtc2dpZCAiIgogIlxuIgogIkNvbW1hbmRzOlxuIgpAQCAtMTk2NjQsNyArMjMyMTEsNyBAQAogIlxuIgogIuWPr+S7peWvuei/meS6m+ihjOmHjeaWsOaOkuW6j++8jOWwhuS7juS4iuiHs+S4i+aJp+ihjOOAglxuIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjE1CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjcwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiWW91IGNhbiBhbWVuZCB0aGUgY29tbWl0IG5vdywgd2l0aFxuIgpAQCAtMTk2ODMsODMgKzIzMjMwLDgzIEBACiAiXG4iCiAiXHRnaXQgcmViYXNlIC0tY29udGludWUiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyNDAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoyOTUKICMsIHNoLWZvcm1hdAogbXNnaWQgIiRzaGExOiBub3QgYSBjb21taXQgdGhhdCBjYW4gYmUgcGlja2VkIgogbXNnc3RyICIkc2hhMe+8muS4jeaYr+S4gOS4quWPr+S7peiiq+aLo+mAieeahOaPkOS6pCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI3OQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjMzNAogIywgc2gtZm9ybWF0CiBtc2dpZCAiSW52YWxpZCBjb21taXQgbmFtZTogJHNoYTEiCiBtc2dzdHIgIuaXoOaViOeahOaPkOS6pOWQje+8miRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzA5CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzY0CiBtc2dpZCAiQ2Fubm90IHdyaXRlIGN1cnJlbnQgY29tbWl0J3MgcmVwbGFjZW1lbnQgc2hhMSIKIG1zZ3N0ciAi5LiN6IO95YaZ5YWl5b2T5YmN5o+Q5Lqk55qE5pu/5LujIHNoYTEiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNjAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MTUKICMsIHNoLWZvcm1hdAogbXNnaWQgIkZhc3QtZm9yd2FyZCB0byAkc2hhMSIKIG1zZ3N0ciAi5b+r6L+b5YiwICRzaGExIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzYyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDE3CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgZmFzdC1mb3J3YXJkIHRvICRzaGExIgogbXNnc3RyICLkuI3og73lv6vov5vliLAgJHNoYTEiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNzEKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MjYKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNhbm5vdCBtb3ZlIEhFQUQgdG8gJGZpcnN0X3BhcmVudCIKIG1zZ3N0ciAi5LiN6IO956e75YqoIEhFQUQg5YiwICRmaXJzdF9wYXJlbnQiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNzYKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MzEKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlZnVzaW5nIHRvIHNxdWFzaCBhIG1lcmdlOiAkc2hhMSIKIG1zZ3N0ciAi5ouS57ud5Y6L57yp5LiA5Liq5ZCI5bm277yaJHNoYTEiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozOTQKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NDkKICMsIHNoLWZvcm1hdAogbXNnaWQgIkVycm9yIHJlZG9pbmcgbWVyZ2UgJHNoYTEiCiBtc2dzdHIgIuaXoOazlemHjeWBmuWQiOW5tiAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQwMworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ1OAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IHBpY2sgJHNoYTEiCiBtc2dzdHIgIuS4jeiDveaLo+mAiSAkc2hhMSIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxMgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ2NwogIywgc2gtZm9ybWF0CiBtc2dpZCAiVGhpcyBpcyB0aGUgY29tbWl0IG1lc3NhZ2UgIyR7bn06IgogbXNnc3RyICLov5nmmK/mj5DkuqTor7TmmI4gIyR7bn3vvJoiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MTcKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0NzIKICMsIHNoLWZvcm1hdAogbXNnaWQgIlRoZSBjb21taXQgbWVzc2FnZSAjJHtufSB3aWxsIGJlIHNraXBwZWQ6IgogbXNnc3RyICLmj5DkuqTor7TmmI4gIyR7bn0g5bCG6KKr6Lez6L+H77yaIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDI4CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDgzCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgJGNvdW50IGNvbW1pdC4iCiBtc2dpZF9wbHVyYWwgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAkY291bnQgY29tbWl0cy4iCiBtc2dzdHJbMF0gIui/meaYr+S4gOS4qiAkY291bnQg5Liq5o+Q5Lqk55qE57uE5ZCI44CCIgogbXNnc3RyWzFdICLov5nmmK/kuIDkuKogJGNvdW50IOS4quaPkOS6pOeahOe7hOWQiOOAgiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQzNworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5MgogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IHdyaXRlICRmaXh1cF9tc2ciCiBtc2dzdHIgIuS4jeiDveWGmeWFpSAkZml4dXBfbXNnIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDk1CiBtc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mIDIgY29tbWl0cy4iCiBtc2dzdHIgIui/meaYr+S4gOS4qiAyIOS4quaPkOS6pOeahOe7hOWQiOOAgiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ4MSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTI0Ci0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTI3CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTM2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1NzkKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1ODIKICMsIHNoLWZvcm1hdAogbXNnaWQgIkNvdWxkIG5vdCBhcHBseSAkc2hhMS4uLiAkcmVzdCIKIG1zZ3N0ciAi5LiN6IO95bqU55SoICRzaGExLi4uICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTU2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjExCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICIiCiAiQ291bGQgbm90IGFtZW5kIGNvbW1pdCBhZnRlciBzdWNjZXNzZnVsbHkgcGlja2luZyAkc2hhMS4uLiAkcmVzdFxuIgpAQCAtMTk3NzIsMzIgKzIzMzE5LDMyIEBACiAi6L+Z6YCa5bi45piv5Zug5Li656m655qE5o+Q5Lqk6K+05piO77yM5oiW6ICFIHByZS1jb21taXQg6ZKp5a2Q5omn6KGM5aSx6LSl44CC5aaC5p6c5pivIHByZS1jb21taXRcbiIKICLpkqnlrZDmiafooYzlpLHotKXvvIzkvaDlj6/og73pnIDopoHlnKjph43lhpnmj5DkuqTor7TmmI7liY3op6PlhrPov5nkuKrpl67popjjgIIiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1NzEKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MjYKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN0b3BwZWQgYXQgJHNoYTFfYWJicmV2Li4uICRyZXN0IgogbXNnc3RyICLlgZzmraLlnKggJHNoYTFfYWJicmV2Li4uICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NTg2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJyRzcXVhc2hfc3R5bGUnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCiBtc2dzdHIgIuayoeacieeItuaPkOS6pOeahOaDheWGteS4i+S4jeiDvSAnJHNxdWFzaF9zdHlsZSciCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MjgKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2ODMKICMsIHNoLWZvcm1hdAogbXNnaWQgIkV4ZWN1dGluZzogJHJlc3QiCiBtc2dzdHIgIuaJp+ihjO+8miRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjM2CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjkxCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJFeGVjdXRpb24gZmFpbGVkOiAkcmVzdCIKIG1zZ3N0ciAi5omn6KGM5aSx6LSl77yaJHJlc3QiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MzgKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTMKIG1zZ2lkICJhbmQgbWFkZSBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAi5bm25LiU5L+u5pS557Si5byV5ZKML+aIluW3peS9nOWMuiIKIAogIyAg6K+R6ICF77ya5rOo5oSP5L+d5oyB5YmN5a+856m65qC8Ci0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Njk1CiBtc2dpZCAiIgogIllvdSBjYW4gZml4IHRoZSBwcm9ibGVtLCBhbmQgdGhlbiBydW5cbiIKICJcbiIKQEAgLTE5ODA4LDcgKzIzMzU1LDcgQEAKICJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKIAogIy4gVFJBTlNMQVRPUlM6IGFmdGVyIHRoZXNlIGxpbmVzIGlzIGEgY29tbWFuZCB0byBiZSBpc3N1ZWQgYnkgdGhlIHVzZXIKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NTMKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MDgKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJFeGVjdXRpb24gc3VjY2VlZGVkOiAkcmVzdFxuIgpAQCAtMTk4MjIsMjUgKzIzMzY5LDI1IEBACiAiXG4iCiAiXHRnaXQgcmViYXNlIC0tY29udGludWUiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2NjQKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MTkKICMsIHNoLWZvcm1hdAogbXNnaWQgIlVua25vd24gY29tbWFuZDogJGNvbW1hbmQgJHNoYTEgJHJlc3QiCiBtc2dzdHIgIuacquefpeWRveS7pO+8miRjb21tYW5kICRzaGExICRyZXN0IgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjY1CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzIwCiBtc2dpZCAiUGxlYXNlIGZpeCB0aGlzIHVzaW5nICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJy4iCiBtc2dzdHIgIuimgeS/ruaUueivt+S9v+eUqOWRveS7pCAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbyfjgIIiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3MDAKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NTUKICMsIHNoLWZvcm1hdAogbXNnaWQgIlN1Y2Nlc3NmdWxseSByZWJhc2VkIGFuZCB1cGRhdGVkICRoZWFkX25hbWUuIgogbXNnc3RyICLmiJDlip/lj5jln7rlubbmm7TmlrAgJGhlYWRfbmFtZeOAgiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc1NworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgxMgogbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgQ0hFUlJZX1BJQ0tfSEVBRCIKIG1zZ3N0ciAi5LiN6IO95Yig6ZmkIENIRVJSWV9QSUNLX0hFQUQiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NjIKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MTcKICMsIHNoLWZvcm1hdAogbXNnaWQgIiIKICJZb3UgaGF2ZSBzdGFnZWQgY2hhbmdlcyBpbiB5b3VyIHdvcmtpbmcgdHJlZS5cbiIKQEAgLTE5ODY5LDUxICsyMzQxNiw1NSBAQAogIlxuIgogIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NzkKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MzQKIG1zZ2lkICJFcnJvciB0cnlpbmcgdG8gZmluZCB0aGUgYXV0aG9yIGlkZW50aXR5IHRvIGFtZW5kIGNvbW1pdCIKIG1zZ3N0ciAi5Zyo5L+u6KGl5o+Q5Lqk5Lit5p+l5om+5L2c6ICF5L+h5oGv5pe26YGH5Yiw6ZSZ6K+vIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Nzg0CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODM5CiBtc2dpZCAiIgogIllvdSBoYXZlIHVuY29tbWl0dGVkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuIFBsZWFzZSBjb21taXQgdGhlbVxuIgogImZpcnN0IGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJyBhZ2Fpbi4iCiBtc2dzdHIgIiIKICLmgqjnmoTlt6XkvZzljLrkuK3mnInmnKrmj5DkuqTnmoTlj5jmm7TjgILor7flhYjmj5DkuqTnhLblkI7lho3mrKHov5DooYwgJ2dpdCByZWJhc2UgLS1jb250aW51ZSfjgIIiCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3ODkgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjc5MworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg0NCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ4CiBtc2dpZCAiQ291bGQgbm90IGNvbW1pdCBzdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIuS4jeiDveaPkOS6pOaaguWtmOeahOS/ruaUueOAgiIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgyNCBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTEwCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODc5IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NjUKIG1zZ2lkICJDb3VsZCBub3QgZXhlY3V0ZSBlZGl0b3IiCiBtc2dzdHIgIuaXoOazlei/kOihjOe8lui+keWZqCIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg0NQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwMAogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ291bGQgbm90IGNoZWNrb3V0ICRzd2l0Y2hfdG8iCiBtc2dzdHIgIuS4jeiDveajgOWHuiAkc3dpdGNoX3RvIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODUyCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTA3CiBtc2dpZCAiTm8gSEVBRD8iCiBtc2dzdHIgIuayoeaciSBIRUFE77yfIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODUzCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTA4CiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAkc3RhdGVfZGlyIgogbXNnc3RyICLkuI3og73liJvlu7rkuLTml7YgJHN0YXRlX2RpciIKIAotIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjg1NgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkxMQogbXNnaWQgIkNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgogbXNnc3RyICLkuI3og73moIforrDkuLrkuqTkupLlvI8iCiAKLSM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4ODgKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDMKICMsIHNoLWZvcm1hdAogbXNnaWQgIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgb250byAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmQpIgogbXNnaWRfcGx1cmFsICJSZWJhc2UgJHNob3J0cmV2aXNpb25zIG9udG8gJHNob3J0b250byAoJHRvZG9jb3VudCBjb21tYW5kcykiCiBtc2dzdHJbMF0gIuWPmOWfuiAkc2hvcnRyZXZpc2lvbnMg5YiwICRzaG9ydG9udG/vvIgkdG9kb2NvdW50IOS4quaPkOS6pO+8iSIKIG1zZ3N0clsxXSAi5Y+Y5Z+6ICRzaG9ydHJldmlzaW9ucyDliLAgJHNob3J0b250b++8iCR0b2RvY291bnQg5Liq5o+Q5Lqk77yJIgogCi0jOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTQyIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDcKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NTUKK21zZ2lkICJOb3RlIHRoYXQgZW1wdHkgY29tbWl0cyBhcmUgY29tbWVudGVkIG91dCIKK21zZ3N0ciAi5rOo5oSP56m65o+Q5Lqk5bey6KKr5rOo6YeK5o6JIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTk3IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxMDAyCiBtc2dpZCAiQ291bGQgbm90IGluaXQgcmV3cml0dGVuIGNvbW1pdHMiCiBtc2dzdHIgIuS4jeiDveWvuemHjeWGmeaPkOS6pOi/m+ihjOWIneWni+WMliIKIApAQCAtMTk5MjIsMTczICsyMzQ3MywxMDkgQEAKIG1zZ2lkICJ1c2FnZTogJGRhc2hsZXNzICRVU0FHRSIKIG1zZ3N0ciAi55So5rOV77yaJGRhc2hsZXNzICRVU0FHRSIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjE5MAorIzogZ2l0LXNoLXNldHVwLnNoOjE5MQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90IGNoZGlyIHRvICRjZHVwLCB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZSIKIG1zZ3N0ciAi5LiN6IO95YiH5o2i55uu5b2V5YiwICRjZHVw77yM5bel5L2c5Yy655qE6aG257qn55uu5b2VIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MTk5IGdpdC1zaC1zZXR1cC5zaDoyMDYKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMDAgZ2l0LXNoLXNldHVwLnNoOjIwNwogIywgc2gtZm9ybWF0CiBtc2dpZCAiZmF0YWw6ICRwcm9ncmFtX25hbWUgY2Fubm90IGJlIHVzZWQgd2l0aG91dCBhIHdvcmtpbmcgdHJlZS4iCi1tc2dzdHIgIuS4pemHjemUmeivr++8miRwcm9ncmFtX25hbWUg5LiN6IO95Zyo5rKh5pyJ5bel5L2c5Yy655qE5oOF5Ya15LiL5L2/55SoIgorbXNnc3RyICLoh7Tlkb3plJnor6/vvJokcHJvZ3JhbV9uYW1lIOS4jeiDveWcqOayoeacieW3peS9nOWMuueahOaDheWGteS4i+S9v+eUqCIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjIyMAorIzogZ2l0LXNoLXNldHVwLnNoOjIyMQogbXNnaWQgIkNhbm5vdCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgogbXNnc3RyICLkuI3og73lj5jln7rvvJrmgqjmnInmnKrmmoLlrZjnmoTlj5jmm7TjgIIiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDoyMjMKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjQKIG1zZ2lkICJDYW5ub3QgcmV3cml0ZSBicmFuY2hlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIuS4jeiDvemHjeWGmeWIhuaUr++8muaCqOacieacquaaguWtmOeahOWPmOabtOOAgiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjIyNgorIzogZ2l0LXNoLXNldHVwLnNoOjIyNwogbXNnaWQgIkNhbm5vdCBwdWxsIHdpdGggcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAi5peg5rOV6YCa6L+H5Y+Y5Z+65pa55byP5ouJ5Y+W77ya5oKo5pyJ5pyq5pqC5a2Y55qE5Y+Y5pu044CCIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjI5CisjOiBnaXQtc2gtc2V0dXAuc2g6MjMwCiAjLCBzaC1mb3JtYXQKIG1zZ2lkICJDYW5ub3QgJGFjdGlvbjogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCiBtc2dzdHIgIuS4jeiDvSAkYWN0aW9u77ya5oKo5pyJ5pyq5pqC5a2Y55qE5Y+Y5pu044CCIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQyCisjOiBnaXQtc2gtc2V0dXAuc2g6MjQzCiBtc2dpZCAiQ2Fubm90IHJlYmFzZTogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKIG1zZ3N0ciAi5LiN6IO95Y+Y5Z+677ya5oKo55qE57Si5byV5Lit5YyF5ZCr5pyq5o+Q5Lqk55qE5Y+Y5pu044CCIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjQ1CisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ2CiBtc2dpZCAiQ2Fubm90IHB1bGwgd2l0aCByZWJhc2U6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIuaXoOazlemAmui/h+WPmOWfuuaWueW8j+aLieWPlu+8muaCqOeahOe0ouW8leS4reWMheWQq+acquaPkOS6pOeahOWPmOabtOOAgiIKIAotIzogZ2l0LXNoLXNldHVwLnNoOjI0OAorIzogZ2l0LXNoLXNldHVwLnNoOjI0OQogIywgc2gtZm9ybWF0CiBtc2dpZCAiQ2Fubm90ICRhY3Rpb246IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCiBtc2dzdHIgIuS4jeiDvSAkYWN0aW9u77ya5oKo55qE57Si5byV5Lit5YyF5ZCr5pyq5o+Q5Lqk55qE5Y+Y5pu044CCIgogCi0jOiBnaXQtc2gtc2V0dXAuc2g6MjUyCisjOiBnaXQtc2gtc2V0dXAuc2g6MjUzCiBtc2dpZCAiQWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgogbXNnc3RyICLogIzkuJTmgqjnmoTntKLlvJXkuK3ljIXlkKvmnKrmj5DkuqTnmoTlj5jmm7TjgIIiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDozNzIKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzMKIG1zZ2lkICJZb3UgbmVlZCB0byBydW4gdGhpcyBjb21tYW5kIGZyb20gdGhlIHRvcGxldmVsIG9mIHRoZSB3b3JraW5nIHRyZWUuIgogbXNnc3RyICLmgqjpnIDopoHlnKjlt6XkvZzljLrnmoTpobbnuqfnm67lvZXkuK3ov5DooYzov5nkuKrlkb3ku6TjgIIiCiAKLSM6IGdpdC1zaC1zZXR1cC5zaDozNzcKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzgKIG1zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIGFic29sdXRlIHBhdGggb2YgZ2l0IGRpcmVjdG9yeSIKIG1zZ3N0ciAi5LiN6IO956Gu5a6aIGdpdCDnm67lvZXnmoTnu53lr7not6/lvoQiCiAKICMuIFRSQU5TTEFUT1JTOiB5b3UgY2FuIGFkanVzdCB0aGlzIHRvIGFsaWduICJnaXQgYWRkIC1pIiBzdGF0dXMgbWVudQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxOTYKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEyCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiUxMnMgJTEycyAlcyIKIG1zZ3N0ciAiJTEycyAlMTJzICVzIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NwotbXNnaWQgInN0YWdlZCIKLW1zZ3N0ciAi57yT5a2YIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE5NwotbXNnaWQgInVuc3RhZ2VkIgotbXNnc3RyICLmnKrnvJPlrZgiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjUzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjc4Ci1tc2dpZCAiYmluYXJ5IgotbXNnc3RyICLkuozov5vliLYiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjYyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MzE2Ci1tc2dpZCAibm90aGluZyIKLW1zZ3N0ciAi5pegIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxMwotbXNnaWQgInVuY2hhbmdlZCIKLW1zZ3N0ciAi5rKh5pyJ5L+u5pS5IgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYwOQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJhZGRlZCAlZCBwYXRoXG4iCi1tc2dpZF9wbHVyYWwgImFkZGVkICVkIHBhdGhzXG4iCi1tc2dzdHJbMF0gIuWinuWKoOS6hiAlZCDkuKrot6/lvoRcbiIKLW1zZ3N0clsxXSAi5aKe5Yqg5LqGICVkIOS4qui3r+W+hFxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYxMgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJ1cGRhdGVkICVkIHBhdGhcbiIKLW1zZ2lkX3BsdXJhbCAidXBkYXRlZCAlZCBwYXRoc1xuIgotbXNnc3RyWzBdICLmm7TmlrDkuoYgJWQg5Liq6Lev5b6EXG4iCi1tc2dzdHJbMV0gIuabtOaWsOS6hiAlZCDkuKrot6/lvoRcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTUKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAicmV2ZXJ0ZWQgJWQgcGF0aFxuIgotbXNnaWRfcGx1cmFsICJyZXZlcnRlZCAlZCBwYXRoc1xuIgotbXNnc3RyWzBdICLov5jljp/kuoYgJWQg5Liq6Lev5b6EXG4iCi1tc2dzdHJbMV0gIui/mOWOn+S6hiAlZCDkuKrot6/lvoRcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2MTgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjM0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgInRvdWNoZWQgJWQgcGF0aFxuIgogbXNnaWRfcGx1cmFsICJ0b3VjaGVkICVkIHBhdGhzXG4iCiBtc2dzdHJbMF0gIuinpueisOS6hiAlZCDkuKrot6/lvoRcbiIKIG1zZ3N0clsxXSAi6Kem56Kw5LqGICVkIOS4qui3r+W+hFxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyNwotbXNnaWQgIlVwZGF0ZSIKLW1zZ3N0ciAi5pu05pawIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYzOQotbXNnaWQgIlJldmVydCIKLW1zZ3N0ciAi6L+Y5Y6fIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY2MgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJub3RlOiAlcyBpcyB1bnRyYWNrZWQgbm93LlxuIgotbXNnc3RyICLor7TmmI7vvJolcyDnjrDlt7LmiJDkuLrmnKrot5/ouKrnmoTjgIJcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NzMKLW1zZ2lkICJBZGQgdW50cmFja2VkIgotbXNnc3RyICLmt7vliqDmnKrot5/ouKrnmoQiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Njc5Ci1tc2dpZCAiTm8gdW50cmFja2VkIGZpbGVzLlxuIgotbXNnc3RyICLmsqHmnInmnKrot5/ouKrnmoTmlofku7bjgIJcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDMzCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTMKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHN0YWdpbmcuIgogbXNnc3RyICLlpoLmnpzooaXkuIHog73lubLlh4DlnLDlupTnlKjvvIznvJbovpHlnZflsIbnq4vljbPmoIforrDkuLrmmoLlrZjjgIIiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTAzNgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDU2CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBzdGFzaGluZy4iCiBtc2dzdHIgIuWmguaenOihpeS4geiDveW5suWHgOWcsOW6lOeUqO+8jOe8lui+keWdl+Wwhueri+WNs+agh+iusOS4uui0ruiXj+OAgiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDM5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTkKIG1zZ2lkICIiCiAiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKICJtYXJrZWQgZm9yIHVuc3RhZ2luZy4iCiBtc2dzdHIgIuWmguaenOihpeS4geiDveW5suWHgOWcsOW6lOeUqO+8jOe8lui+keWdl+Wwhueri+WNs+agh+iusOS4uuacquaaguWtmOOAgiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDQyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA1MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDYyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA3MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDc3CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBhcHBseWluZy4iCiBtc2dzdHIgIuWmguaenOihpeS4geiDveW5suWHgOWcsOW6lOeUqO+8jOe8lui+keWdl+Wwhueri+WNs+agh+iusOS4uuW6lOeUqOOAgiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDQ1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA0OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDY1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA2OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDc0CiBtc2dpZCAiIgogIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCiAibWFya2VkIGZvciBkaXNjYXJkaW5nLiIKIG1zZ3N0ciAi5aaC5p6c6KGl5LiB6IO95bmy5YeA5Zyw5bqU55So77yM57yW6L6R5Z2X5bCG56uL5Y2z5qCH6K6w5Li65Lii5byD44CCIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwODUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExMQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3Igd3JpdGluZzogJXMiCiBtc2dzdHIgIuS4uuWGmeWFpeaJk+W8gOWdl+e8lui+keaWh+S7tuWksei0pe+8miVzIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwODYKLW1zZ2lkICJNYW51YWwgaHVuayBlZGl0IG1vZGUgLS0gc2VlIGJvdHRvbSBmb3IgYSBxdWljayBndWlkZS5cbiIKLW1zZ3N0ciAi5omL5Yqo5Z2X57yW6L6R5qih5byPIC0tIOafpeeci+W6lemDqOeahOW/q+mAn+aMh+WNl+OAglxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwOTIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTExOAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiLS0tXG4iCkBAIC0yMDEwMSwzMyArMjM1ODgsMTIgQEAKICLopoHliKDpmaQgJyVzJyDlvIDlp4vnmoTooYzvvIzliKDpmaTlroPku6zjgIJcbiIKICLku6UgJXMg5byA5aeL55qE6KGM5bCG6KKr5Yig6Zmk44CCXG4iCiAKLSMuIFRSQU5TTEFUT1JTOiAnaXQnIHJlZmVycyB0byB0aGUgcGF0Y2ggbWVudGlvbmVkIGluIHRoZSBwcmV2aW91cyBtZXNzYWdlcy4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTEwMAotbXNnaWQgIiIKLSJJZiBpdCBkb2VzIG5vdCBhcHBseSBjbGVhbmx5LCB5b3Ugd2lsbCBiZSBnaXZlbiBhbiBvcHBvcnR1bml0eSB0b1xuIgotImVkaXQgYWdhaW4uICBJZiBhbGwgbGluZXMgb2YgdGhlIGh1bmsgYXJlIHJlbW92ZWQsIHRoZW4gdGhlIGVkaXQgaXNcbiIKLSJhYm9ydGVkIGFuZCB0aGUgaHVuayBpcyBsZWZ0IHVuY2hhbmdlZC5cbiIKLW1zZ3N0ciAiIgotIuWmguaenOS4jeiDveW5suWHgOWcsOW6lOeUqO+8jOaCqOWwhuacieacuuS8mumHjeaWsOe8lui+keOAguWmguaenOivpeWdl+eahOWFqOmDqOWGheWuueWIoOmZpO+8jOWImVxuIgotIuatpOasoee8lui+keiiq+e7iOatou+8jOivpeWdl+S4jeS8muiiq+S/ruaUueOAglxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTE0MAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3IgcmVhZGluZzogJXMiCiBtc2dzdHIgIuaXoOazleivu+WPluWdl+e8lui+keaWh+S7tu+8miVzIgogCi0jLiBUUkFOU0xBVE9SUzogZG8gbm90IHRyYW5zbGF0ZSBbeS9uXQotIy4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCB0aGF0IGlucHV0Ci0jLiBhdCB0aGlzIHBvaW50LgotIy4gQ29uc2lkZXIgdHJhbnNsYXRpbmcgKHNheWluZyAibm8iIGRpc2NhcmRzISkgYXMKLSMuIChzYXlpbmcgIm4iIGZvciAibm8iIGRpc2NhcmRzISkgaWYgdGhlIHRyYW5zbGF0aW9uCi0jLiBvZiB0aGUgd29yZCAibm8iIGRvZXMgbm90IHN0YXJ0IHdpdGggbi4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIxMwotbXNnaWQgIiIKLSJZb3VyIGVkaXRlZCBodW5rIGRvZXMgbm90IGFwcGx5LiBFZGl0IGFnYWluIChzYXlpbmcgXCJub1wiIGRpc2NhcmRzISkgW3kvbl0/ICIKLW1zZ3N0ciAi5oKo55qE57yW6L6R5Z2X5LiN6IO96KKr5bqU55So44CC6YeN5paw57yW6L6R77yI6YCJ5oupIFwibm9cIiDkuKLlvIPvvIHvvIkgW3kvbl0/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjIyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNDgKIG1zZ2lkICIiCiAieSAtIHN0YWdlIHRoaXMgaHVua1xuIgogIm4gLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rXG4iCkBAIC0yMDE0MSw3ICsyMzYwNyw3IEBACiAiYSAtIOaaguWtmOivpeWdl+WSjOacrOaWh+S7tuS4reWQjumdoueahOWFqOmDqOWdl1xuIgogImQgLSDkuI3mmoLlrZjor6XlnZflkozmnKzmlofku7bkuK3lkI7pnaLnmoTlhajpg6jlnZciCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTIyOAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjU0CiBtc2dpZCAiIgogInkgLSBzdGFzaCB0aGlzIGh1bmtcbiIKICJuIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVua1xuIgpAQCAtMjAxNTUsNyArMjM2MjEsNyBAQAogImEgLSDotK7ol4/or6XlnZflkozmnKzmlofku7bkuK3lkI7pnaLnmoTlhajpg6jlnZdcbiIKICJkIC0g5LiN6LSu6JeP6K+l5Z2X5ZKM5pys5paH5Lu25Lit5ZCO6Z2i55qE5YWo6YOo5Z2XIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMzQKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI2MAogbXNnaWQgIiIKICJ5IC0gdW5zdGFnZSB0aGlzIGh1bmtcbiIKICJuIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rXG4iCkBAIC0yMDE2OSw3ICsyMzYzNSw3IEBACiAiYSAtIOS4jeaaguWtmOivpeWdl+WSjOacrOaWh+S7tuS4reWQjumdoueahOWFqOmDqOWdl1xuIgogImQgLSDkuI3opoHkuI3mmoLlrZjor6XlnZflkozmnKzmlofku7bkuK3lkI7pnaLnmoTlhajpg6jlnZciCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI0MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjY2CiBtc2dpZCAiIgogInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKICJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgpAQCAtMjAxODMsNyArMjM2NDksNyBAQAogImEgLSDlupTnlKjor6XlnZflkozmnKzmlofku7bkuK3lkI7pnaLnmoTlhajpg6jlnZdcbiIKICJkIC0g5LiN6KaB5bqU55So6K+l5Z2X5ZKM5pys5paH5Lu25Lit5ZCO6Z2i55qE5YWo6YOo5Z2XIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNDYKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI3MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyOTAKIG1zZ2lkICIiCiAieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKICJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKQEAgLTIwMTk3LDcgKzIzNjYzLDcgQEAKICJhIC0g5Lii5byD6K+l5Z2X5ZKM5pys5paH5Lu25Lit5ZCO6Z2i55qE5YWo6YOo5Z2XXG4iCiAiZCAtIOS4jeimgeS4ouW8g+ivpeWdl+WSjOacrOaWh+S7tuS4reWQjumdoueahOWFqOmDqOWdlyIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjUyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNzgKIG1zZ2lkICIiCiAieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCiAibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgpAQCAtMjAyMTEsNyArMjM2NzcsNyBAQAogImEgLSDkuKLlvIPor6XlnZflkozmnKzmlofku7bkuK3lkI7pnaLnmoTlhajpg6jlnZdcbiIKICJkIC0g5LiN6KaB5Lii5byD6K+l5Z2X5ZKM5pys5paH5Lu25Lit5ZCO6Z2i55qE5YWo6YOo5Z2XIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNTgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI4NAogbXNnaWQgIiIKICJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgogIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgpAQCAtMjAyMjUsNyArMjM2OTEsMjEgQEAKICJhIC0g5bqU55So6K+l5Z2X5ZKM5pys5paH5Lu25Lit5ZCO6Z2i55qE5YWo6YOo5Z2XXG4iCiAiZCAtIOS4jeimgeW6lOeUqOivpeWdl+WSjOacrOaWh+S7tuS4reWQjumdoueahOWFqOmDqOWdlyIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjczCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyOTYKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBhcHBseSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKyJ5IC0g5Zyo5bel5L2c5Yy65Lit5bqU55So6K+l5Z2XXG4iCisibiAtIOS4jeimgeWcqOW3peS9nOWMuuS4reW6lOeUqOivpeWdl1xuIgorInEgLSDpgIDlh7rjgILkuI3opoHlupTnlKjor6XlnZflj4rlkI7pnaLnmoTlhajpg6jlnZdcbiIKKyJhIC0g5bqU55So6K+l5Z2X5ZKM5pys5paH5Lu25Lit5ZCO6Z2i55qE5YWo6YOo5Z2XXG4iCisiZCAtIOS4jeimgeW6lOeUqOivpeWdl+WSjOacrOaWh+S7tuS4reWQjumdoueahOWFqOmDqOWdlyIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzExCiBtc2dpZCAiIgogImcgLSBzZWxlY3QgYSBodW5rIHRvIGdvIHRvXG4iCiAiLyAtIHNlYXJjaCBmb3IgYSBodW5rIG1hdGNoaW5nIHRoZSBnaXZlbiByZWdleFxuIgpAQCAtMjAyNDcsMjExICsyMzcyNyw4NSBAQAogImUgLSDmiYvliqjnvJbovpHlvZPliY3lnZdcbiIKICI/IC0g5pi+56S65biu5YqpXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMwNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQyCiBtc2dpZCAiVGhlIHNlbGVjdGVkIGh1bmtzIGRvIG5vdCBhcHBseSB0byB0aGUgaW5kZXghXG4iCiBtc2dzdHIgIumAieS4reeahOWdl+S4jeiDveW6lOeUqOWIsOe0ouW8le+8gVxuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMDUKLW1zZ2lkICJBcHBseSB0aGVtIHRvIHRoZSB3b3JrdHJlZSBhbnl3YXk/ICIKLW1zZ3N0ciAi5peg6K665aaC5L2V6YO96KaB5bqU55So5Yiw5bel5L2c5Yy65LmI77yfIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMDgKLW1zZ2lkICJOb3RoaW5nIHdhcyBhcHBsaWVkLlxuIgotbXNnc3RyICLmnKrlupTnlKjjgIJcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzE5CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNTcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiaWdub3JpbmcgdW5tZXJnZWQ6ICVzXG4iCiBtc2dzdHIgIuW/veeVpeacquWQiOWFpeeahO+8miVzXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTMyOAotbXNnaWQgIk9ubHkgYmluYXJ5IGZpbGVzIGNoYW5nZWQuXG4iCi1tc2dzdHIgIuWPquacieS6jOi/m+WItuaWh+S7tuiiq+S/ruaUueOAglxuIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMzAKLW1zZ2lkICJObyBjaGFuZ2VzLlxuIgotbXNnc3RyICLmsqHmnInkv67mlLnjgIJcbiIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzM4Ci1tc2dpZCAiUGF0Y2ggdXBkYXRlIgotbXNnc3RyICLooaXkuIHmm7TmlrAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY4CiAjLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YWdlIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLmmoLlrZjmqKHlvI/lj5jmm7QgW3ksbixxLGEsZCVzLD9dPyAiCittc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuWwhuaooeW8j+WPmOabtOW6lOeUqOWIsOW3peS9nOWMuiBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzkxCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjkKICMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIuaaguWtmOWIoOmZpOWKqOS9nCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ2lkICJBcHBseSBkZWxldGlvbiB0byB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5bCG5Yig6Zmk5pON5L2c5bqU55So5Yiw5bel5L2c5Yy6IFt5LG4scSxhLGQlcyw/XT8gIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTIKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ3MAogIywgcGVybC1mb3JtYXQKLW1zZ2lkICJTdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIuaaguWtmOivpeWdlyBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuWwhuivpeWdl+W6lOeUqOWIsOW3peS9nOWMuiBbeSxuLHEsYSxkJXMsP10/ICIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzk1Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIlN0YXNoIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLotK7ol4/mqKHlvI/lj5jmm7QgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM5NgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJTdGFzaCBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAi6LSu6JeP5Yig6Zmk5Yqo5L2cIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzOTcKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiU3Rhc2ggdGhpcyBodW5rIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLotK7ol4/or6XlnZcgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwMAotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJVbnN0YWdlIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLlj5bmtojmmoLlrZjmqKHlvI/lj5jmm7QgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwMQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJVbnN0YWdlIGRlbGV0aW9uIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLlj5bmtojmmoLlrZjliKDpmaTliqjkvZwgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwMgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJVbnN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAi5Y+W5raI5pqC5a2Y6K+l5Z2XIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MDUKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIuWwhuaooeW8j+WPmOabtOW6lOeUqOWIsOe0ouW8lSBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDA2Ci0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLlsIbliKDpmaTlupTnlKjliLDntKLlvJUgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQwNwotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIuWwhuivpeWdl+W6lOeUqOWIsOe0ouW8lSBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDEwCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAi5LuO5bel5L2c5Yy65Lit5Lii5byD5qih5byP5Y+Y5pu0IFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MTEKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiRGlzY2FyZCBkZWxldGlvbiBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLku47lt6XkvZzljLrkuK3kuKLlvIPliKDpmaTliqjkvZwgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxMgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLku47lt6XkvZzljLrkuK3kuKLlvIPor6XlnZcgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxNQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLku47ntKLlvJXlkozlt6XkvZzljLrkuK3kuKLlvIPmqKHlvI/lj5jmm7QgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxNgotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLku47ntKLlvJXlkozlt6XkvZzljLrkuK3kuKLlvIPliKDpmaQgW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQxNwotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKLW1zZ3N0ciAi5LuO57Si5byV5ZKM5bel5L2c5Yy65Lit5Lii5byD6K+l5Z2XIFt5LG4scSxhLGQlcyw/XT8gIgotCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjAKLSMsIHBlcmwtZm9ybWF0Ci1tc2dpZCAiQXBwbHkgbW9kZSBjaGFuZ2UgdG8gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgotbXNnc3RyICLlsIbmqKHlvI/lj5jmm7TlupTnlKjliLDntKLlvJXlkozlt6XkvZzljLogW3ksbixxLGEsZCVzLD9dPyAiCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQyMQotIywgcGVybC1mb3JtYXQKLW1zZ2lkICJBcHBseSBkZWxldGlvbiB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIuWwhuWIoOmZpOW6lOeUqOWIsOe0ouW8leWSjOW3peS9nOWMuiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDIyCi0jLCBwZXJsLWZvcm1hdAotbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCi1tc2dzdHIgIuWwhuivpeWdl+W6lOeUqOWIsOe0ouW8leWSjOW3peS9nOWMuiBbeSxuLHEsYSxkJXMsP10/ICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTIyCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzAKIG1zZ2lkICJObyBvdGhlciBodW5rcyB0byBnb3RvXG4iCiBtc2dzdHIgIuayoeacieWFtuWug+WPr+S+m+i3s+i9rOeahOWdl1xuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1MjkKLW1zZ2lkICJnbyB0byB3aGljaCBodW5rICg8cmV0PiB0byBzZWUgbW9yZSk/ICIKLW1zZ3N0ciAi6Lez6L2s5Yiw5ZOq5Liq5Z2X77yIPOWbnui9pj4g5p+l55yL5pu05aSa77yJ77yfICIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTMxCi1tc2dpZCAiZ28gdG8gd2hpY2ggaHVuaz8gIgotbXNnc3RyICLot7PovazliLDlk6rkuKrlnZfvvJ8iCi0KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU0MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTg4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkludmFsaWQgbnVtYmVyOiAnJXMnXG4iCiBtc2dzdHIgIuaXoOaViOaVsOWtl++8miclcydcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTQ1CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1OTMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU29ycnksIG9ubHkgJWQgaHVuayBhdmFpbGFibGUuXG4iCiBtc2dpZF9wbHVyYWwgIlNvcnJ5LCBvbmx5ICVkIGh1bmtzIGF2YWlsYWJsZS5cbiIKIG1zZ3N0clswXSAi5a+55LiN6LW377yM5Y+q5pyJICVkIOS4quWPr+eUqOWdl+OAglxuIgogbXNnc3RyWzFdICLlr7nkuI3otbfvvIzlj6rmnIkgJWQg5Liq5Y+v55So5Z2X44CCXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU3MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjE5CiBtc2dpZCAiTm8gb3RoZXIgaHVua3MgdG8gc2VhcmNoXG4iCiBtc2dzdHIgIuayoeacieWFtuWug+WPr+S+m+afpeaJvueahOWdl1xuIgogCi0jOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzUKLW1zZ2lkICJzZWFyY2ggZm9yIHJlZ2V4PyAiCi1tc2dzdHIgIuS9v+eUqOato+WImeihqOi+vuW8j+aQnOe0ou+8nyIKLQotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTg4CisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MzYKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiTWFsZm9ybWVkIHNlYXJjaCByZWdleHAgJXM6ICVzXG4iCiBtc2dzdHIgIumUmeivr+eahOato+WImeihqOi+vuW8jyAlc++8miVzXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTU5OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjQ2CiBtc2dpZCAiTm8gaHVuayBtYXRjaGVzIHRoZSBnaXZlbiBwYXR0ZXJuXG4iCi1tc2dzdHIgIuayoeacieWSjOe7meWumuaooeW8j+ebuOWMuemFjeeahOW/q1xuIgorbXNnc3RyICLmsqHmnInlkoznu5nlrprmqKHlvI/nm7jljLnphY3nmoTlnZdcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjEwIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYzMgorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjU4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY4MAogbXNnaWQgIk5vIHByZXZpb3VzIGh1bmtcbiIKIG1zZ3N0ciAi5rKh5pyJ5YmN5LiA5Liq5Z2XXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MzgKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY2NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2ODYKIG1zZ2lkICJObyBuZXh0IGh1bmtcbiIKIG1zZ3N0ciAi5rKh5pyJ5LiL5LiA5Liq5Z2XXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY0NAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjkyCiBtc2dpZCAiU29ycnksIGNhbm5vdCBzcGxpdCB0aGlzIGh1bmtcbiIKIG1zZ3N0ciAi5a+55LiN6LW377yM5LiN6IO95ouG5YiG6L+Z5Liq5Z2XXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY1MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjk4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNwbGl0IGludG8gJWQgaHVuay5cbiIKIG1zZ2lkX3BsdXJhbCAiU3BsaXQgaW50byAlZCBodW5rcy5cbiIKIG1zZ3N0clswXSAi5ouG5YiG5Li6ICVkIOWdl+OAglxuIgogbXNnc3RyWzFdICLmi4bliIbkuLogJWQg5Z2X44CCXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY2MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzA4CiBtc2dpZCAiU29ycnksIGNhbm5vdCBlZGl0IHRoaXMgaHVua1xuIgogbXNnc3RyICLlr7nkuI3otbfvvIzkuI3og73nvJbovpHov5nkuKrlnZdcbiIKIAotIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzA2Ci1tc2dpZCAiUmV2aWV3IGRpZmYiCi1tc2dzdHIgIuajgOinhiBkaWZmIgotCiAjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGRvIG5vdCB0cmFuc2xhdGUgdGhlIGNvbW1hbmQgbmFtZXMKICMuICdzdGF0dXMnLCAndXBkYXRlJywgJ3JldmVydCcsIGV0Yy4KLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTcyNQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzczCiBtc2dpZCAiIgogInN0YXR1cyAgICAgICAgLSBzaG93IHBhdGhzIHdpdGggY2hhbmdlc1xuIgogInVwZGF0ZSAgICAgICAgLSBhZGQgd29ya2luZyB0cmVlIHN0YXRlIHRvIHRoZSBzdGFnZWQgc2V0IG9mIGNoYW5nZXNcbiIKQEAgLTIwNDY4LDE4ICsyMzgyMiwxOSBAQAogImRpZmYgICAgICAgICAgLSDmmL7npLogSEVBRCDlkozntKLlvJXpl7Tlt67lvIJcbiIKICJhZGQgdW50cmFja2VkIC0g5re75Yqg5pyq6Lef6Liq5paH5Lu255qE5YaF5a656Iez5pqC5a2Y5YiX6KGoXG4iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc0MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NDcKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc1MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NTcKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2MSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NjcKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MDUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgwOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MTUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MjUKIG1zZ2lkICJtaXNzaW5nIC0tIgogbXNnc3RyICLnvLrlpLEgLS0iCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2MworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODIxCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgInVua25vd24gLS1wYXRjaCBtb2RlOiAlcyIKIG1zZ3N0ciAi5pyq55+l55qEIC0tcGF0Y2gg5qih5byP77yaJXMiCiAKLSM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2OSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NzUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyNyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MzMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiaW52YWxpZCBhcmd1bWVudCAlcywgZXhwZWN0aW5nIC0tIgogbXNnc3RyICLml6DmlYjnmoTlj4LmlbAgJXPvvIzmnJ/mnJvmmK8gLS0iCkBAIC0yMDQ5Miw2NiArMjM4NDcsNjYgQEAKIG1zZ2lkICJsb2NhbCB0aW1lIG9mZnNldCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMjQgaG91cnNcbiIKIG1zZ3N0ciAi5pys5Zyw5pe26Ze05YGP56e76YeP5aSn5LqO562J5LqOIDI0IOWwj+aXtlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjIxOSBnaXQtc2VuZC1lbWFpbC5wZXJsOjIyNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoyMjMgZ2l0LXNlbmQtZW1haWwucGVybDoyMjkKIG1zZ2lkICJ0aGUgZWRpdG9yIGV4aXRlZCB1bmNsZWFubHksIGFib3J0aW5nIGV2ZXJ5dGhpbmciCiBtc2dzdHIgIue8lui+keWZqOmdnuato+W4uOmAgOWHuu+8jOe7iOatouaJgOacieaTjeS9nCIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMDIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzEwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiIKICInJXMnIGNvbnRhaW5zIGFuIGludGVybWVkaWF0ZSB2ZXJzaW9uIG9mIHRoZSBlbWFpbCB5b3Ugd2VyZSBjb21wb3NpbmcuXG4iCiBtc2dzdHIgIiclcycg5YyF5ZCr5oKo5q2j5Zyo57yW5YaZ55qE5LiA5Liq5Lit6Ze054mI5pys55qE6YKu5Lu244CCXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MzA3CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMxNQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICInJXMuZmluYWwnIGNvbnRhaW5zIHRoZSBjb21wb3NlZCBlbWFpbC5cbiIKIG1zZ3N0ciAiJyVzLmZpbmFsJyDljIXlkKvnvJbovpHnmoTpgq7ku7bjgIJcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozMjYKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDA4CiBtc2dpZCAiLS1kdW1wLWFsaWFzZXMgaW5jb21wYXRpYmxlIHdpdGggb3RoZXIgb3B0aW9uc1xuIgogbXNnc3RyICItLWR1bXAtYWxpYXNlcyDlkozlhbblroPpgInpobnkuI3lhbzlrrlcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozOTUgZ2l0LXNlbmQtZW1haWwucGVybDo2NTAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDgxIGdpdC1zZW5kLWVtYWlsLnBlcmw6NjgzCiBtc2dpZCAiQ2Fubm90IHJ1biBnaXQgZm9ybWF0LXBhdGNoIGZyb20gb3V0c2lkZSBhIHJlcG9zaXRvcnlcbiIKIG1zZ3N0ciAi5LiN6IO95Zyo5LuT5bqT5LmL5aSW6L+Q6KGMIGdpdCBmb3JtYXQtcGF0Y2hcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDozOTgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDg0CiBtc2dpZCAiIgogImBiYXRjaC1zaXplYCBhbmQgYHJlbG9naW5gIG11c3QgYmUgc3BlY2lmaWVkIHRvZ2V0aGVyICh2aWEgY29tbWFuZC1saW5lIG9yICIKICJjb25maWd1cmF0aW9uIG9wdGlvbilcbiIKIG1zZ3N0ciAiYGJhdGNoLXNpemVgIOWSjCBgcmVsb2dpbmAg5b+F6aG75ZCM5pe25a6a5LmJ77yI6YCa6L+H5ZG95Luk6KGM5oiW6ICF6YWN572u6YCJ6aG577yJXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDY4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ5NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJVbmtub3duIC0tc3VwcHJlc3MtY2MgZmllbGQ6ICclcydcbiIKIG1zZ3N0ciAi5pyq55+l55qEIC0tc3VwcHJlc3MtY2Mg5a2X5q6177yaJyVzJ1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ5NworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiVW5rbm93biAtLWNvbmZpcm0gc2V0dGluZzogJyVzJ1xuIgogbXNnc3RyICLmnKrnn6XnmoQgLS1jb25maXJtIOiuvue9ru+8miclcydcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTU2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IHNlbmRtYWlsIGFsaWFzIHdpdGggcXVvdGVzIGlzIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCiBtc2dzdHIgIuitpuWRiu+8muS4jeaUr+aMgeW4puW8leWPt+eahCBzZW5kbWFpbCDliKvlkI3vvJolc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUyNworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogYDppbmNsdWRlOmAgbm90IHN1cHBvcnRlZDogJXNcbiIKIG1zZ3N0ciAi6K2m5ZGK77ya5LiN5pSv5oyBIGA6aW5jbHVkZTpg77yaJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo1MjkKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTYwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIndhcm5pbmc6IGAvZmlsZWAgb3IgYHxwaXBlYCByZWRpcmVjdGlvbiBub3Qgc3VwcG9ydGVkOiAlc1xuIgogbXNnc3RyICLorablkYrvvJrkuI3mlK/mjIEgYC9maWxlYCDmiJYgYHxwaXBlYCDph43lrprlkJHvvJolc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjUzNAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NjUKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAid2FybmluZzogc2VuZG1haWwgbGluZSBpcyBub3QgcmVjb2duaXplZDogJXNcbiIKIG1zZ3N0ciAi6K2m5ZGK77ya5LiN6IO96K+G5Yir55qEIHNlbmRtYWlsIOihjO+8miVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjE2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY0OQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiRmlsZSAnJXMnIGV4aXN0cyBidXQgaXQgY291bGQgYWxzbyBiZSB0aGUgcmFuZ2Ugb2YgY29tbWl0c1xuIgpAQCAtMjA1NjYsMjEgKzIzOTIxLDIxIEBACiAiICAgICog5aaC5p6c5ZCr5LmJ5Li65LiA5Liq5paH5Lu277yM5L2/55SoIFwiLi8lc1wi77yM5oiW6ICFXG4iCiAiICAgICog5aaC5p6c5ZCr5LmJ5Li65LiA5Liq6IyD5Zu077yM5L2/55SoIC0tZm9ybWF0LXBhdGNoIOmAiemhueOAglxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjYzNworIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NzAKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRmFpbGVkIHRvIG9wZW5kaXIgJXM6ICVzIgogbXNnc3RyICLml6Dms5XmiZPlvIDnm67lvZUgJXM6ICVzIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY2MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo2OTQKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiIgogImZhdGFsOiAlczogJXNcbiIKICJ3YXJuaW5nOiBubyBwYXRjaGVzIHdlcmUgc2VudFxuIgogbXNnc3RyICIiCi0i5Lil6YeN77yaJXPvvJolc1xuIgorIuiHtOWRvemUmeivr++8miVz77yaJXNcbiIKICLorablkYrvvJrooaXkuIHmnKrog73lj5HpgIFcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2NzIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzA1CiBtc2dpZCAiIgogIlxuIgogIk5vIHBhdGNoIGZpbGVzIHNwZWNpZmllZCFcbiIKQEAgLTIwNTkwLDE3ICsyMzk0NSwxNyBAQAogIuacquaMh+WumuihpeS4geaWh+S7tu+8gVxuIgogIlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjY4NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MTgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiTm8gc3ViamVjdCBsaW5lIGluICVzPyIKIG1zZ3N0ciAi5ZyoICVzIOS4reayoeacieagh+mimOihjO+8nyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo2OTUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzI4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBvcGVuIGZvciB3cml0aW5nICVzOiAlcyIKIG1zZ3N0ciAi5Li65YaZ5YWl5omT5byAICVzIOWksei0pTogJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzA2CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjczOQogbXNnaWQgIiIKICJMaW5lcyBiZWdpbm5pbmcgaW4gXCJHSVQ6XCIgd2lsbCBiZSByZW1vdmVkLlxuIgogIkNvbnNpZGVyIGluY2x1ZGluZyBhbiBvdmVyYWxsIGRpZmZzdGF0IG9yIHRhYmxlIG9mIGNvbnRlbnRzXG4iCkBAIC0yMDYwOSw0MSArMjM5NjQsNDEgQEAKICJDbGVhciB0aGUgYm9keSBjb250ZW50IGlmIHlvdSBkb24ndCB3aXNoIHRvIHNlbmQgYSBzdW1tYXJ5LlxuIgogbXNnc3RyICIiCiAi5LulIFwiR0lUOlwiIOW8gOWktOeahOihjOWwhuiiq+WIoOmZpOOAglxuIgotIuiAg+iZkeWMheWQq+S4gOS4quaVtOS9k+eahCBkaWZmc3RhdCDmiJbogIXmgqjmraPlnKjlhpnnmoTooaXkuIHnmoTnm67lvZXjgIJcbiIKKyLogIPomZHljIXlkKvkuIDkuKrmlbTkvZPnmoTlt67lvILnu5/orqHmiJbogIXmgqjmraPlnKjlhpnnmoTooaXkuIHnmoTnm67lvZXjgIJcbiIKICJcbiIKICLlpoLmnpzmgqjkuI3mg7Plj5HpgIHmkZjopoHvvIzmuIXpmaTlhoXlrrnjgIJcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MzAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzYzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBvcGVuICVzOiAlcyIKIG1zZ3N0ciAi5peg5rOV5omT5byAICVzOiAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo3NDcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzgwCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkZhaWxlZCB0byBvcGVuICVzLmZpbmFsOiAlcyIKIG1zZ3N0ciAi5peg5rOV5omT5byAICVzLmZpbmFsOiAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo3OTAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODIzCiBtc2dpZCAiU3VtbWFyeSBlbWFpbCBpcyBlbXB0eSwgc2tpcHBpbmcgaXRcbiIKIG1zZ3N0ciAi5pGY6KaB6YKu5Lu25Li656m677yM6Lez6L+HXG4iCiAKICMuIFRSQU5TTEFUT1JTOiBwbGVhc2Uga2VlcCBbeS9OXSBhcyBpcy4KLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODI1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjg1OAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gdXNlIDwlcz4gW3kvTl0/ICIKIG1zZ3N0ciAi5oKo56Gu6K6k6KaB5L2/55SoIDwlcz4gW3kvTl3vvJ8iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODgwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkxMwogbXNnaWQgIiIKICJUaGUgZm9sbG93aW5nIGZpbGVzIGFyZSA4Yml0LCBidXQgZG8gbm90IGRlY2xhcmUgYSBDb250ZW50LVRyYW5zZmVyLSIKICJFbmNvZGluZy5cbiIKIG1zZ3N0ciAi5aaC5LiL5paH5Lu25ZCrIDhiaXQg5YaF5a6577yM5L2G5rKh5pyJ5aOw5piO5LiA5LiqIENvbnRlbnQtVHJhbnNmZXItRW5jb2RpbmfjgIJcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo4ODUKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTE4CiBtc2dpZCAiV2hpY2ggOGJpdCBlbmNvZGluZyBzaG91bGQgSSBkZWNsYXJlIFtVVEYtOF0/ICIKIG1zZ3N0ciAi6KaB5aOw5piOIDhiaXQg5Li65LuA5LmI5qC355qE57yW56CB5qC85byPIFtVVEYtOF3vvJ8iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6ODkzCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkyNgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIiCiAiUmVmdXNpbmcgdG8gc2VuZCBiZWNhdXNlIHRoZSBwYXRjaFxuIgpAQCAtMjA2NTUsMjAgKzI0MDEwLDIwIEBACiAiXHQlc1xuIgogIuWMheWQq+aooeeJiOagh+mimCAnKioqIFNVQkpFQ1QgSEVSRSAqKion44CC5aaC5p6c56Gu5a6e5oOz6KaB5Y+R6YCB77yM5L2/55So5Y+C5pWwIC0tZm9yY2XjgIJcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDo5MTIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTQ1CiBtc2dpZCAiVG8gd2hvbSBzaG91bGQgdGhlIGVtYWlscyBiZSBzZW50IChpZiBhbnlvbmUpPyIKIG1zZ3N0ciAi6YKu5Lu25bCG6KaB5Y+R6YCB57uZ6LCB77yfIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkzMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NjMKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZmF0YWw6IGFsaWFzICclcycgZXhwYW5kcyB0byBpdHNlbGZcbiIKLW1zZ3N0ciAi5Lil6YeN77ya5Yir5ZCNICclcycg5omp5bGV5Li65a6D6Ieq5bexXG4iCittc2dzdHIgIuiHtOWRvemUmeivr++8muWIq+WQjSAnJXMnIOaJqeWxleS4uuWug+iHquW3sVxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjk0MgorIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NzUKIG1zZ2lkICJNZXNzYWdlLUlEIHRvIGJlIHVzZWQgYXMgSW4tUmVwbHktVG8gZm9yIHRoZSBmaXJzdCBlbWFpbCAoaWYgYW55KT8gIgogbXNnc3RyICJNZXNzYWdlLUlEIOiiq+eUqOS9nOesrOS4gOWwgemCruS7tueahCBJbi1SZXBseS1UbyDvvJ8iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAwMCBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwMDgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAzMyBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwNDEKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiZXJyb3I6IHVuYWJsZSB0byBleHRyYWN0IGEgdmFsaWQgYWRkcmVzcyBmcm9tOiAlc1xuIgogbXNnc3RyICLplJnor6/vvJrkuI3og73ku44gJXMg5Lit5o+Q5Y+W5LiA5Liq5pyJ5pWI55qE6YKu5Lu25Zyw5Z2AXG4iCkBAIC0yMDY3NiwxNiArMjQwMzEsMTYgQEAKICMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbcV0gW2RdIFtlXSBpbiB5b3VyCiAjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CiAjLiBhdCB0aGlzIHBvaW50LgotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDEyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwNDUKIG1zZ2lkICJXaGF0IHRvIGRvIHdpdGggdGhpcyBhZGRyZXNzPyAoW3FddWl0fFtkXXJvcHxbZV1kaXQpOiAiCiBtc2dzdHIgIuWmguS9leWkhOeQhui/meS4quWcsOWdgO+8nyhbcV11aXR8W2Rdcm9wfFtlXWRpdCnvvJoiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTMyOQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMzYyCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIkNBIHBhdGggXCIlc1wiIGRvZXMgbm90IGV4aXN0IgogbXNnc3RyICJDQSDot6/lvoQgXCIlc1wiIOS4jeWtmOWcqCIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDEyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NDUKIG1zZ2lkICIiCiAiICAgIFRoZSBDYyBsaXN0IGFib3ZlIGhhcyBiZWVuIGV4cGFuZGVkIGJ5IGFkZGl0aW9uYWxcbiIKICIgICAgYWRkcmVzc2VzIGZvdW5kIGluIHRoZSBwYXRjaCBjb21taXQgbWVzc2FnZS4gQnkgZGVmYXVsdFxuIgpAQCAtMjA3MTAsMTI4ICsyNDA2NSwxMjggQEAKICMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbeV0gW25dIFtlXSBbcV0gW2FdIGluIHlvdXIKICMuIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2ggaW5wdXQKICMuIGF0IHRoaXMgcG9pbnQuCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0MjcKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTQ2MAogbXNnaWQgIlNlbmQgdGhpcyBlbWFpbD8gKFt5XWVzfFtuXW98W2VdZGl0fFtxXXVpdHxbYV1sbCk6ICIKIG1zZ3N0ciAi5Y+R6YCB6L+Z5bCB6YKu5Lu277yfKFt5XWVzfFtuXW98W2VdZGl0fFtxXXVpdHxbYV1sbCk6ICIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDMwCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjMKIG1zZ2lkICJTZW5kIHRoaXMgZW1haWwgcmVwbHkgcmVxdWlyZWQiCiBtc2dzdHIgIuWPkemAgeimgeaxgueahOmCruS7tuWbnuWkjSIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDU4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0OTEKIG1zZ2lkICJUaGUgcmVxdWlyZWQgU01UUCBzZXJ2ZXIgaXMgbm90IHByb3Blcmx5IGRlZmluZWQuIgogbXNnc3RyICLopoHmsYLnmoQgU01UUCDmnI3liqHlmajmnKrooqvmraPnoa7lrprkuYnjgIIiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUwNQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTM4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IFNUQVJUVExTISAlcyIKIG1zZ3N0ciAi5pyN5Yqh5Zmo5LiN5pSv5oyBIFNUQVJUVExT77yBJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUxMCBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MTQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0MyBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiU1RBUlRUTFMgZmFpbGVkISAlcyIKIG1zZ3N0ciAiU1RBUlRUTFMg5aSx6LSl77yBJXMiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTUyMworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTU2CiBtc2dpZCAiVW5hYmxlIHRvIGluaXRpYWxpemUgU01UUCBwcm9wZXJseS4gQ2hlY2sgY29uZmlnIGFuZCB1c2UgLS1zbXRwLWRlYnVnLiIKIG1zZ3N0ciAi5peg5rOV5q2j56Gu5Zyw5Yid5aeL5YyWIFNNVFDjgILmo4Dmn6XphY3nva7lubbkvb/nlKggLS1zbXRwLWRlYnVn44CCIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NDEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJGYWlsZWQgdG8gc2VuZCAlc1xuIgogbXNnc3RyICLml6Dms5Xlj5HpgIEgJXNcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQ0CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzcKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRHJ5LVNlbnQgJXNcbiIKIG1zZ3N0ciAi5ryU5Lmg5Y+R6YCBICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc3CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIlNlbnQgJXNcbiIKIG1zZ3N0ciAi5q2j5Y+R6YCBICVzXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CiBtc2dpZCAiRHJ5LU9LLiBMb2cgc2F5czpcbiIKIG1zZ3N0ciAi5ryU5Lmg5oiQ5Yqf44CC5pel5b+X6K+077yaXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc5CiBtc2dpZCAiT0suIExvZyBzYXlzOlxuIgogbXNnc3RyICJPS+OAguaXpeW/l+ivtO+8mlxuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NTgKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU5MQogbXNnaWQgIlJlc3VsdDogIgogbXNnc3RyICLnu5PmnpzvvJoiCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU2MQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTk0CiBtc2dpZCAiUmVzdWx0OiBPS1xuIgogbXNnc3RyICLnu5PmnpzvvJpPS1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzkKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTYxMgogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJjYW4ndCBvcGVuIGZpbGUgJXMiCiBtc2dzdHIgIuaXoOazleaJk+W8gOaWh+S7tiAlcyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjI2IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY0NgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjU5IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY3OQogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIobWJveCkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIobWJveCkg5re75YqgIGNj77yaJXMg6Ieq6KGMICclcydcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjMyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NjUKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKG1ib3gpIEFkZGluZyB0bzogJXMgZnJvbSBsaW5lICclcydcbiIKIG1zZ3N0ciAiKG1ib3gpIOa3u+WKoCB0b++8miVzIOiHquihjCAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTY4NQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzE4CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihub24tbWJveCkgQWRkaW5nIGNjOiAlcyBmcm9tIGxpbmUgJyVzJ1xuIgogbXNnc3RyICIobm9uLW1ib3gpIOa3u+WKoCBjY++8miVzIOiHquihjCAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTcyMAorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNzUzCiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIihib2R5KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCiBtc2dzdHIgIihib2R5KSDmt7vliqAgY2M6ICVzIOiHquihjCAnJXMnXG4iCiAKLSM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTgzMQorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODY0CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgIiglcykgQ291bGQgbm90IGV4ZWN1dGUgJyVzJyIKIG1zZ3N0ciAiKCVzKSDkuI3og73miafooYwgJyVzJyIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODM4CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NzEKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKCVzKSBBZGRpbmcgJXM6ICVzIGZyb206ICclcydcbiIKIG1zZ3N0ciAiKCVzKSDmt7vliqAgJXM6ICVzIOiHqu+8miclcydcbiIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODQyCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NzUKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiKCVzKSBmYWlsZWQgdG8gY2xvc2UgcGlwZSB0byAnJXMnIgogbXNnc3RyICIoJXMpIOaXoOazleWFs+mXreeuoemBk+iHsyAnJXMnIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4NzIKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkwNQogbXNnaWQgImNhbm5vdCBzZW5kIG1lc3NhZ2UgYXMgN2JpdCIKIG1zZ3N0ciAi5LiN6IO95LulIDdiaXQg5b2i5byP5Y+R6YCB5L+h5oGvIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE4ODAKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkxMwogbXNnaWQgImludmFsaWQgdHJhbnNmZXIgZW5jb2RpbmciCiBtc2dzdHIgIuaXoOaViOeahOS8oOmAgee8lueggSIKIAotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTIxIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk3MyBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5ODMKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk1NCBnaXQtc2VuZC1lbWFpbC5wZXJsOjIwMDYgZ2l0LXNlbmQtZW1haWwucGVybDoyMDE2CiAjLCBwZXJsLWZvcm1hdAogbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlc1xuIgogbXNnc3RyICLkuI3og73miZPlvIAgJXPvvJolc1xuIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MjQKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk1NwogIywgcGVybC1mb3JtYXQKIG1zZ2lkICIlczogcGF0Y2ggY29udGFpbnMgYSBsaW5lIGxvbmdlciB0aGFuIDk5OCBjaGFyYWN0ZXJzIgogbXNnc3RyICIlc++8muihpeS4geWMheWQq+S4gOS4qui2hei/hyA5OTgg5a2X56ym55qE6KGMIgogCi0jOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NDEKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk3NAogIywgcGVybC1mb3JtYXQKIG1zZ2lkICJTa2lwcGluZyAlcyB3aXRoIGJhY2t1cCBzdWZmaXggJyVzJy5cbiIKIG1zZ3N0ciAi55Wl6L+HICVzIOWQq+Wkh+S7veWQjue8gCAnJXMn44CCXG4iCiAKICMuIFRSQU5TTEFUT1JTOiBwbGVhc2Uga2VlcCAiW3l8Tl0iIGFzIGlzLgotIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTQ1CisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NzgKICMsIHBlcmwtZm9ybWF0CiBtc2dpZCAiRG8geW91IHJlYWxseSB3YW50IHRvIHNlbmQgJXM/IFt5fE5dOiAiCiBtc2dzdHIgIuaCqOecn+eahOimgeWPkemAgSAlc++8n1t5fE5d77yaIgpkaWZmIC0tZ2l0IGEvcG8vemhfVFcucG8gYi9wby96aF9UVy5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZWZlNDk2Ci0tLSAvZGV2L251bGwKKysrIGIvcG8vemhfVFcucG8KQEAgLTAsMCArMSwyNDEyMCBAQAorIyBDaGluZXNlICh0cmFkaXRpb25hbCkgdHJhbnNsYXRpb25zIGZvciBHaXQgcGFja2FnZQorIyBHaXQg5aWX6KOd6Luf6auU55qE57mB6auU5Lit5paH57+76K2v44CCCisjIENvcHlyaWdodCAoQykgMjAxMiwyMDEzIEppYW5nIFhpbiA8d29ybGRoZWxsby5uZXQgQVQgZ21haWwuY29tPgorIyBDb3B5cmlnaHQgKEMpIDIwMTksMjAyMCBZaS1KeXVuIFBhbiA8cGFuOTM0MTJAZ21haWwuY29tPgorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgR2l0IHBhY2thZ2UuCisjIENvbnRyaWJ1dG9ycyAoQ04pOgorIyAgIC0gRmFuZ3lpIFpob3UgPG1lIEFUIGZhbmd5aS5pbz4KKyMgICAtIEppYW5nIFhpbiA8d29ybGRoZWxsby5uZXQgQVQgZ21haWwuY29tPgorIyAgIC0gTGlhbiBDaGVuZyA8cmh5dGhtLm1haWwgQVQgZ21haWwuY29tPgorIyAgIC0gUmF5IENoZW4gPG9sZHNoYXJwIEFUIGdtYWlsLmNvbT4KKyMgICAtIFJpa3UgPGx1LnJpa3UgQVQgZ21haWwuY29tPgorIyAgIC0gVGh5bnNvbiA8bGFueGluZ2NhbiBBVCBnbWFpbC5jb20+CisjICAgLSB3czMzODkgPHdpbGxzbWl0aDMzODkgQVQgZ21haWwuY29tPgorIyAgIC0gV2FuZyBTaGVuZyA8d2FuZ3NoZW5nMjAwOGxvdmUgQVQgMTYzLmNvbT4KKyMgICAtIOS+neS6kSA8bGlseWRqd2cgQVQgZ21haWwuY29tPgorIyAgIC0gWWljaGFvIFl1IDx5eWMxOTkyIEFUIGdtYWlsLmNvbT4KKyMgICAtIFpodWFuZyBZYSA8emh1YW5neWEgQVQgbWUuY29tPgorIworIyAgR2l0IGdsb3NzYXJ5IGZvciBDaGluZXNlIHRyYW5zbGF0b3JzCisjCisjICAgRW5nbGlzaCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgQ2hpbmVzZQorIyAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyAgIDMtd2F5IG1lcmdlICAgICAgICAgICAgICAgICAgICAgIHwgIOS4ieaWueWQiOS9tQorIyAgIGFiYnJldmlhdGUgICAgICAgICAgICAgICAgICAgICAgIHwgIOewoeWvq++8iOeahCBTSEEtMSDlgLzvvIkKKyMgICBhbHRlcm5hdGUgb2JqZWN0IGRhdGFiYXNlICAgICAgICB8ICDlgpnnlKjnianku7bluqsKKyMgICBhbWVuZCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDkv67oo5wKKyMgICBhbmNlc3RvciAgICAgICAgICAgICAgICAgICAgICAgICB8ICDnpZblhYjvvIznpZblhYjmj5DkuqQKKyMgICBhbm5vdGF0ZWQgdGFnICAgICAgICAgICAgICAgICAgICB8ICDpmYToqLvmqJnnsaQKKyMgICBiYXJlIHJlcG9zaXRvcnkgICAgICAgICAgICAgICAgICB8ICDntJTniYjmnKzluqsKKyMgICBiaXNlY3QgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDkuozliIblsIvmib4KKyMgICBibG9iIG9iamVjdCAgICAgICAgICAgICAgICAgICAgICB8ICDos4fmlpnnianku7YKKyMgICBicmFuY2ggICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDliIbmlK8KKyMgICBidW5kbGUgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDljIUKKyMgICBieXBhc3MgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDnuZ7pgY4KKyMgICBjYWNoZSAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDntKLlvJXvvIjnmoTliKXnqLHvvIkKKyMgICBjaGFpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDvvIjmj5DkuqTvvInpj4gKKyMgICBjaGFuZ2VzZXQgICAgICAgICAgICAgICAgICAgICAgICB8ICDorormm7Tpm4YKKyMgICBjaGVja291dCAgICAgICAgICAgICAgICAgICAgICAgICB8ICDnsL3lh7oKKyMgICBjaGVja3N1bSAgICAgICAgICAgICAgICAgICAgICAgICB8ICDmoKHpqZfvvIzmoKHpqZflkowKKyMgICBjaGVycnktcGlja2luZyAgICAgICAgICAgICAgICAgICB8ICDmj4DpgbgKKyMgICBjbGVhbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDkub7mt6jvvIjnmoTlt6XkvZzljYDvvIkKKyMgICBjbG9uZSAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDopIfoo70KKyMgICBjb21taXQgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDmj5DkuqQKKyMgICBjb21taXQgbWVzc2FnZSAgICAgICAgICAgICAgICAgICB8ICDmj5DkuqToqqrmmI4KKyMgICBjb21taXQgb2JqZWN0ICAgICAgICAgICAgICAgICAgICB8ICDmj5DkuqTnianku7YKKyMgICBjb21taXQtaXNoIChhbHNvIGNvbW1pdHRpc2gpICAgICB8ICDmj5DkuqTomZ8KKyMgICBjb25mbGljdCAgICAgICAgICAgICAgICAgICAgICAgICB8ICDooZ3nqoEKKyMgICBjb3JlIEdpdCAgICAgICAgICAgICAgICAgICAgICAgICB8ICDmoLjlv4MgR2l0IOW3peWFtworIyAgIGNvdmVyIGxldHRlciAgICAgICAgICAgICAgICAgICAgIHwgIOmZhOWHvQorIyAgIERBRyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOacieWQkeeEoeeSsOWclgorIyAgIGRhbmdsaW5nIG9iamVjdCAgICAgICAgICAgICAgICAgIHwgIOaHuOepuueJqeS7tgorIyAgIGRldGFjaGVkIEhFQUQgICAgICAgICAgICAgICAgICAgIHwgIOWIhumboumWi+mgreaMh+aomQorIyAgIGRpcmVjdG9yeSAgICAgICAgICAgICAgICAgICAgICAgIHwgIOebrumMhAorIyAgIGRpcnR5ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOmrku+8iOeahOW3peS9nOWNgO+8iQorIyAgIGR1bWIgSFRUUCBwcm90b2NvbCAgICAgICAgICAgICAgIHwgIOWVniBIVFRQIOWNlOWumgorIyAgIGV2aWwgbWVyZ2UgICAgICAgICAgICAgICAgICAgICAgIHwgIOWjnuWQiOS9te+8iOWQiOS9teW8leWFpeS6hueItuaPkOS6pOaykuacieeahOS/ruaUue+8iQorIyAgIGZhc3QtZm9yd2FyZCAgICAgICAgICAgICAgICAgICAgIHwgIOW/q+i9iQorIyAgIGZldGNoICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOWPluW+lworIyAgIGZpbGUgc3lzdGVtICAgICAgICAgICAgICAgICAgICAgIHwgIOaqlOahiOezu+e1sQorIyAgIGZvcmsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOihjeeUnworIyAgIEdpdCBhcmNoaXZlICAgICAgICAgICAgICAgICAgICAgIHwgIOeJiOacrOW6q++8iOWwjeaWvCBhcmNoIOS9v+eUqOiAhe+8iQorIyAgIGdpdGZpbGUgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGdpdGZpbGXvvIjniYjmnKzluqvpgKPntZDmqpTmoYjvvIkKKyMgICBncmFmdHMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDvvIjmj5DkuqTvvInnp7vmpI0KKyMgICBoYXNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDpm5zmuYrlgLwKKyMgICBIRUFEICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBIRUFE77yI6ZaL6aCt5oyH5qiZ77yM5Lqm5Y2z55uu5YmN5YiG5pSv77yJCisjICAgaGVhZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg6aCt44CB5YiG5pSvCisjICAgaGVhZCByZWYgICAgICAgICAgICAgICAgICAgICAgICAgfCAg5YiG5pSvCisjICAgaGVhZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg5qiZ6aCt6KiK5oGvCisjICAgaG9vayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg5o6b6YmkCisjICAgaHVuayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg5L+u6KOc5qqU54mH5q61CisjICAgaW5kZXggICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg57Si5byVCisjICAgaW5kZXggZW50cnkgICAgICAgICAgICAgICAgICAgICAgfCAg57Si5byV5qKd55uuCisjICAgbG9vc2Ugb2JqZWN0ICAgICAgICAgICAgICAgICAgICAgfCAg6ayG5pWj54mp5Lu2CisjICAgbG9vc2UgcmVmcyAgICAgICAgICAgICAgICAgICAgICAgfCAg6ayG5pWj5byV55SoCisjICAgbWFzdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgbWFzdGVy77yI6aCQ6Kit5YiG5pSv5ZCN77yJCisjICAgbWVyZ2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg5ZCI5L21CisjICAgb2JqZWN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg54mp5Lu2CisjICAgb2JqZWN0IGRhdGFiYXNlICAgICAgICAgICAgICAgICAgfCAg54mp5Lu25bqrCisjICAgb2JqZWN0IGlkZW50aWZpZXIgICAgICAgICAgICAgICAgfCAg54mp5Lu26K2Y5Yil5YWDCisjICAgb2JqZWN0IG5hbWUgICAgICAgICAgICAgICAgICAgICAgfCAg54mp5Lu25ZCN56ixCisjICAgb2JqZWN0IHR5cGUgICAgICAgICAgICAgICAgICAgICAgfCAg54mp5Lu26aGe5Z6LCisjICAgb2N0b3B1cyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg56ug6a2a5byP5ZCI5L2177yI5YWp5YiG5pSv5Lul5LiK55qE5ZCI5L2177yJCisjICAgb3JpZ2luICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgb3JpZ2lu77yI6aCQ6Kit55qE6YGg56uv5ZCN56ix77yJCisjICAgcGFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg5YyFCisjICAgcGFjayBpbmRleCAgICAgICAgICAgICAgICAgICAgICAgfCAg5YyF57Si5byVCisjICAgcGFja2ZpbGUgICAgICAgICAgICAgICAgICAgICAgICAgfCAg5YyF5qqU5qGICisjICAgcGFyZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg54i25o+Q5LqkCisjICAgcGF0Y2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg5L+u6KOc5qqUCisjICAgcGF0aHNwZWMgICAgICAgICAgICAgICAgICAgICAgICAgfCAg6Lev5b6R6KaP5qC8CisjICAgcGF0dGVybiAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg5qih5byPCisjICAgcGlja2F4ZSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg5oyW5o6YCisjICAgcGx1bWJpbmcgICAgICAgICAgICAgICAgICAgICAgICAgfCAg566h5Lu277yIR2l0IOW6leWxpOaguOW/g+aMh+S7pOeahOWIpeeose+8iQorIyAgIHBvcmNlbGFpbiAgICAgICAgICAgICAgICAgICAgICAgIHwgIOeTt+S7tu+8iEdpdCDkuIrlsaTlsIHoo53mjIfku6TnmoTliKXnqLHvvIkKKyMgICBwcmVjaW91cy1vYmplY3RzIHJlcG8gICAgICAgICAgICB8ICDnj43lk4HniYjmnKzluqsKKyMgICBwcnVuZSAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDmuIXpmaQKKyMgICBwdWxsICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDmi4nvvIzmi4nlj5YKKyMgICBwdXNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDmjqjvvIzmjqjpgIEKKyMgICByZWFjaGFibGUgICAgICAgICAgICAgICAgICAgICAgICB8ICDlj6/ku6Xlj5blvpcKKyMgICByZWJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDph43lrprln7rlupUKKyMgICByZWYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDlvJXnlKgKKyMgICByZWZsb2cgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDlvJXnlKjml6XoqowKKyMgICByZWZzcGVjICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDlvJXnlKjopo/moLwKKyMgICByZW1vdGUgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDpgaDnq6/vvIzpgaDnq6/niYjmnKzluqsKKyMgICByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICAgICAgICAgICB8ICDpgaDnq6/ov73ouaTliIbmlK8KKyMgICByZXBsYXkgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDph43mlL4KKyMgICByZXBvICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDniYjmnKzluqsKKyMgICByZXBvc2l0b3J5ICAgICAgICAgICAgICAgICAgICAgICB8ICDniYjmnKzluqsKKyMgICByZXNvbHZlICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDvvIjooZ3nqoHvvInop6PmsboKKyMgICByZXZlcnQgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDpgoTljp/mj5DkuqQKKyMgICByZXZpc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICDniYjmnKwKKyMgICByZXdpbmQgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDpgoTljp8gKEZ1enp5KQorIyAgIFNDTSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOWOn+Wni+eivOeuoeeQhu+8iOW3peWFt++8iQorIyAgIFNIQS0xICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFNIQS0x77yI5a6J5YWo6Zuc5rmK5ryU566X5rOVMe+8iQorIyAgIHNoYWxsb3cgcmVwb3NpdG9yeSAgICAgICAgICAgICAgIHwgIOa3uu+8iOikh+ijve+8ieeJiOacrOW6qworIyAgIHNpZ25lZCB0YWcgICAgICAgICAgICAgICAgICAgICAgIHwgIOewveWQjeaomeexpAorIyAgIHNtYXJ0IEhUVFAgcHJvdG9jb2wgICAgICAgICAgICAgIHwgIOaZuuaFpyBIVFRQIOWNlOWumgorIyAgIHNxdWFzaCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOWjk+e4rgorIyAgIHN0YWdlICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIG4uIOaaq+WtmOWNgO+8iOWNs+e0ouW8le+8iTsgdi4g5pqr5a2YCisjICAgc3Rhc2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgbi4g5YSy6JeP5Y2AOyB2LiDlhLLol48KKyMgICBzdWJtb2R1bGUgICAgICAgICAgICAgICAgICAgICAgICB8ICDlrZDmqKHntYQKKyMgICBzeW1yZWYgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDnrKbomZ/lvJXnlKgKKyMgICB0YWcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBuLiDmqJnnsaQ7IHYuIOaJk+aomeexpAorIyAgIHRhZyBvYmplY3QgICAgICAgICAgICAgICAgICAgICAgIHwgIOaomeexpOeJqeS7tgorIyAgIHRhZ2dlciAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOaJk+aomeexpOiAhQorIyAgIHRvcGljIGJyYW5jaCAgICAgICAgICAgICAgICAgICAgIHwgIOS4u+mhjOWIhuaUrworIyAgIHRyYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOi/vei5pAorIyAgIHRyYWlsZXIgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOWwvumDqOe9suWQjQorIyAgIHRyZWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOaoue+8iOW3peS9nOWNgOaIluaoueeLgOeJqeS7tu+8iQorIyAgIHRyZWUgb2JqZWN0ICAgICAgICAgICAgICAgICAgICAgIHwgIOaoueeLgOeJqeS7tgorIyAgIHRyZWUtaXNoIChhbHNvIHRyZWVpc2gpICAgICAgICAgIHwgIOaoueeLgOeJqeS7tu+8iOaIluWPr+S7peino+aekOeCuuS4gOaoueeLgOeJqeS7tu+8iQorIyAgIHVubWVyZ2VkIGluZGV4ICAgICAgICAgICAgICAgICAgIHwgIOacquWQiOS9tee0ouW8lQorIyAgIHVucGFjayAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOino+WMhQorIyAgIHVucmVhY2hhYmxlIG9iamVjdCAgICAgICAgICAgICAgIHwgIOeEoeazleWPluW+l+eJqeS7tgorIyAgIHVuc3RhZ2UgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOWPlua2iOaaq+WtmAorIyAgIHVwc3RyZWFtICAgICAgICAgICAgICAgICAgICAgICAgIHwgIOS4iua4uAorIyAgIHVwc3RyZWFtIGJyYW5jaCAgICAgICAgICAgICAgICAgIHwgIOS4iua4uOWIhuaUrworIyAgIHdvcmtpbmcgdHJlZSAgICAgICAgICAgICAgICAgICAgIHwgIOW3peS9nOWNgAorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogR2l0XG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IEdpdCBNYWlsaW5nIExpc3QgPGdpdEB2Z2VyLmtlcm5lbC5vcmc+XG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMjAtMDMtMTEgMTU6MjYrMDgwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMjAtMDMtMTUgMDE6NDgrMDgwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogWWktSnl1biBQYW4gPHBhbjkzNDEyQGdtYWlsLmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBDaGluZXNlICh0cmFkaXRpb25hbCkgPHpoLWwxMG5AbGlzdHMubGludXgub3JnLnR3PlxuIgorIkxhbmd1YWdlOiB6aF9UV1xuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlgtWmhDb252ZXJ0ZXI6IOe5geWMluWnrCBkaWN0LWY0YmM2MTdlLXI5MTAgQCAyMDE5LzExLzE2IDIwOjIzOjEyIHwgaHR0cHM6Ly8iCisiemhjb252ZXJ0Lm9yZ1xuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MTsgcGx1cmFsPTA7XG4iCisiWC1HZW5lcmF0b3I6IFBvZWRpdCAyLjNcbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MzY4CisjLCBjLWZvcm1hdAorbXNnaWQgIkh1aCAoJXMpPyIKK21zZ3N0ciAi5Zev77yIJXPvvInvvJ8iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjUyMSBhZGQtaW50ZXJhY3RpdmUuYzo4MjIgc2VxdWVuY2VyLmM6MzEyNAorIzogc2VxdWVuY2VyLmM6MzU2MiBidWlsdGluL3JlYmFzZS5jOjg3NSBidWlsdGluL3JlYmFzZS5jOjE2ODcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjA4NiBidWlsdGluL3JlYmFzZS5jOjIxMzAKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBpbmRleCIKK21zZ3N0ciAi5LiN6IO96K6A5Y+W57Si5byVIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo1NzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyNjkKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Mjk0Cittc2dpZCAiYmluYXJ5IgorbXNnc3RyICLkuozpgLLkvY0iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjYzNCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjI3OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMzIKK21zZ2lkICJub3RoaW5nIgorbXNnc3RyICLnhKEiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjYzNSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjMxNAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDozMjkKK21zZ2lkICJ1bmNoYW5nZWQiCittc2dzdHIgIuaykuacieS/ruaUuSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NjcyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjQzCittc2dpZCAiVXBkYXRlIgorbXNnc3RyICLmm7TmlrAiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY4OSBhZGQtaW50ZXJhY3RpdmUuYzo4NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YWdlICclcyciCittc2dzdHIgIuS4jeiDveaaq+WtmCAnJXMnIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo2OTUgYWRkLWludGVyYWN0aXZlLmM6ODg0IHNlcXVlbmNlci5jOjMzMTcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6ODk5Cittc2dpZCAiY291bGQgbm90IHdyaXRlIGluZGV4IgorbXNnc3RyICLkuI3og73lr6vlhaXntKLlvJUiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjY5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjYyOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAidXBkYXRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInVwZGF0ZWQgJWQgcGF0aHNcbiIKK21zZ3N0clswXSAi5pu05paw5LqGICVkIOWAi+i3r+W+kVxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3MTYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NzgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vdGU6ICVzIGlzIHVudHJhY2tlZCBub3cuXG4iCittc2dzdHIgIuiqquaYju+8miVzIOePvuW3suaIkOeCuuacqui/vei5pOeahOOAglxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3MjEgYXBwbHkuYzo0MTEwIGJ1aWx0aW4vY2hlY2tvdXQuYzoyODEKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFrZV9jYWNoZV9lbnRyeSBmYWlsZWQgZm9yIHBhdGggJyVzJyIKK21zZ3N0ciAi5bCN6Lev5b6RICclcycg55qEIG1ha2VfY2FjaGVfZW50cnkg5YuV5L2c5aSx5pWXIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo3NTEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDo2NTUKK21zZ2lkICJSZXZlcnQiCittc2dzdHIgIumChOWOnyIKKworIzogYWRkLWludGVyYWN0aXZlLmM6NzY3Cittc2dpZCAiQ291bGQgbm90IHBhcnNlIEhFQURee3RyZWV9IgorbXNnc3RyICLkuI3og73op6PmnpAgSEVBRF575qi5fSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODA1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjMxCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJyZXZlcnRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgInJldmVydGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gIumChOWOn+S6hiAlZCDlgIvot6/lvpFcbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODU2IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6Njk1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHVudHJhY2tlZCBmaWxlcy5cbiIKK21zZ3N0ciAi5rKS5pyJ5pyq6L+96Lmk55qE5qqU5qGI44CCXG4iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjg2MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjY4OQorbXNnaWQgIkFkZCB1bnRyYWNrZWQiCittc2dzdHIgIuaWsOWinuacqui/vei5pOeahCIKKworIzogYWRkLWludGVyYWN0aXZlLmM6ODg3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjI1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJhZGRlZCAlZCBwYXRoXG4iCittc2dpZF9wbHVyYWwgImFkZGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gIuWinuWKoOS6hiAlZCDlgIvot6/lvpFcbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHVubWVyZ2VkOiAlcyIKK21zZ3N0ciAi5b+955Wl5pyq5ZCI5L2177yaJXMiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjkyOSBhZGQtcGF0Y2guYzoxNjc1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM2NgorIywgYy1mb3JtYXQKK21zZ2lkICJPbmx5IGJpbmFyeSBmaWxlcyBjaGFuZ2VkLlxuIgorbXNnc3RyICLlj6rmnInkuozpgLLkvY3mqpTmoYjooqvkv67mlLnjgIJcbiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6OTMxIGFkZC1wYXRjaC5jOjE2NzMgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzY4CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGNoYW5nZXMuXG4iCittc2dzdHIgIuaykuacieS/ruaUueOAglxuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzo5MzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzc2Cittc2dpZCAiUGF0Y2ggdXBkYXRlIgorbXNnc3RyICLkv67oo5zmqpTmm7TmlrAiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjk3NCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NTQKK21zZ2lkICJSZXZpZXcgZGlmZiIKK21zZ3N0ciAi5qqi6KaWIGRpZmYiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDIKK21zZ2lkICJzaG93IHBhdGhzIHdpdGggY2hhbmdlcyIKK21zZ3N0ciAi6aGv56S65pyJ6K6K5pu055qE6Lev5b6RIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA0Cittc2dpZCAiYWRkIHdvcmtpbmcgdHJlZSBzdGF0ZSB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIgorbXNnc3RyICLliqDlhaXlt6XkvZzljYDni4DmhYvoh7PmmqvlrZjliJfooagiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMDYKK21zZ2lkICJyZXZlcnQgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIGJhY2sgdG8gdGhlIEhFQUQgdmVyc2lvbiIKK21zZ3N0ciAi6YKE5Y6f5L+u5pS555qE5pqr5a2Y6ZuG6IezIEhFQUQg54mI5pysIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDA4Cittc2dpZCAicGljayBodW5rcyBhbmQgdXBkYXRlIHNlbGVjdGl2ZWx5IgorbXNnc3RyICLmjJHpgbjljYDloYrkuKbpgbjmk4fmgKfmm7TmlrAiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMTAKK21zZ2lkICJ2aWV3IGRpZmYgYmV0d2VlbiBIRUFEIGFuZCBpbmRleCIKK21zZ3N0ciAi5qqi6KaWIEhFQUQg5Y+K57Si5byV5LmL6ZaT55qE5beu55WwIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDEyCittc2dpZCAiYWRkIGNvbnRlbnRzIG9mIHVudHJhY2tlZCBmaWxlcyB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIgorbXNnc3RyICLliqDlhaXmnKrov73ouaTmqpTmoYjnmoTlhaflrrnoh7PmmqvlrZjliJfooagiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjAgYWRkLWludGVyYWN0aXZlLmM6MTA2OQorbXNnaWQgIlByb21wdCBoZWxwOiIKK21zZ3N0ciAi5o+Q56S66Kqq5piO77yaIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDIyCittc2dpZCAic2VsZWN0IGEgc2luZ2xlIGl0ZW0iCittc2dzdHIgIumBuOaTh+WWruS4gOmgheebriIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAyNAorbXNnaWQgInNlbGVjdCBhIHJhbmdlIG9mIGl0ZW1zIgorbXNnc3RyICLpgbjmk4fpoIXnm67nr4TlnI0iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjYKK21zZ2lkICJzZWxlY3QgbXVsdGlwbGUgcmFuZ2VzIgorbXNnc3RyICLpgbjmk4flpJrlgIvnr4TlnI0iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwMjggYWRkLWludGVyYWN0aXZlLmM6MTA3MworbXNnaWQgInNlbGVjdCBpdGVtIGJhc2VkIG9uIHVuaXF1ZSBwcmVmaXgiCittc2dzdHIgIuWfuuaWvOWUr+S4gOWJjee2tOmBuOaTh+mgheebriIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTAzMAorbXNnaWQgInVuc2VsZWN0IHNwZWNpZmllZCBpdGVtcyIKK21zZ3N0ciAi5Y+W5raI6YG45pOH5oyH5a6a6aCF55uuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDMyCittc2dpZCAiY2hvb3NlIGFsbCBpdGVtcyIKK21zZ3N0ciAi6YG45pOH5omA5pyJ6aCF55uuIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMDM0Cittc2dpZCAiKGVtcHR5KSBmaW5pc2ggc2VsZWN0aW5nIgorbXNnc3RyICLvvIjnqbrvvInlrozmiJDpgbjlj5YiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwNzEKK21zZ2lkICJzZWxlY3QgYSBudW1iZXJlZCBpdGVtIgorbXNnc3RyICLpgbjmk4fnt6jomZ/pgY7nmoTpoIXnm64iCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwNzUKK21zZ2lkICIoZW1wdHkpIHNlbGVjdCBub3RoaW5nIgorbXNnc3RyICLvvIjnqbrvvInlhajkuI3pgbjlj5YiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjEwODMgYnVpbHRpbi9jbGVhbi5jOjgyMiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4NTEKK21zZ2lkICIqKiogQ29tbWFuZHMgKioqIgorbXNnc3RyICIqKiog5oyH5LukICoqKiIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTA4NCBidWlsdGluL2NsZWFuLmM6ODIzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTg0OAorbXNnaWQgIldoYXQgbm93IgorbXNnc3RyICLoq4vpgbjmk4ciCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTMKK21zZ2lkICJzdGFnZWQiCittc2dzdHIgIuW/q+WPliIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTEzNiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjIxMworbXNnaWQgInVuc3RhZ2VkIgorbXNnc3RyICLmnKrlv6vlj5YiCisKKyM6IGFkZC1pbnRlcmFjdGl2ZS5jOjExMzYgYXBwbHkuYzo0OTY3IGFwcGx5LmM6NDk3MCBidWlsdGluL2FtLmM6MjI1MQorIzogYnVpbHRpbi9hbS5jOjIyNTQgYnVpbHRpbi9jbG9uZS5jOjEyMyBidWlsdGluL2ZldGNoLmM6MTQ0CisjOiBidWlsdGluL21lcmdlLmM6Mjc0IGJ1aWx0aW4vcHVsbC5jOjE4OSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDUKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTQ4IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MjEzCittc2dpZCAicGF0aCIKK21zZ3N0ciAi6Lev5b6RIgorCisjOiBhZGQtaW50ZXJhY3RpdmUuYzoxMTQzCittc2dpZCAiY291bGQgbm90IHJlZnJlc2ggaW5kZXgiCittc2dzdHIgIueEoeazlemHjeaWsOaVtOeQhue0ouW8lSIKKworIzogYWRkLWludGVyYWN0aXZlLmM6MTE1NyBidWlsdGluL2NsZWFuLmM6Nzg3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc2NQorIywgYy1mb3JtYXQKK21zZ2lkICJCeWUuXG4iCittc2dzdHIgIuWGjeimi+OAglxuIgorCisjOiBhZGQtcGF0Y2guYzozMyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MjgKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YWdlIG1vZGUgY2hhbmdlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLmmqvlrZjmqKHlvI/orormm7QgW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjM0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQyOQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuaaq+WtmOWIqumZpOWLleS9nCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDMwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuaaq+WtmOatpOWNgOWhiiBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MzcKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisic3RhZ2luZy4iCittc2dzdHIgIuWmguaenOS/ruijnOaqlOiDveS5vua3qOWcsOWll+eUqO+8jOe3qOi8r+WNgOWhiuWwh+eri+WNs+aomeiomOeCuuaaq+WtmOOAgiIKKworIzogYWRkLXBhdGNoLmM6NDAKK21zZ2lkICIiCisieSAtIHN0YWdlIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFnZSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSDmmqvlrZjmraTljYDloYpcbiIKKyJuIC0g5LiN6KaB5pqr5a2Y5q2k5Y2A5aGKXG4iCisicSAtIOmboumWi+OAguS4jeaaq+WtmOatpOWNgOWhiuWPiuW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImEgLSDmmqvlrZjmraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYpcbiIKKyJkIC0g5LiN5pqr5a2Y5q2k5Y2A5aGK5ZKM5pys5qqU5qGI5Lit5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisKKyM6IGFkZC1wYXRjaC5jOjU0IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzMworIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3Rhc2ggbW9kZSBjaGFuZ2UgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuWEsuiXj+aooeW8j+iuiuabtCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NTUgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDM0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJTdGFzaCBkZWxldGlvbiBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5YSy6JeP5Yiq6Zmk5YuV5L2cIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo1NiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlN0YXNoIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5YSy6JeP5q2k5Y2A5aGKIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo1OAorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJzdGFzaGluZy4iCittc2dzdHIgIuWmguaenOS/ruijnOaqlOiDveS5vua3qOWcsOWll+eUqO+8jOe3qOi8r+WNgOWhiuWwh+eri+WNs+aomeiomOeCuuWEsuiXj+OAgiIKKworIzogYWRkLXBhdGNoLmM6NjEKK21zZ2lkICIiCisieSAtIHN0YXNoIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFzaCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFzaCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSDlhLLol4/mraTljYDloYpcbiIKKyJuIC0g5LiN6KaB5YSy6JeP5q2k5Y2A5aGKXG4iCisicSAtIOmboumWi+OAguS4jeWEsuiXj+atpOWNgOWhiuWPiuW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImEgLSDlhLLol4/mraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYpcbiIKKyJkIC0g5LiN5YSy6JeP5q2k5Y2A5aGK5ZKM5pys5qqU5qGI5Lit5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisKKyM6IGFkZC1wYXRjaC5jOjc3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQzOAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5zdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5Y+W5raI5pqr5a2Y5qih5byP6K6K5pu0IFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo3OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0MzkKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuc3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuWPlua2iOaaq+WtmOWIqumZpOWLleS9nCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6NzkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQwCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJVbnN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5Y+W5raI5pqr5a2Y5q2k5Y2A5aGKIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzo4MQorbXNnaWQgIiIKKyJJZiB0aGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5LCB0aGUgZWRpdGVkIGh1bmsgd2lsbCBpbW1lZGlhdGVseSBiZSBtYXJrZWQgZm9yICIKKyJ1bnN0YWdpbmcuIgorbXNnc3RyICLlpoLmnpzkv67oo5zmqpTog73kub7mt6jlnLDlpZfnlKjvvIznt6jovK/ljYDloYrlsIfnq4vljbPmqJnoqJjngrrmnKrmmqvlrZjjgIIiCisKKyM6IGFkZC1wYXRjaC5jOjg0Cittc2dpZCAiIgorInkgLSB1bnN0YWdlIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmtcbiIKKyJxIC0gcXVpdDsgZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gdW5zdGFnZSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgdW5zdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIOS4jeaaq+WtmOatpOWNgOWhilxuIgorIm4gLSDkuI3opoHkuI3mmqvlrZjmraTljYDloYpcbiIKKyJxIC0g6Zui6ZaL44CC5LiN6KaB5LiN5pqr5a2Y5q2k5Y2A5aGK5Y+K5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisiYSAtIOS4jeaaq+WtmOatpOWNgOWhiuWSjOacrOaqlOahiOS4reW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImQgLSDkuI3opoHkuI3mmqvlrZjmraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYpcbiIKKworIzogYWRkLXBhdGNoLmM6OTkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5bCH5qih5byP6K6K5pu05aWX55So5Yiw57Si5byVIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMDAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBkZWxldGlvbiB0byBpbmRleCBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5bCH5Yiq6Zmk5YuV5L2c5aWX55So5Yiw57Si5byVIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxMDEgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDQ1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSB0aGlzIGh1bmsgdG8gaW5kZXggW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuWwh+atpOWNgOWhiuWll+eUqOWIsOe0ouW8lSBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTAzIGFkZC1wYXRjaC5jOjE2OCBhZGQtcGF0Y2guYzoyMTEKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmUgbWFya2VkIGZvciAiCisiYXBwbHlpbmcuIgorbXNnc3RyICLlpoLmnpzkv67oo5zmqpTog73kub7mt6jlnLDlpZfnlKjvvIznt6jovK/ljYDloYrlsIfnq4vljbPmqJnoqJjngrrlpZfnlKjjgIIiCisKKyM6IGFkZC1wYXRjaC5jOjEwNgorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4XG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIOWcqOe0ouW8leS4reWll+eUqOatpOWNgOWhilxuIgorIm4gLSDkuI3opoHlnKjntKLlvJXkuK3lpZfnlKjmraTljYDloYpcbiIKKyJxIC0g6Zui6ZaL44CC5LiN6KaB5aWX55So5q2k5Y2A5aGK5Y+K5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisiYSAtIOWll+eUqOatpOWNgOWhiuWSjOacrOaqlOahiOS4reW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImQgLSDkuI3opoHlpZfnlKjmraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYpcbiIKKworIzogYWRkLXBhdGNoLmM6MTIxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDYzCisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIG1vZGUgY2hhbmdlIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuW+nuW3peS9nOWNgOS4reaNqOajhOaooeW8j+iuiuabtCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTIyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ0OQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY0CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIGRlbGV0aW9uIGZyb20gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuW+nuW3peS9nOWNgOS4reaNqOajhOWIqumZpOWLleS9nCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTIzIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ1MAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDY1CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJEaXNjYXJkIHRoaXMgaHVuayBmcm9tIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLlvp7lt6XkvZzljYDkuK3mjajmo4TmraTljYDloYogW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyNSBhZGQtcGF0Y2guYzoxNDcgYWRkLXBhdGNoLmM6MTkwCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlIG1hcmtlZCBmb3IgIgorImRpc2NhcmRpbmcuIgorbXNnc3RyICLlpoLmnpzkv67oo5zmqpTog73kub7mt6jlnLDlpZfnlKjvvIznt6jovK/ljYDloYrlsIfnq4vljbPmqJnoqJjngrrmjajmo4TjgIIiCisKKyM6IGFkZC1wYXRjaC5jOjEyOCBhZGQtcGF0Y2guYzoxOTMKK21zZ2lkICIiCisieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gZGlzY2FyZCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIOWcqOW3peS9nOWNgOS4reaNqOajhOatpOWNgOWhilxuIgorIm4gLSDkuI3opoHlnKjlt6XkvZzljYDkuK3mjajmo4TmraTljYDloYpcbiIKKyJxIC0g6Zui6ZaL44CC5LiN6KaB5o2o5qOE5q2k5Y2A5aGK5Y+K5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisiYSAtIOaNqOajhOatpOWNgOWhiuWSjOacrOaqlOahiOS4reW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImQgLSDkuI3opoHmjajmo4TmraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYpcbiIKKworIzogYWRkLXBhdGNoLmM6MTQzIGFkZC1wYXRjaC5jOjE4NiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTMKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgbW9kZSBjaGFuZ2UgZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuW+nue0ouW8leWSjOW3peS9nOWNgOS4reaNqOajhOaooeW8j+iuiuabtCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ0IGFkZC1wYXRjaC5jOjE4NyBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTQKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgZGVsZXRpb24gZnJvbSBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuW+nue0ouW8leWSjOW3peS9nOWNgOS4reaNqOajhOWIqumZpCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTQ1IGFkZC1wYXRjaC5jOjE4OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTUKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlIFt5LG4scSxhLGQlcyw/XT8gIgorbXNnc3RyICLlvp7ntKLlvJXlkozlt6XkvZzljYDkuK3mjajmo4TmraTljYDloYogW3ksbixxLGEsZCVzLD9dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjE1MAorbXNnaWQgIiIKKyJ5IC0gZGlzY2FyZCB0aGlzIGh1bmsgZnJvbSBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGRpc2NhcmQgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKK21zZ3N0ciAiIgorInkgLSDlnKjntKLlvJXlkozlt6XkvZzljYDkuK3mjajmo4TmraTljYDloYpcbiIKKyJuIC0g5LiN6KaB5Zyo57Si5byV5ZKM5bel5L2c5Y2A5Lit5o2o5qOE5q2k5Y2A5aGKXG4iCisicSAtIOmboumWi+OAguS4jeimgeaNqOajhOatpOWNgOWhiuWPiuW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImEgLSDmjajmo4TmraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYpcbiIKKyJkIC0g5LiN6KaB5o2o5qOE5q2k5Y2A5aGK5ZKM5pys5qqU5qGI5Lit5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisKKyM6IGFkZC1wYXRjaC5jOjE2NCBhZGQtcGF0Y2guYzoyMDcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDU4CisjLCBjLWZvcm1hdCwgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byBpbmRleCBhbmQgd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuWwh+aooeW8j+iuiuabtOWll+eUqOWIsOe0ouW8leWSjOW3peS9nOWNgCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogYWRkLXBhdGNoLmM6MTY1IGFkZC1wYXRjaC5jOjIwOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NTkKKyMsIGMtZm9ybWF0LCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IGRlbGV0aW9uIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5bCH5Yiq6Zmk5YuV5L2c5aWX55So5Yiw57Si5byV5ZKM5bel5L2c5Y2AIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNjYgYWRkLXBhdGNoLmM6MjA5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2MAorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5bCH5q2k5Y2A5aGK5aWX55So5Yiw57Si5byV5ZKM5bel5L2c5Y2AIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBhZGQtcGF0Y2guYzoxNzEKK21zZ2lkICIiCisieSAtIGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleCBhbmQgd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorbXNnc3RyICIiCisieSAtIOWcqOe0ouW8leWSjOW3peS9nOWNgOS4reWll+eUqOatpOWNgOWhilxuIgorIm4gLSDkuI3opoHlnKjntKLlvJXlkozlt6XkvZzljYDkuK3lpZfnlKjmraTljYDloYpcbiIKKyJxIC0g6Zui6ZaL44CC5LiN6KaB5aWX55So5q2k5Y2A5aGK5Y+K5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisiYSAtIOWll+eUqOatpOWNgOWhiuWSjOacrOaqlOahiOS4reW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImQgLSDkuI3opoHlpZfnlKjmraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYpcbiIKKworIzogYWRkLXBhdGNoLmM6MjE0Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCittc2dzdHIgIiIKKyJ5IC0g5Zyo5bel5L2c5Y2A5Lit5aWX55So5q2k5Y2A5aGKXG4iCisibiAtIOS4jeimgeWcqOW3peS9nOWNgOS4reWll+eUqOatpOWNgOWhilxuIgorInEgLSDpm6LplovjgILkuI3opoHlpZfnlKjmraTljYDloYrlj4rlvozpnaLnmoTlhajpg6jljYDloYpcbiIKKyJhIC0g5aWX55So5q2k5Y2A5aGK5ZKM5pys5qqU5qGI5Lit5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisiZCAtIOS4jeimgeWll+eUqOatpOWNgOWhiuWSjOacrOaqlOahiOS4reW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorCisjOiBhZGQtcGF0Y2guYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGh1bmsgaGVhZGVyICclLipzJyIKK21zZ3N0ciAi54Sh5rOV6Kej5p6Q5Y2A5aGK5qiZ6aCtICclLipzJyIKKworIzogYWRkLXBhdGNoLmM6MzM3IGFkZC1wYXRjaC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29sb3JlZCBodW5rIGhlYWRlciAnJS4qcyciCittc2dzdHIgIueEoeazleino+aekOS4iuiJsumBjueahOWNgOWhiuaomemgrSAnJS4qcyciCisKKyM6IGFkZC1wYXRjaC5jOjM5NQorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBkaWZmIgorbXNnc3RyICLnhKHms5Xop6PmnpDlt67nlbAgKGRpZmYpIgorCisjOiBhZGQtcGF0Y2guYzo0MTQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29sb3JlZCBkaWZmIgorbXNnc3RyICLnhKHms5Xop6PmnpDkuIroibLpgY7nmoTlt67nlbAgKGRpZmYpIgorCisjOiBhZGQtcGF0Y2guYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJ1biAnJXMnIgorbXNnc3RyICLnhKHms5Xln7fooYwgJyVzJyIKKworIzogYWRkLXBhdGNoLmM6NTg3Cittc2dpZCAibWlzbWF0Y2hlZCBvdXRwdXQgZnJvbSBpbnRlcmFjdGl2ZS5kaWZmRmlsdGVyIgorbXNnc3RyICJpbnRlcmFjdGl2ZS5kaWZmRmlsdGVyIOeahOi8uOWHuuS4jeespiIKKworIzogYWRkLXBhdGNoLmM6NTg4Cittc2dpZCAiIgorIllvdXIgZmlsdGVyIG11c3QgbWFpbnRhaW4gYSBvbmUtdG8tb25lIGNvcnJlc3BvbmRlbmNlXG4iCisiYmV0d2VlbiBpdHMgaW5wdXQgYW5kIG91dHB1dCBsaW5lcy4iCittc2dzdHIgIuaCqOeahOmBjua/vuWZqOW/hemgiOWcqOWFtui8uOWFpeWPiui8uOWHuuihjOe2reaMgeS4gOWwjeS4gOeahOWwjeaHiemXnOS/guOAgiIKKworIzogYWRkLXBhdGNoLmM6NzYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJleHBlY3RlZCBjb250ZXh0IGxpbmUgIyVkIGluXG4iCisiJS4qcyIKK21zZ3N0ciAiIgorIuaHieacieS4iuS4i+aWh+ihjCAjJWQg5pa8XG4iCisiJS4qcyIKKworIzogYWRkLXBhdGNoLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJodW5rcyBkbyBub3Qgb3ZlcmxhcDpcbiIKKyIlLipzXG4iCisiXHRkb2VzIG5vdCBlbmQgd2l0aDpcbiIKKyIlLipzIgorbXNnc3RyICIiCisi5Y2A5aGK5pyq6YeN55aK77yaXG4iCisiJS4qc1xuIgorIlx05LiN5Lul5LiL6L+w57WQ5bC+77yaXG4iCisiJS4qcyIKKworIzogYWRkLXBhdGNoLmM6MTA1MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTIKK21zZ2lkICJNYW51YWwgaHVuayBlZGl0IG1vZGUgLS0gc2VlIGJvdHRvbSBmb3IgYSBxdWljayBndWlkZS5cbiIKK21zZ3N0ciAi5omL5YuV5Y2A5aGK57eo6Lyv5qih5byPIC0tIOaqouimluW6lemDqOeahOW/q+mAn+aMh+WNl+OAglxuIgorCisjOiBhZGQtcGF0Y2guYzoxMDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLS1cbiIKKyJUbyByZW1vdmUgJyVjJyBsaW5lcywgbWFrZSB0aGVtICcgJyBsaW5lcyAoY29udGV4dCkuXG4iCisiVG8gcmVtb3ZlICclYycgbGluZXMsIGRlbGV0ZSB0aGVtLlxuIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggJWMgd2lsbCBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIiCisiLS0tXG4iCisi6KaB5Yiq6ZmkICclYycg6ZaL5aeL55qE6KGM77yM5L2/5YW25oiQ54K6ICcgJyDplovlp4vnmoTooYzvvIjkuIrkuIvmlofvvInjgIJcbiIKKyLopoHliKrpmaQgJyVjJyDplovlp4vnmoTooYzvvIzliKrpmaTlroPlgJHjgIJcbiIKKyLku6UgJWMg6ZaL5aeL55qE6KGM5bCH6KKr5Yiq6Zmk44CCXG4iCisKKyMuIFRSQU5TTEFUT1JTOiAnaXQnIHJlZmVycyB0byB0aGUgcGF0Y2ggbWVudGlvbmVkIGluIHRoZSBwcmV2aW91cyBtZXNzYWdlcy4KKyM6IGFkZC1wYXRjaC5jOjEwNzAgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTI2Cittc2dpZCAiIgorIklmIGl0IGRvZXMgbm90IGFwcGx5IGNsZWFubHksIHlvdSB3aWxsIGJlIGdpdmVuIGFuIG9wcG9ydHVuaXR5IHRvXG4iCisiZWRpdCBhZ2Fpbi4gIElmIGFsbCBsaW5lcyBvZiB0aGUgaHVuayBhcmUgcmVtb3ZlZCwgdGhlbiB0aGUgZWRpdCBpc1xuIgorImFib3J0ZWQgYW5kIHRoZSBodW5rIGlzIGxlZnQgdW5jaGFuZ2VkLlxuIgorbXNnc3RyICIiCisi5aaC5p6c5LiN6IO95Lm+5reo5Zyw5aWX55So77yM5oKo5bCH5pyJ5qmf5pyD6YeN5paw57eo6Lyv44CC5aaC5p6c5q2k5Y2A5aGK55qE5YWo6YOo5YWn5a655Yiq6Zmk77yM5YmHXG4iCisi5q2k5qyh57eo6Lyv6KKr57WC5q2i77yM5q2k5Y2A5aGK5LiN5pyD6KKr5L+u5pS544CCXG4iCisKKyM6IGFkZC1wYXRjaC5jOjExMDMKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgaHVuayBoZWFkZXIiCittc2dzdHIgIueEoeazleino+aekOWNgOWhiuaomemgrSIKKworIzogYWRkLXBhdGNoLmM6MTE0OAorbXNnaWQgIidnaXQgYXBwbHkgLS1jYWNoZWQnIGZhaWxlZCIKK21zZ3N0ciAi44CMZ2l0IGFwcGx5IC0tY2FjaGVk44CN5aSx5pWXIgorCisjLiBUUkFOU0xBVE9SUzogZG8gbm90IHRyYW5zbGF0ZSBbeS9uXQorIy4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCB0aGF0IGlucHV0IGF0IHRoaXMgcG9pbnQuCisjLiBDb25zaWRlciB0cmFuc2xhdGluZyAoc2F5aW5nICJubyIgZGlzY2FyZHMhKSBhcworIy4gKHNheWluZyAibiIgZm9yICJubyIgZGlzY2FyZHMhKSBpZiB0aGUgdHJhbnNsYXRpb24KKyMuIG9mIHRoZSB3b3JkICJubyIgZG9lcyBub3Qgc3RhcnQgd2l0aCBuLgorIy4KKyMuIFRSQU5TTEFUT1JTOiBkbyBub3QgdHJhbnNsYXRlIFt5L25dCisjLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IHRoYXQgaW5wdXQKKyMuIGF0IHRoaXMgcG9pbnQuCisjLiBDb25zaWRlciB0cmFuc2xhdGluZyAoc2F5aW5nICJubyIgZGlzY2FyZHMhKSBhcworIy4gKHNheWluZyAibiIgZm9yICJubyIgZGlzY2FyZHMhKSBpZiB0aGUgdHJhbnNsYXRpb24KKyMuIG9mIHRoZSB3b3JkICJubyIgZG9lcyBub3Qgc3RhcnQgd2l0aCBuLgorIzogYWRkLXBhdGNoLmM6MTIxOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyMzkKK21zZ2lkICIiCisiWW91ciBlZGl0ZWQgaHVuayBkb2VzIG5vdCBhcHBseS4gRWRpdCBhZ2FpbiAoc2F5aW5nIFwibm9cIiBkaXNjYXJkcyEpIFt5L25dPyAiCittc2dzdHIgIuaCqOeahOe3qOi8r+WhiuS4jeiDveiiq+aHieeUqOOAgumHjeaWsOe3qOi8r++8iOmBuOaThyBcIm5vXCIg5o2o5qOE77yB77yJIFt5L25dPyAiCisKKyM6IGFkZC1wYXRjaC5jOjEyNjEKK21zZ2lkICJUaGUgc2VsZWN0ZWQgaHVua3MgZG8gbm90IGFwcGx5IHRvIHRoZSBpbmRleCEiCittc2dzdHIgIumBuOWPlueahOWNgOWhiuS4jeacg+Wll+eUqOmAsue0ouW8le+8gSIKKworIzogYWRkLXBhdGNoLmM6MTI2MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNDMKK21zZ2lkICJBcHBseSB0aGVtIHRvIHRoZSB3b3JrdHJlZSBhbnl3YXk/ICIKK21zZ3N0ciAi54Sh6KuW5aaC5L2V6YO96KaB5aWX55So5Yiw5bel5L2c5Y2A5ZeO77yfIgorCisjOiBhZGQtcGF0Y2guYzoxMjY5IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTM0NgorbXNnaWQgIk5vdGhpbmcgd2FzIGFwcGxpZWQuXG4iCittc2dzdHIgIuacquWll+eUqOOAglxuIgorCisjOiBhZGQtcGF0Y2guYzoxMzI2Cittc2dpZCAiIgorImogLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgbmV4dCB1bmRlY2lkZWQgaHVua1xuIgorIkogLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgbmV4dCBodW5rXG4iCisiayAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBwcmV2aW91cyB1bmRlY2lkZWQgaHVua1xuIgorIksgLSBsZWF2ZSB0aGlzIGh1bmsgdW5kZWNpZGVkLCBzZWUgcHJldmlvdXMgaHVua1xuIgorImcgLSBzZWxlY3QgYSBodW5rIHRvIGdvIHRvXG4iCisiLyAtIHNlYXJjaCBmb3IgYSBodW5rIG1hdGNoaW5nIHRoZSBnaXZlbiByZWdleFxuIgorInMgLSBzcGxpdCB0aGUgY3VycmVudCBodW5rIGludG8gc21hbGxlciBodW5rc1xuIgorImUgLSBtYW51YWxseSBlZGl0IHRoZSBjdXJyZW50IGh1bmtcbiIKKyI/IC0gcHJpbnQgaGVscFxuIgorbXNnc3RyICIiCisiaiAtIOe2reaMgeatpOWNgOWhiuacquaxuueLgOaFi++8jOaqouimluS4i+S4gOWAi+acquaxuuWumuWNgOWhilxuIgorIkogLSDntq3mjIHmraTljYDloYrmnKrmsbrni4DmhYvvvIzmqqLoppbkuIvkuIDlgIvljYDloYpcbiIKKyJrIC0g57at5oyB5q2k5Y2A5aGK5pyq5rG654uA5oWL77yM5qqi6KaW5LiK5LiA5YCL5pyq5rG65a6a5Y2A5aGKXG4iCisiSyAtIOe2reaMgeatpOWNgOWhiuacquaxuueLgOaFi++8jOaqouimluS4iuS4gOWAi+WNgOWhilxuIgorImcgLSDpgbjmk4fopoHot7PovYnoh7PnmoTljYDloYpcbiIKKyIvIC0g5bCL5om+56ym5ZCI5o+Q5L6b5LmL5q2j6KaP6KGo56S65byP55qE5Y2A5aGKXG4iCisicyAtIOWIhuWJsuebruWJjeWNgOWhiueCuuabtOWwj+eahOWNgOWhilxuIgorImUgLSDmiYvli5Xnt6jovK/nm67liY3ljYDloYpcbiIKKyI/IC0g6aGv56S66Kqq5piOXG4iCisKKyM6IGFkZC1wYXRjaC5jOjE0NDcgYWRkLXBhdGNoLmM6MTQ1NworbXNnaWQgIk5vIHByZXZpb3VzIGh1bmsiCittc2dzdHIgIuaykuacieS4iuS4gOWAi+WNgOWhiiIKKworIzogYWRkLXBhdGNoLmM6MTQ1MiBhZGQtcGF0Y2guYzoxNDYyCittc2dpZCAiTm8gbmV4dCBodW5rIgorbXNnc3RyICLmspLmnInkuIvkuIDlgIvljYDloYoiCisKKyM6IGFkZC1wYXRjaC5jOjE0NjgKK21zZ2lkICJObyBvdGhlciBodW5rcyB0byBnb3RvIgorbXNnc3RyICLmspLmnInlhbblroPlj6/kvpvot7PovYnnmoTljYDloYoiCisKKyM6IGFkZC1wYXRjaC5jOjE0NzkgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNTc3Cittc2dpZCAiZ28gdG8gd2hpY2ggaHVuayAoPHJldD4gdG8gc2VlIG1vcmUpPyAiCittc2dzdHIgIui3s+i9ieWIsOWTquWAi+WNgOWhiu+8iDxFbnRlcj4g5qqi6KaW5pu05aSa77yJ77yfICIKKworIzogYWRkLXBhdGNoLmM6MTQ4MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzkKK21zZ2lkICJnbyB0byB3aGljaCBodW5rPyAiCittc2dzdHIgIui3s+i9ieWIsOWTquWAi+WNgOWhiu+8nyIKKworIzogYWRkLXBhdGNoLmM6MTQ5MQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIG51bWJlcjogJyVzJyIKK21zZ3N0ciAi54Sh5pWI5pW45a2X77yaJyVzJyIKKworIzogYWRkLXBhdGNoLmM6MTQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJTb3JyeSwgb25seSAlZCBodW5rIGF2YWlsYWJsZS4iCittc2dpZF9wbHVyYWwgIlNvcnJ5LCBvbmx5ICVkIGh1bmtzIGF2YWlsYWJsZS4iCittc2dzdHJbMF0gIuWwjeS4jei1t++8jOWPquaciSAlZCDlgIvlj6/nlKjljYDloYrjgIIiCisKKyM6IGFkZC1wYXRjaC5jOjE1MDUKK21zZ2lkICJObyBvdGhlciBodW5rcyB0byBzZWFyY2giCittc2dzdHIgIuaykuacieWFtuWug+WPr+S+m+Wwi+aJvueahOWNgOWhiiIKKworIzogYWRkLXBhdGNoLmM6MTUxMSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MjMKK21zZ2lkICJzZWFyY2ggZm9yIHJlZ2V4PyAiCittc2dzdHIgIuS9v+eUqOato+imj+ihqOekuuW8j+aQnOWwi++8nyIKKworIzogYWRkLXBhdGNoLmM6MTUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJNYWxmb3JtZWQgc2VhcmNoIHJlZ2V4cCAlczogJXMiCittc2dzdHIgIumMr+iqpOeahOato+imj+ihqOekuuW8jyAlc++8miVzIgorCisjOiBhZGQtcGF0Y2guYzoxNTQzCittc2dpZCAiTm8gaHVuayBtYXRjaGVzIHRoZSBnaXZlbiBwYXR0ZXJuIgorbXNnc3RyICLmspLmnInlkozmj5DkvpvmqKHlvI/nm7jnrKblkIjnmoTljYDloYoiCisKKyM6IGFkZC1wYXRjaC5jOjE1NTAKK21zZ2lkICJTb3JyeSwgY2Fubm90IHNwbGl0IHRoaXMgaHVuayIKK21zZ3N0ciAi5bCN5LiN6LW377yM5LiN6IO95YiG5Ymy6YCZ5YCL5Y2A5aGKIgorCisjOiBhZGQtcGF0Y2guYzoxNTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIlNwbGl0IGludG8gJWQgaHVua3MuIgorbXNnc3RyICLliIblibLngrogJWQg5aGK44CCIgorCisjOiBhZGQtcGF0Y2guYzoxNTU4Cittc2dpZCAiU29ycnksIGNhbm5vdCBlZGl0IHRoaXMgaHVuayIKK21zZ3N0ciAi5bCN5LiN6LW377yM5LiN6IO957eo6Lyv6YCZ5YCL5Y2A5aGKIgorCisjOiBhZGQtcGF0Y2guYzoxNjA5Cittc2dpZCAiJ2dpdCBhcHBseScgZmFpbGVkIgorbXNnc3RyICInZ2l0IGFwcGx5JyDlpLHmlZciCisKKyM6IGFkdmljZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIlc2hpbnQ6ICUuKnMlc1xuIgorbXNnc3RyICIlc+aPkOekuu+8miUuKnMlc1xuIgorCisjOiBhZHZpY2UuYzoxNjgKK21zZ2lkICJDaGVycnktcGlja2luZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCittc2dzdHIgIueEoeazleaPgOmBuO+8jOWboOeCuuaCqOacieacquWQiOS9teeahOaqlOahiOOAgiIKKworIzogYWR2aWNlLmM6MTcwCittc2dpZCAiQ29tbWl0dGluZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCittc2dzdHIgIueEoeazleaPkOS6pO+8jOWboOeCuuaCqOacieacquWQiOS9teeahOaqlOahiOOAgiIKKworIzogYWR2aWNlLmM6MTcyCittc2dpZCAiTWVyZ2luZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCittc2dzdHIgIueEoeazleWQiOS9te+8jOWboOeCuuaCqOacieacquWQiOS9teeahOaqlOahiOOAgiIKKworIzogYWR2aWNlLmM6MTc0Cittc2dpZCAiUHVsbGluZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iCittc2dzdHIgIueEoeazleaLieWPlu+8jOWboOeCuuaCqOacieacquWQiOS9teeahOaqlOahiOOAgiIKKworIzogYWR2aWNlLmM6MTc2Cittc2dpZCAiUmV2ZXJ0aW5nIGlzIG5vdCBwb3NzaWJsZSBiZWNhdXNlIHlvdSBoYXZlIHVubWVyZ2VkIGZpbGVzLiIKK21zZ3N0ciAi54Sh5rOV6YKE5Y6f5o+Q5Lqk77yM5Zug54K65oKo5pyJ5pyq5ZCI5L2155qE5qqU5qGI44CCIgorCisjOiBhZHZpY2UuYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiSXQgaXMgbm90IHBvc3NpYmxlIHRvICVzIGJlY2F1c2UgeW91IGhhdmUgdW5tZXJnZWQgZmlsZXMuIgorbXNnc3RyICLnhKHms5UgJXPvvIzlm6DngrrmgqjmnInmnKrlkIjkvbXnmoTmqpTmoYjjgIIiCisKKyM6IGFkdmljZS5jOjE4NgorbXNnaWQgIiIKKyJGaXggdGhlbSB1cCBpbiB0aGUgd29yayB0cmVlLCBhbmQgdGhlbiB1c2UgJ2dpdCBhZGQvcm0gPGZpbGU+J1xuIgorImFzIGFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbiBhbmQgbWFrZSBhIGNvbW1pdC4iCittc2dzdHIgIiIKKyLoq4vlnKjlt6XkvZzljYDmlLnmraPmqpTmoYjvvIznhLblvozphYzmg4Xkvb/nlKggJ2dpdCBhZGQvcm0gPOaqlOahiD4nIOaMh+S7pOaomeiomFxuIgorIuino+axuuaWueahiOS4puaPkOS6pOOAgiIKKworIzogYWR2aWNlLmM6MTk0Cittc2dpZCAiRXhpdGluZyBiZWNhdXNlIG9mIGFuIHVucmVzb2x2ZWQgY29uZmxpY3QuIgorbXNnc3RyICLlm6DngrrlrZjlnKjmnKrop6PmsbrnmoTooZ3nqoHogIzpm6LplovjgIIiCisKKyM6IGFkdmljZS5jOjE5OSBidWlsdGluL21lcmdlLmM6MTMzNQorbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBtZXJnZSAoTUVSR0VfSEVBRCBleGlzdHMpLiIKK21zZ3N0ciAi5oKo5bCa5pyq57WQ5p2f5oKo55qE5ZCI5L2177yI5a2Y5ZyoIE1FUkdFX0hFQUTvvInjgIIiCisKKyM6IGFkdmljZS5jOjIwMQorbXNnaWQgIlBsZWFzZSwgY29tbWl0IHlvdXIgY2hhbmdlcyBiZWZvcmUgbWVyZ2luZy4iCittc2dzdHIgIuiri+WcqOWQiOS9teWJjeWFiOaPkOS6pOaCqOeahOS/ruaUueOAgiIKKworIzogYWR2aWNlLmM6MjAyCittc2dpZCAiRXhpdGluZyBiZWNhdXNlIG9mIHVuZmluaXNoZWQgbWVyZ2UuIgorbXNnc3RyICLlm6DngrrlrZjlnKjmnKrlrozmiJDnmoTlkIjkvbXogIzpm6LplovjgIIiCisKKyM6IGFkdmljZS5jOjIwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTm90ZTogc3dpdGNoaW5nIHRvICclcycuXG4iCisiXG4iCisiWW91IGFyZSBpbiAnZGV0YWNoZWQgSEVBRCcgc3RhdGUuIFlvdSBjYW4gbG9vayBhcm91bmQsIG1ha2UgZXhwZXJpbWVudGFsXG4iCisiY2hhbmdlcyBhbmQgY29tbWl0IHRoZW0sIGFuZCB5b3UgY2FuIGRpc2NhcmQgYW55IGNvbW1pdHMgeW91IG1ha2UgaW4gdGhpc1xuIgorInN0YXRlIHdpdGhvdXQgaW1wYWN0aW5nIGFueSBicmFuY2hlcyBieSBzd2l0Y2hpbmcgYmFjayB0byBhIGJyYW5jaC5cbiIKKyJcbiIKKyJJZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBuZXcgYnJhbmNoIHRvIHJldGFpbiBjb21taXRzIHlvdSBjcmVhdGUsIHlvdSBtYXlcbiIKKyJkbyBzbyAobm93IG9yIGxhdGVyKSBieSB1c2luZyAtYyB3aXRoIHRoZSBzd2l0Y2ggY29tbWFuZC4gRXhhbXBsZTpcbiIKKyJcbiIKKyIgIGdpdCBzd2l0Y2ggLWMgPG5ldy1icmFuY2gtbmFtZT5cbiIKKyJcbiIKKyJPciB1bmRvIHRoaXMgb3BlcmF0aW9uIHdpdGg6XG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1cbiIKKyJcbiIKKyJUdXJuIG9mZiB0aGlzIGFkdmljZSBieSBzZXR0aW5nIGNvbmZpZyB2YXJpYWJsZSBhZHZpY2UuZGV0YWNoZWRIZWFkIHRvICIKKyJmYWxzZVxuIgorIlxuIgorbXNnc3RyICIiCisi5rOo5oSP77ya5q2j5Zyo5YiH5o+b5YiwICclcyfjgIJcbiIKKyJcbiIKKyLmgqjmraPomZXmlrzliIbpm6LplovpoK3mjIfmqJnni4DmhYvjgILmgqjlj6/ku6XmqqLoppbjgIHlgZrlr6bpqZfmgKfnmoTkv67mlLnlj4rmj5DkuqTvvIzkuKbkuJTmgqjlj6/ku6XlnKjliIciCisi5o+bXG4iCisi5Zue5LiA5YCL5YiG5pSv5pmC77yM5o2o5qOE5Zyo5q2k54uA5oWL5LiL5omA5YGa55qE5o+Q5Lqk6ICM5LiN5bCN5YiG5pSv6YCg5oiQ5b2x6Z+/44CCXG4iCisiXG4iCisi5aaC5p6c5oKo5oOz6KaB6YCP6YGO5bu656uL5YiG5pSv5L6G5L+d55WZ5Zyo5q2k54uA5oWL5LiL5omA5YGa55qE5o+Q5Lqk77yM5oKo5Y+v5Lul6YCP6YGO5ZyoIHN3aXRjaCDmjIfku6RcbiIKKyLkuK3mlrDlop7lj4PmlbggLWMg5L6G5a+m54++77yI54++5Zyo5oiW56iN5b6M77yJ44CC5L6L5aaC77yaXG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1jIDzmlrDliIbmlK/lkI0+XG4iCisiXG4iCisi5oiW6ICF5b6p5Y6f5q2k5YuV5L2c77yaXG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1cbiIKKyJcbiIKKyLpgI/pgY7lsIfoqK3lrprorormlbggYWR2aWNlLmRldGFjaGVkSGVhZCDoqK3lrprngrogZmFsc2Ug5L6G6Zec6ZaJ5q2k5bu66K2wXG4iCisiXG4iCisKKyM6IGFsaWFzLmM6NTAKK21zZ2lkICJjbWRsaW5lIGVuZHMgd2l0aCBcXCIKK21zZ3N0ciAi5oyH5Luk5YiX5LulIFxcIOe1kOWwviIKKworIzogYWxpYXMuYzo1MQorbXNnaWQgInVuY2xvc2VkIHF1b3RlIgorbXNnc3RyICLmnKrplonlkIjnmoTlvJXomZ8iCisKKyM6IGFwcGx5LmM6NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIHdoaXRlc3BhY2Ugb3B0aW9uICclcyciCittc2dzdHIgIuacquiDveitmOWIpeeahOepuueZveWtl+WFg+mBuOmghSAnJXMnIgorCisjOiBhcHBseS5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCB3aGl0ZXNwYWNlIGlnbm9yZSBvcHRpb24gJyVzJyIKK21zZ3N0ciAi5pyq6IO96K2Y5Yil55qE56m655m95a2X5YWD5b+955Wl6YG46aCFICclcyciCisKKyM6IGFwcGx5LmM6MTM1Cittc2dpZCAiLS1yZWplY3QgYW5kIC0tM3dheSBjYW5ub3QgYmUgdXNlZCB0b2dldGhlci4iCittc2dzdHIgIi0tcmVqZWN0IOWSjCAtLTN3YXkg5LiN6IO95ZCM5pmC5L2/55So44CCIgorCisjOiBhcHBseS5jOjEzNworbXNnaWQgIi0tY2FjaGVkIGFuZCAtLTN3YXkgY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIuIgorbXNnc3RyICItLWNhY2hlZCDlkowgLS0zd2F5IOS4jeiDveWQjOaZguS9v+eUqOOAgiIKKworIzogYXBwbHkuYzoxNDAKK21zZ2lkICItLTN3YXkgb3V0c2lkZSBhIHJlcG9zaXRvcnkiCittc2dzdHIgIi0tM3dheSDlnKjniYjmnKzluqvkuYvlpJYiCisKKyM6IGFwcGx5LmM6MTUxCittc2dpZCAiLS1pbmRleCBvdXRzaWRlIGEgcmVwb3NpdG9yeSIKK21zZ3N0ciAiLS1pbmRleCDlnKjniYjmnKzluqvkuYvlpJYiCisKKyM6IGFwcGx5LmM6MTU0Cittc2dpZCAiLS1jYWNoZWQgb3V0c2lkZSBhIHJlcG9zaXRvcnkiCittc2dzdHIgIi0tY2FjaGVkIOWcqOeJiOacrOW6q+S5i+WkliIKKworIzogYXBwbHkuYzo4MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHByZXBhcmUgdGltZXN0YW1wIHJlZ2V4cCAlcyIKK21zZ3N0ciAi54Sh5rOV5rqW5YKZ5pmC6ZaT5oiz5q2j6KaP6KGo56S65byPICVzIgorCisjOiBhcHBseS5jOjgxMAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWdleGVjIHJldHVybmVkICVkIGZvciBpbnB1dDogJXMiCittc2dzdHIgInJlZ2V4ZWMg6L+U5ZueICVk77yM6Ly45YWl54K677yaJXMiCisKKyM6IGFwcGx5LmM6ODg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaW5kIGZpbGVuYW1lIGluIHBhdGNoIGF0IGxpbmUgJWQiCittc2dzdHIgIuS4jeiDveWcqOS/ruijnOaqlOeahOesrCAlZCDooYzmib7liLDmqpTmoYjlkI0iCisKKyM6IGFwcGx5LmM6OTIyCisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gZXhwZWN0ZWQgL2Rldi9udWxsLCBnb3QgJXMgb24gbGluZSAlZCIKK21zZ3N0ciAiZ2l0IGFwcGx577ya6Yyv6Kqk55qEIGdpdC1kaWZmIC0g5oeJ54K6IC9kZXYvbnVsbO+8jOS9huWcqOesrCAlMiRkIOihjOW+l+WIsCAlMSRzIgorCisjOiBhcHBseS5jOjkyOAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgYXBwbHk6IGJhZCBnaXQtZGlmZiAtIGluY29uc2lzdGVudCBuZXcgZmlsZW5hbWUgb24gbGluZSAlZCIKK21zZ3N0ciAiZ2l0IGFwcGx577ya6Yyv6Kqk55qEIGdpdC1kaWZmIC0g56ysICVkIOihjOS4iuaWsOaqlOahiOWQjeS4jeS4gOiHtCIKKworIzogYXBwbHkuYzo5MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGFwcGx5OiBiYWQgZ2l0LWRpZmYgLSBpbmNvbnNpc3RlbnQgb2xkIGZpbGVuYW1lIG9uIGxpbmUgJWQiCittc2dzdHIgImdpdCBhcHBsee+8mumMr+iqpOeahCBnaXQtZGlmZiAtIOesrCAlZCDooYzkuIroiIrmqpTmoYjlkI3kuI3kuIDoh7QiCisKKyM6IGFwcGx5LmM6OTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBhcHBseTogYmFkIGdpdC1kaWZmIC0gZXhwZWN0ZWQgL2Rldi9udWxsIG9uIGxpbmUgJWQiCittc2dzdHIgImdpdCBhcHBsee+8mumMr+iqpOeahCBnaXQtZGlmZiAtIOesrCAlZCDooYzomZXmh4nngrogL2Rldi9udWxsIgorCisjOiBhcHBseS5jOjk2MworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG1vZGUgb24gbGluZSAlZDogJXMiCittc2dzdHIgIuesrCAlZCDooYzljIXlkKvnhKHmlYjmqpTmoYjmqKHlvI/vvJolcyIKKworIzogYXBwbHkuYzoxMjgyCisjLCBjLWZvcm1hdAorbXNnaWQgImluY29uc2lzdGVudCBoZWFkZXIgbGluZXMgJWQgYW5kICVkIgorbXNnc3RyICLkuI3kuIDoh7TnmoTmqpTmoYjpoK3vvIwlZCDooYzlkowgJWQg6KGMIgorCisjOiBhcHBseS5jOjEzNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImdpdCBkaWZmIGhlYWRlciBsYWNrcyBmaWxlbmFtZSBpbmZvcm1hdGlvbiB3aGVuIHJlbW92aW5nICVkIGxlYWRpbmcgcGF0aG5hbWUgIgorImNvbXBvbmVudCAobGluZSAlZCkiCittc2dpZF9wbHVyYWwgIiIKKyJnaXQgZGlmZiBoZWFkZXIgbGFja3MgZmlsZW5hbWUgaW5mb3JtYXRpb24gd2hlbiByZW1vdmluZyAlZCBsZWFkaW5nIHBhdGhuYW1lICIKKyJjb21wb25lbnRzIChsaW5lICVkKSIKK21zZ3N0clswXSAi55W256e76ZmkICVkIOWAi+WJjeWwjui3r+W+keW+jCBnaXQgZGlmZiDpoK3nvLrkuY/mqpTmoYjlkI3oqIrmga/vvIjnrKwgJWQg6KGM77yJIgorCisjOiBhcHBseS5jOjEzODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGRpZmYgaGVhZGVyIGxhY2tzIGZpbGVuYW1lIGluZm9ybWF0aW9uIChsaW5lICVkKSIKK21zZ3N0ciAiZ2l0IGRpZmYg55qE5qiZ6aCt6KiK5oGv5Lit57y65LmP5qqU5qGI5ZCN6KiK5oGv77yI56ysICVkIOihjO+8iSIKKworIzogYXBwbHkuYzoxNDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlY291bnQ6IHVuZXhwZWN0ZWQgbGluZTogJS4qcyIKK21zZ3N0ciAicmVjb3VudO+8muaEj+WklueahOihjO+8miUuKnMiCisKKyM6IGFwcGx5LmM6MTU1MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRjaCBmcmFnbWVudCB3aXRob3V0IGhlYWRlciBhdCBsaW5lICVkOiAlLipzIgorbXNnc3RyICLnrKwgJWQg6KGM55qE5L+u6KOc5qqU54mH5q615rKS5pyJ5qiZ6aCt6KiK5oGv77yaJS4qcyIKKworIzogYXBwbHkuYzoxNzUzCittc2dpZCAibmV3IGZpbGUgZGVwZW5kcyBvbiBvbGQgY29udGVudHMiCittc2dzdHIgIuaWsOaqlOahiOS+neiztOiIiuWFp+WuuSIKKworIzogYXBwbHkuYzoxNzU1Cittc2dpZCAiZGVsZXRlZCBmaWxlIHN0aWxsIGhhcyBjb250ZW50cyIKK21zZ3N0ciAi5Yiq6Zmk55qE5qqU5qGI5LuN5pyJ5YWn5a65IgorCisjOiBhcHBseS5jOjE3ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29ycnVwdCBwYXRjaCBhdCBsaW5lICVkIgorbXNnc3RyICLkv67oo5zmqpTlnKjnrKwgJWQg6KGM55m854++5pCN5aOeIgorCisjOiBhcHBseS5jOjE4MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3IGZpbGUgJXMgZGVwZW5kcyBvbiBvbGQgY29udGVudHMiCittc2dzdHIgIuaWsOaqlOahiCAlcyDkvp3os7ToiIrlhaflrrkiCisKKyM6IGFwcGx5LmM6MTgyOAorIywgYy1mb3JtYXQKK21zZ2lkICJkZWxldGVkIGZpbGUgJXMgc3RpbGwgaGFzIGNvbnRlbnRzIgorbXNnc3RyICLliKrpmaTnmoTmqpTmoYggJXMg5LuN5pyJ5YWn5a65IgorCisjOiBhcHBseS5jOjE4MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiKiogd2FybmluZzogZmlsZSAlcyBiZWNvbWVzIGVtcHR5IGJ1dCBpcyBub3QgZGVsZXRlZCIKK21zZ3N0ciAiKiog6K2m5ZGK77ya5qqU5qGIICVzIOaIkOeCuuepuuaqlOahiOS9huS4puacquWIqumZpCIKKworIzogYXBwbHkuYzoxOTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvcnJ1cHQgYmluYXJ5IHBhdGNoIGF0IGxpbmUgJWQ6ICUuKnMiCittc2dzdHIgIuS6jOmAsuS9jeS/ruijnOaqlOWcqOesrCAlZCDooYzmkI3lo57vvJolLipzIgorCisjOiBhcHBseS5jOjIwMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIGJpbmFyeSBwYXRjaCBhdCBsaW5lICVkIgorbXNnc3RyICLmnKrog73orZjliKXnmoTkuozpgLLkvY3kv67oo5zmqpTkvY3mlrznrKwgJWQg6KGMIgorCisjOiBhcHBseS5jOjIxNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0Y2ggd2l0aCBvbmx5IGdhcmJhZ2UgYXQgbGluZSAlZCIKK21zZ3N0ciAi5L+u6KOc5qqU5qGI55qE56ysICVkIOihjOWPquacieWeg+Wcvuizh+aWmSIKKworIzogYXBwbHkuYzoyMjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHN5bWxpbmsgJXMiCittc2dzdHIgIueEoeazleiugOWPluespuiZn+mAo+e1kCAlcyIKKworIzogYXBwbHkuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9yIHJlYWQgJXMiCittc2dzdHIgIuS4jeiDvemWi+WVn+aIluiugOWPliAlcyIKKworIzogYXBwbHkuYzoyOTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgc3RhcnQgb2YgbGluZTogJyVjJyIKK21zZ3N0ciAi54Sh5pWI55qE6KGM6aaW5a2X5YWD77yaJyVjJyIKKworIzogYXBwbHkuYzozMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgIkh1bmsgIyVkIHN1Y2NlZWRlZCBhdCAlZCAob2Zmc2V0ICVkIGxpbmUpLiIKK21zZ2lkX3BsdXJhbCAiSHVuayAjJWQgc3VjY2VlZGVkIGF0ICVkIChvZmZzZXQgJWQgbGluZXMpLiIKK21zZ3N0clswXSAi5Y2A5aGKICMlZCDmiJDlip/lpZfnlKjmlrwgJWTvvIjkvY3np7sgJWQg6KGM77yJIgorCisjOiBhcHBseS5jOjMwNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29udGV4dCByZWR1Y2VkIHRvICglbGQvJWxkKSB0byBhcHBseSBmcmFnbWVudCBhdCAlZCIKK21zZ3N0ciAi5LiK5LiL5paH5rib5bCR5Yiw77yIJWxkLyVsZO+8ieS7peWcqOesrCAlZCDooYzlpZfnlKjkv67oo5zmqpTniYfmrrUiCisKKyM6IGFwcGx5LmM6MzA3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgc2VhcmNoaW5nIGZvcjpcbiIKKyIlLipzIgorbXNnc3RyICIiCisi55W25p+l6Kmi77yaXG4iCisiJS4qcyIKKworIzogYXBwbHkuYzozMDk3CisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgYmluYXJ5IHBhdGNoIGRhdGEgZm9yICclcyciCittc2dzdHIgIue8uuWwkSAnJXMnIOeahOS6jOmAsuS9jeS/ruijnOaqlOizh+aWmSIKKworIzogYXBwbHkuYzozMTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZXZlcnNlLWFwcGx5IGEgYmluYXJ5IHBhdGNoIHdpdGhvdXQgdGhlIHJldmVyc2UgaHVuayB0byAnJXMnIgorbXNnc3RyICLkuI3og73lj43lkJHlpZfnlKjkuIDlgIvnvLrlsJHliLAgJyVzJyDnmoTlj43lkJHos4fmlpnljYDloYrnmoTkuozpgLLkvY3kv67oo5zmqpQiCisKKyM6IGFwcGx5LmM6MzE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgYXBwbHkgYmluYXJ5IHBhdGNoIHRvICclcycgd2l0aG91dCBmdWxsIGluZGV4IGxpbmUiCittc2dzdHIgIuS4jeiDveWcqCAnJXMnIOS4iuWll+eUqOaykuacieWujOaVtOe0ouW8leihjOeahOS6jOmAsuS9jeS/ruijnOaqlCIKKworIzogYXBwbHkuYzozMTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0aGUgcGF0Y2ggYXBwbGllcyB0byAnJXMnICglcyksIHdoaWNoIGRvZXMgbm90IG1hdGNoIHRoZSBjdXJyZW50IGNvbnRlbnRzLiIKK21zZ3N0ciAi5L+u6KOc5qqU5aWX55So5YiwICclcyfvvIglc++8ie+8jOS9huaYr+WSjOebruWJjeWFp+WuueS4jeespuWQiOOAgiIKKworIzogYXBwbHkuYzozMTcxCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZSBwYXRjaCBhcHBsaWVzIHRvIGFuIGVtcHR5ICclcycgYnV0IGl0IGlzIG5vdCBlbXB0eSIKK21zZ3N0ciAi5L+u6KOc5qqU5aWX55So5Yiw56m65qqU5qGIICclcyfvvIzkvYblhbbkuKbpnZ7nqbrmqpTmoYgiCisKKyM6IGFwcGx5LmM6MzE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGUgbmVjZXNzYXJ5IHBvc3RpbWFnZSAlcyBmb3IgJyVzJyBjYW5ub3QgYmUgcmVhZCIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+WICclMiRzJyDlv4XpnIDnmoTnm67mqJnmqpTmoYggJTEkcyIKKworIzogYXBwbHkuYzozMjAyCisjLCBjLWZvcm1hdAorbXNnaWQgImJpbmFyeSBwYXRjaCBkb2VzIG5vdCBhcHBseSB0byAnJXMnIgorbXNnc3RyICLkuozpgLLkvY3kv67oo5zmqpTmnKrlpZfnlKjliLAgJyVzJyIKKworIzogYXBwbHkuYzozMjA5CisjLCBjLWZvcm1hdAorbXNnaWQgImJpbmFyeSBwYXRjaCB0byAnJXMnIGNyZWF0ZXMgaW5jb3JyZWN0IHJlc3VsdCAoZXhwZWN0aW5nICVzLCBnb3QgJXMpIgorbXNnc3RyICLliLAgJyVzJyDnmoTkuozpgLLkvY3kv67oo5zmqpTnlKLnlJ/kuobkuI3mraPnorrnmoTntZDmnpzvvIjmh4nngrogJXPvvIzljbvngrogJXPvvIkiCisKKyM6IGFwcGx5LmM6MzIzMAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRjaCBmYWlsZWQ6ICVzOiVsZCIKK21zZ3N0ciAi5omT5L+u6KOc5qqU5aSx5pWX77yaJXM6JWxkIgorCisjOiBhcHBseS5jOjMzNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNoZWNrb3V0ICVzIgorbXNnc3RyICLkuI3og73nsL3lh7ogJXMiCisKKyM6IGFwcGx5LmM6MzQwNSBhcHBseS5jOjM0MTYgYXBwbHkuYzozNDYyIG1pZHguYzo2MSBzZXR1cC5jOjI5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCAlcyIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+WICVzIgorCisjOiBhcHBseS5jOjM0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZGluZyBmcm9tICclcycgYmV5b25kIGEgc3ltYm9saWMgbGluayIKK21zZ3N0ciAi6K6A5Y+W5L2N5pa856ym6Jmf6YCj57WQ5Lit55qEICclcyciCisKKyM6IGFwcGx5LmM6MzQ0MiBhcHBseS5jOjM2ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAlcyBoYXMgYmVlbiByZW5hbWVkL2RlbGV0ZWQiCittc2dzdHIgIui3r+W+kSAlcyDlt7LntpPooqvph43mlrDlkb3lkI0v5Yiq6ZmkIgorCisjOiBhcHBseS5jOjM1MjggYXBwbHkuYzozNzAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkb2VzIG5vdCBleGlzdCBpbiBpbmRleCIKK21zZ3N0ciAiJXPvvJrkuI3lrZjlnKjmlrzntKLlvJXkuK0iCisKKyM6IGFwcGx5LmM6MzUzNyBhcHBseS5jOjM3MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRvZXMgbm90IG1hdGNoIGluZGV4IgorbXNnc3RyICIlc++8muWSjOe0ouW8leS4jeespuWQiCIKKworIzogYXBwbHkuYzozNTcyCittc2dpZCAicmVwb3NpdG9yeSBsYWNrcyB0aGUgbmVjZXNzYXJ5IGJsb2IgdG8gZmFsbCBiYWNrIG9uIDMtd2F5IG1lcmdlLiIKK21zZ3N0ciAi54mI5pys5bqr57y65LmP5b+F6KaB55qE6LOH5paZ54mp5Lu25Lul6YCy6KGM5LiJ5pa55ZCI5L2144CCIgorCisjOiBhcHBseS5jOjM1NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFsbGluZyBiYWNrIHRvIHRocmVlLXdheSBtZXJnZS4uLlxuIgorbXNnc3RyICLlm57okL3liLDkuInmlrnlkIjkvbUuLi5cbiIKKworIzogYXBwbHkuYzozNTkxIGFwcGx5LmM6MzU5NQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCB0aGUgY3VycmVudCBjb250ZW50cyBvZiAnJXMnIgorbXNnc3RyICLnhKHms5XoroDlj5YgJyVzJyDnmoTnm67liY3lhaflrrkiCisKKyM6IGFwcGx5LmM6MzYwNworIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gZmFsbCBiYWNrIG9uIHRocmVlLXdheSBtZXJnZS4uLlxuIgorbXNnc3RyICLnhKHms5Xlm57okL3liLDkuInmlrnlkIjkvbUuLi5cbiIKKworIzogYXBwbHkuYzozNjIxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFwcGxpZWQgcGF0Y2ggdG8gJyVzJyB3aXRoIGNvbmZsaWN0cy5cbiIKK21zZ3N0ciAi5aWX55So5L+u6KOc5qqU5YiwICclcycg5a2Y5Zyo6KGd56qB44CCXG4iCisKKyM6IGFwcGx5LmM6MzYyNgorIywgYy1mb3JtYXQKK21zZ2lkICJBcHBsaWVkIHBhdGNoIHRvICclcycgY2xlYW5seS5cbiIKK21zZ3N0ciAi5oiQ5Yqf5aWX55So5L+u6KOc5qqU5YiwICclcyfjgIJcbiIKKworIzogYXBwbHkuYzozNjUyCittc2dpZCAicmVtb3ZhbCBwYXRjaCBsZWF2ZXMgZmlsZSBjb250ZW50cyIKK21zZ3N0ciAi56e76Zmk5L+u6KOc5qqU5LuN55WZ5LiL5LqG5qqU5qGI5YWn5a65IgorCisjOiBhcHBseS5jOjM3MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdyb25nIHR5cGUiCittc2dzdHIgIiVz77ya6Yyv6Kqk6aGe5Z6LIgorCisjOiBhcHBseS5jOjM3MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaGFzIHR5cGUgJW8sIGV4cGVjdGVkICVvIgorbXNnc3RyICIlcyDnmoTpoZ7lnovmmK8gJW/vvIzmh4nngrogJW8iCisKKyM6IGFwcGx5LmM6Mzg3OCBhcHBseS5jOjM4ODAgcmVhZC1jYWNoZS5jOjgzMCByZWFkLWNhY2hlLmM6ODU2CisjOiByZWFkLWNhY2hlLmM6MTMyNQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhdGggJyVzJyIKK21zZ3N0ciAi54Sh5pWI6Lev5b6RICclcyciCisKKyM6IGFwcGx5LmM6MzkzNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgiCittc2dzdHIgIiVz77ya5bey57aT5a2Y5Zyo5pa857Si5byV5LitIgorCisjOiBhcHBseS5jOjM5MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGFscmVhZHkgZXhpc3RzIGluIHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICIlc++8muW3sue2k+WtmOWcqOaWvOW3peS9nOWNgOS4rSIKKworIzogYXBwbHkuYzozOTU5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSIKK21zZ3N0ciAiJTIkcyDnmoTmlrDmqKHlvI/vvIglMSRv77yJ5ZKM6IiK5qih5byP77yIJTMkb++8ieS4jeespuWQiCIKKworIzogYXBwbHkuYzozOTY0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyBtb2RlICglbykgb2YgJXMgZG9lcyBub3QgbWF0Y2ggb2xkIG1vZGUgKCVvKSBvZiAlcyIKK21zZ3N0ciAiJTIkcyDnmoTmlrDmqKHlvI/vvIglMSRv77yJ5ZKMICU0JHMg55qE6IiK5qih5byP77yIJTMkb++8ieS4jeespuWQiCIKKworIzogYXBwbHkuYzozOTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImFmZmVjdGVkIGZpbGUgJyVzJyBpcyBiZXlvbmQgYSBzeW1ib2xpYyBsaW5rIgorbXNnc3RyICLlj5flvbHpn7/nmoTmqpTmoYggJyVzJyDkvY3mlrznrKbomZ/pgKPntZDkuK0iCisKKyM6IGFwcGx5LmM6Mzk4OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogcGF0Y2ggZG9lcyBub3QgYXBwbHkiCittc2dzdHIgIiVz77ya5L+u6KOc5qqU5pyq5aWX55SoIgorCisjOiBhcHBseS5jOjQwMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgcGF0Y2ggJXMuLi4iCittc2dzdHIgIuato+WcqOaqouafpeS/ruijnOaqlCAlcy4uLiIKKworIzogYXBwbHkuYzo0MDk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzIGZvciBzdWJtb2R1bGUgJXMiCittc2dzdHIgIuWtkOaooee1hCAlcyDnmoQgc2hhMSDoqIrmga/nvLrlsJHmiJbnhKHmlYgiCisKKyM6IGFwcGx5LmM6NDEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJtb2RlIGNoYW5nZSBmb3IgJXMsIHdoaWNoIGlzIG5vdCBpbiBjdXJyZW50IEhFQUQiCittc2dzdHIgIiVzIOeahOaooeW8j+iuiuabtO+8jOS9huWug+S4jeWcqOebruWJjSBIRUFEIOS4rSIKKworIzogYXBwbHkuYzo0MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgInNoYTEgaW5mb3JtYXRpb24gaXMgbGFja2luZyBvciB1c2VsZXNzICglcykuIgorbXNnc3RyICJzaGExIOioiuaBr+e8uuWwkeaIlueEoeaViO+8iCVz77yJ44CCIgorCisjOiBhcHBseS5jOjQxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGFkZCAlcyB0byB0ZW1wb3JhcnkgaW5kZXgiCittc2dzdHIgIuS4jeiDveWcqOaaq+aZgue0ouW8leS4reaWsOWiniAlcyIKKworIzogYXBwbHkuYzo0MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSB0ZW1wb3JhcnkgaW5kZXggdG8gJXMiCittc2dzdHIgIuS4jeiDveaKiuaaq+aZgue0ouW8leWvq+WFpeWIsCAlcyIKKworIzogYXBwbHkuYzo0MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXMgZnJvbSBpbmRleCIKK21zZ3N0ciAi5LiN6IO95b6e57Si5byV5Lit56e76ZmkICVzIgorCisjOiBhcHBseS5jOjQyOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29ycnVwdCBwYXRjaCBmb3Igc3VibW9kdWxlICVzIgorbXNnc3RyICLlrZDmqKHntYQgJXMg5pCN5aOe55qE5L+u6KOc5qqUIgorCisjOiBhcHBseS5jOjQzMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3bHkgY3JlYXRlZCBmaWxlICclcyciCittc2dzdHIgIuS4jeiDveWwjeW7uueri+aqlOahiCAnJXMnIOWRvOWPqyBzdGF0IgorCisjOiBhcHBseS5jOjQzMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBiYWNraW5nIHN0b3JlIGZvciBuZXdseSBjcmVhdGVkIGZpbGUgJXMiCittc2dzdHIgIuS4jeiDveeCuuW7uueri+aqlOahiCAlcyDlu7rnq4vlvoznq6/lhLLlrZgiCisKKyM6IGFwcGx5LmM6NDMxNiBhcHBseS5jOjQ0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFkZCBjYWNoZSBlbnRyeSBmb3IgJXMiCittc2dzdHIgIueEoeazleeCuiAlcyDmlrDlop7lv6vlj5bmop3nm64iCisKKyM6IGFwcGx5LmM6NDM1OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gJyVzJyIKK21zZ3N0ciAi5a+r5YWlICclcycg5aSx5pWXIgorCisjOiBhcHBseS5jOjQzNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2xvc2luZyBmaWxlICclcyciCittc2dzdHIgIumXnOmWieaqlOahiCAnJXMnIgorCisjOiBhcHBseS5jOjQ0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyBtb2RlICVvIgorbXNnc3RyICLkuI3og73lr6vlhaXmqpTmoYggJyVzJyDmrIrpmZAgJW8iCisKKyM6IGFwcGx5LmM6NDUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJBcHBsaWVkIHBhdGNoICVzIGNsZWFubHkuIgorbXNnc3RyICLmiJDlip/lpZfnlKjkv67oo5zmqpQgJXPjgIIiCisKKyM6IGFwcGx5LmM6NDUzOQorbXNnaWQgImludGVybmFsIGVycm9yIgorbXNnc3RyICLlhafpg6jpjK/oqqQiCisKKyM6IGFwcGx5LmM6NDU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJBcHBseWluZyBwYXRjaCAlJXMgd2l0aCAlZCByZWplY3QuLi4iCittc2dpZF9wbHVyYWwgIkFwcGx5aW5nIHBhdGNoICUlcyB3aXRoICVkIHJlamVjdHMuLi4iCittc2dzdHJbMF0gIuWll+eUqCAlJXMg5YCL5L+u6KOc5qqU77yM5YW25LitICVkIOWAi+iiq+aLkue1lS4uLiIKKworIzogYXBwbHkuYzo0NTUzCisjLCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRpbmcgLnJlaiBmaWxlbmFtZSB0byAlLipzLnJlaiIKK21zZ3N0ciAi5oiq55+tIC5yZWog5qqU5qGI5ZCN54K6ICUuKnMucmVqIgorCisjOiBhcHBseS5jOjQ1NjEgYnVpbHRpbi9mZXRjaC5jOjkwMSBidWlsdGluL2ZldGNoLmM6MTIwMQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiAlcyIKK21zZ3N0ciAi5LiN6IO96ZaL5ZWfICVzIgorCisjOiBhcHBseS5jOjQ1NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiSHVuayAjJWQgYXBwbGllZCBjbGVhbmx5LiIKK21zZ3N0ciAi56ysICMlZCDlgIvniYfmrrXmiJDlip/mh4nnlKjjgIIiCisKKyM6IGFwcGx5LmM6NDU3OQorIywgYy1mb3JtYXQKK21zZ2lkICJSZWplY3RlZCBodW5rICMlZC4iCittc2dzdHIgIuaLkue1leesrCAjJWQg5YCL54mH5q6144CCIgorCisjOiBhcHBseS5jOjQ2OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBlZCBwYXRjaCAnJXMnLiIKK21zZ3N0ciAi55Wl6YGO5L+u6KOc5qqUICclcyfjgIIiCisKKyM6IGFwcGx5LmM6NDcwNgorbXNnaWQgInVucmVjb2duaXplZCBpbnB1dCIKK21zZ3N0ciAi5pyq6IO96K2Y5Yil55qE6Ly45YWlIgorCisjOiBhcHBseS5jOjQ3MjYKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBpbmRleCBmaWxlIgorbXNnc3RyICLnhKHms5XoroDlj5bntKLlvJXmqpTmoYgiCisKKyM6IGFwcGx5LmM6NDg4MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBvcGVuIHBhdGNoICclcyc6ICVzIgorbXNnc3RyICLkuI3og73plovllZ/kv67oo5zmqpQgJyVzJ++8miVzIgorCisjOiBhcHBseS5jOjQ5MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAic3F1ZWxjaGVkICVkIHdoaXRlc3BhY2UgZXJyb3IiCittc2dpZF9wbHVyYWwgInNxdWVsY2hlZCAlZCB3aGl0ZXNwYWNlIGVycm9ycyIKK21zZ3N0clswXSAi5oqR5Yi25LiL5LuN5pyJICVkIOWAi+epuueZveWtl+WFg+iqpOeUqCIKKworIzogYXBwbHkuYzo0OTE2IGFwcGx5LmM6NDkzMQorIywgYy1mb3JtYXQKK21zZ2lkICIlZCBsaW5lIGFkZHMgd2hpdGVzcGFjZSBlcnJvcnMuIgorbXNnaWRfcGx1cmFsICIlZCBsaW5lcyBhZGQgd2hpdGVzcGFjZSBlcnJvcnMuIgorbXNnc3RyWzBdICIlZCDooYzmlrDlop7kuobnqbrnmb3lrZflhYPoqqTnlKjjgIIiCisKKyM6IGFwcGx5LmM6NDkyNAorIywgYy1mb3JtYXQKK21zZ2lkICIlZCBsaW5lIGFwcGxpZWQgYWZ0ZXIgZml4aW5nIHdoaXRlc3BhY2UgZXJyb3JzLiIKK21zZ2lkX3BsdXJhbCAiJWQgbGluZXMgYXBwbGllZCBhZnRlciBmaXhpbmcgd2hpdGVzcGFjZSBlcnJvcnMuIgorbXNnc3RyWzBdICLkv67lvqnnqbrnmb3pjK/oqqTlvozvvIzmh4nnlKjkuoYgJWQg6KGM44CCIgorCisjOiBhcHBseS5jOjQ5NDAgYnVpbHRpbi9hZGQuYzo2MTIgYnVpbHRpbi9tdi5jOjMwMSBidWlsdGluL3JtLmM6NDA2Cittc2dpZCAiVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgorbXNnc3RyICLnhKHms5Xlr6vlhaXmlrDntKLlvJXmqpTmoYgiCisKKyM6IGFwcGx5LmM6NDk2OAorbXNnaWQgImRvbid0IGFwcGx5IGNoYW5nZXMgbWF0Y2hpbmcgdGhlIGdpdmVuIHBhdGgiCittc2dzdHIgIuS4jeimgeaHieeUqOiIh+e1puWHuui3r+W+keWQkeespuWQiOeahOiuiuabtCIKKworIzogYXBwbHkuYzo0OTcxCittc2dpZCAiYXBwbHkgY2hhbmdlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCIKK21zZ3N0ciAi5oeJ55So6IiH57Wm5Ye66Lev5b6R5ZCR56ym5ZCI55qE6K6K5pu0IgorCisjOiBhcHBseS5jOjQ5NzMgYnVpbHRpbi9hbS5jOjIyNjAKK21zZ2lkICJudW0iCittc2dzdHIgIuaVuOWtlyIKKworIzogYXBwbHkuYzo0OTc0Cittc2dpZCAicmVtb3ZlIDxudW0+IGxlYWRpbmcgc2xhc2hlcyBmcm9tIHRyYWRpdGlvbmFsIGRpZmYgcGF0aHMiCittc2dzdHIgIuW+nuWCs+e1seeahCBkaWZmIOi3r+W+keS4reenu+mZpOaMh+WumuaVuOmHj+eahOWJjeWwjuaWnOe3miIKKworIzogYXBwbHkuYzo0OTc3Cittc2dpZCAiaWdub3JlIGFkZGl0aW9ucyBtYWRlIGJ5IHRoZSBwYXRjaCIKK21zZ3N0ciAi5b+955Wl5L+u6KOc5qqU5Lit55qE5paw5aKe55qE5qqU5qGIIgorCisjOiBhcHBseS5jOjQ5NzkKK21zZ2lkICJpbnN0ZWFkIG9mIGFwcGx5aW5nIHRoZSBwYXRjaCwgb3V0cHV0IGRpZmZzdGF0IGZvciB0aGUgaW5wdXQiCittc2dzdHIgIuS4jeWll+eUqOS/ruijnOaqlO+8jOiAjOaYr+mhr+ekuui8uOWFpeeahOW3rueVsOe1seioiO+8iGRpZmZzdGF077yJIgorCisjOiBhcHBseS5jOjQ5ODMKK21zZ2lkICJzaG93IG51bWJlciBvZiBhZGRlZCBhbmQgZGVsZXRlZCBsaW5lcyBpbiBkZWNpbWFsIG5vdGF0aW9uIgorbXNnc3RyICLku6XljYHpgLLkvY3mlbjpoa/npLrmlrDlop7lkozliKrpmaTnmoTooYzmlbgiCisKKyM6IGFwcGx5LmM6NDk4NQorbXNnaWQgImluc3RlYWQgb2YgYXBwbHlpbmcgdGhlIHBhdGNoLCBvdXRwdXQgYSBzdW1tYXJ5IGZvciB0aGUgaW5wdXQiCittc2dzdHIgIuS4jeWll+eUqOS/ruijnOaqlO+8jOiAjOaYr+mhr+ekuui8uOWFpeeahOamguimgSIKKworIzogYXBwbHkuYzo0OTg3Cittc2dpZCAiaW5zdGVhZCBvZiBhcHBseWluZyB0aGUgcGF0Y2gsIHNlZSBpZiB0aGUgcGF0Y2ggaXMgYXBwbGljYWJsZSIKK21zZ3N0ciAi5LiN5aWX55So5L+u6KOc5qqU77yM6ICM5piv5qqi6KaW5L+u6KOc5qqU5piv5ZCm5Y+v5oeJ55SoIgorCisjOiBhcHBseS5jOjQ5ODkKK21zZ2lkICJtYWtlIHN1cmUgdGhlIHBhdGNoIGlzIGFwcGxpY2FibGUgdG8gdGhlIGN1cnJlbnQgaW5kZXgiCittc2dzdHIgIueiuuiqjeS/ruijnOaqlOWPr+S7peWll+eUqOWIsOebruWJjee0ouW8lSIKKworIzogYXBwbHkuYzo0OTkxCittc2dpZCAibWFyayBuZXcgZmlsZXMgd2l0aCBgZ2l0IGFkZCAtLWludGVudC10by1hZGRgIgorbXNnc3RyICLkvb/nlKjmjIfku6QgYGdpdCBhZGQgLS1pbnRlbnQtdG8tYWRkYCDmqJnoqJjmlrDlop7mqpTmoYgiCisKKyM6IGFwcGx5LmM6NDk5MworbXNnaWQgImFwcGx5IGEgcGF0Y2ggd2l0aG91dCB0b3VjaGluZyB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICLlpZfnlKjkv67oo5zmqpTogIzkuI3kv67mlLnlt6XkvZzljYAiCisKKyM6IGFwcGx5LmM6NDk5NQorbXNnaWQgImFjY2VwdCBhIHBhdGNoIHRoYXQgdG91Y2hlcyBvdXRzaWRlIHRoZSB3b3JraW5nIGFyZWEiCittc2dzdHIgIuaOpeWPl+S/ruaUueW3peS9nOWNgOS5i+WkluaqlOahiOeahOS/ruijnOaqlCIKKworIzogYXBwbHkuYzo0OTk4Cittc2dpZCAiYWxzbyBhcHBseSB0aGUgcGF0Y2ggKHVzZSB3aXRoIC0tc3RhdC8tLXN1bW1hcnkvLS1jaGVjaykiCittc2dzdHIgIumChOWll+eUqOatpOS/ruijnOaqlO+8iOiIhyAtLXN0YXQvLS1zdW1tYXJ5Ly0tY2hlY2sg6YG46aCF5ZCM5pmC5L2/55So77yJIgorCisjOiBhcHBseS5jOjUwMDAKK21zZ2lkICJhdHRlbXB0IHRocmVlLXdheSBtZXJnZSBpZiBhIHBhdGNoIGRvZXMgbm90IGFwcGx5IgorbXNnc3RyICLlpoLmnpzkuIDlgIvkv67oo5zmqpTkuI3og73mh4nnlKjliYflmJfoqabkuInmlrnlkIjkvbUiCisKKyM6IGFwcGx5LmM6NTAwMgorbXNnaWQgImJ1aWxkIGEgdGVtcG9yYXJ5IGluZGV4IGJhc2VkIG9uIGVtYmVkZGVkIGluZGV4IGluZm9ybWF0aW9uIgorbXNnc3RyICLlu7rnq4vkuIDlgIvmmqvmmYLntKLlvJXln7rmlrzltYzlhaXnmoTntKLlvJXoqIrmga8iCisKKyM6IGFwcGx5LmM6NTAwNSBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTczIGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjQKK21zZ2lkICJwYXRocyBhcmUgc2VwYXJhdGVkIHdpdGggTlVMIGNoYXJhY3RlciIKK21zZ3N0ciAi6Lev5b6R5LulIE5VTCDlrZflhYPliIbpmpQiCisKKyM6IGFwcGx5LmM6NTAwNworbXNnaWQgImVuc3VyZSBhdCBsZWFzdCA8bj4gbGluZXMgb2YgY29udGV4dCBtYXRjaCIKK21zZ3N0ciAi56K65L+d6Iez5bCR56ym5ZCIIDxuPiDooYzkuIrkuIvmlociCisKKyM6IGFwcGx5LmM6NTAwOCBidWlsdGluL2FtLmM6MjIzOSBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk4CisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMCBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwMgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU3IGJ1aWx0aW4vcmViYXNlLmM6MTUwOAorbXNnaWQgImFjdGlvbiIKK21zZ3N0ciAi5YuV5L2cIgorCisjOiBhcHBseS5jOjUwMDkKK21zZ2lkICJkZXRlY3QgbmV3IG9yIG1vZGlmaWVkIGxpbmVzIHRoYXQgaGF2ZSB3aGl0ZXNwYWNlIGVycm9ycyIKK21zZ3N0ciAi5qqi5p+l5paw5aKe5ZKM5L+u5pS555qE6KGM5Lit6ZaT55qE56m655m95a2X5YWD5r+r55SoIgorCisjOiBhcHBseS5jOjUwMTIgYXBwbHkuYzo1MDE1Cittc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gd2hpdGVzcGFjZSB3aGVuIGZpbmRpbmcgY29udGV4dCIKK21zZ3N0ciAi5bCL5om+5LiK5LiL5paH5pmC5b+955Wl56m655m95a2X5YWD55qE6K6K5pu0IgorCisjOiBhcHBseS5jOjUwMTgKK21zZ2lkICJhcHBseSB0aGUgcGF0Y2ggaW4gcmV2ZXJzZSIKK21zZ3N0ciAi5Y+N5ZCR5aWX55So5L+u6KOc5qqUIgorCisjOiBhcHBseS5jOjUwMjAKK21zZ2lkICJkb24ndCBleHBlY3QgYXQgbGVhc3Qgb25lIGxpbmUgb2YgY29udGV4dCIKK21zZ3N0ciAi54Sh6ZyA6Iez5bCR5LiA6KGM5LiK5LiL5paHIgorCisjOiBhcHBseS5jOjUwMjIKK21zZ2lkICJsZWF2ZSB0aGUgcmVqZWN0ZWQgaHVua3MgaW4gY29ycmVzcG9uZGluZyAqLnJlaiBmaWxlcyIKK21zZ3N0ciAi5bCH5ouS57WV55qE5L+u6KOc5qqU54mH5q615YSy5a2Y5Zyo5bCN5oeJ55qEICoucmVqIOaqlOahiOS4rSIKKworIzogYXBwbHkuYzo1MDI0Cittc2dpZCAiYWxsb3cgb3ZlcmxhcHBpbmcgaHVua3MiCittc2dzdHIgIuWFgeiosemHjeeWiueahOS/ruijnOaqlOeJh+autSIKKworIzogYXBwbHkuYzo1MDI1IGJ1aWx0aW4vYWRkLmM6MzIzIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjIKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MCBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5OCBidWlsdGluL2ZzY2suYzo3NzQKKyM6IGJ1aWx0aW4vbG9nLmM6MjE2NiBidWlsdGluL212LmM6MTIzIGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI4Cittc2dpZCAiYmUgdmVyYm9zZSIKK21zZ3N0ciAi6Kmz57Sw6Ly45Ye6IgorCisjOiBhcHBseS5jOjUwMjcKK21zZ2lkICJ0b2xlcmF0ZSBpbmNvcnJlY3RseSBkZXRlY3RlZCBtaXNzaW5nIG5ldy1saW5lIGF0IHRoZSBlbmQgb2YgZmlsZSIKK21zZ3N0ciAi5YWB6Kix5LiN5q2j56K655qE5qqU5qGI5pyr5bC+5o+b6KGM56ym6JmfIgorCisjOiBhcHBseS5jOjUwMzAKK21zZ2lkICJkbyBub3QgdHJ1c3QgdGhlIGxpbmUgY291bnRzIGluIHRoZSBodW5rIGhlYWRlcnMiCittc2dzdHIgIuS4jeS/oeS7u+S/ruijnOaqlOeJh+auteeahOaomemgreioiuaBr+S4reeahOihjOiZnyIKKworIzogYXBwbHkuYzo1MDMyIGJ1aWx0aW4vYW0uYzoyMjQ4Cittc2dpZCAicm9vdCIKK21zZ3N0ciAi5qC555uu6YyEIgorCisjOiBhcHBseS5jOjUwMzMKK21zZ2lkICJwcmVwZW5kIDxyb290PiB0byBhbGwgZmlsZW5hbWVzIgorbXNnc3RyICLngrrmiYDmnInmqpTmoYjlkI3liY3mlrDlop4gPOagueebrumMhD4iCisKKyM6IGFyY2hpdmUuYzoxNAorbXNnaWQgImdpdCBhcmNoaXZlIFs8b3B0aW9ucz5dIDx0cmVlLWlzaD4gWzxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBhcmNoaXZlIFs86YG46aCFPl0gPOaoueaIluaPkOS6pD4gWzzot6/lvpE+Li4uXSIKKworIzogYXJjaGl2ZS5jOjE1Cittc2dpZCAiZ2l0IGFyY2hpdmUgLS1saXN0IgorbXNnc3RyICJnaXQgYXJjaGl2ZSAtLWxpc3QiCisKKyM6IGFyY2hpdmUuYzoxNgorbXNnaWQgIiIKKyJnaXQgYXJjaGl2ZSAtLXJlbW90ZSA8cmVwbz4gWy0tZXhlYyA8Y21kPl0gWzxvcHRpb25zPl0gPHRyZWUtaXNoPiBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiIgorImdpdCBhcmNoaXZlIC0tcmVtb3RlIDzniYjmnKzluqs+IFstLWV4ZWMgPOaMh+S7pD5dIFs86YG46aCFPl0gPOaoueaIluaPkOS6pD4gWzzot6/lvpE+Li4uXSIKKworIzogYXJjaGl2ZS5jOjE3Cittc2dpZCAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPHJlcG8+IFstLWV4ZWMgPGNtZD5dIC0tbGlzdCIKK21zZ3N0ciAiZ2l0IGFyY2hpdmUgLS1yZW1vdGUgPOeJiOacrOW6qz4gWy0tZXhlYyA85oyH5LukPl0gLS1saXN0IgorCisjOiBhcmNoaXZlLmM6MzcyIGJ1aWx0aW4vYWRkLmM6MTgxIGJ1aWx0aW4vYWRkLmM6NTg4IGJ1aWx0aW4vcm0uYzozMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aHNwZWMgJyVzJyBkaWQgbm90IG1hdGNoIGFueSBmaWxlcyIKK21zZ3N0ciAi6Lev5b6R6KaP5qC8ICclcycg5pyq56ym5ZCI5Lu75L2V5qqU5qGIIgorCisjOiBhcmNoaXZlLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggcmVmOiAlLipzIgorbXNnc3RyICLnhKHmraTlvJXnlKjvvJolLipzIgorCisjOiBhcmNoaXZlLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdCBuYW1lOiAlcyIKK21zZ3N0ciAi5LiN5piv5LiA5YCL5pyJ5pWI55qE54mp5Lu25ZCN77yaJXMiCisKKyM6IGFyY2hpdmUuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdHJlZSBvYmplY3Q6ICVzIgorbXNnc3RyICLkuI3mmK/kuIDlgIvmqLnni4Dnianku7bvvJolcyIKKworIzogYXJjaGl2ZS5jOjQyNgorbXNnaWQgImN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkgaXMgdW50cmFja2VkIgorbXNnc3RyICLnm67liY3lt6XkvZznm67pjITmnKrooqvov73ouaQiCisKKyM6IGFyY2hpdmUuYzo0NTcKK21zZ2lkICJmbXQiCittc2dzdHIgIuagvOW8jyIKKworIzogYXJjaGl2ZS5jOjQ1NworbXNnaWQgImFyY2hpdmUgZm9ybWF0IgorbXNnc3RyICLmrbjmqpTmoLzlvI8iCisKKyM6IGFyY2hpdmUuYzo0NTggYnVpbHRpbi9sb2cuYzoxNjUzCittc2dpZCAicHJlZml4IgorbXNnc3RyICLliY3ntrQiCisKKyM6IGFyY2hpdmUuYzo0NTkKK21zZ2lkICJwcmVwZW5kIHByZWZpeCB0byBlYWNoIHBhdGhuYW1lIGluIHRoZSBhcmNoaXZlIgorbXNnc3RyICLngrrmrbjmqpTkuK3mr4/lgIvot6/lvpHlkI3liqDkuIrliY3ntrQiCisKKyM6IGFyY2hpdmUuYzo0NjAgYnVpbHRpbi9ibGFtZS5jOjg2MSBidWlsdGluL2JsYW1lLmM6ODY1IGJ1aWx0aW4vYmxhbWUuYzo4NjYKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTcgYnVpbHRpbi9jb25maWcuYzoxMzAgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjIKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY0IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTY4IGJ1aWx0aW4vZ3JlcC5jOjg4NworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwNSBidWlsdGluL2xzLWZpbGVzLmM6NTYwIGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjMKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTIgYnVpbHRpbi9ub3Rlcy5jOjU3OCBidWlsdGluL3JlYWQtdHJlZS5jOjEyMworIzogcGFyc2Utb3B0aW9ucy5oOjE5MAorbXNnaWQgImZpbGUiCittc2dzdHIgIuaqlOahiCIKKworIzogYXJjaGl2ZS5jOjQ2MSBidWlsdGluL2FyY2hpdmUuYzo5MAorbXNnaWQgIndyaXRlIHRoZSBhcmNoaXZlIHRvIHRoaXMgZmlsZSIKK21zZ3N0ciAi5q245qqU5a+r5YWl5q2k5qqU5qGIIgorCisjOiBhcmNoaXZlLmM6NDYzCittc2dpZCAicmVhZCAuZ2l0YXR0cmlidXRlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSIKK21zZ3N0ciAi6K6A5Y+W5bel5L2c5Y2A5Lit55qEIC5naXRhdHRyaWJ1dGVzIgorCisjOiBhcmNoaXZlLmM6NDY0Cittc2dpZCAicmVwb3J0IGFyY2hpdmVkIGZpbGVzIG9uIHN0ZGVyciIKK21zZ3N0ciAi5Zyo5qiZ5rqW6Yyv6Kqk5LiK5aCx5ZGK5q245qqU5qqU5qGIIgorCisjOiBhcmNoaXZlLmM6NDY1Cittc2dpZCAic3RvcmUgb25seSIKK21zZ3N0ciAi5Y+q5YSy5a2YIgorCisjOiBhcmNoaXZlLmM6NDY2Cittc2dpZCAiY29tcHJlc3MgZmFzdGVyIgorbXNnc3RyICLlo5PnuK7pgJ/luqbmm7Tlv6siCisKKyM6IGFyY2hpdmUuYzo0NzQKK21zZ2lkICJjb21wcmVzcyBiZXR0ZXIiCittc2dzdHIgIuWjk+e4ruaViOaenOabtOWlvSIKKworIzogYXJjaGl2ZS5jOjQ3NworbXNnaWQgImxpc3Qgc3VwcG9ydGVkIGFyY2hpdmUgZm9ybWF0cyIKK21zZ3N0ciAi5YiX5Ye65pSv5o+055qE5q245qqU5qC85byPIgorCisjOiBhcmNoaXZlLmM6NDc5IGJ1aWx0aW4vYXJjaGl2ZS5jOjkxIGJ1aWx0aW4vY2xvbmUuYzoxMTMgYnVpbHRpbi9jbG9uZS5jOjExNgorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MDYgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTEKK21zZ2lkICJyZXBvIgorbXNnc3RyICLniYjmnKzluqsiCisKKyM6IGFyY2hpdmUuYzo0ODAgYnVpbHRpbi9hcmNoaXZlLmM6OTIKK21zZ2lkICJyZXRyaWV2ZSB0aGUgYXJjaGl2ZSBmcm9tIHJlbW90ZSByZXBvc2l0b3J5IDxyZXBvPiIKK21zZ3N0ciAi5b6e6YGg56uv54mI5pys5bqr77yIPOeJiOacrOW6qz7vvInmk7flj5bmrbjmqpTmqpTmoYgiCisKKyM6IGFyY2hpdmUuYzo0ODEgYnVpbHRpbi9hcmNoaXZlLmM6OTMgYnVpbHRpbi9kaWZmdG9vbC5jOjcxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQ5OAorbXNnaWQgImNvbW1hbmQiCittc2dzdHIgIuaMh+S7pCIKKworIzogYXJjaGl2ZS5jOjQ4MiBidWlsdGluL2FyY2hpdmUuYzo5NAorbXNnaWQgInBhdGggdG8gdGhlIHJlbW90ZSBnaXQtdXBsb2FkLWFyY2hpdmUgY29tbWFuZCIKK21zZ3N0ciAi6YGg56uvIGdpdC11cGxvYWQtYXJjaGl2ZSDmjIfku6TnmoTot6/lvpEiCisKKyM6IGFyY2hpdmUuYzo0ODkKK21zZ2lkICJVbmV4cGVjdGVkIG9wdGlvbiAtLXJlbW90ZSIKK21zZ3N0ciAi5pyq55+l5Y+D5pW4IC0tcmVtb3RlIgorCisjOiBhcmNoaXZlLmM6NDkxCittc2dpZCAiT3B0aW9uIC0tZXhlYyBjYW4gb25seSBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggLS1yZW1vdGUiCittc2dzdHIgIumBuOmghSAtLWV4ZWMg5Y+q6IO95ZKMIC0tcmVtb3RlIOWQjOaZguS9v+eUqCIKKworIzogYXJjaGl2ZS5jOjQ5MworbXNnaWQgIlVuZXhwZWN0ZWQgb3B0aW9uIC0tb3V0cHV0IgorbXNnc3RyICLmnKrnn6Xlj4PmlbggLS1vdXRwdXQiCisKKyM6IGFyY2hpdmUuYzo1MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5rbm93biBhcmNoaXZlIGZvcm1hdCAnJXMnIgorbXNnc3RyICLmnKrnn6XmrbjmqpTmoLzlvI8gJyVzJyIKKworIzogYXJjaGl2ZS5jOjUyMgorIywgYy1mb3JtYXQKK21zZ2lkICJBcmd1bWVudCBub3Qgc3VwcG9ydGVkIGZvciBmb3JtYXQgJyVzJzogLSVkIgorbXNnc3RyICLlj4PmlbjkuI3mlK/mj7TmraTmoLzlvI8gJyVzJ++8mi0lZCIKKworIzogYXJjaGl2ZS10YXIuYzoxMjUgYXJjaGl2ZS16aXAuYzozNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0cmVhbSBibG9iICVzIgorbXNnc3RyICLkuI3og73plovllZ/os4fmlpnnianku7YgJXMiCisKKyM6IGFyY2hpdmUtdGFyLmM6MjY2IGFyY2hpdmUtemlwLmM6MzY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuc3VwcG9ydGVkIGZpbGUgbW9kZTogMCVvIChTSEExOiAlcykiCittc2dzdHIgIuS4jeaUr+aPtOeahOaqlOahiOaooeW8j++8mjAlbyAoU0hBMTogJXMpIgorCisjOiBhcmNoaXZlLXRhci5jOjI5MyBhcmNoaXZlLXppcC5jOjM1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCAlcyIKK21zZ3N0ciAi5LiN6IO96K6A5Y+WICVzIgorCisjOiBhcmNoaXZlLXRhci5jOjQ2NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhcnQgJyVzJyBmaWx0ZXIiCittc2dzdHIgIueEoeazleWVn+WLlSAnJXMnIOmBjua/vuWZqCIKKworIzogYXJjaGl2ZS10YXIuYzo0NjgKK21zZ2lkICJ1bmFibGUgdG8gcmVkaXJlY3QgZGVzY3JpcHRvciIKK21zZ3N0ciAi54Sh5rOV6YeN5a6a5ZCR5o+P6L+w56ymIgorCisjOiBhcmNoaXZlLXRhci5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGZpbHRlciByZXBvcnRlZCBlcnJvciIKK21zZ3N0ciAiJyVzJyDpgY7mv77lmajloLHlkYrkuobpjK/oqqQiCisKKyM6IGFyY2hpdmUtemlwLmM6MzE5CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggaXMgbm90IHZhbGlkIFVURi04OiAlcyIKK21zZ3N0ciAi6Lev5b6R5LiN5piv5pyJ5pWI55qEIFVURi0477yaJXMiCisKKyM6IGFyY2hpdmUtemlwLmM6MzIzCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggdG9vIGxvbmcgKCVkIGNoYXJzLCBTSEExOiAlcyk6ICVzIgorbXNnc3RyICLot6/lvpHlpKrplbfvvIglZCDlrZflhYPvvIxTSEEx77yaJXPvvInvvJolcyIKKworIzogYXJjaGl2ZS16aXAuYzo0ODAgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMzEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVmbGF0ZSBlcnJvciAoJWQpIgorbXNnc3RyICLlo5PnuK7pjK/oqqQgKCVkKSIKKworIzogYXJjaGl2ZS16aXAuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidGltZXN0YW1wIHRvbyBsYXJnZSBmb3IgdGhpcyBzeXN0ZW06ICU8UFJJdU1BWD4iCittc2dzdHIgIuWwjeaWvOacrOezu+e1seaZgumWk+aIs+WkquWkp++8miU8UFJJdU1BWD4iCisKKyM6IGF0dHIuYzoyMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJS4qcyBpcyBub3QgYSB2YWxpZCBhdHRyaWJ1dGUgbmFtZSIKK21zZ3N0ciAiJS4qcyDkuI3mmK/kuIDlgIvmnInmlYjnmoTlsazmgKflkI0iCisKKyM6IGF0dHIuYzozNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgbm90IGFsbG93ZWQ6ICVzOiVkIgorbXNnc3RyICLkuI3lhYHoqLEgJXPvvJolczolZCIKKworIzogYXR0ci5jOjQwOQorbXNnaWQgIiIKKyJOZWdhdGl2ZSBwYXR0ZXJucyBhcmUgaWdub3JlZCBpbiBnaXQgYXR0cmlidXRlc1xuIgorIlVzZSAnXFwhJyBmb3IgbGl0ZXJhbCBsZWFkaW5nIGV4Y2xhbWF0aW9uLiIKK21zZ3N0ciAiIgorIuWPjeWQkeaooeW8j+WcqCBnaXQgYXR0cmlidXRlcyDkuK3ooqvlv73nlaVcbiIKKyLnlbblrZfkuLLnorrlr6bopoHku6XpqZrlmIbomZ/plovlp4vmmYLvvIzkvb/nlKggJ1xcISfjgIIiCisKKyM6IGJpc2VjdC5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJCYWRseSBxdW90ZWQgY29udGVudCBpbiBmaWxlICclcyc6ICVzIgorbXNnc3RyICLmqpTmoYggJyVzJyDljIXlkKvpjK/oqqTnmoTlvJXnlKjmoLzlvI/vvJolcyIKKworIzogYmlzZWN0LmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIldlIGNhbm5vdCBiaXNlY3QgbW9yZSFcbiIKK21zZ3N0ciAi5oiR5YCR54Sh5rOV6YCy6KGM5pu05aSa55qE5LqM5YiG5bCL5om+77yBXG4iCisKKyM6IGJpc2VjdC5jOjc0NQorIywgYy1mb3JtYXQKK21zZ2lkICJOb3QgYSB2YWxpZCBjb21taXQgbmFtZSAlcyIKK21zZ3N0ciAi5LiN5piv5LiA5YCL5pyJ5pWI55qE5o+Q5Lqk5ZCNICVzIgorCisjOiBiaXNlY3QuYzo3NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBtZXJnZSBiYXNlICVzIGlzIGJhZC5cbiIKKyJUaGlzIG1lYW5zIHRoZSBidWcgaGFzIGJlZW4gZml4ZWQgYmV0d2VlbiAlcyBhbmQgWyVzXS5cbiIKK21zZ3N0ciAiIgorIuWQiOS9teWfuuekjiAlcyDmmK/lo57nmoTjgIJcbiIKKyLpgJnmhI/lkbPokZfku4vmlrwgJXMg5ZKMIFslc10g5LmL6ZaT55qEIGJ1ZyDlt7LntpPooqvkv67lvqnjgIJcbiIKKworIzogYmlzZWN0LmM6Nzc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgbWVyZ2UgYmFzZSAlcyBpcyBuZXcuXG4iCisiVGhlIHByb3BlcnR5IGhhcyBjaGFuZ2VkIGJldHdlZW4gJXMgYW5kIFslc10uXG4iCittc2dzdHIgIiIKKyLlkIjkvbXln7rnpI4gJXMg5piv5paw55qE44CCXG4iCisi5LuL5pa8ICVzIOWSjCBbJXNdIOS5i+mWk+eahOWxrOaAp+W3sue2k+iiq+S/ruaUueOAglxuIgorCisjOiBiaXNlY3QuYzo3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBtZXJnZSBiYXNlICVzIGlzICVzLlxuIgorIlRoaXMgbWVhbnMgdGhlIGZpcnN0ICclcycgY29tbWl0IGlzIGJldHdlZW4gJXMgYW5kIFslc10uXG4iCittc2dzdHIgIiIKKyLlkIjkvbXln7rnpI4gJXMg5pivICVz44CCXG4iCisi6YCZ5oSP5ZGz6JGX56ys5LiA5YCLICclcycg5o+Q5Lqk5L2N5pa8ICVzIOWSjCBbJXNdIOS5i+mWk+OAglxuIgorCisjOiBiaXNlY3QuYzo3ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNvbWUgJXMgcmV2cyBhcmUgbm90IGFuY2VzdG9ycyBvZiB0aGUgJXMgcmV2LlxuIgorImdpdCBiaXNlY3QgY2Fubm90IHdvcmsgcHJvcGVybHkgaW4gdGhpcyBjYXNlLlxuIgorIk1heWJlIHlvdSBtaXN0b29rICVzIGFuZCAlcyByZXZzP1xuIgorbXNnc3RyICIiCisi5LiA5LqbICVzIOeJiOacrOS4jeaYryAlcyDniYjmnKznmoTnpZblhYjjgIJcbiIKKyLpgJnnqK7mg4Xms4HkuIsgZ2l0IOS6jOWIhuWwi+aJvueEoeazleato+W4uOW3peS9nOOAglxuIgorIuaCqOWPr+iDveW8hOmMr+S6hiAlcyDlkowgJXMg54mI5pys77yfXG4iCisKKyM6IGJpc2VjdC5jOjgwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidGhlIG1lcmdlIGJhc2UgYmV0d2VlbiAlcyBhbmQgWyVzXSBtdXN0IGJlIHNraXBwZWQuXG4iCisiU28gd2UgY2Fubm90IGJlIHN1cmUgdGhlIGZpcnN0ICVzIGNvbW1pdCBpcyBiZXR3ZWVuICVzIGFuZCAlcy5cbiIKKyJXZSBjb250aW51ZSBhbnl3YXkuIgorbXNnc3RyICIiCisi5LuL5pa8ICVzIOWSjCBbJXNdIOeahOWQiOS9teWfuuekjuS4gOWumuiiq+W/veeVpeS6huOAglxuIgorIuaJgOS7peaIkeWAkeeEoeazleeiuuiqjeesrOS4gOWAiyAlcyDmj5DkuqTmmK/lkKbku4vmlrwgJXMg5ZKMICVzIOS5i+mWk+OAglxuIgorIuaIkeWAkeS7jeiIiue5vOe6jOOAgiIKKworIzogYmlzZWN0LmM6ODQwCisjLCBjLWZvcm1hdAorbXNnaWQgIkJpc2VjdGluZzogYSBtZXJnZSBiYXNlIG11c3QgYmUgdGVzdGVkXG4iCittc2dzdHIgIuS6jOWIhuWwi+aJvuS4re+8muWQiOS9teWfuuekjuW/hemgiOaYr+e2k+mBjua4rOippueahFxuIgorCisjOiBiaXNlY3QuYzo4OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSAlcyByZXZpc2lvbiBpcyBuZWVkZWQiCittc2dzdHIgIumcgOimgeS4gOWAiyAlcyDniYjmnKwiCisKKyM6IGJpc2VjdC5jOjkyMCBidWlsdGluL25vdGVzLmM6MTc3IGJ1aWx0aW4vdGFnLmM6MjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICLkuI3og73lu7rnq4vmqpTmoYggJyVzJyIKKworIzogYmlzZWN0LmM6OTY2IGJ1aWx0aW4vbWVyZ2UuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgZmlsZSAnJXMnIgorbXNnc3RyICLkuI3og73oroDlj5bmqpTmoYggJyVzJyIKKworIzogYmlzZWN0LmM6OTk3Cittc2dpZCAicmVhZGluZyBiaXNlY3QgcmVmcyBmYWlsZWQiCittc2dzdHIgIuiugOWPluS6jOWIhuWwi+aJvuW8leeUqOWkseaVlyIKKworIzogYmlzZWN0LmM6MTAxOQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB3YXMgYm90aCAlcyBhbmQgJXNcbiIKK21zZ3N0ciAiJXMg5ZCM5pmC54K6ICVzIOWSjCAlc1xuIgorCisjOiBiaXNlY3QuYzoxMDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJObyB0ZXN0YWJsZSBjb21taXQgZm91bmQuXG4iCisiTWF5YmUgeW91IHN0YXJ0ZWQgd2l0aCBiYWQgcGF0aCBwYXJhbWV0ZXJzP1xuIgorbXNnc3RyICIiCisi5rKS5pyJ55m854++5Y+v5ris6Kmm55qE5o+Q5Lqk44CCXG4iCisi5Y+v6IO95oKo5Zyo5Z+36KGM5pmC5L2/55So5LqG6Yyv6Kqk55qE6Lev5b6R5Y+D5pW477yfXG4iCisKKyM6IGJpc2VjdC5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiKHJvdWdobHkgJWQgc3RlcCkiCittc2dpZF9wbHVyYWwgIihyb3VnaGx5ICVkIHN0ZXBzKSIKK21zZ3N0clswXSAi77yI5aSn5qaCICVkIOatpe+8iSIKKworIy4gVFJBTlNMQVRPUlM6IHRoZSBsYXN0ICVzIHdpbGwgYmUgcmVwbGFjZWQgd2l0aCAiKHJvdWdobHkgJWQKKyMuIHN0ZXBzKSIgdHJhbnNsYXRpb24uCisjLgorIzogYmlzZWN0LmM6MTA2MworIywgYy1mb3JtYXQKK21zZ2lkICJCaXNlY3Rpbmc6ICVkIHJldmlzaW9uIGxlZnQgdG8gdGVzdCBhZnRlciB0aGlzICVzXG4iCittc2dpZF9wbHVyYWwgIkJpc2VjdGluZzogJWQgcmV2aXNpb25zIGxlZnQgdG8gdGVzdCBhZnRlciB0aGlzICVzXG4iCittc2dzdHJbMF0gIuS6jOWIhuWwi+aJvuS4re+8muWcqOatpOS5i+W+jO+8jOmChOWJqSAlZCDlgIvniYjmnKzlvoXmuKzoqaYgJXNcbiIKKworIzogYmxhbWUuYzoyNzAwCittc2dpZCAiLS1jb250ZW50cyBhbmQgLS1yZXZlcnNlIGRvIG5vdCBibGVuZCB3ZWxsLiIKK21zZ3N0ciAiLS1jb250ZW50cyDlkowgLS1yZXZlcnNlIOS4jeiDvea3t+eUqOOAgiIKKworIzogYmxhbWUuYzoyNzE0Cittc2dpZCAiY2Fubm90IHVzZSAtLWNvbnRlbnRzIHdpdGggZmluYWwgY29tbWl0IG9iamVjdCBuYW1lIgorbXNnc3RyICLkuI3og73lsIcgLS1jb250ZW50cyDlkozmnIDntYLnmoTmj5DkuqTnianku7blkI3lhbHnlKgiCisKKyM6IGJsYW1lLmM6MjczNQorbXNnaWQgIi0tcmV2ZXJzZSBhbmQgLS1maXJzdC1wYXJlbnQgdG9nZXRoZXIgcmVxdWlyZSBzcGVjaWZpZWQgbGF0ZXN0IGNvbW1pdCIKK21zZ3N0ciAiLS1yZXZlcnNlIOWSjCAtLWZpcnN0LXBhcmVudCDlhbHnlKjvvIzpnIDopoHmjIflrprmnIDmlrDnmoTmj5DkuqQiCisKKyM6IGJsYW1lLmM6Mjc0NCBidW5kbGUuYzoxNjcgcmVmLWZpbHRlci5jOjIyMDMgcmVtb3RlLmM6MTk0MiBzZXF1ZW5jZXIuYzoyMDA2CisjOiBzZXF1ZW5jZXIuYzo0MzU4IHN1Ym1vZHVsZS5jOjg0NyBidWlsdGluL2NvbW1pdC5jOjEwNDUgYnVpbHRpbi9sb2cuYzozODgKKyM6IGJ1aWx0aW4vbG9nLmM6OTkxIGJ1aWx0aW4vbG9nLmM6MTUyMCBidWlsdGluL2xvZy5jOjE5MjUgYnVpbHRpbi9sb2cuYzoyMjE1CisjOiBidWlsdGluL21lcmdlLmM6NDEyIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzI3NSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyOTAKKyM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoxOTIKK21zZ2lkICJyZXZpc2lvbiB3YWxrIHNldHVwIGZhaWxlZCIKK21zZ3N0ciAi54mI5pys6YGN5q236Kit5a6a5aSx5pWXIgorCisjOiBibGFtZS5jOjI3NjIKK21zZ2lkICIiCisiLS1yZXZlcnNlIC0tZmlyc3QtcGFyZW50IHRvZ2V0aGVyIHJlcXVpcmUgcmFuZ2UgYWxvbmcgZmlyc3QtcGFyZW50IGNoYWluIgorbXNnc3RyICItLXJldmVyc2Ug5ZKMIC0tZmlyc3QtcGFyZW50IOWFseeUqO+8jOmcgOimgeesrOS4gOelluWFiOmPiOS4iueahOaPkOS6pOevhOWcjSIKKworIzogYmxhbWUuYzoyNzczCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggcGF0aCAlcyBpbiAlcyIKK21zZ3N0ciAi5ZyoICUyJHMg5Lit54Sh5q2k6Lev5b6RICUxJHMiCisKKyM6IGJsYW1lLmM6Mjc4NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBibG9iICVzIGZvciBwYXRoICVzIgorbXNnc3RyICLkuI3og73ngrrot6/lvpEgJTIkcyDoroDlj5bos4fmlpnnianku7YgJTEkcyIKKworIzogYnJhbmNoLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkFmdGVyIGZpeGluZyB0aGUgZXJyb3IgY2F1c2UgeW91IG1heSB0cnkgdG8gZml4IHVwXG4iCisidGhlIHJlbW90ZSB0cmFja2luZyBpbmZvcm1hdGlvbiBieSBpbnZva2luZ1xuIgorIlwiZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10bz0lcyVzJXNcIi4iCittc2dzdHIgIiIKKyJcbiIKKyLlnKjkv67lvqnpjK/oqqTlvozvvIzmgqjlj6/ku6XlmJfoqabkv67mlLnpgaDnq6/ov73ouaTliIbmlK/vvIzpgI/pgY7ln7fooYzmjIfku6RcbiIKKyJcImdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMlcyVzXCIg44CCIgorCisjOiBicmFuY2guYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICJOb3Qgc2V0dGluZyBicmFuY2ggJXMgYXMgaXRzIG93biB1cHN0cmVhbS4iCittc2dzdHIgIuacquioreWumuWIhuaUryAlcyDkvZzngrrlroPoh6rlt7HnmoTkuIrmuLjjgIIiCisKKyM6IGJyYW5jaC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgYnJhbmNoICclcycgZnJvbSAnJXMnIGJ5IHJlYmFzaW5nLiIKK21zZ3N0ciAi5YiG5pSvICclMSRzJyDoqK3lrprngrrkvb/nlKjph43lrprln7rlupXkvobov73ouaTkvoboh6ogJyUzJHMnIOeahOmBoOerr+WIhuaUryAnJTIkcyfjgIIiCisKKyM6IGJyYW5jaC5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgYnJhbmNoICclcycgZnJvbSAnJXMnLiIKK21zZ3N0ciAi5YiG5pSvICclMSRzJyDoqK3lrprngrrov73ouaTkvoboh6ogJyUzJHMnIOeahOmBoOerr+WIhuaUryAnJTIkcyfjgIIiCisKKyM6IGJyYW5jaC5jOjk4CisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCBicmFuY2ggJyVzJyBieSByZWJhc2luZy4iCittc2dzdHIgIuWIhuaUryAnJXMnIOioreWumueCuuS9v+eUqOmHjeWumuWfuuW6leS+hui/vei5pOacrOapn+WIhuaUryAnJXMn44CCIgorCisjOiBicmFuY2guYzo5OQorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJyVzJyBzZXQgdXAgdG8gdHJhY2sgbG9jYWwgYnJhbmNoICclcycuIgorbXNnc3RyICLliIbmlK8gJyVzJyDoqK3lrprngrrov73ouaTmnKzmqZ/liIbmlK8gJyVzJ+OAgiIKKworIzogYnJhbmNoLmM6MTA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgcmVmICclcycgYnkgcmViYXNpbmcuIgorbXNnc3RyICLliIbmlK8gJyVzJyDoqK3lrprngrrkvb/nlKjph43lrprln7rlupXkvobov73ouaTpgaDnq6/lvJXnlKggJyVzJ+OAgiIKKworIzogYnJhbmNoLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayByZW1vdGUgcmVmICclcycuIgorbXNnc3RyICLliIbmlK8gJyVzJyDoqK3lrprngrrov73ouaTpgaDnq6/lvJXnlKggJyVzJ+OAgiIKKworIzogYnJhbmNoLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAnJXMnIHNldCB1cCB0byB0cmFjayBsb2NhbCByZWYgJyVzJyBieSByZWJhc2luZy4iCittc2dzdHIgIuWIhuaUryAnJXMnIOioreWumueCuuS9v+eUqOmHjeWumuWfuuW6leS+hui/vei5pOacrOapn+W8leeUqCAnJXMn44CCIgorCisjOiBicmFuY2guYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICclcycgc2V0IHVwIHRvIHRyYWNrIGxvY2FsIHJlZiAnJXMnLiIKK21zZ3N0ciAi5YiG5pSvICclcycg6Kit5a6a54K66L+96Lmk5pys5qmf5byV55SoICclcyfjgIIiCisKKyM6IGJyYW5jaC5jOjExOQorbXNnaWQgIlVuYWJsZSB0byB3cml0ZSB1cHN0cmVhbSBicmFuY2ggY29uZmlndXJhdGlvbiIKK21zZ3N0ciAi54Sh5rOV5a+r5YWl5LiK5ri45YiG5pSv6Kit5a6aIgorCisjOiBicmFuY2guYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm90IHRyYWNraW5nOiBhbWJpZ3VvdXMgaW5mb3JtYXRpb24gZm9yIHJlZiAlcyIKK21zZ3N0ciAi5pyq6L+96Lmk77ya5byV55SoICVzIOacieatp+e+qSIKKworIzogYnJhbmNoLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgYnJhbmNoIG5hbWUuIgorbXNnc3RyICInJXMnIOS4jeaYr+S4gOWAi+acieaViOeahOWIhuaUr+WQjeeoseOAgiIKKworIzogYnJhbmNoLmM6MjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIkEgYnJhbmNoIG5hbWVkICclcycgYWxyZWFkeSBleGlzdHMuIgorbXNnc3RyICLkuIDlgIvliIbmlK/lkI0gJyVzJyDlt7LntpPlrZjlnKjjgIIiCisKKyM6IGJyYW5jaC5jOjIxMworbXNnaWQgIkNhbm5vdCBmb3JjZSB1cGRhdGUgdGhlIGN1cnJlbnQgYnJhbmNoLiIKK21zZ3N0ciAi54Sh5rOV5by35Yi25pu05paw55uu5YmN5YiG5pSv44CCIgorCisjOiBicmFuY2guYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHNldHVwIHRyYWNraW5nIGluZm9ybWF0aW9uOyBzdGFydGluZyBwb2ludCAnJXMnIGlzIG5vdCBhIGJyYW5jaC4iCittc2dzdHIgIueEoeazleioreWumui/vei5pOioiuaBr++8m+i1t+Wni+m7niAnJXMnIOS4jeaYr+S4gOWAi+WIhuaUr+OAgiIKKworIzogYnJhbmNoLmM6MjM1CisjLCBjLWZvcm1hdAorbXNnaWQgInRoZSByZXF1ZXN0ZWQgdXBzdHJlYW0gYnJhbmNoICclcycgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIuiri+axgueahOS4iua4uOWIhuaUryAnJXMnIOS4jeWtmOWcqCIKKworIzogYnJhbmNoLmM6MjM3Cittc2dpZCAiIgorIlxuIgorIklmIHlvdSBhcmUgcGxhbm5pbmcgb24gYmFzaW5nIHlvdXIgd29yayBvbiBhbiB1cHN0cmVhbVxuIgorImJyYW5jaCB0aGF0IGFscmVhZHkgZXhpc3RzIGF0IHRoZSByZW1vdGUsIHlvdSBtYXkgbmVlZCB0b1xuIgorInJ1biBcImdpdCBmZXRjaFwiIHRvIHJldHJpZXZlIGl0LlxuIgorIlxuIgorIklmIHlvdSBhcmUgcGxhbm5pbmcgdG8gcHVzaCBvdXQgYSBuZXcgbG9jYWwgYnJhbmNoIHRoYXRcbiIKKyJ3aWxsIHRyYWNrIGl0cyByZW1vdGUgY291bnRlcnBhcnQsIHlvdSBtYXkgd2FudCB0byB1c2VcbiIKKyJcImdpdCBwdXNoIC11XCIgdG8gc2V0IHRoZSB1cHN0cmVhbSBjb25maWcgYXMgeW91IHB1c2guIgorbXNnc3RyICIiCisiXG4iCisi5aaC5p6c5oKo5q2j6KiI5YqD5Z+65pa86YGg56uv5LiA5YCL54++5a2Y55qE5LiK5ri45YiG5pSv6ZaL5aeL5L2g55qE5bel5L2c77yMXG4iCisi5oKo5Y+v6IO96ZyA6KaB5Z+36KGMIFwiZ2l0IGZldGNoXCIg5L6G5Y+W5b6X5YiG5pSv44CCXG4iCisiXG4iCisi5aaC5p6c5oKo5q2j6KiI5YqD5o6o6YCB5LiA5YCL6IO96IiH5bCN5oeJ6YGg56uv5YiG5pSv5bu656uL6L+96Lmk55qE5paw55qE5pys5qmf5YiG5pSv77yMXG4iCisi5oKo5Y+v6IO96ZyA6KaB5L2/55SoIFwiZ2l0IHB1c2ggLXVcIiDmjqjpgIHliIbmlK/kuKboqK3lrprlkozkuIrmuLjnmoTpl5zoga/jgIIiCisKKyM6IGJyYW5jaC5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZTogJyVzJy4iCittc2dzdHIgIuS4jeaYr+S4gOWAi+acieaViOeahOeJqeS7tuWQje+8miclcyfjgIIiCisKKyM6IGJyYW5jaC5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICJBbWJpZ3VvdXMgb2JqZWN0IG5hbWU6ICclcycuIgorbXNnc3RyICLmrafnvqnnmoTnianku7blkI3vvJonJXMn44CCIgorCisjOiBicmFuY2guYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm90IGEgdmFsaWQgYnJhbmNoIHBvaW50OiAnJXMnLiIKK21zZ3N0ciAi54Sh5pWI55qE5YiG5pSv6bue77yaJyVzJ+OAgiIKKworIzogYnJhbmNoLmM6MzY0CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgYWxyZWFkeSBjaGVja2VkIG91dCBhdCAnJXMnIgorbXNnc3RyICInJXMnIOW3sue2k+ewveWHuuWIsCAnJXMnIgorCisjOiBicmFuY2guYzozODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiSEVBRCBvZiB3b3JraW5nIHRyZWUgJXMgaXMgbm90IHVwZGF0ZWQiCittc2dzdHIgIuW3peS9nOWNgCAlcyDnmoQgSEVBRCDmjIflkJHmspLmnInooqvmm7TmlrAiCisKKyM6IGJ1bmRsZS5jOjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgbG9vayBsaWtlIGEgdjIgYnVuZGxlIGZpbGUiCittc2dzdHIgIiclcycg5LiN5YOP5piv5LiA5YCLIHYyIOeJiOacrOeahOWMheaqlOahiCIKKworIzogYnVuZGxlLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIGhlYWRlcjogJXMlcyAoJWQpIgorbXNnc3RyICLmnKrog73orZjliKXnmoTljIXpoK3vvJolcyVzICglZCkiCisKKyM6IGJ1bmRsZS5jOjkwIHJlcmVyZS5jOjQ4MCByZXJlcmUuYzo2OTAgc2VxdWVuY2VyLmM6MjI1OCBzZXF1ZW5jZXIuYzozMDE2CisjOiBidWlsdGluL2NvbW1pdC5jOjgxNQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIgorbXNnc3RyICLkuI3og73plovllZ8gJyVzJyIKKworIzogYnVuZGxlLmM6MTQzCittc2dpZCAiUmVwb3NpdG9yeSBsYWNrcyB0aGVzZSBwcmVyZXF1aXNpdGUgY29tbWl0czoiCittc2dzdHIgIueJiOacrOW6q+S4ree8uuWwkemAmeS6m+W/heWCmeeahOaPkOS6pO+8miIKKworIzogYnVuZGxlLmM6MTQ2Cittc2dpZCAibmVlZCBhIHJlcG9zaXRvcnkgdG8gdmVyaWZ5IGEgYnVuZGxlIgorbXNnc3RyICLpnIDopoHniYjmnKzluqvpqZforYnkuIDlgIvljIUiCisKKyM6IGJ1bmRsZS5jOjE5NworIywgYy1mb3JtYXQKK21zZ2lkICJUaGUgYnVuZGxlIGNvbnRhaW5zIHRoaXMgcmVmOiIKK21zZ2lkX3BsdXJhbCAiVGhlIGJ1bmRsZSBjb250YWlucyB0aGVzZSAlZCByZWZzOiIKK21zZ3N0clswXSAi6YCZ5YCL5YyF5Lit5ZCr5pyJ6YCZICVkIOWAi+W8leeUqO+8miIKKworIzogYnVuZGxlLmM6MjA0Cittc2dpZCAiVGhlIGJ1bmRsZSByZWNvcmRzIGEgY29tcGxldGUgaGlzdG9yeS4iCittc2dzdHIgIumAmeWAi+WMheiomOmMhOS4gOWAi+WujOaVtOatt+WPsuOAgiIKKworIzogYnVuZGxlLmM6MjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZSBidW5kbGUgcmVxdWlyZXMgdGhpcyByZWY6IgorbXNnaWRfcGx1cmFsICJUaGUgYnVuZGxlIHJlcXVpcmVzIHRoZXNlICVkIHJlZnM6IgorbXNnc3RyWzBdICLpgJnlgIvljIXpnIDopoHpgJkgJWQg5YCL5byV55So77yaIgorCisjOiBidW5kbGUuYzoyNzMKK21zZ2lkICJ1bmFibGUgdG8gZHVwIGJ1bmRsZSBkZXNjcmlwdG9yIgorbXNnc3RyICLnhKHms5XopIfoo70gYnVuZGxlIOaPj+i/sOespiIKKworIzogYnVuZGxlLmM6MjgwCittc2dpZCAiQ291bGQgbm90IHNwYXduIHBhY2stb2JqZWN0cyIKK21zZ3N0ciAi5LiN6IO955Sf5oiQIHBhY2stb2JqZWN0cyDpgLLnqIsiCisKKyM6IGJ1bmRsZS5jOjI5MQorbXNnaWQgInBhY2stb2JqZWN0cyBkaWVkIgorbXNnc3RyICJwYWNrLW9iamVjdHMg57WC5q2iIgorCisjOiBidW5kbGUuYzozMzMKK21zZ2lkICJyZXYtbGlzdCBkaWVkIgorbXNnc3RyICJyZXYtbGlzdCDntYLmraIiCisKKyM6IGJ1bmRsZS5jOjM4MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWYgJyVzJyBpcyBleGNsdWRlZCBieSB0aGUgcmV2LWxpc3Qgb3B0aW9ucyIKK21zZ3N0ciAi5byV55SoICclcycg6KKrIHJldi1saXN0IOmBuOmgheaOkumZpCIKKworIzogYnVuZGxlLmM6NDYxIGJ1aWx0aW4vbG9nLmM6MjAzIGJ1aWx0aW4vbG9nLmM6MTgxNCBidWlsdGluL3Nob3J0bG9nLmM6MzA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBhcmd1bWVudDogJXMiCittc2dzdHIgIuacquiDveitmOWIpeeahOWPg+aVuO+8miVzIgorCisjOiBidW5kbGUuYzo0NjkKK21zZ2lkICJSZWZ1c2luZyB0byBjcmVhdGUgZW1wdHkgYnVuZGxlLiIKK21zZ3N0ciAi5LiN6IO95bu656uL56m65YyF44CCIgorCisjOiBidW5kbGUuYzo0NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNyZWF0ZSAnJXMnIgorbXNnc3RyICLkuI3og73lu7rnq4sgJyVzJyIKKworIzogYnVuZGxlLmM6NTA0Cittc2dpZCAiaW5kZXgtcGFjayBkaWVkIgorbXNnc3RyICJpbmRleC1wYWNrIOe1guatoiIKKworIzogY29sb3IuYzozMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb2xvciB2YWx1ZTogJS4qcyIKK21zZ3N0ciAi54Sh5pWI55qE6aGP6Imy5YC877yaJS4qcyIKKworIzogY29tbWl0LmM6NTEgc2VxdWVuY2VyLmM6MjcxOSBidWlsdGluL2FtLmM6MzU5IGJ1aWx0aW4vYW0uYzo0MDMKKyM6IGJ1aWx0aW4vYW0uYzoxMzcxIGJ1aWx0aW4vYW0uYzoyMDE0IGJ1aWx0aW4vcmVwbGFjZS5jOjQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJXMiCittc2dzdHIgIuS4jeiDveino+aekCAlcyIKKworIzogY29tbWl0LmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgaXMgbm90IGEgY29tbWl0ISIKK21zZ3N0ciAiJXMgJXMg5LiN5piv5LiA5YCL5o+Q5Lqk77yBIgorCisjOiBjb21taXQuYzoxOTMKK21zZ2lkICIiCisiU3VwcG9ydCBmb3IgPEdJVF9ESVI+L2luZm8vZ3JhZnRzIGlzIGRlcHJlY2F0ZWRcbiIKKyJhbmQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIEdpdCB2ZXJzaW9uLlxuIgorIlxuIgorIlBsZWFzZSB1c2UgXCJnaXQgcmVwbGFjZSAtLWNvbnZlcnQtZ3JhZnQtZmlsZVwiXG4iCisidG8gY29udmVydCB0aGUgZ3JhZnRzIGludG8gcmVwbGFjZSByZWZzLlxuIgorIlxuIgorIlR1cm4gdGhpcyBtZXNzYWdlIG9mZiBieSBydW5uaW5nXG4iCisiXCJnaXQgY29uZmlnIGFkdmljZS5ncmFmdEZpbGVEZXByZWNhdGVkIGZhbHNlXCIiCittc2dzdHIgIiIKKyLlsI0gPEdJVF9ESVI+L2luZm8vZ3JhZnRzIOeahOaUr+aPtOW3suiiq+ajhOeUqO+8jOS4puWwh+WcqFxuIgorIuacquS+hueahEdpdOeJiOacrOS4reiiq+enu+mZpOOAglxuIgorIlxuIgorIuiri+S9v+eUqCBcImdpdCByZXBsYWNlIC0tY29udmVydC1ncmFmdC1maWxlXCIg5bCHXG4iCisiZ3JhZnRzIOi9ieaPm+eCuuWPluS7o+W8leeUqOOAglxuIgorIlxuIgorIuioreWumiBcImdpdCBjb25maWcgYWR2aWNlLmdyYWZ0RmlsZURlcHJlY2F0ZWQgZmFsc2VcIlxuIgorIuWPr+mXnOmWieacrOa2iOaBryIKKworIzogY29tbWl0LmM6MTE1MworIywgYy1mb3JtYXQKK21zZ2lkICJDb21taXQgJXMgaGFzIGFuIHVudHJ1c3RlZCBHUEcgc2lnbmF0dXJlLCBhbGxlZ2VkbHkgYnkgJXMuIgorbXNnc3RyICLmj5DkuqQgJXMg5pyJ5LiA5YCL6Z2e5Y+v5L+h55qE6IGy56ix5L6G6IeqICVzIOeahCBHUEcg57C95ZCN44CCIgorCisjOiBjb21taXQuYzoxMTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbW1pdCAlcyBoYXMgYSBiYWQgR1BHIHNpZ25hdHVyZSBhbGxlZ2VkbHkgYnkgJXMuIgorbXNnc3RyICLmj5DkuqQgJXMg5pyJ5LiA5YCL6Yyv6Kqk55qE6IGy56ix5L6G6IeqICVzIOeahCBHUEcg57C95ZCN44CCIgorCisjOiBjb21taXQuYzoxMTYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIGEgR1BHIHNpZ25hdHVyZS4iCittc2dzdHIgIuaPkOS6pCAlcyDmspLmnIkgR1BHIOewveWQjeOAgiIKKworIzogY29tbWl0LmM6MTE2MworIywgYy1mb3JtYXQKK21zZ2lkICJDb21taXQgJXMgaGFzIGEgZ29vZCBHUEcgc2lnbmF0dXJlIGJ5ICVzXG4iCittc2dzdHIgIuaPkOS6pCAlcyDmnInkuIDlgIvkvoboh6ogJXMg55qE5aW955qEIEdQRyDnsL3lkI3jgIJcbiIKKworIzogY29tbWl0LmM6MTQxNworbXNnaWQgIiIKKyJXYXJuaW5nOiBjb21taXQgbWVzc2FnZSBkaWQgbm90IGNvbmZvcm0gdG8gVVRGLTguXG4iCisiWW91IG1heSB3YW50IHRvIGFtZW5kIGl0IGFmdGVyIGZpeGluZyB0aGUgbWVzc2FnZSwgb3Igc2V0IHRoZSBjb25maWdcbiIKKyJ2YXJpYWJsZSBpMThuLmNvbW1pdGVuY29kaW5nIHRvIHRoZSBlbmNvZGluZyB5b3VyIHByb2plY3QgdXNlcy5cbiIKK21zZ3N0ciAiIgorIuitpuWRiu+8muaPkOS6pOiqquaYjuS4jeespuWQiCBVVEYtOCDlrZflhYPnt6jnorzjgIJcbiIKKyLmgqjlj6/ku6XpgI/pgY7kv67oo5zmj5DkuqTkvobmlLnmraPmj5DkuqToqqrmmI7vvIzmiJbogIXlsIfoqK3lrprorormlbggaTE4bi5jb21taXRlbmNvZGluZ1xuIgorIuioreWumueCuuaCqOmgheebruaJgOeUqOeahOWtl+WFg+e3qOeivOOAglxuIgorCisjOiBjb21taXQtZ3JhcGguYzoxMjIKK21zZ2lkICJjb21taXQtZ3JhcGggZmlsZSBpcyB0b28gc21hbGwiCittc2dzdHIgIuaPkOS6pOWcluW9ouaqlOahiOWkquWwjyIKKworIzogY29tbWl0LWdyYXBoLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBzaWduYXR1cmUgJVggZG9lcyBub3QgbWF0Y2ggc2lnbmF0dXJlICVYIgorbXNnc3RyICLmj5DkuqTlnJblvaLnsL3lkI0gJVgg5ZKM57C95ZCNICVYIOS4jeespuWQiCIKKworIzogY29tbWl0LWdyYXBoLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCB2ZXJzaW9uICVYIGRvZXMgbm90IG1hdGNoIHZlcnNpb24gJVgiCittc2dzdHIgIuaPkOS6pOWcluW9oueJiOacrCAlWCDlkozniYjmnKwgJVgg5LiN56ym5ZCIIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGhhc2ggdmVyc2lvbiAlWCBkb2VzIG5vdCBtYXRjaCB2ZXJzaW9uICVYIgorbXNnc3RyICLmj5DkuqTlnJblvaLpm5zmuYrniYjmnKwgJVgg5ZKM54mI5pysICVYIOS4jeespuWQiCIKKworIzogY29tbWl0LWdyYXBoLmM6MjI2Cittc2dpZCAiY29tbWl0LWdyYXBoIGNodW5rIGxvb2t1cCB0YWJsZSBlbnRyeSBtaXNzaW5nOyBmaWxlIG1heSBiZSBpbmNvbXBsZXRlIgorbXNnc3RyICLmj5DkuqTlnJblvaLljYDloYrlsIvmib7ooajmop3nm67pgbrlpLHvvIzmqpTmoYjlj6/og73kuI3lrozmlbQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggaW1wcm9wZXIgY2h1bmsgb2Zmc2V0ICUwOHglMDh4IgorbXNnc3RyICLmj5DkuqTlnJblvaLkuI3mraPnorrnmoTljYDloYrkvY3np7sgJTA4eCUwOHgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjI4MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggY2h1bmsgaWQgJTA4eCBhcHBlYXJzIG11bHRpcGxlIHRpbWVzIgorbXNnc3RyICLmj5DkuqTlnJblvaLljYDloYogaWQgJTA4eCDlh7rnj77kuoblpJrmrKEiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjM0MworbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgbm8gYmFzZSBncmFwaHMgY2h1bmsiCittc2dzdHIgIuaPkOS6pOWcluW9ouaykuacieWfuuekjuWcluW9ouWNgOWhiiIKKworIzogY29tbWl0LWdyYXBoLmM6MzUzCittc2dpZCAiY29tbWl0LWdyYXBoIGNoYWluIGRvZXMgbm90IG1hdGNoIgorbXNnc3RyICLmj5DkuqTlnJblvaLpj4jkuI3nrKblkIgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdC1ncmFwaCBjaGFpbjogbGluZSAnJXMnIG5vdCBhIGhhc2giCittc2dzdHIgIueEoeaViOeahOaPkOS6pOWcluW9oumPiO+8muihjCAnJXMnIOS4jeaYr+S4gOWAi+mbnOa5iuWAvCIKKworIzogY29tbWl0LWdyYXBoLmM6NDI1Cittc2dpZCAidW5hYmxlIHRvIGZpbmQgYWxsIGNvbW1pdC1ncmFwaCBmaWxlcyIKK21zZ3N0ciAi54Sh5rOV5om+5Yiw5omA5pyJ5o+Q5Lqk5ZyW5b2i5qqU5qGIIgorCisjOiBjb21taXQtZ3JhcGguYzo1NTggY29tbWl0LWdyYXBoLmM6NjE4Cittc2dpZCAiaW52YWxpZCBjb21taXQgcG9zaXRpb24uIGNvbW1pdC1ncmFwaCBpcyBsaWtlbHkgY29ycnVwdCIKK21zZ3N0ciAi54Sh5pWI55qE5o+Q5Lqk5L2N572u44CC5o+Q5Lqk5ZyW5b2i5Y+v6IO95bey5pCN5aOeIgorCisjOiBjb21taXQtZ3JhcGguYzo1NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGZpbmQgY29tbWl0ICVzIgorbXNnc3RyICLnhKHms5Xmib7liLDmj5DkuqQgJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjg1MiBidWlsdGluL2FtLmM6MTI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWl0ICVzIgorbXNnc3RyICLkuI3og73op6PmnpDmj5DkuqQgJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwMTEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBnZXQgdHlwZSBvZiBvYmplY3QgJXMiCittc2dzdHIgIueEoeazleeNsuW+l+eJqeS7tiAlcyDpoZ7lnosiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNDMKK21zZ2lkICJMb2FkaW5nIGtub3duIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICLmraPlnKjovInlhaXmj5DkuqTlnJbkuK3nmoTlt7Lnn6Xmj5DkuqQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNjAKK21zZ2lkICJFeHBhbmRpbmcgcmVhY2hhYmxlIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICLmraPlnKjmk7TlsZXmj5DkuqTlnJbkuK3nmoTlj6/ku6Xlj5blvpfmj5DkuqQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwNzkKK21zZ2lkICJDbGVhcmluZyBjb21taXQgbWFya3MgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICLmraPlnKjmuIXpmaTmj5DkuqTlnJbkuK3nmoTmj5DkuqTmqJnoqJgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEwOTgKK21zZ2lkICJDb21wdXRpbmcgY29tbWl0IGdyYXBoIGdlbmVyYXRpb24gbnVtYmVycyIKK21zZ3N0ciAi5q2j5Zyo6KiI566X5o+Q5Lqk5ZyW5LiW5Luj5pW45a2XIgorCisjOiBjb21taXQtZ3JhcGguYzoxMTczCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGluICVkIHBhY2siCittc2dpZF9wbHVyYWwgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGluICVkIHBhY2tzIgorbXNnc3RyWzBdICLmraPlnKggJWQg5YCL5YyF5Lit5bCL5om+5o+Q5Lqk5ZyW55qE5o+Q5LqkIgorCisjOiBjb21taXQtZ3JhcGguYzoxMTg2CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGFkZGluZyBwYWNrICVzIgorbXNnc3RyICLmlrDlop7ljIUgJXMg55m855Sf6Yyv6KqkIgorCisjOiBjb21taXQtZ3JhcGguYzoxMTkwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIG9wZW5pbmcgaW5kZXggZm9yICVzIgorbXNnc3RyICLngrogJXMg6ZaL5ZWf57Si5byV55m855Sf6Yyv6KqkIgorCisjOiBjb21taXQtZ3JhcGguYzoxMjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbmRpbmcgY29tbWl0cyBmb3IgY29tbWl0IGdyYXBoIGZyb20gJWQgcmVmIgorbXNnaWRfcGx1cmFsICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBmcm9tICVkIHJlZnMiCittc2dzdHJbMF0gIuato+WcqOW+niAlZCDlgIvlvJXnlKjkuK3lsIvmib7mj5DkuqTlnJbnmoTmj5DkuqQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21taXQgb2JqZWN0IGlkOiAlcyIKK21zZ3N0ciAi54Sh5pWI55qE5o+Q5Lqk54mp5Lu2IElE77yaJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEyNDkKK21zZ2lkICJGaW5kaW5nIGNvbW1pdHMgZm9yIGNvbW1pdCBncmFwaCBhbW9uZyBwYWNrZWQgb2JqZWN0cyIKK21zZ3N0ciAi5q2j5Zyo5omT5YyF54mp5Lu25Lit5bCL5om+5o+Q5Lqk5ZyW55qE5o+Q5LqkIgorCisjOiBjb21taXQtZ3JhcGguYzoxMjY0Cittc2dpZCAiQ291bnRpbmcgZGlzdGluY3QgY29tbWl0cyBpbiBjb21taXQgZ3JhcGgiCittc2dzdHIgIuato+WcqOioiOeul+aPkOS6pOWcluS4reS4jeWQjOeahOaPkOS6pCIKKworIzogY29tbWl0LWdyYXBoLmM6MTI5NAorbXNnaWQgIkZpbmRpbmcgZXh0cmEgZWRnZXMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICLmraPlnKjlsIvmib7mj5DkuqTlnJbkuK3poY3lpJbnmoTpgooiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjEzNDAKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgY29ycmVjdCBudW1iZXIgb2YgYmFzZSBncmFwaCBpZHMiCittc2dzdHIgIueEoeazleWvq+WFpeato+eiuuaVuOmHj+eahOWfuuekjuWcluW9oiBJRCIKKworIzogY29tbWl0LWdyYXBoLmM6MTM3MyBtaWR4LmM6ODE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbGVhZGluZyBkaXJlY3RvcmllcyBvZiAlcyIKK21zZ3N0ciAi5LiN6IO954K6ICVzIOW7uueri+WFiOWwjuebrumMhCIKKworIzogY29tbWl0LWdyYXBoLmM6MTM4NSBidWlsdGluL2luZGV4LXBhY2suYzozMDYgYnVpbHRpbi9yZXBhY2suYzoyNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAnJXMnIgorbXNnc3RyICLkuI3og73lu7rnq4sgJyVzJyIKKworIzogY29tbWl0LWdyYXBoLmM6MTQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJXcml0aW5nIG91dCBjb21taXQgZ3JhcGggaW4gJWQgcGFzcyIKK21zZ2lkX3BsdXJhbCAiV3JpdGluZyBvdXQgY29tbWl0IGdyYXBoIGluICVkIHBhc3NlcyIKK21zZ3N0clswXSAi5q2j5Zyo55SoICVkIOatpeWvq+WHuuaPkOS6pOWcliIKKworIzogY29tbWl0LWdyYXBoLmM6MTQ4NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGNvbW1pdC1ncmFwaCBjaGFpbiBmaWxlIgorbXNnc3RyICLnhKHms5XplovllZ/mj5DkuqTlnJblvaLpj4jmqpTmoYgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE0OTgKK21zZ2lkICJmYWlsZWQgdG8gcmVuYW1lIGJhc2UgY29tbWl0LWdyYXBoIGZpbGUiCittc2dzdHIgIueEoeazlemHjeaWsOWRveWQjeWfuuekjuaPkOS6pOWcluW9ouaqlOahiCIKKworIzogY29tbWl0LWdyYXBoLmM6MTUxOAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgdGVtcG9yYXJ5IGNvbW1pdC1ncmFwaCBmaWxlIgorbXNnc3RyICLnhKHms5Xph43mlrDlkb3lkI3mmqvmmYLmj5DkuqTlnJblvaLmqpTmoYgiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE2MzEKK21zZ2lkICJTY2FubmluZyBtZXJnZWQgY29tbWl0cyIKK21zZ3N0ciAi5q2j5Zyo5o6D5o+P5ZCI5L215o+Q5LqkIgorCisjOiBjb21taXQtZ3JhcGguYzoxNjQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZHVwbGljYXRlIGNvbW1pdCBpZCAlcyIKK21zZ3N0ciAi5oSP5aSW55qE6YeN6KSH5o+Q5LqkIElEICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoxNjY1Cittc2dpZCAiTWVyZ2luZyBjb21taXQtZ3JhcGgiCittc2dzdHIgIuato+WcqOWQiOS9teaPkOS6pOWcluW9oiIKKworIzogY29tbWl0LWdyYXBoLmM6MTg0NAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGUgY29tbWl0IGdyYXBoIGZvcm1hdCBjYW5ub3Qgd3JpdGUgJWQgY29tbWl0cyIKK21zZ3N0ciAi5o+Q5Lqk5ZyW5qC85byP5LiN6IO95a+r5YWlICVkIOWAi+aPkOS6pCIKKworIzogY29tbWl0LWdyYXBoLmM6MTg1NQorbXNnaWQgInRvbyBtYW55IGNvbW1pdHMgdG8gd3JpdGUgZ3JhcGgiCittc2dzdHIgIuaPkOS6pOWkquWkmuS4jeiDveeVq+WcliIKKworIzogY29tbWl0LWdyYXBoLmM6MTk0NAorbXNnaWQgInRoZSBjb21taXQtZ3JhcGggZmlsZSBoYXMgaW5jb3JyZWN0IGNoZWNrc3VtIGFuZCBpcyBsaWtlbHkgY29ycnVwdCIKK21zZ3N0ciAi5o+Q5Lqk5ZyW5qqU5qGI55qE57i95ZKM5qqi5p+l56K86Yyv6Kqk77yM5Y+v6IO95bey57aT5pCN5aOeIgorCisjOiBjb21taXQtZ3JhcGguYzoxOTU0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IE9JRCBvcmRlcjogJXMgdGhlbiAlcyIKK21zZ3N0ciAi5o+Q5Lqk5ZyW5b2i55qE54mp5Lu2IElEIOmghuW6j+S4jeato+eiuu+8miVzIOeEtuW+jCAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MTk2NCBjb21taXQtZ3JhcGguYzoxOTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdC1ncmFwaCBoYXMgaW5jb3JyZWN0IGZhbm91dCB2YWx1ZTogZmFub3V0WyVkXSA9ICV1ICE9ICV1IgorbXNnc3RyICLmj5DkuqTlnJblvaLmnInkuI3mraPnorrnmoTmiYflh7rlgLzvvJpmYW5vdXRbJWRdID0gJXUgIT0gJXUiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjE5NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIGNvbW1pdCAlcyBmcm9tIGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAi54Sh5rOV5b6e5o+Q5Lqk5ZyW5b2i5Lit6Kej5p6Q5o+Q5LqkICVzIgorCisjOiBjb21taXQtZ3JhcGguYzoxOTg5Cittc2dpZCAiVmVyaWZ5aW5nIGNvbW1pdHMgaW4gY29tbWl0IGdyYXBoIgorbXNnc3RyICLmraPlnKjpqZforYnmj5DkuqTlnJbkuK3nmoTmj5DkuqQiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIGNvbW1pdCAlcyBmcm9tIG9iamVjdCBkYXRhYmFzZSBmb3IgY29tbWl0LWdyYXBoIgorbXNnc3RyICLnhKHms5Xlvp7mj5DkuqTlnJblvaLnmoTnianku7bluqvkuK3op6PmnpDmj5DkuqQgJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicm9vdCB0cmVlIE9JRCBmb3IgY29tbWl0ICVzIGluIGNvbW1pdC1ncmFwaCBpcyAlcyAhPSAlcyIKK21zZ3N0ciAi5o+Q5Lqk5ZyW5b2i5Lit55qE5o+Q5LqkICVzIOeahOagueaoueeLgOeJqeS7tiBJRCDmmK8gJXMgIT0gJXMiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBsaXN0IGZvciBjb21taXQgJXMgaXMgdG9vIGxvbmciCittc2dzdHIgIuaPkOS6pCAlcyDnmoTmj5DkuqTlnJblvaLniLbmj5DkuqTliJfooajlpKrplbfkuoYiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIHBhcmVudCBmb3IgJXMgaXMgJXMgIT0gJXMiCittc2dzdHIgIiVzIOeahOaPkOS6pOWcluW9oueItuaPkOS6pOaYryAlcyAhPSAlcyIKKworIzogY29tbWl0LWdyYXBoLmM6MjA0MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQtZ3JhcGggcGFyZW50IGxpc3QgZm9yIGNvbW1pdCAlcyB0ZXJtaW5hdGVzIGVhcmx5IgorbXNnc3RyICLmj5DkuqQgJXMg55qE5o+Q5Lqk5ZyW5b2i54i25o+Q5Lqk5YiX6KGo6YGO5pep57WC5q2iIgorCisjOiBjb21taXQtZ3JhcGguYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb21taXQtZ3JhcGggaGFzIGdlbmVyYXRpb24gbnVtYmVyIHplcm8gZm9yIGNvbW1pdCAlcywgYnV0IG5vbi16ZXJvIGVsc2V3aGVyZSIKK21zZ3N0ciAi5o+Q5Lqk5ZyW5b2i5Lit5o+Q5LqkICVzIOeahOS4luS7o+iZn+aYr+mbtu+8jOS9huWFtuWug+WcsOaWuemdnumbtiIKKworIzogY29tbWl0LWdyYXBoLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29tbWl0LWdyYXBoIGhhcyBub24temVybyBnZW5lcmF0aW9uIG51bWJlciBmb3IgY29tbWl0ICVzLCBidXQgemVybyBlbHNld2hlcmUiCittc2dzdHIgIuaPkOS6pOWcluW9ouS4reaPkOS6pCAlcyDnmoTkuJbku6PomZ/pnZ7pm7bvvIzkvYblhbblroPlnLDmlrnmmK/pm7YiCisKKyM6IGNvbW1pdC1ncmFwaC5jOjIwNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0LWdyYXBoIGdlbmVyYXRpb24gZm9yIGNvbW1pdCAlcyBpcyAldSAhPSAldSIKK21zZ3N0ciAi5o+Q5Lqk5ZyW5b2i5Lit55qE5o+Q5LqkICVzIOeahOS4luS7o+iZn+aYryAldSAhPSAldSIKKworIzogY29tbWl0LWdyYXBoLmM6MjA3MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgZGF0ZSBmb3IgY29tbWl0ICVzIGluIGNvbW1pdC1ncmFwaCBpcyAlPFBSSXVNQVg+ICE9ICU8UFJJdU1BWD4iCittc2dzdHIgIuaPkOS6pOWcluW9ouS4reaPkOS6pCAlcyDnmoTmj5DkuqTml6XmnJ/mmK8gJTxQUkl1TUFYPiAhPSAlPFBSSXVNQVg+IgorCisjOiBjb21wYXQvb2JzdGFjay5jOjQwNiBjb21wYXQvb2JzdGFjay5jOjQwOAorbXNnaWQgIm1lbW9yeSBleGhhdXN0ZWQiCittc2dzdHIgIuiomOaGtumrlOiAl+eboSIKKworIzogY29uZmlnLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJleGNlZWRlZCBtYXhpbXVtIGluY2x1ZGUgZGVwdGggKCVkKSB3aGlsZSBpbmNsdWRpbmdcbiIKKyJcdCVzXG4iCisiZnJvbVxuIgorIlx0JXNcbiIKKyJUaGlzIG1pZ2h0IGJlIGR1ZSB0byBjaXJjdWxhciBpbmNsdWRlcy4iCittc2dzdHIgIiIKKyLotoXpgY7kuobmnIDlpKfljIXlkKvmt7HluqbvvIglMSRk77yJ77yM55W25b6eXG4iCisiXHQlMyRzXG4iCisi5YyF5ZCrXG4iCisiXHQlMiRzXG4iCisi6YCZ5Y+v6IO95piv5Zug54K65b6q55Kw5YyF5ZCr44CCIgorCisjOiBjb25maWcuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGV4cGFuZCBpbmNsdWRlIHBhdGggJyVzJyIKK21zZ3N0ciAi54Sh5rOV5pO05bGV5YyF5ZCr6Lev5b6RICclcyciCisKKyM6IGNvbmZpZy5jOjE1MQorbXNnaWQgInJlbGF0aXZlIGNvbmZpZyBpbmNsdWRlcyBtdXN0IGNvbWUgZnJvbSBmaWxlcyIKK21zZ3N0ciAi55u45bCN6Lev5b6R55qE6Kit5a6a5qqU5qGI5byV55So5b+F6aCI5L6G6Ieq5pa85qqU5qGIIgorCisjOiBjb25maWcuYzoxOTcKK21zZ2lkICJyZWxhdGl2ZSBjb25maWcgaW5jbHVkZSBjb25kaXRpb25hbHMgbXVzdCBjb21lIGZyb20gZmlsZXMiCittc2dzdHIgIuebuOWwjei3r+W+keeahOioreWumuaqlOahiOaineS7tuW8leeUqOW/hemgiOS+huiHquaWvOaqlOahiCIKKworIzogY29uZmlnLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgImtleSBkb2VzIG5vdCBjb250YWluIGEgc2VjdGlvbjogJXMiCittc2dzdHIgIumNteWQjeaykuacieWMheWQq+S4gOWAi+Wwj+evgOWQjeeose+8miVzIgorCisjOiBjb25maWcuYzozODIKKyMsIGMtZm9ybWF0Cittc2dpZCAia2V5IGRvZXMgbm90IGNvbnRhaW4gdmFyaWFibGUgbmFtZTogJXMiCittc2dzdHIgIumNteWQjeaykuacieWMheWQq+iuiuaVuOWQje+8miVzIgorCisjOiBjb25maWcuYzo0MDYgc2VxdWVuY2VyLmM6MjQ0NAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGtleTogJXMiCittc2dzdHIgIueEoeaViOmNteWQje+8miVzIgorCisjOiBjb25maWcuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBrZXkgKG5ld2xpbmUpOiAlcyIKK21zZ3N0ciAi54Sh5pWI6Y215ZCN77yI5pyJ5o+b6KGM56ym6Jmf77yJ77yaJXMiCisKKyM6IGNvbmZpZy5jOjQ0OCBjb25maWcuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYm9ndXMgY29uZmlnIHBhcmFtZXRlcjogJXMiCittc2dzdHIgIuWBveioreWumuWPg+aVuO+8miVzIgorCisjOiBjb25maWcuYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYm9ndXMgZm9ybWF0IGluICVzIgorbXNnc3RyICIlcyDkuK3moLzlvI/pjK/oqqQiCisKKyM6IGNvbmZpZy5jOjgyMQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gYmxvYiAlcyIKK21zZ3N0ciAi6LOH5paZ54mp5Lu2ICUyJHMg5Lit6Yyv6Kqk55qE6Kit5a6a6KGMICUxJGQiCisKKyM6IGNvbmZpZy5jOjgyNQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gZmlsZSAlcyIKK21zZ3N0ciAi5qqU5qGIICUyJHMg5Lit6Yyv6Kqk55qE6Kit5a6a6KGMICUxJGQiCisKKyM6IGNvbmZpZy5jOjgyOQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgIuaomea6lui8uOWFpeS4remMr+iqpOeahOioreWumuihjCAlZCIKKworIzogY29uZmlnLmM6ODMzCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiBzdWJtb2R1bGUtYmxvYiAlcyIKK21zZ3N0ciAi5a2Q5qih57WE6LOH5paZ54mp5Lu2ICUyJHMg5Lit6Yyv6Kqk55qE6Kit5a6a6KGMICUxJGQiCisKKyM6IGNvbmZpZy5jOjgzNworIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgY29uZmlnIGxpbmUgJWQgaW4gY29tbWFuZCBsaW5lICVzIgorbXNnc3RyICLmjIfku6TliJcgJTIkcyDkuK3pjK/oqqTnmoToqK3lrprooYwgJTEkZCIKKworIzogY29uZmlnLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBjb25maWcgbGluZSAlZCBpbiAlcyIKK21zZ3N0ciAi5ZyoICUyJHMg5Lit6Yyv6Kqk55qE6Kit5a6a6KGMICUxJGQiCisKKyM6IGNvbmZpZy5jOjk3OAorbXNnaWQgIm91dCBvZiByYW5nZSIKK21zZ3N0ciAi6LaF5Ye656+E5ZyNIgorCisjOiBjb25maWcuYzo5NzgKK21zZ2lkICJpbnZhbGlkIHVuaXQiCittc2dzdHIgIueEoeaViOeahOWWruS9jSIKKworIzogY29uZmlnLmM6OTc5CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnOiAlcyIKK21zZ3N0ciAi6Kit5a6a6K6K5pW4ICclMiRzJyDnmoTmlbjlrZflj5blgLwgJyUxJHMnIOioreWumumMr+iqpO+8miUzJHMiCisKKyM6IGNvbmZpZy5jOjk5OAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBibG9iICVzOiAlcyIKK21zZ3N0ciAi6LOH5paZ54mp5Lu2ICUzJHMg5Lit6Kit5a6a6K6K5pW4ICclMiRzJyDpjK/oqqTnmoTlj5blgLwgJyUxJHMn77yaJTQkcyIKKworIzogY29uZmlnLmM6MTAwMQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBmaWxlICVzOiAlcyIKK21zZ3N0ciAi5qqU5qGIICUzJHMg5Lit6Kit5a6a6K6K5pW4ICclMiRzJyDpjK/oqqTnmoTlj5blgLwgJyUxJHMn77yaJTQkcyIKKworIzogY29uZmlnLmM6MTAwNAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgbnVtZXJpYyBjb25maWcgdmFsdWUgJyVzJyBmb3IgJyVzJyBpbiBzdGFuZGFyZCBpbnB1dDogJXMiCittc2dzdHIgIuaomea6lui8uOWFpeS4reioreWumuiuiuaVuCAnJTIkcycg6Yyv6Kqk55qE5Y+W5YC8ICclMSRzJ++8miUzJHMiCisKKyM6IGNvbmZpZy5jOjEwMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gc3VibW9kdWxlLWJsb2IgJXM6ICVzIgorbXNnc3RyICLlrZDmqKHntYTos4fmlpkgJTMkcyDkuK3oqK3lrprorormlbggJyUyJHMnIOmMr+iqpOeahOWPluWAvCAnJTEkcyfvvJolNCRzIgorCisjOiBjb25maWcuYzoxMDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAnJXMnIGZvciAnJXMnIGluIGNvbW1hbmQgbGluZSAlczogJXMiCittc2dzdHIgIuaMh+S7pOWIlyAlMyRzIOS4reioreWumuiuiuaVuCAnJTIkcycg6Yyv6Kqk55qE5Y+W5YC8ICclMSRzJ++8miU0JHMiCisKKyM6IGNvbmZpZy5jOjEwMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIG51bWVyaWMgY29uZmlnIHZhbHVlICclcycgZm9yICclcycgaW4gJXM6ICVzIgorbXNnc3RyICLlnKggJTMkcyDkuK3oqK3lrprorormlbggJyUyJHMnIOmMr+iqpOeahOWPluWAvCAnJTEkcyfvvJolNCRzIgorCisjOiBjb25maWcuYzoxMTA4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBleHBhbmQgdXNlciBkaXIgaW46ICclcyciCittc2dzdHIgIueEoeazleaTtOWxleS9v+eUqOiAheebrumMhO+8miclcyciCisKKyM6IGNvbmZpZy5jOjExMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBmb3IgJyVzJyBpcyBub3QgYSB2YWxpZCB0aW1lc3RhbXAiCittc2dzdHIgIiclMiRzJyDnmoTlgLwgJyUxJHMnIOS4jeaYr+S4gOWAi+acieaViOeahOaZgumWk+aIsyIKKworIzogY29uZmlnLmM6MTIwOAorIywgYy1mb3JtYXQKK21zZ2lkICJhYmJyZXYgbGVuZ3RoIG91dCBvZiByYW5nZTogJWQiCittc2dzdHIgIue4ruWvq+mVt+W6pui2heWHuuevhOWcje+8miVkIgorCisjOiBjb25maWcuYzoxMjIyIGNvbmZpZy5jOjEyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHpsaWIgY29tcHJlc3Npb24gbGV2ZWwgJWQiCittc2dzdHIgIumMr+iqpOeahCB6bGliIOWjk+e4rue0muWIpSAlZCIKKworIzogY29uZmlnLmM6MTMyNQorbXNnaWQgImNvcmUuY29tbWVudENoYXIgc2hvdWxkIG9ubHkgYmUgb25lIGNoYXJhY3RlciIKK21zZ3N0ciAiY29yZS5jb21tZW50Q2hhciDmh4noqbLmmK/kuIDlgIvlrZflhYMiCisKKyM6IGNvbmZpZy5jOjEzNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBtb2RlIGZvciBvYmplY3QgY3JlYXRpb246ICVzIgorbXNnc3RyICLnhKHmlYjnmoTnianku7blu7rnq4vmqKHlvI/vvJolcyIKKworIzogY29uZmlnLmM6MTQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgdmFsdWUgZm9yICVzIgorbXNnc3RyICIlcyDnmoTlj5blgLzmoLzlvI/pjK/oqqQiCisKKyM6IGNvbmZpZy5jOjE0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIHZhbHVlIGZvciAlczogJXMiCittc2dzdHIgIiVzIOeahOWPluWAvOagvOW8j+mMr+iqpO+8miVzIgorCisjOiBjb25maWcuYzoxNDU3Cittc2dpZCAibXVzdCBiZSBvbmUgb2Ygbm90aGluZywgbWF0Y2hpbmcsIHNpbXBsZSwgdXBzdHJlYW0gb3IgY3VycmVudCIKK21zZ3N0ciAi5b+F6aCI5piv5YW25Lit5LmL5LiA77yabm90aGluZ+OAgW1hdGNoaW5n44CBc2ltcGxl44CBdXBzdHJlYW0g5oiWIGN1cnJlbnQiCisKKyM6IGNvbmZpZy5jOjE1MTggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTQxCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBwYWNrIGNvbXByZXNzaW9uIGxldmVsICVkIgorbXNnc3RyICLpjK/oqqTnmoTmiZPljIXlo5PnuK7ntJrliKUgJWQiCisKKyM6IGNvbmZpZy5jOjE2MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGxvYWQgY29uZmlnIGJsb2Igb2JqZWN0ICclcyciCittc2dzdHIgIueEoeazleW+nuizh+aWmeeJqeS7tiAnJXMnIOi8ieWFpeioreWumiIKKworIzogY29uZmlnLmM6MTY0MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZlcmVuY2UgJyVzJyBkb2VzIG5vdCBwb2ludCB0byBhIGJsb2IiCittc2dzdHIgIuW8leeUqCAnJXMnIOaykuacieaMh+WQkeS4gOWAi+izh+aWmeeJqeS7tiIKKworIzogY29uZmlnLmM6MTY1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzb2x2ZSBjb25maWcgYmxvYiAnJXMnIgorbXNnc3RyICLkuI3og73op6PmnpDoqK3lrprnianku7YgJyVzJyIKKworIzogY29uZmlnLmM6MTY4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgJXMiCittc2dzdHIgIuino+aekCAlcyDlpLHmlZciCisKKyM6IGNvbmZpZy5jOjE3NDMKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29tbWFuZC1saW5lIGNvbmZpZyIKK21zZ3N0ciAi54Sh5rOV6Kej5p6Q5oyH5Luk5YiX5Lit55qE6Kit5a6aIgorCisjOiBjb25maWcuYzoyMDk3Cittc2dpZCAidW5rbm93biBlcnJvciBvY2N1cnJlZCB3aGlsZSByZWFkaW5nIHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIgorbXNnc3RyICLlnKjoroDlj5boqK3lrprmqpTmoYjmmYLpgYfliLDmnKrnn6XpjK/oqqQiCisKKyM6IGNvbmZpZy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCAlczogJyVzJyIKK21zZ3N0ciAi54Sh5pWIICVz77yaJyVzJyIKKworIzogY29uZmlnLmM6MjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJzcGxpdEluZGV4Lm1heFBlcmNlbnRDaGFuZ2UgdmFsdWUgJyVkJyBzaG91bGQgYmUgYmV0d2VlbiAwIGFuZCAxMDAiCittc2dzdHIgInNwbGl0SW5kZXgubWF4UGVyY2VudENoYW5nZSDnmoTlj5blgLwgJyVkJyDmh4noqbLku4vmlrwgMCDlkowgMTAwIOS5i+mWkyIKKworIzogY29uZmlnLmM6MjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgJyVzJyBmcm9tIGNvbW1hbmQtbGluZSBjb25maWciCittc2dzdHIgIueEoeazleino+aekOaMh+S7pOWIl+ioreWumuS4reeahCAnJXMnIgorCisjOiBjb25maWcuYzoyMzYwCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBjb25maWcgdmFyaWFibGUgJyVzJyBpbiBmaWxlICclcycgYXQgbGluZSAlZCIKK21zZ3N0ciAi5Zyo5qqU5qGIICclMiRzJyDnmoTnrKwgJTMkZCDooYznmbznj77pjK/oqqTnmoToqK3lrprorormlbggJyUxJHMnIgorCisjOiBjb25maWcuYzoyNDQxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgc2VjdGlvbiBuYW1lICclcyciCittc2dzdHIgIueEoeaViOeahOWwj+evgOWQjeeosSAnJXMnIgorCisjOiBjb25maWcuYzoyNDczCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGhhcyBtdWx0aXBsZSB2YWx1ZXMiCittc2dzdHIgIiVzIOacieWkmuWAi+WPluWAvCIKKworIzogY29uZmlnLmM6MjUwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgbmV3IGNvbmZpZ3VyYXRpb24gZmlsZSAlcyIKK21zZ3N0ciAi5a+r5YWl5paw55qE6Kit5a6a5qqU5qGIICVzIOWkseaVlyIKKworIzogY29uZmlnLmM6Mjc1NCBjb25maWcuYzozMDc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBsb2NrIGNvbmZpZyBmaWxlICVzIgorbXNnc3RyICLkuI3og73pjpblrproqK3lrprmqpTmoYggJXMiCisKKyM6IGNvbmZpZy5jOjI3NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbmluZyAlcyIKK21zZ3N0ciAi6ZaL5ZWfICVzIgorCisjOiBjb25maWcuYzoyODAwIGJ1aWx0aW4vY29uZmlnLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGF0dGVybjogJXMiCittc2dzdHIgIueEoeaViOaooeW8j++8miVzIgorCisjOiBjb25maWcuYzoyODI1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29uZmlnIGZpbGUgJXMiCittc2dzdHIgIueEoeaViOeahOioreWumuaqlOahiCAlcyIKKworIzogY29uZmlnLmM6MjgzOCBjb25maWcuYzozMDkxCisjLCBjLWZvcm1hdAorbXNnaWQgImZzdGF0IG9uICVzIGZhaWxlZCIKK21zZ3N0ciAi5bCNICVzIOWRvOWPqyBmc3RhdCDlpLHmlZciCisKKyM6IGNvbmZpZy5jOjI4NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1tYXAgJyVzJyIKK21zZ3N0ciAi5LiN6IO9IG1tYXAgJyVzJyIKKworIzogY29uZmlnLmM6Mjg1OCBjb25maWcuYzozMDk2CisjLCBjLWZvcm1hdAorbXNnaWQgImNobW9kIG9uICVzIGZhaWxlZCIKK21zZ3N0ciAi5bCNICVzIOWRvOWPqyBjaG1vZCDlpLHmlZciCisKKyM6IGNvbmZpZy5jOjI5NDMgY29uZmlnLmM6MzE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgY29uZmlnIGZpbGUgJXMiCittc2dzdHIgIuS4jeiDveWvq+WFpeioreWumuaqlOahiCAlcyIKKworIzogY29uZmlnLmM6Mjk3NworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc2V0ICclcycgdG8gJyVzJyIKK21zZ3N0ciAi5LiN6IO96Kit5a6aICclcycg54K6ICclcyciCisKKyM6IGNvbmZpZy5jOjI5NzkgYnVpbHRpbi9yZW1vdGUuYzo2NTUgYnVpbHRpbi9yZW1vdGUuYzo4NDkgYnVpbHRpbi9yZW1vdGUuYzo4NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHVuc2V0ICclcyciCittc2dzdHIgIuS4jeiDveWPlua2iOioreWumiAnJXMnIgorCisjOiBjb25maWcuYzozMDY5CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgc2VjdGlvbiBuYW1lOiAlcyIKK21zZ3N0ciAi54Sh5pWI55qE5bCP56+A5ZCN56ix77yaJXMiCisKKyM6IGNvbmZpZy5jOjMyMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyB2YWx1ZSBmb3IgJyVzJyIKK21zZ3N0ciAiJXMg55qE5Y+W5YC857y65bCRIgorCisjOiBjb25uZWN0LmM6NjEKK21zZ2lkICJ0aGUgcmVtb3RlIGVuZCBodW5nIHVwIHVwb24gaW5pdGlhbCBjb250YWN0IgorbXNnc3RyICLpgaDnq6/lnKjliJ3lp4vpgKPnt5rmmYLljbPmjpvmlrciCisKKyM6IGNvbm5lY3QuYzo2MworbXNnaWQgIiIKKyJDb3VsZCBub3QgcmVhZCBmcm9tIHJlbW90ZSByZXBvc2l0b3J5LlxuIgorIlxuIgorIlBsZWFzZSBtYWtlIHN1cmUgeW91IGhhdmUgdGhlIGNvcnJlY3QgYWNjZXNzIHJpZ2h0c1xuIgorImFuZCB0aGUgcmVwb3NpdG9yeSBleGlzdHMuIgorbXNnc3RyICIiCisi54Sh5rOV6K6A5Y+W6YGg56uv54mI5pys5bqr44CCXG4iCisiXG4iCisi6KuL56K66KqN5oKo5pyJ5q2j56K655qE5a2Y5Y+W5qyK6ZmQ5Lim5LiU54mI5pys5bqr5a2Y5Zyo44CCIgorCisjOiBjb25uZWN0LmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAic2VydmVyIGRvZXNuJ3Qgc3VwcG9ydCAnJXMnIgorbXNnc3RyICLkvLrmnI3lmajkuI3mlK/mj7QgJyVzJyIKKworIzogY29ubmVjdC5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJzZXJ2ZXIgZG9lc24ndCBzdXBwb3J0IGZlYXR1cmUgJyVzJyIKK21zZ3N0ciAi5Ly65pyN5Zmo5LiN5pSv5o+054m55oCnICclcyciCisKKyM6IGNvbm5lY3QuYzoxMTQKK21zZ2lkICJleHBlY3RlZCBmbHVzaCBhZnRlciBjYXBhYmlsaXRpZXMiCittc2dzdHIgIuWcqOiDveWKm+S5i+W+jOaHieeCuuS4gOWAiyBmbHVzaCDljIUiCisKKyM6IGNvbm5lY3QuYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgY2FwYWJpbGl0aWVzIGFmdGVyIGZpcnN0IGxpbmUgJyVzJyIKK21zZ3N0ciAi5b+955Wl56ys5LiA6KGMICclcycg5LmL5b6M55qE6IO95Yqb5qyE5L2NIgorCisjOiBjb25uZWN0LmM6MjUyCittc2dpZCAicHJvdG9jb2wgZXJyb3I6IHVuZXhwZWN0ZWQgY2FwYWJpbGl0aWVzXnt9IgorbXNnc3RyICLljZTlrprpjK/oqqTvvJrmhI/lpJbnmoQgY2FwYWJpbGl0aWVzXnt9IgorCisjOiBjb25uZWN0LmM6MjczCisjLCBjLWZvcm1hdAorbXNnaWQgInByb3RvY29sIGVycm9yOiBleHBlY3RlZCBzaGFsbG93IHNoYS0xLCBnb3QgJyVzJyIKK21zZ3N0ciAi5Y2U5a6a6Yyv6Kqk77ya6aCQ5pyf5re66KSH6KO9IHNoYS0x77yM5Y275b6X5YiwICclcyciCisKKyM6IGNvbm5lY3QuYzoyNzUKK21zZ2lkICJyZXBvc2l0b3J5IG9uIHRoZSBvdGhlciBlbmQgY2Fubm90IGJlIHNoYWxsb3ciCittc2dzdHIgIuWPpuS4gOerr+eahOeJiOacrOW6q+S4jeiDveaYr+a3uuikh+ijveeJiOacrOW6qyIKKworIzogY29ubmVjdC5jOjMxMworbXNnaWQgImludmFsaWQgcGFja2V0IgorbXNnc3RyICLnhKHmlYjlsIHljIUiCisKKyM6IGNvbm5lY3QuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJvdG9jb2wgZXJyb3I6IHVuZXhwZWN0ZWQgJyVzJyIKK21zZ3N0ciAi5Y2U5a6a6Yyv6Kqk77ya5oSP5aSW55qEICclcyciCisKKyM6IGNvbm5lY3QuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBscy1yZWZzIHJlc3BvbnNlOiAlcyIKK21zZ3N0ciAi54Sh5pWI55qEIGxzLXJlZnMg5Zue5oeJ77yaJXMiCisKKyM6IGNvbm5lY3QuYzo0NDUKK21zZ2lkICJleHBlY3RlZCBmbHVzaCBhZnRlciByZWYgbGlzdGluZyIKK21zZ3N0ciAi5Zyo5byV55So5YiX6KGo5LmL5b6M5oeJ6Kmy5pyJ5LiA5YCLIGZsdXNoIOWMhSIKKworIzogY29ubmVjdC5jOjU0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcm90b2NvbCAnJXMnIGlzIG5vdCBzdXBwb3J0ZWQiCittc2dzdHIgIuS4jeaUr+aPtCAnJXMnIOWNlOWumiIKKworIzogY29ubmVjdC5jOjU5NQorbXNnaWQgInVuYWJsZSB0byBzZXQgU09fS0VFUEFMSVZFIG9uIHNvY2tldCIKK21zZ3N0ciAi54Sh5rOV54K6IHNvY2tldCDoqK3lrpogU09fS0VFUEFMSVZFIgorCisjOiBjb25uZWN0LmM6NjM1IGNvbm5lY3QuYzo2OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiTG9va2luZyB1cCAlcyAuLi4gIgorbXNnc3RyICLlsIvmib4gJXMgLi4uIgorCisjOiBjb25uZWN0LmM6NjM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzIChwb3J0ICVzKSAoJXMpIgorbXNnc3RyICLnhKHms5XlsIvmib4gJXPvvIjln6AgJXPvvInvvIglc++8iSIKKworIy4gVFJBTlNMQVRPUlM6IHRoaXMgaXMgdGhlIGVuZCBvZiAiTG9va2luZyB1cCAlcyAuLi4gIgorIzogY29ubmVjdC5jOjY0MyBjb25uZWN0LmM6NzE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkb25lLlxuIgorIkNvbm5lY3RpbmcgdG8gJXMgKHBvcnQgJXMpIC4uLiAiCittc2dzdHIgIiIKKyLlrozmiJDjgIJcbiIKKyLpgKPnt5rliLAgJXPvvIjln6AgJXPvvIkuLi4gIgorCisjOiBjb25uZWN0LmM6NjY1IGNvbm5lY3QuYzo3NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjb25uZWN0IHRvICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisi54Sh5rOV6YCj57ea5YiwICVz77yaXG4iCisiJXMiCisKKyMuIFRSQU5TTEFUT1JTOiB0aGlzIGlzIHRoZSBlbmQgb2YgIkNvbm5lY3RpbmcgdG8gJXMgKHBvcnQgJXMpIC4uLiAiCisjOiBjb25uZWN0LmM6NjcxIGNvbm5lY3QuYzo3NDgKK21zZ2lkICJkb25lLiIKK21zZ3N0ciAi5a6M5oiQ44CCIgorCisjOiBjb25uZWN0LmM6NzAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb29rIHVwICVzICglcykiCittc2dzdHIgIueEoeazleWwi+aJviAlc++8iCVz77yJIgorCisjOiBjb25uZWN0LmM6NzA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gcG9ydCAlcyIKK21zZ3N0ciAi5pyq55+l5Z+gICVzIgorCisjOiBjb25uZWN0LmM6ODQ1IGNvbm5lY3QuYzoxMTc1CisjLCBjLWZvcm1hdAorbXNnaWQgInN0cmFuZ2UgaG9zdG5hbWUgJyVzJyBibG9ja2VkIgorbXNnc3RyICLlt7LpmLvmraLlpYfmgKrnmoTkuLvmqZ/lkI3nqLEgJyVzJyIKKworIzogY29ubmVjdC5jOjg0NworIywgYy1mb3JtYXQKK21zZ2lkICJzdHJhbmdlIHBvcnQgJyVzJyBibG9ja2VkIgorbXNnc3RyICLlt7LpmLvmraLlpYfmgKrnmoTln6DomZ8gJyVzJyIKKworIzogY29ubmVjdC5jOjg1NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhcnQgcHJveHkgJXMiCittc2dzdHIgIuS4jeiDveWVn+WLleS7o+eQhiAlcyIKKworIzogY29ubmVjdC5jOjkyOAorbXNnaWQgIm5vIHBhdGggc3BlY2lmaWVkOyBzZWUgJ2dpdCBoZWxwIHB1bGwnIGZvciB2YWxpZCB1cmwgc3ludGF4IgorbXNnc3RyICLmnKrmjIflrprot6/lvpHvvIzln7fooYwgJ2dpdCBoZWxwIHB1bGwnIOaqouimluacieaViOeahCB1cmwg6Kqe5rOVIgorCisjOiBjb25uZWN0LmM6MTEyMworbXNnaWQgInNzaCB2YXJpYW50ICdzaW1wbGUnIGRvZXMgbm90IHN1cHBvcnQgLTQiCittc2dzdHIgInNzaCDororpq5QgJ3NpbXBsZScg5LiN5pSv5o+0IC00IgorCisjOiBjb25uZWN0LmM6MTEzNQorbXNnaWQgInNzaCB2YXJpYW50ICdzaW1wbGUnIGRvZXMgbm90IHN1cHBvcnQgLTYiCittc2dzdHIgInNzaCDororpq5QgJ3NpbXBsZScg5LiN5pSv5o+0IC02IgorCisjOiBjb25uZWN0LmM6MTE1MgorbXNnaWQgInNzaCB2YXJpYW50ICdzaW1wbGUnIGRvZXMgbm90IHN1cHBvcnQgc2V0dGluZyBwb3J0IgorbXNnc3RyICJzc2gg6K6K6auUICdzaW1wbGUnIOS4jeaUr+aPtOioreWumuWfoCIKKworIzogY29ubmVjdC5jOjEyNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3RyYW5nZSBwYXRobmFtZSAnJXMnIGJsb2NrZWQiCittc2dzdHIgIuW3sumYu+atouWlh+aAqueahOi3r+W+keWQjSAnJXMnIgorCisjOiBjb25uZWN0LmM6MTMxMQorbXNnaWQgInVuYWJsZSB0byBmb3JrIgorbXNnc3RyICLnhKHms5UgZm9yayIKKworIzogY29ubmVjdGVkLmM6OTggYnVpbHRpbi9mc2NrLmM6MjA4IGJ1aWx0aW4vcHJ1bmUuYzo0MworbXNnaWQgIkNoZWNraW5nIGNvbm5lY3Rpdml0eSIKK21zZ3N0ciAi5q2j5Zyo5qqi5p+l6YCj6YCa5oCnIgorCisjOiBjb25uZWN0ZWQuYzoxMTAKK21zZ2lkICJDb3VsZCBub3QgcnVuICdnaXQgcmV2LWxpc3QnIgorbXNnc3RyICLkuI3og73ln7fooYwgJ2dpdCByZXYtbGlzdCciCisKKyM6IGNvbm5lY3RlZC5jOjEzMAorbXNnaWQgImZhaWxlZCB3cml0ZSB0byByZXYtbGlzdCIKK21zZ3N0ciAi5a+r5YWlIHJldi1saXN0IOWkseaVlyIKKworIzogY29ubmVjdGVkLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHJldi1saXN0J3Mgc3RkaW4iCittc2dzdHIgIumXnOmWiSByZXYtbGlzdCDnmoTmqJnmupbovLjlhaXlpLHmlZciCisKKyM6IGNvbnZlcnQuYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBjcmxmX2FjdGlvbiAlZCIKK21zZ3N0ciAi6Z2e5rOV55qEIGNybGYg5YuV5L2cICVkIgorCisjOiBjb252ZXJ0LmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNSTEYgd291bGQgYmUgcmVwbGFjZWQgYnkgTEYgaW4gJXMiCittc2dzdHIgIiVzIOS4reeahCBDUkxGIOWwh+iiqyBMRiDlj5bku6MiCisKKyM6IGNvbnZlcnQuYzoyMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNSTEYgd2lsbCBiZSByZXBsYWNlZCBieSBMRiBpbiAlcy5cbiIKKyJUaGUgZmlsZSB3aWxsIGhhdmUgaXRzIG9yaWdpbmFsIGxpbmUgZW5kaW5ncyBpbiB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICIiCisiJXMg5Lit55qEIENSTEYg5bCH6KKrIExGIOWPluS7o+OAgjxcbiIKKyLlnKjlt6XkvZzljYDkuK3oqbLmqpTmoYjku43kv53mjIHljp/mnInnmoTmj5vooYznrKbomZ/jgIIiCisKKyM6IGNvbnZlcnQuYzoyMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiTEYgd291bGQgYmUgcmVwbGFjZWQgYnkgQ1JMRiBpbiAlcyIKK21zZ3N0ciAi5qqU5qGIICVzIOS4reeahCBMRiDlsIfooqsgQ1JMRiDlj5bku6MiCisKKyM6IGNvbnZlcnQuYzoyMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkxGIHdpbGwgYmUgcmVwbGFjZWQgYnkgQ1JMRiBpbiAlcy5cbiIKKyJUaGUgZmlsZSB3aWxsIGhhdmUgaXRzIG9yaWdpbmFsIGxpbmUgZW5kaW5ncyBpbiB5b3VyIHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICIiCisiJXMg5Lit55qEIExGIOWwh+iiqyBDUkxGIOWPluS7o+OAglxuIgorIuWcqOW3peS9nOWNgOS4reipsuaqlOahiOS7jeS/neaMgeWOn+acieeahOaPm+ihjOespuiZnyIKKworIzogY29udmVydC5jOjI4NAorIywgYy1mb3JtYXQKK21zZ2lkICJCT00gaXMgcHJvaGliaXRlZCBpbiAnJXMnIGlmIGVuY29kZWQgYXMgJXMiCittc2dzdHIgIuWmguaenOS9v+eUqCAlMiRzIOe3qOeivO+8jOemgeatouWcqCAnJTEkcycg5Lit5L2/55SoIEJPTSIKKworIzogY29udmVydC5jOjI5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZpbGUgJyVzJyBjb250YWlucyBhIGJ5dGUgb3JkZXIgbWFyayAoQk9NKS4gUGxlYXNlIHVzZSBVVEYtJS4qcyBhcyAiCisid29ya2luZy10cmVlLWVuY29kaW5nLiIKK21zZ3N0ciAi5qqU5qGIICclcycg5YyF5ZCr5L2N5YWD57WE6aCG5bqP5qiZ6KiY77yIQk9N77yJ44CC6KuL5L2/55SoIFVURi0lLipzIOS9nOeCuuW3peS9nOWNgOe3qOeivOOAgiIKKworIzogY29udmVydC5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICJCT00gaXMgcmVxdWlyZWQgaW4gJyVzJyBpZiBlbmNvZGVkIGFzICVzIgorbXNnc3RyICLlpoLmnpznt6jnorzngrogJTIkc++8jOmcgOimgeWcqCAnJTEkcycg5Lit5L2/55SoIEJPTSIKKworIzogY29udmVydC5jOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZpbGUgJyVzJyBpcyBtaXNzaW5nIGEgYnl0ZSBvcmRlciBtYXJrIChCT00pLiBQbGVhc2UgdXNlIFVURi0lc0JFIG9yIFVURi0iCisiJXNMRSAoZGVwZW5kaW5nIG9uIHRoZSBieXRlIG9yZGVyKSBhcyB3b3JraW5nLXRyZWUtZW5jb2RpbmcuIgorbXNnc3RyICIiCisi5qqU5qGIICclcycg57y65bCR5LiA5YCL5L2N5YWD57WE6aCG5bqP5qiZ6KiY77yIQk9N77yJ44CC6KuL5L2/55SoIFVURi0lc0JFIG9yIFVURi0lc0xF77yI5Y+W5rG65pa8IgorIuWtl+evgOW6j++8ieS9nOeCuuW3peS9nOWNgOe3qOeivOOAgiIKKworIzogY29udmVydC5jOjQxOSBjb252ZXJ0LmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBlbmNvZGUgJyVzJyBmcm9tICVzIHRvICVzIgorbXNnc3RyICLnhKHms5XlsI0gJyVzJyDpgLLooYzlvp4gJXMg5YiwICVzIOeahOe3qOeivCIKKworIzogY29udmVydC5jOjQ2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlbmNvZGluZyAnJXMnIGZyb20gJXMgdG8gJXMgYW5kIGJhY2sgaXMgbm90IHRoZSBzYW1lIgorbXNnc3RyICLlsIcnJXMnIOeahOe3qOeivOW+niAlcyDliLAgJXMg5L6G6L+06L2J5o+b5LiN5LiA6Ie0IgorCisjOiBjb252ZXJ0LmM6NjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmb3JrIHRvIHJ1biBleHRlcm5hbCBmaWx0ZXIgJyVzJyIKK21zZ3N0ciAi5LiN6IO9IGZvcmsg5Lul5Z+36KGM5aSW6YOo6YGO5r++5ZmoICclcyciCisKKyM6IGNvbnZlcnQuYzo2ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZlZWQgdGhlIGlucHV0IHRvIGV4dGVybmFsIGZpbHRlciAnJXMnIgorbXNnc3RyICLkuI3og73lsIfovLjlhaXlgrPpgZ7ntablpJbpg6jpgY7mv77lmaggJyVzJyIKKworIzogY29udmVydC5jOjY5NQorIywgYy1mb3JtYXQKK21zZ2lkICJleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQgJWQiCittc2dzdHIgIuWklumDqOmBjua/vuWZqCAnJXMnIOWkseaVl+eivCAlZCIKKworIzogY29udmVydC5jOjczMCBjb252ZXJ0LmM6NzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZnJvbSBleHRlcm5hbCBmaWx0ZXIgJyVzJyBmYWlsZWQiCittc2dzdHIgIuW+nuWklumDqOmBjua/vuWZqCAnJXMnIOiugOWPluWkseaVlyIKKworIzogY29udmVydC5jOjczNiBjb252ZXJ0LmM6NzkxCisjLCBjLWZvcm1hdAorbXNnaWQgImV4dGVybmFsIGZpbHRlciAnJXMnIGZhaWxlZCIKK21zZ3N0ciAi5aSW6YOo6YGO5r++5ZmoICclcycg5aSx5pWXIgorCisjOiBjb252ZXJ0LmM6ODM5Cittc2dpZCAidW5leHBlY3RlZCBmaWx0ZXIgdHlwZSIKK21zZ3N0ciAi5oSP5aSW55qE6YGO5r++6aGe5Z6LIgorCisjOiBjb252ZXJ0LmM6ODUwCittc2dpZCAicGF0aCBuYW1lIHRvbyBsb25nIGZvciBleHRlcm5hbCBmaWx0ZXIiCittc2dzdHIgIuWklumDqOmBjua/vuWZqOeahOi3r+W+keWQjeWkqumVtyIKKworIzogY29udmVydC5jOjkyNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZXh0ZXJuYWwgZmlsdGVyICclcycgaXMgbm90IGF2YWlsYWJsZSBhbnltb3JlIGFsdGhvdWdoIG5vdCBhbGwgcGF0aHMgaGF2ZSAiCisiYmVlbiBmaWx0ZXJlZCIKK21zZ3N0ciAi5aSW6YOo6YGO5r++5ZmoICclcycg5LiN5YaN5Y+v55So77yM5L2G5Lim6Z2e5omA5pyJ6Lev5b6R6YO95bey6YGO5r++IgorCisjOiBjb252ZXJ0LmM6MTIyMworbXNnaWQgInRydWUvZmFsc2UgYXJlIG5vIHZhbGlkIHdvcmtpbmctdHJlZS1lbmNvZGluZ3MiCittc2dzdHIgInRydWUvZmFsc2Ug5LiN5piv5pyJ5pWI55qE5bel5L2c5Y2A57eo56K8IgorCisjOiBjb252ZXJ0LmM6MTQxMSBjb252ZXJ0LmM6MTQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2xlYW4gZmlsdGVyICclcycgZmFpbGVkIgorbXNnc3RyICIlc++8mmNsZWFuIOmBjua/vuWZqCAnJXMnIOWkseaVlyIKKworIzogY29udmVydC5jOjE0ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHNtdWRnZSBmaWx0ZXIgJXMgZmFpbGVkIgorbXNnc3RyICIlc++8mnNtdWRnZSDpgY7mv77lmaggJXMg5aSx5pWXIgorCisjOiBkYXRlLmM6MTM4Cittc2dpZCAiaW4gdGhlIGZ1dHVyZSIKK21zZ3N0ciAi5Zyo5bCH5L6GIgorCisjOiBkYXRlLmM6MTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiU8UFJJdU1BWD4gc2Vjb25kIGFnbyIKK21zZ2lkX3BsdXJhbCAiJTxQUkl1TUFYPiBzZWNvbmRzIGFnbyIKK21zZ3N0clswXSAiJTxQUkl1TUFYPiDnp5LpkJjliY0iCisKKyM6IGRhdGUuYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJTxQUkl1TUFYPiBtaW51dGUgYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IG1pbnV0ZXMgYWdvIgorbXNnc3RyWzBdICIlPFBSSXVNQVg+IOWIhumQmOWJjSIKKworIzogZGF0ZS5jOjE1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlPFBSSXVNQVg+IGhvdXIgYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IGhvdXJzIGFnbyIKK21zZ3N0clswXSAiJTxQUkl1TUFYPiDlsI/mmYLliY0iCisKKyM6IGRhdGUuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJTxQUkl1TUFYPiBkYXkgYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IGRheXMgYWdvIgorbXNnc3RyWzBdICIlPFBSSXVNQVg+IOWkqeWJjSIKKworIzogZGF0ZS5jOjE3MQorIywgYy1mb3JtYXQKK21zZ2lkICIlPFBSSXVNQVg+IHdlZWsgYWdvIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHdlZWtzIGFnbyIKK21zZ3N0clswXSAiJTxQUkl1TUFYPiDlkajliY0iCisKKyM6IGRhdGUuYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJTxQUkl1TUFYPiBtb250aCBhZ28iCittc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4gbW9udGhzIGFnbyIKK21zZ3N0clswXSAiJTxQUkl1TUFYPiDlgIvmnIjliY0iCisKKyM6IGRhdGUuYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJTxQUkl1TUFYPiB5ZWFyIgorbXNnaWRfcGx1cmFsICIlPFBSSXVNQVg+IHllYXJzIgorbXNnc3RyWzBdICIlPFBSSXVNQVg+IOW5tCIKKworIy4gVFJBTlNMQVRPUlM6ICIlcyIgaXMgIjxuPiB5ZWFycyIKKyM6IGRhdGUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMsICU8UFJJdU1BWD4gbW9udGggYWdvIgorbXNnaWRfcGx1cmFsICIlcywgJTxQUkl1TUFYPiBtb250aHMgYWdvIgorbXNnc3RyWzBdICIlcyAlPFBSSXVNQVg+IOWAi+aciOWJjSIKKworIzogZGF0ZS5jOjE5NyBkYXRlLmM6MjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiU8UFJJdU1BWD4geWVhciBhZ28iCittc2dpZF9wbHVyYWwgIiU8UFJJdU1BWD4geWVhcnMgYWdvIgorbXNnc3RyWzBdICIlPFBSSXVNQVg+IOW5tOWJjSIKKworIzogZGVsdGEtaXNsYW5kcy5jOjI3MgorbXNnaWQgIlByb3BhZ2F0aW5nIGlzbGFuZCBtYXJrcyIKK21zZ3N0ciAi5q2j5Zyo5YKz5pKt6LOH5paZ5bO25qiZ6KiYIgorCisjOiBkZWx0YS1pc2xhbmRzLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCB0cmVlIG9iamVjdCAlcyIKK21zZ3N0ciAi5aOe55qE5qi554uA54mp5Lu2ICVzIgorCisjOiBkZWx0YS1pc2xhbmRzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsb2FkIGlzbGFuZCByZWdleCBmb3IgJyVzJzogJXMiCittc2dzdHIgIuacquiDvei8ieWFpSAnJXMnIOeahOizh+aWmeWztuato+imj+ihqOekuuW8j++8miVzIgorCisjOiBkZWx0YS1pc2xhbmRzLmM6MzkwCisjLCBjLWZvcm1hdAorbXNnaWQgImlzbGFuZCByZWdleCBmcm9tIGNvbmZpZyBoYXMgdG9vIG1hbnkgY2FwdHVyZSBncm91cHMgKG1heD0lZCkiCittc2dzdHIgIuS+huiHqiBjb25maWcg55qE6LOH5paZ5bO25q2j6KaP6KGo56S65byP5pyJ5aSq5aSa55qE5o2V542y57WE77yI5pyA5aSaICVkIOWAi++8iSIKKworIzogZGVsdGEtaXNsYW5kcy5jOjQ2NworIywgYy1mb3JtYXQKK21zZ2lkICJNYXJrZWQgJWQgaXNsYW5kcywgZG9uZS5cbiIKK21zZ3N0ciAi5bey5qiZ6KiYICVkIOWAi+izh+aWmeWztu+8jOe1kOadn+OAglxuIgorCisjOiBkaWZmY29yZS1vcmRlci5jOjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9yZGVyZmlsZSAnJXMnIgorbXNnc3RyICLoroDlj5bmjpLluo/mqpTmoYggJyVzJyDlpLHmlZciCisKKyM6IGRpZmZjb3JlLXJlbmFtZS5jOjU0MworbXNnaWQgIlBlcmZvcm1pbmcgaW5leGFjdCByZW5hbWUgZGV0ZWN0aW9uIgorbXNnc3RyICLmraPlnKjpgLLooYzpnZ7nsr7norrnmoTph43mlrDlkb3lkI3lgbXmuKwiCisKKyM6IGRpZmYtbm8taW5kZXguYzoyMzgKK21zZ2lkICJnaXQgZGlmZiAtLW5vLWluZGV4IFs8b3B0aW9ucz5dIDxwYXRoPiA8cGF0aD4iCittc2dzdHIgImdpdCBkaWZmIC0tbm8taW5kZXggWzzpgbjpoIU+XSA86Lev5b6RPiA86Lev5b6RPiIKKworIzogZGlmZi1uby1pbmRleC5jOjI2MworbXNnaWQgIiIKKyJOb3QgYSBnaXQgcmVwb3NpdG9yeS4gVXNlIC0tbm8taW5kZXggdG8gY29tcGFyZSB0d28gcGF0aHMgb3V0c2lkZSBhIHdvcmtpbmcgIgorInRyZWUiCittc2dzdHIgIuS4jeaYr+S4gOWAiyBnaXQg54mI5pys5bqr44CC5L2/55SoIC0tbm8taW5kZXgg5q+U6LyD5bel5L2c5Y2A5LmL5aSW55qE5YWp5YCL6Lev5b6RIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IGRpZmYuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBGYWlsZWQgdG8gcGFyc2UgZGlyc3RhdCBjdXQtb2ZmIHBlcmNlbnRhZ2UgJyVzJ1xuIgorbXNnc3RyICIgIOeEoeazleino+aekCBkaXJzdGF0IOaIquatou+8iGN1dC1vZmbvvInnmb7liIbmr5QgJyVzJ1xuIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IGRpZmYuYzoxNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBVbmtub3duIGRpcnN0YXQgcGFyYW1ldGVyICclcydcbiIKK21zZ3N0ciAiICDmnKrnn6XnmoQgZGlyc3RhdCDlj4PmlbggJyVzJ1xuIgorCisjOiBkaWZmLmM6Mjk2Cittc2dpZCAiIgorImNvbG9yIG1vdmVkIHNldHRpbmcgbXVzdCBiZSBvbmUgb2YgJ25vJywgJ2RlZmF1bHQnLCAnYmxvY2tzJywgJ3plYnJhJywgIgorIidkaW1tZWQtemVicmEnLCAncGxhaW4nIgorbXNnc3RyICIiCisi56e75YuV55qE6aGP6Imy6Kit5a6a5b+F6aCI5pivICdubyfjgIEnZGVmYXVsdCfjgIEnYmxvY2tzJ+OAgSd6ZWJyYSfjgIEnZGltbWVkX3plYnJhJyDmiJYgIgorIidwbGFpbiciCisKKyM6IGRpZmYuYzozMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVua25vd24gY29sb3ItbW92ZWQtd3MgbW9kZSAnJXMnLCBwb3NzaWJsZSB2YWx1ZXMgYXJlICdpZ25vcmUtc3BhY2UtY2hhbmdlJywgIgorIidpZ25vcmUtc3BhY2UtYXQtZW9sJywgJ2lnbm9yZS1hbGwtc3BhY2UnLCAnYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlJyIKK21zZ3N0ciAiIgorIuacquefpeeahCBjb2xvci1tb3ZlZC13cyDmqKHlvI8gJyVzJ++8jOWPr+iDveeahOWPluWAvOaciSAnaWdub3JlLXNwYWNlLWNoYW5nZSfjgIEnaWdub3JlLSIKKyJzcGFjZS1hdC1lb2wn44CBJ2lnbm9yZS1hbGwtc3BhY2Un44CBJ2FsbG93LWluZGVudGF0aW9uLWNoYW5nZSciCisKKyM6IGRpZmYuYzozMzIKK21zZ2lkICIiCisiY29sb3ItbW92ZWQtd3M6IGFsbG93LWluZGVudGF0aW9uLWNoYW5nZSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciAiCisid2hpdGVzcGFjZSBtb2RlcyIKK21zZ3N0ciAiY29sb3ItbW92ZWQtd3PvvJphbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2Ug5LiN6IO96IiH5YW25a6D56m655m95a2X5YWD5qih5byP5YWx55SoIgorCisjOiBkaWZmLmM6NDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVua25vd24gdmFsdWUgZm9yICdkaWZmLnN1Ym1vZHVsZScgY29uZmlnIHZhcmlhYmxlOiAnJXMnIgorbXNnc3RyICLoqK3lrprorormlbggJ2RpZmYuc3VibW9kdWxlJyDmnKrnn6XnmoTlj5blgLzvvJonJXMnIgorCisjOiBkaWZmLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3VuZCBlcnJvcnMgaW4gJ2RpZmYuZGlyc3RhdCcgY29uZmlnIHZhcmlhYmxlOlxuIgorIiVzIgorbXNnc3RyICIiCisi55m854++6Kit5a6a6K6K5pW4ICdkaWZmLmRpcnN0YXQnIOS4reeahOmMr+iqpO+8mlxuIgorIiVzIgorCisjOiBkaWZmLmM6NDIwMgorIywgYy1mb3JtYXQKK21zZ2lkICJleHRlcm5hbCBkaWZmIGRpZWQsIHN0b3BwaW5nIGF0ICVzIgorbXNnc3RyICLlpJbpg6ggZGlmZiDpm6LplovvvIzlgZzmraLlnKggJXMiCisKKyM6IGRpZmYuYzo0NTQ3Cittc2dpZCAiLS1uYW1lLW9ubHksIC0tbmFtZS1zdGF0dXMsIC0tY2hlY2sgYW5kIC1zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUiCittc2dzdHIgIi0tbmFtZS1vbmx544CBLS1uYW1lLXN0YXR1c+OAgS0tY2hlY2sg5ZKMIC1zIOaYr+S6kuaWpeeahCIKKworIzogZGlmZi5jOjQ1NTAKK21zZ2lkICItRywgLVMgYW5kIC0tZmluZC1vYmplY3QgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLUfjgIEtUyDlkowgLS1maW5kLW9iamVjdCDmmK/kupLmlqXnmoQiCisKKyM6IGRpZmYuYzo0NjI4Cittc2dpZCAiLS1mb2xsb3cgcmVxdWlyZXMgZXhhY3RseSBvbmUgcGF0aHNwZWMiCittc2dzdHIgIi0tZm9sbG93IOaYjueiuuimgeaxguWPqui3n+S4gOWAi+i3r+W+keimj+agvCIKKworIzogZGlmZi5jOjQ2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAtLXN0YXQgdmFsdWU6ICVzIgorbXNnc3RyICLnhKHmlYjnmoQgLS1zdGF0IOWAvO+8miVzIgorCisjOiBkaWZmLmM6NDY4MSBkaWZmLmM6NDY4NiBkaWZmLmM6NDY5MSBkaWZmLmM6NDY5NiBkaWZmLmM6NTIwOQorIzogcGFyc2Utb3B0aW9ucy5jOjE5NyBwYXJzZS1vcHRpb25zLmM6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCittc2dzdHIgIiVzIOacn+acm+S4gOWAi+aVuOWtl+WAvCIKKworIzogZGlmZi5jOjQ3MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZhaWxlZCB0byBwYXJzZSAtLWRpcnN0YXQvLVggb3B0aW9uIHBhcmFtZXRlcjpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIueEoeazleino+aekCAtLWRpcnN0YXQvLVgg6YG46aCF55qE5Y+D5pW477yaXG4iCisiJXMiCisKKyM6IGRpZmYuYzo0Nzk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY2hhbmdlIGNsYXNzICclYycgaW4gLS1kaWZmLWZpbHRlcj0lcyIKK21zZ3N0ciAiLS1kaWZmLWZpbHRlcj0lMiRzIOS4reacquefpeeahOiuiuabtOmhniAnJTEkYyciCisKKyM6IGRpZmYuYzo0ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdmFsdWUgYWZ0ZXIgd3MtZXJyb3ItaGlnaGxpZ2h0PSUuKnMiCittc2dzdHIgIndzLWVycm9yLWhpZ2hsaWdodD0lLipzIOS5i+W+jOacquefpeeahOWAvCIKKworIzogZGlmZi5jOjQ4MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc29sdmUgJyVzJyIKK21zZ3N0ciAi5LiN6IO96Kej5p6QICclcyciCisKKyM6IGRpZmYuYzo0ODg2IGRpZmYuYzo0ODkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgPG4+LzxtPiBmb3JtIgorbXNnc3RyICIlcyDmnJ/mnJsgPG4+LzxtPiDmoLzlvI8iCisKKyM6IGRpZmYuYzo0OTA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBjaGFyYWN0ZXIsIGdvdCAnJXMnIgorbXNnc3RyICIlcyDmnJ/mnJvkuIDlgIvlrZflhYPvvIzlvpfliLAgJyVzJyIKKworIzogZGlmZi5jOjQ5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIC0tY29sb3ItbW92ZWQgYXJndW1lbnQ6ICVzIgorbXNnc3RyICLlo57nmoQgLS1jb2xvci1tb3ZlZCDlj4PmlbjvvJolcyIKKworIzogZGlmZi5jOjQ5NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBtb2RlICclcycgaW4gLS1jb2xvci1tb3ZlZC13cyIKK21zZ3N0ciAiLS1jb2xvci1tb3ZlZC13cyDkuK3nmoTnhKHmlYjmqKHlvI8gJyVzJyAiCisKKyM6IGRpZmYuYzo0OTg0Cittc2dpZCAiIgorIm9wdGlvbiBkaWZmLWFsZ29yaXRobSBhY2NlcHRzIFwibXllcnNcIiwgXCJtaW5pbWFsXCIsIFwicGF0aWVuY2VcIiBhbmQgIgorIlwiaGlzdG9ncmFtXCIiCittc2dzdHIgIiIKKyJkaWZmLWFsZ29yaXRobSDpgbjpoIXmnIkgXCJteWVyc1wi44CBXCJtaW5pbWFsXCLjgIFcInBhdGllbmNlXCIg5ZKMIFwiaGlzdG9ncmFtXCIiCisKKyM6IGRpZmYuYzo1MDIwIGRpZmYuYzo1MDQwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgYXJndW1lbnQgdG8gJXMiCittc2dzdHIgIiVzIOeahOWPg+aVuOeEoeaViCIKKworIzogZGlmZi5jOjUxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHBhcnNlIC0tc3VibW9kdWxlIG9wdGlvbiBwYXJhbWV0ZXI6ICclcyciCittc2dzdHIgIueEoeazleino+aekCAtLXN1Ym1vZHVsZSDpgbjpoIXnmoTlj4PmlbjvvJonJXMnIgorCisjOiBkaWZmLmM6NTIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgLS13b3JkLWRpZmYgYXJndW1lbnQ6ICVzIgorbXNnc3RyICLlo57nmoQgLS13b3JkLWRpZmYg5Y+D5pW477yaJXMiCisKKyM6IGRpZmYuYzo1MjU3Cittc2dpZCAiRGlmZiBvdXRwdXQgZm9ybWF0IG9wdGlvbnMiCittc2dzdHIgIuW3rueVsOi8uOWHuuagvOW8j+WMlumBuOmghSIKKworIzogZGlmZi5jOjUyNTkgZGlmZi5jOjUyNjUKK21zZ2lkICJnZW5lcmF0ZSBwYXRjaCIKK21zZ3N0ciAi55Sf5oiQ5L+u6KOc5qqUIgorCisjOiBkaWZmLmM6NTI2MiBidWlsdGluL2xvZy5jOjE3MworbXNnaWQgInN1cHByZXNzIGRpZmYgb3V0cHV0IgorbXNnc3RyICLkuI3poa/npLrlt67nlbDovLjlh7oiCisKKyM6IGRpZmYuYzo1MjY3IGRpZmYuYzo1MzgxIGRpZmYuYzo1Mzg4Cittc2dpZCAiPG4+IgorbXNnc3RyICI8bj4iCisKKyM6IGRpZmYuYzo1MjY4IGRpZmYuYzo1MjcxCittc2dpZCAiZ2VuZXJhdGUgZGlmZnMgd2l0aCA8bj4gbGluZXMgY29udGV4dCIKK21zZ3N0ciAi55Sf5oiQ5ZCrIDxuPiDooYzkuIrkuIvmlofnmoTlt67nlbAiCisKKyM6IGRpZmYuYzo1MjczCittc2dpZCAiZ2VuZXJhdGUgdGhlIGRpZmYgaW4gcmF3IGZvcm1hdCIKK21zZ3N0ciAi55Sf5oiQ5Y6f5aeL5qC85byP55qE5beu55WwIgorCisjOiBkaWZmLmM6NTI3NgorbXNnaWQgInN5bm9ueW0gZm9yICctcCAtLXJhdyciCittc2dzdHIgIuWSjCAnLXAgLS1yYXcnIOWQjOe+qSIKKworIzogZGlmZi5jOjUyODAKK21zZ2lkICJzeW5vbnltIGZvciAnLXAgLS1zdGF0JyIKK21zZ3N0ciAi5ZKMICctcCAtLXN0YXQnIOWQjOe+qSIKKworIzogZGlmZi5jOjUyODQKK21zZ2lkICJtYWNoaW5lIGZyaWVuZGx5IC0tc3RhdCIKK21zZ3N0ciAi5qmf5Zmo5Y+L5aW955qEIC0tc3RhdCIKKworIzogZGlmZi5jOjUyODcKK21zZ2lkICJvdXRwdXQgb25seSB0aGUgbGFzdCBsaW5lIG9mIC0tc3RhdCIKK21zZ3N0ciAi5Y+q6Ly45Ye6IC0tc3RhdCDnmoTmnIDlvozkuIDooYwiCisKKyM6IGRpZmYuYzo1Mjg5IGRpZmYuYzo1Mjk3Cittc2dpZCAiPHBhcmFtMSxwYXJhbTI+Li4uIgorbXNnc3RyICI85Y+D5pW4MSzlj4PmlbgyPi4uLiIKKworIzogZGlmZi5jOjUyOTAKK21zZ2lkICIiCisib3V0cHV0IHRoZSBkaXN0cmlidXRpb24gb2YgcmVsYXRpdmUgYW1vdW50IG9mIGNoYW5nZXMgZm9yIGVhY2ggc3ViLWRpcmVjdG9yeSIKK21zZ3N0ciAi6Ly45Ye65q+P5YCL5a2Q55uu6YyE55u45bCN6K6K5pu055qE5YiG5biDIgorCisjOiBkaWZmLmM6NTI5NAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1jdW11bGF0aXZlIgorbXNnc3RyICLlkowgLS1kaXJzdGF0PWN1bXVsYXRpdmUg5ZCM576pIgorCisjOiBkaWZmLmM6NTI5OAorbXNnaWQgInN5bm9ueW0gZm9yIC0tZGlyc3RhdD1maWxlcyxwYXJhbTEscGFyYW0yLi4uIgorbXNnc3RyICLmmK8gLS1kaXJzdGF0PWZpbGVzLHBhcmFtMSxwYXJhbTIuLi4g55qE5ZCM576p6KmeIgorCisjOiBkaWZmLmM6NTMwMgorbXNnaWQgIndhcm4gaWYgY2hhbmdlcyBpbnRyb2R1Y2UgY29uZmxpY3QgbWFya2VycyBvciB3aGl0ZXNwYWNlIGVycm9ycyIKK21zZ3N0ciAi5aaC5p6c6K6K5pu05Lit5byV5YWl6KGd56qB5a6a55WM56ym5oiW56m655m96Yyv6Kqk77yM57Wm5Ye66K2m5ZGKIgorCisjOiBkaWZmLmM6NTMwNQorbXNnaWQgImNvbmRlbnNlZCBzdW1tYXJ5IHN1Y2ggYXMgY3JlYXRpb25zLCByZW5hbWVzIGFuZCBtb2RlIGNoYW5nZXMiCittc2dzdHIgIueyvuewoeaRmOimge+8jOS+i+WmguW7uueri+OAgemHjeaWsOWRveWQjeWSjOaooeW8j+iuiuabtCIKKworIzogZGlmZi5jOjUzMDgKK21zZ2lkICJzaG93IG9ubHkgbmFtZXMgb2YgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAi5Y+q6aGv56S66K6K5pu05qqU5qGI55qE5qqU5qGI5ZCNIgorCisjOiBkaWZmLmM6NTMxMQorbXNnaWQgInNob3cgb25seSBuYW1lcyBhbmQgc3RhdHVzIG9mIGNoYW5nZWQgZmlsZXMiCittc2dzdHIgIuWPqumhr+ekuuiuiuabtOaqlOahiOeahOaqlOahiOWQjeWSjOeLgOaFiyIKKworIzogZGlmZi5jOjUzMTMKK21zZ2lkICI8d2lkdGg+Wyw8bmFtZS13aWR0aD5bLDxjb3VudD5dXSIKK21zZ3N0ciAiPOWvrOW6pj5bLDzmqpTmoYjlkI3lr6zluqY+Wyw85qyh5pW4Pl1dIgorCisjOiBkaWZmLmM6NTMxNAorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IgorbXNnc3RyICLnlJ/miJDlt67nlbDntbHoqIjvvIhkaWZmc3RhdO+8iSIKKworIzogZGlmZi5jOjUzMTYgZGlmZi5jOjUzMTkgZGlmZi5jOjUzMjIKK21zZ2lkICI8d2lkdGg+IgorbXNnc3RyICI85a+s5bqmPiIKKworIzogZGlmZi5jOjUzMTcKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGEgZ2l2ZW4gd2lkdGgiCittc2dzdHIgIuS9v+eUqOaPkOS+m+eahOmVt+W6pueUn+aIkOW3rueVsOe1seioiCIKKworIzogZGlmZi5jOjUzMjAKK21zZ2lkICJnZW5lcmF0ZSBkaWZmc3RhdCB3aXRoIGEgZ2l2ZW4gbmFtZSB3aWR0aCIKK21zZ3N0ciAi5L2/55So5o+Q5L6b55qE5qqU5qGI5ZCN6ZW35bqm55Sf5oiQ5beu55Ww57Wx6KiIIgorCisjOiBkaWZmLmM6NTMyMworbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggYSBnaXZlbiBncmFwaCB3aWR0aCIKK21zZ3N0ciAi5L2/55So5o+Q5L6b55qE5ZyW5b2i6ZW35bqm55Sf5oiQ5beu55Ww57Wx6KiIIgorCisjOiBkaWZmLmM6NTMyNQorbXNnaWQgIjxjb3VudD4iCittc2dzdHIgIjzmrKHmlbg+IgorCisjOiBkaWZmLmM6NTMyNgorbXNnaWQgImdlbmVyYXRlIGRpZmZzdGF0IHdpdGggbGltaXRlZCBsaW5lcyIKK21zZ3N0ciAi55Sf5oiQ5pyJ6ZmQ6KGM5pW455qE5beu55Ww57Wx6KiIIgorCisjOiBkaWZmLmM6NTMyOQorbXNnaWQgImdlbmVyYXRlIGNvbXBhY3Qgc3VtbWFyeSBpbiBkaWZmc3RhdCIKK21zZ3N0ciAi55Sf5oiQ5beu55Ww57Wx6KiI55qE57Ch5r2U5pGY6KaBIgorCisjOiBkaWZmLmM6NTMzMgorbXNnaWQgIm91dHB1dCBhIGJpbmFyeSBkaWZmIHRoYXQgY2FuIGJlIGFwcGxpZWQiCittc2dzdHIgIui8uOWHuuS4gOWAi+WPr+S7peaHieeUqOeahOS6jOmAsuS9jeW3rueVsCIKKworIzogZGlmZi5jOjUzMzUKK21zZ2lkICJzaG93IGZ1bGwgcHJlLSBhbmQgcG9zdC1pbWFnZSBvYmplY3QgbmFtZXMgb24gdGhlIFwiaW5kZXhcIiBsaW5lcyIKK21zZ3N0ciAi5ZyoIFwiaW5kZXhcIiDooYzpoa/npLrlrozmlbTnmoTliY3lvoznianku7blkI3nqLEiCisKKyM6IGRpZmYuYzo1MzM3Cittc2dpZCAic2hvdyBjb2xvcmVkIGRpZmYiCittc2dzdHIgIumhr+ekuuW4tumhj+iJsueahOW3rueVsCIKKworIzogZGlmZi5jOjUzMzgKK21zZ2lkICI8a2luZD4iCittc2dzdHIgIjzpoZ7lnos+IgorCisjOiBkaWZmLmM6NTMzOQorbXNnaWQgIiIKKyJoaWdobGlnaHQgd2hpdGVzcGFjZSBlcnJvcnMgaW4gdGhlICdjb250ZXh0JywgJ29sZCcgb3IgJ25ldycgbGluZXMgaW4gdGhlICIKKyJkaWZmIgorbXNnc3RyICLlsI3mlrzlt67nlbDkuK3nmoTkuIrkuIvmlofjgIHoiIrnmoTlkozmlrDnmoTooYzvvIzliqDkuq7poa/npLrpjK/oqqTnmoTnqbrnmb3lrZflhYMiCisKKyM6IGRpZmYuYzo1MzQyCittc2dpZCAiIgorImRvIG5vdCBtdW5nZSBwYXRobmFtZXMgYW5kIHVzZSBOVUxzIGFzIG91dHB1dCBmaWVsZCB0ZXJtaW5hdG9ycyBpbiAtLXJhdyBvciAiCisiLS1udW1zdGF0IgorbXNnc3RyICIiCisi5ZyoIC0tcmF3IOaIluiAhSAtLW51bXN0YXQg5Lit77yM5LiN5bCN6Lev5b6R5a2X5YWD6L2J5qqU5Lim5L2/55SoIE5VTCDlrZflhYPlgZrngrrovLjlh7rmrITkvY3nmoTliIbpmpQiCisi56ymIgorCisjOiBkaWZmLmM6NTM0NSBkaWZmLmM6NTM0OCBkaWZmLmM6NTM1MSBkaWZmLmM6NTQ1NworbXNnaWQgIjxwcmVmaXg+IgorbXNnc3RyICI85YmN57a0PiIKKworIzogZGlmZi5jOjUzNDYKK21zZ2lkICJzaG93IHRoZSBnaXZlbiBzb3VyY2UgcHJlZml4IGluc3RlYWQgb2YgXCJhL1wiIgorbXNnc3RyICLpoa/npLrmj5DkvpvnmoTmupDliY3ntrTlj5bku6MgXCJhL1wiIgorCisjOiBkaWZmLmM6NTM0OQorbXNnaWQgInNob3cgdGhlIGdpdmVuIGRlc3RpbmF0aW9uIHByZWZpeCBpbnN0ZWFkIG9mIFwiYi9cIiIKK21zZ3N0ciAi6aGv56S65o+Q5L6b55qE55uu5qiZ5YmN57a05Y+W5LujIFwiYi9cIiIKKworIzogZGlmZi5jOjUzNTIKK21zZ2lkICJwcmVwZW5kIGFuIGFkZGl0aW9uYWwgcHJlZml4IHRvIGV2ZXJ5IGxpbmUgb2Ygb3V0cHV0IgorbXNnc3RyICLovLjlh7rnmoTmr4/kuIDooYzpmYTliqDliY3ntrQiCisKKyM6IGRpZmYuYzo1MzU1Cittc2dpZCAiZG8gbm90IHNob3cgYW55IHNvdXJjZSBvciBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIuS4jemhr+ekuuS7u+S9lea6kOWSjOebruaomeWJjee2tCIKKworIzogZGlmZi5jOjUzNTgKK21zZ2lkICJzaG93IGNvbnRleHQgYmV0d2VlbiBkaWZmIGh1bmtzIHVwIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGxpbmVzIgorbXNnc3RyICLpoa/npLrmjIflrprooYzmlbjnmoTlt67nlbDljYDloYrplpPnmoTkuIrkuIvmlociCisKKyM6IGRpZmYuYzo1MzYyIGRpZmYuYzo1MzY3IGRpZmYuYzo1MzcyCittc2dpZCAiPGNoYXI+IgorbXNnc3RyICI85a2X5YWDPiIKKworIzogZGlmZi5jOjUzNjMKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBuZXcgbGluZSBpbnN0ZWFkIG9mICcrJyIKK21zZ3N0ciAi5oyH5a6a5LiA5YCL5a2X5YWD5Y+W5LujICcrJyDkvobooajnpLrmlrDnmoTkuIDooYwiCisKKyM6IGRpZmYuYzo1MzY4Cittc2dpZCAic3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIGluZGljYXRlIGFuIG9sZCBsaW5lIGluc3RlYWQgb2YgJy0nIgorbXNnc3RyICLmjIflrprkuIDlgIvlrZflhYPlj5bku6MgJy0nIOS+huihqOekuuiIiueahOS4gOihjCIKKworIzogZGlmZi5jOjUzNzMKK21zZ2lkICJzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgdG8gaW5kaWNhdGUgYSBjb250ZXh0IGluc3RlYWQgb2YgJyAnIgorbXNnc3RyICLmjIflrprkuIDlgIvlrZflhYPlj5bku6MgJyAnIOS+huihqOekuuS4gOihjOS4iuS4i+aWhyIKKworIzogZGlmZi5jOjUzNzYKK21zZ2lkICJEaWZmIHJlbmFtZSBvcHRpb25zIgorbXNnc3RyICLlt67nlbDph43mlrDlkb3lkI3pgbjpoIUiCisKKyM6IGRpZmYuYzo1Mzc3Cittc2dpZCAiPG4+Wy88bT5dIgorbXNnc3RyICI8bj5bLzxtPl0iCisKKyM6IGRpZmYuYzo1Mzc4Cittc2dpZCAiYnJlYWsgY29tcGxldGUgcmV3cml0ZSBjaGFuZ2VzIGludG8gcGFpcnMgb2YgZGVsZXRlIGFuZCBjcmVhdGUiCittc2dzdHIgIuWwh+WujOWFqOmHjeWvq+eahOiuiuabtOaJk+egtOeCuuaIkOWwjeeahOWIqumZpOWSjOW7uueriyIKKworIzogZGlmZi5jOjUzODIKK21zZ2lkICJkZXRlY3QgcmVuYW1lcyIKK21zZ3N0ciAi5qqi5ris6YeN5paw5ZG95ZCNIgorCisjOiBkaWZmLmM6NTM4NgorbXNnaWQgIm9taXQgdGhlIHByZWltYWdlIGZvciBkZWxldGVzIgorbXNnc3RyICLnnIHnlaXliKrpmaTli5XkvZznmoTlt67nlbDovLjlh7oiCisKKyM6IGRpZmYuYzo1Mzg5Cittc2dpZCAiZGV0ZWN0IGNvcGllcyIKK21zZ3N0ciAi5qqi5ris6KSH6KO9IgorCisjOiBkaWZmLmM6NTM5MworbXNnaWQgInVzZSB1bm1vZGlmaWVkIGZpbGVzIGFzIHNvdXJjZSB0byBmaW5kIGNvcGllcyIKK21zZ3N0ciAi5L2/55So5pyq5L+u5pS555qE5qqU5qGI5YGa54K655m854++6KSH6KO955qE5rqQIgorCisjOiBkaWZmLmM6NTM5NQorbXNnaWQgImRpc2FibGUgcmVuYW1lIGRldGVjdGlvbiIKK21zZ3N0ciAi56aB55So6YeN5paw5ZG95ZCN5YG15risIgorCisjOiBkaWZmLmM6NTM5OAorbXNnaWQgInVzZSBlbXB0eSBibG9icyBhcyByZW5hbWUgc291cmNlIgorbXNnc3RyICLkvb/nlKjnqbrnmoTos4fmlpnnianku7blgZrngrrph43mlrDlkb3lkI3nmoTmupAiCisKKyM6IGRpZmYuYzo1NDAwCittc2dpZCAiY29udGludWUgbGlzdGluZyB0aGUgaGlzdG9yeSBvZiBhIGZpbGUgYmV5b25kIHJlbmFtZXMiCittc2dzdHIgIue5vOe6jOWIl+WHuuaqlOahiOmHjeaWsOWRveWQjeS7peWklueahOatt+WPsuiomOmMhCIKKworIzogZGlmZi5jOjU0MDMKK21zZ2lkICIiCisicHJldmVudCByZW5hbWUvY29weSBkZXRlY3Rpb24gaWYgdGhlIG51bWJlciBvZiByZW5hbWUvY29weSB0YXJnZXRzIGV4Y2VlZHMgIgorImdpdmVuIGxpbWl0IgorbXNnc3RyICLlpoLmnpzph43mlrDlkb3lkI0v6KSH6KO955uu5qiZ6LaF6YGO5o+Q5L6b55qE6ZmQ5Yi277yM56aB5q2i6YeN5paw5ZG95ZCNL+ikh+ijveaqoua4rCIKKworIzogZGlmZi5jOjU0MDUKK21zZ2lkICJEaWZmIGFsZ29yaXRobSBvcHRpb25zIgorbXNnc3RyICLlt67nlbDmvJTnrpfms5XpgbjpoIUiCisKKyM6IGRpZmYuYzo1NDA3Cittc2dpZCAicHJvZHVjZSB0aGUgc21hbGxlc3QgcG9zc2libGUgZGlmZiIKK21zZ3N0ciAi55Sf5oiQ5YSY5Y+v6IO95bCP55qE5beu55WwIgorCisjOiBkaWZmLmM6NTQxMAorbXNnaWQgImlnbm9yZSB3aGl0ZXNwYWNlIHdoZW4gY29tcGFyaW5nIGxpbmVzIgorbXNnc3RyICLooYzmr5TovIPmmYLlv73nlaXnqbrnmb3lrZflhYMiCisKKyM6IGRpZmYuYzo1NDEzCittc2dpZCAiaWdub3JlIGNoYW5nZXMgaW4gYW1vdW50IG9mIHdoaXRlc3BhY2UiCittc2dzdHIgIuW/veeVpeepuueZveWtl+WFg+eahOiuiuabtCIKKworIzogZGlmZi5jOjU0MTYKK21zZ2lkICJpZ25vcmUgY2hhbmdlcyBpbiB3aGl0ZXNwYWNlIGF0IEVPTCIKK21zZ3N0ciAi5b+955Wl6KGM5bC+55qE56m655m95a2X5YWD6K6K5pu0IgorCisjOiBkaWZmLmM6NTQxOQorbXNnaWQgImlnbm9yZSBjYXJyaWVyLXJldHVybiBhdCB0aGUgZW5kIG9mIGxpbmUiCittc2dzdHIgIuW/veeVpeihjOWwvueahEVudGVy56ym77yIQ1LvvIkiCisKKyM6IGRpZmYuYzo1NDIyCittc2dpZCAiaWdub3JlIGNoYW5nZXMgd2hvc2UgbGluZXMgYXJlIGFsbCBibGFuayIKK21zZ3N0ciAi5b+955Wl5pW06KGM6YO95piv56m655m955qE6K6K5pu0IgorCisjOiBkaWZmLmM6NTQyNQorbXNnaWQgImhldXJpc3RpYyB0byBzaGlmdCBkaWZmIGh1bmsgYm91bmRhcmllcyBmb3IgZWFzeSByZWFkaW5nIgorbXNnc3RyICLllZ/nmbzlvI/ovYnmj5vlt67nlbDpgornlYzku6Xkvr/plrHoroAiCisKKyM6IGRpZmYuYzo1NDI4Cittc2dpZCAiZ2VuZXJhdGUgZGlmZiB1c2luZyB0aGUgXCJwYXRpZW5jZSBkaWZmXCIgYWxnb3JpdGhtIgorbXNnc3RyICLkvb/nlKggXCJwYXRpZW5jZSBkaWZmXCIg5ryU566X5rOV55Sf5oiQ5beu55WwIgorCisjOiBkaWZmLmM6NTQzMgorbXNnaWQgImdlbmVyYXRlIGRpZmYgdXNpbmcgdGhlIFwiaGlzdG9ncmFtIGRpZmZcIiBhbGdvcml0aG0iCittc2dzdHIgIuS9v+eUqCBcImhpc3RvZ3JhbSBkaWZmXCIg5ryU566X5rOV55Sf5oiQ5beu55WwIgorCisjOiBkaWZmLmM6NTQzNAorbXNnaWQgIjxhbGdvcml0aG0+IgorbXNnc3RyICI85ryU566X5rOVPiIKKworIzogZGlmZi5jOjU0MzUKK21zZ2lkICJjaG9vc2UgYSBkaWZmIGFsZ29yaXRobSIKK21zZ3N0ciAi6YG45pOH5LiA5YCL5beu55Ww5ryU566X5rOVIgorCisjOiBkaWZmLmM6NTQzNworbXNnaWQgIjx0ZXh0PiIKK21zZ3N0ciAiPOaWh+Wtlz4iCisKKyM6IGRpZmYuYzo1NDM4Cittc2dpZCAiZ2VuZXJhdGUgZGlmZiB1c2luZyB0aGUgXCJhbmNob3JlZCBkaWZmXCIgYWxnb3JpdGhtIgorbXNnc3RyICLkvb/nlKggXCJhbmNob3JlZCBkaWZmXCIg5ryU566X5rOV55Sf5oiQ5beu55WwIgorCisjOiBkaWZmLmM6NTQ0MCBkaWZmLmM6NTQ0OSBkaWZmLmM6NTQ1MgorbXNnaWQgIjxtb2RlPiIKK21zZ3N0ciAiPOaooeW8jz4iCisKKyM6IGRpZmYuYzo1NDQxCittc2dpZCAic2hvdyB3b3JkIGRpZmYsIHVzaW5nIDxtb2RlPiB0byBkZWxpbWl0IGNoYW5nZWQgd29yZHMiCittc2dzdHIgIumhr+ekuuWWruipnuW3rueVsO+8jOS9v+eUqCA85qih5byPPiDliIbpmpTorormm7TnmoTllq7oqZ4iCisKKyM6IGRpZmYuYzo1NDQzIGRpZmYuYzo1NDQ2IGRpZmYuYzo1NDkxCittc2dpZCAiPHJlZ2V4PiIKK21zZ3N0ciAiPOato+WJhz4iCisKKyM6IGRpZmYuYzo1NDQ0Cittc2dpZCAidXNlIDxyZWdleD4gdG8gZGVjaWRlIHdoYXQgYSB3b3JkIGlzIgorbXNnc3RyICLkvb/nlKggPOato+imj+ihqOekuuW8jz4g56K65a6a5L2V54K65LiA5YCL6KmeIgorCisjOiBkaWZmLmM6NTQ0NworbXNnaWQgImVxdWl2YWxlbnQgdG8gLS13b3JkLWRpZmY9Y29sb3IgLS13b3JkLWRpZmYtcmVnZXg9PHJlZ2V4PiIKK21zZ3N0ciAi55u455W25pa8IC0td29yZC1kaWZmPWNvbG9yIC0td29yZC1kaWZmLXJlZ2V4PTzmraPliYc+IgorCisjOiBkaWZmLmM6NTQ1MAorbXNnaWQgIm1vdmVkIGxpbmVzIG9mIGNvZGUgYXJlIGNvbG9yZWQgZGlmZmVyZW50bHkiCittc2dzdHIgIuenu+WLleeahOeoi+W8j+eivOihjOeUqOS4jeWQjOaWueW8j+iRl+iJsiIKKworIzogZGlmZi5jOjU0NTMKK21zZ2lkICJob3cgd2hpdGUgc3BhY2VzIGFyZSBpZ25vcmVkIGluIC0tY29sb3ItbW92ZWQiCittc2dzdHIgIuWcqCAtLWNvbG9yLW1vdmVkIOS4i+WmguS9leW/veeVpeepuueZveWtl+WFgyIKKworIzogZGlmZi5jOjU0NTYKK21zZ2lkICJPdGhlciBkaWZmIG9wdGlvbnMiCittc2dzdHIgIuWFtuWug+W3rueVsOmBuOmghSIKKworIzogZGlmZi5jOjU0NTgKK21zZ2lkICJ3aGVuIHJ1biBmcm9tIHN1YmRpciwgZXhjbHVkZSBjaGFuZ2VzIG91dHNpZGUgYW5kIHNob3cgcmVsYXRpdmUgcGF0aHMiCittc2dzdHIgIueVtuW+nuWtkOebrumMhOWft+ihjO+8jOaOkumZpOebrumMhOS5i+WklueahOiuiuabtOS4pumhr+ekuuebuOWwjei3r+W+kSIKKworIzogZGlmZi5jOjU0NjIKK21zZ2lkICJ0cmVhdCBhbGwgZmlsZXMgYXMgdGV4dCIKK21zZ3N0ciAi5oqK5omA5pyJ5qqU5qGI55W25YGa5paH5a2X6JmV55CGIgorCisjOiBkaWZmLmM6NTQ2NAorbXNnaWQgInN3YXAgdHdvIGlucHV0cywgcmV2ZXJzZSB0aGUgZGlmZiIKK21zZ3N0ciAi5Lqk5o+b5YWp5YCL6Ly45YWl77yM5Y+N6L2J5beu55WwIgorCisjOiBkaWZmLmM6NTQ2NgorbXNnaWQgImV4aXQgd2l0aCAxIGlmIHRoZXJlIHdlcmUgZGlmZmVyZW5jZXMsIDAgb3RoZXJ3aXNlIgorbXNnc3RyICLmnInlt67nlbDmmYLpm6LplovnorzngrogMe+8jOWQpuWJh+eCuiAwIgorCisjOiBkaWZmLmM6NTQ2OAorbXNnaWQgImRpc2FibGUgYWxsIG91dHB1dCBvZiB0aGUgcHJvZ3JhbSIKK21zZ3N0ciAi56aB55So5pys56iL5byP55qE5omA5pyJ6Ly45Ye6IgorCisjOiBkaWZmLmM6NTQ3MAorbXNnaWQgImFsbG93IGFuIGV4dGVybmFsIGRpZmYgaGVscGVyIHRvIGJlIGV4ZWN1dGVkIgorbXNnc3RyICLlhYHoqLHln7fooYzkuIDlgIvlpJbpg6jnmoTlt67nlbDliqnmiYsiCisKKyM6IGRpZmYuYzo1NDcyCittc2dpZCAicnVuIGV4dGVybmFsIHRleHQgY29udmVyc2lvbiBmaWx0ZXJzIHdoZW4gY29tcGFyaW5nIGJpbmFyeSBmaWxlcyIKK21zZ3N0ciAi55W25q+U6LyD5LqM6YCy5L2N5qqU5qGI5pmC77yM5Z+36KGM5aSW6YOo55qE5paH5a2X6L2J5o+b6YGO5r++5ZmoIgorCisjOiBkaWZmLmM6NTQ3NAorbXNnaWQgIjx3aGVuPiIKK21zZ3N0ciAiPOS9leaZgj4iCisKKyM6IGRpZmYuYzo1NDc1Cittc2dpZCAiaWdub3JlIGNoYW5nZXMgdG8gc3VibW9kdWxlcyBpbiB0aGUgZGlmZiBnZW5lcmF0aW9uIgorbXNnc3RyICLlnKjnlJ/miJDlt67nlbDmmYLvvIzlv73nlaXlrZDmqKHntYTnmoTmm7TmlLkiCisKKyM6IGRpZmYuYzo1NDc4Cittc2dpZCAiPGZvcm1hdD4iCittc2dzdHIgIjzmoLzlvI8+IgorCisjOiBkaWZmLmM6NTQ3OQorbXNnaWQgInNwZWNpZnkgaG93IGRpZmZlcmVuY2VzIGluIHN1Ym1vZHVsZXMgYXJlIHNob3duIgorbXNnc3RyICLmjIflrprlrZDmqKHntYTnmoTlt67nlbDlpoLkvZXpoa/npLoiCisKKyM6IGRpZmYuYzo1NDgzCittc2dpZCAiaGlkZSAnZ2l0IGFkZCAtTicgZW50cmllcyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAi6Zqx6JeP57Si5byV5LitICdnaXQgYWRkIC1OJyDmop3nm64iCisKKyM6IGRpZmYuYzo1NDg2Cittc2dpZCAidHJlYXQgJ2dpdCBhZGQgLU4nIGVudHJpZXMgYXMgcmVhbCBpbiB0aGUgaW5kZXgiCittc2dzdHIgIuWwh+e0ouW8leS4rSAnZ2l0IGFkZCAtTicg5qKd55uu55W25YGa55yf5a+m55qEIgorCisjOiBkaWZmLmM6NTQ4OAorbXNnaWQgIjxzdHJpbmc+IgorbXNnc3RyICI85a2X5LiyPiIKKworIzogZGlmZi5jOjU0ODkKK21zZ2lkICIiCisibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkICIKKyJzdHJpbmciCittc2dzdHIgIuWwi+aJvuaUueiuiuS6huaMh+WumuWtl+S4suWHuuePvuasoeaVuOeahOW3rueVsCIKKworIzogZGlmZi5jOjU0OTIKK21zZ2lkICIiCisibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkICIKKyJyZWdleCIKK21zZ3N0ciAi5bCL5om+5pS56K6K5oyH5a6a5q2j5YmH56ym5ZCI5Ye654++5qyh5pW455qE5beu55WwIgorCisjOiBkaWZmLmM6NTQ5NQorbXNnaWQgInNob3cgYWxsIGNoYW5nZXMgaW4gdGhlIGNoYW5nZXNldCB3aXRoIC1TIG9yIC1HIgorbXNnc3RyICLpoa/npLrkvb/nlKggLVMg5oiWIC1HIOeahOiuiuabtOmbhueahOaJgOacieiuiuabtCIKKworIzogZGlmZi5jOjU0OTgKK21zZ2lkICJ0cmVhdCA8c3RyaW5nPiBpbiAtUyBhcyBleHRlbmRlZCBQT1NJWCByZWd1bGFyIGV4cHJlc3Npb24iCittc2dzdHIgIuWwhyAtUyDnmoQgPHN0cmluZz4g55W25YGa5pO05bGV55qEIFBPU0lYIOato+imj+ihqOekuuW8jyIKKworIzogZGlmZi5jOjU1MDEKK21zZ2lkICJjb250cm9sIHRoZSBvcmRlciBpbiB3aGljaCBmaWxlcyBhcHBlYXIgaW4gdGhlIG91dHB1dCIKK21zZ3N0ciAi5o6n5Yi26Ly45Ye65Lit55qE5qqU5qGI6aGv56S66aCG5bqPIgorCisjOiBkaWZmLmM6NTUwMgorbXNnaWQgIjxvYmplY3QtaWQ+IgorbXNnc3RyICI854mp5Lu2IElEPiIKKworIzogZGlmZi5jOjU1MDMKK21zZ2lkICIiCisibG9vayBmb3IgZGlmZmVyZW5jZXMgdGhhdCBjaGFuZ2UgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiB0aGUgc3BlY2lmaWVkICIKKyJvYmplY3QiCittc2dzdHIgIuWwi+aJvuaUueiuiuaMh+WumueJqeS7tuWHuuePvuasoeaVuOeahOW3rueVsCIKKworIzogZGlmZi5jOjU1MDUKK21zZ2lkICJbKEF8Q3xEfE18UnxUfFV8WHxCKS4uLlsqXV0iCittc2dzdHIgIlsoQXxDfER8TXxSfFR8VXxYfEIpLi4uWypdXSIKKworIzogZGlmZi5jOjU1MDYKK21zZ2lkICJzZWxlY3QgZmlsZXMgYnkgZGlmZiB0eXBlIgorbXNnc3RyICLpgI/pgY7lt67nlbDpoZ7lnovpgbjmk4fmqpTmoYgiCisKKyM6IGRpZmYuYzo1NTA4Cittc2dpZCAiPGZpbGU+IgorbXNnc3RyICI85qqU5qGIPiIKKworIzogZGlmZi5jOjU1MDkKK21zZ2lkICJPdXRwdXQgdG8gYSBzcGVjaWZpYyBmaWxlIgorbXNnc3RyICLovLjlh7rliLDkuIDlgIvmjIflrprnmoTmqpTmoYgiCisKKyM6IGRpZmYuYzo2MTY0Cittc2dpZCAiaW5leGFjdCByZW5hbWUgZGV0ZWN0aW9uIHdhcyBza2lwcGVkIGR1ZSB0byB0b28gbWFueSBmaWxlcy4iCittc2dzdHIgIuWboOeCuuaqlOahiOWkquWkmu+8jOeVpemBjuS4jeWatOagvOeahOmHjeaWsOWRveWQjeaqouafpeOAgiIKKworIzogZGlmZi5jOjYxNjcKK21zZ2lkICJvbmx5IGZvdW5kIGNvcGllcyBmcm9tIG1vZGlmaWVkIHBhdGhzIGR1ZSB0byB0b28gbWFueSBmaWxlcy4iCittc2dzdHIgIuWboOeCuuaqlOahiOWkquWkmu+8jOWPquWcqOS/ruaUueeahOi3r+W+keS4reWwi+aJvuikh+ijveOAgiIKKworIzogZGlmZi5jOjYxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInlvdSBtYXkgd2FudCB0byBzZXQgeW91ciAlcyB2YXJpYWJsZSB0byBhdCBsZWFzdCAlZCBhbmQgcmV0cnkgdGhlIGNvbW1hbmQuIgorbXNnc3RyICLmgqjlj6/og73mg7PopoHlsIforormlbggJXMg6Kit5a6a54K66Iez5bCRICVkIOS4puWGjeasoeWft+ihjOatpOaMh+S7pOOAgiIKKworIzogZGlyLmM6NTU1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGhzcGVjICclcycgZGlkIG5vdCBtYXRjaCBhbnkgZmlsZShzKSBrbm93biB0byBnaXQiCittc2dzdHIgIui3r+W+keimj+agvCAnJXMnIOacquespuWQiOS7u+S9lSBnaXQg5bey55+l5qqU5qGIIgorCisjOiBkaXIuYzo2OTUgZGlyLmM6NzI0IGRpci5jOjczNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgcGF0dGVybjogJyVzJyIKK21zZ3N0ciAi54Sh5rOV6K2Y5Yil5qij5byP77ya44CMJXPjgI0iCisKKyM6IGRpci5jOjc1NCBkaXIuYzo3NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIG5lZ2F0aXZlIHBhdHRlcm46ICclcyciCittc2dzdHIgIueEoeazleitmOWIpeWPjeWQkeaooeW8j++8muOAjCVz44CNIgorCisjOiBkaXIuYzo3ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAieW91ciBzcGFyc2UtY2hlY2tvdXQgZmlsZSBtYXkgaGF2ZSBpc3N1ZXM6IHBhdHRlcm4gJyVzJyBpcyByZXBlYXRlZCIKK21zZ3N0ciAi5oKo55qE56iA55aP57C95Ye65qqU5qGI5Y+v6IO95pyJ5ZWP6aGM77ya44CMJXPjgI3mqKPlvI/ph43opIciCisKKyM6IGRpci5jOjc5NgorbXNnaWQgImRpc2FibGluZyBjb25lIHBhdHRlcm4gbWF0Y2hpbmciCittc2dzdHIgIuWBnOeUqCBjb25lIOaoo+W8j+espuWQiOaooeW8jyIKKworIzogZGlyLmM6MTE3MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgdXNlICVzIGFzIGFuIGV4Y2x1ZGUgZmlsZSIKK21zZ3N0ciAi5LiN6IO95bCHICVzIOeUqOS9nOaOkumZpOaqlOahiCIKKworIzogZGlyLmM6MjE0NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi5LiN6IO96ZaL5ZWf55uu6YyEICclcyciCisKKyM6IGRpci5jOjI0NzkKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IGtlcm5lbCBuYW1lIGFuZCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAi54Sh5rOV542y5b6X5qC45b+D5ZCN56ix5ZKM6KiK5oGvIgorCisjOiBkaXIuYzoyNjAzCittc2dpZCAidW50cmFja2VkIGNhY2hlIGlzIGRpc2FibGVkIG9uIHRoaXMgc3lzdGVtIG9yIGxvY2F0aW9uIgorbXNnc3RyICLlv6vlj5bmnKrov73ouaTmqpTmoYjlnKjmnKzns7vntbHmiJbkvY3nva7kuK3ooqvnpoHnlKgiCisKKyM6IGRpci5jOjM0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IGluIHJlcG8gJXMiCittc2dzdHIgIueJiOacrOW6qyAlcyDkuK3nmoTntKLlvJXmqpTmoYjmkI3lo54iCisKKyM6IGRpci5jOjM0NTIgZGlyLmM6MzQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yaWVzIGZvciAlcyIKK21zZ3N0ciAi5LiN6IO954K6ICVzIOW7uueri+ebrumMhCIKKworIzogZGlyLmM6MzQ4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgbWlncmF0ZSBnaXQgZGlyZWN0b3J5IGZyb20gJyVzJyB0byAnJXMnIgorbXNnc3RyICLkuI3og73lvp4gJyVzJyDpgbfnp7sgZ2l0IOebrumMhOWIsCAnJXMnIgorCisjOiBlZGl0b3IuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJoaW50OiBXYWl0aW5nIGZvciB5b3VyIGVkaXRvciB0byBjbG9zZSB0aGUgZmlsZS4uLiVjIgorbXNnc3RyICLmj5DnpLrvvJrnrYnlvoXmgqjnmoTnt6jovK/lmajpl5zplonmqpTmoYguLi4lYyIKKworIzogZW50cnkuYzoxNzgKK21zZ2lkICJGaWx0ZXJpbmcgY29udGVudCIKK21zZ3N0ciAi6YGO5r++5YWn5a65IgorCisjOiBlbnRyeS5jOjQ3NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgIuS4jeiDveWwjeaqlOahiCAnJXMnIOWRvOWPqyBzdGF0IgorCisjOiBlbnZpcm9ubWVudC5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgZ2l0IG5hbWVzcGFjZSBwYXRoIFwiJXNcIiIKK21zZ3N0ciAi6Yyv6Kqk55qEIGdpdCDlkI3lrZfnqbrplpPot6/lvpEgXCIlc1wiIgorCisjOiBlbnZpcm9ubWVudC5jOjMzMQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc2V0IEdJVF9ESVIgdG8gJyVzJyIKK21zZ3N0ciAi5LiN6IO96Kit5a6aIEdJVF9ESVIg54K6ICclcyciCisKKyM6IGV4ZWMtY21kLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IGFyZ3MgdG8gcnVuICVzIgorbXNnc3RyICLln7fooYwgJXMg55qE5Y+D5pW45aSq5aSaIgorCisjOiBmZXRjaC1wYWNrLmM6MTUwCittc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGV4cGVjdGVkIHNoYWxsb3cgbGlzdCIKK21zZ3N0ciAiZ2l0IGZldGNoLXBhY2vvvJrmh4nngrogc2hhbGxvdyDliJfooagiCisKKyM6IGZldGNoLXBhY2suYzoxNTMKK21zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgYSBmbHVzaCBwYWNrZXQgYWZ0ZXIgc2hhbGxvdyBsaXN0IgorbXNnc3RyICJnaXQgZmV0Y2gtcGFja++8muWcqOa3uuikh+ijveWIl+ihqOS5i+W+jOacn+acm+S4gOWAiyBmbHVzaCDljIUiCisKKyM6IGZldGNoLXBhY2suYzoxNjQKK21zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290IGEgZmx1c2ggcGFja2V0IgorbXNnc3RyICJnaXQgZmV0Y2gtcGFja++8muacn+acmyBBQ0svTkFL77yM5Y275b6X5YiwIGZsdXNoIOWMhSIKKworIzogZmV0Y2gtcGFjay5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgZmV0Y2gtcGFjazogZXhwZWN0ZWQgQUNLL05BSywgZ290ICclcyciCittc2dzdHIgImdpdCBmZXRjaC1wYWNr77ya5oeJ54K6IEFDSy9OQUvvvIzljbvlvpfliLAgJyVzJyIKKworIzogZmV0Y2gtcGFjay5jOjE5NQorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byByZW1vdGUiCittc2dzdHIgIueEoeazleWvq+WIsOmBoOerryIKKworIzogZmV0Y2gtcGFjay5jOjI1NworbXNnaWQgIi0tc3RhdGVsZXNzLXJwYyByZXF1aXJlcyBtdWx0aV9hY2tfZGV0YWlsZWQiCittc2dzdHIgIi0tc3RhdGVsZXNzLXJwYyDpnIDopoEgbXVsdGlfYWNrX2RldGFpbGVkIgorCisjOiBmZXRjaC1wYWNrLmM6MzU2IGZldGNoLXBhY2suYzoxMzQwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgc2hhbGxvdyBsaW5lOiAlcyIKK21zZ3N0ciAi54Sh5pWI55qEIHNoYWxsb3cg6KiK5oGv77yaJXMiCisKKyM6IGZldGNoLXBhY2suYzozNjIgZmV0Y2gtcGFjay5jOjEzNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB1bnNoYWxsb3cgbGluZTogJXMiCittc2dzdHIgIueEoeaViOeahCB1bnNoYWxsb3cg6KiK5oGv77yaJXMiCisKKyM6IGZldGNoLXBhY2suYzozNjQgZmV0Y2gtcGFjay5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0IG5vdCBmb3VuZDogJXMiCittc2dzdHIgIueJqeS7tuacquaJvuWIsO+8miVzIgorCisjOiBmZXRjaC1wYWNrLmM6MzY3IGZldGNoLXBhY2suYzoxMzUxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIG9iamVjdDogJXMiCittc2dzdHIgIueJqeS7tuS4reeZvOeUn+mMr+iqpO+8miVzIgorCisjOiBmZXRjaC1wYWNrLmM6MzY5IGZldGNoLXBhY2suYzoxMzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHNoYWxsb3cgZm91bmQ6ICVzIgorbXNnc3RyICLmnKrnmbznj74gc2hhbGxvd++8miVzIgorCisjOiBmZXRjaC1wYWNrLmM6MzcyIGZldGNoLXBhY2suYzoxMzU3CisjLCBjLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIHNoYWxsb3cvdW5zaGFsbG93LCBnb3QgJXMiCittc2dzdHIgIuaHieeCuiBzaGFsbG93L3Vuc2hhbGxvd++8jOWNu+W+l+WIsCAlcyIKKworIzogZmV0Y2gtcGFjay5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJnb3QgJXMgJWQgJXMiCittc2dzdHIgIuW+l+WIsCAlcyAlZCAlcyIKKworIzogZmV0Y2gtcGFjay5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbW1pdCAlcyIKK21zZ3N0ciAi54Sh5pWI5o+Q5LqkICVzIgorCisjOiBmZXRjaC1wYWNrLmM6NDYyCittc2dpZCAiZ2l2aW5nIHVwIgorbXNnc3RyICLmlL7mo4QiCisKKyM6IGZldGNoLXBhY2suYzo0NzUgcHJvZ3Jlc3MuYzozMjMKK21zZ2lkICJkb25lIgorbXNnc3RyICLlrozmiJAiCisKKyM6IGZldGNoLXBhY2suYzo0ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ290ICVzICglZCkgJXMiCittc2dzdHIgIuW+l+WIsCAlcyAoJWQpICVzIgorCisjOiBmZXRjaC1wYWNrLmM6NTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIk1hcmtpbmcgJXMgYXMgY29tcGxldGUiCittc2dzdHIgIuaomeiomCAlcyDngrrlrozmiJAiCisKKyM6IGZldGNoLXBhY2suYzo3NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWxyZWFkeSBoYXZlICVzICglcykiCittc2dzdHIgIuW3sue2k+aciSAlc++8iCVz77yJIgorCisjOiBmZXRjaC1wYWNrLmM6ODE4Cittc2dpZCAiZmV0Y2gtcGFjazogdW5hYmxlIHRvIGZvcmsgb2ZmIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCittc2dzdHIgImZldGNoLXBhY2vvvJrnhKHms5XooY3nlJ8gc2lkZWJhbmQg5aSa6Lev6Ly45Ye6IgorCisjOiBmZXRjaC1wYWNrLmM6ODI2Cittc2dpZCAicHJvdG9jb2wgZXJyb3I6IGJhZCBwYWNrIGhlYWRlciIKK21zZ3N0ciAi5Y2U5a6a6Yyv6Kqk77ya5aOe55qE5YyF6aCtIgorCisjOiBmZXRjaC1wYWNrLmM6OTAwCisjLCBjLWZvcm1hdAorbXNnaWQgImZldGNoLXBhY2s6IHVuYWJsZSB0byBmb3JrIG9mZiAlcyIKK21zZ3N0ciAiZmV0Y2gtcGFja++8mueEoeazleihjeeUn+mAsueoiyAlcyIKKworIzogZmV0Y2gtcGFjay5jOjkxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmYWlsZWQiCittc2dzdHIgIiVzIOWkseaVlyIKKworIzogZmV0Y2gtcGFjay5jOjkxOAorbXNnaWQgImVycm9yIGluIHNpZGViYW5kIGRlbXVsdGlwbGV4ZXIiCittc2dzdHIgInNpZGViYW5kIOWkmui3r+i8uOWHuueZvOeUn+mMr+iqpCIKKworIzogZmV0Y2gtcGFjay5jOjk2NQorIywgYy1mb3JtYXQKK21zZ2lkICJTZXJ2ZXIgdmVyc2lvbiBpcyAlLipzIgorbXNnc3RyICLkvLrmnI3lmajniYjmnKwgJS4qcyIKKworIzogZmV0Y2gtcGFjay5jOjk3MCBmZXRjaC1wYWNrLmM6OTc2IGZldGNoLXBhY2suYzo5NzkgZmV0Y2gtcGFjay5jOjk4NQorIzogZmV0Y2gtcGFjay5jOjk4OSBmZXRjaC1wYWNrLmM6OTkzIGZldGNoLXBhY2suYzo5OTcgZmV0Y2gtcGFjay5jOjEwMDEKKyM6IGZldGNoLXBhY2suYzoxMDA1IGZldGNoLXBhY2suYzoxMDA5IGZldGNoLXBhY2suYzoxMDEzIGZldGNoLXBhY2suYzoxMDE3CisjOiBmZXRjaC1wYWNrLmM6MTAyMyBmZXRjaC1wYWNrLmM6MTAyOSBmZXRjaC1wYWNrLmM6MTAzNCBmZXRjaC1wYWNrLmM6MTAzOQorIywgYy1mb3JtYXQKK21zZ2lkICJTZXJ2ZXIgc3VwcG9ydHMgJXMiCittc2dzdHIgIuS8uuacjeWZqOaUr+aPtCAlcyIKKworIzogZmV0Y2gtcGFjay5jOjk3MgorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgY2xpZW50cyIKK21zZ3N0ciAi5Ly65pyN5Zmo5LiN5pSv5o+0IHNoYWxsbG93IOeUqOaItuerryIKKworIzogZmV0Y2gtcGFjay5jOjEwMzIKK21zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLXNoYWxsb3ctc2luY2UiCittc2dzdHIgIuS8uuacjeWZqOS4jeaUr+aPtCAtLXNoYWxsb3ctc2luY2UiCisKKyM6IGZldGNoLXBhY2suYzoxMDM3Cittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgLS1zaGFsbG93LWV4Y2x1ZGUiCittc2dzdHIgIuS8uuacjeWZqOS4jeaUr+aPtCAtLXNoYWxsb3ctZXhjbHVkZSIKKworIzogZmV0Y2gtcGFjay5jOjEwNDEKK21zZ2lkICJTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCAtLWRlZXBlbiIKK21zZ3N0ciAi5Ly65pyN5Zmo5LiN5pSv5o+0IC0tZGVlcGVuIgorCisjOiBmZXRjaC1wYWNrLmM6MTA1OAorbXNnaWQgIm5vIGNvbW1vbiBjb21taXRzIgorbXNnc3RyICLmspLmnInlhbHlkIznmoTmj5DkuqQiCisKKyM6IGZldGNoLXBhY2suYzoxMDcwIGZldGNoLXBhY2suYzoxNTM2Cittc2dpZCAiZ2l0IGZldGNoLXBhY2s6IGZldGNoIGZhaWxlZC4iCittc2dzdHIgImdpdCBmZXRjaC1wYWNr77ya5Y+W5b6X5aSx5pWX44CCIgorCisjOiBmZXRjaC1wYWNrLmM6MTIwOQorbXNnaWQgIlNlcnZlciBkb2VzIG5vdCBzdXBwb3J0IHNoYWxsb3cgcmVxdWVzdHMiCittc2dzdHIgIuS8uuacjeWZqOS4jeaUr+aPtCBzaGFsbGxvdyDoq4vmsYIiCisKKyM6IGZldGNoLXBhY2suYzoxMjE2Cittc2dpZCAiU2VydmVyIHN1cHBvcnRzIGZpbHRlciIKK21zZ3N0ciAi5Ly65pyN5Zmo5pSv5o+0IGZpbHRlciIKKworIzogZmV0Y2gtcGFjay5jOjEyMzkKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcmVxdWVzdCB0byByZW1vdGUiCittc2dzdHIgIueEoeazleWwh+iri+axguWvq+WIsOmBoOerryIKKworIzogZmV0Y2gtcGFjay5jOjEyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBzZWN0aW9uIGhlYWRlciAnJXMnIgorbXNnc3RyICLoroDlj5bnr4DmqJnpoYwgJyVzJyDnmbznlJ/pjK/oqqQiCisKKyM6IGZldGNoLXBhY2suYzoxMjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkICclcycsIHJlY2VpdmVkICclcyciCittc2dzdHIgIumgkOacnyAnJXMn77yM5b6X5YiwICclcyciCisKKyM6IGZldGNoLXBhY2suYzoxMzAzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgYWNrbm93bGVkZ21lbnQgbGluZTogJyVzJyIKK21zZ3N0ciAi5oSP5aSW55qE56K66KqN6KGM77yaJyVzJyIKKworIzogZmV0Y2gtcGFjay5jOjEzMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBhY2tzOiAlZCIKK21zZ3N0ciAi6JmV55CGIGFjayDnmbznlJ/pjK/oqqTvvJolZCIKKworIzogZmV0Y2gtcGFjay5jOjEzMTgKK21zZ2lkICJleHBlY3RlZCBwYWNrZmlsZSB0byBiZSBzZW50IGFmdGVyICdyZWFkeSciCittc2dzdHIgIumgkOacn+WcqCAncmVhZHknIOS5i+W+jOWCs+mAgSBwYWNrZmlsZSIKKworIzogZmV0Y2gtcGFjay5jOjEzMjAKK21zZ2lkICJleHBlY3RlZCBubyBvdGhlciBzZWN0aW9ucyB0byBiZSBzZW50IGFmdGVyIG5vICdyZWFkeSciCittc2dzdHIgIuWcqOaykuaciSAncmVhZHknIOS4jeaHieipsuWCs+mAgeWFtuWug+Wwj+evgCIKKworIzogZmV0Y2gtcGFjay5jOjEzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBzaGFsbG93IGluZm86ICVkIgorbXNnc3RyICLomZXnkIbmt7ropIfoo73oqIrmga/nmbznlJ/pjK/oqqTvvJolZCIKKworIzogZmV0Y2gtcGFjay5jOjE0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgd2FudGVkLXJlZiwgZ290ICclcyciCittc2dzdHIgIumgkOacnyB3YW50ZWQtcmVm77yM5b6X5YiwICclcyciCisKKyM6IGZldGNoLXBhY2suYzoxNDE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgd2FudGVkLXJlZjogJyVzJyIKK21zZ3N0ciAi5oSP5aSW55qEIHdhbnRlZC1yZWbvvJonJXMnIgorCisjOiBmZXRjaC1wYWNrLmM6MTQxOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBwcm9jZXNzaW5nIHdhbnRlZCByZWZzOiAlZCIKK21zZ3N0ciAi6JmV55CG6KaB5Y+W5b6X55qE5byV55So55m855Sf6Yyv6Kqk77yaJWQiCisKKyM6IGZldGNoLXBhY2suYzoxNzYyCittc2dpZCAibm8gbWF0Y2hpbmcgcmVtb3RlIGhlYWQiCittc2dzdHIgIuaykuacieespuWQiOeahOmBoOerr+WIhuaUryIKKworIzogZmV0Y2gtcGFjay5jOjE3ODUgYnVpbHRpbi9jbG9uZS5jOjY4OQorbXNnaWQgInJlbW90ZSBkaWQgbm90IHNlbmQgYWxsIG5lY2Vzc2FyeSBvYmplY3RzIgorbXNnc3RyICLpgaDnq6/mspLmnInlgrPpgIHmiYDmnInlv4XpnIDnmoTnianku7YiCisKKyM6IGZldGNoLXBhY2suYzoxODEyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggcmVtb3RlIHJlZiAlcyIKK21zZ3N0ciAi5rKS5pyJ6YCZ5qij55qE6YGg56uv5byV55SoICVzIgorCisjOiBmZXRjaC1wYWNrLmM6MTgxNQorIywgYy1mb3JtYXQKK21zZ2lkICJTZXJ2ZXIgZG9lcyBub3QgYWxsb3cgcmVxdWVzdCBmb3IgdW5hZHZlcnRpc2VkIG9iamVjdCAlcyIKK21zZ3N0ciAi5Ly65pyN5Zmo5LiN5YWB6Kix6KuL5rGC5pyq5YWs6ZaL55qE54mp5Lu2ICVzIgorCisjOiBncGctaW50ZXJmYWNlLmM6NDA4Cittc2dpZCAiZ3BnIGZhaWxlZCB0byBzaWduIHRoZSBkYXRhIgorbXNnc3RyICJncGcg54Sh5rOV54K66LOH5paZ57C95ZCNIgorCisjOiBncGctaW50ZXJmYWNlLmM6NDM0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZSIKK21zZ3N0ciAi5LiN6IO95bu656uL5pqr5a2Y5qqUIgorCisjOiBncGctaW50ZXJmYWNlLmM6NDM3CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB3cml0aW5nIGRldGFjaGVkIHNpZ25hdHVyZSB0byAnJXMnIgorbXNnc3RyICLnhKHms5XlsIfliIbpm6LlvI/nsL3lkI3lr6vlhaUgJyVzJyIKKworIzogZ3JhcGguYzo5OAorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmUgaW52YWxpZCBjb2xvciAnJS4qcycgaW4gbG9nLmdyYXBoQ29sb3JzIgorbXNnc3RyICLlv73nlaUgbG9nLmdyYXBoQ29sb3JzIOS4reeEoeaViOeahOmhj+iJsiAnJS4qcyciCisKKyM6IGdyZXAuYzo2NjgKK21zZ2lkICIiCisiZ2l2ZW4gcGF0dGVybiBjb250YWlucyBOVUxMIGJ5dGUgKHZpYSAtZiA8ZmlsZT4pLiBUaGlzIGlzIG9ubHkgc3VwcG9ydGVkICIKKyJ3aXRoIC1QIHVuZGVyIFBDUkUgdjIiCittc2dzdHIgIiIKKyLmj5DkvpvnmoTmqKHlvI/ljIXlkKsgTlVMTCDlrZflhYPvvIjpgJrpgY4gLWYgPOaqlOahiD4g5Y+D5pW477yJ44CC5Y+q5pyJIFBDUkUgdjIg5LiL55qEIC1QIOaUr+aPtOatpCIKKyLlip/og70iCisKKyM6IGdyZXAuYzoyMTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IHVuYWJsZSB0byByZWFkICVzIgorbXNnc3RyICInJXMn77ya54Sh5rOV6K6A5Y+WICVzIgorCisjOiBncmVwLmM6MjE0NSBzZXR1cC5jOjE2NiBidWlsdGluL2Nsb25lLmM6NDExIGJ1aWx0aW4vZGlmZi5jOjgyCisjOiBidWlsdGluL3JtLmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0ICclcyciCittc2dzdHIgIuWwjSAnJXMnIOWRvOWPqyBzdGF0IOWkseaVlyIKKworIzogZ3JlcC5jOjIxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJzogc2hvcnQgcmVhZCIKK21zZ3N0ciAiJyVzJ++8muiugOWPluS4jeWujOaVtCIKKworIzogaGVscC5jOjIzCittc2dpZCAic3RhcnQgYSB3b3JraW5nIGFyZWEgKHNlZSBhbHNvOiBnaXQgaGVscCB0dXRvcmlhbCkiCittc2dzdHIgIumWi+Wni+S4gOWAi+W3peS9nOWNgO+8iOWPg+imi++8mmdpdCBoZWxwIHR1dG9yaWFs77yJIgorCisjOiBoZWxwLmM6MjQKK21zZ2lkICJ3b3JrIG9uIHRoZSBjdXJyZW50IGNoYW5nZSAoc2VlIGFsc286IGdpdCBoZWxwIGV2ZXJ5ZGF5KSIKK21zZ3N0ciAi5Zyo55uu5YmN6K6K5pu05LiK5bel5L2c77yI5Y+D6KaL77yaZ2l0IGhlbHAgZXZlcnlkYXnvvIkiCisKKyM6IGhlbHAuYzoyNQorbXNnaWQgImV4YW1pbmUgdGhlIGhpc3RvcnkgYW5kIHN0YXRlIChzZWUgYWxzbzogZ2l0IGhlbHAgcmV2aXNpb25zKSIKK21zZ3N0ciAi5qqi5p+l5q235Y+y5ZKM54uA5oWL77yI5Y+D6KaL77yaZ2l0IGhlbHAgcmV2aXNpb25z77yJIgorCisjOiBoZWxwLmM6MjYKK21zZ2lkICJncm93LCBtYXJrIGFuZCB0d2VhayB5b3VyIGNvbW1vbiBoaXN0b3J5IgorbXNnc3RyICLmk7TlsZXjgIHmqJnoqJjlkozoqr/moKHmgqjnmoTmrbflj7LoqJjpjIQiCisKKyM6IGhlbHAuYzoyNworbXNnaWQgImNvbGxhYm9yYXRlIChzZWUgYWxzbzogZ2l0IGhlbHAgd29ya2Zsb3dzKSIKK21zZ3N0ciAi5Y2U5ZCM77yI5Y+D6KaL77yaZ2l0IGhlbHAgd29ya2Zsb3dz77yJIgorCisjOiBoZWxwLmM6MzEKK21zZ2lkICJNYWluIFBvcmNlbGFpbiBDb21tYW5kcyIKK21zZ3N0ciAi5Li76KaB55qE5LiK5bGk5oyH5LukIgorCisjOiBoZWxwLmM6MzIKK21zZ2lkICJBbmNpbGxhcnkgQ29tbWFuZHMgLyBNYW5pcHVsYXRvcnMiCittc2dzdHIgIui8lOWKqeaMh+S7pC/li5XkvZzogIUiCisKKyM6IGhlbHAuYzozMworbXNnaWQgIkFuY2lsbGFyeSBDb21tYW5kcyAvIEludGVycm9nYXRvcnMiCittc2dzdHIgIui8lOWKqeaMh+S7pC/oqaLllY/ogIUiCisKKyM6IGhlbHAuYzozNAorbXNnaWQgIkludGVyYWN0aW5nIHdpdGggT3RoZXJzIgorbXNnc3RyICLoiIflhbblroPns7vntbHkupLli5UiCisKKyM6IGhlbHAuYzozNQorbXNnaWQgIkxvdy1sZXZlbCBDb21tYW5kcyAvIE1hbmlwdWxhdG9ycyIKK21zZ3N0ciAi5L2O57Sa5oyH5LukL+WLleS9nOiAhSIKKworIzogaGVscC5jOjM2Cittc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gSW50ZXJyb2dhdG9ycyIKK21zZ3N0ciAi5L2O57Sa5oyH5LukL+ipouWVj+iAhSIKKworIzogaGVscC5jOjM3Cittc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gU3luY2luZyBSZXBvc2l0b3JpZXMiCittc2dzdHIgIuS9jue0muaMh+S7pCAvIOWQjOatpeeJiOacrOW6qyIKKworIzogaGVscC5jOjM4Cittc2dpZCAiTG93LWxldmVsIENvbW1hbmRzIC8gSW50ZXJuYWwgSGVscGVycyIKK21zZ3N0ciAi5L2O57Sa5oyH5LukL+WFp+mDqOWKqeaJiyIKKworIzogaGVscC5jOjI5OAorIywgYy1mb3JtYXQKK21zZ2lkICJhdmFpbGFibGUgZ2l0IGNvbW1hbmRzIGluICclcyciCittc2dzdHIgIuWcqCAnJXMnIOS4i+WPr+eUqOeahCBnaXQg5oyH5LukIgorCisjOiBoZWxwLmM6MzA1Cittc2dpZCAiZ2l0IGNvbW1hbmRzIGF2YWlsYWJsZSBmcm9tIGVsc2V3aGVyZSBvbiB5b3VyICRQQVRIIgorbXNnc3RyICLlnKggJFBBVEgg6Lev5b6R5Lit55qE5YW25LuW5Zyw5pa55Y+v55So55qEIGdpdCDmjIfku6QiCisKKyM6IGhlbHAuYzozMTQKK21zZ2lkICJUaGVzZSBhcmUgY29tbW9uIEdpdCBjb21tYW5kcyB1c2VkIGluIHZhcmlvdXMgc2l0dWF0aW9uczoiCittc2dzdHIgIumAmeS6m+aYr+WQhOeoruWgtOWQiOW4uOimi+eahCBHaXQg5oyH5Luk77yaIgorCisjOiBoZWxwLmM6MzYzIGdpdC5jOjk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuc3VwcG9ydGVkIGNvbW1hbmQgbGlzdGluZyB0eXBlICclcyciCittc2dzdHIgIuS4jeaUr+aPtOeahOaMh+S7pOWIl+ihqOmhnuWeiyAnJXMnIgorCisjOiBoZWxwLmM6NDAzCittc2dpZCAiVGhlIGNvbW1vbiBHaXQgZ3VpZGVzIGFyZToiCittc2dzdHIgIuacgOW4uOeUqOeahCBHaXQg5Zqu5bCO5pyJ77yaIgorCisjOiBoZWxwLmM6NTEyCittc2dpZCAiU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIHRvIHJlYWQgYWJvdXQgYSBzcGVjaWZpYyBzdWJjb21tYW5kIgorbXNnc3RyICLln7fooYzjgIAnZ2l0IGhlbHAgPGNvbW1hbmQ+JyDkvobmqqLoppbnibnlrprlrZDmjIfku6QiCisKKyM6IGhlbHAuYzo1MTcKK21zZ2lkICJFeHRlcm5hbCBjb21tYW5kcyIKK21zZ3N0ciAi5aSW6YOo5oyH5LukIgorCisjOiBoZWxwLmM6NTMyCittc2dpZCAiQ29tbWFuZCBhbGlhc2VzIgorbXNnc3RyICLmjIfku6TliKXlkI0iCisKKyM6IGhlbHAuYzo1OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiclcycgYXBwZWFycyB0byBiZSBhIGdpdCBjb21tYW5kLCBidXQgd2Ugd2VyZSBub3RcbiIKKyJhYmxlIHRvIGV4ZWN1dGUgaXQuIE1heWJlIGdpdC0lcyBpcyBicm9rZW4/IgorbXNnc3RyICIiCisiJyVzJyDlg4/mmK/kuIDlgIsgZ2l0IOaMh+S7pO+8jOS9huWNu+eEoeazleWft+ihjOOAglxuIgorIuWPr+iDveaYryBnaXQtJXMg5Y+X5pCN77yfIgorCisjOiBoZWxwLmM6NjU1Cittc2dpZCAiVWggb2guIFlvdXIgc3lzdGVtIHJlcG9ydHMgbm8gR2l0IGNvbW1hbmRzIGF0IGFsbC4iCittc2dzdHIgIuWUieWRgO+8jOaCqOeahOezu+e1seS4reacqueZvOePviBHaXQg5oyH5Luk44CCIgorCisjOiBoZWxwLmM6Njc3CisjLCBjLWZvcm1hdAorbXNnaWQgIldBUk5JTkc6IFlvdSBjYWxsZWQgYSBHaXQgY29tbWFuZCBuYW1lZCAnJXMnLCB3aGljaCBkb2VzIG5vdCBleGlzdC4iCittc2dzdHIgIuitpuWRiu+8muaCqOWft+ihjOS6huS4gOWAi+S4puS4jeWtmOWcqOeahCBHaXQg5oyH5LukICclcyfjgIIiCisKKyM6IGhlbHAuYzo2ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29udGludWluZyB1bmRlciB0aGUgYXNzdW1wdGlvbiB0aGF0IHlvdSBtZWFudCAnJXMnLiIKK21zZ3N0ciAi5YGH5a6a5L2g5oOz6KaB55qE5pivICclcycg5Lim57m857qM44CCIgorCisjOiBoZWxwLmM6Njg3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbnRpbnVpbmcgaW4gJTAuMWYgc2Vjb25kcywgYXNzdW1pbmcgdGhhdCB5b3UgbWVhbnQgJyVzJy4iCittc2dzdHIgIuWBh+WumuS9oOaDs+imgeeahOaYryAnJTIkcyfvvIzlnKggJTEkMC4xZiDnp5LpkJjlvoznubznuozjgIIiCisKKyM6IGhlbHAuYzo2OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0OiAnJXMnIGlzIG5vdCBhIGdpdCBjb21tYW5kLiBTZWUgJ2dpdCAtLWhlbHAnLiIKK21zZ3N0ciAiZ2l077yaJyVzJyDkuI3mmK/kuIDlgIsgZ2l0IOaMh+S7pOOAguWPg+imiyAnZ2l0IC0taGVscCfjgIIiCisKKyM6IGhlbHAuYzo2OTkKK21zZ2lkICIiCisiXG4iCisiVGhlIG1vc3Qgc2ltaWxhciBjb21tYW5kIGlzIgorbXNnaWRfcGx1cmFsICIiCisiXG4iCisiVGhlIG1vc3Qgc2ltaWxhciBjb21tYW5kcyBhcmUiCittc2dzdHJbMF0gIiIKKyJcbiIKKyLmnIDpoZ7kvLznmoTmjIfku6TmnIkiCisKKyM6IGhlbHAuYzo3MTQKK21zZ2lkICJnaXQgdmVyc2lvbiBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHZlcnNpb24gWzzpgbjpoIU+XSIKKworIzogaGVscC5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogJXMgLSAlcyIKK21zZ3N0ciAiJXPvvJolcyAtICVzIgorCisjOiBoZWxwLmM6Nzg3Cittc2dpZCAiIgorIlxuIgorIkRpZCB5b3UgbWVhbiB0aGlzPyIKK21zZ2lkX3BsdXJhbCAiIgorIlxuIgorIkRpZCB5b3UgbWVhbiBvbmUgb2YgdGhlc2U/IgorbXNnc3RyWzBdICIiCisiXG4iCisi5oKo5oyH55qE5piv6YCZ5YCL5ZeO77yfIgorCisjOiBpZGVudC5jOjM0OQorbXNnaWQgIiIKKyJcbiIKKyIqKiogUGxlYXNlIHRlbGwgbWUgd2hvIHlvdSBhcmUuXG4iCisiXG4iCisiUnVuXG4iCisiXG4iCisiICBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIuZW1haWwgXCJ5b3VAZXhhbXBsZS5jb21cIlxuIgorIiAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLm5hbWUgXCJZb3VyIE5hbWVcIlxuIgorIlxuIgorInRvIHNldCB5b3VyIGFjY291bnQncyBkZWZhdWx0IGlkZW50aXR5LlxuIgorIk9taXQgLS1nbG9iYWwgdG8gc2V0IHRoZSBpZGVudGl0eSBvbmx5IGluIHRoaXMgcmVwb3NpdG9yeS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIioqKiDoq4vlkYroqLTmiJHkvaDmmK/oqrDjgIJcbiIKKyJcbiIKKyLln7fooYxcbiIKKyJcbiIKKyIgIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5lbWFpbCBcInlvdUBleGFtcGxlLmNvbVwiXG4iCisiICBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIubmFtZSBcIllvdXIgTmFtZVwiXG4iCisiXG4iCisi5L6G6Kit5a6a5oKo5biz6Jmf55qE6aCQ6Kit6Lqr5Lu95qiZ6KiY44CCXG4iCisi5aaC5p6c5YOF5Zyo5pys54mI5pys5bqr6Kit5a6a6Lqr5Lu95qiZ6KiY77yM5YmH55yB55WlIC0tZ2xvYmFsIOWPg+aVuOOAglxuIgorCisjOiBpZGVudC5jOjM3OQorbXNnaWQgIm5vIGVtYWlsIHdhcyBnaXZlbiBhbmQgYXV0by1kZXRlY3Rpb24gaXMgZGlzYWJsZWQiCittc2dzdHIgIuacquaPkOS+m+S/oeS7tuS9jeWdgOS4lOiHquWLleWBtea4rOiiq+emgeeUqCIKKworIzogaWRlbnQuYzozODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGF1dG8tZGV0ZWN0IGVtYWlsIGFkZHJlc3MgKGdvdCAnJXMnKSIKK21zZ3N0ciAi54Sh5rOV6Ieq5YuV5YG15ris5L+h5Lu25L2N5Z2A77yI5b6X5YiwICclcyfvvIkiCisKKyM6IGlkZW50LmM6NDAxCittc2dpZCAibm8gbmFtZSB3YXMgZ2l2ZW4gYW5kIGF1dG8tZGV0ZWN0aW9uIGlzIGRpc2FibGVkIgorbXNnc3RyICLmnKrmj5Dkvpvlp5PlkI3kuJToh6rli5XlgbXmuKzooqvnpoHnlKgiCisKKyM6IGlkZW50LmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhdXRvLWRldGVjdCBuYW1lIChnb3QgJyVzJykiCittc2dzdHIgIueEoeazleiHquWLleWBtea4rOWnk+WQje+8iOW+l+WIsCAnJXMn77yJIgorCisjOiBpZGVudC5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBpZGVudCBuYW1lIChmb3IgPCVzPikgbm90IGFsbG93ZWQiCittc2dzdHIgIuS4jeWFgeioseepuueahOWnk+WQje+8iOWwjeaWvCA8JXM+77yJIgorCisjOiBpZGVudC5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIGNvbnNpc3RzIG9ubHkgb2YgZGlzYWxsb3dlZCBjaGFyYWN0ZXJzOiAlcyIKK21zZ3N0ciAi5aeT5ZCN5Lit5YOF5YyF5ZCr56aB55So5a2X5YWD77yaJXMiCisKKyM6IGlkZW50LmM6NDM2IGJ1aWx0aW4vY29tbWl0LmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgZGF0ZSBmb3JtYXQ6ICVzIgorbXNnc3RyICLnhKHmlYjnmoTml6XmnJ/moLzlvI/vvJolcyIKKworIzogbGlzdC1vYmplY3RzLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImVudHJ5ICclcycgaW4gdHJlZSAlcyBoYXMgdHJlZSBtb2RlLCBidXQgaXMgbm90IGEgdHJlZSIKK21zZ3N0ciAi5qi5ICUyJHMg5Lit55qE5qKd55uuICclMSRzJyDlhbfmnInmqLnnmoTlsazmgKfvvIzkvYbkuI3mmK/kuIDlgIvmqLnni4Dnianku7YiCisKKyM6IGxpc3Qtb2JqZWN0cy5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJlbnRyeSAnJXMnIGluIHRyZWUgJXMgaGFzIGJsb2IgbW9kZSwgYnV0IGlzIG5vdCBhIGJsb2IiCittc2dzdHIgIuaouSAlMiRzIOS4reeahOaineebriAnJTEkcycg5YW35pyJ6LOH5paZ54mp5Lu255qE5bGs5oCn77yM5L2G5LiN5piv5LiA5YCL6LOH5paZ54mp5Lu2IgorCisjOiBsaXN0LW9iamVjdHMuYzozNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGxvYWQgcm9vdCB0cmVlIGZvciBjb21taXQgJXMiCittc2dzdHIgIueEoeazleeCuuaPkOS6pCAlcyDovInlhaXmoLnmqLkiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXIuYzo0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBzcGFyc2UgYmxvYiBpbiAnJXMnIgorbXNnc3RyICLkuI3og73lrZjlj5YgJyVzJyDkuK3nmoTnqIDnlo/os4fmlpnnianku7YiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXIuYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIHNwYXJzZSBmaWx0ZXIgZGF0YSBpbiAlcyIKK21zZ3N0ciAi54Sh5rOV6Kej5p6QICVzIOS4reeahOeogOeWj+mBjua/vuWZqOizh+aWmSIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6NTgKK21zZ2lkICJleHBlY3RlZCAndHJlZTo8ZGVwdGg+JyIKK21zZ3N0ciAi5pyf5pybICd0cmVlOjzmt7HluqY+JyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6NzMKK21zZ2lkICJzcGFyc2U6cGF0aCBmaWx0ZXJzIHN1cHBvcnQgaGFzIGJlZW4gZHJvcHBlZCIKK21zZ3N0ciAic3BhcnNlOnBhdGgg6YGO5r++5Zmo5pSv5o+05bey6KKr5Yiq6ZmkIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGZpbHRlci1zcGVjICclcyciCittc2dzdHIgIueEoeaViOeahOmBjua/vuWZqOihqOmBlOW8jyAnJXMnIgorCisjOiBsaXN0LW9iamVjdHMtZmlsdGVyLW9wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVzdCBlc2NhcGUgY2hhciBpbiBzdWItZmlsdGVyLXNwZWM6ICclYyciCittc2dzdHIgIuW/hemgiOWwjSBzdWItZmlsdGVyLXNwZWMg5Lit55qE5a2X5YWD6YCy6KGM6L2J576p77yaJyVjJyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmM6MTQ0Cittc2dpZCAiZXhwZWN0ZWQgc29tZXRoaW5nIGFmdGVyIGNvbWJpbmU6IgorbXNnc3RyICLmnJ/mnJvlnKjntYTlkIjlvozmnInkuIDkupvmnbHopb/vvJoiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5jOjIyNgorbXNnaWQgIm11bHRpcGxlIGZpbHRlci1zcGVjcyBjYW5ub3QgYmUgY29tYmluZWQiCittc2dzdHIgIuS4jeiDvea3t+eUqOWkmueorumBjua/vuimj+agvCIKKworIzogbG9ja2ZpbGUuYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVuYWJsZSB0byBjcmVhdGUgJyVzLmxvY2snOiAlcy5cbiIKKyJcbiIKKyJBbm90aGVyIGdpdCBwcm9jZXNzIHNlZW1zIHRvIGJlIHJ1bm5pbmcgaW4gdGhpcyByZXBvc2l0b3J5LCBlLmcuXG4iCisiYW4gZWRpdG9yIG9wZW5lZCBieSAnZ2l0IGNvbW1pdCcuIFBsZWFzZSBtYWtlIHN1cmUgYWxsIHByb2Nlc3Nlc1xuIgorImFyZSB0ZXJtaW5hdGVkIHRoZW4gdHJ5IGFnYWluLiBJZiBpdCBzdGlsbCBmYWlscywgYSBnaXQgcHJvY2Vzc1xuIgorIm1heSBoYXZlIGNyYXNoZWQgaW4gdGhpcyByZXBvc2l0b3J5IGVhcmxpZXI6XG4iCisicmVtb3ZlIHRoZSBmaWxlIG1hbnVhbGx5IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIueEoeazleW7uueriyAnJXMubG9jayfvvJolc+OAglxuIgorIlxuIgorIuS8vOS5juWPpuWkluS4gOWAiyBnaXQg6YCy56iL5Zyo6YCZ5YCL54mI5pys5bqr5Lit5Z+36KGM77yM5L6L5aaC77yaJ2dpdCBjb21taXQnIOaMh+S7pOaJk1xuIgorIumWi+S6huS4gOWAi+e3qOi8r+WZqOOAguiri+eiuuiqjeaJgOaciemAsueoi+mDveW3sue2k+mXnOmWieeEtuW+jOmHjeippuOAguWmguaenOS7jeeEtuWgsemMr++8jFxuIgorIuWPr+iDveS5i+WJjeacieS4gOWAiyBnaXQg6YCy56iL5Zyo6YCZ5YCL54mI5pys5bqr5Lit55Ww5bi46Zui6ZaL77yaXG4iCisi5omL5YuV5Yiq6Zmk6YCZ5YCL5qqU5qGI5YaN57m857qM44CCIgorCisjOiBsb2NrZmlsZS5jOjE1OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gY3JlYXRlICclcy5sb2NrJzogJXMiCittc2dzdHIgIuS4jeiDveW7uueriyAnJXMubG9jayfvvJolcyIKKworIzogbWVyZ2UuYzo0MQorbXNnaWQgImZhaWxlZCB0byByZWFkIHRoZSBjYWNoZSIKK21zZ3N0ciAi6K6A5Y+W5b+r5Y+W5aSx5pWXIgorCisjOiBtZXJnZS5jOjEwNyByZXJlcmUuYzo3MjAgYnVpbHRpbi9hbS5jOjE4NzkgYnVpbHRpbi9hbS5jOjE5MTMKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo1NDEgYnVpbHRpbi9jaGVja291dC5jOjgwMCBidWlsdGluL2Nsb25lLmM6ODEwCisjOiBidWlsdGluL3N0YXNoLmM6MjY1Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgorbXNnc3RyICLnhKHms5Xlr6vmlrDnmoTntKLlvJXmqpTmoYgiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1NgorbXNnaWQgIihiYWQgY29tbWl0KVxuIgorbXNnc3RyICLvvIjlo57mj5DkuqTvvIlcbiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6Mzc5CisjLCBjLWZvcm1hdAorbXNnaWQgImFkZF9jYWNoZWluZm8gZmFpbGVkIGZvciBwYXRoICclcyc7IG1lcmdlIGFib3J0aW5nLiIKK21zZ3N0ciAiYWRkX2NhY2hlaW5mbyDlsI3ot6/lvpEgJyVzJyDln7fooYzlpLHmlZfvvIzlkIjkvbXntYLmraLjgIIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICJhZGRfY2FjaGVpbmZvIGZhaWxlZCB0byByZWZyZXNoIGZvciBwYXRoICclcyc7IG1lcmdlIGFib3J0aW5nLiIKK21zZ3N0ciAiYWRkX2NhY2hlaW5mbyDnhKHms5Xph43mlrDmlbTnkIbot6/lvpEgJyVzJ++8jOWQiOS9tee1guatouOAgiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6ODc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGF0aCAnJXMnJXMiCittc2dzdHIgIuW7uueri+i3r+W+kSAnJXMnJXMg5aSx5pWXIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo4ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgdG8gbWFrZSByb29tIGZvciBzdWJkaXJlY3RvcnlcbiIKK21zZ3N0ciAi5Yiq6ZmkICVzIOS7peS+v+eCuuWtkOebrumMhOeVmeWHuuepuumWk1xuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo4OTkgbWVyZ2UtcmVjdXJzaXZlLmM6OTE4Cittc2dpZCAiOiBwZXJoYXBzIGEgRC9GIGNvbmZsaWN0PyIKK21zZ3N0ciAi77ya5Y+v6IO95piv5LiA5YCL55uu6YyEL+aqlOahiOihneeqge+8nyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJyVzJyIKK21zZ3N0ciAi5ouS57WV5o2o5qOEICclcycg5Lit55qE5pyq6L+96Lmk5qqU5qGIIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NDkgYnVpbHRpbi9jYXQtZmlsZS5jOjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCAlcyAnJXMnIgorbXNnc3RyICLkuI3og73oroDlj5bnianku7YgJXMgJyVzJyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6OTU0CisjLCBjLWZvcm1hdAorbXNnaWQgImJsb2IgZXhwZWN0ZWQgZm9yICVzICclcyciCittc2dzdHIgIiVzICclcycg5oeJ54K66LOH5paZ54mp5Lu2IgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJzogJXMiCittc2dzdHIgIumWi+WVnyAnJXMnIOWkseaVl++8miVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bWxpbmsgJyVzJzogJXMiCittc2dzdHIgIuW7uueri+espuiZn+mAo+e1kCAnJXMnIOWkseaVl++8miVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzo5OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG8gbm90IGtub3cgd2hhdCB0byBkbyB3aXRoICUwNm8gJXMgJyVzJyIKK21zZ3N0ciAi5LiN55+l6YGT5aaC5L2V6JmV55CGICUwNm8gJXMgJyVzJyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTE5MQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChub3QgY2hlY2tlZCBvdXQpIgorbXNnc3RyICLnhKHms5XlkIjkvbXlrZDmqKHntYQgJXMg77yI5rKS5pyJ57C95Ye677yJIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMTk4CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKGNvbW1pdHMgbm90IHByZXNlbnQpIgorbXNnc3RyICLnhKHms5XlkIjkvbXlrZDmqKHntYQgJXPvvIjmj5DkuqTkuI3lrZjlnKjvvIkiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAoY29tbWl0cyBkb24ndCBmb2xsb3cgbWVyZ2UtYmFzZSkiCittc2dzdHIgIueEoeazleWQiOS9teWtkOaooee1hCAlcyDvvIjmj5DkuqTmnKrot5/pmqjlkIjkvbXln7rnpI7vvIkiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyMTMgbWVyZ2UtcmVjdXJzaXZlLmM6MTIyNQorIywgYy1mb3JtYXQKK21zZ2lkICJGYXN0LWZvcndhcmRpbmcgc3VibW9kdWxlICVzIHRvIHRoZSBmb2xsb3dpbmcgY29tbWl0OiIKK21zZ3N0ciAi5a2Q5qih57WEICVzIOW/q+i9ieWIsOWmguS4i+aPkOS6pO+8miIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTIxNiBtZXJnZS1yZWN1cnNpdmUuYzoxMjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhc3QtZm9yd2FyZGluZyBzdWJtb2R1bGUgJXMiCittc2dzdHIgIuW/q+i9ieWtkOaooee1hCAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gbWVyZ2Ugc3VibW9kdWxlICVzIChtZXJnZSBmb2xsb3dpbmcgY29tbWl0cyBub3QgZm91bmQpIgorbXNnc3RyICLnhKHms5XlkIjkvbXlrZDmqKHntYQgJXMg77yI5rKS55m854++5ZCI5L216Lef6Zqo55qE5o+Q5Lqk77yJIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBtZXJnZSBzdWJtb2R1bGUgJXMgKG5vdCBmYXN0LWZvcndhcmQpIgorbXNnc3RyICLnhKHms5XlkIjkvbXlrZDmqKHntYQgJXPvvIjpnZ7lv6vovYnvvIkiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNTYKK21zZ2lkICJGb3VuZCBhIHBvc3NpYmxlIG1lcmdlIHJlc29sdXRpb24gZm9yIHRoZSBzdWJtb2R1bGU6XG4iCittc2dzdHIgIuaJvuWIsOWtkOaooee1hOeahOS4gOWAi+WPr+iDveeahOWQiOS9teaWueahiO+8mlxuIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxMjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJJZiB0aGlzIGlzIGNvcnJlY3Qgc2ltcGx5IGFkZCBpdCB0byB0aGUgaW5kZXggZm9yIGV4YW1wbGVcbiIKKyJieSB1c2luZzpcbiIKKyJcbiIKKyIgIGdpdCB1cGRhdGUtaW5kZXggLS1jYWNoZWluZm8gMTYwMDAwICVzIFwiJXNcIlxuIgorIlxuIgorIndoaWNoIHdpbGwgYWNjZXB0IHRoaXMgc3VnZ2VzdGlvbi5cbiIKK21zZ3N0ciAiIgorIuWmguaenOmAmeWAi+ato+eiuu+8jOWwh+WFtuaWsOWinuWIsOe0ouW8le+8jOS+i+WmguS9v+eUqOaMh+S7pO+8mlxuIgorIlxuIgorIiAgZ2l0IHVwZGF0ZS1pbmRleCAtLWNhY2hlaW5mbyAxNjAwMDAgJXMgXCIlc1wiXG4iCisiXG4iCisi5Lul5o6l5Y+X5q2k5bu66K2w44CCXG4iCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIG1lcmdlIHN1Ym1vZHVsZSAlcyAobXVsdGlwbGUgbWVyZ2VzIGZvdW5kKSIKK21zZ3N0ciAi54Sh5rOV5ZCI5L215a2Q5qih57WEICVzIO+8iOeZvOePvuWkmuWAi+WQiOS9te+8iSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM0MQorbXNnaWQgIkZhaWxlZCB0byBleGVjdXRlIGludGVybmFsIG1lcmdlIgorbXNnc3RyICLnhKHms5Xln7fooYzlhafpg6jlkIjkvbUiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjEzNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGFkZCAlcyB0byBkYXRhYmFzZSIKK21zZ3N0ciAi5LiN6IO95paw5aKeICVzIOiHs+eJqeS7tuW6qyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTM3OAorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRvLW1lcmdpbmcgJXMiCittc2dzdHIgIuiHquWLleWQiOS9tSAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJFcnJvcjogUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCAlczsgd3JpdGluZyB0byAlcyBpbnN0ZWFkLiIKK21zZ3N0ciAi6Yyv6Kqk77ya5ouS57WV6YG65aSx5pyq6L+96Lmk5qqU5qGIICclcyfvvIzogIzmmK/lr6vlhaUgJXPjgIIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyBsZWZ0ICIKKyJpbiB0cmVlLiIKK21zZ3N0ciAiIgorIuihneeqge+8iCUxJHMv5Yiq6Zmk77yJ77yaJTIkcyDlnKggJTMkcyDkuK3ooqvliKrpmaTvvIzlnKggJTUkcyDkuK3ooqsgJTQkc+OAgiU3JHMg55qEICU2JHMg54mIIgorIuacrOiiq+S/neeVmeOAgiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTQ3OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ09ORkxJQ1QgKCVzL2RlbGV0ZSk6ICVzIGRlbGV0ZWQgaW4gJXMgYW5kICVzIHRvICVzIGluICVzLiBWZXJzaW9uICVzIG9mICVzICIKKyJsZWZ0IGluIHRyZWUuIgorbXNnc3RyICIiCisi6KGd56qB77yIJTEkcy/liKrpmaTvvInvvJolMiRzIOWcqCAlMyRzIOS4reiiq+WIqumZpO+8jOWcqCAlNiRzIOS4reeahCAlNSRzIOiiqyAlNCRz44CCJTgkcyDnmoQgIgorIiU3JHMg54mI5pys6KKr5L+d55WZ44CCIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNDg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoJXMvZGVsZXRlKTogJXMgZGVsZXRlZCBpbiAlcyBhbmQgJXMgaW4gJXMuIFZlcnNpb24gJXMgb2YgJXMgbGVmdCAiCisiaW4gdHJlZSBhdCAlcy4iCittc2dzdHIgIiIKKyLooZ3nqoHvvIglMSRzL+WIqumZpO+8ie+8miUyJHMg5ZyoICUzJHMg5Lit6KKr5Yiq6Zmk77yM5ZyoICU1JHMg5Lit6KKrICU0JHPjgIIlNyRzIOeahCAlNiRzIOeJiCIKKyLmnKzkv53nlZnlnKggJTgkcyDkuK3jgIIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE0OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUICglcy9kZWxldGUpOiAlcyBkZWxldGVkIGluICVzIGFuZCAlcyB0byAlcyBpbiAlcy4gVmVyc2lvbiAlcyBvZiAlcyAiCisibGVmdCBpbiB0cmVlIGF0ICVzLiIKK21zZ3N0ciAiIgorIuihneeqge+8iCUxJHMv5Yiq6Zmk77yJ77yaJTIkcyDlnKggJTMkcyDkuK3ooqvliKrpmaTvvIzlnKggJTYkcyDkuK3nmoQgJTUkcyDooqsgJTQkc+OAgiU4JHMg55qEICIKKyIlNyRzIOeJiOacrOS/neeVmeWcqCAlOSRzIOS4reOAgiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTUyNgorbXNnaWQgInJlbmFtZSIKK21zZ3N0ciAi6YeN5paw5ZG95ZCNIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTI2Cittc2dpZCAicmVuYW1lZCIKK21zZ3N0ciAi6YeN5paw5ZG95ZCNIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTc3IG1lcmdlLXJlY3Vyc2l2ZS5jOjI0NzIgbWVyZ2UtcmVjdXJzaXZlLmM6MzExNworIywgYy1mb3JtYXQKK21zZ2lkICJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgJXMiCittc2dzdHIgIuaLkue1lemBuuWksemrkuaqlOahiCAnJXMnIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlZnVzaW5nIHRvIGxvc2UgdW50cmFja2VkIGZpbGUgYXQgJXMsIGV2ZW4gdGhvdWdoIGl0J3MgaW4gdGhlIHdheS4iCittc2dzdHIgIuaLkue1leWcqCAnJXMnIOiZleWkseWOu+acqui/vei5pOaqlOahiO+8jOWNs+S9v+Wug+WtmOWcqOaWvOmHjeaWsOWRveWQjeS4reOAgiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJDT05GTElDVCAocmVuYW1lL2FkZCk6IFJlbmFtZSAlcy0+JXMgaW4gJXMuICBBZGRlZCAlcyBpbiAlcyIKK21zZ3N0ciAiIgorIuihneeqge+8iOmHjeaWsOWRveWQjS/mlrDlop7vvInvvJrlnKggJTMkcyDkuK3ph43mlrDlkb3lkI0gJTEkcy0+JTIkc+OAguWcqCAlNSRzIOS4reaWsOWiniAlNCRzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoxNjc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIGEgZGlyZWN0b3J5IGluICVzIGFkZGluZyBhcyAlcyBpbnN0ZWFkIgorbXNnc3RyICIlcyDmmK8gJXMg5Lit55qE5LiA5YCL55uu6YyE6ICM5beyICVzIOeCuuWQjeiiq+aWsOWiniIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTY4MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICVzOyBhZGRpbmcgYXMgJXMgaW5zdGVhZCIKK21zZ3N0ciAi5ouS57WV6YG65aSx5pyq6L+96Lmk5qqU5qGIICclcyfvvIzogIzmmK/mlrDlop7ngrogJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKTogUmVuYW1lIFwiJXNcIi0+XCIlc1wiIGluIGJyYW5jaCBcIiVzXCIgcmVuYW1lIFwiJXMiCisiXCItPlwiJXNcIiBpbiBcIiVzXCIlcyIKK21zZ3N0ciAiIgorIuihneeqge+8iOmHjeaWsOWRveWQjS/ph43mlrDlkb3lkI3vvInvvJrlnKjliIbmlK8gXCIlMyRzXCIg5Lit6YeN5paw5ZG95ZCNIFwiJTEkc1wiLT5cIiUyJHNcIu+8jOWcqCIKKyLliIbmlK8gXCIlNiRzXCIg5Lit6YeN5paw5ZG95ZCNIFwiJTQkc1wiLT5cIiU1JHNcIiU3JHMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjE3MTMKK21zZ2lkICIgKGxlZnQgdW5yZXNvbHZlZCkiCittc2dzdHIgIu+8iOeVmeS4i+acquino+axuu+8iSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MTc5MworIywgYy1mb3JtYXQKK21zZ2lkICJDT05GTElDVCAocmVuYW1lL3JlbmFtZSk6IFJlbmFtZSAlcy0+JXMgaW4gJXMuIFJlbmFtZSAlcy0+JXMgaW4gJXMiCittc2dzdHIgIiIKKyLooZ3nqoHvvIjph43mlrDlkb3lkI0v6YeN5paw5ZG95ZCN77yJ77ya5ZyoICUzJHMg5Lit6YeN5paw5ZG95ZCNICUxJHMtPiUyJHPvvIzlnKggJTYkcyDkuK3ph43mlrDlkb3lkI0gIgorIiU0JHMtPiU1JHMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChkaXJlY3RvcnkgcmVuYW1lIHNwbGl0KTogVW5jbGVhciB3aGVyZSB0byBwbGFjZSAlcyBiZWNhdXNlICIKKyJkaXJlY3RvcnkgJXMgd2FzIHJlbmFtZWQgdG8gbXVsdGlwbGUgb3RoZXIgZGlyZWN0b3JpZXMsIHdpdGggbm8gZGVzdGluYXRpb24gIgorImdldHRpbmcgYSBtYWpvcml0eSBvZiB0aGUgZmlsZXMuIgorbXNnc3RyICIiCisi6KGd56qB77yI5YiG5Ymy55qE55uu6YyE6YeN5paw5ZG95ZCN77yJ77ya5LiN5riF5qWaICVzIOaHieipsuaUvuWcqOWTquijoe+8jOWboOeCuuebrumMhCAlcyDooqvph43mlrDlkb3lkI3liLAiCisi5aSa5YCL5YW25a6D55uu6YyE77yM5rKS5pyJ55uu6YyE5YyF5ZCr5aSn6YOo5YiG5qqU5qGI44CCIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMDg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoaW1wbGljaXQgZGlyIHJlbmFtZSk6IEV4aXN0aW5nIGZpbGUvZGlyIGF0ICVzIGluIHRoZSB3YXkgb2YgIgorImltcGxpY2l0IGRpcmVjdG9yeSByZW5hbWUocykgcHV0dGluZyB0aGUgZm9sbG93aW5nIHBhdGgocykgdGhlcmU6ICVzLiIKK21zZ3N0ciAiIgorIuihneeqge+8iOmaseW8j+ebrumMhOmHjeaWsOWRveWQje+8ie+8muiZleaWvOmaseW8j+ebrumMhOmHjeaWsOWRveWQjeeahOePvuWtmOaqlOahiC/nm67pjIQgJXPvvIzlsIfku6XkuIvot6/lvpEiCisi5pS+5Zyo77yaJXPjgIIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjIwOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNPTkZMSUNUIChpbXBsaWNpdCBkaXIgcmVuYW1lKTogQ2Fubm90IG1hcCBtb3JlIHRoYW4gb25lIHBhdGggdG8gJXM7ICIKKyJpbXBsaWNpdCBkaXJlY3RvcnkgcmVuYW1lcyB0cmllZCB0byBwdXQgdGhlc2UgcGF0aHMgdGhlcmU6ICVzIgorbXNnc3RyICIiCisi6KGd56qB77yI6Zqx5byP55uu6YyE6YeN5paw5ZG95ZCN77yJ77ya54Sh5rOV5pig5bCE5LiA5YCL5Lul5LiK6Lev5b6R5YiwICVz77yM6Zqx5byP55uu6YyE6YeN5paw5ZG95ZCN5ZiX6Kmm5bCH6YCZIgorIuS6m+i3r+W+keaUvue9ruaWvOatpO+8miVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzoyMTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAocmVuYW1lL3JlbmFtZSk6IFJlbmFtZSBkaXJlY3RvcnkgJXMtPiVzIGluICVzLiBSZW5hbWUgZGlyZWN0b3J5ICVzLSIKKyI+JXMgaW4gJXMiCittc2dzdHIgIiIKKyLooZ3nqoHvvIjph43mlrDlkb3lkI0v6YeN5paw5ZG95ZCN77yJ77ya5ZyoICUzJHMg5Lit6YeN5paw5ZG95ZCN55uu6YyEICUxJHMtPiUyJHPvvIzlnKggJTYkcyDkuK3ph43mlrAiCisi5ZG95ZCN55uu6YyEICU0JHMtPiU1JHMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldBUk5JTkc6IEF2b2lkaW5nIGFwcGx5aW5nICVzIC0+ICVzIHJlbmFtZSB0byAlcywgYmVjYXVzZSAlcyBpdHNlbGYgd2FzICIKKyJyZW5hbWVkLiIKK21zZ3N0ciAi6K2m5ZGK77ya6YG/5YWN5oeJ55SoICVzIC0+ICVzIOeahOmHjeaWsOWRveWQjeWIsCAlc++8jOWboOeCuiAlcyDmnKzouqvlt7Looqvph43mlrDlkb3lkI3jgIIiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgb2JqZWN0ICVzIgorbXNnc3RyICLkuI3og73oroDlj5bnianku7YgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjI5NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0ICVzIGlzIG5vdCBhIGJsb2IiCittc2dzdHIgIueJqeS7tiAlcyDkuI3mmK/kuIDlgIvos4fmlpnnianku7YiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwMjgKK21zZ2lkICJtb2RpZnkiCittc2dzdHIgIuS/ruaUuSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzAyOAorbXNnaWQgIm1vZGlmaWVkIgorbXNnc3RyICLkv67mlLkiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDAKK21zZ2lkICJjb250ZW50IgorbXNnc3RyICLlhaflrrkiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMwNDQKK21zZ2lkICJhZGQvYWRkIgorbXNnc3RyICLmlrDlop4v5paw5aKeIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDY3CisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXBwZWQgJXMgKG1lcmdlZCBzYW1lIGFzIGV4aXN0aW5nKSIKK21zZ3N0ciAi55Wl6YGOICVz77yI5bey57aT5YGa6YGO55u45ZCM5ZCI5L2177yJIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDg5IGdpdC1zdWJtb2R1bGUuc2g6MTAwMworbXNnaWQgInN1Ym1vZHVsZSIKK21zZ3N0ciAi5a2Q5qih57WEIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUICglcyk6IE1lcmdlIGNvbmZsaWN0IGluICVzIgorbXNnc3RyICLooZ3nqoHvvIglc++8ie+8muWQiOS9teihneeqgeaWvCAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzEyMAorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgYXMgJXMgaW5zdGVhZCIKK21zZ3N0ciAi6ICM5piv5LulICVzIOeCuuWQjeaWsOWiniIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGF0aCB1cGRhdGVkOiAlcyBhZGRlZCBpbiAlcyBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCBpbiAlczsgIgorIm1vdmluZyBpdCB0byAlcy4iCittc2dzdHIgIiIKKyLot6/lvpHlt7Lmm7TmlrDvvJolcyDmlrDlop7liLAgJXPvvIzkvY3mlrzkuIDlgIvooqvph43mlrDlkb3lkI3liLAgJXMg55qE55uu6YyE5Lit77yM5bCH5YW256e75YuV5YiwICVz44CCIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoZmlsZSBsb2NhdGlvbik6ICVzIGFkZGVkIGluICVzIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0IHdhcyByZW5hbWVkICIKKyJpbiAlcywgc3VnZ2VzdGluZyBpdCBzaG91bGQgcGVyaGFwcyBiZSBtb3ZlZCB0byAlcy4iCittc2dzdHIgIiIKKyLooZ3nqoHvvIjmqpTmoYjkvY3nva7vvInvvJolcyDmlrDlop7liLAgJXPvvIzkvY3mlrzkuIDlgIvooqvph43mlrDlkb3lkI3ngrogJXMg55qE55uu6YyE5Lit77yM5bu66K2w5bCH5YW256e7IgorIuWLleWIsCAlc+OAgiIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzIxMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGF0aCB1cGRhdGVkOiAlcyByZW5hbWVkIHRvICVzIGluICVzLCBpbnNpZGUgYSBkaXJlY3RvcnkgdGhhdCB3YXMgcmVuYW1lZCBpbiAiCisiJXM7IG1vdmluZyBpdCB0byAlcy4iCittc2dzdHIgIiIKKyLot6/lvpHlt7Lmm7TmlrDvvJolMSRzIOmHjeaWsOWRveWQjeeCuiAlMyRzIOS4reeahCAlMiRz77yM6ICM6Kmy55uu6YyE6KKr6YeN5paw5ZG95ZCN5YiwICU0JHMg5Lit77yM5bCHIgorIuWFtuenu+WLleWIsCAlNSRz44CCIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDT05GTElDVCAoZmlsZSBsb2NhdGlvbik6ICVzIHJlbmFtZWQgdG8gJXMgaW4gJXMsIGluc2lkZSBhIGRpcmVjdG9yeSB0aGF0ICIKKyJ3YXMgcmVuYW1lZCBpbiAlcywgc3VnZ2VzdGluZyBpdCBzaG91bGQgcGVyaGFwcyBiZSBtb3ZlZCB0byAlcy4iCittc2dzdHIgIiIKKyLooZ3nqoHvvIjmqpTmoYjkvY3nva7vvInvvJolMSRzIOmHjeaWsOWRveWQjeeCuiAlMyRzIOS4reeahCAlMiRz77yM6ICM6Kmy55uu6YyE6KKr6YeN5paw5ZG95ZCN5YiwICU0JHMgIgorIuS4re+8jOW7uuitsOWwh+WFtuenu+WLleWIsCAlNSRz44CCIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzI3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIgorbXNnc3RyICLliKrpmaQgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNTAKK21zZ2lkICJmaWxlL2RpcmVjdG9yeSIKK21zZ3N0ciAi5qqU5qGIL+ebrumMhCIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzM1NQorbXNnaWQgImRpcmVjdG9yeS9maWxlIgorbXNnc3RyICLnm67pjIQv5qqU5qGIIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNPTkZMSUNUICglcyk6IFRoZXJlIGlzIGEgZGlyZWN0b3J5IHdpdGggbmFtZSAlcyBpbiAlcy4gQWRkaW5nICVzIGFzICVzIgorbXNnc3RyICLooZ3nqoHvvIglMSRz77yJ77ya5ZyoICUzJHMg5Lit5pyJ5LiA5YCL5ZCN54K6ICUyJHMg55qE55uu6YyE44CC5LulICU1JHMg54K65ZCN5paw5aKeICU0JHMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nICVzIgorbXNnc3RyICLmlrDlop4gJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjMzODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ09ORkxJQ1QgKGFkZC9hZGQpOiBNZXJnZSBjb25mbGljdCBpbiAlcyIKK21zZ3N0ciAi6KGd56qB77yIYWRkL2FkZO+8ie+8muWQiOS9teihneeqgeaWvCAlcyIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQyNAorbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZSEiCittc2dzdHIgIuW3sue2k+aYr+acgOaWsOeahO+8gSIKKworIzogbWVyZ2UtcmVjdXJzaXZlLmM6MzQzMworIywgYy1mb3JtYXQKK21zZ2lkICJtZXJnaW5nIG9mIHRyZWVzICVzIGFuZCAlcyBmYWlsZWQiCittc2dzdHIgIueEoeazleWQiOS9teaouSAlcyDlkowgJXMiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM1MzcKK21zZ2lkICJNZXJnaW5nOiIKK21zZ3N0ciAi5ZCI5L2177yaIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNTUwCisjLCBjLWZvcm1hdAorbXNnaWQgImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcjoiCittc2dpZF9wbHVyYWwgImZvdW5kICV1IGNvbW1vbiBhbmNlc3RvcnM6IgorbXNnc3RyWzBdICLnmbznj74gJXUg5YCL5YWx5ZCM56WW5YWI77yaIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNjAwCittc2dpZCAibWVyZ2UgcmV0dXJuZWQgbm8gY29tbWl0IgorbXNnc3RyICLlkIjkvbXmnKrov5Tlm57mj5DkuqQiCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlOlxuIgorIiAgJXMiCittc2dzdHIgIiIKKyLmgqjlsI3kuIvliJfmqpTmoYjnmoTmnKzmqZ/kv67mlLnlsIfooqvlkIjkvbXli5XkvZzopobok4vvvJpcbiIKKyIgICVzIgorCisjOiBtZXJnZS1yZWN1cnNpdmUuYzozNzU2CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJyIKK21zZ3N0ciAi5LiN6IO96Kej5p6Q54mp5Lu2ICclcyciCisKKyM6IG1lcmdlLXJlY3Vyc2l2ZS5jOjM3NzQgYnVpbHRpbi9tZXJnZS5jOjY5NyBidWlsdGluL21lcmdlLmM6ODc3Cittc2dpZCAiVW5hYmxlIHRvIHdyaXRlIGluZGV4LiIKK21zZ3N0ciAi5LiN6IO95a+r5YWl57Si5byV44CCIgorCisjOiBtaWR4LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGktcGFjay1pbmRleCBmaWxlICVzIGlzIHRvbyBzbWFsbCIKK21zZ3N0ciAi5aSa5YyF57Si5byV5qqU5qGIICVzIOWkquWwjyIKKworIzogbWlkeC5jOjg0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpLXBhY2staW5kZXggc2lnbmF0dXJlIDB4JTA4eCBkb2VzIG5vdCBtYXRjaCBzaWduYXR1cmUgMHglMDh4IgorbXNnc3RyICLlpJrljIXntKLlvJXnsL3lkI0gMHglMDh4IOWSjOewveWQjSAweCUwOHgg5LiN56ym5ZCIIgorCisjOiBtaWR4LmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGktcGFjay1pbmRleCB2ZXJzaW9uICVkIG5vdCByZWNvZ25pemVkIgorbXNnc3RyICJtdWx0aS1wYWNrLWluZGV4IOeJiOacrCAlZCDkuI3og73ooqvorZjliKUiCisKKyM6IG1pZHguYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICJoYXNoIHZlcnNpb24gJXUgZG9lcyBub3QgbWF0Y2giCittc2dzdHIgIuaVo+WIl+eJiOacrCAldSDkuI3nrKblkIgiCisKKyM6IG1pZHguYzoxMDgKK21zZ2lkICJpbnZhbGlkIGNodW5rIG9mZnNldCAodG9vIGxhcmdlKSIKK21zZ3N0ciAi54Sh5pWI55qE5Y2A5aGK5L2N56e777yI5aSq5aSn77yJIgorCisjOiBtaWR4LmM6MTMyCittc2dpZCAidGVybWluYXRpbmcgbXVsdGktcGFjay1pbmRleCBjaHVuayBpZCBhcHBlYXJzIGVhcmxpZXIgdGhhbiBleHBlY3RlZCIKK21zZ3N0ciAi57WC5q2i5aSa5YyF57Si5byV5Y2A5aGKIGlkIOWHuuePvuaZgumWk+aXqeaWvOmgkOacnyIKKworIzogbWlkeC5jOjE0NQorbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBwYWNrLW5hbWUgY2h1bmsiCittc2dzdHIgIuWkmuWMhee0ouW8lee8uuWwkeW/hemcgOeahOWMheWQjeWhiiIKKworIzogbWlkeC5jOjE0NworbXNnaWQgIm11bHRpLXBhY2staW5kZXggbWlzc2luZyByZXF1aXJlZCBPSUQgZmFub3V0IGNodW5rIgorbXNnc3RyICLlpJrljIXntKLlvJXnvLrlsJHlv4XpnIDnmoTnianku7YgSUQg5omH5Ye65aGKIgorCisjOiBtaWR4LmM6MTQ5Cittc2dpZCAibXVsdGktcGFjay1pbmRleCBtaXNzaW5nIHJlcXVpcmVkIE9JRCBsb29rdXAgY2h1bmsiCittc2dzdHIgIuWkmuWMhee0ouW8lee8uuWwkeW/hemcgOeahOeJqeS7tiBJRCDmn6XoqaLloYoiCisKKyM6IG1pZHguYzoxNTEKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IG1pc3NpbmcgcmVxdWlyZWQgb2JqZWN0IG9mZnNldHMgY2h1bmsiCittc2dzdHIgIuWkmuWMhee0ouW8lee8uuWwkeW/hemcgOeahOeJqeS7tuS9jeenu+WhiiIKKworIzogbWlkeC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aS1wYWNrLWluZGV4IHBhY2sgbmFtZXMgb3V0IG9mIG9yZGVyOiAnJXMnIGJlZm9yZSAnJXMnIgorbXNnc3RyICLlpJrljIXntKLlvJXljIXlkI3nhKHluo/vvJonJXMnIOWcqCAnJXMnIOS5i+WJjSIKKworIzogbWlkeC5jOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgcGFjay1pbnQtaWQ6ICV1ICgldSB0b3RhbCBwYWNrcykiCittc2dzdHIgIumMr+eahCBwYWNrLWludC1pZO+8miV177yI5YWx5pyJICV1IOWAi+WMhe+8iSIKKworIzogbWlkeC5jOjI2MAorbXNnaWQgIm11bHRpLXBhY2staW5kZXggc3RvcmVzIGEgNjQtYml0IG9mZnNldCwgYnV0IG9mZl90IGlzIHRvbyBzbWFsbCIKK21zZ3N0ciAi5aSa5YyF57Si5byV5YSy5a2Y5LiA5YCLNjTkvY3kvY3np7vvvIzkvYbmmK8gb2ZmX3Qg5aSq5bCPIgorCisjOiBtaWR4LmM6Mjg4Cittc2dpZCAiZXJyb3IgcHJlcGFyaW5nIHBhY2tmaWxlIGZyb20gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAi5b6e5aSa5YyF57Si5byV5rqW5YKZIHBhY2tmaWxlIOaZgueZvOeUn+mMr+iqpCIKKworIzogbWlkeC5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gYWRkIHBhY2tmaWxlICclcyciCittc2dzdHIgIuaWsOWiniBwYWNrZmlsZSAnJXMnIOWkseaVlyIKKworIzogbWlkeC5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrLWluZGV4ICclcyciCittc2dzdHIgIumWi+WVn+WMhee0ouW8lSAnJXMnIOWkseaVlyIKKworIzogbWlkeC5jOjUzOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbG9jYXRlIG9iamVjdCAlZCBpbiBwYWNrZmlsZSIKK21zZ3N0ciAi5ZyoIHBhY2tmaWxlIOS4reWumuS9jeeJqeS7tiAlZCDlpLHmlZciCisKKyM6IG1pZHguYzo4NDIKK21zZ2lkICJBZGRpbmcgcGFja2ZpbGVzIHRvIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIuato+WcqOaWsOWiniBwYWNrZmlsZSDoh7PlpJrljIXntKLlvJUiCisKKyM6IG1pZHguYzo4NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIG5vdCBzZWUgcGFjay1maWxlICVzIHRvIGRyb3AiCittc2dzdHIgIuaykuacieeci+WIsOimgeaNqOajhOeahOWMheaqlOahiCAlcyIKKworIzogbWlkeC5jOjk3MworbXNnaWQgIldyaXRpbmcgY2h1bmtzIHRvIG11bHRpLXBhY2staW5kZXgiCittc2dzdHIgIuWvq+WFpeWNgOWhiuiHs+WkmuWMhee0ouW8lSIKKworIzogbWlkeC5jOjEwNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsZWFyIG11bHRpLXBhY2staW5kZXggYXQgJXMiCittc2dzdHIgIua4heeQhuS9jeaWvCAlcyDnmoTlpJrljIXntKLlvJXlpLHmlZciCisKKyM6IG1pZHguYzoxMTA4Cittc2dpZCAiTG9va2luZyBmb3IgcmVmZXJlbmNlZCBwYWNrZmlsZXMiCittc2dzdHIgIuato+WcqOWwi+aJvuW8leeUqOeahCBwYWNrZmlsZSIKKworIzogbWlkeC5jOjExMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9pZCBmYW5vdXQgb3V0IG9mIG9yZGVyOiBmYW5vdXRbJWRdID0gJTxQUkl4MzI+ID4gJTxQUkl4MzI+ID0gZmFub3V0WyVkXSIKK21zZ3N0ciAi54mp5Lu2IElEIOaJh+WHuueEoeW6j++8mmZhbm91dFslZF0gPSAlPFBSSXgzMj4gPiAlPFBSSXgzMj4gPSBmYW5vdXRbJWRdIgorCisjOiBtaWR4LmM6MTEyOAorbXNnaWQgIlZlcmlmeWluZyBPSUQgb3JkZXIgaW4gbXVsdGktcGFjay1pbmRleCIKK21zZ3N0ciAi5q2j5Zyo6amX6K2J5aSa5YyF57Si5byV5Lit55qE54mp5Lu2IElEIOmghuW6jyIKKworIzogbWlkeC5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAib2lkIGxvb2t1cCBvdXQgb2Ygb3JkZXI6IG9pZFslZF0gPSAlcyA+PSAlcyA9IG9pZFslZF0iCittc2dzdHIgIueJqeS7tiBJRCDmn6XoqaLnhKHluo/vvJpvaWRbJWRdID0gJXMgPj0gJXMgPSBvaWRbJWRdIgorCisjOiBtaWR4LmM6MTE1NworbXNnaWQgIlNvcnRpbmcgb2JqZWN0cyBieSBwYWNrZmlsZSIKK21zZ3N0ciAi6YCP6YGOIHBhY2tmaWxlIOeCuueJqeS7tuaOkuW6jyIKKworIzogbWlkeC5jOjExNjQKK21zZ2lkICJWZXJpZnlpbmcgb2JqZWN0IG9mZnNldHMiCittc2dzdHIgIuato+WcqOmpl+itieeJqeS7tuS9jeenuyIKKworIzogbWlkeC5jOjExODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxvYWQgcGFjayBlbnRyeSBmb3Igb2lkWyVkXSA9ICVzIgorbXNnc3RyICLngrogb2lkWyVkXSA9ICVzIOi8ieWFpeWMheaineebruWkseaVlyIKKworIzogbWlkeC5jOjExODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxvYWQgcGFjay1pbmRleCBmb3IgcGFja2ZpbGUgJXMiCittc2dzdHIgIueCuiBwYWNrZmlsZSAlcyDovInlhaXljIXntKLlvJXlpLHmlZciCisKKyM6IG1pZHguYzoxMTk1CisjLCBjLWZvcm1hdAorbXNnaWQgImluY29ycmVjdCBvYmplY3Qgb2Zmc2V0IGZvciBvaWRbJWRdID0gJXM6ICU8UFJJeDY0PiAhPSAlPFBSSXg2ND4iCittc2dzdHIgIm9pZFslZF0gPSAlcyDpjK/oqqTnmoTnianku7bkvY3np7vvvJolPFBSSXg2ND4gIT0gJTxQUkl4NjQ+IgorCisjOiBtaWR4LmM6MTIyMAorbXNnaWQgIkNvdW50aW5nIHJlZmVyZW5jZWQgb2JqZWN0cyIKK21zZ3N0ciAi5q2j5Zyo6KiI566X5byV55So54mp5Lu2IgorCisjOiBtaWR4LmM6MTIzMAorbXNnaWQgIkZpbmRpbmcgYW5kIGRlbGV0aW5nIHVucmVmZXJlbmNlZCBwYWNrZmlsZXMiCittc2dzdHIgIuato+WcqOWwi+aJvuS4puWIqumZpOaykuacieWPg+iAg+eahCBwYWNrZmlsZSIKKworIzogbWlkeC5jOjEzODgKK21zZ2lkICJjb3VsZCBub3Qgc3RhcnQgcGFjay1vYmplY3RzIgorbXNnc3RyICLkuI3og73plovlp4sgcGFjay1vYmplY3RzIgorCisjOiBtaWR4LmM6MTQwNworbXNnaWQgImNvdWxkIG5vdCBmaW5pc2ggcGFjay1vYmplY3RzIgorbXNnc3RyICLkuI3og73ntZDmnZ8gcGFjay1vYmplY3RzIgorCisjOiBuYW1lLWhhc2guYzo1MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBsYXp5X2RpciB0aHJlYWQ6ICVzIgorbXNnc3RyICLkuI3og73lu7rnq4sgbGF6eV9kaXIg5Z+36KGM57eS77yaJXMiCisKKyM6IG5hbWUtaGFzaC5jOjU1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGxhenlfbmFtZSB0aHJlYWQ6ICVzIgorbXNnc3RyICLkuI3og73lu7rnq4sgbGF6eV9uYW1lIOWft+ihjOe3ku+8miVzIgorCisjOiBuYW1lLWhhc2guYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGpvaW4gbGF6eV9uYW1lIHRocmVhZDogJXMiCittc2dzdHIgIuS4jeiDveWKoOWFpSBsYXN5X25hbWUg5Z+36KGM57eS77yaJXMiCisKKyM6IG5vdGVzLW1lcmdlLmM6Mjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgaGF2ZSBub3QgY29uY2x1ZGVkIHlvdXIgcHJldmlvdXMgbm90ZXMgbWVyZ2UgKCVzIGV4aXN0cykuXG4iCisiUGxlYXNlLCB1c2UgJ2dpdCBub3RlcyBtZXJnZSAtLWNvbW1pdCcgb3IgJ2dpdCBub3RlcyBtZXJnZSAtLWFib3J0JyB0byAiCisiY29tbWl0L2Fib3J0IHRoZSBwcmV2aW91cyBtZXJnZSBiZWZvcmUgeW91IHN0YXJ0IGEgbmV3IG5vdGVzIG1lcmdlLiIKK21zZ3N0ciAiIgorIuaCqOeahOWJjeS4gOasoeWCmeiou+WQiOS9teWwmuacque1kOadn++8iOWtmOWcqCAlc++8ieOAglxuIgorIuWcqOmWi+Wni+S4gOWAi+aWsOeahOWCmeiou+WQiOS9teS5i+WJje+8jOiri+S9v+eUqCAnZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0JyDmiJbogIUgJ2dpdCAiCisibm90ZXMgbWVyZ2UgLS1hYm9ydCcg5L6G5o+Q5LqkL+e1guatouWJjeS4gOasoeWQiOS9teOAgiIKKworIzogbm90ZXMtbWVyZ2UuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG5vdGVzIG1lcmdlICglcyBleGlzdHMpLiIKK21zZ3N0ciAi5oKo5bCa5pyq57WQ5p2f5YKZ6Ki75ZCI5L2177yI5a2Y5ZyoICVz77yJ44CCIgorCisjOiBub3Rlcy11dGlscy5jOjQ2Cittc2dpZCAiQ2Fubm90IGNvbW1pdCB1bmluaXRpYWxpemVkL3VucmVmZXJlbmNlZCBub3RlcyB0cmVlIgorbXNnc3RyICLkuI3og73mj5DkuqTmnKrliJ3lp4vljJYv5pyq5byV55So55qE6Ki76Kej5qi5IgorCisjOiBub3Rlcy11dGlscy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJCYWQgbm90ZXMucmV3cml0ZU1vZGUgdmFsdWU6ICclcyciCittc2dzdHIgIuWjnueahCBub3Rlcy5yZXdyaXRlTW9kZSDlgLzvvJonJXMnIgorCisjOiBub3Rlcy11dGlscy5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJSZWZ1c2luZyB0byByZXdyaXRlIG5vdGVzIGluICVzIChvdXRzaWRlIG9mIHJlZnMvbm90ZXMvKSIKK21zZ3N0ciAi5ouS57WV5ZCRICVz77yI5ZyoIHJlZnMvbm90ZXMvIOS5i+Wklu+8ieWvq+WFpeiou+inoyIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBmaXJzdCAlcyBpcyB0aGUgbmFtZSBvZgorIy4gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlLCB0aGUgc2Vjb25kICVzIGlzCisjLiBpdHMgdmFsdWUuCisjLgorIzogbm90ZXMtdXRpbHMuYzoxNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQmFkICVzIHZhbHVlOiAnJXMnIgorbXNnc3RyICLlo57nmoQgJXMg5YC877yaJyVzJyIKKworIzogb2JqZWN0LmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBvYmplY3QgdHlwZSBcIiVzXCIiCittc2dzdHIgIueEoeaViOeahOeJqeS7tumhnuWeiyBcIiVzXCIiCisKKyM6IG9iamVjdC5jOjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgJXMgaXMgYSAlcywgbm90IGEgJXMiCittc2dzdHIgIueJqeS7tiAlcyDmmK/kuIDlgIsgJXPvvIzkuI3mmK/kuIDlgIsgJXMiCisKKyM6IG9iamVjdC5jOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgJXMgaGFzIHVua25vd24gdHlwZSBpZCAlZCIKK21zZ3N0ciAi54mp5Lu2ICVzIOacieacquefpeeahOmhnuWeiyBpZCAlZCIKKworIzogb2JqZWN0LmM6MjQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBvYmplY3Q6ICVzIgorbXNnc3RyICLkuI3og73op6PmnpDnianku7bvvJolcyIKKworIzogb2JqZWN0LmM6MjY2IG9iamVjdC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJoYXNoIG1pc21hdGNoICVzIgorbXNnc3RyICLpm5zmuYrlgLzoiIcgJXMg5LiN56ym5ZCIIgorCisjOiBwYWNrZmlsZS5jOjYyOQorbXNnaWQgIm9mZnNldCBiZWZvcmUgZW5kIG9mIHBhY2tmaWxlIChicm9rZW4gLmlkeD8pIgorbXNnc3RyICLkvY3np7vph4/lnKggcGFja2ZpbGUg57WQ5p2f5LmL5YmN77yI5pCN5aOe55qEIC5pZHjvvJ/vvIkiCisKKyM6IHBhY2tmaWxlLmM6MTg5OQorIywgYy1mb3JtYXQKK21zZ2lkICJvZmZzZXQgYmVmb3JlIHN0YXJ0IG9mIHBhY2sgaW5kZXggZm9yICVzIChjb3JydXB0IGluZGV4PykiCittc2dzdHIgIuS9jeenu+mHj+WcqCAlcyDnmoTljIXntKLlvJXplovlp4vkuYvliY3vvIjmkI3lo57nmoTntKLlvJXvvJ/vvIkiCisKKyM6IHBhY2tmaWxlLmM6MTkwMworIywgYy1mb3JtYXQKK21zZ2lkICJvZmZzZXQgYmV5b25kIGVuZCBvZiBwYWNrIGluZGV4IGZvciAlcyAodHJ1bmNhdGVkIGluZGV4PykiCittc2dzdHIgIuS9jeenu+mHj+i2iumBjuS6hiAlcyDnmoTljIXntKLlvJXnmoTntZDlsL7vvIjooqvmiKrmlrfnmoTntKLlvJXvvJ/vvIkiCisKKyM6IHBhY2stYml0bWFwLmM6ODAwIHBhY2stYml0bWFwLmM6ODA2IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IHNpemUgb2YgJXMiCittc2dzdHIgIuS4jeiDveW+l+WIsCAlcyDnmoTlpKflsI8iCisKKyM6IHBhcnNlLW9wdGlvbnMuYzozOAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZXF1aXJlcyBhIHZhbHVlIgorbXNnc3RyICIlcyDpnIDopoHkuIDlgIvlgLwiCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBpbmNvbXBhdGlibGUgd2l0aCAlcyIKK21zZ3N0ciAiJXMg6IiHICVzIOS4jeebuOWuuSIKKworIzogcGFyc2Utb3B0aW9ucy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIDogaW5jb21wYXRpYmxlIHdpdGggc29tZXRoaW5nIGVsc2UiCittc2dzdHIgIiVz77ya5ZKM5YW25a6D55qE5LiN55u45a65IgorCisjOiBwYXJzZS1vcHRpb25zLmM6OTIgcGFyc2Utb3B0aW9ucy5jOjk2IHBhcnNlLW9wdGlvbnMuYzozMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdGFrZXMgbm8gdmFsdWUiCittc2dzdHIgIiVzIOS4jeWPluWAvCIKKworIzogcGFyc2Utb3B0aW9ucy5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzbid0IGF2YWlsYWJsZSIKK21zZ3N0ciAiJXMg5LiN5Y+v55SoIgorCisjOiBwYXJzZS1vcHRpb25zLmM6MjE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4cGVjdHMgYSBub24tbmVnYXRpdmUgaW50ZWdlciB2YWx1ZSB3aXRoIGFuIG9wdGlvbmFsIGsvbS9nIHN1ZmZpeCIKK21zZ3N0ciAiJXMg5pyf5pyb5LiA5YCL6Z2e6LKg5pW05pW45ZKM5LiA5YCL5Y+v6YG455qEIGsvbS9nIOW+jOe2tCIKKworIzogcGFyc2Utb3B0aW9ucy5jOjM4NgorIywgYy1mb3JtYXQKK21zZ2lkICJhbWJpZ3VvdXMgb3B0aW9uOiAlcyAoY291bGQgYmUgLS0lcyVzIG9yIC0tJXMlcykiCittc2dzdHIgIuacieatp+e+qeeahOmBuOmghe+8miVz77yI5Y+v5Lul5pivIC0tJXMlcyDmiJYgLS0lcyVz77yJIgorCisjOiBwYXJzZS1vcHRpb25zLmM6NDIwIHBhcnNlLW9wdGlvbnMuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlkIHlvdSBtZWFuIGAtLSVzYCAod2l0aCB0d28gZGFzaGVzKT8iCittc2dzdHIgIuS9oOeahOaEj+aAneaYryBgLS0lc2DvvIjmnInlhanlgIvnn63nt5rvvInll47vvJ8iCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAi5pyq55+l6YG46aCFIGAlcyciCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBzd2l0Y2ggYCVjJyIKK21zZ3N0ciAi5pyq55+l6ZaL6ZecIGAlYyciCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBub24tYXNjaWkgb3B0aW9uIGluIHN0cmluZzogYCVzJyIKK21zZ3N0ciAi5a2X5Liy5Lit5pyq55+l55qE6Z2eIGFzY2lpIOWtl+WFg+mBuOmghe+8mmAlcyciCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo4ODUKK21zZ2lkICIuLi4iCittc2dzdHIgIi4uLiIKKworIzogcGFyc2Utb3B0aW9ucy5jOjkwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2FnZTogJXMiCittc2dzdHIgIueUqOazle+8miVzIgorCisjLiBUUkFOU0xBVE9SUzogdGhlIGNvbG9uIGhlcmUgc2hvdWxkIGFsaWduIHdpdGggdGhlCisjLiBvbmUgaW4gInVzYWdlOiAlcyIgdHJhbnNsYXRpb24uCisjLgorIzogcGFyc2Utb3B0aW9ucy5jOjkxMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICBvcjogJXMiCittc2dzdHIgIiAg5oiW77yaJXMiCisKKyMgIOitr+iAhe+8mueCuuS/neitieWcqOi8uOWHuuS4reWwjem9iu+8jOazqOaEj+iqv+aVtOWPpeS4reepuuagvO+8gQorIzogcGFyc2Utb3B0aW9ucy5jOjkxMworIywgYy1mb3JtYXQKK21zZ2lkICIgICAgJXMiCittc2dzdHIgIiAgICAlcyIKKworIzogcGFyc2Utb3B0aW9ucy5jOjk1MgorbXNnaWQgIi1OVU0iCittc2dzdHIgIi3mlbjlrZciCisKKyM6IHBhcnNlLW9wdGlvbnMuYzo5NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWxpYXMgb2YgLS0lcyIKK21zZ3N0ciAiLS0lcyDnmoTliKXlkI0iCisKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzoyMCBwYXJzZS1vcHRpb25zLWNiLmM6MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKK21zZ3N0ciAi6YG46aCFIGAlcycg5pyf5pyb5LiA5YCL5pW45a2X5YC8IgorCisjOiBwYXJzZS1vcHRpb25zLWNiLmM6NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIGV4cGlyYXRpb24gZGF0ZSAnJXMnIgorbXNnc3RyICLmoLzlvI/pjK/oqqTnmoTliLDmnJ/mmYLplpPvvJonJXMnIgorCisjOiBwYXJzZS1vcHRpb25zLWNiLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBcImFsd2F5c1wiLCBcImF1dG9cIiwgb3IgXCJuZXZlclwiIgorbXNnc3RyICLpgbjpoIUgYCVzJyDmnJ/mnJsgXCJhbHdheXNcIuOAgVwiYXV0b1wiIOaIliBcIm5ldmVyXCIiCisKKyM6IHBhcnNlLW9wdGlvbnMtY2IuYzoxMzAgcGFyc2Utb3B0aW9ucy1jYi5jOjE0NworIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IG5hbWUgJyVzJyIKK21zZ3N0ciAi5qC85byP6Yyv6Kqk55qE54mp5Lu25ZCNICclcyciCisKKyM6IHBhdGguYzo5MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IG1ha2UgJXMgd3JpdGFibGUgYnkgZ3JvdXAiCittc2dzdHIgIuS4jeiDveioreWumiAlcyDngrrntYTlj6/lr6siCisKKyM6IHBhdGhzcGVjLmM6MTMwCittc2dpZCAiRXNjYXBlIGNoYXJhY3RlciAnXFwnIG5vdCBhbGxvd2VkIGFzIGxhc3QgY2hhcmFjdGVyIGluIGF0dHIgdmFsdWUiCittc2dzdHIgIui3s+iEq+Wtl+WFgyAnXFwnIOS4jeiDveS9nOeCuuWxrOaAp+WAvOeahOacgOW+jOS4gOWAi+Wtl+WFgyIKKworIzogcGF0aHNwZWMuYzoxNDgKK21zZ2lkICJPbmx5IG9uZSAnYXR0cjonIHNwZWNpZmljYXRpb24gaXMgYWxsb3dlZC4iCittc2dzdHIgIuWPquWFgeioseS4gOWAiyAnYXR0cjonIOimj+agvOOAgiIKKworIzogcGF0aHNwZWMuYzoxNTEKK21zZ2lkICJhdHRyIHNwZWMgbXVzdCBub3QgYmUgZW1wdHkiCittc2dzdHIgIuWxrOaAp+imj+agvOS4jeiDveeCuuepuiIKKworIzogcGF0aHNwZWMuYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBhdHRyaWJ1dGUgbmFtZSAlcyIKK21zZ3N0ciAi54Sh5pWI55qE5bGs5oCn5ZCNICVzIgorCisjOiBwYXRoc3BlYy5jOjI1OQorbXNnaWQgImdsb2JhbCAnZ2xvYicgYW5kICdub2dsb2InIHBhdGhzcGVjIHNldHRpbmdzIGFyZSBpbmNvbXBhdGlibGUiCittc2dzdHIgIuWFqOWfn+eahCAnZ2xvYicg5ZKMICdub2dsb2InIOi3r+W+keimj+agvOioreWumuS4jeebuOWuuSIKKworIzogcGF0aHNwZWMuYzoyNjYKK21zZ2lkICIiCisiZ2xvYmFsICdsaXRlcmFsJyBwYXRoc3BlYyBzZXR0aW5nIGlzIGluY29tcGF0aWJsZSB3aXRoIGFsbCBvdGhlciBnbG9iYWwgIgorInBhdGhzcGVjIHNldHRpbmdzIgorbXNnc3RyICLlhajln5/nmoQgJ2xpdGVyYWwnIOi3r+W+keimj+agvOioreWumuWSjOWFtuWug+eahOWFqOWfn+i3r+W+keimj+agvOioreWumuS4jeebuOWuuSIKKworIzogcGF0aHNwZWMuYzozMDYKK21zZ2lkICJpbnZhbGlkIHBhcmFtZXRlciBmb3IgcGF0aHNwZWMgbWFnaWMgJ3ByZWZpeCciCittc2dzdHIgIui3r+W+keimj+agvOWMheWQq+eEoeaViOeahOelnuWlh+WJjee2tCIKKworIzogcGF0aHNwZWMuYzozMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBwYXRoc3BlYyBtYWdpYyAnJS4qcycgaW4gJyVzJyIKK21zZ3N0ciAi5Zyo6Lev5b6R6KaP5qC8ICclMyRzJyDkuK3nhKHmlYjnmoTnpZ7lpYfliY3ntrQgJyUyJC4qMSRzJyIKKworIzogcGF0aHNwZWMuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWlzc2luZyAnKScgYXQgdGhlIGVuZCBvZiBwYXRoc3BlYyBtYWdpYyBpbiAnJXMnIgorbXNnc3RyICLot6/lvpHopo/moLwgJyVzJyDnmoTnpZ7lpYfliY3ntrTntZDlsL7lsJHkuobkuIDlgIsgJyknIgorCisjOiBwYXRoc3BlYy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJVbmltcGxlbWVudGVkIHBhdGhzcGVjIG1hZ2ljICclYycgaW4gJyVzJyIKK21zZ3N0ciAi6Lev5b6R6KaP5qC8ICclMiRzJyDkuK3ljIXlkKvmnKrlr6bnj77nmoTnpZ7lpYfliY3ntrQgJyUxJGMnIgorCisjOiBwYXRoc3BlYy5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogJ2xpdGVyYWwnIGFuZCAnZ2xvYicgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiJXPvvJonbGl0ZXJhbCcg5ZKMICdnbG9iJyDkuI3nm7jlrrkiCisKKyM6IHBhdGhzcGVjLmM6NDQyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiAnJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSBhdCAnJXMnIgorbXNnc3RyICIlc++8miclcycg5Zyo5L2N5pa8ICclcycg55qE54mI5pys5bqr5LmL5aSWIgorCisjOiBwYXRoc3BlYy5jOjUxNworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIChtbmVtb25pYzogJyVjJykiCittc2dzdHIgIiclcyfvvIjliqnoqJjnrKbvvJonJWMn77yJIgorCisjOiBwYXRoc3BlYy5jOjUyNworIywgYy1mb3JtYXQKK21zZ2lkICIlczogcGF0aHNwZWMgbWFnaWMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvbW1hbmQ6ICVzIgorbXNnc3RyICIlc++8mui3r+W+keimj+agvOelnuWlh+WJjee2tOS4jeiiq+atpOaMh+S7pOaUr+aPtO+8miVzIgorCisjOiBwYXRoc3BlYy5jOjU5NAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoc3BlYyAnJXMnIGlzIGJleW9uZCBhIHN5bWJvbGljIGxpbmsiCittc2dzdHIgIui3r+W+keimj+agvCAnJXMnIOS9jeaWvOespuiZn+mAo+e1kOS4rSIKKworIzogcGF0aHNwZWMuYzo2MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBpcyBiYWRseSBxdW90ZWQ6ICVzIgorbXNnc3RyICLmn5DooYzkuI3mh4noqbLooqvmi6zomZ/mi6zkvY/vvJolcyIKKworIzogcGt0LWxpbmUuYzo5MgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmbHVzaCBwYWNrZXQiCittc2dzdHIgIueEoeazleWvqyBmbHVzaCDljIUiCisKKyM6IHBrdC1saW5lLmM6OTkKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZGVsaW0gcGFja2V0IgorbXNnc3RyICLnhKHms5Xlr6sgZGVsaW0g5YyFIgorCisjOiBwa3QtbGluZS5jOjEwNgorbXNnaWQgImZsdXNoIHBhY2tldCB3cml0ZSBmYWlsZWQiCittc2dzdHIgImZsdXNoIOWMheWvq+mMr+iqpCIKKworIzogcGt0LWxpbmUuYzoxNDYgcGt0LWxpbmUuYzoyMzIKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogaW1wb3NzaWJseSBsb25nIGxpbmUiCittc2dzdHIgIuWNlOWumumMr+iqpO+8muS4jeWPr+iDveeahOmVt+ihjCIKKworIzogcGt0LWxpbmUuYzoxNjIgcGt0LWxpbmUuYzoxNjQKK21zZ2lkICJwYWNrZXQgd3JpdGUgd2l0aCBmb3JtYXQgZmFpbGVkIgorbXNnc3RyICLmoLzlvI/ljJbljIXlr6vlhaXpjK/oqqQiCisKKyM6IHBrdC1saW5lLmM6MTk2Cittc2dpZCAicGFja2V0IHdyaXRlIGZhaWxlZCAtIGRhdGEgZXhjZWVkcyBtYXggcGFja2V0IHNpemUiCittc2dzdHIgIuWvq+WwgeWMheWkseaVl++8muizh+aWmei2hemBjuS6huWMheeahOacgOWkp+mVt+W6piIKKworIzogcGt0LWxpbmUuYzoyMDMgcGt0LWxpbmUuYzoyMTAKK21zZ2lkICJwYWNrZXQgd3JpdGUgZmFpbGVkIgorbXNnc3RyICLlsIHljIXlr6vlhaXlpLHmlZciCisKKyM6IHBrdC1saW5lLmM6Mjk1Cittc2dpZCAicmVhZCBlcnJvciIKK21zZ3N0ciAi6K6A5Y+W6Yyv6KqkIgorCisjOiBwa3QtbGluZS5jOjMwMworbXNnaWQgInRoZSByZW1vdGUgZW5kIGh1bmcgdXAgdW5leHBlY3RlZGx5IgorbXNnc3RyICLpgaDnq6/mhI/lpJbmjpvmlrfkuoYiCisKKyM6IHBrdC1saW5lLmM6MzMxCisjLCBjLWZvcm1hdAorbXNnaWQgInByb3RvY29sIGVycm9yOiBiYWQgbGluZSBsZW5ndGggY2hhcmFjdGVyOiAlLjRzIgorbXNnc3RyICLljZTlrprpjK/oqqTvvJrpjK/oqqTnmoTooYzplbfluqblrZfkuLLvvJolLjRzIgorCisjOiBwa3QtbGluZS5jOjM0MSBwa3QtbGluZS5jOjM0NgorIywgYy1mb3JtYXQKK21zZ2lkICJwcm90b2NvbCBlcnJvcjogYmFkIGxpbmUgbGVuZ3RoICVkIgorbXNnc3RyICLljZTlrprpjK/oqqTvvJrpjK/oqqTnmoTooYzplbfluqYgJWQiCisKKyM6IHBrdC1saW5lLmM6MzYyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW90ZSBlcnJvcjogJXMiCittc2dzdHIgIumBoOerr+mMr+iqpO+8miVzIgorCisjOiBwcmVsb2FkLWluZGV4LmM6MTE5Cittc2dpZCAiUmVmcmVzaGluZyBpbmRleCIKK21zZ3N0ciAi5q2j5Zyo6YeN5paw5pW055CG57Si5byVIgorCisjOiBwcmVsb2FkLWluZGV4LmM6MTM4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGhyZWFkZWQgbHN0YXQ6ICVzIgorbXNnc3RyICLnhKHms5Xlu7rnq4vln7fooYznt5IgbHN0YXTvvJolcyIKKworIzogcHJldHR5LmM6OTgxCittc2dpZCAidW5hYmxlIHRvIHBhcnNlIC0tcHJldHR5IGZvcm1hdCIKK21zZ3N0ciAi5LiN6IO96Kej5p6QIC0tcHJldHR5IOagvOW8jyIKKworIzogcHJvbWlzb3ItcmVtb3RlLmM6MjMKK21zZ2lkICJSZW1vdGUgd2l0aCBubyBVUkwiCittc2dzdHIgIumBoOerr+acquioreWumiBVUkwiCisKKyM6IHByb21pc29yLXJlbW90ZS5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInByb21pc29yIHJlbW90ZSBuYW1lIGNhbm5vdCBiZWdpbiB3aXRoICcvJzogJXMiCittc2dzdHIgInByb21pc29yIOmBoOerr+WQjeeoseS4jeiDveS7pSAnLycg6ZaL5aeL77yaJXMiCisKKyM6IHJhbmdlLWRpZmYuYzo3NQorbXNnaWQgImNvdWxkIG5vdCBzdGFydCBgbG9nYCIKK21zZ3N0ciAi5LiN6IO95ZWf5YuVIGBsb2dgIgorCisjOiByYW5nZS1kaWZmLmM6NzcKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBgbG9nYCBvdXRwdXQiCittc2dzdHIgIuS4jeiDveiugOWPliBgbG9nYCDnmoTovLjlh7oiCisKKyM6IHJhbmdlLWRpZmYuYzo5NiBzZXF1ZW5jZXIuYzo1MDIwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgJyVzJyIKK21zZ3N0ciAi5LiN6IO96Kej5p6Q5o+Q5LqkICclcyciCisKKyM6IHJhbmdlLWRpZmYuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGdpdCBoZWFkZXIgJyUuKnMnIgorbXNnc3RyICLnhKHms5Xop6PmnpAgZ2l0IOmgrSAnJS4qcyciCisKKyM6IHJhbmdlLWRpZmYuYzoyODUKK21zZ2lkICJmYWlsZWQgdG8gZ2VuZXJhdGUgZGlmZiIKK21zZ3N0ciAi55Sf5oiQIGRpZmYg5aSx5pWXIgorCisjOiByYW5nZS1kaWZmLmM6NTE4IHJhbmdlLWRpZmYuYzo1MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIGxvZyBmb3IgJyVzJyIKK21zZ3N0ciAi5LiN6IO96Kej5p6QICclcycg55qE5pel6KqMIgorCisjOiByZWFkLWNhY2hlLmM6NjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIndpbGwgbm90IGFkZCBmaWxlIGFsaWFzICclcycgKCclcycgYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgpIgorbXNnc3RyICLlsIfkuI3mnIPmlrDlop7mqpTmoYjliKXlkI0gJyVzJ++8iCclcycg5bey57aT5a2Y5Zyo5pa857Si5byV5Lit77yJIgorCisjOiByZWFkLWNhY2hlLmM6Njk2Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBhbiBlbXB0eSBibG9iIGluIHRoZSBvYmplY3QgZGF0YWJhc2UiCittc2dzdHIgIuS4jeiDveWcqOeJqeS7tuizh+aWmeW6q+S4reW7uueri+epuueahOizh+aWmeeJqeS7tiIKKworIzogcmVhZC1jYWNoZS5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2FuIG9ubHkgYWRkIHJlZ3VsYXIgZmlsZXMsIHN5bWJvbGljIGxpbmtzIG9yIGdpdC1kaXJlY3RvcmllcyIKK21zZ3N0ciAiJXPvvJrlj6rog73mlrDlop7kuIDoiKzmqpTmoYjjgIHnrKbomZ/pgKPntZDmiJYgZ2l0IOebrumMhCIKKworIzogcmVhZC1jYWNoZS5jOjcyMworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IGhhdmUgYSBjb21taXQgY2hlY2tlZCBvdXQiCittc2dzdHIgIiclcycg5rKS5pyJ57C95Ye65LiA5YCL5o+Q5LqkIgorCisjOiByZWFkLWNhY2hlLmM6Nzc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbmRleCBmaWxlICclcyciCittc2dzdHIgIueEoeazlee0ouW8leaqlOahiCAnJXMnIgorCisjOiByZWFkLWNhY2hlLmM6Nzk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhZGQgJyVzJyB0byBpbmRleCIKK21zZ3N0ciAi54Sh5rOV5Zyo57Si5byV5Lit5paw5aKeICclcyciCisKKyM6IHJlYWQtY2FjaGUuYzo4MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJyVzJyIKK21zZ3N0ciAi54Sh5rOV5bCNICVzIOWft+ihjCBzdGF0IgorCisjOiByZWFkLWNhY2hlLmM6MTMzMAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGFwcGVhcnMgYXMgYm90aCBhIGZpbGUgYW5kIGFzIGEgZGlyZWN0b3J5IgorbXNnc3RyICInJXMnIOeci+i1t+S+huaXouaYr+aqlOahiOWPiOaYr+ebrumMhCIKKworIzogcmVhZC1jYWNoZS5jOjE1MzYKK21zZ2lkICJSZWZyZXNoIGluZGV4IgorbXNnc3RyICLph43mlrDmlbTnkIbntKLlvJUiCisKKyM6IHJlYWQtY2FjaGUuYzoxNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbmRleC52ZXJzaW9uIHNldCwgYnV0IHRoZSB2YWx1ZSBpcyBpbnZhbGlkLlxuIgorIlVzaW5nIHZlcnNpb24gJWkiCittc2dzdHIgIiIKKyLoqK3lrprkuoYgaW5kZXgudmVyc2lvbu+8jOS9huaYr+WPluWAvOeEoeaViOOAglxuIgorIuS9v+eUqOeJiOacrCAlaSIKKworIzogcmVhZC1jYWNoZS5jOjE2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkdJVF9JTkRFWF9WRVJTSU9OIHNldCwgYnV0IHRoZSB2YWx1ZSBpcyBpbnZhbGlkLlxuIgorIlVzaW5nIHZlcnNpb24gJWkiCittc2dzdHIgIiIKKyLoqK3lrprkuoYgR0lUX0lOREVYX1ZFUlNJT07vvIzkvYbmmK/lj5blgLznhKHmlYjjgIJcbiIKKyLkvb/nlKjniYjmnKwgJWkiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzE3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaWduYXR1cmUgMHglMDh4IgorbXNnc3RyICLlo57nmoTnsL3lkI0gMHglMDh4IgorCisjOiByZWFkLWNhY2hlLmM6MTcyMAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgaW5kZXggdmVyc2lvbiAlZCIKK21zZ3N0ciAi5aOe55qE57Si5byV54mI5pysICVkIgorCisjOiByZWFkLWNhY2hlLmM6MTcyOQorbXNnaWQgImJhZCBpbmRleCBmaWxlIHNoYTEgc2lnbmF0dXJlIgorbXNnc3RyICLlo57nmoTntKLlvJXmqpTmoYggc2hhMSDnsL3lkI0iCisKKyM6IHJlYWQtY2FjaGUuYzoxNzU5CisjLCBjLWZvcm1hdAorbXNnaWQgImluZGV4IHVzZXMgJS40cyBleHRlbnNpb24sIHdoaWNoIHdlIGRvIG5vdCB1bmRlcnN0YW5kIgorbXNnc3RyICLntKLlvJXkvb/nlKjkuI3ooqvmlK/mj7TnmoQgJS40cyDmk7TlsZUiCisKKyMKKyM6IHJlYWQtY2FjaGUuYzoxNzYxCisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICUuNHMgZXh0ZW5zaW9uIgorbXNnc3RyICLlv73nlaUgJS40cyDmk7TlsZUiCisKKyM6IHJlYWQtY2FjaGUuYzoxNzk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gaW5kZXggZW50cnkgZm9ybWF0IDB4JTA4eCIKK21zZ3N0ciAi5pyq55+l55qE57Si5byV5qKd55uu5qC85byPIDB4JTA4eCIKKworIzogcmVhZC1jYWNoZS5jOjE4MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIG5hbWUgZmllbGQgaW4gdGhlIGluZGV4LCBuZWFyIHBhdGggJyVzJyIKK21zZ3N0ciAi57Si5byV5Lit6Z2g6L+R6Lev5b6RICclcycg5pyJ6Yyv6Kqk55qE5ZCN56ix5qyE5L2NIgorCisjOiByZWFkLWNhY2hlLmM6MTg3MQorbXNnaWQgInVub3JkZXJlZCBzdGFnZSBlbnRyaWVzIGluIGluZGV4IgorbXNnc3RyICLntKLlvJXkuK3mnInmnKrmjpLluo/nmoTmmqvlrZjmop3nm64iCisKKyM6IHJlYWQtY2FjaGUuYzoxODc0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YWdlIGVudHJpZXMgZm9yIG1lcmdlZCBmaWxlICclcyciCittc2dzdHIgIuWQiOS9teaqlOahiCAnJXMnIOacieWkmuWAi+aaq+WtmOaineebriIKKworIzogcmVhZC1jYWNoZS5jOjE4NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5vcmRlcmVkIHN0YWdlIGVudHJpZXMgZm9yICclcyciCittc2dzdHIgIiclcycg55qE5pyq5o6S5bqP5pqr5a2Y5qKd55uuIgorCisjOiByZWFkLWNhY2hlLmM6MTk4MyByZWFkLWNhY2hlLmM6MjI3MSByZXJlcmUuYzo1NjUgcmVyZXJlLmM6NTk5IHJlcmVyZS5jOjExMTEKKyM6IHN1Ym1vZHVsZS5jOjE2MTkgYnVpbHRpbi9hZGQuYzo1MzIgYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxODEKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NzAgYnVpbHRpbi9jaGVja291dC5jOjY1NiBidWlsdGluL2NsZWFuLmM6OTY3CisjOiBidWlsdGluL2NvbW1pdC5jOjM2NyBidWlsdGluL2RpZmYtdHJlZS5jOjEyMCBidWlsdGluL2dyZXAuYzo0ODUKKyM6IGJ1aWx0aW4vbXYuYzoxNDUgYnVpbHRpbi9yZXNldC5jOjI0NiBidWlsdGluL3JtLmM6MjkwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MzMyCittc2dpZCAiaW5kZXggZmlsZSBjb3JydXB0IgorbXNnc3RyICLntKLlvJXmqpTmoYjmkI3lo54iCisKKyM6IHJlYWQtY2FjaGUuYzoyMTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9jYWNoZV9lbnRyaWVzIHRocmVhZDogJXMiCittc2dzdHIgIueEoeazleW7uueriyBsb2FkX2NhY2hlX2VudHJpZXMg5Z+36KGM57eS77yaJXMiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTM3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBqb2luIGxvYWRfY2FjaGVfZW50cmllcyB0aHJlYWQ6ICVzIgorbXNnc3RyICLnhKHms5XliqDlhaUgbG9hZF9jYWNoZV9lbnRyaWVzIOWft+ihjOe3ku+8miVzIgorCisjOiByZWFkLWNhY2hlLmM6MjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW5kZXggZmlsZSBvcGVuIGZhaWxlZCIKK21zZ3N0ciAiJXPvvJrplovllZ/ntKLlvJXmqpTmoYjlpLHmlZciCisKKyM6IHJlYWQtY2FjaGUuYzoyMTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjYW5ub3Qgc3RhdCB0aGUgb3BlbiBpbmRleCIKK21zZ3N0ciAiJXPvvJrkuI3og73lsI3plovllZ/nmoTntKLlvJXln7fooYwgc3RhdCDli5XkvZwiCisKKyM6IHJlYWQtY2FjaGUuYzoyMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbmRleCBmaWxlIHNtYWxsZXIgdGhhbiBleHBlY3RlZCIKK21zZ3N0ciAiJXPvvJrntKLlvJXmqpTmoYjmr5TpoJDmnJ/nmoTlsI8iCisKKyM6IHJlYWQtY2FjaGUuYzoyMTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gbWFwIGluZGV4IGZpbGUiCittc2dzdHIgIiVz77ya54Sh5rOV5bCN57Si5byV5qqU5qGI5Z+36KGMIG1hcCDli5XkvZwiCisKKyM6IHJlYWQtY2FjaGUuYzoyMjI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbG9hZF9pbmRleF9leHRlbnNpb25zIHRocmVhZDogJXMiCittc2dzdHIgIueEoeazleW7uueriyBsb2FkX2luZGV4X2V4dGVuc2lvbnMg5Z+36KGM57eS77yaJXMiCisKKyM6IHJlYWQtY2FjaGUuYzoyMjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBqb2luIGxvYWRfaW5kZXhfZXh0ZW5zaW9ucyB0aHJlYWQ6ICVzIgorbXNnc3RyICLnhKHms5XliqDlhaUgbG9hZF9pbmRleF9leHRlbnNpb25zIOWft+ihjOe3ku+8miVzIgorCisjOiByZWFkLWNhY2hlLmM6MjI4MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZnJlc2hlbiBzaGFyZWQgaW5kZXggJyVzJyIKK21zZ3N0ciAi54Sh5rOV6YeN5paw5pW055CG5YWx5Lqr57Si5byVICclcyciCisKKyM6IHJlYWQtY2FjaGUuYzoyMzMwCisjLCBjLWZvcm1hdAorbXNnaWQgImJyb2tlbiBpbmRleCwgZXhwZWN0ICVzIGluICVzLCBnb3QgJXMiCittc2dzdHIgIuaQjeWjnueahOe0ouW8le+8jOacn+acm+WcqCAlMiRzIOS4reeahCAlMSRz77yM5b6X5YiwICUzJHMiCisKKyM6IHJlYWQtY2FjaGUuYzozMDI2IHN0cmJ1Zi5jOjExNjAgd3JhcHBlci5jOjYyMiBidWlsdGluL21lcmdlLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY2xvc2UgJyVzJyIKK21zZ3N0ciAi5LiN6IO96Zec6ZaJICclcyciCisKKyM6IHJlYWQtY2FjaGUuYzozMTI5IHNlcXVlbmNlci5jOjIzNDMgc2VxdWVuY2VyLmM6Mzk1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCAnJXMnIgorbXNnc3RyICLkuI3og73lsI0gJyVzJyDlkbzlj6sgc3RhdCIKKworIzogcmVhZC1jYWNoZS5jOjMxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZ2l0IGRpcjogJXMiCittc2dzdHIgIuS4jeiDvemWi+WVnyBnaXQg55uu6YyE77yaJXMiCisKKyM6IHJlYWQtY2FjaGUuYzozMTU0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bmxpbms6ICVzIgorbXNnc3RyICLnhKHms5XliKrpmaTvvJolcyIKKworIzogcmVhZC1jYWNoZS5jOjMxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpeCBwZXJtaXNzaW9uIGJpdHMgb24gJyVzJyIKK21zZ3N0ciAi5LiN6IO95L+u5b6pICclcycg55qE5qyK6ZmQ5L2NIgorCisjOiByZWFkLWNhY2hlLmM6MzMyOAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY2Fubm90IGRyb3AgdG8gc3RhZ2UgIzAiCittc2dzdHIgIiVz77ya5LiN6IO96JC95Yiw5pqr5a2Y5Y2AICMwIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMQorbXNnaWQgIiIKKyJZb3UgY2FuIGZpeCB0aGlzIHdpdGggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLSIKKyJjb250aW51ZScuXG4iCisiT3IgeW91IGNhbiBhYm9ydCB0aGUgcmViYXNlIHdpdGggJ2dpdCByZWJhc2UgLS1hYm9ydCcuXG4iCittc2dzdHIgIiIKKyLmgqjlj6/ku6XnlKggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIOS/ruato++8jOeEtuW+jOWft+ihjCAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJ+OAglxuIgorIuaIluiAheaCqOWPr+S7peeUqCAnZ2l0IHJlYmFzZSAtLWFib3J0JyDntYLmraLph43lrprln7rlupXjgIJcbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVucmVjb2duaXplZCBzZXR0aW5nICVzIGZvciBvcHRpb24gcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2suIElnbm9yaW5nLiIKK21zZ3N0ciAi6YG46aCFIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrIOeahOWAvCAlcyDnhKHms5XorZjliKXjgILlt7Llv73nlaXjgIIiCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjQyCittc2dpZCAiIgorIlxuIgorIkNvbW1hbmRzOlxuIgorInAsIHBpY2sgPGNvbW1pdD4gPSB1c2UgY29tbWl0XG4iCisiciwgcmV3b3JkIDxjb21taXQ+ID0gdXNlIGNvbW1pdCwgYnV0IGVkaXQgdGhlIGNvbW1pdCBtZXNzYWdlXG4iCisiZSwgZWRpdCA8Y29tbWl0PiA9IHVzZSBjb21taXQsIGJ1dCBzdG9wIGZvciBhbWVuZGluZ1xuIgorInMsIHNxdWFzaCA8Y29tbWl0PiA9IHVzZSBjb21taXQsIGJ1dCBtZWxkIGludG8gcHJldmlvdXMgY29tbWl0XG4iCisiZiwgZml4dXAgPGNvbW1pdD4gPSBsaWtlIFwic3F1YXNoXCIsIGJ1dCBkaXNjYXJkIHRoaXMgY29tbWl0J3MgbG9nIG1lc3NhZ2VcbiIKKyJ4LCBleGVjIDxjb21tYW5kPiA9IHJ1biBjb21tYW5kICh0aGUgcmVzdCBvZiB0aGUgbGluZSkgdXNpbmcgc2hlbGxcbiIKKyJiLCBicmVhayA9IHN0b3AgaGVyZSAoY29udGludWUgcmViYXNlIGxhdGVyIHdpdGggJ2dpdCByZWJhc2UgLS1jb250aW51ZScpXG4iCisiZCwgZHJvcCA8Y29tbWl0PiA9IHJlbW92ZSBjb21taXRcbiIKKyJsLCBsYWJlbCA8bGFiZWw+ID0gbGFiZWwgY3VycmVudCBIRUFEIHdpdGggYSBuYW1lXG4iCisidCwgcmVzZXQgPGxhYmVsPiA9IHJlc2V0IEhFQUQgdG8gYSBsYWJlbFxuIgorIm0sIG1lcmdlIFstQyA8Y29tbWl0PiB8IC1jIDxjb21taXQ+XSA8bGFiZWw+IFsjIDxvbmVsaW5lPl1cbiIKKyIuICAgICAgIGNyZWF0ZSBhIG1lcmdlIGNvbW1pdCB1c2luZyB0aGUgb3JpZ2luYWwgbWVyZ2UgY29tbWl0J3NcbiIKKyIuICAgICAgIG1lc3NhZ2UgKG9yIHRoZSBvbmVsaW5lLCBpZiBubyBvcmlnaW5hbCBtZXJnZSBjb21taXQgd2FzXG4iCisiLiAgICAgICBzcGVjaWZpZWQpLiBVc2UgLWMgPGNvbW1pdD4gdG8gcmV3b3JkIHRoZSBjb21taXQgbWVzc2FnZS5cbiIKKyJcbiIKKyJUaGVzZSBsaW5lcyBjYW4gYmUgcmUtb3JkZXJlZDsgdGhleSBhcmUgZXhlY3V0ZWQgZnJvbSB0b3AgdG8gYm90dG9tLlxuIgorbXNnc3RyICIiCisiXG4iCisi5oyH5LukOlxuIgorInAsIHBpY2sgPOaPkOS6pD4gPSDkvb/nlKjmj5DkuqRcbiIKKyJyLCByZXdvcmQgPOaPkOS6pD4gPSDkvb/nlKjmj5DkuqTvvIzkvYbkv67mlLnmj5DkuqToqqrmmI5cbiIKKyJlLCBlZGl0IDzmj5DkuqQ+ID0g5L2/55So5o+Q5Lqk77yM6YCy5YWlIHNoZWxsIOS7peS+v+mAsuihjOaPkOS6pOS/ruijnFxuIgorInMsIHNxdWFzaCA85o+Q5LqkPiA9IOS9v+eUqOaPkOS6pO+8jOS9huiejeWQiOWIsOWJjeS4gOWAi+aPkOS6pFxuIgorImYsIGZpeHVwIDzmj5DkuqQ+ID0g6aGe5Ly85pa8IFwic3F1YXNoXCLvvIzkvYbmjajmo4Tmj5DkuqToqqrmmI7ml6XoqoxcbiIKKyJ4LCBleGVjIDzmjIfku6Q+ID0g5L2/55SoIHNoZWxsIOWft+ihjOaMh+S7pO+8iOatpOihjOWJqemkmOmDqOWIhu+8iVxuIgorImIsIGJyZWFrID0g5Zyo5q2k6JmV5YGc5q2i77yI5L2/55SoICdnaXQgcmViYXNlIC0tY29udGludWUnIOe5vOe6jOmHjeWumuWfuuW6le+8iVxuIgorImQsIGRyb3AgPOaPkOS6pD4gPSDliKrpmaTmj5DkuqRcbiIKKyJsLCBsYWJlbCA8bGFiZWw+ID0g54K655uu5YmNIEhFQUQg5omT5LiK5qiZ6KiYXG4iCisidCwgcmVzZXQgPGxhYmVsPiA9IOmHjeiorSBIRUFEIOWIsOipsuaomeiomFxuIgorIm0sIG1lcmdlIFstQyA8Y29tbWl0PiB8IC1jIDxjb21taXQ+XSA8bGFiZWw+IFsjIDxvbmVsaW5lPl1cbiIKKyIuICAgICAgIOW7uueri+S4gOWAi+WQiOS9teaPkOS6pO+8jOS4puS9v+eUqOWOn+Wni+eahOWQiOS9teaPkOS6pOiqquaYju+8iOWmguaenOaykuacieaMh+WumlxuIgorIi4gICAgICAg5Y6f5aeL5o+Q5Lqk77yM5L2/55So5YKZ6Ki76YOo5YiG55qEIG9uZWxpbmUg5L2c54K65o+Q5Lqk6Kqq5piO77yJ44CC5L2/55SoXG4iCisiLiAgICAgICAtYyA85o+Q5LqkPiDlj6/ku6Xnt6jovK/mj5DkuqToqqrmmI7jgIJcbiIKKyJcbiIKKyLlj6/ku6XlsI3pgJnkupvooYzph43mlrDmjpLluo/vvIzlsIflvp7kuIroh7PkuIvln7fooYzjgIJcbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmQpIgorbXNnaWRfcGx1cmFsICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZHMpIgorbXNnc3RyWzBdICLph43lrprln7rlupUgJXMg5YiwICVz77yIJWQg5YCL5o+Q5Lqk77yJIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3MiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjI4Cittc2dpZCAiIgorIlxuIgorIkRvIG5vdCByZW1vdmUgYW55IGxpbmUuIFVzZSAnZHJvcCcgZXhwbGljaXRseSB0byByZW1vdmUgYSBjb21taXQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyLkuI3opoHliKrpmaTku7vmhI/kuIDooYzjgILkvb/nlKggJ2Ryb3AnIOmhr+W8j+WcsOWIqumZpOS4gOWAi+aPkOS6pOOAglxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzo3NSBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjMyCittc2dpZCAiIgorIlxuIgorIklmIHlvdSByZW1vdmUgYSBsaW5lIGhlcmUgVEhBVCBDT01NSVQgV0lMTCBCRSBMT1NULlxuIgorbXNnc3RyICIiCisiXG4iCisi5aaC5p6c5oKo5Zyo6YCZ6KOh5Yiq6Zmk5LiA6KGM77yM5bCN5oeJ55qE5o+Q5Lqk5bCH5pyD6YG65aSx44CCXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjgxIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NzEKK21zZ2lkICIiCisiXG4iCisiWW91IGFyZSBlZGl0aW5nIHRoZSB0b2RvIGZpbGUgb2YgYW4gb25nb2luZyBpbnRlcmFjdGl2ZSByZWJhc2UuXG4iCisiVG8gY29udGludWUgcmViYXNlIGFmdGVyIGVkaXRpbmcsIHJ1bjpcbiIKKyIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyLmgqjmraPlnKjkv67mlLnpgLLooYzkuK3nmoTkupLli5XlvI/ph43lrprln7rlupXlvoXovqbliJfooajjgILoi6XopoHlnKjnt6jovK/ntZDmnZ/lvoznubznuozph43lrprln7rlupXvvIxcbiIKKyLoq4vln7fooYzvvJpcbiIKKyIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCisiXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjg2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDgKK21zZ2lkICIiCisiXG4iCisiSG93ZXZlciwgaWYgeW91IHJlbW92ZSBldmVyeXRoaW5nLCB0aGUgcmViYXNlIHdpbGwgYmUgYWJvcnRlZC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIueEtuiAjO+8jOWmguaenOaCqOWIqumZpOWFqOmDqOWFp+Wuue+8jOmHjeWumuWfuuW6leWLleS9nOWwh+acg+e1guatouOAglxuIgorIlxuIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxMTAgcmVyZXJlLmM6NDg1IHJlcmVyZS5jOjY5MiBzZXF1ZW5jZXIuYzozNDQ0CisjOiBzZXF1ZW5jZXIuYzozNDcwIHNlcXVlbmNlci5jOjUxMjUgYnVpbHRpbi9mc2NrLmM6MzQ2IGJ1aWx0aW4vcmViYXNlLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSAnJXMnIgorbXNnc3RyICLkuI3og73lr6vlhaUgJyVzJyIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MTE2IGJ1aWx0aW4vcmViYXNlLmM6MTg0IGJ1aWx0aW4vcmViYXNlLmM6MjEwCisjOiBidWlsdGluL3JlYmFzZS5jOjIzNAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgJyVzJy4iCittc2dzdHIgIuS4jeiDveWvq+WFpSAnJXMn44CCIgorCisjOiByZWJhc2UtaW50ZXJhY3RpdmUuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldhcm5pbmc6IHNvbWUgY29tbWl0cyBtYXkgaGF2ZSBiZWVuIGRyb3BwZWQgYWNjaWRlbnRhbGx5LlxuIgorIkRyb3BwZWQgY29tbWl0cyAobmV3ZXIgdG8gb2xkZXIpOlxuIgorbXNnc3RyICIiCisi6K2m5ZGK77ya5LiA5Lqb5o+Q5Lqk5Y+v6IO96KKr5oSP5aSW5o2o5qOE44CCXG4iCisi5o2o5qOE55qE5o+Q5Lqk77yI5b6e5paw5Yiw6IiK77yJ77yaXG4iCisKKyM6IHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVG8gYXZvaWQgdGhpcyBtZXNzYWdlLCB1c2UgXCJkcm9wXCIgdG8gZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuXG4iCisiXG4iCisiVXNlICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyB0byBjaGFuZ2UgdGhlIGxldmVsIG9mICIKKyJ3YXJuaW5ncy5cbiIKKyJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG4iCisiXG4iCittc2dzdHIgIiIKKyLngrrpgb/lhY3pgJnmop3oqIrmga/vvIzkvb/nlKggXCJkcm9wXCIg5oyH5Luk6aGv5byP5Zyw5Yiq6Zmk5LiA5YCL5o+Q5Lqk44CCXG4iCisiXG4iCisi5L2/55SoICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyDkvobkv67mlLnorablkYrntJrliKXjgIJcbiIKKyLlj6/pgbjlgLzmnInvvJppZ25vcmXjgIF3YXJu44CBZXJyb3LjgIJcbiIKKyJcbiIKKworIzogcmViYXNlLWludGVyYWN0aXZlLmM6MjMzIHJlYmFzZS1pbnRlcmFjdGl2ZS5jOjIzOCBzZXF1ZW5jZXIuYzoyMjYyCisjOiBidWlsdGluL3JlYmFzZS5jOjE3MCBidWlsdGluL3JlYmFzZS5jOjE5NSBidWlsdGluL3JlYmFzZS5jOjIyMQorIzogYnVpbHRpbi9yZWJhc2UuYzoyNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgJyVzJy4iCittc2dzdHIgIuS4jeiDveiugOWPliAnJXMn44CCIgorCisjOiByZWZzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRvZXMgbm90IHBvaW50IHRvIGEgdmFsaWQgb2JqZWN0ISIKK21zZ3N0ciAiJXMg5rKS5pyJ5oyH5ZCR5LiA5YCL5pyJ5pWI55qE54mp5Lu277yBIgorCisjOiByZWZzLmM6NjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGRhbmdsaW5nIHN5bXJlZiAlcyIKK21zZ3N0ciAi5b+955Wl5oe456m656ym6Jmf5byV55SoICVzIgorCisjOiByZWZzLmM6NjY5IHJlZi1maWx0ZXIuYzoyMDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGJyb2tlbiByZWYgJXMiCittc2dzdHIgIuW/veeVpeaQjeWjnueahOW8leeUqCAlcyIKKworIzogcmVmcy5jOjgwNAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nOiAlcyIKK21zZ3N0ciAi54Sh5rOV54K65a+r5YWl6ZaL5ZWfICclcyfvvJolcyIKKworIzogcmVmcy5jOjgxNCByZWZzLmM6ODY1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAnJXMnIgorbXNnc3RyICLnhKHms5XoroDlj5blvJXnlKggJyVzJyIKKworIzogcmVmcy5jOjgyMAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWYgJyVzJyBhbHJlYWR5IGV4aXN0cyIKK21zZ3N0ciAi5byV55SoICclcycg5bey57aT5a2Y5ZyoIgorCisjOiByZWZzLmM6ODI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgb2JqZWN0IElEIHdoZW4gd3JpdGluZyAnJXMnIgorbXNnc3RyICLlr6vlhaUgJyVzJyDmmYLmhI/lpJbnmoTnianku7YgSUQiCisKKyM6IHJlZnMuYzo4MzMgc2VxdWVuY2VyLmM6NDA3IHNlcXVlbmNlci5jOjI3MDEgc2VxdWVuY2VyLmM6MjkwNQorIzogc2VxdWVuY2VyLmM6MjkxOSBzZXF1ZW5jZXIuYzozMTc3IHNlcXVlbmNlci5jOjUwMzYgc3RyYnVmLmM6MTE1NworIzogd3JhcHBlci5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgdG8gJyVzJyIKK21zZ3N0ciAi5LiN6IO95a+r5YWlICclcyciCisKKyM6IHJlZnMuYzo4NjAgc3RyYnVmLmM6MTE1NSB3cmFwcGVyLmM6MTg4IHdyYXBwZXIuYzozNTggYnVpbHRpbi9hbS5jOjcxOQorIzogYnVpbHRpbi9yZWJhc2UuYzoxMDI5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmciCittc2dzdHIgIueEoeazlemWi+WVnyAnJXMnIOmAsuihjOWvq+WFpSIKKworIzogcmVmcy5jOjg2NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIG9iamVjdCBJRCB3aGVuIGRlbGV0aW5nICclcyciCittc2dzdHIgIuWIqumZpCAnJXMnIOaZguaEj+WklueahOeJqeS7tiBJRCIKKworIzogcmVmcy5jOjk5OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2cgZm9yIHJlZiAlcyBoYXMgZ2FwIGFmdGVyICVzIgorbXNnc3RyICLlvJXnlKggJXMg55qE5pel6KqM5ZyoICVzIOS5i+W+jOaciee8uuWPoyIKKworIzogcmVmcy5jOjEwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciByZWYgJXMgdW5leHBlY3RlZGx5IGVuZGVkIG9uICVzIgorbXNnc3RyICLlvJXnlKggJXMg55qE5pel6KqM5oSP5aSW57WC5q2i5pa8ICVzICIKKworIzogcmVmcy5jOjEwNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciAlcyBpcyBlbXB0eSIKK21zZ3N0ciAiJXMg55qE5pel6KqM54K656m6IgorCisjOiByZWZzLmM6MTE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZ1c2luZyB0byB1cGRhdGUgcmVmIHdpdGggYmFkIG5hbWUgJyVzJyIKK21zZ3N0ciAi5ouS57WV5pu05paw5pyJ6Yyv6Kqk5ZCN56ixICclcycg55qE5byV55SoIgorCisjOiByZWZzLmM6MTIzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1cGRhdGVfcmVmIGZhaWxlZCBmb3IgcmVmICclcyc6ICVzIgorbXNnc3RyICLlsI3lvJXnlKggJyVzJyDln7fooYwgdXBkYXRlX3JlZiDlpLHmlZfvvJolcyIKKworIzogcmVmcy5jOjIwMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgdXBkYXRlcyBmb3IgcmVmICclcycgbm90IGFsbG93ZWQiCittc2dzdHIgIuS4jeWFgeioseWwjeW8leeUqCAnJXMnIOWkmuasoeabtOaWsCIKKworIzogcmVmcy5jOjIwNTUKK21zZ2lkICJyZWYgdXBkYXRlcyBmb3JiaWRkZW4gaW5zaWRlIHF1YXJhbnRpbmUgZW52aXJvbm1lbnQiCittc2dzdHIgIuWcqOmalOmboueSsOWig+S4reemgeatouabtOaWsOW8leeUqCIKKworIzogcmVmcy5jOjIxNTEgcmVmcy5jOjIxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBleGlzdHM7IGNhbm5vdCBjcmVhdGUgJyVzJyIKK21zZ3N0ciAiJyVzJyDlt7LlrZjlnKjvvIznhKHms5Xlu7rnq4sgJyVzJyIKKworIzogcmVmcy5jOjIxNTcgcmVmcy5jOjIxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHByb2Nlc3MgJyVzJyBhbmQgJyVzJyBhdCB0aGUgc2FtZSB0aW1lIgorbXNnc3RyICLnhKHms5XlkIzmmYLomZXnkIYgJyVzJyDlkowgJyVzJyIKKworIzogcmVmcy9maWxlcy1iYWNrZW5kLmM6MTIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVtb3ZlIHJlZmVyZW5jZSAlcyIKK21zZ3N0ciAi54Sh5rOV5Yiq6Zmk5byV55SoICVzIgorCisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjQ3IHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTQxCisjOiByZWZzL3BhY2tlZC1iYWNrZW5kLmM6MTU1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZGVsZXRlIHJlZmVyZW5jZSAlczogJXMiCittc2dzdHIgIueEoeazleWIqumZpOW8leeUqCAlc++8miVzIgorCisjOiByZWZzL2ZpbGVzLWJhY2tlbmQuYzoxMjUwIHJlZnMvcGFja2VkLWJhY2tlbmQuYzoxNTU0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBkZWxldGUgcmVmZXJlbmNlczogJXMiCittc2dzdHIgIueEoeazleWIqumZpOW8leeUqO+8miVzIgorCisjOiByZWZzcGVjLmM6MTM3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcmVmc3BlYyAnJXMnIgorbXNnc3RyICLnhKHmlYjnmoTlvJXnlKjooajpgZTlvI/vvJonJXMnIgorCisjOiByZWYtZmlsdGVyLmM6NDIgd3Qtc3RhdHVzLmM6MTkzOAorbXNnaWQgImdvbmUiCittc2dzdHIgIumBuuWksSIKKworIzogcmVmLWZpbHRlci5jOjQzCisjLCBjLWZvcm1hdAorbXNnaWQgImFoZWFkICVkIgorbXNnc3RyICLpoJjlhYggJWQiCisKKyM6IHJlZi1maWx0ZXIuYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJiZWhpbmQgJWQiCittc2dzdHIgIuiQveW+jCAlZCIKKworIzogcmVmLWZpbHRlci5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImFoZWFkICVkLCBiZWhpbmQgJWQiCittc2dzdHIgIumgmOWFiCAlZO+8jOiQveW+jCAlZCIKKworIzogcmVmLWZpbHRlci5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBmb3JtYXQ6ICUlKGNvbG9yOjxjb2xvcj4pIgorbXNnc3RyICLmnJ/mnJvnmoTmoLzlvI/vvJolJShjb2xvcjo86aGP6ImyPikiCisKKyM6IHJlZi1maWx0ZXIuYzoxNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIGNvbG9yOiAlJShjb2xvcjolcykiCittc2dzdHIgIuacquiDveitmOWIpeeahOmhj+iJsu+8miUlKGNvbG9yOiVzKSIKKworIzogcmVmLWZpbHRlci5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIHJlZm5hbWU6bHN0cmlwPSVzIgorbXNnc3RyICLmnJ/mnJvmlbTmlbjlgLwgcmVmbmFtZTpsc3RyaXA9JXMiCisKKyM6IHJlZi1maWx0ZXIuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW50ZWdlciB2YWx1ZSBleHBlY3RlZCByZWZuYW1lOnJzdHJpcD0lcyIKK21zZ3N0ciAi5pyf5pyb5pW05pW45YC8IHJlZm5hbWU6cnN0cmlwPSVzIgorCisjOiByZWYtZmlsdGVyLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCAlJSglcykgYXJndW1lbnQ6ICVzIgorbXNnc3RyICLmnKrog73orZjliKXnmoQgJSUoJXMpIOWPg+aVuO+8miVzIgorCisjOiByZWYtZmlsdGVyLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiUlKG9iamVjdHR5cGUpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnc3RyICIlJShvYmplY3R0eXBlKSDkuI3luLblj4PmlbgiCisKKyM6IHJlZi1maWx0ZXIuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkICUlKG9iamVjdHNpemUpIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAi5pyq6IO96K2Y5Yil55qEICUlKG9iamVjdHNpemUpIOWPg+aVuO+8miVzIgorCisjOiByZWYtZmlsdGVyLmM6MjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiUlKGRlbHRhYmFzZSkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCittc2dzdHIgIiUlKGRlbHRhYmFzZSkg5LiN5bi25Y+D5pW4IgorCisjOiByZWYtZmlsdGVyLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiUlKGJvZHkpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIgorbXNnc3RyICIlJShib2R5KSDkuI3luLblj4PmlbgiCisKKyM6IHJlZi1maWx0ZXIuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJSUoc3ViamVjdCkgZG9lcyBub3QgdGFrZSBhcmd1bWVudHMiCittc2dzdHIgIiUlKHN1YmplY3QpIOS4jeW4tuWPg+aVuCIKKworIzogcmVmLWZpbHRlci5jOjMyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duICUlKHRyYWlsZXJzKSBhcmd1bWVudDogJXMiCittc2dzdHIgIuacquefpeeahCAlJSh0cmFpbGVycykg5Y+D5pW477yaJXMiCisKKyM6IHJlZi1maWx0ZXIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicG9zaXRpdmUgdmFsdWUgZXhwZWN0ZWQgY29udGVudHM6bGluZXM9JXMiCittc2dzdHIgIuacn+acm+S4gOWAi+ato+aVuCBjb250ZW50czpsaW5lcz0lcyIKKworIzogcmVmLWZpbHRlci5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUoY29udGVudHMpIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAi5pyq6IO96K2Y5Yil55qEICUlKGNvbnRlbnRzKSDlj4PmlbjvvJolcyIKKworIzogcmVmLWZpbHRlci5jOjM2OQorIywgYy1mb3JtYXQKK21zZ2lkICJwb3NpdGl2ZSB2YWx1ZSBleHBlY3RlZCBvYmplY3RuYW1lOnNob3J0PSVzIgorbXNnc3RyICLmnJ/mnJvkuIDlgIvmraPmlbggb2JqZWN0bmFtZTpzaG9ydD0lcyIKKworIzogcmVmLWZpbHRlci5jOjM3MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUob2JqZWN0bmFtZSkgYXJndW1lbnQ6ICVzIgorbXNnc3RyICLmnKrog73orZjliKXnmoQgJSUob2JqZWN0bmFtZSkg5Y+D5pW477yaJXMiCisKKyM6IHJlZi1maWx0ZXIuYzo0MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgZm9ybWF0OiAlJShhbGlnbjo8d2lkdGg+LDxwb3NpdGlvbj4pIgorbXNnc3RyICLmnJ/mnJvnmoTmoLzlvI/vvJolJShhbGlnbjo85a+s5bqmPiw85L2N572uPikiCisKKyM6IHJlZi1maWx0ZXIuYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIHBvc2l0aW9uOiVzIgorbXNnc3RyICLmnKrog73orZjliKXnmoTkvY3nva7vvJolcyIKKworIzogcmVmLWZpbHRlci5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgd2lkdGg6JXMiCittc2dzdHIgIuacquiDveitmOWIpeeahOWvrOW6pu+8miVzIgorCisjOiByZWYtZmlsdGVyLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCAlJShhbGlnbikgYXJndW1lbnQ6ICVzIgorbXNnc3RyICLmnKrog73orZjliKXnmoQgJSUoYWxpZ24pIOWPg+aVuO+8miVzIgorCisjOiByZWYtZmlsdGVyLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgInBvc2l0aXZlIHdpZHRoIGV4cGVjdGVkIHdpdGggdGhlICUlKGFsaWduKSBhdG9tIgorbXNnc3RyICLlhYPntKAgJSUoYWxpZ24pIOmcgOimgeS4gOWAi+ato+aVuOeahOWvrOW6piIKKworIzogcmVmLWZpbHRlci5jOjQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgJSUoaWYpIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAi5pyq6IO96K2Y5Yil55qEICUlKGlmKSDlj4PmlbjvvJolcyIKKworIzogcmVmLWZpbHRlci5jOjU1OQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgZmllbGQgbmFtZTogJS4qcyIKK21zZ3N0ciAi5qC85byP6Yyv6Kqk55qE5qyE5L2N5ZCN77yaJS4qcyIKKworIzogcmVmLWZpbHRlci5jOjU4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZpZWxkIG5hbWU6ICUuKnMiCittc2dzdHIgIuacquefpeeahOashOS9jeWQje+8miUuKnMiCisKKyM6IHJlZi1maWx0ZXIuYzo1OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm5vdCBhIGdpdCByZXBvc2l0b3J5LCBidXQgdGhlIGZpZWxkICclLipzJyByZXF1aXJlcyBhY2Nlc3MgdG8gb2JqZWN0IGRhdGEiCittc2dzdHIgIuS4jeaYr+S4gOWAiyBnaXQg54mI5pys5bqr77yM5L2G5piv5qyE5L2NICclLipzJyDpnIDopoHlrZjlj5bnianku7bos4fmlpkiCisKKyM6IHJlZi1maWx0ZXIuYzo3MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJShpZikgYXRvbSB1c2VkIHdpdGhvdXQgYSAlJSh0aGVuKSBhdG9tIgorbXNnc3RyICLmoLzlvI/vvJrkvb/nlKjkuoYgJSUoaWYpIOWFg+e0oOiAjOaykuaciSAlJSh0aGVuKSDlhYPntKAiCisKKyM6IHJlZi1maWx0ZXIuYzo3NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgd2l0aG91dCBhbiAlJShpZikgYXRvbSIKK21zZ3N0ciAi5qC85byP77ya5L2/55So5LqGICUlKHRoZW4pIOWFg+e0oOiAjOaykuaciSAlJShpZikg5YWD57SgIgorCisjOiByZWYtZmlsdGVyLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUodGhlbikgYXRvbSB1c2VkIG1vcmUgdGhhbiBvbmNlIgorbXNnc3RyICLmoLzlvI/vvJolJSh0aGVuKSDlhYPntKDnlKjkuoblpJrmrKEiCisKKyM6IHJlZi1maWx0ZXIuYzo3ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJSh0aGVuKSBhdG9tIHVzZWQgYWZ0ZXIgJSUoZWxzZSkiCittc2dzdHIgIuagvOW8j++8miUlKHRoZW4pIOWFg+e0oOeUqOWcqOS6hiAlJShlbHNlKSDkuYvlvowiCisKKyM6IHJlZi1maWx0ZXIuYzo4MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZm9ybWF0OiAlJShlbHNlKSBhdG9tIHVzZWQgd2l0aG91dCBhbiAlJShpZikgYXRvbSIKK21zZ3N0ciAi5qC85byP77ya5L2/55So5LqGICUlKGVsc2UpIOWFg+e0oOiAjOaykuaciSAlJShpZikg5YWD57SgIgorCisjOiByZWYtZmlsdGVyLmM6ODExCisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUoZWxzZSkgYXRvbSB1c2VkIHdpdGhvdXQgYSAlJSh0aGVuKSBhdG9tIgorbXNnc3RyICLmoLzlvI/vvJrkvb/nlKjkuoYgJSUoZWxzZSkg5YWD57Sg6ICM5rKS5pyJICUlKHRoZW4pIOWFg+e0oCIKKworIzogcmVmLWZpbHRlci5jOjgxMworIywgYy1mb3JtYXQKK21zZ2lkICJmb3JtYXQ6ICUlKGVsc2UpIGF0b20gdXNlZCBtb3JlIHRoYW4gb25jZSIKK21zZ3N0ciAi5qC85byP77yaJSUoZWxzZSkg5YWD57Sg55So5LqG5aSa5qyhIgorCisjOiByZWYtZmlsdGVyLmM6ODI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUoZW5kKSBhdG9tIHVzZWQgd2l0aG91dCBjb3JyZXNwb25kaW5nIGF0b20iCittc2dzdHIgIuagvOW8j++8muS9v+eUqOS6hiAlJShlbmQpIOWFg+e0oOWNu+aykuacieWug+eahOWwjeaHieWFg+e0oCIKKworIzogcmVmLWZpbHRlci5jOjg4NQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgZm9ybWF0IHN0cmluZyAlcyIKK21zZ3N0ciAi6Yyv6Kqk55qE5qC85byP5YyW5a2X5LiyICVzIgorCisjOiByZWYtZmlsdGVyLmM6MTQ4OAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBicmFuY2gsIHJlYmFzaW5nICVzIgorbXNnc3RyICLpnZ7liIbmlK/vvIzmraPph43lrprln7rlupUgJXMiCisKKyM6IHJlZi1maWx0ZXIuYzoxNDkxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGJyYW5jaCwgcmViYXNpbmcgZGV0YWNoZWQgSEVBRCAlcyIKK21zZ3N0ciAi6Z2e5YiG5pSv77yM5q2j6YeN5a6a5Z+65bqV5YiG6Zui6ZaL6aCt5oyH5qiZICVzIgorCisjOiByZWYtZmlsdGVyLmM6MTQ5NAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBicmFuY2gsIGJpc2VjdCBzdGFydGVkIG9uICVzIgorbXNnc3RyICLpnZ7liIbmlK/vvIzkuozliIblsIvmib7plovlp4vmlrwgJXMiCisKKyM6IHJlZi1maWx0ZXIuYzoxNTA0Cittc2dpZCAibm8gYnJhbmNoIgorbXNnc3RyICLpnZ7liIbmlK8iCisKKyM6IHJlZi1maWx0ZXIuYzoxNTQwIHJlZi1maWx0ZXIuYzoxNzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3Npbmcgb2JqZWN0ICVzIGZvciAlcyIKK21zZ3N0ciAi57y65bCRICUyJHMg55qE54mp5Lu2ICUxJHMiCisKKyM6IHJlZi1maWx0ZXIuYzoxNTUwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnNlX29iamVjdF9idWZmZXIgZmFpbGVkIG9uICVzIGZvciAlcyIKK21zZ3N0ciAicGFyc2Vfb2JqZWN0X2J1ZmZlciDlpLHmlZfmlrwgJTIkcyDnmoQgJTEkcyIKKworIzogcmVmLWZpbHRlci5jOjIwMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFsZm9ybWVkIG9iamVjdCBhdCAnJXMnIgorbXNnc3RyICLmoLzlvI/pjK/oqqTnmoTnianku7YgJyVzJyIKKworIzogcmVmLWZpbHRlci5jOjIwOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgcmVmIHdpdGggYnJva2VuIG5hbWUgJXMiCittc2dzdHIgIuW/veeVpeW4tuaciemMr+iqpOWQjeeosSAlcyDnmoTlvJXnlKgiCisKKyM6IHJlZi1maWx0ZXIuYzoyMzg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZvcm1hdDogJSUoZW5kKSBhdG9tIG1pc3NpbmciCittc2dzdHIgIuagvOW8j++8mue8uuWwkSAlJShlbmQpIOWFg+e0oCIKKworIzogcmVmLWZpbHRlci5jOjI0ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1tZXJnZWQiCittc2dzdHIgIumBuOmghSBgJXMnIOWSjCAtLW1lcmdlZCDkuI3nm7jlrrkiCisKKyM6IHJlZi1maWx0ZXIuYzoyNDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8tbWVyZ2VkIgorbXNnc3RyICLpgbjpoIUgYCVzJyDlkowgLS1uby1tZXJnZWQg5LiN55u45a65IgorCisjOiByZWYtZmlsdGVyLmM6MjUwMgorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgb2JqZWN0IG5hbWUgJXMiCittc2dzdHIgIuagvOW8j+mMr+iqpOeahOeJqeS7tuWQjSAlcyIKKworIzogcmVmLWZpbHRlci5jOjI1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgbXVzdCBwb2ludCB0byBhIGNvbW1pdCIKK21zZ3N0ciAi6YG46aCFIGAlcycg5b+F6aCI5oyH5ZCR5LiA5YCL5o+Q5LqkIgorCisjOiByZW1vdGUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlnIHJlbW90ZSBzaG9ydGhhbmQgY2Fubm90IGJlZ2luIHdpdGggJy8nOiAlcyIKK21zZ3N0ciAi6Kit5a6a55qE6YGg56uv55+t5ZCN56ix5LiN6IO95LulICcvJyDplovlp4vvvJolcyIKKworIzogcmVtb3RlLmM6NDE0Cittc2dpZCAibW9yZSB0aGFuIG9uZSByZWNlaXZlcGFjayBnaXZlbiwgdXNpbmcgdGhlIGZpcnN0IgorbXNnc3RyICLmj5DkvpvkuobkuIDlgIvku6XkuIrnmoQgcmVjZWl2ZXBhY2vvvIzkvb/nlKjnrKzkuIDlgIsiCisKKyM6IHJlbW90ZS5jOjQyMgorbXNnaWQgIm1vcmUgdGhhbiBvbmUgdXBsb2FkcGFjayBnaXZlbiwgdXNpbmcgdGhlIGZpcnN0IgorbXNnc3RyICLmj5DkvpvkuobkuIDlgIvku6XkuIrnmoQgdXBsb2FkcGFja++8jOS9v+eUqOesrOS4gOWAiyIKKworIzogcmVtb3RlLmM6NjEyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBmZXRjaCBib3RoICVzIGFuZCAlcyB0byAlcyIKK21zZ3N0ciAi5LiN6IO95ZCM5pmC5Y+W5b6XICVzIOWSjCAlcyDoh7MgJXMiCisKKyM6IHJlbW90ZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB1c3VhbGx5IHRyYWNrcyAlcywgbm90ICVzIgorbXNnc3RyICIlcyDpgJrluLjov73ouaQgJXPvvIzogIzpnZ4gJXMiCisKKyM6IHJlbW90ZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0cmFja3MgYm90aCAlcyBhbmQgJXMiCittc2dzdHIgIiVzIOWQjOaZgui/vei5pCAlcyDlkowgJXMiCisKKyM6IHJlbW90ZS5jOjY4OAorIywgYy1mb3JtYXQKK21zZ2lkICJrZXkgJyVzJyBvZiBwYXR0ZXJuIGhhZCBubyAnKiciCittc2dzdHIgIuaooeW8j+eahOmNtSAnJXMnIOaykuaciSAnKiciCisKKyM6IHJlbW90ZS5jOjY5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSAnJXMnIG9mIHBhdHRlcm4gaGFzIG5vICcqJyIKK21zZ3N0ciAi5qih5byP55qE5YC8ICclcycg5rKS5pyJICcqJyIKKworIzogcmVtb3RlLmM6MTAwNAorIywgYy1mb3JtYXQKK21zZ2lkICJzcmMgcmVmc3BlYyAlcyBkb2VzIG5vdCBtYXRjaCBhbnkiCittc2dzdHIgIua6kOW8leeUqOihqOmBlOW8jyAlcyDmspLmnInnrKblkIgiCisKKyM6IHJlbW90ZS5jOjEwMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3JjIHJlZnNwZWMgJXMgbWF0Y2hlcyBtb3JlIHRoYW4gb25lIgorbXNnc3RyICLmupDlvJXnlKjooajpgZTlvI8gJXMg56ym5ZCI6LaF6YGO5LiA5YCLIgorCisjLiBUUkFOU0xBVE9SUzogIm1hdGNoZXMgJyVzJyUiIGlzIHRoZSA8ZHN0PiBwYXJ0IG9mICJnaXQgcHVzaAorIy4gPHJlbW90ZT4gPHNyYz46PGRzdD4iIHB1c2gsIGFuZCAiYmVpbmcgcHVzaGVkICgnJXMnKSIgaXMKKyMuIHRoZSA8c3JjPi4KKyMuCisjOiByZW1vdGUuYzoxMDI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZGVzdGluYXRpb24geW91IHByb3ZpZGVkIGlzIG5vdCBhIGZ1bGwgcmVmbmFtZSAoaS5lLixcbiIKKyJzdGFydGluZyB3aXRoIFwicmVmcy9cIikuIFdlIHRyaWVkIHRvIGd1ZXNzIHdoYXQgeW91IG1lYW50IGJ5OlxuIgorIlxuIgorIi0gTG9va2luZyBmb3IgYSByZWYgdGhhdCBtYXRjaGVzICclcycgb24gdGhlIHJlbW90ZSBzaWRlLlxuIgorIi0gQ2hlY2tpbmcgaWYgdGhlIDxzcmM+IGJlaW5nIHB1c2hlZCAoJyVzJylcbiIKKyIgIGlzIGEgcmVmIGluIFwicmVmcy97aGVhZHMsdGFnc30vXCIuIElmIHNvIHdlIGFkZCBhIGNvcnJlc3BvbmRpbmdcbiIKKyIgIHJlZnMve2hlYWRzLHRhZ3N9LyBwcmVmaXggb24gdGhlIHJlbW90ZSBzaWRlLlxuIgorIlxuIgorIk5laXRoZXIgd29ya2VkLCBzbyB3ZSBnYXZlIHVwLiBZb3UgbXVzdCBmdWxseSBxdWFsaWZ5IHRoZSByZWYuIgorbXNnc3RyICIiCisi5oKo5o+Q5L6b55qE55uu5qiZ5LiN5piv5LiA5YCL5a6M5pW055qE5byV55So5ZCN56ix77yI5Y2z5LulIFwicmVmcy9cIiDplovpoK3vvInjgILmiJHlgJFcbiIKKyLoqabokZfnjJzmuKzmgqjnmoTmg7Pms5XvvJpcbiIKKyJcbiIKKyItIOWcqOmBoOerr+afpeipouWSjCAnJXMnIOespuWQiOeahOW8leeUqOOAglxuIgorIi0g5qqi5p+l6KaB5o6o6YCB55qEIDxzcmM+77yIJyVzJ++8ieaYr+S4jeaYr+WcqCBcInJlZnMve2hlYWRzLHRhZ3N9L1wiIOS4reeahFxuIgorIiAg5byV55So44CC5aaC5p6c5piv77yM5oiR5YCR5pyD5Zyo5bCN5oeJ55qE6YGg56uv5paw5aKeIHJlZnMve2hlYWRzLHRhZ3N9LyDliY3ntrTjgIJcbiIKKyJcbiIKKyLpg73kuI3ooYzvvIzmiYDku6XmiJHlgJHlt7LmlL7mo4TjgILmgqjlv4XpoIjntablh7rlrozmlbTnmoTlvJXnlKjjgIIiCisKKyM6IHJlbW90ZS5jOjEwNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgY29tbWl0IG9iamVjdC5cbiIKKyJEaWQgeW91IG1lYW4gdG8gY3JlYXRlIGEgbmV3IGJyYW5jaCBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvaGVhZHMvJXMnPyIKK21zZ3N0ciAiIgorIuW8leeUqOihqOmBlOW8j+eahCA8c3JjPiDmmK/kuIDlgIvmj5DkuqTnianku7bjgILmgqjmmK/mg7Plu7rnq4vkuIDlgIvmlrDnmoTliIbmlK/ogIzlkJFcbiIKKyInJXM6cmVmcy9oZWFkcy8lcycg5o6o6YCB5ZeO77yfIgorCisjOiByZW1vdGUuYzoxMDQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIHRhZyBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIGNyZWF0ZSBhIG5ldyB0YWcgYnkgcHVzaGluZyB0b1xuIgorIiclczpyZWZzL3RhZ3MvJXMnPyIKK21zZ3N0ciAiIgorIuW8leeUqOihqOmBlOW8j+eahCA8c3JjPiDmmK/kuIDlgIvmqJnnsaTnianku7bjgILmgqjmmK/mg7Plu7rnq4vkuIDlgIvmlrDnmoTmqJnnsaTogIzlkJFcbiIKKyInJXM6cmVmcy90YWdzLyVzJyDmjqjpgIHll47vvJ8iCisKKyM6IHJlbW90ZS5jOjEwNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgdHJlZSBvYmplY3QuXG4iCisiRGlkIHlvdSBtZWFuIHRvIHRhZyBhIG5ldyB0cmVlIGJ5IHB1c2hpbmcgdG9cbiIKKyInJXM6cmVmcy90YWdzLyVzJz8iCittc2dzdHIgIiIKKyLlvJXnlKjooajpgZTlvI/nmoQgPHNyYz4g5piv5LiA5YCL5qi554uA54mp5Lu244CC5oKo5piv5oOz54K66YCZ5YCL5qi554uA54mp5Lu25bu656uL5qiZ57Gk6ICM5ZCRXG4iCisiJyVzOnJlZnMvdGFncy8lcycg5o6o6YCB5ZeO77yfIgorCisjOiByZW1vdGUuYzoxMDU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIGJsb2Igb2JqZWN0LlxuIgorIkRpZCB5b3UgbWVhbiB0byB0YWcgYSBuZXcgYmxvYiBieSBwdXNoaW5nIHRvXG4iCisiJyVzOnJlZnMvdGFncy8lcyc/IgorbXNnc3RyICIiCisi5byV55So6KGo6YGU5byP55qEIDxzcmM+IOaYr+S4gOWAi+izh+aWmeeJqeS7tuOAguaCqOaYr+aDs+eCuumAmeWAi+izh+aWmeeJqeS7tuW7uueri+aomeexpOiAjOWQkVxuIgorIiclczpyZWZzL3RhZ3MvJXMnIOaOqOmAgeWXju+8nyIKKworIzogcmVtb3RlLmM6MTA5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYnJhbmNoIgorbXNnc3RyICIlcyDnhKHms5Xooqvop6PmnpDngrrliIbmlK8iCisKKyM6IHJlbW90ZS5jOjExMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSAnJXMnOiByZW1vdGUgcmVmIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICLnhKHms5XliKrpmaQgJyVzJ++8mumBoOerr+W8leeUqOS4jeWtmOWcqCIKKworIzogcmVtb3RlLmM6MTExOAorIywgYy1mb3JtYXQKK21zZ2lkICJkc3QgcmVmc3BlYyAlcyBtYXRjaGVzIG1vcmUgdGhhbiBvbmUiCittc2dzdHIgIuebruaomeW8leeUqOihqOmBlOW8jyAlcyDnrKblkIjotoXpgY7kuIDlgIsiCisKKyM6IHJlbW90ZS5jOjExMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHN0IHJlZiAlcyByZWNlaXZlcyBmcm9tIG1vcmUgdGhhbiBvbmUgc3JjIgorbXNnc3RyICLnm67mqJnlvJXnlKggJXMg5o6l5pS26LaF6YGO5LiA5YCL5rqQIgorCisjOiByZW1vdGUuYzoxNjI4IHJlbW90ZS5jOjE3MjkKK21zZ2lkICJIRUFEIGRvZXMgbm90IHBvaW50IHRvIGEgYnJhbmNoIgorbXNnc3RyICJIRUFEIOaykuacieaMh+WQkeS4gOWAi+WIhuaUryIKKworIzogcmVtb3RlLmM6MTYzNworIywgYy1mb3JtYXQKK21zZ2lkICJubyBzdWNoIGJyYW5jaDogJyVzJyIKK21zZ3N0ciAi5rKS5pyJ5q2k5YiG5pSv77yaJyVzJyIKKworIzogcmVtb3RlLmM6MTY0MAorIywgYy1mb3JtYXQKK21zZ2lkICJubyB1cHN0cmVhbSBjb25maWd1cmVkIGZvciBicmFuY2ggJyVzJyIKK21zZ3N0ciAi5bCa5pyq57Wm5YiG5pSvICclcycg6Kit5a6a5LiK5ri4IgorCisjOiByZW1vdGUuYzoxNjQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVwc3RyZWFtIGJyYW5jaCAnJXMnIG5vdCBzdG9yZWQgYXMgYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICLkuIrmuLjliIbmlK8gJyVzJyDmspLmnInlhLLlrZjngrrkuIDlgIvpgaDnq6/ov73ouaTliIbmlK8iCisKKyM6IHJlbW90ZS5jOjE2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAicHVzaCBkZXN0aW5hdGlvbiAnJXMnIG9uIHJlbW90ZSAnJXMnIGhhcyBubyBsb2NhbCB0cmFja2luZyBicmFuY2giCittc2dzdHIgIuaOqOmAgeebruaomSAnJXMnIOiHs+mBoOerryAnJXMnIOaykuacieacrOapn+i/vei5pOWIhuaUryIKKworIzogcmVtb3RlLmM6MTY3MworIywgYy1mb3JtYXQKK21zZ2lkICJicmFuY2ggJyVzJyBoYXMgbm8gcmVtb3RlIGZvciBwdXNoaW5nIgorbXNnc3RyICLliIbmlK8gJyVzJyDmspLmnInoqK3lrpropoHmjqjpgIHnmoTpgaDnq6/kvLrmnI3lmagiCisKKyM6IHJlbW90ZS5jOjE2ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAicHVzaCByZWZzcGVjcyBmb3IgJyVzJyBkbyBub3QgaW5jbHVkZSAnJXMnIgorbXNnc3RyICLlkJEgJyVzJyDmjqjpgIHlvJXnlKjopo/moLzmnKrljIXlkKsgJyVzJyIKKworIzogcmVtb3RlLmM6MTY5NgorbXNnaWQgInB1c2ggaGFzIG5vIGRlc3RpbmF0aW9uIChwdXNoLmRlZmF1bHQgaXMgJ25vdGhpbmcnKSIKK21zZ3N0ciAi5o6o6YCB54Sh55uu5qiZ77yIcHVzaC5kZWZhdWx0IOaYryAnbm90aGluZyfvvIkiCisKKyM6IHJlbW90ZS5jOjE3MTgKK21zZ2lkICJjYW5ub3QgcmVzb2x2ZSAnc2ltcGxlJyBwdXNoIHRvIGEgc2luZ2xlIGRlc3RpbmF0aW9uIgorbXNnc3RyICLnhKHms5Xop6PmnpAgJ3NpbXBsZScg5o6o6YCB6Iez5LiA5YCL5Zau542o55qE55uu5qiZIgorCisjOiByZW1vdGUuYzoxODQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiAlcyIKK21zZ3N0ciAi54Sh5rOV5om+5Yiw6YGg56uv5byV55SoICVzIgorCisjOiByZW1vdGUuYzoxODU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiogSWdub3JpbmcgZnVubnkgcmVmICclcycgbG9jYWxseSIKK21zZ3N0ciAiKiDlnKjmnKzmqZ/lv73nlaXlj6/nrJHnmoTlvJXnlKggJyVzJyIKKworIzogcmVtb3RlLmM6MjAyMAorIywgYy1mb3JtYXQKK21zZ2lkICJZb3VyIGJyYW5jaCBpcyBiYXNlZCBvbiAnJXMnLCBidXQgdGhlIHVwc3RyZWFtIGlzIGdvbmUuXG4iCittc2dzdHIgIuaCqOeahOWIhuaUr+WfuuaWvCAnJXMn77yM5L2G5q2k5LiK5ri45YiG5pSv5bey57aT5LiN5a2Y5Zyo44CCXG4iCisKKyM6IHJlbW90ZS5jOjIwMjQKK21zZ2lkICIgICh1c2UgXCJnaXQgYnJhbmNoIC0tdW5zZXQtdXBzdHJlYW1cIiB0byBmaXh1cClcbiIKK21zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgYnJhbmNoIC0tdW5zZXQtdXBzdHJlYW1cIiDkvobkv67lvqnvvIlcbiIKKworIzogcmVtb3RlLmM6MjAyNworIywgYy1mb3JtYXQKK21zZ2lkICJZb3VyIGJyYW5jaCBpcyB1cCB0byBkYXRlIHdpdGggJyVzJy5cbiIKK21zZ3N0ciAi5oKo55qE5YiG5pSv6IiH5LiK5ri45YiG5pSvICclcycg5LiA6Ie044CCXG4iCisKKyM6IHJlbW90ZS5jOjIwMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91ciBicmFuY2ggYW5kICclcycgcmVmZXIgdG8gZGlmZmVyZW50IGNvbW1pdHMuXG4iCittc2dzdHIgIuaCqOeahOWIhuaUr+WSjCAnJXMnIOaMh+WQkeS4jeWQjOeahOaPkOS6pOOAglxuIgorCisjOiByZW1vdGUuYzoyMDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgKHVzZSBcIiVzXCIgZm9yIGRldGFpbHMpXG4iCittc2dzdHIgIiAg77yI5L2/55SoIFwiJXNcIiDmqqLoppboqbPmg4XvvIlcbiIKKworIzogcmVtb3RlLmM6MjAzOAorIywgYy1mb3JtYXQKK21zZ2lkICJZb3VyIGJyYW5jaCBpcyBhaGVhZCBvZiAnJXMnIGJ5ICVkIGNvbW1pdC5cbiIKK21zZ2lkX3BsdXJhbCAiWW91ciBicmFuY2ggaXMgYWhlYWQgb2YgJyVzJyBieSAlZCBjb21taXRzLlxuIgorbXNnc3RyWzBdICLmgqjnmoTliIbmlK/poJjlhYggJyVzJyDlhbEgJWQg5YCL5o+Q5Lqk44CCXG4iCisKKyM6IHJlbW90ZS5jOjIwNDQKK21zZ2lkICIgICh1c2UgXCJnaXQgcHVzaFwiIHRvIHB1Ymxpc2ggeW91ciBsb2NhbCBjb21taXRzKVxuIgorbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCBwdXNoXCIg5L6G55m85biD5oKo55qE5pys5qmf5o+Q5Lqk77yJXG4iCisKKyM6IHJlbW90ZS5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiWW91ciBicmFuY2ggaXMgYmVoaW5kICclcycgYnkgJWQgY29tbWl0LCBhbmQgY2FuIGJlIGZhc3QtZm9yd2FyZGVkLlxuIgorbXNnaWRfcGx1cmFsICIiCisiWW91ciBicmFuY2ggaXMgYmVoaW5kICclcycgYnkgJWQgY29tbWl0cywgYW5kIGNhbiBiZSBmYXN0LWZvcndhcmRlZC5cbiIKK21zZ3N0clswXSAi5oKo55qE5YiG5pSv6JC95b6MICclcycg5YWxICVkIOWAi+aPkOS6pO+8jOS4puS4lOWPr+S7peW/q+i9ieOAglxuIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHJlbW90ZS5jOjIwNTUKK21zZ2lkICIgICh1c2UgXCJnaXQgcHVsbFwiIHRvIHVwZGF0ZSB5b3VyIGxvY2FsIGJyYW5jaClcbiIKK21zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgcHVsbFwiIOS+huabtOaWsOaCqOeahOacrOapn+WIhuaUr++8iVxuIgorCisjOiByZW1vdGUuYzoyMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGJyYW5jaCBhbmQgJyVzJyBoYXZlIGRpdmVyZ2VkLFxuIgorImFuZCBoYXZlICVkIGFuZCAlZCBkaWZmZXJlbnQgY29tbWl0IGVhY2gsIHJlc3BlY3RpdmVseS5cbiIKK21zZ2lkX3BsdXJhbCAiIgorIllvdXIgYnJhbmNoIGFuZCAnJXMnIGhhdmUgZGl2ZXJnZWQsXG4iCisiYW5kIGhhdmUgJWQgYW5kICVkIGRpZmZlcmVudCBjb21taXRzIGVhY2gsIHJlc3BlY3RpdmVseS5cbiIKK21zZ3N0clswXSAiIgorIuaCqOeahOWIhuaUr+WSjCAnJXMnIOWHuuePvuS6huWBj+mbou+8jFxuIgorIuS4puS4lOWIhuWIpeaciSAlZCDlkowgJWQg6JmV5LiN5ZCM55qE5o+Q5Lqk44CCXG4iCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogcmVtb3RlLmM6MjA2OAorbXNnaWQgIiAgKHVzZSBcImdpdCBwdWxsXCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycylcbiIKK21zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgcHVsbFwiIOS+huWQiOS9temBoOerr+WIhuaUr++8iVxuIgorCisjOiByZW1vdGUuYzoyMjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBwYXJzZSBleHBlY3RlZCBvYmplY3QgbmFtZSAnJXMnIgorbXNnc3RyICLnhKHms5Xop6PmnpDmnJ/mnJvnmoTnianku7blkI0gJyVzJyIKKworIzogcmVwbGFjZS1vYmplY3QuYzoyMQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgcmVwbGFjZSByZWYgbmFtZTogJXMiCittc2dzdHIgIumMr+iqpOeahOWPluS7o+W8leeUqOWQjeeose+8miVzIgorCisjOiByZXBsYWNlLW9iamVjdC5jOjMwCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSByZXBsYWNlIHJlZjogJXMiCittc2dzdHIgIumHjeikh+eahOWPluS7o+W8leeUqO+8miVzIgorCisjOiByZXBsYWNlLW9iamVjdC5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlcGxhY2UgZGVwdGggdG9vIGhpZ2ggZm9yIG9iamVjdCAlcyIKK21zZ3N0ciAi54mp5Lu2ICVzIOeahOWPluS7o+WxpOe0muWkqua3sSIKKworIzogcmVyZXJlLmM6MjE3IHJlcmVyZS5jOjIyNiByZXJlcmUuYzoyMjkKK21zZ2lkICJjb3JydXB0IE1FUkdFX1JSIgorbXNnc3RyICLmkI3lo57nmoQgTUVSR0VfUlIiCisKKyM6IHJlcmVyZS5jOjI2NCByZXJlcmUuYzoyNjkKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcmVyZXJlIHJlY29yZCIKK21zZ3N0ciAi54Sh5rOV5a+r5YWlIHJlcmVyZSDoqJjpjIQiCisKKyM6IHJlcmVyZS5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSB3ZXJlIGVycm9ycyB3aGlsZSB3cml0aW5nICclcycgKCVzKSIKK21zZ3N0ciAi5a+r5YWlICclcycgKCVzKSDmmYLnmbznlJ/pjK/oqqQiCisKKyM6IHJlcmVyZS5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggJyVzJyIKK21zZ3N0ciAi6YeN5paw5pW055CGICclcycg5aSx5pWXIgorCisjOiByZXJlcmUuYzo1MDMgcmVyZXJlLmM6MTAzOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29uZmxpY3QgaHVua3MgaW4gJyVzJyIKK21zZ3N0ciAi5LiN6IO96Kej5p6QICclcycg5Lit55qE6KGd56qB5aGKIgorCisjOiByZXJlcmUuYzo2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHV0aW1lKCkgb24gJyVzJyIKK21zZ3N0ciAi5ZyoICclcycg5LiK5ZG85Y+rIHV0aW1lKCkg5aSx5pWXIgorCisjOiByZXJlcmUuYzo2OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAid3JpdGluZyAnJXMnIGZhaWxlZCIKK21zZ3N0ciAi5a+r5YWlICclcycg5aSx5pWXIgorCisjOiByZXJlcmUuYzo3MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3RhZ2VkICclcycgdXNpbmcgcHJldmlvdXMgcmVzb2x1dGlvbi4iCittc2dzdHIgIuS9v+eUqOS5i+WJjeeahOino+axuuaWueahiOaaq+WtmCAnJXMn44CCIgorCisjOiByZXJlcmUuYzo3NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgcmVzb2x1dGlvbiBmb3IgJyVzJy4iCittc2dzdHIgIuW3suiomOmMhCAnJXMnIOeahOino+axuuaWueahiOOAgiIKKworIzogcmVyZXJlLmM6Nzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlc29sdmVkICclcycgdXNpbmcgcHJldmlvdXMgcmVzb2x1dGlvbi4iCittc2dzdHIgIuS9v+eUqOS5i+WJjeeahOino+axuuaWueahiOino+axuiAnJXMn44CCIgorCisjOiByZXJlcmUuYzo4MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHVubGluayBzdHJheSAnJXMnIgorbXNnc3RyICLkuI3og73liKrpmaQgc3RyYXkgJyVzJyIKKworIzogcmVyZXJlLmM6ODA3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIHByZWltYWdlIGZvciAnJXMnIgorbXNnc3RyICLngrogJyVzJyDoqJjpjIQgcHJlaW1hZ2UiCisKKyM6IHJlcmVyZS5jOjg4MSBzdWJtb2R1bGUuYzoyMDc4IGJ1aWx0aW4vbG9nLmM6MTg3MQorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NTQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi5LiN6IO95bu656uL55uu6YyEICclcyciCisKKyM6IHJlcmVyZS5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHVwZGF0ZSBjb25mbGljdGVkIHN0YXRlIGluICclcyciCittc2dzdHIgIuabtOaWsCAnJXMnIOS4reeahOihneeqgeeLgOaFi+WkseaVlyIKKworIzogcmVyZXJlLmM6MTA2OCByZXJlcmUuYzoxMDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHJlbWVtYmVyZWQgcmVzb2x1dGlvbiBmb3IgJyVzJyIKK21zZ3N0ciAi5rKS5pyJ54K6ICclcycg6KiY5oa255qE6Kej5rG65pa55qGIIgorCisjOiByZXJlcmUuYzoxMDc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCB1bmxpbmsgJyVzJyIKK21zZ3N0ciAi5LiN6IO95Yiq6ZmkICclcyciCisKKyM6IHJlcmVyZS5jOjEwODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRlZCBwcmVpbWFnZSBmb3IgJyVzJyIKK21zZ3N0ciAi5bey54K6ICclcycg5pu05pawIHByZWltYWdlIgorCisjOiByZXJlcmUuYzoxMDk2CisjLCBjLWZvcm1hdAorbXNnaWQgIkZvcmdvdCByZXNvbHV0aW9uIGZvciAnJXMnXG4iCittc2dzdHIgIuW/mOiomCAnJXMnIOeahOino+axuuaWueahiFxuIgorCisjOiByZXJlcmUuYzoxMTk5Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gcnItY2FjaGUgZGlyZWN0b3J5IgorbXNnc3RyICLkuI3og73plovllZ8gcnItY2FjaGUg55uu6YyEIgorCisjOiByZXZpc2lvbi5jOjI0OTcKK21zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoIGFwcGVhcnMgdG8gYmUgYnJva2VuIgorbXNnc3RyICLmgqjnmoTnm67liY3liIbmlK/lpb3lg4/ooqvmkI3lo54iCisKKyM6IHJldmlzaW9uLmM6MjUwMAorIywgYy1mb3JtYXQKK21zZ2lkICJ5b3VyIGN1cnJlbnQgYnJhbmNoICclcycgZG9lcyBub3QgaGF2ZSBhbnkgY29tbWl0cyB5ZXQiCittc2dzdHIgIuaCqOeahOebruWJjeWIhuaUryAnJXMnIOWwmueEoeS7u+S9leaPkOS6pCIKKworIzogcmV2aXNpb24uYzoyNzA4Cittc2dpZCAiLS1maXJzdC1wYXJlbnQgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1iaXNlY3QiCittc2dzdHIgIi0tZmlyc3QtcGFyZW50IOiIhyAtLWJpc2VjdCDkuI3nm7jlrrkiCisKKyM6IHJldmlzaW9uLmM6MjcxMgorbXNnaWQgIi1MIGRvZXMgbm90IHlldCBzdXBwb3J0IGRpZmYgZm9ybWF0cyBiZXNpZGVzIC1wIGFuZCAtcyIKK21zZ3N0ciAiLUwg5bCa5LiN5pSv5o+0IC1wIOWSjCAtcyDkuYvlpJbnmoTlt67nlbDmoLzlvI8iCisKKyM6IHJ1bi1jb21tYW5kLmM6NzYzCittc2dpZCAib3BlbiAvZGV2L251bGwgZmFpbGVkIgorbXNnc3RyICLkuI3og73plovllZ8gL2Rldi9udWxsIgorCisjOiBydW4tY29tbWFuZC5jOjEyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBhc3luYyB0aHJlYWQ6ICVzIgorbXNnc3RyICLkuI3og73lu7rnq4sgYXN5bmMg5Z+36KGM57eS77yaJXMiCisKKyM6IHJ1bi1jb21tYW5kLmM6MTMzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlICclcycgaG9vayB3YXMgaWdub3JlZCBiZWNhdXNlIGl0J3Mgbm90IHNldCBhcyBleGVjdXRhYmxlLlxuIgorIllvdSBjYW4gZGlzYWJsZSB0aGlzIHdhcm5pbmcgd2l0aCBgZ2l0IGNvbmZpZyBhZHZpY2UuaWdub3JlZEhvb2sgZmFsc2VgLiIKK21zZ3N0ciAiIgorIuWboOeCuuaykuacieWwh+aOm+mJpCAnJXMnIOioreWumueCuuWPr+Wft+ihjO+8jOaOm+mJpOiiq+W/veeVpeOAguaCqOWPr+S7pemAj+mBjlxuIgorIuioreWumiBgZ2l0IGNvbmZpZyBhZHZpY2UuaWdub3JlZEhvb2sgZmFsc2VgIOS+humXnOmWiemAmeaineitpuWRiuOAgiIKKworIzogc2VuZC1wYWNrLmM6MTQ0Cittc2dpZCAidW5leHBlY3RlZCBmbHVzaCBwYWNrZXQgd2hpbGUgcmVhZGluZyByZW1vdGUgdW5wYWNrIHN0YXR1cyIKK21zZ3N0ciAi6K6A5Y+W6YGg56uv6Kej5YyF54uA5oWL5pmC5pS25Yiw5oSP5aSW55qEIGZsdXNoIOWMhSIKKworIzogc2VuZC1wYWNrLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSByZW1vdGUgdW5wYWNrIHN0YXR1czogJXMiCittc2dzdHIgIuS4jeiDveino+aekOmBoOerr+ino+WMheeLgOaFi++8miVzIgorCisjOiBzZW5kLXBhY2suYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlIHVucGFjayBmYWlsZWQ6ICVzIgorbXNnc3RyICLpgaDnq6/op6PljIXlpLHmlZfvvJolcyIKKworIzogc2VuZC1wYWNrLmM6MzA5Cittc2dpZCAiZmFpbGVkIHRvIHNpZ24gdGhlIHB1c2ggY2VydGlmaWNhdGUiCittc2dzdHIgIueCuuaOqOmAgeitieabuOexpOWQjeWkseaVlyIKKworIzogc2VuZC1wYWNrLmM6NDIzCittc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCAtLXNpZ25lZCBwdXNoIgorbXNnc3RyICLmjqXmlLbnq6/kuI3mlK/mj7TnsL3lkI3mjqjpgIEiCisKKyM6IHNlbmQtcGFjay5jOjQyNQorbXNnaWQgIiIKKyJub3Qgc2VuZGluZyBhIHB1c2ggY2VydGlmaWNhdGUgc2luY2UgdGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCAtLSIKKyJzaWduZWQgcHVzaCIKK21zZ3N0ciAi5pyq5YKz6YCB5o6o6YCB6K2J5pu477yM5Zug54K65o6l5pS256uv5LiN5pSv5o+057C95ZCN5o6o6YCBIgorCisjOiBzZW5kLXBhY2suYzo0MzcKK21zZ2lkICJ0aGUgcmVjZWl2aW5nIGVuZCBkb2VzIG5vdCBzdXBwb3J0IC0tYXRvbWljIHB1c2giCittc2dzdHIgIuaOpeaUtuerr+S4jeaUr+aPtOWOn+WtkOaOqOmAgSIKKworIzogc2VuZC1wYWNrLmM6NDQyCittc2dpZCAidGhlIHJlY2VpdmluZyBlbmQgZG9lcyBub3Qgc3VwcG9ydCBwdXNoIG9wdGlvbnMiCittc2dzdHIgIuaOpeaUtuerr+S4jeaUr+aPtOaOqOmAgemBuOmghSIKKworIzogc2VxdWVuY2VyLmM6MTkxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tbWl0IG1lc3NhZ2UgY2xlYW51cCBtb2RlICclcyciCittc2dzdHIgIueEoeaViOeahOaPkOS6pOioiuaBr+a4heeQhuaooeW8jyAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzoyOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGRlbGV0ZSAnJXMnIgorbXNnc3RyICLnhKHms5XliKrpmaQgJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MzE1IGJ1aWx0aW4vcmViYXNlLmM6Nzg1IGJ1aWx0aW4vcmViYXNlLmM6MTc1MCBidWlsdGluL3JtLmM6Mzg1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZW1vdmUgJyVzJyIKK21zZ3N0ciAi54Sh5rOV5Yiq6ZmkICclcyciCisKKyM6IHNlcXVlbmNlci5jOjMyNQorbXNnaWQgInJldmVydCIKK21zZ3N0ciAi6YKE5Y6fIgorCisjOiBzZXF1ZW5jZXIuYzozMjcKK21zZ2lkICJjaGVycnktcGljayIKK21zZ3N0ciAi5o+A6YG4IgorCisjOiBzZXF1ZW5jZXIuYzozMjkKK21zZ2lkICJyZWJhc2UiCittc2dzdHIgInJlYmFzZSIKKworIzogc2VxdWVuY2VyLmM6MzMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uOiAlZCIKK21zZ3N0ciAi5pyq55+l5YuV5L2c77yaJWQiCisKKyM6IHNlcXVlbmNlci5jOjM4OQorbXNnaWQgIiIKKyJhZnRlciByZXNvbHZpbmcgdGhlIGNvbmZsaWN0cywgbWFyayB0aGUgY29ycmVjdGVkIHBhdGhzXG4iCisid2l0aCAnZ2l0IGFkZCA8cGF0aHM+JyBvciAnZ2l0IHJtIDxwYXRocz4nIgorbXNnc3RyICIiCisi6KGd56qB6Kej5rG65a6M55Wi5b6M77yM55SoICdnaXQgYWRkIDzot6/lvpE+JyDmiJYgJ2dpdCBybSA86Lev5b6RPidcbiIKKyLmjIfku6TmqJnoqJjkv67mraPlvoznmoTmqpTmoYgiCisKKyM6IHNlcXVlbmNlci5jOjM5MgorbXNnaWQgIiIKKyJhZnRlciByZXNvbHZpbmcgdGhlIGNvbmZsaWN0cywgbWFyayB0aGUgY29ycmVjdGVkIHBhdGhzXG4iCisid2l0aCAnZ2l0IGFkZCA8cGF0aHM+JyBvciAnZ2l0IHJtIDxwYXRocz4nXG4iCisiYW5kIGNvbW1pdCB0aGUgcmVzdWx0IHdpdGggJ2dpdCBjb21taXQnIgorbXNnc3RyICIiCisi6KGd56qB6Kej5rG65a6M55Wi5b6M77yM55SoICdnaXQgYWRkIDzot6/lvpE+JyDmiJYgJ2dpdCBybSA86Lev5b6RPidcbiIKKyLlsI3kv67mraPlvoznmoTmqpTmoYjlgZrmqJnoqJjvvIznhLblvoznlKggJ2dpdCBjb21taXQnIOaPkOS6pCIKKworIzogc2VxdWVuY2VyLmM6NDA1IHNlcXVlbmNlci5jOjI5MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGxvY2sgJyVzJyIKK21zZ3N0ciAi5LiN6IO96Y6W5a6aICclcyciCisKKyM6IHNlcXVlbmNlci5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgd3JpdGUgZW9sIHRvICclcyciCittc2dzdHIgIuS4jeiDveWwh+aPm+ihjOespuiZn+Wvq+WFpSAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzo0MTcgc2VxdWVuY2VyLmM6MjcwNiBzZXF1ZW5jZXIuYzoyOTA3IHNlcXVlbmNlci5jOjI5MjEKKyM6IHNlcXVlbmNlci5jOjMxODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZpbmFsaXplICclcyciCittc2dzdHIgIueEoeazleWujOaIkCAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzo0NDAgc2VxdWVuY2VyLmM6MTYxMyBzZXF1ZW5jZXIuYzoyNzI2IHNlcXVlbmNlci5jOjMxNjcKKyM6IHNlcXVlbmNlci5jOjMyNzYgYnVpbHRpbi9hbS5jOjI0OSBidWlsdGluL2NvbW1pdC5jOjc4NyBidWlsdGluL21lcmdlLmM6MTEyMAorIzogYnVpbHRpbi9yZWJhc2UuYzo1OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgJyVzJyIKK21zZ3N0ciAi5LiN6IO96K6A5Y+WICclcyciCisKKyM6IHNlcXVlbmNlci5jOjQ2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ5b3VyIGxvY2FsIGNoYW5nZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXMuIgorbXNnc3RyICLmgqjnmoTmnKzmqZ/kv67mlLnlsIfooqslc+imhuiTi+OAgiIKKworIzogc2VxdWVuY2VyLmM6NDcwCittc2dpZCAiY29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQuIgorbXNnc3RyICLmj5DkuqTmgqjnmoTkv67mlLnmiJblhLLol4/lvozlho3nubznuozjgIIiCisKKyM6IHNlcXVlbmNlci5jOjUwMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFzdC1mb3J3YXJkIgorbXNnc3RyICIlc++8muW/q+i9iSIKKworIzogc2VxdWVuY2VyLmM6NTQxIGJ1aWx0aW4vdGFnLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgY2xlYW51cCBtb2RlICVzIgorbXNnc3RyICLnhKHmlYjnmoTmuIXnkIbmqKHlvI8gJXMiCisKKyMuIFRSQU5TTEFUT1JTOiAlcyB3aWxsIGJlICJyZXZlcnQiLCAiY2hlcnJ5LXBpY2siIG9yCisjLiAicmViYXNlIi4KKyMuCisjOiBzZXF1ZW5jZXIuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IFVuYWJsZSB0byB3cml0ZSBuZXcgaW5kZXggZmlsZSIKK21zZ3N0ciAiJXPvvJrnhKHms5Xlr6vlhaXmlrDntKLlvJXmqpTmoYgiCisKKyM6IHNlcXVlbmNlci5jOjY1MgorbXNnaWQgInVuYWJsZSB0byB1cGRhdGUgY2FjaGUgdHJlZSIKK21zZ3N0ciAi5LiN6IO95pu05paw5b+r5Y+W5qi5IgorCisjOiBzZXF1ZW5jZXIuYzo2NjYKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIGNvbW1pdCIKK21zZ3N0ciAi5LiN6IO96Kej5p6QIEhFQUQg5o+Q5LqkIgorCisjOiBzZXF1ZW5jZXIuYzo3NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8ga2V5IHByZXNlbnQgaW4gJyUuKnMnIgorbXNnc3RyICLlnKggJyUuKnMnIOS4reaykuaciSBrZXkiCisKKyM6IHNlcXVlbmNlci5jOjc1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVxdW90ZSB2YWx1ZSBvZiAnJXMnIgorbXNnc3RyICLnhKHms5XngrogJyVzJyDnmoTlgLzljrvlvJXomZ8iCisKKyM6IHNlcXVlbmNlci5jOjc5NCB3cmFwcGVyLmM6MTkwIHdyYXBwZXIuYzozNjAgYnVpbHRpbi9hbS5jOjcxMAorIzogYnVpbHRpbi9hbS5jOjgwMiBidWlsdGluL21lcmdlLmM6MTExNyBidWlsdGluL3JlYmFzZS5jOjEwNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG9wZW4gJyVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWfICclcycg6YCy6KGM6K6A5Y+WIgorCisjOiBzZXF1ZW5jZXIuYzo4MDQKK21zZ2lkICInR0lUX0FVVEhPUl9OQU1FJyBhbHJlYWR5IGdpdmVuIgorbXNnc3RyICLlt7LntpPntablh7ogJ0dJVF9BVVRIT1JfTkFNRSciCisKKyM6IHNlcXVlbmNlci5jOjgwOQorbXNnaWQgIidHSVRfQVVUSE9SX0VNQUlMJyBhbHJlYWR5IGdpdmVuIgorbXNnc3RyICLlt7LntpPntablh7ogJ0dJVF9BVVRIT1JfRU1BSUwnIgorCisjOiBzZXF1ZW5jZXIuYzo4MTQKK21zZ2lkICInR0lUX0FVVEhPUl9EQVRFJyBhbHJlYWR5IGdpdmVuIgorbXNnc3RyICLlt7LntpPntablh7ogJ0dJVF9BVVRIT1JfREFURSciCisKKyM6IHNlcXVlbmNlci5jOjgxOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHZhcmlhYmxlICclcyciCittc2dzdHIgIuacquefpeiuiuaVuCAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzo4MjMKK21zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX05BTUUnIgorbXNnc3RyICLnvLrlsJEgJ0dJVF9BVVRIT1JfTkFNRSciCisKKyM6IHNlcXVlbmNlci5jOjgyNQorbXNnaWQgIm1pc3NpbmcgJ0dJVF9BVVRIT1JfRU1BSUwnIgorbXNnc3RyICLnvLrlsJEgJ0dJVF9BVVRIT1JfRU1BSUwnIgorCisjOiBzZXF1ZW5jZXIuYzo4MjcKK21zZ2lkICJtaXNzaW5nICdHSVRfQVVUSE9SX0RBVEUnIgorbXNnc3RyICLnvLrlsJEgJ0dJVF9BVVRIT1JfREFURSciCisKKyM6IHNlcXVlbmNlci5jOjg3NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisieW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWVcbiIKKyJJZiB0aGVzZSBjaGFuZ2VzIGFyZSBtZWFudCB0byBiZSBzcXVhc2hlZCBpbnRvIHRoZSBwcmV2aW91cyBjb21taXQsIHJ1bjpcbiIKKyJcbiIKKyIgIGdpdCBjb21taXQgLS1hbWVuZCAlc1xuIgorIlxuIgorIklmIHRoZXkgYXJlIG1lYW50IHRvIGdvIGludG8gYSBuZXcgY29tbWl0LCBydW46XG4iCisiXG4iCisiICBnaXQgY29tbWl0ICVzXG4iCisiXG4iCisiSW4gYm90aCBjYXNlcywgb25jZSB5b3UncmUgZG9uZSwgY29udGludWUgd2l0aDpcbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorbXNnc3RyICIiCisi5oKo55qE5bel5L2c5Y2A5Lit5a2Y5Zyo5bey5pqr5a2Y55qE5L+u5pS5XG4iCisi5aaC5p6c6YCZ5Lqb5L+u5pS56ZyA6KaB6KKr5L215YWl5YmN5LiA5YCL5o+Q5Lqk77yM5Z+36KGM77yaXG4iCisiXG4iCisiICBnaXQgY29tbWl0IC0tYW1lbmQgJXNcbiIKKyJcbiIKKyLlpoLmnpzpgJnkupvkv67mlLnopoHlvaLmiJDkuIDlgIvmlrDmj5DkuqTvvIzln7fooYzvvJpcbiIKKyJcbiIKKyIgIGdpdCBjb21taXQgJXNcbiIKKyJcbiIKKyLnhKHoq5blk6rnqK7mg4Xms4HvvIznlbbmgqjlrozmiJDmj5DkuqTvvIznubznuozln7fooYzvvJpcbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorCisjOiBzZXF1ZW5jZXIuYzoxMTQ4Cittc2dpZCAiJ3ByZXBhcmUtY29tbWl0LW1zZycgaG9vayBmYWlsZWQiCittc2dzdHIgIidwcmVwYXJlLWNvbW1pdC1tc2cnIOaOm+mJpOWkseaVlyIKKworIzogc2VxdWVuY2VyLmM6MTE1NAorbXNnaWQgIiIKKyJZb3VyIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgd2VyZSBjb25maWd1cmVkIGF1dG9tYXRpY2FsbHkgYmFzZWRcbiIKKyJvbiB5b3VyIHVzZXJuYW1lIGFuZCBob3N0bmFtZS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhleSBhcmUgYWNjdXJhdGUuXG4iCisiWW91IGNhbiBzdXBwcmVzcyB0aGlzIG1lc3NhZ2UgYnkgc2V0dGluZyB0aGVtIGV4cGxpY2l0bHkuIFJ1biB0aGVcbiIKKyJmb2xsb3dpbmcgY29tbWFuZCBhbmQgZm9sbG93IHRoZSBpbnN0cnVjdGlvbnMgaW4geW91ciBlZGl0b3IgdG8gZWRpdFxuIgorInlvdXIgY29uZmlndXJhdGlvbiBmaWxlOlxuIgorIlxuIgorIiAgICBnaXQgY29uZmlnIC0tZ2xvYmFsIC0tZWRpdFxuIgorIlxuIgorIkFmdGVyIGRvaW5nIHRoaXMsIHlvdSBtYXkgZml4IHRoZSBpZGVudGl0eSB1c2VkIGZvciB0aGlzIGNvbW1pdCB3aXRoOlxuIgorIlxuIgorIiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKK21zZ3N0ciAiIgorIuaCqOeahOWnk+WQjeWSjOS/oeS7tuS9jeWdgOWfuuaWvOeZu+WFpeWQjeeoseWSjOS4u+apn+WQjeeoseiHquWLleioreWumuOAguiri+aqouafpeWug+WAkeato+eiulxuIgorIuiIh+WQpuOAguaCqOWPr+S7peWwjeWFtumAsuihjOioreWumuS7peWFjeWGjeWHuuePvuacrOaPkOekuuioiuaBr+OAguWft+ihjOWmguS4i+aMh+S7pOWcqOe3qOi8r+WZqFxuIgorIuS4ree3qOi8r+aCqOeahOioreWumuaqlOahiO+8mlxuIgorIlxuIgorIiAgICBnaXQgY29uZmlnIC0tZ2xvYmFsIC0tZWRpdFxuIgorIlxuIgorIuioreWumuWujOeVouW+jO+8jOaCqOWPr+S7peeUqOS4i+mdoueahOaMh+S7pOS+huS/ruato+acrOasoeaPkOS6pOaJgOS9v+eUqOeahOS9v+eUqOiAhei6q+S7ve+8mlxuIgorIlxuIgorIiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKKworIzogc2VxdWVuY2VyLmM6MTE2NworbXNnaWQgIiIKKyJZb3VyIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgd2VyZSBjb25maWd1cmVkIGF1dG9tYXRpY2FsbHkgYmFzZWRcbiIKKyJvbiB5b3VyIHVzZXJuYW1lIGFuZCBob3N0bmFtZS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhleSBhcmUgYWNjdXJhdGUuXG4iCisiWW91IGNhbiBzdXBwcmVzcyB0aGlzIG1lc3NhZ2UgYnkgc2V0dGluZyB0aGVtIGV4cGxpY2l0bHk6XG4iCisiXG4iCisiICAgIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5uYW1lIFwiWW91ciBOYW1lXCJcbiIKKyIgICAgZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLmVtYWlsIHlvdUBleGFtcGxlLmNvbVxuIgorIlxuIgorIkFmdGVyIGRvaW5nIHRoaXMsIHlvdSBtYXkgZml4IHRoZSBpZGVudGl0eSB1c2VkIGZvciB0aGlzIGNvbW1pdCB3aXRoOlxuIgorIlxuIgorIiAgICBnaXQgY29tbWl0IC0tYW1lbmQgLS1yZXNldC1hdXRob3JcbiIKK21zZ3N0ciAiIgorIuaCqOeahOWnk+WQjeWSjOS/oeS7tuS9jeWdgOWfuuaWvOeZu+WFpeWQjeeoseWSjOS4u+apn+WQjeeoseiHquWLleioreWumuOAguiri+aqouafpeWug+WAkeato+eiulxuIgorIuiIh+WQpuOAguaCqOWPr+S7peWwjeWFtumAsuihjOioreWumuS7peWFjeWGjeWHuuePvuacrOaPkOekuuioiuaBr++8mlxuIgorIlxuIgorIiAgICBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIubmFtZSBcIllvdXIgTmFtZVwiXG4iCisiICAgIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5lbWFpbCB5b3VAZXhhbXBsZS5jb21cbiIKKyJcbiIKKyLoqK3lrprlroznlaLlvozvvIzmgqjlj6/ku6XnlKjkuIvpnaLnmoTmjIfku6Tkvobkv67mraPmnKzmrKHmj5DkuqTmiYDkvb/nlKjnmoTkvb/nlKjogIXouqvku73vvJpcbiIKKyJcbiIKKyIgICAgZ2l0IGNvbW1pdCAtLWFtZW5kIC0tcmVzZXQtYXV0aG9yXG4iCisKKyM6IHNlcXVlbmNlci5jOjEyMDkKK21zZ2lkICJjb3VsZG4ndCBsb29rIHVwIG5ld2x5IGNyZWF0ZWQgY29tbWl0IgorbXNnc3RyICLnhKHms5Xmib7liLDmlrDlu7rnq4vnmoTmj5DkuqQiCisKKyM6IHNlcXVlbmNlci5jOjEyMTEKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgbmV3bHkgY3JlYXRlZCBjb21taXQiCittc2dzdHIgIuS4jeiDveino+aekOaWsOW7uueri+eahOaPkOS6pCIKKworIzogc2VxdWVuY2VyLmM6MTI1NworbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIEhFQUQgYWZ0ZXIgY3JlYXRpbmcgY29tbWl0IgorbXNnc3RyICLlu7rnq4vmj5DkuqTlvozvvIzkuI3og73op6PmnpAgSEVBRCIKKworIzogc2VxdWVuY2VyLmM6MTI1OQorbXNnaWQgImRldGFjaGVkIEhFQUQiCittc2dzdHIgIuWIhumboumWi+mgreaMh+aomSIKKworIyAg6K2v6ICF77ya5Lit5paH5a2X5Liy5ou85o6l77yM5Y+v5Yiq6Zmk5YmN5bCO56m65qC8CisjOiBzZXF1ZW5jZXIuYzoxMjYzCittc2dpZCAiIChyb290LWNvbW1pdCkiCittc2dzdHIgIiAo5qC55o+Q5LqkKSIKKworIzogc2VxdWVuY2VyLmM6MTI4NAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBIRUFEIgorbXNnc3RyICLkuI3og73op6PmnpAgSEVBRCIKKworIzogc2VxdWVuY2VyLmM6MTI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJIRUFEICVzIGlzIG5vdCBhIGNvbW1pdCEiCittc2dzdHIgIkhFQUQgJXMg5LiN5piv5LiA5YCL5o+Q5Lqk77yBIgorCisjOiBzZXF1ZW5jZXIuYzoxMjkwIHNlcXVlbmNlci5jOjEzNjQgYnVpbHRpbi9jb21taXQuYzoxNTc0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIEhFQUQgY29tbWl0IgorbXNnc3RyICLkuI3og73op6PmnpAgSEVBRCDmj5DkuqQiCisKKyM6IHNlcXVlbmNlci5jOjEzNDIgc2VxdWVuY2VyLmM6MTk2OAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBjb21taXQgYXV0aG9yIgorbXNnc3RyICLkuI3og73op6PmnpDmj5DkuqTkvZzogIUiCisKKyM6IHNlcXVlbmNlci5jOjEzNTMgYnVpbHRpbi9hbS5jOjE1NjYgYnVpbHRpbi9tZXJnZS5jOjY4NworbXNnaWQgImdpdCB3cml0ZS10cmVlIGZhaWxlZCB0byB3cml0ZSBhIHRyZWUiCittc2dzdHIgImdpdCB3cml0ZS10cmVlIOeEoeazleWvq+WFpeaoueeLgOeJqeS7tiIKKworIzogc2VxdWVuY2VyLmM6MTM4NiBzZXF1ZW5jZXIuYzoxNDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGNvbW1pdCBtZXNzYWdlIGZyb20gJyVzJyIKK21zZ3N0ciAi5LiN6IO95b6eICclcycg6K6A5Y+W5o+Q5Lqk6Kqq5piOIgorCisjOiBzZXF1ZW5jZXIuYzoxNDEzIGJ1aWx0aW4vYW0uYzoxNTg4IGJ1aWx0aW4vY29tbWl0LmM6MTY3MyBidWlsdGluL21lcmdlLmM6ODg2CisjOiBidWlsdGluL21lcmdlLmM6OTExCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGNvbW1pdCBvYmplY3QiCittc2dzdHIgIuWvq+aPkOS6pOeJqeS7tuWkseaVlyIKKworIzogc2VxdWVuY2VyLmM6MTQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgY29tbWl0ICVzIgorbXNnc3RyICLkuI3og73op6PmnpDmj5DkuqQgJXMiCisKKyM6IHNlcXVlbmNlci5jOjE0NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHBhcnNlIHBhcmVudCBjb21taXQgJXMiCittc2dzdHIgIuS4jeiDveino+aekOeItuaPkOS6pCAlcyIKKworIzogc2VxdWVuY2VyLmM6MTU2MiBzZXF1ZW5jZXIuYzoxNjczCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tbWFuZDogJWQiCittc2dzdHIgIuacquefpeaMh+S7pO+8miVkIgorCisjOiBzZXF1ZW5jZXIuYzoxNjIwIHNlcXVlbmNlci5jOjE2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mICVkIGNvbW1pdHMuIgorbXNnc3RyICLpgJnmmK/kuIDlgIsgJWQg5YCL5o+Q5Lqk55qE57WE5ZCI44CCIgorCisjOiBzZXF1ZW5jZXIuYzoxNjMwCittc2dpZCAibmVlZCBhIEhFQUQgdG8gZml4dXAiCittc2dzdHIgIumcgOimgeS4gOWAiyBIRUFEIOS+huS/ruW+qSIKKworIzogc2VxdWVuY2VyLmM6MTYzMiBzZXF1ZW5jZXIuYzozMjEyCittc2dpZCAiY291bGQgbm90IHJlYWQgSEVBRCIKK21zZ3N0ciAi5LiN6IO96K6A5Y+WIEhFQUQiCisKKyM6IHNlcXVlbmNlci5jOjE2MzQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBIRUFEJ3MgY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIuS4jeiDveiugOWPliBIRUFEIOeahOaPkOS6pOiqquaYjiIKKworIzogc2VxdWVuY2VyLmM6MTY0MAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgd3JpdGUgJyVzJyIKK21zZ3N0ciAi5LiN6IO95a+rICclcyciCisKKyM6IHNlcXVlbmNlci5jOjE2NDcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5NgorbXNnaWQgIlRoaXMgaXMgdGhlIDFzdCBjb21taXQgbWVzc2FnZToiCittc2dzdHIgIumAmeaYr+esrOS4gOWAi+aPkOS6pOiqquaYju+8miIKKworIzogc2VxdWVuY2VyLmM6MTY1NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBjb21taXQgbWVzc2FnZSBvZiAlcyIKK21zZ3N0ciAi5LiN6IO96K6A5Y+WICVzIOeahOaPkOS6pOiqquaYjiIKKworIzogc2VxdWVuY2VyLmM6MTY2MgorIywgYy1mb3JtYXQKK21zZ2lkICJUaGlzIGlzIHRoZSBjb21taXQgbWVzc2FnZSAjJWQ6IgorbXNnc3RyICLpgJnmmK/mj5DkuqToqqrmmI4gIyVk77yaIgorCisjOiBzZXF1ZW5jZXIuYzoxNjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZSBjb21taXQgbWVzc2FnZSAjJWQgd2lsbCBiZSBza2lwcGVkOiIKK21zZ3N0ciAi5o+Q5Lqk6Kqq5piOICMlZCDlsIfooqvot7PpgY7vvJoiCisKKyM6IHNlcXVlbmNlci5jOjE3NTYKK21zZ2lkICJ5b3VyIGluZGV4IGZpbGUgaXMgdW5tZXJnZWQuIgorbXNnc3RyICLmgqjnmoTntKLlvJXmqpTmoYjmnKrlrozmiJDlkIjkvbXjgIIiCisKKyM6IHNlcXVlbmNlci5jOjE3NjMKK21zZ2lkICJjYW5ub3QgZml4dXAgcm9vdCBjb21taXQiCittc2dzdHIgIuS4jeiDveS/ruW+qeagueaPkOS6pCIKKworIzogc2VxdWVuY2VyLmM6MTc4MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb21taXQgJXMgaXMgYSBtZXJnZSBidXQgbm8gLW0gb3B0aW9uIHdhcyBnaXZlbi4iCittc2dzdHIgIuaPkOS6pCAlcyDmmK/kuIDlgIvlkIjkvbXmj5DkuqTkvYbmnKrmj5DkvpsgLW0g6YG46aCF44CCIgorCisjOiBzZXF1ZW5jZXIuYzoxNzkwIHNlcXVlbmNlci5jOjE3OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0ICVzIGRvZXMgbm90IGhhdmUgcGFyZW50ICVkIgorbXNnc3RyICLmj5DkuqQgJXMg5rKS5pyJ56ysICVkIOWAi+eItuaPkOS6pCIKKworIzogc2VxdWVuY2VyLmM6MTgwNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZ2V0IGNvbW1pdCBtZXNzYWdlIGZvciAlcyIKK21zZ3N0ciAi5LiN6IO95b6X5YiwICVzIOeahOaPkOS6pOiqquaYjiIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBmaXJzdCAlcyB3aWxsIGJlIGEgInRvZG8iIGNvbW1hbmQgbGlrZQorIy4gInJldmVydCIgb3IgInBpY2siLCB0aGUgc2Vjb25kICVzIGEgU0hBMS4KKyM6IHNlcXVlbmNlci5jOjE4MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbm5vdCBwYXJzZSBwYXJlbnQgY29tbWl0ICVzIgorbXNnc3RyICIlc++8muS4jeiDveino+aekOeItuaPkOS6pCAlcyIKKworIzogc2VxdWVuY2VyLmM6MTg4OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAi5LiN6IO95bCHICclcycg6YeN5paw5ZG95ZCN54K6ICclcyciCisKKyM6IHNlcXVlbmNlci5jOjE5NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJldmVydCAlcy4uLiAlcyIKK21zZ3N0ciAi5LiN6IO96YKE5Y6fICVzLi4uICVzIgorCisjOiBzZXF1ZW5jZXIuYzoxOTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBhcHBseSAlcy4uLiAlcyIKK21zZ3N0ciAi5LiN6IO95oeJ55SoICVzLi4uICVzIgorCisjOiBzZXF1ZW5jZXIuYzoxOTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImRyb3BwaW5nICVzICVzIC0tIHBhdGNoIGNvbnRlbnRzIGFscmVhZHkgdXBzdHJlYW1cbiIKK21zZ3N0ciAi5ouL5qOEICVzICVzIC0tIOS/ruijnOaqlOeahOWFp+WuueW3suWcqOS4iua4uFxuIgorCisjOiBzZXF1ZW5jZXIuYzoyMDE4CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCAlczogZmFpbGVkIHRvIHJlYWQgdGhlIGluZGV4IgorbXNnc3RyICJnaXQgJXPvvJrnhKHms5XoroDlj5bntKLlvJUiCisKKyM6IHNlcXVlbmNlci5jOjIwMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0ICVzOiBmYWlsZWQgdG8gcmVmcmVzaCB0aGUgaW5kZXgiCittc2dzdHIgImdpdCAlc++8mueEoeazlemHjeaWsOaVtOeQhue0ouW8lSIKKworIzogc2VxdWVuY2VyLmM6MjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkb2VzIG5vdCBhY2NlcHQgYXJndW1lbnRzOiAnJXMnIgorbXNnc3RyICIlcyDkuI3mjqXlj5flj4PmlbjvvJonJXMnIgorCisjOiBzZXF1ZW5jZXIuYzoyMTExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgYXJndW1lbnRzIGZvciAlcyIKK21zZ3N0ciAi57y65bCRICVzIOeahOWPg+aVuCIKKworIzogc2VxdWVuY2VyLmM6MjE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJyVzJyIKK21zZ3N0ciAi54Sh5rOV6Kej5p6QICclcyciCisKKyM6IHNlcXVlbmNlci5jOjIyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lICVkOiAlLipzIgorbXNnc3RyICLnhKHmlYjooYwgJWTvvJolLipzIgorCisjOiBzZXF1ZW5jZXIuYzoyMjE0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCAnJXMnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCittc2dzdHIgIuaykuacieeItuaPkOS6pOeahOaDheazgeS4i+S4jeiDvSAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzoyMjk4Cittc2dpZCAiY2FuY2VsbGluZyBhIGNoZXJyeSBwaWNraW5nIGluIHByb2dyZXNzIgorbXNnc3RyICLmraPlnKjlj5bmtojkuIDlgIvpgLLooYzkuK3nmoTmj4DpgbgiCisKKyM6IHNlcXVlbmNlci5jOjIzMDUKK21zZ2lkICJjYW5jZWxsaW5nIGEgcmV2ZXJ0IGluIHByb2dyZXNzIgorbXNnc3RyICLmraPlnKjlj5bmtojkuIDlgIvpgLLooYzkuK3nmoTpgoTljp8iCisKKyM6IHNlcXVlbmNlci5jOjIzNDkKK21zZ2lkICJwbGVhc2UgZml4IHRoaXMgdXNpbmcgJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nLiIKK21zZ3N0ciAi6KuL55SoICdnaXQgcmViYXNlIC0tZWRpdC10b2RvJyDkvobkv67mlLnjgIIiCisKKyM6IHNlcXVlbmNlci5jOjIzNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW51c2FibGUgaW5zdHJ1Y3Rpb24gc2hlZXQ6ICclcyciCittc2dzdHIgIuS4jeWPr+eUqOeahOaMh+S7pOa4heWWru+8miclcyciCisKKyM6IHNlcXVlbmNlci5jOjIzNTYKK21zZ2lkICJubyBjb21taXRzIHBhcnNlZC4iCittc2dzdHIgIuaykuacieino+aekOaPkOS6pOOAgiIKKworIzogc2VxdWVuY2VyLmM6MjM2NworbXNnaWQgImNhbm5vdCBjaGVycnktcGljayBkdXJpbmcgYSByZXZlcnQuIgorbXNnc3RyICLkuI3og73lnKjpgoTljp/mj5DkuqTkuK3ln7fooYzmj4DpgbjjgIIiCisKKyM6IHNlcXVlbmNlci5jOjIzNjkKK21zZ2lkICJjYW5ub3QgcmV2ZXJ0IGR1cmluZyBhIGNoZXJyeS1waWNrLiIKK21zZ3N0ciAi5LiN6IO95Zyo5o+A6YG45Lit5Z+36KGM6YKE5Y6f5o+Q5Lqk44CCIgorCisjOiBzZXF1ZW5jZXIuYzoyNDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdmFsdWUgZm9yICVzOiAlcyIKK21zZ3N0ciAiJXMg55qE5YC854Sh5pWI77yaJXMiCisKKyM6IHNlcXVlbmNlci5jOjI1NDAKK21zZ2lkICJ1bnVzYWJsZSBzcXVhc2gtb250byIKK21zZ3N0ciAi5LiN5Y+v55So55qEIHNxdWFzaC1vbnRvIgorCisjOiBzZXF1ZW5jZXIuYzoyNTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBvcHRpb25zIHNoZWV0OiAnJXMnIgorbXNnc3RyICLmoLzlvI/pjK/oqqTnmoTpgbjpoIXmuIXllq7vvJonJXMnIgorCisjOiBzZXF1ZW5jZXIuYzoyNjQ0IHNlcXVlbmNlci5jOjQzNjEKK21zZ2lkICJlbXB0eSBjb21taXQgc2V0IHBhc3NlZCIKK21zZ3N0ciAi5o+Q5L6b5LqG56m655qE5o+Q5Lqk6ZuGIgorCisjOiBzZXF1ZW5jZXIuYzoyNjYwCittc2dpZCAicmV2ZXJ0IGlzIGFscmVhZHkgaW4gcHJvZ3Jlc3MiCittc2dzdHIgIuS4gOWAi+mChOWOn+WLleS9nOW3suWcqOmAsuihjCIKKworIzogc2VxdWVuY2VyLmM6MjY2MgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnkgXCJnaXQgcmV2ZXJ0ICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIgorbXNnc3RyICLlmJfoqaYgXCJnaXQgcmV2ZXJ0ICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIgorCisjOiBzZXF1ZW5jZXIuYzoyNjY1Cittc2dpZCAiY2hlcnJ5LXBpY2sgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIKK21zZ3N0ciAi5o+A6YG45YuV5L2c5bey5Zyo6YCy6KGMIgorCisjOiBzZXF1ZW5jZXIuYzoyNjY3CisjLCBjLWZvcm1hdAorbXNnaWQgInRyeSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8ICVzLS1hYm9ydCB8IC0tcXVpdClcIiIKK21zZ3N0ciAi5ZiX6KmmIFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIgorCisjOiBzZXF1ZW5jZXIuYzoyNjgxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgc2VxdWVuY2VyIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLkuI3og73lu7rnq4vluo/liJfnm67pjIQgJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MjY5NgorbXNnaWQgImNvdWxkIG5vdCBsb2NrIEhFQUQiCittc2dzdHIgIuS4jeiDvemOluWumiBIRUFEIgorCisjOiBzZXF1ZW5jZXIuYzoyNzU2IHNlcXVlbmNlci5jOjQwOTkKK21zZ2lkICJubyBjaGVycnktcGljayBvciByZXZlcnQgaW4gcHJvZ3Jlc3MiCittc2dzdHIgIuaPgOmBuOaIlumChOWOn+WLleS9nOS4puacqumAsuihjCIKKworIzogc2VxdWVuY2VyLmM6Mjc1OCBzZXF1ZW5jZXIuYzoyNzY5Cittc2dpZCAiY2Fubm90IHJlc29sdmUgSEVBRCIKK21zZ3N0ciAi5LiN6IO96Kej5p6QIEhFQUQiCisKKyM6IHNlcXVlbmNlci5jOjI3NjAgc2VxdWVuY2VyLmM6MjgwNAorbXNnaWQgImNhbm5vdCBhYm9ydCBmcm9tIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIgorbXNnc3RyICLkuI3og73lvp7lsJrmnKrlu7rnq4vnmoTliIbmlK/ntYLmraIiCisKKyM6IHNlcXVlbmNlci5jOjI3OTAgYnVpbHRpbi9ncmVwLmM6NzI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuICclcyciCittc2dzdHIgIuS4jeiDvemWi+WVnyAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzoyNzkyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICclcyc6ICVzIgorbXNnc3RyICLkuI3og73oroDlj5YgJyVzJ++8miVzIgorCisjOiBzZXF1ZW5jZXIuYzoyNzkzCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSIKK21zZ3N0ciAi5oSP5aSW55qE5qqU5qGI57WQ5p2fIgorCisjOiBzZXF1ZW5jZXIuYzoyNzk5CisjLCBjLWZvcm1hdAorbXNnaWQgInN0b3JlZCBwcmUtY2hlcnJ5LXBpY2sgSEVBRCBmaWxlICclcycgaXMgY29ycnVwdCIKK21zZ3N0ciAi5YSy5a2Y5o+A6YG45o+Q5Lqk5YmN55qEIEhFQUQg5qqU5qGIICclcycg5pCN5aOeIgorCisjOiBzZXF1ZW5jZXIuYzoyODEwCittc2dpZCAiWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFELiBOb3QgcmV3aW5kaW5nLCBjaGVjayB5b3VyIEhFQUQhIgorbXNnc3RyICLmgqjlpb3lg4/np7vli5XkuoYgSEVBROOAguacquiDvemChOWOn++8jOaqouafpeaCqOeahCBIRUFE77yBIgorCisjOiBzZXF1ZW5jZXIuYzoyODUxCittc2dpZCAibm8gcmV2ZXJ0IGluIHByb2dyZXNzIgorbXNnc3RyICLmspLmnInmraPlnKjpgLLooYznmoTpgoTljp8iCisKKyM6IHNlcXVlbmNlci5jOjI4NTkKK21zZ2lkICJubyBjaGVycnktcGljayBpbiBwcm9ncmVzcyIKK21zZ3N0ciAi5rKS5pyJ5q2j5Zyo6YCy6KGM55qE5o+A6YG4IgorCisjOiBzZXF1ZW5jZXIuYzoyODY5Cittc2dpZCAiZmFpbGVkIHRvIHNraXAgdGhlIGNvbW1pdCIKK21zZ3N0ciAi54Sh5rOV6Lez6YGO6YCZ5YCL5o+Q5LqkIgorCisjOiBzZXF1ZW5jZXIuYzoyODc2Cittc2dpZCAidGhlcmUgaXMgbm90aGluZyB0byBza2lwIgorbXNnc3RyICLmspLmnInopoHot7PpgY7nmoQiCisKKyM6IHNlcXVlbmNlci5jOjI4NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImhhdmUgeW91IGNvbW1pdHRlZCBhbHJlYWR5P1xuIgorInRyeSBcImdpdCAlcyAtLWNvbnRpbnVlXCIiCittc2dzdHIgIiIKKyLmgqjlt7LntpPmj5DkuqTkuobll47vvJ9cbiIKKyLoqaboqaYgXCJnaXQgJXMgLS1jb250aW51ZVwiIgorCisjOiBzZXF1ZW5jZXIuYzozMDAzIHNlcXVlbmNlci5jOjQwMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHVwZGF0ZSAlcyIKK21zZ3N0ciAi5LiN6IO95pu05pawICVzIgorCisjOiBzZXF1ZW5jZXIuYzozMDQyIHNlcXVlbmNlci5jOjM5OTEKK21zZ2lkICJjYW5ub3QgcmVhZCBIRUFEIgorbXNnc3RyICLkuI3og73oroDlj5YgSEVBRCIKKworIzogc2VxdWVuY2VyLmM6MzA1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY29weSAnJXMnIHRvICclcyciCittc2dzdHIgIueEoeazleikh+ijvSAnJXMnIOiHsyAnJXMnIgorCisjOiBzZXF1ZW5jZXIuYzozMDY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgY2FuIGFtZW5kIHRoZSBjb21taXQgbm93LCB3aXRoXG4iCisiXG4iCisiICBnaXQgY29tbWl0IC0tYW1lbmQgJXNcbiIKKyJcbiIKKyJPbmNlIHlvdSBhcmUgc2F0aXNmaWVkIHdpdGggeW91ciBjaGFuZ2VzLCBydW5cbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorbXNnc3RyICIiCisi5oKo54++5Zyo5Y+v5Lul5L+u6KOc6YCZ5YCL5o+Q5Lqk77yM5L2/55SoXG4iCisiXG4iCisiICBnaXQgY29tbWl0IC0tYW1lbmQgJXNcbiIKKyJcbiIKKyLnlbbmgqjlsI3orormm7TmhJ/liLDmu7/mhI/vvIzln7fooYxcbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorCisjOiBzZXF1ZW5jZXIuYzozMDc3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBhcHBseSAlcy4uLiAlLipzIgorbXNnc3RyICLkuI3og73mh4nnlKggJXMuLi4gJS4qcyIKKworIzogc2VxdWVuY2VyLmM6MzA4NAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgbWVyZ2UgJS4qcyIKK21zZ3N0ciAi5LiN6IO95ZCI5L21ICUuKnMiCisKKyM6IHNlcXVlbmNlci5jOjMwOTggc2VxdWVuY2VyLmM6MzEwMiBidWlsdGluL2RpZmZ0b29sLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjb3B5ICclcycgdG8gJyVzJyIKK21zZ3N0ciAi5LiN6IO96KSH6KO9ICclcycg6IezICclcyciCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogc2VxdWVuY2VyLmM6MzEyOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZXhlY3V0aW9uIGZhaWxlZDogJXNcbiIKKyIlc1lvdSBjYW4gZml4IHRoZSBwcm9ibGVtLCBhbmQgdGhlbiBydW5cbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorIlxuIgorbXNnc3RyICIiCisi5Z+36KGM5aSx5pWX77yaJXNcbiIKKyIlc+aCqOWPr+S7peaUueato+ipsuWVj+mhjO+8jOeEtuW+jOWft+ihjFxuIgorIlxuIgorIiAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iCisiXG4iCisKKyM6IHNlcXVlbmNlci5jOjMxMzUKK21zZ2lkICJhbmQgbWFkZSBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZVxuIgorbXNnc3RyICLkuKbkuJTkv67mlLnntKLlvJXlkowv5oiW5bel5L2c5Y2AXG4iCisKKyM6IHNlcXVlbmNlci5jOjMxNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4ZWN1dGlvbiBzdWNjZWVkZWQ6ICVzXG4iCisiYnV0IGxlZnQgY2hhbmdlcyB0byB0aGUgaW5kZXggYW5kL29yIHRoZSB3b3JraW5nIHRyZWVcbiIKKyJDb21taXQgb3Igc3Rhc2ggeW91ciBjaGFuZ2VzLCBhbmQgdGhlbiBydW5cbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorIlxuIgorbXNnc3RyICIiCisi5Z+36KGM5oiQ5Yqf77yaJXNcbiIKKyLkvYbmmK/lnKjntKLlvJXlkowv5oiW5bel5L2c5Y2A5Lit5a2Y5Zyo6K6K5pu0XG4iCisi5o+Q5Lqk5oiW5YSy6JeP5L+u5pS577yM54S25b6M5Z+36KGMXG4iCisiXG4iCisiICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKyJcbiIKKworIzogc2VxdWVuY2VyLmM6MzIwMgorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGxhYmVsIG5hbWU6ICclLipzJyIKK21zZ3N0ciAi6Z2e5rOV55qE5qiZ57Gk5ZCN56ix77yaJyUuKnMnIgorCisjOiBzZXF1ZW5jZXIuYzozMjU2Cittc2dpZCAid3JpdGluZyBmYWtlIHJvb3QgY29tbWl0IgorbXNnc3RyICLlr6vlgb3moLnmj5DkuqQiCisKKyM6IHNlcXVlbmNlci5jOjMyNjEKK21zZ2lkICJ3cml0aW5nIHNxdWFzaC1vbnRvIgorbXNnc3RyICLlr6vlhaUgc3F1YXNoLW9udG8iCisKKyM6IHNlcXVlbmNlci5jOjMyOTkgYnVpbHRpbi9yZWJhc2UuYzo4ODAgYnVpbHRpbi9yZWJhc2UuYzo4ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZpbmQgdHJlZSBvZiAlcyIKK21zZ3N0ciAi54Sh5rOV5om+5YiwICVzIOaMh+WQkeeahOaoueOAgiIKKworIzogc2VxdWVuY2VyLmM6MzM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSAnJXMnIgorbXNnc3RyICLnhKHms5Xop6PmnpAgJyVzJyIKKworIzogc2VxdWVuY2VyLmM6MzM3NQorbXNnaWQgImNhbm5vdCBtZXJnZSB3aXRob3V0IGEgY3VycmVudCByZXZpc2lvbiIKK21zZ3N0ciAi5rKS5pyJ55uu5YmN54mI5pys5LiN6IO95ZCI5L21IgorCisjOiBzZXF1ZW5jZXIuYzozMzk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSAnJS4qcyciCittc2dzdHIgIueEoeazleino+aekCAnJS4qcyciCisKKyM6IHNlcXVlbmNlci5jOjM0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aGluZyB0byBtZXJnZTogJyUuKnMnIgorbXNnc3RyICLnhKHlj6/nlKjlkIjkvbXvvJonJS4qcyciCisKKyM6IHNlcXVlbmNlci5jOjM0MTgKK21zZ2lkICJvY3RvcHVzIG1lcmdlIGNhbm5vdCBiZSBleGVjdXRlZCBvbiB0b3Agb2YgYSBbbmV3IHJvb3RdIgorbXNnc3RyICLnq6DprZrlkIjkuKbkuI3og73lnKjkuIDlgIvmlrDnmoTmoLnmj5DkuqTkuIrln7fooYwiCisKKyM6IHNlcXVlbmNlci5jOjM0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGdldCBjb21taXQgbWVzc2FnZSBvZiAnJXMnIgorbXNnc3RyICLkuI3og73lj5blvpcgJyVzJyDnmoTmj5DkuqToqqrmmI4iCisKKyM6IHNlcXVlbmNlci5jOjM1OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGV2ZW4gYXR0ZW1wdCB0byBtZXJnZSAnJS4qcyciCittc2dzdHIgIueUmuiHs+S4jeiDveWYl+ippuWQiOS9tSAnJS4qcyciCisKKyM6IHNlcXVlbmNlci5jOjM2MTAKK21zZ2lkICJtZXJnZTogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIgorbXNnc3RyICLlkIjkvbXvvJrnhKHms5Xlr6vlhaXmlrDntKLlvJXmqpTmoYgiCisKKyM6IHNlcXVlbmNlci5jOjM2NzkgYnVpbHRpbi9yZWJhc2UuYzo3MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXBwbGllZCBhdXRvc3Rhc2guXG4iCittc2dzdHIgIuW3suaHieeUqCBhdXRvc3Rhc2jjgIJcbiIKKworIzogc2VxdWVuY2VyLmM6MzY5MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RvcmUgJXMiCittc2dzdHIgIuS4jeiDveWEsuWtmCAlcyIKKworIzogc2VxdWVuY2VyLmM6MzY5NCBidWlsdGluL3JlYmFzZS5jOjc1MyBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBcHBseWluZyBhdXRvc3Rhc2ggcmVzdWx0ZWQgaW4gY29uZmxpY3RzLlxuIgorIllvdXIgY2hhbmdlcyBhcmUgc2FmZSBpbiB0aGUgc3Rhc2guXG4iCisiWW91IGNhbiBydW4gXCJnaXQgc3Rhc2ggcG9wXCIgb3IgXCJnaXQgc3Rhc2ggZHJvcFwiIGF0IGFueSB0aW1lLlxuIgorbXNnc3RyICIiCisi5oeJ55SoIGF1dG9zdGFzaCDlsI7oh7TooZ3nqoHjgIJcbiIKKyLmgqjnmoTkv67mlLnlronlhajlnLDlhLLlrZjlnKjlhLLol4/ljYDkuK3jgIJcbiIKKyLmgqjlj6/ku6XlnKjku7vkvZXmmYLlgJnln7fooYwgXCJnaXQgc3Rhc2ggcG9wXCIg5oiWIFwiZ2l0IHN0YXNoIGRyb3BcIuOAglxuIgorCisjOiBzZXF1ZW5jZXIuYzozNzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBub3QgYSB2YWxpZCBPSUQiCittc2dzdHIgIiVz77ya5LiN5piv5LiA5YCL5pyJ5pWI55qE54mp5Lu2IElEIgorCisjOiBzZXF1ZW5jZXIuYzozNzYwIGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo3NzkKK21zZ2lkICJjb3VsZCBub3QgZGV0YWNoIEhFQUQiCittc2dzdHIgIuS4jeiDveWIhumboumWi+mgreaMh+aomSIKKworIzogc2VxdWVuY2VyLmM6Mzc3NQorIywgYy1mb3JtYXQKK21zZ2lkICJTdG9wcGVkIGF0IEhFQURcbiIKK21zZ3N0ciAi5YGc5q2i5ZyoIEhFQURcbiIKKworIzogc2VxdWVuY2VyLmM6Mzc3NworIywgYy1mb3JtYXQKK21zZ2lkICJTdG9wcGVkIGF0ICVzXG4iCittc2dzdHIgIuWBnOatouWcqCAlc1xuIgorCisjOiBzZXF1ZW5jZXIuYzozNzg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3VsZCBub3QgZXhlY3V0ZSB0aGUgdG9kbyBjb21tYW5kXG4iCisiXG4iCisiICAgICUuKnNcbiIKKyJJdCBoYXMgYmVlbiByZXNjaGVkdWxlZDsgVG8gZWRpdCB0aGUgY29tbWFuZCBiZWZvcmUgY29udGludWluZywgcGxlYXNlXG4iCisiZWRpdCB0aGUgdG9kbyBsaXN0IGZpcnN0OlxuIgorIlxuIgorIiAgICBnaXQgcmViYXNlIC0tZWRpdC10b2RvXG4iCisiICAgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorbXNnc3RyICIiCisi54Sh5rOV5Z+36KGM5b6F6L6m5oyH5LukXG4iCisiXG4iCisiICAgICUuKnNcbiIKKyLlt7Looqvph43mlrDlronmjpLvvIzlnKjnubznuozkuYvliY3nt6jovK/mjIfku6TvvIzoq4vlhYjnt6jovK/lvoXovqbliJfooajvvJpcbiIKKyJcbiIKKyIgICAgZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb1xuIgorIiAgICBnaXQgcmViYXNlIC0tY29udGludWVcbiIKKworIzogc2VxdWVuY2VyLmM6Mzg2OQorIywgYy1mb3JtYXQKK21zZ2lkICJTdG9wcGVkIGF0ICVzLi4uICAlLipzXG4iCittc2dzdHIgIuWBnOatouWcqCAlcy4uLiAlLipzXG4iCisKKyM6IHNlcXVlbmNlci5jOjM5NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21tYW5kICVkIgorbXNnc3RyICLmnKrnn6XmjIfku6QgJWQiCisKKyM6IHNlcXVlbmNlci5jOjM5OTkKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBvcmlnLWhlYWQiCittc2dzdHIgIuS4jeiDveiugOWPliBvcmlnLWhlYWQiCisKKyM6IHNlcXVlbmNlci5jOjQwMDQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCAnb250byciCittc2dzdHIgIuS4jeiDveiugOWPliAnb250byciCisKKyM6IHNlcXVlbmNlci5jOjQwMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHVwZGF0ZSBIRUFEIHRvICVzIgorbXNnc3RyICLkuI3og73mm7TmlrAgSEVBRCDngrogJXMiCisKKyM6IHNlcXVlbmNlci5jOjQxMTEKK21zZ2lkICJjYW5ub3QgcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAi5LiN6IO96YeN5a6a5Z+65bqV77ya5oKo5pyJ5pyq5pqr5a2Y55qE6K6K5pu044CCIgorCisjOiBzZXF1ZW5jZXIuYzo0MTIwCittc2dpZCAiY2Fubm90IGFtZW5kIG5vbi1leGlzdGluZyBjb21taXQiCittc2dzdHIgIuS4jeiDveS/ruijnOS4jeWtmOWcqOeahOaPkOS6pCIKKworIzogc2VxdWVuY2VyLmM6NDEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGZpbGU6ICclcyciCittc2dzdHIgIueEoeaViOaqlOahiO+8miclcyciCisKKyM6IHNlcXVlbmNlci5jOjQxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb250ZW50czogJyVzJyIKK21zZ3N0ciAi54Sh5pWI5YWn5a6577yaJyVzJyIKKworIzogc2VxdWVuY2VyLmM6NDEyNworbXNnaWQgIiIKKyJcbiIKKyJZb3UgaGF2ZSB1bmNvbW1pdHRlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLiBQbGVhc2UsIGNvbW1pdCB0aGVtXG4iCisiZmlyc3QgYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tY29udGludWUnIGFnYWluLiIKK21zZ3N0ciAiIgorIlxuIgorIuaCqOeahOW3peS9nOWNgOS4reacieacquaPkOS6pOeahOiuiuabtOOAguiri+WFiOaPkOS6pOeEtuW+jOWGjeasoeWft+ihjCAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJ+OAgiIKKworIzogc2VxdWVuY2VyLmM6NDE2MyBzZXF1ZW5jZXIuYzo0MjAyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBmaWxlOiAnJXMnIgorbXNnc3RyICLkuI3og73lr6vlhaXmqpTmoYjvvJonJXMnIgorCisjOiBzZXF1ZW5jZXIuYzo0MjE3Cittc2dpZCAiY291bGQgbm90IHJlbW92ZSBDSEVSUllfUElDS19IRUFEIgorbXNnc3RyICLkuI3og73liKrpmaQgQ0hFUlJZX1BJQ0tfSEVBRCIKKworIzogc2VxdWVuY2VyLmM6NDIyNAorbXNnaWQgImNvdWxkIG5vdCBjb21taXQgc3RhZ2VkIGNoYW5nZXMuIgorbXNnc3RyICLkuI3og73mj5DkuqTmmqvlrZjnmoTkv67mlLnjgIIiCisKKyM6IHNlcXVlbmNlci5jOjQzMzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNhbid0IGNoZXJyeS1waWNrIGEgJXMiCittc2dzdHIgIiVz77ya5LiN6IO95o+A6YG45LiA5YCLJXMiCisKKyM6IHNlcXVlbmNlci5jOjQzNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGJhZCByZXZpc2lvbiIKK21zZ3N0ciAiJXPvvJrpjK/oqqTnmoTniYjmnKwiCisKKyM6IHNlcXVlbmNlci5jOjQzNzcKK21zZ2lkICJjYW4ndCByZXZlcnQgYXMgaW5pdGlhbCBjb21taXQiCittc2dzdHIgIuS4jeiDveS9nOeCuuWIneWni+aPkOS6pOmChOWOn+aPkOS6pCIKKworIzogc2VxdWVuY2VyLmM6NDg0NgorbXNnaWQgIm1ha2Vfc2NyaXB0OiB1bmhhbmRsZWQgb3B0aW9ucyIKK21zZ3N0ciAibWFrZV9zY3JpcHTvvJrmnInmnKrog73omZXnkIbnmoTpgbjpoIUiCisKKyM6IHNlcXVlbmNlci5jOjQ4NDkKK21zZ2lkICJtYWtlX3NjcmlwdDogZXJyb3IgcHJlcGFyaW5nIHJldmlzaW9ucyIKK21zZ3N0ciAibWFrZV9zY3JpcHTvvJrmupblgpnniYjmnKzmmYLpjK/oqqQiCisKKyM6IHNlcXVlbmNlci5jOjUwODMgc2VxdWVuY2VyLmM6NTEwMAorbXNnaWQgIm5vdGhpbmcgdG8gZG8iCittc2dzdHIgIueEoeS6i+WPr+WBmiIKKworIzogc2VxdWVuY2VyLmM6NTExOQorbXNnaWQgImNvdWxkIG5vdCBza2lwIHVubmVjZXNzYXJ5IHBpY2sgY29tbWFuZHMiCittc2dzdHIgIueEoeazlei3s+mBjuS4jeW/heimgeeahOaPgOmBuCIKKworIzogc2VxdWVuY2VyLmM6NTIxMworbXNnaWQgInRoZSBzY3JpcHQgd2FzIGFscmVhZHkgcmVhcnJhbmdlZC4iCittc2dzdHIgIuiFs+acrOW3sue2k+mHjeaWsOe3qOaOkuOAgiIKKworIzogc2V0dXAuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBvdXRzaWRlIHJlcG9zaXRvcnkgYXQgJyVzJyIKK21zZ3N0ciAiJyVzJyDlnKjkvY3mlrwgJyVzJyDnmoTniYjmnKzluqvkuYvlpJYiCisKKyM6IHNldHVwLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogbm8gc3VjaCBwYXRoIGluIHRoZSB3b3JraW5nIHRyZWUuXG4iCisiVXNlICdnaXQgPGNvbW1hbmQ+IC0tIDxwYXRoPi4uLicgdG8gc3BlY2lmeSBwYXRocyB0aGF0IGRvIG5vdCBleGlzdCBsb2NhbGx5LiIKK21zZ3N0ciAiIgorIiVz77ya5bel5L2c5Y2A5Lit54Sh5q2k6Lev5b6R44CCXG4iCisi5L2/55So5oyH5LukICdnaXQgPOaMh+S7pD4gLS0gPOi3r+W+kT4uLi4nIOS+huaMh+WumuacrOapn+S4jeWtmOWcqOeahOi3r+W+keOAgiIKKworIzogc2V0dXAuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFtYmlndW91cyBhcmd1bWVudCAnJXMnOiB1bmtub3duIHJldmlzaW9uIG9yIHBhdGggbm90IGluIHRoZSB3b3JraW5nIHRyZWUuXG4iCisiVXNlICctLScgdG8gc2VwYXJhdGUgcGF0aHMgZnJvbSByZXZpc2lvbnMsIGxpa2UgdGhpczpcbiIKKyInZ2l0IDxjb21tYW5kPiBbPHJldmlzaW9uPi4uLl0gLS0gWzxmaWxlPi4uLl0nIgorbXNnc3RyICIiCisi5pyJ5q2n576p55qE5Y+D5pW4ICclcyfvvJrmnKrnn6XnmoTniYjmnKzmiJbot6/lvpHkuI3lrZjlnKjmlrzlt6XkvZzljYDkuK3jgIJcbiIKKyLkvb/nlKggJy0tJyDkvobliIbpmpTniYjmnKzlkozot6/lvpHvvIzkvovlpoLvvJpcbiIKKyInZ2l0IDzmjIfku6Q+IFs854mI5pysPi4uLl0gLS0gWzzmqpTmoYg+Li4uXSciCisKKyM6IHNldHVwLmM6MjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiAnJXMnIG11c3QgY29tZSBiZWZvcmUgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIumBuOmghSAnJXMnIOW/hemgiOWcqOWFtuS7lumdnumBuOmgheWPg+aVuOS5i+WJjSIKKworIzogc2V0dXAuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFtYmlndW91cyBhcmd1bWVudCAnJXMnOiBib3RoIHJldmlzaW9uIGFuZCBmaWxlbmFtZVxuIgorIlVzZSAnLS0nIHRvIHNlcGFyYXRlIHBhdGhzIGZyb20gcmV2aXNpb25zLCBsaWtlIHRoaXM6XG4iCisiJ2dpdCA8Y29tbWFuZD4gWzxyZXZpc2lvbj4uLi5dIC0tIFs8ZmlsZT4uLi5dJyIKK21zZ3N0ciAiIgorIuacieatp+e+qeeahOWPg+aVuCAnJXMn77ya5Y+v5ZCM5pmC5piv54mI5pys5ZKM5qqU5qGIXG4iCisi5L2/55SoICctLScg5L6G5YiG6ZqU54mI5pys5ZKM6Lev5b6R77yM5L6L5aaC77yaXG4iCisiJ2dpdCA85oyH5LukPiBbPOeJiOacrD4uLi5dIC0tIFs85qqU5qGIPi4uLl0nIgorCisjOiBzZXR1cC5jOjQwOQorbXNnaWQgInVuYWJsZSB0byBzZXQgdXAgd29yayB0cmVlIHVzaW5nIGludmFsaWQgY29uZmlnIgorbXNnc3RyICLnhKHms5Xkvb/nlKjnhKHmlYjoqK3lrprkvoblu7rnq4vlt6XkvZzljYAiCisKKyM6IHNldHVwLmM6NDEzCittc2dpZCAidGhpcyBvcGVyYXRpb24gbXVzdCBiZSBydW4gaW4gYSB3b3JrIHRyZWUiCittc2dzdHIgIuipsuWLleS9nOW/hemgiOWcqOS4gOWAi+W3peS9nOWNgOS4reWft+ihjCIKKworIzogc2V0dXAuYzo1NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0ZWQgZ2l0IHJlcG8gdmVyc2lvbiA8PSAlZCwgZm91bmQgJWQiCittc2dzdHIgIuacn+acmyBnaXQg54mI5pys5bqr54mI5pysIDw9ICVk77yM5Y275b6X5YiwICVkIgorCisjOiBzZXR1cC5jOjU2NworbXNnaWQgInVua25vd24gcmVwb3NpdG9yeSBleHRlbnNpb25zIGZvdW5kOiIKK21zZ3N0ciAi55m854++5pyq55+l55qE54mI5pys5bqr5pO05bGV77yaIgorCisjOiBzZXR1cC5jOjU4NgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nICclcyciCittc2dzdHIgIumWi+WVnyAnJXMnIOeZvOeUn+mMr+iqpCIKKworIzogc2V0dXAuYzo1ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGxhcmdlIHRvIGJlIGEgLmdpdCBmaWxlOiAnJXMnIgorbXNnc3RyICLmqpTmoYjlpKrlpKfvvIznhKHms5XkvZzngrogLmdpdCDmqpTmoYjvvJonJXMnIgorCisjOiBzZXR1cC5jOjU5MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIgorbXNnc3RyICLoroDlj5YgJXMg55m855Sf6Yyv6KqkIgorCisjOiBzZXR1cC5jOjU5MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGdpdGZpbGUgZm9ybWF0OiAlcyIKK21zZ3N0ciAi54Sh5pWI55qEIGdpdGZpbGUg5qC85byP77yaJXMiCisKKyM6IHNldHVwLmM6NTk0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhdGggaW4gZ2l0ZmlsZTogJXMiCittc2dzdHIgIuWcqCBnaXRmaWxlIOS4reaykuaciei3r+W+ke+8miVzIgorCisjOiBzZXR1cC5jOjU5NgorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSBnaXQgcmVwb3NpdG9yeTogJXMiCittc2dzdHIgIuS4jeaYr+S4gOWAiyBnaXQg54mI5pys5bqr77yaJXMiCisKKyM6IHNldHVwLmM6Njk1CisjLCBjLWZvcm1hdAorbXNnaWQgIickJXMnIHRvbyBiaWciCittc2dzdHIgIickJXMnIOWkquWkpyIKKworIzogc2V0dXAuYzo3MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgZ2l0IHJlcG9zaXRvcnk6ICclcyciCittc2dzdHIgIuS4jeaYr+S4gOWAiyBnaXQg54mI5pys5bqr77yaJyVzJyIKKworIzogc2V0dXAuYzo3Mzggc2V0dXAuYzo3NDAgc2V0dXAuYzo3NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNoZGlyIHRvICclcyciCittc2dzdHIgIuS4jeiDveWIh+aPm+ebrumMhOWIsCAnJXMnIgorCisjOiBzZXR1cC5jOjc0MyBzZXR1cC5jOjc5OSBzZXR1cC5jOjgwOSBzZXR1cC5jOjg0OCBzZXR1cC5jOjg1NgorbXNnaWQgImNhbm5vdCBjb21lIGJhY2sgdG8gY3dkIgorbXNnc3RyICLnhKHms5Xov5Tlm57nm67liY3lt6XkvZznm67pjIQiCisKKyM6IHNldHVwLmM6ODcwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0ICclKnMlcyVzJyIKK21zZ3N0ciAi5Y+W5b6XICclKnMlcyVzJyDni4DmhYvvvIhzdGF077yJ5aSx5pWXIgorCisjOiBzZXR1cC5jOjExMDgKK21zZ2lkICJVbmFibGUgdG8gcmVhZCBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICLkuI3og73oroDlj5bnm67liY3lt6XkvZznm67pjIQiCisKKyM6IHNldHVwLmM6MTExNyBzZXR1cC5jOjExMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNoYW5nZSB0byAnJXMnIgorbXNnc3RyICLkuI3og73liIfmj5vliLAgJyVzJyIKKworIzogc2V0dXAuYzoxMTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgb2YgdGhlIHBhcmVudCBkaXJlY3Rvcmllcyk6ICVzIgorbXNnc3RyICLkuI3mmK/kuIDlgIsgZ2l0IOeJiOacrOW6q++8iOaIluiAheS7u+S9leeItuebrumMhO+8ie+8miVzIgorCisjOiBzZXR1cC5jOjExMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgcGFyZW50IHVwIHRvIG1vdW50IHBvaW50ICVzKVxuIgorIlN0b3BwaW5nIGF0IGZpbGVzeXN0ZW0gYm91bmRhcnkgKEdJVF9ESVNDT1ZFUllfQUNST1NTX0ZJTEVTWVNURU0gbm90IHNldCkuIgorbXNnc3RyICIiCisi5LiN5piv5LiA5YCLIGdpdCDniYjmnKzluqvvvIjmiJbogIXnm7Toh7PmjpvovInpu54gJXMg55qE5Lu75L2V54i255uu6YyE77yJXG4iCisi5YGc5q2i5Zyo5qqU5qGI57O757Wx6YKK55WM77yI5pyq6Kit5a6aIEdJVF9ESVNDT1ZFUllfQUNST1NTX0ZJTEVTWVNURU3vvInjgIIiCisKKyM6IHNldHVwLmM6MTI0NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicHJvYmxlbSB3aXRoIGNvcmUuc2hhcmVkUmVwb3NpdG9yeSBmaWxlbW9kZSB2YWx1ZSAoMCUuM28pLlxuIgorIlRoZSBvd25lciBvZiBmaWxlcyBtdXN0IGFsd2F5cyBoYXZlIHJlYWQgYW5kIHdyaXRlIHBlcm1pc3Npb25zLiIKK21zZ3N0ciAiIgorIuWPg+aVuCBjb3JlLnNoYXJlZFJlcG9zaXRvcnkg55qE5qqU5qGI5bGs5oCn5YC85pyJ5ZWP6aGM77yIMCUuM2/vvInjgIJcbiIKKyLmqpTmoYjmiYDmnInogIXlv4XpoIjlp4vntYLmk4HmnInoroDlr6vmrIrpmZDjgIIiCisKKyM6IHNldHVwLmM6MTI4OQorbXNnaWQgIm9wZW4gL2Rldi9udWxsIG9yIGR1cCBmYWlsZWQiCittc2dzdHIgIuS4jeiDvemWi+WVn+aIluiAheikh+ijvSAvZGV2L251bGwiCisKKyM6IHNldHVwLmM6MTMwNAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICJmb3JrIOWkseaVlyIKKworIzogc2V0dXAuYzoxMzA5Cittc2dpZCAic2V0c2lkIGZhaWxlZCIKK21zZ3N0ciAic2V0c2lkIOWkseaVlyIKKworIzogc2hhMS1maWxlLmM6NDUyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCBkaXJlY3RvcnkgJXMgZG9lcyBub3QgZXhpc3Q7IGNoZWNrIC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiCittc2dzdHIgIueJqeS7tuebrumMhCAlcyDkuI3lrZjlnKjvvIzmqqLmn6UgLmdpdC9vYmplY3RzL2luZm8vYWx0ZXJuYXRlcyIKKworIzogc2hhMS1maWxlLmM6NTAzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBub3JtYWxpemUgYWx0ZXJuYXRlIG9iamVjdCBwYXRoOiAlcyIKK21zZ3N0ciAi54Sh5rOV6KaP56+E5YyW5YKZ55So54mp5Lu26Lev5b6R77yaJXMiCisKKyM6IHNoYTEtZmlsZS5jOjU3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaWdub3JpbmcgYWx0ZXJuYXRlIG9iamVjdCBzdG9yZXMsIG5lc3RpbmcgdG9vIGRlZXAiCittc2dzdHIgIiVz77ya5b+955Wl5YKZ55So54mp5Lu25bqr77yM5bWM5aWX5aSq5rexIgorCisjOiBzaGExLWZpbGUuYzo1ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG5vcm1hbGl6ZSBvYmplY3QgZGlyZWN0b3J5OiAlcyIKK21zZ3N0ciAi54Sh5rOV6KaP56+E5YyW54mp5Lu255uu6YyEOiAlcyIKKworIzogc2hhMS1maWxlLmM6NjI1Cittc2dpZCAidW5hYmxlIHRvIGZkb3BlbiBhbHRlcm5hdGVzIGxvY2tmaWxlIgorbXNnc3RyICLnhKHms5UgZmRvcGVuIOWPluS7o+mOluaqlOahiCIKKworIzogc2hhMS1maWxlLmM6NjQzCittc2dpZCAidW5hYmxlIHRvIHJlYWQgYWx0ZXJuYXRlcyBmaWxlIgorbXNnc3RyICLnhKHms5XoroDlj5bmm7/ku6PmqpTmoYgiCisKKyM6IHNoYTEtZmlsZS5jOjY1MAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIG5ldyBhbHRlcm5hdGVzIGZpbGUgaW50byBwbGFjZSIKK21zZ3N0ciAi54Sh5rOV5bCH5paw55qE5pu/5Luj5qqU5qGI56e75YuV5Yiw5L2NIgorCisjOiBzaGExLWZpbGUuYzo2ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICLot6/lvpEgJyVzJyDkuI3lrZjlnKgiCisKKyM6IHNoYTEtZmlsZS5jOjcxMQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGFzIGEgbGlua2VkIGNoZWNrb3V0IGlzIG5vdCBzdXBwb3J0ZWQgeWV0LiIKK21zZ3N0ciAi5bCa5LiN5pSv5o+05bCH5Y+D6ICD54mI5pys5bqrICclcycg5L2c54K65LiA5YCL6YCj57WQ57C95Ye644CCIgorCisjOiBzaGExLWZpbGUuYzo3MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBpcyBub3QgYSBsb2NhbCByZXBvc2l0b3J5LiIKK21zZ3N0ciAi5Y+D6ICD54mI5pys5bqrICclcycg5LiN5piv5LiA5YCL5pys5qmf54mI5pys5bqr44CCIgorCisjOiBzaGExLWZpbGUuYzo3MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIHJlcG9zaXRvcnkgJyVzJyBpcyBzaGFsbG93IgorbXNnc3RyICLlj4PogIPniYjmnKzluqsgJyVzJyDmmK/kuIDlgIvmt7ropIfoo70iCisKKyM6IHNoYTEtZmlsZS5jOjczMQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSAnJXMnIGlzIGdyYWZ0ZWQiCittc2dzdHIgIuWPg+iAg+eJiOacrOW6qyAnJXMnIOW3suiiq+enu+akjSIKKworIzogc2hhMS1maWxlLmM6NzkxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgbGluZSB3aGlsZSBwYXJzaW5nIGFsdGVybmF0ZSByZWZzOiAlcyIKK21zZ3N0ciAi6Kej5p6Q5YKZ55So5byV55So5pmC54Sh5pWI55qE6KGM77yaJXMiCisKKyM6IHNoYTEtZmlsZS5jOjk0MworIywgYy1mb3JtYXQKK21zZ2lkICJhdHRlbXB0aW5nIHRvIG1tYXAgJTxQUkl1TUFYPiBvdmVyIGxpbWl0ICU8UFJJdU1BWD4iCittc2dzdHIgIuWYl+ippiBtbWFwICU8UFJJdU1BWD7vvIzotoXpgY7kuobmnIDlpKflgLwgJTxQUkl1TUFYPiIKKworIzogc2hhMS1maWxlLmM6OTY0Cittc2dpZCAibW1hcCBmYWlsZWQiCittc2dzdHIgIm1tYXAg5aSx5pWXIgorCisjOiBzaGExLWZpbGUuYzoxMTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCBmaWxlICVzIGlzIGVtcHR5IgorbXNnc3RyICLnianku7bmqpTmoYggJXMg54K656m6IgorCisjOiBzaGExLWZpbGUuYzoxMjYzIHNoYTEtZmlsZS5jOjI0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29ycnVwdCBsb29zZSBvYmplY3QgJyVzJyIKK21zZ3N0ciAi5pCN5aOe55qE6ayG5pWj54mp5Lu2ICclcyciCisKKyM6IHNoYTEtZmlsZS5jOjEyNjUgc2hhMS1maWxlLmM6MjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJnYXJiYWdlIGF0IGVuZCBvZiBsb29zZSBvYmplY3QgJyVzJyIKK21zZ3N0ciAi6ayG5pWj54mp5Lu2ICclcycg5b6M6Z2i5pyJ5Z6D5Zy+6LOH5paZIgorCisjOiBzaGExLWZpbGUuYzoxMzA3Cittc2dpZCAiaW52YWxpZCBvYmplY3QgdHlwZSIKK21zZ3N0ciAi54Sh5pWI55qE54mp5Lu26aGe5Z6LIgorCisjOiBzaGExLWZpbGUuYzoxMzkxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgJXMgaGVhZGVyIHdpdGggLS1hbGxvdy11bmtub3duLXR5cGUiCittc2dzdHIgIueEoeazleeUqCAtLWFsbG93LXVua25vd24tdHlwZSDlj4Pmlbjop6PplosgJXMg5qiZ6aCt6KiK5oGvIgorCisjOiBzaGExLWZpbGUuYzoxMzk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgJXMgaGVhZGVyIgorbXNnc3RyICLnhKHms5Xop6PplosgJXMg6aCt6YOoIgorCisjOiBzaGExLWZpbGUuYzoxNDAwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIKK21zZ3N0ciAi54Sh5rOV55SoIC0tYWxsb3ctdW5rbm93bi10eXBlIOWPg+aVuOino+aekCAlcyDmqJnpoK3oqIrmga8iCisKKyM6IHNoYTEtZmlsZS5jOjE0MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciIKK21zZ3N0ciAi54Sh5rOV6Kej5p6QICVzIOmgremDqCIKKworIzogc2hhMS1maWxlLmM6MTYyOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvYmplY3QgJXMiCittc2dzdHIgIuiugOWPlueJqeS7tiAlcyDlpLHmlZciCisKKyM6IHNoYTEtZmlsZS5jOjE2MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVwbGFjZW1lbnQgJXMgbm90IGZvdW5kIGZvciAlcyIKK21zZ3N0ciAi5om+5LiN5YiwICUyJHMg55qE5pu/5LujICUxJHMiCisKKyM6IHNoYTEtZmlsZS5jOjE2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9vc2Ugb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCittc2dzdHIgIumshuaVo+eJqeS7tiAlc++8iOWEsuWtmOWcqCAlc++8ieW3suaQjeWjniIKKworIzogc2hhMS1maWxlLmM6MTY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrZWQgb2JqZWN0ICVzIChzdG9yZWQgaW4gJXMpIGlzIGNvcnJ1cHQiCittc2dzdHIgIuaJk+WMheeJqeS7tiAlc++8iOWEsuWtmOWcqCAlc++8ieW3suaQjeWjniIKKworIzogc2hhMS1maWxlLmM6MTc0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAlcyIKK21zZ3N0ciAi54Sh5rOV5a+r5qqU5qGIICVzIgorCisjOiBzaGExLWZpbGUuYzoxNzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgcGVybWlzc2lvbiB0byAnJXMnIgorbXNnc3RyICLnhKHms5XngrogJyVzJyDoqK3lrprmrIrpmZAiCisKKyM6IHNoYTEtZmlsZS5jOjE3NjAKK21zZ2lkICJmaWxlIHdyaXRlIGVycm9yIgorbXNnc3RyICLmqpTmoYjlr6vpjK/oqqQiCisKKyM6IHNoYTEtZmlsZS5jOjE3ODAKK21zZ2lkICJlcnJvciB3aGVuIGNsb3NpbmcgbG9vc2Ugb2JqZWN0IGZpbGUiCittc2dzdHIgIumXnOmWiemshuaVo+eJqeS7tuaqlOahiOaZgueZvOeUn+mMr+iqpCIKKworIzogc2hhMS1maWxlLmM6MTg0NQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN1ZmZpY2llbnQgcGVybWlzc2lvbiBmb3IgYWRkaW5nIGFuIG9iamVjdCB0byByZXBvc2l0b3J5IGRhdGFiYXNlICVzIgorbXNnc3RyICLmrIrpmZDkuI3otrPvvIznhKHms5XlnKjniYjmnKzluqvnianku7bluqsgJXMg5Lit5paw5aKe54mp5Lu2IgorCisjOiBzaGExLWZpbGUuYzoxODQ3Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZSIKK21zZ3N0ciAi54Sh5rOV5bu656uL5pqr5a2Y5qqUIgorCisjOiBzaGExLWZpbGUuYzoxODcxCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGxvb3NlIG9iamVjdCBmaWxlIgorbXNnc3RyICLkuI3og73lr6vprIbmlaPnianku7bmqpTmoYgiCisKKyM6IHNoYTEtZmlsZS5jOjE4NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgbmV3IG9iamVjdCAlcyAoJWQpIgorbXNnc3RyICLkuI3og73lo5PnuK7mlrDnianku7YgJXPvvIglZO+8iSIKKworIzogc2hhMS1maWxlLmM6MTg4MQorIywgYy1mb3JtYXQKK21zZ2lkICJkZWZsYXRlRW5kIG9uIG9iamVjdCAlcyBmYWlsZWQgKCVkKSIKK21zZ3N0ciAi5Zyo54mp5Lu2ICVzIOS4iuWRvOWPqyBkZWZsYXRlRW5kIOWkseaVl++8iCVk77yJIgorCisjOiBzaGExLWZpbGUuYzoxODg1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZ1c2VkIGJ5IHVuc3RhYmxlIG9iamVjdCBzb3VyY2UgZGF0YSBmb3IgJXMiCittc2dzdHIgIuiiqyAlcyDnmoTkuI3nqanlrprnianku7bmupDos4fmlpnmkJ7ns4rloZfkuoYiCisKKyM6IHNoYTEtZmlsZS5jOjE4OTUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMDU0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB1dGltZSgpIG9uICVzIgorbXNnc3RyICLlnKggJXMg5LiK5ZG85Y+rIHV0aW1lKCkg5aSx5pWXIgorCisjOiBzaGExLWZpbGUuYzoxOTcyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIG9iamVjdCBmb3IgJXMiCittc2dzdHIgIuS4jeiDveiugOWPlueJqeS7tiAlcyIKKworIzogc2hhMS1maWxlLmM6MjAxMQorbXNnaWQgImNvcnJ1cHQgY29tbWl0IgorbXNnc3RyICLmkI3lo57nmoTmj5DkuqQiCisKKyM6IHNoYTEtZmlsZS5jOjIwMTkKK21zZ2lkICJjb3JydXB0IHRhZyIKK21zZ3N0ciAi5pCN5aOe55qE5qiZ57GkIgorCisjOiBzaGExLWZpbGUuYzoyMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3Igd2hpbGUgaW5kZXhpbmcgJXMiCittc2dzdHIgIue0ouW8lSAlcyDmmYLoroDlj5bpjK/oqqQiCisKKyM6IHNoYTEtZmlsZS5jOjIxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCB3aGlsZSBpbmRleGluZyAlcyIKK21zZ3N0ciAi57Si5byVICVzIOaZguiugOWFpeS4jeWujOaVtCIKKworIzogc2hhMS1maWxlLmM6MjE5NSBzaGExLWZpbGUuYzoyMjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gaW5zZXJ0IGludG8gZGF0YWJhc2UiCittc2dzdHIgIiVz77ya5o+S5YWl6LOH5paZ5bqr5aSx5pWXIgorCisjOiBzaGExLWZpbGUuYzoyMjExCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bnN1cHBvcnRlZCBmaWxlIHR5cGUiCittc2dzdHIgIiVz77ya5LiN5pSv5o+055qE5qqU5qGI6aGe5Z6LIgorCisjOiBzaGExLWZpbGUuYzoyMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIG9iamVjdCIKK21zZ3N0ciAiJXMg5LiN5piv5LiA5YCL5pyJ5pWI55qE54mp5Lu2IgorCisjOiBzaGExLWZpbGUuYzoyMjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkICclcycgb2JqZWN0IgorbXNnc3RyICIlcyDkuI3mmK/kuIDlgIvmnInmlYjnmoQgJyVzJyDnianku7YiCisKKyM6IHNoYTEtZmlsZS5jOjIyNjQgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIgorbXNnc3RyICLkuI3og73plovllZ8gJXMiCisKKyM6IHNoYTEtZmlsZS5jOjI0NTQgc2hhMS1maWxlLmM6MjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJoYXNoIG1pc21hdGNoIGZvciAlcyAoZXhwZWN0ZWQgJXMpIgorbXNnc3RyICIlcyDnmoTpm5zmuYrlgLzkuI3nrKblkIjvvIjpoJDmnJ8gJXPvvIkiCisKKyM6IHNoYTEtZmlsZS5jOjI0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1tYXAgJXMiCittc2dzdHIgIuS4jeiDvSBtbWFwICVzIgorCisjOiBzaGExLWZpbGUuYzoyNDgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bnBhY2sgaGVhZGVyIG9mICVzIgorbXNnc3RyICLnhKHms5Xop6Plo5PnuK4gJXMg55qE6aCt6YOoIgorCisjOiBzaGExLWZpbGUuYzoyNDg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYXJzZSBoZWFkZXIgb2YgJXMiCittc2dzdHIgIueEoeazleino+aekCAlcyDnmoTpoK3pg6giCisKKyM6IHNoYTEtZmlsZS5jOjI1MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVucGFjayBjb250ZW50cyBvZiAlcyIKK21zZ3N0ciAi54Sh5rOV6Kej5aOT57iuICVzIOeahOWFp+WuuSIKKworIzogc2hhMS1uYW1lLmM6NDg2CisjLCBjLWZvcm1hdAorbXNnaWQgInNob3J0IFNIQTEgJXMgaXMgYW1iaWd1b3VzIgorbXNnc3RyICLnn60gU0hBMSAlcyDlrZjlnKjmrafnvqkiCisKKyM6IHNoYTEtbmFtZS5jOjQ5NworbXNnaWQgIlRoZSBjYW5kaWRhdGVzIGFyZToiCittc2dzdHIgIuWAmemBuOiAheacie+8miIKKworIzogc2hhMS1uYW1lLmM6Nzk2Cittc2dpZCAiIgorIkdpdCBub3JtYWxseSBuZXZlciBjcmVhdGVzIGEgcmVmIHRoYXQgZW5kcyB3aXRoIDQwIGhleCBjaGFyYWN0ZXJzXG4iCisiYmVjYXVzZSBpdCB3aWxsIGJlIGlnbm9yZWQgd2hlbiB5b3UganVzdCBzcGVjaWZ5IDQwLWhleC4gVGhlc2UgcmVmc1xuIgorIm1heSBiZSBjcmVhdGVkIGJ5IG1pc3Rha2UuIEZvciBleGFtcGxlLFxuIgorIlxuIgorIiAgZ2l0IHN3aXRjaCAtYyAkYnIgJChnaXQgcmV2LXBhcnNlIC4uLilcbiIKKyJcbiIKKyJ3aGVyZSBcIiRiclwiIGlzIHNvbWVob3cgZW1wdHkgYW5kIGEgNDAtaGV4IHJlZiBpcyBjcmVhdGVkLiBQbGVhc2VcbiIKKyJleGFtaW5lIHRoZXNlIHJlZnMgYW5kIG1heWJlIGRlbGV0ZSB0aGVtLiBUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnlcbiIKKyJydW5uaW5nIFwiZ2l0IGNvbmZpZyBhZHZpY2Uub2JqZWN0TmFtZVdhcm5pbmcgZmFsc2VcIiIKK21zZ3N0ciAiIgorIkdpdCDpgJrluLjkuI3mnIPlu7rnq4vkuIDlgIvku6U0MOWAi+WNgeWFremAsuS9jeWtl+WFg+e1kOWwvueahOW8leeUqO+8jOWboOeCuueVtuaCqOWPquaPkOS+mzQwXG4iCisi5YCL5Y2B5YWt6YCy5L2N5a2X5YWD5pmC5bCH6KKr5b+955Wl44CC6YCZ5Lqb5byV55So5Y+v6IO96KKr6Yyv6Kqk5Zyw5bu656uL44CC5L6L5aaC77yaXG4iCisiXG4iCisiICBnaXQgc3dpdGNoIC1jICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgorIlxuIgorIueVtiBcIiRiclwiIOafkOeoruWOn+WboOepuueZveaZgu+8jOS4gOWAizQw5L2N5Y2B5YWt6YCy5L2N55qE5byV55So5bCH6KKr5bu656uL44CC6KuL5qqi5p+l6YCZ5LqbXG4iCisi5byV55So77yM5Y+v6IO96ZyA6KaB5Yiq6Zmk5a6D5YCR44CC5Z+36KGMIFwiZ2l0IGNvbmZpZyBhZHZpY2Uub2JqZWN0TmFtZVdhcm5pbmdcbiIKKyJmYWxzZVwiIOaMh+S7pOmXnOmWieacrOa2iOaBr+mAmuefpeOAgiIKKworIzogc2hhMS1uYW1lLmM6OTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvZyBmb3IgJyUuKnMnIG9ubHkgZ29lcyBiYWNrIHRvICVzIgorbXNnc3RyICInJS4qcycg55qE5pel6KqM5Y+q6IO95Zue5YiwICVzIgorCisjOiBzaGExLW5hbWUuYzo5MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9nIGZvciAnJS4qcycgb25seSBoYXMgJWQgZW50cmllcyIKK21zZ3N0ciAiJyUuKnMnIOeahOaXpeiqjOWPquaciSAlZCDlgIvpoIXnm64iCisKKyM6IHNoYTEtbmFtZS5jOjE2ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGV4aXN0cyBvbiBkaXNrLCBidXQgbm90IGluICclLipzJyIKK21zZ3N0ciAi56OB56Kf5LiK5a2Y5ZyoICclcycg6Lev5b6R77yM5L2G5LiN5a2Y5Zyo5pa8ICclLipzJyIKKworIzogc2hhMS1uYW1lLmM6MTY5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGV4aXN0cywgYnV0IG5vdCAnJXMnXG4iCisiaGludDogRGlkIHlvdSBtZWFuICclLipzOiVzJyBha2EgJyUuKnM6Li8lcyc/IgorbXNnc3RyICIiCisiJyVzJyDot6/lvpHlrZjlnKjvvIzkvYbkuI3mmK8gJyVzJ1xuIgorIuaPkOekuu+8muS9oOWcqOiqqiAnJS4qczolcyfvvIzljbMgJyUuKnM6Li8lcycg5ZeO77yfIgorCisjOiBzaGExLW5hbWUuYzoxNzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCBpbiAnJS4qcyciCittc2dzdHIgIiclcycg6Lev5b6R5LiN5a2Y5Zyo5pa8ICclLipzJyIKKworIzogc2hhMS1uYW1lLmM6MTczMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGF0aCAnJXMnIGlzIGluIHRoZSBpbmRleCwgYnV0IG5vdCBhdCBzdGFnZSAlZFxuIgorImhpbnQ6IERpZCB5b3UgbWVhbiAnOiVkOiVzJz8iCittc2dzdHIgIiIKKyInJXMnIOi3r+W+keWcqOe0ouW8le+8jOS9huS4jeWcqCAlZCDmmqvlrZjljYBcbiIKKyLmj5DnpLrvvJrkvaDlnKjoqqogJzolZDolcycg5ZeO77yfIgorCisjOiBzaGExLW5hbWUuYzoxNzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXRoICclcycgaXMgaW4gdGhlIGluZGV4LCBidXQgbm90ICclcydcbiIKKyJoaW50OiBEaWQgeW91IG1lYW4gJzolZDolcycgYWthICc6JWQ6Li8lcyc/IgorbXNnc3RyICIiCisiJyVzJyDot6/lvpHlnKjntKLlvJXvvIzkvYbkuI3mmK8gJyVzJ1xuIgorIuaPkOekuu+8muS9oOWcqOiqqiAnOiVkOiVzJ++8jOWNsyAnOiVkOiVzJyDll47vvJ8iCisKKyM6IHNoYTEtbmFtZS5jOjE3NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGV4aXN0cyBvbiBkaXNrLCBidXQgbm90IGluIHRoZSBpbmRleCIKK21zZ3N0ciAi56OB56Kf5LiK5a2Y5ZyoICclcycg6Lev5b6R77yM5L2G5LiN5Zyo57Si5byV5LitIgorCisjOiBzaGExLW5hbWUuYzoxNzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCAobmVpdGhlciBvbiBkaXNrIG5vciBpbiB0aGUgaW5kZXgpIgorbXNnc3RyICInJXMnIOi3r+W+keS4jeWtmOWcqCAo5pei5LiN5a2Y5Zyo56OB56Kf77yM5Lmf5LiN5a2Y5Zyo57Si5byVKSIKKworIzogc2hhMS1uYW1lLmM6MTc3MQorbXNnaWQgInJlbGF0aXZlIHBhdGggc3ludGF4IGNhbid0IGJlIHVzZWQgb3V0c2lkZSB3b3JraW5nIHRyZWUiCittc2dzdHIgIuebuOWwjei3r+W+keiIh+azleS4jeiDveeUqOWcqOW3peS9nOWNgOWkliIKKworIzogc2hhMS1uYW1lLmM6MTkwOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG9iamVjdCBuYW1lICclLipzJy4iCittc2dzdHIgIiclLipzJyDnianku7blkI3nqLHnhKHmlYjjgIIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBnaWJpYnl0ZQorIzogc3RyYnVmLmM6ODM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IEdpQiIKK21zZ3N0ciAiJXUuJTIuMnUgR2lCIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggZ2liaWJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgR2lCL3MiCittc2dzdHIgIiV1LiUyLjJ1IEdpQi9zIgorCisjLiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggbWViaWJ5dGUKKyM6IHN0cmJ1Zi5jOjg0NworIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBNaUIiCittc2dzdHIgIiV1LiUyLjJ1IE1pQiIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IG1lYmlieXRlL3NlY29uZAorIzogc3RyYnVmLmM6ODQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiV1LiUyLjJ1IE1pQi9zIgorbXNnc3RyICIldS4lMi4ydSBNaUIvcyIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGtpYmlieXRlCisjOiBzdHJidWYuYzo4NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUuJTIuMnUgS2lCIgorbXNnc3RyICIldS4lMi4ydSBLaUIiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBraWJpYnl0ZS9zZWNvbmQKKyM6IHN0cmJ1Zi5jOjg1OAorIywgYy1mb3JtYXQKK21zZ2lkICIldS4lMi4ydSBLaUIvcyIKK21zZ3N0ciAiJXUuJTIuMnUgS2lCL3MiCisKKyMuIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBieXRlCisjOiBzdHJidWYuYzo4NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUgYnl0ZSIKK21zZ2lkX3BsdXJhbCAiJXUgYnl0ZXMiCittc2dzdHJbMF0gIiV1IOS9jeWFg+e1hCIKKworIy4gVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGJ5dGUvc2Vjb25kCisjOiBzdHJidWYuYzo4NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXUgYnl0ZS9zIgorbXNnaWRfcGx1cmFsICIldSBieXRlcy9zIgorbXNnc3RyWzBdICIldSDkvY3lhYPntYQv56eSIgorCisjOiBzdHJidWYuYzoxMTY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBlZGl0ICclcyciCittc2dzdHIgIueEoeazlee3qOi8ryAnJXMnIgorCisjOiBzdWJtb2R1bGUuYzoxMTQgc3VibW9kdWxlLmM6MTQzCittc2dpZCAiQ2Fubm90IGNoYW5nZSB1bm1lcmdlZCAuZ2l0bW9kdWxlcywgcmVzb2x2ZSBtZXJnZSBjb25mbGljdHMgZmlyc3QiCittc2dzdHIgIueEoeazleS/ruaUueacquWQiOS9teeahCAuZ2l0bW9kdWxlc++8jOWFiOino+axuuWQiOS9teihneeqgSIKKworIzogc3VibW9kdWxlLmM6MTE4IHN1Ym1vZHVsZS5jOjE0NworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgZmluZCBzZWN0aW9uIGluIC5naXRtb2R1bGVzIHdoZXJlIHBhdGg9JXMiCittc2dzdHIgIueEoeazleWcqCAuZ2l0bW9kdWxlcyDkuK3mib7liLAgcGF0aD0lcyDnmoTlsI/nr4AiCisKKyM6IHN1Ym1vZHVsZS5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIC5naXRtb2R1bGVzIGVudHJ5IGZvciAlcyIKK21zZ3N0ciAi54Sh5rOV56e76ZmkICVzIOeahCAuZ2l0bW9kdWxlcyDmop3nm64iCisKKyM6IHN1Ym1vZHVsZS5jOjE2NQorbXNnaWQgInN0YWdpbmcgdXBkYXRlZCAuZ2l0bW9kdWxlcyBmYWlsZWQiCittc2dzdHIgIuWwh+abtOaWsOW+jCAuZ2l0bW9kdWxlcyDmlrDlop7mmqvlrZjljYDlpLHmlZciCisKKyM6IHN1Ym1vZHVsZS5jOjMyNworIywgYy1mb3JtYXQKK21zZ2lkICJpbiB1bnBvcHVsYXRlZCBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAi5L2N5pa85pyq57C95Ye655qE5a2Q5qih57WEICclcyciCisKKyM6IHN1Ym1vZHVsZS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJQYXRoc3BlYyAnJXMnIGlzIGluIHN1Ym1vZHVsZSAnJS4qcyciCittc2dzdHIgIui3r+W+keimj+agvCAnJXMnIOWcqOWtkOaooee1hCAnJS4qcycg5LitIgorCisjOiBzdWJtb2R1bGUuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIC0taWdub3JlLXN1Ym1vZHVsZXMgYXJndW1lbnQ6ICVzIgorbXNnc3RyICLnhKHmlYggLS1pZ25vcmUtc3VibW9kdWxlcyDlj4PmlbjvvJolcyIKKworIzogc3VibW9kdWxlLmM6ODE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTdWJtb2R1bGUgaW4gY29tbWl0ICVzIGF0IHBhdGg6ICclcycgY29sbGlkZXMgd2l0aCBhIHN1Ym1vZHVsZSBuYW1lZCB0aGUgIgorInNhbWUuIFNraXBwaW5nIGl0LiIKK21zZ3N0ciAiJXMg5o+Q5Lqk5L2N5pa86Lev5b6R77yaJyVzJyDnmoTlrZDmqKHntYToiIflkIzlkI3nmoTlrZDmqKHntYTooZ3nqoHjgILot7PpgY7jgIIiCisKKyM6IHN1Ym1vZHVsZS5jOjkxMAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJtb2R1bGUgZW50cnkgJyVzJyAoJXMpIGlzIGEgJXMsIG5vdCBhIGNvbW1pdCIKK21zZ3N0ciAi5a2Q5qih57WE5qKd55uuICclcyfvvIglc++8ieaYr+S4gOWAiyAlc++8jOS4jeaYr+S4gOWAi+aPkOS6pCIKKworIzogc3VibW9kdWxlLmM6OTk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3VsZCBub3QgcnVuICdnaXQgcmV2LWxpc3QgPGNvbW1pdHM+IC0tbm90IC0tcmVtb3RlcyAtbiAxJyBjb21tYW5kIGluICIKKyJzdWJtb2R1bGUgJXMiCittc2dzdHIgIueEoeazleWcqCAlcyDlrZDmqKHntYTln7fooYwgJ2dpdCByZXYtbGlzdCA85o+Q5LqkPiAtLW5vdCAtLXJlbW90ZXMgLW4gMScg5ZG95LukIgorCisjOiBzdWJtb2R1bGUuYzoxMTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInByb2Nlc3MgZm9yIHN1Ym1vZHVsZSAnJXMnIGZhaWxlZCIKK21zZ3N0ciAi6JmV55CGICclcycg5a2Q5qih57WE5aSx5pWXIgorCisjOiBzdWJtb2R1bGUuYzoxMTQ3IGJ1aWx0aW4vYnJhbmNoLmM6NjgwIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMDQ1Cittc2dpZCAiRmFpbGVkIHRvIHJlc29sdmUgSEVBRCBhcyBhIHZhbGlkIHJlZi4iCittc2dzdHIgIueEoeazleWwhyBIRUFEIOino+aekOeCuuacieaViOW8leeUqOOAgiIKKworIzogc3VibW9kdWxlLmM6MTE1OAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXNoaW5nIHN1Ym1vZHVsZSAnJXMnXG4iCittc2dzdHIgIuato+WcqOaOqOmAgSAnJXMnIOWtkOaooee1hFxuIgorCisjOiBzdWJtb2R1bGUuYzoxMTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBwdXNoIHN1Ym1vZHVsZSAnJXMnXG4iCittc2dzdHIgIueEoeazleaOqOmAgSAnJXMnIOWtkOaooee1hFxuIgorCisjOiBzdWJtb2R1bGUuYzoxNDUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZldGNoaW5nIHN1Ym1vZHVsZSAlcyVzXG4iCittc2dzdHIgIuato+WcqOaKk+WPliAlcyVzIOWtkOaooee1hFxuIgorCisjOiBzdWJtb2R1bGUuYzoxNDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBhY2Nlc3Mgc3VibW9kdWxlICclcydcbiIKK21zZ3N0ciAi54Sh5rOV5a2Y5Y+W5a2Q5qih57WEICclcydcbiIKKworIzogc3VibW9kdWxlLmM6MTYzNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXJyb3JzIGR1cmluZyBzdWJtb2R1bGUgZmV0Y2g6XG4iCisiJXMiCittc2dzdHIgIiIKKyLmipPlj5blrZDmqKHntYTmmYLnmbznlJ/pjK/oqqTvvJpcbiIKKyIlcyIKKworIzogc3VibW9kdWxlLmM6MTY2MgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCByZWNvZ25pemVkIGFzIGEgZ2l0IHJlcG9zaXRvcnkiCittc2dzdHIgIueEoeazleWwhyAnJXMnIOitmOWIpeeCuuS4gOWAiyBnaXQg54mI5pys5bqrIgorCisjOiBzdWJtb2R1bGUuYzoxNjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBydW4gJ2dpdCBzdGF0dXMgLS1wb3JjZWxhaW49MicgaW4gc3VibW9kdWxlICVzIgorbXNnc3RyICLnhKHms5XlnKggJXMg5a2Q5qih57WE5Z+36KGMICdnaXQgc3RhdHVzIC0tcG9yY2VsYWluPTInIgorCisjOiBzdWJtb2R1bGUuYzoxNzIwCisjLCBjLWZvcm1hdAorbXNnaWQgIidnaXQgc3RhdHVzIC0tcG9yY2VsYWluPTInIGZhaWxlZCBpbiBzdWJtb2R1bGUgJXMiCittc2dzdHIgIiVzIOWtkOaooee1hOWft+ihjCAnZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbj0yJyDlpLHmlZciCisKKyM6IHN1Ym1vZHVsZS5jOjE4MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXJ0ICdnaXQgc3RhdHVzJyBpbiBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAi54Sh5rOV5Zyo5a2Q5qih57WEICclcycg5Lit5ZWf5YuVICdnaXQgc3RhdHVzJyIKKworIzogc3VibW9kdWxlLmM6MTgxMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcnVuICdnaXQgc3RhdHVzJyBpbiBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAi54Sh5rOV5Zyo5a2Q5qih57WEICclcycg5Lit5Z+36KGMICdnaXQgc3RhdHVzJyIKKworIzogc3VibW9kdWxlLmM6MTgyOAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgdW5zZXQgY29yZS53b3JrdHJlZSBzZXR0aW5nIGluIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICLnhKHms5XlnKjlrZDmqKHntYQgJyVzJyDkuK3lj5bmtoggY29yZS53b3JrdHJlZSDnmoToqK3lrpoiCisKKyM6IHN1Ym1vZHVsZS5jOjE4NTUgc3VibW9kdWxlLmM6MjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICLnhKHms5XpgZ7ov7TlrZDmqKHntYTot6/lvpEgJyVzJyIKKworIzogc3VibW9kdWxlLmM6MTg3NgorbXNnaWQgImNvdWxkIG5vdCByZXNldCBzdWJtb2R1bGUgaW5kZXgiCittc2dzdHIgIueEoeazlemHjeioreWtkOaooee1hOeahOe0ouW8lSIKKworIzogc3VibW9kdWxlLmM6MTkxOAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJtb2R1bGUgJyVzJyBoYXMgZGlydHkgaW5kZXgiCittc2dzdHIgIuWtkOaooee1hCAnJXMnIOS4reaciemrkue0ouW8lSIKKworIzogc3VibW9kdWxlLmM6MTk3MAorIywgYy1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgJyVzJyBjb3VsZCBub3QgYmUgdXBkYXRlZC4iCittc2dzdHIgIuWtkOaooee1hCAnJXMnIOeEoeazleiiq+abtOaWsOOAgiIKKworIzogc3VibW9kdWxlLmM6MjAzOAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJtb2R1bGUgZ2l0IGRpciAnJXMnIGlzIGluc2lkZSBnaXQgZGlyICclLipzJyIKK21zZ3N0ciAi44CMJXPjgI3lrZDmqKHntYQgZ2l0IOebrumMhOWcqOOAjCUuKnPjgI1naXQg6Lev5b6R5LitIgorCisjOiBzdWJtb2R1bGUuYzoyMDU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZWxvY2F0ZV9naXRkaXIgZm9yIHN1Ym1vZHVsZSAnJXMnIHdpdGggbW9yZSB0aGFuIG9uZSB3b3JrdHJlZSBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICLkuI3mlK/mj7TlsI3mnInlpJrlgIvlt6XkvZzljYDnmoTlrZDmqKHntYQgJyVzJyDln7fooYwgcmVsb2NhdGVfZ2l0ZGlyIgorCisjOiBzdWJtb2R1bGUuYzoyMDcxIHN1Ym1vZHVsZS5jOjIxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGxvb2t1cCBuYW1lIGZvciBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAi5LiN6IO95p+l6Kmi5a2Q5qih57WEICclcycg55qE5ZCN56ixIgorCisjOiBzdWJtb2R1bGUuYzoyMDc1CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZnVzaW5nIHRvIG1vdmUgJyVzJyBpbnRvIGFuIGV4aXN0aW5nIGdpdCBkaXIiCittc2dzdHIgIuaLkue1leenu+WLleOAjCVz44CN6Iez54++5a2YIGdpdCDnm67pjIQiCisKKyM6IHN1Ym1vZHVsZS5jOjIwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1pZ3JhdGluZyBnaXQgZGlyZWN0b3J5IG9mICclcyVzJyBmcm9tXG4iCisiJyVzJyB0b1xuIgorIiclcydcbiIKK21zZ3N0ciAiIgorIuWwhyAnJXMlcycg55qEIGdpdCDnm67pjITlvp5cbiIKKyInJXMnIOmBt+enu+iHs1xuIgorIiclcydcbiIKKworIzogc3VibW9kdWxlLmM6MjIwOQorbXNnaWQgImNvdWxkIG5vdCBzdGFydCBscy1maWxlcyBpbiAuLiIKK21zZ3N0ciAi54Sh5rOV5ZyoIC4uIOS4reWVn+WLlSBscy1maWxlcyIKKworIzogc3VibW9kdWxlLmM6MjI0OAorIywgYy1mb3JtYXQKK21zZ2lkICJscy10cmVlIHJldHVybmVkIHVuZXhwZWN0ZWQgcmV0dXJuIGNvZGUgJWQiCittc2dzdHIgImxzLXRyZWUg6L+U5Zue5pyq55+l6L+U5Zue5YC8ICVkIgorCisjOiBzdWJtb2R1bGUtY29uZmlnLmM6MjM2CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHN1c3BpY2lvdXMgc3VibW9kdWxlIG5hbWU6ICVzIgorbXNnc3RyICLlv73nlaXlj6/nlpHnmoTlrZDmqKHntYTlkI3nqLHvvJolcyIKKworIzogc3VibW9kdWxlLWNvbmZpZy5jOjMwMworbXNnaWQgIm5lZ2F0aXZlIHZhbHVlcyBub3QgYWxsb3dlZCBmb3Igc3VibW9kdWxlLmZldGNoam9icyIKK21zZ3N0ciAic3VibW9kdWxlLmZldGNoam9icyDkuI3lhYHoqLHngrrosqDlgLwiCisKKyM6IHN1Ym1vZHVsZS1jb25maWcuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJyVzJyB3aGljaCBtYXkgYmUgaW50ZXJwcmV0ZWQgYXMgYSBjb21tYW5kLWxpbmUgb3B0aW9uOiAlcyIKK21zZ3N0ciAi5b+955Wl5Y+v6IO96KKr6Kej5p6Q54K65oyH5Luk5YiX6YG46aCF55qEICclcyfvvJolcyIKKworIzogc3VibW9kdWxlLWNvbmZpZy5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciAlcyIKK21zZ3N0ciAiJXMg55qE5YC854Sh5pWIIgorCisjOiBzdWJtb2R1bGUtY29uZmlnLmM6NzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCB1cGRhdGUgLmdpdG1vZHVsZXMgZW50cnkgJXMiCittc2dzdHIgIuS4jeiDveabtOaWsCAuZ2l0bW9kdWxlcyDmop3nm64gJXMiCisKKyM6IHRyYWlsZXIuYzoyMzgKKyMsIGMtZm9ybWF0Cittc2dpZCAicnVubmluZyB0cmFpbGVyIGNvbW1hbmQgJyVzJyBmYWlsZWQiCittc2dzdHIgIuWft+ihjCB0cmFpbGVyIOaMh+S7pCAnJXMnIOWkseaVlyIKKworIzogdHJhaWxlci5jOjQ4NSB0cmFpbGVyLmM6NDkwIHRyYWlsZXIuYzo0OTUgdHJhaWxlci5jOjU0OSB0cmFpbGVyLmM6NTUzCisjOiB0cmFpbGVyLmM6NTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gdmFsdWUgJyVzJyBmb3Iga2V5ICclcyciCittc2dzdHIgIumNtSAnJTIkcycg55qE5pyq55+l5Y+W5YC8ICclMSRzJyIKKworIzogdHJhaWxlci5jOjUzOSB0cmFpbGVyLmM6NTQ0IGJ1aWx0aW4vcmVtb3RlLmM6Mjk4IGJ1aWx0aW4vcmVtb3RlLmM6MzIzCisjLCBjLWZvcm1hdAorbXNnaWQgIm1vcmUgdGhhbiBvbmUgJXMiCittc2dzdHIgIuWkmuaWvOS4gOWAiyAlcyIKKworIzogdHJhaWxlci5jOjczMAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB0cmFpbGVyIHRva2VuIGluIHRyYWlsZXIgJyUuKnMnIgorbXNnc3RyICLnsL3lkI0gJyUuKnMnIOeahOmNteeCuuepuiIKKworIzogdHJhaWxlci5jOjc1MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBpbnB1dCBmaWxlICclcyciCittc2dzdHIgIuS4jeiDveiugOWPlui8uOWFpeaqlOahiCAnJXMnIgorCisjOiB0cmFpbGVyLmM6NzUzCittc2dpZCAiY291bGQgbm90IHJlYWQgZnJvbSBzdGRpbiIKK21zZ3N0ciAi5LiN6IO96Ieq5qiZ5rqW6Ly45YWl6K6A5Y+WIgorCisjOiB0cmFpbGVyLmM6MTAxMSB3cmFwcGVyLmM6NjY1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0ICVzIgorbXNnc3RyICLkuI3og73lsI0gJXMg5ZG85Y+rIHN0YXQiCisKKyM6IHRyYWlsZXIuYzoxMDEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJXMgaXMgbm90IGEgcmVndWxhciBmaWxlIgorbXNnc3RyICLmqpTmoYggJXMg5LiN5piv5LiA5YCL5q2j6KaP5qqU5qGIIgorCisjOiB0cmFpbGVyLmM6MTAxNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlICVzIGlzIG5vdCB3cml0YWJsZSBieSB1c2VyIgorbXNnc3RyICLmqpTmoYggJXMg5L2/55So6ICF5LiN5Y+v5a+rIgorCisjOiB0cmFpbGVyLmM6MTAyNworbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRlbXBvcmFyeSBmaWxlIgorbXNnc3RyICLkuI3og73plovllZ/mmqvlrZjmqpQiCisKKyM6IHRyYWlsZXIuYzoxMDY3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZW5hbWUgdGVtcG9yYXJ5IGZpbGUgdG8gJXMiCittc2dzdHIgIuS4jeiDvemHjeaWsOWRveWQjeaaq+WtmOaqlOeCuiAlcyIKKworIzogdHJhbnNwb3J0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHNldCB1cHN0cmVhbSBvZiAnJXMnIHRvICclcycgb2YgJyVzJ1xuIgorbXNnc3RyICLlsIfopoHoqK3lrpogJyUxJHMnIOeahOS4iua4uOeCuiAnJTMkcycg55qEICclMiRzJ1xuIgorCisjOiB0cmFuc3BvcnQuYzoxNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgYnVuZGxlICclcyciCittc2dzdHIgIueEoeazleiugOWPliBidW5kbGUgJyVzJyIKKworIzogdHJhbnNwb3J0LmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInRyYW5zcG9ydDogaW52YWxpZCBkZXB0aCBvcHRpb24gJyVzJyIKK21zZ3N0ciAi5YKz6Ly477ya54Sh5pWI55qE5rex5bqm6YG46aCFICclcyciCisKKyM6IHRyYW5zcG9ydC5jOjI2NgorbXNnaWQgInNlZSBwcm90b2NvbC52ZXJzaW9uIGluICdnaXQgaGVscCBjb25maWcnIGZvciBtb3JlIGRldGFpbHMiCittc2dzdHIgIuaqouimliAnZ2l0IGhlbHAgY29uZmlnJyDkuK3nmoQgcHJvdG9jb2wudmVyc2lvbiDlj5blvpfmm7TlpJroqIrmga8iCisKKyM6IHRyYW5zcG9ydC5jOjI2NworbXNnaWQgInNlcnZlciBvcHRpb25zIHJlcXVpcmUgcHJvdG9jb2wgdmVyc2lvbiAyIG9yIGxhdGVyIgorbXNnc3RyICLmnI3li5nnq6/pgbjpoIXpnIDopoHniYjmnKwgMiDljZTlrprmiJbmm7Tpq5giCisKKyM6IHRyYW5zcG9ydC5jOjYzMgorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSB0cmFuc3BvcnQuY29sb3IuKiBjb25maWciCittc2dzdHIgIuS4jeiDveino+aekCB0cmFuc3BvcnQuY29sb3IuKiDoqK3lrpoiCisKKyM6IHRyYW5zcG9ydC5jOjcwNQorbXNnaWQgInN1cHBvcnQgZm9yIHByb3RvY29sIHYyIG5vdCBpbXBsZW1lbnRlZCB5ZXQiCittc2dzdHIgIuWNlOWumiB2MiDnmoTmlK/mj7TlsJrmnKrlr6bnj74iCisKKyM6IHRyYW5zcG9ydC5jOjgzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHZhbHVlIGZvciBjb25maWcgJyVzJzogJXMiCittc2dzdHIgIuioreWumiAnJXMnIOeahOWPluWAvOacquefpe+8miVzIgorCisjOiB0cmFuc3BvcnQuYzo4OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJhbnNwb3J0ICclcycgbm90IGFsbG93ZWQiCittc2dzdHIgIuWCs+i8uCAnJXMnIOS4jeWFgeiosSIKKworIzogdHJhbnNwb3J0LmM6OTQ5Cittc2dpZCAiZ2l0LW92ZXItcnN5bmMgaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZCIKK21zZ3N0ciAi5LiN5YaN5pSv5o+0IGdpdC1vdmVyLXJzeW5jIgorCisjOiB0cmFuc3BvcnQuYzoxMDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHN1Ym1vZHVsZSBwYXRocyBjb250YWluIGNoYW5nZXMgdGhhdCBjYW5cbiIKKyJub3QgYmUgZm91bmQgb24gYW55IHJlbW90ZTpcbiIKK21zZ3N0ciAi5LiL5YiX5a2Q5qih57WE6Lev5b6R5omA5YyF5ZCr55qE5L+u5pS55Zyo5Lu75L2V6YGg56uv5rqQ5Lit6YO95om+5LiN5Yiw77yaXG4iCisKKyM6IHRyYW5zcG9ydC5jOjEwNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlBsZWFzZSB0cnlcbiIKKyJcbiIKKyJcdGdpdCBwdXNoIC0tcmVjdXJzZS1zdWJtb2R1bGVzPW9uLWRlbWFuZFxuIgorIlxuIgorIm9yIGNkIHRvIHRoZSBwYXRoIGFuZCB1c2VcbiIKKyJcbiIKKyJcdGdpdCBwdXNoXG4iCisiXG4iCisidG8gcHVzaCB0aGVtIHRvIGEgcmVtb3RlLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisi6KuL5ZiX6KmmXG4iCisiXG4iCisiXHRnaXQgcHVzaCAtLXJlY3Vyc2Utc3VibW9kdWxlcz1vbi1kZW1hbmRcbiIKKyJcbiIKKyLmiJbogIXpgLLlhaXliLDlrZDnm67pjITln7fooYxcbiIKKyJcbiIKKyJcdGdpdCBwdXNoXG4iCisiXG4iCisi5Lul5o6o6YCB6Iez6YGg56uv44CCXG4iCisiXG4iCisKKyM6IHRyYW5zcG9ydC5jOjEwNTYKK21zZ2lkICJBYm9ydGluZy4iCittc2dzdHIgIuato+WcqOe1guatouOAgiIKKworIzogdHJhbnNwb3J0LmM6MTIwMQorbXNnaWQgImZhaWxlZCB0byBwdXNoIGFsbCBuZWVkZWQgc3VibW9kdWxlcyIKK21zZ3N0ciAi5LiN6IO95o6o6YCB5YWo6YOo6ZyA6KaB55qE5a2Q5qih57WEIgorCisjOiB0cmFuc3BvcnQuYzoxMzQ1IHRyYW5zcG9ydC1oZWxwZXIuYzo2NTcKK21zZ2lkICJvcGVyYXRpb24gbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbCIKK21zZ3N0ciAi5Y2U5a6a5LiN5pSv5o+06Kmy5YuV5L2cIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjEgdHJhbnNwb3J0LWhlbHBlci5jOjkwCittc2dpZCAiZnVsbCB3cml0ZSB0byByZW1vdGUgaGVscGVyIGZhaWxlZCIKK21zZ3N0ciAi5a6M5pW05a+r5YWl6YGg56uv5Yqp5omL5aSx5pWXIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaW5kIHJlbW90ZSBoZWxwZXIgZm9yICclcyciCittc2dzdHIgIueEoeazleeCuiAnJXMnIOaJvuWIsOmBoOerr+WKqeaJiyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjE2MCB0cmFuc3BvcnQtaGVscGVyLmM6NTcxCittc2dpZCAiY2FuJ3QgZHVwIGhlbHBlciBvdXRwdXQgZmQiCittc2dzdHIgIueEoeazleikh+ijveWKqeaJi+i8uOWHuuaqlOahiOWPpeafhCIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5rbm93biBtYW5kYXRvcnkgY2FwYWJpbGl0eSAlczsgdGhpcyByZW1vdGUgaGVscGVyIHByb2JhYmx5IG5lZWRzIG5ld2VyICIKKyJ2ZXJzaW9uIG9mIEdpdCIKK21zZ3N0ciAi5pyq55+l55qE5by35Yi26IO95YqbICVz77yM6Kmy6YGg56uv5Yqp5omL5Y+v6IO96ZyA6KaB5paw54mI5pys55qER2l0IgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MjE3Cittc2dpZCAidGhpcyByZW1vdGUgaGVscGVyIHNob3VsZCBpbXBsZW1lbnQgcmVmc3BlYyBjYXBhYmlsaXR5IgorbXNnc3RyICLpgaDnq6/liqnmiYvpnIDopoHlr6bnj74gcmVmc3BlYyDog73lipsiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoyODQgdHJhbnNwb3J0LWhlbHBlci5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB1bmV4cGVjdGVkbHkgc2FpZDogJyVzJyIKK21zZ3N0ciAiJXMg5oSP5aSW5Zyw6Kqq77yaJyVzJyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBhbHNvIGxvY2tlZCAlcyIKK21zZ3N0ciAiJXMg5Lmf6Y6W5a6a5LqGICVzIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NDkzCittc2dpZCAiY291bGRuJ3QgcnVuIGZhc3QtaW1wb3J0IgorbXNnc3RyICLkuI3og73ln7fooYwgZmFzdC1pbXBvcnQiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo1MTYKK21zZ2lkICJlcnJvciB3aGlsZSBydW5uaW5nIGZhc3QtaW1wb3J0IgorbXNnc3RyICLln7fooYwgZmFzdC1pbXBvcnQg55m855Sf6Yyv6KqkIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTQ1IHRyYW5zcG9ydC1oZWxwZXIuYzoxMTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIHJlZiAlcyIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+W5byV55SoICVzIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gcmVzcG9uc2UgdG8gY29ubmVjdDogJXMiCittc2dzdHIgIumAo+e3muaZguacquefpeeahOWbnuaHie+8miVzIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjEyCittc2dpZCAic2V0dGluZyByZW1vdGUgc2VydmljZSBwYXRoIG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wiCittc2dzdHIgIuWNlOWumuS4jeaUr+aPtOioreWumumBoOerr+acjeWLmei3r+W+kSIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjYxNAorbXNnaWQgImludmFsaWQgcmVtb3RlIHNlcnZpY2UgcGF0aCIKK21zZ3N0ciAi54Sh5pWI55qE6YGg56uv5pyN5YuZ6Lev5b6RIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGNvbm5lY3QgdG8gc3Vic2VydmljZSAlcyIKK21zZ3N0ciAi5LiN6IO96YCj57ea5Yiw5a2Q5pyN5YuZICVzIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6NzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIG9rL2Vycm9yLCBoZWxwZXIgc2FpZCAnJXMnIgorbXNnc3RyICLpoJDmnJ8gb2svZXJyb3LvvIzliqnmiYvoqqogJyVzJyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjc4OQorIywgYy1mb3JtYXQKK21zZ2lkICJoZWxwZXIgcmVwb3J0ZWQgdW5leHBlY3RlZCBzdGF0dXMgb2YgJXMiCittc2dzdHIgIuWKqeaJi+WgseWRiiAlcyDnmoTmhI/lpJbni4DmhYsiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo4NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgZHJ5LXJ1biIKK21zZ3N0ciAi5Yqp5omLICVzIOS4jeaUr+aPtCBkcnktcnVuIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODUzCisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkIgorbXNnc3RyICLliqnmiYsgJXMg5LiN5pSv5o+0IC0tc2lnbmVkIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODU2CisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkPWlmLWFza2VkIgorbXNnc3RyICLliqnmiYsgJXMg5LiN5pSv5o+0IC0tc2lnbmVkPWlmLWFza2VkIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODYxCisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tYXRvbWljIgorbXNnc3RyICLliqnmiYsgJXMg5LiN5pSv5o+0IC0tYXRvbWljIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6ODY3CisjLCBjLWZvcm1hdAorbXNnaWQgImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0ICdwdXNoLW9wdGlvbiciCittc2dzdHIgIuWKqeaJiyAlcyDkuI3mlK/mj7QgJ3B1c2gtb3B0aW9uJyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjk2NQorbXNnaWQgInJlbW90ZS1oZWxwZXIgZG9lc24ndCBzdXBwb3J0IHB1c2g7IHJlZnNwZWMgbmVlZGVkIgorbXNnc3RyICJyZW1vdGUtaGVwZXIg5LiN5pSv5o+0IHB1c2jvvIzpnIDopoHlvJXnlKjooajpgZTlvI8iCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzo5NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaGVscGVyICVzIGRvZXMgbm90IHN1cHBvcnQgJ2ZvcmNlJyIKK21zZ3N0ciAi5Yqp5omLICVzIOS4jeaUr+aPtCAnZm9yY2UnIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTAxNworbXNnaWQgImNvdWxkbid0IHJ1biBmYXN0LWV4cG9ydCIKK21zZ3N0ciAi54Sh5rOV5Z+36KGMIGZhc3QtZXhwb3J0IgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTAyMgorbXNnaWQgImVycm9yIHdoaWxlIHJ1bm5pbmcgZmFzdC1leHBvcnQiCittc2dzdHIgIuWft+ihjCBmYXN0LWV4cG9ydCDmmYLnmbznlJ/pjK/oqqQiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJObyByZWZzIGluIGNvbW1vbiBhbmQgbm9uZSBzcGVjaWZpZWQ7IGRvaW5nIG5vdGhpbmcuXG4iCisiUGVyaGFwcyB5b3Ugc2hvdWxkIHNwZWNpZnkgYSBicmFuY2ggc3VjaCBhcyAnbWFzdGVyJy5cbiIKK21zZ3N0ciAiIgorIuaykuacieWFseWQjOeahOW8leeUqOS4puS4lOS5n+aykuacieaMh+Wumu+8jOS7gOm6vOS5n+S4jeacg+WBmuOAglxuIgorIuWPr+iDveaCqOaHieipsuaMh+WumuS4gOWAi+WIhuaUr+WmgiAnbWFzdGVyJ+OAglxuIgorCisjOiB0cmFuc3BvcnQtaGVscGVyLmM6MTEyMAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgcmVzcG9uc2UgaW4gcmVmIGxpc3Q6ICVzIgorbXNnc3RyICLlvJXnlKjliJfooajkuK3moLzlvI/pjK/oqqTnmoTlm57mh4nvvJolcyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCglcykgZmFpbGVkIgorbXNnc3RyICLoroDlj5bvvIglc++8ieWkseaVlyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAid3JpdGUoJXMpIGZhaWxlZCIKK21zZ3N0ciAi5a+r77yIJXPvvInlpLHmlZciCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRocmVhZCBmYWlsZWQiCittc2dzdHIgIiVzIOWft+ihjOe3kuWkseaVlyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjEzNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdGhyZWFkIGZhaWxlZCB0byBqb2luOiAlcyIKK21zZ3N0ciAiJXMg5Z+36KGM57eS562J5b6F5aSx5pWX77yaJXMiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxMzcxIHRyYW5zcG9ydC1oZWxwZXIuYzoxMzc1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IHN0YXJ0IHRocmVhZCBmb3IgY29weWluZyBkYXRhOiAlcyIKK21zZ3N0ciAi5LiN6IO95ZWf5YuV5Z+36KGM57eS5L6G6KSH6KO96LOH5paZ77yaJXMiCisKKyM6IHRyYW5zcG9ydC1oZWxwZXIuYzoxNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHByb2Nlc3MgZmFpbGVkIHRvIHdhaXQiCittc2dzdHIgIiVzIOmAsueoi+etieW+heWkseaVlyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJvY2VzcyBmYWlsZWQiCittc2dzdHIgIiVzIOmAsueoi+WkseaVlyIKKworIzogdHJhbnNwb3J0LWhlbHBlci5jOjE0MzQgdHJhbnNwb3J0LWhlbHBlci5jOjE0NDMKK21zZ2lkICJjYW4ndCBzdGFydCB0aHJlYWQgZm9yIGNvcHlpbmcgZGF0YSIKK21zZ3N0ciAi5LiN6IO95ZWf5YuV5Z+36KGM57eS5L6G6KSH6KO96LOH5paZIgorCisjOiB0cmVlLXdhbGsuYzozMgorbXNnaWQgInRvby1zaG9ydCB0cmVlIG9iamVjdCIKK21zZ3N0ciAi5aSq55+t55qE5qi554uA54mp5Lu2IgorCisjOiB0cmVlLXdhbGsuYzozOAorbXNnaWQgIm1hbGZvcm1lZCBtb2RlIGluIHRyZWUgZW50cnkiCittc2dzdHIgIuaoueeLgOeJqeS7tuS4reeahOaineebruaooeW8j+mMr+iqpCIKKworIzogdHJlZS13YWxrLmM6NDIKK21zZ2lkICJlbXB0eSBmaWxlbmFtZSBpbiB0cmVlIGVudHJ5IgorbXNnc3RyICLmqLnni4Dnianku7bmop3nm67kuK3nqbrnmoTmqpTmoYjlkI0iCisKKyM6IHRyZWUtd2Fsay5jOjExNworbXNnaWQgInRvby1zaG9ydCB0cmVlIGZpbGUiCittc2dzdHIgIuWkquefreeahOaoueaqlOahiCIKKworIzogdW5wYWNrLXRyZWVzLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBjaGVja291dDpcbiIKKyIlJXNQbGVhc2UgY29tbWl0IHlvdXIgY2hhbmdlcyBvciBzdGFzaCB0aGVtIGJlZm9yZSB5b3Ugc3dpdGNoIGJyYW5jaGVzLiIKK21zZ3N0ciAiIgorIuaCqOWwjeS4i+WIl+aqlOahiOeahOacrOapn+S/ruaUueWwh+iiq+ewveWHuuWLleS9nOimhuiTi++8mlxuIgorIiUlc+iri+WcqOWIh+aPm+WIhuaUr+WJjeaPkOS6pOaIluWEsuiXj+aCqOeahOS/ruaUueOAgiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBjaGVja291dDpcbiIKKyIlJXMiCittc2dzdHIgIiIKKyLmgqjlsI3kuIvliJfmqpTmoYjnmoTmnKzmqZ/kv67mlLnlsIfooqvnsL3lh7rli5XkvZzopobok4vvvJpcbiIKKyIlJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCisiJSVzUGxlYXNlIGNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSBiZWZvcmUgeW91IG1lcmdlLiIKK21zZ3N0ciAiIgorIuaCqOWwjeS4i+WIl+aqlOahiOeahOacrOapn+S/ruaUueWwh+iiq+WQiOS9teWLleS9nOimhuiTi++8mlxuIgorIiUlc+iri+WcqOWQiOS9teWJjeaPkOS6pOaIluWEsuiXj+aCqOeahOS/ruaUueOAgiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGxvY2FsIGNoYW5nZXMgdG8gdGhlIGZvbGxvd2luZyBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKKyIlJXMiCittc2dzdHIgIiIKKyLmgqjlsI3kuIvliJfmqpTmoYjnmoTmnKzmqZ/kv67mlLnlsIfooqvlkIjkvbXli5XkvZzopobok4vvvJpcbiIKKyIlJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91ciBsb2NhbCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgJXM6XG4iCisiJSVzUGxlYXNlIGNvbW1pdCB5b3VyIGNoYW5nZXMgb3Igc3Rhc2ggdGhlbSBiZWZvcmUgeW91ICVzLiIKK21zZ3N0ciAiIgorIuaCqOWwjeS4i+WIl+aqlOahiOeahOacrOapn+S/ruaUueWwh+iiqyAlcyDopobok4vvvJpcbiIKKyIlJXPoq4vlnKggJXMg5LmL5YmN5o+Q5Lqk5oiW5YSy6JeP5oKo55qE5L+u5pS544CCIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICVzOlxuIgorIiUlcyIKK21zZ3N0ciAiIgorIuaCqOWwjeS4i+WIl+aqlOahiOeahOacrOapn+S/ruaUueWwh+iiqyAlcyDopobok4vvvJpcbiIKKyIlJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXBkYXRpbmcgdGhlIGZvbGxvd2luZyBkaXJlY3RvcmllcyB3b3VsZCBsb3NlIHVudHJhY2tlZCBmaWxlcyBpbiB0aGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisi5pu05paw5aaC5LiL55uu6YyE5bCH5pyD6YG65aSx5YW25Lit5pyq6L+96Lmk55qE5qqU5qGI77yaXG4iCisiJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgY2hlY2tvdXQ6XG4iCisiJSVzUGxlYXNlIG1vdmUgb3IgcmVtb3ZlIHRoZW0gYmVmb3JlIHlvdSBzd2l0Y2ggYnJhbmNoZXMuIgorbXNnc3RyICIiCisi5bel5L2c5Y2A5Lit5LiL5YiX5pyq6L+96Lmk55qE5qqU5qGI5bCH5pyD5Zug54K657C95Ye65YuV5L2c6ICM6KKr5Yiq6Zmk77yaXG4iCisiJSVz6KuL5Zyo5YiH5o+b5YiG5pSv5LmL5YmN56e75YuV5oiW5Yiq6Zmk44CCIgorCisjOiB1bnBhY2stdHJlZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSByZW1vdmVkIGJ5IGNoZWNrb3V0OlxuIgorIiUlcyIKK21zZ3N0ciAiIgorIuW3peS9nOWNgOS4reS4i+WIl+acqui/vei5pOeahOaqlOahiOWwh+acg+WboOeCuuewveWHuuWLleS9nOiAjOiiq+WIqumZpO+8mlxuIgorIiUlcyIKKworIzogdW5wYWNrLXRyZWVzLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBtZXJnZTpcbiIKKyIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91IG1lcmdlLiIKK21zZ3N0ciAiIgorIuW3peS9nOWNgOS4reS4i+WIl+acqui/vei5pOeahOaqlOahiOWwh+acg+WboOeCuuWQiOS9teWLleS9nOiAjOiiq+WIqumZpO+8mlxuIgorIiUlc+iri+WcqOWQiOS9teWJjeenu+WLleaIluWIqumZpOOAgiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTM4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBtZXJnZTpcbiIKKyIlJXMiCittc2dzdHIgIiIKKyLlt6XkvZzljYDkuK3kuIvliJfmnKrov73ouaTnmoTmqpTmoYjlsIfmnIPlm6DngrrlkIjkvbXli5XkvZzogIzooqvliKrpmaTvvJpcbiIKKyIlJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjE0MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIHJlbW92ZWQgYnkgJXM6XG4iCisiJSVzUGxlYXNlIG1vdmUgb3IgcmVtb3ZlIHRoZW0gYmVmb3JlIHlvdSAlcy4iCittc2dzdHIgIiIKKyLlt6XkvZzljYDkuK3kuIvliJfmnKrov73ouaTnmoTmqpTmoYjlsIfmnIPlm6DngrogJXMg5YuV5L2c6ICM6KKr5Yiq6Zmk77yaXG4iCisiJSVz6KuL5ZyoICVzIOWJjeenu+WLleaIluWIqumZpOOAgiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSAlczpcbiIKKyIlJXMiCittc2dzdHIgIiIKKyLlt6XkvZzljYDkuK3kuIvliJfmnKrov73ouaTnmoTmqpTmoYjlsIfmnIPlm6DngrogJXMg5YuV5L2c6ICM6KKr5Yiq6Zmk77yaXG4iCisiJSVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCisiY2hlY2tvdXQ6XG4iCisiJSVzUGxlYXNlIG1vdmUgb3IgcmVtb3ZlIHRoZW0gYmVmb3JlIHlvdSBzd2l0Y2ggYnJhbmNoZXMuIgorbXNnc3RyICIiCisi5bel5L2c5Y2A5Lit5LiL5YiX5pyq6L+96Lmk55qE5qqU5qGI5bCH5pyD5Zug54K657C95Ye65YuV5L2c6ICM6KKr6KaG6JOL77yaXG4iCisiJSVz6KuL5Zyo5YiH5o+b5YiG5pSv5YmN56e75YuV5oiW5Yiq6Zmk44CCIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAiCisiY2hlY2tvdXQ6XG4iCisiJSVzIgorbXNnc3RyICIiCisi5bel5L2c5Y2A5Lit5LiL5YiX5pyq6L+96Lmk55qE5qqU5qGI5bCH5pyD5Zug54K657C95Ye65YuV5L2c6ICM6KKr6KaG6JOL77yaXG4iCisiJSVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSBtZXJnZTpcbiIKKyIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91IG1lcmdlLiIKK21zZ3N0ciAiIgorIuW3peS9nOWNgOS4reS4i+WIl+acqui/vei5pOeahOaqlOahiOWwh+acg+WboOeCuuWQiOS9teWLleS9nOiAjOiiq+imhuiTi++8mlxuIgorIiUlc+iri+WcqOWQiOS9teWJjeenu+WLleaIluWIqumZpOOAgiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2U6XG4iCisiJSVzIgorbXNnc3RyICIiCisi5bel5L2c5Y2A5Lit5LiL5YiX5pyq6L+96Lmk55qE5qqU5qGI5bCH5pyD5Zug54K65ZCI5L215YuV5L2c6ICM6KKr6KaG6JOL77yaXG4iCisiJSVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKKyIlJXNQbGVhc2UgbW92ZSBvciByZW1vdmUgdGhlbSBiZWZvcmUgeW91ICVzLiIKK21zZ3N0ciAiIgorIuW3peS9nOWNgOS4reS4i+WIl+acqui/vei5pOeahOaqlOahiOWwh+acg+WboOeCuiAlcyDli5XkvZzogIzooqvopobok4vvvJpcbiIKKyIlJXPoq4vlnKggJXMg5YmN56e75YuV5oiW5Yiq6Zmk44CCIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgdW50cmFja2VkIHdvcmtpbmcgdHJlZSBmaWxlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlczpcbiIKKyIlJXMiCittc2dzdHIgIiIKKyLlt6XkvZzljYDkuK3kuIvliJfmnKrov73ouaTnmoTmqpTmoYjlsIfmnIPlm6DngrogJXMg5YuV5L2c6ICM6KKr6KaG6JOL77yaXG4iCisiJSVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiRW50cnkgJyVzJyBvdmVybGFwcyB3aXRoICclcycuICBDYW5ub3QgYmluZC4iCittc2dzdHIgIuaineebriAnJXMnIOWSjCAnJXMnIOmHjeeWiuOAgueEoeazleWQiOS9teOAgiIKKworIzogdW5wYWNrLXRyZWVzLmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDYW5ub3QgdXBkYXRlIHNwYXJzZSBjaGVja291dDogdGhlIGZvbGxvd2luZyBlbnRyaWVzIGFyZSBub3QgdXAgdG8gZGF0ZTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIueEoeazleabtOaWsOeogOeWj+ewveWHuu+8muWmguS4i+aineebruS4jeaYr+acgOaWsO+8mlxuIgorIiVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IHNwYXJzZSBjaGVja291dCAiCisidXBkYXRlOlxuIgorIiVzIgorbXNnc3RyICIiCisi5bel5L2c5Y2A5Lit5LiL5YiX5qqU5qGI5bCH6KKr56iA55aP57C95Ye65pu05paw5omA6KaG6JOL77yaXG4iCisiJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgcmVtb3ZlZCBieSBzcGFyc2UgY2hlY2tvdXQgIgorInVwZGF0ZTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIuW3peS9nOWNgOS4reS4i+WIl+aqlOahiOWwh+iiq+eogOeWj+ewveWHuuabtOaWsOaJgOWIqumZpO+8mlxuIgorIiVzIgorCisjOiB1bnBhY2stdHJlZXMuYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNhbm5vdCB1cGRhdGUgc3VibW9kdWxlOlxuIgorIiVzIgorbXNnc3RyICIiCisi54Sh5rOV5pu05paw5a2Q5qih57WE77yaXG4iCisiJXMiCisKKyM6IHVucGFjay10cmVlcy5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJBYm9ydGluZ1xuIgorbXNnc3RyICLmraPlnKjntYLmraJcbiIKKworIzogdW5wYWNrLXRyZWVzLmM6MzE3Cittc2dpZCAiVXBkYXRpbmcgZmlsZXMiCittc2dzdHIgIuato+WcqOabtOaWsOaqlOahiCIKKworIzogdW5wYWNrLXRyZWVzLmM6MzQ5Cittc2dpZCAiIgorInRoZSBmb2xsb3dpbmcgcGF0aHMgaGF2ZSBjb2xsaWRlZCAoZS5nLiBjYXNlLXNlbnNpdGl2ZSBwYXRoc1xuIgorIm9uIGEgY2FzZS1pbnNlbnNpdGl2ZSBmaWxlc3lzdGVtKSBhbmQgb25seSBvbmUgZnJvbSB0aGUgc2FtZVxuIgorImNvbGxpZGluZyBncm91cCBpcyBpbiB0aGUgd29ya2luZyB0cmVlOlxuIgorbXNnc3RyICIiCisi5Lul5LiL6Lev5b6R55m855Sf56Kw5pKe77yI5aaC77ya5Zyo5LiN5Y2A5YiG5aSn5bCP5a+r55qE5qqU5qGI57O757Wx5LiK55qE5Y2A5YiG5aSn5bCP5a+r55qE6Lev5b6R77yJ77yMXG4iCisi5Lim5LiU56Kw5pKe57WE5Lit5Y+q5pyJ5LiA5YCL5qqU5qGI5a2Y5Zyo5bel5L2c5Y2A5Lit77yaXG4iCisKKyM6IHVucGFjay10cmVlcy5jOjE0NDUKK21zZ2lkICJVcGRhdGluZyBpbmRleCBmbGFncyIKK21zZ3N0ciAi5q2j5Zyo5pu05paw57Si5byV5peX5qiZIgorCisjOiB1cmxtYXRjaC5jOjE2MworbXNnaWQgImludmFsaWQgVVJMIHNjaGVtZSBuYW1lIG9yIG1pc3NpbmcgJzovLycgc3VmZml4IgorbXNnc3RyICLnhKHmlYjnmoQgVVJMIOaWueahiOWQjeeoseaIlumBuuWksSAnOi8vJyDlvozntrQiCisKKyM6IHVybG1hdGNoLmM6MTg3IHVybG1hdGNoLmM6MzQ2IHVybG1hdGNoLmM6NDA1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgJVhYIGVzY2FwZSBzZXF1ZW5jZSIKK21zZ3N0ciAi54Sh5pWI55qEICVYWCDovYnnvqnluo/liJciCisKKyM6IHVybG1hdGNoLmM6MjE1Cittc2dpZCAibWlzc2luZyBob3N0IGFuZCBzY2hlbWUgaXMgbm90ICdmaWxlOiciCittc2dzdHIgIue8uuWwkeS4u+apn+WQjeeoseS4lCBVUkwg5pa55qGI5LiN5pivICdmaWxlOiciCisKKyM6IHVybG1hdGNoLmM6MjMyCittc2dpZCAiYSAnZmlsZTonIFVSTCBtYXkgbm90IGhhdmUgYSBwb3J0IG51bWJlciIKK21zZ3N0ciAi5LiA5YCLICdmaWxlOicgVVJMIOS4jeaHieipsuWMheWQq+WfoOiZnyIKKworIzogdXJsbWF0Y2guYzoyNDcKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlcnMgaW4gaG9zdCBuYW1lIgorbXNnc3RyICLkuLvmqZ/lkI3nqLHkuK3ljIXlkKvnhKHmlYjnmoTlrZflhYMiCisKKyM6IHVybG1hdGNoLmM6MjkyIHVybG1hdGNoLmM6MzAzCittc2dpZCAiaW52YWxpZCBwb3J0IG51bWJlciIKK21zZ3N0ciAi54Sh5pWI55qE5Z+g6JmfIgorCisjOiB1cmxtYXRjaC5jOjM3MQorbXNnaWQgImludmFsaWQgJy4uJyBwYXRoIHNlZ21lbnQiCittc2dzdHIgIueEoeaViOeahCAnLi4nIOi3r+W+keeJh+autSIKKworIzogd2Fsa2VyLmM6MTcwCittc2dpZCAiRmV0Y2hpbmcgb2JqZWN0cyIKK21zZ3N0ciAi5q2j5Zyo5oqT5Y+W54mp5Lu2IgorCisjOiB3b3JrdHJlZS5jOjI1OSBidWlsdGluL2FtLmM6MjA5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCAnJXMnIgorbXNnc3RyICLoroDlj5YgJyVzJyDlpLHmlZciCisKKyM6IHdvcmt0cmVlLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgYXQgbWFpbiB3b3JraW5nIHRyZWUgaXMgbm90IHRoZSByZXBvc2l0b3J5IGRpcmVjdG9yeSIKK21zZ3N0ciAi5Zyo5Li75bel5L2c5Y2A55qEICclcycg5LiN5piv54mI5pys5bqr55uu6YyEIgorCisjOiB3b3JrdHJlZS5jOjMxNgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGZpbGUgZG9lcyBub3QgY29udGFpbiBhYnNvbHV0ZSBwYXRoIHRvIHRoZSB3b3JraW5nIHRyZWUgbG9jYXRpb24iCittc2dzdHIgIuaqlOahiCAnJXMnIOS4jeWMheWQq+W3peS9nOWNgOeahOe1leWwjei3r+W+kSIKKworIzogd29ya3RyZWUuYzozMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiJyVzJyDkuI3lrZjlnKgiCisKKyM6IHdvcmt0cmVlLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgLmdpdCBmaWxlLCBlcnJvciBjb2RlICVkIgorbXNnc3RyICInJXMnIOS4jeaYr+S4gOWAiyAuZ2l0IOaqlOahiO+8jOmMr+iqpOeivCAlZCIKKworIzogd29ya3RyZWUuYzozNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCBwb2ludCBiYWNrIHRvICclcyciCittc2dzdHIgIiclcycg5rKS5pyJ5oyH5Zue5YiwICclcyciCisKKyM6IHdyYXBwZXIuYzoxODYgd3JhcHBlci5jOjM1NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciByZWFkaW5nIGFuZCB3cml0aW5nIgorbXNnc3RyICLnhKHms5XplovllZ8gJyVzJyDpgLLooYzoroDlr6siCisKKyM6IHdyYXBwZXIuYzozODcgd3JhcHBlci5jOjU4OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzICclcyciCittc2dzdHIgIuS4jeiDveWtmOWPliAnJXMnIgorCisjOiB3cmFwcGVyLmM6NTk2Cittc2dpZCAidW5hYmxlIHRvIGdldCBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IgorbXNnc3RyICLkuI3og73lj5blvpfnm67liY3lt6XkvZznm67pjIQiCisKKyM6IHd0LXN0YXR1cy5jOjE1OAorbXNnaWQgIlVubWVyZ2VkIHBhdGhzOiIKK21zZ3N0ciAi5pyq5ZCI5L2155qE6Lev5b6R77yaIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjE4NyB3dC1zdGF0dXMuYzoyMTkKK21zZ2lkICIgICh1c2UgXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIKK21zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgcmVzdG9yZSAtLXN0YWdlZCA85qqU5qGIPi4uLlwiIOS7peWPlua2iOaaq+WtmO+8iSIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiB3dC1zdGF0dXMuYzoxOTAgd3Qtc3RhdHVzLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgKHVzZSBcImdpdCByZXN0b3JlIC0tc291cmNlPSVzIC0tc3RhZ2VkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIgorbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCByZXN0b3JlIC0tc291cmNlPSVzIC0tc3RhZ2VkIDzmqpTmoYg+Li4uXCIg5Lul5Y+W5raI5pqr5a2Y77yJIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjE5MyB3dC1zdGF0dXMuYzoyMjUKK21zZ2lkICIgICh1c2UgXCJnaXQgcm0gLS1jYWNoZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiCittc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IHJtIC0tY2FjaGVkIDzmqpTmoYg+Li4uXCIg5Lul5Y+W5raI5pqr5a2Y77yJIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjE5NworbXNnaWQgIiAgKHVzZSBcImdpdCBhZGQgPGZpbGU+Li4uXCIgdG8gbWFyayByZXNvbHV0aW9uKSIKK21zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgYWRkIDzmqpTmoYg+Li4uXCIg5qiZ6KiY6Kej5rG65pa55qGI77yJIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjE5OSB3dC1zdGF0dXMuYzoyMDMKK21zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIGFzIGFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbikiCittc2dzdHIgIiAg77yI6YWM5oOF5L2/55SoIFwiZ2l0IGFkZC9ybSA85qqU5qGIPi4uLlwiIOaomeiomOino+axuuaWueahiO+8iSIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiB3dC1zdGF0dXMuYzoyMDEKK21zZ2lkICIgICh1c2UgXCJnaXQgcm0gPGZpbGU+Li4uXCIgdG8gbWFyayByZXNvbHV0aW9uKSIKK21zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgcm0gPOaqlOahiD4uLi5cIiDmqJnoqJjop6PmsbrmlrnmoYjvvIkiCisKKyM6IHd0LXN0YXR1cy5jOjIxMSB3dC1zdGF0dXMuYzoxMDc0Cittc2dpZCAiQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6IgorbXNnc3RyICLopoHmj5DkuqTnmoTorormm7TvvJoiCisKKyM6IHd0LXN0YXR1cy5jOjIzNCB3dC1zdGF0dXMuYzoxMDgzCittc2dpZCAiQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6IgorbXNnc3RyICLlsJrmnKrmmqvlrZjku6Xlgpnmj5DkuqTnmoTorormm7TvvJoiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogd3Qtc3RhdHVzLmM6MjM4Cittc2dpZCAiICAodXNlIFwiZ2l0IGFkZCA8ZmlsZT4uLi5cIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiCittc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IGFkZCA85qqU5qGIPi4uLlwiIOabtOaWsOimgeaPkOS6pOeahOWFp+Wuue+8iSIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiB3dC1zdGF0dXMuYzoyNDAKK21zZ2lkICIgICh1c2UgXCJnaXQgYWRkL3JtIDxmaWxlPi4uLlwiIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIKK21zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgYWRkL3JtIDzmqpTmoYg+Li4uXCIg5pu05paw6KaB5o+Q5Lqk55qE5YWn5a6577yJIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjI0MQorbXNnaWQgIiIKKyIgICh1c2UgXCJnaXQgcmVzdG9yZSA8ZmlsZT4uLi5cIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpIgorbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCByZXN0b3JlIDzmqpTmoYg+Li4uXCIg5o2o5qOE5bel5L2c5Y2A55qE5pS55YuV77yJIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjI0MworbXNnaWQgIiAgKGNvbW1pdCBvciBkaXNjYXJkIHRoZSB1bnRyYWNrZWQgb3IgbW9kaWZpZWQgY29udGVudCBpbiBzdWJtb2R1bGVzKSIKK21zZ3N0ciAiICDvvIjmj5DkuqTmiJbmjajmo4TlrZDmqKHntYTkuK3mnKrov73ouaTmiJbkv67mlLnnmoTlhaflrrnvvIkiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogd3Qtc3RhdHVzLmM6MjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgKHVzZSBcImdpdCAlcyA8ZmlsZT4uLi5cIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIgorbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCAlcyA85qqU5qGIPi4uLlwiIOS7peWMheWQq+imgeaPkOS6pOeahOWFp+Wuue+8iSIKKworIzogd3Qtc3RhdHVzLmM6MjY4Cittc2dpZCAiYm90aCBkZWxldGVkOiIKK21zZ3N0ciAi6ZuZ5pa55Yiq6Zmk77yaIgorCisjOiB3dC1zdGF0dXMuYzoyNzAKK21zZ2lkICJhZGRlZCBieSB1czoiCittc2dzdHIgIueUseaIkeWAkeaWsOWinu+8miIKKworIzogd3Qtc3RhdHVzLmM6MjcyCittc2dpZCAiZGVsZXRlZCBieSB0aGVtOiIKK21zZ3N0ciAi55Sx5LuW5YCR5Yiq6Zmk77yaIgorCisjOiB3dC1zdGF0dXMuYzoyNzQKK21zZ2lkICJhZGRlZCBieSB0aGVtOiIKK21zZ3N0ciAi55Sx5LuW5YCR5paw5aKe77yaIgorCisjOiB3dC1zdGF0dXMuYzoyNzYKK21zZ2lkICJkZWxldGVkIGJ5IHVzOiIKK21zZ3N0ciAi55Sx5oiR5YCR5Yiq6Zmk77yaIgorCisjOiB3dC1zdGF0dXMuYzoyNzgKK21zZ2lkICJib3RoIGFkZGVkOiIKK21zZ3N0ciAi6ZuZ5pa55paw5aKe77yaIgorCisjOiB3dC1zdGF0dXMuYzoyODAKK21zZ2lkICJib3RoIG1vZGlmaWVkOiIKK21zZ3N0ciAi6ZuZ5pa55L+u5pS577yaIgorCisjOiB3dC1zdGF0dXMuYzoyOTAKK21zZ2lkICJuZXcgZmlsZToiCittc2dzdHIgIuaWsOaqlOahiO+8miIKKworIzogd3Qtc3RhdHVzLmM6MjkyCittc2dpZCAiY29waWVkOiIKK21zZ3N0ciAi6KSH6KO977yaIgorCisjOiB3dC1zdGF0dXMuYzoyOTQKK21zZ2lkICJkZWxldGVkOiIKK21zZ3N0ciAi5Yiq6Zmk77yaIgorCisjOiB3dC1zdGF0dXMuYzoyOTYKK21zZ2lkICJtb2RpZmllZDoiCittc2dzdHIgIuS/ruaUue+8miIKKworIzogd3Qtc3RhdHVzLmM6Mjk4Cittc2dpZCAicmVuYW1lZDoiCittc2dzdHIgIumHjeaWsOWRveWQje+8miIKKworIzogd3Qtc3RhdHVzLmM6MzAwCittc2dpZCAidHlwZWNoYW5nZToiCittc2dzdHIgIumhnuWei+iuiuabtO+8miIKKworIzogd3Qtc3RhdHVzLmM6MzAyCittc2dpZCAidW5rbm93bjoiCittc2dzdHIgIuacquefpe+8miIKKworIzogd3Qtc3RhdHVzLmM6MzA0Cittc2dpZCAidW5tZXJnZWQ6IgorbXNnc3RyICLmnKrlkIjkvbXvvJoiCisKKyMgIOitr+iAhe+8muacq+WwvuWFqeWAi+S9jeWFg+e1hOWPr+iDveiiq+WIqua4m++8jOWmguaenOe/u+itr+eCuuS4reaWh+aomem7nuacg+WHuuePvuWNiuWAi+a8ouWtlworIzogd3Qtc3RhdHVzLmM6Mzg0Cittc2dpZCAibmV3IGNvbW1pdHMsICIKK21zZ3N0ciAi5paw5o+Q5LqkLCAiCisKKyMgIOitr+iAhe+8muacq+WwvuWFqeWAi+S9jeWFg+e1hOWPr+iDveiiq+WIqua4m++8jOWmguaenOe/u+itr+eCuuS4reaWh+aomem7nuacg+WHuuePvuWNiuWAi+a8ouWtlworIzogd3Qtc3RhdHVzLmM6Mzg2Cittc2dpZCAibW9kaWZpZWQgY29udGVudCwgIgorbXNnc3RyICLkv67mlLnnmoTlhaflrrksICIKKworIyAg6K2v6ICF77ya5pyr5bC+5YWp5YCL5L2N5YWD57WE5Y+v6IO96KKr5Yiq5rib77yM5aaC5p6c57+76K2v54K65Lit5paH5qiZ6bue5pyD5Ye654++5Y2K5YCL5ryi5a2XCisjOiB3dC1zdGF0dXMuYzozODgKK21zZ2lkICJ1bnRyYWNrZWQgY29udGVudCwgIgorbXNnc3RyICLmnKrov73ouaTnmoTlhaflrrksICIKKworIzogd3Qtc3RhdHVzLmM6OTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIllvdXIgc3Rhc2ggY3VycmVudGx5IGhhcyAlZCBlbnRyeSIKK21zZ2lkX3BsdXJhbCAiWW91ciBzdGFzaCBjdXJyZW50bHkgaGFzICVkIGVudHJpZXMiCittc2dzdHJbMF0gIuaCqOeahOWEsuiXj+WNgOebruWJjeaciSAlZCDmop3ntIDpjIQiCisKKyM6IHd0LXN0YXR1cy5jOjkzOAorbXNnaWQgIlN1Ym1vZHVsZXMgY2hhbmdlZCBidXQgbm90IHVwZGF0ZWQ6IgorbXNnc3RyICLlrZDmqKHntYTlt7Lkv67mlLnkvYblsJrmnKrmm7TmlrDvvJoiCisKKyM6IHd0LXN0YXR1cy5jOjk0MAorbXNnaWQgIlN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoiCittc2dzdHIgIuimgeaPkOS6pOeahOWtkOaooee1hOiuiuabtO+8miIKKworIzogd3Qtc3RhdHVzLmM6MTAyMgorbXNnaWQgIiIKKyJEbyBub3QgbW9kaWZ5IG9yIHJlbW92ZSB0aGUgbGluZSBhYm92ZS5cbiIKKyJFdmVyeXRoaW5nIGJlbG93IGl0IHdpbGwgYmUgaWdub3JlZC4iCittc2dzdHIgIiIKKyLkuI3opoHmlLnli5XmiJbliKrpmaTkuIrpnaLnmoTkuIDooYzjgIJcbiIKKyLlhbbkuIvmiYDmnInlhaflrrnpg73lsIfooqvlv73nlaXjgIIiCisKKyM6IHd0LXN0YXR1cy5jOjExMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGNvbXB1dGUgdGhlIGJyYW5jaCBhaGVhZC9iZWhpbmQgdmFsdWVzLlxuIgorIllvdSBjYW4gdXNlICctLW5vLWFoZWFkLWJlaGluZCcgdG8gYXZvaWQgdGhpcy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIuiKseS6hiAlLjJmIOenkuaJjeioiOeul+WHuuWIhuaUr+eahOmgmOWFiC/okL3lvoznr4TlnI3jgIJcbiIKKyLngrrpgb/lhY3vvIzmgqjlj6/ku6Xkvb/nlKggJy0tbm8tYWhlYWQtYmVoaW5kJ+OAglxuIgorCisjOiB3dC1zdGF0dXMuYzoxMTQ0Cittc2dpZCAiWW91IGhhdmUgdW5tZXJnZWQgcGF0aHMuIgorbXNnc3RyICLmgqjmnInlsJrmnKrlkIjkvbXnmoTot6/lvpHjgIIiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogd3Qtc3RhdHVzLmM6MTE0NworbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCBjb21taXRcIikiCittc2dzdHIgIiAg77yI6Kej5rG66KGd56qB5Lim5Z+36KGMIFwiZ2l0IGNvbW1pdFwi77yJIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjExNDkKK21zZ2lkICIgICh1c2UgXCJnaXQgbWVyZ2UgLS1hYm9ydFwiIHRvIGFib3J0IHRoZSBtZXJnZSkiCittc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IG1lcmdlIC0tYWJvcnRcIiDntYLmraLlkIjkvbXvvIkiCisKKyM6IHd0LXN0YXR1cy5jOjExNTMKK21zZ2lkICJBbGwgY29uZmxpY3RzIGZpeGVkIGJ1dCB5b3UgYXJlIHN0aWxsIG1lcmdpbmcuIgorbXNnc3RyICLmiYDmnInooZ3nqoHlt7Lop6PmsbrkvYbmgqjku43omZXmlrzlkIjkvbXkuK3jgIIiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogd3Qtc3RhdHVzLmM6MTE1NgorbXNnaWQgIiAgKHVzZSBcImdpdCBjb21taXRcIiB0byBjb25jbHVkZSBtZXJnZSkiCittc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IGNvbW1pdFwiIOe1kOadn+WQiOS9te+8iSIKKworIzogd3Qtc3RhdHVzLmM6MTE2NQorbXNnaWQgIllvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbiBhbSBzZXNzaW9uLiIKK21zZ3N0ciAi5oKo5q2j6JmV5pa8IGFtIOWLleS9nOmBjueoi+S4reOAgiIKKworIzogd3Qtc3RhdHVzLmM6MTE2OAorbXNnaWQgIlRoZSBjdXJyZW50IHBhdGNoIGlzIGVtcHR5LiIKK21zZ3N0ciAi55uu5YmN55qE5L+u6KOc5qqU54K656m644CCIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjExNzIKK21zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCB0aGVuIHJ1biBcImdpdCBhbSAtLWNvbnRpbnVlXCIpIgorbXNnc3RyICIgIO+8iOino+axuuihneeqge+8jOeEtuW+jOWft+ihjCBcImdpdCBhbSAtLWNvbnRpbnVlXCLvvIkiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogd3Qtc3RhdHVzLmM6MTE3NAorbXNnaWQgIiAgKHVzZSBcImdpdCBhbSAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgorbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCBhbSAtLXNraXBcIiDot7PpgY7mraTkv67oo5zmqpTvvIkiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogd3Qtc3RhdHVzLmM6MTE3NgorbXNnaWQgIiAgKHVzZSBcImdpdCBhbSAtLWFib3J0XCIgdG8gcmVzdG9yZSB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKK21zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgYW0gLS1hYm9ydFwiIOW+qeWOn+WOn+acieWIhuaUr++8iSIKKworIzogd3Qtc3RhdHVzLmM6MTMwOQorbXNnaWQgImdpdC1yZWJhc2UtdG9kbyBpcyBtaXNzaW5nLiIKK21zZ3N0ciAiZ2l0LXJlYmFzZS10b2RvIOmBuuWkseOAgiIKKworIzogd3Qtc3RhdHVzLmM6MTMxMQorbXNnaWQgIk5vIGNvbW1hbmRzIGRvbmUuIgorbXNnc3RyICLmspLmnInmjIfku6Tooqvln7fooYzjgIIiCisKKyM6IHd0LXN0YXR1cy5jOjEzMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiTGFzdCBjb21tYW5kIGRvbmUgKCVkIGNvbW1hbmQgZG9uZSk6IgorbXNnaWRfcGx1cmFsICJMYXN0IGNvbW1hbmRzIGRvbmUgKCVkIGNvbW1hbmRzIGRvbmUpOiIKK21zZ3N0clswXSAi5pyA5b6M5LiA5qKd5oyH5Luk5bey5a6M5oiQ77yIJWQg5qKd5oyH5Luk6KKr5Z+36KGM77yJ77yaIgorCisjOiB3dC1zdGF0dXMuYzoxMzI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgKHNlZSBtb3JlIGluIGZpbGUgJXMpIgorbXNnc3RyICIgIO+8iOabtOWkmuWPg+imi+aqlOahiCAlc++8iSIKKworIzogd3Qtc3RhdHVzLmM6MTMzMAorbXNnaWQgIk5vIGNvbW1hbmRzIHJlbWFpbmluZy4iCittc2dzdHIgIuacquWJqeS4i+S7u+S9leaMh+S7pOOAgiIKKworIzogd3Qtc3RhdHVzLmM6MTMzMworIywgYy1mb3JtYXQKK21zZ2lkICJOZXh0IGNvbW1hbmQgdG8gZG8gKCVkIHJlbWFpbmluZyBjb21tYW5kKToiCittc2dpZF9wbHVyYWwgIk5leHQgY29tbWFuZHMgdG8gZG8gKCVkIHJlbWFpbmluZyBjb21tYW5kcyk6IgorbXNnc3RyWzBdICLmjqXkuIvkvobopoHln7fooYznmoTmjIfku6TvvIjlianppJggJWQg5qKd5oyH5Luk77yJ77yaIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjEzNDEKK21zZ2lkICIgICh1c2UgXCJnaXQgcmViYXNlIC0tZWRpdC10b2RvXCIgdG8gdmlldyBhbmQgZWRpdCkiCittc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IHJlYmFzZSAtLWVkaXQtdG9kb1wiIOS+huaqouimluWSjOe3qOi8r++8iSIKKworIzogd3Qtc3RhdHVzLmM6MTM1MworIywgYy1mb3JtYXQKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSByZWJhc2luZyBicmFuY2ggJyVzJyBvbiAnJXMnLiIKK21zZ3N0ciAi5oKo5Zyo5Z+36KGM5bCH5YiG5pSvICclcycg6YeN5a6a5Z+65bqV5YiwICclcycg55qE5YuV5L2c44CCIgorCisjOiB3dC1zdGF0dXMuYzoxMzU4Cittc2dpZCAiWW91IGFyZSBjdXJyZW50bHkgcmViYXNpbmcuIgorbXNnc3RyICLmgqjlnKjln7fooYzph43lrprln7rlupXli5XkvZzjgIIiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogd3Qtc3RhdHVzLmM6MTM3MQorbXNnaWQgIiAgKGZpeCBjb25mbGljdHMgYW5kIHRoZW4gcnVuIFwiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXCIpIgorbXNnc3RyICIgIO+8iOino+axuuihneeqge+8jOeEtuW+jOWft+ihjCBcImdpdCByZWJhc2UgLS1jb250aW51ZVwi77yJIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjEzNzMKK21zZ2lkICIgICh1c2UgXCJnaXQgcmViYXNlIC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCittc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IHJlYmFzZSAtLXNraXBcIiDot7PpgY7mraTkv67oo5zmqpTvvIkiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogd3Qtc3RhdHVzLmM6MTM3NQorbXNnaWQgIiAgKHVzZSBcImdpdCByZWJhc2UgLS1hYm9ydFwiIHRvIGNoZWNrIG91dCB0aGUgb3JpZ2luYWwgYnJhbmNoKSIKK21zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgcmViYXNlIC0tYWJvcnRcIiDku6XnsL3lh7rljp/mnInliIbmlK/vvIkiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogd3Qtc3RhdHVzLmM6MTM4MgorbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKK21zZ3N0ciAiICDvvIjmiYDmnInooZ3nqoHlt7Lop6PmsbrvvJrln7fooYwgXCJnaXQgcmViYXNlIC0tY29udGludWVcIu+8iSIKKworIzogd3Qtc3RhdHVzLmM6MTM4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGFyZSBjdXJyZW50bHkgc3BsaXR0aW5nIGEgY29tbWl0IHdoaWxlIHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgorbXNnc3RyICLmgqjlnKjln7fooYzlsIfliIbmlK8gJyVzJyDph43lrprln7rlupXliLAgJyVzJyDnmoTli5XkvZzmmYLliIblibLmj5DkuqTjgIIiCisKKyM6IHd0LXN0YXR1cy5jOjEzOTEKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBzcGxpdHRpbmcgYSBjb21taXQgZHVyaW5nIGEgcmViYXNlLiIKK21zZ3N0ciAi5oKo5Zyo5Z+36KGM6YeN5a6a5Z+65bqV5YuV5L2c5pmC5YiG5Ymy5o+Q5Lqk44CCIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjEzOTQKK21zZ2lkICIgIChPbmNlIHlvdXIgd29ya2luZyBkaXJlY3RvcnkgaXMgY2xlYW4sIHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiKSIKK21zZ3N0ciAiICDvvIjkuIDml6bmgqjlt6XkvZznm67pjITmj5DkuqTkub7mt6jlvozvvIzln7fooYwgXCJnaXQgcmViYXNlIC0tY29udGludWVcIu+8iSIKKworIzogd3Qtc3RhdHVzLmM6MTM5OAorIywgYy1mb3JtYXQKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBlZGl0aW5nIGEgY29tbWl0IHdoaWxlIHJlYmFzaW5nIGJyYW5jaCAnJXMnIG9uICclcycuIgorbXNnc3RyICLmgqjlnKjln7fooYzlsIfliIbmlK8gJyVzJyDph43lrprln7rlupXliLAgJyVzJyDnmoTli5XkvZzmmYLnt6jovK/mj5DkuqTjgIIiCisKKyM6IHd0LXN0YXR1cy5jOjE0MDMKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBlZGl0aW5nIGEgY29tbWl0IGR1cmluZyBhIHJlYmFzZS4iCittc2dzdHIgIuaCqOWcqOWft+ihjOmHjeWumuWfuuW6leWLleS9nOaZgue3qOi8r+aPkOS6pOOAgiIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiB3dC1zdGF0dXMuYzoxNDA2Cittc2dpZCAiICAodXNlIFwiZ2l0IGNvbW1pdCAtLWFtZW5kXCIgdG8gYW1lbmQgdGhlIGN1cnJlbnQgY29tbWl0KSIKK21zZ3N0ciAiICDvvIjkvb/nlKggXCJnaXQgY29tbWl0IC0tYW1lbmRcIiDkv67oo5znm67liY3mj5DkuqTvvIkiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogd3Qtc3RhdHVzLmM6MTQwOAorbXNnaWQgIiIKKyIgICh1c2UgXCJnaXQgcmViYXNlIC0tY29udGludWVcIiBvbmNlIHlvdSBhcmUgc2F0aXNmaWVkIHdpdGggeW91ciBjaGFuZ2VzKSIKK21zZ3N0ciAiICDvvIjnlbbmgqjlsI3mgqjnmoTkv67mlLnmu7/mhI/lvozln7fooYwgXCJnaXQgcmViYXNlIC0tY29udGludWVcIu+8iSIKKworIzogd3Qtc3RhdHVzLmM6MTQxOQorbXNnaWQgIkNoZXJyeS1waWNrIGN1cnJlbnRseSBpbiBwcm9ncmVzcy4iCittc2dzdHIgIuaPgOmBuOWLleS9nOato+WcqOmAsuihjOS4reOAgiIKKworIzogd3Qtc3RhdHVzLmM6MTQyMgorIywgYy1mb3JtYXQKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBjaGVycnktcGlja2luZyBjb21taXQgJXMuIgorbXNnc3RyICLmgqjlnKjln7fooYzmj4Dpgbjmj5DkuqQgJXMg55qE5YuV5L2c44CCIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjE0MjkKK21zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiKSIKK21zZ3N0ciAiICDvvIjop6PmsbrooZ3nqoHkuKbln7fooYwgXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwi77yJIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjE0MzIKK21zZ2lkICIgIChydW4gXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIHRvIGNvbnRpbnVlKSIKK21zZ3N0ciAiICDvvIjln7fooYwgXCJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZVwiIOS7pee5vOe6jO+8iSIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiB3dC1zdGF0dXMuYzoxNDM1Cittc2dpZCAiICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiCittc2dzdHIgIiAg77yI5omA5pyJ6KGd56qB5bey6Kej5rG677ya5Z+36KGMIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIu+8iSIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiB3dC1zdGF0dXMuYzoxNDM3Cittc2dpZCAiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiCittc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFwiIOi3s+mBjuatpOS/ruijnOaqlO+8iSIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiB3dC1zdGF0dXMuYzoxNDM5Cittc2dpZCAiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnRcIiB0byBjYW5jZWwgdGhlIGNoZXJyeS1waWNrIG9wZXJhdGlvbikiCittc2dzdHIgIiAg77yI5L2/55SoIFwiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnRcIiDku6Xlj5bmtojmj4Dpgbjli5XkvZzvvIkiCisKKyM6IHd0LXN0YXR1cy5jOjE0NDkKK21zZ2lkICJSZXZlcnQgY3VycmVudGx5IGluIHByb2dyZXNzLiIKK21zZ3N0ciAi6YKE5Y6f5YuV5L2c5q2j5Zyo6KGM5Lit44CCIgorCisjOiB3dC1zdGF0dXMuYzoxNDUyCisjLCBjLWZvcm1hdAorbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IHJldmVydGluZyBjb21taXQgJXMuIgorbXNnc3RyICLmgqjlnKjln7fooYzlj43ovYnmj5DkuqQgJXMg55qE5YuV5L2c44CCIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjE0NTgKK21zZ2lkICIgIChmaXggY29uZmxpY3RzIGFuZCBydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiCittc2dzdHIgIiAg77yI6Kej5rG66KGd56qB5Lim5Z+36KGMIFwiZ2l0IHJldmVydCAtLWNvbnRpbnVlXCLvvIkiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogd3Qtc3RhdHVzLmM6MTQ2MQorbXNnaWQgIiAgKHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiIHRvIGNvbnRpbnVlKSIKK21zZ3N0ciAiICDvvIjln7fooYwgXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIiDku6XnubznuozvvIkiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogd3Qtc3RhdHVzLmM6MTQ2NAorbXNnaWQgIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiKSIKK21zZ3N0ciAiICDvvIjmiYDmnInooZ3nqoHlt7Lop6PmsbrvvJrln7fooYwgXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIu+8iSIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiB3dC1zdGF0dXMuYzoxNDY2Cittc2dpZCAiICAodXNlIFwiZ2l0IHJldmVydCAtLXNraXBcIiB0byBza2lwIHRoaXMgcGF0Y2gpIgorbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCByZXZlcnQgLS1za2lwXCIg6Lez6YGO5q2k5L+u6KOc5qqU77yJIgorCisjICDora/ogIXvvJroq4vntq3mjIHliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjE0NjgKK21zZ2lkICIgICh1c2UgXCJnaXQgcmV2ZXJ0IC0tYWJvcnRcIiB0byBjYW5jZWwgdGhlIHJldmVydCBvcGVyYXRpb24pIgorbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCByZXZlcnQgLS1hYm9ydFwiIOS7peWPlua2iOWPjei9ieaPkOS6pOWLleS9nO+8iSIKKworIzogd3Qtc3RhdHVzLmM6MTQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICJZb3UgYXJlIGN1cnJlbnRseSBiaXNlY3RpbmcsIHN0YXJ0ZWQgZnJvbSBicmFuY2ggJyVzJy4iCittc2dzdHIgIuaCqOWcqOWft+ihjOW+nuWIhuaUryAnJXMnIOmWi+Wni+eahOS6jOWIhuWwi+aJvuWLleS9nOOAgiIKKworIzogd3Qtc3RhdHVzLmM6MTQ4MgorbXNnaWQgIllvdSBhcmUgY3VycmVudGx5IGJpc2VjdGluZy4iCittc2dzdHIgIuaCqOWcqOWft+ihjOS6jOWIhuWwi+aJvuWLleS9nOOAgiIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiB3dC1zdGF0dXMuYzoxNDg1Cittc2dpZCAiICAodXNlIFwiZ2l0IGJpc2VjdCByZXNldFwiIHRvIGdldCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBicmFuY2gpIgorbXNnc3RyICIgIO+8iOS9v+eUqCBcImdpdCBiaXNlY3QgcmVzZXRcIiDnsL3lh7rljp/mnInliIbmlK/vvIkiCisKKyM6IHd0LXN0YXR1cy5jOjE2OTQKK21zZ2lkICJPbiBicmFuY2ggIgorbXNnc3RyICLkvY3mlrzliIbmlK8gIgorCisjOiB3dC1zdGF0dXMuYzoxNzAxCittc2dpZCAiaW50ZXJhY3RpdmUgcmViYXNlIGluIHByb2dyZXNzOyBvbnRvICIKK21zZ3N0ciAi5LqS5YuV5byP6YeN5a6a5Z+65bqV5YuV5L2c5q2j5Zyo6YCy6KGM5Lit77yb6IezICIKKworIzogd3Qtc3RhdHVzLmM6MTcwMworbXNnaWQgInJlYmFzZSBpbiBwcm9ncmVzczsgb250byAiCittc2dzdHIgIumHjeWumuWfuuW6leWLleS9nOato+WcqOmAsuihjOS4re+8m+iHsyAiCisKKyM6IHd0LXN0YXR1cy5jOjE3MTMKK21zZ2lkICJOb3QgY3VycmVudGx5IG9uIGFueSBicmFuY2guIgorbXNnc3RyICLnm67liY3kuI3lnKjku7vkvZXliIbmlK/kuIrjgIIiCisKKyM6IHd0LXN0YXR1cy5jOjE3MzAKK21zZ2lkICJJbml0aWFsIGNvbW1pdCIKK21zZ3N0ciAi5Yid5aeL5o+Q5LqkIgorCisjOiB3dC1zdGF0dXMuYzoxNzMxCittc2dpZCAiTm8gY29tbWl0cyB5ZXQiCittc2dzdHIgIuWwmueEoeaPkOS6pCIKKworIzogd3Qtc3RhdHVzLmM6MTc0NQorbXNnaWQgIlVudHJhY2tlZCBmaWxlcyIKK21zZ3N0ciAi5pyq6L+96Lmk55qE5qqU5qGIIgorCisjOiB3dC1zdGF0dXMuYzoxNzQ3Cittc2dpZCAiSWdub3JlZCBmaWxlcyIKK21zZ3N0ciAi5b+955Wl55qE5qqU5qGIIgorCisjOiB3dC1zdGF0dXMuYzoxNzUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJJdCB0b29rICUuMmYgc2Vjb25kcyB0byBlbnVtZXJhdGUgdW50cmFja2VkIGZpbGVzLiAnc3RhdHVzIC11bm8nXG4iCisibWF5IHNwZWVkIGl0IHVwLCBidXQgeW91IGhhdmUgdG8gYmUgY2FyZWZ1bCBub3QgdG8gZm9yZ2V0IHRvIGFkZFxuIgorIm5ldyBmaWxlcyB5b3Vyc2VsZiAoc2VlICdnaXQgaGVscCBzdGF0dXMnKS4iCittc2dzdHIgIiIKKyLogJfosrvkuoYgJS4yZiDnp5Lku6XmnproiInmnKrov73ouaTnmoTmqpTmoYjjgIInc3RhdHVzIC11bm8nIOS5n+ioseiDveaPkOmrmOmAn+W6pu+8jFxuIgorIuS9huaCqOmcgOimgeWwj+W/g+S4jeimgeW/mOS6huaWsOWinuaWsOaqlOahiO+8iOWPg+imiyAnZ2l0IGhlbHAgc3RhdHVzJ++8ieOAgiIKKworIzogd3Qtc3RhdHVzLmM6MTc1NworIywgYy1mb3JtYXQKK21zZ2lkICJVbnRyYWNrZWQgZmlsZXMgbm90IGxpc3RlZCVzIgorbXNnc3RyICLmnKrov73ouaTnmoTmqpTmoYjmspLmnInliJflh7olcyIKKworIyAg6K2v6ICF77ya5Lit5paH5a2X5Liy5ou85o6l77yM5Y+v5Yiq6Zmk5YmN5bCO56m65qC8CisjOiB3dC1zdGF0dXMuYzoxNzU5Cittc2dpZCAiICh1c2UgLXUgb3B0aW9uIHRvIHNob3cgdW50cmFja2VkIGZpbGVzKSIKK21zZ3N0ciAi77yI5L2/55SoIC11IOWPg+aVuOmhr+ekuuacqui/vei5pOeahOaqlOahiO+8iSIKKworIzogd3Qtc3RhdHVzLmM6MTc2NQorbXNnaWQgIk5vIGNoYW5nZXMiCittc2dzdHIgIuaykuacieS/ruaUuSIKKworIzogd3Qtc3RhdHVzLmM6MTc3MAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdCAodXNlIFwiZ2l0IGFkZFwiIGFuZC9vciBcImdpdCBjb21taXQgLWFcIilcbiIKK21zZ3N0ciAi5L+u5pS55bCa5pyq5Yqg5YWl5o+Q5Lqk77yI5L2/55SoIFwiZ2l0IGFkZFwiIOWSjC/miJYgXCJnaXQgY29tbWl0IC1hXCLvvIlcbiIKKworIzogd3Qtc3RhdHVzLmM6MTc3MworIywgYy1mb3JtYXQKK21zZ2lkICJubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdFxuIgorbXNnc3RyICLkv67mlLnlsJrmnKrliqDlhaXmj5DkuqRcbiIKKworIzogd3Qtc3RhdHVzLmM6MTc3NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibm90aGluZyBhZGRlZCB0byBjb21taXQgYnV0IHVudHJhY2tlZCBmaWxlcyBwcmVzZW50ICh1c2UgXCJnaXQgYWRkXCIgdG8gIgorInRyYWNrKVxuIgorbXNnc3RyICLmj5DkuqTngrrnqbrvvIzkvYbmmK/lrZjlnKjlsJrmnKrov73ouaTnmoTmqpTmoYjvvIjkvb/nlKggXCJnaXQgYWRkXCIg5bu656uL6L+96Lmk77yJXG4iCisKKyM6IHd0LXN0YXR1cy5jOjE3NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aGluZyBhZGRlZCB0byBjb21taXQgYnV0IHVudHJhY2tlZCBmaWxlcyBwcmVzZW50XG4iCittc2dzdHIgIuaPkOS6pOeCuuepuu+8jOS9huaYr+WtmOWcqOWwmuacqui/vei5pOeahOaqlOahiFxuIgorCisjICDora/ogIXvvJrkuK3mloflrZfkuLLmi7zmjqXvvIzlj6/liKrpmaTliY3lsI7nqbrmoLwKKyM6IHd0LXN0YXR1cy5jOjE3ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aGluZyB0byBjb21taXQgKGNyZWF0ZS9jb3B5IGZpbGVzIGFuZCB1c2UgXCJnaXQgYWRkXCIgdG8gdHJhY2spXG4iCittc2dzdHIgIueEoeaqlOahiOimgeaPkOS6pO+8iOW7uueriy/opIfoo73mqpTmoYjkuKbkvb/nlKggXCJnaXQgYWRkXCIg5bu656uL6L+96Lmk77yJXG4iCisKKyM6IHd0LXN0YXR1cy5jOjE3ODUgd3Qtc3RhdHVzLmM6MTc5MAorIywgYy1mb3JtYXQKK21zZ2lkICJub3RoaW5nIHRvIGNvbW1pdFxuIgorbXNnc3RyICLnhKHmqpTmoYjopoHmj5DkuqRcbiIKKworIyAg6K2v6ICF77ya5Lit5paH5a2X5Liy5ou85o6l77yM5Y+v5Yiq6Zmk5YmN5bCO56m65qC8CisjOiB3dC1zdGF0dXMuYzoxNzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0ICh1c2UgLXUgdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpXG4iCittc2dzdHIgIueEoeaqlOahiOimgeaPkOS6pO+8iOS9v+eUqCAtdSDpoa/npLrmnKrov73ouaTnmoTmqpTmoYjvvIlcbiIKKworIyAg6K2v6ICF77ya5Lit5paH5a2X5Liy5ou85o6l77yM5Y+v5Yiq6Zmk5YmN5bCO56m65qC8CisjOiB3dC1zdGF0dXMuYzoxNzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdGhpbmcgdG8gY29tbWl0LCB3b3JraW5nIHRyZWUgY2xlYW5cbiIKK21zZ3N0ciAi5rKS5pyJ6KaB5o+Q5Lqk55qE5qqU5qGI77yM5bel5L2c5Y2A54K65Lm+5reo54uA5oWLXG4iCisKKyM6IHd0LXN0YXR1cy5jOjE5MDUKK21zZ2lkICJObyBjb21taXRzIHlldCBvbiAiCittc2dzdHIgIuWwmueEoeaPkOS6pOWcqCAiCisKKyM6IHd0LXN0YXR1cy5jOjE5MDkKK21zZ2lkICJIRUFEIChubyBicmFuY2gpIgorbXNnc3RyICJIRUFE77yI6Z2e5YiG5pSv77yJIgorCisjOiB3dC1zdGF0dXMuYzoxOTQwCittc2dpZCAiZGlmZmVyZW50IgorbXNnc3RyICLkuI3lkIwiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWPpeWwvuepuuagvAorIzogd3Qtc3RhdHVzLmM6MTk0MiB3dC1zdGF0dXMuYzoxOTUwCittc2dpZCAiYmVoaW5kICIKK21zZ3N0ciAi6JC95b6MICIKKworIzogd3Qtc3RhdHVzLmM6MTk0NSB3dC1zdGF0dXMuYzoxOTQ4Cittc2dpZCAiYWhlYWQgIgorbXNnc3RyICLpoJjlhYggIgorCisjLiBUUkFOU0xBVE9SUzogdGhlIGFjdGlvbiBpcyBlLmcuICJwdWxsIHdpdGggcmViYXNlIgorIzogd3Qtc3RhdHVzLmM6MjQ3MAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgJXM6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgorbXNnc3RyICLkuI3og70lc++8muaCqOacieacquaaq+WtmOeahOiuiuabtOOAgiIKKworIzogd3Qtc3RhdHVzLmM6MjQ3NgorbXNnaWQgImFkZGl0aW9uYWxseSwgeW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKK21zZ3N0ciAi5Y+m5aSW77yM5oKo55qE57Si5byV5Lit5YyF5ZCr5pyq5o+Q5Lqk55qE6K6K5pu044CCIgorCisjOiB3dC1zdGF0dXMuYzoyNDc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCAlczogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKK21zZ3N0ciAi5LiN6IO9JXPvvJrmgqjnmoTntKLlvJXkuK3ljIXlkKvmnKrmj5DkuqTnmoTorormm7TjgIIiCisKKyM6IGNvbXBhdC9wcmVjb21wb3NlX3V0ZjguYzo1OCBidWlsdGluL2Nsb25lLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgJyVzJyIKK21zZ3N0ciAi5Yiq6ZmkICclcycg5aSx5pWXIgorCisjOiBidWlsdGluL2FkZC5jOjI2Cittc2dpZCAiZ2l0IGFkZCBbPG9wdGlvbnM+XSBbLS1dIDxwYXRoc3BlYz4uLi4iCittc2dzdHIgImdpdCBhZGQgWzzpgbjpoIU+XSBbLS1dIDzot6/lvpHopo/moLw+Li4uIgorCisjOiBidWlsdGluL2FkZC5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGlmZiBzdGF0dXMgJWMiCittc2dzdHIgIuaEj+WklueahOW3rueVsOeLgOaFiyAlYyIKKworIzogYnVpbHRpbi9hZGQuYzo5MyBidWlsdGluL2NvbW1pdC5jOjI4OAorbXNnaWQgInVwZGF0aW5nIGZpbGVzIGZhaWxlZCIKK21zZ3N0ciAi5pu05paw5qqU5qGI5aSx5pWXIgorCisjOiBidWlsdGluL2FkZC5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmUgJyVzJ1xuIgorbXNnc3RyICLliKrpmaQgJyVzJ1xuIgorCisjOiBidWlsdGluL2FkZC5jOjE3OAorbXNnaWQgIlVuc3RhZ2VkIGNoYW5nZXMgYWZ0ZXIgcmVmcmVzaGluZyB0aGUgaW5kZXg6IgorbXNnc3RyICLph43mlrDmlbTnkIbntKLlvJXkuYvlvozlsJrmnKrooqvmmqvlrZjnmoTorormm7TvvJoiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MjY2IGJ1aWx0aW4vcmV2LXBhcnNlLmM6ODk5Cittc2dpZCAiQ291bGQgbm90IHJlYWQgdGhlIGluZGV4IgorbXNnc3RyICLkuI3og73oroDlj5bntKLlvJUiCisKKyM6IGJ1aWx0aW4vYWRkLmM6Mjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBvcGVuICclcycgZm9yIHdyaXRpbmcuIgorbXNnc3RyICLnhKHms5Xngrrlr6vlhaXplovllZ8gJyVzJ+OAgiIKKworIzogYnVpbHRpbi9hZGQuYzoyODEKK21zZ2lkICJDb3VsZCBub3Qgd3JpdGUgcGF0Y2giCittc2dzdHIgIuS4jeiDveeUn+aIkOS/ruijnOaqlCIKKworIzogYnVpbHRpbi9hZGQuYzoyODQKK21zZ2lkICJlZGl0aW5nIHBhdGNoIGZhaWxlZCIKK21zZ3N0ciAi57eo6Lyv5L+u6KOc5qqU5aSx5pWXIgorCisjOiBidWlsdGluL2FkZC5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgc3RhdCAnJXMnIgorbXNnc3RyICLkuI3og73lsI0gJyVzJyDlkbzlj6sgc3RhdCIKKworIzogYnVpbHRpbi9hZGQuYzoyODkKK21zZ2lkICJFbXB0eSBwYXRjaC4gQWJvcnRlZC4iCittc2dzdHIgIuepuuS/ruijnOaqlOOAgueVsOW4uOe1guatouOAgiIKKworIzogYnVpbHRpbi9hZGQuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGFwcGx5ICclcyciCittc2dzdHIgIuS4jeiDveaHieeUqCAnJXMnIgorCisjOiBidWlsdGluL2FkZC5jOjMwMgorbXNnaWQgIlRoZSBmb2xsb3dpbmcgcGF0aHMgYXJlIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczpcbiIKK21zZ3N0ciAi5LiL5YiX6Lev5b6R5qC55pOa5oKo55qE5LiA5YCLIC5naXRpZ25vcmUg5qqU5qGI6ICM6KKr5b+955Wl77yaXG4iCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzIyIGJ1aWx0aW4vY2xlYW4uYzo5MTAgYnVpbHRpbi9mZXRjaC5jOjE2MyBidWlsdGluL212LmM6MTI0CisjOiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU2IGJ1aWx0aW4vcHVsbC5jOjIwMyBidWlsdGluL3B1c2guYzo1NDgKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQyMSBidWlsdGluL3JtLmM6MjQyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY1Cittc2dpZCAiZHJ5IHJ1biIKK21zZ3N0ciAi5ris6Kmm5Z+36KGMIgorCisjOiBidWlsdGluL2FkZC5jOjMyNQorbXNnaWQgImludGVyYWN0aXZlIHBpY2tpbmciCittc2dzdHIgIuS6kuWLleW8j+aPgOmBuCIKKworIzogYnVpbHRpbi9hZGQuYzozMjYgYnVpbHRpbi9jaGVja291dC5jOjE1MTEgYnVpbHRpbi9yZXNldC5jOjMwNworbXNnaWQgInNlbGVjdCBodW5rcyBpbnRlcmFjdGl2ZWx5IgorbXNnc3RyICLkupLli5XlvI/mjJHpgbjos4fmlpnljYDloYoiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzI3Cittc2dpZCAiZWRpdCBjdXJyZW50IGRpZmYgYW5kIGFwcGx5IgorbXNnc3RyICLnt6jovK/nm67liY3lt67nlbDkuKbmh4nnlKgiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzI4Cittc2dpZCAiYWxsb3cgYWRkaW5nIG90aGVyd2lzZSBpZ25vcmVkIGZpbGVzIgorbXNnc3RyICLlhYHoqLHmlrDlop7lv73nlaXnmoTmqpTmoYgiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzI5Cittc2dpZCAidXBkYXRlIHRyYWNrZWQgZmlsZXMiCittc2dzdHIgIuabtOaWsOW3sui/vei5pOeahOaqlOahiCIKKworIzogYnVpbHRpbi9hZGQuYzozMzAKK21zZ2lkICJyZW5vcm1hbGl6ZSBFT0wgb2YgdHJhY2tlZCBmaWxlcyAoaW1wbGllcyAtdSkiCittc2dzdHIgIuWwjeW3sui/vei5pOaqlOahiO+8iOmaseWQqyAtde+8iemHjeaWsOatuOS4gOaPm+ihjOespuiZnyIKKworIzogYnVpbHRpbi9hZGQuYzozMzEKK21zZ2lkICJyZWNvcmQgb25seSB0aGUgZmFjdCB0aGF0IHRoZSBwYXRoIHdpbGwgYmUgYWRkZWQgbGF0ZXIiCittc2dzdHIgIuWPquiomOmMhO+8jOipsui3r+W+keeojeW+jOWGjeaWsOWiniIKKworIzogYnVpbHRpbi9hZGQuYzozMzIKK21zZ2lkICJhZGQgY2hhbmdlcyBmcm9tIGFsbCB0cmFja2VkIGFuZCB1bnRyYWNrZWQgZmlsZXMiCittc2dzdHIgIuaWsOWinuaJgOacieaUueiuiueahOW3sui/vei5pOaqlOahiOWSjOacqui/vei5pOaqlOahiCIKKworIzogYnVpbHRpbi9hZGQuYzozMzUKK21zZ2lkICJpZ25vcmUgcGF0aHMgcmVtb3ZlZCBpbiB0aGUgd29ya2luZyB0cmVlIChzYW1lIGFzIC0tbm8tYWxsKSIKK21zZ3N0ciAi5b+955Wl5bel5L2c5Y2A5Lit56e76Zmk55qE6Lev5b6R77yI5ZKMIC0tbm8tYWxsIOebuOWQjO+8iSIKKworIzogYnVpbHRpbi9hZGQuYzozMzcKK21zZ2lkICJkb24ndCBhZGQsIG9ubHkgcmVmcmVzaCB0aGUgaW5kZXgiCittc2dzdHIgIuS4jeaWsOWinu+8jOWPqumHjeaWsOaVtOeQhue0ouW8lSIKKworIzogYnVpbHRpbi9hZGQuYzozMzgKK21zZ2lkICJqdXN0IHNraXAgZmlsZXMgd2hpY2ggY2Fubm90IGJlIGFkZGVkIGJlY2F1c2Ugb2YgZXJyb3JzIgorbXNnc3RyICLot7PpgY7lm6DnmbznlJ/pjK/oqqTkuI3og73mlrDlop7nmoTmqpTmoYgiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzM5Cittc2dpZCAiY2hlY2sgaWYgLSBldmVuIG1pc3NpbmcgLSBmaWxlcyBhcmUgaWdub3JlZCBpbiBkcnkgcnVuIgorbXNnc3RyICLmqqLmn6XlnKjmuKzoqabln7fooYzmqKHlvI/kuIvmqpTmoYjvvIjljbPkvb/kuI3lrZjlnKjvvInmmK/lkKbooqvlv73nlaUiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzQxIGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwNAorbXNnaWQgIm92ZXJyaWRlIHRoZSBleGVjdXRhYmxlIGJpdCBvZiB0aGUgbGlzdGVkIGZpbGVzIgorbXNnc3RyICLopobok4vliJfooajoo6HmqpTmoYjnmoTlj6/ln7fooYzkvY0iCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzQzCittc2dpZCAid2FybiB3aGVuIGFkZGluZyBhbiBlbWJlZGRlZCByZXBvc2l0b3J5IgorbXNnc3RyICLlu7rnq4vkuIDlgIvltYzlhaXlvI/niYjmnKzluqvmmYLntabkuojorablkYoiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzQ1Cittc2dpZCAiYmFja2VuZCBmb3IgYGdpdCBzdGFzaCAtcGAiCittc2dzdHIgImBnaXQgc3Rhc2ggLXBgIOeahOW+jOerryIKKworIzogYnVpbHRpbi9hZGQuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSd2ZSBhZGRlZCBhbm90aGVyIGdpdCByZXBvc2l0b3J5IGluc2lkZSB5b3VyIGN1cnJlbnQgcmVwb3NpdG9yeS5cbiIKKyJDbG9uZXMgb2YgdGhlIG91dGVyIHJlcG9zaXRvcnkgd2lsbCBub3QgY29udGFpbiB0aGUgY29udGVudHMgb2ZcbiIKKyJ0aGUgZW1iZWRkZWQgcmVwb3NpdG9yeSBhbmQgd2lsbCBub3Qga25vdyBob3cgdG8gb2J0YWluIGl0LlxuIgorIklmIHlvdSBtZWFudCB0byBhZGQgYSBzdWJtb2R1bGUsIHVzZTpcbiIKKyJcbiIKKyJcdGdpdCBzdWJtb2R1bGUgYWRkIDx1cmw+ICVzXG4iCisiXG4iCisiSWYgeW91IGFkZGVkIHRoaXMgcGF0aCBieSBtaXN0YWtlLCB5b3UgY2FuIHJlbW92ZSBpdCBmcm9tIHRoZVxuIgorImluZGV4IHdpdGg6XG4iCisiXG4iCisiXHRnaXQgcm0gLS1jYWNoZWQgJXNcbiIKKyJcbiIKKyJTZWUgXCJnaXQgaGVscCBzdWJtb2R1bGVcIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyLmgqjlnKjnm67liY3niYjmnKzluqvkuK3mlrDlop7kuoblj6blpJbkuIDlgIsgR2l0IOeJiOacrOW6q+OAguikh+ijveWkluWxpOeahOeJiOacrOW6q+Wwh+S4jeWMheWQq+W1jOWFpeeJiOacrOW6qyIKKyLnmoTlhaflrrnvvIzkuKbkuJTkuI3nn6XpgZPoqbLlpoLkvZXlj5blvpflroPjgIJcbiIKKyLlpoLmnpzmgqjopoHmlrDlop7kuIDlgIvlrZDmqKHntYTvvIzkvb/nlKjvvJpcbiIKKyJcbiIKKyJcdGdpdCBzdWJtb2R1bGUgYWRkIDx1cmw+ICVzXG4iCisiXG4iCisi5aaC5p6c5oKo5LiN5bCP5b+D5paw5aKe5LqG6YCZ5YCL6Lev5b6R77yM5Y+v5Lul55So5LiL6Z2i55qE5oyH5Luk5bCH5YW25b6e57Si5byV5Lit5Yiq6Zmk77yaXG4iCisiXG4iCisiXHRnaXQgcm0gLS1jYWNoZWQgJXNcbiIKKyJcbiIKKyLlj4PoposgXCJnaXQgaGVscCBzdWJtb2R1bGVcIiDlj5blvpfmm7TlpJroqIrmga/jgIIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6MzkxCisjLCBjLWZvcm1hdAorbXNnaWQgImFkZGluZyBlbWJlZGRlZCBnaXQgcmVwb3NpdG9yeTogJXMiCittc2dzdHIgIuato+WcqOaWsOWinuW1jOWFpeW8jyBnaXQg54mI5pys5bqr77yaJXMiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDEwCittc2dpZCAiIgorIlVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIHRoZW0uXG4iCisiVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5IHJ1bm5pbmdcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZElnbm9yZWRGaWxlIGZhbHNlXCIiCittc2dzdHIgIiIKKyLlpoLmnpzmgqjnnJ/nmoTmg7PliqDlhaXvvIzoq4vkvb/nlKggLWbjgIJcbiIKKyLlpoLopoHpl5zplonmraToqIrmga/vvIzoq4vln7fooYxcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZElnbm9yZWRGaWxlIGZhbHNlXCIiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDE5Cittc2dpZCAiYWRkaW5nIGZpbGVzIGZhaWxlZCIKK21zZ3N0ciAi5paw5aKe5qqU5qGI5aSx5pWXIgorCisjOiBidWlsdGluL2FkZC5jOjQ0NyBidWlsdGluL2NvbW1pdC5jOjM0OAorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0taW50ZXJhY3RpdmUvLS1wYXRjaCIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUg6IiHIC0taW50ZXJhY3RpdmUvLS1wYXRjaCDkuI3nm7jlrrkiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NDY0Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1lZGl0IgorbXNnc3RyICItLXBhdGhzcGVjLWZyb20tZmlsZSDoiIcgLS1lZGl0IOS4jeebuOWuuSIKKworIzogYnVpbHRpbi9hZGQuYzo0NzYKK21zZ2lkICItQSBhbmQgLXUgYXJlIG11dHVhbGx5IGluY29tcGF0aWJsZSIKK21zZ3N0ciAiLUEg5ZKMIC11IOmBuOmgheS6kuaWpSIKKworIzogYnVpbHRpbi9hZGQuYzo0NzkKK21zZ2lkICJPcHRpb24gLS1pZ25vcmUtbWlzc2luZyBjYW4gb25seSBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggLS1kcnktcnVuIgorbXNnc3RyICLpgbjpoIUgLS1pZ25vcmUtbWlzc2luZyDlj6rog73lkowgLS1kcnktcnVuIOWQjOaZguS9v+eUqCIKKworIzogYnVpbHRpbi9hZGQuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1jaG1vZCBwYXJhbSAnJXMnIG11c3QgYmUgZWl0aGVyIC14IG9yICt4IgorbXNnc3RyICLlj4PmlbggLS1jaG1vZCDlj5blgLwgJyVzJyDlv4XpoIjmmK8gLXgg5oiWICt4IgorCisjOiBidWlsdGluL2FkZC5jOjUwMSBidWlsdGluL2NoZWNrb3V0LmM6MTY3NSBidWlsdGluL2NvbW1pdC5jOjM1NAorIzogYnVpbHRpbi9yZXNldC5jOjMyNyBidWlsdGluL3JtLmM6MjcyIGJ1aWx0aW4vc3Rhc2guYzoxNTA5Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggcGF0aHNwZWMgYXJndW1lbnRzIgorbXNnc3RyICItLXBhdGhzcGVjLWZyb20tZmlsZSDoiIcgPOi3r+W+keimj+agvD4g5Y+D5pW45LiN55u45a65IgorCisjOiBidWlsdGluL2FkZC5jOjUwOCBidWlsdGluL2NoZWNrb3V0LmM6MTY4NyBidWlsdGluL2NvbW1pdC5jOjM2MAorIzogYnVpbHRpbi9yZXNldC5jOjMzMyBidWlsdGluL3JtLmM6Mjc4IGJ1aWx0aW4vc3Rhc2guYzoxNTE1Cittc2dpZCAiLS1wYXRoc3BlYy1maWxlLW51bCByZXF1aXJlcyAtLXBhdGhzcGVjLWZyb20tZmlsZSIKK21zZ3N0ciAiLS1wYXRoc3BlYy1maWxlLW51bCDpnIDopoEgLS1wYXRoc3BlYy1mcm9tLWZpbGUiCisKKyM6IGJ1aWx0aW4vYWRkLmM6NTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdGhpbmcgc3BlY2lmaWVkLCBub3RoaW5nIGFkZGVkLlxuIgorbXNnc3RyICLmspLmnInmjIflrprmqpTmoYjvvIzkuZ/mspLmnInmqpTmoYjooqvmlrDlop7jgIJcbiIKKworIzogYnVpbHRpbi9hZGQuYzo1MTQKK21zZ2lkICIiCisiTWF5YmUgeW91IHdhbnRlZCB0byBzYXkgJ2dpdCBhZGQgLic/XG4iCisiVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5IHJ1bm5pbmdcbiIKKyJcImdpdCBjb25maWcgYWR2aWNlLmFkZEVtcHR5UGF0aHNwZWMgZmFsc2VcIiIKK21zZ3N0ciAiIgorIuWPr+iDveS9oOimgeWBmueahOaYryAnZ2l0IGFkZCAuJ++8n1xuIgorIuWmguimgemXnOmWieatpOioiuaBr++8jOiri+Wft+ihjFxuIgorIlwiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkRW1wdHlQYXRoc3BlYyBmYWxzZVwiIgorCisjOiBidWlsdGluL2FtLmM6MzUyCittc2dpZCAiY291bGQgbm90IHBhcnNlIGF1dGhvciBzY3JpcHQiCittc2dzdHIgIuS4jeiDveino+aekOS9nOiAheiFs+acrCIKKworIzogYnVpbHRpbi9hbS5jOjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIHdhcyBkZWxldGVkIGJ5IHRoZSBhcHBseXBhdGNoLW1zZyBob29rIgorbXNnc3RyICInJXMnIOiiqyBhcHBseXBhdGNoLW1zZyDmjpvpiaTliKrpmaQiCisKKyM6IGJ1aWx0aW4vYW0uYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWFsZm9ybWVkIGlucHV0IGxpbmU6ICclcycuIgorbXNnc3RyICLpnZ7ms5XnmoTovLjlhaXooYzvvJonJXMn44CCIgorCisjOiBidWlsdGluL2FtLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBjb3B5IG5vdGVzIGZyb20gJyVzJyB0byAnJXMnIgorbXNnc3RyICLlvp4gJyVzJyDopIfoo73oqLvop6PliLAgJyVzJyDmmYLlpLHmlZciCisKKyM6IGJ1aWx0aW4vYW0uYzo1NDIKK21zZ2lkICJmc2VlayBmYWlsZWQiCittc2dzdHIgImZzZWVrIOWkseaVlyIKKworIzogYnVpbHRpbi9hbS5jOjczMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgcGF0Y2ggJyVzJyIKK21zZ3N0ciAi54Sh5rOV6Kej5p6Q5L+u6KOc5qqUICclcyciCisKKyM6IGJ1aWx0aW4vYW0uYzo3OTUKK21zZ2lkICJPbmx5IG9uZSBTdEdJVCBwYXRjaCBzZXJpZXMgY2FuIGJlIGFwcGxpZWQgYXQgb25jZSIKK21zZ3N0ciAi5LiA5qyh5Y+q6IO95pyJ5LiA5YCLIFN0R0lUIOS/ruijnOaqlOS9h+WIl+iiq+aHieeUqCIKKworIzogYnVpbHRpbi9hbS5jOjg0MworbXNnaWQgImludmFsaWQgdGltZXN0YW1wIgorbXNnc3RyICLnhKHmlYjnmoTmmYLplpPmiLMiCisKKyM6IGJ1aWx0aW4vYW0uYzo4NDggYnVpbHRpbi9hbS5jOjg2MAorbXNnaWQgImludmFsaWQgRGF0ZSBsaW5lIgorbXNnc3RyICLnhKHmlYjnmoTml6XmnJ/ooYwiCisKKyM6IGJ1aWx0aW4vYW0uYzo4NTUKK21zZ2lkICJpbnZhbGlkIHRpbWV6b25lIG9mZnNldCIKK21zZ3N0ciAi54Sh5pWI55qE5pmC5Y2A5L2N56e75YC8IgorCisjOiBidWlsdGluL2FtLmM6OTQ4Cittc2dpZCAiUGF0Y2ggZm9ybWF0IGRldGVjdGlvbiBmYWlsZWQuIgorbXNnc3RyICLkv67oo5zmqpTmoLzlvI/lgbXmuKzlpLHmlZfjgIIiCisKKyM6IGJ1aWx0aW4vYW0uYzo5NTMgYnVpbHRpbi9jbG9uZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLlu7rnq4vnm67pjIQgJyVzJyDlpLHmlZciCisKKyM6IGJ1aWx0aW4vYW0uYzo5NTgKK21zZ2lkICJGYWlsZWQgdG8gc3BsaXQgcGF0Y2hlcy4iCittc2dzdHIgIuWIhuWJsuS/ruijnOaqlOWkseaVl+OAgiIKKworIzogYnVpbHRpbi9hbS5jOjEwODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2hlbiB5b3UgaGF2ZSByZXNvbHZlZCB0aGlzIHByb2JsZW0sIHJ1biBcIiVzIC0tY29udGludWVcIi4iCittc2dzdHIgIueVtuaCqOino+axuumAmeS4gOWVj+mhjO+8jOWft+ihjCBcIiVzIC0tY29udGludWVcIuOAgiIKKworIzogYnVpbHRpbi9hbS5jOjEwOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSWYgeW91IHByZWZlciB0byBza2lwIHRoaXMgcGF0Y2gsIHJ1biBcIiVzIC0tc2tpcFwiIGluc3RlYWQuIgorbXNnc3RyICLlpoLmnpzmgqjmg7PopoHot7PpgY7pgJnkuIDkv67oo5zmqpTvvIzliYfln7fooYwgXCIlcyAtLXNraXBcIuOAgiIKKworIzogYnVpbHRpbi9hbS5jOjEwOTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVG8gcmVzdG9yZSB0aGUgb3JpZ2luYWwgYnJhbmNoIGFuZCBzdG9wIHBhdGNoaW5nLCBydW4gXCIlcyAtLWFib3J0XCIuIgorbXNnc3RyICLoi6XopoHlvqnljp/oh7Pljp/lp4vliIbmlK/kuKblgZzmraLkv67oo5zmqpTli5XkvZzvvIzln7fooYwgXCIlcyAtLWFib3J0XCLjgIIiCisKKyM6IGJ1aWx0aW4vYW0uYzoxMTc0Cittc2dpZCAiUGF0Y2ggc2VudCB3aXRoIGZvcm1hdD1mbG93ZWQ7IHNwYWNlIGF0IHRoZSBlbmQgb2YgbGluZXMgbWlnaHQgYmUgbG9zdC4iCittc2dzdHIgIuS/ruijnOaqlOS9v+eUqCBmb3JtYXQ9Zmxvd2VkIOagvOW8j+WCs+mAge+8jOihjOWwvueahOepuuagvOWPr+iDveacg+mBuuWkseOAgiIKKworIzogYnVpbHRpbi9hbS5jOjEyMDIKK21zZ2lkICJQYXRjaCBpcyBlbXB0eS4iCittc2dzdHIgIuS/ruijnOaqlOeCuuepuuOAgiIKKworIzogYnVpbHRpbi9hbS5jOjEyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyBhdXRob3IgbGluZSBpbiBjb21taXQgJXMiCittc2dzdHIgIuWcqOaPkOS6pCAlcyDkuK3nvLrlsJHkvZzogIXooYwiCisKKyM6IGJ1aWx0aW4vYW0uYzoxMjcwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaWRlbnQgbGluZTogJS4qcyIKK21zZ3N0ciAi54Sh5pWI55qE6Lqr5Lu95qiZ6KiY77yaJS4qcyIKKworIzogYnVpbHRpbi9hbS5jOjE0ODkKK21zZ2lkICJSZXBvc2l0b3J5IGxhY2tzIG5lY2Vzc2FyeSBibG9icyB0byBmYWxsIGJhY2sgb24gMy13YXkgbWVyZ2UuIgorbXNnc3RyICLniYjmnKzluqvnvLrkuY/lv4XopoHnmoTos4fmlpnnianku7bku6XpgLLooYzkuInmlrnlkIjkvbXjgIIiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNDkxCittc2dpZCAiVXNpbmcgaW5kZXggaW5mbyB0byByZWNvbnN0cnVjdCBhIGJhc2UgdHJlZS4uLiIKK21zZ3N0ciAi5L2/55So57Si5byV5L6G6YeN5bu65LiA5YCL77yI5LiJ5pa55ZCI5L2155qE77yJ5Z+656SO55uu6YyE5qi5Li4uIgorCisjOiBidWlsdGluL2FtLmM6MTUxMAorbXNnaWQgIiIKKyJEaWQgeW91IGhhbmQgZWRpdCB5b3VyIHBhdGNoP1xuIgorIkl0IGRvZXMgbm90IGFwcGx5IHRvIGJsb2JzIHJlY29yZGVkIGluIGl0cyBpbmRleC4iCittc2dzdHIgIiIKKyLmgqjmmK/lkKbmm77miYvli5Xnt6jovK/pgY7mgqjnmoTkv67oo5zmqpTvvJ9cbiIKKyLnhKHms5XlpZfnlKjkv67oo5zmqpTliLDntKLlvJXkuK3nmoTos4fmlpnnianku7bkuIrjgIIiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNTE2Cittc2dpZCAiRmFsbGluZyBiYWNrIHRvIHBhdGNoaW5nIGJhc2UgYW5kIDMtd2F5IG1lcmdlLi4uIgorbXNnc3RyICLlm57okL3liLDln7rnpI7niYjmnKzkuIrmiZPkv67oo5zmqpTlj4rpgLLooYzkuInmlrnlkIjkvbUuLi4iCisKKyM6IGJ1aWx0aW4vYW0uYzoxNTQyCittc2dpZCAiRmFpbGVkIHRvIG1lcmdlIGluIHRoZSBjaGFuZ2VzLiIKK21zZ3N0ciAi54Sh5rOV5ZCI5L216K6K5pu044CCIgorCisjOiBidWlsdGluL2FtLmM6MTU3NAorbXNnaWQgImFwcGx5aW5nIHRvIGFuIGVtcHR5IGhpc3RvcnkiCittc2dzdHIgIuato+Wll+eUqOWIsOS4gOWAi+epuuatt+WPsuS4iiIKKworIzogYnVpbHRpbi9hbS5jOjE2MjEgYnVpbHRpbi9hbS5jOjE2MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlc3VtZTogJXMgZG9lcyBub3QgZXhpc3QuIgorbXNnc3RyICLnhKHms5XnubznuozvvJolcyDkuI3lrZjlnKjjgIIiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNjQzCittc2dpZCAiQ29tbWl0IEJvZHkgaXM6IgorbXNnc3RyICLmj5DkuqTlhaflrrnngrrvvJoiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWPpeWwvuepuuagvAorIy4gVFJBTlNMQVRPUlM6IE1ha2Ugc3VyZSB0byBpbmNsdWRlIFt5XSwgW25dLCBbZV0sIFt2XSBhbmQgW2FdCisjLiBpbiB5b3VyIHRyYW5zbGF0aW9uLiBUaGUgcHJvZ3JhbSB3aWxsIG9ubHkgYWNjZXB0IEVuZ2xpc2gKKyMuIGlucHV0IGF0IHRoaXMgcG9pbnQuCisjLgorIzogYnVpbHRpbi9hbS5jOjE2NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXBwbHk/IFt5XWVzL1tuXW8vW2VdZGl0L1t2XWlldyBwYXRjaC9bYV1jY2VwdCBhbGw6ICIKK21zZ3N0ciAi5aWX55So77yf5pivW3ldL+WQpltuXS/nt6jovK9bZV0v5qqi6KaW5L+u6KOc5qqUW3ZdL+aHieeUqOaJgOaciVthXe+8miIKKworIzogYnVpbHRpbi9hbS5jOjE3MDAgYnVpbHRpbi9jb21taXQuYzozOTgKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgaW5kZXggZmlsZSIKK21zZ3N0ciAi54Sh5rOV5a+r5YWl57Si5byV5qqU5qGIIgorCisjOiBidWlsdGluL2FtLmM6MTcwNAorIywgYy1mb3JtYXQKK21zZ2lkICJEaXJ0eSBpbmRleDogY2Fubm90IGFwcGx5IHBhdGNoZXMgKGRpcnR5OiAlcykiCittc2dzdHIgIumrkue0ouW8le+8muS4jeiDveWll+eUqOS/ruijnOaqlO+8iOmrkuaqlOahiO+8miVz77yJIgorCisjOiBidWlsdGluL2FtLmM6MTc0NCBidWlsdGluL2FtLmM6MTgxMgorIywgYy1mb3JtYXQKK21zZ2lkICJBcHBseWluZzogJS4qcyIKK21zZ3N0ciAi5oeJ55So77yaJS4qcyIKKworIzogYnVpbHRpbi9hbS5jOjE3NjEKK21zZ2lkICJObyBjaGFuZ2VzIC0tIFBhdGNoIGFscmVhZHkgYXBwbGllZC4iCittc2dzdHIgIuaykuacieiuiuabtCDigJTigJQg5L+u6KOc5qqU5bey57aT5oeJ55So6YGO44CCIgorCisjOiBidWlsdGluL2FtLmM6MTc2NworIywgYy1mb3JtYXQKK21zZ2lkICJQYXRjaCBmYWlsZWQgYXQgJXMgJS4qcyIKK21zZ3N0ciAi5omT5L+u6KOc5qqU5aSx5pWX5pa8ICVzICUuKnMiCisKKyM6IGJ1aWx0aW4vYW0uYzoxNzcxCittc2dpZCAiVXNlICdnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2g9ZGlmZicgdG8gc2VlIHRoZSBmYWlsZWQgcGF0Y2giCittc2dzdHIgIueUqCAnZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoPWRpZmYnIOWRveS7pOaqouimluWkseaVl+eahOS/ruijnOaqlCIKKworIzogYnVpbHRpbi9hbS5jOjE4MTUKK21zZ2lkICIiCisiTm8gY2hhbmdlcyAtIGRpZCB5b3UgZm9yZ2V0IHRvIHVzZSAnZ2l0IGFkZCc/XG4iCisiSWYgdGhlcmUgaXMgbm90aGluZyBsZWZ0IHRvIHN0YWdlLCBjaGFuY2VzIGFyZSB0aGF0IHNvbWV0aGluZyBlbHNlXG4iCisiYWxyZWFkeSBpbnRyb2R1Y2VkIHRoZSBzYW1lIGNoYW5nZXM7IHlvdSBtaWdodCB3YW50IHRvIHNraXAgdGhpcyBwYXRjaC4iCittc2dzdHIgIiIKKyLmspLmnInorormm7Qg4oCU4oCUIOaCqOaYr+S4jeaYr+W/mOS6huWft+ihjCAnZ2l0IGFkZCfvvJ9cbiIKKyLlpoLmnpzmspLmnInku4DpurzopoHmlrDlop7liLDmmqvlrZjljYDnmoTvvIzliYflvojlj6/og73mmK/lhbblroPmj5DkuqTlt7LntpPlvJXlhaXkuobnm7jlkIznmoTorormm7TjgIJcbiIKKyLmgqjkuZ/oqLHmg7PopoHot7PpgY7pgJnlgIvkv67oo5zmqpTjgIIiCisKKyM6IGJ1aWx0aW4vYW0uYzoxODIyCittc2dpZCAiIgorIllvdSBzdGlsbCBoYXZlIHVubWVyZ2VkIHBhdGhzIGluIHlvdXIgaW5kZXguXG4iCisiWW91IHNob3VsZCAnZ2l0IGFkZCcgZWFjaCBmaWxlIHdpdGggcmVzb2x2ZWQgY29uZmxpY3RzIHRvIG1hcmsgdGhlbSBhcyAiCisic3VjaC5cbiIKKyJZb3UgbWlnaHQgcnVuIGBnaXQgcm1gIG9uIGEgZmlsZSB0byBhY2NlcHQgXCJkZWxldGVkIGJ5IHRoZW1cIiBmb3IgaXQuIgorbXNnc3RyICIiCisi5Zyo5oKo55qE57Si5byV5Lit5LuN5a2Y5Zyo5pyq5ZCI5L2155qE6Lev5b6R44CCXG4iCisi5oKo5oeJ6Kmy5bCN5bey57aT6KGd56qB6Kej5rG655qE5q+P5LiA5YCL5qqU5qGI5Z+36KGMICdnaXQgYWRkJyDkvobmqJnoqJjlt7LntpPlrozmiJDjgIIgXG4iCisi5L2g5Y+v5Lul5bCNIFwi55Sx5LuW5YCR5Yiq6ZmkXCIg55qE5qqU5qGI5Z+36KGMIGBnaXQgcm1gIOaMh+S7pOOAgiIKKworIzogYnVpbHRpbi9hbS5jOjE5MjkgYnVpbHRpbi9hbS5jOjE5MzMgYnVpbHRpbi9hbS5jOjE5NDUgYnVpbHRpbi9yZXNldC5jOjM0NgorIzogYnVpbHRpbi9yZXNldC5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcGFyc2Ugb2JqZWN0ICclcycuIgorbXNnc3RyICLkuI3og73op6PmnpDnianku7YgJyVzJ+OAgiIKKworIzogYnVpbHRpbi9hbS5jOjE5ODEKK21zZ2lkICJmYWlsZWQgdG8gY2xlYW4gaW5kZXgiCittc2dzdHIgIua4heepuue0ouW8leWkseaVlyIKKworIzogYnVpbHRpbi9hbS5jOjIwMjUKK21zZ2lkICIiCisiWW91IHNlZW0gdG8gaGF2ZSBtb3ZlZCBIRUFEIHNpbmNlIHRoZSBsYXN0ICdhbScgZmFpbHVyZS5cbiIKKyJOb3QgcmV3aW5kaW5nIHRvIE9SSUdfSEVBRCIKK21zZ3N0ciAi5oKo5aW95YOP5Zyo5LiK5LiA5qyhICdhbScg5aSx5pWX5b6M56e75YuV5LqGIEhFQUTjgILmnKrpgoTljp/oh7MgT1JJR19IRUFEIgorCisjOiBidWlsdGluL2FtLmM6MjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciAtLXBhdGNoLWZvcm1hdDogJXMiCittc2dzdHIgIueEoeaViOeahCAtLXBhdGNoLWZvcm1hdCDlgLzvvJolcyIKKworIzogYnVpbHRpbi9hbS5jOjIxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgLS1zaG93LWN1cnJlbnQtcGF0Y2g6ICVzIgorbXNnc3RyICLnhKHmlYjnmoQgLS1zaG93LWN1cnJlbnQtcGF0Y2gg5YC877yaJXMiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tc2hvdy1jdXJyZW50LXBhdGNoPSVzIgorbXNnc3RyICItLXNob3ctY3VycmVudC1wYXRjaD0lcyDoiIcgLS1zaG93LWN1cnJlbnQtcGF0Y2g9JXMg5LiN55u45a65IgorCisjOiBidWlsdGluL2FtLmM6MjIwNworbXNnaWQgImdpdCBhbSBbPG9wdGlvbnM+XSBbKDxtYm94PiB8IDxNYWlsZGlyPikuLi5dIgorbXNnc3RyICJnaXQgYW0gWzzpgbjpoIU+XSBbKDxtYm94PiB8IDxNYWlsZGlyPikuLi5dIgorCisjOiBidWlsdGluL2FtLmM6MjIwOAorbXNnaWQgImdpdCBhbSBbPG9wdGlvbnM+XSAoLS1jb250aW51ZSB8IC0tc2tpcCB8IC0tYWJvcnQpIgorbXNnc3RyICJnaXQgYW0gWzzpgbjpoIU+XSAoLS1jb250aW51ZSB8IC0tc2tpcCB8IC0tYWJvcnQpIgorCisjOiBidWlsdGluL2FtLmM6MjIxNAorbXNnaWQgInJ1biBpbnRlcmFjdGl2ZWx5IgorbXNnc3RyICLku6XkupLli5XlvI/mlrnlvI/ln7fooYwiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjE2Cittc2dpZCAiaGlzdG9yaWNhbCBvcHRpb24gLS0gbm8tb3AiCittc2dzdHIgIuiAgeeahOWPg+aVuCDigJTigJQg54Sh5L2c55SoIgorCisjOiBidWlsdGluL2FtLmM6MjIxOAorbXNnaWQgImFsbG93IGZhbGwgYmFjayBvbiAzd2F5IG1lcmdpbmcgaWYgbmVlZGVkIgorbXNnc3RyICLlpoLmnpzlv4XopoHvvIzlhYHoqLHkvb/nlKjkuInmlrnlkIjkvbXjgIIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjE5IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5NCBidWlsdGluL3BydW5lLXBhY2tlZC5jOjU4CisjOiBidWlsdGluL3JlcGFjay5jOjMwNCBidWlsdGluL3N0YXNoLmM6ODEyCittc2dpZCAiYmUgcXVpZXQiCittc2dzdHIgIumdnOm7mOaooeW8jyIKKworIzogYnVpbHRpbi9hbS5jOjIyMjEKK21zZ2lkICJhZGQgYSBTaWduZWQtb2ZmLWJ5IGxpbmUgdG8gdGhlIGNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICLlnKjmj5DkuqToqqrmmI7kuK3mlrDlop7kuIDlgIsgU2lnbmVkLW9mZi1ieSDnsL3lkI0iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjI0Cittc2dpZCAicmVjb2RlIGludG8gdXRmOCAoZGVmYXVsdCkiCittc2dzdHIgIuS9v+eUqCB1dGY4IOWtl+WFg+mbhu+8iOmgkOiore+8iSIKKworIzogYnVpbHRpbi9hbS5jOjIyMjYKK21zZ2lkICJwYXNzIC1rIGZsYWcgdG8gZ2l0LW1haWxpbmZvIgorbXNnc3RyICLlkJEgZ2l0LW1haWxpbmZvIOWCs+mBniAtayDlj4PmlbgiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjI4Cittc2dpZCAicGFzcyAtYiBmbGFnIHRvIGdpdC1tYWlsaW5mbyIKK21zZ3N0ciAi5ZCRIGdpdC1tYWlsaW5mbyDlgrPpgZ4gLWIg5Y+D5pW4IgorCisjOiBidWlsdGluL2FtLmM6MjIzMAorbXNnaWQgInBhc3MgLW0gZmxhZyB0byBnaXQtbWFpbGluZm8iCittc2dzdHIgIuWQkSBnaXQtbWFpbGluZm8g5YKz6YGeIC1tIOWPg+aVuCIKKworIzogYnVpbHRpbi9hbS5jOjIyMzIKK21zZ2lkICJwYXNzIC0ta2VlcC1jciBmbGFnIHRvIGdpdC1tYWlsc3BsaXQgZm9yIG1ib3ggZm9ybWF0IgorbXNnc3RyICLph53lsI0gbWJveCDmoLzlvI/vvIzlkJEgZ2l0LW1haWxzcGxpdCDlgrPpgZ4gLS1rZWVwLWNyIOWPg+aVuCIKKworIzogYnVpbHRpbi9hbS5jOjIyMzUKK21zZ2lkICJkbyBub3QgcGFzcyAtLWtlZXAtY3IgZmxhZyB0byBnaXQtbWFpbHNwbGl0IGluZGVwZW5kZW50IG9mIGFtLmtlZXBjciIKK21zZ3N0ciAi5LiN5ZCRIGdpdC1tYWlsc3BsaXQg5YKz6YGeIC0ta2VlcC1jciDlj4PmlbjvvIzopobok4sgYW0ua2VlcGNyIOeahOioreWumiIKKworIzogYnVpbHRpbi9hbS5jOjIyMzgKK21zZ2lkICJzdHJpcCBldmVyeXRoaW5nIGJlZm9yZSBhIHNjaXNzb3JzIGxpbmUiCittc2dzdHIgIuaNqOajhOijgeWIh+e3muWJjeeahOaJgOacieWFp+WuuSIKKworIzogYnVpbHRpbi9hbS5jOjIyNDAgYnVpbHRpbi9hbS5jOjIyNDMgYnVpbHRpbi9hbS5jOjIyNDYgYnVpbHRpbi9hbS5jOjIyNDkKKyM6IGJ1aWx0aW4vYW0uYzoyMjUyIGJ1aWx0aW4vYW0uYzoyMjU1IGJ1aWx0aW4vYW0uYzoyMjU4IGJ1aWx0aW4vYW0uYzoyMjYxCisjOiBidWlsdGluL2FtLmM6MjI2NworbXNnaWQgInBhc3MgaXQgdGhyb3VnaCBnaXQtYXBwbHkiCittc2dzdHIgIuWCs+mBnue1piBnaXQtYXBwbHkiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjU3IGJ1aWx0aW4vY29tbWl0LmM6MTM5MSBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzAKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MyBidWlsdGluL2dyZXAuYzo4NzEgYnVpbHRpbi9tZXJnZS5jOjI1MAorIzogYnVpbHRpbi9wdWxsLmM6MTQwIGJ1aWx0aW4vcHVsbC5jOjE5OSBidWlsdGluL3JlYmFzZS5jOjE1MDUKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE1IGJ1aWx0aW4vcmVwYWNrLmM6MzE5IGJ1aWx0aW4vcmVwYWNrLmM6MzIxCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjUwIGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzIgYnVpbHRpbi90YWcuYzo0MDMKKyM6IHBhcnNlLW9wdGlvbnMuaDoxNTQgcGFyc2Utb3B0aW9ucy5oOjE3NSBwYXJzZS1vcHRpb25zLmg6MzE2Cittc2dpZCAibiIKK21zZ3N0ciAibiIKKworIzogYnVpbHRpbi9hbS5jOjIyNjMgYnVpbHRpbi9icmFuY2guYzo2NjEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOAorIzogYnVpbHRpbi9yZXBsYWNlLmM6NTU2IGJ1aWx0aW4vdGFnLmM6NDM3IGJ1aWx0aW4vdmVyaWZ5LXRhZy5jOjM4Cittc2dpZCAiZm9ybWF0IgorbXNnc3RyICLmoLzlvI8iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjY0Cittc2dpZCAiZm9ybWF0IHRoZSBwYXRjaChlcykgYXJlIGluIgorbXNnc3RyICLkv67oo5zmqpTnmoTmoLzlvI8iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjcwCittc2dpZCAib3ZlcnJpZGUgZXJyb3IgbWVzc2FnZSB3aGVuIHBhdGNoIGZhaWx1cmUgb2NjdXJzIgorbXNnc3RyICLmiZPkv67oo5zmqpTlpLHmlZfmmYLpoa/npLrnmoTpjK/oqqToqIrmga8iCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjcyCittc2dpZCAiY29udGludWUgYXBwbHlpbmcgcGF0Y2hlcyBhZnRlciByZXNvbHZpbmcgYSBjb25mbGljdCIKK21zZ3N0ciAi6KGd56qB6Kej5rG65b6M57m857qM5aWX55So5L+u6KOc5qqUIgorCisjOiBidWlsdGluL2FtLmM6MjI3NQorbXNnaWQgInN5bm9ueW1zIGZvciAtLWNvbnRpbnVlIgorbXNnc3RyICLlkowgLS1jb250aW51ZSDlkIznvqkiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjc4Cittc2dpZCAic2tpcCB0aGUgY3VycmVudCBwYXRjaCIKK21zZ3N0ciAi6Lez6YGO55uu5YmN5L+u6KOc5qqUIgorCisjOiBidWlsdGluL2FtLmM6MjI4MQorbXNnaWQgInJlc3RvcmUgdGhlIG9yaWdpbmFsIGJyYW5jaCBhbmQgYWJvcnQgdGhlIHBhdGNoaW5nIG9wZXJhdGlvbi4iCittc2dzdHIgIuW+qeWOn+WOn+Wni+WIhuaUr+S4pue1guatouaJk+S/ruijnOaqlOWLleS9nOOAgiIKKworIzogYnVpbHRpbi9hbS5jOjIyODQKK21zZ2lkICJhYm9ydCB0aGUgcGF0Y2hpbmcgb3BlcmF0aW9uIGJ1dCBrZWVwIEhFQUQgd2hlcmUgaXQgaXMuIgorbXNnc3RyICLntYLmraLkv67oo5zmqpTli5XkvZzkvYbkv53mjIEgSEVBRCDkuI3ororjgIIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMjg4Cittc2dpZCAic2hvdyB0aGUgcGF0Y2ggYmVpbmcgYXBwbGllZCIKK21zZ3N0ciAi6aGv56S65q2j5Zyo5aWX55So55qE5L+u6KOc5qqUIgorCisjOiBidWlsdGluL2FtLmM6MjI5MworbXNnaWQgImxpZSBhYm91dCBjb21taXR0ZXIgZGF0ZSIKK21zZ3N0ciAi5bCH5L2c6ICF5pel5pyf5L2c54K65o+Q5Lqk5pel5pyfIgorCisjOiBidWlsdGluL2FtLmM6MjI5NQorbXNnaWQgInVzZSBjdXJyZW50IHRpbWVzdGFtcCBmb3IgYXV0aG9yIGRhdGUiCittc2dzdHIgIueUqOebruWJjeaZgumWk+S9nOeCuuS9nOiAheaXpeacnyIKKworIzogYnVpbHRpbi9hbS5jOjIyOTcgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMCBidWlsdGluL2NvbW1pdC5jOjE1MTIKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODcgYnVpbHRpbi9wdWxsLmM6MTc0IGJ1aWx0aW4vcmViYXNlLmM6NTE3CisjOiBidWlsdGluL3JlYmFzZS5jOjE1NTYgYnVpbHRpbi9yZXZlcnQuYzoxMTcgYnVpbHRpbi90YWcuYzo0MTgKK21zZ2lkICJrZXktaWQiCittc2dzdHIgImtleS1pZCIKKworIzogYnVpbHRpbi9hbS5jOjIyOTggYnVpbHRpbi9yZWJhc2UuYzo1MTggYnVpbHRpbi9yZWJhc2UuYzoxNTU3Cittc2dpZCAiR1BHLXNpZ24gY29tbWl0cyIKK21zZ3N0ciAi5L2/55SoIEdQRyDnsL3lkI3mj5DkuqQiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzAxCittc2dpZCAiKGludGVybmFsIHVzZSBmb3IgZ2l0LXJlYmFzZSkiCittc2dzdHIgIu+8iOWFp+mDqOS9v+eUqO+8jOeUqOaWvCBnaXQtcmViYXNl77yJIgorCisjOiBidWlsdGluL2FtLmM6MjMxOQorbXNnaWQgIiIKKyJUaGUgLWIvLS1iaW5hcnkgb3B0aW9uIGhhcyBiZWVuIGEgbm8tb3AgZm9yIGxvbmcgdGltZSwgYW5kXG4iCisiaXQgd2lsbCBiZSByZW1vdmVkLiBQbGVhc2UgZG8gbm90IHVzZSBpdCBhbnltb3JlLiIKK21zZ3N0ciAiIgorIuWPg+aVuCAtYi8tLWJpbmFyeSDlt7LntpPlvojplbfmmYLplpPkuI3lgZrku7vkvZXlr6bos6rli5XkvZzkuobvvIzkuKbkuJTlsIfooqvnp7vpmaTjgIJcbiIKKyLoq4vkuI3opoHlho3kvb/nlKjlroPkuobjgIIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzI2Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgdGhlIGluZGV4IgorbXNnc3RyICLoroDlj5bntKLlvJXlpLHmlZciCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzQxCisjLCBjLWZvcm1hdAorbXNnaWQgInByZXZpb3VzIHJlYmFzZSBkaXJlY3RvcnkgJXMgc3RpbGwgZXhpc3RzIGJ1dCBtYm94IGdpdmVuLiIKK21zZ3N0ciAi5LmL5YmN55qE6YeN5a6a5Z+65bqV55uu6YyEICVzIOS7jeeEtuWtmOWcqO+8jOS9huWNu+aPkOS+m+S6hiBtYm9444CCIgorCisjOiBidWlsdGluL2FtLmM6MjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU3RyYXkgJXMgZGlyZWN0b3J5IGZvdW5kLlxuIgorIlVzZSBcImdpdCBhbSAtLWFib3J0XCIgdG8gcmVtb3ZlIGl0LiIKK21zZ3N0ciAiIgorIueZvOePvuS6humMr+iqpOeahCAlcyDnm67pjITjgIJcbiIKKyLkvb/nlKggXCJnaXQgYW0gLS1hYm9ydFwiIOWIqumZpOWug+OAgiIKKworIzogYnVpbHRpbi9hbS5jOjIzNzEKK21zZ2lkICJSZXNvbHZlIG9wZXJhdGlvbiBub3QgaW4gcHJvZ3Jlc3MsIHdlIGFyZSBub3QgcmVzdW1pbmcuIgorbXNnc3RyICLop6Pmsbrli5XkvZzmnKrpgLLooYzvvIzmiJHlgJHkuI3mnIPnubznuozjgIIiCisKKyM6IGJ1aWx0aW4vYW0uYzoyMzgxCittc2dpZCAiaW50ZXJhY3RpdmUgbW9kZSByZXF1aXJlcyBwYXRjaGVzIG9uIHRoZSBjb21tYW5kIGxpbmUiCittc2dzdHIgIuS6kuWLleW8j+aooeW8j+mcgOimgeaMh+S7pOWIl+S4iuaPkOS+m+S/ruijnOaqlCIKKworIzogYnVpbHRpbi9hcHBseS5jOjgKK21zZ2lkICJnaXQgYXBwbHkgWzxvcHRpb25zPl0gWzxwYXRjaD4uLi5dIgorbXNnc3RyICJnaXQgYXBwbHkgWzzpgbjpoIU+XSBbPOS/ruijnOaqlD4uLi5dIgorCisjOiBidWlsdGluL2FyY2hpdmUuYzoxNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIGFyY2hpdmUgZmlsZSAnJXMnIgorbXNnc3RyICLkuI3og73lu7rnq4vmrbjmqpTmqpTmoYggJyVzJyIKKworIzogYnVpbHRpbi9hcmNoaXZlLmM6MjAKK21zZ2lkICJjb3VsZCBub3QgcmVkaXJlY3Qgb3V0cHV0IgorbXNnc3RyICLkuI3og73ph43lrprlkJHovLjlh7oiCisKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjM3Cittc2dpZCAiZ2l0IGFyY2hpdmU6IFJlbW90ZSB3aXRoIG5vIFVSTCIKK21zZ3N0ciAiZ2l0IGFyY2hpdmXvvJrmnKrmj5DkvpvpgaDnq68gVVJMIgorCisjOiBidWlsdGluL2FyY2hpdmUuYzo2MQorbXNnaWQgImdpdCBhcmNoaXZlOiBleHBlY3RlZCBBQ0svTkFLLCBnb3QgYSBmbHVzaCBwYWNrZXQiCittc2dzdHIgImdpdCBhcmNoaXZl77ya5pyf5pyb5pivIEFDSy9OQUvvvIzljbvlvpfliLAgZmx1c2gg5YyFIgorCisjOiBidWlsdGluL2FyY2hpdmUuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgYXJjaGl2ZTogTkFDSyAlcyIKK21zZ3N0ciAiZ2l0IGFyY2hpdmXvvJpOQUNLICVzIgorCisjOiBidWlsdGluL2FyY2hpdmUuYzo2NQorbXNnaWQgImdpdCBhcmNoaXZlOiBwcm90b2NvbCBlcnJvciIKK21zZ3N0ciAiZ2l0IGFyY2hpdmXvvJrljZTlrprpjK/oqqQiCisKKyM6IGJ1aWx0aW4vYXJjaGl2ZS5jOjY5Cittc2dpZCAiZ2l0IGFyY2hpdmU6IGV4cGVjdGVkIGEgZmx1c2giCittc2dzdHIgImdpdCBhcmNoaXZl77ya5oeJ5pyJ5LiA5YCLIGZsdXNoIOWMhSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyCittc2dpZCAiZ2l0IGJpc2VjdC0taGVscGVyIC0tbmV4dC1hbGwgWy0tbm8tY2hlY2tvdXRdIgorbXNnc3RyICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1uZXh0LWFsbCBbLS1uby1jaGVja291dF0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyMworbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDxiYWRfdGVybT4gPGdvb2RfdGVybT4iCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLXdyaXRlLXRlcm1zIDzlo54t6KGT6KqePiA85aW9Leihk+iqnj4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNAorbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jbGVhbi1zdGF0ZSIKK21zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LWNsZWFuLXN0YXRlIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjUKK21zZ2lkICJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3QtcmVzZXQgWzxjb21taXQ+XSIKK21zZ3N0ciAiZ2l0IGJpc2VjdC0taGVscGVyIC0tYmlzZWN0LXJlc2V0IFs85o+Q5LqkPl0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyNgorbXNnaWQgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtd3JpdGUgWy0tbm8tbG9nXSA8c3RhdGU+IDxyZXZpc2lvbj4gPGdvb2RfdGVybT4gIgorIjxiYWRfdGVybT4iCittc2dzdHIgIiIKKyJnaXQgYmlzZWN0LS1oZWxwZXIgLS1iaXNlY3Qtd3JpdGUgWy0tbm8tbG9nXSA854uA5oWLPiA854mI5pysPiA85aW9Leihk+iqnj4gPOWjni3ooZPoqp4iCisiPiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI3Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDxjb21tYW5kPiA8Z29vZF90ZXJtPiAiCisiPGJhZF90ZXJtPiIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1jaGVjay1hbmQtc2V0LXRlcm1zIDzmjIfku6Q+IDzlpb0t6KGT6KqePiA85aOeLeihk+iqnj4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOAorbXNnaWQgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrIDxnb29kX3Rlcm0+IDxiYWRfdGVybT4gWzx0ZXJtPl0iCittc2dzdHIgImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1uZXh0LWNoZWNrIDzlpb0t6KGT6KqePiA85aOeLeihk+iqnj4gWzzooZPoqp4+XSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI5Cittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC10ZXJtcyBbLS10ZXJtLWdvb2QgfCAtLXRlcm0tb2xkIHwgLS10ZXJtLWJhZCB8IC0tIgorInRlcm0tbmV3XSIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC10ZXJtcyBbLS10ZXJtLWdvb2QgfCAtLXRlcm0tb2xkIHwgLS10ZXJtLWJhZCB8IC0tIgorInRlcm0tbmV3XSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMwCittc2dpZCAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1zdGFydCBbLS10ZXJtLXtvbGQsZ29vZH09PHRlcm0+IC0tdGVybS17bmV3LGJhZH0iCisiPTx0ZXJtPl1bLS1uby1jaGVja291dF0gWzxiYWQ+IFs8Z29vZD4uLi5dXSBbLS1dIFs8cGF0aHM+Li4uXSIKK21zZ3N0ciAiIgorImdpdCBiaXNlY3QtLWhlbHBlciAtLWJpc2VjdC1zdGFydCBbLS10ZXJtLXtvbGQsZ29vZH09POihk+iqnj4gLS10ZXJtLXtuZXcsYmFkfSIKKyI9POihk+iqnj5dWy0tbm8tY2hlY2tvdXRdIFs85aOePiBbPOWlvT4uLi5dXSBbLS1dIFs86Lev5b6RPi4uLl0iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHRlcm0iCittc2dzdHIgIiclcycg5LiN5piv5LiA5YCL5pyJ5pWI55qE6KGT6KqeIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgdXNlIHRoZSBidWlsdGluIGNvbW1hbmQgJyVzJyBhcyBhIHRlcm0iCittc2dzdHIgIuS4jeiDveS9v+eUqOWFp+W7uuaMh+S7pCAnJXMnIOS9nOeCuuihk+iqniIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBjaGFuZ2UgdGhlIG1lYW5pbmcgb2YgdGhlIHRlcm0gJyVzJyIKK21zZ3N0ciAi5LiN6IO95L+u5pS56KGT6KqeICclcycg55qE5ZCr576pIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTExCittc2dpZCAicGxlYXNlIHVzZSB0d28gZGlmZmVyZW50IHRlcm1zIgorbXNnc3RyICLoq4vkvb/nlKjlhanlgIvkuI3lkIznmoTooZPoqp4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxMTgKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgZmlsZSBCSVNFQ1RfVEVSTVMiCittc2dzdHIgIuS4jeiDvemWi+WVn+aqlOahiCBCSVNFQ1RfVEVSTVMiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2UgYXJlIG5vdCBiaXNlY3RpbmcuXG4iCittc2dzdHIgIuaIkeWAkeaykuacieWcqOS6jOWIhuWwi+aJvuOAglxuIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgY29tbWl0IgorbXNnc3RyICInJXMnIOS4jeaYr+S4gOWAi+acieaViOeahOaPkOS6pCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY291bGQgbm90IGNoZWNrIG91dCBvcmlnaW5hbCBIRUFEICclcycuIFRyeSAnZ2l0IGJpc2VjdCByZXNldCA8Y29tbWl0PicuIgorbXNnc3RyICLkuI3og73nsL3lh7rljp/lp4sgSEVBRCAnJXMn44CC5ZiX6KmmICdnaXQgYmlzZWN0IHJlc2V0IDzmj5DkuqQ+J+OAgiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICJCYWQgYmlzZWN0X3dyaXRlIGFyZ3VtZW50OiAlcyIKK21zZ3N0ciAi5aOe55qEIGJpc2VjdF93cml0ZSDlj4PmlbjvvJolcyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBnZXQgdGhlIG9pZCBvZiB0aGUgcmV2ICclcyciCittc2dzdHIgIueEoeazleWPluW+l+eJiOacrCAnJXMnIOeahOeJqeS7tiBJRCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIHRoZSBmaWxlICclcyciCittc2dzdHIgIueEoeazlemWi+WVn+aqlOahiCAnJXMnIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgY29tbWFuZDogeW91J3JlIGN1cnJlbnRseSBpbiBhICVzLyVzIGJpc2VjdCIKK21zZ3N0ciAi54Sh5pWI55qE5oyH5Luk77ya5oKo55uu5YmN5q2j6JmV5pa85LiA5YCLICVzLyVzIOS6jOWIhuWwi+aJvuS4rSIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJXMgYW5kICVzIHJldmlzaW9uLlxuIgorIllvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAlc1wiIGFuZCBcImdpdCBiaXNlY3QgJXNcIiBmb3IgdGhhdC4iCittc2dzdHIgIiIKKyLmgqjpnIDopoHntabmiJHoh7PlsJHkuIDlgIsgJXMg5ZKM5LiA5YCLICVzIOeJiOacrOOAglxuIgorIueCuuatpOaCqOWPr+S7peeUqCBcImdpdCBiaXNlY3QgJXNcIiDlkowgXCJnaXQgYmlzZWN0ICVzXCLjgIIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiLlxuIgorIllvdSB0aGVuIG5lZWQgdG8gZ2l2ZSBtZSBhdCBsZWFzdCBvbmUgJXMgYW5kICVzIHJldmlzaW9uLlxuIgorIllvdSBjYW4gdXNlIFwiZ2l0IGJpc2VjdCAlc1wiIGFuZCBcImdpdCBiaXNlY3QgJXNcIiBmb3IgdGhhdC4iCittc2dzdHIgIiIKKyLmgqjpnIDopoHln7fooYwgXCJnaXQgYmlzZWN0IHN0YXJ0XCIg5L6G6ZaL5aeL44CCXG4iCisi54S25b6M6ZyA6KaB5o+Q5L6b5oiR6Iez5bCR5LiA5YCLICVzIOWSjOS4gOWAiyAlcyDniYjmnKzjgIJcbiIKKyLngrrmraTmgqjlj6/ku6XnlKggXCJnaXQgYmlzZWN0ICVzXCIg5ZKMIFwiZ2l0IGJpc2VjdCAlc1wiIOaMh+S7pOOAgiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJiaXNlY3Rpbmcgb25seSB3aXRoIGEgJXMgY29tbWl0IgorbXNnc3RyICLlnKjlj6rmnInkuIDlgIsgJXMg5o+Q5Lqk55qE5oOF5rOB5LiL5LqM5YiG5bCL5om+IgorCisjICDora/ogIXvvJroq4vntq3mjIHlj6XlsL7nqbrmoLwKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbWV0gYW5kIFtuXSBpbiB5b3VyCisjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIy4KKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzozMTgKK21zZ2lkICJBcmUgeW91IHN1cmUgW1kvbl0/ICIKK21zZ3N0ciAi5oKo56K66KqN5ZeOW1kvbl3vvJ8gIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Mzc5Cittc2dpZCAibm8gdGVybXMgZGVmaW5lZCIKK21zZ3N0ciAi5pyq5a6a576p6KGT6KqeIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6MzgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3VyIGN1cnJlbnQgdGVybXMgYXJlICVzIGZvciB0aGUgb2xkIHN0YXRlXG4iCisiYW5kICVzIGZvciB0aGUgbmV3IHN0YXRlLlxuIgorbXNnc3RyICLmgqjnm67liY3ph53lsI3oiIrni4DmhYvnmoTooZPoqp7mmK8gJXPvvIzlsI3mlrDni4DmhYvnmoTooZPoqp7mmK8gJXPjgIJcbiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBhcmd1bWVudCAlcyBmb3IgJ2dpdCBiaXNlY3QgdGVybXMnLlxuIgorIlN1cHBvcnRlZCBvcHRpb25zIGFyZTogLS10ZXJtLWdvb2R8LS10ZXJtLW9sZCBhbmQgLS10ZXJtLWJhZHwtLXRlcm0tbmV3LiIKK21zZ3N0ciAiIgorIuaMh+S7pCAnZ2l0IGJpc2VjdCB0ZXJtcycg55qE5Y+D5pW4ICVzIOeEoeaViOOAglxuIgorIuaUr+aPtOeahOmBuOmgheacie+8mi0tdGVybS1nb29kfC0tdGVybS1vbGQg5ZKMIC0tdGVybS1iYWR8LS10ZXJtLW5ld+OAgiIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgb3B0aW9uOiAnJXMnIgorbXNnc3RyICLmnKrorZjliKXnmoTpgbjpoIXvvJonJXMnIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGEgdmFsaWQgcmV2aXNpb24iCittc2dzdHIgIiclcycg55yL6LW35L6G5LiN5piv5LiA5YCL5pyJ5pWI55qE54mI5pysIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTE0Cittc2dpZCAiYmFkIEhFQUQgLSBJIG5lZWQgYSBIRUFEIgorbXNnc3RyICLlo57nmoQgSEVBRCAtIOaIkemcgOimgeS4gOWAiyBIRUFEIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NTI5CisjLCBjLWZvcm1hdAorbXNnaWQgImNoZWNraW5nIG91dCAnJXMnIGZhaWxlZC4gVHJ5ICdnaXQgYmlzZWN0IHN0YXJ0IDx2YWxpZC1icmFuY2g+Jy4iCittc2dzdHIgIuewveWHuiAnJXMnIOWkseaVl+OAguWYl+ippiAnZ2l0IGJpc2VjdCBzdGFydCA85pyJ5pWI5YiG5pSvPifjgIIiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NTAKK21zZ2lkICJ3b24ndCBiaXNlY3Qgb24gY2ctc2VlaydlZCB0cmVlIgorbXNnc3RyICLkuI3mnIPlnKjlgZrkuoYgY2ctc2VlayDnmoTmqLnkuIrlgZrkuozliIblsIvmib4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo1NTMKK21zZ2lkICJiYWQgSEVBRCAtIHN0cmFuZ2Ugc3ltYm9saWMgcmVmIgorbXNnc3RyICLlo57nmoQgSEVBRCAtIOWlh+aAqueahOespuiZn+W8leeUqCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjU3NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHJlZjogJyVzJyIKK21zZ3N0ciAi54Sh5pWI55qE5byV55So77yaJyVzJyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzMworbXNnaWQgInBlcmZvcm0gJ2dpdCBiaXNlY3QgbmV4dCciCittc2dzdHIgIuWft+ihjCAnZ2l0IGJpc2VjdCBuZXh0JyIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjYzNQorbXNnaWQgIndyaXRlIHRoZSB0ZXJtcyB0byAuZ2l0L0JJU0VDVF9URVJNUyIKK21zZ3N0ciAi5bCH6KGT6Kqe5a+r5YWlIC5naXQvQklTRUNUX1RFUk1TIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjM3Cittc2dpZCAiY2xlYW51cCB0aGUgYmlzZWN0aW9uIHN0YXRlIgorbXNnc3RyICLmuIXpmaTkuozliIblsIvmib7ni4DmhYsiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2MzkKK21zZ2lkICJjaGVjayBmb3IgZXhwZWN0ZWQgcmV2cyIKK21zZ3N0ciAi5qqi5p+l6aCQ5pyf55qE54mI5pysIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQxCittc2dpZCAicmVzZXQgdGhlIGJpc2VjdGlvbiBzdGF0ZSIKK21zZ3N0ciAi5riF6Zmk5LqM5YiG5bCL5om+54uA5oWLIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjQzCittc2dpZCAid3JpdGUgb3V0IHRoZSBiaXNlY3Rpb24gc3RhdGUgaW4gQklTRUNUX0xPRyIKK21zZ3N0ciAi5bCH5LqM5YiG5bCL5om+55qE54uA5oWL5a+r5YWlIEJJU0VDVF9MT0ciCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDUKK21zZ2lkICJjaGVjayBhbmQgc2V0IHRlcm1zIGluIGEgYmlzZWN0aW9uIHN0YXRlIgorbXNnc3RyICLlnKjkuIDlgIvkuozliIblsIvmib7ni4DmhYvkuK3mqqLmn6XlkozoqK3lrprooZPoqp4iCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDcKK21zZ2lkICJjaGVjayB3aGV0aGVyIGJhZCBvciBnb29kIHRlcm1zIGV4aXN0IgorbXNnc3RyICLmqqLmn6Xlo57nmoTmiJblpb3nmoTooZPoqp7mmK/lkKblrZjlnKgiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NDkKK21zZ2lkICJwcmludCBvdXQgdGhlIGJpc2VjdCB0ZXJtcyIKK21zZ3N0ciAi5YiX5Y2w5LqM5YiG5bCL5om+6KGT6KqeIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjUxCittc2dpZCAic3RhcnQgdGhlIGJpc2VjdCBzZXNzaW9uIgorbXNnc3RyICLllZ/li5XkuozliIblsIvmib7pgY7nqIsiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NTMKK21zZ2lkICJ1cGRhdGUgQklTRUNUX0hFQUQgaW5zdGVhZCBvZiBjaGVja2luZyBvdXQgdGhlIGN1cnJlbnQgY29tbWl0IgorbXNnc3RyICLmm7TmlrAgQklTRUNUX0hFQUQg6ICM6Z2e57C95Ye655uu5YmN5o+Q5LqkIgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NjU1Cittc2dpZCAibm8gbG9nIGZvciBCSVNFQ1RfV1JJVEUiCittc2dzdHIgIkJJU0VDVF9XUklURSDnhKHml6XoqowiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2NzMKK21zZ2lkICItLXdyaXRlLXRlcm1zIHJlcXVpcmVzIHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0td3JpdGUtdGVybXMg6ZyA6KaB5YWp5YCL5Y+D5pW4IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6Njc3Cittc2dpZCAiLS1iaXNlY3QtY2xlYW4tc3RhdGUgcmVxdWlyZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLWJpc2VjdC1jbGVhbi1zdGF0ZSDkuI3luLblj4PmlbgiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2ODQKK21zZ2lkICItLWJpc2VjdC1yZXNldCByZXF1aXJlcyBlaXRoZXIgbm8gYXJndW1lbnQgb3IgYSBjb21taXQiCittc2dzdHIgIi0tYmlzZWN0LXJlc2V0IOeEoemcgOWPg+aVuOaIluiAhemcgOimgeS4gOWAi+aPkOS6pCIKKworIzogYnVpbHRpbi9iaXNlY3QtLWhlbHBlci5jOjY4OAorbXNnaWQgIi0tYmlzZWN0LXdyaXRlIHJlcXVpcmVzIGVpdGhlciA0IG9yIDUgYXJndW1lbnRzIgorbXNnc3RyICItLWJpc2VjdC13cml0ZSDpnIDopoEgNCDmiJYgNSDlgIvlj4PmlbgiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo2OTQKK21zZ2lkICItLWNoZWNrLWFuZC1zZXQtdGVybXMgcmVxdWlyZXMgMyBhcmd1bWVudHMiCittc2dzdHIgIi0tY2hlY2stYW5kLXNldC10ZXJtcyDpnIDopoEgMyDlgIvlj4PmlbgiCisKKyM6IGJ1aWx0aW4vYmlzZWN0LS1oZWxwZXIuYzo3MDAKK21zZ2lkICItLWJpc2VjdC1uZXh0LWNoZWNrIHJlcXVpcmVzIDIgb3IgMyBhcmd1bWVudHMiCittc2dzdHIgIi0tYmlzZWN0LW5leHQtY2hlY2sg6ZyA6KaBIDIg5oiWIDMg5YCL5Y+D5pW4IgorCisjOiBidWlsdGluL2Jpc2VjdC0taGVscGVyLmM6NzA2Cittc2dpZCAiLS1iaXNlY3QtdGVybXMgcmVxdWlyZXMgMCBvciAxIGFyZ3VtZW50IgorbXNnc3RyICItLWJpc2VjdC10ZXJtcyDpnIDopoEgMCDmiJYgMSDlgIvlj4PmlbgiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzozMQorbXNnaWQgImdpdCBibGFtZSBbPG9wdGlvbnM+XSBbPHJldi1vcHRzPl0gWzxyZXY+XSBbLS1dIDxmaWxlPiIKK21zZ3N0ciAiZ2l0IGJsYW1lIFs86YG46aCFPl0gWzzniYjmnKzpgbjpoIU+XSBbPOeJiOacrD5dIFstLV0gPOaqlOahiD4iCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzozNgorbXNnaWQgIjxyZXYtb3B0cz4gYXJlIGRvY3VtZW50ZWQgaW4gZ2l0LXJldi1saXN0KDEpIgorbXNnc3RyICI854mI5pys6YG46aCFPiDnmoTmqpTmoYjoqJjpjITlnKggZ2l0LXJldi1saXN0KDEpIOS4rSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJleHBlY3RpbmcgYSBjb2xvcjogJXMiCittc2dzdHIgIuacn+acm+S4gOWAi+mhj+iJsu+8miVzIgorCisjOiBidWlsdGluL2JsYW1lLmM6NDE2Cittc2dpZCAibXVzdCBlbmQgd2l0aCBhIGNvbG9yIgorbXNnc3RyICLlv4XpoIjku6XkuIDlgIvpoY/oibLntZDlsL4iCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo3MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb2xvciAnJXMnIGluIGNvbG9yLmJsYW1lLnJlcGVhdGVkTGluZXMiCittc2dzdHIgIuioreWumiBjb2xvci5ibGFtZS5yZXBlYXRlZExpbmVzIOS4reeahOeEoeaViOmhj+iJsiAnJXMnIgorCisjOiBidWlsdGluL2JsYW1lLmM6NzQ3Cittc2dpZCAiaW52YWxpZCB2YWx1ZSBmb3IgYmxhbWUuY29sb3JpbmciCittc2dzdHIgIuioreWumiBibGFtZS5jb2xvcmluZyDkuK3nmoTnhKHmlYjlj5blgLwiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpbmQgcmV2aXNpb24gJXMgdG8gaWdub3JlIgorbXNnc3RyICLkuI3og73mib7liLDopoHlv73nlaXnmoTniYjmnKwgJXMiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDQKK21zZ2lkICJTaG93IGJsYW1lIGVudHJpZXMgYXMgd2UgZmluZCB0aGVtLCBpbmNyZW1lbnRhbGx5IgorbXNnc3RyICLlop7ph4/lvI/lnLDpoa/npLrnmbznj77nmoQgYmxhbWUg5qKd55uuIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ1Cittc2dpZCAiU2hvdyBibGFuayBTSEEtMSBmb3IgYm91bmRhcnkgY29tbWl0cyAoRGVmYXVsdDogb2ZmKSIKK21zZ3N0ciAi6YKK55WM5o+Q5Lqk6aGv56S656m655qEIFNIQS0x77yI6aCQ6Kit77ya6Zec6ZaJ77yJIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODQ2Cittc2dpZCAiRG8gbm90IHRyZWF0IHJvb3QgY29tbWl0cyBhcyBib3VuZGFyaWVzIChEZWZhdWx0OiBvZmYpIgorbXNnc3RyICLkuI3miormoLnmj5DkuqTkvZzngrrpgornlYzvvIjpoJDoqK3vvJrpl5zplonvvIkiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDcKK21zZ2lkICJTaG93IHdvcmsgY29zdCBzdGF0aXN0aWNzIgorbXNnc3RyICLpoa/npLrmjIfku6TmtojogJfntbHoqIgiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NDgKK21zZ2lkICJGb3JjZSBwcm9ncmVzcyByZXBvcnRpbmciCittc2dzdHIgIuW8t+WItumAsuW6pumhr+ekuiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg0OQorbXNnaWQgIlNob3cgb3V0cHV0IHNjb3JlIGZvciBibGFtZSBlbnRyaWVzIgorbXNnc3RyICLpoa/npLrliKTmlrcgYmxhbWUg5qKd55uu5L2N56e755qE5b6X5YiG6Ki65pa36KiK5oGvIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODUwCittc2dpZCAiU2hvdyBvcmlnaW5hbCBmaWxlbmFtZSAoRGVmYXVsdDogYXV0bykiCittc2dzdHIgIumhr+ekuuWOn+Wni+aqlOahiOWQje+8iOmgkOiore+8muiHquWLle+8iSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg1MQorbXNnaWQgIlNob3cgb3JpZ2luYWwgbGluZW51bWJlciAoRGVmYXVsdDogb2ZmKSIKK21zZ3N0ciAi6aGv56S65Y6f5aeL55qE6KGM6Jmf77yI6aCQ6Kit77ya6Zec6ZaJ77yJIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODUyCittc2dpZCAiU2hvdyBpbiBhIGZvcm1hdCBkZXNpZ25lZCBmb3IgbWFjaGluZSBjb25zdW1wdGlvbiIKK21zZ3N0ciAi6aGv56S654K65LiA5YCL6YGp5ZCI5qmf5Zmo6K6A5Y+W55qE5qC85byPIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODUzCittc2dpZCAiU2hvdyBwb3JjZWxhaW4gZm9ybWF0IHdpdGggcGVyLWxpbmUgY29tbWl0IGluZm9ybWF0aW9uIgorbXNnc3RyICLngrrmr4/kuIDooYzpoa/npLrmqZ/lmajpgannlKjnmoTmj5DkuqToqIrmga8iCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTQKK21zZ2lkICJVc2UgdGhlIHNhbWUgb3V0cHV0IG1vZGUgYXMgZ2l0LWFubm90YXRlIChEZWZhdWx0OiBvZmYpIgorbXNnc3RyICLkvb/nlKjlkowgZ2l0LWFubm90YXRlIOebuOWQjOeahOi8uOWHuuaooeW8j++8iOmgkOiore+8mumXnOmWie+8iSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg1NQorbXNnaWQgIlNob3cgcmF3IHRpbWVzdGFtcCAoRGVmYXVsdDogb2ZmKSIKK21zZ3N0ciAi6aGv56S65Y6f5aeL5pmC6ZaT5oiz77yI6aCQ6Kit77ya6Zec6ZaJ77yJIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODU2Cittc2dpZCAiU2hvdyBsb25nIGNvbW1pdCBTSEExIChEZWZhdWx0OiBvZmYpIgorbXNnc3RyICLpoa/npLrplbfnmoQgU0hBMSDmj5DkuqTomZ/vvIjpoJDoqK3vvJrpl5zplonvvIkiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTcKK21zZ2lkICJTdXBwcmVzcyBhdXRob3IgbmFtZSBhbmQgdGltZXN0YW1wIChEZWZhdWx0OiBvZmYpIgorbXNnc3RyICLpmrHol4/kvZzogIXlkI3lrZflkozmmYLplpPmiLPvvIjpoJDoqK3vvJrpl5zplonvvIkiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NTgKK21zZ2lkICJTaG93IGF1dGhvciBlbWFpbCBpbnN0ZWFkIG9mIG5hbWUgKERlZmF1bHQ6IG9mZikiCittc2dzdHIgIumhr+ekuuS9nOiAheeahOS/oeeuseiAjOS4jeaYr+WQjeWtl++8iOmgkOiore+8mumXnOmWie+8iSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg1OQorbXNnaWQgIklnbm9yZSB3aGl0ZXNwYWNlIGRpZmZlcmVuY2VzIgorbXNnc3RyICLlv73nlaXnqbrnmb3lt67nlbAiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjAgYnVpbHRpbi9sb2cuYzoxNzAyCittc2dpZCAicmV2IgorbXNnc3RyICLniYjmnKwiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjAKK21zZ2lkICJJZ25vcmUgPHJldj4gd2hlbiBibGFtaW5nIgorbXNnc3RyICLlnKjln7fooYwgYmxhbWUg5YuV5L2c5pmC5b+955WlIDzniYjmnKw+IgorCisjOiBidWlsdGluL2JsYW1lLmM6ODYxCittc2dpZCAiSWdub3JlIHJldmlzaW9ucyBmcm9tIDxmaWxlPiIKK21zZ3N0ciAi5b+955Wl5L6G6IeqIDzmqpTmoYg+IOS4reeahOeJiOacrCIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MgorbXNnaWQgImNvbG9yIHJlZHVuZGFudCBtZXRhZGF0YSBmcm9tIHByZXZpb3VzIGxpbmUgZGlmZmVyZW50bHkiCittc2dzdHIgIuS9v+eUqOmhj+iJsumWk+malOi8uOWHuuiIh+WJjeS4gOihjOS4jeWQjOeahOmHjeikh+WFg+ioiuaBryIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2MworbXNnaWQgImNvbG9yIGxpbmVzIGJ5IGFnZSIKK21zZ3N0ciAi5L6d5pOa5pmC6ZaT6JGX6ImyIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODY0Cittc2dpZCAiU3BlbmQgZXh0cmEgY3ljbGVzIHRvIGZpbmQgYmV0dGVyIG1hdGNoIgorbXNnc3RyICLoirHosrvpoY3lpJbnmoTlvqrnkrDkvobmib7liLDmm7Tlpb3nmoTnrKblkIgiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzo4NjUKK21zZ2lkICJVc2UgcmV2aXNpb25zIGZyb20gPGZpbGU+IGluc3RlYWQgb2YgY2FsbGluZyBnaXQtcmV2LWxpc3QiCittc2dzdHIgIuS9v+eUqOS+huiHqiA85qqU5qGIPiDnmoTkv67oqILpm4bogIzkuI3mmK/lkbzlj6sgZ2l0LXJldi1saXN0IgorCisjOiBidWlsdGluL2JsYW1lLmM6ODY2Cittc2dpZCAiVXNlIDxmaWxlPidzIGNvbnRlbnRzIGFzIHRoZSBmaW5hbCBpbWFnZSIKK21zZ3N0ciAi5L2/55SoIDzmqpTmoYg+IOeahOWFp+WuueS9nOeCuuacgOe1gueahOWclueJhyIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2NyBidWlsdGluL2JsYW1lLmM6ODY4Cittc2dpZCAic2NvcmUiCittc2dzdHIgIuW+l+WIhiIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2NworbXNnaWQgIkZpbmQgbGluZSBjb3BpZXMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCittc2dzdHIgIuaJvuWIsOaqlOahiOWFp+WPiui3qOaqlOahiOeahOihjOikh+ijvSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2OAorbXNnaWQgIkZpbmQgbGluZSBtb3ZlbWVudHMgd2l0aGluIGFuZCBhY3Jvc3MgZmlsZXMiCittc2dzdHIgIuaJvuWIsOaqlOahiOWFp+WPiui3qOaqlOahiOeahOihjOenu+WLlSIKKworIzogYnVpbHRpbi9ibGFtZS5jOjg2OQorbXNnaWQgIm4sbSIKK21zZ3N0ciAibixtIgorCisjOiBidWlsdGluL2JsYW1lLmM6ODY5Cittc2dpZCAiUHJvY2VzcyBvbmx5IGxpbmUgcmFuZ2UgbixtLCBjb3VudGluZyBmcm9tIDEiCittc2dzdHIgIuWPquiZleeQhuihjOevhOWcjeWcqCBuIOWSjCBtIOS5i+mWk+eahO+8jOW+niAxIOmWi+WniyIKKworIzogYnVpbHRpbi9ibGFtZS5jOjkyMQorbXNnaWQgIi0tcHJvZ3Jlc3MgY2FuJ3QgYmUgdXNlZCB3aXRoIC0taW5jcmVtZW50YWwgb3IgcG9yY2VsYWluIGZvcm1hdHMiCittc2dzdHIgIi0tcHJvZ3Jlc3Mg5LiN6IO95ZKMIC0taW5jcmVtZW50YWwg5oiWIC0tcG9yY2VsYWluIOWQjOaZguS9v+eUqCIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgc3RyaW5nIGlzIHVzZWQgdG8gdGVsbCB1cyB0aGUKKyMuIG1heGltdW0gZGlzcGxheSB3aWR0aCBmb3IgYSByZWxhdGl2ZSB0aW1lc3RhbXAgaW4KKyMuICJnaXQgYmxhbWUiIG91dHB1dC4gIEZvciBDIGxvY2FsZSwgIjQgeWVhcnMsIDExCisjLiBtb250aHMgYWdvIiwgd2hpY2ggdGFrZXMgMjIgcGxhY2VzLCBpcyB0aGUgbG9uZ2VzdAorIy4gYW1vbmcgdmFyaW91cyBmb3JtcyBvZiByZWxhdGl2ZSB0aW1lc3RhbXBzLCBidXQKKyMuIHlvdXIgbGFuZ3VhZ2UgbWF5IG5lZWQgbW9yZSBvciBmZXdlciBkaXNwbGF5CisjLiBjb2x1bW5zLgorIy4KKyM6IGJ1aWx0aW4vYmxhbWUuYzo5NzIKK21zZ2lkICI0IHllYXJzLCAxMSBtb250aHMgYWdvIgorbXNnc3RyICI0IOW5tCAxMSDlgIvmnIjliY0iCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzoxMDc5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJXMgaGFzIG9ubHkgJWx1IGxpbmUiCittc2dpZF9wbHVyYWwgImZpbGUgJXMgaGFzIG9ubHkgJWx1IGxpbmVzIgorbXNnc3RyWzBdICLmqpTmoYggJXMg5Y+q5pyJICVsdSDooYwiCisKKyM6IGJ1aWx0aW4vYmxhbWUuYzoxMTI1Cittc2dpZCAiQmxhbWluZyBsaW5lcyIKK21zZ3N0ciAi6L+96Lmk56iL5byP56K86KGMIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjI5Cittc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSBbLXIgfCAtYV0gWy0tbWVyZ2VkIHwgLS1uby1tZXJnZWRdIgorbXNnc3RyICJnaXQgYnJhbmNoIFs86YG46aCFPl0gWy1yIHwgLWFdIFstLW1lcmdlZCB8IC0tbm8tbWVyZ2VkXSIKKworIzogYnVpbHRpbi9icmFuY2guYzozMAorbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gWy1sXSBbLWZdIDxicmFuY2gtbmFtZT4gWzxzdGFydC1wb2ludD5dIgorbXNnc3RyICJnaXQgYnJhbmNoIFs86YG46aCFPl0gWy1sXSBbLWZdIDzliIbmlK/lkI0+IFs86LW35aeL6buePl0iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MzEKK21zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstcl0gKC1kIHwgLUQpIDxicmFuY2gtbmFtZT4uLi4iCittc2dzdHIgImdpdCBicmFuY2ggWzzpgbjpoIU+XSBbLXJdICgtZCB8IC1EKSA85YiG5pSv5ZCNPi4uLiIKKworIzogYnVpbHRpbi9icmFuY2guYzozMgorbXNnaWQgImdpdCBicmFuY2ggWzxvcHRpb25zPl0gKC1tIHwgLU0pIFs8b2xkLWJyYW5jaD5dIDxuZXctYnJhbmNoPiIKK21zZ3N0ciAiZ2l0IGJyYW5jaCBbPOmBuOmghT5dICgtbSB8IC1NKSBbPOiIiuWIhuaUrz5dIDzmlrDliIbmlK8+IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjMzCittc2dpZCAiZ2l0IGJyYW5jaCBbPG9wdGlvbnM+XSAoLWMgfCAtQykgWzxvbGQtYnJhbmNoPl0gPG5ldy1icmFuY2g+IgorbXNnc3RyICJnaXQgYnJhbmNoIFs86YG46aCFPl0gKC1jIHwgLUMpIFs86ICB5YiG5pSvPl0gPOaWsOWIhuaUrz4iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MzQKK21zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstciB8IC1hXSBbLS1wb2ludHMtYXRdIgorbXNnc3RyICJnaXQgYnJhbmNoIFs86YG46aCFPl0gWy1yIHwgLWFdIFstLXBvaW50cy1hdF0iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MzUKK21zZ2lkICJnaXQgYnJhbmNoIFs8b3B0aW9ucz5dIFstciB8IC1hXSBbLS1mb3JtYXRdIgorbXNnc3RyICJnaXQgYnJhbmNoIFs86YG46aCFPl0gWy1yIHwgLWFdIFstLWZvcm1hdF0iCisKKyMgIOitr+iAhe+8muS/neaMgeWOn+aPm+ihjOagvOW8j++8jOWcqOi8uOWHuuaZgiAlcyDnmoTmm7/ku6PlhaflrrnmnIPorpPlrZfkuLLororplbcKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkZWxldGluZyBicmFuY2ggJyVzJyB0aGF0IGhhcyBiZWVuIG1lcmdlZCB0b1xuIgorIiAgICAgICAgICclcycsIGJ1dCBub3QgeWV0IG1lcmdlZCB0byBIRUFELiIKK21zZ3N0ciAiIgorIuWwh+imgeWIqumZpOeahOWIhuaUryAnJXMnIOW3sue2k+iiq+WQiOS9teWIsFxuIgorIiAgICAgICAgICclcyfvvIzkvYbmnKrlkIjkvbXliLAgSEVBROOAgiIKKworIyAg6K2v6ICF77ya5L+d5oyB5Y6f5o+b6KGM5qC85byP77yM5Zyo6Ly45Ye65pmCICVzIOeahOabv+S7o+WFp+Wuueacg+iuk+Wtl+S4suiuiumVtworIzogYnVpbHRpbi9icmFuY2guYzoxNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm5vdCBkZWxldGluZyBicmFuY2ggJyVzJyB0aGF0IGlzIG5vdCB5ZXQgbWVyZ2VkIHRvXG4iCisiICAgICAgICAgJyVzJywgZXZlbiB0aG91Z2ggaXQgaXMgbWVyZ2VkIHRvIEhFQUQuIgorbXNnc3RyICIiCisi5Lim5pyq5Yiq6Zmk5YiG5pSvICclcyfvvIwg6ZuW54S25a6D5bey57aT5ZCI5L215YiwIEhFQUTvvIxcbiIKKyIgICAgICAgICDnhLbogIzljbvlsJrmnKrooqvlkIjkvbXliLDliIbmlK8gJyVzJyDjgIIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkbid0IGxvb2sgdXAgY29tbWl0IG9iamVjdCBmb3IgJyVzJyIKK21zZ3N0ciAi54Sh5rOV5p+l6KmiICclcycg5oyH5ZCR55qE5o+Q5Lqk54mp5Lu2IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIGJyYW5jaCAnJXMnIGlzIG5vdCBmdWxseSBtZXJnZWQuXG4iCisiSWYgeW91IGFyZSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSBpdCwgcnVuICdnaXQgYnJhbmNoIC1EICVzJy4iCittc2dzdHIgIiIKKyLliIbmlK8gJyVzJyDmspLmnInlrozlhajlkIjkvbXjgIJcbiIKKyLlpoLmnpzmgqjnorroqo3opoHliKrpmaTlroPvvIzln7fooYwgJ2dpdCBicmFuY2ggLUQgJXMn44CCIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjE4OQorbXNnaWQgIlVwZGF0ZSBvZiBjb25maWctZmlsZSBmYWlsZWQiCittc2dzdHIgIuabtOaWsOioreWumuaqlOahiOWkseaVlyIKKworIzogYnVpbHRpbi9icmFuY2guYzoyMjAKK21zZ2lkICJjYW5ub3QgdXNlIC1hIHdpdGggLWQiCittc2dzdHIgIuS4jeiDveWwhyAtYSDlkowgLWQg5ZCM5pmC5L2/55SoIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjIyNgorbXNnaWQgIkNvdWxkbid0IGxvb2sgdXAgY29tbWl0IG9iamVjdCBmb3IgSEVBRCIKK21zZ3N0ciAi54Sh5rOV5p+l6KmiIEhFQUQg5oyH5ZCR55qE5o+Q5Lqk54mp5Lu2IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjI0MAorIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgZGVsZXRlIGJyYW5jaCAnJXMnIGNoZWNrZWQgb3V0IGF0ICclcyciCittc2dzdHIgIueEoeazleWIqumZpOewveWHuuaWvCAnJTIkcycg55qE5YiG5pSvICclMSRzJ+OAgiIKKworIzogYnVpbHRpbi9icmFuY2guYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3RlLXRyYWNraW5nIGJyYW5jaCAnJXMnIG5vdCBmb3VuZC4iCittc2dzdHIgIuacquiDveaJvuWIsOmBoOerr+i/vei5pOWIhuaUryAnJXMn44CCIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJicmFuY2ggJyVzJyBub3QgZm91bmQuIgorbXNnc3RyICLliIbmlK8gJyVzJyDmnKrnmbznj77jgIIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVycm9yIGRlbGV0aW5nIHJlbW90ZS10cmFja2luZyBicmFuY2ggJyVzJyIKK21zZ3N0ciAi54Sh5rOV5Yiq6Zmk6YGg56uv6L+96Lmk5YiG5pSvICclcyciCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6MjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkVycm9yIGRlbGV0aW5nIGJyYW5jaCAnJXMnIgorbXNnc3RyICLnhKHms5XliKrpmaTliIbmlK8gJyVzJyIKKworIzogYnVpbHRpbi9icmFuY2guYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICVzICh3YXMgJXMpLlxuIgorbXNnc3RyICLlt7LliKrpmaTpgaDnq6/ov73ouaTliIbmlK8gJXPvvIjmm77ngrogJXPvvInjgIJcbiIKKworIzogYnVpbHRpbi9icmFuY2guYzoyODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCBicmFuY2ggJXMgKHdhcyAlcykuXG4iCittc2dzdHIgIuW3suWIqumZpOWIhuaUryAlc++8iOabvueCuiAlc++8ieOAglxuIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQyOSBidWlsdGluL3RhZy5jOjYxCittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGZvcm1hdCBzdHJpbmciCittc2dzdHIgIuS4jeiDveino+aekOagvOW8j+WMluWtl+S4siIKKworIzogYnVpbHRpbi9icmFuY2guYzo0NjAKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIgorbXNnc3RyICLkuI3og73op6PmnpAgSEVBRCDmj5DkuqQiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDY2CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgKCVzKSBwb2ludHMgb3V0c2lkZSBvZiByZWZzL2hlYWRzLyIKK21zZ3N0ciAiSEVBRCAoJXMpIOaMh+WQkSByZWZzL2hlYWRzLyDkuYvlpJYiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCAlcyBpcyBiZWluZyByZWJhc2VkIGF0ICVzIgorbXNnc3RyICLliIbmlK8gJXMg5q2j6KKr6YeN5a6a5Z+65bqV5YiwICVzIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjQ4NQorIywgYy1mb3JtYXQKK21zZ2lkICJCcmFuY2ggJXMgaXMgYmVpbmcgYmlzZWN0ZWQgYXQgJXMiCittc2dzdHIgIuWIhuaUryAlcyDmraPooqvkuozliIblsIvmib7mlrwgJXMiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTAyCittc2dpZCAiY2Fubm90IGNvcHkgdGhlIGN1cnJlbnQgYnJhbmNoIHdoaWxlIG5vdCBvbiBhbnkuIgorbXNnc3RyICLnhKHms5XopIfoo73nm67liY3liIbmlK/lm6DngrrkuI3omZXmlrzku7vkvZXliIbmlK/kuIrjgIIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTA0Cittc2dpZCAiY2Fubm90IHJlbmFtZSB0aGUgY3VycmVudCBicmFuY2ggd2hpbGUgbm90IG9uIGFueS4iCittc2dzdHIgIueEoeazlemHjeaWsOWRveWQjeebruWJjeWIhuaUr+WboOeCuuS4jeiZleaWvOS7u+S9leWIhuaUr+S4iuOAgiIKKworIzogYnVpbHRpbi9icmFuY2guYzo1MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBicmFuY2ggbmFtZTogJyVzJyIKK21zZ3N0ciAi54Sh5pWI55qE5YiG5pSv5ZCN77yaJyVzJyIKKworIzogYnVpbHRpbi9icmFuY2guYzo1NDIKK21zZ2lkICJCcmFuY2ggcmVuYW1lIGZhaWxlZCIKK21zZ3N0ciAi5YiG5pSv6YeN5paw5ZG95ZCN5aSx5pWXIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjU0NAorbXNnaWQgIkJyYW5jaCBjb3B5IGZhaWxlZCIKK21zZ3N0ciAi5YiG5pSv6KSH6KO95aSx5pWXIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjU0OAorIywgYy1mb3JtYXQKK21zZ2lkICJDcmVhdGVkIGEgY29weSBvZiBhIG1pc25hbWVkIGJyYW5jaCAnJXMnIgorbXNnc3RyICLlt7LngrrpjK/oqqTlkb3lkI3nmoTliIbmlK8gJyVzJyDlu7rnq4vkuobkuIDlgIvlia/mnKwiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTUxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbmFtZWQgYSBtaXNuYW1lZCBicmFuY2ggJyVzJyBhd2F5IgorbXNnc3RyICLlt7LlsIfpjK/oqqTlkb3lkI3nmoTliIbmlK8gJyVzJyDph43mlrDlkb3lkI0iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIkJyYW5jaCByZW5hbWVkIHRvICVzLCBidXQgSEVBRCBpcyBub3QgdXBkYXRlZCEiCittc2dzdHIgIuWIhuaUr+mHjeaWsOWRveWQjeeCuiAlc++8jOS9hiBIRUFEIOaykuacieabtOaWsO+8gSIKKworIzogYnVpbHRpbi9icmFuY2guYzo1NjYKK21zZ2lkICJCcmFuY2ggaXMgcmVuYW1lZCwgYnV0IHVwZGF0ZSBvZiBjb25maWctZmlsZSBmYWlsZWQiCittc2dzdHIgIuWIhuaUr+iiq+mHjeaWsOWRveWQje+8jOS9huabtOaWsOioreWumuaqlOahiOWkseaVlyIKKworIzogYnVpbHRpbi9icmFuY2guYzo1NjgKK21zZ2lkICJCcmFuY2ggaXMgY29waWVkLCBidXQgdXBkYXRlIG9mIGNvbmZpZy1maWxlIGZhaWxlZCIKK21zZ3N0ciAi5YiG5pSv5bey6KSH6KO977yM5L2G5pu05paw6Kit5a6a5qqU5qGI5aSx5pWXIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjU4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGxlYXNlIGVkaXQgdGhlIGRlc2NyaXB0aW9uIGZvciB0aGUgYnJhbmNoXG4iCisiICAlc1xuIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggJyVjJyB3aWxsIGJlIHN0cmlwcGVkLlxuIgorbXNnc3RyICIiCisi6KuL57eo6Lyv5YiG5pSv55qE5o+P6L+wXG4iCisiICAlc1xuIgorIuS7pSAnJWMnIOmWi+mgreeahOihjOWwh+iiq+mBjua/vuOAglxuIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYxOAorbXNnaWQgIkdlbmVyaWMgb3B0aW9ucyIKK21zZ3N0ciAi6YCa55So6YG46aCFIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyMAorbXNnaWQgInNob3cgaGFzaCBhbmQgc3ViamVjdCwgZ2l2ZSB0d2ljZSBmb3IgdXBzdHJlYW0gYnJhbmNoIgorbXNnc3RyICLpoa/npLrpm5zmuYrlgLzlkozkuLvpoYzvvIzoi6Xlj4Pmlbjlh7rnj77lhanmrKHliYfpoa/npLrkuIrmuLjliIbmlK8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjIxCittc2dpZCAic3VwcHJlc3MgaW5mb3JtYXRpb25hbCBtZXNzYWdlcyIKK21zZ3N0ciAi5LiN6aGv56S66KiK5oGvIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyMgorbXNnaWQgInNldCB1cCB0cmFja2luZyBtb2RlIChzZWUgZ2l0LXB1bGwoMSkpIgorbXNnc3RyICLoqK3lrprov73ouaTmqKHlvI/vvIjlj4PoposgZ2l0LXB1bGwoMSnvvIkiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI0Cittc2dpZCAiZG8gbm90IHVzZSIKK21zZ3N0ciAi5LiN6KaB5L2/55SoIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYyNiBidWlsdGluL3JlYmFzZS5jOjUxMworbXNnaWQgInVwc3RyZWFtIgorbXNnc3RyICLkuIrmuLgiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI2Cittc2dpZCAiY2hhbmdlIHRoZSB1cHN0cmVhbSBpbmZvIgorbXNnc3RyICLmlLnororkuIrmuLjoqIrmga8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjI3Cittc2dpZCAidW5zZXQgdGhlIHVwc3RyZWFtIGluZm8iCittc2dzdHIgIuWPlua2iOS4iua4uOizh+ioiuioreWumiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MjgKK21zZ2lkICJ1c2UgY29sb3JlZCBvdXRwdXQiCittc2dzdHIgIuS9v+eUqOW9qeiJsui8uOWHuiIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MjkKK21zZ2lkICJhY3Qgb24gcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgorbXNnc3RyICLkvZznlKjmlrzpgaDnq6/ov73ouaTliIbmlK8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjMxIGJ1aWx0aW4vYnJhbmNoLmM6NjMzCittc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGNvbnRhaW4gdGhlIGNvbW1pdCIKK21zZ3N0ciAi5Y+q5YiX5Y2w5YyF5ZCr6Kmy5o+Q5Lqk55qE5YiG5pSvIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjYzMiBidWlsdGluL2JyYW5jaC5jOjYzNAorbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBkb24ndCBjb250YWluIHRoZSBjb21taXQiCittc2dzdHIgIuWPquWIl+WNsOS4jeWMheWQq+ipsuaPkOS6pOeahOWIhuaUryIKKworIzogYnVpbHRpbi9icmFuY2guYzo2MzcKK21zZ2lkICJTcGVjaWZpYyBnaXQtYnJhbmNoIGFjdGlvbnM6IgorbXNnc3RyICLlhbfpq5TnmoQgZ2l0LWJyYW5jaCDli5XkvZzvvJoiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjM4Cittc2dpZCAibGlzdCBib3RoIHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCittc2dzdHIgIuWIl+WHuumBoOerr+i/vei5pOWPiuacrOapn+WIhuaUryIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDAKK21zZ2lkICJkZWxldGUgZnVsbHkgbWVyZ2VkIGJyYW5jaCIKK21zZ3N0ciAi5Yiq6Zmk5a6M5YWo5ZCI5L2155qE5YiG5pSvIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0MQorbXNnaWQgImRlbGV0ZSBicmFuY2ggKGV2ZW4gaWYgbm90IG1lcmdlZCkiCittc2dzdHIgIuWIqumZpOWIhuaUr++8iOWNs+S9v+aykuacieWQiOS9te+8iSIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDIKK21zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCBhbmQgaXRzIHJlZmxvZyIKK21zZ3N0ciAi56e75YuVL+mHjeaWsOWRveWQjeS4gOWAi+WIhuaUr++8jOS7peWPiuWug+eahOW8leeUqOaXpeiqjCIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDMKK21zZ2lkICJtb3ZlL3JlbmFtZSBhIGJyYW5jaCwgZXZlbiBpZiB0YXJnZXQgZXhpc3RzIgorbXNnc3RyICLnp7vli5Uv6YeN5paw5ZG95ZCN5LiA5YCL5YiG5pSv77yM5Y2z5L2/55uu5qiZ5bey5a2Y5ZyoIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NAorbXNnaWQgImNvcHkgYSBicmFuY2ggYW5kIGl0cyByZWZsb2ciCittc2dzdHIgIuikh+ijveS4gOWAi+WIhuaUr+WSjOWug+eahOW8leeUqOaXpeiqjCIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDUKK21zZ2lkICJjb3B5IGEgYnJhbmNoLCBldmVuIGlmIHRhcmdldCBleGlzdHMiCittc2dzdHIgIuikh+ijveS4gOWAi+WIhuaUr++8jOWNs+S9v+ebruaomeW3suWtmOWcqCIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NDYKK21zZ2lkICJsaXN0IGJyYW5jaCBuYW1lcyIKK21zZ3N0ciAi5YiX5Ye65YiG5pSv5ZCNIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0NworbXNnaWQgInNob3cgY3VycmVudCBicmFuY2ggbmFtZSIKK21zZ3N0ciAi6aGv56S655uu5YmN5YiG5pSv5ZCNIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY0OAorbXNnaWQgImNyZWF0ZSB0aGUgYnJhbmNoJ3MgcmVmbG9nIgorbXNnc3RyICLlu7rnq4vliIbmlK/nmoTlvJXnlKjml6XoqowiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUwCittc2dpZCAiZWRpdCB0aGUgZGVzY3JpcHRpb24gZm9yIHRoZSBicmFuY2giCittc2dzdHIgIuaomeiomOWIhuaUr+eahOaPj+i/sCIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NTEKK21zZ2lkICJmb3JjZSBjcmVhdGlvbiwgbW92ZS9yZW5hbWUsIGRlbGV0aW9uIgorbXNnc3RyICLlvLfliLblu7rnq4vjgIHnp7vli5Uv6YeN5paw5ZG95ZCN44CB5Yiq6ZmkIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjY1MgorbXNnaWQgInByaW50IG9ubHkgYnJhbmNoZXMgdGhhdCBhcmUgbWVyZ2VkIgorbXNnc3RyICLlj6rliJfljbDlt7LntpPlkIjkvbXnmoTliIbmlK8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjUzCittc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyB0aGF0IGFyZSBub3QgbWVyZ2VkIgorbXNnc3RyICLlj6rliJfljbDlsJrmnKrlkIjkvbXnmoTliIbmlK8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjU0Cittc2dpZCAibGlzdCBicmFuY2hlcyBpbiBjb2x1bW5zIgorbXNnc3RyICLku6XliJfnmoTmlrnlvI/poa/npLrliIbmlK8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjU3IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIgYnVpbHRpbi9ub3Rlcy5jOjQxNQorIzogYnVpbHRpbi9ub3Rlcy5jOjQxOCBidWlsdGluL25vdGVzLmM6NTgxIGJ1aWx0aW4vbm90ZXMuYzo1ODQKKyM6IGJ1aWx0aW4vdGFnLmM6NDMzCittc2dpZCAib2JqZWN0IgorbXNnc3RyICLnianku7YiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjU4Cittc2dpZCAicHJpbnQgb25seSBicmFuY2hlcyBvZiB0aGUgb2JqZWN0IgorbXNnc3RyICLlj6rliJfljbDmjIflkJHoqbLnianku7bnmoTliIbmlK8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NjYwIGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDggYnVpbHRpbi90YWcuYzo0NDAKK21zZ2lkICJzb3J0aW5nIGFuZCBmaWx0ZXJpbmcgYXJlIGNhc2UgaW5zZW5zaXRpdmUiCittc2dzdHIgIuaOkuW6j+WSjOmBjua/vuWxrOaWvOWkp+Wwj+Wvq+S4jeaVj+aEnyIKKworIzogYnVpbHRpbi9icmFuY2guYzo2NjEgYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozOCBidWlsdGluL3RhZy5jOjQzOAorIzogYnVpbHRpbi92ZXJpZnktdGFnLmM6MzgKK21zZ2lkICJmb3JtYXQgdG8gdXNlIGZvciB0aGUgb3V0cHV0IgorbXNnc3RyICLovLjlh7rmoLzlvI8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Njg0IGJ1aWx0aW4vY2xvbmUuYzo3ODUKK21zZ2lkICJIRUFEIG5vdCBmb3VuZCBiZWxvdyByZWZzL2hlYWRzISIKK21zZ3N0ciAiSEVBRCDmspLmnInkvY3mlrwgL3JlZnMvaGVhZHMg5LmL5LiL77yBIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjcwOAorbXNnaWQgIi0tY29sdW1uIGFuZCAtLXZlcmJvc2UgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiLS1jb2x1bW4g5ZKMIC0tdmVyYm9zZSDkuI3nm7jlrrkiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzIzIGJ1aWx0aW4vYnJhbmNoLmM6Nzc3IGJ1aWx0aW4vYnJhbmNoLmM6Nzg2Cittc2dpZCAiYnJhbmNoIG5hbWUgcmVxdWlyZWQiCittc2dzdHIgIuW/hemgiOaPkOS+m+WIhuaUr+WQjSIKKworIzogYnVpbHRpbi9icmFuY2guYzo3NTMKK21zZ2lkICJDYW5ub3QgZ2l2ZSBkZXNjcmlwdGlvbiB0byBkZXRhY2hlZCBIRUFEIgorbXNnc3RyICLkuI3og73lkJHliIbpm6LplovpoK3mjIfmqJnmj5Dkvpvmj4/ov7AiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6NzU4Cittc2dpZCAiY2Fubm90IGVkaXQgZGVzY3JpcHRpb24gb2YgbW9yZSB0aGFuIG9uZSBicmFuY2giCittc2dzdHIgIuS4jeiDveeCuuS4gOWAi+S7peS4iueahOWIhuaUr+e3qOi8r+aPj+i/sCIKKworIzogYnVpbHRpbi9icmFuY2guYzo3NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gY29tbWl0IG9uIGJyYW5jaCAnJXMnIHlldC4iCittc2dzdHIgIuWIhuaUryAnJXMnIOWwmueEoeaPkOS6pOOAgiIKKworIzogYnVpbHRpbi9icmFuY2guYzo3NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gYnJhbmNoIG5hbWVkICclcycuIgorbXNnc3RyICLmspLmnInliIbmlK8gJyVzJ+OAgiIKKworIzogYnVpbHRpbi9icmFuY2guYzo3ODMKK21zZ2lkICJ0b28gbWFueSBicmFuY2hlcyBmb3IgYSBjb3B5IG9wZXJhdGlvbiIKK21zZ3N0ciAi54K66KSH6KO95YuV5L2c5o+Q5L6b5LqG5aSq5aSa55qE5YiG5pSv5ZCNIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjc5MgorbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyBmb3IgYSByZW5hbWUgb3BlcmF0aW9uIgorbXNnc3RyICLngrrph43mlrDlkb3lkI3li5XkvZzmj5DkvpvkuoblpKrlpJrnmoTlj4PmlbgiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6Nzk3Cittc2dpZCAidG9vIG1hbnkgYXJndW1lbnRzIHRvIHNldCBuZXcgdXBzdHJlYW0iCittc2dzdHIgIueCuuioreWumuaWsOS4iua4uOaPkOS+m+S6huWkquWkmueahOWPg+aVuCIKKworIzogYnVpbHRpbi9icmFuY2guYzo4MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvdWxkIG5vdCBzZXQgdXBzdHJlYW0gb2YgSEVBRCB0byAlcyB3aGVuIGl0IGRvZXMgbm90IHBvaW50IHRvIGFueSBicmFuY2guIgorbXNnc3RyICLnhKHms5XoqK3lrpogSEVBRCDnmoTkuIrmuLjngrogJXPvvIzlm6DngrogSEVBRCDmspLmnInmjIflkJHku7vkvZXliIbmlK/jgIIiCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODA0IGJ1aWx0aW4vYnJhbmNoLmM6ODI3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggYnJhbmNoICclcyciCittc2dzdHIgIuaykuacieatpOWIhuaUryAnJXMnIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjgwOAorIywgYy1mb3JtYXQKK21zZ2lkICJicmFuY2ggJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAi5YiG5pSvICclcycg5LiN5a2Y5ZyoIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjgyMQorbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyB0byB1bnNldCB1cHN0cmVhbSIKK21zZ3N0ciAi54K65Y+W5raI5LiK5ri46Kit5a6a5YuV5L2c5o+Q5L6b5LqG5aSq5aSa55qE5Y+D5pW4IgorCisjOiBidWlsdGluL2JyYW5jaC5jOjgyNQorbXNnaWQgImNvdWxkIG5vdCB1bnNldCB1cHN0cmVhbSBvZiBIRUFEIHdoZW4gaXQgZG9lcyBub3QgcG9pbnQgdG8gYW55IGJyYW5jaC4iCittc2dzdHIgIueEoeazleWPlua2iCBIRUFEIOeahOS4iua4uOioreWumuWboOeCuuWug+aykuacieaMh+WQkeS4gOWAi+WIhuaUryIKKworIzogYnVpbHRpbi9icmFuY2guYzo4MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQnJhbmNoICclcycgaGFzIG5vIHVwc3RyZWFtIGluZm9ybWF0aW9uIgorbXNnc3RyICLliIbmlK8gJyVzJyDmspLmnInkuIrmuLjoqIrmga8iCisKKyM6IGJ1aWx0aW4vYnJhbmNoLmM6ODQxCittc2dpZCAiIgorIlRoZSAtYSwgYW5kIC1yLCBvcHRpb25zIHRvICdnaXQgYnJhbmNoJyBkbyBub3QgdGFrZSBhIGJyYW5jaCBuYW1lLlxuIgorIkRpZCB5b3UgbWVhbiB0byB1c2U6IC1hfC1yIC0tbGlzdCA8cGF0dGVybj4/IgorbXNnc3RyICIiCisiJ2dpdCBicmFuY2gnIOeahCAtYSDlkowgLXIg6YG46aCF5LiN5bi25LiA5YCL5YiG5pSv5ZCN44CCXG4iCisi5oKo5piv5ZCm5oOz6KaB5L2/55So77yaLWF8LXIgLS1saXN0IDzmqKHlvI8+77yfIgorCisjOiBidWlsdGluL2JyYW5jaC5jOjg0NQorbXNnaWQgIiIKKyJ0aGUgJy0tc2V0LXVwc3RyZWFtJyBvcHRpb24gaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZC4gUGxlYXNlIHVzZSAnLS10cmFjaycgb3IgIgorIictLXNldC11cHN0cmVhbS10bycgaW5zdGVhZC4iCittc2dzdHIgIiIKKyLkuI3lho3mlK/mj7TpgbjpoIUgJy0tc2V0LXVwc3RyZWFtJ+OAguiri+S9v+eUqCAnLS10cmFjaycg5oiWICctLXNldC11cHN0cmVhbS10byfjgIIiCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTUgYnVpbHRpbi9idW5kbGUuYzoyMworbXNnaWQgImdpdCBidW5kbGUgY3JlYXRlIFs8b3B0aW9ucz5dIDxmaWxlPiA8Z2l0LXJldi1saXN0IGFyZ3M+IgorbXNnc3RyICJnaXQgYnVuZGxlIGNyZWF0ZSBbPOmBuOmghT5dIDzmqpTmoYg+IDxnaXQtcmV2LWxpc3Qg5Y+D5pW4PiIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxNiBidWlsdGluL2J1bmRsZS5jOjI4Cittc2dpZCAiZ2l0IGJ1bmRsZSB2ZXJpZnkgWzxvcHRpb25zPl0gPGZpbGU+IgorbXNnc3RyICJnaXQgYnVuZGxlIHZlcmlmeSBbPOmBuOmghT5dIDzmqpTmoYg+IgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE3IGJ1aWx0aW4vYnVuZGxlLmM6MzMKK21zZ2lkICJnaXQgYnVuZGxlIGxpc3QtaGVhZHMgPGZpbGU+IFs8cmVmbmFtZT4uLi5dIgorbXNnc3RyICJnaXQgYnVuZGxlIGxpc3QtaGVhZHMgPOaqlOahiD4gWzzlj4PogIPlkI3nqLE+Li4uXSIKKworIzogYnVpbHRpbi9idW5kbGUuYzoxOCBidWlsdGluL2J1bmRsZS5jOjM4Cittc2dpZCAiZ2l0IGJ1bmRsZSB1bmJ1bmRsZSA8ZmlsZT4gWzxyZWZuYW1lPi4uLl0iCittc2dzdHIgImdpdCBidW5kbGUgdW5idW5kbGUgPOaqlOahiD4gWzzlj4PogIPlkI3nqLE+Li4uXSIKKworIzogYnVpbHRpbi9idW5kbGUuYzo2NiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzUKK21zZ2lkICJkbyBub3Qgc2hvdyBwcm9ncmVzcyBtZXRlciIKK21zZ3N0ciAi5LiN6aGv56S66YCy5bqm6KGoIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjY4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM3NworbXNnaWQgInNob3cgcHJvZ3Jlc3MgbWV0ZXIiCittc2dzdHIgIumhr+ekuumAsuW6puihqCIKKworIzogYnVpbHRpbi9idW5kbGUuYzo3MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzNzkKK21zZ2lkICJzaG93IHByb2dyZXNzIG1ldGVyIGR1cmluZyBvYmplY3Qgd3JpdGluZyBwaGFzZSIKK21zZ3N0ciAi5Zyo54mp5Lu25a+r5YWl6ZqO5q616aGv56S66YCy5bqm6KGoIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjczIGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4MgorbXNnaWQgInNpbWlsYXIgdG8gLS1hbGwtcHJvZ3Jlc3Mgd2hlbiBwcm9ncmVzcyBtZXRlciBpcyBzaG93biIKK21zZ3N0ciAi55W26YCy5bqm6KGo6aGv56S65pmC6aGe5Ly85pa8IC0tYWxsLXByb2dyZXNzIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjkzCittc2dpZCAiTmVlZCBhIHJlcG9zaXRvcnkgdG8gY3JlYXRlIGEgYnVuZGxlLiIKK21zZ3N0ciAi6ZyA6KaB5LiA5YCL54mI5pys5bqr5L6G5bu656uL5YyF44CCIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjEwNAorbXNnaWQgImRvIG5vdCBzaG93IGJ1bmRsZSBkZXRhaWxzIgorbXNnc3RyICLkuI3poa/npLrljIUgKGJ1bmRsZSkg6Kmz57Sw6LOH6KiKIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjExOQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBva2F5XG4iCittc2dzdHIgIiVzIOWPr+S7pVxuIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE2MAorbXNnaWQgIk5lZWQgYSByZXBvc2l0b3J5IHRvIHVuYnVuZGxlLiIKK21zZ3N0ciAi6ZyA6KaB5LiA5YCL54mI5pys5bqr5L6G6Kej5YyF44CCIgorCisjOiBidWlsdGluL2J1bmRsZS5jOjE2OCBidWlsdGluL3JlbW90ZS5jOjE2ODYKK21zZ2lkICJiZSB2ZXJib3NlOyBtdXN0IGJlIHBsYWNlZCBiZWZvcmUgYSBzdWJjb21tYW5kIgorbXNnc3RyICLoqbPntLDovLjlh7rvvJvlv4XpoIjnva7mlrzlrZDmjIfku6TkuYvliY0iCisKKyM6IGJ1aWx0aW4vYnVuZGxlLmM6MTkwIGJ1aWx0aW4vcmVtb3RlLmM6MTcxNworIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIHN1YmNvbW1hbmQ6ICVzIgorbXNnc3RyICLmnKrnn6XlrZDmjIfku6TvvJolcyIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjU5NQorbXNnaWQgIiIKKyJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtIgorInAgfCA8dHlwZT4gfCAtLXRleHRjb252IHwgLS1maWx0ZXJzKSBbLS1wYXRoPTxwYXRoPl0gPG9iamVjdD4iCittc2dzdHIgIiIKKyJnaXQgY2F0LWZpbGUgKC10IFstLWFsbG93LXVua25vd24tdHlwZV0gfCAtcyBbLS1hbGxvdy11bmtub3duLXR5cGVdIHwgLWUgfCAtIgorInAgfCA86aGe5Z6LPiB8IC0tdGV4dGNvbnYgfCAtLWZpbHRlcnMpIFstLXBhdGg9POi3r+W+kT5dIDznianku7Y+IgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NTk2Cittc2dpZCAiIgorImdpdCBjYXQtZmlsZSAoLS1iYXRjaCB8IC0tYmF0Y2gtY2hlY2spIFstLWZvbGxvdy1zeW1saW5rc10gWy0tdGV4dGNvbnYgfCAtLSIKKyJmaWx0ZXJzXSIKK21zZ3N0ciAiIgorImdpdCBjYXQtZmlsZSAoLS1iYXRjaCB8IC0tYmF0Y2gtY2hlY2spIFstLWZvbGxvdy1zeW1saW5rc10gWy0tdGV4dGNvbnYgfCAtLSIKKyJmaWx0ZXJzXSIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjYxNworbXNnaWQgIm9ubHkgb25lIGJhdGNoIG9wdGlvbiBtYXkgYmUgc3BlY2lmaWVkIgorbXNnc3RyICLlj6rog73mjIflrprkuIDlgIvmibnmrKHomZXnkIbpgbjpoIUiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2MzUKK21zZ2lkICI8dHlwZT4gY2FuIGJlIG9uZSBvZjogYmxvYiwgdHJlZSwgY29tbWl0LCB0YWciCittc2dzdHIgIjzpoZ7lnos+IOWPr+S7peaYr+WFtuS4reS5i+S4gO+8mmJsb2LjgIF0cmVl44CBY29tbWl044CBdGFnIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM2Cittc2dpZCAic2hvdyBvYmplY3QgdHlwZSIKK21zZ3N0ciAi6aGv56S654mp5Lu26aGe5Z6LIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM3Cittc2dpZCAic2hvdyBvYmplY3Qgc2l6ZSIKK21zZ3N0ciAi6aGv56S654mp5Lu25aSn5bCPIgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjM5Cittc2dpZCAiZXhpdCB3aXRoIHplcm8gd2hlbiB0aGVyZSdzIG5vIGVycm9yIgorbXNnc3RyICLnlbbmspLmnInpjK/oqqTmmYLpm6LplovkuKbov5Tlm57pm7YiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDAKK21zZ2lkICJwcmV0dHktcHJpbnQgb2JqZWN0J3MgY29udGVudCIKK21zZ3N0ciAi576O6KeA5Zyw5YiX5Y2w54mp5Lu255qE5YWn5a65IgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjQyCittc2dpZCAiZm9yIGJsb2Igb2JqZWN0cywgcnVuIHRleHRjb252IG9uIG9iamVjdCdzIGNvbnRlbnQiCittc2dzdHIgIuWwjeaWvOizh+aWmeeJqeS7tu+8jOWwjeWFtuWFp+WuueWBmuaWh+Wtl+i9ieaPmyIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NAorbXNnaWQgImZvciBibG9iIG9iamVjdHMsIHJ1biBmaWx0ZXJzIG9uIG9iamVjdCdzIGNvbnRlbnQiCittc2dzdHIgIuWwjeaWvOizh+aWmeeJqeS7tu+8jOWwjeWFtuWFp+WuueWBmumBjua/viIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0NSBnaXQtc3VibW9kdWxlLnNoOjEwMDIKK21zZ2lkICJibG9iIgorbXNnc3RyICLos4fmlpnnianku7YiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDYKK21zZ2lkICJ1c2UgYSBzcGVjaWZpYyBwYXRoIGZvciAtLXRleHRjb252Ly0tZmlsdGVycyIKK21zZ3N0ciAi5bCN5pa8IC0tdGV4dGNvbnYvLS1maWx0ZXJzIOS9v+eUqOS4gOWAi+eJueWumueahOi3r+W+kSIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY0OAorbXNnaWQgImFsbG93IC1zIGFuZCAtdCB0byB3b3JrIHdpdGggYnJva2VuL2NvcnJ1cHQgb2JqZWN0cyIKK21zZ3N0ciAi5YWB6KixIC1zIOWSjCAtdCDlsI3mkI3lo57nmoTnianku7bnlJ/mlYgiCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NDkKK21zZ2lkICJidWZmZXIgLS1iYXRjaCBvdXRwdXQiCittc2dzdHIgIue3qeihnSAtLWJhdGNoIOeahOi8uOWHuiIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY1MQorbXNnaWQgInNob3cgaW5mbyBhbmQgY29udGVudCBvZiBvYmplY3RzIGZlZCBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAi6aGv56S65b6e5qiZ5rqW6Ly45YWl5o+Q5L6b55qE54mp5Lu255qE6KiK5oGv5ZKM5YWn5a65IgorCisjOiBidWlsdGluL2NhdC1maWxlLmM6NjU1Cittc2dpZCAic2hvdyBpbmZvIGFib3V0IG9iamVjdHMgZmVkIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICLpoa/npLrlvp7mqJnmupbovLjlhaXmj5DkvpvnmoTnianku7bnmoToqIrmga8iCisKKyM6IGJ1aWx0aW4vY2F0LWZpbGUuYzo2NTkKK21zZ2lkICJmb2xsb3cgaW4tdHJlZSBzeW1saW5rcyAodXNlZCB3aXRoIC0tYmF0Y2ggb3IgLS1iYXRjaC1jaGVjaykiCittc2dzdHIgIui3n+maqOaoueWFp+espuiZn+mAo+e1kO+8iOWSjCAtLWJhdGNoIOaIliAtLWJhdGNoLWNoZWNrIOWFseeUqO+8iSIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY2MQorbXNnaWQgInNob3cgYWxsIG9iamVjdHMgd2l0aCAtLWJhdGNoIG9yIC0tYmF0Y2gtY2hlY2siCittc2dzdHIgIuS9v+eUqCAtLWJhdGNoIOaIliAtLWJhdGNoLWNoZWNrIOWPg+aVuOmhr+ekuuaJgOacieeJqeS7tiIKKworIzogYnVpbHRpbi9jYXQtZmlsZS5jOjY2MworbXNnaWQgImRvIG5vdCBvcmRlciAtLWJhdGNoLWFsbC1vYmplY3RzIG91dHB1dCIKK21zZ3N0ciAi5LiN6KaB5bCNIC0tYmF0Y2gtYWxsLW9iamVjdHMg55qE6Ly45Ye65o6S5bqPIgorCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoxMworbXNnaWQgImdpdCBjaGVjay1hdHRyIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSBbLS1dIDxwYXRobmFtZT4uLi4iCittc2dzdHIgImdpdCBjaGVjay1hdHRyIFstYSB8IC0tYWxsIHwgPOWxrOaApz4uLi5dIFstLV0gPOi3r+W+keWQjT4uLi4iCisKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjE0Cittc2dpZCAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPGF0dHI+Li4uXSIKK21zZ3N0ciAiZ2l0IGNoZWNrLWF0dHIgLS1zdGRpbiBbLXpdIFstYSB8IC0tYWxsIHwgPOWxrOaApz4uLi5dIgorCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMQorbXNnaWQgInJlcG9ydCBhbGwgYXR0cmlidXRlcyBzZXQgb24gZmlsZSIKK21zZ3N0ciAi5aCx5ZGK6Kit5a6a5Zyo5qqU5qGI5LiK55qE5omA5pyJ5bGs5oCnIgorCisjOiBidWlsdGluL2NoZWNrLWF0dHIuYzoyMgorbXNnaWQgInVzZSAuZ2l0YXR0cmlidXRlcyBvbmx5IGZyb20gdGhlIGluZGV4IgorbXNnc3RyICLlj6rkvb/nlKjntKLlvJXkuK3nmoQgLmdpdGF0dHJpYnV0ZXMiCisKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjIzIGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjUgYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMgorbXNnaWQgInJlYWQgZmlsZSBuYW1lcyBmcm9tIHN0ZGluIgorbXNnc3RyICLlvp7mqJnmupbovLjlhaXoroDlh7rmqpTmoYjlkI0iCisKKyM6IGJ1aWx0aW4vY2hlY2stYXR0ci5jOjI1IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjcKK21zZ2lkICJ0ZXJtaW5hdGUgaW5wdXQgYW5kIG91dHB1dCByZWNvcmRzIGJ5IGEgTlVMIGNoYXJhY3RlciIKK21zZ3N0ciAi6Ly45YWl5ZKM6Ly45Ye655qE57SA6YyE5L2/55SoIE5VTCDlrZflhYPntYLntZAiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MjEgYnVpbHRpbi9jaGVja291dC5jOjE0NjQgYnVpbHRpbi9nYy5jOjUzNworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5OQorbXNnaWQgInN1cHByZXNzIHByb2dyZXNzIHJlcG9ydGluZyIKK21zZ3N0ciAi5LiN6aGv56S66YCy5bqm5aCx5ZGKIgorCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjI5Cittc2dpZCAic2hvdyBub24tbWF0Y2hpbmcgaW5wdXQgcGF0aHMiCittc2dzdHIgIumhr+ekuuacquespuWQiOeahOi8uOWFpei3r+W+kSIKKworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzozMQorbXNnaWQgImlnbm9yZSBpbmRleCB3aGVuIGNoZWNraW5nIgorbXNnc3RyICLmqqLmn6XmmYLlv73nlaXntKLlvJUiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTYzCittc2dpZCAiY2Fubm90IHNwZWNpZnkgcGF0aG5hbWVzIHdpdGggLS1zdGRpbiIKK21zZ3N0ciAi5LiN6IO95ZCM5pmC5oyH5a6a6Lev5b6R5Y+KIC0tc3RkaW4g5Y+D5pW4IgorCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE2NgorbXNnaWQgIi16IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLXN0ZGluIgorbXNnc3RyICIteiDpnIDopoHlkowgLS1zdGRpbiDlj4PmlbjlhbHnlKjmiY3mnInmhI/nvqkiCisKKyM6IGJ1aWx0aW4vY2hlY2staWdub3JlLmM6MTY4Cittc2dpZCAibm8gcGF0aCBzcGVjaWZpZWQiCittc2dzdHIgIuacquaMh+Wumui3r+W+kSIKKworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzIKK21zZ2lkICItLXF1aWV0IGlzIG9ubHkgdmFsaWQgd2l0aCBhIHNpbmdsZSBwYXRobmFtZSIKK21zZ3N0ciAi5Y+D5pW4IC0tcXVpZXQg5Y+q5Zyo5o+Q5L6b5LiA5YCL6Lev5b6R5ZCN5pmC5pyJ5pWIIgorCisjOiBidWlsdGluL2NoZWNrLWlnbm9yZS5jOjE3NAorbXNnaWQgImNhbm5vdCBoYXZlIGJvdGggLS1xdWlldCBhbmQgLS12ZXJib3NlIgorbXNnc3RyICLkuI3og73lkIzmmYLmj5DkvpsgLS1xdWlldCDlkowgLS12ZXJib3NlIOWPg+aVuCIKKworIzogYnVpbHRpbi9jaGVjay1pZ25vcmUuYzoxNzcKK21zZ2lkICItLW5vbi1tYXRjaGluZyBpcyBvbmx5IHZhbGlkIHdpdGggLS12ZXJib3NlIgorbXNnc3RyICItLW5vbi1tYXRjaGluZyDpgbjpoIXlj6rlnKjkvb/nlKggLS12ZXJib3NlIOaZguacieaViCIKKworIzogYnVpbHRpbi9jaGVjay1tYWlsbWFwLmM6OQorbXNnaWQgImdpdCBjaGVjay1tYWlsbWFwIFs8b3B0aW9ucz5dIDxjb250YWN0Pi4uLiIKK21zZ3N0ciAiZ2l0IGNoZWNrLW1haWxtYXAgWzzpgbjpoIU+XSA86IGv57mr5L2N5Z2APi4uLiIKKworIzogYnVpbHRpbi9jaGVjay1tYWlsbWFwLmM6MTQKK21zZ2lkICJhbHNvIHJlYWQgY29udGFjdHMgZnJvbSBzdGRpbiIKK21zZ3N0ciAi6YKE5b6e5qiZ5rqW6Ly45YWl6K6A5Y+W6IGv57mr5L2N5Z2AIgorCisjOiBidWlsdGluL2NoZWNrLW1haWxtYXAuYzoyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcGFyc2UgY29udGFjdDogJXMiCittc2dzdHIgIuS4jeiDveino+aekOiBr+e5q+S9jeWdgO+8miVzIgorCisjOiBidWlsdGluL2NoZWNrLW1haWxtYXAuYzo0OAorbXNnaWQgIm5vIGNvbnRhY3RzIHNwZWNpZmllZCIKK21zZ3N0ciAi5pyq5oyH5a6a6IGv57mr5L2N5Z2AIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTMxCittc2dpZCAiZ2l0IGNoZWNrb3V0LWluZGV4IFs8b3B0aW9ucz5dIFstLV0gWzxmaWxlPi4uLl0iCittc2dzdHIgImdpdCBjaGVja291dC1pbmRleCBbPOmBuOmghT5dIFstLV0gWzzmqpTmoYg+Li4uXSIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE0OAorbXNnaWQgInN0YWdlIHNob3VsZCBiZSBiZXR3ZWVuIDEgYW5kIDMgb3IgYWxsIgorbXNnc3RyICLntKLlvJXlgLzmh4noqbLlj5blgLwgMSDliLAgMyDmiJbogIUgYWxsIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY0Cittc2dpZCAiY2hlY2sgb3V0IGFsbCBmaWxlcyBpbiB0aGUgaW5kZXgiCittc2dzdHIgIuewveWHuue0ouW8leWNgOeahOaJgOacieaqlOahiCIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE2NQorbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBleGlzdGluZyBmaWxlcyIKK21zZ3N0ciAi5by35Yi26KaG6JOL54++5pyJ55qE5qqU5qGIIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY3Cittc2dpZCAibm8gd2FybmluZyBmb3IgZXhpc3RpbmcgZmlsZXMgYW5kIGZpbGVzIG5vdCBpbiBpbmRleCIKK21zZ3N0ciAi5a2Y5Zyo5oiW5LiN5Zyo57Si5byV5Lit55qE5qqU5qGI6YO95rKS5pyJ6K2m5ZGKIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTY5Cittc2dpZCAiZG9uJ3QgY2hlY2tvdXQgbmV3IGZpbGVzIgorbXNnc3RyICLkuI3nsL3lh7rmlrDmqpTmoYgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzEKK21zZ2lkICJ1cGRhdGUgc3RhdCBpbmZvcm1hdGlvbiBpbiB0aGUgaW5kZXggZmlsZSIKK21zZ3N0ciAi5pu05paw57Si5byV5Lit5qqU5qGI55qE54uA5oWL6KiK5oGvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LWluZGV4LmM6MTc1Cittc2dpZCAicmVhZCBsaXN0IG9mIHBhdGhzIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICLlvp7mqJnmupbovLjlhaXoroDlj5bot6/lvpHliJfooagiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQtaW5kZXguYzoxNzcKK21zZ2lkICJ3cml0ZSB0aGUgY29udGVudCB0byB0ZW1wb3JhcnkgZmlsZXMiCittc2dzdHIgIuWwh+WFp+WuueWvq+WFpeaaq+WtmOaqlCIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3OCBidWlsdGluL2NvbHVtbi5jOjMxCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwMworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTEgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MDkKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2NzIKK21zZ2lkICJzdHJpbmciCittc2dzdHIgIuWtl+S4siIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE3OQorbXNnaWQgIndoZW4gY3JlYXRpbmcgZmlsZXMsIHByZXBlbmQgPHN0cmluZz4iCittc2dzdHIgIuWcqOW7uueri+aqlOahiOaZgu+8jOWcqOWJjemdouWKoOS4iiA85a2X5LiyPiIKKworIzogYnVpbHRpbi9jaGVja291dC1pbmRleC5jOjE4MQorbXNnaWQgImNvcHkgb3V0IHRoZSBmaWxlcyBmcm9tIG5hbWVkIHN0YWdlIgorbXNnc3RyICLlvp7mjIflrprmmqvlrZjljYDkuK3mi7flh7rmqpTmoYgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozMQorbXNnaWQgImdpdCBjaGVja291dCBbPG9wdGlvbnM+XSA8YnJhbmNoPiIKK21zZ3N0ciAiZ2l0IGNoZWNrb3V0IFs86YG46aCFPl0gPOWIhuaUrz4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozMgorbXNnaWQgImdpdCBjaGVja291dCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIC0tIDxmaWxlPi4uLiIKK21zZ3N0ciAiZ2l0IGNoZWNrb3V0IFs86YG46aCFPl0gWzzliIbmlK8+XSAtLSA85qqU5qGIPi4uLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM3Cittc2dpZCAiZ2l0IHN3aXRjaCBbPG9wdGlvbnM+XSBbPGJyYW5jaD5dIgorbXNnc3RyICJnaXQgc3dpdGNoIFs86YG46aCFPl0gWzzliIbmlK8+XSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQyCittc2dpZCAiZ2l0IHJlc3RvcmUgWzxvcHRpb25zPl0gWy0tc291cmNlPTxicmFuY2g+XSA8ZmlsZT4uLi4iCittc2dzdHIgImdpdCByZXN0b3JlIFs86YG46aCFPl0gWy0tc291cmNlPTzliIbmlK8+XSA85qqU5qGIPi4uLiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3NSBidWlsdGluL2NoZWNrb3V0LmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG91ciB2ZXJzaW9uIgorbXNnc3RyICLot6/lvpEgJyVzJyDmspLmnInmiJHlgJHnmoTniYjmnKwiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzcgYnVpbHRpbi9jaGVja291dC5jOjIxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXRoICclcycgZG9lcyBub3QgaGF2ZSB0aGVpciB2ZXJzaW9uIgorbXNnc3RyICLot6/lvpEgJyVzJyDmspLmnInku5blgJHnmoTniYjmnKwiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGRvZXMgbm90IGhhdmUgYWxsIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKK21zZ3N0ciAi6Lev5b6RICclcycg5rKS5pyJ5YWo6YOo5b+F6ZyA55qE54mI5pysIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJyBkb2VzIG5vdCBoYXZlIG5lY2Vzc2FyeSB2ZXJzaW9ucyIKK21zZ3N0ciAi6Lev5b6RICclcycg5rKS5pyJ5b+F6ZyA55qE54mI5pysIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInBhdGggJyVzJzogY2Fubm90IG1lcmdlIgorbXNnc3RyICJwYXRoICclcyfvvJrnhKHms5XlkIjkvbUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoyNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGFkZCBtZXJnZSByZXN1bHQgZm9yICclcyciCittc2dzdHIgIueEoeazleeCuiAnJXMnIOaWsOWinuWQiOS9tee1kOaenCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJSZWNyZWF0ZWQgJWQgbWVyZ2UgY29uZmxpY3QiCittc2dpZF9wbHVyYWwgIlJlY3JlYXRlZCAlZCBtZXJnZSBjb25mbGljdHMiCittc2dzdHJbMF0gIumHjeaWsOW7uueri+S6hiAlZCDlgIvlkIjkvbXooZ3nqoEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzozODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRlZCAlZCBwYXRoIGZyb20gJXMiCittc2dpZF9wbHVyYWwgIlVwZGF0ZWQgJWQgcGF0aHMgZnJvbSAlcyIKK21zZ3N0clswXSAi5b6eICUyJHMg5pu05paw5LqGICUxJGQg5YCL6Lev5b6RIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6Mzg5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0ZWQgJWQgcGF0aCBmcm9tIHRoZSBpbmRleCIKK21zZ2lkX3BsdXJhbCAiVXBkYXRlZCAlZCBwYXRocyBmcm9tIHRoZSBpbmRleCIKK21zZ3N0clswXSAi5b6e57Si5byV5Y2A5pu05paw5LqGICVkIOWAi+i3r+W+kSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQxMiBidWlsdGluL2NoZWNrb3V0LmM6NDE1IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MTgKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgYmUgdXNlZCB3aXRoIHVwZGF0aW5nIHBhdGhzIgorbXNnc3RyICInJXMnIOS4jeiDveWcqOabtOaWsOi3r+W+keaZguS9v+eUqCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQyNSBidWlsdGluL2NoZWNrb3V0LmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKK21zZ3N0ciAiJyVzJyDkuI3og73lkowgJXMg5ZCM5pmC5L2/55SoIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCB1cGRhdGUgcGF0aHMgYW5kIHN3aXRjaCB0byBicmFuY2ggJyVzJyBhdCB0aGUgc2FtZSB0aW1lLiIKK21zZ3N0ciAi5LiN6IO95ZCM5pmC5pu05paw6Lev5b6R5Lim5YiH5o+b5Yiw5YiG5pSvJyVzJ+OAgiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICJuZWl0aGVyICclcycgb3IgJyVzJyBpcyBzcGVjaWZpZWQiCittc2dzdHIgIiclcycg5oiWICclcycg6YO95rKS5pyJ5oyH5a6aIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NDQwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbXVzdCBiZSB1c2VkIHdoZW4gJyVzJyBpcyBub3Qgc3BlY2lmaWVkIgorbXNnc3RyICLmnKrmjIflrpogJyUyJHMnIOaZgu+8jOW/hemgiOS9v+eUqCAnJTEkcyciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo0NDUgYnVpbHRpbi9jaGVja291dC5jOjQ1MAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG9yICclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAlcyIKK21zZ3N0ciAiJyVzJyDmiJYgJyVzJyDkuI3og73lkowgJXMg5LiA6LW35L2/55SoIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NTA5IGJ1aWx0aW4vY2hlY2tvdXQuYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aCAnJXMnIGlzIHVubWVyZ2VkIgorbXNnc3RyICLot6/lvpEgJyVzJyDmnKrlkIjkvbUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo2ODQgYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoxMDYKK21zZ2lkICJ5b3UgbmVlZCB0byByZXNvbHZlIHlvdXIgY3VycmVudCBpbmRleCBmaXJzdCIKK21zZ3N0ciAi5oKo6ZyA6KaB5YWI6Kej5rG655uu5YmN57Si5byV55qE6KGd56qBIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6NzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjYW5ub3QgY29udGludWUgd2l0aCBzdGFnZWQgY2hhbmdlcyBpbiB0aGUgZm9sbG93aW5nIGZpbGVzOlxuIgorIiVzIgorbXNnc3RyICIiCisi5LiN6IO957m857qM77yM5LiL5YiX5qqU5qGI5pyJ5pqr5a2Y55qE5L+u5pS577yaXG4iCisiJXMiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FuIG5vdCBkbyByZWZsb2cgZm9yICclcyc6ICVzXG4iCittc2dzdHIgIuS4jeiDveWwjSAnJXMnIOWft+ihjCByZWZsb2cg5YuV5L2c77yaJXNcbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjg3OQorbXNnaWQgIkhFQUQgaXMgbm93IGF0IgorbXNnc3RyICJIRUFEIOebruWJjeS9jeaWvCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjg4MyBidWlsdGluL2Nsb25lLmM6NzE3Cittc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSBIRUFEIgorbXNnc3RyICLkuI3og73mm7TmlrAgSEVBRCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjg4NworIywgYy1mb3JtYXQKK21zZ2lkICJSZXNldCBicmFuY2ggJyVzJ1xuIgorbXNnc3RyICLph43oqK3liIbmlK8gJyVzJ1xuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFscmVhZHkgb24gJyVzJ1xuIgorbXNnc3RyICLlt7LntpPkvY3mlrwgJyVzJ1xuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODk0CisjLCBjLWZvcm1hdAorbXNnaWQgIlN3aXRjaGVkIHRvIGFuZCByZXNldCBicmFuY2ggJyVzJ1xuIgorbXNnc3RyICLliIfmj5vkuKbph43oqK3liIbmlK8gJyVzJ1xuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6ODk2IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzIwCisjLCBjLWZvcm1hdAorbXNnaWQgIlN3aXRjaGVkIHRvIGEgbmV3IGJyYW5jaCAnJXMnXG4iCittc2dzdHIgIuWIh+aPm+WIsOS4gOWAi+aWsOWIhuaUryAnJXMnXG4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo4OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3dpdGNoZWQgdG8gYnJhbmNoICclcydcbiIKK21zZ3N0ciAi5YiH5o+b5Yiw5YiG5pSvICclcydcbiIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAuLi4gYW5kICVkIG1vcmUuXG4iCittc2dzdHIgIiAuLi4g5Y+K5YW25a6DICVkIOWAi+OAglxuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6OTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXYXJuaW5nOiB5b3UgYXJlIGxlYXZpbmcgJWQgY29tbWl0IGJlaGluZCwgbm90IGNvbm5lY3RlZCB0b1xuIgorImFueSBvZiB5b3VyIGJyYW5jaGVzOlxuIgorIlxuIgorIiVzXG4iCittc2dpZF9wbHVyYWwgIiIKKyJXYXJuaW5nOiB5b3UgYXJlIGxlYXZpbmcgJWQgY29tbWl0cyBiZWhpbmQsIG5vdCBjb25uZWN0ZWQgdG9cbiIKKyJhbnkgb2YgeW91ciBicmFuY2hlczpcbiIKKyJcbiIKKyIlc1xuIgorbXNnc3RyWzBdICIiCisi6K2m5ZGK77ya5oKo5q2j5Lif5LiLICVkIOWAi+aPkOS6pO+8jOacquWSjOS7u+S9leWIhuaUr+mXnOiBr++8mlxuIgorIlxuIgorIiVzXG4iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzo5NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIklmIHlvdSB3YW50IHRvIGtlZXAgaXQgYnkgY3JlYXRpbmcgYSBuZXcgYnJhbmNoLCB0aGlzIG1heSBiZSBhIGdvb2QgdGltZVxuIgorInRvIGRvIHNvIHdpdGg6XG4iCisiXG4iCisiIGdpdCBicmFuY2ggPG5ldy1icmFuY2gtbmFtZT4gJXNcbiIKKyJcbiIKK21zZ2lkX3BsdXJhbCAiIgorIklmIHlvdSB3YW50IHRvIGtlZXAgdGhlbSBieSBjcmVhdGluZyBhIG5ldyBicmFuY2gsIHRoaXMgbWF5IGJlIGEgZ29vZCB0aW1lXG4iCisidG8gZG8gc28gd2l0aDpcbiIKKyJcbiIKKyIgZ2l0IGJyYW5jaCA8bmV3LWJyYW5jaC1uYW1lPiAlc1xuIgorIlxuIgorbXNnc3RyWzBdICIiCisi5aaC5p6c5oKo5oOz6KaB6YCP6YGO5bu656uL5paw5YiG5pSv5YSy5a2Y5a6D77yM6YCZ5Y+v6IO95piv5LiA5YCL5aW95pmC5YCZ44CCXG4iCisi5aaC5LiL5YuV5L2c77yaXG4iCisiXG4iCisiIGdpdCBicmFuY2ggPOaWsOWIhuaUr+WQjT4gJXNcbiIKKyJcbiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEwMDkKK21zZ2lkICJpbnRlcm5hbCBlcnJvciBpbiByZXZpc2lvbiB3YWxrIgorbXNnc3RyICLlnKjniYjmnKzpgY3mrbfmmYLpgYfliLDlhafpg6jpjK/oqqQiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMDEzCittc2dpZCAiUHJldmlvdXMgSEVBRCBwb3NpdGlvbiB3YXMiCittc2dzdHIgIuS5i+WJjeeahCBIRUFEIOS9jee9ruaYryIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEwNTMgYnVpbHRpbi9jaGVja291dC5jOjEzMTUKK21zZ2lkICJZb3UgYXJlIG9uIGEgYnJhbmNoIHlldCB0byBiZSBib3JuIgorbXNnc3RyICLmgqjkvY3mlrzkuIDlgIvlsJrmnKrliJ3lp4vljJbnmoTliIbmlK8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyInJXMnIGNvdWxkIGJlIGJvdGggYSBsb2NhbCBmaWxlIGFuZCBhIHRyYWNraW5nIGJyYW5jaC5cbiIKKyJQbGVhc2UgdXNlIC0tIChhbmQgb3B0aW9uYWxseSAtLW5vLWd1ZXNzKSB0byBkaXNhbWJpZ3VhdGUiCittc2dzdHIgIiIKKyInJXMnIOaXouWPr+S7peaYr+S4gOWAi+acrOapn+aqlOahiO+8jOS5n+WPr+S7peaYr+S4gOWAi+i/vei5pOWIhuaUr+OAglxuIgorIuiri+S9v+eUqCAtLe+8iOWSjOWPr+mBuOeahCAtLW5vLWd1ZXNz77yJ5L6G5raI6Zmk5q2n576pIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTEzNQorbXNnaWQgIiIKKyJJZiB5b3UgbWVhbnQgdG8gY2hlY2sgb3V0IGEgcmVtb3RlIHRyYWNraW5nIGJyYW5jaCBvbiwgZS5nLiAnb3JpZ2luJyxcbiIKKyJ5b3UgY2FuIGRvIHNvIGJ5IGZ1bGx5IHF1YWxpZnlpbmcgdGhlIG5hbWUgd2l0aCB0aGUgLS10cmFjayBvcHRpb246XG4iCisiXG4iCisiICAgIGdpdCBjaGVja291dCAtLXRyYWNrIG9yaWdpbi88bmFtZT5cbiIKKyJcbiIKKyJJZiB5b3UnZCBsaWtlIHRvIGFsd2F5cyBoYXZlIGNoZWNrb3V0cyBvZiBhbiBhbWJpZ3VvdXMgPG5hbWU+IHByZWZlclxuIgorIm9uZSByZW1vdGUsIGUuZy4gdGhlICdvcmlnaW4nIHJlbW90ZSwgY29uc2lkZXIgc2V0dGluZ1xuIgorImNoZWNrb3V0LmRlZmF1bHRSZW1vdGU9b3JpZ2luIGluIHlvdXIgY29uZmlnLiIKK21zZ3N0ciAiIgorIuWmguaenOaCqOaDs+imgeewveWHuuS4gOWAi+mBoOerr+i/vei5pOWIhuaUr++8jOS+i+WmgiAnb3JpZ2luJ++8jOaCqOWPr+S7pVxuIgorIuS9v+eUqCAtLXRyYWNrIOmBuOmgheWvq+WHuuWFqOWQje+8mlxuIgorIlxuIgorIiAgICBnaXQgY2hlY2tvdXQgLS10cmFjayBvcmlnaW4vPG5hbWU+XG4iCisiXG4iCisi5aaC5p6c5oKo57i95piv5Zac5q2h5L2/55So5qih57OK55qE57Ch55+t5YiG5pSv5ZCNIDxuYW1lPu+8jOiAjOS4jeWWnOatoeWmgiAnb3JpZ2luJyDnmoTpgaDnq69cbiIKKyLniYjmnKzluqvlkI3vvIzlj6/ku6XlnKjoqK3lrprkuK3oqK3lrpogY2hlY2tvdXQuZGVmYXVsdFJlbW90ZT1vcmlnaW7jgIIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbWF0Y2hlZCBtdWx0aXBsZSAoJWQpIHJlbW90ZSB0cmFja2luZyBicmFuY2hlcyIKK21zZ3N0ciAiJyVzJyDnrKblkIjlpJrlgIsgKCVkKSDpgaDnq6/ov73ouaTliIbmlK8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjExCittc2dpZCAib25seSBvbmUgcmVmZXJlbmNlIGV4cGVjdGVkIgorbXNnc3RyICLpoJDmnJ/lj6rmnInkuIDlgIvlvJXnlKgiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9ubHkgb25lIHJlZmVyZW5jZSBleHBlY3RlZCwgJWQgZ2l2ZW4uIgorbXNnc3RyICLmh4nlj6rmnInkuIDlgIvlvJXnlKjvvIzljbvntablh7rkuoYgJWQg5YCLIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTI3NCBidWlsdGluL3dvcmt0cmVlLmM6MjgzIGJ1aWx0aW4vd29ya3RyZWUuYzo0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWZlcmVuY2U6ICVzIgorbXNnc3RyICLnhKHmlYjlvJXnlKjvvJolcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEyODcgYnVpbHRpbi9jaGVja291dC5jOjE2NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVmZXJlbmNlIGlzIG5vdCBhIHRyZWU6ICVzIgorbXNnc3RyICLlvJXnlKjkuI3mmK/kuIDlgIvmqLnvvJolcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCB0YWcgJyVzJyIKK21zZ3N0ciAi5pyf5pyb5LiA5YCL5YiG5pSv77yM5b6X5Yiw5qiZ57GkICclcyciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImEgYnJhbmNoIGlzIGV4cGVjdGVkLCBnb3QgcmVtb3RlIGJyYW5jaCAnJXMnIgorbXNnc3RyICLmnJ/mnJvkuIDlgIvliIbmlK/vvIzlvpfliLDpgaDnq6/liIbmlK8gJyVzJyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzMzcgYnVpbHRpbi9jaGVja291dC5jOjEzNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCAnJXMnIgorbXNnc3RyICLmnJ/mnJvkuIDlgIvliIbmlK/vvIzlvpfliLAgJyVzJyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYSBicmFuY2ggaXMgZXhwZWN0ZWQsIGdvdCBjb21taXQgJyVzJyIKK21zZ3N0ciAi5pyf5pyb5LiA5YCL5YiG5pSv77yM5b6X5Yiw5o+Q5LqkICclcyciCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzU2Cittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIG1lcmdpbmdcbiIKKyJDb25zaWRlciBcImdpdCBtZXJnZSAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyLkuI3og73lnKjlkIjkvbXmmYLliIfmj5vliIbmlK9cbiIKKyLogIPmha7kvb/nlKggXCJnaXQgbWVyZ2UgLS1xdWl0XCIg5oiWIFwiZ2l0IHdvcmt0cmVlIGFkZFwi44CCIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM2MAorbXNnaWQgIiIKKyJjYW5ub3Qgc3dpdGNoIGJyYW5jaCBpbiB0aGUgbWlkZGxlIG9mIGFuIGFtIHNlc3Npb25cbiIKKyJDb25zaWRlciBcImdpdCBhbSAtLXF1aXRcIiBvciBcImdpdCB3b3JrdHJlZSBhZGRcIi4iCittc2dzdHIgIiIKKyLkuI3og73lnKggYW0g5bel5L2c6ZqO5q615pyf6ZaT5YiH5o+b5YiG5pSvXG4iCisi6ICD5oWu5L2/55SoIFwiZ2l0IGFtIC0tcXVpdFwiIOaIliBcImdpdCB3b3JrdHJlZSBhZGRcIuOAgiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNjQKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgcmViYXNpbmdcbiIKKyJDb25zaWRlciBcImdpdCByZWJhc2UgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisi5LiN6IO95Zyo6YeN5a6a5Z+65bqV5pmC5YiH5o+b5YiG5pSvXG4iCisi6ICD5oWu5L2/55SoIFwiZ2l0IHJlYmFzZSAtLXF1aXRcIiDmiJYgXCJnaXQgd29ya3RyZWUgYWRkXCLjgIIiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxMzY4Cittc2dpZCAiIgorImNhbm5vdCBzd2l0Y2ggYnJhbmNoIHdoaWxlIGNoZXJyeS1waWNraW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgY2hlcnJ5LXBpY2sgLS1xdWl0XCIgb3IgXCJnaXQgd29ya3RyZWUgYWRkXCIuIgorbXNnc3RyICIiCisi5LiN6IO95Zyo5o+A6YG45pmC5YiH5o+b5YiG5pSvXG4iCisi6ICD5oWu5L2/55SoIFwiZ2l0IGNoZXJyeS1waWNrIC0tcXVpdFwiIOaIliBcImdpdCB3b3JrdHJlZSBhZGRcIuOAgiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzNzIKK21zZ2lkICIiCisiY2Fubm90IHN3aXRjaCBicmFuY2ggd2hpbGUgcmV2ZXJ0aW5nXG4iCisiQ29uc2lkZXIgXCJnaXQgcmV2ZXJ0IC0tcXVpdFwiIG9yIFwiZ2l0IHdvcmt0cmVlIGFkZFwiLiIKK21zZ3N0ciAiIgorIuS4jeiDveWcqOmChOWOn+aZguWIh+aPm+WIhuaUr1xuIgorIuiAg+aFruS9v+eUqCBcImdpdCByZXZlcnQgLS1xdWl0XCIg5oiWIFwiZ2l0IHdvcmt0cmVlIGFkZFwi44CCIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM3NgorbXNnaWQgInlvdSBhcmUgc3dpdGNoaW5nIGJyYW5jaCB3aGlsZSBiaXNlY3RpbmciCittc2dzdHIgIuaCqOWcqOWft+ihjOS6jOWIhuWwi+aJvuaZguWIh+aPm+WIhuaUryIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzODMKK21zZ2lkICJwYXRocyBjYW5ub3QgYmUgdXNlZCB3aXRoIHN3aXRjaGluZyBicmFuY2hlcyIKK21zZ3N0ciAi6Lev5b6R5LiN6IO95ZKM5YiH5o+b5YiG5pSv5ZCM5pmC5L2/55SoIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTM4NiBidWlsdGluL2NoZWNrb3V0LmM6MTM5MCBidWlsdGluL2NoZWNrb3V0LmM6MTM5NAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNhbm5vdCBiZSB1c2VkIHdpdGggc3dpdGNoaW5nIGJyYW5jaGVzIgorbXNnc3RyICInJXMnIOS4jeiDveWSjOWIh+aPm+WIhuaUr+WQjOaZguS9v+eUqCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjEzOTggYnVpbHRpbi9jaGVja291dC5jOjE0MDEgYnVpbHRpbi9jaGVja291dC5jOjE0MDQKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDA5IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY2Fubm90IGJlIHVzZWQgd2l0aCAnJXMnIgorbXNnc3RyICInJXMnIOS4jeiDveWSjCAnJXMnIOWQjOaZguS9v+eUqCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjYW5ub3QgdGFrZSA8c3RhcnQtcG9pbnQ+IgorbXNnc3RyICInJXMnIOS4jeW4tiA86LW35aeL6buePiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN3aXRjaCBicmFuY2ggdG8gYSBub24tY29tbWl0ICclcyciCittc2dzdHIgIuS4jeiDveWIh+aPm+WIhuaUr+WIsOS4gOWAi+mdnuaPkOS6pCAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQyNgorbXNnaWQgIm1pc3NpbmcgYnJhbmNoIG9yIGNvbW1pdCBhcmd1bWVudCIKK21zZ3N0ciAi57y65bCR5YiG5pSv5oiW5o+Q5Lqk5Y+D5pW4IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2OCBidWlsdGluL2Nsb25lLmM6OTEgYnVpbHRpbi9jb21taXQtZ3JhcGguYzo3MgorIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzUgYnVpbHRpbi9mZXRjaC5jOjE2NyBidWlsdGluL21lcmdlLmM6Mjg2CisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzoyNyBidWlsdGluL3B1bGwuYzoxMTggYnVpbHRpbi9wdXNoLmM6NTYzCisjOiBidWlsdGluL3NlbmQtcGFjay5jOjE3NAorbXNnaWQgImZvcmNlIHByb2dyZXNzIHJlcG9ydGluZyIKK21zZ3N0ciAi5by35Yi26aGv56S66YCy5bqm5aCx5ZGKIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ2OQorbXNnaWQgInBlcmZvcm0gYSAzLXdheSBtZXJnZSB3aXRoIHRoZSBuZXcgYnJhbmNoIgorbXNnc3RyICLlkozmlrDnmoTliIbmlK/ln7fooYzkuInmlrnlkIjkvbUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDcwIGJ1aWx0aW4vbG9nLmM6MTY5MCBwYXJzZS1vcHRpb25zLmg6MzIyCittc2dpZCAic3R5bGUiCittc2dzdHIgIumiqOagvCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0NzEKK21zZ2lkICJjb25mbGljdCBzdHlsZSAobWVyZ2Ugb3IgZGlmZjMpIgorbXNnc3RyICLooZ3nqoHovLjlh7rpoqjmoLzvvIhtZXJnZSDmiJYgZGlmZjPvvIkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDgzIGJ1aWx0aW4vd29ya3RyZWUuYzo0OTYKK21zZ2lkICJkZXRhY2ggSEVBRCBhdCBuYW1lZCBjb21taXQiCittc2dzdHIgIkhFQUQg5b6e5oyH5a6a55qE5o+Q5Lqk5YiG6ZuiIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTQ4NAorbXNnaWQgInNldCB1cHN0cmVhbSBpbmZvIGZvciBuZXcgYnJhbmNoIgorbXNnc3RyICLngrrmlrDnmoTliIbmlK/oqK3lrprkuIrmuLjoqIrmga8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg2Cittc2dpZCAiZm9yY2UgY2hlY2tvdXQgKHRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucykiCittc2dzdHIgIuW8t+WItuewveWHuu+8iOaNqOajhOacrOapn+S/ruaUue+8iSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0ODgKK21zZ2lkICJuZXctYnJhbmNoIgorbXNnc3RyICLmlrDliIbmlK8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDg4Cittc2dpZCAibmV3IHVucGFyZW50ZWQgYnJhbmNoIgorbXNnc3RyICLmlrDnmoTmspLmnInniLbmj5DkuqTnmoTliIbmlK8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNDkwIGJ1aWx0aW4vbWVyZ2UuYzoyODkKK21zZ2lkICJ1cGRhdGUgaWdub3JlZCBmaWxlcyAoZGVmYXVsdCkiCittc2dzdHIgIuabtOaWsOW/veeVpeeahOaqlOahiO+8iOmgkOiore+8iSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE0OTMKK21zZ2lkICJkbyBub3QgY2hlY2sgaWYgYW5vdGhlciB3b3JrdHJlZSBpcyBob2xkaW5nIHRoZSBnaXZlbiByZWYiCittc2dzdHIgIuS4jeaqouafpeaMh+WumueahOW8leeUqOaYr+WQpuiiq+WFtuS7luW3peS9nOWNgOaJgOWNoOeUqCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MDYKK21zZ2lkICJjaGVja291dCBvdXIgdmVyc2lvbiBmb3IgdW5tZXJnZWQgZmlsZXMiCittc2dzdHIgIuWwjeWwmuacquWQiOS9teeahOaqlOahiOewveWHuuaIkeWAkeeahOeJiOacrCIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE1MDkKK21zZ2lkICJjaGVja291dCB0aGVpciB2ZXJzaW9uIGZvciB1bm1lcmdlZCBmaWxlcyIKK21zZ3N0ciAi5bCN5bCa5pyq5ZCI5L2155qE5qqU5qGI57C95Ye65LuW5YCR55qE54mI5pysIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTUxMworbXNnaWQgImRvIG5vdCBsaW1pdCBwYXRoc3BlY3MgdG8gc3BhcnNlIGVudHJpZXMgb25seSIKK21zZ3N0ciAi5bCN6Lev5b6R5LiN5YGa56iA55aP57C95Ye655qE6ZmQ5Yi2IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTU2NQorbXNnaWQgIi1iLCAtQiBhbmQgLS1vcnBoYW4gYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLWLjgIEtQiDlkowgLS1vcnBoYW4g5piv5LqS5pal55qEIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTU2OAorbXNnaWQgIi1wIGFuZCAtLW92ZXJsYXkgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLXAg5ZKMIC0tb3ZlcmxheSDkupLmlqUiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNjA1Cittc2dpZCAiLS10cmFjayBuZWVkcyBhIGJyYW5jaCBuYW1lIgorbXNnc3RyICItLXRyYWNrIOmcgOimgeS4gOWAi+WIhuaUr+WQjSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2MTAKK21zZ2lkICJtaXNzaW5nIGJyYW5jaCBuYW1lOyB0cnkgLWIiCittc2dzdHIgIue8uuWwkeWIhuaUr+WQje+8jOWYl+ippiAtYiIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlc29sdmUgJXMiCittc2dzdHIgIueEoeazleino+aekCAlcyIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE2NTgKK21zZ2lkICJpbnZhbGlkIHBhdGggc3BlY2lmaWNhdGlvbiIKK21zZ3N0ciAi54Sh5pWI55qE6Lev5b6R6KaP5qC8IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY2NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIGNvbW1pdCBhbmQgYSBicmFuY2ggJyVzJyBjYW5ub3QgYmUgY3JlYXRlZCBmcm9tIGl0IgorbXNnc3RyICInJXMnIOS4jeaYr+S4gOWAi+aPkOS6pO+8jOS4jeiDveWfuuaWvOWug+W7uueri+WIhuaUryAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY2OQorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY2hlY2tvdXQ6IC0tZGV0YWNoIGRvZXMgbm90IHRha2UgYSBwYXRoIGFyZ3VtZW50ICclcyciCittc2dzdHIgImdpdCBjaGVja291dO+8mi0tZGV0YWNoIOS4jeiDveaOpeaUtui3r+W+keWPg+aVuCAnJXMnIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY3OAorbXNnaWQgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tZGV0YWNoIgorbXNnc3RyICItLXBhdGhzcGVjLWZyb20tZmlsZSDoiIcgLS1kZXRhY2gg5LiN55u45a65IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY4MSBidWlsdGluL3Jlc2V0LmM6MzI0IGJ1aWx0aW4vc3Rhc2guYzoxNTA2Cittc2dpZCAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1wYXRjaCIKK21zZ3N0ciAiLS1wYXRoc3BlYy1mcm9tLWZpbGUg6IiHIC0tcGF0Y2gg5LiN55u45a65IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY5MgorbXNnaWQgIiIKKyJnaXQgY2hlY2tvdXQ6IC0tb3Vycy8tLXRoZWlycywgLS1mb3JjZSBhbmQgLS1tZXJnZSBhcmUgaW5jb21wYXRpYmxlIHdoZW5cbiIKKyJjaGVja2luZyBvdXQgb2YgdGhlIGluZGV4LiIKK21zZ3N0ciAiIgorImdpdCBjaGVja291dO+8muWcqOW+nue0ouW8leewveWHuuaZgu+8jC0tb3Vycy8tLXRoZWlyc+OAgS0tZm9yY2Ug5ZKMIC0tbWVyZ2Ug5LiN55u45a6544CCIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTY5NworbXNnaWQgInlvdSBtdXN0IHNwZWNpZnkgcGF0aChzKSB0byByZXN0b3JlIgorbXNnc3RyICLmgqjlv4XpoIjmjIflrprkuIDlgIvopoHlvqnljp/nmoTot6/lvpEiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzIzIGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI1IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc0CisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc3NiBidWlsdGluL2Nsb25lLmM6MTIxIGJ1aWx0aW4vcmVtb3RlLmM6MTcwCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MiBidWlsdGluL3dvcmt0cmVlLmM6NDkyIGJ1aWx0aW4vd29ya3RyZWUuYzo0OTQKK21zZ2lkICJicmFuY2giCittc2dzdHIgIuWIhuaUryIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE3MjQKK21zZ2lkICJjcmVhdGUgYW5kIGNoZWNrb3V0IGEgbmV3IGJyYW5jaCIKK21zZ3N0ciAi5bu656uL5Lim57C95Ye65LiA5YCL5paw55qE5YiG5pSvIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyNgorbXNnaWQgImNyZWF0ZS9yZXNldCBhbmQgY2hlY2tvdXQgYSBicmFuY2giCittc2dzdHIgIuW7uueriy/ph43oqK3kuKbnsL3lh7rkuIDlgIvliIbmlK8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzI3Cittc2dpZCAiY3JlYXRlIHJlZmxvZyBmb3IgbmV3IGJyYW5jaCIKK21zZ3N0ciAi54K65paw55qE5YiG5pSv5bu656uL5byV55So5pel6KqMIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTcyOQorbXNnaWQgInNlY29uZCBndWVzcyAnZ2l0IGNoZWNrb3V0IDxuby1zdWNoLWJyYW5jaD4nIChkZWZhdWx0KSIKK21zZ3N0ciAi5LqM5qyh54yc5risICdnaXQgY2hlY2tvdXQgPOeEoeatpOWIhuaUrz4n77yI6aCQ6Kit77yJIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTczMAorbXNnaWQgInVzZSBvdmVybGF5IG1vZGUgKGRlZmF1bHQpIgorbXNnc3RyICLkvb/nlKjnlorliqDmqKHlvI/vvIjpoJDoqK3vvIkiCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc1Cittc2dpZCAiY3JlYXRlIGFuZCBzd2l0Y2ggdG8gYSBuZXcgYnJhbmNoIgorbXNnc3RyICLlu7rnq4vkuKbliIfmj5vkuIDlgIvmlrDliIbmlK8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc3Cittc2dpZCAiY3JlYXRlL3Jlc2V0IGFuZCBzd2l0Y2ggdG8gYSBicmFuY2giCittc2dzdHIgIuW7uueriy/ph43oqK3kuKbliIfmj5vkuIDlgIvliIbmlK8iCisKKyM6IGJ1aWx0aW4vY2hlY2tvdXQuYzoxNzc5Cittc2dpZCAic2Vjb25kIGd1ZXNzICdnaXQgc3dpdGNoIDxuby1zdWNoLWJyYW5jaD4nIgorbXNnc3RyICLkuozmrKHnjJzmuKwgJ2dpdCBzd2l0Y2ggPOeEoeatpOWIhuaUrz4nIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTc4MQorbXNnaWQgInRocm93IGF3YXkgbG9jYWwgbW9kaWZpY2F0aW9ucyIKK21zZ3N0ciAi5o2o5qOE5pys5qmf5L+u5pS5IgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxMworbXNnaWQgIndoaWNoIHRyZWUtaXNoIHRvIGNoZWNrb3V0IGZyb20iCittc2dzdHIgIuimgeewveWHuuWTquS4gOWAi+aouSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTUKK21zZ2lkICJyZXN0b3JlIHRoZSBpbmRleCIKK21zZ3N0ciAi5b6p5Y6f57Si5byVIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgxNworbXNnaWQgInJlc3RvcmUgdGhlIHdvcmtpbmcgdHJlZSAoZGVmYXVsdCkiCittc2dzdHIgIuW+qeWOn+W3peS9nOWNgO+8iOmgkOiore+8iSIKKworIzogYnVpbHRpbi9jaGVja291dC5jOjE4MTkKK21zZ2lkICJpZ25vcmUgdW5tZXJnZWQgZW50cmllcyIKK21zZ3N0ciAi5b+955Wl5pyq5ZCI5L215qKd55uuIgorCisjOiBidWlsdGluL2NoZWNrb3V0LmM6MTgyMAorbXNnaWQgInVzZSBvdmVybGF5IG1vZGUiCittc2dzdHIgIuS9v+eUqOeWiuWKoOaooeW8jyIKKworIzogYnVpbHRpbi9jbGVhbi5jOjI4Cittc2dpZCAiIgorImdpdCBjbGVhbiBbLWRdIFstZl0gWy1pXSBbLW5dIFstcV0gWy1lIDxwYXR0ZXJuPl0gWy14IHwgLVhdIFstLV0gPHBhdGhzPi4uLiIKK21zZ3N0ciAiIgorImdpdCBjbGVhbiBbLWRdIFstZl0gWy1pXSBbLW5dIFstcV0gWy1lIDzmqKHlvI8+XSBbLXggfCAtWF0gWy0tXSA86Lev5b6RPi4uLiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzXG4iCittc2dzdHIgIuato+WIqumZpCAlc1xuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlICVzXG4iCittc2dzdHIgIuWwh+WIqumZpCAlc1xuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBpbmcgcmVwb3NpdG9yeSAlc1xuIgorbXNnc3RyICLlv73nlaXniYjmnKzluqsgJXNcbiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHNraXAgcmVwb3NpdG9yeSAlc1xuIgorbXNnc3RyICLlsIflv73nlaXniYjmnKzluqsgJXNcbiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjM2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgJXMiCittc2dzdHIgIuWIqumZpCAlcyDlpLHmlZciCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzozNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgbHN0YXQgJXNcbiIKK21zZ3N0ciAi5LiN6IO95bCNICVzIOWRvOWPqyBsc3RhdFxuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzAxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQcm9tcHQgaGVscDpcbiIKKyIxICAgICAgICAgIC0gc2VsZWN0IGEgbnVtYmVyZWQgaXRlbVxuIgorImZvbyAgICAgICAgLSBzZWxlY3QgaXRlbSBiYXNlZCBvbiB1bmlxdWUgcHJlZml4XG4iCisiICAgICAgICAgICAtIChlbXB0eSkgc2VsZWN0IG5vdGhpbmdcbiIKK21zZ3N0ciAiIgorIuWNlOWKqe+8mlxuIgorIjEgICAgICAgICAgLSDpgI/pgY7nt6jomZ/pgbjmk4fkuIDlgIvpgbjpoIVcbiIKKyJmb28gICAgICAgIC0g6YCP6YGO5ZSv5LiA5YmN57a06YG45pOH5LiA5YCL6YG46aCFXG4iCisiICAgICAgICAgICAtIO+8iOepuu+8ieS7gOm6vOS5n+S4jemBuOaTh1xuIgorCisjOiBidWlsdGluL2NsZWFuLmM6MzA1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQcm9tcHQgaGVscDpcbiIKKyIxICAgICAgICAgIC0gc2VsZWN0IGEgc2luZ2xlIGl0ZW1cbiIKKyIzLTUgICAgICAgIC0gc2VsZWN0IGEgcmFuZ2Ugb2YgaXRlbXNcbiIKKyIyLTMsNi05ICAgIC0gc2VsZWN0IG11bHRpcGxlIHJhbmdlc1xuIgorImZvbyAgICAgICAgLSBzZWxlY3QgaXRlbSBiYXNlZCBvbiB1bmlxdWUgcHJlZml4XG4iCisiLS4uLiAgICAgICAtIHVuc2VsZWN0IHNwZWNpZmllZCBpdGVtc1xuIgorIiogICAgICAgICAgLSBjaG9vc2UgYWxsIGl0ZW1zXG4iCisiICAgICAgICAgICAtIChlbXB0eSkgZmluaXNoIHNlbGVjdGluZ1xuIgorbXNnc3RyICIiCisi5Y2U5Yqp77yaXG4iCisiMSAgICAgICAgICAtIOmBuOaTh+S4gOWAi+mBuOmghVxuIgorIjMtNSAgICAgICAgLSDpgbjmk4fkuIDlgIvnr4TlnI3lhafnmoTmiYDmnInpgbjpoIVcbiIKKyIyLTMsNi05ICAgIC0g6YG45pOH5aSa5YCL56+E5ZyN5YWn55qE5omA5pyJ6YG46aCFXG4iCisiZm9vICAgICAgICAtIOmAj+mBjuWUr+S4gOWJjee2tOmBuOaTh+S4gOWAi+mBuOmghVxuIgorIi0uLi4gICAgICAgLSDlj43pgbjnibnlrprnmoTpgbjpoIVcbiIKKyIqICAgICAgICAgIC0g6YG45pOH5omA5pyJ6YG46aCFXG4iCisiICAgICAgICAgICAtIO+8iOepuu+8iee1kOadn+mBuOaTh1xuIgorCisjOiBidWlsdGluL2NsZWFuLmM6NTIxIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NTcwCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjU3NQorIywgYy1mb3JtYXQsIHBlcmwtZm9ybWF0Cittc2dpZCAiSHVoICglcyk/XG4iCittc2dzdHIgIuWXr++8iCVz77yJ77yfXG4iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo2NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5wdXQgaWdub3JlIHBhdHRlcm5zPj4gIgorbXNnc3RyICLovLjlhaXnr4TmnKzku6XmjpLpmaTmop3nm64+PiAiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiV0FSTklORzogQ2Fubm90IGZpbmQgaXRlbXMgbWF0Y2hlZCBieTogJXMiCittc2dzdHIgIuitpuWRiu+8mueEoeazleaJvuWIsOWSjCAlcyDnrKblkIjnmoTmop3nm64iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo3MjEKK21zZ2lkICJTZWxlY3QgaXRlbXMgdG8gZGVsZXRlIgorbXNnc3RyICLpgbjmk4fopoHliKrpmaTnmoTmop3nm64iCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8ga2VlcCBbeS9OXSBhcyBpcworIzogYnVpbHRpbi9jbGVhbi5jOjc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmUgJXMgW3kvTl0/ICIKK21zZ3N0ciAi5Yiq6ZmkICVzIFt5L05d77yfIgorCisjOiBidWlsdGluL2NsZWFuLmM6Nzk1Cittc2dpZCAiIgorImNsZWFuICAgICAgICAgICAgICAgLSBzdGFydCBjbGVhbmluZ1xuIgorImZpbHRlciBieSBwYXR0ZXJuICAgLSBleGNsdWRlIGl0ZW1zIGZyb20gZGVsZXRpb25cbiIKKyJzZWxlY3QgYnkgbnVtYmVycyAgIC0gc2VsZWN0IGl0ZW1zIHRvIGJlIGRlbGV0ZWQgYnkgbnVtYmVyc1xuIgorImFzayBlYWNoICAgICAgICAgICAgLSBjb25maXJtIGVhY2ggZGVsZXRpb24gKGxpa2UgXCJybSAtaVwiKVxuIgorInF1aXQgICAgICAgICAgICAgICAgLSBzdG9wIGNsZWFuaW5nXG4iCisiaGVscCAgICAgICAgICAgICAgICAtIHRoaXMgc2NyZWVuXG4iCisiPyAgICAgICAgICAgICAgICAgICAtIGhlbHAgZm9yIHByb21wdCBzZWxlY3Rpb24iCittc2dzdHIgIiIKKyJjbGVhbiAgICAgICAgICAgICAgIC0g6ZaL5aeL5riF55CGXG4iCisiZmlsdGVyIGJ5IHBhdHRlcm4gICAtIOmAj+mBjuevhOacrOaOkumZpOimgeWIqumZpOeahOaineebrlxuIgorInNlbGVjdCBieSBudW1iZXJzICAgLSDpgI/pgY7mlbjlrZfpgbjmk4fopoHliKrpmaTnmoTmop3nm65cbiIKKyJhc2sgZWFjaCAgICAgICAgICAgIC0g6Yed5bCN5Yiq6Zmk6YCQ5LiA6Kmi5ZWP77yI5bCx5YOPIFwicm0gLWlcIu+8iVxuIgorInF1aXQgICAgICAgICAgICAgICAgLSDlgZzmraLliKrpmaTkuKbpm6LplotcbiIKKyJoZWxwICAgICAgICAgICAgICAgIC0g6aGv56S65pys5Y2U5YqpXG4iCisiPyAgICAgICAgICAgICAgICAgICAtIOmhr+ekuuWmguS9leWcqOaPkOekuuespuS4i+mBuOaTh+eahOWNlOWKqSIKKworIzogYnVpbHRpbi9jbGVhbi5jOjgzMQorbXNnaWQgIldvdWxkIHJlbW92ZSB0aGUgZm9sbG93aW5nIGl0ZW06IgorbXNnaWRfcGx1cmFsICJXb3VsZCByZW1vdmUgdGhlIGZvbGxvd2luZyBpdGVtczoiCittc2dzdHJbMF0gIuWwh+WIqumZpOWmguS4i+aineebru+8miIKKworIzogYnVpbHRpbi9jbGVhbi5jOjg0NworbXNnaWQgIk5vIG1vcmUgZmlsZXMgdG8gY2xlYW4sIGV4aXRpbmcuIgorbXNnc3RyICLmspLmnInopoHmuIXnkIbnmoTmqpTmoYjvvIzpm6LplovjgIIiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MDkKK21zZ2lkICJkbyBub3QgcHJpbnQgbmFtZXMgb2YgZmlsZXMgcmVtb3ZlZCIKK21zZ3N0ciAi5LiN5YiX5Y2w5Yiq6Zmk5qqU5qGI55qE5ZCN56ixIgorCisjOiBidWlsdGluL2NsZWFuLmM6OTExCittc2dpZCAiZm9yY2UiCittc2dzdHIgIuW8t+WItiIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkxMgorbXNnaWQgImludGVyYWN0aXZlIGNsZWFuaW5nIgorbXNnc3RyICLkupLli5XlvI/muIXpmaQiCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTQKK21zZ2lkICJyZW1vdmUgd2hvbGUgZGlyZWN0b3JpZXMiCittc2dzdHIgIuWIqumZpOaVtOWAi+ebrumMhCIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkxNSBidWlsdGluL2Rlc2NyaWJlLmM6NTYyIGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjQKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg4OSBidWlsdGluL2xvZy5jOjE3NyBidWlsdGluL2xvZy5jOjE3OQorIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NyBidWlsdGluL25hbWUtcmV2LmM6NTI2IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjgKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzkKK21zZ2lkICJwYXR0ZXJuIgorbXNnc3RyICLmqKHlvI8iCisKKyM6IGJ1aWx0aW4vY2xlYW4uYzo5MTYKK21zZ2lkICJhZGQgPHBhdHRlcm4+IHRvIGlnbm9yZSBydWxlcyIKK21zZ3N0ciAi5paw5aKeIDzmqKHlvI8+IOWIsOW/veeVpeimj+WJhyIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkxNworbXNnaWQgInJlbW92ZSBpZ25vcmVkIGZpbGVzLCB0b28iCittc2dzdHIgIuS5n+WIqumZpOW/veeVpeeahOaqlOahiCIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkxOQorbXNnaWQgInJlbW92ZSBvbmx5IGlnbm9yZWQgZmlsZXMiCittc2dzdHIgIuWPquWIqumZpOW/veeVpeeahOaqlOahiCIKKworIzogYnVpbHRpbi9jbGVhbi5jOjkzNworbXNnaWQgIi14IGFuZCAtWCBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKK21zZ3N0ciAiLXgg5ZKMIC1YIOS4jeiDveWQjOaZguS9v+eUqCIKKworIzogYnVpbHRpbi9jbGVhbi5jOjk0MQorbXNnaWQgIiIKKyJjbGVhbi5yZXF1aXJlRm9yY2Ugc2V0IHRvIHRydWUgYW5kIG5laXRoZXIgLWksIC1uLCBub3IgLWYgZ2l2ZW47IHJlZnVzaW5nIHRvICIKKyJjbGVhbiIKK21zZ3N0ciAiIgorImNsZWFuLnJlcXVpcmVGb3JjZSDoqK3lrprngrogdHJ1ZSDkuJTmnKrmj5DkvpsgLWnjgIEtbiDmiJYgLWYg6YG46aCF77yM5ouS57WV5Z+36KGM5riF55CG5YuV5L2cIgorCisjOiBidWlsdGluL2NsZWFuLmM6OTQ0Cittc2dpZCAiIgorImNsZWFuLnJlcXVpcmVGb3JjZSBkZWZhdWx0cyB0byB0cnVlIGFuZCBuZWl0aGVyIC1pLCAtbiwgbm9yIC1mIGdpdmVuOyAiCisicmVmdXNpbmcgdG8gY2xlYW4iCittc2dzdHIgIiIKKyJjbGVhbi5yZXF1aXJlRm9yY2Ug6aCQ6Kit54K6IHRydWUg5LiU5pyq5o+Q5L6bIC1p44CBLW4g5oiWIC1mIOmBuOmghe+8jOaLkue1leWft+ihjOa4heeQhuWLleS9nCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjQ1Cittc2dpZCAiZ2l0IGNsb25lIFs8b3B0aW9ucz5dIFstLV0gPHJlcG8+IFs8ZGlyPl0iCittc2dzdHIgImdpdCBjbG9uZSBbPOmBuOmghT5dIFstLV0gPOeJiOacrOW6qz4gWzzot6/lvpE+XSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjkzCittc2dpZCAiZG9uJ3QgY3JlYXRlIGEgY2hlY2tvdXQiCittc2dzdHIgIuS4jeW7uueri+S4gOWAi+ewveWHuiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk0IGJ1aWx0aW4vY2xvbmUuYzo5NiBidWlsdGluL2luaXQtZGIuYzo0ODkKK21zZ2lkICJjcmVhdGUgYSBiYXJlIHJlcG9zaXRvcnkiCittc2dzdHIgIuW7uueri+S4gOWAi+e0lOeJiOacrOW6qyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk4Cittc2dpZCAiY3JlYXRlIGEgbWlycm9yIHJlcG9zaXRvcnkgKGltcGxpZXMgYmFyZSkiCittc2dzdHIgIuW7uueri+S4gOWAi+mPoeWDj+eJiOacrOW6q++8iOS5n+aYr+e0lOeJiOacrOW6q++8iSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwMAorbXNnaWQgInRvIGNsb25lIGZyb20gYSBsb2NhbCByZXBvc2l0b3J5IgorbXNnc3RyICLlvp7mnKzmqZ/niYjmnKzluqvopIfoo70iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDIKK21zZ2lkICJkb24ndCB1c2UgbG9jYWwgaGFyZGxpbmtzLCBhbHdheXMgY29weSIKK21zZ3N0ciAi5LiN5L2/55So5pys5qmf56Gs6YCj57WQ77yM5aeL57WC6KSH6KO9IgorCisjOiBidWlsdGluL2Nsb25lLmM6MTA0Cittc2dpZCAic2V0dXAgYXMgc2hhcmVkIHJlcG9zaXRvcnkiCittc2dzdHIgIuioreWumueCuuWFseS6q+eJiOacrOW6qyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwNworbXNnaWQgInBhdGhzcGVjIgorbXNnc3RyICLot6/lvpHopo/moLwiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDcKK21zZ2lkICJpbml0aWFsaXplIHN1Ym1vZHVsZXMgaW4gdGhlIGNsb25lIgorbXNnc3RyICLlnKjopIfoo73mmYLliJ3lp4vljJblrZDmqKHntYQiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTAKK21zZ2lkICJudW1iZXIgb2Ygc3VibW9kdWxlcyBjbG9uZWQgaW4gcGFyYWxsZWwiCittc2dzdHIgIuS4pueZvOikh+ijveeahOWtkOaooee1hOeahOaVuOmHjyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExMSBidWlsdGluL2luaXQtZGIuYzo0ODYKK21zZ2lkICJ0ZW1wbGF0ZS1kaXJlY3RvcnkiCittc2dzdHIgIuevhOacrOebrumMhCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjExMiBidWlsdGluL2luaXQtZGIuYzo0ODcKK21zZ2lkICJkaXJlY3RvcnkgZnJvbSB3aGljaCB0ZW1wbGF0ZXMgd2lsbCBiZSB1c2VkIgorbXNnc3RyICLnr4TmnKznm67pjITlsIfooqvkvb/nlKgiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTQgYnVpbHRpbi9jbG9uZS5jOjExNiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwNworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTIKK21zZ2lkICJyZWZlcmVuY2UgcmVwb3NpdG9yeSIKK21zZ3N0ciAi5Y+D6ICD54mI5pys5bqrIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTE4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDA5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxNAorbXNnaWQgInVzZSAtLXJlZmVyZW5jZSBvbmx5IHdoaWxlIGNsb25pbmciCittc2dzdHIgIuWDheWcqOikh+ijveaZguWPg+iAgyAtLXJlZmVyZW5jZSDmjIflkJHnmoTmnKzmqZ/niYjmnKzluqsiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTkgYnVpbHRpbi9jb2x1bW4uYzoyNyBidWlsdGluL21lcmdlLWZpbGUuYzo0NgorIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQxIGJ1aWx0aW4vcmVwYWNrLmM6MzI3Cittc2dpZCAibmFtZSIKK21zZ3N0ciAi5ZCN56ixIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTIwCittc2dpZCAidXNlIDxuYW1lPiBpbnN0ZWFkIG9mICdvcmlnaW4nIHRvIHRyYWNrIHVwc3RyZWFtIgorbXNnc3RyICLkvb/nlKggPOWQjeeosT4g6ICM5LiN5pivICdvcmlnaW4nIOWOu+i/vei5pOS4iua4uCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEyMgorbXNnaWQgImNoZWNrb3V0IDxicmFuY2g+IGluc3RlYWQgb2YgdGhlIHJlbW90ZSdzIEhFQUQiCittc2dzdHIgIuewveWHuiA85YiG5pSvPiDogIzkuI3mmK/pgaDnq68gSEVBRCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEyNAorbXNnaWQgInBhdGggdG8gZ2l0LXVwbG9hZC1wYWNrIG9uIHRoZSByZW1vdGUiCittc2dzdHIgIumBoOerryBnaXQtdXBsb2FkLXBhY2sg6Lev5b6RIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI1IGJ1aWx0aW4vZmV0Y2guYzoxNjggYnVpbHRpbi9ncmVwLmM6ODI4CisjOiBidWlsdGluL3B1bGwuYzoyMDcKK21zZ2lkICJkZXB0aCIKK21zZ3N0ciAi5rex5bqmIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI2Cittc2dpZCAiY3JlYXRlIGEgc2hhbGxvdyBjbG9uZSBvZiB0aGF0IGRlcHRoIgorbXNnc3RyICLlu7rnq4vkuIDlgIvmjIflrprmt7HluqbnmoTmt7ropIfoo70iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjcgYnVpbHRpbi9mZXRjaC5jOjE3MCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzAKK21zZ2lkICJ0aW1lIgorbXNnc3RyICLmmYLplpMiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMjgKK21zZ2lkICJjcmVhdGUgYSBzaGFsbG93IGNsb25lIHNpbmNlIGEgc3BlY2lmaWMgdGltZSIKK21zZ3N0ciAi5b6e5LiA5YCL54m55a6a5pmC6ZaT5bu656uL5LiA5YCL5re66KSH6KO9IgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI5IGJ1aWx0aW4vZmV0Y2guYzoxNzIgYnVpbHRpbi9mZXRjaC5jOjE5NQorIzogYnVpbHRpbi9yZWJhc2UuYzoxNDgwCittc2dpZCAicmV2aXNpb24iCittc2dzdHIgIueJiOacrCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEzMCBidWlsdGluL2ZldGNoLmM6MTczCittc2dpZCAiZGVlcGVuIGhpc3Rvcnkgb2Ygc2hhbGxvdyBjbG9uZSwgZXhjbHVkaW5nIHJldiIKK21zZ3N0ciAi5rex5YyW5re66KSH6KO955qE5q235Y+y77yM6Zmk5LqG54m55a6a54mI5pysIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTMyIGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDE5CisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyOAorbXNnaWQgImNsb25lIG9ubHkgb25lIGJyYW5jaCwgSEVBRCBvciAtLWJyYW5jaCIKK21zZ3N0ciAi5Y+q6KSH6KO95LiA5YCL5YiG5pSv44CBSEVBRCDmiJYgLS1icmFuY2giCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzQKK21zZ2lkICJkb24ndCBjbG9uZSBhbnkgdGFncywgYW5kIG1ha2UgbGF0ZXIgZmV0Y2hlcyBub3QgdG8gZm9sbG93IHRoZW0iCittc2dzdHIgIuS4jeimgeikh+ijveS7u+S9leaomeexpO+8jOS4puS4lOW+jOe6jOWPluW+l+WLleS9nOS5n+S4jeS4i+i8ieWug+WAkSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEzNgorbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIGJlIHNoYWxsb3ciCittc2dzdHIgIuWtkOaooee1hOWwh+S7pea3uuS4i+i8ieaooeW8j+ikh+ijvSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEzNyBidWlsdGluL2luaXQtZGIuYzo0OTUKK21zZ2lkICJnaXRkaXIiCittc2dzdHIgImdpdOebrumMhCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEzOCBidWlsdGluL2luaXQtZGIuYzo0OTYKK21zZ2lkICJzZXBhcmF0ZSBnaXQgZGlyIGZyb20gd29ya2luZyB0cmVlIgorbXNnc3RyICJnaXTnm67pjITlkozlt6XkvZzljYDliIbpm6IiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMzkKK21zZ2lkICJrZXk9dmFsdWUiCittc2dzdHIgImtleT12YWx1ZSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0MAorbXNnaWQgInNldCBjb25maWcgaW5zaWRlIHRoZSBuZXcgcmVwb3NpdG9yeSIKK21zZ3N0ciAi5Zyo5paw54mI5pys5bqr5Lit6Kit5a6a6Kit5a6a6KiK5oGvIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTQyIGJ1aWx0aW4vZmV0Y2guYzoxOTAgYnVpbHRpbi9scy1yZW1vdGUuYzo3NgorIzogYnVpbHRpbi9wdXNoLmM6NTczIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTcyCittc2dpZCAic2VydmVyLXNwZWNpZmljIgorbXNnc3RyICJzZXJ2ZXItc3BlY2lmaWMiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNDIgYnVpbHRpbi9mZXRjaC5jOjE5MCBidWlsdGluL2xzLXJlbW90ZS5jOjc2CisjOiBidWlsdGluL3B1c2guYzo1NzMgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzMKK21zZ2lkICJvcHRpb24gdG8gdHJhbnNtaXQiCittc2dzdHIgIuWCs+i8uOmBuOmghSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0MyBidWlsdGluL2ZldGNoLmM6MTkxIGJ1aWx0aW4vcHVsbC5jOjIyMAorIzogYnVpbHRpbi9wdXNoLmM6NTc0Cittc2dpZCAidXNlIElQdjQgYWRkcmVzc2VzIG9ubHkiCittc2dzdHIgIuWPquS9v+eUqCBJUHY0IOS9jeWdgCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0NSBidWlsdGluL2ZldGNoLmM6MTkzIGJ1aWx0aW4vcHVsbC5jOjIyMworIzogYnVpbHRpbi9wdXNoLmM6NTc2Cittc2dpZCAidXNlIElQdjYgYWRkcmVzc2VzIG9ubHkiCittc2dzdHIgIuWPquS9v+eUqCBJUHY2IOS9jeWdgCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjE0OQorbXNnaWQgImFueSBjbG9uZWQgc3VibW9kdWxlcyB3aWxsIHVzZSB0aGVpciByZW1vdGUtdHJhY2tpbmcgYnJhbmNoIgorbXNnc3RyICLku7vkvZXopIfoo73nmoTlrZDmqKHntYTlsIfkvb/nlKjlroPlgJHnmoTpgaDnq6/ov73ouaTliIbmlK8iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxNTEKK21zZ2lkICJpbml0aWFsaXplIHNwYXJzZS1jaGVja291dCBmaWxlIHRvIGluY2x1ZGUgb25seSBmaWxlcyBhdCByb290IgorbXNnc3RyICLliJ3lp4vljJbnqIDnlo/nsL3lh7rmqpTmoYjvvIzlj6rljIXlkKvmoLnnm67pjITkuK3nmoTmqpTmoYgiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoyODcKK21zZ2lkICIiCisiTm8gZGlyZWN0b3J5IG5hbWUgY291bGQgYmUgZ3Vlc3NlZC5cbiIKKyJQbGVhc2Ugc3BlY2lmeSBhIGRpcmVjdG9yeSBvbiB0aGUgY29tbWFuZCBsaW5lIgorbXNnc3RyICIiCisi54Sh5rOV54yc5Yiw55uu6YyE5ZCN44CCXG4iCisi6KuL5Zyo5oyH5Luk5YiX5oyH5a6a5LiA5YCL55uu6YyEIgorCisjOiBidWlsdGluL2Nsb25lLmM6MzQwCisjLCBjLWZvcm1hdAorbXNnaWQgImluZm86IENvdWxkIG5vdCBhZGQgYWx0ZXJuYXRlIGZvciAnJXMnOiAlc1xuIgorbXNnc3RyICJpbmZvOiDkuI3og73ngrogJyVzJyDmlrDlop7kuIDlgIvlgpnnlKjvvJolc1xuIgorCisjOiBidWlsdGluL2Nsb25lLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGV4aXN0cyBhbmQgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICIlcyDlrZjlnKjkuJTkuI3mmK/kuIDlgIvnm67pjIQiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXJ0IGl0ZXJhdG9yIG92ZXIgJyVzJyIKK21zZ3N0ciAi54Sh5rOV5ZyoICclcycg5LiK5ZWf5YuV55aK5Luj5ZmoIgorCisjOiBidWlsdGluL2Nsb25lLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgbGluayAnJXMnIgorbXNnc3RyICLlu7rnq4vpgKPntZAgJyVzJyDlpLHmlZciCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNvcHkgZmlsZSB0byAnJXMnIgorbXNnc3RyICLopIfoo73mqpTmoYjoh7MgJyVzJyDlpLHmlZciCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGl0ZXJhdGUgb3ZlciAnJXMnIgorbXNnc3RyICLnhKHms5XlnKggJyVzJyDkuIrnlorku6MiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo0OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZS5cbiIKK21zZ3N0ciAi5a6M5oiQ44CCXG4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo1MDgKK21zZ2lkICIiCisiQ2xvbmUgc3VjY2VlZGVkLCBidXQgY2hlY2tvdXQgZmFpbGVkLlxuIgorIllvdSBjYW4gaW5zcGVjdCB3aGF0IHdhcyBjaGVja2VkIG91dCB3aXRoICdnaXQgc3RhdHVzJ1xuIgorImFuZCByZXRyeSB3aXRoICdnaXQgcmVzdG9yZSAtLXNvdXJjZT1IRUFEIDovJ1xuIgorbXNnc3RyICIiCisi6KSH6KO95oiQ5Yqf77yM5L2G5piv57C95Ye65aSx5pWX44CCXG4iCisi5oKo5Y+v5Lul6YCP6YGOICdnaXQgc3RhdHVzJyDmqqLmn6Xlk6rkupvlt7LooqvnsL3lh7rvvIznhLblvozkvb/nlKjmjIfku6RcbiIKKyInZ2l0IHJlc3RvcmUgLS1zb3VyY2U9SEVBRCA6Lycg6YeN6KmmXG4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGZpbmQgcmVtb3RlIGJyYW5jaCAlcyB0byBjbG9uZS4iCittc2dzdHIgIuS4jeiDveeZvOePvuimgeikh+ijveeahOmBoOerr+WIhuaUryAlc+OAgiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjcwNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdXBkYXRlICVzIgorbXNnc3RyICLkuI3og73mm7TmlrAgJXMiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo3NTMKK21zZ2lkICJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgIueEoeazleWIneWni+WMlueogOeWj+ewveWHuiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjc3NgorbXNnaWQgInJlbW90ZSBIRUFEIHJlZmVycyB0byBub25leGlzdGVudCByZWYsIHVuYWJsZSB0byBjaGVja291dC5cbiIKK21zZ3N0ciAi6YGg56uvIEhFQUQg5oyH5ZCR5LiA5YCL5LiN5a2Y5Zyo55qE5byV55So77yM54Sh5rOV57C95Ye644CCXG4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4MDcKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2tvdXQgd29ya2luZyB0cmVlIgorbXNnc3RyICLkuI3og73nsL3lh7rlt6XkvZzljYAiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo4NjIKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgcGFyYW1ldGVycyB0byBjb25maWcgZmlsZSIKK21zZ3N0ciAi54Sh5rOV5bCH5Y+D5pW45a+r5YWl6Kit5a6a5qqU5qGIIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTI1Cittc2dpZCAiY2Fubm90IHJlcGFjayB0byBjbGVhbiB1cCIKK21zZ3N0ciAi54Sh5rOV5Z+36KGMIHJlcGFjayDkvobmuIXnkIYiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5MjcKK21zZ2lkICJjYW5ub3QgdW5saW5rIHRlbXBvcmFyeSBhbHRlcm5hdGVzIGZpbGUiCittc2dzdHIgIueEoeazleWIqumZpOaaq+aZgueahCBhbHRlcm5hdGVzIOaqlOahiCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk2NSBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NTAKK21zZ2lkICJUb28gbWFueSBhcmd1bWVudHMuIgorbXNnc3RyICLlpKrlpJrlj4PmlbjjgIIiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzo5NjkKK21zZ2lkICJZb3UgbXVzdCBzcGVjaWZ5IGEgcmVwb3NpdG9yeSB0byBjbG9uZS4iCittc2dzdHIgIuaCqOW/hemgiOaMh+WumuS4gOWAi+eJiOacrOW6q+S+huikh+ijveOAgiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk4MgorIywgYy1mb3JtYXQKK21zZ2lkICItLWJhcmUgYW5kIC0tb3JpZ2luICVzIG9wdGlvbnMgYXJlIGluY29tcGF0aWJsZS4iCittc2dzdHIgIi0tYmFyZSDlkowgLS1vcmlnaW4gJXMg6YG46aCF5LiN55u45a6544CCIgorCisjOiBidWlsdGluL2Nsb25lLmM6OTg1Cittc2dpZCAiLS1iYXJlIGFuZCAtLXNlcGFyYXRlLWdpdC1kaXIgYXJlIGluY29tcGF0aWJsZS4iCittc2dzdHIgIi0tYmFyZSDlkowgLS1zZXBhcmF0ZS1naXQtZGlyIOmBuOmgheS4jeebuOWuueOAgiIKKworIzogYnVpbHRpbi9jbG9uZS5jOjk5OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZXBvc2l0b3J5ICclcycgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIueJiOacrOW6qyAnJXMnIOS4jeWtmOWcqCIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwMDQgYnVpbHRpbi9mZXRjaC5jOjE3OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVwdGggJXMgaXMgbm90IGEgcG9zaXRpdmUgbnVtYmVyIgorbXNnc3RyICLmt7HluqYgJXMg5LiN5piv5LiA5YCL5q2j5pW4IgorCisjOiBidWlsdGluL2Nsb25lLmM6MTAxNAorIywgYy1mb3JtYXQKK21zZ2lkICJkZXN0aW5hdGlvbiBwYXRoICclcycgYWxyZWFkeSBleGlzdHMgYW5kIGlzIG5vdCBhbiBlbXB0eSBkaXJlY3RvcnkuIgorbXNnc3RyICLnm67mqJnot6/lvpEgJyVzJyDlt7LntpPlrZjlnKjvvIzkuKbkuJTkuI3mmK/kuIDlgIvnqbrnm67pjITjgIIiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDI0CisjLCBjLWZvcm1hdAorbXNnaWQgIndvcmtpbmcgdHJlZSAnJXMnIGFscmVhZHkgZXhpc3RzLiIKK21zZ3N0ciAi5bel5L2c5Y2AICclcycg5bey57aT5a2Y5Zyo44CCIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTAzOSBidWlsdGluL2Nsb25lLmM6MTA2MCBidWlsdGluL2RpZmZ0b29sLmM6MjcxCisjOiBidWlsdGluL2xvZy5jOjE4NjYgYnVpbHRpbi93b3JrdHJlZS5jOjI5NSBidWlsdGluL3dvcmt0cmVlLmM6MzI3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgbGVhZGluZyBkaXJlY3RvcmllcyBvZiAnJXMnIgorbXNnc3RyICLkuI3og73ngrogJyVzJyDlu7rnq4vlhYjlsI7nm67pjIQiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgd29yayB0cmVlIGRpciAnJXMnIgorbXNnc3RyICLkuI3og73lu7rnq4vlt6XkvZzljYDnm67pjIQgJyVzJyIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEwNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvbmluZyBpbnRvIGJhcmUgcmVwb3NpdG9yeSAnJXMnLi4uXG4iCittc2dzdHIgIuikh+ijveWIsOe0lOeJiOacrOW6qyAnJXMnLi4uXG4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDY2CisjLCBjLWZvcm1hdAorbXNnaWQgIkNsb25pbmcgaW50byAnJXMnLi4uXG4iCittc2dzdHIgIuato+ikh+ijveWIsCAnJXMnLi4uXG4iCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMDkwCittc2dpZCAiIgorImNsb25lIC0tcmVjdXJzaXZlIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggYm90aCAtLXJlZmVyZW5jZSBhbmQgLS1yZWZlcmVuY2UtaWYtIgorImFibGUiCittc2dzdHIgImNsb25lIC0tcmVjdXJzaXZlIOWSjCAtLXJlZmVyZW5jZSDku6Xlj4ogLS1yZWZlcmVuY2UtaWYtYWJsZSDkuI3nm7jlrrkiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTU0Cittc2dpZCAiLS1kZXB0aCBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCittc2dzdHIgIi0tZGVwdGgg5Zyo5pys5qmf6KSH6KO95pmC6KKr5b+955Wl77yM6KuL5pS555SoIGZpbGU6Ly8g5Y2U5a6a44CCIgorCisjOiBidWlsdGluL2Nsb25lLmM6MTE1NgorbXNnaWQgIi0tc2hhbGxvdy1zaW5jZSBpcyBpZ25vcmVkIGluIGxvY2FsIGNsb25lczsgdXNlIGZpbGU6Ly8gaW5zdGVhZC4iCittc2dzdHIgIi0tc2hhbGxvdy1zaW5jZSDlnKjmnKzmqZ/opIfoo73mmYLooqvlv73nlaXvvIzoq4vmlLnnlKggZmlsZTovLyDljZTlrprjgIIiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTU4Cittc2dpZCAiLS1zaGFsbG93LWV4Y2x1ZGUgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgorbXNnc3RyICItLXNoYWxsb3ctZXhjbHVkZSDlnKjmnKzmqZ/opIfoo73mmYLooqvlv73nlaXvvIzoq4vmlLnnlKggZmlsZTovLyDljZTlrprjgIIiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTYwCittc2dpZCAiLS1maWx0ZXIgaXMgaWdub3JlZCBpbiBsb2NhbCBjbG9uZXM7IHVzZSBmaWxlOi8vIGluc3RlYWQuIgorbXNnc3RyICItLWZpbHRlciDlnKjmnKzmqZ/opIfoo73mmYLooqvlv73nlaXvvIzoq4vmlLnnlKggZmlsZTovLyDljZTlrprjgIIiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTYzCittc2dpZCAic291cmNlIHJlcG9zaXRvcnkgaXMgc2hhbGxvdywgaWdub3JpbmcgLS1sb2NhbCIKK21zZ3N0ciAi5rqQ54mI5pys5bqr5piv5re66KSH6KO977yM5b+955WlIC0tbG9jYWwiCisKKyM6IGJ1aWx0aW4vY2xvbmUuYzoxMTY4Cittc2dpZCAiLS1sb2NhbCBpcyBpZ25vcmVkIgorbXNnc3RyICItLWxvY2FsIOiiq+W/veeVpSIKKworIzogYnVpbHRpbi9jbG9uZS5jOjEyNDMgYnVpbHRpbi9jbG9uZS5jOjEyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3RlIGJyYW5jaCAlcyBub3QgZm91bmQgaW4gdXBzdHJlYW0gJXMiCittc2dzdHIgIumBoOerr+WIhuaUryAlcyDlnKjkuIrmuLggJXMg5pyq55m854++IgorCisjOiBidWlsdGluL2Nsb25lLmM6MTI1NAorbXNnaWQgIllvdSBhcHBlYXIgdG8gaGF2ZSBjbG9uZWQgYW4gZW1wdHkgcmVwb3NpdG9yeS4iCittc2dzdHIgIuaCqOS8vOS5juikh+ijveS6huS4gOWAi+epuueJiOacrOW6q+OAgiIKKworIzogYnVpbHRpbi9jb2x1bW4uYzoxMAorbXNnaWQgImdpdCBjb2x1bW4gWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCBjb2x1bW4gWzzpgbjpoIU+XSIKKworIzogYnVpbHRpbi9jb2x1bW4uYzoyNworbXNnaWQgImxvb2t1cCBjb25maWcgdmFycyIKK21zZ3N0ciAi5bCL5om+6Kit5a6a6K6K5pW4IgorCisjOiBidWlsdGluL2NvbHVtbi5jOjI4IGJ1aWx0aW4vY29sdW1uLmM6MjkKK21zZ2lkICJsYXlvdXQgdG8gdXNlIgorbXNnc3RyICLopoHkvb/nlKjnmoTphY3nva4iCisKKyM6IGJ1aWx0aW4vY29sdW1uLmM6MzAKK21zZ2lkICJNYXhpbXVtIHdpZHRoIgorbXNnc3RyICLmnIDlpKflr6zluqYiCisKKyM6IGJ1aWx0aW4vY29sdW1uLmM6MzEKK21zZ2lkICJQYWRkaW5nIHNwYWNlIG9uIGxlZnQgYm9yZGVyIgorbXNnc3RyICLlt6bpgormoYbnmoTloavlhYXnqbrplpMiCisKKyM6IGJ1aWx0aW4vY29sdW1uLmM6MzIKK21zZ2lkICJQYWRkaW5nIHNwYWNlIG9uIHJpZ2h0IGJvcmRlciIKK21zZ3N0ciAi5Y+z6YKK5qGG55qE5aGr5YWF56m66ZaTIgorCisjOiBidWlsdGluL2NvbHVtbi5jOjMzCittc2dpZCAiUGFkZGluZyBzcGFjZSBiZXR3ZWVuIGNvbHVtbnMiCittc2dzdHIgIuWFqeWIl+S5i+mWk+eahOWhq+WFheepuumWkyIKKworIzogYnVpbHRpbi9jb2x1bW4uYzo1MQorbXNnaWQgIi0tY29tbWFuZCBtdXN0IGJlIHRoZSBmaXJzdCBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kIOW/hemgiOaYr+esrOS4gOWAi+WPg+aVuCIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjE4Cittc2dpZCAiIgorImdpdCBjb21taXQtdHJlZSBbKC1wIDxwYXJlbnQ+KS4uLl0gWy1TWzxrZXlpZD5dXSBbKC1tIDxtZXNzYWdlPikuLi5dIFsoLUYgIgorIjxmaWxlPikuLi5dIDx0cmVlPiIKK21zZ3N0ciAiIgorImdpdCBjb21taXQtdHJlZSBbKC1wIDzniLbmj5DkuqQ+KS4uLl0gWy1TWzxrZXlpZD5dXSBbKC1tIDzmtojmga8+KS4uLl0gWygtRiA85qqU5qGIIgorIj4pLi4uXSA85qi5PiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjMxCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXJlbnQgJXMgaWdub3JlZCIKK21zZ3N0ciAi5b+955Wl6YeN6KSH55qE54i25o+Q5LqkICVzIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6NTYgYnVpbHRpbi9jb21taXQtdHJlZS5jOjEzNiBidWlsdGluL2xvZy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIKK21zZ3N0ciAi5LiN5piv5LiA5YCL5pyJ5pWI55qE54mp5Lu25ZCNICVzIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IGNvbW1pdC10cmVlOiBmYWlsZWQgdG8gb3BlbiAnJXMnIgorbXNnc3RyICJnaXQgY29tbWl0LXRyZWXvvJrnhKHms5XplovllZ8gJyVzJyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjk2CisjLCBjLWZvcm1hdAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQgJyVzJyIKK21zZ3N0ciAiZ2l0IGNvbW1pdC10cmVl77ya54Sh5rOV6K6A5Y+WICclcyciCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzo5OAorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgY29tbWl0LXRyZWU6IGZhaWxlZCB0byBjbG9zZSAnJXMnIgorbXNnc3RyICJnaXQgY29tbWl0LXRyZWXvvJrnhKHms5Xpl5zplokgJyVzJyIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjExMQorbXNnaWQgInBhcmVudCIKK21zZ3N0ciAi54i25o+Q5LqkIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTEyCittc2dpZCAiaWQgb2YgYSBwYXJlbnQgY29tbWl0IG9iamVjdCIKK21zZ3N0ciAi54i25o+Q5Lqk54mp5Lu2IElEIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE0IGJ1aWx0aW4vY29tbWl0LmM6MTUwMSBidWlsdGluL21lcmdlLmM6MjcxCisjOiBidWlsdGluL25vdGVzLmM6NDA5IGJ1aWx0aW4vbm90ZXMuYzo1NzUgYnVpbHRpbi9zdGFzaC5jOjE0NzcKKyM6IGJ1aWx0aW4vdGFnLmM6NDEyCittc2dpZCAibWVzc2FnZSIKK21zZ3N0ciAi6Kqq5piOIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTE1IGJ1aWx0aW4vY29tbWl0LmM6MTUwMQorbXNnaWQgImNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICLmj5DkuqToqqrmmI4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LXRyZWUuYzoxMTgKK21zZ2lkICJyZWFkIGNvbW1pdCBsb2cgbWVzc2FnZSBmcm9tIGZpbGUiCittc2dzdHIgIuW+nuaqlOahiOS4reiugOWPluaPkOS6pOiqquaYjiIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjEyMSBidWlsdGluL2NvbW1pdC5jOjE1MTMgYnVpbHRpbi9tZXJnZS5jOjI4OAorIzogYnVpbHRpbi9wdWxsLmM6MTc1IGJ1aWx0aW4vcmV2ZXJ0LmM6MTE4Cittc2dpZCAiR1BHIHNpZ24gY29tbWl0IgorbXNnc3RyICJHUEcg5o+Q5Lqk57C95ZCNIgorCisjOiBidWlsdGluL2NvbW1pdC10cmVlLmM6MTMzCittc2dpZCAibXVzdCBnaXZlIGV4YWN0bHkgb25lIHRyZWUiCittc2dzdHIgIuW/hemgiOeyvueiuuWcsOaPkOS+m+S4gOWAi+aouSIKKworIzogYnVpbHRpbi9jb21taXQtdHJlZS5jOjE0MAorbXNnaWQgImdpdCBjb21taXQtdHJlZTogZmFpbGVkIHRvIHJlYWQiCittc2dzdHIgImdpdCBjb21taXQtdHJlZe+8muiugOWPluWkseaVlyIKKworIzogYnVpbHRpbi9jb21taXQuYzo0MQorbXNnaWQgImdpdCBjb21taXQgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgorbXNnc3RyICJnaXQgY29tbWl0IFs86YG46aCFPl0gWy0tXSA86Lev5b6R6KaP5qC8Pi4uLiIKKworIzogYnVpbHRpbi9jb21taXQuYzo0NgorbXNnaWQgImdpdCBzdGF0dXMgWzxvcHRpb25zPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgorbXNnc3RyICJnaXQgc3RhdHVzIFs86YG46aCFPl0gWy0tXSA86Lev5b6R6KaP5qC8Pi4uLiIKKworIzogYnVpbHRpbi9jb21taXQuYzo1MQorbXNnaWQgIiIKKyJZb3UgYXNrZWQgdG8gYW1lbmQgdGhlIG1vc3QgcmVjZW50IGNvbW1pdCwgYnV0IGRvaW5nIHNvIHdvdWxkIG1ha2VcbiIKKyJpdCBlbXB0eS4gWW91IGNhbiByZXBlYXQgeW91ciBjb21tYW5kIHdpdGggLS1hbGxvdy1lbXB0eSwgb3IgeW91IGNhblxuIgorInJlbW92ZSB0aGUgY29tbWl0IGVudGlyZWx5IHdpdGggXCJnaXQgcmVzZXQgSEVBRF5cIi5cbiIKK21zZ3N0ciAiIgorIuaCqOimgeS/ruijnOacgOi/keeahOaPkOS6pO+8jOS9humAmem6vOWBmuacg+iuk+Wug+aIkOeCuuepuuaPkOS6pOOAguaCqOWPr+S7pemHjeikh+aCqOeahOaMh+S7pOS4puW4tuS4ilxuIgorIi0tYWxsb3ctZW1wdHkg6YG46aCF77yM5oiW6ICF5oKo5Y+v55So5oyH5LukIFwiZ2l0IHJlc2V0IEhFQUReXCIg5pW05YCL5Yiq6Zmk6Kmy5o+Q5Lqk44CCXG4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTYKK21zZ2lkICIiCisiVGhlIHByZXZpb3VzIGNoZXJyeS1waWNrIGlzIG5vdyBlbXB0eSwgcG9zc2libHkgZHVlIHRvIGNvbmZsaWN0IHJlc29sdXRpb24uXG4iCisiSWYgeW91IHdpc2ggdG8gY29tbWl0IGl0IGFueXdheSwgdXNlOlxuIgorIlxuIgorIiAgICBnaXQgY29tbWl0IC0tYWxsb3ctZW1wdHlcbiIKKyJcbiIKK21zZ3N0ciAiIgorIuS5i+WJjeeahOaPgOmBuOWLleS9nOePvuWcqOaYr+S4gOWAi+epuuaPkOS6pO+8jOWPr+iDveaYr+eUseihneeqgeino+axuuWwjuiHtOeahOOAguWmguaenOaCqOeEoeirluWmguS9lVxuIgorIuS5n+imgeaPkOS6pO+8jOS9v+eUqOaMh+S7pO+8mlxuIgorIlxuIgorIiAgICBnaXQgY29tbWl0IC0tYWxsb3ctZW1wdHlcbiIKKyJcbiIKKworIzogYnVpbHRpbi9jb21taXQuYzo2MworbXNnaWQgIk90aGVyd2lzZSwgcGxlYXNlIHVzZSAnZ2l0IGNoZXJyeS1waWNrIC0tc2tpcCdcbiIKK21zZ3N0ciAi5ZCm5YmH77yM6KuL5L2/55SoICdnaXQgY2hlcnJ5LXBpY2sgLS1za2lwJ1xuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjY2Cittc2dpZCAiIgorImFuZCB0aGVuIHVzZTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcbiIKKyJcbiIKKyJ0byByZXN1bWUgY2hlcnJ5LXBpY2tpbmcgdGhlIHJlbWFpbmluZyBjb21taXRzLlxuIgorIklmIHlvdSB3aXNoIHRvIHNraXAgdGhpcyBjb21taXQsIHVzZTpcbiIKKyJcbiIKKyIgICAgZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFxuIgorIlxuIgorbXNnc3RyICIiCisi54S25b6M5L2/55So77yaXG4iCisiXG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXG4iCisiXG4iCisi5L6G57m857qM5o+A6YG45Ymp6aSY5o+Q5Lqk44CC5aaC5p6c5oKo5oOz6Lez6YGO5q2k5o+Q5Lqk77yM5L2/55So77yaXG4iCisiXG4iCisiICAgIGdpdCBjaGVycnktcGljayAtLXNraXBcbiIKKyJcbiIKKworIzogYnVpbHRpbi9jb21taXQuYzozMTUKK21zZ2lkICJmYWlsZWQgdG8gdW5wYWNrIEhFQUQgdHJlZSBvYmplY3QiCittc2dzdHIgIuino+WMhSBIRUFEIOaoueeLgOeJqeS7tuWkseaVlyIKKworIzogYnVpbHRpbi9jb21taXQuYzozNTEKK21zZ2lkICItLXBhdGhzcGVjLWZyb20tZmlsZSB3aXRoIC1hIGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgIi0tcGF0aHNwZWMtZnJvbS1maWxlIOWSjCAtYSDlkIzmmYLkvb/nlKjmspLmnInmhI/nvqkiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MzY0Cittc2dpZCAiTm8gcGF0aHMgd2l0aCAtLWluY2x1ZGUvLS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UuIgorbXNnc3RyICLlj4PmlbggLS1pbmNsdWRlLy0tb25seSDkuI3ot5/ot6/lvpHmspLmnInmhI/nvqnjgIIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Mzc2Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgaW5kZXgiCittc2dzdHIgIuS4jeiDveW7uueri+aaq+aZgue0ouW8lSIKKworIzogYnVpbHRpbi9jb21taXQuYzozODUKK21zZ2lkICJpbnRlcmFjdGl2ZSBhZGQgZmFpbGVkIgorbXNnc3RyICLkupLli5XlvI/mlrDlop7lpLHmlZciCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDAwCittc2dpZCAidW5hYmxlIHRvIHVwZGF0ZSB0ZW1wb3JhcnkgaW5kZXgiCittc2dzdHIgIueEoeazleabtOaWsOaaq+aZgue0ouW8lSIKKworIzogYnVpbHRpbi9jb21taXQuYzo0MDIKK21zZ2lkICJGYWlsZWQgdG8gdXBkYXRlIG1haW4gY2FjaGUgdHJlZSIKK21zZ3N0ciAi5LiN6IO95pu05paw5qi555qE5Li75b+r5Y+WIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjQyNyBidWlsdGluL2NvbW1pdC5jOjQ1MCBidWlsdGluL2NvbW1pdC5jOjQ5NgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXdfaW5kZXggZmlsZSIKK21zZ3N0ciAi54Sh5rOV5a+rIG5ld19pbmRleCDmqpTmoYgiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDc5Cittc2dpZCAiY2Fubm90IGRvIGEgcGFydGlhbCBjb21taXQgZHVyaW5nIGEgbWVyZ2UuIgorbXNnc3RyICLlnKjlkIjkvbXpgY7nqIvkuK3kuI3og73lgZrpg6jliIbmj5DkuqTjgIIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDgxCittc2dpZCAiY2Fubm90IGRvIGEgcGFydGlhbCBjb21taXQgZHVyaW5nIGEgY2hlcnJ5LXBpY2suIgorbXNnc3RyICLlnKjmj4DpgbjpgY7nqIvkuK3kuI3og73lgZrpg6jliIbmj5DkuqTjgIIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NDg5Cittc2dpZCAiY2Fubm90IHJlYWQgdGhlIGluZGV4IgorbXNnc3RyICLnhKHms5XoroDlj5bntKLlvJUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NTA4Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRlbXBvcmFyeSBpbmRleCBmaWxlIgorbXNnc3RyICLnhKHms5Xlr6vmmqvmmYLntKLlvJXmqpTmoYgiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjA2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbW1pdCAnJXMnIGxhY2tzIGF1dGhvciBoZWFkZXIiCittc2dzdHIgIuaPkOS6pCAnJXMnIOe8uuWwkeS9nOiAheioiuaBryIKKworIzogYnVpbHRpbi9jb21taXQuYzo2MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0ICclcycgaGFzIG1hbGZvcm1lZCBhdXRob3IgbGluZSIKK21zZ3N0ciAi5o+Q5LqkICclcycg5pyJ5qC85byP6Yyv6Kqk55qE5L2c6ICF6KiK5oGvIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjYyNworbXNnaWQgIm1hbGZvcm1lZCAtLWF1dGhvciBwYXJhbWV0ZXIiCittc2dzdHIgIuagvOW8j+mMr+iqpOeahCAtLWF1dGhvciDlj4PmlbgiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NjgwCittc2dpZCAiIgorInVuYWJsZSB0byBzZWxlY3QgYSBjb21tZW50IGNoYXJhY3RlciB0aGF0IGlzIG5vdCB1c2VkXG4iCisiaW4gdGhlIGN1cnJlbnQgY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIueEoeazlemBuOaTh+S4gOWAi+acquiiq+ebruWJjeaPkOS6pOiqquaYjuS9v+eUqOeahOWCmeiou+Wtl+WFgyIKKworIzogYnVpbHRpbi9jb21taXQuYzo3MTggYnVpbHRpbi9jb21taXQuYzo3NTEgYnVpbHRpbi9jb21taXQuYzoxMDk3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBsb29rdXAgY29tbWl0ICVzIgorbXNnc3RyICLkuI3og73mn6XoqaLmj5DkuqQgJXMiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzMwIGJ1aWx0aW4vc2hvcnRsb2cuYzozMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiKHJlYWRpbmcgbG9nIG1lc3NhZ2UgZnJvbSBzdGFuZGFyZCBpbnB1dClcbiIKK21zZ3N0ciAi77yI5q2j5b6e5qiZ5rqW6Ly45YWl5Lit6K6A5Y+W5pel6KqM6KiK5oGv77yJXG4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzMyCittc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZyb20gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgIuS4jeiDveW+nuaomea6lui8uOWFpeS4reiugOWPluaXpeiqjOioiuaBryIKKworIzogYnVpbHRpbi9jb21taXQuYzo3MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlYWQgbG9nIGZpbGUgJyVzJyIKK21zZ3N0ciAi5LiN6IO96K6A5Y+W5pel6KqM5qqU5qGIICclcyciCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6NzY3IGJ1aWx0aW4vY29tbWl0LmM6NzgzCittc2dpZCAiY291bGQgbm90IHJlYWQgU1FVQVNIX01TRyIKK21zZ3N0ciAi5LiN6IO96K6A5Y+WIFNRVUFTSF9NU0ciCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6Nzc0Cittc2dpZCAiY291bGQgbm90IHJlYWQgTUVSR0VfTVNHIgorbXNnc3RyICLkuI3og73oroDlj5YgTUVSR0VfTVNHIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjgzNAorbXNnaWQgImNvdWxkIG5vdCB3cml0ZSBjb21taXQgdGVtcGxhdGUiCittc2dzdHIgIuS4jeiDveWvq+aPkOS6pOevhOacrCIKKworIzogYnVpbHRpbi9jb21taXQuYzo4NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkl0IGxvb2tzIGxpa2UgeW91IG1heSBiZSBjb21taXR0aW5nIGEgbWVyZ2UuXG4iCisiSWYgdGhpcyBpcyBub3QgY29ycmVjdCwgcGxlYXNlIHJlbW92ZSB0aGUgZmlsZVxuIgorIlx0JXNcbiIKKyJhbmQgdHJ5IGFnYWluLlxuIgorbXNnc3RyICIiCisiXG4iCisi5Ly85LmO5oKo5q2j5Zyo5YGa5LiA5YCL5ZCI5L215o+Q5Lqk44CC5aaC5p6c5LiN5bCN77yM6KuL5Yiq6Zmk5qqU5qGIXG4iCisiXHQlc1xuIgorIueEtuW+jOmHjeippuOAglxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjg1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiSXQgbG9va3MgbGlrZSB5b3UgbWF5IGJlIGNvbW1pdHRpbmcgYSBjaGVycnktcGljay5cbiIKKyJJZiB0aGlzIGlzIG5vdCBjb3JyZWN0LCBwbGVhc2UgcmVtb3ZlIHRoZSBmaWxlXG4iCisiXHQlc1xuIgorImFuZCB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJcbiIKKyLkvLzkuY7mgqjmraPlnKjlgZrkuIDlgIvmj4Dpgbjmj5DkuqTjgILlpoLmnpzkuI3lsI3vvIzoq4vliKrpmaTmqpTmoYhcbiIKKyJcdCVzXG4iCisi54S25b6M6YeN6Kmm44CCXG4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6ODcxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQbGVhc2UgZW50ZXIgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB5b3VyIGNoYW5nZXMuIExpbmVzIHN0YXJ0aW5nXG4iCisid2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCittc2dzdHIgIiIKKyLoq4vngrrmgqjnmoTorormm7TovLjlhaXmj5DkuqToqqrmmI7jgILku6UgJyVjJyDplovlp4vnmoTooYzlsIfooqvlv73nlaXvvIzogIzkuIDlgIvnqbrnmoTmj5DkuqRcbiIKKyLoqqrmmI7lsIfmnIPntYLmraLmj5DkuqTjgIJcbiIKKworIzogYnVpbHRpbi9jb21taXQuYzo4NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBsZWFzZSBlbnRlciB0aGUgY29tbWl0IG1lc3NhZ2UgZm9yIHlvdXIgY2hhbmdlcy4gTGluZXMgc3RhcnRpbmdcbiIKKyJ3aXRoICclYycgd2lsbCBiZSBrZXB0OyB5b3UgbWF5IHJlbW92ZSB0aGVtIHlvdXJzZWxmIGlmIHlvdSB3YW50IHRvLlxuIgorIkFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzIHRoZSBjb21taXQuXG4iCittc2dzdHIgIiIKKyLoq4vngrrmgqjnmoTorormm7TovLjlhaXmj5DkuqToqqrmmI7jgILku6UgJyVjJyDplovlp4vnmoTooYzlsIfooqvkv53nlZnvvIzlpoLmnpzmgqjljp/mhI9cbiIKKyLkuZ/lj6/ku6XliKrpmaTlroPlgJHjgILkuIDlgIvnqbrnmoTmj5DkuqToqqrmmI7lsIfmnIPntYLmraLmj5DkuqTjgIJcbiIKKworIyAg6K2v6ICF77ya54K65L+d6K2J5Zyo6Ly45Ye65Lit5bCN6b2K77yM5rOo5oSP6Kq/5pW05Y+l5Lit56m65qC877yBCisjOiBidWlsdGluL2NvbW1pdC5jOjg5NgorIywgYy1mb3JtYXQKK21zZ2lkICIlc0F1dGhvcjogICAgJS4qcyA8JS4qcz4iCittc2dzdHIgIiVz5L2c6ICF77yaICAlLipzIDwlLipzPiIKKworIyAg6K2v6ICF77ya54K65L+d6K2J5Zyo6Ly45Ye65Lit5bCN6b2K77yM5rOo5oSP6Kq/5pW05Y+l5Lit56m65qC877yBCisjOiBidWlsdGluL2NvbW1pdC5jOjkwNAorIywgYy1mb3JtYXQKK21zZ2lkICIlc0RhdGU6ICAgICAgJXMiCittc2dzdHIgIiVz5pel5pyf77yaICAlcyIKKworIyAg6K2v6ICF77ya54K65L+d6K2J5Zyo6Ly45Ye65Lit5bCN6b2K77yM5rOo5oSP6Kq/5pW05Y+l5Lit56m65qC877yBCisjOiBidWlsdGluL2NvbW1pdC5jOjkxMQorIywgYy1mb3JtYXQKK21zZ2lkICIlc0NvbW1pdHRlcjogJS4qcyA8JS4qcz4iCittc2dzdHIgIiVz5o+Q5Lqk6ICF77yaJS4qcyA8JS4qcz4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6OTI5Cittc2dpZCAiQ2Fubm90IHJlYWQgaW5kZXgiCittc2dzdHIgIueEoeazleiugOWPlue0ouW8lSIKKworIzogYnVpbHRpbi9jb21taXQuYzo5OTcKK21zZ2lkICJFcnJvciBidWlsZGluZyB0cmVlcyIKK21zZ3N0ciAi54Sh5rOV5bu656uL5qi554uA54mp5Lu2IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEwMTEgYnVpbHRpbi90YWcuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGxlYXNlIHN1cHBseSB0aGUgbWVzc2FnZSB1c2luZyBlaXRoZXIgLW0gb3IgLUYgb3B0aW9uLlxuIgorbXNnc3RyICLoq4vkvb/nlKggLW0g5oiWIC1GIOmBuOmgheaPkOS+m+aPkOS6pOiqquaYjuOAglxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEwNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1hdXRob3IgJyVzJyBpcyBub3QgJ05hbWUgPGVtYWlsPicgYW5kIG1hdGNoZXMgbm8gZXhpc3RpbmcgYXV0aG9yIgorbXNnc3RyICItLWF1dGhvciAnJXMnIOS4jeaYryAn5aeT5ZCNIDzkv6HnrrE+JyDmoLzlvI/vvIzkuJTmnKrog73lnKjnj77mnInkvZzogIXkuK3mib7liLDnrKblkIgiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTA2OQorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGlnbm9yZWQgbW9kZSAnJXMnIgorbXNnc3RyICLnhKHmlYjnmoTlv73nlaXmqKHlvI8gJyVzJyIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMDg3IGJ1aWx0aW4vY29tbWl0LmM6MTMyNworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHVudHJhY2tlZCBmaWxlcyBtb2RlICclcyciCittc2dzdHIgIueEoeaViOeahOacqui/vei5pOaqlOahiOWPg+aVuCAnJXMnIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjExMjcKK21zZ2lkICItLWxvbmcgYW5kIC16IGFyZSBpbmNvbXBhdGlibGUiCittc2dzdHIgIi0tbG9uZyDlkowgLXog6YG46aCF5LiN55u45a65IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjExNzEKK21zZ2lkICJVc2luZyBib3RoIC0tcmVzZXQtYXV0aG9yIGFuZCAtLWF1dGhvciBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICLlkIzmmYLkvb/nlKggLS1yZXNldC1hdXRob3Ig5ZKMIC0tYXV0aG9yIOaykuacieaEj+e+qSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTgwCittc2dpZCAiWW91IGhhdmUgbm90aGluZyB0byBhbWVuZC4iCittc2dzdHIgIuaCqOaykuacieWPr+S/ruijnOeahOaPkOS6pOOAgiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTgzCittc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UgLS0gY2Fubm90IGFtZW5kLiIKK21zZ3N0ciAi5oKo5q2j6JmV5pa85LiA5YCL5ZCI5L216YGO56iL5LitIC0tIOeEoeazleS/ruijnOaPkOS6pOOAgiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTg1Cittc2dpZCAiWW91IGFyZSBpbiB0aGUgbWlkZGxlIG9mIGEgY2hlcnJ5LXBpY2sgLS0gY2Fubm90IGFtZW5kLiIKK21zZ3N0ciAi5oKo5q2j6JmV5pa85LiA5YCL5o+A6YG46YGO56iL5LitIC0tIOeEoeazleS/ruijnOaPkOS6pOOAgiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTg4Cittc2dpZCAiT3B0aW9ucyAtLXNxdWFzaCBhbmQgLS1maXh1cCBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIKK21zZ3N0ciAi6YG46aCFIC0tc3F1YXNoIOWSjCAtLWZpeHVwIOS4jeiDveWQjOaZguS9v+eUqCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMTk4Cittc2dpZCAiT25seSBvbmUgb2YgLWMvLUMvLUYvLS1maXh1cCBjYW4gYmUgdXNlZC4iCittc2dzdHIgIuWPquiDveeUqOS4gOWAiyAtYy8tQy8tRi8tLWZpeHVwIOmBuOmgheOAgiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMjAwCittc2dpZCAiT3B0aW9uIC1tIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIC1jLy1DLy1GLiIKK21zZ3N0ciAi6YG46aCFIC1tIOS4jeiDveWSjCAtYy8tQy8tRiDlkIzmmYLkvb/nlKjjgIIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTIwOAorbXNnaWQgIi0tcmVzZXQtYXV0aG9yIGNhbiBiZSB1c2VkIG9ubHkgd2l0aCAtQywgLWMgb3IgLS1hbWVuZC4iCittc2dzdHIgIi0tcmVzZXQtYXV0aG9yIOWPquiDveWSjCAtQ+OAgS1jIOaIliAtLWFtZW5kIOWQjOaZguS9v+eUqOOAgiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMjI1Cittc2dpZCAiT25seSBvbmUgb2YgLS1pbmNsdWRlLy0tb25seS8tLWFsbC8tLWludGVyYWN0aXZlLy0tcGF0Y2ggY2FuIGJlIHVzZWQuIgorbXNnc3RyICLlj6rog73nlKjkuIDlgIsgLS1pbmNsdWRlLy0tb25seS8tLWFsbC8tLWludGVyYWN0aXZlLy0tcGF0Y2gg6YG46aCF44CCIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEyMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGF0aHMgJyVzIC4uLicgd2l0aCAtYSBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICLot6/lvpEgICclcyAuLi4nIOWSjCAtYSDpgbjpoIXlkIzmmYLkvb/nlKjmspLmnInmhI/nvqkiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2MiBidWlsdGluL2NvbW1pdC5jOjE1MjQKK21zZ2lkICJzaG93IHN0YXR1cyBjb25jaXNlbHkiCittc2dzdHIgIuS7peewoea9lOeahOagvOW8j+mhr+ekuueLgOaFiyIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzY0IGJ1aWx0aW4vY29tbWl0LmM6MTUyNgorbXNnaWQgInNob3cgYnJhbmNoIGluZm9ybWF0aW9uIgorbXNnc3RyICLpoa/npLrliIbmlK/oqIrmga8iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM2NgorbXNnaWQgInNob3cgc3Rhc2ggaW5mb3JtYXRpb24iCittc2dzdHIgIumhr+ekuuWEsuiXj+WNgOioiuaBryIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzY4IGJ1aWx0aW4vY29tbWl0LmM6MTUyOAorbXNnaWQgImNvbXB1dGUgZnVsbCBhaGVhZC9iZWhpbmQgdmFsdWVzIgorbXNnc3RyICLoqIjnrpflrozmlbTnmoTpoJjlhYgv6JC95b6M5YC8IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzAKK21zZ2lkICJ2ZXJzaW9uIgorbXNnc3RyICLniYjmnKwiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM3MCBidWlsdGluL2NvbW1pdC5jOjE1MzAgYnVpbHRpbi9wdXNoLmM6NTQ5CisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjQzCittc2dpZCAibWFjaGluZS1yZWFkYWJsZSBvdXRwdXQiCittc2dzdHIgIuapn+WZqOWPr+iugOeahOi8uOWHuiIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzczIGJ1aWx0aW4vY29tbWl0LmM6MTUzMgorbXNnaWQgInNob3cgc3RhdHVzIGluIGxvbmcgZm9ybWF0IChkZWZhdWx0KSIKK21zZ3N0ciAi5Lul6ZW35qC85byP6aGv56S654uA5oWL77yI6aCQ6Kit77yJIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzYgYnVpbHRpbi9jb21taXQuYzoxNTM1Cittc2dpZCAidGVybWluYXRlIGVudHJpZXMgd2l0aCBOVUwiCittc2dzdHIgIuaineebruS7pSBOVUwg5a2X5YWD57WQ5bC+IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzggYnVpbHRpbi9jb21taXQuYzoxMzgyIGJ1aWx0aW4vY29tbWl0LmM6MTUzOAorIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTMgYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNTYKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTU5IGJ1aWx0aW4vcmViYXNlLmM6MTU2OSBwYXJzZS1vcHRpb25zLmg6MzM2Cittc2dpZCAibW9kZSIKK21zZ3N0ciAi5qih5byPIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzNzkgYnVpbHRpbi9jb21taXQuYzoxNTM4Cittc2dpZCAic2hvdyB1bnRyYWNrZWQgZmlsZXMsIG9wdGlvbmFsIG1vZGVzOiBhbGwsIG5vcm1hbCwgbm8uIChEZWZhdWx0OiBhbGwpIgorbXNnc3RyICLpoa/npLrmnKrov73ouaTnmoTmqpTmoYjvvIzjgIzmqKHlvI/jgI3nmoTlj6/pgbjlj4PmlbjvvJphbGzjgIFub3JtYWzjgIFub+OAgu+8iOmgkOiore+8mmFsbO+8iSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzgzCittc2dpZCAiIgorInNob3cgaWdub3JlZCBmaWxlcywgb3B0aW9uYWwgbW9kZXM6IHRyYWRpdGlvbmFsLCBtYXRjaGluZywgbm8uIChEZWZhdWx0OiAiCisidHJhZGl0aW9uYWwpIgorbXNnc3RyICIiCisi6aGv56S65bey5b+955Wl55qE5qqU5qGI77yM5Y+v6YG45qih5byP77yadHJhZGl0aW9uYWzjgIFtYXRjaGluZ+OAgW5v44CC77yI6aCQ6Kit77yadHJhZGl0aW9uYWzvvIkiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTM4NSBwYXJzZS1vcHRpb25zLmg6MTkyCittc2dpZCAid2hlbiIKK21zZ3N0ciAi5L2V5pmCIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzODYKK21zZ2lkICIiCisiaWdub3JlIGNoYW5nZXMgdG8gc3VibW9kdWxlcywgb3B0aW9uYWwgd2hlbjogYWxsLCBkaXJ0eSwgdW50cmFja2VkLiAiCisiKERlZmF1bHQ6IGFsbCkiCittc2dzdHIgIiIKKyLlv73nlaXlrZDmqKHntYTnmoTmm7TmlLnvvIzjgIzkvZXmmYLjgI3nmoTlj6/pgbjlj4PmlbjvvJphbGzjgIFkaXJ0eeOAgXVudHJhY2tlZOOAgu+8iOmgkOiore+8mmFsbO+8iSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzg4Cittc2dpZCAibGlzdCB1bnRyYWNrZWQgZmlsZXMgaW4gY29sdW1ucyIKK21zZ3N0ciAi5Lul5YiX55qE5pa55byP6aGv56S65pyq6L+96Lmk55qE5qqU5qGIIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjEzODkKK21zZ2lkICJkbyBub3QgZGV0ZWN0IHJlbmFtZXMiCittc2dzdHIgIuS4jeaqoua4rOmHjeaWsOWRveWQjSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxMzkxCittc2dpZCAiZGV0ZWN0IHJlbmFtZXMsIG9wdGlvbmFsbHkgc2V0IHNpbWlsYXJpdHkgaW5kZXgiCittc2dzdHIgIuaqoua4rOmHjeaWsOWRveWQje+8jOWPr+S7peioreWumue0ouW8leebuOS8vOW6piIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDExCittc2dpZCAiVW5zdXBwb3J0ZWQgY29tYmluYXRpb24gb2YgaWdub3JlZCBhbmQgdW50cmFja2VkLWZpbGVzIGFyZ3VtZW50cyIKK21zZ3N0ciAi5LiN5pSv5o+05bey5b+955Wl5ZKM5pyq6L+96Lmk5qqU5qGI5Y+D5pW455qE57WE5ZCIIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTQKK21zZ2lkICJzdXBwcmVzcyBzdW1tYXJ5IGFmdGVyIHN1Y2Nlc3NmdWwgY29tbWl0IgorbXNnc3RyICLmj5DkuqTmiJDlip/lvozkuI3poa/npLrmpoLov7DoqIrmga8iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5NQorbXNnaWQgInNob3cgZGlmZiBpbiBjb21taXQgbWVzc2FnZSB0ZW1wbGF0ZSIKK21zZ3N0ciAi5Zyo5o+Q5Lqk6Kqq5piO56+E5pys6KOh6aGv56S65beu55WwIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTcKK21zZ2lkICJDb21taXQgbWVzc2FnZSBvcHRpb25zIgorbXNnc3RyICLmj5DkuqToqqrmmI7pgbjpoIUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTQ5OCBidWlsdGluL21lcmdlLmM6Mjc1IGJ1aWx0aW4vdGFnLmM6NDE0Cittc2dpZCAicmVhZCBtZXNzYWdlIGZyb20gZmlsZSIKK21zZ3N0ciAi5b6e5qqU5qGI5Lit6K6A5Y+W5o+Q5Lqk6Kqq5piOIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE0OTkKK21zZ2lkICJhdXRob3IiCittc2dzdHIgIuS9nOiAhSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNDk5Cittc2dpZCAib3ZlcnJpZGUgYXV0aG9yIGZvciBjb21taXQiCittc2dzdHIgIuaPkOS6pOaZguimhuiTi+S9nOiAhSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTAwIGJ1aWx0aW4vZ2MuYzo1MzgKK21zZ2lkICJkYXRlIgorbXNnc3RyICLml6XmnJ8iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMAorbXNnaWQgIm92ZXJyaWRlIGRhdGUgZm9yIGNvbW1pdCIKK21zZ3N0ciAi5o+Q5Lqk5pmC6KaG6JOL5pel5pyfIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDIgYnVpbHRpbi9jb21taXQuYzoxNTAzIGJ1aWx0aW4vY29tbWl0LmM6MTUwNAorIzogYnVpbHRpbi9jb21taXQuYzoxNTA1IHBhcnNlLW9wdGlvbnMuaDozMjggcmVmLWZpbHRlci5oOjkyCittc2dpZCAiY29tbWl0IgorbXNnc3RyICLmj5DkuqQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMgorbXNnaWQgInJldXNlIGFuZCBlZGl0IG1lc3NhZ2UgZnJvbSBzcGVjaWZpZWQgY29tbWl0IgorbXNnc3RyICLph43nlKjkuKbnt6jovK/mjIflrprmj5DkuqTnmoTmj5DkuqToqqrmmI4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwMworbXNnaWQgInJldXNlIG1lc3NhZ2UgZnJvbSBzcGVjaWZpZWQgY29tbWl0IgorbXNnc3RyICLph43nlKjmjIflrprmj5DkuqTnmoTmj5DkuqToqqrmmI4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwNAorbXNnaWQgInVzZSBhdXRvc3F1YXNoIGZvcm1hdHRlZCBtZXNzYWdlIHRvIGZpeHVwIHNwZWNpZmllZCBjb21taXQiCittc2dzdHIgIuS9v+eUqCBhdXRvc3F1YXNoIOagvOW8j+eahOaPkOS6pOiqquaYjueUqOS7peS/ruato+aMh+WumueahOaPkOS6pCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTA1Cittc2dpZCAidXNlIGF1dG9zcXVhc2ggZm9ybWF0dGVkIG1lc3NhZ2UgdG8gc3F1YXNoIHNwZWNpZmllZCBjb21taXQiCittc2dzdHIgIuS9v+eUqCBhdXRvc3F1YXNoIOagvOW8j+eahOaPkOS6pOiqquaYjueUqOS7peWjk+e4ruiHs+aMh+WumueahOaPkOS6pCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTA2Cittc2dpZCAidGhlIGNvbW1pdCBpcyBhdXRob3JlZCBieSBtZSBub3cgKHVzZWQgd2l0aCAtQy8tYy8tLWFtZW5kKSIKK21zZ3N0ciAi54++5Zyo5bCH6Kmy5o+Q5Lqk55qE5L2c6ICF5pS554K65oiR77yI5ZKMIC1DLy1jLy0tYW1lbmQg5Y+D5pW45YWx55So77yJIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MDcgYnVpbHRpbi9sb2cuYzoxNjM0IGJ1aWx0aW4vbWVyZ2UuYzoyOTAKKyM6IGJ1aWx0aW4vcHVsbC5jOjE0NCBidWlsdGluL3JldmVydC5jOjExMAorbXNnaWQgImFkZCBTaWduZWQtb2ZmLWJ5OiIKK21zZ3N0ciAi5paw5aKeIFNpZ25lZC1vZmYtYnk6IOewveWQjSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTA4Cittc2dpZCAidXNlIHNwZWNpZmllZCB0ZW1wbGF0ZSBmaWxlIgorbXNnc3RyICLkvb/nlKjmjIflrprnmoTnr4TmnKzmqpTmoYgiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUwOQorbXNnaWQgImZvcmNlIGVkaXQgb2YgY29tbWl0IgorbXNnc3RyICLlvLfliLbnt6jovK/mj5DkuqQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxMQorbXNnaWQgImluY2x1ZGUgc3RhdHVzIGluIGNvbW1pdCBtZXNzYWdlIHRlbXBsYXRlIgorbXNnc3RyICLlnKjmj5DkuqToqqrmmI7nr4TmnKzoo6HljIXlkKvni4DmhYvoqIrmga8iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNgorbXNnaWQgIkNvbW1pdCBjb250ZW50cyBvcHRpb25zIgorbXNnc3RyICLmj5DkuqTlhaflrrnpgbjpoIUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTUxNworbXNnaWQgImNvbW1pdCBhbGwgY2hhbmdlZCBmaWxlcyIKK21zZ3N0ciAi5o+Q5Lqk5omA5pyJ5pS55YuV55qE5qqU5qGIIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MTgKK21zZ2lkICJhZGQgc3BlY2lmaWVkIGZpbGVzIHRvIGluZGV4IGZvciBjb21taXQiCittc2dzdHIgIuaWsOWinuaMh+WumueahOaqlOahiOWIsOe0ouW8leWNgOetieW+heaPkOS6pCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTE5Cittc2dpZCAiaW50ZXJhY3RpdmVseSBhZGQgZmlsZXMiCittc2dzdHIgIuS6kuWLleW8j+aWsOWinuaqlOahiCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTIwCittc2dpZCAiaW50ZXJhY3RpdmVseSBhZGQgY2hhbmdlcyIKK21zZ3N0ciAi5LqS5YuV5byP5paw5aKe6K6K5pu0IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MjEKK21zZ2lkICJjb21taXQgb25seSBzcGVjaWZpZWQgZmlsZXMiCittc2dzdHIgIuWPquaPkOS6pOaMh+WumueahOaqlOahiCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTIyCittc2dpZCAiYnlwYXNzIHByZS1jb21taXQgYW5kIGNvbW1pdC1tc2cgaG9va3MiCittc2dzdHIgIue5numBjiBwcmUtY29tbWl0IOWSjCBjb21taXQtbXNnIOaOm+mJpCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTIzCittc2dpZCAic2hvdyB3aGF0IHdvdWxkIGJlIGNvbW1pdHRlZCIKK21zZ3N0ciAi6aGv56S65bCH6KaB5o+Q5Lqk55qE5YWn5a65IgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1MzYKK21zZ2lkICJhbWVuZCBwcmV2aW91cyBjb21taXQiCittc2dzdHIgIuS/ruaUueWFiOWJjeeahOaPkOS6pCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTM3Cittc2dpZCAiYnlwYXNzIHBvc3QtcmV3cml0ZSBob29rIgorbXNnc3RyICLnuZ7pgY4gcG9zdC1yZXdyaXRlIOaOm+mJpCIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNTQ0Cittc2dpZCAib2sgdG8gcmVjb3JkIGFuIGVtcHR5IGNoYW5nZSIKK21zZ3N0ciAi5YWB6Kix5LiA5YCL56m65o+Q5LqkIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE1NDYKK21zZ2lkICJvayB0byByZWNvcmQgYSBjaGFuZ2Ugd2l0aCBhbiBlbXB0eSBtZXNzYWdlIgorbXNnc3RyICLlhYHoqLHnqbrnmoTmj5DkuqToqqrmmI4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTYxOQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3JydXB0IE1FUkdFX0hFQUQgZmlsZSAoJXMpIgorbXNnc3RyICLmkI3lo57nmoQgTUVSR0VfSEVBRCDmqpTmoYjvvIglc++8iSIKKworIzogYnVpbHRpbi9jb21taXQuYzoxNjI2Cittc2dpZCAiY291bGQgbm90IHJlYWQgTUVSR0VfTU9ERSIKK21zZ3N0ciAi5LiN6IO96K6A5Y+WIE1FUkdFX01PREUiCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBjb21taXQgbWVzc2FnZTogJXMiCittc2dzdHIgIuS4jeiDveiugOWPluaPkOS6pOiqquaYju+8miVzIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWJvcnRpbmcgY29tbWl0IGR1ZSB0byBlbXB0eSBjb21taXQgbWVzc2FnZS5cbiIKK21zZ3N0ciAi57WC5q2i5o+Q5Lqk5Zug54K65o+Q5Lqk6Kqq5piO54K656m644CCXG4iCisKKyM6IGJ1aWx0aW4vY29tbWl0LmM6MTY1NworIywgYy1mb3JtYXQKK21zZ2lkICJBYm9ydGluZyBjb21taXQ7IHlvdSBkaWQgbm90IGVkaXQgdGhlIG1lc3NhZ2UuXG4iCittc2dzdHIgIue1guatouaPkOS6pO+8m+aCqOacquabtOaUueS+huiHquevhOacrOeahOaPkOS6pOiqquaYjuOAglxuIgorCisjOiBidWlsdGluL2NvbW1pdC5jOjE2OTEKK21zZ2lkICIiCisicmVwb3NpdG9yeSBoYXMgYmVlbiB1cGRhdGVkLCBidXQgdW5hYmxlIHRvIHdyaXRlXG4iCisibmV3X2luZGV4IGZpbGUuIENoZWNrIHRoYXQgZGlzayBpcyBub3QgZnVsbCBhbmQgcXVvdGEgaXNcbiIKKyJub3QgZXhjZWVkZWQsIGFuZCB0aGVuIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgOi9cIiB0byByZWNvdmVyLiIKK21zZ3N0ciAiIgorIueJiOacrOW6q+W3suabtOaWsO+8jOS9hueEoeazleWvqyBuZXdfaW5kZXgg5qqU5qGI44CC5qqi5p+l5piv5ZCm56OB56Kf5bey5ru/5oiWXG4iCisi56OB56Kf6YWN6aGN5bey6ICX55uh77yM54S25b6M5Z+36KGMIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgOi9cIiDlvqnljp/jgIIiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTEgYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNworbXNnaWQgIiIKKyJnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSBbLS1vYmplY3QtZGlyIDxvYmpkaXI+XSBbLS1zaGFsbG93XSBbLS1bbm8tXXByb2dyZXNzXSIKK21zZ3N0ciAiIgorImdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IFstLW9iamVjdC1kaXIgPOeJqeS7tuebrumMhD5dIFstLXNoYWxsb3ddIFstLSIKKyJbbm8tXXByb2dyZXNzXSIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIyCittc2dpZCAiIgorImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA8b2JqZGlyPl0gWy0tYXBwZW5kfC0tc3BsaXRdIFstLSIKKyJyZWFjaGFibGV8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIFstLVtuby1dcHJvZ3Jlc3NdIDxzcGxpdCBvcHRpb25zPiIKK21zZ3N0ciAiIgorImdpdCBjb21taXQtZ3JhcGggd3JpdGUgWy0tb2JqZWN0LWRpciA854mp5Lu255uu6YyEPl0gWy0tYXBwZW5kfC0tc3BsaXRdIFstLSIKKyJyZWFjaGFibGV8LS1zdGRpbi1wYWNrc3wtLXN0ZGluLWNvbW1pdHNdIFstLVtuby1dcHJvZ3Jlc3NdIDxzcGxpdCBvcHRpb25zPiIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZmluZCBvYmplY3QgZGlyZWN0b3J5IG1hdGNoaW5nICVzIgorbXNnc3RyICLmib7kuI3liLDnrKblkIggJXMg55qE54mp5Lu255uu6YyEIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjY4IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTI1CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIxMCBidWlsdGluL2ZldGNoLmM6MTc5IGJ1aWx0aW4vbG9nLmM6MTY1NworbXNnaWQgImRpciIKK21zZ3N0ciAi55uu6YyEIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjY5IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTI2CisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjIxMQorbXNnaWQgIlRoZSBvYmplY3QgZGlyZWN0b3J5IHRvIHN0b3JlIHRoZSBncmFwaCIKK21zZ3N0ciAi5YSy5a2Y5ZyW5b2i55qE54mp5Lu255uu6YyEIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjcxCittc2dpZCAiaWYgdGhlIGNvbW1pdC1ncmFwaCBpcyBzcGxpdCwgb25seSB2ZXJpZnkgdGhlIHRpcCBmaWxlIgorbXNnc3RyICLlpoLmnpzmj5DkuqTlnJblvaLooqvliIblibLvvIzlj6rpqZforYnpoK3kuIDlgIvmqpTmoYgiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6OTQgdC9oZWxwZXIvdGVzdC1yZWFkLWdyYXBoLmM6MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IG9wZW4gY29tbWl0LWdyYXBoICclcyciCittc2dzdHIgIueEoeazlemWi+WVn+aPkOS6pOWcluW9oiAnJXMnIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEyOAorbXNnaWQgInN0YXJ0IHdhbGsgYXQgYWxsIHJlZnMiCittc2dzdHIgIumWi+Wni+mBjeatt+aJgOacieW8leeUqCIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzAKK21zZ2lkICJzY2FuIHBhY2staW5kZXhlcyBsaXN0ZWQgYnkgc3RkaW4gZm9yIGNvbW1pdHMiCittc2dzdHIgIuW+nuaomea6lui8uOWFpeS4reeahOWMhee0ouW8leaqlOahiOWIl+ihqOS4reaOg+aPj+aPkOS6pCIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxMzIKK21zZ2lkICJzdGFydCB3YWxrIGF0IGNvbW1pdHMgbGlzdGVkIGJ5IHN0ZGluIgorbXNnc3RyICLlvp7mqJnmupbovLjlhaXkuK3nmoTmj5DkuqTplovlp4vmjoPmj48iCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM0Cittc2dpZCAiaW5jbHVkZSBhbGwgY29tbWl0cyBhbHJlYWR5IGluIHRoZSBjb21taXQtZ3JhcGggZmlsZSIKK21zZ3N0ciAi5YyF5ZCrIGNvbW1pdC1ncmFwaCDmqpTmoYjkuK3lt7LmnInmiYDmnInmj5DkuqQiCisKKyM6IGJ1aWx0aW4vY29tbWl0LWdyYXBoLmM6MTM3Cittc2dpZCAiYWxsb3cgd3JpdGluZyBhbiBpbmNyZW1lbnRhbCBjb21taXQtZ3JhcGggZmlsZSIKK21zZ3N0ciAi5YWB6Kix5a+r5LiA5YCL5aKe6YeP5o+Q5Lqk5ZyW5b2i5qqU5qGIIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjEzOSBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE0MworbXNnaWQgIm1heGltdW0gbnVtYmVyIG9mIGNvbW1pdHMgaW4gYSBub24tYmFzZSBzcGxpdCBjb21taXQtZ3JhcGgiCittc2dzdHIgIuWcqOmdnuWfuuacrOWIhuWJsuaPkOS6pOWcluW9ouS4reeahOacgOWkp+aPkOS6pOaVuCIKKworIzogYnVpbHRpbi9jb21taXQtZ3JhcGguYzoxNDEKK21zZ2lkICJtYXhpbXVtIHJhdGlvIGJldHdlZW4gdHdvIGxldmVscyBvZiBhIHNwbGl0IGNvbW1pdC1ncmFwaCIKK21zZ3N0ciAi5LiA5YCL5YiG5Ymy5o+Q5Lqk5ZyW5b2i55qE5YWp5YCL57Sa5Yil5LmL6ZaT55qE5pyA5aSn5q+U546HIgorCisjOiBidWlsdGluL2NvbW1pdC1ncmFwaC5jOjE1OQorbXNnaWQgInVzZSBhdCBtb3N0IG9uZSBvZiAtLXJlYWNoYWJsZSwgLS1zdGRpbi1jb21taXRzLCBvciAtLXN0ZGluLXBhY2tzIgorbXNnc3RyICLkuI3og73lkIzmmYLkvb/nlKggLS1yZWFjaGFibGXjgIEtLXN0ZGluLWNvbW1pdHMg5oiWIC0tc3RkaW4tcGFja3MiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTEKK21zZ2lkICJnaXQgY29uZmlnIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgY29uZmlnIFs86YG46aCFPl0iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTA0IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzoyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgLS10eXBlIGFyZ3VtZW50LCAlcyIKK21zZ3N0ciAi5pyq6IO96K2Y5Yil55qEIC0tdHlwZSDlj4PmlbjvvIwlcyIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMTYKK21zZ2lkICJvbmx5IG9uZSB0eXBlIGF0IGEgdGltZSIKK21zZ3N0ciAi5LiA5qyh5Y+q6IO95LiA5YCL6aGe5Z6LIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEyNQorbXNnaWQgIkNvbmZpZyBmaWxlIGxvY2F0aW9uIgorbXNnc3RyICLoqK3lrprmqpTmoYjkvY3nva4iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTI2Cittc2dpZCAidXNlIGdsb2JhbCBjb25maWcgZmlsZSIKK21zZ3N0ciAi5L2/55So5YWo5Z+f6Kit5a6a5qqU5qGIIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEyNworbXNnaWQgInVzZSBzeXN0ZW0gY29uZmlnIGZpbGUiCittc2dzdHIgIuS9v+eUqOezu+e1see0muioreWumuaqlOahiCIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMjgKK21zZ2lkICJ1c2UgcmVwb3NpdG9yeSBjb25maWcgZmlsZSIKK21zZ3N0ciAi5L2/55So54mI5pys5bqr57Sa6Kit5a6a5qqU5qGIIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEyOQorbXNnaWQgInVzZSBwZXItd29ya3RyZWUgY29uZmlnIGZpbGUiCittc2dzdHIgIuS9v+eUqOW3peS9nOWNgOe0muWIpeeahOioreWumuaqlOahiCIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMzAKK21zZ2lkICJ1c2UgZ2l2ZW4gY29uZmlnIGZpbGUiCittc2dzdHIgIuS9v+eUqOaMh+WumueahOioreWumuaqlOahiCIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMzEKK21zZ2lkICJibG9iLWlkIgorbXNnc3RyICLos4fmlpnnianku7YgSUQiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTMxCittc2dpZCAicmVhZCBjb25maWcgZnJvbSBnaXZlbiBibG9iIG9iamVjdCIKK21zZ3N0ciAi5b6e5o+Q5L6b55qE6LOH5paZ54mp5Lu26K6A5Y+W6Kit5a6aIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMgorbXNnaWQgIkFjdGlvbiIKK21zZ3N0ciAi5YuV5L2cIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzMworbXNnaWQgImdldCB2YWx1ZTogbmFtZSBbdmFsdWUtcmVnZXhdIgorbXNnc3RyICLlj5blvpflgLzvvJpuYW1lIFt2YWx1ZS1yZWdleF0iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM0Cittc2dpZCAiZ2V0IGFsbCB2YWx1ZXM6IGtleSBbdmFsdWUtcmVnZXhdIgorbXNnc3RyICLnjbLlvpfmiYDmnInnmoTlgLzvvJprZXkgW3ZhbHVlLXJlZ2V4XSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMzUKK21zZ2lkICJnZXQgdmFsdWVzIGZvciByZWdleHA6IG5hbWUtcmVnZXggW3ZhbHVlLXJlZ2V4XSIKK21zZ3N0ciAi5qC55pOa5q2j6KaP6KGo56S65byP542y5b6X5YC877yabmFtZS1yZWdleCBbdmFsdWUtcmVnZXhdIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjEzNgorbXNnaWQgImdldCB2YWx1ZSBzcGVjaWZpYyBmb3IgdGhlIFVSTDogc2VjdGlvblsudmFyXSBVUkwiCittc2dzdHIgIueNsuW+lyBVUkwg5Y+W5YC877yac2VjdGlvblsudmFyXSBVUkwiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM3Cittc2dpZCAicmVwbGFjZSBhbGwgbWF0Y2hpbmcgdmFyaWFibGVzOiBuYW1lIHZhbHVlIFt2YWx1ZV9yZWdleF0iCittc2dzdHIgIuWPluS7o+aJgOacieespuWQiOeahOiuiuaVuO+8mm5hbWUgdmFsdWUgW3ZhbHVlX3JlZ2V4XSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxMzgKK21zZ2lkICJhZGQgYSBuZXcgdmFyaWFibGU6IG5hbWUgdmFsdWUiCittc2dzdHIgIuaWsOWinuS4gOWAi+aWsOeahOiuiuaVuO+8mm5hbWUgdmFsdWUiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTM5Cittc2dpZCAicmVtb3ZlIGEgdmFyaWFibGU6IG5hbWUgW3ZhbHVlLXJlZ2V4XSIKK21zZ3N0ciAi5Yiq6Zmk5LiA5YCL6K6K5pW477yabmFtZSBbdmFsdWUtcmVnZXhdIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0MAorbXNnaWQgInJlbW92ZSBhbGwgbWF0Y2hlczogbmFtZSBbdmFsdWUtcmVnZXhdIgorbXNnc3RyICLliKrpmaTmiYDmnInnrKblkIjpoIXvvJpuYW1lIFt2YWx1ZS1yZWdleF0iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQxCittc2dpZCAicmVuYW1lIHNlY3Rpb246IG9sZC1uYW1lIG5ldy1uYW1lIgorbXNnc3RyICLph43mlrDlkb3lkI3lsI/nr4DvvJpvbGQtbmFtZSBuZXctbmFtZSIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNDIKK21zZ2lkICJyZW1vdmUgYSBzZWN0aW9uOiBuYW1lIgorbXNnc3RyICLliKrpmaTkuIDlgIvlsI/nr4DvvJpuYW1lIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0MworbXNnaWQgImxpc3QgYWxsIgorbXNnc3RyICLlhajpg6jliJflh7oiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ0Cittc2dpZCAib3BlbiBhbiBlZGl0b3IiCittc2dzdHIgIumWi+WVn+S4gOWAi+e3qOi8r+WZqCIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNDUKK21zZ2lkICJmaW5kIHRoZSBjb2xvciBjb25maWd1cmVkOiBzbG90IFtkZWZhdWx0XSIKK21zZ3N0ciAi542y5b6X6Kit5a6a55qE6aGP6Imy77ya6Kit5a6aIFvpoJDoqK1dIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0NgorbXNnaWQgImZpbmQgdGhlIGNvbG9yIHNldHRpbmc6IHNsb3QgW3N0ZG91dC1pcy10dHldIgorbXNnc3RyICLnjbLlvpfpoY/oibLoqK3lrprvvJroqK3lrpogW3N0ZG91dC1pcy10dHldIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE0NworbXNnaWQgIlR5cGUiCittc2dzdHIgIumhnuWeiyIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNDggYnVpbHRpbi9lbnYtLWhlbHBlci5jOjM4Cittc2dpZCAidmFsdWUgaXMgZ2l2ZW4gdGhpcyB0eXBlIgorbXNnc3RyICLlj5blgLzngrroqbLpoZ7lnosiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTQ5Cittc2dpZCAidmFsdWUgaXMgXCJ0cnVlXCIgb3IgXCJmYWxzZVwiIgorbXNnc3RyICLlgLzmmK8gXCJ0cnVlXCIg5oiWIFwiZmFsc2VcIiIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNTAKK21zZ2lkICJ2YWx1ZSBpcyBkZWNpbWFsIG51bWJlciIKK21zZ3N0ciAi5YC85piv5Y2B6YCy5L2N5pW4IgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1MQorbXNnaWQgInZhbHVlIGlzIC0tYm9vbCBvciAtLWludCIKK21zZ3N0ciAi5YC85pivIC0tYm9vbCBvciAtLWludCIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNTIKK21zZ2lkICJ2YWx1ZSBpcyBhIHBhdGggKGZpbGUgb3IgZGlyZWN0b3J5IG5hbWUpIgorbXNnc3RyICLlgLzmmK/kuIDlgIvot6/lvpHvvIjmqpTmoYjmiJbnm67pjITlkI3vvIkiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTUzCittc2dpZCAidmFsdWUgaXMgYW4gZXhwaXJ5IGRhdGUiCittc2dzdHIgIuWAvOaYr+S4gOWAi+WIsOacn+aXpeacnyIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNTQKK21zZ2lkICJPdGhlciIKK21zZ3N0ciAi5YW25a6DIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1NQorbXNnaWQgInRlcm1pbmF0ZSB2YWx1ZXMgd2l0aCBOVUwgYnl0ZSIKK21zZ3N0ciAi57WC5q2i5YC85pivIE5VTCDkvY3lhYPntYQiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU2Cittc2dpZCAic2hvdyB2YXJpYWJsZSBuYW1lcyBvbmx5IgorbXNnc3RyICLlj6rpoa/npLrorormlbjlkI0iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU3Cittc2dpZCAicmVzcGVjdCBpbmNsdWRlIGRpcmVjdGl2ZXMgb24gbG9va3VwIgorbXNnc3RyICLmn6XoqaLmmYLlj4PnhacgaW5jbHVkZSDmjIfku6TpgZ7ov7TlsIvmib4iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MTU4Cittc2dpZCAic2hvdyBvcmlnaW4gb2YgY29uZmlnIChmaWxlLCBzdGFuZGFyZCBpbnB1dCwgYmxvYiwgY29tbWFuZCBsaW5lKSIKK21zZ3N0ciAi6aGv56S66Kit5a6a55qE5L6G5rqQ77yI5qqU5qGI44CB5qiZ5rqW6Ly45YWl44CB6LOH5paZ54mp5Lu277yM5oiW5oyH5Luk5YiX77yJIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE1OQorbXNnaWQgInNob3cgc2NvcGUgb2YgY29uZmlnICh3b3JrdHJlZSwgbG9jYWwsIGdsb2JhbCwgc3lzdGVtLCBjb21tYW5kKSIKK21zZ3N0ciAiIgorIumhr+ekuuioreWumuaqlOeahOS9nOeUqOWfnyAo5bel5L2c5Y2AIHdvcmt0cmVl44CB5pys5qmfIGxvY2Fs44CB5YWo5Z+fIGdsb2JhbOOAgeezu+e1sSBzeXN0ZW3jgIHmjIciCisi5LukIGNvbW1hbmQpIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE2MCBidWlsdGluL2Vudi0taGVscGVyLmM6NDAKK21zZ2lkICJ2YWx1ZSIKK21zZ3N0ciAi5Y+W5YC8IgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE2MAorbXNnaWQgIndpdGggLS1nZXQsIHVzZSBkZWZhdWx0IHZhbHVlIHdoZW4gbWlzc2luZyBlbnRyeSIKK21zZ3N0ciAi5L2/55SoIC0tZ2V0IOS9huacquaMh+WumuWPg+aVuOaZguaJgOS9v+eUqOeahOmgkOioreWAvCIKKworIzogYnVpbHRpbi9jb25maWcuYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAid3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cywgc2hvdWxkIGJlICVkIgorbXNnc3RyICLpjK/oqqTnmoTlj4PmlbjlgIvmlbjvvIzmh4noqbLngrogJWQg5YCLIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLCBzaG91bGQgYmUgZnJvbSAlZCB0byAlZCIKK21zZ3N0ciAi6Yyv6Kqk55qE5Y+D5pW45YCL5pW477yM5oeJ6Kmy54K65b6eICVkIOWAi+WIsCAlZCDlgIsiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQga2V5IHBhdHRlcm46ICVzIgorbXNnc3RyICLnhKHmlYjpjbXlkI3mqKHlvI/vvJolcyIKKworIzogYnVpbHRpbi9jb25maWcuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZvcm1hdCBkZWZhdWx0IGNvbmZpZyB2YWx1ZTogJXMiCittc2dzdHIgIuagvOW8j+WMlumgkOioreioreWumuWAvOWkseaVl++8miVzIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcGFyc2UgY29sb3IgJyVzJyIKK21zZ3N0ciAi54Sh5rOV6Kej5p6Q6aGP6ImyICclcyciCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NDU5Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIGRlZmF1bHQgY29sb3IgdmFsdWUiCittc2dzdHIgIueEoeazleino+aekOmgkOioremhj+iJsuWAvCIKKworIzogYnVpbHRpbi9jb25maWcuYzo1MTIgYnVpbHRpbi9jb25maWcuYzo3NjgKK21zZ2lkICJub3QgaW4gYSBnaXQgZGlyZWN0b3J5IgorbXNnc3RyICLkuI3lnKggZ2l0IOeJiOacrOW6q+S4rSIKKworIzogYnVpbHRpbi9jb25maWcuYzo1MTUKK21zZ2lkICJ3cml0aW5nIHRvIHN0ZGluIGlzIG5vdCBzdXBwb3J0ZWQiCittc2dzdHIgIuS4jeaUr+aPtOWvq+WIsOaomea6lui8uOWFpSIKKworIzogYnVpbHRpbi9jb25maWcuYzo1MTgKK21zZ2lkICJ3cml0aW5nIGNvbmZpZyBibG9icyBpcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICLkuI3mlK/mj7Tlr6vliLDoqK3lrpros4fmlpnnianku7YiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIjIFRoaXMgaXMgR2l0J3MgcGVyLXVzZXIgY29uZmlndXJhdGlvbiBmaWxlLlxuIgorIlt1c2VyXVxuIgorIiMgUGxlYXNlIGFkYXB0IGFuZCB1bmNvbW1lbnQgdGhlIGZvbGxvd2luZyBsaW5lczpcbiIKKyIjXHRuYW1lID0gJXNcbiIKKyIjXHRlbWFpbCA9ICVzXG4iCittc2dzdHIgIiIKKyIjIFRoaXMgaXMgR2l0J3MgcGVyLXVzZXIgY29uZmlndXJhdGlvbiBmaWxlLlxuIgorIlt1c2VyXVxuIgorIiMgUGxlYXNlIGFkYXB0IGFuZCB1bmNvbW1lbnQgdGhlIGZvbGxvd2luZyBsaW5lczpcbiIKKyIjXHRuYW1lID0gJXNcbiIKKyIjXHRlbWFpbCA9ICVzXG4iCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjI3Cittc2dpZCAib25seSBvbmUgY29uZmlnIGZpbGUgYXQgYSB0aW1lIgorbXNnc3RyICLkuIDmrKHlj6rog73mnInkuIDlgIvoqK3lrprmqpTmoYgiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NjMyCittc2dpZCAiLS1sb2NhbCBjYW4gb25seSBiZSB1c2VkIGluc2lkZSBhIGdpdCByZXBvc2l0b3J5IgorbXNnc3RyICItLWxvY2FsIOWPquiDveWcqOS4gOWAi+eJiOacrOW6q+WFp+S9v+eUqCIKKworIzogYnVpbHRpbi9jb25maWcuYzo2MzUKK21zZ2lkICItLWJsb2IgY2FuIG9ubHkgYmUgdXNlZCBpbnNpZGUgYSBnaXQgcmVwb3NpdG9yeSIKK21zZ3N0ciAiLS1ibG9iIOWPquiDveWcqOS4gOWAi+eJiOacrOW6q+WFp+S9v+eUqCIKKworIzogYnVpbHRpbi9jb25maWcuYzo2NTUKK21zZ2lkICIkSE9NRSBub3Qgc2V0IgorbXNnc3RyICIkSE9NRSDmnKroqK3lrpoiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6Njc5Cittc2dpZCAiIgorIi0td29ya3RyZWUgY2Fubm90IGJlIHVzZWQgd2l0aCBtdWx0aXBsZSB3b3JraW5nIHRyZWVzIHVubGVzcyB0aGUgY29uZmlnXG4iCisiZXh0ZW5zaW9uIHdvcmt0cmVlQ29uZmlnIGlzIGVuYWJsZWQuIFBsZWFzZSByZWFkIFwiQ09ORklHVVJBVElPTiBGSUxFXCJcbiIKKyJzZWN0aW9uIGluIFwiZ2l0IGhlbHAgd29ya3RyZWVcIiBmb3IgZGV0YWlscyIKK21zZ3N0ciAiIgorIuS4jeiDveWSjOWkmuWAi+W3peS9nOWNgOS4gOi1t+S9v+eUqCAtLXdvcmt0cmVl77yM6Zmk6Z2e5ZWf55SoIHdvcmt0cmVlQ29uZmlnIOioreWumuaTtOWxleOAglxuIgorIuips+aDheiri+mWseiugOOAjGdpdCBoZWxwIHdvcmt0cmVl44CN55qE44CMQ09ORklHVVJBVElPTiBGSUxF44CN5bCP56+AIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjcxNAorbXNnaWQgIi0tZ2V0LWNvbG9yIGFuZCB2YXJpYWJsZSB0eXBlIGFyZSBpbmNvaGVyZW50IgorbXNnc3RyICItLWdldC1jb2xvciDlkozorormlbjpoZ7lnovkuI3nm7jlrrkiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzE5Cittc2dpZCAib25seSBvbmUgYWN0aW9uIGF0IGEgdGltZSIKK21zZ3N0ciAi5LiA5qyh5Y+q6IO95pyJ5LiA5YCL5YuV5L2cIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjczMgorbXNnaWQgIi0tbmFtZS1vbmx5IGlzIG9ubHkgYXBwbGljYWJsZSB0byAtLWxpc3Qgb3IgLS1nZXQtcmVnZXhwIgorbXNnc3RyICItLW5hbWUtb25seSDlg4XpgannlKjmlrwgLS1saXN0IOaIliAtLWdldC1yZWdleHAiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzM4Cittc2dpZCAiIgorIi0tc2hvdy1vcmlnaW4gaXMgb25seSBhcHBsaWNhYmxlIHRvIC0tZ2V0LCAtLWdldC1hbGwsIC0tZ2V0LXJlZ2V4cCwgYW5kIC0tIgorImxpc3QiCittc2dzdHIgIi0tc2hvdy1vcmlnaW4g5YOF6YGp55So5pa8IC0tZ2V044CBLS1nZXQtYWxs44CBLS1nZXQtcmVnZXhwIOWSjCAtLWxpc3QiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzQ0Cittc2dpZCAiLS1kZWZhdWx0IGlzIG9ubHkgYXBwbGljYWJsZSB0byAtLWdldCIKK21zZ3N0ciAiLS1kZWZhdWx0IOWDhemBqeeUqOaWvCAtLWdldCIKKworIzogYnVpbHRpbi9jb25maWcuYzo3NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgY29uZmlnIGZpbGUgJyVzJyIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+W6Kit5a6a5qqU5qGIICclcyciCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6NzYwCittc2dpZCAiZXJyb3IgcHJvY2Vzc2luZyBjb25maWcgZmlsZShzKSIKK21zZ3N0ciAi6JmV55CG6Kit5a6a5qqU5qGI55m855Sf6Yyv6KqkIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjc3MAorbXNnaWQgImVkaXRpbmcgc3RkaW4gaXMgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAi5LiN5pSv5o+057eo6Lyv5qiZ5rqW6Ly45YWlIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjc3MgorbXNnaWQgImVkaXRpbmcgYmxvYnMgaXMgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAi5LiN5pSv5o+057eo6Lyv6LOH5paZ54mp5Lu2IgorCisjOiBidWlsdGluL2NvbmZpZy5jOjc4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGNvbmZpZ3VyYXRpb24gZmlsZSAlcyIKK21zZ3N0ciAi5LiN6IO95bu656uL6Kit5a6a5qqU5qGIICVzIgorCisjOiBidWlsdGluL2NvbmZpZy5jOjc5OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY2Fubm90IG92ZXJ3cml0ZSBtdWx0aXBsZSB2YWx1ZXMgd2l0aCBhIHNpbmdsZSB2YWx1ZVxuIgorIiAgICAgICBVc2UgYSByZWdleHAsIC0tYWRkIG9yIC0tcmVwbGFjZS1hbGwgdG8gY2hhbmdlICVzLiIKK21zZ3N0ciAiIgorIueEoeazleeUqOS4gOWAi+WAvOimhuiTi+WkmuWAi+WAvFxuIgorIiAgICAgICDkvb/nlKjkuIDlgIvmraPopo/ooajnpLrlvI/jgIEtLWFkZCDmiJYgLS1yZXBsYWNlLWFsbCDkvobkv67mlLkgJXPjgIIiCisKKyM6IGJ1aWx0aW4vY29uZmlnLmM6ODczIGJ1aWx0aW4vY29uZmlnLmM6ODg0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggc2VjdGlvbjogJXMiCittc2dzdHIgIueEoeatpOWwj+evgO+8miVzIgorCisjOiBidWlsdGluL2NvdW50LW9iamVjdHMuYzo5MAorbXNnaWQgImdpdCBjb3VudC1vYmplY3RzIFstdl0gWy1IIHwgLS1odW1hbi1yZWFkYWJsZV0iCittc2dzdHIgImdpdCBjb3VudC1vYmplY3RzIFstdl0gWy1IIHwgLS1odW1hbi1yZWFkYWJsZV0iCisKKyM6IGJ1aWx0aW4vY291bnQtb2JqZWN0cy5jOjEwMAorbXNnaWQgInByaW50IHNpemVzIGluIGh1bWFuIHJlYWRhYmxlIGZvcm1hdCIKK21zZ3N0ciAi5Lul5L2/55So6ICF5Y+v6K6A55qE5qC85byP6aGv56S65aSn5bCPIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MjYKK21zZ2lkICJnaXQgZGVzY3JpYmUgWzxvcHRpb25zPl0gWzxjb21taXQtaXNoPi4uLl0iCittc2dzdHIgImdpdCBkZXNjcmliZSBbPOmBuOmghT5dIFs85o+Q5Lqk6JmfPi4uLl0iCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzoyNworbXNnaWQgImdpdCBkZXNjcmliZSBbPG9wdGlvbnM+XSAtLWRpcnR5IgorbXNnc3RyICJnaXQgZGVzY3JpYmUgWzzpgbjpoIU+XSAtLWRpcnR5IgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjIKK21zZ2lkICJoZWFkIgorbXNnc3RyICLpoK0iCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MgorbXNnaWQgImxpZ2h0d2VpZ2h0IgorbXNnc3RyICLovJXph4/ntJrnmoQiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo2MgorbXNnaWQgImFubm90YXRlZCIKK21zZ3N0ciAi6ZmE6Ki755qEIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6Mjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImFubm90YXRlZCB0YWcgJXMgbm90IGF2YWlsYWJsZSIKK21zZ3N0ciAi6ZmE6Ki75qiZ57GkICVzIOeEoeaViCIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjI3OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbm5vdGF0ZWQgdGFnICVzIGhhcyBubyBlbWJlZGRlZCBuYW1lIgorbXNnc3RyICLpmYToqLvmqJnnsaQgJXMg5rKS5pyJ5bWM5YWl5ZCN56ixIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRhZyAnJXMnIGlzIHJlYWxseSAnJXMnIGhlcmUiCittc2dzdHIgIuaomeexpCAnJXMnIOeahOeiuuaYr+WcqCAnJXMnIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6MzI1CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHRhZyBleGFjdGx5IG1hdGNoZXMgJyVzJyIKK21zZ3N0ciAi5rKS5pyJ5qiZ57Gk5rqW56K656ym5ZCIICclcyciCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gZXhhY3QgbWF0Y2ggb24gcmVmcyBvciB0YWdzLCBzZWFyY2hpbmcgdG8gZGVzY3JpYmVcbiIKK21zZ3N0ciAi5rKS5pyJ57K+56K656ym5ZCI5Yiw5byV55So5oiW5qiZ57Gk77yM57m857qM5pCc5bCL6YCy6KGM5o+P6L+wXG4iCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzozOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluaXNoZWQgc2VhcmNoIGF0ICVzXG4iCittc2dzdHIgIuWujOaIkOaQnOWwiyAlc1xuIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJObyBhbm5vdGF0ZWQgdGFncyBjYW4gZGVzY3JpYmUgJyVzJy5cbiIKKyJIb3dldmVyLCB0aGVyZSB3ZXJlIHVuYW5ub3RhdGVkIHRhZ3M6IHRyeSAtLXRhZ3MuIgorbXNnc3RyICIiCisi5rKS5pyJ6ZmE6Ki75qiZ57Gk6IO95o+P6L+wICclcyfjgIJcbiIKKyLnhLbogIzvvIzlrZjlnKjmnKrpmYToqLvmqJnnsaTvvJrlmJfoqaYgLS10YWdz44CCIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJObyB0YWdzIGNhbiBkZXNjcmliZSAnJXMnLlxuIgorIlRyeSAtLWFsd2F5cywgb3IgY3JlYXRlIHNvbWUgdGFncy4iCittc2dzdHIgIiIKKyLmspLmnInmqJnnsaTog73mj4/ov7AgJyVzJ+OAglxuIgorIuWYl+ippiAtLWFsd2F5c++8jOaIluiAheW7uueri+S4gOS6m+aomeexpOOAgiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmF2ZXJzZWQgJWx1IGNvbW1pdHNcbiIKK21zZ3N0ciAi5bey6YGN5q23ICVsdSDlgIvmj5DkuqRcbiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibW9yZSB0aGFuICVpIHRhZ3MgZm91bmQ7IGxpc3RlZCAlaSBtb3N0IHJlY2VudFxuIgorImdhdmUgdXAgc2VhcmNoIGF0ICVzXG4iCittc2dzdHIgIiIKKyLnmbznj77lpJrmlrwgJWkg5YCL5qiZ57Gk77yM5YiX5Ye65pyA6L+R55qEICVpIOWAi1xuIgorIuWcqCAlcyDmlL7mo4TmkJzlsItcbiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJkZXNjcmliZSAlc1xuIgorbXNnc3RyICLmj4/ov7AgJXNcbiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjUyOQorIywgYy1mb3JtYXQKK21zZ2lkICJOb3QgYSB2YWxpZCBvYmplY3QgbmFtZSAlcyIKK21zZ3N0ciAi5LiN5piv5LiA5YCL5pyJ5pWI55qE54mp5Lu25ZCNICVzIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5laXRoZXIgYSBjb21taXQgbm9yIGJsb2IiCittc2dzdHIgIiVzIOaXouS4jeaYr+aPkOS6pOS5n+S4jeaYr+izh+aWmeeJqeS7tiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MQorbXNnaWQgImZpbmQgdGhlIHRhZyB0aGF0IGNvbWVzIGFmdGVyIHRoZSBjb21taXQiCittc2dzdHIgIuWwi+aJvuipsuaPkOS6pOS5i+W+jOeahOaomeexpCIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MgorbXNnaWQgImRlYnVnIHNlYXJjaCBzdHJhdGVneSBvbiBzdGRlcnIiCittc2dzdHIgIuWcqOaomea6lumMr+iqpOS4iumZpOmMr+aQnOWwi+etlueVpSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU1MworbXNnaWQgInVzZSBhbnkgcmVmIgorbXNnc3RyICLkvb/nlKjku7vmhI/lvJXnlKgiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTQKK21zZ2lkICJ1c2UgYW55IHRhZywgZXZlbiB1bmFubm90YXRlZCIKK21zZ3N0ciAi5L2/55So5Lu75oSP5qiZ57Gk77yM5Y2z5L2/5pyq6ZmE5bi25YKZ6Ki7IgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU1Cittc2dpZCAiYWx3YXlzIHVzZSBsb25nIGZvcm1hdCIKK21zZ3N0ciAi5aeL57WC5L2/55So6ZW35o+Q5Lqk6Jmf5qC85byPIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTU2Cittc2dpZCAib25seSBmb2xsb3cgZmlyc3QgcGFyZW50IgorbXNnc3RyICLlj6rot5/pmqjnrKzkuIDlgIvniLbmj5DkuqQiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NTkKK21zZ2lkICJvbmx5IG91dHB1dCBleGFjdCBtYXRjaGVzIgorbXNnc3RyICLlj6rovLjlh7rnsr7norrnrKblkIgiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjEKK21zZ2lkICJjb25zaWRlciA8bj4gbW9zdCByZWNlbnQgdGFncyAoZGVmYXVsdDogMTApIgorbXNnc3RyICLogIPmha7mnIDov5EgPG4+IOWAi+aomeexpO+8iOmgkOiore+8mjEw77yJIgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NTYzCittc2dpZCAib25seSBjb25zaWRlciB0YWdzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKK21zZ3N0ciAi5Y+q6ICD5oWu56ym5ZCIIDzmqKHlvI8+IOeahOaomeexpCIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2NQorbXNnaWQgImRvIG5vdCBjb25zaWRlciB0YWdzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKK21zZ3N0ciAi5LiN6ICD5oWu56ym5ZCIIDzmqKHlvI8+IOeahOaomeexpCIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2NyBidWlsdGluL25hbWUtcmV2LmM6NTM1Cittc2dpZCAic2hvdyBhYmJyZXZpYXRlZCBjb21taXQgb2JqZWN0IGFzIGZhbGxiYWNrIgorbXNnc3RyICLpoa/npLrnsKHlr6vnmoTmj5DkuqTomZ/kvZzngrrlvozlgpkiCisKKyM6IGJ1aWx0aW4vZGVzY3JpYmUuYzo1NjggYnVpbHRpbi9kZXNjcmliZS5jOjU3MQorbXNnaWQgIm1hcmsiCittc2dzdHIgIuaomeiomCIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU2OQorbXNnaWQgImFwcGVuZCA8bWFyaz4gb24gZGlydHkgd29ya2luZyB0cmVlIChkZWZhdWx0OiBcIi1kaXJ0eVwiKSIKK21zZ3N0ciAi5bCN5pa86auS5bel5L2c5Y2A77yM6L+95YqgIDzmqJnoqJg+77yI6aCQ6Kit77yaXCItZGlydHlcIu+8iSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU3MgorbXNnaWQgImFwcGVuZCA8bWFyaz4gb24gYnJva2VuIHdvcmtpbmcgdHJlZSAoZGVmYXVsdDogXCItYnJva2VuXCIpIgorbXNnc3RyICLlsI3mlrzmkI3lo57nmoTlt6XkvZzljYDvvIzov73liqAgPOaomeiomD7vvIjpoJDoqK3vvJpcIi1icm9rZW5cIu+8iSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjU5MAorbXNnaWQgIi0tbG9uZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFiYnJldj0wIgorbXNnc3RyICItLWxvbmcg6IiHIC0tYWJicmV2PTAg5LiN55u45a65IgorCisjOiBidWlsdGluL2Rlc2NyaWJlLmM6NjE5Cittc2dpZCAiTm8gbmFtZXMgZm91bmQsIGNhbm5vdCBkZXNjcmliZSBhbnl0aGluZy4iCittc2dzdHIgIuaykuacieeZvOePvuWQjeeose+8jOeEoeazleaPj+i/sOS7u+S9leadseilv+OAgiIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjY3MAorbXNnaWQgIi0tZGlydHkgaXMgaW5jb21wYXRpYmxlIHdpdGggY29tbWl0LWlzaGVzIgorbXNnc3RyICItLWRpcnR5IOiIh+aPkOS6pOiZn+S4jeebuOWuuSIKKworIzogYnVpbHRpbi9kZXNjcmliZS5jOjY3MgorbXNnaWQgIi0tYnJva2VuIGlzIGluY29tcGF0aWJsZSB3aXRoIGNvbW1pdC1pc2hlcyIKK21zZ3N0ciAiLS1icm9rZW4g6IiH5o+Q5Lqk6Jmf5LiN55u45a65IgorCisjOiBidWlsdGluL2RpZmYuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnOiBub3QgYSByZWd1bGFyIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiJyVzJ++8muS4jeaYr+S4gOWAi+ato+imj+aqlOahiOaIluespuiZn+mAo+e1kCIKKworIzogYnVpbHRpbi9kaWZmLmM6MjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgb3B0aW9uOiAlcyIKK21zZ3N0ciAi54Sh5pWI6YG46aCF77yaJXMiCisKKyM6IGJ1aWx0aW4vZGlmZi5jOjM1MAorbXNnaWQgIk5vdCBhIGdpdCByZXBvc2l0b3J5IgorbXNnc3RyICLkuI3mmK/kuIDlgIsgZ2l0IOeJiOacrOW6qyIKKworIzogYnVpbHRpbi9kaWZmLmM6Mzk0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgb2JqZWN0ICclcycgZ2l2ZW4uIgorbXNnc3RyICLmj5DkvpvkuobnhKHmlYjnianku7YgJyVzJ+OAgiIKKworIzogYnVpbHRpbi9kaWZmLmM6NDAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm1vcmUgdGhhbiB0d28gYmxvYnMgZ2l2ZW46ICclcyciCittc2dzdHIgIuaPkOS+m+S6hui2hemBjuWFqeWAi+izh+aWmeeJqeS7tu+8miclcyciCisKKyM6IGJ1aWx0aW4vZGlmZi5jOjQwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmhhbmRsZWQgb2JqZWN0ICclcycgZ2l2ZW4uIgorbXNnc3RyICLnhKHms5XomZXnkIbnmoTnianku7YgJyVzJ+OAgiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjMwCittc2dpZCAiZ2l0IGRpZmZ0b29sIFs8b3B0aW9ucz5dIFs8Y29tbWl0PiBbPGNvbW1pdD5dXSBbLS1dIFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgZGlmZnRvb2wgWzzpgbjpoIU+XSBbPOaPkOS6pD4gWzzmj5DkuqQ+XV0gWy0tXSBbPOi3r+W+kT4uLi5dIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZDogJWQiCittc2dzdHIgIuWkseaVl++8miVkIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6MzAyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIHN5bWxpbmsgJXMiCittc2dzdHIgIueEoeazleiugOWPluespuiZn+mAo+e1kCAlcyIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBzeW1saW5rIGZpbGUgJXMiCittc2dzdHIgIueEoeazleiugOWPluespuiZn+mAo+e1kOaqlOahiCAlcyIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVhZCBvYmplY3QgJXMgZm9yIHN5bWxpbmsgJXMiCittc2dzdHIgIueEoeazleiugOWPluespuiZn+mAo+e1kCAlMiRzIOaMh+WQkeeahOeJqeS7tiAlMSRzIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NDEzCittc2dpZCAiIgorImNvbWJpbmVkIGRpZmYgZm9ybWF0cygnLWMnIGFuZCAnLS1jYycpIGFyZSBub3Qgc3VwcG9ydGVkIGluXG4iCisiZGlyZWN0b3J5IGRpZmYgbW9kZSgnLWQnIGFuZCAnLS1kaXItZGlmZicpLiIKK21zZ3N0ciAiIgorIuS4jeaUr+aPtOWcqOebrumMhOavlOi8g+aooeW8j++8iCctZCcg5ZKMICctLWRpci1kaWZmJ++8ieS4reaOoeeUqOe1hOWQiOW3rueVsOagvOW8j++8iCctYycg5ZKMICctLSIKKyJjYyfvvInjgIIiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYm90aCBmaWxlcyBtb2RpZmllZDogJyVzJyBhbmQgJyVzJy4iCittc2dzdHIgIuWFqeWAi+aqlOahiOmDveiiq+S/ruaUue+8miclcycg5ZKMICclcyfjgIIiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2MzYKK21zZ2lkICJ3b3JraW5nIHRyZWUgZmlsZSBoYXMgYmVlbiBsZWZ0LiIKK21zZ3N0ciAi5bel5L2c5Y2A5qqU5qGI6KKr55WZ5LqG5LiL5L6G44CCIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInRlbXBvcmFyeSBmaWxlcyBleGlzdCBpbiAnJXMnLiIKK21zZ3N0ciAi5pqr5a2Y5qqU5a2Y5Zyo5pa8ICclcyfjgIIiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2NDgKK21zZ2lkICJ5b3UgbWF5IHdhbnQgdG8gY2xlYW51cCBvciByZWNvdmVyIHRoZXNlLiIKK21zZ3N0ciAi5oKo5Y+v6IO95oOz6KaB5riF55CG5oiW6ICF5b6p5Y6f5a6D5YCR44CCIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6Njk3Cittc2dpZCAidXNlIGBkaWZmLmd1aXRvb2xgIGluc3RlYWQgb2YgYGRpZmYudG9vbGAiCittc2dzdHIgIuS9v+eUqCBgZGlmZi5ndWl0b29sYCDku6Pmm78gYGRpZmYudG9vbGAiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo2OTkKK21zZ2lkICJwZXJmb3JtIGEgZnVsbC1kaXJlY3RvcnkgZGlmZiIKK21zZ3N0ciAi5Z+36KGM5LiA5YCL5YWo55uu6YyE5beu55Ww5q+U6LyDIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzAxCittc2dpZCAiZG8gbm90IHByb21wdCBiZWZvcmUgbGF1bmNoaW5nIGEgZGlmZiB0b29sIgorbXNnc3RyICLllZ/li5Xlt67nlbDmr5TovIPlt6XlhbfkuYvliY3kuI3mj5DnpLoiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MDYKK21zZ2lkICJ1c2Ugc3ltbGlua3MgaW4gZGlyLWRpZmYgbW9kZSIKK21zZ3N0ciAi5ZyoIGRpci1kaWZmIOaooeW8j+S4reS9v+eUqOespuiZn+mAo+e1kCIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwNworbXNnaWQgInRvb2wiCittc2dzdHIgIuW3peWFtyIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcwOAorbXNnaWQgInVzZSB0aGUgc3BlY2lmaWVkIGRpZmYgdG9vbCIKK21zZ3N0ciAi5L2/55So5oyH5a6a55qE5beu55Ww5q+U6LyD5bel5YW3IgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEwCittc2dpZCAicHJpbnQgYSBsaXN0IG9mIGRpZmYgdG9vbHMgdGhhdCBtYXkgYmUgdXNlZCB3aXRoIGAtLXRvb2xgIgorbXNnc3RyICLpoa/npLrlj6/ku6XnlKjlnKggYC0tdG9vbGAg5Y+D5pW45b6M55qE5beu55Ww5bel5YW35YiX6KGoIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzEzCittc2dpZCAiIgorIm1ha2UgJ2dpdC1kaWZmdG9vbCcgZXhpdCB3aGVuIGFuIGludm9rZWQgZGlmZiB0b29sIHJldHVybnMgYSBub24gLSB6ZXJvIGV4aXQgIgorImNvZGUiCittc2dzdHIgIueVtuWft+ihjCBkaWZmIOW3peWFt+i/lOWbnumdnumbtumboumWi+eivOaZgu+8jOS9vyAnZ2l0LWRpZmZ0b29sJyDpm6LplosiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MTYKK21zZ2lkICJzcGVjaWZ5IGEgY3VzdG9tIGNvbW1hbmQgZm9yIHZpZXdpbmcgZGlmZnMiCittc2dzdHIgIuaMh+WumuS4gOWAi+eUqOaWvOaqouimluW3rueVsOeahOiHquioguaMh+S7pCIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjcxNworbXNnaWQgInBhc3NlZCB0byBgZGlmZmAiCittc2dzdHIgIuWCs+mBnue1piBgZGlmZmAiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3MzIKK21zZ2lkICJkaWZmdG9vbCByZXF1aXJlcyB3b3JrdHJlZSBvciAtLW5vLWluZGV4IgorbXNnc3RyICJkaWZmdG9vbCDopoHmsYLlt6XkvZzljYDmiJbogIUgLS1uby1pbmRleCIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjczOQorbXNnaWQgIi0tZGlyLWRpZmYgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1uby1pbmRleCIKK21zZ3N0ciAiLS1kaXItZGlmZiDlkowgLS1uby1pbmRleCDkuI3nm7jlrrkiCisKKyM6IGJ1aWx0aW4vZGlmZnRvb2wuYzo3NDIKK21zZ2lkICItLWd1aSwgLS10b29sIGFuZCAtLWV4dGNtZCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICItLWd1aeOAgS0tdG9vbCDlkowgLS1leHRjbWQg5LqS5palIgorCisjOiBidWlsdGluL2RpZmZ0b29sLmM6NzUwCittc2dpZCAibm8gPHRvb2w+IGdpdmVuIGZvciAtLXRvb2w9PHRvb2w+IgorbXNnc3RyICLmspLmnInngrogLS10b29sPTzlt6Xlhbc+IOWPg+aVuOaPkOS+myA85bel5YW3PiIKKworIzogYnVpbHRpbi9kaWZmdG9vbC5jOjc1NworbXNnaWQgIm5vIDxjbWQ+IGdpdmVuIGZvciAtLWV4dGNtZD08Y21kPiIKK21zZ3N0ciAi5rKS5pyJ54K6IC0tZXh0Y21kPTzmjIfku6Q+IOWPg+aVuOaPkOS+myA85oyH5LukPiIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjYKK21zZ2lkICJnaXQgZW52LS1oZWxwZXIgLS10eXBlPVtib29sfHVsb25nXSA8b3B0aW9ucz4gPGVudi12YXI+IgorbXNnc3RyICJnaXQgZW52LS1oZWxwZXIgLS10eXBlPVtib29sfHVsb25nXSA86YG46aCFPiA855Kw5aKD6K6K5pW4PiIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjM3IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo5OAorbXNnaWQgInR5cGUiCittc2dzdHIgIumhnuWeiyIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjQxCittc2dpZCAiZGVmYXVsdCBmb3IgZ2l0X2Vudl8qKC4uLikgdG8gZmFsbCBiYWNrIG9uIgorbXNnc3RyICJnaXRfZW52XyooLi4uKSDnmoTpoJDoqK3lgLwiCisKKyM6IGJ1aWx0aW4vZW52LS1oZWxwZXIuYzo0MworbXNnaWQgImJlIHF1aWV0IG9ubHkgdXNlIGdpdF9lbnZfKigpIHZhbHVlIGFzIGV4aXQgY29kZSIKK21zZ3N0ciAi5a6J6Z2c5qih5byP77yM5Y+q5L2/55SoIGdpdF9lbnZfKigpIOeahOWAvOS9nOeCuumboumWi+eivCIKKworIzogYnVpbHRpbi9lbnYtLWhlbHBlci5jOjYyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgLS1kZWZhdWx0JyBleHBlY3RzIGEgYm9vbGVhbiB2YWx1ZSB3aXRoIGAtLXR5cGU9Ym9vbGAsIG5vdCBgJXNgIgorbXNnc3RyICLpgbjpoIUgYC0tZGVmYXVsdCcg5ZKMIGB0eXBlPWJvb2xgIOacn+acm+S4gOWAi+W4g+ael+WAvO+8jOS4jeaYryBgJXNgIgorCisjOiBidWlsdGluL2Vudi0taGVscGVyLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9wdGlvbiBgLS1kZWZhdWx0JyBleHBlY3RzIGFuIHVuc2lnbmVkIGxvbmcgdmFsdWUgd2l0aCBgLS10eXBlPXVsb25nYCwgbm90IGAiCisiJXNgIgorbXNnc3RyICLpgbjpoIUgYC0tZGVmYXVsdCcg5ZKMIGB0eXBlPXVsb25nYCDmnJ/mnJvkuIDlgIvnhKHnrKbomZ/plbfmlbTlnovvvIzkuI3mmK8gYCVzYCIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjI5Cittc2dpZCAiZ2l0IGZhc3QtZXhwb3J0IFtyZXYtbGlzdC1vcHRzXSIKK21zZ3N0ciAiZ2l0IGZhc3QtZXhwb3J0IFtyZXYtbGlzdC1vcHRzXSIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjg1MworbXNnaWQgIkVycm9yOiBDYW5ub3QgZXhwb3J0IG5lc3RlZCB0YWdzIHVubGVzcyAtLW1hcmstdGFncyBpcyBzcGVjaWZpZWQuIgorbXNnc3RyICLpjK/oqqTvvJrpmaTpnZ7mjIflrpogLS1tYXJrLXRhZ3PvvIzlkKbliYfnhKHms5XljK/lh7rltYzlpZfmqJnnsaTjgIIiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTUyCittc2dpZCAic2hvdyBwcm9ncmVzcyBhZnRlciA8bj4gb2JqZWN0cyIKK21zZ3N0ciAi5ZyoIDxuPiDlgIvnianku7bkuYvlvozpoa/npLrpgLLluqYiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTU0Cittc2dpZCAic2VsZWN0IGhhbmRsaW5nIG9mIHNpZ25lZCB0YWdzIgorbXNnc3RyICLpgbjmk4flpoLkvZXomZXnkIbnsL3lkI3mqJnnsaQiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTU3Cittc2dpZCAic2VsZWN0IGhhbmRsaW5nIG9mIHRhZ3MgdGhhdCB0YWcgZmlsdGVyZWQgb2JqZWN0cyIKK21zZ3N0ciAi6YG45pOH55W25qiZ57Gk5oyH5ZCR6KKr6YGO5r++54mp5Lu25pmC6Kmy5qiZ57Gk55qE6JmV55CG5pa55byPIgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE2MAorbXNnaWQgInNlbGVjdCBoYW5kbGluZyBvZiBjb21taXQgbWVzc2FnZXMgaW4gYW4gYWx0ZXJuYXRlIGVuY29kaW5nIgorbXNnc3RyICLpgbjmk4fkvb/nlKjlgpnnlKjnt6jnorzomZXnkIbmj5DkuqToqqrmmI4iCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTYzCittc2dpZCAiRHVtcCBtYXJrcyB0byB0aGlzIGZpbGUiCittc2dzdHIgIuaKiuaomeiomOWEsuWtmOWIsOmAmeWAi+aqlOahiCIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjUKK21zZ2lkICJJbXBvcnQgbWFya3MgZnJvbSB0aGlzIGZpbGUiCittc2dzdHIgIuW+numAmeWAi+aqlOahiOWMr+WFpeaomeiomCIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNjkKK21zZ2lkICJJbXBvcnQgbWFya3MgZnJvbSB0aGlzIGZpbGUgaWYgaXQgZXhpc3RzIgorbXNnc3RyICLlvp7oqbLmqpTmoYjljK/lhaXmqJnoqJjvvIjlpoLmnpzlrZjlnKjnmoToqbHvvIkiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTcxCittc2dpZCAiRmFrZSBhIHRhZ2dlciB3aGVuIHRhZ3MgbGFjayBvbmUiCittc2dzdHIgIueVtuaomeexpOe8uuWwkeaomeiomOiAheashOS9jeaZgu+8jOWBh+ijneaPkOS+m+S4gOWAiyIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzMKK21zZ2lkICJPdXRwdXQgZnVsbCB0cmVlIGZvciBlYWNoIGNvbW1pdCIKK21zZ3N0ciAi5q+P5qyh5o+Q5Lqk6YO96Ly45Ye65pW05YCL5qi5IgorCisjOiBidWlsdGluL2Zhc3QtZXhwb3J0LmM6MTE3NQorbXNnaWQgIlVzZSB0aGUgZG9uZSBmZWF0dXJlIHRvIHRlcm1pbmF0ZSB0aGUgc3RyZWFtIgorbXNnc3RyICLkvb/nlKggZG9uZSDlip/og73kvobntYLmraLmtYEiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc2Cittc2dpZCAiU2tpcCBvdXRwdXQgb2YgYmxvYiBkYXRhIgorbXNnc3RyICLot7PpgY7os4fmlpnnianku7bnmoTovLjlh7oiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTc3IGJ1aWx0aW4vbG9nLmM6MTcwNQorbXNnaWQgInJlZnNwZWMiCittc2dzdHIgIuW8leeUqOimj+agvCIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzgKK21zZ2lkICJBcHBseSByZWZzcGVjIHRvIGV4cG9ydGVkIHJlZnMiCittc2dzdHIgIuWwjeWMr+WHuueahOW8leeUqOaHieeUqOW8leeUqOimj+agvCIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExNzkKK21zZ2lkICJhbm9ueW1pemUgb3V0cHV0IgorbXNnc3RyICLljL/lkI3ovLjlh7oiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMTgxCittc2dpZCAiUmVmZXJlbmNlIHBhcmVudHMgd2hpY2ggYXJlIG5vdCBpbiBmYXN0LWV4cG9ydCBzdHJlYW0gYnkgb2JqZWN0IGlkIgorbXNnc3RyICLlvJXnlKjniLbnianku7YgSUQg5LiN5ZyoIGZhc3QtZXhwb3J0IOa1geS4rSIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODMKK21zZ2lkICJTaG93IG9yaWdpbmFsIG9iamVjdCBpZHMgb2YgYmxvYnMvY29tbWl0cyIKK21zZ3N0ciAi6aGv56S66LOH5paZ54mp5Lu2L+aPkOS6pOeahOWOn+Wni+eJqeS7tiBJRCIKKworIzogYnVpbHRpbi9mYXN0LWV4cG9ydC5jOjExODUKK21zZ2lkICJMYWJlbCB0YWdzIHdpdGggbWFyayBpZHMiCittc2dzdHIgIuWwjeW4tuacieaomeiomCBJRCDnmoTmqJnnsaTlgZrmqJnoqJgiCisKKyM6IGJ1aWx0aW4vZmFzdC1leHBvcnQuYzoxMjIwCittc2dpZCAiQ2Fubm90IHBhc3MgYm90aCAtLWltcG9ydC1tYXJrcyBhbmQgLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzIgorbXNnc3RyICLkuI3og73lkIzmmYLlgrPpgZ7lj4PmlbggLS1pbXBvcnQtbWFya3Mg5ZKMIC0taW1wb3J0LW1hcmtzLWlmLWV4aXN0cyIKKworIzogYnVpbHRpbi9mZXRjaC5jOjM0Cittc2dpZCAiZ2l0IGZldGNoIFs8b3B0aW9ucz5dIFs8cmVwb3NpdG9yeT4gWzxyZWZzcGVjPi4uLl1dIgorbXNnc3RyICJnaXQgZmV0Y2ggWzzpgbjpoIU+XSBbPOeJiOacrOW6qz4gWzzlvJXnlKjopo/moLw+Li4uXV0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNQorbXNnaWQgImdpdCBmZXRjaCBbPG9wdGlvbnM+XSA8Z3JvdXA+IgorbXNnc3RyICJnaXQgZmV0Y2ggWzzpgbjpoIU+XSA857WEPiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjM2Cittc2dpZCAiZ2l0IGZldGNoIC0tbXVsdGlwbGUgWzxvcHRpb25zPl0gWyg8cmVwb3NpdG9yeT4gfCA8Z3JvdXA+KS4uLl0iCittc2dzdHIgImdpdCBmZXRjaCAtLW11bHRpcGxlIFs86YG46aCFPl0gWyg854mI5pys5bqrPiB8IDzntYQ+KS4uLl0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzozNworbXNnaWQgImdpdCBmZXRjaCAtLWFsbCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IGZldGNoIC0tYWxsIFs86YG46aCFPl0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTYKK21zZ2lkICJmZXRjaC5wYXJhbGxlbCBjYW5ub3QgYmUgbmVnYXRpdmUiCittc2dzdHIgImZldGNoLnBhcmFsbGVsIOS4jeiDveeCuuiyoOaVuCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjEzOSBidWlsdGluL3B1bGwuYzoxODQKK21zZ2lkICJmZXRjaCBmcm9tIGFsbCByZW1vdGVzIgorbXNnc3RyICLlvp7miYDmnInnmoTpgaDnq6/mipPlj5YiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDEgYnVpbHRpbi9wdWxsLmM6MjI4Cittc2dpZCAic2V0IHVwc3RyZWFtIGZvciBnaXQgcHVsbC9mZXRjaCIKK21zZ3N0ciAi54K6IGdpdCBwdWxsL2ZldGNoIOioreWumuS4iua4uCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MyBidWlsdGluL3B1bGwuYzoxODcKK21zZ2lkICJhcHBlbmQgdG8gLmdpdC9GRVRDSF9IRUFEIGluc3RlYWQgb2Ygb3ZlcndyaXRpbmciCittc2dzdHIgIui/veWKoOWIsCAuZ2l0L0ZFVENIX0hFQUQg6ICM5LiN5piv6KaG6JOL5a6DIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ1IGJ1aWx0aW4vcHVsbC5jOjE5MAorbXNnaWQgInBhdGggdG8gdXBsb2FkIHBhY2sgb24gcmVtb3RlIGVuZCIKK21zZ3N0ciAi5LiK5YKz5YyF5Yiw6YGg56uv55qE6Lev5b6RIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ2Cittc2dpZCAiZm9yY2Ugb3ZlcndyaXRlIG9mIGxvY2FsIHJlZmVyZW5jZSIKK21zZ3N0ciAi5by35Yi26KaG6JOL5pys5qmf5byV55SoIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ4Cittc2dpZCAiZmV0Y2ggZnJvbSBtdWx0aXBsZSByZW1vdGVzIgorbXNnc3RyICLlvp7lpJrlgIvpgaDnq6/mipPlj5YiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTAgYnVpbHRpbi9wdWxsLmM6MTk0Cittc2dpZCAiZmV0Y2ggYWxsIHRhZ3MgYW5kIGFzc29jaWF0ZWQgb2JqZWN0cyIKK21zZ3N0ciAi5oqT5Y+W5omA5pyJ55qE5qiZ57Gk5ZKM6Zec6IGv54mp5Lu2IgorCisjOiBidWlsdGluL2ZldGNoLmM6MTUyCittc2dpZCAiZG8gbm90IGZldGNoIGFsbCB0YWdzICgtLW5vLXRhZ3MpIgorbXNnc3RyICLkuI3mipPlj5bku7vkvZXmqJnnsaQoLS1uby10YWdzKSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE1NAorbXNnaWQgIm51bWJlciBvZiBzdWJtb2R1bGVzIGZldGNoZWQgaW4gcGFyYWxsZWwiCittc2dzdHIgIuWtkOaooee1hOWPluW+l+eahOS4pueZvOaVuCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE1NiBidWlsdGluL3B1bGwuYzoxOTcKK21zZ2lkICJwcnVuZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoZXMgbm8gbG9uZ2VyIG9uIHJlbW90ZSIKK21zZ3N0ciAi5riF6Zmk6YGg56uv5bey57aT5LiN5a2Y5Zyo55qE5YiG5pSv55qE6L+96Lmk5YiG5pSvIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTU4Cittc2dpZCAicHJ1bmUgbG9jYWwgdGFncyBubyBsb25nZXIgb24gcmVtb3RlIGFuZCBjbG9iYmVyIGNoYW5nZWQgdGFncyIKK21zZ3N0ciAi5riF6Zmk6YGg56uv5LiN5a2Y5Zyo55qE5pys5qmf5qiZ57Gk77yM5Lim5LiU5Y+W5Luj6K6K5pu05qiZ57GkIgorCisjICDora/ogIXvvJrlj6/pgbjlgLzvvIzkuI3og73nv7vora8KKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTkgYnVpbHRpbi9mZXRjaC5jOjE4MiBidWlsdGluL3B1bGwuYzoxMjEKK21zZ2lkICJvbi1kZW1hbmQiCittc2dzdHIgIm9uLWRlbWFuZCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE2MAorbXNnaWQgImNvbnRyb2wgcmVjdXJzaXZlIGZldGNoaW5nIG9mIHN1Ym1vZHVsZXMiCittc2dzdHIgIuaOp+WItuWtkOaooee1hOeahOmBnui/tOaKk+WPliIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE2NCBidWlsdGluL3B1bGwuYzoyMDUKK21zZ2lkICJrZWVwIGRvd25sb2FkZWQgcGFjayIKK21zZ3N0ciAi5L+d5oyB5LiL6LyJ5YyFIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTY2Cittc2dpZCAiYWxsb3cgdXBkYXRpbmcgb2YgSEVBRCByZWYiCittc2dzdHIgIuWFgeioseabtOaWsCBIRUFEIOW8leeUqCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE2OSBidWlsdGluL2ZldGNoLmM6MTc1IGJ1aWx0aW4vcHVsbC5jOjIwOAorbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgY2xvbmUiCittc2dzdHIgIua3seWMlua3uuikh+ijveeahOatt+WPsiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE3MQorbXNnaWQgImRlZXBlbiBoaXN0b3J5IG9mIHNoYWxsb3cgcmVwb3NpdG9yeSBiYXNlZCBvbiB0aW1lIgorbXNnc3RyICLln7rmlrzmmYLplpPkvobmt7HljJbmt7ropIfoo73nmoTmrbflj7IiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzcgYnVpbHRpbi9wdWxsLmM6MjExCittc2dpZCAiY29udmVydCB0byBhIGNvbXBsZXRlIHJlcG9zaXRvcnkiCittc2dzdHIgIui9ieaPm+eCuuS4gOWAi+WujOaVtOeahOeJiOacrOW6qyIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE4MAorbXNnaWQgInByZXBlbmQgdGhpcyB0byBzdWJtb2R1bGUgcGF0aCBvdXRwdXQiCittc2dzdHIgIuWcqOWtkOaooee1hOi3r+W+kei8uOWHuueahOWJjemdouWKoOS4iuatpOebrumMhCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE4MworbXNnaWQgIiIKKyJkZWZhdWx0IGZvciByZWN1cnNpdmUgZmV0Y2hpbmcgb2Ygc3VibW9kdWxlcyAobG93ZXIgcHJpb3JpdHkgdGhhbiBjb25maWcgIgorImZpbGVzKSIKK21zZ3N0ciAi6YGe6L+05Y+W5b6X5a2Q5qih57WE55qE6aCQ6Kit5YC877yI5q+U6Kit5a6a5qqU5qGI5YSq5YWI5bqm5L2O77yJIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTg3IGJ1aWx0aW4vcHVsbC5jOjIxNAorbXNnaWQgImFjY2VwdCByZWZzIHRoYXQgdXBkYXRlIC5naXQvc2hhbGxvdyIKK21zZ3N0ciAi5o6l5Y+X5pu05pawIC5naXQvc2hhbGxvdyDnmoTlvJXnlKgiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODggYnVpbHRpbi9wdWxsLmM6MjE2Cittc2dpZCAicmVmbWFwIgorbXNnc3RyICLlvJXnlKjmmKDlsIQiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODkgYnVpbHRpbi9wdWxsLmM6MjE3Cittc2dpZCAic3BlY2lmeSBmZXRjaCByZWZtYXAiCittc2dzdHIgIuaMh+WumuWPluW+l+WLleS9nOeahOW8leeUqOaYoOWwhCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE5NgorbXNnaWQgInJlcG9ydCB0aGF0IHdlIGhhdmUgb25seSBvYmplY3RzIHJlYWNoYWJsZSBmcm9tIHRoaXMgb2JqZWN0IgorbXNnc3RyICLloLHlkYrmiJHlgJHlj6rmk4HmnInlvp7oqbLnianku7bplovlp4vlj6/ku6Xlj5blvpfnmoTnianku7YiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxOTkKK21zZ2lkICJydW4gJ2djIC0tYXV0bycgYWZ0ZXIgZmV0Y2hpbmciCittc2dzdHIgIuWPluW+l+W+jOWft+ihjCAnZ2MgLS1hdXRvJyIKKworIzogYnVpbHRpbi9mZXRjaC5jOjIwMSBidWlsdGluL3B1bGwuYzoyMjYKK21zZ2lkICJjaGVjayBmb3IgZm9yY2VkLXVwZGF0ZXMgb24gYWxsIHVwZGF0ZWQgYnJhbmNoZXMiCittc2dzdHIgIuWcqOaJgOacieabtOaWsOWIhuaUr+S4iuaqouafpeW8t+WItuabtOaWsCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjIwMworbXNnaWQgIndyaXRlIHRoZSBjb21taXQtZ3JhcGggYWZ0ZXIgZmV0Y2hpbmciCittc2dzdHIgIuaKk+WPluW+jOWvq+WFpeWIhuaUr+WcliIKKworIzogYnVpbHRpbi9mZXRjaC5jOjUxMworbXNnaWQgIkNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiBIRUFEIgorbXNnc3RyICLnhKHms5Xnmbznj77pgaDnq68gSEVBRCDlvJXnlKgiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo2NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBmZXRjaC5vdXRwdXQgY29udGFpbnMgaW52YWxpZCB2YWx1ZSAlcyIKK21zZ3N0ciAi6Kit5a6a6K6K5pW4IGZldGNoLm91dHB1dCDljIXlkKvnhKHmlYjlgLwgJXMiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0ICVzIG5vdCBmb3VuZCIKK21zZ3N0ciAi54mp5Lu2ICVzIOacqueZvOePviIKKworIzogYnVpbHRpbi9mZXRjaC5jOjc1NQorbXNnaWQgIlt1cCB0byBkYXRlXSIKK21zZ3N0ciAiW+acgOaWsF0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NjggYnVpbHRpbi9mZXRjaC5jOjc4NCBidWlsdGluL2ZldGNoLmM6ODU2Cittc2dpZCAiW3JlamVjdGVkXSIKK21zZ3N0ciAiW+W3suaLkue1lV0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo3NjkKK21zZ2lkICJjYW4ndCBmZXRjaCBpbiBjdXJyZW50IGJyYW5jaCIKK21zZ3N0ciAi55uu5YmN5YiG5pSv5LiL5LiN6IO95Z+36KGM5Y+W5b6X5YuV5L2cIgorCisjOiBidWlsdGluL2ZldGNoLmM6Nzc5Cittc2dpZCAiW3RhZyB1cGRhdGVdIgorbXNnc3RyICJb5qiZ57Gk5pu05pawXSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjc4MCBidWlsdGluL2ZldGNoLmM6ODE3IGJ1aWx0aW4vZmV0Y2guYzo4MzkKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4NTEKK21zZ2lkICJ1bmFibGUgdG8gdXBkYXRlIGxvY2FsIHJlZiIKK21zZ3N0ciAi5LiN6IO95pu05paw5pys5qmf5byV55SoIgorCisjOiBidWlsdGluL2ZldGNoLmM6Nzg0Cittc2dpZCAid291bGQgY2xvYmJlciBleGlzdGluZyB0YWciCittc2dzdHIgIuacg+egtOWjnuePvuacieeahOaomeexpCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjgwNgorbXNnaWQgIltuZXcgdGFnXSIKK21zZ3N0ciAiW+aWsOaomeexpF0iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4MDkKK21zZ2lkICJbbmV3IGJyYW5jaF0iCittc2dzdHIgIlvmlrDliIbmlK9dIgorCisjOiBidWlsdGluL2ZldGNoLmM6ODEyCittc2dpZCAiW25ldyByZWZdIgorbXNnc3RyICJb5paw5byV55SoXSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjg1MQorbXNnaWQgImZvcmNlZCB1cGRhdGUiCittc2dzdHIgIuW8t+WItuabtOaWsCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjg1NgorbXNnaWQgIm5vbi1mYXN0LWZvcndhcmQiCittc2dzdHIgIumdnuW/q+i9iSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjg3NworbXNnaWQgIiIKKyJGZXRjaCBub3JtYWxseSBpbmRpY2F0ZXMgd2hpY2ggYnJhbmNoZXMgaGFkIGEgZm9yY2VkIHVwZGF0ZSxcbiIKKyJidXQgdGhhdCBjaGVjayBoYXMgYmVlbiBkaXNhYmxlZC4gVG8gcmUtZW5hYmxlLCB1c2UgJy0tc2hvdy1mb3JjZWQtdXBkYXRlcydcbiIKKyJmbGFnIG9yIHJ1biAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyB0cnVlJy4iCittc2dzdHIgIiIKKyLlj5blvpfli5XkvZzpgJrluLjpoa/npLrlk6rkupvliIbmlK/nmbznlJ/kuoblvLfliLbmm7TmlrDvvIzkvYboqbLmqqLmn6Xlt7LooqvnpoHnlKjjgIJcbiIKKyLopoHph43mlrDllZ/nlKjvvIzoq4vkvb/nlKggJy0tc2hvdy1mb3JjZWQtdXBkYXRlcycg6YG46aCF5oiW5Z+36KGMXG4iCisiJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgdHJ1ZSfjgIIiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo4ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGNoZWNrIGZvcmNlZCB1cGRhdGVzLiBZb3UgY2FuIHVzZVxuIgorIictLW5vLXNob3ctZm9yY2VkLXVwZGF0ZXMnIG9yIHJ1biAnZ2l0IGNvbmZpZyBmZXRjaC5zaG93Rm9yY2VkVXBkYXRlcyAiCisiZmFsc2UnXG4iCisiIHRvIGF2b2lkIHRoaXMgY2hlY2suXG4iCittc2dzdHIgIiIKKyLoirHkuoYgJS4yZiDnp5LkvobmqqLmn6XlvLfliLbmm7TmlrDjgILmgqjlj6/ku6Xkvb/nlKggJy0tbm8tc2hvdy1mb3JjZWQtdXBkYXRlcydcbiIKKyLmiJbln7fooYwgJ2dpdCBjb25maWcgZmV0Y2guc2hvd0ZvcmNlZFVwZGF0ZXMgZmFsc2UnIOS7pemBv+WFjeatpOmgheaqouafpeOAglxuIgorCisjOiBidWlsdGluL2ZldGNoLmM6OTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRpZCBub3Qgc2VuZCBhbGwgbmVjZXNzYXJ5IG9iamVjdHNcbiIKK21zZ3N0ciAiJXMg5pyq5YKz6YCB5omA5pyJ5b+F6ZyA55qE54mp5Lu2XG4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzo5NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVqZWN0ICVzIGJlY2F1c2Ugc2hhbGxvdyByb290cyBhcmUgbm90IGFsbG93ZWQgdG8gYmUgdXBkYXRlZCIKK21zZ3N0ciAi5ouS57WVICVzIOWboOeCuua3uuikh+ijveS4jeWFgeioseiiq+abtOaWsCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjEwMjYgYnVpbHRpbi9mZXRjaC5jOjExNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRnJvbSAlLipzXG4iCittc2dzdHIgIuS+huiHqiAlLipzXG4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMDM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJzb21lIGxvY2FsIHJlZnMgY291bGQgbm90IGJlIHVwZGF0ZWQ7IHRyeSBydW5uaW5nXG4iCisiICdnaXQgcmVtb3RlIHBydW5lICVzJyB0byByZW1vdmUgYW55IG9sZCwgY29uZmxpY3RpbmcgYnJhbmNoZXMiCittc2dzdHIgIiIKKyLkuIDkupvmnKzmqZ/lvJXnlKjkuI3og73ooqvmm7TmlrDvvJvlmJfoqabln7fooYxcbiIKKyIgJ2dpdCByZW1vdGUgcHJ1bmUgJXMnIOS+huWIqumZpOiIiueahOOAgeacieihneeqgeeahOWIhuaUryIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiBidWlsdGluL2ZldGNoLmM6MTEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAoJXMgd2lsbCBiZWNvbWUgZGFuZ2xpbmcpIgorbXNnc3RyICIgICDvvIglcyDlsIfmiJDngrrmh7jnqbrni4DmhYvvvIkiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogYnVpbHRpbi9mZXRjaC5jOjExMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgKCVzIGhhcyBiZWNvbWUgZGFuZ2xpbmcpIgorbXNnc3RyICIgICDvvIglcyDlt7LmiJDngrrmh7jnqbrni4DmhYvvvIkiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTY3Cittc2dpZCAiW2RlbGV0ZWRdIgorbXNnc3RyICJb5bey5Yiq6ZmkXSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjExNjggYnVpbHRpbi9yZW1vdGUuYzoxMTEyCittc2dpZCAiKG5vbmUpIgorbXNnc3RyICLvvIjnhKHvvIkiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxMTkxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlZnVzaW5nIHRvIGZldGNoIGludG8gY3VycmVudCBicmFuY2ggJXMgb2Ygbm9uLWJhcmUgcmVwb3NpdG9yeSIKK21zZ3N0ciAi5ouS57WV5Y+W5b6X5Yiw6Z2e57SU54mI5pys5bqr55qE55uu5YmN5YiG5pSvICVzIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJPcHRpb24gXCIlc1wiIHZhbHVlIFwiJXNcIiBpcyBub3QgdmFsaWQgZm9yICVzIgorbXNnc3RyICLpgbjpoIUgXCIlc1wiIOeahOWAvCBcIiVzXCIg5bCN5pa8ICVzIOaYr+eEoeaViOeahCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiT3B0aW9uIFwiJXNcIiBpcyBpZ25vcmVkIGZvciAlc1xuIgorbXNnc3RyICLpgbjpoIUgXCIlc1wiIOeCuiAlcyDmiYDlv73nlaVcbiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MjEKK21zZ2lkICJtdWx0aXBsZSBicmFuY2hlcyBkZXRlY3RlZCwgaW5jb21wYXRpYmxlIHdpdGggLS1zZXQtdXBzdHJlYW0iCittc2dzdHIgIuaqoua4rOWIsOWkmuWIhuaUr++8jOWSjCAtLXNldC11cHN0cmVhbSDkuI3nm7jlrrkiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDM2Cittc2dpZCAibm90IHNldHRpbmcgdXBzdHJlYW0gZm9yIGEgcmVtb3RlIHJlbW90ZS10cmFja2luZyBicmFuY2giCittc2dzdHIgIuaykuacieeCuuS4gOWAi+mBoOerr+i/vei5pOWIhuaUr+ioreWumuS4iua4uCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE0MzgKK21zZ2lkICJub3Qgc2V0dGluZyB1cHN0cmVhbSBmb3IgYSByZW1vdGUgdGFnIgorbXNnc3RyICLmspLmnInngrrkuIDlgIvpgaDnq6/mqJnnsaToqK3lrprkuIrmuLgiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNDQwCittc2dpZCAidW5rbm93biBicmFuY2ggdHlwZSIKK21zZ3N0ciAi5pyq55+l55qE5YiG5pSv6aGe5Z6LIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTQ0MgorbXNnaWQgIiIKKyJubyBzb3VyY2UgYnJhbmNoIGZvdW5kLlxuIgorInlvdSBuZWVkIHRvIHNwZWNpZnkgZXhhY3RseSBvbmUgYnJhbmNoIHdpdGggdGhlIC0tc2V0LXVwc3RyZWFtIG9wdGlvbi4iCittc2dzdHIgIiIKKyLmnKrnmbznj77mupDliIbmlK/jgIJcbiIKKyLmgqjpnIDopoHkvb/nlKggLS1zZXQtdXBzdHJlYW0g6YG46aCF5oyH5a6a5LiA5YCL5YiG5pSv44CCIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTU2OCBidWlsdGluL2ZldGNoLmM6MTYzMQorIywgYy1mb3JtYXQKK21zZ2lkICJGZXRjaGluZyAlc1xuIgorbXNnc3RyICLmraPlnKjlj5blvpcgJXNcbiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE1NzggYnVpbHRpbi9mZXRjaC5jOjE2MzMgYnVpbHRpbi9yZW1vdGUuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGZldGNoICVzIgorbXNnc3RyICLkuI3og73lj5blvpcgJXMiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNTkwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBmZXRjaCAnJXMnIChleGl0IGNvZGU6ICVkKVxuIgorbXNnc3RyICLnhKHms5Xlj5blvpcgJyVzJ++8iOmboumWi+eivO+8miVk77yJXG4iCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNjkzCittc2dpZCAiIgorIk5vIHJlbW90ZSByZXBvc2l0b3J5IHNwZWNpZmllZC4gIFBsZWFzZSwgc3BlY2lmeSBlaXRoZXIgYSBVUkwgb3IgYVxuIgorInJlbW90ZSBuYW1lIGZyb20gd2hpY2ggbmV3IHJldmlzaW9ucyBzaG91bGQgYmUgZmV0Y2hlZC4iCittc2dzdHIgIuacquaMh+WumumBoOerr+eJiOacrOW6q+OAguiri+mAj+mBjuS4gOWAiyBVUkwg5oiW6YGg56uv54mI5pys5bqr5ZCN5oyH5a6a77yM55So5Lul5Y+W5b6X5paw5o+Q5Lqk44CCIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTczMAorbXNnaWQgIllvdSBuZWVkIHRvIHNwZWNpZnkgYSB0YWcgbmFtZS4iCittc2dzdHIgIuaCqOmcgOimgeaMh+WumuS4gOWAi+aomeexpOWQjeeoseOAgiIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE3ODAKK21zZ2lkICJOZWdhdGl2ZSBkZXB0aCBpbiAtLWRlZXBlbiBpcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICItLWRlZXBlbiDkuI3mlK/mj7TosqDmlbjmt7HluqYiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzgyCittc2dpZCAiLS1kZWVwZW4gYW5kIC0tZGVwdGggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLS1kZWVwZW4g5ZKMIC0tZGVwdGgg5piv5LqS5pal55qEIgorCisjOiBidWlsdGluL2ZldGNoLmM6MTc4NworbXNnaWQgIi0tZGVwdGggYW5kIC0tdW5zaGFsbG93IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIgorbXNnc3RyICItLWRlcHRoIOWSjCAtLXVuc2hhbGxvdyDkuI3og73lkIzmmYLkvb/nlKgiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxNzg5Cittc2dpZCAiLS11bnNoYWxsb3cgb24gYSBjb21wbGV0ZSByZXBvc2l0b3J5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgIuWwjeaWvOS4gOWAi+WujOaVtOeahOeJiOacrOW6q++8jOWPg+aVuCAtLXVuc2hhbGxvdyDmspLmnInmhI/nvqkiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODA1Cittc2dpZCAiZmV0Y2ggLS1hbGwgZG9lcyBub3QgdGFrZSBhIHJlcG9zaXRvcnkgYXJndW1lbnQiCittc2dzdHIgImZldGNoIC0tYWxsIOS4jeiDveW4tuS4gOWAi+eJiOacrOW6q+WPg+aVuCIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE4MDcKK21zZ2lkICJmZXRjaCAtLWFsbCBkb2VzIG5vdCBtYWtlIHNlbnNlIHdpdGggcmVmc3BlY3MiCittc2dzdHIgImZldGNoIC0tYWxsIOW4tuW8leeUqOimj+agvOaykuacieS7u+S9leaEj+e+qSIKKworIzogYnVpbHRpbi9mZXRjaC5jOjE4MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gc3VjaCByZW1vdGUgb3IgcmVtb3RlIGdyb3VwOiAlcyIKK21zZ3N0ciAi5rKS5pyJ6YCZ5qij55qE6YGg56uv5oiW6YGg56uv57WE77yaJXMiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODIzCittc2dpZCAiRmV0Y2hpbmcgYSBncm91cCBhbmQgc3BlY2lmeWluZyByZWZzcGVjcyBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICLlj5blvpfntYTkuKbmjIflrprlvJXnlKjopo/moLzmspLmnInmhI/nvqkiCisKKyM6IGJ1aWx0aW4vZmV0Y2guYzoxODQxCittc2dpZCAiIgorIi0tZmlsdGVyIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB0aGUgcmVtb3RlIGNvbmZpZ3VyZWQgaW4gZXh0ZW5zaW9ucy4iCisicGFydGlhbGNsb25lIgorbXNnc3RyICLlj6rlj6/ku6XlsIcgLS1maWx0ZXIg55So5pa85ZyoIGV4dGVuc2lvbnMucGFydGlhbENsb25lIOS4reioreWumueahOmBoOerr+eJiOacrOW6qyIKKworIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6MTgKK21zZ2lkICIiCisiZ2l0IGZtdC1tZXJnZS1tc2cgWy1tIDxtZXNzYWdlPl0gWy0tbG9nWz08bj5dIHwgLS1uby1sb2ddIFstLWZpbGUgPGZpbGU+XSIKK21zZ3N0ciAiZ2l0IGZtdC1tZXJnZS1tc2cgWy1tIDzoqqrmmI4+XSBbLS1sb2dbPTxuPl0gfCAtLW5vLWxvZ10gWy0tZmlsZSA85qqU5qGIPl0iCisKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3MQorbXNnaWQgInBvcHVsYXRlIGxvZyB3aXRoIGF0IG1vc3QgPG4+IGVudHJpZXMgZnJvbSBzaG9ydGxvZyIKK21zZ3N0ciAi5ZCR5o+Q5Lqk6Kqq5piO5Lit5pyA5aSa6KSH6KO95oyH5a6a5qKd55uu77yI5ZCI5L216ICM5L6G55qE5o+Q5Lqk77yJ55qE57Ch55+t6Kqq5piOIgorCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzQKK21zZ2lkICJhbGlhcyBmb3IgLS1sb2cgKGRlcHJlY2F0ZWQpIgorbXNnc3RyICLlj4PmlbggLS1sb2cg55qE5Yil5ZCN77yI5bey5qOE55So77yJIgorCisjOiBidWlsdGluL2ZtdC1tZXJnZS1tc2cuYzo2NzcKK21zZ2lkICJ0ZXh0IgorbXNnc3RyICLmloflrZciCisKKyM6IGJ1aWx0aW4vZm10LW1lcmdlLW1zZy5jOjY3OAorbXNnaWQgInVzZSA8dGV4dD4gYXMgc3RhcnQgb2YgbWVzc2FnZSIKK21zZ3N0ciAi5L2/55SoIDzmloflrZc+IOS9nOeCuuaPkOS6pOiqquaYjueahOmWi+WniyIKKworIzogYnVpbHRpbi9mbXQtbWVyZ2UtbXNnLmM6Njc5Cittc2dpZCAiZmlsZSB0byByZWFkIGZyb20iCittc2dzdHIgIuW+nuaqlOahiOS4reiugOWPliIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzoxMAorbXNnaWQgImdpdCBmb3ItZWFjaC1yZWYgWzxvcHRpb25zPl0gWzxwYXR0ZXJuPl0iCittc2dzdHIgImdpdCBmb3ItZWFjaC1yZWYgWzzpgbjpoIU+XSBbPOaooeW8jz5dIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjExCittc2dpZCAiZ2l0IGZvci1lYWNoLXJlZiBbLS1wb2ludHMtYXQgPG9iamVjdD5dIgorbXNnc3RyICJnaXQgZm9yLWVhY2gtcmVmIFstLXBvaW50cy1hdCA854mp5Lu2Pl0iCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MTIKK21zZ2lkICJnaXQgZm9yLWVhY2gtcmVmIFsoLS1tZXJnZWQgfCAtLW5vLW1lcmdlZCkgWzxjb21taXQ+XV0iCittc2dzdHIgImdpdCBmb3ItZWFjaC1yZWYgWygtLW1lcmdlZCB8IC0tbm8tbWVyZ2VkKSBbPOaPkOS6pD5dXSIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzoxMworbXNnaWQgImdpdCBmb3ItZWFjaC1yZWYgWy0tY29udGFpbnMgWzxjb21taXQ+XV0gWy0tbm8tY29udGFpbnMgWzxjb21taXQ+XV0iCittc2dzdHIgImdpdCBmb3ItZWFjaC1yZWYgWy0tY29udGFpbnMgWzzmj5DkuqQ+XV0gWy0tbm8tY29udGFpbnMgWzzmj5DkuqQ+XV0iCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MjgKK21zZ2lkICJxdW90ZSBwbGFjZWhvbGRlcnMgc3VpdGFibHkgZm9yIHNoZWxscyIKK21zZ3N0ciAi5byV55So5Y2g5L2N56ym6YGp55So5pa8IHNoZWxscyIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozMAorbXNnaWQgInF1b3RlIHBsYWNlaG9sZGVycyBzdWl0YWJseSBmb3IgcGVybCIKK21zZ3N0ciAi5byV55So5Y2g5L2N56ym6YGp55So5pa8IHBlcmwiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6MzIKK21zZ2lkICJxdW90ZSBwbGFjZWhvbGRlcnMgc3VpdGFibHkgZm9yIHB5dGhvbiIKK21zZ3N0ciAi5byV55So5Y2g5L2N56ym6YGp55So5pa8IHB5dGhvbiIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzozNAorbXNnaWQgInF1b3RlIHBsYWNlaG9sZGVycyBzdWl0YWJseSBmb3IgVGNsIgorbXNnc3RyICLlvJXnlKjljaDkvY3nrKbpgannlKjmlrwgVGNsIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM3Cittc2dpZCAic2hvdyBvbmx5IDxuPiBtYXRjaGVkIHJlZnMiCittc2dzdHIgIuWPqumhr+ekuiA8bj4g5YCL56ym5ZCI55qE5byV55SoIgorCisjOiBidWlsdGluL2Zvci1lYWNoLXJlZi5jOjM5IGJ1aWx0aW4vdGFnLmM6NDM5Cittc2dpZCAicmVzcGVjdCBmb3JtYXQgY29sb3JzIgorbXNnc3RyICLpgbXnhafmoLzlvI/kuK3nmoTpoY/oibLovLjlh7oiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDIKK21zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggcG9pbnRzIGF0IHRoZSBnaXZlbiBvYmplY3QiCittc2dzdHIgIuWPquWIl+WNsOaMh+WQkeaPkOS+m+eJqeS7tueahOW8leeUqCIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NAorbXNnaWQgInByaW50IG9ubHkgcmVmcyB0aGF0IGFyZSBtZXJnZWQiCittc2dzdHIgIuWPquWIl+WNsOW3sue2k+WQiOS9teeahOW8leeUqCIKKworIzogYnVpbHRpbi9mb3ItZWFjaC1yZWYuYzo0NQorbXNnaWQgInByaW50IG9ubHkgcmVmcyB0aGF0IGFyZSBub3QgbWVyZ2VkIgorbXNnc3RyICLlj6rliJfljbDmspLmnInlkIjkvbXnmoTlvJXnlKgiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDYKK21zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggY29udGFpbiB0aGUgY29tbWl0IgorbXNnc3RyICLlj6rliJfljbDljIXlkKvoqbLmj5DkuqTnmoTlvJXnlKgiCisKKyM6IGJ1aWx0aW4vZm9yLWVhY2gtcmVmLmM6NDcKK21zZ2lkICJwcmludCBvbmx5IHJlZnMgd2hpY2ggZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgorbXNnc3RyICLlj6rliJfljbDkuI3ljIXlkKvoqbLmj5DkuqTnmoTlvJXnlKgiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY4IGJ1aWx0aW4vZnNjay5jOjE0NyBidWlsdGluL2ZzY2suYzoxNDgKK21zZ2lkICJ1bmtub3duIgorbXNnc3RyICLmnKrnn6UiCisKKyMuIFRSQU5TTEFUT1JTOiBlLmcuIGVycm9yIGluIHRyZWUgMDFiZmRhOiA8bW9yZSBleHBsYW5hdGlvbj4KKyM6IGJ1aWx0aW4vZnNjay5jOjEwMCBidWlsdGluL2ZzY2suYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gJXMgJXM6ICVzIgorbXNnc3RyICIlcyAlcyDpjK/oqqTvvJolcyIKKworIy4gVFJBTlNMQVRPUlM6IGUuZy4gd2FybmluZyBpbiB0cmVlIDAxYmZkYTogPG1vcmUgZXhwbGFuYXRpb24+CisjOiBidWlsdGluL2ZzY2suYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FybmluZyBpbiAlcyAlczogJXMiCittc2dzdHIgIiVzICVzIOitpuWRiu+8miVzIgorCisjOiBidWlsdGluL2ZzY2suYzoxNDMgYnVpbHRpbi9mc2NrLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImJyb2tlbiBsaW5rIGZyb20gJTdzICVzIgorbXNnc3RyICLkvoboh6ogJTdzICVzIOeahOaQjeWjnueahOmAo+e1kCIKKworIzogYnVpbHRpbi9mc2NrLmM6MTU1Cittc2dpZCAid3Jvbmcgb2JqZWN0IHR5cGUgaW4gbGluayIKK21zZ3N0ciAi6YCj57WQ5Lit6Yyv6Kqk55qE54mp5Lu26aGe5Z6LIgorCisjOiBidWlsdGluL2ZzY2suYzoxNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImJyb2tlbiBsaW5rIGZyb20gJTdzICVzXG4iCisiICAgICAgICAgICAgICB0byAlN3MgJXMiCittc2dzdHIgIiIKKyLmkI3lo57nmoTpgKPntZDkvoboh6rmlrwgJTdzICVzXG4iCisiICAgICAgICAgICAgICDliLAgJTdzICVzIgorCisjOiBidWlsdGluL2ZzY2suYzoyODIKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyAlcyIKK21zZ3N0ciAi57y65bCRICVzICVzIgorCisjOiBidWlsdGluL2ZzY2suYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5yZWFjaGFibGUgJXMgJXMiCittc2dzdHIgIueEoeazleWPluW+lyAlcyAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6MzI5CisjLCBjLWZvcm1hdAorbXNnaWQgImRhbmdsaW5nICVzICVzIgorbXNnc3RyICLmh7jnqbogJXMgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjMzOQorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgbG9zdC1mb3VuZCIKK21zZ3N0ciAi5LiN6IO95bu656uLIGxvc3QtZm91bmQiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjM1MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZmluaXNoICclcyciCittc2dzdHIgIuS4jeiDveWujOaIkCAnJXMnIgorCisjOiBidWlsdGluL2ZzY2suYzozNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2hlY2tpbmcgJXMiCittc2dzdHIgIuato+WcqOaqouafpSAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIGNvbm5lY3Rpdml0eSAoJWQgb2JqZWN0cykiCittc2dzdHIgIuato+WcqOaqouafpemAo+mAmuaAp++8iCVkIOWAi+eJqeS7tu+8iSIKKworIzogYnVpbHRpbi9mc2NrLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzICVzIgorbXNnc3RyICLmraPlnKjmqqLmn6UgJXMgJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjQyOQorbXNnaWQgImJyb2tlbiBsaW5rcyIKK21zZ3N0ciAi5pCN5aOe55qE6YCj57WQIgorCisjOiBidWlsdGluL2ZzY2suYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAicm9vdCAlcyIKK21zZ3N0ciAi5qC5ICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidGFnZ2VkICVzICVzICglcykgaW4gJXMiCittc2dzdHIgIuaomeiomCAlcyAlcyAoJXMpIOaWvCAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBvYmplY3QgY29ycnVwdCBvciBtaXNzaW5nIgorbXNnc3RyICIlc++8mueJqeS7tuaQjeWjnuaIlumBuuWksSIKKworIzogYnVpbHRpbi9mc2NrLmM6NTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnZhbGlkIHJlZmxvZyBlbnRyeSAlcyIKK21zZ3N0ciAiJXPvvJrnhKHmlYjnmoTlvJXnlKjml6Xoqozmop3nm64gJXMiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjUxNAorIywgYy1mb3JtYXQKK21zZ2lkICJDaGVja2luZyByZWZsb2cgJXMtPiVzIgorbXNnc3RyICLmraPlnKjmqqLmn6XlvJXnlKjml6XoqowgJXMtPiVzIgorCisjOiBidWlsdGluL2ZzY2suYzo1NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyICVzIgorbXNnc3RyICIlc++8mueEoeaViOeahCBzaGExIOaMh+aomSAlcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBub3QgYSBjb21taXQiCittc2dzdHIgIiVz77ya5LiN5piv5LiA5YCL5o+Q5LqkIgorCisjOiBidWlsdGluL2ZzY2suYzo2MDkKK21zZ2lkICJub3RpY2U6IE5vIGRlZmF1bHQgcmVmZXJlbmNlcyIKK21zZ3N0ciAi5rOo5oSP77ya54Sh6aCQ6Kit5byV55SoIgorCisjOiBidWlsdGluL2ZzY2suYzo2MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3JydXB0IG9yIG1pc3Npbmc6ICVzIgorbXNnc3RyICIlc++8mueJqeS7tuaQjeWjnuaIlumBuuWkse+8miVzIgorCisjOiBidWlsdGluL2ZzY2suYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG9iamVjdCBjb3VsZCBub3QgYmUgcGFyc2VkOiAlcyIKK21zZ3N0ciAiJXPvvJrkuI3og73op6PmnpDnianku7bvvJolcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjU3CisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBzaGExIGZpbGU6ICVzIgorbXNnc3RyICLlo57nmoQgc2hhMSDmqpTmoYjvvJolcyIKKworIzogYnVpbHRpbi9mc2NrLmM6NjcyCittc2dpZCAiQ2hlY2tpbmcgb2JqZWN0IGRpcmVjdG9yeSIKK21zZ3N0ciAi5q2j5Zyo5qqi5p+l54mp5Lu255uu6YyEIgorCisjOiBidWlsdGluL2ZzY2suYzo2NzUKK21zZ2lkICJDaGVja2luZyBvYmplY3QgZGlyZWN0b3JpZXMiCittc2dzdHIgIuato+WcqOaqouafpeeJqeS7tuebrumMhCIKKworIzogYnVpbHRpbi9mc2NrLmM6NjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nICVzIGxpbmsiCittc2dzdHIgIuato+WcqOaqouafpSAlcyDpgKPntZAiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjY5NSBidWlsdGluL2luZGV4LXBhY2suYzo4NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCAlcyIKK21zZ3N0ciAi54Sh5pWI55qEICVzIgorCisjOiBidWlsdGluL2ZzY2suYzo3MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcG9pbnRzIHRvIHNvbWV0aGluZyBzdHJhbmdlICglcykiCittc2dzdHIgIiVzIOaMh+WQkeWlh+aAqueahOadseilv++8iCVz77yJIgorCisjOiBidWlsdGluL2ZzY2suYzo3MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRldGFjaGVkIEhFQUQgcG9pbnRzIGF0IG5vdGhpbmciCittc2dzdHIgIiVz77ya5YiG6Zui6ZaL6aCt5oyH5qiZ55qE5oyH5ZCR5LiN5a2Y5ZyoIgorCisjOiBidWlsdGluL2ZzY2suYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90aWNlOiAlcyBwb2ludHMgdG8gYW4gdW5ib3JuIGJyYW5jaCAoJXMpIgorbXNnc3RyICLms6jmhI/vvJolcyDmjIflkJHkuIDlgIvlsJrmnKroqpXnlJ/nmoTliIbmlK/vvIglc++8iSIKKworIzogYnVpbHRpbi9mc2NrLmM6NzI0Cittc2dpZCAiQ2hlY2tpbmcgY2FjaGUgdHJlZSIKK21zZ3N0ciAi5q2j5Zyo5qqi5p+l5b+r5Y+W5qi5IgorCisjOiBidWlsdGluL2ZzY2suYzo3MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgc2hhMSBwb2ludGVyIGluIGNhY2hlLXRyZWUiCittc2dzdHIgIiVz77yaY2FjaGUtdHJlZSDkuK3nhKHmlYjnmoQgc2hhMSDmjIfmqJkiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjczOAorbXNnaWQgIm5vbi10cmVlIGluIGNhY2hlLXRyZWUiCittc2dzdHIgImNhY2hlLXRyZWUg5Lit6Z2e5qi554uA54mp5Lu2IgorCisjOiBidWlsdGluL2ZzY2suYzo3NjkKK21zZ2lkICJnaXQgZnNjayBbPG9wdGlvbnM+XSBbPG9iamVjdD4uLi5dIgorbXNnc3RyICJnaXQgZnNjayBbPOmBuOmghT5dIFs854mp5Lu2Pi4uLl0iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc3NQorbXNnaWQgInNob3cgdW5yZWFjaGFibGUgb2JqZWN0cyIKK21zZ3N0ciAi6aGv56S654Sh5rOV5Y+W5b6X55qE54mp5Lu2IgorCisjOiBidWlsdGluL2ZzY2suYzo3NzYKK21zZ2lkICJzaG93IGRhbmdsaW5nIG9iamVjdHMiCittc2dzdHIgIumhr+ekuuaHuOepuueahOeJqeS7tiIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzc3Cittc2dpZCAicmVwb3J0IHRhZ3MiCittc2dzdHIgIuWgseWRiuaomeexpCIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzc4Cittc2dpZCAicmVwb3J0IHJvb3Qgbm9kZXMiCittc2dzdHIgIuWgseWRiuagueevgOm7niIKKworIzogYnVpbHRpbi9mc2NrLmM6Nzc5Cittc2dpZCAibWFrZSBpbmRleCBvYmplY3RzIGhlYWQgbm9kZXMiCittc2dzdHIgIuWwh+e0ouW8leS6puS9nOeCuuaqouafpeeahOmgreevgOm7niIKKworIzogYnVpbHRpbi9mc2NrLmM6NzgwCittc2dpZCAibWFrZSByZWZsb2dzIGhlYWQgbm9kZXMgKGRlZmF1bHQpIgorbXNnc3RyICLlsIflvJXnlKjml6XoqozkvZzngrrmqqLmn6XnmoTpoK3nr4Dpu57vvIjpoJDoqK3vvIkiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MQorbXNnaWQgImFsc28gY29uc2lkZXIgcGFja3MgYW5kIGFsdGVybmF0ZSBvYmplY3RzIgorbXNnc3RyICLkuZ/ogIPmha7ljIXlkozlgpnnlKjnianku7YiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MgorbXNnaWQgImNoZWNrIG9ubHkgY29ubmVjdGl2aXR5IgorbXNnc3RyICLlg4XmqqLmn6XpgKPpgJrmgKciCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4MworbXNnaWQgImVuYWJsZSBtb3JlIHN0cmljdCBjaGVja2luZyIKK21zZ3N0ciAi5ZWf55So5pu05Zq05qC855qE5qqi5p+lIgorCisjOiBidWlsdGluL2ZzY2suYzo3ODUKK21zZ2lkICJ3cml0ZSBkYW5nbGluZyBvYmplY3RzIGluIC5naXQvbG9zdC1mb3VuZCIKK21zZ3N0ciAi5bCH5oe456m654mp5Lu25a+r5YWlIC5naXQvbG9zdC1mb3VuZCDkuK0iCisKKyM6IGJ1aWx0aW4vZnNjay5jOjc4NiBidWlsdGluL3BydW5lLmM6MTMyCittc2dpZCAic2hvdyBwcm9ncmVzcyIKK21zZ3N0ciAi6aGv56S66YCy5bqmIgorCisjOiBidWlsdGluL2ZzY2suYzo3ODcKK21zZ2lkICJzaG93IHZlcmJvc2UgbmFtZXMgZm9yIHJlYWNoYWJsZSBvYmplY3RzIgorbXNnc3RyICLpoa/npLrlj6/ku6Xlj5blvpfnianku7bnmoToqbPntLDlkI3nqLEiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjg0NiBidWlsdGluL2luZGV4LXBhY2suYzoyMjUKK21zZ2lkICJDaGVja2luZyBvYmplY3RzIgorbXNnc3RyICLmraPlnKjmqqLmn6Xnianku7YiCisKKyM6IGJ1aWx0aW4vZnNjay5jOjg3NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogb2JqZWN0IG1pc3NpbmciCittc2dzdHIgIiVz77ya54mp5Lu257y65bCRIgorCisjOiBidWlsdGluL2ZzY2suYzo4ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYXJhbWV0ZXI6IGV4cGVjdGVkIHNoYTEsIGdvdCAnJXMnIgorbXNnc3RyICLnhKHmlYjnmoTlj4PmlbjvvJrmnJ/mnJsgc2hhMe+8jOW+l+WIsCAnJXMnIgorCisjOiBidWlsdGluL2djLmM6MzUKK21zZ2lkICJnaXQgZ2MgWzxvcHRpb25zPl0iCittc2dzdHIgImdpdCBnYyBbPOmBuOmghT5dIgorCisjOiBidWlsdGluL2djLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIGZzdGF0ICVzOiAlcyIKK21zZ3N0ciAi5bCNICVzIOWRvOWPqyBmc3RhdCDlpLHmlZfvvJolcyIKKworIzogYnVpbHRpbi9nYy5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgJyVzJyB2YWx1ZSAnJXMnIgorbXNnc3RyICLnhKHms5Xop6PmnpAgJyVzJyDlgLwgJyVzJyIKKworIzogYnVpbHRpbi9nYy5jOjQ3NSBidWlsdGluL2luaXQtZGIuYzo1NQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCAnJXMnIgorbXNnc3RyICLkuI3og73lsI0gJyVzJyDlkbzlj6sgc3RhdCIKKworIzogYnVpbHRpbi9nYy5jOjQ4NCBidWlsdGluL25vdGVzLmM6MjQwIGJ1aWx0aW4vdGFnLmM6NTI5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICclcyciCittc2dzdHIgIuS4jeiDveiugOWPliAnJXMnIgorCisjOiBidWlsdGluL2djLmM6NDkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgbGFzdCBnYyBydW4gcmVwb3J0ZWQgdGhlIGZvbGxvd2luZy4gUGxlYXNlIGNvcnJlY3QgdGhlIHJvb3QgY2F1c2VcbiIKKyJhbmQgcmVtb3ZlICVzLlxuIgorIkF1dG9tYXRpYyBjbGVhbnVwIHdpbGwgbm90IGJlIHBlcmZvcm1lZCB1bnRpbCB0aGUgZmlsZSBpcyByZW1vdmVkLlxuIgorIlxuIgorIiVzIgorbXNnc3RyICIiCisi5pyA5b6M5LiA5qyhIGdjIOWLleS9nOWgseWRiuWmguS4i+ioiuaBr+OAguiri+aqouafpeWOn+WboOS4puWIqumZpCAlc+OAglxuIgorIuWcqOipsuaqlOahiOiiq+WIqumZpOS5i+WJje+8jOiHquWLlea4heeQhuWwh+S4jeacg+Wft+ihjOOAglxuIgorIlxuIgorIiVzIgorCisjOiBidWlsdGluL2djLmM6NTM5Cittc2dpZCAicHJ1bmUgdW5yZWZlcmVuY2VkIG9iamVjdHMiCittc2dzdHIgIua4hemZpOacquW8leeUqOeahOeJqeS7tiIKKworIzogYnVpbHRpbi9nYy5jOjU0MQorbXNnaWQgImJlIG1vcmUgdGhvcm91Z2ggKGluY3JlYXNlZCBydW50aW1lKSIKK21zZ3N0ciAi5pu05b655bqV77yI5aKe5Yqg5Z+36KGM5pmC6ZaT77yJIgorCisjOiBidWlsdGluL2djLmM6NTQyCittc2dpZCAiZW5hYmxlIGF1dG8tZ2MgbW9kZSIKK21zZ3N0ciAi5ZWf55So6Ieq5YuV5Z6D5Zy+5Zue5pS25qih5byPIgorCisjOiBidWlsdGluL2djLmM6NTQ1Cittc2dpZCAiZm9yY2UgcnVubmluZyBnYyBldmVuIGlmIHRoZXJlIG1heSBiZSBhbm90aGVyIGdjIHJ1bm5pbmciCittc2dzdHIgIuW8t+WItuWft+ihjCBnYyDljbPkvb/lj6blpJbkuIDlgIsgZ2Mg5q2j5Zyo5Z+36KGMIgorCisjOiBidWlsdGluL2djLmM6NTQ4Cittc2dpZCAicmVwYWNrIGFsbCBvdGhlciBwYWNrcyBleGNlcHQgdGhlIGxhcmdlc3QgcGFjayIKK21zZ3N0ciAi6Zmk5LqG5pyA5aSn55qE5YyF5LmL5aSW77yM5bCN5omA5pyJ5YW25a6D5YyF5qqU5qGI6YeN5paw5omT5YyFIgorCisjOiBidWlsdGluL2djLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwYXJzZSBnYy5sb2dleHBpcnkgdmFsdWUgJXMiCittc2dzdHIgIuino+aekCBnYy5sb2dleHBpcnkg55qE5YC8ICVzIOWkseaVlyIKKworIzogYnVpbHRpbi9nYy5jOjU3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcGFyc2UgcHJ1bmUgZXhwaXJ5IHZhbHVlICVzIgorbXNnc3RyICLop6PmnpDmuIXpmaTmnJ/pmZDlgLwgJXMg5aSx5pWXIgorCisjOiBidWlsdGluL2djLmM6NTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dG8gcGFja2luZyB0aGUgcmVwb3NpdG9yeSBpbiBiYWNrZ3JvdW5kIGZvciBvcHRpbXVtIHBlcmZvcm1hbmNlLlxuIgorbXNnc3RyICLoh6rli5XlnKjlvozlj7Dln7fooYzniYjmnKzluqvmiZPljIXku6XmsYLmnIDkvbPmgKfog73jgIJcbiIKKworIzogYnVpbHRpbi9nYy5jOjU5OAorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRvIHBhY2tpbmcgdGhlIHJlcG9zaXRvcnkgZm9yIG9wdGltdW0gcGVyZm9ybWFuY2UuXG4iCittc2dzdHIgIuiHquWLleaJk+WMheeJiOacrOW6q+S7peaxguacgOS9s+aAp+iDveOAglxuIgorCisjOiBidWlsdGluL2djLmM6NTk5CisjLCBjLWZvcm1hdAorbXNnaWQgIlNlZSBcImdpdCBoZWxwIGdjXCIgZm9yIG1hbnVhbCBob3VzZWtlZXBpbmcuXG4iCittc2dzdHIgIuaJi+WLlee2reitt+WPg+imiyBcImdpdCBoZWxwIGdjXCLjgIJcbiIKKworIzogYnVpbHRpbi9nYy5jOjYzOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZ2MgaXMgYWxyZWFkeSBydW5uaW5nIG9uIG1hY2hpbmUgJyVzJyBwaWQgJTxQUkl1TUFYPiAodXNlIC0tZm9yY2UgaWYgbm90KSIKK21zZ3N0ciAiZ2Mg5bey5Zyo44CMJXPjgI3mqZ/lmaggcGlkICU8UFJJdU1BWD4g5Z+36KGM77yI5aaC5p6c5LiN5piv77yM5L2/55SoIC0tZm9yY2XvvIkiCisKKyM6IGJ1aWx0aW4vZ2MuYzo2OTQKK21zZ2lkICIiCisiVGhlcmUgYXJlIHRvbyBtYW55IHVucmVhY2hhYmxlIGxvb3NlIG9iamVjdHM7IHJ1biAnZ2l0IHBydW5lJyB0byByZW1vdmUgdGhlbS4iCittc2dzdHIgIuacieWkquWkmueEoeazleWPluW+l+eahOmshuaVo+eJqeS7tu+8jOWft+ihjCAnZ2l0IHBydW5lJyDliKrpmaTlroPlgJHjgIIiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjMwCittc2dpZCAiZ2l0IGdyZXAgWzxvcHRpb25zPl0gWy1lXSA8cGF0dGVybj4gWzxyZXY+Li4uXSBbWy0tXSA8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgZ3JlcCBbPOmBuOmghT5dIFstZV0gPOaooeW8jz4gWzzniYjmnKw+Li4uXSBbWy0tXSA86Lev5b6RPi4uLl0iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjIyNQorIywgYy1mb3JtYXQKK21zZ2lkICJncmVwOiBmYWlsZWQgdG8gY3JlYXRlIHRocmVhZDogJXMiCittc2dzdHIgImdyZXDvvJrnhKHms5Xlu7rnq4vln7fooYznt5LvvJolcyIKKworIzogYnVpbHRpbi9ncmVwLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgbnVtYmVyIG9mIHRocmVhZHMgc3BlY2lmaWVkICglZCkgZm9yICVzIgorbXNnc3RyICLngrogJTIkcyDoqK3lrprnmoTln7fooYznt5LmlbggKCUxJGQpIOeEoeaViCIKKworIy4gVFJBTlNMQVRPUlM6ICVzIGlzIHRoZSBjb25maWd1cmF0aW9uCisjLiB2YXJpYWJsZSBmb3IgdHdlYWtpbmcgdGhyZWFkcywgY3VycmVudGx5CisjLiBncmVwLnRocmVhZHMKKyMuCisjOiBidWlsdGluL2dyZXAuYzoyODcgYnVpbHRpbi9pbmRleC1wYWNrLmM6MTUzOCBidWlsdGluL2luZGV4LXBhY2suYzoxNzMxCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gdGhyZWFkcyBzdXBwb3J0LCBpZ25vcmluZyAlcyIKK21zZ3N0ciAi5rKS5pyJ5Z+36KGM57eS5pSv5o+077yM5b+955WlICVzIgorCisjOiBidWlsdGluL2dyZXAuYzo0NTMgYnVpbHRpbi9ncmVwLmM6NTc4IGJ1aWx0aW4vZ3JlcC5jOjYxOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCB0cmVlICglcykiCittc2dzdHIgIueEoeazleiugOWPluaoue+8iCVz77yJIgorCisjOiBidWlsdGluL2dyZXAuYzo2MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGdyZXAgZnJvbSBvYmplY3Qgb2YgdHlwZSAlcyIKK21zZ3N0ciAi54Sh5rOV5oqT5Y+W5L6G6Ieq5pa8ICVzIOmhnuWei+eahOeJqeS7tiIKKworIzogYnVpbHRpbi9ncmVwLmM6NzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInN3aXRjaCBgJWMnIGV4cGVjdHMgYSBudW1lcmljYWwgdmFsdWUiCittc2dzdHIgIumWi+mXnCBgJWMnIOacn+acm+S4gOWAi+aVuOWtl+WAvCIKKworIzogYnVpbHRpbi9ncmVwLmM6ODAzCittc2dpZCAic2VhcmNoIGluIGluZGV4IGluc3RlYWQgb2YgaW4gdGhlIHdvcmsgdHJlZSIKK21zZ3N0ciAi5Zyo57Si5byV5Y2A5pCc5bCL6ICM5LiN5piv5Zyo5bel5L2c5Y2AIgorCisjOiBidWlsdGluL2dyZXAuYzo4MDUKK21zZ2lkICJmaW5kIGluIGNvbnRlbnRzIG5vdCBtYW5hZ2VkIGJ5IGdpdCIKK21zZ3N0ciAi5Zyo5pyq6KKrIGdpdCDnrqHnkIbnmoTlhaflrrnkuK3lsIvmib4iCisKKyMgIOitr+iAhe+8muS4reaWh+Wtl+S4suaLvOaOpe+8jOWPr+WIqumZpOWJjeWwjuepuuagvAorIzogYnVpbHRpbi9ncmVwLmM6ODA3Cittc2dpZCAic2VhcmNoIGluIGJvdGggdHJhY2tlZCBhbmQgdW50cmFja2VkIGZpbGVzIgorbXNnc3RyICLlnKjov73ouaTlkozmnKrov73ouaTnmoTmqpTmoYjkuK3mkJzlsIsiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgwOQorbXNnaWQgImlnbm9yZSBmaWxlcyBzcGVjaWZpZWQgdmlhICcuZ2l0aWdub3JlJyIKK21zZ3N0ciAi5b+955WlICcuZ2l0aWdub3JlJyDljIXlkKvnmoTmqpTmoYgiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxMQorbXNnaWQgInJlY3Vyc2l2ZWx5IHNlYXJjaCBpbiBlYWNoIHN1Ym1vZHVsZSIKK21zZ3N0ciAi5Zyo5q+P5LiA5YCL5a2Q5qih57WE5Lit6YGe6L+05pCc5bCLIgorCisjOiBidWlsdGluL2dyZXAuYzo4MTQKK21zZ2lkICJzaG93IG5vbi1tYXRjaGluZyBsaW5lcyIKK21zZ3N0ciAi6aGv56S65pyq56ym5ZCI55qE6KGMIgorCisjOiBidWlsdGluL2dyZXAuYzo4MTYKK21zZ2lkICJjYXNlIGluc2Vuc2l0aXZlIG1hdGNoaW5nIgorbXNnc3RyICLkuI3ljYDliIblpKflsI/lr6vnrKblkIgiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgxOAorbXNnaWQgIm1hdGNoIHBhdHRlcm5zIG9ubHkgYXQgd29yZCBib3VuZGFyaWVzIgorbXNnc3RyICLlj6rlnKjllq7oqZ7pgornlYznrKblkIjmqKHlvI8iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyMAorbXNnaWQgInByb2Nlc3MgYmluYXJ5IGZpbGVzIGFzIHRleHQiCittc2dzdHIgIuaKiuS6jOmAsuS9jeaqlOahiOeVtuWBmuaWh+Wtl+iZleeQhiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODIyCittc2dpZCAiZG9uJ3QgbWF0Y2ggcGF0dGVybnMgaW4gYmluYXJ5IGZpbGVzIgorbXNnc3RyICLkuI3lnKjkuozpgLLkvY3mqpTmoYjkuK3nrKblkIjmqKHlvI8iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgyNQorbXNnaWQgInByb2Nlc3MgYmluYXJ5IGZpbGVzIHdpdGggdGV4dGNvbnYgZmlsdGVycyIKK21zZ3N0ciAi55SoIHRleHRjb252IOmBjua/vuWZqOiZleeQhuS6jOmAsuS9jeaqlOahiCIKKworIzogYnVpbHRpbi9ncmVwLmM6ODI3Cittc2dpZCAic2VhcmNoIGluIHN1YmRpcmVjdG9yaWVzIChkZWZhdWx0KSIKK21zZ3N0ciAi5Zyo5a2Q55uu6YyE5Lit5bCL5om+77yI6aCQ6Kit77yJIgorCisjOiBidWlsdGluL2dyZXAuYzo4MjkKK21zZ2lkICJkZXNjZW5kIGF0IG1vc3QgPGRlcHRoPiBsZXZlbHMiCittc2dzdHIgIuacgOWkmuS7peaMh+WumueahOa3seW6puWQkeS4i+Wwi+aJviIKKworIzogYnVpbHRpbi9ncmVwLmM6ODMzCittc2dpZCAidXNlIGV4dGVuZGVkIFBPU0lYIHJlZ3VsYXIgZXhwcmVzc2lvbnMiCittc2dzdHIgIuS9v+eUqOaTtOWxleeahCBQT1NJWCDmraPopo/ooajnpLrlvI8iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjgzNgorbXNnaWQgInVzZSBiYXNpYyBQT1NJWCByZWd1bGFyIGV4cHJlc3Npb25zIChkZWZhdWx0KSIKK21zZ3N0ciAi5L2/55So5Z+65pys55qEIFBPU0lYIOato+imj+ihqOekuuW8j++8iOmgkOiore+8iSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODM5Cittc2dpZCAiaW50ZXJwcmV0IHBhdHRlcm5zIGFzIGZpeGVkIHN0cmluZ3MiCittc2dzdHIgIuaKiuaooeW8j+ino+aekOeCuuWbuuWumueahOWtl+S4siIKKworIzogYnVpbHRpbi9ncmVwLmM6ODQyCittc2dpZCAidXNlIFBlcmwtY29tcGF0aWJsZSByZWd1bGFyIGV4cHJlc3Npb25zIgorbXNnc3RyICLkvb/nlKggUGVybCDnm7jlrrnnmoTmraPopo/ooajnpLrlvI8iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NQorbXNnaWQgInNob3cgbGluZSBudW1iZXJzIgorbXNnc3RyICLpoa/npLrooYzomZ8iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg0NgorbXNnaWQgInNob3cgY29sdW1uIG51bWJlciBvZiBmaXJzdCBtYXRjaCIKK21zZ3N0ciAi6aGv56S656ys5LiA5YCL56ym5ZCI55qE5YiX6JmfIgorCisjOiBidWlsdGluL2dyZXAuYzo4NDcKK21zZ2lkICJkb24ndCBzaG93IGZpbGVuYW1lcyIKK21zZ3N0ciAi5LiN6aGv56S65qqU5qGI5ZCNIgorCisjOiBidWlsdGluL2dyZXAuYzo4NDgKK21zZ2lkICJzaG93IGZpbGVuYW1lcyIKK21zZ3N0ciAi6aGv56S65qqU5qGI5ZCNIgorCisjOiBidWlsdGluL2dyZXAuYzo4NTAKK21zZ2lkICJzaG93IGZpbGVuYW1lcyByZWxhdGl2ZSB0byB0b3AgZGlyZWN0b3J5IgorbXNnc3RyICLpoa/npLrnm7jlsI3mlrzpoILntJrnm67pjITnmoTmqpTmoYjlkI0iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1MgorbXNnaWQgInNob3cgb25seSBmaWxlbmFtZXMgaW5zdGVhZCBvZiBtYXRjaGluZyBsaW5lcyIKK21zZ3N0ciAi5Y+q6aGv56S65qqU5qGI5ZCN6ICM5LiN6aGv56S656ym5ZCI55qE6KGMIgorCisjOiBidWlsdGluL2dyZXAuYzo4NTQKK21zZ2lkICJzeW5vbnltIGZvciAtLWZpbGVzLXdpdGgtbWF0Y2hlcyIKK21zZ3N0ciAi5ZKMIC0tZmlsZXMtd2l0aC1tYXRjaGVzIOWQjOe+qSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODU3Cittc2dpZCAic2hvdyBvbmx5IHRoZSBuYW1lcyBvZiBmaWxlcyB3aXRob3V0IG1hdGNoIgorbXNnc3RyICLlj6rpoa/npLrmnKrnrKblkIjnmoTmqpTmoYjlkI0iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg1OQorbXNnaWQgInByaW50IE5VTCBhZnRlciBmaWxlbmFtZXMiCittc2dzdHIgIuWcqOaqlOahiOWQjeW+jOi8uOWHuiBOVUwg5a2X5YWDIgorCisjOiBidWlsdGluL2dyZXAuYzo4NjIKK21zZ2lkICJzaG93IG9ubHkgbWF0Y2hpbmcgcGFydHMgb2YgYSBsaW5lIgorbXNnc3RyICLlj6rpoa/npLrooYzkuK3nmoTnrKblkIjnmoTpg6jliIYiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg2NAorbXNnaWQgInNob3cgdGhlIG51bWJlciBvZiBtYXRjaGVzIGluc3RlYWQgb2YgbWF0Y2hpbmcgbGluZXMiCittc2dzdHIgIumhr+ekuue4veespuWQiOihjOaVuO+8jOiAjOS4jemhr+ekuuespuWQiOeahOihjCIKKworIzogYnVpbHRpbi9ncmVwLmM6ODY1Cittc2dpZCAiaGlnaGxpZ2h0IG1hdGNoZXMiCittc2dzdHIgIumrmOS6rumhr+ekuuespuWQiOmghSIKKworIzogYnVpbHRpbi9ncmVwLmM6ODY3Cittc2dpZCAicHJpbnQgZW1wdHkgbGluZSBiZXR3ZWVuIG1hdGNoZXMgZnJvbSBkaWZmZXJlbnQgZmlsZXMiCittc2dzdHIgIuWcqOS4jeWQjOaqlOahiOeahOespuWQiOmgheS5i+mWk+WIl+WNsOepuuihjCIKKworIzogYnVpbHRpbi9ncmVwLmM6ODY5Cittc2dpZCAic2hvdyBmaWxlbmFtZSBvbmx5IG9uY2UgYWJvdmUgbWF0Y2hlcyBmcm9tIHNhbWUgZmlsZSIKK21zZ3N0ciAi5Y+q5Zyo5ZCM5LiA5qqU5qGI55qE56ym5ZCI6aCF55qE5LiK6Z2i6aGv56S65LiA5qyh5qqU5qGI5ZCNIgorCisjOiBidWlsdGluL2dyZXAuYzo4NzIKK21zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGJlZm9yZSBhbmQgYWZ0ZXIgbWF0Y2hlcyIKK21zZ3N0ciAi6aGv56S656ym5ZCI6aCF5YmN5b6M55qEIDxuPiDooYzkuIrkuIvmlociCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjg3NQorbXNnaWQgInNob3cgPG4+IGNvbnRleHQgbGluZXMgYmVmb3JlIG1hdGNoZXMiCittc2dzdHIgIumhr+ekuuespuWQiOmgheWJjSA8bj4g6KGM5LiK5LiL5paHIgorCisjOiBidWlsdGluL2dyZXAuYzo4NzcKK21zZ2lkICJzaG93IDxuPiBjb250ZXh0IGxpbmVzIGFmdGVyIG1hdGNoZXMiCittc2dzdHIgIumhr+ekuuespuWQiOmgheW+jCA8bj4g6KGM5LiK5LiL5paHIgorCisjOiBidWlsdGluL2dyZXAuYzo4NzkKK21zZ2lkICJ1c2UgPG4+IHdvcmtlciB0aHJlYWRzIgorbXNnc3RyICLkvb/nlKggPG4+IOWAi+W3peS9nOWft+ihjOe3kiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODgwCittc2dpZCAic2hvcnRjdXQgZm9yIC1DIE5VTSIKK21zZ3N0ciAi5b+r5o236Y21IC1DIOaVuOWtlyIKKworIzogYnVpbHRpbi9ncmVwLmM6ODgzCittc2dpZCAic2hvdyBhIGxpbmUgd2l0aCB0aGUgZnVuY3Rpb24gbmFtZSBiZWZvcmUgbWF0Y2hlcyIKK21zZ3N0ciAi5Zyo56ym5ZCI55qE5YmN6Z2i6aGv56S65LiA6KGM5Ye95pW45ZCNIgorCisjOiBidWlsdGluL2dyZXAuYzo4ODUKK21zZ2lkICJzaG93IHRoZSBzdXJyb3VuZGluZyBmdW5jdGlvbiIKK21zZ3N0ciAi6aGv56S65omA5Zyo5Ye95pW455qE5YmN5b6M5YWn5a65IgorCisjOiBidWlsdGluL2dyZXAuYzo4ODgKK21zZ2lkICJyZWFkIHBhdHRlcm5zIGZyb20gZmlsZSIKK21zZ3N0ciAi5b6e5qqU5qGI6K6A5Y+W5qih5byPIgorCisjOiBidWlsdGluL2dyZXAuYzo4OTAKK21zZ2lkICJtYXRjaCA8cGF0dGVybj4iCittc2dzdHIgIuespuWQiCA85qih5byPPiIKKworIzogYnVpbHRpbi9ncmVwLmM6ODkyCittc2dpZCAiY29tYmluZSBwYXR0ZXJucyBzcGVjaWZpZWQgd2l0aCAtZSIKK21zZ3N0ciAi57WE5ZCI55SoIC1lIOWPg+aVuOioreWumueahOaooeW8jyIKKworIzogYnVpbHRpbi9ncmVwLmM6OTA0Cittc2dpZCAiaW5kaWNhdGUgaGl0IHdpdGggZXhpdCBzdGF0dXMgd2l0aG91dCBvdXRwdXQiCittc2dzdHIgIuS4jei8uOWHuu+8jOiAjOeUqOmboumWi+eivOaomeiomOWRveS4reeLgOaFiyIKKworIzogYnVpbHRpbi9ncmVwLmM6OTA2Cittc2dpZCAic2hvdyBvbmx5IG1hdGNoZXMgZnJvbSBmaWxlcyB0aGF0IG1hdGNoIGFsbCBwYXR0ZXJucyIKK21zZ3N0ciAi5Y+q6aGv56S656ym5ZCI5omA5pyJ5qih5byP55qE5qqU5qGI5Lit55qE56ym5ZCIIgorCisjOiBidWlsdGluL2dyZXAuYzo5MDgKK21zZ2lkICJzaG93IHBhcnNlIHRyZWUgZm9yIGdyZXAgZXhwcmVzc2lvbiIKK21zZ3N0ciAi6aGv56S6IGdyZXAg6KGo6YGU5byP55qE6Kej5p6Q5qi5IgorCisjOiBidWlsdGluL2dyZXAuYzo5MTIKK21zZ2lkICJwYWdlciIKK21zZ3N0ciAi5YiG6aCBIgorCisjOiBidWlsdGluL2dyZXAuYzo5MTIKK21zZ2lkICJzaG93IG1hdGNoaW5nIGZpbGVzIGluIHRoZSBwYWdlciIKK21zZ3N0ciAi5YiG6aCB6aGv56S656ym5ZCI55qE5qqU5qGIIgorCisjOiBidWlsdGluL2dyZXAuYzo5MTYKK21zZ2lkICJhbGxvdyBjYWxsaW5nIG9mIGdyZXAoMSkgKGlnbm9yZWQgYnkgdGhpcyBidWlsZCkiCittc2dzdHIgIuWFgeioseWRvOWPqyBncmVwKDEp77yI5pys5qyh5qeL5bu65b+955Wl77yJIgorCisjOiBidWlsdGluL2dyZXAuYzo5ODMKK21zZ2lkICJubyBwYXR0ZXJuIGdpdmVuIgorbXNnc3RyICLmnKrmj5DkvpvnrKblkIjmqKHlvI8iCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwMTkKK21zZ2lkICItLW5vLWluZGV4IG9yIC0tdW50cmFja2VkIGNhbm5vdCBiZSB1c2VkIHdpdGggcmV2cyIKK21zZ3N0ciAiLS1uby1pbmRleCDmiJYgLS11bnRyYWNrZWQg5LiN6IO95ZKM54mI5pys5ZCM5pmC5L2/55SoIgorCisjOiBidWlsdGluL2dyZXAuYzoxMDI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXNvbHZlIHJldmlzaW9uOiAlcyIKK21zZ3N0ciAi5LiN6IO96Kej5p6Q54mI5pys77yaJXMiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNTcKK21zZ2lkICItLXVudHJhY2tlZCBub3Qgc3VwcG9ydGVkIHdpdGggLS1yZWN1cnNlLXN1Ym1vZHVsZXMiCittc2dzdHIgIi0tdW50cmFja2VkIOS4jeaUr+aPtOiIhyAtLXJlY3Vyc2Utc3VibW9kdWxlcyDkuIDotbfkvb/nlKgiCisKKyM6IGJ1aWx0aW4vZ3JlcC5jOjEwNjEKK21zZ2lkICJpbnZhbGlkIG9wdGlvbiBjb21iaW5hdGlvbiwgaWdub3JpbmcgLS10aHJlYWRzIgorbXNnc3RyICLnhKHmlYjnmoTpgbjpoIXntYTlkIjvvIzlv73nlaUgLS10aHJlYWRzIgorCisjOiBidWlsdGluL2dyZXAuYzoxMDY0IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU0NworbXNnaWQgIm5vIHRocmVhZHMgc3VwcG9ydCwgaWdub3JpbmcgLS10aHJlYWRzIgorbXNnc3RyICLmspLmnInln7fooYznt5LmlK/mj7TvvIzlv73nlaUgLS10aHJlYWRzIgorCisjOiBidWlsdGluL2dyZXAuYzoxMDY3IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MzUgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODUxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgbnVtYmVyIG9mIHRocmVhZHMgc3BlY2lmaWVkICglZCkiCittc2dzdHIgIuaMh+WumueahOWft+ihjOe3kuaVuOeEoeaViO+8iCVk77yJIgorCisjOiBidWlsdGluL2dyZXAuYzoxMTAxCittc2dpZCAiLS1vcGVuLWZpbGVzLWluLXBhZ2VyIG9ubHkgd29ya3Mgb24gdGhlIHdvcmt0cmVlIgorbXNnc3RyICItLW9wZW4tZmlsZXMtaW4tcGFnZXIg5YOF55So5pa85bel5L2c5Y2AIgorCisjOiBidWlsdGluL2dyZXAuYzoxMTI3Cittc2dpZCAiLS1jYWNoZWQgb3IgLS11bnRyYWNrZWQgY2Fubm90IGJlIHVzZWQgd2l0aCAtLW5vLWluZGV4IgorbXNnc3RyICItLWNhY2hlZCDmiJYgLS11bnRyYWNrZWQg5LiN6IO96IiHIC0tbm8taW5kZXgg5ZCM5pmC5L2/55SoIgorCisjOiBidWlsdGluL2dyZXAuYzoxMTMzCittc2dpZCAiLS1bbm8tXWV4Y2x1ZGUtc3RhbmRhcmQgY2Fubm90IGJlIHVzZWQgZm9yIHRyYWNrZWQgY29udGVudHMiCittc2dzdHIgIi0tW25vLV1leGNsdWRlLXN0YW5kYXJkIOS4jeiDveeUqOaWvOW3sui/vei5pOWFp+WuuSIKKworIzogYnVpbHRpbi9ncmVwLmM6MTE0MQorbXNnaWQgImJvdGggLS1jYWNoZWQgYW5kIHRyZWVzIGFyZSBnaXZlbiIKK21zZ3N0ciAi5ZCM5pmC57Wm5Ye65LqGIC0tY2FjaGVkIOWSjOaoueeLgOeJqeS7tiIKKworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjg1Cittc2dpZCAiIgorImdpdCBoYXNoLW9iamVjdCBbLXQgPHR5cGU+XSBbLXddIFstLXBhdGg9PGZpbGU+IHwgLS1uby1maWx0ZXJzXSBbLS1zdGRpbl0gIgorIlstLV0gPGZpbGU+Li4uIgorbXNnc3RyICIiCisiZ2l0IGhhc2gtb2JqZWN0IFstdCA86aGe5Z6LPl0gWy13XSBbLS1wYXRoPTzmqpTmoYg+IHwgLS1uby1maWx0ZXJzXSBbLS1zdGRpbl0gIgorIlstLV0gPOaqlOahiD4uLi4iCisKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzo4NgorbXNnaWQgImdpdCBoYXNoLW9iamVjdCAgLS1zdGRpbi1wYXRocyIKK21zZ3N0ciAiZ2l0IGhhc2gtb2JqZWN0ICAtLXN0ZGluLXBhdGhzIgorCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTgKK21zZ2lkICJvYmplY3QgdHlwZSIKK21zZ3N0ciAi54mp5Lu26aGe5Z6LIgorCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6OTkKK21zZ2lkICJ3cml0ZSB0aGUgb2JqZWN0IGludG8gdGhlIG9iamVjdCBkYXRhYmFzZSIKK21zZ3N0ciAi5bCH54mp5Lu25a+r5YWl54mp5Lu26LOH5paZ5bqrIgorCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTAxCittc2dpZCAicmVhZCB0aGUgb2JqZWN0IGZyb20gc3RkaW4iCittc2dzdHIgIuW+nuaomea6lui8uOWFpeiugOWPlueJqeS7tiIKKworIzogYnVpbHRpbi9oYXNoLW9iamVjdC5jOjEwMworbXNnaWQgInN0b3JlIGZpbGUgYXMgaXMgd2l0aG91dCBmaWx0ZXJzIgorbXNnc3RyICLljp/mqKPlhLLlrZjmqpTmoYjkuI3kvb/nlKjpgY7mv77lmagiCisKKyM6IGJ1aWx0aW4vaGFzaC1vYmplY3QuYzoxMDQKK21zZ2lkICIiCisianVzdCBoYXNoIGFueSByYW5kb20gZ2FyYmFnZSB0byBjcmVhdGUgY29ycnVwdCBvYmplY3RzIGZvciBkZWJ1Z2dpbmcgR2l0IgorbXNnc3RyICLlhYHoqLHlsI3ku7vmhI/pmqjmqZ/lnoPlnL7os4fmlpnlgZrmlaPliJfkvoblu7rnq4vmkI3lo57nmoTnianku7bku6Xkvr/pmaTpjK8gR2l0IgorCisjOiBidWlsdGluL2hhc2gtb2JqZWN0LmM6MTA1Cittc2dpZCAicHJvY2VzcyBmaWxlIGFzIGl0IHdlcmUgZnJvbSB0aGlzIHBhdGgiCittc2dzdHIgIuiZleeQhuaqlOahiOS4puWBh+ioreWFtuS+huiHquaWvOatpOi3r+W+kSIKKworIzogYnVpbHRpbi9oZWxwLmM6NDYKK21zZ2lkICJwcmludCBhbGwgYXZhaWxhYmxlIGNvbW1hbmRzIgorbXNnc3RyICLliJfljbDmiYDmnInlj6/nlKjnmoTmjIfku6QiCisKKyM6IGJ1aWx0aW4vaGVscC5jOjQ3Cittc2dpZCAiZXhjbHVkZSBndWlkZXMiCittc2dzdHIgIuaOkumZpOWaruWwjiIKKworIzogYnVpbHRpbi9oZWxwLmM6NDgKK21zZ2lkICJwcmludCBsaXN0IG9mIHVzZWZ1bCBndWlkZXMiCittc2dzdHIgIumhr+ekuuacieeUqOeahOaMh+WNl+WIl+ihqCIKKworIzogYnVpbHRpbi9oZWxwLmM6NDkKK21zZ2lkICJwcmludCBhbGwgY29uZmlndXJhdGlvbiB2YXJpYWJsZSBuYW1lcyIKK21zZ3N0ciAi5YiX5Y2w5omA5pyJ6Kit5a6a6K6K5pW45ZCN56ixIgorCisjOiBidWlsdGluL2hlbHAuYzo1MQorbXNnaWQgInNob3cgbWFuIHBhZ2UiCittc2dzdHIgIumhr+ekuiBtYW4g5omL5YaKIgorCisjOiBidWlsdGluL2hlbHAuYzo1MgorbXNnaWQgInNob3cgbWFudWFsIGluIHdlYiBicm93c2VyIgorbXNnc3RyICLlnKggd2ViIOeAj+imveWZqOS4remhr+ekuuaJi+WGiiIKKworIzogYnVpbHRpbi9oZWxwLmM6NTQKK21zZ2lkICJzaG93IGluZm8gcGFnZSIKK21zZ3N0ciAi6aGv56S6IGluZm8g5omL5YaKIgorCisjOiBidWlsdGluL2hlbHAuYzo1NgorbXNnaWQgInByaW50IGNvbW1hbmQgZGVzY3JpcHRpb24iCittc2dzdHIgIuWIl+WNsOaMh+S7pOaPj+i/sCIKKworIzogYnVpbHRpbi9oZWxwLmM6NjEKK21zZ2lkICJnaXQgaGVscCBbLS1hbGxdIFstLWd1aWRlc10gWy0tbWFuIHwgLS13ZWIgfCAtLWluZm9dIFs8Y29tbWFuZD5dIgorbXNnc3RyICJnaXQgaGVscCBbLS1hbGxdIFstLWd1aWRlc10gWy0tbWFuIHwgLS13ZWIgfCAtLWluZm9dIFs85oyH5LukPl0iCisKKyM6IGJ1aWx0aW4vaGVscC5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBoZWxwIGZvcm1hdCAnJXMnIgorbXNnc3RyICLmnKrog73orZjliKXnmoTljZTliqnmoLzlvI8gJyVzJyIKKworIzogYnVpbHRpbi9oZWxwLmM6MTA0Cittc2dpZCAiRmFpbGVkIHRvIHN0YXJ0IGVtYWNzY2xpZW50LiIKK21zZ3N0ciAi54Sh5rOV5ZWf5YuVIGVtYWNzY2xpZW5044CCIgorCisjOiBidWlsdGluL2hlbHAuYzoxMTcKK21zZ2lkICJGYWlsZWQgdG8gcGFyc2UgZW1hY3NjbGllbnQgdmVyc2lvbi4iCittc2dzdHIgIueEoeazleino+aekCBlbWFjc2NsaWVudCDniYjmnKzjgIIiCisKKyM6IGJ1aWx0aW4vaGVscC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJlbWFjc2NsaWVudCB2ZXJzaW9uICclZCcgdG9vIG9sZCAoPCAyMikuIgorbXNnc3RyICJlbWFjc2NsaWVudCDniYjmnKwgJyVkJyDlpKrogIHvvIg8IDIy77yJ44CCIgorCisjOiBidWlsdGluL2hlbHAuYzoxNDMgYnVpbHRpbi9oZWxwLmM6MTY1IGJ1aWx0aW4vaGVscC5jOjE3NSBidWlsdGluL2hlbHAuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGV4ZWMgJyVzJyIKK21zZ3N0ciAi5Z+36KGMICclcycg5aSx5pWXIgorCisjOiBidWlsdGluL2hlbHAuYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiclcyc6IHBhdGggZm9yIHVuc3VwcG9ydGVkIG1hbiB2aWV3ZXIuXG4iCisiUGxlYXNlIGNvbnNpZGVyIHVzaW5nICdtYW4uPHRvb2w+LmNtZCcgaW5zdGVhZC4iCittc2dzdHIgIiIKKyInJXMn77ya5LiN5pSv5o+055qEIG1hbiDmiYvlhormqqLoppblmajnmoTot6/lvpHjgIJcbiIKKyLoq4vkvb/nlKggJ21hbi485bel5YW3Pi5jbWQn44CCIgorCisjOiBidWlsdGluL2hlbHAuYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiclcyc6IGNtZCBmb3Igc3VwcG9ydGVkIG1hbiB2aWV3ZXIuXG4iCisiUGxlYXNlIGNvbnNpZGVyIHVzaW5nICdtYW4uPHRvb2w+LnBhdGgnIGluc3RlYWQuIgorbXNnc3RyICIiCisiJyVzJzog5pSv5o+055qEIG1hbiDmiYvlhormqqLoppblmajmjIfku6TjgIJcbiIKKyLoq4vkvb/nlKggJ21hbi485bel5YW3Pi5wYXRoJ+OAgiIKKworIzogYnVpbHRpbi9oZWxwLmM6MzUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcyc6IHVua25vd24gbWFuIHZpZXdlci4iCittc2dzdHIgIiclcyfvvJrmnKrnn6XnmoQgbWFuIOaqouimluWZqOOAgiIKKworIzogYnVpbHRpbi9oZWxwLmM6MzY3Cittc2dpZCAibm8gbWFuIHZpZXdlciBoYW5kbGVkIHRoZSByZXF1ZXN0IgorbXNnc3RyICLmspLmnIkgbWFuIOaqouimluWZqOiZleeQhuatpOiri+axgiIKKworIzogYnVpbHRpbi9oZWxwLmM6Mzc1Cittc2dpZCAibm8gaW5mbyB2aWV3ZXIgaGFuZGxlZCB0aGUgcmVxdWVzdCIKK21zZ3N0ciAi5rKS5pyJIGluZm8g5qqi6KaW5Zmo6JmV55CG5q2k6KuL5rGCIgorCisjOiBidWlsdGluL2hlbHAuYzo0MzQgYnVpbHRpbi9oZWxwLmM6NDQ1IGdpdC5jOjMzNgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIGFsaWFzZWQgdG8gJyVzJyIKK21zZ3N0ciAiJyVzJyDmmK8gJyVzJyDnmoTliKXlkI0iCisKKyM6IGJ1aWx0aW4vaGVscC5jOjQ0OCBnaXQuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIGFsaWFzLiVzIHN0cmluZzogJXMiCittc2dzdHIgIuWjnueahCBhbGlhcy4lcyDlrZfkuLLvvJolcyIKKworIzogYnVpbHRpbi9oZWxwLmM6NDc3IGJ1aWx0aW4vaGVscC5jOjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1c2FnZTogJXMlcyIKK21zZ3N0ciAi55So5rOV77yaJXMlcyIKKworIzogYnVpbHRpbi9oZWxwLmM6NDkxCittc2dpZCAiJ2dpdCBoZWxwIGNvbmZpZycgZm9yIG1vcmUgaW5mb3JtYXRpb24iCittc2dzdHIgIidnaXQgaGVscCBjb25maWcnIOWPluW+l+abtOWkmuioiuaBryIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIm9iamVjdCB0eXBlIG1pc21hdGNoIGF0ICVzIgorbXNnc3RyICIlcyDnmoTnianku7bpoZ7lnovkuI3nrKblkIgiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJkaWQgbm90IHJlY2VpdmUgZXhwZWN0ZWQgb2JqZWN0ICVzIgorbXNnc3RyICLmnKrog73lj5blvpfpoJDmnJ/nmoTnianku7YgJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjIwOAorIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgJXM6IGV4cGVjdGVkIHR5cGUgJXMsIGZvdW5kICVzIgorbXNnc3RyICLnianku7YgJXPvvJrmh4nngrrpoZ7lnosgJXPvvIzljbvmmK8gJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZmlsbCAlZCBieXRlIgorbXNnaWRfcGx1cmFsICJjYW5ub3QgZmlsbCAlZCBieXRlcyIKK21zZ3N0clswXSAi54Sh5rOV5aGr5YWFICVkIOS9jeWFg+e1hCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjY4Cittc2dpZCAiZWFybHkgRU9GIgorbXNnc3RyICLpgY7ml6nnmoTmqpTmoYjntZDmnZ/nrKbvvIhFT0bvvIkiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjI2OQorbXNnaWQgInJlYWQgZXJyb3Igb24gaW5wdXQiCittc2dzdHIgIui8uOWFpeS4iueahOiugOmMr+iqpCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjgxCittc2dpZCAidXNlZCBtb3JlIGJ5dGVzIHRoYW4gd2VyZSBhdmFpbGFibGUiCittc2dzdHIgIueUqOaOieS6hui2hemBjuWPr+eUqOeahOS9jeWFg+e1hCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6Mjg4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6NjA2Cittc2dpZCAicGFjayB0b28gbGFyZ2UgZm9yIGN1cnJlbnQgZGVmaW5pdGlvbiBvZiBvZmZfdCIKK21zZ3N0ciAi5YyF5aSq5aSn6LaF6YGO5LqG55uu5YmNIG9mZl90IOeahOWumue+qSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MjkxIGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo5NQorbXNnaWQgInBhY2sgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgc2l6ZSIKK21zZ3N0ciAi5YyF6LaF6YGO5LqG5pyA5aSn5YWB6Kix5YC8IgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gcGFja2ZpbGUgJyVzJyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWfIHBhY2tmaWxlICclcyciCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMyNgorbXNnaWQgInBhY2sgc2lnbmF0dXJlIG1pc21hdGNoIgorbXNnc3RyICLljIXnsL3lkI3kuI3nrKblkIgiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjMyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrIHZlcnNpb24gJTxQUkl1MzI+IHVuc3VwcG9ydGVkIgorbXNnc3RyICLkuI3mlK/mj7TljIXniYjmnKwgJTxQUkl1MzI+IgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzozNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFjayBoYXMgYmFkIG9iamVjdCBhdCBvZmZzZXQgJTxQUkl1TUFYPjogJXMiCittc2dzdHIgIuWMheS4reaciemMr+iqpOeahOeJqeS7tuS9jeaWvOS9jeenu+mHjyAlPFBSSXVNQVg+77yaJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjQ2NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbmZsYXRlIHJldHVybmVkICVkIgorbXNnc3RyICLop6Plo5PnuK7ov5Tlm54gJWQiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUxNQorbXNnaWQgIm9mZnNldCB2YWx1ZSBvdmVyZmxvdyBmb3IgZGVsdGEgYmFzZSBvYmplY3QiCittc2dzdHIgIuS9jeenu+WAvOimhuiTi+S6hiBkZWx0YSDln7rmupbnianku7YiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjUyMworbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IGlzIG91dCBvZiBib3VuZCIKK21zZ3N0ciAiZGVsdGEg5Z+65rqW5L2N56e76LaK55WMIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvYmplY3QgdHlwZSAlZCIKK21zZ3N0ciAi5pyq55+l54mp5Lu26aGe5Z6LICVkIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo1NjIKK21zZ2lkICJjYW5ub3QgcHJlYWQgcGFjayBmaWxlIgorbXNnc3RyICLnhKHms5XoroDlj5bljIXmqpTmoYgiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjU2NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcmVtYXR1cmUgZW5kIG9mIHBhY2sgZmlsZSwgJTxQUkl1TUFYPiBieXRlIG1pc3NpbmciCittc2dpZF9wbHVyYWwgInByZW1hdHVyZSBlbmQgb2YgcGFjayBmaWxlLCAlPFBSSXVNQVg+IGJ5dGVzIG1pc3NpbmciCittc2dzdHJbMF0gIuWMheaqlOahiOmBjuaXqee1kOadn++8jOe8uuWwkSAlPFBSSXVNQVg+IOS9jeWFg+e1hCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NTkwCittc2dpZCAic2VyaW91cyBpbmZsYXRlIGluY29uc2lzdGVuY3kiCittc2dzdHIgIuino+Wjk+e4ruWatOmHjeeahOS4jeS4gOiHtCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6NzM1IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjc0MSBidWlsdGluL2luZGV4LXBhY2suYzo3NjUKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwNCBidWlsdGluL2luZGV4LXBhY2suYzo4MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU0hBMSBDT0xMSVNJT04gRk9VTkQgV0lUSCAlcyAhIgorbXNnc3RyICLnmbznj74gJXMg5Ye654++IFNIQTEg6KGd56qB77yBIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo3MzggYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNTgKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjE4IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkICVzIgorbXNnc3RyICLkuI3og73oroAgJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgwMgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBleGlzdGluZyBvYmplY3QgaW5mbyAlcyIKK21zZ3N0ciAi5LiN6IO96K6A5Y+W54++5a2Y54mp5Lu26KiK5oGvICVzIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzo4MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgZXhpc3Rpbmcgb2JqZWN0ICVzIgorbXNnc3RyICLkuI3og73oroDlj5bnj77lrZjnianku7YgJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGJsb2Igb2JqZWN0ICVzIgorbXNnc3RyICLnhKHmlYjnmoTos4fmlpnnianku7YgJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjgyNyBidWlsdGluL2luZGV4LXBhY2suYzo4NDYKK21zZ2lkICJmc2NrIGVycm9yIGluIHBhY2tlZCBvYmplY3QiCittc2dzdHIgIuWwjeaJk+WMheeJqeS7tiBmc2NrIOaqouafpeeZvOeUn+mMr+iqpCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6ODQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdCBhbGwgY2hpbGQgb2JqZWN0cyBvZiAlcyBhcmUgcmVhY2hhYmxlIgorbXNnc3RyICIlcyDnmoTmiYDmnInlrZDnianku7bkuKbpnZ7pg73lj6/ku6Xlj5blvpciCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjkyMCBidWlsdGluL2luZGV4LXBhY2suYzo5NTEKK21zZ2lkICJmYWlsZWQgdG8gYXBwbHkgZGVsdGEiCittc2dzdHIgIuaHieeUqCBkZWx0YSDlpLHmlZciCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjExMjEKK21zZ2lkICJSZWNlaXZpbmcgb2JqZWN0cyIKK21zZ3N0ciAi5o6l5pS254mp5Lu25LitIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTIxCittc2dpZCAiSW5kZXhpbmcgb2JqZWN0cyIKK21zZ3N0ciAi57Si5byV54mp5Lu25LitIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTU1Cittc2dpZCAicGFjayBpcyBjb3JydXB0ZWQgKFNIQTEgbWlzbWF0Y2gpIgorbXNnc3RyICLljIXooZ3nqoHvvIhTSEExIOS4jeespuWQiO+8iSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE2MAorbXNnaWQgImNhbm5vdCBmc3RhdCBwYWNrZmlsZSIKK21zZ3N0ciAi5LiN6IO95bCNIHBhY2tmaWxlIOWRvOWPqyBmc3RhdCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTE2MworbXNnaWQgInBhY2sgaGFzIGp1bmsgYXQgdGhlIGVuZCIKK21zZ3N0ciAi5YyF55qE57WQ5bC+5pyJ5Z6D5Zy+6LOH5paZIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTc1Cittc2dpZCAiY29uZnVzaW9uIGJleW9uZCBpbnNhbml0eSBpbiBwYXJzZV9wYWNrX29iamVjdHMoKSIKK21zZ3N0ciAicGFyc2VfcGFja19vYmplY3RzKCkg5Lit6YGH5Yiw5LiN5Y+v55CG5Za755qE5ZWP6aGMIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMTk4Cittc2dpZCAiUmVzb2x2aW5nIGRlbHRhcyIKK21zZ3N0ciAi6JmV55CGIGRlbHRhIOS4rSIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTIwOCBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0aHJlYWQ6ICVzIgorbXNnc3RyICLkuI3og73lu7rnq4vln7fooYznt5LvvJolcyIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI0OQorbXNnaWQgImNvbmZ1c2lvbiBiZXlvbmQgaW5zYW5pdHkiCittc2dzdHIgIuS4jeWPr+eQhuWWuyIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJjb21wbGV0ZWQgd2l0aCAlZCBsb2NhbCBvYmplY3QiCittc2dpZF9wbHVyYWwgImNvbXBsZXRlZCB3aXRoICVkIGxvY2FsIG9iamVjdHMiCittc2dzdHJbMF0gIuWujOaIkCAlZCDlgIvmnKzmqZ/nianku7YiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5leHBlY3RlZCB0YWlsIGNoZWNrc3VtIGZvciAlcyAoZGlzayBjb3JydXB0aW9uPykiCittc2dzdHIgIuWwjSAlcyDnmoTlsL7pg6jnuL3lkozmqqLmn6Xlh7rnj77mhI/lpJbvvIjno4Hnop/mkI3lo57vvJ/vvIkiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFjayBoYXMgJWQgdW5yZXNvbHZlZCBkZWx0YSIKK21zZ2lkX3BsdXJhbCAicGFjayBoYXMgJWQgdW5yZXNvbHZlZCBkZWx0YXMiCittc2dzdHJbMF0gIuWMheaciSAlZCDlgIvmnKrop6PmsbrnmoQgZGVsdGEiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjEyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlZmxhdGUgYXBwZW5kZWQgb2JqZWN0ICglZCkiCittc2dzdHIgIuS4jeiDveWjk+e4rumZhOWKoOeJqeS7tu+8iCVk77yJIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxMzkyCisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIG9iamVjdCAlcyBpcyBjb3JydXB0IgorbXNnc3RyICLmnKzmqZ/nianku7YgJXMg5bey5pCN5aOeIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDA2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2tmaWxlIG5hbWUgJyVzJyBkb2VzIG5vdCBlbmQgd2l0aCAnLnBhY2snIgorbXNnc3RyICJwYWNrZmlsZSDlkI3nqLEgJyVzJyDmspLmnInku6UgJy5wYWNrJyDntZDlsL4iCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHdyaXRlICVzIGZpbGUgJyVzJyIKK21zZ3N0ciAi54Sh5rOV5a+r5YWlICVzIOaqlOahiCAnJXMnIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjbG9zZSB3cml0dGVuICVzIGZpbGUgJyVzJyIKK21zZ3N0ciAi54Sh5rOV6Zec6ZaJ5bey5a+r5YWl55qEICVzIOaqlOahiCAnJXMnIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNDYzCittc2dpZCAiZXJyb3Igd2hpbGUgY2xvc2luZyBwYWNrIGZpbGUiCittc2dzdHIgIumXnOmWieWMheaqlOahiOaZgueZvOeUn+mMr+iqpCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ3NworbXNnaWQgImNhbm5vdCBzdG9yZSBwYWNrIGZpbGUiCittc2dzdHIgIueEoeazleWEsuWtmOWMheaqlOahiCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTQ4NQorbXNnaWQgImNhbm5vdCBzdG9yZSBpbmRleCBmaWxlIgorbXNnc3RyICLnhKHms5XlhLLlrZjntKLlvJXmqpTmoYgiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1MjkgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyODYyCisjLCBjLWZvcm1hdAorbXNnaWQgImJhZCBwYWNrLmluZGV4dmVyc2lvbj0lPFBSSXUzMj4iCittc2dzdHIgIuWjnueahCBwYWNrLmluZGV4dmVyc2lvbj0lPFBSSXUzMj4iCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE1OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IG9wZW4gZXhpc3RpbmcgcGFjayBmaWxlICclcyciCittc2dzdHIgIueEoeazlemWi+WVn+ePvuWtmOWMheaqlOahiCAnJXMnIgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNTk5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBvcGVuIGV4aXN0aW5nIHBhY2sgaWR4IGZpbGUgZm9yICclcyciCittc2dzdHIgIueEoeazleeCuiAlcyDplovllZ/ljIXntKLlvJXmqpTmoYgiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE2NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm9uIGRlbHRhOiAlZCBvYmplY3QiCittc2dpZF9wbHVyYWwgIm5vbiBkZWx0YTogJWQgb2JqZWN0cyIKK21zZ3N0clswXSAi6Z2eIGRlbHRh77yaJWQg5YCL54mp5Lu2IgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYWluIGxlbmd0aCA9ICVkOiAlbHUgb2JqZWN0IgorbXNnaWRfcGx1cmFsICJjaGFpbiBsZW5ndGggPSAlZDogJWx1IG9iamVjdHMiCittc2dzdHJbMF0gIumPiOmVtyA9ICVkOiAlbHUg54mp5Lu2IgorCisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNjkzCittc2dpZCAiQ2Fubm90IGNvbWUgYmFjayB0byBjd2QiCittc2dzdHIgIueEoeazlei/lOWbnuebruWJjeW3peS9nOebrumMhCIKKworIzogYnVpbHRpbi9pbmRleC1wYWNrLmM6MTc0MiBidWlsdGluL2luZGV4LXBhY2suYzoxNzQ1CisjOiBidWlsdGluL2luZGV4LXBhY2suYzoxNzYxIGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkICVzIgorbXNnc3RyICLpjK/oqqTpgbjpoIUgJXMiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3ODEKK21zZ2lkICItLWZpeC10aGluIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgLS1zdGRpbiIKK21zZ3N0ciAiLS1maXgtdGhpbiDkuI3og73lkowgLS1zdGRpbiDlkIzmmYLkvb/nlKgiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3ODMKK21zZ2lkICItLXN0ZGluIHJlcXVpcmVzIGEgZ2l0IHJlcG9zaXRvcnkiCittc2dzdHIgIi0tc3RkaW4g6ZyA6KaB5LiA5YCLIGdpdCDniYjmnKzluqsiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE3ODkKK21zZ2lkICItLXZlcmlmeSB3aXRoIG5vIHBhY2tmaWxlIG5hbWUgZ2l2ZW4iCittc2dzdHIgIi0tdmVyaWZ5IOaykuacieaPkOS+myBwYWNrZmlsZSDlkI3nqLHlj4PmlbgiCisKKyM6IGJ1aWx0aW4vaW5kZXgtcGFjay5jOjE4MzcgYnVpbHRpbi91bnBhY2stb2JqZWN0cy5jOjU4MgorbXNnaWQgImZzY2sgZXJyb3IgaW4gcGFjayBvYmplY3RzIgorbXNnc3RyICLlnKjmiZPljIXnianku7bkuK0gZnNjayDmqqLmn6XnmbznlJ/pjK/oqqQiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IHRlbXBsYXRlICclcyciCittc2dzdHIgIuS4jeiDveWwjeevhOacrCAnJXMnIOWRvOWPqyBzdGF0IgorCisjOiBidWlsdGluL2luaXQtZGIuYzo2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbmRpciAnJXMnIgorbXNnc3RyICLkuI3og73plovllZ/nm67pjIQgJyVzJyIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWRsaW5rICclcyciCittc2dzdHIgIuS4jeiDveiugOWPlumAo+e1kCAnJXMnIgorCisjOiBidWlsdGluL2luaXQtZGIuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3ltbGluayAnJXMnICclcyciCittc2dzdHIgIuS4jeiDveiHqiAnJXMnIOWIsCAnJXMnIOW7uueri+espuiZn+mAo+e1kCIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNvcHkgJyVzJyB0byAnJXMnIgorbXNnc3RyICLkuI3og73opIfoo70gJyVzJyDoh7MgJyVzJyIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgdGVtcGxhdGUgJXMiCittc2dzdHIgIuW/veeVpeevhOacrCAlcyIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgInRlbXBsYXRlcyBub3QgZm91bmQgaW4gJXMiCittc2dzdHIgIuaykuacieWcqCAlcyDkuK3mib7liLDnr4TmnKwiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgY29weWluZyB0ZW1wbGF0ZXMgZnJvbSAnJXMnOiAlcyIKK21zZ3N0ciAi5rKS5pyJ5b6eICclcycg6KSH6KO956+E5pys77yaJXMiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaGFuZGxlIGZpbGUgdHlwZSAlZCIKK21zZ3N0ciAi5LiN6IO96JmV55CGICVkIOmhnuWei+eahOaqlOahiCIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlICVzIHRvICVzIgorbXNnc3RyICLkuI3og73np7vli5UgJXMg6IezICVzIgorCisjOiBidWlsdGluL2luaXQtZGIuYzozNTQgYnVpbHRpbi9pbml0LWRiLmM6MzU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICIlcyDlt7LntpPlrZjlnKgiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJSZWluaXRpYWxpemVkIGV4aXN0aW5nIHNoYXJlZCBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCittc2dzdHIgIumHjeaWsOWIneWni+WMluW3suWtmOWcqOeahOWFseS6qyBHaXQg54mI5pys5bqr5pa8ICVzJXNcbiIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlaW5pdGlhbGl6ZWQgZXhpc3RpbmcgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgorbXNnc3RyICLph43mlrDliJ3lp4vljJblt7LlrZjlnKjnmoQgR2l0IOeJiOacrOW6q+aWvCAlcyVzXG4iCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJJbml0aWFsaXplZCBlbXB0eSBzaGFyZWQgR2l0IHJlcG9zaXRvcnkgaW4gJXMlc1xuIgorbXNnc3RyICLlt7LliJ3lp4vljJbnqbrnmoTlhbHkuqsgR2l0IOeJiOacrOW6q+aWvCAlcyVzXG4iCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQxOQorIywgYy1mb3JtYXQKK21zZ2lkICJJbml0aWFsaXplZCBlbXB0eSBHaXQgcmVwb3NpdG9yeSBpbiAlcyVzXG4iCittc2dzdHIgIuW3suWIneWni+WMluepuueahCBHaXQg54mI5pys5bqr5pa8ICVzJXNcbiIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NDY4Cittc2dpZCAiIgorImdpdCBpbml0IFstcSB8IC0tcXVpZXRdIFstLWJhcmVdIFstLXRlbXBsYXRlPTx0ZW1wbGF0ZS1kaXJlY3Rvcnk+XSBbLS0iCisic2hhcmVkWz08cGVybWlzc2lvbnM+XV0gWzxkaXJlY3Rvcnk+XSIKK21zZ3N0ciAiIgorImdpdCBpbml0IFstcSB8IC0tcXVpZXRdIFstLWJhcmVdIFstLXRlbXBsYXRlPTznr4TmnKznm67pjIQ+XSBbLS1zaGFyZWRbPTzmrIrpmZA+XV0gIgorIls855uu6YyEPl0iCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MQorbXNnaWQgInBlcm1pc3Npb25zIgorbXNnc3RyICLmrIrpmZAiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjQ5MgorbXNnaWQgInNwZWNpZnkgdGhhdCB0aGUgZ2l0IHJlcG9zaXRvcnkgaXMgdG8gYmUgc2hhcmVkIGFtb25nc3Qgc2V2ZXJhbCB1c2VycyIKK21zZ3N0ciAi5oyH5a6aIGdpdCDniYjmnKzluqvmmK/lpJrlgIvkvb/nlKjogIXkuYvplpPlhbHkuqvnmoQiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUyOSBidWlsdGluL2luaXQtZGIuYzo1MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG1rZGlyICVzIgorbXNnc3RyICLkuI3og73lu7rnq4vnm67pjIQgJXMiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjUzOAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY2hkaXIgdG8gJXMiCittc2dzdHIgIuS4jeiDveWIh+aPm+ebrumMhOWIsCAlcyIKKworIzogYnVpbHRpbi9pbml0LWRiLmM6NTU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyAob3IgLS13b3JrLXRyZWU9PGRpcmVjdG9yeT4pIG5vdCBhbGxvd2VkIHdpdGhvdXQgc3BlY2lmeWluZyAlcyAob3IgLS1naXQtIgorImRpcj08ZGlyZWN0b3J5PikiCittc2dzdHIgIuS4jeWFgeiosSAlc++8iOaIliAtLXdvcmstdHJlZT0855uu6YyEPu+8ieiAjOaykuacieaMh+WumiAlc++8iOaIliAtLWdpdC1kaXI9POebrumMhD7vvIkiCisKKyM6IGJ1aWx0aW4vaW5pdC1kYi5jOjU4NworIywgYy1mb3JtYXQKK21zZ2lkICJDYW5ub3QgYWNjZXNzIHdvcmsgdHJlZSAnJXMnIgorbXNnc3RyICLkuI3og73lrZjlj5blt6XkvZzljYAgJyVzJyIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxNgorbXNnaWQgIiIKKyJnaXQgaW50ZXJwcmV0LXRyYWlsZXJzIFstLWluLXBsYWNlXSBbLS10cmltLWVtcHR5XSBbKC0tdHJhaWxlciAiCisiPHRva2VuPlsoPXw6KTx2YWx1ZT5dKS4uLl0gWzxmaWxlPi4uLl0iCittc2dzdHIgIiIKKyJnaXQgaW50ZXJwcmV0LXRyYWlsZXJzIFstLWluLXBsYWNlXSBbLS10cmltLWVtcHR5XSBbKC0tdHJhaWxlciA86Y21PlsoPXw6KTzlgLwiCisiPl0pLi4uXSBbPOaqlOahiD4uLi5dIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk1Cittc2dpZCAiZWRpdCBmaWxlcyBpbiBwbGFjZSIKK21zZ3N0ciAi5Zyo5Y6f5L2N57eo6Lyv5qqU5qGIIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk2Cittc2dpZCAidHJpbSBlbXB0eSB0cmFpbGVycyIKK21zZ3N0ciAi5Yiq6Zmk56m655qE5bC+6YOo572y5ZCNIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjk5Cittc2dpZCAid2hlcmUgdG8gcGxhY2UgdGhlIG5ldyB0cmFpbGVyIgorbXNnc3RyICLlnKjlk6roo6HmlL7nva7mlrDnmoTlsL7pg6jnvbLlkI0iCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTAxCittc2dpZCAiYWN0aW9uIGlmIHRyYWlsZXIgYWxyZWFkeSBleGlzdHMiCittc2dzdHIgIueVtuWwvumDqOe9suWQjeW3sue2k+WtmOWcqOaZguaJgOaOoeWPlueahOWLleS9nCIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMDMKK21zZ2lkICJhY3Rpb24gaWYgdHJhaWxlciBpcyBtaXNzaW5nIgorbXNnc3RyICLnlbblsL7pg6jnvbLlkI3nvLrlsJHmmYLmiYDmjqHlj5bnmoTli5XkvZwiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA1Cittc2dpZCAib3V0cHV0IG9ubHkgdGhlIHRyYWlsZXJzIgorbXNnc3RyICLlj6rovLjlh7rlsL7pg6jnvbLlkI0iCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA2Cittc2dpZCAiZG8gbm90IGFwcGx5IGNvbmZpZyBydWxlcyIKK21zZ3N0ciAi5LiN6KaB5oeJ55So6Kit5a6a6KaP5YmHIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEwNworbXNnaWQgImpvaW4gd2hpdGVzcGFjZS1jb250aW51ZWQgdmFsdWVzIgorbXNnc3RyICLpgKPnt5rnqbrnmb3mipjooYznmoTlgLwiCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTA4Cittc2dpZCAic2V0IHBhcnNpbmcgb3B0aW9ucyIKK21zZ3N0ciAi6Kit5a6a6Kej5p6Q6YG46aCFIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjExMAorbXNnaWQgImRvIG5vdCB0cmVhdCAtLS0gc3BlY2lhbGx5IgorbXNnc3RyICLkuI3opoHlsI0gLS0tIOeJueauiuiZleeQhiIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMTEKK21zZ2lkICJ0cmFpbGVyIgorbXNnc3RyICLlsL7pg6jnvbLlkI0iCisKKyM6IGJ1aWx0aW4vaW50ZXJwcmV0LXRyYWlsZXJzLmM6MTEyCittc2dpZCAidHJhaWxlcihzKSB0byBhZGQiCittc2dzdHIgIuimgeaWsOWinueahOWwvumDqOe9suWQjSIKKworIzogYnVpbHRpbi9pbnRlcnByZXQtdHJhaWxlcnMuYzoxMjMKK21zZ2lkICItLXRyYWlsZXIgd2l0aCAtLW9ubHktaW5wdXQgZG9lcyBub3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiLS10cmFpbGVyIOWSjCAtLW9ubHktaW5wdXQg5ZCM5pmC5L2/55So5rKS5pyJ5oSP576pIgorCisjOiBidWlsdGluL2ludGVycHJldC10cmFpbGVycy5jOjEzMworbXNnaWQgIm5vIGlucHV0IGZpbGUgZ2l2ZW4gZm9yIGluLXBsYWNlIGVkaXRpbmciCittc2dzdHIgIuaykuaciee1puWHuuimgeWOn+S9jee3qOi8r+eahOaqlOahiCIKKworIzogYnVpbHRpbi9sb2cuYzo1NgorbXNnaWQgImdpdCBsb2cgWzxvcHRpb25zPl0gWzxyZXZpc2lvbi1yYW5nZT5dIFtbLS1dIDxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBsb2cgWzzpgbjpoIU+XSBbPOeJiOacrOevhOWcjT5dIFtbLS1dIDzot6/lvpE+Li4uXSIKKworIzogYnVpbHRpbi9sb2cuYzo1NworbXNnaWQgImdpdCBzaG93IFs8b3B0aW9ucz5dIDxvYmplY3Q+Li4uIgorbXNnc3RyICJnaXQgc2hvdyBbPOmBuOmghT5dIDznianku7Y+Li4uIgorCisjOiBidWlsdGluL2xvZy5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIC0tZGVjb3JhdGUgb3B0aW9uOiAlcyIKK21zZ3N0ciAi54Sh5pWI55qEIC0tZGVjb3JhdGUg6YG46aCF77yaJXMiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTc0Cittc2dpZCAic2hvdyBzb3VyY2UiCittc2dzdHIgIumhr+ekuua6kCIKKworIzogYnVpbHRpbi9sb2cuYzoxNzUKK21zZ2lkICJVc2UgbWFpbCBtYXAgZmlsZSIKK21zZ3N0ciAi5L2/55So5L+h5Lu25pig5bCE5qqU5qGIIgorCisjOiBidWlsdGluL2xvZy5jOjE3NworbXNnaWQgIm9ubHkgZGVjb3JhdGUgcmVmcyB0aGF0IG1hdGNoIDxwYXR0ZXJuPiIKK21zZ3N0ciAi5Y+q5L+u6aO+6IiHIDzmqKHlvI8+IOespuWQiOeahOW8leeUqCIKKworIzogYnVpbHRpbi9sb2cuYzoxNzkKK21zZ2lkICJkbyBub3QgZGVjb3JhdGUgcmVmcyB0aGF0IG1hdGNoIDxwYXR0ZXJuPiIKK21zZ3N0ciAi5LiN5L+u6aO+5ZKMIDzmqKHlvI8+IOespuWQiOeahOW8leeUqCIKKworIzogYnVpbHRpbi9sb2cuYzoxODAKK21zZ2lkICJkZWNvcmF0ZSBvcHRpb25zIgorbXNnc3RyICLkv67po77pgbjpoIUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTgzCittc2dpZCAiUHJvY2VzcyBsaW5lIHJhbmdlIG4sbSBpbiBmaWxlLCBjb3VudGluZyBmcm9tIDEiCittc2dzdHIgIuiZleeQhuaqlOahiOS4reesrCBuIOWIsCBtIOS5i+mWk+eahOihjO+8jOW+niAxIOmWi+WniyIKKworIzogYnVpbHRpbi9sb2cuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmluYWwgb3V0cHV0OiAlZCAlc1xuIgorbXNnc3RyICLmnIDntYLovLjlh7rvvJolZCAlc1xuIgorCisjOiBidWlsdGluL2xvZy5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJnaXQgc2hvdyAlczogYmFkIGZpbGUiCittc2dzdHIgImdpdCBzaG93ICVzOiDmkI3lo57nmoTmqpTmoYgiCisKKyM6IGJ1aWx0aW4vbG9nLmM6NTUwIGJ1aWx0aW4vbG9nLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCByZWFkIG9iamVjdCAlcyIKK21zZ3N0ciAi5LiN6IO96K6A5Y+W54mp5Lu2ICVzIgorCisjOiBidWlsdGluL2xvZy5jOjY3MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHR5cGU6ICVkIgorbXNnc3RyICLmnKrnn6XpoZ7lnovvvJolZCIKKworIzogYnVpbHRpbi9sb2cuYzo4MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludmFsaWQgY292ZXIgZnJvbSBkZXNjcmlwdGlvbiBtb2RlIgorbXNnc3RyICIlc++8muW+nuaPj+i/sOeUoueUn+mZhOWHveeahOaooeW8j+eEoeaViCIKKworIzogYnVpbHRpbi9sb2cuYzo4MjEKK21zZ2lkICJmb3JtYXQuaGVhZGVycyB3aXRob3V0IHZhbHVlIgorbXNnc3RyICJmb3JtYXQuaGVhZGVycyDmspLmnInlgLwiCisKKyM6IGJ1aWx0aW4vbG9nLmM6OTM2Cittc2dpZCAibmFtZSBvZiBvdXRwdXQgZGlyZWN0b3J5IGlzIHRvbyBsb25nIgorbXNnc3RyICLovLjlh7rnm67pjITlkI3lpKrplbciCisKKyM6IGJ1aWx0aW4vbG9nLmM6OTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIHBhdGNoIGZpbGUgJXMiCittc2dzdHIgIueEoeazlemWi+WVn+S/ruijnOaqlOahiCAlcyIKKworIzogYnVpbHRpbi9sb2cuYzo5NjkKK21zZ2lkICJuZWVkIGV4YWN0bHkgb25lIHJhbmdlIgorbXNnc3RyICLlj6rpnIDopoHkuIDlgIvnr4TlnI0iCisKKyM6IGJ1aWx0aW4vbG9nLmM6OTc5Cittc2dpZCAibm90IGEgcmFuZ2UiCittc2dzdHIgIuS4jeaYr+S4gOWAi+evhOWcjSIKKworIzogYnVpbHRpbi9sb2cuYzoxMTQzCittc2dpZCAiY292ZXIgbGV0dGVyIG5lZWRzIGVtYWlsIGZvcm1hdCIKK21zZ3N0ciAi6ZmE5Ye96ZyA6KaB5L+h5Lu25L2N5Z2A5qC85byPIgorCisjOiBidWlsdGluL2xvZy5jOjExNDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGNvdmVyLWxldHRlciBmaWxlIgorbXNnc3RyICLnhKHms5Xlu7rnq4vpmYTlh73mqpTmoYgiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnNhbmUgaW4tcmVwbHktdG86ICVzIgorbXNnc3RyICLkuI3mraPluLjnmoQgaW4tcmVwbHktdG/vvJolcyIKKworIzogYnVpbHRpbi9sb2cuYzoxMjU1Cittc2dpZCAiZ2l0IGZvcm1hdC1wYXRjaCBbPG9wdGlvbnM+XSBbPHNpbmNlPiB8IDxyZXZpc2lvbi1yYW5nZT5dIgorbXNnc3RyICJnaXQgZm9ybWF0LXBhdGNoIFs86YG46aCFPl0gWzzlvp4+IHwgPOeJiOacrOevhOWcjT5dIgorCisjOiBidWlsdGluL2xvZy5jOjEzMTMKK21zZ2lkICJ0d28gb3V0cHV0IGRpcmVjdG9yaWVzPyIKK21zZ3N0ciAi5YWp5YCL6Ly45Ye655uu6YyE77yfIgorCisjOiBidWlsdGluL2xvZy5jOjE0MjQgYnVpbHRpbi9sb2cuYzoyMTk3IGJ1aWx0aW4vbG9nLmM6MjE5OSBidWlsdGluL2xvZy5jOjIyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21taXQgJXMiCittc2dzdHIgIuacquefpeaPkOS6pCAlcyIKKworIzogYnVpbHRpbi9sb2cuYzoxNDM0IGJ1aWx0aW4vcmVwbGFjZS5jOjU4IGJ1aWx0aW4vcmVwbGFjZS5jOjIwNworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjEwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZWYiCittc2dzdHIgIueEoeazleWwhyAnJXMnIOino+aekOeCuuS4gOWAi+acieaViOW8leeUqCIKKworIzogYnVpbHRpbi9sb2cuYzoxNDM5Cittc2dpZCAiY291bGQgbm90IGZpbmQgZXhhY3QgbWVyZ2UgYmFzZSIKK21zZ3N0ciAi5LiN6IO95om+5Yiw5rqW56K655qE5ZCI5L215Z+656SOIgorCisjOiBidWlsdGluL2xvZy5jOjE0NDMKK21zZ2lkICIiCisiZmFpbGVkIHRvIGdldCB1cHN0cmVhbSwgaWYgeW91IHdhbnQgdG8gcmVjb3JkIGJhc2UgY29tbWl0IGF1dG9tYXRpY2FsbHksXG4iCisicGxlYXNlIHVzZSBnaXQgYnJhbmNoIC0tc2V0LXVwc3RyZWFtLXRvIHRvIHRyYWNrIGEgcmVtb3RlIGJyYW5jaC5cbiIKKyJPciB5b3UgY291bGQgc3BlY2lmeSBiYXNlIGNvbW1pdCBieSAtLWJhc2U9PGJhc2UtY29tbWl0LWlkPiBtYW51YWxseSIKK21zZ3N0ciAiIgorIueEoeazleW+l+WIsOS4iua4uOS9jeWdgO+8jOWmguaenOS9oOaDs+iHquWLleiomOmMhOWfuuekjuaPkOS6pO+8jOiri+S9v+eUqOaMh+S7pFxuIgorImdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG8g5L6G6L+96Lmk5LiA5YCL6YGg56uv5YiG5pSv44CC5oiW6ICF5L2g5Y+v5Lul6YCP6YGOXG4iCisi5Y+D5pW4IC0tYmFzZT085Z+656SO5o+Q5LqkPiDmiYvli5XmjIflrprkuIDlgIvln7rnpI7mj5DkuqQiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ2MworbXNnaWQgImZhaWxlZCB0byBmaW5kIGV4YWN0IG1lcmdlIGJhc2UiCittc2dzdHIgIueEoeazleaJvuWIsOa6lueiuueahOWQiOS9teWfuuekjiIKKworIzogYnVpbHRpbi9sb2cuYzoxNDc0Cittc2dpZCAiYmFzZSBjb21taXQgc2hvdWxkIGJlIHRoZSBhbmNlc3RvciBvZiByZXZpc2lvbiBsaXN0IgorbXNnc3RyICLln7rnpI7mj5DkuqTmh4noqbLmmK/niYjmnKzliJfooajnmoTnpZblhYgiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTQ3OAorbXNnaWQgImJhc2UgY29tbWl0IHNob3VsZG4ndCBiZSBpbiByZXZpc2lvbiBsaXN0IgorbXNnc3RyICLln7rnpI7mj5DkuqTkuI3mh4noqbLlh7rnj77lnKjniYjmnKzliJfooajkuK0iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTUzMQorbXNnaWQgImNhbm5vdCBnZXQgcGF0Y2ggaWQiCittc2dzdHIgIueEoeazleW+l+WIsOS/ruijnOaqlCBpZCIKKworIzogYnVpbHRpbi9sb2cuYzoxNTgzCittc2dpZCAiZmFpbGVkIHRvIGluZmVyIHJhbmdlLWRpZmYgcmFuZ2VzIgorbXNnc3RyICLnhKHms5XmjqjmlrcgcmFuZ2UtZGlmZiDnr4TlnI0iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTYyOQorbXNnaWQgInVzZSBbUEFUQ0ggbi9tXSBldmVuIHdpdGggYSBzaW5nbGUgcGF0Y2giCittc2dzdHIgIuS9v+eUqCBbUEFUQ0ggbi9tXe+8jOWNs+S9v+WPquacieS4gOWAi+S/ruijnOaqlCIKKworIzogYnVpbHRpbi9sb2cuYzoxNjMyCittc2dpZCAidXNlIFtQQVRDSF0gZXZlbiB3aXRoIG11bHRpcGxlIHBhdGNoZXMiCittc2dzdHIgIuS9v+eUqCBbUEFUQ0hd77yM5Y2z5L2/5pyJ5aSa5YCL5L+u6KOc5qqUIgorCisjOiBidWlsdGluL2xvZy5jOjE2MzYKK21zZ2lkICJwcmludCBwYXRjaGVzIHRvIHN0YW5kYXJkIG91dCIKK21zZ3N0ciAi5YiX5Y2w5L+u6KOc5qqU5Yiw5qiZ5rqW6Ly45Ye6IgorCisjOiBidWlsdGluL2xvZy5jOjE2MzgKK21zZ2lkICJnZW5lcmF0ZSBhIGNvdmVyIGxldHRlciIKK21zZ3N0ciAi55Sf5oiQ5LiA5bCB6ZmE5Ye9IgorCisjOiBidWlsdGluL2xvZy5jOjE2NDAKK21zZ2lkICJ1c2Ugc2ltcGxlIG51bWJlciBzZXF1ZW5jZSBmb3Igb3V0cHV0IGZpbGUgbmFtZXMiCittc2dzdHIgIuS9v+eUqOewoeWWrueahOaVuOWtl+W6j+WIl+S9nOeCuui8uOWHuuaqlOahiOWQjSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjQxCittc2dpZCAic2Z4IgorbXNnc3RyICLlvozntrQiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0MgorbXNnaWQgInVzZSA8c2Z4PiBpbnN0ZWFkIG9mICcucGF0Y2gnIgorbXNnc3RyICLkvb/nlKggPOW+jOe2tD4g5Luj5pu/ICcucGF0Y2gnIgorCisjOiBidWlsdGluL2xvZy5jOjE2NDQKK21zZ2lkICJzdGFydCBudW1iZXJpbmcgcGF0Y2hlcyBhdCA8bj4gaW5zdGVhZCBvZiAxIgorbXNnc3RyICLkv67oo5zmqpTku6UgPG4+IOmWi+Wni+e3qOiZn++8jOiAjOS4jeaYrzEiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY0NgorbXNnaWQgIm1hcmsgdGhlIHNlcmllcyBhcyBOdGggcmUtcm9sbCIKK21zZ3N0ciAi5qiZ6KiY5L+u6KOc5qqU57O75YiX5piv56ys5bm+5qyh6YeN6KO9IgorCisjOiBidWlsdGluL2xvZy5jOjE2NDgKK21zZ2lkICJVc2UgW1JGQyBQQVRDSF0gaW5zdGVhZCBvZiBbUEFUQ0hdIgorbXNnc3RyICLkvb/nlKggW1JGQyBQQVRDSF0g5Luj5pu/IFtQQVRDSF0iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1MQorbXNnaWQgImNvdmVyLWZyb20tZGVzY3JpcHRpb24tbW9kZSIKK21zZ3N0ciAi5b6e5o+P6L+w55Si55Sf6ZmE5Ye955qE5qih5byPIgorCisjOiBidWlsdGluL2xvZy5jOjE2NTIKK21zZ2lkICJnZW5lcmF0ZSBwYXJ0cyBvZiBhIGNvdmVyIGxldHRlciBiYXNlZCBvbiBhIGJyYW5jaCdzIGRlc2NyaXB0aW9uIgorbXNnc3RyICLln7rmlrzliIbmlK/mj4/ov7DnlKLnlJ/pg6jliIbpmYTlh70iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1NAorbXNnaWQgIlVzZSBbPHByZWZpeD5dIGluc3RlYWQgb2YgW1BBVENIXSIKK21zZ3N0ciAi5L2/55SoIFs85YmN57a0Pl0g5Luj5pu/IFtQQVRDSF0iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY1NworbXNnaWQgInN0b3JlIHJlc3VsdGluZyBmaWxlcyBpbiA8ZGlyPiIKK21zZ3N0ciAi5oqK57WQ5p6c5qqU5qGI5YSy5a2Y5ZyoIDznm67pjIQ+IgorCisjOiBidWlsdGluL2xvZy5jOjE2NjAKK21zZ2lkICJkb24ndCBzdHJpcC9hZGQgW1BBVENIXSIKK21zZ3N0ciAi5LiN5Yiq6ZmkL+aWsOWiniBbUEFUQ0hdIgorCisjOiBidWlsdGluL2xvZy5jOjE2NjMKK21zZ2lkICJkb24ndCBvdXRwdXQgYmluYXJ5IGRpZmZzIgorbXNnc3RyICLkuI3ovLjlh7rkuozpgLLkvY3lt67nlbAiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2NQorbXNnaWQgIm91dHB1dCBhbGwtemVybyBoYXNoIGluIEZyb20gaGVhZGVyIgorbXNnc3RyICLlnKggRnJvbSDmqJnpoK3oqIrmga/kuK3ovLjlh7rlhajngrrpm7bnmoTpm5zmuYrlgLwiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY2NworbXNnaWQgImRvbid0IGluY2x1ZGUgYSBwYXRjaCBtYXRjaGluZyBhIGNvbW1pdCB1cHN0cmVhbSIKK21zZ3N0ciAi5LiN5YyF5ZCr5bey5Zyo5LiK5ri45o+Q5Lqk5Lit55qE5L+u6KOc5qqUIgorCisjOiBidWlsdGluL2xvZy5jOjE2NjkKK21zZ2lkICJzaG93IHBhdGNoIGZvcm1hdCBpbnN0ZWFkIG9mIGRlZmF1bHQgKHBhdGNoICsgc3RhdCkiCittc2dzdHIgIumhr+ekuue0lOS/ruijnOaqlOagvOW8j+iAjOmdnumgkOioreeahO+8iOS/ruijnOaqlCvni4DmhYvvvIkiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY3MQorbXNnaWQgIk1lc3NhZ2luZyIKK21zZ3N0ciAi5L+h5Lu25YKz6YCBIgorCisjOiBidWlsdGluL2xvZy5jOjE2NzIKK21zZ2lkICJoZWFkZXIiCittc2dzdHIgImhlYWRlciIKKworIzogYnVpbHRpbi9sb2cuYzoxNjczCittc2dpZCAiYWRkIGVtYWlsIGhlYWRlciIKK21zZ3N0ciAi5paw5aKe5L+h5Lu26aCtIgorCisjOiBidWlsdGluL2xvZy5jOjE2NzQgYnVpbHRpbi9sb2cuYzoxNjc2Cittc2dpZCAiZW1haWwiCittc2dzdHIgIuS/oeS7tuS9jeWdgCIKKworIzogYnVpbHRpbi9sb2cuYzoxNjc0Cittc2dpZCAiYWRkIFRvOiBoZWFkZXIiCittc2dzdHIgIuaWsOWinuaUtuS7tuS6uiIKKworIzogYnVpbHRpbi9sb2cuYzoxNjc2Cittc2dpZCAiYWRkIENjOiBoZWFkZXIiCittc2dzdHIgIuaWsOWinuaKhOmAgSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjc4Cittc2dpZCAiaWRlbnQiCittc2dzdHIgIuaomeiomCIKKworIzogYnVpbHRpbi9sb2cuYzoxNjc5Cittc2dpZCAic2V0IEZyb20gYWRkcmVzcyB0byA8aWRlbnQ+IChvciBjb21taXR0ZXIgaWRlbnQgaWYgYWJzZW50KSIKK21zZ3N0ciAi5bCHIEZyb20g5L2N5Z2A6Kit5a6a54K6IDzmqJnoqJg+77yI5aaC6Iul5LiN5o+Q5L6b77yM5YmH55So5o+Q5Lqk6ICFIElEIOWBmueCuuS9jeWdgO+8iSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjgxCittc2dpZCAibWVzc2FnZS1pZCIKK21zZ3N0ciAi5L+h5Lu25qiZ6KiYIgorCisjOiBidWlsdGluL2xvZy5jOjE2ODIKK21zZ2lkICJtYWtlIGZpcnN0IG1haWwgYSByZXBseSB0byA8bWVzc2FnZS1pZD4iCittc2dzdHIgIuS9v+esrOS4gOWwgeS/oeS7tuS9nOeCuuWwjSA85L+h5Lu25qiZ6KiYPiDnmoTlm57opoYiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4MyBidWlsdGluL2xvZy5jOjE2ODYKK21zZ2lkICJib3VuZGFyeSIKK21zZ3N0ciAi6YKK55WMIgorCisjOiBidWlsdGluL2xvZy5jOjE2ODQKK21zZ2lkICJhdHRhY2ggdGhlIHBhdGNoIgorbXNnc3RyICLpmYTku7bmlrnlvI/mlrDlop7kv67oo5zmqpQiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY4NworbXNnaWQgImlubGluZSB0aGUgcGF0Y2giCittc2dzdHIgIuWFp+iBr+mhr+ekuuS/ruijnOaqlCIKKworIzogYnVpbHRpbi9sb2cuYzoxNjkxCittc2dpZCAiZW5hYmxlIG1lc3NhZ2UgdGhyZWFkaW5nLCBzdHlsZXM6IHNoYWxsb3csIGRlZXAiCittc2dzdHIgIuWVn+eUqOS/oeS7tue3mue0ou+8jOmiqOagvO+8mua3uu+8jOa3sSIKKworIzogYnVpbHRpbi9sb2cuYzoxNjkzCittc2dpZCAic2lnbmF0dXJlIgorbXNnc3RyICLnsL3lkI0iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5NAorbXNnaWQgImFkZCBhIHNpZ25hdHVyZSIKK21zZ3N0ciAi5paw5aKe5LiA5YCL57C95ZCNIgorCisjOiBidWlsdGluL2xvZy5jOjE2OTUKK21zZ2lkICJiYXNlLWNvbW1pdCIKK21zZ3N0ciAi5Z+656SO5o+Q5LqkIgorCisjOiBidWlsdGluL2xvZy5jOjE2OTYKK21zZ2lkICJhZGQgcHJlcmVxdWlzaXRlIHRyZWUgaW5mbyB0byB0aGUgcGF0Y2ggc2VyaWVzIgorbXNnc3RyICLngrrkv67oo5zmqpTliJfooajmlrDlop7liY3nva7mqLnoqIrmga8iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTY5OAorbXNnaWQgImFkZCBhIHNpZ25hdHVyZSBmcm9tIGEgZmlsZSIKK21zZ3N0ciAi5b6e5qqU5qGI5paw5aKe5LiA5YCL57C95ZCNIgorCisjOiBidWlsdGluL2xvZy5jOjE2OTkKK21zZ2lkICJkb24ndCBwcmludCB0aGUgcGF0Y2ggZmlsZW5hbWVzIgorbXNnc3RyICLkuI3opoHliJfljbDkv67oo5zmqpTmqpTmoYjlkI0iCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMQorbXNnaWQgInNob3cgcHJvZ3Jlc3Mgd2hpbGUgZ2VuZXJhdGluZyBwYXRjaGVzIgorbXNnc3RyICLlnKjnlJ/miJDkv67oo5zmqpTmmYLpoa/npLrpgLLluqYiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwMworbXNnaWQgInNob3cgY2hhbmdlcyBhZ2FpbnN0IDxyZXY+IGluIGNvdmVyIGxldHRlciBvciBzaW5nbGUgcGF0Y2giCittc2dzdHIgIuWcqOmZhOWHveaIluWWruWAi+S/ruijnOaqlOS4remhr+ekuuWSjCA8cmV2PiDnmoTlt67nlbAiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTcwNgorbXNnaWQgInNob3cgY2hhbmdlcyBhZ2FpbnN0IDxyZWZzcGVjPiBpbiBjb3ZlciBsZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgorbXNnc3RyICLlnKjpmYTlh73miJbllq7lgIvkv67oo5zmqpTkuK3poa/npLrlkowgPHJlZnNwZWM+IOeahOW3rueVsCIKKworIzogYnVpbHRpbi9sb2cuYzoxNzA4Cittc2dpZCAicGVyY2VudGFnZSBieSB3aGljaCBjcmVhdGlvbiBpcyB3ZWlnaHRlZCIKK21zZ3N0ciAi5bu656uL5qyK6YeN55qE55m+5YiG5q+UIgorCisjOiBidWlsdGluL2xvZy5jOjE3OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpZGVudCBsaW5lOiAlcyIKK21zZ3N0ciAi5YyF5ZCr54Sh5pWI55qE6Lqr5Lu95qiZ6KiY77yaJXMiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTgwNworbXNnaWQgIi1uIGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICItbiDlkowgLWsg5LqS5palIgorCisjOiBidWlsdGluL2xvZy5jOjE4MDkKK21zZ2lkICItLXN1YmplY3QtcHJlZml4Ly0tcmZjIGFuZCAtayBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIgorbXNnc3RyICItLXN1YmplY3QtcHJlZml4Ly0tcmZjIOWSjCAtayDkupLmlqUiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTgxNworbXNnaWQgIi0tbmFtZS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiCittc2dzdHIgIi0tbmFtZS1vbmx5IOeEoeaEj+e+qSIKKworIzogYnVpbHRpbi9sb2cuYzoxODE5Cittc2dpZCAiLS1uYW1lLXN0YXR1cyBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICItLW5hbWUtc3RhdHVzIOeEoeaEj+e+qSIKKworIzogYnVpbHRpbi9sb2cuYzoxODIxCittc2dpZCAiLS1jaGVjayBkb2VzIG5vdCBtYWtlIHNlbnNlIgorbXNnc3RyICItLWNoZWNrIOeEoeaEj+e+qSIKKworIzogYnVpbHRpbi9sb2cuYzoxODU0Cittc2dpZCAic3RhbmRhcmQgb3V0cHV0LCBvciBkaXJlY3RvcnksIHdoaWNoIG9uZT8iCittc2dzdHIgIuaomea6lui8uOWHuuaIluebrumMhO+8jOWTquS4gOWAi++8nyIKKworIzogYnVpbHRpbi9sb2cuYzoxOTU4Cittc2dpZCAiLS1pbnRlcmRpZmYgcmVxdWlyZXMgLS1jb3Zlci1sZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgorbXNnc3RyICItLWludGVyZGlmZiDpnIDopoEgLS1jb3Zlci1sZXR0ZXIg5oiW5Zau5LiA5L+u6KOc5qqUIgorCisjOiBidWlsdGluL2xvZy5jOjE5NjIKK21zZ2lkICJJbnRlcmRpZmY6IgorbXNnc3RyICLniYjmnKzplpPlt67nlbDvvJoiCisKKyM6IGJ1aWx0aW4vbG9nLmM6MTk2MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnRlcmRpZmYgYWdhaW5zdCB2JWQ6IgorbXNnc3RyICLlsI0gdiVkIOeahOeJiOacrOW3rueVsO+8miIKKworIzogYnVpbHRpbi9sb2cuYzoxOTY5Cittc2dpZCAiLS1jcmVhdGlvbi1mYWN0b3IgcmVxdWlyZXMgLS1yYW5nZS1kaWZmIgorbXNnc3RyICItLWNyZWF0aW9uLWZhY3RvciDpnIDopoEgLS1yYW5nZS1kaWZmIgorCisjOiBidWlsdGluL2xvZy5jOjE5NzMKK21zZ2lkICItLXJhbmdlLWRpZmYgcmVxdWlyZXMgLS1jb3Zlci1sZXR0ZXIgb3Igc2luZ2xlIHBhdGNoIgorbXNnc3RyICItLXJhbmdlLWRpZmYg6ZyA6KaBIC0tY292ZXItbGV0dGVyIOaIluWWruS4gOS/ruijnOaqlCIKKworIzogYnVpbHRpbi9sb2cuYzoxOTgxCittc2dpZCAiUmFuZ2UtZGlmZjoiCittc2dzdHIgIuevhOWcjeW3rueVsO+8miIKKworIzogYnVpbHRpbi9sb2cuYzoxOTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlJhbmdlLWRpZmYgYWdhaW5zdCB2JWQ6IgorbXNnc3RyICLlsI0gdiVkIOeahOevhOWcjeW3rueVsO+8miIKKworIzogYnVpbHRpbi9sb2cuYzoxOTkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHNpZ25hdHVyZSBmaWxlICclcyciCittc2dzdHIgIueEoeazleiugOWPluewveWQjeaqlOahiCAnJXMnIgorCisjOiBidWlsdGluL2xvZy5jOjIwMjkKK21zZ2lkICJHZW5lcmF0aW5nIHBhdGNoZXMiCittc2dzdHIgIueUn+aIkOS/ruijnOaqlCIKKworIzogYnVpbHRpbi9sb2cuYzoyMDczCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBvdXRwdXQgZmlsZXMiCittc2dzdHIgIueEoeazleW7uueri+i8uOWHuuaqlOahiCIKKworIzogYnVpbHRpbi9sb2cuYzoyMTMyCittc2dpZCAiZ2l0IGNoZXJyeSBbLXZdIFs8dXBzdHJlYW0+IFs8aGVhZD4gWzxsaW1pdD5dXV0iCittc2dzdHIgImdpdCBjaGVycnkgWy12XSBbPOS4iua4uD4gWzzpoK0+IFs86ZmQ5Yi2Pl1dXSIKKworIzogYnVpbHRpbi9sb2cuYzoyMTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3VsZCBub3QgZmluZCBhIHRyYWNrZWQgcmVtb3RlIGJyYW5jaCwgcGxlYXNlIHNwZWNpZnkgPHVwc3RyZWFtPiBtYW51YWxseS5cbiIKK21zZ3N0ciAi5LiN6IO95om+5Yiw6L+96Lmk55qE6YGg56uv5YiG5pSv77yM6KuL5omL5YuV5oyH5a6aIDzkuIrmuLg+44CCXG4iCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo0NzAKK21zZ2lkICJnaXQgbHMtZmlsZXMgWzxvcHRpb25zPl0gWzxmaWxlPi4uLl0iCittc2dzdHIgImdpdCBscy1maWxlcyBbPOmBuOmghT5dIFs85qqU5qGIPi4uLl0iCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjYKK21zZ2lkICJpZGVudGlmeSB0aGUgZmlsZSBzdGF0dXMgd2l0aCB0YWdzIgorbXNnc3RyICLnlKjmqJnnsaTmqJnoqJjmqpTmoYjnmoTni4DmhYsiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MjgKK21zZ2lkICJ1c2UgbG93ZXJjYXNlIGxldHRlcnMgZm9yICdhc3N1bWUgdW5jaGFuZ2VkJyBmaWxlcyIKK21zZ3N0ciAi5L2/55So5bCP5a+r5a2X5q+N6KGo56S6ICflgYfoqK3mnKrmlLnorornmoQnIOaqlOahiCIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzMAorbXNnaWQgInVzZSBsb3dlcmNhc2UgbGV0dGVycyBmb3IgJ2ZzbW9uaXRvciBjbGVhbicgZmlsZXMiCittc2dzdHIgIuS9v+eUqOWwj+Wvq+Wtl+avjeihqOekuiAnZnNtb25pdG9yIGNsZWFuJyDmqpTmoYgiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1MzIKK21zZ2lkICJzaG93IGNhY2hlZCBmaWxlcyBpbiB0aGUgb3V0cHV0IChkZWZhdWx0KSIKK21zZ3N0ciAi6aGv56S65b+r5Y+W55qE5qqU5qGI77yI6aCQ6Kit77yJIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTM0Cittc2dpZCAic2hvdyBkZWxldGVkIGZpbGVzIGluIHRoZSBvdXRwdXQiCittc2dzdHIgIumhr+ekuuW3suWIqumZpOeahOaqlOahiCIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjUzNgorbXNnaWQgInNob3cgbW9kaWZpZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKK21zZ3N0ciAi6aGv56S65bey5L+u5pS555qE5qqU5qGIIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTM4Cittc2dpZCAic2hvdyBvdGhlciBmaWxlcyBpbiB0aGUgb3V0cHV0IgorbXNnc3RyICLpoa/npLrlhbblroPmqpTmoYgiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NDAKK21zZ2lkICJzaG93IGlnbm9yZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKK21zZ3N0ciAi6aGv56S65b+955Wl55qE5qqU5qGIIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQzCittc2dpZCAic2hvdyBzdGFnZWQgY29udGVudHMnIG9iamVjdCBuYW1lIGluIHRoZSBvdXRwdXQiCittc2dzdHIgIumhr+ekuuaaq+WtmOWNgOWFp+WuueeahOeJqeS7tuWQjeeosSIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU0NQorbXNnaWQgInNob3cgZmlsZXMgb24gdGhlIGZpbGVzeXN0ZW0gdGhhdCBuZWVkIHRvIGJlIHJlbW92ZWQiCittc2dzdHIgIumhr+ekuuaqlOahiOezu+e1semcgOimgeWIqumZpOeahOaqlOahiCIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU0NworbXNnaWQgInNob3cgJ290aGVyJyBkaXJlY3RvcmllcycgbmFtZXMgb25seSIKK21zZ3N0ciAi5Y+q6aGv56S644CM5YW25LuW44CN55uu6YyE55qE5ZCN56ixIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTQ5Cittc2dpZCAic2hvdyBsaW5lIGVuZGluZ3Mgb2YgZmlsZXMiCittc2dzdHIgIumhr+ekuuaqlOahiOaPm+ihjOespuiZn+agvOW8jyIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1MQorbXNnaWQgImRvbid0IHNob3cgZW1wdHkgZGlyZWN0b3JpZXMiCittc2dzdHIgIuS4jemhr+ekuuepuuebrumMhCIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU1NAorbXNnaWQgInNob3cgdW5tZXJnZWQgZmlsZXMgaW4gdGhlIG91dHB1dCIKK21zZ3N0ciAi6aGv56S65pyq5ZCI5L2155qE5qqU5qGIIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU2Cittc2dpZCAic2hvdyByZXNvbHZlLXVuZG8gaW5mb3JtYXRpb24iCittc2dzdHIgIumhr+ekuiByZXNvbHZlLXVuZG8g6KiK5oGvIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTU4Cittc2dpZCAic2tpcCBmaWxlcyBtYXRjaGluZyBwYXR0ZXJuIgorbXNnc3RyICLnrKblkIjmjpLpmaTmqpTmoYjnmoTmqKHlvI8iCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjEKK21zZ2lkICJleGNsdWRlIHBhdHRlcm5zIGFyZSByZWFkIGZyb20gPGZpbGU+IgorbXNnc3RyICLlvp4gPOaqlOahiD4g5Lit6K6A5Y+W5o6S6Zmk5qih5byPIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTY0Cittc2dpZCAicmVhZCBhZGRpdGlvbmFsIHBlci1kaXJlY3RvcnkgZXhjbHVkZSBwYXR0ZXJucyBpbiA8ZmlsZT4iCittc2dzdHIgIuW+niA85qqU5qGIPiDoroDlj5bpoY3lpJbnmoTmr4/lgIvnm67pjITnmoTmjpLpmaTmqKHlvI8iCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NjYKK21zZ2lkICJhZGQgdGhlIHN0YW5kYXJkIGdpdCBleGNsdXNpb25zIgorbXNnc3RyICLmlrDlop7mqJnmupbnmoQgZ2l0IOaOkumZpCIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU3MAorbXNnaWQgIm1ha2UgdGhlIG91dHB1dCByZWxhdGl2ZSB0byB0aGUgcHJvamVjdCB0b3AgZGlyZWN0b3J5IgorbXNnc3RyICLpoa/npLrnm7jlsI3mlrzpoILntJrnm67pjITnmoTmqpTmoYjlkI0iCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzMKK21zZ2lkICJyZWN1cnNlIHRocm91Z2ggc3VibW9kdWxlcyIKK21zZ3N0ciAi5Zyo5a2Q5qih57WE5Lit6YGe6L+0IgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc1Cittc2dpZCAiaWYgYW55IDxmaWxlPiBpcyBub3QgaW4gdGhlIGluZGV4LCB0cmVhdCB0aGlzIGFzIGFuIGVycm9yIgorbXNnc3RyICLlpoLmnpzku7vkvZUgPOaqlOahiD4g6YO95LiN5Zyo57Si5byV5Y2A77yM6KaW54K66Yyv6KqkIgorCisjOiBidWlsdGluL2xzLWZpbGVzLmM6NTc2Cittc2dpZCAidHJlZS1pc2giCittc2dzdHIgIuaoueaIluaPkOS6pCIKKworIzogYnVpbHRpbi9scy1maWxlcy5jOjU3NworbXNnaWQgInByZXRlbmQgdGhhdCBwYXRocyByZW1vdmVkIHNpbmNlIDx0cmVlLWlzaD4gYXJlIHN0aWxsIHByZXNlbnQiCittc2dzdHIgIuWBh+ijneiHquW+niA85qi55oiW5o+Q5LqkPiDkuYvlvozliKrpmaTnmoTot6/lvpHku43nhLblrZjlnKgiCisKKyM6IGJ1aWx0aW4vbHMtZmlsZXMuYzo1NzkKK21zZ2lkICJzaG93IGRlYnVnZ2luZyBkYXRhIgorbXNnc3RyICLpoa/npLrpmaTpjK/os4fmlpkiCisKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6OQorbXNnaWQgIiIKKyJnaXQgbHMtcmVtb3RlIFstLWhlYWRzXSBbLS10YWdzXSBbLS1yZWZzXSBbLS11cGxvYWQtcGFjaz08ZXhlYz5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgWy1xIHwgLS1xdWlldF0gWy0tZXhpdC1jb2RlXSBbLS1nZXQtdXJsXVxuIgorIiAgICAgICAgICAgICAgICAgICAgIFstLXN5bXJlZl0gWzxyZXBvc2l0b3J5PiBbPHJlZnM+Li4uXV0iCittc2dzdHIgIiIKKyJnaXQgbHMtcmVtb3RlIFstLWhlYWRzXSBbLS10YWdzXSBbLS1yZWZzXSBbLS11cGxvYWQtcGFjaz08ZXhlYz5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgWy1xIHwgLS1xdWlldF0gWy0tZXhpdC1jb2RlXSBbLS1nZXQtdXJsXVxuIgorIiAgICAgICAgICAgICAgICAgICAgIFstLXN5bXJlZl0gWzzniYjmnKzluqs+IFs85byV55SoPi4uLl1dIgorCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjU5Cittc2dpZCAiZG8gbm90IHByaW50IHJlbW90ZSBVUkwiCittc2dzdHIgIuS4jeWIl+WNsOmBoOerryBVUkwiCisKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjAgYnVpbHRpbi9scy1yZW1vdGUuYzo2MiBidWlsdGluL3JlYmFzZS5jOjE1NjEKK21zZ2lkICJleGVjIgorbXNnc3RyICJleGVjIgorCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjYxIGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjMKK21zZ2lkICJwYXRoIG9mIGdpdC11cGxvYWQtcGFjayBvbiB0aGUgcmVtb3RlIGhvc3QiCittc2dzdHIgIumBoOerr+S4u+apn+S4iueahCBnaXQtdXBsb2FkLXBhY2sg6Lev5b6RIgorCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjY1Cittc2dpZCAibGltaXQgdG8gdGFncyIKK21zZ3N0ciAi5YOF6ZmQ5pa85qiZ57GkIgorCisjOiBidWlsdGluL2xzLXJlbW90ZS5jOjY2Cittc2dpZCAibGltaXQgdG8gaGVhZHMiCittc2dzdHIgIuWDhemZkOaWvOWIhuaUryIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo2NworbXNnaWQgImRvIG5vdCBzaG93IHBlZWxlZCB0YWdzIgorbXNnc3RyICLkuI3poa/npLrlt7Lop6PmnpDnmoTmqJnnsaQiCisKKyM6IGJ1aWx0aW4vbHMtcmVtb3RlLmM6NjkKK21zZ2lkICJ0YWtlIHVybC48YmFzZT4uaW5zdGVhZE9mIGludG8gYWNjb3VudCIKK21zZ3N0ciAi5Y+D6ICDIHVybC48YmFzZT4uaW5zdGVhZE9mIOioreWumiIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3MgorbXNnaWQgImV4aXQgd2l0aCBleGl0IGNvZGUgMiBpZiBubyBtYXRjaGluZyByZWZzIGFyZSBmb3VuZCIKK21zZ3N0ciAi6Iul5pyq5om+5Yiw56ym5ZCI55qE5byV55So5YmH5Lul6Zui6ZaL56K8MumboumWiyIKKworIzogYnVpbHRpbi9scy1yZW1vdGUuYzo3NQorbXNnaWQgInNob3cgdW5kZXJseWluZyByZWYgaW4gYWRkaXRpb24gdG8gdGhlIG9iamVjdCBwb2ludGVkIGJ5IGl0IgorbXNnc3RyICLpmaTkuobpoa/npLrmjIflkJHnmoTnianku7blpJbvvIzpoa/npLrmjIflkJHnmoTlvJXnlKjlkI0iCisKKyM6IGJ1aWx0aW4vbHMtdHJlZS5jOjMwCittc2dpZCAiZ2l0IGxzLXRyZWUgWzxvcHRpb25zPl0gPHRyZWUtaXNoPiBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IGxzLXRyZWUgWzzpgbjpoIU+XSA85qi55oiW5o+Q5LqkPiBbPOi3r+W+kT4uLi5dIgorCisjOiBidWlsdGluL2xzLXRyZWUuYzoxMjgKK21zZ2lkICJvbmx5IHNob3cgdHJlZXMiCittc2dzdHIgIuWPqumhr+ekuuaouSIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTMwCittc2dpZCAicmVjdXJzZSBpbnRvIHN1YnRyZWVzIgorbXNnc3RyICLpgZ7ov7TliLDlrZDmqLkiCisKKyM6IGJ1aWx0aW4vbHMtdHJlZS5jOjEzMgorbXNnaWQgInNob3cgdHJlZXMgd2hlbiByZWN1cnNpbmciCittc2dzdHIgIueVtumBnui/tOaZgumhr+ekuuaouSIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTM1Cittc2dpZCAidGVybWluYXRlIGVudHJpZXMgd2l0aCBOVUwgYnl0ZSIKK21zZ3N0ciAi5qKd55uu5LulIE5VTCDlrZflhYPntYLmraIiCisKKyM6IGJ1aWx0aW4vbHMtdHJlZS5jOjEzNgorbXNnaWQgImluY2x1ZGUgb2JqZWN0IHNpemUiCittc2dzdHIgIuWMheaLrOeJqeS7tuWkp+WwjyIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTM4IGJ1aWx0aW4vbHMtdHJlZS5jOjE0MAorbXNnaWQgImxpc3Qgb25seSBmaWxlbmFtZXMiCittc2dzdHIgIuWPquWIl+WHuuaqlOahiOWQjSIKKworIzogYnVpbHRpbi9scy10cmVlLmM6MTQzCittc2dpZCAidXNlIGZ1bGwgcGF0aCBuYW1lcyIKK21zZ3N0ciAi5L2/55So5qqU5qGI55qE5YWo6Lev5b6RIgorCisjOiBidWlsdGluL2xzLXRyZWUuYzoxNDUKK21zZ2lkICJsaXN0IGVudGlyZSB0cmVlOyBub3QganVzdCBjdXJyZW50IGRpcmVjdG9yeSAoaW1wbGllcyAtLWZ1bGwtbmFtZSkiCittc2dzdHIgIuWIl+WHuuaVtOWAi+aoue+8m+S4jeWDheWDheebruWJjeebrumMhO+8iOmaseWQqyAtLWZ1bGwtbmFtZe+8iSIKKworIzogYnVpbHRpbi9tYWlsc3BsaXQuYzoyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgbWJveDogJyVzJyIKK21zZ3N0ciAi56m655qEIG1ib3jvvJonJXMnIgorCisjOiBidWlsdGluL21lcmdlLmM6NTUKK21zZ2lkICJnaXQgbWVyZ2UgWzxvcHRpb25zPl0gWzxjb21taXQ+Li4uXSIKK21zZ3N0ciAiZ2l0IG1lcmdlIFs86YG46aCFPl0gWzzmj5DkuqQ+Li4uXSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjU2Cittc2dpZCAiZ2l0IG1lcmdlIC0tYWJvcnQiCittc2dzdHIgImdpdCBtZXJnZSAtLWFib3J0IgorCisjOiBidWlsdGluL21lcmdlLmM6NTcKK21zZ2lkICJnaXQgbWVyZ2UgLS1jb250aW51ZSIKK21zZ3N0ciAiZ2l0IG1lcmdlIC0tY29udGludWUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTkKK21zZ2lkICJzd2l0Y2ggYG0nIHJlcXVpcmVzIGEgdmFsdWUiCittc2dzdHIgIumWi+mXnCBgbScg6ZyA6KaB5LiA5YCL5YC8IgorCisjOiBidWlsdGluL21lcmdlLmM6MTQyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9wdGlvbiBgJXMnIHJlcXVpcmVzIGEgdmFsdWUiCittc2dzdHIgIumBuOmghSBgJXMnIOmcgOimgeS4gOWAi+WAvCIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE4OAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgZmluZCBtZXJnZSBzdHJhdGVneSAnJXMnLlxuIgorbXNnc3RyICLkuI3og73mib7liLDlkIjkvbXnrZbnlaUgJyVzJ+OAglxuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgIkF2YWlsYWJsZSBzdHJhdGVnaWVzIGFyZToiCittc2dzdHIgIuWPr+eUqOeahOetlueVpeacie+8miIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJBdmFpbGFibGUgY3VzdG9tIHN0cmF0ZWdpZXMgYXJlOiIKK21zZ3N0ciAi5Y+v55So55qE6Ieq6KiC562W55Wl5pyJ77yaIgorCisjOiBidWlsdGluL21lcmdlLmM6MjQ1IGJ1aWx0aW4vcHVsbC5jOjEzMgorbXNnaWQgImRvIG5vdCBzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCittc2dzdHIgIuWcqOWQiOS9teeahOacgOW+jOS4jemhr+ekuuW3rueVsOe1seioiCIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI0OCBidWlsdGluL3B1bGwuYzoxMzUKK21zZ2lkICJzaG93IGEgZGlmZnN0YXQgYXQgdGhlIGVuZCBvZiB0aGUgbWVyZ2UiCittc2dzdHIgIuWcqOWQiOS9teeahOacgOW+jOmhr+ekuuW3rueVsOe1seioiCIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI0OSBidWlsdGluL3B1bGwuYzoxMzgKK21zZ2lkICIoc3lub255bSB0byAtLXN0YXQpIgorbXNnc3RyICLvvIjlkowgLS1zdGF0IOWQjOe+qe+8iSIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI1MSBidWlsdGluL3B1bGwuYzoxNDEKK21zZ2lkICJhZGQgKGF0IG1vc3QgPG4+KSBlbnRyaWVzIGZyb20gc2hvcnRsb2cgdG8gbWVyZ2UgY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIuWcqOWQiOS9teaPkOS6pOioiuaBr+S4reaWsOWinu+8iOacgOWkmiA8bj4g5qKd77yJ57K+57Ch5o+Q5Lqk6KiY6YyEIgorCisjOiBidWlsdGluL21lcmdlLmM6MjU0IGJ1aWx0aW4vcHVsbC5jOjE0NworbXNnaWQgImNyZWF0ZSBhIHNpbmdsZSBjb21taXQgaW5zdGVhZCBvZiBkb2luZyBhIG1lcmdlIgorbXNnc3RyICLlu7rnq4vkuIDlgIvllq7njajnmoTmj5DkuqTogIzkuI3mmK/lgZrkuIDmrKHlkIjkvbUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTYgYnVpbHRpbi9wdWxsLmM6MTUwCittc2dpZCAicGVyZm9ybSBhIGNvbW1pdCBpZiB0aGUgbWVyZ2Ugc3VjY2VlZHMgKGRlZmF1bHQpIgorbXNnc3RyICLlpoLmnpzlkIjkvbXmiJDlip/vvIzln7fooYzkuIDmrKHmj5DkuqTvvIjpoJDoqK3vvIkiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNTggYnVpbHRpbi9wdWxsLmM6MTUzCittc2dpZCAiZWRpdCBtZXNzYWdlIGJlZm9yZSBjb21taXR0aW5nIgorbXNnc3RyICLlnKjmj5DkuqTliY3nt6jovK/mj5DkuqToqqrmmI4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjAKK21zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQgKGRlZmF1bHQpIgorbXNnc3RyICLlhYHoqLHlv6vovYnvvIjpoJDoqK3vvIkiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjIgYnVpbHRpbi9wdWxsLmM6MTYwCittc2dpZCAiYWJvcnQgaWYgZmFzdC1mb3J3YXJkIGlzIG5vdCBwb3NzaWJsZSIKK21zZ3N0ciAi5aaC5p6c5LiN6IO95b+r6L2J5bCx5pS+5qOE5ZCI5L21IgorCisjOiBidWlsdGluL21lcmdlLmM6MjY2IGJ1aWx0aW4vcHVsbC5jOjE2MworbXNnaWQgInZlcmlmeSB0aGF0IHRoZSBuYW1lZCBjb21taXQgaGFzIGEgdmFsaWQgR1BHIHNpZ25hdHVyZSIKK21zZ3N0ciAi6amX6K2J5oyH5a6a55qE5o+Q5Lqk5piv5ZCm5YyF5ZCr5LiA5YCL5pyJ5pWI55qEIEdQRyDnsL3lkI0iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjcgYnVpbHRpbi9ub3Rlcy5jOjc4NyBidWlsdGluL3B1bGwuYzoxNjcKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTIwIGJ1aWx0aW4vcmViYXNlLmM6MTU3NSBidWlsdGluL3JldmVydC5jOjExNAorbXNnaWQgInN0cmF0ZWd5IgorbXNnc3RyICLnrZbnlaUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjggYnVpbHRpbi9wdWxsLmM6MTY4Cittc2dpZCAibWVyZ2Ugc3RyYXRlZ3kgdG8gdXNlIgorbXNnc3RyICLopoHkvb/nlKjnmoTlkIjkvbXnrZbnlaUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNjkgYnVpbHRpbi9wdWxsLmM6MTcxCittc2dpZCAib3B0aW9uPXZhbHVlIgorbXNnc3RyICJvcHRpb249dmFsdWUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzAgYnVpbHRpbi9wdWxsLmM6MTcyCittc2dpZCAib3B0aW9uIGZvciBzZWxlY3RlZCBtZXJnZSBzdHJhdGVneSIKK21zZ3N0ciAi5omA6YG455qE5ZCI5L21562W55Wl55qE6YG46aCFIgorCisjOiBidWlsdGluL21lcmdlLmM6MjcyCittc2dpZCAibWVyZ2UgY29tbWl0IG1lc3NhZ2UgKGZvciBhIG5vbi1mYXN0LWZvcndhcmQgbWVyZ2UpIgorbXNnc3RyICLlkIjkvbXnmoTmj5DkuqToqqrmmI7vvIjph53lsI3pnZ7lv6vovYnlvI/lkIjkvbXvvIkiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyNzkKK21zZ2lkICJhYm9ydCB0aGUgY3VycmVudCBpbi1wcm9ncmVzcyBtZXJnZSIKK21zZ3N0ciAi5pS+5qOE55uu5YmN5q2j5Zyo6YCy6KGM55qE5ZCI5L21IgorCisjCisjOiBidWlsdGluL21lcmdlLmM6MjgxCittc2dpZCAiLS1hYm9ydCBidXQgbGVhdmUgaW5kZXggYW5kIHdvcmtpbmcgdHJlZSBhbG9uZSIKK21zZ3N0ciAiLS1hYm9ydO+8jOS9huaYr+S/neeVmee0ouW8leWSjOW3peS9nOWNgCIKKworIzogYnVpbHRpbi9tZXJnZS5jOjI4MworbXNnaWQgImNvbnRpbnVlIHRoZSBjdXJyZW50IGluLXByb2dyZXNzIG1lcmdlIgorbXNnc3RyICLnubznuoznm67liY3mraPlnKjpgLLooYznmoTlkIjkvbUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyODUgYnVpbHRpbi9wdWxsLmM6MTc5Cittc2dpZCAiYWxsb3cgbWVyZ2luZyB1bnJlbGF0ZWQgaGlzdG9yaWVzIgorbXNnc3RyICLlhYHoqLHlkIjkuKbkuI3nm7jpl5znmoTmrbflj7IiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoyOTEKK21zZ2lkICJieXBhc3MgcHJlLW1lcmdlLWNvbW1pdCBhbmQgY29tbWl0LW1zZyBob29rcyIKK21zZ3N0ciAi57me6YGOIHByZS1tZXJnZS1jb21taXQg5ZKMIGNvbW1pdC1tc2cg5o6b6YmkIgorCisjOiBidWlsdGluL21lcmdlLmM6MzA4Cittc2dpZCAiY291bGQgbm90IHJ1biBzdGFzaC4iCittc2dzdHIgIuS4jeiDveWft+ihjOWEsuiXj+OAgiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjMxMworbXNnaWQgInN0YXNoIGZhaWxlZCIKK21zZ3N0ciAi5YSy6JeP5aSx5pWXIgorCisjOiBidWlsdGluL21lcmdlLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHZhbGlkIG9iamVjdDogJXMiCittc2dzdHIgIuS4jeaYr+S4gOWAi+acieaViOeJqeS7tu+8miVzIgorCisjOiBidWlsdGluL21lcmdlLmM6MzQwIGJ1aWx0aW4vbWVyZ2UuYzozNTcKK21zZ2lkICJyZWFkLXRyZWUgZmFpbGVkIgorbXNnc3RyICLoroDlj5bmqLnlpLHmlZciCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogYnVpbHRpbi9tZXJnZS5jOjM4NworbXNnaWQgIiAobm90aGluZyB0byBzcXVhc2gpIgorbXNnc3RyICIg77yI54Sh5Y+v5aOT57iu77yJIgorCisjOiBidWlsdGluL21lcmdlLmM6Mzk4CisjLCBjLWZvcm1hdAorbXNnaWQgIlNxdWFzaCBjb21taXQgLS0gbm90IHVwZGF0aW5nIEhFQURcbiIKK21zZ3N0ciAi5aOT57iu5o+Q5LqkIC0tIOacquabtOaWsCBIRUFEXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gbWVyZ2UgbWVzc2FnZSAtLSBub3QgdXBkYXRpbmcgSEVBRFxuIgorbXNnc3RyICLnhKHlkIjkvbXoqIrmga8gLS0g5pyq5pu05pawIEhFQURcbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjQ5OQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IHBvaW50IHRvIGEgY29tbWl0IgorbXNnc3RyICInJXMnIOaykuacieaMh+WQkeS4gOWAi+aPkOS6pCIKKworIzogYnVpbHRpbi9tZXJnZS5jOjU4NgorIywgYy1mb3JtYXQKK21zZ2lkICJCYWQgYnJhbmNoLiVzLm1lcmdlb3B0aW9ucyBzdHJpbmc6ICVzIgorbXNnc3RyICLlo57nmoQgYnJhbmNoLiVzLm1lcmdlb3B0aW9ucyDlrZfkuLLvvJolcyIKKworIzogYnVpbHRpbi9tZXJnZS5jOjcwOAorbXNnaWQgIk5vdCBoYW5kbGluZyBhbnl0aGluZyBvdGhlciB0aGFuIHR3byBoZWFkcyBtZXJnZS4iCittc2dzdHIgIuacquiZleeQhuWFqeWAi+mgreWQiOS9teS5i+WklueahOS7u+S9leWLleS9nOOAgiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjcyMgorIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIG9wdGlvbiBmb3IgbWVyZ2UtcmVjdXJzaXZlOiAtWCVzIgorbXNnc3RyICJtZXJnZS1yZWN1cnNpdmUg55qE5pyq55+l6YG46aCF77yaLVglcyIKKworIzogYnVpbHRpbi9tZXJnZS5jOjczNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgJXMiCittc2dzdHIgIuS4jeiDveWvqyAlcyIKKworIzogYnVpbHRpbi9tZXJnZS5jOjc4OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcmVhZCBmcm9tICclcyciCittc2dzdHIgIuS4jeiDveW+niAnJXMnIOiugOWPliIKKworIzogYnVpbHRpbi9tZXJnZS5jOjc5OAorIywgYy1mb3JtYXQKK21zZ2lkICJOb3QgY29tbWl0dGluZyBtZXJnZTsgdXNlICdnaXQgY29tbWl0JyB0byBjb21wbGV0ZSB0aGUgbWVyZ2UuXG4iCittc2dzdHIgIuacquaPkOS6pOWQiOS4pu+8jOS9v+eUqCAnZ2l0IGNvbW1pdCcg5a6M5oiQ5q2k5qyh5ZCI5L2144CCXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4MDQKK21zZ2lkICIiCisiUGxlYXNlIGVudGVyIGEgY29tbWl0IG1lc3NhZ2UgdG8gZXhwbGFpbiB3aHkgdGhpcyBtZXJnZSBpcyBuZWNlc3NhcnksXG4iCisiZXNwZWNpYWxseSBpZiBpdCBtZXJnZXMgYW4gdXBkYXRlZCB1cHN0cmVhbSBpbnRvIGEgdG9waWMgYnJhbmNoLlxuIgorIlxuIgorbXNnc3RyICIiCisi6KuL6Ly45YWl5LiA5YCL5o+Q5Lqk6KiK5oGv5Lul6Kej6YeL5q2k5ZCI5L2155qE5b+F6KaB5oCn77yM5bCk5YW25piv5bCH5LiA5YCL5pu05paw5b6M55qE5LiK5ri45YiG5pSvXG4iCisi5ZCI5L215Yiw5Li76aGM5YiG5pSv44CCXG4iCisiXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4MDkKK21zZ2lkICJBbiBlbXB0eSBtZXNzYWdlIGFib3J0cyB0aGUgY29tbWl0LlxuIgorbXNnc3RyICLnqbrnmoTmj5DkuqToqqrmmI7mnIPntYLmraLmj5DkuqTjgIJcbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjgxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTGluZXMgc3RhcnRpbmcgd2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZCwgYW5kIGFuIGVtcHR5IG1lc3NhZ2UgYWJvcnRzXG4iCisidGhlIGNvbW1pdC5cbiIKK21zZ3N0ciAi5LulICclYycg6ZaL5aeL55qE6KGM5bCH6KKr5b+955Wl77yM6ICM56m655qE5o+Q5Lqk6Kqq5piO5bCH57WC5q2i5o+Q5Lqk44CCXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo4NjUKK21zZ2lkICJFbXB0eSBjb21taXQgbWVzc2FnZS4iCittc2dzdHIgIuepuuaPkOS6pOioiuaBr+OAgiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjg4MAorIywgYy1mb3JtYXQKK21zZ2lkICJXb25kZXJmdWwuXG4iCittc2dzdHIgIuWkquajkuS6huOAglxuIgorCisjOiBidWlsdGluL21lcmdlLmM6OTQxCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dG9tYXRpYyBtZXJnZSBmYWlsZWQ7IGZpeCBjb25mbGljdHMgYW5kIHRoZW4gY29tbWl0IHRoZSByZXN1bHQuXG4iCittc2dzdHIgIuiHquWLleWQiOS9teWkseaVl++8jOS/ruato+ihneeqgeeEtuW+jOaPkOS6pOS/ruato+eahOe1kOaenOOAglxuIgorCisjOiBidWlsdGluL21lcmdlLmM6OTgwCittc2dpZCAiTm8gY3VycmVudCBicmFuY2guIgorbXNnc3RyICLmspLmnInnm67liY3liIbmlK/jgIIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzo5ODIKK21zZ2lkICJObyByZW1vdGUgZm9yIHRoZSBjdXJyZW50IGJyYW5jaC4iCittc2dzdHIgIuebruWJjeWIhuaUr+aykuacieWwjeaHieeahOmBoOerr+eJiOacrOW6q+OAgiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjk4NAorbXNnaWQgIk5vIGRlZmF1bHQgdXBzdHJlYW0gZGVmaW5lZCBmb3IgdGhlIGN1cnJlbnQgYnJhbmNoLiIKK21zZ3N0ciAi55uu5YmN5YiG5pSv5rKS5pyJ5a6a576p6aCQ6Kit55qE5LiK5ri45YiG5pSv44CCIgorCisjOiBidWlsdGluL21lcmdlLmM6OTg5CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHJlbW90ZS10cmFja2luZyBicmFuY2ggZm9yICVzIGZyb20gJXMiCittc2dzdHIgIuWwjeaWvCAlcyDmspLmnInkvoboh6ogJXMg55qE6YGg56uv6L+96Lmk5YiG5pSvIgorCisjOiBidWlsdGluL21lcmdlLmM6MTA0NgorIywgYy1mb3JtYXQKK21zZ2lkICJCYWQgdmFsdWUgJyVzJyBpbiBlbnZpcm9ubWVudCAnJXMnIgorbXNnc3RyICLnkrDlooMgJyUyJHMnIOS4reWtmOWcqOWjnueahOWPluWAvCAnJTEkcyciCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIGluICVzOiAlcyIKK21zZ3N0ciAi5LiN6IO95ZyoICVzIOS4reWQiOS9te+8miVzIgorCisjOiBidWlsdGluL21lcmdlLmM6MTE4MworbXNnaWQgIm5vdCBzb21ldGhpbmcgd2UgY2FuIG1lcmdlIgorbXNnc3RyICLkuI3og73lkIjkvbUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjg2Cittc2dpZCAiLS1hYm9ydCBleHBlY3RzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1hYm9ydCDkuI3luLblj4PmlbgiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMjkwCittc2dpZCAiVGhlcmUgaXMgbm8gbWVyZ2UgdG8gYWJvcnQgKE1FUkdFX0hFQUQgbWlzc2luZykuIgorbXNnc3RyICLmspLmnInopoHntYLmraLnmoTlkIjkvbXvvIhNRVJHRV9IRUFEIOmBuuWkse+8ieOAgiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEyOTkKK21zZ2lkICItLXF1aXQgZXhwZWN0cyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tcXVpdCDkuI3luLblj4PmlbgiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzEyCittc2dpZCAiLS1jb250aW51ZSBleHBlY3RzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1jb250aW51ZSDkuI3luLblj4PmlbgiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzE2Cittc2dpZCAiVGhlcmUgaXMgbm8gbWVyZ2UgaW4gcHJvZ3Jlc3MgKE1FUkdFX0hFQUQgbWlzc2luZykuIgorbXNnc3RyICLmspLmnInpgLLooYzkuK3nmoTlkIjkvbXvvIhNRVJHRV9IRUFEIOmBuuWkse+8ieOAgiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzMzIKK21zZ2lkICIiCisiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG1lcmdlIChNRVJHRV9IRUFEIGV4aXN0cykuXG4iCisiUGxlYXNlLCBjb21taXQgeW91ciBjaGFuZ2VzIGJlZm9yZSB5b3UgbWVyZ2UuIgorbXNnc3RyICIiCisi5oKo5bCa5pyq57WQ5p2f5oKo55qE5ZCI5L2177yI5a2Y5ZyoIE1FUkdFX0hFQUTvvInjgIJcbiIKKyLoq4vlnKjlkIjkvbXliY3lhYjmj5DkuqTmgqjnmoTkv67mlLnjgIIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzM5Cittc2dpZCAiIgorIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdHMpLlxuIgorIlBsZWFzZSwgY29tbWl0IHlvdXIgY2hhbmdlcyBiZWZvcmUgeW91IG1lcmdlLiIKK21zZ3N0ciAiIgorIuaCqOWwmuacque1kOadn+aCqOeahOaPgOmBuO+8iOWtmOWcqCBDSEVSUllfUElDS19IRUFE77yJ44CCXG4iCisi6KuL5Zyo5ZCI5L215YmN5YWI5o+Q5Lqk5oKo55qE5L+u5pS544CCIgorCisjOiBidWlsdGluL21lcmdlLmM6MTM0MgorbXNnaWQgIllvdSBoYXZlIG5vdCBjb25jbHVkZWQgeW91ciBjaGVycnktcGljayAoQ0hFUlJZX1BJQ0tfSEVBRCBleGlzdHMpLiIKK21zZ3N0ciAi5oKo5bCa5pyq57WQ5p2f5oKo55qE5o+A6YG477yI5a2Y5ZyoIENIRVJSWV9QSUNLX0hFQUTvvInjgIIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzU2Cittc2dpZCAiWW91IGNhbm5vdCBjb21iaW5lIC0tc3F1YXNoIHdpdGggLS1uby1mZi4iCittc2dzdHIgIuaCqOS4jeiDveWwhyAtLXNxdWFzaCDlkowgLS1uby1mZiDntYTlkIjkvb/nlKjjgIIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzU4Cittc2dpZCAiWW91IGNhbm5vdCBjb21iaW5lIC0tc3F1YXNoIHdpdGggLS1jb21taXQuIgorbXNnc3RyICLmgqjkuI3og73lsIcgLS1zcXVhc2gg5ZKMIC0tY29tbWl0IOe1hOWQiOS9v+eUqOOAgiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzNzQKK21zZ2lkICJObyBjb21taXQgc3BlY2lmaWVkIGFuZCBtZXJnZS5kZWZhdWx0VG9VcHN0cmVhbSBub3Qgc2V0LiIKK21zZ3N0ciAi5pyq5oyH5a6a5o+Q5Lqk5Lim5LiUIG1lcmdlLmRlZmF1bHRUb1Vwc3RyZWFtIOacquioreWumuOAgiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjEzOTEKK21zZ2lkICJTcXVhc2ggY29tbWl0IGludG8gZW1wdHkgaGVhZCBub3Qgc3VwcG9ydGVkIHlldCIKK21zZ3N0ciAi5bCa5LiN5pSv5o+05Yiw56m65YiG5pSv55qE5aOT57iu5o+Q5LqkIgorCisjOiBidWlsdGluL21lcmdlLmM6MTM5MworbXNnaWQgIk5vbi1mYXN0LWZvcndhcmQgY29tbWl0IGRvZXMgbm90IG1ha2Ugc2Vuc2UgaW50byBhbiBlbXB0eSBoZWFkIgorbXNnc3RyICLliLDnqbrliIbmlK/nmoTpnZ7lv6vovYnlvI/mj5DkuqTmspLmnInmhI/nvqkiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxMzk4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIC0gbm90IHNvbWV0aGluZyB3ZSBjYW4gbWVyZ2UiCittc2dzdHIgIiVzIC0g5LiN6IO96KKr5ZCI5L21IgorCisjOiBidWlsdGluL21lcmdlLmM6MTQwMAorbXNnaWQgIkNhbiBtZXJnZSBvbmx5IGV4YWN0bHkgb25lIGNvbW1pdCBpbnRvIGVtcHR5IGhlYWQiCittc2dzdHIgIuWPquiDveWwh+S4gOWAi+aPkOS6pOWQiOS4puWIsOepuuWIhuaUr+S4iiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE0ODEKK21zZ2lkICJyZWZ1c2luZyB0byBtZXJnZSB1bnJlbGF0ZWQgaGlzdG9yaWVzIgorbXNnc3RyICLmi5LntZXlkIjkvbXnhKHpl5znmoTmrbflj7IiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNDkwCittc2dpZCAiQWxyZWFkeSB1cCB0byBkYXRlLiIKK21zZ3N0ciAi5bey57aT5piv5pyA5paw55qE44CCIgorCisjOiBidWlsdGluL21lcmdlLmM6MTUwMAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGluZyAlcy4uJXNcbiIKK21zZ3N0ciAi5pu05pawICVzLi4lc1xuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJUcnlpbmcgcmVhbGx5IHRyaXZpYWwgaW4taW5kZXggbWVyZ2UuLi5cbiIKK21zZ3N0ciAi5ZiX6Kmm6Z2e5bi45bCP55qE57Si5byV5YWn5ZCI5L21Li4uXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vcGUuXG4iCittc2dzdHIgIueEoeOAglxuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTU3NAorbXNnaWQgIkFscmVhZHkgdXAgdG8gZGF0ZS4gWWVlYWghIgorbXNnc3RyICLlt7LntpPmmK/mnIDmlrDnmoTjgILogLbvvIEiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNTgwCittc2dpZCAiTm90IHBvc3NpYmxlIHRvIGZhc3QtZm9yd2FyZCwgYWJvcnRpbmcuIgorbXNnc3RyICLnhKHms5Xlv6vovYnvvIzntYLmraLjgIIiCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjAzIGJ1aWx0aW4vbWVyZ2UuYzoxNjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIlJld2luZGluZyB0aGUgdHJlZSB0byBwcmlzdGluZS4uLlxuIgorbXNnc3RyICLlsIfmqLnlm57mu77oh7Pljp/lp4vni4DmhYsuLi5cbiIKKworIzogYnVpbHRpbi9tZXJnZS5jOjE2MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVHJ5aW5nIG1lcmdlIHN0cmF0ZWd5ICVzLi4uXG4iCittc2dzdHIgIuWYl+ippuWQiOS9teetlueVpSAlcy4uLlxuIgorCisjOiBidWlsdGluL21lcmdlLmM6MTY1OQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBtZXJnZSBzdHJhdGVneSBoYW5kbGVkIHRoZSBtZXJnZS5cbiIKK21zZ3N0ciAi5rKS5pyJ5ZCI5L21562W55Wl6JmV55CG5q2k5ZCI5L2144CCXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIk1lcmdlIHdpdGggc3RyYXRlZ3kgJXMgZmFpbGVkLlxuIgorbXNnc3RyICLkvb/nlKjnrZbnlaUgJXMg5ZCI5L215aSx5pWX44CCXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzaW5nIHRoZSAlcyB0byBwcmVwYXJlIHJlc29sdmluZyBieSBoYW5kLlxuIgorbXNnc3RyICLkvb/nlKggJXMg5Lul5rqW5YKZ5omL5YuV6Kej5rG644CCXG4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UuYzoxNjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dG9tYXRpYyBtZXJnZSB3ZW50IHdlbGw7IHN0b3BwZWQgYmVmb3JlIGNvbW1pdHRpbmcgYXMgcmVxdWVzdGVkXG4iCittc2dzdHIgIuiHquWLleWQiOS9temAsuWxlemghuWIqe+8jOaMieimgeaxguWcqOaPkOS6pOWJjeWBnOatolxuIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzozMgorbXNnaWQgImdpdCBtZXJnZS1iYXNlIFstYSB8IC0tYWxsXSA8Y29tbWl0PiA8Y29tbWl0Pi4uLiIKK21zZ3N0ciAiZ2l0IG1lcmdlLWJhc2UgWy1hIHwgLS1hbGxdIDzmj5DkuqQ+IDzmj5DkuqQ+Li4uIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzozMworbXNnaWQgImdpdCBtZXJnZS1iYXNlIFstYSB8IC0tYWxsXSAtLW9jdG9wdXMgPGNvbW1pdD4uLi4iCittc2dzdHIgImdpdCBtZXJnZS1iYXNlIFstYSB8IC0tYWxsXSAtLW9jdG9wdXMgPOaPkOS6pD4uLi4iCisKKyM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjM0Cittc2dpZCAiZ2l0IG1lcmdlLWJhc2UgLS1pbmRlcGVuZGVudCA8Y29tbWl0Pi4uLiIKK21zZ3N0ciAiZ2l0IG1lcmdlLWJhc2UgLS1pbmRlcGVuZGVudCA85o+Q5LqkPi4uLiIKKworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MzUKK21zZ2lkICJnaXQgbWVyZ2UtYmFzZSAtLWlzLWFuY2VzdG9yIDxjb21taXQ+IDxjb21taXQ+IgorbXNnc3RyICJnaXQgbWVyZ2UtYmFzZSAtLWlzLWFuY2VzdG9yIDzmj5DkuqQ+IDzmj5DkuqQ+IgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzozNgorbXNnaWQgImdpdCBtZXJnZS1iYXNlIC0tZm9yay1wb2ludCA8cmVmPiBbPGNvbW1pdD5dIgorbXNnc3RyICJnaXQgbWVyZ2UtYmFzZSAtLWZvcmstcG9pbnQgPOW8leeUqD4gWzzmj5DkuqQ+XSIKKworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MTUzCittc2dpZCAib3V0cHV0IGFsbCBjb21tb24gYW5jZXN0b3JzIgorbXNnc3RyICLovLjlh7rmiYDmnInlhbHlkIznmoTnpZblhYgiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtYmFzZS5jOjE1NQorbXNnaWQgImZpbmQgYW5jZXN0b3JzIGZvciBhIHNpbmdsZSBuLXdheSBtZXJnZSIKK21zZ3N0ciAi5bCL5om+5LiA5YCL5aSa6Lev5ZCI5L2155qE56WW5YWI5o+Q5LqkIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzoxNTcKK21zZ2lkICJsaXN0IHJldnMgbm90IHJlYWNoYWJsZSBmcm9tIG90aGVycyIKK21zZ3N0ciAi6aGv56S65LiN6IO96KKr5YW25LuW5a2Y5Y+W5Yiw55qE54mI5pysIgorCisjOiBidWlsdGluL21lcmdlLWJhc2UuYzoxNTkKK21zZ2lkICJpcyB0aGUgZmlyc3Qgb25lIGFuY2VzdG9yIG9mIHRoZSBvdGhlcj8iCittc2dzdHIgIuesrOS4gOWAi+aYr+WFtuS7lueahOelluWFiOaPkOS6pOWXju+8nyIKKworIzogYnVpbHRpbi9tZXJnZS1iYXNlLmM6MTYxCittc2dpZCAiZmluZCB3aGVyZSA8Y29tbWl0PiBmb3JrZWQgZnJvbSByZWZsb2cgb2YgPHJlZj4iCittc2dzdHIgIuagueaTmiA85byV55SoPiDnmoTlvJXnlKjml6XoqozlsIvmib4gPOaPkOS6pD4g55qE6KGN55Sf6JmVIgorCisjOiBidWlsdGluL21lcmdlLWZpbGUuYzo5Cittc2dpZCAiIgorImdpdCBtZXJnZS1maWxlIFs8b3B0aW9ucz5dIFstTCA8bmFtZTE+IFstTCA8b3JpZz4gWy1MIDxuYW1lMj5dXV0gPGZpbGUxPiAiCisiPG9yaWctZmlsZT4gPGZpbGUyPiIKK21zZ3N0ciAiIgorImdpdCBtZXJnZS1maWxlIFs86YG46aCFPl0gWy1MIDzmqpTmoYgxPiBbLUwgPOWIneWniz4gWy1MIDzlkI3lrZcyPl1dXSA85qqU5qGIMT4gPOWIneWni+aWhyIKKyLku7Y+IDzmqpTmoYgyPiIKKworIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6MzUKK21zZ2lkICJzZW5kIHJlc3VsdHMgdG8gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICLlsIfntZDmnpzlgrPpgIHliLDmqJnmupbovLjlh7oiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjM2Cittc2dpZCAidXNlIGEgZGlmZjMgYmFzZWQgbWVyZ2UiCittc2dzdHIgIuS9v+eUqOWfuuaWvCBkaWZmMyDnmoTlkIjkvbUiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjM3Cittc2dpZCAiZm9yIGNvbmZsaWN0cywgdXNlIG91ciB2ZXJzaW9uIgorbXNnc3RyICLlpoLmnpzooZ3nqoHvvIzkvb/nlKjmiJHlgJHnmoTniYjmnKwiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjM5Cittc2dpZCAiZm9yIGNvbmZsaWN0cywgdXNlIHRoZWlyIHZlcnNpb24iCittc2dzdHIgIuWmguaenOihneeqge+8jOS9v+eUqOS7luWAkeeahOeJiOacrCIKKworIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6NDEKK21zZ2lkICJmb3IgY29uZmxpY3RzLCB1c2UgYSB1bmlvbiB2ZXJzaW9uIgorbXNnc3RyICLlpoLmnpzooZ3nqoHvvIzkvb/nlKjoga/lkIjniYjmnKwiCisKKyM6IGJ1aWx0aW4vbWVyZ2UtZmlsZS5jOjQ0Cittc2dpZCAiZm9yIGNvbmZsaWN0cywgdXNlIHRoaXMgbWFya2VyIHNpemUiCittc2dzdHIgIuWmguaenOihneeqge+8jOS9v+eUqOaMh+WumumVt+W6pueahOaomeiomCIKKworIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6NDUKK21zZ2lkICJkbyBub3Qgd2FybiBhYm91dCBjb25mbGljdHMiCittc2dzdHIgIuS4jeimgeitpuWRiuihneeqgSIKKworIzogYnVpbHRpbi9tZXJnZS1maWxlLmM6NDcKK21zZ2lkICJzZXQgbGFiZWxzIGZvciBmaWxlMS9vcmlnLWZpbGUvZmlsZTIiCittc2dzdHIgIueCuiDmqpTmoYgxL+WIneWni+aqlOahiC/mqpTmoYgyIOioreWumuaomeexpCIKKworIzogYnVpbHRpbi9tZXJnZS1yZWN1cnNpdmUuYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAlcyIKK21zZ3N0ciAi5pyq55+l6YG46aCFICVzIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBvYmplY3QgJyVzJyIKK21zZ3N0ciAi5LiN6IO96Kej5p6Q54mp5Lu2ICclcyciCisKKyM6IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgYmFzZS4gSWdub3JpbmcgJXMuIgorbXNnaWRfcGx1cmFsICJjYW5ub3QgaGFuZGxlIG1vcmUgdGhhbiAlZCBiYXNlcy4gSWdub3JpbmcgJXMuIgorbXNnc3RyWzBdICLnhKHms5XomZXnkIYgJWQg5qKd5Lul5LiK55qE5Z+656SO44CC5b+955WlICVz44CCIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjY1Cittc2dpZCAibm90IGhhbmRsaW5nIGFueXRoaW5nIG90aGVyIHRoYW4gdHdvIGhlYWRzIG1lcmdlLiIKK21zZ3N0ciAi5LiN6IO96JmV55CG5YWp5YCL6aCt5ZCI5L215LmL5aSW55qE5Lu75L2V5YuV5L2c44CCIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjc0IGJ1aWx0aW4vbWVyZ2UtcmVjdXJzaXZlLmM6NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHJlc29sdmUgcmVmICclcyciCittc2dzdHIgIueEoeazleino+aekOW8leeUqCAnJXMnIgorCisjOiBidWlsdGluL21lcmdlLXJlY3Vyc2l2ZS5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIk1lcmdpbmcgJXMgd2l0aCAlc1xuIgorbXNnc3RyICLlkIjkvbUgJXMg5ZKMICVzXG4iCisKKyM6IGJ1aWx0aW4vbWt0cmVlLmM6NjYKK21zZ2lkICJnaXQgbWt0cmVlIFstel0gWy0tbWlzc2luZ10gWy0tYmF0Y2hdIgorbXNnc3RyICJnaXQgbWt0cmVlIFstel0gWy0tbWlzc2luZ10gWy0tYmF0Y2hdIgorCisjOiBidWlsdGluL21rdHJlZS5jOjE1NAorbXNnaWQgImlucHV0IGlzIE5VTCB0ZXJtaW5hdGVkIgorbXNnc3RyICLovLjlhaXku6UgTlVMIOWtl+WFg+e1guatoiIKKworIzogYnVpbHRpbi9ta3RyZWUuYzoxNTUgYnVpbHRpbi93cml0ZS10cmVlLmM6MjYKK21zZ2lkICJhbGxvdyBtaXNzaW5nIG9iamVjdHMiCittc2dzdHIgIuWFgeiosemBuuWkseeahOeJqeS7tiIKKworIzogYnVpbHRpbi9ta3RyZWUuYzoxNTYKK21zZ2lkICJhbGxvdyBjcmVhdGlvbiBvZiBtb3JlIHRoYW4gb25lIHRyZWUiCittc2dzdHIgIuWFgeioseW7uueri+S4gOWAi+S7peS4iueahOaouSIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6OQorbXNnaWQgIiIKKyJnaXQgbXVsdGktcGFjay1pbmRleCBbPG9wdGlvbnM+XSAod3JpdGV8dmVyaWZ5fGV4cGlyZXxyZXBhY2sgLS1iYXRjaC0iCisic2l6ZT08c2l6ZT4pIgorbXNnc3RyICIiCisiZ2l0IG11bHRpLXBhY2staW5kZXggWzzpgbjpoIU+XSAod3JpdGV8dmVyaWZ5fGV4cGlyZXxyZXBhY2sgLS1iYXRjaC1zaXplPTzlpKflsI8iCisiPikiCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjI2Cittc2dpZCAib2JqZWN0IGRpcmVjdG9yeSBjb250YWluaW5nIHNldCBvZiBwYWNrZmlsZSBhbmQgcGFjay1pbmRleCBwYWlycyIKK21zZ3N0ciAi5YyF5ZCr5oiQ5bCNIHBhY2tmaWxlIOWSjOWMhee0ouW8leeahOeJqeS7tuebrumMhCIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6MjkKK21zZ2lkICIiCisiZHVyaW5nIHJlcGFjaywgY29sbGVjdCBwYWNrLWZpbGVzIG9mIHNtYWxsZXIgc2l6ZSBpbnRvIGEgYmF0Y2ggdGhhdCBpcyAiCisibGFyZ2VyIHRoYW4gdGhpcyBzaXplIgorbXNnc3RyICLlnKggcmVwYWNrIOacn+mWk++8jOWwh+i8g+Wwj+WwuuWvuOeahOWMheaqlOahiOaUtumbhuWIsOWkp+aWvOatpOWkp+Wwj+eahOaJueasoeS4rSIKKworIzogYnVpbHRpbi9tdWx0aS1wYWNrLWluZGV4LmM6NTAgYnVpbHRpbi9wcnVuZS1wYWNrZWQuYzo2NworbXNnaWQgInRvbyBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAi5aSq5aSa5Y+D5pW4IgorCisjOiBidWlsdGluL211bHRpLXBhY2staW5kZXguYzo2MAorbXNnaWQgIi0tYmF0Y2gtc2l6ZSBvcHRpb24gaXMgb25seSBmb3IgJ3JlcGFjaycgc3ViY29tbWFuZCIKK21zZ3N0ciAiLS1iYXRjaC1zaXplIOmBuOmgheWDheeUqOaWvCAncmVwYWNrJyDlrZDmjIfku6QiCisKKyM6IGJ1aWx0aW4vbXVsdGktcGFjay1pbmRleC5jOjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBzdWJjb21tYW5kOiAlcyIKK21zZ3N0ciAi5pyq6K2Y5Yil55qE5a2Q5oyH5Luk77yaJXMiCisKKyM6IGJ1aWx0aW4vbXYuYzoxOAorbXNnaWQgImdpdCBtdiBbPG9wdGlvbnM+XSA8c291cmNlPi4uLiA8ZGVzdGluYXRpb24+IgorbXNnc3RyICJnaXQgbXYgWzzpgbjpoIU+XSA85rqQPi4uLiA855uu5qiZPiIKKworIzogYnVpbHRpbi9tdi5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIkRpcmVjdG9yeSAlcyBpcyBpbiBpbmRleCBhbmQgbm8gc3VibW9kdWxlPyIKK21zZ3N0ciAi55uu6YyEICVzIOWcqOe0ouW8leS4reS4puS4lOS4jeaYr+WtkOaooee1hO+8nyIKKworIzogYnVpbHRpbi9tdi5jOjg1Cittc2dpZCAiUGxlYXNlIHN0YWdlIHlvdXIgY2hhbmdlcyB0byAuZ2l0bW9kdWxlcyBvciBzdGFzaCB0aGVtIHRvIHByb2NlZWQiCittc2dzdHIgIuiri+Wwh+aCqOeahOS/ruaUueaaq+WtmOWIsCAuZ2l0bW9kdWxlcyDkuK3miJblhLLol4/lvozlho3nubznuowiCisKKyM6IGJ1aWx0aW4vbXYuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJS4qcyBpcyBpbiBpbmRleCIKK21zZ3N0ciAiJS4qcyDlnKjntKLlvJXkuK0iCisKKyM6IGJ1aWx0aW4vbXYuYzoxMjUKK21zZ2lkICJmb3JjZSBtb3ZlL3JlbmFtZSBldmVuIGlmIHRhcmdldCBleGlzdHMiCittc2dzdHIgIuW8t+WItuenu+WLlS/ph43mjIfku6TvvIzljbPkvb/nm67mqJnlrZjlnKgiCisKKyM6IGJ1aWx0aW4vbXYuYzoxMjcKK21zZ2lkICJza2lwIG1vdmUvcmVuYW1lIGVycm9ycyIKK21zZ3N0ciAi6Lez6YGO56e75YuVL+mHjeaWsOWRveWQjemMr+iqpCIKKworIzogYnVpbHRpbi9tdi5jOjE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkZXN0aW5hdGlvbiAnJXMnIGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAi55uu5qiZICclcycg5LiN5piv5LiA5YCL55uu6YyEIgorCisjOiBidWlsdGluL212LmM6MTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoZWNraW5nIHJlbmFtZSBvZiAnJXMnIHRvICclcydcbiIKK21zZ3N0ciAi5qqi5p+lICclcycg5YiwICclcycg55qE6YeN5paw5ZG95ZCNXG4iCisKKyM6IGJ1aWx0aW4vbXYuYzoxODQKK21zZ2lkICJiYWQgc291cmNlIgorbXNnc3RyICLlo57nmoTmupAiCisKKyM6IGJ1aWx0aW4vbXYuYzoxODcKK21zZ2lkICJjYW4gbm90IG1vdmUgZGlyZWN0b3J5IGludG8gaXRzZWxmIgorbXNnc3RyICLkuI3og73lsIfnm67pjITnp7vli5XliLDoh6rouqsiCisKKyM6IGJ1aWx0aW4vbXYuYzoxOTAKK21zZ2lkICJjYW5ub3QgbW92ZSBkaXJlY3Rvcnkgb3ZlciBmaWxlIgorbXNnc3RyICLkuI3og73lsIfnm67pjITnp7vli5XliLDmqpTmoYgiCisKKyM6IGJ1aWx0aW4vbXYuYzoxOTkKK21zZ2lkICJzb3VyY2UgZGlyZWN0b3J5IGlzIGVtcHR5IgorbXNnc3RyICLmupDnm67pjITngrrnqboiCisKKyM6IGJ1aWx0aW4vbXYuYzoyMjQKK21zZ2lkICJub3QgdW5kZXIgdmVyc2lvbiBjb250cm9sIgorbXNnc3RyICLkuI3lnKjniYjmnKzmjqfliLbkuYvkuIsiCisKKyM6IGJ1aWx0aW4vbXYuYzoyMjcKK21zZ2lkICJkZXN0aW5hdGlvbiBleGlzdHMiCittc2dzdHIgIuebruaomeW3suWtmOWcqCIKKworIzogYnVpbHRpbi9tdi5jOjIzNQorIywgYy1mb3JtYXQKK21zZ2lkICJvdmVyd3JpdGluZyAnJXMnIgorbXNnc3RyICLopobok4sgJyVzJyIKKworIzogYnVpbHRpbi9tdi5jOjIzOAorbXNnaWQgIkNhbm5vdCBvdmVyd3JpdGUiCittc2dzdHIgIuS4jeiDveimhuiTiyIKKworIzogYnVpbHRpbi9tdi5jOjI0MQorbXNnaWQgIm11bHRpcGxlIHNvdXJjZXMgZm9yIHRoZSBzYW1lIHRhcmdldCIKK21zZ3N0ciAi5ZCM5LiA55uu5qiZ5YW35pyJ5aSa5YCL5rqQIgorCisjOiBidWlsdGluL212LmM6MjQzCittc2dpZCAiZGVzdGluYXRpb24gZGlyZWN0b3J5IGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICLnm67mqJnnm67pjITkuI3lrZjlnKgiCisKKyM6IGJ1aWx0aW4vbXYuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMsIHNvdXJjZT0lcywgZGVzdGluYXRpb249JXMiCittc2dzdHIgIiVz77yM5rqQPSVz77yM55uu5qiZPSVzIgorCisjOiBidWlsdGluL212LmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbmFtaW5nICVzIHRvICVzXG4iCittc2dzdHIgIumHjeaWsOWRveWQjSAlcyDoh7MgJXNcbiIKKworIzogYnVpbHRpbi9tdi5jOjI3NyBidWlsdGluL3JlbW90ZS5jOjc4MSBidWlsdGluL3JlcGFjay5jOjUxOAorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAnJXMnIGZhaWxlZCIKK21zZ3N0ciAi6YeN5paw5ZG95ZCNICclcycg5aSx5pWXIgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NDY1Cittc2dpZCAiZ2l0IG5hbWUtcmV2IFs8b3B0aW9ucz5dIDxjb21taXQ+Li4uIgorbXNnc3RyICJnaXQgbmFtZS1yZXYgWzzpgbjpoIU+XSA85o+Q5LqkPi4uLiIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjQ2NgorbXNnaWQgImdpdCBuYW1lLXJldiBbPG9wdGlvbnM+XSAtLWFsbCIKK21zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs86YG46aCFPl0gLS1hbGwiCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo0NjcKK21zZ2lkICJnaXQgbmFtZS1yZXYgWzxvcHRpb25zPl0gLS1zdGRpbiIKK21zZ3N0ciAiZ2l0IG5hbWUtcmV2IFs86YG46aCFPl0gLS1zdGRpbiIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjUyNAorbXNnaWQgInByaW50IG9ubHkgbmFtZXMgKG5vIFNIQS0xKSIKK21zZ3N0ciAi5Y+q5YiX5Y2w5ZCN56ix77yI54ShIFNIQS0x77yJIgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTI1Cittc2dpZCAib25seSB1c2UgdGFncyB0byBuYW1lIHRoZSBjb21taXRzIgorbXNnc3RyICLlj6rkvb/nlKjmqJnnsaTkvoblkb3lkI3mj5DkuqQiCisKKyM6IGJ1aWx0aW4vbmFtZS1yZXYuYzo1MjcKK21zZ2lkICJvbmx5IHVzZSByZWZzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKK21zZ3N0ciAi5Y+q5L2/55So5ZKMIDzmqKHlvI8+IOebuOespuWQiOeahOW8leeUqCIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjUyOQorbXNnaWQgImlnbm9yZSByZWZzIG1hdGNoaW5nIDxwYXR0ZXJuPiIKK21zZ3N0ciAi5b+955Wl5ZKMIDzmqKHlvI8+IOebuOespuWQiOeahOW8leeUqCIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzMQorbXNnaWQgImxpc3QgYWxsIGNvbW1pdHMgcmVhY2hhYmxlIGZyb20gYWxsIHJlZnMiCittc2dzdHIgIuWIl+WHuuWPr+S7peW+nuaJgOacieW8leeUqOWtmOWPlueahOaPkOS6pCIKKworIzogYnVpbHRpbi9uYW1lLXJldi5jOjUzMgorbXNnaWQgInJlYWQgZnJvbSBzdGRpbiIKK21zZ3N0ciAi5b6e5qiZ5rqW6Ly45YWl6K6A5Y+WIgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTMzCittc2dpZCAiYWxsb3cgdG8gcHJpbnQgYHVuZGVmaW5lZGAgbmFtZXMgKGRlZmF1bHQpIgorbXNnc3RyICLlhYHoqLHliJfljbAgYOacquWumue+qWAg55qE5ZCN56ix77yI6aCQ6Kit77yJIgorCisjOiBidWlsdGluL25hbWUtcmV2LmM6NTM5Cittc2dpZCAiZGVyZWZlcmVuY2UgdGFncyBpbiB0aGUgaW5wdXQgKGludGVybmFsIHVzZSkiCittc2dzdHIgIuWPjeWQkeino+aekOi8uOWFpeS4reeahOaomeexpO+8iOWFp+mDqOS9v+eUqO+8iSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjI4Cittc2dpZCAiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gW2xpc3QgWzxvYmplY3Q+XV0iCittc2dzdHIgImdpdCBub3RlcyBbLS1yZWYgPOiou+ino+W8leeUqD5dIFtsaXN0IFs854mp5Lu2Pl1dIgorCisjOiBidWlsdGluL25vdGVzLmM6MjkKK21zZ2lkICIiCisiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gYWRkIFstZl0gWy0tYWxsb3ctZW1wdHldIFstbSA8bXNnPiB8IC1GIDxmaWxlPiAiCisifCAoLWMgfCAtQykgPG9iamVjdD5dIFs8b2JqZWN0Pl0iCittc2dzdHIgIiIKKyJnaXQgbm90ZXMgWy0tcmVmIDzoqLvop6PlvJXnlKg+XSBhZGQgWy1mXSBbLS1hbGxvdy1lbXB0eV0gWy1tIDzoqqrmmI4+IHwgLUYgPOaqlOahiD4gIgorInwgKC1jIHwgLUMpIDznianku7Y+XSBbPOeJqeS7tj5dIgorCisjOiBidWlsdGluL25vdGVzLmM6MzAKK21zZ2lkICJnaXQgbm90ZXMgWy0tcmVmIDxub3Rlcy1yZWY+XSBjb3B5IFstZl0gPGZyb20tb2JqZWN0PiA8dG8tb2JqZWN0PiIKK21zZ3N0ciAiZ2l0IG5vdGVzIFstLXJlZiA86Ki76Kej5byV55SoPl0gY29weSBbLWZdIDzmupDnianku7Y+IDznm67mqJnnianku7Y+IgorCisjOiBidWlsdGluL25vdGVzLmM6MzEKK21zZ2lkICIiCisiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gYXBwZW5kIFstLWFsbG93LWVtcHR5XSBbLW0gPG1zZz4gfCAtRiA8ZmlsZT4gfCAiCisiKC1jIHwgLUMpIDxvYmplY3Q+XSBbPG9iamVjdD5dIgorbXNnc3RyICIiCisiZ2l0IG5vdGVzIFstLXJlZiA86Ki76Kej5byV55SoPl0gYXBwZW5kIFstLWFsbG93LWVtcHR5XSBbLW0gPOiqquaYjj4gfCAtRiA85qqU5qGIPiB8ICIKKyIoLWMgfCAtQykgPOeJqeS7tj5dIFs854mp5Lu2Pl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMgorbXNnaWQgImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIGVkaXQgWy0tYWxsb3ctZW1wdHldIFs8b2JqZWN0Pl0iCittc2dzdHIgImdpdCBub3RlcyBbLS1yZWYgPOiou+ino+W8leeUqD5dIGVkaXQgWy0tYWxsb3ctZW1wdHldIFs854mp5Lu2Pl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMworbXNnaWQgImdpdCBub3RlcyBbLS1yZWYgPG5vdGVzLXJlZj5dIHNob3cgWzxvYmplY3Q+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIFstLXJlZiA86Ki76Kej5byV55SoPl0gc2hvdyBbPOeJqeS7tj5dIgorCisjOiBidWlsdGluL25vdGVzLmM6MzQKK21zZ2lkICIiCisiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gbWVyZ2UgWy12IHwgLXFdIFstcyA8c3RyYXRlZ3k+XSA8bm90ZXMtcmVmPiIKK21zZ3N0ciAiZ2l0IG5vdGVzIFstLXJlZiA86Ki76Kej5byV55SoPl0gbWVyZ2UgWy12IHwgLXFdIFstcyA8562W55WlPiBdIDzoqLvop6PlvJXnlKg+IgorCisjOiBidWlsdGluL25vdGVzLmM6MzUKK21zZ2lkICJnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXQgWy12IHwgLXFdIgorbXNnc3RyICJnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXQgWy12IHwgLXFdIgorCisjOiBidWlsdGluL25vdGVzLmM6MzYKK21zZ2lkICJnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCBbLXYgfCAtcV0iCittc2dzdHIgImdpdCBub3RlcyBtZXJnZSAtLWFib3J0IFstdiB8IC1xXSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM3Cittc2dpZCAiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gcmVtb3ZlIFs8b2JqZWN0Pi4uLl0iCittc2dzdHIgImdpdCBub3RlcyBbLS1yZWYgPOiou+ino+W8leeUqD5dIHJlbW92ZSBbPOeJqeS7tj4uLi5dIgorCisjOiBidWlsdGluL25vdGVzLmM6MzgKK21zZ2lkICJnaXQgbm90ZXMgWy0tcmVmIDxub3Rlcy1yZWY+XSBwcnVuZSBbLW5dIFstdl0iCittc2dzdHIgImdpdCBub3RlcyBbLS1yZWYgPOiou+ino+W8leeUqD5dIHBydW5lIFstbl0gWy12XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM5Cittc2dpZCAiZ2l0IG5vdGVzIFstLXJlZiA8bm90ZXMtcmVmPl0gZ2V0LXJlZiIKK21zZ3N0ciAiZ2l0IG5vdGVzIFstLXJlZiA86Ki76Kej5byV55SoPl0gZ2V0LXJlZiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjQ0Cittc2dpZCAiZ2l0IG5vdGVzIFtsaXN0IFs8b2JqZWN0Pl1dIgorbXNnc3RyICJnaXQgbm90ZXMgW2xpc3QgWzznianku7Y+XV0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OQorbXNnaWQgImdpdCBub3RlcyBhZGQgWzxvcHRpb25zPl0gWzxvYmplY3Q+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIGFkZCBbPOmBuOmghT5dIFs854mp5Lu2Pl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1NAorbXNnaWQgImdpdCBub3RlcyBjb3B5IFs8b3B0aW9ucz5dIDxmcm9tLW9iamVjdD4gPHRvLW9iamVjdD4iCittc2dzdHIgImdpdCBub3RlcyBjb3B5IFs86YG46aCFPl0gPOa6kOeJqeS7tj4gPOebruaomeeJqeS7tj4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1NQorbXNnaWQgImdpdCBub3RlcyBjb3B5IC0tc3RkaW4gWzxmcm9tLW9iamVjdD4gPHRvLW9iamVjdD5dLi4uIgorbXNnc3RyICJnaXQgbm90ZXMgY29weSAtLXN0ZGluIFs85rqQ54mp5Lu2PiA855uu5qiZ54mp5Lu2Pl0uLi4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2MAorbXNnaWQgImdpdCBub3RlcyBhcHBlbmQgWzxvcHRpb25zPl0gWzxvYmplY3Q+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIGFwcGVuZCBbPOmBuOmghT5dIFs854mp5Lu2Pl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo2NQorbXNnaWQgImdpdCBub3RlcyBlZGl0IFs8b2JqZWN0Pl0iCittc2dzdHIgImdpdCBub3RlcyBlZGl0IFs854mp5Lu2Pl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MAorbXNnaWQgImdpdCBub3RlcyBzaG93IFs8b2JqZWN0Pl0iCittc2dzdHIgImdpdCBub3RlcyBzaG93IFs854mp5Lu2Pl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NQorbXNnaWQgImdpdCBub3RlcyBtZXJnZSBbPG9wdGlvbnM+XSA8bm90ZXMtcmVmPiIKK21zZ3N0ciAiZ2l0IG5vdGVzIG1lcmdlIFs86YG46aCFPl0gPOiou+ino+W8leeUqD4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NgorbXNnaWQgImdpdCBub3RlcyBtZXJnZSAtLWNvbW1pdCBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0IFs86YG46aCFPl0iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3NworbXNnaWQgImdpdCBub3RlcyBtZXJnZSAtLWFib3J0IFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgbm90ZXMgbWVyZ2UgLS1hYm9ydCBbPOmBuOmghT5dIgorCisjOiBidWlsdGluL25vdGVzLmM6ODIKK21zZ2lkICJnaXQgbm90ZXMgcmVtb3ZlIFs8b2JqZWN0Pl0iCittc2dzdHIgImdpdCBub3RlcyByZW1vdmUgWzznianku7Y+XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjg3Cittc2dpZCAiZ2l0IG5vdGVzIHBydW5lIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgbm90ZXMgcHJ1bmUgWzzpgbjpoIU+XSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjkyCittc2dpZCAiZ2l0IG5vdGVzIGdldC1yZWYiCittc2dzdHIgImdpdCBub3RlcyBnZXQtcmVmIgorCisjOiBidWlsdGluL25vdGVzLmM6OTcKK21zZ2lkICJXcml0ZS9lZGl0IHRoZSBub3RlcyBmb3IgdGhlIGZvbGxvd2luZyBvYmplY3Q6IgorbXNnc3RyICLngrrkuIvpnaLnmoTnianku7blr6sv57eo6Lyv6Kqq5piO77yaIgorCisjOiBidWlsdGluL25vdGVzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGFydCAnc2hvdycgZm9yIG9iamVjdCAnJXMnIgorbXNnc3RyICLkuI3og73ngrrnianku7YgJyVzJyDplovlp4sgJ3Nob3cnIgorCisjOiBidWlsdGluL25vdGVzLmM6MTU0Cittc2dpZCAiY291bGQgbm90IHJlYWQgJ3Nob3cnIG91dHB1dCIKK21zZ3N0ciAi5LiN6IO96K6A5Y+WICdzaG93JyDnmoTovLjlh7oiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoxNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZpbmlzaCAnc2hvdycgZm9yIG9iamVjdCAnJXMnIgorbXNnc3RyICLnhKHms5Xngrrnianku7YgJyVzJyDlrozmiJAgJ3Nob3cnIgorCisjOiBidWlsdGluL25vdGVzLmM6MTk3Cittc2dpZCAicGxlYXNlIHN1cHBseSB0aGUgbm90ZSBjb250ZW50cyB1c2luZyBlaXRoZXIgLW0gb3IgLUYgb3B0aW9uIgorbXNnc3RyICLoq4vpgI/pgY4gLW0g5oiWIC1GIOmBuOmgheeCuuiou+ino+aPkOS+m+WFp+WuuSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjIwNgorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBub3RlIG9iamVjdCIKK21zZ3N0ciAi5LiN6IO95a+r6Ki76Kej54mp5Lu2IgorCisjOiBidWlsdGluL25vdGVzLmM6MjA4CisjLCBjLWZvcm1hdAorbXNnaWQgInRoZSBub3RlIGNvbnRlbnRzIGhhdmUgYmVlbiBsZWZ0IGluICVzIgorbXNnc3RyICLoqLvop6PlhaflrrnooqvnlZnlnKggJXMg5LitIgorCisjOiBidWlsdGluL25vdGVzLmM6MjQyIGJ1aWx0aW4vdGFnLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBvcGVuIG9yIHJlYWQgJyVzJyIKK21zZ3N0ciAi5LiN6IO96ZaL5ZWf5oiW6K6A5Y+WICclcyciCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzoyNjMgYnVpbHRpbi9ub3Rlcy5jOjMxMyBidWlsdGluL25vdGVzLmM6MzE1CisjOiBidWlsdGluL25vdGVzLmM6MzgzIGJ1aWx0aW4vbm90ZXMuYzo0MzggYnVpbHRpbi9ub3Rlcy5jOjUyNgorIzogYnVpbHRpbi9ub3Rlcy5jOjUzMSBidWlsdGluL25vdGVzLmM6NjEwIGJ1aWx0aW4vbm90ZXMuYzo2NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgJyVzJyBhcyBhIHZhbGlkIHJlZi4iCittc2dzdHIgIueEoeazleino+aekCAnJXMnIOeCuuS4gOWAi+acieaViOW8leeUqOOAgiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjI2NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvYmplY3QgJyVzJy4iCittc2dzdHIgIuiugOWPlueJqeS7tiAnJXMnIOWkseaVl+OAgiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBub3RlIGRhdGEgZnJvbSBub24tYmxvYiBvYmplY3QgJyVzJy4iCittc2dzdHIgIuS4jeiDveW+numdnuizh+aWmeeJqeS7tiAnJXMnIOS4reiugOWPluiou+ino+izh+aWmeOAgiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxmb3JtZWQgaW5wdXQgbGluZTogJyVzJy4iCittc2dzdHIgIuagvOW8j+mMr+iqpOeahOi8uOWFpeihjO+8miclcyfjgIIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzozMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNvcHkgbm90ZXMgZnJvbSAnJXMnIHRvICclcyciCittc2dzdHIgIuW+niAnJXMnIOikh+ijveiou+ino+WIsCAnJXMnIOaZguWkseaVlyIKKworIy4gVFJBTlNMQVRPUlM6IHRoZSBmaXJzdCAlcyB3aWxsIGJlIHJlcGxhY2VkIGJ5IGEgZ2l0CisjLiBub3RlcyBjb21tYW5kOiAnYWRkJywgJ21lcmdlJywgJ3JlbW92ZScsIGV0Yy4KKyMuCisjOiBidWlsdGluL25vdGVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZnVzaW5nIHRvICVzIG5vdGVzIGluICVzIChvdXRzaWRlIG9mIHJlZnMvbm90ZXMvKSIKK21zZ3N0ciAi5ouS57WV5ZCRICUyJHPvvIjlnKggcmVmcy9ub3Rlcy8g5LmL5aSW77yJJTEkc+iou+inoyIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM3NiBidWlsdGluL25vdGVzLmM6NDMxIGJ1aWx0aW4vbm90ZXMuYzo1MDkKKyM6IGJ1aWx0aW4vbm90ZXMuYzo1MjEgYnVpbHRpbi9ub3Rlcy5jOjU5OCBidWlsdGluL25vdGVzLmM6NjY1CisjOiBidWlsdGluL25vdGVzLmM6ODE1IGJ1aWx0aW4vbm90ZXMuYzo5NjMgYnVpbHRpbi9ub3Rlcy5jOjk4NQorbXNnaWQgInRvbyBtYW55IHBhcmFtZXRlcnMiCittc2dzdHIgIuWPg+aVuOWkquWkmiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjM4OSBidWlsdGluL25vdGVzLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIG5vdGUgZm91bmQgZm9yIG9iamVjdCAlcy4iCittc2dzdHIgIuacqueZvOePvueJqeS7tiAlcyDnmoToqLvop6PjgIIiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTAgYnVpbHRpbi9ub3Rlcy5jOjU3NgorbXNnaWQgIm5vdGUgY29udGVudHMgYXMgYSBzdHJpbmciCittc2dzdHIgIuiou+ino+WFp+WuueS9nOeCuuS4gOWAi+Wtl+S4siIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjQxMyBidWlsdGluL25vdGVzLmM6NTc5Cittc2dpZCAibm90ZSBjb250ZW50cyBpbiBhIGZpbGUiCittc2dzdHIgIuiou+ino+WFp+WuueWIsOS4gOWAi+aqlOahiOS4rSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjQxNiBidWlsdGluL25vdGVzLmM6NTgyCittc2dpZCAicmV1c2UgYW5kIGVkaXQgc3BlY2lmaWVkIG5vdGUgb2JqZWN0IgorbXNnc3RyICLph43nlKjlkoznt6jovK/mjIflrprnmoToqLvop6Pnianku7YiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0MTkgYnVpbHRpbi9ub3Rlcy5jOjU4NQorbXNnaWQgInJldXNlIHNwZWNpZmllZCBub3RlIG9iamVjdCIKK21zZ3N0ciAi6YeN55So5oyH5a6a55qE6Ki76Kej54mp5Lu2IgorCisjOiBidWlsdGluL25vdGVzLmM6NDIyIGJ1aWx0aW4vbm90ZXMuYzo1ODgKK21zZ2lkICJhbGxvdyBzdG9yaW5nIGVtcHR5IG5vdGUiCittc2dzdHIgIuWFgeioseWEsuWtmOepuueZveWCmeiouyIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjQyMyBidWlsdGluL25vdGVzLmM6NDk2Cittc2dpZCAicmVwbGFjZSBleGlzdGluZyBub3RlcyIKK21zZ3N0ciAi5Y+W5Luj5bey5a2Y5Zyo55qE6Ki76KejIgorCisjOiBidWlsdGluL25vdGVzLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDYW5ub3QgYWRkIG5vdGVzLiBGb3VuZCBleGlzdGluZyBub3RlcyBmb3Igb2JqZWN0ICVzLiBVc2UgJy1mJyB0byBvdmVyd3JpdGUgIgorImV4aXN0aW5nIG5vdGVzIgorbXNnc3RyICLkuI3og73mlrDlop7oqLvop6PjgILnmbznj77nianku7YgJXMg5bey5a2Y5Zyo6Ki76Kej44CC5L2/55SoICctZicg6KaG6JOL54++5a2Y6Ki76KejIgorCisjOiBidWlsdGluL25vdGVzLmM6NDYzIGJ1aWx0aW4vbm90ZXMuYzo1NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiT3ZlcndyaXRpbmcgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlc1xuIgorbXNnc3RyICLopobok4vnianku7YgJXMg54++5a2Y6Ki76KejXG4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0NzUgYnVpbHRpbi9ub3Rlcy5jOjYzNyBidWlsdGluL25vdGVzLmM6OTAyCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nIG5vdGUgZm9yIG9iamVjdCAlc1xuIgorbXNnc3RyICLliKrpmaTnianku7YgJXMg55qE6Ki76KejXG4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo0OTcKK21zZ2lkICJyZWFkIG9iamVjdHMgZnJvbSBzdGRpbiIKK21zZ3N0ciAi5b6e5qiZ5rqW6Ly45YWl6K6A5Y+W54mp5Lu2IgorCisjOiBidWlsdGluL25vdGVzLmM6NDk5Cittc2dpZCAibG9hZCByZXdyaXRpbmcgY29uZmlnIGZvciA8Y29tbWFuZD4gKGltcGxpZXMgLS1zdGRpbikiCittc2dzdHIgIumHjeaWsOi8ieWFpSA85oyH5LukPiDnmoToqK3lrprvvIjpmrHlkKsgLS1zdGRpbu+8iSIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjUxNworbXNnaWQgInRvbyBmZXcgcGFyYW1ldGVycyIKK21zZ3N0ciAi5Y+D5pW45aSq5bCRIgorCisjOiBidWlsdGluL25vdGVzLmM6NTM4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDYW5ub3QgY29weSBub3Rlcy4gRm91bmQgZXhpc3Rpbmcgbm90ZXMgZm9yIG9iamVjdCAlcy4gVXNlICctZicgdG8gb3ZlcndyaXRlICIKKyJleGlzdGluZyBub3RlcyIKK21zZ3N0ciAi5LiN6IO96KSH6KO96Ki76Kej44CC55m854++54mp5Lu2ICVzIOW3suWtmOWcqOiou+ino+OAguS9v+eUqCAnLWYnIOimhuiTi+ePvuWtmOiou+inoyIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjU1MAorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIG5vdGVzIG9uIHNvdXJjZSBvYmplY3QgJXMuIENhbm5vdCBjb3B5LiIKK21zZ3N0ciAi5rqQ54mp5Lu2ICVzIOe8uuWwkeiou+ino+OAguS4jeiDveikh+ijveOAgiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjYwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIC1tLy1GLy1jLy1DIG9wdGlvbnMgaGF2ZSBiZWVuIGRlcHJlY2F0ZWQgZm9yIHRoZSAnZWRpdCcgc3ViY29tbWFuZC5cbiIKKyJQbGVhc2UgdXNlICdnaXQgbm90ZXMgYWRkIC1mIC1tLy1GLy1jLy1DJyBpbnN0ZWFkLlxuIgorbXNnc3RyICIiCisi5a2Q5oyH5LukICdlZGl0JyDnmoTpgbjpoIUgLW0vLUYvLWMvLUMg5bey5qOE55So44CCXG4iCisi6KuL5o+b55SoICdnaXQgbm90ZXMgYWRkIC1mIC1tLy1GLy1jLy1DJ+OAglxuIgorCisjOiBidWlsdGluL25vdGVzLmM6Njk4Cittc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKK21zZ3N0ciAi5Yiq6Zmk5byV55SoIE5PVEVTX01FUkdFX1BBUlRJQUwg5aSx5pWXIgorCisjOiBidWlsdGluL25vdGVzLmM6NzAwCittc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSByZWYgTk9URVNfTUVSR0VfUkVGIgorbXNnc3RyICLliKrpmaTlvJXnlKggTk9URVNfTUVSR0VfUkVGIOWkseaVlyIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjcwMgorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgJ2dpdCBub3RlcyBtZXJnZScgd29ya3RyZWUiCittc2dzdHIgIuWIqumZpCAnZ2l0IG5vdGVzIG1lcmdlJyDlt6XkvZzljYDlpLHmlZciCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3MjIKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCByZWYgTk9URVNfTUVSR0VfUEFSVElBTCIKK21zZ3N0ciAi6K6A5Y+W5byV55SoIE5PVEVTX01FUkdFX1BBUlRJQUwg5aSx5pWXIgorCisjOiBidWlsdGluL25vdGVzLmM6NzI0Cittc2dpZCAiY291bGQgbm90IGZpbmQgY29tbWl0IGZyb20gTk9URVNfTUVSR0VfUEFSVElBTC4iCittc2dzdHIgIueEoeazleW+niBOT1RFU19NRVJHRV9QQVJUSUFMIOS4reaJvuWIsOaPkOS6pOOAgiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjcyNgorbXNnaWQgImNvdWxkIG5vdCBwYXJzZSBjb21taXQgZnJvbSBOT1RFU19NRVJHRV9QQVJUSUFMLiIKK21zZ3N0ciAi54Sh5rOV5b6eIE5PVEVTX01FUkdFX1BBUlRJQUwg5Lit6Kej5p6Q5o+Q5Lqk44CCIgorCisjOiBidWlsdGluL25vdGVzLmM6NzM5Cittc2dpZCAiZmFpbGVkIHRvIHJlc29sdmUgTk9URVNfTUVSR0VfUkVGIgorbXNnc3RyICLop6PmnpAgTk9URVNfTUVSR0VfUkVGIOWkseaVlyIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjc0MgorbXNnaWQgImZhaWxlZCB0byBmaW5hbGl6ZSBub3RlcyBtZXJnZSIKK21zZ3N0ciAi54Sh5rOV5a6M5oiQ6Ki76Kej5ZCI5L21IgorCisjOiBidWlsdGluL25vdGVzLmM6NzY4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gbm90ZXMgbWVyZ2Ugc3RyYXRlZ3kgJXMiCittc2dzdHIgIuacquefpeeahOiou+ino+WQiOS9teetlueVpSAlcyIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjc4NAorbXNnaWQgIkdlbmVyYWwgb3B0aW9ucyIKK21zZ3N0ciAi6YCa55So6YG46aCFIgorCisjOiBidWlsdGluL25vdGVzLmM6Nzg2Cittc2dpZCAiTWVyZ2Ugb3B0aW9ucyIKK21zZ3N0ciAi5ZCI5L216YG46aCFIgorCisjOiBidWlsdGluL25vdGVzLmM6Nzg4Cittc2dpZCAiIgorInJlc29sdmUgbm90ZXMgY29uZmxpY3RzIHVzaW5nIHRoZSBnaXZlbiBzdHJhdGVneSAobWFudWFsL291cnMvdGhlaXJzL3VuaW9uLyIKKyJjYXRfc29ydF91bmlxKSIKK21zZ3N0ciAi5L2/55So5oyH5a6a55qE562W55Wl6Kej5rG66Ki76Kej6KGd56qBIChtYW51YWwvb3Vycy90aGVpcnMvdW5pb24vY2F0X3NvcnRfdW5pcSkiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTAKK21zZ2lkICJDb21taXR0aW5nIHVubWVyZ2VkIG5vdGVzIgorbXNnc3RyICLmj5DkuqTmnKrlkIjkvbXnmoToqLvop6MiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTIKK21zZ2lkICJmaW5hbGl6ZSBub3RlcyBtZXJnZSBieSBjb21taXR0aW5nIHVubWVyZ2VkIG5vdGVzIgorbXNnc3RyICLpgI/pgY7mj5DkuqTmnKrlkIjkvbXnmoToqLvop6PkvoblrozmiJDoqLvop6PlkIjkvbUiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTQKK21zZ2lkICJBYm9ydGluZyBub3RlcyBtZXJnZSByZXNvbHV0aW9uIgorbXNnc3RyICLkuK3mraLoqLvop6PlkIjkvbXnmoTmlrnmoYgiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo3OTYKK21zZ2lkICJhYm9ydCBub3RlcyBtZXJnZSIKK21zZ3N0ciAi5Lit5q2i6Ki76Kej5ZCI5L21IgorCisjOiBidWlsdGluL25vdGVzLmM6ODA3Cittc2dpZCAiY2Fubm90IG1peCAtLWNvbW1pdCwgLS1hYm9ydCBvciAtcy8tLXN0cmF0ZWd5IgorbXNnc3RyICLkuI3og73mt7fnlKggLS1jb21taXTjgIEtLWFib3J0IOaIliAtcy8tLXN0cmF0ZWd5IgorCisjOiBidWlsdGluL25vdGVzLmM6ODEyCittc2dpZCAibXVzdCBzcGVjaWZ5IGEgbm90ZXMgcmVmIHRvIG1lcmdlIgorbXNnc3RyICLlv4XpoIjmjIflrprkuIDlgIvoqLvop6PlvJXnlKjkvoblkIjkvbUiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo4MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biAtcy8tLXN0cmF0ZWd5OiAlcyIKK21zZ3N0ciAi5pyq55+l55qEIC1zLy0tc3RyYXRlZ3nvvJolcyIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjg3MworIywgYy1mb3JtYXQKK21zZ2lkICJhIG5vdGVzIG1lcmdlIGludG8gJXMgaXMgYWxyZWFkeSBpbi1wcm9ncmVzcyBhdCAlcyIKK21zZ3N0ciAi5L2N5pa8ICUyJHMg55qE5LiA5YCL5YiwICUxJHMg5Lit55qE6Ki76Kej5ZCI5L215q2j5Zyo5Z+36KGM5LitIgorCisjOiBidWlsdGluL25vdGVzLmM6ODc2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdG9yZSBsaW5rIHRvIGN1cnJlbnQgbm90ZXMgcmVmICglcykiCittc2dzdHIgIueEoeazleWEsuWtmOmAo+e1kOWIsOebruWJjeeahOiou+ino+W8leeUqO+8iCVz77yJIgorCisjOiBidWlsdGluL25vdGVzLmM6ODc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBdXRvbWF0aWMgbm90ZXMgbWVyZ2UgZmFpbGVkLiBGaXggY29uZmxpY3RzIGluICVzIGFuZCBjb21taXQgdGhlIHJlc3VsdCB3aXRoICIKKyInZ2l0IG5vdGVzIG1lcmdlIC0tY29tbWl0Jywgb3IgYWJvcnQgdGhlIG1lcmdlIHdpdGggJ2dpdCBub3RlcyBtZXJnZSAtLSIKKyJhYm9ydCcuXG4iCittc2dzdHIgIiIKKyLoh6rli5XlkIjkvbXoqqrmmI7lpLHmlZfjgILkv67mlLkgJXMg5Lit55qE6KGd56qB5Lim5LiU5L2/55So5oyH5LukICdnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXQnIOaPkCIKKyLkuqTntZDmnpzvvIzmiJbogIXkvb/nlKjmjIfku6QgJ2dpdCBub3RlcyBtZXJnZSAtLWFib3J0JyDntYLmraLlkIjkvbXjgIJcbiIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjg5NyBidWlsdGluL3RhZy5jOjU0NQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAi54Sh5rOV6Kej5p6QICclcycg54K65LiA5YCL5pyJ5pWI5byV55So44CCIgorCisjOiBidWlsdGluL25vdGVzLmM6OTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIk9iamVjdCAlcyBoYXMgbm8gbm90ZVxuIgorbXNnc3RyICLnianku7YgJXMg5rKS5pyJ6Ki76KejXG4iCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5MTIKK21zZ2lkICJhdHRlbXB0IHRvIHJlbW92ZSBub24tZXhpc3RlbnQgbm90ZSBpcyBub3QgYW4gZXJyb3IiCittc2dzdHIgIuWYl+ippuWIqumZpOS4jeWtmOWcqOeahOiou+ino+S4jeaYr+S4gOWAi+mMr+iqpCIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjkxNQorbXNnaWQgInJlYWQgb2JqZWN0IG5hbWVzIGZyb20gdGhlIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICLlvp7mqJnmupbovLjlhaXoroDlj5bnianku7blkI3nqLEiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NTQgYnVpbHRpbi9wcnVuZS5jOjEzMCBidWlsdGluL3dvcmt0cmVlLmM6MTY0Cittc2dpZCAiZG8gbm90IHJlbW92ZSwgc2hvdyBvbmx5IgorbXNnc3RyICLkuI3liKrpmaTvvIzlj6rpoa/npLoiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5NTUKK21zZ2lkICJyZXBvcnQgcHJ1bmVkIG5vdGVzIgorbXNnc3RyICLloLHlkYrmuIXpmaTnmoToqLvop6MiCisKKyM6IGJ1aWx0aW4vbm90ZXMuYzo5OTgKK21zZ2lkICJub3Rlcy1yZWYiCittc2dzdHIgIuiou+ino+W8leeUqCIKKworIzogYnVpbHRpbi9ub3Rlcy5jOjk5OQorbXNnaWQgInVzZSBub3RlcyBmcm9tIDxub3Rlcy1yZWY+IgorbXNnc3RyICLlvp4gPOiou+ino+W8leeUqD4g5L2/55So6Ki76KejIgorCisjOiBidWlsdGluL25vdGVzLmM6MTAzNCBidWlsdGluL3N0YXNoLmM6MTY0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHN1YmNvbW1hbmQ6ICVzIgorbXNnc3RyICLmnKrnn6XlrZDmjIfku6TvvJolcyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1MgorbXNnaWQgIiIKKyJnaXQgcGFjay1vYmplY3RzIC0tc3Rkb3V0IFs8b3B0aW9ucz4uLi5dIFs8IDxyZWYtbGlzdD4gfCA8IDxvYmplY3QtbGlzdD5dIgorbXNnc3RyICJnaXQgcGFjay1vYmplY3RzIC0tc3Rkb3V0IFs86YG46aCFPi4uLl0gWzwgPOW8leeUqOWIl+ihqD4gfCA8IDznianku7bliJfooag+XSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo1MworbXNnaWQgIiIKKyJnaXQgcGFjay1vYmplY3RzIFs8b3B0aW9ucz4uLi5dIDxiYXNlLW5hbWU+IFs8IDxyZWYtbGlzdD4gfCA8IDxvYmplY3QtbGlzdD5dIgorbXNnc3RyICJnaXQgcGFjay1vYmplY3RzIFs86YG46aCFPi4uLl0gPOWJjee2tOWQjeeosT4gWzwgPOW8leeUqOWIl+ihqD4gfCA8IDznianku7bliJfooag+XSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHBhY2tlZCBvYmplY3QgQ1JDIGZvciAlcyIKK21zZ3N0ciAiJXMg6Yyv55qE5YyF54mp5Lu2IENSQyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29ycnVwdCBwYWNrZWQgb2JqZWN0IGZvciAlcyIKK21zZ3N0ciAiJXMg5pCN5aOe55qE5YyF54mp5Lu2IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWN1cnNpdmUgZGVsdGEgZGV0ZWN0ZWQgZm9yIG9iamVjdCAlcyIKK21zZ3N0ciAi55m854++54mp5Lu2ICVzIOmBnui/tCBkZWx0YSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAib3JkZXJlZCAldSBvYmplY3RzLCBleHBlY3RlZCAlPFBSSXUzMj4iCittc2dzdHIgIuaOkuW6j+S6hiAldSDlgIvnianku7bvvIzpoJDmnJ8gJTxQUkl1MzI+IOWAiyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzo5NzIKK21zZ2lkICJkaXNhYmxpbmcgYml0bWFwIHdyaXRpbmcsIHBhY2tzIGFyZSBzcGxpdCBkdWUgdG8gcGFjay5wYWNrU2l6ZUxpbWl0IgorbXNnc3RyICLnpoHnlKggYml0bWFwIOWvq+WFpe+8jOWboOeCuiBwYWNrLnBhY2tTaXplTGltaXQg6Kit5a6a5L2/5b6X5YyF6KKr5YiH5YiG54K65aSa5YCLIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjk4NQorbXNnaWQgIldyaXRpbmcgb2JqZWN0cyIKK21zZ3N0ciAi5a+r5YWl54mp5Lu25LitIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjEwNDYgYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAlcyIKK21zZ3N0ciAi5bCNICVzIOWRvOWPqyBzdGF0IOWkseaVlyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxMDk5CisjLCBjLWZvcm1hdAorbXNnaWQgIndyb3RlICU8UFJJdTMyPiBvYmplY3RzIHdoaWxlIGV4cGVjdGluZyAlPFBSSXUzMj4iCittc2dzdHIgIuWvq+WFpSAlPFBSSXUzMj4g5YCL54mp5Lu26ICM6aCQ5pyfICU8UFJJdTMyPiDlgIsiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MTI5NworbXNnaWQgImRpc2FibGluZyBiaXRtYXAgd3JpdGluZywgYXMgc29tZSBvYmplY3RzIGFyZSBub3QgYmVpbmcgcGFja2VkIgorbXNnc3RyICLnpoHnlKggYml0bWFwIOWvq+WFpe+8jOWboOeCuuS4gOS6m+eJqeS7tuWwh+S4jeacg+iiq+aJk+WMhSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoxNzI0CisjLCBjLWZvcm1hdAorbXNnaWQgImRlbHRhIGJhc2Ugb2Zmc2V0IG92ZXJmbG93IGluIHBhY2sgZm9yICVzIgorbXNnc3RyICIlcyDlo5PnuK7kuK0gZGVsdGEg5Z+65rqW5L2N56e76LaK55WMIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjE3MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVsdGEgYmFzZSBvZmZzZXQgb3V0IG9mIGJvdW5kIGZvciAlcyIKK21zZ3N0ciAiJXMg55qEIGRlbHRhIOWfuua6luS9jeenu+i2iueVjCIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyMDA0Cittc2dpZCAiQ291bnRpbmcgb2JqZWN0cyIKK21zZ3N0ciAi54mp5Lu26KiI5pW45LitIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHBhcnNlIG9iamVjdCBoZWFkZXIgb2YgJXMiCittc2dzdHIgIueEoeazleino+aekOeJqeS7tiAlcyDmqJnpoK3oqIrmga8iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIxOSBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyMzUKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJvYmplY3QgJXMgY2Fubm90IGJlIHJlYWQiCittc2dzdHIgIueJqeS7tiAlcyDnhKHms5XoroDlj5YiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjIyMiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAib2JqZWN0ICVzIGluY29uc2lzdGVudCBvYmplY3QgbGVuZ3RoICglPFBSSXVNQVg+IHZzICU8UFJJdU1BWD4pIgorbXNnc3RyICLnianku7YgJXMg5LiN5LiA6Ie055qE54mp5Lu26ZW35bqm77yIJTxQUkl1TUFYPiB2cyAlPFBSSXVNQVg+77yJIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjIyNTkKK21zZ2lkICJzdWJvcHRpbWFsIHBhY2sgLSBvdXQgb2YgbWVtb3J5IgorbXNnc3RyICLmrKHlhKrvvIhzdWJvcHRpbWFs77yJ5omT5YyFIC0g6KiY5oa26auU5LiN6LazIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsdGEgY29tcHJlc3Npb24gdXNpbmcgdXAgdG8gJWQgdGhyZWFkcyIKK21zZ3N0ciAi5L2/55SoICVkIOWAi+Wft+ihjOe3kumAsuihjOWjk+e4riIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzoyNzEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBwYWNrIG9iamVjdHMgcmVhY2hhYmxlIGZyb20gdGFnICVzIgorbXNnc3RyICLnhKHms5XngrrmqJnnsaQgJXMg5aOT57iu54mp5Lu2IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4MDEKK21zZ2lkICJDb21wcmVzc2luZyBvYmplY3RzIgorbXNnc3RyICLlo5PnuK7nianku7bkuK0iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MjgwNworbXNnaWQgImluY29uc2lzdGVuY3kgd2l0aCBkZWx0YSBjb3VudCIKK21zZ3N0ciAi5LiN5LiA6Ie055qE5beu55Ww6KiI5pW4IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4cGVjdGVkIGVkZ2Ugb2JqZWN0IElELCBnb3QgZ2FyYmFnZTpcbiIKKyIgJXMiCittc2dzdHIgIiIKKyLpoJDmnJ/pgornlYznianku7bvvIhlZGdlIG9iamVjdO+8iUlE77yM5Y275b6X5Yiw5Z6D5Zy+6LOH5paZ77yaXG4iCisiICVzIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI4OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImV4cGVjdGVkIG9iamVjdCBJRCwgZ290IGdhcmJhZ2U6XG4iCisiICVzIgorbXNnc3RyICIiCisi6aCQ5pyf54mp5Lu2IElE77yM5Y275b6X5Yiw5Z6D5Zy+6LOH5paZ77yaXG4iCisiICVzIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjI5OTIKK21zZ2lkICJpbnZhbGlkIHZhbHVlIGZvciAtLW1pc3NpbmciCittc2dzdHIgIumBuOmghSAtLW1pc3Npbmcg55qE5YC854Sh5pWIIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwNTEgYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTU5Cittc2dpZCAiY2Fubm90IG9wZW4gcGFjayBpbmRleCIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf5YyF5qqU5qGI57Si5byVIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9vc2Ugb2JqZWN0IGF0ICVzIGNvdWxkIG5vdCBiZSBleGFtaW5lZCIKK21zZ3N0ciAi54Sh5rOV5qqi5p+lICVzIOiZleeahOmshuaVo+eJqeS7tiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMTY3Cittc2dpZCAidW5hYmxlIHRvIGZvcmNlIGxvb3NlIG9iamVjdCIKK21zZ3N0ciAi54Sh5rOV5by35Yi26ayG5pWj54mp5Lu2IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgcmV2ICclcyciCittc2dzdHIgIuS4jeaYr+S4gOWAi+eJiOacrCAnJXMnIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFkIHJldmlzaW9uICclcyciCittc2dzdHIgIuWjnueahOeJiOacrCAnJXMnIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMyODgKK21zZ2lkICJ1bmFibGUgdG8gYWRkIHJlY2VudCBvYmplY3RzIgorbXNnc3RyICLnhKHms5XmlrDlop7mnIDov5HnmoTnianku7YiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bnN1cHBvcnRlZCBpbmRleCB2ZXJzaW9uICVzIgorbXNnc3RyICLkuI3mlK/mj7TnmoTntKLlvJXniYjmnKwgJXMiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM0NQorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgaW5kZXggdmVyc2lvbiAnJXMnIgorbXNnc3RyICLlo57nmoTntKLlvJXniYjmnKwgJyVzJyIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzgzCittc2dpZCAiPHZlcnNpb24+Wyw8b2Zmc2V0Pl0iCittc2dzdHIgIjzniYjmnKw+Wyw85L2N56e7Pl0iCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4NAorbXNnaWQgIndyaXRlIHRoZSBwYWNrIGluZGV4IGZpbGUgaW4gdGhlIHNwZWNpZmllZCBpZHggZm9ybWF0IHZlcnNpb24iCittc2dzdHIgIueUqOaMh+WumueahCBpZHgg5qC85byP54mI5pys5L6G5a+r5YyF57Si5byV5qqU5qGIIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzODcKK21zZ2lkICJtYXhpbXVtIHNpemUgb2YgZWFjaCBvdXRwdXQgcGFjayBmaWxlIgorbXNnc3RyICLmr4/lgIvovLjlh7rljIXnmoTmnIDlpKflsLrlr7giCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM4OQorbXNnaWQgImlnbm9yZSBib3Jyb3dlZCBvYmplY3RzIGZyb20gYWx0ZXJuYXRlIG9iamVjdCBzdG9yZSIKK21zZ3N0ciAi5b+955Wl5b6e5YKZ55So54mp5Lu25YSy5a2Y6KOh5YCf55So54mp5Lu2IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTEKK21zZ2lkICJpZ25vcmUgcGFja2VkIG9iamVjdHMiCittc2dzdHIgIuW/veeVpeWMheeJqeS7tiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozMzkzCittc2dpZCAibGltaXQgcGFjayB3aW5kb3cgYnkgb2JqZWN0cyIKK21zZ3N0ciAi6ZmQ5Yi25omT5YyF6KaW56qX55qE54mp5Lu25pW4IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTUKK21zZ2lkICJsaW1pdCBwYWNrIHdpbmRvdyBieSBtZW1vcnkgaW4gYWRkaXRpb24gdG8gb2JqZWN0IGxpbWl0IgorbXNnc3RyICLpmaTnianku7bmlbjph4/pmZDliLblpJboqK3lrprmiZPljIXoppbnqpfnmoToqJjmhrbpq5TpmZDliLYiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzM5NworbXNnaWQgIm1heGltdW0gbGVuZ3RoIG9mIGRlbHRhIGNoYWluIGFsbG93ZWQgaW4gdGhlIHJlc3VsdGluZyBwYWNrIgorbXNnc3RyICLmiZPljIXlhYHoqLHnmoQgZGVsdGEg6Y+I55qE5pyA5aSn6ZW35bqmIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjMzOTkKK21zZ2lkICJyZXVzZSBleGlzdGluZyBkZWx0YXMiCittc2dzdHIgIumHjeeUqOW3suWtmOWcqOeahCBkZWx0YXMiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQwMQorbXNnaWQgInJldXNlIGV4aXN0aW5nIG9iamVjdHMiCittc2dzdHIgIumHjeeUqOW3suWtmOWcqOeahOeJqeS7tiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDAzCittc2dpZCAidXNlIE9GU19ERUxUQSBvYmplY3RzIgorbXNnc3RyICLkvb/nlKggT0ZTX0RFTFRBIOeJqeS7tiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA1Cittc2dpZCAidXNlIHRocmVhZHMgd2hlbiBzZWFyY2hpbmcgZm9yIGJlc3QgZGVsdGEgbWF0Y2hlcyIKK21zZ3N0ciAi5L2/55So5Z+36KGM57eS5p+l6Kmi5pyA5L2zIGRlbHRhIOespuWQiCIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDA3Cittc2dpZCAiZG8gbm90IGNyZWF0ZSBhbiBlbXB0eSBwYWNrIG91dHB1dCIKK21zZ3N0ciAi5LiN5bu656uL56m655qE5YyF6Ly45Ye6IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MDkKK21zZ2lkICJyZWFkIHJldmlzaW9uIGFyZ3VtZW50cyBmcm9tIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICLlvp7mqJnmupbovLjlhaXoroDlj5bniYjmnKzomZ/lj4PmlbgiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxMQorbXNnaWQgImxpbWl0IHRoZSBvYmplY3RzIHRvIHRob3NlIHRoYXQgYXJlIG5vdCB5ZXQgcGFja2VkIgorbXNnc3RyICLpmZDliLbpgqPkupvlsJrmnKrmiZPljIXnmoTnianku7YiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNAorbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWFjaGFibGUgZnJvbSBhbnkgcmVmZXJlbmNlIgorbXNnc3RyICLljIXmi6zlj6/ku6Xlvp7ku7vkvZXlvJXnlKjlrZjlj5bliLDnmoTnianku7YiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQxNworbXNnaWQgImluY2x1ZGUgb2JqZWN0cyByZWZlcnJlZCBieSByZWZsb2cgZW50cmllcyIKK21zZ3N0ciAi5YyF5ous6KKr5byV55So5pel6KqM5byV55So5Yiw55qE54mp5Lu2IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjAKK21zZ2lkICJpbmNsdWRlIG9iamVjdHMgcmVmZXJyZWQgdG8gYnkgdGhlIGluZGV4IgorbXNnc3RyICLljIXmi6zooqvntKLlvJXlvJXnlKjliLDnmoTnianku7YiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyMworbXNnaWQgIm91dHB1dCBwYWNrIHRvIHN0ZG91dCIKK21zZ3N0ciAi6Ly45Ye65YyF5Yiw5qiZ5rqW6Ly45Ye6IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MjUKK21zZ2lkICJpbmNsdWRlIHRhZyBvYmplY3RzIHRoYXQgcmVmZXIgdG8gb2JqZWN0cyB0byBiZSBwYWNrZWQiCittc2dzdHIgIuWMheaLrOmCo+S6m+W8leeUqOS6huW+heaJk+WMheeJqeS7tueahOaomeexpOeJqeS7tiIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDI3Cittc2dpZCAia2VlcCB1bnJlYWNoYWJsZSBvYmplY3RzIgorbXNnc3RyICLntq3mjIHnhKHms5Xlj5blvpfnmoTnianku7YiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQyOQorbXNnaWQgInBhY2sgbG9vc2UgdW5yZWFjaGFibGUgb2JqZWN0cyIKK21zZ3N0ciAi5omT5YyF6ayG5pWj55qE54Sh5rOV5Y+W5b6X54mp5Lu2IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzEKK21zZ2lkICJ1bnBhY2sgdW5yZWFjaGFibGUgb2JqZWN0cyBuZXdlciB0aGFuIDx0aW1lPiIKK21zZ3N0ciAi5bCH5q+U5o+Q5L6bIDzmmYLplpM+IOaWsOeahOeEoeazleWtmOWPlueahOeJqeS7tuino+WMhSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDM0Cittc2dpZCAidXNlIHRoZSBzcGFyc2UgcmVhY2hhYmlsaXR5IGFsZ29yaXRobSIKK21zZ3N0ciAi5L2/55So56iA55aP5Y+v5Lul5Y+W5b6X5oCn5ryU566X5rOVIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzYKK21zZ2lkICJjcmVhdGUgdGhpbiBwYWNrcyIKK21zZ3N0ciAi5bu656uL57K+57Ch5YyFIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0MzgKK21zZ2lkICJjcmVhdGUgcGFja3Mgc3VpdGFibGUgZm9yIHNoYWxsb3cgZmV0Y2hlcyIKK21zZ3N0ciAi5bu656uL6YGp5ZCI5re66KSH6KO954mI5pys5bqr5Y+W5b6X55qE5YyFIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDAKK21zZ2lkICJpZ25vcmUgcGFja3MgdGhhdCBoYXZlIGNvbXBhbmlvbiAua2VlcCBmaWxlIgorbXNnc3RyICLlv73nlaXphY3mnIkgLmtlZXAg5qqU5qGI55qE5YyFIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDIKK21zZ2lkICJpZ25vcmUgdGhpcyBwYWNrIgorbXNnc3RyICLlv73nlaXoqbIgcGFjayIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDQ0Cittc2dpZCAicGFjayBjb21wcmVzc2lvbiBsZXZlbCIKK21zZ3N0ciAi5omT5YyF5aOT57iu57Sa5YilIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDYKK21zZ2lkICJkbyBub3QgaGlkZSBjb21taXRzIGJ5IGdyYWZ0cyIKK21zZ3N0ciAi6aGv56S66KKr56e75qSN6Zqx6JeP55qE5o+Q5LqkIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NDgKK21zZ2lkICJ1c2UgYSBiaXRtYXAgaW5kZXggaWYgYXZhaWxhYmxlIHRvIHNwZWVkIHVwIGNvdW50aW5nIG9iamVjdHMiCittc2dzdHIgIuS9v+eUqCBiaXRtYXAg57Si5byV77yI5aaC5p6c5pyJ55qE6Kmx77yJ5Lul5o+Q6auY54mp5Lu26KiI5pW45pmC55qE6YCf5bqmIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTAKK21zZ2lkICJ3cml0ZSBhIGJpdG1hcCBpbmRleCB0b2dldGhlciB3aXRoIHRoZSBwYWNrIGluZGV4IgorbXNnc3RyICLlnKjlu7rnq4vljIXntKLlvJXnmoTlkIzmmYLlu7rnq4sgYml0bWFwIOe0ouW8lSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDU0Cittc2dpZCAid3JpdGUgYSBiaXRtYXAgaW5kZXggaWYgcG9zc2libGUiCittc2dzdHIgIuWmguaenOWPr+iDve+8jOWvqyBiaXRtYXAg57Si5byVIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NTgKK21zZ2lkICJoYW5kbGluZyBmb3IgbWlzc2luZyBvYmplY3RzIgorbXNnc3RyICLomZXnkIbpgbrlpLHnmoTnianku7YiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ2MQorbXNnaWQgImRvIG5vdCBwYWNrIG9iamVjdHMgaW4gcHJvbWlzb3IgcGFja2ZpbGVzIgorbXNnc3RyICLkuI3opoHmiZPljIUgcHJvbWlzb3IgcGFja2ZpbGUg5Lit55qE54mp5Lu2IgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM0NjMKK21zZ2lkICJyZXNwZWN0IGlzbGFuZHMgZHVyaW5nIGRlbHRhIGNvbXByZXNzaW9uIgorbXNnc3RyICLlnKjlop7ph4/lo5PnuK7mmYLlj4PogIPos4fmlpnls7YiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICJkZWx0YSBjaGFpbiBkZXB0aCAlZCBpcyB0b28gZGVlcCwgZm9yY2luZyAlZCIKK21zZ3N0ciAi5aKe6YeP6Y+I5rex5bqmICVkIOWkqua3seS6hu+8jOW8t+WItueCuiAlZCIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNDk3CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2suZGVsdGFDYWNoZUxpbWl0IGlzIHRvbyBoaWdoLCBmb3JjaW5nICVkIgorbXNnc3RyICLoqK3lrpogcGFjay5kZWx0YUNhY2hlTGltaXQg5aSq6auY5LqG77yM5by35Yi254K6ICVkIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM1NTEKK21zZ2lkICItLW1heC1wYWNrLXNpemUgY2Fubm90IGJlIHVzZWQgdG8gYnVpbGQgYSBwYWNrIGZvciB0cmFuc2ZlciIKK21zZ3N0ciAi5LiN6IO95L2/55SoIC0tbWF4LXBhY2stc2l6ZSDkvobmp4vlu7rlgrPovLjnlKjnmoTljIXmqpTmoYgiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1MworbXNnaWQgIm1pbmltdW0gcGFjayBzaXplIGxpbWl0IGlzIDEgTWlCIgorbXNnc3RyICLmnIDlsI/nmoTljIXmqpTmoYjlpKflsI/mmK8gMSBNaUIiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzU1OAorbXNnaWQgIi0tdGhpbiBjYW5ub3QgYmUgdXNlZCB0byBidWlsZCBhbiBpbmRleGFibGUgcGFjayIKK21zZ3N0ciAiLS10aGluIOS4jeiDveeUqOaWvOW7uueri+S4gOWAi+WPr+e0ouW8leWMhSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTYxCittc2dpZCAiLS1rZWVwLXVucmVhY2hhYmxlIGFuZCAtLXVucGFjay11bnJlYWNoYWJsZSBhcmUgaW5jb21wYXRpYmxlIgorbXNnc3RyICItLWtlZXAtdW5yZWFjaGFibGUg5ZKMIC0tdW5wYWNrLXVucmVhY2hhYmxlIOS4jeebuOWuuSIKKworIzogYnVpbHRpbi9wYWNrLW9iamVjdHMuYzozNTY3Cittc2dpZCAiY2Fubm90IHVzZSAtLWZpbHRlciB3aXRob3V0IC0tc3Rkb3V0IgorbXNnc3RyICLkuI3og73lnKjmspLmnIkgLS1zdGRvdXQg55qE5oOF5rOB5LiL5L2/55SoIC0tZmlsdGVyIgorCisjOiBidWlsdGluL3BhY2stb2JqZWN0cy5jOjM2MjcKK21zZ2lkICJFbnVtZXJhdGluZyBvYmplY3RzIgorbXNnc3RyICLmnproiInnianku7YiCisKKyM6IGJ1aWx0aW4vcGFjay1vYmplY3RzLmM6MzY1NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVG90YWwgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCByZXVzZWQgJTxQUkl1MzI+IChkZWx0YSAlPFBSSXUzMj4pLCBwYWNrLSIKKyJyZXVzZWQgJTxQUkl1MzI+IgorbXNnc3RyICIiCisi57i95YWxICU8UFJJdTMyPiAo5beu55WwICU8UFJJdTMyPinvvIzlvqnnlKggJTxQUkl1MzI+ICjlt67nlbAgJTxQUkl1MzI+Ke+8jOmHjeeUqOWMhSAiCisiJTxQUkl1MzI+IgorCisjOiBidWlsdGluL3BhY2stcmVmcy5jOjgKK21zZ2lkICJnaXQgcGFjay1yZWZzIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgcGFjay1yZWZzIFs86YG46aCFPl0iCisKKyM6IGJ1aWx0aW4vcGFjay1yZWZzLmM6MTYKK21zZ2lkICJwYWNrIGV2ZXJ5dGhpbmciCittc2dzdHIgIuaJk+WMheS4gOWIhyIKKworIzogYnVpbHRpbi9wYWNrLXJlZnMuYzoxNworbXNnaWQgInBydW5lIGxvb3NlIHJlZnMgKGRlZmF1bHQpIgorbXNnc3RyICLmuIXpmaTprIbmlaPnmoTlvJXnlKjvvIjpoJDoqK3vvIkiCisKKyM6IGJ1aWx0aW4vcHJ1bmUtcGFja2VkLmM6OQorbXNnaWQgImdpdCBwcnVuZS1wYWNrZWQgWy1uIHwgLS1kcnktcnVuXSBbLXEgfCAtLXF1aWV0XSIKK21zZ3N0ciAiZ2l0IHBydW5lLXBhY2tlZCBbLW4gfCAtLWRyeS1ydW5dIFstcSB8IC0tcXVpZXRdIgorCisjOiBidWlsdGluL3BydW5lLXBhY2tlZC5jOjQyCittc2dpZCAiUmVtb3ZpbmcgZHVwbGljYXRlIG9iamVjdHMiCittc2dzdHIgIuato+WcqOWIqumZpOmHjeikh+eJqeS7tiIKKworIzogYnVpbHRpbi9wcnVuZS5jOjEyCittc2dpZCAiZ2l0IHBydW5lIFstbl0gWy12XSBbLS1wcm9ncmVzc10gWy0tZXhwaXJlIDx0aW1lPl0gWy0tXSBbPGhlYWQ+Li4uXSIKK21zZ3N0ciAiZ2l0IHBydW5lIFstbl0gWy12XSBbLS1wcm9ncmVzc10gWy0tZXhwaXJlIDzmmYLplpM+XSBbLS1dIFs8aGVhZD4uLi5dIgorCisjOiBidWlsdGluL3BydW5lLmM6MTMxCittc2dpZCAicmVwb3J0IHBydW5lZCBvYmplY3RzIgorbXNnc3RyICLloLHlkYrmuIXpmaTnmoTnianku7YiCisKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxMzQKK21zZ2lkICJleHBpcmUgb2JqZWN0cyBvbGRlciB0aGFuIDx0aW1lPiIKK21zZ3N0ciAi5L2/5pep5pa85o+Q5L6b5pmC6ZaT55qE54mp5Lu26YGO5pyfIgorCisjOiBidWlsdGluL3BydW5lLmM6MTM2Cittc2dpZCAibGltaXQgdHJhdmVyc2FsIHRvIG9iamVjdHMgb3V0c2lkZSBwcm9taXNvciBwYWNrZmlsZXMiCittc2dzdHIgIumZkOWItumBjeattyBwcm9taXNvciBwYWNrZmlsZSDku6XlpJbnmoTnianku7YiCisKKyM6IGJ1aWx0aW4vcHJ1bmUuYzoxNTAKK21zZ2lkICJjYW5ub3QgcHJ1bmUgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCittc2dzdHIgIuS4jeiDveWcqOePjeWTgeeJiOacrOW6q+S4reWft+ihjOa4heeQhuWLleS9nCIKKworIzogYnVpbHRpbi9wdWxsLmM6NDUgYnVpbHRpbi9wdWxsLmM6NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB2YWx1ZSBmb3IgJXM6ICVzIgorbXNnc3RyICIlcyDnmoTlgLznhKHmlYjvvJolcyIKKworIzogYnVpbHRpbi9wdWxsLmM6NjcKK21zZ2lkICJnaXQgcHVsbCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKK21zZ3N0ciAiZ2l0IHB1bGwgWzzpgbjpoIU+XSBbPOeJiOacrOW6qz4gWzzlvJXnlKjopo/moLw+Li4uXV0iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyMgorbXNnaWQgImNvbnRyb2wgZm9yIHJlY3Vyc2l2ZSBmZXRjaGluZyBvZiBzdWJtb2R1bGVzIgorbXNnc3RyICLmjqfliLblrZDmqKHntYTnmoTpgZ7ov7Tlj5blvpciCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyNgorbXNnaWQgIk9wdGlvbnMgcmVsYXRlZCB0byBtZXJnaW5nIgorbXNnc3RyICLlkozlkIjkvbXnm7jpl5znmoTpgbjpoIUiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjEyOQorbXNnaWQgImluY29ycG9yYXRlIGNoYW5nZXMgYnkgcmViYXNpbmcgcmF0aGVyIHRoYW4gbWVyZ2luZyIKK21zZ3N0ciAi5L2/55So6YeN5a6a5Z+65bqV5YuV5L2c5Y+W5Luj5ZCI5L215YuV5L2c5Lul5aWX55So5L+u5pS5IgorCisjOiBidWlsdGluL3B1bGwuYzoxNTcgYnVpbHRpbi9yZWJhc2UuYzo0NzEgYnVpbHRpbi9yZXZlcnQuYzoxMjYKK21zZ2lkICJhbGxvdyBmYXN0LWZvcndhcmQiCittc2dzdHIgIuWFgeioseW/q+i9ieW8jyIKKworIzogYnVpbHRpbi9wdWxsLmM6MTY2Cittc2dpZCAiYXV0b21hdGljYWxseSBzdGFzaC9zdGFzaCBwb3AgYmVmb3JlIGFuZCBhZnRlciByZWJhc2UiCittc2dzdHIgIumHjeWumuWfuuW6leWLleS9nOWJjeW+jOWft+ihjOiHquWLleWEsuiXj+WSjOW9iOWHuuWEsuiXjyIKKworIzogYnVpbHRpbi9wdWxsLmM6MTgyCittc2dpZCAiT3B0aW9ucyByZWxhdGVkIHRvIGZldGNoaW5nIgorbXNnc3RyICLlkozlj5blvpfnm7jpl5znmoTlj4PmlbgiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjE5MgorbXNnaWQgImZvcmNlIG92ZXJ3cml0ZSBvZiBsb2NhbCBicmFuY2giCittc2dzdHIgIuW8t+WItuimhuiTi+acrOapn+WIhuaUryIKKworIzogYnVpbHRpbi9wdWxsLmM6MjAwCittc2dpZCAibnVtYmVyIG9mIHN1Ym1vZHVsZXMgcHVsbGVkIGluIHBhcmFsbGVsIgorbXNnc3RyICLkuKbnmbzmi4nlj5bnmoTlrZDmqKHntYTnmoTmlbjph48iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjMwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHZhbHVlIGZvciBwdWxsLmZmOiAlcyIKK21zZ3N0ciAicHVsbC5mZiDnmoTlj5blgLznhKHmlYjvvJolcyIKKworIzogYnVpbHRpbi9wdWxsLmM6NDI2Cittc2dpZCAiIgorIlRoZXJlIGlzIG5vIGNhbmRpZGF0ZSBmb3IgcmViYXNpbmcgYWdhaW5zdCBhbW9uZyB0aGUgcmVmcyB0aGF0IHlvdSBqdXN0ICIKKyJmZXRjaGVkLiIKK21zZ3N0ciAi5Zyo5oKo5Ymb5Ymb5Y+W5b6X5Yiw55qE5byV55So5Lit5rKS5pyJ6YeN5a6a5Z+65bqV5YuV5L2c55qE5YCZ6YG444CCIgorCisjOiBidWlsdGluL3B1bGwuYzo0MjgKK21zZ2lkICIiCisiVGhlcmUgYXJlIG5vIGNhbmRpZGF0ZXMgZm9yIG1lcmdpbmcgYW1vbmcgdGhlIHJlZnMgdGhhdCB5b3UganVzdCBmZXRjaGVkLiIKK21zZ3N0ciAi5Zyo5oKo5Ymb5Ymb5Y+W5b6X5Yiw55qE5byV55So5Lit5rKS5pyJ5ZCI5L215YuV5L2c55qE5YCZ6YG444CCIgorCisjOiBidWlsdGluL3B1bGwuYzo0MjkKK21zZ2lkICIiCisiR2VuZXJhbGx5IHRoaXMgbWVhbnMgdGhhdCB5b3UgcHJvdmlkZWQgYSB3aWxkY2FyZCByZWZzcGVjIHdoaWNoIGhhZCBub1xuIgorIm1hdGNoZXMgb24gdGhlIHJlbW90ZSBlbmQuIgorbXNnc3RyICLpgJrluLjpgJnmhI/lkbPokZfmgqjmj5DkvpvkuobkuIDokKznlKjlrZflhYPlvJXnlKjopo/moLzkvYbmnKrog73lkozpgaDnq6/nrKblkIjjgIIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGFza2VkIHRvIHB1bGwgZnJvbSB0aGUgcmVtb3RlICclcycsIGJ1dCBkaWQgbm90IHNwZWNpZnlcbiIKKyJhIGJyYW5jaC4gQmVjYXVzZSB0aGlzIGlzIG5vdCB0aGUgZGVmYXVsdCBjb25maWd1cmVkIHJlbW90ZVxuIgorImZvciB5b3VyIGN1cnJlbnQgYnJhbmNoLCB5b3UgbXVzdCBzcGVjaWZ5IGEgYnJhbmNoIG9uIHRoZSBjb21tYW5kIGxpbmUuIgorbXNnc3RyICIiCisi5oKo6KaB5rGC5b6e6YGg56uvICclcycg5ouJ5Y+W77yM5L2G5piv5pyq5oyH5a6a5LiA5YCL5YiG5pSv44CC5Zug54K66YCZ5LiN5piv55uu5YmNXG4iCisi5YiG5pSv6aCQ6Kit55qE6YGg56uv54mI5pys5bqr77yM5oKo5b+F6aCI5Zyo5oyH5Luk5YiX5Lit5oyH5a6a5LiA5YCL5YiG5pSv5ZCN44CCIgorCisjOiBidWlsdGluL3B1bGwuYzo0MzcgYnVpbHRpbi9yZWJhc2UuYzoxNDA5IGdpdC1wYXJzZS1yZW1vdGUuc2g6NzMKK21zZ2lkICJZb3UgYXJlIG5vdCBjdXJyZW50bHkgb24gYSBicmFuY2guIgorbXNnc3RyICLmgqjnm67liY3kuI3lnKjkuIDlgIvliIbmlK/kuIrjgIIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQzOSBidWlsdGluL3B1bGwuYzo0NTQgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3OQorbXNnaWQgIlBsZWFzZSBzcGVjaWZ5IHdoaWNoIGJyYW5jaCB5b3Ugd2FudCB0byByZWJhc2UgYWdhaW5zdC4iCittc2dzdHIgIuiri+aMh+WumuaCqOimgemHjeWumuWfuuW6leWIsOWTquS4gOWAi+WIhuaUr+OAgiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDQxIGJ1aWx0aW4vcHVsbC5jOjQ1NiBnaXQtcGFyc2UtcmVtb3RlLnNoOjgyCittc2dpZCAiUGxlYXNlIHNwZWNpZnkgd2hpY2ggYnJhbmNoIHlvdSB3YW50IHRvIG1lcmdlIHdpdGguIgorbXNnc3RyICLoq4vmjIflrprmgqjopoHlkIjkvbXlk6rkuIDlgIvliIbmlK/jgIIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0MiBidWlsdGluL3B1bGwuYzo0NTcKK21zZ2lkICJTZWUgZ2l0LXB1bGwoMSkgZm9yIGRldGFpbHMuIgorbXNnc3RyICLoqbPoposgZ2l0LXB1bGwoMSnjgIIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ0NCBidWlsdGluL3B1bGwuYzo0NTAgYnVpbHRpbi9wdWxsLmM6NDU5CisjOiBidWlsdGluL3JlYmFzZS5jOjE0MTUgZ2l0LXBhcnNlLXJlbW90ZS5zaDo2NAorbXNnaWQgIjxyZW1vdGU+IgorbXNnc3RyICI86YGg56uvPiIKKworIzogYnVpbHRpbi9wdWxsLmM6NDQ0IGJ1aWx0aW4vcHVsbC5jOjQ1OSBidWlsdGluL3B1bGwuYzo0NjQKKyM6IGdpdC1wYXJzZS1yZW1vdGUuc2g6NjUKK21zZ2lkICI8YnJhbmNoPiIKK21zZ3N0ciAiPOWIhuaUrz4iCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ1MiBidWlsdGluL3JlYmFzZS5jOjE0MDcgZ2l0LXBhcnNlLXJlbW90ZS5zaDo3NQorbXNnaWQgIlRoZXJlIGlzIG5vIHRyYWNraW5nIGluZm9ybWF0aW9uIGZvciB0aGUgY3VycmVudCBicmFuY2guIgorbXNnc3RyICLnm67liY3liIbmlK/mspLmnInov73ouaToqIrmga/jgIIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjQ2MSBnaXQtcGFyc2UtcmVtb3RlLnNoOjk1Cittc2dpZCAiIgorIklmIHlvdSB3aXNoIHRvIHNldCB0cmFja2luZyBpbmZvcm1hdGlvbiBmb3IgdGhpcyBicmFuY2ggeW91IGNhbiBkbyBzbyB3aXRoOiIKK21zZ3N0ciAi5aaC5p6c5oKo5oOz6KaB54K65q2k5YiG5pSv5bu656uL6L+96Lmk6KiK5oGv77yM5oKo5Y+v5Lul5Z+36KGM77yaIgorCisjOiBidWlsdGluL3B1bGwuYzo0NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIllvdXIgY29uZmlndXJhdGlvbiBzcGVjaWZpZXMgdG8gbWVyZ2Ugd2l0aCB0aGUgcmVmICclcydcbiIKKyJmcm9tIHRoZSByZW1vdGUsIGJ1dCBubyBzdWNoIHJlZiB3YXMgZmV0Y2hlZC4iCittc2dzdHIgIiIKKyLmgqjnmoToqK3lrprkuK3mjIflrpropoHlkIjkvbXpgaDnq6/nmoTlvJXnlKggJyVzJ++8jFxuIgorIuS9huaYr+aykuacieWPluW+l+WIsOmAmeWAi+W8leeUqOOAgiIKKworIzogYnVpbHRpbi9wdWxsLmM6NTc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgY29tbWl0ICVzIgorbXNnc3RyICLnhKHms5XlrZjlj5bmj5DkuqQgJXMiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjg1NworbXNnaWQgImlnbm9yaW5nIC0tdmVyaWZ5LXNpZ25hdHVyZXMgZm9yIHJlYmFzZSIKK21zZ3N0ciAi54K66YeN5a6a5Z+65bqV5YuV5L2c5b+955WlIC0tdmVyaWZ5LXNpZ25hdHVyZXMiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjkxMgorbXNnaWQgIi0tW25vLV1hdXRvc3Rhc2ggb3B0aW9uIGlzIG9ubHkgdmFsaWQgd2l0aCAtLXJlYmFzZS4iCittc2dzdHIgIi0tW25vLV1hdXRvc3Rhc2gg6YG46aCF5Y+q5Zyo5L2/55SoIC0tcmViYXNlIOaZguacieaViOOAgiIKKworIzogYnVpbHRpbi9wdWxsLmM6OTIwCittc2dpZCAiVXBkYXRpbmcgYW4gdW5ib3JuIGJyYW5jaCB3aXRoIGNoYW5nZXMgYWRkZWQgdG8gdGhlIGluZGV4LiIKK21zZ3N0ciAi5pu05paw5bCa5pyq6KqV55Sf55qE5YiG5pSv77yM6K6K5pu05paw5aKe6Iez57Si5byV44CCIgorCisjOiBidWlsdGluL3B1bGwuYzo5MjQKK21zZ2lkICJwdWxsIHdpdGggcmViYXNlIgorbXNnc3RyICLph43lrprln7rlupXlvI/mi4nlj5YiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjkyNQorbXNnaWQgInBsZWFzZSBjb21taXQgb3Igc3Rhc2ggdGhlbS4iCittc2dzdHIgIuiri+aPkOS6pOaIluWEsuiXj+Wug+WAkeOAgiIKKworIzogYnVpbHRpbi9wdWxsLmM6OTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmZXRjaCB1cGRhdGVkIHRoZSBjdXJyZW50IGJyYW5jaCBoZWFkLlxuIgorImZhc3QtZm9yd2FyZGluZyB5b3VyIHdvcmtpbmcgdHJlZSBmcm9tXG4iCisiY29tbWl0ICVzLiIKK21zZ3N0ciAiIgorImZldGNoIOabtOaWsOS6huebruWJjeeahOWIhuaUr+OAguW/q+i9ieaCqOeahOW3peS9nOWNgFxuIgorIuiHs+aPkOS6pCAlc+OAgiIKKworIzogYnVpbHRpbi9wdWxsLmM6OTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDYW5ub3QgZmFzdC1mb3J3YXJkIHlvdXIgd29ya2luZyB0cmVlLlxuIgorIkFmdGVyIG1ha2luZyBzdXJlIHRoYXQgeW91IHNhdmVkIGFueXRoaW5nIHByZWNpb3VzIGZyb21cbiIKKyIkIGdpdCBkaWZmICVzXG4iCisib3V0cHV0LCBydW5cbiIKKyIkIGdpdCByZXNldCAtLWhhcmRcbiIKKyJ0byByZWNvdmVyLiIKK21zZ3N0ciAiIgorIuaCqOebruWJjeeahOW3peS9nOWNgOeEoeazleWft+ihjOW/q+i9ieWLleS9nOOAglxuIgorIummluWFiOWft+ihjOWmguS4i+aMh+S7pO+8mlxuIgorIiQgZ2l0IGRpZmYgJXNcbiIKKyLku6Xnorroqo3miYDmnInmnInnlKjnmoTos4fmlpnlnYflt7LlhLLlrZjjgILnhLblvozln7fooYzkuIvpnaLnmoTmjIfku6RcbiIKKyIkIGdpdCByZXNldCAtLWhhcmRcbiIKKyLlvqnljp/kuYvliY3nmoTni4DmhYvjgIIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjk3MQorbXNnaWQgIkNhbm5vdCBtZXJnZSBtdWx0aXBsZSBicmFuY2hlcyBpbnRvIGVtcHR5IGhlYWQuIgorbXNnc3RyICLnhKHms5XlsIflpJrlgIvliIbmlK/lkIjkvbXliLDnqbrliIbmlK/jgIIiCisKKyM6IGJ1aWx0aW4vcHVsbC5jOjk3NQorbXNnaWQgIkNhbm5vdCByZWJhc2Ugb250byBtdWx0aXBsZSBicmFuY2hlcy4iCittc2dzdHIgIueEoeazlemHjeWumuWfuuW6leWIsOWkmuWAi+WIhuaUr+OAgiIKKworIzogYnVpbHRpbi9wdWxsLmM6OTgyCittc2dpZCAiY2Fubm90IHJlYmFzZSB3aXRoIGxvY2FsbHkgcmVjb3JkZWQgc3VibW9kdWxlIG1vZGlmaWNhdGlvbnMiCittc2dzdHIgIuacrOapn+WtkOaooee1hOS4reacieS/ruaUue+8jOeEoeazlemHjeWumuWfuuW6lSIKKworIzogYnVpbHRpbi9wdXNoLmM6MTkKK21zZ2lkICJnaXQgcHVzaCBbPG9wdGlvbnM+XSBbPHJlcG9zaXRvcnk+IFs8cmVmc3BlYz4uLi5dXSIKK21zZ3N0ciAiZ2l0IHB1c2ggWzzpgbjpoIU+XSBbPOeJiOacrOW6qz4gWzzlvJXnlKjopo/moLw+Li4uXV0iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjExMgorbXNnaWQgInRhZyBzaG9ydGhhbmQgd2l0aG91dCA8dGFnPiIKK21zZ3N0ciAi5qiZ57Gk5b6M6Z2i5pyq5o+Q5L6bIDzmqJnnsaQ+IOWPg+aVuCIKKworIzogYnVpbHRpbi9wdXNoLmM6MTIyCittc2dpZCAiLS1kZWxldGUgb25seSBhY2NlcHRzIHBsYWluIHRhcmdldCByZWYgbmFtZXMiCittc2dzdHIgIi0tZGVsZXRlIOWPquaOpeWPl+ewoeWWrueahOebruaomeW8leeUqOWQjSIKKworIzogYnVpbHRpbi9wdXNoLmM6MTY4Cittc2dpZCAiIgorIlxuIgorIlRvIGNob29zZSBlaXRoZXIgb3B0aW9uIHBlcm1hbmVudGx5LCBzZWUgcHVzaC5kZWZhdWx0IGluICdnaXQgaGVscCBjb25maWcnLiIKK21zZ3N0ciAiIgorIlxuIgorIueCuuS6huawuOS5heWcsOmBuOaTh+S7u+S4gOmBuOmghe+8jOWPg+imiyAnZ2l0IGhlbHAgY29uZmlnJyDkuK3nmoQgcHVzaC5kZWZhdWx044CCIgorCisjOiBidWlsdGluL3B1c2guYzoxNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSB1cHN0cmVhbSBicmFuY2ggb2YgeW91ciBjdXJyZW50IGJyYW5jaCBkb2VzIG5vdCBtYXRjaFxuIgorInRoZSBuYW1lIG9mIHlvdXIgY3VycmVudCBicmFuY2guICBUbyBwdXNoIHRvIHRoZSB1cHN0cmVhbSBicmFuY2hcbiIKKyJvbiB0aGUgcmVtb3RlLCB1c2VcbiIKKyJcbiIKKyIgICAgZ2l0IHB1c2ggJXMgSEVBRDolc1xuIgorIlxuIgorIlRvIHB1c2ggdG8gdGhlIGJyYW5jaCBvZiB0aGUgc2FtZSBuYW1lIG9uIHRoZSByZW1vdGUsIHVzZVxuIgorIlxuIgorIiAgICBnaXQgcHVzaCAlcyBIRUFEXG4iCisiJXMiCittc2dzdHIgIiIKKyLmgqjnm67liY3liIbmlK/nmoTkuIrmuLjliIbmlK/lkozmgqjnm67liY3liIbmlK/lkI3kuI3nrKblkIjvvIzngrrmjqjpgIHliLDpgaDnq6/nmoTkuIrmuLjliIbmlK/vvIxcbiIKKyLkvb/nlKhcbiIKKyJcbiIKKyIgICAgZ2l0IHB1c2ggJXMgSEVBRDolc1xuIgorIlxuIgorIueCuuaOqOmAgeiHs+mBoOerr+WQjOWQjeWIhuaUr++8jOS9v+eUqFxuIgorIlxuIgorIiAgICBnaXQgcHVzaCAlcyBIRUFEXG4iCisiJXMiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjE4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiWW91IGFyZSBub3QgY3VycmVudGx5IG9uIGEgYnJhbmNoLlxuIgorIlRvIHB1c2ggdGhlIGhpc3RvcnkgbGVhZGluZyB0byB0aGUgY3VycmVudCAoZGV0YWNoZWQgSEVBRClcbiIKKyJzdGF0ZSBub3csIHVzZVxuIgorIlxuIgorIiAgICBnaXQgcHVzaCAlcyBIRUFEOjxuYW1lLW9mLXJlbW90ZS1icmFuY2g+XG4iCittc2dzdHIgIiIKKyLmgqjnm67liY3kuI3lnKjkuIDlgIvliIbmlK/kuIrjgIJcbiIKKyLnj77lnKjngrrmjqjpgIHnm67liY3vvIjliIbpm6LplovpoK3mjIfmqJnvvInnmoTmrbflj7LvvIzkvb/nlKhcbiIKKyJcbiIKKyIgICAgZ2l0IHB1c2ggJXMgSEVBRDo86YGg56uv5YiG5pSv5ZCN5a2XPlxuIgorCisjOiBidWlsdGluL3B1c2guYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoZSBjdXJyZW50IGJyYW5jaCAlcyBoYXMgbm8gdXBzdHJlYW0gYnJhbmNoLlxuIgorIlRvIHB1c2ggdGhlIGN1cnJlbnQgYnJhbmNoIGFuZCBzZXQgdGhlIHJlbW90ZSBhcyB1cHN0cmVhbSwgdXNlXG4iCisiXG4iCisiICAgIGdpdCBwdXNoIC0tc2V0LXVwc3RyZWFtICVzICVzXG4iCittc2dzdHIgIiIKKyLnm67liY3liIbmlK8gJXMg5rKS5pyJ5bCN5oeJ55qE5LiK5ri45YiG5pSv44CCXG4iCisi54K65o6o6YCB55uu5YmN5YiG5pSv5Lim5bu656uL6IiH6YGg56uv5LiK5ri455qE6L+96Lmk77yM5L2/55SoXG4iCisiXG4iCisiICAgIGdpdCBwdXNoIC0tc2V0LXVwc3RyZWFtICVzICVzXG4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjIwOAorIywgYy1mb3JtYXQKK21zZ2lkICJUaGUgY3VycmVudCBicmFuY2ggJXMgaGFzIG11bHRpcGxlIHVwc3RyZWFtIGJyYW5jaGVzLCByZWZ1c2luZyB0byBwdXNoLiIKK21zZ3N0ciAi55uu5YmN5YiG5pSvICVzIOacieWkmuWAi+S4iua4uOWIhuaUr++8jOaLkue1leaOqOmAgeOAgiIKKworIzogYnVpbHRpbi9wdXNoLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgYXJlIHB1c2hpbmcgdG8gcmVtb3RlICclcycsIHdoaWNoIGlzIG5vdCB0aGUgdXBzdHJlYW0gb2ZcbiIKKyJ5b3VyIGN1cnJlbnQgYnJhbmNoICclcycsIHdpdGhvdXQgdGVsbGluZyBtZSB3aGF0IHRvIHB1c2hcbiIKKyJ0byB1cGRhdGUgd2hpY2ggcmVtb3RlIGJyYW5jaC4iCittc2dzdHIgIiIKKyLmgqjmraPmjqjpgIHoh7PpgaDnq68gJyVzJ++8iOWFtuS4pumdnuebruWJjeWIhuaUryAnJXMnIOeahOS4iua4uO+8ie+8jFxuIgorIuiAjOaykuacieWRiuiotOaIkeimgeaOqOmAgeS7gOm6vOOAgeabtOaWsOWTquWAi+mBoOerr+WIhuaUr+OAgiIKKworIzogYnVpbHRpbi9wdXNoLmM6MjcwCittc2dpZCAiIgorIllvdSBkaWRuJ3Qgc3BlY2lmeSBhbnkgcmVmc3BlY3MgdG8gcHVzaCwgYW5kIHB1c2guZGVmYXVsdCBpcyBcIm5vdGhpbmdcIi4iCittc2dzdHIgIuaCqOaykuacieeCuuaOqOmAgeaMh+WumuS7u+S9leW8leeUqOimj+agvO+8jOS4puS4lCBwdXNoLmRlZmF1bHQg54K6IFwibm90aGluZ1wi44CCIgorCisjOiBidWlsdGluL3B1c2guYzoyNzcKK21zZ2lkICIiCisiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHRpcCBvZiB5b3VyIGN1cnJlbnQgYnJhbmNoIGlzIGJlaGluZFxuIgorIml0cyByZW1vdGUgY291bnRlcnBhcnQuIEludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXMgKGUuZy5cbiIKKyInZ2l0IHB1bGwgLi4uJykgYmVmb3JlIHB1c2hpbmcgYWdhaW4uXG4iCisiU2VlIHRoZSAnTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzJyBpbiAnZ2l0IHB1c2ggLS1oZWxwJyBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKyLmm7TmlrDooqvmi5LntZXvvIzlm6Dngrrmgqjnm67liY3liIbmlK/nmoTmnIDmlrDmj5DkuqTokL3lvozmlrzlhbblsI3mh4nnmoTpgaDnq6/liIbmlK/jgIJcbiIKKyLlho3mrKHmjqjpgIHliY3vvIzlhYjoiIfpgaDnq6/orormm7TlkIjkvbXvvIjlpoIgJ2dpdCBwdWxsIC4uLifvvInjgILoqbPopotcbiIKKyInZ2l0IHB1c2ggLS1oZWxwJyDkuK3nmoQgJ05vdGUgYWJvdXQgZmFzdC1mb3J3YXJkcycg5bCP56+A44CCIgorCisjOiBidWlsdGluL3B1c2guYzoyODMKK21zZ2lkICIiCisiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgYSBwdXNoZWQgYnJhbmNoIHRpcCBpcyBiZWhpbmQgaXRzIHJlbW90ZVxuIgorImNvdW50ZXJwYXJ0LiBDaGVjayBvdXQgdGhpcyBicmFuY2ggYW5kIGludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXNcbiIKKyIoZS5nLiAnZ2l0IHB1bGwgLi4uJykgYmVmb3JlIHB1c2hpbmcgYWdhaW4uXG4iCisiU2VlIHRoZSAnTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzJyBpbiAnZ2l0IHB1c2ggLS1oZWxwJyBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKyLmm7TmlrDooqvmi5LntZXvvIzlm6DngrrmjqjpgIHnmoTkuIDlgIvliIbmlK/nmoTmnIDmlrDmj5DkuqTokL3lvozmlrzlhbblsI3mh4nnmoTpgaDnq6/liIbmlK/jgIJcbiIKKyLnsL3lh7roqbLliIbmlK/kuKbmlbTlkIjpgaDnq6/orormm7TvvIjlpoIgJ2dpdCBwdWxsIC4uLifvvInvvIznhLblvozlho3mjqjpgIHjgILoqbPopotcbiIKKyInZ2l0IHB1c2ggLS1oZWxwJyDkuK3nmoQgJ05vdGUgYWJvdXQgZmFzdC1mb3J3YXJkcycg5bCP56+A44CCIgorCisjOiBidWlsdGluL3B1c2guYzoyODkKK21zZ2lkICIiCisiVXBkYXRlcyB3ZXJlIHJlamVjdGVkIGJlY2F1c2UgdGhlIHJlbW90ZSBjb250YWlucyB3b3JrIHRoYXQgeW91IGRvXG4iCisibm90IGhhdmUgbG9jYWxseS4gVGhpcyBpcyB1c3VhbGx5IGNhdXNlZCBieSBhbm90aGVyIHJlcG9zaXRvcnkgcHVzaGluZ1xuIgorInRvIHRoZSBzYW1lIHJlZi4gWW91IG1heSB3YW50IHRvIGZpcnN0IGludGVncmF0ZSB0aGUgcmVtb3RlIGNoYW5nZXNcbiIKKyIoZS5nLiwgJ2dpdCBwdWxsIC4uLicpIGJlZm9yZSBwdXNoaW5nIGFnYWluLlxuIgorIlNlZSB0aGUgJ05vdGUgYWJvdXQgZmFzdC1mb3J3YXJkcycgaW4gJ2dpdCBwdXNoIC0taGVscCcgZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisi5Zug54K66YGg56uv54mI5pys5bqr5YyF5ZCr5oKo5pys5qmf5bCa5LiN5a2Y5Zyo55qE5o+Q5Lqk77yM6ICM5bCO6Ie05pu05paw6KKr5ouS57WV44CC6YCZ6YCa5bi45piv5Zug54K65Y+m5aSWXG4iCisi5LiA5YCL54mI5pys5bqr5bey5ZCR6Kmy5byV55So6YCy6KGM5LqG5o6o6YCB44CC5YaN5qyh5o6o6YCB5YmN77yM5oKo5Y+v6IO96ZyA6KaB5YWI5pW05ZCI6YGg56uv6K6K5pu0XG4iCisi77yI5aaCICdnaXQgcHVsbCAuLi4n77yJ44CCXG4iCisi6Kmz6KaLICdnaXQgcHVzaCAtLWhlbHAnIOS4reeahCAnTm90ZSBhYm91dCBmYXN0LWZvcndhcmRzJyDlsI/nr4DjgIIiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjI5NgorbXNnaWQgIlVwZGF0ZXMgd2VyZSByZWplY3RlZCBiZWNhdXNlIHRoZSB0YWcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIHJlbW90ZS4iCittc2dzdHIgIuabtOaWsOiiq+aLkue1le+8jOWboOeCuuipsuaomeexpOWcqOmBoOerr+W3sue2k+WtmOWcqOOAgiIKKworIzogYnVpbHRpbi9wdXNoLmM6Mjk5Cittc2dpZCAiIgorIllvdSBjYW5ub3QgdXBkYXRlIGEgcmVtb3RlIHJlZiB0aGF0IHBvaW50cyBhdCBhIG5vbi1jb21taXQgb2JqZWN0LFxuIgorIm9yIHVwZGF0ZSBhIHJlbW90ZSByZWYgdG8gbWFrZSBpdCBwb2ludCBhdCBhIG5vbi1jb21taXQgb2JqZWN0LFxuIgorIndpdGhvdXQgdXNpbmcgdGhlICctLWZvcmNlJyBvcHRpb24uXG4iCittc2dzdHIgIiIKKyLlpoLmnpzkuI3kvb/nlKggJy0tZm9yY2UnIOWPg+aVuO+8jOaCqOS4jeiDveabtOaWsOS4gOWAi+aMh+WQkemdnuaPkOS6pOeJqeS7tueahOmBoOerr+W8leeUqO+8jFxuIgorIuS5n+S4jeiDveabtOaWsOmBoOerr+W8leeUqOiuk+WFtuaMh+WQkeS4gOWAi+mdnuaPkOS6pOeJqeS7tuOAglxuIgorCisjOiBidWlsdGluL3B1c2guYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHVzaGluZyB0byAlc1xuIgorbXNnc3RyICLmjqjpgIHliLAgJXNcbiIKKworIzogYnVpbHRpbi9wdXNoLmM6MzY3CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBwdXNoIHNvbWUgcmVmcyB0byAnJXMnIgorbXNnc3RyICLmjqjpgIHkuIDkupvlvJXnlKjliLAgJyVzJyDlpLHmlZciCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU0MgorbXNnaWQgInJlcG9zaXRvcnkiCittc2dzdHIgIueJiOacrOW6qyIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQzIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY0Cittc2dpZCAicHVzaCBhbGwgcmVmcyIKK21zZ3N0ciAi5o6o6YCB5omA5pyJ5byV55SoIgorCisjOiBidWlsdGluL3B1c2guYzo1NDQgYnVpbHRpbi9zZW5kLXBhY2suYzoxNjYKK21zZ2lkICJtaXJyb3IgYWxsIHJlZnMiCittc2dzdHIgIumPoeWDj+aJgOacieW8leeUqCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ2Cittc2dpZCAiZGVsZXRlIHJlZnMiCittc2dzdHIgIuWIqumZpOW8leeUqCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTQ3Cittc2dpZCAicHVzaCB0YWdzIChjYW4ndCBiZSB1c2VkIHdpdGggLS1hbGwgb3IgLS1taXJyb3IpIgorbXNnc3RyICLmjqjpgIHmqJnnsaTvvIjkuI3og73kvb/nlKggLS1hbGwgb3IgLS1taXJyb3LvvIkiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1MCBidWlsdGluL3NlbmQtcGFjay5jOjE2NworbXNnaWQgImZvcmNlIHVwZGF0ZXMiCittc2dzdHIgIuW8t+WItuabtOaWsCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUyIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgxCittc2dpZCAiPHJlZm5hbWU+OjxleHBlY3Q+IgorbXNnc3RyICI85byV55So5ZCNPjo85pyf5pyb5YC8PiIKKworIzogYnVpbHRpbi9wdXNoLmM6NTUzIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTgyCittc2dpZCAicmVxdWlyZSBvbGQgdmFsdWUgb2YgcmVmIHRvIGJlIGF0IHRoaXMgdmFsdWUiCittc2dzdHIgIuimgeaxguW8leeUqOiIiueahOWPluWAvOeCuuioreWumuWAvCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU2Cittc2dpZCAiY29udHJvbCByZWN1cnNpdmUgcHVzaGluZyBvZiBzdWJtb2R1bGVzIgorbXNnc3RyICLmjqfliLblrZDmqKHntYTnmoTpgZ7ov7TmjqjpgIEiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU1OCBidWlsdGluL3NlbmQtcGFjay5jOjE3NQorbXNnaWQgInVzZSB0aGluIHBhY2siCittc2dzdHIgIuS9v+eUqOeyvuewoeaJk+WMhSIKKworIzogYnVpbHRpbi9wdXNoLmM6NTU5IGJ1aWx0aW4vcHVzaC5jOjU2MCBidWlsdGluL3NlbmQtcGFjay5jOjE2MQorIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNjIKK21zZ2lkICJyZWNlaXZlIHBhY2sgcHJvZ3JhbSIKK21zZ3N0ciAi5o6l5pS25YyF56iL5byPIgorCisjOiBidWlsdGluL3B1c2guYzo1NjEKK21zZ2lkICJzZXQgdXBzdHJlYW0gZm9yIGdpdCBwdWxsL3N0YXR1cyIKK21zZ3N0ciAi6Kit5a6aIGdpdCBwdWxsL3N0YXR1cyDnmoTkuIrmuLgiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2NAorbXNnaWQgInBydW5lIGxvY2FsbHkgcmVtb3ZlZCByZWZzIgorbXNnc3RyICLmuIXpmaTmnKzmqZ/liKrpmaTnmoTlvJXnlKgiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU2NgorbXNnaWQgImJ5cGFzcyBwcmUtcHVzaCBob29rIgorbXNnc3RyICLnuZ7pgY4gcHJlLXB1c2gg5o6b6YmkIgorCisjOiBidWlsdGluL3B1c2guYzo1NjcKK21zZ2lkICJwdXNoIG1pc3NpbmcgYnV0IHJlbGV2YW50IHRhZ3MiCittc2dzdHIgIuaOqOmAgee8uuWwkeS9huaciemXnOeahOaomeexpCIKKworIzogYnVpbHRpbi9wdXNoLmM6NTcwIGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTY5Cittc2dpZCAiR1BHIHNpZ24gdGhlIHB1c2giCittc2dzdHIgIueUqCBHUEcg54K65o6o6YCB57C95ZCNIgorCisjOiBidWlsdGluL3B1c2guYzo1NzIgYnVpbHRpbi9zZW5kLXBhY2suYzoxNzYKK21zZ2lkICJyZXF1ZXN0IGF0b21pYyB0cmFuc2FjdGlvbiBvbiByZW1vdGUgc2lkZSIKK21zZ3N0ciAi6ZyA6KaB6YGg56uv5pSv5o+05Y6f5a2Q5LqL5YuZIgorCisjOiBidWlsdGluL3B1c2guYzo1OTAKK21zZ2lkICItLWRlbGV0ZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1taXJyb3IgYW5kIC0tdGFncyIKK21zZ3N0ciAiLS1kZWxldGUg6IiHIC0tYWxs44CBLS1taXJyb3Ig5Y+KIC0tdGFncyDkuI3nm7jlrrkiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjU5MgorbXNnaWQgIi0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSB3aXRob3V0IGFueSByZWZzIgorbXNnc3RyICItLWRlbGV0ZSDmnKrmjqXku7vkvZXlvJXnlKjmspLmnInmhI/nvqkiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjYxMgorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgcmVwb3NpdG9yeSAnJXMnIgorbXNnc3RyICLlo57nmoTniYjmnKzluqsgJyVzJyIKKworIzogYnVpbHRpbi9wdXNoLmM6NjEzCittc2dpZCAiIgorIk5vIGNvbmZpZ3VyZWQgcHVzaCBkZXN0aW5hdGlvbi5cbiIKKyJFaXRoZXIgc3BlY2lmeSB0aGUgVVJMIGZyb20gdGhlIGNvbW1hbmQtbGluZSBvciBjb25maWd1cmUgYSByZW1vdGUgIgorInJlcG9zaXRvcnkgdXNpbmdcbiIKKyJcbiIKKyIgICAgZ2l0IHJlbW90ZSBhZGQgPG5hbWU+IDx1cmw+XG4iCisiXG4iCisiYW5kIHRoZW4gcHVzaCB1c2luZyB0aGUgcmVtb3RlIG5hbWVcbiIKKyJcbiIKKyIgICAgZ2l0IHB1c2ggPG5hbWU+XG4iCittc2dzdHIgIiIKKyLmspLmnInoqK3lrprmjqjpgIHnm67mqJnjgIJcbiIKKyLmiJbpgI/pgY7mjIfku6TliJfmjIflrpogVVJM77yM5oiW55So5LiL6Z2i5oyH5Luk6Kit5a6a5LiA5YCL6YGg56uv54mI5pys5bqrXG4iCisiXG4iCisiICAgIGdpdCByZW1vdGUgYWRkIDzlkI3nqLE+IDzkvY3lnYA+XG4iCisiXG4iCisi54S25b6M5L2/55So6Kmy6YGg56uv54mI5pys5bqr5ZCN5Z+36KGM5o6o6YCBXG4iCisiXG4iCisiICAgIGdpdCBwdXNoIDzlkI3nqLE+XG4iCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjYyOAorbXNnaWQgIi0tYWxsIGFuZCAtLXRhZ3MgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiLS1hbGwg5ZKMIC0tdGFncyDkuI3nm7jlrrkiCisKKyM6IGJ1aWx0aW4vcHVzaC5jOjYzMAorbXNnaWQgIi0tYWxsIGNhbid0IGJlIGNvbWJpbmVkIHdpdGggcmVmc3BlY3MiCittc2dzdHIgIi0tYWxsIOS4jeiDveWSjOW8leeUqOimj+agvOWQjOaZguS9v+eUqCIKKworIzogYnVpbHRpbi9wdXNoLmM6NjM0Cittc2dpZCAiLS1taXJyb3IgYW5kIC0tdGFncyBhcmUgaW5jb21wYXRpYmxlIgorbXNnc3RyICItLW1pcnJvciDlkowgLS10YWdzIOS4jeebuOWuuSIKKworIzogYnVpbHRpbi9wdXNoLmM6NjM2Cittc2dpZCAiLS1taXJyb3IgY2FuJ3QgYmUgY29tYmluZWQgd2l0aCByZWZzcGVjcyIKK21zZ3N0ciAiLS1taXJyb3Ig5LiN6IO95ZKM5byV55So6KaP5qC85ZCM5pmC5L2/55SoIgorCisjOiBidWlsdGluL3B1c2guYzo2MzkKK21zZ2lkICItLWFsbCBhbmQgLS1taXJyb3IgYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiLS1hbGwg5ZKMIC0tbWlycm9yIOS4jeebuOWuuSIKKworIzogYnVpbHRpbi9wdXNoLmM6NjQzCittc2dpZCAicHVzaCBvcHRpb25zIG11c3Qgbm90IGhhdmUgbmV3IGxpbmUgY2hhcmFjdGVycyIKK21zZ3N0ciAi5o6o6YCB6YG46aCF5LiN6IO95pyJ5o+b6KGM56ym6JmfIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo4Cittc2dpZCAiZ2l0IHJhbmdlLWRpZmYgWzxvcHRpb25zPl0gPG9sZC1iYXNlPi4uPG9sZC10aXA+IDxuZXctYmFzZT4uLjxuZXctdGlwPiIKK21zZ3N0ciAiZ2l0IHJhbmdlLWRpZmYgWzzpgbjpoIU+XSA8b2xkLWJhc2U+Li48b2xkLXRpcD4gPG5ldy1iYXNlPi4uPG5ldy10aXA+IgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzo5Cittc2dpZCAiZ2l0IHJhbmdlLWRpZmYgWzxvcHRpb25zPl0gPG9sZC10aXA+Li4uPG5ldy10aXA+IgorbXNnc3RyICJnaXQgcmFuZ2UtZGlmZiBbPOmBuOmghT5dIDxvbGQtdGlwPi4uLjxuZXctdGlwPiIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MTAKK21zZ2lkICJnaXQgcmFuZ2UtZGlmZiBbPG9wdGlvbnM+XSA8YmFzZT4gPG9sZC10aXA+IDxuZXctdGlwPiIKK21zZ3N0ciAiZ2l0IHJhbmdlLWRpZmYgWzzpgbjpoIU+XSA8YmFzZT4gPG9sZC10aXA+IDxuZXctdGlwPiIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6MjIKK21zZ2lkICJQZXJjZW50YWdlIGJ5IHdoaWNoIGNyZWF0aW9uIGlzIHdlaWdodGVkIgorbXNnc3RyICLlu7rnq4vmrIrph43nmoTnmb7liIbmr5QiCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI0Cittc2dpZCAidXNlIHNpbXBsZSBkaWZmIGNvbG9ycyIKK21zZ3N0ciAi5L2/55So57Ch5Zau5beu55Ww6aGP6ImyIgorCisjOiBidWlsdGluL3JhbmdlLWRpZmYuYzoyNgorbXNnaWQgIm5vdGVzIgorbXNnc3RyICLoqLvop6MiCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjI2Cittc2dpZCAicGFzc2VkIHRvICdnaXQgbG9nJyIKK21zZ3N0ciAi5YKz6YGe57WmICdnaXQgbG9nJyIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NTAgYnVpbHRpbi9yYW5nZS1kaWZmLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gLi4gaW4gcmFuZ2U6ICclcyciCittc2dzdHIgIuaykuacieWcqOevhOWcjeS4reS9v+eUqCAuLu+8miclcyciCisKKyM6IGJ1aWx0aW4vcmFuZ2UtZGlmZi5jOjY0Cittc2dpZCAic2luZ2xlIGFyZyBmb3JtYXQgbXVzdCBiZSBzeW1tZXRyaWMgcmFuZ2UiCittc2dzdHIgIuWWruWAi+WPg+aVuOagvOW8j+W/hemgiOaYr+WwjeeoseevhOWcje+8iOWNs+WMheWQqy4uLu+8iSIKKworIzogYnVpbHRpbi9yYW5nZS1kaWZmLmM6NzkKK21zZ2lkICJuZWVkIHR3byBjb21taXQgcmFuZ2VzIgorbXNnc3RyICLpnIDopoHlhanlgIvmj5DkuqTnr4TlnI0iCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6NDEKK21zZ2lkICIiCisiZ2l0IHJlYWQtdHJlZSBbKC1tIFstLXRyaXZpYWxdIFstLWFnZ3Jlc3NpdmVdIHwgLS1yZXNldCB8IC0tcHJlZml4PTxwcmVmaXg+KSAiCisiWy11IFstLWV4Y2x1ZGUtcGVyLWRpcmVjdG9yeT08Z2l0aWdub3JlPl0gfCAtaV1dIFstLW5vLXNwYXJzZS1jaGVja291dF0gWy0tIgorImluZGV4LW91dHB1dD08ZmlsZT5dICgtLWVtcHR5IHwgPHRyZWUtaXNoMT4gWzx0cmVlLWlzaDI+IFs8dHJlZS1pc2gzPl1dKSIKK21zZ3N0ciAiIgorImdpdCByZWFkLXRyZWUgWygtbSBbLS10cml2aWFsXSBbLS1hZ2dyZXNzaXZlXSB8IC0tcmVzZXQgfCAtLXByZWZpeD085YmN57a0PikgWy0iCisidSBbLS1leGNsdWRlLXBlci1kaXJlY3Rvcnk9PGdpdGlnbm9yZT5dIHwgLWldXSBbLS1uby1zcGFyc2UtY2hlY2tvdXRdIFstLSIKKyJpbmRleC1vdXRwdXQ9POaqlOahiD5dICgtLWVtcHR5IHwgPOaoueeLgOeJqeS7tjE+IFs85qi554uA54mp5Lu2Mj4gWzzmqLnni4Dnianku7YzPl1dKSIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjQKK21zZ2lkICJ3cml0ZSByZXN1bHRpbmcgaW5kZXggdG8gPGZpbGU+IgorbXNnc3RyICLlsIfntKLlvJXntZDmnpzlr6vlhaUgPOaqlOahiD4iCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTI3Cittc2dpZCAib25seSBlbXB0eSB0aGUgaW5kZXgiCittc2dzdHIgIuWPquaYr+a4heepuue0ouW8lSIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMjkKK21zZ2lkICJNZXJnaW5nIgorbXNnc3RyICLlkIjkvbUiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTMxCittc2dpZCAicGVyZm9ybSBhIG1lcmdlIGluIGFkZGl0aW9uIHRvIGEgcmVhZCIKK21zZ3N0ciAi6K6A5Y+W5LmL6aSY5YaN5Z+36KGM5LiA5YCL5ZCI5L21IgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzMworbXNnaWQgIjMtd2F5IG1lcmdlIGlmIG5vIGZpbGUgbGV2ZWwgbWVyZ2luZyByZXF1aXJlZCIKK21zZ3N0ciAi5aaC5p6c5rKS5pyJ5qqU5qGI57Sa5ZCI5L216ZyA6KaB77yM5Z+36KGM5LiJ5pa55ZCI5L21IgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjEzNQorbXNnaWQgIjMtd2F5IG1lcmdlIGluIHByZXNlbmNlIG9mIGFkZHMgYW5kIHJlbW92ZXMiCittc2dzdHIgIuWtmOWcqOaWsOWinuWSjOWIqumZpOaZgu+8jOS5n+Wft+ihjOS4ieaWueWQiOS9tSIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxMzcKK21zZ2lkICJzYW1lIGFzIC1tLCBidXQgZGlzY2FyZCB1bm1lcmdlZCBlbnRyaWVzIgorbXNnc3RyICLpoZ7kvLzmlrwgLW3vvIzkvYbmjajmo4TmnKrlkIjkvbXnmoTmop3nm64iCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM4Cittc2dpZCAiPHN1YmRpcmVjdG9yeT4vIgorbXNnc3RyICI85a2Q55uu6YyEPi8iCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTM5Cittc2dpZCAicmVhZCB0aGUgdHJlZSBpbnRvIHRoZSBpbmRleCB1bmRlciA8c3ViZGlyZWN0b3J5Pi8iCittc2dzdHIgIuiugOWPluaoueeLgOeJqeS7tuWIsOe0ouW8leeahCA85a2Q55uu6YyEPi8g5LiLIgorCisjOiBidWlsdGluL3JlYWQtdHJlZS5jOjE0MgorbXNnaWQgInVwZGF0ZSB3b3JraW5nIHRyZWUgd2l0aCBtZXJnZSByZXN1bHQiCittc2dzdHIgIueUqOWQiOS9teeahOe1kOaenOabtOaWsOW3peS9nOWNgCIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDQKK21zZ2lkICJnaXRpZ25vcmUiCittc2dzdHIgImdpdGlnbm9yZSIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDUKK21zZ2lkICJhbGxvdyBleHBsaWNpdGx5IGlnbm9yZWQgZmlsZXMgdG8gYmUgb3ZlcndyaXR0ZW4iCittc2dzdHIgIuWFgeioseW/veeVpeaqlOahiOS4reioreWumueahOaqlOahiOWPr+S7peiiq+imhuiTiyIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDgKK21zZ2lkICJkb24ndCBjaGVjayB0aGUgd29ya2luZyB0cmVlIGFmdGVyIG1lcmdpbmciCittc2dzdHIgIuWQiOS9teW+jOS4jeaqouafpeW3peS9nOWNgCIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNDkKK21zZ2lkICJkb24ndCB1cGRhdGUgdGhlIGluZGV4IG9yIHRoZSB3b3JrIHRyZWUiCittc2dzdHIgIuS4jeabtOaWsOe0ouW8leWNgOWSjOW3peS9nOWNgCIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTEKK21zZ2lkICJza2lwIGFwcGx5aW5nIHNwYXJzZSBjaGVja291dCBmaWx0ZXIiCittc2dzdHIgIui3s+mBjuaHieeUqOeogOeWj+ewveWHuumBjua/vuWZqCIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxNTMKK21zZ2lkICJkZWJ1ZyB1bnBhY2stdHJlZXMiCittc2dzdHIgIumZpOmMryB1bnBhY2stdHJlZXMiCisKKyM6IGJ1aWx0aW4vcmVhZC10cmVlLmM6MTU3Cittc2dpZCAic3VwcHJlc3MgZmVlZGJhY2sgbWVzc2FnZXMiCittc2dzdHIgIuaKkeWItuWbnumli+ioiuaBryIKKworIzogYnVpbHRpbi9yZWFkLXRyZWUuYzoxODgKK21zZ2lkICJZb3UgbmVlZCB0byByZXNvbHZlIHlvdXIgY3VycmVudCBpbmRleCBmaXJzdCIKK21zZ3N0ciAi5oKo6ZyA6KaB5YWI6Kej5rG655uu5YmN57Si5byV55qE6KGd56qBIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjMyCittc2dpZCAiIgorImdpdCByZWJhc2UgWy1pXSBbb3B0aW9uc10gWy0tZXhlYyA8Y21kPl0gWy0tb250byA8bmV3YmFzZT4gfCAtLWtlZXAtYmFzZV0gIgorIls8dXBzdHJlYW0+IFs8YnJhbmNoPl1dIgorbXNnc3RyICIiCisiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDzmjIfku6Q+XSBbLS1vbnRvIDzmlrDln7rnpI4+IHwgLS1rZWVwLWJhc2VdIFs8IgorIuS4iua4uD4gWzzliIbmlK8+XV0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzQKK21zZ2lkICIiCisiZ2l0IHJlYmFzZSBbLWldIFtvcHRpb25zXSBbLS1leGVjIDxjbWQ+XSBbLS1vbnRvIDxuZXdiYXNlPl0gLS1yb290IFs8YnJhbmNoPl0iCittc2dzdHIgIiIKKyJnaXQgcmViYXNlIFstaV0gW+mBuOmghV0gWy0tZXhlYyA85oyH5LukPl0gWy0tb250byA85paw5Z+656SOPl0gLS1yb290IFs85YiG5pSvPl0iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzYKK21zZ2lkICJnaXQgcmViYXNlIC0tY29udGludWUgfCAtLWFib3J0IHwgLS1za2lwIHwgLS1lZGl0LXRvZG8iCittc2dzdHIgImdpdCByZWJhc2UgLS1jb250aW51ZSB8IC0tYWJvcnQgfCAtLXNraXAgfCAtLWVkaXQtdG9kbyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzUgYnVpbHRpbi9yZWJhc2UuYzoxOTkgYnVpbHRpbi9yZWJhc2UuYzoyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW51c2FibGUgdG9kbyBsaXN0OiAnJXMnIgorbXNnc3RyICLkuI3lj6/nlKjnmoTlvoXovqbliJfooajvvJonJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAlcyIKK21zZ3N0ciAi54Sh5rOV5bu656uL5pqr5pmC55qEICVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjI5OAorbXNnaWQgImNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgorbXNnc3RyICLnhKHms5XmqJnoqJjngrrkupLli5XlvI8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MzUyCittc2dpZCAiY291bGQgbm90IGdlbmVyYXRlIHRvZG8gbGlzdCIKK21zZ3N0ciAi54Sh5rOV55Sf5oiQ5b6F6L6m5YiX6KGoIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjM5MQorbXNnaWQgImEgYmFzZSBjb21taXQgbXVzdCBiZSBwcm92aWRlZCB3aXRoIC0tdXBzdHJlYW0gb3IgLS1vbnRvIgorbXNnc3RyICLkvb/nlKggLS11cHN0cmVhbSDmiJYgLS1vbnRvIOW/hemgiOaPkOS+m+S4gOWAi+WfuuekjuaPkOS6pCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NjEKK21zZ2lkICJnaXQgcmViYXNlLS1pbnRlcmFjdGl2ZSBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHJlYmFzZS0taW50ZXJhY3RpdmUgWzzpgbjpoIU+XSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0NzQgYnVpbHRpbi9yZWJhc2UuYzoxNTUwCittc2dpZCAiKERFUFJFQ0FURUQpIGtlZXAgZW1wdHkgY29tbWl0cyIKK21zZ3N0ciAiKOajhOeUqCkg5L+d5oyB56m65o+Q5LqkIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ3OCBidWlsdGluL3JldmVydC5jOjEyOAorbXNnaWQgImFsbG93IGNvbW1pdHMgd2l0aCBlbXB0eSBtZXNzYWdlcyIKK21zZ3N0ciAi5YWB6Kix5o+Q5Lqk6Kqq5piO54K656m6IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4MAorbXNnaWQgInJlYmFzZSBtZXJnZSBjb21taXRzIgorbXNnc3RyICLlsI3lkIjkvbXmj5DkuqTph43lrprln7rlupUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDgyCittc2dpZCAia2VlcCBvcmlnaW5hbCBicmFuY2ggcG9pbnRzIG9mIGNvdXNpbnMiCittc2dzdHIgIuS/neaMgeWFhOW8n+aPkOS6pOeahOWOn+Wni+WIhuaUr+m7niIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0ODQKK21zZ2lkICJtb3ZlIGNvbW1pdHMgdGhhdCBiZWdpbiB3aXRoIHNxdWFzaCEvZml4dXAhIgorbXNnc3RyICLnp7vli5Xku6Ugc3F1YXNoIS9maXh1cCEg6ZaL6aCt55qE5o+Q5LqkIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4NQorbXNnaWQgInNpZ24gY29tbWl0cyIKK21zZ3N0ciAi57C95ZCN5o+Q5LqkIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjQ4NyBidWlsdGluL3JlYmFzZS5jOjE0OTAKK21zZ2lkICJkaXNwbGF5IGEgZGlmZnN0YXQgb2Ygd2hhdCBjaGFuZ2VkIHVwc3RyZWFtIgorbXNnc3RyICLpoa/npLrkuIrmuLjororljJbnmoTlt67nlbDntbHoqIgiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDg5Cittc2dpZCAiY29udGludWUgcmViYXNlIgorbXNnc3RyICLnubznuozph43lrprln7rlupUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDkxCittc2dpZCAic2tpcCBjb21taXQiCittc2dzdHIgIui3s+mBjuaPkOS6pCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTIKK21zZ2lkICJlZGl0IHRoZSB0b2RvIGxpc3QiCittc2dzdHIgIumHjeWumuWfuuW6leW+hei+puWIl+ihqCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTQKK21zZ2lkICJzaG93IHRoZSBjdXJyZW50IHBhdGNoIgorbXNnc3RyICLpoa/npLrnm67liY3kv67oo5zmqpQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NDk3Cittc2dpZCAic2hvcnRlbiBjb21taXQgaWRzIGluIHRoZSB0b2RvIGxpc3QiCittc2dzdHIgIue4ruefreW+hei+puWIl+ihqOS4reeahOaPkOS6pOiZnyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo0OTkKK21zZ2lkICJleHBhbmQgY29tbWl0IGlkcyBpbiB0aGUgdG9kbyBsaXN0IgorbXNnc3RyICLmk7TlsZXlvoXovqbliJfooajkuK3nmoTmj5DkuqTomZ8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTAxCittc2dpZCAiY2hlY2sgdGhlIHRvZG8gbGlzdCIKK21zZ3N0ciAi5qqi5p+l5b6F6L6m5YiX6KGoIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwMworbXNnaWQgInJlYXJyYW5nZSBmaXh1cC9zcXVhc2ggbGluZXMiCittc2dzdHIgIumHjeaWsOaOkuWIlyBmaXh1cC9zcXVhc2gg6KGMIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwNQorbXNnaWQgImluc2VydCBleGVjIGNvbW1hbmRzIGluIHRvZG8gbGlzdCIKK21zZ3N0ciAi5Zyo5b6F6L6m5YiX6KGo5Lit5o+S5YWlIGV4ZWMg5Z+36KGM5oyH5LukIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwNgorbXNnaWQgIm9udG8iCittc2dzdHIgIm9udG8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTA5Cittc2dpZCAicmVzdHJpY3QtcmV2aXNpb24iCittc2dzdHIgInJlc3RyaWN0LXJldmlzaW9uIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUwOQorbXNnaWQgInJlc3RyaWN0IHJldmlzaW9uIgorbXNnc3RyICLpmZDliLbniYjmnKwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTExCittc2dpZCAic3F1YXNoLW9udG8iCittc2dzdHIgInNxdWFzaC1vbnRvIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUxMgorbXNnaWQgInNxdWFzaCBvbnRvIgorbXNnc3RyICJzcXVhc2ggb250byIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MTQKK21zZ2lkICJ0aGUgdXBzdHJlYW0gY29tbWl0IgorbXNnc3RyICLkuIrmuLjmj5DkuqQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTE2Cittc2dpZCAiaGVhZC1uYW1lIgorbXNnc3RyICJoZWFkLW5hbWUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6NTE2Cittc2dpZCAiaGVhZCBuYW1lIgorbXNnc3RyICJoZWFkIOWQjeeosSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjEKK21zZ2lkICJyZWJhc2Ugc3RyYXRlZ3kiCittc2dzdHIgIumHjeWumuWfuuW6leetlueVpSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjIKK21zZ2lkICJzdHJhdGVneS1vcHRzIgorbXNnc3RyICJzdHJhdGVneS1vcHRzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyMworbXNnaWQgInN0cmF0ZWd5IG9wdGlvbnMiCittc2dzdHIgIuetlueVpemBuOmghSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjQKK21zZ2lkICJzd2l0Y2gtdG8iCittc2dzdHIgIuWIh+aPm+WIsCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1MjUKK21zZ2lkICJ0aGUgYnJhbmNoIG9yIGNvbW1pdCB0byBjaGVja291dCIKK21zZ3N0ciAi6KaB57C95Ye655qE5YiG5pSv5oiW5o+Q5LqkIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNgorbXNnaWQgIm9udG8tbmFtZSIKK21zZ3N0ciAib250by1uYW1lIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNgorbXNnaWQgIm9udG8gbmFtZSIKK21zZ3N0ciAib250byBuYW1lIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNworbXNnaWQgImNtZCIKK21zZ3N0ciAiY21kIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUyNworbXNnaWQgInRoZSBjb21tYW5kIHRvIHJ1biIKK21zZ3N0ciAi6KaB5Z+36KGM55qE5oyH5LukIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjUzMCBidWlsdGluL3JlYmFzZS5jOjE1ODQKK21zZ2lkICJhdXRvbWF0aWNhbGx5IHJlLXNjaGVkdWxlIGFueSBgZXhlY2AgdGhhdCBmYWlscyIKK21zZ3N0ciAi6Ieq5YuV6YeN5paw5a6J5o6S5Lu75L2V5aSx5pWX55qEIGBleGVjYCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo1NDYKK21zZ2lkICItLVtuby1dcmViYXNlLWNvdXNpbnMgaGFzIG5vIGVmZmVjdCB3aXRob3V0IC0tcmViYXNlLW1lcmdlcyIKK21zZ3N0ciAi5LiN5L2/55SoIC0tcmViYXNlLW1lcmdlc++8jOWJhyAtLVtuby1dcmViYXNlLWNvdXNpbnMg5rKS5pyJ5pWI5p6cIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjU2MgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZXF1aXJlcyBhbiBpbnRlcmFjdGl2ZSByZWJhc2UiCittc2dzdHIgIiVzIOmcgOimgeS6kuWLleW8j+mHjeWumuWfuuW6lSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo2MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGdldCAnb250byc6ICclcyciCittc2dzdHIgIueEoeazleWPluW+lyAnb250byfvvJonJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjYyNworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG9yaWctaGVhZDogJyVzJyIKK21zZ3N0ciAi54Sh5pWI55qE5Y6f5aeLIGhlYWTvvJonJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjY1MgorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBpbnZhbGlkIGFsbG93X3JlcmVyZV9hdXRvdXBkYXRlOiAnJXMnIgorbXNnc3RyICLlv73nlaXnhKHmlYjnmoQgYWxsb3dfcmVyZXJlX2F1dG91cGRhdGXvvJonJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjcyOAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcmVhZCAnJXMnIgorbXNnc3RyICLkuI3og73oroDlj5YgJyVzJyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzo3NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN0b3JlICVzIgorbXNnc3RyICLkuI3og73lhLLlrZggJXMiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6ODUzCittc2dpZCAiY291bGQgbm90IGRldGVybWluZSBIRUFEIHJldmlzaW9uIgorbXNnc3RyICLkuI3og73norrlrpogSEVBRCDniYjmnKwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6OTc2IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MQorbXNnaWQgIiIKKyJSZXNvbHZlIGFsbCBjb25mbGljdHMgbWFudWFsbHksIG1hcmsgdGhlbSBhcyByZXNvbHZlZCB3aXRoXG4iCisiXCJnaXQgYWRkL3JtIDxjb25mbGljdGVkX2ZpbGVzPlwiLCB0aGVuIHJ1biBcImdpdCByZWJhc2UgLS1jb250aW51ZVwiLlxuIgorIllvdSBjYW4gaW5zdGVhZCBza2lwIHRoaXMgY29tbWl0OiBydW4gXCJnaXQgcmViYXNlIC0tc2tpcFwiLlxuIgorIlRvIGFib3J0IGFuZCBnZXQgYmFjayB0byB0aGUgc3RhdGUgYmVmb3JlIFwiZ2l0IHJlYmFzZVwiLCBydW4gXCJnaXQgcmViYXNlIC0tIgorImFib3J0XCIuIgorbXNnc3RyICIiCisi5omL5YuV6Kej5rG65omA5pyJ6KGd56qB77yM5Z+36KGMIFwiZ2l0IGFkZC9ybSA86KGd56qB55qE5qqU5qGIPlwiIOaomeiomFxuIgorIuihneeqgeW3suino+axuu+8jOeEtuW+jOWft+ihjCBcImdpdCByZWJhc2UgLS1jb250aW51ZVwi44CC5oKo5Lmf5Y+v5Lul5Z+36KGMXG4iCisiXCJnaXQgcmViYXNlIC0tc2tpcFwiIOaMh+S7pOi3s+mBjumAmeWAi+aPkOS6pOOAguWmguaenOaDs+imgee1guatouWft+ihjOS4puWbnuWIsFxuIgorIlwiZ2l0IHJlYmFzZVwiIOWft+ihjOS5i+WJjeeahOeLgOaFi++8jOWft+ihjCBcImdpdCByZWJhc2UgLS1hYm9ydFwi44CCIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorImdpdCBlbmNvdW50ZXJlZCBhbiBlcnJvciB3aGlsZSBwcmVwYXJpbmcgdGhlIHBhdGNoZXMgdG8gcmVwbGF5XG4iCisidGhlc2UgcmV2aXNpb25zOlxuIgorIlxuIgorIiAgICAlc1xuIgorIlxuIgorIkFzIGEgcmVzdWx0LCBnaXQgY2Fubm90IHJlYmFzZSB0aGVtLiIKK21zZ3N0ciAiIgorIlxuIgorIuWcqOeCuumHjeaUvumAmeS6m+eJiOacrOiAjOa6luWCmeS/ruijnOaqlOaZgu+8jGdpdCDpgYfliLDkuobkuIDlgIvpjK/oqqTvvJpcbiIKKyJcbiIKKyIgICAgJXNcbiIKKyJcbiIKKyLlm6DmraQgZ2l0IOeEoeazleWwjeWFtumHjeWumuWfuuW6leOAgiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxMzgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bnJlY29nbml6ZWQgZW1wdHkgdHlwZSAnJXMnOyB2YWxpZCB2YWx1ZXMgYXJlIFwiZHJvcFwiLCBcImtlZXBcIiwgYW5kIFwiYXNrIgorIlwiLiIKK21zZ3N0ciAi54Sh5rOV6K2Y5Yil55qEICclcycg56m66aGe5Z6L77yb5pyJ5pWI55qE5pW45YC85pyJIFwiZHJvcFwi44CBXCJrZWVwXCIg6LefIFwiYXNrXCLjgIIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXNcbiIKKyJQbGVhc2Ugc3BlY2lmeSB3aGljaCBicmFuY2ggeW91IHdhbnQgdG8gcmViYXNlIGFnYWluc3QuXG4iCisiU2VlIGdpdC1yZWJhc2UoMSkgZm9yIGRldGFpbHMuXG4iCisiXG4iCisiICAgIGdpdCByZWJhc2UgJzxicmFuY2g+J1xuIgorIlxuIgorbXNnc3RyICIiCisiJXNcbiIKKyLoq4vmjIflrprmgqjopoHph43lrprln7rlupXliLDlk6rlgIvliIbmlK/jgIJcbiIKKyLoqbPoposgZ2l0LXJlYmFzZSgxKeOAglxuIgorIlxuIgorIiAgICBnaXQgcmViYXNlICc8YnJhbmNoPidcbiIKKyJcbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJJZiB5b3Ugd2lzaCB0byBzZXQgdHJhY2tpbmcgaW5mb3JtYXRpb24gZm9yIHRoaXMgYnJhbmNoIHlvdSBjYW4gZG8gc28gd2l0aDpcbiIKKyJcbiIKKyIgICAgZ2l0IGJyYW5jaCAtLXNldC11cHN0cmVhbS10bz0lcy88YnJhbmNoPiAlc1xuIgorIlxuIgorbXNnc3RyICIiCisi5aaC5p6c5oKo5oOz6KaB54K65q2k5YiG5pSv5bu656uL6L+96Lmk6KiK5oGv77yM5oKo5Y+v5Lul5Z+36KGM77yaXG4iCisiXG4iCisiICAgIGdpdCBicmFuY2ggLS1zZXQtdXBzdHJlYW0tdG89JXMvPGJyYW5jaD4gJXNcbiIKKyJcbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDQ3Cittc2dpZCAiZXhlYyBjb21tYW5kcyBjYW5ub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiZXhlYyDmjIfku6TkuI3og73ljIXlkKvmj5vooYznrKbomZ8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ1MQorbXNnaWQgImVtcHR5IGV4ZWMgY29tbWFuZCIKK21zZ3N0ciAi56m655qEIGV4ZWMg5oyH5LukIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODEKK21zZ2lkICJyZWJhc2Ugb250byBnaXZlbiBicmFuY2ggaW5zdGVhZCBvZiB1cHN0cmVhbSIKK21zZ3N0ciAi6YeN5a6a5Z+65bqV5Yiw5o+Q5L6b55qE5YiG5pSv6ICM6Z2e5LiK5ri4IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0ODMKK21zZ2lkICJ1c2UgdGhlIG1lcmdlLWJhc2Ugb2YgdXBzdHJlYW0gYW5kIGJyYW5jaCBhcyB0aGUgY3VycmVudCBiYXNlIgorbXNnc3RyICLkvb/nlKjkuIrmuLjlkozliIbmlK/nmoTlkIjkvbXln7rnpI7lgZrngrrnm67liY3ln7rnpI4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTQ4NQorbXNnaWQgImFsbG93IHByZS1yZWJhc2UgaG9vayB0byBydW4iCittc2dzdHIgIuWFgeioseWft+ihjCBwcmUtcmViYXNlIOaOm+mJpCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDg3Cittc2dpZCAiYmUgcXVpZXQuIGltcGxpZXMgLS1uby1zdGF0IgorbXNnc3RyICLlronpnZzjgILmmpfnpLogLS1uby1zdGF0IgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE0OTMKK21zZ2lkICJkbyBub3Qgc2hvdyBkaWZmc3RhdCBvZiB3aGF0IGNoYW5nZWQgdXBzdHJlYW0iCittc2dzdHIgIuS4jemhr+ekuuS4iua4uOiuiuWMlueahOW3rueVsOe1seioiCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDk2Cittc2dpZCAiYWRkIGEgU2lnbmVkLW9mZi1ieTogbGluZSB0byBlYWNoIGNvbW1pdCIKK21zZ3N0ciAi54K65q+P5LiA5YCL5o+Q5Lqk5paw5aKe5LiA5YCLIFNpZ25lZC1vZmYtYnk6IOewveWQjSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNDk4IGJ1aWx0aW4vcmViYXNlLmM6MTUwMiBidWlsdGluL3JlYmFzZS5jOjE1MDQKK21zZ2lkICJwYXNzZWQgdG8gJ2dpdCBhbSciCittc2dzdHIgIuWCs+mBnue1piAnZ2l0IGFtJyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTA2IGJ1aWx0aW4vcmViYXNlLmM6MTUwOAorbXNnaWQgInBhc3NlZCB0byAnZ2l0IGFwcGx5JyIKK21zZ3N0ciAi5YKz6YGe57WmICdnaXQgYXBwbHknIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MTAgYnVpbHRpbi9yZWJhc2UuYzoxNTEzCittc2dpZCAiY2hlcnJ5LXBpY2sgYWxsIGNvbW1pdHMsIGV2ZW4gaWYgdW5jaGFuZ2VkIgorbXNnc3RyICLmj4DpgbjmiYDmnInmj5DkuqTvvIzljbPkvb/mnKrkv67mlLkiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxNQorbXNnaWQgImNvbnRpbnVlIgorbXNnc3RyICLnubznuowiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUxOAorbXNnaWQgInNraXAgY3VycmVudCBwYXRjaCBhbmQgY29udGludWUiCittc2dzdHIgIui3s+mBjuebruWJjeS/ruijnOaqlOS4pue5vOe6jCIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjAKK21zZ2lkICJhYm9ydCBhbmQgY2hlY2sgb3V0IHRoZSBvcmlnaW5hbCBicmFuY2giCittc2dzdHIgIue1guatouS4puewveWHuuWOn+acieWIhuaUryIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTIzCittc2dpZCAiYWJvcnQgYnV0IGtlZXAgSEVBRCB3aGVyZSBpdCBpcyIKK21zZ3N0ciAi57WC5q2i5L2G5L+d5oyBIEhFQUQg5LiN6K6KIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjQKK21zZ2lkICJlZGl0IHRoZSB0b2RvIGxpc3QgZHVyaW5nIGFuIGludGVyYWN0aXZlIHJlYmFzZSIKK21zZ3N0ciAi5Zyo5LqS5YuV5byP6YeN5a6a5Z+65bqV5Lit57eo6Lyv5b6F6L6m5YiX6KGoIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MjcKK21zZ2lkICJzaG93IHRoZSBwYXRjaCBmaWxlIGJlaW5nIGFwcGxpZWQgb3IgbWVyZ2VkIgorbXNnc3RyICLpoa/npLrmraPlnKjlpZfnlKjmiJblkIjkvbXnmoTkv67oo5zmqpTmoYgiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTUzMAorbXNnaWQgInVzZSBhcHBseSBzdHJhdGVnaWVzIHRvIHJlYmFzZSIKK21zZ3N0ciAi5L2/55So5aWX55So562W55Wl6YCy6KGM6YeN5a6a5Z+65bqVIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzQKK21zZ2lkICJ1c2UgbWVyZ2luZyBzdHJhdGVnaWVzIHRvIHJlYmFzZSIKK21zZ3N0ciAi5L2/55So5ZCI5L21562W55Wl6YCy6KGM6YeN5a6a5Z+65bqVIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1MzgKK21zZ2lkICJsZXQgdGhlIHVzZXIgZWRpdCB0aGUgbGlzdCBvZiBjb21taXRzIHRvIHJlYmFzZSIKK21zZ3N0ciAi6K6T5L2/55So6ICF57eo6Lyv6KaB6YeN5a6a5Z+65bqV55qE5o+Q5Lqk5YiX6KGoIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NDIKK21zZ2lkICIoREVQUkVDQVRFRCkgdHJ5IHRvIHJlY3JlYXRlIG1lcmdlcyBpbnN0ZWFkIG9mIGlnbm9yaW5nIHRoZW0iCittc2dzdHIgIu+8iOW3suajhOeUqO+8ieWYl+ippumHjeW7uuWQiOS9teaPkOS6pOiAjOmdnuW/veeVpeWug+WAkSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTQ3Cittc2dpZCAiaG93IHRvIGhhbmRsZSBjb21taXRzIHRoYXQgYmVjb21lIGVtcHR5IgorbXNnc3RyICLomZXnkIbnqbrnmb3mj5DkuqTnmoTmlrnlvI8iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU1NAorbXNnaWQgIm1vdmUgY29tbWl0cyB0aGF0IGJlZ2luIHdpdGggc3F1YXNoIS9maXh1cCEgdW5kZXIgLWkiCittc2dzdHIgIuWcqCAtaSDkupLli5XmqKHlvI/kuIvvvIznp7vli5Xku6Ugc3F1YXNoIS9maXh1cCEg6ZaL6aCt55qE5o+Q5LqkIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NjAKK21zZ2lkICJhdXRvbWF0aWNhbGx5IHN0YXNoL3N0YXNoIHBvcCBiZWZvcmUgYW5kIGFmdGVyIgorbXNnc3RyICLlnKjli5XkvZzliY3lvozln7fooYzoh6rli5XlhLLol4/lkozlvYjlh7rlhLLol48iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU2MgorbXNnaWQgImFkZCBleGVjIGxpbmVzIGFmdGVyIGVhY2ggY29tbWl0IG9mIHRoZSBlZGl0YWJsZSBsaXN0IgorbXNnc3RyICLlj6/nt6jovK/liJfooajnmoTmr4/kuIDlgIvmj5DkuqTkuIvpnaLlop7liqDkuIDooYwgZXhlYyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTY2Cittc2dpZCAiYWxsb3cgcmViYXNpbmcgY29tbWl0cyB3aXRoIGVtcHR5IG1lc3NhZ2VzIgorbXNnc3RyICLlhYHoqLHph53lsI3nqbrmj5DkuqToqqrmmI7nmoTmj5DkuqTph43lrprln7rlupUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTU3MAorbXNnaWQgInRyeSB0byByZWJhc2UgbWVyZ2VzIGluc3RlYWQgb2Ygc2tpcHBpbmcgdGhlbSIKK21zZ3N0ciAi5ZiX6Kmm5bCN5ZCI5L215o+Q5Lqk6YeN5a6a5Z+65bqV6ICM5LiN5piv5b+955Wl5a6D5YCRIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzMKK21zZ2lkICJ1c2UgJ21lcmdlLWJhc2UgLS1mb3JrLXBvaW50JyB0byByZWZpbmUgdXBzdHJlYW0iCittc2dzdHIgIuS9v+eUqCAnbWVyZ2UtYmFzZSAtLWZvcmstcG9pbnQnIOS+huacgOS9s+WMluS4iua4uCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTc1Cittc2dpZCAidXNlIHRoZSBnaXZlbiBtZXJnZSBzdHJhdGVneSIKK21zZ3N0ciAi5L2/55So5o+Q5L6b55qE5ZCI5L21562W55WlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1NzcgYnVpbHRpbi9yZXZlcnQuYzoxMTUKK21zZ2lkICJvcHRpb24iCittc2dzdHIgIumBuOmghSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTc4Cittc2dpZCAicGFzcyB0aGUgYXJndW1lbnQgdGhyb3VnaCB0byB0aGUgbWVyZ2Ugc3RyYXRlZ3kiCittc2dzdHIgIuWwh+WPg+aVuOWCs+mBnue1puWQiOS9teetlueVpSIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNTgxCittc2dpZCAicmViYXNlIGFsbCByZWFjaGFibGUgY29tbWl0cyB1cCB0byB0aGUgcm9vdChzKSIKK21zZ3N0ciAi5bCH5omA5pyJ5Y+v5Lul5Y+W5b6X55qE5o+Q5Lqk6YeN5a6a5Z+65bqV5Yiw5qC55o+Q5LqkIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE1OTgKK21zZ2lkICIiCisidGhlIHJlYmFzZS51c2VCdWlsdGluIHN1cHBvcnQgaGFzIGJlZW4gcmVtb3ZlZCFcbiIKKyJTZWUgaXRzIGVudHJ5IGluICdnaXQgaGVscCBjb25maWcnIGZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorIuWwjSByZWJhc2UudXNlQnVpbHRpbiDnmoTmlK/mj7Tlt7LooqvliKrpmaTvvIFcbiIKKyLoqbPoposgJ2dpdCBoZWxwIGNvbmZpZycg5Lit55qE5qKd55uu44CCIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2MDQKK21zZ2lkICJJdCBsb29rcyBsaWtlICdnaXQgYW0nIGlzIGluIHByb2dyZXNzLiBDYW5ub3QgcmViYXNlLiIKK21zZ3N0ciAi55yL6LW35L6GICdnaXQtYW0nIOato+WcqOWft+ihjOS4reOAgueEoeazlemHjeWumuWfuuW6leOAgiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjQ1Cittc2dpZCAiIgorImdpdCByZWJhc2UgLS1wcmVzZXJ2ZS1tZXJnZXMgaXMgZGVwcmVjYXRlZC4gVXNlIC0tcmViYXNlLW1lcmdlcyBpbnN0ZWFkLiIKK21zZ3N0ciAiZ2l0IHJlYmFzZSAtLXByZXNlcnZlLW1lcmdlcyDooqvmo4TnlKjjgILnlKggLS1yZWJhc2UtbWVyZ2VzIOS7o+abv+OAgiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjUwCittc2dpZCAiY2Fubm90IGNvbWJpbmUgJy0ta2VlcC1iYXNlJyB3aXRoICctLW9udG8nIgorbXNnc3RyICLkuI3og73lsIcgJy0ta2VlcC1iYXNlJyDlkowgJy0tb250bycg57WE5ZCI5L2/55SoIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2NTIKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1rZWVwLWJhc2UnIHdpdGggJy0tcm9vdCciCittc2dzdHIgIuS4jeiDveWwhyAnLS1rZWVwLWJhc2UnIOWSjCAnLS1yb290JyDntYTlkIjkvb/nlKgiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTY1NgorbXNnaWQgIk5vIHJlYmFzZSBpbiBwcm9ncmVzcz8iCittc2dzdHIgIuaykuacieato+WcqOmAsuihjOeahOmHjeWumuWfuuW6le+8nyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjYwCittc2dpZCAiVGhlIC0tZWRpdC10b2RvIGFjdGlvbiBjYW4gb25seSBiZSB1c2VkIGR1cmluZyBpbnRlcmFjdGl2ZSByZWJhc2UuIgorbXNnc3RyICLli5XkvZwgLS1lZGl0LXRvZG8g5Y+q6IO955So5Zyo5LqS5YuV5byP6YeN5a6a5Z+65bqV6YGO56iL5Lit44CCIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE2ODMKK21zZ2lkICJDYW5ub3QgcmVhZCBIRUFEIgorbXNnc3RyICLkuI3og73oroDlj5YgSEVBRCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNjk1Cittc2dpZCAiIgorIllvdSBtdXN0IGVkaXQgYWxsIG1lcmdlIGNvbmZsaWN0cyBhbmQgdGhlblxuIgorIm1hcmsgdGhlbSBhcyByZXNvbHZlZCB1c2luZyBnaXQgYWRkIgorbXNnc3RyICIiCisi5oKo5b+F6aCI57eo6Lyv5omA5pyJ55qE5ZCI5L216KGd56qB77yM54S25b6M6YCP6YGOIGdpdCBhZGRcbiIKKyLmjIfku6TlsIflroPlgJHmqJnoqJjngrrlt7Lop6PmsboiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTcxNAorbXNnaWQgImNvdWxkIG5vdCBkaXNjYXJkIHdvcmt0cmVlIGNoYW5nZXMiCittc2dzdHIgIueEoeazleaNqOajhOW3peS9nOWNgOiuiuabtCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBtb3ZlIGJhY2sgdG8gJXMiCittc2dzdHIgIueEoeazleenu+WbniAlcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxNzc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJJdCBzZWVtcyB0aGF0IHRoZXJlIGlzIGFscmVhZHkgYSAlcyBkaXJlY3RvcnksIGFuZFxuIgorIkkgd29uZGVyIGlmIHlvdSBhcmUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIHJlYmFzZS4gIElmIHRoYXQgaXMgdGhlXG4iCisiY2FzZSwgcGxlYXNlIHRyeVxuIgorIlx0JXNcbiIKKyJJZiB0aGF0IGlzIG5vdCB0aGUgY2FzZSwgcGxlYXNlXG4iCisiXHQlc1xuIgorImFuZCBydW4gbWUgYWdhaW4uICBJIGFtIHN0b3BwaW5nIGluIGNhc2UgeW91IHN0aWxsIGhhdmUgc29tZXRoaW5nXG4iCisidmFsdWFibGUgdGhlcmUuXG4iCittc2dzdHIgIiIKKyLkvLzkuY7lt7LmnInkuIDlgIsgJXMg55uu6YyE77yM5oiR5oe355aR5oKo5q2j6JmV5pa85Y+m5aSW5LiA5YCL6YeN5a6a5Z+65bqV5YuV5L2c6YGO56iL5Lit44CCXG4iCisi5aaC5p6c5piv6YCZ5qij77yM6KuL5Z+36KGMXG4iCisiXHQlc1xuIgorIuWmguaenOS4jeaYr+mAmeaoo++8jOiri+Wft+ihjFxuIgorIlx0JXNcbiIKKyLnhLblvozlho3ph43mlrDln7fooYzjgIIg54K66YG/5YWN6YG65aSx6YeN6KaB6LOH5paZ77yM5oiR5bey57aT5YGc5q2i55uu5YmN5YuV5L2c44CCXG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTgwNgorbXNnaWQgInN3aXRjaCBgQycgZXhwZWN0cyBhIG51bWVyaWNhbCB2YWx1ZSIKK21zZ3N0ciAi6ZaL6ZecIGBDJyDmnJ/mnJvkuIDlgIvmlbjlrZflgLwiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg0NworIywgYy1mb3JtYXQKK21zZ2lkICJVbmtub3duIG1vZGU6ICVzIgorbXNnc3RyICLmnKrnn6XmqKHlvI/vvJolcyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxODY5Cittc2dpZCAiLS1zdHJhdGVneSByZXF1aXJlcyAtLW1lcmdlIG9yIC0taW50ZXJhY3RpdmUiCittc2dzdHIgIi0tc3RyYXRlZ3kg6ZyA6KaBIC0tbWVyZ2Ug5oiWIC0taW50ZXJhY3RpdmUiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTg5OQorbXNnaWQgImNhbm5vdCBjb21iaW5lIGFwcGx5IG9wdGlvbnMgd2l0aCBtZXJnZSBvcHRpb25zIgorbXNnc3RyICLkuI3og73lsIcgYXBwbHkg5aWX55So6YG46aCF6IiHIG1lcmdlIOWQiOS9temBuOmgheS4gOi1t+S9v+eUqCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlVua25vd24gcmViYXNlIGJhY2tlbmQ6ICVzIgorbXNnc3RyICLmnKrnn6UgcmViYXNlIOW+jOerr++8miVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5MzcKK21zZ2lkICItLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWMgcmVxdWlyZXMgLS1leGVjIG9yIC0taW50ZXJhY3RpdmUiCittc2dzdHIgIi0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYyDpnIDopoEgLS1leGVjIOaIliAtLWludGVyYWN0aXZlIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjE5NTcKK21zZ2lkICJjYW5ub3QgY29tYmluZSAnLS1wcmVzZXJ2ZS1tZXJnZXMnIHdpdGggJy0tcmViYXNlLW1lcmdlcyciCittc2dzdHIgIuS4jeiDveWwhyAnLS1wcmVzZXJ2ZS1tZXJnZXMnIOWSjCAnLS1yZWJhc2UtbWVyZ2VzJyDlkIzmmYLkvb/nlKgiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk2MQorbXNnaWQgIiIKKyJlcnJvcjogY2Fubm90IGNvbWJpbmUgJy0tcHJlc2VydmUtbWVyZ2VzJyB3aXRoICctLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWMnIgorbXNnc3RyICIiCisi6Yyv6Kqk77ya5LiN6IO95bCHICctLXByZXNlcnZlLW1lcmdlcycg5ZKMICctLXJlc2NoZWR1bGUtZmFpbGVkLWV4ZWMnIOWQjOaZguS9v+eUqCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoxOTg1CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdXBzdHJlYW0gJyVzJyIKK21zZ3N0ciAi54Sh5pWI55qE5LiK5ri4ICclcyciCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MTk5MQorbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgbmV3IHJvb3QgY29tbWl0IgorbXNnc3RyICLkuI3og73lu7rnq4vmlrDnmoTmoLnmj5DkuqQiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAxNworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnOiBuZWVkIGV4YWN0bHkgb25lIG1lcmdlIGJhc2Ugd2l0aCBicmFuY2giCittc2dzdHIgIiclcyfvvJrlj6rpnIDopoHoiIfliIbmlK/nmoTkuIDlgIvlkIjkvbXln7rnpI4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAyMAorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnOiBuZWVkIGV4YWN0bHkgb25lIG1lcmdlIGJhc2UiCittc2dzdHIgIiclcyfvvJrlj6rpnIDopoHkuIDlgIvlkIjkvbXln7rnpI4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjAyOAorIywgYy1mb3JtYXQKK21zZ2lkICJEb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIGNvbW1pdCAnJXMnIgorbXNnc3RyICLmspLmnInmjIflkJHkuIDlgIvmnInmlYjnmoTmj5DkuqQgJyVzJyIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMDU0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhdGFsOiBubyBzdWNoIGJyYW5jaC9jb21taXQgJyVzJyIKK21zZ3N0ciAi6Ie05ZG96Yyv6Kqk77ya54Sh5q2k5YiG5pSvL+aPkOS6pCAnJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwNjIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQwCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk5MAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBzdWNoIHJlZjogJXMiCittc2dzdHIgIuaykuaciemAmeaoo+eahOW8leeUqO+8miVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIwNzMKK21zZ2lkICJDb3VsZCBub3QgcmVzb2x2ZSBIRUFEIHRvIGEgcmV2aXNpb24iCittc2dzdHIgIueEoeazleWwhyBIRUFEIOino+aekOeCuuS4gOWAi+eJiOacrCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTExCittc2dpZCAiQ2Fubm90IGF1dG9zdGFzaCIKK21zZ3N0ciAi54Sh5rOVIGF1dG9zdGFzaCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVuZXhwZWN0ZWQgc3Rhc2ggcmVzcG9uc2U6ICclcyciCittc2dzdHIgIuaEj+WklueahCBzdGFzaCDlm57mh4nvvJonJXMnIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnkgZm9yICclcyciCittc2dzdHIgIuS4jeiDveeCuiAnJXMnIOW7uueri+ebrumMhCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNyZWF0ZWQgYXV0b3N0YXNoOiAlc1xuIgorbXNnc3RyICLlu7rnq4vkuoYgYXV0b3N0YXNo77yaJXNcbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTI2Cittc2dpZCAiY291bGQgbm90IHJlc2V0IC0taGFyZCIKK21zZ3N0ciAi54Sh5rOVIHJlc2V0IC0taGFyZCIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTM1Cittc2dpZCAiUGxlYXNlIGNvbW1pdCBvciBzdGFzaCB0aGVtLiIKK21zZ3N0ciAi6KuL5o+Q5Lqk5oiW5YSy6JeP5L+u5pS544CCIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN3aXRjaCB0byAlcyIKK21zZ3N0ciAi54Sh5rOV5YiH5o+b5YiwICVzIgorCisjOiBidWlsdGluL3JlYmFzZS5jOjIxODAKK21zZ2lkICJIRUFEIGlzIHVwIHRvIGRhdGUuIgorbXNnc3RyICJIRUFEIOaYr+acgOaWsOeahOOAgiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgYnJhbmNoICVzIGlzIHVwIHRvIGRhdGUuXG4iCittc2dzdHIgIuebruWJjeWIhuaUryAlcyDmmK/mnIDmlrDnmoTjgIJcbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMTkwCittc2dpZCAiSEVBRCBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLiIKK21zZ3N0ciAiSEVBRCDmmK/mnIDmlrDnmoTvvIzlvLfliLbph43lrprln7rlupXjgIIiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50IGJyYW5jaCAlcyBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkLlxuIgorbXNnc3RyICLnm67liY3liIbmlK8gJXMg5piv5pyA5paw55qE77yM5by35Yi26YeN5a6a5Z+65bqV44CCXG4iCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjIwMAorbXNnaWQgIlRoZSBwcmUtcmViYXNlIGhvb2sgcmVmdXNlZCB0byByZWJhc2UuIgorbXNnc3RyICJwcmUtcmViYXNlIOaOm+mJpOaLkue1leS6humHjeWumuWfuuW6leWLleS9nOOAgiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNoYW5nZXMgdG8gJXM6XG4iCittc2dzdHIgIuWIsCAlcyDnmoTorormm7TvvJpcbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjEwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNoYW5nZXMgZnJvbSAlcyB0byAlczpcbiIKK21zZ3N0ciAi5b6eICVzIOWIsCAlcyDnmoTorormm7TvvJpcbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIkZpcnN0LCByZXdpbmRpbmcgaGVhZCB0byByZXBsYXkgeW91ciB3b3JrIG9uIHRvcCBvZiBpdC4uLlxuIgorbXNnc3RyICLpppblhYjvvIzpgoTljp/plovpoK3mjIfmqJnku6Xkvr/lnKjlhbbkuIrph43mlL7mgqjnmoTlt6XkvZwuLi5cbiIKKworIzogYnVpbHRpbi9yZWJhc2UuYzoyMjQ0Cittc2dpZCAiQ291bGQgbm90IGRldGFjaCBIRUFEIgorbXNnc3RyICLnhKHms5XliIbpm6LplovpoK3mjIfmqJkiCisKKyM6IGJ1aWx0aW4vcmViYXNlLmM6MjI1MworIywgYy1mb3JtYXQKK21zZ2lkICJGYXN0LWZvcndhcmRlZCAlcyB0byAlcy5cbiIKK21zZ3N0ciAi5b+r6L2JICVzIOWIsCAlc+OAglxuIgorCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjMzCittc2dpZCAiZ2l0IHJlY2VpdmUtcGFjayA8Z2l0LWRpcj4iCittc2dzdHIgImdpdCByZWNlaXZlLXBhY2sgPOeJiOacrOW6q+ebrumMhD4iCisKKyM6IGJ1aWx0aW4vcmVjZWl2ZS1wYWNrLmM6ODIxCittc2dpZCAiIgorIkJ5IGRlZmF1bHQsIHVwZGF0aW5nIHRoZSBjdXJyZW50IGJyYW5jaCBpbiBhIG5vbi1iYXJlIHJlcG9zaXRvcnlcbiIKKyJpcyBkZW5pZWQsIGJlY2F1c2UgaXQgd2lsbCBtYWtlIHRoZSBpbmRleCBhbmQgd29yayB0cmVlIGluY29uc2lzdGVudFxuIgorIndpdGggd2hhdCB5b3UgcHVzaGVkLCBhbmQgd2lsbCByZXF1aXJlICdnaXQgcmVzZXQgLS1oYXJkJyB0byBtYXRjaFxuIgorInRoZSB3b3JrIHRyZWUgdG8gSEVBRC5cbiIKKyJcbiIKKyJZb3UgY2FuIHNldCB0aGUgJ3JlY2VpdmUuZGVueUN1cnJlbnRCcmFuY2gnIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVcbiIKKyJ0byAnaWdub3JlJyBvciAnd2FybicgaW4gdGhlIHJlbW90ZSByZXBvc2l0b3J5IHRvIGFsbG93IHB1c2hpbmcgaW50b1xuIgorIml0cyBjdXJyZW50IGJyYW5jaDsgaG93ZXZlciwgdGhpcyBpcyBub3QgcmVjb21tZW5kZWQgdW5sZXNzIHlvdVxuIgorImFycmFuZ2VkIHRvIHVwZGF0ZSBpdHMgd29yayB0cmVlIHRvIG1hdGNoIHdoYXQgeW91IHB1c2hlZCBpbiBzb21lXG4iCisib3RoZXIgd2F5LlxuIgorIlxuIgorIlRvIHNxdWVsY2ggdGhpcyBtZXNzYWdlIGFuZCBzdGlsbCBrZWVwIHRoZSBkZWZhdWx0IGJlaGF2aW91ciwgc2V0XG4iCisiJ3JlY2VpdmUuZGVueUN1cnJlbnRCcmFuY2gnIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgdG8gJ3JlZnVzZScuIgorbXNnc3RyICIiCisi6aCQ6Kit56aB5q2i5pu05paw6Z2e57SU54mI5pys5bqr55qE55uu5YmN5YiG5pSv77yM5Zug54K65oKo5o6o6YCB55qE5YWn5a655bCH5bCO6Ie057Si5byV5ZKM5bel5L2c5Y2AXG4iCisi5LiN5LiA6Ie077yM5Lim5LiU5bCH6ZyA6KaB5Z+36KGMICdnaXQgcmVzZXQgLS1oYXJkJyDlsIflt6XkvZzljYDnrKblkIjliLAgSEVBROOAglxuIgorIlxuIgorIuaCqOWPr+S7peWcqOmBoOerr+eJiOacrOW6q+S4reioreWumiAncmVjZWl2ZS5kZW55Q3VycmVudEJyYW5jaCcg6Kit5a6a6K6K5pW454K6XG4iCisiJ2lnbm9yZScg5oiWICd3YXJuJyDku6XlhYHoqLHmjqjpgIHliLDnm67liY3liIbmlK/jgILnhLbogIzkuI3mjqjolqbpgJnpurzlgZrvvIzpmaTpnZ7mgqhcbiIKKyLnlKjmn5DnqK7mlrnlvI/lsIflhbblt6XkvZzljYDmm7TmlrDoh7PmgqjmjqjpgIHnmoTni4DmhYvjgIJcbiIKKyJcbiIKKyLoi6XopoHlsIHpjpbmraToqIrmga/kuJTkv53mjIHpoJDoqK3ooYzngrrvvIzoqK3lrpogJ3JlY2VpdmUuZGVueUN1cnJlbnRCcmFuY2gnXG4iCisi6Kit5a6a6K6K5pW454K6ICdyZWZ1c2Un44CCIgorCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjg0MQorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBkZWxldGluZyB0aGUgY3VycmVudCBicmFuY2ggaXMgZGVuaWVkLCBiZWNhdXNlIHRoZSBuZXh0XG4iCisiJ2dpdCBjbG9uZScgd29uJ3QgcmVzdWx0IGluIGFueSBmaWxlIGNoZWNrZWQgb3V0LCBjYXVzaW5nIGNvbmZ1c2lvbi5cbiIKKyJcbiIKKyJZb3UgY2FuIHNldCAncmVjZWl2ZS5kZW55RGVsZXRlQ3VycmVudCcgY29uZmlndXJhdGlvbiB2YXJpYWJsZSB0b1xuIgorIid3YXJuJyBvciAnaWdub3JlJyBpbiB0aGUgcmVtb3RlIHJlcG9zaXRvcnkgdG8gYWxsb3cgZGVsZXRpbmcgdGhlXG4iCisiY3VycmVudCBicmFuY2gsIHdpdGggb3Igd2l0aG91dCBhIHdhcm5pbmcgbWVzc2FnZS5cbiIKKyJcbiIKKyJUbyBzcXVlbGNoIHRoaXMgbWVzc2FnZSwgeW91IGNhbiBzZXQgaXQgdG8gJ3JlZnVzZScuIgorbXNnc3RyICIiCisi6aCQ6Kit56aB5q2i5Yiq6Zmk55uu5YmN5YiG5pSv77yM5Zug54K65LiL5LiA5qyhICdnaXQgY2xvbmUnIOWwh+S4jeacg+ewveWHuuS7u+S9leaqlOahiO+8jFxuIgorIuWwjuiHtOWbsOaDkeOAglxuIgorIlxuIgorIuaCqOWPr+S7peWcqOmBoOerr+eJiOacrOW6q+S4reioreWumiAncmVjZWl2ZS5kZW55RGVsZXRlQ3VycmVudCcg6Kit5a6a6K6K5pW454K6XG4iCisiJ3dhcm4n77yI6aGv56S66K2m5ZGK6KiK5oGv77yJ5oiWICdpZ25vcmUn77yI5b+955Wl6K2m5ZGK6KiK5oGv77yJ5Lul5YWB6Kix5Yiq6Zmk55uu5YmN5YiG5pSv44CCXG4iCisiXG4iCisi6Iul6KaB5bCB6Y6W5q2k6KiK5oGv77yM5oKo5Y+v5Lul6Kit5a6a5a6D54K6ICdyZWZ1c2Un44CCIgorCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5MzgKK21zZ2lkICJxdWlldCIKK21zZ3N0ciAi6Z2c6buY5qih5byPIgorCisjOiBidWlsdGluL3JlY2VpdmUtcGFjay5jOjE5NTIKK21zZ2lkICJZb3UgbXVzdCBzcGVjaWZ5IGEgZGlyZWN0b3J5LiIKK21zZ3N0ciAi5oKo5b+F6aCI5oyH5a6a5LiA5YCL55uu6YyE44CCIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjE3Cittc2dpZCAiIgorImdpdCByZWZsb2cgZXhwaXJlIFstLWV4cGlyZT08dGltZT5dIFstLWV4cGlyZS11bnJlYWNoYWJsZT08dGltZT5dIFstLSIKKyJyZXdyaXRlXSBbLS11cGRhdGVyZWZdIFstLXN0YWxlLWZpeF0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSBbLS1hbGxdICIKKyI8cmVmcz4uLi4iCittc2dzdHIgIiIKKyJnaXQgcmVmbG9nIGV4cGlyZSBbLS1leHBpcmU9POaZgumWkz5dIFstLWV4cGlyZS11bnJlYWNoYWJsZT085pmC6ZaTPl0gWy0tIgorInJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tc3RhbGUtZml4XSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdIFstLWFsbF0gPOW8lSIKKyLnlKg+Li4uIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjIyCittc2dpZCAiIgorImdpdCByZWZsb2cgZGVsZXRlIFstLXJld3JpdGVdIFstLXVwZGF0ZXJlZl0gWy0tZHJ5LXJ1biB8IC1uXSBbLS12ZXJib3NlXSAiCisiPHJlZnM+Li4uIgorbXNnc3RyICIiCisiZ2l0IHJlZmxvZyBkZWxldGUgWy0tcmV3cml0ZV0gWy0tdXBkYXRlcmVmXSBbLS1kcnktcnVuIHwgLW5dIFstLXZlcmJvc2VdIDzlvJUiCisi55SoPi4uLiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzoyNQorbXNnaWQgImdpdCByZWZsb2cgZXhpc3RzIDxyZWY+IgorbXNnc3RyICJnaXQgcmVmbG9nIGV4aXN0cyA85byV55SoPiIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo1NjggYnVpbHRpbi9yZWZsb2cuYzo1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0aW1lc3RhbXAiCittc2dzdHIgIiclcycg5LiN5piv5LiA5YCL5pyJ5pWI55qE5pmC6ZaT5oizIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjYwNgorIywgYy1mb3JtYXQKK21zZ2lkICJNYXJraW5nIHJlYWNoYWJsZSBvYmplY3RzLi4uIgorbXNnc3RyICLmraPlnKjmqJnoqJjlj6/ku6Xlj5blvpfnianku7YuLi4iCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBvaW50cyBub3doZXJlISIKK21zZ3N0ciAiJXMg5oyH5ZCR5LiN5a2Y5Zyo77yBIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjY5NgorbXNnaWQgIm5vIHJlZmxvZyBzcGVjaWZpZWQgdG8gZGVsZXRlIgorbXNnc3RyICLmnKrmjIflrpropoHliKrpmaTnmoTlvJXnlKjml6XoqowiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCBhIHJlZmxvZzogJXMiCittc2dzdHIgIuS4jeaYr+S4gOWAi+W8leeUqOaXpeiqjO+8miVzIgorCisjOiBidWlsdGluL3JlZmxvZy5jOjcxMAorIywgYy1mb3JtYXQKK21zZ2lkICJubyByZWZsb2cgZm9yICclcyciCittc2dzdHIgIuaykuaciSAnJXMnIOeahOW8leeUqOaXpeiqjCIKKworIzogYnVpbHRpbi9yZWZsb2cuYzo3NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCByZWYgZm9ybWF0OiAlcyIKK21zZ3N0ciAi54Sh5pWI55qE5byV55So5qC85byP77yaJXMiCisKKyM6IGJ1aWx0aW4vcmVmbG9nLmM6NzY1Cittc2dpZCAiZ2l0IHJlZmxvZyBbIHNob3cgfCBleHBpcmUgfCBkZWxldGUgfCBleGlzdHMgXSIKK21zZ3N0ciAiZ2l0IHJlZmxvZyBbIHNob3cgfCBleHBpcmUgfCBkZWxldGUgfCBleGlzdHMgXSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNworbXNnaWQgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE4Cittc2dpZCAiIgorImdpdCByZW1vdGUgYWRkIFstdCA8YnJhbmNoPl0gWy1tIDxtYXN0ZXI+XSBbLWZdIFstLXRhZ3MgfCAtLW5vLXRhZ3NdIFstLSIKKyJtaXJyb3I9PGZldGNofHB1c2g+XSA8bmFtZT4gPHVybD4iCittc2dzdHIgIiIKKyJnaXQgcmVtb3RlIGFkZCBbLXQgPOWIhuaUrz5dIFstbSA8bWFzdGVyPl0gWy1mXSBbLS10YWdzIHwgLS1uby10YWdzXSBbLS0iCisibWlycm9yPTxmZXRjaHxwdXNoPl0gPOWQjeeosT4gPOS9jeWdgD4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTkgYnVpbHRpbi9yZW1vdGUuYzozOQorbXNnaWQgImdpdCByZW1vdGUgcmVuYW1lIDxvbGQ+IDxuZXc+IgorbXNnc3RyICJnaXQgcmVtb3RlIHJlbmFtZSA86IiK5ZCN56ixPiA85paw5ZCN56ixPiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyMCBidWlsdGluL3JlbW90ZS5jOjQ0Cittc2dpZCAiZ2l0IHJlbW90ZSByZW1vdmUgPG5hbWU+IgorbXNnc3RyICJnaXQgcmVtb3RlIHJlbW92ZSA85ZCN56ixPiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyMSBidWlsdGluL3JlbW90ZS5jOjQ5Cittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtaGVhZCA8bmFtZT4gKC1hIHwgLS1hdXRvIHwgLWQgfCAtLWRlbGV0ZSB8IDxicmFuY2g+KSIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtaGVhZCA85ZCN56ixPiAoLWEgfCAtLWF1dG8gfCAtZCB8IC0tZGVsZXRlIHwgPOWIhuaUrz4pIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjIyCittc2dpZCAiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHNob3cgWy1uXSA8bmFtZT4iCittc2dzdHIgImdpdCByZW1vdGUgWy12IHwgLS12ZXJib3NlXSBzaG93IFstbl0gPOWQjeeosT4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjMKK21zZ2lkICJnaXQgcmVtb3RlIHBydW5lIFstbiB8IC0tZHJ5LXJ1bl0gPG5hbWU+IgorbXNnc3RyICJnaXQgcmVtb3RlIHBydW5lIFstbiB8IC0tZHJ5LXJ1bl0gPOWQjeeosT4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjQKK21zZ2lkICIiCisiZ2l0IHJlbW90ZSBbLXYgfCAtLXZlcmJvc2VdIHVwZGF0ZSBbLXAgfCAtLXBydW5lXSBbKDxncm91cD4gfCA8cmVtb3RlPikuLi5dIgorbXNnc3RyICJnaXQgcmVtb3RlIFstdiB8IC0tdmVyYm9zZV0gdXBkYXRlIFstcCB8IC0tcHJ1bmVdIFsoPOe1hD4gfCA86YGg56uvPikuLi5dIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjI1Cittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgWy0tYWRkXSA8bmFtZT4gPGJyYW5jaD4uLi4iCittc2dzdHIgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIFstLWFkZF0gPOWQjeeosT4gPOWIhuaUrz4uLi4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjYgYnVpbHRpbi9yZW1vdGUuYzo3NQorbXNnaWQgImdpdCByZW1vdGUgZ2V0LXVybCBbLS1wdXNoXSBbLS1hbGxdIDxuYW1lPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBnZXQtdXJsIFstLXB1c2hdIFstLWFsbF0gPOWQjeeosT4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjcgYnVpbHRpbi9yZW1vdGUuYzo4MAorbXNnaWQgImdpdCByZW1vdGUgc2V0LXVybCBbLS1wdXNoXSA8bmFtZT4gPG5ld3VybD4gWzxvbGR1cmw+XSIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIFstLXB1c2hdIDzlkI3nqLE+IDzmlrDnmoTkvY3lnYA+IFs86IiK55qE5L2N5Z2APl0iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MjggYnVpbHRpbi9yZW1vdGUuYzo4MQorbXNnaWQgImdpdCByZW1vdGUgc2V0LXVybCAtLWFkZCA8bmFtZT4gPG5ld3VybD4iCittc2dzdHIgImdpdCByZW1vdGUgc2V0LXVybCAtLWFkZCA85ZCN56ixPiA85paw55qE5L2N5Z2APiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoyOSBidWlsdGluL3JlbW90ZS5jOjgyCittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDxuYW1lPiA8dXJsPiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtdXJsIC0tZGVsZXRlIDzlkI3nqLE+IDzkvY3lnYA+IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjM0Cittc2dpZCAiZ2l0IHJlbW90ZSBhZGQgWzxvcHRpb25zPl0gPG5hbWU+IDx1cmw+IgorbXNnc3RyICJnaXQgcmVtb3RlIGFkZCBbPOmBuOmghT5dIDzlkI3nqLE+IDzkvY3lnYA+IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjU0Cittc2dpZCAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgPG5hbWU+IDxicmFuY2g+Li4uIgorbXNnc3RyICJnaXQgcmVtb3RlIHNldC1icmFuY2hlcyA85ZCN56ixPiA85YiG5pSvPi4uLiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo1NQorbXNnaWQgImdpdCByZW1vdGUgc2V0LWJyYW5jaGVzIC0tYWRkIDxuYW1lPiA8YnJhbmNoPi4uLiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSBzZXQtYnJhbmNoZXMgLS1hZGQgPOWQjeeosT4gPOWIhuaUrz4uLi4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjAKK21zZ2lkICJnaXQgcmVtb3RlIHNob3cgWzxvcHRpb25zPl0gPG5hbWU+IgorbXNnc3RyICJnaXQgcmVtb3RlIHNob3cgWzzpgbjpoIU+XSA85ZCN56ixPiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo2NQorbXNnaWQgImdpdCByZW1vdGUgcHJ1bmUgWzxvcHRpb25zPl0gPG5hbWU+IgorbXNnc3RyICJnaXQgcmVtb3RlIHBydW5lIFs86YG46aCFPl0gPOWQjeeosT4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzAKK21zZ2lkICJnaXQgcmVtb3RlIHVwZGF0ZSBbPG9wdGlvbnM+XSBbPGdyb3VwPiB8IDxyZW1vdGU+XS4uLiIKK21zZ3N0ciAiZ2l0IHJlbW90ZSB1cGRhdGUgWzzpgbjpoIU+XSBbPOe1hD4gfCA86YGg56uvPl0uLi4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgJXMiCittc2dzdHIgIuabtOaWsCAlcyDkuK0iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTMxCittc2dpZCAiIgorIi0tbWlycm9yIGlzIGRhbmdlcm91cyBhbmQgZGVwcmVjYXRlZDsgcGxlYXNlXG4iCisiXHQgdXNlIC0tbWlycm9yPWZldGNoIG9yIC0tbWlycm9yPXB1c2ggaW5zdGVhZCIKK21zZ3N0ciAiIgorIi0tbWlycm9yIOmBuOmgheWNsemaquS4lOmBjuaZgu+8jOiri+S9v+eUqCAtLW1pcnJvcj1mZXRjaFxuIgorIlx0IOaIliAtLW1pcnJvcj1wdXNoIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG1pcnJvciBhcmd1bWVudDogJXMiCittc2dzdHIgIuacquefpeeahOmPoeWDj+WPg+aVuO+8miVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE2NAorbXNnaWQgImZldGNoIHRoZSByZW1vdGUgYnJhbmNoZXMiCittc2dzdHIgIuaKk+WPlumBoOerr+eahOWIhuaUryIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjYKK21zZ2lkICJpbXBvcnQgYWxsIHRhZ3MgYW5kIGFzc29jaWF0ZWQgb2JqZWN0cyB3aGVuIGZldGNoaW5nIgorbXNnc3RyICLmipPlj5bmmYLljK/lhaXmiYDmnInnmoTmqJnnsaTlkozpl5zoga/nianku7YiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY5Cittc2dpZCAib3IgZG8gbm90IGZldGNoIGFueSB0YWcgYXQgYWxsICgtLW5vLXRhZ3MpIgorbXNnc3RyICLmiJbkuI3mipPlj5bku7vkvZXmqJnnsaTvvIgtLW5vLXRhZ3PvvIkiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTcxCittc2dpZCAiYnJhbmNoKGVzKSB0byB0cmFjayIKK21zZ3N0ciAi6L+96Lmk55qE5YiG5pSvIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE3MgorbXNnaWQgIm1hc3RlciBicmFuY2giCittc2dzdHIgIuS4u+e3muWIhuaUryIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNzQKK21zZ2lkICJzZXQgdXAgcmVtb3RlIGFzIGEgbWlycm9yIHRvIHB1c2ggdG8gb3IgZmV0Y2ggZnJvbSIKK21zZ3N0ciAi5oqK6YGg56uv6Kit5a6a54K655So5Lul5o6o6YCB5oiW5oqT5Y+W55qE6Y+h5YOPIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE4NgorbXNnaWQgInNwZWNpZnlpbmcgYSBtYXN0ZXIgYnJhbmNoIG1ha2VzIG5vIHNlbnNlIHdpdGggLS1taXJyb3IiCittc2dzdHIgIuaMh+WumuS4gOWAiyBtYXN0ZXIg5YiG5pSv5Lim5L2/55SoIC0tbWlycm9yIOmBuOmgheaykuacieaEj+e+qSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxODgKK21zZ2lkICJzcGVjaWZ5aW5nIGJyYW5jaGVzIHRvIHRyYWNrIG1ha2VzIHNlbnNlIG9ubHkgd2l0aCBmZXRjaCBtaXJyb3JzIgorbXNnc3RyICLmjIflrpropoHov73ouaTnmoTliIbmlK/lj6rlnKjoiIflj5blvpfpj6Hlg4/lkIzmmYLkvb/nlKjmiY3mnInmhI/nvqkiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk1IGJ1aWx0aW4vcmVtb3RlLmM6Njk2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW90ZSAlcyBhbHJlYWR5IGV4aXN0cy4iCittc2dzdHIgIumBoOerryAlcyDlt7LntpPlrZjlnKjjgIIiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTk5IGJ1aWx0aW4vcmVtb3RlLmM6NzAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVtb3RlIG5hbWUiCittc2dzdHIgIiclcycg5LiN5piv5LiA5YCL5pyJ5pWI55qE6YGg56uv5ZCN56ixIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjIzOQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgc2V0dXAgbWFzdGVyICclcyciCittc2dzdHIgIueEoeazleioreWumiBtYXN0ZXIgJyVzJyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGdldCBmZXRjaCBtYXAgZm9yIHJlZnNwZWMgJXMiCittc2dzdHIgIueEoeazleW+l+WIsOW8leeUqOimj+agvCAlcyDnmoTlj5blvpfliJfooagiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NDUzIGJ1aWx0aW4vcmVtb3RlLmM6NDYxCittc2dpZCAiKG1hdGNoaW5nKSIKK21zZ3N0ciAi77yI56ym5ZCI77yJIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjQ2NQorbXNnaWQgIihkZWxldGUpIgorbXNnc3RyICLvvIjliKrpmaTvvIkiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzZXQgJyVzJyIKK21zZ3N0ciAi54Sh5rOV6Kit5a6aICclcyciCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGUgJXMgY29uZmlndXJhdGlvbiByZW1vdGUucHVzaERlZmF1bHQgaW46XG4iCisiXHQlczolZFxuIgorIm5vdyBuYW1lcyB0aGUgbm9uLWV4aXN0ZW50IHJlbW90ZSAnJXMnIgorbXNnc3RyICIiCisi5L2N5pa85LiL6L+w5L2N572u55qEICVzIOioreWumumghSByZW1vdGUucHVzaERlZmF1bHTvvJpcbiIKKyJcdCVzOiVkXG4iCisi54++5ZG95ZCN5oiQ5LiN5a2Y5Zyo55qE6YGg56uv5YiG5pSvICclcyciCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6Njg5IGJ1aWx0aW4vcmVtb3RlLmM6ODMyIGJ1aWx0aW4vcmVtb3RlLmM6OTQwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHN1Y2ggcmVtb3RlOiAnJXMnIgorbXNnc3RyICLmspLmnInmraTpgaDnq6/niYjmnKzluqvvvJonJXMnIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjcwNgorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcmVuYW1lIGNvbmZpZyBzZWN0aW9uICclcycgdG8gJyVzJyIKK21zZ3N0ciAi5LiN6IO96YeN5paw5ZG95ZCN6Kit5a6a5bCP56+AICclcycg5YiwICclcyciCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6NzI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJOb3QgdXBkYXRpbmcgbm9uLWRlZmF1bHQgZmV0Y2ggcmVmc3BlY1xuIgorIlx0JXNcbiIKKyJcdFBsZWFzZSB1cGRhdGUgdGhlIGNvbmZpZ3VyYXRpb24gbWFudWFsbHkgaWYgbmVjZXNzYXJ5LiIKK21zZ3N0ciAiIgorIuaykuacieabtOaWsOmdnumgkOioreeahOWPluW+l+W8leeUqOimj+agvFxuIgorIlx0JXNcbiIKKyJcdOWmguaenOW/heimgeiri+aJi+WLleabtOaWsOioreWumuOAgiIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo3NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGVsZXRpbmcgJyVzJyBmYWlsZWQiCittc2dzdHIgIuWIqumZpCAnJXMnIOWkseaVlyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo4MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3JlYXRpbmcgJyVzJyBmYWlsZWQiCittc2dzdHIgIuW7uueriyAnJXMnIOWkseaVlyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo4NzYKK21zZ2lkICIiCisiTm90ZTogQSBicmFuY2ggb3V0c2lkZSB0aGUgcmVmcy9yZW1vdGVzLyBoaWVyYXJjaHkgd2FzIG5vdCByZW1vdmVkO1xuIgorInRvIGRlbGV0ZSBpdCwgdXNlOiIKK21zZ2lkX3BsdXJhbCAiIgorIk5vdGU6IFNvbWUgYnJhbmNoZXMgb3V0c2lkZSB0aGUgcmVmcy9yZW1vdGVzLyBoaWVyYXJjaHkgd2VyZSBub3QgcmVtb3ZlZDtcbiIKKyJ0byBkZWxldGUgdGhlbSwgdXNlOiIKK21zZ3N0clswXSAi5rOo5oSP77yacmVmL3JlbW90ZXMg5bGk57Sa5LmL5aSW55qE5LiA5YCL5YiG5pSv5pyq6KKr56e76Zmk44CC6KaB5Yiq6Zmk5a6D77yM5L2/55So77yaIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjg5MAorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIGNvbmZpZyBzZWN0aW9uICclcyciCittc2dzdHIgIuS4jeiDveenu+mZpOioreWumuWwj+evgCAnJXMnIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjk5MworIywgYy1mb3JtYXQKK21zZ2lkICIgbmV3IChuZXh0IGZldGNoIHdpbGwgc3RvcmUgaW4gcmVtb3Rlcy8lcykiCittc2dzdHIgIiDmlrDnmoTvvIjkuIvkuIDmrKHlj5blvpflsIflhLLlrZjmlrwgcmVtb3Rlcy8lc++8iSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo5OTYKK21zZ2lkICIgdHJhY2tlZCIKK21zZ3N0ciAiIOW3sui/vei5pCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzo5OTgKK21zZ2lkICIgc3RhbGUgKHVzZSAnZ2l0IHJlbW90ZSBwcnVuZScgdG8gcmVtb3ZlKSIKK21zZ3N0ciAiIOmBjuaZgu+8iOS9v+eUqCAnZ2l0IHJlbW90ZSBwcnVuZScg5L6G56e76Zmk77yJIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEwMDAKK21zZ2lkICIgPz8/IgorbXNnc3RyICIgPz8/IgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEwNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBicmFuY2guJXMubWVyZ2U7IGNhbm5vdCByZWJhc2Ugb250byA+IDEgYnJhbmNoIgorbXNnc3RyICLnhKHmlYjnmoQgYnJhbmNoLiVzLm1lcmdl77yM5LiN6IO96YeN5a6a5Z+65bqV5Yiw5LiA5YCL5Lul5LiK55qE5YiG5pSvIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAicmViYXNlcyBpbnRlcmFjdGl2ZWx5IG9udG8gcmVtb3RlICVzIgorbXNnc3RyICLkupLli5XlvI/ph43lrprln7rlupXliLDpgaDnq68gJXMiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWJhc2VzIGludGVyYWN0aXZlbHkgKHdpdGggbWVyZ2VzKSBvbnRvIHJlbW90ZSAlcyIKK21zZ3N0ciAi5LqS5YuV5byP6YeN5a6a5Z+65bqV77yI5ZCr5ZCI5L215o+Q5Lqk77yJ5Yiw6YGg56uvICVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmViYXNlcyBvbnRvIHJlbW90ZSAlcyIKK21zZ3N0ciAi6YeN5a6a5Z+65bqV5Yiw6YGg56uvICVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEwNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIG1lcmdlcyB3aXRoIHJlbW90ZSAlcyIKK21zZ3N0ciAiIOiIh+mBoOerryAlcyDlkIjkvbUiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA2MgorIywgYy1mb3JtYXQKK21zZ2lkICJtZXJnZXMgd2l0aCByZW1vdGUgJXMiCittc2dzdHIgIuiIh+mBoOerryAlcyDlkIjkvbUiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICAgIGFuZCB3aXRoIHJlbW90ZSAlc1xuIgorbXNnc3RyICIlLSpzICAgIOS7peWPiuWSjOmBoOerryAlc1xuIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjExMDgKK21zZ2lkICJjcmVhdGUiCittc2dzdHIgIuW7uueriyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTExCittc2dpZCAiZGVsZXRlIgorbXNnc3RyICLliKrpmaQiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTExNQorbXNnaWQgInVwIHRvIGRhdGUiCittc2dzdHIgIuacgOaWsCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTE4Cittc2dpZCAiZmFzdC1mb3J3YXJkYWJsZSIKK21zZ3N0ciAi5Y+v5b+r6L2JIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjExMjEKK21zZ2lkICJsb2NhbCBvdXQgb2YgZGF0ZSIKK21zZ3N0ciAi5pys5qmf5bey6YGO5pmCIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjExMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICUtKnMgZm9yY2VzIHRvICUtKnMgKCVzKSIKK21zZ3N0ciAiICAgICUtKnMg5by35Yi25o6o6YCB6IezICUtKnMgKCVzKSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTMxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAlLSpzIHB1c2hlcyB0byAlLSpzICglcykiCittc2dzdHIgIiAgICAlLSpzIOaOqOmAgeiHsyAlLSpzICglcykiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTEzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgJS0qcyBmb3JjZXMgdG8gJXMiCittc2dzdHIgIiAgICAlLSpzIOW8t+WItuaOqOmAgeiHsyAlcyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMTM4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAlLSpzIHB1c2hlcyB0byAlcyIKK21zZ3N0ciAiICAgICUtKnMg5o6o6YCB6IezICVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyMDYKK21zZ2lkICJkbyBub3QgcXVlcnkgcmVtb3RlcyIKK21zZ3N0ciAi5LiN5p+l6Kmi6YGg56uvIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiKiByZW1vdGUgJXMiCittc2dzdHIgIiog6YGg56uvICVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBGZXRjaCBVUkw6ICVzIgorbXNnc3RyICIgIOWPluW+l+S9jeWdgO+8miVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyMzUgYnVpbHRpbi9yZW1vdGUuYzoxMjUxIGJ1aWx0aW4vcmVtb3RlLmM6MTM5MAorbXNnaWQgIihubyBVUkwpIgorbXNnc3RyICIo54ShIFVSTCkiCisKKyMuIFRSQU5TTEFUT1JTOiB0aGUgY29sb24gJzonIHNob3VsZCBhbGlnbgorIy4gd2l0aCB0aGUgb25lIGluICIgRmV0Y2ggVVJMOiAlcyIKKyMuIHRyYW5zbGF0aW9uLgorIy4KKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI0OSBidWlsdGluL3JlbW90ZS5jOjEyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQdXNoICBVUkw6ICVzIgorbXNnc3RyICIgIOaOqOmAgeS9jeWdgO+8miVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyNTMgYnVpbHRpbi9yZW1vdGUuYzoxMjU1IGJ1aWx0aW4vcmVtb3RlLmM6MTI1NworIywgYy1mb3JtYXQKK21zZ2lkICIgIEhFQUQgYnJhbmNoOiAlcyIKK21zZ3N0ciAiICBIRUFEIOWIhuaUr++8miVzIgorCisjICDora/ogIXvvJrkuK3mloflrZfkuLLmi7zmjqXvvIzlj6/liKrpmaTliY3lsI7nqbrmoLwKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1MworbXNnaWQgIihub3QgcXVlcmllZCkiCittc2dzdHIgIu+8iOacquafpeipou+8iSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjU1Cittc2dpZCAiKHVua25vd24pIgorbXNnc3RyICLvvIjmnKrnn6XvvIkiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI1OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICBIRUFEIGJyYW5jaCAocmVtb3RlIEhFQUQgaXMgYW1iaWd1b3VzLCBtYXkgYmUgb25lIG9mIHRoZSBmb2xsb3dpbmcpOlxuIgorbXNnc3RyICIgIEhFQUQg5YiG5pSv77yI6YGg56uvIEhFQUQg5qih57OK77yM5Y+v6IO95piv5LiL5YiX5Lit55qE5LiA5YCL77yJ77yaXG4iCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3MQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFJlbW90ZSBicmFuY2g6JXMiCittc2dpZF9wbHVyYWwgIiAgUmVtb3RlIGJyYW5jaGVzOiVzIgorbXNnc3RyWzBdICIgIOmBoOerr+WIhuaUr++8miVzIgorCisjICDora/ogIXvvJrkuK3mloflrZfkuLLmi7zmjqXvvIzlj6/liKrpmaTliY3lsI7nqbrmoLwKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTI3NCBidWlsdGluL3JlbW90ZS5jOjEzMDAKK21zZ2lkICIgKHN0YXR1cyBub3QgcXVlcmllZCkiCittc2dzdHIgIu+8iOeLgOaFi+acquafpeipou+8iSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjgzCittc2dpZCAiICBMb2NhbCBicmFuY2ggY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCittc2dpZF9wbHVyYWwgIiAgTG9jYWwgYnJhbmNoZXMgY29uZmlndXJlZCBmb3IgJ2dpdCBwdWxsJzoiCittc2dzdHJbMF0gIiAg54K6ICdnaXQgcHVsbCcg6Kit5a6a55qE5pys5qmf5YiG5pSv77yaIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEyOTEKK21zZ2lkICIgIExvY2FsIHJlZnMgd2lsbCBiZSBtaXJyb3JlZCBieSAnZ2l0IHB1c2gnIgorbXNnc3RyICIgIOacrOapn+W8leeUqOWwh+WcqCAnZ2l0IHB1c2gnIOaZguiiq+mPoeWDjyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgTG9jYWwgcmVmIGNvbmZpZ3VyZWQgZm9yICdnaXQgcHVzaCclczoiCittc2dpZF9wbHVyYWwgIiAgTG9jYWwgcmVmcyBjb25maWd1cmVkIGZvciAnZ2l0IHB1c2gnJXM6IgorbXNnc3RyWzBdICIgIOeCuiAnZ2l0IHB1c2gnIOioreWumueahOacrOapn+W8leeUqCVz77yaIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMTgKK21zZ2lkICJzZXQgcmVmcy9yZW1vdGVzLzxuYW1lPi9IRUFEIGFjY29yZGluZyB0byByZW1vdGUiCittc2dzdHIgIuagueaTmumBoOerr+ioreWumiByZWZzL3JlbW90ZXMvPOWQjeeosT4vSEVBRCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzIwCittc2dpZCAiZGVsZXRlIHJlZnMvcmVtb3Rlcy88bmFtZT4vSEVBRCIKK21zZ3N0ciAi5Yiq6ZmkIHJlZnMvcmVtb3Rlcy885ZCN56ixPi9IRUFEIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEzMzUKK21zZ2lkICJDYW5ub3QgZGV0ZXJtaW5lIHJlbW90ZSBIRUFEIgorbXNnc3RyICLnhKHms5XnorrlrprpgaDnq68gSEVBRCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzM3Cittc2dpZCAiTXVsdGlwbGUgcmVtb3RlIEhFQUQgYnJhbmNoZXMuIFBsZWFzZSBjaG9vc2Ugb25lIGV4cGxpY2l0bHkgd2l0aDoiCittc2dzdHIgIuWkmuWAi+mBoOerryBIRUFEIOWIhuaUr+OAguiri+aYjueiuuWcsOmBuOaTh+S4gOWAi+eUqOaMh+S7pO+8miIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBkZWxldGUgJXMiCittc2dzdHIgIueEoeazleWIqumZpCAlcyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vdCBhIHZhbGlkIHJlZjogJXMiCittc2dzdHIgIuS4jeaYr+S4gOWAi+acieaViOW8leeUqO+8miVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjEzNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IHNldHVwICVzIgorbXNnc3RyICLkuI3og73oqK3lrpogJXMiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyB3aWxsIGJlY29tZSBkYW5nbGluZyEiCittc2dzdHIgIiAlcyDlsIfmiJDngrrmh7jnqbrni4DmhYvvvIEiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogYnVpbHRpbi9yZW1vdGUuYzoxMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyBoYXMgYmVjb21lIGRhbmdsaW5nISIKK21zZ3N0ciAiICVzIOW3suaIkOeCuuaHuOepuueLgOaFi++8gSIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzg2CisjLCBjLWZvcm1hdAorbXNnaWQgIlBydW5pbmcgJXMiCittc2dzdHIgIuS/ruWJqiAlcyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlVSTDogJXMiCittc2dzdHIgIlVSTO+8miVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE0MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICogW3dvdWxkIHBydW5lXSAlcyIKK21zZ3N0ciAiICogW+Wwh+WIqumZpF0gJXMiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIgKiBbcHJ1bmVkXSAlcyIKK21zZ3N0ciAiICogW+W3suWIqumZpF0gJXMiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTQ1MQorbXNnaWQgInBydW5lIHJlbW90ZXMgYWZ0ZXIgZmV0Y2hpbmciCittc2dzdHIgIuaKk+WPluW+jOa4hemZpOmBoOerryIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTE0IGJ1aWx0aW4vcmVtb3RlLmM6MTU2OCBidWlsdGluL3JlbW90ZS5jOjE2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gc3VjaCByZW1vdGUgJyVzJyIKK21zZ3N0ciAi5rKS5pyJ5q2k6YGg56uvICclcyciCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTUzMAorbXNnaWQgImFkZCBicmFuY2giCittc2dzdHIgIuaWsOWinuWIhuaUryIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTM3Cittc2dpZCAibm8gcmVtb3RlIHNwZWNpZmllZCIKK21zZ3N0ciAi5pyq5oyH5a6a6YGg56uvIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE1NTQKK21zZ2lkICJxdWVyeSBwdXNoIFVSTHMgcmF0aGVyIHRoYW4gZmV0Y2ggVVJMcyIKK21zZ3N0ciAi5p+l6Kmi5o6o6YCBIFVSTCDkvY3lnYDvvIzogIzpnZ7lj5blvpcgVVJMIOS9jeWdgCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTU2Cittc2dpZCAicmV0dXJuIGFsbCBVUkxzIgorbXNnc3RyICLov5Tlm57miYDmnIkgVVJMIOS9jeWdgCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIFVSTHMgY29uZmlndXJlZCBmb3IgcmVtb3RlICclcyciCittc2dzdHIgIuaykuaciee1pumBoOerr+eJiOacrOW6qyAnJXMnIOioreWumiBVUkwiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYxMAorbXNnaWQgIm1hbmlwdWxhdGUgcHVzaCBVUkxzIgorbXNnc3RyICLli5XkvZzmjqjpgIEgVVJMUyIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjEyCittc2dpZCAiYWRkIFVSTCIKK21zZ3N0ciAi5paw5aKeIFVSTCIKKworIzogYnVpbHRpbi9yZW1vdGUuYzoxNjE0Cittc2dpZCAiZGVsZXRlIFVSTHMiCittc2dzdHIgIuWIqumZpCBVUkwiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTYyMQorbXNnaWQgIi0tYWRkIC0tZGVsZXRlIGRvZXNuJ3QgbWFrZSBzZW5zZSIKK21zZ3N0ciAiLS1hZGQgLS1kZWxldGUg54Sh5oSP576pIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE2NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBvbGQgVVJMIHBhdHRlcm46ICVzIgorbXNnc3RyICLnhKHmlYjnmoToiIogVVJMIOespuWQiOevhOacrO+8miVzIgorCisjOiBidWlsdGluL3JlbW90ZS5jOjE2NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gc3VjaCBVUkwgZm91bmQ6ICVzIgorbXNnc3RyICLmnKrmib7liLDmraQgVVJM77yaJXMiCisKKyM6IGJ1aWx0aW4vcmVtb3RlLmM6MTY3MAorbXNnaWQgIldpbGwgbm90IGRlbGV0ZSBhbGwgbm9uLXB1c2ggVVJMcyIKK21zZ3N0ciAi5bCH5LiN5pyD5Yiq6Zmk5omA5pyJ6Z2e5o6o6YCBIFVSTCDkvY3lnYAiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjMKK21zZ2lkICJnaXQgcmVwYWNrIFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgcmVwYWNrIFs86YG46aCFPl0iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjgKK21zZ2lkICIiCisiSW5jcmVtZW50YWwgcmVwYWNrcyBhcmUgaW5jb21wYXRpYmxlIHdpdGggYml0bWFwIGluZGV4ZXMuICBVc2VcbiIKKyItLW5vLXdyaXRlLWJpdG1hcC1pbmRleCBvciBkaXNhYmxlIHRoZSBwYWNrLndyaXRlYml0bWFwcyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIuWinumHjyByZXBhY2sg5ZKMIGJpdG1hcCDntKLlvJXkuI3nm7jlrrnjgIIgIOS9v+eUqCAtLW5vLXdyaXRlLWJpdG1hcC1pbmRleFxuIgorIuaIluemgeeUqCBwYWNrLndyaXRlYml0bWFwcyDoqK3lrprjgIIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MTkxCittc2dpZCAiY291bGQgbm90IHN0YXJ0IHBhY2stb2JqZWN0cyB0byByZXBhY2sgcHJvbWlzb3Igb2JqZWN0cyIKK21zZ3N0ciAi54Sh5rOV6ZaL5aeLIHBhY2stb2JqZWN0cyDkvobph43mlrDmiZPljIUgcHJvbWlzb3Ig54mp5Lu2IgorCisjOiBidWlsdGluL3JlcGFjay5jOjIzMCBidWlsdGluL3JlcGFjay5jOjQxNgorbXNnaWQgInJlcGFjazogRXhwZWN0aW5nIGZ1bGwgaGV4IG9iamVjdCBJRCBsaW5lcyBvbmx5IGZyb20gcGFjay1vYmplY3RzLiIKK21zZ3N0ciAicmVwYWNr77ya5pyf5pyb5L6G6IeqIHBhY2stb2JqZWN0cyDnmoTlrozmlbTljYHlha3pgLLkvY3nianku7YgSUTjgIIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MjU0Cittc2dpZCAiY291bGQgbm90IGZpbmlzaCBwYWNrLW9iamVjdHMgdG8gcmVwYWNrIHByb21pc29yIG9iamVjdHMiCittc2dzdHIgIueEoeazleWujOaIkCBwYWNrLW9iamVjdHMg5L6G6YeN5paw5omT5YyFIHByb21pc29yIOeJqeS7tiIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyOTIKK21zZ2lkICJwYWNrIGV2ZXJ5dGhpbmcgaW4gYSBzaW5nbGUgcGFjayIKK21zZ3N0ciAi5omA5pyJ5YWn5a655omT5YyF5Yiw5LiA5YCL5YyF5qqU5qGI5LitIgorCisjOiBidWlsdGluL3JlcGFjay5jOjI5NAorbXNnaWQgInNhbWUgYXMgLWEsIGFuZCB0dXJuIHVucmVhY2hhYmxlIG9iamVjdHMgbG9vc2UiCittc2dzdHIgIuWSjCAtYSDnm7jlkIzvvIzkuKblsIfnhKHms5Xlj5blvpfnmoTnianku7boqK3ngrrprIbmlaPnianku7YiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6Mjk3Cittc2dpZCAicmVtb3ZlIHJlZHVuZGFudCBwYWNrcywgYW5kIHJ1biBnaXQtcHJ1bmUtcGFja2VkIgorbXNnc3RyICLliKrpmaTlpJrppJjnmoTljIXvvIzln7fooYwgZ2l0LXBydW5lLXBhY2tlZCIKKworIzogYnVpbHRpbi9yZXBhY2suYzoyOTkKK21zZ2lkICJwYXNzIC0tbm8tcmV1c2UtZGVsdGEgdG8gZ2l0LXBhY2stb2JqZWN0cyIKK21zZ3N0ciAi5ZCRIGdpdC1wYWNrLW9iamVjdHMg5YKz6YGe5Y+D5pW4IC0tbm8tcmV1c2UtZGVsdGEiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAxCittc2dpZCAicGFzcyAtLW5vLXJldXNlLW9iamVjdCB0byBnaXQtcGFjay1vYmplY3RzIgorbXNnc3RyICLlkJEgZ2l0LXBhY2stb2JqZWN0cyDlgrPpgZ7lj4PmlbggLS1uby1yZXVzZS1vYmplY3QiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzAzCittc2dpZCAiZG8gbm90IHJ1biBnaXQtdXBkYXRlLXNlcnZlci1pbmZvIgorbXNnc3RyICLkuI3ln7fooYwgZ2l0LXVwZGF0ZS1zZXJ2ZXItaW5mbyIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMDYKK21zZ2lkICJwYXNzIC0tbG9jYWwgdG8gZ2l0LXBhY2stb2JqZWN0cyIKK21zZ3N0ciAi5ZCRIGdpdC1wYWNrLW9iamVjdHMg5YKz6YGe5Y+D5pW4IC0tbG9jYWwiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzA4Cittc2dpZCAid3JpdGUgYml0bWFwIGluZGV4IgorbXNnc3RyICLlr6sgYml0bWFwIOe0ouW8lSIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMTAKK21zZ2lkICJwYXNzIC0tZGVsdGEtaXNsYW5kcyB0byBnaXQtcGFjay1vYmplY3RzIgorbXNnc3RyICLlkJEgZ2l0LXBhY2stb2JqZWN0cyDlgrPpgZ7lj4PmlbggLS1kZWx0YS1pc2xhbmRzIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMxMQorbXNnaWQgImFwcHJveGlkYXRlIgorbXNnc3RyICLov5HkvLzml6XmnJ8iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzEyCittc2dpZCAid2l0aCAtQSwgZG8gbm90IGxvb3NlbiBvYmplY3RzIG9sZGVyIHRoYW4gdGhpcyIKK21zZ3N0ciAi5L2/55SoIC1B77yM5LiN6KaB5bCH5pep5pa85o+Q5L6b5pmC6ZaT55qE54mp5Lu26YGO5pyfIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMxNAorbXNnaWQgIndpdGggLWEsIHJlcGFjayB1bnJlYWNoYWJsZSBvYmplY3RzIgorbXNnc3RyICLkvb/nlKggLWEg77yM6YeN5paw5bCN54Sh5rOV5Y+W5b6X54mp5Lu25omT5YyFIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMxNgorbXNnaWQgInNpemUgb2YgdGhlIHdpbmRvdyB1c2VkIGZvciBkZWx0YSBjb21wcmVzc2lvbiIKK21zZ3N0ciAi55So5pa85aKe6YeP5aOT57iu55qE6KaW56qX5YC8IgorCisjOiBidWlsdGluL3JlcGFjay5jOjMxNyBidWlsdGluL3JlcGFjay5jOjMyMworbXNnaWQgImJ5dGVzIgorbXNnc3RyICLkvY3lhYPntYQiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6MzE4Cittc2dpZCAic2FtZSBhcyB0aGUgYWJvdmUsIGJ1dCBsaW1pdCBtZW1vcnkgc2l6ZSBpbnN0ZWFkIG9mIGVudHJpZXMgY291bnQiCittc2dzdHIgIuWSjOS4iumdoueahOebuOS8vO+8jOS9humZkOWItuiomOaGtumrlOWkp+Wwj+iAjOmdnuaineebruaVuCIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMjAKK21zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gZGVsdGEgZGVwdGgiCittc2dzdHIgIumZkOWItuacgOWkp+WinumHj+a3seW6piIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMjIKK21zZ2lkICJsaW1pdHMgdGhlIG1heGltdW0gbnVtYmVyIG9mIHRocmVhZHMiCittc2dzdHIgIumZkOWItuacgOWkp+Wft+ihjOe3kuaVuCIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMjQKK21zZ2lkICJtYXhpbXVtIHNpemUgb2YgZWFjaCBwYWNrZmlsZSIKK21zZ3N0ciAi5q+P5YCLIHBhY2tmaWxlIOeahOacgOWkp+WwuuWvuCIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMjYKK21zZ2lkICJyZXBhY2sgb2JqZWN0cyBpbiBwYWNrcyBtYXJrZWQgd2l0aCAua2VlcCIKK21zZ3N0ciAi5bCN5qiZ6KiY54K6IC5rZWVwIOeahOWMheS4reeahOeJqeS7tumHjeaWsOaJk+WMhSIKKworIzogYnVpbHRpbi9yZXBhY2suYzozMjgKK21zZ2lkICJkbyBub3QgcmVwYWNrIHRoaXMgcGFjayIKK21zZ3N0ciAi5LiN6KaB5bCN6Kmy5YyF5qqU5qGI6YeN5paw5omT5YyFIgorCisjOiBidWlsdGluL3JlcGFjay5jOjMzOAorbXNnaWQgImNhbm5vdCBkZWxldGUgcGFja3MgaW4gYSBwcmVjaW91cy1vYmplY3RzIHJlcG8iCittc2dzdHIgIuS4jeiDveWIqumZpOePjeWTgeeJiOacrOW6q+S4reeahOaJk+WMheaqlOahiCIKKworIzogYnVpbHRpbi9yZXBhY2suYzozNDIKK21zZ2lkICItLWtlZXAtdW5yZWFjaGFibGUgYW5kIC1BIGFyZSBpbmNvbXBhdGlibGUiCittc2dzdHIgIi0ta2VlcC11bnJlYWNoYWJsZSDlkowgLUEg5LiN55u45a65IgorCisjOiBidWlsdGluL3JlcGFjay5jOjQyNQorbXNnaWQgIk5vdGhpbmcgbmV3IHRvIHBhY2suIgorbXNnc3RyICLmspLmnInmlrDnmoTopoHmiZPljIXjgIIiCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NDg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXQVJOSU5HOiBTb21lIHBhY2tzIGluIHVzZSBoYXZlIGJlZW4gcmVuYW1lZCBieVxuIgorIldBUk5JTkc6IHByZWZpeGluZyBvbGQtIHRvIHRoZWlyIG5hbWUsIGluIG9yZGVyIHRvXG4iCisiV0FSTklORzogcmVwbGFjZSB0aGVtIHdpdGggdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZVxuIgorIldBUk5JTkc6IGZpbGUuICBCdXQgdGhlIG9wZXJhdGlvbiBmYWlsZWQsIGFuZCB0aGVcbiIKKyJXQVJOSU5HOiBhdHRlbXB0IHRvIHJlbmFtZSB0aGVtIGJhY2sgdG8gdGhlaXJcbiIKKyJXQVJOSU5HOiBvcmlnaW5hbCBuYW1lcyBhbHNvIGZhaWxlZC5cbiIKKyJXQVJOSU5HOiBQbGVhc2UgcmVuYW1lIHRoZW0gaW4gJXMgbWFudWFsbHk6XG4iCittc2dzdHIgIiIKKyLorablkYrvvJrngrrkuoblsIfljIXmqpTmoYjlj5bku6PngrrmlrDniYjmnKzvvIzkuIDkupvkvb/nlKjkuK3nmoTljIXlt7LntpNcbiIKKyLorablkYrvvJrpgI/pgY7mlrDlop4gb2xkLSDliY3ntrTnmoTmlrnlvI/ph43mlrDlkb3lkI3jgILkvYbmmK/li5XkvZzlpLHmlZfvvIxcbiIKKyLorablkYrvvJrkuKbkuJTlmJfoqabph43mlrDlkb3lkI3mlLnlm57ljp/mnInmqpTmoYjlkI3nmoTli5XkvZzkuZ/lpLHmlZfjgIJcbiIKKyLorablkYrvvJroq4vmiYvli5XlsIcgJXMg5LiL55qE6YCZ5Lqb5qqU5qGI6YeN5paw5ZG95ZCN77yaXG4iCisKKyM6IGJ1aWx0aW4vcmVwYWNrLmM6NTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAi5Yiq6ZmkICclcycg5aSx5pWXIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyMgorbXNnaWQgImdpdCByZXBsYWNlIFstZl0gPG9iamVjdD4gPHJlcGxhY2VtZW50PiIKK21zZ3N0ciAiZ2l0IHJlcGxhY2UgWy1mXSA854mp5Lu2PiA85Y+W5Luj54mpPiIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjMKK21zZ2lkICJnaXQgcmVwbGFjZSBbLWZdIC0tZWRpdCA8b2JqZWN0PiIKK21zZ3N0ciAiZ2l0IHJlcGxhY2UgWy1mXSAtLWVkaXQgPOeJqeS7tj4iCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI0Cittc2dpZCAiZ2l0IHJlcGxhY2UgWy1mXSAtLWdyYWZ0IDxjb21taXQ+IFs8cGFyZW50Pi4uLl0iCittc2dzdHIgImdpdCByZXBsYWNlIFstZl0gLS1ncmFmdCA85o+Q5LqkPiBbPOeItuaPkOS6pD4uLi5dIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNQorbXNnaWQgImdpdCByZXBsYWNlIFstZl0gLS1jb252ZXJ0LWdyYWZ0LWZpbGUiCittc2dzdHIgImdpdCByZXBsYWNlIFstZl0gLS1jb252ZXJ0LWdyYWZ0LWZpbGUiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjI2Cittc2dpZCAiZ2l0IHJlcGxhY2UgLWQgPG9iamVjdD4uLi4iCittc2dzdHIgImdpdCByZXBsYWNlIC1kIDznianku7Y+Li4uIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNworbXNnaWQgImdpdCByZXBsYWNlIFstLWZvcm1hdD08Zm9ybWF0Pl0gWy1sIFs8cGF0dGVybj5dXSIKK21zZ3N0ciAiZ2l0IHJlcGxhY2UgWy0tZm9ybWF0PTzmoLzlvI8+XSBbLWwgWzzmqKHlvI8+XV0iCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIHJlcGxhY2UgZm9ybWF0ICclcydcbiIKKyJ2YWxpZCBmb3JtYXRzIGFyZSAnc2hvcnQnLCAnbWVkaXVtJyBhbmQgJ2xvbmcnIgorbXNnc3RyICIiCisi54Sh5pWI55qE5Y+W5Luj5qC85byPICclcydcbiIKKyLmnInmlYjnmoTmoLzlvI/mnIkgJ3Nob3J0J+OAgSdtZWRpdW0nIOWSjCAnbG9uZyciCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJyZXBsYWNlIHJlZiAnJXMnIG5vdCBmb3VuZCIKK21zZ3N0ciAi5pyq55m854++5Y+W5Luj5byV55SoICclcyciCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE0MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkIHJlcGxhY2UgcmVmICclcyciCittc2dzdHIgIuW3suWIqumZpOWPluS7o+W8leeUqCAnJXMnIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoxNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCByZWYgbmFtZSIKK21zZ3N0ciAiJyVzJyDkuI3mmK/kuIDlgIvmnInmlYjnmoTlvJXnlKjlkI0iCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE1OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZXBsYWNlIHJlZiAnJXMnIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICLlj5bku6PlvJXnlKggJyVzJyDlt7LntpPlrZjlnKgiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT2JqZWN0cyBtdXN0IGJlIG9mIHRoZSBzYW1lIHR5cGUuXG4iCisiJyVzJyBwb2ludHMgdG8gYSByZXBsYWNlZCBvYmplY3Qgb2YgdHlwZSAnJXMnXG4iCisid2hpbGUgJyVzJyBwb2ludHMgdG8gYSByZXBsYWNlbWVudCBvYmplY3Qgb2YgdHlwZSAnJXMnLiIKK21zZ3N0ciAiIgorIueJqeS7tuW/hemgiOWxrOaWvOWQjOS4gOmhnuWei+OAglxuIgorIiclcycg5oyH5ZCRICclcycg6aGe5Z6L55qE5Y+W5Luj54mp5Lu2XG4iCisi6ICMICclcycg5oyH5ZCRICclcycg6aGe5Z6L55qE5Y+W5Luj54mp5Lu244CCIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHdyaXRpbmciCittc2dzdHIgIueEoeazleeCuuWvq+WFpemWi+WVnyAlcyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjQyCittc2dpZCAiY2F0LWZpbGUgcmVwb3J0ZWQgZmFpbHVyZSIKK21zZ3N0ciAiY2F0LWZpbGUg5aCx5ZGK5aSx5pWXIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHJlYWRpbmciCittc2dzdHIgIueEoeazleeCuuiugOWPlumWi+WVnyAlcyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MjcyCittc2dpZCAidW5hYmxlIHRvIHNwYXduIG1rdHJlZSIKK21zZ3N0ciAi54Sh5rOV5ZWf5YuVIG1rdHJlZSIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjc2Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZnJvbSBta3RyZWUiCittc2dzdHIgIueEoeazleW+niBta3RyZWUg6K6A5Y+WIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyODUKK21zZ2lkICJta3RyZWUgcmVwb3J0ZWQgZmFpbHVyZSIKK21zZ3N0ciAibWt0cmVlIOWgseWRiuWkseaVlyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6Mjg5Cittc2dpZCAibWt0cmVlIGRpZCBub3QgcmV0dXJuIGFuIG9iamVjdCBuYW1lIgorbXNnc3RyICJta3RyZWUg5rKS5pyJ6L+U5Zue5LiA5YCL54mp5Lu25ZCNIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzoyOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0ICVzIgorbXNnc3RyICLnhKHms5XlsI0gJXMg5Z+36KGMIGZzdGF0IgorCisjOiBidWlsdGluL3JlcGxhY2UuYzozMDMKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgb2JqZWN0IHRvIGRhdGFiYXNlIgorbXNnc3RyICLnhKHms5XlkJHos4fmlpnluqvlr6vlhaXnianku7YiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyMiBidWlsdGluL3JlcGxhY2UuYzozNzggYnVpbHRpbi9yZXBsYWNlLmM6NDI0CisjOiBidWlsdGluL3JlcGxhY2UuYzo0NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IGEgdmFsaWQgb2JqZWN0IG5hbWU6ICclcyciCittc2dzdHIgIuS4jeaYr+S4gOWAi+acieaViOeahOeJqeS7tuWQje+8miclcyciCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IG9iamVjdCB0eXBlIGZvciAlcyIKK21zZ3N0ciAi54Sh5rOV5b6X5YiwICVzIOeahOeJqeS7tumhnuWeiyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MzQyCittc2dpZCAiZWRpdGluZyBvYmplY3QgZmlsZSBmYWlsZWQiCittc2dzdHIgIue3qOi8r+eJqeS7tuaqlOahiOWkseaVlyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyBvYmplY3QgaXMgdGhlIHNhbWUgYXMgdGhlIG9sZCBvbmU6ICclcyciCittc2dzdHIgIuaWsOeJqeS7tuWSjOiIiueJqeS7tuebuOWQjO+8miclcyciCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjM4NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcGFyc2UgJXMgYXMgYSBjb21taXQiCittc2dzdHIgIueEoeazleWwhyAlcyDop6PmnpDngrrkuIDlgIvmj5DkuqQiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICJiYWQgbWVyZ2V0YWcgaW4gY29tbWl0ICclcyciCittc2dzdHIgIuaPkOS6pCAnJXMnIOS4reWQq+acieaQjeWjnueahOWQiOS9teaomeexpCIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGZvcm1lZCBtZXJnZXRhZyBpbiBjb21taXQgJyVzJyIKK21zZ3N0ciAi5o+Q5LqkICclcycg5Lit5ZCr5pyJ5qC85byP6Yyv6Kqk55qE5ZCI5L215qiZ57GkIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9yaWdpbmFsIGNvbW1pdCAnJXMnIGNvbnRhaW5zIG1lcmdldGFnICclcycgdGhhdCBpcyBkaXNjYXJkZWQ7IHVzZSAtLWVkaXQgIgorImluc3RlYWQgb2YgLS1ncmFmdCIKK21zZ3N0ciAi5Y6f5aeL5o+Q5LqkICclcycg5YyF5ZCr5bey57aT5o2o5qOE55qE5ZCI5L215qiZ57GkICclcyfvvIzkvb/nlKggLS1lZGl0IOS7o+abvyAtLWdyYWZ0IgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0NjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlIG9yaWdpbmFsIGNvbW1pdCAnJXMnIGhhcyBhIGdwZyBzaWduYXR1cmUiCittc2dzdHIgIuWOn+Wni+aPkOS6pCAnJXMnIOS4reacieS4gOWAiyBncGcg57C95ZCNIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0NzAKK21zZ2lkICJ0aGUgc2lnbmF0dXJlIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgcmVwbGFjZW1lbnQgY29tbWl0ISIKK21zZ3N0ciAi5Zyo5Y+W5Luj55qE5o+Q5Lqk5Lit57C95ZCN5bCH6KKr56e76Zmk77yBIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHdyaXRlIHJlcGxhY2VtZW50IGNvbW1pdCBmb3I6ICclcyciCittc2dzdHIgIuS4jeiDveeCuiAnJXMnIOWvq+WPluS7o+aPkOS6pCIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NDg4CisjLCBjLWZvcm1hdAorbXNnaWQgImdyYWZ0IGZvciAnJXMnIHVubmVjZXNzYXJ5IgorbXNnc3RyICLlsI0gJyVzJyDnp7vmpI3mspLmnInlv4XopoEiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgY29tbWl0IGlzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lOiAnJXMnIgorbXNnc3RyICLmlrDmj5DkuqTlkozoiIrnmoTkuIDmqKPvvJonJXMnIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvdWxkIG5vdCBjb252ZXJ0IHRoZSBmb2xsb3dpbmcgZ3JhZnQocyk6XG4iCisiJXMiCittc2dzdHIgIiIKKyLkuI3og73ovYnmj5vkuIvliJfnp7vmpI3vvJpcbiIKKyIlcyIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ4Cittc2dpZCAibGlzdCByZXBsYWNlIHJlZnMiCittc2dzdHIgIuWIl+WHuuWPluS7o+eahOW8leeUqCIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTQ5Cittc2dpZCAiZGVsZXRlIHJlcGxhY2UgcmVmcyIKK21zZ3N0ciAi5Yiq6Zmk5Y+W5Luj55qE5byV55SoIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTAKK21zZ2lkICJlZGl0IGV4aXN0aW5nIG9iamVjdCIKK21zZ3N0ciAi57eo6Lyv54++5a2Y55qE54mp5Lu2IgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTEKK21zZ2lkICJjaGFuZ2UgYSBjb21taXQncyBwYXJlbnRzIgorbXNnc3RyICLkv67mlLnkuIDlgIvmj5DkuqTnmoTniLbmj5DkuqQiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1MgorbXNnaWQgImNvbnZlcnQgZXhpc3RpbmcgZ3JhZnQgZmlsZSIKK21zZ3N0ciAi6L2J5o+b54++5a2Y55qE56e75qSN5qqU5qGIIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NTMKK21zZ2lkICJyZXBsYWNlIHRoZSByZWYgaWYgaXQgZXhpc3RzIgorbXNnc3RyICLlpoLmnpzlrZjlnKjliYflj5bku6PlvJXnlKgiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NQorbXNnaWQgImRvIG5vdCBwcmV0dHktcHJpbnQgY29udGVudHMgZm9yIC0tZWRpdCIKK21zZ3N0ciAi5LiN6KaB54K6IC0tZWRpdCDli5XkvZznvo7op4Dpoa/npLrlhaflrrkiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU1NgorbXNnaWQgInVzZSB0aGlzIGZvcm1hdCIKK21zZ3N0ciAi5L2/55So5q2k5qC85byPIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1NjkKK21zZ2lkICItLWZvcm1hdCBjYW5ub3QgYmUgdXNlZCB3aGVuIG5vdCBsaXN0aW5nIgorbXNnc3RyICLkuI3liJflh7rmmYLkuI3og73kvb/nlKggLS1mb3JtYXQiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU3NworbXNnaWQgIi1mIG9ubHkgbWFrZXMgc2Vuc2Ugd2hlbiB3cml0aW5nIGEgcmVwbGFjZW1lbnQiCittc2dzdHIgIuWPquacieWvq+S4gOWAi+WPluS7o+aZgiAtZiDmiY3mnInmhI/nvqkiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjU4MQorbXNnaWQgIi0tcmF3IG9ubHkgbWFrZXMgc2Vuc2Ugd2l0aCAtLWVkaXQiCittc2dzdHIgIi0tcmF3IOWPquacieWSjCAtLWVkaXQg5YWx55So5omN5pyJ5oSP576pIgorCisjOiBidWlsdGluL3JlcGxhY2UuYzo1ODcKK21zZ2lkICItZCBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQiCittc2dzdHIgIi1kIOmcgOimgeiHs+WwkeS4gOWAi+WPg+aVuCIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTkzCittc2dpZCAiYmFkIG51bWJlciBvZiBhcmd1bWVudHMiCittc2dzdHIgIumMr+iqpOeahOWPg+aVuOWAi+aVuCIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NTk5Cittc2dpZCAiLWUgbmVlZHMgZXhhY3RseSBvbmUgYXJndW1lbnQiCittc2dzdHIgIi1lIOmcgOimgeS4lOWDhemcgOimgeS4gOWAi+WPg+aVuCIKKworIzogYnVpbHRpbi9yZXBsYWNlLmM6NjA1Cittc2dpZCAiLWcgbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IgorbXNnc3RyICItZyDpnIDopoHoh7PlsJHkuIDlgIvlj4PmlbgiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYxMQorbXNnaWQgIi0tY29udmVydC1ncmFmdC1maWxlIHRha2VzIG5vIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnZlcnQtZ3JhZnQtZmlsZSDkuI3luLblj4PmlbgiCisKKyM6IGJ1aWx0aW4vcmVwbGFjZS5jOjYxNworbXNnaWQgIm9ubHkgb25lIHBhdHRlcm4gY2FuIGJlIGdpdmVuIHdpdGggLWwiCittc2dzdHIgIuWPquiDveeCuiAtbCDmj5DkvpvkuIDlgIvmqKHlvI8iCisKKyM6IGJ1aWx0aW4vcmVyZXJlLmM6MTMKK21zZ2lkICJnaXQgcmVyZXJlIFtjbGVhciB8IGZvcmdldCA8cGF0aD4uLi4gfCBzdGF0dXMgfCByZW1haW5pbmcgfCBkaWZmIHwgZ2NdIgorbXNnc3RyICJnaXQgcmVyZXJlIFtjbGVhciB8IGZvcmdldCA86Lev5b6RPi4uLiB8IHN0YXR1cyB8IHJlbWFpbmluZyB8IGRpZmYgfCBnY10iCisKKyM6IGJ1aWx0aW4vcmVyZXJlLmM6NjAKK21zZ2lkICJyZWdpc3RlciBjbGVhbiByZXNvbHV0aW9ucyBpbiBpbmRleCIKK21zZ3N0ciAi5Zyo57Si5byV5Lit6Ki75YaK5Lm+5reo55qE6Kej5rG65pa55qGIIgorCisjOiBidWlsdGluL3JlcmVyZS5jOjc5Cittc2dpZCAiJ2dpdCByZXJlcmUgZm9yZ2V0JyB3aXRob3V0IHBhdGhzIGlzIGRlcHJlY2F0ZWQiCittc2dzdHIgIuaykuaciei3r+W+keeahCAnZ2l0IHJlcmVyZSBmb3JnZXQnIOW3sue2k+mBjuaZgiIKKworIzogYnVpbHRpbi9yZXJlcmUuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGdlbmVyYXRlIGRpZmYgZm9yICclcyciCittc2dzdHIgIueEoeazleeCuiAnJXMnIOeUn+aIkOW3rueVsCIKKworIzogYnVpbHRpbi9yZXNldC5jOjMyCittc2dpZCAiIgorImdpdCByZXNldCBbLS1taXhlZCB8IC0tc29mdCB8IC0taGFyZCB8IC0tbWVyZ2UgfCAtLWtlZXBdIFstcV0gWzxjb21taXQ+XSIKK21zZ3N0ciAiZ2l0IHJlc2V0IFstLW1peGVkIHwgLS1zb2Z0IHwgLS1oYXJkIHwgLS1tZXJnZSB8IC0ta2VlcF0gWy1xXSBbPOaPkOS6pD5dIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzMKK21zZ2lkICJnaXQgcmVzZXQgWy1xXSBbPHRyZWUtaXNoPl0gWy0tXSA8cGF0aHNwZWM+Li4uIgorbXNnc3RyICJnaXQgcmVzZXQgWy1xXSBbPOaoueaIluaPkOS6pD5dIFstLV0gPOi3r+W+keimj+agvD4uLi4iCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNAorbXNnaWQgIiIKKyJnaXQgcmVzZXQgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGUgWy0tcGF0aHNwZWMtZmlsZS1udWxdXSBbPHRyZWUtaXNoPl0iCittc2dzdHIgIiIKKyJnaXQgcmVzZXQgWy1xXSBbLS1wYXRoc3BlYy1mcm9tLWZpbGUgWy0tcGF0aHNwZWMtZmlsZS1udWxdXSBbPOaoueaIluaPkOS6pD5dIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzUKK21zZ2lkICJnaXQgcmVzZXQgLS1wYXRjaCBbPHRyZWUtaXNoPl0gWy0tXSBbPHBhdGhzcGVjPi4uLl0iCittc2dzdHIgImdpdCByZXNldCAtLXBhdGNoIFs85qi55oiW5o+Q5LqkPl0gWy0tXSBbPOi3r+W+keimj+agvD4uLi5dIgorCisjOiBidWlsdGluL3Jlc2V0LmM6NDEKK21zZ2lkICJtaXhlZCIKK21zZ3N0ciAi5re36ZucIgorCisjOiBidWlsdGluL3Jlc2V0LmM6NDEKK21zZ2lkICJzb2Z0IgorbXNnc3RyICLou5/mgKciCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MQorbXNnaWQgImhhcmQiCittc2dzdHIgIuehrOaApyIKKworIzogYnVpbHRpbi9yZXNldC5jOjQxCittc2dpZCAibWVyZ2UiCittc2dzdHIgIuWQiOS9tSIKKworIzogYnVpbHRpbi9yZXNldC5jOjQxCittc2dpZCAia2VlcCIKK21zZ3N0ciAi5L+d5oyBIgorCisjOiBidWlsdGluL3Jlc2V0LmM6ODIKK21zZ2lkICJZb3UgZG8gbm90IGhhdmUgYSB2YWxpZCBIRUFELiIKK21zZ3N0ciAi5oKo5rKS5pyJ5LiA5YCL5pyJ5pWI55qEIEhFQUTjgIIiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo4NAorbXNnaWQgIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgSEVBRC4iCittc2dzdHIgIueEoeazleaJvuWIsCBIRUFEIOaMh+WQkeeahOaoueOAgiIKKworIzogYnVpbHRpbi9yZXNldC5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBmaW5kIHRyZWUgb2YgJXMuIgorbXNnc3RyICLnhKHms5Xmib7liLAgJXMg5oyH5ZCR55qE5qi544CCIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkhFQUQgaXMgbm93IGF0ICVzIgorbXNnc3RyICJIRUFEIOePvuWcqOS9jeaWvCAlcyIKKworIyAg6K2v6ICF77ya5ryi5a2X5LmL6ZaT54Sh56m65qC877yM5pWF5Yiq6ZmkJXPliY3lvoznqbrmoLwKKyM6IGJ1aWx0aW4vcmVzZXQuYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IGRvIGEgJXMgcmVzZXQgaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlLiIKK21zZ3N0ciAi5Zyo5ZCI5L216YGO56iL5Lit5LiN6IO95YGaJXPph43oqK3li5XkvZzjgIIiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTQgYnVpbHRpbi9zdGFzaC5jOjUyMCBidWlsdGluL3N0YXNoLmM6NTk1CisjOiBidWlsdGluL3N0YXNoLmM6NjE5Cittc2dpZCAiYmUgcXVpZXQsIG9ubHkgcmVwb3J0IGVycm9ycyIKK21zZ3N0ciAi5a6J6Z2c5qih5byP77yM5Y+q5aCx5ZGK6Yyv6KqkIgorCisjOiBidWlsdGluL3Jlc2V0LmM6Mjk2Cittc2dpZCAicmVzZXQgSEVBRCBhbmQgaW5kZXgiCittc2dzdHIgIumHjeiorSBIRUFEIOWSjOe0ouW8lSIKKworIzogYnVpbHRpbi9yZXNldC5jOjI5NworbXNnaWQgInJlc2V0IG9ubHkgSEVBRCIKK21zZ3N0ciAi5Y+q6YeN6KitIEhFQUQiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzoyOTkgYnVpbHRpbi9yZXNldC5jOjMwMQorbXNnaWQgInJlc2V0IEhFQUQsIGluZGV4IGFuZCB3b3JraW5nIHRyZWUiCittc2dzdHIgIumHjeiorSBIRUFE44CB57Si5byV5ZKM5bel5L2c5Y2AIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzAzCittc2dpZCAicmVzZXQgSEVBRCBidXQga2VlcCBsb2NhbCBjaGFuZ2VzIgorbXNnc3RyICLph43oqK0gSEVBRCDkvYblhLLlrZjmnKzmqZ/orormm7QiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzozMDkKK21zZ2lkICJyZWNvcmQgb25seSB0aGUgZmFjdCB0aGF0IHJlbW92ZWQgcGF0aHMgd2lsbCBiZSBhZGRlZCBsYXRlciIKK21zZ3N0ciAi5bCH5Yiq6Zmk55qE6Lev5b6R5qiZ6KiY54K656iN5b6M5paw5aKeIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzQzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZXNvbHZlICclcycgYXMgYSB2YWxpZCByZXZpc2lvbi4iCittc2dzdHIgIueEoeazleWwhyAnJXMnIOino+aekOeCuuS4gOWAi+acieaViOeahOeJiOacrOOAgiIKKworIzogYnVpbHRpbi9yZXNldC5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVzb2x2ZSAnJXMnIGFzIGEgdmFsaWQgdHJlZS4iCittc2dzdHIgIueEoeazleWwhyAnJXMnIOino+aekOeCuuS4gOWAi+acieaViOeahOaoueeLgOeJqeS7tuOAgiIKKworIzogYnVpbHRpbi9yZXNldC5jOjM2MAorbXNnaWQgIi0tcGF0Y2ggaXMgaW5jb21wYXRpYmxlIHdpdGggLS17aGFyZCxtaXhlZCxzb2Z0fSIKK21zZ3N0ciAiLS1wYXRjaCDoiIcgLS17aGFyZOOAgW1peGVk44CBc29mdH0g6YG46aCF5LiN55u45a65IgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzcwCittc2dpZCAiLS1taXhlZCB3aXRoIHBhdGhzIGlzIGRlcHJlY2F0ZWQ7IHVzZSAnZ2l0IHJlc2V0IC0tIDxwYXRocz4nIGluc3RlYWQuIgorbXNnc3RyICItLW1peGVkIOW4tui3r+W+keW3suajhOeUqO+8jOiAjOaYr+eUqCAnZ2l0IHJlc2V0IC0tIDzot6/lvpE+J+OAgiIKKworIyAg6K2v6ICF77ya5ryi5a2X5LmL6ZaT54Sh56m65qC877yM5pWF5Yiq6ZmkJXPliY3lvoznqbrmoLwKKyM6IGJ1aWx0aW4vcmVzZXQuYzozNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2Fubm90IGRvICVzIHJlc2V0IHdpdGggcGF0aHMuIgorbXNnc3RyICLkuI3og73luLbot6/lvpHpgLLooYwlc+mHjeioreOAgiIKKworIyAg6K2v6ICF77ya5ryi5a2X5LmL6ZaT54Sh56m65qC877yM5pWF5Yiq6ZmkJXPliY3lvoznqbrmoLwKKyM6IGJ1aWx0aW4vcmVzZXQuYzozODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVzZXQgaXMgbm90IGFsbG93ZWQgaW4gYSBiYXJlIHJlcG9zaXRvcnkiCittc2dzdHIgIuS4jeiDveWwjee0lOeJiOacrOW6q+mAsuihjCVz6YeN6KitIgorCisjOiBidWlsdGluL3Jlc2V0LmM6MzkxCittc2dpZCAiLU4gY2FuIG9ubHkgYmUgdXNlZCB3aXRoIC0tbWl4ZWQiCittc2dzdHIgIi1OIOWPquiDveWSjCAtLW1peGVkIOWQjOaZguS9v+eUqCIKKworIzogYnVpbHRpbi9yZXNldC5jOjQxMgorbXNnaWQgIlVuc3RhZ2VkIGNoYW5nZXMgYWZ0ZXIgcmVzZXQ6IgorbXNnc3RyICLph43oqK3lvozlj5bmtojmmqvlrZjnmoTorormm7TvvJoiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGVudW1lcmF0ZSB1bnN0YWdlZCBjaGFuZ2VzIGFmdGVyIHJlc2V0LiAgWW91IGNhblxuIgorInVzZSAnLS1xdWlldCcgdG8gYXZvaWQgdGhpcy4gIFNldCB0aGUgY29uZmlnIHNldHRpbmcgcmVzZXQucXVpZXQgdG8gdHJ1ZVxuIgorInRvIG1ha2UgdGhpcyB0aGUgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIumHjeioreW+jO+8jOaemuiIieacquaaq+WtmOiuiuabtOiKseiyu+S6hiAlLjJmIOenkuOAgiDmgqjlj6/ku6Xkvb/nlKggJy0tcXVpZXQnIOmBv+WFjeatpOaDheazgeOAglxuIgorIuWwh+ioreWumuiuiuaVuCByZXNldC5xdWlldCDoqK3lrprngrogdHJ1ZSDlj6/kvb/lhbbmiJDngrrpoJDoqK3lgLzjgIJcbiIKKworIzogYnVpbHRpbi9yZXNldC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcmVzZXQgaW5kZXggZmlsZSB0byByZXZpc2lvbiAnJXMnLiIKK21zZ3N0ciAi5LiN6IO96YeN6Kit57Si5byV5qqU5qGI6Iez54mI5pysICclcyfjgIIiCisKKyM6IGJ1aWx0aW4vcmVzZXQuYzo0MjkKK21zZ2lkICJDb3VsZCBub3Qgd3JpdGUgbmV3IGluZGV4IGZpbGUuIgorbXNnc3RyICLkuI3og73lr6vlhaXmlrDnmoTntKLlvJXmqpTmoYjjgIIiCisKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo0OTkKK21zZ2lkICJjYW5ub3QgY29tYmluZSAtLWV4Y2x1ZGUtcHJvbWlzb3Itb2JqZWN0cyBhbmQgLS1taXNzaW5nIgorbXNnc3RyICLkuI3og73lkIzmmYLkvb/nlKggLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMg5ZKMIC0tbWlzc2luZyDpgbjpoIUiCisKKyM6IGJ1aWx0aW4vcmV2LWxpc3QuYzo1NjAKK21zZ2lkICJvYmplY3QgZmlsdGVyaW5nIHJlcXVpcmVzIC0tb2JqZWN0cyIKK21zZ3N0ciAi54mp5Lu26YGO5r++6ZyA6KaBIC0tb2JqZWN0cyIKKworIzogYnVpbHRpbi9yZXYtbGlzdC5jOjYxMAorbXNnaWQgInJldi1saXN0IGRvZXMgbm90IHN1cHBvcnQgZGlzcGxheSBvZiBub3RlcyIKK21zZ3N0ciAicmV2LWxpc3Qg5LiN5pSv5o+06aGv56S66Ki76KejIgorCisjOiBidWlsdGluL3Jldi1saXN0LmM6NjE1Cittc2dpZCAibWFya2VkIGNvdW50aW5nIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tb2JqZWN0cyIKK21zZ3N0ciAiLS1vYmplY3RzIOS4jeebuOWuueaomeiomOioiOaVuCAobWFya2VkIGNvdW50aW5nKSIKKworIzogYnVpbHRpbi9yZXYtcGFyc2UuYzo0MDgKK21zZ2lkICJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHRpb25zPl0gLS0gWzxhcmdzPi4uLl0iCittc2dzdHIgImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPOmBuOmghT5dIC0tIFs85Y+D5pW4Pi4uLl0iCisKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDEzCittc2dpZCAia2VlcCB0aGUgYC0tYCBwYXNzZWQgYXMgYW4gYXJnIgorbXNnc3RyICLkv53mjIEgYC0tYCDkvZzngrrkuIDlgIvlj4PmlbjlgrPpgZ4iCisKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE1Cittc2dpZCAic3RvcCBwYXJzaW5nIGFmdGVyIHRoZSBmaXJzdCBub24tb3B0aW9uIGFyZ3VtZW50IgorbXNnc3RyICLpgYfliLDnrKzkuIDlgIvpnZ7pgbjpoIXlj4PmlbjlvozlgZzmraLop6PmnpAiCisKKyM6IGJ1aWx0aW4vcmV2LXBhcnNlLmM6NDE4Cittc2dpZCAib3V0cHV0IGluIHN0dWNrIGxvbmcgZm9ybSIKK21zZ3N0ciAi5Lul5Zu65a6a6ZW35qC85byP6Ly45Ye6IgorCisjOiBidWlsdGluL3Jldi1wYXJzZS5jOjU1MQorbXNnaWQgIiIKKyJnaXQgcmV2LXBhcnNlIC0tcGFyc2VvcHQgWzxvcHRpb25zPl0gLS0gWzxhcmdzPi4uLl1cbiIKKyIgICBvcjogZ2l0IHJldi1wYXJzZSAtLXNxLXF1b3RlIFs8YXJnPi4uLl1cbiIKKyIgICBvcjogZ2l0IHJldi1wYXJzZSBbPG9wdGlvbnM+XSBbPGFyZz4uLi5dXG4iCisiXG4iCisiUnVuIFwiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IC1oXCIgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhlIGZpcnN0IHVzYWdlLiIKK21zZ3N0ciAiIgorImdpdCByZXYtcGFyc2UgLS1wYXJzZW9wdCBbPOmBuOmghT5dIC0tIFs85Y+D5pW4Pi4uLl1cbiIKKyIgICDmiJbogIXvvJpnaXQgcmV2LXBhcnNlIC0tc3EtcXVvdGUgWzzlj4Pmlbg+Li4uXVxuIgorIiAgIOaIluiAhe+8mmdpdCByZXYtcGFyc2UgWzzpgbjpoIU+XSBbPOWPg+aVuD4uLi5dXG4iCisiXG4iCisi5Yid5qyh5L2/55So5pmC5Z+36KGMIFwiZ2l0IHJldi1wYXJzZSAtLXBhcnNlb3B0IC1oXCIg5L6G542y5b6X5pu05aSa6KiK5oGv44CCIgorCisjOiBidWlsdGluL3JldmVydC5jOjI0Cittc2dpZCAiZ2l0IHJldmVydCBbPG9wdGlvbnM+XSA8Y29tbWl0LWlzaD4uLi4iCittc2dzdHIgImdpdCByZXZlcnQgWzzpgbjpoIU+XSA85o+Q5Lqk6JmfPi4uLiIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoyNQorbXNnaWQgImdpdCByZXZlcnQgPHN1YmNvbW1hbmQ+IgorbXNnc3RyICJnaXQgcmV2ZXJ0IDzlrZDmjIfku6Q+IgorCisjOiBidWlsdGluL3JldmVydC5jOjMwCittc2dpZCAiZ2l0IGNoZXJyeS1waWNrIFs8b3B0aW9ucz5dIDxjb21taXQtaXNoPi4uLiIKK21zZ3N0ciAiZ2l0IGNoZXJyeS1waWNrIFs86YG46aCFPl0gPOaPkOS6pOiZnz4uLi4iCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MzEKK21zZ2lkICJnaXQgY2hlcnJ5LXBpY2sgPHN1YmNvbW1hbmQ+IgorbXNnc3RyICJnaXQgY2hlcnJ5LXBpY2sgPOWtkOaMh+S7pD4iCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib3B0aW9uIGAlcycgZXhwZWN0cyBhIG51bWJlciBncmVhdGVyIHRoYW4gemVybyIKK21zZ3N0ciAi6YG46aCFIGAlcycg5pyf5pyb5LiA5YCL5aSn5pa86Zu255qE5pW45a2XIgorCisjOiBidWlsdGluL3JldmVydC5jOjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiAlcyBjYW5ub3QgYmUgdXNlZCB3aXRoICVzIgorbXNnc3RyICIlc++8miVzIOS4jeiDveWSjCAlcyDlkIzmmYLkvb/nlKgiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTAyCittc2dpZCAiZW5kIHJldmVydCBvciBjaGVycnktcGljayBzZXF1ZW5jZSIKK21zZ3N0ciAi57WC5q2i5Y+N6L2J5oiW5o+A6YG45YuV5L2cIgorCisjOiBidWlsdGluL3JldmVydC5jOjEwMworbXNnaWQgInJlc3VtZSByZXZlcnQgb3IgY2hlcnJ5LXBpY2sgc2VxdWVuY2UiCittc2dzdHIgIue5vOe6jOWPjei9ieaIluaPgOmBuOWLleS9nCIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDQKK21zZ2lkICJjYW5jZWwgcmV2ZXJ0IG9yIGNoZXJyeS1waWNrIHNlcXVlbmNlIgorbXNnc3RyICLlj5bmtojlj43ovYnmiJbmj4Dpgbjli5XkvZwiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTA1Cittc2dpZCAic2tpcCBjdXJyZW50IGNvbW1pdCBhbmQgY29udGludWUiCittc2dzdHIgIui3s+mBjuebruWJjeaPkOS6pOS4pue5vOe6jCIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMDcKK21zZ2lkICJkb24ndCBhdXRvbWF0aWNhbGx5IGNvbW1pdCIKK21zZ3N0ciAi5LiN6KaB6Ieq5YuV5o+Q5LqkIgorCisjOiBidWlsdGluL3JldmVydC5jOjEwOAorbXNnaWQgImVkaXQgdGhlIGNvbW1pdCBtZXNzYWdlIgorbXNnc3RyICLnt6jovK/mj5DkuqToqqrmmI4iCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MTExCittc2dpZCAicGFyZW50LW51bWJlciIKK21zZ3N0ciAi54i257eo6JmfIgorCisjOiBidWlsdGluL3JldmVydC5jOjExMgorbXNnaWQgInNlbGVjdCBtYWlubGluZSBwYXJlbnQiCittc2dzdHIgIumBuOaTh+S4u+W5ueeItuaPkOS6pOe3qOiZnyIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMTQKK21zZ2lkICJtZXJnZSBzdHJhdGVneSIKK21zZ3N0ciAi5ZCI5L21562W55WlIgorCisjOiBidWlsdGluL3JldmVydC5jOjExNgorbXNnaWQgIm9wdGlvbiBmb3IgbWVyZ2Ugc3RyYXRlZ3kiCittc2dzdHIgIuWQiOS9teetlueVpeeahOmBuOmghSIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMjUKK21zZ2lkICJhcHBlbmQgY29tbWl0IG5hbWUiCittc2dzdHIgIui/veWKoOaPkOS6pOWQjeeosSIKKworIzogYnVpbHRpbi9yZXZlcnQuYzoxMjcKK21zZ2lkICJwcmVzZXJ2ZSBpbml0aWFsbHkgZW1wdHkgY29tbWl0cyIKK21zZ3N0ciAi5L+d55WZ5Yid5aeL5YyW55qE56m65o+Q5LqkIgorCisjOiBidWlsdGluL3JldmVydC5jOjEyOQorbXNnaWQgImtlZXAgcmVkdW5kYW50LCBlbXB0eSBjb21taXRzIgorbXNnc3RyICLkv53mjIHlpJrppJjnmoTjgIHnqbrnmoTmj5DkuqQiCisKKyM6IGJ1aWx0aW4vcmV2ZXJ0LmM6MjMyCittc2dpZCAicmV2ZXJ0IGZhaWxlZCIKK21zZ3N0ciAi6YKE5Y6f5aSx5pWXIgorCisjOiBidWlsdGluL3JldmVydC5jOjI0NQorbXNnaWQgImNoZXJyeS1waWNrIGZhaWxlZCIKK21zZ3N0ciAi5o+A6YG45aSx5pWXIgorCisjOiBidWlsdGluL3JtLmM6MTkKK21zZ2lkICJnaXQgcm0gWzxvcHRpb25zPl0gWy0tXSA8ZmlsZT4uLi4iCittc2dzdHIgImdpdCBybSBbPOmBuOmghT5dIFstLV0gPOaqlOahiD4uLi4iCisKKyM6IGJ1aWx0aW4vcm0uYzoyMDcKK21zZ2lkICIiCisidGhlIGZvbGxvd2luZyBmaWxlIGhhcyBzdGFnZWQgY29udGVudCBkaWZmZXJlbnQgZnJvbSBib3RoIHRoZVxuIgorImZpbGUgYW5kIHRoZSBIRUFEOiIKK21zZ2lkX3BsdXJhbCAiIgorInRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBzdGFnZWQgY29udGVudCBkaWZmZXJlbnQgZnJvbSBib3RoIHRoZVxuIgorImZpbGUgYW5kIHRoZSBIRUFEOiIKK21zZ3N0clswXSAi5aaC5LiL5qqU5qGI5YW25pqr5a2Y55qE5YWn5a655ZKM5bel5L2c5Y2A5Y+KIEhFQUQg5Lit55qE6YO95LiN5LiA5qij77yaIgorCisjOiBidWlsdGluL3JtLmM6MjEyCittc2dpZCAiIgorIlxuIgorIih1c2UgLWYgdG8gZm9yY2UgcmVtb3ZhbCkiCittc2dzdHIgIiIKKyJcbiIKKyLvvIjkvb/nlKggLWYg5by35Yi25Yiq6Zmk77yJIgorCisjOiBidWlsdGluL3JtLmM6MjE2Cittc2dpZCAidGhlIGZvbGxvd2luZyBmaWxlIGhhcyBjaGFuZ2VzIHN0YWdlZCBpbiB0aGUgaW5kZXg6IgorbXNnaWRfcGx1cmFsICJ0aGUgZm9sbG93aW5nIGZpbGVzIGhhdmUgY2hhbmdlcyBzdGFnZWQgaW4gdGhlIGluZGV4OiIKK21zZ3N0clswXSAi5LiL5YiX5qqU5qGI57Si5byV5Lit5pyJ6K6K5pu0IgorCisjOiBidWlsdGluL3JtLmM6MjIwIGJ1aWx0aW4vcm0uYzoyMjkKK21zZ2lkICIiCisiXG4iCisiKHVzZSAtLWNhY2hlZCB0byBrZWVwIHRoZSBmaWxlLCBvciAtZiB0byBmb3JjZSByZW1vdmFsKSIKK21zZ3N0ciAiIgorIlxuIgorIu+8iOS9v+eUqCAtLWNhY2hlZCDkv53nlZnmnKzmqZ/mqpTmoYjvvIzmiJbnlKggLWYg5by35Yi25Yiq6Zmk77yJIgorCisjOiBidWlsdGluL3JtLmM6MjI2Cittc2dpZCAidGhlIGZvbGxvd2luZyBmaWxlIGhhcyBsb2NhbCBtb2RpZmljYXRpb25zOiIKK21zZ2lkX3BsdXJhbCAidGhlIGZvbGxvd2luZyBmaWxlcyBoYXZlIGxvY2FsIG1vZGlmaWNhdGlvbnM6IgorbXNnc3RyWzBdICLlpoLkuIvmqpTmoYjmnInmnKzmqZ/kv67mlLnvvJoiCisKKyM6IGJ1aWx0aW4vcm0uYzoyNDMKK21zZ2lkICJkbyBub3QgbGlzdCByZW1vdmVkIGZpbGVzIgorbXNnc3RyICLkuI3liJflh7rliKrpmaTnmoTmqpTmoYgiCisKKyM6IGJ1aWx0aW4vcm0uYzoyNDQKK21zZ2lkICJvbmx5IHJlbW92ZSBmcm9tIHRoZSBpbmRleCIKK21zZ3N0ciAi5Y+q5b6e57Si5byV5Y2A5Yiq6ZmkIgorCisjOiBidWlsdGluL3JtLmM6MjQ1Cittc2dpZCAib3ZlcnJpZGUgdGhlIHVwLXRvLWRhdGUgY2hlY2siCittc2dzdHIgIuW/veeVpeaqlOahiOabtOaWsOeLgOaFi+aqouafpSIKKworIzogYnVpbHRpbi9ybS5jOjI0NgorbXNnaWQgImFsbG93IHJlY3Vyc2l2ZSByZW1vdmFsIgorbXNnc3RyICLlhYHoqLHpgZ7ov7TliKrpmaQiCisKKyM6IGJ1aWx0aW4vcm0uYzoyNDgKK21zZ2lkICJleGl0IHdpdGggYSB6ZXJvIHN0YXR1cyBldmVuIGlmIG5vdGhpbmcgbWF0Y2hlZCIKK21zZ3N0ciAi5Y2z5L2/5rKS5pyJ56ym5ZCI77yM5Lmf5Lul6Zu254uA5oWL6Zui6ZaLIgorCisjOiBidWlsdGluL3JtLmM6MjgyCittc2dpZCAiTm8gcGF0aHNwZWMgd2FzIGdpdmVuLiBXaGljaCBmaWxlcyBzaG91bGQgSSByZW1vdmU/IgorbXNnc3RyICLmspLmnInmj5Dkvpvot6/lvpHopo/moLzjgILmiJHoqbLnp7vpmaTlk6rlgIvmqpTmoYjvvJ8iCisKKyM6IGJ1aWx0aW4vcm0uYzozMDUKK21zZ2lkICJwbGVhc2Ugc3RhZ2UgeW91ciBjaGFuZ2VzIHRvIC5naXRtb2R1bGVzIG9yIHN0YXNoIHRoZW0gdG8gcHJvY2VlZCIKK21zZ3N0ciAi6KuL5bCH5oKo55qE5L+u5pS55pqr5a2Y5YiwIC5naXRtb2R1bGVzIOS4reaIluWEsuiXj+W+jOWGjee5vOe6jCIKKworIzogYnVpbHRpbi9ybS5jOjMyMworIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVtb3ZpbmcgJyVzJyByZWN1cnNpdmVseSB3aXRob3V0IC1yIgorbXNnc3RyICLmnKrmj5DkvpsgLXIg6YG46aCF5LiN5pyD6YGe6L+05Yiq6ZmkICclcyciCisKKyM6IGJ1aWx0aW4vcm0uYzozNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2l0IHJtOiB1bmFibGUgdG8gcmVtb3ZlICVzIgorbXNnc3RyICJnaXQgcm3vvJrkuI3og73liKrpmaQgJXMiCisKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MjAKK21zZ2lkICIiCisiZ2l0IHNlbmQtcGFjayBbLS1hbGwgfCAtLW1pcnJvcl0gWy0tZHJ5LXJ1bl0gWy0tZm9yY2VdIFstLXJlY2VpdmUtcGFjaz08Z2l0LSIKKyJyZWNlaXZlLXBhY2s+XSBbLS12ZXJib3NlXSBbLS10aGluXSBbLS1hdG9taWNdIFs8aG9zdD46XTxkaXJlY3Rvcnk+ICIKKyJbPHJlZj4uLi5dXG4iCisiICAtLWFsbCBhbmQgZXhwbGljaXQgPHJlZj4gc3BlY2lmaWNhdGlvbiBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlLiIKK21zZ3N0ciAiIgorImdpdCBzZW5kLXBhY2sgWy0tYWxsIHwgLS1taXJyb3JdIFstLWRyeS1ydW5dIFstLWZvcmNlXSBbLS1yZWNlaXZlLXBhY2s9PGdpdC0iCisicmVjZWl2ZS1wYWNrPl0gWy0tdmVyYm9zZV0gWy0tdGhpbl0gWy0tYXRvbWljXSBbPOS4u+apnz46XTznm67pjIQ+IFs85byV55SoPi4uLl1cbiIKKyIgIC0tYWxsIOWSjOaYjueiuueahCA85byV55SoPiDkupLmlqXjgIIiCisKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTYzCittc2dpZCAicmVtb3RlIG5hbWUiCittc2dzdHIgIumBoOerr+WQjeeosSIKKworIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzcKK21zZ2lkICJ1c2Ugc3RhdGVsZXNzIFJQQyBwcm90b2NvbCIKK21zZ3N0ciAi5L2/55So54Sh54uA5oWL55qEIFJQQyDljZTlrpoiCisKKyM6IGJ1aWx0aW4vc2VuZC1wYWNrLmM6MTc4Cittc2dpZCAicmVhZCByZWZzIGZyb20gc3RkaW4iCittc2dzdHIgIuW+nuaomea6lui8uOWFpeiugOWPluW8leeUqCIKKworIzogYnVpbHRpbi9zZW5kLXBhY2suYzoxNzkKK21zZ2lkICJwcmludCBzdGF0dXMgZnJvbSByZW1vdGUgaGVscGVyIgorbXNnc3RyICLliJfljbDkvoboh6rpgaDnq68gaGVscGVyIOeahOeLgOaFiyIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjE0Cittc2dpZCAiZ2l0IHNob3J0bG9nIFs8b3B0aW9ucz5dIFs8cmV2aXNpb24tcmFuZ2U+XSBbWy0tXSA8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgc2hvcnRsb2cgWzzpgbjpoIU+XSBbPOeJiOacrOevhOWcjT5dIFtbLS1dIDzot6/lvpE+Li4uXSIKKworIzogYnVpbHRpbi9zaG9ydGxvZy5jOjE1Cittc2dpZCAiZ2l0IGxvZyAtLXByZXR0eT1zaG9ydCB8IGdpdCBzaG9ydGxvZyBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IGxvZyAtLXByZXR0eT1zaG9ydCB8IGdpdCBzaG9ydGxvZyBbPOmBuOmghT5dIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MjY0Cittc2dpZCAiR3JvdXAgYnkgY29tbWl0dGVyIHJhdGhlciB0aGFuIGF1dGhvciIKK21zZ3N0ciAi5oyJ54Wn5o+Q5Lqk6ICF5YiG57WE6ICM5LiN5piv5L2c6ICFIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MjY2Cittc2dpZCAic29ydCBvdXRwdXQgYWNjb3JkaW5nIHRvIHRoZSBudW1iZXIgb2YgY29tbWl0cyBwZXIgYXV0aG9yIgorbXNnc3RyICLmoLnmk5rmr4/lgIvkvZzogIXnmoTmj5DkuqTmlbjph4/mjpLluo8iCisKKyM6IGJ1aWx0aW4vc2hvcnRsb2cuYzoyNjgKK21zZ2lkICJTdXBwcmVzcyBjb21taXQgZGVzY3JpcHRpb25zLCBvbmx5IHByb3ZpZGVzIGNvbW1pdCBjb3VudCIKK21zZ3N0ciAi6Zqx6JeP5o+Q5Lqk6Kqq5piO77yM5Y+q5o+Q5L6b5o+Q5Lqk5pW46YePIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MjcwCittc2dpZCAiU2hvdyB0aGUgZW1haWwgYWRkcmVzcyBvZiBlYWNoIGF1dGhvciIKK21zZ3N0ciAi6aGv56S65q+P5YCL5L2c6ICF55qE6Zu75a2Q5L+h5Lu25L2N5Z2AIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MjcxCittc2dpZCAiPHc+Wyw8aTE+Wyw8aTI+XV0iCittc2dzdHIgIjx3PlssPGkxPlssPGkyPl1dIgorCisjOiBidWlsdGluL3Nob3J0bG9nLmM6MjcyCittc2dpZCAiTGluZXdyYXAgb3V0cHV0IgorbXNnc3RyICLmipjooYzovLjlh7oiCisKKyM6IGJ1aWx0aW4vc2hvcnRsb2cuYzozMDEKK21zZ2lkICJ0b28gbWFueSBhcmd1bWVudHMgZ2l2ZW4gb3V0c2lkZSByZXBvc2l0b3J5IgorbXNnc3RyICLniYjmnKzluqvlpJbln7fooYzmj5DkvpvkuoblpKrlpJrnmoTlj4PmlbgiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzoxMworbXNnaWQgIiIKKyJnaXQgc2hvdy1icmFuY2ggWy1hIHwgLS1hbGxdIFstciB8IC0tcmVtb3Rlc10gWy0tdG9wby1vcmRlciB8IC0tZGF0ZS1vcmRlcl1cbiIKKyJcdFx0Wy0tY3VycmVudF0gWy0tY29sb3JbPTx3aGVuPl0gfCAtLW5vLWNvbG9yXSBbLS1zcGFyc2VdXG4iCisiXHRcdFstLW1vcmU9PG4+IHwgLS1saXN0IHwgLS1pbmRlcGVuZGVudCB8IC0tbWVyZ2UtYmFzZV1cbiIKKyJcdFx0Wy0tbm8tbmFtZSB8IC0tc2hhMS1uYW1lXSBbLS10b3BpY3NdIFsoPHJldj4gfCA8Z2xvYj4pLi4uXSIKK21zZ3N0ciAiIgorImdpdCBzaG93LWJyYW5jaCBbLWEgfCAtLWFsbF0gWy1yIHwgLS1yZW1vdGVzXSBbLS10b3BvLW9yZGVyIHwgLS1kYXRlLW9yZGVyXVxuIgorIlx0XHRbLS1jdXJyZW50XSBbLS1jb2xvcls9POS9leaZgj5dIHwgLS1uby1jb2xvcl0gWy0tc3BhcnNlXVxuIgorIlx0XHRbLS1tb3JlPTxuPiB8IC0tbGlzdCB8IC0taW5kZXBlbmRlbnQgfCAtLW1lcmdlLWJhc2VdXG4iCisiXHRcdFstLW5vLW5hbWUgfCAtLXNoYTEtbmFtZV0gWy0tdG9waWNzXSBbKDzniYjmnKw+IHwgPOiQrOeUqOWtl+WFgz4pLi4uXSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjE3Cittc2dpZCAiZ2l0IHNob3ctYnJhbmNoICgtZyB8IC0tcmVmbG9nKVs9PG4+Wyw8YmFzZT5dXSBbLS1saXN0XSBbPHJlZj5dIgorbXNnc3RyICJnaXQgc2hvdy1icmFuY2ggKC1nIHwgLS1yZWZsb2cpWz08bj5bLDzotbflp4vpu54+XV0gWy0tbGlzdF0gWzzlvJXnlKg+XSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlczsgY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmVmIgorbXNnaWRfcGx1cmFsICJpZ25vcmluZyAlczsgY2Fubm90IGhhbmRsZSBtb3JlIHRoYW4gJWQgcmVmcyIKK21zZ3N0clswXSAi5b+955WlICVz77yM54Sh5rOV6JmV55CGICVkIOWAi+S7peS4iueahOW8leeUqCIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjU0OAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBtYXRjaGluZyByZWZzIHdpdGggJXMiCittc2dzdHIgIuaykuacieWSjCAlcyDnrKblkIjnmoTlvJXnlKgiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDUKK21zZ2lkICJzaG93IHJlbW90ZS10cmFja2luZyBhbmQgbG9jYWwgYnJhbmNoZXMiCittc2dzdHIgIumhr+ekuumBoOerr+i/vei5pOeahOWSjOacrOapn+eahOWIhuaUryIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY0NworbXNnaWQgInNob3cgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzIgorbXNnc3RyICLpoa/npLrpgaDnq6/ov73ouaTnmoTliIbmlK8iCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NDkKK21zZ2lkICJjb2xvciAnKiErLScgY29ycmVzcG9uZGluZyB0byB0aGUgYnJhbmNoIgorbXNnc3RyICLokZfoibIgJyohKy0nIOWIsOebuOaHieeahOWIhuaUryIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MQorbXNnaWQgInNob3cgPG4+IG1vcmUgY29tbWl0cyBhZnRlciB0aGUgY29tbW9uIGFuY2VzdG9yIgorbXNnc3RyICLpoa/npLrlhbHlkIznpZblhYjlvoznmoQgPG4+IOWAi+aPkOS6pCIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1MworbXNnaWQgInN5bm9ueW0gdG8gbW9yZT0tMSIKK21zZ3N0ciAi5ZKMIG1vcmU9LTEg5ZCM576pIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjU0Cittc2dpZCAic3VwcHJlc3MgbmFtaW5nIHN0cmluZ3MiCittc2dzdHIgIuS4jemhr+ekuuWtl+S4suWRveWQjSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY1NgorbXNnaWQgImluY2x1ZGUgdGhlIGN1cnJlbnQgYnJhbmNoIgorbXNnc3RyICLljIXmi6znm67liY3liIbmlK8iCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NTgKK21zZ2lkICJuYW1lIGNvbW1pdHMgd2l0aCB0aGVpciBvYmplY3QgbmFtZXMiCittc2dzdHIgIuS7peeJqeS7tuWQjeWtl+WRveWQjeaPkOS6pCIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MAorbXNnaWQgInNob3cgcG9zc2libGUgbWVyZ2UgYmFzZXMiCittc2dzdHIgIumhr+ekuuWPr+iDveWQiOS9teeahOWfuuekjiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2MgorbXNnaWQgInNob3cgcmVmcyB1bnJlYWNoYWJsZSBmcm9tIGFueSBvdGhlciByZWYiCittc2dzdHIgIumhr+ekuuaykuacieS7u+S9leW8leeUqOeahOeahOW8leeUqCIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2NAorbXNnaWQgInNob3cgY29tbWl0cyBpbiB0b3BvbG9naWNhbCBvcmRlciIKK21zZ3N0ciAi5Lul5ouT5pKy6aCG5bqP6aGv56S65o+Q5LqkIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjY3Cittc2dpZCAic2hvdyBvbmx5IGNvbW1pdHMgbm90IG9uIHRoZSBmaXJzdCBicmFuY2giCittc2dzdHIgIuWPqumhr+ekuuS4jeWcqOesrOS4gOWAi+WIhuaUr+S4iueahOaPkOS6pCIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY2OQorbXNnaWQgInNob3cgbWVyZ2VzIHJlYWNoYWJsZSBmcm9tIG9ubHkgb25lIHRpcCIKK21zZ3N0ciAi6aGv56S65YOF5LiA5YCL5YiG5pSv5Y+v5a2Y5Y+W55qE5ZCI5L215o+Q5LqkIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6NjcxCittc2dpZCAidG9wb2xvZ2ljYWxseSBzb3J0LCBtYWludGFpbmluZyBkYXRlIG9yZGVyIHdoZXJlIHBvc3NpYmxlIgorbXNnc3RyICLmi5PmkrLmlrnlvI/mjpLluo/vvIzkuKblhJjlj6/og73lnLDkv53mjIHml6XmnJ/poIbluo8iCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo2NzQKK21zZ2lkICI8bj5bLDxiYXNlPl0iCittc2dzdHIgIjxuPlssPGJhc2U+XSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjY3NQorbXNnaWQgInNob3cgPG4+IG1vc3QgcmVjZW50IHJlZi1sb2cgZW50cmllcyBzdGFydGluZyBhdCBiYXNlIgorbXNnc3RyICLpoa/npLrlvp7otbflp4vpu57plovlp4vnmoQgPG4+IOaineacgOi/keeahOW8leeUqOaXpeiqjOiomOmMhCIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjcxMQorbXNnaWQgIiIKKyItLXJlZmxvZyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLWFsbCwgLS1yZW1vdGVzLCAtLWluZGVwZW5kZW50IG9yIC0tbWVyZ2UtYmFzZSIKK21zZ3N0ciAiLS1yZWZsb2cg5ZKMIC0tYWxs44CBLS1yZW1vdGVz44CBLS1pbmRlcGVuZGVudCDmiJYgLS1tZXJnZS1iYXNlIOS4jeebuOWuuSIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczNQorbXNnaWQgIm5vIGJyYW5jaGVzIGdpdmVuLCBhbmQgSEVBRCBpcyBub3QgdmFsaWQiCittc2dzdHIgIuacquaPkOS+m+WIhuaUr++8jOS4lCBIRUFEIOeEoeaViCIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjczOAorbXNnaWQgIi0tcmVmbG9nIG9wdGlvbiBuZWVkcyBvbmUgYnJhbmNoIG5hbWUiCittc2dzdHIgIumBuOmghSAtLXJlZmxvZyDpnIDopoHkuIDlgIvliIbmlK/lkI0iCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo3NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAib25seSAlZCBlbnRyeSBjYW4gYmUgc2hvd24gYXQgb25lIHRpbWUuIgorbXNnaWRfcGx1cmFsICJvbmx5ICVkIGVudHJpZXMgY2FuIGJlIHNob3duIGF0IG9uZSB0aW1lLiIKK21zZ3N0clswXSAi5LiA5qyh5Y+q6IO96aGv56S6ICVkIOWAi+aineebruOAgiIKKworIzogYnVpbHRpbi9zaG93LWJyYW5jaC5jOjc0NQorIywgYy1mb3JtYXQKK21zZ2lkICJubyBzdWNoIHJlZiAlcyIKK21zZ3N0ciAi54Sh5q2k5byV55SoICVzIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODMxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJldi4iCittc2dpZF9wbHVyYWwgImNhbm5vdCBoYW5kbGUgbW9yZSB0aGFuICVkIHJldnMuIgorbXNnc3RyWzBdICLkuI3og73omZXnkIYgJWQg5YCL5Lul5LiK55qE54mI5pys44CCIgorCisjOiBidWlsdGluL3Nob3ctYnJhbmNoLmM6ODM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgdmFsaWQgcmVmLiIKK21zZ3N0ciAiJyVzJyDkuI3mmK/kuIDlgIvmnInmlYjnmoTlvJXnlKjjgIIiCisKKyM6IGJ1aWx0aW4vc2hvdy1icmFuY2guYzo4MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpbmQgY29tbWl0ICVzICglcykiCittc2dzdHIgIuS4jeiDveaJvuWIsOaPkOS6pCAlc++8iCVz77yJIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTIKK21zZ2lkICIiCisiZ2l0IHNob3ctcmVmIFstcSB8IC0tcXVpZXRdIFstLXZlcmlmeV0gWy0taGVhZF0gWy1kIHwgLS1kZXJlZmVyZW5jZV0gWy1zIHwgLS0iCisiaGFzaFs9PG4+XV0gWy0tYWJicmV2Wz08bj5dXSBbLS10YWdzXSBbLS1oZWFkc10gWy0tXSBbPHBhdHRlcm4+Li4uXSIKK21zZ3N0ciAiIgorImdpdCBzaG93LXJlZiBbLXEgfCAtLXF1aWV0XSBbLS12ZXJpZnldIFstLWhlYWRdIFstZCB8IC0tZGVyZWZlcmVuY2VdIFstcyB8IC0tIgorImhhc2hbPTxuPl1dIFstLWFiYnJldls9PG4+XV0gWy0tdGFnc10gWy0taGVhZHNdIFstLV0gWzzmqKHlvI8+Li4uXSIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjEzCittc2dpZCAiZ2l0IHNob3ctcmVmIC0tZXhjbHVkZS1leGlzdGluZ1s9PHBhdHRlcm4+XSIKK21zZ3N0ciAiZ2l0IHNob3ctcmVmIC0tZXhjbHVkZS1leGlzdGluZ1s9POaooeW8jz5dIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYyCittc2dpZCAib25seSBzaG93IHRhZ3MgKGNhbiBiZSBjb21iaW5lZCB3aXRoIGhlYWRzKSIKK21zZ3N0ciAi5Y+q6aGv56S65qiZ57Gk77yI5Y+v5Lul5ZKM6aCt5YWx55So77yJIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTYzCittc2dpZCAib25seSBzaG93IGhlYWRzIChjYW4gYmUgY29tYmluZWQgd2l0aCB0YWdzKSIKK21zZ3N0ciAi5Y+q6aGv56S66aCt77yI5Y+v5Lul5ZKM5qiZ57Gk5YWx55So77yJIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTY0Cittc2dpZCAic3RyaWN0ZXIgcmVmZXJlbmNlIGNoZWNraW5nLCByZXF1aXJlcyBleGFjdCByZWYgcGF0aCIKK21zZ3N0ciAi5pu05Zq05qC855qE5byV55So5qqi5ris77yM6ZyA6KaB57K+56K655qE5byV55So6Lev5b6RIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTY3IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNjkKK21zZ2lkICJzaG93IHRoZSBIRUFEIHJlZmVyZW5jZSwgZXZlbiBpZiBpdCB3b3VsZCBiZSBmaWx0ZXJlZCBvdXQiCittc2dzdHIgIumhr+ekuiBIRUFEIOW8leeUqO+8jOWNs+S9v+iiq+mBjua/vuaOiSIKKworIzogYnVpbHRpbi9zaG93LXJlZi5jOjE3MQorbXNnaWQgImRlcmVmZXJlbmNlIHRhZ3MgaW50byBvYmplY3QgSURzIgorbXNnc3RyICLovYnmj5vmqJnnsaTliLDnianku7YgSUQiCisKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzMKK21zZ2lkICJvbmx5IHNob3cgU0hBMSBoYXNoIHVzaW5nIDxuPiBkaWdpdHMiCittc2dzdHIgIuWPqumhr+ekuuS9v+eUqCA8bj4g5YCL5pW45a2X55qEIFNIQTEg6Zuc5rmKIgorCisjOiBidWlsdGluL3Nob3ctcmVmLmM6MTc3Cittc2dpZCAiZG8gbm90IHByaW50IHJlc3VsdHMgdG8gc3Rkb3V0ICh1c2VmdWwgd2l0aCAtLXZlcmlmeSkiCittc2dzdHIgIuS4jeWIl+WNsOe1kOaenOWIsOaomea6lui8uOWHuu+8iOS+i+WmguiIhyAtLXZlcmlmeSDlj4PmlbjlhbHnlKjvvIkiCisKKyM6IGJ1aWx0aW4vc2hvdy1yZWYuYzoxNzkKK21zZ2lkICJzaG93IHJlZnMgZnJvbSBzdGRpbiB0aGF0IGFyZW4ndCBpbiBsb2NhbCByZXBvc2l0b3J5IgorbXNnc3RyICLpoa/npLrlvp7mqJnmupbovLjlhaXkuK3oroDlhaXnmoTkuI3lnKjmnKzmqZ/niYjmnKzluqvkuK3nmoTlvJXnlKgiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6MjEKK21zZ2lkICJnaXQgc3BhcnNlLWNoZWNrb3V0IChpbml0fGxpc3R8c2V0fGFkZHxkaXNhYmxlKSA8b3B0aW9ucz4iCittc2dzdHIgImdpdCBzcGFyc2UtY2hlY2tvdXQgKGluaXR8bGlzdHxzZXR8YWRkfGRpc2FibGUpIDzpgbjpoIU+IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjY0Cittc2dpZCAidGhpcyB3b3JrdHJlZSBpcyBub3Qgc3BhcnNlIChzcGFyc2UtY2hlY2tvdXQgZmlsZSBtYXkgbm90IGV4aXN0KSIKK21zZ3N0ciAi6YCZ5LiN5piv56iA55aP5bel5L2c5Y2A77yIc3BhcnNlLWNoZWNrb3V0IOaqlOahiOWPr+iDveS4jeWtmOWcqO+8iSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyMjUKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSBmb3Igc3BhcnNlLWNoZWNrb3V0IGZpbGUiCittc2dzdHIgIueEoeazleW7uueri+eogOeWj+ewveWHuuaqlOahiOeahOebrumMhCIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gc2V0IGV4dGVuc2lvbnMud29ya3RyZWVDb25maWcgc2V0dGluZyIKK21zZ3N0ciAi54Sh5rOV6Kit5a6aIGV4dGVuc2lvbnMud29ya3RyZWVDb25maWcg6Kit5a6aIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjI4MworbXNnaWQgImdpdCBzcGFyc2UtY2hlY2tvdXQgaW5pdCBbLS1jb25lXSIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCBpbml0IFstLWNvbmVdIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjMwMgorbXNnaWQgImluaXRpYWxpemUgdGhlIHNwYXJzZS1jaGVja291dCBpbiBjb25lIG1vZGUiCittc2dzdHIgIuS7pSBjb25lIOaooeW8j+WIneWni+WMlueogOeWj+ewveWHuiIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzozMDgKK21zZ2lkICJpbml0aWFsaXplIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAi5Yid5aeL5YyW56iA55aP57C95Ye6IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIgorbXNnc3RyICLnhKHms5XplovllZ/jgIwlc+OAjSIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzozOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IG5vcm1hbGl6ZSBwYXRoICVzIgorbXNnc3RyICLnhKHms5XmqJnmupbljJbot6/lvpEgJXMiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDEwCittc2dpZCAiZ2l0IHNwYXJzZS1jaGVja291dCAoc2V0fGFkZCkgKC0tc3RkaW4gfCA8cGF0dGVybnM+KSIKK21zZ3N0ciAiZ2l0IHNwYXJzZS1jaGVja291dCAoc2V0fGFkZCkgKC0tc3RkaW4gfCA85qij5byPPikiCisKKyM6IGJ1aWx0aW4vc3BhcnNlLWNoZWNrb3V0LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bnF1b3RlIEMtc3R5bGUgc3RyaW5nICclcyciCittc2dzdHIgIueEoeazleWOu+aOiSAnJXMnIEMg5qij5byP5a2X5Liy55qE5byV6JmfIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjQ4OSBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjUxMworbXNnaWQgInVuYWJsZSB0byBsb2FkIGV4aXN0aW5nIHNwYXJzZS1jaGVja291dCBwYXR0ZXJucyIKK21zZ3N0ciAi54Sh5rOV6LyJ5YWl54++5a2Y55qE56iA55aP57C95Ye65qij5byPIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjU1OAorbXNnaWQgInJlYWQgcGF0dGVybnMgZnJvbSBzdGFuZGFyZCBpbiIKK21zZ3N0ciAi5b6e5qiZ5rqW6Ly45YWl6K6A5Y+W5qij5byPIgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjU2NAorbXNnaWQgInNldCBzcGFyc2UtY2hlY2tvdXQgcGF0dGVybnMiCittc2dzdHIgIuioreWumueogOeWj+ewveWHuuaoo+W8jyIKKworIzogYnVpbHRpbi9zcGFyc2UtY2hlY2tvdXQuYzo1ODEKK21zZ2lkICJkaXNhYmxlIHNwYXJzZS1jaGVja291dCIKK21zZ3N0ciAi5YGc55So56iA55aP57C95Ye6IgorCisjOiBidWlsdGluL3NwYXJzZS1jaGVja291dC5jOjU5MworbXNnaWQgImVycm9yIHdoaWxlIHJlZnJlc2hpbmcgd29ya2luZyBkaXJlY3RvcnkiCittc2dzdHIgIumHjeaWsOaVtOeQhuW3peS9nOebrumMhOaZgueZvOeUn+mMr+iqpCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjIyIGJ1aWx0aW4vc3Rhc2guYzozOAorbXNnaWQgImdpdCBzdGFzaCBsaXN0IFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgc3Rhc2ggbGlzdCBbPOmBuOmghT5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjMgYnVpbHRpbi9zdGFzaC5jOjQzCittc2dpZCAiZ2l0IHN0YXNoIHNob3cgWzxvcHRpb25zPl0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggc2hvdyBbPOmBuOmghT5dIFs8c3Rhc2g+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjI0IGJ1aWx0aW4vc3Rhc2guYzo0OAorbXNnaWQgImdpdCBzdGFzaCBkcm9wIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBkcm9wIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNQorbXNnaWQgImdpdCBzdGFzaCAoIHBvcCB8IGFwcGx5ICkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCAoIHBvcCB8IGFwcGx5ICkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyNiBidWlsdGluL3N0YXNoLmM6NjMKK21zZ2lkICJnaXQgc3Rhc2ggYnJhbmNoIDxicmFuY2huYW1lPiBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBicmFuY2ggPOWIhuaUr+WQjT4gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjcgYnVpbHRpbi9zdGFzaC5jOjY4Cittc2dpZCAiZ2l0IHN0YXNoIGNsZWFyIgorbXNnc3RyICJnaXQgc3Rhc2ggY2xlYXIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoyOAorbXNnaWQgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XVxuIgorIiAgICAgICAgICBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9PGZpbGU+IFstLXBhdGhzcGVjLWZpbGUtbnVsXV1cbiIKKyIgICAgICAgICAgWy0tXSBbPHBhdGhzcGVjPi4uLl1dIgorbXNnc3RyICIiCisiZ2l0IHN0YXNoIFtwdXNoIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbLW18LS1tZXNzYWdlIDzoqIrmga8+XVxuIgorIiAgICAgICAgICBbLS1wYXRoc3BlYy1mcm9tLWZpbGU9POaqlOahiD4gWy0tcGF0aHNwZWMtZmlsZS1udWxdXVxuIgorIiAgICAgICAgICBbLS1dIFs86Lev5b6R6KaP5qC8Pi4uLl1dIgorCisjOiBidWlsdGluL3N0YXNoLmM6MzIgYnVpbHRpbi9zdGFzaC5jOjg1Cittc2dpZCAiIgorImdpdCBzdGFzaCBzYXZlIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbPG1lc3NhZ2U+XSIKK21zZ3N0ciAiIgorImdpdCBzdGFzaCBzYXZlIFstcHwtLXBhdGNoXSBbLWt8LS1bbm8tXWtlZXAtaW5kZXhdIFstcXwtLXF1aWV0XVxuIgorIiAgICAgICAgICBbLXV8LS1pbmNsdWRlLXVudHJhY2tlZF0gWy1hfC0tYWxsXSBbPOa2iOaBrz5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTMKK21zZ2lkICJnaXQgc3Rhc2ggcG9wIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorbXNnc3RyICJnaXQgc3Rhc2ggcG9wIFstLWluZGV4XSBbLXF8LS1xdWlldF0gWzxzdGFzaD5dIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTgKK21zZ2lkICJnaXQgc3Rhc2ggYXBwbHkgWy0taW5kZXhdIFstcXwtLXF1aWV0XSBbPHN0YXNoPl0iCittc2dzdHIgImdpdCBzdGFzaCBhcHBseSBbLS1pbmRleF0gWy1xfC0tcXVpZXRdIFs8c3Rhc2g+XSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjczCittc2dpZCAiZ2l0IHN0YXNoIHN0b3JlIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XSBbLXF8LS1xdWlldF0gPGNvbW1pdD4iCittc2dzdHIgImdpdCBzdGFzaCBzdG9yZSBbLW18LS1tZXNzYWdlIDzmtojmga8+XSBbLXF8LS1xdWlldF0gPOaPkOS6pD4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo3OAorbXNnaWQgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPG1lc3NhZ2U+XVxuIgorIiAgICAgICAgICBbLS1dIFs8cGF0aHNwZWM+Li4uXV0iCittc2dzdHIgIiIKKyJnaXQgc3Rhc2ggW3B1c2ggWy1wfC0tcGF0Y2hdIFsta3wtLVtuby1da2VlcC1pbmRleF0gWy1xfC0tcXVpZXRdXG4iCisiICAgICAgICAgIFstdXwtLWluY2x1ZGUtdW50cmFja2VkXSBbLWF8LS1hbGxdIFstbXwtLW1lc3NhZ2UgPOa2iOaBrz5dXG4iCisiICAgICAgICAgIFstLV0gWzzot6/lvpHopo/moLw+Li4uXV0iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSBzdGFzaC1saWtlIGNvbW1pdCIKK21zZ3N0ciAiJyVzJyDkuI3lg4/mmK/kuIDlgIvlhLLol4/mj5DkuqQiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDolcyIKK21zZ3N0ciAi5oyH5a6a5LqG5aSq5aSa55qE54mI5pys77yaJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNjIgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NDkKK21zZ2lkICJObyBzdGFzaCBlbnRyaWVzIGZvdW5kLiIKK21zZ3N0ciAi5pyq55m854++5YSy6JeP5qKd55uu44CCIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIHJlZmVyZW5jZSIKK21zZ3N0ciAiJXMg5LiN5piv5LiA5YCL5pyJ5pWI55qE5byV55So5ZCNIgorCisjOiBidWlsdGluL3N0YXNoLmM6MjI1IGdpdC1sZWdhY3ktc3Rhc2guc2g6NzUKK21zZ2lkICJnaXQgc3Rhc2ggY2xlYXIgd2l0aCBwYXJhbWV0ZXJzIGlzIHVuaW1wbGVtZW50ZWQiCittc2dzdHIgImdpdCBzdGFzaCBjbGVhciDkuI3mlK/mj7Tlj4PmlbgiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0MDQKK21zZ2lkICJjYW5ub3QgYXBwbHkgYSBzdGFzaCBpbiB0aGUgbWlkZGxlIG9mIGEgbWVyZ2UiCittc2dzdHIgIueEoeazleWcqOWQiOS9temBjueoi+Wll+eUqOWEsuiXjyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZ2VuZXJhdGUgZGlmZiAlc14hLiIKK21zZ3N0ciAi54Sh5rOV55Sf5oiQ5beu55WwICVzXiEuIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDIyCittc2dpZCAiY29uZmxpY3RzIGluIGluZGV4LlRyeSB3aXRob3V0IC0taW5kZXguIgorbXNnc3RyICLntKLlvJXkuK3mnInooZ3nqoHjgILlmJfoqabkuI3nlKggLS1pbmRleOOAgiIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQyOAorbXNnaWQgImNvdWxkIG5vdCBzYXZlIGluZGV4IHRyZWUiCittc2dzdHIgIuS4jeiDveWEsuWtmOe0ouW8leaouSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjQzNworbXNnaWQgImNvdWxkIG5vdCByZXN0b3JlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHN0YXNoIgorbXNnc3RyICLnhKHms5Xlvp7lhLLol4/mop3nm67kuK3lvqnljp/mnKrov73ouaTmqpTmoYgiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo0NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiTWVyZ2luZyAlcyB3aXRoICVzIgorbXNnc3RyICLmraPlnKjlkIjkvbUgJXMg5ZKMICVzIgorCisjOiBidWlsdGluL3N0YXNoLmM6NDYxIGdpdC1sZWdhY3ktc3Rhc2guc2g6NjgxCittc2dpZCAiSW5kZXggd2FzIG5vdCB1bnN0YXNoZWQuIgorbXNnc3RyICLntKLlvJXmnKrlvp7lhLLol4/kuK3lvqnljp/jgIIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1MjIgYnVpbHRpbi9zdGFzaC5jOjYyMQorbXNnaWQgImF0dGVtcHQgdG8gcmVjcmVhdGUgdGhlIGluZGV4IgorbXNnc3RyICLlmJfoqabph43lu7rntKLlvJUiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo1NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRHJvcHBlZCAlcyAoJXMpIgorbXNnc3RyICLmjajmo4TkuoYgJXPvvIglc++8iSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCittc2dzdHIgIiVz77ya54Sh5rOV5o2o5qOE5YSy6JeP5qKd55uuIgorCisjOiBidWlsdGluL3N0YXNoLmM6NTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgc3Rhc2ggcmVmZXJlbmNlIgorbXNnc3RyICInJXMnIOS4jeaYr+S4gOWAi+WEsuiXj+W8leeUqCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjYzMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjY5NQorbXNnaWQgIlRoZSBzdGFzaCBlbnRyeSBpcyBrZXB0IGluIGNhc2UgeW91IG5lZWQgaXQgYWdhaW4uIgorbXNnc3RyICLlhLLol4/mop3nm67ooqvkv53nlZnku6Xlgpnmgqjlho3mrKHpnIDopoHjgIIiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo2NTYgZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MTMKK21zZ2lkICJObyBicmFuY2ggbmFtZSBzcGVjaWZpZWQiCittc2dzdHIgIuacquaMh+WumuWIhuaUr+WQjSIKKworIzogYnVpbHRpbi9zdGFzaC5jOjc5NiBidWlsdGluL3N0YXNoLmM6ODMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbm5vdCB1cGRhdGUgJXMgd2l0aCAlcyIKK21zZ3N0ciAi54Sh5rOV55SoICUyJHMg5pu05pawICUxJHMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo4MTQgYnVpbHRpbi9zdGFzaC5jOjE0NzggYnVpbHRpbi9zdGFzaC5jOjE1NDMKK21zZ2lkICJzdGFzaCBtZXNzYWdlIgorbXNnc3RyICLlhLLol4/oqqrmmI4iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzo4MjQKK21zZ2lkICJcImdpdCBzdGFzaCBzdG9yZVwiIHJlcXVpcmVzIG9uZSA8Y29tbWl0PiBhcmd1bWVudCIKK21zZ3N0ciAiXCJnaXQgc3Rhc2ggc3RvcmVcIiDpnIDopoHkuIDlgIsgPOaPkOS6pD4g5Y+D5pW4IgorCisjOiBidWlsdGluL3N0YXNoLmM6MTA0OSBnaXQtbGVnYWN5LXN0YXNoLnNoOjIxOAorbXNnaWQgIk5vIGNoYW5nZXMgc2VsZWN0ZWQiCittc2dzdHIgIuaykuaciemBuOaTh+iuiuabtCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjExNDkgZ2l0LWxlZ2FjeS1zdGFzaC5zaDoxNTAKK21zZ2lkICJZb3UgZG8gbm90IGhhdmUgdGhlIGluaXRpYWwgY29tbWl0IHlldCIKK21zZ3N0ciAi5oKo5bCa5pyq5bu656uL5Yid5aeL5o+Q5LqkIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE3NiBnaXQtbGVnYWN5LXN0YXNoLnNoOjE2NQorbXNnaWQgIkNhbm5vdCBzYXZlIHRoZSBjdXJyZW50IGluZGV4IHN0YXRlIgorbXNnc3RyICLnhKHms5XlhLLlrZjnm67liY3ntKLlvJXni4DmhYsiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMTg1IGdpdC1sZWdhY3ktc3Rhc2guc2g6MTgwCittc2dpZCAiQ2Fubm90IHNhdmUgdGhlIHVudHJhY2tlZCBmaWxlcyIKK21zZ3N0ciAi54Sh5rOV5YSy5a2Y5pyq6L+96Lmk5qqU5qGIIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTE5NiBidWlsdGluL3N0YXNoLmM6MTIwNSBnaXQtbGVnYWN5LXN0YXNoLnNoOjIwMQorIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDoyMTQKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCB3b3JrdHJlZSBzdGF0ZSIKK21zZ3N0ciAi54Sh5rOV5YSy5a2Y55uu5YmN5bel5L2c5Y2A54uA5oWLIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTIzMyBnaXQtbGVnYWN5LXN0YXNoLnNoOjIzNAorbXNnaWQgIkNhbm5vdCByZWNvcmQgd29ya2luZyB0cmVlIHN0YXRlIgorbXNnc3RyICLkuI3og73oqJjpjITlt6XkvZzljYDni4DmhYsiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMjgyIGdpdC1sZWdhY3ktc3Rhc2guc2g6MzM4Cittc2dpZCAiQ2FuJ3QgdXNlIC0tcGF0Y2ggYW5kIC0taW5jbHVkZS11bnRyYWNrZWQgb3IgLS1hbGwgYXQgdGhlIHNhbWUgdGltZSIKK21zZ3N0ciAi5LiN6IO95ZCM5pmC5L2/55So5Y+D5pW4IC0tcGF0Y2gg5ZKMIC0taW5jbHVkZS11bnRyYWNrZWQg5oiWIC0tYWxsIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTI5OAorbXNnaWQgIkRpZCB5b3UgZm9yZ2V0IHRvICdnaXQgYWRkJz8iCittc2dzdHIgIuaCqOaYr+WQpuW/mOS6huWft+ihjCAnZ2l0IGFkZCfvvJ8iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzEzIGdpdC1sZWdhY3ktc3Rhc2guc2g6MzQ2Cittc2dpZCAiTm8gbG9jYWwgY2hhbmdlcyB0byBzYXZlIgorbXNnc3RyICLmspLmnInopoHlhLLlrZjnmoTmnKzmqZ/kv67mlLkiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxMzIwIGdpdC1sZWdhY3ktc3Rhc2guc2g6MzUxCittc2dpZCAiQ2Fubm90IGluaXRpYWxpemUgc3Rhc2giCittc2dzdHIgIueEoeazleWIneWni+WMluWEsuiXjyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzMzUgZ2l0LWxlZ2FjeS1zdGFzaC5zaDozNTUKK21zZ2lkICJDYW5ub3Qgc2F2ZSB0aGUgY3VycmVudCBzdGF0dXMiCittc2dzdHIgIueEoeazleWEsuWtmOebruWJjeeLgOaFiyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjEzNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2F2ZWQgd29ya2luZyBkaXJlY3RvcnkgYW5kIGluZGV4IHN0YXRlICVzIgorbXNnc3RyICLlhLLlrZjlt6XkvZznm67pjITlkozntKLlvJXni4DmhYsgJXMiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDMwIGdpdC1sZWdhY3ktc3Rhc2guc2g6Mzg1Cittc2dpZCAiQ2Fubm90IHJlbW92ZSB3b3JrdHJlZSBjaGFuZ2VzIgorbXNnc3RyICLnhKHms5XliKrpmaTlt6XkvZzljYDorormm7QiCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDY5IGJ1aWx0aW4vc3Rhc2guYzoxNTM0Cittc2dpZCAia2VlcCBpbmRleCIKK21zZ3N0ciAi5L+d5oyB57Si5byVIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTQ3MSBidWlsdGluL3N0YXNoLmM6MTUzNgorbXNnaWQgInN0YXNoIGluIHBhdGNoIG1vZGUiCittc2dzdHIgIuS7peS/ruijnOaqlOaooeW8j+WEsuiXjyIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NzIgYnVpbHRpbi9zdGFzaC5jOjE1MzcKK21zZ2lkICJxdWlldCBtb2RlIgorbXNnc3RyICLpnZzpu5jmqKHlvI8iCisKKyM6IGJ1aWx0aW4vc3Rhc2guYzoxNDc0IGJ1aWx0aW4vc3Rhc2guYzoxNTM5Cittc2dpZCAiaW5jbHVkZSB1bnRyYWNrZWQgZmlsZXMgaW4gc3Rhc2giCittc2dzdHIgIuWEsuiXj+S4reWMheWQq+acqui/vei5pOaqlOahiCIKKworIzogYnVpbHRpbi9zdGFzaC5jOjE0NzYgYnVpbHRpbi9zdGFzaC5jOjE1NDEKK21zZ2lkICJpbmNsdWRlIGlnbm9yZSBmaWxlcyIKK21zZ3N0ciAi5YyF5ZCr5b+955Wl55qE5qqU5qGIIgorCisjOiBidWlsdGluL3N0YXNoLmM6MTYwMAorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZXhlYyAlcyIKK21zZ3N0ciAi5LiN6IO95Z+36KGMICVzIgorCisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzoxOAorbXNnaWQgImdpdCBzdHJpcHNwYWNlIFstcyB8IC0tc3RyaXAtY29tbWVudHNdIgorbXNnc3RyICJnaXQgc3RyaXBzcGFjZSBbLXMgfCAtLXN0cmlwLWNvbW1lbnRzXSIKKworIzogYnVpbHRpbi9zdHJpcHNwYWNlLmM6MTkKK21zZ2lkICJnaXQgc3RyaXBzcGFjZSBbLWMgfCAtLWNvbW1lbnQtbGluZXNdIgorbXNnc3RyICJnaXQgc3RyaXBzcGFjZSBbLWMgfCAtLWNvbW1lbnQtbGluZXNdIgorCisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzozNworbXNnaWQgInNraXAgYW5kIHJlbW92ZSBhbGwgbGluZXMgc3RhcnRpbmcgd2l0aCBjb21tZW50IGNoYXJhY3RlciIKK21zZ3N0ciAi6Lez6YGO5ZKM56e76Zmk5omA5pyJ55qE5YKZ6Ki76KGMIgorCisjOiBidWlsdGluL3N0cmlwc3BhY2UuYzo0MAorbXNnaWQgInByZXBlbmQgY29tbWVudCBjaGFyYWN0ZXIgYW5kIHNwYWNlIHRvIGVhY2ggbGluZSIKK21zZ3N0ciAi54K65q+P5LiA6KGM55qE6KGM6aaW5paw5aKe5YKZ6Ki756ym5ZKM56m65qC8IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NDcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiRXhwZWN0aW5nIGEgZnVsbCByZWYgbmFtZSwgZ290ICVzIgorbXNnc3RyICLmnJ/mnJvkuIDlgIvlrozmlbTnmoTlvJXnlKjlkI3nqLHvvIzljbvlvpfliLAgJXMiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NAorbXNnaWQgInN1Ym1vZHVsZS0taGVscGVyIHByaW50LWRlZmF1bHQtcmVtb3RlIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAic3VibW9kdWxlLS1oZWxwZXIgcHJpbnQtZGVmYXVsdC1yZW1vdGUg5LiN5bi25Y+D5pW4IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdHJpcCBvbmUgY29tcG9uZW50IG9mZiB1cmwgJyVzJyIKK21zZ3N0ciAi54Sh5rOV5b6eIHVybCAnJXMnIOWJnembouS4gOWAi+WFg+S7tiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxMCBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5NQorbXNnaWQgImFsdGVybmF0aXZlIGFuY2hvciBmb3IgcmVsYXRpdmUgcGF0aHMiCittc2dzdHIgIuebuOWwjei3r+W+keeahOabv+S7o+mMqOiomO+8iGFuY2hvcu+8iSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjQxNQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBsaXN0IFstLXByZWZpeD08cGF0aD5dIFs8cGF0aD4uLi5dIgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgbGlzdCBbLS1wcmVmaXg9POi3r+W+kT5dIFs86Lev5b6RPi4uLl0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo0NzIgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjYzMAorIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY1MworIywgYy1mb3JtYXQKK21zZ2lkICJObyB1cmwgZm91bmQgZm9yIHN1Ym1vZHVsZSBwYXRoICclcycgaW4gLmdpdG1vZHVsZXMiCittc2dzdHIgIuWcqCAuZ2l0bW9kdWxlcyDkuK3mnKrmib7liLDlrZDmqKHntYQgJyVzJyDnmoQgdXJsIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVudGVyaW5nICclcydcbiIKK21zZ3N0ciAi6YCy5YWlICclcydcbiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjUyNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicnVuX2NvbW1hbmQgcmV0dXJuZWQgbm9uLXplcm8gc3RhdHVzIGZvciAlc1xuIgorIi4iCittc2dzdHIgIiIKKyLlsI0gJXMg5Z+36KGMIHJ1bl9jb21tYW5kIOi/lOWbnumdnumbtuWAvOOAglxuIgorIi4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJ1bl9jb21tYW5kIHJldHVybmVkIG5vbi16ZXJvIHN0YXR1cyB3aGlsZSByZWN1cnNpbmcgaW4gdGhlIG5lc3RlZCAiCisic3VibW9kdWxlcyBvZiAlc1xuIgorIi4iCittc2dzdHIgIiIKKyLlnKjpgZ7ov7QgJXMg55qE5a2Q5qih57WE5Z+36KGMIHJ1bl9jb21tYW5kIOaZgui/lOWbnumdnumbtuWAvOOAglxuIgorIi4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NjUKK21zZ2lkICJTdXBwcmVzcyBvdXRwdXQgb2YgZW50ZXJpbmcgZWFjaCBzdWJtb2R1bGUgY29tbWFuZCIKK21zZ3N0ciAi6Zi75q2i6YCy5YWl5q+P5LiA5YCL5a2Q5qih57WE5oyH5Luk55qE6Ly45Ye6IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NTY3IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDYzCittc2dpZCAiUmVjdXJzZSBpbnRvIG5lc3RlZCBzdWJtb2R1bGVzIgorbXNnc3RyICLpgZ7ov7TpgLLlhaXltYzlpZflrZDmqKHntYTkuK0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo1NzIKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgZm9yZWFjaCBbLS1xdWlldF0gWy0tcmVjdXJzaXZlXSBbLS1dIDxjb21tYW5kPiIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGZvcmVhY2ggWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWy0tXSA85oyH5LukPiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjU5OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY291bGQgbm90IGxvb2sgdXAgY29uZmlndXJhdGlvbiAnJXMnLiBBc3N1bWluZyB0aGlzIHJlcG9zaXRvcnkgaXMgaXRzIG93biAiCisiYXV0aG9yaXRhdGl2ZSB1cHN0cmVhbS4iCittc2dzdHIgIueEoeazleaJvuWIsOioreWumiAnJXMn44CC5YGH5a6a6YCZ5YCL54mI5pys5bqr5piv5YW26Ieq6Lqr55qE5a6Y5pa55LiK5ri444CCIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciB1cmwgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCittc2dzdHIgIueEoeazleeCuuWtkOaooee1hCAnJXMnIOiou+WGiiB1cmwiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo2NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlICclcycgKCVzKSByZWdpc3RlcmVkIGZvciBwYXRoICclcydcbiIKK21zZ3N0ciAi5a2Q5qih57WEICclcyfvvIglc++8ieW3suWwjei3r+W+kSAnJXMnIOiou+WGilxuIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIndhcm5pbmc6IGNvbW1hbmQgdXBkYXRlIG1vZGUgc3VnZ2VzdGVkIGZvciBzdWJtb2R1bGUgJyVzJ1xuIgorbXNnc3RyICLorablkYrvvJrlu7rorbDlrZDmqKHntYQgJyVzJyDkvb/nlKjmjIfku6Tmm7TmlrDmqKHlvI9cbiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjY4OAorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcmVnaXN0ZXIgdXBkYXRlIG1vZGUgZm9yIHN1Ym1vZHVsZSBwYXRoICclcyciCittc2dzdHIgIueEoeazleeCuuWtkOaooee1hCAnJXMnIOiou+WGiuabtOaWsOaooeW8jyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjcxMAorbXNnaWQgIlN1cHByZXNzIG91dHB1dCBmb3IgaW5pdGlhbGl6aW5nIGEgc3VibW9kdWxlIgorbXNnc3RyICLpmLvmraLlrZDmqKHntYTliJ3lp4vljJbnmoTovLjlh7oiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo3MTUKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgaW5pdCBbPG9wdGlvbnM+XSBbPHBhdGg+XSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGluaXQgWzzpgbjpoIU+XSBbPOi3r+W+kT5dIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6Nzg5IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gc3VibW9kdWxlIG1hcHBpbmcgZm91bmQgaW4gLmdpdG1vZHVsZXMgZm9yIHBhdGggJyVzJyIKK21zZ3N0ciAi5ZyoIC5naXRtb2R1bGVzIOS4reaykuacieeZvOePvui3r+W+kSAnJXMnIOeahOWtkOaooee1hOaYoOWwhCIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjgzNworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgcmVzb2x2ZSBIRUFEIHJlZiBpbnNpZGUgdGhlIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICLnhKHms5Xop6PmnpDlrZDmqKHntYQgJyVzJyDnmoQgSEVBRCDlvJXnlKgiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4NjQgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlY3Vyc2UgaW50byBzdWJtb2R1bGUgJyVzJyIKK21zZ3N0ciAi6YGe6L+05a2Q5qih57WEICclcycg5aSx5pWXIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6ODg4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTk5Cittc2dpZCAiU3VwcHJlc3Mgc3VibW9kdWxlIHN0YXR1cyBvdXRwdXQiCittc2dzdHIgIumYu+atouWtkOaooee1hOeLgOaFi+i8uOWHuiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg4OQorbXNnaWQgIiIKKyJVc2UgY29tbWl0IHN0b3JlZCBpbiB0aGUgaW5kZXggaW5zdGVhZCBvZiB0aGUgb25lIHN0b3JlZCBpbiB0aGUgc3VibW9kdWxlICIKKyJIRUFEIgorbXNnc3RyICLkvb/nlKjlhLLlrZjlnKjntKLlvJXkuK3nmoTmj5DkuqTvvIzogIzpnZ7lhLLlrZjlnKjlrZDmqKHntYQgSEVBRCDkuK3nmoTmj5DkuqQiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo4OTAKK21zZ2lkICJyZWN1cnNlIGludG8gbmVzdGVkIHN1Ym1vZHVsZXMiCittc2dzdHIgIumBnui/tOmAsuWFpeW1jOWll+WtkOaooee1hOS4rSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjg5NQorbXNnaWQgImdpdCBzdWJtb2R1bGUgc3RhdHVzIFstLXF1aWV0XSBbLS1jYWNoZWRdIFstLXJlY3Vyc2l2ZV0gWzxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUgc3RhdHVzIFstLXF1aWV0XSBbLS1jYWNoZWRdIFstLXJlY3Vyc2l2ZV0gWzzot6/lvpE+Li4uXSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjkxOQorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBuYW1lIDxwYXRoPiIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIG5hbWUgPOi3r+W+kT4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzo5ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3luY2hyb25pemluZyBzdWJtb2R1bGUgdXJsIGZvciAnJXMnXG4iCittc2dzdHIgIueCuiAnJXMnIOWQjOatpeWtkOaooee1hCB1cmxcbiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjk4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVnaXN0ZXIgdXJsIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgorbXNnc3RyICLnhKHms5XngrrlrZDmqKHntYTot6/lvpEgJyVzJyDoqLvlhoogdXJsIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTAwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IHRoZSBkZWZhdWx0IHJlbW90ZSBmb3Igc3VibW9kdWxlICclcyciCittc2dzdHIgIueEoeazleW+l+WIsOWtkOaooee1hCAnJXMnIOeahOmgkOioremBoOerr+mXnOiBryIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEwMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHVwZGF0ZSByZW1vdGUgZm9yIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICLnhKHms5XngrrlrZDmqKHntYQgJyVzJyDmm7TmlrDpgaDnq6/pl5zoga8iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDYxCittc2dpZCAiU3VwcHJlc3Mgb3V0cHV0IG9mIHN5bmNocm9uaXppbmcgc3VibW9kdWxlIHVybCIKK21zZ3N0ciAi6Zi75q2i5a2Q5qih57WEIHVybCDlkIzmraXnmoTovLjlh7oiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMDY4Cittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHN5bmMgWy0tcXVpZXRdIFstLXJlY3Vyc2l2ZV0gWzxwYXRoPl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBzeW5jIFstLXF1aWV0XSBbLS1yZWN1cnNpdmVdIFs86Lev5b6RPl0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTdWJtb2R1bGUgd29yayB0cmVlICclcycgY29udGFpbnMgYSAuZ2l0IGRpcmVjdG9yeSAodXNlICdybSAtcmYnIGlmIHlvdSAiCisicmVhbGx5IHdhbnQgdG8gcmVtb3ZlIGl0IGluY2x1ZGluZyBhbGwgb2YgaXRzIGhpc3RvcnkpIgorbXNnc3RyICIiCisi5a2Q5qih57WE5bel5L2c5Y2AICclcycg5YyF5ZCr5LiA5YCLIC5naXQg55uu6YyE77yI5aaC5p6c5oKo56K66ZyA5Yiq6Zmk5a6D5Y+K5YW25YWo6YOo5q235Y+y77yM5L2/55SoICdybSAiCisiLXJmJyDmjIfku6TvvIkiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTdWJtb2R1bGUgd29yayB0cmVlICclcycgY29udGFpbnMgbG9jYWwgbW9kaWZpY2F0aW9uczsgdXNlICctZicgdG8gZGlzY2FyZCAiCisidGhlbSIKK21zZ3N0ciAi5a2Q5qih57WE5bel5L2c5Y2AICclcycg5YyF5ZCr5pys5qmf5L+u5pS577yb5L2/55SoICctZicg5o2o5qOE5a6D5YCRIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbGVhcmVkIGRpcmVjdG9yeSAnJXMnXG4iCittc2dzdHIgIuW3sua4hemZpOebrumMhCAnJXMnXG4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCByZW1vdmUgc3VibW9kdWxlIHdvcmsgdHJlZSAnJXMnXG4iCittc2dzdHIgIueEoeazleenu+mZpOWtkOaooee1hOW3peS9nOWNgCAnJXMnXG4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBjcmVhdGUgZW1wdHkgc3VibW9kdWxlIGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAi5LiN6IO95bu656uL56m655qE5a2Q5qih57WE55uu6YyEICVzIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTE3MQorIywgYy1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgJyVzJyAoJXMpIHVucmVnaXN0ZXJlZCBmb3IgcGF0aCAnJXMnXG4iCittc2dzdHIgIuWtkOaooee1hCAnJXMn77yIJXPvvInmnKrlsI3ot6/lvpEgJyVzJyDoqLvlhopcbiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDAKK21zZ2lkICJSZW1vdmUgc3VibW9kdWxlIHdvcmtpbmcgdHJlZXMgZXZlbiBpZiB0aGV5IGNvbnRhaW4gbG9jYWwgY2hhbmdlcyIKK21zZ3N0ciAi5Yiq6Zmk5a2Q5qih57WE5bel5L2c5Y2A77yM5Y2z5L2/5YyF5ZCr5pys5qmf5L+u5pS5IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTIwMQorbXNnaWQgIlVucmVnaXN0ZXIgYWxsIHN1Ym1vZHVsZXMiCittc2dzdHIgIuWwh+aJgOacieWtkOaooee1hOWPlua2iOiou+WGiiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjEyMDYKK21zZ2lkICIiCisiZ2l0IHN1Ym1vZHVsZSBkZWluaXQgWy0tcXVpZXRdIFstZiB8IC0tZm9yY2VdIFstLWFsbCB8IFstLV0gWzxwYXRoPi4uLl1dIgorbXNnc3RyICIiCisiZ2l0IHN1Ym1vZHVsZSBkZWluaXQgWy0tcXVpZXRdIFstZiB8IC0tZm9yY2VdIFstLWFsbCB8IFstLV0gWzzot6/lvpE+Li4uXV0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjIwCittc2dpZCAiVXNlICctLWFsbCcgaWYgeW91IHJlYWxseSB3YW50IHRvIGRlaW5pdGlhbGl6ZSBhbGwgc3VibW9kdWxlcyIKK21zZ3N0ciAi5aaC5p6c5oKo56K65a+m5oOz6KaB5bCN5omA5pyJ5a2Q5qih57WE5Z+36KGM5Y+W5raI5Yid5aeL5YyW77yM6KuL5L2/55SoICctLWFsbCciCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMjg5Cittc2dpZCAiIgorIkFuIGFsdGVybmF0ZSBjb21wdXRlZCBmcm9tIGEgc3VwZXJwcm9qZWN0J3MgYWx0ZXJuYXRlIGlzIGludmFsaWQuXG4iCisiVG8gYWxsb3cgR2l0IHRvIGNsb25lIHdpdGhvdXQgYW4gYWx0ZXJuYXRlIGluIHN1Y2ggYSBjYXNlLCBzZXRcbiIKKyJzdWJtb2R1bGUuYWx0ZXJuYXRlRXJyb3JTdHJhdGVneSB0byAnaW5mbycgb3IsIGVxdWl2YWxlbnRseSwgY2xvbmUgd2l0aFxuIgorIictLXJlZmVyZW5jZS1pZi1hYmxlJyBpbnN0ZWFkIG9mICctLXJlZmVyZW5jZScuIgorbXNnc3RyICIiCisi5b6e5LiK57Sa5bCI5qGI55qE5YKZ55So54mI5pys5bqr6KiI566X5b6X5Ye655qE5YKZ55So54mI5pys5bqr54Sh5pWI44CCXG4iCisi6YCZ56iu5oOF5rOB5LiL77yM6KuL6Kit5a6aIHN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IOeCuiAnaW5mbydcbiIKKyLku6XlhYHoqLEgR2l0IOS4jeeUqOWCmeeUqOeJiOacrOW6q+ikh+ijve+8jOS6puWPr+S9v+eUqOetieaViOeahCAnLS1yZWZlcmVuY2UtaWYtYWJsZSdcbiIKKyLogIzpnZ4gJy0tcmVmZXJlbmNlJyDopIfoo73jgIIiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzI4IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzMxCisjLCBjLWZvcm1hdAorbXNnaWQgInN1Ym1vZHVsZSAnJXMnIGNhbm5vdCBhZGQgYWx0ZXJuYXRlOiAlcyIKK21zZ3N0ciAi5a2Q5qih57WEICclcycg5LiN6IO95paw5aKe54mI5pys5bqr5YKZ6YG477yaJXMiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzY3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZhbHVlICclcycgZm9yIHN1Ym1vZHVsZS5hbHRlcm5hdGVFcnJvclN0cmF0ZWd5IGlzIG5vdCByZWNvZ25pemVkIgorbXNnc3RyICLkuI3og73orZjliKUgc3VibW9kdWxlLmFsdGVybmF0ZUVycm9yU3RyYXRlZ3kg55qE5Y+W5YC8ICclcyciCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxMzc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlZhbHVlICclcycgZm9yIHN1Ym1vZHVsZS5hbHRlcm5hdGVMb2NhdGlvbiBpcyBub3QgcmVjb2duaXplZCIKK21zZ3N0ciAi5LiN6IO96K2Y5YilIHN1Ym1vZHVsZS5hbHRlcm5hdGVMb2NhaW9uIOeahOWPluWAvCAnJXMnIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTM5OAorbXNnaWQgIndoZXJlIHRoZSBuZXcgc3VibW9kdWxlIHdpbGwgYmUgY2xvbmVkIHRvIgorbXNnc3RyICLmlrDnmoTlrZDmqKHntYTlsIfopoHopIfoo73nmoTot6/lvpEiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDAxCittc2dpZCAibmFtZSBvZiB0aGUgbmV3IHN1Ym1vZHVsZSIKK21zZ3N0ciAi5paw5a2Q5qih57WE55qE5ZCN56ixIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQwNAorbXNnaWQgInVybCB3aGVyZSB0byBjbG9uZSB0aGUgc3VibW9kdWxlIGZyb20iCittc2dzdHIgIuikh+ijveWtkOaooee1hOeahCB1cmwg5L2N5Z2AIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxMgorbXNnaWQgImRlcHRoIGZvciBzaGFsbG93IGNsb25lcyIKK21zZ3N0ciAi5re66KSH6KO955qE5rex5bqmIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQxNSBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkyNAorbXNnaWQgImZvcmNlIGNsb25pbmcgcHJvZ3Jlc3MiCittc2dzdHIgIuW8t+WItumhr+ekuuikh+ijvemAsuW6piIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE0MTcgYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjYKK21zZ2lkICJkaXNhbGxvdyBjbG9uaW5nIGludG8gbm9uLWVtcHR5IGRpcmVjdG9yeSIKK21zZ3N0ciAi5LiN5YWB6Kix6KSH6KO96Iez6Z2e56m655m955uu6YyEIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQyNAorbXNnaWQgIiIKKyJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY2xvbmUgWy0tcHJlZml4PTxwYXRoPl0gWy0tcXVpZXRdIFstLXJlZmVyZW5jZSAiCisiPHJlcG9zaXRvcnk+XSBbLS1uYW1lIDxuYW1lPl0gWy0tZGVwdGggPGRlcHRoPl0gWy0tc2luZ2xlLWJyYW5jaF0gLS11cmwgIgorIjx1cmw+IC0tcGF0aCA8cGF0aD4iCittc2dzdHIgIiIKKyJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY2xvbmUgWy0tcHJlZml4PTzot6/lvpE+XSBbLS1xdWlldF0gWy0tcmVmZXJlbmNlIDzniYjmnKzluqsiCisiPl0gWy0tbmFtZSA85ZCN5a2XPl0gWy0tZGVwdGggPOa3seW6pj5dIFstLXNpbmdsZS1icmFuY2hdIC0tdXJsIDx1cmw+IC0tcGF0aCA86LevIgorIuW+kT4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInJlZnVzaW5nIHRvIGNyZWF0ZS91c2UgJyVzJyBpbiBhbm90aGVyIHN1Ym1vZHVsZSdzIGdpdCBkaXIiCittc2dzdHIgIuaLkue1leWcqOWFtuS7luWtkOaooee1hOeahCBnaXQg6Lev5b6R5bu656uL77yP5L2/55So44CMJXPjgI0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDYwCisjLCBjLWZvcm1hdAorbXNnaWQgImNsb25lIG9mICclcycgaW50byBzdWJtb2R1bGUgcGF0aCAnJXMnIGZhaWxlZCIKK21zZ3N0ciAi54Sh5rOV6KSH6KO9ICclcycg5Yiw5a2Q5qih57WE6Lev5b6RICclcyciCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNDY0CisjLCBjLWZvcm1hdAorbXNnaWQgImRpcmVjdG9yeSBub3QgZW1wdHk6ICclcyciCittc2dzdHIgIuebrumMhOS4jeaYr+epuueahO+8muOAjCVz44CNIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTQ3NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZ2V0IHN1Ym1vZHVsZSBkaXJlY3RvcnkgZm9yICclcyciCittc2dzdHIgIueEoeazleW+l+WIsCAnJXMnIOeahOWtkOaooee1hOebrumMhCIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE1MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCB1cGRhdGUgbW9kZSAnJXMnIGZvciBzdWJtb2R1bGUgcGF0aCAnJXMnIgorbXNnc3RyICLlrZDmqKHntYQgJyUyJHMnIOeahOabtOaWsOaooeW8jyAnJTEkcycg54Sh5pWIIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIHVwZGF0ZSBtb2RlICclcycgY29uZmlndXJlZCBmb3Igc3VibW9kdWxlIHBhdGggJyVzJyIKK21zZ3N0ciAi54K65a2Q5qih57WEICclMiRzJyDoqK3lrprnmoTmm7TmlrDmqKHlvI8gJyUxJHMnIOeEoeaViCIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3VibW9kdWxlIHBhdGggJyVzJyBub3QgaW5pdGlhbGl6ZWQiCittc2dzdHIgIuWtkOaooee1hCAnJXMnIOWwmuacquWIneWni+WMliIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2MjEKK21zZ2lkICJNYXliZSB5b3Ugd2FudCB0byB1c2UgJ3VwZGF0ZSAtLWluaXQnPyIKK21zZ3N0ciAi5Lmf6Kix5oKo5oOz6KaB5Z+36KGMICd1cGRhdGUgLS1pbml0J++8nyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBpbmcgdW5tZXJnZWQgc3VibW9kdWxlICVzIgorbXNnc3RyICLnlaXpgY7mnKrlkIjkvbXnmoTlrZDmqKHntYQgJXMiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxNjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXBwaW5nIHN1Ym1vZHVsZSAnJXMnIgorbXNnc3RyICLnlaXpgY7lrZDmqKHntYQgJyVzJyIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE4MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIGNsb25lICclcycuIFJldHJ5IHNjaGVkdWxlZCIKK21zZ3N0ciAi6KSH6KO9ICclcycg5aSx5pWX44CC5oyJ6KiI5YqD6YeN6KmmIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gY2xvbmUgJyVzJyBhIHNlY29uZCB0aW1lLCBhYm9ydGluZyIKK21zZ3N0ciAi56ys5LqM5qyh5ZiX6Kmm6KSH6KO9ICclcycg5aSx5pWX77yM6Zui6ZaLIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkwMyBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE0OQorbXNnaWQgInBhdGggaW50byB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICLliLDlt6XkvZzljYDnmoTot6/lvpEiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTA2Cittc2dpZCAicGF0aCBpbnRvIHRoZSB3b3JraW5nIHRyZWUsIGFjcm9zcyBuZXN0ZWQgc3VibW9kdWxlIGJvdW5kYXJpZXMiCittc2dzdHIgIuW3peS9nOWNgOS4reeahOi3r+W+ke+8jOmBnui/tOW1jOWll+WtkOaooee1hCIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MTAKK21zZ2lkICJyZWJhc2UsIG1lcmdlLCBjaGVja291dCBvciBub25lIgorbXNnc3RyICJyZWJhc2XjgIFtZXJnZeOAgWNoZWNrb3V0IOaIliBub25lIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxNgorbXNnaWQgIkNyZWF0ZSBhIHNoYWxsb3cgY2xvbmUgdHJ1bmNhdGVkIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHJldmlzaW9ucyIKK21zZ3N0ciAi5bu656uL5LiA5YCL5oyH5a6a5rex5bqm55qE5re66KSH6KO9IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTkxOQorbXNnaWQgInBhcmFsbGVsIGpvYnMiCittc2dzdHIgIuS4pueZvOS7u+WLmSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjEKK21zZ2lkICJ3aGV0aGVyIHRoZSBpbml0aWFsIGNsb25lIHNob3VsZCBmb2xsb3cgdGhlIHNoYWxsb3cgcmVjb21tZW5kYXRpb24iCittc2dzdHIgIuWIneWni+ikh+ijveaYr+WQpuaHieipsumBteWuiOaOqOiWpueahOa3uuikh+ijvemBuOmghSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjE5MjIKK21zZ2lkICJkb24ndCBwcmludCBjbG9uaW5nIHByb2dyZXNzIgorbXNnc3RyICLkuI3opoHovLjlh7ropIfoo73pgLLluqYiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTMzCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9PHBhdGg+XSBbPHBhdGg+Li4uXSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIHVwZGF0ZS1jbG9uZSBbLS1wcmVmaXg9POi3r+W+kT5dIFs86Lev5b6RPi4uLl0iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoxOTQ2Cittc2dpZCAiYmFkIHZhbHVlIGZvciB1cGRhdGUgcGFyYW1ldGVyIgorbXNnc3RyICJ1cGRhdGUg5Y+D5pW45Y+W5YC86Yyv6KqkIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MTk5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU3VibW9kdWxlICglcykgYnJhbmNoIGNvbmZpZ3VyZWQgdG8gaW5oZXJpdCBicmFuY2ggZnJvbSBzdXBlcnByb2plY3QsIGJ1dCAiCisidGhlIHN1cGVycHJvamVjdCBpcyBub3Qgb24gYW55IGJyYW5jaCIKK21zZ3N0ciAi5a2Q5qih57WE77yIJXPvvInnmoTliIbmlK/oqK3lrprngrrnubzmib/kuIrntJrlsIjmoYjnmoTliIbmlK/vvIzkvYbmmK/kuIrntJrlsIjmoYjkuI3lnKjku7vkvZXliIbmlK/kuIoiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBnZXQgYSByZXBvc2l0b3J5IGhhbmRsZSBmb3Igc3VibW9kdWxlICclcyciCittc2dzdHIgIueEoeazleeNsuW+l+WtkOaooee1hCAnJXMnIOeahOeJiOacrOW6q+WPpeafhCIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIxNTAKK21zZ2lkICJyZWN1cnNlIGludG8gc3VibW9kdWxlcyIKK21zZ3N0ciAi5Zyo5a2Q5qih57WE5Lit6YGe6L+0IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjE1NgorbXNnaWQgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzxvcHRpb25zPl0gWzxwYXRoPi4uLl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBhYnNvcmItZ2l0LWRpcnMgWzzpgbjpoIU+XSBbPOi3r+W+kT4uLi5dIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjIxMgorbXNnaWQgImNoZWNrIGlmIGl0IGlzIHNhZmUgdG8gd3JpdGUgdG8gdGhlIC5naXRtb2R1bGVzIGZpbGUiCittc2dzdHIgIuaqouafpeWvq+WFpSAuZ2l0bW9kdWxlcyDmqpTmoYjmmK/lkKblronlhagiCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjE1Cittc2dpZCAidW5zZXQgdGhlIGNvbmZpZyBpbiB0aGUgLmdpdG1vZHVsZXMgZmlsZSIKK21zZ3N0ciAi5Y+W5raIIC5naXRtb2R1bGVzIOaqlOahiOS4reeahOioreWumiIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjAKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIDxuYW1lPiBbPHZhbHVlPl0iCittc2dzdHIgImdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgPOWQjeeosT4gWzzlgLw+XSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyMjEKK21zZ2lkICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tdW5zZXQgPG5hbWU+IgorbXNnc3RyICJnaXQgc3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIC0tdW5zZXQgPOWQjeeosT4iCisKKyM6IGJ1aWx0aW4vc3VibW9kdWxlLS1oZWxwZXIuYzoyMjIyCittc2dpZCAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLWNoZWNrLXdyaXRlYWJsZSIKK21zZ3N0ciAiZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLWNoZWNrLXdyaXRlYWJsZSIKKworIzogYnVpbHRpbi9zdWJtb2R1bGUtLWhlbHBlci5jOjIyNDEgZ2l0LXN1Ym1vZHVsZS5zaDoxNzQKKyMsIHNoLWZvcm1hdAorbXNnaWQgInBsZWFzZSBtYWtlIHN1cmUgdGhhdCB0aGUgLmdpdG1vZHVsZXMgZmlsZSBpcyBpbiB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICLoq4vnorroqo0gLmdpdG1vZHVsZXMg5qqU5qGI5Zyo5bel5L2c5Y2A6KOhIgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI5MSBnaXQuYzo0MzMgZ2l0LmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3Qgc3VwcG9ydCAtLXN1cGVyLXByZWZpeCIKK21zZ3N0ciAiJXMg5LiN5pSv5o+0IC0tc3VwZXItcHJlZml4IgorCisjOiBidWlsdGluL3N1Ym1vZHVsZS0taGVscGVyLmM6MjI5NworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBhIHZhbGlkIHN1Ym1vZHVsZS0taGVscGVyIHN1YmNvbW1hbmQiCittc2dzdHIgIiclcycg5LiN5piv5LiA5YCL5pyJ5pWI55qEIHN1Ym1vZHVsZS0taGVscGVyIOWtkOaMh+S7pCIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo4Cittc2dpZCAiZ2l0IHN5bWJvbGljLXJlZiBbPG9wdGlvbnM+XSA8bmFtZT4gWzxyZWY+XSIKK21zZ3N0ciAiZ2l0IHN5bWJvbGljLXJlZiBbPOmBuOmghT5dIDzlkI3nqLE+IFs85byV55SoPl0iCisKKyM6IGJ1aWx0aW4vc3ltYm9saWMtcmVmLmM6OQorbXNnaWQgImdpdCBzeW1ib2xpYy1yZWYgLWQgWy1xXSA8bmFtZT4iCittc2dzdHIgImdpdCBzeW1ib2xpYy1yZWYgLWQgWy1xXSA85ZCN56ixPiIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo0MAorbXNnaWQgInN1cHByZXNzIGVycm9yIG1lc3NhZ2UgZm9yIG5vbi1zeW1ib2xpYyAoZGV0YWNoZWQpIHJlZnMiCittc2dzdHIgIuS4jemhr+ekuumdnuespuiZn++8iOWIhumboueahO+8ieW8leeUqOeahOmMr+iqpOioiuaBryIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo0MQorbXNnaWQgImRlbGV0ZSBzeW1ib2xpYyByZWYiCittc2dzdHIgIuWIqumZpOespuiZn+W8leeUqCIKKworIzogYnVpbHRpbi9zeW1ib2xpYy1yZWYuYzo0MgorbXNnaWQgInNob3J0ZW4gcmVmIG91dHB1dCIKK21zZ3N0ciAi57iu55+t5byV55So6Ly45Ye6IgorCisjOiBidWlsdGluL3N5bWJvbGljLXJlZi5jOjQzIGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2MworbXNnaWQgInJlYXNvbiIKK21zZ3N0ciAi5Y6f5ZugIgorCisjOiBidWlsdGluL3N5bWJvbGljLXJlZi5jOjQzIGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2MworbXNnaWQgInJlYXNvbiBvZiB0aGUgdXBkYXRlIgorbXNnc3RyICLmm7TmlrDnmoTljp/lm6AiCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjUKK21zZ2lkICIiCisiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA8bXNnPiB8IC1GIDxmaWxlPl1cbiIKKyJcdFx0PHRhZ25hbWU+IFs8aGVhZD5dIgorbXNnc3RyICIiCisiZ2l0IHRhZyBbLWEgfCAtcyB8IC11IDxrZXktaWQ+XSBbLWZdIFstbSA85raI5oGvPiB8IC1GIDzmqpTmoYg+XVxuIgorIlx0XHQ85qiZ57Gk5ZCNPiBbPOmgrT5dIgorCisjOiBidWlsdGluL3RhZy5jOjI3Cittc2dpZCAiZ2l0IHRhZyAtZCA8dGFnbmFtZT4uLi4iCittc2dzdHIgImdpdCB0YWcgLWQgPOaomeexpOWQjT4uLi4iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjgKK21zZ2lkICIiCisiZ2l0IHRhZyAtbCBbLW5bPG51bT5dXSBbLS1jb250YWlucyA8Y29tbWl0Pl0gWy0tbm8tY29udGFpbnMgPGNvbW1pdD5dIFstLSIKKyJwb2ludHMtYXQgPG9iamVjdD5dXG4iCisiXHRcdFstLWZvcm1hdD08Zm9ybWF0Pl0gWy0tW25vLV1tZXJnZWQgWzxjb21taXQ+XV0gWzxwYXR0ZXJuPi4uLl0iCittc2dzdHIgIiIKKyJnaXQgdGFnIC1sIFstbls85pW45a2XPl1dIFstLWNvbnRhaW5zIDzmj5DkuqQ+XSBbLS1uby1jb250YWlucyA85o+Q5LqkPl0gWy0tcG9pbnRzLSIKKyJhdCA854mp5Lu2Pl1cbiIKKyJcdFx0Wy0tZm9ybWF0PTzmoLzlvI8+XSBbLS1bbm8tXW1lcmdlZCBbPOaPkOS6pD5dXSBbPOaooeW8jz4uLi5dIgorCisjOiBidWlsdGluL3RhZy5jOjMwCittc2dpZCAiZ2l0IHRhZyAtdiBbLS1mb3JtYXQ9PGZvcm1hdD5dIDx0YWduYW1lPi4uLiIKK21zZ3N0ciAiZ2l0IHRhZyAtdiBbLS1mb3JtYXQ9POagvOW8jz5dIDzmqJnnsaTlkI0+Li4uIgorCisjOiBidWlsdGluL3RhZy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInRhZyAnJXMnIG5vdCBmb3VuZC4iCittc2dzdHIgIuacqueZvOePvuaomeexpCAnJXMn44CCIgorCisjOiBidWlsdGluL3RhZy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkIHRhZyAnJXMnICh3YXMgJXMpXG4iCittc2dzdHIgIuW3suWIqumZpOaomeexpCAnJXMn77yI5pu+54K6ICVz77yJXG4iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXcml0ZSBhIG1lc3NhZ2UgZm9yIHRhZzpcbiIKKyIgICVzXG4iCisiTGluZXMgc3RhcnRpbmcgd2l0aCAnJWMnIHdpbGwgYmUgaWdub3JlZC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIui8uOWFpeS4gOWAi+aomeexpOiqquaYju+8mlxuIgorIiAgJXNcbiIKKyLku6UgJyVjJyDplovpoK3nmoTooYzlsIfooqvlv73nlaXjgIJcbiIKKworIzogYnVpbHRpbi90YWcuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldyaXRlIGEgbWVzc2FnZSBmb3IgdGFnOlxuIgorIiAgJXNcbiIKKyJMaW5lcyBzdGFydGluZyB3aXRoICclYycgd2lsbCBiZSBrZXB0OyB5b3UgbWF5IHJlbW92ZSB0aGVtIHlvdXJzZWxmIGlmIHlvdSAiCisid2FudCB0by5cbiIKK21zZ3N0ciAiIgorIlxuIgorIui8uOWFpeS4gOWAi+aomeexpOiqquaYju+8mlxuIgorIiAgJXNcbiIKKyLku6UgJyVjJyDplovpoK3nmoTooYzlsIfooqvkv53nlZnvvIzlpoLmnpzmgqjpoZjmhI/kuZ/lj6/ku6XliKrpmaTlroPlgJHjgIJcbiIKKworIzogYnVpbHRpbi90YWcuYzoxOTgKK21zZ2lkICJ1bmFibGUgdG8gc2lnbiB0aGUgdGFnIgorbXNnc3RyICLnhKHms5XnsL3nvbLmqJnnsaQiCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjAwCittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRhZyBmaWxlIgorbXNnc3RyICLnhKHms5Xlr6vmqJnnsaTmqpTmoYgiCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJZb3UgaGF2ZSBjcmVhdGVkIGEgbmVzdGVkIHRhZy4gVGhlIG9iamVjdCByZWZlcnJlZCB0byBieSB5b3VyIG5ldyB0YWcgaXNcbiIKKyJhbHJlYWR5IGEgdGFnLiBJZiB5b3UgbWVhbnQgdG8gdGFnIHRoZSBvYmplY3QgdGhhdCBpdCBwb2ludHMgdG8sIHVzZTpcbiIKKyJcbiIKKyJcdGdpdCB0YWcgLWYgJXMgJXNee30iCittc2dzdHIgIiIKKyLmgqjlu7rnq4vkuobkuIDlgIvltYzlpZfnmoTmqJnnsaTjgILmgqjnmoTmlrDmqJnnsaTmjIflkJHnmoTnianku7blt7LntpPmmK/kuIDlgIvmqJnnsaTjgILlpoLmnpzmgqjmg7PopoFcbiIKKyLlsI3lhbbmjIflkJHnmoTnm67mqJnlu7rnq4vmqJnnsaTvvIzkvb/nlKjvvJpcbiIKKyJcbiIKKyJcdGdpdCB0YWcgLWYgJXMgJXNee30iCisKKyM6IGJ1aWx0aW4vdGFnLmM6MjMyCittc2dpZCAiYmFkIG9iamVjdCB0eXBlLiIKK21zZ3N0ciAi5aOe55qE54mp5Lu26aGe5Z6L44CCIgorCisjOiBidWlsdGluL3RhZy5jOjI4NAorbXNnaWQgIm5vIHRhZyBtZXNzYWdlPyIKK21zZ3N0ciAi54Sh5qiZ57Gk6Kqq5piO77yfIgorCisjOiBidWlsdGluL3RhZy5jOjI5MQorIywgYy1mb3JtYXQKK21zZ2lkICJUaGUgdGFnIG1lc3NhZ2UgaGFzIGJlZW4gbGVmdCBpbiAlc1xuIgorbXNnc3RyICLmqJnnsaToqqrmmI7ooqvkv53nlZnlnKggJXNcbiIKKworIzogYnVpbHRpbi90YWcuYzo0MDIKK21zZ2lkICJsaXN0IHRhZyBuYW1lcyIKK21zZ3N0ciAi5YiX5Ye65qiZ57Gk5ZCN56ixIgorCisjOiBidWlsdGluL3RhZy5jOjQwNAorbXNnaWQgInByaW50IDxuPiBsaW5lcyBvZiBlYWNoIHRhZyBtZXNzYWdlIgorbXNnc3RyICLmr4/lgIvmqJnnsaToqIrmga/liJfljbAgPG4+IOihjCIKKworIzogYnVpbHRpbi90YWcuYzo0MDYKK21zZ2lkICJkZWxldGUgdGFncyIKK21zZ3N0ciAi5Yiq6Zmk5qiZ57GkIgorCisjOiBidWlsdGluL3RhZy5jOjQwNworbXNnaWQgInZlcmlmeSB0YWdzIgorbXNnc3RyICLpqZforYnmqJnnsaQiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDA5Cittc2dpZCAiVGFnIGNyZWF0aW9uIG9wdGlvbnMiCittc2dzdHIgIuaomeexpOW7uueri+mBuOmghSIKKworIzogYnVpbHRpbi90YWcuYzo0MTEKK21zZ2lkICJhbm5vdGF0ZWQgdGFnLCBuZWVkcyBhIG1lc3NhZ2UiCittc2dzdHIgIumZhOiou+aomeexpO+8jOmcgOimgeS4gOWAi+iqquaYjiIKKworIzogYnVpbHRpbi90YWcuYzo0MTMKK21zZ2lkICJ0YWcgbWVzc2FnZSIKK21zZ3N0ciAi5qiZ57Gk6Kqq5piOIgorCisjOiBidWlsdGluL3RhZy5jOjQxNQorbXNnaWQgImZvcmNlIGVkaXQgb2YgdGFnIG1lc3NhZ2UiCittc2dzdHIgIuW8t+WItue3qOi8r+aomeexpOiqquaYjiIKKworIzogYnVpbHRpbi90YWcuYzo0MTYKK21zZ2lkICJhbm5vdGF0ZWQgYW5kIEdQRy1zaWduZWQgdGFnIgorbXNnc3RyICLpmYToqLvkuKbpmYTliqAgR1BHIOewveWQjeeahOaomeexpCIKKworIzogYnVpbHRpbi90YWcuYzo0MTkKK21zZ2lkICJ1c2UgYW5vdGhlciBrZXkgdG8gc2lnbiB0aGUgdGFnIgorbXNnc3RyICLkvb/nlKjlj6blpJbnmoTnp4HpkbDnsL3lkI3oqbLmqJnnsaQiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDIwCittc2dpZCAicmVwbGFjZSB0aGUgdGFnIGlmIGV4aXN0cyIKK21zZ3N0ciAi5aaC5p6c5a2Y5Zyo77yM5Y+W5Luj54++5pyJ55qE5qiZ57GkIgorCisjOiBidWlsdGluL3RhZy5jOjQyMSBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjkKK21zZ2lkICJjcmVhdGUgYSByZWZsb2ciCittc2dzdHIgIuW7uueri+W8leeUqOaXpeiqjCIKKworIzogYnVpbHRpbi90YWcuYzo0MjMKK21zZ2lkICJUYWcgbGlzdGluZyBvcHRpb25zIgorbXNnc3RyICLmqJnnsaTliJfooajpgbjpoIUiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDI0Cittc2dpZCAic2hvdyB0YWcgbGlzdCBpbiBjb2x1bW5zIgorbXNnc3RyICLku6XliJfnmoTmlrnlvI/poa/npLrmqJnnsaTliJfooagiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDI1IGJ1aWx0aW4vdGFnLmM6NDI3Cittc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgY29udGFpbiB0aGUgY29tbWl0IgorbXNnc3RyICLlj6rliJfljbDljIXlkKvoqbLmj5DkuqTnmoTmqJnnsaQiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDI2IGJ1aWx0aW4vdGFnLmM6NDI4Cittc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgZG9uJ3QgY29udGFpbiB0aGUgY29tbWl0IgorbXNnc3RyICLlj6rliJfljbDkuI3ljIXlkKvoqbLmj5DkuqTnmoTmqJnnsaQiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDI5Cittc2dpZCAicHJpbnQgb25seSB0YWdzIHRoYXQgYXJlIG1lcmdlZCIKK21zZ3N0ciAi5Y+q5YiX5Y2w5bey57aT5ZCI5L2155qE5qiZ57GkIgorCisjOiBidWlsdGluL3RhZy5jOjQzMAorbXNnaWQgInByaW50IG9ubHkgdGFncyB0aGF0IGFyZSBub3QgbWVyZ2VkIgorbXNnc3RyICLlj6rliJfljbDlsJrmnKrlkIjkvbXnmoTmqJnnsaQiCisKKyM6IGJ1aWx0aW4vdGFnLmM6NDM0Cittc2dpZCAicHJpbnQgb25seSB0YWdzIG9mIHRoZSBvYmplY3QiCittc2dzdHIgIuWPquWIl+WNsOaMh+WQkeipsueJqeS7tueahOaomeexpCIKKworIzogYnVpbHRpbi90YWcuYzo0ODIKK21zZ2lkICItLWNvbHVtbiBhbmQgLW4gYXJlIGluY29tcGF0aWJsZSIKK21zZ3N0ciAiLS1jb2x1bW4g5ZKMIC1uIOS4jeebuOWuuSIKKworIzogYnVpbHRpbi90YWcuYzo1MDQKK21zZ2lkICItbiBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIGxpc3QgbW9kZSIKK21zZ3N0ciAiLW4g6YG46aCF5Y+q5YWB6Kix55So5Zyo5YiX6KGo6aGv56S65qih5byPIgorCisjOiBidWlsdGluL3RhZy5jOjUwNgorbXNnaWQgIi0tY29udGFpbnMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCittc2dzdHIgIi0tY29udGFpbnMg6YG46aCF5Y+q5YWB6Kix55So5Zyo5YiX6KGo6aGv56S65qih5byPIgorCisjOiBidWlsdGluL3RhZy5jOjUwOAorbXNnaWQgIi0tbm8tY29udGFpbnMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCittc2dzdHIgIi0tbm8tY29udGFpbnMg6YG46aCF5Y+q5YWB6Kix55So5Zyo5YiX6KGo6aGv56S65qih5byPIgorCisjOiBidWlsdGluL3RhZy5jOjUxMAorbXNnaWQgIi0tcG9pbnRzLWF0IG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gbGlzdCBtb2RlIgorbXNnc3RyICItLXBvaW50cy1hdCDpgbjpoIXlj6rlhYHoqLHnlKjlnKjliJfooajpoa/npLrmqKHlvI8iCisKKyM6IGJ1aWx0aW4vdGFnLmM6NTEyCittc2dpZCAiLS1tZXJnZWQgYW5kIC0tbm8tbWVyZ2VkIG9wdGlvbnMgYXJlIG9ubHkgYWxsb3dlZCBpbiBsaXN0IG1vZGUiCittc2dzdHIgIi0tbWVyZ2VkIOWSjCAtLW5vLW1lcmdlZCDpgbjpoIXlj6rlhYHoqLHnlKjlnKjliJfooajpoa/npLrmqKHlvI8iCisKKyM6IGJ1aWx0aW4vdGFnLmM6NTIzCittc2dpZCAib25seSBvbmUgLUYgb3IgLW0gb3B0aW9uIGlzIGFsbG93ZWQuIgorbXNnc3RyICLlj6rlhYHoqLHkuIDlgIsgLUYg5oiWIC1tIOmBuOmgheOAgiIKKworIzogYnVpbHRpbi90YWcuYzo1NDIKK21zZ2lkICJ0b28gbWFueSBwYXJhbXMiCittc2dzdHIgIuWkquWkmuWPg+aVuCIKKworIzogYnVpbHRpbi90YWcuYzo1NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3QgYSB2YWxpZCB0YWcgbmFtZS4iCittc2dzdHIgIiclcycg5LiN5piv5LiA5YCL5pyJ5pWI55qE5qiZ57Gk5ZCN56ix44CCIgorCisjOiBidWlsdGluL3RhZy5jOjU1MworIywgYy1mb3JtYXQKK21zZ2lkICJ0YWcgJyVzJyBhbHJlYWR5IGV4aXN0cyIKK21zZ3N0ciAi5qiZ57GkICclcycg5bey5a2Y5ZyoIgorCisjOiBidWlsdGluL3RhZy5jOjU4NAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGVkIHRhZyAnJXMnICh3YXMgJXMpXG4iCittc2dzdHIgIuW3suabtOaWsOaomeexpCAnJXMn77yI5pu+54K6ICVz77yJXG4iCisKKyM6IGJ1aWx0aW4vdW5wYWNrLW9iamVjdHMuYzo1MDIKK21zZ2lkICJVbnBhY2tpbmcgb2JqZWN0cyIKK21zZ3N0ciAi5bGV6ZaL54mp5Lu25LitIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjg0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5ICVzIgorbXNnc3RyICLlu7rnq4vnm67pjIQgJXMg5aSx5pWXIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGZpbGUgJXMiCittc2dzdHIgIuW7uueri+aqlOahiCAlcyDlpLHmlZciCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkZWxldGUgZmlsZSAlcyIKK21zZ3N0ciAi5Yiq6Zmk5qqU5qGIICVzIOWkseaVlyIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTUgYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSBkaXJlY3RvcnkgJXMiCittc2dzdHIgIuWIqumZpOebrumMhCAlcyDlpLHmlZciCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgIlRlc3RpbmcgbXRpbWUgaW4gJyVzJyAiCittc2dzdHIgIuWcqCAnJXMnIOS4rea4rOippiBtdGltZSAiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTU0Cittc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBkb2VzIG5vdCBjaGFuZ2UgYWZ0ZXIgYWRkaW5nIGEgbmV3IGZpbGUiCittc2dzdHIgIuaWsOWinuS4gOWAi+aWsOaqlOahiOW+jO+8jOebrumMhOeahOeLgOaFi+ioiuaBr+acquaUueiuiiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxNjcKK21zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBhZGRpbmcgYSBuZXcgZGlyZWN0b3J5IgorbXNnc3RyICLmlrDlop7kuIDlgIvmlrDnm67pjITlvozvvIznm67pjITnmoTni4DmhYvoqIrmga/mnKrmlLnorooiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTgwCittc2dpZCAiZGlyZWN0b3J5IHN0YXQgaW5mbyBjaGFuZ2VzIGFmdGVyIHVwZGF0aW5nIGEgZmlsZSIKK21zZ3N0ciAi5pu05paw5LiA5YCL5qqU5qGI5b6M77yM55uu6YyE55qE54uA5oWL6KiK5oGv6KKr5L+u5pS5IgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjE5MQorbXNnaWQgImRpcmVjdG9yeSBzdGF0IGluZm8gY2hhbmdlcyBhZnRlciBhZGRpbmcgYSBmaWxlIGluc2lkZSBzdWJkaXJlY3RvcnkiCittc2dzdHIgIuWcqOWtkOebrumMhOS4reaWsOWinuaqlOahiOW+jO+8jOebrumMhOeahOeLgOaFi+ioiuaBr+iiq+S/ruaUuSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMDIKK21zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGZpbGUiCittc2dzdHIgIuWIqumZpOS4gOWAi+aqlOahiOW+jO+8jOebrumMhOeahOeLgOaFi+ioiuaBr+acquaUueiuiiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoyMTUKK21zZ2lkICJkaXJlY3Rvcnkgc3RhdCBpbmZvIGRvZXMgbm90IGNoYW5nZSBhZnRlciBkZWxldGluZyBhIGRpcmVjdG9yeSIKK21zZ3N0ciAi5Yiq6Zmk5LiA5YCL55uu6YyE5b6M77yM55uu6YyE55qE54uA5oWL6KiK5oGv5pyq5pS56K6KIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjIyMgorbXNnaWQgIiBPSyIKK21zZ3N0ciAiIE9LIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjU5MQorbXNnaWQgImdpdCB1cGRhdGUtaW5kZXggWzxvcHRpb25zPl0gWy0tXSBbPGZpbGU+Li4uXSIKK21zZ3N0ciAiZ2l0IHVwZGF0ZS1pbmRleCBbPOmBuOmghT5dIFstLV0gWzzmqpTmoYg+Li4uXSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzQKK21zZ2lkICJjb250aW51ZSByZWZyZXNoIGV2ZW4gd2hlbiBpbmRleCBuZWVkcyB1cGRhdGUiCittc2dzdHIgIueVtue0ouW8lemcgOimgeabtOaWsOaZgue5vOe6jOmHjeaWsOaVtOeQhiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5NzcKK21zZ2lkICJyZWZyZXNoOiBpZ25vcmUgc3VibW9kdWxlcyIKK21zZ3N0ciAi6YeN5paw5pW055CG77ya5b+955Wl5a2Q5qih57WEIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjk4MAorbXNnaWQgImRvIG5vdCBpZ25vcmUgbmV3IGZpbGVzIgorbXNnc3RyICLkuI3lv73nlaXmlrDnmoTmqpTmoYgiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTgyCittc2dpZCAibGV0IGZpbGVzIHJlcGxhY2UgZGlyZWN0b3JpZXMgYW5kIHZpY2UtdmVyc2EiCittc2dzdHIgIuiuk+aqlOahiOWPluS7o+ebrumMhO+8iOWPjeS5i+S6pueEtu+8iSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODQKK21zZ2lkICJub3RpY2UgZmlsZXMgbWlzc2luZyBmcm9tIHdvcmt0cmVlIgorbXNnc3RyICLpgJrnn6XmqpTmoYjlvp7lt6XkvZzljYDpgbrlpLEiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTg2Cittc2dpZCAicmVmcmVzaCBldmVuIGlmIGluZGV4IGNvbnRhaW5zIHVubWVyZ2VkIGVudHJpZXMiCittc2dzdHIgIuWNs+S9v+e0ouW8leWNgOWMheWQq+acquWQiOS9teeahOaineebruS5n+Wft+ihjOmHjeaWsOaVtOeQhiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5ODkKK21zZ2lkICJyZWZyZXNoIHN0YXQgaW5mb3JtYXRpb24iCittc2dzdHIgIumHjeaWsOaVtOeQhue1seioiOioiuaBryIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzo5OTMKK21zZ2lkICJsaWtlIC0tcmVmcmVzaCwgYnV0IGlnbm9yZSBhc3N1bWUtdW5jaGFuZ2VkIHNldHRpbmciCittc2dzdHIgIumhnuS8vOaWvCAtLXJlZnJlc2jvvIzkvYbmmK/lv73nlaUgYXNzdW1lLXVuY2hhbmdlZCDoqK3lrpoiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk3Cittc2dpZCAiPG1vZGU+LDxvYmplY3Q+LDxwYXRoPiIKK21zZ3N0ciAiPOWtmOWPluaooeW8jz4sPOeJqeS7tj4sPOi3r+W+kT4iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6OTk4Cittc2dpZCAiYWRkIHRoZSBzcGVjaWZpZWQgZW50cnkgdG8gdGhlIGluZGV4IgorbXNnc3RyICLmlrDlop7mjIflrprnmoTmop3nm67liLDntKLlvJXljYAiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAwOAorbXNnaWQgIm1hcmsgZmlsZXMgYXMgXCJub3QgY2hhbmdpbmdcIiIKK21zZ3N0ciAi5oqK5qqU5qGI5qiZ6KiY54K6IFwi5rKS5pyJ6K6K5pu0XCIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxMQorbXNnaWQgImNsZWFyIGFzc3VtZWQtdW5jaGFuZ2VkIGJpdCIKK21zZ3N0ciAi5riF6ZmkIGFzc3VtZWQtdW5jaGFuZ2VkIOS9jSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDE0Cittc2dpZCAibWFyayBmaWxlcyBhcyBcImluZGV4LW9ubHlcIiIKK21zZ3N0ciAi5oqK5qqU5qGI5qiZ6KiY54K6IFwi5YOF57Si5byVXCIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAxNworbXNnaWQgImNsZWFyIHNraXAtd29ya3RyZWUgYml0IgorbXNnc3RyICLmuIXpmaQgc2tpcC13b3JrdHJlZSDkvY0iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAyMAorbXNnaWQgImRvIG5vdCB0b3VjaCBpbmRleC1vbmx5IGVudHJpZXMiCittc2dzdHIgIuS4jeimgeW7uueri+WPquaciee0ouW8leeahOmgheebriIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDIyCittc2dpZCAiYWRkIHRvIGluZGV4IG9ubHk7IGRvIG5vdCBhZGQgY29udGVudCB0byBvYmplY3QgZGF0YWJhc2UiCittc2dzdHIgIuWPquaWsOWinuWIsOe0ouW8leWNgO+8m+S4jeaWsOWinueJqeS7tuWIsOeJqeS7tuW6qyIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDI0Cittc2dpZCAicmVtb3ZlIG5hbWVkIHBhdGhzIGV2ZW4gaWYgcHJlc2VudCBpbiB3b3JrdHJlZSIKK21zZ3N0ciAi5Y2z5L2/5a2Y5Zyo5bel5L2c5Y2A6KOh77yM5Lmf5Yiq6Zmk6Lev5b6RIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjYKK21zZ2lkICJ3aXRoIC0tc3RkaW46IGlucHV0IGxpbmVzIGFyZSB0ZXJtaW5hdGVkIGJ5IG51bGwgYnl0ZXMiCittc2dzdHIgIuaUnOW4tiAtLXN0ZGlu77ya6Ly45YWl55qE6KGM5LulIG51bGwg5a2X5YWD57WC5q2iIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwMjgKK21zZ2lkICJyZWFkIGxpc3Qgb2YgcGF0aHMgdG8gYmUgdXBkYXRlZCBmcm9tIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICLlvp7mqJnmupbovLjlhaXkuK3oroDlj5bpnIDopoHmm7TmlrDnmoTot6/lvpHliJfooagiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzMgorbXNnaWQgImFkZCBlbnRyaWVzIGZyb20gc3RhbmRhcmQgaW5wdXQgdG8gdGhlIGluZGV4IgorbXNnc3RyICLlvp7mqJnmupbovLjlhaXmlrDlop7mop3nm67liLDntKLlvJXljYAiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTAzNgorbXNnaWQgInJlcG9wdWxhdGUgc3RhZ2VzICMyIGFuZCAjMyBmb3IgdGhlIGxpc3RlZCBwYXRocyIKK21zZ3N0ciAi54K65oyH5a6a5qqU5qGI6YeN5paw55Sf5oiQ56ysMuWSjOesrDPmmqvlrZjljYAiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0MAorbXNnaWQgIm9ubHkgdXBkYXRlIGVudHJpZXMgdGhhdCBkaWZmZXIgZnJvbSBIRUFEIgorbXNnc3RyICLlj6rmm7TmlrDoiIcgSEVBRCDkuI3lkIznmoTmop3nm64iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0NAorbXNnaWQgImlnbm9yZSBmaWxlcyBtaXNzaW5nIGZyb20gd29ya3RyZWUiCittc2dzdHIgIuW/veeVpeW3peS9nOWNgOmBuuWkseeahOaqlOahiCIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDQ3Cittc2dpZCAicmVwb3J0IGFjdGlvbnMgdG8gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICLlnKjmqJnmupbovLjlh7rpoa/npLrli5XkvZwiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA0OQorbXNnaWQgIihmb3IgcG9yY2VsYWlucykgZm9yZ2V0IHNhdmVkIHVucmVzb2x2ZWQgY29uZmxpY3RzIgorbXNnc3RyICIoZm9yIHBvcmNlbGFpbnMpIOW/mOiomOWEsuWtmOeahOacquino+axuueahOihneeqgSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDUzCittc2dpZCAid3JpdGUgaW5kZXggaW4gdGhpcyBmb3JtYXQiCittc2dzdHIgIuS7pemAmeeoruagvOW8j+Wvq+WFpee0ouW8leWNgCIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDU1Cittc2dpZCAiZW5hYmxlIG9yIGRpc2FibGUgc3BsaXQgaW5kZXgiCittc2dzdHIgIuWVn+eUqOaIluemgeeUqOe0ouW8leWIhuWJsiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDU3Cittc2dpZCAiZW5hYmxlL2Rpc2FibGUgdW50cmFja2VkIGNhY2hlIgorbXNnc3RyICLllZ/nlKgv56aB55So5bCN5pyq6L+96Lmk5qqU5qGI55qE5b+r5Y+WIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNTkKK21zZ2lkICJ0ZXN0IGlmIHRoZSBmaWxlc3lzdGVtIHN1cHBvcnRzIHVudHJhY2tlZCBjYWNoZSIKK21zZ3N0ciAi5ris6Kmm5qqU5qGI57O757Wx5piv5ZCm5pSv5o+05pyq6L+96Lmk5qqU5qGI5b+r5Y+WIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjEKK21zZ2lkICJlbmFibGUgdW50cmFja2VkIGNhY2hlIHdpdGhvdXQgdGVzdGluZyB0aGUgZmlsZXN5c3RlbSIKK21zZ3N0ciAi54Sh6ZyA5qqi5ris5qqU5qGI57O757Wx77yM5ZWf55So5bCN5pyq6L+96Lmk5qqU5qGI55qE5b+r5Y+WIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjMKK21zZ2lkICJ3cml0ZSBvdXQgdGhlIGluZGV4IGV2ZW4gaWYgaXMgbm90IGZsYWdnZWQgYXMgY2hhbmdlZCIKK21zZ3N0ciAi5Y2z5L2/5rKS5pyJ6KKr5qiZ6KiY54K65bey5pu05pS577yM5Lmf6KaB5a+r5Ye657Si5byVIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEwNjUKK21zZ2lkICJlbmFibGUgb3IgZGlzYWJsZSBmaWxlIHN5c3RlbSBtb25pdG9yIgorbXNnc3RyICLllZ/nlKjmiJbnpoHnlKjmqpTmoYjns7vntbHnm6PmjqciCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTA2NworbXNnaWQgIm1hcmsgZmlsZXMgYXMgZnNtb25pdG9yIHZhbGlkIgorbXNnc3RyICLmqJnoqJjmqpTmoYjngrogZnNtb25pdG9yIOacieaViCIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMDcwCittc2dpZCAiY2xlYXIgZnNtb25pdG9yIHZhbGlkIGJpdCIKK21zZ3N0ciAi5riF6ZmkIGZzbW9uaXRvciDmnInmlYjkvY0iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE3MworbXNnaWQgIiIKKyJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIGZhbHNlOyByZW1vdmUgb3IgY2hhbmdlIGl0LCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gIgorImVuYWJsZSBzcGxpdCBpbmRleCIKK21zZ3N0ciAiIgorImNvcmUuc3BsaXRJbmRleCDooqvoqK3lrprngrogZmFsc2XjgILlpoLmnpzmgqjnorrlr6bopoHllZ/nlKjntKLlvJXliIblibLvvIzoq4vliKrpmaTmiJbkv67mlLnlroPjgIIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE4MgorbXNnaWQgIiIKKyJjb3JlLnNwbGl0SW5kZXggaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCB0byAiCisiZGlzYWJsZSBzcGxpdCBpbmRleCIKK21zZ3N0ciAiIgorImNvcmUuc3BsaXRJbmRleCDooqvoqK3lrprngrogdHJ1ZeOAguWmguaenOaCqOeiuuWvpuimgeemgeeUqOe0ouW8leWIhuWJsu+8jOiri+WIqumZpOaIluS/ruaUueWug+OAgiIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMTk0Cittc2dpZCAiIgorImNvcmUudW50cmFja2VkQ2FjaGUgaXMgc2V0IHRvIHRydWU7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCisidG8gZGlzYWJsZSB0aGUgdW50cmFja2VkIGNhY2hlIgorbXNnc3RyICIiCisiY29yZS51bnRyYWNrZWRDYWNoZSDooqvoqK3lrprngrogdHJ1ZeOAguWmguaenOaCqOeiuuWvpuimgeemgeeUqOacqui/vei5pOaqlOahiOW/q+WPlu+8jOiri+WIqumZpOaIluS/riIKKyLmlLnlroPjgIIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTE5OAorbXNnaWQgIlVudHJhY2tlZCBjYWNoZSBkaXNhYmxlZCIKK21zZ3N0ciAi5b+r5Y+W5pyq6L+96Lmk5qqU5qGI6KKr56aB55SoIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMDYKK21zZ2lkICIiCisiY29yZS51bnRyYWNrZWRDYWNoZSBpcyBzZXQgdG8gZmFsc2U7IHJlbW92ZSBvciBjaGFuZ2UgaXQsIGlmIHlvdSByZWFsbHkgd2FudCAiCisidG8gZW5hYmxlIHRoZSB1bnRyYWNrZWQgY2FjaGUiCittc2dzdHIgIiIKKyJjb3JlLnVudHJhY2tlZENhY2hlIOiiq+ioreWumueCuiBmYWxzZeOAguWmguaenOaCqOeiuuWvpuimgeWVn+eUqOacqui/vei5pOaqlOahiOW/q+WPlu+8jOiri+WIqumZpOaIliIKKyLkv67mlLnlroPjgIIiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJVbnRyYWNrZWQgY2FjaGUgZW5hYmxlZCBmb3IgJyVzJyIKK21zZ3N0ciAi5b+r5Y+W5pyq6L+96Lmk5qqU5qGI5ZyoICclcycg5ZWf55SoIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMTgKK21zZ2lkICJjb3JlLmZzbW9uaXRvciBpcyB1bnNldDsgc2V0IGl0IGlmIHlvdSByZWFsbHkgd2FudCB0byBlbmFibGUgZnNtb25pdG9yIgorbXNnc3RyICJjb3JlLmZzbW9uaXRvciDmnKroqK3lrprvvJvlpoLmnpzmg7PopoHllZ/nlKggZnNtb25pdG9yIOiri+ioreWumuipsumBuOmghSIKKworIzogYnVpbHRpbi91cGRhdGUtaW5kZXguYzoxMjIyCittc2dpZCAiZnNtb25pdG9yIGVuYWJsZWQiCittc2dzdHIgImZzbW9uaXRvciDooqvllZ/nlKgiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLWluZGV4LmM6MTIyNQorbXNnaWQgIiIKKyJjb3JlLmZzbW9uaXRvciBpcyBzZXQ7IHJlbW92ZSBpdCBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gZGlzYWJsZSBmc21vbml0b3IiCittc2dzdHIgImNvcmUuZnNtb25pdG9yIOW3suioreWumu+8m+WmguaenOaDs+imgeemgeeUqCBmc21vbml0b3Ig6KuL56e76Zmk6Kmy6YG46aCFIgorCisjOiBidWlsdGluL3VwZGF0ZS1pbmRleC5jOjEyMjkKK21zZ2lkICJmc21vbml0b3IgZGlzYWJsZWQiCittc2dzdHIgImZzbW9uaXRvciDooqvnpoHnlKgiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjEwCittc2dpZCAiZ2l0IHVwZGF0ZS1yZWYgWzxvcHRpb25zPl0gLWQgPHJlZm5hbWU+IFs8b2xkLXZhbD5dIgorbXNnc3RyICJnaXQgdXBkYXRlLXJlZiBbPOmBuOmghT5dIC1kIDzlvJXnlKjlkI0+IFs86IiK5YC8Pl0iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjExCittc2dpZCAiZ2l0IHVwZGF0ZS1yZWYgWzxvcHRpb25zPl0gICAgPHJlZm5hbWU+IDxuZXctdmFsPiBbPG9sZC12YWw+XSIKK21zZ3N0ciAiZ2l0IHVwZGF0ZS1yZWYgWzzpgbjpoIU+XSAgICA85byV55So5ZCNPiA85paw5YC8PiBbPOiIiuWAvD5dIgorCisjOiBidWlsdGluL3VwZGF0ZS1yZWYuYzoxMgorbXNnaWQgImdpdCB1cGRhdGUtcmVmIFs8b3B0aW9ucz5dIC0tc3RkaW4gWy16XSIKK21zZ3N0ciAiZ2l0IHVwZGF0ZS1yZWYgWzzpgbjpoIU+XSAtLXN0ZGluIFstel0iCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2NAorbXNnaWQgImRlbGV0ZSB0aGUgcmVmZXJlbmNlIgorbXNnc3RyICLliKrpmaTlvJXnlKgiCisKKyM6IGJ1aWx0aW4vdXBkYXRlLXJlZi5jOjM2NgorbXNnaWQgInVwZGF0ZSA8cmVmbmFtZT4gbm90IHRoZSBvbmUgaXQgcG9pbnRzIHRvIgorbXNnc3RyICLmm7TmlrAgPOW8leeUqOWQjT4g5pys6Lqr6ICM5LiN5piv5a6D5oyH5ZCR55qE5byV55SoIgorCisjOiBidWlsdGluL3VwZGF0ZS1yZWYuYzozNjcKK21zZ2lkICJzdGRpbiBoYXMgTlVMLXRlcm1pbmF0ZWQgYXJndW1lbnRzIgorbXNnc3RyICLmqJnmupbovLjlhaXmnInku6UgTlVMIOWtl+WFg+e1guatoueahOWPg+aVuCIKKworIzogYnVpbHRpbi91cGRhdGUtcmVmLmM6MzY4Cittc2dpZCAicmVhZCB1cGRhdGVzIGZyb20gc3RkaW4iCittc2dzdHIgIuW+nuaomea6lui8uOWFpeiugOWPluabtOaWsCIKKworIzogYnVpbHRpbi91cGRhdGUtc2VydmVyLWluZm8uYzo3Cittc2dpZCAiZ2l0IHVwZGF0ZS1zZXJ2ZXItaW5mbyBbLS1mb3JjZV0iCittc2dzdHIgImdpdCB1cGRhdGUtc2VydmVyLWluZm8gWy0tZm9yY2VdIgorCisjOiBidWlsdGluL3VwZGF0ZS1zZXJ2ZXItaW5mby5jOjE1Cittc2dpZCAidXBkYXRlIHRoZSBpbmZvIGZpbGVzIGZyb20gc2NyYXRjaCIKK21zZ3N0ciAi5b6e6aCt6ZaL5aeL5pu05paw5qqU5qGI6KiK5oGvIgorCisjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MTEKK21zZ2lkICJnaXQgdXBsb2FkLXBhY2sgWzxvcHRpb25zPl0gPGRpcj4iCittc2dzdHIgImdpdCB1cGxvYWQtcGFjayBbPOmBuOmghT5dIDznm67pjIQ+IgorCisjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjMgdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjE3Cittc2dpZCAicXVpdCBhZnRlciBhIHNpbmdsZSByZXF1ZXN0L3Jlc3BvbnNlIGV4Y2hhbmdlIgorbXNnc3RyICLlnKjkuIDmrKHllq7njajnmoToq4vmsYIv5Zue5oeJ5LmL5b6M6Zui6ZaLIgorCisjOiBidWlsdGluL3VwbG9hZC1wYWNrLmM6MjUKK21zZ2lkICJleGl0IGltbWVkaWF0ZWx5IGFmdGVyIGluaXRpYWwgcmVmIGFkdmVydGlzZW1lbnQiCittc2dzdHIgIuWcqOWIneWni+eahOW8leeUqOW7o+WRiuW+jOeri+WNs+mboumWiyIKKworIzogYnVpbHRpbi91cGxvYWQtcGFjay5jOjI3Cittc2dpZCAiZG8gbm90IHRyeSA8ZGlyZWN0b3J5Pi8uZ2l0LyBpZiA8ZGlyZWN0b3J5PiBpcyBubyBHaXQgZGlyZWN0b3J5IgorbXNnc3RyICLlpoLmnpwgPOebrumMhD4g5LiN5piv5LiA5YCLIEdpdCDnm67pjITvvIzkuI3opoHlmJfoqaYgPOebrumMhD4vLmdpdC8iCisKKyM6IGJ1aWx0aW4vdXBsb2FkLXBhY2suYzoyOQorbXNnaWQgImludGVycnVwdCB0cmFuc2ZlciBhZnRlciA8bj4gc2Vjb25kcyBvZiBpbmFjdGl2aXR5IgorbXNnc3RyICLkuI3mtLvli5UgPG4+IOenkumQmOW+jOe1guatouWCs+i8uCIKKworIzogYnVpbHRpbi92ZXJpZnktY29tbWl0LmM6MTkKK21zZ2lkICJnaXQgdmVyaWZ5LWNvbW1pdCBbLXYgfCAtLXZlcmJvc2VdIDxjb21taXQ+Li4uIgorbXNnc3RyICJnaXQgdmVyaWZ5LWNvbW1pdCBbLXYgfCAtLXZlcmJvc2VdIDzmj5DkuqQ+Li4uIgorCisjOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo2OAorbXNnaWQgInByaW50IGNvbW1pdCBjb250ZW50cyIKK21zZ3N0ciAi5YiX5Y2w5o+Q5Lqk5YWn5a65IgorCisjOiBidWlsdGluL3ZlcmlmeS1jb21taXQuYzo2OSBidWlsdGluL3ZlcmlmeS10YWcuYzozNworbXNnaWQgInByaW50IHJhdyBncGcgc3RhdHVzIG91dHB1dCIKK21zZ3N0ciAi5YiX5Y2w5Y6f5aeLIGdwZyDni4DmhYvovLjlh7oiCisKKyM6IGJ1aWx0aW4vdmVyaWZ5LXBhY2suYzo1NQorbXNnaWQgImdpdCB2ZXJpZnktcGFjayBbLXYgfCAtLXZlcmJvc2VdIFstcyB8IC0tc3RhdC1vbmx5XSA8cGFjaz4uLi4iCittc2dzdHIgImdpdCB2ZXJpZnktcGFjayBbLXYgfCAtLXZlcmJvc2VdIFstcyB8IC0tc3RhdC1vbmx5XSA85YyFPi4uLiIKKworIzogYnVpbHRpbi92ZXJpZnktcGFjay5jOjY1Cittc2dpZCAidmVyYm9zZSIKK21zZ3N0ciAi6Kmz57Sw6Ly45Ye6IgorCisjOiBidWlsdGluL3ZlcmlmeS1wYWNrLmM6NjcKK21zZ2lkICJzaG93IHN0YXRpc3RpY3Mgb25seSIKK21zZ3N0ciAi5Y+q6aGv56S657Wx6KiIIgorCisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzoxOAorbXNnaWQgImdpdCB2ZXJpZnktdGFnIFstdiB8IC0tdmVyYm9zZV0gWy0tZm9ybWF0PTxmb3JtYXQ+XSA8dGFnPi4uLiIKK21zZ3N0ciAiZ2l0IHZlcmlmeS10YWcgWy12IHwgLS12ZXJib3NlXSBbLS1mb3JtYXQ9POagvOW8jz5dIDzmqJnnsaQ+Li4uIgorCisjOiBidWlsdGluL3ZlcmlmeS10YWcuYzozNgorbXNnaWQgInByaW50IHRhZyBjb250ZW50cyIKK21zZ3N0ciAi5YiX5Y2w5qiZ57Gk5YWn5a65IgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MTcKK21zZ2lkICJnaXQgd29ya3RyZWUgYWRkIFs8b3B0aW9ucz5dIDxwYXRoPiBbPGNvbW1pdC1pc2g+XSIKK21zZ3N0ciAiZ2l0IHdvcmt0cmVlIGFkZCBbPOmBuOmghT5dIDzot6/lvpE+IFs85o+Q5LqkPl0iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxOAorbXNnaWQgImdpdCB3b3JrdHJlZSBsaXN0IFs8b3B0aW9ucz5dIgorbXNnc3RyICJnaXQgd29ya3RyZWUgbGlzdCBbPOmBuOmghT5dIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MTkKK21zZ2lkICJnaXQgd29ya3RyZWUgbG9jayBbPG9wdGlvbnM+XSA8cGF0aD4iCittc2dzdHIgImdpdCB3b3JrdHJlZSBsb2NrIFs86YG46aCFPl0gPOi3r+W+kT4iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMAorbXNnaWQgImdpdCB3b3JrdHJlZSBtb3ZlIDx3b3JrdHJlZT4gPG5ldy1wYXRoPiIKK21zZ3N0ciAiZ2l0IHdvcmt0cmVlIG1vdmUgPOW3peS9nOWNgD4gPOaWsOi3r+W+kT4iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMQorbXNnaWQgImdpdCB3b3JrdHJlZSBwcnVuZSBbPG9wdGlvbnM+XSIKK21zZ3N0ciAiZ2l0IHdvcmt0cmVlIHBydW5lIFs86YG46aCFPl0iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMgorbXNnaWQgImdpdCB3b3JrdHJlZSByZW1vdmUgWzxvcHRpb25zPl0gPHdvcmt0cmVlPiIKK21zZ3N0ciAiZ2l0IHdvcmt0cmVlIHJlbW92ZSBbPOmBuOmghT5dIDzlt6XkvZzljYA+IgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MjMKK21zZ2lkICJnaXQgd29ya3RyZWUgdW5sb2NrIDxwYXRoPiIKK21zZ3N0ciAiZ2l0IHdvcmt0cmVlIHVubG9jayA86Lev5b6RPiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjYwIGJ1aWx0aW4vd29ya3RyZWUuYzo4OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGRlbGV0ZSAnJXMnIgorbXNnc3RyICLliKrpmaQgJyVzJyDlpLHmlZciCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3OQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyB3b3JrdHJlZXMvJXM6IG5vdCBhIHZhbGlkIGRpcmVjdG9yeSIKK21zZ3N0ciAi5Yiq6Zmk5bel5L2c5Y2ALyVz77ya5LiN5piv5LiA5YCL5pyJ5pWI55qE55uu6YyEIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiBnaXRkaXIgZmlsZSBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAi5Yiq6ZmkIHdvcmt0cmVlcy8lc++8mmdpdGRpciDmqpTmoYjkuI3lrZjlnKgiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MCBidWlsdGluL3dvcmt0cmVlLmM6OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiB1bmFibGUgdG8gcmVhZCBnaXRkaXIgZmlsZSAoJXMpIgorbXNnc3RyICLliKrpmaQgd29ya3RyZWVzLyVz77ya54Sh5rOV6K6A5Y+WIGdpdGRpciDmqpTmoYggKCVzKSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiBzaG9ydCByZWFkIChleHBlY3RlZCAlPFBSSXVNQVg+IGJ5dGVzLCByZWFkICIKKyIlPFBSSXVNQVg+KSIKK21zZ3N0ciAi5Yiq6Zmk5bel5L2c5qi5LyVz77ya6K6A5Y+W6YGO55+t77yI5pyf5pybICU8UFJJdU1BWD4g5L2N5YWD57WE77yM6K6A5Y+WICU8UFJJdU1BWD7vvIkiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiBpbnZhbGlkIGdpdGRpciBmaWxlIgorbXNnc3RyICLliKrpmaQgd29ya3RyZWVzLyVz77ya54Sh5pWI55qEIGdpdGRpciDmqpTmoYgiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3Zpbmcgd29ya3RyZWVzLyVzOiBnaXRkaXIgZmlsZSBwb2ludHMgdG8gbm9uLWV4aXN0ZW50IGxvY2F0aW9uIgorbXNnc3RyICLliKrpmaQgd29ya3RyZWVzLyVz77yaZ2l0ZGlyIOaqlOahiOeahOaMh+WQkeS4jeWtmOWcqCIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjE2NQorbXNnaWQgInJlcG9ydCBwcnVuZWQgd29ya2luZyB0cmVlcyIKK21zZ3N0ciAi5aCx5ZGK5riF6Zmk55qE5bel5L2c5Y2AIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6MTY3Cittc2dpZCAiZXhwaXJlIHdvcmtpbmcgdHJlZXMgb2xkZXIgdGhhbiA8dGltZT4iCittc2dzdHIgIuWwh+aXqeaWvCA85pmC6ZaTPiDnmoTlt6XkvZzljYDpgY7mnJ8iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBhbHJlYWR5IGV4aXN0cyIKK21zZ3N0ciAiJyVzJyDlt7LntpPlrZjlnKgiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzoyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlLWFkZCB3b3JrdHJlZSAnJXMnIgorbXNnc3RyICLnhKHms5Xlho3mrKHmlrDlop7lt6XkvZzljYAgJyVzJyIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJyVzJyBpcyBhIG1pc3NpbmcgYnV0IGxvY2tlZCB3b3JrdHJlZTtcbiIKKyJ1c2UgJ2FkZCAtZiAtZicgdG8gb3ZlcnJpZGUsIG9yICd1bmxvY2snIGFuZCAncHJ1bmUnIG9yICdyZW1vdmUnIHRvIGNsZWFyIgorbXNnc3RyICIiCisiJyVzJyDmmK/kuIDlgIvpgbrlpLHkvYbpjpblrprnmoTlt6XkvZzljYDvvIzkvb/nlKhcbiIKKyInYWRkIC1mIC1mJyDopobok4vvvIzmiJYgJ3VubG9jaycg5ZKMICdwcnVuZScg5oiWICdyZW1vdmUnIOa4hemZpCIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJyVzJyBpcyBhIG1pc3NpbmcgYnV0IGFscmVhZHkgcmVnaXN0ZXJlZCB3b3JrdHJlZTtcbiIKKyJ1c2UgJ2FkZCAtZicgdG8gb3ZlcnJpZGUsIG9yICdwcnVuZScgb3IgJ3JlbW92ZScgdG8gY2xlYXIiCittc2dzdHIgIiIKKyInJXMnIOaYr+S4gOWAi+mBuuWkseS9huW3sue2k+iou+WGiueahOW3peS9nOWNgO+8jOS9v+eUqFxuIgorIidhZGQgLWYnIOimhuiTi++8jOaIliAncHJ1bmUnIOaIliAncmVtb3ZlJyDmuIXpmaQiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IGNyZWF0ZSBkaXJlY3Rvcnkgb2YgJyVzJyIKK21zZ3N0ciAi5LiN6IO95bu656uL55uu6YyEICclcyciCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0MzIgYnVpbHRpbi93b3JrdHJlZS5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKG5ldyBicmFuY2ggJyVzJykiCittc2dzdHIgIua6luWCmeW3peS9nOWNgO+8iOaWsOWIhuaUryAnJXMn77yJIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB3b3JrdHJlZSAocmVzZXR0aW5nIGJyYW5jaCAnJXMnOyB3YXMgYXQgJXMpIgorbXNnc3RyICLmupblgpnlt6XkvZzljYDvvIjph43oqK3liIbmlK8gJyVzJ++8jOS5i+WJjeeCuiAlc++8iSIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgd29ya3RyZWUgKGNoZWNraW5nIG91dCAnJXMnKSIKK21zZ3N0ciAi5rqW5YKZ5bel5L2c5Y2A77yI57C95Ye6ICclcyfvvIkiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHdvcmt0cmVlIChkZXRhY2hlZCBIRUFEICVzKSIKK21zZ3N0ciAi5rqW5YKZ5bel5L2c5Y2A77yI5YiG6Zui6ZaL6aCt5oyH5qiZICVz77yJIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NDkwCittc2dpZCAiY2hlY2tvdXQgPGJyYW5jaD4gZXZlbiBpZiBhbHJlYWR5IGNoZWNrZWQgb3V0IGluIG90aGVyIHdvcmt0cmVlIgorbXNnc3RyICLnsL3lh7ogPOWIhuaUrz7vvIzljbPkvb/lt7LntpPooqvnsL3lh7rliLDlhbblroPlt6XkvZzljYAiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTMKK21zZ2lkICJjcmVhdGUgYSBuZXcgYnJhbmNoIgorbXNnc3RyICLlu7rnq4vkuIDlgIvmlrDliIbmlK8iCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTUKK21zZ2lkICJjcmVhdGUgb3IgcmVzZXQgYSBicmFuY2giCittc2dzdHIgIuW7uueri+aIlumHjeioreS4gOWAi+WIhuaUryIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjQ5NworbXNnaWQgInBvcHVsYXRlIHRoZSBuZXcgd29ya2luZyB0cmVlIgorbXNnc3RyICLnlJ/miJDmlrDnmoTlt6XkvZzljYAiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo0OTgKK21zZ2lkICJrZWVwIHRoZSBuZXcgd29ya2luZyB0cmVlIGxvY2tlZCIKK21zZ3N0ciAi6Y6W5a6a5paw5bel5L2c5Y2AIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTAxCittc2dpZCAic2V0IHVwIHRyYWNraW5nIG1vZGUgKHNlZSBnaXQtYnJhbmNoKDEpKSIKK21zZ3N0ciAi6Kit5a6a6L+96Lmk5qih5byP77yI5Y+D6KaLIGdpdC1icmFuY2goMSnvvIkiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo1MDQKK21zZ2lkICJ0cnkgdG8gbWF0Y2ggdGhlIG5ldyBicmFuY2ggbmFtZSB3aXRoIGEgcmVtb3RlLXRyYWNraW5nIGJyYW5jaCIKK21zZ3N0ciAi5ZiX6Kmm54K65paw5YiG5pSv5ZCN56ym5ZCI5LiA5YCL6YGg56uv6L+96Lmk5YiG5pSvIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTEyCittc2dpZCAiLWIsIC1CLCBhbmQgLS1kZXRhY2ggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSIKK21zZ3N0ciAiLWLjgIEtQiDlkowgLS1kZXRhY2gg5piv5LqS5pal55qEIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NTczCittc2dpZCAiLS1bbm8tXXRyYWNrIGNhbiBvbmx5IGJlIHVzZWQgaWYgYSBuZXcgYnJhbmNoIGlzIGNyZWF0ZWQiCittc2dzdHIgIuWPquiDveWcqOW7uueri+aWsOWIhuaUr+aZguS9v+eUqOmBuOmghSAtLVtuby1ddHJhY2sgIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NjczCittc2dpZCAicmVhc29uIGZvciBsb2NraW5nIgorbXNnc3RyICLpjpblrprljp/lm6AiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo2ODUgYnVpbHRpbi93b3JrdHJlZS5jOjcxOCBidWlsdGluL3dvcmt0cmVlLmM6NzkyCisjOiBidWlsdGluL3dvcmt0cmVlLmM6OTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGEgd29ya2luZyB0cmVlIgorbXNnc3RyICInJXMnIOS4jeaYr+S4gOWAi+W3peS9nOWNgCIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjY4NyBidWlsdGluL3dvcmt0cmVlLmM6NzIwCittc2dpZCAiVGhlIG1haW4gd29ya2luZyB0cmVlIGNhbm5vdCBiZSBsb2NrZWQgb3IgdW5sb2NrZWQiCittc2dzdHIgIuS4u+W3peS9nOWNgOeEoeazleiiq+WKoOmOluaIluino+mOliIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjY5MgorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGlzIGFscmVhZHkgbG9ja2VkLCByZWFzb246ICVzIgorbXNnc3RyICInJXMnIOW3suiiq+mOluWumu+8jOWOn+WboO+8miVzIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Njk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgYWxyZWFkeSBsb2NrZWQiCittc2dzdHIgIiclcycg5bey6KKr6Y6W5a6aIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IGxvY2tlZCIKK21zZ3N0ciAiJyVzJyDmnKrooqvpjpblrpoiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo3NjMKK21zZ2lkICJ3b3JraW5nIHRyZWVzIGNvbnRhaW5pbmcgc3VibW9kdWxlcyBjYW5ub3QgYmUgbW92ZWQgb3IgcmVtb3ZlZCIKK21zZ3N0ciAi5LiN6IO956e75YuV5oiW5Yiq6Zmk5YyF5ZCr5a2Q5qih57WE55qE5bel5L2c5Y2AIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6NzcxCittc2dpZCAiZm9yY2UgbW92ZSBldmVuIGlmIHdvcmt0cmVlIGlzIGRpcnR5IG9yIGxvY2tlZCIKK21zZ3N0ciAi5by35Yi256e75YuV77yM5Y2z5L2/5bel5L2c5Y2A5piv6auS55qE5oiW5bey6Y6W5a6aIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6Nzk0IGJ1aWx0aW4vd29ya3RyZWUuYzo5MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBhIG1haW4gd29ya2luZyB0cmVlIgorbXNnc3RyICInJXMnIOaYr+S4gOWAi+S4u+W3peS9nOWNgCIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjc5OQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgZmlndXJlIG91dCBkZXN0aW5hdGlvbiBuYW1lIGZyb20gJyVzJyIKK21zZ3N0ciAi54Sh5rOV5b6eICclcycg566X5Ye655uu5qiZ5ZCN56ixIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODA1CisjLCBjLWZvcm1hdAorbXNnaWQgInRhcmdldCAnJXMnIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICLnm67mqJkgJyVzJyDlt7LlrZjlnKgiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo4MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNhbm5vdCBtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZSwgbG9jayByZWFzb246ICVzXG4iCisidXNlICdtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCittc2dzdHIgIiIKKyLnhKHms5Xnp7vli5XkuIDlgIvpjpblrprnmoTlt6XkvZzljYDvvIzpjpblrprljp/lm6DvvJolc1xuIgorIuS9v+eUqCAnbW92ZSAtZiAtZicg6KaG6JOL5oiW5YWI6Kej6Y6WIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODE1Cittc2dpZCAiIgorImNhbm5vdCBtb3ZlIGEgbG9ja2VkIHdvcmtpbmcgdHJlZTtcbiIKKyJ1c2UgJ21vdmUgLWYgLWYnIHRvIG92ZXJyaWRlIG9yIHVubG9jayBmaXJzdCIKK21zZ3N0ciAiIgorIueEoeazleenu+WLleS4gOWAi+mOluWumueahOW3peS9nOWNgO+8jFxuIgorIuS9v+eUqCAnbW92ZSAtZiAtZicg6KaG6JOL5oiW5YWI6Kej6Y6WIgorCisjOiBidWlsdGluL3dvcmt0cmVlLmM6ODE4CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbGlkYXRpb24gZmFpbGVkLCBjYW5ub3QgbW92ZSB3b3JraW5nIHRyZWU6ICVzIgorbXNnc3RyICLpqZforYnlpLHmlZfvvIznhKHms5Xnp7vli5Xlt6XkvZzljYDvvJolcyIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjgyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbW92ZSAnJXMnIHRvICclcyciCittc2dzdHIgIuenu+WLlSAnJXMnIOWIsCAnJXMnIOWkseaVlyIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjg3MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcnVuICdnaXQgc3RhdHVzJyBvbiAnJXMnIgorbXNnc3RyICLlnKggJyVzJyDkuK3ln7fooYwgJ2dpdCBzdGF0dXMnIOWkseaVlyIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjg3NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIG1vZGlmaWVkIG9yIHVudHJhY2tlZCBmaWxlcywgdXNlIC0tZm9yY2UgdG8gZGVsZXRlIGl0IgorbXNnc3RyICInJXMnIOWMheWQq+S/ruaUueaIluacqui/vei5pOeahOaqlOahiO+8jOS9v+eUqCAtLWZvcmNlIOWIqumZpCIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjg4MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcnVuICdnaXQgc3RhdHVzJyBvbiAnJXMnLCBjb2RlICVkIgorbXNnc3RyICLlnKggJyVzJyDkuK3ln7fooYwgJ2dpdCBzdGF0dXMnIOWkseaVl++8jOmboumWi+eivCAlZCIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjkwMworbXNnaWQgImZvcmNlIHJlbW92YWwgZXZlbiBpZiB3b3JrdHJlZSBpcyBkaXJ0eSBvciBsb2NrZWQiCittc2dzdHIgIuW8t+WItuWIqumZpO+8jOWNs+S9v+W3peS9nOWNgOaYr+mrkueahOaIluW3sumOluWumiIKKworIzogYnVpbHRpbi93b3JrdHJlZS5jOjkyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWUsIGxvY2sgcmVhc29uOiAlc1xuIgorInVzZSAncmVtb3ZlIC1mIC1mJyB0byBvdmVycmlkZSBvciB1bmxvY2sgZmlyc3QiCittc2dzdHIgIiIKKyLnhKHms5XliKrpmaTkuIDlgIvpjpblrprnmoTlt6XkvZzljYDvvIzpjpblrprljp/lm6DvvJolc1xuIgorIuS9v+eUqCAncmVtb3ZlIC1mIC1mJyDopobok4vmiJblhYjop6PpjpYiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MjgKK21zZ2lkICIiCisiY2Fubm90IHJlbW92ZSBhIGxvY2tlZCB3b3JraW5nIHRyZWU7XG4iCisidXNlICdyZW1vdmUgLWYgLWYnIHRvIG92ZXJyaWRlIG9yIHVubG9jayBmaXJzdCIKK21zZ3N0ciAiIgorIueEoeazleWIqumZpOS4gOWAi+mOluWumueahOW3peS9nOWNgO+8jFxuIgorIuS9v+eUqCAncmVtb3ZlIC1mIC1mJyDopobok4vmiJblhYjop6PpjpYiCisKKyM6IGJ1aWx0aW4vd29ya3RyZWUuYzo5MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsaWRhdGlvbiBmYWlsZWQsIGNhbm5vdCByZW1vdmUgd29ya2luZyB0cmVlOiAlcyIKK21zZ3N0ciAi6amX6K2J5aSx5pWX77yM54Sh5rOV5Yiq6Zmk5bel5L2c5Y2A77yaJXMiCisKKyM6IGJ1aWx0aW4vd3JpdGUtdHJlZS5jOjE1Cittc2dpZCAiZ2l0IHdyaXRlLXRyZWUgWy0tbWlzc2luZy1va10gWy0tcHJlZml4PTxwcmVmaXg+L10iCittc2dzdHIgImdpdCB3cml0ZS10cmVlIFstLW1pc3Npbmctb2tdIFstLXByZWZpeD085YmN57a0Pi9dIgorCisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyOAorbXNnaWQgIjxwcmVmaXg+LyIKK21zZ3N0ciAiPOWJjee2tD4vIgorCisjOiBidWlsdGluL3dyaXRlLXRyZWUuYzoyOQorbXNnaWQgIndyaXRlIHRyZWUgb2JqZWN0IGZvciBhIHN1YmRpcmVjdG9yeSA8cHJlZml4PiIKK21zZ3N0ciAi5bCHIDzliY3ntrQ+IOWtkOebrumMhOWFp+WuueWvq+WIsOS4gOWAi+aoueeLgOeJqeS7tiIKKworIzogYnVpbHRpbi93cml0ZS10cmVlLmM6MzEKK21zZ2lkICJvbmx5IHVzZWZ1bCBmb3IgZGVidWdnaW5nIgorbXNnc3RyICLlj6rlsI3pmaTpjK/mnInnlKgiCisKKyM6IGZhc3QtaW1wb3J0LmM6MzEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFeHBlY3RlZCAnbWFyaycgY29tbWFuZCwgZ290ICVzIgorbXNnc3RyICLpoJDmnJ8gJ21hcmsnIOaMh+S7pO+8jOW+l+WIsCAlcyIKKworIzogZmFzdC1pbXBvcnQuYzozMTMwCisjLCBjLWZvcm1hdAorbXNnaWQgIkV4cGVjdGVkICd0bycgY29tbWFuZCwgZ290ICVzIgorbXNnc3RyICLpoJDmnJ8gJ3RvJyDmjIfku6TvvIzlvpfliLAgJXMiCisKKyM6IGZhc3QtaW1wb3J0LmM6MzI1NAorIywgYy1mb3JtYXQKK21zZ2lkICJmZWF0dXJlICclcycgZm9yYmlkZGVuIGluIGlucHV0IHdpdGhvdXQgLS1hbGxvdy11bnNhZmUtZmVhdHVyZXMiCittc2dzdHIgIuaykuaciSAtLWFsbG93LXVuc2FmZS1mZWF0dXJlcyDmmYLvvIznpoHmraLlnKjovLjlhaXkuK3kvb/nlKggJyVzJyDlip/og70iCisKKyM6IGNyZWRlbnRpYWwtY2FjaGUtLWRhZW1vbi5jOjIyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhlIHBlcm1pc3Npb25zIG9uIHlvdXIgc29ja2V0IGRpcmVjdG9yeSBhcmUgdG9vIGxvb3NlOyBvdGhlclxuIgorInVzZXJzIG1heSBiZSBhYmxlIHRvIHJlYWQgeW91ciBjYWNoZWQgY3JlZGVudGlhbHMuIENvbnNpZGVyIHJ1bm5pbmc6XG4iCisiXG4iCisiXHRjaG1vZCAwNzAwICVzIgorbXNnc3RyICIiCisi5oKo55qEIHNvY2tldCDnm67pjITmrIrpmZDpgY7mlrzlr6zprIbvvIzlhbbku5bkvb/nlKjogIXlj6/og73mnIPoroDlj5bmgqjlv6vlj5bnmoToqo3orYnoqIrmga/jgILogIPmha7ln7ciCisi6KGM77yaXG4iCisiXG4iCisiXHRjaG1vZCAwNzAwICVzIgorCisjOiBjcmVkZW50aWFsLWNhY2hlLS1kYWVtb24uYzoyNzIKK21zZ2lkICJwcmludCBkZWJ1Z2dpbmcgbWVzc2FnZXMgdG8gc3RkZXJyIgorbXNnc3RyICLpmaTpjK/oqIrmga/ovLjlh7rliLDmqJnmupbpjK/oqqQiCisKKyM6IHQvaGVscGVyL3Rlc3QtcmVhY2guYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29tbWl0ICVzIGlzIG5vdCBtYXJrZWQgcmVhY2hhYmxlIgorbXNnc3RyICLmj5DkuqQgJXMg5rKS5pyJ5qiZ6KiY54K65Y+v5Lul5Y+W5b6XIgorCisjOiB0L2hlbHBlci90ZXN0LXJlYWNoLmM6MTYyCittc2dpZCAidG9vIG1hbnkgY29tbWl0cyBtYXJrZWQgcmVhY2hhYmxlIgorbXNnc3RyICLlpKrlpJrmj5DkuqTmqJnoqJjngrrlj6/ku6Xlj5blvpciCisKKyM6IHQvaGVscGVyL3Rlc3Qtc2VydmUtdjIuYzo3Cittc2dpZCAidGVzdC10b29sIHNlcnZlLXYyIFs8b3B0aW9ucz5dIgorbXNnc3RyICJ0ZXN0LXRvb2wgc2VydmUtdjIgWzzpgbjpoIU+XSIKKworIzogdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jOjE5Cittc2dpZCAiZXhpdCBpbW1lZGlhdGVseSBhZnRlciBhZHZlcnRpc2luZyBjYXBhYmlsaXRpZXMiCittc2dzdHIgIuWwjeiDveWKm+W7o+WRiuS5i+W+jOeri+WNs+mboumWiyIKKworIzogZ2l0LmM6MjcKK21zZ2lkICIiCisiZ2l0IFstLXZlcnNpb25dIFstLWhlbHBdIFstQyA8cGF0aD5dIFstYyA8bmFtZT49PHZhbHVlPl1cbiIKKyIgICAgICAgICAgIFstLWV4ZWMtcGF0aFs9PHBhdGg+XV0gWy0taHRtbC1wYXRoXSBbLS1tYW4tcGF0aF0gWy0taW5mby1wYXRoXVxuIgorIiAgICAgICAgICAgWy1wIHwgLS1wYWdpbmF0ZSB8IC1QIHwgLS1uby1wYWdlcl0gWy0tbm8tcmVwbGFjZS1vYmplY3RzXSBbLS0iCisiYmFyZV1cbiIKKyIgICAgICAgICAgIFstLWdpdC1kaXI9PHBhdGg+XSBbLS13b3JrLXRyZWU9PHBhdGg+XSBbLS1uYW1lc3BhY2U9PG5hbWU+XVxuIgorIiAgICAgICAgICAgPGNvbW1hbmQ+IFs8YXJncz5dIgorbXNnc3RyICIiCisiZ2l0IFstLXZlcnNpb25dIFstLWhlbHBdIFstQyA86Lev5b6RPl0gWy1jIDzlkI3nqLE+PTzlj5blgLw+XVxuIgorIiAgICAgICAgICAgWy0tZXhlYy1wYXRoWz086Lev5b6RPl1dIFstLWh0bWwtcGF0aF0gWy0tbWFuLXBhdGhdIFstLWluZm8tcGF0aF1cbiIKKyIgICAgICAgICAgIFstcCB8IC0tcGFnaW5hdGUgfCAtUCB8IC0tbm8tcGFnZXJdIFstLW5vLXJlcGxhY2Utb2JqZWN0c10gWy0tIgorImJhcmVdXG4iCisiICAgICAgICAgICBbLS1naXQtZGlyPTzot6/lvpE+XSBbLS13b3JrLXRyZWU9POi3r+W+kT5dIFstLW5hbWVzcGFjZT085ZCN56ixPl1cbiIKKyIgICAgICAgICAgIDzmjIfku6Q+IFs85Y+D5pW4Pl0iCisKKyM6IGdpdC5jOjM0Cittc2dpZCAiIgorIidnaXQgaGVscCAtYScgYW5kICdnaXQgaGVscCAtZycgbGlzdCBhdmFpbGFibGUgc3ViY29tbWFuZHMgYW5kIHNvbWVcbiIKKyJjb25jZXB0IGd1aWRlcy4gU2VlICdnaXQgaGVscCA8Y29tbWFuZD4nIG9yICdnaXQgaGVscCA8Y29uY2VwdD4nXG4iCisidG8gcmVhZCBhYm91dCBhIHNwZWNpZmljIHN1YmNvbW1hbmQgb3IgY29uY2VwdC5cbiIKKyJTZWUgJ2dpdCBoZWxwIGdpdCcgZm9yIGFuIG92ZXJ2aWV3IG9mIHRoZSBzeXN0ZW0uIgorbXNnc3RyICIiCisi5oyH5LukICdnaXQgaGVscCAtYScg5ZKMICdnaXQgaGVscCAtZycg6aGv56S65Y+v55So55qE5a2Q5oyH5Luk5ZKM5LiA5Lqb5qaC5b+16Kqq5piO44CCXG4iCisi5qqi6KaWICdnaXQgaGVscCA85oyH5LukPicg5oiWICdnaXQgaGVscCA85qaC5b+1Picg5Lul5Y+W5b6X5o+Q5L6b5a2Q5oyH5Luk5oiW5qaC5b+1XG4iCisi6Kqq5piO44CCXG4iCisi5pyJ6Zec57O757Wx5qaC6L+w77yM5qqi6KaWICdnaXQgaGVscCBnaXQn44CCIgorCisjOiBnaXQuYzoxODYKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtLWdpdC1kaXJcbiIKK21zZ3N0ciAi5rKS5pyJ54K6IC0tZ2l0LWRpciDmj5Dkvpvnm67pjIRcbiIKKworIzogZ2l0LmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIG5hbWVzcGFjZSBnaXZlbiBmb3IgLS1uYW1lc3BhY2VcbiIKK21zZ3N0ciAi5rKS5pyJ54K6IC0tbmFtZXNwYWNlIOaPkOS+m+WRveWQjeepuumWk1xuIgorCisjOiBnaXQuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gZGlyZWN0b3J5IGdpdmVuIGZvciAtLXdvcmstdHJlZVxuIgorbXNnc3RyICLmspLmnInngrogLS13b3JrLXRyZWUg5o+Q5L6b55uu6YyEXG4iCisKKyM6IGdpdC5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwcmVmaXggZ2l2ZW4gZm9yIC0tc3VwZXItcHJlZml4XG4iCittc2dzdHIgIuaykuacieeCuiAtLXN1cGVyLXByZWZpeCDmj5DkvpvliY3ntrRcbiIKKworIzogZ2l0LmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIi1jIGV4cGVjdHMgYSBjb25maWd1cmF0aW9uIHN0cmluZ1xuIgorbXNnc3RyICLmh4nngrogLWMg5o+Q5L6b5LiA5YCL6Kit5a6a5a2X5LiyXG4iCisKKyM6IGdpdC5jOjI4OAorIywgYy1mb3JtYXQKK21zZ2lkICJubyBkaXJlY3RvcnkgZ2l2ZW4gZm9yIC1DXG4iCittc2dzdHIgIuaykuacieeCuiAtQyDmj5Dkvpvnm67pjIRcbiIKKworIzogZ2l0LmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uOiAlc1xuIgorbXNnc3RyICLmnKrnn6XpgbjpoIXvvJolc1xuIgorCisjOiBnaXQuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgZXhwYW5kaW5nIGFsaWFzICclcyc6ICclcyciCittc2dzdHIgIuWcqOaTtOWxleWIpeWQjSAnJXMnIOaZgu+8miclcyciCisKKyM6IGdpdC5jOjM2OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWxpYXMgJyVzJyBjaGFuZ2VzIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiIKKyJZb3UgY2FuIHVzZSAnIWdpdCcgaW4gdGhlIGFsaWFzIHRvIGRvIHRoaXMiCittc2dzdHIgIiIKKyLliKXlkI0gJyVzJyDkv67mlLnnkrDlooPorormlbjjgILmgqjlj6/ku6Xkvb/nlKjlnKjliKXlkI3kuK1cbiIKKyLkvb/nlKggJyFnaXQnIgorCisjOiBnaXQuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgYWxpYXMgZm9yICVzIgorbXNnc3RyICIlcyDnmoTnqbrliKXlkI0iCisKKyM6IGdpdC5jOjM3OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWN1cnNpdmUgYWxpYXM6ICVzIgorbXNnc3RyICLpgZ7ov7TnmoTliKXlkI3vvJolcyIKKworIzogZ2l0LmM6NDU5Cittc2dpZCAid3JpdGUgZmFpbHVyZSBvbiBzdGFuZGFyZCBvdXRwdXQiCittc2dzdHIgIuWcqOaomea6lui8uOWHuuWvq+WFpeWkseaVlyIKKworIzogZ2l0LmM6NDYxCittc2dpZCAidW5rbm93biB3cml0ZSBmYWlsdXJlIG9uIHN0YW5kYXJkIG91dHB1dCIKK21zZ3N0ciAi5Yiw5qiZ5rqW6Ly45Ye655qE5pyq55+l5a+r5YWl6Yyv6KqkIgorCisjOiBnaXQuYzo0NjMKK21zZ2lkICJjbG9zZSBmYWlsZWQgb24gc3RhbmRhcmQgb3V0cHV0IgorbXNnc3RyICLmqJnmupbovLjlh7rpl5zplonlpLHmlZciCisKKyM6IGdpdC5jOjc5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbGlhcyBsb29wIGRldGVjdGVkOiBleHBhbnNpb24gb2YgJyVzJyBkb2VzIG5vdCB0ZXJtaW5hdGU6JXMiCittc2dzdHIgIuaqoua4rOWIsOWIpeWQjeW+queSsO+8miclcyfnmoTmk7TlsZXmnKrntYLmraLvvJolcyIKKworIzogZ2l0LmM6ODQzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBoYW5kbGUgJXMgYXMgYSBidWlsdGluIgorbXNnc3RyICLkuI3og73kvZzngrrlhaflu7rmjIfku6TomZXnkIYgJXMiCisKKyM6IGdpdC5jOjg1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXNhZ2U6ICVzXG4iCisiXG4iCittc2dzdHIgIiIKKyLnlKjms5XvvJolc1xuIgorIlxuIgorCisjOiBnaXQuYzo4NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXhwYW5zaW9uIG9mIGFsaWFzICclcycgZmFpbGVkOyAnJXMnIGlzIG5vdCBhIGdpdCBjb21tYW5kXG4iCittc2dzdHIgIuWxlemWi+WIpeWQjeaMh+S7pCAnJXMnIOWkseaVl++8jCclcycg5LiN5piv5LiA5YCLIGdpdCDmjIfku6RcbiIKKworIzogZ2l0LmM6ODg4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBydW4gY29tbWFuZCAnJXMnOiAlc1xuIgorbXNnc3RyICLln7fooYzmjIfku6QgJyVzJyDlpLHmlZfvvJolc1xuIgorCisjOiBodHRwLmM6Mzc4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5lZ2F0aXZlIHZhbHVlIGZvciBodHRwLnBvc3RidWZmZXI7IGRlZmF1bHRpbmcgdG8gJWQiCittc2dzdHIgImh0dHAucG9zdGJ1ZmZlciDngrrosqDlgLzvvIzpoJDoqK3ngrogJWQiCisKKyM6IGh0dHAuYzozOTkKK21zZ2lkICJEZWxlZ2F0aW9uIGNvbnRyb2wgaXMgbm90IHN1cHBvcnRlZCB3aXRoIGNVUkwgPCA3LjIyLjAiCittc2dzdHIgIuS4jeaUr+aPtOWnlOiol+aOp+WItu+8jOWboOeCuiBjVVJMIDwgNy4yMi4wIgorCisjOiBodHRwLmM6NDA4Cittc2dpZCAiUHVibGljIGtleSBwaW5uaW5nIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy40NC4wIgorbXNnc3RyICLkuI3mlK/mj7TlhazpkbDmqpTmoYjpjpblrprvvIzlm6DngrogY1VSTCA8IDcuNDQuMCIKKworIzogaHR0cC5jOjg3NgorbXNnaWQgIkNVUkxTU0xPUFRfTk9fUkVWT0tFIG5vdCBzdXBwb3J0ZWQgd2l0aCBjVVJMIDwgNy40NC4wIgorbXNnc3RyICLkuI3mlK/mj7QgQ1VSTFNTTE9QVF9OT19SRVZPS0XvvIzlm6DngrogY1VSTCA8IDcuNDQuMCIKKworIzogaHR0cC5jOjk0OQorbXNnaWQgIlByb3RvY29sIHJlc3RyaWN0aW9ucyBub3Qgc3VwcG9ydGVkIHdpdGggY1VSTCA8IDcuMTkuNCIKK21zZ3N0ciAi5LiN5pSv5o+05Y2U5a6a6ZmQ5Yi277yM5Zug54K6IGNVUkwgPCA3LjE5LjQiCisKKyM6IGh0dHAuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgIlVuc3VwcG9ydGVkIFNTTCBiYWNrZW5kICclcycuIFN1cHBvcnRlZCBTU0wgYmFja2VuZHM6IgorbXNnc3RyICLkuI3mlK/mj7TnmoQgU1NMIOW+jOerryAnJXMn44CC5pSv5o+055qEIFNTTCDlvoznq6/vvJoiCisKKyM6IGh0dHAuYzoxMDkzCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvdWxkIG5vdCBzZXQgU1NMIGJhY2tlbmQgdG8gJyVzJzogY1VSTCB3YXMgYnVpbHQgd2l0aG91dCBTU0wgYmFja2VuZHMiCittc2dzdHIgIueEoeazleioreWumiBTU0wg5b6M56uv54K6ICclcyfvvJpjVVJMOiBjVVJMIOaykuacieS9v+eUqCBTU0wg5b6M56uv5qeL5bu6IgorCisjOiBodHRwLmM6MTA5NworIywgYy1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3Qgc2V0IFNTTCBiYWNrZW5kIHRvICclcyc6IGFscmVhZHkgc2V0IgorbXNnc3RyICLnhKHms5XlsIcgU1NMIOW+jOerr+ioreWumueCuiAnJXMn77ya5bey57aT6Kit5a6aIgorCisjOiBodHRwLmM6MTk2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHVwZGF0ZSB1cmwgYmFzZSBmcm9tIHJlZGlyZWN0aW9uOlxuIgorIiAgYXNrZWQgZm9yOiAlc1xuIgorIiAgIHJlZGlyZWN0OiAlcyIKK21zZ3N0ciAiIgorIuS4jeiDveabtOaWsOmHjeWumuWQkeeahCB1cmwgYmFzZe+8mlxuIgorIiAgICAg6KuL5rGC77yaJXNcbiIKKyIgICDph43lrprlkJHvvJolcyIKKworIzogcmVtb3RlLWN1cmwuYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBxdW90aW5nIGluIHB1c2gtb3B0aW9uIHZhbHVlOiAnJXMnIgorbXNnc3RyICLlnKggcHVzaC1vcHRpb24g5Y+W5YC85Lit54Sh5pWI55qE5byV6Jmf77yaJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXNpbmZvL3JlZnMgbm90IHZhbGlkOiBpcyB0aGlzIGEgZ2l0IHJlcG9zaXRvcnk/IgorbXNnc3RyICIlc2luZm8vcmVmcyDnhKHmlYjvvJrpgJnmmK/kuIDlgIsgZ2l0IOeJiOacrOW6q+WXju+8nyIKKworIzogcmVtb3RlLWN1cmwuYzozNjQKK21zZ2lkICJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZXhwZWN0ZWQgc2VydmljZSwgZ290IGZsdXNoIHBhY2tldCIKK21zZ3N0ciAi54Sh5pWI55qE5pyN5YuZ56uv5Zue5oeJ44CC6aCQ5pyf5pyN5YuZ77yM5b6X5YiwIGZsdXNoIOWMhSIKKworIzogcmVtb3RlLWN1cmwuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzZXJ2ZXIgcmVzcG9uc2U7IGdvdCAnJXMnIgorbXNnc3RyICLnhKHmlYjnmoTmnI3li5nnq6/lm57mh4nvvIzlvpfliLAgJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVwb3NpdG9yeSAnJXMnIG5vdCBmb3VuZCIKK21zZ3N0ciAi54mI5pys5bqrICclcycg5pyq5om+5YiwIgorCisjOiByZW1vdGUtY3VybC5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGlvbiBmYWlsZWQgZm9yICclcyciCittc2dzdHIgIiclcycg6Lqr5Lu96amX6K2J5aSx5pWXIgorCisjOiByZW1vdGUtY3VybC5jOjQ2MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzICclcyc6ICVzIgorbXNnc3RyICLnhKHms5XlrZjlj5YgJyVzJ++8miVzIgorCisjOiByZW1vdGUtY3VybC5jOjQ2OQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWRpcmVjdGluZyB0byAlcyIKK21zZ3N0ciAi6YeN5a6a5ZCR5YiwICVzIgorCisjOiByZW1vdGUtY3VybC5jOjU5MworbXNnaWQgInNob3VsZG4ndCBoYXZlIEVPRiB3aGVuIG5vdCBnZW50bGUgb24gRU9GIgorbXNnc3RyICLnlbbmspLmnInoqK3lrprmuqvlkozomZXnkIbmqpTmoYjntZDmnZ/nrKbvvIhFT0bvvInmmYLvvIzkuI3mh4noqbLmnInmqpTmoYjntZDmnZ/nrKYiCisKKyM6IHJlbW90ZS1jdXJsLmM6NjczCittc2dpZCAidW5hYmxlIHRvIHJld2luZCBycGMgcG9zdCBkYXRhIC0gdHJ5IGluY3JlYXNpbmcgaHR0cC5wb3N0QnVmZmVyIgorbXNnc3RyICLnhKHms5XpgoTljp8gcnBjIHBvc3Qg6LOH5paZIC0g5ZiX6Kmm5aKe5YqgIGh0dHAucG9zdEJ1ZmZlciIKKworIzogcmVtb3RlLWN1cmwuYzo3MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUlBDIGZhaWxlZDsgJXMiCittc2dzdHIgIlJQQyDlpLHmlZfjgIIlcyIKKworIzogcmVtb3RlLWN1cmwuYzo3NzMKK21zZ2lkICJjYW5ub3QgaGFuZGxlIHB1c2hlcyB0aGlzIGJpZyIKK21zZ3N0ciAi5LiN6IO96JmV55CG6YCZ6bq85aSn55qE5o6o6YCBIgorCisjOiByZW1vdGUtY3VybC5jOjg4OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGRlZmxhdGUgZXJyb3IgJWQiCittc2dzdHIgIuS4jeiDveWjk+e4ruiri+axgu+8jHpsaWIg5aOT57iu6Yyv6KqkICVkIgorCisjOiByZW1vdGUtY3VybC5jOjg5MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGVuZCBlcnJvciAlZCIKK21zZ3N0ciAi5LiN6IO95aOT57iu6KuL5rGC77yMemxpYiDntZDmnZ/pjK/oqqQgJWQiCisKKyM6IHJlbW90ZS1jdXJsLmM6MTAyMworbXNnaWQgImR1bWIgaHR0cCB0cmFuc3BvcnQgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IGNhcGFiaWxpdGllcyIKK21zZ3N0ciAi5ZWeIGh0dHAg5YKz6Ly45LiN5pSv5o+0IHNoYWxsbG93IOiDveWKmyIKKworIzogcmVtb3RlLWN1cmwuYzoxMDM4Cittc2dpZCAiZmV0Y2ggZmFpbGVkLiIKK21zZ3N0ciAi5Y+W5b6X5aSx5pWX44CCIgorCisjOiByZW1vdGUtY3VybC5jOjEwODYKK21zZ2lkICJjYW5ub3QgZmV0Y2ggYnkgc2hhMSBvdmVyIHNtYXJ0IGh0dHAiCittc2dzdHIgIueEoeazlemAj+mBjuaZuuaFpyBIVFRQIOWPluW+lyBzaGExIgorCisjOiByZW1vdGUtY3VybC5jOjExMzAgcmVtb3RlLWN1cmwuYzoxMTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInByb3RvY29sIGVycm9yOiBleHBlY3RlZCBzaGEvcmVmLCBnb3QgJyVzJyIKK21zZ3N0ciAi5Y2U5a6a6Yyv6Kqk77ya5pyf5pybIHNoYS9yZWbvvIzljbvlvpfliLAgJyVzJyIKKworIzogcmVtb3RlLWN1cmwuYzoxMTQ4IHJlbW90ZS1jdXJsLmM6MTI2MworIywgYy1mb3JtYXQKK21zZ2lkICJodHRwIHRyYW5zcG9ydCBkb2VzIG5vdCBzdXBwb3J0ICVzIgorbXNnc3RyICJodHRwIOWCs+i8uOWNlOWumuS4jeaUr+aPtCAlcyIKKworIzogcmVtb3RlLWN1cmwuYzoxMTg0Cittc2dpZCAiZ2l0LWh0dHAtcHVzaCBmYWlsZWQiCittc2dzdHIgImdpdC1odHRwLXB1c2gg5aSx5pWXIgorCisjOiByZW1vdGUtY3VybC5jOjEzNjkKK21zZ2lkICJyZW1vdGUtY3VybDogdXNhZ2U6IGdpdCByZW1vdGUtY3VybCA8cmVtb3RlPiBbPHVybD5dIgorbXNnc3RyICJyZW1vdGUtY3VybO+8mueUqOazle+8mmdpdCByZW1vdGUtY3VybCA86YGg56uvPiBbPHVybD5dIgorCisjOiByZW1vdGUtY3VybC5jOjE0MDEKK21zZ2lkICJyZW1vdGUtY3VybDogZXJyb3IgcmVhZGluZyBjb21tYW5kIHN0cmVhbSBmcm9tIGdpdCIKK21zZ3N0ciAicmVtb3RlLWN1cmzvvJrpjK/oqqToroDlj5bkvoboh6ogZ2l0IOeahOaMh+S7pOa1gSIKKworIzogcmVtb3RlLWN1cmwuYzoxNDA4Cittc2dpZCAicmVtb3RlLWN1cmw6IGZldGNoIGF0dGVtcHRlZCB3aXRob3V0IGEgbG9jYWwgcmVwbyIKK21zZ3N0ciAicmVtb3RlLWN1cmzvvJrlmJfoqabmspLmnInmnKzmqZ/niYjmnKzluqvkuIvlj5blvpciCisKKyM6IHJlbW90ZS1jdXJsLmM6MTQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdGUtY3VybDogdW5rbm93biBjb21tYW5kICclcycgZnJvbSBnaXQiCittc2dzdHIgInJlbW90ZS1jdXJs77ya5pyq55+l55qE5L6G6IeqIGdpdCDnmoTmjIfku6QgJyVzJyIKKworIzogbGlzdC1vYmplY3RzLWZpbHRlci1vcHRpb25zLmg6ODUKK21zZ2lkICJhcmdzIgorbXNnc3RyICLlj4PmlbgiCisKKyM6IGxpc3Qtb2JqZWN0cy1maWx0ZXItb3B0aW9ucy5oOjg2Cittc2dpZCAib2JqZWN0IGZpbHRlcmluZyIKK21zZ3N0ciAi54mp5Lu26YGO5r++IgorCisjOiBwYXJzZS1vcHRpb25zLmg6MTgzCittc2dpZCAiZXhwaXJ5LWRhdGUiCittc2dzdHIgIuWIsOacn+aZgumWkyIKKworIzogcGFyc2Utb3B0aW9ucy5oOjE5NworbXNnaWQgIm5vLW9wIChiYWNrd2FyZCBjb21wYXRpYmlsaXR5KSIKK21zZ3N0ciAi56m65YuV5L2c77yI5ZCR5b6M55u45a6577yJIgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzA5Cittc2dpZCAiYmUgbW9yZSB2ZXJib3NlIgorbXNnc3RyICLmm7TliqDoqbPntLAiCisKKyM6IHBhcnNlLW9wdGlvbnMuaDozMTEKK21zZ2lkICJiZSBtb3JlIHF1aWV0IgorbXNnc3RyICLmm7TliqDlronpnZwiCisKKyM6IHBhcnNlLW9wdGlvbnMuaDozMTcKK21zZ2lkICJ1c2UgPG4+IGRpZ2l0cyB0byBkaXNwbGF5IFNIQS0xcyIKK21zZ3N0ciAi55SoIDxuPiDkvY3mlbjlrZfpoa/npLogU0hBLTEg6Zuc5rmK5YC8IgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzM2Cittc2dpZCAiaG93IHRvIHN0cmlwIHNwYWNlcyBhbmQgI2NvbW1lbnRzIGZyb20gbWVzc2FnZSIKK21zZ3N0ciAi6Kit5a6a5aaC5L2V5Yiq6Zmk5o+Q5Lqk6Kqq5piO6KOh55qE56m65qC85ZKMICPlgpnoqLsiCisKKyM6IHBhcnNlLW9wdGlvbnMuaDozMzcKK21zZ2lkICJyZWFkIHBhdGhzcGVjIGZyb20gZmlsZSIKK21zZ3N0ciAi5b6e5qqU5qGI6K6A5Y+WIDzot6/lvpHopo/moLw+IgorCisjOiBwYXJzZS1vcHRpb25zLmg6MzM4Cittc2dpZCAiIgorIndpdGggLS1wYXRoc3BlYy1mcm9tLWZpbGUsIHBhdGhzcGVjIGVsZW1lbnRzIGFyZSBzZXBhcmF0ZWQgd2l0aCBOVUwgY2hhcmFjdGVyIgorbXNnc3RyICLlpoLkvb/nlKggLS1wYXRoc3BlYy1mcm9tLWZpbGXvvIzliYcgPOi3r+W+keimj+agvD4g5YWD5Lu25pyD5L2/55SoIE5VTCDlrZflhYPliIbpmpQiCisKKyM6IHJlZi1maWx0ZXIuaDoxMDEKK21zZ2lkICJrZXkiCittc2dzdHIgImtleSIKKworIzogcmVmLWZpbHRlci5oOjEwMQorbXNnaWQgImZpZWxkIG5hbWUgdG8gc29ydCBvbiIKK21zZ3N0ciAi5o6S5bqP55qE5qyE5L2N5ZCNIgorCisjOiByZXJlcmUuaDo0NAorbXNnaWQgInVwZGF0ZSB0aGUgaW5kZXggd2l0aCByZXVzZWQgY29uZmxpY3QgcmVzb2x1dGlvbiBpZiBwb3NzaWJsZSIKK21zZ3N0ciAi5aaC5p6c5Y+v6IO977yM6YeN55So6KGd56qB6Kej5rG65pu05paw57Si5byVIgorCisjOiB3dC1zdGF0dXMuaDo2NworbXNnaWQgIkhFQUQgZGV0YWNoZWQgYXQgIgorbXNnc3RyICLplovpoK3mjIfmqJnliIbpm6LmlrwgIgorCisjOiB3dC1zdGF0dXMuaDo2OAorbXNnaWQgIkhFQUQgZGV0YWNoZWQgZnJvbSAiCittc2dzdHIgIumWi+mgreaMh+aomeWIhumbouiHqiAiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjUwCittc2dpZCAiQWRkIGZpbGUgY29udGVudHMgdG8gdGhlIGluZGV4IgorbXNnc3RyICLmlrDlop7mqpTmoYjlhaflrrnoh7PntKLlvJUiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjUxCittc2dpZCAiQXBwbHkgYSBzZXJpZXMgb2YgcGF0Y2hlcyBmcm9tIGEgbWFpbGJveCIKK21zZ3N0ciAi5aWX55So5L+h566x5qC85byP55qE57O75YiX5L+u6KOc5qqUIgorCisjOiBjb21tYW5kLWxpc3QuaDo1MgorbXNnaWQgIkFubm90YXRlIGZpbGUgbGluZXMgd2l0aCBjb21taXQgaW5mb3JtYXRpb24iCittc2dzdHIgIuS9v+eUqOaPkOS6pOioiuaBr+WCmeiou+aqlOahiOihjCIKKworIzogY29tbWFuZC1saXN0Lmg6NTMKK21zZ2lkICJBcHBseSBhIHBhdGNoIHRvIGZpbGVzIGFuZC9vciB0byB0aGUgaW5kZXgiCittc2dzdHIgIuWll+eUqOS4gOWAi+S/ruijnOaqlOWIsOaqlOahiOWSjC/miJbntKLlvJXljYAiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjU0Cittc2dpZCAiSW1wb3J0IGEgR05VIEFyY2ggcmVwb3NpdG9yeSBpbnRvIEdpdCIKK21zZ3N0ciAi5bCH5LiA5YCLIEdOVSBBcmNoIOeJiOacrOW6q+WMr+WFpeWIsCBHaXQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjU1Cittc2dpZCAiQ3JlYXRlIGFuIGFyY2hpdmUgb2YgZmlsZXMgZnJvbSBhIG5hbWVkIHRyZWUiCittc2dzdHIgIuWfuuaWvOWRveWQjemBjueahOaoueW7uueri+aqlOahiOWwgeWtmCIKKworIzogY29tbWFuZC1saXN0Lmg6NTYKK21zZ2lkICJVc2UgYmluYXJ5IHNlYXJjaCB0byBmaW5kIHRoZSBjb21taXQgdGhhdCBpbnRyb2R1Y2VkIGEgYnVnIgorbXNnc3RyICLpgI/pgY7kuozliIblsIvmib7lrprkvY3lvJXlhaUgYnVnIOeahOaPkOS6pCIKKworIzogY29tbWFuZC1saXN0Lmg6NTcKK21zZ2lkICJTaG93IHdoYXQgcmV2aXNpb24gYW5kIGF1dGhvciBsYXN0IG1vZGlmaWVkIGVhY2ggbGluZSBvZiBhIGZpbGUiCittc2dzdHIgIumhr+ekuuaqlOahiOavj+S4gOihjOacgOW+jOS/ruaUueeahOeJiOacrOWSjOS/ruaUueiAhSIKKworIzogY29tbWFuZC1saXN0Lmg6NTgKK21zZ2lkICJMaXN0LCBjcmVhdGUsIG9yIGRlbGV0ZSBicmFuY2hlcyIKK21zZ3N0ciAi5YiX5Ye644CB5bu656uL5oiW5Yiq6Zmk5YiG5pSvIgorCisjOiBjb21tYW5kLWxpc3QuaDo1OQorbXNnaWQgIk1vdmUgb2JqZWN0cyBhbmQgcmVmcyBieSBhcmNoaXZlIgorbXNnc3RyICLpgI/pgY7mrbjmqpTnp7vli5Xnianku7blkozlvJXnlKgiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjYwCittc2dpZCAiUHJvdmlkZSBjb250ZW50IG9yIHR5cGUgYW5kIHNpemUgaW5mb3JtYXRpb24gZm9yIHJlcG9zaXRvcnkgb2JqZWN0cyIKK21zZ3N0ciAi5o+Q5L6b54mI5pys5bqr54mp5Lu255qE5YWn5a6544CB6aGe5Z6L5oiW5aSn5bCPIgorCisjOiBjb21tYW5kLWxpc3QuaDo2MQorbXNnaWQgIkRpc3BsYXkgZ2l0YXR0cmlidXRlcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAi6aGv56S6IGdpdGF0dHJpYnV0ZXMg6KiK5oGvIgorCisjOiBjb21tYW5kLWxpc3QuaDo2MgorbXNnaWQgIkRlYnVnIGdpdGlnbm9yZSAvIGV4Y2x1ZGUgZmlsZXMiCittc2dzdHIgIumZpOmMryBnaXRpZ25vcmUgLyBleGNsdWRlIOaqlOahiCIKKworIzogY29tbWFuZC1saXN0Lmg6NjMKK21zZ2lkICJTaG93IGNhbm9uaWNhbCBuYW1lcyBhbmQgZW1haWwgYWRkcmVzc2VzIG9mIGNvbnRhY3RzIgorbXNnc3RyICLpoa/npLroga/ntaHkurrnmoTopo/nr4TlkI3nqLHlkozpm7vlrZDkv6Hku7YiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjY0Cittc2dpZCAiU3dpdGNoIGJyYW5jaGVzIG9yIHJlc3RvcmUgd29ya2luZyB0cmVlIGZpbGVzIgorbXNnc3RyICLliIfmj5vliIbmlK/miJblvqnljp/lt6XkvZzljYDmqpTmoYgiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjY1Cittc2dpZCAiQ29weSBmaWxlcyBmcm9tIHRoZSBpbmRleCB0byB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICLlvp7ntKLlvJXopIfoo73mqpTmoYjliLDlt6XkvZzljYAiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjY2Cittc2dpZCAiRW5zdXJlcyB0aGF0IGEgcmVmZXJlbmNlIG5hbWUgaXMgd2VsbCBmb3JtZWQiCittc2dzdHIgIueiuuS/neW8leeUqOWQjeeoseagvOW8j+ato+eiuiIKKworIzogY29tbWFuZC1saXN0Lmg6NjcKK21zZ2lkICJGaW5kIGNvbW1pdHMgeWV0IHRvIGJlIGFwcGxpZWQgdG8gdXBzdHJlYW0iCittc2dzdHIgIuWwi+aJvuWwmuacquWll+eUqOWIsOS4iua4uOeahOaPkOS6pCIKKworIzogY29tbWFuZC1saXN0Lmg6NjgKK21zZ2lkICJBcHBseSB0aGUgY2hhbmdlcyBpbnRyb2R1Y2VkIGJ5IHNvbWUgZXhpc3RpbmcgY29tbWl0cyIKK21zZ3N0ciAi5oeJ55So5LiA5Lqb54++5a2Y5o+Q5Lqk5byV5YWl55qE5L+u5pS5IgorCisjOiBjb21tYW5kLWxpc3QuaDo2OQorbXNnaWQgIkdyYXBoaWNhbCBhbHRlcm5hdGl2ZSB0byBnaXQtY29tbWl0IgorbXNnc3RyICJnaXQtY29tbWl0IOeahOWcluW9ouabv+S7o+S7i+mdoiIKKworIzogY29tbWFuZC1saXN0Lmg6NzAKK21zZ2lkICJSZW1vdmUgdW50cmFja2VkIGZpbGVzIGZyb20gdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAi5b6e5bel5L2c5Y2A5Lit5Yiq6Zmk5pyq6L+96Lmk5qqU5qGIIgorCisjOiBjb21tYW5kLWxpc3QuaDo3MQorbXNnaWQgIkNsb25lIGEgcmVwb3NpdG9yeSBpbnRvIGEgbmV3IGRpcmVjdG9yeSIKK21zZ3N0ciAi6KSH6KO954mI5pys5bqr5Yiw5LiA5YCL5paw55uu6YyEIgorCisjOiBjb21tYW5kLWxpc3QuaDo3MgorbXNnaWQgIkRpc3BsYXkgZGF0YSBpbiBjb2x1bW5zIgorbXNnc3RyICLku6XliJfnmoTmlrnlvI/poa/npLros4fmlpkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjczCittc2dpZCAiUmVjb3JkIGNoYW5nZXMgdG8gdGhlIHJlcG9zaXRvcnkiCittc2dzdHIgIuiomOmMhOiuiuabtOWIsOeJiOacrOW6qyIKKworIzogY29tbWFuZC1saXN0Lmg6NzQKK21zZ2lkICJXcml0ZSBhbmQgdmVyaWZ5IEdpdCBjb21taXQtZ3JhcGggZmlsZXMiCittc2dzdHIgIuWvq+WFpeWSjOmpl+itiSBHaXQg5o+Q5Lqk5ZyW5qqU5qGIIgorCisjOiBjb21tYW5kLWxpc3QuaDo3NQorbXNnaWQgIkNyZWF0ZSBhIG5ldyBjb21taXQgb2JqZWN0IgorbXNnc3RyICLlu7rnq4vkuIDlgIvmlrDnmoTmj5DkuqTnianku7YiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjc2Cittc2dpZCAiR2V0IGFuZCBzZXQgcmVwb3NpdG9yeSBvciBnbG9iYWwgb3B0aW9ucyIKK21zZ3N0ciAi5Y+W5b6X5ZKM6Kit5a6a54mI5pys5bqr5oiW6ICF5YWo5Z+f6YG46aCFIgorCisjOiBjb21tYW5kLWxpc3QuaDo3NworbXNnaWQgIkNvdW50IHVucGFja2VkIG51bWJlciBvZiBvYmplY3RzIGFuZCB0aGVpciBkaXNrIGNvbnN1bXB0aW9uIgorbXNnc3RyICLoqIjnrpfmnKrmiZPljIXnianku7bnmoTmlbjph4/lkozno4Hnop/nqbrplpPljaDnlKgiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjc4Cittc2dpZCAiUmV0cmlldmUgYW5kIHN0b3JlIHVzZXIgY3JlZGVudGlhbHMiCittc2dzdHIgIuaqoue0ouWSjOWEsuWtmOS9v+eUqOiAheWvhueivCIKKworIzogY29tbWFuZC1saXN0Lmg6NzkKK21zZ2lkICJIZWxwZXIgdG8gdGVtcG9yYXJpbHkgc3RvcmUgcGFzc3dvcmRzIGluIG1lbW9yeSIKK21zZ3N0ciAi5Zyo6KiY5oa26auU5Lit5pqr5pmC5YSy5a2Y5a+G56K855qE5Yqp5omLIgorCisjOiBjb21tYW5kLWxpc3QuaDo4MAorbXNnaWQgIkhlbHBlciB0byBzdG9yZSBjcmVkZW50aWFscyBvbiBkaXNrIgorbXNnc3RyICLlnKjno4Hnop/lhLLlrZjlr4bnorznmoTliqnmiYsiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjgxCittc2dpZCAiRXhwb3J0IGEgc2luZ2xlIGNvbW1pdCB0byBhIENWUyBjaGVja291dCIKK21zZ3N0ciAi5bCH5LiA5YCL5o+Q5Lqk5Yyv5Ye65YiwIENWUyDnsL3lh7rkuK0iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjgyCittc2dpZCAiU2FsdmFnZSB5b3VyIGRhdGEgb3V0IG9mIGFub3RoZXIgU0NNIHBlb3BsZSBsb3ZlIHRvIGhhdGUiCittc2dzdHIgIuW+nuWPpuWkluS4gOWAi+S6uuWAkeaEm+aBqOeahOioreWumueuoeeQhuezu+e1seS4reaLr+aVkeS9oOeahOizh+aWmSIKKworIzogY29tbWFuZC1saXN0Lmg6ODMKK21zZ2lkICJBIENWUyBzZXJ2ZXIgZW11bGF0b3IgZm9yIEdpdCIKK21zZ3N0ciAiR2l0IOeahOS4gOWAiyBDVlMg5pyN5YuZ5qih5pOs5ZmoIgorCisjOiBjb21tYW5kLWxpc3QuaDo4NAorbXNnaWQgIkEgcmVhbGx5IHNpbXBsZSBzZXJ2ZXIgZm9yIEdpdCByZXBvc2l0b3JpZXMiCittc2dzdHIgIuS4gOWAi+mdnuW4uOewoeWWrueahCBHaXQg54mI5pys5bqr5Ly65pyN5ZmoIgorCisjOiBjb21tYW5kLWxpc3QuaDo4NQorbXNnaWQgIkdpdmUgYW4gb2JqZWN0IGEgaHVtYW4gcmVhZGFibGUgbmFtZSBiYXNlZCBvbiBhbiBhdmFpbGFibGUgcmVmIgorbXNnc3RyICLln7rmlrzkuIDlgIvnj77lrZjnmoTlvJXnlKjngrrkuIDlgIvnianku7botbfkuIDlgIvlj6/oroDnmoTlkI3nqLEiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjg2Cittc2dpZCAiU2hvdyBjaGFuZ2VzIGJldHdlZW4gY29tbWl0cywgY29tbWl0IGFuZCB3b3JraW5nIHRyZWUsIGV0YyIKK21zZ3N0ciAi6aGv56S65o+Q5Lqk5LmL6ZaT44CB5o+Q5Lqk5ZKM5bel5L2c5Y2A5LmL6ZaT562J55qE5beu55WwIgorCisjOiBjb21tYW5kLWxpc3QuaDo4NworbXNnaWQgIkNvbXBhcmVzIGZpbGVzIGluIHRoZSB3b3JraW5nIHRyZWUgYW5kIHRoZSBpbmRleCIKK21zZ3N0ciAi5q+U6LyD5bel5L2c5Y2A5ZKM57Si5byV5Y2A5Lit55qE5qqU5qGIIgorCisjOiBjb21tYW5kLWxpc3QuaDo4OAorbXNnaWQgIkNvbXBhcmUgYSB0cmVlIHRvIHRoZSB3b3JraW5nIHRyZWUgb3IgaW5kZXgiCittc2dzdHIgIuWwh+S4gOWAi+aoueWSjOW3peS9nOWNgOaIlue0ouW8leWBmuavlOi8gyIKKworIzogY29tbWFuZC1saXN0Lmg6ODkKK21zZ2lkICJDb21wYXJlcyB0aGUgY29udGVudCBhbmQgbW9kZSBvZiBibG9icyBmb3VuZCB2aWEgdHdvIHRyZWUgb2JqZWN0cyIKK21zZ3N0ciAi5q+U6LyD5YWp5YCL5qi554uA54mp5Lu255qE5qqU5qGI5YWn5a655ZKM5qih5byPIgorCisjOiBjb21tYW5kLWxpc3QuaDo5MAorbXNnaWQgIlNob3cgY2hhbmdlcyB1c2luZyBjb21tb24gZGlmZiB0b29scyIKK21zZ3N0ciAi5L2/55So5bi46KaL55qE5beu55Ww5bel5YW36aGv56S65pu05pS5IgorCisjOiBjb21tYW5kLWxpc3QuaDo5MQorbXNnaWQgIkdpdCBkYXRhIGV4cG9ydGVyIgorbXNnc3RyICJHaXQg6LOH5paZ5Yyv5Ye65ZmoIgorCisjOiBjb21tYW5kLWxpc3QuaDo5MgorbXNnaWQgIkJhY2tlbmQgZm9yIGZhc3QgR2l0IGRhdGEgaW1wb3J0ZXJzIgorbXNnc3RyICJHaXQg5b+r6YCf6LOH5paZ5Yyv5YWl5Zmo5b6M56uvIgorCisjOiBjb21tYW5kLWxpc3QuaDo5MworbXNnaWQgIkRvd25sb2FkIG9iamVjdHMgYW5kIHJlZnMgZnJvbSBhbm90aGVyIHJlcG9zaXRvcnkiCittc2dzdHIgIuW+nuWPpuWkluS4gOWAi+eJiOacrOW6q+S4i+i8ieeJqeS7tuWSjOW8leeUqCIKKworIzogY29tbWFuZC1saXN0Lmg6OTQKK21zZ2lkICJSZWNlaXZlIG1pc3Npbmcgb2JqZWN0cyBmcm9tIGFub3RoZXIgcmVwb3NpdG9yeSIKK21zZ3N0ciAi5b6e5Y+m5LiA5YCL54mI5pys5bqr5Y+W5b6X57y65bCR55qE54mp5Lu2IgorCisjOiBjb21tYW5kLWxpc3QuaDo5NQorbXNnaWQgIlJld3JpdGUgYnJhbmNoZXMiCittc2dzdHIgIumHjeWvq+WIhuaUryIKKworIzogY29tbWFuZC1saXN0Lmg6OTYKK21zZ2lkICJQcm9kdWNlIGEgbWVyZ2UgY29tbWl0IG1lc3NhZ2UiCittc2dzdHIgIueUn+aIkOS4gOWAi+WQiOS9teaPkOS6pOioiuaBryIKKworIzogY29tbWFuZC1saXN0Lmg6OTcKK21zZ2lkICJPdXRwdXQgaW5mb3JtYXRpb24gb24gZWFjaCByZWYiCittc2dzdHIgIuWwjeavj+S4gOWAi+W8leeUqOi8uOWHuuioiuaBryAiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjk4Cittc2dpZCAiUHJlcGFyZSBwYXRjaGVzIGZvciBlLW1haWwgc3VibWlzc2lvbiIKK21zZ3N0ciAi5rqW5YKZ6Zu75a2Q5L+h5Lu25o+Q5Lqk55qE5L+u6KOc5qqUIgorCisjOiBjb21tYW5kLWxpc3QuaDo5OQorbXNnaWQgIlZlcmlmaWVzIHRoZSBjb25uZWN0aXZpdHkgYW5kIHZhbGlkaXR5IG9mIHRoZSBvYmplY3RzIGluIHRoZSBkYXRhYmFzZSIKK21zZ3N0ciAi6amX6K2J54mI5pys5bqr5Lit54mp5Lu255qE6YCj6YCa5oCn5ZKM5pyJ5pWI5oCnIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMDAKK21zZ2lkICJDbGVhbnVwIHVubmVjZXNzYXJ5IGZpbGVzIGFuZCBvcHRpbWl6ZSB0aGUgbG9jYWwgcmVwb3NpdG9yeSIKK21zZ3N0ciAi5riF6Zmk5LiN5b+F6KaB55qE5qqU5qGI5ZKM5pyA5L2z5YyW5pys5qmf54mI5pys5bqrIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMDEKK21zZ2lkICJFeHRyYWN0IGNvbW1pdCBJRCBmcm9tIGFuIGFyY2hpdmUgY3JlYXRlZCB1c2luZyBnaXQtYXJjaGl2ZSIKK21zZ3N0ciAi5b6eIGdpdC1hcmNoaXZlIOW7uueri+eahOatuOaqlOaqlOahiOS4reaTt+WPluaPkOS6pCBJRCIKKworIzogY29tbWFuZC1saXN0Lmg6MTAyCittc2dpZCAiUHJpbnQgbGluZXMgbWF0Y2hpbmcgYSBwYXR0ZXJuIgorbXNnc3RyICLovLjlh7rlkozmqKHlvI/nrKblkIjnmoTooYwiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEwMworbXNnaWQgIkEgcG9ydGFibGUgZ3JhcGhpY2FsIGludGVyZmFjZSB0byBHaXQiCittc2dzdHIgIuS4gOWAi+S+v+aUnOeahCBHaXQg5ZyW5b2i55So5oi256uvIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMDQKK21zZ2lkICJDb21wdXRlIG9iamVjdCBJRCBhbmQgb3B0aW9uYWxseSBjcmVhdGVzIGEgYmxvYiBmcm9tIGEgZmlsZSIKK21zZ3N0ciAi5b6e5LiA5YCL5qqU5qGI6KiI566X54mp5Lu2IElE77yM5Lim5Y+v5Lul5bu656uLIGJsb2Ig6LOH5paZ54mp5Lu2IgorCisjOiBjb21tYW5kLWxpc3QuaDoxMDUKK21zZ2lkICJEaXNwbGF5IGhlbHAgaW5mb3JtYXRpb24gYWJvdXQgR2l0IgorbXNnc3RyICLpoa/npLogR2l0IOeahOiqquaYjuioiuaBryIKKworIzogY29tbWFuZC1saXN0Lmg6MTA2Cittc2dpZCAiU2VydmVyIHNpZGUgaW1wbGVtZW50YXRpb24gb2YgR2l0IG92ZXIgSFRUUCIKK21zZ3N0ciAiR2l0IEhUVFAg5Y2U5a6a55qE5pyN5YuZ56uv5a+m54++IgorCisjOiBjb21tYW5kLWxpc3QuaDoxMDcKK21zZ2lkICJEb3dubG9hZCBmcm9tIGEgcmVtb3RlIEdpdCByZXBvc2l0b3J5IHZpYSBIVFRQIgorbXNnc3RyICLpgJrpgY4gSFRUUCDlvp7pgaDnq68gR2l0IOeJiOacrOW6q+S4i+i8iSIKKworIzogY29tbWFuZC1saXN0Lmg6MTA4Cittc2dpZCAiUHVzaCBvYmplY3RzIG92ZXIgSFRUUC9EQVYgdG8gYW5vdGhlciByZXBvc2l0b3J5IgorbXNnc3RyICLpgJrpgY4gSFRUUC9EQVYg5o6o6YCB54mp5Lu25Y+m5LiA5YCL54mI5pys5bqrIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMDkKK21zZ2lkICJTZW5kIGEgY29sbGVjdGlvbiBvZiBwYXRjaGVzIGZyb20gc3RkaW4gdG8gYW4gSU1BUCBmb2xkZXIiCittc2dzdHIgIuW+nuaomea6lui8uOWFpeWwh+S4gOe1hOS/ruijnOaqlOWCs+mAgeWIsElNQVDos4fmlpnlpL4iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExMAorbXNnaWQgIkJ1aWxkIHBhY2sgaW5kZXggZmlsZSBmb3IgYW4gZXhpc3RpbmcgcGFja2VkIGFyY2hpdmUiCittc2dzdHIgIuW+nuS4gOWAi+ePvuWtmOeahOWMheWtmOaqlOaqlOahiOW7uueri+WMhee0ouW8lSIKKworIzogY29tbWFuZC1saXN0Lmg6MTExCittc2dpZCAiQ3JlYXRlIGFuIGVtcHR5IEdpdCByZXBvc2l0b3J5IG9yIHJlaW5pdGlhbGl6ZSBhbiBleGlzdGluZyBvbmUiCittc2dzdHIgIuW7uueri+S4gOWAi+epuueahCBHaXQg54mI5pys5bqr5oiW6YeN5paw5Yid5aeL5YyW5LiA5YCL5bey5a2Y5Zyo55qE54mI5pys5bqrIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTIKK21zZ2lkICJJbnN0YW50bHkgYnJvd3NlIHlvdXIgd29ya2luZyByZXBvc2l0b3J5IGluIGdpdHdlYiIKK21zZ3N0ciAi5ZyoIGdpdHdlYiDkuK3ljbPmmYLngI/opr3mgqjnmoTlt6XkvZzniYjmnKzluqsiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExMworbXNnaWQgIkFkZCBvciBwYXJzZSBzdHJ1Y3R1cmVkIGluZm9ybWF0aW9uIGluIGNvbW1pdCBtZXNzYWdlcyIKK21zZ3N0ciAi5paw5aKe5oiW6Kej5p6Q5o+Q5Lqk6Kqq5piO5Lit55qE57WQ5qeL5YyW6KiK5oGvIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTQKK21zZ2lkICJUaGUgR2l0IHJlcG9zaXRvcnkgYnJvd3NlciIKK21zZ3N0ciAiR2l0IOeJiOacrOW6q+eAj+imveWZqCIKKworIzogY29tbWFuZC1saXN0Lmg6MTE1Cittc2dpZCAiU2hvdyBjb21taXQgbG9ncyIKK21zZ3N0ciAi6aGv56S65o+Q5Lqk5pel6KqMIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTYKK21zZ2lkICJTaG93IGluZm9ybWF0aW9uIGFib3V0IGZpbGVzIGluIHRoZSBpbmRleCBhbmQgdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAi6aGv56S657Si5byV5ZKM5bel5L2c5Y2A5Lit5qqU5qGI55qE6KiK5oGvIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTcKK21zZ2lkICJMaXN0IHJlZmVyZW5jZXMgaW4gYSByZW1vdGUgcmVwb3NpdG9yeSIKK21zZ3N0ciAi6aGv56S65LiA5YCL6YGg56uv54mI5pys5bqr55qE5byV55SoIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMTgKK21zZ2lkICJMaXN0IHRoZSBjb250ZW50cyBvZiBhIHRyZWUgb2JqZWN0IgorbXNnc3RyICLpoa/npLrkuIDlgIvmqLnni4Dnianku7bnmoTlhaflrrkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjExOQorbXNnaWQgIkV4dHJhY3RzIHBhdGNoIGFuZCBhdXRob3JzaGlwIGZyb20gYSBzaW5nbGUgZS1tYWlsIG1lc3NhZ2UiCittc2dzdHIgIuW+nuWWruWAi+mbu+WtkOS/oeS7tuS4reaTt+WPluS/ruijnOaqlOWSjOS9nOiAhei6q+S7vSIKKworIzogY29tbWFuZC1saXN0Lmg6MTIwCittc2dpZCAiU2ltcGxlIFVOSVggbWJveCBzcGxpdHRlciBwcm9ncmFtIgorbXNnc3RyICLnsKHllq7nmoQgVU5JWCBtYm94IOS/oeeuseWIh+WIhueoi+W8jyIKKworIzogY29tbWFuZC1saXN0Lmg6MTIxCittc2dpZCAiSm9pbiB0d28gb3IgbW9yZSBkZXZlbG9wbWVudCBoaXN0b3JpZXMgdG9nZXRoZXIiCittc2dzdHIgIuWQiOS9teWFqeWAi+aIluabtOWkmumWi+eZvOatt+WPsiIKKworIzogY29tbWFuZC1saXN0Lmg6MTIyCittc2dpZCAiRmluZCBhcyBnb29kIGNvbW1vbiBhbmNlc3RvcnMgYXMgcG9zc2libGUgZm9yIGEgbWVyZ2UiCittc2dzdHIgIueCuuS6huWQiOS9teWwi+aJvuWEmOWPr+iDveWlveeahOWFrOWFseelluWFiOaPkOS6pCIKKworIzogY29tbWFuZC1saXN0Lmg6MTIzCittc2dpZCAiUnVuIGEgdGhyZWUtd2F5IGZpbGUgbWVyZ2UiCittc2dzdHIgIuWft+ihjOS4gOWAi+S4iei3r+aqlOahiOWQiOS9tSIKKworIzogY29tbWFuZC1saXN0Lmg6MTI0Cittc2dpZCAiUnVuIGEgbWVyZ2UgZm9yIGZpbGVzIG5lZWRpbmcgbWVyZ2luZyIKK21zZ3N0ciAi5bCN5pa86ZyA6KaB5ZCI5L2155qE5qqU5qGI5Z+36KGM5ZCI5L21IgorCisjOiBjb21tYW5kLWxpc3QuaDoxMjUKK21zZ2lkICJUaGUgc3RhbmRhcmQgaGVscGVyIHByb2dyYW0gdG8gdXNlIHdpdGggZ2l0LW1lcmdlLWluZGV4IgorbXNnc3RyICLoiIcgZ2l0LW1lcmdlLWluZGV4IOS4gOi1t+S9v+eUqOeahOaomea6luWaruWwjueoi+W8jyIKKworIzogY29tbWFuZC1saXN0Lmg6MTI2Cittc2dpZCAiUnVuIG1lcmdlIGNvbmZsaWN0IHJlc29sdXRpb24gdG9vbHMgdG8gcmVzb2x2ZSBtZXJnZSBjb25mbGljdHMiCittc2dzdHIgIuWft+ihjOWQiOS9teihneeqgeino+axuuW3peWFt+S7peino+axuuWQiOS9teihneeqgSIKKworIzogY29tbWFuZC1saXN0Lmg6MTI3Cittc2dpZCAiU2hvdyB0aHJlZS13YXkgbWVyZ2Ugd2l0aG91dCB0b3VjaGluZyBpbmRleCIKK21zZ3N0ciAi6aGv56S65LiJ6Lev5ZCI5L216ICM5LiN5YuV57Si5byVIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMjgKK21zZ2lkICJXcml0ZSBhbmQgdmVyaWZ5IG11bHRpLXBhY2staW5kZXhlcyIKK21zZ3N0ciAi5a+r5YWl5ZKM6amX6K2J5aSa5YyF57Si5byVIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMjkKK21zZ2lkICJDcmVhdGVzIGEgdGFnIG9iamVjdCIKK21zZ3N0ciAi5bu656uL5LiA5YCL5qiZ57Gk54mp5Lu2IgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzAKK21zZ2lkICJCdWlsZCBhIHRyZWUtb2JqZWN0IGZyb20gbHMtdHJlZSBmb3JtYXR0ZWQgdGV4dCIKK21zZ3N0ciAi5Z+65pa8IGxzLXRyZWUg55qE5qC85byP5YyW5paH5a2X5bu656uL5LiA5YCL5qi554uA54mp5Lu2IgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzEKK21zZ2lkICJNb3ZlIG9yIHJlbmFtZSBhIGZpbGUsIGEgZGlyZWN0b3J5LCBvciBhIHN5bWxpbmsiCittc2dzdHIgIuenu+WLleaIlumHjeaWsOWRveWQjeS4gOWAi+aqlOahiOOAgeebrumMhOaIluespuiZn+mAo+e1kCIKKworIyDlsIvmib7mj5DkvpvniYjmnKznmoTnrKbomZ/lkI3nqLEKKyM6IGNvbW1hbmQtbGlzdC5oOjEzMgorbXNnaWQgIkZpbmQgc3ltYm9saWMgbmFtZXMgZm9yIGdpdmVuIHJldnMiCittc2dzdHIgIuWwi+aJvuaPkOS+m+eJiOacrOeahOespuiZn+WQjeeosSIKKworIzogY29tbWFuZC1saXN0Lmg6MTMzCittc2dpZCAiQWRkIG9yIGluc3BlY3Qgb2JqZWN0IG5vdGVzIgorbXNnc3RyICLmlrDlop7miJbmqqLmn6Xnianku7blgpnoqLsiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzNAorbXNnaWQgIkltcG9ydCBmcm9tIGFuZCBzdWJtaXQgdG8gUGVyZm9yY2UgcmVwb3NpdG9yaWVzIgorbXNnc3RyICLljK/lhaXlkozmj5DkuqTliLAgUGVyZm9yY2Ug54mI5pys5bqr5LitIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzUKK21zZ2lkICJDcmVhdGUgYSBwYWNrZWQgYXJjaGl2ZSBvZiBvYmplY3RzIgorbXNnc3RyICLlu7rnq4vnianku7bnmoTlrZjmqpTljIUiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzNgorbXNnaWQgIkZpbmQgcmVkdW5kYW50IHBhY2sgZmlsZXMiCittc2dzdHIgIuWwi+aJvuWGl+mkmOeahOWMheaqlOahiCIKKworIzogY29tbWFuZC1saXN0Lmg6MTM3Cittc2dpZCAiUGFjayBoZWFkcyBhbmQgdGFncyBmb3IgZWZmaWNpZW50IHJlcG9zaXRvcnkgYWNjZXNzIgorbXNnc3RyICLmiZPljIXpoK3lkozmqJnnsaTku6Xlr6bnj77pq5jmlYjnmoTniYjmnKzluqvlrZjlj5YiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjEzOAorbXNnaWQgIlJvdXRpbmVzIHRvIGhlbHAgcGFyc2luZyByZW1vdGUgcmVwb3NpdG9yeSBhY2Nlc3MgcGFyYW1ldGVycyIKK21zZ3N0ciAi5Y2U5Yqp6Kej5p6Q6YGg56uv54mI5pys5bqr5a2Y5Y+W5Y+D5pW455qE5L6L56iLIgorCisjOiBjb21tYW5kLWxpc3QuaDoxMzkKK21zZ2lkICJDb21wdXRlIHVuaXF1ZSBJRCBmb3IgYSBwYXRjaCIKK21zZ3N0ciAi6KiI566X5LiA5YCL5L+u6KOc5qqU55qE5ZSv5LiAIElEIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDAKK21zZ2lkICJQcnVuZSBhbGwgdW5yZWFjaGFibGUgb2JqZWN0cyBmcm9tIHRoZSBvYmplY3QgZGF0YWJhc2UiCittc2dzdHIgIuWIqumZpOeJqeS7tuW6q+S4reaJgOacieeEoeazleWPluW+l+eJqeS7tiIKKworIzogY29tbWFuZC1saXN0Lmg6MTQxCittc2dpZCAiUmVtb3ZlIGV4dHJhIG9iamVjdHMgdGhhdCBhcmUgYWxyZWFkeSBpbiBwYWNrIGZpbGVzIgorbXNnc3RyICLliKrpmaTlt7LntpPlnKjljIXmqpTmoYjkuK3nmoTlpJrppJjnianku7YiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE0MgorbXNnaWQgIkZldGNoIGZyb20gYW5kIGludGVncmF0ZSB3aXRoIGFub3RoZXIgcmVwb3NpdG9yeSBvciBhIGxvY2FsIGJyYW5jaCIKK21zZ3N0ciAi5Y+W5b6X5Lim5pW05ZCI5Y+m5aSW55qE54mI5pys5bqr5oiW5LiA5YCL5pys5qmf5YiG5pSvIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDMKK21zZ2lkICJVcGRhdGUgcmVtb3RlIHJlZnMgYWxvbmcgd2l0aCBhc3NvY2lhdGVkIG9iamVjdHMiCittc2dzdHIgIuabtOaWsOmBoOerr+W8leeUqOWSjOebuOmXnOeahOeJqeS7tiIKKworIzogY29tbWFuZC1saXN0Lmg6MTQ0Cittc2dpZCAiQXBwbGllcyBhIHF1aWx0IHBhdGNoc2V0IG9udG8gdGhlIGN1cnJlbnQgYnJhbmNoIgorbXNnc3RyICLlsIfkuIDlgIsgcXVpbHQg5L+u6KOc5qqU6ZuG5aWX55So5Yiw55uu5YmN5YiG5pSv44CCIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDUKK21zZ2lkICJDb21wYXJlIHR3byBjb21taXQgcmFuZ2VzIChlLmcuIHR3byB2ZXJzaW9ucyBvZiBhIGJyYW5jaCkiCittc2dzdHIgIuavlOi8g+WFqeWAi+aPkOS6pOevhOWcje+8iOWmguS4gOWAi+WIhuaUr+eahOWFqeWAi+eJiOacrO+8iSIKKworIzogY29tbWFuZC1saXN0Lmg6MTQ2Cittc2dpZCAiUmVhZHMgdHJlZSBpbmZvcm1hdGlvbiBpbnRvIHRoZSBpbmRleCIKK21zZ3N0ciAi5bCH5qi56KiK5oGv6K6A5Y+W5Yiw57Si5byVIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNDcKK21zZ2lkICJSZWFwcGx5IGNvbW1pdHMgb24gdG9wIG9mIGFub3RoZXIgYmFzZSB0aXAiCittc2dzdHIgIuWcqOWPpuS4gOWAi+WIhuaUr+S4iumHjeaWsOaHieeUqOaPkOS6pCIKKworIzogY29tbWFuZC1saXN0Lmg6MTQ4Cittc2dpZCAiUmVjZWl2ZSB3aGF0IGlzIHB1c2hlZCBpbnRvIHRoZSByZXBvc2l0b3J5IgorbXNnc3RyICLmjqXmlLbmjqjpgIHliLDniYjmnKzluqvkuK3nmoTnianku7YiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE0OQorbXNnaWQgIk1hbmFnZSByZWZsb2cgaW5mb3JtYXRpb24iCittc2dzdHIgIueuoeeQhiByZWZsb2cg6KiK5oGvIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTAKK21zZ2lkICJNYW5hZ2Ugc2V0IG9mIHRyYWNrZWQgcmVwb3NpdG9yaWVzIgorbXNnc3RyICLnrqHnkIblt7Lov73ouaTniYjmnKzluqsiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE1MQorbXNnaWQgIlBhY2sgdW5wYWNrZWQgb2JqZWN0cyBpbiBhIHJlcG9zaXRvcnkiCittc2dzdHIgIuaJk+WMheeJiOacrOW6q+S4reacquaJk+WMheeJqeS7tiIKKworIzogY29tbWFuZC1saXN0Lmg6MTUyCittc2dpZCAiQ3JlYXRlLCBsaXN0LCBkZWxldGUgcmVmcyB0byByZXBsYWNlIG9iamVjdHMiCittc2dzdHIgIuW7uueri+OAgeWIl+WHuuOAgeWIqumZpOeJqeS7tuWPluS7o+W8leeUqCIKKworIzogY29tbWFuZC1saXN0Lmg6MTUzCittc2dpZCAiR2VuZXJhdGVzIGEgc3VtbWFyeSBvZiBwZW5kaW5nIGNoYW5nZXMiCittc2dzdHIgIueUn+aIkOW+heWumuabtOaUueeahOaRmOimgSIKKworIzogY29tbWFuZC1saXN0Lmg6MTU0Cittc2dpZCAiUmV1c2UgcmVjb3JkZWQgcmVzb2x1dGlvbiBvZiBjb25mbGljdGVkIG1lcmdlcyIKK21zZ3N0ciAi6YeN55So6KGd56qB5ZCI5L2155qE6Kej5rG65pa55qGI6KiY6YyEIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTUKK21zZ2lkICJSZXNldCBjdXJyZW50IEhFQUQgdG8gdGhlIHNwZWNpZmllZCBzdGF0ZSIKK21zZ3N0ciAi6YeN6Kit55uu5YmNIEhFQUQg5Yiw5oyH5a6a54uA5oWLIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTYKK21zZ2lkICJSZXN0b3JlIHdvcmtpbmcgdHJlZSBmaWxlcyIKK21zZ3N0ciAi5b6p5Y6f5bel5L2c5Y2A5qqU5qGIIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTcKK21zZ2lkICJSZXZlcnQgc29tZSBleGlzdGluZyBjb21taXRzIgorbXNnc3RyICLpgoTljp/kuIDkupvnj77lrZjmj5DkuqQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE1OAorbXNnaWQgIkxpc3RzIGNvbW1pdCBvYmplY3RzIGluIHJldmVyc2UgY2hyb25vbG9naWNhbCBvcmRlciIKK21zZ3N0ciAi5oyJ5pmC6ZaT6aCG5bqP5YiX5Ye65o+Q5Lqk54mp5Lu2IgorCisjOiBjb21tYW5kLWxpc3QuaDoxNTkKK21zZ2lkICJQaWNrIG91dCBhbmQgbWFzc2FnZSBwYXJhbWV0ZXJzIgorbXNnc3RyICLpgbjlh7rkuKbomZXnkIblj4PmlbgiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MAorbXNnaWQgIlJlbW92ZSBmaWxlcyBmcm9tIHRoZSB3b3JraW5nIHRyZWUgYW5kIGZyb20gdGhlIGluZGV4IgorbXNnc3RyICLlvp7lt6XkvZzljYDlkozntKLlvJXkuK3liKrpmaTmqpTmoYgiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MQorbXNnaWQgIlNlbmQgYSBjb2xsZWN0aW9uIG9mIHBhdGNoZXMgYXMgZW1haWxzIgorbXNnc3RyICLpgI/pgY7pm7vlrZDkv6Hku7blgrPpgIHkuIDntYTkv67oo5zmqpQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2MgorbXNnaWQgIlB1c2ggb2JqZWN0cyBvdmVyIEdpdCBwcm90b2NvbCB0byBhbm90aGVyIHJlcG9zaXRvcnkiCittc2dzdHIgIuS9v+eUqCBHaXQg5Y2U5a6a5o6o6YCB54mp5Lu25Yiw5Y+m5LiA5YCL54mI5pys5bqrIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjMKK21zZ2lkICJSZXN0cmljdGVkIGxvZ2luIHNoZWxsIGZvciBHaXQtb25seSBTU0ggYWNjZXNzIgorbXNnc3RyICLlj6rlhYHoqLEgR2l0IFNTSCDlrZjlj5bnmoTlj5fpmZDnmbvlhaVzaGVsbCIKKworIzogY29tbWFuZC1saXN0Lmg6MTY0Cittc2dpZCAiU3VtbWFyaXplICdnaXQgbG9nJyBvdXRwdXQiCittc2dzdHIgIidnaXQgbG9nJyDovLjlh7rmkZjopoEiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NQorbXNnaWQgIlNob3cgdmFyaW91cyB0eXBlcyBvZiBvYmplY3RzIgorbXNnc3RyICLpoa/npLrlkITnqK7poZ7lnovnmoTnianku7YiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2NgorbXNnaWQgIlNob3cgYnJhbmNoZXMgYW5kIHRoZWlyIGNvbW1pdHMiCittc2dzdHIgIumhr+ekuuWIhuaUr+WSjOaPkOS6pCIKKworIzogY29tbWFuZC1saXN0Lmg6MTY3Cittc2dpZCAiU2hvdyBwYWNrZWQgYXJjaGl2ZSBpbmRleCIKK21zZ3N0ciAi6aGv56S65omT5YyF5q245qqU57Si5byVIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNjgKK21zZ2lkICJMaXN0IHJlZmVyZW5jZXMgaW4gYSBsb2NhbCByZXBvc2l0b3J5IgorbXNnc3RyICLpoa/npLrmnKzmqZ/niYjmnKzluqvkuK3nmoTlvJXnlKgiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE2OQorbXNnaWQgIkdpdCdzIGkxOG4gc2V0dXAgY29kZSBmb3Igc2hlbGwgc2NyaXB0cyIKK21zZ3N0ciAi54K6IHNoZWxsIOiFs+acrOa6luWCmeeahCBHaXQg5ZyL6Zqb5YyW6Kit5a6a56iL5byP56K8IgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzAKK21zZ2lkICJDb21tb24gR2l0IHNoZWxsIHNjcmlwdCBzZXR1cCBjb2RlIgorbXNnc3RyICLluLjnlKjnmoQgR2l0IHNoZWxsIOiFs+acrOioreWumueoi+W8j+eivCIKKworIzogY29tbWFuZC1saXN0Lmg6MTcxCittc2dpZCAiSW5pdGlhbGl6ZSBhbmQgbW9kaWZ5IHRoZSBzcGFyc2UtY2hlY2tvdXQiCittc2dzdHIgIuWIneWni+WMluS4puS/ruaUueeogOeWj+ewveWHuiIKKworIzogY29tbWFuZC1saXN0Lmg6MTcyCittc2dpZCAiU3Rhc2ggdGhlIGNoYW5nZXMgaW4gYSBkaXJ0eSB3b3JraW5nIGRpcmVjdG9yeSBhd2F5IgorbXNnc3RyICLlhLLol4/pq5Llt6XkvZzljYDkuK3nmoTkv67mlLkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3MworbXNnaWQgIkFkZCBmaWxlIGNvbnRlbnRzIHRvIHRoZSBzdGFnaW5nIGFyZWEiCittc2dzdHIgIuWwh+aqlOahiOWFp+WuueaWsOWinuWIsOe0ouW8lSIKKworIzogY29tbWFuZC1saXN0Lmg6MTc0Cittc2dpZCAiU2hvdyB0aGUgd29ya2luZyB0cmVlIHN0YXR1cyIKK21zZ3N0ciAi6aGv56S65bel5L2c5Y2A54uA5oWLIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzUKK21zZ2lkICJSZW1vdmUgdW5uZWNlc3Nhcnkgd2hpdGVzcGFjZSIKK21zZ3N0ciAi5Yiq6Zmk5LiN5b+F6KaB55qE56m655m95a2X5YWDIgorCisjOiBjb21tYW5kLWxpc3QuaDoxNzYKK21zZ2lkICJJbml0aWFsaXplLCB1cGRhdGUgb3IgaW5zcGVjdCBzdWJtb2R1bGVzIgorbXNnc3RyICLliJ3lp4vljJbjgIHmm7TmlrDmiJbmqqLmn6XlrZDmqKHntYQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3NworbXNnaWQgIkJpZGlyZWN0aW9uYWwgb3BlcmF0aW9uIGJldHdlZW4gYSBTdWJ2ZXJzaW9uIHJlcG9zaXRvcnkgYW5kIEdpdCIKK21zZ3N0ciAiU3VidmVyc2lvbiDniYjmnKzluqvlkowgR2l0IOS5i+mWk+eahOmbmeWQkeWLleS9nCIKKworIzogY29tbWFuZC1saXN0Lmg6MTc4Cittc2dpZCAiU3dpdGNoIGJyYW5jaGVzIgorbXNnc3RyICLliIfmj5vliIbmlK8iCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE3OQorbXNnaWQgIlJlYWQsIG1vZGlmeSBhbmQgZGVsZXRlIHN5bWJvbGljIHJlZnMiCittc2dzdHIgIuiugOWPluOAgeS/ruaUueWSjOWIqumZpOespuiZn+W8leeUqCIKKworIzogY29tbWFuZC1saXN0Lmg6MTgwCittc2dpZCAiQ3JlYXRlLCBsaXN0LCBkZWxldGUgb3IgdmVyaWZ5IGEgdGFnIG9iamVjdCBzaWduZWQgd2l0aCBHUEciCittc2dzdHIgIuW7uueri+OAgeWIl+WHuuOAgeWIqumZpOaIlumpl+itieS4gOWAiyBHUEcg57C95ZCN55qE5qiZ57Gk54mp5Lu2IgorCisjOiBjb21tYW5kLWxpc3QuaDoxODEKK21zZ2lkICJDcmVhdGVzIGEgdGVtcG9yYXJ5IGZpbGUgd2l0aCBhIGJsb2IncyBjb250ZW50cyIKK21zZ3N0ciAi55SoIGJsb2Ig6LOH5paZ54mp5Lu255qE5YWn5a655bu656uL5LiA5YCL5pqr5a2Y5qqUIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODIKK21zZ2lkICJVbnBhY2sgb2JqZWN0cyBmcm9tIGEgcGFja2VkIGFyY2hpdmUiCittc2dzdHIgIuW+nuaJk+WMheaqlOahiOS4reino+Wjk+e4rueJqeS7tiIKKworIzogY29tbWFuZC1saXN0Lmg6MTgzCittc2dpZCAiUmVnaXN0ZXIgZmlsZSBjb250ZW50cyBpbiB0aGUgd29ya2luZyB0cmVlIHRvIHRoZSBpbmRleCIKK21zZ3N0ciAi5bCH5bel5L2c5Y2A55qE5qqU5qGI5YWn5a656Ki75YaK5Yiw57Si5byVIgorCisjOiBjb21tYW5kLWxpc3QuaDoxODQKK21zZ2lkICJVcGRhdGUgdGhlIG9iamVjdCBuYW1lIHN0b3JlZCBpbiBhIHJlZiBzYWZlbHkiCittc2dzdHIgIuWuieWFqOWcsOabtOaWsOWEsuWtmOaWvOW8leeUqOS4reeahOeJqeS7tuWQjeeosSIKKworIzogY29tbWFuZC1saXN0Lmg6MTg1Cittc2dpZCAiVXBkYXRlIGF1eGlsaWFyeSBpbmZvIGZpbGUgdG8gaGVscCBkdW1iIHNlcnZlcnMiCittc2dzdHIgIuabtOaWsOi8lOWKqeioiuaBr+aqlOahiOS7peWNlOWKqeWVnuWNlOWumuacjeWLmSIKKworIzogY29tbWFuZC1saXN0Lmg6MTg2Cittc2dpZCAiU2VuZCBhcmNoaXZlIGJhY2sgdG8gZ2l0LWFyY2hpdmUiCittc2dzdHIgIuWwh+WtmOaqlOWCs+mAgeWbniBnaXQtYXJjaGl2ZSIKKworIzogY29tbWFuZC1saXN0Lmg6MTg3Cittc2dpZCAiU2VuZCBvYmplY3RzIHBhY2tlZCBiYWNrIHRvIGdpdC1mZXRjaC1wYWNrIgorbXNnc3RyICLlsIfnianku7blo5PnuK7ljIXlgrPpgIHlm54gZ2l0LWZldGNoLXBhY2siCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE4OAorbXNnaWQgIlNob3cgYSBHaXQgbG9naWNhbCB2YXJpYWJsZSIKK21zZ3N0ciAi6aGv56S6IEdpdCDpgo/ovK/orormlbgiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE4OQorbXNnaWQgIkNoZWNrIHRoZSBHUEcgc2lnbmF0dXJlIG9mIGNvbW1pdHMiCittc2dzdHIgIuaqouafpSBHUEcg5o+Q5Lqk57C95ZCNIgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTAKK21zZ2lkICJWYWxpZGF0ZSBwYWNrZWQgR2l0IGFyY2hpdmUgZmlsZXMiCittc2dzdHIgIumpl+itieaJk+WMheeahCBHaXQg5bCB5a2Y5qqU5qGIIgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTEKK21zZ2lkICJDaGVjayB0aGUgR1BHIHNpZ25hdHVyZSBvZiB0YWdzIgorbXNnc3RyICLmqqLmn6XmqJnnsaTnmoQgR1BHIOewveWQjSIKKworIzogY29tbWFuZC1saXN0Lmg6MTkyCittc2dpZCAiR2l0IHdlYiBpbnRlcmZhY2UgKHdlYiBmcm9udGVuZCB0byBHaXQgcmVwb3NpdG9yaWVzKSIKK21zZ3N0ciAiR2l0IHdlYiDku4vpnaLvvIhHaXQg54mI5pys5bqr55qEIHdlYiDliY3nq6/vvIkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5MworbXNnaWQgIlNob3cgbG9ncyB3aXRoIGRpZmZlcmVuY2UgZWFjaCBjb21taXQgaW50cm9kdWNlcyIKK21zZ3N0ciAi6aGv56S65q+P5LiA5YCL5o+Q5Lqk5byV5YWl55qE5beu55Ww5pel6KqMIgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTQKK21zZ2lkICJNYW5hZ2UgbXVsdGlwbGUgd29ya2luZyB0cmVlcyIKK21zZ3N0ciAi566h55CG5aSa5YCL5bel5L2c5Y2AIgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTUKK21zZ2lkICJDcmVhdGUgYSB0cmVlIG9iamVjdCBmcm9tIHRoZSBjdXJyZW50IGluZGV4IgorbXNnc3RyICLlvp7nm67liY3ntKLlvJXlu7rnq4vkuIDlgIvmqLnni4Dnianku7YiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjE5NgorbXNnaWQgIkRlZmluaW5nIGF0dHJpYnV0ZXMgcGVyIHBhdGgiCittc2dzdHIgIuWumue+qei3r+W+keeahOWxrOaApyIKKworIzogY29tbWFuZC1saXN0Lmg6MTk3Cittc2dpZCAiR2l0IGNvbW1hbmQtbGluZSBpbnRlcmZhY2UgYW5kIGNvbnZlbnRpb25zIgorbXNnc3RyICJHaXQg5oyH5Luk5YiX5LuL6Z2i5ZKM57SE5a6aIgorCisjOiBjb21tYW5kLWxpc3QuaDoxOTgKK21zZ2lkICJBIEdpdCBjb3JlIHR1dG9yaWFsIGZvciBkZXZlbG9wZXJzIgorbXNnc3RyICLpnaLlkJHplovnmbzkurrlk6HnmoQgR2l0IOaguOW/g+aVmeWtuCIKKworIzogY29tbWFuZC1saXN0Lmg6MTk5Cittc2dpZCAiR2l0IGZvciBDVlMgdXNlcnMiCittc2dzdHIgIumBqeWQiCBDVlMg5L2/55So6ICF55qEIEdpdCDljZTliqkiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMAorbXNnaWQgIlR3ZWFraW5nIGRpZmYgb3V0cHV0IgorbXNnc3RyICLoqr/mlbTlt67nlbDovLjlh7oiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwMQorbXNnaWQgIkEgdXNlZnVsIG1pbmltdW0gc2V0IG9mIGNvbW1hbmRzIGZvciBFdmVyeWRheSBHaXQiCittc2dzdHIgIuavj+S4gOWkqSBHaXQg55qE5LiA57WE5pyJ55So55qE5pyA5bCP5oyH5Luk6ZuG5ZCIIgorCisjOiBjb21tYW5kLWxpc3QuaDoyMDIKK21zZ2lkICJBIEdpdCBHbG9zc2FyeSIKK21zZ3N0ciAiR2l0IOipnuW9meihqCIKKworIzogY29tbWFuZC1saXN0Lmg6MjAzCittc2dpZCAiSG9va3MgdXNlZCBieSBHaXQiCittc2dzdHIgIkdpdCDkvb/nlKjnmoTmjpvpiaQiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNAorbXNnaWQgIlNwZWNpZmllcyBpbnRlbnRpb25hbGx5IHVudHJhY2tlZCBmaWxlcyB0byBpZ25vcmUiCittc2dzdHIgIuW/veeVpeaMh+WumueahOacqui/vei5pOaqlOahiCIKKworIzogY29tbWFuZC1saXN0Lmg6MjA1Cittc2dpZCAiRGVmaW5pbmcgc3VibW9kdWxlIHByb3BlcnRpZXMiCittc2dzdHIgIuWumue+qeWtkOaooee1hOWxrOaApyIKKworIzogY29tbWFuZC1saXN0Lmg6MjA2Cittc2dpZCAiR2l0IG5hbWVzcGFjZXMiCittc2dzdHIgIkdpdCDlkI3lrZfnqbrplpMiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIwNworbXNnaWQgIkdpdCBSZXBvc2l0b3J5IExheW91dCIKK21zZ3N0ciAiR2l0IOeJiOacrOW6q+mFjee9riIKKworIzogY29tbWFuZC1saXN0Lmg6MjA4Cittc2dpZCAiU3BlY2lmeWluZyByZXZpc2lvbnMgYW5kIHJhbmdlcyBmb3IgR2l0IgorbXNnc3RyICLmjIflrpogR2l0IOeahOeJiOacrOWSjOeJiOacrOevhOWcjSIKKworIzogY29tbWFuZC1saXN0Lmg6MjA5Cittc2dpZCAiTW91bnRpbmcgb25lIHJlcG9zaXRvcnkgaW5zaWRlIGFub3RoZXIiCittc2dzdHIgIuWcqOafkOWAi+eJiOacrOW6q+aOm+i8ieafkOWAi+eJiOacrOW6qyIKKworIzogY29tbWFuZC1saXN0Lmg6MjEwCittc2dpZCAiQSB0dXRvcmlhbCBpbnRyb2R1Y3Rpb24gdG8gR2l0OiBwYXJ0IHR3byIKK21zZ3N0ciAi5LiA5YCLIEdpdCDmlZnlrbjvvJrnrKzkuozpg6jliIYiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMQorbXNnaWQgIkEgdHV0b3JpYWwgaW50cm9kdWN0aW9uIHRvIEdpdCIKK21zZ3N0ciAi5LiA5YCLIEdpdCDmlZnlrbgiCisKKyM6IGNvbW1hbmQtbGlzdC5oOjIxMgorbXNnaWQgIkFuIG92ZXJ2aWV3IG9mIHJlY29tbWVuZGVkIHdvcmtmbG93cyB3aXRoIEdpdCIKK21zZ3N0ciAiR2l0IOaOqOiWpueahOW3peS9nOa1geamguimvSIKKworIzogZ2l0LWJpc2VjdC5zaDo1NAorbXNnaWQgIllvdSBuZWVkIHRvIHN0YXJ0IGJ5IFwiZ2l0IGJpc2VjdCBzdGFydFwiIgorbXNnc3RyICLmgqjpnIDopoHln7fooYwgXCJnaXQgYmlzZWN0IHN0YXJ0XCIg5L6G6ZaL5aeLIgorCisjICDora/ogIXvvJroq4vntq3mjIHlj6XlsL7nqbrmoLwKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbWV0gYW5kIFtuXSBpbiB5b3VyCisjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIzogZ2l0LWJpc2VjdC5zaDo2MAorbXNnaWQgIkRvIHlvdSB3YW50IG1lIHRvIGRvIGl0IGZvciB5b3UgW1kvbl0/ICIKK21zZ3N0ciAi5oKo5oOz6K6T5oiR54K65oKo6YCZ5qij5YGa5ZeOW1kvbl3vvJ8gIgorCisjOiBnaXQtYmlzZWN0LnNoOjEwMQorIywgc2gtZm9ybWF0Cittc2dpZCAiQmFkIHJldiBpbnB1dDogJGFyZyIKK21zZ3N0ciAi5aOe55qE6Ly45YWl54mI5pys77yaJGFyZyIKKworIzogZ2l0LWJpc2VjdC5zaDoxMjEKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRiaXNlY3RlZF9oZWFkIgorbXNnc3RyICLlo57nmoTovLjlhaXniYjmnKzvvJokYmlzZWN0ZWRfaGVhZCIKKworIzogZ2l0LWJpc2VjdC5zaDoxMzAKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkJhZCByZXYgaW5wdXQ6ICRyZXYiCittc2dzdHIgIuWjnueahOi8uOWFpeeJiOacrO+8miRyZXYiCisKKyM6IGdpdC1iaXNlY3Quc2g6MTM5CisjLCBzaC1mb3JtYXQKK21zZ2lkICInZ2l0IGJpc2VjdCAkVEVSTV9CQUQnIGNhbiB0YWtlIG9ubHkgb25lIGFyZ3VtZW50LiIKK21zZ3N0ciAiJ2dpdCBiaXNlY3QgJFRFUk1fQkFEJyDlj6rog73luLbkuIDlgIvlj4PmlbjjgIIiCisKKyM6IGdpdC1iaXNlY3Quc2g6MjA5Cittc2dpZCAiTm8gbG9nZmlsZSBnaXZlbiIKK21zZ3N0ciAi5pyq5o+Q5L6b5pel6KqM5qqU5qGIIgorCisjOiBnaXQtYmlzZWN0LnNoOjIxMAorIywgc2gtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgJGZpbGUgZm9yIHJlcGxheWluZyIKK21zZ3N0ciAi5LiN6IO96K6A5Y+WICRmaWxlIOS+humHjeaUviIKKworIzogZ2l0LWJpc2VjdC5zaDoyMzIKK21zZ2lkICI/PyB3aGF0IGFyZSB5b3UgdGFsa2luZyBhYm91dD8iCittc2dzdHIgIj8/IOaCqOWcqOiqquS7gOm6vD8iCisKKyM6IGdpdC1iaXNlY3Quc2g6MjQxCittc2dpZCAiYmlzZWN0IHJ1biBmYWlsZWQ6IG5vIGNvbW1hbmQgcHJvdmlkZWQuIgorbXNnc3RyICLkuozliIblsIvmib7ln7fooYzlpLHmlZfvvJrmspLmnInmj5DkvpvmjIfku6TjgIIiCisKKyM6IGdpdC1iaXNlY3Quc2g6MjQ2CisjLCBzaC1mb3JtYXQKK21zZ2lkICJydW5uaW5nICRjb21tYW5kIgorbXNnc3RyICLln7fooYwgJGNvbW1hbmQiCisKKyM6IGdpdC1iaXNlY3Quc2g6MjUzCisjLCBzaC1mb3JtYXQKK21zZ2lkICIiCisiYmlzZWN0IHJ1biBmYWlsZWQ6XG4iCisiZXhpdCBjb2RlICRyZXMgZnJvbSAnJGNvbW1hbmQnIGlzIDwgMCBvciA+PSAxMjgiCittc2dzdHIgIiIKKyLkuozliIblsIvmib7ln7fooYzlpLHmlZfvvJpcbiIKKyLmjIfku6QgJyRjb21tYW5kJyDnmoTpm6LplovnorwgJHJlcyDlsI/mlrwgMCDmiJblpKfmlrznrYnmlrwgMTI4IgorCisjOiBnaXQtYmlzZWN0LnNoOjI3OQorbXNnaWQgImJpc2VjdCBydW4gY2Fubm90IGNvbnRpbnVlIGFueSBtb3JlIgorbXNnc3RyICLkuozliIblsIvmib7kuI3og73nubznuozln7fooYwiCisKKyM6IGdpdC1iaXNlY3Quc2g6Mjg1CisjLCBzaC1mb3JtYXQKK21zZ2lkICIiCisiYmlzZWN0IHJ1biBmYWlsZWQ6XG4iCisiJ2Jpc2VjdF9zdGF0ZSAkc3RhdGUnIGV4aXRlZCB3aXRoIGVycm9yIGNvZGUgJHJlcyIKK21zZ3N0ciAiIgorIuS6jOWIhuWwi+aJvuWft+ihjOWkseaVl++8mlxuIgorIidiaXNlY3Rfc3RhdGUgJHN0YXRlJyDpm6LplovnorzngrogJHJlcyIKKworIzogZ2l0LWJpc2VjdC5zaDoyOTIKK21zZ2lkICJiaXNlY3QgcnVuIHN1Y2Nlc3MiCittc2dzdHIgIuS6jOWIhuWwi+aJvuWft+ihjOaIkOWKnyIKKworIzogZ2l0LWJpc2VjdC5zaDozMDAKK21zZ2lkICJXZSBhcmUgbm90IGJpc2VjdGluZy4iCittc2dzdHIgIuaIkeWAkeaykuacieWcqOS6jOWIhuWwi+aJvuOAgiIKKworIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6NDYKK21zZ2lkICIiCisiRXJyb3I6IFlvdXIgbG9jYWwgY2hhbmdlcyB0byB0aGUgZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5ICIKKyJtZXJnZSIKK21zZ3N0ciAi6Yyv6Kqk77ya5oKo5bCN5LiL5YiX5qqU5qGI55qE5pys5qmf5L+u5pS55bCH6KKr5ZCI5L215YuV5L2c6KaG6JOLIgorCisjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo2MQorbXNnaWQgIkF1dG9tYXRlZCBtZXJnZSBkaWQgbm90IHdvcmsuIgorbXNnc3RyICLoh6rli5XlkIjkvbXmnKrnlJ/mlYjjgIIiCisKKyM6IGdpdC1tZXJnZS1vY3RvcHVzLnNoOjYyCittc2dpZCAiU2hvdWxkIG5vdCBiZSBkb2luZyBhbiBvY3RvcHVzLiIKK21zZ3N0ciAi5LiN5oeJ6Kmy5Z+36KGM56ug6a2a5byP5ZCI5L2144CCIgorCisjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo3MworIywgc2gtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGZpbmQgY29tbW9uIGNvbW1pdCB3aXRoICRwcmV0dHlfbmFtZSIKK21zZ3N0ciAi54Sh5rOV5om+5Yiw5ZKMICRwcmV0dHlfbmFtZSDnmoTln7rnpI7mj5DkuqQiCisKKyM6IGdpdC1tZXJnZS1vY3RvcHVzLnNoOjc3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJBbHJlYWR5IHVwIHRvIGRhdGUgd2l0aCAkcHJldHR5X25hbWUiCittc2dzdHIgIuW3sue2k+WSjCAkcHJldHR5X25hbWUg5L+d5oyB5LiA6Ie0IgorCisjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDo4OQorIywgc2gtZm9ybWF0Cittc2dpZCAiRmFzdC1mb3J3YXJkaW5nIHRvOiAkcHJldHR5X25hbWUiCittc2dzdHIgIuW/q+i9ieiHs++8miRwcmV0dHlfbmFtZSIKKworIzogZ2l0LW1lcmdlLW9jdG9wdXMuc2g6OTcKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlRyeWluZyBzaW1wbGUgbWVyZ2Ugd2l0aCAkcHJldHR5X25hbWUiCittc2dzdHIgIuWYl+ippuWSjCAkcHJldHR5X25hbWUg55qE57Ch5Zau5ZCI5L21IgorCisjOiBnaXQtbWVyZ2Utb2N0b3B1cy5zaDoxMDIKK21zZ2lkICJTaW1wbGUgbWVyZ2UgZGlkIG5vdCB3b3JrLCB0cnlpbmcgYXV0b21hdGljIG1lcmdlLiIKK21zZ3N0ciAi57Ch5Zau5ZCI5L215pyq55Sf5pWI77yM5ZiX6Kmm6Ieq5YuV5ZCI5L2144CCIgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjIyMQorbXNnaWQgIkNhbm5vdCByZW1vdmUgdGVtcG9yYXJ5IGluZGV4IChjYW4ndCBoYXBwZW4pIgorbXNnc3RyICLnhKHms5XliKrpmaTmmqvmmYLntKLlvJXvvIjkuI3mh4nnmbznlJ/vvIkiCisKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MjcyCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3QgdXBkYXRlICRyZWZfc3Rhc2ggd2l0aCAkd19jb21taXQiCittc2dzdHIgIueEoeazleeUqCAkd19jb21taXQg5pu05pawICRyZWZfc3Rhc2giCisKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MzI0CisjLCBzaC1mb3JtYXQKK21zZ2lkICJlcnJvcjogdW5rbm93biBvcHRpb24gZm9yICdzdGFzaCBwdXNoJzogJG9wdGlvbiIKK21zZ3N0ciAi6Yyv6Kqk77yaJ3N0YXNoIHB1c2gnIOeahOacquefpemBuOmghe+8miRvcHRpb24iCisKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6MzU2CisjLCBzaC1mb3JtYXQKK21zZ2lkICJTYXZlZCB3b3JraW5nIGRpcmVjdG9yeSBhbmQgaW5kZXggc3RhdGUgJHN0YXNoX21zZyIKK21zZ3N0ciAi5YSy5a2Y5bel5L2c55uu6YyE5ZKM57Si5byV54uA5oWLICRzdGFzaF9tc2ciCisKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NTM2CisjLCBzaC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbjogJG9wdCIKK21zZ3N0ciAi5pyq55+l6YG46aCFOiAkb3B0IgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjU1NgorIywgc2gtZm9ybWF0Cittc2dpZCAiVG9vIG1hbnkgcmV2aXNpb25zIHNwZWNpZmllZDogJFJFViIKK21zZ3N0ciAi5oyH5a6a5LqG5aSq5aSa55qE54mI5pys77yaJFJFViIKKworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1NzEKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiRyZWZlcmVuY2UgaXMgbm90IGEgdmFsaWQgcmVmZXJlbmNlIgorbXNnc3RyICIkcmVmZXJlbmNlIOS4jeaYr+S4gOWAi+acieaViOeahOW8leeUqCIKKworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo1OTkKKyMsIHNoLWZvcm1hdAorbXNnaWQgIickYXJncycgaXMgbm90IGEgc3Rhc2gtbGlrZSBjb21taXQiCittc2dzdHIgIickYXJncycg5LiN5piv5YSy6JeP5byP5o+Q5LqkIgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYxMAorIywgc2gtZm9ybWF0Cittc2dpZCAiJyRhcmdzJyBpcyBub3QgYSBzdGFzaCByZWZlcmVuY2UiCittc2dzdHIgIickYXJncycg5LiN5piv5LiA5YCL5YSy6JeP5byV55SoIgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjYxOAorbXNnaWQgInVuYWJsZSB0byByZWZyZXNoIGluZGV4IgorbXNnc3RyICLnhKHms5Xph43mlrDmlbTnkIbntKLlvJUiCisKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjIyCittc2dpZCAiQ2Fubm90IGFwcGx5IGEgc3Rhc2ggaW4gdGhlIG1pZGRsZSBvZiBhIG1lcmdlIgorbXNnc3RyICLnhKHms5XlnKjlkIjkvbXpgY7nqIvlpZfnlKjlhLLol48iCisKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjMwCittc2dpZCAiQ29uZmxpY3RzIGluIGluZGV4LiBUcnkgd2l0aG91dCAtLWluZGV4LiIKK21zZ3N0ciAi57Si5byV5Lit5pyJ6KGd56qB44CC5ZiX6Kmm5LiN5L2/55SoIC0taW5kZXjjgIIiCisKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjMyCittc2dpZCAiQ291bGQgbm90IHNhdmUgaW5kZXggdHJlZSIKK21zZ3N0ciAi5LiN6IO95YSy5a2Y57Si5byV5qi5IgorCisjOiBnaXQtbGVnYWN5LXN0YXNoLnNoOjY0MQorbXNnaWQgIkNvdWxkIG5vdCByZXN0b3JlIHVudHJhY2tlZCBmaWxlcyBmcm9tIHN0YXNoIGVudHJ5IgorbXNnc3RyICLnhKHms5Xlvp7lhLLol4/mop3nm67kuK3lvqnljp/mnKrov73ouaTmqpTmoYgiCisKKyM6IGdpdC1sZWdhY3ktc3Rhc2guc2g6NjY2Cittc2dpZCAiQ2Fubm90IHVuc3RhZ2UgbW9kaWZpZWQgZmlsZXMiCittc2dzdHIgIueEoeazleWwh+S/ruaUueeahOaqlOahiOWPlua2iOaaq+WtmCIKKworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDQKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkRyb3BwZWQgJHtSRVZ9ICgkcykiCittc2dzdHIgIuaNqOajhOS6hiAke1JFVn0gKCRzKSIKKworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3MDUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiR7UkVWfTogQ291bGQgbm90IGRyb3Agc3Rhc2ggZW50cnkiCittc2dzdHIgIiR7UkVWfe+8mueEoeazleaNqOajhOWEsuiXj+aineebriIKKworIzogZ2l0LWxlZ2FjeS1zdGFzaC5zaDo3OTIKK21zZ2lkICIoVG8gcmVzdG9yZSB0aGVtIHR5cGUgXCJnaXQgc3Rhc2ggYXBwbHlcIikiCittc2dzdHIgIu+8iOeCuuW+qeWOn+izh+aWmei8uOWFpSBcImdpdCBzdGFzaCBhcHBseVwi77yJIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjIwMworbXNnaWQgIlJlbGF0aXZlIHBhdGggY2FuIG9ubHkgYmUgdXNlZCBmcm9tIHRoZSB0b3BsZXZlbCBvZiB0aGUgd29ya2luZyB0cmVlIgorbXNnc3RyICLlj6rog73lnKjlt6XkvZzljYDnmoTpoILntJrnm67pjITkuK3kvb/nlKjnm7jlsI3ot6/lvpEiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MjEzCisjLCBzaC1mb3JtYXQKK21zZ2lkICJyZXBvIFVSTDogJyRyZXBvJyBtdXN0IGJlIGFic29sdXRlIG9yIGJlZ2luIHdpdGggLi98Li4vIgorbXNnc3RyICLniYjmnKzluqsgVVJM77yaJyRyZXBvJyDlv4XpoIjmmK/ntZXlsI3ot6/lvpHmiJbku6UgLi98Li4vIOi1t+WniyIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzIKKyMsIHNoLWZvcm1hdAorbXNnaWQgIickc21fcGF0aCcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGluZGV4IgorbXNnc3RyICInJHNtX3BhdGgnIOW3sue2k+WtmOWcqOaWvOe0ouW8leS4rSIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyMzUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIickc21fcGF0aCcgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGluZGV4IGFuZCBpcyBub3QgYSBzdWJtb2R1bGUiCittc2dzdHIgIickc21fcGF0aCcg5bey57aT5a2Y5Zyo5pa857Si5byV5Lit5LiU5LiN5piv5LiA5YCL5a2Q5qih57WEIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjI0MgorIywgc2gtZm9ybWF0Cittc2dpZCAiJyRzbV9wYXRoJyBkb2VzIG5vdCBoYXZlIGEgY29tbWl0IGNoZWNrZWQgb3V0IgorbXNnc3RyICInJHNtX3BhdGgnIOaykuacieewveWHuueahOaPkOS6pCIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyNzMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkFkZGluZyBleGlzdGluZyByZXBvIGF0ICckc21fcGF0aCcgdG8gdGhlIGluZGV4IgorbXNnc3RyICLmlrDlop7kvY3mlrwgJyRzbV9wYXRoJyDnmoTnj77lrZjniYjmnKzluqvliLDntKLlvJUiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjc1CisjLCBzaC1mb3JtYXQKK21zZ2lkICInJHNtX3BhdGgnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBub3QgYSB2YWxpZCBnaXQgcmVwbyIKK21zZ3N0ciAiJyRzbV9wYXRoJyDlt7LlrZjlnKjkuJTkuI3mmK/kuIDlgIvmnInmlYjnmoQgZ2l0IOeJiOacrOW6qyIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDoyODMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkEgZ2l0IGRpcmVjdG9yeSBmb3IgJyRzbV9uYW1lJyBpcyBmb3VuZCBsb2NhbGx5IHdpdGggcmVtb3RlKHMpOiIKK21zZ3N0ciAi5pys5qmf55m854++ICckc21fbmFtZScg55qE5LiA5YCLIGdpdCDnm67pjITvvIzoiIflhbblsI3mh4nnmoTpgaDnq6/niYjmnKzluqvvvJoiCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6Mjg1CisjLCBzaC1mb3JtYXQKK21zZ2lkICIiCisiSWYgeW91IHdhbnQgdG8gcmV1c2UgdGhpcyBsb2NhbCBnaXQgZGlyZWN0b3J5IGluc3RlYWQgb2YgY2xvbmluZyBhZ2FpbiBmcm9tXG4iCisiICAkcmVhbHJlcG9cbiIKKyJ1c2UgdGhlICctLWZvcmNlJyBvcHRpb24uIElmIHRoZSBsb2NhbCBnaXQgZGlyZWN0b3J5IGlzIG5vdCB0aGUgY29ycmVjdCAiCisicmVwb1xuIgorIm9yIHlvdSBhcmUgdW5zdXJlIHdoYXQgdGhpcyBtZWFucyBjaG9vc2UgYW5vdGhlciBuYW1lIHdpdGggdGhlICctLW5hbWUnICIKKyJvcHRpb24uIgorbXNnc3RyICIiCisi5aaC5p6c5oKo5oOz6KaB6YeN55So6YCZ5YCL5pys5qmfIGdpdCDnm67pjITogIzpnZ7ph43mlrDopIfoo73oh6pcbiIKKyIgICRyZWFscmVwb1xuIgorIuS9v+eUqCAnLS1mb3JjZScg6YG46aCF44CC5aaC5p6c5pys5qmfIGdpdCDnm67pjITkuI3mmK/mraPnorrnmoTniYjmnKzluqtcbiIKKyLmiJbogIXmgqjkuI3norrlrprpgJnoo6HnmoTlkKvnvqnvvIzkvb/nlKggJy0tbmFtZScg6YG46aCF6YG45pOH5Y+m5aSW55qE5ZCN56ix44CCIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjI5MQorIywgc2gtZm9ybWF0Cittc2dpZCAiUmVhY3RpdmF0aW5nIGxvY2FsIGdpdCBkaXJlY3RvcnkgZm9yIHN1Ym1vZHVsZSAnJHNtX25hbWUnLiIKK21zZ3N0ciAi5ZWf5YuV5pys5qmfIGdpdCDnm67pjITliLDlrZDmqKHntYQgJyRzbV9uYW1lJ+OAgiIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDozMDMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBjaGVja291dCBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKK21zZ3N0ciAi5LiN6IO957C95Ye65a2Q5qih57WEICckc21fcGF0aCciCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6MzA4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gYWRkIHN1Ym1vZHVsZSAnJHNtX3BhdGgnIgorbXNnc3RyICLnhKHms5XmlrDlop7lrZDmqKHntYQgJyRzbV9wYXRoJyIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDozMTcKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZWdpc3RlciBzdWJtb2R1bGUgJyRzbV9wYXRoJyIKK21zZ3N0ciAi54Sh5rOV6Ki75YaK5a2Q5qih57WEICckc21fcGF0aCciCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NTkwCisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gZmluZCBjdXJyZW50IHJldmlzaW9uIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgorbXNnc3RyICLnhKHms5XlnKjlrZDmqKHntYTot6/lvpEgJyRkaXNwbGF5cGF0aCcg5Lit5om+5Yiw55uu5YmN54mI5pysIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjYwMAorIywgc2gtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIGZldGNoIGluIHN1Ym1vZHVsZSBwYXRoICckc21fcGF0aCciCittc2dzdHIgIueEoeazleWcqOWtkOaooee1hOi3r+W+kSAnJHNtX3BhdGgnIOS4reWPluW+lyIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MDUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiIKKyJVbmFibGUgdG8gZmluZCBjdXJyZW50ICR7cmVtb3RlX25hbWV9LyR7YnJhbmNofSByZXZpc2lvbiBpbiBzdWJtb2R1bGUgcGF0aCAiCisiJyRzbV9wYXRoJyIKK21zZ3N0ciAi54Sh5rOV5Zyo5a2Q5qih57WE6Lev5b6RICckc21fcGF0aCcg5Lit5om+5Yiw55uu5YmN54mI5pysICR7cmVtb3RlX25hbWV9LyR7YnJhbmNofSIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MjMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiIKKyJVbmFibGUgdG8gZmV0Y2ggaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCc7IHRyeWluZyB0byBkaXJlY3RseSBmZXRjaCAiCisiJHNoYTE6IgorbXNnc3RyICLnhKHms5XlnKjlrZDmqKHntYTot6/lvpEgJyRkaXNwbGF5cGF0aCcg5Lit5Y+W5b6X77yM5ZiX6Kmm55u05o6l5Y+W5b6XICRzaGEx77yaIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjYyOQorIywgc2gtZm9ybWF0Cittc2dpZCAiIgorIkZldGNoZWQgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCcsIGJ1dCBpdCBkaWQgbm90IGNvbnRhaW4gJHNoYTEuICIKKyJEaXJlY3QgZmV0Y2hpbmcgb2YgdGhhdCBjb21taXQgZmFpbGVkLiIKK21zZ3N0ciAiIgorIuWPluW+l+S6huWtkOaooee1hOi3r+W+kSAnJGRpc3BsYXlwYXRoJ++8jOS9huaYr+Wug+aykuacieWMheWQqyAkc2hhMeOAguebtOaOpeWPluW+l+ipsuaPkOS6pOWkseaVl+OAgiIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2MzYKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byBjaGVja291dCAnJHNoYTEnIGluIHN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnIgorbXNnc3RyICLnhKHms5XlnKjlrZDmqKHntYTot6/lvpEgJyRkaXNwbGF5cGF0aCcg5Lit57C95Ye6ICckc2hhMSciCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjM3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogY2hlY2tlZCBvdXQgJyRzaGExJyIKK21zZ3N0ciAi5a2Q5qih57WE6Lev5b6RICckZGlzcGxheXBhdGgn77ya57C95Ye6ICckc2hhMSciCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQxCisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gcmViYXNlICckc2hhMScgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCittc2dzdHIgIueEoeazleWcqOWtkOaooee1hOi3r+W+kSAnJGRpc3BsYXlwYXRoJyDkuK3ph43lrprln7rlupUgJyRzaGExJyIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDIKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiByZWJhc2VkIGludG8gJyRzaGExJyIKK21zZ3N0ciAi5a2Q5qih57WE6Lev5b6RICckZGlzcGxheXBhdGgn77ya6YeN5a6a5Z+65bqV6IezICckc2hhMSciCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjQ3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gbWVyZ2UgJyRzaGExJyBpbiBzdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJyIKK21zZ3N0ciAi54Sh5rOV5ZCI5L21ICckc2hhMScg5Yiw5a2Q5qih57WE6Lev5b6RICckZGlzcGxheXBhdGgnIOS4rSIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2NDgKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlN1Ym1vZHVsZSBwYXRoICckZGlzcGxheXBhdGgnOiBtZXJnZWQgaW4gJyRzaGExJyIKK21zZ3N0ciAi5a2Q5qih57WE6Lev5b6RICckZGlzcGxheXBhdGgn77ya5bey5ZCI5L215YWlICckc2hhMSciCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjUzCisjLCBzaC1mb3JtYXQKK21zZ2lkICJFeGVjdXRpb24gb2YgJyRjb21tYW5kICRzaGExJyBmYWlsZWQgaW4gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCittc2dzdHIgIuWcqOWtkOaooee1hCAnJGRpc3BsYXlwYXRoJyDkuK3ln7fooYwgJyRjb21tYW5kICRzaGExJyDlpLHmlZciCisKKyM6IGdpdC1zdWJtb2R1bGUuc2g6NjU0CisjLCBzaC1mb3JtYXQKK21zZ2lkICJTdWJtb2R1bGUgcGF0aCAnJGRpc3BsYXlwYXRoJzogJyRjb21tYW5kICRzaGExJyIKK21zZ3N0ciAi5a2Q5qih57WEICckZGlzcGxheXBhdGgn77yaJyRjb21tYW5kICRzaGExJyIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo2ODUKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byByZWN1cnNlIGludG8gc3VibW9kdWxlIHBhdGggJyRkaXNwbGF5cGF0aCciCittc2dzdHIgIueEoeazlemBnui/tOmAsuWtkOaooee1hOi3r+W+kSAnJGRpc3BsYXlwYXRoJyIKKworIzogZ2l0LXN1Ym1vZHVsZS5zaDo4OTYKK21zZ2lkICJUaGUgLS1jYWNoZWQgb3B0aW9uIGNhbm5vdCBiZSB1c2VkIHdpdGggdGhlIC0tZmlsZXMgb3B0aW9uIgorbXNnc3RyICLpgbjpoIUgLS1jYWNoZWQg5LiN6IO95ZKM6YG46aCFIC0tZmlsZXMg5ZCM5pmC5L2/55SoIgorCisjOiBnaXQtc3VibW9kdWxlLnNoOjk0OAorIywgc2gtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBtb2RlICRtb2RfZHN0IgorbXNnc3RyICLmhI/lpJbnmoTmqKHlvI8gJG1vZF9kc3QiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NjgKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX3NyYyIKK21zZ3N0ciAiICDorablkYrvvJokZGlzcGxheV9uYW1lIOacquWMheWQq+aPkOS6pCAkc2hhMV9zcmMiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NzEKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0ICRzaGExX2RzdCIKK21zZ3N0ciAiICDorablkYrvvJokZGlzcGxheV9uYW1lIOacquWMheWQq+aPkOS6pCAkc2hhMV9kc3QiCisKKyMgIOitr+iAhe+8muiri+e2reaMgeWJjeWwjuepuuagvAorIzogZ2l0LXN1Ym1vZHVsZS5zaDo5NzQKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiAgV2FybjogJGRpc3BsYXlfbmFtZSBkb2Vzbid0IGNvbnRhaW4gY29tbWl0cyAkc2hhMV9zcmMgYW5kICRzaGExX2RzdCIKK21zZ3N0ciAiICDorablkYrvvJokZGlzcGxheV9uYW1lIOacquWMheWQq+aPkOS6pCAkc2hhMV9zcmMg5ZKMICRzaGExX2RzdCIKKworIzogZ2l0LXBhcnNlLXJlbW90ZS5zaDo4OQorIywgc2gtZm9ybWF0Cittc2dpZCAiU2VlIGdpdC0ke2NtZH0oMSkgZm9yIGRldGFpbHMuIgorbXNnc3RyICLoqbPoposgZ2l0LSR7Y21kfSgxKeOAgiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEwOQorbXNnaWQgIkFwcGxpZWQgYXV0b3N0YXNoLiIKK21zZ3N0ciAi5bey5oeJ55SoIGF1dG9zdGFzaOOAgiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjExMgorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90IHN0b3JlICRzdGFzaF9zaGExIgorbXNnc3RyICLkuI3og73lhLLlrZggJHN0YXNoX3NoYTEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDoxOTEKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlJlYmFzaW5nICgkbmV3X2NvdW50LyR0b3RhbCkiCittc2dzdHIgIumHjeWumuWfuuW6leS4re+8iCRuZXdfY291bnQvJHRvdGFs77yJIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MjA3Cittc2dpZCAiIgorIlxuIgorIkNvbW1hbmRzOlxuIgorInAsIHBpY2sgPGNvbW1pdD4gPSB1c2UgY29tbWl0XG4iCisiciwgcmV3b3JkIDxjb21taXQ+ID0gdXNlIGNvbW1pdCwgYnV0IGVkaXQgdGhlIGNvbW1pdCBtZXNzYWdlXG4iCisiZSwgZWRpdCA8Y29tbWl0PiA9IHVzZSBjb21taXQsIGJ1dCBzdG9wIGZvciBhbWVuZGluZ1xuIgorInMsIHNxdWFzaCA8Y29tbWl0PiA9IHVzZSBjb21taXQsIGJ1dCBtZWxkIGludG8gcHJldmlvdXMgY29tbWl0XG4iCisiZiwgZml4dXAgPGNvbW1pdD4gPSBsaWtlIFwic3F1YXNoXCIsIGJ1dCBkaXNjYXJkIHRoaXMgY29tbWl0J3MgbG9nIG1lc3NhZ2VcbiIKKyJ4LCBleGVjIDxjb21taXQ+ID0gcnVuIGNvbW1hbmQgKHRoZSByZXN0IG9mIHRoZSBsaW5lKSB1c2luZyBzaGVsbFxuIgorImQsIGRyb3AgPGNvbW1pdD4gPSByZW1vdmUgY29tbWl0XG4iCisibCwgbGFiZWwgPGxhYmVsPiA9IGxhYmVsIGN1cnJlbnQgSEVBRCB3aXRoIGEgbmFtZVxuIgorInQsIHJlc2V0IDxsYWJlbD4gPSByZXNldCBIRUFEIHRvIGEgbGFiZWxcbiIKKyJtLCBtZXJnZSBbLUMgPGNvbW1pdD4gfCAtYyA8Y29tbWl0Pl0gPGxhYmVsPiBbIyA8b25lbGluZT5dXG4iCisiLiAgICAgICBjcmVhdGUgYSBtZXJnZSBjb21taXQgdXNpbmcgdGhlIG9yaWdpbmFsIG1lcmdlIGNvbW1pdCdzXG4iCisiLiAgICAgICBtZXNzYWdlIChvciB0aGUgb25lbGluZSwgaWYgbm8gb3JpZ2luYWwgbWVyZ2UgY29tbWl0IHdhc1xuIgorIi4gICAgICAgc3BlY2lmaWVkKS4gVXNlIC1jIDxjb21taXQ+IHRvIHJld29yZCB0aGUgY29tbWl0IG1lc3NhZ2UuXG4iCisiXG4iCisiVGhlc2UgbGluZXMgY2FuIGJlIHJlLW9yZGVyZWQ7IHRoZXkgYXJlIGV4ZWN1dGVkIGZyb20gdG9wIHRvIGJvdHRvbS5cbiIKK21zZ3N0ciAiIgorIlxuIgorIuaMh+S7pDpcbiIKKyJwLCBwaWNrIDzmj5DkuqQ+ID0g5L2/55So5o+Q5LqkXG4iCisiciwgcmV3b3JkIDzmj5DkuqQ+ID0g5L2/55So5o+Q5Lqk77yM5L2G5L+u5pS55o+Q5Lqk6Kqq5piOXG4iCisiZSwgZWRpdCA85o+Q5LqkPiA9IOS9v+eUqOaPkOS6pO+8jOS9huWBnOS4i+S+huS/ruijnFxuIgorInMsIHNxdWFzaCA85o+Q5LqkPiA9IOS9v+eUqOaPkOS6pO+8jOS9huiejeWQiOWIsOWJjeS4gOWAi+aPkOS6pFxuIgorImYsIGZpeHVwIDzmj5DkuqQ+ID0g6aGe5Ly85pa8IFwic3F1YXNoXCLvvIzkvYbmjajmo4Tmj5DkuqToqqrmmI7ml6XoqoxcbiIKKyJ4LCBleGVjIDzmjIfku6Q+ID0g5L2/55SoIHNoZWxsIOWft+ihjOaMh+S7pO+8iOatpOihjOWJqemkmOmDqOWIhu+8iVxuIgorImQsIGRyb3AgPOaPkOS6pD4gPSDliKrpmaTmj5DkuqRcbiIKKyJsLCBsYWJlbCA85qiZ57GkPiA9IOeCuuebruWJjSBIRUFEIOaJk+S4iuaomeexpFxuIgorInQsIHJlc2V0IDzmqJnnsaQ+ID0g6YeN6KitIEhFQUQg5Yiw6Kmy5qiZ57GkXG4iCisibSwgbWVyZ2UgWy1DIDzmj5DkuqQ+IHwgLWMgPOaPkOS6pD5dIDzmqJnnsaQ+IFsjIDxvbmVsaW5lPl1cbiIKKyIuICAgICAgIOW7uueri+S4gOWAi+WQiOS9teaPkOS6pO+8jOS4puS9v+eUqOWOn+Wni+eahOWQiOS9teaPkOS6pOiqquaYju+8iOWmguaenOaykuacieaMh+WumlxuIgorIi4gICAgICAg5Y6f5aeL5o+Q5Lqk77yM5L2/55So5YKZ6Ki76YOo5YiG55qEIG9uZWxpbmUg5L2c54K65o+Q5Lqk6Kqq5piO77yJ44CC5L2/55SoXG4iCisiLiAgICAgICAtYyA85o+Q5LqkPiDlj6/ku6Xnt6jovK/mj5DkuqToqqrmmI7jgIJcbiIKKyJcbiIKKyLlj6/ku6XlsI3pgJnkupvooYzph43mlrDmjpLluo/vvIzlsIflvp7kuIroh7PkuIvln7fooYzjgIJcbiIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI3MAorIywgc2gtZm9ybWF0Cittc2dpZCAiIgorIllvdSBjYW4gYW1lbmQgdGhlIGNvbW1pdCBub3csIHdpdGhcbiIKKyJcbiIKKyJcdGdpdCBjb21taXQgLS1hbWVuZCAkZ3BnX3NpZ25fb3B0X3F1b3RlZFxuIgorIlxuIgorIk9uY2UgeW91IGFyZSBzYXRpc2ZpZWQgd2l0aCB5b3VyIGNoYW5nZXMsIHJ1blxuIgorIlxuIgorIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgorbXNnc3RyICIiCisi5oKo54++5Zyo5Y+v5Lul5L+u6KOc6YCZ5YCL5o+Q5Lqk77yM5L2/55SoXG4iCisiXG4iCisiXHRnaXQgY29tbWl0IC0tYW1lbmQgJGdwZ19zaWduX29wdF9xdW90ZWRcbiIKKyJcbiIKKyLnlbbmgqjlsI3orormm7TmhJ/liLDmu7/mhI/vvIzln7fooYxcbiIKKyJcbiIKKyJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjI5NQorIywgc2gtZm9ybWF0Cittc2dpZCAiJHNoYTE6IG5vdCBhIGNvbW1pdCB0aGF0IGNhbiBiZSBwaWNrZWQiCittc2dzdHIgIiRzaGEx77ya5LiN5piv5LiA5YCL5Y+v5Lul6KKr5o+A6YG455qE5o+Q5LqkIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6MzM0CisjLCBzaC1mb3JtYXQKK21zZ2lkICJJbnZhbGlkIGNvbW1pdCBuYW1lOiAkc2hhMSIKK21zZ3N0ciAi54Sh5pWI55qE5o+Q5Lqk5ZCN77yaJHNoYTEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDozNjQKK21zZ2lkICJDYW5ub3Qgd3JpdGUgY3VycmVudCBjb21taXQncyByZXBsYWNlbWVudCBzaGExIgorbXNnc3RyICLkuI3og73lr6vlhaXnm67liY3mj5DkuqTnmoTmm7/ku6Mgc2hhMSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQxNQorIywgc2gtZm9ybWF0Cittc2dpZCAiRmFzdC1mb3J3YXJkIHRvICRzaGExIgorbXNnc3RyICLlv6vovYnliLAgJHNoYTEiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0MTcKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCBmYXN0LWZvcndhcmQgdG8gJHNoYTEiCittc2dzdHIgIuS4jeiDveW/q+i9ieWIsCAkc2hhMSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQyNgorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90IG1vdmUgSEVBRCB0byAkZmlyc3RfcGFyZW50IgorbXNnc3RyICLkuI3og73np7vli5UgSEVBRCDliLAgJGZpcnN0X3BhcmVudCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQzMQorIywgc2gtZm9ybWF0Cittc2dpZCAiUmVmdXNpbmcgdG8gc3F1YXNoIGEgbWVyZ2U6ICRzaGExIgorbXNnc3RyICLmi5LntZXlo5PnuK7kuIDlgIvlkIjkvbXvvJokc2hhMSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ0OQorIywgc2gtZm9ybWF0Cittc2dpZCAiRXJyb3IgcmVkb2luZyBtZXJnZSAkc2hhMSIKK21zZ3N0ciAi54Sh5rOV6YeN5YGa5ZCI5L21ICRzaGExIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDU4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgcGljayAkc2hhMSIKK21zZ3N0ciAi5LiN6IO95o+A6YG4ICRzaGExIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NDY3CisjLCBzaC1mb3JtYXQKK21zZ2lkICJUaGlzIGlzIHRoZSBjb21taXQgbWVzc2FnZSAjJHtufToiCittc2dzdHIgIumAmeaYr+aPkOS6pOiqquaYjiAjJHtufe+8miIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ3MgorIywgc2gtZm9ybWF0Cittc2dpZCAiVGhlIGNvbW1pdCBtZXNzYWdlICMke259IHdpbGwgYmUgc2tpcHBlZDoiCittc2dzdHIgIuaPkOS6pOiqquaYjiAjJHtufSDlsIfooqvot7PpgY7vvJoiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0ODMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAkY291bnQgY29tbWl0LiIKK21zZ2lkX3BsdXJhbCAiVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mICRjb3VudCBjb21taXRzLiIKK21zZ3N0clswXSAi6YCZ5piv5LiA5YCLICRjb3VudCDlgIvmj5DkuqTnmoTntYTlkIjjgIIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo0OTIKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkNhbm5vdCB3cml0ZSAkZml4dXBfbXNnIgorbXNnc3RyICLkuI3og73lr6vlhaUgJGZpeHVwX21zZyIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjQ5NQorbXNnaWQgIlRoaXMgaXMgYSBjb21iaW5hdGlvbiBvZiAyIGNvbW1pdHMuIgorbXNnc3RyICLpgJnmmK/kuIDlgIsgMiDlgIvmj5DkuqTnmoTntYTlkIjjgIIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo1MzYgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU3OQorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjU4MgorIywgc2gtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGFwcGx5ICRzaGExLi4uICRyZXN0IgorbXNnc3RyICLkuI3og73mh4nnlKggJHNoYTEuLi4gJHJlc3QiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MTEKKyMsIHNoLWZvcm1hdAorbXNnaWQgIiIKKyJDb3VsZCBub3QgYW1lbmQgY29tbWl0IGFmdGVyIHN1Y2Nlc3NmdWxseSBwaWNraW5nICRzaGExLi4uICRyZXN0XG4iCisiVGhpcyBpcyBtb3N0IGxpa2VseSBkdWUgdG8gYW4gZW1wdHkgY29tbWl0IG1lc3NhZ2UsIG9yIHRoZSBwcmUtY29tbWl0IGhvb2tcbiIKKyJmYWlsZWQuIElmIHRoZSBwcmUtY29tbWl0IGhvb2sgZmFpbGVkLCB5b3UgbWF5IG5lZWQgdG8gcmVzb2x2ZSB0aGUgaXNzdWUgIgorImJlZm9yZVxuIgorInlvdSBhcmUgYWJsZSB0byByZXdvcmQgdGhlIGNvbW1pdC4iCittc2dzdHIgIiIKKyLkuI3og73lnKjmiJDlip/mj4DpgbggJHNoYTEuLi4gJHJlc3Qg5LmL5b6M5L+u6KOc5o+Q5LqkXG4iCisi6YCZ6YCa5bi45piv5Zug54K656m655qE5o+Q5Lqk6Kqq5piO77yM5oiW6ICFIHByZS1jb21taXQg5o6b6Ymk5Z+36KGM5aSx5pWX44CC5aaC5p6c5pivIHByZS1jb21taXRcbiIKKyLmjpvpiaTln7fooYzlpLHmlZfvvIzkvaDlj6/og73pnIDopoHlnKjph43lr6vmj5DkuqToqqrmmI7liY3op6PmsbrpgJnlgIvllY/poYzjgIIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2MjYKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlN0b3BwZWQgYXQgJHNoYTFfYWJicmV2Li4uICRyZXN0IgorbXNnc3RyICLlgZzmraLlnKggJHNoYTFfYWJicmV2Li4uICRyZXN0IgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjQxCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3QgJyRzcXVhc2hfc3R5bGUnIHdpdGhvdXQgYSBwcmV2aW91cyBjb21taXQiCittc2dzdHIgIuaykuacieeItuaPkOS6pOeahOaDheazgeS4i+S4jeiDvSAnJHNxdWFzaF9zdHlsZSciCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2ODMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIkV4ZWN1dGluZzogJHJlc3QiCittc2dzdHIgIuWft+ihjO+8miRyZXN0IgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NjkxCisjLCBzaC1mb3JtYXQKK21zZ2lkICJFeGVjdXRpb24gZmFpbGVkOiAkcmVzdCIKK21zZ3N0ciAi5Z+36KGM5aSx5pWX77yaJHJlc3QiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo2OTMKK21zZ2lkICJhbmQgbWFkZSBjaGFuZ2VzIHRvIHRoZSBpbmRleCBhbmQvb3IgdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAi5Lim5LiU5L+u5pS557Si5byV5ZKML+aIluW3peS9nOWNgCIKKworIyAg6K2v6ICF77ya6KuL57at5oyB5YmN5bCO56m65qC8CisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6Njk1Cittc2dpZCAiIgorIllvdSBjYW4gZml4IHRoZSBwcm9ibGVtLCBhbmQgdGhlbiBydW5cbiIKKyJcbiIKKyJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKK21zZ3N0ciAiIgorIuaCqOWPr+S7peino+axuumAmeWAi+WVj+mhjO+8jOeEtuW+jOWft+ihjFxuIgorIlxuIgorIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgorCisjLiBUUkFOU0xBVE9SUzogYWZ0ZXIgdGhlc2UgbGluZXMgaXMgYSBjb21tYW5kIHRvIGJlIGlzc3VlZCBieSB0aGUgdXNlcgorIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcwOAorIywgc2gtZm9ybWF0Cittc2dpZCAiIgorIkV4ZWN1dGlvbiBzdWNjZWVkZWQ6ICRyZXN0XG4iCisiYnV0IGxlZnQgY2hhbmdlcyB0byB0aGUgaW5kZXggYW5kL29yIHRoZSB3b3JraW5nIHRyZWVcbiIKKyJDb21taXQgb3Igc3Rhc2ggeW91ciBjaGFuZ2VzLCBhbmQgdGhlbiBydW5cbiIKKyJcbiIKKyJcdGdpdCByZWJhc2UgLS1jb250aW51ZSIKK21zZ3N0ciAiIgorIuWft+ihjOaIkOWKn++8miRyZXN0XG4iCisi5L2G5piv5Zyo57Si5byV5ZKML+aIluW3peS9nOWNgOS4reWtmOWcqOiuiuabtOOAguaPkOS6pOaIluWEsuiXj+S/ruaUue+8jOeEtuW+jOWft+ihjFxuIgorIlxuIgorIlx0Z2l0IHJlYmFzZSAtLWNvbnRpbnVlIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzE5CisjLCBzaC1mb3JtYXQKK21zZ2lkICJVbmtub3duIGNvbW1hbmQ6ICRjb21tYW5kICRzaGExICRyZXN0IgorbXNnc3RyICLmnKrnn6XmjIfku6TvvJokY29tbWFuZCAkc2hhMSAkcmVzdCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjcyMAorbXNnaWQgIlBsZWFzZSBmaXggdGhpcyB1c2luZyAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycuIgorbXNnc3RyICLopoHkv67mlLnoq4vkvb/nlKjmjIfku6QgJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8n44CCIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6NzU1CisjLCBzaC1mb3JtYXQKK21zZ2lkICJTdWNjZXNzZnVsbHkgcmViYXNlZCBhbmQgdXBkYXRlZCAkaGVhZF9uYW1lLiIKK21zZ3N0ciAi5oiQ5Yqf6YeN5a6a5Z+65bqV5Lim5pu05pawICRoZWFkX25hbWXjgIIiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4MTIKK21zZ2lkICJDb3VsZCBub3QgcmVtb3ZlIENIRVJSWV9QSUNLX0hFQUQiCittc2dzdHIgIuS4jeiDveWIqumZpCBDSEVSUllfUElDS19IRUFEIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODE3CisjLCBzaC1mb3JtYXQKK21zZ2lkICIiCisiWW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWUuXG4iCisiSWYgdGhlc2UgY2hhbmdlcyBhcmUgbWVhbnQgdG8gYmVcbiIKKyJzcXVhc2hlZCBpbnRvIHRoZSBwcmV2aW91cyBjb21taXQsIHJ1bjpcbiIKKyJcbiIKKyIgIGdpdCBjb21taXQgLS1hbWVuZCAkZ3BnX3NpZ25fb3B0X3F1b3RlZFxuIgorIlxuIgorIklmIHRoZXkgYXJlIG1lYW50IHRvIGdvIGludG8gYSBuZXcgY29tbWl0LCBydW46XG4iCisiXG4iCisiICBnaXQgY29tbWl0ICRncGdfc2lnbl9vcHRfcXVvdGVkXG4iCisiXG4iCisiSW4gYm90aCBjYXNlcywgb25jZSB5b3UncmUgZG9uZSwgY29udGludWUgd2l0aDpcbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorbXNnc3RyICIiCisi5oKo5bey5pqr5a2Y5LqG5bel5L2c5Y2A55qE5L+u5pS544CC5aaC5p6c6YCZ5Lqb5L+u5pS56KaB5aOT57iu5Yiw5YmN5LiA5YCL5o+Q5Lqk77yM5Z+36KGM77yaXG4iCisiXG4iCisiICBnaXQgY29tbWl0IC0tYW1lbmQgJGdwZ19zaWduX29wdF9xdW90ZWRcbiIKKyJcbiIKKyLlpoLmnpzpgJnkupvorormm7TopoHlvaLmiJDkuIDlgIvmlrDmj5DkuqTvvIzln7fooYzvvJpcbiIKKyJcbiIKKyIgIGdpdCBjb21taXQgJGdwZ19zaWduX29wdF9xdW90ZWRcbiIKKyJcbiIKKyLnhKHoq5blk6rnqK7mg4Xms4HvvIznlbbmgqjlrozmiJDmj5DkuqTvvIznubznuozln7fooYzvvJpcbiIKKyJcbiIKKyIgIGdpdCByZWJhc2UgLS1jb250aW51ZVxuIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODM0Cittc2dpZCAiRXJyb3IgdHJ5aW5nIHRvIGZpbmQgdGhlIGF1dGhvciBpZGVudGl0eSB0byBhbWVuZCBjb21taXQiCittc2dzdHIgIuWcqOS/ruijnOaPkOS6pOS4reWwi+aJvuS9nOiAheioiuaBr+aZgumBh+WIsOmMr+iqpCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjgzOQorbXNnaWQgIiIKKyJZb3UgaGF2ZSB1bmNvbW1pdHRlZCBjaGFuZ2VzIGluIHlvdXIgd29ya2luZyB0cmVlLiBQbGVhc2UgY29tbWl0IHRoZW1cbiIKKyJmaXJzdCBhbmQgdGhlbiBydW4gJ2dpdCByZWJhc2UgLS1jb250aW51ZScgYWdhaW4uIgorbXNnc3RyICIiCisi5oKo55qE5bel5L2c5Y2A5Lit5pyJ5pyq5o+Q5Lqk55qE6K6K5pu044CC6KuL5YWI5o+Q5Lqk54S25b6M5YaN5qyh5Z+36KGMICdnaXQgcmViYXNlIC0tY29udGludWUn44CCIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODQ0IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo4NDgKK21zZ2lkICJDb3VsZCBub3QgY29tbWl0IHN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAi5LiN6IO95o+Q5Lqk5pqr5a2Y55qE5L+u5pS544CCIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6ODc5IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NjUKK21zZ2lkICJDb3VsZCBub3QgZXhlY3V0ZSBlZGl0b3IiCittc2dzdHIgIueEoeazleWft+ihjOe3qOi8r+WZqCIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkwMAorIywgc2gtZm9ybWF0Cittc2dpZCAiQ291bGQgbm90IGNoZWNrb3V0ICRzd2l0Y2hfdG8iCittc2dzdHIgIuS4jeiDveewveWHuiAkc3dpdGNoX3RvIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTA3Cittc2dpZCAiTm8gSEVBRD8iCittc2dzdHIgIuaykuaciSBIRUFE77yfIgorCisjOiBnaXQtcmViYXNlLS1wcmVzZXJ2ZS1tZXJnZXMuc2g6OTA4CisjLCBzaC1mb3JtYXQKK21zZ2lkICJDb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSAkc3RhdGVfZGlyIgorbXNnc3RyICLkuI3og73lu7rnq4vmmqvmmYIgJHN0YXRlX2RpciIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjkxMQorbXNnaWQgIkNvdWxkIG5vdCBtYXJrIGFzIGludGVyYWN0aXZlIgorbXNnc3RyICLkuI3og73mqJnoqJjngrrkupLli5XlvI8iCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5NDMKKyMsIHNoLWZvcm1hdAorbXNnaWQgIlJlYmFzZSAkc2hvcnRyZXZpc2lvbnMgb250byAkc2hvcnRvbnRvICgkdG9kb2NvdW50IGNvbW1hbmQpIgorbXNnaWRfcGx1cmFsICJSZWJhc2UgJHNob3J0cmV2aXNpb25zIG9udG8gJHNob3J0b250byAoJHRvZG9jb3VudCBjb21tYW5kcykiCittc2dzdHJbMF0gIumHjeWumuWfuuW6lSAkc2hvcnRyZXZpc2lvbnMg5YiwICRzaG9ydG9udG/vvIgkdG9kb2NvdW50IOWAi+aPkOS6pO+8iSIKKworIzogZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjk1NQorbXNnaWQgIk5vdGUgdGhhdCBlbXB0eSBjb21taXRzIGFyZSBjb21tZW50ZWQgb3V0IgorbXNnc3RyICLms6jmhI/nqbrmj5DkuqTlt7LooqvlgpnoqLvmjokiCisKKyM6IGdpdC1yZWJhc2UtLXByZXNlcnZlLW1lcmdlcy5zaDo5OTcgZ2l0LXJlYmFzZS0tcHJlc2VydmUtbWVyZ2VzLnNoOjEwMDIKK21zZ2lkICJDb3VsZCBub3QgaW5pdCByZXdyaXR0ZW4gY29tbWl0cyIKK21zZ3N0ciAi5LiN6IO95bCN6YeN5a+r5o+Q5Lqk6YCy6KGM5Yid5aeL5YyWIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6ODkgZ2l0LXNoLXNldHVwLnNoOjk0CisjLCBzaC1mb3JtYXQKK21zZ2lkICJ1c2FnZTogJGRhc2hsZXNzICRVU0FHRSIKK21zZ3N0ciAi55So5rOV77yaJGRhc2hsZXNzICRVU0FHRSIKKworIzogZ2l0LXNoLXNldHVwLnNoOjE5MQorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90IGNoZGlyIHRvICRjZHVwLCB0aGUgdG9wbGV2ZWwgb2YgdGhlIHdvcmtpbmcgdHJlZSIKK21zZ3N0ciAi5LiN6IO95YiH5o+b55uu6YyE5YiwICRjZHVw77yM5bel5L2c5Y2A55qE6aCC57Sa55uu6YyEIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MjAwIGdpdC1zaC1zZXR1cC5zaDoyMDcKKyMsIHNoLWZvcm1hdAorbXNnaWQgImZhdGFsOiAkcHJvZ3JhbV9uYW1lIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgYSB3b3JraW5nIHRyZWUuIgorbXNnc3RyICLoh7Tlkb3pjK/oqqTvvJokcHJvZ3JhbV9uYW1lIOS4jeiDveWcqOaykuacieW3peS9nOWNgOeahOaDheazgeS4i+S9v+eUqCIKKworIzogZ2l0LXNoLXNldHVwLnNoOjIyMQorbXNnaWQgIkNhbm5vdCByZWJhc2U6IFlvdSBoYXZlIHVuc3RhZ2VkIGNoYW5nZXMuIgorbXNnc3RyICLkuI3og73ph43lrprln7rlupXvvJrmgqjmnInmnKrmmqvlrZjnmoTorormm7TjgIIiCisKKyM6IGdpdC1zaC1zZXR1cC5zaDoyMjQKK21zZ2lkICJDYW5ub3QgcmV3cml0ZSBicmFuY2hlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCittc2dzdHIgIuS4jeiDvemHjeWvq+WIhuaUr++8muaCqOacieacquaaq+WtmOeahOiuiuabtOOAgiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjIyNworbXNnaWQgIkNhbm5vdCBwdWxsIHdpdGggcmViYXNlOiBZb3UgaGF2ZSB1bnN0YWdlZCBjaGFuZ2VzLiIKK21zZ3N0ciAi54Sh5rOV6YCP6YGO6YeN5a6a5Z+65bqV5pa55byP5ouJ5Y+W77ya5oKo5pyJ5pyq5pqr5a2Y55qE6K6K5pu044CCIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MjMwCisjLCBzaC1mb3JtYXQKK21zZ2lkICJDYW5ub3QgJGFjdGlvbjogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iCittc2dzdHIgIuS4jeiDvSAkYWN0aW9u77ya5oKo5pyJ5pyq5pqr5a2Y55qE6K6K5pu044CCIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MjQzCittc2dpZCAiQ2Fubm90IHJlYmFzZTogWW91ciBpbmRleCBjb250YWlucyB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKK21zZ3N0ciAi5LiN6IO96YeN5a6a5Z+65bqV77ya5oKo55qE57Si5byV5Lit5YyF5ZCr5pyq5o+Q5Lqk55qE6K6K5pu044CCIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MjQ2Cittc2dpZCAiQ2Fubm90IHB1bGwgd2l0aCByZWJhc2U6IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCittc2dzdHIgIueEoeazlemAj+mBjumHjeWumuWfuuW6leaWueW8j+aLieWPlu+8muaCqOeahOe0ouW8leS4reWMheWQq+acquaPkOS6pOeahOiuiuabtOOAgiIKKworIzogZ2l0LXNoLXNldHVwLnNoOjI0OQorIywgc2gtZm9ybWF0Cittc2dpZCAiQ2Fubm90ICRhY3Rpb246IFlvdXIgaW5kZXggY29udGFpbnMgdW5jb21taXR0ZWQgY2hhbmdlcy4iCittc2dzdHIgIuS4jeiDvSAkYWN0aW9u77ya5oKo55qE57Si5byV5Lit5YyF5ZCr5pyq5o+Q5Lqk55qE6K6K5pu044CCIgorCisjOiBnaXQtc2gtc2V0dXAuc2g6MjUzCittc2dpZCAiQWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIgorbXNnc3RyICLogIzkuJTmgqjnmoTntKLlvJXkuK3ljIXlkKvmnKrmj5DkuqTnmoTorormm7TjgIIiCisKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzMKK21zZ2lkICJZb3UgbmVlZCB0byBydW4gdGhpcyBjb21tYW5kIGZyb20gdGhlIHRvcGxldmVsIG9mIHRoZSB3b3JraW5nIHRyZWUuIgorbXNnc3RyICLmgqjpnIDopoHlnKjlt6XkvZzljYDnmoTpoILntJrnm67pjITkuK3ln7fooYzpgJnlgIvmjIfku6TjgIIiCisKKyM6IGdpdC1zaC1zZXR1cC5zaDozNzgKK21zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIGFic29sdXRlIHBhdGggb2YgZ2l0IGRpcmVjdG9yeSIKK21zZ3N0ciAi5LiN6IO956K65a6aIGdpdCDnm67pjITnmoTntZXlsI3ot6/lvpEiCisKKyMuIFRSQU5TTEFUT1JTOiB5b3UgY2FuIGFkanVzdCB0aGlzIHRvIGFsaWduICJnaXQgYWRkIC1pIiBzdGF0dXMgbWVudQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoyMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJTEycyAlMTJzICVzIgorbXNnc3RyICIlMTJzICUxMnMgJXMiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6NjM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRvdWNoZWQgJWQgcGF0aFxuIgorbXNnaWRfcGx1cmFsICJ0b3VjaGVkICVkIHBhdGhzXG4iCittc2dzdHJbMF0gIuW7uueri+S6hiAlZCDlgIvot6/lvpFcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDUzCittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCisibWFya2VkIGZvciBzdGFnaW5nLiIKK21zZ3N0ciAi5aaC5p6c5L+u6KOc5qqU6IO95Lm+5reo5Zyw5aWX55So77yM57eo6Lyv5aGK5bCH56uL5Y2z5qiZ6KiY54K65pqr5a2Y44CCIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTYKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKKyJtYXJrZWQgZm9yIHN0YXNoaW5nLiIKK21zZ3N0ciAi5aaC5p6c5L+u6KOc5qqU6IO95Lm+5reo5Zyw5aWX55So77yM57eo6Lyv5aGK5bCH56uL5Y2z5qiZ6KiY54K65YSy6JeP44CCIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEwNTkKK21zZ2lkICIiCisiSWYgdGhlIHBhdGNoIGFwcGxpZXMgY2xlYW5seSwgdGhlIGVkaXRlZCBodW5rIHdpbGwgaW1tZWRpYXRlbHkgYmVcbiIKKyJtYXJrZWQgZm9yIHVuc3RhZ2luZy4iCittc2dzdHIgIuWmguaenOS/ruijnOaqlOiDveS5vua3qOWcsOWll+eUqO+8jOe3qOi8r+WhiuWwh+eri+WNs+aomeiomOeCuuacquaaq+WtmOOAgiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDYyIGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA3MQorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDc3Cittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCisibWFya2VkIGZvciBhcHBseWluZy4iCittc2dzdHIgIuWmguaenOS/ruijnOaqlOiDveS5vua3qOWcsOWll+eUqO+8jOe3qOi8r+WhiuWwh+eri+WNs+aomeiomOeCuuaHieeUqOOAgiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDY1IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTA2OAorIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMDc0Cittc2dpZCAiIgorIklmIHRoZSBwYXRjaCBhcHBsaWVzIGNsZWFubHksIHRoZSBlZGl0ZWQgaHVuayB3aWxsIGltbWVkaWF0ZWx5IGJlXG4iCisibWFya2VkIGZvciBkaXNjYXJkaW5nLiIKK21zZ3N0ciAi5aaC5p6c5L+u6KOc5qqU6IO95Lm+5reo5Zyw5aWX55So77yM57eo6Lyv5aGK5bCH56uL5Y2z5qiZ6KiY54K65o2o5qOE44CCIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjExMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gaHVuayBlZGl0IGZpbGUgZm9yIHdyaXRpbmc6ICVzIgorbXNnc3RyICLngrrlr6vlhaXplovllZ/ljYDloYrnt6jovK/mqpTmoYjlpLHmlZfvvJolcyIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMTE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyItLS1cbiIKKyJUbyByZW1vdmUgJyVzJyBsaW5lcywgbWFrZSB0aGVtICcgJyBsaW5lcyAoY29udGV4dCkuXG4iCisiVG8gcmVtb3ZlICclcycgbGluZXMsIGRlbGV0ZSB0aGVtLlxuIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggJXMgd2lsbCBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIiCisiLS0tXG4iCisi6KaB5Yiq6ZmkICclcycg6ZaL5aeL55qE6KGM77yM5L2/5YW25oiQ54K6ICcgJyDplovlp4vnmoTooYzvvIjkuIrkuIvmlofvvInjgIJcbiIKKyLopoHliKrpmaQgJyVzJyDplovlp4vnmoTooYzvvIzliKrpmaTlroPlgJHjgIJcbiIKKyLku6UgJXMg6ZaL5aeL55qE6KGM5bCH6KKr5Yiq6Zmk44CCXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTE0MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBodW5rIGVkaXQgZmlsZSBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgIueEoeazleiugOWPluWNgOWhiue3qOi8r+aqlOahiO+8miVzIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNDgKK21zZ2lkICIiCisieSAtIHN0YWdlIHRoaXMgaHVua1xuIgorIm4gLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCBzdGFnZSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBzdGFnZSB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3Qgc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKyJ5IC0g5pqr5a2Y5q2k5Y2A5aGKXG4iCisibiAtIOS4jeimgeaaq+WtmOatpOWNgOWhilxuIgorInEgLSDpm6LplovjgILkuI3mmqvlrZjmraTljYDloYrlj4rlvozpnaLnmoTlhajpg6jljYDloYpcbiIKKyJhIC0g5pqr5a2Y5q2k5Y2A5aGK5ZKM5pys5qqU5qGI5Lit5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisiZCAtIOS4jeaaq+WtmOatpOWNgOWhiuWSjOacrOaqlOahiOS4reW+jOmdoueahOWFqOmDqOWNgOWhiiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjU0Cittc2dpZCAiIgorInkgLSBzdGFzaCB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVua1xuIgorInEgLSBxdWl0OyBkbyBub3Qgc3Rhc2ggdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gc3Rhc2ggdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHN0YXNoIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgorbXNnc3RyICIiCisieSAtIOWEsuiXj+atpOWNgOWhilxuIgorIm4gLSDkuI3opoHlhLLol4/mraTljYDloYpcbiIKKyJxIC0g6Zui6ZaL44CC5LiN5YSy6JeP5q2k5Y2A5aGK5Y+K5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisiYSAtIOWEsuiXj+atpOWNgOWhiuWSjOacrOaqlOahiOS4reW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImQgLSDkuI3lhLLol4/mraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYoiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI2MAorbXNnaWQgIiIKKyJ5IC0gdW5zdGFnZSB0aGlzIGh1bmtcbiIKKyJuIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rXG4iCisicSAtIHF1aXQ7IGRvIG5vdCB1bnN0YWdlIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIHVuc3RhZ2UgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IHVuc3RhZ2UgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGUiCittc2dzdHIgIiIKKyJ5IC0g5LiN5pqr5a2Y5q2k5Y2A5aGKXG4iCisibiAtIOS4jeimgeS4jeaaq+WtmOatpOWNgOWhilxuIgorInEgLSDpm6LplovjgILkuI3opoHkuI3mmqvlrZjmraTljYDloYrlj4rlvozpnaLnmoTlhajpg6jljYDloYpcbiIKKyJhIC0g5LiN5pqr5a2Y5q2k5Y2A5aGK5ZKM5pys5qqU5qGI5Lit5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisiZCAtIOS4jeimgeS4jeaaq+WtmOatpOWNgOWhiuWSjOacrOaqlOahiOS4reW+jOmdoueahOWFqOmDqOWNgOWhiiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMjY2Cittc2dpZCAiIgorInkgLSBhcHBseSB0aGlzIGh1bmsgdG8gaW5kZXhcbiIKKyJuIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayB0byBpbmRleFxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgorbXNnc3RyICIiCisieSAtIOWcqOe0ouW8leS4reWll+eUqOatpOWNgOWhilxuIgorIm4gLSDkuI3opoHlnKjntKLlvJXkuK3lpZfnlKjmraTljYDloYpcbiIKKyJxIC0g6Zui6ZaL44CC5LiN6KaB5aWX55So5q2k5Y2A5aGK5Y+K5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisiYSAtIOWll+eUqOatpOWNgOWhiuWSjOacrOaqlOahiOS4reW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImQgLSDkuI3opoHlpZfnlKjmraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYoiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI3MiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyOTAKK21zZ2lkICIiCisieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKyJuIC0gZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIGZyb20gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGRpc2NhcmQgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gZGlzY2FyZCB0aGlzIGh1bmsgYW5kIGFsbCBsYXRlciBodW5rcyBpbiB0aGUgZmlsZVxuIgorImQgLSBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSDlnKjlt6XkvZzljYDkuK3mjajmo4TmraTljYDloYpcbiIKKyJuIC0g5LiN6KaB5Zyo5bel5L2c5Y2A5Lit5o2o5qOE5q2k5Y2A5aGKXG4iCisicSAtIOmboumWi+OAguS4jeimgeaNqOajhOatpOWNgOWhiuWPiuW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImEgLSDmjajmo4TmraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYpcbiIKKyJkIC0g5LiN6KaB5o2o5qOE5q2k5Y2A5aGK5ZKM5pys5qqU5qGI5Lit5b6M6Z2i55qE5YWo6YOo5Y2A5aGKIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEyNzgKK21zZ2lkICIiCisieSAtIGRpc2NhcmQgdGhpcyBodW5rIGZyb20gaW5kZXggYW5kIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBmcm9tIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgZGlzY2FyZCB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSByZW1haW5pbmcgb25lc1xuIgorImEgLSBkaXNjYXJkIHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBkaXNjYXJkIHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgorbXNnc3RyICIiCisieSAtIOWcqOe0ouW8leWSjOW3peS9nOWNgOS4reaNqOajhOatpOWNgOWhilxuIgorIm4gLSDkuI3opoHlnKjntKLlvJXlkozlt6XkvZzljYDkuK3mjajmo4TmraTljYDloYpcbiIKKyJxIC0g6Zui6ZaL44CC5LiN6KaB5o2o5qOE5q2k5Y2A5aGK5Y+K5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisiYSAtIOaNqOajhOatpOWNgOWhiuWSjOacrOaqlOahiOS4reW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImQgLSDkuI3opoHmjajmo4TmraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYoiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI4NAorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorIm4gLSBkbyBub3QgYXBwbHkgdGhpcyBodW5rIHRvIGluZGV4IGFuZCB3b3JrdHJlZVxuIgorInEgLSBxdWl0OyBkbyBub3QgYXBwbHkgdGhpcyBodW5rIG9yIGFueSBvZiB0aGUgcmVtYWluaW5nIG9uZXNcbiIKKyJhIC0gYXBwbHkgdGhpcyBodW5rIGFuZCBhbGwgbGF0ZXIgaHVua3MgaW4gdGhlIGZpbGVcbiIKKyJkIC0gZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlIgorbXNnc3RyICIiCisieSAtIOWcqOe0ouW8leWSjOW3peS9nOWNgOS4reWll+eUqOatpOWNgOWhilxuIgorIm4gLSDkuI3opoHlnKjntKLlvJXlkozlt6XkvZzljYDkuK3lpZfnlKjmraTljYDloYpcbiIKKyJxIC0g6Zui6ZaL44CC5LiN6KaB5aWX55So5q2k5Y2A5aGK5Y+K5b6M6Z2i55qE5YWo6YOo5Y2A5aGKXG4iCisiYSAtIOWll+eUqOatpOWNgOWhiuWSjOacrOaqlOahiOS4reW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImQgLSDkuI3opoHlpZfnlKjmraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYoiCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTI5NgorbXNnaWQgIiIKKyJ5IC0gYXBwbHkgdGhpcyBodW5rIHRvIHdvcmt0cmVlXG4iCisibiAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgdG8gd29ya3RyZWVcbiIKKyJxIC0gcXVpdDsgZG8gbm90IGFwcGx5IHRoaXMgaHVuayBvciBhbnkgb2YgdGhlIHJlbWFpbmluZyBvbmVzXG4iCisiYSAtIGFwcGx5IHRoaXMgaHVuayBhbmQgYWxsIGxhdGVyIGh1bmtzIGluIHRoZSBmaWxlXG4iCisiZCAtIGRvIG5vdCBhcHBseSB0aGlzIGh1bmsgb3IgYW55IG9mIHRoZSBsYXRlciBodW5rcyBpbiB0aGUgZmlsZSIKK21zZ3N0ciAiIgorInkgLSDlnKjlt6XkvZzljYDkuK3lpZfnlKjmraTljYDloYpcbiIKKyJuIC0g5LiN6KaB5Zyo5bel5L2c5Y2A5Lit5aWX55So5q2k5Y2A5aGKXG4iCisicSAtIOmboumWi+OAguS4jeimgeWll+eUqOatpOWNgOWhiuWPiuW+jOmdoueahOWFqOmDqOWNgOWhilxuIgorImEgLSDlpZfnlKjmraTljYDloYrlkozmnKzmqpTmoYjkuK3lvozpnaLnmoTlhajpg6jljYDloYpcbiIKKyJkIC0g5LiN6KaB5aWX55So5q2k5Y2A5aGK5ZKM5pys5qqU5qGI5Lit5b6M6Z2i55qE5YWo6YOo5Y2A5aGKIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzMTEKK21zZ2lkICIiCisiZyAtIHNlbGVjdCBhIGh1bmsgdG8gZ28gdG9cbiIKKyIvIC0gc2VhcmNoIGZvciBhIGh1bmsgbWF0Y2hpbmcgdGhlIGdpdmVuIHJlZ2V4XG4iCisiaiAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBuZXh0IHVuZGVjaWRlZCBodW5rXG4iCisiSiAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBuZXh0IGh1bmtcbiIKKyJrIC0gbGVhdmUgdGhpcyBodW5rIHVuZGVjaWRlZCwgc2VlIHByZXZpb3VzIHVuZGVjaWRlZCBodW5rXG4iCisiSyAtIGxlYXZlIHRoaXMgaHVuayB1bmRlY2lkZWQsIHNlZSBwcmV2aW91cyBodW5rXG4iCisicyAtIHNwbGl0IHRoZSBjdXJyZW50IGh1bmsgaW50byBzbWFsbGVyIGh1bmtzXG4iCisiZSAtIG1hbnVhbGx5IGVkaXQgdGhlIGN1cnJlbnQgaHVua1xuIgorIj8gLSBwcmludCBoZWxwXG4iCittc2dzdHIgIiIKKyJnIC0g6YG45pOH6Lez6L2J5Yiw5LiA5YCL5Y2A5aGKXG4iCisiLyAtIOWwi+aJvuWSjOaPkOS+m+ato+imj+ihqOekuuW8j+espuWQiOeahOWNgOWhilxuIgorImogLSDntq3mjIHmraTljYDloYrmnKrmsbrni4DmhYvvvIzmqqLoppbkuIvkuIDlgIvmnKrmsbrlrprljYDloYpcbiIKKyJKIC0g57at5oyB5q2k5Y2A5aGK5pyq5rG654uA5oWL77yM5qqi6KaW5LiL5LiA5YCL5Y2A5aGKXG4iCisiayAtIOe2reaMgeatpOWNgOWhiuacquaxuueLgOaFi++8jOaqouimluS4iuS4gOWAi+acquaxuuWumuWNgOWhilxuIgorIksgLSDntq3mjIHmraTljYDloYrmnKrmsbrni4DmhYvvvIzmqqLoppbkuIrkuIDlgIvljYDloYpcbiIKKyJzIC0g5YiG5Ymy55uu5YmN5Y2A5aGK54K65pu05bCP55qE5Y2A5aGKXG4iCisiZSAtIOaJi+WLlee3qOi8r+ebruWJjeWNgOWhilxuIgorIj8gLSDpoa/npLroqqrmmI5cbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxMzQyCittc2dpZCAiVGhlIHNlbGVjdGVkIGh1bmtzIGRvIG5vdCBhcHBseSB0byB0aGUgaW5kZXghXG4iCittc2dzdHIgIumBuOS4reeahOWNgOWhiuS4jeiDveWll+eUqOWIsOe0ouW8le+8gVxuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjEzNTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgdW5tZXJnZWQ6ICVzXG4iCittc2dzdHIgIuW/veeVpeacquWll+eUqOeahO+8miVzXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTQ2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJBcHBseSBtb2RlIGNoYW5nZSB0byB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5bCH5qih5byP6K6K5pu05aWX55So5Yiw5bel5L2c5Y2AIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE0NjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQXBwbHkgZGVsZXRpb24gdG8gd29ya3RyZWUgW3ksbixxLGEsZCVzLD9dPyAiCittc2dzdHIgIuWwh+WIqumZpOWLleS9nOWll+eUqOWIsOW3peS9nOWNgCBbeSxuLHEsYSxkJXMsP10/ICIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNDcwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkFwcGx5IHRoaXMgaHVuayB0byB3b3JrdHJlZSBbeSxuLHEsYSxkJXMsP10/ICIKK21zZ3N0ciAi5bCH5q2k5Y2A5aGK5aWX55So5Yiw5bel5L2c5Y2AIFt5LG4scSxhLGQlcyw/XT8gIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1NzAKK21zZ2lkICJObyBvdGhlciBodW5rcyB0byBnb3RvXG4iCittc2dzdHIgIuaykuacieWFtuWug+WPr+S+m+i3s+i9ieeahOWNgOWhilxuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1ODgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiSW52YWxpZCBudW1iZXI6ICclcydcbiIKK21zZ3N0ciAi54Sh5pWI5pW45a2X77yaJyVzJ1xuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE1OTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiU29ycnksIG9ubHkgJWQgaHVuayBhdmFpbGFibGUuXG4iCittc2dpZF9wbHVyYWwgIlNvcnJ5LCBvbmx5ICVkIGh1bmtzIGF2YWlsYWJsZS5cbiIKK21zZ3N0clswXSAi5bCN5LiN6LW377yM5Y+q5pyJICVkIOWAi+WPr+eUqOWNgOWhiuOAglxuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2MTkKK21zZ2lkICJObyBvdGhlciBodW5rcyB0byBzZWFyY2hcbiIKK21zZ3N0ciAi5rKS5pyJ5YW25a6D5Y+v5L6b5bCL5om+55qE5Y2A5aGKXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTYzNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJNYWxmb3JtZWQgc2VhcmNoIHJlZ2V4cCAlczogJXNcbiIKK21zZ3N0ciAi6Yyv6Kqk55qE5q2j6KaP6KGo56S65byPICVz77yaJXNcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjQ2Cittc2dpZCAiTm8gaHVuayBtYXRjaGVzIHRoZSBnaXZlbiBwYXR0ZXJuXG4iCittc2dzdHIgIuaykuacieWSjOaPkOS+m+aooeW8j+ebuOespuWQiOeahOWNgOWhilxuIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE2NTggZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjgwCittc2dpZCAiTm8gcHJldmlvdXMgaHVua1xuIgorbXNnc3RyICLmspLmnInliY3kuIDlgIvljYDloYpcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjY3IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY4NgorbXNnaWQgIk5vIG5leHQgaHVua1xuIgorbXNnc3RyICLmspLmnInkuIvkuIDlgIvljYDloYpcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNjkyCittc2dpZCAiU29ycnksIGNhbm5vdCBzcGxpdCB0aGlzIGh1bmtcbiIKK21zZ3N0ciAi5bCN5LiN6LW377yM5LiN6IO95YiG5Ymy6YCZ5YCL5Y2A5aGKXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTY5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJTcGxpdCBpbnRvICVkIGh1bmsuXG4iCittc2dpZF9wbHVyYWwgIlNwbGl0IGludG8gJWQgaHVua3MuXG4iCittc2dzdHJbMF0gIuWIhuWJsueCuiAlZCDloYrjgIJcbiIKKworIzogZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxNzA4Cittc2dpZCAiU29ycnksIGNhbm5vdCBlZGl0IHRoaXMgaHVua1xuIgorbXNnc3RyICLlsI3kuI3otbfvvIzkuI3og73nt6jovK/pgJnlgIvljYDloYpcbiIKKworIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBkbyBub3QgdHJhbnNsYXRlIHRoZSBjb21tYW5kIG5hbWVzCisjLiAnc3RhdHVzJywgJ3VwZGF0ZScsICdyZXZlcnQnLCBldGMuCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3NzMKK21zZ2lkICIiCisic3RhdHVzICAgICAgICAtIHNob3cgcGF0aHMgd2l0aCBjaGFuZ2VzXG4iCisidXBkYXRlICAgICAgICAtIGFkZCB3b3JraW5nIHRyZWUgc3RhdGUgdG8gdGhlIHN0YWdlZCBzZXQgb2YgY2hhbmdlc1xuIgorInJldmVydCAgICAgICAgLSByZXZlcnQgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzIGJhY2sgdG8gdGhlIEhFQUQgdmVyc2lvblxuIgorInBhdGNoICAgICAgICAgLSBwaWNrIGh1bmtzIGFuZCB1cGRhdGUgc2VsZWN0aXZlbHlcbiIKKyJkaWZmICAgICAgICAgIC0gdmlldyBkaWZmIGJldHdlZW4gSEVBRCBhbmQgaW5kZXhcbiIKKyJhZGQgdW50cmFja2VkIC0gYWRkIGNvbnRlbnRzIG9mIHVudHJhY2tlZCBmaWxlcyB0byB0aGUgc3RhZ2VkIHNldCBvZiAiCisiY2hhbmdlc1xuIgorbXNnc3RyICIiCisic3RhdHVzICAgICAgICAtIOmhr+ekuuWQq+iuiuabtOeahOi3r+W+kVxuIgorInVwZGF0ZSAgICAgICAgLSDmlrDlop7lt6XkvZzljYDni4DmhYvoh7PmmqvlrZjliJfooahcbiIKKyJyZXZlcnQgICAgICAgIC0g6YKE5Y6f5L+u5pS555qE5pqr5a2Y6ZuG6IezIEhFQUQg54mI5pysXG4iCisicGF0Y2ggICAgICAgICAtIOaMkemBuOWNgOWhiuS4puS4lOaciemBuOaTh+WcsOabtOaWsFxuIgorImRpZmYgICAgICAgICAgLSDpoa/npLogSEVBRCDlkozntKLlvJXplpPlt67nlbBcbiIKKyJhZGQgdW50cmFja2VkIC0g5paw5aKe5pyq6L+96Lmk5qqU5qGI55qE5YWn5a656Iez5pqr5a2Y5YiX6KGoXG4iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5MCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE3OTUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTc5OCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MDUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgwOCBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MTUKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgxOSBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MjUKK21zZ2lkICJtaXNzaW5nIC0tIgorbXNnc3RyICLnvLrlsJEgLS0iCisKKyM6IGdpdC1hZGQtLWludGVyYWN0aXZlLnBlcmw6MTgyMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIC0tcGF0Y2ggbW9kZTogJXMiCittc2dzdHIgIuacquefpeeahCAtLXBhdGNoIOaooeW8j++8miVzIgorCisjOiBnaXQtYWRkLS1pbnRlcmFjdGl2ZS5wZXJsOjE4MjcgZ2l0LWFkZC0taW50ZXJhY3RpdmUucGVybDoxODMzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgYXJndW1lbnQgJXMsIGV4cGVjdGluZyAtLSIKK21zZ3N0ciAi54Sh5pWI55qE5Y+D5pW4ICVz77yM5pyf5pyb5pivIC0tIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEzOAorbXNnaWQgImxvY2FsIHpvbmUgZGlmZmVycyBmcm9tIEdNVCBieSBhIG5vbi1taW51dGUgaW50ZXJ2YWxcbiIKK21zZ3N0ciAi5pys5qmf5pmC6ZaT5ZKMIEdNVCDmnInkuI3liLDkuIDliIbpkJjplpPpmpRcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDUgZ2l0LXNlbmQtZW1haWwucGVybDoxNTEKK21zZ2lkICJsb2NhbCB0aW1lIG9mZnNldCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMjQgaG91cnNcbiIKK21zZ3N0ciAi5pys5qmf5pmC6ZaT5L2N56e76YeP5aSn5pa8562J5pa8IDI0IOWwj+aZglxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjIyMyBnaXQtc2VuZC1lbWFpbC5wZXJsOjIyOQorbXNnaWQgInRoZSBlZGl0b3IgZXhpdGVkIHVuY2xlYW5seSwgYWJvcnRpbmcgZXZlcnl0aGluZyIKK21zZ3N0ciAi57eo6Lyv5Zmo6Z2e5q2j5bi46Zui6ZaL77yM57WC5q2i5omA5pyJ5YuV5L2cIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMxMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiJyVzJyBjb250YWlucyBhbiBpbnRlcm1lZGlhdGUgdmVyc2lvbiBvZiB0aGUgZW1haWwgeW91IHdlcmUgY29tcG9zaW5nLlxuIgorbXNnc3RyICInJXMnIOWMheWQq+aCqOato+WcqOe3qOWvq+eahOS4gOWAi+S4remWk+eJiOacrOeahOS/oeS7tuOAglxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjMxNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICInJXMuZmluYWwnIGNvbnRhaW5zIHRoZSBjb21wb3NlZCBlbWFpbC5cbiIKK21zZ3N0ciAiJyVzLmZpbmFsJyDljIXlkKvnt6jovK/nmoTkv6Hku7bjgIJcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo0MDgKK21zZ2lkICItLWR1bXAtYWxpYXNlcyBpbmNvbXBhdGlibGUgd2l0aCBvdGhlciBvcHRpb25zXG4iCittc2dzdHIgIi0tZHVtcC1hbGlhc2VzIOWSjOWFtuWug+mBuOmgheS4jeebuOWuuVxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjQ4MSBnaXQtc2VuZC1lbWFpbC5wZXJsOjY4MworbXNnaWQgIkNhbm5vdCBydW4gZ2l0IGZvcm1hdC1wYXRjaCBmcm9tIG91dHNpZGUgYSByZXBvc2l0b3J5XG4iCittc2dzdHIgIuS4jeiDveWcqOeJiOacrOW6q+S5i+WkluWft+ihjCBnaXQgZm9ybWF0LXBhdGNoXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDg0Cittc2dpZCAiIgorImBiYXRjaC1zaXplYCBhbmQgYHJlbG9naW5gIG11c3QgYmUgc3BlY2lmaWVkIHRvZ2V0aGVyICh2aWEgY29tbWFuZC1saW5lIG9yICIKKyJjb25maWd1cmF0aW9uIG9wdGlvbilcbiIKK21zZ3N0ciAiYGJhdGNoLXNpemVgIOWSjCBgcmVsb2dpbmAg5b+F6aCI5ZCM5pmC5a6a576p77yI6YCP6YGO5oyH5Luk5YiX5oiW6ICF6Kit5a6a6YG46aCF77yJXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NDk3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVua25vd24gLS1zdXBwcmVzcy1jYyBmaWVsZDogJyVzJ1xuIgorbXNnc3RyICLmnKrnn6XnmoQgLS1zdXBwcmVzcy1jYyDmrITkvY3vvJonJXMnXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTI4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVua25vd24gLS1jb25maXJtIHNldHRpbmc6ICclcydcbiIKK21zZ3N0ciAi5pyq55+l55qEIC0tY29uZmlybSDoqK3lrprvvJonJXMnXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NTU2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIndhcm5pbmc6IHNlbmRtYWlsIGFsaWFzIHdpdGggcXVvdGVzIGlzIG5vdCBzdXBwb3J0ZWQ6ICVzXG4iCittc2dzdHIgIuitpuWRiu+8muS4jeaUr+aPtOW4tuW8leiZn+eahCBzZW5kbWFpbCDliKXlkI3vvJolc1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ3YXJuaW5nOiBgOmluY2x1ZGU6YCBub3Qgc3VwcG9ydGVkOiAlc1xuIgorbXNnc3RyICLorablkYrvvJrkuI3mlK/mj7QgYDppbmNsdWRlOmDvvJolc1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjU2MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ3YXJuaW5nOiBgL2ZpbGVgIG9yIGB8cGlwZWAgcmVkaXJlY3Rpb24gbm90IHN1cHBvcnRlZDogJXNcbiIKK21zZ3N0ciAi6K2m5ZGK77ya5LiN5pSv5o+0IGAvZmlsZWAg5oiWIGB8cGlwZWAg6YeN5a6a5ZCR77yaJXNcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo1NjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAid2FybmluZzogc2VuZG1haWwgbGluZSBpcyBub3QgcmVjb2duaXplZDogJXNcbiIKK21zZ3N0ciAi6K2m5ZGK77ya5LiN6IO96K2Y5Yil55qEIHNlbmRtYWlsIOihjO+8miVzXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJGaWxlICclcycgZXhpc3RzIGJ1dCBpdCBjb3VsZCBhbHNvIGJlIHRoZSByYW5nZSBvZiBjb21taXRzXG4iCisidG8gcHJvZHVjZSBwYXRjaGVzIGZvci4gIFBsZWFzZSBkaXNhbWJpZ3VhdGUgYnkuLi5cbiIKKyJcbiIKKyIgICAgKiBTYXlpbmcgXCIuLyVzXCIgaWYgeW91IG1lYW4gYSBmaWxlOyBvclxuIgorIiAgICAqIEdpdmluZyAtLWZvcm1hdC1wYXRjaCBvcHRpb24gaWYgeW91IG1lYW4gYSByYW5nZS5cbiIKK21zZ3N0ciAiIgorIuWtmOWcqOaqlOahiCAnJXMnIOS9huaYr+Wug+S5n+WPr+iDveaYr+S4gOWAi+eUqOaWvOeUoueUn+S/ruijnOaqlOWIl+ihqOeahOaPkOS6pOevhOWcjeOAguiri+eUqOWmguS4i+aWueazlea2iCIKKyLpmaTmrafnvqnvvJpcbiIKKyJcbiIKKyIgICAgKiDlpoLmnpzlkKvnvqnngrrkuIDlgIvmqpTmoYjvvIzkvb/nlKggXCIuLyVzXCLvvIzmiJbogIVcbiIKKyIgICAgKiDlpoLmnpzlkKvnvqnngrrkuIDlgIvnr4TlnI3vvIzkvb/nlKggLS1mb3JtYXQtcGF0Y2gg6YG46aCF44CCXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NjcwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBvcGVuZGlyICVzOiAlcyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf55uu6YyEICVzOiAlcyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo2OTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImZhdGFsOiAlczogJXNcbiIKKyJ3YXJuaW5nOiBubyBwYXRjaGVzIHdlcmUgc2VudFxuIgorbXNnc3RyICIiCisi6Ie05ZG96Yyv6Kqk77yaJXPvvJolc1xuIgorIuitpuWRiu+8muS/ruijnOaqlOacquiDveWCs+mAgVxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjcwNQorbXNnaWQgIiIKKyJcbiIKKyJObyBwYXRjaCBmaWxlcyBzcGVjaWZpZWQhXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyLmnKrmjIflrprkv67oo5zmqpTmoYjvvIFcbiIKKyJcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiTm8gc3ViamVjdCBsaW5lIGluICVzPyIKK21zZ3N0ciAi5ZyoICVzIOS4reaykuacieaomemhjOihjO+8nyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIG9wZW4gZm9yIHdyaXRpbmcgJXM6ICVzIgorbXNnc3RyICLngrrlr6vlhaXplovllZ8gJXMg5aSx5pWXOiAlcyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo3MzkKK21zZ2lkICIiCisiTGluZXMgYmVnaW5uaW5nIGluIFwiR0lUOlwiIHdpbGwgYmUgcmVtb3ZlZC5cbiIKKyJDb25zaWRlciBpbmNsdWRpbmcgYW4gb3ZlcmFsbCBkaWZmc3RhdCBvciB0YWJsZSBvZiBjb250ZW50c1xuIgorImZvciB0aGUgcGF0Y2ggeW91IGFyZSB3cml0aW5nLlxuIgorIlxuIgorIkNsZWFyIHRoZSBib2R5IGNvbnRlbnQgaWYgeW91IGRvbid0IHdpc2ggdG8gc2VuZCBhIHN1bW1hcnkuXG4iCittc2dzdHIgIiIKKyLku6UgXCJHSVQ6XCIg6ZaL6aCt55qE6KGM5bCH6KKr5Yiq6Zmk44CCXG4iCisi6ICD5oWu5YyF5ZCr5LiA5YCL5pW06auU55qE5beu55Ww57Wx6KiI5oiW6ICF5oKo5q2j5Zyo5a+r55qE5L+u6KOc5qqU55qE55uu6YyE44CCXG4iCisiXG4iCisi5aaC5p6c5oKo5LiN5oOz5YKz6YCB5pGY6KaB77yM5riF6Zmk5YWn5a6544CCXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6NzYzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBvcGVuICVzOiAlcyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWfICVzOiAlcyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo3ODAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIG9wZW4gJXMuZmluYWw6ICVzIgorbXNnc3RyICLnhKHms5XplovllZ8gJXMuZmluYWw6ICVzIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjgyMworbXNnaWQgIlN1bW1hcnkgZW1haWwgaXMgZW1wdHksIHNraXBwaW5nIGl0XG4iCittc2dzdHIgIuaRmOimgeS/oeS7tueCuuepuu+8jOi3s+mBjlxuIgorCisjLiBUUkFOU0xBVE9SUzogcGxlYXNlIGtlZXAgW3kvTl0gYXMgaXMuCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjg1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gdXNlIDwlcz4gW3kvTl0/ICIKK21zZ3N0ciAi5oKo56K66KqN6KaB5L2/55SoIDwlcz4gW3kvTl3vvJ8iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTEzCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgZmlsZXMgYXJlIDhiaXQsIGJ1dCBkbyBub3QgZGVjbGFyZSBhIENvbnRlbnQtVHJhbnNmZXItIgorIkVuY29kaW5nLlxuIgorbXNnc3RyICLlpoLkuIvmqpTmoYjlkKsgOGJpdCDlhaflrrnvvIzkvYbmspLmnInogbLmmI7kuIDlgIsgQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZ+OAglxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkxOAorbXNnaWQgIldoaWNoIDhiaXQgZW5jb2Rpbmcgc2hvdWxkIEkgZGVjbGFyZSBbVVRGLThdPyAiCittc2dzdHIgIuimgeiBsuaYjiA4Yml0IOeCuuS7gOm6vOaoo+eahOe3qOeivOagvOW8jyBbVVRGLThd77yfIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjkyNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiUmVmdXNpbmcgdG8gc2VuZCBiZWNhdXNlIHRoZSBwYXRjaFxuIgorIlx0JXNcbiIKKyJoYXMgdGhlIHRlbXBsYXRlIHN1YmplY3QgJyoqKiBTVUJKRUNUIEhFUkUgKioqJy4gUGFzcyAtLWZvcmNlIGlmIHlvdSByZWFsbHkgIgorIndhbnQgdG8gc2VuZC5cbiIKK21zZ3N0ciAiIgorIuaLkue1leWCs+mAge+8jOWboOeCuuS/ruijnOaqlFxuIgorIlx0JXNcbiIKKyLljIXlkKvnr4TmnKzmqJnpoYwgJyoqKiBTVUJKRUNUIEhFUkUgKioqJ+OAguWmguaenOeiuuWvpuaDs+imgeWCs+mAge+8jOS9v+eUqOWPg+aVuCAtLWZvcmNl44CCXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6OTQ1Cittc2dpZCAiVG8gd2hvbSBzaG91bGQgdGhlIGVtYWlscyBiZSBzZW50IChpZiBhbnlvbmUpPyIKK21zZ3N0ciAi5L+h5Lu25bCH6KaB5YKz6YCB57Wm6Kqw77yfIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjk2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYXRhbDogYWxpYXMgJyVzJyBleHBhbmRzIHRvIGl0c2VsZlxuIgorbXNnc3RyICLoh7Tlkb3pjK/oqqTvvJrliKXlkI0gJyVzJyDmk7TlsZXngrrlroPoh6rlt7FcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDo5NzUKK21zZ2lkICJNZXNzYWdlLUlEIHRvIGJlIHVzZWQgYXMgSW4tUmVwbHktVG8gZm9yIHRoZSBmaXJzdCBlbWFpbCAoaWYgYW55KT8gIgorbXNnc3RyICJNZXNzYWdlLUlEIOiiq+eUqOS9nOesrOS4gOWwgeS/oeS7tueahCBJbi1SZXBseS1UbyDvvJ8iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTAzMyBnaXQtc2VuZC1lbWFpbC5wZXJsOjEwNDEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXJyb3I6IHVuYWJsZSB0byBleHRyYWN0IGEgdmFsaWQgYWRkcmVzcyBmcm9tOiAlc1xuIgorbXNnc3RyICLpjK/oqqTvvJrkuI3og73lvp4gJXMg5Lit5pO35Y+W5LiA5YCL5pyJ5pWI55qE5L+h5Lu25L2N5Z2AXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBNYWtlIHN1cmUgdG8gaW5jbHVkZSBbcV0gW2RdIFtlXSBpbiB5b3VyCisjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxMDQ1Cittc2dpZCAiV2hhdCB0byBkbyB3aXRoIHRoaXMgYWRkcmVzcz8gKFtxXXVpdHxbZF1yb3B8W2VdZGl0KTogIgorbXNnc3RyICLlpoLkvZXomZXnkIbpgJnlgIvkvY3lnYDvvJ8oW3FddWl0fFtkXXJvcHxbZV1kaXQp77yaIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjEzNjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ0EgcGF0aCBcIiVzXCIgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIkNBIOi3r+W+kSBcIiVzXCIg5LiN5a2Y5ZyoIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NDUKK21zZ2lkICIiCisiICAgIFRoZSBDYyBsaXN0IGFib3ZlIGhhcyBiZWVuIGV4cGFuZGVkIGJ5IGFkZGl0aW9uYWxcbiIKKyIgICAgYWRkcmVzc2VzIGZvdW5kIGluIHRoZSBwYXRjaCBjb21taXQgbWVzc2FnZS4gQnkgZGVmYXVsdFxuIgorIiAgICBzZW5kLWVtYWlsIHByb21wdHMgYmVmb3JlIHNlbmRpbmcgd2hlbmV2ZXIgdGhpcyBvY2N1cnMuXG4iCisiICAgIFRoaXMgYmVoYXZpb3IgaXMgY29udHJvbGxlZCBieSB0aGUgc2VuZGVtYWlsLmNvbmZpcm1cbiIKKyIgICAgY29uZmlndXJhdGlvbiBzZXR0aW5nLlxuIgorIlxuIgorIiAgICBGb3IgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiwgcnVuICdnaXQgc2VuZC1lbWFpbCAtLWhlbHAnLlxuIgorIiAgICBUbyByZXRhaW4gdGhlIGN1cnJlbnQgYmVoYXZpb3IsIGJ1dCBzcXVlbGNoIHRoaXMgbWVzc2FnZSxcbiIKKyIgICAgcnVuICdnaXQgY29uZmlnIC0tZ2xvYmFsIHNlbmRlbWFpbC5jb25maXJtIGF1dG8nLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAgIOS7peS4iueahOaKhOmAgeWIl+ihqO+8iENj77yJ5bey57aT55So5L+u6KOc5qqU5o+Q5Lqk6KiK5oGv5Lit55m854++55qE5L2N5Z2A6YCy6KGMXG4iCisiICAgIOS6huaTtOWxleOAgumgkOiorSBzZW5kLWVtYWlsIOacg+e1puWHuuaPkOekuuOAgumAmeWAi+ihjOeCuuWPr+S7pemAj+mBjlxuIgorIiAgICBzZW5kZW1haWwuY29uZmlybSDoqK3lrproqK3lrprjgIJcbiIKKyJcbiIKKyIgICAg5pu05aSa6KiK5oGv77yM5Z+36KGMICdnaXQgc2VuZC1lbWFpbCAtLWhlbHAn44CCXG4iCisiICAgIOimgeS/neaMgeebruWJjeihjOeCuu+8jOS9huS4jemhr+ekuuatpOioiuaBr++8jOWft+ihjCAnZ2l0IGNvbmZpZyAtLWdsb2JhbFxuIgorIiAgICBzZW5kZW1haWwuY29uZmlybSBhdXRvJ+OAglxuIgorIlxuIgorCisjLiBUUkFOU0xBVE9SUzogTWFrZSBzdXJlIHRvIGluY2x1ZGUgW3ldIFtuXSBbZV0gW3FdIFthXSBpbiB5b3VyCisjLiB0cmFuc2xhdGlvbi4gVGhlIHByb2dyYW0gd2lsbCBvbmx5IGFjY2VwdCBFbmdsaXNoIGlucHV0CisjLiBhdCB0aGlzIHBvaW50LgorIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDYwCittc2dpZCAiU2VuZCB0aGlzIGVtYWlsPyAoW3ldZXN8W25db3xbZV1kaXR8W3FddWl0fFthXWxsKTogIgorbXNnc3RyICLlgrPpgIHpgJnlsIHkv6Hku7bvvJ8oW3ldZXN8W25db3xbZV1kaXR8W3FddWl0fFthXWxsKTogIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE0NjMKK21zZ2lkICJTZW5kIHRoaXMgZW1haWwgcmVwbHkgcmVxdWlyZWQiCittc2dzdHIgIuWCs+mAgeimgeaxgueahOS/oeS7tuWbnuW+qSIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNDkxCittc2dpZCAiVGhlIHJlcXVpcmVkIFNNVFAgc2VydmVyIGlzIG5vdCBwcm9wZXJseSBkZWZpbmVkLiIKK21zZ3N0ciAi6KaB5rGC55qEIFNNVFAg5Ly65pyN5Zmo5pyq6KKr5q2j56K65a6a576p44CCIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1MzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiU2VydmVyIGRvZXMgbm90IHN1cHBvcnQgU1RBUlRUTFMhICVzIgorbXNnc3RyICLkvLrmnI3lmajkuI3mlK/mj7QgU1RBUlRUTFPvvIElcyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTQzIGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU0NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJTVEFSVFRMUyBmYWlsZWQhICVzIgorbXNnc3RyICJTVEFSVFRMUyDlpLHmlZfvvIElcyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTU2Cittc2dpZCAiVW5hYmxlIHRvIGluaXRpYWxpemUgU01UUCBwcm9wZXJseS4gQ2hlY2sgY29uZmlnIGFuZCB1c2UgLS1zbXRwLWRlYnVnLiIKK21zZ3N0ciAi54Sh5rOV5q2j56K65Zyw5Yid5aeL5YyWIFNNVFDjgILmqqLmn6XoqK3lrprkuKbkvb/nlKggLS1zbXRwLWRlYnVn44CCIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHNlbmQgJXNcbiIKK21zZ3N0ciAi54Sh5rOV5YKz6YCBICVzXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJEcnktU2VudCAlc1xuIgorbXNnc3RyICLmuKzoqabln7fooYzlgrPpgIEgJXNcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNTc3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNlbnQgJXNcbiIKK21zZ3N0ciAi5q2j5YKz6YCBICVzXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU3OQorbXNnaWQgIkRyeS1PSy4gTG9nIHNheXM6XG4iCittc2dzdHIgIua4rOippuWft+ihjOaIkOWKn+OAguaXpeiqjOiqqu+8mlxuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE1NzkKK21zZ2lkICJPSy4gTG9nIHNheXM6XG4iCittc2dzdHIgIk9L44CC5pel6KqM6Kqq77yaXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU5MQorbXNnaWQgIlJlc3VsdDogIgorbXNnc3RyICLntZDmnpzvvJoiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTU5NAorbXNnaWQgIlJlc3VsdDogT0tcbiIKK21zZ3N0ciAi57WQ5p6c77yaT0tcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxNjEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbid0IG9wZW4gZmlsZSAlcyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf5qqU5qGIICVzIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NTkgZ2l0LXNlbmQtZW1haWwucGVybDoxNjc5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIihtYm94KSBBZGRpbmcgY2M6ICVzIGZyb20gbGluZSAnJXMnXG4iCittc2dzdHIgIihtYm94KSDmlrDlop4gY2PvvJolcyDoh6rooYwgJyVzJ1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE2NjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiKG1ib3gpIEFkZGluZyB0bzogJXMgZnJvbSBsaW5lICclcydcbiIKK21zZ3N0ciAiKG1ib3gpIOaWsOWiniB0b++8miVzIOiHquihjCAnJXMnXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTcxOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIobm9uLW1ib3gpIEFkZGluZyBjYzogJXMgZnJvbSBsaW5lICclcydcbiIKK21zZ3N0ciAiKG5vbi1tYm94KSDmlrDlop4gY2PvvJolcyDoh6rooYwgJyVzJ1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE3NTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiKGJvZHkpIEFkZGluZyBjYzogJXMgZnJvbSBsaW5lICclcydcbiIKK21zZ3N0ciAiKGJvZHkpIOaWsOWiniBjYzogJXMg6Ieq6KGMICclcydcbiIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODY0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiglcykgQ291bGQgbm90IGV4ZWN1dGUgJyVzJyIKK21zZ3N0ciAiKCVzKSDkuI3og73ln7fooYwgJyVzJyIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxODcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiglcykgQWRkaW5nICVzOiAlcyBmcm9tOiAnJXMnXG4iCittc2dzdHIgIiglcykg5paw5aKeICVzOiAlcyDoh6rvvJonJXMnXG4iCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTg3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIoJXMpIGZhaWxlZCB0byBjbG9zZSBwaXBlIHRvICclcyciCittc2dzdHIgIiglcykg54Sh5rOV6Zec6ZaJ566h6YGT6IezICclcyciCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTkwNQorbXNnaWQgImNhbm5vdCBzZW5kIG1lc3NhZ2UgYXMgN2JpdCIKK21zZ3N0ciAi5LiN6IO95LulIDdiaXQg5b2i5byP5YKz6YCB6KiK5oGvIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5MTMKK21zZ2lkICJpbnZhbGlkIHRyYW5zZmVyIGVuY29kaW5nIgorbXNnc3RyICLnhKHmlYjnmoTlgrPpgIHnt6jnorwiCisKKyM6IGdpdC1zZW5kLWVtYWlsLnBlcmw6MTk1NCBnaXQtc2VuZC1lbWFpbC5wZXJsOjIwMDYgZ2l0LXNlbmQtZW1haWwucGVybDoyMDE2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlc1xuIgorbXNnc3RyICLkuI3og73plovllZ8gJXPvvJolc1xuIgorCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IHBhdGNoIGNvbnRhaW5zIGEgbGluZSBsb25nZXIgdGhhbiA5OTggY2hhcmFjdGVycyIKK21zZ3N0ciAiJXPvvJrkv67oo5zmqpTljIXlkKvkuIDlgIvotoXpgY4gOTk4IOWtl+WFg+eahOihjCIKKworIzogZ2l0LXNlbmQtZW1haWwucGVybDoxOTc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNraXBwaW5nICVzIHdpdGggYmFja3VwIHN1ZmZpeCAnJXMnLlxuIgorbXNnc3RyICLnlaXpgY4gJXMg5ZCr5YKZ5Lu95b6M57a0ICclcyfjgIJcbiIKKworIy4gVFJBTlNMQVRPUlM6IHBsZWFzZSBrZWVwICJbeXxOXSIgYXMgaXMuCisjOiBnaXQtc2VuZC1lbWFpbC5wZXJsOjE5NzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRG8geW91IHJlYWxseSB3YW50IHRvIHNlbmQgJXM/IFt5fE5dOiAiCittc2dzdHIgIuaCqOecn+eahOimgeWCs+mAgSAlc++8n1t5fE5d77yaIgpkaWZmIC0tZ2l0IGEvcHBjL3NoYTEuYyBiL3BwYy9zaGExLmMKaW5kZXggZWM2YTE5Mi4uMWI3MDVjZSAxMDA2NDQKLS0tIGEvcHBjL3NoYTEuYworKysgYi9wcGMvc2hhMS5jCkBAIC0xMCw4ICsxMCw4IEBACiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSAic2hhMS5oIgogCi1leHRlcm4gdm9pZCBwcGNfc2hhMV9jb3JlKHVpbnQzMl90ICpoYXNoLCBjb25zdCB1bnNpZ25lZCBjaGFyICpwLAotCQkJICB1bnNpZ25lZCBpbnQgbmJsb2Nrcyk7Cit2b2lkIHBwY19zaGExX2NvcmUodWludDMyX3QgKmhhc2gsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnAsCisJCSAgIHVuc2lnbmVkIGludCBuYmxvY2tzKTsKIAogaW50IHBwY19TSEExX0luaXQocHBjX1NIQV9DVFggKmMpCiB7CmRpZmYgLS1naXQgYS9wcmVsb2FkLWluZGV4LmMgYi9wcmVsb2FkLWluZGV4LmMKaW5kZXggYzdkYzNmMi4uZWQ2ZWFhNCAxMDA2NDQKLS0tIGEvcHJlbG9hZC1pbmRleC5jCisrKyBiL3ByZWxvYWQtaW5kZXguYwpAQCAtOCw2ICs4LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJwcm9ncmVzcy5oIgogI2luY2x1ZGUgInRocmVhZC11dGlscy5oIgorI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKIAogLyoKICAqIE1vc3RseSByYW5kb21seSBjaG9zZW4gbWF4aW11bSB0aHJlYWQgY291bnRzOiB3ZQpAQCAtNzcsNyArNzgsNyBAQAogCQlpZiAoaWVfbWF0Y2hfc3RhdChpbmRleCwgY2UsICZzdCwgQ0VfTUFUQ0hfUkFDWV9JU19ESVJUWXxDRV9NQVRDSF9JR05PUkVfRlNNT05JVE9SKSkKIAkJCWNvbnRpbnVlOwogCQljZV9tYXJrX3VwdG9kYXRlKGNlKTsKLQkJbWFya19mc21vbml0b3JfdmFsaWQoY2UpOworCQltYXJrX2ZzbW9uaXRvcl92YWxpZChpbmRleCwgY2UpOwogCX0gd2hpbGUgKC0tbnIgPiAwKTsKIAlpZiAocC0+cHJvZ3Jlc3MpIHsKIAkJc3RydWN0IHByb2dyZXNzX2RhdGEgKnBkID0gcC0+cHJvZ3Jlc3M7CkBAIC0xNDYsMTIgKzE0NywxMiBAQAogCXRyYWNlX3BlcmZvcm1hbmNlX2xlYXZlKCJwcmVsb2FkIGluZGV4Iik7CiB9CiAKLWludCByZWFkX2luZGV4X3ByZWxvYWQoc3RydWN0IGluZGV4X3N0YXRlICppbmRleCwKLQkJICAgICAgIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCi0JCSAgICAgICB1bnNpZ25lZCBpbnQgcmVmcmVzaF9mbGFncykKK2ludCByZXBvX3JlYWRfaW5kZXhfcHJlbG9hZChzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCSAgICBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjLAorCQkJICAgIHVuc2lnbmVkIGludCByZWZyZXNoX2ZsYWdzKQogewotCWludCByZXR2YWwgPSByZWFkX2luZGV4KGluZGV4KTsKKwlpbnQgcmV0dmFsID0gcmVwb19yZWFkX2luZGV4KHJlcG8pOwogCi0JcHJlbG9hZF9pbmRleChpbmRleCwgcGF0aHNwZWMsIHJlZnJlc2hfZmxhZ3MpOworCXByZWxvYWRfaW5kZXgocmVwby0+aW5kZXgsIHBhdGhzcGVjLCByZWZyZXNoX2ZsYWdzKTsKIAlyZXR1cm4gcmV0dmFsOwogfQpkaWZmIC0tZ2l0IGEvcHJldHR5LmMgYi9wcmV0dHkuYwppbmRleCBiODNhM2VjLi4yOGFmYzcwIDEwMDY0NAotLS0gYS9wcmV0dHkuYworKysgYi9wcmV0dHkuYwpAQCAtMjAsNiArMjAsNyBAQAogCWludCBpc190Zm9ybWF0OwogCWludCBleHBhbmRfdGFic19pbl9sb2c7CiAJaW50IGlzX2FsaWFzOworCWVudW0gZGF0ZV9tb2RlX3R5cGUgZGVmYXVsdF9kYXRlX21vZGVfdHlwZTsKIAljb25zdCBjaGFyICp1c2VyX2Zvcm1hdDsKIH0gKmNvbW1pdF9mb3JtYXRzOwogc3RhdGljIHNpemVfdCBidWlsdGluX2Zvcm1hdHNfbGVuOwpAQCAtOTcsMTMgKzk4LDE5IEBACiAJCXsgIm1ib3hyZCIsCUNNSVRfRk1UX01CT1hSRCwJMCwJMCB9LAogCQl7ICJmdWxsZXIiLAlDTUlUX0ZNVF9GVUxMRVIsCTAsCTggfSwKIAkJeyAiZnVsbCIsCUNNSVRfRk1UX0ZVTEwsCQkwLAk4IH0sCi0JCXsgIm9uZWxpbmUiLAlDTUlUX0ZNVF9PTkVMSU5FLAkxLAkwIH0KKwkJeyAib25lbGluZSIsCUNNSVRfRk1UX09ORUxJTkUsCTEsCTAgfSwKKwkJeyAicmVmZXJlbmNlIiwJQ01JVF9GTVRfVVNFUkZPUk1BVCwJMSwJMCwKKwkJCTAsIERBVEVfU0hPUlQsICIlQyhhdXRvKSVoICglcywgJWFkKSIgfSwKKwkJLyoKKwkJICogUGxlYXNlIHVwZGF0ZSAkX19naXRfbG9nX3ByZXR0eV9mb3JtYXRzIGluCisJCSAqIGdpdC1jb21wbGV0aW9uLmJhc2ggd2hlbiB5b3UgYWRkIG5ldyBmb3JtYXRzLgorCQkgKi8KIAl9OwogCWNvbW1pdF9mb3JtYXRzX2xlbiA9IEFSUkFZX1NJWkUoYnVpbHRpbl9mb3JtYXRzKTsKIAlidWlsdGluX2Zvcm1hdHNfbGVuID0gY29tbWl0X2Zvcm1hdHNfbGVuOwogCUFMTE9DX0dST1coY29tbWl0X2Zvcm1hdHMsIGNvbW1pdF9mb3JtYXRzX2xlbiwgY29tbWl0X2Zvcm1hdHNfYWxsb2MpOwotCW1lbWNweShjb21taXRfZm9ybWF0cywgYnVpbHRpbl9mb3JtYXRzLAotCSAgICAgICBzaXplb2YoKmJ1aWx0aW5fZm9ybWF0cykqQVJSQVlfU0laRShidWlsdGluX2Zvcm1hdHMpKTsKKwlDT1BZX0FSUkFZKGNvbW1pdF9mb3JtYXRzLCBidWlsdGluX2Zvcm1hdHMsCisJCSAgIEFSUkFZX1NJWkUoYnVpbHRpbl9mb3JtYXRzKSk7CiAKIAlnaXRfY29uZmlnKGdpdF9wcmV0dHlfZm9ybWF0c19jb25maWcsIE5VTEwpOwogfQpAQCAtMTc3LDYgKzE4NCw4IEBACiAJcmV2LT5jb21taXRfZm9ybWF0ID0gY29tbWl0X2Zvcm1hdC0+Zm9ybWF0OwogCXJldi0+dXNlX3Rlcm1pbmF0b3IgPSBjb21taXRfZm9ybWF0LT5pc190Zm9ybWF0OwogCXJldi0+ZXhwYW5kX3RhYnNfaW5fbG9nX2RlZmF1bHQgPSBjb21taXRfZm9ybWF0LT5leHBhbmRfdGFic19pbl9sb2c7CisJaWYgKCFyZXYtPmRhdGVfbW9kZV9leHBsaWNpdCAmJiBjb21taXRfZm9ybWF0LT5kZWZhdWx0X2RhdGVfbW9kZV90eXBlKQorCQlyZXYtPmRhdGVfbW9kZS50eXBlID0gY29tbWl0X2Zvcm1hdC0+ZGVmYXVsdF9kYXRlX21vZGVfdHlwZTsKIAlpZiAoY29tbWl0X2Zvcm1hdC0+Zm9ybWF0ID09IENNSVRfRk1UX1VTRVJGT1JNQVQpIHsKIAkJc2F2ZV91c2VyX2Zvcm1hdChyZXYsIGNvbW1pdF9mb3JtYXQtPnVzZXJfZm9ybWF0LAogCQkJCSBjb21taXRfZm9ybWF0LT5pc190Zm9ybWF0KTsKQEAgLTMzOSw4ICszNDgsNyBAQAogCXJldHVybiAhKGlzYWxudW0oY2gpIHx8IGNoID09ICchJyB8fCBjaCA9PSAnKicgfHwgY2ggPT0gJysnIHx8IGNoID09ICctJyB8fCBjaCA9PSAnLycpOwogfQogCi1zdGF0aWMgaW50IG5lZWRzX3JmYzIwNDdfZW5jb2RpbmcoY29uc3QgY2hhciAqbGluZSwgaW50IGxlbiwKLQkJCQkgIGVudW0gcmZjMjA0N190eXBlIHR5cGUpCitzdGF0aWMgaW50IG5lZWRzX3JmYzIwNDdfZW5jb2RpbmcoY29uc3QgY2hhciAqbGluZSwgaW50IGxlbikKIHsKIAlpbnQgaTsKIApAQCAtNDY2LDcgKzQ3NCw3IEBACiAJCX0KIAogCQlzdHJidWZfYWRkc3RyKHNiLCAiRnJvbTogIik7Ci0JCWlmIChuZWVkc19yZmMyMDQ3X2VuY29kaW5nKG5hbWVidWYsIG5hbWVsZW4sIFJGQzIwNDdfQUREUkVTUykpIHsKKwkJaWYgKG5lZWRzX3JmYzIwNDdfZW5jb2RpbmcobmFtZWJ1ZiwgbmFtZWxlbikpIHsKIAkJCWFkZF9yZmMyMDQ3KHNiLCBuYW1lYnVmLCBuYW1lbGVuLAogCQkJCSAgICBlbmNvZGluZywgUkZDMjA0N19BRERSRVNTKTsKIAkJCW1heF9sZW5ndGggPSA3NjsgLyogcGVyIHJmYzIwNDcgKi8KQEAgLTU5NSwxNCArNjAzLDE1IEBACiAJcmV0dXJuIHN0cmJ1Zl9kZXRhY2goJnRtcCwgTlVMTCk7CiB9CiAKLWNvbnN0IGNoYXIgKmxvZ21zZ19yZWVuY29kZShjb25zdCBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCi0JCQkgICAgY2hhciAqKmNvbW1pdF9lbmNvZGluZywKLQkJCSAgICBjb25zdCBjaGFyICpvdXRwdXRfZW5jb2RpbmcpCitjb25zdCBjaGFyICpyZXBvX2xvZ21zZ19yZWVuY29kZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0LAorCQkJCSBjaGFyICoqY29tbWl0X2VuY29kaW5nLAorCQkJCSBjb25zdCBjaGFyICpvdXRwdXRfZW5jb2RpbmcpCiB7CiAJc3RhdGljIGNvbnN0IGNoYXIgKnV0ZjggPSAiVVRGLTgiOwogCWNvbnN0IGNoYXIgKnVzZV9lbmNvZGluZzsKIAljaGFyICplbmNvZGluZzsKLQljb25zdCBjaGFyICptc2cgPSBnZXRfY29tbWl0X2J1ZmZlcihjb21taXQsIE5VTEwpOworCWNvbnN0IGNoYXIgKm1zZyA9IHJlcG9fZ2V0X2NvbW1pdF9idWZmZXIociwgY29tbWl0LCBOVUxMKTsKIAljaGFyICpvdXQ7CiAKIAlpZiAoIW91dHB1dF9lbmNvZGluZyB8fCAhKm91dHB1dF9lbmNvZGluZykgewpAQCAtNjMwLDcgKzYzOSw3IEBACiAJCSAqIHRoZSBjYWNoZWQgY29weSBmcm9tIGdldF9jb21taXRfYnVmZmVyLCB3ZSBuZWVkIHRvIGR1cGxpY2F0ZSBpdAogCQkgKiB0byBhdm9pZCBtdW5naW5nIHRoZSBjYWNoZWQgY29weS4KIAkJICovCi0JCWlmIChtc2cgPT0gZ2V0X2NhY2hlZF9jb21taXRfYnVmZmVyKHRoZV9yZXBvc2l0b3J5LCBjb21taXQsIE5VTEwpKQorCQlpZiAobXNnID09IGdldF9jYWNoZWRfY29tbWl0X2J1ZmZlcihyLCBjb21taXQsIE5VTEwpKQogCQkJb3V0ID0geHN0cmR1cChtc2cpOwogCQllbHNlCiAJCQlvdXQgPSAoY2hhciAqKW1zZzsKQEAgLTY0NCw3ICs2NTMsNyBAQAogCQkgKi8KIAkJb3V0ID0gcmVlbmNvZGVfc3RyaW5nKG1zZywgb3V0cHV0X2VuY29kaW5nLCB1c2VfZW5jb2RpbmcpOwogCQlpZiAob3V0KQotCQkJdW51c2VfY29tbWl0X2J1ZmZlcihjb21taXQsIG1zZyk7CisJCQlyZXBvX3VudXNlX2NvbW1pdF9idWZmZXIociwgY29tbWl0LCBtc2cpOwogCX0KIAogCS8qCkBAIC02OTIsNyArNzAxLDcgQEAKIAltYWlsID0gcy5tYWlsX2JlZ2luOwogCW1haWxsZW4gPSBzLm1haWxfZW5kIC0gcy5tYWlsX2JlZ2luOwogCi0JaWYgKHBhcnQgPT0gJ04nIHx8IHBhcnQgPT0gJ0UnKSAvKiBtYWlsbWFwIGxvb2t1cCAqLworCWlmIChwYXJ0ID09ICdOJyB8fCBwYXJ0ID09ICdFJyB8fCBwYXJ0ID09ICdMJykgLyogbWFpbG1hcCBsb29rdXAgKi8KIAkJbWFpbG1hcF9uYW1lKCZtYWlsLCAmbWFpbGxlbiwgJm5hbWUsICZuYW1lbGVuKTsKIAlpZiAocGFydCA9PSAnbicgfHwgcGFydCA9PSAnTicpIHsJLyogbmFtZSAqLwogCQlzdHJidWZfYWRkKHNiLCBuYW1lLCBuYW1lbGVuKTsKQEAgLTcwMiw2ICs3MTEsMTMgQEAKIAkJc3RyYnVmX2FkZChzYiwgbWFpbCwgbWFpbGxlbik7CiAJCXJldHVybiBwbGFjZWhvbGRlcl9sZW47CiAJfQorCWlmIChwYXJ0ID09ICdsJyB8fCBwYXJ0ID09ICdMJykgewkvKiBsb2NhbC1wYXJ0ICovCisJCWNvbnN0IGNoYXIgKmF0ID0gbWVtY2hyKG1haWwsICdAJywgbWFpbGxlbik7CisJCWlmIChhdCkKKwkJCW1haWxsZW4gPSBhdCAtIG1haWw7CisJCXN0cmJ1Zl9hZGQoc2IsIG1haWwsIG1haWxsZW4pOworCQlyZXR1cm4gcGxhY2Vob2xkZXJfbGVuOworCX0KIAogCWlmICghcy5kYXRlX2JlZ2luKQogCQlnb3RvIHNraXA7CkBAIC03MjcsNiArNzQzLDkgQEAKIAljYXNlICdJJzoJLyogZGF0ZSwgSVNPIDg2MDEgc3RyaWN0ICovCiAJCXN0cmJ1Zl9hZGRzdHIoc2IsIHNob3dfaWRlbnRfZGF0ZSgmcywgREFURV9NT0RFKElTTzg2MDFfU1RSSUNUKSkpOwogCQlyZXR1cm4gcGxhY2Vob2xkZXJfbGVuOworCWNhc2UgJ3MnOgorCQlzdHJidWZfYWRkc3RyKHNiLCBzaG93X2lkZW50X2RhdGUoJnMsIERBVEVfTU9ERShTSE9SVCkpKTsKKwkJcmV0dXJuIHBsYWNlaG9sZGVyX2xlbjsKIAl9CiAKIHNraXA6CkBAIC05ODQsOCArMTAwMyw3IEBACiAJcmV0dXJuIHJlc3QgLSBwbGFjZWhvbGRlcjsKIH0KIAotc3RhdGljIHNpemVfdCBwYXJzZV9wYWRkaW5nX3BsYWNlaG9sZGVyKHN0cnVjdCBzdHJidWYgKnNiLAotCQkJCQljb25zdCBjaGFyICpwbGFjZWhvbGRlciwKK3N0YXRpYyBzaXplX3QgcGFyc2VfcGFkZGluZ19wbGFjZWhvbGRlcihjb25zdCBjaGFyICpwbGFjZWhvbGRlciwKIAkJCQkJc3RydWN0IGZvcm1hdF9jb21taXRfY29udGV4dCAqYykKIHsKIAljb25zdCBjaGFyICpjaCA9IHBsYWNlaG9sZGVyOwpAQCAtMTA1NiwxMyArMTA3NCwyNiBAQAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IG1hdGNoX3BsYWNlaG9sZGVyX2FyZyhjb25zdCBjaGFyICp0b19wYXJzZSwgY29uc3QgY2hhciAqY2FuZGlkYXRlLAotCQkJCSBjb25zdCBjaGFyICoqZW5kKQorc3RhdGljIGludCBtYXRjaF9wbGFjZWhvbGRlcl9hcmdfdmFsdWUoY29uc3QgY2hhciAqdG9fcGFyc2UsIGNvbnN0IGNoYXIgKmNhbmRpZGF0ZSwKKwkJCQkgICAgICAgY29uc3QgY2hhciAqKmVuZCwgY29uc3QgY2hhciAqKnZhbHVlc3RhcnQsCisJCQkJICAgICAgIHNpemVfdCAqdmFsdWVsZW4pCiB7CiAJY29uc3QgY2hhciAqcDsKIAogCWlmICghKHNraXBfcHJlZml4KHRvX3BhcnNlLCBjYW5kaWRhdGUsICZwKSkpCiAJCXJldHVybiAwOworCWlmICh2YWx1ZXN0YXJ0KSB7CisJCWlmICgqcCA9PSAnPScpIHsKKwkJCSp2YWx1ZXN0YXJ0ID0gcCArIDE7CisJCQkqdmFsdWVsZW4gPSBzdHJjc3BuKCp2YWx1ZXN0YXJ0LCAiLCkiKTsKKwkJCXAgPSAqdmFsdWVzdGFydCArICp2YWx1ZWxlbjsKKwkJfSBlbHNlIHsKKwkJCWlmICgqcCAhPSAnLCcgJiYgKnAgIT0gJyknKQorCQkJCXJldHVybiAwOworCQkJKnZhbHVlc3RhcnQgPSBOVUxMOworCQkJKnZhbHVlbGVuID0gMDsKKwkJfQorCX0KIAlpZiAoKnAgPT0gJywnKSB7CiAJCSplbmQgPSBwICsgMTsKIAkJcmV0dXJuIDE7CkBAIC0xMDc0LDYgKzExMDUsNDcgQEAKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIGludCBtYXRjaF9wbGFjZWhvbGRlcl9ib29sX2FyZyhjb25zdCBjaGFyICp0b19wYXJzZSwgY29uc3QgY2hhciAqY2FuZGlkYXRlLAorCQkJCSAgICAgIGNvbnN0IGNoYXIgKiplbmQsIGludCAqdmFsKQoreworCWNvbnN0IGNoYXIgKmFyZ3ZhbDsKKwljaGFyICpzdHJ2YWw7CisJc2l6ZV90IGFyZ2xlbjsKKwlpbnQgdjsKKworCWlmICghbWF0Y2hfcGxhY2Vob2xkZXJfYXJnX3ZhbHVlKHRvX3BhcnNlLCBjYW5kaWRhdGUsIGVuZCwgJmFyZ3ZhbCwgJmFyZ2xlbikpCisJCXJldHVybiAwOworCisJaWYgKCFhcmd2YWwpIHsKKwkJKnZhbCA9IDE7CisJCXJldHVybiAxOworCX0KKworCXN0cnZhbCA9IHhzdHJuZHVwKGFyZ3ZhbCwgYXJnbGVuKTsKKwl2ID0gZ2l0X3BhcnNlX21heWJlX2Jvb2woc3RydmFsKTsKKwlmcmVlKHN0cnZhbCk7CisKKwlpZiAodiA9PSAtMSkKKwkJcmV0dXJuIDA7CisKKwkqdmFsID0gdjsKKworCXJldHVybiAxOworfQorCitzdGF0aWMgaW50IGZvcm1hdF90cmFpbGVyX21hdGNoX2NiKGNvbnN0IHN0cnVjdCBzdHJidWYgKmtleSwgdm9pZCAqdWQpCit7CisJY29uc3Qgc3RydWN0IHN0cmluZ19saXN0ICpsaXN0ID0gdWQ7CisJY29uc3Qgc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKml0ZW07CisKKwlmb3JfZWFjaF9zdHJpbmdfbGlzdF9pdGVtIChpdGVtLCBsaXN0KSB7CisJCWlmIChrZXktPmxlbiA9PSAodWludHB0cl90KWl0ZW0tPnV0aWwgJiYKKwkJICAgICFzdHJuY2FzZWNtcChpdGVtLT5zdHJpbmcsIGtleS0+YnVmLCBrZXktPmxlbikpCisJCQlyZXR1cm4gMTsKKwl9CisJcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBzaXplX3QgZm9ybWF0X2NvbW1pdF9vbmUoc3RydWN0IHN0cmJ1ZiAqc2IsIC8qIGluIFVURi04ICovCiAJCQkJY29uc3QgY2hhciAqcGxhY2Vob2xkZXIsCiAJCQkJdm9pZCAqY29udGV4dCkKQEAgLTEwODMsOSArMTE1NSwxNCBAQAogCWNvbnN0IGNoYXIgKm1zZyA9IGMtPm1lc3NhZ2U7CiAJc3RydWN0IGNvbW1pdF9saXN0ICpwOwogCWNvbnN0IGNoYXIgKmFyZzsKLQlpbnQgY2g7CisJc2l6ZV90IHJlczsKKwljaGFyICoqc2xvdDsKIAogCS8qIHRoZXNlIGFyZSBpbmRlcGVuZGVudCBvZiB0aGUgY29tbWl0ICovCisJcmVzID0gc3RyYnVmX2V4cGFuZF9saXRlcmFsX2NiKHNiLCBwbGFjZWhvbGRlciwgTlVMTCk7CisJaWYgKHJlcykKKwkJcmV0dXJuIHJlczsKKwogCXN3aXRjaCAocGxhY2Vob2xkZXJbMF0pIHsKIAljYXNlICdDJzoKIAkJaWYgKHN0YXJ0c193aXRoKHBsYWNlaG9sZGVyICsgMSwgIihhdXRvKSIpKSB7CkBAIC0xMTA0LDE2ICsxMTgxLDYgQEAKIAkJCSAqLwogCQkJcmV0dXJuIHJldDsKIAkJfQotCWNhc2UgJ24nOgkJLyogbmV3bGluZSAqLwotCQlzdHJidWZfYWRkY2goc2IsICdcbicpOwotCQlyZXR1cm4gMTsKLQljYXNlICd4JzoKLQkJLyogJXgwMCA9PSBOVUwsICV4MGEgPT0gTEYsIGV0Yy4gKi8KLQkJY2ggPSBoZXgyY2hyKHBsYWNlaG9sZGVyICsgMSk7Ci0JCWlmIChjaCA8IDApCi0JCQlyZXR1cm4gMDsKLQkJc3RyYnVmX2FkZGNoKHNiLCBjaCk7Ci0JCXJldHVybiAzOwogCWNhc2UgJ3cnOgogCQlpZiAocGxhY2Vob2xkZXJbMV0gPT0gJygnKSB7CiAJCQl1bnNpZ25lZCBsb25nIHdpZHRoID0gMCwgaW5kZW50MSA9IDAsIGluZGVudDIgPSAwOwpAQCAtMTE0MSw3ICsxMjA4LDcgQEAKIAogCWNhc2UgJzwnOgogCWNhc2UgJz4nOgotCQlyZXR1cm4gcGFyc2VfcGFkZGluZ19wbGFjZWhvbGRlcihzYiwgcGxhY2Vob2xkZXIsIGMpOworCQlyZXR1cm4gcGFyc2VfcGFkZGluZ19wbGFjZWhvbGRlcihwbGFjZWhvbGRlciwgYyk7CiAJfQogCiAJLyogdGhlc2UgZGVwZW5kIG9uIHRoZSBjb21taXQgKi8KQEAgLTExODcsMTMgKzEyNTQsMTkgQEAKIAkJc3RyYnVmX2FkZHN0cihzYiwgZ2V0X3JldmlzaW9uX21hcmsoTlVMTCwgY29tbWl0KSk7CiAJCXJldHVybiAxOwogCWNhc2UgJ2QnOgotCQlsb2FkX3JlZl9kZWNvcmF0aW9ucyhOVUxMLCBERUNPUkFURV9TSE9SVF9SRUZTKTsKIAkJZm9ybWF0X2RlY29yYXRpb25zKHNiLCBjb21taXQsIGMtPmF1dG9fY29sb3IpOwogCQlyZXR1cm4gMTsKIAljYXNlICdEJzoKLQkJbG9hZF9yZWZfZGVjb3JhdGlvbnMoTlVMTCwgREVDT1JBVEVfU0hPUlRfUkVGUyk7CiAJCWZvcm1hdF9kZWNvcmF0aW9uc19leHRlbmRlZChzYiwgY29tbWl0LCBjLT5hdXRvX2NvbG9yLCAiIiwgIiwgIiwgIiIpOwogCQlyZXR1cm4gMTsKKwljYXNlICdTJzoJCS8qIHRhZy9icmFuY2ggbGlrZSAtLXNvdXJjZSAqLworCQlpZiAoIShjLT5wcmV0dHlfY3R4LT5yZXYgJiYgYy0+cHJldHR5X2N0eC0+cmV2LT5zb3VyY2VzKSkKKwkJCXJldHVybiAwOworCQlzbG90ID0gcmV2aXNpb25fc291cmNlc19hdChjLT5wcmV0dHlfY3R4LT5yZXYtPnNvdXJjZXMsIGNvbW1pdCk7CisJCWlmICghKHNsb3QgJiYgKnNsb3QpKQorCQkJcmV0dXJuIDA7CisJCXN0cmJ1Zl9hZGRzdHIoc2IsICpzbG90KTsKKwkJcmV0dXJuIDE7CiAJY2FzZSAnZyc6CQkvKiByZWZsb2cgaW5mbyAqLwogCQlzd2l0Y2gocGxhY2Vob2xkZXJbMV0pIHsKIAkJY2FzZSAnZCc6CS8qIHJlZmxvZyBzZWxlY3RvciAqLwpAQCAtMTIzOCw5ICsxMzExLDE4IEBACiAJCWNhc2UgJz8nOgogCQkJc3dpdGNoIChjLT5zaWduYXR1cmVfY2hlY2sucmVzdWx0KSB7CiAJCQljYXNlICdHJzoKKwkJCQlzd2l0Y2ggKGMtPnNpZ25hdHVyZV9jaGVjay50cnVzdF9sZXZlbCkgeworCQkJCWNhc2UgVFJVU1RfVU5ERUZJTkVEOgorCQkJCWNhc2UgVFJVU1RfTkVWRVI6CisJCQkJCXN0cmJ1Zl9hZGRjaChzYiwgJ1UnKTsKKwkJCQkJYnJlYWs7CisJCQkJZGVmYXVsdDoKKwkJCQkJc3RyYnVmX2FkZGNoKHNiLCAnRycpOworCQkJCQlicmVhazsKKwkJCQl9CisJCQkJYnJlYWs7CiAJCQljYXNlICdCJzoKIAkJCWNhc2UgJ0UnOgotCQkJY2FzZSAnVSc6CiAJCQljYXNlICdOJzoKIAkJCWNhc2UgJ1gnOgogCQkJY2FzZSAnWSc6CkBAIC0xMjY0LDYgKzEzNDYsMjUgQEAKIAkJCWlmIChjLT5zaWduYXR1cmVfY2hlY2sucHJpbWFyeV9rZXlfZmluZ2VycHJpbnQpCiAJCQkJc3RyYnVmX2FkZHN0cihzYiwgYy0+c2lnbmF0dXJlX2NoZWNrLnByaW1hcnlfa2V5X2ZpbmdlcnByaW50KTsKIAkJCWJyZWFrOworCQljYXNlICdUJzoKKwkJCXN3aXRjaCAoYy0+c2lnbmF0dXJlX2NoZWNrLnRydXN0X2xldmVsKSB7CisJCQljYXNlIFRSVVNUX1VOREVGSU5FRDoKKwkJCQlzdHJidWZfYWRkc3RyKHNiLCAidW5kZWZpbmVkIik7CisJCQkJYnJlYWs7CisJCQljYXNlIFRSVVNUX05FVkVSOgorCQkJCXN0cmJ1Zl9hZGRzdHIoc2IsICJuZXZlciIpOworCQkJCWJyZWFrOworCQkJY2FzZSBUUlVTVF9NQVJHSU5BTDoKKwkJCQlzdHJidWZfYWRkc3RyKHNiLCAibWFyZ2luYWwiKTsKKwkJCQlicmVhazsKKwkJCWNhc2UgVFJVU1RfRlVMTFk6CisJCQkJc3RyYnVmX2FkZHN0cihzYiwgImZ1bGx5Iik7CisJCQkJYnJlYWs7CisJCQljYXNlIFRSVVNUX1VMVElNQVRFOgorCQkJCXN0cmJ1Zl9hZGRzdHIoc2IsICJ1bHRpbWF0ZSIpOworCQkJCWJyZWFrOworCQkJfQorCQkJYnJlYWs7CiAJCWRlZmF1bHQ6CiAJCQlyZXR1cm4gMDsKIAkJfQpAQCAtMTMxMiwyNCArMTQxMyw1MyBAQAogCiAJaWYgKHNraXBfcHJlZml4KHBsYWNlaG9sZGVyLCAiKHRyYWlsZXJzIiwgJmFyZykpIHsKIAkJc3RydWN0IHByb2Nlc3NfdHJhaWxlcl9vcHRpb25zIG9wdHMgPSBQUk9DRVNTX1RSQUlMRVJfT1BUSU9OU19JTklUOworCQlzdHJ1Y3Qgc3RyaW5nX2xpc3QgZmlsdGVyX2xpc3QgPSBTVFJJTkdfTElTVF9JTklUX05PRFVQOworCQlzdHJ1Y3Qgc3RyYnVmIHNlcGJ1ZiA9IFNUUkJVRl9JTklUOworCQlzaXplX3QgcmV0ID0gMDsKIAogCQlvcHRzLm5vX2RpdmlkZXIgPSAxOwogCiAJCWlmICgqYXJnID09ICc6JykgewogCQkJYXJnKys7CiAJCQlmb3IgKDs7KSB7Ci0JCQkJaWYgKG1hdGNoX3BsYWNlaG9sZGVyX2FyZyhhcmcsICJvbmx5IiwgJmFyZykpCisJCQkJY29uc3QgY2hhciAqYXJndmFsOworCQkJCXNpemVfdCBhcmdsZW47CisKKwkJCQlpZiAobWF0Y2hfcGxhY2Vob2xkZXJfYXJnX3ZhbHVlKGFyZywgImtleSIsICZhcmcsICZhcmd2YWwsICZhcmdsZW4pKSB7CisJCQkJCXVpbnRwdHJfdCBsZW4gPSBhcmdsZW47CisKKwkJCQkJaWYgKCFhcmd2YWwpCisJCQkJCQlnb3RvIHRyYWlsZXJfb3V0OworCisJCQkJCWlmIChsZW4gJiYgYXJndmFsW2xlbiAtIDFdID09ICc6JykKKwkJCQkJCWxlbi0tOworCQkJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJmZpbHRlcl9saXN0LCBhcmd2YWwpLT51dGlsID0gKGNoYXIgKilsZW47CisKKwkJCQkJb3B0cy5maWx0ZXIgPSBmb3JtYXRfdHJhaWxlcl9tYXRjaF9jYjsKKwkJCQkJb3B0cy5maWx0ZXJfZGF0YSA9ICZmaWx0ZXJfbGlzdDsKIAkJCQkJb3B0cy5vbmx5X3RyYWlsZXJzID0gMTsKLQkJCQllbHNlIGlmIChtYXRjaF9wbGFjZWhvbGRlcl9hcmcoYXJnLCAidW5mb2xkIiwgJmFyZykpCi0JCQkJCW9wdHMudW5mb2xkID0gMTsKLQkJCQllbHNlCisJCQkJfSBlbHNlIGlmIChtYXRjaF9wbGFjZWhvbGRlcl9hcmdfdmFsdWUoYXJnLCAic2VwYXJhdG9yIiwgJmFyZywgJmFyZ3ZhbCwgJmFyZ2xlbikpIHsKKwkJCQkJY2hhciAqZm10OworCisJCQkJCXN0cmJ1Zl9yZXNldCgmc2VwYnVmKTsKKwkJCQkJZm10ID0geHN0cm5kdXAoYXJndmFsLCBhcmdsZW4pOworCQkJCQlzdHJidWZfZXhwYW5kKCZzZXBidWYsIGZtdCwgc3RyYnVmX2V4cGFuZF9saXRlcmFsX2NiLCBOVUxMKTsKKwkJCQkJZnJlZShmbXQpOworCQkJCQlvcHRzLnNlcGFyYXRvciA9ICZzZXBidWY7CisJCQkJfSBlbHNlIGlmICghbWF0Y2hfcGxhY2Vob2xkZXJfYm9vbF9hcmcoYXJnLCAib25seSIsICZhcmcsICZvcHRzLm9ubHlfdHJhaWxlcnMpICYmCisJCQkJCSAgICFtYXRjaF9wbGFjZWhvbGRlcl9ib29sX2FyZyhhcmcsICJ1bmZvbGQiLCAmYXJnLCAmb3B0cy51bmZvbGQpICYmCisJCQkJCSAgICFtYXRjaF9wbGFjZWhvbGRlcl9ib29sX2FyZyhhcmcsICJ2YWx1ZW9ubHkiLCAmYXJnLCAmb3B0cy52YWx1ZV9vbmx5KSkKIAkJCQkJYnJlYWs7CiAJCQl9CiAJCX0KIAkJaWYgKCphcmcgPT0gJyknKSB7CiAJCQlmb3JtYXRfdHJhaWxlcnNfZnJvbV9jb21taXQoc2IsIG1zZyArIGMtPnN1YmplY3Rfb2ZmLCAmb3B0cyk7Ci0JCQlyZXR1cm4gYXJnIC0gcGxhY2Vob2xkZXIgKyAxOworCQkJcmV0ID0gYXJnIC0gcGxhY2Vob2xkZXIgKyAxOwogCQl9CisJdHJhaWxlcl9vdXQ6CisJCXN0cmluZ19saXN0X2NsZWFyKCZmaWx0ZXJfbGlzdCwgMCk7CisJCXN0cmJ1Zl9yZWxlYXNlKCZzZXBidWYpOworCQlyZXR1cm4gcmV0OwogCX0KIAogCXJldHVybiAwOwkvKiB1bmtub3duIHBsYWNlaG9sZGVyICovCkBAIC0xNDc5LDkgKzE2MDksOSBAQAogCQkJc3RyYnVmX3NldGxlbihzYiwgc2ItPmxlbiAtIDEpOwogCX0gZWxzZSBpZiAob3JpZ19sZW4gIT0gc2ItPmxlbikgewogCQlpZiAobWFnaWMgPT0gQUREX0xGX0JFRk9SRV9OT05fRU1QVFkpCi0JCQlzdHJidWZfaW5zZXJ0KHNiLCBvcmlnX2xlbiwgIlxuIiwgMSk7CisJCQlzdHJidWZfaW5zZXJ0c3RyKHNiLCBvcmlnX2xlbiwgIlxuIik7CiAJCWVsc2UgaWYgKG1hZ2ljID09IEFERF9TUF9CRUZPUkVfTk9OX0VNUFRZKQotCQkJc3RyYnVmX2luc2VydChzYiwgb3JpZ19sZW4sICIgIiwgMSk7CisJCQlzdHJidWZfaW5zZXJ0c3RyKHNiLCBvcmlnX2xlbiwgIiAiKTsKIAl9CiAJcmV0dXJuIGNvbnN1bWVkICsgMTsKIH0KQEAgLTE0OTgsNiArMTYyOCw5IEBACiAJY2FzZSAnTic6CiAJCXctPm5vdGVzID0gMTsKIAkJYnJlYWs7CisJY2FzZSAnUyc6CisJCXctPnNvdXJjZSA9IDE7CisJCWJyZWFrOwogCX0KIAlyZXR1cm4gMDsKIH0KQEAgLTE1MTUsMjUgKzE2NDgsMjYgQEAKIAlzdHJidWZfcmVsZWFzZSgmZHVtbXkpOwogfQogCi12b2lkIGZvcm1hdF9jb21taXRfbWVzc2FnZShjb25zdCBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCi0JCQkgICBjb25zdCBjaGFyICpmb3JtYXQsIHN0cnVjdCBzdHJidWYgKnNiLAotCQkJICAgY29uc3Qgc3RydWN0IHByZXR0eV9wcmludF9jb250ZXh0ICpwcmV0dHlfY3R4KQordm9pZCByZXBvX2Zvcm1hdF9jb21taXRfbWVzc2FnZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQljb25zdCBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCisJCQkJY29uc3QgY2hhciAqZm9ybWF0LCBzdHJ1Y3Qgc3RyYnVmICpzYiwKKwkJCQljb25zdCBzdHJ1Y3QgcHJldHR5X3ByaW50X2NvbnRleHQgKnByZXR0eV9jdHgpCiB7Ci0Jc3RydWN0IGZvcm1hdF9jb21taXRfY29udGV4dCBjb250ZXh0OworCXN0cnVjdCBmb3JtYXRfY29tbWl0X2NvbnRleHQgY29udGV4dCA9IHsKKwkJLmNvbW1pdCA9IGNvbW1pdCwKKwkJLnByZXR0eV9jdHggPSBwcmV0dHlfY3R4LAorCQkud3JhcF9zdGFydCA9IHNiLT5sZW4KKwl9OwogCWNvbnN0IGNoYXIgKm91dHB1dF9lbmMgPSBwcmV0dHlfY3R4LT5vdXRwdXRfZW5jb2Rpbmc7CiAJY29uc3QgY2hhciAqdXRmOCA9ICJVVEYtOCI7CiAKLQltZW1zZXQoJmNvbnRleHQsIDAsIHNpemVvZihjb250ZXh0KSk7Ci0JY29udGV4dC5jb21taXQgPSBjb21taXQ7Ci0JY29udGV4dC5wcmV0dHlfY3R4ID0gcHJldHR5X2N0eDsKLQljb250ZXh0LndyYXBfc3RhcnQgPSBzYi0+bGVuOwogCS8qCiAJICogY29udmVydCBhIGNvbW1pdCBtZXNzYWdlIHRvIFVURi04IGZpcnN0CiAJICogYXMgZmFyIGFzICdmb3JtYXRfY29tbWl0X2l0ZW0nIGFzc3VtZXMgaXQgaW4gVVRGLTgKIAkgKi8KLQljb250ZXh0Lm1lc3NhZ2UgPSBsb2dtc2dfcmVlbmNvZGUoY29tbWl0LAotCQkJCQkgICZjb250ZXh0LmNvbW1pdF9lbmNvZGluZywKLQkJCQkJICB1dGY4KTsKKwljb250ZXh0Lm1lc3NhZ2UgPSByZXBvX2xvZ21zZ19yZWVuY29kZShyLCBjb21taXQsCisJCQkJCSAgICAgICAmY29udGV4dC5jb21taXRfZW5jb2RpbmcsCisJCQkJCSAgICAgICB1dGY4KTsKIAogCXN0cmJ1Zl9leHBhbmQoc2IsIGZvcm1hdCwgZm9ybWF0X2NvbW1pdF9pdGVtLCAmY29udGV4dCk7CiAJcmV3cmFwX21lc3NhZ2VfdGFpbChzYiwgJmNvbnRleHQsIDAsIDAsIDApOwpAQCAtMTU1Nyw3ICsxNjkxLDcgQEAKIAl9CiAKIAlmcmVlKGNvbnRleHQuY29tbWl0X2VuY29kaW5nKTsKLQl1bnVzZV9jb21taXRfYnVmZmVyKGNvbW1pdCwgY29udGV4dC5tZXNzYWdlKTsKKwlyZXBvX3VudXNlX2NvbW1pdF9idWZmZXIociwgY29tbWl0LCBjb250ZXh0Lm1lc3NhZ2UpOwogfQogCiBzdGF0aWMgdm9pZCBwcF9oZWFkZXIoc3RydWN0IHByZXR0eV9wcmludF9jb250ZXh0ICpwcCwKQEAgLTE2MzMsNyArMTc2Nyw3IEBACiAJaWYgKHBwLT5wcmludF9lbWFpbF9zdWJqZWN0KSB7CiAJCWlmIChwcC0+cmV2KQogCQkJZm10X291dHB1dF9lbWFpbF9zdWJqZWN0KHNiLCBwcC0+cmV2KTsKLQkJaWYgKG5lZWRzX3JmYzIwNDdfZW5jb2RpbmcodGl0bGUuYnVmLCB0aXRsZS5sZW4sIFJGQzIwNDdfU1VCSkVDVCkpCisJCWlmIChuZWVkc19yZmMyMDQ3X2VuY29kaW5nKHRpdGxlLmJ1ZiwgdGl0bGUubGVuKSkKIAkJCWFkZF9yZmMyMDQ3KHNiLCB0aXRsZS5idWYsIHRpdGxlLmxlbiwKIAkJCQkJCWVuY29kaW5nLCBSRkMyMDQ3X1NVQkpFQ1QpOwogCQllbHNlCmRpZmYgLS1naXQgYS9wcmV0dHkuaCBiL3ByZXR0eS5oCmluZGV4IDczNTlkMzEuLjRhZDFmYzMgMTAwNjQ0Ci0tLSBhL3ByZXR0eS5oCisrKyBiL3ByZXR0eS5oCkBAIC02MCw2ICs2MCw3IEBACiAKIHN0cnVjdCB1c2VyZm9ybWF0X3dhbnQgewogCXVuc2lnbmVkIG5vdGVzOjE7CisJdW5zaWduZWQgc291cmNlOjE7CiB9OwogCiAvKiBTZXQgdGhlIGZsYWcgInctPm5vdGVzIiBpZiB0aGVyZSBpcyBwbGFjZWhvbGRlciAlTiBpbiAiZm10Ii4gKi8KQEAgLTEwMyw5ICsxMDQsMTQgQEAKICAqIFB1dCB0aGUgcmVzdWx0IHRvICJzYiIuCiAgKiBQbGVhc2UgdXNlIHRoaXMgZnVuY3Rpb24gZm9yIGN1c3RvbSBmb3JtYXRzLgogICovCi12b2lkIGZvcm1hdF9jb21taXRfbWVzc2FnZShjb25zdCBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCit2b2lkIHJlcG9fZm9ybWF0X2NvbW1pdF9tZXNzYWdlKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0LAogCQkJY29uc3QgY2hhciAqZm9ybWF0LCBzdHJ1Y3Qgc3RyYnVmICpzYiwKIAkJCWNvbnN0IHN0cnVjdCBwcmV0dHlfcHJpbnRfY29udGV4dCAqY29udGV4dCk7CisjaWZuZGVmIE5PX1RIRV9SRVBPU0lUT1JZX0NPTVBBVElCSUxJVFlfTUFDUk9TCisjZGVmaW5lIGZvcm1hdF9jb21taXRfbWVzc2FnZShjLCBmLCBzLCBjb24pIFwKKwlyZXBvX2Zvcm1hdF9jb21taXRfbWVzc2FnZSh0aGVfcmVwb3NpdG9yeSwgYywgZiwgcywgY29uKQorI2VuZGlmCiAKIC8qCiAgKiBQYXJzZSBnaXZlbiBhcmd1bWVudHMgZnJvbSAiYXJnIiwgY2hlY2sgaXQgZm9yIGNvcnJlY3RuZXNzIGFuZApkaWZmIC0tZ2l0IGEvcHJpby1xdWV1ZS5oIGIvcHJpby1xdWV1ZS5oCmluZGV4IDY4MmU1MTguLjRmOWEzN2UgMTAwNjQ0Ci0tLSBhL3ByaW8tcXVldWUuaAorKysgYi9wcmlvLXF1ZXVlLmgKQEAgLTM3LDI0ICszNywyNCBAQAogLyoKICAqIEFkZCB0aGUgInRoaW5nIiB0byB0aGUgcXVldWUuCiAgKi8KLWV4dGVybiB2b2lkIHByaW9fcXVldWVfcHV0KHN0cnVjdCBwcmlvX3F1ZXVlICosIHZvaWQgKnRoaW5nKTsKK3ZvaWQgcHJpb19xdWV1ZV9wdXQoc3RydWN0IHByaW9fcXVldWUgKiwgdm9pZCAqdGhpbmcpOwogCiAvKgogICogRXh0cmFjdCB0aGUgInRoaW5nIiB0aGF0IGNvbXBhcmVzIHRoZSBzbWFsbGVzdCBvdXQgb2YgdGhlIHF1ZXVlLAogICogb3IgTlVMTC4gIElmIGNvbXBhcmUgZnVuY3Rpb24gaXMgTlVMTCwgdGhlIHF1ZXVlIGFjdHMgYXMgYSBMSUZPCiAgKiBzdGFjay4KICAqLwotZXh0ZXJuIHZvaWQgKnByaW9fcXVldWVfZ2V0KHN0cnVjdCBwcmlvX3F1ZXVlICopOwordm9pZCAqcHJpb19xdWV1ZV9nZXQoc3RydWN0IHByaW9fcXVldWUgKik7CiAKIC8qCiAgKiBHYWluIGFjY2VzcyB0byB0aGUgInRoaW5nIiB0aGF0IHdvdWxkIGJlIHJldHVybmVkIGJ5CiAgKiBwcmlvX3F1ZXVlX2dldCwgYnV0IGRvIG5vdCByZW1vdmUgaXQgZnJvbSB0aGUgcXVldWUuCiAgKi8KLWV4dGVybiB2b2lkICpwcmlvX3F1ZXVlX3BlZWsoc3RydWN0IHByaW9fcXVldWUgKik7Cit2b2lkICpwcmlvX3F1ZXVlX3BlZWsoc3RydWN0IHByaW9fcXVldWUgKik7CiAKLWV4dGVybiB2b2lkIGNsZWFyX3ByaW9fcXVldWUoc3RydWN0IHByaW9fcXVldWUgKik7Cit2b2lkIGNsZWFyX3ByaW9fcXVldWUoc3RydWN0IHByaW9fcXVldWUgKik7CiAKIC8qIFJldmVyc2UgdGhlIExJRk8gZWxlbWVudHMgKi8KLWV4dGVybiB2b2lkIHByaW9fcXVldWVfcmV2ZXJzZShzdHJ1Y3QgcHJpb19xdWV1ZSAqKTsKK3ZvaWQgcHJpb19xdWV1ZV9yZXZlcnNlKHN0cnVjdCBwcmlvX3F1ZXVlICopOwogCiAjZW5kaWYgLyogUFJJT19RVUVVRV9IICovCmRpZmYgLS1naXQgYS9wcm9ncmVzcy5jIGIvcHJvZ3Jlc3MuYwppbmRleCA1YTk5YzlmLi4xOTgwNWFjIDEwMDY0NAotLS0gYS9wcm9ncmVzcy5jCisrKyBiL3Byb2dyZXNzLmMKQEAgLTgsMTEgKzgsMTMgQEAKICAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLgogICovCiAKLSNpbmNsdWRlICJnaXQtY29tcGF0LXV0aWwuaCIKKyNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgImdldHRleHQuaCIKICNpbmNsdWRlICJwcm9ncmVzcy5oIgogI2luY2x1ZGUgInN0cmJ1Zi5oIgogI2luY2x1ZGUgInRyYWNlLmgiCisjaW5jbHVkZSAidXRmOC5oIgorI2luY2x1ZGUgImNvbmZpZy5oIgogCiAjZGVmaW5lIFRQX0lEWF9NQVggICAgICA4CiAKQEAgLTM0LDEyICszNiwyOSBAQAogCXVpbnQ2NF90IHRvdGFsOwogCXVuc2lnbmVkIGxhc3RfcGVyY2VudDsKIAl1bnNpZ25lZCBkZWxheTsKKwl1bnNpZ25lZCBzcGFyc2U7CiAJc3RydWN0IHRocm91Z2hwdXQgKnRocm91Z2hwdXQ7CiAJdWludDY0X3Qgc3RhcnRfbnM7CisJc3RydWN0IHN0cmJ1ZiBjb3VudGVyc19zYjsKKwlpbnQgdGl0bGVfbGVuOworCWludCBzcGxpdDsKIH07CiAKIHN0YXRpYyB2b2xhdGlsZSBzaWdfYXRvbWljX3QgcHJvZ3Jlc3NfdXBkYXRlOwogCisvKgorICogVGhlc2UgYXJlIG9ubHkgaW50ZW5kZWQgZm9yIHRlc3RpbmcgdGhlIHByb2dyZXNzIG91dHB1dCwgaS5lLiBleGNsdXNpdmVseQorICogZm9yICd0ZXN0LXRvb2wgcHJvZ3Jlc3MnLgorICovCitpbnQgcHJvZ3Jlc3NfdGVzdGluZzsKK3VpbnQ2NF90IHByb2dyZXNzX3Rlc3RfbnMgPSAwOwordm9pZCBwcm9ncmVzc190ZXN0X2ZvcmNlX3VwZGF0ZSh2b2lkKTsgLyogVG8gc2lsZW5jZSAtV21pc3NpbmctcHJvdG90eXBlcyAqLwordm9pZCBwcm9ncmVzc190ZXN0X2ZvcmNlX3VwZGF0ZSh2b2lkKQoreworCXByb2dyZXNzX3VwZGF0ZSA9IDE7Cit9CisKKwogc3RhdGljIHZvaWQgcHJvZ3Jlc3NfaW50ZXJ2YWwoaW50IHNpZ251bSkKIHsKIAlwcm9ncmVzc191cGRhdGUgPSAxOwpAQCAtNTAsNiArNjksOSBAQAogCXN0cnVjdCBzaWdhY3Rpb24gc2E7CiAJc3RydWN0IGl0aW1lcnZhbCB2OwogCisJaWYgKHByb2dyZXNzX3Rlc3RpbmcpCisJCXJldHVybjsKKwogCXByb2dyZXNzX3VwZGF0ZSA9IDA7CiAKIAltZW1zZXQoJnNhLCAwLCBzaXplb2Yoc2EpKTsKQEAgLTY3LDYgKzg5LDEwIEBACiBzdGF0aWMgdm9pZCBjbGVhcl9wcm9ncmVzc19zaWduYWwodm9pZCkKIHsKIAlzdHJ1Y3QgaXRpbWVydmFsIHYgPSB7ezAsfSx9OworCisJaWYgKHByb2dyZXNzX3Rlc3RpbmcpCisJCXJldHVybjsKKwogCXNldGl0aW1lcihJVElNRVJfUkVBTCwgJnYsIE5VTEwpOwogCXNpZ25hbChTSUdBTFJNLCBTSUdfSUdOKTsKIAlwcm9ncmVzc191cGRhdGUgPSAwOwpAQCAtNzgsNDEgKzEwNCw2NSBAQAogCXJldHVybiB0cGdycCA8IDAgfHwgdHBncnAgPT0gZ2V0cGdpZCgwKTsKIH0KIAotc3RhdGljIGludCBkaXNwbGF5KHN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MsIHVpbnQ2NF90IG4sIGNvbnN0IGNoYXIgKmRvbmUpCitzdGF0aWMgdm9pZCBkaXNwbGF5KHN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MsIHVpbnQ2NF90IG4sIGNvbnN0IGNoYXIgKmRvbmUpCiB7Ci0JY29uc3QgY2hhciAqZW9sLCAqdHA7CisJY29uc3QgY2hhciAqdHA7CisJc3RydWN0IHN0cmJ1ZiAqY291bnRlcnNfc2IgPSAmcHJvZ3Jlc3MtPmNvdW50ZXJzX3NiOworCWludCBzaG93X3VwZGF0ZSA9IDA7CisJaW50IGxhc3RfY291bnRfbGVuID0gY291bnRlcnNfc2ItPmxlbjsKIAogCWlmIChwcm9ncmVzcy0+ZGVsYXkgJiYgKCFwcm9ncmVzc191cGRhdGUgfHwgLS1wcm9ncmVzcy0+ZGVsYXkpKQotCQlyZXR1cm4gMDsKKwkJcmV0dXJuOwogCiAJcHJvZ3Jlc3MtPmxhc3RfdmFsdWUgPSBuOwogCXRwID0gKHByb2dyZXNzLT50aHJvdWdocHV0KSA/IHByb2dyZXNzLT50aHJvdWdocHV0LT5kaXNwbGF5LmJ1ZiA6ICIiOwotCWVvbCA9IGRvbmUgPyBkb25lIDogIiAgIFxyIjsKIAlpZiAocHJvZ3Jlc3MtPnRvdGFsKSB7CiAJCXVuc2lnbmVkIHBlcmNlbnQgPSBuICogMTAwIC8gcHJvZ3Jlc3MtPnRvdGFsOwogCQlpZiAocGVyY2VudCAhPSBwcm9ncmVzcy0+bGFzdF9wZXJjZW50IHx8IHByb2dyZXNzX3VwZGF0ZSkgewogCQkJcHJvZ3Jlc3MtPmxhc3RfcGVyY2VudCA9IHBlcmNlbnQ7Ci0JCQlpZiAoaXNfZm9yZWdyb3VuZF9mZChmaWxlbm8oc3RkZXJyKSkgfHwgZG9uZSkgewotCQkJCWZwcmludGYoc3RkZXJyLCAiJXM6ICUzdSUlICglIlBSSXVNQVgiLyUiUFJJdU1BWCIpJXMlcyIsCi0JCQkJCXByb2dyZXNzLT50aXRsZSwgcGVyY2VudCwKLQkJCQkJKHVpbnRtYXhfdCluLCAodWludG1heF90KXByb2dyZXNzLT50b3RhbCwKLQkJCQkJdHAsIGVvbCk7Ci0JCQkJZmZsdXNoKHN0ZGVycik7Ci0JCQl9Ci0JCQlwcm9ncmVzc191cGRhdGUgPSAwOwotCQkJcmV0dXJuIDE7CisKKwkJCXN0cmJ1Zl9yZXNldChjb3VudGVyc19zYik7CisJCQlzdHJidWZfYWRkZihjb3VudGVyc19zYiwKKwkJCQkgICAgIiUzdSUlICglIlBSSXVNQVgiLyUiUFJJdU1BWCIpJXMiLCBwZXJjZW50LAorCQkJCSAgICAodWludG1heF90KW4sICh1aW50bWF4X3QpcHJvZ3Jlc3MtPnRvdGFsLAorCQkJCSAgICB0cCk7CisJCQlzaG93X3VwZGF0ZSA9IDE7CiAJCX0KIAl9IGVsc2UgaWYgKHByb2dyZXNzX3VwZGF0ZSkgeworCQlzdHJidWZfcmVzZXQoY291bnRlcnNfc2IpOworCQlzdHJidWZfYWRkZihjb3VudGVyc19zYiwgIiUiUFJJdU1BWCIlcyIsICh1aW50bWF4X3QpbiwgdHApOworCQlzaG93X3VwZGF0ZSA9IDE7CisJfQorCisJaWYgKHNob3dfdXBkYXRlKSB7CiAJCWlmIChpc19mb3JlZ3JvdW5kX2ZkKGZpbGVubyhzdGRlcnIpKSB8fCBkb25lKSB7Ci0JCQlmcHJpbnRmKHN0ZGVyciwgIiVzOiAlIlBSSXVNQVgiJXMlcyIsCi0JCQkJcHJvZ3Jlc3MtPnRpdGxlLCAodWludG1heF90KW4sIHRwLCBlb2wpOworCQkJY29uc3QgY2hhciAqZW9sID0gZG9uZSA/IGRvbmUgOiAiXHIiOworCQkJc2l6ZV90IGNsZWFyX2xlbiA9IGNvdW50ZXJzX3NiLT5sZW4gPCBsYXN0X2NvdW50X2xlbiA/CisJCQkJCWxhc3RfY291bnRfbGVuIC0gY291bnRlcnNfc2ItPmxlbiArIDEgOgorCQkJCQkwOworCQkJLyogVGhlICIrIDIiIGFjY291bnRzIGZvciB0aGUgIjogIi4gKi8KKwkJCXNpemVfdCBwcm9ncmVzc19saW5lX2xlbiA9IHByb2dyZXNzLT50aXRsZV9sZW4gKworCQkJCQkJY291bnRlcnNfc2ItPmxlbiArIDI7CisJCQlpbnQgY29scyA9IHRlcm1fY29sdW1ucygpOworCisJCQlpZiAocHJvZ3Jlc3MtPnNwbGl0KSB7CisJCQkJZnByaW50ZihzdGRlcnIsICIgICVzJSpzIiwgY291bnRlcnNfc2ItPmJ1ZiwKKwkJCQkJKGludCkgY2xlYXJfbGVuLCBlb2wpOworCQkJfSBlbHNlIGlmICghZG9uZSAmJiBjb2xzIDwgcHJvZ3Jlc3NfbGluZV9sZW4pIHsKKwkJCQljbGVhcl9sZW4gPSBwcm9ncmVzcy0+dGl0bGVfbGVuICsgMSA8IGNvbHMgPworCQkJCQkgICAgY29scyAtIHByb2dyZXNzLT50aXRsZV9sZW4gLSAxIDogMDsKKwkJCQlmcHJpbnRmKHN0ZGVyciwgIiVzOiUqc1xuICAlcyVzIiwKKwkJCQkJcHJvZ3Jlc3MtPnRpdGxlLCAoaW50KSBjbGVhcl9sZW4sICIiLAorCQkJCQljb3VudGVyc19zYi0+YnVmLCBlb2wpOworCQkJCXByb2dyZXNzLT5zcGxpdCA9IDE7CisJCQl9IGVsc2UgeworCQkJCWZwcmludGYoc3RkZXJyLCAiJXM6ICVzJSpzIiwgcHJvZ3Jlc3MtPnRpdGxlLAorCQkJCQljb3VudGVyc19zYi0+YnVmLCAoaW50KSBjbGVhcl9sZW4sIGVvbCk7CisJCQl9CiAJCQlmZmx1c2goc3RkZXJyKTsKIAkJfQogCQlwcm9ncmVzc191cGRhdGUgPSAwOwotCQlyZXR1cm4gMTsKIAl9Ci0KLQlyZXR1cm4gMDsKIH0KIAogc3RhdGljIHZvaWQgdGhyb3VnaHB1dF9zdHJpbmcoc3RydWN0IHN0cmJ1ZiAqYnVmLCB1aW50NjRfdCB0b3RhbCwKQEAgLTEyMiw4ICsxNzIsMTUgQEAKIAlzdHJidWZfYWRkc3RyKGJ1ZiwgIiwgIik7CiAJc3RyYnVmX2h1bWFuaXNlX2J5dGVzKGJ1ZiwgdG90YWwpOwogCXN0cmJ1Zl9hZGRzdHIoYnVmLCAiIHwgIik7Ci0Jc3RyYnVmX2h1bWFuaXNlX2J5dGVzKGJ1ZiwgcmF0ZSAqIDEwMjQpOwotCXN0cmJ1Zl9hZGRzdHIoYnVmLCAiL3MiKTsKKwlzdHJidWZfaHVtYW5pc2VfcmF0ZShidWYsIHJhdGUgKiAxMDI0KTsKK30KKworc3RhdGljIHVpbnQ2NF90IHByb2dyZXNzX2dldG5hbm90aW1lKHN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MpCit7CisJaWYgKHByb2dyZXNzX3Rlc3RpbmcpCisJCXJldHVybiBwcm9ncmVzcy0+c3RhcnRfbnMgKyBwcm9ncmVzc190ZXN0X25zOworCWVsc2UKKwkJcmV0dXJuIGdldG5hbm90aW1lKCk7CiB9CiAKIHZvaWQgZGlzcGxheV90aHJvdWdocHV0KHN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MsIHVpbnQ2NF90IHRvdGFsKQpAQCAtMTM2LDE1ICsxOTMsMTMgQEAKIAkJcmV0dXJuOwogCXRwID0gcHJvZ3Jlc3MtPnRocm91Z2hwdXQ7CiAKLQlub3dfbnMgPSBnZXRuYW5vdGltZSgpOworCW5vd19ucyA9IHByb2dyZXNzX2dldG5hbm90aW1lKHByb2dyZXNzKTsKIAogCWlmICghdHApIHsKLQkJcHJvZ3Jlc3MtPnRocm91Z2hwdXQgPSB0cCA9IGNhbGxvYygxLCBzaXplb2YoKnRwKSk7Ci0JCWlmICh0cCkgewotCQkJdHAtPnByZXZfdG90YWwgPSB0cC0+Y3Vycl90b3RhbCA9IHRvdGFsOwotCQkJdHAtPnByZXZfbnMgPSBub3dfbnM7Ci0JCQlzdHJidWZfaW5pdCgmdHAtPmRpc3BsYXksIDApOwotCQl9CisJCXByb2dyZXNzLT50aHJvdWdocHV0ID0gdHAgPSB4Y2FsbG9jKDEsIHNpemVvZigqdHApKTsKKwkJdHAtPnByZXZfdG90YWwgPSB0cC0+Y3Vycl90b3RhbCA9IHRvdGFsOworCQl0cC0+cHJldl9ucyA9IG5vd19uczsKKwkJc3RyYnVmX2luaXQoJnRwLT5kaXNwbGF5LCAwKTsKIAkJcmV0dXJuOwogCX0KIAl0cC0+Y3Vycl90b3RhbCA9IHRvdGFsOwpAQCAtMTg4LDQ0ICsyNDMsODMgQEAKIAkJZGlzcGxheShwcm9ncmVzcywgcHJvZ3Jlc3MtPmxhc3RfdmFsdWUsIE5VTEwpOwogfQogCi1pbnQgZGlzcGxheV9wcm9ncmVzcyhzdHJ1Y3QgcHJvZ3Jlc3MgKnByb2dyZXNzLCB1aW50NjRfdCBuKQordm9pZCBkaXNwbGF5X3Byb2dyZXNzKHN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MsIHVpbnQ2NF90IG4pCiB7Ci0JcmV0dXJuIHByb2dyZXNzID8gZGlzcGxheShwcm9ncmVzcywgbiwgTlVMTCkgOiAwOworCWlmIChwcm9ncmVzcykKKwkJZGlzcGxheShwcm9ncmVzcywgbiwgTlVMTCk7CiB9CiAKIHN0YXRpYyBzdHJ1Y3QgcHJvZ3Jlc3MgKnN0YXJ0X3Byb2dyZXNzX2RlbGF5KGNvbnN0IGNoYXIgKnRpdGxlLCB1aW50NjRfdCB0b3RhbCwKLQkJCQkJICAgICB1bnNpZ25lZCBkZWxheSkKKwkJCQkJICAgICB1bnNpZ25lZCBkZWxheSwgdW5zaWduZWQgc3BhcnNlKQogewotCXN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MgPSBtYWxsb2Moc2l6ZW9mKCpwcm9ncmVzcykpOwotCWlmICghcHJvZ3Jlc3MpIHsKLQkJLyogdW5saWtlbHksIGJ1dCBoZXJlJ3MgYSBnb29kIGZhbGxiYWNrICovCi0JCWZwcmludGYoc3RkZXJyLCAiJXMuLi5cbiIsIHRpdGxlKTsKLQkJZmZsdXNoKHN0ZGVycik7Ci0JCXJldHVybiBOVUxMOwotCX0KKwlzdHJ1Y3QgcHJvZ3Jlc3MgKnByb2dyZXNzID0geG1hbGxvYyhzaXplb2YoKnByb2dyZXNzKSk7CiAJcHJvZ3Jlc3MtPnRpdGxlID0gdGl0bGU7CiAJcHJvZ3Jlc3MtPnRvdGFsID0gdG90YWw7CiAJcHJvZ3Jlc3MtPmxhc3RfdmFsdWUgPSAtMTsKIAlwcm9ncmVzcy0+bGFzdF9wZXJjZW50ID0gLTE7CiAJcHJvZ3Jlc3MtPmRlbGF5ID0gZGVsYXk7CisJcHJvZ3Jlc3MtPnNwYXJzZSA9IHNwYXJzZTsKIAlwcm9ncmVzcy0+dGhyb3VnaHB1dCA9IE5VTEw7CiAJcHJvZ3Jlc3MtPnN0YXJ0X25zID0gZ2V0bmFub3RpbWUoKTsKKwlzdHJidWZfaW5pdCgmcHJvZ3Jlc3MtPmNvdW50ZXJzX3NiLCAwKTsKKwlwcm9ncmVzcy0+dGl0bGVfbGVuID0gdXRmOF9zdHJ3aWR0aCh0aXRsZSk7CisJcHJvZ3Jlc3MtPnNwbGl0ID0gMDsKIAlzZXRfcHJvZ3Jlc3Nfc2lnbmFsKCk7CiAJcmV0dXJuIHByb2dyZXNzOwogfQogCitzdGF0aWMgaW50IGdldF9kZWZhdWx0X2RlbGF5KHZvaWQpCit7CisJc3RhdGljIGludCBkZWxheV9pbl9zZWNzID0gLTE7CisKKwlpZiAoZGVsYXlfaW5fc2VjcyA8IDApCisJCWRlbGF5X2luX3NlY3MgPSBnaXRfZW52X3Vsb25nKCJHSVRfUFJPR1JFU1NfREVMQVkiLCAyKTsKKworCXJldHVybiBkZWxheV9pbl9zZWNzOworfQorCiBzdHJ1Y3QgcHJvZ3Jlc3MgKnN0YXJ0X2RlbGF5ZWRfcHJvZ3Jlc3MoY29uc3QgY2hhciAqdGl0bGUsIHVpbnQ2NF90IHRvdGFsKQogewotCXJldHVybiBzdGFydF9wcm9ncmVzc19kZWxheSh0aXRsZSwgdG90YWwsIDIpOworCXJldHVybiBzdGFydF9wcm9ncmVzc19kZWxheSh0aXRsZSwgdG90YWwsIGdldF9kZWZhdWx0X2RlbGF5KCksIDApOwogfQogCiBzdHJ1Y3QgcHJvZ3Jlc3MgKnN0YXJ0X3Byb2dyZXNzKGNvbnN0IGNoYXIgKnRpdGxlLCB1aW50NjRfdCB0b3RhbCkKIHsKLQlyZXR1cm4gc3RhcnRfcHJvZ3Jlc3NfZGVsYXkodGl0bGUsIHRvdGFsLCAwKTsKKwlyZXR1cm4gc3RhcnRfcHJvZ3Jlc3NfZGVsYXkodGl0bGUsIHRvdGFsLCAwLCAwKTsKK30KKworLyoKKyAqIEhlcmUgInNwYXJzZSIgbWVhbnMgdGhhdCB0aGUgY2FsbGVyIG1pZ2h0IHVzZSBzb21lIHNhbXBsaW5nIGNyaXRlcmlhIHRvCisgKiBkZWNpZGUgd2hlbiB0byBjYWxsIGRpc3BsYXlfcHJvZ3Jlc3MoKSByYXRoZXIgdGhhbiBjYWxsaW5nIGl0IGZvciBldmVyeQorICogaW50ZWdlciB2YWx1ZSBpblswIC4uIHRvdGFsKS4gIEluIHBhcnRpY3VsYXIsIHRoZSBjYWxsZXIgbWlnaHQgbm90IGNhbGwKKyAqIGRpc3BsYXlfcHJvZ3Jlc3MoKSBmb3IgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIHJhbmdlLgorICoKKyAqIFdoZW4gInNwYXJzZSIgaXMgc2V0LCBzdG9wX3Byb2dyZXNzKCkgd2lsbCBhdXRvbWF0aWNhbGx5IGZvcmNlIHRoZSBkb25lCisgKiBtZXNzYWdlIHRvIHNob3cgMTAwJS4KKyAqLworc3RydWN0IHByb2dyZXNzICpzdGFydF9zcGFyc2VfcHJvZ3Jlc3MoY29uc3QgY2hhciAqdGl0bGUsIHVpbnQ2NF90IHRvdGFsKQoreworCXJldHVybiBzdGFydF9wcm9ncmVzc19kZWxheSh0aXRsZSwgdG90YWwsIDAsIDEpOworfQorCitzdHJ1Y3QgcHJvZ3Jlc3MgKnN0YXJ0X2RlbGF5ZWRfc3BhcnNlX3Byb2dyZXNzKGNvbnN0IGNoYXIgKnRpdGxlLAorCQkJCQkgICAgICAgdWludDY0X3QgdG90YWwpCit7CisJcmV0dXJuIHN0YXJ0X3Byb2dyZXNzX2RlbGF5KHRpdGxlLCB0b3RhbCwgZ2V0X2RlZmF1bHRfZGVsYXkoKSwgMSk7Cit9CisKK3N0YXRpYyB2b2lkIGZpbmlzaF9pZl9zcGFyc2Uoc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcykKK3sKKwlpZiAocHJvZ3Jlc3MgJiYKKwkgICAgcHJvZ3Jlc3MtPnNwYXJzZSAmJgorCSAgICBwcm9ncmVzcy0+bGFzdF92YWx1ZSAhPSBwcm9ncmVzcy0+dG90YWwpCisJCWRpc3BsYXlfcHJvZ3Jlc3MocHJvZ3Jlc3MsIHByb2dyZXNzLT50b3RhbCk7CiB9CiAKIHZvaWQgc3RvcF9wcm9ncmVzcyhzdHJ1Y3QgcHJvZ3Jlc3MgKipwX3Byb2dyZXNzKQogeworCWZpbmlzaF9pZl9zcGFyc2UoKnBfcHJvZ3Jlc3MpOworCiAJc3RvcF9wcm9ncmVzc19tc2cocF9wcm9ncmVzcywgXygiZG9uZSIpKTsKIH0KIApAQCAtMjQxLDcgKzMzNSw3IEBACiAJCXN0cnVjdCB0aHJvdWdocHV0ICp0cCA9IHByb2dyZXNzLT50aHJvdWdocHV0OwogCiAJCWlmICh0cCkgewotCQkJdWludDY0X3Qgbm93X25zID0gZ2V0bmFub3RpbWUoKTsKKwkJCXVpbnQ2NF90IG5vd19ucyA9IHByb2dyZXNzX2dldG5hbm90aW1lKHByb2dyZXNzKTsKIAkJCXVuc2lnbmVkIGludCBtaXNlY3MsIHJhdGU7CiAJCQltaXNlY3MgPSAoKG5vd19ucyAtIHByb2dyZXNzLT5zdGFydF9ucykgKiA0Mzk4KSA+PiAzMjsKIAkJCXJhdGUgPSB0cC0+Y3Vycl90b3RhbCAvIChtaXNlY3MgPyBtaXNlY3MgOiAxKTsKQEAgLTI1Myw2ICszNDcsNyBAQAogCQlmcmVlKGJ1Zik7CiAJfQogCWNsZWFyX3Byb2dyZXNzX3NpZ25hbCgpOworCXN0cmJ1Zl9yZWxlYXNlKCZwcm9ncmVzcy0+Y291bnRlcnNfc2IpOwogCWlmIChwcm9ncmVzcy0+dGhyb3VnaHB1dCkKIAkJc3RyYnVmX3JlbGVhc2UoJnByb2dyZXNzLT50aHJvdWdocHV0LT5kaXNwbGF5KTsKIAlmcmVlKHByb2dyZXNzLT50aHJvdWdocHV0KTsKZGlmZiAtLWdpdCBhL3Byb2dyZXNzLmggYi9wcm9ncmVzcy5oCmluZGV4IDcwYTRkNGEuLjg0NzMzODkgMTAwNjQ0Ci0tLSBhL3Byb2dyZXNzLmgKKysrIGIvcHJvZ3Jlc3MuaApAQCAtNCw5ICs0LDEyIEBACiBzdHJ1Y3QgcHJvZ3Jlc3M7CiAKIHZvaWQgZGlzcGxheV90aHJvdWdocHV0KHN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MsIHVpbnQ2NF90IHRvdGFsKTsKLWludCBkaXNwbGF5X3Byb2dyZXNzKHN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MsIHVpbnQ2NF90IG4pOwordm9pZCBkaXNwbGF5X3Byb2dyZXNzKHN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MsIHVpbnQ2NF90IG4pOwogc3RydWN0IHByb2dyZXNzICpzdGFydF9wcm9ncmVzcyhjb25zdCBjaGFyICp0aXRsZSwgdWludDY0X3QgdG90YWwpOworc3RydWN0IHByb2dyZXNzICpzdGFydF9zcGFyc2VfcHJvZ3Jlc3MoY29uc3QgY2hhciAqdGl0bGUsIHVpbnQ2NF90IHRvdGFsKTsKIHN0cnVjdCBwcm9ncmVzcyAqc3RhcnRfZGVsYXllZF9wcm9ncmVzcyhjb25zdCBjaGFyICp0aXRsZSwgdWludDY0X3QgdG90YWwpOworc3RydWN0IHByb2dyZXNzICpzdGFydF9kZWxheWVkX3NwYXJzZV9wcm9ncmVzcyhjb25zdCBjaGFyICp0aXRsZSwKKwkJCQkJICAgICAgIHVpbnQ2NF90IHRvdGFsKTsKIHZvaWQgc3RvcF9wcm9ncmVzcyhzdHJ1Y3QgcHJvZ3Jlc3MgKipwcm9ncmVzcyk7CiB2b2lkIHN0b3BfcHJvZ3Jlc3NfbXNnKHN0cnVjdCBwcm9ncmVzcyAqKnByb2dyZXNzLCBjb25zdCBjaGFyICptc2cpOwogCmRpZmYgLS1naXQgYS9wcm9taXNvci1yZW1vdGUuYyBiL3Byb21pc29yLXJlbW90ZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlmMzM4YzkKLS0tIC9kZXYvbnVsbAorKysgYi9wcm9taXNvci1yZW1vdGUuYwpAQCAtMCwwICsxLDI2NSBAQAorI2luY2x1ZGUgImNhY2hlLmgiCisjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCisjaW5jbHVkZSAicHJvbWlzb3ItcmVtb3RlLmgiCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAidHJhbnNwb3J0LmgiCisKK3N0YXRpYyBjaGFyICpyZXBvc2l0b3J5X2Zvcm1hdF9wYXJ0aWFsX2Nsb25lOworc3RhdGljIGNvbnN0IGNoYXIgKmNvcmVfcGFydGlhbF9jbG9uZV9maWx0ZXJfZGVmYXVsdDsKKwordm9pZCBzZXRfcmVwb3NpdG9yeV9mb3JtYXRfcGFydGlhbF9jbG9uZShjaGFyICpwYXJ0aWFsX2Nsb25lKQoreworCXJlcG9zaXRvcnlfZm9ybWF0X3BhcnRpYWxfY2xvbmUgPSB4c3RyZHVwX29yX251bGwocGFydGlhbF9jbG9uZSk7Cit9CisKK3N0YXRpYyBpbnQgZmV0Y2hfcmVmcyhjb25zdCBjaGFyICpyZW1vdGVfbmFtZSwgc3RydWN0IHJlZiAqcmVmKQoreworCXN0cnVjdCByZW1vdGUgKnJlbW90ZTsKKwlzdHJ1Y3QgdHJhbnNwb3J0ICp0cmFuc3BvcnQ7CisJaW50IHJlczsKKworCXJlbW90ZSA9IHJlbW90ZV9nZXQocmVtb3RlX25hbWUpOworCWlmICghcmVtb3RlLT51cmxbMF0pCisJCWRpZShfKCJSZW1vdGUgd2l0aCBubyBVUkwiKSk7CisJdHJhbnNwb3J0ID0gdHJhbnNwb3J0X2dldChyZW1vdGUsIHJlbW90ZS0+dXJsWzBdKTsKKworCXRyYW5zcG9ydF9zZXRfb3B0aW9uKHRyYW5zcG9ydCwgVFJBTlNfT1BUX0ZST01fUFJPTUlTT1IsICIxIik7CisJdHJhbnNwb3J0X3NldF9vcHRpb24odHJhbnNwb3J0LCBUUkFOU19PUFRfTk9fREVQRU5ERU5UUywgIjEiKTsKKwlyZXMgPSB0cmFuc3BvcnRfZmV0Y2hfcmVmcyh0cmFuc3BvcnQsIHJlZik7CisKKwlyZXR1cm4gcmVzOworfQorCitzdGF0aWMgaW50IGZldGNoX29iamVjdHMoY29uc3QgY2hhciAqcmVtb3RlX25hbWUsCisJCQkgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkcywKKwkJCSBpbnQgb2lkX25yKQoreworCXN0cnVjdCByZWYgKnJlZiA9IE5VTEw7CisJaW50IGk7CisKKwlmb3IgKGkgPSAwOyBpIDwgb2lkX25yOyBpKyspIHsKKwkJc3RydWN0IHJlZiAqbmV3X3JlZiA9IGFsbG9jX3JlZihvaWRfdG9faGV4KCZvaWRzW2ldKSk7CisJCW9pZGNweSgmbmV3X3JlZi0+b2xkX29pZCwgJm9pZHNbaV0pOworCQluZXdfcmVmLT5leGFjdF9vaWQgPSAxOworCQluZXdfcmVmLT5uZXh0ID0gcmVmOworCQlyZWYgPSBuZXdfcmVmOworCX0KKwlyZXR1cm4gZmV0Y2hfcmVmcyhyZW1vdGVfbmFtZSwgcmVmKTsKK30KKworc3RhdGljIHN0cnVjdCBwcm9taXNvcl9yZW1vdGUgKnByb21pc29yczsKK3N0YXRpYyBzdHJ1Y3QgcHJvbWlzb3JfcmVtb3RlICoqcHJvbWlzb3JzX3RhaWwgPSAmcHJvbWlzb3JzOworCitzdGF0aWMgc3RydWN0IHByb21pc29yX3JlbW90ZSAqcHJvbWlzb3JfcmVtb3RlX25ldyhjb25zdCBjaGFyICpyZW1vdGVfbmFtZSkKK3sKKwlzdHJ1Y3QgcHJvbWlzb3JfcmVtb3RlICpyOworCisJaWYgKCpyZW1vdGVfbmFtZSA9PSAnLycpIHsKKwkJd2FybmluZyhfKCJwcm9taXNvciByZW1vdGUgbmFtZSBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIiksCisJCQlyZW1vdGVfbmFtZSk7CisJCXJldHVybiBOVUxMOworCX0KKworCUZMRVhfQUxMT0NfU1RSKHIsIG5hbWUsIHJlbW90ZV9uYW1lKTsKKworCSpwcm9taXNvcnNfdGFpbCA9IHI7CisJcHJvbWlzb3JzX3RhaWwgPSAmci0+bmV4dDsKKworCXJldHVybiByOworfQorCitzdGF0aWMgc3RydWN0IHByb21pc29yX3JlbW90ZSAqcHJvbWlzb3JfcmVtb3RlX2xvb2t1cChjb25zdCBjaGFyICpyZW1vdGVfbmFtZSwKKwkJCQkJCSAgICAgIHN0cnVjdCBwcm9taXNvcl9yZW1vdGUgKipwcmV2aW91cykKK3sKKwlzdHJ1Y3QgcHJvbWlzb3JfcmVtb3RlICpyLCAqcDsKKworCWZvciAocCA9IE5VTEwsIHIgPSBwcm9taXNvcnM7IHI7IHAgPSByLCByID0gci0+bmV4dCkKKwkJaWYgKCFzdHJjbXAoci0+bmFtZSwgcmVtb3RlX25hbWUpKSB7CisJCQlpZiAocHJldmlvdXMpCisJCQkJKnByZXZpb3VzID0gcDsKKwkJCXJldHVybiByOworCQl9CisKKwlyZXR1cm4gTlVMTDsKK30KKworc3RhdGljIHZvaWQgcHJvbWlzb3JfcmVtb3RlX21vdmVfdG9fdGFpbChzdHJ1Y3QgcHJvbWlzb3JfcmVtb3RlICpyLAorCQkJCQkgc3RydWN0IHByb21pc29yX3JlbW90ZSAqcHJldmlvdXMpCit7CisJaWYgKHItPm5leHQgPT0gTlVMTCkKKwkJcmV0dXJuOworCisJaWYgKHByZXZpb3VzKQorCQlwcmV2aW91cy0+bmV4dCA9IHItPm5leHQ7CisJZWxzZQorCQlwcm9taXNvcnMgPSByLT5uZXh0ID8gci0+bmV4dCA6IHI7CisJci0+bmV4dCA9IE5VTEw7CisJKnByb21pc29yc190YWlsID0gcjsKKwlwcm9taXNvcnNfdGFpbCA9ICZyLT5uZXh0OworfQorCitzdGF0aWMgaW50IHByb21pc29yX3JlbW90ZV9jb25maWcoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqZGF0YSkKK3sKKwljb25zdCBjaGFyICpuYW1lOworCWludCBuYW1lbGVuOworCWNvbnN0IGNoYXIgKnN1YmtleTsKKworCWlmICghc3RyY21wKHZhciwgImNvcmUucGFydGlhbGNsb25lZmlsdGVyIikpCisJCXJldHVybiBnaXRfY29uZmlnX3N0cmluZygmY29yZV9wYXJ0aWFsX2Nsb25lX2ZpbHRlcl9kZWZhdWx0LAorCQkJCQkgdmFyLCB2YWx1ZSk7CisKKwlpZiAocGFyc2VfY29uZmlnX2tleSh2YXIsICJyZW1vdGUiLCAmbmFtZSwgJm5hbWVsZW4sICZzdWJrZXkpIDwgMCkKKwkJcmV0dXJuIDA7CisKKwlpZiAoIXN0cmNtcChzdWJrZXksICJwcm9taXNvciIpKSB7CisJCWNoYXIgKnJlbW90ZV9uYW1lOworCisJCWlmICghZ2l0X2NvbmZpZ19ib29sKHZhciwgdmFsdWUpKQorCQkJcmV0dXJuIDA7CisKKwkJcmVtb3RlX25hbWUgPSB4bWVtZHVweihuYW1lLCBuYW1lbGVuKTsKKworCQlpZiAoIXByb21pc29yX3JlbW90ZV9sb29rdXAocmVtb3RlX25hbWUsIE5VTEwpKQorCQkJcHJvbWlzb3JfcmVtb3RlX25ldyhyZW1vdGVfbmFtZSk7CisKKwkJZnJlZShyZW1vdGVfbmFtZSk7CisJCXJldHVybiAwOworCX0KKwlpZiAoIXN0cmNtcChzdWJrZXksICJwYXJ0aWFsY2xvbmVmaWx0ZXIiKSkgeworCQlzdHJ1Y3QgcHJvbWlzb3JfcmVtb3RlICpyOworCQljaGFyICpyZW1vdGVfbmFtZSA9IHhtZW1kdXB6KG5hbWUsIG5hbWVsZW4pOworCisJCXIgPSBwcm9taXNvcl9yZW1vdGVfbG9va3VwKHJlbW90ZV9uYW1lLCBOVUxMKTsKKwkJaWYgKCFyKQorCQkJciA9IHByb21pc29yX3JlbW90ZV9uZXcocmVtb3RlX25hbWUpOworCisJCWZyZWUocmVtb3RlX25hbWUpOworCisJCWlmICghcikKKwkJCXJldHVybiAwOworCisJCXJldHVybiBnaXRfY29uZmlnX3N0cmluZygmci0+cGFydGlhbF9jbG9uZV9maWx0ZXIsIHZhciwgdmFsdWUpOworCX0KKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGluaXRpYWxpemVkOworCitzdGF0aWMgdm9pZCBwcm9taXNvcl9yZW1vdGVfaW5pdCh2b2lkKQoreworCWlmIChpbml0aWFsaXplZCkKKwkJcmV0dXJuOworCWluaXRpYWxpemVkID0gMTsKKworCWdpdF9jb25maWcocHJvbWlzb3JfcmVtb3RlX2NvbmZpZywgTlVMTCk7CisKKwlpZiAocmVwb3NpdG9yeV9mb3JtYXRfcGFydGlhbF9jbG9uZSkgeworCQlzdHJ1Y3QgcHJvbWlzb3JfcmVtb3RlICpvLCAqcHJldmlvdXM7CisKKwkJbyA9IHByb21pc29yX3JlbW90ZV9sb29rdXAocmVwb3NpdG9yeV9mb3JtYXRfcGFydGlhbF9jbG9uZSwKKwkJCQkJICAgJnByZXZpb3VzKTsKKwkJaWYgKG8pCisJCQlwcm9taXNvcl9yZW1vdGVfbW92ZV90b190YWlsKG8sIHByZXZpb3VzKTsKKwkJZWxzZQorCQkJcHJvbWlzb3JfcmVtb3RlX25ldyhyZXBvc2l0b3J5X2Zvcm1hdF9wYXJ0aWFsX2Nsb25lKTsKKwl9Cit9CisKK3N0YXRpYyB2b2lkIHByb21pc29yX3JlbW90ZV9jbGVhcih2b2lkKQoreworCXdoaWxlIChwcm9taXNvcnMpIHsKKwkJc3RydWN0IHByb21pc29yX3JlbW90ZSAqciA9IHByb21pc29yczsKKwkJcHJvbWlzb3JzID0gcHJvbWlzb3JzLT5uZXh0OworCQlmcmVlKHIpOworCX0KKworCXByb21pc29yc190YWlsID0gJnByb21pc29yczsKK30KKwordm9pZCBwcm9taXNvcl9yZW1vdGVfcmVpbml0KHZvaWQpCit7CisJaW5pdGlhbGl6ZWQgPSAwOworCXByb21pc29yX3JlbW90ZV9jbGVhcigpOworCXByb21pc29yX3JlbW90ZV9pbml0KCk7Cit9CisKK3N0cnVjdCBwcm9taXNvcl9yZW1vdGUgKnByb21pc29yX3JlbW90ZV9maW5kKGNvbnN0IGNoYXIgKnJlbW90ZV9uYW1lKQoreworCXByb21pc29yX3JlbW90ZV9pbml0KCk7CisKKwlpZiAoIXJlbW90ZV9uYW1lKQorCQlyZXR1cm4gcHJvbWlzb3JzOworCisJcmV0dXJuIHByb21pc29yX3JlbW90ZV9sb29rdXAocmVtb3RlX25hbWUsIE5VTEwpOworfQorCitpbnQgaGFzX3Byb21pc29yX3JlbW90ZSh2b2lkKQoreworCXJldHVybiAhIXByb21pc29yX3JlbW90ZV9maW5kKE5VTEwpOworfQorCitzdGF0aWMgaW50IHJlbW92ZV9mZXRjaGVkX29pZHMoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkgICAgICAgc3RydWN0IG9iamVjdF9pZCAqKm9pZHMsCisJCQkgICAgICAgaW50IG9pZF9uciwgaW50IHRvX2ZyZWUpCit7CisJaW50IGksIHJlbWFpbmluZ19uciA9IDA7CisJaW50ICpyZW1haW5pbmcgPSB4Y2FsbG9jKG9pZF9uciwgc2l6ZW9mKCpyZW1haW5pbmcpKTsKKwlzdHJ1Y3Qgb2JqZWN0X2lkICpvbGRfb2lkcyA9ICpvaWRzOworCXN0cnVjdCBvYmplY3RfaWQgKm5ld19vaWRzOworCisJZm9yIChpID0gMDsgaSA8IG9pZF9ucjsgaSsrKQorCQlpZiAob2lkX29iamVjdF9pbmZvX2V4dGVuZGVkKHJlcG8sICZvbGRfb2lkc1tpXSwgTlVMTCwKKwkJCQkJICAgICBPQkpFQ1RfSU5GT19TS0lQX0ZFVENIX09CSkVDVCkpIHsKKwkJCXJlbWFpbmluZ1tpXSA9IDE7CisJCQlyZW1haW5pbmdfbnIrKzsKKwkJfQorCisJaWYgKHJlbWFpbmluZ19ucikgeworCQlpbnQgaiA9IDA7CisJCW5ld19vaWRzID0geGNhbGxvYyhyZW1haW5pbmdfbnIsIHNpemVvZigqbmV3X29pZHMpKTsKKwkJZm9yIChpID0gMDsgaSA8IG9pZF9ucjsgaSsrKQorCQkJaWYgKHJlbWFpbmluZ1tpXSkKKwkJCQlvaWRjcHkoJm5ld19vaWRzW2orK10sICZvbGRfb2lkc1tpXSk7CisJCSpvaWRzID0gbmV3X29pZHM7CisJCWlmICh0b19mcmVlKQorCQkJZnJlZShvbGRfb2lkcyk7CisJfQorCisJZnJlZShyZW1haW5pbmcpOworCisJcmV0dXJuIHJlbWFpbmluZ19ucjsKK30KKworaW50IHByb21pc29yX3JlbW90ZV9nZXRfZGlyZWN0KHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkJICAgICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZHMsCisJCQkgICAgICAgaW50IG9pZF9ucikKK3sKKwlzdHJ1Y3QgcHJvbWlzb3JfcmVtb3RlICpyOworCXN0cnVjdCBvYmplY3RfaWQgKnJlbWFpbmluZ19vaWRzID0gKHN0cnVjdCBvYmplY3RfaWQgKilvaWRzOworCWludCByZW1haW5pbmdfbnIgPSBvaWRfbnI7CisJaW50IHRvX2ZyZWUgPSAwOworCWludCByZXMgPSAtMTsKKworCXByb21pc29yX3JlbW90ZV9pbml0KCk7CisKKwlmb3IgKHIgPSBwcm9taXNvcnM7IHI7IHIgPSByLT5uZXh0KSB7CisJCWlmIChmZXRjaF9vYmplY3RzKHItPm5hbWUsIHJlbWFpbmluZ19vaWRzLCByZW1haW5pbmdfbnIpIDwgMCkgeworCQkJaWYgKHJlbWFpbmluZ19uciA9PSAxKQorCQkJCWNvbnRpbnVlOworCQkJcmVtYWluaW5nX25yID0gcmVtb3ZlX2ZldGNoZWRfb2lkcyhyZXBvLCAmcmVtYWluaW5nX29pZHMsCisJCQkJCQkJIHJlbWFpbmluZ19uciwgdG9fZnJlZSk7CisJCQlpZiAocmVtYWluaW5nX25yKSB7CisJCQkJdG9fZnJlZSA9IDE7CisJCQkJY29udGludWU7CisJCQl9CisJCX0KKwkJcmVzID0gMDsKKwkJYnJlYWs7CisJfQorCisJaWYgKHRvX2ZyZWUpCisJCWZyZWUocmVtYWluaW5nX29pZHMpOworCisJcmV0dXJuIHJlczsKK30KZGlmZiAtLWdpdCBhL3Byb21pc29yLXJlbW90ZS5oIGIvcHJvbWlzb3ItcmVtb3RlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzM3YmFjMwotLS0gL2Rldi9udWxsCisrKyBiL3Byb21pc29yLXJlbW90ZS5oCkBAIC0wLDAgKzEsMzMgQEAKKyNpZm5kZWYgUFJPTUlTT1JfUkVNT1RFX0gKKyNkZWZpbmUgUFJPTUlTT1JfUkVNT1RFX0gKKworI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKKworc3RydWN0IG9iamVjdF9pZDsKKworLyoKKyAqIFByb21pc29yIHJlbW90ZSBsaW5rZWQgbGlzdAorICoKKyAqIEluZm9ybWF0aW9uIGluIGl0cyBmaWVsZHMgY29tZSBmcm9tIHJlbW90ZS5YWFggY29uZmlnIGVudHJpZXMgb3IKKyAqIGZyb20gZXh0ZW5zaW9ucy5wYXJ0aWFsY2xvbmUgb3IgY29yZS5wYXJ0aWFsY2xvbmVmaWx0ZXIuCisgKi8KK3N0cnVjdCBwcm9taXNvcl9yZW1vdGUgeworCXN0cnVjdCBwcm9taXNvcl9yZW1vdGUgKm5leHQ7CisJY29uc3QgY2hhciAqcGFydGlhbF9jbG9uZV9maWx0ZXI7CisJY29uc3QgY2hhciBuYW1lW0ZMRVhfQVJSQVldOworfTsKKwordm9pZCBwcm9taXNvcl9yZW1vdGVfcmVpbml0KHZvaWQpOworc3RydWN0IHByb21pc29yX3JlbW90ZSAqcHJvbWlzb3JfcmVtb3RlX2ZpbmQoY29uc3QgY2hhciAqcmVtb3RlX25hbWUpOworaW50IGhhc19wcm9taXNvcl9yZW1vdGUodm9pZCk7CitpbnQgcHJvbWlzb3JfcmVtb3RlX2dldF9kaXJlY3Qoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkgICAgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkcywKKwkJCSAgICAgICBpbnQgb2lkX25yKTsKKworLyoKKyAqIFRoaXMgc2hvdWxkIGJlIHVzZWQgb25seSBvbmNlIGZyb20gc2V0dXAuYyB0byBzZXQgdGhlIHZhbHVlIHdlIGdvdAorICogZnJvbSB0aGUgZXh0ZW5zaW9ucy5wYXJ0aWFsY2xvbmUgY29uZmlnIG9wdGlvbi4KKyAqLwordm9pZCBzZXRfcmVwb3NpdG9yeV9mb3JtYXRfcGFydGlhbF9jbG9uZShjaGFyICpwYXJ0aWFsX2Nsb25lKTsKKworI2VuZGlmIC8qIFBST01JU09SX1JFTU9URV9IICovCmRpZmYgLS1naXQgYS9wcm90b2NvbC5jIGIvcHJvdG9jb2wuYwppbmRleCA1ZTYzNjc4Li44MDNiZWY1IDEwMDY0NAotLS0gYS9wcm90b2NvbC5jCisrKyBiL3Byb3RvY29sLmMKQEAgLTE3LDYgKzE3LDkgQEAKIGVudW0gcHJvdG9jb2xfdmVyc2lvbiBnZXRfcHJvdG9jb2xfdmVyc2lvbl9jb25maWcodm9pZCkKIHsKIAljb25zdCBjaGFyICp2YWx1ZTsKKwljb25zdCBjaGFyICpnaXRfdGVzdF9rID0gIkdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT04iOworCWNvbnN0IGNoYXIgKmdpdF90ZXN0X3Y7CisKIAlpZiAoIWdpdF9jb25maWdfZ2V0X3N0cmluZ19jb25zdCgicHJvdG9jb2wudmVyc2lvbiIsICZ2YWx1ZSkpIHsKIAkJZW51bSBwcm90b2NvbF92ZXJzaW9uIHZlcnNpb24gPSBwYXJzZV9wcm90b2NvbF92ZXJzaW9uKHZhbHVlKTsKIApAQCAtMjcsNyArMzAsMTYgQEAKIAkJcmV0dXJuIHZlcnNpb247CiAJfQogCi0JcmV0dXJuIHByb3RvY29sX3YwOworCWdpdF90ZXN0X3YgPSBnZXRlbnYoZ2l0X3Rlc3Rfayk7CisJaWYgKGdpdF90ZXN0X3YgJiYgKmdpdF90ZXN0X3YpIHsKKwkJZW51bSBwcm90b2NvbF92ZXJzaW9uIGVudiA9IHBhcnNlX3Byb3RvY29sX3ZlcnNpb24oZ2l0X3Rlc3Rfdik7CisKKwkJaWYgKGVudiA9PSBwcm90b2NvbF91bmtub3duX3ZlcnNpb24pCisJCQlkaWUoInVua25vd24gdmFsdWUgZm9yICVzOiAlcyIsIGdpdF90ZXN0X2ssIGdpdF90ZXN0X3YpOworCQlyZXR1cm4gZW52OworCX0KKworCXJldHVybiBwcm90b2NvbF92MjsKIH0KIAogZW51bSBwcm90b2NvbF92ZXJzaW9uIGRldGVybWluZV9wcm90b2NvbF92ZXJzaW9uX3NlcnZlcih2b2lkKQpkaWZmIC0tZ2l0IGEvcHJvdG9jb2wuaCBiL3Byb3RvY29sLmgKaW5kZXggMmFkMzVlNC4uY2VmMWE0YSAxMDA2NDQKLS0tIGEvcHJvdG9jb2wuaAorKysgYi9wcm90b2NvbC5oCkBAIC0xNCw3ICsxNCw3IEBACiAgKiAncHJvdG9jb2wudmVyc2lvbicgY29uZmlnLiAgSWYgdW5jb25maWd1cmVkLCBhIHZhbHVlIG9mICdwcm90b2NvbF92MCcgaXMKICAqIHJldHVybmVkLgogICovCi1leHRlcm4gZW51bSBwcm90b2NvbF92ZXJzaW9uIGdldF9wcm90b2NvbF92ZXJzaW9uX2NvbmZpZyh2b2lkKTsKK2VudW0gcHJvdG9jb2xfdmVyc2lvbiBnZXRfcHJvdG9jb2xfdmVyc2lvbl9jb25maWcodm9pZCk7CiAKIC8qCiAgKiBVc2VkIGJ5IGEgc2VydmVyIHRvIGRldGVybWluZSB3aGljaCBwcm90b2NvbCB2ZXJzaW9uIHNob3VsZCBiZSB1c2VkIGJhc2VkIG9uCkBAIC0yMywxMiArMjMsMTIgQEAKICAqIHJlcXVlc3QgYSBwYXJ0aWN1bGFyIHByb3RvY29sIHZlcnNpb24sIGEgZGVmYXVsdCBvZiAncHJvdG9jb2xfdjAnIHdpbGwgYmUKICAqIHVzZWQuCiAgKi8KLWV4dGVybiBlbnVtIHByb3RvY29sX3ZlcnNpb24gZGV0ZXJtaW5lX3Byb3RvY29sX3ZlcnNpb25fc2VydmVyKHZvaWQpOworZW51bSBwcm90b2NvbF92ZXJzaW9uIGRldGVybWluZV9wcm90b2NvbF92ZXJzaW9uX3NlcnZlcih2b2lkKTsKIAogLyoKICAqIFVzZWQgYnkgYSBjbGllbnQgdG8gZGV0ZXJtaW5lIHdoaWNoIHByb3RvY29sIHZlcnNpb24gdGhlIHNlcnZlciBpcyBzcGVha2luZwogICogYmFzZWQgb24gdGhlIHNlcnZlcidzIGluaXRpYWwgcmVzcG9uc2UuCiAgKi8KLWV4dGVybiBlbnVtIHByb3RvY29sX3ZlcnNpb24gZGV0ZXJtaW5lX3Byb3RvY29sX3ZlcnNpb25fY2xpZW50KGNvbnN0IGNoYXIgKnNlcnZlcl9yZXNwb25zZSk7CitlbnVtIHByb3RvY29sX3ZlcnNpb24gZGV0ZXJtaW5lX3Byb3RvY29sX3ZlcnNpb25fY2xpZW50KGNvbnN0IGNoYXIgKnNlcnZlcl9yZXNwb25zZSk7CiAKICNlbmRpZiAvKiBQUk9UT0NPTF9IICovCmRpZmYgLS1naXQgYS9xdW90ZS5jIGIvcXVvdGUuYwppbmRleCBjOTVkZDJjLi5iY2MwZGJjIDEwMDY0NAotLS0gYS9xdW90ZS5jCisrKyBiL3F1b3RlLmMKQEAgLTQ4LDggKzQ4LDE0IEBACiAJc3RhdGljIGNvbnN0IGNoYXIgb2tfcHVuY3RbXSA9ICIrLC0uLzo9QF9eIjsKIAljb25zdCBjaGFyICpwOwogCisJLyogQXZvaWQgbG9zaW5nIGEgemVyby1sZW5ndGggc3RyaW5nIGJ5IGFkZGluZyAnJyAqLworCWlmICghKnNyYykgeworCQlzdHJidWZfYWRkc3RyKGRzdCwgIicnIik7CisJCXJldHVybjsKKwl9CisKIAlmb3IgKHAgPSBzcmM7ICpwOyBwKyspIHsKLQkJaWYgKCFpc2FscGhhKCpwKSAmJiAhaXNkaWdpdCgqcCkgJiYgIXN0cmNocihva19wdW5jdCwgKnApKSB7CisJCWlmICghaXNhbG51bSgqcCkgJiYgIXN0cmNocihva19wdW5jdCwgKnApKSB7CiAJCQlzcV9xdW90ZV9idWYoZHN0LCBzcmMpOwogCQkJcmV0dXJuOwogCQl9CkBAIC04NCwxMiArOTAsMjggQEAKIAl9CiB9CiAKKy8qCisgKiBMZWdhY3kgZnVuY3Rpb24gdG8gYXBwZW5kIGVhY2ggYXJndiB2YWx1ZSwgcXVvdGVkIGFzIG5lY2Vzc2FzcnksCisgKiB3aXRoIHdoaXRlc3BhY2UgYmVmb3JlIGVhY2ggdmFsdWUuICBUaGlzIHJlc3VsdHMgaW4gYSBsZWFkaW5nCisgKiBzcGFjZSBpbiB0aGUgcmVzdWx0LgorICovCiB2b2lkIHNxX3F1b3RlX2FyZ3ZfcHJldHR5KHN0cnVjdCBzdHJidWYgKmRzdCwgY29uc3QgY2hhciAqKmFyZ3YpCiB7CisJaWYgKGFyZ3ZbMF0pCisJCXN0cmJ1Zl9hZGRjaChkc3QsICcgJyk7CisJc3FfYXBwZW5kX3F1b3RlX2FyZ3ZfcHJldHR5KGRzdCwgYXJndik7Cit9CisKKy8qCisgKiBBcHBlbmQgZWFjaCBhcmd2IHZhbHVlLCBxdW90ZWQgYXMgbmVjZXNzYXJ5LCB3aXRoIHdoaXRlc3BhY2UgYmV0d2VlbiB0aGVtLgorICovCit2b2lkIHNxX2FwcGVuZF9xdW90ZV9hcmd2X3ByZXR0eShzdHJ1Y3Qgc3RyYnVmICpkc3QsIGNvbnN0IGNoYXIgKiphcmd2KQorewogCWludCBpOwogCiAJZm9yIChpID0gMDsgYXJndltpXTsgaSsrKSB7Ci0JCXN0cmJ1Zl9hZGRjaChkc3QsICcgJyk7CisJCWlmIChpID4gMCkKKwkJCXN0cmJ1Zl9hZGRjaChkc3QsICcgJyk7CiAJCXNxX3F1b3RlX2J1Zl9wcmV0dHkoZHN0LCBhcmd2W2ldKTsKIAl9CiB9CkBAIC0yMzQsNyArMjU2LDcgQEAKICAqICAgICBSZXR1cm4gdmFsdWUgaXMgdGhlIHNhbWUgYXMgaW4gKDEpLgogICovCiBzdGF0aWMgc2l6ZV90IHF1b3RlX2Nfc3R5bGVfY291bnRlZChjb25zdCBjaGFyICpuYW1lLCBzc2l6ZV90IG1heGxlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBzdHJidWYgKnNiLCBGSUxFICpmcCwgaW50IG5vX2RxKQorCQkJCSAgICBzdHJ1Y3Qgc3RyYnVmICpzYiwgRklMRSAqZnAsIGludCBub19kcSkKIHsKICN1bmRlZiBFTUlUCiAjZGVmaW5lIEVNSVQoYykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmRpZmYgLS1naXQgYS9xdW90ZS5oIGIvcXVvdGUuaAppbmRleCBlYTk5MmRjLi5jYThlZTMxIDEwMDY0NAotLS0gYS9xdW90ZS5oCisrKyBiL3F1b3RlLmgKQEAgLTI5LDkgKzI5LDkgQEAKICAqIHNxX3F1b3RlZigpIHF1b3RlcyB0aGUgZW50aXJlIGZvcm1hdHRlZCBzdHJpbmcgYXMgYSBzaW5nbGUgcmVzdWx0LgogICovCiAKLWV4dGVybiB2b2lkIHNxX3F1b3RlX2J1ZihzdHJ1Y3Qgc3RyYnVmICosIGNvbnN0IGNoYXIgKnNyYyk7Ci1leHRlcm4gdm9pZCBzcV9xdW90ZV9hcmd2KHN0cnVjdCBzdHJidWYgKiwgY29uc3QgY2hhciAqKmFyZ3YpOwotZXh0ZXJuIHZvaWQgc3FfcXVvdGVmKHN0cnVjdCBzdHJidWYgKiwgY29uc3QgY2hhciAqZm10LCAuLi4pOwordm9pZCBzcV9xdW90ZV9idWYoc3RydWN0IHN0cmJ1ZiAqLCBjb25zdCBjaGFyICpzcmMpOwordm9pZCBzcV9xdW90ZV9hcmd2KHN0cnVjdCBzdHJidWYgKiwgY29uc3QgY2hhciAqKmFyZ3YpOwordm9pZCBzcV9xdW90ZWYoc3RydWN0IHN0cmJ1ZiAqLCBjb25zdCBjaGFyICpmbXQsIC4uLik7CiAKIC8qCiAgKiBUaGVzZSBtYXRjaCB0aGVpciBub24tcHJldHR5IHZhcmlhbnRzLCBleGNlcHQgdGhhdCB0aGV5IGF2b2lkCkBAIC00MCwxOSArNDAsMjAgQEAKICAqLwogdm9pZCBzcV9xdW90ZV9idWZfcHJldHR5KHN0cnVjdCBzdHJidWYgKiwgY29uc3QgY2hhciAqc3JjKTsKIHZvaWQgc3FfcXVvdGVfYXJndl9wcmV0dHkoc3RydWN0IHN0cmJ1ZiAqLCBjb25zdCBjaGFyICoqYXJndik7Cit2b2lkIHNxX2FwcGVuZF9xdW90ZV9hcmd2X3ByZXR0eShzdHJ1Y3Qgc3RyYnVmICpkc3QsIGNvbnN0IGNoYXIgKiphcmd2KTsKIAogLyogVGhpcyB1bndyYXBzIHdoYXQgc3FfcXVvdGUoKSBwcm9kdWNlcyBpbiBwbGFjZSwgYnV0IHJldHVybnMKICAqIE5VTEwgaWYgdGhlIGlucHV0IGRvZXMgbm90IGxvb2sgbGlrZSB3aGF0IHNxX3F1b3RlIHdvdWxkIGhhdmUKICAqIHByb2R1Y2VkLgogICovCi1leHRlcm4gY2hhciAqc3FfZGVxdW90ZShjaGFyICopOworY2hhciAqc3FfZGVxdW90ZShjaGFyICopOwogCiAvKgogICogU2FtZSBhcyB0aGUgYWJvdmUsIGJ1dCBjYW4gYmUgdXNlZCB0byB1bndyYXAgbWFueSBhcmd1bWVudHMgaW4gdGhlCiAgKiBzYW1lIHN0cmluZyBzZXBhcmF0ZWQgYnkgc3BhY2UuIExpa2Ugc3FfcXVvdGUsIGl0IHdvcmtzIGluIHBsYWNlLAogICogbW9kaWZ5aW5nIGFyZyBhbmQgYXBwZW5kaW5nIHBvaW50ZXJzIGludG8gaXQgdG8gYXJndi4KICAqLwotZXh0ZXJuIGludCBzcV9kZXF1b3RlX3RvX2FyZ3YoY2hhciAqYXJnLCBjb25zdCBjaGFyICoqKmFyZ3YsIGludCAqbnIsIGludCAqYWxsb2MpOworaW50IHNxX2RlcXVvdGVfdG9fYXJndihjaGFyICphcmcsIGNvbnN0IGNoYXIgKioqYXJndiwgaW50ICpuciwgaW50ICphbGxvYyk7CiAKIC8qCiAgKiBTYW1lIGFzIGFib3ZlLCBidXQgc3RvcmUgdGhlIHVucXVvdGVkIHN0cmluZ3MgaW4gYW4gYXJndl9hcnJheS4gV2Ugd2lsbApAQCAtNjAsMjQgKzYxLDI0IEBACiAgKiB3aWxsIGR1cGxpY2F0ZSBhbmQgdGFrZSBvd25lcnNoaXAgb2YgdGhlIHN0cmluZ3MuCiAgKi8KIHN0cnVjdCBhcmd2X2FycmF5OwotZXh0ZXJuIGludCBzcV9kZXF1b3RlX3RvX2FyZ3ZfYXJyYXkoY2hhciAqYXJnLCBzdHJ1Y3QgYXJndl9hcnJheSAqKTsKK2ludCBzcV9kZXF1b3RlX3RvX2FyZ3ZfYXJyYXkoY2hhciAqYXJnLCBzdHJ1Y3QgYXJndl9hcnJheSAqKTsKIAotZXh0ZXJuIGludCB1bnF1b3RlX2Nfc3R5bGUoc3RydWN0IHN0cmJ1ZiAqLCBjb25zdCBjaGFyICpxdW90ZWQsIGNvbnN0IGNoYXIgKiplbmRwKTsKLWV4dGVybiBzaXplX3QgcXVvdGVfY19zdHlsZShjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qgc3RyYnVmICosIEZJTEUgKiwgaW50IG5vX2RxKTsKLWV4dGVybiB2b2lkIHF1b3RlX3R3b19jX3N0eWxlKHN0cnVjdCBzdHJidWYgKiwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGludCk7CitpbnQgdW5xdW90ZV9jX3N0eWxlKHN0cnVjdCBzdHJidWYgKiwgY29uc3QgY2hhciAqcXVvdGVkLCBjb25zdCBjaGFyICoqZW5kcCk7CitzaXplX3QgcXVvdGVfY19zdHlsZShjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qgc3RyYnVmICosIEZJTEUgKiwgaW50IG5vX2RxKTsKK3ZvaWQgcXVvdGVfdHdvX2Nfc3R5bGUoc3RydWN0IHN0cmJ1ZiAqLCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgaW50KTsKIAotZXh0ZXJuIHZvaWQgd3JpdGVfbmFtZV9xdW90ZWQoY29uc3QgY2hhciAqbmFtZSwgRklMRSAqLCBpbnQgdGVybWluYXRvcik7Ci1leHRlcm4gdm9pZCB3cml0ZV9uYW1lX3F1b3RlZF9yZWxhdGl2ZShjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICpwcmVmaXgsCi0JCUZJTEUgKmZwLCBpbnQgdGVybWluYXRvcik7Cit2b2lkIHdyaXRlX25hbWVfcXVvdGVkKGNvbnN0IGNoYXIgKm5hbWUsIEZJTEUgKiwgaW50IHRlcm1pbmF0b3IpOwordm9pZCB3cml0ZV9uYW1lX3F1b3RlZF9yZWxhdGl2ZShjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICpwcmVmaXgsCisJCQkJRklMRSAqZnAsIGludCB0ZXJtaW5hdG9yKTsKIAogLyogcXVvdGUgcGF0aCBhcyByZWxhdGl2ZSB0byB0aGUgZ2l2ZW4gcHJlZml4ICovCi1leHRlcm4gY2hhciAqcXVvdGVfcGF0aF9yZWxhdGl2ZShjb25zdCBjaGFyICppbiwgY29uc3QgY2hhciAqcHJlZml4LAorY2hhciAqcXVvdGVfcGF0aF9yZWxhdGl2ZShjb25zdCBjaGFyICppbiwgY29uc3QgY2hhciAqcHJlZml4LAogCQkJICBzdHJ1Y3Qgc3RyYnVmICpvdXQpOwogCiAvKiBxdW90aW5nIGFzIGEgc3RyaW5nIGxpdGVyYWwgZm9yIG90aGVyIGxhbmd1YWdlcyAqLwotZXh0ZXJuIHZvaWQgcGVybF9xdW90ZV9idWYoc3RydWN0IHN0cmJ1ZiAqc2IsIGNvbnN0IGNoYXIgKnNyYyk7Ci1leHRlcm4gdm9pZCBweXRob25fcXVvdGVfYnVmKHN0cnVjdCBzdHJidWYgKnNiLCBjb25zdCBjaGFyICpzcmMpOwotZXh0ZXJuIHZvaWQgdGNsX3F1b3RlX2J1ZihzdHJ1Y3Qgc3RyYnVmICpzYiwgY29uc3QgY2hhciAqc3JjKTsKLWV4dGVybiB2b2lkIGJhc2ljX3JlZ2V4X3F1b3RlX2J1ZihzdHJ1Y3Qgc3RyYnVmICpzYiwgY29uc3QgY2hhciAqc3JjKTsKK3ZvaWQgcGVybF9xdW90ZV9idWYoc3RydWN0IHN0cmJ1ZiAqc2IsIGNvbnN0IGNoYXIgKnNyYyk7Cit2b2lkIHB5dGhvbl9xdW90ZV9idWYoc3RydWN0IHN0cmJ1ZiAqc2IsIGNvbnN0IGNoYXIgKnNyYyk7Cit2b2lkIHRjbF9xdW90ZV9idWYoc3RydWN0IHN0cmJ1ZiAqc2IsIGNvbnN0IGNoYXIgKnNyYyk7Cit2b2lkIGJhc2ljX3JlZ2V4X3F1b3RlX2J1ZihzdHJ1Y3Qgc3RyYnVmICpzYiwgY29uc3QgY2hhciAqc3JjKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9yYW5nZS1kaWZmLmMgYi9yYW5nZS1kaWZmLmMKaW5kZXggNDhiMGUxYi4uZjc0NTU2NyAxMDA2NDQKLS0tIGEvcmFuZ2UtZGlmZi5jCisrKyBiL3JhbmdlLWRpZmYuYwpAQCAtMTAsNiArMTAsNyBAQAogI2luY2x1ZGUgImNvbW1pdC5oIgogI2luY2x1ZGUgInByZXR0eS5oIgogI2luY2x1ZGUgInVzZXJkaWZmLmgiCisjaW5jbHVkZSAiYXBwbHkuaCIKIAogc3RydWN0IHBhdGNoX3V0aWwgewogCS8qIEZvciB0aGUgc2VhcmNoIGZvciBhbiBleGFjdCBtYXRjaCAqLwpAQCAtMjQsMjAgKzI1LDM1IEBACiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiB9OwogCitzdGF0aWMgc2l6ZV90IGZpbmRfZW5kX29mX2xpbmUoY2hhciAqYnVmZmVyLCB1bnNpZ25lZCBsb25nIHNpemUpCit7CisJY2hhciAqZW9sID0gbWVtY2hyKGJ1ZmZlciwgJ1xuJywgc2l6ZSk7CisKKwlpZiAoIWVvbCkKKwkJcmV0dXJuIHNpemU7CisKKwkqZW9sID0gJ1wwJzsKKwlyZXR1cm4gZW9sICsgMSAtIGJ1ZmZlcjsKK30KKwogLyoKICAqIFJlYWRzIHRoZSBwYXRjaGVzIGludG8gYSBzdHJpbmcgbGlzdCwgd2l0aCB0aGUgYHV0aWxgIGZpZWxkIGJlaW5nIHBvcHVsYXRlZAogICogYXMgc3RydWN0IG9iamVjdF9pZCAod2lsbCBuZWVkIHRvIGJlIGZyZWUoKWQpLgogICovCi1zdGF0aWMgaW50IHJlYWRfcGF0Y2hlcyhjb25zdCBjaGFyICpyYW5nZSwgc3RydWN0IHN0cmluZ19saXN0ICpsaXN0KQorc3RhdGljIGludCByZWFkX3BhdGNoZXMoY29uc3QgY2hhciAqcmFuZ2UsIHN0cnVjdCBzdHJpbmdfbGlzdCAqbGlzdCwKKwkJCWNvbnN0IHN0cnVjdCBhcmd2X2FycmF5ICpvdGhlcl9hcmcpCiB7CiAJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7Ci0JRklMRSAqaW47Ci0Jc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVCwgbGluZSA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQsIGNvbnRlbnRzID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHBhdGNoX3V0aWwgKnV0aWwgPSBOVUxMOwogCWludCBpbl9oZWFkZXIgPSAxOworCWNoYXIgKmxpbmUsICpjdXJyZW50X2ZpbGVuYW1lID0gTlVMTDsKKwlpbnQgb2Zmc2V0LCBsZW47CisJc2l6ZV90IHNpemU7CiAKIAlhcmd2X2FycmF5X3B1c2hsKCZjcC5hcmdzLCAibG9nIiwgIi0tbm8tY29sb3IiLCAiLXAiLCAiLS1uby1tZXJnZXMiLAogCQkJIi0tcmV2ZXJzZSIsICItLWRhdGUtb3JkZXIiLCAiLS1kZWNvcmF0ZT1ubyIsCisJCQkiLS1uby1wcmVmaXgiLAogCQkJLyoKIAkJCSAqIENob29zZSBpbmRpY2F0b3JzIHRoYXQgYXJlIG5vdCB1c2VkIGFueXdoZXJlCiAJCQkgKiBlbHNlIGluIGRpZmZzLCBidXQgc3RpbGwgbG9vayByZWFzb25hYmxlCkBAIC00NiwyNSArNjIsMzEgQEAKIAkJCSItLW91dHB1dC1pbmRpY2F0b3ItbmV3PT4iLAogCQkJIi0tb3V0cHV0LWluZGljYXRvci1vbGQ9PCIsCiAJCQkiLS1vdXRwdXQtaW5kaWNhdG9yLWNvbnRleHQ9IyIsCi0JCQkiLS1uby1hYmJyZXYtY29tbWl0IiwgcmFuZ2UsCisJCQkiLS1uby1hYmJyZXYtY29tbWl0IiwKIAkJCU5VTEwpOworCWlmIChvdGhlcl9hcmcpCisJCWFyZ3ZfYXJyYXlfcHVzaHYoJmNwLmFyZ3MsIG90aGVyX2FyZy0+YXJndik7CisJYXJndl9hcnJheV9wdXNoKCZjcC5hcmdzLCByYW5nZSk7CiAJY3Aub3V0ID0gLTE7CiAJY3Aubm9fc3RkaW4gPSAxOwogCWNwLmdpdF9jbWQgPSAxOwogCiAJaWYgKHN0YXJ0X2NvbW1hbmQoJmNwKSkKIAkJcmV0dXJuIGVycm9yX2Vycm5vKF8oImNvdWxkIG5vdCBzdGFydCBgbG9nYCIpKTsKLQlpbiA9IGZkb3BlbihjcC5vdXQsICJyIik7Ci0JaWYgKCFpbikgeworCWlmIChzdHJidWZfcmVhZCgmY29udGVudHMsIGNwLm91dCwgMCkgPCAwKSB7CiAJCWVycm9yX2Vycm5vKF8oImNvdWxkIG5vdCByZWFkIGBsb2dgIG91dHB1dCIpKTsKIAkJZmluaXNoX2NvbW1hbmQoJmNwKTsKIAkJcmV0dXJuIC0xOwogCX0KIAotCXdoaWxlIChzdHJidWZfZ2V0bGluZSgmbGluZSwgaW4pICE9IEVPRikgeworCWxpbmUgPSBjb250ZW50cy5idWY7CisJc2l6ZSA9IGNvbnRlbnRzLmxlbjsKKwlmb3IgKG9mZnNldCA9IDA7IHNpemUgPiAwOyBvZmZzZXQgKz0gbGVuLCBzaXplIC09IGxlbiwgbGluZSArPSBsZW4pIHsKIAkJY29uc3QgY2hhciAqcDsKIAotCQlpZiAoc2tpcF9wcmVmaXgobGluZS5idWYsICJjb21taXQgIiwgJnApKSB7CisJCWxlbiA9IGZpbmRfZW5kX29mX2xpbmUobGluZSwgc2l6ZSk7CisJCWxpbmVbbGVuIC0gMV0gPSAnXDAnOworCQlpZiAoc2tpcF9wcmVmaXgobGluZSwgImNvbW1pdCAiLCAmcCkpIHsKIAkJCWlmICh1dGlsKSB7CiAJCQkJc3RyaW5nX2xpc3RfYXBwZW5kKGxpc3QsIGJ1Zi5idWYpLT51dGlsID0gdXRpbDsKIAkJCQlzdHJidWZfcmVzZXQoJmJ1Zik7CkBAIC03NSw4ICs5Nyw3IEBACiAJCQkJZnJlZSh1dGlsKTsKIAkJCQlzdHJpbmdfbGlzdF9jbGVhcihsaXN0LCAxKTsKIAkJCQlzdHJidWZfcmVsZWFzZSgmYnVmKTsKLQkJCQlzdHJidWZfcmVsZWFzZSgmbGluZSk7Ci0JCQkJZmNsb3NlKGluKTsKKwkJCQlzdHJidWZfcmVsZWFzZSgmY29udGVudHMpOwogCQkJCWZpbmlzaF9jb21tYW5kKCZjcCk7CiAJCQkJcmV0dXJuIC0xOwogCQkJfQpAQCAtODUsNjEgKzEwNiwxMDEgQEAKIAkJCWNvbnRpbnVlOwogCQl9CiAKLQkJaWYgKHN0YXJ0c193aXRoKGxpbmUuYnVmLCAiZGlmZiAtLWdpdCIpKSB7CisJCWlmIChzdGFydHNfd2l0aChsaW5lLCAiZGlmZiAtLWdpdCIpKSB7CisJCQlzdHJ1Y3QgcGF0Y2ggcGF0Y2ggPSB7IDAgfTsKKwkJCXN0cnVjdCBzdHJidWYgcm9vdCA9IFNUUkJVRl9JTklUOworCQkJaW50IGxpbmVuciA9IDA7CisKIAkJCWluX2hlYWRlciA9IDA7CiAJCQlzdHJidWZfYWRkY2goJmJ1ZiwgJ1xuJyk7CiAJCQlpZiAoIXV0aWwtPmRpZmZfb2Zmc2V0KQogCQkJCXV0aWwtPmRpZmZfb2Zmc2V0ID0gYnVmLmxlbjsKLQkJCXN0cmJ1Zl9hZGRjaCgmYnVmLCAnICcpOwotCQkJc3RyYnVmX2FkZGJ1ZigmYnVmLCAmbGluZSk7CisJCQlsaW5lW2xlbiAtIDFdID0gJ1xuJzsKKwkJCWxlbiA9IHBhcnNlX2dpdF9kaWZmX2hlYWRlcigmcm9vdCwgJmxpbmVuciwgMCwgbGluZSwKKwkJCQkJCSAgICBsZW4sIHNpemUsICZwYXRjaCk7CisJCQlpZiAobGVuIDwgMCkKKwkJCQlkaWUoXygiY291bGQgbm90IHBhcnNlIGdpdCBoZWFkZXIgJyUuKnMnIiksIChpbnQpbGVuLCBsaW5lKTsKKwkJCXN0cmJ1Zl9hZGRzdHIoJmJ1ZiwgIiAjIyAiKTsKKwkJCWlmIChwYXRjaC5pc19uZXcgPiAwKQorCQkJCXN0cmJ1Zl9hZGRmKCZidWYsICIlcyAobmV3KSIsIHBhdGNoLm5ld19uYW1lKTsKKwkJCWVsc2UgaWYgKHBhdGNoLmlzX2RlbGV0ZSA+IDApCisJCQkJc3RyYnVmX2FkZGYoJmJ1ZiwgIiVzIChkZWxldGVkKSIsIHBhdGNoLm9sZF9uYW1lKTsKKwkJCWVsc2UgaWYgKHBhdGNoLmlzX3JlbmFtZSkKKwkJCQlzdHJidWZfYWRkZigmYnVmLCAiJXMgPT4gJXMiLCBwYXRjaC5vbGRfbmFtZSwgcGF0Y2gubmV3X25hbWUpOworCQkJZWxzZQorCQkJCXN0cmJ1Zl9hZGRzdHIoJmJ1ZiwgcGF0Y2gubmV3X25hbWUpOworCisJCQlmcmVlKGN1cnJlbnRfZmlsZW5hbWUpOworCQkJaWYgKHBhdGNoLmlzX2RlbGV0ZSA+IDApCisJCQkJY3VycmVudF9maWxlbmFtZSA9IHhzdHJkdXAocGF0Y2gub2xkX25hbWUpOworCQkJZWxzZQorCQkJCWN1cnJlbnRfZmlsZW5hbWUgPSB4c3RyZHVwKHBhdGNoLm5ld19uYW1lKTsKKworCQkJaWYgKHBhdGNoLm5ld19tb2RlICYmIHBhdGNoLm9sZF9tb2RlICYmCisJCQkgICAgcGF0Y2gub2xkX21vZGUgIT0gcGF0Y2gubmV3X21vZGUpCisJCQkJc3RyYnVmX2FkZGYoJmJ1ZiwgIiAobW9kZSBjaGFuZ2UgJTA2byA9PiAlMDZvKSIsCisJCQkJCSAgICBwYXRjaC5vbGRfbW9kZSwgcGF0Y2gubmV3X21vZGUpOworCisJCQlzdHJidWZfYWRkc3RyKCZidWYsICIgIyMiKTsKIAkJfSBlbHNlIGlmIChpbl9oZWFkZXIpIHsKLQkJCWlmIChzdGFydHNfd2l0aChsaW5lLmJ1ZiwgIkF1dGhvcjogIikpIHsKLQkJCQlzdHJidWZfYWRkYnVmKCZidWYsICZsaW5lKTsKKwkJCWlmIChzdGFydHNfd2l0aChsaW5lLCAiQXV0aG9yOiAiKSkgeworCQkJCXN0cmJ1Zl9hZGRzdHIoJmJ1ZiwgIiAjIyBNZXRhZGF0YSAjI1xuIik7CisJCQkJc3RyYnVmX2FkZHN0cigmYnVmLCBsaW5lKTsKIAkJCQlzdHJidWZfYWRkc3RyKCZidWYsICJcblxuIik7Ci0JCQl9IGVsc2UgaWYgKHN0YXJ0c193aXRoKGxpbmUuYnVmLCAiICAgICIpKSB7Ci0JCQkJc3RyYnVmX3J0cmltKCZsaW5lKTsKLQkJCQlzdHJidWZfYWRkYnVmKCZidWYsICZsaW5lKTsKKwkJCQlzdHJidWZfYWRkc3RyKCZidWYsICIgIyMgQ29tbWl0IG1lc3NhZ2UgIyNcbiIpOworCQkJfSBlbHNlIGlmIChzdGFydHNfd2l0aChsaW5lLCAiTm90ZXMiKSAmJgorCQkJCSAgIGxpbmVbc3RybGVuKGxpbmUpIC0gMV0gPT0gJzonKSB7CisJCQkJc3RyYnVmX2FkZHN0cigmYnVmLCAiXG5cbiIpOworCQkJCS8qIHN0cmlwIHRoZSB0cmFpbGluZyBjb2xvbiAqLworCQkJCXN0cmJ1Zl9hZGRmKCZidWYsICIgIyMgJS4qcyAjI1xuIiwKKwkJCQkJICAgIChpbnQpKHN0cmxlbihsaW5lKSAtIDEpLCBsaW5lKTsKKwkJCX0gZWxzZSBpZiAoc3RhcnRzX3dpdGgobGluZSwgIiAgICAiKSkgeworCQkJCXAgPSBsaW5lICsgbGVuIC0gMjsKKwkJCQl3aGlsZSAoaXNzcGFjZSgqcCkgJiYgcCA+PSBsaW5lKQorCQkJCQlwLS07CisJCQkJc3RyYnVmX2FkZCgmYnVmLCBsaW5lLCBwIC0gbGluZSArIDEpOwogCQkJCXN0cmJ1Zl9hZGRjaCgmYnVmLCAnXG4nKTsKIAkJCX0KIAkJCWNvbnRpbnVlOwotCQl9IGVsc2UgaWYgKHN0YXJ0c193aXRoKGxpbmUuYnVmLCAiQEAgIikpCisJCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgobGluZSwgIkBAICIsICZwKSkgeworCQkJcCA9IHN0cnN0cihwLCAiQEAiKTsKIAkJCXN0cmJ1Zl9hZGRzdHIoJmJ1ZiwgIkBAIik7Ci0JCWVsc2UgaWYgKCFsaW5lLmJ1ZlswXSB8fCBzdGFydHNfd2l0aChsaW5lLmJ1ZiwgImluZGV4ICIpKQorCQkJaWYgKGN1cnJlbnRfZmlsZW5hbWUgJiYgcFsyXSkKKwkJCQlzdHJidWZfYWRkZigmYnVmLCAiICVzOiIsIGN1cnJlbnRfZmlsZW5hbWUpOworCQkJaWYgKHApCisJCQkJc3RyYnVmX2FkZHN0cigmYnVmLCBwICsgMik7CisJCX0gZWxzZSBpZiAoIWxpbmVbMF0pCiAJCQkvKgogCQkJICogQSBjb21wbGV0ZWx5IGJsYW5rIChub3QgJyBcbicsIHdoaWNoIGlzIGNvbnRleHQpCiAJCQkgKiBsaW5lIGlzIG5vdCB2YWxpZCBpbiBhIGRpZmYuICBXZSBza2lwIGl0CiAJCQkgKiBzaWxlbnRseSwgYmVjYXVzZSB0aGlzIG5lYXRseSBoYW5kbGVzIHRoZSBibGFuawogCQkJICogc2VwYXJhdG9yIGxpbmUgYmV0d2VlbiBjb21taXRzIGluIGdpdC1sb2cKIAkJCSAqIG91dHB1dC4KLQkJCSAqCi0JCQkgKiBXZSBhbHNvIHdhbnQgdG8gaWdub3JlIHRoZSBkaWZmJ3MgYGluZGV4YCBsaW5lcwotCQkJICogYmVjYXVzZSB0aGV5IGNvbnRhaW4gZXhhY3QgYmxvYiBoYXNoZXMgaW4gd2hpY2gKLQkJCSAqIHdlIGFyZSBub3QgaW50ZXJlc3RlZC4KIAkJCSAqLwogCQkJY29udGludWU7Ci0JCWVsc2UgaWYgKGxpbmUuYnVmWzBdID09ICc+JykgeworCQllbHNlIGlmIChsaW5lWzBdID09ICc+JykgewogCQkJc3RyYnVmX2FkZGNoKCZidWYsICcrJyk7Ci0JCQlzdHJidWZfYWRkKCZidWYsIGxpbmUuYnVmICsgMSwgbGluZS5sZW4gLSAxKTsKLQkJfSBlbHNlIGlmIChsaW5lLmJ1ZlswXSA9PSAnPCcpIHsKKwkJCXN0cmJ1Zl9hZGRzdHIoJmJ1ZiwgbGluZSArIDEpOworCQl9IGVsc2UgaWYgKGxpbmVbMF0gPT0gJzwnKSB7CiAJCQlzdHJidWZfYWRkY2goJmJ1ZiwgJy0nKTsKLQkJCXN0cmJ1Zl9hZGQoJmJ1ZiwgbGluZS5idWYgKyAxLCBsaW5lLmxlbiAtIDEpOwotCQl9IGVsc2UgaWYgKGxpbmUuYnVmWzBdID09ICcjJykgeworCQkJc3RyYnVmX2FkZHN0cigmYnVmLCBsaW5lICsgMSk7CisJCX0gZWxzZSBpZiAobGluZVswXSA9PSAnIycpIHsKIAkJCXN0cmJ1Zl9hZGRjaCgmYnVmLCAnICcpOwotCQkJc3RyYnVmX2FkZCgmYnVmLCBsaW5lLmJ1ZiArIDEsIGxpbmUubGVuIC0gMSk7CisJCQlzdHJidWZfYWRkc3RyKCZidWYsIGxpbmUgKyAxKTsKIAkJfSBlbHNlIHsKIAkJCXN0cmJ1Zl9hZGRjaCgmYnVmLCAnICcpOwotCQkJc3RyYnVmX2FkZGJ1ZigmYnVmLCAmbGluZSk7CisJCQlzdHJidWZfYWRkc3RyKCZidWYsIGxpbmUpOwogCQl9CiAKIAkJc3RyYnVmX2FkZGNoKCZidWYsICdcbicpOwogCQl1dGlsLT5kaWZmc2l6ZSsrOwogCX0KLQlmY2xvc2UoaW4pOwotCXN0cmJ1Zl9yZWxlYXNlKCZsaW5lKTsKKwlzdHJidWZfcmVsZWFzZSgmY29udGVudHMpOwogCiAJaWYgKHV0aWwpCiAJCXN0cmluZ19saXN0X2FwcGVuZChsaXN0LCBidWYuYnVmKS0+dXRpbCA9IHV0aWw7CiAJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CisJZnJlZShjdXJyZW50X2ZpbGVuYW1lKTsKIAogCWlmIChmaW5pc2hfY29tbWFuZCgmY3ApKQogCQlyZXR1cm4gLTE7CkBAIC0xNDgsNyArMjA5LDcgQEAKIH0KIAogc3RhdGljIGludCBwYXRjaF91dGlsX2NtcChjb25zdCB2b2lkICpkdW1teSwgY29uc3Qgc3RydWN0IHBhdGNoX3V0aWwgKmEsCi0JCSAgICAgY29uc3Qgc3RydWN0IHBhdGNoX3V0aWwgKmIsIGNvbnN0IGNoYXIgKmtleWRhdGEpCisJCQkgIGNvbnN0IHN0cnVjdCBwYXRjaF91dGlsICpiLCBjb25zdCBjaGFyICprZXlkYXRhKQogewogCXJldHVybiBzdHJjbXAoYS0+ZGlmZiwga2V5ZGF0YSA/IGtleWRhdGEgOiBiLT5kaWZmKTsKIH0KQEAgLTE2Nyw4ICsyMjgsOCBAQAogCQl1dGlsLT5pID0gaTsKIAkJdXRpbC0+cGF0Y2ggPSBhLT5pdGVtc1tpXS5zdHJpbmc7CiAJCXV0aWwtPmRpZmYgPSB1dGlsLT5wYXRjaCArIHV0aWwtPmRpZmZfb2Zmc2V0OwotCQloYXNobWFwX2VudHJ5X2luaXQodXRpbCwgc3RyaGFzaCh1dGlsLT5kaWZmKSk7Ci0JCWhhc2htYXBfYWRkKCZtYXAsIHV0aWwpOworCQloYXNobWFwX2VudHJ5X2luaXQoJnV0aWwtPmUsIHN0cmhhc2godXRpbC0+ZGlmZikpOworCQloYXNobWFwX2FkZCgmbWFwLCAmdXRpbC0+ZSk7CiAJfQogCiAJLyogTm93IHRyeSB0byBmaW5kIGV4YWN0IG1hdGNoZXMgaW4gYiAqLwpAQCAtMTc4LDggKzIzOSw4IEBACiAJCXV0aWwtPmkgPSBpOwogCQl1dGlsLT5wYXRjaCA9IGItPml0ZW1zW2ldLnN0cmluZzsKIAkJdXRpbC0+ZGlmZiA9IHV0aWwtPnBhdGNoICsgdXRpbC0+ZGlmZl9vZmZzZXQ7Ci0JCWhhc2htYXBfZW50cnlfaW5pdCh1dGlsLCBzdHJoYXNoKHV0aWwtPmRpZmYpKTsKLQkJb3RoZXIgPSBoYXNobWFwX3JlbW92ZSgmbWFwLCB1dGlsLCBOVUxMKTsKKwkJaGFzaG1hcF9lbnRyeV9pbml0KCZ1dGlsLT5lLCBzdHJoYXNoKHV0aWwtPmRpZmYpKTsKKwkJb3RoZXIgPSBoYXNobWFwX3JlbW92ZV9lbnRyeSgmbWFwLCB1dGlsLCBlLCBOVUxMKTsKIAkJaWYgKG90aGVyKSB7CiAJCQlpZiAob3RoZXItPm1hdGNoaW5nID49IDApCiAJCQkJQlVHKCJhbHJlYWR5IGFzc2lnbmVkISIpOwpAQCAtMTg5LDcgKzI1MCw3IEBACiAJCX0KIAl9CiAKLQloYXNobWFwX2ZyZWUoJm1hcCwgMCk7CisJaGFzaG1hcF9mcmVlKCZtYXApOwogfQogCiBzdGF0aWMgdm9pZCBkaWZmc2l6ZV9jb25zdW1lKHZvaWQgKmRhdGEsIGNoYXIgKmxpbmUsIHVuc2lnbmVkIGxvbmcgbGVuKQpAQCAtMzU0LDggKzQxNSw5IEBACiAJZndyaXRlKGJ1Zi0+YnVmLCBidWYtPmxlbiwgMSwgZGlmZm9wdC0+ZmlsZSk7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgdXNlcmRpZmZfZHJpdmVyIG5vX2Z1bmNfbmFtZSA9IHsKLQkuZnVuY25hbWUgPSB7ICIkXiIsIDAgfQorc3RhdGljIHN0cnVjdCB1c2VyZGlmZl9kcml2ZXIgc2VjdGlvbl9oZWFkZXJzID0geworCS5mdW5jbmFtZSA9IHsgIl4gIyMgKC4qKSAjIyRcbiIKKwkJICAgICAgIl4uP0BAICguKikkIiwgUkVHX0VYVEVOREVEIH0KIH07CiAKIHN0YXRpYyBzdHJ1Y3QgZGlmZl9maWxlc3BlYyAqZ2V0X2ZpbGVzcGVjKGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKnApCkBAIC0zNjcsMTMgKzQyOSwxMyBAQAogCXNwZWMtPnNpemUgPSBzdHJsZW4ocCk7CiAJc3BlYy0+c2hvdWxkX211bm1hcCA9IDA7CiAJc3BlYy0+aXNfc3RkaW4gPSAxOwotCXNwZWMtPmRyaXZlciA9ICZub19mdW5jX25hbWU7CisJc3BlYy0+ZHJpdmVyID0gJnNlY3Rpb25faGVhZGVyczsKIAogCXJldHVybiBzcGVjOwogfQogCiBzdGF0aWMgdm9pZCBwYXRjaF9kaWZmKGNvbnN0IGNoYXIgKmEsIGNvbnN0IGNoYXIgKmIsCi0JCQkgICAgICBzdHJ1Y3QgZGlmZl9vcHRpb25zICpkaWZmb3B0KQorCQkgICAgICAgc3RydWN0IGRpZmZfb3B0aW9ucyAqZGlmZm9wdCkKIHsKIAlkaWZmX3F1ZXVlKCZkaWZmX3F1ZXVlZF9kaWZmLAogCQkgICBnZXRfZmlsZXNwZWMoImEiLCBhKSwgZ2V0X2ZpbGVzcGVjKCJiIiwgYikpOwpAQCAtNDQ0LDE2ICs1MDYsMTcgQEAKIAogaW50IHNob3dfcmFuZ2VfZGlmZihjb25zdCBjaGFyICpyYW5nZTEsIGNvbnN0IGNoYXIgKnJhbmdlMiwKIAkJICAgIGludCBjcmVhdGlvbl9mYWN0b3IsIGludCBkdWFsX2NvbG9yLAotCQkgICAgc3RydWN0IGRpZmZfb3B0aW9ucyAqZGlmZm9wdCkKKwkJICAgIGNvbnN0IHN0cnVjdCBkaWZmX29wdGlvbnMgKmRpZmZvcHQsCisJCSAgICBjb25zdCBzdHJ1Y3QgYXJndl9hcnJheSAqb3RoZXJfYXJnKQogewogCWludCByZXMgPSAwOwogCiAJc3RydWN0IHN0cmluZ19saXN0IGJyYW5jaDEgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKIAlzdHJ1Y3Qgc3RyaW5nX2xpc3QgYnJhbmNoMiA9IFNUUklOR19MSVNUX0lOSVRfRFVQOwogCi0JaWYgKHJlYWRfcGF0Y2hlcyhyYW5nZTEsICZicmFuY2gxKSkKKwlpZiAocmVhZF9wYXRjaGVzKHJhbmdlMSwgJmJyYW5jaDEsIG90aGVyX2FyZykpCiAJCXJlcyA9IGVycm9yKF8oImNvdWxkIG5vdCBwYXJzZSBsb2cgZm9yICclcyciKSwgcmFuZ2UxKTsKLQlpZiAoIXJlcyAmJiByZWFkX3BhdGNoZXMocmFuZ2UyLCAmYnJhbmNoMikpCisJaWYgKCFyZXMgJiYgcmVhZF9wYXRjaGVzKHJhbmdlMiwgJmJyYW5jaDIsIG90aGVyX2FyZykpCiAJCXJlcyA9IGVycm9yKF8oImNvdWxkIG5vdCBwYXJzZSBsb2cgZm9yICclcyciKSwgcmFuZ2UyKTsKIAogCWlmICghcmVzKSB7CkBAIC00NjksNiArNTMyLDcgQEAKIAkJCW9wdHMub3V0cHV0X2Zvcm1hdCA9IERJRkZfRk9STUFUX1BBVENIOwogCQlvcHRzLmZsYWdzLnN1cHByZXNzX2RpZmZfaGVhZGVycyA9IDE7CiAJCW9wdHMuZmxhZ3MuZHVhbF9jb2xvcl9kaWZmZWRfZGlmZnMgPSBkdWFsX2NvbG9yOworCQlvcHRzLmZsYWdzLnN1cHByZXNzX2h1bmtfaGVhZGVyX2xpbmVfY291bnQgPSAxOwogCQlvcHRzLm91dHB1dF9wcmVmaXggPSBvdXRwdXRfcHJlZml4X2NiOwogCQlzdHJidWZfYWRkc3RyKCZpbmRlbnQsICIgICAgIik7CiAJCW9wdHMub3V0cHV0X3ByZWZpeF9kYXRhID0gJmluZGVudDsKZGlmZiAtLWdpdCBhL3JhbmdlLWRpZmYuaCBiL3JhbmdlLWRpZmYuaAppbmRleCAwOGE1MGI2Li5lMTE5NzZkIDEwMDY0NAotLS0gYS9yYW5nZS1kaWZmLmgKKysrIGIvcmFuZ2UtZGlmZi5oCkBAIC0yLDE2ICsyLDE4IEBACiAjZGVmaW5lIFJBTkdFX0RJRkZfSAogCiAjaW5jbHVkZSAiZGlmZi5oIgorI2luY2x1ZGUgImFyZ3YtYXJyYXkuaCIKIAogI2RlZmluZSBSQU5HRV9ESUZGX0NSRUFUSU9OX0ZBQ1RPUl9ERUZBVUxUIDYwCiAKIC8qCi0gKiBDb21wYXJlIHNlcmllcyBvZiBjb21tbWl0cyBpbiBSQU5HRTEgYW5kIFJBTkdFMiwgYW5kIGVtaXQgdG8gdGhlCisgKiBDb21wYXJlIHNlcmllcyBvZiBjb21taXRzIGluIFJBTkdFMSBhbmQgUkFOR0UyLCBhbmQgZW1pdCB0byB0aGUKICAqIHN0YW5kYXJkIG91dHB1dC4gIE5VTEwgY2FuIGJlIHBhc3NlZCB0byBESUZGT1BUIHRvIHVzZSB0aGUgYnVpbHQtaW4KICAqIGRlZmF1bHQuCiAgKi8KIGludCBzaG93X3JhbmdlX2RpZmYoY29uc3QgY2hhciAqcmFuZ2UxLCBjb25zdCBjaGFyICpyYW5nZTIsCiAJCSAgICBpbnQgY3JlYXRpb25fZmFjdG9yLCBpbnQgZHVhbF9jb2xvciwKLQkJICAgIHN0cnVjdCBkaWZmX29wdGlvbnMgKmRpZmZvcHQpOworCQkgICAgY29uc3Qgc3RydWN0IGRpZmZfb3B0aW9ucyAqZGlmZm9wdCwKKwkJICAgIGNvbnN0IHN0cnVjdCBhcmd2X2FycmF5ICpvdGhlcl9hcmcpOwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL3JlYWNoYWJsZS5jIGIvcmVhY2hhYmxlLmMKaW5kZXggNmU5YjgxMC4uNzdhNjBjNyAxMDA2NDQKLS0tIGEvcmVhY2hhYmxlLmMKKysrIGIvcmVhY2hhYmxlLmMKQEAgLTEyLDYgKzEyLDcgQEAKICNpbmNsdWRlICJwYWNrZmlsZS5oIgogI2luY2x1ZGUgIndvcmt0cmVlLmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCisjaW5jbHVkZSAicGFjay1iaXRtYXAuaCIKIAogc3RydWN0IGNvbm5lY3Rpdml0eV9wcm9ncmVzcyB7CiAJc3RydWN0IHByb2dyZXNzICpwcm9ncmVzczsKQEAgLTEwOCw3ICsxMDksNyBAQAogCQkJICAgIGNvbnN0IGNoYXIgKnBhdGgsIHZvaWQgKmRhdGEpCiB7CiAJc3RydWN0IHN0YXQgc3Q7Ci0Jc3RydWN0IG9iamVjdCAqb2JqID0gbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgb2lkLT5oYXNoKTsKKwlzdHJ1Y3Qgb2JqZWN0ICpvYmogPSBsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBvaWQpOwogCiAJaWYgKG9iaiAmJiBvYmotPmZsYWdzICYgU0VFTikKIAkJcmV0dXJuIDA7CkBAIC0xMzMsNyArMTM0LDcgQEAKIAkJCSAgICAgc3RydWN0IHBhY2tlZF9naXQgKnAsIHVpbnQzMl90IHBvcywKIAkJCSAgICAgdm9pZCAqZGF0YSkKIHsKLQlzdHJ1Y3Qgb2JqZWN0ICpvYmogPSBsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBvaWQtPmhhc2gpOworCXN0cnVjdCBvYmplY3QgKm9iaiA9IGxvb2t1cF9vYmplY3QodGhlX3JlcG9zaXRvcnksIG9pZCk7CiAKIAlpZiAob2JqICYmIG9iai0+ZmxhZ3MgJiBTRUVOKQogCQlyZXR1cm4gMDsKQEAgLTE1OCwxMCArMTU5LDQ0IEBACiAJCQkJICAgICAgRk9SX0VBQ0hfT0JKRUNUX0xPQ0FMX09OTFkpOwogfQogCitzdGF0aWMgdm9pZCAqbG9va3VwX29iamVjdF9ieV90eXBlKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCQkgICBlbnVtIG9iamVjdF90eXBlIHR5cGUpCit7CisJc3dpdGNoICh0eXBlKSB7CisJY2FzZSBPQkpfQ09NTUlUOgorCQlyZXR1cm4gbG9va3VwX2NvbW1pdChyLCBvaWQpOworCWNhc2UgT0JKX1RSRUU6CisJCXJldHVybiBsb29rdXBfdHJlZShyLCBvaWQpOworCWNhc2UgT0JKX1RBRzoKKwkJcmV0dXJuIGxvb2t1cF90YWcociwgb2lkKTsKKwljYXNlIE9CSl9CTE9COgorCQlyZXR1cm4gbG9va3VwX2Jsb2Iociwgb2lkKTsKKwlkZWZhdWx0OgorCQlkaWUoIkJVRzogdW5rbm93biBvYmplY3QgdHlwZSAlZCIsIHR5cGUpOworCX0KK30KKworc3RhdGljIGludCBtYXJrX29iamVjdF9zZWVuKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCSAgICAgZW51bSBvYmplY3RfdHlwZSB0eXBlLAorCQkJICAgICBpbnQgZXhjbHVkZSwKKwkJCSAgICAgdWludDMyX3QgbmFtZV9oYXNoLAorCQkJICAgICBzdHJ1Y3QgcGFja2VkX2dpdCAqZm91bmRfcGFjaywKKwkJCSAgICAgb2ZmX3QgZm91bmRfb2Zmc2V0KQoreworCXN0cnVjdCBvYmplY3QgKm9iaiA9IGxvb2t1cF9vYmplY3RfYnlfdHlwZSh0aGVfcmVwb3NpdG9yeSwgb2lkLCB0eXBlKTsKKwlpZiAoIW9iaikKKwkJZGllKCJ1bmFibGUgdG8gY3JlYXRlIG9iamVjdCAnJXMnIiwgb2lkX3RvX2hleChvaWQpKTsKKworCW9iai0+ZmxhZ3MgfD0gU0VFTjsKKwlyZXR1cm4gMDsKK30KKwogdm9pZCBtYXJrX3JlYWNoYWJsZV9vYmplY3RzKHN0cnVjdCByZXZfaW5mbyAqcmV2cywgaW50IG1hcmtfcmVmbG9nLAogCQkJICAgIHRpbWVzdGFtcF90IG1hcmtfcmVjZW50LCBzdHJ1Y3QgcHJvZ3Jlc3MgKnByb2dyZXNzKQogewogCXN0cnVjdCBjb25uZWN0aXZpdHlfcHJvZ3Jlc3MgY3A7CisJc3RydWN0IGJpdG1hcF9pbmRleCAqYml0bWFwX2dpdDsKIAogCS8qCiAJICogU2V0IHVwIHJldmlzaW9uIHBhcnNpbmcsIGFuZCBtYXJrIHVzIGFzIGJlaW5nIGludGVyZXN0ZWQKQEAgLTE4OCw2ICsyMjMsMTMgQEAKIAljcC5wcm9ncmVzcyA9IHByb2dyZXNzOwogCWNwLmNvdW50ID0gMDsKIAorCWJpdG1hcF9naXQgPSBwcmVwYXJlX2JpdG1hcF93YWxrKHJldnMsIE5VTEwpOworCWlmIChiaXRtYXBfZ2l0KSB7CisJCXRyYXZlcnNlX2JpdG1hcF9jb21taXRfbGlzdChiaXRtYXBfZ2l0LCByZXZzLCBtYXJrX29iamVjdF9zZWVuKTsKKwkJZnJlZV9iaXRtYXBfaW5kZXgoYml0bWFwX2dpdCk7CisJCXJldHVybjsKKwl9CisKIAkvKgogCSAqIFNldCB1cCB0aGUgcmV2aXNpb24gd2FsayAtIHRoaXMgd2lsbCBtb3ZlIGFsbCBjb21taXRzCiAJICogZnJvbSB0aGUgcGVuZGluZyBsaXN0IHRvIHRoZSBjb21taXQgd2Fsa2luZyBsaXN0LgpkaWZmIC0tZ2l0IGEvcmVhY2hhYmxlLmggYi9yZWFjaGFibGUuaAppbmRleCAxOGIwZjlmLi41ZGY5MzJhIDEwMDY0NAotLS0gYS9yZWFjaGFibGUuaAorKysgYi9yZWFjaGFibGUuaApAQCAtNCw5ICs0LDkgQEAKIHN0cnVjdCBwcm9ncmVzczsKIHN0cnVjdCByZXZfaW5mbzsKIAotZXh0ZXJuIGludCBhZGRfdW5zZWVuX3JlY2VudF9vYmplY3RzX3RvX3RyYXZlcnNhbChzdHJ1Y3QgcmV2X2luZm8gKnJldnMsCi0JCQkJCQkgIHRpbWVzdGFtcF90IHRpbWVzdGFtcCk7Ci1leHRlcm4gdm9pZCBtYXJrX3JlYWNoYWJsZV9vYmplY3RzKHN0cnVjdCByZXZfaW5mbyAqcmV2cywgaW50IG1hcmtfcmVmbG9nLAotCQkJCSAgIHRpbWVzdGFtcF90IG1hcmtfcmVjZW50LCBzdHJ1Y3QgcHJvZ3Jlc3MgKik7CitpbnQgYWRkX3Vuc2Vlbl9yZWNlbnRfb2JqZWN0c190b190cmF2ZXJzYWwoc3RydWN0IHJldl9pbmZvICpyZXZzLAorCQkJCQkgICB0aW1lc3RhbXBfdCB0aW1lc3RhbXApOwordm9pZCBtYXJrX3JlYWNoYWJsZV9vYmplY3RzKHN0cnVjdCByZXZfaW5mbyAqcmV2cywgaW50IG1hcmtfcmVmbG9nLAorCQkJICAgIHRpbWVzdGFtcF90IG1hcmtfcmVjZW50LCBzdHJ1Y3QgcHJvZ3Jlc3MgKik7CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvcmVhZC1jYWNoZS5jIGIvcmVhZC1jYWNoZS5jCmluZGV4IDFkODJkYmQuLmFhNDI3YzUgMTAwNjQ0Ci0tLSBhL3JlYWQtY2FjaGUuYworKysgYi9yZWFkLWNhY2hlLmMKQEAgLTMsNyArMyw2IEBACiAgKgogICogQ29weXJpZ2h0IChDKSBMaW51cyBUb3J2YWxkcywgMjAwNQogICovCi0jZGVmaW5lIE5PX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiZGlmZi5oIgpAQCAtMTgsNiArMTcsNyBAQAogI2luY2x1ZGUgImNvbW1pdC5oIgogI2luY2x1ZGUgImJsb2IuaCIKICNpbmNsdWRlICJyZXNvbHZlLXVuZG8uaCIKKyNpbmNsdWRlICJydW4tY29tbWFuZC5oIgogI2luY2x1ZGUgInN0cmJ1Zi5oIgogI2luY2x1ZGUgInZhcmludC5oIgogI2luY2x1ZGUgInNwbGl0LWluZGV4LmgiCkBAIC05NSw3ICs5NSw2IEBACiAJcmV0dXJuICpwb29sX3B0cjsKIH0KIAotc3RydWN0IGluZGV4X3N0YXRlIHRoZV9pbmRleDsKIHN0YXRpYyBjb25zdCBjaGFyICphbHRlcm5hdGVfaW5kZXhfb3V0cHV0OwogCiBzdGF0aWMgdm9pZCBzZXRfaW5kZXhfZW50cnkoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIGludCBuciwgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSkKQEAgLTE5Niw3ICsxOTUsNyBAQAogICogY2FjaGUsIGllIHRoZSBwYXJ0cyB0aGF0IGFyZW4ndCB0cmFja2VkIGJ5IEdJVCwgYW5kIG9ubHkgdXNlZAogICogdG8gdmFsaWRhdGUgdGhlIGNhY2hlLgogICovCi12b2lkIGZpbGxfc3RhdF9jYWNoZV9pbmZvKHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UsIHN0cnVjdCBzdGF0ICpzdCkKK3ZvaWQgZmlsbF9zdGF0X2NhY2hlX2luZm8oc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UsIHN0cnVjdCBzdGF0ICpzdCkKIHsKIAlmaWxsX3N0YXRfZGF0YSgmY2UtPmNlX3N0YXRfZGF0YSwgc3QpOwogCkBAIC0yMDUsNyArMjA0LDcgQEAKIAogCWlmIChTX0lTUkVHKHN0LT5zdF9tb2RlKSkgewogCQljZV9tYXJrX3VwdG9kYXRlKGNlKTsKLQkJbWFya19mc21vbml0b3JfdmFsaWQoY2UpOworCQltYXJrX2ZzbW9uaXRvcl92YWxpZChpc3RhdGUsIGNlKTsKIAl9CiB9CiAKQEAgLTMxNiw3ICszMTUsNyBAQAogCQkJY2hhbmdlZCB8PSBEQVRBX0NIQU5HRUQ7CiAJCXJldHVybiBjaGFuZ2VkOwogCWRlZmF1bHQ6Ci0JCWRpZSgiaW50ZXJuYWwgZXJyb3I6IGNlX21vZGUgaXMgJW8iLCBjZS0+Y2VfbW9kZSk7CisJCUJVRygidW5zdXBwb3J0ZWQgY2VfbW9kZTogJW8iLCBjZS0+Y2VfbW9kZSk7CiAJfQogCiAJY2hhbmdlZCB8PSBtYXRjaF9zdGF0X2RhdGEoJmNlLT5jZV9zdGF0X2RhdGEsIHN0KTsKQEAgLTU1MCw3ICs1NDksNyBAQAogCWZpcnN0ID0gMDsKIAlsYXN0ID0gaXN0YXRlLT5jYWNoZV9ucjsKIAl3aGlsZSAobGFzdCA+IGZpcnN0KSB7Ci0JCWludCBuZXh0ID0gKGxhc3QgKyBmaXJzdCkgPj4gMTsKKwkJaW50IG5leHQgPSBmaXJzdCArICgobGFzdCAtIGZpcnN0KSA+PiAxKTsKIAkJc3RydWN0IGNhY2hlX2VudHJ5ICpjZSA9IGlzdGF0ZS0+Y2FjaGVbbmV4dF07CiAJCWludCBjbXAgPSBjYWNoZV9uYW1lX3N0YWdlX2NvbXBhcmUobmFtZSwgbmFtZWxlbiwgc3RhZ2UsIGNlLT5uYW1lLCBjZV9uYW1lbGVuKGNlKSwgY2Vfc3RhZ2UoY2UpKTsKIAkJaWYgKCFjbXApCkBAIC01OTAsMTMgKzU4OSwxOSBAQAogICogQ0VfUkVNT1ZFIGlzIHNldCBpbiBjZV9mbGFncy4gIFRoaXMgaXMgbXVjaCBtb3JlIGVmZmVjdGl2ZSB0aGFuCiAgKiBjYWxsaW5nIHJlbW92ZV9pbmRleF9lbnRyeV9hdCgpIGZvciBlYWNoIGVudHJ5IHRvIGJlIHJlbW92ZWQuCiAgKi8KLXZvaWQgcmVtb3ZlX21hcmtlZF9jYWNoZV9lbnRyaWVzKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKQordm9pZCByZW1vdmVfbWFya2VkX2NhY2hlX2VudHJpZXMoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIGludCBpbnZhbGlkYXRlKQogewogCXN0cnVjdCBjYWNoZV9lbnRyeSAqKmNlX2FycmF5ID0gaXN0YXRlLT5jYWNoZTsKIAl1bnNpZ25lZCBpbnQgaSwgajsKIAogCWZvciAoaSA9IGogPSAwOyBpIDwgaXN0YXRlLT5jYWNoZV9ucjsgaSsrKSB7CiAJCWlmIChjZV9hcnJheVtpXS0+Y2VfZmxhZ3MgJiBDRV9SRU1PVkUpIHsKKwkJCWlmIChpbnZhbGlkYXRlKSB7CisJCQkJY2FjaGVfdHJlZV9pbnZhbGlkYXRlX3BhdGgoaXN0YXRlLAorCQkJCQkJCSAgIGNlX2FycmF5W2ldLT5uYW1lKTsKKwkJCQl1bnRyYWNrZWRfY2FjaGVfcmVtb3ZlX2Zyb21faW5kZXgoaXN0YXRlLAorCQkJCQkJCQkgIGNlX2FycmF5W2ldLT5uYW1lKTsKKwkJCX0KIAkJCXJlbW92ZV9uYW1lX2hhc2goaXN0YXRlLCBjZV9hcnJheVtpXSk7CiAJCQlzYXZlX29yX2ZyZWVfaW5kZXhfZW50cnkoaXN0YXRlLCBjZV9hcnJheVtpXSk7CiAJCX0KQEAgLTY3Miw3ICs2NzcsOCBAQAogCXN0cnVjdCBjYWNoZV9lbnRyeSAqbmV3X2VudHJ5OwogCiAJaWYgKGFsaWFzLT5jZV9mbGFncyAmIENFX0FEREVEKQotCQlkaWUoIldpbGwgbm90IGFkZCBmaWxlIGFsaWFzICclcycgKCclcycgYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgpIiwgY2UtPm5hbWUsIGFsaWFzLT5uYW1lKTsKKwkJZGllKF8oIndpbGwgbm90IGFkZCBmaWxlIGFsaWFzICclcycgKCclcycgYWxyZWFkeSBleGlzdHMgaW4gaW5kZXgpIiksCisJCSAgICBjZS0+bmFtZSwgYWxpYXMtPm5hbWUpOwogCiAJLyogT2ssIGNyZWF0ZSB0aGUgbmV3IGVudHJ5IHVzaW5nIHRoZSBuYW1lIG9mIHRoZSBleGlzdGluZyBhbGlhcyAqLwogCWxlbiA9IGNlX25hbWVsZW4oYWxpYXMpOwpAQCAtNjg3LDcgKzY5Myw3IEBACiB7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJaWYgKHdyaXRlX29iamVjdF9maWxlKCIiLCAwLCBibG9iX3R5cGUsICZvaWQpKQotCQlkaWUoImNhbm5vdCBjcmVhdGUgYW4gZW1wdHkgYmxvYiBpbiB0aGUgb2JqZWN0IGRhdGFiYXNlIik7CisJCWRpZShfKCJjYW5ub3QgY3JlYXRlIGFuIGVtcHR5IGJsb2IgaW4gdGhlIG9iamVjdCBkYXRhYmFzZSIpKTsKIAlvaWRjcHkoJmNlLT5vaWQsICZvaWQpOwogfQogCkBAIC03MDIsMTYgKzcwOCwxOSBAQAogCWludCBpbnRlbnRfb25seSA9IGZsYWdzICYgQUREX0NBQ0hFX0lOVEVOVDsKIAlpbnQgYWRkX29wdGlvbiA9IChBRERfQ0FDSEVfT0tfVE9fQUREfEFERF9DQUNIRV9PS19UT19SRVBMQUNFfAogCQkJICAoaW50ZW50X29ubHkgPyBBRERfQ0FDSEVfTkVXX09OTFkgOiAwKSk7Ci0JaW50IG5ld2ZsYWdzID0gSEFTSF9XUklURV9PQkpFQ1Q7CisJaW50IGhhc2hfZmxhZ3MgPSBIQVNIX1dSSVRFX09CSkVDVDsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAotCWlmIChmbGFncyAmIEhBU0hfUkVOT1JNQUxJWkUpCi0JCW5ld2ZsYWdzIHw9IEhBU0hfUkVOT1JNQUxJWkU7CisJaWYgKGZsYWdzICYgQUREX0NBQ0hFX1JFTk9STUFMSVpFKQorCQloYXNoX2ZsYWdzIHw9IEhBU0hfUkVOT1JNQUxJWkU7CiAKIAlpZiAoIVNfSVNSRUcoc3RfbW9kZSkgJiYgIVNfSVNMTksoc3RfbW9kZSkgJiYgIVNfSVNESVIoc3RfbW9kZSkpCi0JCXJldHVybiBlcnJvcigiJXM6IGNhbiBvbmx5IGFkZCByZWd1bGFyIGZpbGVzLCBzeW1ib2xpYyBsaW5rcyBvciBnaXQtZGlyZWN0b3JpZXMiLCBwYXRoKTsKKwkJcmV0dXJuIGVycm9yKF8oIiVzOiBjYW4gb25seSBhZGQgcmVndWxhciBmaWxlcywgc3ltYm9saWMgbGlua3Mgb3IgZ2l0LWRpcmVjdG9yaWVzIiksIHBhdGgpOwogCiAJbmFtZWxlbiA9IHN0cmxlbihwYXRoKTsKIAlpZiAoU19JU0RJUihzdF9tb2RlKSkgeworCQlpZiAocmVzb2x2ZV9naXRsaW5rX3JlZihwYXRoLCAiSEVBRCIsICZvaWQpIDwgMCkKKwkJCXJldHVybiBlcnJvcihfKCInJXMnIGRvZXMgbm90IGhhdmUgYSBjb21taXQgY2hlY2tlZCBvdXQiKSwgcGF0aCk7CiAJCXdoaWxlIChuYW1lbGVuICYmIHBhdGhbbmFtZWxlbi0xXSA9PSAnLycpCiAJCQluYW1lbGVuLS07CiAJfQpAQCAtNzE5LDcgKzcyOCw3IEBACiAJbWVtY3B5KGNlLT5uYW1lLCBwYXRoLCBuYW1lbGVuKTsKIAljZS0+Y2VfbmFtZWxlbiA9IG5hbWVsZW47CiAJaWYgKCFpbnRlbnRfb25seSkKLQkJZmlsbF9zdGF0X2NhY2hlX2luZm8oY2UsIHN0KTsKKwkJZmlsbF9zdGF0X2NhY2hlX2luZm8oaXN0YXRlLCBjZSwgc3QpOwogCWVsc2UKIAkJY2UtPmNlX2ZsYWdzIHw9IENFX0lOVEVOVF9UT19BREQ7CiAKQEAgLTc0NSw3ICs3NTQsNyBAQAogCWlmIChpZ25vcmVfY2FzZSkgewogCQlhZGp1c3RfZGlybmFtZV9jYXNlKGlzdGF0ZSwgY2UtPm5hbWUpOwogCX0KLQlpZiAoIShmbGFncyAmIEhBU0hfUkVOT1JNQUxJWkUpKSB7CisJaWYgKCEoZmxhZ3MgJiBBRERfQ0FDSEVfUkVOT1JNQUxJWkUpKSB7CiAJCWFsaWFzID0gaW5kZXhfZmlsZV9leGlzdHMoaXN0YXRlLCBjZS0+bmFtZSwKIAkJCQkJICBjZV9uYW1lbGVuKGNlKSwgaWdub3JlX2Nhc2UpOwogCQlpZiAoYWxpYXMgJiYKQEAgLTc2MSw5ICs3NzAsOSBAQAogCQl9CiAJfQogCWlmICghaW50ZW50X29ubHkpIHsKLQkJaWYgKGluZGV4X3BhdGgoaXN0YXRlLCAmY2UtPm9pZCwgcGF0aCwgc3QsIG5ld2ZsYWdzKSkgeworCQlpZiAoaW5kZXhfcGF0aChpc3RhdGUsICZjZS0+b2lkLCBwYXRoLCBzdCwgaGFzaF9mbGFncykpIHsKIAkJCWRpc2NhcmRfY2FjaGVfZW50cnkoY2UpOwotCQkJcmV0dXJuIGVycm9yKCJ1bmFibGUgdG8gaW5kZXggZmlsZSAlcyIsIHBhdGgpOworCQkJcmV0dXJuIGVycm9yKF8oInVuYWJsZSB0byBpbmRleCBmaWxlICclcyciKSwgcGF0aCk7CiAJCX0KIAl9IGVsc2UKIAkJc2V0X29iamVjdF9uYW1lX2Zvcl9pbnRlbnRfdG9fYWRkX2VudHJ5KGNlKTsKQEAgLTc4Miw3ICs3OTEsNyBAQAogCQlkaXNjYXJkX2NhY2hlX2VudHJ5KGNlKTsKIAllbHNlIGlmIChhZGRfaW5kZXhfZW50cnkoaXN0YXRlLCBjZSwgYWRkX29wdGlvbikpIHsKIAkJZGlzY2FyZF9jYWNoZV9lbnRyeShjZSk7Ci0JCXJldHVybiBlcnJvcigidW5hYmxlIHRvIGFkZCAlcyB0byBpbmRleCIsIHBhdGgpOworCQlyZXR1cm4gZXJyb3IoXygidW5hYmxlIHRvIGFkZCAnJXMnIHRvIGluZGV4IiksIHBhdGgpOwogCX0KIAlpZiAodmVyYm9zZSAmJiAhd2FzX3NhbWUpCiAJCXByaW50ZigiYWRkICclcydcbiIsIHBhdGgpOwpAQCAtNzkzLDcgKzgwMiw3IEBACiB7CiAJc3RydWN0IHN0YXQgc3Q7CiAJaWYgKGxzdGF0KHBhdGgsICZzdCkpCi0JCWRpZV9lcnJubygidW5hYmxlIHRvIHN0YXQgJyVzJyIsIHBhdGgpOworCQlkaWVfZXJybm8oXygidW5hYmxlIHRvIHN0YXQgJyVzJyIpLCBwYXRoKTsKIAlyZXR1cm4gYWRkX3RvX2luZGV4KGlzdGF0ZSwgcGF0aCwgJnN0LCBmbGFncyk7CiB9CiAKQEAgLTgxOCw3ICs4MjcsNyBAQAogCWludCBsZW47CiAKIAlpZiAoIXZlcmlmeV9wYXRoKHBhdGgsIG1vZGUpKSB7Ci0JCWVycm9yKCJJbnZhbGlkIHBhdGggJyVzJyIsIHBhdGgpOworCQllcnJvcihfKCJpbnZhbGlkIHBhdGggJyVzJyIpLCBwYXRoKTsKIAkJcmV0dXJuIE5VTEw7CiAJfQogCkBAIC04NDQsNyArODUzLDcgQEAKIAlpbnQgbGVuOwogCiAJaWYgKCF2ZXJpZnlfcGF0aChwYXRoLCBtb2RlKSkgewotCQllcnJvcigiSW52YWxpZCBwYXRoICclcyciLCBwYXRoKTsKKwkJZXJyb3IoXygiaW52YWxpZCBwYXRoICclcyciKSwgcGF0aCk7CiAJCXJldHVybiBOVUxMOwogCX0KIApAQCAtOTUwLDcgKzk1OSw3IEBACiAKIGludCB2ZXJpZnlfcGF0aChjb25zdCBjaGFyICpwYXRoLCB1bnNpZ25lZCBtb2RlKQogewotCWNoYXIgYzsKKwljaGFyIGMgPSAwOwogCiAJaWYgKGhhc19kb3NfZHJpdmVfcHJlZml4KHBhdGgpKQogCQlyZXR1cm4gMDsKQEAgLTk2NSw2ICs5NzQsNyBAQAogCQlpZiAoaXNfZGlyX3NlcChjKSkgewogaW5zaWRlOgogCQkJaWYgKHByb3RlY3RfaGZzKSB7CisKIAkJCQlpZiAoaXNfaGZzX2RvdGdpdChwYXRoKSkKIAkJCQkJcmV0dXJuIDA7CiAJCQkJaWYgKFNfSVNMTksobW9kZSkpIHsKQEAgLTk3Myw2ICs5ODMsMTAgQEAKIAkJCQl9CiAJCQl9CiAJCQlpZiAocHJvdGVjdF9udGZzKSB7CisjaWZkZWYgR0lUX1dJTkRPV1NfTkFUSVZFCisJCQkJaWYgKGMgPT0gJ1xcJykKKwkJCQkJcmV0dXJuIDA7CisjZW5kaWYKIAkJCQlpZiAoaXNfbnRmc19kb3RnaXQocGF0aCkpCiAJCQkJCXJldHVybiAwOwogCQkJCWlmIChTX0lTTE5LKG1vZGUpKSB7CkBAIC0xMjc4LDcgKzEyOTIsNyBAQAogCSAqLwogCWlmIChpc3RhdGUtPmNhY2hlX25yID4gMCAmJgogCQlzdHJjbXAoY2UtPm5hbWUsIGlzdGF0ZS0+Y2FjaGVbaXN0YXRlLT5jYWNoZV9uciAtIDFdLT5uYW1lKSA+IDApCi0JCXBvcyA9IC1pc3RhdGUtPmNhY2hlX25yIC0gMTsKKwkJcG9zID0gaW5kZXhfcG9zX3RvX2luc2VydF9wb3MoaXN0YXRlLT5jYWNoZV9ucik7CiAJZWxzZQogCQlwb3MgPSBpbmRleF9uYW1lX3N0YWdlX3Bvcyhpc3RhdGUsIGNlLT5uYW1lLCBjZV9uYW1lbGVuKGNlKSwgY2Vfc3RhZ2UoY2UpKTsKIApAQCAtMTMwOCwxMiArMTMyMiwxMiBAQAogCWlmICghb2tfdG9fYWRkKQogCQlyZXR1cm4gLTE7CiAJaWYgKCF2ZXJpZnlfcGF0aChjZS0+bmFtZSwgY2UtPmNlX21vZGUpKQotCQlyZXR1cm4gZXJyb3IoIkludmFsaWQgcGF0aCAnJXMnIiwgY2UtPm5hbWUpOworCQlyZXR1cm4gZXJyb3IoXygiaW52YWxpZCBwYXRoICclcyciKSwgY2UtPm5hbWUpOwogCiAJaWYgKCFza2lwX2RmX2NoZWNrICYmCiAJICAgIGNoZWNrX2ZpbGVfZGlyZWN0b3J5X2NvbmZsaWN0KGlzdGF0ZSwgY2UsIHBvcywgb2tfdG9fcmVwbGFjZSkpIHsKIAkJaWYgKCFva190b19yZXBsYWNlKQotCQkJcmV0dXJuIGVycm9yKCInJXMnIGFwcGVhcnMgYXMgYm90aCBhIGZpbGUgYW5kIGFzIGEgZGlyZWN0b3J5IiwKKwkJCXJldHVybiBlcnJvcihfKCInJXMnIGFwcGVhcnMgYXMgYm90aCBhIGZpbGUgYW5kIGFzIGEgZGlyZWN0b3J5IiksCiAJCQkJICAgICBjZS0+bmFtZSk7CiAJCXBvcyA9IGluZGV4X25hbWVfc3RhZ2VfcG9zKGlzdGF0ZSwgY2UtPm5hbWUsIGNlX25hbWVsZW4oY2UpLCBjZV9zdGFnZShjZSkpOwogCQlwb3MgPSAtcG9zLTE7CkBAIC0xNDM0LDcgKzE0NDgsNyBAQAogCQkJICovCiAJCQlpZiAoIVNfSVNHSVRMSU5LKGNlLT5jZV9tb2RlKSkgewogCQkJCWNlX21hcmtfdXB0b2RhdGUoY2UpOwotCQkJCW1hcmtfZnNtb25pdG9yX3ZhbGlkKGNlKTsKKwkJCQltYXJrX2ZzbW9uaXRvcl92YWxpZChpc3RhdGUsIGNlKTsKIAkJCX0KIAkJCXJldHVybiBjZTsKIAkJfQpAQCAtMTQ0OSw3ICsxNDYzLDcgQEAKIAl1cGRhdGVkID0gbWFrZV9lbXB0eV9jYWNoZV9lbnRyeShpc3RhdGUsIGNlX25hbWVsZW4oY2UpKTsKIAljb3B5X2NhY2hlX2VudHJ5KHVwZGF0ZWQsIGNlKTsKIAltZW1jcHkodXBkYXRlZC0+bmFtZSwgY2UtPm5hbWUsIGNlLT5jZV9uYW1lbGVuICsgMSk7Ci0JZmlsbF9zdGF0X2NhY2hlX2luZm8odXBkYXRlZCwgJnN0KTsKKwlmaWxsX3N0YXRfY2FjaGVfaW5mbyhpc3RhdGUsIHVwZGF0ZWQsICZzdCk7CiAJLyoKIAkgKiBJZiBpZ25vcmVfdmFsaWQgaXMgbm90IHNldCwgd2Ugc2hvdWxkIGxlYXZlIENFX1ZBTElEIGJpdAogCSAqIGFsb25lLiAgT3RoZXJ3aXNlLCBwYXRocyBtYXJrZWQgd2l0aCAtLW5vLWFzc3VtZS11bmNoYW5nZWQKQEAgLTE0NzQsNiArMTQ4OCwyNyBAQAogCXByaW50ZihmbXQsIG5hbWUpOwogfQogCitpbnQgcmVwb19yZWZyZXNoX2FuZF93cml0ZV9pbmRleChzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCQkgdW5zaWduZWQgaW50IHJlZnJlc2hfZmxhZ3MsCisJCQkJIHVuc2lnbmVkIGludCB3cml0ZV9mbGFncywKKwkJCQkgaW50IGdlbnRsZSwKKwkJCQkgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYywKKwkJCQkgY2hhciAqc2VlbiwgY29uc3QgY2hhciAqaGVhZGVyX21zZykKK3sKKwlzdHJ1Y3QgbG9ja19maWxlIGxvY2tfZmlsZSA9IExPQ0tfSU5JVDsKKwlpbnQgZmQsIHJldCA9IDA7CisKKwlmZCA9IHJlcG9faG9sZF9sb2NrZWRfaW5kZXgocmVwbywgJmxvY2tfZmlsZSwgMCk7CisJaWYgKCFnZW50bGUgJiYgZmQgPCAwKQorCQlyZXR1cm4gLTE7CisJaWYgKHJlZnJlc2hfaW5kZXgocmVwby0+aW5kZXgsIHJlZnJlc2hfZmxhZ3MsIHBhdGhzcGVjLCBzZWVuLCBoZWFkZXJfbXNnKSkKKwkJcmV0ID0gMTsKKwlpZiAoMCA8PSBmZCAmJiB3cml0ZV9sb2NrZWRfaW5kZXgocmVwby0+aW5kZXgsICZsb2NrX2ZpbGUsIENPTU1JVF9MT0NLIHwgd3JpdGVfZmxhZ3MpKQorCQlyZXQgPSAtMTsKKwlyZXR1cm4gcmV0OworfQorCisKIGludCByZWZyZXNoX2luZGV4KHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLCB1bnNpZ25lZCBpbnQgZmxhZ3MsCiAJCSAgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYywKIAkJICBjaGFyICpzZWVuLCBjb25zdCBjaGFyICpoZWFkZXJfbXNnKQpAQCAtMTUwMiwxMSArMTUzNywxMSBAQAogCQkJCQkJICBpc3RhdGUtPmNhY2hlX25yKTsKIAogCXRyYWNlX3BlcmZvcm1hbmNlX2VudGVyKCk7Ci0JbW9kaWZpZWRfZm10ID0gKGluX3BvcmNlbGFpbiA/ICJNXHQlc1xuIiA6ICIlczogbmVlZHMgdXBkYXRlXG4iKTsKLQlkZWxldGVkX2ZtdCA9IChpbl9wb3JjZWxhaW4gPyAiRFx0JXNcbiIgOiAiJXM6IG5lZWRzIHVwZGF0ZVxuIik7Ci0JdHlwZWNoYW5nZV9mbXQgPSAoaW5fcG9yY2VsYWluID8gIlRcdCVzXG4iIDogIiVzIG5lZWRzIHVwZGF0ZVxuIik7Ci0JYWRkZWRfZm10ID0gKGluX3BvcmNlbGFpbiA/ICJBXHQlc1xuIiA6ICIlcyBuZWVkcyB1cGRhdGVcbiIpOwotCXVubWVyZ2VkX2ZtdCA9IChpbl9wb3JjZWxhaW4gPyAiVVx0JXNcbiIgOiAiJXM6IG5lZWRzIG1lcmdlXG4iKTsKKwltb2RpZmllZF9mbXQgICA9IGluX3BvcmNlbGFpbiA/ICJNXHQlc1xuIiA6ICIlczogbmVlZHMgdXBkYXRlXG4iOworCWRlbGV0ZWRfZm10ICAgID0gaW5fcG9yY2VsYWluID8gIkRcdCVzXG4iIDogIiVzOiBuZWVkcyB1cGRhdGVcbiI7CisJdHlwZWNoYW5nZV9mbXQgPSBpbl9wb3JjZWxhaW4gPyAiVFx0JXNcbiIgOiAiJXM6IG5lZWRzIHVwZGF0ZVxuIjsKKwlhZGRlZF9mbXQgICAgICA9IGluX3BvcmNlbGFpbiA/ICJBXHQlc1xuIiA6ICIlczogbmVlZHMgdXBkYXRlXG4iOworCXVubWVyZ2VkX2ZtdCAgID0gaW5fcG9yY2VsYWluID8gIlVcdCVzXG4iIDogIiVzOiBuZWVkcyBtZXJnZVxuIjsKIAkvKgogCSAqIFVzZSB0aGUgbXVsdGktdGhyZWFkZWQgcHJlbG9hZF9pbmRleCgpIHRvIHJlZnJlc2ggbW9zdCBvZiB0aGUKIAkgKiBjYWNoZSBlbnRyaWVzIHF1aWNrbHkgdGhlbiBpbiB0aGUgc2luZ2xlIHRocmVhZGVkIGxvb3AgYmVsb3csCkBAIC0xNjAxLDE2ICsxNjM2LDE3IEBACiAKICNkZWZpbmUgSU5ERVhfRk9STUFUX0RFRkFVTFQgMwogCi1zdGF0aWMgdW5zaWduZWQgaW50IGdldF9pbmRleF9mb3JtYXRfZGVmYXVsdCh2b2lkKQorc3RhdGljIHVuc2lnbmVkIGludCBnZXRfaW5kZXhfZm9ybWF0X2RlZmF1bHQoc3RydWN0IHJlcG9zaXRvcnkgKnIpCiB7CiAJY2hhciAqZW52dmVyc2lvbiA9IGdldGVudigiR0lUX0lOREVYX1ZFUlNJT04iKTsKIAljaGFyICplbmRwOwotCWludCB2YWx1ZTsKIAl1bnNpZ25lZCBpbnQgdmVyc2lvbiA9IElOREVYX0ZPUk1BVF9ERUZBVUxUOwogCiAJaWYgKCFlbnZ2ZXJzaW9uKSB7Ci0JCWlmICghZ2l0X2NvbmZpZ19nZXRfaW50KCJpbmRleC52ZXJzaW9uIiwgJnZhbHVlKSkKLQkJCXZlcnNpb24gPSB2YWx1ZTsKKwkJcHJlcGFyZV9yZXBvX3NldHRpbmdzKHIpOworCisJCWlmIChyLT5zZXR0aW5ncy5pbmRleF92ZXJzaW9uID49IDApCisJCQl2ZXJzaW9uID0gci0+c2V0dGluZ3MuaW5kZXhfdmVyc2lvbjsKIAkJaWYgKHZlcnNpb24gPCBJTkRFWF9GT1JNQVRfTEIgfHwgSU5ERVhfRk9STUFUX1VCIDwgdmVyc2lvbikgewogCQkJd2FybmluZyhfKCJpbmRleC52ZXJzaW9uIHNldCwgYnV0IHRoZSB2YWx1ZSBpcyBpbnZhbGlkLlxuIgogCQkJCSAgIlVzaW5nIHZlcnNpb24gJWkiKSwgSU5ERVhfRk9STUFUX0RFRkFVTFQpOwpAQCAtMTY0NiwzOSArMTY4MiwyNCBAQAogCXVpbnQzMl90IHVpZDsKIAl1aW50MzJfdCBnaWQ7CiAJdWludDMyX3Qgc2l6ZTsKLQl1bnNpZ25lZCBjaGFyIHNoYTFbMjBdOwotCXVpbnQxNl90IGZsYWdzOwotCWNoYXIgbmFtZVtGTEVYX0FSUkFZXTsgLyogbW9yZSAqLwotfTsKLQotLyoKLSAqIFRoaXMgc3RydWN0IGlzIHVzZWQgd2hlbiBDRV9FWFRFTkRFRCBiaXQgaXMgMQotICogVGhlIHN0cnVjdCBtdXN0IG1hdGNoIG9uZGlza19jYWNoZV9lbnRyeSBleGFjdGx5IGZyb20KLSAqIGN0aW1lIHRpbGwgZmxhZ3MKLSAqLwotc3RydWN0IG9uZGlza19jYWNoZV9lbnRyeV9leHRlbmRlZCB7Ci0Jc3RydWN0IGNhY2hlX3RpbWUgY3RpbWU7Ci0Jc3RydWN0IGNhY2hlX3RpbWUgbXRpbWU7Ci0JdWludDMyX3QgZGV2OwotCXVpbnQzMl90IGlubzsKLQl1aW50MzJfdCBtb2RlOwotCXVpbnQzMl90IHVpZDsKLQl1aW50MzJfdCBnaWQ7Ci0JdWludDMyX3Qgc2l6ZTsKLQl1bnNpZ25lZCBjaGFyIHNoYTFbMjBdOwotCXVpbnQxNl90IGZsYWdzOwotCXVpbnQxNl90IGZsYWdzMjsKLQljaGFyIG5hbWVbRkxFWF9BUlJBWV07IC8qIG1vcmUgKi8KKwkvKgorCSAqIHVuc2lnbmVkIGNoYXIgaGFzaFtoYXNoc3pdOworCSAqIHVpbnQxNl90IGZsYWdzOworCSAqIGlmIChmbGFncyAmIENFX0VYVEVOREVEKQorCSAqCXVpbnQxNl90IGZsYWdzMjsKKwkgKi8KKwl1bnNpZ25lZCBjaGFyIGRhdGFbR0lUX01BWF9SQVdTWiArIDIgKiBzaXplb2YodWludDE2X3QpXTsKKwljaGFyIG5hbWVbRkxFWF9BUlJBWV07CiB9OwogCiAvKiBUaGVzZSBhcmUgb25seSB1c2VkIGZvciB2MyBvciBsb3dlciAqLwogI2RlZmluZSBhbGlnbl9wYWRkaW5nX3NpemUoc2l6ZSwgbGVuKSAoKHNpemUgKyAobGVuKSArIDgpICYgfjcpIC0gKHNpemUgKyBsZW4pCi0jZGVmaW5lIGFsaWduX2ZsZXhfbmFtZShTVFJVQ1QsbGVuKSAoKG9mZnNldG9mKHN0cnVjdCBTVFJVQ1QsbmFtZSkgKyAobGVuKSArIDgpICYgfjcpCisjZGVmaW5lIGFsaWduX2ZsZXhfbmFtZShTVFJVQ1QsbGVuKSAoKG9mZnNldG9mKHN0cnVjdCBTVFJVQ1QsZGF0YSkgKyAobGVuKSArIDgpICYgfjcpCiAjZGVmaW5lIG9uZGlza19jYWNoZV9lbnRyeV9zaXplKGxlbikgYWxpZ25fZmxleF9uYW1lKG9uZGlza19jYWNoZV9lbnRyeSxsZW4pCi0jZGVmaW5lIG9uZGlza19jYWNoZV9lbnRyeV9leHRlbmRlZF9zaXplKGxlbikgYWxpZ25fZmxleF9uYW1lKG9uZGlza19jYWNoZV9lbnRyeV9leHRlbmRlZCxsZW4pCi0jZGVmaW5lIG9uZGlza19jZV9zaXplKGNlKSAoKChjZSktPmNlX2ZsYWdzICYgQ0VfRVhURU5ERUQpID8gXAotCQkJICAgIG9uZGlza19jYWNoZV9lbnRyeV9leHRlbmRlZF9zaXplKGNlX25hbWVsZW4oY2UpKSA6IFwKLQkJCSAgICBvbmRpc2tfY2FjaGVfZW50cnlfc2l6ZShjZV9uYW1lbGVuKGNlKSkpCisjZGVmaW5lIG9uZGlza19kYXRhX3NpemUoZmxhZ3MsIGxlbikgKHRoZV9oYXNoX2FsZ28tPnJhd3N6ICsgXAorCQkJCSAgICAgKChmbGFncyAmIENFX0VYVEVOREVEKSA/IDIgOiAxKSAqIHNpemVvZih1aW50MTZfdCkgKyBsZW4pCisjZGVmaW5lIG9uZGlza19kYXRhX3NpemVfbWF4KGxlbikgKG9uZGlza19kYXRhX3NpemUoQ0VfRVhURU5ERUQsIGxlbikpCisjZGVmaW5lIG9uZGlza19jZV9zaXplKGNlKSAob25kaXNrX2NhY2hlX2VudHJ5X3NpemUob25kaXNrX2RhdGFfc2l6ZSgoY2UpLT5jZV9mbGFncywgY2VfbmFtZWxlbihjZSkpKSkKIAogLyogQWxsb3cgZnNjayB0byBmb3JjZSB2ZXJpZmljYXRpb24gb2YgdGhlIGluZGV4IGNoZWNrc3VtLiAqLwogaW50IHZlcmlmeV9pbmRleF9jaGVja3N1bTsKQEAgLTE2OTMsMTAgKzE3MTQsMTAgQEAKIAlpbnQgaGRyX3ZlcnNpb247CiAKIAlpZiAoaGRyLT5oZHJfc2lnbmF0dXJlICE9IGh0b25sKENBQ0hFX1NJR05BVFVSRSkpCi0JCXJldHVybiBlcnJvcigiYmFkIHNpZ25hdHVyZSIpOworCQlyZXR1cm4gZXJyb3IoXygiYmFkIHNpZ25hdHVyZSAweCUwOHgiKSwgaGRyLT5oZHJfc2lnbmF0dXJlKTsKIAloZHJfdmVyc2lvbiA9IG50b2hsKGhkci0+aGRyX3ZlcnNpb24pOwogCWlmIChoZHJfdmVyc2lvbiA8IElOREVYX0ZPUk1BVF9MQiB8fCBJTkRFWF9GT1JNQVRfVUIgPCBoZHJfdmVyc2lvbikKLQkJcmV0dXJuIGVycm9yKCJiYWQgaW5kZXggdmVyc2lvbiAlZCIsIGhkcl92ZXJzaW9uKTsKKwkJcmV0dXJuIGVycm9yKF8oImJhZCBpbmRleCB2ZXJzaW9uICVkIiksIGhkcl92ZXJzaW9uKTsKIAogCWlmICghdmVyaWZ5X2luZGV4X2NoZWNrc3VtKQogCQlyZXR1cm4gMDsKQEAgLTE3MDUsNyArMTcyNiw3IEBACiAJdGhlX2hhc2hfYWxnby0+dXBkYXRlX2ZuKCZjLCBoZHIsIHNpemUgLSB0aGVfaGFzaF9hbGdvLT5yYXdzeik7CiAJdGhlX2hhc2hfYWxnby0+ZmluYWxfZm4oaGFzaCwgJmMpOwogCWlmICghaGFzaGVxKGhhc2gsICh1bnNpZ25lZCBjaGFyICopaGRyICsgc2l6ZSAtIHRoZV9oYXNoX2FsZ28tPnJhd3N6KSkKLQkJcmV0dXJuIGVycm9yKCJiYWQgaW5kZXggZmlsZSBzaGExIHNpZ25hdHVyZSIpOworCQlyZXR1cm4gZXJyb3IoXygiYmFkIGluZGV4IGZpbGUgc2hhMSBzaWduYXR1cmUiKSk7CiAJcmV0dXJuIDA7CiB9CiAKQEAgLTE3MzUsMjQgKzE3NTYsMTQgQEAKIAkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJaWYgKCpleHQgPCAnQScgfHwgJ1onIDwgKmV4dCkKLQkJCXJldHVybiBlcnJvcigiaW5kZXggdXNlcyAlLjRzIGV4dGVuc2lvbiwgd2hpY2ggd2UgZG8gbm90IHVuZGVyc3RhbmQiLAorCQkJcmV0dXJuIGVycm9yKF8oImluZGV4IHVzZXMgJS40cyBleHRlbnNpb24sIHdoaWNoIHdlIGRvIG5vdCB1bmRlcnN0YW5kIiksCiAJCQkJICAgICBleHQpOwotCQlmcHJpbnRmKHN0ZGVyciwgImlnbm9yaW5nICUuNHMgZXh0ZW5zaW9uXG4iLCBleHQpOworCQlmcHJpbnRmX2xuKHN0ZGVyciwgXygiaWdub3JpbmcgJS40cyBleHRlbnNpb24iKSwgZXh0KTsKIAkJYnJlYWs7CiAJfQogCXJldHVybiAwOwogfQogCi1pbnQgaG9sZF9sb2NrZWRfaW5kZXgoc3RydWN0IGxvY2tfZmlsZSAqbGssIGludCBsb2NrX2ZsYWdzKQotewotCXJldHVybiBob2xkX2xvY2tfZmlsZV9mb3JfdXBkYXRlKGxrLCBnZXRfaW5kZXhfZmlsZSgpLCBsb2NrX2ZsYWdzKTsKLX0KLQotaW50IHJlYWRfaW5kZXgoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpCi17Ci0JcmV0dXJuIHJlYWRfaW5kZXhfZnJvbShpc3RhdGUsIGdldF9pbmRleF9maWxlKCksIGdldF9naXRfZGlyKCkpOwotfQotCiBzdGF0aWMgc3RydWN0IGNhY2hlX2VudHJ5ICpjcmVhdGVfZnJvbV9kaXNrKHN0cnVjdCBtZW1fcG9vbCAqY2VfbWVtX3Bvb2wsCiAJCQkJCSAgICB1bnNpZ25lZCBpbnQgdmVyc2lvbiwKIAkJCQkJICAgIHN0cnVjdCBvbmRpc2tfY2FjaGVfZW50cnkgKm9uZGlzaywKQEAgLTE3NjIsNiArMTc3Myw4IEBACiAJc3RydWN0IGNhY2hlX2VudHJ5ICpjZTsKIAlzaXplX3QgbGVuOwogCWNvbnN0IGNoYXIgKm5hbWU7CisJY29uc3QgdW5zaWduZWQgaGFzaHN6ID0gdGhlX2hhc2hfYWxnby0+cmF3c3o7CisJY29uc3QgdWludDE2X3QgKmZsYWdzcCA9IChjb25zdCB1aW50MTZfdCAqKShvbmRpc2stPmRhdGEgKyBoYXNoc3opOwogCXVuc2lnbmVkIGludCBmbGFnczsKIAlzaXplX3QgY29weV9sZW4gPSAwOwogCS8qCkBAIC0xNzc0LDI4ICsxNzg3LDI2IEBACiAJaW50IGV4cGFuZF9uYW1lX2ZpZWxkID0gdmVyc2lvbiA9PSA0OwogCiAJLyogT24tZGlzayBmbGFncyBhcmUganVzdCAxNiBiaXRzICovCi0JZmxhZ3MgPSBnZXRfYmUxNigmb25kaXNrLT5mbGFncyk7CisJZmxhZ3MgPSBnZXRfYmUxNihmbGFnc3ApOwogCWxlbiA9IGZsYWdzICYgQ0VfTkFNRU1BU0s7CiAKIAlpZiAoZmxhZ3MgJiBDRV9FWFRFTkRFRCkgewotCQlzdHJ1Y3Qgb25kaXNrX2NhY2hlX2VudHJ5X2V4dGVuZGVkICpvbmRpc2syOwogCQlpbnQgZXh0ZW5kZWRfZmxhZ3M7Ci0JCW9uZGlzazIgPSAoc3RydWN0IG9uZGlza19jYWNoZV9lbnRyeV9leHRlbmRlZCAqKW9uZGlzazsKLQkJZXh0ZW5kZWRfZmxhZ3MgPSBnZXRfYmUxNigmb25kaXNrMi0+ZmxhZ3MyKSA8PCAxNjsKKwkJZXh0ZW5kZWRfZmxhZ3MgPSBnZXRfYmUxNihmbGFnc3AgKyAxKSA8PCAxNjsKIAkJLyogV2UgZG8gbm90IHlldCB1bmRlcnN0YW5kIGFueSBiaXQgb3V0IG9mIENFX0VYVEVOREVEX0ZMQUdTICovCiAJCWlmIChleHRlbmRlZF9mbGFncyAmIH5DRV9FWFRFTkRFRF9GTEFHUykKLQkJCWRpZSgiVW5rbm93biBpbmRleCBlbnRyeSBmb3JtYXQgJTA4eCIsIGV4dGVuZGVkX2ZsYWdzKTsKKwkJCWRpZShfKCJ1bmtub3duIGluZGV4IGVudHJ5IGZvcm1hdCAweCUwOHgiKSwgZXh0ZW5kZWRfZmxhZ3MpOwogCQlmbGFncyB8PSBleHRlbmRlZF9mbGFnczsKLQkJbmFtZSA9IG9uZGlzazItPm5hbWU7CisJCW5hbWUgPSAoY29uc3QgY2hhciAqKShmbGFnc3AgKyAyKTsKIAl9CiAJZWxzZQotCQluYW1lID0gb25kaXNrLT5uYW1lOworCQluYW1lID0gKGNvbnN0IGNoYXIgKikoZmxhZ3NwICsgMSk7CiAKIAlpZiAoZXhwYW5kX25hbWVfZmllbGQpIHsKIAkJY29uc3QgdW5zaWduZWQgY2hhciAqY3AgPSAoY29uc3QgdW5zaWduZWQgY2hhciAqKW5hbWU7CiAJCXNpemVfdCBzdHJpcF9sZW4sIHByZXZpb3VzX2xlbjsKIAotCQkvKiBJZiB3ZSdyZSBhdCB0aGUgYmVnaW5pbmcgb2YgYSBibG9jaywgaWdub3JlIHRoZSBwcmV2aW91cyBuYW1lICovCisJCS8qIElmIHdlJ3JlIGF0IHRoZSBiZWdpbm5pbmcgb2YgYSBibG9jaywgaWdub3JlIHRoZSBwcmV2aW91cyBuYW1lICovCiAJCXN0cmlwX2xlbiA9IGRlY29kZV92YXJpbnQoJmNwKTsKIAkJaWYgKHByZXZpb3VzX2NlKSB7CiAJCQlwcmV2aW91c19sZW4gPSBwcmV2aW91c19jZS0+Y2VfbmFtZWxlbjsKQEAgLTE4MjgsNyArMTgzOSw5IEBACiAJY2UtPmNlX2ZsYWdzID0gZmxhZ3MgJiB+Q0VfTkFNRU1BU0s7CiAJY2UtPmNlX25hbWVsZW4gPSBsZW47CiAJY2UtPmluZGV4ID0gMDsKLQloYXNoY3B5KGNlLT5vaWQuaGFzaCwgb25kaXNrLT5zaGExKTsKKwloYXNoY3B5KGNlLT5vaWQuaGFzaCwgb25kaXNrLT5kYXRhKTsKKwltZW1jcHkoY2UtPm5hbWUsIG5hbWUsIGxlbik7CisJY2UtPm5hbWVbbGVuXSA9ICdcMCc7CiAKIAlpZiAoZXhwYW5kX25hbWVfZmllbGQpIHsKIAkJaWYgKGNvcHlfbGVuKQpAQCAtMTg1NSwxMyArMTg2OCwxMyBAQAogCQlpbnQgbmFtZV9jb21wYXJlID0gc3RyY21wKGNlLT5uYW1lLCBuZXh0X2NlLT5uYW1lKTsKIAogCQlpZiAoMCA8IG5hbWVfY29tcGFyZSkKLQkJCWRpZSgidW5vcmRlcmVkIHN0YWdlIGVudHJpZXMgaW4gaW5kZXgiKTsKKwkJCWRpZShfKCJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBpbiBpbmRleCIpKTsKIAkJaWYgKCFuYW1lX2NvbXBhcmUpIHsKIAkJCWlmICghY2Vfc3RhZ2UoY2UpKQotCQkJCWRpZSgibXVsdGlwbGUgc3RhZ2UgZW50cmllcyBmb3IgbWVyZ2VkIGZpbGUgJyVzJyIsCisJCQkJZGllKF8oIm11bHRpcGxlIHN0YWdlIGVudHJpZXMgZm9yIG1lcmdlZCBmaWxlICclcyciKSwKIAkJCQkgICAgY2UtPm5hbWUpOwogCQkJaWYgKGNlX3N0YWdlKGNlKSA+IGNlX3N0YWdlKG5leHRfY2UpKQotCQkJCWRpZSgidW5vcmRlcmVkIHN0YWdlIGVudHJpZXMgZm9yICclcyciLAorCQkJCWRpZShfKCJ1bm9yZGVyZWQgc3RhZ2UgZW50cmllcyBmb3IgJyVzJyIpLAogCQkJCSAgICBjZS0+bmFtZSk7CiAJCX0KIAl9CkBAIC0xODY5LDE4ICsxODgyLDE3IEBACiAKIHN0YXRpYyB2b2lkIHR3ZWFrX3VudHJhY2tlZF9jYWNoZShzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSkKIHsKLQlzd2l0Y2ggKGdpdF9jb25maWdfZ2V0X3VudHJhY2tlZF9jYWNoZSgpKSB7Ci0JY2FzZSAtMTogLyoga2VlcDogZG8gbm90aGluZyAqLwotCQlicmVhazsKLQljYXNlIDA6IC8qIGZhbHNlICovCisJc3RydWN0IHJlcG9zaXRvcnkgKnIgPSB0aGVfcmVwb3NpdG9yeTsKKworCXByZXBhcmVfcmVwb19zZXR0aW5ncyhyKTsKKworCWlmIChyLT5zZXR0aW5ncy5jb3JlX3VudHJhY2tlZF9jYWNoZSAgPT0gVU5UUkFDS0VEX0NBQ0hFX1JFTU9WRSkgewogCQlyZW1vdmVfdW50cmFja2VkX2NhY2hlKGlzdGF0ZSk7Ci0JCWJyZWFrOwotCWNhc2UgMTogLyogdHJ1ZSAqLwotCQlhZGRfdW50cmFja2VkX2NhY2hlKGlzdGF0ZSk7Ci0JCWJyZWFrOwotCWRlZmF1bHQ6IC8qIHVua25vd24gdmFsdWU6IGRvIG5vdGhpbmcgKi8KLQkJYnJlYWs7CisJCXJldHVybjsKIAl9CisKKwlpZiAoci0+c2V0dGluZ3MuY29yZV91bnRyYWNrZWRfY2FjaGUgPT0gVU5UUkFDS0VEX0NBQ0hFX1dSSVRFKQorCQlhZGRfdW50cmFja2VkX2NhY2hlKGlzdGF0ZSk7CiB9CiAKIHN0YXRpYyB2b2lkIHR3ZWFrX3NwbGl0X2luZGV4KHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKQpAQCAtMTkxOSw3ICsxOTMxLDcgQEAKIAkvKgogCSAqIEFjY291bnQgZm9yIHBvdGVudGlhbCBhbGlnbm1lbnQgZGlmZmVyZW5jZXMuCiAJICovCi0JcGVyX2VudHJ5ICs9IGFsaWduX3BhZGRpbmdfc2l6ZShzaXplb2Yoc3RydWN0IGNhY2hlX2VudHJ5KSwgLXNpemVvZihzdHJ1Y3Qgb25kaXNrX2NhY2hlX2VudHJ5KSk7CisJcGVyX2VudHJ5ICs9IGFsaWduX3BhZGRpbmdfc2l6ZShwZXJfZW50cnksIDApOwogCXJldHVybiBvbmRpc2tfc2l6ZSArIGVudHJpZXMgKiBwZXJfZW50cnk7CiB9CiAKQEAgLTIwNjIsNyArMjA3NCw3IEBACiB9CiAKIHN0YXRpYyB1bnNpZ25lZCBsb25nIGxvYWRfY2FjaGVfZW50cmllc190aHJlYWRlZChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgY29uc3QgY2hhciAqbW1hcCwgc2l6ZV90IG1tYXBfc2l6ZSwKLQkJCXVuc2lnbmVkIGxvbmcgc3JjX29mZnNldCwgaW50IG5yX3RocmVhZHMsIHN0cnVjdCBpbmRleF9lbnRyeV9vZmZzZXRfdGFibGUgKmllb3QpCisJCQkJCQkgaW50IG5yX3RocmVhZHMsIHN0cnVjdCBpbmRleF9lbnRyeV9vZmZzZXRfdGFibGUgKmllb3QpCiB7CiAJaW50IGksIG9mZnNldCwgaWVvdF9ibG9ja3MsIGllb3Rfc3RhcnQsIGVycjsKIAlzdHJ1Y3QgbG9hZF9jYWNoZV9lbnRyaWVzX3RocmVhZF9kYXRhICpkYXRhOwpAQCAtMjE1NSwxOSArMjE2NywxOSBAQAogCWlmIChmZCA8IDApIHsKIAkJaWYgKCFtdXN0X2V4aXN0ICYmIGVycm5vID09IEVOT0VOVCkKIAkJCXJldHVybiAwOwotCQlkaWVfZXJybm8oIiVzOiBpbmRleCBmaWxlIG9wZW4gZmFpbGVkIiwgcGF0aCk7CisJCWRpZV9lcnJubyhfKCIlczogaW5kZXggZmlsZSBvcGVuIGZhaWxlZCIpLCBwYXRoKTsKIAl9CiAKIAlpZiAoZnN0YXQoZmQsICZzdCkpCi0JCWRpZV9lcnJubygiY2Fubm90IHN0YXQgdGhlIG9wZW4gaW5kZXgiKTsKKwkJZGllX2Vycm5vKF8oIiVzOiBjYW5ub3Qgc3RhdCB0aGUgb3BlbiBpbmRleCIpLCBwYXRoKTsKIAogCW1tYXBfc2l6ZSA9IHhzaXplX3Qoc3Quc3Rfc2l6ZSk7CiAJaWYgKG1tYXBfc2l6ZSA8IHNpemVvZihzdHJ1Y3QgY2FjaGVfaGVhZGVyKSArIHRoZV9oYXNoX2FsZ28tPnJhd3N6KQotCQlkaWUoImluZGV4IGZpbGUgc21hbGxlciB0aGFuIGV4cGVjdGVkIik7CisJCWRpZShfKCIlczogaW5kZXggZmlsZSBzbWFsbGVyIHRoYW4gZXhwZWN0ZWQiKSwgcGF0aCk7CiAKLQltbWFwID0geG1tYXAoTlVMTCwgbW1hcF9zaXplLCBQUk9UX1JFQUQsIE1BUF9QUklWQVRFLCBmZCwgMCk7CisJbW1hcCA9IHhtbWFwX2dlbnRseShOVUxMLCBtbWFwX3NpemUsIFBST1RfUkVBRCwgTUFQX1BSSVZBVEUsIGZkLCAwKTsKIAlpZiAobW1hcCA9PSBNQVBfRkFJTEVEKQotCQlkaWVfZXJybm8oInVuYWJsZSB0byBtYXAgaW5kZXggZmlsZSIpOworCQlkaWVfZXJybm8oXygiJXM6IHVuYWJsZSB0byBtYXAgaW5kZXggZmlsZSIpLCBwYXRoKTsKIAljbG9zZShmZCk7CiAKIAloZHIgPSAoY29uc3Qgc3RydWN0IGNhY2hlX2hlYWRlciAqKW1tYXA7CkBAIC0yMjIzLDcgKzIyMzUsNyBAQAogCQlpZW90ID0gcmVhZF9pZW90X2V4dGVuc2lvbihtbWFwLCBtbWFwX3NpemUsIGV4dGVuc2lvbl9vZmZzZXQpOwogCiAJaWYgKGllb3QpIHsKLQkJc3JjX29mZnNldCArPSBsb2FkX2NhY2hlX2VudHJpZXNfdGhyZWFkZWQoaXN0YXRlLCBtbWFwLCBtbWFwX3NpemUsIHNyY19vZmZzZXQsIG5yX3RocmVhZHMsIGllb3QpOworCQlzcmNfb2Zmc2V0ICs9IGxvYWRfY2FjaGVfZW50cmllc190aHJlYWRlZChpc3RhdGUsIG1tYXAsIG1tYXBfc2l6ZSwgbnJfdGhyZWFkcywgaWVvdCk7CiAJCWZyZWUoaWVvdCk7CiAJfSBlbHNlIHsKIAkJc3JjX29mZnNldCArPSBsb2FkX2FsbF9jYWNoZV9lbnRyaWVzKGlzdGF0ZSwgbW1hcCwgbW1hcF9zaXplLCBzcmNfb2Zmc2V0KTsKQEAgLTIyNDIsMTEgKzIyNTQsMjEgQEAKIAkJbG9hZF9pbmRleF9leHRlbnNpb25zKCZwKTsKIAl9CiAJbXVubWFwKCh2b2lkICopbW1hcCwgbW1hcF9zaXplKTsKKworCS8qCisJICogVE9ETyB0cmFjZTI6IHJlcGxhY2UgInRoZV9yZXBvc2l0b3J5IiB3aXRoIHRoZSBhY3R1YWwgcmVwbyBpbnN0YW5jZQorCSAqIHRoYXQgaXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBnaXZlbiAiaXN0YXRlIi4KKwkgKi8KKwl0cmFjZTJfZGF0YV9pbnRtYXgoImluZGV4IiwgdGhlX3JlcG9zaXRvcnksICJyZWFkL3ZlcnNpb24iLAorCQkJICAgaXN0YXRlLT52ZXJzaW9uKTsKKwl0cmFjZTJfZGF0YV9pbnRtYXgoImluZGV4IiwgdGhlX3JlcG9zaXRvcnksICJyZWFkL2NhY2hlX25yIiwKKwkJCSAgIGlzdGF0ZS0+Y2FjaGVfbnIpOworCiAJcmV0dXJuIGlzdGF0ZS0+Y2FjaGVfbnI7CiAKIHVubWFwOgogCW11bm1hcCgodm9pZCAqKW1tYXAsIG1tYXBfc2l6ZSk7Ci0JZGllKCJpbmRleCBmaWxlIGNvcnJ1cHQiKTsKKwlkaWUoXygiaW5kZXggZmlsZSBjb3JydXB0IikpOwogfQogCiAvKgpAQCAtMjI1OCw3ICsyMjgwLDcgQEAKIHN0YXRpYyB2b2lkIGZyZXNoZW5fc2hhcmVkX2luZGV4KGNvbnN0IGNoYXIgKnNoYXJlZF9pbmRleCwgaW50IHdhcm4pCiB7CiAJaWYgKCFjaGVja19hbmRfZnJlc2hlbl9maWxlKHNoYXJlZF9pbmRleCwgMSkgJiYgd2FybikKLQkJd2FybmluZygiY291bGQgbm90IGZyZXNoZW4gc2hhcmVkIGluZGV4ICclcyciLCBzaGFyZWRfaW5kZXgpOworCQl3YXJuaW5nKF8oImNvdWxkIG5vdCBmcmVzaGVuIHNoYXJlZCBpbmRleCAnJXMnIiksIHNoYXJlZF9pbmRleCk7CiB9CiAKIGludCByZWFkX2luZGV4X2Zyb20oc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsIGNvbnN0IGNoYXIgKnBhdGgsCkBAIC0yMjczLDkgKzIyOTUsMTcgQEAKIAlpZiAoaXN0YXRlLT5pbml0aWFsaXplZCkKIAkJcmV0dXJuIGlzdGF0ZS0+Y2FjaGVfbnI7CiAKKwkvKgorCSAqIFRPRE8gdHJhY2UyOiByZXBsYWNlICJ0aGVfcmVwb3NpdG9yeSIgd2l0aCB0aGUgYWN0dWFsIHJlcG8gaW5zdGFuY2UKKwkgKiB0aGF0IGlzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ2l2ZW4gImlzdGF0ZSIuCisJICovCisJdHJhY2UyX3JlZ2lvbl9lbnRlcl9wcmludGYoImluZGV4IiwgImRvX3JlYWRfaW5kZXgiLCB0aGVfcmVwb3NpdG9yeSwKKwkJCQkgICAiJXMiLCBwYXRoKTsKIAl0cmFjZV9wZXJmb3JtYW5jZV9lbnRlcigpOwogCXJldCA9IGRvX3JlYWRfaW5kZXgoaXN0YXRlLCBwYXRoLCAwKTsKIAl0cmFjZV9wZXJmb3JtYW5jZV9sZWF2ZSgicmVhZCBjYWNoZSAlcyIsIHBhdGgpOworCXRyYWNlMl9yZWdpb25fbGVhdmVfcHJpbnRmKCJpbmRleCIsICJkb19yZWFkX2luZGV4IiwgdGhlX3JlcG9zaXRvcnksCisJCQkJICAgIiVzIiwgcGF0aCk7CiAKIAlzcGxpdF9pbmRleCA9IGlzdGF0ZS0+c3BsaXRfaW5kZXg7CiAJaWYgKCFzcGxpdF9pbmRleCB8fCBpc19udWxsX29pZCgmc3BsaXRfaW5kZXgtPmJhc2Vfb2lkKSkgewpAQCAtMjI5MSw5ICsyMzIxLDEzIEBACiAKIAliYXNlX29pZF9oZXggPSBvaWRfdG9faGV4KCZzcGxpdF9pbmRleC0+YmFzZV9vaWQpOwogCWJhc2VfcGF0aCA9IHhzdHJmbXQoIiVzL3NoYXJlZGluZGV4LiVzIiwgZ2l0ZGlyLCBiYXNlX29pZF9oZXgpOworCXRyYWNlMl9yZWdpb25fZW50ZXJfcHJpbnRmKCJpbmRleCIsICJzaGFyZWQvZG9fcmVhZF9pbmRleCIsCisJCQkJICAgdGhlX3JlcG9zaXRvcnksICIlcyIsIGJhc2VfcGF0aCk7CiAJcmV0ID0gZG9fcmVhZF9pbmRleChzcGxpdF9pbmRleC0+YmFzZSwgYmFzZV9wYXRoLCAxKTsKKwl0cmFjZTJfcmVnaW9uX2xlYXZlX3ByaW50ZigiaW5kZXgiLCAic2hhcmVkL2RvX3JlYWRfaW5kZXgiLAorCQkJCSAgIHRoZV9yZXBvc2l0b3J5LCAiJXMiLCBiYXNlX3BhdGgpOwogCWlmICghb2lkZXEoJnNwbGl0X2luZGV4LT5iYXNlX29pZCwgJnNwbGl0X2luZGV4LT5iYXNlLT5vaWQpKQotCQlkaWUoImJyb2tlbiBpbmRleCwgZXhwZWN0ICVzIGluICVzLCBnb3QgJXMiLAorCQlkaWUoXygiYnJva2VuIGluZGV4LCBleHBlY3QgJXMgaW4gJXMsIGdvdCAlcyIpLAogCQkgICAgYmFzZV9vaWRfaGV4LCBiYXNlX3BhdGgsCiAJCSAgICBvaWRfdG9faGV4KCZzcGxpdF9pbmRleC0+YmFzZS0+b2lkKSk7CiAKQEAgLTIzMjksNiArMjM2Myw3IEBACiAJZnJlZV9uYW1lX2hhc2goaXN0YXRlKTsKIAljYWNoZV90cmVlX2ZyZWUoJihpc3RhdGUtPmNhY2hlX3RyZWUpKTsKIAlpc3RhdGUtPmluaXRpYWxpemVkID0gMDsKKwlpc3RhdGUtPmZzbW9uaXRvcl9oYXNfcnVuX29uY2UgPSAwOwogCUZSRUVfQU5EX05VTEwoaXN0YXRlLT5jYWNoZSk7CiAJaXN0YXRlLT5jYWNoZV9hbGxvYyA9IDA7CiAJZGlzY2FyZF9zcGxpdF9pbmRleChpc3RhdGUpOwpAQCAtMjM1OSwxNCArMjM5NCwxNCBAQAogCiAJZm9yIChpID0gMDsgaSA8IGlzdGF0ZS0+Y2FjaGVfbnI7IGkrKykgewogCQlpZiAoIWlzdGF0ZSkgewotCQkJZGllKCJpbnRlcm5hbCBlcnJvcjogY2FjaGUgZW50cnkgaXMgbm90IGFsbG9jYXRlZCBmcm9tIGV4cGVjdGVkIG1lbW9yeSBwb29sIik7CisJCQlCVUcoImNhY2hlIGVudHJ5IGlzIG5vdCBhbGxvY2F0ZWQgZnJvbSBleHBlY3RlZCBtZW1vcnkgcG9vbCIpOwogCQl9IGVsc2UgaWYgKCFpc3RhdGUtPmNlX21lbV9wb29sIHx8CiAJCQkhbWVtX3Bvb2xfY29udGFpbnMoaXN0YXRlLT5jZV9tZW1fcG9vbCwgaXN0YXRlLT5jYWNoZVtpXSkpIHsKIAkJCWlmICghaXN0YXRlLT5zcGxpdF9pbmRleCB8fAogCQkJCSFpc3RhdGUtPnNwbGl0X2luZGV4LT5iYXNlIHx8CiAJCQkJIWlzdGF0ZS0+c3BsaXRfaW5kZXgtPmJhc2UtPmNlX21lbV9wb29sIHx8CiAJCQkJIW1lbV9wb29sX2NvbnRhaW5zKGlzdGF0ZS0+c3BsaXRfaW5kZXgtPmJhc2UtPmNlX21lbV9wb29sLCBpc3RhdGUtPmNhY2hlW2ldKSkgewotCQkJCWRpZSgiaW50ZXJuYWwgZXJyb3I6IGNhY2hlIGVudHJ5IGlzIG5vdCBhbGxvY2F0ZWQgZnJvbSBleHBlY3RlZCBtZW1vcnkgcG9vbCIpOworCQkJCUJVRygiY2FjaGUgZW50cnkgaXMgbm90IGFsbG9jYXRlZCBmcm9tIGV4cGVjdGVkIG1lbW9yeSBwb29sIik7CiAJCQl9CiAJCX0KIAl9CkBAIC0yMzg1LDIyICsyNDIwLDIwIEBACiAJcmV0dXJuIDA7CiB9CiAKLWludCBpbmRleF9oYXNfY2hhbmdlcyhzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKLQkJICAgICAgc3RydWN0IHRyZWUgKnRyZWUsCi0JCSAgICAgIHN0cnVjdCBzdHJidWYgKnNiKQoraW50IHJlcG9faW5kZXhfaGFzX2NoYW5nZXMoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkgICBzdHJ1Y3QgdHJlZSAqdHJlZSwKKwkJCSAgIHN0cnVjdCBzdHJidWYgKnNiKQogeworCXN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlID0gcmVwby0+aW5kZXg7CiAJc3RydWN0IG9iamVjdF9pZCBjbXA7CiAJaW50IGk7CiAKLQlpZiAoaXN0YXRlICE9ICZ0aGVfaW5kZXgpIHsKLQkJQlVHKCJpbmRleF9oYXNfY2hhbmdlcyBjYW5ub3QgeWV0IGFjY2VwdCBpc3RhdGUgIT0gJnRoZV9pbmRleDsgZG9fZGlmZl9jYWNoZSBuZWVkcyB1cGRhdGluZyBmaXJzdC4iKTsKLQl9CiAJaWYgKHRyZWUpCiAJCWNtcCA9IHRyZWUtPm9iamVjdC5vaWQ7CiAJaWYgKHRyZWUgfHwgIWdldF9vaWRfdHJlZSgiSEVBRCIsICZjbXApKSB7CiAJCXN0cnVjdCBkaWZmX29wdGlvbnMgb3B0OwogCi0JCXJlcG9fZGlmZl9zZXR1cCh0aGVfcmVwb3NpdG9yeSwgJm9wdCk7CisJCXJlcG9fZGlmZl9zZXR1cChyZXBvLCAmb3B0KTsKIAkJb3B0LmZsYWdzLmV4aXRfd2l0aF9zdGF0dXMgPSAxOwogCQlpZiAoIXNiKQogCQkJb3B0LmZsYWdzLnF1aWNrID0gMTsKQEAgLTI1NTIsNiArMjU4NSw4IEBACiAJCQkJICAgICAgIHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UpCiB7CiAJc2hvcnQgZmxhZ3M7CisJY29uc3QgdW5zaWduZWQgaGFzaHN6ID0gdGhlX2hhc2hfYWxnby0+cmF3c3o7CisJdWludDE2X3QgKmZsYWdzcCA9ICh1aW50MTZfdCAqKShvbmRpc2stPmRhdGEgKyBoYXNoc3opOwogCiAJb25kaXNrLT5jdGltZS5zZWMgPSBodG9ubChjZS0+Y2Vfc3RhdF9kYXRhLnNkX2N0aW1lLnNlYyk7CiAJb25kaXNrLT5tdGltZS5zZWMgPSBodG9ubChjZS0+Y2Vfc3RhdF9kYXRhLnNkX210aW1lLnNlYyk7CkBAIC0yNTYzLDE1ICsyNTk4LDEzIEBACiAJb25kaXNrLT51aWQgID0gaHRvbmwoY2UtPmNlX3N0YXRfZGF0YS5zZF91aWQpOwogCW9uZGlzay0+Z2lkICA9IGh0b25sKGNlLT5jZV9zdGF0X2RhdGEuc2RfZ2lkKTsKIAlvbmRpc2stPnNpemUgPSBodG9ubChjZS0+Y2Vfc3RhdF9kYXRhLnNkX3NpemUpOwotCWhhc2hjcHkob25kaXNrLT5zaGExLCBjZS0+b2lkLmhhc2gpOworCWhhc2hjcHkob25kaXNrLT5kYXRhLCBjZS0+b2lkLmhhc2gpOwogCiAJZmxhZ3MgPSBjZS0+Y2VfZmxhZ3MgJiB+Q0VfTkFNRU1BU0s7CiAJZmxhZ3MgfD0gKGNlX25hbWVsZW4oY2UpID49IENFX05BTUVNQVNLID8gQ0VfTkFNRU1BU0sgOiBjZV9uYW1lbGVuKGNlKSk7Ci0Jb25kaXNrLT5mbGFncyA9IGh0b25zKGZsYWdzKTsKKwlmbGFnc3BbMF0gPSBodG9ucyhmbGFncyk7CiAJaWYgKGNlLT5jZV9mbGFncyAmIENFX0VYVEVOREVEKSB7Ci0JCXN0cnVjdCBvbmRpc2tfY2FjaGVfZW50cnlfZXh0ZW5kZWQgKm9uZGlzazI7Ci0JCW9uZGlzazIgPSAoc3RydWN0IG9uZGlza19jYWNoZV9lbnRyeV9leHRlbmRlZCAqKW9uZGlzazsKLQkJb25kaXNrMi0+ZmxhZ3MyID0gaHRvbnMoKGNlLT5jZV9mbGFncyAmIENFX0VYVEVOREVEX0ZMQUdTKSA+PiAxNik7CisJCWZsYWdzcFsxXSA9IGh0b25zKChjZS0+Y2VfZmxhZ3MgJiBDRV9FWFRFTkRFRF9GTEFHUykgPj4gMTYpOwogCX0KIH0KIApAQCAtMjU5MCwxMCArMjYyMyw3IEBACiAJCXN0cmlwcGVkX25hbWUgPSAxOwogCX0KIAotCWlmIChjZS0+Y2VfZmxhZ3MgJiBDRV9FWFRFTkRFRCkKLQkJc2l6ZSA9IG9mZnNldG9mKHN0cnVjdCBvbmRpc2tfY2FjaGVfZW50cnlfZXh0ZW5kZWQsIG5hbWUpOwotCWVsc2UKLQkJc2l6ZSA9IG9mZnNldG9mKHN0cnVjdCBvbmRpc2tfY2FjaGVfZW50cnksIG5hbWUpOworCXNpemUgPSBvZmZzZXRvZihzdHJ1Y3Qgb25kaXNrX2NhY2hlX2VudHJ5LGRhdGEpICsgb25kaXNrX2RhdGFfc2l6ZShjZS0+Y2VfZmxhZ3MsIDApOwogCiAJaWYgKCFwcmV2aW91c19uYW1lKSB7CiAJCWludCBsZW4gPSBjZV9uYW1lbGVuKGNlKTsKQEAgLTI2NzQsOSArMjcwNCw5IEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgdmVyaWZ5X2luZGV4KGNvbnN0IHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKQorc3RhdGljIGludCByZXBvX3ZlcmlmeV9pbmRleChzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbykKIHsKLQlyZXR1cm4gdmVyaWZ5X2luZGV4X2Zyb20oaXN0YXRlLCBnZXRfaW5kZXhfZmlsZSgpKTsKKwlyZXR1cm4gdmVyaWZ5X2luZGV4X2Zyb20ocmVwby0+aW5kZXgsIHJlcG8tPmluZGV4X2ZpbGUpOwogfQogCiBzdGF0aWMgaW50IGhhc19yYWN5X3RpbWVzdGFtcChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSkKQEAgLTI2OTIsMTEgKzI3MjIsMTMgQEAKIAlyZXR1cm4gMDsKIH0KIAotdm9pZCB1cGRhdGVfaW5kZXhfaWZfYWJsZShzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgc3RydWN0IGxvY2tfZmlsZSAqbG9ja2ZpbGUpCit2b2lkIHJlcG9fdXBkYXRlX2luZGV4X2lmX2FibGUoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkgICAgICAgc3RydWN0IGxvY2tfZmlsZSAqbG9ja2ZpbGUpCiB7Ci0JaWYgKChpc3RhdGUtPmNhY2hlX2NoYW5nZWQgfHwgaGFzX3JhY3lfdGltZXN0YW1wKGlzdGF0ZSkpICYmCi0JICAgIHZlcmlmeV9pbmRleChpc3RhdGUpKQotCQl3cml0ZV9sb2NrZWRfaW5kZXgoaXN0YXRlLCBsb2NrZmlsZSwgQ09NTUlUX0xPQ0spOworCWlmICgocmVwby0+aW5kZXgtPmNhY2hlX2NoYW5nZWQgfHwKKwkgICAgIGhhc19yYWN5X3RpbWVzdGFtcChyZXBvLT5pbmRleCkpICYmCisJICAgIHJlcG9fdmVyaWZ5X2luZGV4KHJlcG8pKQorCQl3cml0ZV9sb2NrZWRfaW5kZXgocmVwby0+aW5kZXgsIGxvY2tmaWxlLCBDT01NSVRfTE9DSyk7CiAJZWxzZQogCQlyb2xsYmFja19sb2NrX2ZpbGUobG9ja2ZpbGUpOwogfQpAQCAtMjc0OSw3ICsyNzgxLDcgQEAKIAlzdHJ1Y3QgY2FjaGVfZW50cnkgKipjYWNoZSA9IGlzdGF0ZS0+Y2FjaGU7CiAJaW50IGVudHJpZXMgPSBpc3RhdGUtPmNhY2hlX25yOwogCXN0cnVjdCBzdGF0IHN0OwotCXN0cnVjdCBvbmRpc2tfY2FjaGVfZW50cnlfZXh0ZW5kZWQgb25kaXNrOworCXN0cnVjdCBvbmRpc2tfY2FjaGVfZW50cnkgb25kaXNrOwogCXN0cnVjdCBzdHJidWYgcHJldmlvdXNfbmFtZV9idWYgPSBTVFJCVUZfSU5JVCwgKnByZXZpb3VzX25hbWU7CiAJaW50IGRyb3BfY2FjaGVfdHJlZSA9IGlzdGF0ZS0+ZHJvcF9jYWNoZV90cmVlOwogCW9mZl90IG9mZnNldDsKQEAgLTI3NzAsNyArMjgwMiw3IEBACiAJfQogCiAJaWYgKCFpc3RhdGUtPnZlcnNpb24pIHsKLQkJaXN0YXRlLT52ZXJzaW9uID0gZ2V0X2luZGV4X2Zvcm1hdF9kZWZhdWx0KCk7CisJCWlzdGF0ZS0+dmVyc2lvbiA9IGdldF9pbmRleF9mb3JtYXRfZGVmYXVsdCh0aGVfcmVwb3NpdG9yeSk7CiAJCWlmIChnaXRfZW52X2Jvb2woIkdJVF9URVNUX1NQTElUX0lOREVYIiwgMCkpCiAJCQlpbml0X3NwbGl0X2luZGV4KGlzdGF0ZSk7CiAJfQpAQCAtMjkxNiw3ICsyOTQ4LDggQEAKIAkJCXJldHVybiAtMTsKIAl9CiAKLQlpZiAoIXN0cmlwX2V4dGVuc2lvbnMgJiYgaXN0YXRlLT5zcGxpdF9pbmRleCkgeworCWlmICghc3RyaXBfZXh0ZW5zaW9ucyAmJiBpc3RhdGUtPnNwbGl0X2luZGV4ICYmCisJICAgICFpc19udWxsX29pZCgmaXN0YXRlLT5zcGxpdF9pbmRleC0+YmFzZV9vaWQpKSB7CiAJCXN0cnVjdCBzdHJidWYgc2IgPSBTVFJCVUZfSU5JVDsKIAogCQllcnIgPSB3cml0ZV9saW5rX2V4dGVuc2lvbigmc2IsIGlzdGF0ZSkgPCAwIHx8CkBAIC0yOTk4LDYgKzMwMzEsMTYgQEAKIAlpc3RhdGUtPnRpbWVzdGFtcC5zZWMgPSAodW5zaWduZWQgaW50KXN0LnN0X210aW1lOwogCWlzdGF0ZS0+dGltZXN0YW1wLm5zZWMgPSBTVF9NVElNRV9OU0VDKHN0KTsKIAl0cmFjZV9wZXJmb3JtYW5jZV9zaW5jZShzdGFydCwgIndyaXRlIGluZGV4LCBjaGFuZ2VkIG1hc2sgPSAleCIsIGlzdGF0ZS0+Y2FjaGVfY2hhbmdlZCk7CisKKwkvKgorCSAqIFRPRE8gdHJhY2UyOiByZXBsYWNlICJ0aGVfcmVwb3NpdG9yeSIgd2l0aCB0aGUgYWN0dWFsIHJlcG8gaW5zdGFuY2UKKwkgKiB0aGF0IGlzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ2l2ZW4gImlzdGF0ZSIuCisJICovCisJdHJhY2UyX2RhdGFfaW50bWF4KCJpbmRleCIsIHRoZV9yZXBvc2l0b3J5LCAid3JpdGUvdmVyc2lvbiIsCisJCQkgICBpc3RhdGUtPnZlcnNpb24pOworCXRyYWNlMl9kYXRhX2ludG1heCgiaW5kZXgiLCB0aGVfcmVwb3NpdG9yeSwgIndyaXRlL2NhY2hlX25yIiwKKwkJCSAgIGlzdGF0ZS0+Y2FjaGVfbnIpOworCiAJcmV0dXJuIDA7CiB9CiAKQEAgLTMwMTcsMTIgKzMwNjAsMzIgQEAKIHN0YXRpYyBpbnQgZG9fd3JpdGVfbG9ja2VkX2luZGV4KHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLCBzdHJ1Y3QgbG9ja19maWxlICpsb2NrLAogCQkJCSB1bnNpZ25lZCBmbGFncykKIHsKLQlpbnQgcmV0ID0gZG9fd3JpdGVfaW5kZXgoaXN0YXRlLCBsb2NrLT50ZW1wZmlsZSwgMCk7CisJaW50IHJldDsKKworCS8qCisJICogVE9ETyB0cmFjZTI6IHJlcGxhY2UgInRoZV9yZXBvc2l0b3J5IiB3aXRoIHRoZSBhY3R1YWwgcmVwbyBpbnN0YW5jZQorCSAqIHRoYXQgaXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBnaXZlbiAiaXN0YXRlIi4KKwkgKi8KKwl0cmFjZTJfcmVnaW9uX2VudGVyX3ByaW50ZigiaW5kZXgiLCAiZG9fd3JpdGVfaW5kZXgiLCB0aGVfcmVwb3NpdG9yeSwKKwkJCQkgICAiJXMiLCBsb2NrLT50ZW1wZmlsZS0+ZmlsZW5hbWUuYnVmKTsKKwlyZXQgPSBkb193cml0ZV9pbmRleChpc3RhdGUsIGxvY2stPnRlbXBmaWxlLCAwKTsKKwl0cmFjZTJfcmVnaW9uX2xlYXZlX3ByaW50ZigiaW5kZXgiLCAiZG9fd3JpdGVfaW5kZXgiLCB0aGVfcmVwb3NpdG9yeSwKKwkJCQkgICAiJXMiLCBsb2NrLT50ZW1wZmlsZS0+ZmlsZW5hbWUuYnVmKTsKKwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAJaWYgKGZsYWdzICYgQ09NTUlUX0xPQ0spCi0JCXJldHVybiBjb21taXRfbG9ja2VkX2luZGV4KGxvY2spOwotCXJldHVybiBjbG9zZV9sb2NrX2ZpbGVfZ2VudGx5KGxvY2spOworCQlyZXQgPSBjb21taXRfbG9ja2VkX2luZGV4KGxvY2spOworCWVsc2UKKwkJcmV0ID0gY2xvc2VfbG9ja19maWxlX2dlbnRseShsb2NrKTsKKworCXJ1bl9ob29rX2xlKE5VTEwsICJwb3N0LWluZGV4LWNoYW5nZSIsCisJCQlpc3RhdGUtPnVwZGF0ZWRfd29ya2RpciA/ICIxIiA6ICIwIiwKKwkJCWlzdGF0ZS0+dXBkYXRlZF9za2lwd29ya3RyZWUgPyAiMSIgOiAiMCIsIE5VTEwpOworCWlzdGF0ZS0+dXBkYXRlZF93b3JrZGlyID0gMDsKKwlpc3RhdGUtPnVwZGF0ZWRfc2tpcHdvcmt0cmVlID0gMDsKKworCXJldHVybiByZXQ7CiB9CiAKIHN0YXRpYyBpbnQgd3JpdGVfc3BsaXRfaW5kZXgoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCkBAIC0zMTAyLDEyICszMTY1LDE4IEBACiAJaW50IHJldDsKIAogCW1vdmVfY2FjaGVfdG9fYmFzZV9pbmRleChpc3RhdGUpOworCisJdHJhY2UyX3JlZ2lvbl9lbnRlcl9wcmludGYoImluZGV4IiwgInNoYXJlZC9kb193cml0ZV9pbmRleCIsCisJCQkJICAgdGhlX3JlcG9zaXRvcnksICIlcyIsICgqdGVtcCktPmZpbGVuYW1lLmJ1Zik7CiAJcmV0ID0gZG9fd3JpdGVfaW5kZXgoc2ktPmJhc2UsICp0ZW1wLCAxKTsKKwl0cmFjZTJfcmVnaW9uX2xlYXZlX3ByaW50ZigiaW5kZXgiLCAic2hhcmVkL2RvX3dyaXRlX2luZGV4IiwKKwkJCQkgICB0aGVfcmVwb3NpdG9yeSwgIiVzIiwgKCp0ZW1wKS0+ZmlsZW5hbWUuYnVmKTsKKwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAJcmV0ID0gYWRqdXN0X3NoYXJlZF9wZXJtKGdldF90ZW1wZmlsZV9wYXRoKCp0ZW1wKSk7CiAJaWYgKHJldCkgewotCQllcnJvcigiY2Fubm90IGZpeCBwZXJtaXNzaW9uIGJpdHMgb24gJXMiLCBnZXRfdGVtcGZpbGVfcGF0aCgqdGVtcCkpOworCQllcnJvcihfKCJjYW5ub3QgZml4IHBlcm1pc3Npb24gYml0cyBvbiAnJXMnIiksIGdldF90ZW1wZmlsZV9wYXRoKCp0ZW1wKSk7CiAJCXJldHVybiByZXQ7CiAJfQogCXJldCA9IHJlbmFtZV90ZW1wZmlsZSh0ZW1wLApAQCAtMzE1Nyw3ICszMjI2LDcgQEAKIAlzdHJ1Y3Qgc3BsaXRfaW5kZXggKnNpID0gaXN0YXRlLT5zcGxpdF9pbmRleDsKIAogCWlmIChnaXRfZW52X2Jvb2woIkdJVF9URVNUX0NIRUNLX0NBQ0hFX1RSRUUiLCAwKSkKLQkJY2FjaGVfdHJlZV92ZXJpZnkoaXN0YXRlKTsKKwkJY2FjaGVfdHJlZV92ZXJpZnkodGhlX3JlcG9zaXRvcnksIGlzdGF0ZSk7CiAKIAlpZiAoKGZsYWdzICYgU0tJUF9JRl9VTkNIQU5HRUQpICYmICFpc3RhdGUtPmNhY2hlX2NoYW5nZWQpIHsKIAkJaWYgKGZsYWdzICYgQ09NTUlUX0xPQ0spCkBAIC0zMjExLDcgKzMyODAsNyBAQAogCXJldCA9IHdyaXRlX3NwbGl0X2luZGV4KGlzdGF0ZSwgbG9jaywgZmxhZ3MpOwogCiAJLyogRnJlc2hlbiB0aGUgc2hhcmVkIGluZGV4IG9ubHkgaWYgdGhlIHNwbGl0LWluZGV4IHdhcyB3cml0dGVuICovCi0JaWYgKCFyZXQgJiYgIW5ld19zaGFyZWRfaW5kZXgpIHsKKwlpZiAoIXJldCAmJiAhbmV3X3NoYXJlZF9pbmRleCAmJiAhaXNfbnVsbF9vaWQoJnNpLT5iYXNlX29pZCkpIHsKIAkJY29uc3QgY2hhciAqc2hhcmVkX2luZGV4ID0gZ2l0X3BhdGgoInNoYXJlZGluZGV4LiVzIiwKIAkJCQkJCSAgICBvaWRfdG9faGV4KCZzaS0+YmFzZV9vaWQpKTsKIAkJZnJlc2hlbl9zaGFyZWRfaW5kZXgoc2hhcmVkX2luZGV4LCAxKTsKQEAgLTMyMzMsMTIgKzMzMDIsMTQgQEAKICAqIHN0YXRlIGNhbiBjYWxsIHRoaXMgYW5kIGNoZWNrIGl0cyByZXR1cm4gdmFsdWUsIGluc3RlYWQgb2YgY2FsbGluZwogICogcmVhZF9jYWNoZSgpLgogICovCi1pbnQgcmVhZF9pbmRleF91bm1lcmdlZChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSkKK2ludCByZXBvX3JlYWRfaW5kZXhfdW5tZXJnZWQoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8pCiB7CisJc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGU7CiAJaW50IGk7CiAJaW50IHVubWVyZ2VkID0gMDsKIAotCXJlYWRfaW5kZXgoaXN0YXRlKTsKKwlyZXBvX3JlYWRfaW5kZXgocmVwbyk7CisJaXN0YXRlID0gcmVwby0+aW5kZXg7CiAJZm9yIChpID0gMDsgaSA8IGlzdGF0ZS0+Y2FjaGVfbnI7IGkrKykgewogCQlzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlID0gaXN0YXRlLT5jYWNoZVtpXTsKIAkJc3RydWN0IGNhY2hlX2VudHJ5ICpuZXdfY2U7CkBAIC0zMjU0LDcgKzMzMjUsNyBAQAogCQluZXdfY2UtPmNlX25hbWVsZW4gPSBsZW47CiAJCW5ld19jZS0+Y2VfbW9kZSA9IGNlLT5jZV9tb2RlOwogCQlpZiAoYWRkX2luZGV4X2VudHJ5KGlzdGF0ZSwgbmV3X2NlLCBBRERfQ0FDSEVfU0tJUF9ERkNIRUNLKSkKLQkJCXJldHVybiBlcnJvcigiJXM6IGNhbm5vdCBkcm9wIHRvIHN0YWdlICMwIiwKKwkJCXJldHVybiBlcnJvcihfKCIlczogY2Fubm90IGRyb3AgdG8gc3RhZ2UgIzAiKSwKIAkJCQkgICAgIG5ld19jZS0+bmFtZSk7CiAJfQogCXJldHVybiB1bm1lcmdlZDsKQEAgLTM1MDUsNzEgKzM1NzYsNzEgQEAKIAogc3RhdGljIHN0cnVjdCBpbmRleF9lbnRyeV9vZmZzZXRfdGFibGUgKnJlYWRfaWVvdF9leHRlbnNpb24oY29uc3QgY2hhciAqbW1hcCwgc2l6ZV90IG1tYXBfc2l6ZSwgc2l6ZV90IG9mZnNldCkKIHsKLSAgICAgICBjb25zdCBjaGFyICppbmRleCA9IE5VTEw7Ci0gICAgICAgdWludDMyX3QgZXh0c2l6ZSwgZXh0X3ZlcnNpb247Ci0gICAgICAgc3RydWN0IGluZGV4X2VudHJ5X29mZnNldF90YWJsZSAqaWVvdDsKLSAgICAgICBpbnQgaSwgbnI7CisJY29uc3QgY2hhciAqaW5kZXggPSBOVUxMOworCXVpbnQzMl90IGV4dHNpemUsIGV4dF92ZXJzaW9uOworCXN0cnVjdCBpbmRleF9lbnRyeV9vZmZzZXRfdGFibGUgKmllb3Q7CisJaW50IGksIG5yOwogCi0gICAgICAgLyogZmluZCB0aGUgSUVPVCBleHRlbnNpb24gKi8KLSAgICAgICBpZiAoIW9mZnNldCkKLQkgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgd2hpbGUgKG9mZnNldCA8PSBtbWFwX3NpemUgLSB0aGVfaGFzaF9hbGdvLT5yYXdzeiAtIDgpIHsKLQkgICAgICAgZXh0c2l6ZSA9IGdldF9iZTMyKG1tYXAgKyBvZmZzZXQgKyA0KTsKLQkgICAgICAgaWYgKENBQ0hFX0VYVCgobW1hcCArIG9mZnNldCkpID09IENBQ0hFX0VYVF9JTkRFWEVOVFJZT0ZGU0VUVEFCTEUpIHsKLQkJICAgICAgIGluZGV4ID0gbW1hcCArIG9mZnNldCArIDQgKyA0OwotCQkgICAgICAgYnJlYWs7Ci0JICAgICAgIH0KLQkgICAgICAgb2Zmc2V0ICs9IDg7Ci0JICAgICAgIG9mZnNldCArPSBleHRzaXplOwotICAgICAgIH0KLSAgICAgICBpZiAoIWluZGV4KQotCSAgICAgICByZXR1cm4gTlVMTDsKKwkvKiBmaW5kIHRoZSBJRU9UIGV4dGVuc2lvbiAqLworCWlmICghb2Zmc2V0KQorCQlyZXR1cm4gTlVMTDsKKwl3aGlsZSAob2Zmc2V0IDw9IG1tYXBfc2l6ZSAtIHRoZV9oYXNoX2FsZ28tPnJhd3N6IC0gOCkgeworCQlleHRzaXplID0gZ2V0X2JlMzIobW1hcCArIG9mZnNldCArIDQpOworCQlpZiAoQ0FDSEVfRVhUKChtbWFwICsgb2Zmc2V0KSkgPT0gQ0FDSEVfRVhUX0lOREVYRU5UUllPRkZTRVRUQUJMRSkgeworCQkJaW5kZXggPSBtbWFwICsgb2Zmc2V0ICsgNCArIDQ7CisJCQlicmVhazsKKwkJfQorCQlvZmZzZXQgKz0gODsKKwkJb2Zmc2V0ICs9IGV4dHNpemU7CisJfQorCWlmICghaW5kZXgpCisJCXJldHVybiBOVUxMOwogCi0gICAgICAgLyogdmFsaWRhdGUgdGhlIHZlcnNpb24gaXMgSUVPVF9WRVJTSU9OICovCi0gICAgICAgZXh0X3ZlcnNpb24gPSBnZXRfYmUzMihpbmRleCk7Ci0gICAgICAgaWYgKGV4dF92ZXJzaW9uICE9IElFT1RfVkVSU0lPTikgewotCSAgICAgICBlcnJvcigiaW52YWxpZCBJRU9UIHZlcnNpb24gJWQiLCBleHRfdmVyc2lvbik7Ci0JICAgICAgIHJldHVybiBOVUxMOwotICAgICAgIH0KLSAgICAgICBpbmRleCArPSBzaXplb2YodWludDMyX3QpOworCS8qIHZhbGlkYXRlIHRoZSB2ZXJzaW9uIGlzIElFT1RfVkVSU0lPTiAqLworCWV4dF92ZXJzaW9uID0gZ2V0X2JlMzIoaW5kZXgpOworCWlmIChleHRfdmVyc2lvbiAhPSBJRU9UX1ZFUlNJT04pIHsKKwkJZXJyb3IoImludmFsaWQgSUVPVCB2ZXJzaW9uICVkIiwgZXh0X3ZlcnNpb24pOworCQlyZXR1cm4gTlVMTDsKKwl9CisJaW5kZXggKz0gc2l6ZW9mKHVpbnQzMl90KTsKIAotICAgICAgIC8qIGV4dGVuc2lvbiBzaXplIC0gdmVyc2lvbiBieXRlcyAvIGJ5dGVzIHBlciBlbnRyeSAqLwotICAgICAgIG5yID0gKGV4dHNpemUgLSBzaXplb2YodWludDMyX3QpKSAvIChzaXplb2YodWludDMyX3QpICsgc2l6ZW9mKHVpbnQzMl90KSk7Ci0gICAgICAgaWYgKCFucikgewotCSAgICAgICBlcnJvcigiaW52YWxpZCBudW1iZXIgb2YgSUVPVCBlbnRyaWVzICVkIiwgbnIpOwotCSAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICB9Ci0gICAgICAgaWVvdCA9IHhtYWxsb2Moc2l6ZW9mKHN0cnVjdCBpbmRleF9lbnRyeV9vZmZzZXRfdGFibGUpCi0JICAgICAgICsgKG5yICogc2l6ZW9mKHN0cnVjdCBpbmRleF9lbnRyeV9vZmZzZXQpKSk7Ci0gICAgICAgaWVvdC0+bnIgPSBucjsKLSAgICAgICBmb3IgKGkgPSAwOyBpIDwgbnI7IGkrKykgewotCSAgICAgICBpZW90LT5lbnRyaWVzW2ldLm9mZnNldCA9IGdldF9iZTMyKGluZGV4KTsKLQkgICAgICAgaW5kZXggKz0gc2l6ZW9mKHVpbnQzMl90KTsKLQkgICAgICAgaWVvdC0+ZW50cmllc1tpXS5uciA9IGdldF9iZTMyKGluZGV4KTsKLQkgICAgICAgaW5kZXggKz0gc2l6ZW9mKHVpbnQzMl90KTsKLSAgICAgICB9CisJLyogZXh0ZW5zaW9uIHNpemUgLSB2ZXJzaW9uIGJ5dGVzIC8gYnl0ZXMgcGVyIGVudHJ5ICovCisJbnIgPSAoZXh0c2l6ZSAtIHNpemVvZih1aW50MzJfdCkpIC8gKHNpemVvZih1aW50MzJfdCkgKyBzaXplb2YodWludDMyX3QpKTsKKwlpZiAoIW5yKSB7CisJCWVycm9yKCJpbnZhbGlkIG51bWJlciBvZiBJRU9UIGVudHJpZXMgJWQiLCBucik7CisJCXJldHVybiBOVUxMOworCX0KKwlpZW90ID0geG1hbGxvYyhzaXplb2Yoc3RydWN0IGluZGV4X2VudHJ5X29mZnNldF90YWJsZSkKKwkJICAgICAgICsgKG5yICogc2l6ZW9mKHN0cnVjdCBpbmRleF9lbnRyeV9vZmZzZXQpKSk7CisJaWVvdC0+bnIgPSBucjsKKwlmb3IgKGkgPSAwOyBpIDwgbnI7IGkrKykgeworCQlpZW90LT5lbnRyaWVzW2ldLm9mZnNldCA9IGdldF9iZTMyKGluZGV4KTsKKwkJaW5kZXggKz0gc2l6ZW9mKHVpbnQzMl90KTsKKwkJaWVvdC0+ZW50cmllc1tpXS5uciA9IGdldF9iZTMyKGluZGV4KTsKKwkJaW5kZXggKz0gc2l6ZW9mKHVpbnQzMl90KTsKKwl9CiAKLSAgICAgICByZXR1cm4gaWVvdDsKKwlyZXR1cm4gaWVvdDsKIH0KIAogc3RhdGljIHZvaWQgd3JpdGVfaWVvdF9leHRlbnNpb24oc3RydWN0IHN0cmJ1ZiAqc2IsIHN0cnVjdCBpbmRleF9lbnRyeV9vZmZzZXRfdGFibGUgKmllb3QpCiB7Ci0gICAgICAgdWludDMyX3QgYnVmZmVyOwotICAgICAgIGludCBpOworCXVpbnQzMl90IGJ1ZmZlcjsKKwlpbnQgaTsKIAotICAgICAgIC8qIHZlcnNpb24gKi8KLSAgICAgICBwdXRfYmUzMigmYnVmZmVyLCBJRU9UX1ZFUlNJT04pOwotICAgICAgIHN0cmJ1Zl9hZGQoc2IsICZidWZmZXIsIHNpemVvZih1aW50MzJfdCkpOworCS8qIHZlcnNpb24gKi8KKwlwdXRfYmUzMigmYnVmZmVyLCBJRU9UX1ZFUlNJT04pOworCXN0cmJ1Zl9hZGQoc2IsICZidWZmZXIsIHNpemVvZih1aW50MzJfdCkpOwogCi0gICAgICAgLyogaWVvdCAqLwotICAgICAgIGZvciAoaSA9IDA7IGkgPCBpZW90LT5ucjsgaSsrKSB7CisJLyogaWVvdCAqLworCWZvciAoaSA9IDA7IGkgPCBpZW90LT5ucjsgaSsrKSB7CiAKLQkgICAgICAgLyogb2Zmc2V0ICovCi0JICAgICAgIHB1dF9iZTMyKCZidWZmZXIsIGllb3QtPmVudHJpZXNbaV0ub2Zmc2V0KTsKLQkgICAgICAgc3RyYnVmX2FkZChzYiwgJmJ1ZmZlciwgc2l6ZW9mKHVpbnQzMl90KSk7CisJCS8qIG9mZnNldCAqLworCQlwdXRfYmUzMigmYnVmZmVyLCBpZW90LT5lbnRyaWVzW2ldLm9mZnNldCk7CisJCXN0cmJ1Zl9hZGQoc2IsICZidWZmZXIsIHNpemVvZih1aW50MzJfdCkpOwogCi0JICAgICAgIC8qIGNvdW50ICovCi0JICAgICAgIHB1dF9iZTMyKCZidWZmZXIsIGllb3QtPmVudHJpZXNbaV0ubnIpOwotCSAgICAgICBzdHJidWZfYWRkKHNiLCAmYnVmZmVyLCBzaXplb2YodWludDMyX3QpKTsKLSAgICAgICB9CisJCS8qIGNvdW50ICovCisJCXB1dF9iZTMyKCZidWZmZXIsIGllb3QtPmVudHJpZXNbaV0ubnIpOworCQlzdHJidWZfYWRkKHNiLCAmYnVmZmVyLCBzaXplb2YodWludDMyX3QpKTsKKwl9CiB9CmRpZmYgLS1naXQgYS9yZWJhc2UtaW50ZXJhY3RpdmUuYyBiL3JlYmFzZS1pbnRlcmFjdGl2ZS5jCmluZGV4IDc4ZjMyNjMuLjc2Mjg1M2IgMTAwNjQ0Ci0tLSBhL3JlYmFzZS1pbnRlcmFjdGl2ZS5jCisrKyBiL3JlYmFzZS1pbnRlcmFjdGl2ZS5jCkBAIC0xLDEwICsxLDQyIEBACiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJjb21taXQuaCIKLSNpbmNsdWRlICJyZWJhc2UtaW50ZXJhY3RpdmUuaCIKICNpbmNsdWRlICJzZXF1ZW5jZXIuaCIKKyNpbmNsdWRlICJyZWJhc2UtaW50ZXJhY3RpdmUuaCIKICNpbmNsdWRlICJzdHJidWYuaCIKKyNpbmNsdWRlICJjb21taXQtc2xhYi5oIgorI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgImRpci5oIgogCi12b2lkIGFwcGVuZF90b2RvX2hlbHAodW5zaWduZWQgZWRpdF90b2RvLCB1bnNpZ25lZCBrZWVwX2VtcHR5LAorc3RhdGljIGNvbnN0IGNoYXIgZWRpdF90b2RvX2xpc3RfYWR2aWNlW10gPQorTl8oIllvdSBjYW4gZml4IHRoaXMgd2l0aCAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycgIgorImFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJy5cbiIKKyJPciB5b3UgY2FuIGFib3J0IHRoZSByZWJhc2Ugd2l0aCAnZ2l0IHJlYmFzZSIKKyIgLS1hYm9ydCcuXG4iKTsKKworZW51bSBtaXNzaW5nX2NvbW1pdF9jaGVja19sZXZlbCB7CisJTUlTU0lOR19DT01NSVRfQ0hFQ0tfSUdOT1JFID0gMCwKKwlNSVNTSU5HX0NPTU1JVF9DSEVDS19XQVJOLAorCU1JU1NJTkdfQ09NTUlUX0NIRUNLX0VSUk9SCit9OworCitzdGF0aWMgZW51bSBtaXNzaW5nX2NvbW1pdF9jaGVja19sZXZlbCBnZXRfbWlzc2luZ19jb21taXRfY2hlY2tfbGV2ZWwodm9pZCkKK3sKKwljb25zdCBjaGFyICp2YWx1ZTsKKworCWlmIChnaXRfY29uZmlnX2dldF92YWx1ZSgicmViYXNlLm1pc3Npbmdjb21taXRzY2hlY2siLCAmdmFsdWUpIHx8CisJCQkhc3RyY2FzZWNtcCgiaWdub3JlIiwgdmFsdWUpKQorCQlyZXR1cm4gTUlTU0lOR19DT01NSVRfQ0hFQ0tfSUdOT1JFOworCWlmICghc3RyY2FzZWNtcCgid2FybiIsIHZhbHVlKSkKKwkJcmV0dXJuIE1JU1NJTkdfQ09NTUlUX0NIRUNLX1dBUk47CisJaWYgKCFzdHJjYXNlY21wKCJlcnJvciIsIHZhbHVlKSkKKwkJcmV0dXJuIE1JU1NJTkdfQ09NTUlUX0NIRUNLX0VSUk9SOworCXdhcm5pbmcoXygidW5yZWNvZ25pemVkIHNldHRpbmcgJXMgZm9yIG9wdGlvbiAiCisJCSAgInJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrLiBJZ25vcmluZy4iKSwgdmFsdWUpOworCXJldHVybiBNSVNTSU5HX0NPTU1JVF9DSEVDS19JR05PUkU7Cit9CisKK3ZvaWQgYXBwZW5kX3RvZG9faGVscChpbnQgY29tbWFuZF9jb3VudCwKKwkJICAgICAgY29uc3QgY2hhciAqc2hvcnRyZXZpc2lvbnMsIGNvbnN0IGNoYXIgKnNob3J0b250bywKIAkJICAgICAgc3RydWN0IHN0cmJ1ZiAqYnVmKQogewogCWNvbnN0IGNoYXIgKm1zZyA9IF8oIlxuQ29tbWFuZHM6XG4iCkBAIC0yNCw2ICs1NiwxNSBAQAogIi4gICAgICAgc3BlY2lmaWVkKS4gVXNlIC1jIDxjb21taXQ+IHRvIHJld29yZCB0aGUgY29tbWl0IG1lc3NhZ2UuXG4iCiAiXG4iCiAiVGhlc2UgbGluZXMgY2FuIGJlIHJlLW9yZGVyZWQ7IHRoZXkgYXJlIGV4ZWN1dGVkIGZyb20gdG9wIHRvIGJvdHRvbS5cbiIpOworCXVuc2lnbmVkIGVkaXRfdG9kbyA9ICEoc2hvcnRyZXZpc2lvbnMgJiYgc2hvcnRvbnRvKTsKKworCWlmICghZWRpdF90b2RvKSB7CisJCXN0cmJ1Zl9hZGRjaChidWYsICdcbicpOworCQlzdHJidWZfY29tbWVudGVkX2FkZGYoYnVmLCBRXygiUmViYXNlICVzIG9udG8gJXMgKCVkIGNvbW1hbmQpIiwKKwkJCQkJICAgICAgIlJlYmFzZSAlcyBvbnRvICVzICglZCBjb21tYW5kcykiLAorCQkJCQkgICAgICBjb21tYW5kX2NvdW50KSwKKwkJCQkgICAgICBzaG9ydHJldmlzaW9ucywgc2hvcnRvbnRvLCBjb21tYW5kX2NvdW50KTsKKwl9CiAKIAlzdHJidWZfYWRkX2NvbW1lbnRlZF9saW5lcyhidWYsIG1zZywgc3RybGVuKG1zZykpOwogCkBAIC00Niw0NiArODcsMTY4IEBACiAJCQkidGhlIHJlYmFzZSB3aWxsIGJlIGFib3J0ZWQuXG5cbiIpOwogCiAJc3RyYnVmX2FkZF9jb21tZW50ZWRfbGluZXMoYnVmLCBtc2csIHN0cmxlbihtc2cpKTsKLQotCWlmICgha2VlcF9lbXB0eSkgewotCQltc2cgPSBfKCJOb3RlIHRoYXQgZW1wdHkgY29tbWl0cyBhcmUgY29tbWVudGVkIG91dCIpOwotCQlzdHJidWZfYWRkX2NvbW1lbnRlZF9saW5lcyhidWYsIG1zZywgc3RybGVuKG1zZykpOwotCX0KIH0KIAotaW50IGVkaXRfdG9kb19saXN0KHVuc2lnbmVkIGZsYWdzKQoraW50IGVkaXRfdG9kb19saXN0KHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgdG9kb19saXN0ICp0b2RvX2xpc3QsCisJCSAgIHN0cnVjdCB0b2RvX2xpc3QgKm5ld190b2RvLCBjb25zdCBjaGFyICpzaG9ydHJldmlzaW9ucywKKwkJICAgY29uc3QgY2hhciAqc2hvcnRvbnRvLCB1bnNpZ25lZCBmbGFncykKIHsKLQlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwotCWNvbnN0IGNoYXIgKnRvZG9fZmlsZSA9IHJlYmFzZV9wYXRoX3RvZG8oKTsKKwljb25zdCBjaGFyICp0b2RvX2ZpbGUgPSByZWJhc2VfcGF0aF90b2RvKCksCisJCSp0b2RvX2JhY2t1cCA9IHJlYmFzZV9wYXRoX3RvZG9fYmFja3VwKCk7CisJdW5zaWduZWQgaW5pdGlhbCA9IHNob3J0cmV2aXNpb25zICYmIHNob3J0b250bzsKKwlpbnQgaW5jb3JyZWN0ID0gMDsKIAotCWlmIChzdHJidWZfcmVhZF9maWxlKCZidWYsIHRvZG9fZmlsZSwgMCkgPCAwKQotCQlyZXR1cm4gZXJyb3JfZXJybm8oXygiY291bGQgbm90IHJlYWQgJyVzJy4iKSwgdG9kb19maWxlKTsKKwkvKiBJZiB0aGUgdXNlciBpcyBlZGl0aW5nIHRoZSB0b2RvIGxpc3QsIHdlIGZpcnN0IHRyeSB0byBwYXJzZQorCSAqIGl0LiAgSWYgdGhlcmUgaXMgYW4gZXJyb3IsIHdlIGRvIG5vdCByZXR1cm4sIGJlY2F1c2UgdGhlIHVzZXIKKwkgKiBtaWdodCB3YW50IHRvIGZpeCBpdCBpbiB0aGUgZmlyc3QgcGxhY2UuICovCisJaWYgKCFpbml0aWFsKQorCQlpbmNvcnJlY3QgPSB0b2RvX2xpc3RfcGFyc2VfaW5zbl9idWZmZXIociwgdG9kb19saXN0LT5idWYuYnVmLCB0b2RvX2xpc3QpIHwKKwkJCWZpbGVfZXhpc3RzKHJlYmFzZV9wYXRoX2Ryb3BwZWQoKSk7CiAKLQlzdHJidWZfc3RyaXBzcGFjZSgmYnVmLCAxKTsKLQlpZiAod3JpdGVfbWVzc2FnZShidWYuYnVmLCBidWYubGVuLCB0b2RvX2ZpbGUsIDApKSB7Ci0JCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOwotCQlyZXR1cm4gLTE7CisJaWYgKHRvZG9fbGlzdF93cml0ZV90b19maWxlKHIsIHRvZG9fbGlzdCwgdG9kb19maWxlLCBzaG9ydHJldmlzaW9ucywgc2hvcnRvbnRvLAorCQkJCSAgICAtMSwgZmxhZ3MgfCBUT0RPX0xJU1RfU0hPUlRFTl9JRFMgfCBUT0RPX0xJU1RfQVBQRU5EX1RPRE9fSEVMUCkpCisJCXJldHVybiBlcnJvcl9lcnJubyhfKCJjb3VsZCBub3Qgd3JpdGUgJyVzJyIpLCB0b2RvX2ZpbGUpOworCisJaWYgKCFpbmNvcnJlY3QgJiYKKwkgICAgdG9kb19saXN0X3dyaXRlX3RvX2ZpbGUociwgdG9kb19saXN0LCB0b2RvX2JhY2t1cCwKKwkJCQkgICAgc2hvcnRyZXZpc2lvbnMsIHNob3J0b250bywgLTEsCisJCQkJICAgIChmbGFncyB8IFRPRE9fTElTVF9BUFBFTkRfVE9ET19IRUxQKSAmIH5UT0RPX0xJU1RfU0hPUlRFTl9JRFMpIDwgMCkKKwkJcmV0dXJuIGVycm9yKF8oImNvdWxkIG5vdCB3cml0ZSAnJXMnLiIpLCByZWJhc2VfcGF0aF90b2RvX2JhY2t1cCgpKTsKKworCWlmIChsYXVuY2hfc2VxdWVuY2VfZWRpdG9yKHRvZG9fZmlsZSwgJm5ld190b2RvLT5idWYsIE5VTEwpKQorCQlyZXR1cm4gLTI7CisKKwlzdHJidWZfc3RyaXBzcGFjZSgmbmV3X3RvZG8tPmJ1ZiwgMSk7CisJaWYgKGluaXRpYWwgJiYgbmV3X3RvZG8tPmJ1Zi5sZW4gPT0gMCkKKwkJcmV0dXJuIC0zOworCisJaWYgKHRvZG9fbGlzdF9wYXJzZV9pbnNuX2J1ZmZlcihyLCBuZXdfdG9kby0+YnVmLmJ1ZiwgbmV3X3RvZG8pKSB7CisJCWZwcmludGYoc3RkZXJyLCBfKGVkaXRfdG9kb19saXN0X2FkdmljZSkpOworCQlyZXR1cm4gLTQ7CiAJfQogCi0Jc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CisJaWYgKGluY29ycmVjdCkgeworCQlpZiAodG9kb19saXN0X2NoZWNrX2FnYWluc3RfYmFja3VwKHIsIG5ld190b2RvKSkgeworCQkJd3JpdGVfZmlsZShyZWJhc2VfcGF0aF9kcm9wcGVkKCksICIlcyIsICIiKTsKKwkJCXJldHVybiAtNDsKKwkJfQogCi0JdHJhbnNmb3JtX3RvZG9zKGZsYWdzIHwgVE9ET19MSVNUX1NIT1JURU5fSURTKTsKLQotCWlmIChzdHJidWZfcmVhZF9maWxlKCZidWYsIHRvZG9fZmlsZSwgMCkgPCAwKQotCQlyZXR1cm4gZXJyb3JfZXJybm8oXygiY291bGQgbm90IHJlYWQgJyVzJy4iKSwgdG9kb19maWxlKTsKLQotCWFwcGVuZF90b2RvX2hlbHAoMSwgMCwgJmJ1Zik7Ci0JaWYgKHdyaXRlX21lc3NhZ2UoYnVmLmJ1ZiwgYnVmLmxlbiwgdG9kb19maWxlLCAwKSkgewotCQlzdHJidWZfcmVsZWFzZSgmYnVmKTsKLQkJcmV0dXJuIC0xOworCQlpZiAoaW5jb3JyZWN0ID4gMCkKKwkJCXVubGluayhyZWJhc2VfcGF0aF9kcm9wcGVkKCkpOworCX0gZWxzZSBpZiAodG9kb19saXN0X2NoZWNrKHRvZG9fbGlzdCwgbmV3X3RvZG8pKSB7CisJCXdyaXRlX2ZpbGUocmViYXNlX3BhdGhfZHJvcHBlZCgpLCAiJXMiLCAiIik7CisJCXJldHVybiAtNDsKIAl9CiAKLQlzdHJidWZfcmVsZWFzZSgmYnVmKTsKLQotCWlmIChsYXVuY2hfc2VxdWVuY2VfZWRpdG9yKHRvZG9fZmlsZSwgTlVMTCwgTlVMTCkpCi0JCXJldHVybiAtMTsKLQotCXRyYW5zZm9ybV90b2RvcyhmbGFncyAmIH4oVE9ET19MSVNUX1NIT1JURU5fSURTKSk7Ci0KIAlyZXR1cm4gMDsKIH0KKworZGVmaW5lX2NvbW1pdF9zbGFiKGNvbW1pdF9zZWVuLCB1bnNpZ25lZCBjaGFyKTsKKy8qCisgKiBDaGVjayBpZiB0aGUgdXNlciBkcm9wcGVkIHNvbWUgY29tbWl0cyBieSBtaXN0YWtlCisgKiBCZWhhdmlvdXIgZGV0ZXJtaW5lZCBieSByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4KKyAqIENoZWNrIGlmIHRoZXJlIGlzIGFuIHVucmVjb2duaXplZCBjb21tYW5kIG9yIGEKKyAqIGJhZCBTSEEtMSBpbiBhIGNvbW1hbmQuCisgKi8KK2ludCB0b2RvX2xpc3RfY2hlY2soc3RydWN0IHRvZG9fbGlzdCAqb2xkX3RvZG8sIHN0cnVjdCB0b2RvX2xpc3QgKm5ld190b2RvKQoreworCWVudW0gbWlzc2luZ19jb21taXRfY2hlY2tfbGV2ZWwgY2hlY2tfbGV2ZWwgPSBnZXRfbWlzc2luZ19jb21taXRfY2hlY2tfbGV2ZWwoKTsKKwlzdHJ1Y3Qgc3RyYnVmIG1pc3NpbmcgPSBTVFJCVUZfSU5JVDsKKwlpbnQgcmVzID0gMCwgaTsKKwlzdHJ1Y3QgY29tbWl0X3NlZW4gY29tbWl0X3NlZW47CisKKwlpbml0X2NvbW1pdF9zZWVuKCZjb21taXRfc2Vlbik7CisKKwlpZiAoY2hlY2tfbGV2ZWwgPT0gTUlTU0lOR19DT01NSVRfQ0hFQ0tfSUdOT1JFKQorCQlnb3RvIGxlYXZlX2NoZWNrOworCisJLyogTWFyayB0aGUgY29tbWl0cyBpbiBnaXQtcmViYXNlLXRvZG8gYXMgc2VlbiAqLworCWZvciAoaSA9IDA7IGkgPCBuZXdfdG9kby0+bnI7IGkrKykgeworCQlzdHJ1Y3QgY29tbWl0ICpjb21taXQgPSBuZXdfdG9kby0+aXRlbXNbaV0uY29tbWl0OworCQlpZiAoY29tbWl0KQorCQkJKmNvbW1pdF9zZWVuX2F0KCZjb21taXRfc2VlbiwgY29tbWl0KSA9IDE7CisJfQorCisJLyogRmluZCBjb21taXRzIGluIGdpdC1yZWJhc2UtdG9kby5iYWNrdXAgeWV0IHVuc2VlbiAqLworCWZvciAoaSA9IG9sZF90b2RvLT5uciAtIDE7IGkgPj0gMDsgaS0tKSB7CisJCXN0cnVjdCB0b2RvX2l0ZW0gKml0ZW0gPSBvbGRfdG9kby0+aXRlbXMgKyBpOworCQlzdHJ1Y3QgY29tbWl0ICpjb21taXQgPSBpdGVtLT5jb21taXQ7CisJCWlmIChjb21taXQgJiYgISpjb21taXRfc2Vlbl9hdCgmY29tbWl0X3NlZW4sIGNvbW1pdCkpIHsKKwkJCXN0cmJ1Zl9hZGRmKCZtaXNzaW5nLCAiIC0gJXMgJS4qc1xuIiwKKwkJCQkgICAgZmluZF91bmlxdWVfYWJicmV2KCZjb21taXQtPm9iamVjdC5vaWQsIERFRkFVTFRfQUJCUkVWKSwKKwkJCQkgICAgaXRlbS0+YXJnX2xlbiwKKwkJCQkgICAgdG9kb19pdGVtX2dldF9hcmcob2xkX3RvZG8sIGl0ZW0pKTsKKwkJCSpjb21taXRfc2Vlbl9hdCgmY29tbWl0X3NlZW4sIGNvbW1pdCkgPSAxOworCQl9CisJfQorCisJLyogV2FybiBhYm91dCBtaXNzaW5nIGNvbW1pdHMgKi8KKwlpZiAoIW1pc3NpbmcubGVuKQorCQlnb3RvIGxlYXZlX2NoZWNrOworCisJaWYgKGNoZWNrX2xldmVsID09IE1JU1NJTkdfQ09NTUlUX0NIRUNLX0VSUk9SKQorCQlyZXMgPSAxOworCisJZnByaW50ZihzdGRlcnIsCisJCV8oIldhcm5pbmc6IHNvbWUgY29tbWl0cyBtYXkgaGF2ZSBiZWVuIGRyb3BwZWQgYWNjaWRlbnRhbGx5LlxuIgorCQkiRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6XG4iKSk7CisKKwkvKiBNYWtlIHRoZSBsaXN0IHVzZXItZnJpZW5kbHkgYW5kIGRpc3BsYXkgKi8KKwlmcHV0cyhtaXNzaW5nLmJ1Ziwgc3RkZXJyKTsKKwlzdHJidWZfcmVsZWFzZSgmbWlzc2luZyk7CisKKwlmcHJpbnRmKHN0ZGVyciwgXygiVG8gYXZvaWQgdGhpcyBtZXNzYWdlLCB1c2UgXCJkcm9wXCIgdG8gIgorCQkiZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuXG5cbiIKKwkJIlVzZSAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgdG8gY2hhbmdlICIKKwkJInRoZSBsZXZlbCBvZiB3YXJuaW5ncy5cbiIKKwkJIlRoZSBwb3NzaWJsZSBiZWhhdmlvdXJzIGFyZTogaWdub3JlLCB3YXJuLCBlcnJvci5cblxuIikpOworCisJZnByaW50ZihzdGRlcnIsIF8oZWRpdF90b2RvX2xpc3RfYWR2aWNlKSk7CisKK2xlYXZlX2NoZWNrOgorCWNsZWFyX2NvbW1pdF9zZWVuKCZjb21taXRfc2Vlbik7CisJcmV0dXJuIHJlczsKK30KKworaW50IHRvZG9fbGlzdF9jaGVja19hZ2FpbnN0X2JhY2t1cChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHRvZG9fbGlzdCAqdG9kb19saXN0KQoreworCXN0cnVjdCB0b2RvX2xpc3QgYmFja3VwID0gVE9ET19MSVNUX0lOSVQ7CisJaW50IHJlcyA9IDA7CisKKwlpZiAoc3RyYnVmX3JlYWRfZmlsZSgmYmFja3VwLmJ1ZiwgcmViYXNlX3BhdGhfdG9kb19iYWNrdXAoKSwgMCkgPiAwKSB7CisJCXRvZG9fbGlzdF9wYXJzZV9pbnNuX2J1ZmZlcihyLCBiYWNrdXAuYnVmLmJ1ZiwgJmJhY2t1cCk7CisJCXJlcyA9IHRvZG9fbGlzdF9jaGVjaygmYmFja3VwLCB0b2RvX2xpc3QpOworCX0KKworCXRvZG9fbGlzdF9yZWxlYXNlKCZiYWNrdXApOworCXJldHVybiByZXM7Cit9CisKK2ludCBjaGVja190b2RvX2xpc3RfZnJvbV9maWxlKHN0cnVjdCByZXBvc2l0b3J5ICpyKQoreworCXN0cnVjdCB0b2RvX2xpc3Qgb2xkX3RvZG8gPSBUT0RPX0xJU1RfSU5JVCwgbmV3X3RvZG8gPSBUT0RPX0xJU1RfSU5JVDsKKwlpbnQgcmVzID0gMDsKKworCWlmIChzdHJidWZfcmVhZF9maWxlKCZuZXdfdG9kby5idWYsIHJlYmFzZV9wYXRoX3RvZG8oKSwgMCkgPCAwKSB7CisJCXJlcyA9IGVycm9yKF8oImNvdWxkIG5vdCByZWFkICclcycuIiksIHJlYmFzZV9wYXRoX3RvZG8oKSk7CisJCWdvdG8gb3V0OworCX0KKworCWlmIChzdHJidWZfcmVhZF9maWxlKCZvbGRfdG9kby5idWYsIHJlYmFzZV9wYXRoX3RvZG9fYmFja3VwKCksIDApIDwgMCkgeworCQlyZXMgPSBlcnJvcihfKCJjb3VsZCBub3QgcmVhZCAnJXMnLiIpLCByZWJhc2VfcGF0aF90b2RvX2JhY2t1cCgpKTsKKwkJZ290byBvdXQ7CisJfQorCisJcmVzID0gdG9kb19saXN0X3BhcnNlX2luc25fYnVmZmVyKHIsIG9sZF90b2RvLmJ1Zi5idWYsICZvbGRfdG9kbyk7CisJaWYgKCFyZXMpCisJCXJlcyA9IHRvZG9fbGlzdF9wYXJzZV9pbnNuX2J1ZmZlcihyLCBuZXdfdG9kby5idWYuYnVmLCAmbmV3X3RvZG8pOworCWlmIChyZXMpCisJCWZwcmludGYoc3RkZXJyLCBfKGVkaXRfdG9kb19saXN0X2FkdmljZSkpOworCWlmICghcmVzKQorCQlyZXMgPSB0b2RvX2xpc3RfY2hlY2soJm9sZF90b2RvLCAmbmV3X3RvZG8pOworb3V0OgorCXRvZG9fbGlzdF9yZWxlYXNlKCZvbGRfdG9kbyk7CisJdG9kb19saXN0X3JlbGVhc2UoJm5ld190b2RvKTsKKworCXJldHVybiByZXM7Cit9CmRpZmYgLS1naXQgYS9yZWJhc2UtaW50ZXJhY3RpdmUuaCBiL3JlYmFzZS1pbnRlcmFjdGl2ZS5oCmluZGV4IDk3MWRhMDMuLmRjMmNmMGUgMTAwNjQ0Ci0tLSBhL3JlYmFzZS1pbnRlcmFjdGl2ZS5oCisrKyBiL3JlYmFzZS1pbnRlcmFjdGl2ZS5oCkBAIC0xLDggKzEsMjEgQEAKICNpZm5kZWYgUkVCQVNFX0lOVEVSQUNUSVZFX0gKICNkZWZpbmUgUkVCQVNFX0lOVEVSQUNUSVZFX0gKIAotdm9pZCBhcHBlbmRfdG9kb19oZWxwKHVuc2lnbmVkIGVkaXRfdG9kbywgdW5zaWduZWQga2VlcF9lbXB0eSwKK3N0cnVjdCBzdHJidWY7CitzdHJ1Y3QgcmVwb3NpdG9yeTsKK3N0cnVjdCB0b2RvX2xpc3Q7CisKK3ZvaWQgYXBwZW5kX3RvZG9faGVscChpbnQgY29tbWFuZF9jb3VudCwKKwkJICAgICAgY29uc3QgY2hhciAqc2hvcnRyZXZpc2lvbnMsIGNvbnN0IGNoYXIgKnNob3J0b250bywKIAkJICAgICAgc3RydWN0IHN0cmJ1ZiAqYnVmKTsKLWludCBlZGl0X3RvZG9fbGlzdCh1bnNpZ25lZCBmbGFncyk7CitpbnQgZWRpdF90b2RvX2xpc3Qoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCB0b2RvX2xpc3QgKnRvZG9fbGlzdCwKKwkJICAgc3RydWN0IHRvZG9fbGlzdCAqbmV3X3RvZG8sIGNvbnN0IGNoYXIgKnNob3J0cmV2aXNpb25zLAorCQkgICBjb25zdCBjaGFyICpzaG9ydG9udG8sIHVuc2lnbmVkIGZsYWdzKTsKKworaW50IHRvZG9fbGlzdF9jaGVjayhzdHJ1Y3QgdG9kb19saXN0ICpvbGRfdG9kbywgc3RydWN0IHRvZG9fbGlzdCAqbmV3X3RvZG8pOworaW50IHRvZG9fbGlzdF9jaGVja19hZ2FpbnN0X2JhY2t1cChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgICBzdHJ1Y3QgdG9kb19saXN0ICp0b2RvX2xpc3QpOworCitpbnQgY2hlY2tfdG9kb19saXN0X2Zyb21fZmlsZShzdHJ1Y3QgcmVwb3NpdG9yeSAqcik7CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvcmViYXNlLmMgYi9yZWJhc2UuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mODEzN2Q4Ci0tLSAvZGV2L251bGwKKysrIGIvcmViYXNlLmMKQEAgLTAsMCArMSwzNSBAQAorI2luY2x1ZGUgInJlYmFzZS5oIgorI2luY2x1ZGUgImNvbmZpZy5oIgorCisvKgorICogUGFyc2VzIHRleHR1YWwgdmFsdWUgZm9yIHB1bGwucmViYXNlLCBicmFuY2guPG5hbWU+LnJlYmFzZSwgZXRjLgorICogVW5yZWNvZ25pc2VkIHZhbHVlIHlpZWxkcyBSRUJBU0VfSU5WQUxJRCwgd2hpY2ggdHJhZGl0aW9uYWxseSBpcworICogdHJlYXRlZCB0aGUgc2FtZSB3YXkgYXMgUkVCQVNFX0ZBTFNFLgorICoKKyAqIFRoZSBjYWxsZXJzIHRoYXQgY2FyZSBpZiAoYW55KSByZWJhc2UgaXMgcmVxdWVzdGVkIHNob3VsZCBzYXkKKyAqICAgaWYgKFJFQkFTRV9UUlVFIDw9IHJlYmFzZV9wYXJzZV92YWx1ZShzdHJpbmcpKQorICoKKyAqIFRoZSBjYWxsZXJzIHRoYXQgd2FudCB0byBkaWZmZXJlbmNpYXRlIGFuIHVucmVjb2duaXNlZCB2YWx1ZSBhbmQKKyAqIGZhbHNlIGNhbiBkbyBzbyBieSB0cmVhdGluZyBfSU5WQUxJRCBhbmQgX0ZBTFNFIGRpZmZlcmVudGx5LgorICovCitlbnVtIHJlYmFzZV90eXBlIHJlYmFzZV9wYXJzZV92YWx1ZShjb25zdCBjaGFyICp2YWx1ZSkKK3sKKwlpbnQgdiA9IGdpdF9wYXJzZV9tYXliZV9ib29sKHZhbHVlKTsKKworCWlmICghdikKKwkJcmV0dXJuIFJFQkFTRV9GQUxTRTsKKwllbHNlIGlmICh2ID4gMCkKKwkJcmV0dXJuIFJFQkFTRV9UUlVFOworCWVsc2UgaWYgKCFzdHJjbXAodmFsdWUsICJwcmVzZXJ2ZSIpIHx8ICFzdHJjbXAodmFsdWUsICJwIikpCisJCXJldHVybiBSRUJBU0VfUFJFU0VSVkU7CisJZWxzZSBpZiAoIXN0cmNtcCh2YWx1ZSwgIm1lcmdlcyIpIHx8ICFzdHJjbXAodmFsdWUsICJtIikpCisJCXJldHVybiBSRUJBU0VfTUVSR0VTOworCWVsc2UgaWYgKCFzdHJjbXAodmFsdWUsICJpbnRlcmFjdGl2ZSIpIHx8ICFzdHJjbXAodmFsdWUsICJpIikpCisJCXJldHVybiBSRUJBU0VfSU5URVJBQ1RJVkU7CisJLyoKKwkgKiBQbGVhc2UgdXBkYXRlIF9naXRfY29uZmlnKCkgaW4gZ2l0LWNvbXBsZXRpb24uYmFzaCB3aGVuIHlvdQorCSAqIGFkZCBuZXcgcmViYXNlIG1vZGVzLgorCSAqLworCisJcmV0dXJuIFJFQkFTRV9JTlZBTElEOworfQpkaWZmIC0tZ2l0IGEvcmViYXNlLmggYi9yZWJhc2UuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYzcyM2Q0Ci0tLSAvZGV2L251bGwKKysrIGIvcmViYXNlLmgKQEAgLTAsMCArMSwxNSBAQAorI2lmbmRlZiBSRUJBU0VfSAorI2RlZmluZSBSRUJBU0VfSAorCitlbnVtIHJlYmFzZV90eXBlIHsKKwlSRUJBU0VfSU5WQUxJRCA9IC0xLAorCVJFQkFTRV9GQUxTRSA9IDAsCisJUkVCQVNFX1RSVUUsCisJUkVCQVNFX1BSRVNFUlZFLAorCVJFQkFTRV9NRVJHRVMsCisJUkVCQVNFX0lOVEVSQUNUSVZFCit9OworCitlbnVtIHJlYmFzZV90eXBlIHJlYmFzZV9wYXJzZV92YWx1ZShjb25zdCBjaGFyICp2YWx1ZSk7CisKKyNlbmRpZiAvKiBSRUJBU0UgKi8KZGlmZiAtLWdpdCBhL3JlZi1maWx0ZXIuYyBiL3JlZi1maWx0ZXIuYwppbmRleCA1ZGU2MTZiLi5iMTgxMmNiIDEwMDY0NAotLS0gYS9yZWYtZmlsdGVyLmMKKysrIGIvcmVmLWZpbHRlci5jCkBAIC0yMCw2ICsyMCw5IEBACiAjaW5jbHVkZSAiY29tbWl0LXNsYWIuaCIKICNpbmNsdWRlICJjb21taXQtZ3JhcGguaCIKICNpbmNsdWRlICJjb21taXQtcmVhY2guaCIKKyNpbmNsdWRlICJ3b3JrdHJlZS5oIgorI2luY2x1ZGUgImhhc2htYXAuaCIKKyNpbmNsdWRlICJhcmd2LWFycmF5LmgiCiAKIHN0YXRpYyBzdHJ1Y3QgcmVmX21zZyB7CiAJY29uc3QgY2hhciAqZ29uZTsKQEAgLTc1LDYgKzc4LDMwIEBACiAJc3RydWN0IG9iamVjdF9pbmZvIGluZm87CiB9IG9pLCBvaV9kZXJlZjsKIAorc3RydWN0IHJlZl90b193b3JrdHJlZV9lbnRyeSB7CisJc3RydWN0IGhhc2htYXBfZW50cnkgZW50OworCXN0cnVjdCB3b3JrdHJlZSAqd3Q7IC8qIGtleSBpcyB3dC0+aGVhZF9yZWYgKi8KK307CisKK3N0YXRpYyBpbnQgcmVmX3RvX3dvcmt0cmVlX21hcF9jbXBmbmMoY29uc3Qgdm9pZCAqdW51c2VkX2xvb2t1cGRhdGEsCisJCQkJICAgICAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmVwdHIsCisJCQkJICAgICAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmtwdHIsCisJCQkJICAgICAgY29uc3Qgdm9pZCAqa2V5ZGF0YV9ha2FfcmVmbmFtZSkKK3sKKwljb25zdCBzdHJ1Y3QgcmVmX3RvX3dvcmt0cmVlX2VudHJ5ICplLCAqazsKKworCWUgPSBjb250YWluZXJfb2YoZXB0ciwgY29uc3Qgc3RydWN0IHJlZl90b193b3JrdHJlZV9lbnRyeSwgZW50KTsKKwlrID0gY29udGFpbmVyX29mKGtwdHIsIGNvbnN0IHN0cnVjdCByZWZfdG9fd29ya3RyZWVfZW50cnksIGVudCk7CisKKwlyZXR1cm4gc3RyY21wKGUtPnd0LT5oZWFkX3JlZiwKKwkJa2V5ZGF0YV9ha2FfcmVmbmFtZSA/IGtleWRhdGFfYWthX3JlZm5hbWUgOiBrLT53dC0+aGVhZF9yZWYpOworfQorCitzdGF0aWMgc3RydWN0IHJlZl90b193b3JrdHJlZV9tYXAgeworCXN0cnVjdCBoYXNobWFwIG1hcDsKKwlzdHJ1Y3Qgd29ya3RyZWUgKip3b3JrdHJlZXM7Cit9IHJlZl90b193b3JrdHJlZV9tYXA7CisKIC8qCiAgKiBBbiBhdG9tIGlzIGEgdmFsaWQgZmllbGQgYXRvbSBsaXN0ZWQgYmVsb3csIHBvc3NpYmx5IHByZWZpeGVkIHdpdGgKICAqIGEgIioiIHRvIGRlbm90ZSBkZXJlZl90YWcoKS4KQEAgLTIzMSwxMiArMjU4LDMwIEBACiBzdGF0aWMgaW50IG9iamVjdHNpemVfYXRvbV9wYXJzZXIoY29uc3Qgc3RydWN0IHJlZl9mb3JtYXQgKmZvcm1hdCwgc3RydWN0IHVzZWRfYXRvbSAqYXRvbSwKIAkJCQkgIGNvbnN0IGNoYXIgKmFyZywgc3RydWN0IHN0cmJ1ZiAqZXJyKQogeworCWlmICghYXJnKSB7CisJCWlmICgqYXRvbS0+bmFtZSA9PSAnKicpCisJCQlvaV9kZXJlZi5pbmZvLnNpemVwID0gJm9pX2RlcmVmLnNpemU7CisJCWVsc2UKKwkJCW9pLmluZm8uc2l6ZXAgPSAmb2kuc2l6ZTsKKwl9IGVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiZGlzayIpKSB7CisJCWlmICgqYXRvbS0+bmFtZSA9PSAnKicpCisJCQlvaV9kZXJlZi5pbmZvLmRpc2tfc2l6ZXAgPSAmb2lfZGVyZWYuZGlza19zaXplOworCQllbHNlCisJCQlvaS5pbmZvLmRpc2tfc2l6ZXAgPSAmb2kuZGlza19zaXplOworCX0gZWxzZQorCQlyZXR1cm4gc3RyYnVmX2FkZGZfcmV0KGVyciwgLTEsIF8oInVucmVjb2duaXplZCAlJShvYmplY3RzaXplKSBhcmd1bWVudDogJXMiKSwgYXJnKTsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBkZWx0YWJhc2VfYXRvbV9wYXJzZXIoY29uc3Qgc3RydWN0IHJlZl9mb3JtYXQgKmZvcm1hdCwgc3RydWN0IHVzZWRfYXRvbSAqYXRvbSwKKwkJCQkgY29uc3QgY2hhciAqYXJnLCBzdHJ1Y3Qgc3RyYnVmICplcnIpCit7CiAJaWYgKGFyZykKLQkJcmV0dXJuIHN0cmJ1Zl9hZGRmX3JldChlcnIsIC0xLCBfKCIlJShvYmplY3RzaXplKSBkb2VzIG5vdCB0YWtlIGFyZ3VtZW50cyIpKTsKKwkJcmV0dXJuIHN0cmJ1Zl9hZGRmX3JldChlcnIsIC0xLCBfKCIlJShkZWx0YWJhc2UpIGRvZXMgbm90IHRha2UgYXJndW1lbnRzIikpOwogCWlmICgqYXRvbS0+bmFtZSA9PSAnKicpCi0JCW9pX2RlcmVmLmluZm8uc2l6ZXAgPSAmb2lfZGVyZWYuc2l6ZTsKKwkJb2lfZGVyZWYuaW5mby5kZWx0YV9iYXNlX29pZCA9ICZvaV9kZXJlZi5kZWx0YV9iYXNlX29pZDsKIAllbHNlCi0JCW9pLmluZm8uc2l6ZXAgPSAmb2kuc2l6ZTsKKwkJb2kuaW5mby5kZWx0YV9iYXNlX29pZCA9ICZvaS5kZWx0YV9iYXNlX29pZDsKIAlyZXR1cm4gMDsKIH0KIApAQCAtNDMxLDYgKzQ3Niw3IEBACiAJeyAib2JqZWN0dHlwZSIsIFNPVVJDRV9PVEhFUiwgRklFTERfU1RSLCBvYmplY3R0eXBlX2F0b21fcGFyc2VyIH0sCiAJeyAib2JqZWN0c2l6ZSIsIFNPVVJDRV9PVEhFUiwgRklFTERfVUxPTkcsIG9iamVjdHNpemVfYXRvbV9wYXJzZXIgfSwKIAl7ICJvYmplY3RuYW1lIiwgU09VUkNFX09USEVSLCBGSUVMRF9TVFIsIG9iamVjdG5hbWVfYXRvbV9wYXJzZXIgfSwKKwl7ICJkZWx0YWJhc2UiLCBTT1VSQ0VfT1RIRVIsIEZJRUxEX1NUUiwgZGVsdGFiYXNlX2F0b21fcGFyc2VyIH0sCiAJeyAidHJlZSIsIFNPVVJDRV9PQkogfSwKIAl7ICJwYXJlbnQiLCBTT1VSQ0VfT0JKIH0sCiAJeyAibnVtcGFyZW50IiwgU09VUkNFX09CSiwgRklFTERfVUxPTkcgfSwKQEAgLTQ2MSwxMSArNTA3LDE2IEBACiAJeyAiZmxhZyIsIFNPVVJDRV9OT05FIH0sCiAJeyAiSEVBRCIsIFNPVVJDRV9OT05FLCBGSUVMRF9TVFIsIGhlYWRfYXRvbV9wYXJzZXIgfSwKIAl7ICJjb2xvciIsIFNPVVJDRV9OT05FLCBGSUVMRF9TVFIsIGNvbG9yX2F0b21fcGFyc2VyIH0sCisJeyAid29ya3RyZWVwYXRoIiwgU09VUkNFX05PTkUgfSwKIAl7ICJhbGlnbiIsIFNPVVJDRV9OT05FLCBGSUVMRF9TVFIsIGFsaWduX2F0b21fcGFyc2VyIH0sCiAJeyAiZW5kIiwgU09VUkNFX05PTkUgfSwKIAl7ICJpZiIsIFNPVVJDRV9OT05FLCBGSUVMRF9TVFIsIGlmX2F0b21fcGFyc2VyIH0sCiAJeyAidGhlbiIsIFNPVVJDRV9OT05FIH0sCiAJeyAiZWxzZSIsIFNPVVJDRV9OT05FIH0sCisJLyoKKwkgKiBQbGVhc2UgdXBkYXRlICRfX2dpdF9yZWZfZmllbGRsaXN0IGluIGdpdC1jb21wbGV0aW9uLmJhc2gKKwkgKiB3aGVuIHlvdSBhZGQgbmV3IGF0b21zCisJICovCiB9OwogCiAjZGVmaW5lIFJFRl9GT1JNQVRUSU5HX1NUQVRFX0lOSVQgIHsgMCwgTlVMTCB9CkBAIC04ODAsMTcgKzkzMSwyMSBAQAogCQkJbmFtZSsrOwogCQlpZiAoIXN0cmNtcChuYW1lLCAib2JqZWN0dHlwZSIpKQogCQkJdi0+cyA9IHhzdHJkdXAodHlwZV9uYW1lKG9pLT50eXBlKSk7Ci0JCWVsc2UgaWYgKCFzdHJjbXAobmFtZSwgIm9iamVjdHNpemUiKSkgeworCQllbHNlIGlmICghc3RyY21wKG5hbWUsICJvYmplY3RzaXplOmRpc2siKSkgeworCQkJdi0+dmFsdWUgPSBvaS0+ZGlza19zaXplOworCQkJdi0+cyA9IHhzdHJmbXQoIiUiUFJJdU1BWCwgKHVpbnRtYXhfdClvaS0+ZGlza19zaXplKTsKKwkJfSBlbHNlIGlmICghc3RyY21wKG5hbWUsICJvYmplY3RzaXplIikpIHsKIAkJCXYtPnZhbHVlID0gb2ktPnNpemU7CiAJCQl2LT5zID0geHN0cmZtdCgiJSJQUkl1TUFYICwgKHVpbnRtYXhfdClvaS0+c2l6ZSk7Ci0JCX0KKwkJfSBlbHNlIGlmICghc3RyY21wKG5hbWUsICJkZWx0YWJhc2UiKSkKKwkJCXYtPnMgPSB4c3RyZHVwKG9pZF90b19oZXgoJm9pLT5kZWx0YV9iYXNlX29pZCkpOwogCQllbHNlIGlmIChkZXJlZikKIAkJCWdyYWJfb2JqZWN0bmFtZShuYW1lLCAmb2ktPm9pZCwgdiwgJnVzZWRfYXRvbVtpXSk7CiAJfQogfQogCiAvKiBTZWUgZ3JhYl92YWx1ZXMgKi8KLXN0YXRpYyB2b2lkIGdyYWJfdGFnX3ZhbHVlcyhzdHJ1Y3QgYXRvbV92YWx1ZSAqdmFsLCBpbnQgZGVyZWYsIHN0cnVjdCBvYmplY3QgKm9iaiwgdm9pZCAqYnVmLCB1bnNpZ25lZCBsb25nIHN6KQorc3RhdGljIHZvaWQgZ3JhYl90YWdfdmFsdWVzKHN0cnVjdCBhdG9tX3ZhbHVlICp2YWwsIGludCBkZXJlZiwgc3RydWN0IG9iamVjdCAqb2JqKQogewogCWludCBpOwogCXN0cnVjdCB0YWcgKnRhZyA9IChzdHJ1Y3QgdGFnICopIG9iajsKQEAgLTkxMiw3ICs5NjcsNyBAQAogfQogCiAvKiBTZWUgZ3JhYl92YWx1ZXMgKi8KLXN0YXRpYyB2b2lkIGdyYWJfY29tbWl0X3ZhbHVlcyhzdHJ1Y3QgYXRvbV92YWx1ZSAqdmFsLCBpbnQgZGVyZWYsIHN0cnVjdCBvYmplY3QgKm9iaiwgdm9pZCAqYnVmLCB1bnNpZ25lZCBsb25nIHN6KQorc3RhdGljIHZvaWQgZ3JhYl9jb21taXRfdmFsdWVzKHN0cnVjdCBhdG9tX3ZhbHVlICp2YWwsIGludCBkZXJlZiwgc3RydWN0IG9iamVjdCAqb2JqKQogewogCWludCBpOwogCXN0cnVjdCBjb21taXQgKmNvbW1pdCA9IChzdHJ1Y3QgY29tbWl0ICopIG9iajsKQEAgLTk0NSw3ICsxMDAwLDcgQEAKIAl9CiB9CiAKLXN0YXRpYyBjb25zdCBjaGFyICpmaW5kX3dob2xpbmUoY29uc3QgY2hhciAqd2hvLCBpbnQgd2hvbGVuLCBjb25zdCBjaGFyICpidWYsIHVuc2lnbmVkIGxvbmcgc3opCitzdGF0aWMgY29uc3QgY2hhciAqZmluZF93aG9saW5lKGNvbnN0IGNoYXIgKndobywgaW50IHdob2xlbiwgY29uc3QgY2hhciAqYnVmKQogewogCWNvbnN0IGNoYXIgKmVvbDsKIAl3aGlsZSAoKmJ1ZikgewpAQCAtOTc2LDcgKzEwMzEsNyBAQAogCQlpZiAoIXN0cm5jbXAoY3AsICIgPCIsIDIpKQogCQkJcmV0dXJuIHhtZW1kdXB6KGJ1ZiwgY3AgLSBidWYpOwogCX0KLQlyZXR1cm4gIiI7CisJcmV0dXJuIHhzdHJkdXAoIiIpOwogfQogCiBzdGF0aWMgY29uc3QgY2hhciAqY29weV9lbWFpbChjb25zdCBjaGFyICpidWYpCkBAIC05ODQsMTAgKzEwMzksMTAgQEAKIAljb25zdCBjaGFyICplbWFpbCA9IHN0cmNocihidWYsICc8Jyk7CiAJY29uc3QgY2hhciAqZW9lbWFpbDsKIAlpZiAoIWVtYWlsKQotCQlyZXR1cm4gIiI7CisJCXJldHVybiB4c3RyZHVwKCIiKTsKIAllb2VtYWlsID0gc3RyY2hyKGVtYWlsLCAnPicpOwogCWlmICghZW9lbWFpbCkKLQkJcmV0dXJuICIiOworCQlyZXR1cm4geHN0cmR1cCgiIik7CiAJcmV0dXJuIHhtZW1kdXB6KGVtYWlsLCBlb2VtYWlsICsgMSAtIGVtYWlsKTsKIH0KIApAQCAtMTA0MSw3ICsxMDk2LDcgQEAKIH0KIAogLyogU2VlIGdyYWJfdmFsdWVzICovCi1zdGF0aWMgdm9pZCBncmFiX3BlcnNvbihjb25zdCBjaGFyICp3aG8sIHN0cnVjdCBhdG9tX3ZhbHVlICp2YWwsIGludCBkZXJlZiwgc3RydWN0IG9iamVjdCAqb2JqLCB2b2lkICpidWYsIHVuc2lnbmVkIGxvbmcgc3opCitzdGF0aWMgdm9pZCBncmFiX3BlcnNvbihjb25zdCBjaGFyICp3aG8sIHN0cnVjdCBhdG9tX3ZhbHVlICp2YWwsIGludCBkZXJlZiwgdm9pZCAqYnVmKQogewogCWludCBpOwogCWludCB3aG9sZW4gPSBzdHJsZW4od2hvKTsKQEAgLTEwNjIsNyArMTExNyw3IEBACiAJCSAgICAhc3RhcnRzX3dpdGgobmFtZSArIHdob2xlbiwgImRhdGUiKSkKIAkJCWNvbnRpbnVlOwogCQlpZiAoIXdob2xpbmUpCi0JCQl3aG9saW5lID0gZmluZF93aG9saW5lKHdobywgd2hvbGVuLCBidWYsIHN6KTsKKwkJCXdob2xpbmUgPSBmaW5kX3dob2xpbmUod2hvLCB3aG9sZW4sIGJ1Zik7CiAJCWlmICghd2hvbGluZSkKIAkJCXJldHVybjsgLyogbm8gcG9pbnQgbG9va2luZyBmb3IgaXQgKi8KIAkJaWYgKG5hbWVbd2hvbGVuXSA9PSAwKQpAQCAtMTA4Miw3ICsxMTM3LDcgQEAKIAlpZiAoc3RyY21wKHdobywgInRhZ2dlciIpICYmIHN0cmNtcCh3aG8sICJjb21taXR0ZXIiKSkKIAkJcmV0dXJuOyAvKiAiYXV0aG9yIiBmb3IgY29tbWl0IG9iamVjdCBpcyBub3Qgd2FudGVkICovCiAJaWYgKCF3aG9saW5lKQotCQl3aG9saW5lID0gZmluZF93aG9saW5lKHdobywgd2hvbGVuLCBidWYsIHN6KTsKKwkJd2hvbGluZSA9IGZpbmRfd2hvbGluZSh3aG8sIHdob2xlbiwgYnVmKTsKIAlpZiAoIXdob2xpbmUpCiAJCXJldHVybjsKIAlmb3IgKGkgPSAwOyBpIDwgdXNlZF9hdG9tX2NudDsgaSsrKSB7CkBAIC0xMTAwLDcgKzExNTUsNyBAQAogCX0KIH0KIAotc3RhdGljIHZvaWQgZmluZF9zdWJwb3MoY29uc3QgY2hhciAqYnVmLCB1bnNpZ25lZCBsb25nIHN6LAorc3RhdGljIHZvaWQgZmluZF9zdWJwb3MoY29uc3QgY2hhciAqYnVmLAogCQkJY29uc3QgY2hhciAqKnN1YiwgdW5zaWduZWQgbG9uZyAqc3VibGVuLAogCQkJY29uc3QgY2hhciAqKmJvZHksIHVuc2lnbmVkIGxvbmcgKmJvZHlsZW4sCiAJCQl1bnNpZ25lZCBsb25nICpub25zaWdsZW4sCkBAIC0xMTY5LDcgKzEyMjQsNyBAQAogfQogCiAvKiBTZWUgZ3JhYl92YWx1ZXMgKi8KLXN0YXRpYyB2b2lkIGdyYWJfc3ViX2JvZHlfY29udGVudHMoc3RydWN0IGF0b21fdmFsdWUgKnZhbCwgaW50IGRlcmVmLCBzdHJ1Y3Qgb2JqZWN0ICpvYmosIHZvaWQgKmJ1ZiwgdW5zaWduZWQgbG9uZyBzeikKK3N0YXRpYyB2b2lkIGdyYWJfc3ViX2JvZHlfY29udGVudHMoc3RydWN0IGF0b21fdmFsdWUgKnZhbCwgaW50IGRlcmVmLCB2b2lkICpidWYpCiB7CiAJaW50IGk7CiAJY29uc3QgY2hhciAqc3VicG9zID0gTlVMTCwgKmJvZHlwb3MgPSBOVUxMLCAqc2lncG9zID0gTlVMTDsKQEAgLTExODksNyArMTI0NCw3IEBACiAJCSAgICAhc3RhcnRzX3dpdGgobmFtZSwgImNvbnRlbnRzIikpCiAJCQljb250aW51ZTsKIAkJaWYgKCFzdWJwb3MpCi0JCQlmaW5kX3N1YnBvcyhidWYsIHN6LAorCQkJZmluZF9zdWJwb3MoYnVmLAogCQkJCSAgICAmc3VicG9zLCAmc3VibGVuLAogCQkJCSAgICAmYm9keXBvcywgJmJvZHlsZW4sICZub25zaWdsZW4sCiAJCQkJICAgICZzaWdwb3MsICZzaWdsZW4pOwpAQCAtMTI0MiwxOSArMTI5NywxOSBAQAogICogcG9pbnRlZCBhdCBieSB0aGUgcmVmIGl0c2VsZjsgb3RoZXJ3aXNlIGl0IGlzIHRoZSBvYmplY3QgdGhlCiAgKiByZWYgKHdoaWNoIGlzIGEgdGFnKSByZWZlcnMgdG8uCiAgKi8KLXN0YXRpYyB2b2lkIGdyYWJfdmFsdWVzKHN0cnVjdCBhdG9tX3ZhbHVlICp2YWwsIGludCBkZXJlZiwgc3RydWN0IG9iamVjdCAqb2JqLCB2b2lkICpidWYsIHVuc2lnbmVkIGxvbmcgc3opCitzdGF0aWMgdm9pZCBncmFiX3ZhbHVlcyhzdHJ1Y3QgYXRvbV92YWx1ZSAqdmFsLCBpbnQgZGVyZWYsIHN0cnVjdCBvYmplY3QgKm9iaiwgdm9pZCAqYnVmKQogewogCXN3aXRjaCAob2JqLT50eXBlKSB7CiAJY2FzZSBPQkpfVEFHOgotCQlncmFiX3RhZ192YWx1ZXModmFsLCBkZXJlZiwgb2JqLCBidWYsIHN6KTsKLQkJZ3JhYl9zdWJfYm9keV9jb250ZW50cyh2YWwsIGRlcmVmLCBvYmosIGJ1Ziwgc3opOwotCQlncmFiX3BlcnNvbigidGFnZ2VyIiwgdmFsLCBkZXJlZiwgb2JqLCBidWYsIHN6KTsKKwkJZ3JhYl90YWdfdmFsdWVzKHZhbCwgZGVyZWYsIG9iaik7CisJCWdyYWJfc3ViX2JvZHlfY29udGVudHModmFsLCBkZXJlZiwgYnVmKTsKKwkJZ3JhYl9wZXJzb24oInRhZ2dlciIsIHZhbCwgZGVyZWYsIGJ1Zik7CiAJCWJyZWFrOwogCWNhc2UgT0JKX0NPTU1JVDoKLQkJZ3JhYl9jb21taXRfdmFsdWVzKHZhbCwgZGVyZWYsIG9iaiwgYnVmLCBzeik7Ci0JCWdyYWJfc3ViX2JvZHlfY29udGVudHModmFsLCBkZXJlZiwgb2JqLCBidWYsIHN6KTsKLQkJZ3JhYl9wZXJzb24oImF1dGhvciIsIHZhbCwgZGVyZWYsIG9iaiwgYnVmLCBzeik7Ci0JCWdyYWJfcGVyc29uKCJjb21taXR0ZXIiLCB2YWwsIGRlcmVmLCBvYmosIGJ1Ziwgc3opOworCQlncmFiX2NvbW1pdF92YWx1ZXModmFsLCBkZXJlZiwgb2JqKTsKKwkJZ3JhYl9zdWJfYm9keV9jb250ZW50cyh2YWwsIGRlcmVmLCBidWYpOworCQlncmFiX3BlcnNvbigiYXV0aG9yIiwgdmFsLCBkZXJlZiwgYnVmKTsKKwkJZ3JhYl9wZXJzb24oImNvbW1pdHRlciIsIHZhbCwgZGVyZWYsIGJ1Zik7CiAJCWJyZWFrOwogCWNhc2UgT0JKX1RSRUU6CiAJCS8qIGdyYWJfdHJlZV92YWx1ZXModmFsLCBkZXJlZiwgb2JqLCBidWYsIHN6KTsgKi8KQEAgLTEzNjUsNyArMTQyMCw4IEBACiAJCSpzID0gc2hvd19yZWYoJmF0b20tPnUucmVtb3RlX3JlZi5yZWZuYW1lLCByZWZuYW1lKTsKIAllbHNlIGlmIChhdG9tLT51LnJlbW90ZV9yZWYub3B0aW9uID09IFJSX1RSQUNLKSB7CiAJCWlmIChzdGF0X3RyYWNraW5nX2luZm8oYnJhbmNoLCAmbnVtX291cnMsICZudW1fdGhlaXJzLAotCQkJCSAgICAgICBOVUxMLCBBSEVBRF9CRUhJTkRfRlVMTCkgPCAwKSB7CisJCQkJICAgICAgIE5VTEwsIGF0b20tPnUucmVtb3RlX3JlZi5wdXNoLAorCQkJCSAgICAgICBBSEVBRF9CRUhJTkRfRlVMTCkgPCAwKSB7CiAJCQkqcyA9IHhzdHJkdXAobXNncy5nb25lKTsKIAkJfSBlbHNlIGlmICghbnVtX291cnMgJiYgIW51bV90aGVpcnMpCiAJCQkqcyA9IHhzdHJkdXAoIiIpOwpAQCAtMTM4Myw3ICsxNDM5LDggQEAKIAkJfQogCX0gZWxzZSBpZiAoYXRvbS0+dS5yZW1vdGVfcmVmLm9wdGlvbiA9PSBSUl9UUkFDS1NIT1JUKSB7CiAJCWlmIChzdGF0X3RyYWNraW5nX2luZm8oYnJhbmNoLCAmbnVtX291cnMsICZudW1fdGhlaXJzLAotCQkJCSAgICAgICBOVUxMLCBBSEVBRF9CRUhJTkRfRlVMTCkgPCAwKSB7CisJCQkJICAgICAgIE5VTEwsIGF0b20tPnUucmVtb3RlX3JlZi5wdXNoLAorCQkJCSAgICAgICBBSEVBRF9CRUhJTkRfRlVMTCkgPCAwKSB7CiAJCQkqcyA9IHhzdHJkdXAoIiIpOwogCQkJcmV0dXJuOwogCQl9CkBAIC0xNDAyLDEyICsxNDU5LDEwIEBACiAJCQlyZW1vdGVfZm9yX2JyYW5jaChicmFuY2gsICZleHBsaWNpdCk7CiAJCSpzID0geHN0cmR1cChleHBsaWNpdCA/IHJlbW90ZSA6ICIiKTsKIAl9IGVsc2UgaWYgKGF0b20tPnUucmVtb3RlX3JlZi5vcHRpb24gPT0gUlJfUkVNT1RFX1JFRikgewotCQlpbnQgZXhwbGljaXQ7CiAJCWNvbnN0IGNoYXIgKm1lcmdlOwogCi0JCW1lcmdlID0gcmVtb3RlX3JlZl9mb3JfYnJhbmNoKGJyYW5jaCwgYXRvbS0+dS5yZW1vdGVfcmVmLnB1c2gsCi0JCQkJCSAgICAgICZleHBsaWNpdCk7Ci0JCSpzID0geHN0cmR1cChleHBsaWNpdCA/IG1lcmdlIDogIiIpOworCQltZXJnZSA9IHJlbW90ZV9yZWZfZm9yX2JyYW5jaChicmFuY2gsIGF0b20tPnUucmVtb3RlX3JlZi5wdXNoKTsKKwkJKnMgPSB4c3RyZHVwKG1lcmdlID8gbWVyZ2UgOiAiIik7CiAJfSBlbHNlCiAJCUJVRygidW5oYW5kbGVkIFJSXyogZW51bSIpOwogfQpAQCAtMTQxNywzNiArMTQ3MiwzNiBAQAogCXN0cnVjdCBzdHJidWYgZGVzYyA9IFNUUkJVRl9JTklUOwogCXN0cnVjdCB3dF9zdGF0dXNfc3RhdGUgc3RhdGU7CiAJbWVtc2V0KCZzdGF0ZSwgMCwgc2l6ZW9mKHN0YXRlKSk7Ci0Jd3Rfc3RhdHVzX2dldF9zdGF0ZSgmc3RhdGUsIDEpOworCXd0X3N0YXR1c19nZXRfc3RhdGUodGhlX3JlcG9zaXRvcnksICZzdGF0ZSwgMSk7CisKKwkvKgorCSAqIFRoZSAoIGNoYXJhY3RlciBtdXN0IGJlIGhhcmQtY29kZWQgYW5kIG5vdCBwYXJ0IG9mIGEgbG9jYWxpemFibGUKKwkgKiBzdHJpbmcsIHNpbmNlIHRoZSBkZXNjcmlwdGlvbiBpcyB1c2VkIGFzIGEgc29ydCBrZXkgYW5kIGNvbXBhcmVkCisJICogd2l0aCByZWYgbmFtZXMuCisJICovCisJc3RyYnVmX2FkZGNoKCZkZXNjLCAnKCcpOwogCWlmIChzdGF0ZS5yZWJhc2VfaW5fcHJvZ3Jlc3MgfHwKIAkgICAgc3RhdGUucmViYXNlX2ludGVyYWN0aXZlX2luX3Byb2dyZXNzKSB7CiAJCWlmIChzdGF0ZS5icmFuY2gpCi0JCQlzdHJidWZfYWRkZigmZGVzYywgXygiKG5vIGJyYW5jaCwgcmViYXNpbmcgJXMpIiksCisJCQlzdHJidWZfYWRkZigmZGVzYywgXygibm8gYnJhbmNoLCByZWJhc2luZyAlcyIpLAogCQkJCSAgICBzdGF0ZS5icmFuY2gpOwogCQllbHNlCi0JCQlzdHJidWZfYWRkZigmZGVzYywgXygiKG5vIGJyYW5jaCwgcmViYXNpbmcgZGV0YWNoZWQgSEVBRCAlcykiKSwKKwkJCXN0cmJ1Zl9hZGRmKCZkZXNjLCBfKCJubyBicmFuY2gsIHJlYmFzaW5nIGRldGFjaGVkIEhFQUQgJXMiKSwKIAkJCQkgICAgc3RhdGUuZGV0YWNoZWRfZnJvbSk7CiAJfSBlbHNlIGlmIChzdGF0ZS5iaXNlY3RfaW5fcHJvZ3Jlc3MpCi0JCXN0cmJ1Zl9hZGRmKCZkZXNjLCBfKCIobm8gYnJhbmNoLCBiaXNlY3Qgc3RhcnRlZCBvbiAlcykiKSwKKwkJc3RyYnVmX2FkZGYoJmRlc2MsIF8oIm5vIGJyYW5jaCwgYmlzZWN0IHN0YXJ0ZWQgb24gJXMiKSwKIAkJCSAgICBzdGF0ZS5icmFuY2gpOwogCWVsc2UgaWYgKHN0YXRlLmRldGFjaGVkX2Zyb20pIHsKIAkJaWYgKHN0YXRlLmRldGFjaGVkX2F0KQotCQkJLyoKLQkJCSAqIFRSQU5TTEFUT1JTOiBtYWtlIHN1cmUgdGhpcyBtYXRjaGVzICJIRUFECi0JCQkgKiBkZXRhY2hlZCBhdCAiIGluIHd0LXN0YXR1cy5jCi0JCQkgKi8KLQkJCXN0cmJ1Zl9hZGRmKCZkZXNjLCBfKCIoSEVBRCBkZXRhY2hlZCBhdCAlcykiKSwKLQkJCQlzdGF0ZS5kZXRhY2hlZF9mcm9tKTsKKwkJCXN0cmJ1Zl9hZGRzdHIoJmRlc2MsIEhFQURfREVUQUNIRURfQVQpOwogCQllbHNlCi0JCQkvKgotCQkJICogVFJBTlNMQVRPUlM6IG1ha2Ugc3VyZSB0aGlzIG1hdGNoZXMgIkhFQUQKLQkJCSAqIGRldGFjaGVkIGZyb20gIiBpbiB3dC1zdGF0dXMuYwotCQkJICovCi0JCQlzdHJidWZfYWRkZigmZGVzYywgXygiKEhFQUQgZGV0YWNoZWQgZnJvbSAlcykiKSwKLQkJCQlzdGF0ZS5kZXRhY2hlZF9mcm9tKTsKKwkJCXN0cmJ1Zl9hZGRzdHIoJmRlc2MsIEhFQURfREVUQUNIRURfRlJPTSk7CisJCXN0cmJ1Zl9hZGRzdHIoJmRlc2MsIHN0YXRlLmRldGFjaGVkX2Zyb20pOwogCX0KIAllbHNlCi0JCXN0cmJ1Zl9hZGRzdHIoJmRlc2MsIF8oIihubyBicmFuY2gpIikpOworCQlzdHJidWZfYWRkc3RyKCZkZXNjLCBfKCJubyBicmFuY2giKSk7CisJc3RyYnVmX2FkZGNoKCZkZXNjLCAnKScpOworCiAJZnJlZShzdGF0ZS5icmFuY2gpOwogCWZyZWUoc3RhdGUub250byk7CiAJZnJlZShzdGF0ZS5kZXRhY2hlZF9mcm9tKTsKQEAgLTE0ODIsNiArMTUzNyw4IEBACiAJCQkJICAgICBPQkpFQ1RfSU5GT19MT09LVVBfUkVQTEFDRSkpCiAJCXJldHVybiBzdHJidWZfYWRkZl9yZXQoZXJyLCAtMSwgXygibWlzc2luZyBvYmplY3QgJXMgZm9yICVzIiksCiAJCQkJICAgICAgIG9pZF90b19oZXgoJm9pLT5vaWQpLCByZWYtPnJlZm5hbWUpOworCWlmIChvaS0+aW5mby5kaXNrX3NpemVwICYmIG9pLT5kaXNrX3NpemUgPCAwKQorCQlCVUcoIk9iamVjdCBzaXplIGlzIGxlc3MgdGhhbiB6ZXJvLiIpOwogCiAJaWYgKG9pLT5pbmZvLmNvbnRlbnRwKSB7CiAJCSpvYmogPSBwYXJzZV9vYmplY3RfYnVmZmVyKHRoZV9yZXBvc2l0b3J5LCAmb2ktPm9pZCwgb2ktPnR5cGUsIG9pLT5zaXplLCBvaS0+Y29udGVudCwgJmVhdGVuKTsKQEAgLTE0OTEsNyArMTU0OCw3IEBACiAJCQlyZXR1cm4gc3RyYnVmX2FkZGZfcmV0KGVyciwgLTEsIF8oInBhcnNlX29iamVjdF9idWZmZXIgZmFpbGVkIG9uICVzIGZvciAlcyIpLAogCQkJCQkgICAgICAgb2lkX3RvX2hleCgmb2ktPm9pZCksIHJlZi0+cmVmbmFtZSk7CiAJCX0KLQkJZ3JhYl92YWx1ZXMocmVmLT52YWx1ZSwgZGVyZWYsICpvYmosIG9pLT5jb250ZW50LCBvaS0+c2l6ZSk7CisJCWdyYWJfdmFsdWVzKHJlZi0+dmFsdWUsIGRlcmVmLCAqb2JqLCBvaS0+Y29udGVudCk7CiAJfQogCiAJZ3JhYl9jb21tb25fdmFsdWVzKHJlZi0+dmFsdWUsIGRlcmVmLCBvaSk7CkBAIC0xNTAwLDYgKzE1NTcsNTEgQEAKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIHZvaWQgcG9wdWxhdGVfd29ya3RyZWVfbWFwKHN0cnVjdCBoYXNobWFwICptYXAsIHN0cnVjdCB3b3JrdHJlZSAqKndvcmt0cmVlcykKK3sKKwlpbnQgaTsKKworCWZvciAoaSA9IDA7IHdvcmt0cmVlc1tpXTsgaSsrKSB7CisJCWlmICh3b3JrdHJlZXNbaV0tPmhlYWRfcmVmKSB7CisJCQlzdHJ1Y3QgcmVmX3RvX3dvcmt0cmVlX2VudHJ5ICplbnRyeTsKKwkJCWVudHJ5ID0geG1hbGxvYyhzaXplb2YoKmVudHJ5KSk7CisJCQllbnRyeS0+d3QgPSB3b3JrdHJlZXNbaV07CisJCQloYXNobWFwX2VudHJ5X2luaXQoJmVudHJ5LT5lbnQsCisJCQkJCXN0cmhhc2god29ya3RyZWVzW2ldLT5oZWFkX3JlZikpOworCisJCQloYXNobWFwX2FkZChtYXAsICZlbnRyeS0+ZW50KTsKKwkJfQorCX0KK30KKworc3RhdGljIHZvaWQgbGF6eV9pbml0X3dvcmt0cmVlX21hcCh2b2lkKQoreworCWlmIChyZWZfdG9fd29ya3RyZWVfbWFwLndvcmt0cmVlcykKKwkJcmV0dXJuOworCisJcmVmX3RvX3dvcmt0cmVlX21hcC53b3JrdHJlZXMgPSBnZXRfd29ya3RyZWVzKDApOworCWhhc2htYXBfaW5pdCgmKHJlZl90b193b3JrdHJlZV9tYXAubWFwKSwgcmVmX3RvX3dvcmt0cmVlX21hcF9jbXBmbmMsIE5VTEwsIDApOworCXBvcHVsYXRlX3dvcmt0cmVlX21hcCgmKHJlZl90b193b3JrdHJlZV9tYXAubWFwKSwgcmVmX3RvX3dvcmt0cmVlX21hcC53b3JrdHJlZXMpOworfQorCitzdGF0aWMgY2hhciAqZ2V0X3dvcmt0cmVlX3BhdGgoY29uc3Qgc3RydWN0IHVzZWRfYXRvbSAqYXRvbSwgY29uc3Qgc3RydWN0IHJlZl9hcnJheV9pdGVtICpyZWYpCit7CisJc3RydWN0IGhhc2htYXBfZW50cnkgZW50cnksICplOworCXN0cnVjdCByZWZfdG9fd29ya3RyZWVfZW50cnkgKmxvb2t1cF9yZXN1bHQ7CisKKwlsYXp5X2luaXRfd29ya3RyZWVfbWFwKCk7CisKKwloYXNobWFwX2VudHJ5X2luaXQoJmVudHJ5LCBzdHJoYXNoKHJlZi0+cmVmbmFtZSkpOworCWUgPSBoYXNobWFwX2dldCgmKHJlZl90b193b3JrdHJlZV9tYXAubWFwKSwgJmVudHJ5LCByZWYtPnJlZm5hbWUpOworCisJaWYgKCFlKQorCQlyZXR1cm4geHN0cmR1cCgiIik7CisKKwlsb29rdXBfcmVzdWx0ID0gY29udGFpbmVyX29mKGUsIHN0cnVjdCByZWZfdG9fd29ya3RyZWVfZW50cnksIGVudCk7CisKKwlyZXR1cm4geHN0cmR1cChsb29rdXBfcmVzdWx0LT53dC0+cGF0aCk7Cit9CisKIC8qCiAgKiBQYXJzZSB0aGUgb2JqZWN0IHJlZmVycmVkIGJ5IHJlZiwgYW5kIGdyYWIgbmVlZGVkIHZhbHVlLgogICovCkBAIC0xNTM3LDYgKzE2MzksMTMgQEAKIAogCQlpZiAoc3RhcnRzX3dpdGgobmFtZSwgInJlZm5hbWUiKSkKIAkJCXJlZm5hbWUgPSBnZXRfcmVmbmFtZShhdG9tLCByZWYpOworCQllbHNlIGlmICghc3RyY21wKG5hbWUsICJ3b3JrdHJlZXBhdGgiKSkgeworCQkJaWYgKHJlZi0+a2luZCA9PSBGSUxURVJfUkVGU19CUkFOQ0hFUykKKwkJCQl2LT5zID0gZ2V0X3dvcmt0cmVlX3BhdGgoYXRvbSwgcmVmKTsKKwkJCWVsc2UKKwkJCQl2LT5zID0geHN0cmR1cCgiIik7CisJCQljb250aW51ZTsKKwkJfQogCQllbHNlIGlmIChzdGFydHNfd2l0aChuYW1lLCAic3ltcmVmIikpCiAJCQlyZWZuYW1lID0gZ2V0X3N5bXJlZihhdG9tLCByZWYpOwogCQllbHNlIGlmIChzdGFydHNfd2l0aChuYW1lLCAidXBzdHJlYW0iKSkgewpAQCAtMTY2MSw3ICsxNzcwLDcgQEAKIAkgKiBJZiBpdCBpcyBhIHRhZyBvYmplY3QsIHNlZSBpZiB3ZSB1c2UgYSB2YWx1ZSB0aGF0IGRlcmVmcwogCSAqIHRoZSBvYmplY3QsIGFuZCBpZiB3ZSBkbyBncmFiIHRoZSBvYmplY3QgaXQgcmVmZXJzIHRvLgogCSAqLwotCW9pX2RlcmVmLm9pZCA9ICgoc3RydWN0IHRhZyAqKW9iaiktPnRhZ2dlZC0+b2lkOworCW9pX2RlcmVmLm9pZCA9ICpnZXRfdGFnZ2VkX29pZCgoc3RydWN0IHRhZyAqKW9iaik7CiAKIAkvKgogCSAqIE5FRURTV09SSzogVGhpcyBkZXJlZnMgdGFnIG9ubHkgb25jZSwgd2hpY2gKQEAgLTE3NTksMjEgKzE4NjgsNjIgQEAKIAlyZXR1cm4gbWF0Y2hfcGF0dGVybihmaWx0ZXIsIHJlZm5hbWUpOwogfQogCi0vKgotICogRmluZCB0aGUgbG9uZ2VzdCBwcmVmaXggb2YgcGF0dGVybiB3ZSBjYW4gcGFzcyB0bwotICogYGZvcl9lYWNoX2Z1bGxyZWZfaW4oKWAsIG5hbWVseSB0aGUgcGFydCBvZiBwYXR0ZXJuIHByZWNlZGluZyB0aGUKLSAqIGZpcnN0IGdsb2IgY2hhcmFjdGVyLiAoTm90ZSB0aGF0IGBmb3JfZWFjaF9mdWxscmVmX2luKClgIGlzCi0gKiBwZXJmZWN0bHkgaGFwcHkgd29ya2luZyB3aXRoIGEgcHJlZml4IHRoYXQgZG9lc24ndCBlbmQgYXQgYQotICogcGF0aG5hbWUgY29tcG9uZW50IGJvdW5kYXJ5LikKLSAqLwotc3RhdGljIHZvaWQgZmluZF9sb25nZXN0X3ByZWZpeChzdHJ1Y3Qgc3RyYnVmICpvdXQsIGNvbnN0IGNoYXIgKnBhdHRlcm4pCitzdGF0aWMgaW50IHFzb3J0X3N0cmNtcChjb25zdCB2b2lkICp2YSwgY29uc3Qgdm9pZCAqdmIpCiB7Ci0JY29uc3QgY2hhciAqcDsKKwljb25zdCBjaGFyICphID0gKihjb25zdCBjaGFyICoqKXZhOworCWNvbnN0IGNoYXIgKmIgPSAqKGNvbnN0IGNoYXIgKiopdmI7CiAKLQlmb3IgKHAgPSBwYXR0ZXJuOyAqcCAmJiAhaXNfZ2xvYl9zcGVjaWFsKCpwKTsgcCsrKQotCQk7CisJcmV0dXJuIHN0cmNtcChhLCBiKTsKK30KIAotCXN0cmJ1Zl9hZGQob3V0LCBwYXR0ZXJuLCBwIC0gcGF0dGVybik7CitzdGF0aWMgdm9pZCBmaW5kX2xvbmdlc3RfcHJlZml4ZXNfMShzdHJ1Y3Qgc3RyaW5nX2xpc3QgKm91dCwKKwkJCQkgIHN0cnVjdCBzdHJidWYgKnByZWZpeCwKKwkJCQkgIGNvbnN0IGNoYXIgKipwYXR0ZXJucywgc2l6ZV90IG5yKQoreworCXNpemVfdCBpOworCisJZm9yIChpID0gMDsgaSA8IG5yOyBpKyspIHsKKwkJY2hhciBjID0gcGF0dGVybnNbaV1bcHJlZml4LT5sZW5dOworCQlpZiAoIWMgfHwgaXNfZ2xvYl9zcGVjaWFsKGMpKSB7CisJCQlzdHJpbmdfbGlzdF9hcHBlbmQob3V0LCBwcmVmaXgtPmJ1Zik7CisJCQlyZXR1cm47CisJCX0KKwl9CisKKwlpID0gMDsKKwl3aGlsZSAoaSA8IG5yKSB7CisJCXNpemVfdCBlbmQ7CisKKwkJLyoKKwkJKiBTZXQgImVuZCIgdG8gdGhlIGluZGV4IG9mIHRoZSBlbGVtZW50IF9hZnRlcl8gdGhlIGxhc3Qgb25lCisJCSogaW4gb3VyIGdyb3VwLgorCQkqLworCQlmb3IgKGVuZCA9IGkgKyAxOyBlbmQgPCBucjsgZW5kKyspIHsKKwkJCWlmIChwYXR0ZXJuc1tpXVtwcmVmaXgtPmxlbl0gIT0gcGF0dGVybnNbZW5kXVtwcmVmaXgtPmxlbl0pCisJCQkJYnJlYWs7CisJCX0KKworCQlzdHJidWZfYWRkY2gocHJlZml4LCBwYXR0ZXJuc1tpXVtwcmVmaXgtPmxlbl0pOworCQlmaW5kX2xvbmdlc3RfcHJlZml4ZXNfMShvdXQsIHByZWZpeCwgcGF0dGVybnMgKyBpLCBlbmQgLSBpKTsKKwkJc3RyYnVmX3NldGxlbihwcmVmaXgsIHByZWZpeC0+bGVuIC0gMSk7CisKKwkJaSA9IGVuZDsKKwl9Cit9CisKK3N0YXRpYyB2b2lkIGZpbmRfbG9uZ2VzdF9wcmVmaXhlcyhzdHJ1Y3Qgc3RyaW5nX2xpc3QgKm91dCwKKwkJCQkgIGNvbnN0IGNoYXIgKipwYXR0ZXJucykKK3sKKwlzdHJ1Y3QgYXJndl9hcnJheSBzb3J0ZWQgPSBBUkdWX0FSUkFZX0lOSVQ7CisJc3RydWN0IHN0cmJ1ZiBwcmVmaXggPSBTVFJCVUZfSU5JVDsKKworCWFyZ3ZfYXJyYXlfcHVzaHYoJnNvcnRlZCwgcGF0dGVybnMpOworCVFTT1JUKHNvcnRlZC5hcmd2LCBzb3J0ZWQuYXJnYywgcXNvcnRfc3RyY21wKTsKKworCWZpbmRfbG9uZ2VzdF9wcmVmaXhlc18xKG91dCwgJnByZWZpeCwgc29ydGVkLmFyZ3YsIHNvcnRlZC5hcmdjKTsKKworCWFyZ3ZfYXJyYXlfY2xlYXIoJnNvcnRlZCk7CisJc3RyYnVmX3JlbGVhc2UoJnByZWZpeCk7CiB9CiAKIC8qCkBAIC0xNzg2LDcgKzE5MzYsOCBAQAogCQkJCSAgICAgICB2b2lkICpjYl9kYXRhLAogCQkJCSAgICAgICBpbnQgYnJva2VuKQogewotCXN0cnVjdCBzdHJidWYgcHJlZml4ID0gU1RSQlVGX0lOSVQ7CisJc3RydWN0IHN0cmluZ19saXN0IHByZWZpeGVzID0gU1RSSU5HX0xJU1RfSU5JVF9EVVA7CisJc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKnByZWZpeDsKIAlpbnQgcmV0OwogCiAJaWYgKCFmaWx0ZXItPm1hdGNoX2FzX3BhdGgpIHsKQEAgLTE4MTIsMjEgKzE5NjMsMTUgQEAKIAkJcmV0dXJuIGZvcl9lYWNoX2Z1bGxyZWZfaW4oIiIsIGNiLCBjYl9kYXRhLCBicm9rZW4pOwogCX0KIAotCWlmIChmaWx0ZXItPm5hbWVfcGF0dGVybnNbMV0pIHsKLQkJLyoKLQkJICogbXVsdGlwbGUgcGF0dGVybnM7IGluIHRoZW9yeSB0aGlzIGNvdWxkIHN0aWxsIHdvcmsgYXMgbG9uZwotCQkgKiBhcyB0aGUgcGF0dGVybnMgYXJlIGRpc2pvaW50LiBXZSdkIGp1c3QgbWFrZSBtdWx0aXBsZSBjYWxscwotCQkgKiB0byBmb3JfZWFjaF9yZWYoKS4gQnV0IGlmIHRoZXkncmUgbm90IGRpc2pvaW50LCB3ZSdkIGVuZCB1cAotCQkgKiByZXBvcnRpbmcgdGhlIHNhbWUgcmVmIG11bHRpcGxlIHRpbWVzLiBTbyBsZXQncyBwdW50IG9uIHRoYXQKLQkJICogZm9yIG5vdy4KLQkJICovCi0JCXJldHVybiBmb3JfZWFjaF9mdWxscmVmX2luKCIiLCBjYiwgY2JfZGF0YSwgYnJva2VuKTsKKwlmaW5kX2xvbmdlc3RfcHJlZml4ZXMoJnByZWZpeGVzLCBmaWx0ZXItPm5hbWVfcGF0dGVybnMpOworCisJZm9yX2VhY2hfc3RyaW5nX2xpc3RfaXRlbShwcmVmaXgsICZwcmVmaXhlcykgeworCQlyZXQgPSBmb3JfZWFjaF9mdWxscmVmX2luKHByZWZpeC0+c3RyaW5nLCBjYiwgY2JfZGF0YSwgYnJva2VuKTsKKwkJaWYgKHJldCkKKwkJCWJyZWFrOwogCX0KIAotCWZpbmRfbG9uZ2VzdF9wcmVmaXgoJnByZWZpeCwgZmlsdGVyLT5uYW1lX3BhdHRlcm5zWzBdKTsKLQotCXJldCA9IGZvcl9lYWNoX2Z1bGxyZWZfaW4ocHJlZml4LmJ1ZiwgY2IsIGNiX2RhdGEsIGJyb2tlbik7Ci0Jc3RyYnVmX3JlbGVhc2UoJnByZWZpeCk7CisJc3RyaW5nX2xpc3RfY2xlYXIoJnByZWZpeGVzLCAwKTsKIAlyZXR1cm4gcmV0OwogfQogCkBAIC0xODU2LDcgKzIwMDEsNyBAQAogCWlmICghb2JqKQogCQlkaWUoXygibWFsZm9ybWVkIG9iamVjdCBhdCAnJXMnIiksIHJlZm5hbWUpOwogCWlmIChvYmotPnR5cGUgPT0gT0JKX1RBRykKLQkJdGFnZ2VkX29pZCA9ICYoKHN0cnVjdCB0YWcgKilvYmopLT50YWdnZWQtPm9pZDsKKwkJdGFnZ2VkX29pZCA9IGdldF90YWdnZWRfb2lkKChzdHJ1Y3QgdGFnICopb2JqKTsKIAlpZiAodGFnZ2VkX29pZCAmJiBvaWRfYXJyYXlfbG9va3VwKHBvaW50c19hdCwgdGFnZ2VkX29pZCkgPj0gMCkKIAkJcmV0dXJuIHRhZ2dlZF9vaWQ7CiAJcmV0dXJuIE5VTEw7CkBAIC0yMDAxLDcgKzIxNDYsOSBAQAogewogCWZyZWUoKGNoYXIgKilpdGVtLT5zeW1yZWYpOwogCWlmIChpdGVtLT52YWx1ZSkgewotCQlmcmVlKChjaGFyICopaXRlbS0+dmFsdWUtPnMpOworCQlpbnQgaTsKKwkJZm9yIChpID0gMDsgaSA8IHVzZWRfYXRvbV9jbnQ7IGkrKykKKwkJCWZyZWUoKGNoYXIgKilpdGVtLT52YWx1ZVtpXS5zKTsKIAkJZnJlZShpdGVtLT52YWx1ZSk7CiAJfQogCWZyZWUoaXRlbSk7CkBAIC0yMDEyLDE0ICsyMTU5LDIyIEBACiB7CiAJaW50IGk7CiAKLQlmb3IgKGkgPSAwOyBpIDwgdXNlZF9hdG9tX2NudDsgaSsrKQotCQlmcmVlKChjaGFyICopdXNlZF9hdG9tW2ldLm5hbWUpOwotCUZSRUVfQU5EX05VTEwodXNlZF9hdG9tKTsKLQl1c2VkX2F0b21fY250ID0gMDsKIAlmb3IgKGkgPSAwOyBpIDwgYXJyYXktPm5yOyBpKyspCiAJCWZyZWVfYXJyYXlfaXRlbShhcnJheS0+aXRlbXNbaV0pOwogCUZSRUVfQU5EX05VTEwoYXJyYXktPml0ZW1zKTsKIAlhcnJheS0+bnIgPSBhcnJheS0+YWxsb2MgPSAwOworCisJZm9yIChpID0gMDsgaSA8IHVzZWRfYXRvbV9jbnQ7IGkrKykKKwkJZnJlZSgoY2hhciAqKXVzZWRfYXRvbVtpXS5uYW1lKTsKKwlGUkVFX0FORF9OVUxMKHVzZWRfYXRvbSk7CisJdXNlZF9hdG9tX2NudCA9IDA7CisKKwlpZiAocmVmX3RvX3dvcmt0cmVlX21hcC53b3JrdHJlZXMpIHsKKwkJaGFzaG1hcF9mcmVlX2VudHJpZXMoJihyZWZfdG9fd29ya3RyZWVfbWFwLm1hcCksCisJCQkJCXN0cnVjdCByZWZfdG9fd29ya3RyZWVfZW50cnksIGVudCk7CisJCWZyZWVfd29ya3RyZWVzKHJlZl90b193b3JrdHJlZV9tYXAud29ya3RyZWVzKTsKKwkJcmVmX3RvX3dvcmt0cmVlX21hcC53b3JrdHJlZXMgPSBOVUxMOworCX0KIH0KIAogc3RhdGljIHZvaWQgZG9fbWVyZ2VfZmlsdGVyKHN0cnVjdCByZWZfZmlsdGVyX2NiZGF0YSAqcmVmX2NiZGF0YSkKQEAgLTIzMDgsOCArMjQ2MywxMyBAQAogCiBpbnQgcGFyc2Vfb3B0X3JlZl9zb3J0aW5nKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwgY29uc3QgY2hhciAqYXJnLCBpbnQgdW5zZXQpCiB7Ci0JaWYgKCFhcmcpIC8qIHNob3VsZCAtLW5vLXNvcnQgdm9pZCB0aGUgbGlzdCA/ICovCi0JCXJldHVybiAtMTsKKwkvKgorCSAqIE5FRURTV09SSzogV2Ugc2hvdWxkIHByb2JhYmx5IGNsZWFyIHRoZSBsaXN0IGluIHRoaXMgY2FzZSwgYnV0IHdlJ3ZlCisJICogYWxyZWFkeSBtdW5nZWQgdGhlIGdsb2JhbCB1c2VkX2F0b21zIGxpc3QsIHdoaWNoIHdvdWxkIG5lZWQgdG8gYmUKKwkgKiB1bmRvbmUuCisJICovCisJQlVHX09OX09QVF9ORUcodW5zZXQpOworCiAJcGFyc2VfcmVmX3NvcnRpbmcob3B0LT52YWx1ZSwgYXJnKTsKIAlyZXR1cm4gMDsKIH0KQEAgLTIzMjQsOSArMjQ4NCwxMSBAQAogCiAJaWYgKHJmLT5tZXJnZSkgewogCQlpZiAobm9fbWVyZ2VkKSB7Ci0JCQlyZXR1cm4gb3B0ZXJyb3Iob3B0LCAiaXMgaW5jb21wYXRpYmxlIHdpdGggLS1tZXJnZWQiLCAwKTsKKwkJCXJldHVybiBlcnJvcihfKCJvcHRpb24gYCVzJyBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLW1lcmdlZCIpLAorCQkJCSAgICAgb3B0LT5sb25nX25hbWUpOwogCQl9IGVsc2UgewotCQkJcmV0dXJuIG9wdGVycm9yKG9wdCwgImlzIGluY29tcGF0aWJsZSB3aXRoIC0tbm8tbWVyZ2VkIiwgMCk7CisJCQlyZXR1cm4gZXJyb3IoXygib3B0aW9uIGAlcycgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1uby1tZXJnZWQiKSwKKwkJCQkgICAgIG9wdC0+bG9uZ19uYW1lKTsKIAkJfQogCX0KIApAQCAtMjM0MCw3ICsyNTAyLDcgQEAKIAlyZi0+bWVyZ2VfY29tbWl0ID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfZ2VudGx5KHRoZV9yZXBvc2l0b3J5LAogCQkJCQkJCSAgJm9pZCwgMCk7CiAJaWYgKCFyZi0+bWVyZ2VfY29tbWl0KQotCQlyZXR1cm4gb3B0ZXJyb3Iob3B0LCAibXVzdCBwb2ludCB0byBhIGNvbW1pdCIsIDApOworCQlyZXR1cm4gZXJyb3IoXygib3B0aW9uIGAlcycgbXVzdCBwb2ludCB0byBhIGNvbW1pdCIpLCBvcHQtPmxvbmdfbmFtZSk7CiAKIAlyZXR1cm4gMDsKIH0KZGlmZiAtLWdpdCBhL3JlZi1maWx0ZXIuaCBiL3JlZi1maWx0ZXIuaAppbmRleCA4NWM4ZWJjLi5mMWRjZmY0IDEwMDY0NAotLS0gYS9yZWYtZmlsdGVyLmgKKysrIGIvcmVmLWZpbHRlci5oCkBAIC05Niw2ICs5NiwxMSBAQAogI2RlZmluZSBPUFRfTUVSR0VEKGYsIGgpIF9PUFRfTUVSR0VEX05PX01FUkdFRCgibWVyZ2VkIiwgZiwgaCkKICNkZWZpbmUgT1BUX05PX01FUkdFRChmLCBoKSBfT1BUX01FUkdFRF9OT19NRVJHRUQoIm5vLW1lcmdlZCIsIGYsIGgpCiAKKyNkZWZpbmUgT1BUX1JFRl9TT1JUKHZhcikgXAorCU9QVF9DQUxMQkFDS19GKDAsICJzb3J0IiwgKHZhciksIFwKKwkJICAgICAgIE5fKCJrZXkiKSwgTl8oImZpZWxkIG5hbWUgdG8gc29ydCBvbiIpLCBcCisJCSAgICAgICBQQVJTRV9PUFRfTk9ORUcsIHBhcnNlX29wdF9yZWZfc29ydGluZykKKwogLyoKICAqIEFQSSBmb3IgZmlsdGVyaW5nIGEgc2V0IG9mIHJlZnMuIEJhc2VkIG9uIHRoZSB0eXBlIG9mIHJlZnMgdGhlIHVzZXIKICAqIGhhcyByZXF1ZXN0ZWQsIHdlIGl0ZXJhdGUgdGhyb3VnaCB0aG9zZSByZWZzIGFuZCBhcHBseSBmaWx0ZXJzCmRpZmYgLS1naXQgYS9yZWZsb2ctd2Fsay5oIGIvcmVmbG9nLXdhbGsuaAppbmRleCBjYjNlNzM3Li5mMjY0MDhmIDEwMDY0NAotLS0gYS9yZWZsb2ctd2Fsay5oCisrKyBiL3JlZmxvZy13YWxrLmgKQEAgLTYsMjEgKzYsMjEgQEAKIHN0cnVjdCBjb21taXQ7CiBzdHJ1Y3QgcmVmbG9nX3dhbGtfaW5mbzsKIAotZXh0ZXJuIHZvaWQgaW5pdF9yZWZsb2dfd2FsayhzdHJ1Y3QgcmVmbG9nX3dhbGtfaW5mbyAqKmluZm8pOwotZXh0ZXJuIGludCBhZGRfcmVmbG9nX2Zvcl93YWxrKHN0cnVjdCByZWZsb2dfd2Fsa19pbmZvICppbmZvLAotCQlzdHJ1Y3QgY29tbWl0ICpjb21taXQsIGNvbnN0IGNoYXIgKm5hbWUpOwotZXh0ZXJuIHZvaWQgc2hvd19yZWZsb2dfbWVzc2FnZShzdHJ1Y3QgcmVmbG9nX3dhbGtfaW5mbyAqaW5mbywgaW50LAotCQkJCWNvbnN0IHN0cnVjdCBkYXRlX21vZGUgKiwgaW50IGZvcmNlX2RhdGUpOwotZXh0ZXJuIHZvaWQgZ2V0X3JlZmxvZ19tZXNzYWdlKHN0cnVjdCBzdHJidWYgKnNiLAotCQlzdHJ1Y3QgcmVmbG9nX3dhbGtfaW5mbyAqcmVmbG9nX2luZm8pOwotZXh0ZXJuIGNvbnN0IGNoYXIgKmdldF9yZWZsb2dfaWRlbnQoc3RydWN0IHJlZmxvZ193YWxrX2luZm8gKnJlZmxvZ19pbmZvKTsKLWV4dGVybiB0aW1lc3RhbXBfdCBnZXRfcmVmbG9nX3RpbWVzdGFtcChzdHJ1Y3QgcmVmbG9nX3dhbGtfaW5mbyAqcmVmbG9nX2luZm8pOwotZXh0ZXJuIHZvaWQgZ2V0X3JlZmxvZ19zZWxlY3RvcihzdHJ1Y3Qgc3RyYnVmICpzYiwKLQkJc3RydWN0IHJlZmxvZ193YWxrX2luZm8gKnJlZmxvZ19pbmZvLAotCQljb25zdCBzdHJ1Y3QgZGF0ZV9tb2RlICpkbW9kZSwgaW50IGZvcmNlX2RhdGUsCi0JCWludCBzaG9ydGVuKTsKK3ZvaWQgaW5pdF9yZWZsb2dfd2FsayhzdHJ1Y3QgcmVmbG9nX3dhbGtfaW5mbyAqKmluZm8pOworaW50IGFkZF9yZWZsb2dfZm9yX3dhbGsoc3RydWN0IHJlZmxvZ193YWxrX2luZm8gKmluZm8sCisJCQlzdHJ1Y3QgY29tbWl0ICpjb21taXQsIGNvbnN0IGNoYXIgKm5hbWUpOwordm9pZCBzaG93X3JlZmxvZ19tZXNzYWdlKHN0cnVjdCByZWZsb2dfd2Fsa19pbmZvICppbmZvLCBpbnQsCisJCQkgY29uc3Qgc3RydWN0IGRhdGVfbW9kZSAqLCBpbnQgZm9yY2VfZGF0ZSk7Cit2b2lkIGdldF9yZWZsb2dfbWVzc2FnZShzdHJ1Y3Qgc3RyYnVmICpzYiwKKwkJCXN0cnVjdCByZWZsb2dfd2Fsa19pbmZvICpyZWZsb2dfaW5mbyk7Citjb25zdCBjaGFyICpnZXRfcmVmbG9nX2lkZW50KHN0cnVjdCByZWZsb2dfd2Fsa19pbmZvICpyZWZsb2dfaW5mbyk7Cit0aW1lc3RhbXBfdCBnZXRfcmVmbG9nX3RpbWVzdGFtcChzdHJ1Y3QgcmVmbG9nX3dhbGtfaW5mbyAqcmVmbG9nX2luZm8pOwordm9pZCBnZXRfcmVmbG9nX3NlbGVjdG9yKHN0cnVjdCBzdHJidWYgKnNiLAorCQkJIHN0cnVjdCByZWZsb2dfd2Fsa19pbmZvICpyZWZsb2dfaW5mbywKKwkJCSBjb25zdCBzdHJ1Y3QgZGF0ZV9tb2RlICpkbW9kZSwgaW50IGZvcmNlX2RhdGUsCisJCQkgaW50IHNob3J0ZW4pOwogCi1leHRlcm4gaW50IHJlZmxvZ193YWxrX2VtcHR5KHN0cnVjdCByZWZsb2dfd2Fsa19pbmZvICp3YWxrKTsKK2ludCByZWZsb2dfd2Fsa19lbXB0eShzdHJ1Y3QgcmVmbG9nX3dhbGtfaW5mbyAqd2Fsayk7CiAKIHN0cnVjdCBjb21taXQgKm5leHRfcmVmbG9nX2VudHJ5KHN0cnVjdCByZWZsb2dfd2Fsa19pbmZvICpyZWZsb2dfaW5mbyk7CiAKZGlmZiAtLWdpdCBhL3JlZnMuYyBiL3JlZnMuYwppbmRleCBmOTkzNjM1Li4xYWIwYmI1IDEwMDY0NAotLS0gYS9yZWZzLmMKKysrIGIvcmVmcy5jCkBAIC02Myw3ICs2Myw3IEBACiAgKiBub3QgbGVnYWwuICBJdCBpcyBsZWdhbCBpZiBpdCBpcyBzb21ldGhpbmcgcmVhc29uYWJsZSB0byBoYXZlIHVuZGVyCiAgKiAiLmdpdC9yZWZzLyI7IFdlIGRvIG5vdCBsaWtlIGl0IGlmOgogICoKLSAqIC0gYW55IHBhdGggY29tcG9uZW50IG9mIGl0IGJlZ2lucyB3aXRoICIuIiwgb3IKKyAqIC0gaXQgYmVnaW5zIHdpdGggIi4iLCBvcgogICogLSBpdCBoYXMgZG91YmxlIGRvdHMgIi4uIiwgb3IKICAqIC0gaXQgaGFzIEFTQ0lJIGNvbnRyb2wgY2hhcmFjdGVycywgb3IKICAqIC0gaXQgaGFzICI6IiwgIj8iLCAiWyIsICJcIiwgIl4iLCAifiIsIFNQLCBvciBUQUIgYW55d2hlcmUsIG9yCkBAIC03MSwzMSArNzEsNjMgQEAKICAqIC0gaXQgZW5kcyB3aXRoIGEgIi8iLCBvcgogICogLSBpdCBlbmRzIHdpdGggIi5sb2NrIiwgb3IKICAqIC0gaXQgY29udGFpbnMgYSAiQHsiIHBvcnRpb24KKyAqCisgKiBXaGVuIHNhbml0aXplZCBpcyBub3QgTlVMTCwgaW5zdGVhZCBvZiByZWplY3RpbmcgdGhlIGlucHV0IHJlZm5hbWUKKyAqIGFzIGFuIGVycm9yLCB0cnkgdG8gY29tZSB1cCB3aXRoIGEgdXNhYmxlIHJlcGxhY2VtZW50IGZvciB0aGUgaW5wdXQKKyAqIHJlZm5hbWUgaW4gaXQuCiAgKi8KLXN0YXRpYyBpbnQgY2hlY2tfcmVmbmFtZV9jb21wb25lbnQoY29uc3QgY2hhciAqcmVmbmFtZSwgaW50ICpmbGFncykKK3N0YXRpYyBpbnQgY2hlY2tfcmVmbmFtZV9jb21wb25lbnQoY29uc3QgY2hhciAqcmVmbmFtZSwgaW50ICpmbGFncywKKwkJCQkgICBzdHJ1Y3Qgc3RyYnVmICpzYW5pdGl6ZWQpCiB7CiAJY29uc3QgY2hhciAqY3A7CiAJY2hhciBsYXN0ID0gJ1wwJzsKKwlzaXplX3QgY29tcG9uZW50X3N0YXJ0ID0gMDsgLyogZ2FyYmFnZSAtIG5vdCBhIHJlYXNvbmFibGUgaW5pdGlhbCB2YWx1ZSAqLworCisJaWYgKHNhbml0aXplZCkKKwkJY29tcG9uZW50X3N0YXJ0ID0gc2FuaXRpemVkLT5sZW47CiAKIAlmb3IgKGNwID0gcmVmbmFtZTsgOyBjcCsrKSB7CiAJCWludCBjaCA9ICpjcCAmIDI1NTsKIAkJdW5zaWduZWQgY2hhciBkaXNwID0gcmVmbmFtZV9kaXNwb3NpdGlvbltjaF07CisKKwkJaWYgKHNhbml0aXplZCAmJiBkaXNwICE9IDEpCisJCQlzdHJidWZfYWRkY2goc2FuaXRpemVkLCBjaCk7CisKIAkJc3dpdGNoIChkaXNwKSB7CiAJCWNhc2UgMToKIAkJCWdvdG8gb3V0OwogCQljYXNlIDI6Ci0JCQlpZiAobGFzdCA9PSAnLicpCi0JCQkJcmV0dXJuIC0xOyAvKiBSZWZuYW1lIGNvbnRhaW5zICIuLiIuICovCisJCQlpZiAobGFzdCA9PSAnLicpIHsgLyogUmVmbmFtZSBjb250YWlucyAiLi4iLiAqLworCQkJCWlmIChzYW5pdGl6ZWQpCisJCQkJCS8qIGNvbGxhcHNlICIuLiIgdG8gc2luZ2xlICIuIiAqLworCQkJCQlzdHJidWZfc2V0bGVuKHNhbml0aXplZCwgc2FuaXRpemVkLT5sZW4gLSAxKTsKKwkJCQllbHNlCisJCQkJCXJldHVybiAtMTsKKwkJCX0KIAkJCWJyZWFrOwogCQljYXNlIDM6Ci0JCQlpZiAobGFzdCA9PSAnQCcpCi0JCQkJcmV0dXJuIC0xOyAvKiBSZWZuYW1lIGNvbnRhaW5zICJAeyIuICovCisJCQlpZiAobGFzdCA9PSAnQCcpIHsgLyogUmVmbmFtZSBjb250YWlucyAiQHsiLiAqLworCQkJCWlmIChzYW5pdGl6ZWQpCisJCQkJCXNhbml0aXplZC0+YnVmW3Nhbml0aXplZC0+bGVuLTFdID0gJy0nOworCQkJCWVsc2UKKwkJCQkJcmV0dXJuIC0xOworCQkJfQogCQkJYnJlYWs7CiAJCWNhc2UgNDoKLQkJCXJldHVybiAtMTsKKwkJCS8qIGZvcmJpZGRlbiBjaGFyICovCisJCQlpZiAoc2FuaXRpemVkKQorCQkJCXNhbml0aXplZC0+YnVmW3Nhbml0aXplZC0+bGVuLTFdID0gJy0nOworCQkJZWxzZQorCQkJCXJldHVybiAtMTsKKwkJCWJyZWFrOwogCQljYXNlIDU6Ci0JCQlpZiAoISgqZmxhZ3MgJiBSRUZOQU1FX1JFRlNQRUNfUEFUVEVSTikpCi0JCQkJcmV0dXJuIC0xOyAvKiByZWZzcGVjIGNhbid0IGJlIGEgcGF0dGVybiAqLworCQkJaWYgKCEoKmZsYWdzICYgUkVGTkFNRV9SRUZTUEVDX1BBVFRFUk4pKSB7CisJCQkJLyogcmVmc3BlYyBjYW4ndCBiZSBhIHBhdHRlcm4gKi8KKwkJCQlpZiAoc2FuaXRpemVkKQorCQkJCQlzYW5pdGl6ZWQtPmJ1ZltzYW5pdGl6ZWQtPmxlbi0xXSA9ICctJzsKKwkJCQllbHNlCisJCQkJCXJldHVybiAtMTsKKwkJCX0KIAogCQkJLyoKIAkJCSAqIFVuc2V0IHRoZSBwYXR0ZXJuIGZsYWcgc28gdGhhdCB3ZSBvbmx5IGFjY2VwdApAQCAtMTA5LDI2ICsxNDEsNDggQEAKIG91dDoKIAlpZiAoY3AgPT0gcmVmbmFtZSkKIAkJcmV0dXJuIDA7IC8qIENvbXBvbmVudCBoYXMgemVybyBsZW5ndGguICovCi0JaWYgKHJlZm5hbWVbMF0gPT0gJy4nKQotCQlyZXR1cm4gLTE7IC8qIENvbXBvbmVudCBzdGFydHMgd2l0aCAnLicuICovCisKKwlpZiAocmVmbmFtZVswXSA9PSAnLicpIHsgLyogQ29tcG9uZW50IHN0YXJ0cyB3aXRoICcuJy4gKi8KKwkJaWYgKHNhbml0aXplZCkKKwkJCXNhbml0aXplZC0+YnVmW2NvbXBvbmVudF9zdGFydF0gPSAnLSc7CisJCWVsc2UKKwkJCXJldHVybiAtMTsKKwl9CiAJaWYgKGNwIC0gcmVmbmFtZSA+PSBMT0NLX1NVRkZJWF9MRU4gJiYKLQkgICAgIW1lbWNtcChjcCAtIExPQ0tfU1VGRklYX0xFTiwgTE9DS19TVUZGSVgsIExPQ0tfU1VGRklYX0xFTikpCi0JCXJldHVybiAtMTsgLyogUmVmbmFtZSBlbmRzIHdpdGggIi5sb2NrIi4gKi8KKwkgICAgIW1lbWNtcChjcCAtIExPQ0tfU1VGRklYX0xFTiwgTE9DS19TVUZGSVgsIExPQ0tfU1VGRklYX0xFTikpIHsKKwkJaWYgKCFzYW5pdGl6ZWQpCisJCQlyZXR1cm4gLTE7CisJCS8qIFJlZm5hbWUgZW5kcyB3aXRoICIubG9jayIuICovCisJCXdoaWxlIChzdHJidWZfc3RyaXBfc3VmZml4KHNhbml0aXplZCwgTE9DS19TVUZGSVgpKSB7CisJCQkvKiB0cnkgYWdhaW4gaW4gY2FzZSB3ZSBoYXZlIC5sb2NrLmxvY2sgKi8KKwkJfQorCX0KIAlyZXR1cm4gY3AgLSByZWZuYW1lOwogfQogCi1pbnQgY2hlY2tfcmVmbmFtZV9mb3JtYXQoY29uc3QgY2hhciAqcmVmbmFtZSwgaW50IGZsYWdzKQorc3RhdGljIGludCBjaGVja19vcl9zYW5pdGl6ZV9yZWZuYW1lKGNvbnN0IGNoYXIgKnJlZm5hbWUsIGludCBmbGFncywKKwkJCQkgICAgIHN0cnVjdCBzdHJidWYgKnNhbml0aXplZCkKIHsKIAlpbnQgY29tcG9uZW50X2xlbiwgY29tcG9uZW50X2NvdW50ID0gMDsKIAotCWlmICghc3RyY21wKHJlZm5hbWUsICJAIikpCisJaWYgKCFzdHJjbXAocmVmbmFtZSwgIkAiKSkgewogCQkvKiBSZWZuYW1lIGlzIGEgc2luZ2xlIGNoYXJhY3RlciAnQCcuICovCi0JCXJldHVybiAtMTsKKwkJaWYgKHNhbml0aXplZCkKKwkJCXN0cmJ1Zl9hZGRjaChzYW5pdGl6ZWQsICctJyk7CisJCWVsc2UKKwkJCXJldHVybiAtMTsKKwl9CiAKIAl3aGlsZSAoMSkgeworCQlpZiAoc2FuaXRpemVkICYmIHNhbml0aXplZC0+bGVuKQorCQkJc3RyYnVmX2NvbXBsZXRlKHNhbml0aXplZCwgJy8nKTsKKwogCQkvKiBXZSBhcmUgYXQgdGhlIHN0YXJ0IG9mIGEgcGF0aCBjb21wb25lbnQuICovCi0JCWNvbXBvbmVudF9sZW4gPSBjaGVja19yZWZuYW1lX2NvbXBvbmVudChyZWZuYW1lLCAmZmxhZ3MpOwotCQlpZiAoY29tcG9uZW50X2xlbiA8PSAwKQorCQljb21wb25lbnRfbGVuID0gY2hlY2tfcmVmbmFtZV9jb21wb25lbnQocmVmbmFtZSwgJmZsYWdzLAorCQkJCQkJCXNhbml0aXplZCk7CisJCWlmIChzYW5pdGl6ZWQgJiYgY29tcG9uZW50X2xlbiA9PSAwKQorCQkJOyAvKiBPSywgb21pdCBlbXB0eSBjb21wb25lbnQgKi8KKwkJZWxzZSBpZiAoY29tcG9uZW50X2xlbiA8PSAwKQogCQkJcmV0dXJuIC0xOwogCiAJCWNvbXBvbmVudF9jb3VudCsrOwpAQCAtMTM4LDEzICsxOTIsMjkgQEAKIAkJcmVmbmFtZSArPSBjb21wb25lbnRfbGVuICsgMTsKIAl9CiAKLQlpZiAocmVmbmFtZVtjb21wb25lbnRfbGVuIC0gMV0gPT0gJy4nKQotCQlyZXR1cm4gLTE7IC8qIFJlZm5hbWUgZW5kcyB3aXRoICcuJy4gKi8KKwlpZiAocmVmbmFtZVtjb21wb25lbnRfbGVuIC0gMV0gPT0gJy4nKSB7CisJCS8qIFJlZm5hbWUgZW5kcyB3aXRoICcuJy4gKi8KKwkJaWYgKHNhbml0aXplZCkKKwkJCTsgLyogb21pdCBlbmRpbmcgZG90ICovCisJCWVsc2UKKwkJCXJldHVybiAtMTsKKwl9CiAJaWYgKCEoZmxhZ3MgJiBSRUZOQU1FX0FMTE9XX09ORUxFVkVMKSAmJiBjb21wb25lbnRfY291bnQgPCAyKQogCQlyZXR1cm4gLTE7IC8qIFJlZm5hbWUgaGFzIG9ubHkgb25lIGNvbXBvbmVudC4gKi8KIAlyZXR1cm4gMDsKIH0KIAoraW50IGNoZWNrX3JlZm5hbWVfZm9ybWF0KGNvbnN0IGNoYXIgKnJlZm5hbWUsIGludCBmbGFncykKK3sKKwlyZXR1cm4gY2hlY2tfb3Jfc2FuaXRpemVfcmVmbmFtZShyZWZuYW1lLCBmbGFncywgTlVMTCk7Cit9CisKK3ZvaWQgc2FuaXRpemVfcmVmbmFtZV9jb21wb25lbnQoY29uc3QgY2hhciAqcmVmbmFtZSwgc3RydWN0IHN0cmJ1ZiAqb3V0KQoreworCWlmIChjaGVja19vcl9zYW5pdGl6ZV9yZWZuYW1lKHJlZm5hbWUsIFJFRk5BTUVfQUxMT1dfT05FTEVWRUwsIG91dCkpCisJCUJVRygic2FuaXRpemluZyByZWZuYW1lICclcycgY2hlY2sgcmV0dXJuZWQgZXJyb3IiLCByZWZuYW1lKTsKK30KKwogaW50IHJlZm5hbWVfaXNfc2FmZShjb25zdCBjaGFyICpyZWZuYW1lKQogewogCWNvbnN0IGNoYXIgKnJlc3Q7CkBAIC0xODgsNyArMjU4LDcgQEAKIHsKIAlpZiAoZmxhZ3MgJiBSRUZfSVNCUk9LRU4pCiAJCXJldHVybiAwOwotCWlmICghaGFzX3NoYTFfZmlsZShvaWQtPmhhc2gpKSB7CisJaWYgKCFoYXNfb2JqZWN0X2ZpbGUob2lkKSkgewogCQllcnJvcihfKCIlcyBkb2VzIG5vdCBwb2ludCB0byBhIHZhbGlkIG9iamVjdCEiKSwgcmVmbmFtZSk7CiAJCXJldHVybiAwOwogCX0KQEAgLTI0MSw5ICszMTEsMTQgQEAKIAlyZXR1cm4gcmVhZF9yZWZfZnVsbChyZWZuYW1lLCBSRVNPTFZFX1JFRl9SRUFESU5HLCBvaWQsIE5VTEwpOwogfQogCitzdGF0aWMgaW50IHJlZnNfcmVmX2V4aXN0cyhzdHJ1Y3QgcmVmX3N0b3JlICpyZWZzLCBjb25zdCBjaGFyICpyZWZuYW1lKQoreworCXJldHVybiAhIXJlZnNfcmVzb2x2ZV9yZWZfdW5zYWZlKHJlZnMsIHJlZm5hbWUsIFJFU09MVkVfUkVGX1JFQURJTkcsIE5VTEwsIE5VTEwpOworfQorCiBpbnQgcmVmX2V4aXN0cyhjb25zdCBjaGFyICpyZWZuYW1lKQogewotCXJldHVybiAhIXJlc29sdmVfcmVmX3Vuc2FmZShyZWZuYW1lLCBSRVNPTFZFX1JFRl9SRUFESU5HLCBOVUxMLCBOVUxMKTsKKwlyZXR1cm4gcmVmc19yZWZfZXhpc3RzKGdldF9tYWluX3JlZl9zdG9yZSh0aGVfcmVwb3NpdG9yeSksIHJlZm5hbWUpOwogfQogCiBzdGF0aWMgaW50IG1hdGNoX3JlZl9wYXR0ZXJuKGNvbnN0IGNoYXIgKnJlZm5hbWUsCkBAIC0zMDQsNyArMzc5LDcgQEAKIAogZW51bSBwZWVsX3N0YXR1cyBwZWVsX29iamVjdChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpuYW1lLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0Jc3RydWN0IG9iamVjdCAqbyA9IGxvb2t1cF91bmtub3duX29iamVjdChuYW1lLT5oYXNoKTsKKwlzdHJ1Y3Qgb2JqZWN0ICpvID0gbG9va3VwX3Vua25vd25fb2JqZWN0KG5hbWUpOwogCiAJaWYgKG8tPnR5cGUgPT0gT0JKX05PTkUpIHsKIAkJaW50IHR5cGUgPSBvaWRfb2JqZWN0X2luZm8odGhlX3JlcG9zaXRvcnksIG5hbWUsIE5VTEwpOwpAQCAtNTM0LDEwICs2MDksMTEgQEAKICAqIGxhdGVyIGZyZWUoKWluZykgaWYgdGhlIHN0cmluZyBwYXNzZWQgaW4gaXMgYSBtYWdpYyBzaG9ydC1oYW5kIGZvcm0KICAqIHRvIG5hbWUgYSBicmFuY2guCiAgKi8KLXN0YXRpYyBjaGFyICpzdWJzdGl0dXRlX2JyYW5jaF9uYW1lKGNvbnN0IGNoYXIgKipzdHJpbmcsIGludCAqbGVuKQorc3RhdGljIGNoYXIgKnN1YnN0aXR1dGVfYnJhbmNoX25hbWUoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJICAgIGNvbnN0IGNoYXIgKipzdHJpbmcsIGludCAqbGVuKQogewogCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7Ci0JaW50IHJldCA9IGludGVycHJldF9icmFuY2hfbmFtZSgqc3RyaW5nLCAqbGVuLCAmYnVmLCAwKTsKKwlpbnQgcmV0ID0gcmVwb19pbnRlcnByZXRfYnJhbmNoX25hbWUociwgKnN0cmluZywgKmxlbiwgJmJ1ZiwgMCk7CiAKIAlpZiAocmV0ID09ICpsZW4pIHsKIAkJc2l6ZV90IHNpemU7CkBAIC01NDksMTUgKzYyNSwyMiBAQAogCXJldHVybiBOVUxMOwogfQogCi1pbnQgZHdpbV9yZWYoY29uc3QgY2hhciAqc3RyLCBpbnQgbGVuLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGNoYXIgKipyZWYpCitpbnQgcmVwb19kd2ltX3JlZihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqc3RyLCBpbnQgbGVuLAorCQkgIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY2hhciAqKnJlZikKIHsKLQljaGFyICpsYXN0X2JyYW5jaCA9IHN1YnN0aXR1dGVfYnJhbmNoX25hbWUoJnN0ciwgJmxlbik7Ci0JaW50ICAgcmVmc19mb3VuZCAgPSBleHBhbmRfcmVmKHN0ciwgbGVuLCBvaWQsIHJlZik7CisJY2hhciAqbGFzdF9icmFuY2ggPSBzdWJzdGl0dXRlX2JyYW5jaF9uYW1lKHIsICZzdHIsICZsZW4pOworCWludCAgIHJlZnNfZm91bmQgID0gZXhwYW5kX3JlZihyLCBzdHIsIGxlbiwgb2lkLCByZWYpOwogCWZyZWUobGFzdF9icmFuY2gpOwogCXJldHVybiByZWZzX2ZvdW5kOwogfQogCi1pbnQgZXhwYW5kX3JlZihjb25zdCBjaGFyICpzdHIsIGludCBsZW4sIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY2hhciAqKnJlZikKK2ludCBkd2ltX3JlZihjb25zdCBjaGFyICpzdHIsIGludCBsZW4sIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY2hhciAqKnJlZikKK3sKKwlyZXR1cm4gcmVwb19kd2ltX3JlZih0aGVfcmVwb3NpdG9yeSwgc3RyLCBsZW4sIG9pZCwgcmVmKTsKK30KKworaW50IGV4cGFuZF9yZWYoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIGNvbnN0IGNoYXIgKnN0ciwgaW50IGxlbiwKKwkgICAgICAgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBjaGFyICoqcmVmKQogewogCWNvbnN0IGNoYXIgKipwLCAqcjsKIAlpbnQgcmVmc19mb3VuZCA9IDA7CkBAIC01NzIsOCArNjU1LDkgQEAKIAkJdGhpc19yZXN1bHQgPSByZWZzX2ZvdW5kID8gJm9pZF9mcm9tX3JlZiA6IG9pZDsKIAkJc3RyYnVmX3Jlc2V0KCZmdWxscmVmKTsKIAkJc3RyYnVmX2FkZGYoJmZ1bGxyZWYsICpwLCBsZW4sIHN0cik7Ci0JCXIgPSByZXNvbHZlX3JlZl91bnNhZmUoZnVsbHJlZi5idWYsIFJFU09MVkVfUkVGX1JFQURJTkcsCi0JCQkJICAgICAgIHRoaXNfcmVzdWx0LCAmZmxhZyk7CisJCXIgPSByZWZzX3Jlc29sdmVfcmVmX3Vuc2FmZShnZXRfbWFpbl9yZWZfc3RvcmUocmVwbyksCisJCQkJCSAgICBmdWxscmVmLmJ1ZiwgUkVTT0xWRV9SRUZfUkVBRElORywKKwkJCQkJICAgIHRoaXNfcmVzdWx0LCAmZmxhZyk7CiAJCWlmIChyKSB7CiAJCQlpZiAoIXJlZnNfZm91bmQrKykKIAkJCQkqcmVmID0geHN0cmR1cChyKTsKQEAgLTU4OSw5ICs2NzMsMTEgQEAKIAlyZXR1cm4gcmVmc19mb3VuZDsKIH0KIAotaW50IGR3aW1fbG9nKGNvbnN0IGNoYXIgKnN0ciwgaW50IGxlbiwgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBjaGFyICoqbG9nKQoraW50IHJlcG9fZHdpbV9sb2coc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKnN0ciwgaW50IGxlbiwKKwkJICBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGNoYXIgKipsb2cpCiB7Ci0JY2hhciAqbGFzdF9icmFuY2ggPSBzdWJzdGl0dXRlX2JyYW5jaF9uYW1lKCZzdHIsICZsZW4pOworCXN0cnVjdCByZWZfc3RvcmUgKnJlZnMgPSBnZXRfbWFpbl9yZWZfc3RvcmUocik7CisJY2hhciAqbGFzdF9icmFuY2ggPSBzdWJzdGl0dXRlX2JyYW5jaF9uYW1lKHIsICZzdHIsICZsZW4pOwogCWNvbnN0IGNoYXIgKipwOwogCWludCBsb2dzX2ZvdW5kID0gMDsKIAlzdHJ1Y3Qgc3RyYnVmIHBhdGggPSBTVFJCVUZfSU5JVDsKQEAgLTYwMywxMyArNjg5LDE1IEBACiAKIAkJc3RyYnVmX3Jlc2V0KCZwYXRoKTsKIAkJc3RyYnVmX2FkZGYoJnBhdGgsICpwLCBsZW4sIHN0cik7Ci0JCXJlZiA9IHJlc29sdmVfcmVmX3Vuc2FmZShwYXRoLmJ1ZiwgUkVTT0xWRV9SRUZfUkVBRElORywKLQkJCQkJICZoYXNoLCBOVUxMKTsKKwkJcmVmID0gcmVmc19yZXNvbHZlX3JlZl91bnNhZmUocmVmcywgcGF0aC5idWYsCisJCQkJCSAgICAgIFJFU09MVkVfUkVGX1JFQURJTkcsCisJCQkJCSAgICAgICZoYXNoLCBOVUxMKTsKIAkJaWYgKCFyZWYpCiAJCQljb250aW51ZTsKLQkJaWYgKHJlZmxvZ19leGlzdHMocGF0aC5idWYpKQorCQlpZiAocmVmc19yZWZsb2dfZXhpc3RzKHJlZnMsIHBhdGguYnVmKSkKIAkJCWl0ID0gcGF0aC5idWY7Ci0JCWVsc2UgaWYgKHN0cmNtcChyZWYsIHBhdGguYnVmKSAmJiByZWZsb2dfZXhpc3RzKHJlZikpCisJCWVsc2UgaWYgKHN0cmNtcChyZWYsIHBhdGguYnVmKSAmJgorCQkJIHJlZnNfcmVmbG9nX2V4aXN0cyhyZWZzLCByZWYpKQogCQkJaXQgPSByZWY7CiAJCWVsc2UKIAkJCWNvbnRpbnVlOwpAQCAtNjI1LDYgKzcxMywxMSBAQAogCXJldHVybiBsb2dzX2ZvdW5kOwogfQogCitpbnQgZHdpbV9sb2coY29uc3QgY2hhciAqc3RyLCBpbnQgbGVuLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGNoYXIgKipsb2cpCit7CisJcmV0dXJuIHJlcG9fZHdpbV9sb2codGhlX3JlcG9zaXRvcnksIHN0ciwgbGVuLCBvaWQsIGxvZyk7Cit9CisKIHN0YXRpYyBpbnQgaXNfcGVyX3dvcmt0cmVlX3JlZihjb25zdCBjaGFyICpyZWZuYW1lKQogewogCXJldHVybiAhc3RyY21wKHJlZm5hbWUsICJIRUFEIikgfHwKQEAgLTk0NCw3ICsxMDM3LDggQEAKIAlyZXR1cm4gMTsKIH0KIAotaW50IHJlYWRfcmVmX2F0KGNvbnN0IGNoYXIgKnJlZm5hbWUsIHVuc2lnbmVkIGludCBmbGFncywgdGltZXN0YW1wX3QgYXRfdGltZSwgaW50IGNudCwKK2ludCByZWFkX3JlZl9hdChzdHJ1Y3QgcmVmX3N0b3JlICpyZWZzLCBjb25zdCBjaGFyICpyZWZuYW1lLAorCQl1bnNpZ25lZCBpbnQgZmxhZ3MsIHRpbWVzdGFtcF90IGF0X3RpbWUsIGludCBjbnQsCiAJCXN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY2hhciAqKm1zZywKIAkJdGltZXN0YW1wX3QgKmN1dG9mZl90aW1lLCBpbnQgKmN1dG9mZl90eiwgaW50ICpjdXRvZmZfY250KQogewpAQCAtOTYwLDcgKzEwNTQsNyBAQAogCWNiLmN1dG9mZl9jbnQgPSBjdXRvZmZfY250OwogCWNiLm9pZCA9IG9pZDsKIAotCWZvcl9lYWNoX3JlZmxvZ19lbnRfcmV2ZXJzZShyZWZuYW1lLCByZWFkX3JlZl9hdF9lbnQsICZjYik7CisJcmVmc19mb3JfZWFjaF9yZWZsb2dfZW50X3JldmVyc2UocmVmcywgcmVmbmFtZSwgcmVhZF9yZWZfYXRfZW50LCAmY2IpOwogCiAJaWYgKCFjYi5yZWNjbnQpIHsKIAkJaWYgKGZsYWdzICYgR0VUX09JRF9RVUlFVExZKQpAQCAtOTcxLDcgKzEwNjUsNyBAQAogCWlmIChjYi5mb3VuZF9pdCkKIAkJcmV0dXJuIDA7CiAKLQlmb3JfZWFjaF9yZWZsb2dfZW50KHJlZm5hbWUsIHJlYWRfcmVmX2F0X2VudF9vbGRlc3QsICZjYik7CisJcmVmc19mb3JfZWFjaF9yZWZsb2dfZW50KHJlZnMsIHJlZm5hbWUsIHJlYWRfcmVmX2F0X2VudF9vbGRlc3QsICZjYik7CiAKIAlyZXR1cm4gMTsKIH0KQEAgLTExNjQsNyArMTI1OCw4IEBACiAJCQkgICAgICAgb2xkX29pZCwgZmxhZ3MsIG9uZXJyKTsKIH0KIAotY2hhciAqc2hvcnRlbl91bmFtYmlndW91c19yZWYoY29uc3QgY2hhciAqcmVmbmFtZSwgaW50IHN0cmljdCkKK2NoYXIgKnJlZnNfc2hvcnRlbl91bmFtYmlndW91c19yZWYoc3RydWN0IHJlZl9zdG9yZSAqcmVmcywKKwkJCQkgICBjb25zdCBjaGFyICpyZWZuYW1lLCBpbnQgc3RyaWN0KQogewogCWludCBpOwogCXN0YXRpYyBjaGFyICoqc2NhbmZfZm10czsKQEAgLTEyNDIsNyArMTMzNyw3IEBACiAJCQlzdHJidWZfcmVzZXQoJnJlc29sdmVkX2J1Zik7CiAJCQlzdHJidWZfYWRkZigmcmVzb2x2ZWRfYnVmLCBydWxlLAogCQkJCSAgICBzaG9ydF9uYW1lX2xlbiwgc2hvcnRfbmFtZSk7Ci0JCQlpZiAocmVmX2V4aXN0cyhyZXNvbHZlZF9idWYuYnVmKSkKKwkJCWlmIChyZWZzX3JlZl9leGlzdHMocmVmcywgcmVzb2x2ZWRfYnVmLmJ1ZikpCiAJCQkJYnJlYWs7CiAJCX0KIApAQCAtMTI2MSw2ICsxMzU2LDEyIEBACiAJcmV0dXJuIHhzdHJkdXAocmVmbmFtZSk7CiB9CiAKK2NoYXIgKnNob3J0ZW5fdW5hbWJpZ3VvdXNfcmVmKGNvbnN0IGNoYXIgKnJlZm5hbWUsIGludCBzdHJpY3QpCit7CisJcmV0dXJuIHJlZnNfc2hvcnRlbl91bmFtYmlndW91c19yZWYoZ2V0X21haW5fcmVmX3N0b3JlKHRoZV9yZXBvc2l0b3J5KSwKKwkJCQkJICAgIHJlZm5hbWUsIHN0cmljdCk7Cit9CisKIHN0YXRpYyBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmhpZGVfcmVmczsKIAogaW50IHBhcnNlX2hpZGVfcmVmc19jb25maWcoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSwgY29uc3QgY2hhciAqc2VjdGlvbikKQEAgLTE2NzEsNyArMTc3Miw3IEBACiAKIHN0cnVjdCByZWZfc3RvcmVfaGFzaF9lbnRyeQogewotCXN0cnVjdCBoYXNobWFwX2VudHJ5IGVudDsgLyogbXVzdCBiZSB0aGUgZmlyc3QgbWVtYmVyISAqLworCXN0cnVjdCBoYXNobWFwX2VudHJ5IGVudDsKIAogCXN0cnVjdCByZWZfc3RvcmUgKnJlZnM7CiAKQEAgLTE2ODAsMTEgKzE3ODEsMTYgQEAKIH07CiAKIHN0YXRpYyBpbnQgcmVmX3N0b3JlX2hhc2hfY21wKGNvbnN0IHZvaWQgKnVudXNlZF9jbXBfZGF0YSwKLQkJCSAgICAgIGNvbnN0IHZvaWQgKmVudHJ5LCBjb25zdCB2b2lkICplbnRyeV9vcl9rZXksCisJCQkgICAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJCSAgICAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplbnRyeV9vcl9rZXksCiAJCQkgICAgICBjb25zdCB2b2lkICprZXlkYXRhKQogewotCWNvbnN0IHN0cnVjdCByZWZfc3RvcmVfaGFzaF9lbnRyeSAqZTEgPSBlbnRyeSwgKmUyID0gZW50cnlfb3Jfa2V5OwotCWNvbnN0IGNoYXIgKm5hbWUgPSBrZXlkYXRhID8ga2V5ZGF0YSA6IGUyLT5uYW1lOworCWNvbnN0IHN0cnVjdCByZWZfc3RvcmVfaGFzaF9lbnRyeSAqZTEsICplMjsKKwljb25zdCBjaGFyICpuYW1lOworCisJZTEgPSBjb250YWluZXJfb2YoZXB0ciwgY29uc3Qgc3RydWN0IHJlZl9zdG9yZV9oYXNoX2VudHJ5LCBlbnQpOworCWUyID0gY29udGFpbmVyX29mKGVudHJ5X29yX2tleSwgY29uc3Qgc3RydWN0IHJlZl9zdG9yZV9oYXNoX2VudHJ5LCBlbnQpOworCW5hbWUgPSBrZXlkYXRhID8ga2V5ZGF0YSA6IGUyLT5uYW1lOwogCiAJcmV0dXJuIHN0cmNtcChlMS0+bmFtZSwgbmFtZSk7CiB9CkBAIC0xNjk1LDcgKzE4MDEsNyBAQAogCXN0cnVjdCByZWZfc3RvcmVfaGFzaF9lbnRyeSAqZW50cnk7CiAKIAlGTEVYX0FMTE9DX1NUUihlbnRyeSwgbmFtZSwgbmFtZSk7Ci0JaGFzaG1hcF9lbnRyeV9pbml0KGVudHJ5LCBzdHJoYXNoKG5hbWUpKTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmVudHJ5LT5lbnQsIHN0cmhhc2gobmFtZSkpOwogCWVudHJ5LT5yZWZzID0gcmVmczsKIAlyZXR1cm4gZW50cnk7CiB9CkBAIC0xNzE0LDEyICsxODIwLDE1IEBACiAJCQkJCSAgICAgIGNvbnN0IGNoYXIgKm5hbWUpCiB7CiAJc3RydWN0IHJlZl9zdG9yZV9oYXNoX2VudHJ5ICplbnRyeTsKKwl1bnNpZ25lZCBpbnQgaGFzaDsKIAogCWlmICghbWFwLT50YWJsZXNpemUpCiAJCS8qIEl0J3MgaW5pdGlhbGl6ZWQgb24gZGVtYW5kIGluIHJlZ2lzdGVyX3JlZl9zdG9yZSgpLiAqLwogCQlyZXR1cm4gTlVMTDsKIAotCWVudHJ5ID0gaGFzaG1hcF9nZXRfZnJvbV9oYXNoKG1hcCwgc3RyaGFzaChuYW1lKSwgbmFtZSk7CisJaGFzaCA9IHN0cmhhc2gobmFtZSk7CisJZW50cnkgPSBoYXNobWFwX2dldF9lbnRyeV9mcm9tX2hhc2gobWFwLCBoYXNoLCBuYW1lLAorCQkJCQlzdHJ1Y3QgcmVmX3N0b3JlX2hhc2hfZW50cnksIGVudCk7CiAJcmV0dXJuIGVudHJ5ID8gZW50cnktPnJlZnMgOiBOVUxMOwogfQogCkBAIC0xNzYyLDEwICsxODcxLDEzIEBACiAJCQkJICAgc3RydWN0IHJlZl9zdG9yZSAqcmVmcywKIAkJCQkgICBjb25zdCBjaGFyICpuYW1lKQogeworCXN0cnVjdCByZWZfc3RvcmVfaGFzaF9lbnRyeSAqZW50cnk7CisKIAlpZiAoIW1hcC0+dGFibGVzaXplKQogCQloYXNobWFwX2luaXQobWFwLCByZWZfc3RvcmVfaGFzaF9jbXAsIE5VTEwsIDApOwogCi0JaWYgKGhhc2htYXBfcHV0KG1hcCwgYWxsb2NfcmVmX3N0b3JlX2hhc2hfZW50cnkobmFtZSwgcmVmcykpKQorCWVudHJ5ID0gYWxsb2NfcmVmX3N0b3JlX2hhc2hfZW50cnkobmFtZSwgcmVmcyk7CisJaWYgKGhhc2htYXBfcHV0KG1hcCwgJmVudHJ5LT5lbnQpKQogCQlCVUcoIiVzIHJlZl9zdG9yZSAnJXMnIGluaXRpYWxpemVkIHR3aWNlIiwgdHlwZSwgbmFtZSk7CiB9CiAKZGlmZiAtLWdpdCBhL3JlZnMuaCBiL3JlZnMuaAppbmRleCAzMDhmYTFmLi41NDUwMjljIDEwMDY0NAotLS0gYS9yZWZzLmgKKysrIGIvcmVmcy5oCkBAIC0xMTEsNyArMTExLDcgQEAKIAogaW50IGlzX2JyYW5jaChjb25zdCBjaGFyICpyZWZuYW1lKTsKIAotZXh0ZXJuIGludCByZWZzX2luaXRfZGIoc3RydWN0IHN0cmJ1ZiAqZXJyKTsKK2ludCByZWZzX2luaXRfZGIoc3RydWN0IHN0cmJ1ZiAqZXJyKTsKIAogLyoKICAqIElmIHJlZm5hbWUgaXMgYSBub24tc3ltYm9saWMgcmVmZXJlbmNlIHRoYXQgcmVmZXJzIHRvIGEgdGFnIG9iamVjdCwKQEAgLTE0OCw3ICsxNDgsOSBAQAogc3RydWN0IGFyZ3ZfYXJyYXk7CiB2b2lkIGV4cGFuZF9yZWZfcHJlZml4KHN0cnVjdCBhcmd2X2FycmF5ICpwcmVmaXhlcywgY29uc3QgY2hhciAqcHJlZml4KTsKIAotaW50IGV4cGFuZF9yZWYoY29uc3QgY2hhciAqc3RyLCBpbnQgbGVuLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGNoYXIgKipyZWYpOworaW50IGV4cGFuZF9yZWYoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKnN0ciwgaW50IGxlbiwgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBjaGFyICoqcmVmKTsKK2ludCByZXBvX2R3aW1fcmVmKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpzdHIsIGludCBsZW4sIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY2hhciAqKnJlZik7CitpbnQgcmVwb19kd2ltX2xvZyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqc3RyLCBpbnQgbGVuLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGNoYXIgKipyZWYpOwogaW50IGR3aW1fcmVmKGNvbnN0IGNoYXIgKnN0ciwgaW50IGxlbiwgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBjaGFyICoqcmVmKTsKIGludCBkd2ltX2xvZyhjb25zdCBjaGFyICpzdHIsIGludCBsZW4sIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY2hhciAqKnJlZik7CiAKQEAgLTMwOCwxOSArMzEwLDM1IEBACiBpbnQgcmVmc19mb3JfZWFjaF9yZW1vdGVfcmVmKHN0cnVjdCByZWZfc3RvcmUgKnJlZnMsCiAJCQkgICAgIGVhY2hfcmVmX2ZuIGZuLCB2b2lkICpjYl9kYXRhKTsKIAorLyoganVzdCBpdGVyYXRlcyB0aGUgaGVhZCByZWYuICovCiBpbnQgaGVhZF9yZWYoZWFjaF9yZWZfZm4gZm4sIHZvaWQgKmNiX2RhdGEpOworCisvKiBpdGVyYXRlcyBhbGwgcmVmcy4gKi8KIGludCBmb3JfZWFjaF9yZWYoZWFjaF9yZWZfZm4gZm4sIHZvaWQgKmNiX2RhdGEpOworCisvKioKKyAqIGl0ZXJhdGVzIGFsbCByZWZzIHdoaWNoIGhhdmUgYSBkZWZpbmVkIHByZWZpeCBhbmQgc3RyaXBzIHRoYXQgcHJlZml4IGZyb20KKyAqIHRoZSBwYXNzZWQgdmFyaWFibGUgcmVmbmFtZS4KKyAqLwogaW50IGZvcl9lYWNoX3JlZl9pbihjb25zdCBjaGFyICpwcmVmaXgsIGVhY2hfcmVmX2ZuIGZuLCB2b2lkICpjYl9kYXRhKTsKKwogaW50IHJlZnNfZm9yX2VhY2hfZnVsbHJlZl9pbihzdHJ1Y3QgcmVmX3N0b3JlICpyZWZzLCBjb25zdCBjaGFyICpwcmVmaXgsCiAJCQkgICAgIGVhY2hfcmVmX2ZuIGZuLCB2b2lkICpjYl9kYXRhLAogCQkJICAgICB1bnNpZ25lZCBpbnQgYnJva2VuKTsKIGludCBmb3JfZWFjaF9mdWxscmVmX2luKGNvbnN0IGNoYXIgKnByZWZpeCwgZWFjaF9yZWZfZm4gZm4sIHZvaWQgKmNiX2RhdGEsCiAJCQl1bnNpZ25lZCBpbnQgYnJva2VuKTsKKworLyoqCisgKiBpdGVyYXRlIHJlZnMgZnJvbSB0aGUgcmVzcGVjdGl2ZSBhcmVhLgorICovCiBpbnQgZm9yX2VhY2hfdGFnX3JlZihlYWNoX3JlZl9mbiBmbiwgdm9pZCAqY2JfZGF0YSk7CiBpbnQgZm9yX2VhY2hfYnJhbmNoX3JlZihlYWNoX3JlZl9mbiBmbiwgdm9pZCAqY2JfZGF0YSk7CiBpbnQgZm9yX2VhY2hfcmVtb3RlX3JlZihlYWNoX3JlZl9mbiBmbiwgdm9pZCAqY2JfZGF0YSk7CiBpbnQgZm9yX2VhY2hfcmVwbGFjZV9yZWYoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGVhY2hfcmVwb19yZWZfZm4gZm4sIHZvaWQgKmNiX2RhdGEpOworCisvKiBpdGVyYXRlcyBhbGwgcmVmcyB0aGF0IG1hdGNoIHRoZSBzcGVjaWZpZWQgZ2xvYiBwYXR0ZXJuLiAqLwogaW50IGZvcl9lYWNoX2dsb2JfcmVmKGVhY2hfcmVmX2ZuIGZuLCBjb25zdCBjaGFyICpwYXR0ZXJuLCB2b2lkICpjYl9kYXRhKTsKKwogaW50IGZvcl9lYWNoX2dsb2JfcmVmX2luKGVhY2hfcmVmX2ZuIGZuLCBjb25zdCBjaGFyICpwYXR0ZXJuLAogCQkJIGNvbnN0IGNoYXIgKnByZWZpeCwgdm9pZCAqY2JfZGF0YSk7CiAKQEAgLTM4Niw3ICs0MDQsOCBAQAogaW50IHNhZmVfY3JlYXRlX3JlZmxvZyhjb25zdCBjaGFyICpyZWZuYW1lLCBpbnQgZm9yY2VfY3JlYXRlLCBzdHJ1Y3Qgc3RyYnVmICplcnIpOwogCiAvKiogUmVhZHMgbG9nIGZvciB0aGUgdmFsdWUgb2YgcmVmIGR1cmluZyBhdF90aW1lLiAqKi8KLWludCByZWFkX3JlZl9hdChjb25zdCBjaGFyICpyZWZuYW1lLCB1bnNpZ25lZCBpbnQgZmxhZ3MsCitpbnQgcmVhZF9yZWZfYXQoc3RydWN0IHJlZl9zdG9yZSAqcmVmcywKKwkJY29uc3QgY2hhciAqcmVmbmFtZSwgdW5zaWduZWQgaW50IGZsYWdzLAogCQl0aW1lc3RhbXBfdCBhdF90aW1lLCBpbnQgY250LAogCQlzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGNoYXIgKiptc2csCiAJCXRpbWVzdGFtcF90ICpjdXRvZmZfdGltZSwgaW50ICpjdXRvZmZfdHosIGludCAqY3V0b2ZmX2NudCk7CkBAIC00NjAsOCArNDc5LDE2IEBACiAgKi8KIGludCBjaGVja19yZWZuYW1lX2Zvcm1hdChjb25zdCBjaGFyICpyZWZuYW1lLCBpbnQgZmxhZ3MpOwogCisvKgorICogQXBwbHkgdGhlIHJ1bGVzIGZyb20gY2hlY2tfcmVmbmFtZV9mb3JtYXQsIGJ1dCBtdXRhdGUgdGhlIHJlc3VsdCB1bnRpbCBpdAorICogaXMgYWNjZXB0YWJsZSwgYW5kIHBsYWNlIHRoZSByZXN1bHQgaW4gIm91dCIuCisgKi8KK3ZvaWQgc2FuaXRpemVfcmVmbmFtZV9jb21wb25lbnQoY29uc3QgY2hhciAqcmVmbmFtZSwgc3RydWN0IHN0cmJ1ZiAqb3V0KTsKKwogY29uc3QgY2hhciAqcHJldHRpZnlfcmVmbmFtZShjb25zdCBjaGFyICpyZWZuYW1lKTsKIAorY2hhciAqcmVmc19zaG9ydGVuX3VuYW1iaWd1b3VzX3JlZihzdHJ1Y3QgcmVmX3N0b3JlICpyZWZzLAorCQkJCSAgIGNvbnN0IGNoYXIgKnJlZm5hbWUsIGludCBzdHJpY3QpOwogY2hhciAqc2hvcnRlbl91bmFtYmlndW91c19yZWYoY29uc3QgY2hhciAqcmVmbmFtZSwgaW50IHN0cmljdCk7CiAKIC8qKiByZW5hbWUgcmVmLCByZXR1cm4gMCBvbiBzdWNjZXNzICoqLwpAQCAtNzgwLDYgKzgwNyw0MSBAQAogaW50IHJlZl9zdG9yYWdlX2JhY2tlbmRfZXhpc3RzKGNvbnN0IGNoYXIgKm5hbWUpOwogCiBzdHJ1Y3QgcmVmX3N0b3JlICpnZXRfbWFpbl9yZWZfc3RvcmUoc3RydWN0IHJlcG9zaXRvcnkgKnIpOworCisvKioKKyAqIFN1Ym1vZHVsZXMKKyAqIC0tLS0tLS0tLS0KKyAqCisgKiBJZiB5b3Ugd2FudCB0byBpdGVyYXRlIHRoZSByZWZzIG9mIGEgc3VibW9kdWxlIHlvdSBmaXJzdCBuZWVkIHRvIGFkZCB0aGUKKyAqIHN1Ym1vZHVsZXMgb2JqZWN0IGRhdGFiYXNlLiBZb3UgY2FuIGRvIHRoaXMgYnkgYSBjb2RlLXNuaXBwZXQgbGlrZQorICogdGhpczoKKyAqCisgKiAJY29uc3QgY2hhciAqcGF0aCA9ICJwYXRoL3RvL3N1Ym1vZHVsZSIKKyAqIAlpZiAoYWRkX3N1Ym1vZHVsZV9vZGIocGF0aCkpCisgKiAJCWRpZSgiRXJyb3Igc3VibW9kdWxlICclcycgbm90IHBvcHVsYXRlZC4iLCBwYXRoKTsKKyAqCisgKiBgYWRkX3N1Ym1vZHVsZV9vZGIoKWAgd2lsbCByZXR1cm4gemVybyBvbiBzdWNjZXNzLiBJZiB5b3UKKyAqIGRvIG5vdCBkbyB0aGlzIHlvdSB3aWxsIGdldCBhbiBlcnJvciBmb3IgZWFjaCByZWYgdGhhdCBpdCBkb2VzIG5vdCBwb2ludAorICogdG8gYSB2YWxpZCBvYmplY3QuCisgKgorICogTm90ZTogQXMgYSBzaWRlLWVmZmVjdCBvZiB0aGlzIHlvdSBjYW5ub3Qgc2FmZWx5IGFzc3VtZSB0aGF0IGFsbAorICogb2JqZWN0cyB5b3UgbG9va3VwIGFyZSBhdmFpbGFibGUgaW4gc3VwZXJwcm9qZWN0LiBBbGwgc3VibW9kdWxlIG9iamVjdHMKKyAqIHdpbGwgYmUgYXZhaWxhYmxlIHRoZSBzYW1lIHdheSBhcyB0aGUgc3VwZXJwcm9qZWN0cyBvYmplY3RzLgorICoKKyAqIEV4YW1wbGU6CisgKiAtLS0tLS0tLQorICoKKyAqIC0tLS0KKyAqIHN0YXRpYyBpbnQgaGFuZGxlX3JlbW90ZV9yZWYoY29uc3QgY2hhciAqcmVmbmFtZSwKKyAqIAkJY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwgaW50IGZsYWdzLCB2b2lkICpjYl9kYXRhKQorICogeworICogCXN0cnVjdCBzdHJidWYgKm91dHB1dCA9IGNiX2RhdGE7CisgKiAJc3RyYnVmX2FkZGYob3V0cHV0LCAiJXNcbiIsIHJlZm5hbWUpOworICogCXJldHVybiAwOworICogfQorICoKKyAqLworCiAvKgogICogUmV0dXJuIHRoZSByZWZfc3RvcmUgaW5zdGFuY2UgZm9yIHRoZSBzcGVjaWZpZWQgc3VibW9kdWxlLiBGb3IgdGhlCiAgKiBtYWluIHJlcG9zaXRvcnksIHVzZSBzdWJtb2R1bGU9PU5VTEw7IHN1Y2ggYSBjYWxsIGNhbm5vdCBmYWlsLiBGb3IKZGlmZiAtLWdpdCBhL3JlZnMvZmlsZXMtYmFja2VuZC5jIGIvcmVmcy9maWxlcy1iYWNrZW5kLmMKaW5kZXggZGQ4YWJlOS4uNTYxYzMzYSAxMDA2NDQKLS0tIGEvcmVmcy9maWxlcy1iYWNrZW5kLmMKKysrIGIvcmVmcy9maWxlcy1iYWNrZW5kLmMKQEAgLTIxNSw2ICsyMTUsMzMgQEAKIH0KIAogLyoKKyAqIE1hbnVhbGx5IGFkZCByZWZzL2Jpc2VjdCwgcmVmcy9yZXdyaXR0ZW4gYW5kIHJlZnMvd29ya3RyZWUsIHdoaWNoLCBiZWluZworICogcGVyLXdvcmt0cmVlLCBtaWdodCBub3QgYXBwZWFyIGluIHRoZSBkaXJlY3RvcnkgbGlzdGluZyBmb3IKKyAqIHJlZnMvIGluIHRoZSBtYWluIHJlcG8uCisgKi8KK3N0YXRpYyB2b2lkIGFkZF9wZXJfd29ya3RyZWVfZW50cmllc190b19kaXIoc3RydWN0IHJlZl9kaXIgKmRpciwgY29uc3QgY2hhciAqZGlybmFtZSkKK3sKKwljb25zdCBjaGFyICpwcmVmaXhlc1tdID0geyAicmVmcy9iaXNlY3QvIiwgInJlZnMvd29ya3RyZWUvIiwgInJlZnMvcmV3cml0dGVuLyIgfTsKKwlpbnQgaXA7CisKKwlpZiAoc3RyY21wKGRpcm5hbWUsICJyZWZzLyIpKQorCQlyZXR1cm47CisKKwlmb3IgKGlwID0gMDsgaXAgPCBBUlJBWV9TSVpFKHByZWZpeGVzKTsgaXArKykgeworCQljb25zdCBjaGFyICpwcmVmaXggPSBwcmVmaXhlc1tpcF07CisJCWludCBwcmVmaXhfbGVuID0gc3RybGVuKHByZWZpeCk7CisJCXN0cnVjdCByZWZfZW50cnkgKmNoaWxkX2VudHJ5OworCQlpbnQgcG9zOworCisJCXBvcyA9IHNlYXJjaF9yZWZfZGlyKGRpciwgcHJlZml4LCBwcmVmaXhfbGVuKTsKKwkJaWYgKHBvcyA+PSAwKQorCQkJY29udGludWU7CisJCWNoaWxkX2VudHJ5ID0gY3JlYXRlX2Rpcl9lbnRyeShkaXItPmNhY2hlLCBwcmVmaXgsIHByZWZpeF9sZW4sIDEpOworCQlhZGRfZW50cnlfdG9fZGlyKGRpciwgY2hpbGRfZW50cnkpOworCX0KK30KKworLyoKICAqIFJlYWQgdGhlIGxvb3NlIHJlZmVyZW5jZXMgZnJvbSB0aGUgbmFtZXNwYWNlIGRpcm5hbWUgaW50byBkaXIKICAqICh3aXRob3V0IHJlY3Vyc2luZykuICBkaXJuYW1lIG11c3QgZW5kIHdpdGggJy8nLiAgZGlyIG11c3QgYmUgdGhlCiAgKiBkaXJlY3RvcnkgZW50cnkgY29ycmVzcG9uZGluZyB0byBkaXJuYW1lLgpAQCAtMjk3LDI4ICszMjQsNyBAQAogCXN0cmJ1Zl9yZWxlYXNlKCZwYXRoKTsKIAljbG9zZWRpcihkKTsKIAotCS8qCi0JICogTWFudWFsbHkgYWRkIHJlZnMvYmlzZWN0IGFuZCByZWZzL3dvcmt0cmVlLCB3aGljaCwgYmVpbmcKLQkgKiBwZXItd29ya3RyZWUsIG1pZ2h0IG5vdCBhcHBlYXIgaW4gdGhlIGRpcmVjdG9yeSBsaXN0aW5nIGZvcgotCSAqIHJlZnMvIGluIHRoZSBtYWluIHJlcG8uCi0JICovCi0JaWYgKCFzdHJjbXAoZGlybmFtZSwgInJlZnMvIikpIHsKLQkJaW50IHBvcyA9IHNlYXJjaF9yZWZfZGlyKGRpciwgInJlZnMvYmlzZWN0LyIsIDEyKTsKLQotCQlpZiAocG9zIDwgMCkgewotCQkJc3RydWN0IHJlZl9lbnRyeSAqY2hpbGRfZW50cnkgPSBjcmVhdGVfZGlyX2VudHJ5KAotCQkJCQlkaXItPmNhY2hlLCAicmVmcy9iaXNlY3QvIiwgMTIsIDEpOwotCQkJYWRkX2VudHJ5X3RvX2RpcihkaXIsIGNoaWxkX2VudHJ5KTsKLQkJfQotCi0JCXBvcyA9IHNlYXJjaF9yZWZfZGlyKGRpciwgInJlZnMvd29ya3RyZWUvIiwgMTEpOwotCi0JCWlmIChwb3MgPCAwKSB7Ci0JCQlzdHJ1Y3QgcmVmX2VudHJ5ICpjaGlsZF9lbnRyeSA9IGNyZWF0ZV9kaXJfZW50cnkoCi0JCQkJCWRpci0+Y2FjaGUsICJyZWZzL3dvcmt0cmVlLyIsIDExLCAxKTsKLQkJCWFkZF9lbnRyeV90b19kaXIoZGlyLCBjaGlsZF9lbnRyeSk7Ci0JCX0KLQl9CisJYWRkX3Blcl93b3JrdHJlZV9lbnRyaWVzX3RvX2RpcihkaXIsIGRpcm5hbWUpOwogfQogCiBzdGF0aWMgc3RydWN0IHJlZl9jYWNoZSAqZ2V0X2xvb3NlX3JlZl9jYWNoZShzdHJ1Y3QgZmlsZXNfcmVmX3N0b3JlICpyZWZzKQpAQCAtNDU5LDggKzQ2NSw3IEBACiAJY2xvc2UoZmQpOwogCXN0cmJ1Zl9ydHJpbSgmc2JfY29udGVudHMpOwogCWJ1ZiA9IHNiX2NvbnRlbnRzLmJ1ZjsKLQlpZiAoc3RhcnRzX3dpdGgoYnVmLCAicmVmOiIpKSB7Ci0JCWJ1ZiArPSA0OworCWlmIChza2lwX3ByZWZpeChidWYsICJyZWY6IiwgJmJ1ZikpIHsKIAkJd2hpbGUgKGlzc3BhY2UoKmJ1ZikpCiAJCQlidWYrKzsKIApAQCAtMTMyMSw3ICsxMzI2LDcgQEAKIHsKIAlzdHJ1Y3QgZmlsZXNfcmVmX3N0b3JlICpyZWZzID0KIAkJZmlsZXNfZG93bmNhc3QocmVmX3N0b3JlLCBSRUZfU1RPUkVfV1JJVEUsICJyZW5hbWVfcmVmIik7Ci0Jc3RydWN0IG9iamVjdF9pZCBvaWQsIG9yaWdfb2lkOworCXN0cnVjdCBvYmplY3RfaWQgb3JpZ19vaWQ7CiAJaW50IGZsYWcgPSAwLCBsb2dtb3ZlZCA9IDA7CiAJc3RydWN0IHJlZl9sb2NrICpsb2NrOwogCXN0cnVjdCBzdGF0IGxvZ2luZm87CkBAIC0xMzg5LDcgKzEzOTQsNyBAQAogCSAqLwogCWlmICghY29weSAmJiAhcmVmc19yZWFkX3JlZl9mdWxsKCZyZWZzLT5iYXNlLCBuZXdyZWZuYW1lLAogCQkJCVJFU09MVkVfUkVGX1JFQURJTkcgfCBSRVNPTFZFX1JFRl9OT19SRUNVUlNFLAotCQkJCSZvaWQsIE5VTEwpICYmCisJCQkJTlVMTCwgTlVMTCkgJiYKIAkgICAgcmVmc19kZWxldGVfcmVmKCZyZWZzLT5iYXNlLCBOVUxMLCBuZXdyZWZuYW1lLAogCQkJICAgIE5VTEwsIFJFRl9OT19ERVJFRikpIHsKIAkJaWYgKGVycm5vID09IEVJU0RJUikgewpAQCAtMjEzNywxMyArMjE0MiwyNCBAQAogc3RhdGljIHN0cnVjdCByZWZfaXRlcmF0b3IgKnJlZmxvZ19pdGVyYXRvcl9iZWdpbihzdHJ1Y3QgcmVmX3N0b3JlICpyZWZfc3RvcmUsCiAJCQkJCQkgIGNvbnN0IGNoYXIgKmdpdGRpcikKIHsKLQlzdHJ1Y3QgZmlsZXNfcmVmbG9nX2l0ZXJhdG9yICppdGVyID0geGNhbGxvYygxLCBzaXplb2YoKml0ZXIpKTsKLQlzdHJ1Y3QgcmVmX2l0ZXJhdG9yICpyZWZfaXRlcmF0b3IgPSAmaXRlci0+YmFzZTsKKwlzdHJ1Y3QgZGlyX2l0ZXJhdG9yICpkaXRlcjsKKwlzdHJ1Y3QgZmlsZXNfcmVmbG9nX2l0ZXJhdG9yICppdGVyOworCXN0cnVjdCByZWZfaXRlcmF0b3IgKnJlZl9pdGVyYXRvcjsKIAlzdHJ1Y3Qgc3RyYnVmIHNiID0gU1RSQlVGX0lOSVQ7CiAKLQliYXNlX3JlZl9pdGVyYXRvcl9pbml0KHJlZl9pdGVyYXRvciwgJmZpbGVzX3JlZmxvZ19pdGVyYXRvcl92dGFibGUsIDApOwogCXN0cmJ1Zl9hZGRmKCZzYiwgIiVzL2xvZ3MiLCBnaXRkaXIpOwotCWl0ZXItPmRpcl9pdGVyYXRvciA9IGRpcl9pdGVyYXRvcl9iZWdpbihzYi5idWYpOworCisJZGl0ZXIgPSBkaXJfaXRlcmF0b3JfYmVnaW4oc2IuYnVmLCAwKTsKKwlpZiAoIWRpdGVyKSB7CisJCXN0cmJ1Zl9yZWxlYXNlKCZzYik7CisJCXJldHVybiBlbXB0eV9yZWZfaXRlcmF0b3JfYmVnaW4oKTsKKwl9CisKKwlpdGVyID0geGNhbGxvYygxLCBzaXplb2YoKml0ZXIpKTsKKwlyZWZfaXRlcmF0b3IgPSAmaXRlci0+YmFzZTsKKworCWJhc2VfcmVmX2l0ZXJhdG9yX2luaXQocmVmX2l0ZXJhdG9yLCAmZmlsZXNfcmVmbG9nX2l0ZXJhdG9yX3Z0YWJsZSwgMCk7CisJaXRlci0+ZGlyX2l0ZXJhdG9yID0gZGl0ZXI7CiAJaXRlci0+cmVmX3N0b3JlID0gcmVmX3N0b3JlOwogCXN0cmJ1Zl9yZWxlYXNlKCZzYik7CiAKQEAgLTIyNTQsOCArMjI3MCw3IEBACiAgKiBOb3RlIHRoYXQgdGhlIG5ldyB1cGRhdGUgd2lsbCBpdHNlbGYgYmUgc3ViamVjdCB0byBzcGxpdHRpbmcgd2hlbgogICogdGhlIGl0ZXJhdGlvbiBnZXRzIHRvIGl0LgogICovCi1zdGF0aWMgaW50IHNwbGl0X3N5bXJlZl91cGRhdGUoc3RydWN0IGZpbGVzX3JlZl9zdG9yZSAqcmVmcywKLQkJCSAgICAgICBzdHJ1Y3QgcmVmX3VwZGF0ZSAqdXBkYXRlLAorc3RhdGljIGludCBzcGxpdF9zeW1yZWZfdXBkYXRlKHN0cnVjdCByZWZfdXBkYXRlICp1cGRhdGUsCiAJCQkgICAgICAgY29uc3QgY2hhciAqcmVmZXJlbnQsCiAJCQkgICAgICAgc3RydWN0IHJlZl90cmFuc2FjdGlvbiAqdHJhbnNhY3Rpb24sCiAJCQkgICAgICAgc3RydWN0IHN0cmluZ19saXN0ICphZmZlY3RlZF9yZWZuYW1lcywKQEAgLTI0NDksNyArMjQ2NCw3IEBACiAJCQkgKiBvZiBwcm9jZXNzaW5nIHRoZSBzcGxpdC1vZmYgdXBkYXRlLCBzbyB3ZQogCQkJICogZG9uJ3QgaGF2ZSB0byBkbyBpdCBoZXJlLgogCQkJICovCi0JCQlyZXQgPSBzcGxpdF9zeW1yZWZfdXBkYXRlKHJlZnMsIHVwZGF0ZSwKKwkJCXJldCA9IHNwbGl0X3N5bXJlZl91cGRhdGUodXBkYXRlLAogCQkJCQkJICByZWZlcmVudC5idWYsIHRyYW5zYWN0aW9uLAogCQkJCQkJICBhZmZlY3RlZF9yZWZuYW1lcywgZXJyKTsKIAkJCWlmIChyZXQpCkBAIC0yNjk2LDE4ICsyNzExLDMyIEBACiAJCWlmIChpc19wYWNrZWRfdHJhbnNhY3Rpb25fbmVlZGVkKHJlZnMtPnBhY2tlZF9yZWZfc3RvcmUsCiAJCQkJCQkgcGFja2VkX3RyYW5zYWN0aW9uKSkgewogCQkJcmV0ID0gcmVmX3RyYW5zYWN0aW9uX3ByZXBhcmUocGFja2VkX3RyYW5zYWN0aW9uLCBlcnIpOworCQkJLyoKKwkJCSAqIEEgZmFpbHVyZSBkdXJpbmcgdGhlIHByZXBhcmUgc3RlcCB3aWxsIGFib3J0CisJCQkgKiBpdHNlbGYsIGJ1dCBub3QgZnJlZS4gRG8gdGhhdCBub3csIGFuZCBkaXNjb25uZWN0CisJCQkgKiBmcm9tIHRoZSBmaWxlc190cmFuc2FjdGlvbiBzbyBpdCBkb2VzIG5vdCB0cnkgdG8KKwkJCSAqIGFib3J0IHVzIHdoZW4gd2UgaGl0IHRoZSBjbGVhbnVwIGNvZGUgYmVsb3cuCisJCQkgKi8KKwkJCWlmIChyZXQpIHsKKwkJCQlyZWZfdHJhbnNhY3Rpb25fZnJlZShwYWNrZWRfdHJhbnNhY3Rpb24pOworCQkJCWJhY2tlbmRfZGF0YS0+cGFja2VkX3RyYW5zYWN0aW9uID0gTlVMTDsKKwkJCX0KIAkJfSBlbHNlIHsKIAkJCS8qCiAJCQkgKiBXZSBjYW4gc2tpcCByZXdyaXRpbmcgdGhlIGBwYWNrZWQtcmVmc2AKIAkJCSAqIGZpbGUuIEJ1dCB3ZSBkbyBuZWVkIHRvIGxlYXZlIGl0IGxvY2tlZCwgc28KIAkJCSAqIHRoYXQgc29tZWJvZHkgZWxzZSBkb2Vzbid0IHBhY2sgYSByZWZlcmVuY2UKIAkJCSAqIHRoYXQgd2UgYXJlIHRyeWluZyB0byBkZWxldGUuCisJCQkgKgorCQkJICogV2UgbmVlZCB0byBkaXNjb25uZWN0IG91ciB0cmFuc2FjdGlvbiBmcm9tCisJCQkgKiBiYWNrZW5kX2RhdGEsIHNpbmNlIHRoZSBhYm9ydCAod2hldGhlciBzdWNjZXNzZnVsIG9yCisJCQkgKiBub3QpIHdpbGwgZnJlZSBpdC4KIAkJCSAqLworCQkJYmFja2VuZF9kYXRhLT5wYWNrZWRfdHJhbnNhY3Rpb24gPSBOVUxMOwogCQkJaWYgKHJlZl90cmFuc2FjdGlvbl9hYm9ydChwYWNrZWRfdHJhbnNhY3Rpb24sIGVycikpIHsKIAkJCQlyZXQgPSBUUkFOU0FDVElPTl9HRU5FUklDX0VSUk9SOwogCQkJCWdvdG8gY2xlYW51cDsKIAkJCX0KLQkJCWJhY2tlbmRfZGF0YS0+cGFja2VkX3RyYW5zYWN0aW9uID0gTlVMTDsKIAkJfQogCX0KIApkaWZmIC0tZ2l0IGEvcmVmcy9wYWNrZWQtYmFja2VuZC5jIGIvcmVmcy9wYWNrZWQtYmFja2VuZC5jCmluZGV4IGMwMWM3ZjUuLjQ0NThhMGYgMTAwNjQ0Ci0tLSBhL3JlZnMvcGFja2VkLWJhY2tlbmQuYworKysgYi9yZWZzL3BhY2tlZC1iYWNrZW5kLmMKQEAgLTEwMTIsMTQgKzEwMTIsMjMgQEAKIAl9CiAKIAkvKgotCSAqIE5vdyB0aGF0IHdlIGhvbGQgdGhlIGBwYWNrZWQtcmVmc2AgbG9jaywgbWFrZSBzdXJlIHRoYXQgb3VyCi0JICogc25hcHNob3QgbWF0Y2hlcyB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIHRoZSBmaWxlLiBOb3JtYWxseQotCSAqIGBnZXRfc25hcHNob3QoKWAgZG9lcyB0aGF0IGZvciB1cywgYnV0IHRoYXQgZnVuY3Rpb24KLQkgKiBhc3N1bWVzIHRoYXQgd2hlbiB0aGUgZmlsZSBpcyBsb2NrZWQsIGFueSBleGlzdGluZyBzbmFwc2hvdAotCSAqIGlzIHN0aWxsIHZhbGlkLiBXZSd2ZSBqdXN0IGxvY2tlZCB0aGUgZmlsZSwgYnV0IGl0IG1pZ2h0Ci0JICogaGF2ZSBjaGFuZ2VkIHRoZSBtb21lbnQgKmJlZm9yZSogd2UgbG9ja2VkIGl0LgorCSAqIFRoZXJlIGlzIGEgc3RhdC12YWxpZGl0eSBwcm9ibGVtIG1pZ2h0IGNhdXNlIGB1cGRhdGUtcmVmIC1kYAorCSAqIGxvc3QgdGhlIG5ld2x5IGNvbW1pdCBvZiBhIHJlZiwgYmVjYXVzZSBhIG5ldyBgcGFja2VkLXJlZnNgCisJICogZmlsZSBtaWdodCBoYXMgdGhlIHNhbWUgb24tZGlzayBmaWxlIGF0dHJpYnV0ZXMgc3VjaCBhcworCSAqIHRpbWVzdGFtcCwgZmlsZSBzaXplIGFuZCBpbm9kZSB2YWx1ZSwgYnV0IGhhcyBhIGNoYW5nZWQKKwkgKiByZWYgdmFsdWUuCisJICoKKwkgKiBUaGlzIGNvdWxkIGhhcHBlbiB3aXRoIGEgdmVyeSBzbWFsbCBjaGFuY2Ugd2hlbgorCSAqIGB1cGRhdGUtcmVmIC1kYCBpcyBjYWxsZWQgYW5kIGF0IHRoZSBzYW1lIHRpbWUgYW5vdGhlcgorCSAqIGBwYWNrLXJlZnMgLS1hbGxgIHByb2Nlc3MgaXMgcnVubmluZy4KKwkgKgorCSAqIE5vdyB0aGF0IHdlIGhvbGQgdGhlIGBwYWNrZWQtcmVmc2AgbG9jaywgaXQgaXMgaW1wb3J0YW50CisJICogdG8gbWFrZSBzdXJlIHdlIGNvdWxkIHJlYWQgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mCisJICogYHBhY2tlZC1yZWZzYCBmaWxlIG5vIG1hdHRlciB3ZSBoYXZlIGp1c3QgbW1hcCBpdCBvciBub3QuCisJICogU28gd2hhdCBuZWVkIHRvIGRvIGlzIGNsZWFyIHRoZSBzbmFwc2hvdCBpZiB3ZSBob2xkIGl0CisJICogYWxyZWFkeS4KIAkgKi8KLQl2YWxpZGF0ZV9zbmFwc2hvdChyZWZzKTsKKwljbGVhcl9zbmFwc2hvdChyZWZzKTsKIAogCS8qCiAJICogTm93IG1ha2Ugc3VyZSB0aGF0IHRoZSBwYWNrZWQtcmVmcyBmaWxlIGFzIGl0IGV4aXN0cyBpbiB0aGUKZGlmZiAtLWdpdCBhL3JlZnMvcmVmcy1pbnRlcm5hbC5oIGIvcmVmcy9yZWZzLWludGVybmFsLmgKaW5kZXggZjJkOGMwMS4uZmYyNDM2YyAxMDA2NDQKLS0tIGEvcmVmcy9yZWZzLWludGVybmFsLmgKKysrIGIvcmVmcy9yZWZzLWludGVybmFsLmgKQEAgLTI2Miw3ICsyNjIsNyBAQAogICogYWZ0ZXIgY2FsbGluZyByZWZfaXRlcmF0b3JfYWR2YW5jZSgpIGFnYWluIG9yIGNhbGxpbmcKICAqIHJlZl9pdGVyYXRvcl9hYm9ydCgpLCB5b3UgbXVzdCBtYWtlIGEgY29weS4gV2hlbiB0aGUgaXRlcmF0aW9uIGhhcwogICogYmVlbiBleGhhdXN0ZWQsIHJlZl9pdGVyYXRvcl9hZHZhbmNlKCkgcmVsZWFzZXMgYW55IHJlc291cmNlcwotICogYXNzb2NhdGVkIHdpdGggdGhlIGl0ZXJhdGlvbiwgZnJlZXMgdGhlIHJlZl9pdGVyYXRvciBvYmplY3QsIGFuZAorICogYXNzb2NpYXRlZCB3aXRoIHRoZSBpdGVyYXRpb24sIGZyZWVzIHRoZSByZWZfaXRlcmF0b3Igb2JqZWN0LCBhbmQKICAqIHJldHVybnMgSVRFUl9ET05FLiBJZiB5b3Ugd2FudCB0byBhYm9ydCB0aGUgaXRlcmF0aW9uIGVhcmx5LCBjYWxsCiAgKiByZWZfaXRlcmF0b3JfYWJvcnQoKSwgd2hpY2ggYWxzbyBmcmVlcyB0aGUgcmVmX2l0ZXJhdG9yIG9iamVjdCBhbmQKICAqIGFueSBhc3NvY2lhdGVkIHJlc291cmNlcy4gSWYgdGhlcmUgd2FzIGFuIGludGVybmFsIGVycm9yIGFkdmFuY2luZwpkaWZmIC0tZ2l0IGEvcmVmc3BlYy5jIGIvcmVmc3BlYy5jCmluZGV4IGY1MjkwOTIuLjlhOWJmMjEgMTAwNjQ0Ci0tLSBhL3JlZnNwZWMuYworKysgYi9yZWZzcGVjLmMKQEAgLTcyLDcgKzcyLDcgQEAKIAkJLyogTEhTICovCiAJCWlmICghKml0ZW0tPnNyYykKIAkJCTsgLyogZW1wdHkgaXMgb2s7IGl0IG1lYW5zICJIRUFEIiAqLwotCQllbHNlIGlmIChsbGVuID09IEdJVF9TSEExX0hFWFNaICYmICFnZXRfb2lkX2hleChpdGVtLT5zcmMsICZ1bnVzZWQpKQorCQllbHNlIGlmIChsbGVuID09IHRoZV9oYXNoX2FsZ28tPmhleHN6ICYmICFnZXRfb2lkX2hleChpdGVtLT5zcmMsICZ1bnVzZWQpKQogCQkJaXRlbS0+ZXhhY3Rfc2hhMSA9IDE7IC8qIG9rICovCiAJCWVsc2UgaWYgKCFjaGVja19yZWZuYW1lX2Zvcm1hdChpdGVtLT5zcmMsIGZsYWdzKSkKIAkJCTsgLyogdmFsaWQgbG9va2luZyByZWYgaXMgb2sgKi8KZGlmZiAtLWdpdCBhL3JlZnNwZWMuaCBiL3JlZnNwZWMuaAppbmRleCA5YjZlNjRhLi4zZjJiZDRhIDEwMDY0NAotLS0gYS9yZWZzcGVjLmgKKysrIGIvcmVmc3BlYy5oCkBAIC0yMCw2ICsyMCwyMiBAQAogI2RlZmluZSBSRUZTUEVDX0lOSVRfRkVUQ0ggeyAuZmV0Y2ggPSBSRUZTUEVDX0ZFVENIIH0KICNkZWZpbmUgUkVGU1BFQ19JTklUX1BVU0ggeyAuZmV0Y2ggPSBSRUZTUEVDX1BVU0ggfQogCisvKioKKyAqIEEgc3RydWN0IHJlZnNwZWMgaG9sZHMgdGhlIHBhcnNlZCBpbnRlcnByZXRhdGlvbiBvZiBhIHJlZnNwZWMuICBJZiBpdCB3aWxsCisgKiBmb3JjZSB1cGRhdGVzIChzdGFydHMgd2l0aCBhICcrJyksIGZvcmNlIGlzIHRydWUuICBJZiBpdCBpcyBhIHBhdHRlcm4KKyAqIChzaWRlcyBlbmQgd2l0aCAnKicpIHBhdHRlcm4gaXMgdHJ1ZS4gIHNyYyBhbmQgZGVzdCBhcmUgdGhlIHR3byBzaWRlcworICogKGluY2x1ZGluZyAnKicgY2hhcmFjdGVycyBpZiBwcmVzZW50KTsgaWYgdGhlcmUgaXMgb25seSBvbmUgc2lkZSwgaXQgaXMgc3JjLAorICogYW5kIGRzdCBpcyBOVUxMOyBpZiBzaWRlcyBleGlzdCBidXQgYXJlIGVtcHR5IChpLmUuLCB0aGUgcmVmc3BlYyBlaXRoZXIKKyAqIHN0YXJ0cyBvciBlbmRzIHdpdGggJzonKSwgdGhlIGNvcnJlc3BvbmRpbmcgc2lkZSBpcyAiIi4KKyAqCisgKiBBbiBhcnJheSBvZiBzdHJpbmdzIGNhbiBiZSBwYXJzZWQgaW50byBhbiBhcnJheSBvZiBzdHJ1Y3QgcmVmc3BlY3MgdXNpbmcKKyAqIHBhcnNlX2ZldGNoX3JlZnNwZWMoKSBvciBwYXJzZV9wdXNoX3JlZnNwZWMoKS4KKyAqCisgKiByZW1vdGVfZmluZF90cmFja2luZygpLCBnaXZlbiBhIHJlbW90ZSBhbmQgYSBzdHJ1Y3QgcmVmc3BlYyB3aXRoIGVpdGhlciBzcmMKKyAqIG9yIGRzdCBmaWxsZWQgb3V0LCB3aWxsIGZpbGwgb3V0IHRoZSBvdGhlciBzdWNoIHRoYXQgdGhlIHJlc3VsdCBpcyBpbiB0aGUKKyAqICJmZXRjaCIgc3BlY2lmaWNhdGlvbiBmb3IgdGhlIHJlbW90ZSAobm90ZSB0aGF0IHRoaXMgZXZhbHVhdGVzIHBhdHRlcm5zIGFuZAorICogcmV0dXJucyBhIHNpbmdsZSByZXN1bHQpLgorICovCiBzdHJ1Y3QgcmVmc3BlYyB7CiAJc3RydWN0IHJlZnNwZWNfaXRlbSAqaXRlbXM7CiAJaW50IGFsbG9jOwpkaWZmIC0tZ2l0IGEvcmVtb3RlLWN1cmwuYyBiL3JlbW90ZS1jdXJsLmMKaW5kZXggMTIyMGRmZi4uZTRjZDMyMSAxMDA2NDQKLS0tIGEvcmVtb3RlLWN1cmwuYworKysgYi9yZW1vdGUtY3VybC5jCkBAIC0xNiw2ICsxNiw3IEBACiAjaW5jbHVkZSAic2VuZC1wYWNrLmgiCiAjaW5jbHVkZSAicHJvdG9jb2wuaCIKICNpbmNsdWRlICJxdW90ZS5oIgorI2luY2x1ZGUgInRyYW5zcG9ydC5oIgogCiBzdGF0aWMgc3RydWN0IHJlbW90ZSAqcmVtb3RlOwogLyogYWx3YXlzIGVuZHMgd2l0aCBhIHRyYWlsaW5nIHNsYXNoICovCkBAIC0zOSw3ICs0MCw4IEBACiAJCXB1c2hfY2VydCA6IDIsCiAJCWRlZXBlbl9yZWxhdGl2ZSA6IDEsCiAJCWZyb21fcHJvbWlzb3IgOiAxLAotCQlub19kZXBlbmRlbnRzIDogMTsKKwkJbm9fZGVwZW5kZW50cyA6IDEsCisJCWF0b21pYyA6IDE7CiB9Owogc3RhdGljIHN0cnVjdCBvcHRpb25zIG9wdGlvbnM7CiBzdGF0aWMgc3RydWN0IHN0cmluZ19saXN0IGNhc19vcHRpb25zID0gU1RSSU5HX0xJU1RfSU5JVF9EVVA7CkBAIC0xNDcsMTMgKzE0OSwyMSBAQAogCQllbHNlCiAJCQlyZXR1cm4gLTE7CiAJCXJldHVybiAwOworCX0gZWxzZSBpZiAoIXN0cmNtcChuYW1lLCAiYXRvbWljIikpIHsKKwkJaWYgKCFzdHJjbXAodmFsdWUsICJ0cnVlIikpCisJCQlvcHRpb25zLmF0b21pYyA9IDE7CisJCWVsc2UgaWYgKCFzdHJjbXAodmFsdWUsICJmYWxzZSIpKQorCQkJb3B0aW9ucy5hdG9taWMgPSAwOworCQllbHNlCisJCQlyZXR1cm4gLTE7CisJCXJldHVybiAwOwogCX0gZWxzZSBpZiAoIXN0cmNtcChuYW1lLCAicHVzaC1vcHRpb24iKSkgewogCQlpZiAoKnZhbHVlICE9ICciJykKIAkJCXN0cmluZ19saXN0X2FwcGVuZCgmb3B0aW9ucy5wdXNoX29wdGlvbnMsIHZhbHVlKTsKIAkJZWxzZSB7CiAJCQlzdHJ1Y3Qgc3RyYnVmIHVucXVvdGVkID0gU1RSQlVGX0lOSVQ7CiAJCQlpZiAodW5xdW90ZV9jX3N0eWxlKCZ1bnF1b3RlZCwgdmFsdWUsIE5VTEwpIDwgMCkKLQkJCQlkaWUoImludmFsaWQgcXVvdGluZyBpbiBwdXNoLW9wdGlvbiB2YWx1ZSIpOworCQkJCWRpZShfKCJpbnZhbGlkIHF1b3RpbmcgaW4gcHVzaC1vcHRpb24gdmFsdWU6ICclcyciKSwgdmFsdWUpOwogCQkJc3RyaW5nX2xpc3RfYXBwZW5kX25vZHVwKCZvcHRpb25zLnB1c2hfb3B0aW9ucywKIAkJCQkJCSBzdHJidWZfZGV0YWNoKCZ1bnF1b3RlZCwgTlVMTCkpOwogCQl9CkBAIC0yMDQsNyArMjE0LDggQEAKIAogCXBhY2tldF9yZWFkZXJfaW5pdCgmcmVhZGVyLCAtMSwgaGVhZHMtPmJ1ZiwgaGVhZHMtPmxlbiwKIAkJCSAgIFBBQ0tFVF9SRUFEX0NIT01QX05FV0xJTkUgfAotCQkJICAgUEFDS0VUX1JFQURfR0VOVExFX09OX0VPRik7CisJCQkgICBQQUNLRVRfUkVBRF9HRU5UTEVfT05fRU9GIHwKKwkJCSAgIFBBQ0tFVF9SRUFEX0RJRV9PTl9FUlJfUEFDS0VUKTsKIAogCWhlYWRzLT52ZXJzaW9uID0gZGlzY292ZXJfdmVyc2lvbigmcmVhZGVyKTsKIAlzd2l0Y2ggKGhlYWRzLT52ZXJzaW9uKSB7CkBAIC0yNDgsOSArMjU5LDkgQEAKIAkJaWYgKGRhdGFbaV0gPT0gJ1x0JykKIAkJCW1pZCA9ICZkYXRhW2ldOwogCQlpZiAoZGF0YVtpXSA9PSAnXG4nKSB7Ci0JCQlpZiAobWlkIC0gc3RhcnQgIT0gNDApCi0JCQkJZGllKCIlc2luZm8vcmVmcyBub3QgdmFsaWQ6IGlzIHRoaXMgYSBnaXQgcmVwb3NpdG9yeT8iLAotCQkJCSAgICB1cmwuYnVmKTsKKwkJCWlmIChtaWQgLSBzdGFydCAhPSB0aGVfaGFzaF9hbGdvLT5oZXhzeikKKwkJCQlkaWUoXygiJXNpbmZvL3JlZnMgbm90IHZhbGlkOiBpcyB0aGlzIGEgZ2l0IHJlcG9zaXRvcnk/IiksCisJCQkJICAgIHRyYW5zcG9ydF9hbm9ueW1pemVfdXJsKHVybC5idWYpKTsKIAkJCWRhdGFbaV0gPSAwOwogCQkJcmVmX25hbWUgPSBtaWQgKyAxOwogCQkJcmVmID0gYWxsb2NfcmVmKHJlZl9uYW1lKTsKQEAgLTMzMCw5ICszNDEsNjMgQEAKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIHZvaWQgY2hlY2tfc21hcnRfaHR0cChzdHJ1Y3QgZGlzY292ZXJ5ICpkLCBjb25zdCBjaGFyICpzZXJ2aWNlLAorCQkJICAgICBzdHJ1Y3Qgc3RyYnVmICp0eXBlKQoreworCWNvbnN0IGNoYXIgKnA7CisJc3RydWN0IHBhY2tldF9yZWFkZXIgcmVhZGVyOworCisJLyoKKwkgKiBJZiB3ZSBkb24ndCBzZWUgeC0kc2VydmljZS1hZHZlcnRpc2VtZW50LCB0aGVuIGl0J3Mgbm90IHNtYXJ0LWh0dHAuCisJICogQnV0IG9uY2Ugd2UgZG8sIHdlIGNvbW1pdCB0byBpdCBhbmQgYXNzdW1lIGFueSBvdGhlciBwcm90b2NvbAorCSAqIHZpb2xhdGlvbnMgYXJlIGhhcmQgZXJyb3JzLgorCSAqLworCWlmICghc2tpcF9wcmVmaXgodHlwZS0+YnVmLCAiYXBwbGljYXRpb24veC0iLCAmcCkgfHwKKwkgICAgIXNraXBfcHJlZml4KHAsIHNlcnZpY2UsICZwKSB8fAorCSAgICBzdHJjbXAocCwgIi1hZHZlcnRpc2VtZW50IikpCisJCXJldHVybjsKKworCXBhY2tldF9yZWFkZXJfaW5pdCgmcmVhZGVyLCAtMSwgZC0+YnVmLCBkLT5sZW4sCisJCQkgICBQQUNLRVRfUkVBRF9DSE9NUF9ORVdMSU5FIHwKKwkJCSAgIFBBQ0tFVF9SRUFEX0RJRV9PTl9FUlJfUEFDS0VUKTsKKwlpZiAocGFja2V0X3JlYWRlcl9yZWFkKCZyZWFkZXIpICE9IFBBQ0tFVF9SRUFEX05PUk1BTCkKKwkJZGllKF8oImludmFsaWQgc2VydmVyIHJlc3BvbnNlOyBleHBlY3RlZCBzZXJ2aWNlLCBnb3QgZmx1c2ggcGFja2V0IikpOworCisJaWYgKHNraXBfcHJlZml4KHJlYWRlci5saW5lLCAiIyBzZXJ2aWNlPSIsICZwKSAmJiAhc3RyY21wKHAsIHNlcnZpY2UpKSB7CisJCS8qCisJCSAqIFRoZSBoZWFkZXIgY2FuIGluY2x1ZGUgYWRkaXRpb25hbCBtZXRhZGF0YSBsaW5lcywgdXAKKwkJICogdW50aWwgYSBwYWNrZXQgZmx1c2ggbWFya2VyLiAgSWdub3JlIHRoZXNlIG5vdywgYnV0CisJCSAqIGluIHRoZSBmdXR1cmUgd2UgbWlnaHQgc3RhcnQgdG8gc2NhbiB0aGVtLgorCQkgKi8KKwkJZm9yICg7OykgeworCQkJcGFja2V0X3JlYWRlcl9yZWFkKCZyZWFkZXIpOworCQkJaWYgKHJlYWRlci5wa3RsZW4gPD0gMCkgeworCQkJCWJyZWFrOworCQkJfQorCQl9CisKKwkJLyoKKwkJICogdjAgc21hcnQgaHR0cDsgY2FsbGVycyBleHBlY3QgdXMgdG8gc29hayB1cCB0aGUKKwkJICogc2VydmljZSBhbmQgaGVhZGVyIHBhY2tldHMKKwkJICovCisJCWQtPmJ1ZiA9IHJlYWRlci5zcmNfYnVmZmVyOworCQlkLT5sZW4gPSByZWFkZXIuc3JjX2xlbjsKKwkJZC0+cHJvdG9fZ2l0ID0gMTsKKworCX0gZWxzZSBpZiAoIXN0cmNtcChyZWFkZXIubGluZSwgInZlcnNpb24gMiIpKSB7CisJCS8qCisJCSAqIHYyIHNtYXJ0IGh0dHA7IGRvIG5vdCBjb25zdW1lIHZlcnNpb24gcGFja2V0LCB3aGljaCB3aWxsCisJCSAqIGJlIGhhbmRsZWQgZWxzZXdoZXJlLgorCQkgKi8KKwkJZC0+cHJvdG9fZ2l0ID0gMTsKKworCX0gZWxzZSB7CisJCWRpZShfKCJpbnZhbGlkIHNlcnZlciByZXNwb25zZTsgZ290ICclcyciKSwgcmVhZGVyLmxpbmUpOworCX0KK30KKwogc3RhdGljIHN0cnVjdCBkaXNjb3ZlcnkgKmRpc2NvdmVyX3JlZnMoY29uc3QgY2hhciAqc2VydmljZSwgaW50IGZvcl9wdXNoKQogewotCXN0cnVjdCBzdHJidWYgZXhwID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHN0cmJ1ZiB0eXBlID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHN0cmJ1ZiBjaGFyc2V0ID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHN0cmJ1ZiBidWZmZXIgPSBTVFJCVUZfSU5JVDsKQEAgLTM4MCw3ICs0NDUsNiBAQAogCWh0dHBfb3B0aW9ucy5leHRyYV9oZWFkZXJzID0gJmV4dHJhX2hlYWRlcnM7CiAJaHR0cF9vcHRpb25zLmluaXRpYWxfcmVxdWVzdCA9IDE7CiAJaHR0cF9vcHRpb25zLm5vX2NhY2hlID0gMTsKLQlodHRwX29wdGlvbnMua2VlcF9lcnJvciA9IDE7CiAKIAlodHRwX3JldCA9IGh0dHBfZ2V0X3N0cmJ1ZihyZWZzX3VybC5idWYsICZidWZmZXIsICZodHRwX29wdGlvbnMpOwogCXN3aXRjaCAoaHR0cF9yZXQpIHsKQEAgLTM4OCw1NSArNDUyLDMxIEBACiAJCWJyZWFrOwogCWNhc2UgSFRUUF9NSVNTSU5HX1RBUkdFVDoKIAkJc2hvd19odHRwX21lc3NhZ2UoJnR5cGUsICZjaGFyc2V0LCAmYnVmZmVyKTsKLQkJZGllKCJyZXBvc2l0b3J5ICclcycgbm90IGZvdW5kIiwgdXJsLmJ1Zik7CisJCWRpZShfKCJyZXBvc2l0b3J5ICclcycgbm90IGZvdW5kIiksCisJCSAgICB0cmFuc3BvcnRfYW5vbnltaXplX3VybCh1cmwuYnVmKSk7CiAJY2FzZSBIVFRQX05PQVVUSDoKIAkJc2hvd19odHRwX21lc3NhZ2UoJnR5cGUsICZjaGFyc2V0LCAmYnVmZmVyKTsKLQkJZGllKCJBdXRoZW50aWNhdGlvbiBmYWlsZWQgZm9yICclcyciLCB1cmwuYnVmKTsKKwkJZGllKF8oIkF1dGhlbnRpY2F0aW9uIGZhaWxlZCBmb3IgJyVzJyIpLAorCQkgICAgdHJhbnNwb3J0X2Fub255bWl6ZV91cmwodXJsLmJ1ZikpOwogCWRlZmF1bHQ6CiAJCXNob3dfaHR0cF9tZXNzYWdlKCZ0eXBlLCAmY2hhcnNldCwgJmJ1ZmZlcik7Ci0JCWRpZSgidW5hYmxlIHRvIGFjY2VzcyAnJXMnOiAlcyIsIHVybC5idWYsIGN1cmxfZXJyb3JzdHIpOworCQlkaWUoXygidW5hYmxlIHRvIGFjY2VzcyAnJXMnOiAlcyIpLAorCQkgICAgdHJhbnNwb3J0X2Fub255bWl6ZV91cmwodXJsLmJ1ZiksIGN1cmxfZXJyb3JzdHIpOwogCX0KIAotCWlmIChvcHRpb25zLnZlcmJvc2l0eSAmJiAhc3RhcnRzX3dpdGgocmVmc191cmwuYnVmLCB1cmwuYnVmKSkKLQkJd2FybmluZyhfKCJyZWRpcmVjdGluZyB0byAlcyIpLCB1cmwuYnVmKTsKKwlpZiAob3B0aW9ucy52ZXJib3NpdHkgJiYgIXN0YXJ0c193aXRoKHJlZnNfdXJsLmJ1ZiwgdXJsLmJ1ZikpIHsKKwkJY2hhciAqdSA9IHRyYW5zcG9ydF9hbm9ueW1pemVfdXJsKHVybC5idWYpOworCQl3YXJuaW5nKF8oInJlZGlyZWN0aW5nIHRvICVzIiksIHUpOworCQlmcmVlKHUpOworCX0KIAogCWxhc3Q9IHhjYWxsb2MoMSwgc2l6ZW9mKCpsYXN0X2Rpc2NvdmVyeSkpOwogCWxhc3QtPnNlcnZpY2UgPSB4c3RyZHVwKHNlcnZpY2UpOwogCWxhc3QtPmJ1Zl9hbGxvYyA9IHN0cmJ1Zl9kZXRhY2goJmJ1ZmZlciwgJmxhc3QtPmxlbik7CiAJbGFzdC0+YnVmID0gbGFzdC0+YnVmX2FsbG9jOwogCi0Jc3RyYnVmX2FkZGYoJmV4cCwgImFwcGxpY2F0aW9uL3gtJXMtYWR2ZXJ0aXNlbWVudCIsIHNlcnZpY2UpOwotCWlmIChtYXliZV9zbWFydCAmJgotCSAgICAoNSA8PSBsYXN0LT5sZW4gJiYgbGFzdC0+YnVmWzRdID09ICcjJykgJiYKLQkgICAgIXN0cmJ1Zl9jbXAoJmV4cCwgJnR5cGUpKSB7Ci0JCWNoYXIgKmxpbmU7Ci0KLQkJLyoKLQkJICogc21hcnQgSFRUUCByZXNwb25zZTsgdmFsaWRhdGUgdGhhdCB0aGUgc2VydmljZQotCQkgKiBwa3QtbGluZSBtYXRjaGVzIG91ciByZXF1ZXN0LgotCQkgKi8KLQkJbGluZSA9IHBhY2tldF9yZWFkX2xpbmVfYnVmKCZsYXN0LT5idWYsICZsYXN0LT5sZW4sIE5VTEwpOwotCQlpZiAoIWxpbmUpCi0JCQlkaWUoImludmFsaWQgc2VydmVyIHJlc3BvbnNlOyBleHBlY3RlZCBzZXJ2aWNlLCBnb3QgZmx1c2ggcGFja2V0Iik7Ci0KLQkJc3RyYnVmX3Jlc2V0KCZleHApOwotCQlzdHJidWZfYWRkZigmZXhwLCAiIyBzZXJ2aWNlPSVzIiwgc2VydmljZSk7Ci0JCWlmIChzdHJjbXAobGluZSwgZXhwLmJ1ZikpCi0JCQlkaWUoImludmFsaWQgc2VydmVyIHJlc3BvbnNlOyBnb3QgJyVzJyIsIGxpbmUpOwotCQlzdHJidWZfcmVsZWFzZSgmZXhwKTsKLQotCQkvKiBUaGUgaGVhZGVyIGNhbiBpbmNsdWRlIGFkZGl0aW9uYWwgbWV0YWRhdGEgbGluZXMsIHVwCi0JCSAqIHVudGlsIGEgcGFja2V0IGZsdXNoIG1hcmtlci4gIElnbm9yZSB0aGVzZSBub3csIGJ1dAotCQkgKiBpbiB0aGUgZnV0dXJlIHdlIG1pZ2h0IHN0YXJ0IHRvIHNjYW4gdGhlbS4KLQkJICovCi0JCXdoaWxlIChwYWNrZXRfcmVhZF9saW5lX2J1ZigmbGFzdC0+YnVmLCAmbGFzdC0+bGVuLCBOVUxMKSkKLQkJCTsKLQotCQlsYXN0LT5wcm90b19naXQgPSAxOwotCX0gZWxzZSBpZiAobWF5YmVfc21hcnQgJiYKLQkJICAgbGFzdC0+bGVuID4gNSAmJiBzdGFydHNfd2l0aChsYXN0LT5idWYgKyA0LCAidmVyc2lvbiAyIikpIHsKLQkJbGFzdC0+cHJvdG9fZ2l0ID0gMTsKLQl9CisJaWYgKG1heWJlX3NtYXJ0KQorCQljaGVja19zbWFydF9odHRwKGxhc3QsIHNlcnZpY2UsICZ0eXBlKTsKIAogCWlmIChsYXN0LT5wcm90b19naXQpCiAJCWxhc3QtPnJlZnMgPSBwYXJzZV9naXRfcmVmcyhsYXN0LCBmb3JfcHVzaCk7CkBAIC00NDQsNyArNDg0LDYgQEAKIAkJbGFzdC0+cmVmcyA9IHBhcnNlX2luZm9fcmVmcyhsYXN0KTsKIAogCXN0cmJ1Zl9yZWxlYXNlKCZyZWZzX3VybCk7Ci0Jc3RyYnVmX3JlbGVhc2UoJmV4cCk7CiAJc3RyYnVmX3JlbGVhc2UoJnR5cGUpOwogCXN0cmJ1Zl9yZWxlYXNlKCZjaGFyc2V0KTsKIAlzdHJidWZfcmVsZWFzZSgmZWZmZWN0aXZlX3VybCk7CkBAIC00ODIsOCArNTIxLDYgQEAKIAogc3RydWN0IHJwY19zdGF0ZSB7CiAJY29uc3QgY2hhciAqc2VydmljZV9uYW1lOwotCWNvbnN0IGNoYXIgKiphcmd2OwotCXN0cnVjdCBzdHJidWYgKnN0ZGluX3ByZWFtYmxlOwogCWNoYXIgKnNlcnZpY2VfdXJsOwogCWNoYXIgKmhkcl9jb250ZW50X3R5cGU7CiAJY2hhciAqaGRyX2FjY2VwdDsKQEAgLTQ5NSwyNSArNTMyLDEyMSBAQAogCWludCBpbjsKIAlpbnQgb3V0OwogCWludCBhbnlfd3JpdHRlbjsKLQlzdHJ1Y3Qgc3RyYnVmIHJlc3VsdDsKIAl1bnNpZ25lZCBnemlwX3JlcXVlc3QgOiAxOwogCXVuc2lnbmVkIGluaXRpYWxfYnVmZmVyIDogMTsKKworCS8qCisJICogV2hlbmV2ZXIgYSBwa3QtbGluZSBpcyByZWFkIGludG8gYnVmLCBhcHBlbmQgdGhlIDQgY2hhcmFjdGVycworCSAqIGRlbm90aW5nIGl0cyBsZW5ndGggYmVmb3JlIGFwcGVuZGluZyB0aGUgcGF5bG9hZC4KKwkgKi8KKwl1bnNpZ25lZCB3cml0ZV9saW5lX2xlbmd0aHMgOiAxOworCisJLyoKKwkgKiBVc2VkIGJ5IHJwY19vdXQ7IGluaXRpYWxpemUgdG8gMC4gVGhpcyBpcyB0cnVlIGlmIGEgZmx1c2ggaGFzIGJlZW4KKwkgKiByZWFkLCBidXQgdGhlIGNvcnJlc3BvbmRpbmcgbGluZSBsZW5ndGggKGlmIHdyaXRlX2xpbmVfbGVuZ3RocyBpcworCSAqIHRydWUpIGFuZCBFT0YgaGF2ZSBub3QgYmVlbiBzZW50IHRvIGxpYmN1cmwuIFNpbmNlIGVhY2ggZmx1c2ggbWFya3MKKwkgKiB0aGUgZW5kIG9mIGEgcmVxdWVzdCwgZWFjaCBmbHVzaCBtdXN0IGJlIGNvbXBsZXRlbHkgc2VudCBiZWZvcmUgYW55CisJICogZnVydGhlciByZWFkaW5nIG9jY3Vycy4KKwkgKi8KKwl1bnNpZ25lZCBmbHVzaF9yZWFkX2J1dF9ub3Rfc2VudCA6IDE7CiB9OwogCisvKgorICogQXBwZW5kcyB0aGUgcmVzdWx0IG9mIHJlYWRpbmcgZnJvbSBycGMtPm91dCB0byB0aGUgc3RyaW5nIHJlcHJlc2VudGVkIGJ5CisgKiBycGMtPmJ1ZiBhbmQgcnBjLT5sZW4gaWYgdGhlcmUgaXMgZW5vdWdoIHNwYWNlLiBSZXR1cm5zIDEgaWYgdGhlcmUgd2FzCisgKiBlbm91Z2ggc3BhY2UsIDAgb3RoZXJ3aXNlLgorICoKKyAqIElmIHJwYy0+d3JpdGVfbGluZV9sZW5ndGhzIGlzIHRydWUsIGFwcGVuZHMgdGhlIGxpbmUgbGVuZ3RoIGFzIGEgNC1ieXRlCisgKiBoZXhhZGVjaW1hbCBzdHJpbmcgYmVmb3JlIGFwcGVuZGluZyB0aGUgcmVzdWx0IGRlc2NyaWJlZCBhYm92ZS4KKyAqCisgKiBXcml0ZXMgdGhlIHRvdGFsIG51bWJlciBvZiBieXRlcyBhcHBlbmRlZCBpbnRvIGFwcGVuZGVkLgorICovCitzdGF0aWMgaW50IHJwY19yZWFkX2Zyb21fb3V0KHN0cnVjdCBycGNfc3RhdGUgKnJwYywgaW50IG9wdGlvbnMsCisJCQkgICAgIHNpemVfdCAqYXBwZW5kZWQsCisJCQkgICAgIGVudW0gcGFja2V0X3JlYWRfc3RhdHVzICpzdGF0dXMpIHsKKwlzaXplX3QgbGVmdDsKKwljaGFyICpidWY7CisJaW50IHBrdGxlbl9yYXc7CisKKwlpZiAocnBjLT53cml0ZV9saW5lX2xlbmd0aHMpIHsKKwkJbGVmdCA9IHJwYy0+YWxsb2MgLSBycGMtPmxlbiAtIDQ7CisJCWJ1ZiA9IHJwYy0+YnVmICsgcnBjLT5sZW4gKyA0OworCX0gZWxzZSB7CisJCWxlZnQgPSBycGMtPmFsbG9jIC0gcnBjLT5sZW47CisJCWJ1ZiA9IHJwYy0+YnVmICsgcnBjLT5sZW47CisJfQorCisJaWYgKGxlZnQgPCBMQVJHRV9QQUNLRVRfTUFYKQorCQlyZXR1cm4gMDsKKworCSpzdGF0dXMgPSBwYWNrZXRfcmVhZF93aXRoX3N0YXR1cyhycGMtPm91dCwgTlVMTCwgTlVMTCwgYnVmLAorCQkJbGVmdCwgJnBrdGxlbl9yYXcsIG9wdGlvbnMpOworCWlmICgqc3RhdHVzICE9IFBBQ0tFVF9SRUFEX0VPRikgeworCQkqYXBwZW5kZWQgPSBwa3RsZW5fcmF3ICsgKHJwYy0+d3JpdGVfbGluZV9sZW5ndGhzID8gNCA6IDApOworCQlycGMtPmxlbiArPSAqYXBwZW5kZWQ7CisJfQorCisJaWYgKHJwYy0+d3JpdGVfbGluZV9sZW5ndGhzKSB7CisJCXN3aXRjaCAoKnN0YXR1cykgeworCQljYXNlIFBBQ0tFVF9SRUFEX0VPRjoKKwkJCWlmICghKG9wdGlvbnMgJiBQQUNLRVRfUkVBRF9HRU5UTEVfT05fRU9GKSkKKwkJCQlkaWUoXygic2hvdWxkbid0IGhhdmUgRU9GIHdoZW4gbm90IGdlbnRsZSBvbiBFT0YiKSk7CisJCQlicmVhazsKKwkJY2FzZSBQQUNLRVRfUkVBRF9OT1JNQUw6CisJCQlzZXRfcGFja2V0X2hlYWRlcihidWYgLSA0LCAqYXBwZW5kZWQpOworCQkJYnJlYWs7CisJCWNhc2UgUEFDS0VUX1JFQURfREVMSU06CisJCQltZW1jcHkoYnVmIC0gNCwgIjAwMDEiLCA0KTsKKwkJCWJyZWFrOworCQljYXNlIFBBQ0tFVF9SRUFEX0ZMVVNIOgorCQkJbWVtY3B5KGJ1ZiAtIDQsICIwMDAwIiwgNCk7CisJCQlicmVhazsKKwkJfQorCX0KKworCXJldHVybiAxOworfQorCiBzdGF0aWMgc2l6ZV90IHJwY19vdXQodm9pZCAqcHRyLCBzaXplX3QgZWx0c2l6ZSwKIAkJc2l6ZV90IG5tZW1iLCB2b2lkICpidWZmZXJfKQogewogCXNpemVfdCBtYXggPSBlbHRzaXplICogbm1lbWI7CiAJc3RydWN0IHJwY19zdGF0ZSAqcnBjID0gYnVmZmVyXzsKIAlzaXplX3QgYXZhaWwgPSBycGMtPmxlbiAtIHJwYy0+cG9zOworCWVudW0gcGFja2V0X3JlYWRfc3RhdHVzIHN0YXR1czsKIAogCWlmICghYXZhaWwpIHsKIAkJcnBjLT5pbml0aWFsX2J1ZmZlciA9IDA7Ci0JCWF2YWlsID0gcGFja2V0X3JlYWQocnBjLT5vdXQsIE5VTEwsIE5VTEwsIHJwYy0+YnVmLCBycGMtPmFsbG9jLCAwKTsKLQkJaWYgKCFhdmFpbCkKLQkJCXJldHVybiAwOworCQlycGMtPmxlbiA9IDA7CiAJCXJwYy0+cG9zID0gMDsKLQkJcnBjLT5sZW4gPSBhdmFpbDsKKwkJaWYgKCFycGMtPmZsdXNoX3JlYWRfYnV0X25vdF9zZW50KSB7CisJCQlpZiAoIXJwY19yZWFkX2Zyb21fb3V0KHJwYywgMCwgJmF2YWlsLCAmc3RhdHVzKSkKKwkJCQlCVUcoIlRoZSBlbnRpcmUgcnBjLT5idWYgc2hvdWxkIGJlIGxhcmdlciB0aGFuIExBUkdFX1BBQ0tFVF9NQVgiKTsKKwkJCWlmIChzdGF0dXMgPT0gUEFDS0VUX1JFQURfRkxVU0gpCisJCQkJcnBjLT5mbHVzaF9yZWFkX2J1dF9ub3Rfc2VudCA9IDE7CisJCX0KKwkJLyoKKwkJICogSWYgZmx1c2hfcmVhZF9idXRfbm90X3NlbnQgaXMgdHJ1ZSwgd2UgaGF2ZSBhbHJlYWR5IHJlYWQgb25lCisJCSAqIGZ1bGwgcmVxdWVzdCBidXQgaGF2ZSBub3QgZnVsbHkgc2VudCBpdCArIEVPRiwgd2hpY2ggaXMgd2h5CisJCSAqIHdlIG5lZWQgdG8gcmVmcmFpbiBmcm9tIHJlYWRpbmcuCisJCSAqLworCX0KKwlpZiAocnBjLT5mbHVzaF9yZWFkX2J1dF9ub3Rfc2VudCkgeworCQlpZiAoIWF2YWlsKSB7CisJCQkvKgorCQkJICogVGhlIGxpbmUgbGVuZ3RoIGVpdGhlciBkb2VzIG5vdCBuZWVkIHRvIGJlIHNlbnQgYXQKKwkJCSAqIGFsbCBvciBoYXMgYWxyZWFkeSBiZWVuIGNvbXBsZXRlbHkgc2VudC4gTm93IHdlIGNhbgorCQkJICogcmV0dXJuIDAsIGluZGljYXRpbmcgRU9GLCBtZWFuaW5nIHRoYXQgdGhlIGZsdXNoIGhhcworCQkJICogYmVlbiBmdWxseSBzZW50LgorCQkJICovCisJCQlycGMtPmZsdXNoX3JlYWRfYnV0X25vdF9zZW50ID0gMDsKKwkJCXJldHVybiAwOworCQl9CisJCS8qCisJCSAqIElmIGF2YWlsIGlzIG5vbi16ZXJwLCB0aGUgbGluZSBsZW5ndGggZm9yIHRoZSBmbHVzaCBzdGlsbAorCQkgKiBoYXNuJ3QgYmVlbiBmdWxseSBzZW50LiBQcm9jZWVkIHdpdGggc2VuZGluZyB0aGUgbGluZQorCQkgKiBsZW5ndGguCisJCSAqLwogCX0KIAogCWlmIChtYXggPCBhdmFpbCkKQEAgLTUzNyw3ICs2NzAsNyBAQAogCQkJcnBjLT5wb3MgPSAwOwogCQkJcmV0dXJuIENVUkxJT0VfT0s7CiAJCX0KLQkJZXJyb3IoInVuYWJsZSB0byByZXdpbmQgcnBjIHBvc3QgZGF0YSAtIHRyeSBpbmNyZWFzaW5nIGh0dHAucG9zdEJ1ZmZlciIpOworCQllcnJvcihfKCJ1bmFibGUgdG8gcmV3aW5kIHJwYyBwb3N0IGRhdGEgLSB0cnkgaW5jcmVhc2luZyBodHRwLnBvc3RCdWZmZXIiKSk7CiAJCXJldHVybiBDVVJMSU9FX0ZBSUxSRVNUQVJUOwogCiAJZGVmYXVsdDoKQEAgLTU0NiwxNCArNjc5LDMwIEBACiB9CiAjZW5kaWYKIAorc3RydWN0IHJwY19pbl9kYXRhIHsKKwlzdHJ1Y3QgcnBjX3N0YXRlICpycGM7CisJc3RydWN0IGFjdGl2ZV9yZXF1ZXN0X3Nsb3QgKnNsb3Q7Cit9OworCisvKgorICogQSBjYWxsYmFjayBmb3IgQ1VSTE9QVF9XUklURUZVTkNUSU9OLiBUaGUgcmV0dXJuIHZhbHVlIGlzIHRoZSBieXRlcyBjb25zdW1lZAorICogZnJvbSBwdHIuCisgKi8KIHN0YXRpYyBzaXplX3QgcnBjX2luKGNoYXIgKnB0ciwgc2l6ZV90IGVsdHNpemUsCiAJCXNpemVfdCBubWVtYiwgdm9pZCAqYnVmZmVyXykKIHsKIAlzaXplX3Qgc2l6ZSA9IGVsdHNpemUgKiBubWVtYjsKLQlzdHJ1Y3QgcnBjX3N0YXRlICpycGMgPSBidWZmZXJfOworCXN0cnVjdCBycGNfaW5fZGF0YSAqZGF0YSA9IGJ1ZmZlcl87CisJbG9uZyByZXNwb25zZV9jb2RlOworCisJaWYgKGN1cmxfZWFzeV9nZXRpbmZvKGRhdGEtPnNsb3QtPmN1cmwsIENVUkxJTkZPX1JFU1BPTlNFX0NPREUsCisJCQkgICAgICAmcmVzcG9uc2VfY29kZSkgIT0gQ1VSTEVfT0spCisJCXJldHVybiBzaXplOworCWlmIChyZXNwb25zZV9jb2RlID49IDMwMCkKKwkJcmV0dXJuIHNpemU7CiAJaWYgKHNpemUpCi0JCXJwYy0+YW55X3dyaXR0ZW4gPSAxOwotCXdyaXRlX29yX2RpZShycGMtPmluLCBwdHIsIHNpemUpOworCQlkYXRhLT5ycGMtPmFueV93cml0dGVuID0gMTsKKwl3cml0ZV9vcl9kaWUoZGF0YS0+cnBjLT5pbiwgcHRyLCBzaXplKTsKIAlyZXR1cm4gc2l6ZTsKIH0KIApAQCAtNTgxLDcgKzczMCw3IEBACiAJCQkJc3RyYnVmX2FkZHN0cigmbXNnLCBjdXJsX2Vycm9yc3RyKTsKIAkJCX0KIAkJfQotCQllcnJvcigiUlBDIGZhaWxlZDsgJXMiLCBtc2cuYnVmKTsKKwkJZXJyb3IoXygiUlBDIGZhaWxlZDsgJXMiKSwgbXNnLmJ1Zik7CiAJCXN0cmJ1Zl9yZWxlYXNlKCZtc2cpOwogCX0KIApAQCAtNjE3LDE0ICs3NjYsMTkgQEAKIAlyZXR1cm4gZXJyOwogfQogCi1zdGF0aWMgY3VybF9vZmZfdCB4Y3VybF9vZmZfdChzaXplX3QgbGVuKSB7CitzdGF0aWMgY3VybF9vZmZfdCB4Y3VybF9vZmZfdChzaXplX3QgbGVuKQorewogCXVpbnRtYXhfdCBzaXplID0gbGVuOwogCWlmIChzaXplID4gbWF4aW11bV9zaWduZWRfdmFsdWVfb2ZfdHlwZShjdXJsX29mZl90KSkKLQkJZGllKCJjYW5ub3QgaGFuZGxlIHB1c2hlcyB0aGlzIGJpZyIpOworCQlkaWUoXygiY2Fubm90IGhhbmRsZSBwdXNoZXMgdGhpcyBiaWciKSk7CiAJcmV0dXJuIChjdXJsX29mZl90KXNpemU7CiB9CiAKLXN0YXRpYyBpbnQgcG9zdF9ycGMoc3RydWN0IHJwY19zdGF0ZSAqcnBjKQorLyoKKyAqIElmIGZsdXNoX3JlY2VpdmVkIGlzIHRydWUsIGRvIG5vdCBhdHRlbXB0IHRvIHJlYWQgYW55IG1vcmU7IGp1c3QgdXNlIHdoYXQncworICogaW4gcnBjLT5idWYuCisgKi8KK3N0YXRpYyBpbnQgcG9zdF9ycGMoc3RydWN0IHJwY19zdGF0ZSAqcnBjLCBpbnQgZmx1c2hfcmVjZWl2ZWQpCiB7CiAJc3RydWN0IGFjdGl2ZV9yZXF1ZXN0X3Nsb3QgKnNsb3Q7CiAJc3RydWN0IGN1cmxfc2xpc3QgKmhlYWRlcnMgPSBodHRwX2NvcHlfZGVmYXVsdF9oZWFkZXJzKCk7CkBAIC02MzMsMjYgKzc4NywyNSBAQAogCXNpemVfdCBnemlwX3NpemUgPSAwOwogCWludCBlcnIsIGxhcmdlX3JlcXVlc3QgPSAwOwogCWludCBuZWVkc18xMDBfY29udGludWUgPSAwOworCXN0cnVjdCBycGNfaW5fZGF0YSBycGNfaW5fZGF0YTsKIAogCS8qIFRyeSB0byBsb2FkIHRoZSBlbnRpcmUgcmVxdWVzdCwgaWYgd2UgY2FuIGZpdCBpdCBpbnRvIHRoZQogCSAqIGFsbG9jYXRlZCBidWZmZXIgc3BhY2Ugd2UgY2FuIHVzZSBIVFRQLzEuMCBhbmQgYXZvaWQgdGhlCiAJICogY2h1bmtlZCBlbmNvZGluZyBtZXNzLgogCSAqLwotCXdoaWxlICgxKSB7Ci0JCXNpemVfdCBsZWZ0ID0gcnBjLT5hbGxvYyAtIHJwYy0+bGVuOwotCQljaGFyICpidWYgPSBycGMtPmJ1ZiArIHJwYy0+bGVuOwotCQlpbnQgbjsKKwlpZiAoIWZsdXNoX3JlY2VpdmVkKSB7CisJCXdoaWxlICgxKSB7CisJCQlzaXplX3QgbjsKKwkJCWVudW0gcGFja2V0X3JlYWRfc3RhdHVzIHN0YXR1czsKIAotCQlpZiAobGVmdCA8IExBUkdFX1BBQ0tFVF9NQVgpIHsKLQkJCWxhcmdlX3JlcXVlc3QgPSAxOwotCQkJdXNlX2d6aXAgPSAwOwotCQkJYnJlYWs7CisJCQlpZiAoIXJwY19yZWFkX2Zyb21fb3V0KHJwYywgMCwgJm4sICZzdGF0dXMpKSB7CisJCQkJbGFyZ2VfcmVxdWVzdCA9IDE7CisJCQkJdXNlX2d6aXAgPSAwOworCQkJCWJyZWFrOworCQkJfQorCQkJaWYgKHN0YXR1cyA9PSBQQUNLRVRfUkVBRF9GTFVTSCkKKwkJCQlicmVhazsKIAkJfQotCi0JCW4gPSBwYWNrZXRfcmVhZChycGMtPm91dCwgTlVMTCwgTlVMTCwgYnVmLCBsZWZ0LCAwKTsKLQkJaWYgKCFuKQotCQkJYnJlYWs7Ci0JCXJwYy0+bGVuICs9IG47CiAJfQogCiAJaWYgKGxhcmdlX3JlcXVlc3QpIHsKQEAgLTczMiwxMSArODg1LDExIEBACiAKIAkJcmV0ID0gZ2l0X2RlZmxhdGUoJnN0cmVhbSwgWl9GSU5JU0gpOwogCQlpZiAocmV0ICE9IFpfU1RSRUFNX0VORCkKLQkJCWRpZSgiY2Fubm90IGRlZmxhdGUgcmVxdWVzdDsgemxpYiBkZWZsYXRlIGVycm9yICVkIiwgcmV0KTsKKwkJCWRpZShfKCJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGRlZmxhdGUgZXJyb3IgJWQiKSwgcmV0KTsKIAogCQlyZXQgPSBnaXRfZGVmbGF0ZV9lbmRfZ2VudGx5KCZzdHJlYW0pOwogCQlpZiAocmV0ICE9IFpfT0spCi0JCQlkaWUoImNhbm5vdCBkZWZsYXRlIHJlcXVlc3Q7IHpsaWIgZW5kIGVycm9yICVkIiwgcmV0KTsKKwkJCWRpZShfKCJjYW5ub3QgZGVmbGF0ZSByZXF1ZXN0OyB6bGliIGVuZCBlcnJvciAlZCIpLCByZXQpOwogCiAJCWd6aXBfc2l6ZSA9IHN0cmVhbS50b3RhbF9vdXQ7CiAKQEAgLTc2NSw3ICs5MTgsMTAgQEAKIAogCWN1cmxfZWFzeV9zZXRvcHQoc2xvdC0+Y3VybCwgQ1VSTE9QVF9IVFRQSEVBREVSLCBoZWFkZXJzKTsKIAljdXJsX2Vhc3lfc2V0b3B0KHNsb3QtPmN1cmwsIENVUkxPUFRfV1JJVEVGVU5DVElPTiwgcnBjX2luKTsKLQljdXJsX2Vhc3lfc2V0b3B0KHNsb3QtPmN1cmwsIENVUkxPUFRfRklMRSwgcnBjKTsKKwlycGNfaW5fZGF0YS5ycGMgPSBycGM7CisJcnBjX2luX2RhdGEuc2xvdCA9IHNsb3Q7CisJY3VybF9lYXN5X3NldG9wdChzbG90LT5jdXJsLCBDVVJMT1BUX0ZJTEUsICZycGNfaW5fZGF0YSk7CisJY3VybF9lYXN5X3NldG9wdChzbG90LT5jdXJsLCBDVVJMT1BUX0ZBSUxPTkVSUk9SLCAwKTsKIAogCiAJcnBjLT5hbnlfd3JpdHRlbiA9IDA7CkBAIC03ODUsMjIgKzk0MSwyMiBAQAogCXJldHVybiBlcnI7CiB9CiAKLXN0YXRpYyBpbnQgcnBjX3NlcnZpY2Uoc3RydWN0IHJwY19zdGF0ZSAqcnBjLCBzdHJ1Y3QgZGlzY292ZXJ5ICpoZWFkcykKK3N0YXRpYyBpbnQgcnBjX3NlcnZpY2Uoc3RydWN0IHJwY19zdGF0ZSAqcnBjLCBzdHJ1Y3QgZGlzY292ZXJ5ICpoZWFkcywKKwkJICAgICAgIGNvbnN0IGNoYXIgKipjbGllbnRfYXJndiwgY29uc3Qgc3RydWN0IHN0cmJ1ZiAqcHJlYW1ibGUsCisJCSAgICAgICBzdHJ1Y3Qgc3RyYnVmICpycGNfcmVzdWx0KQogewogCWNvbnN0IGNoYXIgKnN2YyA9IHJwYy0+c2VydmljZV9uYW1lOwogCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7Ci0Jc3RydWN0IHN0cmJ1ZiAqcHJlYW1ibGUgPSBycGMtPnN0ZGluX3ByZWFtYmxlOwogCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNsaWVudCA9IENISUxEX1BST0NFU1NfSU5JVDsKIAlpbnQgZXJyID0gMDsKIAogCWNsaWVudC5pbiA9IC0xOwogCWNsaWVudC5vdXQgPSAtMTsKIAljbGllbnQuZ2l0X2NtZCA9IDE7Ci0JY2xpZW50LmFyZ3YgPSBycGMtPmFyZ3Y7CisJY2xpZW50LmFyZ3YgPSBjbGllbnRfYXJndjsKIAlpZiAoc3RhcnRfY29tbWFuZCgmY2xpZW50KSkKIAkJZXhpdCgxKTsKLQlpZiAocHJlYW1ibGUpCi0JCXdyaXRlX29yX2RpZShjbGllbnQuaW4sIHByZWFtYmxlLT5idWYsIHByZWFtYmxlLT5sZW4pOworCXdyaXRlX29yX2RpZShjbGllbnQuaW4sIHByZWFtYmxlLT5idWYsIHByZWFtYmxlLT5sZW4pOwogCWlmIChoZWFkcykKIAkJd3JpdGVfb3JfZGllKGNsaWVudC5pbiwgaGVhZHMtPmJ1ZiwgaGVhZHMtPmxlbik7CiAKQEAgLTgwOCw3ICs5NjQsNiBAQAogCXJwYy0+YnVmID0geG1hbGxvYyhycGMtPmFsbG9jKTsKIAlycGMtPmluID0gY2xpZW50LmluOwogCXJwYy0+b3V0ID0gY2xpZW50Lm91dDsKLQlzdHJidWZfaW5pdCgmcnBjLT5yZXN1bHQsIDApOwogCiAJc3RyYnVmX2FkZGYoJmJ1ZiwgIiVzJXMiLCB1cmwuYnVmLCBzdmMpOwogCXJwYy0+c2VydmljZV91cmwgPSBzdHJidWZfZGV0YWNoKCZidWYsIE5VTEwpOwpAQCAtODMwLDEzICs5ODUsMTMgQEAKIAkJCWJyZWFrOwogCQlycGMtPnBvcyA9IDA7CiAJCXJwYy0+bGVuID0gbjsKLQkJZXJyIHw9IHBvc3RfcnBjKHJwYyk7CisJCWVyciB8PSBwb3N0X3JwYyhycGMsIDApOwogCX0KIAogCWNsb3NlKGNsaWVudC5pbik7CiAJY2xpZW50LmluID0gLTE7CiAJaWYgKCFlcnIpIHsKLQkJc3RyYnVmX3JlYWQoJnJwYy0+cmVzdWx0LCBjbGllbnQub3V0LCAwKTsKKwkJc3RyYnVmX3JlYWQocnBjX3Jlc3VsdCwgY2xpZW50Lm91dCwgMCk7CiAJfSBlbHNlIHsKIAkJY2hhciBidWZbNDA5Nl07CiAJCWZvciAoOzspCkBAIC04NjUsMTIgKzEwMjAsMTMgQEAKIAogCUFMTE9DX0FSUkFZKHRhcmdldHMsIG5yX2hlYWRzKTsKIAlpZiAob3B0aW9ucy5kZXB0aCB8fCBvcHRpb25zLmRlZXBlbl9zaW5jZSkKLQkJZGllKCJkdW1iIGh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgc2hhbGxvdyBjYXBhYmlsaXRpZXMiKTsKKwkJZGllKF8oImR1bWIgaHR0cCB0cmFuc3BvcnQgZG9lcyBub3Qgc3VwcG9ydCBzaGFsbG93IGNhcGFiaWxpdGllcyIpKTsKIAlmb3IgKGkgPSAwOyBpIDwgbnJfaGVhZHM7IGkrKykKIAkJdGFyZ2V0c1tpXSA9IHhzdHJkdXAob2lkX3RvX2hleCgmdG9fZmV0Y2hbaV0tPm9sZF9vaWQpKTsKIAogCXdhbGtlciA9IGdldF9odHRwX3dhbGtlcih1cmwuYnVmKTsKIAl3YWxrZXItPmdldF92ZXJib3NlbHkgPSBvcHRpb25zLnZlcmJvc2l0eSA+PSAzOworCXdhbGtlci0+Z2V0X3Byb2dyZXNzID0gb3B0aW9ucy5wcm9ncmVzczsKIAl3YWxrZXItPmdldF9yZWNvdmVyID0gMDsKIAlyZXQgPSB3YWxrZXJfZmV0Y2god2Fsa2VyLCBucl9oZWFkcywgdGFyZ2V0cywgTlVMTCwgTlVMTCk7CiAJd2Fsa2VyX2ZyZWUod2Fsa2VyKTsKQEAgLTg3OSw3ICsxMDM1LDcgQEAKIAkJZnJlZSh0YXJnZXRzW2ldKTsKIAlmcmVlKHRhcmdldHMpOwogCi0JcmV0dXJuIHJldCA/IGVycm9yKCJmZXRjaCBmYWlsZWQuIikgOiAwOworCXJldHVybiByZXQgPyBlcnJvcihfKCJmZXRjaCBmYWlsZWQuIikpIDogMDsKIH0KIAogc3RhdGljIGludCBmZXRjaF9naXQoc3RydWN0IGRpc2NvdmVyeSAqaGVhZHMsCkBAIC04ODksNiArMTA0NSw3IEBACiAJc3RydWN0IHN0cmJ1ZiBwcmVhbWJsZSA9IFNUUkJVRl9JTklUOwogCWludCBpLCBlcnI7CiAJc3RydWN0IGFyZ3ZfYXJyYXkgYXJncyA9IEFSR1ZfQVJSQVlfSU5JVDsKKwlzdHJ1Y3Qgc3RyYnVmIHJwY19yZXN1bHQgPSBTVFJCVUZfSU5JVDsKIAogCWFyZ3ZfYXJyYXlfcHVzaGwoJmFyZ3MsICJmZXRjaC1wYWNrIiwgIi0tc3RhdGVsZXNzLXJwYyIsCiAJCQkgIi0tc3RkaW4iLCAiLS1sb2NrLXBhY2siLCBOVUxMKTsKQEAgLTkyNiw3ICsxMDgzLDcgQEAKIAlmb3IgKGkgPSAwOyBpIDwgbnJfaGVhZHM7IGkrKykgewogCQlzdHJ1Y3QgcmVmICpyZWYgPSB0b19mZXRjaFtpXTsKIAkJaWYgKCEqcmVmLT5uYW1lKQotCQkJZGllKCJjYW5ub3QgZmV0Y2ggYnkgc2hhMSBvdmVyIHNtYXJ0IGh0dHAiKTsKKwkJCWRpZShfKCJjYW5ub3QgZmV0Y2ggYnkgc2hhMSBvdmVyIHNtYXJ0IGh0dHAiKSk7CiAJCXBhY2tldF9idWZfd3JpdGUoJnByZWFtYmxlLCAiJXMgJXNcbiIsCiAJCQkJIG9pZF90b19oZXgoJnJlZi0+b2xkX29pZCksIHJlZi0+bmFtZSk7CiAJfQpAQCAtOTM0LDE0ICsxMDkxLDEyIEBACiAKIAltZW1zZXQoJnJwYywgMCwgc2l6ZW9mKHJwYykpOwogCXJwYy5zZXJ2aWNlX25hbWUgPSAiZ2l0LXVwbG9hZC1wYWNrIiwKLQlycGMuYXJndiA9IGFyZ3MuYXJndjsKLQlycGMuc3RkaW5fcHJlYW1ibGUgPSAmcHJlYW1ibGU7CiAJcnBjLmd6aXBfcmVxdWVzdCA9IDE7CiAKLQllcnIgPSBycGNfc2VydmljZSgmcnBjLCBoZWFkcyk7Ci0JaWYgKHJwYy5yZXN1bHQubGVuKQotCQl3cml0ZV9vcl9kaWUoMSwgcnBjLnJlc3VsdC5idWYsIHJwYy5yZXN1bHQubGVuKTsKLQlzdHJidWZfcmVsZWFzZSgmcnBjLnJlc3VsdCk7CisJZXJyID0gcnBjX3NlcnZpY2UoJnJwYywgaGVhZHMsIGFyZ3MuYXJndiwgJnByZWFtYmxlLCAmcnBjX3Jlc3VsdCk7CisJaWYgKHJwY19yZXN1bHQubGVuKQorCQl3cml0ZV9vcl9kaWUoMSwgcnBjX3Jlc3VsdC5idWYsIHJwY19yZXN1bHQubGVuKTsKKwlzdHJidWZfcmVsZWFzZSgmcnBjX3Jlc3VsdCk7CiAJc3RyYnVmX3JlbGVhc2UoJnByZWFtYmxlKTsKIAlhcmd2X2FycmF5X2NsZWFyKCZhcmdzKTsKIAlyZXR1cm4gZXJyOwpAQCAtOTY5LDE1ICsxMTI0LDE2IEBACiAJCQljb25zdCBjaGFyICpuYW1lOwogCQkJc3RydWN0IHJlZiAqcmVmOwogCQkJc3RydWN0IG9iamVjdF9pZCBvbGRfb2lkOworCQkJY29uc3QgY2hhciAqcTsKIAotCQkJaWYgKGdldF9vaWRfaGV4KHAsICZvbGRfb2lkKSkKLQkJCQlkaWUoInByb3RvY29sIGVycm9yOiBleHBlY3RlZCBzaGEvcmVmLCBnb3QgJXMnIiwgcCk7Ci0JCQlpZiAocFtHSVRfU0hBMV9IRVhTWl0gPT0gJyAnKQotCQkJCW5hbWUgPSBwICsgR0lUX1NIQTFfSEVYU1ogKyAxOwotCQkJZWxzZSBpZiAoIXBbR0lUX1NIQTFfSEVYU1pdKQorCQkJaWYgKHBhcnNlX29pZF9oZXgocCwgJm9sZF9vaWQsICZxKSkKKwkJCQlkaWUoXygicHJvdG9jb2wgZXJyb3I6IGV4cGVjdGVkIHNoYS9yZWYsIGdvdCAnJXMnIiksIHApOworCQkJaWYgKCpxID09ICcgJykKKwkJCQluYW1lID0gcSArIDE7CisJCQllbHNlIGlmICghKnEpCiAJCQkJbmFtZSA9ICIiOwogCQkJZWxzZQotCQkJCWRpZSgicHJvdG9jb2wgZXJyb3I6IGV4cGVjdGVkIHNoYS9yZWYsIGdvdCAlcyciLCBwKTsKKwkJCQlkaWUoXygicHJvdG9jb2wgZXJyb3I6IGV4cGVjdGVkIHNoYS9yZWYsIGdvdCAnJXMnIiksIHApOwogCiAJCQlyZWYgPSBhbGxvY19yZWYobmFtZSk7CiAJCQlvaWRjcHkoJnJlZi0+b2xkX29pZCwgJm9sZF9vaWQpOwpAQCAtOTg5LDcgKzExNDUsNyBAQAogCQkJdG9fZmV0Y2hbbnJfaGVhZHMrK10gPSByZWY7CiAJCX0KIAkJZWxzZQotCQkJZGllKCJodHRwIHRyYW5zcG9ydCBkb2VzIG5vdCBzdXBwb3J0ICVzIiwgYnVmLT5idWYpOworCQkJZGllKF8oImh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgJXMiKSwgYnVmLT5idWYpOwogCiAJCXN0cmJ1Zl9yZXNldChidWYpOwogCQlpZiAoc3RyYnVmX2dldGxpbmVfbGYoYnVmLCBzdGRpbikgPT0gRU9GKQpAQCAtMTAwOCw3ICsxMTY0LDcgQEAKIAlzdHJidWZfcmVzZXQoYnVmKTsKIH0KIAotc3RhdGljIGludCBwdXNoX2RhdihpbnQgbnJfc3BlYywgY2hhciAqKnNwZWNzKQorc3RhdGljIGludCBwdXNoX2RhdihpbnQgbnJfc3BlYywgY29uc3QgY2hhciAqKnNwZWNzKQogewogCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNoaWxkID0gQ0hJTERfUFJPQ0VTU19JTklUOwogCXNpemVfdCBpOwpAQCAtMTAyNSwxNyArMTE4MSwxOCBAQAogCQlhcmd2X2FycmF5X3B1c2goJmNoaWxkLmFyZ3MsIHNwZWNzW2ldKTsKIAogCWlmIChydW5fY29tbWFuZCgmY2hpbGQpKQotCQlkaWUoImdpdC1odHRwLXB1c2ggZmFpbGVkIik7CisJCWRpZShfKCJnaXQtaHR0cC1wdXNoIGZhaWxlZCIpKTsKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBwdXNoX2dpdChzdHJ1Y3QgZGlzY292ZXJ5ICpoZWFkcywgaW50IG5yX3NwZWMsIGNoYXIgKipzcGVjcykKK3N0YXRpYyBpbnQgcHVzaF9naXQoc3RydWN0IGRpc2NvdmVyeSAqaGVhZHMsIGludCBucl9zcGVjLCBjb25zdCBjaGFyICoqc3BlY3MpCiB7CiAJc3RydWN0IHJwY19zdGF0ZSBycGM7CiAJaW50IGksIGVycjsKIAlzdHJ1Y3QgYXJndl9hcnJheSBhcmdzOwogCXN0cnVjdCBzdHJpbmdfbGlzdF9pdGVtICpjYXNfb3B0aW9uOwogCXN0cnVjdCBzdHJidWYgcHJlYW1ibGUgPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3Qgc3RyYnVmIHJwY19yZXN1bHQgPSBTVFJCVUZfSU5JVDsKIAogCWFyZ3ZfYXJyYXlfaW5pdCgmYXJncyk7CiAJYXJndl9hcnJheV9wdXNobCgmYXJncywgInNlbmQtcGFjayIsICItLXN0YXRlbGVzcy1ycGMiLCAiLS1oZWxwZXItc3RhdHVzIiwKQEAgLTEwNDksNiArMTIwNiw4IEBACiAJCWFyZ3ZfYXJyYXlfcHVzaCgmYXJncywgIi0tc2lnbmVkPXllcyIpOwogCWVsc2UgaWYgKG9wdGlvbnMucHVzaF9jZXJ0ID09IFNFTkRfUEFDS19QVVNIX0NFUlRfSUZfQVNLRUQpCiAJCWFyZ3ZfYXJyYXlfcHVzaCgmYXJncywgIi0tc2lnbmVkPWlmLWFza2VkIik7CisJaWYgKG9wdGlvbnMuYXRvbWljKQorCQlhcmd2X2FycmF5X3B1c2goJmFyZ3MsICItLWF0b21pYyIpOwogCWlmIChvcHRpb25zLnZlcmJvc2l0eSA9PSAwKQogCQlhcmd2X2FycmF5X3B1c2goJmFyZ3MsICItLXF1aWV0Iik7CiAJZWxzZSBpZiAob3B0aW9ucy52ZXJib3NpdHkgPiAxKQpAQCAtMTA2OCwxOSArMTIyNywxNyBAQAogCiAJbWVtc2V0KCZycGMsIDAsIHNpemVvZihycGMpKTsKIAlycGMuc2VydmljZV9uYW1lID0gImdpdC1yZWNlaXZlLXBhY2siLAotCXJwYy5hcmd2ID0gYXJncy5hcmd2OwotCXJwYy5zdGRpbl9wcmVhbWJsZSA9ICZwcmVhbWJsZTsKIAotCWVyciA9IHJwY19zZXJ2aWNlKCZycGMsIGhlYWRzKTsKLQlpZiAocnBjLnJlc3VsdC5sZW4pCi0JCXdyaXRlX29yX2RpZSgxLCBycGMucmVzdWx0LmJ1ZiwgcnBjLnJlc3VsdC5sZW4pOwotCXN0cmJ1Zl9yZWxlYXNlKCZycGMucmVzdWx0KTsKKwllcnIgPSBycGNfc2VydmljZSgmcnBjLCBoZWFkcywgYXJncy5hcmd2LCAmcHJlYW1ibGUsICZycGNfcmVzdWx0KTsKKwlpZiAocnBjX3Jlc3VsdC5sZW4pCisJCXdyaXRlX29yX2RpZSgxLCBycGNfcmVzdWx0LmJ1ZiwgcnBjX3Jlc3VsdC5sZW4pOworCXN0cmJ1Zl9yZWxlYXNlKCZycGNfcmVzdWx0KTsKIAlzdHJidWZfcmVsZWFzZSgmcHJlYW1ibGUpOwogCWFyZ3ZfYXJyYXlfY2xlYXIoJmFyZ3MpOwogCXJldHVybiBlcnI7CiB9CiAKLXN0YXRpYyBpbnQgcHVzaChpbnQgbnJfc3BlYywgY2hhciAqKnNwZWNzKQorc3RhdGljIGludCBwdXNoKGludCBucl9zcGVjLCBjb25zdCBjaGFyICoqc3BlY3MpCiB7CiAJc3RydWN0IGRpc2NvdmVyeSAqaGVhZHMgPSBkaXNjb3Zlcl9yZWZzKCJnaXQtcmVjZWl2ZS1wYWNrIiwgMSk7CiAJaW50IHJldDsKQEAgLTEwOTUsMTYgKzEyNTIsMTUgQEAKIAogc3RhdGljIHZvaWQgcGFyc2VfcHVzaChzdHJ1Y3Qgc3RyYnVmICpidWYpCiB7Ci0JY2hhciAqKnNwZWNzID0gTlVMTDsKLQlpbnQgYWxsb2Nfc3BlYyA9IDAsIG5yX3NwZWMgPSAwLCBpLCByZXQ7CisJc3RydWN0IGFyZ3ZfYXJyYXkgc3BlY3MgPSBBUkdWX0FSUkFZX0lOSVQ7CisJaW50IHJldDsKIAogCWRvIHsKLQkJaWYgKHN0YXJ0c193aXRoKGJ1Zi0+YnVmLCAicHVzaCAiKSkgewotCQkJQUxMT0NfR1JPVyhzcGVjcywgbnJfc3BlYyArIDEsIGFsbG9jX3NwZWMpOwotCQkJc3BlY3NbbnJfc3BlYysrXSA9IHhzdHJkdXAoYnVmLT5idWYgKyA1KTsKLQkJfQorCQljb25zdCBjaGFyICphcmc7CisJCWlmIChza2lwX3ByZWZpeChidWYtPmJ1ZiwgInB1c2ggIiwgJmFyZykpCisJCQlhcmd2X2FycmF5X3B1c2goJnNwZWNzLCBhcmcpOwogCQllbHNlCi0JCQlkaWUoImh0dHAgdHJhbnNwb3J0IGRvZXMgbm90IHN1cHBvcnQgJXMiLCBidWYtPmJ1Zik7CisJCQlkaWUoXygiaHR0cCB0cmFuc3BvcnQgZG9lcyBub3Qgc3VwcG9ydCAlcyIpLCBidWYtPmJ1Zik7CiAKIAkJc3RyYnVmX3Jlc2V0KGJ1Zik7CiAJCWlmIChzdHJidWZfZ2V0bGluZV9sZihidWYsIHN0ZGluKSA9PSBFT0YpCkBAIC0xMTEzLDcgKzEyNjksNyBAQAogCQkJYnJlYWs7CiAJfSB3aGlsZSAoMSk7CiAKLQlyZXQgPSBwdXNoKG5yX3NwZWMsIHNwZWNzKTsKKwlyZXQgPSBwdXNoKHNwZWNzLmFyZ2MsIHNwZWNzLmFyZ3YpOwogCXByaW50ZigiXG4iKTsKIAlmZmx1c2goc3Rkb3V0KTsKIApAQCAtMTEyMSwxNjkgKzEyNzcsMTQgQEAKIAkJZXhpdCgxMjgpOyAvKiBlcnJvciBhbHJlYWR5IHJlcG9ydGVkICovCiAKICBmcmVlX3NwZWNzOgotCWZvciAoaSA9IDA7IGkgPCBucl9zcGVjOyBpKyspCi0JCWZyZWUoc3BlY3NbaV0pOwotCWZyZWUoc3BlY3MpOwotfQotCi0vKgotICogVXNlZCB0byByZXByZXNlbnQgdGhlIHN0YXRlIG9mIGEgY29ubmVjdGlvbiB0byBhbiBIVFRQIHNlcnZlciB3aGVuCi0gKiBjb21tdW5pY2F0aW5nIHVzaW5nIGdpdCdzIHdpcmUtcHJvdG9jb2wgdmVyc2lvbiAyLgotICovCi1zdHJ1Y3QgcHJveHlfc3RhdGUgewotCWNoYXIgKnNlcnZpY2VfbmFtZTsKLQljaGFyICpzZXJ2aWNlX3VybDsKLQlzdHJ1Y3QgY3VybF9zbGlzdCAqaGVhZGVyczsKLQlzdHJ1Y3Qgc3RyYnVmIHJlcXVlc3RfYnVmZmVyOwotCWludCBpbjsKLQlpbnQgb3V0OwotCXN0cnVjdCBwYWNrZXRfcmVhZGVyIHJlYWRlcjsKLQlzaXplX3QgcG9zOwotCWludCBzZWVuX2ZsdXNoOwotfTsKLQotc3RhdGljIHZvaWQgcHJveHlfc3RhdGVfaW5pdChzdHJ1Y3QgcHJveHlfc3RhdGUgKnAsIGNvbnN0IGNoYXIgKnNlcnZpY2VfbmFtZSwKLQkJCSAgICAgZW51bSBwcm90b2NvbF92ZXJzaW9uIHZlcnNpb24pCi17Ci0Jc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKLQotCW1lbXNldChwLCAwLCBzaXplb2YoKnApKTsKLQlwLT5zZXJ2aWNlX25hbWUgPSB4c3RyZHVwKHNlcnZpY2VfbmFtZSk7Ci0KLQlwLT5pbiA9IDA7Ci0JcC0+b3V0ID0gMTsKLQlzdHJidWZfaW5pdCgmcC0+cmVxdWVzdF9idWZmZXIsIDApOwotCi0Jc3RyYnVmX2FkZGYoJmJ1ZiwgIiVzJXMiLCB1cmwuYnVmLCBwLT5zZXJ2aWNlX25hbWUpOwotCXAtPnNlcnZpY2VfdXJsID0gc3RyYnVmX2RldGFjaCgmYnVmLCBOVUxMKTsKLQotCXAtPmhlYWRlcnMgPSBodHRwX2NvcHlfZGVmYXVsdF9oZWFkZXJzKCk7Ci0KLQlzdHJidWZfYWRkZigmYnVmLCAiQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi94LSVzLXJlcXVlc3QiLCBwLT5zZXJ2aWNlX25hbWUpOwotCXAtPmhlYWRlcnMgPSBjdXJsX3NsaXN0X2FwcGVuZChwLT5oZWFkZXJzLCBidWYuYnVmKTsKLQlzdHJidWZfcmVzZXQoJmJ1Zik7Ci0KLQlzdHJidWZfYWRkZigmYnVmLCAiQWNjZXB0OiBhcHBsaWNhdGlvbi94LSVzLXJlc3VsdCIsIHAtPnNlcnZpY2VfbmFtZSk7Ci0JcC0+aGVhZGVycyA9IGN1cmxfc2xpc3RfYXBwZW5kKHAtPmhlYWRlcnMsIGJ1Zi5idWYpOwotCXN0cmJ1Zl9yZXNldCgmYnVmKTsKLQotCXAtPmhlYWRlcnMgPSBjdXJsX3NsaXN0X2FwcGVuZChwLT5oZWFkZXJzLCAiVHJhbnNmZXItRW5jb2Rpbmc6IGNodW5rZWQiKTsKLQotCS8qIEFkZCB0aGUgR2l0LVByb3RvY29sIGhlYWRlciAqLwotCWlmIChnZXRfcHJvdG9jb2xfaHR0cF9oZWFkZXIodmVyc2lvbiwgJmJ1ZikpCi0JCXAtPmhlYWRlcnMgPSBjdXJsX3NsaXN0X2FwcGVuZChwLT5oZWFkZXJzLCBidWYuYnVmKTsKLQotCXBhY2tldF9yZWFkZXJfaW5pdCgmcC0+cmVhZGVyLCBwLT5pbiwgTlVMTCwgMCwKLQkJCSAgIFBBQ0tFVF9SRUFEX0dFTlRMRV9PTl9FT0YpOwotCi0Jc3RyYnVmX3JlbGVhc2UoJmJ1Zik7Ci19Ci0KLXN0YXRpYyB2b2lkIHByb3h5X3N0YXRlX2NsZWFyKHN0cnVjdCBwcm94eV9zdGF0ZSAqcCkKLXsKLQlmcmVlKHAtPnNlcnZpY2VfbmFtZSk7Ci0JZnJlZShwLT5zZXJ2aWNlX3VybCk7Ci0JY3VybF9zbGlzdF9mcmVlX2FsbChwLT5oZWFkZXJzKTsKLQlzdHJidWZfcmVsZWFzZSgmcC0+cmVxdWVzdF9idWZmZXIpOwotfQotCi0vKgotICogQ1VSTE9QVF9SRUFERlVOQ1RJT04gY2FsbGJhY2sgZnVuY3Rpb24uCi0gKiBBdHRlbXB0cyB0byBjb3B5IG92ZXIgYSBzaW5nbGUgcGFja2V0LWxpbmUgYXQgYSB0aW1lIGludG8gdGhlCi0gKiBjdXJsIHByb3ZpZGVkIGJ1ZmZlci4KLSAqLwotc3RhdGljIHNpemVfdCBwcm94eV9pbihjaGFyICpidWZmZXIsIHNpemVfdCBlbHRzaXplLAotCQkgICAgICAgc2l6ZV90IG5tZW1iLCB2b2lkICp1c2VyZGF0YSkKLXsKLQlzaXplX3QgbWF4OwotCXN0cnVjdCBwcm94eV9zdGF0ZSAqcCA9IHVzZXJkYXRhOwotCXNpemVfdCBhdmFpbCA9IHAtPnJlcXVlc3RfYnVmZmVyLmxlbiAtIHAtPnBvczsKLQotCi0JaWYgKGVsdHNpemUgIT0gMSkKLQkJQlVHKCJjdXJsIHJlYWQgY2FsbGJhY2sgY2FsbGVkIHdpdGggc2l6ZSA9ICUiUFJJdU1BWCIgIT0gMSIsCi0JCSAgICAodWludG1heF90KWVsdHNpemUpOwotCW1heCA9IG5tZW1iOwotCi0JaWYgKCFhdmFpbCkgewotCQlpZiAocC0+c2Vlbl9mbHVzaCkgewotCQkJcC0+c2Vlbl9mbHVzaCA9IDA7Ci0JCQlyZXR1cm4gMDsKLQkJfQotCi0JCXN0cmJ1Zl9yZXNldCgmcC0+cmVxdWVzdF9idWZmZXIpOwotCQlzd2l0Y2ggKHBhY2tldF9yZWFkZXJfcmVhZCgmcC0+cmVhZGVyKSkgewotCQljYXNlIFBBQ0tFVF9SRUFEX0VPRjoKLQkJCWRpZSgidW5leHBlY3RlZCBFT0Ygd2hlbiByZWFkaW5nIGZyb20gcGFyZW50IHByb2Nlc3MiKTsKLQkJY2FzZSBQQUNLRVRfUkVBRF9OT1JNQUw6Ci0JCQlwYWNrZXRfYnVmX3dyaXRlX2xlbigmcC0+cmVxdWVzdF9idWZmZXIsIHAtPnJlYWRlci5saW5lLAotCQkJCQkgICAgIHAtPnJlYWRlci5wa3RsZW4pOwotCQkJYnJlYWs7Ci0JCWNhc2UgUEFDS0VUX1JFQURfREVMSU06Ci0JCQlwYWNrZXRfYnVmX2RlbGltKCZwLT5yZXF1ZXN0X2J1ZmZlcik7Ci0JCQlicmVhazsKLQkJY2FzZSBQQUNLRVRfUkVBRF9GTFVTSDoKLQkJCXBhY2tldF9idWZfZmx1c2goJnAtPnJlcXVlc3RfYnVmZmVyKTsKLQkJCXAtPnNlZW5fZmx1c2ggPSAxOwotCQkJYnJlYWs7Ci0JCX0KLQkJcC0+cG9zID0gMDsKLQkJYXZhaWwgPSBwLT5yZXF1ZXN0X2J1ZmZlci5sZW47Ci0JfQotCi0JaWYgKG1heCA8IGF2YWlsKQotCQlhdmFpbCA9IG1heDsKLQltZW1jcHkoYnVmZmVyLCBwLT5yZXF1ZXN0X2J1ZmZlci5idWYgKyBwLT5wb3MsIGF2YWlsKTsKLQlwLT5wb3MgKz0gYXZhaWw7Ci0JcmV0dXJuIGF2YWlsOwotfQotCi1zdGF0aWMgc2l6ZV90IHByb3h5X291dChjaGFyICpidWZmZXIsIHNpemVfdCBlbHRzaXplLAotCQkJc2l6ZV90IG5tZW1iLCB2b2lkICp1c2VyZGF0YSkKLXsKLQlzaXplX3Qgc2l6ZTsKLQlzdHJ1Y3QgcHJveHlfc3RhdGUgKnAgPSB1c2VyZGF0YTsKLQotCWlmIChlbHRzaXplICE9IDEpCi0JCUJVRygiY3VybCByZWFkIGNhbGxiYWNrIGNhbGxlZCB3aXRoIHNpemUgPSAlIlBSSXVNQVgiICE9IDEiLAotCQkgICAgKHVpbnRtYXhfdCllbHRzaXplKTsKLQlzaXplID0gbm1lbWI7Ci0KLQl3cml0ZV9vcl9kaWUocC0+b3V0LCBidWZmZXIsIHNpemUpOwotCXJldHVybiBzaXplOwotfQotCi0vKiBJc3N1ZXMgYSByZXF1ZXN0IHRvIHRoZSBIVFRQIHNlcnZlciBjb25maWd1cmVkIGluIGBwYCAqLwotc3RhdGljIGludCBwcm94eV9yZXF1ZXN0KHN0cnVjdCBwcm94eV9zdGF0ZSAqcCkKLXsKLQlzdHJ1Y3QgYWN0aXZlX3JlcXVlc3Rfc2xvdCAqc2xvdDsKLQotCXNsb3QgPSBnZXRfYWN0aXZlX3Nsb3QoKTsKLQotCWN1cmxfZWFzeV9zZXRvcHQoc2xvdC0+Y3VybCwgQ1VSTE9QVF9FTkNPRElORywgIiIpOwotCWN1cmxfZWFzeV9zZXRvcHQoc2xvdC0+Y3VybCwgQ1VSTE9QVF9OT0JPRFksIDApOwotCWN1cmxfZWFzeV9zZXRvcHQoc2xvdC0+Y3VybCwgQ1VSTE9QVF9QT1NULCAxKTsKLQljdXJsX2Vhc3lfc2V0b3B0KHNsb3QtPmN1cmwsIENVUkxPUFRfVVJMLCBwLT5zZXJ2aWNlX3VybCk7Ci0JY3VybF9lYXN5X3NldG9wdChzbG90LT5jdXJsLCBDVVJMT1BUX0hUVFBIRUFERVIsIHAtPmhlYWRlcnMpOwotCi0JLyogU2V0dXAgZnVuY3Rpb24gdG8gcmVhZCByZXF1ZXN0IGZyb20gY2xpZW50ICovCi0JY3VybF9lYXN5X3NldG9wdChzbG90LT5jdXJsLCBDVVJMT1BUX1JFQURGVU5DVElPTiwgcHJveHlfaW4pOwotCWN1cmxfZWFzeV9zZXRvcHQoc2xvdC0+Y3VybCwgQ1VSTE9QVF9SRUFEREFUQSwgcCk7Ci0KLQkvKiBTZXR1cCBmdW5jdGlvbiB0byB3cml0ZSBzZXJ2ZXIgcmVzcG9uc2UgdG8gY2xpZW50ICovCi0JY3VybF9lYXN5X3NldG9wdChzbG90LT5jdXJsLCBDVVJMT1BUX1dSSVRFRlVOQ1RJT04sIHByb3h5X291dCk7Ci0JY3VybF9lYXN5X3NldG9wdChzbG90LT5jdXJsLCBDVVJMT1BUX1dSSVRFREFUQSwgcCk7Ci0KLQlpZiAocnVuX3Nsb3Qoc2xvdCwgTlVMTCkgIT0gSFRUUF9PSykKLQkJcmV0dXJuIC0xOwotCi0JcmV0dXJuIDA7CisJYXJndl9hcnJheV9jbGVhcigmc3BlY3MpOwogfQogCiBzdGF0aWMgaW50IHN0YXRlbGVzc19jb25uZWN0KGNvbnN0IGNoYXIgKnNlcnZpY2VfbmFtZSkKIHsKIAlzdHJ1Y3QgZGlzY292ZXJ5ICpkaXNjb3ZlcjsKLQlzdHJ1Y3QgcHJveHlfc3RhdGUgcDsKKwlzdHJ1Y3QgcnBjX3N0YXRlIHJwYzsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCiAJLyoKIAkgKiBSdW4gdGhlIGluZm8vcmVmcyByZXF1ZXN0IGFuZCBzZWUgaWYgdGhlIHNlcnZlciBzdXBwb3J0cyBwcm90b2NvbApAQCAtMTMwMywyMyArMTMwNCw1OCBAQAogCQlmZmx1c2goc3Rkb3V0KTsKIAl9CiAKLQlwcm94eV9zdGF0ZV9pbml0KCZwLCBzZXJ2aWNlX25hbWUsIGRpc2NvdmVyLT52ZXJzaW9uKTsKKwlycGMuc2VydmljZV9uYW1lID0gc2VydmljZV9uYW1lOworCXJwYy5zZXJ2aWNlX3VybCA9IHhzdHJmbXQoIiVzJXMiLCB1cmwuYnVmLCBycGMuc2VydmljZV9uYW1lKTsKKwlycGMuaGRyX2NvbnRlbnRfdHlwZSA9IHhzdHJmbXQoIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24veC0lcy1yZXF1ZXN0IiwgcnBjLnNlcnZpY2VfbmFtZSk7CisJcnBjLmhkcl9hY2NlcHQgPSB4c3RyZm10KCJBY2NlcHQ6IGFwcGxpY2F0aW9uL3gtJXMtcmVzdWx0IiwgcnBjLnNlcnZpY2VfbmFtZSk7CisJaWYgKGdldF9wcm90b2NvbF9odHRwX2hlYWRlcihkaXNjb3Zlci0+dmVyc2lvbiwgJmJ1ZikpIHsKKwkJcnBjLnByb3RvY29sX2hlYWRlciA9IHN0cmJ1Zl9kZXRhY2goJmJ1ZiwgTlVMTCk7CisJfSBlbHNlIHsKKwkJcnBjLnByb3RvY29sX2hlYWRlciA9IE5VTEw7CisJCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOworCX0KKwlycGMuYnVmID0geG1hbGxvYyhodHRwX3Bvc3RfYnVmZmVyKTsKKwlycGMuYWxsb2MgPSBodHRwX3Bvc3RfYnVmZmVyOworCXJwYy5sZW4gPSAwOworCXJwYy5wb3MgPSAwOworCXJwYy5pbiA9IDE7CisJcnBjLm91dCA9IDA7CisJcnBjLmFueV93cml0dGVuID0gMDsKKwlycGMuZ3ppcF9yZXF1ZXN0ID0gMTsKKwlycGMuaW5pdGlhbF9idWZmZXIgPSAwOworCXJwYy53cml0ZV9saW5lX2xlbmd0aHMgPSAxOworCXJwYy5mbHVzaF9yZWFkX2J1dF9ub3Rfc2VudCA9IDA7CiAKIAkvKgogCSAqIER1bXAgdGhlIGNhcGFiaWxpdHkgbGlzdGluZyB0aGF0IHdlIGdvdCBmcm9tIHRoZSBzZXJ2ZXIgZWFybGllcgogCSAqIGR1cmluZyB0aGUgaW5mby9yZWZzIHJlcXVlc3QuCiAJICovCi0Jd3JpdGVfb3JfZGllKHAub3V0LCBkaXNjb3Zlci0+YnVmLCBkaXNjb3Zlci0+bGVuKTsKKwl3cml0ZV9vcl9kaWUocnBjLmluLCBkaXNjb3Zlci0+YnVmLCBkaXNjb3Zlci0+bGVuKTsKIAotCS8qIFBlZWsgdGhlIG5leHQgcGFja2V0IGxpbmUuICBVbnRpbCB3ZSBzZWUgRU9GIGtlZXAgc2VuZGluZyBQT1NUcyAqLwotCXdoaWxlIChwYWNrZXRfcmVhZGVyX3BlZWsoJnAucmVhZGVyKSAhPSBQQUNLRVRfUkVBRF9FT0YpIHsKLQkJaWYgKHByb3h5X3JlcXVlc3QoJnApKSB7CisJLyogVW50aWwgd2Ugc2VlIEVPRiBrZWVwIHNlbmRpbmcgUE9TVHMgKi8KKwl3aGlsZSAoMSkgeworCQlzaXplX3QgYXZhaWw7CisJCWVudW0gcGFja2V0X3JlYWRfc3RhdHVzIHN0YXR1czsKKworCQlpZiAoIXJwY19yZWFkX2Zyb21fb3V0KCZycGMsIFBBQ0tFVF9SRUFEX0dFTlRMRV9PTl9FT0YsICZhdmFpbCwKKwkJCQkgICAgICAgJnN0YXR1cykpCisJCQlCVUcoIlRoZSBlbnRpcmUgcnBjLT5idWYgc2hvdWxkIGJlIGxhcmdlciB0aGFuIExBUkdFX1BBQ0tFVF9NQVgiKTsKKwkJaWYgKHN0YXR1cyA9PSBQQUNLRVRfUkVBRF9FT0YpCisJCQlicmVhazsKKwkJaWYgKHBvc3RfcnBjKCZycGMsIHN0YXR1cyA9PSBQQUNLRVRfUkVBRF9GTFVTSCkpCiAJCQkvKiBXZSB3b3VsZCBoYXZlIGFuIGVyciBoZXJlICovCiAJCQlicmVhazsKLQkJfQorCQkvKiBSZXNldCB0aGUgYnVmZmVyIGZvciBuZXh0IHJlcXVlc3QgKi8KKwkJcnBjLmxlbiA9IDA7CiAJfQogCi0JcHJveHlfc3RhdGVfY2xlYXIoJnApOworCWZyZWUocnBjLnNlcnZpY2VfdXJsKTsKKwlmcmVlKHJwYy5oZHJfY29udGVudF90eXBlKTsKKwlmcmVlKHJwYy5oZHJfYWNjZXB0KTsKKwlmcmVlKHJwYy5wcm90b2NvbF9oZWFkZXIpOworCWZyZWUocnBjLmJ1Zik7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CisKIAlyZXR1cm4gMDsKIH0KIApAQCAtMTMzMCw3ICsxMzY2LDcgQEAKIAogCXNldHVwX2dpdF9kaXJlY3RvcnlfZ2VudGx5KCZub25naXQpOwogCWlmIChhcmdjIDwgMikgewotCQllcnJvcigicmVtb3RlLWN1cmw6IHVzYWdlOiBnaXQgcmVtb3RlLWN1cmwgPHJlbW90ZT4gWzx1cmw+XSIpOworCQllcnJvcihfKCJyZW1vdGUtY3VybDogdXNhZ2U6IGdpdCByZW1vdGUtY3VybCA8cmVtb3RlPiBbPHVybD5dIikpOwogCQlyZXR1cm4gMTsKIAl9CiAKQEAgLTEzNDAsNiArMTM3NiwxMyBAQAogCXN0cmluZ19saXN0X2luaXQoJm9wdGlvbnMuZGVlcGVuX25vdCwgMSk7CiAJc3RyaW5nX2xpc3RfaW5pdCgmb3B0aW9ucy5wdXNoX29wdGlvbnMsIDEpOwogCisJLyoKKwkgKiBKdXN0IHJlcG9ydCAicmVtb3RlLWN1cmwiIGhlcmUgKGZvbGRpbmcgYWxsIHRoZSB2YXJpb3VzIGFsaWFzZXMKKwkgKiAoImdpdC1yZW1vdGUtaHR0cCIsICJnaXQtcmVtb3RlLWh0dHBzIiwgYW5kIGV0Yy4pIGhlcmUgc2luY2UgdGhleQorCSAqIGFyZSBhbGwganVzdCBjb3BpZXMgb2YgdGhlIHNhbWUgYWN0dWFsIGV4ZWN1dGFibGUuCisJICovCisJdHJhY2UyX2NtZF9uYW1lKCJyZW1vdGUtY3VybCIpOworCiAJcmVtb3RlID0gcmVtb3RlX2dldChhcmd2WzFdKTsKIAogCWlmIChhcmdjID4gMikgewpAQCAtMTM1NSwxNCArMTM5OCwxNCBAQAogCiAJCWlmIChzdHJidWZfZ2V0bGluZV9sZigmYnVmLCBzdGRpbikgPT0gRU9GKSB7CiAJCQlpZiAoZmVycm9yKHN0ZGluKSkKLQkJCQllcnJvcigicmVtb3RlLWN1cmw6IGVycm9yIHJlYWRpbmcgY29tbWFuZCBzdHJlYW0gZnJvbSBnaXQiKTsKKwkJCQllcnJvcihfKCJyZW1vdGUtY3VybDogZXJyb3IgcmVhZGluZyBjb21tYW5kIHN0cmVhbSBmcm9tIGdpdCIpKTsKIAkJCXJldHVybiAxOwogCQl9CiAJCWlmIChidWYubGVuID09IDApCiAJCQlicmVhazsKIAkJaWYgKHN0YXJ0c193aXRoKGJ1Zi5idWYsICJmZXRjaCAiKSkgewogCQkJaWYgKG5vbmdpdCkKLQkJCQlkaWUoInJlbW90ZS1jdXJsOiBmZXRjaCBhdHRlbXB0ZWQgd2l0aG91dCBhIGxvY2FsIHJlcG8iKTsKKwkJCQlkaWUoXygicmVtb3RlLWN1cmw6IGZldGNoIGF0dGVtcHRlZCB3aXRob3V0IGEgbG9jYWwgcmVwbyIpKTsKIAkJCXBhcnNlX2ZldGNoKCZidWYpOwogCiAJCX0gZWxzZSBpZiAoIXN0cmNtcChidWYuYnVmLCAibGlzdCIpIHx8IHN0YXJ0c193aXRoKGJ1Zi5idWYsICJsaXN0ICIpKSB7CkBAIC0xNDAyLDcgKzE0NDUsNyBAQAogCQkJaWYgKCFzdGF0ZWxlc3NfY29ubmVjdChhcmcpKQogCQkJCWJyZWFrOwogCQl9IGVsc2UgewotCQkJZXJyb3IoInJlbW90ZS1jdXJsOiB1bmtub3duIGNvbW1hbmQgJyVzJyBmcm9tIGdpdCIsIGJ1Zi5idWYpOworCQkJZXJyb3IoXygicmVtb3RlLWN1cmw6IHVua25vd24gY29tbWFuZCAnJXMnIGZyb20gZ2l0IiksIGJ1Zi5idWYpOwogCQkJcmV0dXJuIDE7CiAJCX0KIAkJc3RyYnVmX3Jlc2V0KCZidWYpOwpkaWZmIC0tZ2l0IGEvcmVtb3RlLmMgYi9yZW1vdGUuYwppbmRleCBiODUwZjJmLi5jNDMxOTZlIDEwMDY0NAotLS0gYS9yZW1vdGUuYworKysgYi9yZW1vdGUuYwpAQCAtMTMsNiArMTMsNyBAQAogI2luY2x1ZGUgIm1lcmdlc29ydC5oIgogI2luY2x1ZGUgImFyZ3YtYXJyYXkuaCIKICNpbmNsdWRlICJjb21taXQtcmVhY2guaCIKKyNpbmNsdWRlICJhZHZpY2UuaCIKIAogZW51bSBtYXBfZGlyZWN0aW9uIHsgRlJPTV9TUkMsIEZST01fRFNUIH07CiAKQEAgLTExMCwxNCArMTExLDE2IEBACiB9OwogCiBzdGF0aWMgaW50IHJlbW90ZXNfaGFzaF9jbXAoY29uc3Qgdm9pZCAqdW51c2VkX2NtcF9kYXRhLAotCQkJICAgIGNvbnN0IHZvaWQgKmVudHJ5LAotCQkJICAgIGNvbnN0IHZvaWQgKmVudHJ5X29yX2tleSwKKwkJCSAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJCSAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAogCQkJICAgIGNvbnN0IHZvaWQgKmtleWRhdGEpCiB7Ci0JY29uc3Qgc3RydWN0IHJlbW90ZSAqYSA9IGVudHJ5OwotCWNvbnN0IHN0cnVjdCByZW1vdGUgKmIgPSBlbnRyeV9vcl9rZXk7CisJY29uc3Qgc3RydWN0IHJlbW90ZSAqYSwgKmI7CiAJY29uc3Qgc3RydWN0IHJlbW90ZXNfaGFzaF9rZXkgKmtleSA9IGtleWRhdGE7CiAKKwlhID0gY29udGFpbmVyX29mKGVwdHIsIGNvbnN0IHN0cnVjdCByZW1vdGUsIGVudCk7CisJYiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIGNvbnN0IHN0cnVjdCByZW1vdGUsIGVudCk7CisKIAlpZiAoa2V5KQogCQlyZXR1cm4gc3RybmNtcChhLT5uYW1lLCBrZXktPnN0ciwga2V5LT5sZW4pIHx8IGEtPm5hbWVba2V5LT5sZW5dOwogCWVsc2UKQEAgLTEzNCw3ICsxMzcsNyBAQAogewogCXN0cnVjdCByZW1vdGUgKnJldCwgKnJlcGxhY2VkOwogCXN0cnVjdCByZW1vdGVzX2hhc2hfa2V5IGxvb2t1cDsKLQlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSBsb29rdXBfZW50cnk7CisJc3RydWN0IGhhc2htYXBfZW50cnkgbG9va3VwX2VudHJ5LCAqZTsKIAogCWlmICghbGVuKQogCQlsZW4gPSBzdHJsZW4obmFtZSk7CkBAIC0xNDQsOCArMTQ3LDkgQEAKIAlsb29rdXAubGVuID0gbGVuOwogCWhhc2htYXBfZW50cnlfaW5pdCgmbG9va3VwX2VudHJ5LCBtZW1oYXNoKG5hbWUsIGxlbikpOwogCi0JaWYgKChyZXQgPSBoYXNobWFwX2dldCgmcmVtb3Rlc19oYXNoLCAmbG9va3VwX2VudHJ5LCAmbG9va3VwKSkgIT0gTlVMTCkKLQkJcmV0dXJuIHJldDsKKwllID0gaGFzaG1hcF9nZXQoJnJlbW90ZXNfaGFzaCwgJmxvb2t1cF9lbnRyeSwgJmxvb2t1cCk7CisJaWYgKGUpCisJCXJldHVybiBjb250YWluZXJfb2YoZSwgc3RydWN0IHJlbW90ZSwgZW50KTsKIAogCXJldCA9IHhjYWxsb2MoMSwgc2l6ZW9mKHN0cnVjdCByZW1vdGUpKTsKIAlyZXQtPnBydW5lID0gLTE7ICAvKiB1bnNwZWNpZmllZCAqLwpAQCAtMTU3LDggKzE2MSw4IEBACiAJQUxMT0NfR1JPVyhyZW1vdGVzLCByZW1vdGVzX25yICsgMSwgcmVtb3Rlc19hbGxvYyk7CiAJcmVtb3Rlc1tyZW1vdGVzX25yKytdID0gcmV0OwogCi0JaGFzaG1hcF9lbnRyeV9pbml0KHJldCwgbG9va3VwX2VudHJ5Lmhhc2gpOwotCXJlcGxhY2VkID0gaGFzaG1hcF9wdXQoJnJlbW90ZXNfaGFzaCwgcmV0KTsKKwloYXNobWFwX2VudHJ5X2luaXQoJnJldC0+ZW50LCBsb29rdXBfZW50cnkuaGFzaCk7CisJcmVwbGFjZWQgPSBoYXNobWFwX3B1dF9lbnRyeSgmcmVtb3Rlc19oYXNoLCByZXQsIGVudCk7CiAJYXNzZXJ0KHJlcGxhY2VkID09IE5VTEwpOyAgLyogbm8gcHJldmlvdXMgZW50cnkgb3ZlcndyaXR0ZW4gKi8KIAlyZXR1cm4gcmV0OwogfQpAQCAtMzM2LDE0ICszNDAsMTQgQEAKIAkJaWYgKCFuYW1lKQogCQkJcmV0dXJuIDA7CiAJCWlmICghc3RyY21wKHN1YmtleSwgImluc3RlYWRvZiIpKSB7Ci0JCQlyZXdyaXRlID0gbWFrZV9yZXdyaXRlKCZyZXdyaXRlcywgbmFtZSwgbmFtZWxlbik7CiAJCQlpZiAoIXZhbHVlKQogCQkJCXJldHVybiBjb25maWdfZXJyb3Jfbm9uYm9vbChrZXkpOworCQkJcmV3cml0ZSA9IG1ha2VfcmV3cml0ZSgmcmV3cml0ZXMsIG5hbWUsIG5hbWVsZW4pOwogCQkJYWRkX2luc3RlYWRfb2YocmV3cml0ZSwgeHN0cmR1cCh2YWx1ZSkpOwogCQl9IGVsc2UgaWYgKCFzdHJjbXAoc3Via2V5LCAicHVzaGluc3RlYWRvZiIpKSB7Ci0JCQlyZXdyaXRlID0gbWFrZV9yZXdyaXRlKCZyZXdyaXRlc19wdXNoLCBuYW1lLCBuYW1lbGVuKTsKIAkJCWlmICghdmFsdWUpCiAJCQkJcmV0dXJuIGNvbmZpZ19lcnJvcl9ub25ib29sKGtleSk7CisJCQlyZXdyaXRlID0gbWFrZV9yZXdyaXRlKCZyZXdyaXRlc19wdXNoLCBuYW1lLCBuYW1lbGVuKTsKIAkJCWFkZF9pbnN0ZWFkX29mKHJld3JpdGUsIHhzdHJkdXAodmFsdWUpKTsKIAkJfQogCX0KQEAgLTM1OSwxMyArMzYzLDE0IEBACiAJCXJldHVybiAwOwogCS8qIEhhbmRsZSByZW1vdGUuPG5hbWU+LiogdmFyaWFibGVzICovCiAJaWYgKCpuYW1lID09ICcvJykgewotCQl3YXJuaW5nKCJDb25maWcgcmVtb3RlIHNob3J0aGFuZCBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIiwKKwkJd2FybmluZyhfKCJjb25maWcgcmVtb3RlIHNob3J0aGFuZCBjYW5ub3QgYmVnaW4gd2l0aCAnLyc6ICVzIiksCiAJCQluYW1lKTsKIAkJcmV0dXJuIDA7CiAJfQogCXJlbW90ZSA9IG1ha2VfcmVtb3RlKG5hbWUsIG5hbWVsZW4pOwogCXJlbW90ZS0+b3JpZ2luID0gUkVNT1RFX0NPTkZJRzsKLQlpZiAoY3VycmVudF9jb25maWdfc2NvcGUoKSA9PSBDT05GSUdfU0NPUEVfUkVQTykKKwlpZiAoY3VycmVudF9jb25maWdfc2NvcGUoKSA9PSBDT05GSUdfU0NPUEVfTE9DQUwgfHwKKwljdXJyZW50X2NvbmZpZ19zY29wZSgpID09IENPTkZJR19TQ09QRV9XT1JLVFJFRSkKIAkJcmVtb3RlLT5jb25maWd1cmVkX2luX3JlcG8gPSAxOwogCWlmICghc3RyY21wKHN1YmtleSwgIm1pcnJvciIpKQogCQlyZW1vdGUtPm1pcnJvciA9IGdpdF9jb25maWdfYm9vbChrZXksIHZhbHVlKTsKQEAgLTQwNiw3ICs0MTEsNyBAQAogCQlpZiAoIXJlbW90ZS0+cmVjZWl2ZXBhY2spCiAJCQlyZW1vdGUtPnJlY2VpdmVwYWNrID0gdjsKIAkJZWxzZQotCQkJZXJyb3IoIm1vcmUgdGhhbiBvbmUgcmVjZWl2ZXBhY2sgZ2l2ZW4sIHVzaW5nIHRoZSBmaXJzdCIpOworCQkJZXJyb3IoXygibW9yZSB0aGFuIG9uZSByZWNlaXZlcGFjayBnaXZlbiwgdXNpbmcgdGhlIGZpcnN0IikpOwogCX0gZWxzZSBpZiAoIXN0cmNtcChzdWJrZXksICJ1cGxvYWRwYWNrIikpIHsKIAkJY29uc3QgY2hhciAqdjsKIAkJaWYgKGdpdF9jb25maWdfc3RyaW5nKCZ2LCBrZXksIHZhbHVlKSkKQEAgLTQxNCw3ICs0MTksNyBAQAogCQlpZiAoIXJlbW90ZS0+dXBsb2FkcGFjaykKIAkJCXJlbW90ZS0+dXBsb2FkcGFjayA9IHY7CiAJCWVsc2UKLQkJCWVycm9yKCJtb3JlIHRoYW4gb25lIHVwbG9hZHBhY2sgZ2l2ZW4sIHVzaW5nIHRoZSBmaXJzdCIpOworCQkJZXJyb3IoXygibW9yZSB0aGFuIG9uZSB1cGxvYWRwYWNrIGdpdmVuLCB1c2luZyB0aGUgZmlyc3QiKSk7CiAJfSBlbHNlIGlmICghc3RyY21wKHN1YmtleSwgInRhZ29wdCIpKSB7CiAJCWlmICghc3RyY21wKHZhbHVlLCAiLS1uby10YWdzIikpCiAJCQlyZW1vdGUtPmZldGNoX3RhZ3MgPSAtMTsKQEAgLTUxMSwxNCArNTE2LDExIEBACiAJcmV0dXJuIHJlbW90ZV9mb3JfYnJhbmNoKGJyYW5jaCwgZXhwbGljaXQpOwogfQogCi1jb25zdCBjaGFyICpyZW1vdGVfcmVmX2Zvcl9icmFuY2goc3RydWN0IGJyYW5jaCAqYnJhbmNoLCBpbnQgZm9yX3B1c2gsCi0JCQkJICBpbnQgKmV4cGxpY2l0KQorY29uc3QgY2hhciAqcmVtb3RlX3JlZl9mb3JfYnJhbmNoKHN0cnVjdCBicmFuY2ggKmJyYW5jaCwgaW50IGZvcl9wdXNoKQogewogCWlmIChicmFuY2gpIHsKIAkJaWYgKCFmb3JfcHVzaCkgewogCQkJaWYgKGJyYW5jaC0+bWVyZ2VfbnIpIHsKLQkJCQlpZiAoZXhwbGljaXQpCi0JCQkJCSpleHBsaWNpdCA9IDE7CiAJCQkJcmV0dXJuIGJyYW5jaC0+bWVyZ2VfbmFtZVswXTsKIAkJCX0KIAkJfSBlbHNlIHsKQEAgLTUyOSwxNSArNTMxLDExIEBACiAJCQlpZiAocmVtb3RlICYmIHJlbW90ZS0+cHVzaC5uciAmJgogCQkJICAgIChkc3QgPSBhcHBseV9yZWZzcGVjcygmcmVtb3RlLT5wdXNoLAogCQkJCQkJICBicmFuY2gtPnJlZm5hbWUpKSkgewotCQkJCWlmIChleHBsaWNpdCkKLQkJCQkJKmV4cGxpY2l0ID0gMTsKIAkJCQlyZXR1cm4gZHN0OwogCQkJfQogCQl9CiAJfQotCWlmIChleHBsaWNpdCkKLQkJKmV4cGxpY2l0ID0gMDsKLQlyZXR1cm4gIiI7CisJcmV0dXJuIE5VTEw7CiB9CiAKIHN0YXRpYyBzdHJ1Y3QgcmVtb3RlICpyZW1vdGVfZ2V0XzEoY29uc3QgY2hhciAqbmFtZSwKQEAgLTYyMCw3ICs2MTgsNyBAQAogCQkJICogRkVUQ0hfSEVBRF9JR05PUkUgZW50cmllcyBhbHdheXMgYXBwZWFyIGF0CiAJCQkgKiB0aGUgZW5kIG9mIHRoZSBsaXN0LgogCQkJICovCi0JCQlkaWUoXygiSW50ZXJuYWwgZXJyb3IiKSk7CisJCQlCVUcoIkludGVybmFsIGVycm9yIik7CiAJCX0KIAl9CiAJZnJlZShyZWYyLT5wZWVyX3JlZik7CkBAIC02ODAsNyArNjc4LDcgQEAKIAlzaXplX3QgbmFtZWxlbjsKIAlpbnQgcmV0OwogCWlmICgha3N0YXIpCi0JCWRpZSgiS2V5ICclcycgb2YgcGF0dGVybiBoYWQgbm8gJyonIiwga2V5KTsKKwkJZGllKF8oImtleSAnJXMnIG9mIHBhdHRlcm4gaGFkIG5vICcqJyIpLCBrZXkpOwogCWtsZW4gPSBrc3RhciAtIGtleTsKIAlrc3VmZml4bGVuID0gc3RybGVuKGtzdGFyICsgMSk7CiAJbmFtZWxlbiA9IHN0cmxlbihuYW1lKTsKQEAgLTY5MCw3ICs2ODgsNyBAQAogCQlzdHJ1Y3Qgc3RyYnVmIHNiID0gU1RSQlVGX0lOSVQ7CiAJCWNvbnN0IGNoYXIgKnZzdGFyID0gc3RyY2hyKHZhbHVlLCAnKicpOwogCQlpZiAoIXZzdGFyKQotCQkJZGllKCJWYWx1ZSAnJXMnIG9mIHBhdHRlcm4gaGFzIG5vICcqJyIsIHZhbHVlKTsKKwkJCWRpZShfKCJ2YWx1ZSAnJXMnIG9mIHBhdHRlcm4gaGFzIG5vICcqJyIpLCB2YWx1ZSk7CiAJCXN0cmJ1Zl9hZGQoJnNiLCB2YWx1ZSwgdnN0YXIgLSB2YWx1ZSk7CiAJCXN0cmJ1Zl9hZGQoJnNiLCBuYW1lICsga2xlbiwgbmFtZWxlbiAtIGtsZW4gLSBrc3VmZml4bGVuKTsKIAkJc3RyYnVmX2FkZHN0cigmc2IsIHZzdGFyICsgMSk7CkBAIC03MDcsNyArNzA1LDcgQEAKIAlpbnQgZmluZF9zcmMgPSAhcXVlcnktPnNyYzsKIAogCWlmIChmaW5kX3NyYyAmJiAhcXVlcnktPmRzdCkKLQkJZXJyb3IoInF1ZXJ5X3JlZnNwZWNzX211bHRpcGxlOiBuZWVkIGVpdGhlciBzcmMgb3IgZHN0Iik7CisJCUJVRygicXVlcnlfcmVmc3BlY3NfbXVsdGlwbGU6IG5lZWQgZWl0aGVyIHNyYyBvciBkc3QiKTsKIAogCWZvciAoaSA9IDA7IGkgPCBycy0+bnI7IGkrKykgewogCQlzdHJ1Y3QgcmVmc3BlY19pdGVtICpyZWZzcGVjID0gJnJzLT5pdGVtc1tpXTsKQEAgLTczNSw3ICs3MzMsNyBAQAogCWNoYXIgKipyZXN1bHQgPSBmaW5kX3NyYyA/ICZxdWVyeS0+c3JjIDogJnF1ZXJ5LT5kc3Q7CiAKIAlpZiAoZmluZF9zcmMgJiYgIXF1ZXJ5LT5kc3QpCi0JCXJldHVybiBlcnJvcigicXVlcnlfcmVmc3BlY3M6IG5lZWQgZWl0aGVyIHNyYyBvciBkc3QiKTsKKwkJQlVHKCJxdWVyeV9yZWZzcGVjczogbmVlZCBlaXRoZXIgc3JjIG9yIGRzdCIpOwogCiAJZm9yIChpID0gMDsgaSA8IHJzLT5ucjsgaSsrKSB7CiAJCXN0cnVjdCByZWZzcGVjX2l0ZW0gKnJlZnNwZWMgPSAmcnMtPml0ZW1zW2ldOwpAQCAtODE5LDExICs4MTcsMTEgQEAKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgdm9pZCBmcmVlX3JlZihzdHJ1Y3QgcmVmICpyZWYpCit2b2lkIGZyZWVfb25lX3JlZihzdHJ1Y3QgcmVmICpyZWYpCiB7CiAJaWYgKCFyZWYpCiAJCXJldHVybjsKLQlmcmVlX3JlZihyZWYtPnBlZXJfcmVmKTsKKwlmcmVlX29uZV9yZWYocmVmLT5wZWVyX3JlZik7CiAJZnJlZShyZWYtPnJlbW90ZV9zdGF0dXMpOwogCWZyZWUocmVmLT5zeW1yZWYpOwogCWZyZWUocmVmKTsKQEAgLTgzNCw3ICs4MzIsNyBAQAogCXN0cnVjdCByZWYgKm5leHQ7CiAJd2hpbGUgKHJlZikgewogCQluZXh0ID0gcmVmLT5uZXh0OwotCQlmcmVlX3JlZihyZWYpOworCQlmcmVlX29uZV9yZWYocmVmKTsKIAkJcmVmID0gbmV4dDsKIAl9CiB9CkBAIC05NjgsMTIgKzk2NiwxMyBAQAogCWlmICghcikKIAkJcmV0dXJuIE5VTEw7CiAKLQlpZiAoc3RhcnRzX3dpdGgociwgInJlZnMvaGVhZHMvIikpCisJaWYgKHN0YXJ0c193aXRoKHIsICJyZWZzL2hlYWRzLyIpKSB7CiAJCXN0cmJ1Zl9hZGRzdHIoJmJ1ZiwgInJlZnMvaGVhZHMvIik7Ci0JZWxzZSBpZiAoc3RhcnRzX3dpdGgociwgInJlZnMvdGFncy8iKSkKKwl9IGVsc2UgaWYgKHN0YXJ0c193aXRoKHIsICJyZWZzL3RhZ3MvIikpIHsKIAkJc3RyYnVmX2FkZHN0cigmYnVmLCAicmVmcy90YWdzLyIpOwotCWVsc2UKKwl9IGVsc2UgewogCQlyZXR1cm4gTlVMTDsKKwl9CiAKIAlzdHJidWZfYWRkc3RyKCZidWYsIG5hbWUpOwogCXJldHVybiBzdHJidWZfZGV0YWNoKCZidWYsIE5VTEwpOwpAQCAtOTk1LDEyICs5OTQsNjggQEAKIAkJICogd2F5IHRvIGRlbGV0ZSAnb3RoZXInIHJlZiBhdCB0aGUgcmVtb3RlIGVuZC4KIAkJICovCiAJCWlmICh0cnlfZXhwbGljaXRfb2JqZWN0X25hbWUocnMtPnNyYywgbWF0Y2gpIDwgMCkKLQkJCXJldHVybiBlcnJvcigic3JjIHJlZnNwZWMgJXMgZG9lcyBub3QgbWF0Y2ggYW55LiIsIHJzLT5zcmMpOworCQkJcmV0dXJuIGVycm9yKF8oInNyYyByZWZzcGVjICVzIGRvZXMgbm90IG1hdGNoIGFueSIpLCBycy0+c3JjKTsKIAkJaWYgKGFsbG9jYXRlZF9tYXRjaCkKIAkJCSphbGxvY2F0ZWRfbWF0Y2ggPSAxOwogCQlyZXR1cm4gMDsKIAlkZWZhdWx0OgotCQlyZXR1cm4gZXJyb3IoInNyYyByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZS4iLCBycy0+c3JjKTsKKwkJcmV0dXJuIGVycm9yKF8oInNyYyByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIpLCBycy0+c3JjKTsKKwl9Cit9CisKK3N0YXRpYyB2b2lkIHNob3dfcHVzaF91bnF1YWxpZmllZF9yZWZfbmFtZV9lcnJvcihjb25zdCBjaGFyICpkc3RfdmFsdWUsCisJCQkJCQkgY29uc3QgY2hhciAqbWF0Y2hlZF9zcmNfbmFtZSkKK3sKKwlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKKwllbnVtIG9iamVjdF90eXBlIHR5cGU7CisKKwkvKgorCSAqIFRSQU5TTEFUT1JTOiAibWF0Y2hlcyAnJXMnJSIgaXMgdGhlIDxkc3Q+IHBhcnQgb2YgImdpdCBwdXNoCisJICogPHJlbW90ZT4gPHNyYz46PGRzdD4iIHB1c2gsIGFuZCAiYmVpbmcgcHVzaGVkICgnJXMnKSIgaXMKKwkgKiB0aGUgPHNyYz4uCisJICovCisJZXJyb3IoXygiVGhlIGRlc3RpbmF0aW9uIHlvdSBwcm92aWRlZCBpcyBub3QgYSBmdWxsIHJlZm5hbWUgKGkuZS4sXG4iCisJCSJzdGFydGluZyB3aXRoIFwicmVmcy9cIikuIFdlIHRyaWVkIHRvIGd1ZXNzIHdoYXQgeW91IG1lYW50IGJ5OlxuIgorCQkiXG4iCisJCSItIExvb2tpbmcgZm9yIGEgcmVmIHRoYXQgbWF0Y2hlcyAnJXMnIG9uIHRoZSByZW1vdGUgc2lkZS5cbiIKKwkJIi0gQ2hlY2tpbmcgaWYgdGhlIDxzcmM+IGJlaW5nIHB1c2hlZCAoJyVzJylcbiIKKwkJIiAgaXMgYSByZWYgaW4gXCJyZWZzL3toZWFkcyx0YWdzfS9cIi4gSWYgc28gd2UgYWRkIGEgY29ycmVzcG9uZGluZ1xuIgorCQkiICByZWZzL3toZWFkcyx0YWdzfS8gcHJlZml4IG9uIHRoZSByZW1vdGUgc2lkZS5cbiIKKwkJIlxuIgorCQkiTmVpdGhlciB3b3JrZWQsIHNvIHdlIGdhdmUgdXAuIFlvdSBtdXN0IGZ1bGx5IHF1YWxpZnkgdGhlIHJlZi4iKSwKKwkgICAgICBkc3RfdmFsdWUsIG1hdGNoZWRfc3JjX25hbWUpOworCisJaWYgKCFhZHZpY2VfcHVzaF91bnF1YWxpZmllZF9yZWZfbmFtZSkKKwkJcmV0dXJuOworCisJaWYgKGdldF9vaWQobWF0Y2hlZF9zcmNfbmFtZSwgJm9pZCkpCisJCUJVRygiJyVzJyBpcyBub3QgYSB2YWxpZCBvYmplY3QsICIKKwkJICAgICJtYXRjaF9leHBsaWNpdF9saHMoKSBzaG91bGQgY2F0Y2ggdGhpcyEiLAorCQkgICAgbWF0Y2hlZF9zcmNfbmFtZSk7CisJdHlwZSA9IG9pZF9vYmplY3RfaW5mbyh0aGVfcmVwb3NpdG9yeSwgJm9pZCwgTlVMTCk7CisJaWYgKHR5cGUgPT0gT0JKX0NPTU1JVCkgeworCQlhZHZpc2UoXygiVGhlIDxzcmM+IHBhcnQgb2YgdGhlIHJlZnNwZWMgaXMgYSBjb21taXQgb2JqZWN0LlxuIgorCQkJICJEaWQgeW91IG1lYW4gdG8gY3JlYXRlIGEgbmV3IGJyYW5jaCBieSBwdXNoaW5nIHRvXG4iCisJCQkgIiclczpyZWZzL2hlYWRzLyVzJz8iKSwKKwkJICAgICAgIG1hdGNoZWRfc3JjX25hbWUsIGRzdF92YWx1ZSk7CisJfSBlbHNlIGlmICh0eXBlID09IE9CSl9UQUcpIHsKKwkJYWR2aXNlKF8oIlRoZSA8c3JjPiBwYXJ0IG9mIHRoZSByZWZzcGVjIGlzIGEgdGFnIG9iamVjdC5cbiIKKwkJCSAiRGlkIHlvdSBtZWFuIHRvIGNyZWF0ZSBhIG5ldyB0YWcgYnkgcHVzaGluZyB0b1xuIgorCQkJICInJXM6cmVmcy90YWdzLyVzJz8iKSwKKwkJICAgICAgIG1hdGNoZWRfc3JjX25hbWUsIGRzdF92YWx1ZSk7CisJfSBlbHNlIGlmICh0eXBlID09IE9CSl9UUkVFKSB7CisJCWFkdmlzZShfKCJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIHRyZWUgb2JqZWN0LlxuIgorCQkJICJEaWQgeW91IG1lYW4gdG8gdGFnIGEgbmV3IHRyZWUgYnkgcHVzaGluZyB0b1xuIgorCQkJICInJXM6cmVmcy90YWdzLyVzJz8iKSwKKwkJICAgICAgIG1hdGNoZWRfc3JjX25hbWUsIGRzdF92YWx1ZSk7CisJfSBlbHNlIGlmICh0eXBlID09IE9CSl9CTE9CKSB7CisJCWFkdmlzZShfKCJUaGUgPHNyYz4gcGFydCBvZiB0aGUgcmVmc3BlYyBpcyBhIGJsb2Igb2JqZWN0LlxuIgorCQkJICJEaWQgeW91IG1lYW4gdG8gdGFnIGEgbmV3IGJsb2IgYnkgcHVzaGluZyB0b1xuIgorCQkJICInJXM6cmVmcy90YWdzLyVzJz8iKSwKKwkJICAgICAgIG1hdGNoZWRfc3JjX25hbWUsIGRzdF92YWx1ZSk7CisJfSBlbHNlIHsKKwkJQlVHKCInJXMnIHNob3VsZCBiZSBjb21taXQvdGFnL3RyZWUvYmxvYiwgaXMgJyVkJyIsCisJCSAgICBtYXRjaGVkX3NyY19uYW1lLCB0eXBlKTsKIAl9CiB9CiAKQEAgLTEwMzAsNyArMTA4NSw3IEBACiAJCWlmICghZHN0X3ZhbHVlIHx8CiAJCSAgICAoKGZsYWcgJiBSRUZfSVNTWU1SRUYpICYmCiAJCSAgICAgIXN0YXJ0c193aXRoKGRzdF92YWx1ZSwgInJlZnMvaGVhZHMvIikpKQotCQkJZGllKCIlcyBjYW5ub3QgYmUgcmVzb2x2ZWQgdG8gYnJhbmNoLiIsCisJCQlkaWUoXygiJXMgY2Fubm90IGJlIHJlc29sdmVkIHRvIGJyYW5jaCIpLAogCQkJICAgIG1hdGNoZWRfc3JjLT5uYW1lKTsKIAl9CiAKQEAgLTEwMzgsMzMgKzEwOTMsMzAgQEAKIAljYXNlIDE6CiAJCWJyZWFrOwogCWNhc2UgMDoKLQkJaWYgKHN0YXJ0c193aXRoKGRzdF92YWx1ZSwgInJlZnMvIikpCisJCWlmIChzdGFydHNfd2l0aChkc3RfdmFsdWUsICJyZWZzLyIpKSB7CiAJCQltYXRjaGVkX2RzdCA9IG1ha2VfbGlua2VkX3JlZihkc3RfdmFsdWUsIGRzdF90YWlsKTsKLQkJZWxzZSBpZiAoaXNfbnVsbF9vaWQoJm1hdGNoZWRfc3JjLT5uZXdfb2lkKSkKLQkJCWVycm9yKCJ1bmFibGUgdG8gZGVsZXRlICclcyc6IHJlbW90ZSByZWYgZG9lcyBub3QgZXhpc3QiLAorCQl9IGVsc2UgaWYgKGlzX251bGxfb2lkKCZtYXRjaGVkX3NyYy0+bmV3X29pZCkpIHsKKwkJCWVycm9yKF8oInVuYWJsZSB0byBkZWxldGUgJyVzJzogcmVtb3RlIHJlZiBkb2VzIG5vdCBleGlzdCIpLAogCQkJICAgICAgZHN0X3ZhbHVlKTsKLQkJZWxzZSBpZiAoKGRzdF9ndWVzcyA9IGd1ZXNzX3JlZihkc3RfdmFsdWUsIG1hdGNoZWRfc3JjKSkpIHsKKwkJfSBlbHNlIGlmICgoZHN0X2d1ZXNzID0gZ3Vlc3NfcmVmKGRzdF92YWx1ZSwgbWF0Y2hlZF9zcmMpKSkgewogCQkJbWF0Y2hlZF9kc3QgPSBtYWtlX2xpbmtlZF9yZWYoZHN0X2d1ZXNzLCBkc3RfdGFpbCk7CiAJCQlmcmVlKGRzdF9ndWVzcyk7Ci0JCX0gZWxzZQotCQkJZXJyb3IoInVuYWJsZSB0byBwdXNoIHRvIHVucXVhbGlmaWVkIGRlc3RpbmF0aW9uOiAlc1xuIgotCQkJICAgICAgIlRoZSBkZXN0aW5hdGlvbiByZWZzcGVjIG5laXRoZXIgbWF0Y2hlcyBhbiAiCi0JCQkgICAgICAiZXhpc3RpbmcgcmVmIG9uIHRoZSByZW1vdGUgbm9yXG4iCi0JCQkgICAgICAiYmVnaW5zIHdpdGggcmVmcy8sIGFuZCB3ZSBhcmUgdW5hYmxlIHRvICIKLQkJCSAgICAgICJndWVzcyBhIHByZWZpeCBiYXNlZCBvbiB0aGUgc291cmNlIHJlZi4iLAotCQkJICAgICAgZHN0X3ZhbHVlKTsKKwkJfSBlbHNlIHsKKwkJCXNob3dfcHVzaF91bnF1YWxpZmllZF9yZWZfbmFtZV9lcnJvcihkc3RfdmFsdWUsCisJCQkJCQkJICAgICBtYXRjaGVkX3NyYy0+bmFtZSk7CisJCX0KIAkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJbWF0Y2hlZF9kc3QgPSBOVUxMOwotCQllcnJvcigiZHN0IHJlZnNwZWMgJXMgbWF0Y2hlcyBtb3JlIHRoYW4gb25lLiIsCisJCWVycm9yKF8oImRzdCByZWZzcGVjICVzIG1hdGNoZXMgbW9yZSB0aGFuIG9uZSIpLAogCQkgICAgICBkc3RfdmFsdWUpOwogCQlicmVhazsKIAl9CiAJaWYgKCFtYXRjaGVkX2RzdCkKIAkJcmV0dXJuIC0xOwogCWlmIChtYXRjaGVkX2RzdC0+cGVlcl9yZWYpCi0JCXJldHVybiBlcnJvcigiZHN0IHJlZiAlcyByZWNlaXZlcyBmcm9tIG1vcmUgdGhhbiBvbmUgc3JjLiIsCi0JCSAgICAgIG1hdGNoZWRfZHN0LT5uYW1lKTsKKwkJcmV0dXJuIGVycm9yKF8oImRzdCByZWYgJXMgcmVjZWl2ZXMgZnJvbSBtb3JlIHRoYW4gb25lIHNyYyIpLAorCQkJICAgICBtYXRjaGVkX2RzdC0+bmFtZSk7CiAJZWxzZSB7CiAJCW1hdGNoZWRfZHN0LT5wZWVyX3JlZiA9IGFsbG9jYXRlZF9zcmMgPwogCQkJCQltYXRjaGVkX3NyYyA6CkBAIC0xNzgyLDcgKzE4MzQsNyBAQAogCQkJcmVmX21hcCA9IGdldF9yZW1vdGVfcmVmKHJlbW90ZV9yZWZzLCBuYW1lKTsKIAkJfQogCQlpZiAoIW1pc3Npbmdfb2sgJiYgIXJlZl9tYXApCi0JCQlkaWUoIkNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiAlcyIsIG5hbWUpOworCQkJZGllKF8oImNvdWxkbid0IGZpbmQgcmVtb3RlIHJlZiAlcyIpLCBuYW1lKTsKIAkJaWYgKHJlZl9tYXApIHsKIAkJCXJlZl9tYXAtPnBlZXJfcmVmID0gZ2V0X2xvY2FsX3JlZihyZWZzcGVjLT5kc3QpOwogCQkJaWYgKHJlZl9tYXAtPnBlZXJfcmVmICYmIHJlZnNwZWMtPmZvcmNlKQpAQCAtMTc5NSw3ICsxODQ3LDcgQEAKIAkJCWlmICghc3RhcnRzX3dpdGgoKCpybXApLT5wZWVyX3JlZi0+bmFtZSwgInJlZnMvIikgfHwKIAkJCSAgICBjaGVja19yZWZuYW1lX2Zvcm1hdCgoKnJtcCktPnBlZXJfcmVmLT5uYW1lLCAwKSkgewogCQkJCXN0cnVjdCByZWYgKmlnbm9yZSA9ICpybXA7Ci0JCQkJZXJyb3IoIiogSWdub3JpbmcgZnVubnkgcmVmICclcycgbG9jYWxseSIsCisJCQkJZXJyb3IoXygiKiBJZ25vcmluZyBmdW5ueSByZWYgJyVzJyBsb2NhbGx5IiksCiAJCQkJICAgICAgKCpybXApLT5wZWVyX3JlZi0+bmFtZSk7CiAJCQkJKnJtcCA9ICgqcm1wKS0+bmV4dDsKIAkJCQlmcmVlKGlnbm9yZS0+cGVlcl9yZWYpOwpAQCAtMTgyNSwzNyArMTg3NywyNyBAQAogfQogCiAvKgotICogTG9va3VwIHRoZSB1cHN0cmVhbSBicmFuY2ggZm9yIHRoZSBnaXZlbiBicmFuY2ggYW5kIGlmIHByZXNlbnQsIG9wdGlvbmFsbHkKLSAqIGNvbXB1dGUgdGhlIGNvbW1pdCBhaGVhZC9iZWhpbmQgdmFsdWVzIGZvciB0aGUgcGFpci4KKyAqIENvbXB1dGUgdGhlIGNvbW1pdCBhaGVhZC9iZWhpbmQgdmFsdWVzIGZvciB0aGUgcGFpciBicmFuY2hfbmFtZSwgYmFzZS4KICAqCiAgKiBJZiBhYmYgaXMgQUhFQURfQkVISU5EX0ZVTEwsIGNvbXB1dGUgdGhlIGZ1bGwgYWhlYWQvYmVoaW5kIGFuZCByZXR1cm4gdGhlCiAgKiBjb3VudHMgaW4gKm51bV9vdXJzIGFuZCAqbnVtX3RoZWlycy4gIElmIGFiZiBpcyBBSEVBRF9CRUhJTkRfUVVJQ0ssIHNraXAKICAqIHRoZSAocG90ZW50aWFsbHkgZXhwZW5zaXZlKSBhL2IgY29tcHV0YXRpb24gKCpudW1fb3VycyBhbmQgKm51bV90aGVpcnMgYXJlCiAgKiBzZXQgdG8gemVybykuCiAgKgotICogVGhlIG5hbWUgb2YgdGhlIHVwc3RyZWFtIGJyYW5jaCAob3IgTlVMTCBpZiBubyB1cHN0cmVhbSBpcyBkZWZpbmVkKSBpcwotICogcmV0dXJuZWQgdmlhICp1cHN0cmVhbV9uYW1lLCBpZiBpdCBpcyBub3QgaXRzZWxmIE5VTEwuCi0gKgotICogUmV0dXJucyAtMSBpZiBudW1fb3VycyBhbmQgbnVtX3RoZWlycyBjb3VsZCBub3QgYmUgZmlsbGVkIGluIChlLmcuLCBubwotICogdXBzdHJlYW0gZGVmaW5lZCwgb3IgcmVmIGRvZXMgbm90IGV4aXN0KS4gIFJldHVybnMgMCBpZiB0aGUgY29tbWl0cyBhcmUKLSAqIGlkZW50aWNhbC4gIFJldHVybnMgMSBpZiBjb21taXRzIGFyZSBkaWZmZXJlbnQuCisgKiBSZXR1cm5zIC0xIGlmIG51bV9vdXJzIGFuZCBudW1fdGhlaXJzIGNvdWxkIG5vdCBiZSBmaWxsZWQgaW4gKGUuZy4sIHJlZgorICogZG9lcyBub3QgZXhpc3QpLiAgUmV0dXJucyAwIGlmIHRoZSBjb21taXRzIGFyZSBpZGVudGljYWwuICBSZXR1cm5zIDEgaWYKKyAqIGNvbW1pdHMgYXJlIGRpZmZlcmVudC4KICAqLwotaW50IHN0YXRfdHJhY2tpbmdfaW5mbyhzdHJ1Y3QgYnJhbmNoICpicmFuY2gsIGludCAqbnVtX291cnMsIGludCAqbnVtX3RoZWlycywKLQkJICAgICAgIGNvbnN0IGNoYXIgKip1cHN0cmVhbV9uYW1lLCBlbnVtIGFoZWFkX2JlaGluZF9mbGFncyBhYmYpCisKK3N0YXRpYyBpbnQgc3RhdF9icmFuY2hfcGFpcihjb25zdCBjaGFyICpicmFuY2hfbmFtZSwgY29uc3QgY2hhciAqYmFzZSwKKwkJCSAgICAgaW50ICpudW1fb3VycywgaW50ICpudW1fdGhlaXJzLAorCQkJICAgICBlbnVtIGFoZWFkX2JlaGluZF9mbGFncyBhYmYpCiB7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJc3RydWN0IGNvbW1pdCAqb3VycywgKnRoZWlyczsKIAlzdHJ1Y3QgcmV2X2luZm8gcmV2czsKLQljb25zdCBjaGFyICpiYXNlOwogCXN0cnVjdCBhcmd2X2FycmF5IGFyZ3YgPSBBUkdWX0FSUkFZX0lOSVQ7CiAKLQkvKiBDYW5ub3Qgc3RhdCB1bmxlc3Mgd2UgYXJlIG1hcmtlZCB0byBidWlsZCBvbiB0b3Agb2Ygc29tZWJvZHkgZWxzZS4gKi8KLQliYXNlID0gYnJhbmNoX2dldF91cHN0cmVhbShicmFuY2gsIE5VTEwpOwotCWlmICh1cHN0cmVhbV9uYW1lKQotCQkqdXBzdHJlYW1fbmFtZSA9IGJhc2U7Ci0JaWYgKCFiYXNlKQotCQlyZXR1cm4gLTE7Ci0KIAkvKiBDYW5ub3Qgc3RhdCBpZiB3aGF0IHdlIHVzZWQgdG8gYnVpbGQgb24gbm8gbG9uZ2VyIGV4aXN0cyAqLwogCWlmIChyZWFkX3JlZihiYXNlLCAmb2lkKSkKIAkJcmV0dXJuIC0xOwpAQCAtMTg2Myw3ICsxOTA1LDcgQEAKIAlpZiAoIXRoZWlycykKIAkJcmV0dXJuIC0xOwogCi0JaWYgKHJlYWRfcmVmKGJyYW5jaC0+cmVmbmFtZSwgJm9pZCkpCisJaWYgKHJlYWRfcmVmKGJyYW5jaF9uYW1lLCAmb2lkKSkKIAkJcmV0dXJuIC0xOwogCW91cnMgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZSh0aGVfcmVwb3NpdG9yeSwgJm9pZCk7CiAJaWYgKCFvdXJzKQpAQCAtMTg3Nyw3ICsxOTE5LDcgQEAKIAlpZiAoYWJmID09IEFIRUFEX0JFSElORF9RVUlDSykKIAkJcmV0dXJuIDE7CiAJaWYgKGFiZiAhPSBBSEVBRF9CRUhJTkRfRlVMTCkKLQkJQlVHKCJzdGF0X3RyYWNraW5nX2luZm86IGludmFsaWQgYWJmICclZCciLCBhYmYpOworCQlCVUcoInN0YXRfYnJhbmNoX3BhaXI6IGludmFsaWQgYWJmICclZCciLCBhYmYpOwogCiAJLyogUnVuICJyZXYtbGlzdCAtLWxlZnQtcmlnaHQgb3Vycy4uLnRoZWlycyIgaW50ZXJuYWxseS4uLiAqLwogCWFyZ3ZfYXJyYXlfcHVzaCgmYXJndiwgIiIpOyAvKiBpZ25vcmVkICovCkBAIC0xODkwLDcgKzE5MzIsNyBAQAogCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksICZyZXZzLCBOVUxMKTsKIAlzZXR1cF9yZXZpc2lvbnMoYXJndi5hcmdjLCBhcmd2LmFyZ3YsICZyZXZzLCBOVUxMKTsKIAlpZiAocHJlcGFyZV9yZXZpc2lvbl93YWxrKCZyZXZzKSkKLQkJZGllKCJyZXZpc2lvbiB3YWxrIHNldHVwIGZhaWxlZCIpOworCQlkaWUoXygicmV2aXNpb24gd2FsayBzZXR1cCBmYWlsZWQiKSk7CiAKIAkvKiAuLi4gYW5kIGNvdW50IHRoZSBjb21taXRzIG9uIGVhY2ggc2lkZS4gKi8KIAl3aGlsZSAoMSkgewpAQCAtMTkxMiw2ICsxOTU0LDQyIEBACiB9CiAKIC8qCisgKiBMb29rdXAgdGhlIHRyYWNraW5nIGJyYW5jaCBmb3IgdGhlIGdpdmVuIGJyYW5jaCBhbmQgaWYgcHJlc2VudCwgb3B0aW9uYWxseQorICogY29tcHV0ZSB0aGUgY29tbWl0IGFoZWFkL2JlaGluZCB2YWx1ZXMgZm9yIHRoZSBwYWlyLgorICoKKyAqIElmIGZvcl9wdXNoIGlzIHRydWUsIHRoZSB0cmFja2luZyBicmFuY2ggcmVmZXJzIHRvIHRoZSBwdXNoIGJyYW5jaCwKKyAqIG90aGVyd2lzZSBpdCByZWZlcnMgdG8gdGhlIHVwc3RyZWFtIGJyYW5jaC4KKyAqCisgKiBUaGUgbmFtZSBvZiB0aGUgdHJhY2tpbmcgYnJhbmNoIChvciBOVUxMIGlmIGl0IGlzIG5vdCBkZWZpbmVkKSBpcworICogcmV0dXJuZWQgdmlhICp0cmFja2luZ19uYW1lLCBpZiBpdCBpcyBub3QgaXRzZWxmIE5VTEwuCisgKgorICogSWYgYWJmIGlzIEFIRUFEX0JFSElORF9GVUxMLCBjb21wdXRlIHRoZSBmdWxsIGFoZWFkL2JlaGluZCBhbmQgcmV0dXJuIHRoZQorICogY291bnRzIGluICpudW1fb3VycyBhbmQgKm51bV90aGVpcnMuICBJZiBhYmYgaXMgQUhFQURfQkVISU5EX1FVSUNLLCBza2lwCisgKiB0aGUgKHBvdGVudGlhbGx5IGV4cGVuc2l2ZSkgYS9iIGNvbXB1dGF0aW9uICgqbnVtX291cnMgYW5kICpudW1fdGhlaXJzIGFyZQorICogc2V0IHRvIHplcm8pLgorICoKKyAqIFJldHVybnMgLTEgaWYgbnVtX291cnMgYW5kIG51bV90aGVpcnMgY291bGQgbm90IGJlIGZpbGxlZCBpbiAoZS5nLiwgbm8KKyAqIHVwc3RyZWFtIGRlZmluZWQsIG9yIHJlZiBkb2VzIG5vdCBleGlzdCkuICBSZXR1cm5zIDAgaWYgdGhlIGNvbW1pdHMgYXJlCisgKiBpZGVudGljYWwuICBSZXR1cm5zIDEgaWYgY29tbWl0cyBhcmUgZGlmZmVyZW50LgorICovCitpbnQgc3RhdF90cmFja2luZ19pbmZvKHN0cnVjdCBicmFuY2ggKmJyYW5jaCwgaW50ICpudW1fb3VycywgaW50ICpudW1fdGhlaXJzLAorCQkgICAgICAgY29uc3QgY2hhciAqKnRyYWNraW5nX25hbWUsIGludCBmb3JfcHVzaCwKKwkJICAgICAgIGVudW0gYWhlYWRfYmVoaW5kX2ZsYWdzIGFiZikKK3sKKwljb25zdCBjaGFyICpiYXNlOworCisJLyogQ2Fubm90IHN0YXQgdW5sZXNzIHdlIGFyZSBtYXJrZWQgdG8gYnVpbGQgb24gdG9wIG9mIHNvbWVib2R5IGVsc2UuICovCisJYmFzZSA9IGZvcl9wdXNoID8gYnJhbmNoX2dldF9wdXNoKGJyYW5jaCwgTlVMTCkgOgorCQlicmFuY2hfZ2V0X3Vwc3RyZWFtKGJyYW5jaCwgTlVMTCk7CisJaWYgKHRyYWNraW5nX25hbWUpCisJCSp0cmFja2luZ19uYW1lID0gYmFzZTsKKwlpZiAoIWJhc2UpCisJCXJldHVybiAtMTsKKworCXJldHVybiBzdGF0X2JyYW5jaF9wYWlyKGJyYW5jaC0+cmVmbmFtZSwgYmFzZSwgbnVtX291cnMsIG51bV90aGVpcnMsIGFiZik7Cit9CisKKy8qCiAgKiBSZXR1cm4gdHJ1ZSB3aGVuIHRoZXJlIGlzIGFueXRoaW5nIHRvIHJlcG9ydCwgb3RoZXJ3aXNlIGZhbHNlLgogICovCiBpbnQgZm9ybWF0X3RyYWNraW5nX2luZm8oc3RydWN0IGJyYW5jaCAqYnJhbmNoLCBzdHJ1Y3Qgc3RyYnVmICpzYiwKQEAgLTE5MjIsNyArMjAwMCw3IEBACiAJY2hhciAqYmFzZTsKIAlpbnQgdXBzdHJlYW1faXNfZ29uZSA9IDA7CiAKLQlzdGkgPSBzdGF0X3RyYWNraW5nX2luZm8oYnJhbmNoLCAmb3VycywgJnRoZWlycywgJmZ1bGxfYmFzZSwgYWJmKTsKKwlzdGkgPSBzdGF0X3RyYWNraW5nX2luZm8oYnJhbmNoLCAmb3VycywgJnRoZWlycywgJmZ1bGxfYmFzZSwgMCwgYWJmKTsKIAlpZiAoc3RpIDwgMCkgewogCQlpZiAoIWZ1bGxfYmFzZSkKIAkJCXJldHVybiAwOwpAQCAtMjE2Myw3ICsyMjQxLDggQEAKIAllbHNlIGlmICghY29sb25bMV0pCiAJCW9pZGNscigmZW50cnktPmV4cGVjdCk7CiAJZWxzZSBpZiAoZ2V0X29pZChjb2xvbiArIDEsICZlbnRyeS0+ZXhwZWN0KSkKLQkJcmV0dXJuIGVycm9yKCJjYW5ub3QgcGFyc2UgZXhwZWN0ZWQgb2JqZWN0IG5hbWUgJyVzJyIsIGNvbG9uICsgMSk7CisJCXJldHVybiBlcnJvcihfKCJjYW5ub3QgcGFyc2UgZXhwZWN0ZWQgb2JqZWN0IG5hbWUgJyVzJyIpLAorCQkJICAgICBjb2xvbiArIDEpOwogCXJldHVybiAwOwogfQogCmRpZmYgLS1naXQgYS9yZW1vdGUuaCBiL3JlbW90ZS5oCmluZGV4IGRhNTNhZDUuLjExZDg3MTkgMTAwNjQ0Ci0tLSBhL3JlbW90ZS5oCisrKyBiL3JlbW90ZS5oCkBAIC02LDYgKzYsMTQgQEAKICNpbmNsdWRlICJoYXNobWFwLmgiCiAjaW5jbHVkZSAicmVmc3BlYy5oIgogCisvKioKKyAqIFRoZSBBUEkgZ2l2ZXMgYWNjZXNzIHRvIHRoZSBjb25maWd1cmF0aW9uIHJlbGF0ZWQgdG8gcmVtb3Rlcy4gSXQgaGFuZGxlcworICogYWxsIHRocmVlIGNvbmZpZ3VyYXRpb24gbWVjaGFuaXNtcyBoaXN0b3JpY2FsbHkgYW5kIGN1cnJlbnRseSB1c2VkIGJ5IEdpdCwKKyAqIGFuZCBwcmVzZW50cyB0aGUgaW5mb3JtYXRpb24gaW4gYSB1bmlmb3JtIGZhc2hpb24uIE5vdGUgdGhhdCB0aGUgY29kZSBhbHNvCisgKiBoYW5kbGVzIHBsYWluIFVSTHMgd2l0aG91dCBhbnkgY29uZmlndXJhdGlvbiwgZ2l2aW5nIHRoZW0ganVzdCB0aGUgZGVmYXVsdAorICogaW5mb3JtYXRpb24uCisgKi8KKwogZW51bSB7CiAJUkVNT1RFX1VOQ09ORklHVVJFRCA9IDAsCiAJUkVNT1RFX0NPTkZJRywKQEAgLTE0LDE4ICsyMiwyNCBAQAogfTsKIAogc3RydWN0IHJlbW90ZSB7Ci0Jc3RydWN0IGhhc2htYXBfZW50cnkgZW50OyAgLyogbXVzdCBiZSBmaXJzdCAqLworCXN0cnVjdCBoYXNobWFwX2VudHJ5IGVudDsKIAorCS8qIFRoZSB1c2VyJ3Mgbmlja25hbWUgZm9yIHRoZSByZW1vdGUgKi8KIAljb25zdCBjaGFyICpuYW1lOworCiAJaW50IG9yaWdpbiwgY29uZmlndXJlZF9pbl9yZXBvOwogCiAJY29uc3QgY2hhciAqZm9yZWlnbl92Y3M7CiAKKwkvKiBBbiBhcnJheSBvZiBhbGwgb2YgdGhlIHVybF9uciBVUkxzIGNvbmZpZ3VyZWQgZm9yIHRoZSByZW1vdGUgKi8KIAljb25zdCBjaGFyICoqdXJsOworCiAJaW50IHVybF9ucjsKIAlpbnQgdXJsX2FsbG9jOwogCisJLyogQW4gYXJyYXkgb2YgYWxsIG9mIHRoZSBwdXNodXJsX25yIHB1c2ggVVJMcyBjb25maWd1cmVkIGZvciB0aGUgcmVtb3RlICovCiAJY29uc3QgY2hhciAqKnB1c2h1cmw7CisKIAlpbnQgcHVzaHVybF9ucjsKIAlpbnQgcHVzaHVybF9hbGxvYzsKIApAQCAtMzQsMzIgKzQ4LDQ3IEBACiAJc3RydWN0IHJlZnNwZWMgZmV0Y2g7CiAKIAkvKgorCSAqIFRoZSBzZXR0aW5nIGZvciB3aGV0aGVyIHRvIGZldGNoIHRhZ3MgKGFzIGEgc2VwYXJhdGUgcnVsZSBmcm9tIHRoZQorCSAqIGNvbmZpZ3VyZWQgcmVmc3BlY3MpOwogCSAqIC0xIHRvIG5ldmVyIGZldGNoIHRhZ3MKIAkgKiAwIHRvIGF1dG8tZm9sbG93IHRhZ3Mgb24gaGV1cmlzdGljIChkZWZhdWx0KQogCSAqIDEgdG8gYWx3YXlzIGF1dG8tZm9sbG93IHRhZ3MKIAkgKiAyIHRvIGFsd2F5cyBmZXRjaCB0YWdzCiAJICovCiAJaW50IGZldGNoX3RhZ3M7CisKIAlpbnQgc2tpcF9kZWZhdWx0X3VwZGF0ZTsKIAlpbnQgbWlycm9yOwogCWludCBwcnVuZTsKIAlpbnQgcHJ1bmVfdGFnczsKIAorCS8qKgorCSAqIFRoZSBjb25maWd1cmVkIGhlbHBlciBwcm9ncmFtcyB0byBydW4gb24gdGhlIHJlbW90ZSBzaWRlLCBmb3IKKwkgKiBHaXQtbmF0aXZlIHByb3RvY29scy4KKwkgKi8KIAljb25zdCBjaGFyICpyZWNlaXZlcGFjazsKIAljb25zdCBjaGFyICp1cGxvYWRwYWNrOwogCi0JLyoKLQkgKiBmb3IgY3VybCByZW1vdGVzIG9ubHkKLQkgKi8KKwkvKiBUaGUgcHJveHkgdG8gdXNlIGZvciBjdXJsIChodHRwLCBodHRwcywgZnRwLCBldGMuKSBVUkxzLiAqLwogCWNoYXIgKmh0dHBfcHJveHk7CisKKwkvKiBUaGUgbWV0aG9kIHVzZWQgZm9yIGF1dGhlbnRpY2F0aW5nIGFnYWluc3QgYGh0dHBfcHJveHlgLiAqLwogCWNoYXIgKmh0dHBfcHJveHlfYXV0aG1ldGhvZDsKIH07CiAKKy8qKgorICogc3RydWN0IHJlbW90ZXMgY2FuIGJlIGZvdW5kIGJ5IG5hbWUgd2l0aCByZW1vdGVfZ2V0KCkuCisgKiByZW1vdGVfZ2V0KE5VTEwpIHdpbGwgcmV0dXJuIHRoZSBkZWZhdWx0IHJlbW90ZSwgZ2l2ZW4gdGhlIGN1cnJlbnQgYnJhbmNoCisgKiBhbmQgY29uZmlndXJhdGlvbi4KKyAqLwogc3RydWN0IHJlbW90ZSAqcmVtb3RlX2dldChjb25zdCBjaGFyICpuYW1lKTsKKwogc3RydWN0IHJlbW90ZSAqcHVzaHJlbW90ZV9nZXQoY29uc3QgY2hhciAqbmFtZSk7CiBpbnQgcmVtb3RlX2lzX2NvbmZpZ3VyZWQoc3RydWN0IHJlbW90ZSAqcmVtb3RlLCBpbnQgaW5fcmVwbyk7CiAKIHR5cGVkZWYgaW50IGVhY2hfcmVtb3RlX2ZuKHN0cnVjdCByZW1vdGUgKnJlbW90ZSwgdm9pZCAqcHJpdik7CisKKy8qIGl0ZXJhdGUgdGhyb3VnaCBzdHJ1Y3QgcmVtb3RlcyAqLwogaW50IGZvcl9lYWNoX3JlbW90ZShlYWNoX3JlbW90ZV9mbiBmbiwgdm9pZCAqcHJpdik7CiAKIGludCByZW1vdGVfaGFzX3VybChzdHJ1Y3QgcmVtb3RlICpyZW1vdGUsIGNvbnN0IGNoYXIgKnVybCk7CkBAIC0xMTksMzYgKzE0OCwzOCBAQAogI2RlZmluZSBSRUZfSEVBRFMJKDF1IDw8IDEpCiAjZGVmaW5lIFJFRl9UQUdTCSgxdSA8PCAyKQogCi1leHRlcm4gc3RydWN0IHJlZiAqZmluZF9yZWZfYnlfbmFtZShjb25zdCBzdHJ1Y3QgcmVmICpsaXN0LCBjb25zdCBjaGFyICpuYW1lKTsKK3N0cnVjdCByZWYgKmZpbmRfcmVmX2J5X25hbWUoY29uc3Qgc3RydWN0IHJlZiAqbGlzdCwgY29uc3QgY2hhciAqbmFtZSk7CiAKIHN0cnVjdCByZWYgKmFsbG9jX3JlZihjb25zdCBjaGFyICpuYW1lKTsKIHN0cnVjdCByZWYgKmNvcHlfcmVmKGNvbnN0IHN0cnVjdCByZWYgKnJlZik7CiBzdHJ1Y3QgcmVmICpjb3B5X3JlZl9saXN0KGNvbnN0IHN0cnVjdCByZWYgKnJlZik7CiB2b2lkIHNvcnRfcmVmX2xpc3Qoc3RydWN0IHJlZiAqKiwgaW50ICgqY21wKShjb25zdCB2b2lkICosIGNvbnN0IHZvaWQgKikpOwotZXh0ZXJuIGludCBjb3VudF9yZWZzcGVjX21hdGNoKGNvbnN0IGNoYXIgKiwgc3RydWN0IHJlZiAqcmVmcywgc3RydWN0IHJlZiAqKm1hdGNoZWRfcmVmKTsKK2ludCBjb3VudF9yZWZzcGVjX21hdGNoKGNvbnN0IGNoYXIgKiwgc3RydWN0IHJlZiAqcmVmcywgc3RydWN0IHJlZiAqKm1hdGNoZWRfcmVmKTsKIGludCByZWZfY29tcGFyZV9uYW1lKGNvbnN0IHZvaWQgKiwgY29uc3Qgdm9pZCAqKTsKIAogaW50IGNoZWNrX3JlZl90eXBlKGNvbnN0IHN0cnVjdCByZWYgKnJlZiwgaW50IGZsYWdzKTsKIAogLyoKLSAqIEZyZWVzIHRoZSBlbnRpcmUgbGlzdCBhbmQgcGVlcnMgb2YgZWxlbWVudHMuCisgKiBGcmVlIGEgc2luZ2xlIHJlZiBhbmQgaXRzIHBlZXIsIG9yIGFuIGVudGlyZSBsaXN0IG9mIHJlZnMgYW5kIHRoZWlyIHBlZXJzLAorICogcmVzcGVjdGl2ZWx5LgogICovCit2b2lkIGZyZWVfb25lX3JlZihzdHJ1Y3QgcmVmICpyZWYpOwogdm9pZCBmcmVlX3JlZnMoc3RydWN0IHJlZiAqcmVmKTsKIAogc3RydWN0IG9pZF9hcnJheTsKIHN0cnVjdCBwYWNrZXRfcmVhZGVyOwogc3RydWN0IGFyZ3ZfYXJyYXk7CiBzdHJ1Y3Qgc3RyaW5nX2xpc3Q7Ci1leHRlcm4gc3RydWN0IHJlZiAqKmdldF9yZW1vdGVfaGVhZHMoc3RydWN0IHBhY2tldF9yZWFkZXIgKnJlYWRlciwKLQkJCQkgICAgIHN0cnVjdCByZWYgKipsaXN0LCB1bnNpZ25lZCBpbnQgZmxhZ3MsCi0JCQkJICAgICBzdHJ1Y3Qgb2lkX2FycmF5ICpleHRyYV9oYXZlLAotCQkJCSAgICAgc3RydWN0IG9pZF9hcnJheSAqc2hhbGxvd19wb2ludHMpOworc3RydWN0IHJlZiAqKmdldF9yZW1vdGVfaGVhZHMoc3RydWN0IHBhY2tldF9yZWFkZXIgKnJlYWRlciwKKwkJCSAgICAgIHN0cnVjdCByZWYgKipsaXN0LCB1bnNpZ25lZCBpbnQgZmxhZ3MsCisJCQkgICAgICBzdHJ1Y3Qgb2lkX2FycmF5ICpleHRyYV9oYXZlLAorCQkJICAgICAgc3RydWN0IG9pZF9hcnJheSAqc2hhbGxvd19wb2ludHMpOwogCiAvKiBVc2VkIGZvciBwcm90b2NvbCB2MiBpbiBvcmRlciB0byByZXRyaWV2ZSByZWZzIGZyb20gYSByZW1vdGUgKi8KLWV4dGVybiBzdHJ1Y3QgcmVmICoqZ2V0X3JlbW90ZV9yZWZzKGludCBmZF9vdXQsIHN0cnVjdCBwYWNrZXRfcmVhZGVyICpyZWFkZXIsCi0JCQkJICAgIHN0cnVjdCByZWYgKipsaXN0LCBpbnQgZm9yX3B1c2gsCi0JCQkJICAgIGNvbnN0IHN0cnVjdCBhcmd2X2FycmF5ICpyZWZfcHJlZml4ZXMsCi0JCQkJICAgIGNvbnN0IHN0cnVjdCBzdHJpbmdfbGlzdCAqc2VydmVyX29wdGlvbnMpOworc3RydWN0IHJlZiAqKmdldF9yZW1vdGVfcmVmcyhpbnQgZmRfb3V0LCBzdHJ1Y3QgcGFja2V0X3JlYWRlciAqcmVhZGVyLAorCQkJICAgICBzdHJ1Y3QgcmVmICoqbGlzdCwgaW50IGZvcl9wdXNoLAorCQkJICAgICBjb25zdCBzdHJ1Y3QgYXJndl9hcnJheSAqcmVmX3ByZWZpeGVzLAorCQkJICAgICBjb25zdCBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKnNlcnZlcl9vcHRpb25zKTsKIAogaW50IHJlc29sdmVfcmVtb3RlX3N5bXJlZihzdHJ1Y3QgcmVmICpyZWYsIHN0cnVjdCByZWYgKmxpc3QpOwogCkBAIC0xOTIsMTYgKzIyMywzNiBAQAogICovCiBpbnQgcmVtb3RlX2ZpbmRfdHJhY2tpbmcoc3RydWN0IHJlbW90ZSAqcmVtb3RlLCBzdHJ1Y3QgcmVmc3BlY19pdGVtICpyZWZzcGVjKTsKIAorLyoqCisgKiBzdHJ1Y3QgYnJhbmNoIGhvbGRzIHRoZSBjb25maWd1cmF0aW9uIGZvciBhIGJyYW5jaC4gSXQgY2FuIGJlIGxvb2tlZCB1cCB3aXRoCisgKiBicmFuY2hfZ2V0KG5hbWUpIGZvciAicmVmcy9oZWFkcy97bmFtZX0iLCBvciB3aXRoIGJyYW5jaF9nZXQoTlVMTCkgZm9yIEhFQUQuCisgKi8KIHN0cnVjdCBicmFuY2ggeworCisJLyogVGhlIHNob3J0IG5hbWUgb2YgdGhlIGJyYW5jaC4gKi8KIAljb25zdCBjaGFyICpuYW1lOworCisJLyogVGhlIGZ1bGwgcGF0aCBmb3IgdGhlIGJyYW5jaCByZWYuICovCiAJY29uc3QgY2hhciAqcmVmbmFtZTsKIAorCS8qIFRoZSBuYW1lIG9mIHRoZSByZW1vdGUgbGlzdGVkIGluIHRoZSBjb25maWd1cmF0aW9uLiAqLwogCWNvbnN0IGNoYXIgKnJlbW90ZV9uYW1lOworCiAJY29uc3QgY2hhciAqcHVzaHJlbW90ZV9uYW1lOwogCisJLyogQW4gYXJyYXkgb2YgdGhlICJtZXJnZSIgbGluZXMgaW4gdGhlIGNvbmZpZ3VyYXRpb24uICovCiAJY29uc3QgY2hhciAqKm1lcmdlX25hbWU7CisKKwkvKioKKwkgKiBBbiBhcnJheSBvZiB0aGUgc3RydWN0IHJlZnNwZWNzIHVzZWQgZm9yIHRoZSBtZXJnZSBsaW5lcy4gVGhhdCBpcywKKwkgKiBtZXJnZVtpXS0+ZHN0IGlzIGEgbG9jYWwgdHJhY2tpbmcgcmVmIHdoaWNoIHNob3VsZCBiZSBtZXJnZWQgaW50byB0aGlzCisJICogYnJhbmNoIGJ5IGRlZmF1bHQuCisJICovCiAJc3RydWN0IHJlZnNwZWNfaXRlbSAqKm1lcmdlOworCisJLyogVGhlIG51bWJlciBvZiBtZXJnZSBjb25maWd1cmF0aW9ucyAqLwogCWludCBtZXJnZV9ucjsKKwogCWludCBtZXJnZV9hbGxvYzsKIAogCWNvbnN0IGNoYXIgKnB1c2hfdHJhY2tpbmdfcmVmOwpAQCAtMjEwLDEwICsyNjEsMTEgQEAKIHN0cnVjdCBicmFuY2ggKmJyYW5jaF9nZXQoY29uc3QgY2hhciAqbmFtZSk7CiBjb25zdCBjaGFyICpyZW1vdGVfZm9yX2JyYW5jaChzdHJ1Y3QgYnJhbmNoICpicmFuY2gsIGludCAqZXhwbGljaXQpOwogY29uc3QgY2hhciAqcHVzaHJlbW90ZV9mb3JfYnJhbmNoKHN0cnVjdCBicmFuY2ggKmJyYW5jaCwgaW50ICpleHBsaWNpdCk7Ci1jb25zdCBjaGFyICpyZW1vdGVfcmVmX2Zvcl9icmFuY2goc3RydWN0IGJyYW5jaCAqYnJhbmNoLCBpbnQgZm9yX3B1c2gsCi0JCQkJICBpbnQgKmV4cGxpY2l0KTsKK2NvbnN0IGNoYXIgKnJlbW90ZV9yZWZfZm9yX2JyYW5jaChzdHJ1Y3QgYnJhbmNoICpicmFuY2gsIGludCBmb3JfcHVzaCk7CiAKKy8qIHJldHVybnMgdHJ1ZSBpZiB0aGUgZ2l2ZW4gYnJhbmNoIGhhcyBtZXJnZSBjb25maWd1cmF0aW9uIGdpdmVuLiAqLwogaW50IGJyYW5jaF9oYXNfbWVyZ2VfY29uZmlnKHN0cnVjdCBicmFuY2ggKmJyYW5jaCk7CisKIGludCBicmFuY2hfbWVyZ2VfbWF0Y2hlcyhzdHJ1Y3QgYnJhbmNoICosIGludCBuLCBjb25zdCBjaGFyICopOwogCiAvKioKQEAgLTI1Myw3ICszMDUsOCBAQAogCiAvKiBSZXBvcnRpbmcgb2YgdHJhY2tpbmcgaW5mbyAqLwogaW50IHN0YXRfdHJhY2tpbmdfaW5mbyhzdHJ1Y3QgYnJhbmNoICpicmFuY2gsIGludCAqbnVtX291cnMsIGludCAqbnVtX3RoZWlycywKLQkJICAgICAgIGNvbnN0IGNoYXIgKip1cHN0cmVhbV9uYW1lLCBlbnVtIGFoZWFkX2JlaGluZF9mbGFncyBhYmYpOworCQkgICAgICAgY29uc3QgY2hhciAqKnVwc3RyZWFtX25hbWUsIGludCBmb3JfcHVzaCwKKwkJICAgICAgIGVudW0gYWhlYWRfYmVoaW5kX2ZsYWdzIGFiZik7CiBpbnQgZm9ybWF0X3RyYWNraW5nX2luZm8oc3RydWN0IGJyYW5jaCAqYnJhbmNoLCBzdHJ1Y3Qgc3RyYnVmICpzYiwKIAkJCSBlbnVtIGFoZWFkX2JlaGluZF9mbGFncyBhYmYpOwogCkBAIC0yODcsOSArMzQwLDkgQEAKIAlpbnQgYWxsb2M7CiB9OwogCi1leHRlcm4gaW50IHBhcnNlb3B0X3B1c2hfY2FzX29wdGlvbihjb25zdCBzdHJ1Y3Qgb3B0aW9uICosIGNvbnN0IGNoYXIgKmFyZywgaW50IHVuc2V0KTsKK2ludCBwYXJzZW9wdF9wdXNoX2Nhc19vcHRpb24oY29uc3Qgc3RydWN0IG9wdGlvbiAqLCBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCk7CiAKLWV4dGVybiBpbnQgaXNfZW1wdHlfY2FzKGNvbnN0IHN0cnVjdCBwdXNoX2Nhc19vcHRpb24gKik7CitpbnQgaXNfZW1wdHlfY2FzKGNvbnN0IHN0cnVjdCBwdXNoX2Nhc19vcHRpb24gKik7CiB2b2lkIGFwcGx5X3B1c2hfY2FzKHN0cnVjdCBwdXNoX2Nhc19vcHRpb24gKiwgc3RydWN0IHJlbW90ZSAqLCBzdHJ1Y3QgcmVmICopOwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL3JlcGxhY2Utb2JqZWN0LmMgYi9yZXBsYWNlLW9iamVjdC5jCmluZGV4IGUyOTVlODcuLjdiZDlhYmEgMTAwNjQ0Ci0tLSBhL3JlcGxhY2Utb2JqZWN0LmMKKysrIGIvcmVwbGFjZS1vYmplY3QuYwpAQCAtMzQsMTQgKzM0LDIzIEBACiAKIHZvaWQgcHJlcGFyZV9yZXBsYWNlX29iamVjdChzdHJ1Y3QgcmVwb3NpdG9yeSAqcikKIHsKLQlpZiAoci0+b2JqZWN0cy0+cmVwbGFjZV9tYXApCisJaWYgKHItPm9iamVjdHMtPnJlcGxhY2VfbWFwX2luaXRpYWxpemVkKQogCQlyZXR1cm47CiAKKwlwdGhyZWFkX211dGV4X2xvY2soJnItPm9iamVjdHMtPnJlcGxhY2VfbXV0ZXgpOworCWlmIChyLT5vYmplY3RzLT5yZXBsYWNlX21hcF9pbml0aWFsaXplZCkgeworCQlwdGhyZWFkX211dGV4X3VubG9jaygmci0+b2JqZWN0cy0+cmVwbGFjZV9tdXRleCk7CisJCXJldHVybjsKKwl9CisKIAlyLT5vYmplY3RzLT5yZXBsYWNlX21hcCA9CiAJCXhtYWxsb2Moc2l6ZW9mKCpyLT5vYmplY3RzLT5yZXBsYWNlX21hcCkpOwogCW9pZG1hcF9pbml0KHItPm9iamVjdHMtPnJlcGxhY2VfbWFwLCAwKTsKIAogCWZvcl9lYWNoX3JlcGxhY2VfcmVmKHIsIHJlZ2lzdGVyX3JlcGxhY2VfcmVmLCBOVUxMKTsKKwlyLT5vYmplY3RzLT5yZXBsYWNlX21hcF9pbml0aWFsaXplZCA9IDE7CisKKwlwdGhyZWFkX211dGV4X3VubG9jaygmci0+b2JqZWN0cy0+cmVwbGFjZV9tdXRleCk7CiB9CiAKIC8qIFdlIGFsbG93ICJyZWN1cnNpdmUiIHJlcGxhY2VtZW50LiBPbmx5IHdpdGhpbiByZWFzb24sIHRob3VnaCAqLwpkaWZmIC0tZ2l0IGEvcmVwbGFjZS1vYmplY3QuaCBiL3JlcGxhY2Utb2JqZWN0LmgKaW5kZXggMTY1MjhkZi4uM2ZiYzMyZSAxMDA2NDQKLS0tIGEvcmVwbGFjZS1vYmplY3QuaAorKysgYi9yZXBsYWNlLW9iamVjdC5oCkBAIC0xNiwyMCArMTYsMjUgQEAKICAqIFRoaXMgaW50ZXJuYWwgZnVuY3Rpb24gaXMgb25seSBkZWNsYXJlZCBoZXJlIGZvciB0aGUgYmVuZWZpdCBvZgogICogbG9va3VwX3JlcGxhY2Vfb2JqZWN0KCkuICBQbGVhc2UgZG8gbm90IGNhbGwgaXQgZGlyZWN0bHkuCiAgKi8KLWV4dGVybiBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpkb19sb29rdXBfcmVwbGFjZV9vYmplY3Qoc3RydWN0IHJlcG9zaXRvcnkgKnIsCi0JCQkJCQkJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKK2NvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmRvX2xvb2t1cF9yZXBsYWNlX29iamVjdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJCSBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOwogCiAvKgogICogSWYgb2JqZWN0IHNoYTEgc2hvdWxkIGJlIHJlcGxhY2VkLCByZXR1cm4gdGhlIHJlcGxhY2VtZW50IG9iamVjdCdzCiAgKiBuYW1lIChyZXBsYWNlZCByZWN1cnNpdmVseSwgaWYgbmVjZXNzYXJ5KS4gIFRoZSByZXR1cm4gdmFsdWUgaXMKICAqIGVpdGhlciBzaGExIG9yIGEgcG9pbnRlciB0byBhIHBlcm1hbmVudGx5LWFsbG9jYXRlZCB2YWx1ZS4gIFdoZW4KICAqIG9iamVjdCByZXBsYWNlbWVudCBpcyBzdXBwcmVzc2VkLCBhbHdheXMgcmV0dXJuIHNoYTEuCisgKgorICogTm90ZTogc29tZSB0aHJlYWQgZGVidWdnZXJzIG1pZ2h0IHBvaW50IGEgZGF0YSByYWNlIG9uIHRoZQorICogcmVwbGFjZV9tYXBfaW5pdGlhbGl6ZWQgcmVhZGluZyBpbiB0aGlzIGZ1bmN0aW9uLiBIb3dldmVyLCB3ZSBrbm93IHRoZXJlJ3Mgbm8KKyAqIHByb2JsZW0gaW4gdGhlIHZhbHVlIGJlaW5nIHVwZGF0ZWQgYnkgb25lIHRocmVhZCByaWdodCBhZnRlciBhbm90aGVyIG9uZSByZWFkCisgKiBpdCBoZXJlIChhbmQgaXQgc2hvdWxkIGJlIHdyaXR0ZW4gdG8gb25seSBvbmNlLCBhbnl3YXkpLgogICovCiBzdGF0aWMgaW5saW5lIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmxvb2t1cF9yZXBsYWNlX29iamVjdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKIAkJCQkJCQkgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewogCWlmICghcmVhZF9yZXBsYWNlX3JlZnMgfHwKLQkgICAgKHItPm9iamVjdHMtPnJlcGxhY2VfbWFwICYmCisJICAgIChyLT5vYmplY3RzLT5yZXBsYWNlX21hcF9pbml0aWFsaXplZCAmJgogCSAgICAgci0+b2JqZWN0cy0+cmVwbGFjZV9tYXAtPm1hcC50YWJsZXNpemUgPT0gMCkpCiAJCXJldHVybiBvaWQ7CiAJcmV0dXJuIGRvX2xvb2t1cF9yZXBsYWNlX29iamVjdChyLCBvaWQpOwpkaWZmIC0tZ2l0IGEvcmVwby1zZXR0aW5ncy5jIGIvcmVwby1zZXR0aW5ncy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE3MDNlNDAKLS0tIC9kZXYvbnVsbAorKysgYi9yZXBvLXNldHRpbmdzLmMKQEAgLTAsMCArMSw2OCBAQAorI2luY2x1ZGUgImNhY2hlLmgiCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAicmVwb3NpdG9yeS5oIgorCisjZGVmaW5lIFVQREFURV9ERUZBVUxUX0JPT0wocyx2KSBkbyB7IGlmIChzID09IC0xKSB7IHMgPSB2OyB9IH0gd2hpbGUoMCkKKwordm9pZCBwcmVwYXJlX3JlcG9fc2V0dGluZ3Moc3RydWN0IHJlcG9zaXRvcnkgKnIpCit7CisJaW50IHZhbHVlOworCWNoYXIgKnN0cnZhbDsKKworCWlmIChyLT5zZXR0aW5ncy5pbml0aWFsaXplZCkKKwkJcmV0dXJuOworCisJLyogRGVmYXVsdHMgKi8KKwltZW1zZXQoJnItPnNldHRpbmdzLCAtMSwgc2l6ZW9mKHItPnNldHRpbmdzKSk7CisKKwlpZiAoIXJlcG9fY29uZmlnX2dldF9ib29sKHIsICJjb3JlLmNvbW1pdGdyYXBoIiwgJnZhbHVlKSkKKwkJci0+c2V0dGluZ3MuY29yZV9jb21taXRfZ3JhcGggPSB2YWx1ZTsKKwlpZiAoIXJlcG9fY29uZmlnX2dldF9ib29sKHIsICJnYy53cml0ZWNvbW1pdGdyYXBoIiwgJnZhbHVlKSkKKwkJci0+c2V0dGluZ3MuZ2Nfd3JpdGVfY29tbWl0X2dyYXBoID0gdmFsdWU7CisJVVBEQVRFX0RFRkFVTFRfQk9PTChyLT5zZXR0aW5ncy5jb3JlX2NvbW1pdF9ncmFwaCwgMSk7CisJVVBEQVRFX0RFRkFVTFRfQk9PTChyLT5zZXR0aW5ncy5nY193cml0ZV9jb21taXRfZ3JhcGgsIDEpOworCisJaWYgKCFyZXBvX2NvbmZpZ19nZXRfaW50KHIsICJpbmRleC52ZXJzaW9uIiwgJnZhbHVlKSkKKwkJci0+c2V0dGluZ3MuaW5kZXhfdmVyc2lvbiA9IHZhbHVlOworCWlmICghcmVwb19jb25maWdfZ2V0X21heWJlX2Jvb2wociwgImNvcmUudW50cmFja2VkY2FjaGUiLCAmdmFsdWUpKSB7CisJCWlmICh2YWx1ZSA9PSAwKQorCQkJci0+c2V0dGluZ3MuY29yZV91bnRyYWNrZWRfY2FjaGUgPSBVTlRSQUNLRURfQ0FDSEVfUkVNT1ZFOworCQllbHNlCisJCQlyLT5zZXR0aW5ncy5jb3JlX3VudHJhY2tlZF9jYWNoZSA9IFVOVFJBQ0tFRF9DQUNIRV9XUklURTsKKwl9IGVsc2UgaWYgKCFyZXBvX2NvbmZpZ19nZXRfc3RyaW5nKHIsICJjb3JlLnVudHJhY2tlZGNhY2hlIiwgJnN0cnZhbCkpIHsKKwkJaWYgKCFzdHJjYXNlY21wKHN0cnZhbCwgImtlZXAiKSkKKwkJCXItPnNldHRpbmdzLmNvcmVfdW50cmFja2VkX2NhY2hlID0gVU5UUkFDS0VEX0NBQ0hFX0tFRVA7CisKKwkJZnJlZShzdHJ2YWwpOworCX0KKworCWlmICghcmVwb19jb25maWdfZ2V0X3N0cmluZyhyLCAiZmV0Y2gubmVnb3RpYXRpb25hbGdvcml0aG0iLCAmc3RydmFsKSkgeworCQlpZiAoIXN0cmNhc2VjbXAoc3RydmFsLCAic2tpcHBpbmciKSkKKwkJCXItPnNldHRpbmdzLmZldGNoX25lZ290aWF0aW9uX2FsZ29yaXRobSA9IEZFVENIX05FR09USUFUSU9OX1NLSVBQSU5HOworCQllbHNlCisJCQlyLT5zZXR0aW5ncy5mZXRjaF9uZWdvdGlhdGlvbl9hbGdvcml0aG0gPSBGRVRDSF9ORUdPVElBVElPTl9ERUZBVUxUOworCX0KKworCWlmICghcmVwb19jb25maWdfZ2V0X2Jvb2wociwgInBhY2sudXNlc3BhcnNlIiwgJnZhbHVlKSkKKwkJci0+c2V0dGluZ3MucGFja191c2Vfc3BhcnNlID0gdmFsdWU7CisJaWYgKCFyZXBvX2NvbmZpZ19nZXRfYm9vbChyLCAiZmVhdHVyZS5tYW55ZmlsZXMiLCAmdmFsdWUpICYmIHZhbHVlKSB7CisJCVVQREFURV9ERUZBVUxUX0JPT0woci0+c2V0dGluZ3MuaW5kZXhfdmVyc2lvbiwgNCk7CisJCVVQREFURV9ERUZBVUxUX0JPT0woci0+c2V0dGluZ3MuY29yZV91bnRyYWNrZWRfY2FjaGUsIFVOVFJBQ0tFRF9DQUNIRV9XUklURSk7CisJfQorCWlmICghcmVwb19jb25maWdfZ2V0X2Jvb2wociwgImZldGNoLndyaXRlY29tbWl0Z3JhcGgiLCAmdmFsdWUpKQorCQlyLT5zZXR0aW5ncy5mZXRjaF93cml0ZV9jb21taXRfZ3JhcGggPSB2YWx1ZTsKKwlpZiAoIXJlcG9fY29uZmlnX2dldF9ib29sKHIsICJmZWF0dXJlLmV4cGVyaW1lbnRhbCIsICZ2YWx1ZSkgJiYgdmFsdWUpIHsKKwkJVVBEQVRFX0RFRkFVTFRfQk9PTChyLT5zZXR0aW5ncy5wYWNrX3VzZV9zcGFyc2UsIDEpOworCQlVUERBVEVfREVGQVVMVF9CT09MKHItPnNldHRpbmdzLmZldGNoX25lZ290aWF0aW9uX2FsZ29yaXRobSwgRkVUQ0hfTkVHT1RJQVRJT05fU0tJUFBJTkcpOworCQlVUERBVEVfREVGQVVMVF9CT09MKHItPnNldHRpbmdzLmZldGNoX3dyaXRlX2NvbW1pdF9ncmFwaCwgMSk7CisJfQorCVVQREFURV9ERUZBVUxUX0JPT0woci0+c2V0dGluZ3MuZmV0Y2hfd3JpdGVfY29tbWl0X2dyYXBoLCAwKTsKKworCS8qIEhhY2sgZm9yIHRlc3QgcHJvZ3JhbXMgbGlrZSB0ZXN0LWR1bXAtdW50cmFja2VkLWNhY2hlICovCisJaWYgKGlnbm9yZV91bnRyYWNrZWRfY2FjaGVfY29uZmlnKQorCQlyLT5zZXR0aW5ncy5jb3JlX3VudHJhY2tlZF9jYWNoZSA9IFVOVFJBQ0tFRF9DQUNIRV9LRUVQOworCWVsc2UKKwkJVVBEQVRFX0RFRkFVTFRfQk9PTChyLT5zZXR0aW5ncy5jb3JlX3VudHJhY2tlZF9jYWNoZSwgVU5UUkFDS0VEX0NBQ0hFX0tFRVApOworCisJVVBEQVRFX0RFRkFVTFRfQk9PTChyLT5zZXR0aW5ncy5mZXRjaF9uZWdvdGlhdGlvbl9hbGdvcml0aG0sIEZFVENIX05FR09USUFUSU9OX0RFRkFVTFQpOworfQpkaWZmIC0tZ2l0IGEvcmVwb3NpdG9yeS5jIGIvcmVwb3NpdG9yeS5jCmluZGV4IDVkZDE0ODYuLmE0MTc0ZGQgMTAwNjQ0Ci0tLSBhL3JlcG9zaXRvcnkuYworKysgYi9yZXBvc2l0b3J5LmMKQEAgLTEsMTMgKzEsMjAgQEAKKy8qCisgKiBub3QgcmVhbGx5IF91c2luZ18gdGhlIGNvbXBhdCBtYWNyb3MsIGp1c3QgbWFrZSBzdXJlIHRoZV9pbmRleAorICogZGVjbGFyYXRpb24gbWF0Y2hlcyB0aGUgZGVmaW5pdGlvbiBpbiB0aGlzIGZpbGUuCisgKi8KKyNkZWZpbmUgVVNFX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAicmVwb3NpdG9yeS5oIgogI2luY2x1ZGUgIm9iamVjdC1zdG9yZS5oIgogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIm9iamVjdC5oIgorI2luY2x1ZGUgImxvY2tmaWxlLmgiCiAjaW5jbHVkZSAic3VibW9kdWxlLWNvbmZpZy5oIgogCiAvKiBUaGUgbWFpbiByZXBvc2l0b3J5ICovCiBzdGF0aWMgc3RydWN0IHJlcG9zaXRvcnkgdGhlX3JlcG87CiBzdHJ1Y3QgcmVwb3NpdG9yeSAqdGhlX3JlcG9zaXRvcnk7CitzdHJ1Y3QgaW5kZXhfc3RhdGUgdGhlX2luZGV4OwogCiB2b2lkIGluaXRpYWxpemVfdGhlX3JlcG9zaXRvcnkodm9pZCkKIHsKQEAgLTYzLDggKzcwLDE0IEBACiAJZnJlZShvbGRfZ2l0ZGlyKTsKIAogCXJlcG9fc2V0X2NvbW1vbmRpcihyZXBvLCBvLT5jb21tb25kaXIpOwotCWV4cGFuZF9iYXNlX2RpcigmcmVwby0+b2JqZWN0cy0+b2JqZWN0ZGlyLCBvLT5vYmplY3RfZGlyLAorCisJaWYgKCFyZXBvLT5vYmplY3RzLT5vZGIpIHsKKwkJcmVwby0+b2JqZWN0cy0+b2RiID0geGNhbGxvYygxLCBzaXplb2YoKnJlcG8tPm9iamVjdHMtPm9kYikpOworCQlyZXBvLT5vYmplY3RzLT5vZGJfdGFpbCA9ICZyZXBvLT5vYmplY3RzLT5vZGItPm5leHQ7CisJfQorCWV4cGFuZF9iYXNlX2RpcigmcmVwby0+b2JqZWN0cy0+b2RiLT5wYXRoLCBvLT5vYmplY3RfZGlyLAogCQkJcmVwby0+Y29tbW9uZGlyLCAib2JqZWN0cyIpOworCiAJZnJlZShyZXBvLT5vYmplY3RzLT5hbHRlcm5hdGVfZGIpOwogCXJlcG8tPm9iamVjdHMtPmFsdGVybmF0ZV9kYiA9IHhzdHJkdXBfb3JfbnVsbChvLT5hbHRlcm5hdGVfZGIpOwogCWV4cGFuZF9iYXNlX2RpcigmcmVwby0+Z3JhZnRfZmlsZSwgby0+Z3JhZnRfZmlsZSwKQEAgLTExMyw2ICsxMjYsOCBAQAogdm9pZCByZXBvX3NldF93b3JrdHJlZShzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgY29uc3QgY2hhciAqcGF0aCkKIHsKIAlyZXBvLT53b3JrdHJlZSA9IHJlYWxfcGF0aGR1cChwYXRoLCAxKTsKKworCXRyYWNlMl9kZWZfcmVwbyhyZXBvKTsKIH0KIAogc3RhdGljIGludCByZWFkX2FuZF92ZXJpZnlfcmVwb3NpdG9yeV9mb3JtYXQoc3RydWN0IHJlcG9zaXRvcnlfZm9ybWF0ICpmb3JtYXQsCkBAIC0xNDIsNyArMTU3LDcgQEAKIAkgICAgICBjb25zdCBjaGFyICpnaXRkaXIsCiAJICAgICAgY29uc3QgY2hhciAqd29ya3RyZWUpCiB7Ci0Jc3RydWN0IHJlcG9zaXRvcnlfZm9ybWF0IGZvcm1hdDsKKwlzdHJ1Y3QgcmVwb3NpdG9yeV9mb3JtYXQgZm9ybWF0ID0gUkVQT1NJVE9SWV9GT1JNQVRfSU5JVDsKIAltZW1zZXQocmVwbywgMCwgc2l6ZW9mKCpyZXBvKSk7CiAKIAlyZXBvLT5vYmplY3RzID0gcmF3X29iamVjdF9zdG9yZV9uZXcoKTsKQEAgLTE1OSw2ICsxNzQsNyBAQAogCWlmICh3b3JrdHJlZSkKIAkJcmVwb19zZXRfd29ya3RyZWUocmVwbywgd29ya3RyZWUpOwogCisJY2xlYXJfcmVwb3NpdG9yeV9mb3JtYXQoJmZvcm1hdCk7CiAJcmV0dXJuIDA7CiAKIGVycm9yOgpAQCAtMTY2LDM0ICsxODIsMjcgQEAKIAlyZXR1cm4gLTE7CiB9CiAKLS8qCi0gKiBJbml0aWFsaXplICdzdWJtb2R1bGUnIGFzIHRoZSBzdWJtb2R1bGUgZ2l2ZW4gYnkgJ3BhdGgnIGluIHBhcmVudCByZXBvc2l0b3J5Ci0gKiAnc3VwZXJwcm9qZWN0Jy4KLSAqIFJldHVybiAwIHVwb24gc3VjY2VzcyBhbmQgYSBub24temVybyB2YWx1ZSB1cG9uIGZhaWx1cmUuCi0gKi8KLWludCByZXBvX3N1Ym1vZHVsZV9pbml0KHN0cnVjdCByZXBvc2l0b3J5ICpzdWJtb2R1bGUsCitpbnQgcmVwb19zdWJtb2R1bGVfaW5pdChzdHJ1Y3QgcmVwb3NpdG9yeSAqc3VicmVwbywKIAkJCXN0cnVjdCByZXBvc2l0b3J5ICpzdXBlcnByb2plY3QsCi0JCQljb25zdCBjaGFyICpwYXRoKQorCQkJY29uc3Qgc3RydWN0IHN1Ym1vZHVsZSAqc3ViKQogewotCWNvbnN0IHN0cnVjdCBzdWJtb2R1bGUgKnN1YjsKIAlzdHJ1Y3Qgc3RyYnVmIGdpdGRpciA9IFNUUkJVRl9JTklUOwogCXN0cnVjdCBzdHJidWYgd29ya3RyZWUgPSBTVFJCVUZfSU5JVDsKIAlpbnQgcmV0ID0gMDsKIAotCXN1YiA9IHN1Ym1vZHVsZV9mcm9tX3BhdGgoc3VwZXJwcm9qZWN0LCAmbnVsbF9vaWQsIHBhdGgpOwogCWlmICghc3ViKSB7CiAJCXJldCA9IC0xOwogCQlnb3RvIG91dDsKIAl9CiAKLQlzdHJidWZfcmVwb193b3JrdHJlZV9wYXRoKCZnaXRkaXIsIHN1cGVycHJvamVjdCwgIiVzLy5naXQiLCBwYXRoKTsKLQlzdHJidWZfcmVwb193b3JrdHJlZV9wYXRoKCZ3b3JrdHJlZSwgc3VwZXJwcm9qZWN0LCAiJXMiLCBwYXRoKTsKKwlzdHJidWZfcmVwb193b3JrdHJlZV9wYXRoKCZnaXRkaXIsIHN1cGVycHJvamVjdCwgIiVzLy5naXQiLCBzdWItPnBhdGgpOworCXN0cmJ1Zl9yZXBvX3dvcmt0cmVlX3BhdGgoJndvcmt0cmVlLCBzdXBlcnByb2plY3QsICIlcyIsIHN1Yi0+cGF0aCk7CiAKLQlpZiAocmVwb19pbml0KHN1Ym1vZHVsZSwgZ2l0ZGlyLmJ1Ziwgd29ya3RyZWUuYnVmKSkgeworCWlmIChyZXBvX2luaXQoc3VicmVwbywgZ2l0ZGlyLmJ1Ziwgd29ya3RyZWUuYnVmKSkgewogCQkvKgotCQkgKiBJZiBpbml0aWxpemF0aW9uIGZhaWxzIHRoZW4gaXQgbWF5IGJlIGR1ZSB0byB0aGUgc3VibW9kdWxlCisJCSAqIElmIGluaXRpYWxpemF0aW9uIGZhaWxzIHRoZW4gaXQgbWF5IGJlIGR1ZSB0byB0aGUgc3VibW9kdWxlCiAJCSAqIG5vdCBiZWluZyBwb3B1bGF0ZWQgaW4gdGhlIHN1cGVycHJvamVjdCdzIHdvcmt0cmVlLiAgSW5zdGVhZAotCQkgKiB3ZSBjYW4gdHJ5IHRvIGluaXRpbGl6ZSB0aGUgc3VibW9kdWxlIGJ5IGZpbmRpbmcgaXQncyBnaXRkaXIKKwkJICogd2UgY2FuIHRyeSB0byBpbml0aWFsaXplIHRoZSBzdWJtb2R1bGUgYnkgZmluZGluZyBpdCdzIGdpdGRpcgogCQkgKiBpbiB0aGUgc3VwZXJwcm9qZWN0J3MgJ21vZHVsZXMnIGRpcmVjdG9yeS4gIEluIHRoaXMgY2FzZSB0aGUKIAkJICogc3VibW9kdWxlIHdvdWxkIG5vdCBoYXZlIGEgd29ya3RyZWUuCiAJCSAqLwpAQCAtMjAxLDE2ICsyMTAsMTYgQEAKIAkJc3RyYnVmX3JlcG9fZ2l0X3BhdGgoJmdpdGRpciwgc3VwZXJwcm9qZWN0LAogCQkJCSAgICAgIm1vZHVsZXMvJXMiLCBzdWItPm5hbWUpOwogCi0JCWlmIChyZXBvX2luaXQoc3VibW9kdWxlLCBnaXRkaXIuYnVmLCBOVUxMKSkgeworCQlpZiAocmVwb19pbml0KHN1YnJlcG8sIGdpdGRpci5idWYsIE5VTEwpKSB7CiAJCQlyZXQgPSAtMTsKIAkJCWdvdG8gb3V0OwogCQl9CiAJfQogCi0Jc3VibW9kdWxlLT5zdWJtb2R1bGVfcHJlZml4ID0geHN0cmZtdCgiJXMlcy8iLAotCQkJCQkgICAgICBzdXBlcnByb2plY3QtPnN1Ym1vZHVsZV9wcmVmaXggPwotCQkJCQkgICAgICBzdXBlcnByb2plY3QtPnN1Ym1vZHVsZV9wcmVmaXggOgotCQkJCQkgICAgICAiIiwgcGF0aCk7CisJc3VicmVwby0+c3VibW9kdWxlX3ByZWZpeCA9IHhzdHJmbXQoIiVzJXMvIiwKKwkJCQkJICAgIHN1cGVycHJvamVjdC0+c3VibW9kdWxlX3ByZWZpeCA/CisJCQkJCSAgICBzdXBlcnByb2plY3QtPnN1Ym1vZHVsZV9wcmVmaXggOgorCQkJCQkgICAgIiIsIHN1Yi0+cGF0aCk7CiAKIG91dDoKIAlzdHJidWZfcmVsZWFzZSgmZ2l0ZGlyKTsKQEAgLTI1NywzICsyNjYsMTIgQEAKIAogCXJldHVybiByZWFkX2luZGV4X2Zyb20ocmVwby0+aW5kZXgsIHJlcG8tPmluZGV4X2ZpbGUsIHJlcG8tPmdpdGRpcik7CiB9CisKK2ludCByZXBvX2hvbGRfbG9ja2VkX2luZGV4KHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkJICAgc3RydWN0IGxvY2tfZmlsZSAqbGYsCisJCQkgICBpbnQgZmxhZ3MpCit7CisJaWYgKCFyZXBvLT5pbmRleF9maWxlKQorCQlCVUcoInRoZSByZXBvIGhhc24ndCBiZWVuIHNldHVwIik7CisJcmV0dXJuIGhvbGRfbG9ja19maWxlX2Zvcl91cGRhdGUobGYsIHJlcG8tPmluZGV4X2ZpbGUsIGZsYWdzKTsKK30KZGlmZiAtLWdpdCBhL3JlcG9zaXRvcnkuaCBiL3JlcG9zaXRvcnkuaAppbmRleCA5ZjE2YzQyLi4wNDAwNTdkIDEwMDY0NAotLS0gYS9yZXBvc2l0b3J5LmgKKysrIGIvcmVwb3NpdG9yeS5oCkBAIC02LDkgKzYsMzkgQEAKIHN0cnVjdCBjb25maWdfc2V0Owogc3RydWN0IGdpdF9oYXNoX2FsZ287CiBzdHJ1Y3QgaW5kZXhfc3RhdGU7CitzdHJ1Y3QgbG9ja19maWxlOworc3RydWN0IHBhdGhzcGVjOwogc3RydWN0IHJhd19vYmplY3Rfc3RvcmU7CiBzdHJ1Y3Qgc3VibW9kdWxlX2NhY2hlOwogCitlbnVtIHVudHJhY2tlZF9jYWNoZV9zZXR0aW5nIHsKKwlVTlRSQUNLRURfQ0FDSEVfVU5TRVQgPSAtMSwKKwlVTlRSQUNLRURfQ0FDSEVfUkVNT1ZFID0gMCwKKwlVTlRSQUNLRURfQ0FDSEVfS0VFUCA9IDEsCisJVU5UUkFDS0VEX0NBQ0hFX1dSSVRFID0gMgorfTsKKworZW51bSBmZXRjaF9uZWdvdGlhdGlvbl9zZXR0aW5nIHsKKwlGRVRDSF9ORUdPVElBVElPTl9VTlNFVCA9IC0xLAorCUZFVENIX05FR09USUFUSU9OX05PTkUgPSAwLAorCUZFVENIX05FR09USUFUSU9OX0RFRkFVTFQgPSAxLAorCUZFVENIX05FR09USUFUSU9OX1NLSVBQSU5HID0gMiwKK307CisKK3N0cnVjdCByZXBvX3NldHRpbmdzIHsKKwlpbnQgaW5pdGlhbGl6ZWQ7CisKKwlpbnQgY29yZV9jb21taXRfZ3JhcGg7CisJaW50IGdjX3dyaXRlX2NvbW1pdF9ncmFwaDsKKwlpbnQgZmV0Y2hfd3JpdGVfY29tbWl0X2dyYXBoOworCisJaW50IGluZGV4X3ZlcnNpb247CisJZW51bSB1bnRyYWNrZWRfY2FjaGVfc2V0dGluZyBjb3JlX3VudHJhY2tlZF9jYWNoZTsKKworCWludCBwYWNrX3VzZV9zcGFyc2U7CisJZW51bSBmZXRjaF9uZWdvdGlhdGlvbl9zZXR0aW5nIGZldGNoX25lZ290aWF0aW9uX2FsZ29yaXRobTsKK307CisKIHN0cnVjdCByZXBvc2l0b3J5IHsKIAkvKiBFbnZpcm9ubWVudCAqLwogCS8qCkBAIC03MCw2ICsxMDAsOCBAQAogCSAqLwogCWNoYXIgKnN1Ym1vZHVsZV9wcmVmaXg7CiAKKwlzdHJ1Y3QgcmVwb19zZXR0aW5ncyBzZXR0aW5nczsKKwogCS8qIFN1YnN5c3RlbXMgKi8KIAkvKgogCSAqIFJlcG9zaXRvcnkncyBjb25maWcgd2hpY2ggY29udGFpbnMga2V5LXZhbHVlIHBhaXJzIGZyb20gdGhlIHVzdWFsCkBAIC05MCw2ICsxMjIsMTIgQEAKIAkvKiBSZXBvc2l0b3J5J3MgY3VycmVudCBoYXNoIGFsZ29yaXRobSwgYXMgc2VyaWFsaXplZCBvbiBkaXNrLiAqLwogCWNvbnN0IHN0cnVjdCBnaXRfaGFzaF9hbGdvICpoYXNoX2FsZ287CiAKKwkvKiBBIHVuaXF1ZS1pZCBmb3IgdHJhY2luZyBwdXJwb3Nlcy4gKi8KKwlpbnQgdHJhY2UyX3JlcG9faWQ7CisKKwkvKiBUcnVlIGlmIGNvbW1pdC1ncmFwaCBoYXMgYmVlbiBkaXNhYmxlZCB3aXRoaW4gdGhpcyBwcm9jZXNzLiAqLworCWludCBjb21taXRfZ3JhcGhfZGlzYWJsZWQ7CisKIAkvKiBDb25maWd1cmF0aW9ucyAqLwogCiAJLyogSW5kaWNhdGUgaWYgYSByZXBvc2l0b3J5IGhhcyBhIGRpZmZlcmVudCAnY29tbW9uZGlyJyBmcm9tICdnaXRkaXInICovCkBAIC0xMTYsOSArMTU0LDE3IEBACiB2b2lkIHJlcG9fc2V0X2hhc2hfYWxnbyhzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgaW50IGFsZ28pOwogdm9pZCBpbml0aWFsaXplX3RoZV9yZXBvc2l0b3J5KHZvaWQpOwogaW50IHJlcG9faW5pdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqZ2l0ZGlyLCBjb25zdCBjaGFyICp3b3JrdHJlZSk7Ci1pbnQgcmVwb19zdWJtb2R1bGVfaW5pdChzdHJ1Y3QgcmVwb3NpdG9yeSAqc3VibW9kdWxlLAorCisvKgorICogSW5pdGlhbGl6ZSB0aGUgcmVwb3NpdG9yeSAnc3VicmVwbycgYXMgdGhlIHN1Ym1vZHVsZSBnaXZlbiBieSB0aGUKKyAqIHN0cnVjdCBzdWJtb2R1bGUgJ3N1YicgaW4gcGFyZW50IHJlcG9zaXRvcnkgJ3N1cGVycHJvamVjdCcuCisgKiBSZXR1cm4gMCB1cG9uIHN1Y2Nlc3MgYW5kIGEgbm9uLXplcm8gdmFsdWUgdXBvbiBmYWlsdXJlLCB3aGljaCBtYXkgaGFwcGVuCisgKiBpZiB0aGUgc3VibW9kdWxlIGlzIG5vdCBmb3VuZCwgb3IgJ3N1YicgaXMgTlVMTC4KKyAqLworc3RydWN0IHN1Ym1vZHVsZTsKK2ludCByZXBvX3N1Ym1vZHVsZV9pbml0KHN0cnVjdCByZXBvc2l0b3J5ICpzdWJyZXBvLAogCQkJc3RydWN0IHJlcG9zaXRvcnkgKnN1cGVycHJvamVjdCwKLQkJCWNvbnN0IGNoYXIgKnBhdGgpOworCQkJY29uc3Qgc3RydWN0IHN1Ym1vZHVsZSAqc3ViKTsKIHZvaWQgcmVwb19jbGVhcihzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbyk7CiAKIC8qCkBAIC0xMjYsOSArMTcyLDI0IEBACiAgKiBiZSBhbGxvY2F0ZWQgaWYgbmVlZGVkLgogICoKICAqIFJldHVybiB0aGUgbnVtYmVyIG9mIGluZGV4IGVudHJpZXMgaW4gdGhlIHBvcHVsYXRlZCBpbmRleCBvciBhIHZhbHVlIGxlc3MKLSAqIHRoYW4gemVybyBpZiBhbiBlcnJvciBvY2N1cmVkLiAgSWYgdGhlIHJlcG9zaXRvcnkncyBpbmRleCBoYXMgYWxyZWFkeSBiZWVuCisgKiB0aGFuIHplcm8gaWYgYW4gZXJyb3Igb2NjdXJyZWQuICBJZiB0aGUgcmVwb3NpdG9yeSdzIGluZGV4IGhhcyBhbHJlYWR5IGJlZW4KICAqIHBvcHVsYXRlZCB0aGVuIHRoZSBudW1iZXIgb2YgZW50cmllcyB3aWxsIHNpbXBseSBiZSByZXR1cm5lZC4KICAqLwogaW50IHJlcG9fcmVhZF9pbmRleChzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbyk7CitpbnQgcmVwb19ob2xkX2xvY2tlZF9pbmRleChzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCSAgIHN0cnVjdCBsb2NrX2ZpbGUgKmxmLAorCQkJICAgaW50IGZsYWdzKTsKKworaW50IHJlcG9fcmVhZF9pbmRleF9wcmVsb2FkKHN0cnVjdCByZXBvc2l0b3J5ICosCisJCQkgICAgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYywKKwkJCSAgICB1bnNpZ25lZCByZWZyZXNoX2ZsYWdzKTsKK2ludCByZXBvX3JlYWRfaW5kZXhfdW5tZXJnZWQoc3RydWN0IHJlcG9zaXRvcnkgKik7CisvKgorICogT3Bwb3J0dW5pc3RpY2FsbHkgdXBkYXRlIHRoZSBpbmRleCBidXQgZG8gbm90IGNvbXBsYWluIGlmIHdlIGNhbid0LgorICogVGhlIGxvY2tmaWxlIGlzIGFsd2F5cyBjb21taXR0ZWQgb3Igcm9sbGVkIGJhY2suCisgKi8KK3ZvaWQgcmVwb191cGRhdGVfaW5kZXhfaWZfYWJsZShzdHJ1Y3QgcmVwb3NpdG9yeSAqLCBzdHJ1Y3QgbG9ja19maWxlICopOworCit2b2lkIHByZXBhcmVfcmVwb19zZXR0aW5ncyhzdHJ1Y3QgcmVwb3NpdG9yeSAqcik7CiAKICNlbmRpZiAvKiBSRVBPU0lUT1JZX0ggKi8KZGlmZiAtLWdpdCBhL3JlcmVyZS5jIGIvcmVyZXJlLmMKaW5kZXggYjViMjM1Ny4uOTI4MTEzMSAxMDA2NDQKLS0tIGEvcmVyZXJlLmMKKysrIGIvcmVyZXJlLmMKQEAgLTUyLDcgKzUyLDcgQEAKIAogc3RhdGljIGNvbnN0IGNoYXIgKnJlcmVyZV9pZF9oZXgoY29uc3Qgc3RydWN0IHJlcmVyZV9pZCAqaWQpCiB7Ci0JcmV0dXJuIHNoYTFfdG9faGV4KGlkLT5jb2xsZWN0aW9uLT5oYXNoKTsKKwlyZXR1cm4gaGFzaF90b19oZXgoaWQtPmNvbGxlY3Rpb24tPmhhc2gpOwogfQogCiBzdGF0aWMgdm9pZCBmaXRfdmFyaWFudChzdHJ1Y3QgcmVyZXJlX2RpciAqcnJfZGlyLCBpbnQgdmFyaWFudCkKQEAgLTExNSw3ICsxMTUsNyBAQAogc3RhdGljIHZvaWQgc2Nhbl9yZXJlcmVfZGlyKHN0cnVjdCByZXJlcmVfZGlyICpycl9kaXIpCiB7CiAJc3RydWN0IGRpcmVudCAqZGU7Ci0JRElSICpkaXIgPSBvcGVuZGlyKGdpdF9wYXRoKCJyci1jYWNoZS8lcyIsIHNoYTFfdG9faGV4KHJyX2Rpci0+aGFzaCkpKTsKKwlESVIgKmRpciA9IG9wZW5kaXIoZ2l0X3BhdGgoInJyLWNhY2hlLyVzIiwgaGFzaF90b19oZXgocnJfZGlyLT5oYXNoKSkpOwogCiAJaWYgKCFkaXIpCiAJCXJldHVybjsKQEAgLTE4Niw5ICsxODYsOSBAQAogCXJldHVybiBpZDsKIH0KIAotc3RhdGljIHN0cnVjdCByZXJlcmVfaWQgKm5ld19yZXJlcmVfaWQodW5zaWduZWQgY2hhciAqc2hhMSkKK3N0YXRpYyBzdHJ1Y3QgcmVyZXJlX2lkICpuZXdfcmVyZXJlX2lkKHVuc2lnbmVkIGNoYXIgKmhhc2gpCiB7Ci0JcmV0dXJuIG5ld19yZXJlcmVfaWRfaGV4KHNoYTFfdG9faGV4KHNoYTEpKTsKKwlyZXR1cm4gbmV3X3JlcmVyZV9pZF9oZXgoaGFzaF90b19oZXgoaGFzaCkpOwogfQogCiAvKgpAQCAtMTk4LDEwICsxOTgsMTAgQEAKICAqIHdvcmsgb24gKGkuZS4gd2hhdCBpcyBsZWZ0IGJ5IHRoZSBwcmV2aW91cyBpbnZvY2F0aW9uIG9mICJnaXQKICAqIHJlcmVyZSIgZHVyaW5nIHRoZSBjdXJyZW50IGNvbmZsaWN0IHJlc29sdXRpb24gc2Vzc2lvbikuCiAgKi8KLXN0YXRpYyB2b2lkIHJlYWRfcnIoc3RydWN0IHN0cmluZ19saXN0ICpycikKK3N0YXRpYyB2b2lkIHJlYWRfcnIoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBzdHJpbmdfbGlzdCAqcnIpCiB7CiAJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKLQlGSUxFICppbiA9IGZvcGVuX29yX3dhcm4oZ2l0X3BhdGhfbWVyZ2VfcnIodGhlX3JlcG9zaXRvcnkpLCAiciIpOworCUZJTEUgKmluID0gZm9wZW5fb3Jfd2FybihnaXRfcGF0aF9tZXJnZV9ycihyKSwgInIiKTsKIAogCWlmICghaW4pCiAJCXJldHVybjsKQEAgLTQzMSw3ICs0MzEsNyBAQAogICogYW5kIE5VTCBjb25jYXRlbmF0ZWQgdG9nZXRoZXIuCiAgKgogICogUmV0dXJuIDEgaWYgY29uZmxpY3QgaHVua3MgYXJlIGZvdW5kLCAwIGlmIHRoZXJlIGFyZSBubyBjb25mbGljdAotICogaHVua3MgYW5kIC0xIGlmIGFuIGVycm9yIG9jY3VyZWQuCisgKiBodW5rcyBhbmQgLTEgaWYgYW4gZXJyb3Igb2NjdXJyZWQuCiAgKi8KIHN0YXRpYyBpbnQgaGFuZGxlX3BhdGgodW5zaWduZWQgY2hhciAqaGFzaCwgc3RydWN0IHJlcmVyZV9pbyAqaW8sIGludCBtYXJrZXJfc2l6ZSkKIHsKQEAgLTU2MSw3ICs1NjEsNyBAQAogewogCWludCBpOwogCi0JaWYgKHJlYWRfaW5kZXgoci0+aW5kZXgpIDwgMCkKKwlpZiAocmVwb19yZWFkX2luZGV4KHIpIDwgMCkKIAkJcmV0dXJuIGVycm9yKF8oImluZGV4IGZpbGUgY29ycnVwdCIpKTsKIAogCWZvciAoaSA9IDA7IGkgPCByLT5pbmRleC0+Y2FjaGVfbnI7KSB7CkBAIC01OTMsOSArNTkzLDkgQEAKIHsKIAlpbnQgaTsKIAotCWlmIChzZXR1cF9yZXJlcmUobWVyZ2VfcnIsIFJFUkVSRV9SRUFET05MWSkpCisJaWYgKHNldHVwX3JlcmVyZShyLCBtZXJnZV9yciwgUkVSRVJFX1JFQURPTkxZKSkKIAkJcmV0dXJuIDA7Ci0JaWYgKHJlYWRfaW5kZXgoci0+aW5kZXgpIDwgMCkKKwlpZiAocmVwb19yZWFkX2luZGV4KHIpIDwgMCkKIAkJcmV0dXJuIGVycm9yKF8oImluZGV4IGZpbGUgY29ycnVwdCIpKTsKIAogCWZvciAoaSA9IDA7IGkgPCByLT5pbmRleC0+Y2FjaGVfbnI7KSB7CkBAIC03MDUsNyArNzA1LDcgQEAKIAlzdHJ1Y3QgbG9ja19maWxlIGluZGV4X2xvY2sgPSBMT0NLX0lOSVQ7CiAJaW50IGk7CiAKLQlob2xkX2xvY2tlZF9pbmRleCgmaW5kZXhfbG9jaywgTE9DS19ESUVfT05fRVJST1IpOworCXJlcG9faG9sZF9sb2NrZWRfaW5kZXgociwgJmluZGV4X2xvY2ssIExPQ0tfRElFX09OX0VSUk9SKTsKIAogCWZvciAoaSA9IDA7IGkgPCB1cGRhdGUtPm5yOyBpKyspIHsKIAkJc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKml0ZW0gPSAmdXBkYXRlLT5pdGVtc1tpXTsKQEAgLTg4Miw3ICs4ODIsNyBAQAogCXJldHVybiAxOwogfQogCi1pbnQgc2V0dXBfcmVyZXJlKHN0cnVjdCBzdHJpbmdfbGlzdCAqbWVyZ2VfcnIsIGludCBmbGFncykKK2ludCBzZXR1cF9yZXJlcmUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBzdHJpbmdfbGlzdCAqbWVyZ2VfcnIsIGludCBmbGFncykKIHsKIAlpbnQgZmQ7CiAKQEAgLTg5Niw5ICs4OTYsOSBAQAogCQlmZCA9IDA7CiAJZWxzZQogCQlmZCA9IGhvbGRfbG9ja19maWxlX2Zvcl91cGRhdGUoJndyaXRlX2xvY2ssCi0JCQkJCSAgICAgICBnaXRfcGF0aF9tZXJnZV9ycih0aGVfcmVwb3NpdG9yeSksCisJCQkJCSAgICAgICBnaXRfcGF0aF9tZXJnZV9ycihyKSwKIAkJCQkJICAgICAgIExPQ0tfRElFX09OX0VSUk9SKTsKLQlyZWFkX3JyKG1lcmdlX3JyKTsKKwlyZWFkX3JyKHIsIG1lcmdlX3JyKTsKIAlyZXR1cm4gZmQ7CiB9CiAKQEAgLTkxMiw3ICs5MTIsNyBAQAogCXN0cnVjdCBzdHJpbmdfbGlzdCBtZXJnZV9yciA9IFNUUklOR19MSVNUX0lOSVRfRFVQOwogCWludCBmZCwgc3RhdHVzOwogCi0JZmQgPSBzZXR1cF9yZXJlcmUoJm1lcmdlX3JyLCBmbGFncyk7CisJZmQgPSBzZXR1cF9yZXJlcmUociwgJm1lcmdlX3JyLCBmbGFncyk7CiAJaWYgKGZkIDwgMCkKIAkJcmV0dXJuIDA7CiAJc3RhdHVzID0gZG9fcGxhaW5fcmVyZXJlKHIsICZtZXJnZV9yciwgZmQpOwpAQCAtMTEwNywxMCArMTEwNywxMCBAQAogCXN0cnVjdCBzdHJpbmdfbGlzdCBjb25mbGljdCA9IFNUUklOR19MSVNUX0lOSVRfRFVQOwogCXN0cnVjdCBzdHJpbmdfbGlzdCBtZXJnZV9yciA9IFNUUklOR19MSVNUX0lOSVRfRFVQOwogCi0JaWYgKHJlYWRfaW5kZXgoci0+aW5kZXgpIDwgMCkKKwlpZiAocmVwb19yZWFkX2luZGV4KHIpIDwgMCkKIAkJcmV0dXJuIGVycm9yKF8oImluZGV4IGZpbGUgY29ycnVwdCIpKTsKIAotCWZkID0gc2V0dXBfcmVyZXJlKCZtZXJnZV9yciwgUkVSRVJFX05PQVVUT1VQREFURSk7CisJZmQgPSBzZXR1cF9yZXJlcmUociwgJm1lcmdlX3JyLCBSRVJFUkVfTk9BVVRPVVBEQVRFKTsKIAlpZiAoZmQgPCAwKQogCQlyZXR1cm4gMDsKIApAQCAtMTE3OCw3ICsxMTc4LDcgQEAKIAkJdW5saW5rX3JyX2l0ZW0oaWQpOwogfQogCi12b2lkIHJlcmVyZV9nYyhzdHJ1Y3Qgc3RyaW5nX2xpc3QgKnJyKQordm9pZCByZXJlcmVfZ2Moc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBzdHJpbmdfbGlzdCAqcnIpCiB7CiAJc3RydWN0IHN0cmluZ19saXN0IHRvX3JlbW92ZSA9IFNUUklOR19MSVNUX0lOSVRfRFVQOwogCURJUiAqZGlyOwpAQCAtMTE4OCw3ICsxMTg4LDcgQEAKIAl0aW1lc3RhbXBfdCBjdXRvZmZfbm9yZXNvbHZlID0gbm93IC0gMTUgKiA4NjQwMDsKIAl0aW1lc3RhbXBfdCBjdXRvZmZfcmVzb2x2ZSA9IG5vdyAtIDYwICogODY0MDA7CiAKLQlpZiAoc2V0dXBfcmVyZXJlKHJyLCAwKSA8IDApCisJaWYgKHNldHVwX3JlcmVyZShyLCByciwgMCkgPCAwKQogCQlyZXR1cm47CiAKIAlnaXRfY29uZmlnX2dldF9leHBpcnlfaW5fZGF5cygiZ2MucmVyZXJlcmVzb2x2ZWQiLCAmY3V0b2ZmX3Jlc29sdmUsIG5vdyk7CkBAIC0xMjM2LDExICsxMjM2LDExIEBACiAgKgogICogTkVFRFNXT1JLOiBzaG91bGRuJ3Qgd2UgYmUgY2FsbGluZyB0aGlzIGZyb20gInJlc2V0IC0taGFyZCI/CiAgKi8KLXZvaWQgcmVyZXJlX2NsZWFyKHN0cnVjdCBzdHJpbmdfbGlzdCAqbWVyZ2VfcnIpCit2b2lkIHJlcmVyZV9jbGVhcihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHN0cmluZ19saXN0ICptZXJnZV9ycikKIHsKIAlpbnQgaTsKIAotCWlmIChzZXR1cF9yZXJlcmUobWVyZ2VfcnIsIDApIDwgMCkKKwlpZiAoc2V0dXBfcmVyZXJlKHIsIG1lcmdlX3JyLCAwKSA8IDApCiAJCXJldHVybjsKIAogCWZvciAoaSA9IDA7IGkgPCBtZXJnZV9yci0+bnI7IGkrKykgewpAQCAtMTI1MCw2ICsxMjUwLDYgQEAKIAkJCXJtZGlyKHJlcmVyZV9wYXRoKGlkLCBOVUxMKSk7CiAJCX0KIAl9Ci0JdW5saW5rX29yX3dhcm4oZ2l0X3BhdGhfbWVyZ2VfcnIodGhlX3JlcG9zaXRvcnkpKTsKKwl1bmxpbmtfb3Jfd2FybihnaXRfcGF0aF9tZXJnZV9ycihyKSk7CiAJcm9sbGJhY2tfbG9ja19maWxlKCZ3cml0ZV9sb2NrKTsKIH0KZGlmZiAtLWdpdCBhL3JlcmVyZS5oIGIvcmVyZXJlLmgKaW5kZXggNWFkODg2NC4uYzMyZDc5YyAxMDA2NDQKLS0tIGEvcmVyZXJlLmgKKysrIGIvcmVyZXJlLmgKQEAgLTIzLDcgKzIzLDcgQEAKIAlpbnQgdmFyaWFudDsKIH07CiAKLWludCBzZXR1cF9yZXJlcmUoc3RydWN0IHN0cmluZ19saXN0ICosIGludCk7CitpbnQgc2V0dXBfcmVyZXJlKHN0cnVjdCByZXBvc2l0b3J5ICosc3RydWN0IHN0cmluZ19saXN0ICosIGludCk7CiAjaWZuZGVmIE5PX1RIRV9SRVBPU0lUT1JZX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjZGVmaW5lIHJlcmVyZShmbGFncykgcmVwb19yZXJlcmUodGhlX3JlcG9zaXRvcnksIGZsYWdzKQogI2VuZGlmCkBAIC0zNyw4ICszNyw4IEBACiBjb25zdCBjaGFyICpyZXJlcmVfcGF0aChjb25zdCBzdHJ1Y3QgcmVyZXJlX2lkICosIGNvbnN0IGNoYXIgKmZpbGUpOwogaW50IHJlcmVyZV9mb3JnZXQoc3RydWN0IHJlcG9zaXRvcnkgKiwgc3RydWN0IHBhdGhzcGVjICopOwogaW50IHJlcmVyZV9yZW1haW5pbmcoc3RydWN0IHJlcG9zaXRvcnkgKiwgc3RydWN0IHN0cmluZ19saXN0ICopOwotdm9pZCByZXJlcmVfY2xlYXIoc3RydWN0IHN0cmluZ19saXN0ICopOwotdm9pZCByZXJlcmVfZ2Moc3RydWN0IHN0cmluZ19saXN0ICopOwordm9pZCByZXJlcmVfY2xlYXIoc3RydWN0IHJlcG9zaXRvcnkgKiwgc3RydWN0IHN0cmluZ19saXN0ICopOwordm9pZCByZXJlcmVfZ2Moc3RydWN0IHJlcG9zaXRvcnkgKiwgc3RydWN0IHN0cmluZ19saXN0ICopOwogCiAjZGVmaW5lIE9QVF9SRVJFUkVfQVVUT1VQREFURSh2KSBPUFRfVVlOKDAsICJyZXJlcmUtYXV0b3VwZGF0ZSIsICh2KSwgXAogCU5fKCJ1cGRhdGUgdGhlIGluZGV4IHdpdGggcmV1c2VkIGNvbmZsaWN0IHJlc29sdXRpb24gaWYgcG9zc2libGUiKSkKZGlmZiAtLWdpdCBhL3Jlc29sdmUtdW5kby5oIGIvcmVzb2x2ZS11bmRvLmgKaW5kZXggZmJlMzQ4ZS4uMmIzZjBmOSAxMDA2NDQKLS0tIGEvcmVzb2x2ZS11bmRvLmgKKysrIGIvcmVzb2x2ZS11bmRvLmgKQEAgLTgsMTIgKzgsMTIgQEAKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZFszXTsKIH07CiAKLWV4dGVybiB2b2lkIHJlY29yZF9yZXNvbHZlX3VuZG8oc3RydWN0IGluZGV4X3N0YXRlICosIHN0cnVjdCBjYWNoZV9lbnRyeSAqKTsKLWV4dGVybiB2b2lkIHJlc29sdmVfdW5kb193cml0ZShzdHJ1Y3Qgc3RyYnVmICosIHN0cnVjdCBzdHJpbmdfbGlzdCAqKTsKLWV4dGVybiBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKnJlc29sdmVfdW5kb19yZWFkKGNvbnN0IGNoYXIgKiwgdW5zaWduZWQgbG9uZyk7Ci1leHRlcm4gdm9pZCByZXNvbHZlX3VuZG9fY2xlYXJfaW5kZXgoc3RydWN0IGluZGV4X3N0YXRlICopOwotZXh0ZXJuIGludCB1bm1lcmdlX2luZGV4X2VudHJ5X2F0KHN0cnVjdCBpbmRleF9zdGF0ZSAqLCBpbnQpOwotZXh0ZXJuIHZvaWQgdW5tZXJnZV9pbmRleChzdHJ1Y3QgaW5kZXhfc3RhdGUgKiwgY29uc3Qgc3RydWN0IHBhdGhzcGVjICopOwotZXh0ZXJuIHZvaWQgdW5tZXJnZV9tYXJrZWRfaW5kZXgoc3RydWN0IGluZGV4X3N0YXRlICopOwordm9pZCByZWNvcmRfcmVzb2x2ZV91bmRvKHN0cnVjdCBpbmRleF9zdGF0ZSAqLCBzdHJ1Y3QgY2FjaGVfZW50cnkgKik7Cit2b2lkIHJlc29sdmVfdW5kb193cml0ZShzdHJ1Y3Qgc3RyYnVmICosIHN0cnVjdCBzdHJpbmdfbGlzdCAqKTsKK3N0cnVjdCBzdHJpbmdfbGlzdCAqcmVzb2x2ZV91bmRvX3JlYWQoY29uc3QgY2hhciAqLCB1bnNpZ25lZCBsb25nKTsKK3ZvaWQgcmVzb2x2ZV91bmRvX2NsZWFyX2luZGV4KHN0cnVjdCBpbmRleF9zdGF0ZSAqKTsKK2ludCB1bm1lcmdlX2luZGV4X2VudHJ5X2F0KHN0cnVjdCBpbmRleF9zdGF0ZSAqLCBpbnQpOwordm9pZCB1bm1lcmdlX2luZGV4KHN0cnVjdCBpbmRleF9zdGF0ZSAqLCBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKik7Cit2b2lkIHVubWVyZ2VfbWFya2VkX2luZGV4KHN0cnVjdCBpbmRleF9zdGF0ZSAqKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9yZXZpc2lvbi5jIGIvcmV2aXNpb24uYwppbmRleCAxM2UwNTE5Li44MTM2OTI5IDEwMDY0NAotLS0gYS9yZXZpc2lvbi5jCisrKyBiL3JldmlzaW9uLmMKQEAgLTI3LDYgKzI3LDggQEAKICNpbmNsdWRlICJjb21taXQtcmVhY2guaCIKICNpbmNsdWRlICJjb21taXQtZ3JhcGguaCIKICNpbmNsdWRlICJwcmlvLXF1ZXVlLmgiCisjaW5jbHVkZSAiaGFzaG1hcC5oIgorI2luY2x1ZGUgInV0ZjguaCIKIAogdm9sYXRpbGUgc2hvd19lYXJseV9vdXRwdXRfZm5fdCBzaG93X2Vhcmx5X291dHB1dDsKIApAQCAtNjcsMTAgKzY5LDEwIEBACiAJd2hpbGUgKHRyZWVfZW50cnkoJmRlc2MsICZlbnRyeSkpIHsKIAkJc3dpdGNoIChvYmplY3RfdHlwZShlbnRyeS5tb2RlKSkgewogCQljYXNlIE9CSl9UUkVFOgotCQkJbWFya190cmVlX3VuaW50ZXJlc3RpbmcociwgbG9va3VwX3RyZWUociwgZW50cnkub2lkKSk7CisJCQltYXJrX3RyZWVfdW5pbnRlcmVzdGluZyhyLCBsb29rdXBfdHJlZShyLCAmZW50cnkub2lkKSk7CiAJCQlicmVhazsKIAkJY2FzZSBPQkpfQkxPQjoKLQkJCW1hcmtfYmxvYl91bmludGVyZXN0aW5nKGxvb2t1cF9ibG9iKHIsIGVudHJ5Lm9pZCkpOworCQkJbWFya19ibG9iX3VuaW50ZXJlc3RpbmcobG9va3VwX2Jsb2IociwgJmVudHJ5Lm9pZCkpOwogCQkJYnJlYWs7CiAJCWRlZmF1bHQ6CiAJCQkvKiBTdWJwcm9qZWN0IGNvbW1pdCAtIG5vdCBpbiB0aGlzIHJlcG9zaXRvcnkgKi8KQEAgLTk5LDYgKzEwMSwxNTIgQEAKIAltYXJrX3RyZWVfY29udGVudHNfdW5pbnRlcmVzdGluZyhyLCB0cmVlKTsKIH0KIAorc3RydWN0IHBhdGhfYW5kX29pZHNfZW50cnkgeworCXN0cnVjdCBoYXNobWFwX2VudHJ5IGVudDsKKwljaGFyICpwYXRoOworCXN0cnVjdCBvaWRzZXQgdHJlZXM7Cit9OworCitzdGF0aWMgaW50IHBhdGhfYW5kX29pZHNfY21wKGNvbnN0IHZvaWQgKmhhc2htYXBfY21wX2ZuX2RhdGEsCisJCQkgICAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplcHRyLAorCQkJICAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAorCQkJICAgICBjb25zdCB2b2lkICprZXlkYXRhKQoreworCWNvbnN0IHN0cnVjdCBwYXRoX2FuZF9vaWRzX2VudHJ5ICplMSwgKmUyOworCisJZTEgPSBjb250YWluZXJfb2YoZXB0ciwgY29uc3Qgc3RydWN0IHBhdGhfYW5kX29pZHNfZW50cnksIGVudCk7CisJZTIgPSBjb250YWluZXJfb2YoZW50cnlfb3Jfa2V5LCBjb25zdCBzdHJ1Y3QgcGF0aF9hbmRfb2lkc19lbnRyeSwgZW50KTsKKworCXJldHVybiBzdHJjbXAoZTEtPnBhdGgsIGUyLT5wYXRoKTsKK30KKworc3RhdGljIHZvaWQgcGF0aHNfYW5kX29pZHNfaW5pdChzdHJ1Y3QgaGFzaG1hcCAqbWFwKQoreworCWhhc2htYXBfaW5pdChtYXAsIHBhdGhfYW5kX29pZHNfY21wLCBOVUxMLCAwKTsKK30KKworc3RhdGljIHZvaWQgcGF0aHNfYW5kX29pZHNfY2xlYXIoc3RydWN0IGhhc2htYXAgKm1hcCkKK3sKKwlzdHJ1Y3QgaGFzaG1hcF9pdGVyIGl0ZXI7CisJc3RydWN0IHBhdGhfYW5kX29pZHNfZW50cnkgKmVudHJ5OworCisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeShtYXAsICZpdGVyLCBlbnRyeSwgZW50IC8qIG1lbWJlciBuYW1lICovKSB7CisJCW9pZHNldF9jbGVhcigmZW50cnktPnRyZWVzKTsKKwkJZnJlZShlbnRyeS0+cGF0aCk7CisJfQorCisJaGFzaG1hcF9mcmVlX2VudHJpZXMobWFwLCBzdHJ1Y3QgcGF0aF9hbmRfb2lkc19lbnRyeSwgZW50KTsKK30KKworc3RhdGljIHZvaWQgcGF0aHNfYW5kX29pZHNfaW5zZXJ0KHN0cnVjdCBoYXNobWFwICptYXAsCisJCQkJICBjb25zdCBjaGFyICpwYXRoLAorCQkJCSAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQoreworCWludCBoYXNoID0gc3RyaGFzaChwYXRoKTsKKwlzdHJ1Y3QgcGF0aF9hbmRfb2lkc19lbnRyeSBrZXk7CisJc3RydWN0IHBhdGhfYW5kX29pZHNfZW50cnkgKmVudHJ5OworCisJaGFzaG1hcF9lbnRyeV9pbml0KCZrZXkuZW50LCBoYXNoKTsKKworCS8qIHVzZSBhIHNoYWxsb3cgY29weSBmb3IgdGhlIGxvb2t1cCAqLworCWtleS5wYXRoID0gKGNoYXIgKilwYXRoOworCW9pZHNldF9pbml0KCZrZXkudHJlZXMsIDApOworCisJZW50cnkgPSBoYXNobWFwX2dldF9lbnRyeShtYXAsICZrZXksIGVudCwgTlVMTCk7CisJaWYgKCFlbnRyeSkgeworCQllbnRyeSA9IHhjYWxsb2MoMSwgc2l6ZW9mKHN0cnVjdCBwYXRoX2FuZF9vaWRzX2VudHJ5KSk7CisJCWhhc2htYXBfZW50cnlfaW5pdCgmZW50cnktPmVudCwgaGFzaCk7CisJCWVudHJ5LT5wYXRoID0geHN0cmR1cChrZXkucGF0aCk7CisJCW9pZHNldF9pbml0KCZlbnRyeS0+dHJlZXMsIDE2KTsKKwkJaGFzaG1hcF9wdXQobWFwLCAmZW50cnktPmVudCk7CisJfQorCisJb2lkc2V0X2luc2VydCgmZW50cnktPnRyZWVzLCBvaWQpOworfQorCitzdGF0aWMgdm9pZCBhZGRfY2hpbGRyZW5fYnlfcGF0aChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgc3RydWN0IHRyZWUgKnRyZWUsCisJCQkJIHN0cnVjdCBoYXNobWFwICptYXApCit7CisJc3RydWN0IHRyZWVfZGVzYyBkZXNjOworCXN0cnVjdCBuYW1lX2VudHJ5IGVudHJ5OworCisJaWYgKCF0cmVlKQorCQlyZXR1cm47CisKKwlpZiAocGFyc2VfdHJlZV9nZW50bHkodHJlZSwgMSkgPCAwKQorCQlyZXR1cm47CisKKwlpbml0X3RyZWVfZGVzYygmZGVzYywgdHJlZS0+YnVmZmVyLCB0cmVlLT5zaXplKTsKKwl3aGlsZSAodHJlZV9lbnRyeSgmZGVzYywgJmVudHJ5KSkgeworCQlzd2l0Y2ggKG9iamVjdF90eXBlKGVudHJ5Lm1vZGUpKSB7CisJCWNhc2UgT0JKX1RSRUU6CisJCQlwYXRoc19hbmRfb2lkc19pbnNlcnQobWFwLCBlbnRyeS5wYXRoLCAmZW50cnkub2lkKTsKKworCQkJaWYgKHRyZWUtPm9iamVjdC5mbGFncyAmIFVOSU5URVJFU1RJTkcpIHsKKwkJCQlzdHJ1Y3QgdHJlZSAqY2hpbGQgPSBsb29rdXBfdHJlZShyLCAmZW50cnkub2lkKTsKKwkJCQlpZiAoY2hpbGQpCisJCQkJCWNoaWxkLT5vYmplY3QuZmxhZ3MgfD0gVU5JTlRFUkVTVElORzsKKwkJCX0KKwkJCWJyZWFrOworCQljYXNlIE9CSl9CTE9COgorCQkJaWYgKHRyZWUtPm9iamVjdC5mbGFncyAmIFVOSU5URVJFU1RJTkcpIHsKKwkJCQlzdHJ1Y3QgYmxvYiAqY2hpbGQgPSBsb29rdXBfYmxvYihyLCAmZW50cnkub2lkKTsKKwkJCQlpZiAoY2hpbGQpCisJCQkJCWNoaWxkLT5vYmplY3QuZmxhZ3MgfD0gVU5JTlRFUkVTVElORzsKKwkJCX0KKwkJCWJyZWFrOworCQlkZWZhdWx0OgorCQkJLyogU3VicHJvamVjdCBjb21taXQgLSBub3QgaW4gdGhpcyByZXBvc2l0b3J5ICovCisJCQlicmVhazsKKwkJfQorCX0KKworCWZyZWVfdHJlZV9idWZmZXIodHJlZSk7Cit9CisKK3ZvaWQgbWFya190cmVlc191bmludGVyZXN0aW5nX3NwYXJzZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgICAgIHN0cnVjdCBvaWRzZXQgKnRyZWVzKQoreworCXVuc2lnbmVkIGhhc19pbnRlcmVzdGluZyA9IDAsIGhhc191bmludGVyZXN0aW5nID0gMDsKKwlzdHJ1Y3QgaGFzaG1hcCBtYXA7CisJc3RydWN0IGhhc2htYXBfaXRlciBtYXBfaXRlcjsKKwlzdHJ1Y3QgcGF0aF9hbmRfb2lkc19lbnRyeSAqZW50cnk7CisJc3RydWN0IG9iamVjdF9pZCAqb2lkOworCXN0cnVjdCBvaWRzZXRfaXRlciBpdGVyOworCisJb2lkc2V0X2l0ZXJfaW5pdCh0cmVlcywgJml0ZXIpOworCXdoaWxlICgoIWhhc19pbnRlcmVzdGluZyB8fCAhaGFzX3VuaW50ZXJlc3RpbmcpICYmCisJICAgICAgIChvaWQgPSBvaWRzZXRfaXRlcl9uZXh0KCZpdGVyKSkpIHsKKwkJc3RydWN0IHRyZWUgKnRyZWUgPSBsb29rdXBfdHJlZShyLCBvaWQpOworCisJCWlmICghdHJlZSkKKwkJCWNvbnRpbnVlOworCisJCWlmICh0cmVlLT5vYmplY3QuZmxhZ3MgJiBVTklOVEVSRVNUSU5HKQorCQkJaGFzX3VuaW50ZXJlc3RpbmcgPSAxOworCQllbHNlCisJCQloYXNfaW50ZXJlc3RpbmcgPSAxOworCX0KKworCS8qIERvIG5vdCB3YWxrIHVubGVzcyB3ZSBoYXZlIGJvdGggdHlwZXMgb2YgdHJlZXMuICovCisJaWYgKCFoYXNfdW5pbnRlcmVzdGluZyB8fCAhaGFzX2ludGVyZXN0aW5nKQorCQlyZXR1cm47CisKKwlwYXRoc19hbmRfb2lkc19pbml0KCZtYXApOworCisJb2lkc2V0X2l0ZXJfaW5pdCh0cmVlcywgJml0ZXIpOworCXdoaWxlICgob2lkID0gb2lkc2V0X2l0ZXJfbmV4dCgmaXRlcikpKSB7CisJCXN0cnVjdCB0cmVlICp0cmVlID0gbG9va3VwX3RyZWUociwgb2lkKTsKKwkJYWRkX2NoaWxkcmVuX2J5X3BhdGgociwgdHJlZSwgJm1hcCk7CisJfQorCisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeSgmbWFwLCAmbWFwX2l0ZXIsIGVudHJ5LCBlbnQgLyogbWVtYmVyIG5hbWUgKi8pCisJCW1hcmtfdHJlZXNfdW5pbnRlcmVzdGluZ19zcGFyc2UociwgJmVudHJ5LT50cmVlcyk7CisKKwlwYXRoc19hbmRfb2lkc19jbGVhcigmbWFwKTsKK30KKwogc3RydWN0IGNvbW1pdF9zdGFjayB7CiAJc3RydWN0IGNvbW1pdCAqKml0ZW1zOwogCXNpemVfdCBuciwgYWxsb2M7CkBAIC0yMTMsNyArMzYxLDIwIEBACiB7CiAJc3RydWN0IG9iamVjdCAqb2JqZWN0OwogCi0Jb2JqZWN0ID0gcGFyc2Vfb2JqZWN0KHJldnMtPnJlcG8sIG9pZCk7CisJLyoKKwkgKiBJZiB0aGUgcmVwb3NpdG9yeSBoYXMgY29tbWl0IGdyYXBocywgcmVwb19wYXJzZV9jb21taXQoKSBhdm9pZHMKKwkgKiByZWFkaW5nIHRoZSBvYmplY3QgYnVmZmVyLCBzbyB1c2UgaXQgd2hlbmV2ZXIgcG9zc2libGUuCisJICovCisJaWYgKG9pZF9vYmplY3RfaW5mbyhyZXZzLT5yZXBvLCBvaWQsIE5VTEwpID09IE9CSl9DT01NSVQpIHsKKwkJc3RydWN0IGNvbW1pdCAqYyA9IGxvb2t1cF9jb21taXQocmV2cy0+cmVwbywgb2lkKTsKKwkJaWYgKCFyZXBvX3BhcnNlX2NvbW1pdChyZXZzLT5yZXBvLCBjKSkKKwkJCW9iamVjdCA9IChzdHJ1Y3Qgb2JqZWN0ICopIGM7CisJCWVsc2UKKwkJCW9iamVjdCA9IE5VTEw7CisJfSBlbHNlIHsKKwkJb2JqZWN0ID0gcGFyc2Vfb2JqZWN0KHJldnMtPnJlcG8sIG9pZCk7CisJfQorCiAJaWYgKCFvYmplY3QpIHsKIAkJaWYgKHJldnMtPmlnbm9yZV9taXNzaW5nKQogCQkJcmV0dXJuIG9iamVjdDsKQEAgLTI0OCw5ICs0MDksNyBAQAogCQlzdHJ1Y3QgdGFnICp0YWcgPSAoc3RydWN0IHRhZyAqKSBvYmplY3Q7CiAJCWlmIChyZXZzLT50YWdfb2JqZWN0cyAmJiAhKGZsYWdzICYgVU5JTlRFUkVTVElORykpCiAJCQlhZGRfcGVuZGluZ19vYmplY3QocmV2cywgb2JqZWN0LCB0YWctPnRhZyk7Ci0JCWlmICghdGFnLT50YWdnZWQpCi0JCQlkaWUoImJhZCB0YWciKTsKLQkJb2JqZWN0ID0gcGFyc2Vfb2JqZWN0KHJldnMtPnJlcG8sICZ0YWctPnRhZ2dlZC0+b2lkKTsKKwkJb2JqZWN0ID0gcGFyc2Vfb2JqZWN0KHJldnMtPnJlcG8sIGdldF90YWdnZWRfb2lkKHRhZykpOwogCQlpZiAoIW9iamVjdCkgewogCQkJaWYgKHJldnMtPmlnbm9yZV9taXNzaW5nX2xpbmtzIHx8IChmbGFncyAmIFVOSU5URVJFU1RJTkcpKQogCQkJCXJldHVybiBOVUxMOwpAQCAtMjgwLDcgKzQzOSw5IEBACiAJCQlkaWUoInVuYWJsZSB0byBwYXJzZSBjb21taXQgJXMiLCBuYW1lKTsKIAkJaWYgKGZsYWdzICYgVU5JTlRFUkVTVElORykgewogCQkJbWFya19wYXJlbnRzX3VuaW50ZXJlc3RpbmcoY29tbWl0KTsKLQkJCXJldnMtPmxpbWl0ZWQgPSAxOworCisJCQlpZiAoIXJldnMtPnRvcG9fb3JkZXIgfHwgIWdlbmVyYXRpb25fbnVtYmVyc19lbmFibGVkKHRoZV9yZXBvc2l0b3J5KSkKKwkJCQlyZXZzLT5saW1pdGVkID0gMTsKIAkJfQogCQlpZiAocmV2cy0+c291cmNlcykgewogCQkJY2hhciAqKnNsb3QgPSByZXZpc2lvbl9zb3VyY2VzX2F0KHJldnMtPnNvdXJjZXMsIGNvbW1pdCk7CkBAIC03NTUsMjYgKzkxNiwxMSBAQAogCQljb21taXQtPm9iamVjdC5mbGFncyB8PSBUUkVFU0FNRTsKIH0KIAotc3RhdGljIHZvaWQgY29tbWl0X2xpc3RfaW5zZXJ0X2J5X2RhdGVfY2FjaGVkKHN0cnVjdCBjb21taXQgKnAsIHN0cnVjdCBjb21taXRfbGlzdCAqKmhlYWQsCi0JCSAgICBzdHJ1Y3QgY29tbWl0X2xpc3QgKmNhY2hlZF9iYXNlLCBzdHJ1Y3QgY29tbWl0X2xpc3QgKipjYWNoZSkKLXsKLQlzdHJ1Y3QgY29tbWl0X2xpc3QgKm5ld19lbnRyeTsKLQotCWlmIChjYWNoZWRfYmFzZSAmJiBwLT5kYXRlIDwgY2FjaGVkX2Jhc2UtPml0ZW0tPmRhdGUpCi0JCW5ld19lbnRyeSA9IGNvbW1pdF9saXN0X2luc2VydF9ieV9kYXRlKHAsICZjYWNoZWRfYmFzZS0+bmV4dCk7Ci0JZWxzZQotCQluZXdfZW50cnkgPSBjb21taXRfbGlzdF9pbnNlcnRfYnlfZGF0ZShwLCBoZWFkKTsKLQotCWlmIChjYWNoZSAmJiAoISpjYWNoZSB8fCBwLT5kYXRlIDwgKCpjYWNoZSktPml0ZW0tPmRhdGUpKQotCQkqY2FjaGUgPSBuZXdfZW50cnk7Ci19Ci0KIHN0YXRpYyBpbnQgcHJvY2Vzc19wYXJlbnRzKHN0cnVjdCByZXZfaW5mbyAqcmV2cywgc3RydWN0IGNvbW1pdCAqY29tbWl0LAotCQkJICAgc3RydWN0IGNvbW1pdF9saXN0ICoqbGlzdCwgc3RydWN0IGNvbW1pdF9saXN0ICoqY2FjaGVfcHRyKQorCQkJICAgc3RydWN0IGNvbW1pdF9saXN0ICoqbGlzdCwgc3RydWN0IHByaW9fcXVldWUgKnF1ZXVlKQogewogCXN0cnVjdCBjb21taXRfbGlzdCAqcGFyZW50ID0gY29tbWl0LT5wYXJlbnRzOwogCXVuc2lnbmVkIGxlZnRfZmxhZzsKLQlzdHJ1Y3QgY29tbWl0X2xpc3QgKmNhY2hlZF9iYXNlID0gY2FjaGVfcHRyID8gKmNhY2hlX3B0ciA6IE5VTEw7CiAKIAlpZiAoY29tbWl0LT5vYmplY3QuZmxhZ3MgJiBBRERFRCkKIAkJcmV0dXJuIDA7CkBAIC04MTAsNyArOTU2LDkgQEAKIAkJCQljb250aW51ZTsKIAkJCXAtPm9iamVjdC5mbGFncyB8PSBTRUVOOwogCQkJaWYgKGxpc3QpCi0JCQkJY29tbWl0X2xpc3RfaW5zZXJ0X2J5X2RhdGVfY2FjaGVkKHAsIGxpc3QsIGNhY2hlZF9iYXNlLCBjYWNoZV9wdHIpOworCQkJCWNvbW1pdF9saXN0X2luc2VydF9ieV9kYXRlKHAsIGxpc3QpOworCQkJaWYgKHF1ZXVlKQorCQkJCXByaW9fcXVldWVfcHV0KHF1ZXVlLCBwKTsKIAkJfQogCQlyZXR1cm4gMDsKIAl9CkBAIC04NTAsNyArOTk4LDkgQEAKIAkJaWYgKCEocC0+b2JqZWN0LmZsYWdzICYgU0VFTikpIHsKIAkJCXAtPm9iamVjdC5mbGFncyB8PSBTRUVOOwogCQkJaWYgKGxpc3QpCi0JCQkJY29tbWl0X2xpc3RfaW5zZXJ0X2J5X2RhdGVfY2FjaGVkKHAsIGxpc3QsIGNhY2hlZF9iYXNlLCBjYWNoZV9wdHIpOworCQkJCWNvbW1pdF9saXN0X2luc2VydF9ieV9kYXRlKHAsIGxpc3QpOworCQkJaWYgKHF1ZXVlKQorCQkJCXByaW9fcXVldWVfcHV0KHF1ZXVlLCBwKTsKIAkJfQogCQlpZiAocmV2cy0+Zmlyc3RfcGFyZW50X29ubHkpCiAJCQlicmVhazsKQEAgLTEzODQsNyArMTUzNCw3IEBACiB7CiAJc3RydWN0IHdvcmt0cmVlICoqd29ya3RyZWVzLCAqKnA7CiAKLQlyZWFkX2luZGV4KHJldnMtPnJlcG8tPmluZGV4KTsKKwlyZXBvX3JlYWRfaW5kZXgocmV2cy0+cmVwbyk7CiAJZG9fYWRkX2luZGV4X29iamVjdHNfdG9fcGVuZGluZyhyZXZzLCByZXZzLT5yZXBvLT5pbmRleCwgZmxhZ3MpOwogCiAJaWYgKHJldnMtPnNpbmdsZV93b3JrdHJlZSkKQEAgLTE0MDcsNiArMTU1NywzMiBAQAogCWZyZWVfd29ya3RyZWVzKHdvcmt0cmVlcyk7CiB9CiAKK3N0cnVjdCBhZGRfYWx0ZXJuYXRlX3JlZnNfZGF0YSB7CisJc3RydWN0IHJldl9pbmZvICpyZXZzOworCXVuc2lnbmVkIGludCBmbGFnczsKK307CisKK3N0YXRpYyB2b2lkIGFkZF9vbmVfYWx0ZXJuYXRlX3JlZihjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkJICB2b2lkICp2ZGF0YSkKK3sKKwljb25zdCBjaGFyICpuYW1lID0gIi5hbHRlcm5hdGUiOworCXN0cnVjdCBhZGRfYWx0ZXJuYXRlX3JlZnNfZGF0YSAqZGF0YSA9IHZkYXRhOworCXN0cnVjdCBvYmplY3QgKm9iajsKKworCW9iaiA9IGdldF9yZWZlcmVuY2UoZGF0YS0+cmV2cywgbmFtZSwgb2lkLCBkYXRhLT5mbGFncyk7CisJYWRkX3Jldl9jbWRsaW5lKGRhdGEtPnJldnMsIG9iaiwgbmFtZSwgUkVWX0NNRF9SRVYsIGRhdGEtPmZsYWdzKTsKKwlhZGRfcGVuZGluZ19vYmplY3QoZGF0YS0+cmV2cywgb2JqLCBuYW1lKTsKK30KKworc3RhdGljIHZvaWQgYWRkX2FsdGVybmF0ZV9yZWZzX3RvX3BlbmRpbmcoc3RydWN0IHJldl9pbmZvICpyZXZzLAorCQkJCQkgIHVuc2lnbmVkIGludCBmbGFncykKK3sKKwlzdHJ1Y3QgYWRkX2FsdGVybmF0ZV9yZWZzX2RhdGEgZGF0YTsKKwlkYXRhLnJldnMgPSByZXZzOworCWRhdGEuZmxhZ3MgPSBmbGFnczsKKwlmb3JfZWFjaF9hbHRlcm5hdGVfcmVmKGFkZF9vbmVfYWx0ZXJuYXRlX3JlZiwgJmRhdGEpOworfQorCiBzdGF0aWMgaW50IGFkZF9wYXJlbnRzX29ubHkoc3RydWN0IHJldl9pbmZvICpyZXZzLCBjb25zdCBjaGFyICphcmdfLCBpbnQgZmxhZ3MsCiAJCQkgICAgaW50IGV4Y2x1ZGVfcGFyZW50KQogewpAQCAtMTQ2Myw2ICsxNjM5LDcgQEAKIAlyZXZzLT5hYmJyZXYgPSBERUZBVUxUX0FCQlJFVjsKIAlyZXZzLT5pZ25vcmVfbWVyZ2VzID0gMTsKIAlyZXZzLT5zaW1wbGlmeV9oaXN0b3J5ID0gMTsKKwlyZXZzLT5wcnVuaW5nLnJlcG8gPSByOwogCXJldnMtPnBydW5pbmcuZmxhZ3MucmVjdXJzaXZlID0gMTsKIAlyZXZzLT5wcnVuaW5nLmZsYWdzLnF1aWNrID0gMTsKIAlyZXZzLT5wcnVuaW5nLmFkZF9yZW1vdmUgPSBmaWxlX2FkZF9yZW1vdmU7CkBAIC0xNDkxLDEyICsxNjY4LDEyIEBACiAJCXJldnMtPmRpZmZvcHQucHJlZml4X2xlbmd0aCA9IHN0cmxlbihwcmVmaXgpOwogCX0KIAotCXJldnMtPm5vdGVzX29wdC51c2VfZGVmYXVsdF9ub3RlcyA9IC0xOworCWluaXRfZGlzcGxheV9ub3RlcygmcmV2cy0+bm90ZXNfb3B0KTsKIH0KIAogc3RhdGljIHZvaWQgYWRkX3BlbmRpbmdfY29tbWl0X2xpc3Qoc3RydWN0IHJldl9pbmZvICpyZXZzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGNvbW1pdF9saXN0ICpjb21taXRfbGlzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBmbGFncykKKwkJCQkgICAgc3RydWN0IGNvbW1pdF9saXN0ICpjb21taXRfbGlzdCwKKwkJCQkgICAgdW5zaWduZWQgaW50IGZsYWdzKQogewogCXdoaWxlIChjb21taXRfbGlzdCkgewogCQlzdHJ1Y3Qgb2JqZWN0ICpvYmplY3QgPSAmY29tbWl0X2xpc3QtPml0ZW0tPm9iamVjdDsKQEAgLTE1MzAsNyArMTcwNyw3IEBACiAJaGVhZC0+b2JqZWN0LmZsYWdzIHw9IFNZTU1FVFJJQ19MRUZUOwogCiAJaWYgKCFpc3RhdGUtPmNhY2hlX25yKQotCQlyZWFkX2luZGV4KGlzdGF0ZSk7CisJCXJlcG9fcmVhZF9pbmRleChyZXZzLT5yZXBvKTsKIAlmb3IgKGkgPSAwOyBpIDwgaXN0YXRlLT5jYWNoZV9ucjsgaSsrKSB7CiAJCWNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UgPSBpc3RhdGUtPmNhY2hlW2ldOwogCQlpZiAoIWNlX3N0YWdlKGNlKSkKQEAgLTE1ODksOCArMTc2Niw4IEBACiAJaWYgKCEqYl9uYW1lKQogCQliX25hbWUgPSAiSEVBRCI7CiAKLQlpZiAoZ2V0X29pZF93aXRoX2NvbnRleHQoYV9uYW1lLCBvY19mbGFncywgJmFfb2lkLCBhX29jKSB8fAotCSAgICBnZXRfb2lkX3dpdGhfY29udGV4dChiX25hbWUsIG9jX2ZsYWdzLCAmYl9vaWQsIGJfb2MpKQorCWlmIChnZXRfb2lkX3dpdGhfY29udGV4dChyZXZzLT5yZXBvLCBhX25hbWUsIG9jX2ZsYWdzLCAmYV9vaWQsIGFfb2MpIHx8CisJICAgIGdldF9vaWRfd2l0aF9jb250ZXh0KHJldnMtPnJlcG8sIGJfbmFtZSwgb2NfZmxhZ3MsICZiX29pZCwgYl9vYykpCiAJCXJldHVybiAtMTsKIAogCWlmICghY2FudF9iZV9maWxlbmFtZSkgewpAQCAtMTcyNCwxOCArMTkwMSwyMCBAQAogCWlmIChyZXZhcmdfb3B0ICYgUkVWQVJHX0NPTU1JVFRJU0gpCiAJCWdldF9zaGExX2ZsYWdzIHw9IEdFVF9PSURfQ09NTUlUVElTSDsKIAotCWlmIChnZXRfb2lkX3dpdGhfY29udGV4dChhcmcsIGdldF9zaGExX2ZsYWdzLCAmb2lkLCAmb2MpKQorCWlmIChnZXRfb2lkX3dpdGhfY29udGV4dChyZXZzLT5yZXBvLCBhcmcsIGdldF9zaGExX2ZsYWdzLCAmb2lkLCAmb2MpKQogCQlyZXR1cm4gcmV2cy0+aWdub3JlX21pc3NpbmcgPyAwIDogLTE7CiAJaWYgKCFjYW50X2JlX2ZpbGVuYW1lKQogCQl2ZXJpZnlfbm9uX2ZpbGVuYW1lKHJldnMtPnByZWZpeCwgYXJnKTsKIAlvYmplY3QgPSBnZXRfcmVmZXJlbmNlKHJldnMsIGFyZywgJm9pZCwgZmxhZ3MgXiBsb2NhbF9mbGFncyk7CisJaWYgKCFvYmplY3QpCisJCXJldHVybiByZXZzLT5pZ25vcmVfbWlzc2luZyA/IDAgOiAtMTsKIAlhZGRfcmV2X2NtZGxpbmUocmV2cywgb2JqZWN0LCBhcmdfLCBSRVZfQ01EX1JFViwgZmxhZ3MgXiBsb2NhbF9mbGFncyk7CiAJYWRkX3BlbmRpbmdfb2JqZWN0X3dpdGhfcGF0aChyZXZzLCBvYmplY3QsIGFyZywgb2MubW9kZSwgb2MucGF0aCk7CiAJZnJlZShvYy5wYXRoKTsKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIHZvaWQgcmVhZF9wYXRoc3BlY19mcm9tX3N0ZGluKHN0cnVjdCByZXZfaW5mbyAqcmV2cywgc3RydWN0IHN0cmJ1ZiAqc2IsCitzdGF0aWMgdm9pZCByZWFkX3BhdGhzcGVjX2Zyb21fc3RkaW4oc3RydWN0IHN0cmJ1ZiAqc2IsCiAJCQkJICAgICBzdHJ1Y3QgYXJndl9hcnJheSAqcHJ1bmUpCiB7CiAJd2hpbGUgKHN0cmJ1Zl9nZXRsaW5lKHNiLCBzdGRpbikgIT0gRU9GKQpAQCAtMTc2OSw3ICsxOTQ4LDcgQEAKIAkJCWRpZSgiYmFkIHJldmlzaW9uICclcyciLCBzYi5idWYpOwogCX0KIAlpZiAoc2Vlbl9kYXNoZGFzaCkKLQkJcmVhZF9wYXRoc3BlY19mcm9tX3N0ZGluKHJldnMsICZzYiwgcHJ1bmUpOworCQlyZWFkX3BhdGhzcGVjX2Zyb21fc3RkaW4oJnNiLCBwcnVuZSk7CiAKIAlzdHJidWZfcmVsZWFzZSgmc2IpOwogCXdhcm5fb25fb2JqZWN0X3JlZm5hbWVfYW1iaWd1aXR5ID0gc2F2ZV93YXJuaW5nOwpAQCAtMTc5MSw3ICsxOTcwLDggQEAKIH0KIAogc3RhdGljIGludCBoYW5kbGVfcmV2aXNpb25fb3B0KHN0cnVjdCByZXZfaW5mbyAqcmV2cywgaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LAotCQkJICAgICAgIGludCAqdW5rYywgY29uc3QgY2hhciAqKnVua3YpCisJCQkgICAgICAgaW50ICp1bmtjLCBjb25zdCBjaGFyICoqdW5rdiwKKwkJCSAgICAgICBjb25zdCBzdHJ1Y3Qgc2V0dXBfcmV2aXNpb25fb3B0KiBvcHQpCiB7CiAJY29uc3QgY2hhciAqYXJnID0gYXJndlswXTsKIAljb25zdCBjaGFyICpvcHRhcmc7CkBAIC0xODA1LDYgKzE5ODUsNyBAQAogCSAgICAhc3RyY21wKGFyZywgIi0tbm8td2FsayIpIHx8ICFzdHJjbXAoYXJnLCAiLS1kby13YWxrIikgfHwKIAkgICAgIXN0cmNtcChhcmcsICItLWJpc2VjdCIpIHx8IHN0YXJ0c193aXRoKGFyZywgIi0tZ2xvYj0iKSB8fAogCSAgICAhc3RyY21wKGFyZywgIi0taW5kZXhlZC1vYmplY3RzIikgfHwKKwkgICAgIXN0cmNtcChhcmcsICItLWFsdGVybmF0ZS1yZWZzIikgfHwKIAkgICAgc3RhcnRzX3dpdGgoYXJnLCAiLS1leGNsdWRlPSIpIHx8CiAJICAgIHN0YXJ0c193aXRoKGFyZywgIi0tYnJhbmNoZXM9IikgfHwgc3RhcnRzX3dpdGgoYXJnLCAiLS10YWdzPSIpIHx8CiAJICAgIHN0YXJ0c193aXRoKGFyZywgIi0tcmVtb3Rlcz0iKSB8fCBzdGFydHNfd2l0aChhcmcsICItLW5vLXdhbGs9IikpCkBAIC0xODg1LDcgKzIwNjYsNiBAQAogCQlyZXZzLT5zaW1wbGlmeV9ieV9kZWNvcmF0aW9uID0gMTsKIAkJcmV2cy0+bGltaXRlZCA9IDE7CiAJCXJldnMtPnBydW5lID0gMTsKLQkJbG9hZF9yZWZfZGVjb3JhdGlvbnMoTlVMTCwgREVDT1JBVEVfU0hPUlRfUkVGUyk7CiAJfSBlbHNlIGlmICghc3RyY21wKGFyZywgIi0tZGF0ZS1vcmRlciIpKSB7CiAJCXJldnMtPnNvcnRfb3JkZXIgPSBSRVZfU09SVF9CWV9DT01NSVRfREFURTsKIAkJcmV2cy0+dG9wb19vcmRlciA9IDE7CkBAIC0xOTkxLDYgKzIxNzEsOSBAQAogCQlyZXZzLT5kaWZmID0gMTsKIAkJcmV2cy0+ZGVuc2VfY29tYmluZWRfbWVyZ2VzID0gMDsKIAkJcmV2cy0+Y29tYmluZV9tZXJnZXMgPSAxOworCX0gZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWNvbWJpbmVkLWFsbC1wYXRocyIpKSB7CisJCXJldnMtPmRpZmYgPSAxOworCQlyZXZzLT5jb21iaW5lZF9hbGxfcGF0aHMgPSAxOwogCX0gZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLWNjIikpIHsKIAkJcmV2cy0+ZGlmZiA9IDE7CiAJCXJldnMtPmRlbnNlX2NvbWJpbmVkX21lcmdlcyA9IDE7CkBAIC0yMDIwLDkgKzIyMDMsOCBAQAogCQkJZGllKCInJXMnOiBub3QgYSBub24tbmVnYXRpdmUgaW50ZWdlciIsIGFyZyk7CiAJCXJldnMtPmV4cGFuZF90YWJzX2luX2xvZyA9IHZhbDsKIAl9IGVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1zaG93LW5vdGVzIikgfHwgIXN0cmNtcChhcmcsICItLW5vdGVzIikpIHsKLQkJcmV2cy0+c2hvd19ub3RlcyA9IDE7CisJCWVuYWJsZV9kZWZhdWx0X2Rpc3BsYXlfbm90ZXMoJnJldnMtPm5vdGVzX29wdCwgJnJldnMtPnNob3dfbm90ZXMpOwogCQlyZXZzLT5zaG93X25vdGVzX2dpdmVuID0gMTsKLQkJcmV2cy0+bm90ZXNfb3B0LnVzZV9kZWZhdWx0X25vdGVzID0gMTsKIAl9IGVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1zaG93LXNpZ25hdHVyZSIpKSB7CiAJCXJldnMtPnNob3dfc2lnbmF0dXJlID0gMTsKIAl9IGVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1uby1zaG93LXNpZ25hdHVyZSIpKSB7CkBAIC0yMDM3LDI1ICsyMjE5LDE0IEBACiAJCXJldnMtPnRyYWNrX2ZpcnN0X3RpbWUgPSAxOwogCX0gZWxzZSBpZiAoc2tpcF9wcmVmaXgoYXJnLCAiLS1zaG93LW5vdGVzPSIsICZvcHRhcmcpIHx8CiAJCSAgIHNraXBfcHJlZml4KGFyZywgIi0tbm90ZXM9IiwgJm9wdGFyZykpIHsKLQkJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKLQkJcmV2cy0+c2hvd19ub3RlcyA9IDE7Ci0JCXJldnMtPnNob3dfbm90ZXNfZ2l2ZW4gPSAxOwogCQlpZiAoc3RhcnRzX3dpdGgoYXJnLCAiLS1zaG93LW5vdGVzPSIpICYmCiAJCSAgICByZXZzLT5ub3Rlc19vcHQudXNlX2RlZmF1bHRfbm90ZXMgPCAwKQogCQkJcmV2cy0+bm90ZXNfb3B0LnVzZV9kZWZhdWx0X25vdGVzID0gMTsKLQkJc3RyYnVmX2FkZHN0cigmYnVmLCBvcHRhcmcpOwotCQlleHBhbmRfbm90ZXNfcmVmKCZidWYpOwotCQlzdHJpbmdfbGlzdF9hcHBlbmQoJnJldnMtPm5vdGVzX29wdC5leHRyYV9ub3Rlc19yZWZzLAotCQkJCSAgIHN0cmJ1Zl9kZXRhY2goJmJ1ZiwgTlVMTCkpOwotCX0gZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLW5vLW5vdGVzIikpIHsKLQkJcmV2cy0+c2hvd19ub3RlcyA9IDA7CisJCWVuYWJsZV9yZWZfZGlzcGxheV9ub3RlcygmcmV2cy0+bm90ZXNfb3B0LCAmcmV2cy0+c2hvd19ub3Rlcywgb3B0YXJnKTsKIAkJcmV2cy0+c2hvd19ub3Rlc19naXZlbiA9IDE7Ci0JCXJldnMtPm5vdGVzX29wdC51c2VfZGVmYXVsdF9ub3RlcyA9IC0xOwotCQkvKiB3ZSBoYXZlIGJlZW4gc3RyZHVwJ2luZyBvdXJzZWx2ZXMsIHNvIHRyaWNrCi0JCSAqIHN0cmluZ19saXN0IGludG8gZnJlZSgpaW5nIHN0cmluZ3MgKi8KLQkJcmV2cy0+bm90ZXNfb3B0LmV4dHJhX25vdGVzX3JlZnMuc3RyZHVwX3N0cmluZ3MgPSAxOwotCQlzdHJpbmdfbGlzdF9jbGVhcigmcmV2cy0+bm90ZXNfb3B0LmV4dHJhX25vdGVzX3JlZnMsIDApOwotCQlyZXZzLT5ub3Rlc19vcHQuZXh0cmFfbm90ZXNfcmVmcy5zdHJkdXBfc3RyaW5ncyA9IDA7CisJfSBlbHNlIGlmICghc3RyY21wKGFyZywgIi0tbm8tbm90ZXMiKSkgeworCQlkaXNhYmxlX2Rpc3BsYXlfbm90ZXMoJnJldnMtPm5vdGVzX29wdCwgJnJldnMtPnNob3dfbm90ZXMpOworCQlyZXZzLT5zaG93X25vdGVzX2dpdmVuID0gMTsKIAl9IGVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1zdGFuZGFyZC1ub3RlcyIpKSB7CiAJCXJldnMtPnNob3dfbm90ZXNfZ2l2ZW4gPSAxOwogCQlyZXZzLT5ub3Rlc19vcHQudXNlX2RlZmF1bHRfbm90ZXMgPSAxOwpAQCAtMjE1MSw3ICsyMzIyLDcgQEAKIAkJcmV2cy0+bGltaXRlZCA9IDE7CiAJfSBlbHNlIGlmICghc3RyY21wKGFyZywgIi0taWdub3JlLW1pc3NpbmciKSkgewogCQlyZXZzLT5pZ25vcmVfbWlzc2luZyA9IDE7Ci0JfSBlbHNlIGlmIChyZXZzLT5hbGxvd19leGNsdWRlX3Byb21pc29yX29iamVjdHNfb3B0ICYmCisJfSBlbHNlIGlmIChvcHQgJiYgb3B0LT5hbGxvd19leGNsdWRlX3Byb21pc29yX29iamVjdHMgJiYKIAkJICAgIXN0cmNtcChhcmcsICItLWV4Y2x1ZGUtcHJvbWlzb3Itb2JqZWN0cyIpKSB7CiAJCWlmIChmZXRjaF9pZl9taXNzaW5nKQogCQkJQlVHKCJleGNsdWRlX3Byb21pc29yX29iamVjdHMgY2FuIG9ubHkgYmUgdXNlZCB3aGVuIGZldGNoX2lmX21pc3NpbmcgaXMgMCIpOwpAQCAtMjE3Myw3ICsyMzQ0LDcgQEAKIAkJCWNvbnN0IGNoYXIgKiBjb25zdCB1c2FnZXN0cltdKQogewogCWludCBuID0gaGFuZGxlX3JldmlzaW9uX29wdChyZXZzLCBjdHgtPmFyZ2MsIGN0eC0+YXJndiwKLQkJCQkgICAgJmN0eC0+Y3BpZHgsIGN0eC0+b3V0KTsKKwkJCQkgICAgJmN0eC0+Y3BpZHgsIGN0eC0+b3V0LCBOVUxMKTsKIAlpZiAobiA8PSAwKSB7CiAJCWVycm9yKCJ1bmtub3duIG9wdGlvbiBgJXMnIiwgY3R4LT5hcmd2WzBdKTsKIAkJdXNhZ2Vfd2l0aF9vcHRpb25zKHVzYWdlc3RyLCBvcHRpb25zKTsKQEAgLTIyODgsNiArMjQ1OSw4IEBACiAJCWFkZF9yZWZsb2dzX3RvX3BlbmRpbmcocmV2cywgKmZsYWdzKTsKIAl9IGVsc2UgaWYgKCFzdHJjbXAoYXJnLCAiLS1pbmRleGVkLW9iamVjdHMiKSkgewogCQlhZGRfaW5kZXhfb2JqZWN0c190b19wZW5kaW5nKHJldnMsICpmbGFncyk7CisJfSBlbHNlIGlmICghc3RyY21wKGFyZywgIi0tYWx0ZXJuYXRlLXJlZnMiKSkgeworCQlhZGRfYWx0ZXJuYXRlX3JlZnNfdG9fcGVuZGluZyhyZXZzLCAqZmxhZ3MpOwogCX0gZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLW5vdCIpKSB7CiAJCSpmbGFncyBePSBVTklOVEVSRVNUSU5HIHwgQk9UVE9NOwogCX0gZWxzZSBpZiAoIXN0cmNtcChhcmcsICItLW5vLXdhbGsiKSkgewpAQCAtMjM0MCw2ICsyNTEzLDcgQEAKIAlpbnQgaSwgZmxhZ3MsIGxlZnQsIHNlZW5fZGFzaGRhc2gsIGdvdF9yZXZfYXJnID0gMCwgcmV2YXJnX29wdDsKIAlzdHJ1Y3QgYXJndl9hcnJheSBwcnVuZV9kYXRhID0gQVJHVl9BUlJBWV9JTklUOwogCWNvbnN0IGNoYXIgKnN1Ym1vZHVsZSA9IE5VTEw7CisJaW50IHNlZW5fZW5kX29mX29wdGlvbnMgPSAwOwogCiAJaWYgKG9wdCkKIAkJc3VibW9kdWxlID0gb3B0LT5zdWJtb2R1bGU7CkBAIC0yMzY5LDcgKzI1NDMsNyBAQAogCQlyZXZhcmdfb3B0IHw9IFJFVkFSR19DQU5OT1RfQkVfRklMRU5BTUU7CiAJZm9yIChsZWZ0ID0gaSA9IDE7IGkgPCBhcmdjOyBpKyspIHsKIAkJY29uc3QgY2hhciAqYXJnID0gYXJndltpXTsKLQkJaWYgKCphcmcgPT0gJy0nKSB7CisJCWlmICghc2Vlbl9lbmRfb2Zfb3B0aW9ucyAmJiAqYXJnID09ICctJykgewogCQkJaW50IG9wdHM7CiAKIAkJCW9wdHMgPSBoYW5kbGVfcmV2aXNpb25fcHNldWRvX29wdChzdWJtb2R1bGUsCkBAIC0yMzkxLDcgKzI1NjUsMTMgQEAKIAkJCQljb250aW51ZTsKIAkJCX0KIAotCQkJb3B0cyA9IGhhbmRsZV9yZXZpc2lvbl9vcHQocmV2cywgYXJnYyAtIGksIGFyZ3YgKyBpLCAmbGVmdCwgYXJndik7CisJCQlpZiAoIXN0cmNtcChhcmcsICItLWVuZC1vZi1vcHRpb25zIikpIHsKKwkJCQlzZWVuX2VuZF9vZl9vcHRpb25zID0gMTsKKwkJCQljb250aW51ZTsKKwkJCX0KKworCQkJb3B0cyA9IGhhbmRsZV9yZXZpc2lvbl9vcHQocmV2cywgYXJnYyAtIGksIGFyZ3YgKyBpLAorCQkJCQkJICAgJmxlZnQsIGFyZ3YsIG9wdCk7CiAJCQlpZiAob3B0cyA+IDApIHsKIAkJCQlpICs9IG9wdHMgLSAxOwogCQkJCWNvbnRpbnVlOwpAQCAtMjQ1Myw3ICsyNjMzLDcgQEAKIAkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJCXN0cnVjdCBvYmplY3QgKm9iamVjdDsKIAkJc3RydWN0IG9iamVjdF9jb250ZXh0IG9jOwotCQlpZiAoZ2V0X29pZF93aXRoX2NvbnRleHQocmV2cy0+ZGVmLCAwLCAmb2lkLCAmb2MpKQorCQlpZiAoZ2V0X29pZF93aXRoX2NvbnRleHQocmV2cy0+cmVwbywgcmV2cy0+ZGVmLCAwLCAmb2lkLCAmb2MpKQogCQkJZGlhZ25vc2VfbWlzc2luZ19kZWZhdWx0KHJldnMtPmRlZik7CiAJCW9iamVjdCA9IGdldF9yZWZlcmVuY2UocmV2cywgcmV2cy0+ZGVmLCAmb2lkLCAwKTsKIAkJYWRkX3BlbmRpbmdfb2JqZWN0X3dpdGhfbW9kZShyZXZzLCBvYmplY3QsIHJldnMtPmRlZiwgb2MubW9kZSk7CkBAIC0yNDg2LDYgKzI2NjYsOSBAQAogCX0KIAlpZiAocmV2cy0+Y29tYmluZV9tZXJnZXMpCiAJCXJldnMtPmlnbm9yZV9tZXJnZXMgPSAwOworCWlmIChyZXZzLT5jb21iaW5lZF9hbGxfcGF0aHMgJiYgIXJldnMtPmNvbWJpbmVfbWVyZ2VzKQorCQlkaWUoIi0tY29tYmluZWQtYWxsLXBhdGhzIG1ha2VzIG5vIHNlbnNlIHdpdGhvdXQgLWMgb3IgLS1jYyIpOworCiAJcmV2cy0+ZGlmZm9wdC5hYmJyZXYgPSByZXZzLT5hYmJyZXY7CiAKIAlpZiAocmV2cy0+bGluZV9sZXZlbF90cmF2ZXJzZSkgewpAQCAtMjQ5Nyw2ICsyNjgwLDggQEAKIAogCWdyZXBfY29tbWl0X3BhdHRlcm5fdHlwZShHUkVQX1BBVFRFUk5fVFlQRV9VTlNQRUNJRklFRCwKIAkJCQkgJnJldnMtPmdyZXBfZmlsdGVyKTsKKwlpZiAoIWlzX2VuY29kaW5nX3V0ZjgoZ2V0X2xvZ19vdXRwdXRfZW5jb2RpbmcoKSkpCisJCXJldnMtPmdyZXBfZmlsdGVyLmlnbm9yZV9sb2NhbGUgPSAxOwogCWNvbXBpbGVfZ3JlcF9wYXR0ZXJucygmcmV2cy0+Z3JlcF9maWx0ZXIpOwogCiAJaWYgKHJldnMtPnJldmVyc2UgJiYgcmV2cy0+cmVmbG9nX2luZm8pCkBAIC0yNTIyLDYgKzI3MDcsMTAgQEAKIAlpZiAocmV2cy0+Zmlyc3RfcGFyZW50X29ubHkgJiYgcmV2cy0+YmlzZWN0KQogCQlkaWUoXygiLS1maXJzdC1wYXJlbnQgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1iaXNlY3QiKSk7CiAKKwlpZiAocmV2cy0+bGluZV9sZXZlbF90cmF2ZXJzZSAmJgorCSAgICAocmV2cy0+ZGlmZm9wdC5vdXRwdXRfZm9ybWF0ICYgfihESUZGX0ZPUk1BVF9QQVRDSCB8IERJRkZfRk9STUFUX05PX09VVFBVVCkpKQorCQlkaWUoXygiLUwgZG9lcyBub3QgeWV0IHN1cHBvcnQgZGlmZiBmb3JtYXRzIGJlc2lkZXMgLXAgYW5kIC1zIikpOworCiAJaWYgKHJldnMtPmV4cGFuZF90YWJzX2luX2xvZyA8IDApCiAJCXJldnMtPmV4cGFuZF90YWJzX2luX2xvZyA9IHJldnMtPmV4cGFuZF90YWJzX2luX2xvZ19kZWZhdWx0OwogCkBAIC0yNTgxLDcgKzI3NzAsNyBAQAogCXJldHVybiBzdDsKIH0KIAotc3RhdGljIGludCBtYXJrX3JlZHVuZGFudF9wYXJlbnRzKHN0cnVjdCByZXZfaW5mbyAqcmV2cywgc3RydWN0IGNvbW1pdCAqY29tbWl0KQorc3RhdGljIGludCBtYXJrX3JlZHVuZGFudF9wYXJlbnRzKHN0cnVjdCBjb21taXQgKmNvbW1pdCkKIHsKIAlzdHJ1Y3QgY29tbWl0X2xpc3QgKmggPSByZWR1Y2VfaGVhZHMoY29tbWl0LT5wYXJlbnRzKTsKIAlpbnQgaSA9IDAsIG1hcmtlZCA9IDA7CkBAIC0yNjE3LDcgKzI4MDYsNyBAQAogCXJldHVybiBtYXJrZWQ7CiB9CiAKLXN0YXRpYyBpbnQgbWFya190cmVlc2FtZV9yb290X3BhcmVudHMoc3RydWN0IHJldl9pbmZvICpyZXZzLCBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCitzdGF0aWMgaW50IG1hcmtfdHJlZXNhbWVfcm9vdF9wYXJlbnRzKHN0cnVjdCBjb21taXQgKmNvbW1pdCkKIHsKIAlzdHJ1Y3QgY29tbWl0X2xpc3QgKnA7CiAJaW50IG1hcmtlZCA9IDA7CkBAIC0yODA5LDggKzI5OTgsOCBAQAogCSAqIERldGVjdCBhbmQgc2ltcGxpZnkgYm90aCBjYXNlcy4KIAkgKi8KIAlpZiAoMSA8IGNudCkgewotCQlpbnQgbWFya2VkID0gbWFya19yZWR1bmRhbnRfcGFyZW50cyhyZXZzLCBjb21taXQpOwotCQltYXJrZWQgKz0gbWFya190cmVlc2FtZV9yb290X3BhcmVudHMocmV2cywgY29tbWl0KTsKKwkJaW50IG1hcmtlZCA9IG1hcmtfcmVkdW5kYW50X3BhcmVudHMoY29tbWl0KTsKKwkJbWFya2VkICs9IG1hcmtfdHJlZXNhbWVfcm9vdF9wYXJlbnRzKGNvbW1pdCk7CiAJCWlmIChtYXJrZWQpCiAJCQltYXJrZWQgLT0gbGVhdmVfb25lX3RyZWVzYW1lX3RvX3BhcmVudChyZXZzLCBjb21taXQpOwogCQlpZiAobWFya2VkKQpAQCAtMjg5Nyw3ICszMDg2LDcgQEAKIAogdm9pZCByZXNldF9yZXZpc2lvbl93YWxrKHZvaWQpCiB7Ci0JY2xlYXJfb2JqZWN0X2ZsYWdzKFNFRU4gfCBBRERFRCB8IFNIT1dOKTsKKwljbGVhcl9vYmplY3RfZmxhZ3MoU0VFTiB8IEFEREVEIHwgU0hPV04gfCBUT1BPX1dBTEtfRVhQTE9SRUQgfCBUT1BPX1dBTEtfSU5ERUdSRUUpOwogfQogCiBzdGF0aWMgaW50IG1hcmtfdW5pbnRlcmVzdGluZyhjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCkBAIC0zMDEwLDEwICszMTk5LDI2IEBACiAJCWluZGVncmVlX3dhbGtfc3RlcChyZXZzKTsKIH0KIAorc3RhdGljIHZvaWQgcmVzZXRfdG9wb193YWxrKHN0cnVjdCByZXZfaW5mbyAqcmV2cykKK3sKKwlzdHJ1Y3QgdG9wb193YWxrX2luZm8gKmluZm8gPSByZXZzLT50b3BvX3dhbGtfaW5mbzsKKworCWNsZWFyX3ByaW9fcXVldWUoJmluZm8tPmV4cGxvcmVfcXVldWUpOworCWNsZWFyX3ByaW9fcXVldWUoJmluZm8tPmluZGVncmVlX3F1ZXVlKTsKKwljbGVhcl9wcmlvX3F1ZXVlKCZpbmZvLT50b3BvX3F1ZXVlKTsKKwljbGVhcl9pbmRlZ3JlZV9zbGFiKCZpbmZvLT5pbmRlZ3JlZSk7CisJY2xlYXJfYXV0aG9yX2RhdGVfc2xhYigmaW5mby0+YXV0aG9yX2RhdGUpOworCisJRlJFRV9BTkRfTlVMTChyZXZzLT50b3BvX3dhbGtfaW5mbyk7Cit9CisKIHN0YXRpYyB2b2lkIGluaXRfdG9wb193YWxrKHN0cnVjdCByZXZfaW5mbyAqcmV2cykKIHsKIAlzdHJ1Y3QgdG9wb193YWxrX2luZm8gKmluZm87CiAJc3RydWN0IGNvbW1pdF9saXN0ICpsaXN0OworCWlmIChyZXZzLT50b3BvX3dhbGtfaW5mbykKKwkJcmVzZXRfdG9wb193YWxrKHJldnMpOworCiAJcmV2cy0+dG9wb193YWxrX2luZm8gPSB4bWFsbG9jKHNpemVvZihzdHJ1Y3QgdG9wb193YWxrX2luZm8pKTsKIAlpbmZvID0gcmV2cy0+dG9wb193YWxrX2luZm87CiAJbWVtc2V0KGluZm8sIDAsIHNpemVvZihzdHJ1Y3QgdG9wb193YWxrX2luZm8pKTsKQEAgLTMxMDMsNiArMzMwOCw5IEBACiAJCXN0cnVjdCBjb21taXQgKnBhcmVudCA9IHAtPml0ZW07CiAJCWludCAqcGk7CiAKKwkJaWYgKHBhcmVudC0+b2JqZWN0LmZsYWdzICYgVU5JTlRFUkVTVElORykKKwkJCWNvbnRpbnVlOworCiAJCWlmIChwYXJzZV9jb21taXRfZ2VudGx5KHBhcmVudCwgMSkgPCAwKQogCQkJY29udGludWU7CiAKQEAgLTMxNzQsMTQgKzMzODIsMTQgQEAKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGVudW0gcmV3cml0ZV9yZXN1bHQgcmV3cml0ZV9vbmUoc3RydWN0IHJldl9pbmZvICpyZXZzLCBzdHJ1Y3QgY29tbWl0ICoqcHApCitzdGF0aWMgZW51bSByZXdyaXRlX3Jlc3VsdCByZXdyaXRlX29uZV8xKHN0cnVjdCByZXZfaW5mbyAqcmV2cywKKwkJCQkJIHN0cnVjdCBjb21taXQgKipwcCwKKwkJCQkJIHN0cnVjdCBwcmlvX3F1ZXVlICpxdWV1ZSkKIHsKLQlzdHJ1Y3QgY29tbWl0X2xpc3QgKmNhY2hlID0gTlVMTDsKLQogCWZvciAoOzspIHsKIAkJc3RydWN0IGNvbW1pdCAqcCA9ICpwcDsKIAkJaWYgKCFyZXZzLT5saW1pdGVkKQotCQkJaWYgKHByb2Nlc3NfcGFyZW50cyhyZXZzLCBwLCAmcmV2cy0+Y29tbWl0cywgJmNhY2hlKSA8IDApCisJCQlpZiAocHJvY2Vzc19wYXJlbnRzKHJldnMsIHAsIE5VTEwsIHF1ZXVlKSA8IDApCiAJCQkJcmV0dXJuIHJld3JpdGVfb25lX2Vycm9yOwogCQlpZiAocC0+b2JqZWN0LmZsYWdzICYgVU5JTlRFUkVTVElORykKIAkJCXJldHVybiByZXdyaXRlX29uZV9vazsKQEAgLTMxOTUsNiArMzQwMywzMSBAQAogCX0KIH0KIAorc3RhdGljIHZvaWQgbWVyZ2VfcXVldWVfaW50b19saXN0KHN0cnVjdCBwcmlvX3F1ZXVlICpxLCBzdHJ1Y3QgY29tbWl0X2xpc3QgKipsaXN0KQoreworCXdoaWxlIChxLT5ucikgeworCQlzdHJ1Y3QgY29tbWl0ICppdGVtID0gcHJpb19xdWV1ZV9wZWVrKHEpOworCQlzdHJ1Y3QgY29tbWl0X2xpc3QgKnAgPSAqbGlzdDsKKworCQlpZiAocCAmJiBwLT5pdGVtLT5kYXRlID49IGl0ZW0tPmRhdGUpCisJCQlsaXN0ID0gJnAtPm5leHQ7CisJCWVsc2UgeworCQkJcCA9IGNvbW1pdF9saXN0X2luc2VydChpdGVtLCBsaXN0KTsKKwkJCWxpc3QgPSAmcC0+bmV4dDsgLyogc2tpcCBuZXdseSBhZGRlZCBpdGVtICovCisJCQlwcmlvX3F1ZXVlX2dldChxKTsgLyogcG9wIGl0ZW0gKi8KKwkJfQorCX0KK30KKworc3RhdGljIGVudW0gcmV3cml0ZV9yZXN1bHQgcmV3cml0ZV9vbmUoc3RydWN0IHJldl9pbmZvICpyZXZzLCBzdHJ1Y3QgY29tbWl0ICoqcHApCit7CisJc3RydWN0IHByaW9fcXVldWUgcXVldWUgPSB7IGNvbXBhcmVfY29tbWl0c19ieV9jb21taXRfZGF0ZSB9OworCWVudW0gcmV3cml0ZV9yZXN1bHQgcmV0ID0gcmV3cml0ZV9vbmVfMShyZXZzLCBwcCwgJnF1ZXVlKTsKKwltZXJnZV9xdWV1ZV9pbnRvX2xpc3QoJnF1ZXVlLCAmcmV2cy0+Y29tbWl0cyk7CisJY2xlYXJfcHJpb19xdWV1ZSgmcXVldWUpOworCXJldHVybiByZXQ7Cit9CisKIGludCByZXdyaXRlX3BhcmVudHMoc3RydWN0IHJldl9pbmZvICpyZXZzLCBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCiAJcmV3cml0ZV9wYXJlbnRfZm5fdCByZXdyaXRlX3BhcmVudCkKIHsKQEAgLTM3MTUsNyArMzk0OCw3IEBACiAJcmV0dXJuIGM7CiB9CiAKLWNoYXIgKmdldF9yZXZpc2lvbl9tYXJrKGNvbnN0IHN0cnVjdCByZXZfaW5mbyAqcmV2cywgY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0KQorY29uc3QgY2hhciAqZ2V0X3JldmlzaW9uX21hcmsoY29uc3Qgc3RydWN0IHJldl9pbmZvICpyZXZzLCBjb25zdCBzdHJ1Y3QgY29tbWl0ICpjb21taXQpCiB7CiAJaWYgKGNvbW1pdC0+b2JqZWN0LmZsYWdzICYgQk9VTkRBUlkpCiAJCXJldHVybiAiLSI7CkBAIC0zNzM3LDcgKzM5NzAsNyBAQAogCiB2b2lkIHB1dF9yZXZpc2lvbl9tYXJrKGNvbnN0IHN0cnVjdCByZXZfaW5mbyAqcmV2cywgY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0KQogewotCWNoYXIgKm1hcmsgPSBnZXRfcmV2aXNpb25fbWFyayhyZXZzLCBjb21taXQpOworCWNvbnN0IGNoYXIgKm1hcmsgPSBnZXRfcmV2aXNpb25fbWFyayhyZXZzLCBjb21taXQpOwogCWlmICghc3RybGVuKG1hcmspKQogCQlyZXR1cm47CiAJZnB1dHMobWFyaywgc3Rkb3V0KTsKZGlmZiAtLWdpdCBhL3JldmlzaW9uLmggYi9yZXZpc2lvbi5oCmluZGV4IDc5ODdiZmMuLjQ3NWYwNDggMTAwNjQ0Ci0tLSBhL3JldmlzaW9uLmgKKysrIGIvcmV2aXNpb24uaApAQCAtOSw2ICs5LDE5IEBACiAjaW5jbHVkZSAiZGlmZi5oIgogI2luY2x1ZGUgImNvbW1pdC1zbGFiLWRlY2wuaCIKIAorLyoqCisgKiBUaGUgcmV2aXNpb24gd2Fsa2luZyBBUEkgb2ZmZXJzIGZ1bmN0aW9ucyB0byBidWlsZCBhIGxpc3Qgb2YgcmV2aXNpb25zCisgKiBhbmQgdGhlbiBpdGVyYXRlIG92ZXIgdGhhdCBsaXN0LgorICoKKyAqIENhbGxpbmcgc2VxdWVuY2UKKyAqIC0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiBUaGUgd2Fsa2luZyBBUEkgaGFzIGEgZ2l2ZW4gY2FsbGluZyBzZXF1ZW5jZTogZmlyc3QgeW91IG5lZWQgdG8gaW5pdGlhbGl6ZQorICogYSByZXZfaW5mbyBzdHJ1Y3R1cmUsIHRoZW4gYWRkIHJldmlzaW9ucyB0byBjb250cm9sIHdoYXQga2luZCBvZiByZXZpc2lvbgorICogbGlzdCBkbyB5b3Ugd2FudCB0byBnZXQsIGZpbmFsbHkgeW91IGNhbiBpdGVyYXRlIG92ZXIgdGhlIHJldmlzaW9uIGxpc3QuCisgKgorICovCisKIC8qIFJlbWVtYmVyIHRvIHVwZGF0ZSBvYmplY3QgZmxhZyBhbGxvY2F0aW9uIGluIG9iamVjdC5oICovCiAjZGVmaW5lIFNFRU4JCSgxdTw8MCkKICNkZWZpbmUgVU5JTlRFUkVTVElORyAgICgxdTw8MSkKQEAgLTY3LDYgKzgwLDcgQEAKICNkZWZpbmUgUkVWSVNJT05fV0FMS19OT19XQUxLX1NPUlRFRCAxCiAjZGVmaW5lIFJFVklTSU9OX1dBTEtfTk9fV0FMS19VTlNPUlRFRCAyCiAKK3N0cnVjdCBvaWRzZXQ7CiBzdHJ1Y3QgdG9wb193YWxrX2luZm87CiAKIHN0cnVjdCByZXZfaW5mbyB7CkBAIC0xNjEsNyArMTc1LDYgQEAKIAkJCWRvX25vdF9kaWVfb25fbWlzc2luZ190cmVlOjEsCiAKIAkJCS8qIGZvciBpbnRlcm5hbCB1c2Ugb25seSAqLwotCQkJYWxsb3dfZXhjbHVkZV9wcm9taXNvcl9vYmplY3RzX29wdDoxLAogCQkJZXhjbHVkZV9wcm9taXNvcl9vYmplY3RzOjE7CiAKIAkvKiBEaWZmIGZsYWdzICovCkBAIC0xNzIsMTQgKzE4NSwxNSBAQAogCQkJdmVyYm9zZV9oZWFkZXI6MSwKIAkJCWlnbm9yZV9tZXJnZXM6MSwKIAkJCWNvbWJpbmVfbWVyZ2VzOjEsCisJCQljb21iaW5lZF9hbGxfcGF0aHM6MSwKIAkJCWRlbnNlX2NvbWJpbmVkX21lcmdlczoxLAogCQkJYWx3YXlzX3Nob3dfaGVhZGVyOjE7CiAKIAkvKiBGb3JtYXQgaW5mbyAqLworCWludAkJc2hvd19ub3RlczsKIAl1bnNpZ25lZCBpbnQJc2hvd25fb25lOjEsCiAJCQlzaG93bl9kYXNoZXM6MSwKIAkJCXNob3dfbWVyZ2U6MSwKLQkJCXNob3dfbm90ZXM6MSwKIAkJCXNob3dfbm90ZXNfZ2l2ZW46MSwKIAkJCXNob3dfc2lnbmF0dXJlOjEsCiAJCQlwcmV0dHlfZ2l2ZW46MSwKQEAgLTI5NywxOCArMzExLDM3IEBACiAJY29uc3QgY2hhciAqZGVmOwogCXZvaWQgKCp0d2Vhaykoc3RydWN0IHJldl9pbmZvICosIHN0cnVjdCBzZXR1cF9yZXZpc2lvbl9vcHQgKik7CiAJY29uc3QgY2hhciAqc3VibW9kdWxlOwkvKiBUT0RPOiBkcm9wIHRoaXMgYW5kIHVzZSByZXZfaW5mby0+cmVwbyAqLwotCWludCBhc3N1bWVfZGFzaGRhc2g7CisJdW5zaWduZWQgaW50CWFzc3VtZV9kYXNoZGFzaDoxLAorCQkJYWxsb3dfZXhjbHVkZV9wcm9taXNvcl9vYmplY3RzOjE7CiAJdW5zaWduZWQgcmV2YXJnX29wdDsKIH07CiAKICNpZm5kZWYgTk9fVEhFX1JFUE9TSVRPUllfQ09NUEFUSUJJTElUWV9NQUNST1MKICNkZWZpbmUgaW5pdF9yZXZpc2lvbnMocmV2cywgcHJlZml4KSByZXBvX2luaXRfcmV2aXNpb25zKHRoZV9yZXBvc2l0b3J5LCByZXZzLCBwcmVmaXgpCiAjZW5kaWYKKworLyoqCisgKiBJbml0aWFsaXplIGEgcmV2X2luZm8gc3RydWN0dXJlIHdpdGggZGVmYXVsdCB2YWx1ZXMuIFRoZSB0aGlyZCBwYXJhbWV0ZXIgbWF5CisgKiBiZSBOVUxMIG9yIGNhbiBiZSBwcmVmaXggcGF0aCwgYW5kIHRoZW4gdGhlIGAucHJlZml4YCB2YXJpYWJsZSB3aWxsIGJlIHNldAorICogdG8gaXQuIFRoaXMgaXMgdHlwaWNhbGx5IHRoZSBmaXJzdCBmdW5jdGlvbiB5b3Ugd2FudCB0byBjYWxsIHdoZW4geW91IHdhbnQKKyAqIHRvIGRlYWwgd2l0aCBhIHJldmlzaW9uIGxpc3QuIEFmdGVyIGNhbGxpbmcgdGhpcyBmdW5jdGlvbiwgeW91IGFyZSBmcmVlIHRvCisgKiBjdXN0b21pemUgb3B0aW9ucywgbGlrZSBzZXQgYC5pZ25vcmVfbWVyZ2VzYCB0byAwIGlmIHlvdSBkb24ndCB3YW50IHRvCisgKiBpZ25vcmUgbWVyZ2VzLCBhbmQgc28gb24uCisgKi8KIHZvaWQgcmVwb19pbml0X3JldmlzaW9ucyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKIAkJCSBzdHJ1Y3QgcmV2X2luZm8gKnJldnMsCiAJCQkgY29uc3QgY2hhciAqcHJlZml4KTsKKworLyoqCisgKiBQYXJzZSByZXZpc2lvbiBpbmZvcm1hdGlvbiwgZmlsbGluZyBpbiB0aGUgYHJldl9pbmZvYCBzdHJ1Y3R1cmUsIGFuZAorICogcmVtb3ZpbmcgdGhlIHVzZWQgYXJndW1lbnRzIGZyb20gdGhlIGFyZ3VtZW50IGxpc3QuIFJldHVybnMgdGhlIG51bWJlcgorICogb2YgYXJndW1lbnRzIGxlZnQgdGhhdCB3ZXJlbid0IHJlY29nbml6ZWQsIHdoaWNoIGFyZSBhbHNvIG1vdmVkIHRvIHRoZQorICogaGVhZCBvZiB0aGUgYXJndW1lbnQgbGlzdC4gVGhlIGxhc3QgcGFyYW1ldGVyIGlzIHVzZWQgaW4gY2FzZSBubworICogcGFyYW1ldGVyIGdpdmVuIGJ5IHRoZSBmaXJzdCB0d28gYXJndW1lbnRzLgorICovCiBpbnQgc2V0dXBfcmV2aXNpb25zKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgc3RydWN0IHJldl9pbmZvICpyZXZzLAogCQkgICAgc3RydWN0IHNldHVwX3JldmlzaW9uX29wdCAqKTsKKwogdm9pZCBwYXJzZV9yZXZpc2lvbl9vcHQoc3RydWN0IHJldl9pbmZvICpyZXZzLCBzdHJ1Y3QgcGFyc2Vfb3B0X2N0eF90ICpjdHgsCiAJCQljb25zdCBzdHJ1Y3Qgb3B0aW9uICpvcHRpb25zLAogCQkJY29uc3QgY2hhciAqIGNvbnN0IHVzYWdlc3RyW10pOwpAQCAtMzE3LDIxICszNTAsNTAgQEAKIGludCBoYW5kbGVfcmV2aXNpb25fYXJnKGNvbnN0IGNoYXIgKmFyZywgc3RydWN0IHJldl9pbmZvICpyZXZzLAogCQkJaW50IGZsYWdzLCB1bnNpZ25lZCByZXZhcmdfb3B0KTsKIAorLyoqCisgKiBSZXNldCB0aGUgZmxhZ3MgdXNlZCBieSB0aGUgcmV2aXNpb24gd2Fsa2luZyBhcGkuIFlvdSBjYW4gdXNlIHRoaXMgdG8gZG8KKyAqIG11bHRpcGxlIHNlcXVlbnRpYWwgcmV2aXNpb24gd2Fsa3MuCisgKi8KIHZvaWQgcmVzZXRfcmV2aXNpb25fd2Fsayh2b2lkKTsKKworLyoqCisgKiBQcmVwYXJlcyB0aGUgcmV2X2luZm8gc3RydWN0dXJlIGZvciBhIHdhbGsuIFlvdSBzaG91bGQgY2hlY2sgaWYgaXQgcmV0dXJucworICogYW55IGVycm9yIChub24temVybyByZXR1cm4gY29kZSkgYW5kIGlmIGl0IGRvZXMgbm90LCB5b3UgY2FuIHN0YXJ0IHVzaW5nCisgKiBnZXRfcmV2aXNpb24oKSB0byBkbyB0aGUgaXRlcmF0aW9uLgorICovCiBpbnQgcHJlcGFyZV9yZXZpc2lvbl93YWxrKHN0cnVjdCByZXZfaW5mbyAqcmV2cyk7CisKKy8qKgorICogVGFrZXMgYSBwb2ludGVyIHRvIGEgYHJldl9pbmZvYCBzdHJ1Y3R1cmUgYW5kIGl0ZXJhdGVzIG92ZXIgaXQsIHJldHVybmluZyBhCisgKiBgc3RydWN0IGNvbW1pdCAqYCBlYWNoIHRpbWUgeW91IGNhbGwgaXQuIFRoZSBlbmQgb2YgdGhlIHJldmlzaW9uIGxpc3QgaXMKKyAqIGluZGljYXRlZCBieSByZXR1cm5pbmcgYSBOVUxMIHBvaW50ZXIuCisgKi8KIHN0cnVjdCBjb21taXQgKmdldF9yZXZpc2lvbihzdHJ1Y3QgcmV2X2luZm8gKnJldnMpOwotY2hhciAqZ2V0X3JldmlzaW9uX21hcmsoY29uc3Qgc3RydWN0IHJldl9pbmZvICpyZXZzLAotCQkJY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0KTsKKworY29uc3QgY2hhciAqZ2V0X3JldmlzaW9uX21hcmsoY29uc3Qgc3RydWN0IHJldl9pbmZvICpyZXZzLAorCQkJICAgICAgY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0KTsKIHZvaWQgcHV0X3JldmlzaW9uX21hcmsoY29uc3Qgc3RydWN0IHJldl9pbmZvICpyZXZzLAogCQkgICAgICAgY29uc3Qgc3RydWN0IGNvbW1pdCAqY29tbWl0KTsKIAogdm9pZCBtYXJrX3BhcmVudHNfdW5pbnRlcmVzdGluZyhzdHJ1Y3QgY29tbWl0ICpjb21taXQpOwogdm9pZCBtYXJrX3RyZWVfdW5pbnRlcmVzdGluZyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHRyZWUgKnRyZWUpOwordm9pZCBtYXJrX3RyZWVzX3VuaW50ZXJlc3Rpbmdfc3BhcnNlKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3Qgb2lkc2V0ICp0cmVlcyk7CiAKIHZvaWQgc2hvd19vYmplY3Rfd2l0aF9uYW1lKEZJTEUgKiwgc3RydWN0IG9iamVjdCAqLCBjb25zdCBjaGFyICopOwogCisvKioKKyAqIFRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgaWYgeW91IHdhbnQgdG8gYWRkIGNvbW1pdCBvYmplY3RzIGFzIHJldmlzaW9uCisgKiBpbmZvcm1hdGlvbi4gWW91IGNhbiB1c2UgdGhlIGBVTklOVEVSRVNUSU5HYCBvYmplY3QgZmxhZyB0byBpbmRpY2F0ZSBpZgorICogeW91IHdhbnQgdG8gaW5jbHVkZSBvciBleGNsdWRlIHRoZSBnaXZlbiBjb21taXQgKGFuZCBjb21taXRzIHJlYWNoYWJsZQorICogZnJvbSB0aGUgZ2l2ZW4gY29tbWl0KSBmcm9tIHRoZSByZXZpc2lvbiBsaXN0LgorICoKKyAqIE5PVEU6IElmIHlvdSBoYXZlIHRoZSBjb21taXRzIGFzIGEgc3RyaW5nIGxpc3QgdGhlbiB5b3UgcHJvYmFibHkgd2FudCB0bworICogdXNlIHNldHVwX3JldmlzaW9ucygpLCBpbnN0ZWFkIG9mIHBhcnNpbmcgZWFjaCBzdHJpbmcgYW5kIHVzaW5nIHRoaXMKKyAqIGZ1bmN0aW9uLgorICovCiB2b2lkIGFkZF9wZW5kaW5nX29iamVjdChzdHJ1Y3QgcmV2X2luZm8gKnJldnMsCiAJCQlzdHJ1Y3Qgb2JqZWN0ICpvYmosIGNvbnN0IGNoYXIgKm5hbWUpOworCiB2b2lkIGFkZF9wZW5kaW5nX29pZChzdHJ1Y3QgcmV2X2luZm8gKnJldnMsCiAJCSAgICAgY29uc3QgY2hhciAqbmFtZSwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAogCQkgICAgIHVuc2lnbmVkIGludCBmbGFncyk7CmRpZmYgLS1naXQgYS9ydW4tY29tbWFuZC5jIGIvcnVuLWNvbW1hbmQuYwppbmRleCAzZGIyNmI3Li5mNWUxMTQ5IDEwMDY0NAotLS0gYS9ydW4tY29tbWFuZC5jCisrKyBiL3J1bi1jb21tYW5kLmMKQEAgLTIxMywxNSArMjEzLDM2IEBACiBzdGF0aWMgaW50IGV4aXN0c19pbl9QQVRIKGNvbnN0IGNoYXIgKmZpbGUpCiB7CiAJY2hhciAqciA9IGxvY2F0ZV9pbl9QQVRIKGZpbGUpOworCWludCBmb3VuZCA9IHIgIT0gTlVMTDsKIAlmcmVlKHIpOwotCXJldHVybiByICE9IE5VTEw7CisJcmV0dXJuIGZvdW5kOwogfQogCiBpbnQgc2FuZV9leGVjdnAoY29uc3QgY2hhciAqZmlsZSwgY2hhciAqIGNvbnN0IGFyZ3ZbXSkKIHsKKyNpZm5kZWYgR0lUX1dJTkRPV1NfTkFUSVZFCisJLyoKKwkgKiBleGVjdnAoKSBkb2Vzbid0IHJldHVybiwgc28gd2UgYWxsIHdlIGNhbiBkbyBpcyB0ZWxsIHRyYWNlMgorCSAqIHdoYXQgd2UgYXJlIGFib3V0IHRvIGRvIGFuZCBsZXQgaXQgbGVhdmUgYSBoaW50IGluIHRoZSBsb2cKKwkgKiAodW5sZXNzIG9mIGNvdXJzZSB0aGUgZXhlY3ZwKCkgZmFpbHMpLgorCSAqCisJICogd2Ugc2tpcCB0aGlzIGZvciBXaW5kb3dzIGJlY2F1c2UgdGhlIGNvbXBhdCBsYXllciBhbHJlYWR5CisJICogaGFzIHRvIGVtdWxhdGUgdGhlIGV4ZWN2cCgpIGNhbGwgYW55d2F5LgorCSAqLworCWludCBleGVjX2lkID0gdHJhY2UyX2V4ZWMoZmlsZSwgKGNvbnN0IGNoYXIgKiopYXJndik7CisjZW5kaWYKKwogCWlmICghZXhlY3ZwKGZpbGUsIGFyZ3YpKQogCQlyZXR1cm4gMDsgLyogY2Fubm90IGhhcHBlbiA7LSkgKi8KIAorI2lmbmRlZiBHSVRfV0lORE9XU19OQVRJVkUKKwl7CisJCWludCBlYyA9IGVycm5vOworCQl0cmFjZTJfZXhlY19yZXN1bHQoZXhlY19pZCwgZWMpOworCQllcnJubyA9IGVjOworCX0KKyNlbmRpZgorCiAJLyoKIAkgKiBXaGVuIGEgY29tbWFuZCBjYW4ndCBiZSBmb3VuZCBiZWNhdXNlIG9uZSBvZiB0aGUgZGlyZWN0b3JpZXMKIAkgKiBsaXN0ZWQgaW4gJFBBVEggaXMgdW5zZWFyY2hhYmxlLCBleGVjdnAgcmVwb3J0cyBFQUNDRVMsIGJ1dApAQCAtMzkyLDggKzQxMyw3IEBACiAJYXJndl9hcnJheV9wdXNoKG91dCwgU0hFTExfUEFUSCk7CiAKIAlpZiAoY21kLT5naXRfY21kKSB7Ci0JCWFyZ3ZfYXJyYXlfcHVzaChvdXQsICJnaXQiKTsKLQkJYXJndl9hcnJheV9wdXNodihvdXQsIGNtZC0+YXJndik7CisJCXByZXBhcmVfZ2l0X2NtZChvdXQsIGNtZC0+YXJndik7CiAJfSBlbHNlIGlmIChjbWQtPnVzZV9zaGVsbCkgewogCQlwcmVwYXJlX3NoZWxsX2NtZChvdXQsIGNtZC0+YXJndik7CiAJfSBlbHNlIHsKQEAgLTcxMiw2ICs3MzIsNyBAQAogCQljbWQtPmVyciA9IGZkZXJyWzBdOwogCX0KIAorCXRyYWNlMl9jaGlsZF9zdGFydChjbWQpOwogCXRyYWNlX3J1bl9jb21tYW5kKGNtZCk7CiAKIAlmZmx1c2goTlVMTCk7CkBAIC05MjYsNiArOTQ3LDggQEAKICNlbmRpZgogCiAJaWYgKGNtZC0+cGlkIDwgMCkgeworCQl0cmFjZTJfY2hpbGRfZXhpdChjbWQsIC0xKTsKKwogCQlpZiAobmVlZF9pbikKIAkJCWNsb3NlX3BhaXIoZmRpbik7CiAJCWVsc2UgaWYgKGNtZC0+aW4pCkBAIC05NjQsMTMgKzk4NywxNiBAQAogaW50IGZpbmlzaF9jb21tYW5kKHN0cnVjdCBjaGlsZF9wcm9jZXNzICpjbWQpCiB7CiAJaW50IHJldCA9IHdhaXRfb3Jfd2hpbmUoY21kLT5waWQsIGNtZC0+YXJndlswXSwgMCk7CisJdHJhY2UyX2NoaWxkX2V4aXQoY21kLCByZXQpOwogCWNoaWxkX3Byb2Nlc3NfY2xlYXIoY21kKTsKIAlyZXR1cm4gcmV0OwogfQogCiBpbnQgZmluaXNoX2NvbW1hbmRfaW5fc2lnbmFsKHN0cnVjdCBjaGlsZF9wcm9jZXNzICpjbWQpCiB7Ci0JcmV0dXJuIHdhaXRfb3Jfd2hpbmUoY21kLT5waWQsIGNtZC0+YXJndlswXSwgMSk7CisJaW50IHJldCA9IHdhaXRfb3Jfd2hpbmUoY21kLT5waWQsIGNtZC0+YXJndlswXSwgMSk7CisJdHJhY2UyX2NoaWxkX2V4aXQoY21kLCByZXQpOworCXJldHVybiByZXQ7CiB9CiAKIApAQCAtOTkyLDggKzEwMTgsMTkgQEAKIAlyZXR1cm4gcnVuX2NvbW1hbmRfdl9vcHRfY2RfZW52KGFyZ3YsIG9wdCwgTlVMTCwgTlVMTCk7CiB9CiAKK2ludCBydW5fY29tbWFuZF92X29wdF90cjIoY29uc3QgY2hhciAqKmFyZ3YsIGludCBvcHQsIGNvbnN0IGNoYXIgKnRyMl9jbGFzcykKK3sKKwlyZXR1cm4gcnVuX2NvbW1hbmRfdl9vcHRfY2RfZW52X3RyMihhcmd2LCBvcHQsIE5VTEwsIE5VTEwsIHRyMl9jbGFzcyk7Cit9CisKIGludCBydW5fY29tbWFuZF92X29wdF9jZF9lbnYoY29uc3QgY2hhciAqKmFyZ3YsIGludCBvcHQsIGNvbnN0IGNoYXIgKmRpciwgY29uc3QgY2hhciAqY29uc3QgKmVudikKIHsKKwlyZXR1cm4gcnVuX2NvbW1hbmRfdl9vcHRfY2RfZW52X3RyMihhcmd2LCBvcHQsIGRpciwgZW52LCBOVUxMKTsKK30KKworaW50IHJ1bl9jb21tYW5kX3Zfb3B0X2NkX2Vudl90cjIoY29uc3QgY2hhciAqKmFyZ3YsIGludCBvcHQsIGNvbnN0IGNoYXIgKmRpciwKKwkJCQkgY29uc3QgY2hhciAqY29uc3QgKmVudiwgY29uc3QgY2hhciAqdHIyX2NsYXNzKQorewogCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNtZCA9IENISUxEX1BST0NFU1NfSU5JVDsKIAljbWQuYXJndiA9IGFyZ3Y7CiAJY21kLm5vX3N0ZGluID0gb3B0ICYgUlVOX0NPTU1BTkRfTk9fU1RESU4gPyAxIDogMDsKQEAgLTEwMDQsNiArMTA0MSw3IEBACiAJY21kLmNsZWFuX29uX2V4aXQgPSBvcHQgJiBSVU5fQ0xFQU5fT05fRVhJVCA/IDEgOiAwOwogCWNtZC5kaXIgPSBkaXI7CiAJY21kLmVudiA9IGVudjsKKwljbWQudHJhY2UyX2NoaWxkX2NsYXNzID0gdHIyX2NsYXNzOwogCXJldHVybiBydW5fY29tbWFuZCgmY21kKTsKIH0KIApAQCAtMTMxOSw2ICsxMzU3LDcgQEAKIAlob29rLmVudiA9IGVudjsKIAlob29rLm5vX3N0ZGluID0gMTsKIAlob29rLnN0ZG91dF90b19zdGRlcnIgPSAxOworCWhvb2sudHJhY2UyX2hvb2tfbmFtZSA9IG5hbWU7CiAKIAlyZXR1cm4gcnVuX2NvbW1hbmQoJmhvb2spOwogfQpAQCAtMTgwNywzICsxODQ2LDIxIEBACiAJcHBfY2xlYW51cCgmcHApOwogCXJldHVybiAwOwogfQorCitpbnQgcnVuX3Byb2Nlc3Nlc19wYXJhbGxlbF90cjIoaW50IG4sIGdldF9uZXh0X3Rhc2tfZm4gZ2V0X25leHRfdGFzaywKKwkJCSAgICAgICBzdGFydF9mYWlsdXJlX2ZuIHN0YXJ0X2ZhaWx1cmUsCisJCQkgICAgICAgdGFza19maW5pc2hlZF9mbiB0YXNrX2ZpbmlzaGVkLCB2b2lkICpwcF9jYiwKKwkJCSAgICAgICBjb25zdCBjaGFyICp0cjJfY2F0ZWdvcnksIGNvbnN0IGNoYXIgKnRyMl9sYWJlbCkKK3sKKwlpbnQgcmVzdWx0OworCisJdHJhY2UyX3JlZ2lvbl9lbnRlcl9wcmludGYodHIyX2NhdGVnb3J5LCB0cjJfbGFiZWwsIE5VTEwsICJtYXg6JWQiLAorCQkJCSAgICgobiA8IDEpID8gb25saW5lX2NwdXMoKSA6IG4pKTsKKworCXJlc3VsdCA9IHJ1bl9wcm9jZXNzZXNfcGFyYWxsZWwobiwgZ2V0X25leHRfdGFzaywgc3RhcnRfZmFpbHVyZSwKKwkJCQkJdGFza19maW5pc2hlZCwgcHBfY2IpOworCisJdHJhY2UyX3JlZ2lvbl9sZWF2ZSh0cjJfY2F0ZWdvcnksIHRyMl9sYWJlbCwgTlVMTCk7CisKKwlyZXR1cm4gcmVzdWx0OworfQpkaWZmIC0tZ2l0IGEvcnVuLWNvbW1hbmQuaCBiL3J1bi1jb21tYW5kLmgKaW5kZXggNjhmNTM2OS4uMGYzY2M3MyAxMDA2NDQKLS0tIGEvcnVuLWNvbW1hbmQuaAorKysgYi9ydW4tY29tbWFuZC5oCkBAIC01LDE1ICs1LDczIEBACiAKICNpbmNsdWRlICJhcmd2LWFycmF5LmgiCiAKKy8qKgorICogVGhlIHJ1bi1jb21tYW5kIEFQSSBvZmZlcnMgYSB2ZXJzYXRpbGUgdG9vbCB0byBydW4gc3ViLXByb2Nlc3NlcyB3aXRoCisgKiByZWRpcmVjdGVkIGlucHV0IGFuZCBvdXRwdXQgYXMgd2VsbCBhcyB3aXRoIGEgbW9kaWZpZWQgZW52aXJvbm1lbnQKKyAqIGFuZCBhbiBhbHRlcm5hdGUgY3VycmVudCBkaXJlY3RvcnkuCisgKgorICogQSBzaW1pbGFyIEFQSSBvZmZlcnMgdGhlIGNhcGFiaWxpdHkgdG8gcnVuIGEgZnVuY3Rpb24gYXN5bmNocm9ub3VzbHksCisgKiB3aGljaCBpcyBwcmltYXJpbHkgdXNlZCB0byBjYXB0dXJlIHRoZSBvdXRwdXQgdGhhdCB0aGUgZnVuY3Rpb24KKyAqIHByb2R1Y2VzIGluIHRoZSBjYWxsZXIgaW4gb3JkZXIgdG8gcHJvY2VzcyBpdC4KKyAqLworCisKKy8qKgorICogVGhpcyBkZXNjcmliZXMgdGhlIGFyZ3VtZW50cywgcmVkaXJlY3Rpb25zLCBhbmQgZW52aXJvbm1lbnQgb2YgYQorICogY29tbWFuZCB0byBydW4gaW4gYSBzdWItcHJvY2Vzcy4KKyAqCisgKiBUaGUgY2FsbGVyOgorICoKKyAqIDEuIGFsbG9jYXRlcyBhbmQgY2xlYXJzICh1c2luZyBjaGlsZF9wcm9jZXNzX2luaXQoKSBvcgorICogICAgQ0hJTERfUFJPQ0VTU19JTklUKSBhIHN0cnVjdCBjaGlsZF9wcm9jZXNzIHZhcmlhYmxlOworICogMi4gaW5pdGlhbGl6ZXMgdGhlIG1lbWJlcnM7CisgKiAzLiBjYWxscyBzdGFydF9jb21tYW5kKCk7CisgKiA0LiBwcm9jZXNzZXMgdGhlIGRhdGE7CisgKiA1LiBjbG9zZXMgZmlsZSBkZXNjcmlwdG9ycyAoaWYgbmVjZXNzYXJ5OyBzZWUgYmVsb3cpOworICogNi4gY2FsbHMgZmluaXNoX2NvbW1hbmQoKS4KKyAqCisgKiBTcGVjaWFsIGZvcm1zIG9mIHJlZGlyZWN0aW9uIGFyZSBhdmFpbGFibGUgYnkgc2V0dGluZyB0aGVzZSBtZW1iZXJzCisgKiB0byAxOgorICoKKyAqICAubm9fc3RkaW4sIC5ub19zdGRvdXQsIC5ub19zdGRlcnI6IFRoZSByZXNwZWN0aXZlIGNoYW5uZWwgaXMKKyAqCQlyZWRpcmVjdGVkIHRvIC9kZXYvbnVsbC4KKyAqCisgKgkuc3Rkb3V0X3RvX3N0ZGVycjogc3Rkb3V0IG9mIHRoZSBjaGlsZCBpcyByZWRpcmVjdGVkIHRvIGl0cworICoJCXN0ZGVyci4gVGhpcyBoYXBwZW5zIGFmdGVyIHN0ZGVyciBpcyBpdHNlbGYgcmVkaXJlY3RlZC4KKyAqCQlTbyBzdGRvdXQgd2lsbCBmb2xsb3cgc3RkZXJyIHRvIHdoZXJldmVyIGl0IGlzCisgKgkJcmVkaXJlY3RlZC4KKyAqLwogc3RydWN0IGNoaWxkX3Byb2Nlc3MgeworCisJLyoqCisJICogVGhlIC5hcmd2IG1lbWJlciBpcyBzZXQgdXAgYXMgYW4gYXJyYXkgb2Ygc3RyaW5nIHBvaW50ZXJzIChOVUxMCisJICogdGVybWluYXRlZCksIG9mIHdoaWNoIC5hcmd2WzBdIGlzIHRoZSBwcm9ncmFtIG5hbWUgdG8gcnVuICh1c3VhbGx5CisJICogd2l0aG91dCBhIHBhdGgpLiBJZiB0aGUgY29tbWFuZCB0byBydW4gaXMgYSBnaXQgY29tbWFuZCwgc2V0IGFyZ3ZbMF0gdG8KKwkgKiB0aGUgY29tbWFuZCBuYW1lIHdpdGhvdXQgdGhlICdnaXQtJyBwcmVmaXggYW5kIHNldCAuZ2l0X2NtZCA9IDEuCisJICoKKwkgKiBOb3RlIHRoYXQgdGhlIG93bmVyc2hpcCBvZiB0aGUgbWVtb3J5IHBvaW50ZWQgdG8gYnkgLmFyZ3Ygc3RheXMgd2l0aCB0aGUKKwkgKiBjYWxsZXIsIGJ1dCBpdCBzaG91bGQgc3Vydml2ZSB1bnRpbCBgZmluaXNoX2NvbW1hbmRgIGNvbXBsZXRlcy4gSWYgdGhlCisJICogLmFyZ3YgbWVtYmVyIGlzIE5VTEwsIGBzdGFydF9jb21tYW5kYCB3aWxsIHBvaW50IGl0IGF0IHRoZSAuYXJncworCSAqIGBhcmd2X2FycmF5YCAoc28geW91IG1heSB1c2Ugb25lIG9yIHRoZSBvdGhlciwgYnV0IHlvdSBtdXN0IHVzZSBleGFjdGx5CisJICogb25lKS4gVGhlIG1lbW9yeSBpbiAuYXJncyB3aWxsIGJlIGNsZWFuZWQgdXAgYXV0b21hdGljYWxseSBkdXJpbmcKKwkgKiBgZmluaXNoX2NvbW1hbmRgIChvciBkdXJpbmcgYHN0YXJ0X2NvbW1hbmRgIHdoZW4gaXQgaXMgdW5zdWNjZXNzZnVsKS4KKwkgKgorCSAqLwogCWNvbnN0IGNoYXIgKiphcmd2OworCiAJc3RydWN0IGFyZ3ZfYXJyYXkgYXJnczsKIAlzdHJ1Y3QgYXJndl9hcnJheSBlbnZfYXJyYXk7CiAJcGlkX3QgcGlkOworCisJaW50IHRyYWNlMl9jaGlsZF9pZDsKKwl1aW50NjRfdCB0cmFjZTJfY2hpbGRfdXNfc3RhcnQ7CisJY29uc3QgY2hhciAqdHJhY2UyX2NoaWxkX2NsYXNzOworCWNvbnN0IGNoYXIgKnRyYWNlMl9ob29rX25hbWU7CisKIAkvKgogCSAqIFVzaW5nIC5pbiwgLm91dCwgLmVycjoKLQkgKiAtIFNwZWNpZnkgMCBmb3Igbm8gcmVkaXJlY3Rpb25zIChjaGlsZCBpbmhlcml0cyBzdGRpbiwgc3Rkb3V0LAotCSAqICAgc3RkZXJyIGZyb20gcGFyZW50KS4KKwkgKiAtIFNwZWNpZnkgMCBmb3Igbm8gcmVkaXJlY3Rpb25zLiBObyBuZXcgZmlsZSBkZXNjcmlwdG9yIGlzIGFsbG9jYXRlZC4KKwkgKiAoY2hpbGQgaW5oZXJpdHMgc3RkaW4sIHN0ZG91dCwgc3RkZXJyIGZyb20gcGFyZW50KS4KIAkgKiAtIFNwZWNpZnkgLTEgdG8gaGF2ZSBhIHBpcGUgYWxsb2NhdGVkIGFzIGZvbGxvd3M6CiAJICogICAgIC5pbjogcmV0dXJucyB0aGUgd3JpdGFibGUgcGlwZSBlbmQ7IHBhcmVudCB3cml0ZXMgdG8gaXQsCiAJICogICAgICAgICAgdGhlIHJlYWRhYmxlIHBpcGUgZW5kIGJlY29tZXMgY2hpbGQncyBzdGRpbgpAQCAtMzEsMTMgKzg5LDQzIEBACiAJaW50IGluOwogCWludCBvdXQ7CiAJaW50IGVycjsKKworCS8qKgorCSAqIFRvIHNwZWNpZnkgYSBuZXcgaW5pdGlhbCB3b3JraW5nIGRpcmVjdG9yeSBmb3IgdGhlIHN1Yi1wcm9jZXNzLAorCSAqIHNwZWNpZnkgaXQgaW4gdGhlIC5kaXIgbWVtYmVyLgorCSAqLwogCWNvbnN0IGNoYXIgKmRpcjsKKworCS8qKgorCSAqIFRvIG1vZGlmeSB0aGUgZW52aXJvbm1lbnQgb2YgdGhlIHN1Yi1wcm9jZXNzLCBzcGVjaWZ5IGFuIGFycmF5IG9mCisJICogc3RyaW5nIHBvaW50ZXJzIChOVUxMIHRlcm1pbmF0ZWQpIGluIC5lbnY6CisJICoKKwkgKiAtIElmIHRoZSBzdHJpbmcgaXMgb2YgdGhlIGZvcm0gIlZBUj12YWx1ZSIsIGkuZS4gaXQgY29udGFpbnMgJz0nCisJICogICB0aGUgdmFyaWFibGUgaXMgYWRkZWQgdG8gdGhlIGNoaWxkIHByb2Nlc3MncyBlbnZpcm9ubWVudC4KKwkgKgorCSAqIC0gSWYgdGhlIHN0cmluZyBkb2VzIG5vdCBjb250YWluICc9JywgaXQgbmFtZXMgYW4gZW52aXJvbm1lbnQKKwkgKiAgIHZhcmlhYmxlIHRoYXQgd2lsbCBiZSByZW1vdmVkIGZyb20gdGhlIGNoaWxkIHByb2Nlc3MncyBlbnZpcm9ubWVudC4KKwkgKgorCSAqIElmIHRoZSAuZW52IG1lbWJlciBpcyBOVUxMLCBgc3RhcnRfY29tbWFuZGAgd2lsbCBwb2ludCBpdCBhdCB0aGUKKwkgKiAuZW52X2FycmF5IGBhcmd2X2FycmF5YCAoc28geW91IG1heSB1c2Ugb25lIG9yIHRoZSBvdGhlciwgYnV0IG5vdCBib3RoKS4KKwkgKiBUaGUgbWVtb3J5IGluIC5lbnZfYXJyYXkgd2lsbCBiZSBjbGVhbmVkIHVwIGF1dG9tYXRpY2FsbHkgZHVyaW5nCisJICogYGZpbmlzaF9jb21tYW5kYCAob3IgZHVyaW5nIGBzdGFydF9jb21tYW5kYCB3aGVuIGl0IGlzIHVuc3VjY2Vzc2Z1bCkuCisJICovCiAJY29uc3QgY2hhciAqY29uc3QgKmVudjsKKwogCXVuc2lnbmVkIG5vX3N0ZGluOjE7CiAJdW5zaWduZWQgbm9fc3Rkb3V0OjE7CiAJdW5zaWduZWQgbm9fc3RkZXJyOjE7CiAJdW5zaWduZWQgZ2l0X2NtZDoxOyAvKiBpZiB0aGlzIGlzIHRvIGJlIGdpdCBzdWItY29tbWFuZCAqLworCisJLyoqCisJICogSWYgdGhlIHByb2dyYW0gY2Fubm90IGJlIGZvdW5kLCB0aGUgZnVuY3Rpb25zIHJldHVybiAtMSBhbmQgc2V0CisJICogZXJybm8gdG8gRU5PRU5ULiBOb3JtYWxseSwgYW4gZXJyb3IgbWVzc2FnZSBpcyBwcmludGVkLCBidXQgaWYKKwkgKiAuc2lsZW50X2V4ZWNfZmFpbHVyZSBpcyBzZXQgdG8gMSwgbm8gbWVzc2FnZSBpcyBwcmludGVkIGZvciB0aGlzCisJICogc3BlY2lhbCBlcnJvciBjb25kaXRpb24uCisJICovCiAJdW5zaWduZWQgc2lsZW50X2V4ZWNfZmFpbHVyZToxOworCiAJdW5zaWduZWQgc3Rkb3V0X3RvX3N0ZGVycjoxOwogCXVuc2lnbmVkIHVzZV9zaGVsbDoxOwogCXVuc2lnbmVkIGNsZWFuX29uX2V4aXQ6MTsKQEAgLTQ3LDEzICsxMzUsNjMgQEAKIH07CiAKICNkZWZpbmUgQ0hJTERfUFJPQ0VTU19JTklUIHsgTlVMTCwgQVJHVl9BUlJBWV9JTklULCBBUkdWX0FSUkFZX0lOSVQgfQotdm9pZCBjaGlsZF9wcm9jZXNzX2luaXQoc3RydWN0IGNoaWxkX3Byb2Nlc3MgKik7Ci12b2lkIGNoaWxkX3Byb2Nlc3NfY2xlYXIoc3RydWN0IGNoaWxkX3Byb2Nlc3MgKik7Ci1leHRlcm4gaW50IGlzX2V4ZWN1dGFibGUoY29uc3QgY2hhciAqbmFtZSk7CiAKKy8qKgorICogVGhlIGZ1bmN0aW9uczogY2hpbGRfcHJvY2Vzc19pbml0LCBzdGFydF9jb21tYW5kLCBmaW5pc2hfY29tbWFuZCwKKyAqIHJ1bl9jb21tYW5kLCBydW5fY29tbWFuZF92X29wdCwgcnVuX2NvbW1hbmRfdl9vcHRfY2RfZW52LCBjaGlsZF9wcm9jZXNzX2NsZWFyCisgKiBkbyB0aGUgZm9sbG93aW5nOgorICoKKyAqIC0gSWYgYSBzeXN0ZW0gY2FsbCBmYWlsZWQsIGVycm5vIGlzIHNldCBhbmQgLTEgaXMgcmV0dXJuZWQuIEEgZGlhZ25vc3RpYworICogICBpcyBwcmludGVkLgorICoKKyAqIC0gSWYgdGhlIHByb2dyYW0gd2FzIG5vdCBmb3VuZCwgdGhlbiAtMSBpcyByZXR1cm5lZCBhbmQgZXJybm8gaXMgc2V0IHRvCisgKiAgIEVOT0VOVDsgYSBkaWFnbm9zdGljIGlzIHByaW50ZWQgb25seSBpZiAuc2lsZW50X2V4ZWNfZmFpbHVyZSBpcyAwLgorICoKKyAqIC0gT3RoZXJ3aXNlLCB0aGUgcHJvZ3JhbSBpcyBydW4uIElmIGl0IHRlcm1pbmF0ZXMgcmVndWxhcmx5LCBpdHMgZXhpdAorICogICBjb2RlIGlzIHJldHVybmVkLiBObyBkaWFnbm9zdGljIGlzIHByaW50ZWQsIGV2ZW4gaWYgdGhlIGV4aXQgY29kZSBpcworICogICBub24temVyby4KKyAqCisgKiAtIElmIHRoZSBwcm9ncmFtIHRlcm1pbmF0ZWQgZHVlIHRvIGEgc2lnbmFsLCB0aGVuIHRoZSByZXR1cm4gdmFsdWUgaXMgdGhlCisgKiAgIHNpZ25hbCBudW1iZXIgKyAxMjgsIGllLiB0aGUgc2FtZSB2YWx1ZSB0aGF0IGEgUE9TSVggc2hlbGwncyAkPyB3b3VsZAorICogICByZXBvcnQuICBBIGRpYWdub3N0aWMgaXMgcHJpbnRlZC4KKyAqCisgKi8KKworLyoqCisgKiBJbml0aWFsaXplIGEgc3RydWN0IGNoaWxkX3Byb2Nlc3MgdmFyaWFibGUuCisgKi8KK3ZvaWQgY2hpbGRfcHJvY2Vzc19pbml0KHN0cnVjdCBjaGlsZF9wcm9jZXNzICopOworCisvKioKKyAqIFJlbGVhc2UgdGhlIG1lbW9yeSBhc3NvY2lhdGVkIHdpdGggdGhlIHN0cnVjdCBjaGlsZF9wcm9jZXNzLgorICogTW9zdCB1c2VycyBvZiB0aGUgcnVuLWNvbW1hbmQgQVBJIGRvbid0IG5lZWQgdG8gY2FsbCB0aGlzCisgKiBmdW5jdGlvbiBleHBsaWNpdGx5IGJlY2F1c2UgYHN0YXJ0X2NvbW1hbmRgIGludm9rZXMgaXQgb24KKyAqIGZhaWx1cmUgYW5kIGBmaW5pc2hfY29tbWFuZGAgY2FsbHMgaXQgYXV0b21hdGljYWxseSBhbHJlYWR5LgorICovCit2b2lkIGNoaWxkX3Byb2Nlc3NfY2xlYXIoc3RydWN0IGNoaWxkX3Byb2Nlc3MgKik7CisKK2ludCBpc19leGVjdXRhYmxlKGNvbnN0IGNoYXIgKm5hbWUpOworCisvKioKKyAqIFN0YXJ0IGEgc3ViLXByb2Nlc3MuIFRha2VzIGEgcG9pbnRlciB0byBhIGBzdHJ1Y3QgY2hpbGRfcHJvY2Vzc2AKKyAqIHRoYXQgc3BlY2lmaWVzIHRoZSBkZXRhaWxzIGFuZCByZXR1cm5zIHBpcGUgRkRzIChpZiByZXF1ZXN0ZWQpLgorICogU2VlIGJlbG93IGZvciBkZXRhaWxzLgorICovCiBpbnQgc3RhcnRfY29tbWFuZChzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqKTsKKworLyoqCisgKiBXYWl0IGZvciB0aGUgY29tcGxldGlvbiBvZiBhIHN1Yi1wcm9jZXNzIHRoYXQgd2FzIHN0YXJ0ZWQgd2l0aAorICogc3RhcnRfY29tbWFuZCgpLgorICovCiBpbnQgZmluaXNoX2NvbW1hbmQoc3RydWN0IGNoaWxkX3Byb2Nlc3MgKik7CisKIGludCBmaW5pc2hfY29tbWFuZF9pbl9zaWduYWwoc3RydWN0IGNoaWxkX3Byb2Nlc3MgKik7CisKKy8qKgorICogQSBjb252ZW5pZW5jZSBmdW5jdGlvbiB0aGF0IGVuY2Fwc3VsYXRlcyBhIHNlcXVlbmNlIG9mCisgKiBzdGFydF9jb21tYW5kKCkgZm9sbG93ZWQgYnkgZmluaXNoX2NvbW1hbmQoKS4gVGFrZXMgYSBwb2ludGVyCisgKiB0byBhIGBzdHJ1Y3QgY2hpbGRfcHJvY2Vzc2AgdGhhdCBzcGVjaWZpZXMgdGhlIGRldGFpbHMuCisgKi8KIGludCBydW5fY29tbWFuZChzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqKTsKIAogLyoKQEAgLTYxLDEwICsxOTksMjQgQEAKICAqIG9yIGRpc2FibGVkLiBOb3RlIHRoYXQgdGhpcyBwb2ludHMgdG8gc3RhdGljIHN0b3JhZ2UgdGhhdCB3aWxsIGJlCiAgKiBvdmVyd3JpdHRlbiBieSBmdXJ0aGVyIGNhbGxzIHRvIGZpbmRfaG9vayBhbmQgcnVuX2hvb2tfKi4KICAqLwotZXh0ZXJuIGNvbnN0IGNoYXIgKmZpbmRfaG9vayhjb25zdCBjaGFyICpuYW1lKTsKK2NvbnN0IGNoYXIgKmZpbmRfaG9vayhjb25zdCBjaGFyICpuYW1lKTsKKworLyoqCisgKiBSdW4gYSBob29rLgorICogVGhlIGZpcnN0IGFyZ3VtZW50IGlzIGEgcGF0aG5hbWUgdG8gYW4gaW5kZXggZmlsZSwgb3IgTlVMTAorICogaWYgdGhlIGhvb2sgdXNlcyB0aGUgZGVmYXVsdCBpbmRleCBmaWxlIG9yIG5vIGluZGV4IGlzIG5lZWRlZC4KKyAqIFRoZSBzZWNvbmQgYXJndW1lbnQgaXMgdGhlIG5hbWUgb2YgdGhlIGhvb2suCisgKiBUaGUgZnVydGhlciBhcmd1bWVudHMgY29ycmVzcG9uZCB0byB0aGUgaG9vayBhcmd1bWVudHMuCisgKiBUaGUgbGFzdCBhcmd1bWVudCBoYXMgdG8gYmUgTlVMTCB0byB0ZXJtaW5hdGUgdGhlIGFyZ3VtZW50cyBsaXN0LgorICogSWYgdGhlIGhvb2sgZG9lcyBub3QgZXhpc3Qgb3IgaXMgbm90IGV4ZWN1dGFibGUsIHRoZSByZXR1cm4KKyAqIHZhbHVlIHdpbGwgYmUgemVyby4KKyAqIElmIGl0IGlzIGV4ZWN1dGFibGUsIHRoZSBob29rIHdpbGwgYmUgZXhlY3V0ZWQgYW5kIHRoZSBleGl0CisgKiBzdGF0dXMgb2YgdGhlIGhvb2sgaXMgcmV0dXJuZWQuCisgKiBPbiBleGVjdXRpb24sIC5zdGRvdXRfdG9fc3RkZXJyIGFuZCAubm9fc3RkaW4gd2lsbCBiZSBzZXQuCisgKi8KIExBU1RfQVJHX01VU1RfQkVfTlVMTAotZXh0ZXJuIGludCBydW5faG9va19sZShjb25zdCBjaGFyICpjb25zdCAqZW52LCBjb25zdCBjaGFyICpuYW1lLCAuLi4pOwotZXh0ZXJuIGludCBydW5faG9va192ZShjb25zdCBjaGFyICpjb25zdCAqZW52LCBjb25zdCBjaGFyICpuYW1lLCB2YV9saXN0IGFyZ3MpOworaW50IHJ1bl9ob29rX2xlKGNvbnN0IGNoYXIgKmNvbnN0ICplbnYsIGNvbnN0IGNoYXIgKm5hbWUsIC4uLik7CitpbnQgcnVuX2hvb2tfdmUoY29uc3QgY2hhciAqY29uc3QgKmVudiwgY29uc3QgY2hhciAqbmFtZSwgdmFfbGlzdCBhcmdzKTsKIAogI2RlZmluZSBSVU5fQ09NTUFORF9OT19TVERJTiAxCiAjZGVmaW5lIFJVTl9HSVRfQ01ECSAgICAgMgkvKklmIHRoaXMgaXMgdG8gYmUgZ2l0IHN1Yi1jb21tYW5kICovCkBAIC03MiwxMyArMjI0LDI3IEBACiAjZGVmaW5lIFJVTl9TSUxFTlRfRVhFQ19GQUlMVVJFIDgKICNkZWZpbmUgUlVOX1VTSU5HX1NIRUxMIDE2CiAjZGVmaW5lIFJVTl9DTEVBTl9PTl9FWElUIDMyCi1pbnQgcnVuX2NvbW1hbmRfdl9vcHQoY29uc3QgY2hhciAqKmFyZ3YsIGludCBvcHQpOwogCisvKioKKyAqIENvbnZlbmllbmNlIGZ1bmN0aW9ucyB0aGF0IGVuY2Fwc3VsYXRlIGEgc2VxdWVuY2Ugb2YKKyAqIHN0YXJ0X2NvbW1hbmQoKSBmb2xsb3dlZCBieSBmaW5pc2hfY29tbWFuZCgpLiBUaGUgYXJndW1lbnQgYXJndgorICogc3BlY2lmaWVzIHRoZSBwcm9ncmFtIGFuZCBpdHMgYXJndW1lbnRzLiBUaGUgYXJndW1lbnQgb3B0IGlzIHplcm8KKyAqIG9yIG1vcmUgb2YgdGhlIGZsYWdzIGBSVU5fQ09NTUFORF9OT19TVERJTmAsIGBSVU5fR0lUX0NNRGAsCisgKiBgUlVOX0NPTU1BTkRfU1RET1VUX1RPX1NUREVSUmAsIG9yIGBSVU5fU0lMRU5UX0VYRUNfRkFJTFVSRWAKKyAqIHRoYXQgY29ycmVzcG9uZCB0byB0aGUgbWVtYmVycyAubm9fc3RkaW4sIC5naXRfY21kLAorICogLnN0ZG91dF90b19zdGRlcnIsIC5zaWxlbnRfZXhlY19mYWlsdXJlIG9mIGBzdHJ1Y3QgY2hpbGRfcHJvY2Vzc2AuCisgKiBUaGUgYXJndW1lbnQgZGlyIGNvcnJlc3BvbmRzIHRoZSBtZW1iZXIgLmRpci4gVGhlIGFyZ3VtZW50IGVudgorICogY29ycmVzcG9uZHMgdG8gdGhlIG1lbWJlciAuZW52LgorICovCitpbnQgcnVuX2NvbW1hbmRfdl9vcHQoY29uc3QgY2hhciAqKmFyZ3YsIGludCBvcHQpOworaW50IHJ1bl9jb21tYW5kX3Zfb3B0X3RyMihjb25zdCBjaGFyICoqYXJndiwgaW50IG9wdCwgY29uc3QgY2hhciAqdHIyX2NsYXNzKTsKIC8qCiAgKiBlbnYgKHRoZSBlbnZpcm9ubWVudCkgaXMgdG8gYmUgZm9ybWF0dGVkIGxpa2UgZW52aXJvbjogIlZBUj1WQUxVRSIuCiAgKiBUbyB1bnNldCBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSB1c2UganVzdCAiVkFSIi4KICAqLwogaW50IHJ1bl9jb21tYW5kX3Zfb3B0X2NkX2Vudihjb25zdCBjaGFyICoqYXJndiwgaW50IG9wdCwgY29uc3QgY2hhciAqZGlyLCBjb25zdCBjaGFyICpjb25zdCAqZW52KTsKK2ludCBydW5fY29tbWFuZF92X29wdF9jZF9lbnZfdHIyKGNvbnN0IGNoYXIgKiphcmd2LCBpbnQgb3B0LCBjb25zdCBjaGFyICpkaXIsCisJCQkJIGNvbnN0IGNoYXIgKmNvbnN0ICplbnYsIGNvbnN0IGNoYXIgKnRyMl9jbGFzcyk7CiAKIC8qKgogICogRXhlY3V0ZSB0aGUgZ2l2ZW4gY29tbWFuZCwgc2VuZGluZyAiaW4iIHRvIGl0cyBzdGRpbiwgYW5kIGNhcHR1cmluZyBpdHMKQEAgLTExNywxNSArMjgzLDg0IEBACiAgKiBJdCBpcyBleHBlY3RlZCB0aGF0IG5vIHN5bmNocm9uaXphdGlvbiBhbmQgbXV0dWFsIGV4Y2x1c2lvbiBiZXR3ZWVuCiAgKiB0aGUgY2FsbGVyIGFuZCB0aGUgZmVlZCBmdW5jdGlvbiBpcyBuZWNlc3Nhcnkgc28gdGhhdCB0aGUgZnVuY3Rpb24KICAqIGNhbiBydW4gaW4gYSB0aHJlYWQgd2l0aG91dCBpbnRlcmZlcmluZyB3aXRoIHRoZSBjYWxsZXIuCisgKgorICogVGhlIGNhbGxlcjoKKyAqCisgKiAxLiBhbGxvY2F0ZXMgYW5kIGNsZWFycyAobWVtc2V0KCZhc3ksIDAsIHNpemVvZihhc3kpKTspIGEKKyAqICAgIHN0cnVjdCBhc3luYyB2YXJpYWJsZTsKKyAqIDIuIGluaXRpYWxpemVzIC5wcm9jIGFuZCAuZGF0YTsKKyAqIDMuIGNhbGxzIHN0YXJ0X2FzeW5jKCk7CisgKiA0LiBwcm9jZXNzZXMgY29tbXVuaWNhdGVzIHdpdGggcHJvYyB0aHJvdWdoIC5pbiBhbmQgLm91dDsKKyAqIDUuIGNsb3NlcyAuaW4gYW5kIC5vdXQ7CisgKiA2LiBjYWxscyBmaW5pc2hfYXN5bmMoKS4KKyAqCisgKiBUaGVyZSBhcmUgc2VyaW91cyByZXN0cmljdGlvbnMgb24gd2hhdCB0aGUgYXN5bmNocm9ub3VzIGZ1bmN0aW9uIGNhbiBkbworICogYmVjYXVzZSB0aGlzIGZhY2lsaXR5IGlzIGltcGxlbWVudGVkIGJ5IGEgdGhyZWFkIGluIHRoZSBzYW1lIGFkZHJlc3MKKyAqIHNwYWNlIG9uIG1vc3QgcGxhdGZvcm1zICh3aGVuIHB0aHJlYWRzIGlzIGF2YWlsYWJsZSksIGJ1dCBieSBhIHBpcGUgdG8KKyAqIGEgZm9ya2VkIHByb2Nlc3Mgb3RoZXJ3aXNlOgorICoKKyAqIC0gSXQgY2Fubm90IGNoYW5nZSB0aGUgcHJvZ3JhbSdzIHN0YXRlIChnbG9iYWwgdmFyaWFibGVzLCBlbnZpcm9ubWVudCwKKyAqICAgZXRjLikgaW4gYSB3YXkgdGhhdCB0aGUgY2FsbGVyIG5vdGljZXM7IGluIG90aGVyIHdvcmRzLCAuaW4gYW5kIC5vdXQKKyAqICAgYXJlIHRoZSBvbmx5IGNvbW11bmljYXRpb24gY2hhbm5lbHMgdG8gdGhlIGNhbGxlci4KKyAqCisgKiAtIEl0IG11c3Qgbm90IGNoYW5nZSB0aGUgcHJvZ3JhbSdzIHN0YXRlIHRoYXQgdGhlIGNhbGxlciBvZiB0aGUKKyAqICAgZmFjaWxpdHkgYWxzbyB1c2VzLgorICoKICAqLwogc3RydWN0IGFzeW5jIHsKLQkvKgotCSAqIHByb2MgcmVhZHMgZnJvbSBpbjsgY2xvc2VzIGl0IGJlZm9yZSByZXR1cm4KLQkgKiBwcm9jIHdyaXRlcyB0byBvdXQ7IGNsb3NlcyBpdCBiZWZvcmUgcmV0dXJuCi0JICogcmV0dXJucyAwIG9uIHN1Y2Nlc3MsIG5vbi16ZXJvIG9uIGZhaWx1cmUKKworCS8qKgorCSAqIFRoZSBmdW5jdGlvbiBwb2ludGVyIGluIC5wcm9jIGhhcyB0aGUgZm9sbG93aW5nIHNpZ25hdHVyZToKKwkgKgorCSAqCWludCBwcm9jKGludCBpbiwgaW50IG91dCwgdm9pZCAqZGF0YSk7CisJICoKKwkgKiAtIGluLCBvdXQgc3BlY2lmaWVzIGEgc2V0IG9mIGZpbGUgZGVzY3JpcHRvcnMgdG8gd2hpY2ggdGhlIGZ1bmN0aW9uCisJICogIG11c3QgcmVhZC93cml0ZSB0aGUgZGF0YSB0aGF0IGl0IG5lZWRzL3Byb2R1Y2VzLiAgVGhlIGZ1bmN0aW9uCisJICogICptdXN0KiBjbG9zZSB0aGVzZSBkZXNjcmlwdG9ycyBiZWZvcmUgaXQgcmV0dXJucy4gIEEgZGVzY3JpcHRvcgorCSAqICBtYXkgYmUgLTEgaWYgdGhlIGNhbGxlciBkaWQgbm90IGNvbmZpZ3VyZSBhIGRlc2NyaXB0b3IgZm9yIHRoYXQKKwkgKiAgZGlyZWN0aW9uLgorCSAqCisJICogLSBkYXRhIGlzIHRoZSB2YWx1ZSB0aGF0IHRoZSBjYWxsZXIgaGFzIHNwZWNpZmllZCBpbiB0aGUgLmRhdGEgbWVtYmVyCisJICogIG9mIHN0cnVjdCBhc3luYy4KKwkgKgorCSAqIC0gVGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgZnVuY3Rpb24gaXMgMCBvbiBzdWNjZXNzIGFuZCBub24temVybworCSAqICBvbiBmYWlsdXJlLiBJZiB0aGUgZnVuY3Rpb24gaW5kaWNhdGVzIGZhaWx1cmUsIGZpbmlzaF9hc3luYygpIHdpbGwKKwkgKiAgcmVwb3J0IGZhaWx1cmUgYXMgd2VsbC4KKwkgKgogCSAqLwogCWludCAoKnByb2MpKGludCBpbiwgaW50IG91dCwgdm9pZCAqZGF0YSk7CisKIAl2b2lkICpkYXRhOworCisJLyoqCisJICogVGhlIG1lbWJlcnMgLmluLCAub3V0IGFyZSB1c2VkIHRvIHByb3ZpZGUgYSBzZXQgb2YgZmQncyBmb3IKKwkgKiBjb21tdW5pY2F0aW9uIGJldHdlZW4gdGhlIGNhbGxlciBhbmQgdGhlIGNhbGxlZSBhcyBmb2xsb3dzOgorCSAqCisJICogLSBTcGVjaWZ5IDAgdG8gaGF2ZSBubyBmaWxlIGRlc2NyaXB0b3IgcGFzc2VkLiAgVGhlIGNhbGxlZSB3aWxsCisJICogICByZWNlaXZlIC0xIGluIHRoZSBjb3JyZXNwb25kaW5nIGFyZ3VtZW50LgorCSAqCisJICogLSBTcGVjaWZ5IDwgMCB0byBoYXZlIGEgcGlwZSBhbGxvY2F0ZWQ7IHN0YXJ0X2FzeW5jKCkgcmVwbGFjZXMKKwkgKiAgIHdpdGggdGhlIHBpcGUgRkQgaW4gdGhlIGZvbGxvd2luZyB3YXk6CisJICoKKwkgKiAJLmluOiBSZXR1cm5zIHRoZSB3cml0YWJsZSBwaXBlIGVuZCBpbnRvIHdoaWNoIHRoZSBjYWxsZXIKKwkgKiAJd3JpdGVzOyB0aGUgcmVhZGFibGUgZW5kIG9mIHRoZSBwaXBlIGJlY29tZXMgdGhlIGZ1bmN0aW9uJ3MKKwkgKiAJaW4gYXJndW1lbnQuCisJICoKKwkgKiAJLm91dDogUmV0dXJucyB0aGUgcmVhZGFibGUgcGlwZSBlbmQgZnJvbSB3aGljaCB0aGUgY2FsbGVyCisJICogCXJlYWRzOyB0aGUgd3JpdGFibGUgZW5kIG9mIHRoZSBwaXBlIGJlY29tZXMgdGhlIGZ1bmN0aW9uJ3MKKwkgKiAJb3V0IGFyZ3VtZW50LgorCSAqCisJICogICBUaGUgY2FsbGVyIG9mIHN0YXJ0X2FzeW5jKCkgbXVzdCBjbG9zZSB0aGUgcmV0dXJuZWQgRkRzIGFmdGVyIGl0CisJICogICBoYXMgY29tcGxldGVkIHJlYWRpbmcgZnJvbS93cml0aW5nIGZyb20gdGhlbS4KKwkgKgorCSAqIC0gU3BlY2lmeSBhIGZpbGUgZGVzY3JpcHRvciA+IDAgdG8gYmUgdXNlZCBieSB0aGUgZnVuY3Rpb246CisJICoKKwkgKiAJLmluOiBUaGUgRkQgbXVzdCBiZSByZWFkYWJsZTsgaXQgYmVjb21lcyB0aGUgZnVuY3Rpb24ncyBpbi4KKwkgKiAJLm91dDogVGhlIEZEIG11c3QgYmUgd3JpdGFibGU7IGl0IGJlY29tZXMgdGhlIGZ1bmN0aW9uJ3Mgb3V0LgorCSAqCisJICogICBUaGUgc3BlY2lmaWVkIEZEIGlzIGNsb3NlZCBieSBzdGFydF9hc3luYygpLCBldmVuIGlmIGl0IGZhaWxzIHRvCisJICogICBydW4gdGhlIGZ1bmN0aW9uLgorCSAqLwogCWludCBpbjsJCS8qIGNhbGxlciB3cml0ZXMgaGVyZSBhbmQgY2xvc2VzIGl0ICovCiAJaW50IG91dDsJLyogY2FsbGVyIHJlYWRzIGZyb20gaGVyZSBhbmQgY2xvc2VzIGl0ICovCiAjaWZkZWYgTk9fUFRIUkVBRFMKQEAgLTEzOCw4ICszNzMsMTkgQEAKIAlpbnQgaXNvbGF0ZV9zaWdwaXBlOwogfTsKIAorLyoqCisgKiBSdW4gYSBmdW5jdGlvbiBhc3luY2hyb25vdXNseS4gVGFrZXMgYSBwb2ludGVyIHRvIGEgYHN0cnVjdAorICogYXN5bmNgIHRoYXQgc3BlY2lmaWVzIHRoZSBkZXRhaWxzIGFuZCByZXR1cm5zIGEgc2V0IG9mIHBpcGUgRkRzCisgKiBmb3IgY29tbXVuaWNhdGlvbiB3aXRoIHRoZSBmdW5jdGlvbi4gU2VlIGJlbG93IGZvciBkZXRhaWxzLgorICovCiBpbnQgc3RhcnRfYXN5bmMoc3RydWN0IGFzeW5jICphc3luYyk7CisKKy8qKgorICogV2FpdCBmb3IgdGhlIGNvbXBsZXRpb24gb2YgYW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgd2FzCisgKiBzdGFydGVkIHdpdGggc3RhcnRfYXN5bmMoKS4KKyAqLwogaW50IGZpbmlzaF9hc3luYyhzdHJ1Y3QgYXN5bmMgKmFzeW5jKTsKKwogaW50IGluX2FzeW5jKHZvaWQpOwogaW50IGFzeW5jX3dpdGhfZm9yayh2b2lkKTsKIHZvaWQgY2hlY2tfcGlwZShpbnQgZXJyKTsKQEAgLTIyMCw1ICs0NjYsOCBAQAogCQkJICAgc3RhcnRfZmFpbHVyZV9mbiwKIAkJCSAgIHRhc2tfZmluaXNoZWRfZm4sCiAJCQkgICB2b2lkICpwcF9jYik7CitpbnQgcnVuX3Byb2Nlc3Nlc19wYXJhbGxlbF90cjIoaW50IG4sIGdldF9uZXh0X3Rhc2tfZm4sIHN0YXJ0X2ZhaWx1cmVfZm4sCisJCQkgICAgICAgdGFza19maW5pc2hlZF9mbiwgdm9pZCAqcHBfY2IsCisJCQkgICAgICAgY29uc3QgY2hhciAqdHIyX2NhdGVnb3J5LCBjb25zdCBjaGFyICp0cjJfbGFiZWwpOwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL3NlbmQtcGFjay5jIGIvc2VuZC1wYWNrLmMKaW5kZXggZjY5MjY4Ni4uMDQwNzg0MSAxMDA2NDQKLS0tIGEvc2VuZC1wYWNrLmMKKysrIGIvc2VuZC1wYWNrLmMKQEAgLTQwLDcgKzQwLDEwIEBACiAKIHN0YXRpYyB2b2lkIGZlZWRfb2JqZWN0KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgRklMRSAqZmgsIGludCBuZWdhdGl2ZSkKIHsKLQlpZiAobmVnYXRpdmUgJiYgIWhhc19zaGExX2ZpbGUob2lkLT5oYXNoKSkKKwlpZiAobmVnYXRpdmUgJiYKKwkgICAgIWhhc19vYmplY3RfZmlsZV93aXRoX2ZsYWdzKG9pZCwKKwkJCQkJT0JKRUNUX0lORk9fU0tJUF9GRVRDSF9PQkpFQ1QgfAorCQkJCQlPQkpFQ1RfSU5GT19RVUlDSykpCiAJCXJldHVybjsKIAogCWlmIChuZWdhdGl2ZSkKQEAgLTEzNSwzOCArMTM4LDM2IEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgcmVjZWl2ZV91bnBhY2tfc3RhdHVzKGludCBpbikKK3N0YXRpYyBpbnQgcmVjZWl2ZV91bnBhY2tfc3RhdHVzKHN0cnVjdCBwYWNrZXRfcmVhZGVyICpyZWFkZXIpCiB7Ci0JY29uc3QgY2hhciAqbGluZSA9IHBhY2tldF9yZWFkX2xpbmUoaW4sIE5VTEwpOwotCWlmICghbGluZSkKKwlpZiAocGFja2V0X3JlYWRlcl9yZWFkKHJlYWRlcikgIT0gUEFDS0VUX1JFQURfTk9STUFMKQogCQlyZXR1cm4gZXJyb3IoXygidW5leHBlY3RlZCBmbHVzaCBwYWNrZXQgd2hpbGUgcmVhZGluZyByZW1vdGUgdW5wYWNrIHN0YXR1cyIpKTsKLQlpZiAoIXNraXBfcHJlZml4KGxpbmUsICJ1bnBhY2sgIiwgJmxpbmUpKQotCQlyZXR1cm4gZXJyb3IoXygidW5hYmxlIHRvIHBhcnNlIHJlbW90ZSB1bnBhY2sgc3RhdHVzOiAlcyIpLCBsaW5lKTsKLQlpZiAoc3RyY21wKGxpbmUsICJvayIpKQotCQlyZXR1cm4gZXJyb3IoXygicmVtb3RlIHVucGFjayBmYWlsZWQ6ICVzIiksIGxpbmUpOworCWlmICghc2tpcF9wcmVmaXgocmVhZGVyLT5saW5lLCAidW5wYWNrICIsICZyZWFkZXItPmxpbmUpKQorCQlyZXR1cm4gZXJyb3IoXygidW5hYmxlIHRvIHBhcnNlIHJlbW90ZSB1bnBhY2sgc3RhdHVzOiAlcyIpLCByZWFkZXItPmxpbmUpOworCWlmIChzdHJjbXAocmVhZGVyLT5saW5lLCAib2siKSkKKwkJcmV0dXJuIGVycm9yKF8oInJlbW90ZSB1bnBhY2sgZmFpbGVkOiAlcyIpLCByZWFkZXItPmxpbmUpOwogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IHJlY2VpdmVfc3RhdHVzKGludCBpbiwgc3RydWN0IHJlZiAqcmVmcykKK3N0YXRpYyBpbnQgcmVjZWl2ZV9zdGF0dXMoc3RydWN0IHBhY2tldF9yZWFkZXIgKnJlYWRlciwgc3RydWN0IHJlZiAqcmVmcykKIHsKIAlzdHJ1Y3QgcmVmICpoaW50OwogCWludCByZXQ7CiAKIAloaW50ID0gTlVMTDsKLQlyZXQgPSByZWNlaXZlX3VucGFja19zdGF0dXMoaW4pOworCXJldCA9IHJlY2VpdmVfdW5wYWNrX3N0YXR1cyhyZWFkZXIpOwogCXdoaWxlICgxKSB7Ci0JCWNoYXIgKnJlZm5hbWU7CisJCWNvbnN0IGNoYXIgKnJlZm5hbWU7CiAJCWNoYXIgKm1zZzsKLQkJY2hhciAqbGluZSA9IHBhY2tldF9yZWFkX2xpbmUoaW4sIE5VTEwpOwotCQlpZiAoIWxpbmUpCisJCWlmIChwYWNrZXRfcmVhZGVyX3JlYWQocmVhZGVyKSAhPSBQQUNLRVRfUkVBRF9OT1JNQUwpCiAJCQlicmVhazsKLQkJaWYgKCFzdGFydHNfd2l0aChsaW5lLCAib2sgIikgJiYgIXN0YXJ0c193aXRoKGxpbmUsICJuZyAiKSkgewotCQkJZXJyb3IoImludmFsaWQgcmVmIHN0YXR1cyBmcm9tIHJlbW90ZTogJXMiLCBsaW5lKTsKKwkJaWYgKCFzdGFydHNfd2l0aChyZWFkZXItPmxpbmUsICJvayAiKSAmJiAhc3RhcnRzX3dpdGgocmVhZGVyLT5saW5lLCAibmcgIikpIHsKKwkJCWVycm9yKCJpbnZhbGlkIHJlZiBzdGF0dXMgZnJvbSByZW1vdGU6ICVzIiwgcmVhZGVyLT5saW5lKTsKIAkJCXJldCA9IC0xOwogCQkJYnJlYWs7CiAJCX0KIAotCQlyZWZuYW1lID0gbGluZSArIDM7CisJCXJlZm5hbWUgPSByZWFkZXItPmxpbmUgKyAzOwogCQltc2cgPSBzdHJjaHIocmVmbmFtZSwgJyAnKTsKIAkJaWYgKG1zZykKIAkJCSptc2crKyA9ICdcMCc7CkBAIC0xODcsNyArMTg4LDcgQEAKIAkJCWNvbnRpbnVlOwogCQl9CiAKLQkJaWYgKGxpbmVbMF0gPT0gJ28nICYmIGxpbmVbMV0gPT0gJ2snKQorCQlpZiAocmVhZGVyLT5saW5lWzBdID09ICdvJyAmJiByZWFkZXItPmxpbmVbMV0gPT0gJ2snKQogCQkJaGludC0+c3RhdHVzID0gUkVGX1NUQVRVU19PSzsKIAkJZWxzZSB7CiAJCQloaW50LT5zdGF0dXMgPSBSRUZfU1RBVFVTX1JFTU9URV9SRUpFQ1Q7CkBAIC0zOTAsNiArMzkxLDcgQEAKIAlpbnQgcmV0OwogCXN0cnVjdCBhc3luYyBkZW11eDsKIAljb25zdCBjaGFyICpwdXNoX2NlcnRfbm9uY2UgPSBOVUxMOworCXN0cnVjdCBwYWNrZXRfcmVhZGVyIHJlYWRlcjsKIAogCS8qIERvZXMgdGhlIG90aGVyIGVuZCBzdXBwb3J0IHRoZSByZXBvcnRpbmc/ICovCiAJaWYgKHNlcnZlcl9zdXBwb3J0cygicmVwb3J0LXN0YXR1cyIpKQpAQCAtNTU5LDEwICs1NjEsMTIgQEAKIAkJaW4gPSBkZW11eC5vdXQ7CiAJfQogCisJcGFja2V0X3JlYWRlcl9pbml0KCZyZWFkZXIsIGluLCBOVUxMLCAwLAorCQkJICAgUEFDS0VUX1JFQURfQ0hPTVBfTkVXTElORSB8CisJCQkgICBQQUNLRVRfUkVBRF9ESUVfT05fRVJSX1BBQ0tFVCk7CisKIAlpZiAobmVlZF9wYWNrX2RhdGEgJiYgY21kc19zZW50KSB7CiAJCWlmIChwYWNrX29iamVjdHMob3V0LCByZW1vdGVfcmVmcywgZXh0cmFfaGF2ZSwgYXJncykgPCAwKSB7Ci0JCQlmb3IgKHJlZiA9IHJlbW90ZV9yZWZzOyByZWY7IHJlZiA9IHJlZi0+bmV4dCkKLQkJCQlyZWYtPnN0YXR1cyA9IFJFRl9TVEFUVVNfTk9ORTsKIAkJCWlmIChhcmdzLT5zdGF0ZWxlc3NfcnBjKQogCQkJCWNsb3NlKG91dCk7CiAJCQlpZiAoZ2l0X2Nvbm5lY3Rpb25faXNfc29ja2V0KGNvbm4pKQpAQCAtNTcwLDEwICs1NzQsMTIgQEAKIAogCQkJLyoKIAkJCSAqIERvIG5vdCBldmVuIGJvdGhlciB3aXRoIHRoZSByZXR1cm4gdmFsdWU7IHdlIGtub3cgd2UKLQkJCSAqIGFyZSBmYWlsaW5nLCBhbmQganVzdCB3YW50IHRoZSBlcnJvcigpIHNpZGUgZWZmZWN0cy4KKwkJCSAqIGFyZSBmYWlsaW5nLCBhbmQganVzdCB3YW50IHRoZSBlcnJvcigpIHNpZGUgZWZmZWN0cywKKwkJCSAqIGFzIHdlbGwgYXMgbWFya2luZyByZWZzIHdpdGggdGhlaXIgcmVtb3RlIHN0YXR1cyAoaWYKKwkJCSAqIHdlIGdldCBvbmUpLgogCQkJICovCiAJCQlpZiAoc3RhdHVzX3JlcG9ydCkKLQkJCQlyZWNlaXZlX3VucGFja19zdGF0dXMoaW4pOworCQkJCXJlY2VpdmVfc3RhdHVzKCZyZWFkZXIsIHJlbW90ZV9yZWZzKTsKIAogCQkJaWYgKHVzZV9zaWRlYmFuZCkgewogCQkJCWNsb3NlKGRlbXV4Lm91dCk7CkBAIC01OTAsNyArNTk2LDcgQEAKIAkJcGFja2V0X2ZsdXNoKG91dCk7CiAKIAlpZiAoc3RhdHVzX3JlcG9ydCAmJiBjbWRzX3NlbnQpCi0JCXJldCA9IHJlY2VpdmVfc3RhdHVzKGluLCByZW1vdGVfcmVmcyk7CisJCXJldCA9IHJlY2VpdmVfc3RhdHVzKCZyZWFkZXIsIHJlbW90ZV9yZWZzKTsKIAllbHNlCiAJCXJldCA9IDA7CiAJaWYgKGFyZ3MtPnN0YXRlbGVzc19ycGMpCmRpZmYgLS1naXQgYS9zZXF1ZW5jZXIuYyBiL3NlcXVlbmNlci5jCmluZGV4IGUxYTRkZDEuLjU1YjllMDQgMTAwNjQ0Ci0tLSBhL3NlcXVlbmNlci5jCisrKyBiL3NlcXVlbmNlci5jCkBAIC0zNSwxMiArMzUsMTIgQEAKIAogI2RlZmluZSBHSVRfUkVGTE9HX0FDVElPTiAiR0lUX1JFRkxPR19BQ1RJT04iCiAKLWNvbnN0IGNoYXIgc2lnbl9vZmZfaGVhZGVyW10gPSAiU2lnbmVkLW9mZi1ieTogIjsKK3N0YXRpYyBjb25zdCBjaGFyIHNpZ25fb2ZmX2hlYWRlcltdID0gIlNpZ25lZC1vZmYtYnk6ICI7CiBzdGF0aWMgY29uc3QgY2hhciBjaGVycnlfcGlja2VkX3ByZWZpeFtdID0gIihjaGVycnkgcGlja2VkIGZyb20gY29tbWl0ICI7CiAKIEdJVF9QQVRIX0ZVTkMoZ2l0X3BhdGhfY29tbWl0X2VkaXRtc2csICJDT01NSVRfRURJVE1TRyIpCiAKLUdJVF9QQVRIX0ZVTkMoZ2l0X3BhdGhfc2VxX2RpciwgInNlcXVlbmNlciIpCitzdGF0aWMgR0lUX1BBVEhfRlVOQyhnaXRfcGF0aF9zZXFfZGlyLCAic2VxdWVuY2VyIikKIAogc3RhdGljIEdJVF9QQVRIX0ZVTkMoZ2l0X3BhdGhfdG9kb19maWxlLCAic2VxdWVuY2VyL3RvZG8iKQogc3RhdGljIEdJVF9QQVRIX0ZVTkMoZ2l0X3BhdGhfb3B0c19maWxlLCAic2VxdWVuY2VyL29wdHMiKQpAQCAtNTUsOCArNTUsOSBAQAogICogZmlsZSBhbmQgd3JpdHRlbiB0byB0aGUgdGFpbCBvZiAnZG9uZScuCiAgKi8KIEdJVF9QQVRIX0ZVTkMocmViYXNlX3BhdGhfdG9kbywgInJlYmFzZS1tZXJnZS9naXQtcmViYXNlLXRvZG8iKQotc3RhdGljIEdJVF9QQVRIX0ZVTkMocmViYXNlX3BhdGhfdG9kb19iYWNrdXAsCi0JCSAgICAgInJlYmFzZS1tZXJnZS9naXQtcmViYXNlLXRvZG8uYmFja3VwIikKK0dJVF9QQVRIX0ZVTkMocmViYXNlX3BhdGhfdG9kb19iYWNrdXAsICJyZWJhc2UtbWVyZ2UvZ2l0LXJlYmFzZS10b2RvLmJhY2t1cCIpCisKK0dJVF9QQVRIX0ZVTkMocmViYXNlX3BhdGhfZHJvcHBlZCwgInJlYmFzZS1tZXJnZS9kcm9wcGVkIikKIAogLyoKICAqIFRoZSByZWJhc2UgY29tbWFuZCBsaW5lcyB0aGF0IGhhdmUgYWxyZWFkeSBiZWVuIHByb2Nlc3NlZC4gQSBsaW5lCkBAIC0xMzIsNyArMTMzLDcgQEAKIAkicmViYXNlLW1lcmdlL3Jld3JpdHRlbi1wZW5kaW5nIikKIAogLyoKLSAqIFRoZSBwYXRoIG9mIHRoZSBmaWxlIGNvbnRhaW5pZyB0aGUgT0lEIG9mIHRoZSAic3F1YXNoIG9udG8iIGNvbW1pdCwgaS5lLgorICogVGhlIHBhdGggb2YgdGhlIGZpbGUgY29udGFpbmluZyB0aGUgT0lEIG9mIHRoZSAic3F1YXNoIG9udG8iIGNvbW1pdCwgaS5lLgogICogdGhlIGR1bW15IGNvbW1pdCB1c2VkIGZvciBgcmVzZXQgW25ldyByb290XWAuCiAgKi8KIHN0YXRpYyBHSVRfUEFUSF9GVU5DKHJlYmFzZV9wYXRoX3NxdWFzaF9vbnRvLCAicmViYXNlLW1lcmdlL3NxdWFzaC1vbnRvIikKQEAgLTE1MCw2ICsxNTEsNyBAQAogc3RhdGljIEdJVF9QQVRIX0ZVTkMocmViYXNlX3BhdGhfZ3BnX3NpZ25fb3B0LCAicmViYXNlLW1lcmdlL2dwZ19zaWduX29wdCIpCiBzdGF0aWMgR0lUX1BBVEhfRlVOQyhyZWJhc2VfcGF0aF9vcmlnX2hlYWQsICJyZWJhc2UtbWVyZ2Uvb3JpZy1oZWFkIikKIHN0YXRpYyBHSVRfUEFUSF9GVU5DKHJlYmFzZV9wYXRoX3ZlcmJvc2UsICJyZWJhc2UtbWVyZ2UvdmVyYm9zZSIpCitzdGF0aWMgR0lUX1BBVEhfRlVOQyhyZWJhc2VfcGF0aF9xdWlldCwgInJlYmFzZS1tZXJnZS9xdWlldCIpCiBzdGF0aWMgR0lUX1BBVEhfRlVOQyhyZWJhc2VfcGF0aF9zaWdub2ZmLCAicmViYXNlLW1lcmdlL3NpZ25vZmYiKQogc3RhdGljIEdJVF9QQVRIX0ZVTkMocmViYXNlX3BhdGhfaGVhZF9uYW1lLCAicmViYXNlLW1lcmdlL2hlYWQtbmFtZSIpCiBzdGF0aWMgR0lUX1BBVEhfRlVOQyhyZWJhc2VfcGF0aF9vbnRvLCAicmViYXNlLW1lcmdlL29udG8iKQpAQCAtMTU3LDcgKzE1OSw5IEBACiBzdGF0aWMgR0lUX1BBVEhfRlVOQyhyZWJhc2VfcGF0aF9zdHJhdGVneSwgInJlYmFzZS1tZXJnZS9zdHJhdGVneSIpCiBzdGF0aWMgR0lUX1BBVEhfRlVOQyhyZWJhc2VfcGF0aF9zdHJhdGVneV9vcHRzLCAicmViYXNlLW1lcmdlL3N0cmF0ZWd5X29wdHMiKQogc3RhdGljIEdJVF9QQVRIX0ZVTkMocmViYXNlX3BhdGhfYWxsb3dfcmVyZXJlX2F1dG91cGRhdGUsICJyZWJhc2UtbWVyZ2UvYWxsb3dfcmVyZXJlX2F1dG91cGRhdGUiKQotc3RhdGljIEdJVF9QQVRIX0ZVTkMocmViYXNlX3BhdGhfcXVpZXQsICJyZWJhc2UtbWVyZ2UvcXVpZXQiKQorc3RhdGljIEdJVF9QQVRIX0ZVTkMocmViYXNlX3BhdGhfcmVzY2hlZHVsZV9mYWlsZWRfZXhlYywgInJlYmFzZS1tZXJnZS9yZXNjaGVkdWxlLWZhaWxlZC1leGVjIikKK3N0YXRpYyBHSVRfUEFUSF9GVU5DKHJlYmFzZV9wYXRoX2Ryb3BfcmVkdW5kYW50X2NvbW1pdHMsICJyZWJhc2UtbWVyZ2UvZHJvcF9yZWR1bmRhbnRfY29tbWl0cyIpCitzdGF0aWMgR0lUX1BBVEhfRlVOQyhyZWJhc2VfcGF0aF9rZWVwX3JlZHVuZGFudF9jb21taXRzLCAicmViYXNlLW1lcmdlL2tlZXBfcmVkdW5kYW50X2NvbW1pdHMiKQogCiBzdGF0aWMgaW50IGdpdF9zZXF1ZW5jZXJfY29uZmlnKGNvbnN0IGNoYXIgKmssIGNvbnN0IGNoYXIgKnYsIHZvaWQgKmNiKQogewpAQCAtMTcxLDE3ICsxNzUsMjIgQEAKIAkJaWYgKHN0YXR1cykKIAkJCXJldHVybiBzdGF0dXM7CiAKLQkJaWYgKCFzdHJjbXAocywgInZlcmJhdGltIikpCisJCWlmICghc3RyY21wKHMsICJ2ZXJiYXRpbSIpKSB7CiAJCQlvcHRzLT5kZWZhdWx0X21zZ19jbGVhbnVwID0gQ09NTUlUX01TR19DTEVBTlVQX05PTkU7Ci0JCWVsc2UgaWYgKCFzdHJjbXAocywgIndoaXRlc3BhY2UiKSkKKwkJCW9wdHMtPmV4cGxpY2l0X2NsZWFudXAgPSAxOworCQl9IGVsc2UgaWYgKCFzdHJjbXAocywgIndoaXRlc3BhY2UiKSkgewogCQkJb3B0cy0+ZGVmYXVsdF9tc2dfY2xlYW51cCA9IENPTU1JVF9NU0dfQ0xFQU5VUF9TUEFDRTsKLQkJZWxzZSBpZiAoIXN0cmNtcChzLCAic3RyaXAiKSkKKwkJCW9wdHMtPmV4cGxpY2l0X2NsZWFudXAgPSAxOworCQl9IGVsc2UgaWYgKCFzdHJjbXAocywgInN0cmlwIikpIHsKIAkJCW9wdHMtPmRlZmF1bHRfbXNnX2NsZWFudXAgPSBDT01NSVRfTVNHX0NMRUFOVVBfQUxMOwotCQllbHNlIGlmICghc3RyY21wKHMsICJzY2lzc29ycyIpKQotCQkJb3B0cy0+ZGVmYXVsdF9tc2dfY2xlYW51cCA9IENPTU1JVF9NU0dfQ0xFQU5VUF9TUEFDRTsKLQkJZWxzZQorCQkJb3B0cy0+ZXhwbGljaXRfY2xlYW51cCA9IDE7CisJCX0gZWxzZSBpZiAoIXN0cmNtcChzLCAic2Npc3NvcnMiKSkgeworCQkJb3B0cy0+ZGVmYXVsdF9tc2dfY2xlYW51cCA9IENPTU1JVF9NU0dfQ0xFQU5VUF9TQ0lTU09SUzsKKwkJCW9wdHMtPmV4cGxpY2l0X2NsZWFudXAgPSAxOworCQl9IGVsc2UgewogCQkJd2FybmluZyhfKCJpbnZhbGlkIGNvbW1pdCBtZXNzYWdlIGNsZWFudXAgbW9kZSAnJXMnIiksCiAJCQkJICBzKTsKKwkJfQogCiAJCWZyZWUoKGNoYXIgKilzKTsKIAkJcmV0dXJuIHN0YXR1czsKQEAgLTI3NCw3ICsyODMsNyBAQAogaW50IHNlcXVlbmNlcl9yZW1vdmVfc3RhdGUoc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKQogewogCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7Ci0JaW50IGk7CisJaW50IGksIHJldCA9IDA7CiAKIAlpZiAoaXNfcmViYXNlX2kob3B0cykgJiYKIAkgICAgc3RyYnVmX3JlYWRfZmlsZSgmYnVmLCByZWJhc2VfcGF0aF9yZWZzX3RvX2RlbGV0ZSgpLCAwKSA+IDApIHsKQEAgLTI4Myw4ICsyOTIsMTAgQEAKIAkJCWNoYXIgKmVvbCA9IHN0cmNocihwLCAnXG4nKTsKIAkJCWlmIChlb2wpCiAJCQkJKmVvbCA9ICdcMCc7Ci0JCQlpZiAoZGVsZXRlX3JlZigiKHJlYmFzZSAtaSkgY2xlYW51cCIsIHAsIE5VTEwsIDApIDwgMCkKKwkJCWlmIChkZWxldGVfcmVmKCIocmViYXNlKSBjbGVhbnVwIiwgcCwgTlVMTCwgMCkgPCAwKSB7CiAJCQkJd2FybmluZyhfKCJjb3VsZCBub3QgZGVsZXRlICclcyciKSwgcCk7CisJCQkJcmV0ID0gLTE7CisJCQl9CiAJCQlpZiAoIWVvbCkKIAkJCQlicmVhazsKIAkJCXAgPSBlb2wgKyAxOwpAQCAtMzAwLDEwICszMTEsMTEgQEAKIAogCXN0cmJ1Zl9yZXNldCgmYnVmKTsKIAlzdHJidWZfYWRkc3RyKCZidWYsIGdldF9kaXIob3B0cykpOwotCXJlbW92ZV9kaXJfcmVjdXJzaXZlbHkoJmJ1ZiwgMCk7CisJaWYgKHJlbW92ZV9kaXJfcmVjdXJzaXZlbHkoJmJ1ZiwgMCkpCisJCXJldCA9IGVycm9yKF8oImNvdWxkIG5vdCByZW1vdmUgJyVzJyIpLCBidWYuYnVmKTsKIAlzdHJidWZfcmVsZWFzZSgmYnVmKTsKIAotCXJldHVybiAwOworCXJldHVybiByZXQ7CiB9CiAKIHN0YXRpYyBjb25zdCBjaGFyICphY3Rpb25fbmFtZShjb25zdCBzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMpCkBAIC0zMTQsNyArMzI2LDcgQEAKIAljYXNlIFJFUExBWV9QSUNLOgogCQlyZXR1cm4gTl8oImNoZXJyeS1waWNrIik7CiAJY2FzZSBSRVBMQVlfSU5URVJBQ1RJVkVfUkVCQVNFOgotCQlyZXR1cm4gTl8oInJlYmFzZSAtaSIpOworCQlyZXR1cm4gTl8oInJlYmFzZSIpOwogCX0KIAlkaWUoXygidW5rbm93biBhY3Rpb246ICVkIiksIG9wdHMtPmFjdGlvbik7CiB9CkBAIC0zNTYsNyArMzY4LDggQEAKIAl1bnVzZV9jb21taXRfYnVmZmVyKGNvbW1pdCwgbXNnLT5tZXNzYWdlKTsKIH0KIAotc3RhdGljIHZvaWQgcHJpbnRfYWR2aWNlKGludCBzaG93X2hpbnQsIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKK3N0YXRpYyB2b2lkIHByaW50X2FkdmljZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgaW50IHNob3dfaGludCwKKwkJCSBzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMpCiB7CiAJY2hhciAqbXNnID0gZ2V0ZW52KCJHSVRfQ0hFUlJZX1BJQ0tfSEVMUCIpOwogCkBAIC0zNjcsNyArMzgwLDcgQEAKIAkJICogKHR5cGljYWxseSByZWJhc2UgLS1pbnRlcmFjdGl2ZSkgd2FudHMgdG8gdGFrZSBjYXJlCiAJCSAqIG9mIHRoZSBjb21taXQgaXRzZWxmIHNvIHJlbW92ZSBDSEVSUllfUElDS19IRUFECiAJCSAqLwotCQl1bmxpbmsoZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZCh0aGVfcmVwb3NpdG9yeSkpOworCQl1bmxpbmsoZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZChyKSk7CiAJCXJldHVybjsKIAl9CiAKQEAgLTM4Miw4ICszOTUsOCBAQAogCX0KIH0KIAotaW50IHdyaXRlX21lc3NhZ2UoY29uc3Qgdm9pZCAqYnVmLCBzaXplX3QgbGVuLCBjb25zdCBjaGFyICpmaWxlbmFtZSwKLQkJICBpbnQgYXBwZW5kX2VvbCkKK3N0YXRpYyBpbnQgd3JpdGVfbWVzc2FnZShjb25zdCB2b2lkICpidWYsIHNpemVfdCBsZW4sIGNvbnN0IGNoYXIgKmZpbGVuYW1lLAorCQkJIGludCBhcHBlbmRfZW9sKQogewogCXN0cnVjdCBsb2NrX2ZpbGUgbXNnX2ZpbGUgPSBMT0NLX0lOSVQ7CiAKQEAgLTQ0MCwxNCArNDUzLDE0IEBACiAJcmV0dXJuIDE7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgdHJlZSAqZW1wdHlfdHJlZSh2b2lkKQorc3RhdGljIHN0cnVjdCB0cmVlICplbXB0eV90cmVlKHN0cnVjdCByZXBvc2l0b3J5ICpyKQogewotCXJldHVybiBsb29rdXBfdHJlZSh0aGVfcmVwb3NpdG9yeSwgdGhlX3JlcG9zaXRvcnktPmhhc2hfYWxnby0+ZW1wdHlfdHJlZSk7CisJcmV0dXJuIGxvb2t1cF90cmVlKHIsIHRoZV9oYXNoX2FsZ28tPmVtcHR5X3RyZWUpOwogfQogCi1zdGF0aWMgaW50IGVycm9yX2RpcnR5X2luZGV4KHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKK3N0YXRpYyBpbnQgZXJyb3JfZGlydHlfaW5kZXgoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKIHsKLQlpZiAocmVhZF9jYWNoZV91bm1lcmdlZCgpKQorCWlmIChyZXBvX3JlYWRfaW5kZXhfdW5tZXJnZWQocmVwbykpCiAJCXJldHVybiBlcnJvcl9yZXNvbHZlX2NvbmZsaWN0KF8oYWN0aW9uX25hbWUob3B0cykpKTsKIAogCWVycm9yKF8oInlvdXIgbG9jYWwgY2hhbmdlcyB3b3VsZCBiZSBvdmVyd3JpdHRlbiBieSAlcy4iKSwKQEAgLTQ3MiwxNSArNDg1LDE4IEBACiAJCXdyaXRlX2ZpbGUoZ2l0X3BhdGhfYWJvcnRfc2FmZXR5X2ZpbGUoKSwgIiVzIiwgIiIpOwogfQogCi1zdGF0aWMgaW50IGZhc3RfZm9yd2FyZF90byhjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICp0bywgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqZnJvbSwKLQkJCWludCB1bmJvcm4sIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKK3N0YXRpYyBpbnQgZmFzdF9mb3J3YXJkX3RvKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqdG8sCisJCQkgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpmcm9tLAorCQkJICAgaW50IHVuYm9ybiwKKwkJCSAgIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKIHsKIAlzdHJ1Y3QgcmVmX3RyYW5zYWN0aW9uICp0cmFuc2FjdGlvbjsKIAlzdHJ1Y3Qgc3RyYnVmIHNiID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHN0cmJ1ZiBlcnIgPSBTVFJCVUZfSU5JVDsKIAotCXJlYWRfaW5kZXgoJnRoZV9pbmRleCk7Ci0JaWYgKGNoZWNrb3V0X2Zhc3RfZm9yd2FyZCh0aGVfcmVwb3NpdG9yeSwgZnJvbSwgdG8sIDEpKQorCXJlcG9fcmVhZF9pbmRleChyKTsKKwlpZiAoY2hlY2tvdXRfZmFzdF9mb3J3YXJkKHIsIGZyb20sIHRvLCAxKSkKIAkJcmV0dXJuIC0xOyAvKiB0aGUgY2FsbGVlIHNob3VsZCBoYXZlIGNvbXBsYWluZWQgYWxyZWFkeSAqLwogCiAJc3RyYnVmX2FkZGYoJnNiLCBfKCIlczogZmFzdC1mb3J3YXJkIiksIF8oYWN0aW9uX25hbWUob3B0cykpKTsKQEAgLTUwNiw0MCArNTIyLDg1IEBACiAJcmV0dXJuIDA7CiB9CiAKLXZvaWQgYXBwZW5kX2NvbmZsaWN0c19oaW50KHN0cnVjdCBzdHJidWYgKm1zZ2J1ZikKK2VudW0gY29tbWl0X21zZ19jbGVhbnVwX21vZGUgZ2V0X2NsZWFudXBfbW9kZShjb25zdCBjaGFyICpjbGVhbnVwX2FyZywKKwlpbnQgdXNlX2VkaXRvcikKK3sKKwlpZiAoIWNsZWFudXBfYXJnIHx8ICFzdHJjbXAoY2xlYW51cF9hcmcsICJkZWZhdWx0IikpCisJCXJldHVybiB1c2VfZWRpdG9yID8gQ09NTUlUX01TR19DTEVBTlVQX0FMTCA6CisJCQkJICAgIENPTU1JVF9NU0dfQ0xFQU5VUF9TUEFDRTsKKwllbHNlIGlmICghc3RyY21wKGNsZWFudXBfYXJnLCAidmVyYmF0aW0iKSkKKwkJcmV0dXJuIENPTU1JVF9NU0dfQ0xFQU5VUF9OT05FOworCWVsc2UgaWYgKCFzdHJjbXAoY2xlYW51cF9hcmcsICJ3aGl0ZXNwYWNlIikpCisJCXJldHVybiBDT01NSVRfTVNHX0NMRUFOVVBfU1BBQ0U7CisJZWxzZSBpZiAoIXN0cmNtcChjbGVhbnVwX2FyZywgInN0cmlwIikpCisJCXJldHVybiBDT01NSVRfTVNHX0NMRUFOVVBfQUxMOworCWVsc2UgaWYgKCFzdHJjbXAoY2xlYW51cF9hcmcsICJzY2lzc29ycyIpKQorCQlyZXR1cm4gdXNlX2VkaXRvciA/IENPTU1JVF9NU0dfQ0xFQU5VUF9TQ0lTU09SUyA6CisJCQkJICAgIENPTU1JVF9NU0dfQ0xFQU5VUF9TUEFDRTsKKwllbHNlCisJCWRpZShfKCJJbnZhbGlkIGNsZWFudXAgbW9kZSAlcyIpLCBjbGVhbnVwX2FyZyk7Cit9CisKKy8qCisgKiBOQiB1c2luZyBpbnQgcmF0aGVyIHRoYW4gZW51bSBjbGVhbnVwX21vZGUgdG8gc3RvcCBjbGFuZydzCisgKiAtV3RhdXRvbG9naWNhbC1jb25zdGFudC1vdXQtb2YtcmFuZ2UtY29tcGFyZSBjb21wbGFpbmluZyB0aGF0IHRoZSBjb21wYXJpc29uCisgKiBpcyBhbHdheXMgdHJ1ZS4KKyAqLworc3RhdGljIGNvbnN0IGNoYXIgKmRlc2NyaWJlX2NsZWFudXBfbW9kZShpbnQgY2xlYW51cF9tb2RlKQoreworCXN0YXRpYyBjb25zdCBjaGFyICptb2Rlc1tdID0geyAid2hpdGVzcGFjZSIsCisJCQkJICAgICAgICJ2ZXJiYXRpbSIsCisJCQkJICAgICAgICJzY2lzc29ycyIsCisJCQkJICAgICAgICJzdHJpcCIgfTsKKworCWlmIChjbGVhbnVwX21vZGUgPCBBUlJBWV9TSVpFKG1vZGVzKSkKKwkJcmV0dXJuIG1vZGVzW2NsZWFudXBfbW9kZV07CisKKwlCVUcoImludmFsaWQgY2xlYW51cF9tb2RlIHByb3ZpZGVkICglZCkiLCBjbGVhbnVwX21vZGUpOworfQorCit2b2lkIGFwcGVuZF9jb25mbGljdHNfaGludChzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKKwlzdHJ1Y3Qgc3RyYnVmICptc2didWYsIGVudW0gY29tbWl0X21zZ19jbGVhbnVwX21vZGUgY2xlYW51cF9tb2RlKQogewogCWludCBpOwogCisJaWYgKGNsZWFudXBfbW9kZSA9PSBDT01NSVRfTVNHX0NMRUFOVVBfU0NJU1NPUlMpIHsKKwkJc3RyYnVmX2FkZGNoKG1zZ2J1ZiwgJ1xuJyk7CisJCXd0X3N0YXR1c19hcHBlbmRfY3V0X2xpbmUobXNnYnVmKTsKKwkJc3RyYnVmX2FkZGNoKG1zZ2J1ZiwgY29tbWVudF9saW5lX2NoYXIpOworCX0KKwogCXN0cmJ1Zl9hZGRjaChtc2didWYsICdcbicpOwogCXN0cmJ1Zl9jb21tZW50ZWRfYWRkZihtc2didWYsICJDb25mbGljdHM6XG4iKTsKLQlmb3IgKGkgPSAwOyBpIDwgYWN0aXZlX25yOykgewotCQljb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlID0gYWN0aXZlX2NhY2hlW2krK107CisJZm9yIChpID0gMDsgaSA8IGlzdGF0ZS0+Y2FjaGVfbnI7KSB7CisJCWNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UgPSBpc3RhdGUtPmNhY2hlW2krK107CiAJCWlmIChjZV9zdGFnZShjZSkpIHsKIAkJCXN0cmJ1Zl9jb21tZW50ZWRfYWRkZihtc2didWYsICJcdCVzXG4iLCBjZS0+bmFtZSk7Ci0JCQl3aGlsZSAoaSA8IGFjdGl2ZV9uciAmJiAhc3RyY21wKGNlLT5uYW1lLAotCQkJCQkJCWFjdGl2ZV9jYWNoZVtpXS0+bmFtZSkpCisJCQl3aGlsZSAoaSA8IGlzdGF0ZS0+Y2FjaGVfbnIgJiYKKwkJCSAgICAgICAhc3RyY21wKGNlLT5uYW1lLCBpc3RhdGUtPmNhY2hlW2ldLT5uYW1lKSkKIAkJCQlpKys7CiAJCX0KIAl9CiB9CiAKLXN0YXRpYyBpbnQgZG9fcmVjdXJzaXZlX21lcmdlKHN0cnVjdCBjb21taXQgKmJhc2UsIHN0cnVjdCBjb21taXQgKm5leHQsCitzdGF0aWMgaW50IGRvX3JlY3Vyc2l2ZV9tZXJnZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgICAgIHN0cnVjdCBjb21taXQgKmJhc2UsIHN0cnVjdCBjb21taXQgKm5leHQsCiAJCQkgICAgICBjb25zdCBjaGFyICpiYXNlX2xhYmVsLCBjb25zdCBjaGFyICpuZXh0X2xhYmVsLAogCQkJICAgICAgc3RydWN0IG9iamVjdF9pZCAqaGVhZCwgc3RydWN0IHN0cmJ1ZiAqbXNnYnVmLAogCQkJICAgICAgc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKQogewogCXN0cnVjdCBtZXJnZV9vcHRpb25zIG87Ci0Jc3RydWN0IHRyZWUgKnJlc3VsdCwgKm5leHRfdHJlZSwgKmJhc2VfdHJlZSwgKmhlYWRfdHJlZTsKKwlzdHJ1Y3QgdHJlZSAqbmV4dF90cmVlLCAqYmFzZV90cmVlLCAqaGVhZF90cmVlOwogCWludCBjbGVhbjsKLQljaGFyICoqeG9wdDsKKwlpbnQgaTsKIAlzdHJ1Y3QgbG9ja19maWxlIGluZGV4X2xvY2sgPSBMT0NLX0lOSVQ7CiAKLQlpZiAoaG9sZF9sb2NrZWRfaW5kZXgoJmluZGV4X2xvY2ssIExPQ0tfUkVQT1JUX09OX0VSUk9SKSA8IDApCisJaWYgKHJlcG9faG9sZF9sb2NrZWRfaW5kZXgociwgJmluZGV4X2xvY2ssIExPQ0tfUkVQT1JUX09OX0VSUk9SKSA8IDApCiAJCXJldHVybiAtMTsKIAotCXJlYWRfY2FjaGUoKTsKKwlyZXBvX3JlYWRfaW5kZXgocik7CiAKLQlpbml0X21lcmdlX29wdGlvbnMoJm8pOworCWluaXRfbWVyZ2Vfb3B0aW9ucygmbywgcik7CiAJby5hbmNlc3RvciA9IGJhc2UgPyBiYXNlX2xhYmVsIDogIihlbXB0eSB0cmVlKSI7CiAJby5icmFuY2gxID0gIkhFQUQiOwogCW8uYnJhbmNoMiA9IG5leHQgPyBuZXh0X2xhYmVsIDogIihlbXB0eSB0cmVlKSI7CkBAIC01NDgsNjIgKzYwOSw2MyBAQAogCW8uc2hvd19yZW5hbWVfcHJvZ3Jlc3MgPSAxOwogCiAJaGVhZF90cmVlID0gcGFyc2VfdHJlZV9pbmRpcmVjdChoZWFkKTsKLQluZXh0X3RyZWUgPSBuZXh0ID8gZ2V0X2NvbW1pdF90cmVlKG5leHQpIDogZW1wdHlfdHJlZSgpOwotCWJhc2VfdHJlZSA9IGJhc2UgPyBnZXRfY29tbWl0X3RyZWUoYmFzZSkgOiBlbXB0eV90cmVlKCk7CisJbmV4dF90cmVlID0gbmV4dCA/IGdldF9jb21taXRfdHJlZShuZXh0KSA6IGVtcHR5X3RyZWUocik7CisJYmFzZV90cmVlID0gYmFzZSA/IGdldF9jb21taXRfdHJlZShiYXNlKSA6IGVtcHR5X3RyZWUocik7CiAKLQlmb3IgKHhvcHQgPSBvcHRzLT54b3B0czsgeG9wdCAhPSBvcHRzLT54b3B0cyArIG9wdHMtPnhvcHRzX25yOyB4b3B0KyspCi0JCXBhcnNlX21lcmdlX29wdCgmbywgKnhvcHQpOworCWZvciAoaSA9IDA7IGkgPCBvcHRzLT54b3B0c19ucjsgaSsrKQorCQlwYXJzZV9tZXJnZV9vcHQoJm8sIG9wdHMtPnhvcHRzW2ldKTsKIAogCWNsZWFuID0gbWVyZ2VfdHJlZXMoJm8sCiAJCQkgICAgaGVhZF90cmVlLAotCQkJICAgIG5leHRfdHJlZSwgYmFzZV90cmVlLCAmcmVzdWx0KTsKKwkJCSAgICBuZXh0X3RyZWUsIGJhc2VfdHJlZSk7CiAJaWYgKGlzX3JlYmFzZV9pKG9wdHMpICYmIGNsZWFuIDw9IDApCiAJCWZwdXRzKG8ub2J1Zi5idWYsIHN0ZG91dCk7CiAJc3RyYnVmX3JlbGVhc2UoJm8ub2J1Zik7Ci0JZGlmZl93YXJuX3JlbmFtZV9saW1pdCgibWVyZ2UucmVuYW1lbGltaXQiLCBvLm5lZWRlZF9yZW5hbWVfbGltaXQsIDApOwogCWlmIChjbGVhbiA8IDApIHsKIAkJcm9sbGJhY2tfbG9ja19maWxlKCZpbmRleF9sb2NrKTsKIAkJcmV0dXJuIGNsZWFuOwogCX0KIAotCWlmICh3cml0ZV9sb2NrZWRfaW5kZXgoJnRoZV9pbmRleCwgJmluZGV4X2xvY2ssCisJaWYgKHdyaXRlX2xvY2tlZF9pbmRleChyLT5pbmRleCwgJmluZGV4X2xvY2ssCiAJCQkgICAgICAgQ09NTUlUX0xPQ0sgfCBTS0lQX0lGX1VOQ0hBTkdFRCkpCiAJCS8qCiAJCSAqIFRSQU5TTEFUT1JTOiAlcyB3aWxsIGJlICJyZXZlcnQiLCAiY2hlcnJ5LXBpY2siIG9yCi0JCSAqICJyZWJhc2UgLWkiLgorCQkgKiAicmViYXNlIi4KIAkJICovCiAJCXJldHVybiBlcnJvcihfKCIlczogVW5hYmxlIHRvIHdyaXRlIG5ldyBpbmRleCBmaWxlIiksCiAJCQlfKGFjdGlvbl9uYW1lKG9wdHMpKSk7CiAKIAlpZiAoIWNsZWFuKQotCQlhcHBlbmRfY29uZmxpY3RzX2hpbnQobXNnYnVmKTsKKwkJYXBwZW5kX2NvbmZsaWN0c19oaW50KHItPmluZGV4LCBtc2didWYsCisJCQkJICAgICAgb3B0cy0+ZGVmYXVsdF9tc2dfY2xlYW51cCk7CiAKIAlyZXR1cm4gIWNsZWFuOwogfQogCi1zdGF0aWMgc3RydWN0IG9iamVjdF9pZCAqZ2V0X2NhY2hlX3RyZWVfb2lkKHZvaWQpCitzdGF0aWMgc3RydWN0IG9iamVjdF9pZCAqZ2V0X2NhY2hlX3RyZWVfb2lkKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKQogewotCWlmICghYWN0aXZlX2NhY2hlX3RyZWUpCi0JCWFjdGl2ZV9jYWNoZV90cmVlID0gY2FjaGVfdHJlZSgpOworCWlmICghaXN0YXRlLT5jYWNoZV90cmVlKQorCQlpc3RhdGUtPmNhY2hlX3RyZWUgPSBjYWNoZV90cmVlKCk7CiAKLQlpZiAoIWNhY2hlX3RyZWVfZnVsbHlfdmFsaWQoYWN0aXZlX2NhY2hlX3RyZWUpKQotCQlpZiAoY2FjaGVfdHJlZV91cGRhdGUoJnRoZV9pbmRleCwgMCkpIHsKKwlpZiAoIWNhY2hlX3RyZWVfZnVsbHlfdmFsaWQoaXN0YXRlLT5jYWNoZV90cmVlKSkKKwkJaWYgKGNhY2hlX3RyZWVfdXBkYXRlKGlzdGF0ZSwgMCkpIHsKIAkJCWVycm9yKF8oInVuYWJsZSB0byB1cGRhdGUgY2FjaGUgdHJlZSIpKTsKIAkJCXJldHVybiBOVUxMOwogCQl9CiAKLQlyZXR1cm4gJmFjdGl2ZV9jYWNoZV90cmVlLT5vaWQ7CisJcmV0dXJuICZpc3RhdGUtPmNhY2hlX3RyZWUtPm9pZDsKIH0KIAotc3RhdGljIGludCBpc19pbmRleF91bmNoYW5nZWQodm9pZCkKK3N0YXRpYyBpbnQgaXNfaW5kZXhfdW5jaGFuZ2VkKHN0cnVjdCByZXBvc2l0b3J5ICpyKQogewogCXN0cnVjdCBvYmplY3RfaWQgaGVhZF9vaWQsICpjYWNoZV90cmVlX29pZDsKIAlzdHJ1Y3QgY29tbWl0ICpoZWFkX2NvbW1pdDsKKwlzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSA9IHItPmluZGV4OwogCiAJaWYgKCFyZXNvbHZlX3JlZl91bnNhZmUoIkhFQUQiLCBSRVNPTFZFX1JFRl9SRUFESU5HLCAmaGVhZF9vaWQsIE5VTEwpKQogCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHJlc29sdmUgSEVBRCBjb21taXQiKSk7CiAKLQloZWFkX2NvbW1pdCA9IGxvb2t1cF9jb21taXQodGhlX3JlcG9zaXRvcnksICZoZWFkX29pZCk7CisJaGVhZF9jb21taXQgPSBsb29rdXBfY29tbWl0KHIsICZoZWFkX29pZCk7CiAKIAkvKgogCSAqIElmIGhlYWRfY29tbWl0IGlzIE5VTEwsIGNoZWNrX2NvbW1pdCwgY2FsbGVkIGZyb20KQEAgLTYxNiw3ICs2NzgsNyBAQAogCWlmIChwYXJzZV9jb21taXQoaGVhZF9jb21taXQpKQogCQlyZXR1cm4gLTE7CiAKLQlpZiAoIShjYWNoZV90cmVlX29pZCA9IGdldF9jYWNoZV90cmVlX29pZCgpKSkKKwlpZiAoIShjYWNoZV90cmVlX29pZCA9IGdldF9jYWNoZV90cmVlX29pZChpc3RhdGUpKSkKIAkJcmV0dXJuIC0xOwogCiAJcmV0dXJuIG9pZGVxKGNhY2hlX3RyZWVfb2lkLCBnZXRfY29tbWl0X3RyZWVfb2lkKGhlYWRfY29tbWl0KSk7CkBAIC03MTEsNyArNzczLDcgQEAKICAqCUdJVF9BVVRIT1JfREFURT0nJGF1dGhvcl9kYXRlJwogICoKICAqIHdoZXJlICRhdXRob3JfbmFtZSwgJGF1dGhvcl9lbWFpbCBhbmQgJGF1dGhvcl9kYXRlIGFyZSBxdW90ZWQuIFdlIGFyZSBzdHJpY3QKLSAqIHdpdGggb3VyIHBhcnNpbmcsIGFzIHRoZSBmaWxlIHdhcyBtZWFudCB0byBiZSBldmFsJ2QgaW4gdGhlIG9sZAorICogd2l0aCBvdXIgcGFyc2luZywgYXMgdGhlIGZpbGUgd2FzIG1lYW50IHRvIGJlIGV2YWwnZCBpbiB0aGUgbm93LXJlbW92ZWQKICAqIGdpdC1hbS5zaC9naXQtcmViYXNlLS1pbnRlcmFjdGl2ZS5zaCBzY3JpcHRzLCBhbmQgdGh1cyBpZiB0aGUgZmlsZSBkaWZmZXJzCiAgKiBmcm9tIHdoYXQgdGhpcyBmdW5jdGlvbiBleHBlY3RzLCBpdCBpcyBiZXR0ZXIgdG8gYmFpbCBvdXQgdGhhbiB0byBkbwogICogc29tZXRoaW5nIHRoYXQgdGhlIHVzZXIgZG9lcyBub3QgZXhwZWN0LgpAQCAtODEwLDM0ICs4NzIsNiBAQAogCXJldHVybiBOVUxMOwogfQogCi0vKiBSZWFkIGF1dGhvci1zY3JpcHQgYW5kIHJldHVybiBhbiBpZGVudCBsaW5lIChhdXRob3IgPGVtYWlsPiB0aW1lc3RhbXApICovCi1zdGF0aWMgY29uc3QgY2hhciAqcmVhZF9hdXRob3JfaWRlbnQoc3RydWN0IHN0cmJ1ZiAqYnVmKQotewotCXN0cnVjdCBzdHJidWYgb3V0ID0gU1RSQlVGX0lOSVQ7Ci0JY2hhciAqbmFtZSwgKmVtYWlsLCAqZGF0ZTsKLQotCWlmIChyZWFkX2F1dGhvcl9zY3JpcHQocmViYXNlX3BhdGhfYXV0aG9yX3NjcmlwdCgpLAotCQkJICAgICAgICZuYW1lLCAmZW1haWwsICZkYXRlLCAwKSkKLQkJcmV0dXJuIE5VTEw7Ci0KLQkvKiB2YWxpZGF0ZSBkYXRlIHNpbmNlIGZtdF9pZGVudCgpIHdpbGwgZGllKCkgb24gYmFkIHZhbHVlICovCi0JaWYgKHBhcnNlX2RhdGUoZGF0ZSwgJm91dCkpewotCQl3YXJuaW5nKF8oImludmFsaWQgZGF0ZSBmb3JtYXQgJyVzJyBpbiAnJXMnIiksCi0JCQlkYXRlLCByZWJhc2VfcGF0aF9hdXRob3Jfc2NyaXB0KCkpOwotCQlzdHJidWZfcmVsZWFzZSgmb3V0KTsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCi0Jc3RyYnVmX3Jlc2V0KCZvdXQpOwotCXN0cmJ1Zl9hZGRzdHIoJm91dCwgZm10X2lkZW50KG5hbWUsIGVtYWlsLCBkYXRlLCAwKSk7Ci0Jc3RyYnVmX3N3YXAoYnVmLCAmb3V0KTsKLQlzdHJidWZfcmVsZWFzZSgmb3V0KTsKLQlmcmVlKG5hbWUpOwotCWZyZWUoZW1haWwpOwotCWZyZWUoZGF0ZSk7Ci0JcmV0dXJuIGJ1Zi0+YnVmOwotfQotCiBzdGF0aWMgY29uc3QgY2hhciBzdGFnZWRfY2hhbmdlc19hZHZpY2VbXSA9CiBOXygieW91IGhhdmUgc3RhZ2VkIGNoYW5nZXMgaW4geW91ciB3b3JraW5nIHRyZWVcbiIKICJJZiB0aGVzZSBjaGFuZ2VzIGFyZSBtZWFudCB0byBiZSBzcXVhc2hlZCBpbnRvIHRoZSBwcmV2aW91cyBjb21taXQsIHJ1bjpcbiIKQEAgLTg4OCw1MiArOTIyLDEyIEBACiAgKiBpbnRlcmFjdGl2ZSByZWJhc2U6IGluIHRoYXQgY2FzZSwgd2Ugd2lsbCB3YW50IHRvIHJldGFpbiB0aGUKICAqIGF1dGhvciBtZXRhZGF0YS4KICAqLwotc3RhdGljIGludCBydW5fZ2l0X2NvbW1pdChjb25zdCBjaGFyICpkZWZtc2csIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywKK3N0YXRpYyBpbnQgcnVuX2dpdF9jb21taXQoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgIGNvbnN0IGNoYXIgKmRlZm1zZywKKwkJCSAgc3RydWN0IHJlcGxheV9vcHRzICpvcHRzLAogCQkJICB1bnNpZ25lZCBpbnQgZmxhZ3MpCiB7CiAJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY21kID0gQ0hJTERfUFJPQ0VTU19JTklUOwotCWNvbnN0IGNoYXIgKnZhbHVlOwotCi0JaWYgKChmbGFncyAmIENSRUFURV9ST09UX0NPTU1JVCkgJiYgIShmbGFncyAmIEFNRU5EX01TRykpIHsKLQkJc3RydWN0IHN0cmJ1ZiBtc2cgPSBTVFJCVUZfSU5JVCwgc2NyaXB0ID0gU1RSQlVGX0lOSVQ7Ci0JCWNvbnN0IGNoYXIgKmF1dGhvciA9IE5VTEw7Ci0JCXN0cnVjdCBvYmplY3RfaWQgcm9vdF9jb21taXQsICpjYWNoZV90cmVlX29pZDsKLQkJaW50IHJlcyA9IDA7Ci0KLQkJaWYgKGlzX3JlYmFzZV9pKG9wdHMpKSB7Ci0JCQlhdXRob3IgPSByZWFkX2F1dGhvcl9pZGVudCgmc2NyaXB0KTsKLQkJCWlmICghYXV0aG9yKSB7Ci0JCQkJc3RyYnVmX3JlbGVhc2UoJnNjcmlwdCk7Ci0JCQkJcmV0dXJuIC0xOwotCQkJfQotCQl9Ci0KLQkJaWYgKCFkZWZtc2cpCi0JCQlCVUcoInJvb3QgY29tbWl0IHdpdGhvdXQgbWVzc2FnZSIpOwotCi0JCWlmICghKGNhY2hlX3RyZWVfb2lkID0gZ2V0X2NhY2hlX3RyZWVfb2lkKCkpKQotCQkJcmVzID0gLTE7Ci0KLQkJaWYgKCFyZXMpCi0JCQlyZXMgPSBzdHJidWZfcmVhZF9maWxlKCZtc2csIGRlZm1zZywgMCk7Ci0KLQkJaWYgKHJlcyA8PSAwKQotCQkJcmVzID0gZXJyb3JfZXJybm8oXygiY291bGQgbm90IHJlYWQgJyVzJyIpLCBkZWZtc2cpOwotCQllbHNlCi0JCQlyZXMgPSBjb21taXRfdHJlZShtc2cuYnVmLCBtc2cubGVuLCBjYWNoZV90cmVlX29pZCwKLQkJCQkJICBOVUxMLCAmcm9vdF9jb21taXQsIGF1dGhvciwKLQkJCQkJICBvcHRzLT5ncGdfc2lnbik7Ci0KLQkJc3RyYnVmX3JlbGVhc2UoJm1zZyk7Ci0JCXN0cmJ1Zl9yZWxlYXNlKCZzY3JpcHQpOwotCQlpZiAoIXJlcykgewotCQkJdXBkYXRlX3JlZihOVUxMLCAiQ0hFUlJZX1BJQ0tfSEVBRCIsICZyb290X2NvbW1pdCwgTlVMTCwKLQkJCQkgICBSRUZfTk9fREVSRUYsIFVQREFURV9SRUZTX01TR19PTl9FUlIpOwotCQkJcmVzID0gdXBkYXRlX3JlZihOVUxMLCAiSEVBRCIsICZyb290X2NvbW1pdCwgTlVMTCwgMCwKLQkJCQkJIFVQREFURV9SRUZTX01TR19PTl9FUlIpOwotCQl9Ci0JCXJldHVybiByZXMgPCAwID8gZXJyb3IoXygid3JpdGluZyByb290IGNvbW1pdCIpKSA6IDA7Ci0JfQogCiAJY21kLmdpdF9jbWQgPSAxOwogCkBAIC05NjIsNyArOTU2LDcgQEAKIAkJYXJndl9hcnJheV9wdXNoKCZjbWQuYXJncywgIi1lIik7CiAJZWxzZSBpZiAoIShmbGFncyAmIENMRUFOVVBfTVNHKSAmJgogCQkgIW9wdHMtPnNpZ25vZmYgJiYgIW9wdHMtPnJlY29yZF9vcmlnaW4gJiYKLQkJIGdpdF9jb25maWdfZ2V0X3ZhbHVlKCJjb21taXQuY2xlYW51cCIsICZ2YWx1ZSkpCisJCSAhb3B0cy0+ZXhwbGljaXRfY2xlYW51cCkKIAkJYXJndl9hcnJheV9wdXNoKCZjbWQuYXJncywgIi0tY2xlYW51cD12ZXJiYXRpbSIpOwogCiAJaWYgKChmbGFncyAmIEFMTE9XX0VNUFRZKSkKQEAgLTEwMDMsNiArOTk3LDE2IEBACiAJcmV0dXJuIDE7CiB9CiAKK3ZvaWQgY2xlYW51cF9tZXNzYWdlKHN0cnVjdCBzdHJidWYgKm1zZ2J1ZiwKKwllbnVtIGNvbW1pdF9tc2dfY2xlYW51cF9tb2RlIGNsZWFudXBfbW9kZSwgaW50IHZlcmJvc2UpCit7CisJaWYgKHZlcmJvc2UgfHwgLyogVHJ1bmNhdGUgdGhlIG1lc3NhZ2UganVzdCBiZWZvcmUgdGhlIGRpZmYsIGlmIGFueS4gKi8KKwkgICAgY2xlYW51cF9tb2RlID09IENPTU1JVF9NU0dfQ0xFQU5VUF9TQ0lTU09SUykKKwkJc3RyYnVmX3NldGxlbihtc2didWYsIHd0X3N0YXR1c19sb2NhdGVfZW5kKG1zZ2J1Zi0+YnVmLCBtc2didWYtPmxlbikpOworCWlmIChjbGVhbnVwX21vZGUgIT0gQ09NTUlUX01TR19DTEVBTlVQX05PTkUpCisJCXN0cmJ1Zl9zdHJpcHNwYWNlKG1zZ2J1ZiwgY2xlYW51cF9tb2RlID09IENPTU1JVF9NU0dfQ0xFQU5VUF9BTEwpOworfQorCiAvKgogICogRmluZCBvdXQgaWYgdGhlIG1lc3NhZ2UgaW4gdGhlIHN0cmJ1ZiBjb250YWlucyBvbmx5IHdoaXRlc3BhY2UgYW5kCiAgKiBTaWduZWQtb2ZmLWJ5IGxpbmVzLgpAQCAtMTA5Myw2ICsxMDk3LDcgQEAKIAlwcm9jLmFyZ3YgPSBhcmd2OwogCXByb2MuaW4gPSAtMTsKIAlwcm9jLnN0ZG91dF90b19zdGRlcnIgPSAxOworCXByb2MudHJhY2UyX2hvb2tfbmFtZSA9ICJwb3N0LXJld3JpdGUiOwogCiAJY29kZSA9IHN0YXJ0X2NvbW1hbmQoJnByb2MpOwogCWlmIChjb2RlKQpAQCAtMTEwNiw3ICsxMTExLDggQEAKIAlyZXR1cm4gZmluaXNoX2NvbW1hbmQoJnByb2MpOwogfQogCi12b2lkIGNvbW1pdF9wb3N0X3Jld3JpdGUoY29uc3Qgc3RydWN0IGNvbW1pdCAqb2xkX2hlYWQsCit2b2lkIGNvbW1pdF9wb3N0X3Jld3JpdGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgY29uc3Qgc3RydWN0IGNvbW1pdCAqb2xkX2hlYWQsCiAJCQkgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqbmV3X2hlYWQpCiB7CiAJc3RydWN0IG5vdGVzX3Jld3JpdGVfY2ZnICpjZmc7CkBAIC0xMTE1LDMyICsxMTIxLDMxIEBACiAJaWYgKGNmZykgewogCQkvKiB3ZSBhcmUgYW1lbmRpbmcsIHNvIG9sZF9oZWFkIGlzIG5vdCBOVUxMICovCiAJCWNvcHlfbm90ZV9mb3JfcmV3cml0ZShjZmcsICZvbGRfaGVhZC0+b2JqZWN0Lm9pZCwgbmV3X2hlYWQpOwotCQlmaW5pc2hfY29weV9ub3Rlc19mb3JfcmV3cml0ZShjZmcsICJOb3RlcyBhZGRlZCBieSAnZ2l0IGNvbW1pdCAtLWFtZW5kJyIpOworCQlmaW5pc2hfY29weV9ub3Rlc19mb3JfcmV3cml0ZShyLCBjZmcsICJOb3RlcyBhZGRlZCBieSAnZ2l0IGNvbW1pdCAtLWFtZW5kJyIpOwogCX0KIAlydW5fcmV3cml0ZV9ob29rKCZvbGRfaGVhZC0+b2JqZWN0Lm9pZCwgbmV3X2hlYWQpOwogfQogCi1zdGF0aWMgaW50IHJ1bl9wcmVwYXJlX2NvbW1pdF9tc2dfaG9vayhzdHJ1Y3Qgc3RyYnVmICptc2csIGNvbnN0IGNoYXIgKmNvbW1pdCkKK3N0YXRpYyBpbnQgcnVuX3ByZXBhcmVfY29tbWl0X21zZ19ob29rKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSAgICAgICBzdHJ1Y3Qgc3RyYnVmICptc2csCisJCQkJICAgICAgIGNvbnN0IGNoYXIgKmNvbW1pdCkKIHsKLQlzdHJ1Y3QgYXJndl9hcnJheSBob29rX2VudiA9IEFSR1ZfQVJSQVlfSU5JVDsKLQlpbnQgcmV0OwotCWNvbnN0IGNoYXIgKm5hbWU7CisJaW50IHJldCA9IDA7CisJY29uc3QgY2hhciAqbmFtZSwgKmFyZzEgPSBOVUxMLCAqYXJnMiA9IE5VTEw7CiAKIAluYW1lID0gZ2l0X3BhdGhfY29tbWl0X2VkaXRtc2coKTsKIAlpZiAod3JpdGVfbWVzc2FnZShtc2ctPmJ1ZiwgbXNnLT5sZW4sIG5hbWUsIDApKQogCQlyZXR1cm4gLTE7CiAKLQlhcmd2X2FycmF5X3B1c2hmKCZob29rX2VudiwgIkdJVF9JTkRFWF9GSUxFPSVzIiwgZ2V0X2luZGV4X2ZpbGUoKSk7Ci0JYXJndl9hcnJheV9wdXNoKCZob29rX2VudiwgIkdJVF9FRElUT1I9OiIpOwotCWlmIChjb21taXQpCi0JCXJldCA9IHJ1bl9ob29rX2xlKGhvb2tfZW52LmFyZ3YsICJwcmVwYXJlLWNvbW1pdC1tc2ciLCBuYW1lLAotCQkJCSAgImNvbW1pdCIsIGNvbW1pdCwgTlVMTCk7Ci0JZWxzZQotCQlyZXQgPSBydW5faG9va19sZShob29rX2Vudi5hcmd2LCAicHJlcGFyZS1jb21taXQtbXNnIiwgbmFtZSwKLQkJCQkgICJtZXNzYWdlIiwgTlVMTCk7Ci0JaWYgKHJldCkKKwlpZiAoY29tbWl0KSB7CisJCWFyZzEgPSAiY29tbWl0IjsKKwkJYXJnMiA9IGNvbW1pdDsKKwl9IGVsc2UgeworCQlhcmcxID0gIm1lc3NhZ2UiOworCX0KKwlpZiAocnVuX2NvbW1pdF9ob29rKDAsIHItPmluZGV4X2ZpbGUsICJwcmVwYXJlLWNvbW1pdC1tc2ciLCBuYW1lLAorCQkJICAgIGFyZzEsIGFyZzIsIE5VTEwpKQogCQlyZXQgPSBlcnJvcihfKCIncHJlcGFyZS1jb21taXQtbXNnJyBob29rIGZhaWxlZCIpKTsKLQlhcmd2X2FycmF5X2NsZWFyKCZob29rX2Vudik7CiAKIAlyZXR1cm4gcmV0OwogfQpAQCAtMTE4Niw3ICsxMTkxLDkgQEAKIAogfQogCi12b2lkIHByaW50X2NvbW1pdF9zdW1tYXJ5KGNvbnN0IGNoYXIgKnByZWZpeCwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAordm9pZCBwcmludF9jb21taXRfc3VtbWFyeShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgY29uc3QgY2hhciAqcHJlZml4LAorCQkJICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCiAJCQkgIHVuc2lnbmVkIGludCBmbGFncykKIHsKIAlzdHJ1Y3QgcmV2X2luZm8gcmV2OwpAQCAtMTE5Nyw3ICsxMjA0LDcgQEAKIAlzdHJ1Y3Qgc3RyYnVmIGF1dGhvcl9pZGVudCA9IFNUUkJVRl9JTklUOwogCXN0cnVjdCBzdHJidWYgY29tbWl0dGVyX2lkZW50ID0gU1RSQlVGX0lOSVQ7CiAKLQljb21taXQgPSBsb29rdXBfY29tbWl0KHRoZV9yZXBvc2l0b3J5LCBvaWQpOworCWNvbW1pdCA9IGxvb2t1cF9jb21taXQociwgb2lkKTsKIAlpZiAoIWNvbW1pdCkKIAkJZGllKF8oImNvdWxkbid0IGxvb2sgdXAgbmV3bHkgY3JlYXRlZCBjb21taXQiKSk7CiAJaWYgKHBhcnNlX2NvbW1pdChjb21taXQpKQpAQCAtMTIzMCw3ICsxMjM3LDcgQEAKIAlzdHJidWZfcmVsZWFzZSgmYXV0aG9yX2lkZW50KTsKIAlzdHJidWZfcmVsZWFzZSgmY29tbWl0dGVyX2lkZW50KTsKIAotCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksICZyZXYsIHByZWZpeCk7CisJcmVwb19pbml0X3JldmlzaW9ucyhyLCAmcmV2LCBwcmVmaXgpOwogCXNldHVwX3JldmlzaW9ucygwLCBOVUxMLCAmcmV2LCBOVUxMKTsKIAogCXJldi5kaWZmID0gMTsKQEAgLTEyNjQsNyArMTI3MSw3IEBACiAJc3RyYnVmX3JlbGVhc2UoJmZvcm1hdCk7CiB9CiAKLXN0YXRpYyBpbnQgcGFyc2VfaGVhZChzdHJ1Y3QgY29tbWl0ICoqaGVhZCkKK3N0YXRpYyBpbnQgcGFyc2VfaGVhZChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IGNvbW1pdCAqKmhlYWQpCiB7CiAJc3RydWN0IGNvbW1pdCAqY3VycmVudF9oZWFkOwogCXN0cnVjdCBvYmplY3RfaWQgb2lkOwpAQCAtMTI3Miw3ICsxMjc5LDcgQEAKIAlpZiAoZ2V0X29pZCgiSEVBRCIsICZvaWQpKSB7CiAJCWN1cnJlbnRfaGVhZCA9IE5VTEw7CiAJfSBlbHNlIHsKLQkJY3VycmVudF9oZWFkID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2UodGhlX3JlcG9zaXRvcnksICZvaWQpOworCQljdXJyZW50X2hlYWQgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZShyLCAmb2lkKTsKIAkJaWYgKCFjdXJyZW50X2hlYWQpCiAJCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHBhcnNlIEhFQUQiKSk7CiAJCWlmICghb2lkZXEoJm9pZCwgJmN1cnJlbnRfaGVhZC0+b2JqZWN0Lm9pZCkpIHsKQEAgLTEyOTYsMTIgKzEzMDMsMTMgQEAKICAqICAgMCAtIHN1Y2Nlc3MKICAqICAgMSAtIHJ1biAnZ2l0IGNvbW1pdCcKICAqLwotc3RhdGljIGludCB0cnlfdG9fY29tbWl0KHN0cnVjdCBzdHJidWYgKm1zZywgY29uc3QgY2hhciAqYXV0aG9yLAorc3RhdGljIGludCB0cnlfdG9fY29tbWl0KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJIHN0cnVjdCBzdHJidWYgKm1zZywgY29uc3QgY2hhciAqYXV0aG9yLAogCQkJIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywgdW5zaWduZWQgaW50IGZsYWdzLAogCQkJIHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIHRyZWU7Ci0Jc3RydWN0IGNvbW1pdCAqY3VycmVudF9oZWFkOworCXN0cnVjdCBjb21taXQgKmN1cnJlbnRfaGVhZCA9IE5VTEw7CiAJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnRzID0gTlVMTDsKIAlzdHJ1Y3QgY29tbWl0X2V4dHJhX2hlYWRlciAqZXh0cmEgPSBOVUxMOwogCXN0cnVjdCBzdHJidWYgZXJyID0gU1RSQlVGX0lOSVQ7CkBAIC0xMzExLDcgKzEzMTksNyBAQAogCWVudW0gY29tbWl0X21zZ19jbGVhbnVwX21vZGUgY2xlYW51cDsKIAlpbnQgcmVzID0gMDsKIAotCWlmIChwYXJzZV9oZWFkKCZjdXJyZW50X2hlYWQpKQorCWlmIChwYXJzZV9oZWFkKHIsICZjdXJyZW50X2hlYWQpKQogCQlyZXR1cm4gLTE7CiAKIAlpZiAoZmxhZ3MgJiBBTUVORF9NU0cpIHsKQEAgLTEzMzYsMjQgKzEzNDQsNDEgQEAKIAkJfQogCQlwYXJlbnRzID0gY29weV9jb21taXRfbGlzdChjdXJyZW50X2hlYWQtPnBhcmVudHMpOwogCQlleHRyYSA9IHJlYWRfY29tbWl0X2V4dHJhX2hlYWRlcnMoY3VycmVudF9oZWFkLCBleGNsdWRlX2dwZ3NpZyk7Ci0JfSBlbHNlIGlmIChjdXJyZW50X2hlYWQpIHsKKwl9IGVsc2UgaWYgKGN1cnJlbnRfaGVhZCAmJgorCQkgICAoIShmbGFncyAmIENSRUFURV9ST09UX0NPTU1JVCkgfHwgKGZsYWdzICYgQU1FTkRfTVNHKSkpIHsKIAkJY29tbWl0X2xpc3RfaW5zZXJ0KGN1cnJlbnRfaGVhZCwgJnBhcmVudHMpOwogCX0KIAotCWlmICh3cml0ZV9pbmRleF9hc190cmVlKCZ0cmVlLCAmdGhlX2luZGV4LCBnZXRfaW5kZXhfZmlsZSgpLCAwLCBOVUxMKSkgeworCWlmICh3cml0ZV9pbmRleF9hc190cmVlKCZ0cmVlLCByLT5pbmRleCwgci0+aW5kZXhfZmlsZSwgMCwgTlVMTCkpIHsKIAkJcmVzID0gZXJyb3IoXygiZ2l0IHdyaXRlLXRyZWUgZmFpbGVkIHRvIHdyaXRlIGEgdHJlZSIpKTsKIAkJZ290byBvdXQ7CiAJfQogCi0JaWYgKCEoZmxhZ3MgJiBBTExPV19FTVBUWSkgJiYgb2lkZXEoY3VycmVudF9oZWFkID8KLQkJCQkJICAgIGdldF9jb21taXRfdHJlZV9vaWQoY3VycmVudF9oZWFkKSA6Ci0JCQkJCSAgICB0aGVfaGFzaF9hbGdvLT5lbXB0eV90cmVlLCAmdHJlZSkpIHsKLQkJcmVzID0gMTsgLyogcnVuICdnaXQgY29tbWl0JyB0byBkaXNwbGF5IGVycm9yIG1lc3NhZ2UgKi8KLQkJZ290byBvdXQ7CisJaWYgKCEoZmxhZ3MgJiBBTExPV19FTVBUWSkpIHsKKwkJc3RydWN0IGNvbW1pdCAqZmlyc3RfcGFyZW50ID0gY3VycmVudF9oZWFkOworCisJCWlmIChmbGFncyAmIEFNRU5EX01TRykgeworCQkJaWYgKGN1cnJlbnRfaGVhZC0+cGFyZW50cykgeworCQkJCWZpcnN0X3BhcmVudCA9IGN1cnJlbnRfaGVhZC0+cGFyZW50cy0+aXRlbTsKKwkJCQlpZiAocmVwb19wYXJzZV9jb21taXQociwgZmlyc3RfcGFyZW50KSkgeworCQkJCQlyZXMgPSBlcnJvcihfKCJjb3VsZCBub3QgcGFyc2UgSEVBRCBjb21taXQiKSk7CisJCQkJCWdvdG8gb3V0OworCQkJCX0KKwkJCX0gZWxzZSB7CisJCQkJZmlyc3RfcGFyZW50ID0gTlVMTDsKKwkJCX0KKwkJfQorCQlpZiAob2lkZXEoZmlyc3RfcGFyZW50CisJCQkgID8gZ2V0X2NvbW1pdF90cmVlX29pZChmaXJzdF9wYXJlbnQpCisJCQkgIDogdGhlX2hhc2hfYWxnby0+ZW1wdHlfdHJlZSwKKwkJCSAgJnRyZWUpKSB7CisJCQlyZXMgPSAxOyAvKiBydW4gJ2dpdCBjb21taXQnIHRvIGRpc3BsYXkgZXJyb3IgbWVzc2FnZSAqLworCQkJZ290byBvdXQ7CisJCX0KIAl9CiAKIAlpZiAoZmluZF9ob29rKCJwcmVwYXJlLWNvbW1pdC1tc2ciKSkgewotCQlyZXMgPSBydW5fcHJlcGFyZV9jb21taXRfbXNnX2hvb2sobXNnLCBob29rX2NvbW1pdCk7CisJCXJlcyA9IHJ1bl9wcmVwYXJlX2NvbW1pdF9tc2dfaG9vayhyLCBtc2csIGhvb2tfY29tbWl0KTsKIAkJaWYgKHJlcykKIAkJCWdvdG8gb3V0OwogCQlpZiAoc3RyYnVmX3JlYWRfZmlsZSgmY29tbWl0X21zZywgZ2l0X3BhdGhfY29tbWl0X2VkaXRtc2coKSwKQEAgLTEzNjYsOCArMTM5MSwxMyBAQAogCQltc2cgPSAmY29tbWl0X21zZzsKIAl9CiAKLQljbGVhbnVwID0gKGZsYWdzICYgQ0xFQU5VUF9NU0cpID8gQ09NTUlUX01TR19DTEVBTlVQX0FMTCA6Ci0JCQkJCSAgb3B0cy0+ZGVmYXVsdF9tc2dfY2xlYW51cDsKKwlpZiAoZmxhZ3MgJiBDTEVBTlVQX01TRykKKwkJY2xlYW51cCA9IENPTU1JVF9NU0dfQ0xFQU5VUF9BTEw7CisJZWxzZSBpZiAoKG9wdHMtPnNpZ25vZmYgfHwgb3B0cy0+cmVjb3JkX29yaWdpbikgJiYKKwkJICFvcHRzLT5leHBsaWNpdF9jbGVhbnVwKQorCQljbGVhbnVwID0gQ09NTUlUX01TR19DTEVBTlVQX1NQQUNFOworCWVsc2UKKwkJY2xlYW51cCA9IG9wdHMtPmRlZmF1bHRfbXNnX2NsZWFudXA7CiAKIAlpZiAoY2xlYW51cCAhPSBDT01NSVRfTVNHX0NMRUFOVVBfTk9ORSkKIAkJc3RyYnVmX3N0cmlwc3BhY2UobXNnLCBjbGVhbnVwID09IENPTU1JVF9NU0dfQ0xFQU5VUF9BTEwpOwpAQCAtMTM5MCw4ICsxNDIwLDkgQEAKIAkJZ290byBvdXQ7CiAJfQogCisJcnVuX2NvbW1pdF9ob29rKDAsIHItPmluZGV4X2ZpbGUsICJwb3N0LWNvbW1pdCIsIE5VTEwpOwogCWlmIChmbGFncyAmIEFNRU5EX01TRykKLQkJY29tbWl0X3Bvc3RfcmV3cml0ZShjdXJyZW50X2hlYWQsIG9pZCk7CisJCWNvbW1pdF9wb3N0X3Jld3JpdGUociwgY3VycmVudF9oZWFkLCBvaWQpOwogCiBvdXQ6CiAJZnJlZV9jb21taXRfZXh0cmFfaGVhZGVycyhleHRyYSk7CkBAIC0xNDAyLDEzICsxNDMzLDIzIEBACiAJcmV0dXJuIHJlczsKIH0KIAotc3RhdGljIGludCBkb19jb21taXQoY29uc3QgY2hhciAqbXNnX2ZpbGUsIGNvbnN0IGNoYXIgKmF1dGhvciwKLQkJICAgICBzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMsIHVuc2lnbmVkIGludCBmbGFncykKK3N0YXRpYyBpbnQgd3JpdGVfcmViYXNlX2hlYWQoc3RydWN0IG9iamVjdF9pZCAqb2lkKQoreworCWlmICh1cGRhdGVfcmVmKCJyZWJhc2UiLCAiUkVCQVNFX0hFQUQiLCBvaWQsCisJCSAgICAgICBOVUxMLCBSRUZfTk9fREVSRUYsIFVQREFURV9SRUZTX01TR19PTl9FUlIpKQorCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHVwZGF0ZSAlcyIpLCAiUkVCQVNFX0hFQUQiKTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGRvX2NvbW1pdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJICAgICBjb25zdCBjaGFyICptc2dfZmlsZSwgY29uc3QgY2hhciAqYXV0aG9yLAorCQkgICAgIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywgdW5zaWduZWQgaW50IGZsYWdzLAorCQkgICAgIHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAlpbnQgcmVzID0gMTsKIAotCWlmICghKGZsYWdzICYgRURJVF9NU0cpICYmICEoZmxhZ3MgJiBWRVJJRllfTVNHKSAmJgotCSAgICAhKGZsYWdzICYgQ1JFQVRFX1JPT1RfQ09NTUlUKSkgeworCWlmICghKGZsYWdzICYgRURJVF9NU0cpICYmICEoZmxhZ3MgJiBWRVJJRllfTVNHKSkgewogCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAkJc3RydWN0IHN0cmJ1ZiBzYiA9IFNUUkJVRl9JTklUOwogCkBAIC0xNDE3LDIwICsxNDU4LDI0IEBACiAJCQkJCSAgICAgImZyb20gJyVzJyIpLAogCQkJCQkgICBtc2dfZmlsZSk7CiAKLQkJcmVzID0gdHJ5X3RvX2NvbW1pdChtc2dfZmlsZSA/ICZzYiA6IE5VTEwsIGF1dGhvciwgb3B0cywgZmxhZ3MsCi0JCQkJICAgICZvaWQpOworCQlyZXMgPSB0cnlfdG9fY29tbWl0KHIsIG1zZ19maWxlID8gJnNiIDogTlVMTCwKKwkJCQkgICAgYXV0aG9yLCBvcHRzLCBmbGFncywgJm9pZCk7CiAJCXN0cmJ1Zl9yZWxlYXNlKCZzYik7CiAJCWlmICghcmVzKSB7Ci0JCQl1bmxpbmsoZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZCh0aGVfcmVwb3NpdG9yeSkpOwotCQkJdW5saW5rKGdpdF9wYXRoX21lcmdlX21zZyh0aGVfcmVwb3NpdG9yeSkpOworCQkJdW5saW5rKGdpdF9wYXRoX2NoZXJyeV9waWNrX2hlYWQocikpOworCQkJdW5saW5rKGdpdF9wYXRoX21lcmdlX21zZyhyKSk7CiAJCQlpZiAoIWlzX3JlYmFzZV9pKG9wdHMpKQotCQkJCXByaW50X2NvbW1pdF9zdW1tYXJ5KE5VTEwsICZvaWQsCisJCQkJcHJpbnRfY29tbWl0X3N1bW1hcnkociwgTlVMTCwgJm9pZCwKIAkJCQkJCVNVTU1BUllfU0hPV19BVVRIT1JfREFURSk7CiAJCQlyZXR1cm4gcmVzOwogCQl9CiAJfQotCWlmIChyZXMgPT0gMSkKLQkJcmV0dXJuIHJ1bl9naXRfY29tbWl0KG1zZ19maWxlLCBvcHRzLCBmbGFncyk7CisJaWYgKHJlcyA9PSAxKSB7CisJCWlmIChpc19yZWJhc2VfaShvcHRzKSAmJiBvaWQpCisJCQlpZiAod3JpdGVfcmViYXNlX2hlYWQob2lkKSkKKwkJCSAgICByZXR1cm4gLTE7CisJCXJldHVybiBydW5fZ2l0X2NvbW1pdChyLCBtc2dfZmlsZSwgb3B0cywgZmxhZ3MpOworCX0KIAogCXJldHVybiByZXM7CiB9CkBAIC0xNDU2LDI2ICsxNTAxLDM1IEBACiB9CiAKIC8qCi0gKiBEbyB3ZSBydW4gImdpdCBjb21taXQiIHdpdGggIi0tYWxsb3ctZW1wdHkiPworICogU2hvdWxkIGVtcHR5IGNvbW1pdHMgYmUgYWxsb3dlZD8gIFJldHVybiBzdGF0dXM6CisgKiAgICA8MDogRXJyb3IgaW4gaXNfaW5kZXhfdW5jaGFuZ2VkKHIpIG9yIGlzX29yaWdpbmFsX2NvbW1pdF9lbXB0eShjb21taXQpCisgKiAgICAgMDogSGFsdCBvbiBlbXB0eSBjb21taXQKKyAqICAgICAxOiBBbGxvdyBlbXB0eSBjb21taXQKKyAqICAgICAyOiBEcm9wIGVtcHR5IGNvbW1pdAogICovCi1zdGF0aWMgaW50IGFsbG93X2VtcHR5KHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywgc3RydWN0IGNvbW1pdCAqY29tbWl0KQorc3RhdGljIGludCBhbGxvd19lbXB0eShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJICAgICAgIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywKKwkJICAgICAgIHN0cnVjdCBjb21taXQgKmNvbW1pdCkKIHsKLQlpbnQgaW5kZXhfdW5jaGFuZ2VkLCBlbXB0eV9jb21taXQ7CisJaW50IGluZGV4X3VuY2hhbmdlZCwgb3JpZ2luYWxseV9lbXB0eTsKIAogCS8qCi0JICogVGhyZWUgY2FzZXM6CisJICogRm91ciBjYXNlczoKIAkgKgogCSAqICgxKSB3ZSBkbyBub3QgYWxsb3cgZW1wdHkgYXQgYWxsIGFuZCBlcnJvciBvdXQuCiAJICoKLQkgKiAoMikgd2UgYWxsb3cgb25lcyB0aGF0IHdlcmUgaW5pdGlhbGx5IGVtcHR5LCBidXQKLQkgKiBmb3JiaWQgdGhlIG9uZXMgdGhhdCBiZWNvbWUgZW1wdHk7CisJICogKDIpIHdlIGFsbG93IG9uZXMgdGhhdCB3ZXJlIGluaXRpYWxseSBlbXB0eSwgYW5kCisJICogICAgIGp1c3QgZHJvcCB0aGUgb25lcyB0aGF0IGJlY29tZSBlbXB0eQogCSAqCi0JICogKDMpIHdlIGFsbG93IGJvdGguCisJICogKDMpIHdlIGFsbG93IG9uZXMgdGhhdCB3ZXJlIGluaXRpYWxseSBlbXB0eSwgYnV0CisJICogICAgIGhhbHQgZm9yIHRoZSBvbmVzIHRoYXQgYmVjb21lIGVtcHR5OworCSAqCisJICogKDQpIHdlIGFsbG93IGJvdGguCiAJICovCiAJaWYgKCFvcHRzLT5hbGxvd19lbXB0eSkKIAkJcmV0dXJuIDA7IC8qIGxldCAiZ2l0IGNvbW1pdCIgYmFyZiBhcyBuZWNlc3NhcnkgKi8KIAotCWluZGV4X3VuY2hhbmdlZCA9IGlzX2luZGV4X3VuY2hhbmdlZCgpOworCWluZGV4X3VuY2hhbmdlZCA9IGlzX2luZGV4X3VuY2hhbmdlZChyKTsKIAlpZiAoaW5kZXhfdW5jaGFuZ2VkIDwgMCkKIAkJcmV0dXJuIGluZGV4X3VuY2hhbmdlZDsKIAlpZiAoIWluZGV4X3VuY2hhbmdlZCkKQEAgLTE0ODQsNDEgKzE1MzgsMTcgQEAKIAlpZiAob3B0cy0+a2VlcF9yZWR1bmRhbnRfY29tbWl0cykKIAkJcmV0dXJuIDE7CiAKLQllbXB0eV9jb21taXQgPSBpc19vcmlnaW5hbF9jb21taXRfZW1wdHkoY29tbWl0KTsKLQlpZiAoZW1wdHlfY29tbWl0IDwgMCkKLQkJcmV0dXJuIGVtcHR5X2NvbW1pdDsKLQlpZiAoIWVtcHR5X2NvbW1pdCkKLQkJcmV0dXJuIDA7Ci0JZWxzZQorCW9yaWdpbmFsbHlfZW1wdHkgPSBpc19vcmlnaW5hbF9jb21taXRfZW1wdHkoY29tbWl0KTsKKwlpZiAob3JpZ2luYWxseV9lbXB0eSA8IDApCisJCXJldHVybiBvcmlnaW5hbGx5X2VtcHR5OworCWlmIChvcmlnaW5hbGx5X2VtcHR5KQogCQlyZXR1cm4gMTsKKwllbHNlIGlmIChvcHRzLT5kcm9wX3JlZHVuZGFudF9jb21taXRzKQorCQlyZXR1cm4gMjsKKwllbHNlCisJCXJldHVybiAwOwogfQogCi0vKgotICogTm90ZSB0aGF0IG9yZGVyaW5nIG1hdHRlcnMgaW4gdGhpcyBlbnVtLiBOb3Qgb25seSBtdXN0IGl0IG1hdGNoIHRoZSBtYXBwaW5nCi0gKiBiZWxvdywgaXQgaXMgYWxzbyBkaXZpZGVkIGludG8gc2V2ZXJhbCBzZWN0aW9ucyB0aGF0IG1hdHRlci4gIFdoZW4gYWRkaW5nCi0gKiBuZXcgY29tbWFuZHMsIG1ha2Ugc3VyZSB5b3UgYWRkIGl0IGluIHRoZSByaWdodCBzZWN0aW9uLgotICovCi1lbnVtIHRvZG9fY29tbWFuZCB7Ci0JLyogY29tbWFuZHMgdGhhdCBoYW5kbGUgY29tbWl0cyAqLwotCVRPRE9fUElDSyA9IDAsCi0JVE9ET19SRVZFUlQsCi0JVE9ET19FRElULAotCVRPRE9fUkVXT1JELAotCVRPRE9fRklYVVAsCi0JVE9ET19TUVVBU0gsCi0JLyogY29tbWFuZHMgdGhhdCBkbyBzb21ldGhpbmcgZWxzZSB0aGFuIGhhbmRsaW5nIGEgc2luZ2xlIGNvbW1pdCAqLwotCVRPRE9fRVhFQywKLQlUT0RPX0JSRUFLLAotCVRPRE9fTEFCRUwsCi0JVE9ET19SRVNFVCwKLQlUT0RPX01FUkdFLAotCS8qIGNvbW1hbmRzIHRoYXQgZG8gbm90aGluZyBidXQgYXJlIGNvdW50ZWQgZm9yIHJlcG9ydGluZyBwcm9ncmVzcyAqLwotCVRPRE9fTk9PUCwKLQlUT0RPX0RST1AsCi0JLyogY29tbWVudHMgKG5vdCBjb3VudGVkIGZvciByZXBvcnRpbmcgcHJvZ3Jlc3MpICovCi0JVE9ET19DT01NRU5UCi19OwotCiBzdGF0aWMgc3RydWN0IHsKIAljaGFyIGM7CiAJY29uc3QgY2hhciAqc3RyOwpAQCAtMTU3OSwxMiArMTYwOSwxNSBAQAogCX0KIH0KIAotc3RhdGljIGludCB1cGRhdGVfc3F1YXNoX21lc3NhZ2VzKGVudW0gdG9kb19jb21tYW5kIGNvbW1hbmQsCi0JCXN0cnVjdCBjb21taXQgKmNvbW1pdCwgc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKQorc3RhdGljIGludCB1cGRhdGVfc3F1YXNoX21lc3NhZ2VzKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSAgZW51bSB0b2RvX2NvbW1hbmQgY29tbWFuZCwKKwkJCQkgIHN0cnVjdCBjb21taXQgKmNvbW1pdCwKKwkJCQkgIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKIHsKIAlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCWludCByZXM7CiAJY29uc3QgY2hhciAqbWVzc2FnZSwgKmJvZHk7CisJY29uc3QgY2hhciAqZW5jb2RpbmcgPSBnZXRfY29tbWl0X291dHB1dF9lbmNvZGluZygpOwogCiAJaWYgKG9wdHMtPmN1cnJlbnRfZml4dXBfY291bnQgPiAwKSB7CiAJCXN0cnVjdCBzdHJidWYgaGVhZGVyID0gU1RSQlVGX0lOSVQ7CkBAIC0xNjA5LDkgKzE2NDIsOSBAQAogCiAJCWlmIChnZXRfb2lkKCJIRUFEIiwgJmhlYWQpKQogCQkJcmV0dXJuIGVycm9yKF8oIm5lZWQgYSBIRUFEIHRvIGZpeHVwIikpOwotCQlpZiAoIShoZWFkX2NvbW1pdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHRoZV9yZXBvc2l0b3J5LCAmaGVhZCkpKQorCQlpZiAoIShoZWFkX2NvbW1pdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHIsICZoZWFkKSkpCiAJCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHJlYWQgSEVBRCIpKTsKLQkJaWYgKCEoaGVhZF9tZXNzYWdlID0gZ2V0X2NvbW1pdF9idWZmZXIoaGVhZF9jb21taXQsIE5VTEwpKSkKKwkJaWYgKCEoaGVhZF9tZXNzYWdlID0gbG9nbXNnX3JlZW5jb2RlKGhlYWRfY29tbWl0LCBOVUxMLCBlbmNvZGluZykpKQogCQkJcmV0dXJuIGVycm9yKF8oImNvdWxkIG5vdCByZWFkIEhFQUQncyBjb21taXQgbWVzc2FnZSIpKTsKIAogCQlmaW5kX2NvbW1pdF9zdWJqZWN0KGhlYWRfbWVzc2FnZSwgJmJvZHkpOwpAQCAtMTYzMiw3ICsxNjY1LDcgQEAKIAkJdW51c2VfY29tbWl0X2J1ZmZlcihoZWFkX2NvbW1pdCwgaGVhZF9tZXNzYWdlKTsKIAl9CiAKLQlpZiAoIShtZXNzYWdlID0gZ2V0X2NvbW1pdF9idWZmZXIoY29tbWl0LCBOVUxMKSkpCisJaWYgKCEobWVzc2FnZSA9IGxvZ21zZ19yZWVuY29kZShjb21taXQsIE5VTEwsIGVuY29kaW5nKSkpCiAJCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3QgcmVhZCBjb21taXQgbWVzc2FnZSBvZiAlcyIpLAogCQkJICAgICBvaWRfdG9faGV4KCZjb21taXQtPm9iamVjdC5vaWQpKTsKIAlmaW5kX2NvbW1pdF9zdWJqZWN0KG1lc3NhZ2UsICZib2R5KTsKQEAgLTE2NzAsNyArMTcwMyw4IEBACiAJcmV0dXJuIHJlczsKIH0KIAotc3RhdGljIHZvaWQgZmx1c2hfcmV3cml0dGVuX3BlbmRpbmcodm9pZCkgeworc3RhdGljIHZvaWQgZmx1c2hfcmV3cml0dGVuX3BlbmRpbmcodm9pZCkKK3sKIAlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCXN0cnVjdCBvYmplY3RfaWQgbmV3b2lkOwogCUZJTEUgKm91dDsKQEAgLTE2OTUsNyArMTcyOSw4IEBACiB9CiAKIHN0YXRpYyB2b2lkIHJlY29yZF9pbl9yZXdyaXR0ZW4oc3RydWN0IG9iamVjdF9pZCAqb2lkLAotCQllbnVtIHRvZG9fY29tbWFuZCBuZXh0X2NvbW1hbmQpIHsKKwkJZW51bSB0b2RvX2NvbW1hbmQgbmV4dF9jb21tYW5kKQorewogCUZJTEUgKm91dCA9IGZvcGVuX29yX3dhcm4ocmViYXNlX3BhdGhfcmV3cml0dGVuX3BlbmRpbmcoKSwgImEiKTsKIAogCWlmICghb3V0KQpAQCAtMTcwOCwxOCArMTc0MywyMSBAQAogCQlmbHVzaF9yZXdyaXR0ZW5fcGVuZGluZygpOwogfQogCi1zdGF0aWMgaW50IGRvX3BpY2tfY29tbWl0KGVudW0gdG9kb19jb21tYW5kIGNvbW1hbmQsIHN0cnVjdCBjb21taXQgKmNvbW1pdCwKLQkJc3RydWN0IHJlcGxheV9vcHRzICpvcHRzLCBpbnQgZmluYWxfZml4dXApCitzdGF0aWMgaW50IGRvX3BpY2tfY29tbWl0KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICBlbnVtIHRvZG9fY29tbWFuZCBjb21tYW5kLAorCQkJICBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCisJCQkgIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywKKwkJCSAgaW50IGZpbmFsX2ZpeHVwLCBpbnQgKmNoZWNrX3RvZG8pCiB7CiAJdW5zaWduZWQgaW50IGZsYWdzID0gb3B0cy0+ZWRpdCA/IEVESVRfTVNHIDogMDsKLQljb25zdCBjaGFyICptc2dfZmlsZSA9IG9wdHMtPmVkaXQgPyBOVUxMIDogZ2l0X3BhdGhfbWVyZ2VfbXNnKHRoZV9yZXBvc2l0b3J5KTsKKwljb25zdCBjaGFyICptc2dfZmlsZSA9IG9wdHMtPmVkaXQgPyBOVUxMIDogZ2l0X3BhdGhfbWVyZ2VfbXNnKHIpOwogCXN0cnVjdCBvYmplY3RfaWQgaGVhZDsKIAlzdHJ1Y3QgY29tbWl0ICpiYXNlLCAqbmV4dCwgKnBhcmVudDsKIAljb25zdCBjaGFyICpiYXNlX2xhYmVsLCAqbmV4dF9sYWJlbDsKIAljaGFyICphdXRob3IgPSBOVUxMOwogCXN0cnVjdCBjb21taXRfbWVzc2FnZSBtc2cgPSB7IE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwgfTsKIAlzdHJ1Y3Qgc3RyYnVmIG1zZ2J1ZiA9IFNUUkJVRl9JTklUOwotCWludCByZXMsIHVuYm9ybiA9IDAsIGFsbG93OworCWludCByZXMsIHVuYm9ybiA9IDAsIHJld29yZCA9IDAsIGFsbG93LCBkcm9wX2NvbW1pdDsKIAogCWlmIChvcHRzLT5ub19jb21taXQpIHsKIAkJLyoKQEAgLTE3MjgsNyArMTc2Niw3IEBACiAJCSAqIHRoYXQgcmVwcmVzZW50cyB0aGUgImN1cnJlbnQiIHN0YXRlIGZvciBtZXJnZS1yZWN1cnNpdmUKIAkJICogdG8gd29yayBvbi4KIAkJICovCi0JCWlmICh3cml0ZV9pbmRleF9hc190cmVlKCZoZWFkLCAmdGhlX2luZGV4LCBnZXRfaW5kZXhfZmlsZSgpLCAwLCBOVUxMKSkKKwkJaWYgKHdyaXRlX2luZGV4X2FzX3RyZWUoJmhlYWQsIHItPmluZGV4LCByLT5pbmRleF9maWxlLCAwLCBOVUxMKSkKIAkJCXJldHVybiBlcnJvcihfKCJ5b3VyIGluZGV4IGZpbGUgaXMgdW5tZXJnZWQuIikpOwogCX0gZWxzZSB7CiAJCXVuYm9ybiA9IGdldF9vaWQoIkhFQUQiLCAmaGVhZCk7CkBAIC0xNzQxLDExICsxNzc5LDExIEBACiAJCQl1bmJvcm4gPSAxOwogCQl9IGVsc2UgaWYgKHVuYm9ybikKIAkJCW9pZGNweSgmaGVhZCwgdGhlX2hhc2hfYWxnby0+ZW1wdHlfdHJlZSk7Ci0JCWlmIChpbmRleF9kaWZmZXJzX2Zyb20odW5ib3JuID8gZW1wdHlfdHJlZV9vaWRfaGV4KCkgOiAiSEVBRCIsCisJCWlmIChpbmRleF9kaWZmZXJzX2Zyb20ociwgdW5ib3JuID8gZW1wdHlfdHJlZV9vaWRfaGV4KCkgOiAiSEVBRCIsCiAJCQkJICAgICAgIE5VTEwsIDApKQotCQkJcmV0dXJuIGVycm9yX2RpcnR5X2luZGV4KG9wdHMpOworCQkJcmV0dXJuIGVycm9yX2RpcnR5X2luZGV4KHIsIG9wdHMpOwogCX0KLQlkaXNjYXJkX2NhY2hlKCk7CisJZGlzY2FyZF9pbmRleChyLT5pbmRleCk7CiAKIAlpZiAoIWNvbW1pdC0+cGFyZW50cykKIAkJcGFyZW50ID0gTlVMTDsKQEAgLTE3NjYsOSArMTgwNCwxMyBAQAogCQkJcmV0dXJuIGVycm9yKF8oImNvbW1pdCAlcyBkb2VzIG5vdCBoYXZlIHBhcmVudCAlZCIpLAogCQkJCW9pZF90b19oZXgoJmNvbW1pdC0+b2JqZWN0Lm9pZCksIG9wdHMtPm1haW5saW5lKTsKIAkJcGFyZW50ID0gcC0+aXRlbTsKLQl9IGVsc2UgaWYgKDAgPCBvcHRzLT5tYWlubGluZSkKLQkJcmV0dXJuIGVycm9yKF8oIm1haW5saW5lIHdhcyBzcGVjaWZpZWQgYnV0IGNvbW1pdCAlcyBpcyBub3QgYSBtZXJnZS4iKSwKLQkJCW9pZF90b19oZXgoJmNvbW1pdC0+b2JqZWN0Lm9pZCkpOworCX0gZWxzZSBpZiAoMSA8IG9wdHMtPm1haW5saW5lKQorCQkvKgorCQkgKiAgTm9uLWZpcnN0IHBhcmVudCBleHBsaWNpdGx5IHNwZWNpZmllZCBhcyBtYWlubGluZSBmb3IKKwkJICogIG5vbi1tZXJnZSBjb21taXQKKwkJICovCisJCXJldHVybiBlcnJvcihfKCJjb21taXQgJXMgZG9lcyBub3QgaGF2ZSBwYXJlbnQgJWQiKSwKKwkJCSAgICAgb2lkX3RvX2hleCgmY29tbWl0LT5vYmplY3Qub2lkKSwgb3B0cy0+bWFpbmxpbmUpOwogCWVsc2UKIAkJcGFyZW50ID0gY29tbWl0LT5wYXJlbnRzLT5pdGVtOwogCkBAIC0xNzgxLDExICsxODIzLDExIEBACiAJICAgICAoIXBhcmVudCAmJiB1bmJvcm4pKSkgewogCQlpZiAoaXNfcmViYXNlX2kob3B0cykpCiAJCQl3cml0ZV9hdXRob3Jfc2NyaXB0KG1zZy5tZXNzYWdlKTsKLQkJcmVzID0gZmFzdF9mb3J3YXJkX3RvKCZjb21taXQtPm9iamVjdC5vaWQsICZoZWFkLCB1bmJvcm4sCisJCXJlcyA9IGZhc3RfZm9yd2FyZF90byhyLCAmY29tbWl0LT5vYmplY3Qub2lkLCAmaGVhZCwgdW5ib3JuLAogCQkJb3B0cyk7CiAJCWlmIChyZXMgfHwgY29tbWFuZCAhPSBUT0RPX1JFV09SRCkKIAkJCWdvdG8gbGVhdmU7Ci0JCWZsYWdzIHw9IEVESVRfTVNHIHwgQU1FTkRfTVNHIHwgVkVSSUZZX01TRzsKKwkJcmV3b3JkID0gMTsKIAkJbXNnX2ZpbGUgPSBOVUxMOwogCQlnb3RvIGZhc3RfZm9yd2FyZF9lZGl0OwogCX0KQEAgLTE4NDMsOSArMTg4NSw5IEBACiAJfQogCiAJaWYgKGNvbW1hbmQgPT0gVE9ET19SRVdPUkQpCi0JCWZsYWdzIHw9IEVESVRfTVNHIHwgVkVSSUZZX01TRzsKKwkJcmV3b3JkID0gMTsKIAllbHNlIGlmIChpc19maXh1cChjb21tYW5kKSkgewotCQlpZiAodXBkYXRlX3NxdWFzaF9tZXNzYWdlcyhjb21tYW5kLCBjb21taXQsIG9wdHMpKQorCQlpZiAodXBkYXRlX3NxdWFzaF9tZXNzYWdlcyhyLCBjb21tYW5kLCBjb21taXQsIG9wdHMpKQogCQkJcmV0dXJuIC0xOwogCQlmbGFncyB8PSBBTUVORF9NU0c7CiAJCWlmICghZmluYWxfZml4dXApCkBAIC0xODU0LDEyICsxODk2LDEyIEBACiAJCQlmbGFncyB8PSBDTEVBTlVQX01TRzsKIAkJCW1zZ19maWxlID0gcmViYXNlX3BhdGhfZml4dXBfbXNnKCk7CiAJCX0gZWxzZSB7Ci0JCQljb25zdCBjaGFyICpkZXN0ID0gZ2l0X3BhdGhfc3F1YXNoX21zZyh0aGVfcmVwb3NpdG9yeSk7CisJCQljb25zdCBjaGFyICpkZXN0ID0gZ2l0X3BhdGhfc3F1YXNoX21zZyhyKTsKIAkJCXVubGluayhkZXN0KTsKIAkJCWlmIChjb3B5X2ZpbGUoZGVzdCwgcmViYXNlX3BhdGhfc3F1YXNoX21zZygpLCAwNjY2KSkKIAkJCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHJlbmFtZSAnJXMnIHRvICclcyciKSwKIAkJCQkJICAgICByZWJhc2VfcGF0aF9zcXVhc2hfbXNnKCksIGRlc3QpOwotCQkJdW5saW5rKGdpdF9wYXRoX21lcmdlX21zZyh0aGVfcmVwb3NpdG9yeSkpOworCQkJdW5saW5rKGdpdF9wYXRoX21lcmdlX21zZyhyKSk7CiAJCQltc2dfZmlsZSA9IGRlc3Q7CiAJCQlmbGFncyB8PSBFRElUX01TRzsKIAkJfQpAQCAtMTg3MSwyMyArMTkxMywyMyBAQAogCWlmIChpc19yZWJhc2VfaShvcHRzKSAmJiB3cml0ZV9hdXRob3Jfc2NyaXB0KG1zZy5tZXNzYWdlKSA8IDApCiAJCXJlcyA9IC0xOwogCWVsc2UgaWYgKCFvcHRzLT5zdHJhdGVneSB8fCAhc3RyY21wKG9wdHMtPnN0cmF0ZWd5LCAicmVjdXJzaXZlIikgfHwgY29tbWFuZCA9PSBUT0RPX1JFVkVSVCkgewotCQlyZXMgPSBkb19yZWN1cnNpdmVfbWVyZ2UoYmFzZSwgbmV4dCwgYmFzZV9sYWJlbCwgbmV4dF9sYWJlbCwKKwkJcmVzID0gZG9fcmVjdXJzaXZlX21lcmdlKHIsIGJhc2UsIG5leHQsIGJhc2VfbGFiZWwsIG5leHRfbGFiZWwsCiAJCQkJCSAmaGVhZCwgJm1zZ2J1Ziwgb3B0cyk7CiAJCWlmIChyZXMgPCAwKQogCQkJZ290byBsZWF2ZTsKIAogCQlyZXMgfD0gd3JpdGVfbWVzc2FnZShtc2didWYuYnVmLCBtc2didWYubGVuLAotCQkJCSAgICAgZ2l0X3BhdGhfbWVyZ2VfbXNnKHRoZV9yZXBvc2l0b3J5KSwgMCk7CisJCQkJICAgICBnaXRfcGF0aF9tZXJnZV9tc2cociksIDApOwogCX0gZWxzZSB7CiAJCXN0cnVjdCBjb21taXRfbGlzdCAqY29tbW9uID0gTlVMTDsKIAkJc3RydWN0IGNvbW1pdF9saXN0ICpyZW1vdGVzID0gTlVMTDsKIAogCQlyZXMgPSB3cml0ZV9tZXNzYWdlKG1zZ2J1Zi5idWYsIG1zZ2J1Zi5sZW4sCi0JCQkJICAgIGdpdF9wYXRoX21lcmdlX21zZyh0aGVfcmVwb3NpdG9yeSksIDApOworCQkJCSAgICBnaXRfcGF0aF9tZXJnZV9tc2cociksIDApOwogCiAJCWNvbW1pdF9saXN0X2luc2VydChiYXNlLCAmY29tbW9uKTsKIAkJY29tbWl0X2xpc3RfaW5zZXJ0KG5leHQsICZyZW1vdGVzKTsKLQkJcmVzIHw9IHRyeV9tZXJnZV9jb21tYW5kKHRoZV9yZXBvc2l0b3J5LCBvcHRzLT5zdHJhdGVneSwKKwkJcmVzIHw9IHRyeV9tZXJnZV9jb21tYW5kKHIsIG9wdHMtPnN0cmF0ZWd5LAogCQkJCQkgb3B0cy0+eG9wdHNfbnIsIChjb25zdCBjaGFyICoqKW9wdHMtPnhvcHRzLAogCQkJCQljb21tb24sIG9pZF90b19oZXgoJmhlYWQpLCByZW1vdGVzKTsKIAkJZnJlZV9jb21taXRfbGlzdChjb21tb24pOwpAQCAtMTkwMSw3ICsxOTQzLDkgQEAKIAkgKiBIb3dldmVyLCBpZiB0aGUgbWVyZ2UgZGlkIG5vdCBldmVuIHN0YXJ0LCB0aGVuIHdlIGRvbid0IHdhbnQgdG8KIAkgKiB3cml0ZSBpdCBhdCBhbGwuCiAJICovCi0JaWYgKGNvbW1hbmQgPT0gVE9ET19QSUNLICYmICFvcHRzLT5ub19jb21taXQgJiYgKHJlcyA9PSAwIHx8IHJlcyA9PSAxKSAmJgorCWlmICgoY29tbWFuZCA9PSBUT0RPX1BJQ0sgfHwgY29tbWFuZCA9PSBUT0RPX1JFV09SRCB8fAorCSAgICAgY29tbWFuZCA9PSBUT0RPX0VESVQpICYmICFvcHRzLT5ub19jb21taXQgJiYKKwkgICAgKHJlcyA9PSAwIHx8IHJlcyA9PSAxKSAmJgogCSAgICB1cGRhdGVfcmVmKE5VTEwsICJDSEVSUllfUElDS19IRUFEIiwgJmNvbW1pdC0+b2JqZWN0Lm9pZCwgTlVMTCwKIAkJICAgICAgIFJFRl9OT19ERVJFRiwgVVBEQVRFX1JFRlNfTVNHX09OX0VSUikpCiAJCXJlcyA9IC0xOwpAQCAtMTkxNSwyNSArMTk1OSw0MyBAQAogCQkgICAgICA/IF8oImNvdWxkIG5vdCByZXZlcnQgJXMuLi4gJXMiKQogCQkgICAgICA6IF8oImNvdWxkIG5vdCBhcHBseSAlcy4uLiAlcyIpLAogCQkgICAgICBzaG9ydF9jb21taXRfbmFtZShjb21taXQpLCBtc2cuc3ViamVjdCk7Ci0JCXByaW50X2FkdmljZShyZXMgPT0gMSwgb3B0cyk7Ci0JCXJlcG9fcmVyZXJlKHRoZV9yZXBvc2l0b3J5LCBvcHRzLT5hbGxvd19yZXJlcmVfYXV0byk7CisJCXByaW50X2FkdmljZShyLCByZXMgPT0gMSwgb3B0cyk7CisJCXJlcG9fcmVyZXJlKHIsIG9wdHMtPmFsbG93X3JlcmVyZV9hdXRvKTsKIAkJZ290byBsZWF2ZTsKIAl9CiAKLQlhbGxvdyA9IGFsbG93X2VtcHR5KG9wdHMsIGNvbW1pdCk7CisJZHJvcF9jb21taXQgPSAwOworCWFsbG93ID0gYWxsb3dfZW1wdHkociwgb3B0cywgY29tbWl0KTsKIAlpZiAoYWxsb3cgPCAwKSB7CiAJCXJlcyA9IGFsbG93OwogCQlnb3RvIGxlYXZlOwotCX0gZWxzZSBpZiAoYWxsb3cpCisJfSBlbHNlIGlmIChhbGxvdyA9PSAxKSB7CiAJCWZsYWdzIHw9IEFMTE9XX0VNUFRZOwotCWlmICghb3B0cy0+bm9fY29tbWl0KSB7Ci1mYXN0X2ZvcndhcmRfZWRpdDoKKwl9IGVsc2UgaWYgKGFsbG93ID09IDIpIHsKKwkJZHJvcF9jb21taXQgPSAxOworCQl1bmxpbmsoZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZChyKSk7CisJCXVubGluayhnaXRfcGF0aF9tZXJnZV9tc2cocikpOworCQlmcHJpbnRmKHN0ZGVyciwKKwkJCV8oImRyb3BwaW5nICVzICVzIC0tIHBhdGNoIGNvbnRlbnRzIGFscmVhZHkgdXBzdHJlYW1cbiIpLAorCQkJb2lkX3RvX2hleCgmY29tbWl0LT5vYmplY3Qub2lkKSwgbXNnLnN1YmplY3QpOworCX0gLyogZWxzZSBhbGxvdyA9PSAwIGFuZCB0aGVyZSdzIG5vdGhpbmcgc3BlY2lhbCB0byBkbyAqLworCWlmICghb3B0cy0+bm9fY29tbWl0ICYmICFkcm9wX2NvbW1pdCkgewogCQlpZiAoYXV0aG9yIHx8IGNvbW1hbmQgPT0gVE9ET19SRVZFUlQgfHwgKGZsYWdzICYgQU1FTkRfTVNHKSkKLQkJCXJlcyA9IGRvX2NvbW1pdChtc2dfZmlsZSwgYXV0aG9yLCBvcHRzLCBmbGFncyk7CisJCQlyZXMgPSBkb19jb21taXQociwgbXNnX2ZpbGUsIGF1dGhvciwgb3B0cywgZmxhZ3MsCisJCQkJCWNvbW1pdD8gJmNvbW1pdC0+b2JqZWN0Lm9pZCA6IE5VTEwpOwogCQllbHNlCiAJCQlyZXMgPSBlcnJvcihfKCJ1bmFibGUgdG8gcGFyc2UgY29tbWl0IGF1dGhvciIpKTsKKwkJKmNoZWNrX3RvZG8gPSAhIShmbGFncyAmIEVESVRfTVNHKTsKKwkJaWYgKCFyZXMgJiYgcmV3b3JkKSB7CitmYXN0X2ZvcndhcmRfZWRpdDoKKwkJCXJlcyA9IHJ1bl9naXRfY29tbWl0KHIsIE5VTEwsIG9wdHMsIEVESVRfTVNHIHwKKwkJCQkJICAgICBWRVJJRllfTVNHIHwgQU1FTkRfTVNHIHwKKwkJCQkJICAgICAoZmxhZ3MgJiBBTExPV19FTVBUWSkpOworCQkJKmNoZWNrX3RvZG8gPSAxOworCQl9CiAJfQogCisKIAlpZiAoIXJlcyAmJiBmaW5hbF9maXh1cCkgewogCQl1bmxpbmsocmViYXNlX3BhdGhfZml4dXBfbXNnKCkpOwogCQl1bmxpbmsocmViYXNlX3BhdGhfc3F1YXNoX21zZygpKTsKQEAgLTE5NjUsMTggKzIwMjcsMTkgQEAKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCByZWFkX2FuZF9yZWZyZXNoX2NhY2hlKHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKK3N0YXRpYyBpbnQgcmVhZF9hbmRfcmVmcmVzaF9jYWNoZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKIHsKIAlzdHJ1Y3QgbG9ja19maWxlIGluZGV4X2xvY2sgPSBMT0NLX0lOSVQ7Ci0JaW50IGluZGV4X2ZkID0gaG9sZF9sb2NrZWRfaW5kZXgoJmluZGV4X2xvY2ssIDApOwotCWlmIChyZWFkX2luZGV4KCZ0aGVfaW5kZXgpIDwgMCkgeworCWludCBpbmRleF9mZCA9IHJlcG9faG9sZF9sb2NrZWRfaW5kZXgociwgJmluZGV4X2xvY2ssIDApOworCWlmIChyZXBvX3JlYWRfaW5kZXgocikgPCAwKSB7CiAJCXJvbGxiYWNrX2xvY2tfZmlsZSgmaW5kZXhfbG9jayk7CiAJCXJldHVybiBlcnJvcihfKCJnaXQgJXM6IGZhaWxlZCB0byByZWFkIHRoZSBpbmRleCIpLAogCQkJXyhhY3Rpb25fbmFtZShvcHRzKSkpOwogCX0KLQlyZWZyZXNoX2luZGV4KCZ0aGVfaW5kZXgsIFJFRlJFU0hfUVVJRVR8UkVGUkVTSF9VTk1FUkdFRCwgTlVMTCwgTlVMTCwgTlVMTCk7CisJcmVmcmVzaF9pbmRleChyLT5pbmRleCwgUkVGUkVTSF9RVUlFVHxSRUZSRVNIX1VOTUVSR0VELCBOVUxMLCBOVUxMLCBOVUxMKTsKIAlpZiAoaW5kZXhfZmQgPj0gMCkgewotCQlpZiAod3JpdGVfbG9ja2VkX2luZGV4KCZ0aGVfaW5kZXgsICZpbmRleF9sb2NrLAorCQlpZiAod3JpdGVfbG9ja2VkX2luZGV4KHItPmluZGV4LCAmaW5kZXhfbG9jaywKIAkJCQkgICAgICAgQ09NTUlUX0xPQ0sgfCBTS0lQX0lGX1VOQ0hBTkdFRCkpIHsKIAkJCXJldHVybiBlcnJvcihfKCJnaXQgJXM6IGZhaWxlZCB0byByZWZyZXNoIHRoZSBpbmRleCIpLAogCQkJCV8oYWN0aW9uX25hbWUob3B0cykpKTsKQEAgLTE5ODksMjYgKzIwNTIsNyBAQAogCVRPRE9fRURJVF9NRVJHRV9NU0cgPSAxCiB9OwogCi1zdHJ1Y3QgdG9kb19pdGVtIHsKLQllbnVtIHRvZG9fY29tbWFuZCBjb21tYW5kOwotCXN0cnVjdCBjb21taXQgKmNvbW1pdDsKLQl1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0JY29uc3QgY2hhciAqYXJnOwotCWludCBhcmdfbGVuOwotCXNpemVfdCBvZmZzZXRfaW5fYnVmOwotfTsKLQotc3RydWN0IHRvZG9fbGlzdCB7Ci0Jc3RydWN0IHN0cmJ1ZiBidWY7Ci0Jc3RydWN0IHRvZG9faXRlbSAqaXRlbXM7Ci0JaW50IG5yLCBhbGxvYywgY3VycmVudDsKLQlpbnQgZG9uZV9uciwgdG90YWxfbnI7Ci0Jc3RydWN0IHN0YXRfZGF0YSBzdGF0OwotfTsKLQotI2RlZmluZSBUT0RPX0xJU1RfSU5JVCB7IFNUUkJVRl9JTklUIH0KLQotc3RhdGljIHZvaWQgdG9kb19saXN0X3JlbGVhc2Uoc3RydWN0IHRvZG9fbGlzdCAqdG9kb19saXN0KQordm9pZCB0b2RvX2xpc3RfcmVsZWFzZShzdHJ1Y3QgdG9kb19saXN0ICp0b2RvX2xpc3QpCiB7CiAJc3RyYnVmX3JlbGVhc2UoJnRvZG9fbGlzdC0+YnVmKTsKIAlGUkVFX0FORF9OVUxMKHRvZG9fbGlzdC0+aXRlbXMpOwpAQCAtMjAxOCwxMCArMjA2MiwzMCBAQAogc3RhdGljIHN0cnVjdCB0b2RvX2l0ZW0gKmFwcGVuZF9uZXdfdG9kbyhzdHJ1Y3QgdG9kb19saXN0ICp0b2RvX2xpc3QpCiB7CiAJQUxMT0NfR1JPVyh0b2RvX2xpc3QtPml0ZW1zLCB0b2RvX2xpc3QtPm5yICsgMSwgdG9kb19saXN0LT5hbGxvYyk7CisJdG9kb19saXN0LT50b3RhbF9ucisrOwogCXJldHVybiB0b2RvX2xpc3QtPml0ZW1zICsgdG9kb19saXN0LT5ucisrOwogfQogCi1zdGF0aWMgaW50IHBhcnNlX2luc25fbGluZShzdHJ1Y3QgdG9kb19pdGVtICppdGVtLCBjb25zdCBjaGFyICpib2wsIGNoYXIgKmVvbCkKK2NvbnN0IGNoYXIgKnRvZG9faXRlbV9nZXRfYXJnKHN0cnVjdCB0b2RvX2xpc3QgKnRvZG9fbGlzdCwKKwkJCSAgICAgIHN0cnVjdCB0b2RvX2l0ZW0gKml0ZW0pCit7CisJcmV0dXJuIHRvZG9fbGlzdC0+YnVmLmJ1ZiArIGl0ZW0tPmFyZ19vZmZzZXQ7Cit9CisKK3N0YXRpYyBpbnQgaXNfY29tbWFuZChlbnVtIHRvZG9fY29tbWFuZCBjb21tYW5kLCBjb25zdCBjaGFyICoqYm9sKQoreworCWNvbnN0IGNoYXIgKnN0ciA9IHRvZG9fY29tbWFuZF9pbmZvW2NvbW1hbmRdLnN0cjsKKwljb25zdCBjaGFyIG5pY2sgPSB0b2RvX2NvbW1hbmRfaW5mb1tjb21tYW5kXS5jOworCWNvbnN0IGNoYXIgKnAgPSAqYm9sICsgMTsKKworCXJldHVybiBza2lwX3ByZWZpeCgqYm9sLCBzdHIsIGJvbCkgfHwKKwkJKChuaWNrICYmICoqYm9sID09IG5pY2spICYmCisJCSAoKnAgPT0gJyAnIHx8ICpwID09ICdcdCcgfHwgKnAgPT0gJ1xuJyB8fCAqcCA9PSAnXHInIHx8ICEqcCkgJiYKKwkJICgqYm9sID0gcCkpOworfQorCitzdGF0aWMgaW50IHBhcnNlX2luc25fbGluZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHRvZG9faXRlbSAqaXRlbSwKKwkJCSAgIGNvbnN0IGNoYXIgKmJ1ZiwgY29uc3QgY2hhciAqYm9sLCBjaGFyICplb2wpCiB7CiAJc3RydWN0IG9iamVjdF9pZCBjb21taXRfb2lkOwogCWNoYXIgKmVuZF9vZl9vYmplY3RfbmFtZTsKQEAgLTIwMzUsMTggKzIwOTksMTMgQEAKIAlpZiAoYm9sID09IGVvbCB8fCAqYm9sID09ICdccicgfHwgKmJvbCA9PSBjb21tZW50X2xpbmVfY2hhcikgewogCQlpdGVtLT5jb21tYW5kID0gVE9ET19DT01NRU5UOwogCQlpdGVtLT5jb21taXQgPSBOVUxMOwotCQlpdGVtLT5hcmcgPSBib2w7CisJCWl0ZW0tPmFyZ19vZmZzZXQgPSBib2wgLSBidWY7CiAJCWl0ZW0tPmFyZ19sZW4gPSBlb2wgLSBib2w7CiAJCXJldHVybiAwOwogCX0KIAogCWZvciAoaSA9IDA7IGkgPCBUT0RPX0NPTU1FTlQ7IGkrKykKLQkJaWYgKHNraXBfcHJlZml4KGJvbCwgdG9kb19jb21tYW5kX2luZm9baV0uc3RyLCAmYm9sKSkgewotCQkJaXRlbS0+Y29tbWFuZCA9IGk7Ci0JCQlicmVhazsKLQkJfSBlbHNlIGlmICgoYm9sICsgMSA9PSBlb2wgfHwgYm9sWzFdID09ICcgJykgJiYKLQkJCSAgICpib2wgPT0gdG9kb19jb21tYW5kX2luZm9baV0uYykgewotCQkJYm9sKys7CisJCWlmIChpc19jb21tYW5kKGksICZib2wpKSB7CiAJCQlpdGVtLT5jb21tYW5kID0gaTsKIAkJCWJyZWFrOwogCQl9CkBAIC0yMDYyLDcgKzIxMjEsNyBAQAogCQkJcmV0dXJuIGVycm9yKF8oIiVzIGRvZXMgbm90IGFjY2VwdCBhcmd1bWVudHM6ICclcyciKSwKIAkJCQkgICAgIGNvbW1hbmRfdG9fc3RyaW5nKGl0ZW0tPmNvbW1hbmQpLCBib2wpOwogCQlpdGVtLT5jb21taXQgPSBOVUxMOwotCQlpdGVtLT5hcmcgPSBib2w7CisJCWl0ZW0tPmFyZ19vZmZzZXQgPSBib2wgLSBidWY7CiAJCWl0ZW0tPmFyZ19sZW4gPSBlb2wgLSBib2w7CiAJCXJldHVybiAwOwogCX0KQEAgLTIwNzQsNyArMjEzMyw3IEBACiAJaWYgKGl0ZW0tPmNvbW1hbmQgPT0gVE9ET19FWEVDIHx8IGl0ZW0tPmNvbW1hbmQgPT0gVE9ET19MQUJFTCB8fAogCSAgICBpdGVtLT5jb21tYW5kID09IFRPRE9fUkVTRVQpIHsKIAkJaXRlbS0+Y29tbWl0ID0gTlVMTDsKLQkJaXRlbS0+YXJnID0gYm9sOworCQlpdGVtLT5hcmdfb2Zmc2V0ID0gYm9sIC0gYnVmOwogCQlpdGVtLT5hcmdfbGVuID0gKGludCkoZW9sIC0gYm9sKTsKIAkJcmV0dXJuIDA7CiAJfQpAQCAtMjA4OCw3ICsyMTQ3LDcgQEAKIAkJfSBlbHNlIHsKIAkJCWl0ZW0tPmZsYWdzIHw9IFRPRE9fRURJVF9NRVJHRV9NU0c7CiAJCQlpdGVtLT5jb21taXQgPSBOVUxMOwotCQkJaXRlbS0+YXJnID0gYm9sOworCQkJaXRlbS0+YXJnX29mZnNldCA9IGJvbCAtIGJ1ZjsKIAkJCWl0ZW0tPmFyZ19sZW4gPSAoaW50KShlb2wgLSBib2wpOwogCQkJcmV0dXJuIDA7CiAJCX0KQEAgLTIwOTgsMjQgKzIxNTcsNTcgQEAKIAlzYXZlZCA9ICplbmRfb2Zfb2JqZWN0X25hbWU7CiAJKmVuZF9vZl9vYmplY3RfbmFtZSA9ICdcMCc7CiAJc3RhdHVzID0gZ2V0X29pZChib2wsICZjb21taXRfb2lkKTsKKwlpZiAoc3RhdHVzIDwgMCkKKwkJZXJyb3IoXygiY291bGQgbm90IHBhcnNlICclcyciKSwgYm9sKTsgLyogcmV0dXJuIGxhdGVyICovCiAJKmVuZF9vZl9vYmplY3RfbmFtZSA9IHNhdmVkOwogCi0JaXRlbS0+YXJnID0gZW5kX29mX29iamVjdF9uYW1lICsgc3Ryc3BuKGVuZF9vZl9vYmplY3RfbmFtZSwgIiBcdCIpOwotCWl0ZW0tPmFyZ19sZW4gPSAoaW50KShlb2wgLSBpdGVtLT5hcmcpOworCWJvbCA9IGVuZF9vZl9vYmplY3RfbmFtZSArIHN0cnNwbihlbmRfb2Zfb2JqZWN0X25hbWUsICIgXHQiKTsKKwlpdGVtLT5hcmdfb2Zmc2V0ID0gYm9sIC0gYnVmOworCWl0ZW0tPmFyZ19sZW4gPSAoaW50KShlb2wgLSBib2wpOwogCiAJaWYgKHN0YXR1cyA8IDApCi0JCXJldHVybiAtMTsKKwkJcmV0dXJuIHN0YXR1czsKIAotCWl0ZW0tPmNvbW1pdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHRoZV9yZXBvc2l0b3J5LCAmY29tbWl0X29pZCk7Ci0JcmV0dXJuICFpdGVtLT5jb21taXQ7CisJaXRlbS0+Y29tbWl0ID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2UociwgJmNvbW1pdF9vaWQpOworCXJldHVybiBpdGVtLT5jb21taXQgPyAwIDogLTE7CiB9CiAKLXN0YXRpYyBpbnQgcGFyc2VfaW5zbl9idWZmZXIoY2hhciAqYnVmLCBzdHJ1Y3QgdG9kb19saXN0ICp0b2RvX2xpc3QpCitpbnQgc2VxdWVuY2VyX2dldF9sYXN0X2NvbW1hbmQoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGVudW0gcmVwbGF5X2FjdGlvbiAqYWN0aW9uKQoreworCWNvbnN0IGNoYXIgKnRvZG9fZmlsZSwgKmJvbDsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOworCWludCByZXQgPSAwOworCisJdG9kb19maWxlID0gZ2l0X3BhdGhfdG9kb19maWxlKCk7CisJaWYgKHN0cmJ1Zl9yZWFkX2ZpbGUoJmJ1ZiwgdG9kb19maWxlLCAwKSA8IDApIHsKKwkJaWYgKGVycm5vID09IEVOT0VOVCB8fCBlcnJubyA9PSBFTk9URElSKQorCQkJcmV0dXJuIC0xOworCQllbHNlCisJCQlyZXR1cm4gZXJyb3JfZXJybm8oInVuYWJsZSB0byBvcGVuICclcyciLCB0b2RvX2ZpbGUpOworCX0KKwlib2wgPSBidWYuYnVmICsgc3Ryc3BuKGJ1Zi5idWYsICIgXHRcclxuIik7CisJaWYgKGlzX2NvbW1hbmQoVE9ET19QSUNLLCAmYm9sKSAmJiAoKmJvbCA9PSAnICcgfHwgKmJvbCA9PSAnXHQnKSkKKwkJKmFjdGlvbiA9IFJFUExBWV9QSUNLOworCWVsc2UgaWYgKGlzX2NvbW1hbmQoVE9ET19SRVZFUlQsICZib2wpICYmCisJCSAoKmJvbCA9PSAnICcgfHwgKmJvbCA9PSAnXHQnKSkKKwkJKmFjdGlvbiA9IFJFUExBWV9SRVZFUlQ7CisJZWxzZQorCQlyZXQgPSAtMTsKKworCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOworCisJcmV0dXJuIHJldDsKK30KKworaW50IHRvZG9fbGlzdF9wYXJzZV9pbnNuX2J1ZmZlcihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY2hhciAqYnVmLAorCQkJCXN0cnVjdCB0b2RvX2xpc3QgKnRvZG9fbGlzdCkKIHsKIAlzdHJ1Y3QgdG9kb19pdGVtICppdGVtOwogCWNoYXIgKnAgPSBidWYsICpuZXh0X3A7CiAJaW50IGksIHJlcyA9IDAsIGZpeHVwX29rYXkgPSBmaWxlX2V4aXN0cyhyZWJhc2VfcGF0aF9kb25lKCkpOwogCisJdG9kb19saXN0LT5jdXJyZW50ID0gdG9kb19saXN0LT5uciA9IDA7CisKIAlmb3IgKGkgPSAxOyAqcDsgaSsrLCBwID0gbmV4dF9wKSB7CiAJCWNoYXIgKmVvbCA9IHN0cmNocm51bChwLCAnXG4nKTsKIApAQCAtMjEyNiwxMCArMjIxOCwxMyBAQAogCiAJCWl0ZW0gPSBhcHBlbmRfbmV3X3RvZG8odG9kb19saXN0KTsKIAkJaXRlbS0+b2Zmc2V0X2luX2J1ZiA9IHAgLSB0b2RvX2xpc3QtPmJ1Zi5idWY7Ci0JCWlmIChwYXJzZV9pbnNuX2xpbmUoaXRlbSwgcCwgZW9sKSkgeworCQlpZiAocGFyc2VfaW5zbl9saW5lKHIsIGl0ZW0sIGJ1ZiwgcCwgZW9sKSkgewogCQkJcmVzID0gZXJyb3IoXygiaW52YWxpZCBsaW5lICVkOiAlLipzIiksCiAJCQkJaSwgKGludCkoZW9sIC0gcCksIHApOwotCQkJaXRlbS0+Y29tbWFuZCA9IFRPRE9fTk9PUDsKKwkJCWl0ZW0tPmNvbW1hbmQgPSBUT0RPX0NPTU1FTlQgKyAxOworCQkJaXRlbS0+YXJnX29mZnNldCA9IHAgLSBidWY7CisJCQlpdGVtLT5hcmdfbGVuID0gKGludCkoZW9sIC0gcCk7CisJCQlpdGVtLT5jb21taXQgPSBOVUxMOwogCQl9CiAKIAkJaWYgKGZpeHVwX29rYXkpCkBAIC0yMTg3LDggKzIyODIsNzIgQEAKIAlyZXR1cm4gbGVuOwogfQogCi1zdGF0aWMgaW50IHJlYWRfcG9wdWxhdGVfdG9kbyhzdHJ1Y3QgdG9kb19saXN0ICp0b2RvX2xpc3QsCi0JCQlzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMpCitzdGF0aWMgaW50IGhhdmVfZmluaXNoZWRfdGhlX2xhc3RfcGljayh2b2lkKQoreworCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CisJY29uc3QgY2hhciAqZW9sOworCWNvbnN0IGNoYXIgKnRvZG9fcGF0aCA9IGdpdF9wYXRoX3RvZG9fZmlsZSgpOworCWludCByZXQgPSAwOworCisJaWYgKHN0cmJ1Zl9yZWFkX2ZpbGUoJmJ1ZiwgdG9kb19wYXRoLCAwKSA8IDApIHsKKwkJaWYgKGVycm5vID09IEVOT0VOVCkgeworCQkJcmV0dXJuIDA7CisJCX0gZWxzZSB7CisJCQllcnJvcl9lcnJubygidW5hYmxlIHRvIG9wZW4gJyVzJyIsIHRvZG9fcGF0aCk7CisJCQlyZXR1cm4gMDsKKwkJfQorCX0KKwkvKiBJZiB0aGVyZSBpcyBvbmx5IG9uZSBsaW5lIHRoZW4gd2UgYXJlIGRvbmUgKi8KKwllb2wgPSBzdHJjaHIoYnVmLmJ1ZiwgJ1xuJyk7CisJaWYgKCFlb2wgfHwgIWVvbFsxXSkKKwkJcmV0ID0gMTsKKworCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOworCisJcmV0dXJuIHJldDsKK30KKwordm9pZCBzZXF1ZW5jZXJfcG9zdF9jb21taXRfY2xlYW51cChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgaW50IHZlcmJvc2UpCit7CisJc3RydWN0IHJlcGxheV9vcHRzIG9wdHMgPSBSRVBMQVlfT1BUU19JTklUOworCWludCBuZWVkX2NsZWFudXAgPSAwOworCisJaWYgKGZpbGVfZXhpc3RzKGdpdF9wYXRoX2NoZXJyeV9waWNrX2hlYWQocikpKSB7CisJCWlmICghdW5saW5rKGdpdF9wYXRoX2NoZXJyeV9waWNrX2hlYWQocikpICYmIHZlcmJvc2UpCisJCQl3YXJuaW5nKF8oImNhbmNlbGxpbmcgYSBjaGVycnkgcGlja2luZyBpbiBwcm9ncmVzcyIpKTsKKwkJb3B0cy5hY3Rpb24gPSBSRVBMQVlfUElDSzsKKwkJbmVlZF9jbGVhbnVwID0gMTsKKwl9CisKKwlpZiAoZmlsZV9leGlzdHMoZ2l0X3BhdGhfcmV2ZXJ0X2hlYWQocikpKSB7CisJCWlmICghdW5saW5rKGdpdF9wYXRoX3JldmVydF9oZWFkKHIpKSAmJiB2ZXJib3NlKQorCQkJd2FybmluZyhfKCJjYW5jZWxsaW5nIGEgcmV2ZXJ0IGluIHByb2dyZXNzIikpOworCQlvcHRzLmFjdGlvbiA9IFJFUExBWV9SRVZFUlQ7CisJCW5lZWRfY2xlYW51cCA9IDE7CisJfQorCisJaWYgKCFuZWVkX2NsZWFudXApCisJCXJldHVybjsKKworCWlmICghaGF2ZV9maW5pc2hlZF90aGVfbGFzdF9waWNrKCkpCisJCXJldHVybjsKKworCXNlcXVlbmNlcl9yZW1vdmVfc3RhdGUoJm9wdHMpOworfQorCitzdGF0aWMgdm9pZCB0b2RvX2xpc3Rfd3JpdGVfdG90YWxfbnIoc3RydWN0IHRvZG9fbGlzdCAqdG9kb19saXN0KQoreworCUZJTEUgKmYgPSBmb3Blbl9vcl93YXJuKHJlYmFzZV9wYXRoX21zZ3RvdGFsKCksICJ3Iik7CisKKwlpZiAoZikgeworCQlmcHJpbnRmKGYsICIlZFxuIiwgdG9kb19saXN0LT50b3RhbF9ucik7CisJCWZjbG9zZShmKTsKKwl9Cit9CisKK3N0YXRpYyBpbnQgcmVhZF9wb3B1bGF0ZV90b2RvKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgICAgc3RydWN0IHRvZG9fbGlzdCAqdG9kb19saXN0LAorCQkJICAgICAgc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKQogewogCXN0cnVjdCBzdGF0IHN0OwogCWNvbnN0IGNoYXIgKnRvZG9fZmlsZSA9IGdldF90b2RvX3BhdGgob3B0cyk7CkBAIC0yMjAzLDcgKzIzNjIsNyBAQAogCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHN0YXQgJyVzJyIpLCB0b2RvX2ZpbGUpOwogCWZpbGxfc3RhdF9kYXRhKCZ0b2RvX2xpc3QtPnN0YXQsICZzdCk7CiAKLQlyZXMgPSBwYXJzZV9pbnNuX2J1ZmZlcih0b2RvX2xpc3QtPmJ1Zi5idWYsIHRvZG9fbGlzdCk7CisJcmVzID0gdG9kb19saXN0X3BhcnNlX2luc25fYnVmZmVyKHIsIHRvZG9fbGlzdC0+YnVmLmJ1ZiwgdG9kb19saXN0KTsKIAlpZiAocmVzKSB7CiAJCWlmIChpc19yZWJhc2VfaShvcHRzKSkKIAkJCXJldHVybiBlcnJvcihfKCJwbGVhc2UgZml4IHRoaXMgdXNpbmcgIgpAQCAtMjIzMSwxMCArMjM5MCw5IEBACiAKIAlpZiAoaXNfcmViYXNlX2kob3B0cykpIHsKIAkJc3RydWN0IHRvZG9fbGlzdCBkb25lID0gVE9ET19MSVNUX0lOSVQ7Ci0JCUZJTEUgKmYgPSBmb3Blbl9vcl93YXJuKHJlYmFzZV9wYXRoX21zZ3RvdGFsKCksICJ3Iik7CiAKIAkJaWYgKHN0cmJ1Zl9yZWFkX2ZpbGUoJmRvbmUuYnVmLCByZWJhc2VfcGF0aF9kb25lKCksIDApID4gMCAmJgotCQkJCSFwYXJzZV9pbnNuX2J1ZmZlcihkb25lLmJ1Zi5idWYsICZkb25lKSkKKwkJICAgICF0b2RvX2xpc3RfcGFyc2VfaW5zbl9idWZmZXIociwgZG9uZS5idWYuYnVmLCAmZG9uZSkpCiAJCQl0b2RvX2xpc3QtPmRvbmVfbnIgPSBjb3VudF9jb21tYW5kcygmZG9uZSk7CiAJCWVsc2UKIAkJCXRvZG9fbGlzdC0+ZG9uZV9uciA9IDA7CkBAIC0yMjQzLDEwICsyNDAxLDcgQEAKIAkJCSsgY291bnRfY29tbWFuZHModG9kb19saXN0KTsKIAkJdG9kb19saXN0X3JlbGVhc2UoJmRvbmUpOwogCi0JCWlmIChmKSB7Ci0JCQlmcHJpbnRmKGYsICIlZFxuIiwgdG9kb19saXN0LT50b3RhbF9ucik7Ci0JCQlmY2xvc2UoZik7Ci0JCX0KKwkJdG9kb19saXN0X3dyaXRlX3RvdGFsX25yKHRvZG9fbGlzdCk7CiAJfQogCiAJcmV0dXJuIDA7CkBAIC0yMjczLDYgKzI0MjgsMTUgQEAKIAkJb3B0cy0+bm9fY29tbWl0ID0gZ2l0X2NvbmZpZ19ib29sX29yX2ludChrZXksIHZhbHVlLCAmZXJyb3JfZmxhZyk7CiAJZWxzZSBpZiAoIXN0cmNtcChrZXksICJvcHRpb25zLmVkaXQiKSkKIAkJb3B0cy0+ZWRpdCA9IGdpdF9jb25maWdfYm9vbF9vcl9pbnQoa2V5LCB2YWx1ZSwgJmVycm9yX2ZsYWcpOworCWVsc2UgaWYgKCFzdHJjbXAoa2V5LCAib3B0aW9ucy5hbGxvdy1lbXB0eSIpKQorCQlvcHRzLT5hbGxvd19lbXB0eSA9CisJCQlnaXRfY29uZmlnX2Jvb2xfb3JfaW50KGtleSwgdmFsdWUsICZlcnJvcl9mbGFnKTsKKwllbHNlIGlmICghc3RyY21wKGtleSwgIm9wdGlvbnMuYWxsb3ctZW1wdHktbWVzc2FnZSIpKQorCQlvcHRzLT5hbGxvd19lbXB0eV9tZXNzYWdlID0KKwkJCWdpdF9jb25maWdfYm9vbF9vcl9pbnQoa2V5LCB2YWx1ZSwgJmVycm9yX2ZsYWcpOworCWVsc2UgaWYgKCFzdHJjbXAoa2V5LCAib3B0aW9ucy5rZWVwLXJlZHVuZGFudC1jb21taXRzIikpCisJCW9wdHMtPmtlZXBfcmVkdW5kYW50X2NvbW1pdHMgPQorCQkJZ2l0X2NvbmZpZ19ib29sX29yX2ludChrZXksIHZhbHVlLCAmZXJyb3JfZmxhZyk7CiAJZWxzZSBpZiAoIXN0cmNtcChrZXksICJvcHRpb25zLnNpZ25vZmYiKSkKIAkJb3B0cy0+c2lnbm9mZiA9IGdpdF9jb25maWdfYm9vbF9vcl9pbnQoa2V5LCB2YWx1ZSwgJmVycm9yX2ZsYWcpOwogCWVsc2UgaWYgKCFzdHJjbXAoa2V5LCAib3B0aW9ucy5yZWNvcmQtb3JpZ2luIikpCkBAIC0yMjkyLDcgKzI0NTYsMTAgQEAKIAkJb3B0cy0+YWxsb3dfcmVyZXJlX2F1dG8gPQogCQkJZ2l0X2NvbmZpZ19ib29sX29yX2ludChrZXksIHZhbHVlLCAmZXJyb3JfZmxhZykgPwogCQkJCVJFUkVSRV9BVVRPVVBEQVRFIDogUkVSRVJFX05PQVVUT1VQREFURTsKLQllbHNlCisJZWxzZSBpZiAoIXN0cmNtcChrZXksICJvcHRpb25zLmRlZmF1bHQtbXNnLWNsZWFudXAiKSkgeworCQlvcHRzLT5leHBsaWNpdF9jbGVhbnVwID0gMTsKKwkJb3B0cy0+ZGVmYXVsdF9tc2dfY2xlYW51cCA9IGdldF9jbGVhbnVwX21vZGUodmFsdWUsIDEpOworCX0gZWxzZQogCQlyZXR1cm4gZXJyb3IoXygiaW52YWxpZCBrZXk6ICVzIiksIGtleSk7CiAKIAlpZiAoIWVycm9yX2ZsYWcpCkBAIC0yMzU3LDExICsyNTI0LDIzIEBACiAJCWlmIChmaWxlX2V4aXN0cyhyZWJhc2VfcGF0aF92ZXJib3NlKCkpKQogCQkJb3B0cy0+dmVyYm9zZSA9IDE7CiAKKwkJaWYgKGZpbGVfZXhpc3RzKHJlYmFzZV9wYXRoX3F1aWV0KCkpKQorCQkJb3B0cy0+cXVpZXQgPSAxOworCiAJCWlmIChmaWxlX2V4aXN0cyhyZWJhc2VfcGF0aF9zaWdub2ZmKCkpKSB7CiAJCQlvcHRzLT5hbGxvd19mZiA9IDA7CiAJCQlvcHRzLT5zaWdub2ZmID0gMTsKIAkJfQogCisJCWlmIChmaWxlX2V4aXN0cyhyZWJhc2VfcGF0aF9yZXNjaGVkdWxlX2ZhaWxlZF9leGVjKCkpKQorCQkJb3B0cy0+cmVzY2hlZHVsZV9mYWlsZWRfZXhlYyA9IDE7CisKKwkJaWYgKGZpbGVfZXhpc3RzKHJlYmFzZV9wYXRoX2Ryb3BfcmVkdW5kYW50X2NvbW1pdHMoKSkpCisJCQlvcHRzLT5kcm9wX3JlZHVuZGFudF9jb21taXRzID0gMTsKKworCQlpZiAoZmlsZV9leGlzdHMocmViYXNlX3BhdGhfa2VlcF9yZWR1bmRhbnRfY29tbWl0cygpKSkKKwkJCW9wdHMtPmtlZXBfcmVkdW5kYW50X2NvbW1pdHMgPSAxOworCiAJCXJlYWRfc3RyYXRlZ3lfb3B0cyhvcHRzLCAmYnVmKTsKIAkJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CiAKQEAgLTI0MTEsMjIgKzI1OTAsMTggQEAKIH0KIAogaW50IHdyaXRlX2Jhc2ljX3N0YXRlKHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywgY29uc3QgY2hhciAqaGVhZF9uYW1lLAotCQkgICAgICBjb25zdCBjaGFyICpvbnRvLCBjb25zdCBjaGFyICpvcmlnX2hlYWQpCisJCSAgICAgIHN0cnVjdCBjb21taXQgKm9udG8sIGNvbnN0IGNoYXIgKm9yaWdfaGVhZCkKIHsKLQljb25zdCBjaGFyICpxdWlldCA9IGdldGVudigiR0lUX1FVSUVUIik7Ci0KIAlpZiAoaGVhZF9uYW1lKQogCQl3cml0ZV9maWxlKHJlYmFzZV9wYXRoX2hlYWRfbmFtZSgpLCAiJXNcbiIsIGhlYWRfbmFtZSk7CiAJaWYgKG9udG8pCi0JCXdyaXRlX2ZpbGUocmViYXNlX3BhdGhfb250bygpLCAiJXNcbiIsIG9udG8pOworCQl3cml0ZV9maWxlKHJlYmFzZV9wYXRoX29udG8oKSwgIiVzXG4iLAorCQkJICAgb2lkX3RvX2hleCgmb250by0+b2JqZWN0Lm9pZCkpOwogCWlmIChvcmlnX2hlYWQpCiAJCXdyaXRlX2ZpbGUocmViYXNlX3BhdGhfb3JpZ19oZWFkKCksICIlc1xuIiwgb3JpZ19oZWFkKTsKIAotCWlmIChxdWlldCkKLQkJd3JpdGVfZmlsZShyZWJhc2VfcGF0aF9xdWlldCgpLCAiJXNcbiIsIHF1aWV0KTsKLQllbHNlCi0JCXdyaXRlX2ZpbGUocmViYXNlX3BhdGhfcXVpZXQoKSwgIlxuIik7Ci0KKwlpZiAob3B0cy0+cXVpZXQpCisJCXdyaXRlX2ZpbGUocmViYXNlX3BhdGhfcXVpZXQoKSwgIiVzIiwgIiIpOwogCWlmIChvcHRzLT52ZXJib3NlKQogCQl3cml0ZV9maWxlKHJlYmFzZV9wYXRoX3ZlcmJvc2UoKSwgIiVzIiwgIiIpOwogCWlmIChvcHRzLT5zdHJhdGVneSkKQEAgLTI0NDMsNiArMjYxOCwxMiBAQAogCQl3cml0ZV9maWxlKHJlYmFzZV9wYXRoX2dwZ19zaWduX29wdCgpLCAiLVMlc1xuIiwgb3B0cy0+Z3BnX3NpZ24pOwogCWlmIChvcHRzLT5zaWdub2ZmKQogCQl3cml0ZV9maWxlKHJlYmFzZV9wYXRoX3NpZ25vZmYoKSwgIi0tc2lnbm9mZlxuIik7CisJaWYgKG9wdHMtPmRyb3BfcmVkdW5kYW50X2NvbW1pdHMpCisJCXdyaXRlX2ZpbGUocmViYXNlX3BhdGhfZHJvcF9yZWR1bmRhbnRfY29tbWl0cygpLCAiJXMiLCAiIik7CisJaWYgKG9wdHMtPmtlZXBfcmVkdW5kYW50X2NvbW1pdHMpCisJCXdyaXRlX2ZpbGUocmViYXNlX3BhdGhfa2VlcF9yZWR1bmRhbnRfY29tbWl0cygpLCAiJXMiLCAiIik7CisJaWYgKG9wdHMtPnJlc2NoZWR1bGVfZmFpbGVkX2V4ZWMpCisJCXdyaXRlX2ZpbGUocmViYXNlX3BhdGhfcmVzY2hlZHVsZV9mYWlsZWRfZXhlYygpLCAiJXMiLCAiIik7CiAKIAlyZXR1cm4gMDsKIH0KQEAgLTI0NTMsMjAgKzI2MzQsMjMgQEAKIAllbnVtIHRvZG9fY29tbWFuZCBjb21tYW5kID0gb3B0cy0+YWN0aW9uID09IFJFUExBWV9QSUNLID8KIAkJVE9ET19QSUNLIDogVE9ET19SRVZFUlQ7CiAJY29uc3QgY2hhciAqY29tbWFuZF9zdHJpbmcgPSB0b2RvX2NvbW1hbmRfaW5mb1tjb21tYW5kXS5zdHI7CisJY29uc3QgY2hhciAqZW5jb2Rpbmc7CiAJc3RydWN0IGNvbW1pdCAqY29tbWl0OwogCiAJaWYgKHByZXBhcmVfcmV2cyhvcHRzKSkKIAkJcmV0dXJuIC0xOwogCisJZW5jb2RpbmcgPSBnZXRfbG9nX291dHB1dF9lbmNvZGluZygpOworCiAJd2hpbGUgKChjb21taXQgPSBnZXRfcmV2aXNpb24ob3B0cy0+cmV2cykpKSB7CiAJCXN0cnVjdCB0b2RvX2l0ZW0gKml0ZW0gPSBhcHBlbmRfbmV3X3RvZG8odG9kb19saXN0KTsKLQkJY29uc3QgY2hhciAqY29tbWl0X2J1ZmZlciA9IGdldF9jb21taXRfYnVmZmVyKGNvbW1pdCwgTlVMTCk7CisJCWNvbnN0IGNoYXIgKmNvbW1pdF9idWZmZXIgPSBsb2dtc2dfcmVlbmNvZGUoY29tbWl0LCBOVUxMLCBlbmNvZGluZyk7CiAJCWNvbnN0IGNoYXIgKnN1YmplY3Q7CiAJCWludCBzdWJqZWN0X2xlbjsKIAogCQlpdGVtLT5jb21tYW5kID0gY29tbWFuZDsKIAkJaXRlbS0+Y29tbWl0ID0gY29tbWl0OwotCQlpdGVtLT5hcmcgPSBOVUxMOworCQlpdGVtLT5hcmdfb2Zmc2V0ID0gMDsKIAkJaXRlbS0+YXJnX2xlbiA9IDA7CiAJCWl0ZW0tPm9mZnNldF9pbl9idWYgPSB0b2RvX2xpc3QtPmJ1Zi5sZW47CiAJCXN1YmplY3RfbGVuID0gZmluZF9jb21taXRfc3ViamVjdChjb21taXRfYnVmZmVyLCAmc3ViamVjdCk7CkBAIC0yNDgxLDE1ICsyNjY1LDQxIEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgY3JlYXRlX3NlcV9kaXIodm9pZCkKK3N0YXRpYyBpbnQgY3JlYXRlX3NlcV9kaXIoc3RydWN0IHJlcG9zaXRvcnkgKnIpCiB7Ci0JaWYgKGZpbGVfZXhpc3RzKGdpdF9wYXRoX3NlcV9kaXIoKSkpIHsKLQkJZXJyb3IoXygiYSBjaGVycnktcGljayBvciByZXZlcnQgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIpKTsKLQkJYWR2aXNlKF8oInRyeSBcImdpdCBjaGVycnktcGljayAoLS1jb250aW51ZSB8IC0tcXVpdCB8IC0tYWJvcnQpXCIiKSk7CisJZW51bSByZXBsYXlfYWN0aW9uIGFjdGlvbjsKKwljb25zdCBjaGFyICppbl9wcm9ncmVzc19lcnJvciA9IE5VTEw7CisJY29uc3QgY2hhciAqaW5fcHJvZ3Jlc3NfYWR2aWNlID0gTlVMTDsKKwl1bnNpZ25lZCBpbnQgYWR2aXNlX3NraXAgPSBmaWxlX2V4aXN0cyhnaXRfcGF0aF9yZXZlcnRfaGVhZChyKSkgfHwKKwkJCQlmaWxlX2V4aXN0cyhnaXRfcGF0aF9jaGVycnlfcGlja19oZWFkKHIpKTsKKworCWlmICghc2VxdWVuY2VyX2dldF9sYXN0X2NvbW1hbmQociwgJmFjdGlvbikpIHsKKwkJc3dpdGNoIChhY3Rpb24pIHsKKwkJY2FzZSBSRVBMQVlfUkVWRVJUOgorCQkJaW5fcHJvZ3Jlc3NfZXJyb3IgPSBfKCJyZXZlcnQgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyIpOworCQkJaW5fcHJvZ3Jlc3NfYWR2aWNlID0KKwkJCV8oInRyeSBcImdpdCByZXZlcnQgKC0tY29udGludWUgfCAlcy0tYWJvcnQgfCAtLXF1aXQpXCIiKTsKKwkJCWJyZWFrOworCQljYXNlIFJFUExBWV9QSUNLOgorCQkJaW5fcHJvZ3Jlc3NfZXJyb3IgPSBfKCJjaGVycnktcGljayBpcyBhbHJlYWR5IGluIHByb2dyZXNzIik7CisJCQlpbl9wcm9ncmVzc19hZHZpY2UgPQorCQkJXygidHJ5IFwiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgJXMtLWFib3J0IHwgLS1xdWl0KVwiIik7CisJCQlicmVhazsKKwkJZGVmYXVsdDoKKwkJCUJVRygidW5leHBlY3RlZCBhY3Rpb24gaW4gY3JlYXRlX3NlcV9kaXIiKTsKKwkJfQorCX0KKwlpZiAoaW5fcHJvZ3Jlc3NfZXJyb3IpIHsKKwkJZXJyb3IoIiVzIiwgaW5fcHJvZ3Jlc3NfZXJyb3IpOworCQlpZiAoYWR2aWNlX3NlcXVlbmNlcl9pbl91c2UpCisJCQlhZHZpc2UoaW5fcHJvZ3Jlc3NfYWR2aWNlLAorCQkJCWFkdmlzZV9za2lwID8gIi0tc2tpcCB8ICIgOiAiIik7CiAJCXJldHVybiAtMTsKLQl9IGVsc2UgaWYgKG1rZGlyKGdpdF9wYXRoX3NlcV9kaXIoKSwgMDc3NykgPCAwKQorCX0KKwlpZiAobWtkaXIoZ2l0X3BhdGhfc2VxX2RpcigpLCAwNzc3KSA8IDApCiAJCXJldHVybiBlcnJvcl9lcnJubyhfKCJjb3VsZCBub3QgY3JlYXRlIHNlcXVlbmNlciBkaXJlY3RvcnkgJyVzJyIpLAogCQkJCSAgIGdpdF9wYXRoX3NlcV9kaXIoKSk7CisKIAlyZXR1cm4gMDsKIH0KIApAQCAtMjU0MCwzMiArMjc1MCw0NiBAQAogCXJldHVybiBvaWRlcSgmYWN0dWFsX2hlYWQsICZleHBlY3RlZF9oZWFkKTsKIH0KIAotc3RhdGljIGludCByZXNldF9mb3Jfcm9sbGJhY2soY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQorc3RhdGljIGludCByZXNldF9tZXJnZShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0JY29uc3QgY2hhciAqYXJndls0XTsJLyogcmVzZXQgLS1tZXJnZSA8YXJnPiArIE5VTEwgKi8KKwlpbnQgcmV0OworCXN0cnVjdCBhcmd2X2FycmF5IGFyZ3YgPSBBUkdWX0FSUkFZX0lOSVQ7CiAKLQlhcmd2WzBdID0gInJlc2V0IjsKLQlhcmd2WzFdID0gIi0tbWVyZ2UiOwotCWFyZ3ZbMl0gPSBvaWRfdG9faGV4KG9pZCk7Ci0JYXJndlszXSA9IE5VTEw7Ci0JcmV0dXJuIHJ1bl9jb21tYW5kX3Zfb3B0KGFyZ3YsIFJVTl9HSVRfQ01EKTsKKwlhcmd2X2FycmF5X3B1c2hsKCZhcmd2LCAicmVzZXQiLCAiLS1tZXJnZSIsIE5VTEwpOworCisJaWYgKCFpc19udWxsX29pZChvaWQpKQorCQlhcmd2X2FycmF5X3B1c2goJmFyZ3YsIG9pZF90b19oZXgob2lkKSk7CisKKwlyZXQgPSBydW5fY29tbWFuZF92X29wdChhcmd2LmFyZ3YsIFJVTl9HSVRfQ01EKTsKKwlhcmd2X2FycmF5X2NsZWFyKCZhcmd2KTsKKworCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgcm9sbGJhY2tfc2luZ2xlX3BpY2sodm9pZCkKK3N0YXRpYyBpbnQgcm9sbGJhY2tfc2luZ2xlX3BpY2soc3RydWN0IHJlcG9zaXRvcnkgKnIpCiB7CiAJc3RydWN0IG9iamVjdF9pZCBoZWFkX29pZDsKIAotCWlmICghZmlsZV9leGlzdHMoZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZCh0aGVfcmVwb3NpdG9yeSkpICYmCi0JICAgICFmaWxlX2V4aXN0cyhnaXRfcGF0aF9yZXZlcnRfaGVhZCh0aGVfcmVwb3NpdG9yeSkpKQorCWlmICghZmlsZV9leGlzdHMoZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZChyKSkgJiYKKwkgICAgIWZpbGVfZXhpc3RzKGdpdF9wYXRoX3JldmVydF9oZWFkKHIpKSkKIAkJcmV0dXJuIGVycm9yKF8oIm5vIGNoZXJyeS1waWNrIG9yIHJldmVydCBpbiBwcm9ncmVzcyIpKTsKIAlpZiAocmVhZF9yZWZfZnVsbCgiSEVBRCIsIDAsICZoZWFkX29pZCwgTlVMTCkpCiAJCXJldHVybiBlcnJvcihfKCJjYW5ub3QgcmVzb2x2ZSBIRUFEIikpOwogCWlmIChpc19udWxsX29pZCgmaGVhZF9vaWQpKQogCQlyZXR1cm4gZXJyb3IoXygiY2Fubm90IGFib3J0IGZyb20gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4iKSk7Ci0JcmV0dXJuIHJlc2V0X2Zvcl9yb2xsYmFjaygmaGVhZF9vaWQpOworCXJldHVybiByZXNldF9tZXJnZSgmaGVhZF9vaWQpOwogfQogCi1pbnQgc2VxdWVuY2VyX3JvbGxiYWNrKHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKK3N0YXRpYyBpbnQgc2tpcF9zaW5nbGVfcGljayh2b2lkKQoreworCXN0cnVjdCBvYmplY3RfaWQgaGVhZDsKKworCWlmIChyZWFkX3JlZl9mdWxsKCJIRUFEIiwgMCwgJmhlYWQsIE5VTEwpKQorCQlyZXR1cm4gZXJyb3IoXygiY2Fubm90IHJlc29sdmUgSEVBRCIpKTsKKwlyZXR1cm4gcmVzZXRfbWVyZ2UoJmhlYWQpOworfQorCitpbnQgc2VxdWVuY2VyX3JvbGxiYWNrKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMpCiB7CiAJRklMRSAqZjsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKQEAgLTI1NzksNyArMjgwMyw3IEBACiAJCSAqIElmIENIRVJSWV9QSUNLX0hFQUQgb3IgUkVWRVJUX0hFQUQgaW5kaWNhdGVzCiAJCSAqIGEgc2luZ2xlLWNoZXJyeS1waWNrIGluIHByb2dyZXNzLCBhYm9ydCB0aGF0LgogCQkgKi8KLQkJcmV0dXJuIHJvbGxiYWNrX3NpbmdsZV9waWNrKCk7CisJCXJldHVybiByb2xsYmFja19zaW5nbGVfcGljayhyKTsKIAl9CiAJaWYgKCFmKQogCQlyZXR1cm4gZXJyb3JfZXJybm8oXygiY2Fubm90IG9wZW4gJyVzJyIpLCBnaXRfcGF0aF9oZWFkX2ZpbGUoKSk7CkBAIC0yNjA1LDcgKzI4MjksNyBAQAogCQl3YXJuaW5nKF8oIllvdSBzZWVtIHRvIGhhdmUgbW92ZWQgSEVBRC4gIgogCQkJICAiTm90IHJld2luZGluZywgY2hlY2sgeW91ciBIRUFEISIpKTsKIAl9IGVsc2UKLQlpZiAocmVzZXRfZm9yX3JvbGxiYWNrKCZvaWQpKQorCWlmIChyZXNldF9tZXJnZSgmb2lkKSkKIAkJZ290byBmYWlsOwogCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOwogCXJldHVybiBzZXF1ZW5jZXJfcmVtb3ZlX3N0YXRlKG9wdHMpOwpAQCAtMjYxNCw2ICsyODM4LDcwIEBACiAJcmV0dXJuIC0xOwogfQogCitpbnQgc2VxdWVuY2VyX3NraXAoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKK3sKKwllbnVtIHJlcGxheV9hY3Rpb24gYWN0aW9uID0gLTE7CisJc2VxdWVuY2VyX2dldF9sYXN0X2NvbW1hbmQociwgJmFjdGlvbik7CisKKwkvKgorCSAqIENoZWNrIHdoZXRoZXIgdGhlIHN1YmNvbW1hbmQgcmVxdWVzdGVkIHRvIHNraXAgdGhlIGNvbW1pdCBpcyBhY3R1YWxseQorCSAqIGluIHByb2dyZXNzIGFuZCB0aGF0IGl0J3Mgc2FmZSB0byBza2lwIHRoZSBjb21taXQuCisJICoKKwkgKiBvcHRzLT5hY3Rpb24gdGVsbHMgdXMgd2hpY2ggc3ViY29tbWFuZCByZXF1ZXN0ZWQgdG8gc2tpcCB0aGUgY29tbWl0LgorCSAqIElmIHRoZSBjb3JyZXNwb25kaW5nIC5naXQvPEFDVElPTj5fSEVBRCBleGlzdHMsIHdlIGtub3cgdGhhdCB0aGUKKwkgKiBhY3Rpb24gaXMgaW4gcHJvZ3Jlc3MgYW5kIHdlIGNhbiBza2lwIHRoZSBjb21taXQuCisJICoKKwkgKiBPdGhlcndpc2Ugd2UgY2hlY2sgdGhhdCB0aGUgbGFzdCBpbnN0cnVjdGlvbiB3YXMgcmVsYXRlZCB0byB0aGUKKwkgKiBwYXJ0aWN1bGFyIHN1YmNvbW1hbmQgd2UncmUgdHJ5aW5nIHRvIGV4ZWN1dGUgYW5kIGJhcmYgaWYgdGhhdCdzIG5vdAorCSAqIHRoZSBjYXNlLgorCSAqCisJICogRmluYWxseSB3ZSBjaGVjayB0aGF0IHRoZSByb2xsYmFjayBpcyAic2FmZSIsIGkuZS4sIGhhcyB0aGUgSEVBRAorCSAqIG1vdmVkPyBJbiB0aGlzIGNhc2UsIGl0IGRvZXNuJ3QgbWFrZSBzZW5zZSB0byAicmVzZXQgdGhlIG1lcmdlIiBhbmQKKwkgKiAic2tpcCB0aGUgY29tbWl0IiBhcyB0aGUgdXNlciBhbHJlYWR5IGhhbmRsZWQgdGhpcyBieSBjb21taXR0aW5nLiBCdXQKKwkgKiB3ZSdkIG5vdCB3YW50IHRvIGJhcmYgaGVyZSwgaW5zdGVhZCBnaXZlIGFkdmljZSBvbiBob3cgdG8gcHJvY2VlZC4gV2UKKwkgKiBvbmx5IG5lZWQgdG8gY2hlY2sgdGhhdCB3aGVuIC5naXQvPEFDVElPTj5fSEVBRCBkb2Vzbid0IGV4aXN0IGJlY2F1c2UKKwkgKiBpdCBnZXRzIHJlbW92ZWQgd2hlbiB0aGUgdXNlciBjb21taXRzLCBzbyBpZiBpdCBzdGlsbCBleGlzdHMgd2UncmUKKwkgKiBzdXJlIHRoZSB1c2VyIGNhbid0IGhhdmUgY29tbWl0dGVkIGJlZm9yZS4KKwkgKi8KKwlzd2l0Y2ggKG9wdHMtPmFjdGlvbikgeworCWNhc2UgUkVQTEFZX1JFVkVSVDoKKwkJaWYgKCFmaWxlX2V4aXN0cyhnaXRfcGF0aF9yZXZlcnRfaGVhZChyKSkpIHsKKwkJCWlmIChhY3Rpb24gIT0gUkVQTEFZX1JFVkVSVCkKKwkJCQlyZXR1cm4gZXJyb3IoXygibm8gcmV2ZXJ0IGluIHByb2dyZXNzIikpOworCQkJaWYgKCFyb2xsYmFja19pc19zYWZlKCkpCisJCQkJZ290byBnaXZlX2FkdmljZTsKKwkJfQorCQlicmVhazsKKwljYXNlIFJFUExBWV9QSUNLOgorCQlpZiAoIWZpbGVfZXhpc3RzKGdpdF9wYXRoX2NoZXJyeV9waWNrX2hlYWQocikpKSB7CisJCQlpZiAoYWN0aW9uICE9IFJFUExBWV9QSUNLKQorCQkJCXJldHVybiBlcnJvcihfKCJubyBjaGVycnktcGljayBpbiBwcm9ncmVzcyIpKTsKKwkJCWlmICghcm9sbGJhY2tfaXNfc2FmZSgpKQorCQkJCWdvdG8gZ2l2ZV9hZHZpY2U7CisJCX0KKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJQlVHKCJ1bmV4cGVjdGVkIGFjdGlvbiBpbiBzZXF1ZW5jZXJfc2tpcCIpOworCX0KKworCWlmIChza2lwX3NpbmdsZV9waWNrKCkpCisJCXJldHVybiBlcnJvcihfKCJmYWlsZWQgdG8gc2tpcCB0aGUgY29tbWl0IikpOworCWlmICghaXNfZGlyZWN0b3J5KGdpdF9wYXRoX3NlcV9kaXIoKSkpCisJCXJldHVybiAwOworCisJcmV0dXJuIHNlcXVlbmNlcl9jb250aW51ZShyLCBvcHRzKTsKKworZ2l2ZV9hZHZpY2U6CisJZXJyb3IoXygidGhlcmUgaXMgbm90aGluZyB0byBza2lwIikpOworCisJaWYgKGFkdmljZV9yZXNvbHZlX2NvbmZsaWN0KSB7CisJCWFkdmlzZShfKCJoYXZlIHlvdSBjb21taXR0ZWQgYWxyZWFkeT9cbiIKKwkJCSAidHJ5IFwiZ2l0ICVzIC0tY29udGludWVcIiIpLAorCQkJIGFjdGlvbiA9PSBSRVBMQVlfUkVWRVJUID8gInJldmVydCIgOiAiY2hlcnJ5LXBpY2siKTsKKwl9CisJcmV0dXJuIC0xOworfQorCiBzdGF0aWMgaW50IHNhdmVfdG9kbyhzdHJ1Y3QgdG9kb19saXN0ICp0b2RvX2xpc3QsIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKIHsKIAlzdHJ1Y3QgbG9ja19maWxlIHRvZG9fbG9jayA9IExPQ0tfSU5JVDsKQEAgLTI2NjEsNDAgKzI5NDksNjUgQEAKIAlpbnQgcmVzID0gMDsKIAogCWlmIChvcHRzLT5ub19jb21taXQpCi0JCXJlcyB8PSBnaXRfY29uZmlnX3NldF9pbl9maWxlX2dlbnRseShvcHRzX2ZpbGUsICJvcHRpb25zLm5vLWNvbW1pdCIsICJ0cnVlIik7CisJCXJlcyB8PSBnaXRfY29uZmlnX3NldF9pbl9maWxlX2dlbnRseShvcHRzX2ZpbGUsCisJCQkJCSJvcHRpb25zLm5vLWNvbW1pdCIsICJ0cnVlIik7CiAJaWYgKG9wdHMtPmVkaXQpCi0JCXJlcyB8PSBnaXRfY29uZmlnX3NldF9pbl9maWxlX2dlbnRseShvcHRzX2ZpbGUsICJvcHRpb25zLmVkaXQiLCAidHJ1ZSIpOworCQlyZXMgfD0gZ2l0X2NvbmZpZ19zZXRfaW5fZmlsZV9nZW50bHkob3B0c19maWxlLAorCQkJCQkib3B0aW9ucy5lZGl0IiwgInRydWUiKTsKKwlpZiAob3B0cy0+YWxsb3dfZW1wdHkpCisJCXJlcyB8PSBnaXRfY29uZmlnX3NldF9pbl9maWxlX2dlbnRseShvcHRzX2ZpbGUsCisJCQkJCSJvcHRpb25zLmFsbG93LWVtcHR5IiwgInRydWUiKTsKKwlpZiAob3B0cy0+YWxsb3dfZW1wdHlfbWVzc2FnZSkKKwkJcmVzIHw9IGdpdF9jb25maWdfc2V0X2luX2ZpbGVfZ2VudGx5KG9wdHNfZmlsZSwKKwkJCQkib3B0aW9ucy5hbGxvdy1lbXB0eS1tZXNzYWdlIiwgInRydWUiKTsKKwlpZiAob3B0cy0+a2VlcF9yZWR1bmRhbnRfY29tbWl0cykKKwkJcmVzIHw9IGdpdF9jb25maWdfc2V0X2luX2ZpbGVfZ2VudGx5KG9wdHNfZmlsZSwKKwkJCQkib3B0aW9ucy5rZWVwLXJlZHVuZGFudC1jb21taXRzIiwgInRydWUiKTsKIAlpZiAob3B0cy0+c2lnbm9mZikKLQkJcmVzIHw9IGdpdF9jb25maWdfc2V0X2luX2ZpbGVfZ2VudGx5KG9wdHNfZmlsZSwgIm9wdGlvbnMuc2lnbm9mZiIsICJ0cnVlIik7CisJCXJlcyB8PSBnaXRfY29uZmlnX3NldF9pbl9maWxlX2dlbnRseShvcHRzX2ZpbGUsCisJCQkJCSJvcHRpb25zLnNpZ25vZmYiLCAidHJ1ZSIpOwogCWlmIChvcHRzLT5yZWNvcmRfb3JpZ2luKQotCQlyZXMgfD0gZ2l0X2NvbmZpZ19zZXRfaW5fZmlsZV9nZW50bHkob3B0c19maWxlLCAib3B0aW9ucy5yZWNvcmQtb3JpZ2luIiwgInRydWUiKTsKKwkJcmVzIHw9IGdpdF9jb25maWdfc2V0X2luX2ZpbGVfZ2VudGx5KG9wdHNfZmlsZSwKKwkJCQkJIm9wdGlvbnMucmVjb3JkLW9yaWdpbiIsICJ0cnVlIik7CiAJaWYgKG9wdHMtPmFsbG93X2ZmKQotCQlyZXMgfD0gZ2l0X2NvbmZpZ19zZXRfaW5fZmlsZV9nZW50bHkob3B0c19maWxlLCAib3B0aW9ucy5hbGxvdy1mZiIsICJ0cnVlIik7CisJCXJlcyB8PSBnaXRfY29uZmlnX3NldF9pbl9maWxlX2dlbnRseShvcHRzX2ZpbGUsCisJCQkJCSJvcHRpb25zLmFsbG93LWZmIiwgInRydWUiKTsKIAlpZiAob3B0cy0+bWFpbmxpbmUpIHsKIAkJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKIAkJc3RyYnVmX2FkZGYoJmJ1ZiwgIiVkIiwgb3B0cy0+bWFpbmxpbmUpOwotCQlyZXMgfD0gZ2l0X2NvbmZpZ19zZXRfaW5fZmlsZV9nZW50bHkob3B0c19maWxlLCAib3B0aW9ucy5tYWlubGluZSIsIGJ1Zi5idWYpOworCQlyZXMgfD0gZ2l0X2NvbmZpZ19zZXRfaW5fZmlsZV9nZW50bHkob3B0c19maWxlLAorCQkJCQkib3B0aW9ucy5tYWlubGluZSIsIGJ1Zi5idWYpOwogCQlzdHJidWZfcmVsZWFzZSgmYnVmKTsKIAl9CiAJaWYgKG9wdHMtPnN0cmF0ZWd5KQotCQlyZXMgfD0gZ2l0X2NvbmZpZ19zZXRfaW5fZmlsZV9nZW50bHkob3B0c19maWxlLCAib3B0aW9ucy5zdHJhdGVneSIsIG9wdHMtPnN0cmF0ZWd5KTsKKwkJcmVzIHw9IGdpdF9jb25maWdfc2V0X2luX2ZpbGVfZ2VudGx5KG9wdHNfZmlsZSwKKwkJCQkJIm9wdGlvbnMuc3RyYXRlZ3kiLCBvcHRzLT5zdHJhdGVneSk7CiAJaWYgKG9wdHMtPmdwZ19zaWduKQotCQlyZXMgfD0gZ2l0X2NvbmZpZ19zZXRfaW5fZmlsZV9nZW50bHkob3B0c19maWxlLCAib3B0aW9ucy5ncGctc2lnbiIsIG9wdHMtPmdwZ19zaWduKTsKKwkJcmVzIHw9IGdpdF9jb25maWdfc2V0X2luX2ZpbGVfZ2VudGx5KG9wdHNfZmlsZSwKKwkJCQkJIm9wdGlvbnMuZ3BnLXNpZ24iLCBvcHRzLT5ncGdfc2lnbik7CiAJaWYgKG9wdHMtPnhvcHRzKSB7CiAJCWludCBpOwogCQlmb3IgKGkgPSAwOyBpIDwgb3B0cy0+eG9wdHNfbnI7IGkrKykKIAkJCXJlcyB8PSBnaXRfY29uZmlnX3NldF9tdWx0aXZhcl9pbl9maWxlX2dlbnRseShvcHRzX2ZpbGUsCi0JCQkJCQkJIm9wdGlvbnMuc3RyYXRlZ3ktb3B0aW9uIiwKLQkJCQkJCQlvcHRzLT54b3B0c1tpXSwgIl4kIiwgMCk7CisJCQkJCSJvcHRpb25zLnN0cmF0ZWd5LW9wdGlvbiIsCisJCQkJCW9wdHMtPnhvcHRzW2ldLCAiXiQiLCAwKTsKIAl9CiAJaWYgKG9wdHMtPmFsbG93X3JlcmVyZV9hdXRvKQotCQlyZXMgfD0gZ2l0X2NvbmZpZ19zZXRfaW5fZmlsZV9nZW50bHkob3B0c19maWxlLCAib3B0aW9ucy5hbGxvdy1yZXJlcmUtYXV0byIsCi0JCQkJCQkgICAgIG9wdHMtPmFsbG93X3JlcmVyZV9hdXRvID09IFJFUkVSRV9BVVRPVVBEQVRFID8KLQkJCQkJCSAgICAgInRydWUiIDogImZhbHNlIik7CisJCXJlcyB8PSBnaXRfY29uZmlnX3NldF9pbl9maWxlX2dlbnRseShvcHRzX2ZpbGUsCisJCQkJIm9wdGlvbnMuYWxsb3ctcmVyZXJlLWF1dG8iLAorCQkJCW9wdHMtPmFsbG93X3JlcmVyZV9hdXRvID09IFJFUkVSRV9BVVRPVVBEQVRFID8KKwkJCQkidHJ1ZSIgOiAiZmFsc2UiKTsKKworCWlmIChvcHRzLT5leHBsaWNpdF9jbGVhbnVwKQorCQlyZXMgfD0gZ2l0X2NvbmZpZ19zZXRfaW5fZmlsZV9nZW50bHkob3B0c19maWxlLAorCQkJCSJvcHRpb25zLmRlZmF1bHQtbXNnLWNsZWFudXAiLAorCQkJCWRlc2NyaWJlX2NsZWFudXBfbW9kZShvcHRzLT5kZWZhdWx0X21zZ19jbGVhbnVwKSk7CiAJcmV0dXJuIHJlczsKIH0KIAotc3RhdGljIGludCBtYWtlX3BhdGNoKHN0cnVjdCBjb21taXQgKmNvbW1pdCwgc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKQorc3RhdGljIGludCBtYWtlX3BhdGNoKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkgICAgICBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCisJCSAgICAgIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKIHsKIAlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCXN0cnVjdCByZXZfaW5mbyBsb2dfdHJlZV9vcHQ7CkBAIC0yNzA0LDEzICszMDE3LDExIEBACiAJcCA9IHNob3J0X2NvbW1pdF9uYW1lKGNvbW1pdCk7CiAJaWYgKHdyaXRlX21lc3NhZ2UocCwgc3RybGVuKHApLCByZWJhc2VfcGF0aF9zdG9wcGVkX3NoYSgpLCAxKSA8IDApCiAJCXJldHVybiAtMTsKLQlpZiAodXBkYXRlX3JlZigicmViYXNlIiwgIlJFQkFTRV9IRUFEIiwgJmNvbW1pdC0+b2JqZWN0Lm9pZCwKLQkJICAgICAgIE5VTEwsIFJFRl9OT19ERVJFRiwgVVBEQVRFX1JFRlNfTVNHX09OX0VSUikpCi0JCXJlcyB8PSBlcnJvcihfKCJjb3VsZCBub3QgdXBkYXRlICVzIiksICJSRUJBU0VfSEVBRCIpOworCXJlcyB8PSB3cml0ZV9yZWJhc2VfaGVhZCgmY29tbWl0LT5vYmplY3Qub2lkKTsKIAogCXN0cmJ1Zl9hZGRmKCZidWYsICIlcy9wYXRjaCIsIGdldF9kaXIob3B0cykpOwogCW1lbXNldCgmbG9nX3RyZWVfb3B0LCAwLCBzaXplb2YobG9nX3RyZWVfb3B0KSk7Ci0JcmVwb19pbml0X3JldmlzaW9ucyh0aGVfcmVwb3NpdG9yeSwgJmxvZ190cmVlX29wdCwgTlVMTCk7CisJcmVwb19pbml0X3JldmlzaW9ucyhyLCAmbG9nX3RyZWVfb3B0LCBOVUxMKTsKIAlsb2dfdHJlZV9vcHQuYWJicmV2ID0gMDsKIAlsb2dfdHJlZV9vcHQuZGlmZiA9IDE7CiAJbG9nX3RyZWVfb3B0LmRpZmZvcHQub3V0cHV0X2Zvcm1hdCA9IERJRkZfRk9STUFUX1BBVENIOwpAQCAtMjcyOCw3ICszMDM5LDggQEAKIAogCXN0cmJ1Zl9hZGRmKCZidWYsICIlcy9tZXNzYWdlIiwgZ2V0X2RpcihvcHRzKSk7CiAJaWYgKCFmaWxlX2V4aXN0cyhidWYuYnVmKSkgewotCQljb25zdCBjaGFyICpjb21taXRfYnVmZmVyID0gZ2V0X2NvbW1pdF9idWZmZXIoY29tbWl0LCBOVUxMKTsKKwkJY29uc3QgY2hhciAqZW5jb2RpbmcgPSBnZXRfY29tbWl0X291dHB1dF9lbmNvZGluZygpOworCQljb25zdCBjaGFyICpjb21taXRfYnVmZmVyID0gbG9nbXNnX3JlZW5jb2RlKGNvbW1pdCwgTlVMTCwgZW5jb2RpbmcpOwogCQlmaW5kX2NvbW1pdF9zdWJqZWN0KGNvbW1pdF9idWZmZXIsICZzdWJqZWN0KTsKIAkJcmVzIHw9IHdyaXRlX21lc3NhZ2Uoc3ViamVjdCwgc3RybGVuKHN1YmplY3QpLCBidWYuYnVmLCAxKTsKIAkJdW51c2VfY29tbWl0X2J1ZmZlcihjb21taXQsIGNvbW1pdF9idWZmZXIpOwpAQCAtMjc1MCwxNyArMzA2MiwxOSBAQAogCXJldHVybiB3cml0ZV9tZXNzYWdlKHAsIHN0cmxlbihwKSwgcmViYXNlX3BhdGhfYW1lbmQoKSwgMSk7CiB9CiAKLXN0YXRpYyBpbnQgZXJyb3Jfd2l0aF9wYXRjaChzdHJ1Y3QgY29tbWl0ICpjb21taXQsCi0JY29uc3QgY2hhciAqc3ViamVjdCwgaW50IHN1YmplY3RfbGVuLAotCXN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywgaW50IGV4aXRfY29kZSwgaW50IHRvX2FtZW5kKQorc3RhdGljIGludCBlcnJvcl93aXRoX3BhdGNoKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgIHN0cnVjdCBjb21taXQgKmNvbW1pdCwKKwkJCSAgICBjb25zdCBjaGFyICpzdWJqZWN0LCBpbnQgc3ViamVjdF9sZW4sCisJCQkgICAgc3RydWN0IHJlcGxheV9vcHRzICpvcHRzLAorCQkJICAgIGludCBleGl0X2NvZGUsIGludCB0b19hbWVuZCkKIHsKIAlpZiAoY29tbWl0KSB7Ci0JCWlmIChtYWtlX3BhdGNoKGNvbW1pdCwgb3B0cykpCisJCWlmIChtYWtlX3BhdGNoKHIsIGNvbW1pdCwgb3B0cykpCiAJCQlyZXR1cm4gLTE7CiAJfSBlbHNlIGlmIChjb3B5X2ZpbGUocmViYXNlX3BhdGhfbWVzc2FnZSgpLAotCQkJICAgICBnaXRfcGF0aF9tZXJnZV9tc2codGhlX3JlcG9zaXRvcnkpLCAwNjY2KSkKKwkJCSAgICAgZ2l0X3BhdGhfbWVyZ2VfbXNnKHIpLCAwNjY2KSkKIAkJcmV0dXJuIGVycm9yKF8oInVuYWJsZSB0byBjb3B5ICclcycgdG8gJyVzJyIpLAotCQkJICAgICBnaXRfcGF0aF9tZXJnZV9tc2codGhlX3JlcG9zaXRvcnkpLCByZWJhc2VfcGF0aF9tZXNzYWdlKCkpOworCQkJICAgICBnaXRfcGF0aF9tZXJnZV9tc2cociksIHJlYmFzZV9wYXRoX21lc3NhZ2UoKSk7CiAKIAlpZiAodG9fYW1lbmQpIHsKIAkJaWYgKGludGVuZF90b19hbWVuZCgpKQpAQCAtMjc5MSwyMSArMzEwNSwyNCBAQAogCXJldHVybiBleGl0X2NvZGU7CiB9CiAKLXN0YXRpYyBpbnQgZXJyb3JfZmFpbGVkX3NxdWFzaChzdHJ1Y3QgY29tbWl0ICpjb21taXQsCi0Jc3RydWN0IHJlcGxheV9vcHRzICpvcHRzLCBpbnQgc3ViamVjdF9sZW4sIGNvbnN0IGNoYXIgKnN1YmplY3QpCitzdGF0aWMgaW50IGVycm9yX2ZhaWxlZF9zcXVhc2goc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgICAgICAgc3RydWN0IGNvbW1pdCAqY29tbWl0LAorCQkJICAgICAgIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywKKwkJCSAgICAgICBpbnQgc3ViamVjdF9sZW4sCisJCQkgICAgICAgY29uc3QgY2hhciAqc3ViamVjdCkKIHsKIAlpZiAoY29weV9maWxlKHJlYmFzZV9wYXRoX21lc3NhZ2UoKSwgcmViYXNlX3BhdGhfc3F1YXNoX21zZygpLCAwNjY2KSkKIAkJcmV0dXJuIGVycm9yKF8oImNvdWxkIG5vdCBjb3B5ICclcycgdG8gJyVzJyIpLAogCQkJcmViYXNlX3BhdGhfc3F1YXNoX21zZygpLCByZWJhc2VfcGF0aF9tZXNzYWdlKCkpOwotCXVubGluayhnaXRfcGF0aF9tZXJnZV9tc2codGhlX3JlcG9zaXRvcnkpKTsKLQlpZiAoY29weV9maWxlKGdpdF9wYXRoX21lcmdlX21zZyh0aGVfcmVwb3NpdG9yeSksIHJlYmFzZV9wYXRoX21lc3NhZ2UoKSwgMDY2NikpCisJdW5saW5rKGdpdF9wYXRoX21lcmdlX21zZyhyKSk7CisJaWYgKGNvcHlfZmlsZShnaXRfcGF0aF9tZXJnZV9tc2cociksIHJlYmFzZV9wYXRoX21lc3NhZ2UoKSwgMDY2NikpCiAJCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3QgY29weSAnJXMnIHRvICclcyciKSwKIAkJCSAgICAgcmViYXNlX3BhdGhfbWVzc2FnZSgpLAotCQkJICAgICBnaXRfcGF0aF9tZXJnZV9tc2codGhlX3JlcG9zaXRvcnkpKTsKLQlyZXR1cm4gZXJyb3Jfd2l0aF9wYXRjaChjb21taXQsIHN1YmplY3QsIHN1YmplY3RfbGVuLCBvcHRzLCAxLCAwKTsKKwkJCSAgICAgZ2l0X3BhdGhfbWVyZ2VfbXNnKHIpKTsKKwlyZXR1cm4gZXJyb3Jfd2l0aF9wYXRjaChyLCBjb21taXQsIHN1YmplY3QsIHN1YmplY3RfbGVuLCBvcHRzLCAxLCAwKTsKIH0KIAotc3RhdGljIGludCBkb19leGVjKGNvbnN0IGNoYXIgKmNvbW1hbmRfbGluZSkKK3N0YXRpYyBpbnQgZG9fZXhlYyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqY29tbWFuZF9saW5lKQogewogCXN0cnVjdCBhcmd2X2FycmF5IGNoaWxkX2VudiA9IEFSR1ZfQVJSQVlfSU5JVDsKIAljb25zdCBjaGFyICpjaGlsZF9hcmd2W10gPSB7IE5VTEwsIE5VTEwgfTsKQEAgLTI4MjAsMTAgKzMxMzcsMTAgQEAKIAkJCQkJICBjaGlsZF9lbnYuYXJndik7CiAKIAkvKiBmb3JjZSByZS1yZWFkaW5nIG9mIHRoZSBjYWNoZSAqLwotCWlmIChkaXNjYXJkX2NhY2hlKCkgPCAwIHx8IHJlYWRfY2FjaGUoKSA8IDApCisJaWYgKGRpc2NhcmRfaW5kZXgoci0+aW5kZXgpIDwgMCB8fCByZXBvX3JlYWRfaW5kZXgocikgPCAwKQogCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHJlYWQgaW5kZXgiKSk7CiAKLQlkaXJ0eSA9IHJlcXVpcmVfY2xlYW5fd29ya190cmVlKCJyZWJhc2UiLCBOVUxMLCAxLCAxKTsKKwlkaXJ0eSA9IHJlcXVpcmVfY2xlYW5fd29ya190cmVlKHIsICJyZWJhc2UiLCBOVUxMLCAxLCAxKTsKIAogCWlmIChzdGF0dXMpIHsKIAkJd2FybmluZyhfKCJleGVjdXRpb24gZmFpbGVkOiAlc1xuJXMiCkBAIC0yODg5LDkgKzMyMDYsOSBAQAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGRvX2xhYmVsKGNvbnN0IGNoYXIgKm5hbWUsIGludCBsZW4pCitzdGF0aWMgaW50IGRvX2xhYmVsKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpuYW1lLCBpbnQgbGVuKQogewotCXN0cnVjdCByZWZfc3RvcmUgKnJlZnMgPSBnZXRfbWFpbl9yZWZfc3RvcmUodGhlX3JlcG9zaXRvcnkpOworCXN0cnVjdCByZWZfc3RvcmUgKnJlZnMgPSBnZXRfbWFpbl9yZWZfc3RvcmUocik7CiAJc3RydWN0IHJlZl90cmFuc2FjdGlvbiAqdHJhbnNhY3Rpb247CiAJc3RydWN0IHN0cmJ1ZiByZWZfbmFtZSA9IFNUUkJVRl9JTklULCBlcnIgPSBTVFJCVUZfSU5JVDsKIAlzdHJ1Y3Qgc3RyYnVmIG1zZyA9IFNUUkJVRl9JTklUOwpAQCAtMjkwMiw3ICszMjE5LDcgQEAKIAkJcmV0dXJuIGVycm9yKF8oImlsbGVnYWwgbGFiZWwgbmFtZTogJyUuKnMnIiksIGxlbiwgbmFtZSk7CiAKIAlzdHJidWZfYWRkZigmcmVmX25hbWUsICJyZWZzL3Jld3JpdHRlbi8lLipzIiwgbGVuLCBuYW1lKTsKLQlzdHJidWZfYWRkZigmbXNnLCAicmViYXNlIC1pIChsYWJlbCkgJyUuKnMnIiwgbGVuLCBuYW1lKTsKKwlzdHJidWZfYWRkZigmbXNnLCAicmViYXNlIChsYWJlbCkgJyUuKnMnIiwgbGVuLCBuYW1lKTsKIAogCXRyYW5zYWN0aW9uID0gcmVmX3N0b3JlX3RyYW5zYWN0aW9uX2JlZ2luKHJlZnMsICZlcnIpOwogCWlmICghdHJhbnNhY3Rpb24pIHsKQEAgLTI5MzIsNyArMzI0OSw5IEBACiBzdGF0aWMgY29uc3QgY2hhciAqcmVmbG9nX21lc3NhZ2Uoc3RydWN0IHJlcGxheV9vcHRzICpvcHRzLAogCWNvbnN0IGNoYXIgKnN1Yl9hY3Rpb24sIGNvbnN0IGNoYXIgKmZtdCwgLi4uKTsKIAotc3RhdGljIGludCBkb19yZXNldChjb25zdCBjaGFyICpuYW1lLCBpbnQgbGVuLCBzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMpCitzdGF0aWMgaW50IGRvX3Jlc2V0KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkgICAgY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbiwKKwkJICAgIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKIHsKIAlzdHJ1Y3Qgc3RyYnVmIHJlZl9uYW1lID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CkBAIC0yOTQyLDcgKzMyNjEsNyBAQAogCXN0cnVjdCB1bnBhY2tfdHJlZXNfb3B0aW9ucyB1bnBhY2tfdHJlZV9vcHRzOwogCWludCByZXQgPSAwOwogCi0JaWYgKGhvbGRfbG9ja2VkX2luZGV4KCZsb2NrLCBMT0NLX1JFUE9SVF9PTl9FUlJPUikgPCAwKQorCWlmIChyZXBvX2hvbGRfbG9ja2VkX2luZGV4KHIsICZsb2NrLCBMT0NLX1JFUE9SVF9PTl9FUlJPUikgPCAwKQogCQlyZXR1cm4gLTE7CiAKIAlpZiAobGVuID09IDEwICYmICFzdHJuY21wKCJbbmV3IHJvb3RdIiwgbmFtZSwgbGVuKSkgewpAQCAtMjk4MSwxOSArMzMwMCwxOSBAQAogCW1lbXNldCgmdW5wYWNrX3RyZWVfb3B0cywgMCwgc2l6ZW9mKHVucGFja190cmVlX29wdHMpKTsKIAlzZXR1cF91bnBhY2tfdHJlZXNfcG9yY2VsYWluKCZ1bnBhY2tfdHJlZV9vcHRzLCAicmVzZXQiKTsKIAl1bnBhY2tfdHJlZV9vcHRzLmhlYWRfaWR4ID0gMTsKLQl1bnBhY2tfdHJlZV9vcHRzLnNyY19pbmRleCA9ICZ0aGVfaW5kZXg7Ci0JdW5wYWNrX3RyZWVfb3B0cy5kc3RfaW5kZXggPSAmdGhlX2luZGV4OworCXVucGFja190cmVlX29wdHMuc3JjX2luZGV4ID0gci0+aW5kZXg7CisJdW5wYWNrX3RyZWVfb3B0cy5kc3RfaW5kZXggPSByLT5pbmRleDsKIAl1bnBhY2tfdHJlZV9vcHRzLmZuID0gb25ld2F5X21lcmdlOwogCXVucGFja190cmVlX29wdHMubWVyZ2UgPSAxOwogCXVucGFja190cmVlX29wdHMudXBkYXRlID0gMTsKIAotCWlmIChyZWFkX2NhY2hlX3VubWVyZ2VkKCkpIHsKKwlpZiAocmVwb19yZWFkX2luZGV4X3VubWVyZ2VkKHIpKSB7CiAJCXJvbGxiYWNrX2xvY2tfZmlsZSgmbG9jayk7CiAJCXN0cmJ1Zl9yZWxlYXNlKCZyZWZfbmFtZSk7CiAJCXJldHVybiBlcnJvcl9yZXNvbHZlX2NvbmZsaWN0KF8oYWN0aW9uX25hbWUob3B0cykpKTsKIAl9CiAKLQlpZiAoIWZpbGxfdHJlZV9kZXNjcmlwdG9yKCZkZXNjLCAmb2lkKSkgeworCWlmICghZmlsbF90cmVlX2Rlc2NyaXB0b3IociwgJmRlc2MsICZvaWQpKSB7CiAJCWVycm9yKF8oImZhaWxlZCB0byBmaW5kIHRyZWUgb2YgJXMiKSwgb2lkX3RvX2hleCgmb2lkKSk7CiAJCXJvbGxiYWNrX2xvY2tfZmlsZSgmbG9jayk7CiAJCWZyZWUoKHZvaWQgKilkZXNjLmJ1ZmZlcik7CkBAIC0zMDA5LDkgKzMzMjgsOSBAQAogCX0KIAogCXRyZWUgPSBwYXJzZV90cmVlX2luZGlyZWN0KCZvaWQpOwotCXByaW1lX2NhY2hlX3RyZWUoJnRoZV9pbmRleCwgdHJlZSk7CisJcHJpbWVfY2FjaGVfdHJlZShyLCByLT5pbmRleCwgdHJlZSk7CiAKLQlpZiAod3JpdGVfbG9ja2VkX2luZGV4KCZ0aGVfaW5kZXgsICZsb2NrLCBDT01NSVRfTE9DSykgPCAwKQorCWlmICh3cml0ZV9sb2NrZWRfaW5kZXgoci0+aW5kZXgsICZsb2NrLCBDT01NSVRfTE9DSykgPCAwKQogCQlyZXQgPSBlcnJvcihfKCJjb3VsZCBub3Qgd3JpdGUgaW5kZXgiKSk7CiAJZnJlZSgodm9pZCAqKWRlc2MuYnVmZmVyKTsKIApAQCAtMzA0NCw3ICszMzYzLDkgQEAKIAlyZXR1cm4gY29tbWl0OwogfQogCi1zdGF0aWMgaW50IGRvX21lcmdlKHN0cnVjdCBjb21taXQgKmNvbW1pdCwgY29uc3QgY2hhciAqYXJnLCBpbnQgYXJnX2xlbiwKK3N0YXRpYyBpbnQgZG9fbWVyZ2Uoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCSAgICBzdHJ1Y3QgY29tbWl0ICpjb21taXQsCisJCSAgICBjb25zdCBjaGFyICphcmcsIGludCBhcmdfbGVuLAogCQkgICAgaW50IGZsYWdzLCBzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMpCiB7CiAJaW50IHJ1bl9jb21taXRfZmxhZ3MgPSAoZmxhZ3MgJiBUT0RPX0VESVRfTUVSR0VfTVNHKSA/CkBAIC0zMDUzLDEyICszMzc0LDE1IEBACiAJc3RydWN0IGNvbW1pdCAqaGVhZF9jb21taXQsICptZXJnZV9jb21taXQsICppOwogCXN0cnVjdCBjb21taXRfbGlzdCAqYmFzZXMsICpqLCAqcmV2ZXJzZWQgPSBOVUxMOwogCXN0cnVjdCBjb21taXRfbGlzdCAqdG9fbWVyZ2UgPSBOVUxMLCAqKnRhaWwgPSAmdG9fbWVyZ2U7CisJY29uc3QgY2hhciAqc3RyYXRlZ3kgPSAhb3B0cy0+eG9wdHNfbnIgJiYKKwkJKCFvcHRzLT5zdHJhdGVneSB8fCAhc3RyY21wKG9wdHMtPnN0cmF0ZWd5LCAicmVjdXJzaXZlIikpID8KKwkJTlVMTCA6IG9wdHMtPnN0cmF0ZWd5OwogCXN0cnVjdCBtZXJnZV9vcHRpb25zIG87CiAJaW50IG1lcmdlX2FyZ19sZW4sIG9uZWxpbmVfb2Zmc2V0LCBjYW5fZmFzdF9mb3J3YXJkLCByZXQsIGs7CiAJc3RhdGljIHN0cnVjdCBsb2NrX2ZpbGUgbG9jazsKIAljb25zdCBjaGFyICpwOwogCi0JaWYgKGhvbGRfbG9ja2VkX2luZGV4KCZsb2NrLCBMT0NLX1JFUE9SVF9PTl9FUlJPUikgPCAwKSB7CisJaWYgKHJlcG9faG9sZF9sb2NrZWRfaW5kZXgociwgJmxvY2ssIExPQ0tfUkVQT1JUX09OX0VSUk9SKSA8IDApIHsKIAkJcmV0ID0gLTE7CiAJCWdvdG8gbGVhdmVfbWVyZ2U7CiAJfQpAQCAtMzExMSwxNCArMzQzNSwxNSBAQAogCQkJcmV0ID0gZXJyb3IoXygib2N0b3B1cyBtZXJnZSBjYW5ub3QgYmUgZXhlY3V0ZWQgb24gIgogCQkJCSAgICAgICJ0b3Agb2YgYSBbbmV3IHJvb3RdIikpOwogCQllbHNlCi0JCQlyZXQgPSBmYXN0X2ZvcndhcmRfdG8oJnRvX21lcmdlLT5pdGVtLT5vYmplY3Qub2lkLAorCQkJcmV0ID0gZmFzdF9mb3J3YXJkX3RvKHIsICZ0b19tZXJnZS0+aXRlbS0+b2JqZWN0Lm9pZCwKIAkJCQkJICAgICAgJmhlYWRfY29tbWl0LT5vYmplY3Qub2lkLCAwLAogCQkJCQkgICAgICBvcHRzKTsKIAkJZ290byBsZWF2ZV9tZXJnZTsKIAl9CiAKIAlpZiAoY29tbWl0KSB7Ci0JCWNvbnN0IGNoYXIgKm1lc3NhZ2UgPSBnZXRfY29tbWl0X2J1ZmZlcihjb21taXQsIE5VTEwpOworCQljb25zdCBjaGFyICplbmNvZGluZyA9IGdldF9jb21taXRfb3V0cHV0X2VuY29kaW5nKCk7CisJCWNvbnN0IGNoYXIgKm1lc3NhZ2UgPSBsb2dtc2dfcmVlbmNvZGUoY29tbWl0LCBOVUxMLCBlbmNvZGluZyk7CiAJCWNvbnN0IGNoYXIgKmJvZHk7CiAJCWludCBsZW47CiAKQEAgLTMxMzAsMTEgKzM0NTUsMTEgQEAKIAkJd3JpdGVfYXV0aG9yX3NjcmlwdChtZXNzYWdlKTsKIAkJZmluZF9jb21taXRfc3ViamVjdChtZXNzYWdlLCAmYm9keSk7CiAJCWxlbiA9IHN0cmxlbihib2R5KTsKLQkJcmV0ID0gd3JpdGVfbWVzc2FnZShib2R5LCBsZW4sIGdpdF9wYXRoX21lcmdlX21zZyh0aGVfcmVwb3NpdG9yeSksIDApOworCQlyZXQgPSB3cml0ZV9tZXNzYWdlKGJvZHksIGxlbiwgZ2l0X3BhdGhfbWVyZ2VfbXNnKHIpLCAwKTsKIAkJdW51c2VfY29tbWl0X2J1ZmZlcihjb21taXQsIG1lc3NhZ2UpOwogCQlpZiAocmV0KSB7CiAJCQllcnJvcl9lcnJubyhfKCJjb3VsZCBub3Qgd3JpdGUgJyVzJyIpLAotCQkJCSAgICBnaXRfcGF0aF9tZXJnZV9tc2codGhlX3JlcG9zaXRvcnkpKTsKKwkJCQkgICAgZ2l0X3BhdGhfbWVyZ2VfbXNnKHIpKTsKIAkJCWdvdG8gbGVhdmVfbWVyZ2U7CiAJCX0KIAl9IGVsc2UgewpAQCAtMzE1NiwxMSArMzQ4MSwxMSBAQAogCQkJbGVuID0gYnVmLmxlbjsKIAkJfQogCi0JCXJldCA9IHdyaXRlX21lc3NhZ2UocCwgbGVuLCBnaXRfcGF0aF9tZXJnZV9tc2codGhlX3JlcG9zaXRvcnkpLCAwKTsKKwkJcmV0ID0gd3JpdGVfbWVzc2FnZShwLCBsZW4sIGdpdF9wYXRoX21lcmdlX21zZyhyKSwgMCk7CiAJCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOwogCQlpZiAocmV0KSB7CiAJCQllcnJvcl9lcnJubyhfKCJjb3VsZCBub3Qgd3JpdGUgJyVzJyIpLAotCQkJCSAgICBnaXRfcGF0aF9tZXJnZV9tc2codGhlX3JlcG9zaXRvcnkpKTsKKwkJCQkgICAgZ2l0X3BhdGhfbWVyZ2VfbXNnKHIpKTsKIAkJCWdvdG8gbGVhdmVfbWVyZ2U7CiAJCX0KIAl9CkBAIC0zMTk2LDEyICszNTIxLDE2IEBACiAKIAlpZiAoY2FuX2Zhc3RfZm9yd2FyZCkgewogCQlyb2xsYmFja19sb2NrX2ZpbGUoJmxvY2spOwotCQlyZXQgPSBmYXN0X2ZvcndhcmRfdG8oJmNvbW1pdC0+b2JqZWN0Lm9pZCwKKwkJcmV0ID0gZmFzdF9mb3J3YXJkX3RvKHIsICZjb21taXQtPm9iamVjdC5vaWQsCiAJCQkJICAgICAgJmhlYWRfY29tbWl0LT5vYmplY3Qub2lkLCAwLCBvcHRzKTsKKwkJaWYgKGZsYWdzICYgVE9ET19FRElUX01FUkdFX01TRykgeworCQkJcnVuX2NvbW1pdF9mbGFncyB8PSBBTUVORF9NU0c7CisJCQlnb3RvIGZhc3RfZm9yd2FyZF9lZGl0OworCQl9CiAJCWdvdG8gbGVhdmVfbWVyZ2U7CiAJfQogCi0JaWYgKHRvX21lcmdlLT5uZXh0KSB7CisJaWYgKHN0cmF0ZWd5IHx8IHRvX21lcmdlLT5uZXh0KSB7CiAJCS8qIE9jdG9wdXMgbWVyZ2UgKi8KIAkJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY21kID0gQ0hJTERfUFJPQ0VTU19JTklUOwogCkBAIC0zMjE1LDEzICszNTQ0LDIwIEBACiAJCWNtZC5naXRfY21kID0gMTsKIAkJYXJndl9hcnJheV9wdXNoKCZjbWQuYXJncywgIm1lcmdlIik7CiAJCWFyZ3ZfYXJyYXlfcHVzaCgmY21kLmFyZ3MsICItcyIpOwotCQlhcmd2X2FycmF5X3B1c2goJmNtZC5hcmdzLCAib2N0b3B1cyIpOworCQlpZiAoIXN0cmF0ZWd5KQorCQkJYXJndl9hcnJheV9wdXNoKCZjbWQuYXJncywgIm9jdG9wdXMiKTsKKwkJZWxzZSB7CisJCQlhcmd2X2FycmF5X3B1c2goJmNtZC5hcmdzLCBzdHJhdGVneSk7CisJCQlmb3IgKGsgPSAwOyBrIDwgb3B0cy0+eG9wdHNfbnI7IGsrKykKKwkJCQlhcmd2X2FycmF5X3B1c2hmKCZjbWQuYXJncywKKwkJCQkJCSAiLVglcyIsIG9wdHMtPnhvcHRzW2tdKTsKKwkJfQogCQlhcmd2X2FycmF5X3B1c2goJmNtZC5hcmdzLCAiLS1uby1lZGl0Iik7CiAJCWFyZ3ZfYXJyYXlfcHVzaCgmY21kLmFyZ3MsICItLW5vLWZmIik7CiAJCWFyZ3ZfYXJyYXlfcHVzaCgmY21kLmFyZ3MsICItLW5vLWxvZyIpOwogCQlhcmd2X2FycmF5X3B1c2goJmNtZC5hcmdzLCAiLS1uby1zdGF0Iik7CiAJCWFyZ3ZfYXJyYXlfcHVzaCgmY21kLmFyZ3MsICItRiIpOwotCQlhcmd2X2FycmF5X3B1c2goJmNtZC5hcmdzLCBnaXRfcGF0aF9tZXJnZV9tc2codGhlX3JlcG9zaXRvcnkpKTsKKwkJYXJndl9hcnJheV9wdXNoKCZjbWQuYXJncywgZ2l0X3BhdGhfbWVyZ2VfbXNnKHIpKTsKIAkJaWYgKG9wdHMtPmdwZ19zaWduKQogCQkJYXJndl9hcnJheV9wdXNoKCZjbWQuYXJncywgb3B0cy0+Z3BnX3NpZ24pOwogCkBAIC0zMjMxLDE0ICszNTY3LDE1IEBACiAJCQkJCW9pZF90b19oZXgoJmotPml0ZW0tPm9iamVjdC5vaWQpKTsKIAogCQlzdHJidWZfcmVsZWFzZSgmcmVmX25hbWUpOwotCQl1bmxpbmsoZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZCh0aGVfcmVwb3NpdG9yeSkpOworCQl1bmxpbmsoZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZChyKSk7CiAJCXJvbGxiYWNrX2xvY2tfZmlsZSgmbG9jayk7CiAKIAkJcm9sbGJhY2tfbG9ja19maWxlKCZsb2NrKTsKIAkJcmV0ID0gcnVuX2NvbW1hbmQoJmNtZCk7CiAKIAkJLyogZm9yY2UgcmUtcmVhZGluZyBvZiB0aGUgY2FjaGUgKi8KLQkJaWYgKCFyZXQgJiYgKGRpc2NhcmRfY2FjaGUoKSA8IDAgfHwgcmVhZF9jYWNoZSgpIDwgMCkpCisJCWlmICghcmV0ICYmIChkaXNjYXJkX2luZGV4KHItPmluZGV4KSA8IDAgfHwKKwkJCSAgICAgcmVwb19yZWFkX2luZGV4KHIpIDwgMCkpCiAJCQlyZXQgPSBlcnJvcihfKCJjb3VsZCBub3QgcmVhZCBpbmRleCIpKTsKIAkJZ290byBsZWF2ZV9tZXJnZTsKIAl9CkBAIC0zMjUyLDE2ICszNTg5LDE2IEBACiAJCWdvdG8gbGVhdmVfbWVyZ2U7CiAJfQogCi0Jd3JpdGVfbWVzc2FnZShvaWRfdG9faGV4KCZtZXJnZV9jb21taXQtPm9iamVjdC5vaWQpLCBHSVRfU0hBMV9IRVhTWiwKLQkJICAgICAgZ2l0X3BhdGhfbWVyZ2VfaGVhZCh0aGVfcmVwb3NpdG9yeSksIDApOwotCXdyaXRlX21lc3NhZ2UoIm5vLWZmIiwgNSwgZ2l0X3BhdGhfbWVyZ2VfbW9kZSh0aGVfcmVwb3NpdG9yeSksIDApOworCXdyaXRlX21lc3NhZ2Uob2lkX3RvX2hleCgmbWVyZ2VfY29tbWl0LT5vYmplY3Qub2lkKSwgdGhlX2hhc2hfYWxnby0+aGV4c3osCisJCSAgICAgIGdpdF9wYXRoX21lcmdlX2hlYWQociksIDApOworCXdyaXRlX21lc3NhZ2UoIm5vLWZmIiwgNSwgZ2l0X3BhdGhfbWVyZ2VfbW9kZShyKSwgMCk7CiAKIAlmb3IgKGogPSBiYXNlczsgajsgaiA9IGotPm5leHQpCiAJCWNvbW1pdF9saXN0X2luc2VydChqLT5pdGVtLCAmcmV2ZXJzZWQpOwogCWZyZWVfY29tbWl0X2xpc3QoYmFzZXMpOwogCi0JcmVhZF9jYWNoZSgpOwotCWluaXRfbWVyZ2Vfb3B0aW9ucygmbyk7CisJcmVwb19yZWFkX2luZGV4KHIpOworCWluaXRfbWVyZ2Vfb3B0aW9ucygmbywgcik7CiAJby5icmFuY2gxID0gIkhFQUQiOwogCW8uYnJhbmNoMiA9IHJlZl9uYW1lLmJ1ZjsKIAlvLmJ1ZmZlcl9vdXRwdXQgPSAyOwpAQCAtMzI4NSwyMyArMzYyMiwyNCBAQAogCSAqLwogCXJldCA9ICFyZXQ7CiAKLQlpZiAoYWN0aXZlX2NhY2hlX2NoYW5nZWQgJiYKLQkgICAgd3JpdGVfbG9ja2VkX2luZGV4KCZ0aGVfaW5kZXgsICZsb2NrLCBDT01NSVRfTE9DSykpIHsKKwlpZiAoci0+aW5kZXgtPmNhY2hlX2NoYW5nZWQgJiYKKwkgICAgd3JpdGVfbG9ja2VkX2luZGV4KHItPmluZGV4LCAmbG9jaywgQ09NTUlUX0xPQ0spKSB7CiAJCXJldCA9IGVycm9yKF8oIm1lcmdlOiBVbmFibGUgdG8gd3JpdGUgbmV3IGluZGV4IGZpbGUiKSk7CiAJCWdvdG8gbGVhdmVfbWVyZ2U7CiAJfQogCiAJcm9sbGJhY2tfbG9ja19maWxlKCZsb2NrKTsKIAlpZiAocmV0KQotCQlyZXBvX3JlcmVyZSh0aGVfcmVwb3NpdG9yeSwgb3B0cy0+YWxsb3dfcmVyZXJlX2F1dG8pOworCQlyZXBvX3JlcmVyZShyLCBvcHRzLT5hbGxvd19yZXJlcmVfYXV0byk7CiAJZWxzZQogCQkvKgogCQkgKiBJbiBjYXNlIG9mIHByb2JsZW1zLCB3ZSBub3cgd2FudCB0byByZXR1cm4gYSBwb3NpdGl2ZQogCQkgKiB2YWx1ZSAoYSBuZWdhdGl2ZSBvbmUgd291bGQgaW5kaWNhdGUgdGhhdCB0aGUgYG1lcmdlYAogCQkgKiBjb21tYW5kIG5lZWRzIHRvIGJlIHJlc2NoZWR1bGVkKS4KIAkJICovCi0JCXJldCA9ICEhcnVuX2dpdF9jb21taXQoZ2l0X3BhdGhfbWVyZ2VfbXNnKHRoZV9yZXBvc2l0b3J5KSwgb3B0cywKLQkJCQkgICAgIHJ1bl9jb21taXRfZmxhZ3MpOworCWZhc3RfZm9yd2FyZF9lZGl0OgorCQlyZXQgPSAhIXJ1bl9naXRfY29tbWl0KHIsIGdpdF9wYXRoX21lcmdlX21zZyhyKSwgb3B0cywKKwkJCQkgICAgICAgcnVuX2NvbW1pdF9mbGFncyk7CiAKIGxlYXZlX21lcmdlOgogCXN0cmJ1Zl9yZWxlYXNlKCZyZWZfbmFtZSk7CkBAIC0zNDAwLDEwICszNzM4LDExIEBACiAJcmV0dXJuIGJ1Zi5idWY7CiB9CiAKLXN0YXRpYyBpbnQgcnVuX2dpdF9jaGVja291dChzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMsIGNvbnN0IGNoYXIgKmNvbW1pdCwKLQkJCSAgICBjb25zdCBjaGFyICphY3Rpb24pCitzdGF0aWMgaW50IHJ1bl9naXRfY2hlY2tvdXQoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywKKwkJCSAgICBjb25zdCBjaGFyICpjb21taXQsIGNvbnN0IGNoYXIgKmFjdGlvbikKIHsKIAlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjbWQgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisJaW50IHJldDsKIAogCWNtZC5naXRfY21kID0gMTsKIApAQCAtMzQxMiwyNiArMzc1MSwxOCBAQAogCWFyZ3ZfYXJyYXlfcHVzaGYoJmNtZC5lbnZfYXJyYXksIEdJVF9SRUZMT0dfQUNUSU9OICI9JXMiLCBhY3Rpb24pOwogCiAJaWYgKG9wdHMtPnZlcmJvc2UpCi0JCXJldHVybiBydW5fY29tbWFuZCgmY21kKTsKKwkJcmV0ID0gcnVuX2NvbW1hbmQoJmNtZCk7CiAJZWxzZQotCQlyZXR1cm4gcnVuX2NvbW1hbmRfc2lsZW50X29uX3N1Y2Nlc3MoJmNtZCk7CisJCXJldCA9IHJ1bl9jb21tYW5kX3NpbGVudF9vbl9zdWNjZXNzKCZjbWQpOworCisJaWYgKCFyZXQpCisJCWRpc2NhcmRfaW5kZXgoci0+aW5kZXgpOworCisJcmV0dXJuIHJldDsKIH0KIAotaW50IHByZXBhcmVfYnJhbmNoX3RvX2JlX3JlYmFzZWQoc3RydWN0IHJlcGxheV9vcHRzICpvcHRzLCBjb25zdCBjaGFyICpjb21taXQpCi17Ci0JY29uc3QgY2hhciAqYWN0aW9uOwotCi0JaWYgKGNvbW1pdCAmJiAqY29tbWl0KSB7Ci0JCWFjdGlvbiA9IHJlZmxvZ19tZXNzYWdlKG9wdHMsICJzdGFydCIsICJjaGVja291dCAlcyIsIGNvbW1pdCk7Ci0JCWlmIChydW5fZ2l0X2NoZWNrb3V0KG9wdHMsIGNvbW1pdCwgYWN0aW9uKSkKLQkJCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3QgY2hlY2tvdXQgJXMiKSwgY29tbWl0KTsKLQl9Ci0KLQlyZXR1cm4gMDsKLX0KLQotc3RhdGljIGludCBjaGVja291dF9vbnRvKHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywKLQkJCSBjb25zdCBjaGFyICpvbnRvX25hbWUsIGNvbnN0IGNoYXIgKm9udG8sCitzdGF0aWMgaW50IGNoZWNrb3V0X29udG8oc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywKKwkJCSBjb25zdCBjaGFyICpvbnRvX25hbWUsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9udG8sCiAJCQkgY29uc3QgY2hhciAqb3JpZ19oZWFkKQogewogCXN0cnVjdCBvYmplY3RfaWQgb2lkOwpAQCAtMzQ0MCw3ICszNzcxLDcgQEAKIAlpZiAoZ2V0X29pZChvcmlnX2hlYWQsICZvaWQpKQogCQlyZXR1cm4gZXJyb3IoXygiJXM6IG5vdCBhIHZhbGlkIE9JRCIpLCBvcmlnX2hlYWQpOwogCi0JaWYgKHJ1bl9naXRfY2hlY2tvdXQob3B0cywgb250bywgYWN0aW9uKSkgeworCWlmIChydW5fZ2l0X2NoZWNrb3V0KHIsIG9wdHMsIG9pZF90b19oZXgob250byksIGFjdGlvbikpIHsKIAkJYXBwbHlfYXV0b3N0YXNoKG9wdHMpOwogCQlzZXF1ZW5jZXJfcmVtb3ZlX3N0YXRlKG9wdHMpOwogCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IGRldGFjaCBIRUFEIikpOwpAQCAtMzQ0OSwxNCArMzc4MCwxNCBAQAogCXJldHVybiB1cGRhdGVfcmVmKE5VTEwsICJPUklHX0hFQUQiLCAmb2lkLCBOVUxMLCAwLCBVUERBVEVfUkVGU19NU0dfT05fRVJSKTsKIH0KIAotc3RhdGljIGludCBzdG9wcGVkX2F0X2hlYWQodm9pZCkKK3N0YXRpYyBpbnQgc3RvcHBlZF9hdF9oZWFkKHN0cnVjdCByZXBvc2l0b3J5ICpyKQogewogCXN0cnVjdCBvYmplY3RfaWQgaGVhZDsKIAlzdHJ1Y3QgY29tbWl0ICpjb21taXQ7CiAJc3RydWN0IGNvbW1pdF9tZXNzYWdlIG1lc3NhZ2U7CiAKIAlpZiAoZ2V0X29pZCgiSEVBRCIsICZoZWFkKSB8fAotCSAgICAhKGNvbW1pdCA9IGxvb2t1cF9jb21taXQodGhlX3JlcG9zaXRvcnksICZoZWFkKSkgfHwKKwkgICAgIShjb21taXQgPSBsb29rdXBfY29tbWl0KHIsICZoZWFkKSkgfHwKIAkgICAgcGFyc2VfY29tbWl0KGNvbW1pdCkgfHwgZ2V0X21lc3NhZ2UoY29tbWl0LCAmbWVzc2FnZSkpCiAJCWZwcmludGYoc3RkZXJyLCBfKCJTdG9wcGVkIGF0IEhFQURcbiIpKTsKIAllbHNlIHsKQEAgLTM0NzgsNyArMzgwOSw5IEBACiAiICAgIGdpdCByZWJhc2UgLS1lZGl0LXRvZG9cbiIKICIgICAgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlXG4iKTsKIAotc3RhdGljIGludCBwaWNrX2NvbW1pdHMoc3RydWN0IHRvZG9fbGlzdCAqdG9kb19saXN0LCBzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMpCitzdGF0aWMgaW50IHBpY2tfY29tbWl0cyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCXN0cnVjdCB0b2RvX2xpc3QgKnRvZG9fbGlzdCwKKwkJCXN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cykKIHsKIAlpbnQgcmVzID0gMCwgcmVzY2hlZHVsZSA9IDA7CiAKQEAgLTM0ODYsMTEgKzM4MTksMTQgQEAKIAlpZiAob3B0cy0+YWxsb3dfZmYpCiAJCWFzc2VydCghKG9wdHMtPnNpZ25vZmYgfHwgb3B0cy0+bm9fY29tbWl0IHx8CiAJCQkJb3B0cy0+cmVjb3JkX29yaWdpbiB8fCBvcHRzLT5lZGl0KSk7Ci0JaWYgKHJlYWRfYW5kX3JlZnJlc2hfY2FjaGUob3B0cykpCisJaWYgKHJlYWRfYW5kX3JlZnJlc2hfY2FjaGUociwgb3B0cykpCiAJCXJldHVybiAtMTsKIAogCXdoaWxlICh0b2RvX2xpc3QtPmN1cnJlbnQgPCB0b2RvX2xpc3QtPm5yKSB7CiAJCXN0cnVjdCB0b2RvX2l0ZW0gKml0ZW0gPSB0b2RvX2xpc3QtPml0ZW1zICsgdG9kb19saXN0LT5jdXJyZW50OworCQljb25zdCBjaGFyICphcmcgPSB0b2RvX2l0ZW1fZ2V0X2FyZyh0b2RvX2xpc3QsIGl0ZW0pOworCQlpbnQgY2hlY2tfdG9kbyA9IDA7CisKIAkJaWYgKHNhdmVfdG9kbyh0b2RvX2xpc3QsIG9wdHMpKQogCQkJcmV0dXJuIC0xOwogCQlpZiAoaXNfcmViYXNlX2kob3B0cykpIHsKQEAgLTM1MDMsMjggKzM4MzksMzMgQEAKIAkJCQkJZnByaW50ZihmLCAiJWRcbiIsIHRvZG9fbGlzdC0+ZG9uZV9ucik7CiAJCQkJCWZjbG9zZShmKTsKIAkJCQl9Ci0JCQkJZnByaW50ZihzdGRlcnIsICJSZWJhc2luZyAoJWQvJWQpJXMiLAotCQkJCQl0b2RvX2xpc3QtPmRvbmVfbnIsCi0JCQkJCXRvZG9fbGlzdC0+dG90YWxfbnIsCi0JCQkJCW9wdHMtPnZlcmJvc2UgPyAiXG4iIDogIlxyIik7CisJCQkJaWYgKCFvcHRzLT5xdWlldCkKKwkJCQkJZnByaW50ZihzdGRlcnIsICJSZWJhc2luZyAoJWQvJWQpJXMiLAorCQkJCQkJdG9kb19saXN0LT5kb25lX25yLAorCQkJCQkJdG9kb19saXN0LT50b3RhbF9uciwKKwkJCQkJCW9wdHMtPnZlcmJvc2UgPyAiXG4iIDogIlxyIik7CiAJCQl9CiAJCQl1bmxpbmsocmViYXNlX3BhdGhfbWVzc2FnZSgpKTsKIAkJCXVubGluayhyZWJhc2VfcGF0aF9hdXRob3Jfc2NyaXB0KCkpOwogCQkJdW5saW5rKHJlYmFzZV9wYXRoX3N0b3BwZWRfc2hhKCkpOwogCQkJdW5saW5rKHJlYmFzZV9wYXRoX2FtZW5kKCkpOwotCQkJdW5saW5rKGdpdF9wYXRoX21lcmdlX2hlYWQodGhlX3JlcG9zaXRvcnkpKTsKKwkJCXVubGluayhnaXRfcGF0aF9tZXJnZV9oZWFkKHIpKTsKIAkJCWRlbGV0ZV9yZWYoTlVMTCwgIlJFQkFTRV9IRUFEIiwgTlVMTCwgUkVGX05PX0RFUkVGKTsKIAotCQkJaWYgKGl0ZW0tPmNvbW1hbmQgPT0gVE9ET19CUkVBSykKLQkJCQlyZXR1cm4gc3RvcHBlZF9hdF9oZWFkKCk7CisJCQlpZiAoaXRlbS0+Y29tbWFuZCA9PSBUT0RPX0JSRUFLKSB7CisJCQkJaWYgKCFvcHRzLT52ZXJib3NlKQorCQkJCQl0ZXJtX2NsZWFyX2xpbmUoKTsKKwkJCQlyZXR1cm4gc3RvcHBlZF9hdF9oZWFkKHIpOworCQkJfQogCQl9CiAJCWlmIChpdGVtLT5jb21tYW5kIDw9IFRPRE9fU1FVQVNIKSB7CiAJCQlpZiAoaXNfcmViYXNlX2kob3B0cykpCiAJCQkJc2V0ZW52KCJHSVRfUkVGTE9HX0FDVElPTiIsIHJlZmxvZ19tZXNzYWdlKG9wdHMsCiAJCQkJCWNvbW1hbmRfdG9fc3RyaW5nKGl0ZW0tPmNvbW1hbmQpLCBOVUxMKSwKIAkJCQkJMSk7Ci0JCQlyZXMgPSBkb19waWNrX2NvbW1pdChpdGVtLT5jb21tYW5kLCBpdGVtLT5jb21taXQsCi0JCQkJCW9wdHMsIGlzX2ZpbmFsX2ZpeHVwKHRvZG9fbGlzdCkpOworCQkJcmVzID0gZG9fcGlja19jb21taXQociwgaXRlbS0+Y29tbWFuZCwgaXRlbS0+Y29tbWl0LAorCQkJCQkgICAgIG9wdHMsIGlzX2ZpbmFsX2ZpeHVwKHRvZG9fbGlzdCksCisJCQkJCSAgICAgJmNoZWNrX3RvZG8pOwogCQkJaWYgKGlzX3JlYmFzZV9pKG9wdHMpICYmIHJlcyA8IDApIHsKIAkJCQkvKiBSZXNjaGVkdWxlICovCiAJCQkJYWR2aXNlKF8ocmVzY2hlZHVsZWRfYWR2aWNlKSwKQEAgLTM1MzgsMTQgKzM4NzksMTYgQEAKIAkJCX0KIAkJCWlmIChpdGVtLT5jb21tYW5kID09IFRPRE9fRURJVCkgewogCQkJCXN0cnVjdCBjb21taXQgKmNvbW1pdCA9IGl0ZW0tPmNvbW1pdDsKLQkJCQlpZiAoIXJlcykKKwkJCQlpZiAoIXJlcykgeworCQkJCQlpZiAoIW9wdHMtPnZlcmJvc2UpCisJCQkJCQl0ZXJtX2NsZWFyX2xpbmUoKTsKIAkJCQkJZnByaW50ZihzdGRlcnIsCiAJCQkJCQlfKCJTdG9wcGVkIGF0ICVzLi4uICAlLipzXG4iKSwKIAkJCQkJCXNob3J0X2NvbW1pdF9uYW1lKGNvbW1pdCksCi0JCQkJCQlpdGVtLT5hcmdfbGVuLCBpdGVtLT5hcmcpOwotCQkJCXJldHVybiBlcnJvcl93aXRoX3BhdGNoKGNvbW1pdCwKLQkJCQkJaXRlbS0+YXJnLCBpdGVtLT5hcmdfbGVuLCBvcHRzLCByZXMsCi0JCQkJCSFyZXMpOworCQkJCQkJaXRlbS0+YXJnX2xlbiwgYXJnKTsKKwkJCQl9CisJCQkJcmV0dXJuIGVycm9yX3dpdGhfcGF0Y2gociwgY29tbWl0LAorCQkJCQlhcmcsIGl0ZW0tPmFyZ19sZW4sIG9wdHMsIHJlcywgIXJlcyk7CiAJCQl9CiAJCQlpZiAoaXNfcmViYXNlX2kob3B0cykgJiYgIXJlcykKIAkJCQlyZWNvcmRfaW5fcmV3cml0dGVuKCZpdGVtLT5jb21taXQtPm9iamVjdC5vaWQsCkBAIC0zNTUzLDggKzM4OTYsOCBAQAogCQkJaWYgKHJlcyAmJiBpc19maXh1cChpdGVtLT5jb21tYW5kKSkgewogCQkJCWlmIChyZXMgPT0gMSkKIAkJCQkJaW50ZW5kX3RvX2FtZW5kKCk7Ci0JCQkJcmV0dXJuIGVycm9yX2ZhaWxlZF9zcXVhc2goaXRlbS0+Y29tbWl0LCBvcHRzLAotCQkJCQlpdGVtLT5hcmdfbGVuLCBpdGVtLT5hcmcpOworCQkJCXJldHVybiBlcnJvcl9mYWlsZWRfc3F1YXNoKHIsIGl0ZW0tPmNvbW1pdCwgb3B0cywKKwkJCQkJaXRlbS0+YXJnX2xlbiwgYXJnKTsKIAkJCX0gZWxzZSBpZiAocmVzICYmIGlzX3JlYmFzZV9pKG9wdHMpICYmIGl0ZW0tPmNvbW1pdCkgewogCQkJCWludCB0b19hbWVuZCA9IDA7CiAJCQkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CkBAIC0zNTcyLDQxICszOTE1LDM0IEBACiAJCQkJICAgICAgb2lkZXEoJm9wdHMtPnNxdWFzaF9vbnRvLCAmb2lkKSkpKQogCQkJCQl0b19hbWVuZCA9IDE7CiAKLQkJCQlyZXR1cm4gcmVzIHwgZXJyb3Jfd2l0aF9wYXRjaChpdGVtLT5jb21taXQsCi0JCQkJCQlpdGVtLT5hcmcsIGl0ZW0tPmFyZ19sZW4sIG9wdHMsCisJCQkJcmV0dXJuIHJlcyB8IGVycm9yX3dpdGhfcGF0Y2gociwgaXRlbS0+Y29tbWl0LAorCQkJCQkJYXJnLCBpdGVtLT5hcmdfbGVuLCBvcHRzLAogCQkJCQkJcmVzLCB0b19hbWVuZCk7CiAJCQl9CiAJCX0gZWxzZSBpZiAoaXRlbS0+Y29tbWFuZCA9PSBUT0RPX0VYRUMpIHsKLQkJCWNoYXIgKmVuZF9vZl9hcmcgPSAoY2hhciAqKShpdGVtLT5hcmcgKyBpdGVtLT5hcmdfbGVuKTsKKwkJCWNoYXIgKmVuZF9vZl9hcmcgPSAoY2hhciAqKShhcmcgKyBpdGVtLT5hcmdfbGVuKTsKIAkJCWludCBzYXZlZCA9ICplbmRfb2ZfYXJnOwotCQkJc3RydWN0IHN0YXQgc3Q7CiAKKwkJCWlmICghb3B0cy0+dmVyYm9zZSkKKwkJCQl0ZXJtX2NsZWFyX2xpbmUoKTsKIAkJCSplbmRfb2ZfYXJnID0gJ1wwJzsKLQkJCXJlcyA9IGRvX2V4ZWMoaXRlbS0+YXJnKTsKKwkJCXJlcyA9IGRvX2V4ZWMociwgYXJnKTsKIAkJCSplbmRfb2ZfYXJnID0gc2F2ZWQ7CiAKLQkJCS8qIFJlcmVhZCB0aGUgdG9kbyBmaWxlIGlmIGl0IGhhcyBjaGFuZ2VkLiAqLwotCQkJaWYgKHJlcykKLQkJCQk7IC8qIGZhbGwgdGhyb3VnaCAqLwotCQkJZWxzZSBpZiAoc3RhdChnZXRfdG9kb19wYXRoKG9wdHMpLCAmc3QpKQotCQkJCXJlcyA9IGVycm9yX2Vycm5vKF8oImNvdWxkIG5vdCBzdGF0ICclcyciKSwKLQkJCQkJCSAgZ2V0X3RvZG9fcGF0aChvcHRzKSk7Ci0JCQllbHNlIGlmIChtYXRjaF9zdGF0X2RhdGEoJnRvZG9fbGlzdC0+c3RhdCwgJnN0KSkgewotCQkJCXRvZG9fbGlzdF9yZWxlYXNlKHRvZG9fbGlzdCk7Ci0JCQkJaWYgKHJlYWRfcG9wdWxhdGVfdG9kbyh0b2RvX2xpc3QsIG9wdHMpKQotCQkJCQlyZXMgPSAtMTsgLyogbWVzc2FnZSB3YXMgcHJpbnRlZCAqLwotCQkJCS8qIGBjdXJyZW50YCB3aWxsIGJlIGluY3JlbWVudGVkIGJlbG93ICovCi0JCQkJdG9kb19saXN0LT5jdXJyZW50ID0gLTE7CisJCQlpZiAocmVzKSB7CisJCQkJaWYgKG9wdHMtPnJlc2NoZWR1bGVfZmFpbGVkX2V4ZWMpCisJCQkJCXJlc2NoZWR1bGUgPSAxOwogCQkJfQorCQkJY2hlY2tfdG9kbyA9IDE7CiAJCX0gZWxzZSBpZiAoaXRlbS0+Y29tbWFuZCA9PSBUT0RPX0xBQkVMKSB7Ci0JCQlpZiAoKHJlcyA9IGRvX2xhYmVsKGl0ZW0tPmFyZywgaXRlbS0+YXJnX2xlbikpKQorCQkJaWYgKChyZXMgPSBkb19sYWJlbChyLCBhcmcsIGl0ZW0tPmFyZ19sZW4pKSkKIAkJCQlyZXNjaGVkdWxlID0gMTsKIAkJfSBlbHNlIGlmIChpdGVtLT5jb21tYW5kID09IFRPRE9fUkVTRVQpIHsKLQkJCWlmICgocmVzID0gZG9fcmVzZXQoaXRlbS0+YXJnLCBpdGVtLT5hcmdfbGVuLCBvcHRzKSkpCisJCQlpZiAoKHJlcyA9IGRvX3Jlc2V0KHIsIGFyZywgaXRlbS0+YXJnX2xlbiwgb3B0cykpKQogCQkJCXJlc2NoZWR1bGUgPSAxOwogCQl9IGVsc2UgaWYgKGl0ZW0tPmNvbW1hbmQgPT0gVE9ET19NRVJHRSkgewotCQkJaWYgKChyZXMgPSBkb19tZXJnZShpdGVtLT5jb21taXQsCi0JCQkJCSAgICBpdGVtLT5hcmcsIGl0ZW0tPmFyZ19sZW4sCisJCQlpZiAoKHJlcyA9IGRvX21lcmdlKHIsIGl0ZW0tPmNvbW1pdCwKKwkJCQkJICAgIGFyZywgaXRlbS0+YXJnX2xlbiwKIAkJCQkJICAgIGl0ZW0tPmZsYWdzLCBvcHRzKSkgPCAwKQogCQkJCXJlc2NoZWR1bGUgPSAxOwogCQkJZWxzZSBpZiAoaXRlbS0+Y29tbWl0KQpAQCAtMzYxNCwxMCArMzk1MCw5IEBACiAJCQkJCQkgICAgcGVla19jb21tYW5kKHRvZG9fbGlzdCwgMSkpOwogCQkJaWYgKHJlcyA+IDApCiAJCQkJLyogZmFpbGVkIHdpdGggbWVyZ2UgY29uZmxpY3RzICovCi0JCQkJcmV0dXJuIGVycm9yX3dpdGhfcGF0Y2goaXRlbS0+Y29tbWl0LAotCQkJCQkJCWl0ZW0tPmFyZywKLQkJCQkJCQlpdGVtLT5hcmdfbGVuLCBvcHRzLAotCQkJCQkJCXJlcywgMCk7CisJCQkJcmV0dXJuIGVycm9yX3dpdGhfcGF0Y2gociwgaXRlbS0+Y29tbWl0LAorCQkJCQkJCWFyZywgaXRlbS0+YXJnX2xlbiwKKwkJCQkJCQlvcHRzLCByZXMsIDApOwogCQl9IGVsc2UgaWYgKCFpc19ub29wKGl0ZW0tPmNvbW1hbmQpKQogCQkJcmV0dXJuIGVycm9yKF8oInVua25vd24gY29tbWFuZCAlZCIpLCBpdGVtLT5jb21tYW5kKTsKIApAQCAtMzYzMCwxMCArMzk2NSwyNCBAQAogCQkJaWYgKHNhdmVfdG9kbyh0b2RvX2xpc3QsIG9wdHMpKQogCQkJCXJldHVybiAtMTsKIAkJCWlmIChpdGVtLT5jb21taXQpCi0JCQkJcmV0dXJuIGVycm9yX3dpdGhfcGF0Y2goaXRlbS0+Y29tbWl0LAotCQkJCQkJCWl0ZW0tPmFyZywKLQkJCQkJCQlpdGVtLT5hcmdfbGVuLCBvcHRzLAotCQkJCQkJCXJlcywgMCk7CisJCQkJcmV0dXJuIGVycm9yX3dpdGhfcGF0Y2gociwKKwkJCQkJCQlpdGVtLT5jb21taXQsCisJCQkJCQkJYXJnLCBpdGVtLT5hcmdfbGVuLAorCQkJCQkJCW9wdHMsIHJlcywgMCk7CisJCX0gZWxzZSBpZiAoaXNfcmViYXNlX2kob3B0cykgJiYgY2hlY2tfdG9kbyAmJiAhcmVzKSB7CisJCQlzdHJ1Y3Qgc3RhdCBzdDsKKworCQkJaWYgKHN0YXQoZ2V0X3RvZG9fcGF0aChvcHRzKSwgJnN0KSkgeworCQkJCXJlcyA9IGVycm9yX2Vycm5vKF8oImNvdWxkIG5vdCBzdGF0ICclcyciKSwKKwkJCQkJCSAgZ2V0X3RvZG9fcGF0aChvcHRzKSk7CisJCQl9IGVsc2UgaWYgKG1hdGNoX3N0YXRfZGF0YSgmdG9kb19saXN0LT5zdGF0LCAmc3QpKSB7CisJCQkJLyogUmVyZWFkIHRoZSB0b2RvIGZpbGUgaWYgaXQgaGFzIGNoYW5nZWQuICovCisJCQkJdG9kb19saXN0X3JlbGVhc2UodG9kb19saXN0KTsKKwkJCQlpZiAocmVhZF9wb3B1bGF0ZV90b2RvKHIsIHRvZG9fbGlzdCwgb3B0cykpCisJCQkJCXJlcyA9IC0xOyAvKiBtZXNzYWdlIHdhcyBwcmludGVkICovCisJCQkJLyogYGN1cnJlbnRgIHdpbGwgYmUgaW5jcmVtZW50ZWQgYmVsb3cgKi8KKwkJCQl0b2RvX2xpc3QtPmN1cnJlbnQgPSAtMTsKKwkJCX0KIAkJfQogCiAJCXRvZG9fbGlzdC0+Y3VycmVudCsrOwpAQCAtMzY5NSw3ICs0MDQ0LDcgQEAKIAkJCXN0cnVjdCBvYmplY3RfaWQgb3JpZywgaGVhZDsKIAogCQkJbWVtc2V0KCZsb2dfdHJlZV9vcHQsIDAsIHNpemVvZihsb2dfdHJlZV9vcHQpKTsKLQkJCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksICZsb2dfdHJlZV9vcHQsIE5VTEwpOworCQkJcmVwb19pbml0X3JldmlzaW9ucyhyLCAmbG9nX3RyZWVfb3B0LCBOVUxMKTsKIAkJCWxvZ190cmVlX29wdC5kaWZmID0gMTsKIAkJCWxvZ190cmVlX29wdC5kaWZmb3B0Lm91dHB1dF9mb3JtYXQgPQogCQkJCURJRkZfRk9STUFUX0RJRkZTVEFUOwpAQCAtMzczMCw2ICs0MDc5LDcgQEAKIAkJCQlob29rLmluID0gb3BlbihyZWJhc2VfcGF0aF9yZXdyaXR0ZW5fbGlzdCgpLAogCQkJCQlPX1JET05MWSk7CiAJCQkJaG9vay5zdGRvdXRfdG9fc3RkZXJyID0gMTsKKwkJCQlob29rLnRyYWNlMl9ob29rX25hbWUgPSAicG9zdC1yZXdyaXRlIjsKIAkJCQlhcmd2X2FycmF5X3B1c2goJmhvb2suYXJncywgcG9zdF9yZXdyaXRlX2hvb2spOwogCQkJCWFyZ3ZfYXJyYXlfcHVzaCgmaG9vay5hcmdzLCAicmViYXNlIik7CiAJCQkJLyogd2UgZG9uJ3QgY2FyZSBpZiB0aGlzIGhvb2sgZmFpbGVkICovCkBAIC0zNzM4LDggKzQwODgsMTMgQEAKIAkJfQogCQlhcHBseV9hdXRvc3Rhc2gob3B0cyk7CiAKLQkJZnByaW50ZihzdGRlcnIsICJTdWNjZXNzZnVsbHkgcmViYXNlZCBhbmQgdXBkYXRlZCAlcy5cbiIsCi0JCQloZWFkX3JlZi5idWYpOworCQlpZiAoIW9wdHMtPnF1aWV0KSB7CisJCQlpZiAoIW9wdHMtPnZlcmJvc2UpCisJCQkJdGVybV9jbGVhcl9saW5lKCk7CisJCQlmcHJpbnRmKHN0ZGVyciwKKwkJCQkiU3VjY2Vzc2Z1bGx5IHJlYmFzZWQgYW5kIHVwZGF0ZWQgJXMuXG4iLAorCQkJCWhlYWRfcmVmLmJ1Zik7CisJCX0KIAogCQlzdHJidWZfcmVsZWFzZSgmYnVmKTsKIAkJc3RyYnVmX3JlbGVhc2UoJmhlYWRfcmVmKTsKQEAgLTM3NTIsMjYgKzQxMDcsMjcgQEAKIAlyZXR1cm4gc2VxdWVuY2VyX3JlbW92ZV9zdGF0ZShvcHRzKTsKIH0KIAotc3RhdGljIGludCBjb250aW51ZV9zaW5nbGVfcGljayh2b2lkKQorc3RhdGljIGludCBjb250aW51ZV9zaW5nbGVfcGljayhzdHJ1Y3QgcmVwb3NpdG9yeSAqcikKIHsKIAljb25zdCBjaGFyICphcmd2W10gPSB7ICJjb21taXQiLCBOVUxMIH07CiAKLQlpZiAoIWZpbGVfZXhpc3RzKGdpdF9wYXRoX2NoZXJyeV9waWNrX2hlYWQodGhlX3JlcG9zaXRvcnkpKSAmJgotCSAgICAhZmlsZV9leGlzdHMoZ2l0X3BhdGhfcmV2ZXJ0X2hlYWQodGhlX3JlcG9zaXRvcnkpKSkKKwlpZiAoIWZpbGVfZXhpc3RzKGdpdF9wYXRoX2NoZXJyeV9waWNrX2hlYWQocikpICYmCisJICAgICFmaWxlX2V4aXN0cyhnaXRfcGF0aF9yZXZlcnRfaGVhZChyKSkpCiAJCXJldHVybiBlcnJvcihfKCJubyBjaGVycnktcGljayBvciByZXZlcnQgaW4gcHJvZ3Jlc3MiKSk7CiAJcmV0dXJuIHJ1bl9jb21tYW5kX3Zfb3B0KGFyZ3YsIFJVTl9HSVRfQ01EKTsKIH0KIAotc3RhdGljIGludCBjb21taXRfc3RhZ2VkX2NoYW5nZXMoc3RydWN0IHJlcGxheV9vcHRzICpvcHRzLAorc3RhdGljIGludCBjb21taXRfc3RhZ2VkX2NoYW5nZXMoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywKIAkJCQkgc3RydWN0IHRvZG9fbGlzdCAqdG9kb19saXN0KQogewogCXVuc2lnbmVkIGludCBmbGFncyA9IEFMTE9XX0VNUFRZIHwgRURJVF9NU0c7CiAJdW5zaWduZWQgaW50IGZpbmFsX2ZpeHVwID0gMCwgaXNfY2xlYW47CiAKLQlpZiAoaGFzX3Vuc3RhZ2VkX2NoYW5nZXMoMSkpCisJaWYgKGhhc191bnN0YWdlZF9jaGFuZ2VzKHIsIDEpKQogCQlyZXR1cm4gZXJyb3IoXygiY2Fubm90IHJlYmFzZTogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iKSk7CiAKLQlpc19jbGVhbiA9ICFoYXNfdW5jb21taXR0ZWRfY2hhbmdlcygwKTsKKwlpc19jbGVhbiA9ICFoYXNfdW5jb21taXR0ZWRfY2hhbmdlcyhyLCAwKTsKIAogCWlmIChmaWxlX2V4aXN0cyhyZWJhc2VfcGF0aF9hbWVuZCgpKSkgewogCQlzdHJ1Y3Qgc3RyYnVmIHJldiA9IFNUUkJVRl9JTklUOwpAQCAtMzg1NCw5ICs0MjEwLDEwIEBACiAJCQkJICovCiAJCQkJc3RydWN0IGNvbW1pdCAqY29tbWl0OwogCQkJCWNvbnN0IGNoYXIgKnBhdGggPSByZWJhc2VfcGF0aF9zcXVhc2hfbXNnKCk7CisJCQkJY29uc3QgY2hhciAqZW5jb2RpbmcgPSBnZXRfY29tbWl0X291dHB1dF9lbmNvZGluZygpOwogCi0JCQkJaWYgKHBhcnNlX2hlYWQoJmNvbW1pdCkgfHwKLQkJCQkgICAgIShwID0gZ2V0X2NvbW1pdF9idWZmZXIoY29tbWl0LCBOVUxMKSkgfHwKKwkJCQlpZiAocGFyc2VfaGVhZChyLCAmY29tbWl0KSB8fAorCQkJCSAgICAhKHAgPSBsb2dtc2dfcmVlbmNvZGUoY29tbWl0LCBOVUxMLCBlbmNvZGluZykpIHx8CiAJCQkJICAgIHdyaXRlX21lc3NhZ2UocCwgc3RybGVuKHApLCBwYXRoLCAwKSkgewogCQkJCQl1bnVzZV9jb21taXRfYnVmZmVyKGNvbW1pdCwgcCk7CiAJCQkJCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3Qgd3JpdGUgZmlsZTogIgpAQCAtMzg3MSw3ICs0MjI4LDcgQEAKIAl9CiAKIAlpZiAoaXNfY2xlYW4pIHsKLQkJY29uc3QgY2hhciAqY2hlcnJ5X3BpY2tfaGVhZCA9IGdpdF9wYXRoX2NoZXJyeV9waWNrX2hlYWQodGhlX3JlcG9zaXRvcnkpOworCQljb25zdCBjaGFyICpjaGVycnlfcGlja19oZWFkID0gZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZChyKTsKIAogCQlpZiAoZmlsZV9leGlzdHMoY2hlcnJ5X3BpY2tfaGVhZCkgJiYgdW5saW5rKGNoZXJyeV9waWNrX2hlYWQpKQogCQkJcmV0dXJuIGVycm9yKF8oImNvdWxkIG5vdCByZW1vdmUgQ0hFUlJZX1BJQ0tfSEVBRCIpKTsKQEAgLTM4NzksMTEgKzQyMzYsMTEgQEAKIAkJCXJldHVybiAwOwogCX0KIAotCWlmIChydW5fZ2l0X2NvbW1pdChmaW5hbF9maXh1cCA/IE5VTEwgOiByZWJhc2VfcGF0aF9tZXNzYWdlKCksCisJaWYgKHJ1bl9naXRfY29tbWl0KHIsIGZpbmFsX2ZpeHVwID8gTlVMTCA6IHJlYmFzZV9wYXRoX21lc3NhZ2UoKSwKIAkJCSAgIG9wdHMsIGZsYWdzKSkKIAkJcmV0dXJuIGVycm9yKF8oImNvdWxkIG5vdCBjb21taXQgc3RhZ2VkIGNoYW5nZXMuIikpOwogCXVubGluayhyZWJhc2VfcGF0aF9hbWVuZCgpKTsKLQl1bmxpbmsoZ2l0X3BhdGhfbWVyZ2VfaGVhZCh0aGVfcmVwb3NpdG9yeSkpOworCXVubGluayhnaXRfcGF0aF9tZXJnZV9oZWFkKHIpKTsKIAlpZiAoZmluYWxfZml4dXApIHsKIAkJdW5saW5rKHJlYmFzZV9wYXRoX2ZpeHVwX21zZygpKTsKIAkJdW5saW5rKHJlYmFzZV9wYXRoX3NxdWFzaF9tc2coKSk7CkBAIC0zOTAwLDM2ICs0MjU3LDQ2IEBACiAJcmV0dXJuIDA7CiB9CiAKLWludCBzZXF1ZW5jZXJfY29udGludWUoc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKQoraW50IHNlcXVlbmNlcl9jb250aW51ZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKQogewogCXN0cnVjdCB0b2RvX2xpc3QgdG9kb19saXN0ID0gVE9ET19MSVNUX0lOSVQ7CiAJaW50IHJlczsKIAotCWlmIChyZWFkX2FuZF9yZWZyZXNoX2NhY2hlKG9wdHMpKQorCWlmIChyZWFkX2FuZF9yZWZyZXNoX2NhY2hlKHIsIG9wdHMpKQogCQlyZXR1cm4gLTE7CiAKIAlpZiAocmVhZF9wb3B1bGF0ZV9vcHRzKG9wdHMpKQogCQlyZXR1cm4gLTE7CiAJaWYgKGlzX3JlYmFzZV9pKG9wdHMpKSB7Ci0JCWlmICgocmVzID0gcmVhZF9wb3B1bGF0ZV90b2RvKCZ0b2RvX2xpc3QsIG9wdHMpKSkKKwkJaWYgKChyZXMgPSByZWFkX3BvcHVsYXRlX3RvZG8ociwgJnRvZG9fbGlzdCwgb3B0cykpKQogCQkJZ290byByZWxlYXNlX3RvZG9fbGlzdDsKLQkJaWYgKGNvbW1pdF9zdGFnZWRfY2hhbmdlcyhvcHRzLCAmdG9kb19saXN0KSkKLQkJCXJldHVybiAtMTsKKworCQlpZiAoZmlsZV9leGlzdHMocmViYXNlX3BhdGhfZHJvcHBlZCgpKSkgeworCQkJaWYgKChyZXMgPSB0b2RvX2xpc3RfY2hlY2tfYWdhaW5zdF9iYWNrdXAociwgJnRvZG9fbGlzdCkpKQorCQkJCWdvdG8gcmVsZWFzZV90b2RvX2xpc3Q7CisKKwkJCXVubGluayhyZWJhc2VfcGF0aF9kcm9wcGVkKCkpOworCQl9CisKKwkJaWYgKGNvbW1pdF9zdGFnZWRfY2hhbmdlcyhyLCBvcHRzLCAmdG9kb19saXN0KSkgeworCQkJcmVzID0gLTE7CisJCQlnb3RvIHJlbGVhc2VfdG9kb19saXN0OworCQl9CiAJfSBlbHNlIGlmICghZmlsZV9leGlzdHMoZ2V0X3RvZG9fcGF0aChvcHRzKSkpCi0JCXJldHVybiBjb250aW51ZV9zaW5nbGVfcGljaygpOwotCWVsc2UgaWYgKChyZXMgPSByZWFkX3BvcHVsYXRlX3RvZG8oJnRvZG9fbGlzdCwgb3B0cykpKQorCQlyZXR1cm4gY29udGludWVfc2luZ2xlX3BpY2socik7CisJZWxzZSBpZiAoKHJlcyA9IHJlYWRfcG9wdWxhdGVfdG9kbyhyLCAmdG9kb19saXN0LCBvcHRzKSkpCiAJCWdvdG8gcmVsZWFzZV90b2RvX2xpc3Q7CiAKIAlpZiAoIWlzX3JlYmFzZV9pKG9wdHMpKSB7CiAJCS8qIFZlcmlmeSB0aGF0IHRoZSBjb25mbGljdCBoYXMgYmVlbiByZXNvbHZlZCAqLwotCQlpZiAoZmlsZV9leGlzdHMoZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZCh0aGVfcmVwb3NpdG9yeSkpIHx8Ci0JCSAgICBmaWxlX2V4aXN0cyhnaXRfcGF0aF9yZXZlcnRfaGVhZCh0aGVfcmVwb3NpdG9yeSkpKSB7Ci0JCQlyZXMgPSBjb250aW51ZV9zaW5nbGVfcGljaygpOworCQlpZiAoZmlsZV9leGlzdHMoZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZChyKSkgfHwKKwkJICAgIGZpbGVfZXhpc3RzKGdpdF9wYXRoX3JldmVydF9oZWFkKHIpKSkgeworCQkJcmVzID0gY29udGludWVfc2luZ2xlX3BpY2socik7CiAJCQlpZiAocmVzKQogCQkJCWdvdG8gcmVsZWFzZV90b2RvX2xpc3Q7CiAJCX0KLQkJaWYgKGluZGV4X2RpZmZlcnNfZnJvbSgiSEVBRCIsIE5VTEwsIDApKSB7Ci0JCQlyZXMgPSBlcnJvcl9kaXJ0eV9pbmRleChvcHRzKTsKKwkJaWYgKGluZGV4X2RpZmZlcnNfZnJvbShyLCAiSEVBRCIsIE5VTEwsIDApKSB7CisJCQlyZXMgPSBlcnJvcl9kaXJ0eV9pbmRleChyLCBvcHRzKTsKIAkJCWdvdG8gcmVsZWFzZV90b2RvX2xpc3Q7CiAJCX0KIAkJdG9kb19saXN0LmN1cnJlbnQrKzsKQEAgLTM5NDMsMjcgKzQzMTAsMzMgQEAKIAkJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CiAJfQogCi0JcmVzID0gcGlja19jb21taXRzKCZ0b2RvX2xpc3QsIG9wdHMpOworCXJlcyA9IHBpY2tfY29tbWl0cyhyLCAmdG9kb19saXN0LCBvcHRzKTsKIHJlbGVhc2VfdG9kb19saXN0OgogCXRvZG9fbGlzdF9yZWxlYXNlKCZ0b2RvX2xpc3QpOwogCXJldHVybiByZXM7CiB9CiAKLXN0YXRpYyBpbnQgc2luZ2xlX3BpY2soc3RydWN0IGNvbW1pdCAqY21pdCwgc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKQorc3RhdGljIGludCBzaW5nbGVfcGljayhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJICAgICAgIHN0cnVjdCBjb21taXQgKmNtaXQsCisJCSAgICAgICBzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMpCiB7CisJaW50IGNoZWNrX3RvZG87CisKIAlzZXRlbnYoR0lUX1JFRkxPR19BQ1RJT04sIGFjdGlvbl9uYW1lKG9wdHMpLCAwKTsKLQlyZXR1cm4gZG9fcGlja19jb21taXQob3B0cy0+YWN0aW9uID09IFJFUExBWV9QSUNLID8KLQkJVE9ET19QSUNLIDogVE9ET19SRVZFUlQsIGNtaXQsIG9wdHMsIDApOworCXJldHVybiBkb19waWNrX2NvbW1pdChyLCBvcHRzLT5hY3Rpb24gPT0gUkVQTEFZX1BJQ0sgPworCQkJICAgICAgVE9ET19QSUNLIDogVE9ET19SRVZFUlQsIGNtaXQsIG9wdHMsIDAsCisJCQkgICAgICAmY2hlY2tfdG9kbyk7CiB9CiAKLWludCBzZXF1ZW5jZXJfcGlja19yZXZpc2lvbnMoc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKQoraW50IHNlcXVlbmNlcl9waWNrX3JldmlzaW9ucyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgICAgc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKQogewogCXN0cnVjdCB0b2RvX2xpc3QgdG9kb19saXN0ID0gVE9ET19MSVNUX0lOSVQ7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJaW50IGksIHJlczsKIAogCWFzc2VydChvcHRzLT5yZXZzKTsKLQlpZiAocmVhZF9hbmRfcmVmcmVzaF9jYWNoZShvcHRzKSkKKwlpZiAocmVhZF9hbmRfcmVmcmVzaF9jYWNoZShyLCBvcHRzKSkKIAkJcmV0dXJuIC0xOwogCiAJZm9yIChpID0gMDsgaSA8IG9wdHMtPnJldnMtPnBlbmRpbmcubnI7IGkrKykgewpAQCAtMzk3NSw4ICs0MzQ4LDggQEAKIAkJCWNvbnRpbnVlOwogCiAJCWlmICghZ2V0X29pZChuYW1lLCAmb2lkKSkgewotCQkJaWYgKCFsb29rdXBfY29tbWl0X3JlZmVyZW5jZV9nZW50bHkodGhlX3JlcG9zaXRvcnksICZvaWQsIDEpKSB7Ci0JCQkJZW51bSBvYmplY3RfdHlwZSB0eXBlID0gb2lkX29iamVjdF9pbmZvKHRoZV9yZXBvc2l0b3J5LAorCQkJaWYgKCFsb29rdXBfY29tbWl0X3JlZmVyZW5jZV9nZW50bHkociwgJm9pZCwgMSkpIHsKKwkJCQllbnVtIG9iamVjdF90eXBlIHR5cGUgPSBvaWRfb2JqZWN0X2luZm8ociwKIAkJCQkJCQkJCSZvaWQsCiAJCQkJCQkJCQlOVUxMKTsKIAkJCQlyZXR1cm4gZXJyb3IoXygiJXM6IGNhbid0IGNoZXJyeS1waWNrIGEgJXMiKSwKQEAgLTQwMDUsNyArNDM3OCw3IEBACiAJCQlyZXR1cm4gZXJyb3IoXygiZW1wdHkgY29tbWl0IHNldCBwYXNzZWQiKSk7CiAJCWlmIChnZXRfcmV2aXNpb24ob3B0cy0+cmV2cykpCiAJCQlCVUcoInVuZXhwZWN0ZWQgZXh0cmEgY29tbWl0IGZyb20gd2FsayIpOwotCQlyZXR1cm4gc2luZ2xlX3BpY2soY21pdCwgb3B0cyk7CisJCXJldHVybiBzaW5nbGVfcGljayhyLCBjbWl0LCBvcHRzKTsKIAl9CiAKIAkvKgpAQCAtNDAxNSw3ICs0Mzg4LDcgQEAKIAkgKi8KIAogCWlmICh3YWxrX3JldnNfcG9wdWxhdGVfdG9kbygmdG9kb19saXN0LCBvcHRzKSB8fAotCQkJY3JlYXRlX3NlcV9kaXIoKSA8IDApCisJCQljcmVhdGVfc2VxX2RpcihyKSA8IDApCiAJCXJldHVybiAtMTsKIAlpZiAoZ2V0X29pZCgiSEVBRCIsICZvaWQpICYmIChvcHRzLT5hY3Rpb24gPT0gUkVQTEFZX1JFVkVSVCkpCiAJCXJldHVybiBlcnJvcihfKCJjYW4ndCByZXZlcnQgYXMgaW5pdGlhbCBjb21taXQiKSk7CkBAIC00MDI0LDcgKzQzOTcsNyBAQAogCWlmIChzYXZlX29wdHMob3B0cykpCiAJCXJldHVybiAtMTsKIAl1cGRhdGVfYWJvcnRfc2FmZXR5X2ZpbGUoKTsKLQlyZXMgPSBwaWNrX2NvbW1pdHMoJnRvZG9fbGlzdCwgb3B0cyk7CisJcmVzID0gcGlja19jb21taXRzKHIsICZ0b2RvX2xpc3QsIG9wdHMpOwogCXRvZG9fbGlzdF9yZWxlYXNlKCZ0b2RvX2xpc3QpOwogCXJldHVybiByZXM7CiB9CkBAIC00MDM2LDggKzQ0MDksNyBAQAogCWludCBoYXNfZm9vdGVyOwogCiAJc3RyYnVmX2FkZHN0cigmc29iLCBzaWduX29mZl9oZWFkZXIpOwotCXN0cmJ1Zl9hZGRzdHIoJnNvYiwgZm10X25hbWUoZ2V0ZW52KCJHSVRfQ09NTUlUVEVSX05BTUUiKSwKLQkJCQlnZXRlbnYoIkdJVF9DT01NSVRURVJfRU1BSUwiKSkpOworCXN0cmJ1Zl9hZGRzdHIoJnNvYiwgZm10X25hbWUoV0FOVF9DT01NSVRURVJfSURFTlQpKTsKIAlzdHJidWZfYWRkY2goJnNvYiwgJ1xuJyk7CiAKIAlpZiAoIWlnbm9yZV9mb290ZXIpCkBAIC00MDk1LDkgKzQ0NjcsMTQgQEAKIAljaGFyIGxhYmVsW0ZMRVhfQVJSQVldOwogfTsKIAotc3RhdGljIGludCBsYWJlbHNfY21wKGNvbnN0IHZvaWQgKmZuZGF0YSwgY29uc3Qgc3RydWN0IGxhYmVsc19lbnRyeSAqYSwKLQkJICAgICAgY29uc3Qgc3RydWN0IGxhYmVsc19lbnRyeSAqYiwgY29uc3Qgdm9pZCAqa2V5KQorc3RhdGljIGludCBsYWJlbHNfY21wKGNvbnN0IHZvaWQgKmZuZGF0YSwgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmVwdHIsCisJCSAgICAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplbnRyeV9vcl9rZXksIGNvbnN0IHZvaWQgKmtleSkKIHsKKwljb25zdCBzdHJ1Y3QgbGFiZWxzX2VudHJ5ICphLCAqYjsKKworCWEgPSBjb250YWluZXJfb2YoZXB0ciwgY29uc3Qgc3RydWN0IGxhYmVsc19lbnRyeSwgZW50cnkpOworCWIgPSBjb250YWluZXJfb2YoZW50cnlfb3Jfa2V5LCBjb25zdCBzdHJ1Y3QgbGFiZWxzX2VudHJ5LCBlbnRyeSk7CisKIAlyZXR1cm4ga2V5ID8gc3RyY21wKGEtPmxhYmVsLCBrZXkpIDogc3RyY21wKGEtPmxhYmVsLCBiLT5sYWJlbCk7CiB9CiAKQEAgLTQxMTgsNyArNDQ5NSw2IEBACiAJc3RydWN0IGxhYmVsc19lbnRyeSAqbGFiZWxzX2VudHJ5OwogCXN0cnVjdCBzdHJpbmdfZW50cnkgKnN0cmluZ19lbnRyeTsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIGR1bW15OwotCXNpemVfdCBsZW47CiAJaW50IGk7CiAKIAlzdHJpbmdfZW50cnkgPSBvaWRtYXBfZ2V0KCZzdGF0ZS0+Y29tbWl0MmxhYmVsLCBvaWQpOwpAQCAtNDEzOCwxMSArNDUxNCwxMSBAQAogCSAqIGFiYnJldmlhdGlvbiBmb3IgYW55IHVuaW50ZXJlc3RpbmcgY29tbWl0J3MgbmFtZXMgdGhhdCBkb2VzIG5vdAogCSAqIGNsYXNoIHdpdGggYW55IG90aGVyIGxhYmVsLgogCSAqLworCXN0cmJ1Zl9yZXNldCgmc3RhdGUtPmJ1Zik7CiAJaWYgKCFsYWJlbCkgewogCQljaGFyICpwOwogCi0JCXN0cmJ1Zl9yZXNldCgmc3RhdGUtPmJ1Zik7Ci0JCXN0cmJ1Zl9ncm93KCZzdGF0ZS0+YnVmLCBHSVRfU0hBMV9IRVhTWik7CisJCXN0cmJ1Zl9ncm93KCZzdGF0ZS0+YnVmLCBHSVRfTUFYX0hFWFNaKTsKIAkJbGFiZWwgPSBwID0gc3RhdGUtPmJ1Zi5idWY7CiAKIAkJZmluZF91bmlxdWVfYWJicmV2X3IocCwgb2lkLCBkZWZhdWx0X2FiYnJldik7CkBAIC00MTU1LDcgKzQ1MzEsNyBAQAogCQkJc2l6ZV90IGkgPSBzdHJsZW4ocCkgKyAxOwogCiAJCQlvaWRfdG9faGV4X3IocCwgb2lkKTsKLQkJCWZvciAoOyBpIDwgR0lUX1NIQTFfSEVYU1o7IGkrKykgeworCQkJZm9yICg7IGkgPCB0aGVfaGFzaF9hbGdvLT5oZXhzejsgaSsrKSB7CiAJCQkJY2hhciBzYXZlID0gcFtpXTsKIAkJCQlwW2ldID0gJ1wwJzsKIAkJCQlpZiAoIWhhc2htYXBfZ2V0X2Zyb21faGFzaCgmc3RhdGUtPmxhYmVscywKQEAgLTQxNjQsMzcgKzQ1NDAsNjAgQEAKIAkJCQlwW2ldID0gc2F2ZTsKIAkJCX0KIAkJfQotCX0gZWxzZSBpZiAoKChsZW4gPSBzdHJsZW4obGFiZWwpKSA9PSB0aGVfaGFzaF9hbGdvLT5oZXhzeiAmJgotCQkgICAgIWdldF9vaWRfaGV4KGxhYmVsLCAmZHVtbXkpKSB8fAotCQkgICAobGVuID09IDEgJiYgKmxhYmVsID09ICcjJykgfHwKLQkJICAgaGFzaG1hcF9nZXRfZnJvbV9oYXNoKCZzdGF0ZS0+bGFiZWxzLAotCQkJCQkgc3RyaWhhc2gobGFiZWwpLCBsYWJlbCkpIHsKLQkJLyoKLQkJICogSWYgdGhlIGxhYmVsIGFscmVhZHkgZXhpc3RzLCBvciBpZiB0aGUgbGFiZWwgaXMgYSB2YWxpZCBmdWxsCi0JCSAqIE9JRCwgb3IgdGhlIGxhYmVsIGlzIGEgJyMnICh3aGljaCB3ZSB1c2UgYXMgYSBzZXBhcmF0b3IKLQkJICogYmV0d2VlbiBtZXJnZSBoZWFkcyBhbmQgb25lbGluZSksIHdlIGFwcGVuZCBhIGRhc2ggYW5kIGEKLQkJICogbnVtYmVyIHRvIG1ha2UgaXQgdW5pcXVlLgotCQkgKi8KKwl9IGVsc2UgewogCQlzdHJ1Y3Qgc3RyYnVmICpidWYgPSAmc3RhdGUtPmJ1ZjsKIAotCQlzdHJidWZfcmVzZXQoYnVmKTsKLQkJc3RyYnVmX2FkZChidWYsIGxhYmVsLCBsZW4pOwotCi0JCWZvciAoaSA9IDI7IDsgaSsrKSB7Ci0JCQlzdHJidWZfc2V0bGVuKGJ1ZiwgbGVuKTsKLQkJCXN0cmJ1Zl9hZGRmKGJ1ZiwgIi0lZCIsIGkpOwotCQkJaWYgKCFoYXNobWFwX2dldF9mcm9tX2hhc2goJnN0YXRlLT5sYWJlbHMsCi0JCQkJCQkgICBzdHJpaGFzaChidWYtPmJ1ZiksCi0JCQkJCQkgICBidWYtPmJ1ZikpCi0JCQkJYnJlYWs7CisJCS8qCisJCSAqIFNhbml0aXplIGxhYmVscyBieSByZXBsYWNpbmcgbm9uLWFscGhhLW51bWVyaWMgY2hhcmFjdGVycworCQkgKiAoaW5jbHVkaW5nIHdoaXRlLXNwYWNlIG9uZXMpIGJ5IGRhc2hlcywgYXMgdGhleSBtaWdodCBiZQorCQkgKiBpbGxlZ2FsIGluIGZpbGUgbmFtZXMgKGFuZCBoZW5jZSBpbiByZWYgbmFtZXMpLgorCQkgKgorCQkgKiBOb3RlIHRoYXQgd2UgcmV0YWluIG5vbi1BU0NJSSBVVEYtOCBjaGFyYWN0ZXJzIChpZGVudGlmaWVkCisJCSAqIHZpYSB0aGUgbW9zdCBzaWduaWZpY2FudCBiaXQpLiBUaGV5IHNob3VsZCBiZSBhbGwgYWNjZXB0YWJsZQorCQkgKiBpbiBmaWxlIG5hbWVzLiBXZSBkbyBub3QgdmFsaWRhdGUgdGhlIFVURi04IGhlcmUsIHRoYXQncyBub3QKKwkJICogdGhlIGpvYiBvZiB0aGlzIGZ1bmN0aW9uLgorCQkgKi8KKwkJZm9yICg7ICpsYWJlbDsgbGFiZWwrKykKKwkJCWlmICgoKmxhYmVsICYgMHg4MCkgfHwgaXNhbG51bSgqbGFiZWwpKQorCQkJCXN0cmJ1Zl9hZGRjaChidWYsICpsYWJlbCk7CisJCQkvKiBhdm9pZCBsZWFkaW5nIGRhc2ggYW5kIGRvdWJsZS1kYXNoZXMgKi8KKwkJCWVsc2UgaWYgKGJ1Zi0+bGVuICYmIGJ1Zi0+YnVmW2J1Zi0+bGVuIC0gMV0gIT0gJy0nKQorCQkJCXN0cmJ1Zl9hZGRjaChidWYsICctJyk7CisJCWlmICghYnVmLT5sZW4pIHsKKwkJCXN0cmJ1Zl9hZGRzdHIoYnVmLCAicmV2LSIpOworCQkJc3RyYnVmX2FkZF91bmlxdWVfYWJicmV2KGJ1Ziwgb2lkLCBkZWZhdWx0X2FiYnJldik7CiAJCX0KLQogCQlsYWJlbCA9IGJ1Zi0+YnVmOworCisJCWlmICgoYnVmLT5sZW4gPT0gdGhlX2hhc2hfYWxnby0+aGV4c3ogJiYKKwkJICAgICAhZ2V0X29pZF9oZXgobGFiZWwsICZkdW1teSkpIHx8CisJCSAgICAoYnVmLT5sZW4gPT0gMSAmJiAqbGFiZWwgPT0gJyMnKSB8fAorCQkgICAgaGFzaG1hcF9nZXRfZnJvbV9oYXNoKCZzdGF0ZS0+bGFiZWxzLAorCQkJCQkgIHN0cmloYXNoKGxhYmVsKSwgbGFiZWwpKSB7CisJCQkvKgorCQkJICogSWYgdGhlIGxhYmVsIGFscmVhZHkgZXhpc3RzLCBvciBpZiB0aGUgbGFiZWwgaXMgYQorCQkJICogdmFsaWQgZnVsbCBPSUQsIG9yIHRoZSBsYWJlbCBpcyBhICcjJyAod2hpY2ggd2UgdXNlCisJCQkgKiBhcyBhIHNlcGFyYXRvciBiZXR3ZWVuIG1lcmdlIGhlYWRzIGFuZCBvbmVsaW5lKSwgd2UKKwkJCSAqIGFwcGVuZCBhIGRhc2ggYW5kIGEgbnVtYmVyIHRvIG1ha2UgaXQgdW5pcXVlLgorCQkJICovCisJCQlzaXplX3QgbGVuID0gYnVmLT5sZW47CisKKwkJCWZvciAoaSA9IDI7IDsgaSsrKSB7CisJCQkJc3RyYnVmX3NldGxlbihidWYsIGxlbik7CisJCQkJc3RyYnVmX2FkZGYoYnVmLCAiLSVkIiwgaSk7CisJCQkJaWYgKCFoYXNobWFwX2dldF9mcm9tX2hhc2goJnN0YXRlLT5sYWJlbHMsCisJCQkJCQkJICAgc3RyaWhhc2goYnVmLT5idWYpLAorCQkJCQkJCSAgIGJ1Zi0+YnVmKSkKKwkJCQkJYnJlYWs7CisJCQl9CisKKwkJCWxhYmVsID0gYnVmLT5idWY7CisJCX0KIAl9CiAKIAlGTEVYX0FMTE9DX1NUUihsYWJlbHNfZW50cnksIGxhYmVsLCBsYWJlbCk7Ci0JaGFzaG1hcF9lbnRyeV9pbml0KGxhYmVsc19lbnRyeSwgc3RyaWhhc2gobGFiZWwpKTsKLQloYXNobWFwX2FkZCgmc3RhdGUtPmxhYmVscywgbGFiZWxzX2VudHJ5KTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmxhYmVsc19lbnRyeS0+ZW50cnksIHN0cmloYXNoKGxhYmVsKSk7CisJaGFzaG1hcF9hZGQoJnN0YXRlLT5sYWJlbHMsICZsYWJlbHNfZW50cnktPmVudHJ5KTsKIAogCUZMRVhfQUxMT0NfU1RSKHN0cmluZ19lbnRyeSwgc3RyaW5nLCBsYWJlbCk7CiAJb2lkY3B5KCZzdHJpbmdfZW50cnktPmVudHJ5Lm9pZCwgb2lkKTsKQEAgLTQyMDQsMTEgKzQ2MDMsMTEgQEAKIH0KIAogc3RhdGljIGludCBtYWtlX3NjcmlwdF93aXRoX21lcmdlcyhzdHJ1Y3QgcHJldHR5X3ByaW50X2NvbnRleHQgKnBwLAotCQkJCSAgIHN0cnVjdCByZXZfaW5mbyAqcmV2cywgRklMRSAqb3V0LAorCQkJCSAgIHN0cnVjdCByZXZfaW5mbyAqcmV2cywgc3RydWN0IHN0cmJ1ZiAqb3V0LAogCQkJCSAgIHVuc2lnbmVkIGZsYWdzKQogewotCWludCBrZWVwX2VtcHR5ID0gZmxhZ3MgJiBUT0RPX0xJU1RfS0VFUF9FTVBUWTsKIAlpbnQgcmViYXNlX2NvdXNpbnMgPSBmbGFncyAmIFRPRE9fTElTVF9SRUJBU0VfQ09VU0lOUzsKKwlpbnQgcm9vdF93aXRoX29udG8gPSBmbGFncyAmIFRPRE9fTElTVF9ST09UX1dJVEhfT05UTzsKIAlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklULCBvbmVsaW5lID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHN0cmJ1ZiBsYWJlbCA9IFNUUkJVRl9JTklUOwogCXN0cnVjdCBjb21taXRfbGlzdCAqY29tbWl0cyA9IE5VTEwsICoqdGFpbCA9ICZjb21taXRzLCAqaXRlcjsKQEAgLTQyMjgsMTQgKzQ2MjcsMTkgQEAKIAogCW9pZG1hcF9pbml0KCZjb21taXQydG9kbywgMCk7CiAJb2lkbWFwX2luaXQoJnN0YXRlLmNvbW1pdDJsYWJlbCwgMCk7Ci0JaGFzaG1hcF9pbml0KCZzdGF0ZS5sYWJlbHMsIChoYXNobWFwX2NtcF9mbikgbGFiZWxzX2NtcCwgTlVMTCwgMCk7CisJaGFzaG1hcF9pbml0KCZzdGF0ZS5sYWJlbHMsIGxhYmVsc19jbXAsIE5VTEwsIDApOwogCXN0cmJ1Zl9pbml0KCZzdGF0ZS5idWYsIDMyKTsKIAogCWlmIChyZXZzLT5jbWRsaW5lLm5yICYmIChyZXZzLT5jbWRsaW5lLnJldlswXS5mbGFncyAmIEJPVFRPTSkpIHsKKwkJc3RydWN0IGxhYmVsc19lbnRyeSAqb250b19sYWJlbF9lbnRyeTsKIAkJc3RydWN0IG9iamVjdF9pZCAqb2lkID0gJnJldnMtPmNtZGxpbmUucmV2WzBdLml0ZW0tPm9pZDsKIAkJRkxFWF9BTExPQ19TVFIoZW50cnksIHN0cmluZywgIm9udG8iKTsKIAkJb2lkY3B5KCZlbnRyeS0+ZW50cnkub2lkLCBvaWQpOwogCQlvaWRtYXBfcHV0KCZzdGF0ZS5jb21taXQybGFiZWwsIGVudHJ5KTsKKworCQlGTEVYX0FMTE9DX1NUUihvbnRvX2xhYmVsX2VudHJ5LCBsYWJlbCwgIm9udG8iKTsKKwkJaGFzaG1hcF9lbnRyeV9pbml0KCZvbnRvX2xhYmVsX2VudHJ5LT5lbnRyeSwgc3RyaWhhc2goIm9udG8iKSk7CisJCWhhc2htYXBfYWRkKCZzdGF0ZS5sYWJlbHMsICZvbnRvX2xhYmVsX2VudHJ5LT5lbnRyeSk7CiAJfQogCiAJLyoKQEAgLTQyNjQsOCArNDY2OCw2IEBACiAJCWlmICghdG9fbWVyZ2UpIHsKIAkJCS8qIG5vbi1tZXJnZSBjb21taXQ6IGVhc3kgY2FzZSAqLwogCQkJc3RyYnVmX3Jlc2V0KCZidWYpOwotCQkJaWYgKCFrZWVwX2VtcHR5ICYmIGlzX2VtcHR5KQotCQkJCXN0cmJ1Zl9hZGRmKCZidWYsICIlYyAiLCBjb21tZW50X2xpbmVfY2hhcik7CiAJCQlzdHJidWZfYWRkZigmYnVmLCAiJXMgJXMgJXMiLCBjbWRfcGljaywKIAkJCQkgICAgb2lkX3RvX2hleCgmY29tbWl0LT5vYmplY3Qub2lkKSwKIAkJCQkgICAgb25lbGluZS5idWYpOwpAQCAtNDI5MCwxMCArNDY5Miw2IEBACiAJCWVsc2UKIAkJCXN0cmJ1Zl9hZGRidWYoJmxhYmVsLCAmb25lbGluZSk7CiAKLQkJZm9yIChwMSA9IGxhYmVsLmJ1ZjsgKnAxOyBwMSsrKQotCQkJaWYgKGlzc3BhY2UoKnAxKSkKLQkJCQkqKGNoYXIgKilwMSA9ICctJzsKLQogCQlzdHJidWZfcmVzZXQoJmJ1Zik7CiAJCXN0cmJ1Zl9hZGRmKCZidWYsICIlcyAtQyAlcyIsCiAJCQkgICAgY21kX21lcmdlLCBvaWRfdG9faGV4KCZjb21taXQtPm9iamVjdC5vaWQpKTsKQEAgLTQzMzYsNyArNDczNCw3IEBACiAJCQkJbGFiZWxfb2lkKG9pZCwgImJyYW5jaC1wb2ludCIsICZzdGF0ZSk7CiAJCX0KIAotCQkvKiBBZGQgSEVBRCBhcyBpbXBsaWN0ICJ0aXAgb2YgYnJhbmNoIiAqLworCQkvKiBBZGQgSEVBRCBhcyBpbXBsaWNpdCAidGlwIG9mIGJyYW5jaCIgKi8KIAkJaWYgKCFpdGVyLT5uZXh0KQogCQkJdGlwc190YWlsID0gJmNvbW1pdF9saXN0X2luc2VydChpdGVyLT5pdGVtLAogCQkJCQkJCXRpcHNfdGFpbCktPm5leHQ7CkBAIC00MzQ5LDcgKzQ3NDcsNyBAQAogCSAqIGdhdGhlcmluZyBjb21taXRzIG5vdCB5ZXQgc2hvd24sIHJldmVyc2luZyB0aGUgbGlzdCBvbiB0aGUgZmx5LAogCSAqIHRoZW4gb3V0cHV0dGluZyB0aGF0IGxpc3QgKGxhYmVsaW5nIHJldmlzaW9ucyBhcyBuZWVkZWQpLgogCSAqLwotCWZwcmludGYob3V0LCAiJXMgb250b1xuIiwgY21kX2xhYmVsKTsKKwlzdHJidWZfYWRkZihvdXQsICIlcyBvbnRvXG4iLCBjbWRfbGFiZWwpOwogCWZvciAoaXRlciA9IHRpcHM7IGl0ZXI7IGl0ZXIgPSBpdGVyLT5uZXh0KSB7CiAJCXN0cnVjdCBjb21taXRfbGlzdCAqbGlzdCA9IE5VTEwsICppdGVyMjsKIApAQCAtNDM1OSw5ICs0NzU3LDkgQEAKIAkJZW50cnkgPSBvaWRtYXBfZ2V0KCZzdGF0ZS5jb21taXQybGFiZWwsICZjb21taXQtPm9iamVjdC5vaWQpOwogCiAJCWlmIChlbnRyeSkKLQkJCWZwcmludGYob3V0LCAiXG4lYyBCcmFuY2ggJXNcbiIsIGNvbW1lbnRfbGluZV9jaGFyLCBlbnRyeS0+c3RyaW5nKTsKKwkJCXN0cmJ1Zl9hZGRmKG91dCwgIlxuJWMgQnJhbmNoICVzXG4iLCBjb21tZW50X2xpbmVfY2hhciwgZW50cnktPnN0cmluZyk7CiAJCWVsc2UKLQkJCWZwcmludGYob3V0LCAiXG4iKTsKKwkJCXN0cmJ1Zl9hZGRjaChvdXQsICdcbicpOwogCiAJCXdoaWxlIChvaWRzZXRfY29udGFpbnMoJmludGVyZXN0aW5nLCAmY29tbWl0LT5vYmplY3Qub2lkKSAmJgogCQkgICAgICAgIW9pZHNldF9jb250YWlucygmc2hvd24sICZjb21taXQtPm9iamVjdC5vaWQpKSB7CkBAIC00Mzc0LDggKzQ3NzIsOSBAQAogCQl9CiAKIAkJaWYgKCFjb21taXQpCi0JCQlmcHJpbnRmKG91dCwgIiVzICVzXG4iLCBjbWRfcmVzZXQsCi0JCQkJcmViYXNlX2NvdXNpbnMgPyAib250byIgOiAiW25ldyByb290XSIpOworCQkJc3RyYnVmX2FkZGYob3V0LCAiJXMgJXNcbiIsIGNtZF9yZXNldCwKKwkJCQkgICAgcmViYXNlX2NvdXNpbnMgfHwgcm9vdF93aXRoX29udG8gPworCQkJCSAgICAib250byIgOiAiW25ldyByb290XSIpOwogCQllbHNlIHsKIAkJCWNvbnN0IGNoYXIgKnRvID0gTlVMTDsKIApAQCAtNDM4OCwxMiArNDc4NywxMiBAQAogCQkJCQkgICAgICAgJnN0YXRlKTsKIAogCQkJaWYgKCF0byB8fCAhc3RyY21wKHRvLCAib250byIpKQotCQkJCWZwcmludGYob3V0LCAiJXMgb250b1xuIiwgY21kX3Jlc2V0KTsKKwkJCQlzdHJidWZfYWRkZihvdXQsICIlcyBvbnRvXG4iLCBjbWRfcmVzZXQpOwogCQkJZWxzZSB7CiAJCQkJc3RyYnVmX3Jlc2V0KCZvbmVsaW5lKTsKIAkJCQlwcmV0dHlfcHJpbnRfY29tbWl0KHBwLCBjb21taXQsICZvbmVsaW5lKTsKLQkJCQlmcHJpbnRmKG91dCwgIiVzICVzICMgJXNcbiIsCi0JCQkJCWNtZF9yZXNldCwgdG8sIG9uZWxpbmUuYnVmKTsKKwkJCQlzdHJidWZfYWRkZihvdXQsICIlcyAlcyAjICVzXG4iLAorCQkJCQkgICAgY21kX3Jlc2V0LCB0bywgb25lbGluZS5idWYpOwogCQkJfQogCQl9CiAKQEAgLTQ0MDIsMTEgKzQ4MDEsMTEgQEAKIAkJCWVudHJ5ID0gb2lkbWFwX2dldCgmY29tbWl0MnRvZG8sIG9pZCk7CiAJCQkvKiBvbmx5IHNob3cgaWYgbm90IGFscmVhZHkgdXBzdHJlYW0gKi8KIAkJCWlmIChlbnRyeSkKLQkJCQlmcHJpbnRmKG91dCwgIiVzXG4iLCBlbnRyeS0+c3RyaW5nKTsKKwkJCQlzdHJidWZfYWRkZihvdXQsICIlc1xuIiwgZW50cnktPnN0cmluZyk7CiAJCQllbnRyeSA9IG9pZG1hcF9nZXQoJnN0YXRlLmNvbW1pdDJsYWJlbCwgb2lkKTsKIAkJCWlmIChlbnRyeSkKLQkJCQlmcHJpbnRmKG91dCwgIiVzICVzXG4iLAotCQkJCQljbWRfbGFiZWwsIGVudHJ5LT5zdHJpbmcpOworCQkJCXN0cmJ1Zl9hZGRmKG91dCwgIiVzICVzXG4iLAorCQkJCQkgICAgY21kX2xhYmVsLCBlbnRyeS0+c3RyaW5nKTsKIAkJCW9pZHNldF9pbnNlcnQoJnNob3duLCBvaWQpOwogCQl9CiAKQEAgLTQ0MjIsMjUgKzQ4MjEsMjMgQEAKIAogCW9pZG1hcF9mcmVlKCZjb21taXQydG9kbywgMSk7CiAJb2lkbWFwX2ZyZWUoJnN0YXRlLmNvbW1pdDJsYWJlbCwgMSk7Ci0JaGFzaG1hcF9mcmVlKCZzdGF0ZS5sYWJlbHMsIDEpOworCWhhc2htYXBfZnJlZV9lbnRyaWVzKCZzdGF0ZS5sYWJlbHMsIHN0cnVjdCBsYWJlbHNfZW50cnksIGVudHJ5KTsKIAlzdHJidWZfcmVsZWFzZSgmc3RhdGUuYnVmKTsKIAogCXJldHVybiAwOwogfQogCi1pbnQgc2VxdWVuY2VyX21ha2Vfc2NyaXB0KEZJTEUgKm91dCwgaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LAotCQkJICB1bnNpZ25lZCBmbGFncykKK2ludCBzZXF1ZW5jZXJfbWFrZV9zY3JpcHQoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBzdHJidWYgKm91dCwgaW50IGFyZ2MsCisJCQkgIGNvbnN0IGNoYXIgKiphcmd2LCB1bnNpZ25lZCBmbGFncykKIHsKIAljaGFyICpmb3JtYXQgPSBOVUxMOwogCXN0cnVjdCBwcmV0dHlfcHJpbnRfY29udGV4dCBwcCA9IHswfTsKLQlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCXN0cnVjdCByZXZfaW5mbyByZXZzOwogCXN0cnVjdCBjb21taXQgKmNvbW1pdDsKLQlpbnQga2VlcF9lbXB0eSA9IGZsYWdzICYgVE9ET19MSVNUX0tFRVBfRU1QVFk7CiAJY29uc3QgY2hhciAqaW5zbiA9IGZsYWdzICYgVE9ET19MSVNUX0FCQlJFVklBVEVfQ01EUyA/ICJwIiA6ICJwaWNrIjsKIAlpbnQgcmViYXNlX21lcmdlcyA9IGZsYWdzICYgVE9ET19MSVNUX1JFQkFTRV9NRVJHRVM7CiAKLQlyZXBvX2luaXRfcmV2aXNpb25zKHRoZV9yZXBvc2l0b3J5LCAmcmV2cywgTlVMTCk7CisJcmVwb19pbml0X3JldmlzaW9ucyhyLCAmcmV2cywgTlVMTCk7CiAJcmV2cy52ZXJib3NlX2hlYWRlciA9IDE7CiAJaWYgKCFyZWJhc2VfbWVyZ2VzKQogCQlyZXZzLm1heF9wYXJlbnRzID0gMTsKQEAgLTQ0NzIsMjAgKzQ4NjksMTUgQEAKIAkJcmV0dXJuIG1ha2Vfc2NyaXB0X3dpdGhfbWVyZ2VzKCZwcCwgJnJldnMsIG91dCwgZmxhZ3MpOwogCiAJd2hpbGUgKChjb21taXQgPSBnZXRfcmV2aXNpb24oJnJldnMpKSkgewotCQlpbnQgaXNfZW1wdHkgID0gaXNfb3JpZ2luYWxfY29tbWl0X2VtcHR5KGNvbW1pdCk7CisJCWludCBpc19lbXB0eSA9IGlzX29yaWdpbmFsX2NvbW1pdF9lbXB0eShjb21taXQpOwogCiAJCWlmICghaXNfZW1wdHkgJiYgKGNvbW1pdC0+b2JqZWN0LmZsYWdzICYgUEFUQ0hTQU1FKSkKIAkJCWNvbnRpbnVlOwotCQlzdHJidWZfcmVzZXQoJmJ1Zik7Ci0JCWlmICgha2VlcF9lbXB0eSAmJiBpc19lbXB0eSkKLQkJCXN0cmJ1Zl9hZGRmKCZidWYsICIlYyAiLCBjb21tZW50X2xpbmVfY2hhcik7Ci0JCXN0cmJ1Zl9hZGRmKCZidWYsICIlcyAlcyAiLCBpbnNuLAorCQlzdHJidWZfYWRkZihvdXQsICIlcyAlcyAiLCBpbnNuLAogCQkJICAgIG9pZF90b19oZXgoJmNvbW1pdC0+b2JqZWN0Lm9pZCkpOwotCQlwcmV0dHlfcHJpbnRfY29tbWl0KCZwcCwgY29tbWl0LCAmYnVmKTsKLQkJc3RyYnVmX2FkZGNoKCZidWYsICdcbicpOwotCQlmcHV0cyhidWYuYnVmLCBvdXQpOworCQlwcmV0dHlfcHJpbnRfY29tbWl0KCZwcCwgY29tbWl0LCBvdXQpOworCQlzdHJidWZfYWRkY2gob3V0LCAnXG4nKTsKIAl9Ci0Jc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CiAJcmV0dXJuIDA7CiB9CiAKQEAgLTQ0OTMsOTAgKzQ4ODUsOTUgQEAKICAqIEFkZCBjb21tYW5kcyBhZnRlciBwaWNrIGFuZCAoc2VyaWVzIG9mKSBzcXVhc2gvZml4dXAgY29tbWFuZHMKICAqIGluIHRoZSB0b2RvIGxpc3QuCiAgKi8KLWludCBzZXF1ZW5jZXJfYWRkX2V4ZWNfY29tbWFuZHMoY29uc3QgY2hhciAqY29tbWFuZHMpCit2b2lkIHRvZG9fbGlzdF9hZGRfZXhlY19jb21tYW5kcyhzdHJ1Y3QgdG9kb19saXN0ICp0b2RvX2xpc3QsCisJCQkJIHN0cnVjdCBzdHJpbmdfbGlzdCAqY29tbWFuZHMpCiB7Ci0JY29uc3QgY2hhciAqdG9kb19maWxlID0gcmViYXNlX3BhdGhfdG9kbygpOwotCXN0cnVjdCB0b2RvX2xpc3QgdG9kb19saXN0ID0gVE9ET19MSVNUX0lOSVQ7Ci0Jc3RydWN0IHN0cmJ1ZiAqYnVmID0gJnRvZG9fbGlzdC5idWY7Ci0Jc2l6ZV90IG9mZnNldCA9IDAsIGNvbW1hbmRzX2xlbiA9IHN0cmxlbihjb21tYW5kcyk7Ci0JaW50IGksIGluc2VydDsKKwlzdHJ1Y3Qgc3RyYnVmICpidWYgPSAmdG9kb19saXN0LT5idWY7CisJc2l6ZV90IGJhc2Vfb2Zmc2V0ID0gYnVmLT5sZW47CisJaW50IGksIGluc2VydCwgbnIgPSAwLCBhbGxvYyA9IDA7CisJc3RydWN0IHRvZG9faXRlbSAqaXRlbXMgPSBOVUxMLCAqYmFzZV9pdGVtcyA9IE5VTEw7CiAKLQlpZiAoc3RyYnVmX3JlYWRfZmlsZSgmdG9kb19saXN0LmJ1ZiwgdG9kb19maWxlLCAwKSA8IDApCi0JCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3QgcmVhZCAnJXMnLiIpLCB0b2RvX2ZpbGUpOworCWJhc2VfaXRlbXMgPSB4Y2FsbG9jKGNvbW1hbmRzLT5uciwgc2l6ZW9mKHN0cnVjdCB0b2RvX2l0ZW0pKTsKKwlmb3IgKGkgPSAwOyBpIDwgY29tbWFuZHMtPm5yOyBpKyspIHsKKwkJc2l6ZV90IGNvbW1hbmRfbGVuID0gc3RybGVuKGNvbW1hbmRzLT5pdGVtc1tpXS5zdHJpbmcpOwogCi0JaWYgKHBhcnNlX2luc25fYnVmZmVyKHRvZG9fbGlzdC5idWYuYnVmLCAmdG9kb19saXN0KSkgewotCQl0b2RvX2xpc3RfcmVsZWFzZSgmdG9kb19saXN0KTsKLQkJcmV0dXJuIGVycm9yKF8oInVudXNhYmxlIHRvZG8gbGlzdDogJyVzJyIpLCB0b2RvX2ZpbGUpOworCQlzdHJidWZfYWRkc3RyKGJ1ZiwgY29tbWFuZHMtPml0ZW1zW2ldLnN0cmluZyk7CisJCXN0cmJ1Zl9hZGRjaChidWYsICdcbicpOworCisJCWJhc2VfaXRlbXNbaV0uY29tbWFuZCA9IFRPRE9fRVhFQzsKKwkJYmFzZV9pdGVtc1tpXS5vZmZzZXRfaW5fYnVmID0gYmFzZV9vZmZzZXQ7CisJCWJhc2VfaXRlbXNbaV0uYXJnX29mZnNldCA9IGJhc2Vfb2Zmc2V0ICsgc3RybGVuKCJleGVjICIpOworCQliYXNlX2l0ZW1zW2ldLmFyZ19sZW4gPSBjb21tYW5kX2xlbiAtIHN0cmxlbigiZXhlYyAiKTsKKworCQliYXNlX29mZnNldCArPSBjb21tYW5kX2xlbiArIDE7CiAJfQogCiAJLyoKIAkgKiBJbnNlcnQgPGNvbW1hbmRzPiBhZnRlciBldmVyeSBwaWNrLiBIZXJlLCBmaXh1cC9zcXVhc2ggY2hhaW5zCiAJICogYXJlIGNvbnNpZGVyZWQgcGFydCBvZiB0aGUgcGljaywgc28gd2UgaW5zZXJ0IHRoZSBjb21tYW5kcyAqYWZ0ZXIqCiAJICogdGhvc2UgY2hhaW5zIGlmIHRoZXJlIGFyZSBhbnkuCisJICoKKwkgKiBBcyB3ZSBpbnNlcnQgdGhlIGV4ZWMgY29tbWFuZHMgaW1tZWRpYXRlbHkgYWZ0ZXIgcmVhcnJhbmdpbmcKKwkgKiBhbnkgZml4dXBzIGFuZCBiZWZvcmUgdGhlIHVzZXIgZWRpdHMgdGhlIGxpc3QsIGEgZml4dXAgY2hhaW4KKwkgKiBjYW4gbmV2ZXIgY29udGFpbiBjb21tZW50cyAoYW55IGNvbW1lbnRzIGFyZSBlbXB0eSBwaWNrcyB0aGF0CisJICogaGF2ZSBiZWVuIGNvbW1lbnRlZCBvdXQgYmVjYXVzZSB0aGUgdXNlciBkaWQgbm90IHNwZWNpZnkKKwkgKiAtLWtlZXAtZW1wdHkpLiAgU28sIGl0IGlzIHNhZmUgdG8gaW5zZXJ0IGFuIGV4ZWMgY29tbWFuZAorCSAqIHdpdGhvdXQgbG9va2luZyBhdCB0aGUgY29tbWFuZCBmb2xsb3dpbmcgYSBjb21tZW50LgogCSAqLwotCWluc2VydCA9IC0xOwotCWZvciAoaSA9IDA7IGkgPCB0b2RvX2xpc3QubnI7IGkrKykgewotCQllbnVtIHRvZG9fY29tbWFuZCBjb21tYW5kID0gdG9kb19saXN0Lml0ZW1zW2ldLmNvbW1hbmQ7CisJaW5zZXJ0ID0gMDsKKwlmb3IgKGkgPSAwOyBpIDwgdG9kb19saXN0LT5ucjsgaSsrKSB7CisJCWVudW0gdG9kb19jb21tYW5kIGNvbW1hbmQgPSB0b2RvX2xpc3QtPml0ZW1zW2ldLmNvbW1hbmQ7CisJCWlmIChpbnNlcnQgJiYgIWlzX2ZpeHVwKGNvbW1hbmQpKSB7CisJCQlBTExPQ19HUk9XKGl0ZW1zLCBuciArIGNvbW1hbmRzLT5uciwgYWxsb2MpOworCQkJQ09QWV9BUlJBWShpdGVtcyArIG5yLCBiYXNlX2l0ZW1zLCBjb21tYW5kcy0+bnIpOworCQkJbnIgKz0gY29tbWFuZHMtPm5yOwogCi0JCWlmIChpbnNlcnQgPj0gMCkgewotCQkJLyogc2tpcCBmaXh1cC9zcXVhc2ggY2hhaW5zICovCi0JCQlpZiAoY29tbWFuZCA9PSBUT0RPX0NPTU1FTlQpCi0JCQkJY29udGludWU7Ci0JCQllbHNlIGlmIChpc19maXh1cChjb21tYW5kKSkgewotCQkJCWluc2VydCA9IGkgKyAxOwotCQkJCWNvbnRpbnVlOwotCQkJfQotCQkJc3RyYnVmX2luc2VydChidWYsCi0JCQkJICAgICAgdG9kb19saXN0Lml0ZW1zW2luc2VydF0ub2Zmc2V0X2luX2J1ZiArCi0JCQkJICAgICAgb2Zmc2V0LCBjb21tYW5kcywgY29tbWFuZHNfbGVuKTsKLQkJCW9mZnNldCArPSBjb21tYW5kc19sZW47Ci0JCQlpbnNlcnQgPSAtMTsKKwkJCWluc2VydCA9IDA7CiAJCX0KIAorCQlBTExPQ19HUk9XKGl0ZW1zLCBuciArIDEsIGFsbG9jKTsKKwkJaXRlbXNbbnIrK10gPSB0b2RvX2xpc3QtPml0ZW1zW2ldOworCiAJCWlmIChjb21tYW5kID09IFRPRE9fUElDSyB8fCBjb21tYW5kID09IFRPRE9fTUVSR0UpCi0JCQlpbnNlcnQgPSBpICsgMTsKKwkJCWluc2VydCA9IDE7CiAJfQogCiAJLyogaW5zZXJ0IG9yIGFwcGVuZCBmaW5hbCA8Y29tbWFuZHM+ICovCi0JaWYgKGluc2VydCA+PSAwICYmIGluc2VydCA8IHRvZG9fbGlzdC5ucikKLQkJc3RyYnVmX2luc2VydChidWYsIHRvZG9fbGlzdC5pdGVtc1tpbnNlcnRdLm9mZnNldF9pbl9idWYgKwotCQkJICAgICAgb2Zmc2V0LCBjb21tYW5kcywgY29tbWFuZHNfbGVuKTsKLQllbHNlIGlmIChpbnNlcnQgPj0gMCB8fCAhb2Zmc2V0KQotCQlzdHJidWZfYWRkKGJ1ZiwgY29tbWFuZHMsIGNvbW1hbmRzX2xlbik7Ci0KLQlpID0gd3JpdGVfbWVzc2FnZShidWYtPmJ1ZiwgYnVmLT5sZW4sIHRvZG9fZmlsZSwgMCk7Ci0JdG9kb19saXN0X3JlbGVhc2UoJnRvZG9fbGlzdCk7Ci0JcmV0dXJuIGk7Ci19Ci0KLWludCB0cmFuc2Zvcm1fdG9kb3ModW5zaWduZWQgZmxhZ3MpCi17Ci0JY29uc3QgY2hhciAqdG9kb19maWxlID0gcmViYXNlX3BhdGhfdG9kbygpOwotCXN0cnVjdCB0b2RvX2xpc3QgdG9kb19saXN0ID0gVE9ET19MSVNUX0lOSVQ7Ci0Jc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKLQlzdHJ1Y3QgdG9kb19pdGVtICppdGVtOwotCWludCBpOwotCi0JaWYgKHN0cmJ1Zl9yZWFkX2ZpbGUoJnRvZG9fbGlzdC5idWYsIHRvZG9fZmlsZSwgMCkgPCAwKQotCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHJlYWQgJyVzJy4iKSwgdG9kb19maWxlKTsKLQotCWlmIChwYXJzZV9pbnNuX2J1ZmZlcih0b2RvX2xpc3QuYnVmLmJ1ZiwgJnRvZG9fbGlzdCkpIHsKLQkJdG9kb19saXN0X3JlbGVhc2UoJnRvZG9fbGlzdCk7Ci0JCXJldHVybiBlcnJvcihfKCJ1bnVzYWJsZSB0b2RvIGxpc3Q6ICclcyciKSwgdG9kb19maWxlKTsKKwlpZiAoaW5zZXJ0IHx8IG5yID09IHRvZG9fbGlzdC0+bnIpIHsKKwkJQUxMT0NfR1JPVyhpdGVtcywgbnIgKyBjb21tYW5kcy0+bnIsIGFsbG9jKTsKKwkJQ09QWV9BUlJBWShpdGVtcyArIG5yLCBiYXNlX2l0ZW1zLCBjb21tYW5kcy0+bnIpOworCQluciArPSBjb21tYW5kcy0+bnI7CiAJfQogCi0JZm9yIChpdGVtID0gdG9kb19saXN0Lml0ZW1zLCBpID0gMDsgaSA8IHRvZG9fbGlzdC5ucjsgaSsrLCBpdGVtKyspIHsKKwlmcmVlKGJhc2VfaXRlbXMpOworCUZSRUVfQU5EX05VTEwodG9kb19saXN0LT5pdGVtcyk7CisJdG9kb19saXN0LT5pdGVtcyA9IGl0ZW1zOworCXRvZG9fbGlzdC0+bnIgPSBucjsKKwl0b2RvX2xpc3QtPmFsbG9jID0gYWxsb2M7Cit9CisKK3N0YXRpYyB2b2lkIHRvZG9fbGlzdF90b19zdHJidWYoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCB0b2RvX2xpc3QgKnRvZG9fbGlzdCwKKwkJCQlzdHJ1Y3Qgc3RyYnVmICpidWYsIGludCBudW0sIHVuc2lnbmVkIGZsYWdzKQoreworCXN0cnVjdCB0b2RvX2l0ZW0gKml0ZW07CisJaW50IGksIG1heCA9IHRvZG9fbGlzdC0+bnI7CisKKwlpZiAobnVtID4gMCAmJiBudW0gPCBtYXgpCisJCW1heCA9IG51bTsKKworCWZvciAoaXRlbSA9IHRvZG9fbGlzdC0+aXRlbXMsIGkgPSAwOyBpIDwgbWF4OyBpKyssIGl0ZW0rKykgewogCQkvKiBpZiB0aGUgaXRlbSBpcyBub3QgYSBjb21tYW5kIHdyaXRlIGl0IGFuZCBjb250aW51ZSAqLwogCQlpZiAoaXRlbS0+Y29tbWFuZCA+PSBUT0RPX0NPTU1FTlQpIHsKLQkJCXN0cmJ1Zl9hZGRmKCZidWYsICIlLipzXG4iLCBpdGVtLT5hcmdfbGVuLCBpdGVtLT5hcmcpOworCQkJc3RyYnVmX2FkZGYoYnVmLCAiJS4qc1xuIiwgaXRlbS0+YXJnX2xlbiwKKwkJCQkgICAgdG9kb19pdGVtX2dldF9hcmcodG9kb19saXN0LCBpdGVtKSk7CiAJCQljb250aW51ZTsKIAkJfQogCiAJCS8qIGFkZCBjb21tYW5kIHRvIHRoZSBidWZmZXIgKi8KIAkJaWYgKGZsYWdzICYgVE9ET19MSVNUX0FCQlJFVklBVEVfQ01EUykKLQkJCXN0cmJ1Zl9hZGRjaCgmYnVmLCBjb21tYW5kX3RvX2NoYXIoaXRlbS0+Y29tbWFuZCkpOworCQkJc3RyYnVmX2FkZGNoKGJ1ZiwgY29tbWFuZF90b19jaGFyKGl0ZW0tPmNvbW1hbmQpKTsKIAkJZWxzZQotCQkJc3RyYnVmX2FkZHN0cigmYnVmLCBjb21tYW5kX3RvX3N0cmluZyhpdGVtLT5jb21tYW5kKSk7CisJCQlzdHJidWZfYWRkc3RyKGJ1ZiwgY29tbWFuZF90b19zdHJpbmcoaXRlbS0+Y29tbWFuZCkpOwogCiAJCS8qIGFkZCBjb21taXQgaWQgKi8KIAkJaWYgKGl0ZW0tPmNvbW1pdCkgewpAQCAtNDU4NiwxODEgKzQ5ODMsNTcgQEAKIAogCQkJaWYgKGl0ZW0tPmNvbW1hbmQgPT0gVE9ET19NRVJHRSkgewogCQkJCWlmIChpdGVtLT5mbGFncyAmIFRPRE9fRURJVF9NRVJHRV9NU0cpCi0JCQkJCXN0cmJ1Zl9hZGRzdHIoJmJ1ZiwgIiAtYyIpOworCQkJCQlzdHJidWZfYWRkc3RyKGJ1ZiwgIiAtYyIpOwogCQkJCWVsc2UKLQkJCQkJc3RyYnVmX2FkZHN0cigmYnVmLCAiIC1DIik7CisJCQkJCXN0cmJ1Zl9hZGRzdHIoYnVmLCAiIC1DIik7CiAJCQl9CiAKLQkJCXN0cmJ1Zl9hZGRmKCZidWYsICIgJXMiLCBvaWQpOworCQkJc3RyYnVmX2FkZGYoYnVmLCAiICVzIiwgb2lkKTsKIAkJfQogCiAJCS8qIGFkZCBhbGwgdGhlIHJlc3QgKi8KIAkJaWYgKCFpdGVtLT5hcmdfbGVuKQotCQkJc3RyYnVmX2FkZGNoKCZidWYsICdcbicpOworCQkJc3RyYnVmX2FkZGNoKGJ1ZiwgJ1xuJyk7CiAJCWVsc2UKLQkJCXN0cmJ1Zl9hZGRmKCZidWYsICIgJS4qc1xuIiwgaXRlbS0+YXJnX2xlbiwgaXRlbS0+YXJnKTsKKwkJCXN0cmJ1Zl9hZGRmKGJ1ZiwgIiAlLipzXG4iLCBpdGVtLT5hcmdfbGVuLAorCQkJCSAgICB0b2RvX2l0ZW1fZ2V0X2FyZyh0b2RvX2xpc3QsIGl0ZW0pKTsKIAl9Ci0KLQlpID0gd3JpdGVfbWVzc2FnZShidWYuYnVmLCBidWYubGVuLCB0b2RvX2ZpbGUsIDApOwotCXRvZG9fbGlzdF9yZWxlYXNlKCZ0b2RvX2xpc3QpOwotCXJldHVybiBpOwogfQogCi1lbnVtIG1pc3NpbmdfY29tbWl0X2NoZWNrX2xldmVsIGdldF9taXNzaW5nX2NvbW1pdF9jaGVja19sZXZlbCh2b2lkKQoraW50IHRvZG9fbGlzdF93cml0ZV90b19maWxlKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgdG9kb19saXN0ICp0b2RvX2xpc3QsCisJCQkgICAgY29uc3QgY2hhciAqZmlsZSwgY29uc3QgY2hhciAqc2hvcnRyZXZpc2lvbnMsCisJCQkgICAgY29uc3QgY2hhciAqc2hvcnRvbnRvLCBpbnQgbnVtLCB1bnNpZ25lZCBmbGFncykKIHsKLQljb25zdCBjaGFyICp2YWx1ZTsKKwlpbnQgcmVzOworCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CiAKLQlpZiAoZ2l0X2NvbmZpZ19nZXRfdmFsdWUoInJlYmFzZS5taXNzaW5nY29tbWl0c2NoZWNrIiwgJnZhbHVlKSB8fAotCQkJIXN0cmNhc2VjbXAoImlnbm9yZSIsIHZhbHVlKSkKLQkJcmV0dXJuIE1JU1NJTkdfQ09NTUlUX0NIRUNLX0lHTk9SRTsKLQlpZiAoIXN0cmNhc2VjbXAoIndhcm4iLCB2YWx1ZSkpCi0JCXJldHVybiBNSVNTSU5HX0NPTU1JVF9DSEVDS19XQVJOOwotCWlmICghc3RyY2FzZWNtcCgiZXJyb3IiLCB2YWx1ZSkpCi0JCXJldHVybiBNSVNTSU5HX0NPTU1JVF9DSEVDS19FUlJPUjsKLQl3YXJuaW5nKF8oInVucmVjb2duaXplZCBzZXR0aW5nICVzIGZvciBvcHRpb24gIgotCQkgICJyZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4gSWdub3JpbmcuIiksIHZhbHVlKTsKLQlyZXR1cm4gTUlTU0lOR19DT01NSVRfQ0hFQ0tfSUdOT1JFOwotfQorCXRvZG9fbGlzdF90b19zdHJidWYociwgdG9kb19saXN0LCAmYnVmLCBudW0sIGZsYWdzKTsKKwlpZiAoZmxhZ3MgJiBUT0RPX0xJU1RfQVBQRU5EX1RPRE9fSEVMUCkKKwkJYXBwZW5kX3RvZG9faGVscChjb3VudF9jb21tYW5kcyh0b2RvX2xpc3QpLAorCQkJCSBzaG9ydHJldmlzaW9ucywgc2hvcnRvbnRvLCAmYnVmKTsKIAotZGVmaW5lX2NvbW1pdF9zbGFiKGNvbW1pdF9zZWVuLCB1bnNpZ25lZCBjaGFyKTsKLS8qCi0gKiBDaGVjayBpZiB0aGUgdXNlciBkcm9wcGVkIHNvbWUgY29tbWl0cyBieSBtaXN0YWtlCi0gKiBCZWhhdmlvdXIgZGV0ZXJtaW5lZCBieSByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjay4KLSAqIENoZWNrIGlmIHRoZXJlIGlzIGFuIHVucmVjb2duaXplZCBjb21tYW5kIG9yIGEKLSAqIGJhZCBTSEEtMSBpbiBhIGNvbW1hbmQuCi0gKi8KLWludCBjaGVja190b2RvX2xpc3Qodm9pZCkKLXsKLQllbnVtIG1pc3NpbmdfY29tbWl0X2NoZWNrX2xldmVsIGNoZWNrX2xldmVsID0gZ2V0X21pc3NpbmdfY29tbWl0X2NoZWNrX2xldmVsKCk7Ci0Jc3RydWN0IHN0cmJ1ZiB0b2RvX2ZpbGUgPSBTVFJCVUZfSU5JVDsKLQlzdHJ1Y3QgdG9kb19saXN0IHRvZG9fbGlzdCA9IFRPRE9fTElTVF9JTklUOwotCXN0cnVjdCBzdHJidWYgbWlzc2luZyA9IFNUUkJVRl9JTklUOwotCWludCBhZHZpc2VfdG9fZWRpdF90b2RvID0gMCwgcmVzID0gMCwgaTsKLQlzdHJ1Y3QgY29tbWl0X3NlZW4gY29tbWl0X3NlZW47Ci0KLQlpbml0X2NvbW1pdF9zZWVuKCZjb21taXRfc2Vlbik7Ci0KLQlzdHJidWZfYWRkc3RyKCZ0b2RvX2ZpbGUsIHJlYmFzZV9wYXRoX3RvZG8oKSk7Ci0JaWYgKHN0cmJ1Zl9yZWFkX2ZpbGVfb3Jfd2hpbmUoJnRvZG9fbGlzdC5idWYsIHRvZG9fZmlsZS5idWYpIDwgMCkgewotCQlyZXMgPSAtMTsKLQkJZ290byBsZWF2ZV9jaGVjazsKLQl9Ci0JYWR2aXNlX3RvX2VkaXRfdG9kbyA9IHJlcyA9Ci0JCXBhcnNlX2luc25fYnVmZmVyKHRvZG9fbGlzdC5idWYuYnVmLCAmdG9kb19saXN0KTsKLQotCWlmIChyZXMgfHwgY2hlY2tfbGV2ZWwgPT0gTUlTU0lOR19DT01NSVRfQ0hFQ0tfSUdOT1JFKQotCQlnb3RvIGxlYXZlX2NoZWNrOwotCi0JLyogTWFyayB0aGUgY29tbWl0cyBpbiBnaXQtcmViYXNlLXRvZG8gYXMgc2VlbiAqLwotCWZvciAoaSA9IDA7IGkgPCB0b2RvX2xpc3QubnI7IGkrKykgewotCQlzdHJ1Y3QgY29tbWl0ICpjb21taXQgPSB0b2RvX2xpc3QuaXRlbXNbaV0uY29tbWl0OwotCQlpZiAoY29tbWl0KQotCQkJKmNvbW1pdF9zZWVuX2F0KCZjb21taXRfc2VlbiwgY29tbWl0KSA9IDE7Ci0JfQotCi0JdG9kb19saXN0X3JlbGVhc2UoJnRvZG9fbGlzdCk7Ci0Jc3RyYnVmX2FkZHN0cigmdG9kb19maWxlLCAiLmJhY2t1cCIpOwotCWlmIChzdHJidWZfcmVhZF9maWxlX29yX3doaW5lKCZ0b2RvX2xpc3QuYnVmLCB0b2RvX2ZpbGUuYnVmKSA8IDApIHsKLQkJcmVzID0gLTE7Ci0JCWdvdG8gbGVhdmVfY2hlY2s7Ci0JfQotCXN0cmJ1Zl9yZWxlYXNlKCZ0b2RvX2ZpbGUpOwotCXJlcyA9ICEhcGFyc2VfaW5zbl9idWZmZXIodG9kb19saXN0LmJ1Zi5idWYsICZ0b2RvX2xpc3QpOwotCi0JLyogRmluZCBjb21taXRzIGluIGdpdC1yZWJhc2UtdG9kby5iYWNrdXAgeWV0IHVuc2VlbiAqLwotCWZvciAoaSA9IHRvZG9fbGlzdC5uciAtIDE7IGkgPj0gMDsgaS0tKSB7Ci0JCXN0cnVjdCB0b2RvX2l0ZW0gKml0ZW0gPSB0b2RvX2xpc3QuaXRlbXMgKyBpOwotCQlzdHJ1Y3QgY29tbWl0ICpjb21taXQgPSBpdGVtLT5jb21taXQ7Ci0JCWlmIChjb21taXQgJiYgISpjb21taXRfc2Vlbl9hdCgmY29tbWl0X3NlZW4sIGNvbW1pdCkpIHsKLQkJCXN0cmJ1Zl9hZGRmKCZtaXNzaW5nLCAiIC0gJXMgJS4qc1xuIiwKLQkJCQkgICAgc2hvcnRfY29tbWl0X25hbWUoY29tbWl0KSwKLQkJCQkgICAgaXRlbS0+YXJnX2xlbiwgaXRlbS0+YXJnKTsKLQkJCSpjb21taXRfc2Vlbl9hdCgmY29tbWl0X3NlZW4sIGNvbW1pdCkgPSAxOwotCQl9Ci0JfQotCi0JLyogV2FybiBhYm91dCBtaXNzaW5nIGNvbW1pdHMgKi8KLQlpZiAoIW1pc3NpbmcubGVuKQotCQlnb3RvIGxlYXZlX2NoZWNrOwotCi0JaWYgKGNoZWNrX2xldmVsID09IE1JU1NJTkdfQ09NTUlUX0NIRUNLX0VSUk9SKQotCQlhZHZpc2VfdG9fZWRpdF90b2RvID0gcmVzID0gMTsKLQotCWZwcmludGYoc3RkZXJyLAotCQlfKCJXYXJuaW5nOiBzb21lIGNvbW1pdHMgbWF5IGhhdmUgYmVlbiBkcm9wcGVkIGFjY2lkZW50YWxseS5cbiIKLQkJIkRyb3BwZWQgY29tbWl0cyAobmV3ZXIgdG8gb2xkZXIpOlxuIikpOwotCi0JLyogTWFrZSB0aGUgbGlzdCB1c2VyLWZyaWVuZGx5IGFuZCBkaXNwbGF5ICovCi0JZnB1dHMobWlzc2luZy5idWYsIHN0ZGVycik7Ci0Jc3RyYnVmX3JlbGVhc2UoJm1pc3NpbmcpOwotCi0JZnByaW50ZihzdGRlcnIsIF8oIlRvIGF2b2lkIHRoaXMgbWVzc2FnZSwgdXNlIFwiZHJvcFwiIHRvICIKLQkJImV4cGxpY2l0bHkgcmVtb3ZlIGEgY29tbWl0LlxuXG4iCi0JCSJVc2UgJ2dpdCBjb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2snIHRvIGNoYW5nZSAiCi0JCSJ0aGUgbGV2ZWwgb2Ygd2FybmluZ3MuXG4iCi0JCSJUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuXG5cbiIpKTsKLQotbGVhdmVfY2hlY2s6Ci0JY2xlYXJfY29tbWl0X3NlZW4oJmNvbW1pdF9zZWVuKTsKLQlzdHJidWZfcmVsZWFzZSgmdG9kb19maWxlKTsKLQl0b2RvX2xpc3RfcmVsZWFzZSgmdG9kb19saXN0KTsKLQotCWlmIChhZHZpc2VfdG9fZWRpdF90b2RvKQotCQlmcHJpbnRmKHN0ZGVyciwKLQkJCV8oIllvdSBjYW4gZml4IHRoaXMgd2l0aCAnZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbycgIgotCQkJICAiYW5kIHRoZW4gcnVuICdnaXQgcmViYXNlIC0tY29udGludWUnLlxuIgotCQkJICAiT3IgeW91IGNhbiBhYm9ydCB0aGUgcmViYXNlIHdpdGggJ2dpdCByZWJhc2UiCi0JCQkgICIgLS1hYm9ydCcuXG4iKSk7CisJcmVzID0gd3JpdGVfbWVzc2FnZShidWYuYnVmLCBidWYubGVuLCBmaWxlLCAwKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmKTsKIAogCXJldHVybiByZXM7CiB9CiAKLXN0YXRpYyBpbnQgcmV3cml0ZV9maWxlKGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IGNoYXIgKmJ1Ziwgc2l6ZV90IGxlbikKLXsKLQlpbnQgcmMgPSAwOwotCWludCBmZCA9IG9wZW4ocGF0aCwgT19XUk9OTFkgfCBPX1RSVU5DKTsKLQlpZiAoZmQgPCAwKQotCQlyZXR1cm4gZXJyb3JfZXJybm8oXygiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZyIpLCBwYXRoKTsKLQlpZiAod3JpdGVfaW5fZnVsbChmZCwgYnVmLCBsZW4pIDwgMCkKLQkJcmMgPSBlcnJvcl9lcnJubyhfKCJjb3VsZCBub3Qgd3JpdGUgdG8gJyVzJyIpLCBwYXRoKTsKLQlpZiAoY2xvc2UoZmQpICYmICFyYykKLQkJcmMgPSBlcnJvcl9lcnJubyhfKCJjb3VsZCBub3QgY2xvc2UgJyVzJyIpLCBwYXRoKTsKLQlyZXR1cm4gcmM7Ci19Ci0KIC8qIHNraXAgcGlja2luZyBjb21taXRzIHdob3NlIHBhcmVudHMgYXJlIHVuY2hhbmdlZCAqLwotc3RhdGljIGludCBza2lwX3VubmVjZXNzYXJ5X3BpY2tzKHN0cnVjdCBvYmplY3RfaWQgKm91dHB1dF9vaWQpCitzdGF0aWMgaW50IHNraXBfdW5uZWNlc3NhcnlfcGlja3Moc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJICBzdHJ1Y3QgdG9kb19saXN0ICp0b2RvX2xpc3QsCisJCQkJICBzdHJ1Y3Qgb2JqZWN0X2lkICpiYXNlX29pZCkKIHsKLQljb25zdCBjaGFyICp0b2RvX2ZpbGUgPSByZWJhc2VfcGF0aF90b2RvKCk7Ci0Jc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKLQlzdHJ1Y3QgdG9kb19saXN0IHRvZG9fbGlzdCA9IFRPRE9fTElTVF9JTklUOwogCXN0cnVjdCBvYmplY3RfaWQgKnBhcmVudF9vaWQ7Ci0JaW50IGZkLCBpOworCWludCBpOwogCi0JaWYgKCFyZWFkX29uZWxpbmVyKCZidWYsIHJlYmFzZV9wYXRoX29udG8oKSwgMCkpCi0JCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3QgcmVhZCAnb250byciKSk7Ci0JaWYgKGdldF9vaWQoYnVmLmJ1Ziwgb3V0cHV0X29pZCkpIHsKLQkJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7Ci0JCXJldHVybiBlcnJvcihfKCJuZWVkIGEgSEVBRCB0byBmaXh1cCIpKTsKLQl9Ci0Jc3RyYnVmX3JlbGVhc2UoJmJ1Zik7Ci0KLQlpZiAoc3RyYnVmX3JlYWRfZmlsZV9vcl93aGluZSgmdG9kb19saXN0LmJ1ZiwgdG9kb19maWxlKSA8IDApCi0JCXJldHVybiAtMTsKLQlpZiAocGFyc2VfaW5zbl9idWZmZXIodG9kb19saXN0LmJ1Zi5idWYsICZ0b2RvX2xpc3QpIDwgMCkgewotCQl0b2RvX2xpc3RfcmVsZWFzZSgmdG9kb19saXN0KTsKLQkJcmV0dXJuIC0xOwotCX0KLQotCWZvciAoaSA9IDA7IGkgPCB0b2RvX2xpc3QubnI7IGkrKykgewotCQlzdHJ1Y3QgdG9kb19pdGVtICppdGVtID0gdG9kb19saXN0Lml0ZW1zICsgaTsKKwlmb3IgKGkgPSAwOyBpIDwgdG9kb19saXN0LT5ucjsgaSsrKSB7CisJCXN0cnVjdCB0b2RvX2l0ZW0gKml0ZW0gPSB0b2RvX2xpc3QtPml0ZW1zICsgaTsKIAogCQlpZiAoaXRlbS0+Y29tbWFuZCA+PSBUT0RPX05PT1ApCiAJCQljb250aW51ZTsKIAkJaWYgKGl0ZW0tPmNvbW1hbmQgIT0gVE9ET19QSUNLKQogCQkJYnJlYWs7CiAJCWlmIChwYXJzZV9jb21taXQoaXRlbS0+Y29tbWl0KSkgewotCQkJdG9kb19saXN0X3JlbGVhc2UoJnRvZG9fbGlzdCk7CiAJCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IHBhcnNlIGNvbW1pdCAnJXMnIiksCiAJCQkJb2lkX3RvX2hleCgmaXRlbS0+Y29tbWl0LT5vYmplY3Qub2lkKSk7CiAJCX0KQEAgLTQ3NjksMTQzICs1MDQyLDEyMSBAQAogCQlpZiAoaXRlbS0+Y29tbWl0LT5wYXJlbnRzLT5uZXh0KQogCQkJYnJlYWs7IC8qIG1lcmdlIGNvbW1pdCAqLwogCQlwYXJlbnRfb2lkID0gJml0ZW0tPmNvbW1pdC0+cGFyZW50cy0+aXRlbS0+b2JqZWN0Lm9pZDsKLQkJaWYgKCFvaWRlcShwYXJlbnRfb2lkLCBvdXRwdXRfb2lkKSkKKwkJaWYgKCFvaWRlcShwYXJlbnRfb2lkLCBiYXNlX29pZCkpCiAJCQlicmVhazsKLQkJb2lkY3B5KG91dHB1dF9vaWQsICZpdGVtLT5jb21taXQtPm9iamVjdC5vaWQpOworCQlvaWRjcHkoYmFzZV9vaWQsICZpdGVtLT5jb21taXQtPm9iamVjdC5vaWQpOwogCX0KIAlpZiAoaSA+IDApIHsKLQkJaW50IG9mZnNldCA9IGdldF9pdGVtX2xpbmVfb2Zmc2V0KCZ0b2RvX2xpc3QsIGkpOwogCQljb25zdCBjaGFyICpkb25lX3BhdGggPSByZWJhc2VfcGF0aF9kb25lKCk7CiAKLQkJZmQgPSBvcGVuKGRvbmVfcGF0aCwgT19DUkVBVCB8IE9fV1JPTkxZIHwgT19BUFBFTkQsIDA2NjYpOwotCQlpZiAoZmQgPCAwKSB7Ci0JCQllcnJvcl9lcnJubyhfKCJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nIiksCi0JCQkJICAgIGRvbmVfcGF0aCk7Ci0JCQl0b2RvX2xpc3RfcmVsZWFzZSgmdG9kb19saXN0KTsKLQkJCXJldHVybiAtMTsKLQkJfQotCQlpZiAod3JpdGVfaW5fZnVsbChmZCwgdG9kb19saXN0LmJ1Zi5idWYsIG9mZnNldCkgPCAwKSB7CisJCWlmICh0b2RvX2xpc3Rfd3JpdGVfdG9fZmlsZShyLCB0b2RvX2xpc3QsIGRvbmVfcGF0aCwgTlVMTCwgTlVMTCwgaSwgMCkpIHsKIAkJCWVycm9yX2Vycm5vKF8oImNvdWxkIG5vdCB3cml0ZSB0byAnJXMnIiksIGRvbmVfcGF0aCk7Ci0JCQl0b2RvX2xpc3RfcmVsZWFzZSgmdG9kb19saXN0KTsKLQkJCWNsb3NlKGZkKTsKLQkJCXJldHVybiAtMTsKLQkJfQotCQljbG9zZShmZCk7Ci0KLQkJaWYgKHJld3JpdGVfZmlsZShyZWJhc2VfcGF0aF90b2RvKCksIHRvZG9fbGlzdC5idWYuYnVmICsgb2Zmc2V0LAotCQkJCSB0b2RvX2xpc3QuYnVmLmxlbiAtIG9mZnNldCkgPCAwKSB7Ci0JCQl0b2RvX2xpc3RfcmVsZWFzZSgmdG9kb19saXN0KTsKIAkJCXJldHVybiAtMTsKIAkJfQogCi0JCXRvZG9fbGlzdC5jdXJyZW50ID0gaTsKLQkJaWYgKGlzX2ZpeHVwKHBlZWtfY29tbWFuZCgmdG9kb19saXN0LCAwKSkpCi0JCQlyZWNvcmRfaW5fcmV3cml0dGVuKG91dHB1dF9vaWQsIHBlZWtfY29tbWFuZCgmdG9kb19saXN0LCAwKSk7CisJCU1PVkVfQVJSQVkodG9kb19saXN0LT5pdGVtcywgdG9kb19saXN0LT5pdGVtcyArIGksIHRvZG9fbGlzdC0+bnIgLSBpKTsKKwkJdG9kb19saXN0LT5uciAtPSBpOworCQl0b2RvX2xpc3QtPmN1cnJlbnQgPSAwOworCQl0b2RvX2xpc3QtPmRvbmVfbnIgKz0gaTsKKworCQlpZiAoaXNfZml4dXAocGVla19jb21tYW5kKHRvZG9fbGlzdCwgMCkpKQorCQkJcmVjb3JkX2luX3Jld3JpdHRlbihiYXNlX29pZCwgcGVla19jb21tYW5kKHRvZG9fbGlzdCwgMCkpOwogCX0KIAotCXRvZG9fbGlzdF9yZWxlYXNlKCZ0b2RvX2xpc3QpOwotCiAJcmV0dXJuIDA7CiB9CiAKLWludCBjb21wbGV0ZV9hY3Rpb24oc3RydWN0IHJlcGxheV9vcHRzICpvcHRzLCB1bnNpZ25lZCBmbGFncywKK2ludCBjb21wbGV0ZV9hY3Rpb24oc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywgdW5zaWduZWQgZmxhZ3MsCiAJCSAgICBjb25zdCBjaGFyICpzaG9ydHJldmlzaW9ucywgY29uc3QgY2hhciAqb250b19uYW1lLAotCQkgICAgY29uc3QgY2hhciAqb250bywgY29uc3QgY2hhciAqb3JpZ19oZWFkLCBjb25zdCBjaGFyICpjbWQsCi0JCSAgICB1bnNpZ25lZCBhdXRvc3F1YXNoKQorCQkgICAgc3RydWN0IGNvbW1pdCAqb250bywgY29uc3QgY2hhciAqb3JpZ19oZWFkLAorCQkgICAgc3RydWN0IHN0cmluZ19saXN0ICpjb21tYW5kcywgdW5zaWduZWQgYXV0b3NxdWFzaCwKKwkJICAgIHN0cnVjdCB0b2RvX2xpc3QgKnRvZG9fbGlzdCkKIHsKIAljb25zdCBjaGFyICpzaG9ydG9udG8sICp0b2RvX2ZpbGUgPSByZWJhc2VfcGF0aF90b2RvKCk7Ci0Jc3RydWN0IHRvZG9fbGlzdCB0b2RvX2xpc3QgPSBUT0RPX0xJU1RfSU5JVDsKLQlzdHJ1Y3Qgc3RyYnVmICpidWYgPSAmKHRvZG9fbGlzdC5idWYpOwotCXN0cnVjdCBvYmplY3RfaWQgb2lkOwotCXN0cnVjdCBzdGF0IHN0OworCXN0cnVjdCB0b2RvX2xpc3QgbmV3X3RvZG8gPSBUT0RPX0xJU1RfSU5JVDsKKwlzdHJ1Y3Qgc3RyYnVmICpidWYgPSAmdG9kb19saXN0LT5idWYsIGJ1ZjIgPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZCA9IG9udG8tPm9iamVjdC5vaWQ7CisJaW50IHJlczsKIAotCWdldF9vaWQob250bywgJm9pZCk7CiAJc2hvcnRvbnRvID0gZmluZF91bmlxdWVfYWJicmV2KCZvaWQsIERFRkFVTFRfQUJCUkVWKTsKIAotCWlmICghbHN0YXQodG9kb19maWxlLCAmc3QpICYmIHN0LnN0X3NpemUgPT0gMCAmJgotCSAgICB3cml0ZV9tZXNzYWdlKCJub29wXG4iLCA1LCB0b2RvX2ZpbGUsIDApKQotCQlyZXR1cm4gLTE7Ci0KLQlpZiAoYXV0b3NxdWFzaCAmJiByZWFycmFuZ2Vfc3F1YXNoKCkpCi0JCXJldHVybiAtMTsKLQotCWlmIChjbWQgJiYgKmNtZCkKLQkJc2VxdWVuY2VyX2FkZF9leGVjX2NvbW1hbmRzKGNtZCk7Ci0KLQlpZiAoc3RyYnVmX3JlYWRfZmlsZShidWYsIHRvZG9fZmlsZSwgMCkgPCAwKQotCQlyZXR1cm4gZXJyb3JfZXJybm8oXygiY291bGQgbm90IHJlYWQgJyVzJy4iKSwgdG9kb19maWxlKTsKLQotCWlmIChwYXJzZV9pbnNuX2J1ZmZlcihidWYtPmJ1ZiwgJnRvZG9fbGlzdCkpIHsKLQkJdG9kb19saXN0X3JlbGVhc2UoJnRvZG9fbGlzdCk7Ci0JCXJldHVybiBlcnJvcihfKCJ1bnVzYWJsZSB0b2RvIGxpc3Q6ICclcyciKSwgdG9kb19maWxlKTsKLQl9Ci0KLQlpZiAoY291bnRfY29tbWFuZHMoJnRvZG9fbGlzdCkgPT0gMCkgewotCQlhcHBseV9hdXRvc3Rhc2gob3B0cyk7Ci0JCXNlcXVlbmNlcl9yZW1vdmVfc3RhdGUob3B0cyk7Ci0JCXRvZG9fbGlzdF9yZWxlYXNlKCZ0b2RvX2xpc3QpOwotCi0JCXJldHVybiBlcnJvcihfKCJub3RoaW5nIHRvIGRvIikpOwotCX0KLQotCXN0cmJ1Zl9hZGRjaChidWYsICdcbicpOwotCXN0cmJ1Zl9jb21tZW50ZWRfYWRkZihidWYsIFFfKCJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZCkiLAotCQkJCSAgICAgICJSZWJhc2UgJXMgb250byAlcyAoJWQgY29tbWFuZHMpIiwKLQkJCQkgICAgICBjb3VudF9jb21tYW5kcygmdG9kb19saXN0KSksCi0JCQkgICAgICBzaG9ydHJldmlzaW9ucywgc2hvcnRvbnRvLCBjb3VudF9jb21tYW5kcygmdG9kb19saXN0KSk7Ci0JYXBwZW5kX3RvZG9faGVscCgwLCBmbGFncyAmIFRPRE9fTElTVF9LRUVQX0VNUFRZLCBidWYpOwotCi0JaWYgKHdyaXRlX21lc3NhZ2UoYnVmLT5idWYsIGJ1Zi0+bGVuLCB0b2RvX2ZpbGUsIDApKSB7Ci0JCXRvZG9fbGlzdF9yZWxlYXNlKCZ0b2RvX2xpc3QpOwotCQlyZXR1cm4gLTE7Ci0JfQotCi0JaWYgKGNvcHlfZmlsZShyZWJhc2VfcGF0aF90b2RvX2JhY2t1cCgpLCB0b2RvX2ZpbGUsIDA2NjYpKQotCQlyZXR1cm4gZXJyb3IoXygiY291bGQgbm90IGNvcHkgJyVzJyB0byAnJXMnLiIpLCB0b2RvX2ZpbGUsCi0JCQkgICAgIHJlYmFzZV9wYXRoX3RvZG9fYmFja3VwKCkpOwotCi0JaWYgKHRyYW5zZm9ybV90b2RvcyhmbGFncyB8IFRPRE9fTElTVF9TSE9SVEVOX0lEUykpCi0JCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3QgdHJhbnNmb3JtIHRoZSB0b2RvIGxpc3QiKSk7Ci0KLQlzdHJidWZfcmVzZXQoYnVmKTsKLQotCWlmIChsYXVuY2hfc2VxdWVuY2VfZWRpdG9yKHRvZG9fZmlsZSwgYnVmLCBOVUxMKSkgewotCQlhcHBseV9hdXRvc3Rhc2gob3B0cyk7Ci0JCXNlcXVlbmNlcl9yZW1vdmVfc3RhdGUob3B0cyk7Ci0JCXRvZG9fbGlzdF9yZWxlYXNlKCZ0b2RvX2xpc3QpOwotCi0JCXJldHVybiAtMTsKLQl9Ci0KLQlzdHJidWZfc3RyaXBzcGFjZShidWYsIDEpOwogCWlmIChidWYtPmxlbiA9PSAwKSB7CisJCXN0cnVjdCB0b2RvX2l0ZW0gKml0ZW0gPSBhcHBlbmRfbmV3X3RvZG8odG9kb19saXN0KTsKKwkJaXRlbS0+Y29tbWFuZCA9IFRPRE9fTk9PUDsKKwkJaXRlbS0+Y29tbWl0ID0gTlVMTDsKKwkJaXRlbS0+YXJnX2xlbiA9IGl0ZW0tPmFyZ19vZmZzZXQgPSBpdGVtLT5mbGFncyA9IGl0ZW0tPm9mZnNldF9pbl9idWYgPSAwOworCX0KKworCWlmIChhdXRvc3F1YXNoICYmIHRvZG9fbGlzdF9yZWFycmFuZ2Vfc3F1YXNoKHRvZG9fbGlzdCkpCisJCXJldHVybiAtMTsKKworCWlmIChjb21tYW5kcy0+bnIpCisJCXRvZG9fbGlzdF9hZGRfZXhlY19jb21tYW5kcyh0b2RvX2xpc3QsIGNvbW1hbmRzKTsKKworCWlmIChjb3VudF9jb21tYW5kcyh0b2RvX2xpc3QpID09IDApIHsKIAkJYXBwbHlfYXV0b3N0YXNoKG9wdHMpOwogCQlzZXF1ZW5jZXJfcmVtb3ZlX3N0YXRlKG9wdHMpOwotCQl0b2RvX2xpc3RfcmVsZWFzZSgmdG9kb19saXN0KTsKIAogCQlyZXR1cm4gZXJyb3IoXygibm90aGluZyB0byBkbyIpKTsKIAl9CiAKLQl0b2RvX2xpc3RfcmVsZWFzZSgmdG9kb19saXN0KTsKKwlyZXMgPSBlZGl0X3RvZG9fbGlzdChyLCB0b2RvX2xpc3QsICZuZXdfdG9kbywgc2hvcnRyZXZpc2lvbnMsCisJCQkgICAgIHNob3J0b250bywgZmxhZ3MpOworCWlmIChyZXMgPT0gLTEpCisJCXJldHVybiAtMTsKKwllbHNlIGlmIChyZXMgPT0gLTIpIHsKKwkJYXBwbHlfYXV0b3N0YXNoKG9wdHMpOworCQlzZXF1ZW5jZXJfcmVtb3ZlX3N0YXRlKG9wdHMpOwogCi0JaWYgKGNoZWNrX3RvZG9fbGlzdCgpKSB7Ci0JCWNoZWNrb3V0X29udG8ob3B0cywgb250b19uYW1lLCBvbnRvLCBvcmlnX2hlYWQpOworCQlyZXR1cm4gLTE7CisJfSBlbHNlIGlmIChyZXMgPT0gLTMpIHsKKwkJYXBwbHlfYXV0b3N0YXNoKG9wdHMpOworCQlzZXF1ZW5jZXJfcmVtb3ZlX3N0YXRlKG9wdHMpOworCQl0b2RvX2xpc3RfcmVsZWFzZSgmbmV3X3RvZG8pOworCisJCXJldHVybiBlcnJvcihfKCJub3RoaW5nIHRvIGRvIikpOworCX0gZWxzZSBpZiAocmVzID09IC00KSB7CisJCWNoZWNrb3V0X29udG8ociwgb3B0cywgb250b19uYW1lLCAmb250by0+b2JqZWN0Lm9pZCwgb3JpZ19oZWFkKTsKKwkJdG9kb19saXN0X3JlbGVhc2UoJm5ld190b2RvKTsKKwogCQlyZXR1cm4gLTE7CiAJfQogCi0JaWYgKHRyYW5zZm9ybV90b2RvcyhmbGFncyAmIH4oVE9ET19MSVNUX1NIT1JURU5fSURTKSkpCi0JCXJldHVybiBlcnJvcihfKCJjb3VsZCBub3QgdHJhbnNmb3JtIHRoZSB0b2RvIGxpc3QiKSk7CisJLyogRXhwYW5kIHRoZSBjb21taXQgSURzICovCisJdG9kb19saXN0X3RvX3N0cmJ1ZihyLCAmbmV3X3RvZG8sICZidWYyLCAtMSwgMCk7CisJc3RyYnVmX3N3YXAoJm5ld190b2RvLmJ1ZiwgJmJ1ZjIpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWYyKTsKKwluZXdfdG9kby50b3RhbF9uciAtPSBuZXdfdG9kby5ucjsKKwlpZiAodG9kb19saXN0X3BhcnNlX2luc25fYnVmZmVyKHIsIG5ld190b2RvLmJ1Zi5idWYsICZuZXdfdG9kbykgPCAwKQorCQlCVUcoImludmFsaWQgdG9kbyBsaXN0IGFmdGVyIGV4cGFuZGluZyBJRHM6XG4lcyIsCisJCSAgICBuZXdfdG9kby5idWYuYnVmKTsKIAotCWlmIChvcHRzLT5hbGxvd19mZiAmJiBza2lwX3VubmVjZXNzYXJ5X3BpY2tzKCZvaWQpKQorCWlmIChvcHRzLT5hbGxvd19mZiAmJiBza2lwX3VubmVjZXNzYXJ5X3BpY2tzKHIsICZuZXdfdG9kbywgJm9pZCkpIHsKKwkJdG9kb19saXN0X3JlbGVhc2UoJm5ld190b2RvKTsKIAkJcmV0dXJuIGVycm9yKF8oImNvdWxkIG5vdCBza2lwIHVubmVjZXNzYXJ5IHBpY2sgY29tbWFuZHMiKSk7CisJfQogCi0JaWYgKGNoZWNrb3V0X29udG8ob3B0cywgb250b19uYW1lLCBvaWRfdG9faGV4KCZvaWQpLCBvcmlnX2hlYWQpKQotCQlyZXR1cm4gLTE7CisJaWYgKHRvZG9fbGlzdF93cml0ZV90b19maWxlKHIsICZuZXdfdG9kbywgdG9kb19maWxlLCBOVUxMLCBOVUxMLCAtMSwKKwkJCQkgICAgZmxhZ3MgJiB+KFRPRE9fTElTVF9TSE9SVEVOX0lEUykpKSB7CisJCXRvZG9fbGlzdF9yZWxlYXNlKCZuZXdfdG9kbyk7CisJCXJldHVybiBlcnJvcl9lcnJubyhfKCJjb3VsZCBub3Qgd3JpdGUgJyVzJyIpLCB0b2RvX2ZpbGUpOworCX0KIAotCWlmIChyZXF1aXJlX2NsZWFuX3dvcmtfdHJlZSgicmViYXNlIiwgIiIsIDEsIDEpKQotCQlyZXR1cm4gLTE7CisJcmVzID0gLTE7CiAKLQlyZXR1cm4gc2VxdWVuY2VyX2NvbnRpbnVlKG9wdHMpOworCWlmIChjaGVja291dF9vbnRvKHIsIG9wdHMsIG9udG9fbmFtZSwgJm9pZCwgb3JpZ19oZWFkKSkKKwkJZ290byBjbGVhbnVwOworCisJaWYgKHJlcXVpcmVfY2xlYW5fd29ya190cmVlKHIsICJyZWJhc2UiLCAiIiwgMSwgMSkpCisJCWdvdG8gY2xlYW51cDsKKworCXRvZG9fbGlzdF93cml0ZV90b3RhbF9ucigmbmV3X3RvZG8pOworCXJlcyA9IHBpY2tfY29tbWl0cyhyLCAmbmV3X3RvZG8sIG9wdHMpOworCitjbGVhbnVwOgorCXRvZG9fbGlzdF9yZWxlYXNlKCZuZXdfdG9kbyk7CisKKwlyZXR1cm4gcmVzOwogfQogCiBzdHJ1Y3Qgc3ViamVjdDJpdGVtX2VudHJ5IHsKQEAgLTQ5MTUsOSArNTE2NiwxNSBAQAogfTsKIAogc3RhdGljIGludCBzdWJqZWN0Mml0ZW1fY21wKGNvbnN0IHZvaWQgKmZuZGF0YSwKLQkJCSAgICBjb25zdCBzdHJ1Y3Qgc3ViamVjdDJpdGVtX2VudHJ5ICphLAotCQkJICAgIGNvbnN0IHN0cnVjdCBzdWJqZWN0Mml0ZW1fZW50cnkgKmIsIGNvbnN0IHZvaWQgKmtleSkKKwkJCSAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJCSAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAorCQkJICAgIGNvbnN0IHZvaWQgKmtleSkKIHsKKwljb25zdCBzdHJ1Y3Qgc3ViamVjdDJpdGVtX2VudHJ5ICphLCAqYjsKKworCWEgPSBjb250YWluZXJfb2YoZXB0ciwgY29uc3Qgc3RydWN0IHN1YmplY3QyaXRlbV9lbnRyeSwgZW50cnkpOworCWIgPSBjb250YWluZXJfb2YoZW50cnlfb3Jfa2V5LCBjb25zdCBzdHJ1Y3Qgc3ViamVjdDJpdGVtX2VudHJ5LCBlbnRyeSk7CisKIAlyZXR1cm4ga2V5ID8gc3RyY21wKGEtPnN1YmplY3QsIGtleSkgOiBzdHJjbXAoYS0+c3ViamVjdCwgYi0+c3ViamVjdCk7CiB9CiAKQEAgLTQ5MzIsMjEgKzUxODksMTMgQEAKICAqIG1lc3NhZ2Ugd2lsbCBoYXZlIHRvIGJlIHJldHJpZXZlZCBmcm9tIHRoZSBjb21taXQgKGFzIHRoZSBvbmVsaW5lIGluIHRoZQogICogc2NyaXB0IGNhbm5vdCBiZSB0cnVzdGVkKSBpbiBvcmRlciB0byBub3JtYWxpemUgdGhlIGF1dG9zcXVhc2ggYXJyYW5nZW1lbnQuCiAgKi8KLWludCByZWFycmFuZ2Vfc3F1YXNoKHZvaWQpCitpbnQgdG9kb19saXN0X3JlYXJyYW5nZV9zcXVhc2goc3RydWN0IHRvZG9fbGlzdCAqdG9kb19saXN0KQogewotCWNvbnN0IGNoYXIgKnRvZG9fZmlsZSA9IHJlYmFzZV9wYXRoX3RvZG8oKTsKLQlzdHJ1Y3QgdG9kb19saXN0IHRvZG9fbGlzdCA9IFRPRE9fTElTVF9JTklUOwogCXN0cnVjdCBoYXNobWFwIHN1YmplY3QyaXRlbTsKLQlpbnQgcmVzID0gMCwgcmVhcnJhbmdlZCA9IDAsICpuZXh0LCAqdGFpbCwgaTsKKwlpbnQgcmVhcnJhbmdlZCA9IDAsICpuZXh0LCAqdGFpbCwgaSwgbnIgPSAwLCBhbGxvYyA9IDA7CiAJY2hhciAqKnN1YmplY3RzOwogCXN0cnVjdCBjb21taXRfdG9kb19pdGVtIGNvbW1pdF90b2RvOwotCi0JaWYgKHN0cmJ1Zl9yZWFkX2ZpbGVfb3Jfd2hpbmUoJnRvZG9fbGlzdC5idWYsIHRvZG9fZmlsZSkgPCAwKQotCQlyZXR1cm4gLTE7Ci0JaWYgKHBhcnNlX2luc25fYnVmZmVyKHRvZG9fbGlzdC5idWYuYnVmLCAmdG9kb19saXN0KSA8IDApIHsKLQkJdG9kb19saXN0X3JlbGVhc2UoJnRvZG9fbGlzdCk7Ci0JCXJldHVybiAtMTsKLQl9CisJc3RydWN0IHRvZG9faXRlbSAqaXRlbXMgPSBOVUxMOwogCiAJaW5pdF9jb21taXRfdG9kb19pdGVtKCZjb21taXRfdG9kbyk7CiAJLyoKQEAgLTQ5NTgsMTQgKzUyMDcsMTMgQEAKIAkgKiBJbiB0aGF0IGNhc2UsIGxhc3RbaV0gd2lsbCBpbmRpY2F0ZSB0aGUgaW5kZXggb2YgdGhlIGxhdGVzdCBpdGVtIHRvCiAJICogYmUgbW92ZWQgdG8gYXBwZWFyIGFmdGVyIHRoZSBpJ3RoLgogCSAqLwotCWhhc2htYXBfaW5pdCgmc3ViamVjdDJpdGVtLCAoaGFzaG1hcF9jbXBfZm4pIHN1YmplY3QyaXRlbV9jbXAsCi0JCSAgICAgTlVMTCwgdG9kb19saXN0Lm5yKTsKLQlBTExPQ19BUlJBWShuZXh0LCB0b2RvX2xpc3QubnIpOwotCUFMTE9DX0FSUkFZKHRhaWwsIHRvZG9fbGlzdC5ucik7Ci0JQUxMT0NfQVJSQVkoc3ViamVjdHMsIHRvZG9fbGlzdC5ucik7Ci0JZm9yIChpID0gMDsgaSA8IHRvZG9fbGlzdC5ucjsgaSsrKSB7CisJaGFzaG1hcF9pbml0KCZzdWJqZWN0Mml0ZW0sIHN1YmplY3QyaXRlbV9jbXAsIE5VTEwsIHRvZG9fbGlzdC0+bnIpOworCUFMTE9DX0FSUkFZKG5leHQsIHRvZG9fbGlzdC0+bnIpOworCUFMTE9DX0FSUkFZKHRhaWwsIHRvZG9fbGlzdC0+bnIpOworCUFMTE9DX0FSUkFZKHN1YmplY3RzLCB0b2RvX2xpc3QtPm5yKTsKKwlmb3IgKGkgPSAwOyBpIDwgdG9kb19saXN0LT5ucjsgaSsrKSB7CiAJCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7Ci0JCXN0cnVjdCB0b2RvX2l0ZW0gKml0ZW0gPSB0b2RvX2xpc3QuaXRlbXMgKyBpOworCQlzdHJ1Y3QgdG9kb19pdGVtICppdGVtID0gdG9kb19saXN0LT5pdGVtcyArIGk7CiAJCWNvbnN0IGNoYXIgKmNvbW1pdF9idWZmZXIsICpzdWJqZWN0LCAqcDsKIAkJc2l6ZV90IHN1YmplY3RfbGVuOwogCQlpbnQgaTIgPSAtMTsKQEAgLTQ5NzgsNyArNTIyNiw2IEBACiAJCX0KIAogCQlpZiAoaXNfZml4dXAoaXRlbS0+Y29tbWFuZCkpIHsKLQkJCXRvZG9fbGlzdF9yZWxlYXNlKCZ0b2RvX2xpc3QpOwogCQkJY2xlYXJfY29tbWl0X3RvZG9faXRlbSgmY29tbWl0X3RvZG8pOwogCQkJcmV0dXJuIGVycm9yKF8oInRoZSBzY3JpcHQgd2FzIGFscmVhZHkgcmVhcnJhbmdlZC4iKSk7CiAJCX0KQEAgLTQ5ODYsNyArNTIzMyw3IEBACiAJCSpjb21taXRfdG9kb19pdGVtX2F0KCZjb21taXRfdG9kbywgaXRlbS0+Y29tbWl0KSA9IGl0ZW07CiAKIAkJcGFyc2VfY29tbWl0KGl0ZW0tPmNvbW1pdCk7Ci0JCWNvbW1pdF9idWZmZXIgPSBnZXRfY29tbWl0X2J1ZmZlcihpdGVtLT5jb21taXQsIE5VTEwpOworCQljb21taXRfYnVmZmVyID0gbG9nbXNnX3JlZW5jb2RlKGl0ZW0tPmNvbW1pdCwgTlVMTCwgIlVURi04Iik7CiAJCWZpbmRfY29tbWl0X3N1YmplY3QoY29tbWl0X2J1ZmZlciwgJnN1YmplY3QpOwogCQlmb3JtYXRfc3ViamVjdCgmYnVmLCBzdWJqZWN0LCAiICIpOwogCQlzdWJqZWN0ID0gc3ViamVjdHNbaV0gPSBzdHJidWZfZGV0YWNoKCZidWYsICZzdWJqZWN0X2xlbik7CkBAIC01MDAzLDggKzUyNTAsMTEgQEAKIAkJCQkJYnJlYWs7CiAJCQl9CiAKLQkJCWlmICgoZW50cnkgPSBoYXNobWFwX2dldF9mcm9tX2hhc2goJnN1YmplY3QyaXRlbSwKLQkJCQkJCQkgICBzdHJoYXNoKHApLCBwKSkpCisJCQllbnRyeSA9IGhhc2htYXBfZ2V0X2VudHJ5X2Zyb21faGFzaCgmc3ViamVjdDJpdGVtLAorCQkJCQkJc3RyaGFzaChwKSwgcCwKKwkJCQkJCXN0cnVjdCBzdWJqZWN0Mml0ZW1fZW50cnksCisJCQkJCQllbnRyeSk7CisJCQlpZiAoZW50cnkpCiAJCQkJLyogZm91bmQgYnkgdGl0bGUgKi8KIAkJCQlpMiA9IGVudHJ5LT5pOwogCQkJZWxzZSBpZiAoIXN0cmNocihwLCAnICcpICYmCkBAIC01MDEzLDcgKzUyNjMsNyBAQAogCQkJCSAqY29tbWl0X3RvZG9faXRlbV9hdCgmY29tbWl0X3RvZG8sIGNvbW1pdDIpKQogCQkJCS8qIGZvdW5kIGJ5IGNvbW1pdCBuYW1lICovCiAJCQkJaTIgPSAqY29tbWl0X3RvZG9faXRlbV9hdCgmY29tbWl0X3RvZG8sIGNvbW1pdDIpCi0JCQkJCS0gdG9kb19saXN0Lml0ZW1zOworCQkJCQktIHRvZG9fbGlzdC0+aXRlbXM7CiAJCQllbHNlIHsKIAkJCQkvKiBjb3B5IGNhbiBiZSBhIHByZWZpeCBvZiB0aGUgY29tbWl0IHN1YmplY3QgKi8KIAkJCQlmb3IgKGkyID0gMDsgaTIgPCBpOyBpMisrKQpAQCAtNTAyNiw3ICs1Mjc2LDcgQEAKIAkJfQogCQlpZiAoaTIgPj0gMCkgewogCQkJcmVhcnJhbmdlZCA9IDE7Ci0JCQl0b2RvX2xpc3QuaXRlbXNbaV0uY29tbWFuZCA9CisJCQl0b2RvX2xpc3QtPml0ZW1zW2ldLmNvbW1hbmQgPQogCQkJCXN0YXJ0c193aXRoKHN1YmplY3QsICJmaXh1cCEiKSA/CiAJCQkJVE9ET19GSVhVUCA6IFRPRE9fU1FVQVNIOwogCQkJaWYgKG5leHRbaTJdIDwgMCkKQEAgLTUwMzgsMTYgKzUyODgsMTUgQEAKIAkJCQkJCXN0cmhhc2goc3ViamVjdCksIHN1YmplY3QpKSB7CiAJCQlGTEVYX0FMTE9DX01FTShlbnRyeSwgc3ViamVjdCwgc3ViamVjdCwgc3ViamVjdF9sZW4pOwogCQkJZW50cnktPmkgPSBpOwotCQkJaGFzaG1hcF9lbnRyeV9pbml0KGVudHJ5LCBzdHJoYXNoKGVudHJ5LT5zdWJqZWN0KSk7Ci0JCQloYXNobWFwX3B1dCgmc3ViamVjdDJpdGVtLCBlbnRyeSk7CisJCQloYXNobWFwX2VudHJ5X2luaXQoJmVudHJ5LT5lbnRyeSwKKwkJCQkJc3RyaGFzaChlbnRyeS0+c3ViamVjdCkpOworCQkJaGFzaG1hcF9wdXQoJnN1YmplY3QyaXRlbSwgJmVudHJ5LT5lbnRyeSk7CiAJCX0KIAl9CiAKIAlpZiAocmVhcnJhbmdlZCkgewotCQlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwotCi0JCWZvciAoaSA9IDA7IGkgPCB0b2RvX2xpc3QubnI7IGkrKykgewotCQkJZW51bSB0b2RvX2NvbW1hbmQgY29tbWFuZCA9IHRvZG9fbGlzdC5pdGVtc1tpXS5jb21tYW5kOworCQlmb3IgKGkgPSAwOyBpIDwgdG9kb19saXN0LT5ucjsgaSsrKSB7CisJCQllbnVtIHRvZG9fY29tbWFuZCBjb21tYW5kID0gdG9kb19saXN0LT5pdGVtc1tpXS5jb21tYW5kOwogCQkJaW50IGN1ciA9IGk7CiAKIAkJCS8qCkBAIC01MDU4LDM3ICs1MzA3LDQ3IEBACiAJCQkJY29udGludWU7CiAKIAkJCXdoaWxlIChjdXIgPj0gMCkgewotCQkJCWNvbnN0IGNoYXIgKmJvbCA9Ci0JCQkJCWdldF9pdGVtX2xpbmUoJnRvZG9fbGlzdCwgY3VyKTsKLQkJCQljb25zdCBjaGFyICplb2wgPQotCQkJCQlnZXRfaXRlbV9saW5lKCZ0b2RvX2xpc3QsIGN1ciArIDEpOwotCi0JCQkJLyogcmVwbGFjZSAncGljaycsIGJ5ICdmaXh1cCcgb3IgJ3NxdWFzaCcgKi8KLQkJCQljb21tYW5kID0gdG9kb19saXN0Lml0ZW1zW2N1cl0uY29tbWFuZDsKLQkJCQlpZiAoaXNfZml4dXAoY29tbWFuZCkpIHsKLQkJCQkJc3RyYnVmX2FkZHN0cigmYnVmLAotCQkJCQkJdG9kb19jb21tYW5kX2luZm9bY29tbWFuZF0uc3RyKTsKLQkJCQkJYm9sICs9IHN0cmNzcG4oYm9sLCAiIFx0Iik7Ci0JCQkJfQotCi0JCQkJc3RyYnVmX2FkZCgmYnVmLCBib2wsIGVvbCAtIGJvbCk7Ci0KKwkJCQlBTExPQ19HUk9XKGl0ZW1zLCBuciArIDEsIGFsbG9jKTsKKwkJCQlpdGVtc1tucisrXSA9IHRvZG9fbGlzdC0+aXRlbXNbY3VyXTsKIAkJCQljdXIgPSBuZXh0W2N1cl07CiAJCQl9CiAJCX0KIAotCQlyZXMgPSByZXdyaXRlX2ZpbGUodG9kb19maWxlLCBidWYuYnVmLCBidWYubGVuKTsKLQkJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CisJCUZSRUVfQU5EX05VTEwodG9kb19saXN0LT5pdGVtcyk7CisJCXRvZG9fbGlzdC0+aXRlbXMgPSBpdGVtczsKKwkJdG9kb19saXN0LT5uciA9IG5yOworCQl0b2RvX2xpc3QtPmFsbG9jID0gYWxsb2M7CiAJfQogCiAJZnJlZShuZXh0KTsKIAlmcmVlKHRhaWwpOwotCWZvciAoaSA9IDA7IGkgPCB0b2RvX2xpc3QubnI7IGkrKykKKwlmb3IgKGkgPSAwOyBpIDwgdG9kb19saXN0LT5ucjsgaSsrKQogCQlmcmVlKHN1YmplY3RzW2ldKTsKIAlmcmVlKHN1YmplY3RzKTsKLQloYXNobWFwX2ZyZWUoJnN1YmplY3QyaXRlbSwgMSk7Ci0JdG9kb19saXN0X3JlbGVhc2UoJnRvZG9fbGlzdCk7CisJaGFzaG1hcF9mcmVlX2VudHJpZXMoJnN1YmplY3QyaXRlbSwgc3RydWN0IHN1YmplY3QyaXRlbV9lbnRyeSwgZW50cnkpOwogCiAJY2xlYXJfY29tbWl0X3RvZG9faXRlbSgmY29tbWl0X3RvZG8pOwotCXJldHVybiByZXM7CisKKwlyZXR1cm4gMDsKK30KKworaW50IHNlcXVlbmNlcl9kZXRlcm1pbmVfd2hlbmNlKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBlbnVtIGNvbW1pdF93aGVuY2UgKndoZW5jZSkKK3sKKwlpZiAoZmlsZV9leGlzdHMoZ2l0X3BhdGhfY2hlcnJ5X3BpY2tfaGVhZChyKSkpIHsKKwkJc3RydWN0IG9iamVjdF9pZCBjaGVycnlfcGlja19oZWFkLCByZWJhc2VfaGVhZDsKKworCQlpZiAoZmlsZV9leGlzdHMoZ2l0X3BhdGhfc2VxX2RpcigpKSkKKwkJCSp3aGVuY2UgPSBGUk9NX0NIRVJSWV9QSUNLX01VTFRJOworCQlpZiAoZmlsZV9leGlzdHMocmViYXNlX3BhdGgoKSkgJiYKKwkJICAgICFnZXRfb2lkKCJSRUJBU0VfSEVBRCIsICZyZWJhc2VfaGVhZCkgJiYKKwkJICAgICFnZXRfb2lkKCJDSEVSUllfUElDS19IRUFEIiwgJmNoZXJyeV9waWNrX2hlYWQpICYmCisJCSAgICBvaWRlcSgmcmViYXNlX2hlYWQsICZjaGVycnlfcGlja19oZWFkKSkKKwkJCSp3aGVuY2UgPSBGUk9NX1JFQkFTRV9QSUNLOworCQllbHNlCisJCQkqd2hlbmNlID0gRlJPTV9DSEVSUllfUElDS19TSU5HTEU7CisKKwkJcmV0dXJuIDE7CisJfQorCisJcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9zZXF1ZW5jZXIuaCBiL3NlcXVlbmNlci5oCmluZGV4IDUwNzFhNzMuLjBiZWU4NTAgMTAwNjQ0Ci0tLSBhL3NlcXVlbmNlci5oCisrKyBiL3NlcXVlbmNlci5oCkBAIC0zLDEyICszLDE1IEBACiAKICNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgInN0cmJ1Zi5oIgorI2luY2x1ZGUgInd0LXN0YXR1cy5oIgogCiBzdHJ1Y3QgY29tbWl0Oworc3RydWN0IHJlcG9zaXRvcnk7CiAKIGNvbnN0IGNoYXIgKmdpdF9wYXRoX2NvbW1pdF9lZGl0bXNnKHZvaWQpOwotY29uc3QgY2hhciAqZ2l0X3BhdGhfc2VxX2Rpcih2b2lkKTsKIGNvbnN0IGNoYXIgKnJlYmFzZV9wYXRoX3RvZG8odm9pZCk7Citjb25zdCBjaGFyICpyZWJhc2VfcGF0aF90b2RvX2JhY2t1cCh2b2lkKTsKK2NvbnN0IGNoYXIgKnJlYmFzZV9wYXRoX2Ryb3BwZWQodm9pZCk7CiAKICNkZWZpbmUgQVBQRU5EX1NJR05PRkZfREVEVVAgKDF1IDw8IDApCiAKQEAgLTM3LDEzICs0MCwxNyBAQAogCWludCBhbGxvd19yZXJlcmVfYXV0bzsKIAlpbnQgYWxsb3dfZW1wdHk7CiAJaW50IGFsbG93X2VtcHR5X21lc3NhZ2U7CisJaW50IGRyb3BfcmVkdW5kYW50X2NvbW1pdHM7CiAJaW50IGtlZXBfcmVkdW5kYW50X2NvbW1pdHM7CiAJaW50IHZlcmJvc2U7CisJaW50IHF1aWV0OworCWludCByZXNjaGVkdWxlX2ZhaWxlZF9leGVjOwogCiAJaW50IG1haW5saW5lOwogCiAJY2hhciAqZ3BnX3NpZ247CiAJZW51bSBjb21taXRfbXNnX2NsZWFudXBfbW9kZSBkZWZhdWx0X21zZ19jbGVhbnVwOworCWludCBleHBsaWNpdF9jbGVhbnVwOwogCiAJLyogTWVyZ2Ugc3RyYXRlZ3kgKi8KIAljaGFyICpzdHJhdGVneTsKQEAgLTYzLDIzICs3MCw3MSBAQAogfTsKICNkZWZpbmUgUkVQTEFZX09QVFNfSU5JVCB7IC5hY3Rpb24gPSAtMSwgLmN1cnJlbnRfZml4dXBzID0gU1RSQlVGX0lOSVQgfQogCi1lbnVtIG1pc3NpbmdfY29tbWl0X2NoZWNrX2xldmVsIHsKLQlNSVNTSU5HX0NPTU1JVF9DSEVDS19JR05PUkUgPSAwLAotCU1JU1NJTkdfQ09NTUlUX0NIRUNLX1dBUk4sCi0JTUlTU0lOR19DT01NSVRfQ0hFQ0tfRVJST1IKKy8qCisgKiBOb3RlIHRoYXQgb3JkZXJpbmcgbWF0dGVycyBpbiB0aGlzIGVudW0uIE5vdCBvbmx5IG11c3QgaXQgbWF0Y2ggdGhlIG1hcHBpbmcKKyAqIG9mIHRvZG9fY29tbWFuZF9pbmZvIChpbiBzZXF1ZW5jZXIuYyksIGl0IGlzIGFsc28gZGl2aWRlZCBpbnRvIHNldmVyYWwKKyAqIHNlY3Rpb25zIHRoYXQgbWF0dGVyLiAgV2hlbiBhZGRpbmcgbmV3IGNvbW1hbmRzLCBtYWtlIHN1cmUgeW91IGFkZCBpdCBpbiB0aGUKKyAqIHJpZ2h0IHNlY3Rpb24uCisgKi8KK2VudW0gdG9kb19jb21tYW5kIHsKKwkvKiBjb21tYW5kcyB0aGF0IGhhbmRsZSBjb21taXRzICovCisJVE9ET19QSUNLID0gMCwKKwlUT0RPX1JFVkVSVCwKKwlUT0RPX0VESVQsCisJVE9ET19SRVdPUkQsCisJVE9ET19GSVhVUCwKKwlUT0RPX1NRVUFTSCwKKwkvKiBjb21tYW5kcyB0aGF0IGRvIHNvbWV0aGluZyBlbHNlIHRoYW4gaGFuZGxpbmcgYSBzaW5nbGUgY29tbWl0ICovCisJVE9ET19FWEVDLAorCVRPRE9fQlJFQUssCisJVE9ET19MQUJFTCwKKwlUT0RPX1JFU0VULAorCVRPRE9fTUVSR0UsCisJLyogY29tbWFuZHMgdGhhdCBkbyBub3RoaW5nIGJ1dCBhcmUgY291bnRlZCBmb3IgcmVwb3J0aW5nIHByb2dyZXNzICovCisJVE9ET19OT09QLAorCVRPRE9fRFJPUCwKKwkvKiBjb21tZW50cyAobm90IGNvdW50ZWQgZm9yIHJlcG9ydGluZyBwcm9ncmVzcykgKi8KKwlUT0RPX0NPTU1FTlQKIH07CiAKLWludCB3cml0ZV9tZXNzYWdlKGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbiwgY29uc3QgY2hhciAqZmlsZW5hbWUsCi0JCSAgaW50IGFwcGVuZF9lb2wpOworc3RydWN0IHRvZG9faXRlbSB7CisJZW51bSB0b2RvX2NvbW1hbmQgY29tbWFuZDsKKwlzdHJ1Y3QgY29tbWl0ICpjb21taXQ7CisJdW5zaWduZWQgaW50IGZsYWdzOworCWludCBhcmdfbGVuOworCS8qIFRoZSBvZmZzZXQgb2YgdGhlIGNvbW1hbmQgYW5kIGl0cyBhcmd1bWVudCBpbiB0aGUgc3RyYnVmICovCisJc2l6ZV90IG9mZnNldF9pbl9idWYsIGFyZ19vZmZzZXQ7Cit9OworCitzdHJ1Y3QgdG9kb19saXN0IHsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1ZjsKKwlzdHJ1Y3QgdG9kb19pdGVtICppdGVtczsKKwlpbnQgbnIsIGFsbG9jLCBjdXJyZW50OworCWludCBkb25lX25yLCB0b3RhbF9ucjsKKwlzdHJ1Y3Qgc3RhdF9kYXRhIHN0YXQ7Cit9OworCisjZGVmaW5lIFRPRE9fTElTVF9JTklUIHsgU1RSQlVGX0lOSVQgfQorCitpbnQgdG9kb19saXN0X3BhcnNlX2luc25fYnVmZmVyKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjaGFyICpidWYsCisJCQkJc3RydWN0IHRvZG9fbGlzdCAqdG9kb19saXN0KTsKK2ludCB0b2RvX2xpc3Rfd3JpdGVfdG9fZmlsZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHRvZG9fbGlzdCAqdG9kb19saXN0LAorCQkJICAgIGNvbnN0IGNoYXIgKmZpbGUsIGNvbnN0IGNoYXIgKnNob3J0cmV2aXNpb25zLAorCQkJICAgIGNvbnN0IGNoYXIgKnNob3J0b250bywgaW50IG51bSwgdW5zaWduZWQgZmxhZ3MpOwordm9pZCB0b2RvX2xpc3RfcmVsZWFzZShzdHJ1Y3QgdG9kb19saXN0ICp0b2RvX2xpc3QpOworY29uc3QgY2hhciAqdG9kb19pdGVtX2dldF9hcmcoc3RydWN0IHRvZG9fbGlzdCAqdG9kb19saXN0LAorCQkJICAgICAgc3RydWN0IHRvZG9faXRlbSAqaXRlbSk7CiAKIC8qIENhbGwgdGhpcyB0byBzZXR1cCBkZWZhdWx0cyBiZWZvcmUgcGFyc2luZyBjb21tYW5kIGxpbmUgb3B0aW9ucyAqLwogdm9pZCBzZXF1ZW5jZXJfaW5pdF9jb25maWcoc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKTsKLWludCBzZXF1ZW5jZXJfcGlja19yZXZpc2lvbnMoc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKTsKLWludCBzZXF1ZW5jZXJfY29udGludWUoc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKTsKLWludCBzZXF1ZW5jZXJfcm9sbGJhY2soc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKTsKK2ludCBzZXF1ZW5jZXJfcGlja19yZXZpc2lvbnMoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkgICAgIHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cyk7CitpbnQgc2VxdWVuY2VyX2NvbnRpbnVlKHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLCBzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMpOworaW50IHNlcXVlbmNlcl9yb2xsYmFjayhzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKTsKK2ludCBzZXF1ZW5jZXJfc2tpcChzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgc3RydWN0IHJlcGxheV9vcHRzICpvcHRzKTsKIGludCBzZXF1ZW5jZXJfcmVtb3ZlX3N0YXRlKHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cyk7CiAKLSNkZWZpbmUgVE9ET19MSVNUX0tFRVBfRU1QVFkgKDFVIDw8IDApCisvKiAjZGVmaW5lIFRPRE9fTElTVF9LRUVQX0VNUFRZICgxVSA8PCAwKSAqLyAvKiBObyBsb25nZXIgdXNlZCAqLwogI2RlZmluZSBUT0RPX0xJU1RfU0hPUlRFTl9JRFMgKDFVIDw8IDEpCiAjZGVmaW5lIFRPRE9fTElTVF9BQkJSRVZJQVRFX0NNRFMgKDFVIDw8IDIpCiAjZGVmaW5lIFRPRE9fTElTVF9SRUJBU0VfTUVSR0VTICgxVSA8PCAzKQpAQCAtODksMjAgKzE0NCwyNCBAQAogICogY29tbWl0cyBzaG91bGQgYmUgcmViYXNlZCBvbnRvIHRoZSBuZXcgYmFzZSwgdGhpcyBmbGFnIG5lZWRzIHRvIGJlIHBhc3NlZC4KICAqLwogI2RlZmluZSBUT0RPX0xJU1RfUkVCQVNFX0NPVVNJTlMgKDFVIDw8IDQpCi1pbnQgc2VxdWVuY2VyX21ha2Vfc2NyaXB0KEZJTEUgKm91dCwgaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2LAotCQkJICB1bnNpZ25lZCBmbGFncyk7CisjZGVmaW5lIFRPRE9fTElTVF9BUFBFTkRfVE9ET19IRUxQICgxVSA8PCA1KQorLyoKKyAqIFdoZW4gZ2VuZXJhdGluZyBhIHNjcmlwdCB0aGF0IHJlYmFzZXMgbWVyZ2VzIHdpdGggYC0tcm9vdGAgKmFuZCogd2l0aAorICogYC0tb250b2AsIHdlIGRvIG5vdCB3YW50IHRvIHJlLWdlbmVyYXRlIHRoZSByb290IGNvbW1pdHMuCisgKi8KKyNkZWZpbmUgVE9ET19MSVNUX1JPT1RfV0lUSF9PTlRPICgxVSA8PCA2KQogCi1pbnQgc2VxdWVuY2VyX2FkZF9leGVjX2NvbW1hbmRzKGNvbnN0IGNoYXIgKmNvbW1hbmQpOwotaW50IHRyYW5zZm9ybV90b2Rvcyh1bnNpZ25lZCBmbGFncyk7Ci1lbnVtIG1pc3NpbmdfY29tbWl0X2NoZWNrX2xldmVsIGdldF9taXNzaW5nX2NvbW1pdF9jaGVja19sZXZlbCh2b2lkKTsKLWludCBjaGVja190b2RvX2xpc3Qodm9pZCk7Ci1pbnQgY29tcGxldGVfYWN0aW9uKHN0cnVjdCByZXBsYXlfb3B0cyAqb3B0cywgdW5zaWduZWQgZmxhZ3MsCisKK2ludCBzZXF1ZW5jZXJfbWFrZV9zY3JpcHQoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCBzdHJidWYgKm91dCwgaW50IGFyZ2MsCisJCQkgIGNvbnN0IGNoYXIgKiphcmd2LCB1bnNpZ25lZCBmbGFncyk7CisKK3ZvaWQgdG9kb19saXN0X2FkZF9leGVjX2NvbW1hbmRzKHN0cnVjdCB0b2RvX2xpc3QgKnRvZG9fbGlzdCwKKwkJCQkgc3RydWN0IHN0cmluZ19saXN0ICpjb21tYW5kcyk7CitpbnQgY29tcGxldGVfYWN0aW9uKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMsIHVuc2lnbmVkIGZsYWdzLAogCQkgICAgY29uc3QgY2hhciAqc2hvcnRyZXZpc2lvbnMsIGNvbnN0IGNoYXIgKm9udG9fbmFtZSwKLQkJICAgIGNvbnN0IGNoYXIgKm9udG8sIGNvbnN0IGNoYXIgKm9yaWdfaGVhZCwgY29uc3QgY2hhciAqY21kLAotCQkgICAgdW5zaWduZWQgYXV0b3NxdWFzaCk7Ci1pbnQgcmVhcnJhbmdlX3NxdWFzaCh2b2lkKTsKLQotZXh0ZXJuIGNvbnN0IGNoYXIgc2lnbl9vZmZfaGVhZGVyW107CisJCSAgICBzdHJ1Y3QgY29tbWl0ICpvbnRvLCBjb25zdCBjaGFyICpvcmlnX2hlYWQsIHN0cnVjdCBzdHJpbmdfbGlzdCAqY29tbWFuZHMsCisJCSAgICB1bnNpZ25lZCBhdXRvc3F1YXNoLCBzdHJ1Y3QgdG9kb19saXN0ICp0b2RvX2xpc3QpOworaW50IHRvZG9fbGlzdF9yZWFycmFuZ2Vfc3F1YXNoKHN0cnVjdCB0b2RvX2xpc3QgKnRvZG9fbGlzdCk7CiAKIC8qCiAgKiBBcHBlbmQgYSBzaWdub2ZmIHRvIHRoZSBjb21taXQgbWVzc2FnZSBpbiAibXNnYnVmIi4gVGhlIGlnbm9yZV9mb290ZXIKQEAgLTExMiw3ICsxNzEsMTQgQEAKICAqLwogdm9pZCBhcHBlbmRfc2lnbm9mZihzdHJ1Y3Qgc3RyYnVmICptc2didWYsIHNpemVfdCBpZ25vcmVfZm9vdGVyLCB1bnNpZ25lZCBmbGFnKTsKIAotdm9pZCBhcHBlbmRfY29uZmxpY3RzX2hpbnQoc3RydWN0IHN0cmJ1ZiAqbXNnYnVmKTsKK3ZvaWQgYXBwZW5kX2NvbmZsaWN0c19oaW50KHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAorCQlzdHJ1Y3Qgc3RyYnVmICptc2didWYsIGVudW0gY29tbWl0X21zZ19jbGVhbnVwX21vZGUgY2xlYW51cF9tb2RlKTsKK2VudW0gY29tbWl0X21zZ19jbGVhbnVwX21vZGUgZ2V0X2NsZWFudXBfbW9kZShjb25zdCBjaGFyICpjbGVhbnVwX2FyZywKKwlpbnQgdXNlX2VkaXRvcik7CisKK3ZvaWQgY2xlYW51cF9tZXNzYWdlKHN0cnVjdCBzdHJidWYgKm1zZ2J1ZiwKKwllbnVtIGNvbW1pdF9tc2dfY2xlYW51cF9tb2RlIGNsZWFudXBfbW9kZSwgaW50IHZlcmJvc2UpOworCiBpbnQgbWVzc2FnZV9pc19lbXB0eShjb25zdCBzdHJ1Y3Qgc3RyYnVmICpzYiwKIAkJICAgICBlbnVtIGNvbW1pdF9tc2dfY2xlYW51cF9tb2RlIGNsZWFudXBfbW9kZSk7CiBpbnQgdGVtcGxhdGVfdW50b3VjaGVkKGNvbnN0IHN0cnVjdCBzdHJidWYgKnNiLCBjb25zdCBjaGFyICp0ZW1wbGF0ZV9maWxlLApAQCAtMTIxLDIwICsxODcsMjQgQEAKIAkJCSAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpuZXdfaGVhZCwKIAkJCSAgICBjb25zdCBjaGFyICphY3Rpb24sIGNvbnN0IHN0cnVjdCBzdHJidWYgKm1zZywKIAkJCSAgICBzdHJ1Y3Qgc3RyYnVmICplcnIpOwotdm9pZCBjb21taXRfcG9zdF9yZXdyaXRlKGNvbnN0IHN0cnVjdCBjb21taXQgKmN1cnJlbnRfaGVhZCwKK3ZvaWQgY29tbWl0X3Bvc3RfcmV3cml0ZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSBjb25zdCBzdHJ1Y3QgY29tbWl0ICpjdXJyZW50X2hlYWQsCiAJCQkgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqbmV3X2hlYWQpOwogCi1pbnQgcHJlcGFyZV9icmFuY2hfdG9fYmVfcmViYXNlZChzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMsIGNvbnN0IGNoYXIgKmNvbW1pdCk7Ci0KICNkZWZpbmUgU1VNTUFSWV9JTklUSUFMX0NPTU1JVCAgICgxIDw8IDApCiAjZGVmaW5lIFNVTU1BUllfU0hPV19BVVRIT1JfREFURSAoMSA8PCAxKQotdm9pZCBwcmludF9jb21taXRfc3VtbWFyeShjb25zdCBjaGFyICpwcmVmaXgsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKK3ZvaWQgcHJpbnRfY29tbWl0X3N1bW1hcnkoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkgIGNvbnN0IGNoYXIgKnByZWZpeCwKKwkJCSAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAogCQkJICB1bnNpZ25lZCBpbnQgZmxhZ3MpOwogCiBpbnQgcmVhZF9hdXRob3Jfc2NyaXB0KGNvbnN0IGNoYXIgKnBhdGgsIGNoYXIgKipuYW1lLCBjaGFyICoqZW1haWwsIGNoYXIgKipkYXRlLAogCQkgICAgICAgaW50IGFsbG93X21pc3NpbmcpOwotI2VuZGlmCi0KIHZvaWQgcGFyc2Vfc3RyYXRlZ3lfb3B0cyhzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMsIGNoYXIgKnJhd19vcHRzKTsKIGludCB3cml0ZV9iYXNpY19zdGF0ZShzdHJ1Y3QgcmVwbGF5X29wdHMgKm9wdHMsIGNvbnN0IGNoYXIgKmhlYWRfbmFtZSwKLQkJICAgICAgY29uc3QgY2hhciAqb250bywgY29uc3QgY2hhciAqb3JpZ19oZWFkKTsKKwkJICAgICAgc3RydWN0IGNvbW1pdCAqb250bywgY29uc3QgY2hhciAqb3JpZ19oZWFkKTsKK3ZvaWQgc2VxdWVuY2VyX3Bvc3RfY29tbWl0X2NsZWFudXAoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGludCB2ZXJib3NlKTsKK2ludCBzZXF1ZW5jZXJfZ2V0X2xhc3RfY29tbWFuZChzdHJ1Y3QgcmVwb3NpdG9yeSogciwKKwkJCSAgICAgICBlbnVtIHJlcGxheV9hY3Rpb24gKmFjdGlvbik7CitpbnQgc2VxdWVuY2VyX2RldGVybWluZV93aGVuY2Uoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGVudW0gY29tbWl0X3doZW5jZSAqd2hlbmNlKTsKKyNlbmRpZiAvKiBTRVFVRU5DRVJfSCAqLwpkaWZmIC0tZ2l0IGEvc2VydmUuYyBiL3NlcnZlLmMKaW5kZXggYmRhMDg1Zi4uMzE3MjU2YyAxMDA2NDQKLS0tIGEvc2VydmUuYworKysgYi9zZXJ2ZS5jCkBAIC0xNjcsNyArMTY3LDggQEAKIAogCXBhY2tldF9yZWFkZXJfaW5pdCgmcmVhZGVyLCAwLCBOVUxMLCAwLAogCQkJICAgUEFDS0VUX1JFQURfQ0hPTVBfTkVXTElORSB8Ci0JCQkgICBQQUNLRVRfUkVBRF9HRU5UTEVfT05fRU9GKTsKKwkJCSAgIFBBQ0tFVF9SRUFEX0dFTlRMRV9PTl9FT0YgfAorCQkJICAgUEFDS0VUX1JFQURfRElFX09OX0VSUl9QQUNLRVQpOwogCiAJLyoKIAkgKiBDaGVjayB0byBzZWUgaWYgdGhlIGNsaWVudCBjbG9zZWQgdGhlaXIgZW5kIGJlZm9yZSBzZW5kaW5nIGFub3RoZXIKQEAgLTE3NSw3ICsxNzYsNyBAQAogCSAqLwogCWlmIChwYWNrZXRfcmVhZGVyX3BlZWsoJnJlYWRlcikgPT0gUEFDS0VUX1JFQURfRU9GKQogCQlyZXR1cm4gMTsKLQlyZWFkZXIub3B0aW9ucyA9IFBBQ0tFVF9SRUFEX0NIT01QX05FV0xJTkU7CisJcmVhZGVyLm9wdGlvbnMgJj0gflBBQ0tFVF9SRUFEX0dFTlRMRV9PTl9FT0Y7CiAKIAl3aGlsZSAoc3RhdGUgIT0gUFJPQ0VTU19SRVFVRVNUX0RPTkUpIHsKIAkJc3dpdGNoIChwYWNrZXRfcmVhZGVyX3BlZWsoJnJlYWRlcikpIHsKZGlmZiAtLWdpdCBhL3NlcnZlLmggYi9zZXJ2ZS5oCmluZGV4IGZlNjViYTkuLjQyZGRjYTcgMTAwNjQ0Ci0tLSBhL3NlcnZlLmgKKysrIGIvc2VydmUuaApAQCAtMiwxNCArMiwxNCBAQAogI2RlZmluZSBTRVJWRV9ICiAKIHN0cnVjdCBhcmd2X2FycmF5OwotZXh0ZXJuIGludCBoYXNfY2FwYWJpbGl0eShjb25zdCBzdHJ1Y3QgYXJndl9hcnJheSAqa2V5cywgY29uc3QgY2hhciAqY2FwYWJpbGl0eSwKLQkJCSAgY29uc3QgY2hhciAqKnZhbHVlKTsKK2ludCBoYXNfY2FwYWJpbGl0eShjb25zdCBzdHJ1Y3QgYXJndl9hcnJheSAqa2V5cywgY29uc3QgY2hhciAqY2FwYWJpbGl0eSwKKwkJICAgY29uc3QgY2hhciAqKnZhbHVlKTsKIAogc3RydWN0IHNlcnZlX29wdGlvbnMgewogCXVuc2lnbmVkIGFkdmVydGlzZV9jYXBhYmlsaXRpZXM7CiAJdW5zaWduZWQgc3RhdGVsZXNzX3JwYzsKIH07CiAjZGVmaW5lIFNFUlZFX09QVElPTlNfSU5JVCB7IDAgfQotZXh0ZXJuIHZvaWQgc2VydmUoc3RydWN0IHNlcnZlX29wdGlvbnMgKm9wdGlvbnMpOwordm9pZCBzZXJ2ZShzdHJ1Y3Qgc2VydmVfb3B0aW9ucyAqb3B0aW9ucyk7CiAKICNlbmRpZiAvKiBTRVJWRV9IICovCmRpZmYgLS1naXQgYS9zZXJ2ZXItaW5mby5jIGIvc2VydmVyLWluZm8uYwppbmRleCBlMmIyZDZhMi4uYmFlMmNkZiAxMDA2NDQKLS0tIGEvc2VydmVyLWluZm8uYworKysgYi9zZXJ2ZXItaW5mby5jCkBAIC0xLDQgKzEsNSBAQAogI2luY2x1ZGUgImNhY2hlLmgiCisjaW5jbHVkZSAiZGlyLmgiCiAjaW5jbHVkZSAicmVwb3NpdG9yeS5oIgogI2luY2x1ZGUgInJlZnMuaCIKICNpbmNsdWRlICJvYmplY3QuaCIKQEAgLTYsODIgKzcsMTc0IEBACiAjaW5jbHVkZSAidGFnLmgiCiAjaW5jbHVkZSAicGFja2ZpbGUuaCIKICNpbmNsdWRlICJvYmplY3Qtc3RvcmUuaCIKKyNpbmNsdWRlICJzdHJidWYuaCIKKworc3RydWN0IHVwZGF0ZV9pbmZvX2N0eCB7CisJRklMRSAqY3VyX2ZwOworCUZJTEUgKm9sZF9mcDsgLyogYmVjb21lcyBOVUxMIGlmIGl0IGRpZmZlcnMgZnJvbSBjdXJfZnAgKi8KKwlzdHJ1Y3Qgc3RyYnVmIGN1cl9zYjsKKwlzdHJ1Y3Qgc3RyYnVmIG9sZF9zYjsKK307CisKK3N0YXRpYyB2b2lkIHVpY19tYXJrX3N0YWxlKHN0cnVjdCB1cGRhdGVfaW5mb19jdHggKnVpYykKK3sKKwlmY2xvc2UodWljLT5vbGRfZnApOworCXVpYy0+b2xkX2ZwID0gTlVMTDsKK30KKworc3RhdGljIGludCB1aWNfaXNfc3RhbGUoY29uc3Qgc3RydWN0IHVwZGF0ZV9pbmZvX2N0eCAqdWljKQoreworCXJldHVybiB1aWMtPm9sZF9mcCA9PSBOVUxMOworfQorCitzdGF0aWMgaW50IHVpY19wcmludGYoc3RydWN0IHVwZGF0ZV9pbmZvX2N0eCAqdWljLCBjb25zdCBjaGFyICpmbXQsIC4uLikKK3sKKwl2YV9saXN0IGFwOworCWludCByZXQgPSAtMTsKKworCXZhX3N0YXJ0KGFwLCBmbXQpOworCisJaWYgKHVpY19pc19zdGFsZSh1aWMpKSB7CisJCXJldCA9IHZmcHJpbnRmKHVpYy0+Y3VyX2ZwLCBmbXQsIGFwKTsKKwl9IGVsc2UgeworCQlzc2l6ZV90IHI7CisJCXN0cnVjdCBzdHJidWYgKmN1ciA9ICZ1aWMtPmN1cl9zYjsKKwkJc3RydWN0IHN0cmJ1ZiAqb2xkID0gJnVpYy0+b2xkX3NiOworCisJCXN0cmJ1Zl9yZXNldChjdXIpOworCQlzdHJidWZfdmluc2VydGYoY3VyLCAwLCBmbXQsIGFwKTsKKworCQlzdHJidWZfcmVzZXQob2xkKTsKKwkJc3RyYnVmX2dyb3cob2xkLCBjdXItPmxlbik7CisJCXIgPSBmcmVhZChvbGQtPmJ1ZiwgMSwgY3VyLT5sZW4sIHVpYy0+b2xkX2ZwKTsKKwkJaWYgKHIgIT0gY3VyLT5sZW4gfHwgbWVtY21wKG9sZC0+YnVmLCBjdXItPmJ1ZiwgcikpCisJCQl1aWNfbWFya19zdGFsZSh1aWMpOworCisJCWlmIChmd3JpdGUoY3VyLT5idWYsIDEsIGN1ci0+bGVuLCB1aWMtPmN1cl9mcCkgPT0gY3VyLT5sZW4pCisJCQlyZXQgPSAwOworCX0KKworCXZhX2VuZChhcCk7CisKKwlyZXR1cm4gcmV0OworfQogCiAvKgogICogQ3JlYXRlIHRoZSBmaWxlICJwYXRoIiBieSB3cml0aW5nIHRvIGEgdGVtcG9yYXJ5IGZpbGUgYW5kIHJlbmFtaW5nCiAgKiBpdCBpbnRvIHBsYWNlLiBUaGUgY29udGVudHMgb2YgdGhlIGZpbGUgY29tZSBmcm9tICJnZW5lcmF0ZSIsIHdoaWNoCiAgKiBzaG91bGQgcmV0dXJuIG5vbi16ZXJvIGlmIGl0IGVuY291bnRlcnMgYW4gZXJyb3IuCiAgKi8KLXN0YXRpYyBpbnQgdXBkYXRlX2luZm9fZmlsZShjaGFyICpwYXRoLCBpbnQgKCpnZW5lcmF0ZSkoRklMRSAqKSkKK3N0YXRpYyBpbnQgdXBkYXRlX2luZm9fZmlsZShjaGFyICpwYXRoLAorCQkJaW50ICgqZ2VuZXJhdGUpKHN0cnVjdCB1cGRhdGVfaW5mb19jdHggKiksCisJCQlpbnQgZm9yY2UpCiB7CiAJY2hhciAqdG1wID0gbWtwYXRoZHVwKCIlc19YWFhYWFgiLCBwYXRoKTsKIAlpbnQgcmV0ID0gLTE7CiAJaW50IGZkID0gLTE7Ci0JRklMRSAqZnAgPSBOVUxMLCAqdG9fY2xvc2U7CisJRklMRSAqdG9fY2xvc2U7CisJc3RydWN0IHVwZGF0ZV9pbmZvX2N0eCB1aWMgPSB7CisJCS5jdXJfZnAgPSBOVUxMLAorCQkub2xkX2ZwID0gTlVMTCwKKwkJLmN1cl9zYiA9IFNUUkJVRl9JTklULAorCQkub2xkX3NiID0gU1RSQlVGX0lOSVQKKwl9OwogCiAJc2FmZV9jcmVhdGVfbGVhZGluZ19kaXJlY3RvcmllcyhwYXRoKTsKIAlmZCA9IGdpdF9ta3N0ZW1wX21vZGUodG1wLCAwNjY2KTsKIAlpZiAoZmQgPCAwKQogCQlnb3RvIG91dDsKLQl0b19jbG9zZSA9IGZwID0gZmRvcGVuKGZkLCAidyIpOwotCWlmICghZnApCisJdG9fY2xvc2UgPSB1aWMuY3VyX2ZwID0gZmRvcGVuKGZkLCAidyIpOworCWlmICghdWljLmN1cl9mcCkKIAkJZ290byBvdXQ7CiAJZmQgPSAtMTsKLQlyZXQgPSBnZW5lcmF0ZShmcCk7CisKKwkvKiBubyBwcm9ibGVtIG9uIEVOT0VOVCBhbmQgb2xkX2ZwID09IE5VTEwsIGl0J3Mgc3RhbGUsIG5vdyAqLworCWlmICghZm9yY2UpCisJCXVpYy5vbGRfZnAgPSBmb3Blbl9vcl93YXJuKHBhdGgsICJyIik7CisKKwkvKgorCSAqIHVpY19wcmludGYgd2lsbCBjb21wYXJlIGluY3JlbWVudGFsIGNvbXBhcmlzb24gYWdhaW5zdCBvbGRfZnAKKwkgKiBhbmQgbWFyayB1aWMgYXMgc3RhbGUgaWYgbmVlZGVkCisJICovCisJcmV0ID0gZ2VuZXJhdGUoJnVpYyk7CiAJaWYgKHJldCkKIAkJZ290byBvdXQ7Ci0JZnAgPSBOVUxMOworCisJLyogbmV3IGZpbGUgbWF5IGJlIHNob3J0ZXIgdGhhbiB0aGUgb2xkIG9uZSwgY2hlY2sgaGVyZSAqLworCWlmICghdWljX2lzX3N0YWxlKCZ1aWMpKSB7CisJCXN0cnVjdCBzdGF0IHN0OworCQlsb25nIG5ld19sZW4gPSBmdGVsbCh1aWMuY3VyX2ZwKTsKKwkJaW50IG9sZF9mZCA9IGZpbGVubyh1aWMub2xkX2ZwKTsKKworCQlpZiAobmV3X2xlbiA8IDApIHsKKwkJCXJldCA9IC0xOworCQkJZ290byBvdXQ7CisJCX0KKwkJaWYgKGZzdGF0KG9sZF9mZCwgJnN0KSB8fCAoc3Quc3Rfc2l6ZSAhPSAoc2l6ZV90KW5ld19sZW4pKQorCQkJdWljX21hcmtfc3RhbGUoJnVpYyk7CisJfQorCisJdWljLmN1cl9mcCA9IE5VTEw7CiAJaWYgKGZjbG9zZSh0b19jbG9zZSkpCiAJCWdvdG8gb3V0OwotCWlmIChhZGp1c3Rfc2hhcmVkX3Blcm0odG1wKSA8IDApCi0JCWdvdG8gb3V0OwotCWlmIChyZW5hbWUodG1wLCBwYXRoKSA8IDApCi0JCWdvdG8gb3V0OworCisJaWYgKHVpY19pc19zdGFsZSgmdWljKSkgeworCQlpZiAoYWRqdXN0X3NoYXJlZF9wZXJtKHRtcCkgPCAwKQorCQkJZ290byBvdXQ7CisJCWlmIChyZW5hbWUodG1wLCBwYXRoKSA8IDApCisJCQlnb3RvIG91dDsKKwl9IGVsc2UgeworCQl1bmxpbmsodG1wKTsKKwl9CiAJcmV0ID0gMDsKIAogb3V0OgogCWlmIChyZXQpIHsKIAkJZXJyb3JfZXJybm8oInVuYWJsZSB0byB1cGRhdGUgJXMiLCBwYXRoKTsKLQkJaWYgKGZwKQotCQkJZmNsb3NlKGZwKTsKKwkJaWYgKHVpYy5jdXJfZnApCisJCQlmY2xvc2UodWljLmN1cl9mcCk7CiAJCWVsc2UgaWYgKGZkID49IDApCiAJCQljbG9zZShmZCk7CiAJCXVubGluayh0bXApOwogCX0KIAlmcmVlKHRtcCk7CisJaWYgKHVpYy5vbGRfZnApCisJCWZjbG9zZSh1aWMub2xkX2ZwKTsKKwlzdHJidWZfcmVsZWFzZSgmdWljLm9sZF9zYik7CisJc3RyYnVmX3JlbGVhc2UoJnVpYy5jdXJfc2IpOwogCXJldHVybiByZXQ7CiB9CiAKIHN0YXRpYyBpbnQgYWRkX2luZm9fcmVmKGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKIAkJCWludCBmbGFnLCB2b2lkICpjYl9kYXRhKQogewotCUZJTEUgKmZwID0gY2JfZGF0YTsKKwlzdHJ1Y3QgdXBkYXRlX2luZm9fY3R4ICp1aWMgPSBjYl9kYXRhOwogCXN0cnVjdCBvYmplY3QgKm8gPSBwYXJzZV9vYmplY3QodGhlX3JlcG9zaXRvcnksIG9pZCk7CiAJaWYgKCFvKQogCQlyZXR1cm4gLTE7CiAKLQlpZiAoZnByaW50ZihmcCwgIiVzCSVzXG4iLCBvaWRfdG9faGV4KG9pZCksIHBhdGgpIDwgMCkKKwlpZiAodWljX3ByaW50Zih1aWMsICIlcwklc1xuIiwgb2lkX3RvX2hleChvaWQpLCBwYXRoKSA8IDApCiAJCXJldHVybiAtMTsKIAogCWlmIChvLT50eXBlID09IE9CSl9UQUcpIHsKIAkJbyA9IGRlcmVmX3RhZyh0aGVfcmVwb3NpdG9yeSwgbywgcGF0aCwgMCk7CiAJCWlmIChvKQotCQkJaWYgKGZwcmludGYoZnAsICIlcwklc157fVxuIiwKKwkJCWlmICh1aWNfcHJpbnRmKHVpYywgIiVzCSVzXnt9XG4iLAogCQkJCW9pZF90b19oZXgoJm8tPm9pZCksIHBhdGgpIDwgMCkKIAkJCQlyZXR1cm4gLTE7CiAJfQogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGdlbmVyYXRlX2luZm9fcmVmcyhGSUxFICpmcCkKK3N0YXRpYyBpbnQgZ2VuZXJhdGVfaW5mb19yZWZzKHN0cnVjdCB1cGRhdGVfaW5mb19jdHggKnVpYykKIHsKLQlyZXR1cm4gZm9yX2VhY2hfcmVmKGFkZF9pbmZvX3JlZiwgZnApOworCXJldHVybiBmb3JfZWFjaF9yZWYoYWRkX2luZm9fcmVmLCB1aWMpOwogfQogCiBzdGF0aWMgaW50IHVwZGF0ZV9pbmZvX3JlZnMoaW50IGZvcmNlKQogewogCWNoYXIgKnBhdGggPSBnaXRfcGF0aGR1cCgiaW5mby9yZWZzIik7Ci0JaW50IHJldCA9IHVwZGF0ZV9pbmZvX2ZpbGUocGF0aCwgZ2VuZXJhdGVfaW5mb19yZWZzKTsKKwlpbnQgcmV0ID0gdXBkYXRlX2luZm9fZmlsZShwYXRoLCBnZW5lcmF0ZV9pbmZvX3JlZnMsIGZvcmNlKTsKIAlmcmVlKHBhdGgpOwogCXJldHVybiByZXQ7CiB9CkBAIC05MSwxOSArMTg0LDE1IEBACiAJc3RydWN0IHBhY2tlZF9naXQgKnA7CiAJaW50IG9sZF9udW07CiAJaW50IG5ld19udW07Ci0JaW50IG5yX2FsbG9jOwogfSAqKmluZm87CiBzdGF0aWMgaW50IG51bV9wYWNrOwotc3RhdGljIGNvbnN0IGNoYXIgKm9iamRpcjsKLXN0YXRpYyBpbnQgb2JqZGlybGVuOwogCiBzdGF0aWMgc3RydWN0IHBhY2tfaW5mbyAqZmluZF9wYWNrX2J5X25hbWUoY29uc3QgY2hhciAqbmFtZSkKIHsKIAlpbnQgaTsKIAlmb3IgKGkgPSAwOyBpIDwgbnVtX3BhY2s7IGkrKykgewogCQlzdHJ1Y3QgcGFja2VkX2dpdCAqcCA9IGluZm9baV0tPnA7Ci0JCS8qIHNraXAgIi9wYWNrLyIgYWZ0ZXIgIi5naXQvb2JqZWN0cyIgKi8KLQkJaWYgKCFzdHJjbXAocC0+cGFja19uYW1lICsgb2JqZGlybGVuICsgNiwgbmFtZSkpCisJCWlmICghc3RyY21wKHBhY2tfYmFzZW5hbWUocCksIG5hbWUpKQogCQkJcmV0dXJuIGluZm9baV07CiAJfQogCXJldHVybiBOVUxMOwpAQCAtMTEyLDkgKzIwMSw5IEBACiAvKiBSZXR1cm5zIG5vbi16ZXJvIHdoZW4gd2UgZGV0ZWN0IHRoYXQgdGhlIGluZm8gaW4gdGhlCiAgKiBvbGQgZmlsZSBpcyB1c2VsZXNzLgogICovCi1zdGF0aWMgaW50IHBhcnNlX3BhY2tfZGVmKGNvbnN0IGNoYXIgKmxpbmUsIGludCBvbGRfY250KQorc3RhdGljIGludCBwYXJzZV9wYWNrX2RlZihjb25zdCBjaGFyICpwYWNrbmFtZSwgaW50IG9sZF9jbnQpCiB7Ci0Jc3RydWN0IHBhY2tfaW5mbyAqaSA9IGZpbmRfcGFja19ieV9uYW1lKGxpbmUgKyAyKTsKKwlzdHJ1Y3QgcGFja19pbmZvICppID0gZmluZF9wYWNrX2J5X25hbWUocGFja25hbWUpOwogCWlmIChpKSB7CiAJCWktPm9sZF9udW0gPSBvbGRfY250OwogCQlyZXR1cm4gMDsKQEAgLTEzMSwzOSArMjIwLDQwIEBACiBzdGF0aWMgaW50IHJlYWRfcGFja19pbmZvX2ZpbGUoY29uc3QgY2hhciAqaW5mb2ZpbGUpCiB7CiAJRklMRSAqZnA7Ci0JY2hhciBsaW5lWzEwMDBdOworCXN0cnVjdCBzdHJidWYgbGluZSA9IFNUUkJVRl9JTklUOwogCWludCBvbGRfY250ID0gMDsKKwlpbnQgc3RhbGUgPSAxOwogCiAJZnAgPSBmb3Blbl9vcl93YXJuKGluZm9maWxlLCAiciIpOwogCWlmICghZnApCiAJCXJldHVybiAxOyAvKiBub25leGlzdGVudCBpcyBub3QgYW4gZXJyb3IuICovCiAKLQl3aGlsZSAoZmdldHMobGluZSwgc2l6ZW9mKGxpbmUpLCBmcCkpIHsKLQkJaW50IGxlbiA9IHN0cmxlbihsaW5lKTsKLQkJaWYgKGxlbiAmJiBsaW5lW2xlbi0xXSA9PSAnXG4nKQotCQkJbGluZVstLWxlbl0gPSAwOworCXdoaWxlIChzdHJidWZfZ2V0bGluZSgmbGluZSwgZnApICE9IEVPRikgeworCQljb25zdCBjaGFyICphcmc7CiAKLQkJaWYgKCFsZW4pCisJCWlmICghbGluZS5sZW4pCiAJCQljb250aW51ZTsKIAotCQlzd2l0Y2ggKGxpbmVbMF0pIHsKLQkJY2FzZSAnUCc6IC8qIFAgbmFtZSAqLwotCQkJaWYgKHBhcnNlX3BhY2tfZGVmKGxpbmUsIG9sZF9jbnQrKykpCisJCWlmIChza2lwX3ByZWZpeChsaW5lLmJ1ZiwgIlAgIiwgJmFyZykpIHsKKwkJCS8qIFAgbmFtZSAqLworCQkJaWYgKHBhcnNlX3BhY2tfZGVmKGFyZywgb2xkX2NudCsrKSkKIAkJCQlnb3RvIG91dF9zdGFsZTsKLQkJCWJyZWFrOwotCQljYXNlICdEJzogLyogd2UgdXNlZCB0byBlbWl0IEQgYnV0IHRoYXQgd2FzIG1pc2d1aWRlZC4gKi8KLQkJY2FzZSAnVCc6IC8qIHdlIHVzZWQgdG8gZW1pdCBUIGJ1dCBub2JvZHkgdXNlcyBpdC4gKi8KKwkJfSBlbHNlIGlmIChsaW5lLmJ1ZlswXSA9PSAnRCcpIHsKKwkJCS8qIHdlIHVzZWQgdG8gZW1pdCBEIGJ1dCB0aGF0IHdhcyBtaXNndWlkZWQuICovCiAJCQlnb3RvIG91dF9zdGFsZTsKLQkJZGVmYXVsdDoKLQkJCWVycm9yKCJ1bnJlY29nbml6ZWQ6ICVzIiwgbGluZSk7Ci0JCQlicmVhazsKKwkJfSBlbHNlIGlmIChsaW5lLmJ1ZlswXSA9PSAnVCcpIHsKKwkJCS8qIHdlIHVzZWQgdG8gZW1pdCBUIGJ1dCBub2JvZHkgdXNlcyBpdC4gKi8KKwkJCWdvdG8gb3V0X3N0YWxlOworCQl9IGVsc2UgeworCQkJZXJyb3IoInVucmVjb2duaXplZDogJXMiLCBsaW5lLmJ1Zik7CiAJCX0KIAl9Ci0JZmNsb3NlKGZwKTsKLQlyZXR1cm4gMDsKKwlzdGFsZSA9IDA7CisKICBvdXRfc3RhbGU6CisJc3RyYnVmX3JlbGVhc2UoJmxpbmUpOwogCWZjbG9zZShmcCk7Ci0JcmV0dXJuIDE7CisJcmV0dXJuIHN0YWxlOwogfQogCiBzdGF0aWMgaW50IGNvbXBhcmVfaW5mbyhjb25zdCB2b2lkICphXywgY29uc3Qgdm9pZCAqYl8pCkBAIC0xOTQsMjggKzI4NCwyMSBAQAogewogCXN0cnVjdCBwYWNrZWRfZ2l0ICpwOwogCWludCBzdGFsZTsKLQlpbnQgaSA9IDA7Ci0KLQlvYmpkaXIgPSBnZXRfb2JqZWN0X2RpcmVjdG9yeSgpOwotCW9iamRpcmxlbiA9IHN0cmxlbihvYmpkaXIpOworCWludCBpOworCXNpemVfdCBhbGxvYyA9IDA7CiAKIAlmb3IgKHAgPSBnZXRfYWxsX3BhY2tzKHRoZV9yZXBvc2l0b3J5KTsgcDsgcCA9IHAtPm5leHQpIHsKIAkJLyogd2UgaWdub3JlIHRoaW5ncyBvbiBhbHRlcm5hdGUgcGF0aCBzaW5jZSB0aGV5IGFyZQogCQkgKiBub3QgYXZhaWxhYmxlIHRvIHRoZSBwdWxsZXJzIGluIGdlbmVyYWwuCiAJCSAqLwotCQlpZiAoIXAtPnBhY2tfbG9jYWwpCisJCWlmICghcC0+cGFja19sb2NhbCB8fCAhZmlsZV9leGlzdHMocC0+cGFja19uYW1lKSkKIAkJCWNvbnRpbnVlOwotCQlpKys7Ci0JfQotCW51bV9wYWNrID0gaTsKLQlpbmZvID0geGNhbGxvYyhudW1fcGFjaywgc2l6ZW9mKHN0cnVjdCBwYWNrX2luZm8gKikpOwotCWZvciAoaSA9IDAsIHAgPSBnZXRfYWxsX3BhY2tzKHRoZV9yZXBvc2l0b3J5KTsgcDsgcCA9IHAtPm5leHQpIHsKLQkJaWYgKCFwLT5wYWNrX2xvY2FsKQotCQkJY29udGludWU7CisKKwkJaSA9IG51bV9wYWNrKys7CisJCUFMTE9DX0dST1coaW5mbywgbnVtX3BhY2ssIGFsbG9jKTsKIAkJaW5mb1tpXSA9IHhjYWxsb2MoMSwgc2l6ZW9mKHN0cnVjdCBwYWNrX2luZm8pKTsKIAkJaW5mb1tpXS0+cCA9IHA7CiAJCWluZm9baV0tPm9sZF9udW0gPSAtMTsKLQkJaSsrOwogCX0KIAogCWlmIChpbmZvZmlsZSAmJiAhZm9yY2UpCkBAIC0yNDEsMTQgKzMyNCwxNCBAQAogCWZyZWUoaW5mbyk7CiB9CiAKLXN0YXRpYyBpbnQgd3JpdGVfcGFja19pbmZvX2ZpbGUoRklMRSAqZnApCitzdGF0aWMgaW50IHdyaXRlX3BhY2tfaW5mb19maWxlKHN0cnVjdCB1cGRhdGVfaW5mb19jdHggKnVpYykKIHsKIAlpbnQgaTsKIAlmb3IgKGkgPSAwOyBpIDwgbnVtX3BhY2s7IGkrKykgewotCQlpZiAoZnByaW50ZihmcCwgIlAgJXNcbiIsIGluZm9baV0tPnAtPnBhY2tfbmFtZSArIG9iamRpcmxlbiArIDYpIDwgMCkKKwkJaWYgKHVpY19wcmludGYodWljLCAiUCAlc1xuIiwgcGFja19iYXNlbmFtZShpbmZvW2ldLT5wKSkgPCAwKQogCQkJcmV0dXJuIC0xOwogCX0KLQlpZiAoZnB1dGMoJ1xuJywgZnApID09IEVPRikKKwlpZiAodWljX3ByaW50Zih1aWMsICJcbiIpIDwgMCkKIAkJcmV0dXJuIC0xOwogCXJldHVybiAwOwogfQpAQCAtMjU5LDcgKzM0Miw3IEBACiAJaW50IHJldDsKIAogCWluaXRfcGFja19pbmZvKGluZm9maWxlLCBmb3JjZSk7Ci0JcmV0ID0gdXBkYXRlX2luZm9fZmlsZShpbmZvZmlsZSwgd3JpdGVfcGFja19pbmZvX2ZpbGUpOworCXJldCA9IHVwZGF0ZV9pbmZvX2ZpbGUoaW5mb2ZpbGUsIHdyaXRlX3BhY2tfaW5mb19maWxlLCBmb3JjZSk7CiAJZnJlZV9wYWNrX2luZm8oKTsKIAlmcmVlKGluZm9maWxlKTsKIAlyZXR1cm4gcmV0OwpkaWZmIC0tZ2l0IGEvc2V0dXAuYyBiL3NldHVwLmMKaW5kZXggMWJlNTAzNy4uMGUwZmRiYSAxMDA2NDQKLS0tIGEvc2V0dXAuYworKysgYi9zZXR1cC5jCkBAIC00LDYgKzQsNyBAQAogI2luY2x1ZGUgImRpci5oIgogI2luY2x1ZGUgInN0cmluZy1saXN0LmgiCiAjaW5jbHVkZSAiY2hkaXItbm90aWZ5LmgiCisjaW5jbHVkZSAicHJvbWlzb3ItcmVtb3RlLmgiCiAKIHN0YXRpYyBpbnQgaW5zaWRlX2dpdF9kaXIgPSAtMTsKIHN0YXRpYyBpbnQgaW5zaWRlX3dvcmtfdHJlZSA9IC0xOwpAQCAtMzEsNiArMzIsNyBAQAogCWNoYXIgKnBhdGgwOwogCWludCBvZmY7CiAJY29uc3QgY2hhciAqd29ya190cmVlID0gZ2V0X2dpdF93b3JrX3RyZWUoKTsKKwlzdHJ1Y3Qgc3RyYnVmIHJlYWxwYXRoID0gU1RSQlVGX0lOSVQ7CiAKIAlpZiAoIXdvcmtfdHJlZSkKIAkJcmV0dXJuIC0xOwpAQCAtMzksNyArNDEsNyBAQAogCW9mZiA9IG9mZnNldF8xc3RfY29tcG9uZW50KHBhdGgpOwogCiAJLyogY2hlY2sgaWYgd29yayB0cmVlIGlzIGFscmVhZHkgdGhlIHByZWZpeCAqLwotCWlmICh3dGxlbiA8PSBsZW4gJiYgIXN0cm5jbXAocGF0aCwgd29ya190cmVlLCB3dGxlbikpIHsKKwlpZiAod3RsZW4gPD0gbGVuICYmICFmc3BhdGhuY21wKHBhdGgsIHdvcmtfdHJlZSwgd3RsZW4pKSB7CiAJCWlmIChwYXRoW3d0bGVuXSA9PSAnLycpIHsKIAkJCW1lbW1vdmUocGF0aCwgcGF0aCArIHd0bGVuICsgMSwgbGVuIC0gd3RsZW4pOwogCQkJcmV0dXJuIDA7CkBAIC01OSw4ICs2MSwxMCBAQAogCQlwYXRoKys7CiAJCWlmICgqcGF0aCA9PSAnLycpIHsKIAkJCSpwYXRoID0gJ1wwJzsKLQkJCWlmIChzdHJjbXAocmVhbF9wYXRoKHBhdGgwKSwgd29ya190cmVlKSA9PSAwKSB7CisJCQlzdHJidWZfcmVhbHBhdGgoJnJlYWxwYXRoLCBwYXRoMCwgMSk7CisJCQlpZiAoZnNwYXRoY21wKHJlYWxwYXRoLmJ1Ziwgd29ya190cmVlKSA9PSAwKSB7CiAJCQkJbWVtbW92ZShwYXRoMCwgcGF0aCArIDEsIGxlbiAtIChwYXRoIC0gcGF0aDApKTsKKwkJCQlzdHJidWZfcmVsZWFzZSgmcmVhbHBhdGgpOwogCQkJCXJldHVybiAwOwogCQkJfQogCQkJKnBhdGggPSAnLyc7CkBAIC02OCwxMSArNzIsMTQgQEAKIAl9CiAKIAkvKiBjaGVjayB3aG9sZSBwYXRoICovCi0JaWYgKHN0cmNtcChyZWFsX3BhdGgocGF0aDApLCB3b3JrX3RyZWUpID09IDApIHsKKwlzdHJidWZfcmVhbHBhdGgoJnJlYWxwYXRoLCBwYXRoMCwgMSk7CisJaWYgKGZzcGF0aGNtcChyZWFscGF0aC5idWYsIHdvcmtfdHJlZSkgPT0gMCkgewogCQkqcGF0aDAgPSAnXDAnOworCQlzdHJidWZfcmVsZWFzZSgmcmVhbHBhdGgpOwogCQlyZXR1cm4gMDsKIAl9CiAKKwlzdHJidWZfcmVsZWFzZSgmcmVhbHBhdGgpOwogCXJldHVybiAtMTsKIH0KIApAQCAtMTE5LDggKzEyNiwxMyBAQAogY2hhciAqcHJlZml4X3BhdGgoY29uc3QgY2hhciAqcHJlZml4LCBpbnQgbGVuLCBjb25zdCBjaGFyICpwYXRoKQogewogCWNoYXIgKnIgPSBwcmVmaXhfcGF0aF9nZW50bHkocHJlZml4LCBsZW4sIE5VTEwsIHBhdGgpOwotCWlmICghcikKLQkJZGllKF8oIiclcycgaXMgb3V0c2lkZSByZXBvc2l0b3J5IiksIHBhdGgpOworCWlmICghcikgeworCQljb25zdCBjaGFyICpoaW50X3BhdGggPSBnZXRfZ2l0X3dvcmtfdHJlZSgpOworCQlpZiAoIWhpbnRfcGF0aCkKKwkJCWhpbnRfcGF0aCA9IGdldF9naXRfZGlyKCk7CisJCWRpZShfKCInJXMnIGlzIG91dHNpZGUgcmVwb3NpdG9yeSBhdCAnJXMnIiksIHBhdGgsCisJCSAgICBhYnNvbHV0ZV9wYXRoKGhpbnRfcGF0aCkpOworCX0KIAlyZXR1cm4gcjsKIH0KIApAQCAtMTY0LDcgKzE3Niw4IEBACiAJZGllX2Vycm5vKF8oImZhaWxlZCB0byBzdGF0ICclcyciKSwgYXJnKTsKIH0KIAotc3RhdGljIHZvaWQgTk9SRVRVUk4gZGllX3ZlcmlmeV9maWxlbmFtZShjb25zdCBjaGFyICpwcmVmaXgsCitzdGF0aWMgdm9pZCBOT1JFVFVSTiBkaWVfdmVyaWZ5X2ZpbGVuYW1lKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQkgY29uc3QgY2hhciAqcHJlZml4LAogCQkJCQkgY29uc3QgY2hhciAqYXJnLAogCQkJCQkgaW50IGRpYWdub3NlX21pc3NwZWx0X3JldikKIHsKQEAgLTE3OSw3ICsxOTIsNyBAQAogCSAqIGxldCBtYXliZV9kaWVfb25fbWlzc3BlbHRfb2JqZWN0X25hbWUoKSBldmVuIHRyaWdnZXIuCiAJICovCiAJaWYgKCEoYXJnWzBdID09ICc6JyAmJiAhaXNhbG51bShhcmdbMV0pKSkKLQkJbWF5YmVfZGllX29uX21pc3NwZWx0X29iamVjdF9uYW1lKGFyZywgcHJlZml4KTsKKwkJbWF5YmVfZGllX29uX21pc3NwZWx0X29iamVjdF9uYW1lKHIsIGFyZywgcHJlZml4KTsKIAogCS8qIC4uLiBvciBmYWxsIGJhY2sgdGhlIG1vc3QgZ2VuZXJhbCBtZXNzYWdlLiAqLwogCWRpZShfKCJhbWJpZ3VvdXMgYXJndW1lbnQgJyVzJzogdW5rbm93biByZXZpc2lvbiBvciBwYXRoIG5vdCBpbiB0aGUgd29ya2luZyB0cmVlLlxuIgpAQCAtMTk1LDkgKzIwOCwyNiBAQAogICovCiBzdGF0aWMgaW50IGxvb2tzX2xpa2VfcGF0aHNwZWMoY29uc3QgY2hhciAqYXJnKQogewotCS8qIGFueXRoaW5nIHdpdGggYSB3aWxkY2FyZCBjaGFyYWN0ZXIgKi8KLQlpZiAoIW5vX3dpbGRjYXJkKGFyZykpCi0JCXJldHVybiAxOworCWNvbnN0IGNoYXIgKnA7CisJaW50IGVzY2FwZWQgPSAwOworCisJLyoKKwkgKiBXaWxkY2FyZCBjaGFyYWN0ZXJzIGltcGx5IHRoZSB1c2VyIGlzIGxvb2tpbmcgdG8gbWF0Y2ggcGF0aHNwZWNzCisJICogdGhhdCBhcmVuJ3QgaW4gdGhlIGZpbGVzeXN0ZW0uIE5vdGUgdGhhdCB0aGlzIGRvZXNuJ3QgaW5jbHVkZQorCSAqIGJhY2tzbGFzaCBldmVuIHRob3VnaCBpdCdzIGEgZ2xvYiBzcGVjaWFsOyBieSBpdHNlbGYgaXQgZG9lc24ndAorCSAqIGNhdXNlIGFueSBpbmNyZWFzZSBpbiB0aGUgbWF0Y2guIExpa2V3aXNlIGlnbm9yZSBiYWNrc2xhc2gtZXNjYXBlZAorCSAqIHdpbGRjYXJkIGNoYXJhY3RlcnMuCisJICovCisJZm9yIChwID0gYXJnOyAqcDsgcCsrKSB7CisJCWlmIChlc2NhcGVkKSB7CisJCQllc2NhcGVkID0gMDsKKwkJfSBlbHNlIGlmIChpc19nbG9iX3NwZWNpYWwoKnApKSB7CisJCQlpZiAoKnAgPT0gJ1xcJykKKwkJCQllc2NhcGVkID0gMTsKKwkJCWVsc2UKKwkJCQlyZXR1cm4gMTsKKwkJfQorCX0KIAogCS8qIGxvbmctZm9ybSBwYXRoc3BlYyBtYWdpYyAqLwogCWlmIChzdGFydHNfd2l0aChhcmcsICI6KCIpKQpAQCAtMjM0LDcgKzI2NCw3IEBACiAJCWRpZShfKCJvcHRpb24gJyVzJyBtdXN0IGNvbWUgYmVmb3JlIG5vbi1vcHRpb24gYXJndW1lbnRzIiksIGFyZyk7CiAJaWYgKGxvb2tzX2xpa2VfcGF0aHNwZWMoYXJnKSB8fCBjaGVja19maWxlbmFtZShwcmVmaXgsIGFyZykpCiAJCXJldHVybjsKLQlkaWVfdmVyaWZ5X2ZpbGVuYW1lKHByZWZpeCwgYXJnLCBkaWFnbm9zZV9taXNzcGVsdF9yZXYpOworCWRpZV92ZXJpZnlfZmlsZW5hbWUodGhlX3JlcG9zaXRvcnksIHByZWZpeCwgYXJnLCBkaWFnbm9zZV9taXNzcGVsdF9yZXYpOwogfQogCiAvKgpAQCAtNDExLDYgKzQ0MSw3IEBACiAJfSBlbHNlIGlmIChzdHJjbXAodmFyLCAiY29yZS53b3JrdHJlZSIpID09IDApIHsKIAkJaWYgKCF2YWx1ZSkKIAkJCXJldHVybiBjb25maWdfZXJyb3Jfbm9uYm9vbCh2YXIpOworCQlmcmVlKGRhdGEtPndvcmtfdHJlZSk7CiAJCWRhdGEtPndvcmtfdHJlZSA9IHhzdHJkdXAodmFsdWUpOwogCX0KIAlyZXR1cm4gMDsKQEAgLTQ3Niw3ICs1MDcsNyBAQAogCX0KIAogCXJlcG9zaXRvcnlfZm9ybWF0X3ByZWNpb3VzX29iamVjdHMgPSBjYW5kaWRhdGUtPnByZWNpb3VzX29iamVjdHM7Ci0JcmVwb3NpdG9yeV9mb3JtYXRfcGFydGlhbF9jbG9uZSA9IGNhbmRpZGF0ZS0+cGFydGlhbF9jbG9uZTsKKwlzZXRfcmVwb3NpdG9yeV9mb3JtYXRfcGFydGlhbF9jbG9uZShjYW5kaWRhdGUtPnBhcnRpYWxfY2xvbmUpOwogCXJlcG9zaXRvcnlfZm9ybWF0X3dvcmt0cmVlX2NvbmZpZyA9IGNhbmRpZGF0ZS0+d29ya3RyZWVfY29uZmlnOwogCXN0cmluZ19saXN0X2NsZWFyKCZjYW5kaWRhdGUtPnVua25vd25fZXh0ZW5zaW9ucywgMCk7CiAKQEAgLTQ5OSwyNyArNTMwLDM4IEBACiAJCX0KIAkJaWYgKGNhbmRpZGF0ZS0+d29ya190cmVlKSB7CiAJCQlmcmVlKGdpdF93b3JrX3RyZWVfY2ZnKTsKLQkJCWdpdF93b3JrX3RyZWVfY2ZnID0gY2FuZGlkYXRlLT53b3JrX3RyZWU7CisJCQlnaXRfd29ya190cmVlX2NmZyA9IHhzdHJkdXAoY2FuZGlkYXRlLT53b3JrX3RyZWUpOwogCQkJaW5zaWRlX3dvcmtfdHJlZSA9IC0xOwogCQl9Ci0JfSBlbHNlIHsKLQkJZnJlZShjYW5kaWRhdGUtPndvcmtfdHJlZSk7CiAJfQogCiAJcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyB2b2lkIGluaXRfcmVwb3NpdG9yeV9mb3JtYXQoc3RydWN0IHJlcG9zaXRvcnlfZm9ybWF0ICpmb3JtYXQpCit7CisJY29uc3Qgc3RydWN0IHJlcG9zaXRvcnlfZm9ybWF0IGZyZXNoID0gUkVQT1NJVE9SWV9GT1JNQVRfSU5JVDsKKworCW1lbWNweShmb3JtYXQsICZmcmVzaCwgc2l6ZW9mKGZyZXNoKSk7Cit9CisKIGludCByZWFkX3JlcG9zaXRvcnlfZm9ybWF0KHN0cnVjdCByZXBvc2l0b3J5X2Zvcm1hdCAqZm9ybWF0LCBjb25zdCBjaGFyICpwYXRoKQogewotCW1lbXNldChmb3JtYXQsIDAsIHNpemVvZigqZm9ybWF0KSk7Ci0JZm9ybWF0LT52ZXJzaW9uID0gLTE7Ci0JZm9ybWF0LT5pc19iYXJlID0gLTE7Ci0JZm9ybWF0LT5oYXNoX2FsZ28gPSBHSVRfSEFTSF9TSEExOwotCXN0cmluZ19saXN0X2luaXQoJmZvcm1hdC0+dW5rbm93bl9leHRlbnNpb25zLCAxKTsKKwljbGVhcl9yZXBvc2l0b3J5X2Zvcm1hdChmb3JtYXQpOwogCWdpdF9jb25maWdfZnJvbV9maWxlKGNoZWNrX3JlcG9fZm9ybWF0LCBwYXRoLCBmb3JtYXQpOworCWlmIChmb3JtYXQtPnZlcnNpb24gPT0gLTEpCisJCWNsZWFyX3JlcG9zaXRvcnlfZm9ybWF0KGZvcm1hdCk7CiAJcmV0dXJuIGZvcm1hdC0+dmVyc2lvbjsKIH0KIAordm9pZCBjbGVhcl9yZXBvc2l0b3J5X2Zvcm1hdChzdHJ1Y3QgcmVwb3NpdG9yeV9mb3JtYXQgKmZvcm1hdCkKK3sKKwlzdHJpbmdfbGlzdF9jbGVhcigmZm9ybWF0LT51bmtub3duX2V4dGVuc2lvbnMsIDApOworCWZyZWUoZm9ybWF0LT53b3JrX3RyZWUpOworCWZyZWUoZm9ybWF0LT5wYXJ0aWFsX2Nsb25lKTsKKwlpbml0X3JlcG9zaXRvcnlfZm9ybWF0KGZvcm1hdCk7Cit9CisKIGludCB2ZXJpZnlfcmVwb3NpdG9yeV9mb3JtYXQoY29uc3Qgc3RydWN0IHJlcG9zaXRvcnlfZm9ybWF0ICpmb3JtYXQsCiAJCQkgICAgIHN0cnVjdCBzdHJidWYgKmVycikKIHsKQEAgLTU4Nyw2ICs2MjksNyBAQAogCXN0cnVjdCBzdGF0IHN0OwogCWludCBmZDsKIAlzc2l6ZV90IGxlbjsKKwlzdGF0aWMgc3RydWN0IHN0cmJ1ZiByZWFscGF0aCA9IFNUUkJVRl9JTklUOwogCiAJaWYgKHN0YXQocGF0aCwgJnN0KSkgewogCQkvKiBORUVEU1dPUks6IGRpc2Nlcm4gYmV0d2VlbiBFTk9FTlQgdnMgb3RoZXIgZXJyb3JzICovCkBAIC02MzcsNyArNjgwLDkgQEAKIAkJZXJyb3JfY29kZSA9IFJFQURfR0lURklMRV9FUlJfTk9UX0FfUkVQTzsKIAkJZ290byBjbGVhbnVwX3JldHVybjsKIAl9Ci0JcGF0aCA9IHJlYWxfcGF0aChkaXIpOworCisJc3RyYnVmX3JlYWxwYXRoKCZyZWFscGF0aCwgZGlyLCAxKTsKKwlwYXRoID0gcmVhbHBhdGguYnVmOwogCiBjbGVhbnVwX3JldHVybjoKIAlpZiAocmV0dXJuX2Vycm9yX2NvZGUpCkBAIC02OTMsNyArNzM4LDcgQEAKIAkJfQogCiAJCS8qICMxOCwgIzI2ICovCi0JCXNldF9naXRfZGlyKGdpdGRpcmVudik7CisJCXNldF9naXRfZGlyKGdpdGRpcmVudiwgMCk7CiAJCWZyZWUoZ2l0ZmlsZSk7CiAJCXJldHVybiBOVUxMOwogCX0KQEAgLTcxNSw3ICs3NjAsNyBAQAogCX0KIAllbHNlIGlmICghZ2l0X2Vudl9ib29sKEdJVF9JTVBMSUNJVF9XT1JLX1RSRUVfRU5WSVJPTk1FTlQsIDEpKSB7CiAJCS8qICMxNmQgKi8KLQkJc2V0X2dpdF9kaXIoZ2l0ZGlyZW52KTsKKwkJc2V0X2dpdF9kaXIoZ2l0ZGlyZW52LCAwKTsKIAkJZnJlZShnaXRmaWxlKTsKIAkJcmV0dXJuIE5VTEw7CiAJfQpAQCAtNzI3LDE0ICs3NzIsMTQgQEAKIAogCS8qIGJvdGggZ2V0X2dpdF93b3JrX3RyZWUoKSBhbmQgY3dkIGFyZSBhbHJlYWR5IG5vcm1hbGl6ZWQgKi8KIAlpZiAoIXN0cmNtcChjd2QtPmJ1Ziwgd29ya3RyZWUpKSB7IC8qIGN3ZCA9PSB3b3JrdHJlZSAqLwotCQlzZXRfZ2l0X2RpcihnaXRkaXJlbnYpOworCQlzZXRfZ2l0X2RpcihnaXRkaXJlbnYsIDApOwogCQlmcmVlKGdpdGZpbGUpOwogCQlyZXR1cm4gTlVMTDsKIAl9CiAKIAlvZmZzZXQgPSBkaXJfaW5zaWRlX29mKGN3ZC0+YnVmLCB3b3JrdHJlZSk7CiAJaWYgKG9mZnNldCA+PSAwKSB7CS8qIGN3ZCBpbnNpZGUgd29ya3RyZWU/ICovCi0JCXNldF9naXRfZGlyKHJlYWxfcGF0aChnaXRkaXJlbnYpKTsKKwkJc2V0X2dpdF9kaXIoZ2l0ZGlyZW52LCAxKTsKIAkJaWYgKGNoZGlyKHdvcmt0cmVlKSkKIAkJCWRpZV9lcnJubyhfKCJjYW5ub3QgY2hkaXIgdG8gJyVzJyIpLCB3b3JrdHJlZSk7CiAJCXN0cmJ1Zl9hZGRjaChjd2QsICcvJyk7CkBAIC03NDMsNyArNzg4LDcgQEAKIAl9CiAKIAkvKiBjd2Qgb3V0c2lkZSB3b3JrdHJlZSAqLwotCXNldF9naXRfZGlyKGdpdGRpcmVudik7CisJc2V0X2dpdF9kaXIoZ2l0ZGlyZW52LCAwKTsKIAlmcmVlKGdpdGZpbGUpOwogCXJldHVybiBOVUxMOwogfQpAQCAtNzcyLDcgKzgxNyw3IEBACiAKIAkvKiAjMTYuMiwgIzE3LjIsICMyMC4yLCAjMjEuMiwgIzI0LCAjMjUsICMyOCwgIzI5IChzZWUgdDE1MTApICovCiAJaWYgKGlzX2JhcmVfcmVwb3NpdG9yeV9jZmcgPiAwKSB7Ci0JCXNldF9naXRfZGlyKG9mZnNldCA9PSBjd2QtPmxlbiA/IGdpdGRpciA6IHJlYWxfcGF0aChnaXRkaXIpKTsKKwkJc2V0X2dpdF9kaXIoZ2l0ZGlyLCAob2Zmc2V0ICE9IGN3ZC0+bGVuKSk7CiAJCWlmIChjaGRpcihjd2QtPmJ1ZikpCiAJCQlkaWVfZXJybm8oXygiY2Fubm90IGNvbWUgYmFjayB0byBjd2QiKSk7CiAJCXJldHVybiBOVUxMOwpAQCAtNzgxLDEwICs4MjYsMTAgQEAKIAkvKiAjMCwgIzEsICM1LCAjOCwgIzksICMxMiwgIzEzICovCiAJc2V0X2dpdF93b3JrX3RyZWUoIi4iKTsKIAlpZiAoc3RyY21wKGdpdGRpciwgREVGQVVMVF9HSVRfRElSX0VOVklST05NRU5UKSkKLQkJc2V0X2dpdF9kaXIoZ2l0ZGlyKTsKKwkJc2V0X2dpdF9kaXIoZ2l0ZGlyLCAwKTsKIAlpbnNpZGVfZ2l0X2RpciA9IDA7CiAJaW5zaWRlX3dvcmtfdHJlZSA9IDE7Ci0JaWYgKG9mZnNldCA9PSBjd2QtPmxlbikKKwlpZiAob2Zmc2V0ID49IGN3ZC0+bGVuKQogCQlyZXR1cm4gTlVMTDsKIAogCS8qIE1ha2UgIm9mZnNldCIgcG9pbnQgcGFzdCB0aGUgJy8nIChhbHJlYWR5IHRoZSBjYXNlIGZvciByb290IGRpcnMpICovCkBAIC04MjQsMjAgKzg2OSwxMCBAQAogCQkJZGllX2Vycm5vKF8oImNhbm5vdCBjb21lIGJhY2sgdG8gY3dkIikpOwogCQlyb290X2xlbiA9IG9mZnNldF8xc3RfY29tcG9uZW50KGN3ZC0+YnVmKTsKIAkJc3RyYnVmX3NldGxlbihjd2QsIG9mZnNldCA+IHJvb3RfbGVuID8gb2Zmc2V0IDogcm9vdF9sZW4pOwotCQlzZXRfZ2l0X2Rpcihjd2QtPmJ1Zik7CisJCXNldF9naXRfZGlyKGN3ZC0+YnVmLCAwKTsKIAl9CiAJZWxzZQotCQlzZXRfZ2l0X2RpcigiLiIpOwotCXJldHVybiBOVUxMOwotfQotCi1zdGF0aWMgY29uc3QgY2hhciAqc2V0dXBfbm9uZ2l0KGNvbnN0IGNoYXIgKmN3ZCwgaW50ICpub25naXRfb2spCi17Ci0JaWYgKCFub25naXRfb2spCi0JCWRpZShfKCJub3QgYSBnaXQgcmVwb3NpdG9yeSAob3IgYW55IG9mIHRoZSBwYXJlbnQgZGlyZWN0b3JpZXMpOiAlcyIpLCBERUZBVUxUX0dJVF9ESVJfRU5WSVJPTk1FTlQpOwotCWlmIChjaGRpcihjd2QpKQotCQlkaWVfZXJybm8oXygiY2Fubm90IGNvbWUgYmFjayB0byBjd2QiKSk7Ci0JKm5vbmdpdF9vayA9IDE7CisJCXNldF9naXRfZGlyKCIuIiwgMCk7CiAJcmV0dXJuIE5VTEw7CiB9CiAKQEAgLTg1NSw3ICs4OTAsNyBAQAogCiAvKgogICogQSAic3RyaW5nX2xpc3RfZWFjaF9mdW5jX3QiIGZ1bmN0aW9uIHRoYXQgY2Fub25pY2FsaXplcyBhbiBlbnRyeQotICogZnJvbSBHSVRfQ0VJTElOR19ESVJFQ1RPUklFUyB1c2luZyByZWFsX3BhdGhfaWZfdmFsaWQoKSwgb3IKKyAqIGZyb20gR0lUX0NFSUxJTkdfRElSRUNUT1JJRVMgdXNpbmcgcmVhbF9wYXRoZHVwKCksIG9yCiAgKiBkaXNjYXJkcyBpdCBpZiB1bnVzYWJsZS4gIFRoZSBwcmVzZW5jZSBvZiBhbiBlbXB0eSBlbnRyeSBpbgogICogR0lUX0NFSUxJTkdfRElSRUNUT1JJRVMgdHVybnMgb2ZmIGNhbm9uaWNhbGl6YXRpb24gZm9yIGFsbAogICogc3Vic2VxdWVudCBlbnRyaWVzLgpAQCAtOTE2LDcgKzk1MSw3IEBACiAJY29uc3QgY2hhciAqZW52X2NlaWxpbmdfZGlycyA9IGdldGVudihDRUlMSU5HX0RJUkVDVE9SSUVTX0VOVklST05NRU5UKTsKIAlzdHJ1Y3Qgc3RyaW5nX2xpc3QgY2VpbGluZ19kaXJzID0gU1RSSU5HX0xJU1RfSU5JVF9EVVA7CiAJY29uc3QgY2hhciAqZ2l0ZGlyZW52OwotCWludCBjZWlsX29mZnNldCA9IC0xLCBtaW5fb2Zmc2V0ID0gaGFzX2Rvc19kcml2ZV9wcmVmaXgoZGlyLT5idWYpID8gMyA6IDE7CisJaW50IGNlaWxfb2Zmc2V0ID0gLTEsIG1pbl9vZmZzZXQgPSBvZmZzZXRfMXN0X2NvbXBvbmVudChkaXItPmJ1Zik7CiAJZGV2X3QgY3VycmVudF9kZXZpY2UgPSAwOwogCWludCBvbmVfZmlsZXN5c3RlbSA9IDE7CiAKQEAgLTk0NCw2ICs5NzksMTIgQEAKIAlpZiAoY2VpbF9vZmZzZXQgPCAwKQogCQljZWlsX29mZnNldCA9IG1pbl9vZmZzZXQgLSAyOwogCisJaWYgKG1pbl9vZmZzZXQgJiYgbWluX29mZnNldCA9PSBkaXItPmxlbiAmJgorCSAgICAhaXNfZGlyX3NlcChkaXItPmJ1ZlttaW5fb2Zmc2V0IC0gMV0pKSB7CisJCXN0cmJ1Zl9hZGRjaChkaXIsICcvJyk7CisJCW1pbl9vZmZzZXQrKzsKKwl9CisKIAkvKgogCSAqIFRlc3QgaW4gdGhlIGZvbGxvd2luZyBvcmRlciAocmVsYXRpdmUgdG8gdGhlIGRpcik6CiAJICogLSAuZ2l0IChmaWxlIGNvbnRhaW5pbmcgImdpdGRpcjogPHBhdGg+IikKQEAgLTEwMDcsNyArMTA0OCw3IEBACiAJc3RydWN0IHN0cmJ1ZiBkaXIgPSBTVFJCVUZfSU5JVCwgZXJyID0gU1RSQlVGX0lOSVQ7CiAJc2l6ZV90IGdpdGRpcl9vZmZzZXQgPSBnaXRkaXItPmxlbiwgY3dkX2xlbjsKIAlzaXplX3QgY29tbW9uZGlyX29mZnNldCA9IGNvbW1vbmRpci0+bGVuOwotCXN0cnVjdCByZXBvc2l0b3J5X2Zvcm1hdCBjYW5kaWRhdGU7CisJc3RydWN0IHJlcG9zaXRvcnlfZm9ybWF0IGNhbmRpZGF0ZSA9IFJFUE9TSVRPUllfRk9STUFUX0lOSVQ7CiAKIAlpZiAoc3RyYnVmX2dldGN3ZCgmZGlyKSkKIAkJcmV0dXJuIC0xOwpAQCAtMTA0NCw5ICsxMDg1LDExIEBACiAJCXN0cmJ1Zl9yZWxlYXNlKCZlcnIpOwogCQlzdHJidWZfc2V0bGVuKGNvbW1vbmRpciwgY29tbW9uZGlyX29mZnNldCk7CiAJCXN0cmJ1Zl9zZXRsZW4oZ2l0ZGlyLCBnaXRkaXJfb2Zmc2V0KTsKKwkJY2xlYXJfcmVwb3NpdG9yeV9mb3JtYXQoJmNhbmRpZGF0ZSk7CiAJCXJldHVybiAtMTsKIAl9CiAKKwljbGVhcl9yZXBvc2l0b3J5X2Zvcm1hdCgmY2FuZGlkYXRlKTsKIAlyZXR1cm4gMDsKIH0KIApAQCAtMTA1NCw4ICsxMDk3LDggQEAKIHsKIAlzdGF0aWMgc3RydWN0IHN0cmJ1ZiBjd2QgPSBTVFJCVUZfSU5JVDsKIAlzdHJ1Y3Qgc3RyYnVmIGRpciA9IFNUUkJVRl9JTklULCBnaXRkaXIgPSBTVFJCVUZfSU5JVDsKLQljb25zdCBjaGFyICpwcmVmaXg7Ci0Jc3RydWN0IHJlcG9zaXRvcnlfZm9ybWF0IHJlcG9fZm10OworCWNvbnN0IGNoYXIgKnByZWZpeCA9IE5VTEw7CisJc3RydWN0IHJlcG9zaXRvcnlfZm9ybWF0IHJlcG9fZm10ID0gUkVQT1NJVE9SWV9GT1JNQVRfSU5JVDsKIAogCS8qCiAJICogV2UgbWF5IGhhdmUgcmVhZCBhbiBpbmNvbXBsZXRlIGNvbmZpZ3VyYXRpb24gYmVmb3JlCkBAIC0xMDc5LDkgKzExMjIsNiBAQAogCXN0cmJ1Zl9hZGRidWYoJmRpciwgJmN3ZCk7CiAKIAlzd2l0Y2ggKHNldHVwX2dpdF9kaXJlY3RvcnlfZ2VudGx5XzEoJmRpciwgJmdpdGRpciwgMSkpIHsKLQljYXNlIEdJVF9ESVJfTk9ORToKLQkJcHJlZml4ID0gTlVMTDsKLQkJYnJlYWs7CiAJY2FzZSBHSVRfRElSX0VYUExJQ0lUOgogCQlwcmVmaXggPSBzZXR1cF9leHBsaWNpdF9naXRfZGlyKGdpdGRpci5idWYsICZjd2QsICZyZXBvX2ZtdCwgbm9uZ2l0X29rKTsKIAkJYnJlYWs7CkBAIC0xMDk3LDI5ICsxMTM3LDUxIEBACiAJCXByZWZpeCA9IHNldHVwX2JhcmVfZ2l0X2RpcigmY3dkLCBkaXIubGVuLCAmcmVwb19mbXQsIG5vbmdpdF9vayk7CiAJCWJyZWFrOwogCWNhc2UgR0lUX0RJUl9ISVRfQ0VJTElORzoKLQkJcHJlZml4ID0gc2V0dXBfbm9uZ2l0KGN3ZC5idWYsIG5vbmdpdF9vayk7CisJCWlmICghbm9uZ2l0X29rKQorCQkJZGllKF8oIm5vdCBhIGdpdCByZXBvc2l0b3J5IChvciBhbnkgb2YgdGhlIHBhcmVudCBkaXJlY3Rvcmllcyk6ICVzIiksCisJCQkgICAgREVGQVVMVF9HSVRfRElSX0VOVklST05NRU5UKTsKKwkJKm5vbmdpdF9vayA9IDE7CiAJCWJyZWFrOwogCWNhc2UgR0lUX0RJUl9ISVRfTU9VTlRfUE9JTlQ6Ci0JCWlmIChub25naXRfb2spIHsKLQkJCSpub25naXRfb2sgPSAxOwotCQkJc3RyYnVmX3JlbGVhc2UoJmN3ZCk7Ci0JCQlzdHJidWZfcmVsZWFzZSgmZGlyKTsKLQkJCXJldHVybiBOVUxMOwotCQl9Ci0JCWRpZShfKCJub3QgYSBnaXQgcmVwb3NpdG9yeSAob3IgYW55IHBhcmVudCB1cCB0byBtb3VudCBwb2ludCAlcylcbiIKLQkJICAgICAgIlN0b3BwaW5nIGF0IGZpbGVzeXN0ZW0gYm91bmRhcnkgKEdJVF9ESVNDT1ZFUllfQUNST1NTX0ZJTEVTWVNURU0gbm90IHNldCkuIiksCi0JCSAgICBkaXIuYnVmKTsKKwkJaWYgKCFub25naXRfb2spCisJCQlkaWUoXygibm90IGEgZ2l0IHJlcG9zaXRvcnkgKG9yIGFueSBwYXJlbnQgdXAgdG8gbW91bnQgcG9pbnQgJXMpXG4iCisJCQkgICAgICAiU3RvcHBpbmcgYXQgZmlsZXN5c3RlbSBib3VuZGFyeSAoR0lUX0RJU0NPVkVSWV9BQ1JPU1NfRklMRVNZU1RFTSBub3Qgc2V0KS4iKSwKKwkJCSAgICBkaXIuYnVmKTsKKwkJKm5vbmdpdF9vayA9IDE7CisJCWJyZWFrOworCWNhc2UgR0lUX0RJUl9OT05FOgorCQkvKgorCQkgKiBBcyBhIHNhZmVndWFyZCBhZ2FpbnN0IHNldHVwX2dpdF9kaXJlY3RvcnlfZ2VudGx5XzEgcmV0dXJuaW5nCisJCSAqIHRoaXMgdmFsdWUsIGZhbGx0aHJvdWdoIHRvIEJVRy4gT3RoZXJ3aXNlIGl0IGlzIHBvc3NpYmxlIHRvCisJCSAqIHNldCBzdGFydHVwX2luZm8tPmhhdmVfcmVwb3NpdG9yeSB0byAxIHdoZW4gd2UgZGlkIG5vdGhpbmcgdG8KKwkJICogZmluZCBhIHJlcG9zaXRvcnkuCisJCSAqLwogCWRlZmF1bHQ6CiAJCUJVRygidW5oYW5kbGVkIHNldHVwX2dpdF9kaXJlY3RvcnlfMSgpIHJlc3VsdCIpOwogCX0KIAotCWlmIChwcmVmaXgpCi0JCXNldGVudihHSVRfUFJFRklYX0VOVklST05NRU5ULCBwcmVmaXgsIDEpOwotCWVsc2UKKwkvKgorCSAqIEF0IHRoaXMgcG9pbnQsIG5vbmdpdF9vayBpcyBzdGFibGUuIElmIGl0IGlzIG5vbi1OVUxMIGFuZCBwb2ludHMKKwkgKiB0byBhIG5vbi16ZXJvIHZhbHVlLCB0aGVuIHRoaXMgbWVhbnMgdGhhdCB3ZSBoYXZlbid0IGZvdW5kIGEKKwkgKiByZXBvc2l0b3J5IGFuZCB0aGF0IHRoZSBjYWxsZXIgZXhwZWN0cyBzdGFydHVwX2luZm8gdG8gcmVmbGVjdAorCSAqIHRoaXMuCisJICoKKwkgKiBSZWdhcmRsZXNzIG9mIHRoZSBzdGF0ZSBvZiBub25naXRfb2ssIHN0YXJ0dXBfaW5mby0+cHJlZml4IGFuZAorCSAqIHRoZSBHSVRfUFJFRklYIGVudmlyb25tZW50IHZhcmlhYmxlIG11c3QgYWx3YXlzIG1hdGNoLiBGb3IgZGV0YWlscworCSAqIHNlZSBEb2N1bWVudGF0aW9uL2NvbmZpZy9hbGlhcy50eHQuCisJICovCisJaWYgKG5vbmdpdF9vayAmJiAqbm9uZ2l0X29rKSB7CisJCXN0YXJ0dXBfaW5mby0+aGF2ZV9yZXBvc2l0b3J5ID0gMDsKKwkJc3RhcnR1cF9pbmZvLT5wcmVmaXggPSBOVUxMOwogCQlzZXRlbnYoR0lUX1BSRUZJWF9FTlZJUk9OTUVOVCwgIiIsIDEpOwotCi0Jc3RhcnR1cF9pbmZvLT5oYXZlX3JlcG9zaXRvcnkgPSAhbm9uZ2l0X29rIHx8ICEqbm9uZ2l0X29rOwotCXN0YXJ0dXBfaW5mby0+cHJlZml4ID0gcHJlZml4OworCX0gZWxzZSB7CisJCXN0YXJ0dXBfaW5mby0+aGF2ZV9yZXBvc2l0b3J5ID0gMTsKKwkJc3RhcnR1cF9pbmZvLT5wcmVmaXggPSBwcmVmaXg7CisJCWlmIChwcmVmaXgpCisJCQlzZXRlbnYoR0lUX1BSRUZJWF9FTlZJUk9OTUVOVCwgcHJlZml4LCAxKTsKKwkJZWxzZQorCQkJc2V0ZW52KEdJVF9QUkVGSVhfRU5WSVJPTk1FTlQsICIiLCAxKTsKKwl9CiAKIAkvKgogCSAqIE5vdCBhbGwgcGF0aHMgdGhyb3VnaCB0aGUgc2V0dXAgY29kZSB3aWxsIGNhbGwgJ3NldF9naXRfZGlyKCknICh3aGljaApAQCAtMTEzMiw3ICsxMTk0LDEwIEBACiAJICogdGhlIHVzZXIgaGFzIHNldCBHSVRfRElSLiAgSXQgbWF5IGJlIGJlbmVmaWNpYWwgdG8gZGlzYWxsb3cgYm9ndXMKIAkgKiBHSVRfRElSIHZhbHVlcyBhdCBzb21lIHBvaW50IGluIHRoZSBmdXR1cmUuCiAJICovCi0JaWYgKHN0YXJ0dXBfaW5mby0+aGF2ZV9yZXBvc2l0b3J5IHx8IGdldGVudihHSVRfRElSX0VOVklST05NRU5UKSkgeworCWlmICgvKiBHSVRfRElSX0VYUExJQ0lULCBHSVRfRElSX0RJU0NPVkVSRUQsIEdJVF9ESVJfQkFSRSAqLworCSAgICBzdGFydHVwX2luZm8tPmhhdmVfcmVwb3NpdG9yeSB8fAorCSAgICAvKiBHSVRfRElSX0VYUExJQ0lUICovCisJICAgIGdldGVudihHSVRfRElSX0VOVklST05NRU5UKSkgewogCQlpZiAoIXRoZV9yZXBvc2l0b3J5LT5naXRkaXIpIHsKIAkJCWNvbnN0IGNoYXIgKmdpdGRpciA9IGdldGVudihHSVRfRElSX0VOVklST05NRU5UKTsKIAkJCWlmICghZ2l0ZGlyKQpAQCAtMTE0NSw2ICsxMjEwLDcgQEAKIAogCXN0cmJ1Zl9yZWxlYXNlKCZkaXIpOwogCXN0cmJ1Zl9yZWxlYXNlKCZnaXRkaXIpOworCWNsZWFyX3JlcG9zaXRvcnlfZm9ybWF0KCZyZXBvX2ZtdCk7CiAKIAlyZXR1cm4gcHJlZml4OwogfQpAQCAtMTIwMiw5ICsxMjY4LDEwIEBACiAKIHZvaWQgY2hlY2tfcmVwb3NpdG9yeV9mb3JtYXQodm9pZCkKIHsKLQlzdHJ1Y3QgcmVwb3NpdG9yeV9mb3JtYXQgcmVwb19mbXQ7CisJc3RydWN0IHJlcG9zaXRvcnlfZm9ybWF0IHJlcG9fZm10ID0gUkVQT1NJVE9SWV9GT1JNQVRfSU5JVDsKIAljaGVja19yZXBvc2l0b3J5X2Zvcm1hdF9nZW50bHkoZ2V0X2dpdF9kaXIoKSwgJnJlcG9fZm10LCBOVUxMKTsKIAlzdGFydHVwX2luZm8tPmhhdmVfcmVwb3NpdG9yeSA9IDE7CisJY2xlYXJfcmVwb3NpdG9yeV9mb3JtYXQoJnJlcG9fZm10KTsKIH0KIAogLyoKZGlmZiAtLWdpdCBhL3NoLWkxOG4tLWVudnN1YnN0LmMgYi9zaC1pMThuLS1lbnZzdWJzdC5jCmluZGV4IDA5YzZiNDQuLmU3NDMwYjkgMTAwNjQ0Ci0tLSBhL3NoLWkxOG4tLWVudnN1YnN0LmMKKysrIGIvc2gtaTE4bi0tZW52c3Vic3QuYwpAQCAtMTQsNiArMTQsNyBAQAogICovCiAKICNpbmNsdWRlICJnaXQtY29tcGF0LXV0aWwuaCIKKyNpbmNsdWRlICJ0cmFjZTIuaCIKIAogLyogU3Vic3RpdHV0aW9uIG9mIGVudmlyb25tZW50IHZhcmlhYmxlcyBpbiBzaGVsbCBmb3JtYXQgc3RyaW5ncy4KICAgIENvcHlyaWdodCAoQykgMjAwMy0yMDA3IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpAQCAtNjcsNiArNjgsOCBAQAogICAvKiBEZWZhdWx0IHZhbHVlcyBmb3IgY29tbWFuZCBsaW5lIG9wdGlvbnMuICAqLwogICAvKiB1bnNpZ25lZCBzaG9ydCBpbnQgc2hvd192YXJpYWJsZXMgPSAwOyAqLwogCisgIHRyYWNlMl9jbWRfbmFtZSgic2gtaTE4bi0tZW52c3Vic3QiKTsKKwogICBzd2l0Y2ggKGFyZ2MpCiAJewogCWNhc2UgMToKQEAgLTI0Niw3ICsyNDksNyBAQAogCXsKIAkgIC8qIEhlcmUgd2Uga25vdyB0aGF0IGlmIHMgaXMgaW4gdGhlIGxpc3QsIGl0IGlzIGF0IGFuIGluZGV4IGoKIAkgICAgIHdpdGggajEgPD0gaiA8IGoyLiAgKi8KLQkgIHNpemVfdCBqID0gKGoxICsgajIpID4+IDE7CisJICBzaXplX3QgaiA9IGoxICsgKChqMiAtIGoxKSA+PiAxKTsKIAkgIGludCByZXN1bHQgPSBzdHJjbXAgKHNscC0+aXRlbVtqXSwgcyk7CiAKIAkgIGlmIChyZXN1bHQgPiAwKQpkaWZmIC0tZ2l0IGEvc2hhMS1hcnJheS5jIGIvc2hhMS1hcnJheS5jCmluZGV4IGI5NGUwZWMuLjNlZWFkZmUgMTAwNjQ0Ci0tLSBhL3NoYTEtYXJyYXkuYworKysgYi9zaGExLWFycmF5LmMKQEAgLTQ4LDcgKzQ4LDcgQEAKIHsKIAlpbnQgaTsKIAotCS8qIE5vIG9pZF9hcnJheV9zb3J0KCkgaGVyZSEgU2VlIHRoZSBhcGktb2lkLWFycmF5LnR4dCBkb2NzISAqLworCS8qIE5vIG9pZF9hcnJheV9zb3J0KCkgaGVyZSEgU2VlIHNoYTEtYXJyYXkuaCAqLwogCiAJZm9yIChpID0gMDsgaSA8IGFycmF5LT5ucjsgaSsrKSB7CiAJCWludCByZXQgPSBmbihhcnJheS0+b2lkICsgaSwgZGF0YSk7CkBAIC03NywzICs3NywyMCBAQAogCX0KIAlyZXR1cm4gMDsKIH0KKwordm9pZCBvaWRfYXJyYXlfZmlsdGVyKHN0cnVjdCBvaWRfYXJyYXkgKmFycmF5LAorCQkgICAgICBmb3JfZWFjaF9vaWRfZm4gd2FudCwKKwkJICAgICAgdm9pZCAqY2JfZGF0YSkKK3sKKwl1bnNpZ25lZCBuciA9IGFycmF5LT5uciwgc3JjLCBkc3Q7CisJc3RydWN0IG9iamVjdF9pZCAqb2lkcyA9IGFycmF5LT5vaWQ7CisKKwlmb3IgKHNyYyA9IGRzdCA9IDA7IHNyYyA8IG5yOyBzcmMrKykgeworCQlpZiAod2FudCgmb2lkc1tzcmNdLCBjYl9kYXRhKSkgeworCQkJaWYgKHNyYyAhPSBkc3QpCisJCQkJb2lkY3B5KCZvaWRzW2RzdF0sICZvaWRzW3NyY10pOworCQkJZHN0Kys7CisJCX0KKwl9CisJYXJyYXktPm5yID0gZHN0OworfQpkaWZmIC0tZ2l0IGEvc2hhMS1hcnJheS5oIGIvc2hhMS1hcnJheS5oCmluZGV4IDIzMmJmOTUuLmRjMWJjYTkgMTAwNjQ0Ci0tLSBhL3NoYTEtYXJyYXkuaAorKysgYi9zaGExLWFycmF5LmgKQEAgLTEsNiArMSw1MiBAQAogI2lmbmRlZiBTSEExX0FSUkFZX0gKICNkZWZpbmUgU0hBMV9BUlJBWV9ICiAKKy8qKgorICogVGhlIEFQSSBwcm92aWRlcyBzdG9yYWdlIGFuZCBtYW5pcHVsYXRpb24gb2Ygc2V0cyBvZiBvYmplY3QgaWRlbnRpZmllcnMuCisgKiBUaGUgZW1waGFzaXMgaXMgb24gc3RvcmFnZSBhbmQgcHJvY2Vzc2luZyBlZmZpY2llbmN5LCBtYWtpbmcgdGhlbSBzdWl0YWJsZQorICogZm9yIGxhcmdlIGxpc3RzLiBOb3RlIHRoYXQgdGhlIG9yZGVyaW5nIG9mIGl0ZW1zIGlzIG5vdCBwcmVzZXJ2ZWQgb3ZlciBzb21lCisgKiBvcGVyYXRpb25zLgorICoKKyAqIEV4YW1wbGVzCisgKiAtLS0tLS0tLQorICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqIGludCBwcmludF9jYWxsYmFjayhjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisgKiAJCSAgICB2b2lkICpkYXRhKQorICogeworICogCXByaW50ZigiJXNcbiIsIG9pZF90b19oZXgob2lkKSk7CisgKiAJcmV0dXJuIDA7IC8vIGFsd2F5cyBjb250aW51ZQorICogfQorICoKKyAqIHZvaWQgc29tZV9mdW5jKHZvaWQpCisgKiB7CisgKiAgICAgc3RydWN0IHNoYTFfYXJyYXkgaGFzaGVzID0gT0lEX0FSUkFZX0lOSVQ7CisgKiAgICAgc3RydWN0IG9iamVjdF9pZCBvaWQ7CisgKgorICogICAgIC8vIFJlYWQgb2JqZWN0cyBpbnRvIG91ciBzZXQKKyAqICAgICB3aGlsZSAocmVhZF9vYmplY3RfZnJvbV9zdGRpbihvaWQuaGFzaCkpCisgKiAgICAgICAgIG9pZF9hcnJheV9hcHBlbmQoJmhhc2hlcywgJm9pZCk7CisgKgorICogICAgIC8vIENoZWNrIGlmIHNvbWUgb2JqZWN0cyBhcmUgaW4gb3VyIHNldAorICogICAgIHdoaWxlIChyZWFkX29iamVjdF9mcm9tX3N0ZGluKG9pZC5oYXNoKSkgeworICogICAgICAgICBpZiAob2lkX2FycmF5X2xvb2t1cCgmaGFzaGVzLCAmb2lkKSA+PSAwKQorICogICAgICAgICAgICAgcHJpbnRmKCJpdCdzIGluIHRoZXJlIVxuIik7CisgKgorICogICAgICAgICAgLy8gUHJpbnQgdGhlIHVuaXF1ZSBzZXQgb2Ygb2JqZWN0cy4gV2UgY291bGQgYWxzbyBoYXZlCisgKiAgICAgICAgICAvLyBhdm9pZGVkIGFkZGluZyBkdXBsaWNhdGUgb2JqZWN0cyBpbiB0aGUgZmlyc3QgcGxhY2UsCisgKiAgICAgICAgICAvLyBidXQgd2Ugd291bGQgZW5kIHVwIHJlLXNvcnRpbmcgdGhlIGFycmF5IHJlcGVhdGVkbHkuCisgKiAgICAgICAgICAvLyBJbnN0ZWFkLCB0aGlzIHdpbGwgc29ydCBvbmNlIGFuZCB0aGVuIHNraXAgZHVwbGljYXRlcworICogICAgICAgICAgLy8gaW4gbGluZWFyIHRpbWUuCisgKgorICogICAgICAgICBvaWRfYXJyYXlfZm9yX2VhY2hfdW5pcXVlKCZoYXNoZXMsIHByaW50X2NhbGxiYWNrLCBOVUxMKTsKKyAqICAgICB9CisgKi8KKworLyoqCisgKiBBIHNpbmdsZSBhcnJheSBvZiBvYmplY3QgSURzLiBUaGlzIHNob3VsZCBiZSBpbml0aWFsaXplZCBieSBhc3NpZ25tZW50IGZyb20KKyAqIGBPSURfQVJSQVlfSU5JVGAuIFRoZSBgb2lkYCBtZW1iZXIgY29udGFpbnMgdGhlIGFjdHVhbCBkYXRhLiBUaGUgYG5yYCBtZW1iZXIKKyAqIGNvbnRhaW5zIHRoZSBudW1iZXIgb2YgaXRlbXMgaW4gdGhlIHNldC4gVGhlIGBhbGxvY2AgYW5kIGBzb3J0ZWRgIG1lbWJlcnMKKyAqIGFyZSB1c2VkIGludGVybmFsbHksIGFuZCBzaG91bGQgbm90IGJlIG5lZWRlZCBieSBBUEkgY2FsbGVycy4KKyAqLwogc3RydWN0IG9pZF9hcnJheSB7CiAJc3RydWN0IG9iamVjdF9pZCAqb2lkOwogCWludCBucjsKQEAgLTEwLDE3ICs1Niw1NCBAQAogCiAjZGVmaW5lIE9JRF9BUlJBWV9JTklUIHsgTlVMTCwgMCwgMCwgMCB9CiAKKy8qKgorICogQWRkIGFuIGl0ZW0gdG8gdGhlIHNldC4gVGhlIG9iamVjdCBJRCB3aWxsIGJlIHBsYWNlZCBhdCB0aGUgZW5kIG9mIHRoZSBhcnJheQorICogKGJ1dCBub3RlIHRoYXQgc29tZSBvcGVyYXRpb25zIGJlbG93IG1heSBsb3NlIHRoaXMgb3JkZXJpbmcpLgorICovCiB2b2lkIG9pZF9hcnJheV9hcHBlbmQoc3RydWN0IG9pZF9hcnJheSAqYXJyYXksIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CisKKy8qKgorICogUGVyZm9ybSBhIGJpbmFyeSBzZWFyY2ggb2YgdGhlIGFycmF5IGZvciBhIHNwZWNpZmljIG9iamVjdCBJRC4gSWYgZm91bmQsCisgKiByZXR1cm5zIHRoZSBvZmZzZXQgKGluIG51bWJlciBvZiBlbGVtZW50cykgb2YgdGhlIG9iamVjdCBJRC4gSWYgbm90IGZvdW5kLAorICogcmV0dXJucyBhIG5lZ2F0aXZlIGludGVnZXIuIElmIHRoZSBhcnJheSBpcyBub3Qgc29ydGVkLCB0aGlzIGZ1bmN0aW9uIGhhcworICogdGhlIHNpZGUgZWZmZWN0IG9mIHNvcnRpbmcgaXQuCisgKi8KIGludCBvaWRfYXJyYXlfbG9va3VwKHN0cnVjdCBvaWRfYXJyYXkgKmFycmF5LCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpOworCisvKioKKyAqIEZyZWUgYWxsIG1lbW9yeSBhc3NvY2lhdGVkIHdpdGggdGhlIGFycmF5IGFuZCByZXR1cm4gaXQgdG8gdGhlIGluaXRpYWwsCisgKiBlbXB0eSBzdGF0ZS4KKyAqLwogdm9pZCBvaWRfYXJyYXlfY2xlYXIoc3RydWN0IG9pZF9hcnJheSAqYXJyYXkpOwogCiB0eXBlZGVmIGludCAoKmZvcl9lYWNoX29pZF9mbikoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAogCQkJICAgICAgIHZvaWQgKmRhdGEpOworLyoqCisgKiBJdGVyYXRlIG92ZXIgZWFjaCBlbGVtZW50IG9mIHRoZSBsaXN0LCBleGVjdXRpbmcgdGhlIGNhbGxiYWNrIGZ1bmN0aW9uIGZvcgorICogZWFjaCBvbmUuIERvZXMgbm90IHNvcnQgdGhlIGxpc3QsIHNvIGFueSBjdXN0b20gaGFzaCBvcmRlciBpcyByZXRhaW5lZC4KKyAqIElmIHRoZSBjYWxsYmFjayByZXR1cm5zIGEgbm9uLXplcm8gdmFsdWUsIHRoZSBpdGVyYXRpb24gZW5kcyBpbW1lZGlhdGVseQorICogYW5kIHRoZSBjYWxsYmFjaydzIHJldHVybiBpcyBwcm9wYWdhdGVkOyBvdGhlcndpc2UsIDAgaXMgcmV0dXJuZWQuCisgKi8KIGludCBvaWRfYXJyYXlfZm9yX2VhY2goc3RydWN0IG9pZF9hcnJheSAqYXJyYXksCiAJCSAgICAgICBmb3JfZWFjaF9vaWRfZm4gZm4sCiAJCSAgICAgICB2b2lkICpkYXRhKTsKKworLyoqCisgKiBJdGVyYXRlIG92ZXIgZWFjaCB1bmlxdWUgZWxlbWVudCBvZiB0aGUgbGlzdCBpbiBzb3J0ZWQgb3JkZXIsIGJ1dCBvdGhlcndpc2UKKyAqIGJlaGF2ZSBsaWtlIGBvaWRfYXJyYXlfZm9yX2VhY2hgLiBJZiB0aGUgYXJyYXkgaXMgbm90IHNvcnRlZCwgdGhpcyBmdW5jdGlvbgorICogaGFzIHRoZSBzaWRlIGVmZmVjdCBvZiBzb3J0aW5nIGl0LgorICovCiBpbnQgb2lkX2FycmF5X2Zvcl9lYWNoX3VuaXF1ZShzdHJ1Y3Qgb2lkX2FycmF5ICphcnJheSwKIAkJCSAgICAgIGZvcl9lYWNoX29pZF9mbiBmbiwKIAkJCSAgICAgIHZvaWQgKmRhdGEpOwogCisvKioKKyAqIEFwcGx5IHRoZSBjYWxsYmFjayBmdW5jdGlvbiBgd2FudGAgdG8gZWFjaCBlbnRyeSBpbiB0aGUgYXJyYXksIHJldGFpbmluZworICogb25seSB0aGUgZW50cmllcyBmb3Igd2hpY2ggdGhlIGZ1bmN0aW9uIHJldHVybnMgdHJ1ZS4gUHJlc2VydmUgdGhlIG9yZGVyCisgKiBvZiB0aGUgZW50cmllcyB0aGF0IGFyZSByZXRhaW5lZC4KKyAqLwordm9pZCBvaWRfYXJyYXlfZmlsdGVyKHN0cnVjdCBvaWRfYXJyYXkgKmFycmF5LAorCQkgICAgICBmb3JfZWFjaF9vaWRfZm4gd2FudCwKKwkJICAgICAgdm9pZCAqY2JkYXRhKTsKKwogI2VuZGlmIC8qIFNIQTFfQVJSQVlfSCAqLwpkaWZmIC0tZ2l0IGEvc2hhMS1maWxlLmMgYi9zaGExLWZpbGUuYwppbmRleCA1YmQxMWM4Li5mMmIyNDY1IDEwMDY0NAotLS0gYS9zaGExLWZpbGUuYworKysgYi9zaGExLWZpbGUuYwpAQCAtMzAsOCArMzAsOCBAQAogI2luY2x1ZGUgIm1lcmdlc29ydC5oIgogI2luY2x1ZGUgInF1b3RlLmgiCiAjaW5jbHVkZSAicGFja2ZpbGUuaCIKLSNpbmNsdWRlICJmZXRjaC1vYmplY3QuaCIKICNpbmNsdWRlICJvYmplY3Qtc3RvcmUuaCIKKyNpbmNsdWRlICJwcm9taXNvci1yZW1vdGUuaCIKIAogLyogVGhlIG1heGltdW0gc2l6ZSBmb3IgYW4gb2JqZWN0IGhlYWRlci4gKi8KICNkZWZpbmUgTUFYX0hFQURFUl9MRU4gMzIKQEAgLTQwLDEyICs0MCwyMSBAQAogI2RlZmluZSBFTVBUWV9UUkVFX1NIQTFfQklOX0xJVEVSQUwgXAogCSAiXHg0Ylx4ODJceDVkXHhjNlx4NDJceGNiXHg2ZVx4YjlceGEwXHg2MCIgXAogCSAiXHhlNVx4NGJceGY4XHhkNlx4OTJceDg4XHhmYlx4ZWVceDQ5XHgwNCIKKyNkZWZpbmUgRU1QVFlfVFJFRV9TSEEyNTZfQklOX0xJVEVSQUwgXAorCSJceDZlXHhmMVx4OWJceDQxXHgyMlx4NWNceDUzXHg2OVx4ZjFceGMxIiBcCisJIlx4MDRceGQ0XHg1ZFx4OGRceDg1XHhlZlx4YTlceGIwXHg1N1x4YjUiIFwKKwkiXHgzYlx4MTRceGI0XHhiOVx4YjlceDM5XHhkZFx4NzRceGRlXHhjYyIgXAorCSJceDUzXHgyMSIKIAogI2RlZmluZSBFTVBUWV9CTE9CX1NIQTFfQklOX0xJVEVSQUwgXAogCSJceGU2XHg5ZFx4ZTJceDliXHhiMlx4ZDFceGQ2XHg0M1x4NGJceDhiIiBcCiAJIlx4MjlceGFlXHg3N1x4NWFceGQ4XHhjMlx4ZTRceDhjXHg1M1x4OTEiCisjZGVmaW5lIEVNUFRZX0JMT0JfU0hBMjU2X0JJTl9MSVRFUkFMIFwKKwkiXHg0N1x4M2FceDBmXHg0Y1x4M2JceGU4XHhhOVx4MzZceDgxXHhhMiIgXAorCSJceDY3XHhlM1x4YjFceGU5XHhhN1x4ZGNceGRhXHgxMVx4ODVceDQzIiBcCisJIlx4NmZceGUxXHg0MVx4ZjdceDc0XHg5MVx4MjBceGEzXHgwM1x4NzIiIFwKKwkiXHgxOFx4MTMiCiAKLWNvbnN0IHVuc2lnbmVkIGNoYXIgbnVsbF9zaGExW0dJVF9NQVhfUkFXU1pdOwogY29uc3Qgc3RydWN0IG9iamVjdF9pZCBudWxsX29pZDsKIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkIGVtcHR5X3RyZWVfb2lkID0gewogCUVNUFRZX1RSRUVfU0hBMV9CSU5fTElURVJBTApAQCAtNTMsNiArNjIsMTIgQEAKIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkIGVtcHR5X2Jsb2Jfb2lkID0gewogCUVNUFRZX0JMT0JfU0hBMV9CSU5fTElURVJBTAogfTsKK3N0YXRpYyBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkIGVtcHR5X3RyZWVfb2lkX3NoYTI1NiA9IHsKKwlFTVBUWV9UUkVFX1NIQTI1Nl9CSU5fTElURVJBTAorfTsKK3N0YXRpYyBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkIGVtcHR5X2Jsb2Jfb2lkX3NoYTI1NiA9IHsKKwlFTVBUWV9CTE9CX1NIQTI1Nl9CSU5fTElURVJBTAorfTsKIAogc3RhdGljIHZvaWQgZ2l0X2hhc2hfc2hhMV9pbml0KGdpdF9oYXNoX2N0eCAqY3R4KQogewpAQCAtNjksNiArODQsMjIgQEAKIAlnaXRfU0hBMV9GaW5hbChoYXNoLCAmY3R4LT5zaGExKTsKIH0KIAorCitzdGF0aWMgdm9pZCBnaXRfaGFzaF9zaGEyNTZfaW5pdChnaXRfaGFzaF9jdHggKmN0eCkKK3sKKwlnaXRfU0hBMjU2X0luaXQoJmN0eC0+c2hhMjU2KTsKK30KKworc3RhdGljIHZvaWQgZ2l0X2hhc2hfc2hhMjU2X3VwZGF0ZShnaXRfaGFzaF9jdHggKmN0eCwgY29uc3Qgdm9pZCAqZGF0YSwgc2l6ZV90IGxlbikKK3sKKwlnaXRfU0hBMjU2X1VwZGF0ZSgmY3R4LT5zaGEyNTYsIGRhdGEsIGxlbik7Cit9CisKK3N0YXRpYyB2b2lkIGdpdF9oYXNoX3NoYTI1Nl9maW5hbCh1bnNpZ25lZCBjaGFyICpoYXNoLCBnaXRfaGFzaF9jdHggKmN0eCkKK3sKKwlnaXRfU0hBMjU2X0ZpbmFsKGhhc2gsICZjdHgtPnNoYTI1Nik7Cit9CisKIHN0YXRpYyB2b2lkIGdpdF9oYXNoX3Vua25vd25faW5pdChnaXRfaGFzaF9jdHggKmN0eCkKIHsKIAlCVUcoInRyeWluZyB0byBpbml0IHVua25vd24gaGFzaCIpOwpAQCAtOTAsNiArMTIxLDcgQEAKIAkJMHgwMDAwMDAwMCwKIAkJMCwKIAkJMCwKKwkJMCwKIAkJZ2l0X2hhc2hfdW5rbm93bl9pbml0LAogCQlnaXRfaGFzaF91bmtub3duX3VwZGF0ZSwKIAkJZ2l0X2hhc2hfdW5rbm93bl9maW5hbCwKQEAgLTk3LDE3ICsxMjksMzEgQEAKIAkJTlVMTCwKIAl9LAogCXsKLQkJInNoYS0xIiwKKwkJInNoYTEiLAogCQkvKiAic2hhMSIsIGJpZy1lbmRpYW4gKi8KIAkJMHg3MzY4NjEzMSwKIAkJR0lUX1NIQTFfUkFXU1osCiAJCUdJVF9TSEExX0hFWFNaLAorCQlHSVRfU0hBMV9CTEtTWiwKIAkJZ2l0X2hhc2hfc2hhMV9pbml0LAogCQlnaXRfaGFzaF9zaGExX3VwZGF0ZSwKIAkJZ2l0X2hhc2hfc2hhMV9maW5hbCwKIAkJJmVtcHR5X3RyZWVfb2lkLAogCQkmZW1wdHlfYmxvYl9vaWQsCiAJfSwKKwl7CisJCSJzaGEyNTYiLAorCQkvKiAiczI1NiIsIGJpZy1lbmRpYW4gKi8KKwkJMHg3MzMyMzUzNiwKKwkJR0lUX1NIQTI1Nl9SQVdTWiwKKwkJR0lUX1NIQTI1Nl9IRVhTWiwKKwkJR0lUX1NIQTI1Nl9CTEtTWiwKKwkJZ2l0X2hhc2hfc2hhMjU2X2luaXQsCisJCWdpdF9oYXNoX3NoYTI1Nl91cGRhdGUsCisJCWdpdF9oYXNoX3NoYTI1Nl9maW5hbCwKKwkJJmVtcHR5X3RyZWVfb2lkX3NoYTI1NiwKKwkJJmVtcHR5X2Jsb2Jfb2lkX3NoYTI1NiwKKwl9CiB9OwogCiBjb25zdCBjaGFyICplbXB0eV90cmVlX29pZF9oZXgodm9pZCkKQEAgLTEyMiw5ICsxNjgsMzggQEAKIAlyZXR1cm4gb2lkX3RvX2hleF9yKGJ1ZiwgdGhlX2hhc2hfYWxnby0+ZW1wdHlfYmxvYik7CiB9CiAKK2ludCBoYXNoX2FsZ29fYnlfbmFtZShjb25zdCBjaGFyICpuYW1lKQoreworCWludCBpOworCWlmICghbmFtZSkKKwkJcmV0dXJuIEdJVF9IQVNIX1VOS05PV047CisJZm9yIChpID0gMTsgaSA8IEdJVF9IQVNIX05BTEdPUzsgaSsrKQorCQlpZiAoIXN0cmNtcChuYW1lLCBoYXNoX2FsZ29zW2ldLm5hbWUpKQorCQkJcmV0dXJuIGk7CisJcmV0dXJuIEdJVF9IQVNIX1VOS05PV047Cit9CisKK2ludCBoYXNoX2FsZ29fYnlfaWQodWludDMyX3QgZm9ybWF0X2lkKQoreworCWludCBpOworCWZvciAoaSA9IDE7IGkgPCBHSVRfSEFTSF9OQUxHT1M7IGkrKykKKwkJaWYgKGZvcm1hdF9pZCA9PSBoYXNoX2FsZ29zW2ldLmZvcm1hdF9pZCkKKwkJCXJldHVybiBpOworCXJldHVybiBHSVRfSEFTSF9VTktOT1dOOworfQorCitpbnQgaGFzaF9hbGdvX2J5X2xlbmd0aChpbnQgbGVuKQoreworCWludCBpOworCWZvciAoaSA9IDE7IGkgPCBHSVRfSEFTSF9OQUxHT1M7IGkrKykKKwkJaWYgKGxlbiA9PSBoYXNoX2FsZ29zW2ldLnJhd3N6KQorCQkJcmV0dXJuIGk7CisJcmV0dXJuIEdJVF9IQVNIX1VOS05PV047Cit9CisKIC8qCiAgKiBUaGlzIGlzIG1lYW50IHRvIGhvbGQgYSAqc21hbGwqIG51bWJlciBvZiBvYmplY3RzIHRoYXQgeW91IHdvdWxkCi0gKiB3YW50IHJlYWRfc2hhMV9maWxlKCkgdG8gYmUgYWJsZSB0byByZXR1cm4sIGJ1dCB5ZXQgeW91IGRvIG5vdCB3YW50CisgKiB3YW50IHJlYWRfb2JqZWN0X2ZpbGUoKSB0byBiZSBhYmxlIHRvIHJldHVybiwgYnV0IHlldCB5b3UgZG8gbm90IHdhbnQKICAqIHRvIHdyaXRlIHRoZW0gaW50byB0aGUgb2JqZWN0IHN0b3JlIChlLmcuIGEgYnJvd3NlLW9ubHkKICAqIGFwcGxpY2F0aW9uKS4KICAqLwpAQCAtMzMzLDEyICs0MDgsMTIgQEAKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgdm9pZCBmaWxsX3NoYTFfcGF0aChzdHJ1Y3Qgc3RyYnVmICpidWYsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEpCitzdGF0aWMgdm9pZCBmaWxsX2xvb3NlX3BhdGgoc3RydWN0IHN0cmJ1ZiAqYnVmLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7CiAJaW50IGk7CiAJZm9yIChpID0gMDsgaSA8IHRoZV9oYXNoX2FsZ28tPnJhd3N6OyBpKyspIHsKIAkJc3RhdGljIGNoYXIgaGV4W10gPSAiMDEyMzQ1Njc4OWFiY2RlZiI7Ci0JCXVuc2lnbmVkIGludCB2YWwgPSBzaGExW2ldOworCQl1bnNpZ25lZCBpbnQgdmFsID0gb2lkLT5oYXNoW2ldOwogCQlzdHJidWZfYWRkY2goYnVmLCBoZXhbdmFsID4+IDRdKTsKIAkJc3RyYnVmX2FkZGNoKGJ1ZiwgaGV4W3ZhbCAmIDB4Zl0pOwogCQlpZiAoIWkpCkBAIC0zNDYsMjcgKzQyMSwyMyBAQAogCX0KIH0KIAotdm9pZCBzaGExX2ZpbGVfbmFtZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHN0cmJ1ZiAqYnVmLCBjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKQorc3RhdGljIGNvbnN0IGNoYXIgKm9kYl9sb29zZV9wYXRoKHN0cnVjdCBvYmplY3RfZGlyZWN0b3J5ICpvZGIsCisJCQkJICBzdHJ1Y3Qgc3RyYnVmICpidWYsCisJCQkJICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0Jc3RyYnVmX2FkZHN0cihidWYsIHItPm9iamVjdHMtPm9iamVjdGRpcik7CisJc3RyYnVmX3Jlc2V0KGJ1Zik7CisJc3RyYnVmX2FkZHN0cihidWYsIG9kYi0+cGF0aCk7CiAJc3RyYnVmX2FkZGNoKGJ1ZiwgJy8nKTsKLQlmaWxsX3NoYTFfcGF0aChidWYsIHNoYTEpOwotfQotCi1zdHJ1Y3Qgc3RyYnVmICphbHRfc2NyYXRjaF9idWYoc3RydWN0IGFsdGVybmF0ZV9vYmplY3RfZGF0YWJhc2UgKmFsdCkKLXsKLQlzdHJidWZfc2V0bGVuKCZhbHQtPnNjcmF0Y2gsIGFsdC0+YmFzZV9sZW4pOwotCXJldHVybiAmYWx0LT5zY3JhdGNoOwotfQotCi1zdGF0aWMgY29uc3QgY2hhciAqYWx0X3NoYTFfcGF0aChzdHJ1Y3QgYWx0ZXJuYXRlX29iamVjdF9kYXRhYmFzZSAqYWx0LAotCQkJCSBjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKQotewotCXN0cnVjdCBzdHJidWYgKmJ1ZiA9IGFsdF9zY3JhdGNoX2J1ZihhbHQpOwotCWZpbGxfc2hhMV9wYXRoKGJ1Ziwgc2hhMSk7CisJZmlsbF9sb29zZV9wYXRoKGJ1Ziwgb2lkKTsKIAlyZXR1cm4gYnVmLT5idWY7CiB9CiAKK2NvbnN0IGNoYXIgKmxvb3NlX29iamVjdF9wYXRoKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3Qgc3RyYnVmICpidWYsCisJCQkgICAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCit7CisJcmV0dXJuIG9kYl9sb29zZV9wYXRoKHItPm9iamVjdHMtPm9kYiwgYnVmLCBvaWQpOworfQorCiAvKgogICogUmV0dXJuIG5vbi16ZXJvIGlmZiB0aGUgcGF0aCBpcyB1c2FibGUgYXMgYW4gYWx0ZXJuYXRlIG9iamVjdCBkYXRhYmFzZS4KICAqLwpAQCAtMzc0LDcgKzQ0NSw3IEBACiAJCQkgIHN0cnVjdCBzdHJidWYgKnBhdGgsCiAJCQkgIGNvbnN0IGNoYXIgKm5vcm1hbGl6ZWRfb2JqZGlyKQogewotCXN0cnVjdCBhbHRlcm5hdGVfb2JqZWN0X2RhdGFiYXNlICphbHQ7CisJc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKm9kYjsKIAogCS8qIERldGVjdCBjYXNlcyB3aGVyZSBhbHRlcm5hdGUgZGlzYXBwZWFyZWQgKi8KIAlpZiAoIWlzX2RpcmVjdG9yeShwYXRoLT5idWYpKSB7CkBAIC0zODgsOCArNDU5LDggQEAKIAkgKiBQcmV2ZW50IHRoZSBjb21tb24gbWlzdGFrZSBvZiBsaXN0aW5nIHRoZSBzYW1lCiAJICogdGhpbmcgdHdpY2UsIG9yIG9iamVjdCBkaXJlY3RvcnkgaXRzZWxmLgogCSAqLwotCWZvciAoYWx0ID0gby0+YWx0X29kYl9saXN0OyBhbHQ7IGFsdCA9IGFsdC0+bmV4dCkgewotCQlpZiAoIWZzcGF0aGNtcChwYXRoLT5idWYsIGFsdC0+cGF0aCkpCisJZm9yIChvZGIgPSBvLT5vZGI7IG9kYjsgb2RiID0gb2RiLT5uZXh0KSB7CisJCWlmICghZnNwYXRoY21wKHBhdGgtPmJ1Ziwgb2RiLT5wYXRoKSkKIAkJCXJldHVybiAwOwogCX0KIAlpZiAoIWZzcGF0aGNtcChwYXRoLT5idWYsIG5vcm1hbGl6ZWRfb2JqZGlyKSkKQEAgLTQwMiw3ICs0NzMsNyBAQAogICogUHJlcGFyZSBhbHRlcm5hdGUgb2JqZWN0IGRhdGFiYXNlIHJlZ2lzdHJ5LgogICoKICAqIFRoZSB2YXJpYWJsZSBhbHRfb2RiX2xpc3QgcG9pbnRzIGF0IHRoZSBsaXN0IG9mIHN0cnVjdAotICogYWx0ZXJuYXRlX29iamVjdF9kYXRhYmFzZS4gIFRoZSBlbGVtZW50cyBvbiB0aGlzIGxpc3QgY29tZSBmcm9tCisgKiBvYmplY3RfZGlyZWN0b3J5LiAgVGhlIGVsZW1lbnRzIG9uIHRoaXMgbGlzdCBjb21lIGZyb20KICAqIG5vbi1lbXB0eSBlbGVtZW50cyBmcm9tIGNvbG9uIHNlcGFyYXRlZCBBTFRFUk5BVEVfREJfRU5WSVJPTk1FTlQKICAqIGVudmlyb25tZW50IHZhcmlhYmxlLCBhbmQgJEdJVF9PQkpFQ1RfRElSRUNUT1JZL2luZm8vYWx0ZXJuYXRlcywKICAqIHdob3NlIGNvbnRlbnRzIGlzIHNpbWlsYXIgdG8gdGhhdCBlbnZpcm9ubWVudCB2YXJpYWJsZSBidXQgY2FuIGJlCkBAIC00MTksNyArNDkwLDcgQEAKIHN0YXRpYyBpbnQgbGlua19hbHRfb2RiX2VudHJ5KHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICplbnRyeSwKIAljb25zdCBjaGFyICpyZWxhdGl2ZV9iYXNlLCBpbnQgZGVwdGgsIGNvbnN0IGNoYXIgKm5vcm1hbGl6ZWRfb2JqZGlyKQogewotCXN0cnVjdCBhbHRlcm5hdGVfb2JqZWN0X2RhdGFiYXNlICplbnQ7CisJc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKmVudDsKIAlzdHJ1Y3Qgc3RyYnVmIHBhdGhidWYgPSBTVFJCVUZfSU5JVDsKIAogCWlmICghaXNfYWJzb2x1dGVfcGF0aChlbnRyeSkgJiYgcmVsYXRpdmVfYmFzZSkgewpAQCAtNDQ3LDExICs1MTgsMTIgQEAKIAkJcmV0dXJuIC0xOwogCX0KIAotCWVudCA9IGFsbG9jX2FsdF9vZGIocGF0aGJ1Zi5idWYpOworCWVudCA9IHhjYWxsb2MoMSwgc2l6ZW9mKCplbnQpKTsKKwllbnQtPnBhdGggPSB4c3RyZHVwKHBhdGhidWYuYnVmKTsKIAogCS8qIGFkZCB0aGUgYWx0ZXJuYXRlIGVudHJ5ICovCi0JKnItPm9iamVjdHMtPmFsdF9vZGJfdGFpbCA9IGVudDsKLQlyLT5vYmplY3RzLT5hbHRfb2RiX3RhaWwgPSAmKGVudC0+bmV4dCk7CisJKnItPm9iamVjdHMtPm9kYl90YWlsID0gZW50OworCXItPm9iamVjdHMtPm9kYl90YWlsID0gJihlbnQtPm5leHQpOwogCWVudC0+bmV4dCA9IE5VTEw7CiAKIAkvKiByZWN1cnNpdmVseSBhZGQgYWx0ZXJuYXRlcyAqLwpAQCAtNTA1LDcgKzU3Nyw3IEBACiAJCXJldHVybjsKIAl9CiAKLQlzdHJidWZfYWRkX2Fic29sdXRlX3BhdGgoJm9iamRpcmJ1Ziwgci0+b2JqZWN0cy0+b2JqZWN0ZGlyKTsKKwlzdHJidWZfYWRkX2Fic29sdXRlX3BhdGgoJm9iamRpcmJ1Ziwgci0+b2JqZWN0cy0+b2RiLT5wYXRoKTsKIAlpZiAoc3RyYnVmX25vcm1hbGl6ZV9wYXRoKCZvYmpkaXJidWYpIDwgMCkKIAkJZGllKF8oInVuYWJsZSB0byBub3JtYWxpemUgb2JqZWN0IGRpcmVjdG9yeTogJXMiKSwKIAkJICAgIG9iamRpcmJ1Zi5idWYpOwpAQCAtNTQwLDE4ICs2MTIsNiBAQAogCWZyZWUocGF0aCk7CiB9CiAKLXN0cnVjdCBhbHRlcm5hdGVfb2JqZWN0X2RhdGFiYXNlICphbGxvY19hbHRfb2RiKGNvbnN0IGNoYXIgKmRpcikKLXsKLQlzdHJ1Y3QgYWx0ZXJuYXRlX29iamVjdF9kYXRhYmFzZSAqZW50OwotCi0JRkxFWF9BTExPQ19TVFIoZW50LCBwYXRoLCBkaXIpOwotCXN0cmJ1Zl9pbml0KCZlbnQtPnNjcmF0Y2gsIDApOwotCXN0cmJ1Zl9hZGRmKCZlbnQtPnNjcmF0Y2gsICIlcy8iLCBkaXIpOwotCWVudC0+YmFzZV9sZW4gPSBlbnQtPnNjcmF0Y2gubGVuOwotCi0JcmV0dXJuIGVudDsKLX0KLQogdm9pZCBhZGRfdG9fYWx0ZXJuYXRlc19maWxlKGNvbnN0IGNoYXIgKnJlZmVyZW5jZSkKIHsKIAlzdHJ1Y3QgbG9ja19maWxlIGxvY2sgPSBMT0NLX0lOSVQ7CkBAIC01ODgsNyArNjQ4LDcgQEAKIAkJZnByaW50Zl9vcl9kaWUob3V0LCAiJXNcbiIsIHJlZmVyZW5jZSk7CiAJCWlmIChjb21taXRfbG9ja19maWxlKCZsb2NrKSkKIAkJCWRpZV9lcnJubyhfKCJ1bmFibGUgdG8gbW92ZSBuZXcgYWx0ZXJuYXRlcyBmaWxlIGludG8gcGxhY2UiKSk7Ci0JCWlmICh0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cy0+YWx0X29kYl90YWlsKQorCQlpZiAodGhlX3JlcG9zaXRvcnktPm9iamVjdHMtPmxvYWRlZF9hbHRlcm5hdGVzKQogCQkJbGlua19hbHRfb2RiX2VudHJpZXModGhlX3JlcG9zaXRvcnksIHJlZmVyZW5jZSwKIAkJCQkJICAgICAnXG4nLCBOVUxMLCAwKTsKIAl9CkBAIC02MTYsMjAgKzY3NiwxNSBAQAogY2hhciAqY29tcHV0ZV9hbHRlcm5hdGVfcGF0aChjb25zdCBjaGFyICpwYXRoLCBzdHJ1Y3Qgc3RyYnVmICplcnIpCiB7CiAJY2hhciAqcmVmX2dpdCA9IE5VTEw7Ci0JY29uc3QgY2hhciAqcmVwbywgKnJlZl9naXRfczsKKwljb25zdCBjaGFyICpyZXBvOwogCWludCBzZWVuX2Vycm9yID0gMDsKIAotCXJlZl9naXRfcyA9IHJlYWxfcGF0aF9pZl92YWxpZChwYXRoKTsKLQlpZiAoIXJlZl9naXRfcykgeworCXJlZl9naXQgPSByZWFsX3BhdGhkdXAocGF0aCwgMCk7CisJaWYgKCFyZWZfZ2l0KSB7CiAJCXNlZW5fZXJyb3IgPSAxOwogCQlzdHJidWZfYWRkZihlcnIsIF8oInBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCIpLCBwYXRoKTsKIAkJZ290byBvdXQ7Ci0JfSBlbHNlCi0JCS8qCi0JCSAqIEJld2FyZTogcmVhZF9naXRmaWxlKCksIHJlYWxfcGF0aCgpIGFuZCBta3BhdGgoKQotCQkgKiByZXR1cm4gc3RhdGljIGJ1ZmZlcgotCQkgKi8KLQkJcmVmX2dpdCA9IHhzdHJkdXAocmVmX2dpdF9zKTsKKwl9CiAKIAlyZXBvID0gcmVhZF9naXRmaWxlKHJlZl9naXQpOwogCWlmICghcmVwbykKQEAgLTY4MiwxMyArNzM3LDExMSBAQAogCXJldHVybiByZWZfZ2l0OwogfQogCitzdGF0aWMgdm9pZCBmaWxsX2FsdGVybmF0ZV9yZWZzX2NvbW1hbmQoc3RydWN0IGNoaWxkX3Byb2Nlc3MgKmNtZCwKKwkJCQkJY29uc3QgY2hhciAqcmVwb19wYXRoKQoreworCWNvbnN0IGNoYXIgKnZhbHVlOworCisJaWYgKCFnaXRfY29uZmlnX2dldF92YWx1ZSgiY29yZS5hbHRlcm5hdGVSZWZzQ29tbWFuZCIsICZ2YWx1ZSkpIHsKKwkJY21kLT51c2Vfc2hlbGwgPSAxOworCisJCWFyZ3ZfYXJyYXlfcHVzaCgmY21kLT5hcmdzLCB2YWx1ZSk7CisJCWFyZ3ZfYXJyYXlfcHVzaCgmY21kLT5hcmdzLCByZXBvX3BhdGgpOworCX0gZWxzZSB7CisJCWNtZC0+Z2l0X2NtZCA9IDE7CisKKwkJYXJndl9hcnJheV9wdXNoZigmY21kLT5hcmdzLCAiLS1naXQtZGlyPSVzIiwgcmVwb19wYXRoKTsKKwkJYXJndl9hcnJheV9wdXNoKCZjbWQtPmFyZ3MsICJmb3ItZWFjaC1yZWYiKTsKKwkJYXJndl9hcnJheV9wdXNoKCZjbWQtPmFyZ3MsICItLWZvcm1hdD0lKG9iamVjdG5hbWUpIik7CisKKwkJaWYgKCFnaXRfY29uZmlnX2dldF92YWx1ZSgiY29yZS5hbHRlcm5hdGVSZWZzUHJlZml4ZXMiLCAmdmFsdWUpKSB7CisJCQlhcmd2X2FycmF5X3B1c2goJmNtZC0+YXJncywgIi0tIik7CisJCQlhcmd2X2FycmF5X3NwbGl0KCZjbWQtPmFyZ3MsIHZhbHVlKTsKKwkJfQorCX0KKworCWNtZC0+ZW52ID0gbG9jYWxfcmVwb19lbnY7CisJY21kLT5vdXQgPSAtMTsKK30KKworc3RhdGljIHZvaWQgcmVhZF9hbHRlcm5hdGVfcmVmcyhjb25zdCBjaGFyICpwYXRoLAorCQkJCWFsdGVybmF0ZV9yZWZfZm4gKmNiLAorCQkJCXZvaWQgKmRhdGEpCit7CisJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY21kID0gQ0hJTERfUFJPQ0VTU19JTklUOworCXN0cnVjdCBzdHJidWYgbGluZSA9IFNUUkJVRl9JTklUOworCUZJTEUgKmZoOworCisJZmlsbF9hbHRlcm5hdGVfcmVmc19jb21tYW5kKCZjbWQsIHBhdGgpOworCisJaWYgKHN0YXJ0X2NvbW1hbmQoJmNtZCkpCisJCXJldHVybjsKKworCWZoID0geGZkb3BlbihjbWQub3V0LCAiciIpOworCXdoaWxlIChzdHJidWZfZ2V0bGluZV9sZigmbGluZSwgZmgpICE9IEVPRikgeworCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKKwkJY29uc3QgY2hhciAqcDsKKworCQlpZiAocGFyc2Vfb2lkX2hleChsaW5lLmJ1ZiwgJm9pZCwgJnApIHx8ICpwKSB7CisJCQl3YXJuaW5nKF8oImludmFsaWQgbGluZSB3aGlsZSBwYXJzaW5nIGFsdGVybmF0ZSByZWZzOiAlcyIpLAorCQkJCWxpbmUuYnVmKTsKKwkJCWJyZWFrOworCQl9CisKKwkJY2IoJm9pZCwgZGF0YSk7CisJfQorCisJZmNsb3NlKGZoKTsKKwlmaW5pc2hfY29tbWFuZCgmY21kKTsKKwlzdHJidWZfcmVsZWFzZSgmbGluZSk7Cit9CisKK3N0cnVjdCBhbHRlcm5hdGVfcmVmc19kYXRhIHsKKwlhbHRlcm5hdGVfcmVmX2ZuICpmbjsKKwl2b2lkICpkYXRhOworfTsKKworc3RhdGljIGludCByZWZzX2Zyb21fYWx0ZXJuYXRlX2NiKHN0cnVjdCBvYmplY3RfZGlyZWN0b3J5ICplLAorCQkJCSAgdm9pZCAqZGF0YSkKK3sKKwlzdHJ1Y3Qgc3RyYnVmIHBhdGggPSBTVFJCVUZfSU5JVDsKKwlzaXplX3QgYmFzZV9sZW47CisJc3RydWN0IGFsdGVybmF0ZV9yZWZzX2RhdGEgKmNiID0gZGF0YTsKKworCWlmICghc3RyYnVmX3JlYWxwYXRoKCZwYXRoLCBlLT5wYXRoLCAwKSkKKwkJZ290byBvdXQ7CisJaWYgKCFzdHJidWZfc3RyaXBfc3VmZml4KCZwYXRoLCAiL29iamVjdHMiKSkKKwkJZ290byBvdXQ7CisJYmFzZV9sZW4gPSBwYXRoLmxlbjsKKworCS8qIElzIHRoaXMgYSBnaXQgcmVwb3NpdG9yeSB3aXRoIHJlZnM/ICovCisJc3RyYnVmX2FkZHN0cigmcGF0aCwgIi9yZWZzIik7CisJaWYgKCFpc19kaXJlY3RvcnkocGF0aC5idWYpKQorCQlnb3RvIG91dDsKKwlzdHJidWZfc2V0bGVuKCZwYXRoLCBiYXNlX2xlbik7CisKKwlyZWFkX2FsdGVybmF0ZV9yZWZzKHBhdGguYnVmLCBjYi0+Zm4sIGNiLT5kYXRhKTsKKworb3V0OgorCXN0cmJ1Zl9yZWxlYXNlKCZwYXRoKTsKKwlyZXR1cm4gMDsKK30KKwordm9pZCBmb3JfZWFjaF9hbHRlcm5hdGVfcmVmKGFsdGVybmF0ZV9yZWZfZm4gZm4sIHZvaWQgKmRhdGEpCit7CisJc3RydWN0IGFsdGVybmF0ZV9yZWZzX2RhdGEgY2I7CisJY2IuZm4gPSBmbjsKKwljYi5kYXRhID0gZGF0YTsKKwlmb3JlYWNoX2FsdF9vZGIocmVmc19mcm9tX2FsdGVybmF0ZV9jYiwgJmNiKTsKK30KKwogaW50IGZvcmVhY2hfYWx0X29kYihhbHRfb2RiX2ZuIGZuLCB2b2lkICpjYikKIHsKLQlzdHJ1Y3QgYWx0ZXJuYXRlX29iamVjdF9kYXRhYmFzZSAqZW50OworCXN0cnVjdCBvYmplY3RfZGlyZWN0b3J5ICplbnQ7CiAJaW50IHIgPSAwOwogCiAJcHJlcGFyZV9hbHRfb2RiKHRoZV9yZXBvc2l0b3J5KTsKLQlmb3IgKGVudCA9IHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzLT5hbHRfb2RiX2xpc3Q7IGVudDsgZW50ID0gZW50LT5uZXh0KSB7CisJZm9yIChlbnQgPSB0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cy0+b2RiLT5uZXh0OyBlbnQ7IGVudCA9IGVudC0+bmV4dCkgewogCQlyID0gZm4oZW50LCBjYik7CiAJCWlmIChyKQogCQkJYnJlYWs7CkBAIC02OTgsMTMgKzg1MSwxMyBAQAogCiB2b2lkIHByZXBhcmVfYWx0X29kYihzdHJ1Y3QgcmVwb3NpdG9yeSAqcikKIHsKLQlpZiAoci0+b2JqZWN0cy0+YWx0X29kYl90YWlsKQorCWlmIChyLT5vYmplY3RzLT5sb2FkZWRfYWx0ZXJuYXRlcykKIAkJcmV0dXJuOwogCi0Jci0+b2JqZWN0cy0+YWx0X29kYl90YWlsID0gJnItPm9iamVjdHMtPmFsdF9vZGJfbGlzdDsKIAlsaW5rX2FsdF9vZGJfZW50cmllcyhyLCByLT5vYmplY3RzLT5hbHRlcm5hdGVfZGIsIFBBVEhfU0VQLCBOVUxMLCAwKTsKIAotCXJlYWRfaW5mb19hbHRlcm5hdGVzKHIsIHItPm9iamVjdHMtPm9iamVjdGRpciwgMCk7CisJcmVhZF9pbmZvX2FsdGVybmF0ZXMociwgci0+b2JqZWN0cy0+b2RiLT5wYXRoLCAwKTsKKwlyLT5vYmplY3RzLT5sb2FkZWRfYWx0ZXJuYXRlcyA9IDE7CiB9CiAKIC8qIFJldHVybnMgMSBpZiB3ZSBoYXZlIHN1Y2Nlc3NmdWxseSBmcmVzaGVuZWQgdGhlIGZpbGUsIDAgb3RoZXJ3aXNlLiAqLwpAQCAtNzMxLDIzICs4ODQsMjcgQEAKIAlyZXR1cm4gMTsKIH0KIAorc3RhdGljIGludCBjaGVja19hbmRfZnJlc2hlbl9vZGIoc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKm9kYiwKKwkJCQkgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJCSBpbnQgZnJlc2hlbikKK3sKKwlzdGF0aWMgc3RydWN0IHN0cmJ1ZiBwYXRoID0gU1RSQlVGX0lOSVQ7CisJb2RiX2xvb3NlX3BhdGgob2RiLCAmcGF0aCwgb2lkKTsKKwlyZXR1cm4gY2hlY2tfYW5kX2ZyZXNoZW5fZmlsZShwYXRoLmJ1ZiwgZnJlc2hlbik7Cit9CisKIHN0YXRpYyBpbnQgY2hlY2tfYW5kX2ZyZXNoZW5fbG9jYWwoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBpbnQgZnJlc2hlbikKIHsKLQlzdGF0aWMgc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKLQotCXN0cmJ1Zl9yZXNldCgmYnVmKTsKLQlzaGExX2ZpbGVfbmFtZSh0aGVfcmVwb3NpdG9yeSwgJmJ1Ziwgb2lkLT5oYXNoKTsKLQotCXJldHVybiBjaGVja19hbmRfZnJlc2hlbl9maWxlKGJ1Zi5idWYsIGZyZXNoZW4pOworCXJldHVybiBjaGVja19hbmRfZnJlc2hlbl9vZGIodGhlX3JlcG9zaXRvcnktPm9iamVjdHMtPm9kYiwgb2lkLCBmcmVzaGVuKTsKIH0KIAogc3RhdGljIGludCBjaGVja19hbmRfZnJlc2hlbl9ub25sb2NhbChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGludCBmcmVzaGVuKQogewotCXN0cnVjdCBhbHRlcm5hdGVfb2JqZWN0X2RhdGFiYXNlICphbHQ7CisJc3RydWN0IG9iamVjdF9kaXJlY3RvcnkgKm9kYjsKKwogCXByZXBhcmVfYWx0X29kYih0aGVfcmVwb3NpdG9yeSk7Ci0JZm9yIChhbHQgPSB0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cy0+YWx0X29kYl9saXN0OyBhbHQ7IGFsdCA9IGFsdC0+bmV4dCkgewotCQljb25zdCBjaGFyICpwYXRoID0gYWx0X3NoYTFfcGF0aChhbHQsIG9pZC0+aGFzaCk7Ci0JCWlmIChjaGVja19hbmRfZnJlc2hlbl9maWxlKHBhdGgsIGZyZXNoZW4pKQorCWZvciAob2RiID0gdGhlX3JlcG9zaXRvcnktPm9iamVjdHMtPm9kYi0+bmV4dDsgb2RiOyBvZGIgPSBvZGItPm5leHQpIHsKKwkJaWYgKGNoZWNrX2FuZF9mcmVzaGVuX29kYihvZGIsIG9pZCwgZnJlc2hlbikpCiAJCQlyZXR1cm4gMTsKIAl9CiAJcmV0dXJuIDA7CkBAIC03ODksMTIgKzk0Niw4IEBACiAKIAltbWFwX2xpbWl0X2NoZWNrKGxlbmd0aCk7CiAJcmV0ID0gbW1hcChzdGFydCwgbGVuZ3RoLCBwcm90LCBmbGFncywgZmQsIG9mZnNldCk7Ci0JaWYgKHJldCA9PSBNQVBfRkFJTEVEKSB7Ci0JCWlmICghbGVuZ3RoKQotCQkJcmV0dXJuIE5VTEw7Ci0JCXJlbGVhc2VfcGFja19tZW1vcnkobGVuZ3RoKTsKLQkJcmV0ID0gbW1hcChzdGFydCwgbGVuZ3RoLCBwcm90LCBmbGFncywgZmQsIG9mZnNldCk7Ci0JfQorCWlmIChyZXQgPT0gTUFQX0ZBSUxFRCAmJiAhbGVuZ3RoKQorCQlyZXQgPSBOVUxMOwogCXJldHVybiByZXQ7CiB9CiAKQEAgLTgwOSwxMiArOTYyLDEyIEBACiAKIC8qCiAgKiBXaXRoIGFuIGluLWNvcmUgb2JqZWN0IGRhdGEgaW4gIm1hcCIsIHJlaGFzaCBpdCB0byBtYWtlIHN1cmUgdGhlCi0gKiBvYmplY3QgbmFtZSBhY3R1YWxseSBtYXRjaGVzICJzaGExIiB0byBkZXRlY3Qgb2JqZWN0IGNvcnJ1cHRpb24uCi0gKiBXaXRoICJtYXAiID09IE5VTEwsIHRyeSByZWFkaW5nIHRoZSBvYmplY3QgbmFtZWQgd2l0aCAic2hhMSIgdXNpbmcKKyAqIG9iamVjdCBuYW1lIGFjdHVhbGx5IG1hdGNoZXMgIm9pZCIgdG8gZGV0ZWN0IG9iamVjdCBjb3JydXB0aW9uLgorICogV2l0aCAibWFwIiA9PSBOVUxMLCB0cnkgcmVhZGluZyB0aGUgb2JqZWN0IG5hbWVkIHdpdGggIm9pZCIgdXNpbmcKICAqIHRoZSBzdHJlYW1pbmcgaW50ZXJmYWNlIGFuZCByZWhhc2ggaXQgdG8gZG8gdGhlIHNhbWUuCiAgKi8KLWludCBjaGVja19vYmplY3Rfc2lnbmF0dXJlKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgdm9pZCAqbWFwLAotCQkJICAgdW5zaWduZWQgbG9uZyBzaXplLCBjb25zdCBjaGFyICp0eXBlKQoraW50IGNoZWNrX29iamVjdF9zaWduYXR1cmUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCSAgIHZvaWQgKm1hcCwgdW5zaWduZWQgbG9uZyBzaXplLCBjb25zdCBjaGFyICp0eXBlKQogewogCXN0cnVjdCBvYmplY3RfaWQgcmVhbF9vaWQ7CiAJZW51bSBvYmplY3RfdHlwZSBvYmpfdHlwZTsKQEAgLTgyNCwxMSArOTc3LDExIEBACiAJaW50IGhkcmxlbjsKIAogCWlmIChtYXApIHsKLQkJaGFzaF9vYmplY3RfZmlsZShtYXAsIHNpemUsIHR5cGUsICZyZWFsX29pZCk7CisJCWhhc2hfb2JqZWN0X2ZpbGUoci0+aGFzaF9hbGdvLCBtYXAsIHNpemUsIHR5cGUsICZyZWFsX29pZCk7CiAJCXJldHVybiAhb2lkZXEob2lkLCAmcmVhbF9vaWQpID8gLTEgOiAwOwogCX0KIAotCXN0ID0gb3Blbl9pc3RyZWFtKG9pZCwgJm9ial90eXBlLCAmc2l6ZSwgTlVMTCk7CisJc3QgPSBvcGVuX2lzdHJlYW0ociwgb2lkLCAmb2JqX3R5cGUsICZzaXplLCBOVUxMKTsKIAlpZiAoIXN0KQogCQlyZXR1cm4gLTE7CiAKQEAgLTgzNiw4ICs5ODksOCBAQAogCWhkcmxlbiA9IHhzbnByaW50ZihoZHIsIHNpemVvZihoZHIpLCAiJXMgJSJQUkl1TUFYICwgdHlwZV9uYW1lKG9ial90eXBlKSwgKHVpbnRtYXhfdClzaXplKSArIDE7CiAKIAkvKiBTaGExLi4gKi8KLQl0aGVfaGFzaF9hbGdvLT5pbml0X2ZuKCZjKTsKLQl0aGVfaGFzaF9hbGdvLT51cGRhdGVfZm4oJmMsIGhkciwgaGRybGVuKTsKKwlyLT5oYXNoX2FsZ28tPmluaXRfZm4oJmMpOworCXItPmhhc2hfYWxnby0+dXBkYXRlX2ZuKCZjLCBoZHIsIGhkcmxlbik7CiAJZm9yICg7OykgewogCQljaGFyIGJ1ZlsxMDI0ICogMTZdOwogCQlzc2l6ZV90IHJlYWRsZW4gPSByZWFkX2lzdHJlYW0oc3QsIGJ1Ziwgc2l6ZW9mKGJ1ZikpOwpAQCAtODQ4LDkgKzEwMDEsOSBAQAogCQl9CiAJCWlmICghcmVhZGxlbikKIAkJCWJyZWFrOwotCQl0aGVfaGFzaF9hbGdvLT51cGRhdGVfZm4oJmMsIGJ1ZiwgcmVhZGxlbik7CisJCXItPmhhc2hfYWxnby0+dXBkYXRlX2ZuKCZjLCBidWYsIHJlYWRsZW4pOwogCX0KLQl0aGVfaGFzaF9hbGdvLT5maW5hbF9mbihyZWFsX29pZC5oYXNoLCAmYyk7CisJci0+aGFzaF9hbGdvLT5maW5hbF9mbihyZWFsX29pZC5oYXNoLCAmYyk7CiAJY2xvc2VfaXN0cmVhbShzdCk7CiAJcmV0dXJuICFvaWRlcShvaWQsICZyZWFsX29pZCkgPyAtMSA6IDA7CiB9CkBAIC04ODMsMzAgKzEwMzYsMjIgQEAKIH0KIAogLyoKLSAqIEZpbmQgInNoYTEiIGFzIGEgbG9vc2Ugb2JqZWN0IGluIHRoZSBsb2NhbCByZXBvc2l0b3J5IG9yIGluIGFuIGFsdGVybmF0ZS4KKyAqIEZpbmQgIm9pZCIgYXMgYSBsb29zZSBvYmplY3QgaW4gdGhlIGxvY2FsIHJlcG9zaXRvcnkgb3IgaW4gYW4gYWx0ZXJuYXRlLgogICogUmV0dXJucyAwIG9uIHN1Y2Nlc3MsIG5lZ2F0aXZlIG9uIGZhaWx1cmUuCiAgKgogICogVGhlICJwYXRoIiBvdXQtcGFyYW1ldGVyIHdpbGwgZ2l2ZSB0aGUgcGF0aCBvZiB0aGUgb2JqZWN0IHdlIGZvdW5kIChpZiBhbnkpLgogICogTm90ZSB0aGF0IGl0IG1heSBwb2ludCB0byBzdGF0aWMgc3RvcmFnZSBhbmQgaXMgb25seSB2YWxpZCB1bnRpbCBhbm90aGVyCi0gKiBjYWxsIHRvIHNoYTFfZmlsZV9uYW1lKCksIGV0Yy4KKyAqIGNhbGwgdG8gc3RhdF9sb29zZV9vYmplY3QoKS4KICAqLwotc3RhdGljIGludCBzdGF0X3NoYTFfZmlsZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwKLQkJCSAgc3RydWN0IHN0YXQgKnN0LCBjb25zdCBjaGFyICoqcGF0aCkKK3N0YXRpYyBpbnQgc3RhdF9sb29zZV9vYmplY3Qoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCSAgICAgc3RydWN0IHN0YXQgKnN0LCBjb25zdCBjaGFyICoqcGF0aCkKIHsKLQlzdHJ1Y3QgYWx0ZXJuYXRlX29iamVjdF9kYXRhYmFzZSAqYWx0OworCXN0cnVjdCBvYmplY3RfZGlyZWN0b3J5ICpvZGI7CiAJc3RhdGljIHN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CiAKLQlzdHJidWZfcmVzZXQoJmJ1Zik7Ci0Jc2hhMV9maWxlX25hbWUociwgJmJ1Ziwgc2hhMSk7Ci0JKnBhdGggPSBidWYuYnVmOwotCi0JaWYgKCFsc3RhdCgqcGF0aCwgc3QpKQotCQlyZXR1cm4gMDsKLQogCXByZXBhcmVfYWx0X29kYihyKTsKLQllcnJubyA9IEVOT0VOVDsKLQlmb3IgKGFsdCA9IHItPm9iamVjdHMtPmFsdF9vZGJfbGlzdDsgYWx0OyBhbHQgPSBhbHQtPm5leHQpIHsKLQkJKnBhdGggPSBhbHRfc2hhMV9wYXRoKGFsdCwgc2hhMSk7CisJZm9yIChvZGIgPSByLT5vYmplY3RzLT5vZGI7IG9kYjsgb2RiID0gb2RiLT5uZXh0KSB7CisJCSpwYXRoID0gb2RiX2xvb3NlX3BhdGgob2RiLCAmYnVmLCBvaWQpOwogCQlpZiAoIWxzdGF0KCpwYXRoLCBzdCkpCiAJCQlyZXR1cm4gMDsKIAl9CkBAIC05MTUsMzIgKzEwNjAsMjQgQEAKIH0KIAogLyoKLSAqIExpa2Ugc3RhdF9zaGExX2ZpbGUoKSwgYnV0IGFjdHVhbGx5IG9wZW4gdGhlIG9iamVjdCBhbmQgcmV0dXJuIHRoZQorICogTGlrZSBzdGF0X2xvb3NlX29iamVjdCgpLCBidXQgYWN0dWFsbHkgb3BlbiB0aGUgb2JqZWN0IGFuZCByZXR1cm4gdGhlCiAgKiBkZXNjcmlwdG9yLiBTZWUgdGhlIGNhdmVhdHMgb24gdGhlICJwYXRoIiBwYXJhbWV0ZXIgYWJvdmUuCiAgKi8KLXN0YXRpYyBpbnQgb3Blbl9zaGExX2ZpbGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsCi0JCQkgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsIGNvbnN0IGNoYXIgKipwYXRoKQorc3RhdGljIGludCBvcGVuX2xvb3NlX29iamVjdChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBjb25zdCBjaGFyICoqcGF0aCkKIHsKIAlpbnQgZmQ7Ci0Jc3RydWN0IGFsdGVybmF0ZV9vYmplY3RfZGF0YWJhc2UgKmFsdDsKLQlpbnQgbW9zdF9pbnRlcmVzdGluZ19lcnJubzsKKwlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiOworCWludCBtb3N0X2ludGVyZXN0aW5nX2Vycm5vID0gRU5PRU5UOwogCXN0YXRpYyBzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCi0Jc3RyYnVmX3Jlc2V0KCZidWYpOwotCXNoYTFfZmlsZV9uYW1lKHIsICZidWYsIHNoYTEpOwotCSpwYXRoID0gYnVmLmJ1ZjsKLQotCWZkID0gZ2l0X29wZW4oKnBhdGgpOwotCWlmIChmZCA+PSAwKQotCQlyZXR1cm4gZmQ7Ci0JbW9zdF9pbnRlcmVzdGluZ19lcnJubyA9IGVycm5vOwotCiAJcHJlcGFyZV9hbHRfb2RiKHIpOwotCWZvciAoYWx0ID0gci0+b2JqZWN0cy0+YWx0X29kYl9saXN0OyBhbHQ7IGFsdCA9IGFsdC0+bmV4dCkgewotCQkqcGF0aCA9IGFsdF9zaGExX3BhdGgoYWx0LCBzaGExKTsKKwlmb3IgKG9kYiA9IHItPm9iamVjdHMtPm9kYjsgb2RiOyBvZGIgPSBvZGItPm5leHQpIHsKKwkJKnBhdGggPSBvZGJfbG9vc2VfcGF0aChvZGIsICZidWYsIG9pZCk7CiAJCWZkID0gZ2l0X29wZW4oKnBhdGgpOwogCQlpZiAoZmQgPj0gMCkKIAkJCXJldHVybiBmZDsKKwogCQlpZiAobW9zdF9pbnRlcmVzdGluZ19lcnJubyA9PSBFTk9FTlQpCiAJCQltb3N0X2ludGVyZXN0aW5nX2Vycm5vID0gZXJybm87CiAJfQpAQCAtOTQ4LDEyICsxMDg1LDI1IEBACiAJcmV0dXJuIC0xOwogfQogCitzdGF0aWMgaW50IHF1aWNrX2hhc19sb29zZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKK3sKKwlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiOworCisJcHJlcGFyZV9hbHRfb2RiKHIpOworCWZvciAob2RiID0gci0+b2JqZWN0cy0+b2RiOyBvZGI7IG9kYiA9IG9kYi0+bmV4dCkgeworCQlpZiAob2lkX2FycmF5X2xvb2t1cChvZGJfbG9vc2VfY2FjaGUob2RiLCBvaWQpLCBvaWQpID49IDApCisJCQlyZXR1cm4gMTsKKwl9CisJcmV0dXJuIDA7Cit9CisKIC8qCiAgKiBNYXAgdGhlIGxvb3NlIG9iamVjdCBhdCAicGF0aCIgaWYgaXQgaXMgbm90IE5VTEwsIG9yIHRoZSBwYXRoIGZvdW5kIGJ5Ci0gKiBzZWFyY2hpbmcgZm9yIGEgbG9vc2Ugb2JqZWN0IG5hbWVkICJzaGExIi4KKyAqIHNlYXJjaGluZyBmb3IgYSBsb29zZSBvYmplY3QgbmFtZWQgIm9pZCIuCiAgKi8KLXN0YXRpYyB2b2lkICptYXBfc2hhMV9maWxlXzEoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKnBhdGgsCi0JCQkgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsIHVuc2lnbmVkIGxvbmcgKnNpemUpCitzdGF0aWMgdm9pZCAqbWFwX2xvb3NlX29iamVjdF8xKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpwYXRoLAorCQkJICAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHVuc2lnbmVkIGxvbmcgKnNpemUpCiB7CiAJdm9pZCAqbWFwOwogCWludCBmZDsKQEAgLTk2MSw3ICsxMTExLDcgQEAKIAlpZiAocGF0aCkKIAkJZmQgPSBnaXRfb3BlbihwYXRoKTsKIAllbHNlCi0JCWZkID0gb3Blbl9zaGExX2ZpbGUociwgc2hhMSwgJnBhdGgpOworCQlmZCA9IG9wZW5fbG9vc2Vfb2JqZWN0KHIsIG9pZCwgJnBhdGgpOwogCW1hcCA9IE5VTEw7CiAJaWYgKGZkID49IDApIHsKIAkJc3RydWN0IHN0YXQgc3Q7CkBAIC05NzEsNiArMTEyMSw3IEBACiAJCQlpZiAoISpzaXplKSB7CiAJCQkJLyogbW1hcCgpIGlzIGZvcmJpZGRlbiBvbiBlbXB0eSBmaWxlcyAqLwogCQkJCWVycm9yKF8oIm9iamVjdCBmaWxlICVzIGlzIGVtcHR5IiksIHBhdGgpOworCQkJCWNsb3NlKGZkKTsKIAkJCQlyZXR1cm4gTlVMTDsKIAkJCX0KIAkJCW1hcCA9IHhtbWFwKE5VTEwsICpzaXplLCBQUk9UX1JFQUQsIE1BUF9QUklWQVRFLCBmZCwgMCk7CkBAIC05ODAsMTYgKzExMzEsMTkgQEAKIAlyZXR1cm4gbWFwOwogfQogCi12b2lkICptYXBfc2hhMV9maWxlKHN0cnVjdCByZXBvc2l0b3J5ICpyLAotCQkgICAgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwgdW5zaWduZWQgbG9uZyAqc2l6ZSkKK3ZvaWQgKm1hcF9sb29zZV9vYmplY3Qoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCSAgICAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCSAgICAgICB1bnNpZ25lZCBsb25nICpzaXplKQogewotCXJldHVybiBtYXBfc2hhMV9maWxlXzEociwgTlVMTCwgc2hhMSwgc2l6ZSk7CisJcmV0dXJuIG1hcF9sb29zZV9vYmplY3RfMShyLCBOVUxMLCBvaWQsIHNpemUpOwogfQogCi1zdGF0aWMgaW50IHVucGFja19zaGExX3Nob3J0X2hlYWRlcihnaXRfenN0cmVhbSAqc3RyZWFtLAotCQkJCSAgICB1bnNpZ25lZCBjaGFyICptYXAsIHVuc2lnbmVkIGxvbmcgbWFwc2l6ZSwKLQkJCQkgICAgdm9pZCAqYnVmZmVyLCB1bnNpZ25lZCBsb25nIGJ1ZnNpeikKK3N0YXRpYyBpbnQgdW5wYWNrX2xvb3NlX3Nob3J0X2hlYWRlcihnaXRfenN0cmVhbSAqc3RyZWFtLAorCQkJCSAgICAgdW5zaWduZWQgY2hhciAqbWFwLCB1bnNpZ25lZCBsb25nIG1hcHNpemUsCisJCQkJICAgICB2b2lkICpidWZmZXIsIHVuc2lnbmVkIGxvbmcgYnVmc2l6KQogeworCWludCByZXQ7CisKIAkvKiBHZXQgdGhlIGRhdGEgc3RyZWFtICovCiAJbWVtc2V0KHN0cmVhbSwgMCwgc2l6ZW9mKCpzdHJlYW0pKTsKIAlzdHJlYW0tPm5leHRfaW4gPSBtYXA7CkBAIC05OTgsMTUgKzExNTIsMTkgQEAKIAlzdHJlYW0tPmF2YWlsX291dCA9IGJ1ZnNpejsKIAogCWdpdF9pbmZsYXRlX2luaXQoc3RyZWFtKTsKLQlyZXR1cm4gZ2l0X2luZmxhdGUoc3RyZWFtLCAwKTsKKwlvYmpfcmVhZF91bmxvY2soKTsKKwlyZXQgPSBnaXRfaW5mbGF0ZShzdHJlYW0sIDApOworCW9ial9yZWFkX2xvY2soKTsKKworCXJldHVybiByZXQ7CiB9CiAKLWludCB1bnBhY2tfc2hhMV9oZWFkZXIoZ2l0X3pzdHJlYW0gKnN0cmVhbSwKLQkJICAgICAgIHVuc2lnbmVkIGNoYXIgKm1hcCwgdW5zaWduZWQgbG9uZyBtYXBzaXplLAotCQkgICAgICAgdm9pZCAqYnVmZmVyLCB1bnNpZ25lZCBsb25nIGJ1ZnNpeikKK2ludCB1bnBhY2tfbG9vc2VfaGVhZGVyKGdpdF96c3RyZWFtICpzdHJlYW0sCisJCQl1bnNpZ25lZCBjaGFyICptYXAsIHVuc2lnbmVkIGxvbmcgbWFwc2l6ZSwKKwkJCXZvaWQgKmJ1ZmZlciwgdW5zaWduZWQgbG9uZyBidWZzaXopCiB7Ci0JaW50IHN0YXR1cyA9IHVucGFja19zaGExX3Nob3J0X2hlYWRlcihzdHJlYW0sIG1hcCwgbWFwc2l6ZSwKLQkJCQkJICAgICAgYnVmZmVyLCBidWZzaXopOworCWludCBzdGF0dXMgPSB1bnBhY2tfbG9vc2Vfc2hvcnRfaGVhZGVyKHN0cmVhbSwgbWFwLCBtYXBzaXplLAorCQkJCQkgICAgICAgYnVmZmVyLCBidWZzaXopOwogCiAJaWYgKHN0YXR1cyA8IFpfT0spCiAJCXJldHVybiBzdGF0dXM7CkBAIC0xMDE3LDEzICsxMTc1LDEzIEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgdW5wYWNrX3NoYTFfaGVhZGVyX3RvX3N0cmJ1ZihnaXRfenN0cmVhbSAqc3RyZWFtLCB1bnNpZ25lZCBjaGFyICptYXAsCi0JCQkJCXVuc2lnbmVkIGxvbmcgbWFwc2l6ZSwgdm9pZCAqYnVmZmVyLAotCQkJCQl1bnNpZ25lZCBsb25nIGJ1ZnNpeiwgc3RydWN0IHN0cmJ1ZiAqaGVhZGVyKQorc3RhdGljIGludCB1bnBhY2tfbG9vc2VfaGVhZGVyX3RvX3N0cmJ1ZihnaXRfenN0cmVhbSAqc3RyZWFtLCB1bnNpZ25lZCBjaGFyICptYXAsCisJCQkJCSB1bnNpZ25lZCBsb25nIG1hcHNpemUsIHZvaWQgKmJ1ZmZlciwKKwkJCQkJIHVuc2lnbmVkIGxvbmcgYnVmc2l6LCBzdHJ1Y3Qgc3RyYnVmICpoZWFkZXIpCiB7CiAJaW50IHN0YXR1czsKIAotCXN0YXR1cyA9IHVucGFja19zaGExX3Nob3J0X2hlYWRlcihzdHJlYW0sIG1hcCwgbWFwc2l6ZSwgYnVmZmVyLCBidWZzaXopOworCXN0YXR1cyA9IHVucGFja19sb29zZV9zaG9ydF9oZWFkZXIoc3RyZWFtLCBtYXAsIG1hcHNpemUsIGJ1ZmZlciwgYnVmc2l6KTsKIAlpZiAoc3RhdHVzIDwgWl9PSykKIAkJcmV0dXJuIC0xOwogCkBAIC0xMDQzLDcgKzEyMDEsOSBAQAogCXN0cmVhbS0+YXZhaWxfb3V0ID0gYnVmc2l6OwogCiAJZG8geworCQlvYmpfcmVhZF91bmxvY2soKTsKIAkJc3RhdHVzID0gZ2l0X2luZmxhdGUoc3RyZWFtLCAwKTsKKwkJb2JqX3JlYWRfbG9jaygpOwogCQlzdHJidWZfYWRkKGhlYWRlciwgYnVmZmVyLCBzdHJlYW0tPm5leHRfb3V0IC0gKHVuc2lnbmVkIGNoYXIgKilidWZmZXIpOwogCQlpZiAobWVtY2hyKGJ1ZmZlciwgJ1wwJywgc3RyZWFtLT5uZXh0X291dCAtICh1bnNpZ25lZCBjaGFyICopYnVmZmVyKSkKIAkJCXJldHVybiAwOwpAQCAtMTA1Myw3ICsxMjEzLDkgQEAKIAlyZXR1cm4gLTE7CiB9CiAKLXN0YXRpYyB2b2lkICp1bnBhY2tfc2hhMV9yZXN0KGdpdF96c3RyZWFtICpzdHJlYW0sIHZvaWQgKmJ1ZmZlciwgdW5zaWduZWQgbG9uZyBzaXplLCBjb25zdCB1bnNpZ25lZCBjaGFyICpzaGExKQorc3RhdGljIHZvaWQgKnVucGFja19sb29zZV9yZXN0KGdpdF96c3RyZWFtICpzdHJlYW0sCisJCQkgICAgICAgdm9pZCAqYnVmZmVyLCB1bnNpZ25lZCBsb25nIHNpemUsCisJCQkgICAgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewogCWludCBieXRlcyA9IHN0cmxlbihidWZmZXIpICsgMTsKIAl1bnNpZ25lZCBjaGFyICpidWYgPSB4bWFsbG9jeihzaXplKTsKQEAgLTEwODEsOCArMTI0MywxMSBAQAogCQkgKi8KIAkJc3RyZWFtLT5uZXh0X291dCA9IGJ1ZiArIGJ5dGVzOwogCQlzdHJlYW0tPmF2YWlsX291dCA9IHNpemUgLSBieXRlczsKLQkJd2hpbGUgKHN0YXR1cyA9PSBaX09LKQorCQl3aGlsZSAoc3RhdHVzID09IFpfT0spIHsKKwkJCW9ial9yZWFkX3VubG9jaygpOwogCQkJc3RhdHVzID0gZ2l0X2luZmxhdGUoc3RyZWFtLCBaX0ZJTklTSCk7CisJCQlvYmpfcmVhZF9sb2NrKCk7CisJCX0KIAl9CiAJaWYgKHN0YXR1cyA9PSBaX1NUUkVBTV9FTkQgJiYgIXN0cmVhbS0+YXZhaWxfaW4pIHsKIAkJZ2l0X2luZmxhdGVfZW5kKHN0cmVhbSk7CkBAIC0xMDkwLDEwICsxMjU1LDEwIEBACiAJfQogCiAJaWYgKHN0YXR1cyA8IDApCi0JCWVycm9yKF8oImNvcnJ1cHQgbG9vc2Ugb2JqZWN0ICclcyciKSwgc2hhMV90b19oZXgoc2hhMSkpOworCQllcnJvcihfKCJjb3JydXB0IGxvb3NlIG9iamVjdCAnJXMnIiksIG9pZF90b19oZXgob2lkKSk7CiAJZWxzZSBpZiAoc3RyZWFtLT5hdmFpbF9pbikKIAkJZXJyb3IoXygiZ2FyYmFnZSBhdCBlbmQgb2YgbG9vc2Ugb2JqZWN0ICclcyciKSwKLQkJICAgICAgc2hhMV90b19oZXgoc2hhMSkpOworCQkgICAgICBvaWRfdG9faGV4KG9pZCkpOwogCWZyZWUoYnVmKTsKIAlyZXR1cm4gTlVMTDsKIH0KQEAgLTExMDMsOCArMTI2OCw4IEBACiAgKiB0b28gcGVybWlzc2l2ZSBmb3Igd2hhdCB3ZSB3YW50IHRvIGNoZWNrLiBTbyBkbyBhbiBhbmFsCiAgKiBvYmplY3QgaGVhZGVyIHBhcnNlIGJ5IGhhbmQuCiAgKi8KLXN0YXRpYyBpbnQgcGFyc2Vfc2hhMV9oZWFkZXJfZXh0ZW5kZWQoY29uc3QgY2hhciAqaGRyLCBzdHJ1Y3Qgb2JqZWN0X2luZm8gKm9pLAotCQkJICAgICAgIHVuc2lnbmVkIGludCBmbGFncykKK3N0YXRpYyBpbnQgcGFyc2VfbG9vc2VfaGVhZGVyX2V4dGVuZGVkKGNvbnN0IGNoYXIgKmhkciwgc3RydWN0IG9iamVjdF9pbmZvICpvaSwKKwkJCQkgICAgICAgdW5zaWduZWQgaW50IGZsYWdzKQogewogCWNvbnN0IGNoYXIgKnR5cGVfYnVmID0gaGRyOwogCXVuc2lnbmVkIGxvbmcgc2l6ZTsKQEAgLTExNjQsMTcgKzEzMjksMTcgQEAKIAlyZXR1cm4gKmhkciA/IC0xIDogdHlwZTsKIH0KIAotaW50IHBhcnNlX3NoYTFfaGVhZGVyKGNvbnN0IGNoYXIgKmhkciwgdW5zaWduZWQgbG9uZyAqc2l6ZXApCitpbnQgcGFyc2VfbG9vc2VfaGVhZGVyKGNvbnN0IGNoYXIgKmhkciwgdW5zaWduZWQgbG9uZyAqc2l6ZXApCiB7CiAJc3RydWN0IG9iamVjdF9pbmZvIG9pID0gT0JKRUNUX0lORk9fSU5JVDsKIAogCW9pLnNpemVwID0gc2l6ZXA7Ci0JcmV0dXJuIHBhcnNlX3NoYTFfaGVhZGVyX2V4dGVuZGVkKGhkciwgJm9pLCAwKTsKKwlyZXR1cm4gcGFyc2VfbG9vc2VfaGVhZGVyX2V4dGVuZGVkKGhkciwgJm9pLCAwKTsKIH0KIAotc3RhdGljIGludCBzaGExX2xvb3NlX29iamVjdF9pbmZvKHN0cnVjdCByZXBvc2l0b3J5ICpyLAotCQkJCSAgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwKLQkJCQkgIHN0cnVjdCBvYmplY3RfaW5mbyAqb2ksIGludCBmbGFncykKK3N0YXRpYyBpbnQgbG9vc2Vfb2JqZWN0X2luZm8oc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCSAgICAgc3RydWN0IG9iamVjdF9pbmZvICpvaSwgaW50IGZsYWdzKQogewogCWludCBzdGF0dXMgPSAwOwogCXVuc2lnbmVkIGxvbmcgbWFwc2l6ZTsKQEAgLTExODQsOCArMTM0OSw4IEBACiAJc3RydWN0IHN0cmJ1ZiBoZHJidWYgPSBTVFJCVUZfSU5JVDsKIAl1bnNpZ25lZCBsb25nIHNpemVfc2NyYXRjaDsKIAotCWlmIChvaS0+ZGVsdGFfYmFzZV9zaGExKQotCQloYXNoY2xyKG9pLT5kZWx0YV9iYXNlX3NoYTEpOworCWlmIChvaS0+ZGVsdGFfYmFzZV9vaWQpCisJCW9pZGNscihvaS0+ZGVsdGFfYmFzZV9vaWQpOwogCiAJLyoKIAkgKiBJZiB3ZSBkb24ndCBjYXJlIGFib3V0IHR5cGUgb3Igc2l6ZSwgdGhlbiB3ZSBkb24ndApAQCAtMTE5OCwxNCArMTM2MywxNiBAQAogCWlmICghb2ktPnR5cGVwICYmICFvaS0+dHlwZV9uYW1lICYmICFvaS0+c2l6ZXAgJiYgIW9pLT5jb250ZW50cCkgewogCQljb25zdCBjaGFyICpwYXRoOwogCQlzdHJ1Y3Qgc3RhdCBzdDsKLQkJaWYgKHN0YXRfc2hhMV9maWxlKHIsIHNoYTEsICZzdCwgJnBhdGgpIDwgMCkKKwkJaWYgKCFvaS0+ZGlza19zaXplcCAmJiAoZmxhZ3MgJiBPQkpFQ1RfSU5GT19RVUlDSykpCisJCQlyZXR1cm4gcXVpY2tfaGFzX2xvb3NlKHIsIG9pZCkgPyAwIDogLTE7CisJCWlmIChzdGF0X2xvb3NlX29iamVjdChyLCBvaWQsICZzdCwgJnBhdGgpIDwgMCkKIAkJCXJldHVybiAtMTsKIAkJaWYgKG9pLT5kaXNrX3NpemVwKQogCQkJKm9pLT5kaXNrX3NpemVwID0gc3Quc3Rfc2l6ZTsKIAkJcmV0dXJuIDA7CiAJfQogCi0JbWFwID0gbWFwX3NoYTFfZmlsZShyLCBzaGExLCAmbWFwc2l6ZSk7CisJbWFwID0gbWFwX2xvb3NlX29iamVjdChyLCBvaWQsICZtYXBzaXplKTsKIAlpZiAoIW1hcCkKIAkJcmV0dXJuIC0xOwogCkBAIC0xMjE1LDI0ICsxMzgyLDI0IEBACiAJaWYgKG9pLT5kaXNrX3NpemVwKQogCQkqb2ktPmRpc2tfc2l6ZXAgPSBtYXBzaXplOwogCWlmICgoZmxhZ3MgJiBPQkpFQ1RfSU5GT19BTExPV19VTktOT1dOX1RZUEUpKSB7Ci0JCWlmICh1bnBhY2tfc2hhMV9oZWFkZXJfdG9fc3RyYnVmKCZzdHJlYW0sIG1hcCwgbWFwc2l6ZSwgaGRyLCBzaXplb2YoaGRyKSwgJmhkcmJ1ZikgPCAwKQorCQlpZiAodW5wYWNrX2xvb3NlX2hlYWRlcl90b19zdHJidWYoJnN0cmVhbSwgbWFwLCBtYXBzaXplLCBoZHIsIHNpemVvZihoZHIpLCAmaGRyYnVmKSA8IDApCiAJCQlzdGF0dXMgPSBlcnJvcihfKCJ1bmFibGUgdG8gdW5wYWNrICVzIGhlYWRlciB3aXRoIC0tYWxsb3ctdW5rbm93bi10eXBlIiksCi0JCQkJICAgICAgIHNoYTFfdG9faGV4KHNoYTEpKTsKLQl9IGVsc2UgaWYgKHVucGFja19zaGExX2hlYWRlcigmc3RyZWFtLCBtYXAsIG1hcHNpemUsIGhkciwgc2l6ZW9mKGhkcikpIDwgMCkKKwkJCQkgICAgICAgb2lkX3RvX2hleChvaWQpKTsKKwl9IGVsc2UgaWYgKHVucGFja19sb29zZV9oZWFkZXIoJnN0cmVhbSwgbWFwLCBtYXBzaXplLCBoZHIsIHNpemVvZihoZHIpKSA8IDApCiAJCXN0YXR1cyA9IGVycm9yKF8oInVuYWJsZSB0byB1bnBhY2sgJXMgaGVhZGVyIiksCi0JCQkgICAgICAgc2hhMV90b19oZXgoc2hhMSkpOworCQkJICAgICAgIG9pZF90b19oZXgob2lkKSk7CiAJaWYgKHN0YXR1cyA8IDApCiAJCTsgLyogRG8gbm90aGluZyAqLwogCWVsc2UgaWYgKGhkcmJ1Zi5sZW4pIHsKLQkJaWYgKChzdGF0dXMgPSBwYXJzZV9zaGExX2hlYWRlcl9leHRlbmRlZChoZHJidWYuYnVmLCBvaSwgZmxhZ3MpKSA8IDApCisJCWlmICgoc3RhdHVzID0gcGFyc2VfbG9vc2VfaGVhZGVyX2V4dGVuZGVkKGhkcmJ1Zi5idWYsIG9pLCBmbGFncykpIDwgMCkKIAkJCXN0YXR1cyA9IGVycm9yKF8oInVuYWJsZSB0byBwYXJzZSAlcyBoZWFkZXIgd2l0aCAtLWFsbG93LXVua25vd24tdHlwZSIpLAotCQkJCSAgICAgICBzaGExX3RvX2hleChzaGExKSk7Ci0JfSBlbHNlIGlmICgoc3RhdHVzID0gcGFyc2Vfc2hhMV9oZWFkZXJfZXh0ZW5kZWQoaGRyLCBvaSwgZmxhZ3MpKSA8IDApCi0JCXN0YXR1cyA9IGVycm9yKF8oInVuYWJsZSB0byBwYXJzZSAlcyBoZWFkZXIiKSwgc2hhMV90b19oZXgoc2hhMSkpOworCQkJCSAgICAgICBvaWRfdG9faGV4KG9pZCkpOworCX0gZWxzZSBpZiAoKHN0YXR1cyA9IHBhcnNlX2xvb3NlX2hlYWRlcl9leHRlbmRlZChoZHIsIG9pLCBmbGFncykpIDwgMCkKKwkJc3RhdHVzID0gZXJyb3IoXygidW5hYmxlIHRvIHBhcnNlICVzIGhlYWRlciIpLCBvaWRfdG9faGV4KG9pZCkpOwogCiAJaWYgKHN0YXR1cyA+PSAwICYmIG9pLT5jb250ZW50cCkgewotCQkqb2ktPmNvbnRlbnRwID0gdW5wYWNrX3NoYTFfcmVzdCgmc3RyZWFtLCBoZHIsCi0JCQkJCQkgKm9pLT5zaXplcCwgc2hhMSk7CisJCSpvaS0+Y29udGVudHAgPSB1bnBhY2tfbG9vc2VfcmVzdCgmc3RyZWFtLCBoZHIsCisJCQkJCQkgICpvaS0+c2l6ZXAsIG9pZCk7CiAJCWlmICghKm9pLT5jb250ZW50cCkgewogCQkJZ2l0X2luZmxhdGVfZW5kKCZzdHJlYW0pOwogCQkJc3RhdHVzID0gLTE7CkBAIC0xMjUwLDE3ICsxNDE3LDQxIEBACiAJcmV0dXJuIChzdGF0dXMgPCAwKSA/IHN0YXR1cyA6IDA7CiB9CiAKK2ludCBvYmpfcmVhZF91c2VfbG9jayA9IDA7CitwdGhyZWFkX211dGV4X3Qgb2JqX3JlYWRfbXV0ZXg7CisKK3ZvaWQgZW5hYmxlX29ial9yZWFkX2xvY2sodm9pZCkKK3sKKwlpZiAob2JqX3JlYWRfdXNlX2xvY2spCisJCXJldHVybjsKKworCW9ial9yZWFkX3VzZV9sb2NrID0gMTsKKwlpbml0X3JlY3Vyc2l2ZV9tdXRleCgmb2JqX3JlYWRfbXV0ZXgpOworfQorCit2b2lkIGRpc2FibGVfb2JqX3JlYWRfbG9jayh2b2lkKQoreworCWlmICghb2JqX3JlYWRfdXNlX2xvY2spCisJCXJldHVybjsKKworCW9ial9yZWFkX3VzZV9sb2NrID0gMDsKKwlwdGhyZWFkX211dGV4X2Rlc3Ryb3koJm9ial9yZWFkX211dGV4KTsKK30KKwogaW50IGZldGNoX2lmX21pc3NpbmcgPSAxOwogCi1pbnQgb2lkX29iamVjdF9pbmZvX2V4dGVuZGVkKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCi0JCQkgICAgIHN0cnVjdCBvYmplY3RfaW5mbyAqb2ksIHVuc2lnbmVkIGZsYWdzKQorc3RhdGljIGludCBkb19vaWRfb2JqZWN0X2luZm9fZXh0ZW5kZWQoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJICAgICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCQkgICAgICAgc3RydWN0IG9iamVjdF9pbmZvICpvaSwgdW5zaWduZWQgZmxhZ3MpCiB7CiAJc3RhdGljIHN0cnVjdCBvYmplY3RfaW5mbyBibGFua19vaSA9IE9CSkVDVF9JTkZPX0lOSVQ7CisJc3RydWN0IGNhY2hlZF9vYmplY3QgKmNvOwogCXN0cnVjdCBwYWNrX2VudHJ5IGU7CiAJaW50IHJ0eXBlOwogCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKnJlYWwgPSBvaWQ7CiAJaW50IGFscmVhZHlfcmV0cmllZCA9IDA7CiAKKwogCWlmIChmbGFncyAmIE9CSkVDVF9JTkZPX0xPT0tVUF9SRVBMQUNFKQogCQlyZWFsID0gbG9va3VwX3JlcGxhY2Vfb2JqZWN0KHIsIG9pZCk7CiAKQEAgLTEyNzAsMjQgKzE0NjEsMjIgQEAKIAlpZiAoIW9pKQogCQlvaSA9ICZibGFua19vaTsKIAotCWlmICghKGZsYWdzICYgT0JKRUNUX0lORk9fU0tJUF9DQUNIRUQpKSB7Ci0JCXN0cnVjdCBjYWNoZWRfb2JqZWN0ICpjbyA9IGZpbmRfY2FjaGVkX29iamVjdChyZWFsKTsKLQkJaWYgKGNvKSB7Ci0JCQlpZiAob2ktPnR5cGVwKQotCQkJCSoob2ktPnR5cGVwKSA9IGNvLT50eXBlOwotCQkJaWYgKG9pLT5zaXplcCkKLQkJCQkqKG9pLT5zaXplcCkgPSBjby0+c2l6ZTsKLQkJCWlmIChvaS0+ZGlza19zaXplcCkKLQkJCQkqKG9pLT5kaXNrX3NpemVwKSA9IDA7Ci0JCQlpZiAob2ktPmRlbHRhX2Jhc2Vfc2hhMSkKLQkJCQloYXNoY2xyKG9pLT5kZWx0YV9iYXNlX3NoYTEpOwotCQkJaWYgKG9pLT50eXBlX25hbWUpCi0JCQkJc3RyYnVmX2FkZHN0cihvaS0+dHlwZV9uYW1lLCB0eXBlX25hbWUoY28tPnR5cGUpKTsKLQkJCWlmIChvaS0+Y29udGVudHApCi0JCQkJKm9pLT5jb250ZW50cCA9IHhtZW1kdXB6KGNvLT5idWYsIGNvLT5zaXplKTsKLQkJCW9pLT53aGVuY2UgPSBPSV9DQUNIRUQ7Ci0JCQlyZXR1cm4gMDsKLQkJfQorCWNvID0gZmluZF9jYWNoZWRfb2JqZWN0KHJlYWwpOworCWlmIChjbykgeworCQlpZiAob2ktPnR5cGVwKQorCQkJKihvaS0+dHlwZXApID0gY28tPnR5cGU7CisJCWlmIChvaS0+c2l6ZXApCisJCQkqKG9pLT5zaXplcCkgPSBjby0+c2l6ZTsKKwkJaWYgKG9pLT5kaXNrX3NpemVwKQorCQkJKihvaS0+ZGlza19zaXplcCkgPSAwOworCQlpZiAob2ktPmRlbHRhX2Jhc2Vfb2lkKQorCQkJb2lkY2xyKG9pLT5kZWx0YV9iYXNlX29pZCk7CisJCWlmIChvaS0+dHlwZV9uYW1lKQorCQkJc3RyYnVmX2FkZHN0cihvaS0+dHlwZV9uYW1lLCB0eXBlX25hbWUoY28tPnR5cGUpKTsKKwkJaWYgKG9pLT5jb250ZW50cCkKKwkJCSpvaS0+Y29udGVudHAgPSB4bWVtZHVweihjby0+YnVmLCBjby0+c2l6ZSk7CisJCW9pLT53aGVuY2UgPSBPSV9DQUNIRUQ7CisJCXJldHVybiAwOwogCX0KIAogCXdoaWxlICgxKSB7CkBAIC0xMjk4LDcgKzE0ODcsNyBAQAogCQkJcmV0dXJuIC0xOwogCiAJCS8qIE1vc3QgbGlrZWx5IGl0J3MgYSBsb29zZSBvYmplY3QuICovCi0JCWlmICghc2hhMV9sb29zZV9vYmplY3RfaW5mbyhyLCByZWFsLT5oYXNoLCBvaSwgZmxhZ3MpKQorCQlpZiAoIWxvb3NlX29iamVjdF9pbmZvKHIsIHJlYWwsIG9pLCBmbGFncykpCiAJCQlyZXR1cm4gMDsKIAogCQkvKiBOb3QgYSBsb29zZSBvYmplY3Q7IHNvbWVvbmUgZWxzZSBtYXkgaGF2ZSBqdXN0IHBhY2tlZCBpdC4gKi8KQEAgLTEzMDksMTUgKzE0OTgsMTcgQEAKIAkJfQogCiAJCS8qIENoZWNrIGlmIGl0IGlzIGEgbWlzc2luZyBvYmplY3QgKi8KLQkJaWYgKGZldGNoX2lmX21pc3NpbmcgJiYgcmVwb3NpdG9yeV9mb3JtYXRfcGFydGlhbF9jbG9uZSAmJgotCQkgICAgIWFscmVhZHlfcmV0cmllZCAmJiByID09IHRoZV9yZXBvc2l0b3J5KSB7CisJCWlmIChmZXRjaF9pZl9taXNzaW5nICYmIGhhc19wcm9taXNvcl9yZW1vdGUoKSAmJgorCQkgICAgIWFscmVhZHlfcmV0cmllZCAmJiByID09IHRoZV9yZXBvc2l0b3J5ICYmCisJCSAgICAhKGZsYWdzICYgT0JKRUNUX0lORk9fU0tJUF9GRVRDSF9PQkpFQ1QpKSB7CiAJCQkvKgotCQkJICogVE9ETyBJbnZlc3RpZ2F0ZSBoYXZpbmcgZmV0Y2hfb2JqZWN0KCkgcmV0dXJuCi0JCQkgKiBUT0RPIGVycm9yL3N1Y2Nlc3MgYW5kIHN0b3BwaW5nIHRoZSBtdXNpYyBoZXJlLgotCQkJICogVE9ETyBQYXNzIGEgcmVwb3NpdG9yeSBzdHJ1Y3QgdGhyb3VnaCBmZXRjaF9vYmplY3QsCi0JCQkgKiBzdWNoIHRoYXQgYXJiaXRyYXJ5IHJlcG9zaXRvcmllcyB3b3JrLgorCQkJICogVE9ETyBJbnZlc3RpZ2F0ZSBjaGVja2luZyBwcm9taXNvcl9yZW1vdGVfZ2V0X2RpcmVjdCgpCisJCQkgKiBUT0RPIHJldHVybiB2YWx1ZSBhbmQgc3RvcHBpbmcgb24gZXJyb3IgaGVyZS4KKwkJCSAqIFRPRE8gUGFzcyBhIHJlcG9zaXRvcnkgc3RydWN0IHRocm91Z2gKKwkJCSAqIHByb21pc29yX3JlbW90ZV9nZXRfZGlyZWN0KCksIHN1Y2ggdGhhdCBhcmJpdHJhcnkKKwkJCSAqIHJlcG9zaXRvcmllcyB3b3JrLgogCQkJICovCi0JCQlmZXRjaF9vYmplY3RzKHJlcG9zaXRvcnlfZm9ybWF0X3BhcnRpYWxfY2xvbmUsIHJlYWwsIDEpOworCQkJcHJvbWlzb3JfcmVtb3RlX2dldF9kaXJlY3QociwgcmVhbCwgMSk7CiAJCQlhbHJlYWR5X3JldHJpZWQgPSAxOwogCQkJY29udGludWU7CiAJCX0KQEAgLTEzMzQsNyArMTUyNSw3IEBACiAJcnR5cGUgPSBwYWNrZWRfb2JqZWN0X2luZm8ociwgZS5wLCBlLm9mZnNldCwgb2kpOwogCWlmIChydHlwZSA8IDApIHsKIAkJbWFya19iYWRfcGFja2VkX29iamVjdChlLnAsIHJlYWwtPmhhc2gpOwotCQlyZXR1cm4gb2lkX29iamVjdF9pbmZvX2V4dGVuZGVkKHIsIHJlYWwsIG9pLCAwKTsKKwkJcmV0dXJuIGRvX29pZF9vYmplY3RfaW5mb19leHRlbmRlZChyLCByZWFsLCBvaSwgMCk7CiAJfSBlbHNlIGlmIChvaS0+d2hlbmNlID09IE9JX1BBQ0tFRCkgewogCQlvaS0+dS5wYWNrZWQub2Zmc2V0ID0gZS5vZmZzZXQ7CiAJCW9pLT51LnBhY2tlZC5wYWNrID0gZS5wOwpAQCAtMTM0NSw2ICsxNTM2LDE3IEBACiAJcmV0dXJuIDA7CiB9CiAKK2ludCBvaWRfb2JqZWN0X2luZm9fZXh0ZW5kZWQoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCSAgICAgc3RydWN0IG9iamVjdF9pbmZvICpvaSwgdW5zaWduZWQgZmxhZ3MpCit7CisJaW50IHJldDsKKwlvYmpfcmVhZF9sb2NrKCk7CisJcmV0ID0gZG9fb2lkX29iamVjdF9pbmZvX2V4dGVuZGVkKHIsIG9pZCwgb2ksIGZsYWdzKTsKKwlvYmpfcmVhZF91bmxvY2soKTsKKwlyZXR1cm4gcmV0OworfQorCisKIC8qIHJldHVybnMgZW51bSBvYmplY3RfdHlwZSBvciBuZWdhdGl2ZSAqLwogaW50IG9pZF9vYmplY3RfaW5mbyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKIAkJICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKQEAgLTEzNjEsMTkgKzE1NjMsMTcgQEAKIAlyZXR1cm4gdHlwZTsKIH0KIAotc3RhdGljIHZvaWQgKnJlYWRfb2JqZWN0KGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsIGVudW0gb2JqZWN0X3R5cGUgKnR5cGUsCitzdGF0aWMgdm9pZCAqcmVhZF9vYmplY3Qoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBlbnVtIG9iamVjdF90eXBlICp0eXBlLAogCQkJIHVuc2lnbmVkIGxvbmcgKnNpemUpCiB7Ci0Jc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJc3RydWN0IG9iamVjdF9pbmZvIG9pID0gT0JKRUNUX0lORk9fSU5JVDsKIAl2b2lkICpjb250ZW50OwogCW9pLnR5cGVwID0gdHlwZTsKIAlvaS5zaXplcCA9IHNpemU7CiAJb2kuY29udGVudHAgPSAmY29udGVudDsKIAotCWhhc2hjcHkob2lkLmhhc2gsIHNoYTEpOwotCi0JaWYgKG9pZF9vYmplY3RfaW5mb19leHRlbmRlZCh0aGVfcmVwb3NpdG9yeSwgJm9pZCwgJm9pLCAwKSA8IDApCisJaWYgKG9pZF9vYmplY3RfaW5mb19leHRlbmRlZChyLCBvaWQsICZvaSwgMCkgPCAwKQogCQlyZXR1cm4gTlVMTDsKIAlyZXR1cm4gY29udGVudDsKIH0KQEAgLTEzODMsOCArMTU4Myw4IEBACiB7CiAJc3RydWN0IGNhY2hlZF9vYmplY3QgKmNvOwogCi0JaGFzaF9vYmplY3RfZmlsZShidWYsIGxlbiwgdHlwZV9uYW1lKHR5cGUpLCBvaWQpOwotCWlmIChoYXNfc2hhMV9maWxlKG9pZC0+aGFzaCkgfHwgZmluZF9jYWNoZWRfb2JqZWN0KG9pZCkpCisJaGFzaF9vYmplY3RfZmlsZSh0aGVfaGFzaF9hbGdvLCBidWYsIGxlbiwgdHlwZV9uYW1lKHR5cGUpLCBvaWQpOworCWlmIChoYXNfb2JqZWN0X2ZpbGUob2lkKSB8fCBmaW5kX2NhY2hlZF9vYmplY3Qob2lkKSkKIAkJcmV0dXJuIDA7CiAJQUxMT0NfR1JPVyhjYWNoZWRfb2JqZWN0cywgY2FjaGVkX29iamVjdF9uciArIDEsIGNhY2hlZF9vYmplY3RfYWxsb2MpOwogCWNvID0gJmNhY2hlZF9vYmplY3RzW2NhY2hlZF9vYmplY3RfbnIrK107CkBAIC0xNDAxLDcgKzE2MDEsOCBAQAogICogZGVhbCB3aXRoIHRoZW0gc2hvdWxkIGFycmFuZ2UgdG8gY2FsbCByZWFkX29iamVjdCgpIGFuZCBnaXZlIGVycm9yCiAgKiBtZXNzYWdlcyB0aGVtc2VsdmVzLgogICovCi12b2lkICpyZWFkX29iamVjdF9maWxlX2V4dGVuZGVkKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKK3ZvaWQgKnJlYWRfb2JqZWN0X2ZpbGVfZXh0ZW5kZWQoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAogCQkJCWVudW0gb2JqZWN0X3R5cGUgKnR5cGUsCiAJCQkJdW5zaWduZWQgbG9uZyAqc2l6ZSwKIAkJCQlpbnQgbG9va3VwX3JlcGxhY2UpCkBAIC0xNDExLDEzICsxNjEyLDE0IEBACiAJY29uc3QgY2hhciAqcGF0aDsKIAlzdHJ1Y3Qgc3RhdCBzdDsKIAljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpyZXBsID0gbG9va3VwX3JlcGxhY2UgPwotCQlsb29rdXBfcmVwbGFjZV9vYmplY3QodGhlX3JlcG9zaXRvcnksIG9pZCkgOiBvaWQ7CisJCWxvb2t1cF9yZXBsYWNlX29iamVjdChyLCBvaWQpIDogb2lkOwogCiAJZXJybm8gPSAwOwotCWRhdGEgPSByZWFkX29iamVjdChyZXBsLT5oYXNoLCB0eXBlLCBzaXplKTsKKwlkYXRhID0gcmVhZF9vYmplY3QociwgcmVwbCwgdHlwZSwgc2l6ZSk7CiAJaWYgKGRhdGEpCiAJCXJldHVybiBkYXRhOwogCisJb2JqX3JlYWRfbG9jaygpOwogCWlmIChlcnJubyAmJiBlcnJubyAhPSBFTk9FTlQpCiAJCWRpZV9lcnJubyhfKCJmYWlsZWQgdG8gcmVhZCBvYmplY3QgJXMiKSwgb2lkX3RvX2hleChvaWQpKTsKIApAQCAtMTQyNiwxOCArMTYyOCwyMCBAQAogCQlkaWUoXygicmVwbGFjZW1lbnQgJXMgbm90IGZvdW5kIGZvciAlcyIpLAogCQkgICAgb2lkX3RvX2hleChyZXBsKSwgb2lkX3RvX2hleChvaWQpKTsKIAotCWlmICghc3RhdF9zaGExX2ZpbGUodGhlX3JlcG9zaXRvcnksIHJlcGwtPmhhc2gsICZzdCwgJnBhdGgpKQorCWlmICghc3RhdF9sb29zZV9vYmplY3QociwgcmVwbCwgJnN0LCAmcGF0aCkpCiAJCWRpZShfKCJsb29zZSBvYmplY3QgJXMgKHN0b3JlZCBpbiAlcykgaXMgY29ycnVwdCIpLAogCQkgICAgb2lkX3RvX2hleChyZXBsKSwgcGF0aCk7CiAKLQlpZiAoKHAgPSBoYXNfcGFja2VkX2FuZF9iYWQocmVwbC0+aGFzaCkpICE9IE5VTEwpCisJaWYgKChwID0gaGFzX3BhY2tlZF9hbmRfYmFkKHIsIHJlcGwtPmhhc2gpKSAhPSBOVUxMKQogCQlkaWUoXygicGFja2VkIG9iamVjdCAlcyAoc3RvcmVkIGluICVzKSBpcyBjb3JydXB0IiksCiAJCSAgICBvaWRfdG9faGV4KHJlcGwpLCBwLT5wYWNrX25hbWUpOworCW9ial9yZWFkX3VubG9jaygpOwogCiAJcmV0dXJuIE5VTEw7CiB9CiAKLXZvaWQgKnJlYWRfb2JqZWN0X3dpdGhfcmVmZXJlbmNlKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKK3ZvaWQgKnJlYWRfb2JqZWN0X3dpdGhfcmVmZXJlbmNlKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCiAJCQkJIGNvbnN0IGNoYXIgKnJlcXVpcmVkX3R5cGVfbmFtZSwKIAkJCQkgdW5zaWduZWQgbG9uZyAqc2l6ZSwKIAkJCQkgc3RydWN0IG9iamVjdF9pZCAqYWN0dWFsX29pZF9yZXR1cm4pCkBAIC0xNDUzLDcgKzE2NTcsNyBAQAogCQlpbnQgcmVmX2xlbmd0aCA9IC0xOwogCQljb25zdCBjaGFyICpyZWZfdHlwZSA9IE5VTEw7CiAKLQkJYnVmZmVyID0gcmVhZF9vYmplY3RfZmlsZSgmYWN0dWFsX29pZCwgJnR5cGUsICZpc2l6ZSk7CisJCWJ1ZmZlciA9IHJlcG9fcmVhZF9vYmplY3RfZmlsZShyLCAmYWN0dWFsX29pZCwgJnR5cGUsICZpc2l6ZSk7CiAJCWlmICghYnVmZmVyKQogCQkJcmV0dXJuIE5VTEw7CiAJCWlmICh0eXBlID09IHJlcXVpcmVkX3R5cGUpIHsKQEAgLTE0ODUsNyArMTY4OSw4IEBACiAJfQogfQogCi1zdGF0aWMgdm9pZCB3cml0ZV9vYmplY3RfZmlsZV9wcmVwYXJlKGNvbnN0IHZvaWQgKmJ1ZiwgdW5zaWduZWQgbG9uZyBsZW4sCitzdGF0aWMgdm9pZCB3cml0ZV9vYmplY3RfZmlsZV9wcmVwYXJlKGNvbnN0IHN0cnVjdCBnaXRfaGFzaF9hbGdvICphbGdvLAorCQkJCSAgICAgIGNvbnN0IHZvaWQgKmJ1ZiwgdW5zaWduZWQgbG9uZyBsZW4sCiAJCQkJICAgICAgY29uc3QgY2hhciAqdHlwZSwgc3RydWN0IG9iamVjdF9pZCAqb2lkLAogCQkJCSAgICAgIGNoYXIgKmhkciwgaW50ICpoZHJsZW4pCiB7CkBAIC0xNDk1LDEwICsxNzAwLDEwIEBACiAJKmhkcmxlbiA9IHhzbnByaW50ZihoZHIsICpoZHJsZW4sICIlcyAlIlBSSXVNQVggLCB0eXBlLCAodWludG1heF90KWxlbikrMTsKIAogCS8qIFNoYTEuLiAqLwotCXRoZV9oYXNoX2FsZ28tPmluaXRfZm4oJmMpOwotCXRoZV9oYXNoX2FsZ28tPnVwZGF0ZV9mbigmYywgaGRyLCAqaGRybGVuKTsKLQl0aGVfaGFzaF9hbGdvLT51cGRhdGVfZm4oJmMsIGJ1ZiwgbGVuKTsKLQl0aGVfaGFzaF9hbGdvLT5maW5hbF9mbihvaWQtPmhhc2gsICZjKTsKKwlhbGdvLT5pbml0X2ZuKCZjKTsKKwlhbGdvLT51cGRhdGVfZm4oJmMsIGhkciwgKmhkcmxlbik7CisJYWxnby0+dXBkYXRlX2ZuKCZjLCBidWYsIGxlbik7CisJYWxnby0+ZmluYWxfZm4ob2lkLT5oYXNoLCAmYyk7CiB9CiAKIC8qCkBAIC0xNTMzLDcgKzE3MzgsNyBAQAogCXVubGlua19vcl93YXJuKHRtcGZpbGUpOwogCWlmIChyZXQpIHsKIAkJaWYgKHJldCAhPSBFRVhJU1QpIHsKLQkJCXJldHVybiBlcnJvcl9lcnJubyhfKCJ1bmFibGUgdG8gd3JpdGUgc2hhMSBmaWxlbmFtZSAlcyIpLCBmaWxlbmFtZSk7CisJCQlyZXR1cm4gZXJyb3JfZXJybm8oXygidW5hYmxlIHRvIHdyaXRlIGZpbGUgJXMiKSwgZmlsZW5hbWUpOwogCQl9CiAJCS8qIEZJWE1FISEhIENvbGxpc2lvbiBjaGVjayBoZXJlID8gKi8KIAl9CkBAIC0xNTUxLDIyICsxNzU2LDIzIEBACiAJcmV0dXJuIDA7CiB9CiAKLWludCBoYXNoX29iamVjdF9maWxlKGNvbnN0IHZvaWQgKmJ1ZiwgdW5zaWduZWQgbG9uZyBsZW4sIGNvbnN0IGNoYXIgKnR5cGUsCitpbnQgaGFzaF9vYmplY3RfZmlsZShjb25zdCBzdHJ1Y3QgZ2l0X2hhc2hfYWxnbyAqYWxnbywgY29uc3Qgdm9pZCAqYnVmLAorCQkgICAgIHVuc2lnbmVkIGxvbmcgbGVuLCBjb25zdCBjaGFyICp0eXBlLAogCQkgICAgIHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAljaGFyIGhkcltNQVhfSEVBREVSX0xFTl07CiAJaW50IGhkcmxlbiA9IHNpemVvZihoZHIpOwotCXdyaXRlX29iamVjdF9maWxlX3ByZXBhcmUoYnVmLCBsZW4sIHR5cGUsIG9pZCwgaGRyLCAmaGRybGVuKTsKKwl3cml0ZV9vYmplY3RfZmlsZV9wcmVwYXJlKGFsZ28sIGJ1ZiwgbGVuLCB0eXBlLCBvaWQsIGhkciwgJmhkcmxlbik7CiAJcmV0dXJuIDA7CiB9CiAKIC8qIEZpbmFsaXplIGEgZmlsZSBvbiBkaXNrLCBhbmQgY2xvc2UgaXQuICovCi1zdGF0aWMgdm9pZCBjbG9zZV9zaGExX2ZpbGUoaW50IGZkKQorc3RhdGljIHZvaWQgY2xvc2VfbG9vc2Vfb2JqZWN0KGludCBmZCkKIHsKIAlpZiAoZnN5bmNfb2JqZWN0X2ZpbGVzKQotCQlmc3luY19vcl9kaWUoZmQsICJzaGExIGZpbGUiKTsKKwkJZnN5bmNfb3JfZGllKGZkLCAibG9vc2Ugb2JqZWN0IGZpbGUiKTsKIAlpZiAoY2xvc2UoZmQpICE9IDApCi0JCWRpZV9lcnJubyhfKCJlcnJvciB3aGVuIGNsb3Npbmcgc2hhMSBmaWxlIikpOworCQlkaWVfZXJybm8oXygiZXJyb3Igd2hlbiBjbG9zaW5nIGxvb3NlIG9iamVjdCBmaWxlIikpOwogfQogCiAvKiBTaXplIG9mIGRpcmVjdG9yeSBjb21wb25lbnQsIGluY2x1ZGluZyB0aGUgZW5kaW5nICcvJyAqLwpAQCAtMTYyNiw4ICsxODMyLDcgQEAKIAlzdGF0aWMgc3RydWN0IHN0cmJ1ZiB0bXBfZmlsZSA9IFNUUkJVRl9JTklUOwogCXN0YXRpYyBzdHJ1Y3Qgc3RyYnVmIGZpbGVuYW1lID0gU1RSQlVGX0lOSVQ7CiAKLQlzdHJidWZfcmVzZXQoJmZpbGVuYW1lKTsKLQlzaGExX2ZpbGVfbmFtZSh0aGVfcmVwb3NpdG9yeSwgJmZpbGVuYW1lLCBvaWQtPmhhc2gpOworCWxvb3NlX29iamVjdF9wYXRoKHRoZV9yZXBvc2l0b3J5LCAmZmlsZW5hbWUsIG9pZCk7CiAKIAlmZCA9IGNyZWF0ZV90bXBmaWxlKCZ0bXBfZmlsZSwgZmlsZW5hbWUuYnVmKTsKIAlpZiAoZmQgPCAwKSB7CkBAIC0xNjU4LDcgKzE4NjMsNyBAQAogCQlyZXQgPSBnaXRfZGVmbGF0ZSgmc3RyZWFtLCBaX0ZJTklTSCk7CiAJCXRoZV9oYXNoX2FsZ28tPnVwZGF0ZV9mbigmYywgaW4wLCBzdHJlYW0ubmV4dF9pbiAtIGluMCk7CiAJCWlmICh3cml0ZV9idWZmZXIoZmQsIGNvbXByZXNzZWQsIHN0cmVhbS5uZXh0X291dCAtIGNvbXByZXNzZWQpIDwgMCkKLQkJCWRpZShfKCJ1bmFibGUgdG8gd3JpdGUgc2hhMSBmaWxlIikpOworCQkJZGllKF8oInVuYWJsZSB0byB3cml0ZSBsb29zZSBvYmplY3QgZmlsZSIpKTsKIAkJc3RyZWFtLm5leHRfb3V0ID0gY29tcHJlc3NlZDsKIAkJc3RyZWFtLmF2YWlsX291dCA9IHNpemVvZihjb21wcmVzc2VkKTsKIAl9IHdoaWxlIChyZXQgPT0gWl9PSyk7CkBAIC0xNjc1LDcgKzE4ODAsNyBAQAogCQlkaWUoXygiY29uZnVzZWQgYnkgdW5zdGFibGUgb2JqZWN0IHNvdXJjZSBkYXRhIGZvciAlcyIpLAogCQkgICAgb2lkX3RvX2hleChvaWQpKTsKIAotCWNsb3NlX3NoYTFfZmlsZShmZCk7CisJY2xvc2VfbG9vc2Vfb2JqZWN0KGZkKTsKIAogCWlmIChtdGltZSkgewogCQlzdHJ1Y3QgdXRpbWJ1ZiB1dGI7CkBAIC0xNzE1LDcgKzE5MjAsOCBAQAogCS8qIE5vcm1hbGx5IGlmIHdlIGhhdmUgaXQgaW4gdGhlIHBhY2sgdGhlbiB3ZSBkbyBub3QgYm90aGVyIHdyaXRpbmcKIAkgKiBpdCBvdXQgaW50byAuZ2l0L29iamVjdHMvPz8vP3szOH0gZmlsZS4KIAkgKi8KLQl3cml0ZV9vYmplY3RfZmlsZV9wcmVwYXJlKGJ1ZiwgbGVuLCB0eXBlLCBvaWQsIGhkciwgJmhkcmxlbik7CisJd3JpdGVfb2JqZWN0X2ZpbGVfcHJlcGFyZSh0aGVfaGFzaF9hbGdvLCBidWYsIGxlbiwgdHlwZSwgb2lkLCBoZHIsCisJCQkJICAmaGRybGVuKTsKIAlpZiAoZnJlc2hlbl9wYWNrZWRfb2JqZWN0KG9pZCkgfHwgZnJlc2hlbl9sb29zZV9vYmplY3Qob2lkKSkKIAkJcmV0dXJuIDA7CiAJcmV0dXJuIHdyaXRlX2xvb3NlX29iamVjdChvaWQsIGhkciwgaGRybGVuLCBidWYsIGxlbiwgMCk7CkBAIC0xNzMxLDcgKzE5MzcsOCBAQAogCS8qIHR5cGUgc3RyaW5nLCBTUCwgJWx1IG9mIHRoZSBsZW5ndGggcGx1cyBOVUwgbXVzdCBmaXQgdGhpcyAqLwogCWhkcmxlbiA9IHN0cmxlbih0eXBlKSArIE1BWF9IRUFERVJfTEVOOwogCWhlYWRlciA9IHhtYWxsb2MoaGRybGVuKTsKLQl3cml0ZV9vYmplY3RfZmlsZV9wcmVwYXJlKGJ1ZiwgbGVuLCB0eXBlLCBvaWQsIGhlYWRlciwgJmhkcmxlbik7CisJd3JpdGVfb2JqZWN0X2ZpbGVfcHJlcGFyZSh0aGVfaGFzaF9hbGdvLCBidWYsIGxlbiwgdHlwZSwgb2lkLCBoZWFkZXIsCisJCQkJICAmaGRybGVuKTsKIAogCWlmICghKGZsYWdzICYgSEFTSF9XUklURV9PQkpFQ1QpKQogCQlnb3RvIGNsZWFudXA7CkBAIC0xNzU1LDkgKzE5NjIsOSBAQAogCiAJaWYgKGhhc19sb29zZV9vYmplY3Qob2lkKSkKIAkJcmV0dXJuIDA7Ci0JYnVmID0gcmVhZF9vYmplY3Qob2lkLT5oYXNoLCAmdHlwZSwgJmxlbik7CisJYnVmID0gcmVhZF9vYmplY3QodGhlX3JlcG9zaXRvcnksIG9pZCwgJnR5cGUsICZsZW4pOwogCWlmICghYnVmKQotCQlyZXR1cm4gZXJyb3IoXygiY2Fubm90IHJlYWQgc2hhMV9maWxlIGZvciAlcyIpLCBvaWRfdG9faGV4KG9pZCkpOworCQlyZXR1cm4gZXJyb3IoXygiY2Fubm90IHJlYWQgb2JqZWN0IGZvciAlcyIpLCBvaWRfdG9faGV4KG9pZCkpOwogCWhkcmxlbiA9IHhzbnByaW50ZihoZHIsIHNpemVvZihoZHIpLCAiJXMgJSJQUkl1TUFYICwgdHlwZV9uYW1lKHR5cGUpLCAodWludG1heF90KWxlbikgKyAxOwogCXJldCA9IHdyaXRlX2xvb3NlX29iamVjdChvaWQsIGhkciwgaGRybGVuLCBidWYsIGxlbiwgbXRpbWUpOwogCWZyZWUoYnVmKTsKQEAgLTE3NjUsMjQgKzE5NzIsMTggQEAKIAlyZXR1cm4gcmV0OwogfQogCi1pbnQgaGFzX3NoYTFfZmlsZV93aXRoX2ZsYWdzKGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsIGludCBmbGFncykKK2ludCByZXBvX2hhc19vYmplY3RfZmlsZV93aXRoX2ZsYWdzKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGludCBmbGFncykKIHsKLQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAlpZiAoIXN0YXJ0dXBfaW5mby0+aGF2ZV9yZXBvc2l0b3J5KQogCQlyZXR1cm4gMDsKLQloYXNoY3B5KG9pZC5oYXNoLCBzaGExKTsKLQlyZXR1cm4gb2lkX29iamVjdF9pbmZvX2V4dGVuZGVkKHRoZV9yZXBvc2l0b3J5LCAmb2lkLCBOVUxMLAotCQkJCQlmbGFncyB8IE9CSkVDVF9JTkZPX1NLSVBfQ0FDSEVEKSA+PSAwOworCXJldHVybiBvaWRfb2JqZWN0X2luZm9fZXh0ZW5kZWQociwgb2lkLCBOVUxMLCBmbGFncykgPj0gMDsKIH0KIAotaW50IGhhc19vYmplY3RfZmlsZShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCitpbnQgcmVwb19oYXNfb2JqZWN0X2ZpbGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewotCXJldHVybiBoYXNfc2hhMV9maWxlKG9pZC0+aGFzaCk7Ci19Ci0KLWludCBoYXNfb2JqZWN0X2ZpbGVfd2l0aF9mbGFncyhjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGludCBmbGFncykKLXsKLQlyZXR1cm4gaGFzX3NoYTFfZmlsZV93aXRoX2ZsYWdzKG9pZC0+aGFzaCwgZmxhZ3MpOworCXJldHVybiByZXBvX2hhc19vYmplY3RfZmlsZV93aXRoX2ZsYWdzKHIsIG9pZCwgMCk7CiB9CiAKIHN0YXRpYyB2b2lkIGNoZWNrX3RyZWUoY29uc3Qgdm9pZCAqYnVmLCBzaXplX3Qgc2l6ZSkKQEAgLTE4NDcsNyArMjA0OCw4IEBACiAJaWYgKHdyaXRlX29iamVjdCkKIAkJcmV0ID0gd3JpdGVfb2JqZWN0X2ZpbGUoYnVmLCBzaXplLCB0eXBlX25hbWUodHlwZSksIG9pZCk7CiAJZWxzZQotCQlyZXQgPSBoYXNoX29iamVjdF9maWxlKGJ1Ziwgc2l6ZSwgdHlwZV9uYW1lKHR5cGUpLCBvaWQpOworCQlyZXQgPSBoYXNoX29iamVjdF9maWxlKHRoZV9oYXNoX2FsZ28sIGJ1Ziwgc2l6ZSwKKwkJCQkgICAgICAgdHlwZV9uYW1lKHR5cGUpLCBvaWQpOwogCWlmIChyZV9hbGxvY2F0ZWQpCiAJCWZyZWUoYnVmKTsKIAlyZXR1cm4gcmV0OwpAQCAtMTg3Myw4ICsyMDc1LDggQEAKIAkJcmV0ID0gd3JpdGVfb2JqZWN0X2ZpbGUoc2J1Zi5idWYsIHNidWYubGVuLCB0eXBlX25hbWUoT0JKX0JMT0IpLAogCQkJCQlvaWQpOwogCWVsc2UKLQkJcmV0ID0gaGFzaF9vYmplY3RfZmlsZShzYnVmLmJ1Ziwgc2J1Zi5sZW4sIHR5cGVfbmFtZShPQkpfQkxPQiksCi0JCQkJICAgICAgIG9pZCk7CisJCXJldCA9IGhhc2hfb2JqZWN0X2ZpbGUodGhlX2hhc2hfYWxnbywgc2J1Zi5idWYsIHNidWYubGVuLAorCQkJCSAgICAgICB0eXBlX25hbWUoT0JKX0JMT0IpLCBvaWQpOwogCXN0cmJ1Zl9yZWxlYXNlKCZzYnVmKTsKIAlyZXR1cm4gcmV0OwogfQpAQCAtMTk5Miw3ICsyMTk0LDggQEAKIAkJaWYgKHN0cmJ1Zl9yZWFkbGluaygmc2IsIHBhdGgsIHN0LT5zdF9zaXplKSkKIAkJCXJldHVybiBlcnJvcl9lcnJubygicmVhZGxpbmsoXCIlc1wiKSIsIHBhdGgpOwogCQlpZiAoIShmbGFncyAmIEhBU0hfV1JJVEVfT0JKRUNUKSkKLQkJCWhhc2hfb2JqZWN0X2ZpbGUoc2IuYnVmLCBzYi5sZW4sIGJsb2JfdHlwZSwgb2lkKTsKKwkJCWhhc2hfb2JqZWN0X2ZpbGUodGhlX2hhc2hfYWxnbywgc2IuYnVmLCBzYi5sZW4sCisJCQkJCSBibG9iX3R5cGUsIG9pZCk7CiAJCWVsc2UgaWYgKHdyaXRlX29iamVjdF9maWxlKHNiLmJ1Ziwgc2IubGVuLCBibG9iX3R5cGUsIG9pZCkpCiAJCQlyYyA9IGVycm9yKF8oIiVzOiBmYWlsZWQgdG8gaW5zZXJ0IGludG8gZGF0YWJhc2UiKSwgcGF0aCk7CiAJCXN0cmJ1Zl9yZWxlYXNlKCZzYik7CkBAIC0yMTM0LDUzICsyMzM3LDczIEBACiAJcmV0dXJuIHI7CiB9CiAKLXN0cnVjdCBsb29zZV9hbHRfb2RiX2RhdGEgewotCWVhY2hfbG9vc2Vfb2JqZWN0X2ZuICpjYjsKLQl2b2lkICpkYXRhOwotfTsKLQotc3RhdGljIGludCBsb29zZV9mcm9tX2FsdF9vZGIoc3RydWN0IGFsdGVybmF0ZV9vYmplY3RfZGF0YWJhc2UgKmFsdCwKLQkJCSAgICAgIHZvaWQgKnZkYXRhKQotewotCXN0cnVjdCBsb29zZV9hbHRfb2RiX2RhdGEgKmRhdGEgPSB2ZGF0YTsKLQlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwotCWludCByOwotCi0Jc3RyYnVmX2FkZHN0cigmYnVmLCBhbHQtPnBhdGgpOwotCXIgPSBmb3JfZWFjaF9sb29zZV9maWxlX2luX29iamRpcl9idWYoJmJ1ZiwKLQkJCQkJICAgICAgZGF0YS0+Y2IsIE5VTEwsIE5VTEwsCi0JCQkJCSAgICAgIGRhdGEtPmRhdGEpOwotCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOwotCXJldHVybiByOwotfQotCiBpbnQgZm9yX2VhY2hfbG9vc2Vfb2JqZWN0KGVhY2hfbG9vc2Vfb2JqZWN0X2ZuIGNiLCB2b2lkICpkYXRhLAogCQkJICBlbnVtIGZvcl9lYWNoX29iamVjdF9mbGFncyBmbGFncykKIHsKLQlzdHJ1Y3QgbG9vc2VfYWx0X29kYl9kYXRhIGFsdDsKLQlpbnQgcjsKKwlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiOwogCi0JciA9IGZvcl9lYWNoX2xvb3NlX2ZpbGVfaW5fb2JqZGlyKGdldF9vYmplY3RfZGlyZWN0b3J5KCksCi0JCQkJCSAgY2IsIE5VTEwsIE5VTEwsIGRhdGEpOwotCWlmIChyKQotCQlyZXR1cm4gcjsKKwlwcmVwYXJlX2FsdF9vZGIodGhlX3JlcG9zaXRvcnkpOworCWZvciAob2RiID0gdGhlX3JlcG9zaXRvcnktPm9iamVjdHMtPm9kYjsgb2RiOyBvZGIgPSBvZGItPm5leHQpIHsKKwkJaW50IHIgPSBmb3JfZWFjaF9sb29zZV9maWxlX2luX29iamRpcihvZGItPnBhdGgsIGNiLCBOVUxMLAorCQkJCQkJICAgICAgTlVMTCwgZGF0YSk7CisJCWlmIChyKQorCQkJcmV0dXJuIHI7CiAKLQlpZiAoZmxhZ3MgJiBGT1JfRUFDSF9PQkpFQ1RfTE9DQUxfT05MWSkKLQkJcmV0dXJuIDA7CisJCWlmIChmbGFncyAmIEZPUl9FQUNIX09CSkVDVF9MT0NBTF9PTkxZKQorCQkJYnJlYWs7CisJfQogCi0JYWx0LmNiID0gY2I7Ci0JYWx0LmRhdGEgPSBkYXRhOwotCXJldHVybiBmb3JlYWNoX2FsdF9vZGIobG9vc2VfZnJvbV9hbHRfb2RiLCAmYWx0KTsKKwlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBjaGVja19zdHJlYW1fc2hhMShnaXRfenN0cmVhbSAqc3RyZWFtLAotCQkJICAgICBjb25zdCBjaGFyICpoZHIsCi0JCQkgICAgIHVuc2lnbmVkIGxvbmcgc2l6ZSwKLQkJCSAgICAgY29uc3QgY2hhciAqcGF0aCwKLQkJCSAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqZXhwZWN0ZWRfc2hhMSkKK3N0YXRpYyBpbnQgYXBwZW5kX2xvb3NlX29iamVjdChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGNvbnN0IGNoYXIgKnBhdGgsCisJCQkgICAgICAgdm9pZCAqZGF0YSkKK3sKKwlvaWRfYXJyYXlfYXBwZW5kKGRhdGEsIG9pZCk7CisJcmV0dXJuIDA7Cit9CisKK3N0cnVjdCBvaWRfYXJyYXkgKm9kYl9sb29zZV9jYWNoZShzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiLAorCQkJCSAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKQoreworCWludCBzdWJkaXJfbnIgPSBvaWQtPmhhc2hbMF07CisJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKKworCWlmIChzdWJkaXJfbnIgPCAwIHx8CisJICAgIHN1YmRpcl9uciA+PSBBUlJBWV9TSVpFKG9kYi0+bG9vc2Vfb2JqZWN0c19zdWJkaXJfc2VlbikpCisJCUJVRygic3ViZGlyX25yIG91dCBvZiByYW5nZSIpOworCisJaWYgKG9kYi0+bG9vc2Vfb2JqZWN0c19zdWJkaXJfc2VlbltzdWJkaXJfbnJdKQorCQlyZXR1cm4gJm9kYi0+bG9vc2Vfb2JqZWN0c19jYWNoZVtzdWJkaXJfbnJdOworCisJc3RyYnVmX2FkZHN0cigmYnVmLCBvZGItPnBhdGgpOworCWZvcl9lYWNoX2ZpbGVfaW5fb2JqX3N1YmRpcihzdWJkaXJfbnIsICZidWYsCisJCQkJICAgIGFwcGVuZF9sb29zZV9vYmplY3QsCisJCQkJICAgIE5VTEwsIE5VTEwsCisJCQkJICAgICZvZGItPmxvb3NlX29iamVjdHNfY2FjaGVbc3ViZGlyX25yXSk7CisJb2RiLT5sb29zZV9vYmplY3RzX3N1YmRpcl9zZWVuW3N1YmRpcl9ucl0gPSAxOworCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOworCXJldHVybiAmb2RiLT5sb29zZV9vYmplY3RzX2NhY2hlW3N1YmRpcl9ucl07Cit9CisKK3ZvaWQgb2RiX2NsZWFyX2xvb3NlX2NhY2hlKHN0cnVjdCBvYmplY3RfZGlyZWN0b3J5ICpvZGIpCit7CisJaW50IGk7CisKKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShvZGItPmxvb3NlX29iamVjdHNfY2FjaGUpOyBpKyspCisJCW9pZF9hcnJheV9jbGVhcigmb2RiLT5sb29zZV9vYmplY3RzX2NhY2hlW2ldKTsKKwltZW1zZXQoJm9kYi0+bG9vc2Vfb2JqZWN0c19zdWJkaXJfc2VlbiwgMCwKKwkgICAgICAgc2l6ZW9mKG9kYi0+bG9vc2Vfb2JqZWN0c19zdWJkaXJfc2VlbikpOworfQorCitzdGF0aWMgaW50IGNoZWNrX3N0cmVhbV9vaWQoZ2l0X3pzdHJlYW0gKnN0cmVhbSwKKwkJCSAgICBjb25zdCBjaGFyICpoZHIsCisJCQkgICAgdW5zaWduZWQgbG9uZyBzaXplLAorCQkJICAgIGNvbnN0IGNoYXIgKnBhdGgsCisJCQkgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqZXhwZWN0ZWRfb2lkKQogewogCWdpdF9oYXNoX2N0eCBjOwotCXVuc2lnbmVkIGNoYXIgcmVhbF9zaGExW0dJVF9NQVhfUkFXU1pdOworCXN0cnVjdCBvYmplY3RfaWQgcmVhbF9vaWQ7CiAJdW5zaWduZWQgY2hhciBidWZbNDA5Nl07CiAJdW5zaWduZWQgbG9uZyB0b3RhbF9yZWFkOwogCWludCBzdGF0dXMgPSBaX09LOwpAQCAtMjE5Niw3ICsyNDE5LDcgQEAKIAogCS8qCiAJICogVGhpcyBzaXplIGNvbXBhcmlzb24gbXVzdCBiZSAiPD0iIHRvIHJlYWQgdGhlIGZpbmFsIHpsaWIgcGFja2V0czsKLQkgKiBzZWUgdGhlIGNvbW1lbnQgaW4gdW5wYWNrX3NoYTFfcmVzdCBmb3IgZGV0YWlscy4KKwkgKiBzZWUgdGhlIGNvbW1lbnQgaW4gdW5wYWNrX2xvb3NlX3Jlc3QgZm9yIGRldGFpbHMuCiAJICovCiAJd2hpbGUgKHRvdGFsX3JlYWQgPD0gc2l6ZSAmJgogCSAgICAgICAoc3RhdHVzID09IFpfT0sgfHwKQEAgLTIyMTIsMTkgKzI0MzUsMTkgQEAKIAlnaXRfaW5mbGF0ZV9lbmQoc3RyZWFtKTsKIAogCWlmIChzdGF0dXMgIT0gWl9TVFJFQU1fRU5EKSB7Ci0JCWVycm9yKF8oImNvcnJ1cHQgbG9vc2Ugb2JqZWN0ICclcyciKSwgc2hhMV90b19oZXgoZXhwZWN0ZWRfc2hhMSkpOworCQllcnJvcihfKCJjb3JydXB0IGxvb3NlIG9iamVjdCAnJXMnIiksIG9pZF90b19oZXgoZXhwZWN0ZWRfb2lkKSk7CiAJCXJldHVybiAtMTsKIAl9CiAJaWYgKHN0cmVhbS0+YXZhaWxfaW4pIHsKIAkJZXJyb3IoXygiZ2FyYmFnZSBhdCBlbmQgb2YgbG9vc2Ugb2JqZWN0ICclcyciKSwKLQkJICAgICAgc2hhMV90b19oZXgoZXhwZWN0ZWRfc2hhMSkpOworCQkgICAgICBvaWRfdG9faGV4KGV4cGVjdGVkX29pZCkpOwogCQlyZXR1cm4gLTE7CiAJfQogCi0JdGhlX2hhc2hfYWxnby0+ZmluYWxfZm4ocmVhbF9zaGExLCAmYyk7Ci0JaWYgKCFoYXNoZXEoZXhwZWN0ZWRfc2hhMSwgcmVhbF9zaGExKSkgewotCQllcnJvcihfKCJzaGExIG1pc21hdGNoIGZvciAlcyAoZXhwZWN0ZWQgJXMpIiksIHBhdGgsCi0JCSAgICAgIHNoYTFfdG9faGV4KGV4cGVjdGVkX3NoYTEpKTsKKwl0aGVfaGFzaF9hbGdvLT5maW5hbF9mbihyZWFsX29pZC5oYXNoLCAmYyk7CisJaWYgKCFvaWRlcShleHBlY3RlZF9vaWQsICZyZWFsX29pZCkpIHsKKwkJZXJyb3IoXygiaGFzaCBtaXNtYXRjaCBmb3IgJXMgKGV4cGVjdGVkICVzKSIpLCBwYXRoLAorCQkgICAgICBvaWRfdG9faGV4KGV4cGVjdGVkX29pZCkpOwogCQlyZXR1cm4gLTE7CiAJfQogCkBAIC0yMjQ1LDE4ICsyNDY4LDE4IEBACiAKIAkqY29udGVudHMgPSBOVUxMOwogCi0JbWFwID0gbWFwX3NoYTFfZmlsZV8xKHRoZV9yZXBvc2l0b3J5LCBwYXRoLCBOVUxMLCAmbWFwc2l6ZSk7CisJbWFwID0gbWFwX2xvb3NlX29iamVjdF8xKHRoZV9yZXBvc2l0b3J5LCBwYXRoLCBOVUxMLCAmbWFwc2l6ZSk7CiAJaWYgKCFtYXApIHsKIAkJZXJyb3JfZXJybm8oXygidW5hYmxlIHRvIG1tYXAgJXMiKSwgcGF0aCk7CiAJCWdvdG8gb3V0OwogCX0KIAotCWlmICh1bnBhY2tfc2hhMV9oZWFkZXIoJnN0cmVhbSwgbWFwLCBtYXBzaXplLCBoZHIsIHNpemVvZihoZHIpKSA8IDApIHsKKwlpZiAodW5wYWNrX2xvb3NlX2hlYWRlcigmc3RyZWFtLCBtYXAsIG1hcHNpemUsIGhkciwgc2l6ZW9mKGhkcikpIDwgMCkgewogCQllcnJvcihfKCJ1bmFibGUgdG8gdW5wYWNrIGhlYWRlciBvZiAlcyIpLCBwYXRoKTsKIAkJZ290byBvdXQ7CiAJfQogCi0JKnR5cGUgPSBwYXJzZV9zaGExX2hlYWRlcihoZHIsIHNpemUpOworCSp0eXBlID0gcGFyc2VfbG9vc2VfaGVhZGVyKGhkciwgc2l6ZSk7CiAJaWYgKCp0eXBlIDwgMCkgewogCQllcnJvcihfKCJ1bmFibGUgdG8gcGFyc2UgaGVhZGVyIG9mICVzIiksIHBhdGgpOwogCQlnaXRfaW5mbGF0ZV9lbmQoJnN0cmVhbSk7CkBAIC0yMjY0LDE4ICsyNDg3LDE5IEBACiAJfQogCiAJaWYgKCp0eXBlID09IE9CSl9CTE9CICYmICpzaXplID4gYmlnX2ZpbGVfdGhyZXNob2xkKSB7Ci0JCWlmIChjaGVja19zdHJlYW1fc2hhMSgmc3RyZWFtLCBoZHIsICpzaXplLCBwYXRoLCBleHBlY3RlZF9vaWQtPmhhc2gpIDwgMCkKKwkJaWYgKGNoZWNrX3N0cmVhbV9vaWQoJnN0cmVhbSwgaGRyLCAqc2l6ZSwgcGF0aCwgZXhwZWN0ZWRfb2lkKSA8IDApCiAJCQlnb3RvIG91dDsKIAl9IGVsc2UgewotCQkqY29udGVudHMgPSB1bnBhY2tfc2hhMV9yZXN0KCZzdHJlYW0sIGhkciwgKnNpemUsIGV4cGVjdGVkX29pZC0+aGFzaCk7CisJCSpjb250ZW50cyA9IHVucGFja19sb29zZV9yZXN0KCZzdHJlYW0sIGhkciwgKnNpemUsIGV4cGVjdGVkX29pZCk7CiAJCWlmICghKmNvbnRlbnRzKSB7CiAJCQllcnJvcihfKCJ1bmFibGUgdG8gdW5wYWNrIGNvbnRlbnRzIG9mICVzIiksIHBhdGgpOwogCQkJZ2l0X2luZmxhdGVfZW5kKCZzdHJlYW0pOwogCQkJZ290byBvdXQ7CiAJCX0KLQkJaWYgKGNoZWNrX29iamVjdF9zaWduYXR1cmUoZXhwZWN0ZWRfb2lkLCAqY29udGVudHMsCi0JCQkJCSAqc2l6ZSwgdHlwZV9uYW1lKCp0eXBlKSkpIHsKLQkJCWVycm9yKF8oInNoYTEgbWlzbWF0Y2ggZm9yICVzIChleHBlY3RlZCAlcykiKSwgcGF0aCwKKwkJaWYgKGNoZWNrX29iamVjdF9zaWduYXR1cmUodGhlX3JlcG9zaXRvcnksIGV4cGVjdGVkX29pZCwKKwkJCQkJICAgKmNvbnRlbnRzLCAqc2l6ZSwKKwkJCQkJICAgdHlwZV9uYW1lKCp0eXBlKSkpIHsKKwkJCWVycm9yKF8oImhhc2ggbWlzbWF0Y2ggZm9yICVzIChleHBlY3RlZCAlcykiKSwgcGF0aCwKIAkJCSAgICAgIG9pZF90b19oZXgoZXhwZWN0ZWRfb2lkKSk7CiAJCQlmcmVlKCpjb250ZW50cyk7CiAJCQlnb3RvIG91dDsKZGlmZiAtLWdpdCBhL3NoYTEtbG9va3VwLmMgYi9zaGExLWxvb2t1cC5jCmluZGV4IDc5NmFiNjguLjI5MTg1ODQgMTAwNjQ0Ci0tLSBhL3NoYTEtbG9va3VwLmMKKysrIGIvc2hhMS1sb29rdXAuYwpAQCAtNTAsNyArNTAsNyBAQAogICogVGhlIHNoYTEgb2YgZWxlbWVudCBpIChiZXR3ZWVuIDAgYW5kIG5yIC0gMSkgc2hvdWxkIGJlIHJldHVybmVkCiAgKiBieSAiZm4oaSwgdGFibGUpIi4KICAqLwotaW50IHNoYTFfcG9zKGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsIHZvaWQgKnRhYmxlLCBzaXplX3QgbnIsCitpbnQgc2hhMV9wb3MoY29uc3QgdW5zaWduZWQgY2hhciAqaGFzaCwgdm9pZCAqdGFibGUsIHNpemVfdCBuciwKIAkgICAgIHNoYTFfYWNjZXNzX2ZuIGZuKQogewogCXNpemVfdCBoaSA9IG5yOwpAQCAtNjMsMTQgKzYzLDE0IEBACiAJaWYgKG5yICE9IDEpIHsKIAkJc2l6ZV90IGxvdiwgaGl2LCBtaXYsIG9mczsKIAotCQlmb3IgKG9mcyA9IDA7IG9mcyA8IDE4OyBvZnMgKz0gMikgeworCQlmb3IgKG9mcyA9IDA7IG9mcyA8IHRoZV9oYXNoX2FsZ28tPnJhd3N6IC0gMjsgb2ZzICs9IDIpIHsKIAkJCWxvdiA9IHRha2UyKGZuKDAsIHRhYmxlKSArIG9mcyk7CiAJCQloaXYgPSB0YWtlMihmbihuciAtIDEsIHRhYmxlKSArIG9mcyk7Ci0JCQltaXYgPSB0YWtlMihzaGExICsgb2ZzKTsKKwkJCW1pdiA9IHRha2UyKGhhc2ggKyBvZnMpOwogCQkJaWYgKG1pdiA8IGxvdikKIAkJCQlyZXR1cm4gLTE7CiAJCQlpZiAoaGl2IDwgbWl2KQotCQkJCXJldHVybiAtMSAtIG5yOworCQkJCXJldHVybiBpbmRleF9wb3NfdG9faW5zZXJ0X3Bvcyhucik7CiAJCQlpZiAobG92ICE9IGhpdikgewogCQkJCS8qCiAJCQkJICogQXQgdGhpcyBwb2ludCBtaXYgY291bGQgYmUgZXF1YWwKQEAgLTg4LDcgKzg4LDcgQEAKIAogCWRvIHsKIAkJaW50IGNtcDsKLQkJY21wID0gaGFzaGNtcChmbihtaSwgdGFibGUpLCBzaGExKTsKKwkJY21wID0gaGFzaGNtcChmbihtaSwgdGFibGUpLCBoYXNoKTsKIAkJaWYgKCFjbXApCiAJCQlyZXR1cm4gbWk7CiAJCWlmIChjbXAgPiAwKQpAQCAtOTcsNyArOTcsNyBAQAogCQkJbG8gPSBtaSArIDE7CiAJCW1pID0gbG8gKyAoaGkgLSBsbykgLyAyOwogCX0gd2hpbGUgKGxvIDwgaGkpOwotCXJldHVybiAtbG8tMTsKKwlyZXR1cm4gaW5kZXhfcG9zX3RvX2luc2VydF9wb3MobG8pOwogfQogCiBpbnQgYnNlYXJjaF9oYXNoKGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsIGNvbnN0IHVpbnQzMl90ICpmYW5vdXRfbmJvLApkaWZmIC0tZ2l0IGEvc2hhMS1sb29rdXAuaCBiL3NoYTEtbG9va3VwLmgKaW5kZXggNzY3OGIyMy4uNWFmY2QwMSAxMDA2NDQKLS0tIGEvc2hhMS1sb29rdXAuaAorKysgYi9zaGExLWxvb2t1cC5oCkBAIC0zLDEwICszLDEwIEBACiAKIHR5cGVkZWYgY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMV9hY2Nlc3NfZm4oc2l6ZV90IGluZGV4LCB2b2lkICp0YWJsZSk7CiAKLWV4dGVybiBpbnQgc2hhMV9wb3MoY29uc3QgdW5zaWduZWQgY2hhciAqc2hhMSwKLQkJICAgIHZvaWQgKnRhYmxlLAotCQkgICAgc2l6ZV90IG5yLAotCQkgICAgc2hhMV9hY2Nlc3NfZm4gZm4pOworaW50IHNoYTFfcG9zKGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNoYTEsCisJICAgICB2b2lkICp0YWJsZSwKKwkgICAgIHNpemVfdCBuciwKKwkgICAgIHNoYTFfYWNjZXNzX2ZuIGZuKTsKIAogLyoKICAqIFNlYXJjaGVzIGZvciBzaGExIGluIHRhYmxlLCB1c2luZyB0aGUgZ2l2ZW4gZmFub3V0IHRhYmxlIHRvIGRldGVybWluZSB0aGUKZGlmZiAtLWdpdCBhL3NoYTEtbmFtZS5jIGIvc2hhMS1uYW1lLmMKaW5kZXggZmFhNjBmNi4uNWJiMDA2ZSAxMDA2NDQKLS0tIGEvc2hhMS1uYW1lLmMKKysrIGIvc2hhMS1uYW1lLmMKQEAgLTEyLDE4ICsxMiwyMCBAQAogI2luY2x1ZGUgInBhY2tmaWxlLmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCiAjaW5jbHVkZSAicmVwb3NpdG9yeS5oIgorI2luY2x1ZGUgInN1Ym1vZHVsZS5oIgogI2luY2x1ZGUgIm1pZHguaCIKICNpbmNsdWRlICJjb21taXQtcmVhY2guaCIKIAotc3RhdGljIGludCBnZXRfb2lkX29uZWxpbmUoY29uc3QgY2hhciAqLCBzdHJ1Y3Qgb2JqZWN0X2lkICosIHN0cnVjdCBjb21taXRfbGlzdCAqKTsKK3N0YXRpYyBpbnQgZ2V0X29pZF9vbmVsaW5lKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICosIHN0cnVjdCBvYmplY3RfaWQgKiwgc3RydWN0IGNvbW1pdF9saXN0ICopOwogCi10eXBlZGVmIGludCAoKmRpc2FtYmlndWF0ZV9oaW50X2ZuKShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICosIHZvaWQgKik7Cit0eXBlZGVmIGludCAoKmRpc2FtYmlndWF0ZV9oaW50X2ZuKShzdHJ1Y3QgcmVwb3NpdG9yeSAqLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICosIHZvaWQgKik7CiAKIHN0cnVjdCBkaXNhbWJpZ3VhdGVfc3RhdGUgewogCWludCBsZW47IC8qIGxlbmd0aCBvZiBwcmVmaXggaW4gaGV4IGNoYXJzICovCiAJY2hhciBoZXhfcGZ4W0dJVF9NQVhfSEVYU1ogKyAxXTsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIGJpbl9wZng7CiAKKwlzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbzsKIAlkaXNhbWJpZ3VhdGVfaGludF9mbiBmbjsKIAl2b2lkICpjYl9kYXRhOwogCXN0cnVjdCBvYmplY3RfaWQgY2FuZGlkYXRlOwpAQCAtMzgsNyArNDAsNyBAQAogc3RhdGljIHZvaWQgdXBkYXRlX2NhbmRpZGF0ZXMoc3RydWN0IGRpc2FtYmlndWF0ZV9zdGF0ZSAqZHMsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmN1cnJlbnQpCiB7CiAJaWYgKGRzLT5hbHdheXNfY2FsbF9mbikgewotCQlkcy0+YW1iaWd1b3VzID0gZHMtPmZuKGN1cnJlbnQsIGRzLT5jYl9kYXRhKSA/IDEgOiAwOworCQlkcy0+YW1iaWd1b3VzID0gZHMtPmZuKGRzLT5yZXBvLCBjdXJyZW50LCBkcy0+Y2JfZGF0YSkgPyAxIDogMDsKIAkJcmV0dXJuOwogCX0KIAlpZiAoIWRzLT5jYW5kaWRhdGVfZXhpc3RzKSB7CkBAIC01OCw3ICs2MCw3IEBACiAJfQogCiAJaWYgKCFkcy0+Y2FuZGlkYXRlX2NoZWNrZWQpIHsKLQkJZHMtPmNhbmRpZGF0ZV9vayA9IGRzLT5mbigmZHMtPmNhbmRpZGF0ZSwgZHMtPmNiX2RhdGEpOworCQlkcy0+Y2FuZGlkYXRlX29rID0gZHMtPmZuKGRzLT5yZXBvLCAmZHMtPmNhbmRpZGF0ZSwgZHMtPmNiX2RhdGEpOwogCQlkcy0+ZGlzYW1iaWd1YXRlX2ZuX3VzZWQgPSAxOwogCQlkcy0+Y2FuZGlkYXRlX2NoZWNrZWQgPSAxOwogCX0KQEAgLTcxLDcgKzczLDcgQEAKIAl9CiAKIAkvKiBpZiB3ZSByZWFjaCB0aGlzIHBvaW50LCB3ZSBrbm93IGRzLT5jYW5kaWRhdGUgc2F0aXNmaWVzIGZuICovCi0JaWYgKGRzLT5mbihjdXJyZW50LCBkcy0+Y2JfZGF0YSkpIHsKKwlpZiAoZHMtPmZuKGRzLT5yZXBvLCBjdXJyZW50LCBkcy0+Y2JfZGF0YSkpIHsKIAkJLyoKIAkJICogaWYgYm90aCBjdXJyZW50IGFuZCBjYW5kaWRhdGUgc2F0aXNmeSBmbiwgd2UgY2Fubm90CiAJCSAqIGRpc2FtYmlndWF0ZS4KQEAgLTgzLDUxICs4NSwyMyBAQAogCS8qIG90aGVyd2lzZSwgY3VycmVudCBjYW4gYmUgZGlzY2FyZGVkIGFuZCBjYW5kaWRhdGUgaXMgc3RpbGwgZ29vZCAqLwogfQogCi1zdGF0aWMgaW50IGFwcGVuZF9sb29zZV9vYmplY3QoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBjb25zdCBjaGFyICpwYXRoLAotCQkJICAgICAgIHZvaWQgKmRhdGEpCi17Ci0Jb2lkX2FycmF5X2FwcGVuZChkYXRhLCBvaWQpOwotCXJldHVybiAwOwotfQotCiBzdGF0aWMgaW50IG1hdGNoX3NoYSh1bnNpZ25lZCwgY29uc3QgdW5zaWduZWQgY2hhciAqLCBjb25zdCB1bnNpZ25lZCBjaGFyICopOwogCiBzdGF0aWMgdm9pZCBmaW5kX3Nob3J0X29iamVjdF9maWxlbmFtZShzdHJ1Y3QgZGlzYW1iaWd1YXRlX3N0YXRlICpkcykKIHsKLQlpbnQgc3ViZGlyX25yID0gZHMtPmJpbl9wZnguaGFzaFswXTsKLQlzdHJ1Y3QgYWx0ZXJuYXRlX29iamVjdF9kYXRhYmFzZSAqYWx0OwotCXN0YXRpYyBzdHJ1Y3QgYWx0ZXJuYXRlX29iamVjdF9kYXRhYmFzZSAqZmFrZWVudDsKKwlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiOwogCi0JaWYgKCFmYWtlZW50KSB7Ci0JCS8qCi0JCSAqIENyZWF0ZSBhICJmYWtlIiBhbHRlcm5hdGUgb2JqZWN0IGRhdGFiYXNlIHRoYXQKLQkJICogcG9pbnRzIHRvIG91ciBvd24gb2JqZWN0IGRhdGFiYXNlLCB0byBtYWtlIGl0Ci0JCSAqIGVhc2llciB0byBnZXQgYSB0ZW1wb3Jhcnkgd29ya2luZyBzcGFjZSBpbgotCQkgKiBhbHQtPm5hbWUvYWx0LT5iYXNlIHdoaWxlIGl0ZXJhdGluZyBvdmVyIHRoZQotCQkgKiBvYmplY3QgZGF0YWJhc2VzIGluY2x1ZGluZyBvdXIgb3duLgotCQkgKi8KLQkJZmFrZWVudCA9IGFsbG9jX2FsdF9vZGIoZ2V0X29iamVjdF9kaXJlY3RvcnkoKSk7Ci0JfQotCWZha2VlbnQtPm5leHQgPSB0aGVfcmVwb3NpdG9yeS0+b2JqZWN0cy0+YWx0X29kYl9saXN0OwotCi0JZm9yIChhbHQgPSBmYWtlZW50OyBhbHQgJiYgIWRzLT5hbWJpZ3VvdXM7IGFsdCA9IGFsdC0+bmV4dCkgeworCWZvciAob2RiID0gZHMtPnJlcG8tPm9iamVjdHMtPm9kYjsgb2RiICYmICFkcy0+YW1iaWd1b3VzOyBvZGIgPSBvZGItPm5leHQpIHsKIAkJaW50IHBvczsKKwkJc3RydWN0IG9pZF9hcnJheSAqbG9vc2Vfb2JqZWN0czsKIAotCQlpZiAoIWFsdC0+bG9vc2Vfb2JqZWN0c19zdWJkaXJfc2VlbltzdWJkaXJfbnJdKSB7Ci0JCQlzdHJ1Y3Qgc3RyYnVmICpidWYgPSBhbHRfc2NyYXRjaF9idWYoYWx0KTsKLQkJCWZvcl9lYWNoX2ZpbGVfaW5fb2JqX3N1YmRpcihzdWJkaXJfbnIsIGJ1ZiwKLQkJCQkJCSAgICBhcHBlbmRfbG9vc2Vfb2JqZWN0LAotCQkJCQkJICAgIE5VTEwsIE5VTEwsCi0JCQkJCQkgICAgJmFsdC0+bG9vc2Vfb2JqZWN0c19jYWNoZSk7Ci0JCQlhbHQtPmxvb3NlX29iamVjdHNfc3ViZGlyX3NlZW5bc3ViZGlyX25yXSA9IDE7Ci0JCX0KLQotCQlwb3MgPSBvaWRfYXJyYXlfbG9va3VwKCZhbHQtPmxvb3NlX29iamVjdHNfY2FjaGUsICZkcy0+YmluX3BmeCk7CisJCWxvb3NlX29iamVjdHMgPSBvZGJfbG9vc2VfY2FjaGUob2RiLCAmZHMtPmJpbl9wZngpOworCQlwb3MgPSBvaWRfYXJyYXlfbG9va3VwKGxvb3NlX29iamVjdHMsICZkcy0+YmluX3BmeCk7CiAJCWlmIChwb3MgPCAwKQogCQkJcG9zID0gLTEgLSBwb3M7Ci0JCXdoaWxlICghZHMtPmFtYmlndW91cyAmJiBwb3MgPCBhbHQtPmxvb3NlX29iamVjdHNfY2FjaGUubnIpIHsKKwkJd2hpbGUgKCFkcy0+YW1iaWd1b3VzICYmIHBvcyA8IGxvb3NlX29iamVjdHMtPm5yKSB7CiAJCQljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQ7Ci0JCQlvaWQgPSBhbHQtPmxvb3NlX29iamVjdHNfY2FjaGUub2lkICsgcG9zOworCQkJb2lkID0gbG9vc2Vfb2JqZWN0cy0+b2lkICsgcG9zOwogCQkJaWYgKCFtYXRjaF9zaGEoZHMtPmxlbiwgZHMtPmJpbl9wZnguaGFzaCwgb2lkLT5oYXNoKSkKIAkJCQlicmVhazsKIAkJCXVwZGF0ZV9jYW5kaWRhdGVzKGRzLCBvaWQpOwpAQCAtMTgxLDcgKzE1NSw5IEBACiAJCQkgICBzdHJ1Y3QgZGlzYW1iaWd1YXRlX3N0YXRlICpkcykKIHsKIAl1aW50MzJfdCBudW0sIGksIGZpcnN0ID0gMDsKLQljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpjdXJyZW50ID0gTlVMTDsKKworCWlmIChwLT5tdWx0aV9wYWNrX2luZGV4KQorCQlyZXR1cm47CiAKIAlpZiAob3Blbl9wYWNrX2luZGV4KHApIHx8ICFwLT5udW1fb2JqZWN0cykKIAkJcmV0dXJuOwpAQCAtMTk2LDEwICsxNzIsMTAgQEAKIAkgKi8KIAlmb3IgKGkgPSBmaXJzdDsgaSA8IG51bSAmJiAhZHMtPmFtYmlndW91czsgaSsrKSB7CiAJCXN0cnVjdCBvYmplY3RfaWQgb2lkOwotCQljdXJyZW50ID0gbnRoX3BhY2tlZF9vYmplY3Rfb2lkKCZvaWQsIHAsIGkpOwotCQlpZiAoIW1hdGNoX3NoYShkcy0+bGVuLCBkcy0+YmluX3BmeC5oYXNoLCBjdXJyZW50LT5oYXNoKSkKKwkJbnRoX3BhY2tlZF9vYmplY3RfaWQoJm9pZCwgcCwgaSk7CisJCWlmICghbWF0Y2hfc2hhKGRzLT5sZW4sIGRzLT5iaW5fcGZ4Lmhhc2gsIG9pZC5oYXNoKSkKIAkJCWJyZWFrOwotCQl1cGRhdGVfY2FuZGlkYXRlcyhkcywgY3VycmVudCk7CisJCXVwZGF0ZV9jYW5kaWRhdGVzKGRzLCAmb2lkKTsKIAl9CiB9CiAKQEAgLTIwOCwxNyArMTg0LDE0IEBACiAJc3RydWN0IG11bHRpX3BhY2tfaW5kZXggKm07CiAJc3RydWN0IHBhY2tlZF9naXQgKnA7CiAKLQlmb3IgKG0gPSBnZXRfbXVsdGlfcGFja19pbmRleCh0aGVfcmVwb3NpdG9yeSk7IG0gJiYgIWRzLT5hbWJpZ3VvdXM7CisJZm9yIChtID0gZ2V0X211bHRpX3BhY2tfaW5kZXgoZHMtPnJlcG8pOyBtICYmICFkcy0+YW1iaWd1b3VzOwogCSAgICAgbSA9IG0tPm5leHQpCiAJCXVuaXF1ZV9pbl9taWR4KG0sIGRzKTsKLQlmb3IgKHAgPSBnZXRfcGFja2VkX2dpdCh0aGVfcmVwb3NpdG9yeSk7IHAgJiYgIWRzLT5hbWJpZ3VvdXM7CisJZm9yIChwID0gZ2V0X3BhY2tlZF9naXQoZHMtPnJlcG8pOyBwICYmICFkcy0+YW1iaWd1b3VzOwogCSAgICAgcCA9IHAtPm5leHQpCiAJCXVuaXF1ZV9pbl9wYWNrKHAsIGRzKTsKIH0KIAotI2RlZmluZSBTSE9SVF9OQU1FX05PVF9GT1VORCAoLTEpCi0jZGVmaW5lIFNIT1JUX05BTUVfQU1CSUdVT1VTICgtMikKLQogc3RhdGljIGludCBmaW5pc2hfb2JqZWN0X2Rpc2FtYmlndWF0aW9uKHN0cnVjdCBkaXNhbWJpZ3VhdGVfc3RhdGUgKmRzLAogCQkJCQlzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7CkBAIC0yMjYsNyArMTk5LDcgQEAKIAkJcmV0dXJuIFNIT1JUX05BTUVfQU1CSUdVT1VTOwogCiAJaWYgKCFkcy0+Y2FuZGlkYXRlX2V4aXN0cykKLQkJcmV0dXJuIFNIT1JUX05BTUVfTk9UX0ZPVU5EOworCQlyZXR1cm4gTUlTU0lOR19PQkpFQ1Q7CiAKIAlpZiAoIWRzLT5jYW5kaWRhdGVfY2hlY2tlZCkKIAkJLyoKQEAgLTI0NCw3ICsyMTcsNyBAQAogCQkgKiBzYW1lIHJlcG9zaXRvcnkhCiAJCSAqLwogCQlkcy0+Y2FuZGlkYXRlX29rID0gKCFkcy0+ZGlzYW1iaWd1YXRlX2ZuX3VzZWQgfHwKLQkJCQkgICAgZHMtPmZuKCZkcy0+Y2FuZGlkYXRlLCBkcy0+Y2JfZGF0YSkpOworCQkJCSAgICBkcy0+Zm4oZHMtPnJlcG8sICZkcy0+Y2FuZGlkYXRlLCBkcy0+Y2JfZGF0YSkpOwogCiAJaWYgKCFkcy0+Y2FuZGlkYXRlX29rKQogCQlyZXR1cm4gU0hPUlRfTkFNRV9BTUJJR1VPVVM7CkBAIC0yNTMsNTkgKzIyNiw2NyBAQAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGRpc2FtYmlndWF0ZV9jb21taXRfb25seShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHZvaWQgKmNiX2RhdGFfdW51c2VkKQorc3RhdGljIGludCBkaXNhbWJpZ3VhdGVfY29tbWl0X29ubHkoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCQkgICAgdm9pZCAqY2JfZGF0YV91bnVzZWQpCiB7Ci0JaW50IGtpbmQgPSBvaWRfb2JqZWN0X2luZm8odGhlX3JlcG9zaXRvcnksIG9pZCwgTlVMTCk7CisJaW50IGtpbmQgPSBvaWRfb2JqZWN0X2luZm8ociwgb2lkLCBOVUxMKTsKIAlyZXR1cm4ga2luZCA9PSBPQkpfQ09NTUlUOwogfQogCi1zdGF0aWMgaW50IGRpc2FtYmlndWF0ZV9jb21taXR0aXNoX29ubHkoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLCB2b2lkICpjYl9kYXRhX3VudXNlZCkKK3N0YXRpYyBpbnQgZGlzYW1iaWd1YXRlX2NvbW1pdHRpc2hfb25seShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJCQl2b2lkICpjYl9kYXRhX3VudXNlZCkKIHsKIAlzdHJ1Y3Qgb2JqZWN0ICpvYmo7CiAJaW50IGtpbmQ7CiAKLQlraW5kID0gb2lkX29iamVjdF9pbmZvKHRoZV9yZXBvc2l0b3J5LCBvaWQsIE5VTEwpOworCWtpbmQgPSBvaWRfb2JqZWN0X2luZm8ociwgb2lkLCBOVUxMKTsKIAlpZiAoa2luZCA9PSBPQkpfQ09NTUlUKQogCQlyZXR1cm4gMTsKIAlpZiAoa2luZCAhPSBPQkpfVEFHKQogCQlyZXR1cm4gMDsKIAogCS8qIFdlIG5lZWQgdG8gZG8gdGhpcyB0aGUgaGFyZCB3YXkuLi4gKi8KLQlvYmogPSBkZXJlZl90YWcodGhlX3JlcG9zaXRvcnksIHBhcnNlX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgb2lkKSwKLQkJCU5VTEwsIDApOworCW9iaiA9IGRlcmVmX3RhZyhyLCBwYXJzZV9vYmplY3Qociwgb2lkKSwgTlVMTCwgMCk7CiAJaWYgKG9iaiAmJiBvYmotPnR5cGUgPT0gT0JKX0NPTU1JVCkKIAkJcmV0dXJuIDE7CiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgZGlzYW1iaWd1YXRlX3RyZWVfb25seShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHZvaWQgKmNiX2RhdGFfdW51c2VkKQorc3RhdGljIGludCBkaXNhbWJpZ3VhdGVfdHJlZV9vbmx5KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJCSAgdm9pZCAqY2JfZGF0YV91bnVzZWQpCiB7Ci0JaW50IGtpbmQgPSBvaWRfb2JqZWN0X2luZm8odGhlX3JlcG9zaXRvcnksIG9pZCwgTlVMTCk7CisJaW50IGtpbmQgPSBvaWRfb2JqZWN0X2luZm8ociwgb2lkLCBOVUxMKTsKIAlyZXR1cm4ga2luZCA9PSBPQkpfVFJFRTsKIH0KIAotc3RhdGljIGludCBkaXNhbWJpZ3VhdGVfdHJlZWlzaF9vbmx5KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgdm9pZCAqY2JfZGF0YV91bnVzZWQpCitzdGF0aWMgaW50IGRpc2FtYmlndWF0ZV90cmVlaXNoX29ubHkoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJICAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkJICAgICB2b2lkICpjYl9kYXRhX3VudXNlZCkKIHsKIAlzdHJ1Y3Qgb2JqZWN0ICpvYmo7CiAJaW50IGtpbmQ7CiAKLQlraW5kID0gb2lkX29iamVjdF9pbmZvKHRoZV9yZXBvc2l0b3J5LCBvaWQsIE5VTEwpOworCWtpbmQgPSBvaWRfb2JqZWN0X2luZm8ociwgb2lkLCBOVUxMKTsKIAlpZiAoa2luZCA9PSBPQkpfVFJFRSB8fCBraW5kID09IE9CSl9DT01NSVQpCiAJCXJldHVybiAxOwogCWlmIChraW5kICE9IE9CSl9UQUcpCiAJCXJldHVybiAwOwogCiAJLyogV2UgbmVlZCB0byBkbyB0aGlzIHRoZSBoYXJkIHdheS4uLiAqLwotCW9iaiA9IGRlcmVmX3RhZyh0aGVfcmVwb3NpdG9yeSwgcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBvaWQpLAotCQkJTlVMTCwgMCk7CisJb2JqID0gZGVyZWZfdGFnKHIsIHBhcnNlX29iamVjdChyLCBvaWQpLCBOVUxMLCAwKTsKIAlpZiAob2JqICYmIChvYmotPnR5cGUgPT0gT0JKX1RSRUUgfHwgb2JqLT50eXBlID09IE9CSl9DT01NSVQpKQogCQlyZXR1cm4gMTsKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBkaXNhbWJpZ3VhdGVfYmxvYl9vbmx5KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgdm9pZCAqY2JfZGF0YV91bnVzZWQpCitzdGF0aWMgaW50IGRpc2FtYmlndWF0ZV9ibG9iX29ubHkoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkJICB2b2lkICpjYl9kYXRhX3VudXNlZCkKIHsKLQlpbnQga2luZCA9IG9pZF9vYmplY3RfaW5mbyh0aGVfcmVwb3NpdG9yeSwgb2lkLCBOVUxMKTsKKwlpbnQga2luZCA9IG9pZF9vYmplY3RfaW5mbyhyLCBvaWQsIE5VTEwpOwogCXJldHVybiBraW5kID09IE9CSl9CTE9COwogfQogCkBAIC0zMzksNyArMzIwLDggQEAKIAlyZXR1cm4gZXJyb3IoInVua25vd24gaGludCB0eXBlIGZvciAnJXMnOiAlcyIsIHZhciwgdmFsdWUpOwogfQogCi1zdGF0aWMgaW50IGluaXRfb2JqZWN0X2Rpc2FtYmlndWF0aW9uKGNvbnN0IGNoYXIgKm5hbWUsIGludCBsZW4sCitzdGF0aWMgaW50IGluaXRfb2JqZWN0X2Rpc2FtYmlndWF0aW9uKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSAgICAgIGNvbnN0IGNoYXIgKm5hbWUsIGludCBsZW4sCiAJCQkJICAgICAgc3RydWN0IGRpc2FtYmlndWF0ZV9zdGF0ZSAqZHMpCiB7CiAJaW50IGk7CkBAIC0zNzAsNyArMzUyLDggQEAKIAogCWRzLT5sZW4gPSBsZW47CiAJZHMtPmhleF9wZnhbbGVuXSA9ICdcMCc7Ci0JcHJlcGFyZV9hbHRfb2RiKHRoZV9yZXBvc2l0b3J5KTsKKwlkcy0+cmVwbyA9IHI7CisJcHJlcGFyZV9hbHRfb2RiKHIpOwogCXJldHVybiAwOwogfQogCkBAIC0zODAsMjUgKzM2MywyNSBAQAogCXN0cnVjdCBzdHJidWYgZGVzYyA9IFNUUkJVRl9JTklUOwogCWludCB0eXBlOwogCi0JaWYgKGRzLT5mbiAmJiAhZHMtPmZuKG9pZCwgZHMtPmNiX2RhdGEpKQorCWlmIChkcy0+Zm4gJiYgIWRzLT5mbihkcy0+cmVwbywgb2lkLCBkcy0+Y2JfZGF0YSkpCiAJCXJldHVybiAwOwogCi0JdHlwZSA9IG9pZF9vYmplY3RfaW5mbyh0aGVfcmVwb3NpdG9yeSwgb2lkLCBOVUxMKTsKKwl0eXBlID0gb2lkX29iamVjdF9pbmZvKGRzLT5yZXBvLCBvaWQsIE5VTEwpOwogCWlmICh0eXBlID09IE9CSl9DT01NSVQpIHsKLQkJc3RydWN0IGNvbW1pdCAqY29tbWl0ID0gbG9va3VwX2NvbW1pdCh0aGVfcmVwb3NpdG9yeSwgb2lkKTsKKwkJc3RydWN0IGNvbW1pdCAqY29tbWl0ID0gbG9va3VwX2NvbW1pdChkcy0+cmVwbywgb2lkKTsKIAkJaWYgKGNvbW1pdCkgewogCQkJc3RydWN0IHByZXR0eV9wcmludF9jb250ZXh0IHBwID0gezB9OwogCQkJcHAuZGF0ZV9tb2RlLnR5cGUgPSBEQVRFX1NIT1JUOwogCQkJZm9ybWF0X2NvbW1pdF9tZXNzYWdlKGNvbW1pdCwgIiAlYWQgLSAlcyIsICZkZXNjLCAmcHApOwogCQl9CiAJfSBlbHNlIGlmICh0eXBlID09IE9CSl9UQUcpIHsKLQkJc3RydWN0IHRhZyAqdGFnID0gbG9va3VwX3RhZyh0aGVfcmVwb3NpdG9yeSwgb2lkKTsKKwkJc3RydWN0IHRhZyAqdGFnID0gbG9va3VwX3RhZyhkcy0+cmVwbywgb2lkKTsKIAkJaWYgKCFwYXJzZV90YWcodGFnKSAmJiB0YWctPnRhZykKIAkJCXN0cmJ1Zl9hZGRmKCZkZXNjLCAiICVzIiwgdGFnLT50YWcpOwogCX0KIAogCWFkdmlzZSgiICAlcyAlcyVzIiwKLQkgICAgICAgZmluZF91bmlxdWVfYWJicmV2KG9pZCwgREVGQVVMVF9BQkJSRVYpLAorCSAgICAgICByZXBvX2ZpbmRfdW5pcXVlX2FiYnJldihkcy0+cmVwbywgb2lkLCBERUZBVUxUX0FCQlJFViksCiAJICAgICAgIHR5cGVfbmFtZSh0eXBlKSA/IHR5cGVfbmFtZSh0eXBlKSA6ICJ1bmtub3duIHR5cGUiLAogCSAgICAgICBkZXNjLmJ1Zik7CiAKQEAgLTQxMiwxMCArMzk1LDE4IEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgc29ydF9hbWJpZ3VvdXMoY29uc3Qgdm9pZCAqYSwgY29uc3Qgdm9pZCAqYikKK3N0YXRpYyBpbnQgcmVwb19jb2xsZWN0X2FtYmlndW91cyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKKwkJCQkgIHZvaWQgKmRhdGEpCiB7Ci0JaW50IGFfdHlwZSA9IG9pZF9vYmplY3RfaW5mbyh0aGVfcmVwb3NpdG9yeSwgYSwgTlVMTCk7Ci0JaW50IGJfdHlwZSA9IG9pZF9vYmplY3RfaW5mbyh0aGVfcmVwb3NpdG9yeSwgYiwgTlVMTCk7CisJcmV0dXJuIGNvbGxlY3RfYW1iaWd1b3VzKG9pZCwgZGF0YSk7Cit9CisKK3N0YXRpYyBpbnQgc29ydF9hbWJpZ3VvdXMoY29uc3Qgdm9pZCAqYSwgY29uc3Qgdm9pZCAqYiwgdm9pZCAqY3R4KQoreworCXN0cnVjdCByZXBvc2l0b3J5ICpzb3J0X2FtYmlndW91c19yZXBvID0gY3R4OworCWludCBhX3R5cGUgPSBvaWRfb2JqZWN0X2luZm8oc29ydF9hbWJpZ3VvdXNfcmVwbywgYSwgTlVMTCk7CisJaW50IGJfdHlwZSA9IG9pZF9vYmplY3RfaW5mbyhzb3J0X2FtYmlndW91c19yZXBvLCBiLCBOVUxMKTsKIAlpbnQgYV90eXBlX3NvcnQ7CiAJaW50IGJfdHlwZV9zb3J0OwogCkBAIC00NDAsMTQgKzQzMSwyMSBAQAogCXJldHVybiBhX3R5cGVfc29ydCA+IGJfdHlwZV9zb3J0ID8gMSA6IC0xOwogfQogCi1zdGF0aWMgaW50IGdldF9zaG9ydF9vaWQoY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbiwgc3RydWN0IG9iamVjdF9pZCAqb2lkLAotCQkJICB1bnNpZ25lZCBmbGFncykKK3N0YXRpYyB2b2lkIHNvcnRfYW1iaWd1b3VzX29pZF9hcnJheShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IG9pZF9hcnJheSAqYSkKK3sKKwlRU09SVF9TKGEtPm9pZCwgYS0+bnIsIHNvcnRfYW1iaWd1b3VzLCByKTsKK30KKworc3RhdGljIGVudW0gZ2V0X29pZF9yZXN1bHQgZ2V0X3Nob3J0X29pZChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJIGNvbnN0IGNoYXIgKm5hbWUsIGludCBsZW4sCisJCQkJCSBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkJCSB1bnNpZ25lZCBmbGFncykKIHsKIAlpbnQgc3RhdHVzOwogCXN0cnVjdCBkaXNhbWJpZ3VhdGVfc3RhdGUgZHM7CiAJaW50IHF1aWV0bHkgPSAhIShmbGFncyAmIEdFVF9PSURfUVVJRVRMWSk7CiAKLQlpZiAoaW5pdF9vYmplY3RfZGlzYW1iaWd1YXRpb24obmFtZSwgbGVuLCAmZHMpIDwgMCkKKwlpZiAoaW5pdF9vYmplY3RfZGlzYW1iaWd1YXRpb24ociwgbmFtZSwgbGVuLCAmZHMpIDwgMCkKIAkJcmV0dXJuIC0xOwogCiAJaWYgKEhBU19NVUxUSV9CSVRTKGZsYWdzICYgR0VUX09JRF9ESVNBTUJJR1VBVE9SUykpCkBAIC00NzAsNiArNDY4LDE4IEBACiAJZmluZF9zaG9ydF9wYWNrZWRfb2JqZWN0KCZkcyk7CiAJc3RhdHVzID0gZmluaXNoX29iamVjdF9kaXNhbWJpZ3VhdGlvbigmZHMsIG9pZCk7CiAKKwkvKgorCSAqIElmIHdlIGRpZG4ndCBmaW5kIGl0LCBkbyB0aGUgdXN1YWwgcmVwcmVwYXJlKCkgc2xvdy1wYXRoLAorCSAqIHNpbmNlIHRoZSBvYmplY3QgbWF5IGhhdmUgcmVjZW50bHkgYmVlbiBhZGRlZCB0byB0aGUgcmVwb3NpdG9yeQorCSAqIG9yIG1pZ3JhdGVkIGZyb20gbG9vc2UgdG8gcGFja2VkLgorCSAqLworCWlmIChzdGF0dXMgPT0gTUlTU0lOR19PQkpFQ1QpIHsKKwkJcmVwcmVwYXJlX3BhY2tlZF9naXQocik7CisJCWZpbmRfc2hvcnRfb2JqZWN0X2ZpbGVuYW1lKCZkcyk7CisJCWZpbmRfc2hvcnRfcGFja2VkX29iamVjdCgmZHMpOworCQlzdGF0dXMgPSBmaW5pc2hfb2JqZWN0X2Rpc2FtYmlndWF0aW9uKCZkcywgb2lkKTsKKwl9CisKIAlpZiAoIXF1aWV0bHkgJiYgKHN0YXR1cyA9PSBTSE9SVF9OQU1FX0FNQklHVU9VUykpIHsKIAkJc3RydWN0IG9pZF9hcnJheSBjb2xsZWN0ID0gT0lEX0FSUkFZX0lOSVQ7CiAKQEAgLTQ4NSw4ICs0OTUsOCBAQAogCQkJZHMuZm4gPSBOVUxMOwogCiAJCWFkdmlzZShfKCJUaGUgY2FuZGlkYXRlcyBhcmU6IikpOwotCQlmb3JfZWFjaF9hYmJyZXYoZHMuaGV4X3BmeCwgY29sbGVjdF9hbWJpZ3VvdXMsICZjb2xsZWN0KTsKLQkJUVNPUlQoY29sbGVjdC5vaWQsIGNvbGxlY3QubnIsIHNvcnRfYW1iaWd1b3VzKTsKKwkJcmVwb19mb3JfZWFjaF9hYmJyZXYociwgZHMuaGV4X3BmeCwgY29sbGVjdF9hbWJpZ3VvdXMsICZjb2xsZWN0KTsKKwkJc29ydF9hbWJpZ3VvdXNfb2lkX2FycmF5KHIsICZjb2xsZWN0KTsKIAogCQlpZiAob2lkX2FycmF5X2Zvcl9lYWNoKCZjb2xsZWN0LCBzaG93X2FtYmlndW91c19vYmplY3QsICZkcykpCiAJCQlCVUcoInNob3dfYW1iaWd1b3VzX29iamVjdCBzaG91bGRuJ3QgcmV0dXJuIG5vbi16ZXJvIik7CkBAIC00OTYsMTcgKzUwNiwxOCBAQAogCXJldHVybiBzdGF0dXM7CiB9CiAKLWludCBmb3JfZWFjaF9hYmJyZXYoY29uc3QgY2hhciAqcHJlZml4LCBlYWNoX2FiYnJldl9mbiBmbiwgdm9pZCAqY2JfZGF0YSkKK2ludCByZXBvX2Zvcl9lYWNoX2FiYnJldihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqcHJlZml4LAorCQkJIGVhY2hfYWJicmV2X2ZuIGZuLCB2b2lkICpjYl9kYXRhKQogewogCXN0cnVjdCBvaWRfYXJyYXkgY29sbGVjdCA9IE9JRF9BUlJBWV9JTklUOwogCXN0cnVjdCBkaXNhbWJpZ3VhdGVfc3RhdGUgZHM7CiAJaW50IHJldDsKIAotCWlmIChpbml0X29iamVjdF9kaXNhbWJpZ3VhdGlvbihwcmVmaXgsIHN0cmxlbihwcmVmaXgpLCAmZHMpIDwgMCkKKwlpZiAoaW5pdF9vYmplY3RfZGlzYW1iaWd1YXRpb24ociwgcHJlZml4LCBzdHJsZW4ocHJlZml4KSwgJmRzKSA8IDApCiAJCXJldHVybiAtMTsKIAogCWRzLmFsd2F5c19jYWxsX2ZuID0gMTsKLQlkcy5mbiA9IGNvbGxlY3RfYW1iaWd1b3VzOworCWRzLmZuID0gcmVwb19jb2xsZWN0X2FtYmlndW91czsKIAlkcy5jYl9kYXRhID0gJmNvbGxlY3Q7CiAJZmluZF9zaG9ydF9vYmplY3RfZmlsZW5hbWUoJmRzKTsKIAlmaW5kX3Nob3J0X3BhY2tlZF9vYmplY3QoJmRzKTsKQEAgLTUzMyw2ICs1NDQsNyBAQAogCXVuc2lnbmVkIGludCBpbml0X2xlbjsKIAl1bnNpZ25lZCBpbnQgY3VyX2xlbjsKIAljaGFyICpoZXg7CisJc3RydWN0IHJlcG9zaXRvcnkgKnJlcG87CiAJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkOwogfTsKIApAQCAtNTYxLDYgKzU3MywxMyBAQAogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50IHJlcG9fZXh0ZW5kX2FiYnJldl9sZW4oc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkJICB2b2lkICpjYl9kYXRhKQoreworCXJldHVybiBleHRlbmRfYWJicmV2X2xlbihvaWQsIGNiX2RhdGEpOworfQorCiBzdGF0aWMgdm9pZCBmaW5kX2FiYnJldl9sZW5fZm9yX21pZHgoc3RydWN0IG11bHRpX3BhY2tfaW5kZXggKm0sCiAJCQkJICAgICBzdHJ1Y3QgbWluX2FiYnJldl9kYXRhICptYWQpCiB7CkBAIC02MDUsNiArNjI0LDkgQEAKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKIAljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICptYWRfb2lkOwogCisJaWYgKHAtPm11bHRpX3BhY2tfaW5kZXgpCisJCXJldHVybjsKKwogCWlmIChvcGVuX3BhY2tfaW5kZXgocCkgfHwgIXAtPm51bV9vYmplY3RzKQogCQlyZXR1cm47CiAKQEAgLTYyMCwxNCArNjQyLDE0IEBACiAJICovCiAJbWFkLT5pbml0X2xlbiA9IDA7CiAJaWYgKCFtYXRjaCkgewotCQlpZiAobnRoX3BhY2tlZF9vYmplY3Rfb2lkKCZvaWQsIHAsIGZpcnN0KSkKKwkJaWYgKCFudGhfcGFja2VkX29iamVjdF9pZCgmb2lkLCBwLCBmaXJzdCkpCiAJCQlleHRlbmRfYWJicmV2X2xlbigmb2lkLCBtYWQpOwogCX0gZWxzZSBpZiAoZmlyc3QgPCBudW0gLSAxKSB7Ci0JCWlmIChudGhfcGFja2VkX29iamVjdF9vaWQoJm9pZCwgcCwgZmlyc3QgKyAxKSkKKwkJaWYgKCFudGhfcGFja2VkX29iamVjdF9pZCgmb2lkLCBwLCBmaXJzdCArIDEpKQogCQkJZXh0ZW5kX2FiYnJldl9sZW4oJm9pZCwgbWFkKTsKIAl9CiAJaWYgKGZpcnN0ID4gMCkgewotCQlpZiAobnRoX3BhY2tlZF9vYmplY3Rfb2lkKCZvaWQsIHAsIGZpcnN0IC0gMSkpCisJCWlmICghbnRoX3BhY2tlZF9vYmplY3RfaWQoJm9pZCwgcCwgZmlyc3QgLSAxKSkKIAkJCWV4dGVuZF9hYmJyZXZfbGVuKCZvaWQsIG1hZCk7CiAJfQogCW1hZC0+aW5pdF9sZW4gPSBtYWQtPmN1cl9sZW47CkBAIC02MzgsMjEgKzY2MCwyMiBAQAogCXN0cnVjdCBtdWx0aV9wYWNrX2luZGV4ICptOwogCXN0cnVjdCBwYWNrZWRfZ2l0ICpwOwogCi0JZm9yIChtID0gZ2V0X211bHRpX3BhY2tfaW5kZXgodGhlX3JlcG9zaXRvcnkpOyBtOyBtID0gbS0+bmV4dCkKKwlmb3IgKG0gPSBnZXRfbXVsdGlfcGFja19pbmRleChtYWQtPnJlcG8pOyBtOyBtID0gbS0+bmV4dCkKIAkJZmluZF9hYmJyZXZfbGVuX2Zvcl9taWR4KG0sIG1hZCk7Ci0JZm9yIChwID0gZ2V0X3BhY2tlZF9naXQodGhlX3JlcG9zaXRvcnkpOyBwOyBwID0gcC0+bmV4dCkKKwlmb3IgKHAgPSBnZXRfcGFja2VkX2dpdChtYWQtPnJlcG8pOyBwOyBwID0gcC0+bmV4dCkKIAkJZmluZF9hYmJyZXZfbGVuX2Zvcl9wYWNrKHAsIG1hZCk7CiB9CiAKLWludCBmaW5kX3VuaXF1ZV9hYmJyZXZfcihjaGFyICpoZXgsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgaW50IGxlbikKK2ludCByZXBvX2ZpbmRfdW5pcXVlX2FiYnJldl9yKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjaGFyICpoZXgsCisJCQkgICAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIGludCBsZW4pCiB7CiAJc3RydWN0IGRpc2FtYmlndWF0ZV9zdGF0ZSBkczsKIAlzdHJ1Y3QgbWluX2FiYnJldl9kYXRhIG1hZDsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZF9yZXQ7Ci0JY29uc3QgdW5zaWduZWQgaGV4c3ogPSB0aGVfaGFzaF9hbGdvLT5oZXhzejsKKwljb25zdCB1bnNpZ25lZCBoZXhzeiA9IHItPmhhc2hfYWxnby0+aGV4c3o7CiAKIAlpZiAobGVuIDwgMCkgewotCQl1bnNpZ25lZCBsb25nIGNvdW50ID0gYXBwcm94aW1hdGVfb2JqZWN0X2NvdW50KCk7CisJCXVuc2lnbmVkIGxvbmcgY291bnQgPSByZXBvX2FwcHJveGltYXRlX29iamVjdF9jb3VudChyKTsKIAkJLyoKIAkJICogQWRkIG9uZSBiZWNhdXNlIHRoZSBNU0Igb25seSB0ZWxscyB1cyB0aGUgaGlnaGVzdCBiaXQgc2V0LAogCQkgKiBub3QgaW5jbHVkaW5nIHRoZSB2YWx1ZSBvZiBhbGwgdGhlIF9vdGhlcl8gYml0cyAoc28gIjE1IgpAQCAtNjc3LDYgKzcwMCw3IEBACiAJaWYgKGxlbiA9PSBoZXhzeiB8fCAhbGVuKQogCQlyZXR1cm4gaGV4c3o7CiAKKwltYWQucmVwbyA9IHI7CiAJbWFkLmluaXRfbGVuID0gbGVuOwogCW1hZC5jdXJfbGVuID0gbGVuOwogCW1hZC5oZXggPSBoZXg7CkBAIC02ODQsMTAgKzcwOCwxMCBAQAogCiAJZmluZF9hYmJyZXZfbGVuX3BhY2tlZCgmbWFkKTsKIAotCWlmIChpbml0X29iamVjdF9kaXNhbWJpZ3VhdGlvbihoZXgsIG1hZC5jdXJfbGVuLCAmZHMpIDwgMCkKKwlpZiAoaW5pdF9vYmplY3RfZGlzYW1iaWd1YXRpb24ociwgaGV4LCBtYWQuY3VyX2xlbiwgJmRzKSA8IDApCiAJCXJldHVybiAtMTsKIAotCWRzLmZuID0gZXh0ZW5kX2FiYnJldl9sZW47CisJZHMuZm4gPSByZXBvX2V4dGVuZF9hYmJyZXZfbGVuOwogCWRzLmFsd2F5c19jYWxsX2ZuID0gMTsKIAlkcy5jYl9kYXRhID0gKHZvaWQgKikmbWFkOwogCkBAIC02OTgsMTMgKzcyMiwxNSBAQAogCXJldHVybiBtYWQuY3VyX2xlbjsKIH0KIAotY29uc3QgY2hhciAqZmluZF91bmlxdWVfYWJicmV2KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgaW50IGxlbikKK2NvbnN0IGNoYXIgKnJlcG9fZmluZF91bmlxdWVfYWJicmV2KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkJICAgIGludCBsZW4pCiB7CiAJc3RhdGljIGludCBidWZubzsKIAlzdGF0aWMgY2hhciBoZXhidWZmZXJbNF1bR0lUX01BWF9IRVhTWiArIDFdOwogCWNoYXIgKmhleCA9IGhleGJ1ZmZlcltidWZub107CiAJYnVmbm8gPSAoYnVmbm8gKyAxKSAlIEFSUkFZX1NJWkUoaGV4YnVmZmVyKTsKLQlmaW5kX3VuaXF1ZV9hYmJyZXZfcihoZXgsIG9pZCwgbGVuKTsKKwlyZXBvX2ZpbmRfdW5pcXVlX2FiYnJldl9yKHIsIGhleCwgb2lkLCBsZW4pOwogCXJldHVybiBoZXg7CiB9CiAKQEAgLTc1OSwxMSArNzg1LDExIEBACiAJcmV0dXJuIGF0X21hcmsoc3RyaW5nLCBsZW4sIHN1ZmZpeCwgQVJSQVlfU0laRShzdWZmaXgpKTsKIH0KIAotc3RhdGljIGludCBnZXRfb2lkXzEoY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbiwgc3RydWN0IG9iamVjdF9pZCAqb2lkLCB1bnNpZ25lZCBsb29rdXBfZmxhZ3MpOwotc3RhdGljIGludCBpbnRlcnByZXRfbnRoX3ByaW9yX2NoZWNrb3V0KGNvbnN0IGNoYXIgKm5hbWUsIGludCBuYW1lbGVuLCBzdHJ1Y3Qgc3RyYnVmICpidWYpOworc3RhdGljIGVudW0gZ2V0X29pZF9yZXN1bHQgZ2V0X29pZF8xKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpuYW1lLCBpbnQgbGVuLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHVuc2lnbmVkIGxvb2t1cF9mbGFncyk7CitzdGF0aWMgaW50IGludGVycHJldF9udGhfcHJpb3JfY2hlY2tvdXQoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKm5hbWUsIGludCBuYW1lbGVuLCBzdHJ1Y3Qgc3RyYnVmICpidWYpOwogCi1zdGF0aWMgaW50IGdldF9vaWRfYmFzaWMoY29uc3QgY2hhciAqc3RyLCBpbnQgbGVuLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCi0JCQkgIHVuc2lnbmVkIGludCBmbGFncykKK3N0YXRpYyBpbnQgZ2V0X29pZF9iYXNpYyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqc3RyLCBpbnQgbGVuLAorCQkJIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgdW5zaWduZWQgaW50IGZsYWdzKQogewogCXN0YXRpYyBjb25zdCBjaGFyICp3YXJuX21zZyA9ICJyZWZuYW1lICclLipzJyBpcyBhbWJpZ3VvdXMuIjsKIAlzdGF0aWMgY29uc3QgY2hhciAqb2JqZWN0X25hbWVfbXNnID0gTl8oCkBAIC03NzEsNyArNzk3LDcgQEAKIAkiYmVjYXVzZSBpdCB3aWxsIGJlIGlnbm9yZWQgd2hlbiB5b3UganVzdCBzcGVjaWZ5IDQwLWhleC4gVGhlc2UgcmVmc1xuIgogCSJtYXkgYmUgY3JlYXRlZCBieSBtaXN0YWtlLiBGb3IgZXhhbXBsZSxcbiIKIAkiXG4iCi0JIiAgZ2l0IGNoZWNrb3V0IC1iICRiciAkKGdpdCByZXYtcGFyc2UgLi4uKVxuIgorCSIgIGdpdCBzd2l0Y2ggLWMgJGJyICQoZ2l0IHJldi1wYXJzZSAuLi4pXG4iCiAJIlxuIgogCSJ3aGVyZSBcIiRiclwiIGlzIHNvbWVob3cgZW1wdHkgYW5kIGEgNDAtaGV4IHJlZiBpcyBjcmVhdGVkLiBQbGVhc2VcbiIKIAkiZXhhbWluZSB0aGVzZSByZWZzIGFuZCBtYXliZSBkZWxldGUgdGhlbS4gVHVybiB0aGlzIG1lc3NhZ2Ugb2ZmIGJ5XG4iCkBAIC03ODEsOSArODA3LDkgQEAKIAlpbnQgcmVmc19mb3VuZCA9IDA7CiAJaW50IGF0LCByZWZsb2dfbGVuLCBudGhfcHJpb3IgPSAwOwogCi0JaWYgKGxlbiA9PSB0aGVfaGFzaF9hbGdvLT5oZXhzeiAmJiAhZ2V0X29pZF9oZXgoc3RyLCBvaWQpKSB7CisJaWYgKGxlbiA9PSByLT5oYXNoX2FsZ28tPmhleHN6ICYmICFnZXRfb2lkX2hleChzdHIsIG9pZCkpIHsKIAkJaWYgKHdhcm5fYW1iaWd1b3VzX3JlZnMgJiYgd2Fybl9vbl9vYmplY3RfcmVmbmFtZV9hbWJpZ3VpdHkpIHsKLQkJCXJlZnNfZm91bmQgPSBkd2ltX3JlZihzdHIsIGxlbiwgJnRtcF9vaWQsICZyZWFsX3JlZik7CisJCQlyZWZzX2ZvdW5kID0gcmVwb19kd2ltX3JlZihyLCBzdHIsIGxlbiwgJnRtcF9vaWQsICZyZWFsX3JlZik7CiAJCQlpZiAocmVmc19mb3VuZCA+IDApIHsKIAkJCQl3YXJuaW5nKHdhcm5fbXNnLCBsZW4sIHN0cik7CiAJCQkJaWYgKGFkdmljZV9vYmplY3RfbmFtZV93YXJuaW5nKQpAQCAtODI0LDggKzg1MCw4IEBACiAJCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CiAJCWludCBkZXRhY2hlZDsKIAotCQlpZiAoaW50ZXJwcmV0X250aF9wcmlvcl9jaGVja291dChzdHIsIGxlbiwgJmJ1ZikgPiAwKSB7Ci0JCQlkZXRhY2hlZCA9IChidWYubGVuID09IHRoZV9oYXNoX2FsZ28tPmhleHN6ICYmICFnZXRfb2lkX2hleChidWYuYnVmLCBvaWQpKTsKKwkJaWYgKGludGVycHJldF9udGhfcHJpb3JfY2hlY2tvdXQociwgc3RyLCBsZW4sICZidWYpID4gMCkgeworCQkJZGV0YWNoZWQgPSAoYnVmLmxlbiA9PSByLT5oYXNoX2FsZ28tPmhleHN6ICYmICFnZXRfb2lkX2hleChidWYuYnVmLCBvaWQpKTsKIAkJCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOwogCQkJaWYgKGRldGFjaGVkKQogCQkJCXJldHVybiAwOwpAQCAtODM0LDE4ICs4NjAsMTggQEAKIAogCWlmICghbGVuICYmIHJlZmxvZ19sZW4pCiAJCS8qIGFsbG93ICJAey4uLn0iIHRvIG1lYW4gdGhlIGN1cnJlbnQgYnJhbmNoIHJlZmxvZyAqLwotCQlyZWZzX2ZvdW5kID0gZHdpbV9yZWYoIkhFQUQiLCA0LCBvaWQsICZyZWFsX3JlZik7CisJCXJlZnNfZm91bmQgPSByZXBvX2R3aW1fcmVmKHIsICJIRUFEIiwgNCwgb2lkLCAmcmVhbF9yZWYpOwogCWVsc2UgaWYgKHJlZmxvZ19sZW4pCi0JCXJlZnNfZm91bmQgPSBkd2ltX2xvZyhzdHIsIGxlbiwgb2lkLCAmcmVhbF9yZWYpOworCQlyZWZzX2ZvdW5kID0gcmVwb19kd2ltX2xvZyhyLCBzdHIsIGxlbiwgb2lkLCAmcmVhbF9yZWYpOwogCWVsc2UKLQkJcmVmc19mb3VuZCA9IGR3aW1fcmVmKHN0ciwgbGVuLCBvaWQsICZyZWFsX3JlZik7CisJCXJlZnNfZm91bmQgPSByZXBvX2R3aW1fcmVmKHIsIHN0ciwgbGVuLCBvaWQsICZyZWFsX3JlZik7CiAKIAlpZiAoIXJlZnNfZm91bmQpCiAJCXJldHVybiAtMTsKIAogCWlmICh3YXJuX2FtYmlndW91c19yZWZzICYmICEoZmxhZ3MgJiBHRVRfT0lEX1FVSUVUTFkpICYmCiAJICAgIChyZWZzX2ZvdW5kID4gMSB8fAotCSAgICAgIWdldF9zaG9ydF9vaWQoc3RyLCBsZW4sICZ0bXBfb2lkLCBHRVRfT0lEX1FVSUVUTFkpKSkKKwkgICAgICFnZXRfc2hvcnRfb2lkKHIsIHN0ciwgbGVuLCAmdG1wX29pZCwgR0VUX09JRF9RVUlFVExZKSkpCiAJCXdhcm5pbmcod2Fybl9tc2csIGxlbiwgc3RyKTsKIAogCWlmIChyZWZsb2dfbGVuKSB7CkBAIC04NzcsMjkgKzkwMywyNSBAQAogCQkJCXJldHVybiAtMTsKIAkJCX0KIAkJfQotCQlpZiAocmVhZF9yZWZfYXQocmVhbF9yZWYsIGZsYWdzLCBhdF90aW1lLCBudGgsIG9pZCwgTlVMTCwKKwkJaWYgKHJlYWRfcmVmX2F0KGdldF9tYWluX3JlZl9zdG9yZShyKSwKKwkJCQlyZWFsX3JlZiwgZmxhZ3MsIGF0X3RpbWUsIG50aCwgb2lkLCBOVUxMLAogCQkJCSZjb190aW1lLCAmY29fdHosICZjb19jbnQpKSB7CiAJCQlpZiAoIWxlbikgewotCQkJCWlmIChzdGFydHNfd2l0aChyZWFsX3JlZiwgInJlZnMvaGVhZHMvIikpIHsKLQkJCQkJc3RyID0gcmVhbF9yZWYgKyAxMTsKLQkJCQkJbGVuID0gc3RybGVuKHJlYWxfcmVmICsgMTEpOwotCQkJCX0gZWxzZSB7Ci0JCQkJCS8qIGRldGFjaGVkIEhFQUQgKi8KKwkJCQlpZiAoIXNraXBfcHJlZml4KHJlYWxfcmVmLCAicmVmcy9oZWFkcy8iLCAmc3RyKSkKIAkJCQkJc3RyID0gIkhFQUQiOwotCQkJCQlsZW4gPSA0OwotCQkJCX0KKwkJCQlsZW4gPSBzdHJsZW4oc3RyKTsKIAkJCX0KIAkJCWlmIChhdF90aW1lKSB7CiAJCQkJaWYgKCEoZmxhZ3MgJiBHRVRfT0lEX1FVSUVUTFkpKSB7Ci0JCQkJCXdhcm5pbmcoIkxvZyBmb3IgJyUuKnMnIG9ubHkgZ29lcyAiCi0JCQkJCQkiYmFjayB0byAlcy4iLCBsZW4sIHN0ciwKKwkJCQkJd2FybmluZyhfKCJsb2cgZm9yICclLipzJyBvbmx5IGdvZXMgYmFjayB0byAlcyIpLAorCQkJCQkJbGVuLCBzdHIsCiAJCQkJCQlzaG93X2RhdGUoY29fdGltZSwgY29fdHosIERBVEVfTU9ERShSRkMyODIyKSkpOwogCQkJCX0KIAkJCX0gZWxzZSB7CiAJCQkJaWYgKGZsYWdzICYgR0VUX09JRF9RVUlFVExZKSB7CiAJCQkJCWV4aXQoMTI4KTsKIAkJCQl9Ci0JCQkJZGllKCJMb2cgZm9yICclLipzJyBvbmx5IGhhcyAlZCBlbnRyaWVzLiIsCisJCQkJZGllKF8oImxvZyBmb3IgJyUuKnMnIG9ubHkgaGFzICVkIGVudHJpZXMiKSwKIAkJCQkgICAgbGVuLCBzdHIsIGNvX2NudCk7CiAJCQl9CiAJCX0KQEAgLTkwOSw3MSArOTMxLDc1IEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgZ2V0X3BhcmVudChjb25zdCBjaGFyICpuYW1lLCBpbnQgbGVuLAotCQkgICAgICBzdHJ1Y3Qgb2JqZWN0X2lkICpyZXN1bHQsIGludCBpZHgpCitzdGF0aWMgZW51bSBnZXRfb2lkX3Jlc3VsdCBnZXRfcGFyZW50KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSAgICAgIGNvbnN0IGNoYXIgKm5hbWUsIGludCBsZW4sCisJCQkJICAgICAgc3RydWN0IG9iamVjdF9pZCAqcmVzdWx0LCBpbnQgaWR4KQogewogCXN0cnVjdCBvYmplY3RfaWQgb2lkOwotCWludCByZXQgPSBnZXRfb2lkXzEobmFtZSwgbGVuLCAmb2lkLCBHRVRfT0lEX0NPTU1JVFRJU0gpOworCWVudW0gZ2V0X29pZF9yZXN1bHQgcmV0ID0gZ2V0X29pZF8xKHIsIG5hbWUsIGxlbiwgJm9pZCwKKwkJCQkJICAgIEdFVF9PSURfQ09NTUlUVElTSCk7CiAJc3RydWN0IGNvbW1pdCAqY29tbWl0OwogCXN0cnVjdCBjb21taXRfbGlzdCAqcDsKIAogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7Ci0JY29tbWl0ID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2UodGhlX3JlcG9zaXRvcnksICZvaWQpOworCWNvbW1pdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHIsICZvaWQpOwogCWlmIChwYXJzZV9jb21taXQoY29tbWl0KSkKLQkJcmV0dXJuIC0xOworCQlyZXR1cm4gTUlTU0lOR19PQkpFQ1Q7CiAJaWYgKCFpZHgpIHsKIAkJb2lkY3B5KHJlc3VsdCwgJmNvbW1pdC0+b2JqZWN0Lm9pZCk7Ci0JCXJldHVybiAwOworCQlyZXR1cm4gRk9VTkQ7CiAJfQogCXAgPSBjb21taXQtPnBhcmVudHM7CiAJd2hpbGUgKHApIHsKIAkJaWYgKCEtLWlkeCkgewogCQkJb2lkY3B5KHJlc3VsdCwgJnAtPml0ZW0tPm9iamVjdC5vaWQpOwotCQkJcmV0dXJuIDA7CisJCQlyZXR1cm4gRk9VTkQ7CiAJCX0KIAkJcCA9IHAtPm5leHQ7CiAJfQotCXJldHVybiAtMTsKKwlyZXR1cm4gTUlTU0lOR19PQkpFQ1Q7CiB9CiAKLXN0YXRpYyBpbnQgZ2V0X250aF9hbmNlc3Rvcihjb25zdCBjaGFyICpuYW1lLCBpbnQgbGVuLAotCQkJICAgIHN0cnVjdCBvYmplY3RfaWQgKnJlc3VsdCwgaW50IGdlbmVyYXRpb24pCitzdGF0aWMgZW51bSBnZXRfb2lkX3Jlc3VsdCBnZXRfbnRoX2FuY2VzdG9yKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQkgICAgY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbiwKKwkJCQkJICAgIHN0cnVjdCBvYmplY3RfaWQgKnJlc3VsdCwKKwkJCQkJICAgIGludCBnZW5lcmF0aW9uKQogewogCXN0cnVjdCBvYmplY3RfaWQgb2lkOwogCXN0cnVjdCBjb21taXQgKmNvbW1pdDsKIAlpbnQgcmV0OwogCi0JcmV0ID0gZ2V0X29pZF8xKG5hbWUsIGxlbiwgJm9pZCwgR0VUX09JRF9DT01NSVRUSVNIKTsKKwlyZXQgPSBnZXRfb2lkXzEociwgbmFtZSwgbGVuLCAmb2lkLCBHRVRfT0lEX0NPTU1JVFRJU0gpOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7Ci0JY29tbWl0ID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2UodGhlX3JlcG9zaXRvcnksICZvaWQpOworCWNvbW1pdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHIsICZvaWQpOwogCWlmICghY29tbWl0KQotCQlyZXR1cm4gLTE7CisJCXJldHVybiBNSVNTSU5HX09CSkVDVDsKIAogCXdoaWxlIChnZW5lcmF0aW9uLS0pIHsKIAkJaWYgKHBhcnNlX2NvbW1pdChjb21taXQpIHx8ICFjb21taXQtPnBhcmVudHMpCi0JCQlyZXR1cm4gLTE7CisJCQlyZXR1cm4gTUlTU0lOR19PQkpFQ1Q7CiAJCWNvbW1pdCA9IGNvbW1pdC0+cGFyZW50cy0+aXRlbTsKIAl9CiAJb2lkY3B5KHJlc3VsdCwgJmNvbW1pdC0+b2JqZWN0Lm9pZCk7Ci0JcmV0dXJuIDA7CisJcmV0dXJuIEZPVU5EOwogfQogCi1zdHJ1Y3Qgb2JqZWN0ICpwZWVsX3RvX3R5cGUoY29uc3QgY2hhciAqbmFtZSwgaW50IG5hbWVsZW4sCi0JCQkgICAgc3RydWN0IG9iamVjdCAqbywgZW51bSBvYmplY3RfdHlwZSBleHBlY3RlZF90eXBlKQorc3RydWN0IG9iamVjdCAqcmVwb19wZWVsX3RvX3R5cGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKm5hbWUsIGludCBuYW1lbGVuLAorCQkJCSBzdHJ1Y3Qgb2JqZWN0ICpvLCBlbnVtIG9iamVjdF90eXBlIGV4cGVjdGVkX3R5cGUpCiB7CiAJaWYgKG5hbWUgJiYgIW5hbWVsZW4pCiAJCW5hbWVsZW4gPSBzdHJsZW4obmFtZSk7CiAJd2hpbGUgKDEpIHsKLQkJaWYgKCFvIHx8ICghby0+cGFyc2VkICYmICFwYXJzZV9vYmplY3QodGhlX3JlcG9zaXRvcnksICZvLT5vaWQpKSkKKwkJaWYgKCFvIHx8ICghby0+cGFyc2VkICYmICFwYXJzZV9vYmplY3QociwgJm8tPm9pZCkpKQogCQkJcmV0dXJuIE5VTEw7CiAJCWlmIChleHBlY3RlZF90eXBlID09IE9CSl9BTlkgfHwgby0+dHlwZSA9PSBleHBlY3RlZF90eXBlKQogCQkJcmV0dXJuIG87CiAJCWlmIChvLT50eXBlID09IE9CSl9UQUcpCiAJCQlvID0gKChzdHJ1Y3QgdGFnKikgbyktPnRhZ2dlZDsKIAkJZWxzZSBpZiAoby0+dHlwZSA9PSBPQkpfQ09NTUlUKQotCQkJbyA9ICYoZ2V0X2NvbW1pdF90cmVlKCgoc3RydWN0IGNvbW1pdCAqKW8pKS0+b2JqZWN0KTsKKwkJCW8gPSAmKHJlcG9fZ2V0X2NvbW1pdF90cmVlKHIsICgoc3RydWN0IGNvbW1pdCAqKW8pKS0+b2JqZWN0KTsKIAkJZWxzZSB7CiAJCQlpZiAobmFtZSkKIAkJCQllcnJvcigiJS4qczogZXhwZWN0ZWQgJXMgdHlwZSwgYnV0IHRoZSBvYmplY3QgIgpAQCAtOTg1LDggKzEwMTEsOCBAQAogCX0KIH0KIAotc3RhdGljIGludCBwZWVsX29uaW9uKGNvbnN0IGNoYXIgKm5hbWUsIGludCBsZW4sIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKLQkJICAgICAgdW5zaWduZWQgbG9va3VwX2ZsYWdzKQorc3RhdGljIGludCBwZWVsX29uaW9uKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpuYW1lLCBpbnQgbGVuLAorCQkgICAgICBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHVuc2lnbmVkIGxvb2t1cF9mbGFncykKIHsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG91dGVyOwogCWNvbnN0IGNoYXIgKnNwOwpAQCAtMTAzNiwxNSArMTA2MiwxNSBAQAogCWVsc2UgaWYgKGV4cGVjdGVkX3R5cGUgPT0gT0JKX1RSRUUpCiAJCWxvb2t1cF9mbGFncyB8PSBHRVRfT0lEX1RSRUVJU0g7CiAKLQlpZiAoZ2V0X29pZF8xKG5hbWUsIHNwIC0gbmFtZSAtIDIsICZvdXRlciwgbG9va3VwX2ZsYWdzKSkKKwlpZiAoZ2V0X29pZF8xKHIsIG5hbWUsIHNwIC0gbmFtZSAtIDIsICZvdXRlciwgbG9va3VwX2ZsYWdzKSkKIAkJcmV0dXJuIC0xOwogCi0JbyA9IHBhcnNlX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgJm91dGVyKTsKKwlvID0gcGFyc2Vfb2JqZWN0KHIsICZvdXRlcik7CiAJaWYgKCFvKQogCQlyZXR1cm4gLTE7CiAJaWYgKCFleHBlY3RlZF90eXBlKSB7Ci0JCW8gPSBkZXJlZl90YWcodGhlX3JlcG9zaXRvcnksIG8sIG5hbWUsIHNwIC0gbmFtZSAtIDIpOwotCQlpZiAoIW8gfHwgKCFvLT5wYXJzZWQgJiYgIXBhcnNlX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgJm8tPm9pZCkpKQorCQlvID0gZGVyZWZfdGFnKHIsIG8sIG5hbWUsIHNwIC0gbmFtZSAtIDIpOworCQlpZiAoIW8gfHwgKCFvLT5wYXJzZWQgJiYgIXBhcnNlX29iamVjdChyLCAmby0+b2lkKSkpCiAJCQlyZXR1cm4gLTE7CiAJCW9pZGNweShvaWQsICZvLT5vaWQpOwogCQlyZXR1cm4gMDsKQEAgLTEwNTUsNyArMTA4MSw3IEBACiAJICogaWYgd2UgZG8gbm90IGdldCB0aGUgbmVlZGVkIG9iamVjdCwgd2Ugc2hvdWxkCiAJICogYmFyZi4KIAkgKi8KLQlvID0gcGVlbF90b190eXBlKG5hbWUsIGxlbiwgbywgZXhwZWN0ZWRfdHlwZSk7CisJbyA9IHJlcG9fcGVlbF90b190eXBlKHIsIG5hbWUsIGxlbiwgbywgZXhwZWN0ZWRfdHlwZSk7CiAJaWYgKCFvKQogCQlyZXR1cm4gLTE7CiAKQEAgLTEwNzUsMTQgKzExMDEsMTYgQEAKIAogCQlwcmVmaXggPSB4c3RybmR1cChzcCArIDEsIG5hbWUgKyBsZW4gLSAxIC0gKHNwICsgMSkpOwogCQljb21taXRfbGlzdF9pbnNlcnQoKHN0cnVjdCBjb21taXQgKilvLCAmbGlzdCk7Ci0JCXJldCA9IGdldF9vaWRfb25lbGluZShwcmVmaXgsIG9pZCwgbGlzdCk7CisJCXJldCA9IGdldF9vaWRfb25lbGluZShyLCBwcmVmaXgsIG9pZCwgbGlzdCk7CiAJCWZyZWUocHJlZml4KTsKIAkJcmV0dXJuIHJldDsKIAl9CiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgZ2V0X2Rlc2NyaWJlX25hbWUoY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbiwgc3RydWN0IG9iamVjdF9pZCAqb2lkKQorc3RhdGljIGludCBnZXRfZGVzY3JpYmVfbmFtZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgICAgY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbiwKKwkJCSAgICAgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewogCWNvbnN0IGNoYXIgKmNwOwogCXVuc2lnbmVkIGZsYWdzID0gR0VUX09JRF9RVUlFVExZIHwgR0VUX09JRF9DT01NSVQ7CkBAIC0xMDk2LDE0ICsxMTI0LDE4IEBACiAJCQlpZiAoY2ggPT0gJ2cnICYmIGNwWy0xXSA9PSAnLScpIHsKIAkJCQljcCsrOwogCQkJCWxlbiAtPSBjcCAtIG5hbWU7Ci0JCQkJcmV0dXJuIGdldF9zaG9ydF9vaWQoY3AsIGxlbiwgb2lkLCBmbGFncyk7CisJCQkJcmV0dXJuIGdldF9zaG9ydF9vaWQociwKKwkJCQkJCSAgICAgY3AsIGxlbiwgb2lkLCBmbGFncyk7CiAJCQl9CiAJCX0KIAl9CiAJcmV0dXJuIC0xOwogfQogCi1zdGF0aWMgaW50IGdldF9vaWRfMShjb25zdCBjaGFyICpuYW1lLCBpbnQgbGVuLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHVuc2lnbmVkIGxvb2t1cF9mbGFncykKK3N0YXRpYyBlbnVtIGdldF9vaWRfcmVzdWx0IGdldF9vaWRfMShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgICAgIGNvbnN0IGNoYXIgKm5hbWUsIGludCBsZW4sCisJCQkJICAgICBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCQkJICAgICB1bnNpZ25lZCBsb29rdXBfZmxhZ3MpCiB7CiAJaW50IHJldCwgaGFzX3N1ZmZpeDsKIAljb25zdCBjaGFyICpjcDsKQEAgLTExMjIsMzMgKzExNTQsNDIgQEAKIAl9CiAKIAlpZiAoaGFzX3N1ZmZpeCkgewotCQlpbnQgbnVtID0gMDsKKwkJdW5zaWduZWQgaW50IG51bSA9IDA7CiAJCWludCBsZW4xID0gY3AgLSBuYW1lOwogCQljcCsrOwotCQl3aGlsZSAoY3AgPCBuYW1lICsgbGVuKQotCQkJbnVtID0gbnVtICogMTAgKyAqY3ArKyAtICcwJzsKKwkJd2hpbGUgKGNwIDwgbmFtZSArIGxlbikgeworCQkJdW5zaWduZWQgaW50IGRpZ2l0ID0gKmNwKysgLSAnMCc7CisJCQlpZiAodW5zaWduZWRfbXVsdF9vdmVyZmxvd3MobnVtLCAxMCkpCisJCQkJcmV0dXJuIE1JU1NJTkdfT0JKRUNUOworCQkJbnVtICo9IDEwOworCQkJaWYgKHVuc2lnbmVkX2FkZF9vdmVyZmxvd3MobnVtLCBkaWdpdCkpCisJCQkJcmV0dXJuIE1JU1NJTkdfT0JKRUNUOworCQkJbnVtICs9IGRpZ2l0OworCQl9CiAJCWlmICghbnVtICYmIGxlbjEgPT0gbGVuIC0gMSkKIAkJCW51bSA9IDE7CisJCWVsc2UgaWYgKG51bSA+IElOVF9NQVgpCisJCQlyZXR1cm4gTUlTU0lOR19PQkpFQ1Q7CiAJCWlmIChoYXNfc3VmZml4ID09ICdeJykKLQkJCXJldHVybiBnZXRfcGFyZW50KG5hbWUsIGxlbjEsIG9pZCwgbnVtKTsKKwkJCXJldHVybiBnZXRfcGFyZW50KHIsIG5hbWUsIGxlbjEsIG9pZCwgbnVtKTsKIAkJLyogZWxzZSBpZiAoaGFzX3N1ZmZpeCA9PSAnficpIC0tIGdvZXMgd2l0aG91dCBzYXlpbmcgKi8KLQkJcmV0dXJuIGdldF9udGhfYW5jZXN0b3IobmFtZSwgbGVuMSwgb2lkLCBudW0pOworCQlyZXR1cm4gZ2V0X250aF9hbmNlc3RvcihyLCBuYW1lLCBsZW4xLCBvaWQsIG51bSk7CiAJfQogCi0JcmV0ID0gcGVlbF9vbmlvbihuYW1lLCBsZW4sIG9pZCwgbG9va3VwX2ZsYWdzKTsKKwlyZXQgPSBwZWVsX29uaW9uKHIsIG5hbWUsIGxlbiwgb2lkLCBsb29rdXBfZmxhZ3MpOwogCWlmICghcmV0KQotCQlyZXR1cm4gMDsKKwkJcmV0dXJuIEZPVU5EOwogCi0JcmV0ID0gZ2V0X29pZF9iYXNpYyhuYW1lLCBsZW4sIG9pZCwgbG9va3VwX2ZsYWdzKTsKKwlyZXQgPSBnZXRfb2lkX2Jhc2ljKHIsIG5hbWUsIGxlbiwgb2lkLCBsb29rdXBfZmxhZ3MpOwogCWlmICghcmV0KQotCQlyZXR1cm4gMDsKKwkJcmV0dXJuIEZPVU5EOwogCiAJLyogSXQgY291bGQgYmUgZGVzY3JpYmUgb3V0cHV0IHRoYXQgaXMgIlNPTUVUSElORy1nWFhYWCIgKi8KLQlyZXQgPSBnZXRfZGVzY3JpYmVfbmFtZShuYW1lLCBsZW4sIG9pZCk7CisJcmV0ID0gZ2V0X2Rlc2NyaWJlX25hbWUociwgbmFtZSwgbGVuLCBvaWQpOwogCWlmICghcmV0KQotCQlyZXR1cm4gMDsKKwkJcmV0dXJuIEZPVU5EOwogCi0JcmV0dXJuIGdldF9zaG9ydF9vaWQobmFtZSwgbGVuLCBvaWQsIGxvb2t1cF9mbGFncyk7CisJcmV0dXJuIGdldF9zaG9ydF9vaWQociwgbmFtZSwgbGVuLCBvaWQsIGxvb2t1cF9mbGFncyk7CiB9CiAKIC8qCkBAIC0xMTY3LDE1ICsxMjA4LDIxIEBACiAvKiBSZW1lbWJlciB0byB1cGRhdGUgb2JqZWN0IGZsYWcgYWxsb2NhdGlvbiBpbiBvYmplY3QuaCAqLwogI2RlZmluZSBPTkVMSU5FX1NFRU4gKDF1PDwyMCkKIAorc3RydWN0IGhhbmRsZV9vbmVfcmVmX2NiIHsKKwlzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbzsKKwlzdHJ1Y3QgY29tbWl0X2xpc3QgKipsaXN0OworfTsKKwogc3RhdGljIGludCBoYW5kbGVfb25lX3JlZihjb25zdCBjaGFyICpwYXRoLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCiAJCQkgIGludCBmbGFnLCB2b2lkICpjYl9kYXRhKQogewotCXN0cnVjdCBjb21taXRfbGlzdCAqKmxpc3QgPSBjYl9kYXRhOwotCXN0cnVjdCBvYmplY3QgKm9iamVjdCA9IHBhcnNlX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgb2lkKTsKKwlzdHJ1Y3QgaGFuZGxlX29uZV9yZWZfY2IgKmNiID0gY2JfZGF0YTsKKwlzdHJ1Y3QgY29tbWl0X2xpc3QgKipsaXN0ID0gY2ItPmxpc3Q7CisJc3RydWN0IG9iamVjdCAqb2JqZWN0ID0gcGFyc2Vfb2JqZWN0KGNiLT5yZXBvLCBvaWQpOwogCWlmICghb2JqZWN0KQogCQlyZXR1cm4gMDsKIAlpZiAob2JqZWN0LT50eXBlID09IE9CSl9UQUcpIHsKLQkJb2JqZWN0ID0gZGVyZWZfdGFnKHRoZV9yZXBvc2l0b3J5LCBvYmplY3QsIHBhdGgsCisJCW9iamVjdCA9IGRlcmVmX3RhZyhjYi0+cmVwbywgb2JqZWN0LCBwYXRoLAogCQkJCSAgIHN0cmxlbihwYXRoKSk7CiAJCWlmICghb2JqZWN0KQogCQkJcmV0dXJuIDA7CkBAIC0xMTg2LDggKzEyMzMsOSBAQAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGdldF9vaWRfb25lbGluZShjb25zdCBjaGFyICpwcmVmaXgsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKLQkJCSAgICBzdHJ1Y3QgY29tbWl0X2xpc3QgKmxpc3QpCitzdGF0aWMgaW50IGdldF9vaWRfb25lbGluZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgIGNvbnN0IGNoYXIgKnByZWZpeCwgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJICAgc3RydWN0IGNvbW1pdF9saXN0ICpsaXN0KQogewogCXN0cnVjdCBjb21taXRfbGlzdCAqYmFja3VwID0gTlVMTCwgKmw7CiAJaW50IGZvdW5kID0gMDsKQEAgLTEyMTgsNyArMTI2Niw3IEBACiAJCWludCBtYXRjaGVzOwogCiAJCWNvbW1pdCA9IHBvcF9tb3N0X3JlY2VudF9jb21taXQoJmxpc3QsIE9ORUxJTkVfU0VFTik7Ci0JCWlmICghcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCAmY29tbWl0LT5vYmplY3Qub2lkKSkKKwkJaWYgKCFwYXJzZV9vYmplY3QociwgJmNvbW1pdC0+b2JqZWN0Lm9pZCkpCiAJCQljb250aW51ZTsKIAkJYnVmID0gZ2V0X2NvbW1pdF9idWZmZXIoY29tbWl0LCBOVUxMKTsKIAkJcCA9IHN0cnN0cihidWYsICJcblxuIik7CkBAIC0xMjQxLDcgKzEyODksNyBAQAogCiBzdHJ1Y3QgZ3JhYl9udGhfYnJhbmNoX3N3aXRjaF9jYmRhdGEgewogCWludCByZW1haW5pbmc7Ci0Jc3RydWN0IHN0cmJ1ZiBidWY7CisJc3RydWN0IHN0cmJ1ZiAqc2I7CiB9OwogCiBzdGF0aWMgaW50IGdyYWJfbnRoX2JyYW5jaF9zd2l0Y2goc3RydWN0IG9iamVjdF9pZCAqb29pZCwgc3RydWN0IG9iamVjdF9pZCAqbm9pZCwKQEAgLTEyNTksOCArMTMwNyw4IEBACiAJCXJldHVybiAwOwogCWlmICgtLShjYi0+cmVtYWluaW5nKSA9PSAwKSB7CiAJCWxlbiA9IHRhcmdldCAtIG1hdGNoOwotCQlzdHJidWZfcmVzZXQoJmNiLT5idWYpOwotCQlzdHJidWZfYWRkKCZjYi0+YnVmLCBtYXRjaCwgbGVuKTsKKwkJc3RyYnVmX3Jlc2V0KGNiLT5zYik7CisJCXN0cmJ1Zl9hZGQoY2ItPnNiLCBtYXRjaCwgbGVuKTsKIAkJcmV0dXJuIDE7IC8qIHdlIGFyZSBkb25lICovCiAJfQogCXJldHVybiAwOwpAQCAtMTI3MCw3ICsxMzE4LDggQEAKICAqIFBhcnNlIEB7LU59IHN5bnRheCwgcmV0dXJuIHRoZSBudW1iZXIgb2YgY2hhcmFjdGVycyBwYXJzZWQKICAqIGlmIHN1Y2Nlc3NmdWw7IG90aGVyd2lzZSBzaWduYWwgYW4gZXJyb3Igd2l0aCBuZWdhdGl2ZSB2YWx1ZS4KICAqLwotc3RhdGljIGludCBpbnRlcnByZXRfbnRoX3ByaW9yX2NoZWNrb3V0KGNvbnN0IGNoYXIgKm5hbWUsIGludCBuYW1lbGVuLAorc3RhdGljIGludCBpbnRlcnByZXRfbnRoX3ByaW9yX2NoZWNrb3V0KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQljb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbiwKIAkJCQkJc3RydWN0IHN0cmJ1ZiAqYnVmKQogewogCWxvbmcgbnRoOwpAQCAtMTI5MiwyMCArMTM0MSwyMSBAQAogCWlmIChudGggPD0gMCkKIAkJcmV0dXJuIC0xOwogCWNiLnJlbWFpbmluZyA9IG50aDsKLQlzdHJidWZfaW5pdCgmY2IuYnVmLCAyMCk7CisJY2Iuc2IgPSBidWY7CiAKLQlyZXR2YWwgPSAwOwotCWlmICgwIDwgZm9yX2VhY2hfcmVmbG9nX2VudF9yZXZlcnNlKCJIRUFEIiwgZ3JhYl9udGhfYnJhbmNoX3N3aXRjaCwgJmNiKSkgewotCQlzdHJidWZfcmVzZXQoYnVmKTsKLQkJc3RyYnVmX2FkZGJ1ZihidWYsICZjYi5idWYpOworCXJldHZhbCA9IHJlZnNfZm9yX2VhY2hfcmVmbG9nX2VudF9yZXZlcnNlKGdldF9tYWluX3JlZl9zdG9yZShyKSwKKwkJCSJIRUFEIiwgZ3JhYl9udGhfYnJhbmNoX3N3aXRjaCwgJmNiKTsKKwlpZiAoMCA8IHJldHZhbCkgewogCQlyZXR2YWwgPSBicmFjZSAtIG5hbWUgKyAxOwotCX0KKwl9IGVsc2UKKwkJcmV0dmFsID0gMDsKIAotCXN0cmJ1Zl9yZWxlYXNlKCZjYi5idWYpOwogCXJldHVybiByZXR2YWw7CiB9CiAKLWludCBnZXRfb2lkX21iKGNvbnN0IGNoYXIgKm5hbWUsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKK2ludCByZXBvX2dldF9vaWRfbWIoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCSAgICBjb25zdCBjaGFyICpuYW1lLAorCQkgICAgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewogCXN0cnVjdCBjb21taXQgKm9uZSwgKnR3bzsKIAlzdHJ1Y3QgY29tbWl0X2xpc3QgKm1iczsKQEAgLTEzMTUsMjggKzEzNjUsMjggQEAKIAogCWRvdHMgPSBzdHJzdHIobmFtZSwgIi4uLiIpOwogCWlmICghZG90cykKLQkJcmV0dXJuIGdldF9vaWQobmFtZSwgb2lkKTsKKwkJcmV0dXJuIHJlcG9fZ2V0X29pZChyLCBuYW1lLCBvaWQpOwogCWlmIChkb3RzID09IG5hbWUpCi0JCXN0ID0gZ2V0X29pZCgiSEVBRCIsICZvaWRfdG1wKTsKKwkJc3QgPSByZXBvX2dldF9vaWQociwgIkhFQUQiLCAmb2lkX3RtcCk7CiAJZWxzZSB7CiAJCXN0cnVjdCBzdHJidWYgc2I7CiAJCXN0cmJ1Zl9pbml0KCZzYiwgZG90cyAtIG5hbWUpOwogCQlzdHJidWZfYWRkKCZzYiwgbmFtZSwgZG90cyAtIG5hbWUpOwotCQlzdCA9IGdldF9vaWRfY29tbWl0dGlzaChzYi5idWYsICZvaWRfdG1wKTsKKwkJc3QgPSByZXBvX2dldF9vaWRfY29tbWl0dGlzaChyLCBzYi5idWYsICZvaWRfdG1wKTsKIAkJc3RyYnVmX3JlbGVhc2UoJnNiKTsKIAl9CiAJaWYgKHN0KQogCQlyZXR1cm4gc3Q7Ci0Jb25lID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfZ2VudGx5KHRoZV9yZXBvc2l0b3J5LCAmb2lkX3RtcCwgMCk7CisJb25lID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfZ2VudGx5KHIsICZvaWRfdG1wLCAwKTsKIAlpZiAoIW9uZSkKIAkJcmV0dXJuIC0xOwogCi0JaWYgKGdldF9vaWRfY29tbWl0dGlzaChkb3RzWzNdID8gKGRvdHMgKyAzKSA6ICJIRUFEIiwgJm9pZF90bXApKQorCWlmIChyZXBvX2dldF9vaWRfY29tbWl0dGlzaChyLCBkb3RzWzNdID8gKGRvdHMgKyAzKSA6ICJIRUFEIiwgJm9pZF90bXApKQogCQlyZXR1cm4gLTE7Ci0JdHdvID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfZ2VudGx5KHRoZV9yZXBvc2l0b3J5LCAmb2lkX3RtcCwgMCk7CisJdHdvID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfZ2VudGx5KHIsICZvaWRfdG1wLCAwKTsKIAlpZiAoIXR3bykKIAkJcmV0dXJuIC0xOwotCW1icyA9IGdldF9tZXJnZV9iYXNlcyhvbmUsIHR3byk7CisJbWJzID0gcmVwb19nZXRfbWVyZ2VfYmFzZXMociwgb25lLCB0d28pOwogCWlmICghbWJzIHx8IG1icy0+bmV4dCkKIAkJc3QgPSAtMTsKIAllbHNlIHsKQEAgLTEzNjksNyArMTQxOSw4IEBACiAJcmV0dXJuIDE7CiB9CiAKLXN0YXRpYyBpbnQgcmVpbnRlcnByZXQoY29uc3QgY2hhciAqbmFtZSwgaW50IG5hbWVsZW4sIGludCBsZW4sCitzdGF0aWMgaW50IHJlaW50ZXJwcmV0KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkgICAgICAgY29uc3QgY2hhciAqbmFtZSwgaW50IG5hbWVsZW4sIGludCBsZW4sCiAJCSAgICAgICBzdHJ1Y3Qgc3RyYnVmICpidWYsIHVuc2lnbmVkIGFsbG93ZWQpCiB7CiAJLyogd2UgaGF2ZSBleHRyYSBkYXRhLCB3aGljaCBtaWdodCBuZWVkIGZ1cnRoZXIgcHJvY2Vzc2luZyAqLwpAQCAtMTM3OCw3ICsxNDI5LDcgQEAKIAlpbnQgcmV0OwogCiAJc3RyYnVmX2FkZChidWYsIG5hbWUgKyBsZW4sIG5hbWVsZW4gLSBsZW4pOwotCXJldCA9IGludGVycHJldF9icmFuY2hfbmFtZShidWYtPmJ1ZiwgYnVmLT5sZW4sICZ0bXAsIGFsbG93ZWQpOworCXJldCA9IHJlcG9faW50ZXJwcmV0X2JyYW5jaF9uYW1lKHIsIGJ1Zi0+YnVmLCBidWYtPmxlbiwgJnRtcCwgYWxsb3dlZCk7CiAJLyogdGhhdCBkYXRhIHdhcyBub3QgaW50ZXJwcmV0ZWQsIHJlbW92ZSBvdXIgY3J1ZnQgKi8KIAlpZiAocmV0IDwgMCkgewogCQlzdHJidWZfc2V0bGVuKGJ1ZiwgdXNlZCk7CkBAIC0xMzkxLDkgKzE0NDIsOSBAQAogCXJldHVybiByZXQgLSB1c2VkICsgbGVuOwogfQogCi1zdGF0aWMgdm9pZCBzZXRfc2hvcnRlbmVkX3JlZihzdHJ1Y3Qgc3RyYnVmICpidWYsIGNvbnN0IGNoYXIgKnJlZikKK3N0YXRpYyB2b2lkIHNldF9zaG9ydGVuZWRfcmVmKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3Qgc3RyYnVmICpidWYsIGNvbnN0IGNoYXIgKnJlZikKIHsKLQljaGFyICpzID0gc2hvcnRlbl91bmFtYmlndW91c19yZWYocmVmLCAwKTsKKwljaGFyICpzID0gcmVmc19zaG9ydGVuX3VuYW1iaWd1b3VzX3JlZihnZXRfbWFpbl9yZWZfc3RvcmUociksIHJlZiwgMCk7CiAJc3RyYnVmX3Jlc2V0KGJ1Zik7CiAJc3RyYnVmX2FkZHN0cihidWYsIHMpOwogCWZyZWUocyk7CkBAIC0xNDE0LDcgKzE0NjUsOCBAQAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGludGVycHJldF9icmFuY2hfbWFyayhjb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbiwKK3N0YXRpYyBpbnQgaW50ZXJwcmV0X2JyYW5jaF9tYXJrKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCSBjb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbiwKIAkJCQkgaW50IGF0LCBzdHJ1Y3Qgc3RyYnVmICpidWYsCiAJCQkJIGludCAoKmdldF9tYXJrKShjb25zdCBjaGFyICosIGludCksCiAJCQkJIGNvbnN0IGNoYXIgKigqZ2V0X2RhdGEpKHN0cnVjdCBicmFuY2ggKiwKQEAgLTE0NDcsMTIgKzE0OTksMTQgQEAKIAlpZiAoIWJyYW5jaF9pbnRlcnByZXRfYWxsb3dlZCh2YWx1ZSwgYWxsb3dlZCkpCiAJCXJldHVybiAtMTsKIAotCXNldF9zaG9ydGVuZWRfcmVmKGJ1ZiwgdmFsdWUpOworCXNldF9zaG9ydGVuZWRfcmVmKHIsIGJ1ZiwgdmFsdWUpOwogCXJldHVybiBsZW4gKyBhdDsKIH0KIAotaW50IGludGVycHJldF9icmFuY2hfbmFtZShjb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbiwgc3RydWN0IHN0cmJ1ZiAqYnVmLAotCQkJICB1bnNpZ25lZCBhbGxvd2VkKQoraW50IHJlcG9faW50ZXJwcmV0X2JyYW5jaF9uYW1lKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgICAgIGNvbnN0IGNoYXIgKm5hbWUsIGludCBuYW1lbGVuLAorCQkJICAgICAgIHN0cnVjdCBzdHJidWYgKmJ1ZiwKKwkJCSAgICAgICB1bnNpZ25lZCBhbGxvd2VkKQogewogCWNoYXIgKmF0OwogCWNvbnN0IGNoYXIgKnN0YXJ0OwpAQCAtMTQ2MiwxNCArMTUxNiwxNCBAQAogCQluYW1lbGVuID0gc3RybGVuKG5hbWUpOwogCiAJaWYgKCFhbGxvd2VkIHx8IChhbGxvd2VkICYgSU5URVJQUkVUX0JSQU5DSF9MT0NBTCkpIHsKLQkJbGVuID0gaW50ZXJwcmV0X250aF9wcmlvcl9jaGVja291dChuYW1lLCBuYW1lbGVuLCBidWYpOworCQlsZW4gPSBpbnRlcnByZXRfbnRoX3ByaW9yX2NoZWNrb3V0KHIsIG5hbWUsIG5hbWVsZW4sIGJ1Zik7CiAJCWlmICghbGVuKSB7CiAJCQlyZXR1cm4gbGVuOyAvKiBzeW50YXggT2ssIG5vdCBlbm91Z2ggc3dpdGNoZXMgKi8KIAkJfSBlbHNlIGlmIChsZW4gPiAwKSB7CiAJCQlpZiAobGVuID09IG5hbWVsZW4pCiAJCQkJcmV0dXJuIGxlbjsgLyogY29uc3VtZWQgYWxsICovCiAJCQllbHNlCi0JCQkJcmV0dXJuIHJlaW50ZXJwcmV0KG5hbWUsIG5hbWVsZW4sIGxlbiwgYnVmLCBhbGxvd2VkKTsKKwkJCQlyZXR1cm4gcmVpbnRlcnByZXQociwgbmFtZSwgbmFtZWxlbiwgbGVuLCBidWYsIGFsbG93ZWQpOwogCQl9CiAJfQogCkBAIC0xNDgwLDE3ICsxNTM0LDE3IEBACiAJCWlmICghYWxsb3dlZCB8fCAoYWxsb3dlZCAmIElOVEVSUFJFVF9CUkFOQ0hfSEVBRCkpIHsKIAkJCWxlbiA9IGludGVycHJldF9lbXB0eV9hdChuYW1lLCBuYW1lbGVuLCBhdCAtIG5hbWUsIGJ1Zik7CiAJCQlpZiAobGVuID4gMCkKLQkJCQlyZXR1cm4gcmVpbnRlcnByZXQobmFtZSwgbmFtZWxlbiwgbGVuLCBidWYsCisJCQkJcmV0dXJuIHJlaW50ZXJwcmV0KHIsIG5hbWUsIG5hbWVsZW4sIGxlbiwgYnVmLAogCQkJCQkJICAgYWxsb3dlZCk7CiAJCX0KIAotCQlsZW4gPSBpbnRlcnByZXRfYnJhbmNoX21hcmsobmFtZSwgbmFtZWxlbiwgYXQgLSBuYW1lLCBidWYsCisJCWxlbiA9IGludGVycHJldF9icmFuY2hfbWFyayhyLCBuYW1lLCBuYW1lbGVuLCBhdCAtIG5hbWUsIGJ1ZiwKIAkJCQkJICAgIHVwc3RyZWFtX21hcmssIGJyYW5jaF9nZXRfdXBzdHJlYW0sCiAJCQkJCSAgICBhbGxvd2VkKTsKIAkJaWYgKGxlbiA+IDApCiAJCQlyZXR1cm4gbGVuOwogCi0JCWxlbiA9IGludGVycHJldF9icmFuY2hfbWFyayhuYW1lLCBuYW1lbGVuLCBhdCAtIG5hbWUsIGJ1ZiwKKwkJbGVuID0gaW50ZXJwcmV0X2JyYW5jaF9tYXJrKHIsIG5hbWUsIG5hbWVsZW4sIGF0IC0gbmFtZSwgYnVmLAogCQkJCQkgICAgcHVzaF9tYXJrLCBicmFuY2hfZ2V0X3B1c2gsCiAJCQkJCSAgICBhbGxvd2VkKTsKIAkJaWYgKGxlbiA+IDApCkBAIC0xNTM2LDEyICsxNTkwLDMxIEBACiAgKiBUaGlzIGlzIGxpa2UgImdldF9vaWRfYmFzaWMoKSIsIGV4Y2VwdCBpdCBhbGxvd3MgIm9iamVjdCBJRCBleHByZXNzaW9ucyIsCiAgKiBub3RhYmx5ICJ4eXpeIiBmb3IgInBhcmVudCBvZiB4eXoiCiAgKi8KLWludCBnZXRfb2lkKGNvbnN0IGNoYXIgKm5hbWUsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKK2ludCByZXBvX2dldF9vaWQoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IGNoYXIgKm5hbWUsIHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAlzdHJ1Y3Qgb2JqZWN0X2NvbnRleHQgdW51c2VkOwotCXJldHVybiBnZXRfb2lkX3dpdGhfY29udGV4dChuYW1lLCAwLCBvaWQsICZ1bnVzZWQpOworCXJldHVybiBnZXRfb2lkX3dpdGhfY29udGV4dChyLCBuYW1lLCAwLCBvaWQsICZ1bnVzZWQpOwogfQogCisvKgorICogVGhpcyByZXR1cm5zIGEgbm9uLXplcm8gdmFsdWUgaWYgdGhlIHN0cmluZyAoYnVpbHQgdXNpbmcgcHJpbnRmCisgKiBmb3JtYXQgYW5kIHRoZSBnaXZlbiBhcmd1bWVudHMpIGlzIG5vdCBhIHZhbGlkIG9iamVjdC4KKyAqLworaW50IGdldF9vaWRmKHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcDsKKwlpbnQgcmV0OworCXN0cnVjdCBzdHJidWYgc2IgPSBTVFJCVUZfSU5JVDsKKworCXZhX3N0YXJ0KGFwLCBmbXQpOworCXN0cmJ1Zl92YWRkZigmc2IsIGZtdCwgYXApOworCXZhX2VuZChhcCk7CisKKwlyZXQgPSBnZXRfb2lkKHNiLmJ1Ziwgb2lkKTsKKwlzdHJidWZfcmVsZWFzZSgmc2IpOworCisJcmV0dXJuIHJldDsKK30KIAogLyoKICAqIE1hbnkgY2FsbGVycyBrbm93IHRoYXQgdGhlIHVzZXIgbWVhbnQgdG8gbmFtZSBhIGNvbW1pdC1pc2ggYnkKQEAgLTE1NTMsNjMgKzE2MjYsNzQgQEAKICAqIGNvbW1pdC1pc2guIEl0IGlzIG1lcmVseSB0byBnaXZlIGEgaGludCB0byB0aGUgZGlzYW1iaWd1YXRpb24KICAqIG1hY2hpbmVyeS4KICAqLwotaW50IGdldF9vaWRfY29tbWl0dGlzaChjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCitpbnQgcmVwb19nZXRfb2lkX2NvbW1pdHRpc2goc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgICAgY29uc3QgY2hhciAqbmFtZSwKKwkJCSAgICBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7CiAJc3RydWN0IG9iamVjdF9jb250ZXh0IHVudXNlZDsKLQlyZXR1cm4gZ2V0X29pZF93aXRoX2NvbnRleHQobmFtZSwgR0VUX09JRF9DT01NSVRUSVNILAorCXJldHVybiBnZXRfb2lkX3dpdGhfY29udGV4dChyLCBuYW1lLCBHRVRfT0lEX0NPTU1JVFRJU0gsCiAJCQkJICAgIG9pZCwgJnVudXNlZCk7CiB9CiAKLWludCBnZXRfb2lkX3RyZWVpc2goY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IG9iamVjdF9pZCAqb2lkKQoraW50IHJlcG9fZ2V0X29pZF90cmVlaXNoKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJIGNvbnN0IGNoYXIgKm5hbWUsCisJCQkgc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewogCXN0cnVjdCBvYmplY3RfY29udGV4dCB1bnVzZWQ7Ci0JcmV0dXJuIGdldF9vaWRfd2l0aF9jb250ZXh0KG5hbWUsIEdFVF9PSURfVFJFRUlTSCwKKwlyZXR1cm4gZ2V0X29pZF93aXRoX2NvbnRleHQociwgbmFtZSwgR0VUX09JRF9UUkVFSVNILAogCQkJCSAgICBvaWQsICZ1bnVzZWQpOwogfQogCi1pbnQgZ2V0X29pZF9jb21taXQoY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IG9iamVjdF9pZCAqb2lkKQoraW50IHJlcG9fZ2V0X29pZF9jb21taXQoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQljb25zdCBjaGFyICpuYW1lLAorCQkJc3RydWN0IG9iamVjdF9pZCAqb2lkKQogewogCXN0cnVjdCBvYmplY3RfY29udGV4dCB1bnVzZWQ7Ci0JcmV0dXJuIGdldF9vaWRfd2l0aF9jb250ZXh0KG5hbWUsIEdFVF9PSURfQ09NTUlULAorCXJldHVybiBnZXRfb2lkX3dpdGhfY29udGV4dChyLCBuYW1lLCBHRVRfT0lEX0NPTU1JVCwKIAkJCQkgICAgb2lkLCAmdW51c2VkKTsKIH0KIAotaW50IGdldF9vaWRfdHJlZShjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCitpbnQgcmVwb19nZXRfb2lkX3RyZWUoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCSAgICAgIGNvbnN0IGNoYXIgKm5hbWUsCisJCSAgICAgIHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAlzdHJ1Y3Qgb2JqZWN0X2NvbnRleHQgdW51c2VkOwotCXJldHVybiBnZXRfb2lkX3dpdGhfY29udGV4dChuYW1lLCBHRVRfT0lEX1RSRUUsCisJcmV0dXJuIGdldF9vaWRfd2l0aF9jb250ZXh0KHIsIG5hbWUsIEdFVF9PSURfVFJFRSwKIAkJCQkgICAgb2lkLCAmdW51c2VkKTsKIH0KIAotaW50IGdldF9vaWRfYmxvYihjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCitpbnQgcmVwb19nZXRfb2lkX2Jsb2Ioc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCSAgICAgIGNvbnN0IGNoYXIgKm5hbWUsCisJCSAgICAgIHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAlzdHJ1Y3Qgb2JqZWN0X2NvbnRleHQgdW51c2VkOwotCXJldHVybiBnZXRfb2lkX3dpdGhfY29udGV4dChuYW1lLCBHRVRfT0lEX0JMT0IsCisJcmV0dXJuIGdldF9vaWRfd2l0aF9jb250ZXh0KHIsIG5hbWUsIEdFVF9PSURfQkxPQiwKIAkJCQkgICAgb2lkLCAmdW51c2VkKTsKIH0KIAogLyogTXVzdCBiZSBjYWxsZWQgb25seSB3aGVuIG9iamVjdF9uYW1lOmZpbGVuYW1lIGRvZXNuJ3QgZXhpc3QuICovCi1zdGF0aWMgdm9pZCBkaWFnbm9zZV9pbnZhbGlkX29pZF9wYXRoKGNvbnN0IGNoYXIgKnByZWZpeCwKK3N0YXRpYyB2b2lkIGRpYWdub3NlX2ludmFsaWRfb2lkX3BhdGgoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJICAgICAgY29uc3QgY2hhciAqcHJlZml4LAogCQkJCSAgICAgIGNvbnN0IGNoYXIgKmZpbGVuYW1lLAogCQkJCSAgICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKnRyZWVfb2lkLAogCQkJCSAgICAgIGNvbnN0IGNoYXIgKm9iamVjdF9uYW1lLAogCQkJCSAgICAgIGludCBvYmplY3RfbmFtZV9sZW4pCiB7CiAJc3RydWN0IG9iamVjdF9pZCBvaWQ7Ci0JdW5zaWduZWQgbW9kZTsKKwl1bnNpZ25lZCBzaG9ydCBtb2RlOwogCiAJaWYgKCFwcmVmaXgpCiAJCXByZWZpeCA9ICIiOwogCiAJaWYgKGZpbGVfZXhpc3RzKGZpbGVuYW1lKSkKLQkJZGllKCJQYXRoICclcycgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gJyUuKnMnLiIsCisJCWRpZShfKCJwYXRoICclcycgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gJyUuKnMnIiksCiAJCSAgICBmaWxlbmFtZSwgb2JqZWN0X25hbWVfbGVuLCBvYmplY3RfbmFtZSk7CiAJaWYgKGlzX21pc3NpbmdfZmlsZV9lcnJvcihlcnJubykpIHsKIAkJY2hhciAqZnVsbG5hbWUgPSB4c3RyZm10KCIlcyVzIiwgcHJlZml4LCBmaWxlbmFtZSk7CiAKLQkJaWYgKCFnZXRfdHJlZV9lbnRyeSh0cmVlX29pZCwgZnVsbG5hbWUsICZvaWQsICZtb2RlKSkgewotCQkJZGllKCJQYXRoICclcycgZXhpc3RzLCBidXQgbm90ICclcycuXG4iCi0JCQkgICAgIkRpZCB5b3UgbWVhbiAnJS4qczolcycgYWthICclLipzOi4vJXMnPyIsCisJCWlmICghZ2V0X3RyZWVfZW50cnkociwgdHJlZV9vaWQsIGZ1bGxuYW1lLCAmb2lkLCAmbW9kZSkpIHsKKwkJCWRpZShfKCJwYXRoICclcycgZXhpc3RzLCBidXQgbm90ICclcydcbiIKKwkJCSAgICAiaGludDogRGlkIHlvdSBtZWFuICclLipzOiVzJyBha2EgJyUuKnM6Li8lcyc/IiksCiAJCQkgICAgZnVsbG5hbWUsCiAJCQkgICAgZmlsZW5hbWUsCiAJCQkgICAgb2JqZWN0X25hbWVfbGVuLCBvYmplY3RfbmFtZSwKQEAgLTE2MTcsMTYgKzE3MDEsMTggQEAKIAkJCSAgICBvYmplY3RfbmFtZV9sZW4sIG9iamVjdF9uYW1lLAogCQkJICAgIGZpbGVuYW1lKTsKIAkJfQotCQlkaWUoIlBhdGggJyVzJyBkb2VzIG5vdCBleGlzdCBpbiAnJS4qcyciLAorCQlkaWUoXygicGF0aCAnJXMnIGRvZXMgbm90IGV4aXN0IGluICclLipzJyIpLAogCQkgICAgZmlsZW5hbWUsIG9iamVjdF9uYW1lX2xlbiwgb2JqZWN0X25hbWUpOwogCX0KIH0KIAogLyogTXVzdCBiZSBjYWxsZWQgb25seSB3aGVuIDpzdGFnZTpmaWxlbmFtZSBkb2Vzbid0IGV4aXN0LiAqLwotc3RhdGljIHZvaWQgZGlhZ25vc2VfaW52YWxpZF9pbmRleF9wYXRoKGludCBzdGFnZSwKK3N0YXRpYyB2b2lkIGRpYWdub3NlX2ludmFsaWRfaW5kZXhfcGF0aChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJaW50IHN0YWdlLAogCQkJCQljb25zdCBjaGFyICpwcmVmaXgsCiAJCQkJCWNvbnN0IGNoYXIgKmZpbGVuYW1lKQogeworCXN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlID0gci0+aW5kZXg7CiAJY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICpjZTsKIAlpbnQgcG9zOwogCXVuc2lnbmVkIG5hbWVsZW4gPSBzdHJsZW4oZmlsZW5hbWUpOwpAQCAtMTYzNiwxNSArMTcyMiwxNSBAQAogCQlwcmVmaXggPSAiIjsKIAogCS8qIFdyb25nIHN0YWdlIG51bWJlcj8gKi8KLQlwb3MgPSBjYWNoZV9uYW1lX3BvcyhmaWxlbmFtZSwgbmFtZWxlbik7CisJcG9zID0gaW5kZXhfbmFtZV9wb3MoaXN0YXRlLCBmaWxlbmFtZSwgbmFtZWxlbik7CiAJaWYgKHBvcyA8IDApCiAJCXBvcyA9IC1wb3MgLSAxOwotCWlmIChwb3MgPCBhY3RpdmVfbnIpIHsKLQkJY2UgPSBhY3RpdmVfY2FjaGVbcG9zXTsKKwlpZiAocG9zIDwgaXN0YXRlLT5jYWNoZV9ucikgeworCQljZSA9IGlzdGF0ZS0+Y2FjaGVbcG9zXTsKIAkJaWYgKGNlX25hbWVsZW4oY2UpID09IG5hbWVsZW4gJiYKIAkJICAgICFtZW1jbXAoY2UtPm5hbWUsIGZpbGVuYW1lLCBuYW1lbGVuKSkKLQkJCWRpZSgiUGF0aCAnJXMnIGlzIGluIHRoZSBpbmRleCwgYnV0IG5vdCBhdCBzdGFnZSAlZC5cbiIKLQkJCSAgICAiRGlkIHlvdSBtZWFuICc6JWQ6JXMnPyIsCisJCQlkaWUoXygicGF0aCAnJXMnIGlzIGluIHRoZSBpbmRleCwgYnV0IG5vdCBhdCBzdGFnZSAlZFxuIgorCQkJICAgICJoaW50OiBEaWQgeW91IG1lYW4gJzolZDolcyc/IiksCiAJCQkgICAgZmlsZW5hbWUsIHN0YWdlLAogCQkJICAgIGNlX3N0YWdlKGNlKSwgZmlsZW5hbWUpOwogCX0KQEAgLTE2NTIsMzcgKzE3MzgsMzcgQEAKIAkvKiBDb25mdXNpb24gYmV0d2VlbiByZWxhdGl2ZSBhbmQgYWJzb2x1dGUgZmlsZW5hbWVzPyAqLwogCXN0cmJ1Zl9hZGRzdHIoJmZ1bGxuYW1lLCBwcmVmaXgpOwogCXN0cmJ1Zl9hZGRzdHIoJmZ1bGxuYW1lLCBmaWxlbmFtZSk7Ci0JcG9zID0gY2FjaGVfbmFtZV9wb3MoZnVsbG5hbWUuYnVmLCBmdWxsbmFtZS5sZW4pOworCXBvcyA9IGluZGV4X25hbWVfcG9zKGlzdGF0ZSwgZnVsbG5hbWUuYnVmLCBmdWxsbmFtZS5sZW4pOwogCWlmIChwb3MgPCAwKQogCQlwb3MgPSAtcG9zIC0gMTsKLQlpZiAocG9zIDwgYWN0aXZlX25yKSB7Ci0JCWNlID0gYWN0aXZlX2NhY2hlW3Bvc107CisJaWYgKHBvcyA8IGlzdGF0ZS0+Y2FjaGVfbnIpIHsKKwkJY2UgPSBpc3RhdGUtPmNhY2hlW3Bvc107CiAJCWlmIChjZV9uYW1lbGVuKGNlKSA9PSBmdWxsbmFtZS5sZW4gJiYKIAkJICAgICFtZW1jbXAoY2UtPm5hbWUsIGZ1bGxuYW1lLmJ1ZiwgZnVsbG5hbWUubGVuKSkKLQkJCWRpZSgiUGF0aCAnJXMnIGlzIGluIHRoZSBpbmRleCwgYnV0IG5vdCAnJXMnLlxuIgotCQkJICAgICJEaWQgeW91IG1lYW4gJzolZDolcycgYWthICc6JWQ6Li8lcyc/IiwKKwkJCWRpZShfKCJwYXRoICclcycgaXMgaW4gdGhlIGluZGV4LCBidXQgbm90ICclcydcbiIKKwkJCSAgICAiaGludDogRGlkIHlvdSBtZWFuICc6JWQ6JXMnIGFrYSAnOiVkOi4vJXMnPyIpLAogCQkJICAgIGZ1bGxuYW1lLmJ1ZiwgZmlsZW5hbWUsCiAJCQkgICAgY2Vfc3RhZ2UoY2UpLCBmdWxsbmFtZS5idWYsCiAJCQkgICAgY2Vfc3RhZ2UoY2UpLCBmaWxlbmFtZSk7CiAJfQogCi0JaWYgKGZpbGVfZXhpc3RzKGZpbGVuYW1lKSkKLQkJZGllKCJQYXRoICclcycgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gdGhlIGluZGV4LiIsIGZpbGVuYW1lKTsKKwlpZiAocmVwb19maWxlX2V4aXN0cyhyLCBmaWxlbmFtZSkpCisJCWRpZShfKCJwYXRoICclcycgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gdGhlIGluZGV4IiksIGZpbGVuYW1lKTsKIAlpZiAoaXNfbWlzc2luZ19maWxlX2Vycm9yKGVycm5vKSkKLQkJZGllKCJQYXRoICclcycgZG9lcyBub3QgZXhpc3QgKG5laXRoZXIgb24gZGlzayBub3IgaW4gdGhlIGluZGV4KS4iLAorCQlkaWUoXygicGF0aCAnJXMnIGRvZXMgbm90IGV4aXN0IChuZWl0aGVyIG9uIGRpc2sgbm9yIGluIHRoZSBpbmRleCkiKSwKIAkJICAgIGZpbGVuYW1lKTsKIAogCXN0cmJ1Zl9yZWxlYXNlKCZmdWxsbmFtZSk7CiB9CiAKIAotc3RhdGljIGNoYXIgKnJlc29sdmVfcmVsYXRpdmVfcGF0aChjb25zdCBjaGFyICpyZWwpCitzdGF0aWMgY2hhciAqcmVzb2x2ZV9yZWxhdGl2ZV9wYXRoKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBjaGFyICpyZWwpCiB7CiAJaWYgKCFzdGFydHNfd2l0aChyZWwsICIuLyIpICYmICFzdGFydHNfd2l0aChyZWwsICIuLi8iKSkKIAkJcmV0dXJuIE5VTEw7CiAKLQlpZiAoIWlzX2luc2lkZV93b3JrX3RyZWUoKSkKLQkJZGllKCJyZWxhdGl2ZSBwYXRoIHN5bnRheCBjYW4ndCBiZSB1c2VkIG91dHNpZGUgd29ya2luZyB0cmVlLiIpOworCWlmIChyICE9IHRoZV9yZXBvc2l0b3J5IHx8ICFpc19pbnNpZGVfd29ya190cmVlKCkpCisJCWRpZShfKCJyZWxhdGl2ZSBwYXRoIHN5bnRheCBjYW4ndCBiZSB1c2VkIG91dHNpZGUgd29ya2luZyB0cmVlIikpOwogCiAJLyogZGllKCkgaW5zaWRlIHByZWZpeF9wYXRoKCkgaWYgcmVzb2x2ZWQgcGF0aCBpcyBvdXRzaWRlIHdvcmt0cmVlICovCiAJcmV0dXJuIHByZWZpeF9wYXRoKHN0YXJ0dXBfaW5mby0+cHJlZml4LApAQCAtMTY5MCw3ICsxNzc2LDggQEAKIAkJCSAgIHJlbCk7CiB9CiAKLXN0YXRpYyBpbnQgZ2V0X29pZF93aXRoX2NvbnRleHRfMShjb25zdCBjaGFyICpuYW1lLAorc3RhdGljIGVudW0gZ2V0X29pZF9yZXN1bHQgZ2V0X29pZF93aXRoX2NvbnRleHRfMShzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCQkgIGNvbnN0IGNoYXIgKm5hbWUsCiAJCQkJICB1bnNpZ25lZCBmbGFncywKIAkJCQkgIGNvbnN0IGNoYXIgKnByZWZpeCwKIAkJCQkgIHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKQEAgLTE3MDcsNyArMTc5NCw3IEBACiAJbWVtc2V0KG9jLCAwLCBzaXplb2YoKm9jKSk7CiAJb2MtPm1vZGUgPSBTX0lGSU5WQUxJRDsKIAlzdHJidWZfaW5pdCgmb2MtPnN5bWxpbmtfcGF0aCwgMCk7Ci0JcmV0ID0gZ2V0X29pZF8xKG5hbWUsIG5hbWVsZW4sIG9pZCwgZmxhZ3MpOworCXJldCA9IGdldF9vaWRfMShyZXBvLCBuYW1lLCBuYW1lbGVuLCBvaWQsIGZsYWdzKTsKIAlpZiAoIXJldCkKIAkJcmV0dXJuIHJldDsKIAkvKgpAQCAtMTcyMywxMiArMTgxMCwxNSBAQAogCQljaGFyICpuZXdfcGF0aCA9IE5VTEw7CiAJCWludCBwb3M7CiAJCWlmICghb25seV90b19kaWUgJiYgbmFtZWxlbiA+IDIgJiYgbmFtZVsxXSA9PSAnLycpIHsKKwkJCXN0cnVjdCBoYW5kbGVfb25lX3JlZl9jYiBjYjsKIAkJCXN0cnVjdCBjb21taXRfbGlzdCAqbGlzdCA9IE5VTEw7CiAKLQkJCWZvcl9lYWNoX3JlZihoYW5kbGVfb25lX3JlZiwgJmxpc3QpOwotCQkJaGVhZF9yZWYoaGFuZGxlX29uZV9yZWYsICZsaXN0KTsKKwkJCWNiLnJlcG8gPSByZXBvOworCQkJY2IubGlzdCA9ICZsaXN0OworCQkJcmVmc19mb3JfZWFjaF9yZWYocmVwby0+cmVmcywgaGFuZGxlX29uZV9yZWYsICZjYik7CisJCQlyZWZzX2hlYWRfcmVmKHJlcG8tPnJlZnMsIGhhbmRsZV9vbmVfcmVmLCAmY2IpOwogCQkJY29tbWl0X2xpc3Rfc29ydF9ieV9kYXRlKCZsaXN0KTsKLQkJCXJldHVybiBnZXRfb2lkX29uZWxpbmUobmFtZSArIDIsIG9pZCwgbGlzdCk7CisJCQlyZXR1cm4gZ2V0X29pZF9vbmVsaW5lKHJlcG8sIG5hbWUgKyAyLCBvaWQsIGxpc3QpOwogCQl9CiAJCWlmIChuYW1lbGVuIDwgMyB8fAogCQkgICAgbmFtZVsyXSAhPSAnOicgfHwKQEAgLTE3MzgsNyArMTgyOCw3IEBACiAJCQlzdGFnZSA9IG5hbWVbMV0gLSAnMCc7CiAJCQljcCA9IG5hbWUgKyAzOwogCQl9Ci0JCW5ld19wYXRoID0gcmVzb2x2ZV9yZWxhdGl2ZV9wYXRoKGNwKTsKKwkJbmV3X3BhdGggPSByZXNvbHZlX3JlbGF0aXZlX3BhdGgocmVwbywgY3ApOwogCQlpZiAoIW5ld19wYXRoKSB7CiAJCQluYW1lbGVuID0gbmFtZWxlbiAtIChjcCAtIG5hbWUpOwogCQl9IGVsc2UgewpAQCAtMTc0OSwxMyArMTgzOSwxMyBAQAogCQlpZiAoZmxhZ3MgJiBHRVRfT0lEX1JFQ09SRF9QQVRIKQogCQkJb2MtPnBhdGggPSB4c3RyZHVwKGNwKTsKIAotCQlpZiAoIWFjdGl2ZV9jYWNoZSkKLQkJCXJlYWRfY2FjaGUoKTsKLQkJcG9zID0gY2FjaGVfbmFtZV9wb3MoY3AsIG5hbWVsZW4pOworCQlpZiAoIXJlcG8tPmluZGV4IHx8ICFyZXBvLT5pbmRleC0+Y2FjaGUpCisJCQlyZXBvX3JlYWRfaW5kZXgocmVwbyk7CisJCXBvcyA9IGluZGV4X25hbWVfcG9zKHJlcG8tPmluZGV4LCBjcCwgbmFtZWxlbik7CiAJCWlmIChwb3MgPCAwKQogCQkJcG9zID0gLXBvcyAtIDE7Ci0JCXdoaWxlIChwb3MgPCBhY3RpdmVfbnIpIHsKLQkJCWNlID0gYWN0aXZlX2NhY2hlW3Bvc107CisJCXdoaWxlIChwb3MgPCByZXBvLT5pbmRleC0+Y2FjaGVfbnIpIHsKKwkJCWNlID0gcmVwby0+aW5kZXgtPmNhY2hlW3Bvc107CiAJCQlpZiAoY2VfbmFtZWxlbihjZSkgIT0gbmFtZWxlbiB8fAogCQkJICAgIG1lbWNtcChjZS0+bmFtZSwgY3AsIG5hbWVsZW4pKQogCQkJCWJyZWFrOwpAQCAtMTc2OCw3ICsxODU4LDcgQEAKIAkJCXBvcysrOwogCQl9CiAJCWlmIChvbmx5X3RvX2RpZSAmJiBuYW1lWzFdICYmIG5hbWVbMV0gIT0gJy8nKQotCQkJZGlhZ25vc2VfaW52YWxpZF9pbmRleF9wYXRoKHN0YWdlLCBwcmVmaXgsIGNwKTsKKwkJCWRpYWdub3NlX2ludmFsaWRfaW5kZXhfcGF0aChyZXBvLCBzdGFnZSwgcHJlZml4LCBjcCk7CiAJCWZyZWUobmV3X3BhdGgpOwogCQlyZXR1cm4gLTE7CiAJfQpAQCAtMTc4OCwyMiArMTg3OCwyMiBAQAogCQlzdWJfZmxhZ3MgJj0gfkdFVF9PSURfRElTQU1CSUdVQVRPUlM7CiAJCXN1Yl9mbGFncyB8PSBHRVRfT0lEX1RSRUVJU0g7CiAKLQkJaWYgKCFnZXRfb2lkXzEobmFtZSwgbGVuLCAmdHJlZV9vaWQsIHN1Yl9mbGFncykpIHsKKwkJaWYgKCFnZXRfb2lkXzEocmVwbywgbmFtZSwgbGVuLCAmdHJlZV9vaWQsIHN1Yl9mbGFncykpIHsKIAkJCWNvbnN0IGNoYXIgKmZpbGVuYW1lID0gY3ArMTsKIAkJCWNoYXIgKm5ld19maWxlbmFtZSA9IE5VTEw7CiAKLQkJCW5ld19maWxlbmFtZSA9IHJlc29sdmVfcmVsYXRpdmVfcGF0aChmaWxlbmFtZSk7CisJCQluZXdfZmlsZW5hbWUgPSByZXNvbHZlX3JlbGF0aXZlX3BhdGgocmVwbywgZmlsZW5hbWUpOwogCQkJaWYgKG5ld19maWxlbmFtZSkKIAkJCQlmaWxlbmFtZSA9IG5ld19maWxlbmFtZTsKIAkJCWlmIChmbGFncyAmIEdFVF9PSURfRk9MTE9XX1NZTUxJTktTKSB7Ci0JCQkJcmV0ID0gZ2V0X3RyZWVfZW50cnlfZm9sbG93X3N5bWxpbmtzKCZ0cmVlX29pZCwKKwkJCQlyZXQgPSBnZXRfdHJlZV9lbnRyeV9mb2xsb3dfc3ltbGlua3MocmVwbywgJnRyZWVfb2lkLAogCQkJCQlmaWxlbmFtZSwgb2lkLCAmb2MtPnN5bWxpbmtfcGF0aCwKIAkJCQkJJm9jLT5tb2RlKTsKIAkJCX0gZWxzZSB7Ci0JCQkJcmV0ID0gZ2V0X3RyZWVfZW50cnkoJnRyZWVfb2lkLCBmaWxlbmFtZSwgb2lkLAorCQkJCXJldCA9IGdldF90cmVlX2VudHJ5KHJlcG8sICZ0cmVlX29pZCwgZmlsZW5hbWUsIG9pZCwKIAkJCQkJCSAgICAgJm9jLT5tb2RlKTsKIAkJCQlpZiAocmV0ICYmIG9ubHlfdG9fZGllKSB7Ci0JCQkJCWRpYWdub3NlX2ludmFsaWRfb2lkX3BhdGgocHJlZml4LAorCQkJCQlkaWFnbm9zZV9pbnZhbGlkX29pZF9wYXRoKHJlcG8sIHByZWZpeCwKIAkJCQkJCQkJICAgZmlsZW5hbWUsCiAJCQkJCQkJCSAgICZ0cmVlX29pZCwKIAkJCQkJCQkJICAgbmFtZSwgbGVuKTsKQEAgLTE4MTYsNyArMTkwNiw3IEBACiAJCQlyZXR1cm4gcmV0OwogCQl9IGVsc2UgewogCQkJaWYgKG9ubHlfdG9fZGllKQotCQkJCWRpZSgiSW52YWxpZCBvYmplY3QgbmFtZSAnJS4qcycuIiwgbGVuLCBuYW1lKTsKKwkJCQlkaWUoXygiaW52YWxpZCBvYmplY3QgbmFtZSAnJS4qcycuIiksIGxlbiwgbmFtZSk7CiAJCX0KIAl9CiAJcmV0dXJuIHJldDsKQEAgLTE4MjksMTYgKzE5MTksMjMgQEAKICAqIGV4aXN0IGluICdIRUFEJyIgd2hlbiBnaXZlbiAiSEVBRDpkb2MiLCBvciBpdCBtYXkgcmV0dXJuIGluIHdoaWNoIGNhc2UKICAqIHlvdSBoYXZlIGEgY2hhbmNlIHRvIGRpYWdub3NlIHRoZSBlcnJvciBmdXJ0aGVyLgogICovCi12b2lkIG1heWJlX2RpZV9vbl9taXNzcGVsdF9vYmplY3RfbmFtZShjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICpwcmVmaXgpCit2b2lkIG1heWJlX2RpZV9vbl9taXNzcGVsdF9vYmplY3RfbmFtZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgICAgICAgY29uc3QgY2hhciAqbmFtZSwKKwkJCQkgICAgICAgY29uc3QgY2hhciAqcHJlZml4KQogewogCXN0cnVjdCBvYmplY3RfY29udGV4dCBvYzsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKLQlnZXRfb2lkX3dpdGhfY29udGV4dF8xKG5hbWUsIEdFVF9PSURfT05MWV9UT19ESUUsIHByZWZpeCwgJm9pZCwgJm9jKTsKKwlnZXRfb2lkX3dpdGhfY29udGV4dF8xKHIsIG5hbWUsIEdFVF9PSURfT05MWV9UT19ESUUsCisJCQkgICAgICAgcHJlZml4LCAmb2lkLCAmb2MpOwogfQogCi1pbnQgZ2V0X29pZF93aXRoX2NvbnRleHQoY29uc3QgY2hhciAqc3RyLCB1bnNpZ25lZCBmbGFncywgc3RydWN0IG9iamVjdF9pZCAqb2lkLCBzdHJ1Y3Qgb2JqZWN0X2NvbnRleHQgKm9jKQorZW51bSBnZXRfb2lkX3Jlc3VsdCBnZXRfb2lkX3dpdGhfY29udGV4dChzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCQkJIGNvbnN0IGNoYXIgKnN0ciwKKwkJCQkJIHVuc2lnbmVkIGZsYWdzLAorCQkJCQkgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkJCQkgc3RydWN0IG9iamVjdF9jb250ZXh0ICpvYykKIHsKIAlpZiAoZmxhZ3MgJiBHRVRfT0lEX0ZPTExPV19TWU1MSU5LUyAmJiBmbGFncyAmIEdFVF9PSURfT05MWV9UT19ESUUpCiAJCUJVRygiaW5jb21wYXRpYmxlIGZsYWdzIGZvciBnZXRfc2hhMV93aXRoX2NvbnRleHQiKTsKLQlyZXR1cm4gZ2V0X29pZF93aXRoX2NvbnRleHRfMShzdHIsIGZsYWdzLCBOVUxMLCBvaWQsIG9jKTsKKwlyZXR1cm4gZ2V0X29pZF93aXRoX2NvbnRleHRfMShyZXBvLCBzdHIsIGZsYWdzLCBOVUxMLCBvaWQsIG9jKTsKIH0KZGlmZiAtLWdpdCBhL3NoYTFjb2xsaXNpb25kZXRlY3Rpb24gYi9zaGExY29sbGlzaW9uZGV0ZWN0aW9uCmluZGV4IDIzMjM1N2UuLjg1NTgyN2MgMTYwMDAwCi0tLSBhL3NoYTFjb2xsaXNpb25kZXRlY3Rpb24KKysrIGIvc2hhMWNvbGxpc2lvbmRldGVjdGlvbgpAQCAtMSArMSBAQAotU3VicHJvamVjdCBjb21taXQgMjMyMzU3ZWIyZWEwMzk3Mzg4MjU0YTRiMTg4MzMzYTIyN2JmNWIxMAorU3VicHJvamVjdCBjb21taXQgODU1ODI3YzU4M2JjMzA2NDViYTQyNzg4NWNhYTQwYzViODE3NjRkMgpkaWZmIC0tZ2l0IGEvc2hhMWRjL3NoYTEuYyBiL3NoYTFkYy9zaGExLmMKaW5kZXggZGYwNjMwYi4uZGVkZTJjYiAxMDA2NDQKLS0tIGEvc2hhMWRjL3NoYTEuYworKysgYi9zaGExZGMvc2hhMS5jCkBAIC03Miw3ICs3Miw3IEBACiAvKiBOb3QgdW5kZXIgR0NDLWFsaWtlIG9yIGdsaWJjICovCiAjZWxpZiBkZWZpbmVkKF9CWVRFX09SREVSKSAmJiBkZWZpbmVkKF9CSUdfRU5ESUFOKSAmJiBkZWZpbmVkKF9MSVRUTEVfRU5ESUFOKQogLyoKLSAqICpCU0QgYW5kIG5ld2xpYiAoZW1iZWRlZCBsaW51eCwgY3lnd2luLCBldGMpLgorICogKkJTRCBhbmQgbmV3bGliIChlbWJlZGRlZCBsaW51eCwgY3lnd2luLCBldGMpLgogICogdGhlIGRlZmluZWQoX0JJR19FTkRJQU4pICYmIGRlZmluZWQoX0xJVFRMRV9FTkRJQU4pIHBhcnQgcHJldmVudHMKICAqIHRoaXMgY29uZGl0aW9uIGZyb20gbWF0Y2hpbmcgd2l0aCBTb2xhcmlzL3NwYXJjLgogICogKFNvbGFyaXMgZGVmaW5lcyBvbmx5IG9uZSBlbmRpYW4gbWFjcm8pCkBAIC05MywxMiArOTMsMTIgQEAKICNkZWZpbmUgU0hBMURDX0JJR0VORElBTgogCiAvKiBOb3QgdW5kZXIgR0NDLWFsaWtlIG9yIGdsaWJjIG9yICpCU0Qgb3IgbmV3bGliIG9yIDxwcm9jZXNzb3Igd2hpdGVsaXN0PiAqLwotI2VsaWYgKGRlZmluZWQoX0FJWCkpCisjZWxpZiAoZGVmaW5lZChfQUlYKSB8fCBkZWZpbmVkKF9faHB1eCkpCiAKIC8qCiAgKiBEZWZpbmVzIEJpZyBFbmRpYW4gb24gYSB3aGl0ZWxpc3Qgb2YgT1NzIHRoYXQgYXJlIGtub3duIHRvIGJlIEJpZwogICogRW5kaWFuLW9ubHkuIFNlZQotICogaHR0cHM6Ly9wdWJsaWMtaW5ib3gub3JnL2dpdC85MzA1NjgyMy0yNzQwLWQwNzItMWViZC00NmI0NDBiMzNkN2VAZmVsdC5kZW1vbi5ubC8KKyAqIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC85MzA1NjgyMy0yNzQwLWQwNzItMWViZC00NmI0NDBiMzNkN2VAZmVsdC5kZW1vbi5ubC8KICAqLwogI2RlZmluZSBTSEExRENfQklHRU5ESUFOCiAKQEAgLTEyNCwxMCArMTI0LDExIEBACiAjZW5kaWYKIC8qRU5ESUFOTkVTUyBTRUxFQ1RJT04qLwogCisjaWZuZGVmIFNIQTFEQ19GT1JDRV9BTElHTkVEX0FDQ0VTUwogI2lmIGRlZmluZWQoU0hBMURDX0ZPUkNFX1VOQUxJR05FRF9BQ0NFU1MpIHx8IGRlZmluZWQoU0hBMURDX09OX0lOVEVMX0xJS0VfUFJPQ0VTU09SKQogI2RlZmluZSBTSEExRENfQUxMT1dfVU5BTElHTkVEX0FDQ0VTUwotI2VuZGlmIC8qVU5BTElHTk1FTlQgREVURUNUSU9OKi8KLQorI2VuZGlmIC8qVU5BTElHTkVEIEFDQ0VTUyBERVRFQ1RJT04qLworI2VuZGlmIC8qRk9SQ0UgQUxJR05FRCBBQ0NFU1MqLwogCiAjZGVmaW5lIHJvdGF0ZV9yaWdodCh4LG4pICgoKHgpPj4obikpfCgoeCk8PCgzMi0obikpKSkKICNkZWZpbmUgcm90YXRlX2xlZnQoeCxuKSAgKCgoeCk8PChuKSl8KCh4KT4+KDMyLShuKSkpKQpkaWZmIC0tZ2l0IGEvc2hhMWRjX2dpdC5jIGIvc2hhMWRjX2dpdC5jCmluZGV4IGUwY2M5ZDkuLjVjMzAwZTggMTAwNjQ0Ci0tLSBhL3NoYTFkY19naXQuYworKysgYi9zaGExZGNfZ2l0LmMKQEAgLTE5LDcgKzE5LDcgQEAKIAlpZiAoIVNIQTFEQ0ZpbmFsKGhhc2gsIGN0eCkpCiAJCXJldHVybjsKIAlkaWUoIlNIQS0xIGFwcGVhcnMgdG8gYmUgcGFydCBvZiBhIGNvbGxpc2lvbiBhdHRhY2s6ICVzIiwKLQkgICAgc2hhMV90b19oZXgoaGFzaCkpOworCSAgICBoYXNoX3RvX2hleF9hbGdvcChoYXNoLCAmaGFzaF9hbGdvc1tHSVRfSEFTSF9TSEExXSkpOwogfQogCiAvKgpkaWZmIC0tZ2l0IGEvc2hhMjU2L2Jsb2NrL3NoYTI1Ni5jIGIvc2hhMjU2L2Jsb2NrL3NoYTI1Ni5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM3ODUwYjQKLS0tIC9kZXYvbnVsbAorKysgYi9zaGEyNTYvYmxvY2svc2hhMjU2LmMKQEAgLTAsMCArMSwxOTYgQEAKKyNpbmNsdWRlICJnaXQtY29tcGF0LXV0aWwuaCIKKyNpbmNsdWRlICIuL3NoYTI1Ni5oIgorCisjdW5kZWYgUk5ECisjdW5kZWYgQkxLU0laRQorCisjZGVmaW5lIEJMS1NJWkUgYmxrX1NIQTI1Nl9CTEtTSVpFCisKK3ZvaWQgYmxrX1NIQTI1Nl9Jbml0KGJsa19TSEEyNTZfQ1RYICpjdHgpCit7CisJY3R4LT5vZmZzZXQgPSAwOworCWN0eC0+c2l6ZSA9IDA7CisJY3R4LT5zdGF0ZVswXSA9IDB4NmEwOWU2Njd1bDsKKwljdHgtPnN0YXRlWzFdID0gMHhiYjY3YWU4NXVsOworCWN0eC0+c3RhdGVbMl0gPSAweDNjNmVmMzcydWw7CisJY3R4LT5zdGF0ZVszXSA9IDB4YTU0ZmY1M2F1bDsKKwljdHgtPnN0YXRlWzRdID0gMHg1MTBlNTI3ZnVsOworCWN0eC0+c3RhdGVbNV0gPSAweDliMDU2ODhjdWw7CisJY3R4LT5zdGF0ZVs2XSA9IDB4MWY4M2Q5YWJ1bDsKKwljdHgtPnN0YXRlWzddID0gMHg1YmUwY2QxOXVsOworfQorCitzdGF0aWMgaW5saW5lIHVpbnQzMl90IHJvcih1aW50MzJfdCB4LCB1bnNpZ25lZCBuKQoreworCXJldHVybiAoeCA+PiBuKSB8ICh4IDw8ICgzMiAtIG4pKTsKK30KKworc3RhdGljIGlubGluZSB1aW50MzJfdCBjaCh1aW50MzJfdCB4LCB1aW50MzJfdCB5LCB1aW50MzJfdCB6KQoreworCXJldHVybiB6IF4gKHggJiAoeSBeIHopKTsKK30KKworc3RhdGljIGlubGluZSB1aW50MzJfdCBtYWoodWludDMyX3QgeCwgdWludDMyX3QgeSwgdWludDMyX3QgeikKK3sKKwlyZXR1cm4gKCh4IHwgeSkgJiB6KSB8ICh4ICYgeSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgdWludDMyX3Qgc2lnbWEwKHVpbnQzMl90IHgpCit7CisJcmV0dXJuIHJvcih4LCAyKSBeIHJvcih4LCAxMykgXiByb3IoeCwgMjIpOworfQorCitzdGF0aWMgaW5saW5lIHVpbnQzMl90IHNpZ21hMSh1aW50MzJfdCB4KQoreworCXJldHVybiByb3IoeCwgNikgXiByb3IoeCwgMTEpIF4gcm9yKHgsIDI1KTsKK30KKworc3RhdGljIGlubGluZSB1aW50MzJfdCBnYW1tYTAodWludDMyX3QgeCkKK3sKKwlyZXR1cm4gcm9yKHgsIDcpIF4gcm9yKHgsIDE4KSBeICh4ID4+IDMpOworfQorCitzdGF0aWMgaW5saW5lIHVpbnQzMl90IGdhbW1hMSh1aW50MzJfdCB4KQoreworCXJldHVybiByb3IoeCwgMTcpIF4gcm9yKHgsIDE5KSBeICh4ID4+IDEwKTsKK30KKworc3RhdGljIHZvaWQgYmxrX1NIQTI1Nl9UcmFuc2Zvcm0oYmxrX1NIQTI1Nl9DVFggKmN0eCwgY29uc3QgdW5zaWduZWQgY2hhciAqYnVmKQoreworCisJdWludDMyX3QgU1s4XSwgV1s2NF0sIHQwLCB0MTsKKwlpbnQgaTsKKworCS8qIGNvcHkgc3RhdGUgaW50byBTICovCisJZm9yIChpID0gMDsgaSA8IDg7IGkrKykKKwkJU1tpXSA9IGN0eC0+c3RhdGVbaV07CisKKwkvKiBjb3B5IHRoZSBzdGF0ZSBpbnRvIDUxMi1iaXRzIGludG8gV1swLi4xNV0gKi8KKwlmb3IgKGkgPSAwOyBpIDwgMTY7IGkrKywgYnVmICs9IHNpemVvZih1aW50MzJfdCkpCisJCVdbaV0gPSBnZXRfYmUzMihidWYpOworCisJLyogZmlsbCBXWzE2Li42M10gKi8KKwlmb3IgKGkgPSAxNjsgaSA8IDY0OyBpKyspCisJCVdbaV0gPSBnYW1tYTEoV1tpIC0gMl0pICsgV1tpIC0gN10gKyBnYW1tYTAoV1tpIC0gMTVdKSArIFdbaSAtIDE2XTsKKworI2RlZmluZSBSTkQoYSxiLGMsZCxlLGYsZyxoLGksa2kpICAgICAgICAgICAgICAgICAgICBcCisJdDAgPSBoICsgc2lnbWExKGUpICsgY2goZSwgZiwgZykgKyBraSArIFdbaV07ICAgXAorCXQxID0gc2lnbWEwKGEpICsgbWFqKGEsIGIsIGMpOyAgICAgICAgICAgICAgICAgIFwKKwlkICs9IHQwOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisJaCAgPSB0MCArIHQxOworCisJUk5EKFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSxTWzVdLFNbNl0sU1s3XSwwLDB4NDI4YTJmOTgpOworCVJORChTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSxTWzVdLFNbNl0sMSwweDcxMzc0NDkxKTsKKwlSTkQoU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSxTWzVdLDIsMHhiNWMwZmJjZik7CisJUk5EKFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSwzLDB4ZTliNWRiYTUpOworCVJORChTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sNCwweDM5NTZjMjViKTsKKwlSTkQoU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLDUsMHg1OWYxMTFmMSk7CisJUk5EKFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSw2LDB4OTIzZjgyYTQpOworCVJORChTWzFdLFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sNywweGFiMWM1ZWQ1KTsKKwlSTkQoU1swXSxTWzFdLFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLDgsMHhkODA3YWE5OCk7CisJUk5EKFNbN10sU1swXSxTWzFdLFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSw5LDB4MTI4MzViMDEpOworCVJORChTWzZdLFNbN10sU1swXSxTWzFdLFNbMl0sU1szXSxTWzRdLFNbNV0sMTAsMHgyNDMxODViZSk7CisJUk5EKFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSwxMSwweDU1MGM3ZGMzKTsKKwlSTkQoU1s0XSxTWzVdLFNbNl0sU1s3XSxTWzBdLFNbMV0sU1syXSxTWzNdLDEyLDB4NzJiZTVkNzQpOworCVJORChTWzNdLFNbNF0sU1s1XSxTWzZdLFNbN10sU1swXSxTWzFdLFNbMl0sMTMsMHg4MGRlYjFmZSk7CisJUk5EKFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSwxNCwweDliZGMwNmE3KTsKKwlSTkQoU1sxXSxTWzJdLFNbM10sU1s0XSxTWzVdLFNbNl0sU1s3XSxTWzBdLDE1LDB4YzE5YmYxNzQpOworCVJORChTWzBdLFNbMV0sU1syXSxTWzNdLFNbNF0sU1s1XSxTWzZdLFNbN10sMTYsMHhlNDliNjljMSk7CisJUk5EKFNbN10sU1swXSxTWzFdLFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSwxNywweGVmYmU0Nzg2KTsKKwlSTkQoU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSxTWzVdLDE4LDB4MGZjMTlkYzYpOworCVJORChTWzVdLFNbNl0sU1s3XSxTWzBdLFNbMV0sU1syXSxTWzNdLFNbNF0sMTksMHgyNDBjYTFjYyk7CisJUk5EKFNbNF0sU1s1XSxTWzZdLFNbN10sU1swXSxTWzFdLFNbMl0sU1szXSwyMCwweDJkZTkyYzZmKTsKKwlSTkQoU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLDIxLDB4NGE3NDg0YWEpOworCVJORChTWzJdLFNbM10sU1s0XSxTWzVdLFNbNl0sU1s3XSxTWzBdLFNbMV0sMjIsMHg1Y2IwYTlkYyk7CisJUk5EKFNbMV0sU1syXSxTWzNdLFNbNF0sU1s1XSxTWzZdLFNbN10sU1swXSwyMywweDc2Zjk4OGRhKTsKKwlSTkQoU1swXSxTWzFdLFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLDI0LDB4OTgzZTUxNTIpOworCVJORChTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSxTWzVdLFNbNl0sMjUsMHhhODMxYzY2ZCk7CisJUk5EKFNbNl0sU1s3XSxTWzBdLFNbMV0sU1syXSxTWzNdLFNbNF0sU1s1XSwyNiwweGIwMDMyN2M4KTsKKwlSTkQoU1s1XSxTWzZdLFNbN10sU1swXSxTWzFdLFNbMl0sU1szXSxTWzRdLDI3LDB4YmY1OTdmYzcpOworCVJORChTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sMjgsMHhjNmUwMGJmMyk7CisJUk5EKFNbM10sU1s0XSxTWzVdLFNbNl0sU1s3XSxTWzBdLFNbMV0sU1syXSwyOSwweGQ1YTc5MTQ3KTsKKwlSTkQoU1syXSxTWzNdLFNbNF0sU1s1XSxTWzZdLFNbN10sU1swXSxTWzFdLDMwLDB4MDZjYTYzNTEpOworCVJORChTWzFdLFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sMzEsMHgxNDI5Mjk2Nyk7CisJUk5EKFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSxTWzVdLFNbNl0sU1s3XSwzMiwweDI3YjcwYTg1KTsKKwlSTkQoU1s3XSxTWzBdLFNbMV0sU1syXSxTWzNdLFNbNF0sU1s1XSxTWzZdLDMzLDB4MmUxYjIxMzgpOworCVJORChTWzZdLFNbN10sU1swXSxTWzFdLFNbMl0sU1szXSxTWzRdLFNbNV0sMzQsMHg0ZDJjNmRmYyk7CisJUk5EKFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSwzNSwweDUzMzgwZDEzKTsKKwlSTkQoU1s0XSxTWzVdLFNbNl0sU1s3XSxTWzBdLFNbMV0sU1syXSxTWzNdLDM2LDB4NjUwYTczNTQpOworCVJORChTWzNdLFNbNF0sU1s1XSxTWzZdLFNbN10sU1swXSxTWzFdLFNbMl0sMzcsMHg3NjZhMGFiYik7CisJUk5EKFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSwzOCwweDgxYzJjOTJlKTsKKwlSTkQoU1sxXSxTWzJdLFNbM10sU1s0XSxTWzVdLFNbNl0sU1s3XSxTWzBdLDM5LDB4OTI3MjJjODUpOworCVJORChTWzBdLFNbMV0sU1syXSxTWzNdLFNbNF0sU1s1XSxTWzZdLFNbN10sNDAsMHhhMmJmZThhMSk7CisJUk5EKFNbN10sU1swXSxTWzFdLFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSw0MSwweGE4MWE2NjRiKTsKKwlSTkQoU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSxTWzVdLDQyLDB4YzI0YjhiNzApOworCVJORChTWzVdLFNbNl0sU1s3XSxTWzBdLFNbMV0sU1syXSxTWzNdLFNbNF0sNDMsMHhjNzZjNTFhMyk7CisJUk5EKFNbNF0sU1s1XSxTWzZdLFNbN10sU1swXSxTWzFdLFNbMl0sU1szXSw0NCwweGQxOTJlODE5KTsKKwlSTkQoU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLDQ1LDB4ZDY5OTA2MjQpOworCVJORChTWzJdLFNbM10sU1s0XSxTWzVdLFNbNl0sU1s3XSxTWzBdLFNbMV0sNDYsMHhmNDBlMzU4NSk7CisJUk5EKFNbMV0sU1syXSxTWzNdLFNbNF0sU1s1XSxTWzZdLFNbN10sU1swXSw0NywweDEwNmFhMDcwKTsKKwlSTkQoU1swXSxTWzFdLFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLDQ4LDB4MTlhNGMxMTYpOworCVJORChTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSxTWzVdLFNbNl0sNDksMHgxZTM3NmMwOCk7CisJUk5EKFNbNl0sU1s3XSxTWzBdLFNbMV0sU1syXSxTWzNdLFNbNF0sU1s1XSw1MCwweDI3NDg3NzRjKTsKKwlSTkQoU1s1XSxTWzZdLFNbN10sU1swXSxTWzFdLFNbMl0sU1szXSxTWzRdLDUxLDB4MzRiMGJjYjUpOworCVJORChTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sNTIsMHgzOTFjMGNiMyk7CisJUk5EKFNbM10sU1s0XSxTWzVdLFNbNl0sU1s3XSxTWzBdLFNbMV0sU1syXSw1MywweDRlZDhhYTRhKTsKKwlSTkQoU1syXSxTWzNdLFNbNF0sU1s1XSxTWzZdLFNbN10sU1swXSxTWzFdLDU0LDB4NWI5Y2NhNGYpOworCVJORChTWzFdLFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sNTUsMHg2ODJlNmZmMyk7CisJUk5EKFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSxTWzVdLFNbNl0sU1s3XSw1NiwweDc0OGY4MmVlKTsKKwlSTkQoU1s3XSxTWzBdLFNbMV0sU1syXSxTWzNdLFNbNF0sU1s1XSxTWzZdLDU3LDB4NzhhNTYzNmYpOworCVJORChTWzZdLFNbN10sU1swXSxTWzFdLFNbMl0sU1szXSxTWzRdLFNbNV0sNTgsMHg4NGM4NzgxNCk7CisJUk5EKFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSxTWzJdLFNbM10sU1s0XSw1OSwweDhjYzcwMjA4KTsKKwlSTkQoU1s0XSxTWzVdLFNbNl0sU1s3XSxTWzBdLFNbMV0sU1syXSxTWzNdLDYwLDB4OTBiZWZmZmEpOworCVJORChTWzNdLFNbNF0sU1s1XSxTWzZdLFNbN10sU1swXSxTWzFdLFNbMl0sNjEsMHhhNDUwNmNlYik7CisJUk5EKFNbMl0sU1szXSxTWzRdLFNbNV0sU1s2XSxTWzddLFNbMF0sU1sxXSw2MiwweGJlZjlhM2Y3KTsKKwlSTkQoU1sxXSxTWzJdLFNbM10sU1s0XSxTWzVdLFNbNl0sU1s3XSxTWzBdLDYzLDB4YzY3MTc4ZjIpOworCisJZm9yIChpID0gMDsgaSA8IDg7IGkrKykKKwkJY3R4LT5zdGF0ZVtpXSArPSBTW2ldOworfQorCit2b2lkIGJsa19TSEEyNTZfVXBkYXRlKGJsa19TSEEyNTZfQ1RYICpjdHgsIGNvbnN0IHZvaWQgKmRhdGEsIHNpemVfdCBsZW4pCit7CisJdW5zaWduZWQgaW50IGxlbl9idWYgPSBjdHgtPnNpemUgJiA2MzsKKworCWN0eC0+c2l6ZSArPSBsZW47CisKKwkvKiBSZWFkIHRoZSBkYXRhIGludG8gYnVmIGFuZCBwcm9jZXNzIGJsb2NrcyBhcyB0aGV5IGdldCBmdWxsICovCisJaWYgKGxlbl9idWYpIHsKKwkJdW5zaWduZWQgaW50IGxlZnQgPSA2NCAtIGxlbl9idWY7CisJCWlmIChsZW4gPCBsZWZ0KQorCQkJbGVmdCA9IGxlbjsKKwkJbWVtY3B5KGxlbl9idWYgKyBjdHgtPmJ1ZiwgZGF0YSwgbGVmdCk7CisJCWxlbl9idWYgPSAobGVuX2J1ZiArIGxlZnQpICYgNjM7CisJCWxlbiAtPSBsZWZ0OworCQlkYXRhID0gKChjb25zdCBjaGFyICopZGF0YSArIGxlZnQpOworCQlpZiAobGVuX2J1ZikKKwkJCXJldHVybjsKKwkJYmxrX1NIQTI1Nl9UcmFuc2Zvcm0oY3R4LCBjdHgtPmJ1Zik7CisJfQorCXdoaWxlIChsZW4gPj0gNjQpIHsKKwkJYmxrX1NIQTI1Nl9UcmFuc2Zvcm0oY3R4LCBkYXRhKTsKKwkJZGF0YSA9ICgoY29uc3QgY2hhciAqKWRhdGEgKyA2NCk7CisJCWxlbiAtPSA2NDsKKwl9CisJaWYgKGxlbikKKwkJbWVtY3B5KGN0eC0+YnVmLCBkYXRhLCBsZW4pOworfQorCit2b2lkIGJsa19TSEEyNTZfRmluYWwodW5zaWduZWQgY2hhciAqZGlnZXN0LCBibGtfU0hBMjU2X0NUWCAqY3R4KQoreworCXN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHBhZFs2NF0gPSB7IDB4ODAgfTsKKwl1bnNpZ25lZCBpbnQgcGFkbGVuWzJdOworCWludCBpOworCisJLyogUGFkIHdpdGggYSBiaW5hcnkgMSAoaWUgMHg4MCksIHRoZW4gemVyb2VzLCB0aGVuIGxlbmd0aCAqLworCXBhZGxlblswXSA9IGh0b25sKCh1aW50MzJfdCkoY3R4LT5zaXplID4+IDI5KSk7CisJcGFkbGVuWzFdID0gaHRvbmwoKHVpbnQzMl90KShjdHgtPnNpemUgPDwgMykpOworCisJaSA9IGN0eC0+c2l6ZSAmIDYzOworCWJsa19TSEEyNTZfVXBkYXRlKGN0eCwgcGFkLCAxICsgKDYzICYgKDU1IC0gaSkpKTsKKwlibGtfU0hBMjU2X1VwZGF0ZShjdHgsIHBhZGxlbiwgOCk7CisKKwkvKiBjb3B5IG91dHB1dCAqLworCWZvciAoaSA9IDA7IGkgPCA4OyBpKyssIGRpZ2VzdCArPSBzaXplb2YodWludDMyX3QpKQorCQlwdXRfYmUzMihkaWdlc3QsIGN0eC0+c3RhdGVbaV0pOworfQpkaWZmIC0tZ2l0IGEvc2hhMjU2L2Jsb2NrL3NoYTI1Ni5oIGIvc2hhMjU2L2Jsb2NrL3NoYTI1Ni5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUwOTlkNjQKLS0tIC9kZXYvbnVsbAorKysgYi9zaGEyNTYvYmxvY2svc2hhMjU2LmgKQEAgLTAsMCArMSwyNCBAQAorI2lmbmRlZiBTSEEyNTZfQkxPQ0tfU0hBMjU2X0gKKyNkZWZpbmUgU0hBMjU2X0JMT0NLX1NIQTI1Nl9ICisKKyNkZWZpbmUgYmxrX1NIQTI1Nl9CTEtTSVpFIDY0CisKK3N0cnVjdCBibGtfU0hBMjU2X0NUWCB7CisJdWludDMyX3Qgc3RhdGVbOF07CisJdWludDY0X3Qgc2l6ZTsKKwl1aW50MzJfdCBvZmZzZXQ7CisJdWludDhfdCBidWZbYmxrX1NIQTI1Nl9CTEtTSVpFXTsKK307CisKK3R5cGVkZWYgc3RydWN0IGJsa19TSEEyNTZfQ1RYIGJsa19TSEEyNTZfQ1RYOworCit2b2lkIGJsa19TSEEyNTZfSW5pdChibGtfU0hBMjU2X0NUWCAqY3R4KTsKK3ZvaWQgYmxrX1NIQTI1Nl9VcGRhdGUoYmxrX1NIQTI1Nl9DVFggKmN0eCwgY29uc3Qgdm9pZCAqZGF0YSwgc2l6ZV90IGxlbik7Cit2b2lkIGJsa19TSEEyNTZfRmluYWwodW5zaWduZWQgY2hhciAqZGlnZXN0LCBibGtfU0hBMjU2X0NUWCAqY3R4KTsKKworI2RlZmluZSBwbGF0Zm9ybV9TSEEyNTZfQ1RYIGJsa19TSEEyNTZfQ1RYCisjZGVmaW5lIHBsYXRmb3JtX1NIQTI1Nl9Jbml0IGJsa19TSEEyNTZfSW5pdAorI2RlZmluZSBwbGF0Zm9ybV9TSEEyNTZfVXBkYXRlIGJsa19TSEEyNTZfVXBkYXRlCisjZGVmaW5lIHBsYXRmb3JtX1NIQTI1Nl9GaW5hbCBibGtfU0hBMjU2X0ZpbmFsCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvc2hhMjU2L2djcnlwdC5oIGIvc2hhMjU2L2djcnlwdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA5YmQ4YmIKLS0tIC9kZXYvbnVsbAorKysgYi9zaGEyNTYvZ2NyeXB0LmgKQEAgLTAsMCArMSwzMCBAQAorI2lmbmRlZiBTSEEyNTZfR0NSWVBUX0gKKyNkZWZpbmUgU0hBMjU2X0dDUllQVF9ICisKKyNpbmNsdWRlIDxnY3J5cHQuaD4KKworI2RlZmluZSBTSEEyNTZfRElHRVNUX1NJWkUgMzIKKwordHlwZWRlZiBnY3J5X21kX2hkX3QgZ2NyeXB0X1NIQTI1Nl9DVFg7CisKK2lubGluZSB2b2lkIGdjcnlwdF9TSEEyNTZfSW5pdChnY3J5cHRfU0hBMjU2X0NUWCAqY3R4KQoreworCWdjcnlfbWRfb3BlbihjdHgsIEdDUllfTURfU0hBMjU2LCAwKTsKK30KKworaW5saW5lIHZvaWQgZ2NyeXB0X1NIQTI1Nl9VcGRhdGUoZ2NyeXB0X1NIQTI1Nl9DVFggKmN0eCwgY29uc3Qgdm9pZCAqZGF0YSwgc2l6ZV90IGxlbikKK3sKKwlnY3J5X21kX3dyaXRlKCpjdHgsIGRhdGEsIGxlbik7Cit9CisKK2lubGluZSB2b2lkIGdjcnlwdF9TSEEyNTZfRmluYWwodW5zaWduZWQgY2hhciAqZGlnZXN0LCBnY3J5cHRfU0hBMjU2X0NUWCAqY3R4KQoreworCW1lbWNweShkaWdlc3QsIGdjcnlfbWRfcmVhZCgqY3R4LCBHQ1JZX01EX1NIQTI1NiksIFNIQTI1Nl9ESUdFU1RfU0laRSk7Cit9CisKKyNkZWZpbmUgcGxhdGZvcm1fU0hBMjU2X0NUWCBnY3J5cHRfU0hBMjU2X0NUWAorI2RlZmluZSBwbGF0Zm9ybV9TSEEyNTZfSW5pdCBnY3J5cHRfU0hBMjU2X0luaXQKKyNkZWZpbmUgcGxhdGZvcm1fU0hBMjU2X1VwZGF0ZSBnY3J5cHRfU0hBMjU2X1VwZGF0ZQorI2RlZmluZSBwbGF0Zm9ybV9TSEEyNTZfRmluYWwgZ2NyeXB0X1NIQTI1Nl9GaW5hbAorCisjZW5kaWYKZGlmZiAtLWdpdCBhL3NoYWxsb3cuYyBiL3NoYWxsb3cuYwppbmRleCAwMmZkYmZjLi43ZmQwNGFmIDEwMDY0NAotLS0gYS9zaGFsbG93LmMKKysrIGIvc2hhbGxvdy5jCkBAIC0xMiwxMCArMTIsNyBAQAogI2luY2x1ZGUgImRpZmYuaCIKICNpbmNsdWRlICJyZXZpc2lvbi5oIgogI2luY2x1ZGUgImNvbW1pdC1zbGFiLmgiCi0jaW5jbHVkZSAicmV2aXNpb24uaCIKICNpbmNsdWRlICJsaXN0LW9iamVjdHMuaCIKLSNpbmNsdWRlICJjb21taXQtc2xhYi5oIgotI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKICNpbmNsdWRlICJjb21taXQtcmVhY2guaCIKIAogdm9pZCBzZXRfYWx0ZXJuYXRlX3NoYWxsb3dfZmlsZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3QgY2hhciAqcGF0aCwgaW50IG92ZXJyaWRlKQpAQCAtNDMsNiArNDAsMTMgQEAKIAogaW50IGlzX3JlcG9zaXRvcnlfc2hhbGxvdyhzdHJ1Y3QgcmVwb3NpdG9yeSAqcikKIHsKKwkvKgorCSAqIE5FRURTV09SSzogVGhpcyBmdW5jdGlvbiB1cGRhdGVzCisJICogci0+cGFyc2VkX29iamVjdHMtPntpc19zaGFsbG93LHNoYWxsb3dfc3RhdH0gYXMgYSBzaWRlIGVmZmVjdCBidXQKKwkgKiB0aGVyZSBpcyBubyBjb3JyZXNwb25kaW5nIGZ1bmN0aW9uIHRvIGNsZWFyIHRoZW0gd2hlbiB0aGUgc2hhbGxvdworCSAqIGZpbGUgaXMgdXBkYXRlZC4KKwkgKi8KKwogCUZJTEUgKmZwOwogCWNoYXIgYnVmWzEwMjRdOwogCWNvbnN0IGNoYXIgKnBhdGggPSByLT5wYXJzZWRfb2JqZWN0cy0+YWx0ZXJuYXRlX3NoYWxsb3dfZmlsZTsKQEAgLTE0OSw2ICsxNTMsOCBAQAogCWZvciAoaSA9IDA7IGkgPCBkZXB0aHMuc2xhYl9jb3VudDsgaSsrKSB7CiAJCWludCBqOwogCisJCWlmICghZGVwdGhzLnNsYWJbaV0pCisJCQljb250aW51ZTsKIAkJZm9yIChqID0gMDsgaiA8IGRlcHRocy5zbGFiX3NpemU7IGorKykKIAkJCWZyZWUoZGVwdGhzLnNsYWJbaV1bal0pOwogCX0KQEAgLTI0MSw3ICsyNDcsOCBAQAogCWlmIChyLT5wYXJzZWRfb2JqZWN0cy0+aXNfc2hhbGxvdyA9PSAtMSkKIAkJQlVHKCJzaGFsbG93IG11c3QgYmUgaW5pdGlhbGl6ZWQgYnkgbm93Iik7CiAKLQlpZiAoIXN0YXRfdmFsaWRpdHlfY2hlY2soci0+cGFyc2VkX29iamVjdHMtPnNoYWxsb3dfc3RhdCwgZ2l0X3BhdGhfc2hhbGxvdyh0aGVfcmVwb3NpdG9yeSkpKQorCWlmICghc3RhdF92YWxpZGl0eV9jaGVjayhyLT5wYXJzZWRfb2JqZWN0cy0+c2hhbGxvd19zdGF0LAorCQkJCSBnaXRfcGF0aF9zaGFsbG93KHIpKSkKIAkJZGllKCJzaGFsbG93IGZpbGUgaGFzIGNoYW5nZWQgc2luY2Ugd2UgcmVhZCBpdCIpOwogfQogCmRpZmYgLS1naXQgYS9zaGVsbC5jIGIvc2hlbGwuYwppbmRleCA0MDA4NGEzLi41NGNjYTc0IDEwMDY0NAotLS0gYS9zaGVsbC5jCisrKyBiL3NoZWxsLmMKQEAgLTE2LDEwICsxNiwxMCBAQAogCXNldHVwX3BhdGgoKTsKIAlpZiAoIWFyZyB8fCAhKGFyZyA9IHNxX2RlcXVvdGUoYXJnKSkgfHwgKmFyZyA9PSAnLScpCiAJCWRpZSgiYmFkIGFyZ3VtZW50Iik7Ci0JaWYgKCFzdGFydHNfd2l0aChtZSwgImdpdC0iKSkKKwlpZiAoIXNraXBfcHJlZml4KG1lLCAiZ2l0LSIsICZtZSkpCiAJCWRpZSgiYmFkIGNvbW1hbmQiKTsKIAotCW15X2FyZ3ZbMF0gPSBtZSArIDQ7CisJbXlfYXJndlswXSA9IG1lOwogCW15X2FyZ3ZbMV0gPSBhcmc7CiAJbXlfYXJndlsyXSA9IE5VTEw7CiAKZGlmZiAtLWdpdCBhL3NpZGViYW5kLmMgYi9zaWRlYmFuZC5jCmluZGV4IDM2ODY0N2EuLmVmODUxMTEgMTAwNjQ0Ci0tLSBhL3NpZGViYW5kLmMKKysrIGIvc2lkZWJhbmQuYwpAQCAtMSw3ICsxLDYgQEAKICNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgImNvbG9yLmgiCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAicGt0LWxpbmUuaCIKICNpbmNsdWRlICJzaWRlYmFuZC5oIgogI2luY2x1ZGUgImhlbHAuaCIKIApAQCAtODcsNyArODYsNyBAQAogCQlzdHJ1Y3Qga2V5d29yZF9lbnRyeSAqcCA9IGtleXdvcmRzICsgaTsKIAkJaW50IGxlbiA9IHN0cmxlbihwLT5rZXl3b3JkKTsKIAotCQlpZiAobiA8PSBsZW4pCisJCWlmIChuIDwgbGVuKQogCQkJY29udGludWU7CiAJCS8qCiAJCSAqIE1hdGNoIGNhc2UgaW5zZW5zaXRpdmVseSwgc28gd2UgY29sb3JpemUgb3V0cHV0IGZyb20gZXhpc3RpbmcKQEAgLTk1LDcgKzk0LDggQEAKIAkJICogbWVzc2FnZXMuIFdlIG9ubHkgaGlnaGxpZ2h0IHRoZSB3b3JkIHByZWNpc2VseSwgc28KIAkJICogInN1Y2Nlc3NmdWwiIHN0YXlzIHVuY29sb3JlZC4KIAkJICovCi0JCWlmICghc3RybmNhc2VjbXAocC0+a2V5d29yZCwgc3JjLCBsZW4pICYmICFpc2FsbnVtKHNyY1tsZW5dKSkgeworCQlpZiAoIXN0cm5jYXNlY21wKHAtPmtleXdvcmQsIHNyYywgbGVuKSAmJgorCQkgICAgKGxlbiA9PSBuIHx8ICFpc2FsbnVtKHNyY1tsZW5dKSkpIHsKIAkJCXN0cmJ1Zl9hZGRzdHIoZGVzdCwgcC0+Y29sb3IpOwogCQkJc3RyYnVmX2FkZChkZXN0LCBzcmMsIGxlbik7CiAJCQlzdHJidWZfYWRkc3RyKGRlc3QsIEdJVF9DT0xPUl9SRVNFVCk7CkBAIC0xMDksMTA5ICsxMDksMTA0IEBACiB9CiAKIAotLyoKLSAqIFJlY2VpdmUgbXVsdGlwbGV4ZWQgb3V0cHV0IHN0cmVhbSBvdmVyIGdpdCBuYXRpdmUgcHJvdG9jb2wuCi0gKiBpbl9zdHJlYW0gaXMgdGhlIGlucHV0IHN0cmVhbSBmcm9tIHRoZSByZW1vdGUsIHdoaWNoIGNhcnJpZXMgZGF0YQotICogaW4gcGt0X2xpbmUgZm9ybWF0IHdpdGggYmFuZCBkZXNpZ25hdG9yLiAgRGVtdWx0aXBsZXggaXQgaW50byBvdXQKLSAqIGFuZCBlcnIgYW5kIHJldHVybiBlcnJvciBhcHByb3ByaWF0ZWx5LiAgQmFuZCAjMSBjYXJyaWVzIHRoZQotICogcHJpbWFyeSBwYXlsb2FkLiAgVGhpbmdzIGNvbWluZyBvdmVyIGJhbmQgIzIgaXMgbm90IG5lY2Vzc2FyaWx5Ci0gKiBlcnJvcjsgdGhleSBhcmUgdXN1YWxseSBpbmZvcm1hdGl2ZSBtZXNzYWdlIG9uIHRoZSBzdGFuZGFyZCBlcnJvcgotICogc3RyZWFtLCBha2EgInZlcmJvc2UiKS4gIEEgbWVzc2FnZSBvdmVyIGJhbmQgIzMgaXMgYSBzaWduYWwgdGhhdAotICogdGhlIHJlbW90ZSBkaWVkIHVuZXhwZWN0ZWRseS4gIEEgZmx1c2goKSBjb25jbHVkZXMgdGhlIHN0cmVhbS4KLSAqLwotCiAjZGVmaW5lIERJU1BMQVlfUFJFRklYICJyZW1vdGU6ICIKIAogI2RlZmluZSBBTlNJX1NVRkZJWCAiXDAzM1tLIgogI2RlZmluZSBEVU1CX1NVRkZJWCAiICAgICAgICAiCiAKLWludCByZWN2X3NpZGViYW5kKGNvbnN0IGNoYXIgKm1lLCBpbnQgaW5fc3RyZWFtLCBpbnQgb3V0KQoraW50IGRlbXVsdGlwbGV4X3NpZGViYW5kKGNvbnN0IGNoYXIgKm1lLCBjaGFyICpidWYsIGludCBsZW4sCisJCQkgaW50IGRpZV9vbl9lcnJvciwKKwkJCSBzdHJ1Y3Qgc3RyYnVmICpzY3JhdGNoLAorCQkJIGVudW0gc2lkZWJhbmRfdHlwZSAqc2lkZWJhbmRfdHlwZSkKIHsKLQljb25zdCBjaGFyICpzdWZmaXg7Ci0JY2hhciBidWZbTEFSR0VfUEFDS0VUX01BWCArIDFdOwotCXN0cnVjdCBzdHJidWYgb3V0YnVmID0gU1RSQlVGX0lOSVQ7Ci0JaW50IHJldHZhbCA9IDA7CisJc3RhdGljIGNvbnN0IGNoYXIgKnN1ZmZpeDsKKwljb25zdCBjaGFyICpiLCAqYnJrOworCWludCBiYW5kOwogCi0JaWYgKGlzYXR0eSgyKSAmJiAhaXNfdGVybWluYWxfZHVtYigpKQotCQlzdWZmaXggPSBBTlNJX1NVRkZJWDsKLQllbHNlCi0JCXN1ZmZpeCA9IERVTUJfU1VGRklYOwotCi0Jd2hpbGUgKCFyZXR2YWwpIHsKLQkJY29uc3QgY2hhciAqYiwgKmJyazsKLQkJaW50IGJhbmQsIGxlbjsKLQkJbGVuID0gcGFja2V0X3JlYWQoaW5fc3RyZWFtLCBOVUxMLCBOVUxMLCBidWYsIExBUkdFX1BBQ0tFVF9NQVgsIDApOwotCQlpZiAobGVuID09IDApCi0JCQlicmVhazsKLQkJaWYgKGxlbiA8IDEpIHsKLQkJCXN0cmJ1Zl9hZGRmKCZvdXRidWYsCi0JCQkJICAgICIlcyVzOiBwcm90b2NvbCBlcnJvcjogbm8gYmFuZCBkZXNpZ25hdG9yIiwKLQkJCQkgICAgb3V0YnVmLmxlbiA/ICJcbiIgOiAiIiwgbWUpOwotCQkJcmV0dmFsID0gU0lERUJBTkRfUFJPVE9DT0xfRVJST1I7Ci0JCQlicmVhazsKLQkJfQotCQliYW5kID0gYnVmWzBdICYgMHhmZjsKLQkJYnVmW2xlbl0gPSAnXDAnOwotCQlsZW4tLTsKLQkJc3dpdGNoIChiYW5kKSB7Ci0JCWNhc2UgMzoKLQkJCXN0cmJ1Zl9hZGRmKCZvdXRidWYsICIlcyVzIiwgb3V0YnVmLmxlbiA/ICJcbiIgOiAiIiwKLQkJCQkgICAgRElTUExBWV9QUkVGSVgpOwotCQkJbWF5YmVfY29sb3JpemVfc2lkZWJhbmQoJm91dGJ1ZiwgYnVmICsgMSwgbGVuKTsKLQotCQkJcmV0dmFsID0gU0lERUJBTkRfUkVNT1RFX0VSUk9SOwotCQkJYnJlYWs7Ci0JCWNhc2UgMjoKLQkJCWIgPSBidWYgKyAxOwotCi0JCQkvKgotCQkJICogQXBwZW5kIGEgc3VmZml4IHRvIGVhY2ggbm9uZW1wdHkgbGluZSB0byBjbGVhciB0aGUKLQkJCSAqIGVuZCBvZiB0aGUgc2NyZWVuIGxpbmUuCi0JCQkgKgotCQkJICogVGhlIG91dHB1dCBpcyBhY2N1bXVsYXRlZCBpbiBhIGJ1ZmZlciBhbmQKLQkJCSAqIGVhY2ggbGluZSBpcyBwcmludGVkIHRvIHN0ZGVyciB1c2luZwotCQkJICogd3JpdGUoMikgdG8gZW5zdXJlIGludGVyLXByb2Nlc3MgYXRvbWljaXR5LgotCQkJICovCi0JCQl3aGlsZSAoKGJyayA9IHN0cnBicmsoYiwgIlxuXHIiKSkpIHsKLQkJCQlpbnQgbGluZWxlbiA9IGJyayAtIGI7Ci0KLQkJCQlpZiAoIW91dGJ1Zi5sZW4pCi0JCQkJCXN0cmJ1Zl9hZGRzdHIoJm91dGJ1ZiwgRElTUExBWV9QUkVGSVgpOwotCQkJCWlmIChsaW5lbGVuID4gMCkgewotCQkJCQltYXliZV9jb2xvcml6ZV9zaWRlYmFuZCgmb3V0YnVmLCBiLCBsaW5lbGVuKTsKLQkJCQkJc3RyYnVmX2FkZHN0cigmb3V0YnVmLCBzdWZmaXgpOwotCQkJCX0KLQotCQkJCXN0cmJ1Zl9hZGRjaCgmb3V0YnVmLCAqYnJrKTsKLQkJCQl4d3JpdGUoMiwgb3V0YnVmLmJ1Ziwgb3V0YnVmLmxlbik7Ci0JCQkJc3RyYnVmX3Jlc2V0KCZvdXRidWYpOwotCi0JCQkJYiA9IGJyayArIDE7Ci0JCQl9Ci0KLQkJCWlmICgqYikgewotCQkJCXN0cmJ1Zl9hZGRzdHIoJm91dGJ1Ziwgb3V0YnVmLmxlbiA/Ci0JCQkJCSAgICAiIiA6IERJU1BMQVlfUFJFRklYKTsKLQkJCQltYXliZV9jb2xvcml6ZV9zaWRlYmFuZCgmb3V0YnVmLCBiLCBzdHJsZW4oYikpOwotCQkJfQotCQkJYnJlYWs7Ci0JCWNhc2UgMToKLQkJCXdyaXRlX29yX2RpZShvdXQsIGJ1ZiArIDEsIGxlbik7Ci0JCQlicmVhazsKLQkJZGVmYXVsdDoKLQkJCXN0cmJ1Zl9hZGRmKCZvdXRidWYsICIlcyVzOiBwcm90b2NvbCBlcnJvcjogYmFkIGJhbmQgIyVkIiwKLQkJCQkgICAgb3V0YnVmLmxlbiA/ICJcbiIgOiAiIiwgbWUsIGJhbmQpOwotCQkJcmV0dmFsID0gU0lERUJBTkRfUFJPVE9DT0xfRVJST1I7Ci0JCQlicmVhazsKLQkJfQorCWlmICghc3VmZml4KSB7CisJCWlmIChpc2F0dHkoMikgJiYgIWlzX3Rlcm1pbmFsX2R1bWIoKSkKKwkJCXN1ZmZpeCA9IEFOU0lfU1VGRklYOworCQllbHNlCisJCQlzdWZmaXggPSBEVU1CX1NVRkZJWDsKIAl9CiAKLQlpZiAob3V0YnVmLmxlbikgewotCQlzdHJidWZfYWRkY2goJm91dGJ1ZiwgJ1xuJyk7Ci0JCXh3cml0ZSgyLCBvdXRidWYuYnVmLCBvdXRidWYubGVuKTsKKwlpZiAobGVuID09IDApIHsKKwkJKnNpZGViYW5kX3R5cGUgPSBTSURFQkFORF9GTFVTSDsKKwkJZ290byBjbGVhbnVwOwogCX0KLQlzdHJidWZfcmVsZWFzZSgmb3V0YnVmKTsKLQlyZXR1cm4gcmV0dmFsOworCWlmIChsZW4gPCAxKSB7CisJCXN0cmJ1Zl9hZGRmKHNjcmF0Y2gsCisJCQkgICAgIiVzJXM6IHByb3RvY29sIGVycm9yOiBubyBiYW5kIGRlc2lnbmF0b3IiLAorCQkJICAgIHNjcmF0Y2gtPmxlbiA/ICJcbiIgOiAiIiwgbWUpOworCQkqc2lkZWJhbmRfdHlwZSA9IFNJREVCQU5EX1BST1RPQ09MX0VSUk9SOworCQlnb3RvIGNsZWFudXA7CisJfQorCWJhbmQgPSBidWZbMF0gJiAweGZmOworCWJ1ZltsZW5dID0gJ1wwJzsKKwlsZW4tLTsKKwlzd2l0Y2ggKGJhbmQpIHsKKwljYXNlIDM6CisJCWlmIChkaWVfb25fZXJyb3IpCisJCQlkaWUoInJlbW90ZSBlcnJvcjogJXMiLCBidWYgKyAxKTsKKwkJc3RyYnVmX2FkZGYoc2NyYXRjaCwgIiVzJXMiLCBzY3JhdGNoLT5sZW4gPyAiXG4iIDogIiIsCisJCQkgICAgRElTUExBWV9QUkVGSVgpOworCQltYXliZV9jb2xvcml6ZV9zaWRlYmFuZChzY3JhdGNoLCBidWYgKyAxLCBsZW4pOworCisJCSpzaWRlYmFuZF90eXBlID0gU0lERUJBTkRfUkVNT1RFX0VSUk9SOworCQlicmVhazsKKwljYXNlIDI6CisJCWIgPSBidWYgKyAxOworCisJCS8qCisJCSAqIEFwcGVuZCBhIHN1ZmZpeCB0byBlYWNoIG5vbmVtcHR5IGxpbmUgdG8gY2xlYXIgdGhlCisJCSAqIGVuZCBvZiB0aGUgc2NyZWVuIGxpbmUuCisJCSAqCisJCSAqIFRoZSBvdXRwdXQgaXMgYWNjdW11bGF0ZWQgaW4gYSBidWZmZXIgYW5kCisJCSAqIGVhY2ggbGluZSBpcyBwcmludGVkIHRvIHN0ZGVyciB1c2luZworCQkgKiB3cml0ZSgyKSB0byBlbnN1cmUgaW50ZXItcHJvY2VzcyBhdG9taWNpdHkuCisJCSAqLworCQl3aGlsZSAoKGJyayA9IHN0cnBicmsoYiwgIlxuXHIiKSkpIHsKKwkJCWludCBsaW5lbGVuID0gYnJrIC0gYjsKKworCQkJaWYgKCFzY3JhdGNoLT5sZW4pCisJCQkJc3RyYnVmX2FkZHN0cihzY3JhdGNoLCBESVNQTEFZX1BSRUZJWCk7CisJCQlpZiAobGluZWxlbiA+IDApIHsKKwkJCQltYXliZV9jb2xvcml6ZV9zaWRlYmFuZChzY3JhdGNoLCBiLCBsaW5lbGVuKTsKKwkJCQlzdHJidWZfYWRkc3RyKHNjcmF0Y2gsIHN1ZmZpeCk7CisJCQl9CisKKwkJCXN0cmJ1Zl9hZGRjaChzY3JhdGNoLCAqYnJrKTsKKwkJCXh3cml0ZSgyLCBzY3JhdGNoLT5idWYsIHNjcmF0Y2gtPmxlbik7CisJCQlzdHJidWZfcmVzZXQoc2NyYXRjaCk7CisKKwkJCWIgPSBicmsgKyAxOworCQl9CisKKwkJaWYgKCpiKSB7CisJCQlzdHJidWZfYWRkc3RyKHNjcmF0Y2gsIHNjcmF0Y2gtPmxlbiA/CisJCQkJICAgICIiIDogRElTUExBWV9QUkVGSVgpOworCQkJbWF5YmVfY29sb3JpemVfc2lkZWJhbmQoc2NyYXRjaCwgYiwgc3RybGVuKGIpKTsKKwkJfQorCQlyZXR1cm4gMDsKKwljYXNlIDE6CisJCSpzaWRlYmFuZF90eXBlID0gU0lERUJBTkRfUFJJTUFSWTsKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJc3RyYnVmX2FkZGYoc2NyYXRjaCwgIiVzJXM6IHByb3RvY29sIGVycm9yOiBiYWQgYmFuZCAjJWQiLAorCQkJICAgIHNjcmF0Y2gtPmxlbiA/ICJcbiIgOiAiIiwgbWUsIGJhbmQpOworCQkqc2lkZWJhbmRfdHlwZSA9IFNJREVCQU5EX1BST1RPQ09MX0VSUk9SOworCQlicmVhazsKKwl9CisKK2NsZWFudXA6CisJaWYgKGRpZV9vbl9lcnJvciAmJiAqc2lkZWJhbmRfdHlwZSA9PSBTSURFQkFORF9QUk9UT0NPTF9FUlJPUikKKwkJZGllKCIlcyIsIHNjcmF0Y2gtPmJ1Zik7CisJaWYgKHNjcmF0Y2gtPmxlbikgeworCQlzdHJidWZfYWRkY2goc2NyYXRjaCwgJ1xuJyk7CisJCXh3cml0ZSgyLCBzY3JhdGNoLT5idWYsIHNjcmF0Y2gtPmxlbik7CisJfQorCXN0cmJ1Zl9yZWxlYXNlKHNjcmF0Y2gpOworCXJldHVybiAxOwogfQogCiAvKgpkaWZmIC0tZ2l0IGEvc2lkZWJhbmQuaCBiL3NpZGViYW5kLmgKaW5kZXggN2E4MTQ2Zi4uMjI3NzQwYSAxMDA2NDQKLS0tIGEvc2lkZWJhbmQuaAorKysgYi9zaWRlYmFuZC5oCkBAIC0xLDEwICsxLDI5IEBACiAjaWZuZGVmIFNJREVCQU5EX0gKICNkZWZpbmUgU0lERUJBTkRfSAogCi0jZGVmaW5lIFNJREVCQU5EX1BST1RPQ09MX0VSUk9SIC0yCi0jZGVmaW5lIFNJREVCQU5EX1JFTU9URV9FUlJPUiAtMQorZW51bSBzaWRlYmFuZF90eXBlIHsKKwlTSURFQkFORF9QUk9UT0NPTF9FUlJPUiA9IC0yLAorCVNJREVCQU5EX1JFTU9URV9FUlJPUiA9IC0xLAorCVNJREVCQU5EX0ZMVVNIID0gMCwKKwlTSURFQkFORF9QUklNQVJZID0gMQorfTsKIAotaW50IHJlY3Zfc2lkZWJhbmQoY29uc3QgY2hhciAqbWUsIGludCBpbl9zdHJlYW0sIGludCBvdXQpOworLyoKKyAqIEluc3BlY3RzIGEgbXVsdGlwbGV4ZWQgcGFja2V0IHJlYWQgZnJvbSB0aGUgcmVtb3RlLiBJZiB0aGlzIHBhY2tldCBpcyBhCisgKiBwcm9ncmVzcyBwYWNrZXQgYW5kIHRodXMgc2hvdWxkIG5vdCBiZSBwcm9jZXNzZWQgYnkgdGhlIGNhbGxlciwgcmV0dXJucyAwLgorICogT3RoZXJ3aXNlLCByZXR1cm5zIDEsIHJlbGVhc2VzIHNjcmF0Y2gsIGFuZCBzZXRzIHNpZGViYW5kX3R5cGUuCisgKgorICogSWYgdGhpcyBwYWNrZXQgaXMgU0lERUJBTkRfUFJPVE9DT0xfRVJST1IsIFNJREVCQU5EX1JFTU9URV9FUlJPUiwgb3IgYQorICogcHJvZ3Jlc3MgcGFja2V0LCBhbHNvIHByaW50cyBhIG1lc3NhZ2UgdG8gc3RkZXJyLgorICoKKyAqIHNjcmF0Y2ggbXVzdCBiZSBhIHN0cnVjdCBzdHJidWYgYWxsb2NhdGVkIGJ5IHRoZSBjYWxsZXIuIEl0IGlzIHVzZWQgdG8gc3RvcmUKKyAqIHByb2dyZXNzIG1lc3NhZ2VzIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBwYWNrZXRzLgorICovCitpbnQgZGVtdWx0aXBsZXhfc2lkZWJhbmQoY29uc3QgY2hhciAqbWUsIGNoYXIgKmJ1ZiwgaW50IGxlbiwKKwkJCSBpbnQgZGllX29uX2Vycm9yLAorCQkJIHN0cnVjdCBzdHJidWYgKnNjcmF0Y2gsCisJCQkgZW51bSBzaWRlYmFuZF90eXBlICpzaWRlYmFuZF90eXBlKTsKKwogdm9pZCBzZW5kX3NpZGViYW5kKGludCBmZCwgaW50IGJhbmQsIGNvbnN0IGNoYXIgKmRhdGEsIHNzaXplX3Qgc3osIGludCBwYWNrZXRfbWF4KTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9zaWdjaGFpbi5oIGIvc2lnY2hhaW4uaAppbmRleCAxMzhiMjBmLi44ZTZiYWRhIDEwMDY0NAotLS0gYS9zaWdjaGFpbi5oCisrKyBiL3NpZ2NoYWluLmgKQEAgLTEsMTIgKzEsNTcgQEAKICNpZm5kZWYgU0lHQ0hBSU5fSAogI2RlZmluZSBTSUdDSEFJTl9ICiAKKy8qKgorICogQ29kZSBvZnRlbiB3YW50cyB0byBzZXQgYSBzaWduYWwgaGFuZGxlciB0byBjbGVhbiB1cCB0ZW1wb3JhcnkgZmlsZXMgb3IKKyAqIG90aGVyIHdvcmstaW4tcHJvZ3Jlc3Mgd2hlbiB3ZSBkaWUgdW5leHBlY3RlZGx5LiBGb3IgbXVsdGlwbGUgcGllY2VzIG9mCisgKiBjb2RlIHRvIGRvIHRoaXMgd2l0aG91dCBjb25mbGljdGluZywgZWFjaCBwaWVjZSBvZiBjb2RlIG11c3QgcmVtZW1iZXIKKyAqIHRoZSBvbGQgdmFsdWUgb2YgdGhlIGhhbmRsZXIgYW5kIHJlc3RvcmUgaXQgZWl0aGVyIHdoZW46CisgKgorICogICAxLiBUaGUgd29yay1pbi1wcm9ncmVzcyBpcyBmaW5pc2hlZCwgYW5kIHRoZSBoYW5kbGVyIGlzIG5vIGxvbmdlcgorICogICAgICBuZWNlc3NhcnkuIFRoZSBoYW5kbGVyIHNob3VsZCByZXZlcnQgdG8gdGhlIG9yaWdpbmFsIGJlaGF2aW9yCisgKiAgICAgIChlaXRoZXIgYW5vdGhlciBoYW5kbGVyLCBTSUdfREZMLCBvciBTSUdfSUdOKS4KKyAqCisgKiAgIDIuIFRoZSBzaWduYWwgaXMgcmVjZWl2ZWQuIFdlIHNob3VsZCB0aGVuIGRvIG91ciBjbGVhbnVwLCB0aGVuIGNoYWluCisgKiAgICAgIHRvIHRoZSBuZXh0IGhhbmRsZXIgKG9yIGRpZSBpZiBpdCBpcyBTSUdfREZMKS4KKyAqCisgKiBTaWdjaGFpbiBpcyBhIHRpbnkgbGlicmFyeSBmb3Iga2VlcGluZyBhIHN0YWNrIG9mIGhhbmRsZXJzLiBZb3VyIGhhbmRsZXIKKyAqIGFuZCBpbnN0YWxsYXRpb24gY29kZSBzaG91bGQgbG9vayBzb21ldGhpbmcgbGlrZToKKyAqCisgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqICAgdm9pZCBjbGVhbl9mb29fb25fc2lnbmFsKGludCBzaWcpCisgKiAgIHsKKyAqIAkgIGNsZWFuX2ZvbygpOworICogCSAgc2lnY2hhaW5fcG9wKHNpZyk7CisgKiAJICByYWlzZShzaWcpOworICogICB9CisgKgorICogICB2b2lkIG90aGVyX2Z1bmMoKQorICogICB7CisgKiAJICBzaWdjaGFpbl9wdXNoX2NvbW1vbihjbGVhbl9mb29fb25fc2lnbmFsKTsKKyAqIAkgIG1lc3NfdXBfZm9vKCk7CisgKiAJICBjbGVhbl9mb28oKTsKKyAqICAgfQorICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKgorICovCisKKy8qKgorICogSGFuZGxlcnMgYXJlIGdpdmVuIHRoZSB0eXBlZGVmIG9mIHNpZ2NoYWluX2Z1bi4gVGhpcyBpcyB0aGUgc2FtZSB0eXBlCisgKiB0aGF0IGlzIGdpdmVuIHRvIHNpZ25hbCgpIG9yIHNpZ2FjdGlvbigpLiBJdCBpcyBwZXJmZWN0bHkgcmVhc29uYWJsZSB0bworICogcHVzaCBTSUdfREZMIG9yIFNJR19JR04gb250byB0aGUgc3RhY2suCisgKi8KIHR5cGVkZWYgdm9pZCAoKnNpZ2NoYWluX2Z1bikoaW50KTsKIAorLyogWW91IGNhbiBzaWdjaGFpbl9wdXNoIGFuZCBzaWdjaGFpbl9wb3AgaW5kaXZpZHVhbCBzaWduYWxzLiAqLwogaW50IHNpZ2NoYWluX3B1c2goaW50IHNpZywgc2lnY2hhaW5fZnVuIGYpOwogaW50IHNpZ2NoYWluX3BvcChpbnQgc2lnKTsKIAorLyoqCisgKiBwdXNoIHRoZSBoYW5kbGVyIG9udG8gdGhlIHN0YWNrIGZvciB0aGUgY29tbW9uIHNpZ25hbHM6CisgKiBTSUdJTlQsIFNJR0hVUCwgU0lHVEVSTSwgU0lHUVVJVCBhbmQgU0lHUElQRS4KKyAqLwogdm9pZCBzaWdjaGFpbl9wdXNoX2NvbW1vbihzaWdjaGFpbl9mdW4gZik7CisKIHZvaWQgc2lnY2hhaW5fcG9wX2NvbW1vbih2b2lkKTsKIAogI2VuZGlmIC8qIFNJR0NIQUlOX0ggKi8KZGlmZiAtLWdpdCBhL3NwbGl0LWluZGV4LmMgYi9zcGxpdC1pbmRleC5jCmluZGV4IDU4MjA0MTIuLmU2MTU0ZTQgMTAwNjQ0Ci0tLSBhL3NwbGl0LWluZGV4LmMKKysrIGIvc3BsaXQtaW5kZXguYwpAQCAtMTYyLDcgKzE2Miw3IEBACiAJZXdhaF9lYWNoX2JpdChzaS0+cmVwbGFjZV9iaXRtYXAsIHJlcGxhY2VfZW50cnksIGlzdGF0ZSk7CiAJZXdhaF9lYWNoX2JpdChzaS0+ZGVsZXRlX2JpdG1hcCwgbWFya19lbnRyeV9mb3JfZGVsZXRlLCBpc3RhdGUpOwogCWlmIChzaS0+bnJfZGVsZXRpb25zKQotCQlyZW1vdmVfbWFya2VkX2NhY2hlX2VudHJpZXMoaXN0YXRlKTsKKwkJcmVtb3ZlX21hcmtlZF9jYWNoZV9lbnRyaWVzKGlzdGF0ZSwgMCk7CiAKIAlmb3IgKGkgPSBzaS0+bnJfcmVwbGFjZW1lbnRzOyBpIDwgc2ktPnNhdmVkX2NhY2hlX25yOyBpKyspIHsKIAkJaWYgKCFjZV9uYW1lbGVuKHNpLT5zYXZlZF9jYWNoZVtpXSkpCkBAIC00NDAsMjQgKzQ0MCwyNiBAQAogdm9pZCByZW1vdmVfc3BsaXRfaW5kZXgoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpCiB7CiAJaWYgKGlzdGF0ZS0+c3BsaXRfaW5kZXgpIHsKLQkJLyoKLQkJICogV2hlbiByZW1vdmluZyB0aGUgc3BsaXQgaW5kZXgsIHdlIG5lZWQgdG8gbW92ZQotCQkgKiBvd25lcnNoaXAgb2YgdGhlIG1lbV9wb29sIGFzc29jaWF0ZWQgd2l0aCB0aGUKLQkJICogYmFzZSBpbmRleCB0byB0aGUgbWFpbiBpbmRleC4gVGhlcmUgbWF5IGJlIGNhY2hlIGVudHJpZXMKLQkJICogYWxsb2NhdGVkIGZyb20gdGhlIGJhc2UncyBtZW1vcnkgcG9vbCB0aGF0IGFyZSBzaGFyZWQgd2l0aAotCQkgKiB0aGVfaW5kZXguY2FjaGVbXS4KLQkJICovCi0JCW1lbV9wb29sX2NvbWJpbmUoaXN0YXRlLT5jZV9tZW1fcG9vbCwgaXN0YXRlLT5zcGxpdF9pbmRleC0+YmFzZS0+Y2VfbWVtX3Bvb2wpOworCQlpZiAoaXN0YXRlLT5zcGxpdF9pbmRleC0+YmFzZSkgeworCQkJLyoKKwkJCSAqIFdoZW4gcmVtb3ZpbmcgdGhlIHNwbGl0IGluZGV4LCB3ZSBuZWVkIHRvIG1vdmUKKwkJCSAqIG93bmVyc2hpcCBvZiB0aGUgbWVtX3Bvb2wgYXNzb2NpYXRlZCB3aXRoIHRoZQorCQkJICogYmFzZSBpbmRleCB0byB0aGUgbWFpbiBpbmRleC4gVGhlcmUgbWF5IGJlIGNhY2hlIGVudHJpZXMKKwkJCSAqIGFsbG9jYXRlZCBmcm9tIHRoZSBiYXNlJ3MgbWVtb3J5IHBvb2wgdGhhdCBhcmUgc2hhcmVkIHdpdGgKKwkJCSAqIHRoZV9pbmRleC5jYWNoZVtdLgorCQkJICovCisJCQltZW1fcG9vbF9jb21iaW5lKGlzdGF0ZS0+Y2VfbWVtX3Bvb2wsCisJCQkJCSBpc3RhdGUtPnNwbGl0X2luZGV4LT5iYXNlLT5jZV9tZW1fcG9vbCk7CiAKLQkJLyoKLQkJICogVGhlIHNwbGl0IGluZGV4IG5vIGxvbmdlciBvd25zIHRoZSBtZW1fcG9vbCBiYWNraW5nCi0JCSAqIGl0cyBjYWNoZSBhcnJheS4gQXMgd2UgYXJlIGRpc2NhcmRpbmcgdGhpcyBpbmRleCwKLQkJICogbWFyayB0aGUgaW5kZXggYXMgaGF2aW5nIG5vIGNhY2hlIGVudHJpZXMsIHNvIGl0Ci0JCSAqIHdpbGwgbm90IGF0dGVtcHQgdG8gY2xlYW4gdXAgdGhlIGNhY2hlIGVudHJpZXMgb3IKLQkJICogdmFsaWRhdGUgdGhlbS4KLQkJICovCi0JCWlmIChpc3RhdGUtPnNwbGl0X2luZGV4LT5iYXNlKQorCQkJLyoKKwkJCSAqIFRoZSBzcGxpdCBpbmRleCBubyBsb25nZXIgb3ducyB0aGUgbWVtX3Bvb2wgYmFja2luZworCQkJICogaXRzIGNhY2hlIGFycmF5LiBBcyB3ZSBhcmUgZGlzY2FyZGluZyB0aGlzIGluZGV4LAorCQkJICogbWFyayB0aGUgaW5kZXggYXMgaGF2aW5nIG5vIGNhY2hlIGVudHJpZXMsIHNvIGl0CisJCQkgKiB3aWxsIG5vdCBhdHRlbXB0IHRvIGNsZWFuIHVwIHRoZSBjYWNoZSBlbnRyaWVzIG9yCisJCQkgKiB2YWxpZGF0ZSB0aGVtLgorCQkJICovCiAJCQlpc3RhdGUtPnNwbGl0X2luZGV4LT5iYXNlLT5jYWNoZV9uciA9IDA7CisJCX0KIAogCQkvKgogCQkgKiBXZSBjYW4gZGlzY2FyZCB0aGUgc3BsaXQgaW5kZXggYmVjYXVzZSBpdHMKZGlmZiAtLWdpdCBhL2NvbXBhdC9xc29ydC5jIGIvc3RhYmxlLXFzb3J0LmMKc2ltaWxhcml0eSBpbmRleCA4OCUKcmVuYW1lIGZyb20gY29tcGF0L3Fzb3J0LmMKcmVuYW1lIHRvIHN0YWJsZS1xc29ydC5jCmluZGV4IDdkMDcxYWYuLjZjYmFmMzkgMTAwNjQ0Ci0tLSBhL2NvbXBhdC9xc29ydC5jCisrKyBiL3N0YWJsZS1xc29ydC5jCkBAIC0xLDQgKzEsNCBAQAotI2luY2x1ZGUgIi4uL2dpdC1jb21wYXQtdXRpbC5oIgorI2luY2x1ZGUgImdpdC1jb21wYXQtdXRpbC5oIgogCiAvKgogICogQSBtZXJnZSBzb3J0IGltcGxlbWVudGF0aW9uLCBzaW1wbGlmaWVkIGZyb20gdGhlIHFzb3J0IGltcGxlbWVudGF0aW9uCkBAIC00NCw4ICs0NCw4IEBACiAJbWVtY3B5KGIsIHQsIChuIC0gbjIpICogcyk7CiB9CiAKLXZvaWQgZ2l0X3Fzb3J0KHZvaWQgKmIsIHNpemVfdCBuLCBzaXplX3QgcywKLQkgICAgICAgaW50ICgqY21wKShjb25zdCB2b2lkICosIGNvbnN0IHZvaWQgKikpCit2b2lkIGdpdF9zdGFibGVfcXNvcnQodm9pZCAqYiwgc2l6ZV90IG4sIHNpemVfdCBzLAorCQkgICAgICBpbnQgKCpjbXApKGNvbnN0IHZvaWQgKiwgY29uc3Qgdm9pZCAqKSkKIHsKIAljb25zdCBzaXplX3Qgc2l6ZSA9IHN0X211bHQobiwgcyk7CiAJY2hhciBidWZbMTAyNF07CmRpZmYgLS1naXQgYS9zdHJidWYuYyBiL3N0cmJ1Zi5jCmluZGV4IGY2YTZjZjcuLmJiMDA2NWMgMTAwNjQ0Ci0tLSBhL3N0cmJ1Zi5jCisrKyBiL3N0cmJ1Zi5jCkBAIC0yNDksNiArMjQ5LDQyIEBACiAJc3RyYnVmX3NwbGljZShzYiwgcG9zLCAwLCBkYXRhLCBsZW4pOwogfQogCit2b2lkIHN0cmJ1Zl92aW5zZXJ0ZihzdHJ1Y3Qgc3RyYnVmICpzYiwgc2l6ZV90IHBvcywgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFwKQoreworCWludCBsZW4sIGxlbjI7CisJY2hhciBzYXZlOworCXZhX2xpc3QgY3A7CisKKwlpZiAocG9zID4gc2ItPmxlbikKKwkJZGllKCJgcG9zJyBpcyB0b28gZmFyIGFmdGVyIHRoZSBlbmQgb2YgdGhlIGJ1ZmZlciIpOworCXZhX2NvcHkoY3AsIGFwKTsKKwlsZW4gPSB2c25wcmludGYoc2ItPmJ1ZiArIHNiLT5sZW4sIDAsIGZtdCwgY3ApOworCXZhX2VuZChjcCk7CisJaWYgKGxlbiA8IDApCisJCUJVRygieW91ciB2c25wcmludGYgaXMgYnJva2VuIChyZXR1cm5lZCAlZCkiLCBsZW4pOworCWlmICghbGVuKQorCQlyZXR1cm47IC8qIG5vdGhpbmcgdG8gZG8gKi8KKwlpZiAodW5zaWduZWRfYWRkX292ZXJmbG93cyhzYi0+bGVuLCBsZW4pKQorCQlkaWUoInlvdSB3YW50IHRvIHVzZSB3YXkgdG9vIG11Y2ggbWVtb3J5Iik7CisJc3RyYnVmX2dyb3coc2IsIGxlbik7CisJbWVtbW92ZShzYi0+YnVmICsgcG9zICsgbGVuLCBzYi0+YnVmICsgcG9zLCBzYi0+bGVuIC0gcG9zKTsKKwkvKiB2c25wcmludGYoKSB3aWxsIGFwcGVuZCBhIE5VTCwgb3ZlcndyaXRpbmcgb25lIG9mIG91ciBjaGFyYWN0ZXJzICovCisJc2F2ZSA9IHNiLT5idWZbcG9zICsgbGVuXTsKKwlsZW4yID0gdnNucHJpbnRmKHNiLT5idWYgKyBwb3MsIGxlbiArIDEsIGZtdCwgYXApOworCXNiLT5idWZbcG9zICsgbGVuXSA9IHNhdmU7CisJaWYgKGxlbjIgIT0gbGVuKQorCQlCVUcoInlvdXIgdnNucHJpbnRmIGlzIGJyb2tlbiAocmV0dXJucyBpbmNvbnNpc3RlbnQgbGVuZ3RocykiKTsKKwlzdHJidWZfc2V0bGVuKHNiLCBzYi0+bGVuICsgbGVuKTsKK30KKwordm9pZCBzdHJidWZfaW5zZXJ0ZihzdHJ1Y3Qgc3RyYnVmICpzYiwgc2l6ZV90IHBvcywgY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcDsKKwl2YV9zdGFydChhcCwgZm10KTsKKwlzdHJidWZfdmluc2VydGYoc2IsIHBvcywgZm10LCBhcCk7CisJdmFfZW5kKGFwKTsKK30KKwogdm9pZCBzdHJidWZfcmVtb3ZlKHN0cnVjdCBzdHJidWYgKnNiLCBzaXplX3QgcG9zLCBzaXplX3QgbGVuKQogewogCXN0cmJ1Zl9zcGxpY2Uoc2IsIHBvcywgbGVuLCAiIiwgMCk7CkBAIC0yNjgsNiArMzA0LDIxIEBACiAJc3RyYnVmX3NldGxlbihzYiwgc2ItPmxlbiArIHNiMi0+bGVuKTsKIH0KIAorY29uc3QgY2hhciAqc3RyYnVmX2pvaW5fYXJndihzdHJ1Y3Qgc3RyYnVmICpidWYsCisJCQkgICAgIGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndiwgY2hhciBkZWxpbSkKK3sKKwlpZiAoIWFyZ2MpCisJCXJldHVybiBidWYtPmJ1ZjsKKworCXN0cmJ1Zl9hZGRzdHIoYnVmLCAqYXJndik7CisJd2hpbGUgKC0tYXJnYykgeworCQlzdHJidWZfYWRkY2goYnVmLCBkZWxpbSk7CisJCXN0cmJ1Zl9hZGRzdHIoYnVmLCAqKCsrYXJndikpOworCX0KKworCXJldHVybiBidWYtPmJ1ZjsKK30KKwogdm9pZCBzdHJidWZfYWRkY2hhcnMoc3RydWN0IHN0cmJ1ZiAqc2IsIGludCBjLCBzaXplX3QgbikKIHsKIAlzdHJidWZfZ3JvdyhzYiwgbik7CkBAIC0zODAsNiArNDMxLDI3IEBACiAJfQogfQogCitzaXplX3Qgc3RyYnVmX2V4cGFuZF9saXRlcmFsX2NiKHN0cnVjdCBzdHJidWYgKnNiLAorCQkJCWNvbnN0IGNoYXIgKnBsYWNlaG9sZGVyLAorCQkJCXZvaWQgKmNvbnRleHQpCit7CisJaW50IGNoOworCisJc3dpdGNoIChwbGFjZWhvbGRlclswXSkgeworCWNhc2UgJ24nOgkJLyogbmV3bGluZSAqLworCQlzdHJidWZfYWRkY2goc2IsICdcbicpOworCQlyZXR1cm4gMTsKKwljYXNlICd4JzoKKwkJLyogJXgwMCA9PSBOVUwsICV4MGEgPT0gTEYsIGV0Yy4gKi8KKwkJY2ggPSBoZXgyY2hyKHBsYWNlaG9sZGVyICsgMSk7CisJCWlmIChjaCA8IDApCisJCQlyZXR1cm4gMDsKKwkJc3RyYnVmX2FkZGNoKHNiLCBjaCk7CisJCXJldHVybiAzOworCX0KKwlyZXR1cm4gMDsKK30KKwogc2l6ZV90IHN0cmJ1Zl9leHBhbmRfZGljdF9jYihzdHJ1Y3Qgc3RyYnVmICpzYiwgY29uc3QgY2hhciAqcGxhY2Vob2xkZXIsCiAJCXZvaWQgKmNvbnRleHQpCiB7CkBAIC00MDcsNiArNDc5LDIxIEBACiAJfQogfQogCisjZGVmaW5lIFVSTF9VTlNBRkVfQ0hBUlMgIiA8PlwiJXt9fFxcXmA6Lz8jW11AISQmJygpKissOz0iCisKK3ZvaWQgc3RyYnVmX2FkZF9wZXJjZW50ZW5jb2RlKHN0cnVjdCBzdHJidWYgKmRzdCwgY29uc3QgY2hhciAqc3JjKQoreworCXNpemVfdCBpLCBsZW4gPSBzdHJsZW4oc3JjKTsKKworCWZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykgeworCQl1bnNpZ25lZCBjaGFyIGNoID0gc3JjW2ldOworCQlpZiAoY2ggPD0gMHgxRiB8fCBjaCA+PSAweDdGIHx8IHN0cmNocihVUkxfVU5TQUZFX0NIQVJTLCBjaCkpCisJCQlzdHJidWZfYWRkZihkc3QsICIlJSUwMlgiLCAodW5zaWduZWQgY2hhciljaCk7CisJCWVsc2UKKwkJCXN0cmJ1Zl9hZGRjaChkc3QsIGNoKTsKKwl9Cit9CisKIHNpemVfdCBzdHJidWZfZnJlYWQoc3RydWN0IHN0cmJ1ZiAqc2IsIHNpemVfdCBzaXplLCBGSUxFICpmKQogewogCXNpemVfdCByZXM7CkBAIC03MDIsOCArNzg5LDEwIEBACiAJfQogfQogCi1zdGF0aWMgaW50IGlzX3JmYzM5ODZfcmVzZXJ2ZWQoY2hhciBjaCkKK2ludCBpc19yZmMzOTg2X3Jlc2VydmVkX29yX3VucmVzZXJ2ZWQoY2hhciBjaCkKIHsKKwlpZiAoaXNfcmZjMzk4Nl91bnJlc2VydmVkKGNoKSkKKwkJcmV0dXJuIDE7CiAJc3dpdGNoIChjaCkgewogCQljYXNlICchJzogY2FzZSAnKic6IGNhc2UgJ1wnJzogY2FzZSAnKCc6IGNhc2UgJyknOiBjYXNlICc7JzoKIAkJY2FzZSAnOic6IGNhc2UgJ0AnOiBjYXNlICcmJzogY2FzZSAnPSc6IGNhc2UgJysnOiBjYXNlICckJzoKQEAgLTcxMywyMCArODAyLDE5IEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgaXNfcmZjMzk4Nl91bnJlc2VydmVkKGNoYXIgY2gpCitpbnQgaXNfcmZjMzk4Nl91bnJlc2VydmVkKGNoYXIgY2gpCiB7CiAJcmV0dXJuIGlzYWxudW0oY2gpIHx8CiAJCWNoID09ICctJyB8fCBjaCA9PSAnXycgfHwgY2ggPT0gJy4nIHx8IGNoID09ICd+JzsKIH0KIAogc3RhdGljIHZvaWQgc3RyYnVmX2FkZF91cmxlbmNvZGUoc3RydWN0IHN0cmJ1ZiAqc2IsIGNvbnN0IGNoYXIgKnMsIHNpemVfdCBsZW4sCi0JCQkJIGludCByZXNlcnZlZCkKKwkJCQkgY2hhcl9wcmVkaWNhdGUgYWxsb3dfdW5lbmNvZGVkX2ZuKQogewogCXN0cmJ1Zl9ncm93KHNiLCBsZW4pOwogCXdoaWxlIChsZW4tLSkgewogCQljaGFyIGNoID0gKnMrKzsKLQkJaWYgKGlzX3JmYzM5ODZfdW5yZXNlcnZlZChjaCkgfHwKLQkJICAgICghcmVzZXJ2ZWQgJiYgaXNfcmZjMzk4Nl9yZXNlcnZlZChjaCkpKQorCQlpZiAoYWxsb3dfdW5lbmNvZGVkX2ZuKGNoKSkKIAkJCXN0cmJ1Zl9hZGRjaChzYiwgY2gpOwogCQllbHNlCiAJCQlzdHJidWZfYWRkZihzYiwgIiUlJTAyeCIsICh1bnNpZ25lZCBjaGFyKWNoKTsKQEAgLTczNCwzMCArODIyLDYyIEBACiB9CiAKIHZvaWQgc3RyYnVmX2FkZHN0cl91cmxlbmNvZGUoc3RydWN0IHN0cmJ1ZiAqc2IsIGNvbnN0IGNoYXIgKnMsCi0JCQkgICAgIGludCByZXNlcnZlZCkKKwkJCSAgICAgY2hhcl9wcmVkaWNhdGUgYWxsb3dfdW5lbmNvZGVkX2ZuKQogewotCXN0cmJ1Zl9hZGRfdXJsZW5jb2RlKHNiLCBzLCBzdHJsZW4ocyksIHJlc2VydmVkKTsKKwlzdHJidWZfYWRkX3VybGVuY29kZShzYiwgcywgc3RybGVuKHMpLCBhbGxvd191bmVuY29kZWRfZm4pOwogfQogCi12b2lkIHN0cmJ1Zl9odW1hbmlzZV9ieXRlcyhzdHJ1Y3Qgc3RyYnVmICpidWYsIG9mZl90IGJ5dGVzKQorc3RhdGljIHZvaWQgc3RyYnVmX2h1bWFuaXNlKHN0cnVjdCBzdHJidWYgKmJ1Ziwgb2ZmX3QgYnl0ZXMsCisJCQkJIGludCBodW1hbmlzZV9yYXRlKQogewogCWlmIChieXRlcyA+IDEgPDwgMzApIHsKLQkJc3RyYnVmX2FkZGYoYnVmLCAiJXUuJTIuMnUgR2lCIiwKKwkJc3RyYnVmX2FkZGYoYnVmLAorCQkJCWh1bWFuaXNlX3JhdGUgPT0gMCA/CisJCQkJCS8qIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBnaWJpYnl0ZSAqLworCQkJCQlfKCIldS4lMi4ydSBHaUIiKSA6CisJCQkJCS8qIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBnaWJpYnl0ZS9zZWNvbmQgKi8KKwkJCQkJXygiJXUuJTIuMnUgR2lCL3MiKSwKIAkJCSAgICAodW5zaWduZWQpKGJ5dGVzID4+IDMwKSwKIAkJCSAgICAodW5zaWduZWQpKGJ5dGVzICYgKCgxIDw8IDMwKSAtIDEpKSAvIDEwNzM3NDE5KTsKIAl9IGVsc2UgaWYgKGJ5dGVzID4gMSA8PCAyMCkgewogCQl1bnNpZ25lZCB4ID0gYnl0ZXMgKyA1MjQzOyAgLyogZm9yIHJvdW5kaW5nICovCi0JCXN0cmJ1Zl9hZGRmKGJ1ZiwgIiV1LiUyLjJ1IE1pQiIsCisJCXN0cmJ1Zl9hZGRmKGJ1ZiwKKwkJCQlodW1hbmlzZV9yYXRlID09IDAgPworCQkJCQkvKiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggbWViaWJ5dGUgKi8KKwkJCQkJXygiJXUuJTIuMnUgTWlCIikgOgorCQkJCQkvKiBUUkFOU0xBVE9SUzogSUVDIDgwMDAwLTEzOjIwMDggbWViaWJ5dGUvc2Vjb25kICovCisJCQkJCV8oIiV1LiUyLjJ1IE1pQi9zIiksCiAJCQkgICAgeCA+PiAyMCwgKCh4ICYgKCgxIDw8IDIwKSAtIDEpKSAqIDEwMCkgPj4gMjApOwogCX0gZWxzZSBpZiAoYnl0ZXMgPiAxIDw8IDEwKSB7CiAJCXVuc2lnbmVkIHggPSBieXRlcyArIDU7ICAvKiBmb3Igcm91bmRpbmcgKi8KLQkJc3RyYnVmX2FkZGYoYnVmLCAiJXUuJTIuMnUgS2lCIiwKKwkJc3RyYnVmX2FkZGYoYnVmLAorCQkJCWh1bWFuaXNlX3JhdGUgPT0gMCA/CisJCQkJCS8qIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBraWJpYnl0ZSAqLworCQkJCQlfKCIldS4lMi4ydSBLaUIiKSA6CisJCQkJCS8qIFRSQU5TTEFUT1JTOiBJRUMgODAwMDAtMTM6MjAwOCBraWJpYnl0ZS9zZWNvbmQgKi8KKwkJCQkJXygiJXUuJTIuMnUgS2lCL3MiKSwKIAkJCSAgICB4ID4+IDEwLCAoKHggJiAoKDEgPDwgMTApIC0gMSkpICogMTAwKSA+PiAxMCk7CiAJfSBlbHNlIHsKLQkJc3RyYnVmX2FkZGYoYnVmLCAiJXUgYnl0ZXMiLCAodW5zaWduZWQpYnl0ZXMpOworCQlzdHJidWZfYWRkZihidWYsCisJCQkJaHVtYW5pc2VfcmF0ZSA9PSAwID8KKwkJCQkJLyogVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGJ5dGUgKi8KKwkJCQkJUV8oIiV1IGJ5dGUiLCAiJXUgYnl0ZXMiLCAodW5zaWduZWQpYnl0ZXMpIDoKKwkJCQkJLyogVFJBTlNMQVRPUlM6IElFQyA4MDAwMC0xMzoyMDA4IGJ5dGUvc2Vjb25kICovCisJCQkJCVFfKCIldSBieXRlL3MiLCAiJXUgYnl0ZXMvcyIsICh1bnNpZ25lZClieXRlcyksCisJCQkJKHVuc2lnbmVkKWJ5dGVzKTsKIAl9CiB9CiAKK3ZvaWQgc3RyYnVmX2h1bWFuaXNlX2J5dGVzKHN0cnVjdCBzdHJidWYgKmJ1Ziwgb2ZmX3QgYnl0ZXMpCit7CisJc3RyYnVmX2h1bWFuaXNlKGJ1ZiwgYnl0ZXMsIDApOworfQorCit2b2lkIHN0cmJ1Zl9odW1hbmlzZV9yYXRlKHN0cnVjdCBzdHJidWYgKmJ1Ziwgb2ZmX3QgYnl0ZXMpCit7CisJc3RyYnVmX2h1bWFuaXNlKGJ1ZiwgYnl0ZXMsIDEpOworfQorCiB2b2lkIHN0cmJ1Zl9hZGRfYWJzb2x1dGVfcGF0aChzdHJ1Y3Qgc3RyYnVmICpzYiwgY29uc3QgY2hhciAqcGF0aCkKIHsKIAlpZiAoISpwYXRoKQpAQCAtMTAyMCwzICsxMTQwLDMxIEBACiAJc3RyYnVmX3JlbGVhc2UoJmRzdCk7CiAJcmV0dXJuIDA7CiB9CisKK2ludCBzdHJidWZfZWRpdF9pbnRlcmFjdGl2ZWx5KHN0cnVjdCBzdHJidWYgKmJ1ZmZlciwgY29uc3QgY2hhciAqcGF0aCwKKwkJCSAgICAgIGNvbnN0IGNoYXIgKmNvbnN0ICplbnYpCit7CisJY2hhciAqcGF0aDIgPSBOVUxMOworCWludCBmZCwgcmVzID0gMDsKKworCWlmICghaXNfYWJzb2x1dGVfcGF0aChwYXRoKSkKKwkJcGF0aCA9IHBhdGgyID0geHN0cmR1cChnaXRfcGF0aCgiJXMiLCBwYXRoKSk7CisKKwlmZCA9IG9wZW4ocGF0aCwgT19XUk9OTFkgfCBPX0NSRUFUIHwgT19UUlVOQywgMDY2Nik7CisJaWYgKGZkIDwgMCkKKwkJcmVzID0gZXJyb3JfZXJybm8oXygiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZyIpLCBwYXRoKTsKKwllbHNlIGlmICh3cml0ZV9pbl9mdWxsKGZkLCBidWZmZXItPmJ1ZiwgYnVmZmVyLT5sZW4pIDwgMCkgeworCQlyZXMgPSBlcnJvcl9lcnJubyhfKCJjb3VsZCBub3Qgd3JpdGUgdG8gJyVzJyIpLCBwYXRoKTsKKwkJY2xvc2UoZmQpOworCX0gZWxzZSBpZiAoY2xvc2UoZmQpIDwgMCkKKwkJcmVzID0gZXJyb3JfZXJybm8oXygiY291bGQgbm90IGNsb3NlICclcyciKSwgcGF0aCk7CisJZWxzZSB7CisJCXN0cmJ1Zl9yZXNldChidWZmZXIpOworCQlpZiAobGF1bmNoX2VkaXRvcihwYXRoLCBidWZmZXIsIGVudikgPCAwKQorCQkJcmVzID0gZXJyb3JfZXJybm8oXygiY291bGQgbm90IGVkaXQgJyVzJyIpLCBwYXRoKTsKKwkJdW5saW5rKHBhdGgpOworCX0KKworCWZyZWUocGF0aDIpOworCXJldHVybiByZXM7Cit9CmRpZmYgLS1naXQgYS9zdHJidWYuaCBiL3N0cmJ1Zi5oCmluZGV4IGZjNDA4NzMuLmNlOGU0OWMgMTAwNjQ0Ci0tLSBhL3N0cmJ1Zi5oCisrKyBiL3N0cmJ1Zi5oCkBAIC0yNDUsNiArMjQ1LDI3IEBACiB2b2lkIHN0cmJ1Zl9pbnNlcnQoc3RydWN0IHN0cmJ1ZiAqc2IsIHNpemVfdCBwb3MsIGNvbnN0IHZvaWQgKiwgc2l6ZV90KTsKIAogLyoqCisgKiBJbnNlcnQgYSBOVUwtdGVybWluYXRlZCBzdHJpbmcgdG8gdGhlIGdpdmVuIHBvc2l0aW9uIG9mIHRoZSBidWZmZXIuCisgKiBUaGUgcmVtYWluaW5nIGNvbnRlbnRzIHdpbGwgYmUgc2hpZnRlZCwgbm90IG92ZXJ3cml0dGVuLiAgSXQncyBhbgorICogaW5saW5lIGZ1bmN0aW9uIHRvIGFsbG93IHRoZSBjb21waWxlciB0byByZXNvbHZlIHN0cmxlbigpIGNhbGxzIG9uCisgKiBjb25zdGFudHMgYXQgY29tcGlsZSB0aW1lLgorICovCitzdGF0aWMgaW5saW5lIHZvaWQgc3RyYnVmX2luc2VydHN0cihzdHJ1Y3Qgc3RyYnVmICpzYiwgc2l6ZV90IHBvcywKKwkJCQkgICAgY29uc3QgY2hhciAqcykKK3sKKwlzdHJidWZfaW5zZXJ0KHNiLCBwb3MsIHMsIHN0cmxlbihzKSk7Cit9CisKKy8qKgorICogSW5zZXJ0IGRhdGEgdG8gdGhlIGdpdmVuIHBvc2l0aW9uIG9mIHRoZSBidWZmZXIgZ2l2aW5nIGEgcHJpbnRmIGZvcm1hdAorICogc3RyaW5nLiBUaGUgY29udGVudHMgd2lsbCBiZSBzaGlmdGVkLCBub3Qgb3ZlcndyaXR0ZW4uCisgKi8KK3ZvaWQgc3RyYnVmX3ZpbnNlcnRmKHN0cnVjdCBzdHJidWYgKnNiLCBzaXplX3QgcG9zLCBjb25zdCBjaGFyICpmbXQsCisJCSAgICAgdmFfbGlzdCBhcCk7CisKK3ZvaWQgc3RyYnVmX2luc2VydGYoc3RydWN0IHN0cmJ1ZiAqc2IsIHNpemVfdCBwb3MsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKTsKKworLyoqCiAgKiBSZW1vdmUgZ2l2ZW4gYW1vdW50IG9mIGRhdGEgZnJvbSBhIGdpdmVuIHBvc2l0aW9uIG9mIHRoZSBidWZmZXIuCiAgKi8KIHZvaWQgc3RyYnVmX3JlbW92ZShzdHJ1Y3Qgc3RyYnVmICpzYiwgc2l6ZV90IHBvcywgc2l6ZV90IGxlbik7CkBAIC0yODksNiArMzEwLDEzIEBACiB2b2lkIHN0cmJ1Zl9hZGRidWYoc3RydWN0IHN0cmJ1ZiAqc2IsIGNvbnN0IHN0cnVjdCBzdHJidWYgKnNiMik7CiAKIC8qKgorICogSm9pbiB0aGUgYXJndW1lbnRzIGludG8gYSBidWZmZXIuIGBkZWxpbWAgaXMgcHV0IGJldHdlZW4gZXZlcnkKKyAqIHR3byBhcmd1bWVudHMuCisgKi8KK2NvbnN0IGNoYXIgKnN0cmJ1Zl9qb2luX2FyZ3Yoc3RydWN0IHN0cmJ1ZiAqYnVmLCBpbnQgYXJnYywKKwkJCSAgICAgY29uc3QgY2hhciAqKmFyZ3YsIGNoYXIgZGVsaW0pOworCisvKioKICAqIFRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXhwYW5kIGEgZm9ybWF0IHN0cmluZyBjb250YWluaW5nCiAgKiBwbGFjZWhvbGRlcnMuIFRvIHRoYXQgZW5kLCBpdCBwYXJzZXMgdGhlIHN0cmluZyBhbmQgY2FsbHMgdGhlIHNwZWNpZmllZAogICogZnVuY3Rpb24gZm9yIGV2ZXJ5IHBlcmNlbnQgc2lnbiBmb3VuZC4KQEAgLTMyMSw2ICszNDksMTQgQEAKIAkJICAgdm9pZCAqY29udGV4dCk7CiAKIC8qKgorICogVXNlZCBhcyBjYWxsYmFjayBmb3IgYHN0cmJ1Zl9leHBhbmRgIHRvIG9ubHkgZXhwYW5kIGxpdGVyYWxzCisgKiAoaS5lLiAlbiBhbmQgJXhOTikuIFRoZSBjb250ZXh0IGFyZ3VtZW50IGlzIGlnbm9yZWQuCisgKi8KK3NpemVfdCBzdHJidWZfZXhwYW5kX2xpdGVyYWxfY2Ioc3RydWN0IHN0cmJ1ZiAqc2IsCisJCQkJY29uc3QgY2hhciAqcGxhY2Vob2xkZXIsCisJCQkJdm9pZCAqY29udGV4dCk7CisKKy8qKgogICogVXNlZCBhcyBjYWxsYmFjayBmb3IgYHN0cmJ1Zl9leHBhbmQoKWAsIGV4cGVjdHMgYW4gYXJyYXkgb2YKICAqIHN0cnVjdCBzdHJidWZfZXhwYW5kX2RpY3RfZW50cnkgYXMgY29udGV4dCwgaS5lLiBwYWlycyBvZgogICogcGxhY2Vob2xkZXIgYW5kIHJlcGxhY2VtZW50IHN0cmluZy4gIFRoZSBhcnJheSBuZWVkcyB0byBiZQpAQCAtMzQzLDEyICszNzksMjQgQEAKIHZvaWQgc3RyYnVmX2FkZGJ1Zl9wZXJjZW50cXVvdGUoc3RydWN0IHN0cmJ1ZiAqZHN0LCBjb25zdCBzdHJ1Y3Qgc3RyYnVmICpzcmMpOwogCiAvKioKKyAqIEFwcGVuZCB0aGUgY29udGVudHMgb2YgYSBzdHJpbmcgdG8gYSBzdHJidWYsIHBlcmNlbnQtZW5jb2RpbmcgYW55IGNoYXJhY3RlcnMKKyAqIHRoYXQgYXJlIG5lZWRlZCB0byBiZSBlbmNvZGVkIGZvciBhIFVSTC4KKyAqLwordm9pZCBzdHJidWZfYWRkX3BlcmNlbnRlbmNvZGUoc3RydWN0IHN0cmJ1ZiAqZHN0LCBjb25zdCBjaGFyICpzcmMpOworCisvKioKICAqIEFwcGVuZCB0aGUgZ2l2ZW4gYnl0ZSBzaXplIGFzIGEgaHVtYW4tcmVhZGFibGUgc3RyaW5nIChpLmUuIDEyLjIzIEtpQiwKICAqIDMuNTAgTWlCKS4KICAqLwogdm9pZCBzdHJidWZfaHVtYW5pc2VfYnl0ZXMoc3RydWN0IHN0cmJ1ZiAqYnVmLCBvZmZfdCBieXRlcyk7CiAKIC8qKgorICogQXBwZW5kIHRoZSBnaXZlbiBieXRlIHJhdGUgYXMgYSBodW1hbi1yZWFkYWJsZSBzdHJpbmcgKGkuZS4gMTIuMjMgS2lCL3MsCisgKiAzLjUwIE1pQi9zKS4KKyAqLwordm9pZCBzdHJidWZfaHVtYW5pc2VfcmF0ZShzdHJ1Y3Qgc3RyYnVmICpidWYsIG9mZl90IGJ5dGVzKTsKKworLyoqCiAgKiBBZGQgYSBmb3JtYXR0ZWQgc3RyaW5nIHRvIHRoZSBidWZmZXIuCiAgKi8KIF9fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLDIsMykpKQpAQCAtNTkxLDYgKzYzOSwxNyBAQAogaW50IGxhdW5jaF9zZXF1ZW5jZV9lZGl0b3IoY29uc3QgY2hhciAqcGF0aCwgc3RydWN0IHN0cmJ1ZiAqYnVmZmVyLAogCQkJICAgY29uc3QgY2hhciAqY29uc3QgKmVudik7CiAKKy8qCisgKiBJbiBjb250cmFzdCB0byBgbGF1bmNoX2VkaXRvcigpYCwgdGhpcyBmdW5jdGlvbiB3cml0ZXMgb3V0IHRoZSBjb250ZW50cworICogb2YgdGhlIHNwZWNpZmllZCBmaWxlIGZpcnN0LCB0aGVuIGNsZWFycyB0aGUgYGJ1ZmZlcmAsIHRoZW4gbGF1bmNoZXMKKyAqIHRoZSBlZGl0b3IgYW5kIHJlYWRzIGJhY2sgaW4gdGhlIGZpbGUgY29udGVudHMgaW50byB0aGUgYGJ1ZmZlcmAuCisgKiBGaW5hbGx5LCBpdCBkZWxldGVzIHRoZSB0ZW1wb3JhcnkgZmlsZS4KKyAqCisgKiBJZiBgcGF0aGAgaXMgcmVsYXRpdmUsIGl0IHJlZmVycyB0byBhIGZpbGUgaW4gdGhlIGAuZ2l0YCBkaXJlY3RvcnkuCisgKi8KK2ludCBzdHJidWZfZWRpdF9pbnRlcmFjdGl2ZWx5KHN0cnVjdCBzdHJidWYgKmJ1ZmZlciwgY29uc3QgY2hhciAqcGF0aCwKKwkJCSAgICAgIGNvbnN0IGNoYXIgKmNvbnN0ICplbnYpOworCiB2b2lkIHN0cmJ1Zl9hZGRfbGluZXMoc3RydWN0IHN0cmJ1ZiAqc2IsCiAJCSAgICAgIGNvbnN0IGNoYXIgKnByZWZpeCwKIAkJICAgICAgY29uc3QgY2hhciAqYnVmLApAQCAtNjQyLDggKzcwMSwxMyBAQAogICovCiBpbnQgc3RyYnVmX2NoZWNrX2JyYW5jaF9yZWYoc3RydWN0IHN0cmJ1ZiAqc2IsIGNvbnN0IGNoYXIgKm5hbWUpOwogCit0eXBlZGVmIGludCAoKmNoYXJfcHJlZGljYXRlKShjaGFyIGNoKTsKKworaW50IGlzX3JmYzM5ODZfdW5yZXNlcnZlZChjaGFyIGNoKTsKK2ludCBpc19yZmMzOTg2X3Jlc2VydmVkX29yX3VucmVzZXJ2ZWQoY2hhciBjaCk7CisKIHZvaWQgc3RyYnVmX2FkZHN0cl91cmxlbmNvZGUoc3RydWN0IHN0cmJ1ZiAqc2IsIGNvbnN0IGNoYXIgKm5hbWUsCi0JCQkgICAgIGludCByZXNlcnZlZCk7CisJCQkgICAgIGNoYXJfcHJlZGljYXRlIGFsbG93X3VuZW5jb2RlZF9mbik7CiAKIF9fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLDEsMikpKQogaW50IHByaW50Zl9sbihjb25zdCBjaGFyICpmbXQsIC4uLik7CmRpZmYgLS1naXQgYS9zdHJlYW1pbmcuYyBiL3N0cmVhbWluZy5jCmluZGV4IGFjN2M3YTIuLjgwMGYwN2EgMTAwNjQ0Ci0tLSBhL3N0cmVhbWluZy5jCisrKyBiL3N0cmVhbWluZy5jCkBAIC0xNiw2ICsxNiw3IEBACiB9OwogCiB0eXBlZGVmIGludCAoKm9wZW5faXN0cmVhbV9mbikoc3RydWN0IGdpdF9pc3RyZWFtICosCisJCQkgICAgICAgc3RydWN0IHJlcG9zaXRvcnkgKiwKIAkJCSAgICAgICBzdHJ1Y3Qgb2JqZWN0X2luZm8gKiwKIAkJCSAgICAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICosCiAJCQkgICAgICAgZW51bSBvYmplY3RfdHlwZSAqKTsKQEAgLTI5LDggKzMwLDggQEAKIAogI2RlZmluZSBvcGVuX21ldGhvZF9kZWNsKG5hbWUpIFwKIAlpbnQgb3Blbl9pc3RyZWFtXyAjI25hbWUgXAotCShzdHJ1Y3QgZ2l0X2lzdHJlYW0gKnN0LCBzdHJ1Y3Qgb2JqZWN0X2luZm8gKm9pLCBcCi0JIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwgXAorCShzdHJ1Y3QgZ2l0X2lzdHJlYW0gKnN0LCBzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgXAorCSBzdHJ1Y3Qgb2JqZWN0X2luZm8gKm9pLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIFwKIAkgZW51bSBvYmplY3RfdHlwZSAqdHlwZSkKIAogI2RlZmluZSBjbG9zZV9tZXRob2RfZGVjbChuYW1lKSBcCkBAIC0xMDgsNyArMTA5LDggQEAKIAlyZXR1cm4gc3QtPnZ0YmwtPnJlYWQoc3QsIGJ1Ziwgc3opOwogfQogCi1zdGF0aWMgZW51bSBpbnB1dF9zb3VyY2UgaXN0cmVhbV9zb3VyY2UoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorc3RhdGljIGVudW0gaW5wdXRfc291cmNlIGlzdHJlYW1fc291cmNlKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCiAJCQkJCWVudW0gb2JqZWN0X3R5cGUgKnR5cGUsCiAJCQkJCXN0cnVjdCBvYmplY3RfaW5mbyAqb2kpCiB7CkBAIC0xMTcsNyArMTE5LDcgQEAKIAogCW9pLT50eXBlcCA9IHR5cGU7CiAJb2ktPnNpemVwID0gJnNpemU7Ci0Jc3RhdHVzID0gb2lkX29iamVjdF9pbmZvX2V4dGVuZGVkKHRoZV9yZXBvc2l0b3J5LCBvaWQsIG9pLCAwKTsKKwlzdGF0dXMgPSBvaWRfb2JqZWN0X2luZm9fZXh0ZW5kZWQociwgb2lkLCBvaSwgMCk7CiAJaWYgKHN0YXR1cyA8IDApCiAJCXJldHVybiBzdHJlYW1fZXJyb3I7CiAKQEAgLTEzMywyMiArMTM1LDIzIEBACiAJfQogfQogCi1zdHJ1Y3QgZ2l0X2lzdHJlYW0gKm9wZW5faXN0cmVhbShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCitzdHJ1Y3QgZ2l0X2lzdHJlYW0gKm9wZW5faXN0cmVhbShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkLAogCQkJCSBlbnVtIG9iamVjdF90eXBlICp0eXBlLAogCQkJCSB1bnNpZ25lZCBsb25nICpzaXplLAogCQkJCSBzdHJ1Y3Qgc3RyZWFtX2ZpbHRlciAqZmlsdGVyKQogewogCXN0cnVjdCBnaXRfaXN0cmVhbSAqc3Q7CiAJc3RydWN0IG9iamVjdF9pbmZvIG9pID0gT0JKRUNUX0lORk9fSU5JVDsKLQljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpyZWFsID0gbG9va3VwX3JlcGxhY2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBvaWQpOwotCWVudW0gaW5wdXRfc291cmNlIHNyYyA9IGlzdHJlYW1fc291cmNlKHJlYWwsIHR5cGUsICZvaSk7CisJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqcmVhbCA9IGxvb2t1cF9yZXBsYWNlX29iamVjdChyLCBvaWQpOworCWVudW0gaW5wdXRfc291cmNlIHNyYyA9IGlzdHJlYW1fc291cmNlKHIsIHJlYWwsIHR5cGUsICZvaSk7CiAKIAlpZiAoc3JjIDwgMCkKIAkJcmV0dXJuIE5VTEw7CiAKIAlzdCA9IHhtYWxsb2Moc2l6ZW9mKCpzdCkpOwotCWlmIChvcGVuX2lzdHJlYW1fdGJsW3NyY10oc3QsICZvaSwgcmVhbCwgdHlwZSkpIHsKLQkJaWYgKG9wZW5faXN0cmVhbV9pbmNvcmUoc3QsICZvaSwgcmVhbCwgdHlwZSkpIHsKKwlpZiAob3Blbl9pc3RyZWFtX3RibFtzcmNdKHN0LCByLCAmb2ksIHJlYWwsIHR5cGUpKSB7CisJCWlmIChvcGVuX2lzdHJlYW1faW5jb3JlKHN0LCByLCAmb2ksIHJlYWwsIHR5cGUpKSB7CiAJCQlmcmVlKHN0KTsKIAkJCXJldHVybiBOVUxMOwogCQl9CkBAIC0zMzgsMTYgKzM0MSwxNSBAQAogCiBzdGF0aWMgb3Blbl9tZXRob2RfZGVjbChsb29zZSkKIHsKLQlzdC0+dS5sb29zZS5tYXBwZWQgPSBtYXBfc2hhMV9maWxlKHRoZV9yZXBvc2l0b3J5LAotCQkJCQkgICBvaWQtPmhhc2gsICZzdC0+dS5sb29zZS5tYXBzaXplKTsKKwlzdC0+dS5sb29zZS5tYXBwZWQgPSBtYXBfbG9vc2Vfb2JqZWN0KHIsIG9pZCwgJnN0LT51Lmxvb3NlLm1hcHNpemUpOwogCWlmICghc3QtPnUubG9vc2UubWFwcGVkKQogCQlyZXR1cm4gLTE7Ci0JaWYgKCh1bnBhY2tfc2hhMV9oZWFkZXIoJnN0LT56LAotCQkJCXN0LT51Lmxvb3NlLm1hcHBlZCwKLQkJCQlzdC0+dS5sb29zZS5tYXBzaXplLAotCQkJCXN0LT51Lmxvb3NlLmhkciwKLQkJCQlzaXplb2Yoc3QtPnUubG9vc2UuaGRyKSkgPCAwKSB8fAotCSAgICAocGFyc2Vfc2hhMV9oZWFkZXIoc3QtPnUubG9vc2UuaGRyLCAmc3QtPnNpemUpIDwgMCkpIHsKKwlpZiAoKHVucGFja19sb29zZV9oZWFkZXIoJnN0LT56LAorCQkJCSBzdC0+dS5sb29zZS5tYXBwZWQsCisJCQkJIHN0LT51Lmxvb3NlLm1hcHNpemUsCisJCQkJIHN0LT51Lmxvb3NlLmhkciwKKwkJCQkgc2l6ZW9mKHN0LT51Lmxvb3NlLmhkcikpIDwgMCkgfHwKKwkgICAgKHBhcnNlX2xvb3NlX2hlYWRlcihzdC0+dS5sb29zZS5oZHIsICZzdC0+c2l6ZSkgPCAwKSkgewogCQlnaXRfaW5mbGF0ZV9lbmQoJnN0LT56KTsKIAkJbXVubWFwKHN0LT51Lmxvb3NlLm1hcHBlZCwgc3QtPnUubG9vc2UubWFwc2l6ZSk7CiAJCXJldHVybiAtMTsKQEAgLTQ5OSw3ICs1MDEsNyBAQAogCiBzdGF0aWMgb3Blbl9tZXRob2RfZGVjbChpbmNvcmUpCiB7Ci0Jc3QtPnUuaW5jb3JlLmJ1ZiA9IHJlYWRfb2JqZWN0X2ZpbGVfZXh0ZW5kZWQob2lkLCB0eXBlLCAmc3QtPnNpemUsIDApOworCXN0LT51LmluY29yZS5idWYgPSByZWFkX29iamVjdF9maWxlX2V4dGVuZGVkKHIsIG9pZCwgdHlwZSwgJnN0LT5zaXplLCAwKTsKIAlzdC0+dS5pbmNvcmUucmVhZF9wdHIgPSAwOwogCXN0LT52dGJsID0gJmluY29yZV92dGJsOwogCkBAIC01MjAsNyArNTIyLDcgQEAKIAlzc2l6ZV90IGtlcHQgPSAwOwogCWludCByZXN1bHQgPSAtMTsKIAotCXN0ID0gb3Blbl9pc3RyZWFtKG9pZCwgJnR5cGUsICZzeiwgZmlsdGVyKTsKKwlzdCA9IG9wZW5faXN0cmVhbSh0aGVfcmVwb3NpdG9yeSwgb2lkLCAmdHlwZSwgJnN6LCBmaWx0ZXIpOwogCWlmICghc3QpIHsKIAkJaWYgKGZpbHRlcikKIAkJCWZyZWVfc3RyZWFtX2ZpbHRlcihmaWx0ZXIpOwpkaWZmIC0tZ2l0IGEvc3RyZWFtaW5nLmggYi9zdHJlYW1pbmcuaAppbmRleCAzMmY0NjI2Li41ZTRlNmFjIDEwMDY0NAotLS0gYS9zdHJlYW1pbmcuaAorKysgYi9zdHJlYW1pbmcuaApAQCAtOCwxMCArOCwxMiBAQAogLyogb3BhcXVlICovCiBzdHJ1Y3QgZ2l0X2lzdHJlYW07CiAKLWV4dGVybiBzdHJ1Y3QgZ2l0X2lzdHJlYW0gKm9wZW5faXN0cmVhbShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICosIGVudW0gb2JqZWN0X3R5cGUgKiwgdW5zaWduZWQgbG9uZyAqLCBzdHJ1Y3Qgc3RyZWFtX2ZpbHRlciAqKTsKLWV4dGVybiBpbnQgY2xvc2VfaXN0cmVhbShzdHJ1Y3QgZ2l0X2lzdHJlYW0gKik7Ci1leHRlcm4gc3NpemVfdCByZWFkX2lzdHJlYW0oc3RydWN0IGdpdF9pc3RyZWFtICosIHZvaWQgKiwgc2l6ZV90KTsKK3N0cnVjdCBnaXRfaXN0cmVhbSAqb3Blbl9pc3RyZWFtKHN0cnVjdCByZXBvc2l0b3J5ICosIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKiwKKwkJCQkgZW51bSBvYmplY3RfdHlwZSAqLCB1bnNpZ25lZCBsb25nICosCisJCQkJIHN0cnVjdCBzdHJlYW1fZmlsdGVyICopOworaW50IGNsb3NlX2lzdHJlYW0oc3RydWN0IGdpdF9pc3RyZWFtICopOworc3NpemVfdCByZWFkX2lzdHJlYW0oc3RydWN0IGdpdF9pc3RyZWFtICosIHZvaWQgKiwgc2l6ZV90KTsKIAotZXh0ZXJuIGludCBzdHJlYW1fYmxvYl90b19mZChpbnQgZmQsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKiwgc3RydWN0IHN0cmVhbV9maWx0ZXIgKiwgaW50IGNhbl9zZWVrKTsKK2ludCBzdHJlYW1fYmxvYl90b19mZChpbnQgZmQsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKiwgc3RydWN0IHN0cmVhbV9maWx0ZXIgKiwgaW50IGNhbl9zZWVrKTsKIAogI2VuZGlmIC8qIFNUUkVBTUlOR19IICovCmRpZmYgLS1naXQgYS9zdHJpbmctbGlzdC5jIGIvc3RyaW5nLWxpc3QuYwppbmRleCAxZjYwNjNmLi5hOTE3OTU1IDEwMDY0NAotLS0gYS9zdHJpbmctbGlzdC5jCisrKyBiL3N0cmluZy1saXN0LmMKQEAgLTE1NSw3ICsxNTUsOCBAQAogCXJldHVybiAqaXRlbS0+c3RyaW5nICE9ICdcMCc7CiB9CiAKLXZvaWQgc3RyaW5nX2xpc3RfcmVtb3ZlX2VtcHR5X2l0ZW1zKHN0cnVjdCBzdHJpbmdfbGlzdCAqbGlzdCwgaW50IGZyZWVfdXRpbCkgewordm9pZCBzdHJpbmdfbGlzdF9yZW1vdmVfZW1wdHlfaXRlbXMoc3RydWN0IHN0cmluZ19saXN0ICpsaXN0LCBpbnQgZnJlZV91dGlsKQorewogCWZpbHRlcl9zdHJpbmdfbGlzdChsaXN0LCBmcmVlX3V0aWwsIGl0ZW1faXNfbm90X2VtcHR5LCBOVUxMKTsKIH0KIApkaWZmIC0tZ2l0IGEvc3RyaW5nLWxpc3QuaCBiL3N0cmluZy1saXN0LmgKaW5kZXggMThjNzE4Yy4uNmM1ZDI3NCAxMDA2NDQKLS0tIGEvc3RyaW5nLWxpc3QuaAorKysgYi9zdHJpbmctbGlzdC5oCkBAIC00LDcgKzQsOCBAQAogLyoqCiAgKiBUaGUgc3RyaW5nX2xpc3QgQVBJIG9mZmVycyBhIGRhdGEgc3RydWN0dXJlIGFuZCBmdW5jdGlvbnMgdG8gaGFuZGxlCiAgKiBzb3J0ZWQgYW5kIHVuc29ydGVkIGFycmF5cyBvZiBzdHJpbmdzLiAgQSAic29ydGVkIiBsaXN0IGlzIG9uZSB3aG9zZQotICogZW50cmllcyBhcmUgc29ydGVkIGJ5IHN0cmluZyB2YWx1ZSBpbiBgc3RyY21wKClgIG9yZGVyLgorICogZW50cmllcyBhcmUgc29ydGVkIGJ5IHN0cmluZyB2YWx1ZSBpbiB0aGUgb3JkZXIgc3BlY2lmaWVkIGJ5IHRoZSBgY21wYAorICogbWVtYmVyIChgc3RyY21wKClgIGJ5IGRlZmF1bHQpLgogICoKICAqIFRoZSBjYWxsZXI6CiAgKgpAQCAtMTc0LDEyICsxNzUsMTIgQEAKICAqIFJlbW92ZSB0aGUgZ2l2ZW4gc3RyaW5nIGZyb20gdGhlIHNvcnRlZCBsaXN0LiAgSWYgdGhlIHN0cmluZwogICogZG9lc24ndCBleGlzdCwgdGhlIGxpc3QgaXMgbm90IGFsdGVyZWQuCiAgKi8KLWV4dGVybiB2b2lkIHN0cmluZ19saXN0X3JlbW92ZShzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmxpc3QsIGNvbnN0IGNoYXIgKnN0cmluZywKLQkJCSAgICAgICBpbnQgZnJlZV91dGlsKTsKK3ZvaWQgc3RyaW5nX2xpc3RfcmVtb3ZlKHN0cnVjdCBzdHJpbmdfbGlzdCAqbGlzdCwgY29uc3QgY2hhciAqc3RyaW5nLAorCQkJaW50IGZyZWVfdXRpbCk7CiAKIC8qKgogICogQ2hlY2sgaWYgdGhlIGdpdmVuIHN0cmluZyBpcyBwYXJ0IG9mIGEgc29ydGVkIGxpc3QuIElmIGl0IGlzIHBhcnQgb2YgdGhlIGxpc3QsCi0gKiByZXR1cm4gdGhlIGNvcmVzcG9uZGluZyBzdHJpbmdfbGlzdF9pdGVtLCBOVUxMIG90aGVyd2lzZS4KKyAqIHJldHVybiB0aGUgY29ycmVzcG9uZGluZyBzdHJpbmdfbGlzdF9pdGVtLCBOVUxMIG90aGVyd2lzZS4KICAqLwogc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKnN0cmluZ19saXN0X2xvb2t1cChzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmxpc3QsIGNvbnN0IGNoYXIgKnN0cmluZyk7CiAKQEAgLTIwOSw3ICsyMTAsOCBAQAogc3RydWN0IHN0cmluZ19saXN0X2l0ZW0gKnN0cmluZ19saXN0X2FwcGVuZF9ub2R1cChzdHJ1Y3Qgc3RyaW5nX2xpc3QgKmxpc3QsIGNoYXIgKnN0cmluZyk7CiAKIC8qKgotICogU29ydCB0aGUgbGlzdCdzIGVudHJpZXMgYnkgc3RyaW5nIHZhbHVlIGluIGBzdHJjbXAoKWAgb3JkZXIuCisgKiBTb3J0IHRoZSBsaXN0J3MgZW50cmllcyBieSBzdHJpbmcgdmFsdWUgaW4gb3JkZXIgc3BlY2lmaWVkIGJ5IGxpc3QtPmNtcAorICogKHN0cmNtcCgpIGlmIGxpc3QtPmNtcCBpcyBOVUxMKS4KICAqLwogdm9pZCBzdHJpbmdfbGlzdF9zb3J0KHN0cnVjdCBzdHJpbmdfbGlzdCAqbGlzdCk7CiAKZGlmZiAtLWdpdCBhL3N1Yi1wcm9jZXNzLmMgYi9zdWItcHJvY2Vzcy5jCmluZGV4IDhkMmExNzAuLjFiMWFmOWQgMTAwNjQ0Ci0tLSBhL3N1Yi1wcm9jZXNzLmMKKysrIGIvc3ViLXByb2Nlc3MuYwpAQCAtNiwxMiArNiwxNCBAQAogI2luY2x1ZGUgInBrdC1saW5lLmgiCiAKIGludCBjbWQycHJvY2Vzc19jbXAoY29uc3Qgdm9pZCAqdW51c2VkX2NtcF9kYXRhLAotCQkgICAgY29uc3Qgdm9pZCAqZW50cnksCi0JCSAgICBjb25zdCB2b2lkICplbnRyeV9vcl9rZXksCisJCSAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJICAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplbnRyeV9vcl9rZXksCiAJCSAgICBjb25zdCB2b2lkICp1bnVzZWRfa2V5ZGF0YSkKIHsKLQljb25zdCBzdHJ1Y3Qgc3VicHJvY2Vzc19lbnRyeSAqZTEgPSBlbnRyeTsKLQljb25zdCBzdHJ1Y3Qgc3VicHJvY2Vzc19lbnRyeSAqZTIgPSBlbnRyeV9vcl9rZXk7CisJY29uc3Qgc3RydWN0IHN1YnByb2Nlc3NfZW50cnkgKmUxLCAqZTI7CisKKwllMSA9IGNvbnRhaW5lcl9vZihlcHRyLCBjb25zdCBzdHJ1Y3Qgc3VicHJvY2Vzc19lbnRyeSwgZW50KTsKKwllMiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIGNvbnN0IHN0cnVjdCBzdWJwcm9jZXNzX2VudHJ5LCBlbnQpOwogCiAJcmV0dXJuIHN0cmNtcChlMS0+Y21kLCBlMi0+Y21kKTsKIH0KQEAgLTIwLDkgKzIyLDkgQEAKIHsKIAlzdHJ1Y3Qgc3VicHJvY2Vzc19lbnRyeSBrZXk7CiAKLQloYXNobWFwX2VudHJ5X2luaXQoJmtleSwgc3RyaGFzaChjbWQpKTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmtleS5lbnQsIHN0cmhhc2goY21kKSk7CiAJa2V5LmNtZCA9IGNtZDsKLQlyZXR1cm4gaGFzaG1hcF9nZXQoaGFzaG1hcCwgJmtleSwgTlVMTCk7CisJcmV0dXJuIGhhc2htYXBfZ2V0X2VudHJ5KGhhc2htYXAsICZrZXksIGVudCwgTlVMTCk7CiB9CiAKIGludCBzdWJwcm9jZXNzX3JlYWRfc3RhdHVzKGludCBmZCwgc3RydWN0IHN0cmJ1ZiAqc3RhdHVzKQpAQCAtNTgsNyArNjAsNyBAQAogCWtpbGwoZW50cnktPnByb2Nlc3MucGlkLCBTSUdURVJNKTsKIAlmaW5pc2hfY29tbWFuZCgmZW50cnktPnByb2Nlc3MpOwogCi0JaGFzaG1hcF9yZW1vdmUoaGFzaG1hcCwgZW50cnksIE5VTEwpOworCWhhc2htYXBfcmVtb3ZlKGhhc2htYXAsICZlbnRyeS0+ZW50LCBOVUxMKTsKIH0KIAogc3RhdGljIHZvaWQgc3VicHJvY2Vzc19leGl0X2hhbmRsZXIoc3RydWN0IGNoaWxkX3Byb2Nlc3MgKnByb2Nlc3MpCkBAIC04OCw2ICs5MCw3IEBACiAJcHJvY2Vzcy0+b3V0ID0gLTE7CiAJcHJvY2Vzcy0+Y2xlYW5fb25fZXhpdCA9IDE7CiAJcHJvY2Vzcy0+Y2xlYW5fb25fZXhpdF9oYW5kbGVyID0gc3VicHJvY2Vzc19leGl0X2hhbmRsZXI7CisJcHJvY2Vzcy0+dHJhY2UyX2NoaWxkX2NsYXNzID0gInN1YnByb2Nlc3MiOwogCiAJZXJyID0gc3RhcnRfY29tbWFuZChwcm9jZXNzKTsKIAlpZiAoZXJyKSB7CkBAIC05NSw3ICs5OCw3IEBACiAJCXJldHVybiBlcnI7CiAJfQogCi0JaGFzaG1hcF9lbnRyeV9pbml0KGVudHJ5LCBzdHJoYXNoKGNtZCkpOworCWhhc2htYXBfZW50cnlfaW5pdCgmZW50cnktPmVudCwgc3RyaGFzaChjbWQpKTsKIAogCWVyciA9IHN0YXJ0Zm4oZW50cnkpOwogCWlmIChlcnIpIHsKQEAgLTEwNCw3ICsxMDcsNyBAQAogCQlyZXR1cm4gZXJyOwogCX0KIAotCWhhc2htYXBfYWRkKGhhc2htYXAsIGVudHJ5KTsKKwloYXNobWFwX2FkZChoYXNobWFwLCAmZW50cnktPmVudCk7CiAJcmV0dXJuIDA7CiB9CiAKZGlmZiAtLWdpdCBhL3N1Yi1wcm9jZXNzLmggYi9zdWItcHJvY2Vzcy5oCmluZGV4IDcxYjE4YWQuLmU4NWYyMWYgMTAwNjQ0Ci0tLSBhL3N1Yi1wcm9jZXNzLmgKKysrIGIvc3ViLXByb2Nlc3MuaApAQCAtMjQsNyArMjQsNyBAQAogCiAvKiBNZW1iZXJzIHNob3VsZCBub3QgYmUgYWNjZXNzZWQgZGlyZWN0bHkuICovCiBzdHJ1Y3Qgc3VicHJvY2Vzc19lbnRyeSB7Ci0Jc3RydWN0IGhhc2htYXBfZW50cnkgZW50OyAvKiBtdXN0IGJlIHRoZSBmaXJzdCBtZW1iZXIhICovCisJc3RydWN0IGhhc2htYXBfZW50cnkgZW50OwogCWNvbnN0IGNoYXIgKmNtZDsKIAlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBwcm9jZXNzOwogfTsKQEAgLTQyLDEwICs0MiwxMCBAQAogLyogc3VicHJvY2VzcyBmdW5jdGlvbnMgKi8KIAogLyogRnVuY3Rpb24gdG8gdGVzdCB0d28gc3VicHJvY2VzcyBoYXNobWFwIGVudHJpZXMgZm9yIGVxdWFsaXR5LiAqLwotZXh0ZXJuIGludCBjbWQycHJvY2Vzc19jbXAoY29uc3Qgdm9pZCAqdW51c2VkX2NtcF9kYXRhLAotCQkJICAgY29uc3Qgdm9pZCAqZTEsCi0JCQkgICBjb25zdCB2b2lkICplMiwKLQkJCSAgIGNvbnN0IHZvaWQgKnVudXNlZF9rZXlkYXRhKTsKK2ludCBjbWQycHJvY2Vzc19jbXAoY29uc3Qgdm9pZCAqdW51c2VkX2NtcF9kYXRhLAorCQkgICAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmUsCisJCSAgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAorCQkgICAgY29uc3Qgdm9pZCAqdW51c2VkX2tleWRhdGEpOwogCiAvKgogICogVXNlci1zdXBwbGllZCBmdW5jdGlvbiB0byBpbml0aWFsaXplIHRoZSBzdWItcHJvY2Vzcy4gIFRoaXMgaXMKZGlmZiAtLWdpdCBhL3N1Ym1vZHVsZS1jb25maWcuYyBiL3N1Ym1vZHVsZS1jb25maWcuYwppbmRleCA4YzAwODU1Li40ZDFjOTJkIDEwMDY0NAotLS0gYS9zdWJtb2R1bGUtY29uZmlnLmMKKysrIGIvc3VibW9kdWxlLWNvbmZpZy5jCkBAIC0zOCwyNCArMzgsMjggQEAKIH07CiAKIHN0YXRpYyBpbnQgY29uZmlnX3BhdGhfY21wKGNvbnN0IHZvaWQgKnVudXNlZF9jbXBfZGF0YSwKLQkJCSAgIGNvbnN0IHZvaWQgKmVudHJ5LAotCQkJICAgY29uc3Qgdm9pZCAqZW50cnlfb3Jfa2V5LAorCQkJICAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmVwdHIsCisJCQkgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZW50cnlfb3Jfa2V5LAogCQkJICAgY29uc3Qgdm9pZCAqdW51c2VkX2tleWRhdGEpCiB7Ci0JY29uc3Qgc3RydWN0IHN1Ym1vZHVsZV9lbnRyeSAqYSA9IGVudHJ5OwotCWNvbnN0IHN0cnVjdCBzdWJtb2R1bGVfZW50cnkgKmIgPSBlbnRyeV9vcl9rZXk7CisJY29uc3Qgc3RydWN0IHN1Ym1vZHVsZV9lbnRyeSAqYSwgKmI7CisKKwlhID0gY29udGFpbmVyX29mKGVwdHIsIGNvbnN0IHN0cnVjdCBzdWJtb2R1bGVfZW50cnksIGVudCk7CisJYiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIGNvbnN0IHN0cnVjdCBzdWJtb2R1bGVfZW50cnksIGVudCk7CiAKIAlyZXR1cm4gc3RyY21wKGEtPmNvbmZpZy0+cGF0aCwgYi0+Y29uZmlnLT5wYXRoKSB8fAogCSAgICAgICAhb2lkZXEoJmEtPmNvbmZpZy0+Z2l0bW9kdWxlc19vaWQsICZiLT5jb25maWctPmdpdG1vZHVsZXNfb2lkKTsKIH0KIAogc3RhdGljIGludCBjb25maWdfbmFtZV9jbXAoY29uc3Qgdm9pZCAqdW51c2VkX2NtcF9kYXRhLAotCQkJICAgY29uc3Qgdm9pZCAqZW50cnksCi0JCQkgICBjb25zdCB2b2lkICplbnRyeV9vcl9rZXksCisJCQkgICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJCSAgIGNvbnN0IHN0cnVjdCBoYXNobWFwX2VudHJ5ICplbnRyeV9vcl9rZXksCiAJCQkgICBjb25zdCB2b2lkICp1bnVzZWRfa2V5ZGF0YSkKIHsKLQljb25zdCBzdHJ1Y3Qgc3VibW9kdWxlX2VudHJ5ICphID0gZW50cnk7Ci0JY29uc3Qgc3RydWN0IHN1Ym1vZHVsZV9lbnRyeSAqYiA9IGVudHJ5X29yX2tleTsKKwljb25zdCBzdHJ1Y3Qgc3VibW9kdWxlX2VudHJ5ICphLCAqYjsKKworCWEgPSBjb250YWluZXJfb2YoZXB0ciwgY29uc3Qgc3RydWN0IHN1Ym1vZHVsZV9lbnRyeSwgZW50KTsKKwliID0gY29udGFpbmVyX29mKGVudHJ5X29yX2tleSwgY29uc3Qgc3RydWN0IHN1Ym1vZHVsZV9lbnRyeSwgZW50KTsKIAogCXJldHVybiBzdHJjbXAoYS0+Y29uZmlnLT5uYW1lLCBiLT5jb25maWctPm5hbWUpIHx8CiAJICAgICAgICFvaWRlcSgmYS0+Y29uZmlnLT5naXRtb2R1bGVzX29pZCwgJmItPmNvbmZpZy0+Z2l0bW9kdWxlc19vaWQpOwpAQCAtOTUsMTIgKzk5LDEyIEBACiAJICogYWxsb2NhdGlvbiBvZiBzdHJ1Y3Qgc3VibW9kdWxlIGVudHJpZXMuIEVhY2ggaXMgYWxsb2NhdGVkIGJ5CiAJICogdGhlaXIgLmdpdG1vZHVsZXMgYmxvYiBzaGExIGFuZCBzdWJtb2R1bGUgbmFtZS4KIAkgKi8KLQloYXNobWFwX2l0ZXJfaW5pdCgmY2FjaGUtPmZvcl9uYW1lLCAmaXRlcik7Ci0Jd2hpbGUgKChlbnRyeSA9IGhhc2htYXBfaXRlcl9uZXh0KCZpdGVyKSkpCisJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeSgmY2FjaGUtPmZvcl9uYW1lLCAmaXRlciwgZW50cnksCisJCQkJZW50IC8qIG1lbWJlciBuYW1lICovKQogCQlmcmVlX29uZV9jb25maWcoZW50cnkpOwogCi0JaGFzaG1hcF9mcmVlKCZjYWNoZS0+Zm9yX3BhdGgsIDEpOwotCWhhc2htYXBfZnJlZSgmY2FjaGUtPmZvcl9uYW1lLCAxKTsKKwloYXNobWFwX2ZyZWVfZW50cmllcygmY2FjaGUtPmZvcl9wYXRoLCBzdHJ1Y3Qgc3VibW9kdWxlX2VudHJ5LCBlbnQpOworCWhhc2htYXBfZnJlZV9lbnRyaWVzKCZjYWNoZS0+Zm9yX25hbWUsIHN0cnVjdCBzdWJtb2R1bGVfZW50cnksIGVudCk7CiAJY2FjaGUtPmluaXRpYWxpemVkID0gMDsKIAljYWNoZS0+Z2l0bW9kdWxlc19yZWFkID0gMDsKIH0KQEAgLTEyMyw5ICsxMjcsOSBAQAogCXVuc2lnbmVkIGludCBoYXNoID0gaGFzaF9vaWRfc3RyaW5nKCZzdWJtb2R1bGUtPmdpdG1vZHVsZXNfb2lkLAogCQkJCQkgICAgc3VibW9kdWxlLT5wYXRoKTsKIAlzdHJ1Y3Qgc3VibW9kdWxlX2VudHJ5ICplID0geG1hbGxvYyhzaXplb2YoKmUpKTsKLQloYXNobWFwX2VudHJ5X2luaXQoZSwgaGFzaCk7CisJaGFzaG1hcF9lbnRyeV9pbml0KCZlLT5lbnQsIGhhc2gpOwogCWUtPmNvbmZpZyA9IHN1Ym1vZHVsZTsKLQloYXNobWFwX3B1dCgmY2FjaGUtPmZvcl9wYXRoLCBlKTsKKwloYXNobWFwX3B1dCgmY2FjaGUtPmZvcl9wYXRoLCAmZS0+ZW50KTsKIH0KIAogc3RhdGljIHZvaWQgY2FjaGVfcmVtb3ZlX3BhdGgoc3RydWN0IHN1Ym1vZHVsZV9jYWNoZSAqY2FjaGUsCkBAIC0xMzUsOSArMTM5LDkgQEAKIAkJCQkJICAgIHN1Ym1vZHVsZS0+cGF0aCk7CiAJc3RydWN0IHN1Ym1vZHVsZV9lbnRyeSBlOwogCXN0cnVjdCBzdWJtb2R1bGVfZW50cnkgKnJlbW92ZWQ7Ci0JaGFzaG1hcF9lbnRyeV9pbml0KCZlLCBoYXNoKTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmUuZW50LCBoYXNoKTsKIAllLmNvbmZpZyA9IHN1Ym1vZHVsZTsKLQlyZW1vdmVkID0gaGFzaG1hcF9yZW1vdmUoJmNhY2hlLT5mb3JfcGF0aCwgJmUsIE5VTEwpOworCXJlbW92ZWQgPSBoYXNobWFwX3JlbW92ZV9lbnRyeSgmY2FjaGUtPmZvcl9wYXRoLCAmZSwgZW50LCBOVUxMKTsKIAlmcmVlKHJlbW92ZWQpOwogfQogCkBAIC0xNDcsOSArMTUxLDkgQEAKIAl1bnNpZ25lZCBpbnQgaGFzaCA9IGhhc2hfb2lkX3N0cmluZygmc3VibW9kdWxlLT5naXRtb2R1bGVzX29pZCwKIAkJCQkJICAgIHN1Ym1vZHVsZS0+bmFtZSk7CiAJc3RydWN0IHN1Ym1vZHVsZV9lbnRyeSAqZSA9IHhtYWxsb2Moc2l6ZW9mKCplKSk7Ci0JaGFzaG1hcF9lbnRyeV9pbml0KGUsIGhhc2gpOworCWhhc2htYXBfZW50cnlfaW5pdCgmZS0+ZW50LCBoYXNoKTsKIAllLT5jb25maWcgPSBzdWJtb2R1bGU7Ci0JaGFzaG1hcF9hZGQoJmNhY2hlLT5mb3JfbmFtZSwgZSk7CisJaGFzaG1hcF9hZGQoJmNhY2hlLT5mb3JfbmFtZSwgJmUtPmVudCk7CiB9CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgc3VibW9kdWxlICpjYWNoZV9sb29rdXBfcGF0aChzdHJ1Y3Qgc3VibW9kdWxlX2NhY2hlICpjYWNoZSwKQEAgLTE2MywxMCArMTY3LDEwIEBACiAJb2lkY3B5KCZrZXlfY29uZmlnLmdpdG1vZHVsZXNfb2lkLCBnaXRtb2R1bGVzX29pZCk7CiAJa2V5X2NvbmZpZy5wYXRoID0gcGF0aDsKIAotCWhhc2htYXBfZW50cnlfaW5pdCgma2V5LCBoYXNoKTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmtleS5lbnQsIGhhc2gpOwogCWtleS5jb25maWcgPSAma2V5X2NvbmZpZzsKIAotCWVudHJ5ID0gaGFzaG1hcF9nZXQoJmNhY2hlLT5mb3JfcGF0aCwgJmtleSwgTlVMTCk7CisJZW50cnkgPSBoYXNobWFwX2dldF9lbnRyeSgmY2FjaGUtPmZvcl9wYXRoLCAma2V5LCBlbnQsIE5VTEwpOwogCWlmIChlbnRyeSkKIAkJcmV0dXJuIGVudHJ5LT5jb25maWc7CiAJcmV0dXJuIE5VTEw7CkBAIC0xODMsMTAgKzE4NywxMCBAQAogCW9pZGNweSgma2V5X2NvbmZpZy5naXRtb2R1bGVzX29pZCwgZ2l0bW9kdWxlc19vaWQpOwogCWtleV9jb25maWcubmFtZSA9IG5hbWU7CiAKLQloYXNobWFwX2VudHJ5X2luaXQoJmtleSwgaGFzaCk7CisJaGFzaG1hcF9lbnRyeV9pbml0KCZrZXkuZW50LCBoYXNoKTsKIAlrZXkuY29uZmlnID0gJmtleV9jb25maWc7CiAKLQllbnRyeSA9IGhhc2htYXBfZ2V0KCZjYWNoZS0+Zm9yX25hbWUsICZrZXksIE5VTEwpOworCWVudHJ5ID0gaGFzaG1hcF9nZXRfZW50cnkoJmNhY2hlLT5mb3JfbmFtZSwgJmtleSwgZW50LCBOVUxMKTsKIAlpZiAoZW50cnkpCiAJCXJldHVybiBlbnRyeS0+Y29uZmlnOwogCXJldHVybiBOVUxMOwpAQCAtMjgxLDcgKzI4NSwxMCBAQAogCWRlZmF1bHQ6CiAJCWlmICghc3RyY21wKGFyZywgIm9uLWRlbWFuZCIpKQogCQkJcmV0dXJuIFJFQ1VSU0VfU1VCTU9EVUxFU19PTl9ERU1BTkQ7Ci0KKwkJLyoKKwkJICogUGxlYXNlIHVwZGF0ZSAkX19naXRfZmV0Y2hfcmVjdXJzZV9zdWJtb2R1bGVzIGluCisJCSAqIGdpdC1jb21wbGV0aW9uLmJhc2ggd2hlbiB5b3UgYWRkIG5ldyBvcHRpb25zLgorCQkgKi8KIAkJaWYgKGRpZV9vbl9lcnJvcikKIAkJCWRpZSgiYmFkICVzIGFyZ3VtZW50OiAlcyIsIG9wdCwgYXJnKTsKIAkJZWxzZQpAQCAtMzYyLDYgKzM2OSwxMCBAQAogCQkJcmV0dXJuIFJFQ1VSU0VfU1VCTU9EVUxFU19DSEVDSzsKIAkJZWxzZSBpZiAoIXN0cmNtcChhcmcsICJvbmx5IikpCiAJCQlyZXR1cm4gUkVDVVJTRV9TVUJNT0RVTEVTX09OTFk7CisJCS8qCisJCSAqIFBsZWFzZSB1cGRhdGUgJF9fZ2l0X3B1c2hfcmVjdXJzZV9zdWJtb2R1bGVzIGluCisJCSAqIGdpdC1jb21wbGV0aW9uLmJhc2ggd2hlbiB5b3UgYWRkIG5ldyBtb2Rlcy4KKwkJICovCiAJCWVsc2UgaWYgKGRpZV9vbl9lcnJvcikKIAkJCWRpZSgiYmFkICVzIGFyZ3VtZW50OiAlcyIsIG9wdCwgYXJnKTsKIAkJZWxzZQpAQCAtNTUxLDcgKzU2Miw5IEBACiAJCXN0cnVjdCBoYXNobWFwX2l0ZXIgaXRlcjsKIAkJc3RydWN0IHN1Ym1vZHVsZV9lbnRyeSAqZW50cnk7CiAKLQkJZW50cnkgPSBoYXNobWFwX2l0ZXJfZmlyc3QoJmNhY2hlLT5mb3JfbmFtZSwgJml0ZXIpOworCQllbnRyeSA9IGhhc2htYXBfaXRlcl9maXJzdF9lbnRyeSgmY2FjaGUtPmZvcl9uYW1lLCAmaXRlciwKKwkJCQkJCXN0cnVjdCBzdWJtb2R1bGVfZW50cnksCisJCQkJCQllbnQgLyogbWVtYmVyIG5hbWUgKi8pOwogCQlpZiAoIWVudHJ5KQogCQkJcmV0dXJuIE5VTEw7CiAJCXJldHVybiBlbnRyeS0+Y29uZmlnOwpAQCAtNjEzLDcgKzYyNiw3IEBACiAKIC8qCiAgKiBOb3RlOiBUaGlzIGZ1bmN0aW9uIGlzIHByaXZhdGUgZm9yIGEgcmVhc29uLCB0aGUgJy5naXRtb2R1bGVzJyBmaWxlIHNob3VsZAotICogbm90IGJlIHVzZWQgYXMgYXMgYSBtZWNoYW5pc20gdG8gcmV0cmlldmUgYXJiaXRyYXJ5IGNvbmZpZ3VyYXRpb24gc3RvcmVkIGluCisgKiBub3QgYmUgdXNlZCBhcyBhIG1lY2hhbmlzbSB0byByZXRyaWV2ZSBhcmJpdHJhcnkgY29uZmlndXJhdGlvbiBzdG9yZWQgaW4KICAqIHRoZSByZXBvc2l0b3J5LgogICoKICAqIFJ1bnMgdGhlIHByb3ZpZGVkIGNvbmZpZyBmdW5jdGlvbiBvbiB0aGUgJy5naXRtb2R1bGVzJyBmaWxlIGZvdW5kIGluIHRoZQpAQCAtNjIyLDI3ICs2MzUsMjIgQEAKIHN0YXRpYyB2b2lkIGNvbmZpZ19mcm9tX2dpdG1vZHVsZXMoY29uZmlnX2ZuX3QgZm4sIHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLCB2b2lkICpkYXRhKQogewogCWlmIChyZXBvLT53b3JrdHJlZSkgewotCQlzdHJ1Y3QgZ2l0X2NvbmZpZ19zb3VyY2UgY29uZmlnX3NvdXJjZSA9IHsgMCB9OworCQlzdHJ1Y3QgZ2l0X2NvbmZpZ19zb3VyY2UgY29uZmlnX3NvdXJjZSA9IHsKKwkJCTAsIC5zY29wZSA9IENPTkZJR19TQ09QRV9TVUJNT0RVTEUKKwkJfTsKIAkJY29uc3Qgc3RydWN0IGNvbmZpZ19vcHRpb25zIG9wdHMgPSB7IDAgfTsKIAkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJCWNoYXIgKmZpbGU7CisJCWNoYXIgKm9pZHN0ciA9IE5VTEw7CiAKIAkJZmlsZSA9IHJlcG9fd29ya3RyZWVfcGF0aChyZXBvLCBHSVRNT0RVTEVTX0ZJTEUpOwogCQlpZiAoZmlsZV9leGlzdHMoZmlsZSkpIHsKIAkJCWNvbmZpZ19zb3VyY2UuZmlsZSA9IGZpbGU7Ci0JCX0gZWxzZSBpZiAocmVwby0+c3VibW9kdWxlX3ByZWZpeCkgewotCQkJLyoKLQkJCSAqIFdoZW4gZ2V0X29pZCBhbmQgY29uZmlnX3dpdGhfb3B0aW9ucywgdXNlZCBiZWxvdywKLQkJCSAqIGJlY29tZSBhYmxlIHRvIHdvcmsgb24gYSBzcGVjaWZpYyByZXBvc2l0b3J5LCB0aGlzCi0JCQkgKiB3YXJuaW5nIGJyYW5jaCBjYW4gYmUgcmVtb3ZlZC4KLQkJCSAqLwotCQkJd2FybmluZygibmVzdGVkIHN1Ym1vZHVsZXMgd2l0aG91dCAlcyBpbiB0aGUgd29ya2luZyB0cmVlIGFyZSBub3Qgc3VwcG9ydGVkIHlldCIsCi0JCQkJR0lUTU9EVUxFU19GSUxFKTsKLQkJCWdvdG8gb3V0OwotCQl9IGVsc2UgaWYgKGdldF9vaWQoR0lUTU9EVUxFU19JTkRFWCwgJm9pZCkgPj0gMCkgewotCQkJY29uZmlnX3NvdXJjZS5ibG9iID0gR0lUTU9EVUxFU19JTkRFWDsKLQkJfSBlbHNlIGlmIChnZXRfb2lkKEdJVE1PRFVMRVNfSEVBRCwgJm9pZCkgPj0gMCkgewotCQkJY29uZmlnX3NvdXJjZS5ibG9iID0gR0lUTU9EVUxFU19IRUFEOworCQl9IGVsc2UgaWYgKHJlcG9fZ2V0X29pZChyZXBvLCBHSVRNT0RVTEVTX0lOREVYLCAmb2lkKSA+PSAwIHx8CisJCQkgICByZXBvX2dldF9vaWQocmVwbywgR0lUTU9EVUxFU19IRUFELCAmb2lkKSA+PSAwKSB7CisJCQljb25maWdfc291cmNlLmJsb2IgPSBvaWRzdHIgPSB4c3RyZHVwKG9pZF90b19oZXgoJm9pZCkpOworCQkJaWYgKHJlcG8gIT0gdGhlX3JlcG9zaXRvcnkpCisJCQkJYWRkX3RvX2FsdGVybmF0ZXNfbWVtb3J5KHJlcG8tPm9iamVjdHMtPm9kYi0+cGF0aCk7CiAJCX0gZWxzZSB7CiAJCQlnb3RvIG91dDsKIAkJfQpAQCAtNjUwLDYgKzY1OCw3IEBACiAJCWNvbmZpZ193aXRoX29wdGlvbnMoZm4sIGRhdGEsICZjb25maWdfc291cmNlLCAmb3B0cyk7CiAKIG91dDoKKwkJZnJlZShvaWRzdHIpOwogCQlmcmVlKGZpbGUpOwogCX0KIH0KQEAgLTY2NywxMCArNjc2LDEzIEBACiAJcmV0dXJuIHBhcnNlX2NvbmZpZyh2YXIsIHZhbHVlLCAmcGFyYW1ldGVyKTsKIH0KIAotdm9pZCByZXBvX3JlYWRfZ2l0bW9kdWxlcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbykKK3ZvaWQgcmVwb19yZWFkX2dpdG1vZHVsZXMoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIGludCBza2lwX2lmX3JlYWQpCiB7CiAJc3VibW9kdWxlX2NhY2hlX2NoZWNrX2luaXQocmVwbyk7CiAKKwlpZiAocmVwby0+c3VibW9kdWxlX2NhY2hlLT5naXRtb2R1bGVzX3JlYWQgJiYgc2tpcF9pZl9yZWFkKQorCQlyZXR1cm47CisKIAlpZiAocmVwb19yZWFkX2luZGV4KHJlcG8pIDwgMCkKIAkJcmV0dXJuOwogCkBAIC02OTYsMjAgKzcwOCwxMSBAQAogCXRoZV9yZXBvc2l0b3J5LT5zdWJtb2R1bGVfY2FjaGUtPmdpdG1vZHVsZXNfcmVhZCA9IDE7CiB9CiAKLXN0YXRpYyB2b2lkIGdpdG1vZHVsZXNfcmVhZF9jaGVjayhzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbykKLXsKLQlzdWJtb2R1bGVfY2FjaGVfY2hlY2tfaW5pdChyZXBvKTsKLQotCS8qIHJlYWQgdGhlIHJlcG8ncyAuZ2l0bW9kdWxlcyBmaWxlIGlmIGl0IGhhc24ndCBiZWVuIGFscmVhZHkgKi8KLQlpZiAoIXJlcG8tPnN1Ym1vZHVsZV9jYWNoZS0+Z2l0bW9kdWxlc19yZWFkKQotCQlyZXBvX3JlYWRfZ2l0bW9kdWxlcyhyZXBvKTsKLX0KLQogY29uc3Qgc3RydWN0IHN1Ym1vZHVsZSAqc3VibW9kdWxlX2Zyb21fbmFtZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKIAkJCQkJICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKnRyZWVpc2hfbmFtZSwKIAkJY29uc3QgY2hhciAqbmFtZSkKIHsKLQlnaXRtb2R1bGVzX3JlYWRfY2hlY2socik7CisJcmVwb19yZWFkX2dpdG1vZHVsZXMociwgMSk7CiAJcmV0dXJuIGNvbmZpZ19mcm9tKHItPnN1Ym1vZHVsZV9jYWNoZSwgdHJlZWlzaF9uYW1lLCBuYW1lLCBsb29rdXBfbmFtZSk7CiB9CiAKQEAgLTcxNyw3ICs3MjAsNyBAQAogCQkJCQkgICAgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqdHJlZWlzaF9uYW1lLAogCQljb25zdCBjaGFyICpwYXRoKQogewotCWdpdG1vZHVsZXNfcmVhZF9jaGVjayhyKTsKKwlyZXBvX3JlYWRfZ2l0bW9kdWxlcyhyLCAxKTsKIAlyZXR1cm4gY29uZmlnX2Zyb20oci0+c3VibW9kdWxlX2NhY2hlLCB0cmVlaXNoX25hbWUsIHBhdGgsIGxvb2t1cF9wYXRoKTsKIH0KIApkaWZmIC0tZ2l0IGEvc3VibW9kdWxlLWNvbmZpZy5oIGIvc3VibW9kdWxlLWNvbmZpZy5oCmluZGV4IDRkYzliMDcuLmMxMWUyMmMgMTAwNjQ0Ci0tLSBhL3N1Ym1vZHVsZS1jb25maWcuaAorKysgYi9zdWJtb2R1bGUtY29uZmlnLmgKQEAgLTcsOSArNywzMSBAQAogI2luY2x1ZGUgInN1Ym1vZHVsZS5oIgogI2luY2x1ZGUgInN0cmJ1Zi5oIgogCisvKioKKyAqIFRoZSBzdWJtb2R1bGUgY29uZmlnIGNhY2hlIEFQSSBhbGxvd3MgdG8gcmVhZCBzdWJtb2R1bGUKKyAqIGNvbmZpZ3VyYXRpb25zL2luZm9ybWF0aW9uIGZyb20gc3BlY2lmaWVkIHJldmlzaW9ucy4gSW50ZXJuYWxseQorICogaW5mb3JtYXRpb24gaXMgbGF6aWx5IHJlYWQgaW50byBhIGNhY2hlIHRoYXQgaXMgdXNlZCB0byBhdm9pZAorICogdW5uZWNlc3NhcnkgcGFyc2luZyBvZiB0aGUgc2FtZSAuZ2l0bW9kdWxlcyBmaWxlcy4gTG9va3VwcyBjYW4gYmUgZG9uZSBieQorICogc3VibW9kdWxlIHBhdGggb3IgbmFtZS4KKyAqCisgKiBVc2FnZQorICogLS0tLS0KKyAqCisgKiBUaGUgY2FsbGVyIGNhbiBsb29rIHVwIGluZm9ybWF0aW9uIGFib3V0IHN1Ym1vZHVsZXMgYnkgdXNpbmcgdGhlCisgKiBgc3VibW9kdWxlX2Zyb21fcGF0aCgpYCBvciBgc3VibW9kdWxlX2Zyb21fbmFtZSgpYCBmdW5jdGlvbnMuIFRoZXkgcmV0dXJuCisgKiBhIGBzdHJ1Y3Qgc3VibW9kdWxlYCB3aGljaCBjb250YWlucyB0aGUgdmFsdWVzLiBUaGUgQVBJIGF1dG9tYXRpY2FsbHkKKyAqIGluaXRpYWxpemVzIGFuZCBhbGxvY2F0ZXMgdGhlIG5lZWRlZCBpbmZyYXN0cnVjdHVyZSBvbi1kZW1hbmQuIElmIHRoZQorICogY2FsbGVyIGRvZXMgb25seSB3YW50IHRvIGxvb2t1cCB2YWx1ZXMgZnJvbSByZXZpc2lvbnMgdGhlIGluaXRpYWxpemF0aW9uCisgKiBjYW4gYmUgc2tpcHBlZC4KKyAqCisgKiBJZiB0aGUgaW50ZXJuYWwgY2FjaGUgbWlnaHQgZ3JvdyB0b28gYmlnIG9yIHdoZW4gdGhlIGNhbGxlciBpcyBkb25lIHdpdGgKKyAqIHRoZSBBUEksIGFsbCBpbnRlcm5hbGx5IGNhY2hlZCB2YWx1ZXMgY2FuIGJlIGZyZWVkIHdpdGggc3VibW9kdWxlX2ZyZWUoKS4KKyAqCisgKi8KKwogLyoKICAqIFN1Ym1vZHVsZSBlbnRyeSBjb250YWluaW5nIHRoZSBpbmZvcm1hdGlvbiBhYm91dCBhIGNlcnRhaW4gc3VibW9kdWxlCi0gKiBpbiBhIGNlcnRhaW4gcmV2aXNpb24uCisgKiBpbiBhIGNlcnRhaW4gcmV2aXNpb24uIEl0IGlzIHJldHVybmVkIGJ5IHRoZSBsb29rdXAgZnVuY3Rpb25zLgogICovCiBzdHJ1Y3Qgc3VibW9kdWxlIHsKIAljb25zdCBjaGFyICpwYXRoOwpAQCAtMzAsMjQgKzUyLDM4IEBACiBzdHJ1Y3Qgc3VibW9kdWxlX2NhY2hlOwogc3RydWN0IHJlcG9zaXRvcnk7CiAKLWV4dGVybiB2b2lkIHN1Ym1vZHVsZV9jYWNoZV9mcmVlKHN0cnVjdCBzdWJtb2R1bGVfY2FjaGUgKmNhY2hlKTsKK3ZvaWQgc3VibW9kdWxlX2NhY2hlX2ZyZWUoc3RydWN0IHN1Ym1vZHVsZV9jYWNoZSAqY2FjaGUpOwogCi1leHRlcm4gaW50IHBhcnNlX3N1Ym1vZHVsZV9mZXRjaGpvYnMoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSk7Ci1leHRlcm4gaW50IHBhcnNlX2ZldGNoX3JlY3Vyc2Vfc3VibW9kdWxlc19hcmcoY29uc3QgY2hhciAqb3B0LCBjb25zdCBjaGFyICphcmcpOworaW50IHBhcnNlX3N1Ym1vZHVsZV9mZXRjaGpvYnMoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSk7CitpbnQgcGFyc2VfZmV0Y2hfcmVjdXJzZV9zdWJtb2R1bGVzX2FyZyhjb25zdCBjaGFyICpvcHQsIGNvbnN0IGNoYXIgKmFyZyk7CiBzdHJ1Y3Qgb3B0aW9uOwotZXh0ZXJuIGludCBvcHRpb25fZmV0Y2hfcGFyc2VfcmVjdXJzZV9zdWJtb2R1bGVzKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKLQkJCQkJCSBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCk7Ci1leHRlcm4gaW50IHBhcnNlX3VwZGF0ZV9yZWN1cnNlX3N1Ym1vZHVsZXNfYXJnKGNvbnN0IGNoYXIgKm9wdCwgY29uc3QgY2hhciAqYXJnKTsKLWV4dGVybiBpbnQgcGFyc2VfcHVzaF9yZWN1cnNlX3N1Ym1vZHVsZXNfYXJnKGNvbnN0IGNoYXIgKm9wdCwgY29uc3QgY2hhciAqYXJnKTsKLWV4dGVybiB2b2lkIHJlcG9fcmVhZF9naXRtb2R1bGVzKHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvKTsKLWV4dGVybiB2b2lkIGdpdG1vZHVsZXNfY29uZmlnX29pZChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpjb21taXRfb2lkKTsKK2ludCBvcHRpb25fZmV0Y2hfcGFyc2VfcmVjdXJzZV9zdWJtb2R1bGVzKGNvbnN0IHN0cnVjdCBvcHRpb24gKm9wdCwKKwkJCQkJICBjb25zdCBjaGFyICphcmcsIGludCB1bnNldCk7CitpbnQgcGFyc2VfdXBkYXRlX3JlY3Vyc2Vfc3VibW9kdWxlc19hcmcoY29uc3QgY2hhciAqb3B0LCBjb25zdCBjaGFyICphcmcpOworaW50IHBhcnNlX3B1c2hfcmVjdXJzZV9zdWJtb2R1bGVzX2FyZyhjb25zdCBjaGFyICpvcHQsIGNvbnN0IGNoYXIgKmFyZyk7Cit2b2lkIHJlcG9fcmVhZF9naXRtb2R1bGVzKHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLCBpbnQgc2tpcF9pZl9yZWFkKTsKK3ZvaWQgZ2l0bW9kdWxlc19jb25maWdfb2lkKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmNvbW1pdF9vaWQpOworCisvKioKKyAqIFNhbWUgYXMgc3VibW9kdWxlX2Zyb21fcGF0aCBidXQgbG9va3VwIGJ5IG5hbWUuCisgKi8KIGNvbnN0IHN0cnVjdCBzdWJtb2R1bGUgKnN1Ym1vZHVsZV9mcm9tX25hbWUoc3RydWN0IHJlcG9zaXRvcnkgKnIsCiAJCQkJCSAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpjb21taXRfb3JfdHJlZSwKIAkJCQkJICAgIGNvbnN0IGNoYXIgKm5hbWUpOworCisvKioKKyAqIEdpdmVuIGEgdHJlZS1pc2ggaW4gdGhlIHN1cGVycHJvamVjdCBhbmQgYSBwYXRoLCByZXR1cm4gdGhlIHN1Ym1vZHVsZSB0aGF0CisgKiBpcyBib3VuZCBhdCB0aGUgcGF0aCBpbiB0aGUgbmFtZWQgdHJlZS4KKyAqLwogY29uc3Qgc3RydWN0IHN1Ym1vZHVsZSAqc3VibW9kdWxlX2Zyb21fcGF0aChzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKIAkJCQkJICAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKmNvbW1pdF9vcl90cmVlLAogCQkJCQkgICAgY29uc3QgY2hhciAqcGF0aCk7CisKKy8qKgorICogVXNlIHRoZXNlIHRvIGZyZWUgdGhlIGludGVybmFsbHkgY2FjaGVkIHZhbHVlcy4KKyAqLwogdm9pZCBzdWJtb2R1bGVfZnJlZShzdHJ1Y3QgcmVwb3NpdG9yeSAqcik7CisKIGludCBwcmludF9jb25maWdfZnJvbV9naXRtb2R1bGVzKHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLCBjb25zdCBjaGFyICprZXkpOwogaW50IGNvbmZpZ19zZXRfaW5fZ2l0bW9kdWxlc19maWxlX2dlbnRseShjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKnZhbHVlKTsKIApAQCAtNjYsNyArMTAyLDcgQEAKICAqIE5ldyBoZWxwZXJzIHRvIHJldHJpZXZlIGFyYml0cmFyeSBjb25maWd1cmF0aW9uIGZyb20gdGhlICcuZ2l0bW9kdWxlcycgZmlsZQogICogc2hvdWxkIE5PVCBiZSBhZGRlZC4KICAqLwotZXh0ZXJuIHZvaWQgZmV0Y2hfY29uZmlnX2Zyb21fZ2l0bW9kdWxlcyhpbnQgKm1heF9jaGlsZHJlbiwgaW50ICpyZWN1cnNlX3N1Ym1vZHVsZXMpOwotZXh0ZXJuIHZvaWQgdXBkYXRlX2Nsb25lX2NvbmZpZ19mcm9tX2dpdG1vZHVsZXMoaW50ICptYXhfam9icyk7Cit2b2lkIGZldGNoX2NvbmZpZ19mcm9tX2dpdG1vZHVsZXMoaW50ICptYXhfY2hpbGRyZW4sIGludCAqcmVjdXJzZV9zdWJtb2R1bGVzKTsKK3ZvaWQgdXBkYXRlX2Nsb25lX2NvbmZpZ19mcm9tX2dpdG1vZHVsZXMoaW50ICptYXhfam9icyk7CiAKICNlbmRpZiAvKiBTVUJNT0RVTEVfQ09ORklHX0ggKi8KZGlmZiAtLWdpdCBhL3N1Ym1vZHVsZS5jIGIvc3VibW9kdWxlLmMKaW5kZXggMzdkMjliYi4uYzNhYWRmMyAxMDA2NDQKLS0tIGEvc3VibW9kdWxlLmMKKysrIGIvc3VibW9kdWxlLmMKQEAgLTEsNCArMSwzIEBACi0jZGVmaW5lIE5PX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogCiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJyZXBvc2l0b3J5LmgiCkBAIC0yNSw3ICsyNCw2IEBACiAjaW5jbHVkZSAiY29tbWl0LXJlYWNoLmgiCiAKIHN0YXRpYyBpbnQgY29uZmlnX3VwZGF0ZV9yZWN1cnNlX3N1Ym1vZHVsZXMgPSBSRUNVUlNFX1NVQk1PRFVMRVNfT0ZGOwotc3RhdGljIHN0cnVjdCBzdHJpbmdfbGlzdCBjaGFuZ2VkX3N1Ym1vZHVsZV9uYW1lcyA9IFNUUklOR19MSVNUX0lOSVRfRFVQOwogc3RhdGljIGludCBpbml0aWFsaXplZF9mZXRjaF9yZWZfdGlwczsKIHN0YXRpYyBzdHJ1Y3Qgb2lkX2FycmF5IHJlZl90aXBzX2JlZm9yZV9mZXRjaDsKIHN0YXRpYyBzdHJ1Y3Qgb2lkX2FycmF5IHJlZl90aXBzX2FmdGVyX2ZldGNoOwpAQCAtODQsNyArODIsNyBAQAogCWlmICgocG9zID49IDApICYmIChwb3MgPCBpc3RhdGUtPmNhY2hlX25yKSkgewogCQlzdHJ1Y3Qgc3RhdCBzdDsKIAkJaWYgKGxzdGF0KEdJVE1PRFVMRVNfRklMRSwgJnN0KSA9PSAwICYmCi0JCSAgICBpZV9tYXRjaF9zdGF0KGlzdGF0ZSwgaXN0YXRlLT5jYWNoZVtwb3NdLCAmc3QsIDApICYgREFUQV9DSEFOR0VEKQorCQkgICAgaWVfbW9kaWZpZWQoaXN0YXRlLCBpc3RhdGUtPmNhY2hlW3Bvc10sICZzdCwgMCkgJiBEQVRBX0NIQU5HRUQpCiAJCQlyZXR1cm4gMDsKIAl9CiAKQEAgLTQzMyw3ICs0MzEsMTEgQEAKIAllbHNlIGlmICghc3RyY21wKGFyZywgImRpcnR5IikpCiAJCWRpZmZvcHQtPmZsYWdzLmlnbm9yZV9kaXJ0eV9zdWJtb2R1bGVzID0gMTsKIAllbHNlIGlmIChzdHJjbXAoYXJnLCAibm9uZSIpKQotCQlkaWUoImJhZCAtLWlnbm9yZS1zdWJtb2R1bGVzIGFyZ3VtZW50OiAlcyIsIGFyZyk7CisJCWRpZShfKCJiYWQgLS1pZ25vcmUtc3VibW9kdWxlcyBhcmd1bWVudDogJXMiKSwgYXJnKTsKKwkvKgorCSAqIFBsZWFzZSB1cGRhdGUgX2dpdF9zdGF0dXMoKSBpbiBnaXQtY29tcGxldGlvbi5iYXNoIHdoZW4geW91CisJICogYWRkIG5ldyBvcHRpb25zCisJICovCiB9CiAKIHN0YXRpYyBpbnQgcHJlcGFyZV9zdWJtb2R1bGVfc3VtbWFyeShzdHJ1Y3QgcmV2X2luZm8gKnJldiwgY29uc3QgY2hhciAqcGF0aCwKQEAgLTQ1Nyw3ICs0NTksNyBAQAogCXJldHVybiBwcmVwYXJlX3JldmlzaW9uX3dhbGsocmV2KTsKIH0KIAotc3RhdGljIHZvaWQgcHJpbnRfc3VibW9kdWxlX3N1bW1hcnkoc3RydWN0IHJldl9pbmZvICpyZXYsIHN0cnVjdCBkaWZmX29wdGlvbnMgKm8pCitzdGF0aWMgdm9pZCBwcmludF9zdWJtb2R1bGVfc3VtbWFyeShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHJldl9pbmZvICpyZXYsIHN0cnVjdCBkaWZmX29wdGlvbnMgKm8pCiB7CiAJc3RhdGljIGNvbnN0IGNoYXIgZm9ybWF0W10gPSAiICAlbSAlcyI7CiAJc3RydWN0IHN0cmJ1ZiBzYiA9IFNUUkJVRl9JTklUOwpAQCAtNDY4LDcgKzQ3MCw4IEBACiAJCWN0eC5kYXRlX21vZGUgPSByZXYtPmRhdGVfbW9kZTsKIAkJY3R4Lm91dHB1dF9lbmNvZGluZyA9IGdldF9sb2dfb3V0cHV0X2VuY29kaW5nKCk7CiAJCXN0cmJ1Zl9zZXRsZW4oJnNiLCAwKTsKLQkJZm9ybWF0X2NvbW1pdF9tZXNzYWdlKGNvbW1pdCwgZm9ybWF0LCAmc2IsICZjdHgpOworCQlyZXBvX2Zvcm1hdF9jb21taXRfbWVzc2FnZShyLCBjb21taXQsIGZvcm1hdCwgJnNiLAorCQkJCSAgICAgICZjdHgpOwogCQlzdHJidWZfYWRkY2goJnNiLCAnXG4nKTsKIAkJaWYgKGNvbW1pdC0+b2JqZWN0LmZsYWdzICYgU1lNTUVUUklDX0xFRlQpCiAJCQlkaWZmX2VtaXRfc3VibW9kdWxlX2RlbChvLCBzYi5idWYpOwpAQCAtNDk1LDE0ICs0OTgsNTIgQEAKIAkJCSBERUZBVUxUX0dJVF9ESVJfRU5WSVJPTk1FTlQpOwogfQogCi0vKiBIZWxwZXIgZnVuY3Rpb24gdG8gZGlzcGxheSB0aGUgc3VibW9kdWxlIGhlYWRlciBsaW5lIHByaW9yIHRvIHRoZSBmdWxsCi0gKiBzdW1tYXJ5IG91dHB1dC4gSWYgaXQgY2FuIGxvY2F0ZSB0aGUgc3VibW9kdWxlIG9iamVjdHMgZGlyZWN0b3J5IGl0IHdpbGwKLSAqIGF0dGVtcHQgdG8gbG9va3VwIGJvdGggdGhlIGxlZnQgYW5kIHJpZ2h0IGNvbW1pdHMgYW5kIHB1dCB0aGVtIGludG8gdGhlCi0gKiBsZWZ0IGFuZCByaWdodCBwb2ludGVycy4KK3N0YXRpYyB2b2lkIHByZXBhcmVfc3VibW9kdWxlX3JlcG9fZW52X2luX2dpdGRpcihzdHJ1Y3QgYXJndl9hcnJheSAqb3V0KQoreworCXByZXBhcmVfc3VibW9kdWxlX3JlcG9fZW52X25vX2dpdF9kaXIob3V0KTsKKwlhcmd2X2FycmF5X3B1c2hmKG91dCwgIiVzPS4iLCBHSVRfRElSX0VOVklST05NRU5UKTsKK30KKworLyoKKyAqIEluaXRpYWxpemUgYSByZXBvc2l0b3J5IHN0cnVjdCBmb3IgYSBzdWJtb2R1bGUgYmFzZWQgb24gdGhlIHByb3ZpZGVkICdwYXRoJy4KKyAqCisgKiBVbmxpa2UgcmVwb19zdWJtb2R1bGVfaW5pdCwgdGhpcyB0b2xlcmF0ZXMgc3VibW9kdWxlcyBub3QgcHJlc2VudAorICogaW4gLmdpdG1vZHVsZXMuIFRoaXMgZnVuY3Rpb24gZXhpc3RzIG9ubHkgdG8gcHJlc2VydmUgaGlzdG9yaWNhbCBiZWhhdmlvciwKKyAqCisgKiBSZXR1cm5zIHRoZSByZXBvc2l0b3J5IHN0cnVjdCBvbiBzdWNjZXNzLAorICogTlVMTCB3aGVuIHRoZSBzdWJtb2R1bGUgaXMgbm90IHByZXNlbnQuCiAgKi8KLXN0YXRpYyB2b2lkIHNob3dfc3VibW9kdWxlX2hlYWRlcihzdHJ1Y3QgZGlmZl9vcHRpb25zICpvLCBjb25zdCBjaGFyICpwYXRoLAorc3RhdGljIHN0cnVjdCByZXBvc2l0b3J5ICpvcGVuX3N1Ym1vZHVsZShjb25zdCBjaGFyICpwYXRoKQoreworCXN0cnVjdCBzdHJidWYgc2IgPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3QgcmVwb3NpdG9yeSAqb3V0ID0geG1hbGxvYyhzaXplb2YoKm91dCkpOworCisJaWYgKHN1Ym1vZHVsZV90b19naXRkaXIoJnNiLCBwYXRoKSB8fCByZXBvX2luaXQob3V0LCBzYi5idWYsIE5VTEwpKSB7CisJCXN0cmJ1Zl9yZWxlYXNlKCZzYik7CisJCWZyZWUob3V0KTsKKwkJcmV0dXJuIE5VTEw7CisJfQorCisJLyogTWFyayBpdCBhcyBhIHN1Ym1vZHVsZSAqLworCW91dC0+c3VibW9kdWxlX3ByZWZpeCA9IHhzdHJkdXAocGF0aCk7CisKKwlzdHJidWZfcmVsZWFzZSgmc2IpOworCXJldHVybiBvdXQ7Cit9CisKKy8qCisgKiBIZWxwZXIgZnVuY3Rpb24gdG8gZGlzcGxheSB0aGUgc3VibW9kdWxlIGhlYWRlciBsaW5lIHByaW9yIHRvIHRoZSBmdWxsCisgKiBzdW1tYXJ5IG91dHB1dC4KKyAqCisgKiBJZiBpdCBjYW4gbG9jYXRlIHRoZSBzdWJtb2R1bGUgZ2l0IGRpcmVjdG9yeSBpdCB3aWxsIGNyZWF0ZSBhIHJlcG9zaXRvcnkKKyAqIGhhbmRsZSBmb3IgdGhlIHN1Ym1vZHVsZSBhbmQgbG9va3VwIGJvdGggdGhlIGxlZnQgYW5kIHJpZ2h0IGNvbW1pdHMgYW5kCisgKiBwdXQgdGhlbSBpbnRvIHRoZSBsZWZ0IGFuZCByaWdodCBwb2ludGVycy4KKyAqLworc3RhdGljIHZvaWQgc2hvd19zdWJtb2R1bGVfaGVhZGVyKHN0cnVjdCBkaWZmX29wdGlvbnMgKm8sCisJCWNvbnN0IGNoYXIgKnBhdGgsCiAJCXN0cnVjdCBvYmplY3RfaWQgKm9uZSwgc3RydWN0IG9iamVjdF9pZCAqdHdvLAogCQl1bnNpZ25lZCBkaXJ0eV9zdWJtb2R1bGUsCisJCXN0cnVjdCByZXBvc2l0b3J5ICpzdWIsCiAJCXN0cnVjdCBjb21taXQgKipsZWZ0LCBzdHJ1Y3QgY29tbWl0ICoqcmlnaHQsCiAJCXN0cnVjdCBjb21taXRfbGlzdCAqKm1lcmdlX2Jhc2VzKQogewpAQCAtNTIxLDcgKzU2Miw3IEBACiAJZWxzZSBpZiAoaXNfbnVsbF9vaWQodHdvKSkKIAkJbWVzc2FnZSA9ICIoc3VibW9kdWxlIGRlbGV0ZWQpIjsKIAotCWlmIChhZGRfc3VibW9kdWxlX29kYihwYXRoKSkgeworCWlmICghc3ViKSB7CiAJCWlmICghbWVzc2FnZSkKIAkJCW1lc3NhZ2UgPSAiKGNvbW1pdHMgbm90IHByZXNlbnQpIjsKIAkJZ290byBvdXRwdXRfaGVhZGVyOwpAQCAtNTMxLDggKzU3Miw4IEBACiAJICogQXR0ZW1wdCB0byBsb29rdXAgdGhlIGNvbW1pdCByZWZlcmVuY2VzLCBhbmQgZGV0ZXJtaW5lIGlmIHRoaXMgaXMKIAkgKiBhIGZhc3QgZm9yd2FyZCBvciBmYXN0IGJhY2t3YXJkcyB1cGRhdGUuCiAJICovCi0JKmxlZnQgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZSh0aGVfcmVwb3NpdG9yeSwgb25lKTsKLQkqcmlnaHQgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZSh0aGVfcmVwb3NpdG9yeSwgdHdvKTsKKwkqbGVmdCA9IGxvb2t1cF9jb21taXRfcmVmZXJlbmNlKHN1Yiwgb25lKTsKKwkqcmlnaHQgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZShzdWIsIHR3byk7CiAKIAkvKgogCSAqIFdhcm4gYWJvdXQgbWlzc2luZyBjb21taXRzIGluIHRoZSBzdWJtb2R1bGUgcHJvamVjdCwgYnV0IG9ubHkgaWYKQEAgLTU0Miw3ICs1ODMsNyBAQAogCSAgICAgKCFpc19udWxsX29pZCh0d28pICYmICEqcmlnaHQpKQogCQltZXNzYWdlID0gIihjb21taXRzIG5vdCBwcmVzZW50KSI7CiAKLQkqbWVyZ2VfYmFzZXMgPSBnZXRfbWVyZ2VfYmFzZXMoKmxlZnQsICpyaWdodCk7CisJKm1lcmdlX2Jhc2VzID0gcmVwb19nZXRfbWVyZ2VfYmFzZXMoc3ViLCAqbGVmdCwgKnJpZ2h0KTsKIAlpZiAoKm1lcmdlX2Jhc2VzKSB7CiAJCWlmICgoKm1lcmdlX2Jhc2VzKS0+aXRlbSA9PSAqbGVmdCkKIAkJCWZhc3RfZm9yd2FyZCA9IDE7CkBAIC01NzYsMTYgKzYxNywxOCBAQAogCXN0cnVjdCByZXZfaW5mbyByZXY7CiAJc3RydWN0IGNvbW1pdCAqbGVmdCA9IE5VTEwsICpyaWdodCA9IE5VTEw7CiAJc3RydWN0IGNvbW1pdF9saXN0ICptZXJnZV9iYXNlcyA9IE5VTEw7CisJc3RydWN0IHJlcG9zaXRvcnkgKnN1YjsKIAorCXN1YiA9IG9wZW5fc3VibW9kdWxlKHBhdGgpOwogCXNob3dfc3VibW9kdWxlX2hlYWRlcihvLCBwYXRoLCBvbmUsIHR3bywgZGlydHlfc3VibW9kdWxlLAotCQkJICAgICAgJmxlZnQsICZyaWdodCwgJm1lcmdlX2Jhc2VzKTsKKwkJCSAgICAgIHN1YiwgJmxlZnQsICZyaWdodCwgJm1lcmdlX2Jhc2VzKTsKIAogCS8qCiAJICogSWYgd2UgZG9uJ3QgaGF2ZSBib3RoIGEgbGVmdCBhbmQgYSByaWdodCBwb2ludGVyLCB0aGVyZSBpcyBubwogCSAqIHJlYXNvbiB0byB0cnkgYW5kIGRpc3BsYXkgYSBzdW1tYXJ5LiBUaGUgaGVhZGVyIGxpbmUgc2hvdWxkIGNvbnRhaW4KIAkgKiBhbGwgdGhlIGluZm9ybWF0aW9uIHRoZSB1c2VyIG5lZWRzLgogCSAqLwotCWlmICghbGVmdCB8fCAhcmlnaHQpCisJaWYgKCFsZWZ0IHx8ICFyaWdodCB8fCAhc3ViKQogCQlnb3RvIG91dDsKIAogCS8qIFRyZWF0IHJldmlzaW9uIHdhbGtlciBmYWlsdXJlIHRoZSBzYW1lIGFzIG1pc3NpbmcgY29tbWl0cyAqLwpAQCAtNTk0LDEzICs2MzcsMTcgQEAKIAkJZ290byBvdXQ7CiAJfQogCi0JcHJpbnRfc3VibW9kdWxlX3N1bW1hcnkoJnJldiwgbyk7CisJcHJpbnRfc3VibW9kdWxlX3N1bW1hcnkoc3ViLCAmcmV2LCBvKTsKIAogb3V0OgogCWlmIChtZXJnZV9iYXNlcykKIAkJZnJlZV9jb21taXRfbGlzdChtZXJnZV9iYXNlcyk7CiAJY2xlYXJfY29tbWl0X21hcmtzKGxlZnQsIH4wKTsKIAljbGVhcl9jb21taXRfbWFya3MocmlnaHQsIH4wKTsKKwlpZiAoc3ViKSB7CisJCXJlcG9fY2xlYXIoc3ViKTsKKwkJZnJlZShzdWIpOworCX0KIH0KIAogdm9pZCBzaG93X3N1Ym1vZHVsZV9pbmxpbmVfZGlmZihzdHJ1Y3QgZGlmZl9vcHRpb25zICpvLCBjb25zdCBjaGFyICpwYXRoLApAQCAtNjEyLDkgKzY1OSwxMSBAQAogCXN0cnVjdCBjb21taXRfbGlzdCAqbWVyZ2VfYmFzZXMgPSBOVUxMOwogCXN0cnVjdCBjaGlsZF9wcm9jZXNzIGNwID0gQ0hJTERfUFJPQ0VTU19JTklUOwogCXN0cnVjdCBzdHJidWYgc2IgPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3QgcmVwb3NpdG9yeSAqc3ViOwogCisJc3ViID0gb3Blbl9zdWJtb2R1bGUocGF0aCk7CiAJc2hvd19zdWJtb2R1bGVfaGVhZGVyKG8sIHBhdGgsIG9uZSwgdHdvLCBkaXJ0eV9zdWJtb2R1bGUsCi0JCQkgICAgICAmbGVmdCwgJnJpZ2h0LCAmbWVyZ2VfYmFzZXMpOworCQkJICAgICAgc3ViLCAmbGVmdCwgJnJpZ2h0LCAmbWVyZ2VfYmFzZXMpOwogCiAJLyogV2UgbmVlZCBhIHZhbGlkIGxlZnQgYW5kIHJpZ2h0IGNvbW1pdCB0byBkaXNwbGF5IGEgZGlmZmVyZW5jZSAqLwogCWlmICghKGxlZnQgfHwgaXNfbnVsbF9vaWQob25lKSkgfHwKQEAgLTY3NSw2ICs3MjQsMTAgQEAKIAkJY2xlYXJfY29tbWl0X21hcmtzKGxlZnQsIH4wKTsKIAlpZiAocmlnaHQpCiAJCWNsZWFyX2NvbW1pdF9tYXJrcyhyaWdodCwgfjApOworCWlmIChzdWIpIHsKKwkJcmVwb19jbGVhcihzdWIpOworCQlmcmVlKHN1Yik7CisJfQogfQogCiBpbnQgc2hvdWxkX3VwZGF0ZV9zdWJtb2R1bGVzKHZvaWQpCkBAIC03NTksOSArODEyLDkgQEAKIAkJCQlzdWJtb2R1bGUgPSBzdWJtb2R1bGVfZnJvbV9uYW1lKG1lLT5yZXBvLAogCQkJCQkJCQljb21taXRfb2lkLCBuYW1lKTsKIAkJCWlmIChzdWJtb2R1bGUpIHsKLQkJCQl3YXJuaW5nKCJTdWJtb2R1bGUgaW4gY29tbWl0ICVzIGF0IHBhdGg6ICIKKwkJCQl3YXJuaW5nKF8oIlN1Ym1vZHVsZSBpbiBjb21taXQgJXMgYXQgcGF0aDogIgogCQkJCQkiJyVzJyBjb2xsaWRlcyB3aXRoIGEgc3VibW9kdWxlIG5hbWVkICIKLQkJCQkJInRoZSBzYW1lLiBTa2lwcGluZyBpdC4iLAorCQkJCQkidGhlIHNhbWUuIFNraXBwaW5nIGl0LiIpLAogCQkJCQlvaWRfdG9faGV4KGNvbW1pdF9vaWQpLCBwLT50d28tPnBhdGgpOwogCQkJCW5hbWUgPSBOVUxMOwogCQkJfQpAQCAtNzkxLDcgKzg0NCw3IEBACiAJcmVwb19pbml0X3JldmlzaW9ucyhyLCAmcmV2LCBOVUxMKTsKIAlzZXR1cF9yZXZpc2lvbnMoYXJndi0+YXJnYywgYXJndi0+YXJndiwgJnJldiwgTlVMTCk7CiAJaWYgKHByZXBhcmVfcmV2aXNpb25fd2FsaygmcmV2KSkKLQkJZGllKCJyZXZpc2lvbiB3YWxrIHNldHVwIGZhaWxlZCIpOworCQlkaWUoXygicmV2aXNpb24gd2FsayBzZXR1cCBmYWlsZWQiKSk7CiAKIAl3aGlsZSAoKGNvbW1pdCA9IGdldF9yZXZpc2lvbigmcmV2KSkpIHsKIAkJc3RydWN0IHJldl9pbmZvIGRpZmZfcmV2OwpAQCAtOTM5LDkgKzk5Miw5IEBACiAJCWNwLm91dCA9IC0xOwogCQljcC5kaXIgPSBwYXRoOwogCQlpZiAoc3RhcnRfY29tbWFuZCgmY3ApKQotCQkJZGllKCJDb3VsZCBub3QgcnVuICdnaXQgcmV2LWxpc3QgPGNvbW1pdHM+IC0tbm90IC0tcmVtb3RlcyAtbiAxJyBjb21tYW5kIGluIHN1Ym1vZHVsZSAlcyIsCisJCQlkaWUoXygiQ291bGQgbm90IHJ1biAnZ2l0IHJldi1saXN0IDxjb21taXRzPiAtLW5vdCAtLXJlbW90ZXMgLW4gMScgY29tbWFuZCBpbiBzdWJtb2R1bGUgJXMiKSwKIAkJCQkJcGF0aCk7Ci0JCWlmIChzdHJidWZfcmVhZCgmYnVmLCBjcC5vdXQsIDQxKSkKKwkJaWYgKHN0cmJ1Zl9yZWFkKCZidWYsIGNwLm91dCwgdGhlX2hhc2hfYWxnby0+aGV4c3ogKyAxKSkKIAkJCW5lZWRzX3B1c2hpbmcgPSAxOwogCQlmaW5pc2hfY29tbWFuZCgmY3ApOwogCQljbG9zZShjcC5vdXQpOwpAQCAtOTk5LDkgKzEwNTIsNiBAQAogCQkJICBjb25zdCBzdHJ1Y3Qgc3RyaW5nX2xpc3QgKnB1c2hfb3B0aW9ucywKIAkJCSAgaW50IGRyeV9ydW4pCiB7Ci0JaWYgKGFkZF9zdWJtb2R1bGVfb2RiKHBhdGgpKQotCQlyZXR1cm4gMTsKLQogCWlmIChmb3JfZWFjaF9yZW1vdGVfcmVmX3N1Ym1vZHVsZShwYXRoLCBoYXNfcmVtb3RlLCBOVUxMKSA+IDApIHsKIAkJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CiAJCWFyZ3ZfYXJyYXlfcHVzaCgmY3AuYXJncywgInB1c2giKTsKQEAgLTEwNjUsNyArMTExNSw3IEBACiAJICogY2hpbGQgcHJvY2Vzcy4KIAkgKi8KIAlpZiAocnVuX2NvbW1hbmQoJmNwKSkKLQkJZGllKCJwcm9jZXNzIGZvciBzdWJtb2R1bGUgJyVzJyBmYWlsZWQiLCBwYXRoKTsKKwkJZGllKF8oInByb2Nlc3MgZm9yIHN1Ym1vZHVsZSAnJXMnIGZhaWxlZCIpLCBwYXRoKTsKIH0KIAogaW50IHB1c2hfdW5wdXNoZWRfc3VibW9kdWxlcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKQEAgLTExMDUsMTAgKzExNTUsMTAgQEAKIAkvKiBBY3R1YWxseSBwdXNoIHRoZSBzdWJtb2R1bGVzICovCiAJZm9yIChpID0gMDsgaSA8IG5lZWRzX3B1c2hpbmcubnI7IGkrKykgewogCQljb25zdCBjaGFyICpwYXRoID0gbmVlZHNfcHVzaGluZy5pdGVtc1tpXS5zdHJpbmc7Ci0JCWZwcmludGYoc3RkZXJyLCAiUHVzaGluZyBzdWJtb2R1bGUgJyVzJ1xuIiwgcGF0aCk7CisJCWZwcmludGYoc3RkZXJyLCBfKCJQdXNoaW5nIHN1Ym1vZHVsZSAnJXMnXG4iKSwgcGF0aCk7CiAJCWlmICghcHVzaF9zdWJtb2R1bGUocGF0aCwgcmVtb3RlLCBycywKIAkJCQkgICAgcHVzaF9vcHRpb25zLCBkcnlfcnVuKSkgewotCQkJZnByaW50ZihzdGRlcnIsICJVbmFibGUgdG8gcHVzaCBzdWJtb2R1bGUgJyVzJ1xuIiwgcGF0aCk7CisJCQlmcHJpbnRmKHN0ZGVyciwgXygiVW5hYmxlIHRvIHB1c2ggc3VibW9kdWxlICclcydcbiIpLCBwYXRoKTsKIAkJCXJldCA9IDA7CiAJCX0KIAl9CkBAIC0xMTM2LDExICsxMTg2LDExIEBACiAJb2lkX2FycmF5X2FwcGVuZCgmcmVmX3RpcHNfYWZ0ZXJfZmV0Y2gsIG9pZCk7CiB9CiAKLXN0YXRpYyB2b2lkIGNhbGN1bGF0ZV9jaGFuZ2VkX3N1Ym1vZHVsZV9wYXRocyhzdHJ1Y3QgcmVwb3NpdG9yeSAqcikKK3N0YXRpYyB2b2lkIGNhbGN1bGF0ZV9jaGFuZ2VkX3N1Ym1vZHVsZV9wYXRocyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJc3RydWN0IHN0cmluZ19saXN0ICpjaGFuZ2VkX3N1Ym1vZHVsZV9uYW1lcykKIHsKIAlzdHJ1Y3QgYXJndl9hcnJheSBhcmd2ID0gQVJHVl9BUlJBWV9JTklUOwotCXN0cnVjdCBzdHJpbmdfbGlzdCBjaGFuZ2VkX3N1Ym1vZHVsZXMgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKLQljb25zdCBzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqbmFtZTsKKwlzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqbmFtZTsKIAogCS8qIE5vIG5lZWQgdG8gY2hlY2sgaWYgdGhlcmUgYXJlIG5vIHN1Ym1vZHVsZXMgY29uZmlndXJlZCAqLwogCWlmICghc3VibW9kdWxlX2Zyb21fcGF0aChyLCBOVUxMLCBOVUxMKSkKQEAgLTExNTcsOSArMTIwNyw5IEBACiAJICogQ29sbGVjdCBhbGwgc3VibW9kdWxlcyAod2hldGhlciBjaGVja2VkIG91dCBvciBub3QpIGZvciB3aGljaCBuZXcKIAkgKiBjb21taXRzIGhhdmUgYmVlbiByZWNvcmRlZCB1cHN0cmVhbSBpbiAiY2hhbmdlZF9zdWJtb2R1bGVfbmFtZXMiLgogCSAqLwotCWNvbGxlY3RfY2hhbmdlZF9zdWJtb2R1bGVzKHIsICZjaGFuZ2VkX3N1Ym1vZHVsZXMsICZhcmd2KTsKKwljb2xsZWN0X2NoYW5nZWRfc3VibW9kdWxlcyhyLCBjaGFuZ2VkX3N1Ym1vZHVsZV9uYW1lcywgJmFyZ3YpOwogCi0JZm9yX2VhY2hfc3RyaW5nX2xpc3RfaXRlbShuYW1lLCAmY2hhbmdlZF9zdWJtb2R1bGVzKSB7CisJZm9yX2VhY2hfc3RyaW5nX2xpc3RfaXRlbShuYW1lLCBjaGFuZ2VkX3N1Ym1vZHVsZV9uYW1lcykgewogCQlzdHJ1Y3Qgb2lkX2FycmF5ICpjb21taXRzID0gbmFtZS0+dXRpbDsKIAkJY29uc3Qgc3RydWN0IHN1Ym1vZHVsZSAqc3VibW9kdWxlOwogCQljb25zdCBjaGFyICpwYXRoID0gTlVMTDsKQEAgLTExNzMsMTEgKzEyMjMsMTQgQEAKIAkJaWYgKCFwYXRoKQogCQkJY29udGludWU7CiAKLQkJaWYgKCFzdWJtb2R1bGVfaGFzX2NvbW1pdHMociwgcGF0aCwgY29tbWl0cykpCi0JCQlzdHJpbmdfbGlzdF9hcHBlbmQoJmNoYW5nZWRfc3VibW9kdWxlX25hbWVzLCBuYW1lLT5zdHJpbmcpOworCQlpZiAoc3VibW9kdWxlX2hhc19jb21taXRzKHIsIHBhdGgsIGNvbW1pdHMpKSB7CisJCQlvaWRfYXJyYXlfY2xlYXIoY29tbWl0cyk7CisJCQkqbmFtZS0+c3RyaW5nID0gJ1wwJzsKKwkJfQogCX0KIAotCWZyZWVfc3VibW9kdWxlc19vaWRzKCZjaGFuZ2VkX3N1Ym1vZHVsZXMpOworCXN0cmluZ19saXN0X3JlbW92ZV9lbXB0eV9pdGVtcyhjaGFuZ2VkX3N1Ym1vZHVsZV9uYW1lcywgMSk7CisKIAlhcmd2X2FycmF5X2NsZWFyKCZhcmd2KTsKIAlvaWRfYXJyYXlfY2xlYXIoJnJlZl90aXBzX2JlZm9yZV9mZXRjaCk7CiAJb2lkX2FycmF5X2NsZWFyKCZyZWZfdGlwc19hZnRlcl9mZXRjaCk7CkBAIC0xMjIxLDggKzEyNzQsMTggQEAKIAlpbnQgZGVmYXVsdF9vcHRpb247CiAJaW50IHF1aWV0OwogCWludCByZXN1bHQ7CisKKwlzdHJ1Y3Qgc3RyaW5nX2xpc3QgY2hhbmdlZF9zdWJtb2R1bGVfbmFtZXM7CisKKwkvKiBQZW5kaW5nIGZldGNoZXMgYnkgT0lEcyAqLworCXN0cnVjdCBmZXRjaF90YXNrICoqb2lkX2ZldGNoX3Rhc2tzOworCWludCBvaWRfZmV0Y2hfdGFza3NfbnIsIG9pZF9mZXRjaF90YXNrc19hbGxvYzsKKworCXN0cnVjdCBzdHJidWYgc3VibW9kdWxlc193aXRoX2Vycm9yczsKIH07Ci0jZGVmaW5lIFNQRl9JTklUIHswLCBBUkdWX0FSUkFZX0lOSVQsIE5VTEwsIE5VTEwsIDAsIDAsIDAsIDB9CisjZGVmaW5lIFNQRl9JTklUIHswLCBBUkdWX0FSUkFZX0lOSVQsIE5VTEwsIE5VTEwsIDAsIDAsIDAsIDAsIFwKKwkJICBTVFJJTkdfTElTVF9JTklUX0RVUCwgXAorCQkgIE5VTEwsIDAsIDAsIFNUUkJVRl9JTklUfQogCiBzdGF0aWMgaW50IGdldF9mZXRjaF9yZWN1cnNlX2NvbmZpZyhjb25zdCBzdHJ1Y3Qgc3VibW9kdWxlICpzdWJtb2R1bGUsCiAJCQkJICAgIHN0cnVjdCBzdWJtb2R1bGVfcGFyYWxsZWxfZmV0Y2ggKnNwZikKQEAgLTEyNDksNDAgKzEzMTIsMTI2IEBACiAJcmV0dXJuIHNwZi0+ZGVmYXVsdF9vcHRpb247CiB9CiAKKy8qCisgKiBGZXRjaCBpbiBwcm9ncmVzcyAoaWYgY2FsbGJhY2sgZGF0YSkgb3IKKyAqIHBlbmRpbmcgKGlmIGluIG9pZF9mZXRjaF90YXNrcyBpbiBzdHJ1Y3Qgc3VibW9kdWxlX3BhcmFsbGVsX2ZldGNoKQorICovCitzdHJ1Y3QgZmV0Y2hfdGFzayB7CisJc3RydWN0IHJlcG9zaXRvcnkgKnJlcG87CisJY29uc3Qgc3RydWN0IHN1Ym1vZHVsZSAqc3ViOworCXVuc2lnbmVkIGZyZWVfc3ViIDogMTsgLyogRG8gd2UgbmVlZCB0byBmcmVlIHRoZSBzdWJtb2R1bGU/ICovCisKKwlzdHJ1Y3Qgb2lkX2FycmF5ICpjb21taXRzOyAvKiBFbnN1cmUgdGhlc2UgY29tbWl0cyBhcmUgZmV0Y2hlZCAqLworfTsKKworLyoqCisgKiBXaGVuIGEgc3VibW9kdWxlIGlzIG5vdCBkZWZpbmVkIGluIC5naXRtb2R1bGVzLCB3ZSBjYW5ub3QgYWNjZXNzIGl0CisgKiB2aWEgdGhlIHJlZ3VsYXIgc3VibW9kdWxlLWNvbmZpZy4gQ3JlYXRlIGEgZmFrZSBzdWJtb2R1bGUsIHdoaWNoIHdlIGNhbgorICogd29yayBvbi4KKyAqLworc3RhdGljIGNvbnN0IHN0cnVjdCBzdWJtb2R1bGUgKmdldF9ub25fZ2l0bW9kdWxlc19zdWJtb2R1bGUoY29uc3QgY2hhciAqcGF0aCkKK3sKKwlzdHJ1Y3Qgc3VibW9kdWxlICpyZXQgPSBOVUxMOworCWNvbnN0IGNoYXIgKm5hbWUgPSBkZWZhdWx0X25hbWVfb3JfcGF0aChwYXRoKTsKKworCWlmICghbmFtZSkKKwkJcmV0dXJuIE5VTEw7CisKKwlyZXQgPSB4bWFsbG9jKHNpemVvZigqcmV0KSk7CisJbWVtc2V0KHJldCwgMCwgc2l6ZW9mKCpyZXQpKTsKKwlyZXQtPnBhdGggPSBuYW1lOworCXJldC0+bmFtZSA9IG5hbWU7CisKKwlyZXR1cm4gKGNvbnN0IHN0cnVjdCBzdWJtb2R1bGUgKikgcmV0OworfQorCitzdGF0aWMgc3RydWN0IGZldGNoX3Rhc2sgKmZldGNoX3Rhc2tfY3JlYXRlKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQkgICAgY29uc3QgY2hhciAqcGF0aCkKK3sKKwlzdHJ1Y3QgZmV0Y2hfdGFzayAqdGFzayA9IHhtYWxsb2Moc2l6ZW9mKCp0YXNrKSk7CisJbWVtc2V0KHRhc2ssIDAsIHNpemVvZigqdGFzaykpOworCisJdGFzay0+c3ViID0gc3VibW9kdWxlX2Zyb21fcGF0aChyLCAmbnVsbF9vaWQsIHBhdGgpOworCWlmICghdGFzay0+c3ViKSB7CisJCS8qCisJCSAqIE5vIGVudHJ5IGluIC5naXRtb2R1bGVzPyBUZWNobmljYWxseSBub3QgYSBzdWJtb2R1bGUsCisJCSAqIGJ1dCBoaXN0b3JpY2FsbHkgd2Ugc3VwcG9ydGVkIHJlcG9zaXRvcmllcyB0aGF0IGhhcHBlbiB0byBiZQorCQkgKiBpbi1wbGFjZSB3aGVyZSBhIGdpdGxpbmsgaXMuIEtlZXAgc3VwcG9ydGluZyB0aGVtLgorCQkgKi8KKwkJdGFzay0+c3ViID0gZ2V0X25vbl9naXRtb2R1bGVzX3N1Ym1vZHVsZShwYXRoKTsKKwkJaWYgKCF0YXNrLT5zdWIpIHsKKwkJCWZyZWUodGFzayk7CisJCQlyZXR1cm4gTlVMTDsKKwkJfQorCisJCXRhc2stPmZyZWVfc3ViID0gMTsKKwl9CisKKwlyZXR1cm4gdGFzazsKK30KKworc3RhdGljIHZvaWQgZmV0Y2hfdGFza19yZWxlYXNlKHN0cnVjdCBmZXRjaF90YXNrICpwKQoreworCWlmIChwLT5mcmVlX3N1YikKKwkJZnJlZSgodm9pZCopcC0+c3ViKTsKKwlwLT5mcmVlX3N1YiA9IDA7CisJcC0+c3ViID0gTlVMTDsKKworCWlmIChwLT5yZXBvKQorCQlyZXBvX2NsZWFyKHAtPnJlcG8pOworCUZSRUVfQU5EX05VTEwocC0+cmVwbyk7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgcmVwb3NpdG9yeSAqZ2V0X3N1Ym1vZHVsZV9yZXBvX2ZvcihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJCSBjb25zdCBzdHJ1Y3Qgc3VibW9kdWxlICpzdWIpCit7CisJc3RydWN0IHJlcG9zaXRvcnkgKnJldCA9IHhtYWxsb2Moc2l6ZW9mKCpyZXQpKTsKKworCWlmIChyZXBvX3N1Ym1vZHVsZV9pbml0KHJldCwgciwgc3ViKSkgeworCQkvKgorCQkgKiBObyBlbnRyeSBpbiAuZ2l0bW9kdWxlcz8gVGVjaG5pY2FsbHkgbm90IGEgc3VibW9kdWxlLAorCQkgKiBidXQgaGlzdG9yaWNhbGx5IHdlIHN1cHBvcnRlZCByZXBvc2l0b3JpZXMgdGhhdCBoYXBwZW4gdG8gYmUKKwkJICogaW4tcGxhY2Ugd2hlcmUgYSBnaXRsaW5rIGlzLiBLZWVwIHN1cHBvcnRpbmcgdGhlbS4KKwkJICovCisJCXN0cnVjdCBzdHJidWYgZ2l0ZGlyID0gU1RSQlVGX0lOSVQ7CisJCXN0cmJ1Zl9yZXBvX3dvcmt0cmVlX3BhdGgoJmdpdGRpciwgciwgIiVzLy5naXQiLCBzdWItPnBhdGgpOworCQlpZiAocmVwb19pbml0KHJldCwgZ2l0ZGlyLmJ1ZiwgTlVMTCkpIHsKKwkJCXN0cmJ1Zl9yZWxlYXNlKCZnaXRkaXIpOworCQkJZnJlZShyZXQpOworCQkJcmV0dXJuIE5VTEw7CisJCX0KKwkJc3RyYnVmX3JlbGVhc2UoJmdpdGRpcik7CisJfQorCisJcmV0dXJuIHJldDsKK30KKwogc3RhdGljIGludCBnZXRfbmV4dF9zdWJtb2R1bGUoc3RydWN0IGNoaWxkX3Byb2Nlc3MgKmNwLAogCQkJICAgICAgc3RydWN0IHN0cmJ1ZiAqZXJyLCB2b2lkICpkYXRhLCB2b2lkICoqdGFza19jYikKIHsKLQlpbnQgcmV0ID0gMDsKIAlzdHJ1Y3Qgc3VibW9kdWxlX3BhcmFsbGVsX2ZldGNoICpzcGYgPSBkYXRhOwogCiAJZm9yICg7IHNwZi0+Y291bnQgPCBzcGYtPnItPmluZGV4LT5jYWNoZV9ucjsgc3BmLT5jb3VudCsrKSB7Ci0JCXN0cnVjdCBzdHJidWYgc3VibW9kdWxlX3BhdGggPSBTVFJCVUZfSU5JVDsKLQkJc3RydWN0IHN0cmJ1ZiBzdWJtb2R1bGVfZ2l0X2RpciA9IFNUUkJVRl9JTklUOwotCQlzdHJ1Y3Qgc3RyYnVmIHN1Ym1vZHVsZV9wcmVmaXggPSBTVFJCVUZfSU5JVDsKIAkJY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSA9IHNwZi0+ci0+aW5kZXgtPmNhY2hlW3NwZi0+Y291bnRdOwotCQljb25zdCBjaGFyICpnaXRfZGlyLCAqZGVmYXVsdF9hcmd2OwotCQljb25zdCBzdHJ1Y3Qgc3VibW9kdWxlICpzdWJtb2R1bGU7Ci0JCXN0cnVjdCBzdWJtb2R1bGUgZGVmYXVsdF9zdWJtb2R1bGUgPSBTVUJNT0RVTEVfSU5JVDsKKwkJY29uc3QgY2hhciAqZGVmYXVsdF9hcmd2OworCQlzdHJ1Y3QgZmV0Y2hfdGFzayAqdGFzazsKIAogCQlpZiAoIVNfSVNHSVRMSU5LKGNlLT5jZV9tb2RlKSkKIAkJCWNvbnRpbnVlOwogCi0JCXN1Ym1vZHVsZSA9IHN1Ym1vZHVsZV9mcm9tX3BhdGgoc3BmLT5yLCAmbnVsbF9vaWQsIGNlLT5uYW1lKTsKLQkJaWYgKCFzdWJtb2R1bGUpIHsKLQkJCWNvbnN0IGNoYXIgKm5hbWUgPSBkZWZhdWx0X25hbWVfb3JfcGF0aChjZS0+bmFtZSk7Ci0JCQlpZiAobmFtZSkgewotCQkJCWRlZmF1bHRfc3VibW9kdWxlLnBhdGggPSBkZWZhdWx0X3N1Ym1vZHVsZS5uYW1lID0gbmFtZTsKLQkJCQlzdWJtb2R1bGUgPSAmZGVmYXVsdF9zdWJtb2R1bGU7Ci0JCQl9Ci0JCX0KKwkJdGFzayA9IGZldGNoX3Rhc2tfY3JlYXRlKHNwZi0+ciwgY2UtPm5hbWUpOworCQlpZiAoIXRhc2spCisJCQljb250aW51ZTsKIAotCQlzd2l0Y2ggKGdldF9mZXRjaF9yZWN1cnNlX2NvbmZpZyhzdWJtb2R1bGUsIHNwZikpCisJCXN3aXRjaCAoZ2V0X2ZldGNoX3JlY3Vyc2VfY29uZmlnKHRhc2stPnN1Yiwgc3BmKSkKIAkJewogCQlkZWZhdWx0OgogCQljYXNlIFJFQ1VSU0VfU1VCTU9EVUxFU19ERUZBVUxUOgogCQljYXNlIFJFQ1VSU0VfU1VCTU9EVUxFU19PTl9ERU1BTkQ6Ci0JCQlpZiAoIXN1Ym1vZHVsZSB8fCAhdW5zb3J0ZWRfc3RyaW5nX2xpc3RfbG9va3VwKCZjaGFuZ2VkX3N1Ym1vZHVsZV9uYW1lcywKLQkJCQkJCQkgc3VibW9kdWxlLT5uYW1lKSkKKwkJCWlmICghdGFzay0+c3ViIHx8CisJCQkgICAgIXN0cmluZ19saXN0X2xvb2t1cCgKKwkJCQkJJnNwZi0+Y2hhbmdlZF9zdWJtb2R1bGVfbmFtZXMsCisJCQkJCXRhc2stPnN1Yi0+bmFtZSkpCiAJCQkJY29udGludWU7CiAJCQlkZWZhdWx0X2FyZ3YgPSAib24tZGVtYW5kIjsKIAkJCWJyZWFrOwpAQCAtMTI5MywzNSArMTQ0Miw4MCBAQAogCQkJY29udGludWU7CiAJCX0KIAotCQlzdHJidWZfcmVwb193b3JrdHJlZV9wYXRoKCZzdWJtb2R1bGVfcGF0aCwgc3BmLT5yLCAiJXMiLCBjZS0+bmFtZSk7Ci0JCXN0cmJ1Zl9hZGRmKCZzdWJtb2R1bGVfZ2l0X2RpciwgIiVzLy5naXQiLCBzdWJtb2R1bGVfcGF0aC5idWYpOwotCQlzdHJidWZfYWRkZigmc3VibW9kdWxlX3ByZWZpeCwgIiVzJXMvIiwgc3BmLT5wcmVmaXgsIGNlLT5uYW1lKTsKLQkJZ2l0X2RpciA9IHJlYWRfZ2l0ZmlsZShzdWJtb2R1bGVfZ2l0X2Rpci5idWYpOwotCQlpZiAoIWdpdF9kaXIpCi0JCQlnaXRfZGlyID0gc3VibW9kdWxlX2dpdF9kaXIuYnVmOwotCQlpZiAoaXNfZGlyZWN0b3J5KGdpdF9kaXIpKSB7CisJCXRhc2stPnJlcG8gPSBnZXRfc3VibW9kdWxlX3JlcG9fZm9yKHNwZi0+ciwgdGFzay0+c3ViKTsKKwkJaWYgKHRhc2stPnJlcG8pIHsKKwkJCXN0cnVjdCBzdHJidWYgc3VibW9kdWxlX3ByZWZpeCA9IFNUUkJVRl9JTklUOwogCQkJY2hpbGRfcHJvY2Vzc19pbml0KGNwKTsKLQkJCWNwLT5kaXIgPSBzdHJidWZfZGV0YWNoKCZzdWJtb2R1bGVfcGF0aCwgTlVMTCk7Ci0JCQlwcmVwYXJlX3N1Ym1vZHVsZV9yZXBvX2VudigmY3AtPmVudl9hcnJheSk7CisJCQljcC0+ZGlyID0gdGFzay0+cmVwby0+Z2l0ZGlyOworCQkJcHJlcGFyZV9zdWJtb2R1bGVfcmVwb19lbnZfaW5fZ2l0ZGlyKCZjcC0+ZW52X2FycmF5KTsKIAkJCWNwLT5naXRfY21kID0gMTsKIAkJCWlmICghc3BmLT5xdWlldCkKLQkJCQlzdHJidWZfYWRkZihlcnIsICJGZXRjaGluZyBzdWJtb2R1bGUgJXMlc1xuIiwKKwkJCQlzdHJidWZfYWRkZihlcnIsIF8oIkZldGNoaW5nIHN1Ym1vZHVsZSAlcyVzXG4iKSwKIAkJCQkJICAgIHNwZi0+cHJlZml4LCBjZS0+bmFtZSk7CiAJCQlhcmd2X2FycmF5X2luaXQoJmNwLT5hcmdzKTsKIAkJCWFyZ3ZfYXJyYXlfcHVzaHYoJmNwLT5hcmdzLCBzcGYtPmFyZ3MuYXJndik7CiAJCQlhcmd2X2FycmF5X3B1c2goJmNwLT5hcmdzLCBkZWZhdWx0X2FyZ3YpOwogCQkJYXJndl9hcnJheV9wdXNoKCZjcC0+YXJncywgIi0tc3VibW9kdWxlLXByZWZpeCIpOworCisJCQlzdHJidWZfYWRkZigmc3VibW9kdWxlX3ByZWZpeCwgIiVzJXMvIiwKKwkJCQkJCSAgICAgICBzcGYtPnByZWZpeCwKKwkJCQkJCSAgICAgICB0YXNrLT5zdWItPnBhdGgpOwogCQkJYXJndl9hcnJheV9wdXNoKCZjcC0+YXJncywgc3VibW9kdWxlX3ByZWZpeC5idWYpOwotCQkJcmV0ID0gMTsKLQkJfQotCQlzdHJidWZfcmVsZWFzZSgmc3VibW9kdWxlX3BhdGgpOwotCQlzdHJidWZfcmVsZWFzZSgmc3VibW9kdWxlX2dpdF9kaXIpOwotCQlzdHJidWZfcmVsZWFzZSgmc3VibW9kdWxlX3ByZWZpeCk7Ci0JCWlmIChyZXQpIHsKKwogCQkJc3BmLT5jb3VudCsrOworCQkJKnRhc2tfY2IgPSB0YXNrOworCisJCQlzdHJidWZfcmVsZWFzZSgmc3VibW9kdWxlX3ByZWZpeCk7CiAJCQlyZXR1cm4gMTsKKwkJfSBlbHNlIHsKKworCQkJZmV0Y2hfdGFza19yZWxlYXNlKHRhc2spOworCQkJZnJlZSh0YXNrKTsKKworCQkJLyoKKwkJCSAqIEFuIGVtcHR5IGRpcmVjdG9yeSBpcyBub3JtYWwsCisJCQkgKiB0aGUgc3VibW9kdWxlIGlzIG5vdCBpbml0aWFsaXplZAorCQkJICovCisJCQlpZiAoU19JU0dJVExJTksoY2UtPmNlX21vZGUpICYmCisJCQkgICAgIWlzX2VtcHR5X2RpcihjZS0+bmFtZSkpIHsKKwkJCQlzcGYtPnJlc3VsdCA9IDE7CisJCQkJc3RyYnVmX2FkZGYoZXJyLAorCQkJCQkgICAgXygiQ291bGQgbm90IGFjY2VzcyBzdWJtb2R1bGUgJyVzJ1xuIiksCisJCQkJCSAgICBjZS0+bmFtZSk7CisJCQl9CiAJCX0KIAl9CisKKwlpZiAoc3BmLT5vaWRfZmV0Y2hfdGFza3NfbnIpIHsKKwkJc3RydWN0IGZldGNoX3Rhc2sgKnRhc2sgPQorCQkJc3BmLT5vaWRfZmV0Y2hfdGFza3Nbc3BmLT5vaWRfZmV0Y2hfdGFza3NfbnIgLSAxXTsKKwkJc3RydWN0IHN0cmJ1ZiBzdWJtb2R1bGVfcHJlZml4ID0gU1RSQlVGX0lOSVQ7CisJCXNwZi0+b2lkX2ZldGNoX3Rhc2tzX25yLS07CisKKwkJc3RyYnVmX2FkZGYoJnN1Ym1vZHVsZV9wcmVmaXgsICIlcyVzLyIsCisJCQkgICAgc3BmLT5wcmVmaXgsIHRhc2stPnN1Yi0+cGF0aCk7CisKKwkJY2hpbGRfcHJvY2Vzc19pbml0KGNwKTsKKwkJcHJlcGFyZV9zdWJtb2R1bGVfcmVwb19lbnZfaW5fZ2l0ZGlyKCZjcC0+ZW52X2FycmF5KTsKKwkJY3AtPmdpdF9jbWQgPSAxOworCQljcC0+ZGlyID0gdGFzay0+cmVwby0+Z2l0ZGlyOworCisJCWFyZ3ZfYXJyYXlfaW5pdCgmY3AtPmFyZ3MpOworCQlhcmd2X2FycmF5X3B1c2h2KCZjcC0+YXJncywgc3BmLT5hcmdzLmFyZ3YpOworCQlhcmd2X2FycmF5X3B1c2goJmNwLT5hcmdzLCAib24tZGVtYW5kIik7CisJCWFyZ3ZfYXJyYXlfcHVzaCgmY3AtPmFyZ3MsICItLXN1Ym1vZHVsZS1wcmVmaXgiKTsKKwkJYXJndl9hcnJheV9wdXNoKCZjcC0+YXJncywgc3VibW9kdWxlX3ByZWZpeC5idWYpOworCisJCS8qIE5FRURTV09SSzogaGF2ZSBnZXRfZGVmYXVsdF9yZW1vdGUgZnJvbSBzdWJtb2R1bGUtLWhlbHBlciAqLworCQlhcmd2X2FycmF5X3B1c2goJmNwLT5hcmdzLCAib3JpZ2luIik7CisJCW9pZF9hcnJheV9mb3JfZWFjaF91bmlxdWUodGFzay0+Y29tbWl0cywKKwkJCQkJICBhcHBlbmRfb2lkX3RvX2FyZ3YsICZjcC0+YXJncyk7CisKKwkJKnRhc2tfY2IgPSB0YXNrOworCQlzdHJidWZfcmVsZWFzZSgmc3VibW9kdWxlX3ByZWZpeCk7CisJCXJldHVybiAxOworCX0KKwogCXJldHVybiAwOwogfQogCkBAIC0xMzI5LDIwICsxNTIzLDc3IEBACiAJCQkgICAgICAgdm9pZCAqY2IsIHZvaWQgKnRhc2tfY2IpCiB7CiAJc3RydWN0IHN1Ym1vZHVsZV9wYXJhbGxlbF9mZXRjaCAqc3BmID0gY2I7CisJc3RydWN0IGZldGNoX3Rhc2sgKnRhc2sgPSB0YXNrX2NiOwogCiAJc3BmLT5yZXN1bHQgPSAxOwogCisJZmV0Y2hfdGFza19yZWxlYXNlKHRhc2spOwogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50IGNvbW1pdF9taXNzaW5nX2luX3N1Yihjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHZvaWQgKmRhdGEpCit7CisJc3RydWN0IHJlcG9zaXRvcnkgKnN1YnJlcG8gPSBkYXRhOworCisJZW51bSBvYmplY3RfdHlwZSB0eXBlID0gb2lkX29iamVjdF9pbmZvKHN1YnJlcG8sIG9pZCwgTlVMTCk7CisKKwlyZXR1cm4gdHlwZSAhPSBPQkpfQ09NTUlUOworfQorCiBzdGF0aWMgaW50IGZldGNoX2ZpbmlzaChpbnQgcmV0dmFsdWUsIHN0cnVjdCBzdHJidWYgKmVyciwKIAkJCXZvaWQgKmNiLCB2b2lkICp0YXNrX2NiKQogewogCXN0cnVjdCBzdWJtb2R1bGVfcGFyYWxsZWxfZmV0Y2ggKnNwZiA9IGNiOworCXN0cnVjdCBmZXRjaF90YXNrICp0YXNrID0gdGFza19jYjsKIAotCWlmIChyZXR2YWx1ZSkKKwlzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqaXQ7CisJc3RydWN0IG9pZF9hcnJheSAqY29tbWl0czsKKworCWlmICghdGFzayB8fCAhdGFzay0+c3ViKQorCQlCVUcoImNhbGxiYWNrIGNvb2tpZSBib2d1cyIpOworCisJaWYgKHJldHZhbHVlKSB7CisJCS8qCisJCSAqIE5FRURTV09SSzogVGhpcyBpbmRpY2F0ZXMgdGhhdCB0aGUgb3ZlcmFsbCBmZXRjaAorCQkgKiBmYWlsZWQsIGV2ZW4gdGhvdWdoIHRoZXJlIG1heSBiZSBhIHN1YnNlcXVlbnQgZmV0Y2gKKwkJICogYnkgY29tbWl0IGhhc2ggdGhhdCBtaWdodCB3b3JrLiBJdCBtYXkgYmUgYSBnb29kCisJCSAqIGlkZWEgdG8gbm90IGluZGljYXRlIGZhaWx1cmUgaW4gdGhpcyBjYXNlLCBhbmQgb25seQorCQkgKiBpbmRpY2F0ZSBmYWlsdXJlIGlmIHRoZSBzdWJzZXF1ZW50IGZldGNoIGZhaWxzLgorCQkgKi8KIAkJc3BmLT5yZXN1bHQgPSAxOwogCisJCXN0cmJ1Zl9hZGRmKCZzcGYtPnN1Ym1vZHVsZXNfd2l0aF9lcnJvcnMsICJcdCVzXG4iLAorCQkJICAgIHRhc2stPnN1Yi0+bmFtZSk7CisJfQorCisJLyogSXMgdGhpcyB0aGUgc2Vjb25kIHRpbWUgd2UgcHJvY2VzcyB0aGlzIHN1Ym1vZHVsZT8gKi8KKwlpZiAodGFzay0+Y29tbWl0cykKKwkJZ290byBvdXQ7CisKKwlpdCA9IHN0cmluZ19saXN0X2xvb2t1cCgmc3BmLT5jaGFuZ2VkX3N1Ym1vZHVsZV9uYW1lcywgdGFzay0+c3ViLT5uYW1lKTsKKwlpZiAoIWl0KQorCQkvKiBDb3VsZCBiZSBhbiB1bmNoYW5nZWQgc3VibW9kdWxlLCBub3QgY29udGFpbmVkIGluIHRoZSBsaXN0ICovCisJCWdvdG8gb3V0OworCisJY29tbWl0cyA9IGl0LT51dGlsOworCW9pZF9hcnJheV9maWx0ZXIoY29tbWl0cywKKwkJCSBjb21taXRfbWlzc2luZ19pbl9zdWIsCisJCQkgdGFzay0+cmVwbyk7CisKKwkvKiBBcmUgdGhlcmUgY29tbWl0cyB3ZSB3YW50LCBidXQgZG8gbm90IGV4aXN0PyAqLworCWlmIChjb21taXRzLT5ucikgeworCQl0YXNrLT5jb21taXRzID0gY29tbWl0czsKKwkJQUxMT0NfR1JPVyhzcGYtPm9pZF9mZXRjaF90YXNrcywKKwkJCSAgIHNwZi0+b2lkX2ZldGNoX3Rhc2tzX25yICsgMSwKKwkJCSAgIHNwZi0+b2lkX2ZldGNoX3Rhc2tzX2FsbG9jKTsKKwkJc3BmLT5vaWRfZmV0Y2hfdGFza3Nbc3BmLT5vaWRfZmV0Y2hfdGFza3NfbnJdID0gdGFzazsKKwkJc3BmLT5vaWRfZmV0Y2hfdGFza3NfbnIrKzsKKwkJcmV0dXJuIDA7CisJfQorCitvdXQ6CisJZmV0Y2hfdGFza19yZWxlYXNlKHRhc2spOworCiAJcmV0dXJuIDA7CiB9CiAKQEAgLTEzNjUsNyArMTYxNiw3IEBACiAJCWdvdG8gb3V0OwogCiAJaWYgKHJlcG9fcmVhZF9pbmRleChyKSA8IDApCi0JCWRpZSgiaW5kZXggZmlsZSBjb3JydXB0Iik7CisJCWRpZShfKCJpbmRleCBmaWxlIGNvcnJ1cHQiKSk7CiAKIAlhcmd2X2FycmF5X3B1c2goJnNwZi5hcmdzLCAiZmV0Y2giKTsKIAlmb3IgKGkgPSAwOyBpIDwgb3B0aW9ucy0+YXJnYzsgaSsrKQpAQCAtMTM3MywxNiArMTYyNCwyMyBAQAogCWFyZ3ZfYXJyYXlfcHVzaCgmc3BmLmFyZ3MsICItLXJlY3Vyc2Utc3VibW9kdWxlcy1kZWZhdWx0Iik7CiAJLyogZGVmYXVsdCB2YWx1ZSwgIi0tc3VibW9kdWxlLXByZWZpeCIgYW5kIGl0cyB2YWx1ZSBhcmUgYWRkZWQgbGF0ZXIgKi8KIAotCWNhbGN1bGF0ZV9jaGFuZ2VkX3N1Ym1vZHVsZV9wYXRocyhyKTsKLQlydW5fcHJvY2Vzc2VzX3BhcmFsbGVsKG1heF9wYXJhbGxlbF9qb2JzLAotCQkJICAgICAgIGdldF9uZXh0X3N1Ym1vZHVsZSwKLQkJCSAgICAgICBmZXRjaF9zdGFydF9mYWlsdXJlLAotCQkJICAgICAgIGZldGNoX2ZpbmlzaCwKLQkJCSAgICAgICAmc3BmKTsKKwljYWxjdWxhdGVfY2hhbmdlZF9zdWJtb2R1bGVfcGF0aHMociwgJnNwZi5jaGFuZ2VkX3N1Ym1vZHVsZV9uYW1lcyk7CisJc3RyaW5nX2xpc3Rfc29ydCgmc3BmLmNoYW5nZWRfc3VibW9kdWxlX25hbWVzKTsKKwlydW5fcHJvY2Vzc2VzX3BhcmFsbGVsX3RyMihtYXhfcGFyYWxsZWxfam9icywKKwkJCQkgICBnZXRfbmV4dF9zdWJtb2R1bGUsCisJCQkJICAgZmV0Y2hfc3RhcnRfZmFpbHVyZSwKKwkJCQkgICBmZXRjaF9maW5pc2gsCisJCQkJICAgJnNwZiwKKwkJCQkgICAic3VibW9kdWxlIiwgInBhcmFsbGVsL2ZldGNoIik7CisKKwlpZiAoc3BmLnN1Ym1vZHVsZXNfd2l0aF9lcnJvcnMubGVuID4gMCkKKwkJZnByaW50ZihzdGRlcnIsIF8oIkVycm9ycyBkdXJpbmcgc3VibW9kdWxlIGZldGNoOlxuJXMiKSwKKwkJCXNwZi5zdWJtb2R1bGVzX3dpdGhfZXJyb3JzLmJ1Zik7CisKIAogCWFyZ3ZfYXJyYXlfY2xlYXIoJnNwZi5hcmdzKTsKIG91dDoKLQlzdHJpbmdfbGlzdF9jbGVhcigmY2hhbmdlZF9zdWJtb2R1bGVfbmFtZXMsIDEpOworCWZyZWVfc3VibW9kdWxlc19vaWRzKCZzcGYuY2hhbmdlZF9zdWJtb2R1bGVfbmFtZXMpOwogCXJldHVybiBzcGYucmVzdWx0OwogfQogCkBAIC0xNDE4LDcgKzE2NzYsNyBAQAogCWNwLm91dCA9IC0xOwogCWNwLmRpciA9IHBhdGg7CiAJaWYgKHN0YXJ0X2NvbW1hbmQoJmNwKSkKLQkJZGllKCJDb3VsZCBub3QgcnVuICdnaXQgc3RhdHVzIC0tcG9yY2VsYWluPTInIGluIHN1Ym1vZHVsZSAlcyIsIHBhdGgpOworCQlkaWUoXygiQ291bGQgbm90IHJ1biAnZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbj0yJyBpbiBzdWJtb2R1bGUgJXMiKSwgcGF0aCk7CiAKIAlmcCA9IHhmZG9wZW4oY3Aub3V0LCAiciIpOwogCXdoaWxlIChzdHJidWZfZ2V0d2hvbGVsaW5lKCZidWYsIGZwLCAnXG4nKSAhPSBFT0YpIHsKQEAgLTE0NTksNyArMTcxNyw3IEBACiAJZmNsb3NlKGZwKTsKIAogCWlmIChmaW5pc2hfY29tbWFuZCgmY3ApICYmICFpZ25vcmVfY3BfZXhpdF9jb2RlKQotCQlkaWUoIidnaXQgc3RhdHVzIC0tcG9yY2VsYWluPTInIGZhaWxlZCBpbiBzdWJtb2R1bGUgJXMiLCBwYXRoKTsKKwkJZGllKF8oIidnaXQgc3RhdHVzIC0tcG9yY2VsYWluPTInIGZhaWxlZCBpbiBzdWJtb2R1bGUgJXMiKSwgcGF0aCk7CiAKIAlzdHJidWZfcmVsZWFzZSgmYnVmKTsKIAlyZXR1cm4gZGlydHlfc3VibW9kdWxlOwpAQCAtMTU2MSw2ICsxODE5LDE4IEBACiAJcmV0dXJuIHJldDsKIH0KIAordm9pZCBzdWJtb2R1bGVfdW5zZXRfY29yZV93b3JrdHJlZShjb25zdCBzdHJ1Y3Qgc3VibW9kdWxlICpzdWIpCit7CisJY2hhciAqY29uZmlnX3BhdGggPSB4c3RyZm10KCIlcy9tb2R1bGVzLyVzL2NvbmZpZyIsCisJCQkJICAgIGdldF9naXRfZGlyKCksIHN1Yi0+bmFtZSk7CisKKwlpZiAoZ2l0X2NvbmZpZ19zZXRfaW5fZmlsZV9nZW50bHkoY29uZmlnX3BhdGgsICJjb3JlLndvcmt0cmVlIiwgTlVMTCkpCisJCXdhcm5pbmcoXygiQ291bGQgbm90IHVuc2V0IGNvcmUud29ya3RyZWUgc2V0dGluZyBpbiBzdWJtb2R1bGUgJyVzJyIpLAorCQkJICBzdWItPnBhdGgpOworCisJZnJlZShjb25maWdfcGF0aCk7Cit9CisKIHN0YXRpYyBjb25zdCBjaGFyICpnZXRfc3VwZXJfcHJlZml4X29yX2VtcHR5KHZvaWQpCiB7CiAJY29uc3QgY2hhciAqcyA9IGdldF9zdXBlcl9wcmVmaXgoKTsKQEAgLTE1ODIsNyArMTg1Miw3IEBACiAJY3Aubm9fc3Rkb3V0ID0gMTsKIAljcC5kaXIgPSBzdWItPnBhdGg7CiAJaWYgKHN0YXJ0X2NvbW1hbmQoJmNwKSkKLQkJZGllKCJjb3VsZCBub3QgcmVjdXJzZSBpbnRvIHN1Ym1vZHVsZSAnJXMnIiwgc3ViLT5wYXRoKTsKKwkJZGllKF8oImNvdWxkIG5vdCByZWN1cnNlIGludG8gc3VibW9kdWxlICclcyciKSwgc3ViLT5wYXRoKTsKIAogCXJldHVybiBmaW5pc2hfY29tbWFuZCgmY3ApOwogfQpAQCAtMTYwMyw3ICsxODczLDcgQEAKIAlhcmd2X2FycmF5X3B1c2goJmNwLmFyZ3MsIGVtcHR5X3RyZWVfb2lkX2hleCgpKTsKIAogCWlmIChydW5fY29tbWFuZCgmY3ApKQotCQlkaWUoImNvdWxkIG5vdCByZXNldCBzdWJtb2R1bGUgaW5kZXgiKTsKKwkJZGllKF8oImNvdWxkIG5vdCByZXNldCBzdWJtb2R1bGUgaW5kZXgiKSk7CiB9CiAKIC8qKgpAQCAtMTY1MSwxMSArMTkyMSwxMSBAQAogCWlmICghKGZsYWdzICYgU1VCTU9EVUxFX01PVkVfSEVBRF9EUllfUlVOKSkgewogCQlpZiAob2xkX2hlYWQpIHsKIAkJCWlmICghc3VibW9kdWxlX3VzZXNfZ2l0ZmlsZShwYXRoKSkKLQkJCQlhYnNvcmJfZ2l0X2Rpcl9pbnRvX3N1cGVycHJvamVjdCgiIiwgcGF0aCwKKwkJCQlhYnNvcmJfZ2l0X2Rpcl9pbnRvX3N1cGVycHJvamVjdChwYXRoLAogCQkJCQlBQlNPUkJfR0lURElSX1JFQ1VSU0VfU1VCTU9EVUxFUyk7CiAJCX0gZWxzZSB7CiAJCQljaGFyICpnaXRkaXIgPSB4c3RyZm10KCIlcy9tb2R1bGVzLyVzIiwKLQkJCQkgICAgZ2V0X2dpdF9jb21tb25fZGlyKCksIHN1Yi0+bmFtZSk7CisJCQkJICAgIGdldF9naXRfZGlyKCksIHN1Yi0+bmFtZSk7CiAJCQljb25uZWN0X3dvcmtfdHJlZV9hbmRfZ2l0X2RpcihwYXRoLCBnaXRkaXIsIDApOwogCQkJZnJlZShnaXRkaXIpOwogCkBAIC0xNjY1LDcgKzE5MzUsNyBAQAogCiAJCWlmIChvbGRfaGVhZCAmJiAoZmxhZ3MgJiBTVUJNT0RVTEVfTU9WRV9IRUFEX0ZPUkNFKSkgewogCQkJY2hhciAqZ2l0ZGlyID0geHN0cmZtdCgiJXMvbW9kdWxlcy8lcyIsCi0JCQkJICAgIGdldF9naXRfY29tbW9uX2RpcigpLCBzdWItPm5hbWUpOworCQkJCSAgICBnZXRfZ2l0X2RpcigpLCBzdWItPm5hbWUpOwogCQkJY29ubmVjdF93b3JrX3RyZWVfYW5kX2dpdF9kaXIocGF0aCwgZ2l0ZGlyLCAxKTsKIAkJCWZyZWUoZ2l0ZGlyKTsKIAkJfQpAQCAtMTcyNiw2ICsxOTk2LDggQEAKIAogCQkJaWYgKGlzX2VtcHR5X2RpcihwYXRoKSkKIAkJCQlybWRpcl9vcl93YXJuKHBhdGgpOworCisJCQlzdWJtb2R1bGVfdW5zZXRfY29yZV93b3JrdHJlZShzdWIpOwogCQl9CiAJfQogb3V0OgpAQCAtMTc3Nyw4ICsyMDQ5LDcgQEAKICAqIEVtYmVkcyBhIHNpbmdsZSBzdWJtb2R1bGVzIGdpdCBkaXJlY3RvcnkgaW50byB0aGUgc3VwZXJwcm9qZWN0cyBnaXQgZGlyLAogICogbm9uIHJlY3Vyc2l2ZWx5LgogICovCi1zdGF0aWMgdm9pZCByZWxvY2F0ZV9zaW5nbGVfZ2l0X2Rpcl9pbnRvX3N1cGVycHJvamVjdChjb25zdCBjaGFyICpwcmVmaXgsCi0JCQkJCQkgICAgICBjb25zdCBjaGFyICpwYXRoKQorc3RhdGljIHZvaWQgcmVsb2NhdGVfc2luZ2xlX2dpdF9kaXJfaW50b19zdXBlcnByb2plY3QoY29uc3QgY2hhciAqcGF0aCkKIHsKIAljaGFyICpvbGRfZ2l0X2RpciA9IE5VTEwsICpyZWFsX29sZF9naXRfZGlyID0gTlVMTCwgKnJlYWxfbmV3X2dpdF9kaXIgPSBOVUxMOwogCWNoYXIgKm5ld19naXRfZGlyOwpAQCAtMTgyNCw4ICsyMDk1LDcgQEAKICAqIGhhdmluZyBpdHMgZ2l0IGRpcmVjdG9yeSB3aXRoaW4gdGhlIHdvcmtpbmcgdHJlZSB0byB0aGUgZ2l0IGRpciBuZXN0ZWQKICAqIGluIGl0cyBzdXBlcnByb2plY3RzIGdpdCBkaXIgdW5kZXIgbW9kdWxlcy8uCiAgKi8KLXZvaWQgYWJzb3JiX2dpdF9kaXJfaW50b19zdXBlcnByb2plY3QoY29uc3QgY2hhciAqcHJlZml4LAotCQkJCSAgICAgIGNvbnN0IGNoYXIgKnBhdGgsCit2b2lkIGFic29yYl9naXRfZGlyX2ludG9fc3VwZXJwcm9qZWN0KGNvbnN0IGNoYXIgKnBhdGgsCiAJCQkJICAgICAgdW5zaWduZWQgZmxhZ3MpCiB7CiAJaW50IGVycl9jb2RlOwpAQCAtMTg2Niw3ICsyMTM2LDcgQEAKIAkJY2hhciAqcmVhbF9jb21tb25fZ2l0X2RpciA9IHJlYWxfcGF0aGR1cChnZXRfZ2l0X2NvbW1vbl9kaXIoKSwgMSk7CiAKIAkJaWYgKCFzdGFydHNfd2l0aChyZWFsX3N1Yl9naXRfZGlyLCByZWFsX2NvbW1vbl9naXRfZGlyKSkKLQkJCXJlbG9jYXRlX3NpbmdsZV9naXRfZGlyX2ludG9fc3VwZXJwcm9qZWN0KHByZWZpeCwgcGF0aCk7CisJCQlyZWxvY2F0ZV9zaW5nbGVfZ2l0X2Rpcl9pbnRvX3N1cGVycHJvamVjdChwYXRoKTsKIAogCQlmcmVlKHJlYWxfc3ViX2dpdF9kaXIpOwogCQlmcmVlKHJlYWxfY29tbW9uX2dpdF9kaXIpOwpAQCAtMTg5OCwxMyArMjE2OCwxMyBAQAogCX0KIH0KIAotY29uc3QgY2hhciAqZ2V0X3N1cGVycHJvamVjdF93b3JraW5nX3RyZWUodm9pZCkKK2ludCBnZXRfc3VwZXJwcm9qZWN0X3dvcmtpbmdfdHJlZShzdHJ1Y3Qgc3RyYnVmICpidWYpCiB7CiAJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CiAJc3RydWN0IHN0cmJ1ZiBzYiA9IFNUUkJVRl9JTklUOwotCWNvbnN0IGNoYXIgKm9uZV91cCA9IHJlYWxfcGF0aF9pZl92YWxpZCgiLi4vIik7CisJc3RydWN0IHN0cmJ1ZiBvbmVfdXAgPSBTVFJCVUZfSU5JVDsKIAljb25zdCBjaGFyICpjd2QgPSB4Z2V0Y3dkKCk7Ci0JY29uc3QgY2hhciAqcmV0ID0gTlVMTDsKKwlpbnQgcmV0ID0gMDsKIAljb25zdCBjaGFyICpzdWJwYXRoOwogCWludCBjb2RlOwogCXNzaXplX3QgbGVuOwpAQCAtMTkxNSwxMiArMjE4NSwxMyBAQAogCQkgKiBXZSBtaWdodCBoYXZlIGEgc3VwZXJwcm9qZWN0LCBidXQgaXQgaXMgaGFyZGVyCiAJCSAqIHRvIGRldGVybWluZS4KIAkJICovCi0JCXJldHVybiBOVUxMOworCQlyZXR1cm4gMDsKIAotCWlmICghb25lX3VwKQotCQlyZXR1cm4gTlVMTDsKKwlpZiAoIXN0cmJ1Zl9yZWFscGF0aCgmb25lX3VwLCAiLi4vIiwgMCkpCisJCXJldHVybiAwOwogCi0Jc3VicGF0aCA9IHJlbGF0aXZlX3BhdGgoY3dkLCBvbmVfdXAsICZzYik7CisJc3VicGF0aCA9IHJlbGF0aXZlX3BhdGgoY3dkLCBvbmVfdXAuYnVmLCAmc2IpOworCXN0cmJ1Zl9yZWxlYXNlKCZvbmVfdXApOwogCiAJcHJlcGFyZV9zdWJtb2R1bGVfcmVwb19lbnYoJmNwLmVudl9hcnJheSk7CiAJYXJndl9hcnJheV9wb3AoJmNwLmVudl9hcnJheSk7CkBAIC0xOTYxLDcgKzIyMzIsOCBAQAogCQlzdXBlcl93dCA9IHhzdHJkdXAoY3dkKTsKIAkJc3VwZXJfd3RbY3dkX2xlbiAtIHN1cGVyX3N1Yl9sZW5dID0gJ1wwJzsKIAotCQlyZXQgPSByZWFsX3BhdGgoc3VwZXJfd3QpOworCQlzdHJidWZfcmVhbHBhdGgoYnVmLCBzdXBlcl93dCwgMSk7CisJCXJldCA9IDE7CiAJCWZyZWUoc3VwZXJfd3QpOwogCX0KIAlzdHJidWZfcmVsZWFzZSgmc2IpOwpAQCAtMTk3MCwxMCArMjI0MiwxMCBAQAogCiAJaWYgKGNvZGUgPT0gMTI4KQogCQkvKiAnLi4vJyBpcyBub3QgYSBnaXQgcmVwb3NpdG9yeSAqLwotCQlyZXR1cm4gTlVMTDsKKwkJcmV0dXJuIDA7CiAJaWYgKGNvZGUgPT0gMCAmJiBsZW4gPT0gMCkKIAkJLyogVGhlcmUgaXMgYW4gdW5yZWxhdGVkIGdpdCByZXBvc2l0b3J5IGF0ICcuLi8nICovCi0JCXJldHVybiBOVUxMOworCQlyZXR1cm4gMDsKIAlpZiAoY29kZSkKIAkJZGllKF8oImxzLXRyZWUgcmV0dXJuZWQgdW5leHBlY3RlZCByZXR1cm4gY29kZSAlZCIpLCBjb2RlKTsKIApkaWZmIC0tZ2l0IGEvc3VibW9kdWxlLmggYi9zdWJtb2R1bGUuaAppbmRleCBhYzIwNmRjLi40ZGFkNjQ5IDEwMDY0NAotLS0gYS9zdWJtb2R1bGUuaAorKysgYi9zdWJtb2R1bGUuaApAQCAtMTM2LDYgKzEzNiw4IEBACiAJCQljb25zdCBjaGFyICpuZXdfaGVhZCwKIAkJCXVuc2lnbmVkIGZsYWdzKTsKIAordm9pZCBzdWJtb2R1bGVfdW5zZXRfY29yZV93b3JrdHJlZShjb25zdCBzdHJ1Y3Qgc3VibW9kdWxlICpzdWIpOworCiAvKgogICogUHJlcGFyZSB0aGUgImVudl9hcnJheSIgcGFyYW1ldGVyIG9mIGEgInN0cnVjdCBjaGlsZF9wcm9jZXNzIiBmb3IgZXhlY3V0aW5nCiAgKiBhIHN1Ym1vZHVsZSBieSBjbGVhcmluZyBhbnkgcmVwby1zcGVjaWZpYyBlbnZpcm9ubWVudCB2YXJpYWJsZXMsIGJ1dApAQCAtMTQ0LDE1ICsxNDYsMTQgQEAKIHZvaWQgcHJlcGFyZV9zdWJtb2R1bGVfcmVwb19lbnYoc3RydWN0IGFyZ3ZfYXJyYXkgKm91dCk7CiAKICNkZWZpbmUgQUJTT1JCX0dJVERJUl9SRUNVUlNFX1NVQk1PRFVMRVMgKDE8PDApCi12b2lkIGFic29yYl9naXRfZGlyX2ludG9fc3VwZXJwcm9qZWN0KGNvbnN0IGNoYXIgKnByZWZpeCwKLQkJCQkgICAgICBjb25zdCBjaGFyICpwYXRoLAordm9pZCBhYnNvcmJfZ2l0X2Rpcl9pbnRvX3N1cGVycHJvamVjdChjb25zdCBjaGFyICpwYXRoLAogCQkJCSAgICAgIHVuc2lnbmVkIGZsYWdzKTsKIAogLyoKICAqIFJldHVybiB0aGUgYWJzb2x1dGUgcGF0aCBvZiB0aGUgd29ya2luZyB0cmVlIG9mIHRoZSBzdXBlcnByb2plY3QsIHdoaWNoIHRoaXMKICAqIHByb2plY3QgaXMgYSBzdWJtb2R1bGUgb2YuIElmIHRoaXMgcmVwb3NpdG9yeSBpcyBub3QgYSBzdWJtb2R1bGUgb2YKLSAqIGFub3RoZXIgcmVwb3NpdG9yeSwgcmV0dXJuIE5VTEwuCisgKiBhbm90aGVyIHJlcG9zaXRvcnksIHJldHVybiAwLgogICovCi1jb25zdCBjaGFyICpnZXRfc3VwZXJwcm9qZWN0X3dvcmtpbmdfdHJlZSh2b2lkKTsKK2ludCBnZXRfc3VwZXJwcm9qZWN0X3dvcmtpbmdfdHJlZShzdHJ1Y3Qgc3RyYnVmICpidWYpOwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL3N5bWxpbmtzLmMgYi9zeW1saW5rcy5jCmluZGV4IDUyNjFlOGMuLjY5ZDQ1OGEgMTAwNjQ0Ci0tLSBhL3N5bWxpbmtzLmMKKysrIGIvc3ltbGlua3MuYwpAQCAtMjIxLDcgKzIyMSw3IEBACiAgKi8KIGludCBjaGVja19sZWFkaW5nX3BhdGgoY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbikKIHsKLSAgICByZXR1cm4gdGhyZWFkZWRfY2hlY2tfbGVhZGluZ19wYXRoKCZkZWZhdWx0X2NhY2hlLCBuYW1lLCBsZW4pOworCXJldHVybiB0aHJlYWRlZF9jaGVja19sZWFkaW5nX3BhdGgoJmRlZmF1bHRfY2FjaGUsIG5hbWUsIGxlbik7CiB9CiAKIC8qCmRpZmYgLS1naXQgYS90Ly5naXRpZ25vcmUgYi90Ly5naXRpZ25vcmUKaW5kZXggMzQ4NzE1Zi4uOTFjZjU3NyAxMDA2NDQKLS0tIGEvdC8uZ2l0aWdub3JlCisrKyBiL3QvLmdpdGlnbm9yZQpAQCAtMiwzICsyLDQgQEAKIC90ZXN0LXJlc3VsdHMKIC8ucHJvdmUKIC9jaGFpbmxpbnR0bXAKKy9vdXQvCmRpZmYgLS1naXQgYS90L1JFQURNRSBiL3QvUkVBRE1FCmluZGV4IDI4NzExY2MuLjlhZmQ2MWUgMTAwNjQ0Ci0tLSBhL3QvUkVBRE1FCisrKyBiL3QvUkVBRE1FCkBAIC0xNzAsNiArMTcwLDE1IEBACiAJaW1wbGllZCBieSBvdGhlciBvcHRpb25zIGxpa2UgLS12YWxncmluZCBhbmQKIAlHSVRfVEVTVF9JTlNUQUxMRUQuCiAKKy0tbm8tYmluLXdyYXBwZXJzOjoKKwlCeSBkZWZhdWx0LCB0aGUgdGVzdCBzdWl0ZSB1c2VzIHRoZSB3cmFwcGVycyBpbgorCWAuLi9iaW4td3JhcHBlcnMvYCB0byBleGVjdXRlIGBnaXRgIGFuZCBmcmllbmRzLiBXaXRoIHRoaXMgb3B0aW9uLAorCWAuLi9naXRgIGFuZCBmcmllbmRzIGFyZSBydW4gZGlyZWN0bHkuIFRoaXMgaXMgbm90IHJlY29tbWVuZGVkCisJaW4gZ2VuZXJhbCwgYXMgdGhlIHdyYXBwZXJzIGNvbnRhaW4gc2FmZWd1YXJkcyB0byBlbnN1cmUgdGhhdCBubworCWZpbGVzIGZyb20gYW4gaW5zdGFsbGVkIEdpdCBhcmUgdXNlZCwgYnV0IGNhbiBzcGVlZCB1cCB0ZXN0IHJ1bnMKKwllc3BlY2lhbGx5IG9uIHBsYXRmb3JtcyB3aGVyZSBydW5uaW5nIHNoZWxsIHNjcmlwdHMgaXMgZXhwZW5zaXZlCisJKG1vc3Qgbm90YWJseSwgV2luZG93cykuCisKIC0tcm9vdD08ZGlyZWN0b3J5Pjo6CiAJQ3JlYXRlICJ0cmFzaCIgZGlyZWN0b3JpZXMgdXNlZCB0byBzdG9yZSBhbGwgdGVtcG9yYXJ5IGRhdGEgZHVyaW5nCiAJdGVzdGluZyB1bmRlciA8ZGlyZWN0b3J5PiwgaW5zdGVhZCBvZiB0aGUgdC8gZGlyZWN0b3J5LgpAQCAtMTg2LDYgKzE5NSwyOSBAQAogCXRoaXMgZmVhdHVyZSBieSBzZXR0aW5nIHRoZSBHSVRfVEVTVF9DSEFJTl9MSU5UIGVudmlyb25tZW50CiAJdmFyaWFibGUgdG8gIjEiIG9yICIwIiwgcmVzcGVjdGl2ZWx5LgogCistLXN0cmVzczo6CisJUnVuIHRoZSB0ZXN0IHNjcmlwdCByZXBlYXRlZGx5IGluIG11bHRpcGxlIHBhcmFsbGVsIGpvYnMgdW50aWwKKwlvbmUgb2YgdGhlbSBmYWlscy4gIFVzZWZ1bCBmb3IgcmVwcm9kdWNpbmcgcmFyZSBmYWlsdXJlcyBpbgorCWZsYWt5IHRlc3RzLiAgVGhlIG51bWJlciBvZiBwYXJhbGxlbCBqb2JzIGlzLCBpbiBvcmRlciBvZgorCXByZWNlZGVuY2U6IHRoZSB2YWx1ZSBvZiB0aGUgR0lUX1RFU1RfU1RSRVNTX0xPQUQKKwllbnZpcm9ubWVudCB2YXJpYWJsZSwgb3IgdHdpY2UgdGhlIG51bWJlciBvZiBhdmFpbGFibGUKKwlwcm9jZXNzb3JzIChhcyBzaG93biBieSB0aGUgJ2dldGNvbmYnIHV0aWxpdHkpLAlvciA4LgorCUltcGxpZXMgYC0tdmVyYm9zZSAteCAtLWltbWVkaWF0ZWAgdG8gZ2V0IHRoZSBtb3N0IGluZm9ybWF0aW9uCisJYWJvdXQgdGhlIGZhaWx1cmUuICBOb3RlIHRoYXQgdGhlIHZlcmJvc2Ugb3V0cHV0IG9mIGVhY2ggdGVzdAorCWpvYiBpcyBzYXZlZCB0byAndC90ZXN0LXJlc3VsdHMvJFRFU1RfTkFNRS5zdHJlc3MtPG5yPi5vdXQnLAorCWFuZCBvbmx5IHRoZSBvdXRwdXQgb2YgdGhlIGZhaWxlZCB0ZXN0IGpvYiBpcyBzaG93biBvbiB0aGUKKwl0ZXJtaW5hbC4gIFRoZSBuYW1lcyBvZiB0aGUgdHJhc2ggZGlyZWN0b3JpZXMgZ2V0IGEKKwknLnN0cmVzcy08bnI+JyBzdWZmaXgsIGFuZCB0aGUgdHJhc2ggZGlyZWN0b3J5IG9mIHRoZSBmYWlsZWQKKwl0ZXN0IGpvYiBpcyByZW5hbWVkIHRvIGVuZCB3aXRoIGEgJy5zdHJlc3MtZmFpbGVkJyBzdWZmaXguCisKKy0tc3RyZXNzLWpvYnM9PE4+OjoKKwlPdmVycmlkZSB0aGUgbnVtYmVyIG9mIHBhcmFsbGVsIGpvYnMuIEltcGxpZXMgYC0tc3RyZXNzYC4KKworLS1zdHJlc3MtbGltaXQ9PE4+OjoKKwlXaGVuIGNvbWJpbmVkIHdpdGggLS1zdHJlc3MgcnVuIHRoZSB0ZXN0IHNjcmlwdCByZXBlYXRlZGx5CisJdGhpcyBtYW55IHRpbWVzIGluIGVhY2ggb2YgdGhlIHBhcmFsbGVsIGpvYnMgb3IgdW50aWwgb25lIG9mCisJdGhlbSBmYWlscywgd2hpY2hldmVyIGNvbWVzIGZpcnN0LiBJbXBsaWVzIGAtLXN0cmVzc2AuCisKIFlvdSBjYW4gYWxzbyBzZXQgdGhlIEdJVF9URVNUX0lOU1RBTExFRCBlbnZpcm9ubWVudCB2YXJpYWJsZSB0bwogdGhlIGJpbmRpciBvZiBhbiBleGlzdGluZyBnaXQgaW5zdGFsbGF0aW9uIHRvIHRlc3QgdGhhdCBpbnN0YWxsYXRpb24uCiBZb3Ugc3RpbGwgbmVlZCB0byBoYXZlIGJ1aWx0IHRoaXMgZ2l0IHNhbmRib3gsIGZyb20gd2hpY2ggdmFyaW91cwpAQCAtMzAyLDE1ICszMzQsMjcgQEAKIGNvdWxkIGJlIGVuYWJsZWQgYnkgcnVubmluZyB0aGUgdGVzdCBzdWl0ZSB3aXRoIGNvcnJlY3QgR0lUX1RFU1RfCiBlbnZpcm9ubWVudCBzZXQuCiAKLUdJVF9URVNUX0dFVFRFWFRfUE9JU09OPTxub24tZW1wdHk/PiB0dXJucyBhbGwgc3RyaW5ncyBtYXJrZWQgZm9yCi10cmFuc2xhdGlvbiBpbnRvIGdpYmJlcmlzaCBpZiBub24tZW1wdHkgKHRoaW5rICJ0ZXN0IC1uIikuIFVzZWQgZm9yCi1zcG90dGluZyB0aG9zZSB0ZXN0cyB0aGF0IG5lZWQgdG8gYmUgbWFya2VkIHdpdGggYSBDX0xPQ0FMRV9PVVRQVVQKLXByZXJlcXVpc2l0ZSB3aGVuIGFkZGluZyBtb3JlIHN0cmluZ3MgZm9yIHRyYW5zbGF0aW9uLiBTZWUgIlRlc3RpbmcKLW1hcmtlZCBzdHJpbmdzIiBpbiBwby9SRUFETUUgZm9yIGRldGFpbHMuCitHSVRfVEVTVF9GQUlMX1BSRVJFUVM9PGJvb2xlYW4+IGZhaWxzIGFsbCBwcmVyZXF1aXNpdGVzLiBUaGlzIGlzCit1c2VmdWwgZm9yIGRpc2NvdmVyaW5nIGlzc3VlcyB3aXRoIHRoZSB0ZXN0cyB3aGVyZSBzYXkgYSBsYXRlciB0ZXN0CitpbXBsaWNpdGx5IGRlcGVuZHMgb24gYW4gb3B0aW9uYWwgZWFybGllciB0ZXN0LgorCitUaGVyZSdzIGEgIkZBSUxfUFJFUkVRUyIgcHJlcmVxdWlzaXRlIHRoYXQgY2FuIGJlIHVzZWQgdG8gdGVzdCBmb3IKK3doZXRoZXIgdGhpcyBtb2RlIGlzIGFjdGl2ZSwgYW5kIGUuZy4gc2tpcCBzb21lIHRlc3RzIHRoYXQgYXJlIGhhcmQgdG8KK3JlZmFjdG9yIHRvIGRlYWwgd2l0aCBpdC4gVGhlICJTWU1MSU5LUyIgcHJlcmVxdWlzaXRlIGlzIGN1cnJlbnRseQorZXhjbHVkZWQgYXMgc28gbXVjaCByZWxpZXMgb24gaXQsIGJ1dCB0aGlzIG1pZ2h0IGNoYW5nZSBpbiB0aGUgZnV0dXJlLgorCitHSVRfVEVTVF9HRVRURVhUX1BPSVNPTj08Ym9vbGVhbj4gdHVybnMgYWxsIHN0cmluZ3MgbWFya2VkIGZvcgordHJhbnNsYXRpb24gaW50byBnaWJiZXJpc2ggaWYgdHJ1ZS4gVXNlZCBmb3Igc3BvdHRpbmcgdGhvc2UgdGVzdHMgdGhhdAorbmVlZCB0byBiZSBtYXJrZWQgd2l0aCBhIENfTE9DQUxFX09VVFBVVCBwcmVyZXF1aXNpdGUgd2hlbiBhZGRpbmcgbW9yZQorc3RyaW5ncyBmb3IgdHJhbnNsYXRpb24uIFNlZSAiVGVzdGluZyBtYXJrZWQgc3RyaW5ncyIgaW4gcG8vUkVBRE1FIGZvcgorZGV0YWlscy4KIAogR0lUX1RFU1RfU1BMSVRfSU5ERVg9PGJvb2xlYW4+IGZvcmNlcyBzcGxpdC1pbmRleCBtb2RlIG9uIHRoZSB3aG9sZQogdGVzdCBzdWl0ZS4gQWNjZXB0IGFueSBib29sZWFuIHZhbHVlcyB0aGF0IGFyZSBhY2NlcHRlZCBieSBnaXQtY29uZmlnLgogCitHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTxuPiwgd2hlbiBzZXQsIG1ha2VzICdwcm90b2NvbC52ZXJzaW9uJworZGVmYXVsdCB0byBuLgorCiBHSVRfVEVTVF9GVUxMX0lOX1BBQ0tfQVJSQVk9PGJvb2xlYW4+IGV4ZXJjaXNlcyB0aGUgdW5jb21tb24KIHBhY2stb2JqZWN0cyBjb2RlIHBhdGggd2hlcmUgdGhlcmUgYXJlIG1vcmUgdGhhbiAxMDI0IHBhY2tzIGV2ZW4gaWYKIHRoZSBhY3R1YWwgbnVtYmVyIG9mIHBhY2tzIGluIHJlcG9zaXRvcnkgaXMgYmVsb3cgdGhpcyBsaW1pdC4gQWNjZXB0CkBAIC0zNDIsMTEgKzM4NiwxOSBAQAogZm9yIHRoZSBpbmRleCB2ZXJzaW9uIHNwZWNpZmllZC4gIENhbiBiZSBzZXQgdG8gYW55IHZhbGlkIHZlcnNpb24KIChjdXJyZW50bHkgMiwgMywgb3IgNCkuCiAKK0dJVF9URVNUX1BBQ0tfU1BBUlNFPTxib29sZWFuPiBpZiBlbmFibGVkIHdpbGwgZGVmYXVsdCB0aGUgcGFjay1vYmplY3RzCitidWlsdGluIHRvIHVzZSB0aGUgc3BhcnNlIG9iamVjdCB3YWxrLiBUaGlzIGNhbiBzdGlsbCBiZSBvdmVycmlkZGVuIGJ5Cit0aGUgLS1uby1zcGFyc2UgY29tbWFuZC1saW5lIGFyZ3VtZW50LgorCiBHSVRfVEVTVF9QUkVMT0FEX0lOREVYPTxib29sZWFuPiBleGVyY2lzZXMgdGhlIHByZWxvYWQtaW5kZXggY29kZSBwYXRoCiBieSBvdmVycmlkaW5nIHRoZSBtaW5pbXVtIG51bWJlciBvZiBjYWNoZSBlbnRyaWVzIHJlcXVpcmVkIHBlciB0aHJlYWQuCiAKLUdJVF9URVNUX1JFQkFTRV9VU0VfQlVJTFRJTj08Ym9vbGVhbj4sIHdoZW4gZmFsc2UsIGRpc2FibGVzIHRoZQotYnVpbHRpbiB2ZXJzaW9uIG9mIGdpdC1yZWJhc2UuIFNlZSAncmViYXNlLnVzZUJ1aWx0aW4nIGluCitHSVRfVEVTVF9TVEFTSF9VU0VfQlVJTFRJTj08Ym9vbGVhbj4sIHdoZW4gZmFsc2UsIGRpc2FibGVzIHRoZQorYnVpbHQtaW4gdmVyc2lvbiBvZiBnaXQtc3Rhc2guIFNlZSAnc3Rhc2gudXNlQnVpbHRpbicgaW4KK2dpdC1jb25maWcoMSkuCisKK0dJVF9URVNUX0FERF9JX1VTRV9CVUlMVElOPTxib29sZWFuPiwgd2hlbiB0cnVlLCBlbmFibGVzIHRoZQorYnVpbHQtaW4gdmVyc2lvbiBvZiBnaXQgYWRkIC1pLiBTZWUgJ2FkZC5pbnRlcmFjdGl2ZS51c2VCdWlsdGluJyBpbgogZ2l0LWNvbmZpZygxKS4KIAogR0lUX1RFU1RfSU5ERVhfVEhSRUFEUz08bj4gZW5hYmxlcyBleGVyY2lzaW5nIHRoZSBtdWx0aS10aHJlYWRlZCBsb2FkaW5nCkBAIC0zNTgsNiArNDEwLDE1IEBACiBpbmRleCB0byBiZSB3cml0dGVuIGFmdGVyIGV2ZXJ5ICdnaXQgcmVwYWNrJyBjb21tYW5kLCBhbmQgb3ZlcnJpZGVzIHRoZQogJ2NvcmUubXVsdGlQYWNrSW5kZXgnIHNldHRpbmcgdG8gdHJ1ZS4KIAorR0lUX1RFU1RfU0lERUJBTkRfQUxMPTxib29sZWFuPiwgd2hlbiB0cnVlLCBvdmVycmlkZXMgdGhlCisndXBsb2FkcGFjay5hbGxvd1NpZGViYW5kQWxsJyBzZXR0aW5nIHRvIHRydWUsIGFuZCB3aGVuIGZhbHNlLCBmb3JjZXMKK2ZldGNoLXBhY2sgdG8gbm90IHJlcXVlc3Qgc2lkZWJhbmQtYWxsIChldmVuIGlmIHRoZSBzZXJ2ZXIgYWR2ZXJ0aXNlcworc2lkZWJhbmQtYWxsKS4KKworR0lUX1RFU1RfRElTQUxMT1dfQUJCUkVWSUFURURfT1BUSU9OUz08Ym9vbGVhbj4sIHdoZW4gdHJ1ZSAod2hpY2ggaXMKK3RoZSBkZWZhdWx0IHdoZW4gcnVubmluZyB0ZXN0cyksIGVycm9ycyBvdXQgd2hlbiBhbiBhYmJyZXZpYXRlZCBvcHRpb24KK2lzIHVzZWQuCisKIE5hbWluZyBUZXN0cwogLS0tLS0tLS0tLS0tCiAKQEAgLTQyNSw3ICs0ODYsOCBAQAogIC0gQ3JlYXRlcyBhbiBlbXB0eSB0ZXN0IGRpcmVjdG9yeSB3aXRoIGFuIGVtcHR5IC5naXQvb2JqZWN0cyBkYXRhYmFzZQogICAgYW5kIGNoZGlyKDIpIGludG8gaXQuICBUaGlzIGRpcmVjdG9yeSBpcyAndC90cmFzaAogICAgZGlyZWN0b3J5LiR0ZXN0X25hbWVfd2l0aG91dF9kb3RzaCcsIHdpdGggdC8gc3ViamVjdCB0byBjaGFuZ2UgYnkKLSAgIHRoZSAtLXJvb3Qgb3B0aW9uIGRvY3VtZW50ZWQgYWJvdmUuCisgICB0aGUgLS1yb290IG9wdGlvbiBkb2N1bWVudGVkIGFib3ZlLCBhbmQgYSAnLnN0cmVzcy08Tj4nIHN1ZmZpeAorICAgYXBwZW5kZWQgYnkgdGhlIC0tc3RyZXNzIG9wdGlvbi4KIAogIC0gRGVmaW5lcyBzdGFuZGFyZCB0ZXN0IGhlbHBlciBmdW5jdGlvbnMgZm9yIHlvdXIgc2NyaXB0cyB0bwogICAgdXNlLiAgVGhlc2UgZnVuY3Rpb25zIGFyZSBkZXNpZ25lZCB0byBtYWtlIGFsbCBzY3JpcHRzIGJlaGF2ZQpAQCAtODIyLDYgKzg4NCwyNiBAQAogCQkuLi4KIAknCiAKKyAtIHRlc3RfYXRleGl0IDxzY3JpcHQ+CisKKyAgIFByZXBlbmQgPHNjcmlwdD4gdG8gYSBsaXN0IG9mIGNvbW1hbmRzIHRvIHJ1biB1bmNvbmRpdGlvbmFsbHkgdG8KKyAgIGNsZWFuIHVwIGJlZm9yZSB0aGUgdGVzdCBzY3JpcHQgZXhpdHMsIGUuZy4gdG8gc3RvcCBhIGRhZW1vbjoKKworCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Rlc3QgZ2l0IGRhZW1vbicgJworCQlnaXQgZGFlbW9uICYKKwkJZGFlbW9uX3BpZD0kISAmJgorCQl0ZXN0X2F0ZXhpdCAna2lsbCAkZGFlbW9uX3BpZCcgJiYKKwkJaGVsbG8gd29ybGQKKwknCisKKyAgIFRoZSBjb21tYW5kcyB3aWxsIGJlIGV4ZWN1dGVkIGJlZm9yZSB0aGUgdHJhc2ggZGlyZWN0b3J5IGlzIHJlbW92ZWQsCisgICBpLmUuIHRoZSBhdGV4aXQgY29tbWFuZHMgd2lsbCBzdGlsbCBiZSBhYmxlIHRvIGFjY2VzcyBhbnkgcGlkZmlsZXMgb3IKKyAgIHNvY2tldCBmaWxlcy4KKworICAgTm90ZSB0aGF0IHRoZXNlIGNvbW1hbmRzIHdpbGwgYmUgcnVuIGV2ZW4gd2hlbiBhIHRlc3Qgc2NyaXB0IHJ1bgorICAgd2l0aCAnLS1pbW1lZGlhdGUnIGZhaWxzLiAgQmUgY2FyZWZ1bCB3aXRoIHlvdXIgYXRleGl0IGNvbW1hbmRzIHRvCisgICBtaW5pbWl6ZSBhbnkgY2hhbmdlcyB0byB0aGUgZmFpbGVkIHN0YXRlLgorCiAgLSB0ZXN0X3dyaXRlX2xpbmVzIDxsaW5lcz4KIAogICAgV3JpdGUgPGxpbmVzPiBvbiBzdGFuZGFyZCBvdXRwdXQsIG9uZSBsaW5lIHBlciBhcmd1bWVudC4KQEAgLTg5Miw2ICs5NzQsMjQgQEAKICAgIHRlc3Rfb2lkX2luaXQgb3IgdGVzdF9vaWRfY2FjaGUuICBQcm92aWRpbmcgYW4gdW5rbm93biBrZXkgaXMgYW4KICAgIGVycm9yLgogCisgLSB5ZXMgWzxzdHJpbmc+XQorCisgICBUaGlzIGlzIG9mdGVuIHNlZW4gaW4gbW9kZXJuIFVOSVggYnV0IHNvbWUgcGxhdGZvcm1zIGxhY2sgaXQsIHNvCisgICB0aGUgdGVzdCBoYXJuZXNzIG92ZXJyaWRlcyB0aGUgcGxhdGZvcm0gaW1wbGVtZW50YXRpb24gd2l0aCBhCisgICBtb3JlIGxpbWl0ZWQgb25lLiAgVXNlIHRoaXMgb25seSB3aGVuIGZlZWRpbmcgYSBoYW5kZnVsIGxpbmVzIG9mCisgICBvdXRwdXQgdG8gdGhlIGRvd25zdHJlYW0tLS11bmxpa2UgdGhlIHJlYWwgdmVyc2lvbiwgaXQgZ2VuZXJhdGVzCisgICBvbmx5IHVwIHRvIDk5IGxpbmVzLgorCisgLSB0ZXN0X2Jvb2xfZW52IDxlbnYtdmFyaWFibGUtbmFtZT4gPGRlZmF1bHQtdmFsdWU+CisKKyAgIEdpdmVuIHRoZSBuYW1lIG9mIGFuIGVudmlyb25tZW50IHZhcmlhYmxlIHdpdGggYSBib29sIHZhbHVlLAorICAgbm9ybWFsaXplIGl0cyB2YWx1ZSB0byBhIDAgKHRydWUpIG9yIDEgKGZhbHNlIG9yIGVtcHR5IHN0cmluZykKKyAgIHJldHVybiBjb2RlLiAgUmV0dXJuIHdpdGggY29kZSBjb3JyZXNwb25kaW5nIHRvIHRoZSBnaXZlbiBkZWZhdWx0CisgICB2YWx1ZSBpZiB0aGUgdmFyaWFibGUgaXMgdW5zZXQuCisgICBBYm9ydCB0aGUgdGVzdCBzY3JpcHQgaWYgZWl0aGVyIHRoZSB2YWx1ZSBvZiB0aGUgdmFyaWFibGUgb3IgdGhlCisgICBkZWZhdWx0IGFyZSBub3QgdmFsaWQgYm9vbCB2YWx1ZXMuCisKKwogUHJlcmVxdWlzaXRlcwogLS0tLS0tLS0tLS0tLQogCmRpZmYgLS1naXQgYS90L2Fubm90YXRlLXRlc3RzLnNoIGIvdC9hbm5vdGF0ZS10ZXN0cy5zaAppbmRleCA2ZGE0OGEyLi5kOTMzYWY1IDEwMDY0NAotLS0gYS90L2Fubm90YXRlLXRlc3RzLnNoCisrKyBiL3QvYW5ub3RhdGUtdGVzdHMuc2gKQEAgLTY4LDYgKzY4LDE0IEBACiAJY2hlY2tfY291bnQgQSAyCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2JsYW1lIGluIGEgYmFyZSByZXBvIHdpdGhvdXQgc3RhcnRpbmcgY29tbWl0JyAnCisJZ2l0IGNsb25lIC0tYmFyZSAuIGJhcmUuZ2l0ICYmCisJKAorCQljZCBiYXJlLmdpdCAmJgorCQljaGVja19jb3VudCBBIDIKKwkpCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2JsYW1lIGJ5IHRhZyBvYmplY3RzJyAnCiAJZ2l0IHRhZyAtbSAidGVzdCB0YWciIHRlc3RUYWcgJiYKIAlnaXQgdGFnIC1tICJ0ZXN0IHRhZyAjMiIgdGVzdFRhZzIgdGVzdFRhZyAmJgpkaWZmIC0tZ2l0IGEvdC9jaGVjay1ub24tcG9ydGFibGUtc2hlbGwucGwgYi90L2NoZWNrLW5vbi1wb3J0YWJsZS1zaGVsbC5wbAppbmRleCBiNDViZGFjLi5mZDMzMDM1IDEwMDc1NQotLS0gYS90L2NoZWNrLW5vbi1wb3J0YWJsZS1zaGVsbC5wbAorKysgYi90L2NoZWNrLW5vbi1wb3J0YWJsZS1zaGVsbC5wbApAQCAtMjcsMTUgKzI3LDE2IEBACiAJY2xvc2UgJGY7CiB9CiAKK215ICRsaW5lID0gJyc7CiB3aGlsZSAoPD4pIHsKIAljaG9tcDsKKwkkbGluZSAuPSAkXzsKIAkjIHN0aXRjaCB0b2dldGhlciBpbmNvbXBsZXRlIGxpbmVzICh0aG9zZSBlbmRpbmcgd2l0aCAiXCIpCi0Jd2hpbGUgKHMvXFwkLy8pIHsKLQkJJF8gLj0gcmVhZGxpbmU7Ci0JCWNob21wOwotCX0KKwluZXh0IGlmICRsaW5lID1+IHMvXFwkLy87CiAKLQkvXGJzZWRccystaS8gYW5kIGVyciAnc2VkIC1pIGlzIG5vdCBwb3J0YWJsZSc7CisJJF8gPSAkbGluZTsKKwkvXGJjcFxzKy1hLyBhbmQgZXJyICdjcCAtYSBpcyBub3QgcG9ydGFibGUnOworCS9cYnNlZFxzKy1bXmVmbl1ccysvIGFuZCBlcnIgJ3NlZCBvcHRpb24gbm90IHBvcnRhYmxlICh1c2Ugb25seSAtbiwgLWUsIC1mKSc7CiAJL1xiZWNob1xzKy1bbmVFXS8gYW5kIGVyciAnZWNobyB3aXRoIG9wdGlvbiBpcyBub3QgcG9ydGFibGUgKHVzZSBwcmludGYpJzsKIAkvXlxzKmRlY2xhcmVccysvIGFuZCBlcnIgJ2FycmF5cy9kZWNsYXJlIG5vdCBwb3J0YWJsZSc7CiAJL15ccypbXiNdXHMqd2hpY2hccy8gYW5kIGVyciAnd2hpY2ggaXMgbm90IHBvcnRhYmxlICh1c2UgdHlwZSknOwpAQCAtNDUsOCArNDYsOSBAQAogCS8oPzpcJFwoc2VxfF5ccypzZXFcYikvIGFuZCBlcnIgJ3NlcSBpcyBub3QgcG9ydGFibGUgKHVzZSB0ZXN0X3NlcSknOwogCS9cYmdyZXBcYi4qLS1maWxlXGIvIGFuZCBlcnIgJ2dyZXAgLS1maWxlIEZJTEUgaXMgbm90IHBvcnRhYmxlICh1c2UgZ3JlcCAtZiBGSUxFKSc7CiAJL1xiZXhwb3J0XHMrW0EtWmEtejAtOV9dKj0vIGFuZCBlcnIgJyJleHBvcnQgRk9PPWJhciIgaXMgbm90IHBvcnRhYmxlICh1c2UgRk9PPWJhciAmJiBleHBvcnQgRk9PKSc7Ci0JL15ccyooW0EtWjAtOV9dKz0oXHcrfChbIiddKS4qP1wzKVxzKykrKFx3KykvIGFuZCBleGlzdHMoJGZ1bmN7JDR9KSBhbmQKKwkvXlxzKihbQS1aMC05X10rPShcdyp8KFsiJ10pLio/XDMpXHMrKSsoXHcrKS8gYW5kIGV4aXN0cygkZnVuY3skNH0pIGFuZAogCQllcnIgJyJGT089YmFyIHNoZWxsX2Z1bmMiIGFzc2lnbm1lbnQgZXh0ZW5kcyBiZXlvbmQgInNoZWxsX2Z1bmMiJzsKKwkkbGluZSA9ICcnOwogCSMgdGhpcyByZXNldHMgb3VyICQuIGZvciBlYWNoIGZpbGUKIAljbG9zZSBBUkdWIGlmIGVvZjsKIH0KZGlmZiAtLWdpdCBhL3QvZ2l0d2ViLWxpYi5zaCBiL3QvZ2l0d2ViLWxpYi5zaAppbmRleCAwMDZkMmE4Li4xZjMyY2E2IDEwMDY0NAotLS0gYS90L2dpdHdlYi1saWIuc2gKKysrIGIvdC9naXR3ZWItbGliLnNoCkBAIC01OCwxMCArNTgsMTEgQEAKIAlHQVRFV0FZX0lOVEVSRkFDRT0nQ0dJLzEuMScKIAlIVFRQX0FDQ0VQVD0nKi8qJwogCVJFUVVFU1RfTUVUSE9EPSdHRVQnCi0JUVVFUllfU1RSSU5HPSIiJDEiIgotCVBBVEhfSU5GTz0iIiQyIiIKKwlRVUVSWV9TVFJJTkc9JDEKKwlQQVRIX0lORk89JDIKKwlSRVFVRVNUX1VSST0vZ2l0d2ViLmNnaSRQQVRIX0lORk8KIAlleHBvcnQgR0FURVdBWV9JTlRFUkZBQ0UgSFRUUF9BQ0NFUFQgUkVRVUVTVF9NRVRIT0QgXAotCQlRVUVSWV9TVFJJTkcgUEFUSF9JTkZPCisJCVFVRVJZX1NUUklORyBQQVRIX0lORk8gUkVRVUVTVF9VUkkKIAogCUdJVFdFQl9DT05GSUc9JChwd2QpL2dpdHdlYl9jb25maWcucGVybAogCWV4cG9ydCBHSVRXRUJfQ09ORklHCmRpZmYgLS1naXQgYS90L2hlbHBlci8uZ2l0aWdub3JlIGIvdC9oZWxwZXIvLmdpdGlnbm9yZQppbmRleCAyYmFkMjhhLi40OGM3YmIwYmIgMTAwNjQ0Ci0tLSBhL3QvaGVscGVyLy5naXRpZ25vcmUKKysrIGIvdC9oZWxwZXIvLmdpdGlnbm9yZQpAQCAtMSw1ICsxLDQgQEAKLSoKLSEqLnNoCi0hKi5bY2hdCi0hKi5naXRpZ25vcmUKLQorL3Rlc3QtdG9vbAorL3Rlc3QtZmFrZS1zc2gKKy90ZXN0LWxpbmUtYnVmZmVyCisvdGVzdC1zdm4tZmUKZGlmZiAtLWdpdCBhL3QvaGVscGVyL3Rlc3QtYWR2aXNlLmMgYi90L2hlbHBlci90ZXN0LWFkdmlzZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM4Y2RjMjgKLS0tIC9kZXYvbnVsbAorKysgYi90L2hlbHBlci90ZXN0LWFkdmlzZS5jCkBAIC0wLDAgKzEsMjIgQEAKKyNpbmNsdWRlICJ0ZXN0LXRvb2wuaCIKKyNpbmNsdWRlICJjYWNoZS5oIgorI2luY2x1ZGUgImFkdmljZS5oIgorI2luY2x1ZGUgImNvbmZpZy5oIgorCitpbnQgY21kX19hZHZpc2VfaWZfZW5hYmxlZChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpCit7CisJaWYgKCFhcmd2WzFdKQorCWRpZSgidXNhZ2U6ICVzIDxhZHZpY2U+IiwgYXJndlswXSk7CisKKwlzZXR1cF9naXRfZGlyZWN0b3J5KCk7CisJZ2l0X2NvbmZpZyhnaXRfZGVmYXVsdF9jb25maWcsIE5VTEwpOworCisJLyoKKwkgKiBBbnkgYWR2aWNlIHR5cGUgY2FuIGJlIHVzZWQgZm9yIHRlc3RpbmcsIGJ1dCBORVNURURfVEFHIHdhcworCSAqIHNlbGVjdGVkIGhlcmUgYW5kIGluIHQwMDE4IHdoZXJlIHRoaXMgY29tbWFuZCBpcyBiZWluZworCSAqIGV4ZWN1dGVkLgorCSAqLworCWFkdmlzZV9pZl9lbmFibGVkKEFEVklDRV9ORVNURURfVEFHLCBhcmd2WzFdKTsKKworCXJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvdC9oZWxwZXIvdGVzdC1jb25maWcuYyBiL3QvaGVscGVyL3Rlc3QtY29uZmlnLmMKaW5kZXggMjE0MDAzZC4uMjM0YzcyMiAxMDA2NDQKLS0tIGEvdC9oZWxwZXIvdGVzdC1jb25maWcuYworKysgYi90L2hlbHBlci90ZXN0LWNvbmZpZy5jCkBAIC0zNywyMSArMzcsNiBAQAogICoKICAqLwogCi1zdGF0aWMgY29uc3QgY2hhciAqc2NvcGVfbmFtZShlbnVtIGNvbmZpZ19zY29wZSBzY29wZSkKLXsKLQlzd2l0Y2ggKHNjb3BlKSB7Ci0JY2FzZSBDT05GSUdfU0NPUEVfU1lTVEVNOgotCQlyZXR1cm4gInN5c3RlbSI7Ci0JY2FzZSBDT05GSUdfU0NPUEVfR0xPQkFMOgotCQlyZXR1cm4gImdsb2JhbCI7Ci0JY2FzZSBDT05GSUdfU0NPUEVfUkVQTzoKLQkJcmV0dXJuICJyZXBvIjsKLQljYXNlIENPTkZJR19TQ09QRV9DTURMSU5FOgotCQlyZXR1cm4gImNtZGxpbmUiOwotCWRlZmF1bHQ6Ci0JCXJldHVybiAidW5rbm93biI7Ci0JfQotfQogc3RhdGljIGludCBpdGVyYXRlX2NiKGNvbnN0IGNoYXIgKnZhciwgY29uc3QgY2hhciAqdmFsdWUsIHZvaWQgKmRhdGEpCiB7CiAJc3RhdGljIGludCBucjsKQEAgLTYzLDcgKzQ4LDggQEAKIAlwcmludGYoInZhbHVlPSVzXG4iLCB2YWx1ZSA/IHZhbHVlIDogIihudWxsKSIpOwogCXByaW50Zigib3JpZ2luPSVzXG4iLCBjdXJyZW50X2NvbmZpZ19vcmlnaW5fdHlwZSgpKTsKIAlwcmludGYoIm5hbWU9JXNcbiIsIGN1cnJlbnRfY29uZmlnX25hbWUoKSk7Ci0JcHJpbnRmKCJzY29wZT0lc1xuIiwgc2NvcGVfbmFtZShjdXJyZW50X2NvbmZpZ19zY29wZSgpKSk7CisJcHJpbnRmKCJsbm89JWRcbiIsIGN1cnJlbnRfY29uZmlnX2xpbmUoKSk7CisJcHJpbnRmKCJzY29wZT0lc1xuIiwgY29uZmlnX3Njb3BlX25hbWUoY3VycmVudF9jb25maWdfc2NvcGUoKSkpOwogCiAJcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LWRhdGUuYyBiL3QvaGVscGVyL3Rlc3QtZGF0ZS5jCmluZGV4IGEwODM3MzcuLjA5OWVmZjQgMTAwNjQ0Ci0tLSBhL3QvaGVscGVyL3Rlc3QtZGF0ZS5jCisrKyBiL3QvaGVscGVyL3Rlc3QtZGF0ZS5jCkBAIC0zLDI1ICszLDM1IEBACiAKIHN0YXRpYyBjb25zdCBjaGFyICp1c2FnZV9tc2cgPSAiXG4iCiAiICB0ZXN0LXRvb2wgZGF0ZSByZWxhdGl2ZSBbdGltZV90XS4uLlxuIgorIiAgdGVzdC10b29sIGRhdGUgaHVtYW4gW3RpbWVfdF0uLi5cbiIKICIgIHRlc3QtdG9vbCBkYXRlIHNob3c6PGZvcm1hdD4gW3RpbWVfdF0uLi5cbiIKICIgIHRlc3QtdG9vbCBkYXRlIHBhcnNlIFtkYXRlXS4uLlxuIgogIiAgdGVzdC10b29sIGRhdGUgYXBwcm94aWRhdGUgW2RhdGVdLi4uXG4iCiAiICB0ZXN0LXRvb2wgZGF0ZSB0aW1lc3RhbXAgW2RhdGVdLi4uXG4iCisiICB0ZXN0LXRvb2wgZGF0ZSBnZXRuYW5vcyBbc3RhcnQtbmFub3NdXG4iCiAiICB0ZXN0LXRvb2wgZGF0ZSBpczY0Yml0XG4iCiAiICB0ZXN0LXRvb2wgZGF0ZSB0aW1lX3QtaXM2NGJpdFxuIjsKIAotc3RhdGljIHZvaWQgc2hvd19yZWxhdGl2ZV9kYXRlcyhjb25zdCBjaGFyICoqYXJndiwgc3RydWN0IHRpbWV2YWwgKm5vdykKK3N0YXRpYyB2b2lkIHNob3dfcmVsYXRpdmVfZGF0ZXMoY29uc3QgY2hhciAqKmFyZ3YpCiB7CiAJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKIAogCWZvciAoOyAqYXJndjsgYXJndisrKSB7CiAJCXRpbWVfdCB0ID0gYXRvaSgqYXJndik7Ci0JCXNob3dfZGF0ZV9yZWxhdGl2ZSh0LCAwLCBub3csICZidWYpOworCQlzaG93X2RhdGVfcmVsYXRpdmUodCwgJmJ1Zik7CiAJCXByaW50ZigiJXMgLT4gJXNcbiIsICphcmd2LCBidWYuYnVmKTsKIAl9CiAJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CiB9CiAKK3N0YXRpYyB2b2lkIHNob3dfaHVtYW5fZGF0ZXMoY29uc3QgY2hhciAqKmFyZ3YpCit7CisJZm9yICg7ICphcmd2OyBhcmd2KyspIHsKKwkJdGltZV90IHQgPSBhdG9pKCphcmd2KTsKKwkJcHJpbnRmKCIlcyAtPiAlc1xuIiwgKmFyZ3YsIHNob3dfZGF0ZSh0LCAwLCBEQVRFX01PREUoSFVNQU4pKSk7CisJfQorfQorCiBzdGF0aWMgdm9pZCBzaG93X2RhdGVzKGNvbnN0IGNoYXIgKiphcmd2LCBjb25zdCBjaGFyICpmb3JtYXQpCiB7CiAJc3RydWN0IGRhdGVfbW9kZSBtb2RlOwpAQCAtNDUsNyArNTUsNyBAQAogCX0KIH0KIAotc3RhdGljIHZvaWQgcGFyc2VfZGF0ZXMoY29uc3QgY2hhciAqKmFyZ3YsIHN0cnVjdCB0aW1ldmFsICpub3cpCitzdGF0aWMgdm9pZCBwYXJzZV9kYXRlcyhjb25zdCBjaGFyICoqYXJndikKIHsKIAlzdHJ1Y3Qgc3RyYnVmIHJlc3VsdCA9IFNUUkJVRl9JTklUOwogCkBAIC02NCw1MCArNzQsNTQgQEAKIAlzdHJidWZfcmVsZWFzZSgmcmVzdWx0KTsKIH0KIAotc3RhdGljIHZvaWQgcGFyc2VfYXBwcm94aWRhdGUoY29uc3QgY2hhciAqKmFyZ3YsIHN0cnVjdCB0aW1ldmFsICpub3cpCitzdGF0aWMgdm9pZCBwYXJzZV9hcHByb3hpZGF0ZShjb25zdCBjaGFyICoqYXJndikKIHsKIAlmb3IgKDsgKmFyZ3Y7IGFyZ3YrKykgewogCQl0aW1lc3RhbXBfdCB0OwotCQl0ID0gYXBwcm94aWRhdGVfcmVsYXRpdmUoKmFyZ3YsIG5vdyk7CisJCXQgPSBhcHByb3hpZGF0ZV9yZWxhdGl2ZSgqYXJndik7CiAJCXByaW50ZigiJXMgLT4gJXNcbiIsICphcmd2LCBzaG93X2RhdGUodCwgMCwgREFURV9NT0RFKElTTzg2MDEpKSk7CiAJfQogfQogCi1zdGF0aWMgdm9pZCBwYXJzZV9hcHByb3hfdGltZXN0YW1wKGNvbnN0IGNoYXIgKiphcmd2LCBzdHJ1Y3QgdGltZXZhbCAqbm93KQorc3RhdGljIHZvaWQgcGFyc2VfYXBwcm94X3RpbWVzdGFtcChjb25zdCBjaGFyICoqYXJndikKIHsKIAlmb3IgKDsgKmFyZ3Y7IGFyZ3YrKykgewogCQl0aW1lc3RhbXBfdCB0OwotCQl0ID0gYXBwcm94aWRhdGVfcmVsYXRpdmUoKmFyZ3YsIG5vdyk7CisJCXQgPSBhcHByb3hpZGF0ZV9yZWxhdGl2ZSgqYXJndik7CiAJCXByaW50ZigiJXMgLT4gJSJQUkl0aW1lIlxuIiwgKmFyZ3YsIHQpOwogCX0KIH0KIAorc3RhdGljIHZvaWQgZ2V0bmFub3MoY29uc3QgY2hhciAqKmFyZ3YpCit7CisJZG91YmxlIHNlY29uZHMgPSBnZXRuYW5vdGltZSgpIC8gMS4wZTk7CisKKwlpZiAoKmFyZ3YpCisJCXNlY29uZHMgLT0gc3RydG9kKCphcmd2LCBOVUxMKTsKKwlwcmludGYoIiVsZlxuIiwgc2Vjb25kcyk7Cit9CisKIGludCBjbWRfX2RhdGUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQogewotCXN0cnVjdCB0aW1ldmFsIG5vdzsKIAljb25zdCBjaGFyICp4OwogCi0JeCA9IGdldGVudigiVEVTVF9EQVRFX05PVyIpOwotCWlmICh4KSB7Ci0JCW5vdy50dl9zZWMgPSBhdG9pKHgpOwotCQlub3cudHZfdXNlYyA9IDA7Ci0JfQotCWVsc2UKLQkJZ2V0dGltZW9mZGF5KCZub3csIE5VTEwpOwotCiAJYXJndisrOwogCWlmICghKmFyZ3YpCiAJCXVzYWdlKHVzYWdlX21zZyk7CiAJaWYgKCFzdHJjbXAoKmFyZ3YsICJyZWxhdGl2ZSIpKQotCQlzaG93X3JlbGF0aXZlX2RhdGVzKGFyZ3YrMSwgJm5vdyk7CisJCXNob3dfcmVsYXRpdmVfZGF0ZXMoYXJndisxKTsKKwllbHNlIGlmICghc3RyY21wKCphcmd2LCAiaHVtYW4iKSkKKwkJc2hvd19odW1hbl9kYXRlcyhhcmd2KzEpOwogCWVsc2UgaWYgKHNraXBfcHJlZml4KCphcmd2LCAic2hvdzoiLCAmeCkpCiAJCXNob3dfZGF0ZXMoYXJndisxLCB4KTsKIAllbHNlIGlmICghc3RyY21wKCphcmd2LCAicGFyc2UiKSkKLQkJcGFyc2VfZGF0ZXMoYXJndisxLCAmbm93KTsKKwkJcGFyc2VfZGF0ZXMoYXJndisxKTsKIAllbHNlIGlmICghc3RyY21wKCphcmd2LCAiYXBwcm94aWRhdGUiKSkKLQkJcGFyc2VfYXBwcm94aWRhdGUoYXJndisxLCAmbm93KTsKKwkJcGFyc2VfYXBwcm94aWRhdGUoYXJndisxKTsKIAllbHNlIGlmICghc3RyY21wKCphcmd2LCAidGltZXN0YW1wIikpCi0JCXBhcnNlX2FwcHJveF90aW1lc3RhbXAoYXJndisxLCAmbm93KTsKKwkJcGFyc2VfYXBwcm94X3RpbWVzdGFtcChhcmd2KzEpOworCWVsc2UgaWYgKCFzdHJjbXAoKmFyZ3YsICJnZXRuYW5vcyIpKQorCQlnZXRuYW5vcyhhcmd2KzEpOwogCWVsc2UgaWYgKCFzdHJjbXAoKmFyZ3YsICJpczY0Yml0IikpCiAJCXJldHVybiBzaXplb2YodGltZXN0YW1wX3QpID09IDggPyAwIDogMTsKIAllbHNlIGlmICghc3RyY21wKCphcmd2LCAidGltZV90LWlzNjRiaXQiKSkKZGlmZiAtLWdpdCBhL3QvaGVscGVyL3Rlc3QtZGlyLWl0ZXJhdG9yLmMgYi90L2hlbHBlci90ZXN0LWRpci1pdGVyYXRvci5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY1OWI2YmYKLS0tIC9kZXYvbnVsbAorKysgYi90L2hlbHBlci90ZXN0LWRpci1pdGVyYXRvci5jCkBAIC0wLDAgKzEsNjUgQEAKKyNpbmNsdWRlICJ0ZXN0LXRvb2wuaCIKKyNpbmNsdWRlICJnaXQtY29tcGF0LXV0aWwuaCIKKyNpbmNsdWRlICJzdHJidWYuaCIKKyNpbmNsdWRlICJpdGVyYXRvci5oIgorI2luY2x1ZGUgImRpci1pdGVyYXRvci5oIgorCitzdGF0aWMgY29uc3QgY2hhciAqZXJyb3JfbmFtZShpbnQgZXJyb3JfbnVtYmVyKQoreworCXN3aXRjaCAoZXJyb3JfbnVtYmVyKSB7CisJY2FzZSBFTk9FTlQ6IHJldHVybiAiRU5PRU5UIjsKKwljYXNlIEVOT1RESVI6IHJldHVybiAiRU5PVERJUiI7CisJZGVmYXVsdDogcmV0dXJuICJFU09NRVRISU5HRUxTRSI7CisJfQorfQorCisvKgorICogdXNhZ2U6CisgKiB0b29sLXRlc3QgZGlyLWl0ZXJhdG9yIFstLWZvbGxvdy1zeW1saW5rc10gWy0tcGVkYW50aWNdIGRpcmVjdG9yeV9wYXRoCisgKi8KK2ludCBjbWRfX2Rpcl9pdGVyYXRvcihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpCit7CisJc3RydWN0IGRpcl9pdGVyYXRvciAqZGl0ZXI7CisJdW5zaWduZWQgaW50IGZsYWdzID0gMDsKKwlpbnQgaXRlcl9zdGF0dXM7CisKKwlmb3IgKCsrYXJndiwgLS1hcmdjOyAqYXJndiAmJiBzdGFydHNfd2l0aCgqYXJndiwgIi0tIik7ICsrYXJndiwgLS1hcmdjKSB7CisJCWlmIChzdHJjbXAoKmFyZ3YsICItLWZvbGxvdy1zeW1saW5rcyIpID09IDApCisJCQlmbGFncyB8PSBESVJfSVRFUkFUT1JfRk9MTE9XX1NZTUxJTktTOworCQllbHNlIGlmIChzdHJjbXAoKmFyZ3YsICItLXBlZGFudGljIikgPT0gMCkKKwkJCWZsYWdzIHw9IERJUl9JVEVSQVRPUl9QRURBTlRJQzsKKwkJZWxzZQorCQkJZGllKCJpbnZhbGlkIG9wdGlvbiAnJXMnIiwgKmFyZ3YpOworCX0KKworCWlmICghKmFyZ3YgfHwgYXJnYyAhPSAxKQorCQlkaWUoImRpci1pdGVyYXRvciBuZWVkcyBleGFjdGx5IG9uZSBub24tb3B0aW9uIGFyZ3VtZW50Iik7CisKKwlkaXRlciA9IGRpcl9pdGVyYXRvcl9iZWdpbigqYXJndiwgZmxhZ3MpOworCisJaWYgKCFkaXRlcikgeworCQlwcmludGYoImRpcl9pdGVyYXRvcl9iZWdpbiBmYWlsdXJlOiAlc1xuIiwgZXJyb3JfbmFtZShlcnJubykpOworCQlleGl0KEVYSVRfRkFJTFVSRSk7CisJfQorCisJd2hpbGUgKChpdGVyX3N0YXR1cyA9IGRpcl9pdGVyYXRvcl9hZHZhbmNlKGRpdGVyKSkgPT0gSVRFUl9PSykgeworCQlpZiAoU19JU0RJUihkaXRlci0+c3Quc3RfbW9kZSkpCisJCQlwcmludGYoIltkXSAiKTsKKwkJZWxzZSBpZiAoU19JU1JFRyhkaXRlci0+c3Quc3RfbW9kZSkpCisJCQlwcmludGYoIltmXSAiKTsKKwkJZWxzZSBpZiAoU19JU0xOSyhkaXRlci0+c3Quc3RfbW9kZSkpCisJCQlwcmludGYoIltzXSAiKTsKKwkJZWxzZQorCQkJcHJpbnRmKCJbP10gIik7CisKKwkJcHJpbnRmKCIoJXMpIFslc10gJXNcbiIsIGRpdGVyLT5yZWxhdGl2ZV9wYXRoLCBkaXRlci0+YmFzZW5hbWUsCisJCSAgICAgICBkaXRlci0+cGF0aC5idWYpOworCX0KKworCWlmIChpdGVyX3N0YXR1cyAhPSBJVEVSX0RPTkUpIHsKKwkJcHJpbnRmKCJkaXJfaXRlcmF0b3JfYWR2YW5jZSBmYWlsdXJlXG4iKTsKKwkJcmV0dXJuIDE7CisJfQorCisJcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LWR1bXAtZnNtb25pdG9yLmMgYi90L2hlbHBlci90ZXN0LWR1bXAtZnNtb25pdG9yLmMKaW5kZXggMDhlMzY4NC4uOTc1ZjBhYyAxMDA2NDQKLS0tIGEvdC9oZWxwZXIvdGVzdC1kdW1wLWZzbW9uaXRvci5jCisrKyBiL3QvaGVscGVyL3Rlc3QtZHVtcC1mc21vbml0b3IuYwpAQCAtMywxNyArMywxNyBAQAogCiBpbnQgY21kX19kdW1wX2ZzbW9uaXRvcihpbnQgYWMsIGNvbnN0IGNoYXIgKiphdikKIHsKLQlzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSA9ICZ0aGVfaW5kZXg7CisJc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUgPSB0aGVfcmVwb3NpdG9yeS0+aW5kZXg7CiAJaW50IGk7CiAKIAlzZXR1cF9naXRfZGlyZWN0b3J5KCk7Ci0JaWYgKGRvX3JlYWRfaW5kZXgoaXN0YXRlLCBnZXRfaW5kZXhfZmlsZSgpLCAwKSA8IDApCisJaWYgKGRvX3JlYWRfaW5kZXgoaXN0YXRlLCB0aGVfcmVwb3NpdG9yeS0+aW5kZXhfZmlsZSwgMCkgPCAwKQogCQlkaWUoInVuYWJsZSB0byByZWFkIGluZGV4IGZpbGUiKTsKIAlpZiAoIWlzdGF0ZS0+ZnNtb25pdG9yX2xhc3RfdXBkYXRlKSB7CiAJCXByaW50Zigibm8gZnNtb25pdG9yXG4iKTsKIAkJcmV0dXJuIDA7CiAJfQotCXByaW50ZigiZnNtb25pdG9yIGxhc3QgdXBkYXRlICUiUFJJdU1BWCJcbiIsICh1aW50bWF4X3QpaXN0YXRlLT5mc21vbml0b3JfbGFzdF91cGRhdGUpOworCXByaW50ZigiZnNtb25pdG9yIGxhc3QgdXBkYXRlICVzXG4iLCBpc3RhdGUtPmZzbW9uaXRvcl9sYXN0X3VwZGF0ZSk7CiAKIAlmb3IgKGkgPSAwOyBpIDwgaXN0YXRlLT5jYWNoZV9ucjsgaSsrKQogCQlwcmludGYoKGlzdGF0ZS0+Y2FjaGVbaV0tPmNlX2ZsYWdzICYgQ0VfRlNNT05JVE9SX1ZBTElEKSA/ICIrIiA6ICItIik7CmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LWR1bXAtdW50cmFja2VkLWNhY2hlLmMgYi90L2hlbHBlci90ZXN0LWR1bXAtdW50cmFja2VkLWNhY2hlLmMKaW5kZXggNTI4NzBlYi4uY2YwZjJjNyAxMDA2NDQKLS0tIGEvdC9oZWxwZXIvdGVzdC1kdW1wLXVudHJhY2tlZC1jYWNoZS5jCisrKyBiL3QvaGVscGVyL3Rlc3QtZHVtcC11bnRyYWNrZWQtY2FjaGUuYwpAQCAtMSwzICsxLDQgQEAKKyNkZWZpbmUgVVNFX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgInRlc3QtdG9vbC5oIgogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAiZGlyLmgiCmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LWV4YW1wbGUtZGVjb3JhdGUuYyBiL3QvaGVscGVyL3Rlc3QtZXhhbXBsZS1kZWNvcmF0ZS5jCmluZGV4IGEyMGE2MTYuLmM4YTFjZGUgMTAwNjQ0Ci0tLSBhL3QvaGVscGVyL3Rlc3QtZXhhbXBsZS1kZWNvcmF0ZS5jCisrKyBiL3QvaGVscGVyL3Rlc3QtZXhhbXBsZS1kZWNvcmF0ZS5jCkBAIC0yNiw4ICsyNiw4IEBACiAJICogQWRkIDIgb2JqZWN0cywgb25lIHdpdGggYSBub24tTlVMTCBkZWNvcmF0aW9uIGFuZCBvbmUgd2l0aCBhIE5VTEwKIAkgKiBkZWNvcmF0aW9uLgogCSAqLwotCW9uZSA9IGxvb2t1cF91bmtub3duX29iamVjdChvbmVfb2lkLmhhc2gpOwotCXR3byA9IGxvb2t1cF91bmtub3duX29iamVjdCh0d29fb2lkLmhhc2gpOworCW9uZSA9IGxvb2t1cF91bmtub3duX29iamVjdCgmb25lX29pZCk7CisJdHdvID0gbG9va3VwX3Vua25vd25fb2JqZWN0KCZ0d29fb2lkKTsKIAlyZXQgPSBhZGRfZGVjb3JhdGlvbigmbiwgb25lLCAmZGVjb3JhdGlvbl9hKTsKIAlpZiAocmV0KQogCQlCVUcoIndoZW4gYWRkaW5nIGEgYnJhbmQtbmV3IG9iamVjdCwgTlVMTCBzaG91bGQgYmUgcmV0dXJuZWQiKTsKQEAgLTU2LDcgKzU2LDcgQEAKIAlyZXQgPSBsb29rdXBfZGVjb3JhdGlvbigmbiwgdHdvKTsKIAlpZiAocmV0ICE9ICZkZWNvcmF0aW9uX2IpCiAJCUJVRygibG9va3VwIHNob3VsZCByZXR1cm4gYWRkZWQgZGVjbGFyYXRpb24iKTsKLQl0aHJlZSA9IGxvb2t1cF91bmtub3duX29iamVjdCh0aHJlZV9vaWQuaGFzaCk7CisJdGhyZWUgPSBsb29rdXBfdW5rbm93bl9vYmplY3QoJnRocmVlX29pZCk7CiAJcmV0ID0gbG9va3VwX2RlY29yYXRpb24oJm4sIHRocmVlKTsKIAlpZiAocmV0KQogCQlCVUcoImxvb2t1cCBmb3IgdW5rbm93biBvYmplY3Qgc2hvdWxkIHJldHVybiBOVUxMIik7CmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LWdlbnplcm9zLmMgYi90L2hlbHBlci90ZXN0LWdlbnplcm9zLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTUzMmY1YgotLS0gL2Rldi9udWxsCisrKyBiL3QvaGVscGVyL3Rlc3QtZ2VuemVyb3MuYwpAQCAtMCwwICsxLDIxIEBACisjaW5jbHVkZSAidGVzdC10b29sLmgiCisjaW5jbHVkZSAiZ2l0LWNvbXBhdC11dGlsLmgiCisKK2ludCBjbWRfX2dlbnplcm9zKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwlsb25nIGNvdW50OworCisJaWYgKGFyZ2MgPiAyKSB7CisJCWZwcmludGYoc3RkZXJyLCAidXNhZ2U6ICVzIFs8Y291bnQ+XVxuIiwgYXJndlswXSk7CisJCXJldHVybiAxOworCX0KKworCWNvdW50ID0gYXJnYyA+IDEgPyBzdHJ0b2woYXJndlsxXSwgTlVMTCwgMCkgOiAtMUw7CisKKwl3aGlsZSAoY291bnQgPCAwIHx8IGNvdW50LS0pIHsKKwkJaWYgKHB1dGNoYXIoMCkgPT0gRU9GKQorCQkJcmV0dXJuIC0xOworCX0KKworCXJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvdC9oZWxwZXIvdGVzdC1oYXNoLXNwZWVkLmMgYi90L2hlbHBlci90ZXN0LWhhc2gtc3BlZWQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MzIyMzNjCi0tLSAvZGV2L251bGwKKysrIGIvdC9oZWxwZXIvdGVzdC1oYXNoLXNwZWVkLmMKQEAgLTAsMCArMSw2MSBAQAorI2luY2x1ZGUgInRlc3QtdG9vbC5oIgorI2luY2x1ZGUgImNhY2hlLmgiCisKKyNkZWZpbmUgTlVNX1NFQ09ORFMgMworCitzdGF0aWMgaW5saW5lIHZvaWQgY29tcHV0ZV9oYXNoKGNvbnN0IHN0cnVjdCBnaXRfaGFzaF9hbGdvICphbGdvLCBnaXRfaGFzaF9jdHggKmN0eCwgdWludDhfdCAqZmluYWwsIGNvbnN0IHZvaWQgKnAsIHNpemVfdCBsZW4pCit7CisJYWxnby0+aW5pdF9mbihjdHgpOworCWFsZ28tPnVwZGF0ZV9mbihjdHgsIHAsIGxlbik7CisJYWxnby0+ZmluYWxfZm4oZmluYWwsIGN0eCk7Cit9CisKK2ludCBjbWRfX2hhc2hfc3BlZWQoaW50IGFjLCBjb25zdCBjaGFyICoqYXYpCit7CisJZ2l0X2hhc2hfY3R4IGN0eDsKKwl1bnNpZ25lZCBjaGFyIGhhc2hbR0lUX01BWF9SQVdTWl07CisJY2xvY2tfdCBpbml0aWFsLCBzdGFydCwgZW5kOworCXVuc2lnbmVkIGJ1ZnNpemVzW10gPSB7IDY0LCAyNTYsIDEwMjQsIDgxOTIsIDE2Mzg0IH07CisJaW50IGk7CisJdm9pZCAqcDsKKwljb25zdCBzdHJ1Y3QgZ2l0X2hhc2hfYWxnbyAqYWxnbyA9IE5VTEw7CisKKwlpZiAoYWMgPT0gMikgeworCQlmb3IgKGkgPSAxOyBpIDwgR0lUX0hBU0hfTkFMR09TOyBpKyspIHsKKwkJCWlmICghc3RyY21wKGF2WzFdLCBoYXNoX2FsZ29zW2ldLm5hbWUpKSB7CisJCQkJYWxnbyA9ICZoYXNoX2FsZ29zW2ldOworCQkJCWJyZWFrOworCQkJfQorCQl9CisJfQorCWlmICghYWxnbykKKwkJZGllKCJ1c2FnZTogdGVzdC10b29sIGhhc2gtc3BlZWQgYWxnb19uYW1lIik7CisKKwkvKiBVc2UgdGhpcyBhcyBhbiBvZmZzZXQgdG8gbWFrZSBvdmVyZmxvdyBsZXNzIGxpa2VseS4gKi8KKwlpbml0aWFsID0gY2xvY2soKTsKKworCXByaW50ZigiYWxnbzogJXNcbiIsIGFsZ28tPm5hbWUpOworCisJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUoYnVmc2l6ZXMpOyBpKyspIHsKKwkJdW5zaWduZWQgbG9uZyBqLCBrYjsKKwkJZG91YmxlIGtiX3Blcl9zZWM7CisJCXAgPSB4Y2FsbG9jKDEsIGJ1ZnNpemVzW2ldKTsKKwkJc3RhcnQgPSBlbmQgPSBjbG9jaygpIC0gaW5pdGlhbDsKKwkJZm9yIChqID0gMDsgKChlbmQgLSBzdGFydCkgLyBDTE9DS1NfUEVSX1NFQykgPCBOVU1fU0VDT05EUzsgaisrKSB7CisJCQljb21wdXRlX2hhc2goYWxnbywgJmN0eCwgaGFzaCwgcCwgYnVmc2l6ZXNbaV0pOworCisJCQkvKgorCQkJICogT25seSBjaGVjayBlbGFwc2VkIHRpbWUgZXZlcnkgMTI4IGl0ZXJhdGlvbnMgdG8gYXZvaWQKKwkJCSAqIGRvbWluYXRpbmcgdGhlIHJ1bnRpbWUgd2l0aCBzeXN0ZW0gY2FsbHMuCisJCQkgKi8KKwkJCWlmICghKGogJiAxMjcpKQorCQkJCWVuZCA9IGNsb2NrKCkgLSBpbml0aWFsOworCQl9CisJCWtiID0gaiAqIGJ1ZnNpemVzW2ldOworCQlrYl9wZXJfc2VjID0ga2IgLyAoMTAyNCAqICgoZG91YmxlKWVuZCAtIHN0YXJ0KSAvIENMT0NLU19QRVJfU0VDKTsKKwkJcHJpbnRmKCJzaXplICV1OiAlbHUgaXRlcnM7ICVsdSBLaUI7ICUwLjJmIEtpQi9zXG4iLCBidWZzaXplc1tpXSwgaiwga2IsIGtiX3Blcl9zZWMpOworCQlmcmVlKHApOworCX0KKworCWV4aXQoMCk7Cit9CmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LWhhc2guYyBiL3QvaGVscGVyL3Rlc3QtaGFzaC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBhMzFkZTYKLS0tIC9kZXYvbnVsbAorKysgYi90L2hlbHBlci90ZXN0LWhhc2guYwpAQCAtMCwwICsxLDU4IEBACisjaW5jbHVkZSAidGVzdC10b29sLmgiCisjaW5jbHVkZSAiY2FjaGUuaCIKKworaW50IGNtZF9oYXNoX2ltcGwoaW50IGFjLCBjb25zdCBjaGFyICoqYXYsIGludCBhbGdvKQoreworCWdpdF9oYXNoX2N0eCBjdHg7CisJdW5zaWduZWQgY2hhciBoYXNoW0dJVF9NQVhfSEVYU1pdOworCXVuc2lnbmVkIGJ1ZnN6ID0gODE5MjsKKwlpbnQgYmluYXJ5ID0gMDsKKwljaGFyICpidWZmZXI7CisJY29uc3Qgc3RydWN0IGdpdF9oYXNoX2FsZ28gKmFsZ29wID0gJmhhc2hfYWxnb3NbYWxnb107CisKKwlpZiAoYWMgPT0gMikgeworCQlpZiAoIXN0cmNtcChhdlsxXSwgIi1iIikpCisJCQliaW5hcnkgPSAxOworCQllbHNlCisJCQlidWZzeiA9IHN0cnRvdWwoYXZbMV0sIE5VTEwsIDEwKSAqIDEwMjQgKiAxMDI0OworCX0KKworCWlmICghYnVmc3opCisJCWJ1ZnN6ID0gODE5MjsKKworCXdoaWxlICgoYnVmZmVyID0gbWFsbG9jKGJ1ZnN6KSkgPT0gTlVMTCkgeworCQlmcHJpbnRmKHN0ZGVyciwgImJ1ZnN6ICV1IGlzIHRvbyBiaWcsIGhhbHZpbmcuLi5cbiIsIGJ1ZnN6KTsKKwkJYnVmc3ogLz0gMjsKKwkJaWYgKGJ1ZnN6IDwgMTAyNCkKKwkJCWRpZSgiT09QUyIpOworCX0KKworCWFsZ29wLT5pbml0X2ZuKCZjdHgpOworCisJd2hpbGUgKDEpIHsKKwkJc3NpemVfdCBzeiwgdGhpc19zejsKKwkJY2hhciAqY3AgPSBidWZmZXI7CisJCXVuc2lnbmVkIHJvb20gPSBidWZzejsKKwkJdGhpc19zeiA9IDA7CisJCXdoaWxlIChyb29tKSB7CisJCQlzeiA9IHhyZWFkKDAsIGNwLCByb29tKTsKKwkJCWlmIChzeiA9PSAwKQorCQkJCWJyZWFrOworCQkJaWYgKHN6IDwgMCkKKwkJCQlkaWVfZXJybm8oInRlc3QtaGFzaCIpOworCQkJdGhpc19zeiArPSBzejsKKwkJCWNwICs9IHN6OworCQkJcm9vbSAtPSBzejsKKwkJfQorCQlpZiAodGhpc19zeiA9PSAwKQorCQkJYnJlYWs7CisJCWFsZ29wLT51cGRhdGVfZm4oJmN0eCwgYnVmZmVyLCB0aGlzX3N6KTsKKwl9CisJYWxnb3AtPmZpbmFsX2ZuKGhhc2gsICZjdHgpOworCisJaWYgKGJpbmFyeSkKKwkJZndyaXRlKGhhc2gsIDEsIGFsZ29wLT5yYXdzeiwgc3Rkb3V0KTsKKwllbHNlCisJCXB1dHMoaGFzaF90b19oZXhfYWxnb3AoaGFzaCwgYWxnb3ApKTsKKwlleGl0KDApOworfQpkaWZmIC0tZ2l0IGEvdC9oZWxwZXIvdGVzdC1oYXNobWFwLmMgYi90L2hlbHBlci90ZXN0LWhhc2htYXAuYwppbmRleCAyM2QyYjE3Li5mMzg3MDYyIDEwMDY0NAotLS0gYS90L2hlbHBlci90ZXN0LWhhc2htYXAuYworKysgYi90L2hlbHBlci90ZXN0LWhhc2htYXAuYwpAQCAtNSw2ICs1LDcgQEAKIAogc3RydWN0IHRlc3RfZW50cnkKIHsKKwlpbnQgcGFkZGluZzsgLyogaGFzaG1hcCBlbnRyeSBubyBsb25nZXIgbmVlZHMgdG8gYmUgdGhlIGZpcnN0IG1lbWJlciAqLwogCXN0cnVjdCBoYXNobWFwX2VudHJ5IGVudDsKIAkvKiBrZXkgYW5kIHZhbHVlIGFzIHR3byBcMC10ZXJtaW5hdGVkIHN0cmluZ3MgKi8KIAljaGFyIGtleVtGTEVYX0FSUkFZXTsKQEAgLTE2LDE1ICsxNywxNyBAQAogfQogCiBzdGF0aWMgaW50IHRlc3RfZW50cnlfY21wKGNvbnN0IHZvaWQgKmNtcF9kYXRhLAotCQkJICBjb25zdCB2b2lkICplbnRyeSwKLQkJCSAgY29uc3Qgdm9pZCAqZW50cnlfb3Jfa2V5LAorCQkJICBjb25zdCBzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqZXB0ciwKKwkJCSAgY29uc3Qgc3RydWN0IGhhc2htYXBfZW50cnkgKmVudHJ5X29yX2tleSwKIAkJCSAgY29uc3Qgdm9pZCAqa2V5ZGF0YSkKIHsKIAljb25zdCBpbnQgaWdub3JlX2Nhc2UgPSBjbXBfZGF0YSA/ICooKGludCAqKWNtcF9kYXRhKSA6IDA7Ci0JY29uc3Qgc3RydWN0IHRlc3RfZW50cnkgKmUxID0gZW50cnk7Ci0JY29uc3Qgc3RydWN0IHRlc3RfZW50cnkgKmUyID0gZW50cnlfb3Jfa2V5OworCWNvbnN0IHN0cnVjdCB0ZXN0X2VudHJ5ICplMSwgKmUyOwogCWNvbnN0IGNoYXIgKmtleSA9IGtleWRhdGE7CiAKKwllMSA9IGNvbnRhaW5lcl9vZihlcHRyLCBjb25zdCBzdHJ1Y3QgdGVzdF9lbnRyeSwgZW50KTsKKwllMiA9IGNvbnRhaW5lcl9vZihlbnRyeV9vcl9rZXksIGNvbnN0IHN0cnVjdCB0ZXN0X2VudHJ5LCBlbnQpOworCiAJaWYgKGlnbm9yZV9jYXNlKQogCQlyZXR1cm4gc3RyY2FzZWNtcChlMS0+a2V5LCBrZXkgPyBrZXkgOiBlMi0+a2V5KTsKIAllbHNlCkBAIC0zNyw3ICs0MCw3IEBACiAJc2l6ZV90IGtsZW4gPSBzdHJsZW4oa2V5KTsKIAlzaXplX3QgdmxlbiA9IHN0cmxlbih2YWx1ZSk7CiAJc3RydWN0IHRlc3RfZW50cnkgKmVudHJ5ID0geG1hbGxvYyhzdF9hZGQ0KHNpemVvZigqZW50cnkpLCBrbGVuLCB2bGVuLCAyKSk7Ci0JaGFzaG1hcF9lbnRyeV9pbml0KGVudHJ5LCBoYXNoKTsKKwloYXNobWFwX2VudHJ5X2luaXQoJmVudHJ5LT5lbnQsIGhhc2gpOwogCW1lbWNweShlbnRyeS0+a2V5LCBrZXksIGtsZW4gKyAxKTsKIAltZW1jcHkoZW50cnktPmtleSArIGtsZW4gKyAxLCB2YWx1ZSwgdmxlbiArIDEpOwogCXJldHVybiBlbnRyeTsKQEAgLTEwMywxMSArMTA2LDExIEBACiAKIAkJCS8qIGFkZCBlbnRyaWVzICovCiAJCQlmb3IgKGkgPSAwOyBpIDwgVEVTVF9TSVpFOyBpKyspIHsKLQkJCQloYXNobWFwX2VudHJ5X2luaXQoZW50cmllc1tpXSwgaGFzaGVzW2ldKTsKLQkJCQloYXNobWFwX2FkZCgmbWFwLCBlbnRyaWVzW2ldKTsKKwkJCQloYXNobWFwX2VudHJ5X2luaXQoJmVudHJpZXNbaV0tPmVudCwgaGFzaGVzW2ldKTsKKwkJCQloYXNobWFwX2FkZCgmbWFwLCAmZW50cmllc1tpXS0+ZW50KTsKIAkJCX0KIAotCQkJaGFzaG1hcF9mcmVlKCZtYXAsIDApOworCQkJaGFzaG1hcF9mcmVlKCZtYXApOwogCQl9CiAJfSBlbHNlIHsKIAkJLyogdGVzdCBtYXAgbG9va3VwcyAqLwpAQCAtMTE2LDggKzExOSw4IEBACiAJCS8qIGZpbGwgdGhlIG1hcCAoc3BhcnNlbHkgaWYgc3BlY2lmaWVkKSAqLwogCQlqID0gKG1ldGhvZCAmIFRFU1RfU1BBUlNFKSA/IFRFU1RfU0laRSAvIDEwIDogVEVTVF9TSVpFOwogCQlmb3IgKGkgPSAwOyBpIDwgajsgaSsrKSB7Ci0JCQloYXNobWFwX2VudHJ5X2luaXQoZW50cmllc1tpXSwgaGFzaGVzW2ldKTsKLQkJCWhhc2htYXBfYWRkKCZtYXAsIGVudHJpZXNbaV0pOworCQkJaGFzaG1hcF9lbnRyeV9pbml0KCZlbnRyaWVzW2ldLT5lbnQsIGhhc2hlc1tpXSk7CisJCQloYXNobWFwX2FkZCgmbWFwLCAmZW50cmllc1tpXS0+ZW50KTsKIAkJfQogCiAJCWZvciAoaiA9IDA7IGogPCByb3VuZHM7IGorKykgewpAQCAtMTI3LDcgKzEzMCw3IEBACiAJCQl9CiAJCX0KIAotCQloYXNobWFwX2ZyZWUoJm1hcCwgMCk7CisJCWhhc2htYXBfZnJlZSgmbWFwKTsKIAl9CiB9CiAKQEAgLTE3MywyMCArMTc2LDEzIEBACiAJCQlwMiA9IHN0cnRvayhOVUxMLCBERUxJTSk7CiAJCX0KIAotCQlpZiAoIXN0cmNtcCgiaGFzaCIsIGNtZCkgJiYgcDEpIHsKLQotCQkJLyogcHJpbnQgcmVzdWx0cyBvZiBkaWZmZXJlbnQgaGFzaCBmdW5jdGlvbnMgKi8KLQkJCXByaW50ZigiJXUgJXUgJXUgJXVcbiIsCi0JCQkgICAgICAgc3RyaGFzaChwMSksIG1lbWhhc2gocDEsIHN0cmxlbihwMSkpLAotCQkJICAgICAgIHN0cmloYXNoKHAxKSwgbWVtaWhhc2gocDEsIHN0cmxlbihwMSkpKTsKLQotCQl9IGVsc2UgaWYgKCFzdHJjbXAoImFkZCIsIGNtZCkgJiYgcDEgJiYgcDIpIHsKKwkJaWYgKCFzdHJjbXAoImFkZCIsIGNtZCkgJiYgcDEgJiYgcDIpIHsKIAogCQkJLyogY3JlYXRlIGVudHJ5IHdpdGgga2V5ID0gcDEsIHZhbHVlID0gcDIgKi8KIAkJCWVudHJ5ID0gYWxsb2NfdGVzdF9lbnRyeShoYXNoLCBwMSwgcDIpOwogCiAJCQkvKiBhZGQgdG8gaGFzaG1hcCAqLwotCQkJaGFzaG1hcF9hZGQoJm1hcCwgZW50cnkpOworCQkJaGFzaG1hcF9hZGQoJm1hcCwgJmVudHJ5LT5lbnQpOwogCiAJCX0gZWxzZSBpZiAoIXN0cmNtcCgicHV0IiwgY21kKSAmJiBwMSAmJiBwMikgewogCkBAIC0xOTQsNDMgKzE5MCw0NCBAQAogCQkJZW50cnkgPSBhbGxvY190ZXN0X2VudHJ5KGhhc2gsIHAxLCBwMik7CiAKIAkJCS8qIGFkZCAvIHJlcGxhY2UgZW50cnkgKi8KLQkJCWVudHJ5ID0gaGFzaG1hcF9wdXQoJm1hcCwgZW50cnkpOworCQkJZW50cnkgPSBoYXNobWFwX3B1dF9lbnRyeSgmbWFwLCBlbnRyeSwgZW50KTsKIAogCQkJLyogcHJpbnQgYW5kIGZyZWUgcmVwbGFjZWQgZW50cnksIGlmIGFueSAqLwogCQkJcHV0cyhlbnRyeSA/IGdldF92YWx1ZShlbnRyeSkgOiAiTlVMTCIpOwogCQkJZnJlZShlbnRyeSk7CiAKIAkJfSBlbHNlIGlmICghc3RyY21wKCJnZXQiLCBjbWQpICYmIHAxKSB7Ci0KIAkJCS8qIGxvb2t1cCBlbnRyeSBpbiBoYXNobWFwICovCi0JCQllbnRyeSA9IGhhc2htYXBfZ2V0X2Zyb21faGFzaCgmbWFwLCBoYXNoLCBwMSk7CisJCQllbnRyeSA9IGhhc2htYXBfZ2V0X2VudHJ5X2Zyb21faGFzaCgmbWFwLCBoYXNoLCBwMSwKKwkJCQkJCQlzdHJ1Y3QgdGVzdF9lbnRyeSwgZW50KTsKIAogCQkJLyogcHJpbnQgcmVzdWx0ICovCiAJCQlpZiAoIWVudHJ5KQogCQkJCXB1dHMoIk5VTEwiKTsKLQkJCXdoaWxlIChlbnRyeSkgeworCQkJaGFzaG1hcF9mb3JfZWFjaF9lbnRyeV9mcm9tKCZtYXAsIGVudHJ5LCBlbnQpCiAJCQkJcHV0cyhnZXRfdmFsdWUoZW50cnkpKTsKLQkJCQllbnRyeSA9IGhhc2htYXBfZ2V0X25leHQoJm1hcCwgZW50cnkpOwotCQkJfQogCiAJCX0gZWxzZSBpZiAoIXN0cmNtcCgicmVtb3ZlIiwgY21kKSAmJiBwMSkgewogCiAJCQkvKiBzZXR1cCBzdGF0aWMga2V5ICovCiAJCQlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSBrZXk7CisJCQlzdHJ1Y3QgaGFzaG1hcF9lbnRyeSAqcm07CiAJCQloYXNobWFwX2VudHJ5X2luaXQoJmtleSwgaGFzaCk7CiAKIAkJCS8qIHJlbW92ZSBlbnRyeSBmcm9tIGhhc2htYXAgKi8KLQkJCWVudHJ5ID0gaGFzaG1hcF9yZW1vdmUoJm1hcCwgJmtleSwgcDEpOworCQkJcm0gPSBoYXNobWFwX3JlbW92ZSgmbWFwLCAma2V5LCBwMSk7CisJCQllbnRyeSA9IHJtID8gY29udGFpbmVyX29mKHJtLCBzdHJ1Y3QgdGVzdF9lbnRyeSwgZW50KQorCQkJCQk6IE5VTEw7CiAKIAkJCS8qIHByaW50IHJlc3VsdCBhbmQgZnJlZSBlbnRyeSovCiAJCQlwdXRzKGVudHJ5ID8gZ2V0X3ZhbHVlKGVudHJ5KSA6ICJOVUxMIik7CiAJCQlmcmVlKGVudHJ5KTsKIAogCQl9IGVsc2UgaWYgKCFzdHJjbXAoIml0ZXJhdGUiLCBjbWQpKSB7Ci0KIAkJCXN0cnVjdCBoYXNobWFwX2l0ZXIgaXRlcjsKLQkJCWhhc2htYXBfaXRlcl9pbml0KCZtYXAsICZpdGVyKTsKLQkJCXdoaWxlICgoZW50cnkgPSBoYXNobWFwX2l0ZXJfbmV4dCgmaXRlcikpKQorCisJCQloYXNobWFwX2Zvcl9lYWNoX2VudHJ5KCZtYXAsICZpdGVyLCBlbnRyeSwKKwkJCQkJCWVudCAvKiBtZW1iZXIgbmFtZSAqLykKIAkJCQlwcmludGYoIiVzICVzXG4iLCBlbnRyeS0+a2V5LCBnZXRfdmFsdWUoZW50cnkpKTsKIAogCQl9IGVsc2UgaWYgKCFzdHJjbXAoInNpemUiLCBjbWQpKSB7CkBAIC0yNjUsNiArMjYyLDYgQEAKIAl9CiAKIAlzdHJidWZfcmVsZWFzZSgmbGluZSk7Ci0JaGFzaG1hcF9mcmVlKCZtYXAsIDEpOworCWhhc2htYXBfZnJlZV9lbnRyaWVzKCZtYXAsIHN0cnVjdCB0ZXN0X2VudHJ5LCBlbnQpOwogCXJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvdC9oZWxwZXIvdGVzdC1sYXp5LWluaXQtbmFtZS1oYXNoLmMgYi90L2hlbHBlci90ZXN0LWxhenktaW5pdC1uYW1lLWhhc2guYwppbmRleCBiOTlhMzcwLi5jZDFiNGM5IDEwMDY0NAotLS0gYS90L2hlbHBlci90ZXN0LWxhenktaW5pdC1uYW1lLWhhc2guYworKysgYi90L2hlbHBlci90ZXN0LWxhenktaW5pdC1uYW1lLWhhc2guYwpAQCAtNDEsMTcgKzQxLDEzIEBACiAJCQlkaWUoIm5vbi10aHJlYWRlZCBjb2RlIHBhdGggdXNlZCIpOwogCX0KIAotCWRpciA9IGhhc2htYXBfaXRlcl9maXJzdCgmdGhlX2luZGV4LmRpcl9oYXNoLCAmaXRlcl9kaXIpOwotCXdoaWxlIChkaXIpIHsKKwloYXNobWFwX2Zvcl9lYWNoX2VudHJ5KCZ0aGVfaW5kZXguZGlyX2hhc2gsICZpdGVyX2RpciwgZGlyLAorCQkJCWVudCAvKiBtZW1iZXIgbmFtZSAqLykKIAkJcHJpbnRmKCJkaXIgJTA4eCAlN2QgJXNcbiIsIGRpci0+ZW50Lmhhc2gsIGRpci0+bnIsIGRpci0+bmFtZSk7Ci0JCWRpciA9IGhhc2htYXBfaXRlcl9uZXh0KCZpdGVyX2Rpcik7Ci0JfQogCi0JY2UgPSBoYXNobWFwX2l0ZXJfZmlyc3QoJnRoZV9pbmRleC5uYW1lX2hhc2gsICZpdGVyX2NhY2hlKTsKLQl3aGlsZSAoY2UpIHsKKwloYXNobWFwX2Zvcl9lYWNoX2VudHJ5KCZ0aGVfaW5kZXgubmFtZV9oYXNoLCAmaXRlcl9jYWNoZSwgY2UsCisJCQkJZW50IC8qIG1lbWJlciBuYW1lICovKQogCQlwcmludGYoIm5hbWUgJTA4eCAlc1xuIiwgY2UtPmVudC5oYXNoLCBjZS0+bmFtZSk7Ci0JCWNlID0gaGFzaG1hcF9pdGVyX25leHQoJml0ZXJfY2FjaGUpOwotCX0KIAogCWRpc2NhcmRfY2FjaGUoKTsKIH0KZGlmZiAtLWdpdCBhL3QvaGVscGVyL3Rlc3QtbWF0Y2gtdHJlZXMuYyBiL3QvaGVscGVyL3Rlc3QtbWF0Y2gtdHJlZXMuYwppbmRleCA5Njg1N2YyLi5iOWZkNDI3IDEwMDY0NAotLS0gYS90L2hlbHBlci90ZXN0LW1hdGNoLXRyZWVzLmMKKysrIGIvdC9oZWxwZXIvdGVzdC1tYXRjaC10cmVlcy5jCkBAIC0yMCw3ICsyMCw3IEBACiAJaWYgKCF0d28pCiAJCWRpZSgibm90IGEgdHJlZS1pc2ggJXMiLCBhdlsyXSk7CiAKLQlzaGlmdF90cmVlKCZvbmUtPm9iamVjdC5vaWQsICZ0d28tPm9iamVjdC5vaWQsICZzaGlmdGVkLCAtMSk7CisJc2hpZnRfdHJlZSh0aGVfcmVwb3NpdG9yeSwgJm9uZS0+b2JqZWN0Lm9pZCwgJnR3by0+b2JqZWN0Lm9pZCwgJnNoaWZ0ZWQsIC0xKTsKIAlwcmludGYoInNoaWZ0ZWQ6ICVzXG4iLCBvaWRfdG9faGV4KCZzaGlmdGVkKSk7CiAKIAlleGl0KDApOwpkaWZmIC0tZ2l0IGEvdC9oZWxwZXIvdGVzdC1vaWRtYXAuYyBiL3QvaGVscGVyL3Rlc3Qtb2lkbWFwLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGFjZjk5OQotLS0gL2Rldi9udWxsCisrKyBiL3QvaGVscGVyL3Rlc3Qtb2lkbWFwLmMKQEAgLTAsMCArMSwxMTIgQEAKKyNpbmNsdWRlICJ0ZXN0LXRvb2wuaCIKKyNpbmNsdWRlICJjYWNoZS5oIgorI2luY2x1ZGUgIm9pZG1hcC5oIgorI2luY2x1ZGUgInN0cmJ1Zi5oIgorCisvKiBrZXkgaXMgYW4gb2lkIGFuZCB2YWx1ZSBpcyBhIG5hbWUgKGNvdWxkIGJlIGEgcmVmbmFtZSBmb3IgZXhhbXBsZSkgKi8KK3N0cnVjdCB0ZXN0X2VudHJ5IHsKKwlzdHJ1Y3Qgb2lkbWFwX2VudHJ5IGVudHJ5OworCWNoYXIgbmFtZVtGTEVYX0FSUkFZXTsKK307CisKKyNkZWZpbmUgREVMSU0gIiBcdFxyXG4iCisKKy8qCisgKiBSZWFkIHN0ZGluIGxpbmUgYnkgbGluZSBhbmQgcHJpbnQgcmVzdWx0IG9mIGNvbW1hbmRzIHRvIHN0ZG91dDoKKyAqCisgKiBoYXNoIG9pZGtleSAtPiBzaGExaGFzaChvaWRrZXkpCisgKiBwdXQgb2lka2V5IG5hbWV2YWx1ZSAtPiBOVUxMIC8gb2xkIG5hbWV2YWx1ZQorICogZ2V0IG9pZGtleSAtPiBOVUxMIC8gbmFtZXZhbHVlCisgKiByZW1vdmUgb2lka2V5IC0+IE5VTEwgLyBvbGQgbmFtZXZhbHVlCisgKiBpdGVyYXRlIC0+IG9pZGtleTEgbmFtZXZhbHVlMVxub2lka2V5MiBuYW1ldmFsdWUyXG4uLi4KKyAqCisgKi8KK2ludCBjbWRfX29pZG1hcChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpCit7CisJc3RydWN0IHN0cmJ1ZiBsaW5lID0gU1RSQlVGX0lOSVQ7CisJc3RydWN0IG9pZG1hcCBtYXAgPSBPSURNQVBfSU5JVDsKKworCXNldHVwX2dpdF9kaXJlY3RvcnkoKTsKKworCS8qIGluaXQgb2lkbWFwICovCisJb2lkbWFwX2luaXQoJm1hcCwgMCk7CisKKwkvKiBwcm9jZXNzIGNvbW1hbmRzIGZyb20gc3RkaW4gKi8KKwl3aGlsZSAoc3RyYnVmX2dldGxpbmUoJmxpbmUsIHN0ZGluKSAhPSBFT0YpIHsKKwkJY2hhciAqY21kLCAqcDEgPSBOVUxMLCAqcDIgPSBOVUxMOworCQlzdHJ1Y3QgdGVzdF9lbnRyeSAqZW50cnk7CisJCXN0cnVjdCBvYmplY3RfaWQgb2lkOworCisJCS8qIGJyZWFrIGxpbmUgaW50byBjb21tYW5kIGFuZCB1cCB0byB0d28gcGFyYW1ldGVycyAqLworCQljbWQgPSBzdHJ0b2sobGluZS5idWYsIERFTElNKTsKKwkJLyogaWdub3JlIGVtcHR5IGxpbmVzICovCisJCWlmICghY21kIHx8ICpjbWQgPT0gJyMnKQorCQkJY29udGludWU7CisKKwkJcDEgPSBzdHJ0b2soTlVMTCwgREVMSU0pOworCQlpZiAocDEpCisJCQlwMiA9IHN0cnRvayhOVUxMLCBERUxJTSk7CisKKwkJaWYgKCFzdHJjbXAoInB1dCIsIGNtZCkgJiYgcDEgJiYgcDIpIHsKKworCQkJaWYgKGdldF9vaWQocDEsICZvaWQpKSB7CisJCQkJcHJpbnRmKCJVbmtub3duIG9pZDogJXNcbiIsIHAxKTsKKwkJCQljb250aW51ZTsKKwkJCX0KKworCQkJLyogY3JlYXRlIGVudHJ5IHdpdGggb2lkX2tleSA9IHAxLCBuYW1lX3ZhbHVlID0gcDIgKi8KKwkJCUZMRVhfQUxMT0NfU1RSKGVudHJ5LCBuYW1lLCBwMik7CisJCQlvaWRjcHkoJmVudHJ5LT5lbnRyeS5vaWQsICZvaWQpOworCisJCQkvKiBhZGQgLyByZXBsYWNlIGVudHJ5ICovCisJCQllbnRyeSA9IG9pZG1hcF9wdXQoJm1hcCwgZW50cnkpOworCisJCQkvKiBwcmludCBhbmQgZnJlZSByZXBsYWNlZCBlbnRyeSwgaWYgYW55ICovCisJCQlwdXRzKGVudHJ5ID8gZW50cnktPm5hbWUgOiAiTlVMTCIpOworCQkJZnJlZShlbnRyeSk7CisKKwkJfSBlbHNlIGlmICghc3RyY21wKCJnZXQiLCBjbWQpICYmIHAxKSB7CisKKwkJCWlmIChnZXRfb2lkKHAxLCAmb2lkKSkgeworCQkJCXByaW50ZigiVW5rbm93biBvaWQ6ICVzXG4iLCBwMSk7CisJCQkJY29udGludWU7CisJCQl9CisKKwkJCS8qIGxvb2t1cCBlbnRyeSBpbiBvaWRtYXAgKi8KKwkJCWVudHJ5ID0gb2lkbWFwX2dldCgmbWFwLCAmb2lkKTsKKworCQkJLyogcHJpbnQgcmVzdWx0ICovCisJCQlwdXRzKGVudHJ5ID8gZW50cnktPm5hbWUgOiAiTlVMTCIpOworCisJCX0gZWxzZSBpZiAoIXN0cmNtcCgicmVtb3ZlIiwgY21kKSAmJiBwMSkgeworCisJCQlpZiAoZ2V0X29pZChwMSwgJm9pZCkpIHsKKwkJCQlwcmludGYoIlVua25vd24gb2lkOiAlc1xuIiwgcDEpOworCQkJCWNvbnRpbnVlOworCQkJfQorCisJCQkvKiByZW1vdmUgZW50cnkgZnJvbSBvaWRtYXAgKi8KKwkJCWVudHJ5ID0gb2lkbWFwX3JlbW92ZSgmbWFwLCAmb2lkKTsKKworCQkJLyogcHJpbnQgcmVzdWx0IGFuZCBmcmVlIGVudHJ5Ki8KKwkJCXB1dHMoZW50cnkgPyBlbnRyeS0+bmFtZSA6ICJOVUxMIik7CisJCQlmcmVlKGVudHJ5KTsKKworCQl9IGVsc2UgaWYgKCFzdHJjbXAoIml0ZXJhdGUiLCBjbWQpKSB7CisKKwkJCXN0cnVjdCBvaWRtYXBfaXRlciBpdGVyOworCQkJb2lkbWFwX2l0ZXJfaW5pdCgmbWFwLCAmaXRlcik7CisJCQl3aGlsZSAoKGVudHJ5ID0gb2lkbWFwX2l0ZXJfbmV4dCgmaXRlcikpKQorCQkJCXByaW50ZigiJXMgJXNcbiIsIG9pZF90b19oZXgoJmVudHJ5LT5lbnRyeS5vaWQpLCBlbnRyeS0+bmFtZSk7CisKKwkJfSBlbHNlIHsKKworCQkJcHJpbnRmKCJVbmtub3duIGNvbW1hbmQgJXNcbiIsIGNtZCk7CisKKwkJfQorCX0KKworCXN0cmJ1Zl9yZWxlYXNlKCZsaW5lKTsKKwlvaWRtYXBfZnJlZSgmbWFwLCAxKTsKKwlyZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL3QvaGVscGVyL3Rlc3QtcGFyc2Utb3B0aW9ucy5jIGIvdC9oZWxwZXIvdGVzdC1wYXJzZS1vcHRpb25zLmMKaW5kZXggNDdmZWU2Ni4uMjA1MWNlNSAxMDA2NDQKLS0tIGEvdC9oZWxwZXIvdGVzdC1wYXJzZS1vcHRpb25zLmMKKysrIGIvdC9oZWxwZXIvdGVzdC1wYXJzZS1vcHRpb25zLmMKQEAgLTIsNiArMiw3IEBACiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJwYXJzZS1vcHRpb25zLmgiCiAjaW5jbHVkZSAic3RyaW5nLWxpc3QuaCIKKyNpbmNsdWRlICJ0cmFjZTIuaCIKIAogc3RhdGljIGludCBib29sZWFuID0gMDsKIHN0YXRpYyBpbnQgaW50ZWdlciA9IDA7CkBAIC0xMjAsNiArMTIxLDggQEAKIAkJT1BUX0lOVEVHRVIoJ2onLCBOVUxMLCAmaW50ZWdlciwgImdldCBhIGludGVnZXIsIHRvbyIpLAogCQlPUFRfTUFHTklUVURFKCdtJywgIm1hZ25pdHVkZSIsICZtYWduaXR1ZGUsICJnZXQgYSBtYWduaXR1ZGUiKSwKIAkJT1BUX1NFVF9JTlQoMCwgInNldDIzIiwgJmludGVnZXIsICJzZXQgaW50ZWdlciB0byAyMyIsIDIzKSwKKwkJT1BUX0NNRE1PREUoMCwgIm1vZGUxIiwgJmludGVnZXIsICJzZXQgaW50ZWdlciB0byAxIChjbWRtb2RlIG9wdGlvbikiLCAxKSwKKwkJT1BUX0NNRE1PREUoMCwgIm1vZGUyIiwgJmludGVnZXIsICJzZXQgaW50ZWdlciB0byAyIChjbWRtb2RlIG9wdGlvbikiLCAyKSwKIAkJT1BUX0NBTExCQUNLKCdMJywgImxlbmd0aCIsICZpbnRlZ2VyLCAic3RyIiwKIAkJCSJnZXQgbGVuZ3RoIG9mIDxzdHI+IiwgbGVuZ3RoX2NhbGxiYWNrKSwKIAkJT1BUX0ZJTEVOQU1FKCdGJywgImZpbGUiLCAmZmlsZSwgInNldCBmaWxlIHRvIDxmaWxlPiIpLApAQCAtMTMxLDcgKzEzNCw3IEBACiAJCU9QVF9OT09QX05PQVJHKDAsICJvYnNvbGV0ZSIpLAogCQlPUFRfU1RSSU5HX0xJU1QoMCwgImxpc3QiLCAmbGlzdCwgInN0ciIsICJhZGQgc3RyIHRvIGxpc3QiKSwKIAkJT1BUX0dST1VQKCJNYWdpYyBhcmd1bWVudHMiKSwKLQkJT1BUX0FSR1VNRU5UKCJxdXV4IiwgIm1lYW5zIC0tcXV1eCIpLAorCQlPUFRfQVJHVU1FTlQoInF1dXgiLCBOVUxMLCAibWVhbnMgLS1xdXV4IiksCiAJCU9QVF9OVU1CRVJfQ0FMTEJBQ0soJmludGVnZXIsICJzZXQgaW50ZWdlciB0byBOVU0iLAogCQkJbnVtYmVyX2NhbGxiYWNrKSwKIAkJeyBPUFRJT05fQ09VTlRVUCwgJysnLCBOVUxMLCAmYm9vbGVhbiwgTlVMTCwgInNhbWUgYXMgLWIiLApAQCAtMTQ4LDExICsxNTEsMTYgQEAKIAkJT1BUX0NBTExCQUNLKDAsICJleHBlY3QiLCAmZXhwZWN0LCAic3RyaW5nIiwKIAkJCSAgICAgImV4cGVjdGVkIG91dHB1dCBpbiB0aGUgdmFyaWFibGUgZHVtcCIsCiAJCQkgICAgIGNvbGxlY3RfZXhwZWN0KSwKKwkJT1BUX0dST1VQKCJBbGlhcyIpLAorCQlPUFRfU1RSSU5HKCdBJywgImFsaWFzLXNvdXJjZSIsICZzdHJpbmcsICJzdHJpbmciLCAiZ2V0IGEgc3RyaW5nIiksCisJCU9QVF9BTElBUygnWicsICJhbGlhcy10YXJnZXQiLCAiYWxpYXMtc291cmNlIiksCiAJCU9QVF9FTkQoKSwKIAl9OwogCWludCBpOwogCWludCByZXQgPSAwOwogCisJdHJhY2UyX2NtZF9uYW1lKCJfcGFyc2VfIik7CisKIAlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCAoY29uc3QgY2hhciAqKilhcmd2LCBwcmVmaXgsIG9wdGlvbnMsIHVzYWdlLCAwKTsKIAogCWlmIChsZW5ndGhfY2IuY2FsbGVkKSB7CmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LXBhcnNlLXBhdGhzcGVjLWZpbGUuYyBiL3QvaGVscGVyL3Rlc3QtcGFyc2UtcGF0aHNwZWMtZmlsZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAyZjRjY2YKLS0tIC9kZXYvbnVsbAorKysgYi90L2hlbHBlci90ZXN0LXBhcnNlLXBhdGhzcGVjLWZpbGUuYwpAQCAtMCwwICsxLDMzIEBACisjaW5jbHVkZSAidGVzdC10b29sLmgiCisjaW5jbHVkZSAicGFyc2Utb3B0aW9ucy5oIgorI2luY2x1ZGUgInBhdGhzcGVjLmgiCisjaW5jbHVkZSAiZ2V0dGV4dC5oIgorCitpbnQgY21kX19wYXJzZV9wYXRoc3BlY19maWxlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwlzdHJ1Y3QgcGF0aHNwZWMgcGF0aHNwZWM7CisJY29uc3QgY2hhciAqcGF0aHNwZWNfZnJvbV9maWxlID0gMDsKKwlpbnQgcGF0aHNwZWNfZmlsZV9udWwgPSAwLCBpOworCisJc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IHVzYWdlW10gPSB7CisJCSJ0ZXN0LXRvb2wgcGFyc2UtcGF0aHNwZWMtZmlsZSAtLXBhdGhzcGVjLWZyb20tZmlsZSBbLS1wYXRoc3BlYy1maWxlLW51bF0iLAorCQlOVUxMCisJfTsKKworCXN0cnVjdCBvcHRpb24gb3B0aW9uc1tdID0geworCQlPUFRfUEFUSFNQRUNfRlJPTV9GSUxFKCZwYXRoc3BlY19mcm9tX2ZpbGUpLAorCQlPUFRfUEFUSFNQRUNfRklMRV9OVUwoJnBhdGhzcGVjX2ZpbGVfbnVsKSwKKwkJT1BUX0VORCgpCisJfTsKKworCXBhcnNlX29wdGlvbnMoYXJnYywgYXJndiwgMCwgb3B0aW9ucywgdXNhZ2UsIDApOworCisJcGFyc2VfcGF0aHNwZWNfZmlsZSgmcGF0aHNwZWMsIDAsIDAsIDAsIHBhdGhzcGVjX2Zyb21fZmlsZSwKKwkJCSAgICBwYXRoc3BlY19maWxlX251bCk7CisKKwlmb3IgKGkgPSAwOyBpIDwgcGF0aHNwZWMubnI7IGkrKykKKwkJcHJpbnRmKCIlc1xuIiwgcGF0aHNwZWMuaXRlbXNbaV0ub3JpZ2luYWwpOworCisJY2xlYXJfcGF0aHNwZWMoJnBhdGhzcGVjKTsKKwlyZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL3QvaGVscGVyL3Rlc3QtcGF0aC11dGlscy5jIGIvdC9oZWxwZXIvdGVzdC1wYXRoLXV0aWxzLmMKaW5kZXggZTczN2E5NC4uMzEzYTE1MyAxMDA2NDQKLS0tIGEvdC9oZWxwZXIvdGVzdC1wYXRoLXV0aWxzLmMKKysrIGIvdC9oZWxwZXIvdGVzdC1wYXRoLXV0aWxzLmMKQEAgLTE3Nyw2ICsxNzcsMTQgQEAKIAlyZXR1cm4gaXNfaGZzX2RvdGdpdG1vZHVsZXMocGF0aCkgfHwgaXNfbnRmc19kb3RnaXRtb2R1bGVzKHBhdGgpOwogfQogCitzdGF0aWMgaW50IGNtcF9ieV9zdF9zaXplKGNvbnN0IHZvaWQgKmEsIGNvbnN0IHZvaWQgKmIpCit7CisJaW50cHRyX3QgeCA9IChpbnRwdHJfdCkoKHN0cnVjdCBzdHJpbmdfbGlzdF9pdGVtICopYSktPnV0aWw7CisJaW50cHRyX3QgeSA9IChpbnRwdHJfdCkoKHN0cnVjdCBzdHJpbmdfbGlzdF9pdGVtICopYiktPnV0aWw7CisKKwlyZXR1cm4geCA+IHkgPyAtMSA6ICh4IDwgeSA/ICsxIDogMCk7Cit9CisKIC8qCiAgKiBBIHZlcnkgc2ltcGxlLCByZXByb2R1Y2libGUgcHNldWRvLXJhbmRvbSBnZW5lcmF0b3IuIENvcGllZCBmcm9tCiAgKiBgdGVzdC1nZW5yYW5kb20uY2AuCkBAIC0yODIsMTEgKzI5MCwxNCBAQAogCX0KIAogCWlmIChhcmdjID49IDIgJiYgIXN0cmNtcChhcmd2WzFdLCAicmVhbF9wYXRoIikpIHsKKwkJc3RydWN0IHN0cmJ1ZiByZWFscGF0aCA9IFNUUkJVRl9JTklUOwogCQl3aGlsZSAoYXJnYyA+IDIpIHsKLQkJCXB1dHMocmVhbF9wYXRoKGFyZ3ZbMl0pKTsKKwkJCXN0cmJ1Zl9yZWFscGF0aCgmcmVhbHBhdGgsIGFyZ3ZbMl0sIDEpOworCQkJcHV0cyhyZWFscGF0aC5idWYpOwogCQkJYXJnYy0tOwogCQkJYXJndisrOwogCQl9CisJCXN0cmJ1Zl9yZWxlYXNlKCZyZWFscGF0aCk7CiAJCXJldHVybiAwOwogCX0KIApAQCAtMzg0LDYgKzM5NSw2MiBAQAogCQlyZXR1cm4gISFyZXM7CiAJfQogCisJaWYgKGFyZ2MgPiAyICYmICFzdHJjbXAoYXJndlsxXSwgImZpbGUtc2l6ZSIpKSB7CisJCWludCByZXMgPSAwLCBpOworCQlzdHJ1Y3Qgc3RhdCBzdDsKKworCQlmb3IgKGkgPSAyOyBpIDwgYXJnYzsgaSsrKQorCQkJaWYgKHN0YXQoYXJndltpXSwgJnN0KSkKKwkJCQlyZXMgPSBlcnJvcl9lcnJubygiQ2Fubm90IHN0YXQgJyVzJyIsIGFyZ3ZbaV0pOworCQkJZWxzZQorCQkJCXByaW50ZigiJSJQUkl1TUFYIlxuIiwgKHVpbnRtYXhfdClzdC5zdF9zaXplKTsKKwkJcmV0dXJuICEhcmVzOworCX0KKworCWlmIChhcmdjID09IDQgJiYgIXN0cmNtcChhcmd2WzFdLCAic2tpcC1uLWJ5dGVzIikpIHsKKwkJaW50IGZkID0gb3Blbihhcmd2WzJdLCBPX1JET05MWSksIG9mZnNldCA9IGF0b2koYXJndlszXSk7CisJCWNoYXIgYnVmZmVyWzY1NTM2XTsKKworCQlpZiAoZmQgPCAwKQorCQkJZGllX2Vycm5vKCJjb3VsZCBub3Qgb3BlbiAnJXMnIiwgYXJndlsyXSk7CisJCWlmIChsc2VlayhmZCwgb2Zmc2V0LCBTRUVLX1NFVCkgPCAwKQorCQkJZGllX2Vycm5vKCJjb3VsZCBub3Qgc2tpcCAlZCBieXRlcyIsIG9mZnNldCk7CisJCWZvciAoOzspIHsKKwkJCXNzaXplX3QgY291bnQgPSByZWFkKGZkLCBidWZmZXIsIHNpemVvZihidWZmZXIpKTsKKwkJCWlmIChjb3VudCA8IDApCisJCQkJZGllX2Vycm5vKCJjb3VsZCBub3QgcmVhZCAnJXMnIiwgYXJndlsyXSk7CisJCQlpZiAoIWNvdW50KQorCQkJCWJyZWFrOworCQkJaWYgKHdyaXRlKDEsIGJ1ZmZlciwgY291bnQpIDwgMCkKKwkJCQlkaWVfZXJybm8oImNvdWxkIG5vdCB3cml0ZSB0byBzdGRvdXQiKTsKKwkJfQorCQljbG9zZShmZCk7CisJCXJldHVybiAwOworCX0KKworCWlmIChhcmdjID4gNSAmJiAhc3RyY21wKGFyZ3ZbMV0sICJzbGljZS10ZXN0cyIpKSB7CisJCWludCByZXMgPSAwOworCQlsb25nIG9mZnNldCwgc3RyaWRlLCBpOworCQlzdHJ1Y3Qgc3RyaW5nX2xpc3QgbGlzdCA9IFNUUklOR19MSVNUX0lOSVRfTk9EVVA7CisJCXN0cnVjdCBzdGF0IHN0OworCisJCW9mZnNldCA9IHN0cnRvbChhcmd2WzJdLCBOVUxMLCAxMCk7CisJCXN0cmlkZSA9IHN0cnRvbChhcmd2WzNdLCBOVUxMLCAxMCk7CisJCWlmIChzdHJpZGUgPCAxKQorCQkJc3RyaWRlID0gMTsKKwkJZm9yIChpID0gNDsgaSA8IGFyZ2M7IGkrKykKKwkJCWlmIChzdGF0KGFyZ3ZbaV0sICZzdCkpCisJCQkJcmVzID0gZXJyb3JfZXJybm8oIkNhbm5vdCBzdGF0ICclcyciLCBhcmd2W2ldKTsKKwkJCWVsc2UKKwkJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJmxpc3QsIGFyZ3ZbaV0pLT51dGlsID0KKwkJCQkJKHZvaWQgKikoaW50cHRyX3Qpc3Quc3Rfc2l6ZTsKKwkJUVNPUlQobGlzdC5pdGVtcywgbGlzdC5uciwgY21wX2J5X3N0X3NpemUpOworCQlmb3IgKGkgPSBvZmZzZXQ7IGkgPCBsaXN0Lm5yOyBpKz0gc3RyaWRlKQorCQkJcHJpbnRmKCIlc1xuIiwgbGlzdC5pdGVtc1tpXS5zdHJpbmcpOworCisJCXJldHVybiAhIXJlczsKKwl9CisKIAlpZiAoYXJnYyA+IDEgJiYgIXN0cmNtcChhcmd2WzFdLCAicHJvdGVjdF9udGZzX2hmcyIpKQogCQlyZXR1cm4gISFwcm90ZWN0X250ZnNfaGZzX2JlbmNobWFyayhhcmdjIC0gMSwgYXJndiArIDEpOwogCmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LXByaW8tcXVldWUuYyBiL3QvaGVscGVyL3Rlc3QtcHJpby1xdWV1ZS5jCmluZGV4IDViYzljNDYuLmY0MDI4NDQgMTAwNjQ0Ci0tLSBhL3QvaGVscGVyL3Rlc3QtcHJpby1xdWV1ZS5jCisrKyBiL3QvaGVscGVyL3Rlc3QtcHJpby1xdWV1ZS5jCkBAIC00MCw3ICs0MCw3IEBACiAJCX0gZWxzZSBpZiAoIXN0cmNtcCgqYXJndiwgInN0YWNrIikpIHsKIAkJCXBxLmNvbXBhcmUgPSBOVUxMOwogCQl9IGVsc2UgewotCQkJaW50ICp2ID0gbWFsbG9jKHNpemVvZigqdikpOworCQkJaW50ICp2ID0geG1hbGxvYyhzaXplb2YoKnYpKTsKIAkJCSp2ID0gYXRvaSgqYXJndik7CiAJCQlwcmlvX3F1ZXVlX3B1dCgmcHEsIHYpOwogCQl9CmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LXByb2dyZXNzLmMgYi90L2hlbHBlci90ZXN0LXByb2dyZXNzLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDJiOTZjYgotLS0gL2Rldi9udWxsCisrKyBiL3QvaGVscGVyL3Rlc3QtcHJvZ3Jlc3MuYwpAQCAtMCwwICsxLDgxIEBACisvKgorICogQSB0ZXN0IGhlbHBlciB0byBleGVyY2lzZSB0aGUgcHJvZ3Jlc3MgZGlzcGxheS4KKyAqCisgKiBSZWFkcyBpbnN0cnVjdGlvbnMgZnJvbSBzdGFuZGFyZCBpbnB1dCwgb25lIGluc3RydWN0aW9uIHBlciBsaW5lOgorICoKKyAqICAgInByb2dyZXNzIDxpdGVtcz4iIC0gQ2FsbCBkaXNwbGF5X3Byb2dyZXNzKCkgd2l0aCB0aGUgZ2l2ZW4gaXRlbSBjb3VudAorICogICAgICAgICAgICAgICAgICAgICAgICBhcyBwYXJhbWV0ZXIuCisgKiAgICJ0aHJvdWdocHV0IDxieXRlcz4gPG1pbGxpcz4gLSBDYWxsIGRpc3BsYXlfdGhyb3VnaHB1dCgpIHdpdGggdGhlIGdpdmVuCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieXRlIGNvdW50IGFzIHBhcmFtZXRlci4gIFRoZSAnbWlsbGlzJworICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BlY2lmeSB0aGUgdGltZSBlbGFwc2VkIHNpbmNlIHRoZQorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRfcHJvZ3Jlc3MoKSBjYWxsLgorICogICAidXBkYXRlIiAtIFNldCB0aGUgJ3Byb2dyZXNzX3VwZGF0ZScgZmxhZy4KKyAqCisgKiBTZWUgJ3QwNTAwLXByb2dyZXNzLWRpc3BsYXkuc2gnIGZvciBleGFtcGxlcy4KKyAqLworI2luY2x1ZGUgInRlc3QtdG9vbC5oIgorI2luY2x1ZGUgImdldHRleHQuaCIKKyNpbmNsdWRlICJwYXJzZS1vcHRpb25zLmgiCisjaW5jbHVkZSAicHJvZ3Jlc3MuaCIKKyNpbmNsdWRlICJzdHJidWYuaCIKKworLyoKKyAqIFRoZXNlIGFyZSBkZWZpbmVkIGluICdwcm9ncmVzcy5jJywgYnV0IGFyZSBub3QgZXhwb3NlZCBpbiAncHJvZ3Jlc3MuaCcsCisgKiBiZWNhdXNlIHRoZXkgYXJlIGV4Y2x1c2l2ZWx5IGZvciB0ZXN0aW5nLgorICovCitleHRlcm4gaW50IHByb2dyZXNzX3Rlc3Rpbmc7CitleHRlcm4gdWludDY0X3QgcHJvZ3Jlc3NfdGVzdF9uczsKK3ZvaWQgcHJvZ3Jlc3NfdGVzdF9mb3JjZV91cGRhdGUodm9pZCk7CisKK2ludCBjbWRfX3Byb2dyZXNzKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwlpbnQgdG90YWwgPSAwOworCWNvbnN0IGNoYXIgKnRpdGxlOworCXN0cnVjdCBzdHJidWYgbGluZSA9IFNUUkJVRl9JTklUOworCXN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3M7CisKKwljb25zdCBjaGFyICp1c2FnZVtdID0geworCQkidGVzdC10b29sIHByb2dyZXNzIFstLXRvdGFsPTxuPl0gPHByb2dyZXNzLXRpdGxlPiIsCisJCU5VTEwKKwl9OworCXN0cnVjdCBvcHRpb24gb3B0aW9uc1tdID0geworCQlPUFRfSU5URUdFUigwLCAidG90YWwiLCAmdG90YWwsICJ0b3RhbCBudW1iZXIgb2YgaXRlbXMiKSwKKwkJT1BUX0VORCgpLAorCX07CisKKwlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBOVUxMLCBvcHRpb25zLCB1c2FnZSwgMCk7CisJaWYgKGFyZ2MgIT0gMSkKKwkJZGllKCJuZWVkIGEgdGl0bGUgZm9yIHRoZSBwcm9ncmVzcyBvdXRwdXQiKTsKKwl0aXRsZSA9IGFyZ3ZbMF07CisKKwlwcm9ncmVzc190ZXN0aW5nID0gMTsKKwlwcm9ncmVzcyA9IHN0YXJ0X3Byb2dyZXNzKHRpdGxlLCB0b3RhbCk7CisJd2hpbGUgKHN0cmJ1Zl9nZXRsaW5lKCZsaW5lLCBzdGRpbikgIT0gRU9GKSB7CisJCWNoYXIgKmVuZDsKKworCQlpZiAoc2tpcF9wcmVmaXgobGluZS5idWYsICJwcm9ncmVzcyAiLCAoY29uc3QgY2hhciAqKikgJmVuZCkpIHsKKwkJCXVpbnQ2NF90IGl0ZW1fY291bnQgPSBzdHJ0b3VsbChlbmQsICZlbmQsIDEwKTsKKwkJCWlmICgqZW5kICE9ICdcMCcpCisJCQkJZGllKCJpbnZhbGlkIGlucHV0OiAnJXMnXG4iLCBsaW5lLmJ1Zik7CisJCQlkaXNwbGF5X3Byb2dyZXNzKHByb2dyZXNzLCBpdGVtX2NvdW50KTsKKwkJfSBlbHNlIGlmIChza2lwX3ByZWZpeChsaW5lLmJ1ZiwgInRocm91Z2hwdXQgIiwKKwkJCQkgICAgICAgKGNvbnN0IGNoYXIgKiopICZlbmQpKSB7CisJCQl1aW50NjRfdCBieXRlX2NvdW50LCB0ZXN0X21zOworCisJCQlieXRlX2NvdW50ID0gc3RydG91bGwoZW5kLCAmZW5kLCAxMCk7CisJCQlpZiAoKmVuZCAhPSAnICcpCisJCQkJZGllKCJpbnZhbGlkIGlucHV0OiAnJXMnXG4iLCBsaW5lLmJ1Zik7CisJCQl0ZXN0X21zID0gc3RydG91bGwoZW5kICsgMSwgJmVuZCwgMTApOworCQkJaWYgKCplbmQgIT0gJ1wwJykKKwkJCQlkaWUoImludmFsaWQgaW5wdXQ6ICclcydcbiIsIGxpbmUuYnVmKTsKKwkJCXByb2dyZXNzX3Rlc3RfbnMgPSB0ZXN0X21zICogMTAwMCAqIDEwMDA7CisJCQlkaXNwbGF5X3Rocm91Z2hwdXQocHJvZ3Jlc3MsIGJ5dGVfY291bnQpOworCQl9IGVsc2UgaWYgKCFzdHJjbXAobGluZS5idWYsICJ1cGRhdGUiKSkKKwkJCXByb2dyZXNzX3Rlc3RfZm9yY2VfdXBkYXRlKCk7CisJCWVsc2UKKwkJCWRpZSgiaW52YWxpZCBpbnB1dDogJyVzJ1xuIiwgbGluZS5idWYpOworCX0KKwlzdG9wX3Byb2dyZXNzKCZwcm9ncmVzcyk7CisKKwlyZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL3QvaGVscGVyL3Rlc3QtcmVhZC1jYWNoZS5jIGIvdC9oZWxwZXIvdGVzdC1yZWFkLWNhY2hlLmMKaW5kZXggZDY3NGM4OC4uMjQ0OTc3YSAxMDA2NDQKLS0tIGEvdC9oZWxwZXIvdGVzdC1yZWFkLWNhY2hlLmMKKysrIGIvdC9oZWxwZXIvdGVzdC1yZWFkLWNhY2hlLmMKQEAgLTEsMTQgKzEsMzUgQEAKICNpbmNsdWRlICJ0ZXN0LXRvb2wuaCIKICNpbmNsdWRlICJjYWNoZS5oIgorI2luY2x1ZGUgImNvbmZpZy5oIgogCiBpbnQgY21kX19yZWFkX2NhY2hlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKIHsKIAlpbnQgaSwgY250ID0gMTsKKwljb25zdCBjaGFyICpuYW1lID0gTlVMTDsKKworCWlmIChhcmdjID4gMSAmJiBza2lwX3ByZWZpeChhcmd2WzFdLCAiLS1wcmludC1hbmQtcmVmcmVzaD0iLCAmbmFtZSkpIHsKKwkJYXJnYy0tOworCQlhcmd2Kys7CisJfQorCiAJaWYgKGFyZ2MgPT0gMikKIAkJY250ID0gc3RydG9sKGFyZ3ZbMV0sIE5VTEwsIDApOwogCXNldHVwX2dpdF9kaXJlY3RvcnkoKTsKKwlnaXRfY29uZmlnKGdpdF9kZWZhdWx0X2NvbmZpZywgTlVMTCk7CiAJZm9yIChpID0gMDsgaSA8IGNudDsgaSsrKSB7CiAJCXJlYWRfY2FjaGUoKTsKKwkJaWYgKG5hbWUpIHsKKwkJCWludCBwb3M7CisKKwkJCXJlZnJlc2hfaW5kZXgoJnRoZV9pbmRleCwgUkVGUkVTSF9RVUlFVCwKKwkJCQkgICAgICBOVUxMLCBOVUxMLCBOVUxMKTsKKwkJCXBvcyA9IGluZGV4X25hbWVfcG9zKCZ0aGVfaW5kZXgsIG5hbWUsIHN0cmxlbihuYW1lKSk7CisJCQlpZiAocG9zIDwgMCkKKwkJCQlkaWUoIiVzIG5vdCBpbiBpbmRleCIsIG5hbWUpOworCQkJcHJpbnRmKCIlcyBpcyVzIHVwIHRvIGRhdGVcbiIsIG5hbWUsCisJCQkgICAgICAgY2VfdXB0b2RhdGUodGhlX2luZGV4LmNhY2hlW3Bvc10pID8gIiIgOiAiIG5vdCIpOworCQkJd3JpdGVfZmlsZShuYW1lLCAiJWRcbiIsIGkpOworCQl9CiAJCWRpc2NhcmRfY2FjaGUoKTsKIAl9CiAJcmV0dXJuIDA7CmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LXJlYWQtZ3JhcGguYyBiL3QvaGVscGVyL3Rlc3QtcmVhZC1ncmFwaC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY4YTQ2MTcKLS0tIC9kZXYvbnVsbAorKysgYi90L2hlbHBlci90ZXN0LXJlYWQtZ3JhcGguYwpAQCAtMCwwICsxLDUzIEBACisjaW5jbHVkZSAidGVzdC10b29sLmgiCisjaW5jbHVkZSAiY2FjaGUuaCIKKyNpbmNsdWRlICJjb21taXQtZ3JhcGguaCIKKyNpbmNsdWRlICJyZXBvc2l0b3J5LmgiCisjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCisKK2ludCBjbWRfX3JlYWRfZ3JhcGgoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQoreworCXN0cnVjdCBjb21taXRfZ3JhcGggKmdyYXBoID0gTlVMTDsKKwljaGFyICpncmFwaF9uYW1lOworCWludCBvcGVuX29rOworCWludCBmZDsKKwlzdHJ1Y3Qgc3RhdCBzdDsKKwlzdHJ1Y3Qgb2JqZWN0X2RpcmVjdG9yeSAqb2RiOworCisJc2V0dXBfZ2l0X2RpcmVjdG9yeSgpOworCW9kYiA9IHRoZV9yZXBvc2l0b3J5LT5vYmplY3RzLT5vZGI7CisKKwlncmFwaF9uYW1lID0gZ2V0X2NvbW1pdF9ncmFwaF9maWxlbmFtZShvZGIpOworCisJb3Blbl9vayA9IG9wZW5fY29tbWl0X2dyYXBoKGdyYXBoX25hbWUsICZmZCwgJnN0KTsKKwlpZiAoIW9wZW5fb2spCisJCWRpZV9lcnJubyhfKCJDb3VsZCBub3Qgb3BlbiBjb21taXQtZ3JhcGggJyVzJyIpLCBncmFwaF9uYW1lKTsKKworCWdyYXBoID0gbG9hZF9jb21taXRfZ3JhcGhfb25lX2ZkX3N0KGZkLCAmc3QsIG9kYik7CisJaWYgKCFncmFwaCkKKwkJcmV0dXJuIDE7CisKKwlGUkVFX0FORF9OVUxMKGdyYXBoX25hbWUpOworCisJcHJpbnRmKCJoZWFkZXI6ICUwOHggJWQgJWQgJWQgJWRcbiIsCisJCW50b2hsKCoodWludDMyX3QqKWdyYXBoLT5kYXRhKSwKKwkJKih1bnNpZ25lZCBjaGFyKikoZ3JhcGgtPmRhdGEgKyA0KSwKKwkJKih1bnNpZ25lZCBjaGFyKikoZ3JhcGgtPmRhdGEgKyA1KSwKKwkJKih1bnNpZ25lZCBjaGFyKikoZ3JhcGgtPmRhdGEgKyA2KSwKKwkJKih1bnNpZ25lZCBjaGFyKikoZ3JhcGgtPmRhdGEgKyA3KSk7CisJcHJpbnRmKCJudW1fY29tbWl0czogJXVcbiIsIGdyYXBoLT5udW1fY29tbWl0cyk7CisJcHJpbnRmKCJjaHVua3M6Iik7CisKKwlpZiAoZ3JhcGgtPmNodW5rX29pZF9mYW5vdXQpCisJCXByaW50ZigiIG9pZF9mYW5vdXQiKTsKKwlpZiAoZ3JhcGgtPmNodW5rX29pZF9sb29rdXApCisJCXByaW50ZigiIG9pZF9sb29rdXAiKTsKKwlpZiAoZ3JhcGgtPmNodW5rX2NvbW1pdF9kYXRhKQorCQlwcmludGYoIiBjb21taXRfbWV0YWRhdGEiKTsKKwlpZiAoZ3JhcGgtPmNodW5rX2V4dHJhX2VkZ2VzKQorCQlwcmludGYoIiBleHRyYV9lZGdlcyIpOworCXByaW50ZigiXG4iKTsKKworCVVOTEVBSyhncmFwaCk7CisKKwlyZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL3QvaGVscGVyL3Rlc3QtcmVmLXN0b3JlLmMgYi90L2hlbHBlci90ZXN0LXJlZi1zdG9yZS5jCmluZGV4IGU5ZTA1NDEuLjc5OWZjMDAgMTAwNjQ0Ci0tLSBhL3QvaGVscGVyL3Rlc3QtcmVmLXN0b3JlLmMKKysrIGIvdC9oZWxwZXIvdGVzdC1yZWYtc3RvcmUuYwpAQCAtMjMzLDcgKzIzMyw3IEBACiB7CiAJY29uc3QgY2hhciAqbXNnID0gbm90bnVsbCgqYXJndisrLCAibXNnIik7CiAJY29uc3QgY2hhciAqcmVmbmFtZSA9IG5vdG51bGwoKmFyZ3YrKywgInJlZm5hbWUiKTsKLQljb25zdCBjaGFyICpuZXdfc2hhMV9idWYgPSBub3RudWxsKCphcmd2KyssICJvbGQtc2hhMSIpOworCWNvbnN0IGNoYXIgKm5ld19zaGExX2J1ZiA9IG5vdG51bGwoKmFyZ3YrKywgIm5ldy1zaGExIik7CiAJY29uc3QgY2hhciAqb2xkX3NoYTFfYnVmID0gbm90bnVsbCgqYXJndisrLCAib2xkLXNoYTEiKTsKIAl1bnNpZ25lZCBpbnQgZmxhZ3MgPSBhcmdfZmxhZ3MoKmFyZ3YrKywgImZsYWdzIik7CiAJc3RydWN0IG9iamVjdF9pZCBvbGRfb2lkOwpkaWZmIC0tZ2l0IGEvdC9oZWxwZXIvdGVzdC1yZXBvc2l0b3J5LmMgYi90L2hlbHBlci90ZXN0LXJlcG9zaXRvcnkuYwppbmRleCA2YTg0YTUzLi5mN2Y4NjE4IDEwMDY0NAotLS0gYS90L2hlbHBlci90ZXN0LXJlcG9zaXRvcnkuYworKysgYi90L2hlbHBlci90ZXN0LXJlcG9zaXRvcnkuYwpAQCAtMTcsNiArMTcsMTEgQEAKIAogCXNldHVwX2dpdF9lbnYoZ2l0ZGlyKTsKIAorCW1lbXNldCh0aGVfcmVwb3NpdG9yeSwgMCwgc2l6ZW9mKCp0aGVfcmVwb3NpdG9yeSkpOworCisJLyogVE9ETzogTmVlZGVkIGZvciB0ZW1wb3JhcnkgaGFjayBpbiBoYXNoY21wLCBzZWUgMTgzYTYzOGI3ZGEuICovCisJcmVwb19zZXRfaGFzaF9hbGdvKHRoZV9yZXBvc2l0b3J5LCBHSVRfSEFTSF9TSEExKTsKKwogCWlmIChyZXBvX2luaXQoJnIsIGdpdGRpciwgd29ya3RyZWUpKQogCQlkaWUoIkNvdWxkbid0IGluaXQgcmVwbyIpOwogCkBAIC00Myw2ICs0OCwxMSBAQAogCiAJc2V0dXBfZ2l0X2VudihnaXRkaXIpOwogCisJbWVtc2V0KHRoZV9yZXBvc2l0b3J5LCAwLCBzaXplb2YoKnRoZV9yZXBvc2l0b3J5KSk7CisKKwkvKiBUT0RPOiBOZWVkZWQgZm9yIHRlbXBvcmFyeSBoYWNrIGluIGhhc2hjbXAsIHNlZSAxODNhNjM4YjdkYS4gKi8KKwlyZXBvX3NldF9oYXNoX2FsZ28odGhlX3JlcG9zaXRvcnksIEdJVF9IQVNIX1NIQTEpOworCiAJaWYgKHJlcG9faW5pdCgmciwgZ2l0ZGlyLCB3b3JrdHJlZSkpCiAJCWRpZSgiQ291bGRuJ3QgaW5pdCByZXBvIik7CiAKZGlmZiAtLWdpdCBhL3QvaGVscGVyL3Rlc3QtcnVuLWNvbW1hbmQuYyBiL3QvaGVscGVyL3Rlc3QtcnVuLWNvbW1hbmQuYwppbmRleCA4NTc5YjFmLi4xNjQ2YWEyIDEwMDY0NAotLS0gYS90L2hlbHBlci90ZXN0LXJ1bi1jb21tYW5kLmMKKysrIGIvdC9oZWxwZXIvdGVzdC1ydW4tY29tbWFuZC5jCkBAIC0xMCw5ICsxMCwxNCBAQAogCiAjaW5jbHVkZSAidGVzdC10b29sLmgiCiAjaW5jbHVkZSAiZ2l0LWNvbXBhdC11dGlsLmgiCisjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJydW4tY29tbWFuZC5oIgogI2luY2x1ZGUgImFyZ3YtYXJyYXkuaCIKICNpbmNsdWRlICJzdHJidWYuaCIKKyNpbmNsdWRlICJwYXJzZS1vcHRpb25zLmgiCisjaW5jbHVkZSAic3RyaW5nLWxpc3QuaCIKKyNpbmNsdWRlICJ0aHJlYWQtdXRpbHMuaCIKKyNpbmNsdWRlICJ3aWxkbWF0Y2guaCIKICNpbmNsdWRlICJnZXR0ZXh0LmgiCiAjaW5jbHVkZSAicGFyc2Utb3B0aW9ucy5oIgogCkBAIC01MCw2ICs1NSwxNTEgQEAKIAlyZXR1cm4gMTsKIH0KIAorc3RydWN0IHRlc3RzdWl0ZSB7CisJc3RydWN0IHN0cmluZ19saXN0IHRlc3RzLCBmYWlsZWQ7CisJaW50IG5leHQ7CisJaW50IHF1aWV0LCBpbW1lZGlhdGUsIHZlcmJvc2UsIHZlcmJvc2VfbG9nLCB0cmFjZSwgd3JpdGVfanVuaXRfeG1sOworfTsKKyNkZWZpbmUgVEVTVFNVSVRFX0lOSVQgXAorCXsgU1RSSU5HX0xJU1RfSU5JVF9EVVAsIFNUUklOR19MSVNUX0lOSVRfRFVQLCAtMSwgMCwgMCwgMCwgMCwgMCwgMCB9CisKK3N0YXRpYyBpbnQgbmV4dF90ZXN0KHN0cnVjdCBjaGlsZF9wcm9jZXNzICpjcCwgc3RydWN0IHN0cmJ1ZiAqZXJyLCB2b2lkICpjYiwKKwkJICAgICB2b2lkICoqdGFza19jYikKK3sKKwlzdHJ1Y3QgdGVzdHN1aXRlICpzdWl0ZSA9IGNiOworCWNvbnN0IGNoYXIgKnRlc3Q7CisJaWYgKHN1aXRlLT5uZXh0ID49IHN1aXRlLT50ZXN0cy5ucikKKwkJcmV0dXJuIDA7CisKKwl0ZXN0ID0gc3VpdGUtPnRlc3RzLml0ZW1zW3N1aXRlLT5uZXh0KytdLnN0cmluZzsKKwlhcmd2X2FycmF5X3B1c2hsKCZjcC0+YXJncywgInNoIiwgdGVzdCwgTlVMTCk7CisJaWYgKHN1aXRlLT5xdWlldCkKKwkJYXJndl9hcnJheV9wdXNoKCZjcC0+YXJncywgIi0tcXVpZXQiKTsKKwlpZiAoc3VpdGUtPmltbWVkaWF0ZSkKKwkJYXJndl9hcnJheV9wdXNoKCZjcC0+YXJncywgIi1pIik7CisJaWYgKHN1aXRlLT52ZXJib3NlKQorCQlhcmd2X2FycmF5X3B1c2goJmNwLT5hcmdzLCAiLXYiKTsKKwlpZiAoc3VpdGUtPnZlcmJvc2VfbG9nKQorCQlhcmd2X2FycmF5X3B1c2goJmNwLT5hcmdzLCAiLVYiKTsKKwlpZiAoc3VpdGUtPnRyYWNlKQorCQlhcmd2X2FycmF5X3B1c2goJmNwLT5hcmdzLCAiLXgiKTsKKwlpZiAoc3VpdGUtPndyaXRlX2p1bml0X3htbCkKKwkJYXJndl9hcnJheV9wdXNoKCZjcC0+YXJncywgIi0td3JpdGUtanVuaXQteG1sIik7CisKKwlzdHJidWZfYWRkZihlcnIsICJPdXRwdXQgb2YgJyVzJzpcbiIsIHRlc3QpOworCSp0YXNrX2NiID0gKHZvaWQgKil0ZXN0OworCisJcmV0dXJuIDE7Cit9CisKK3N0YXRpYyBpbnQgdGVzdF9maW5pc2hlZChpbnQgcmVzdWx0LCBzdHJ1Y3Qgc3RyYnVmICplcnIsIHZvaWQgKmNiLAorCQkJIHZvaWQgKnRhc2tfY2IpCit7CisJc3RydWN0IHRlc3RzdWl0ZSAqc3VpdGUgPSBjYjsKKwljb25zdCBjaGFyICpuYW1lID0gKGNvbnN0IGNoYXIgKil0YXNrX2NiOworCisJaWYgKHJlc3VsdCkKKwkJc3RyaW5nX2xpc3RfYXBwZW5kKCZzdWl0ZS0+ZmFpbGVkLCBuYW1lKTsKKworCXN0cmJ1Zl9hZGRmKGVyciwgIiVzOiAnJXMnXG4iLCByZXN1bHQgPyAiRkFJTCIgOiAiU1VDQ0VTUyIsIG5hbWUpOworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgdGVzdF9mYWlsZWQoc3RydWN0IHN0cmJ1ZiAqb3V0LCB2b2lkICpjYiwgdm9pZCAqdGFza19jYikKK3sKKwlzdHJ1Y3QgdGVzdHN1aXRlICpzdWl0ZSA9IGNiOworCWNvbnN0IGNoYXIgKm5hbWUgPSAoY29uc3QgY2hhciAqKXRhc2tfY2I7CisKKwlzdHJpbmdfbGlzdF9hcHBlbmQoJnN1aXRlLT5mYWlsZWQsIG5hbWUpOworCXN0cmJ1Zl9hZGRmKG91dCwgIkZBSUxFRCBUTyBTVEFSVDogJyVzJ1xuIiwgbmFtZSk7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCB0ZXN0c3VpdGVfdXNhZ2VbXSA9IHsKKwkidGVzdC1ydW4tY29tbWFuZCB0ZXN0c3VpdGUgWzxvcHRpb25zPl0gWzxwYXR0ZXJuPi4uLl0iLAorCU5VTEwKK307CisKK3N0YXRpYyBpbnQgdGVzdHN1aXRlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwlzdHJ1Y3QgdGVzdHN1aXRlIHN1aXRlID0gVEVTVFNVSVRFX0lOSVQ7CisJaW50IG1heF9qb2JzID0gMSwgaSwgcmV0OworCURJUiAqZGlyOworCXN0cnVjdCBkaXJlbnQgKmQ7CisJc3RydWN0IG9wdGlvbiBvcHRpb25zW10gPSB7CisJCU9QVF9CT09MKCdpJywgImltbWVkaWF0ZSIsICZzdWl0ZS5pbW1lZGlhdGUsCisJCQkgInN0b3AgYXQgZmlyc3QgZmFpbGVkIHRlc3QgY2FzZShzKSIpLAorCQlPUFRfSU5URUdFUignaicsICJqb2JzIiwgJm1heF9qb2JzLCAicnVuIDxOPiBqb2JzIGluIHBhcmFsbGVsIiksCisJCU9QVF9CT09MKCdxJywgInF1aWV0IiwgJnN1aXRlLnF1aWV0LCAiYmUgdGVyc2UiKSwKKwkJT1BUX0JPT0woJ3YnLCAidmVyYm9zZSIsICZzdWl0ZS52ZXJib3NlLCAiYmUgdmVyYm9zZSIpLAorCQlPUFRfQk9PTCgnVicsICJ2ZXJib3NlLWxvZyIsICZzdWl0ZS52ZXJib3NlX2xvZywKKwkJCSAiYmUgdmVyYm9zZSwgcmVkaXJlY3RlZCB0byBhIGZpbGUiKSwKKwkJT1BUX0JPT0woJ3gnLCAidHJhY2UiLCAmc3VpdGUudHJhY2UsICJ0cmFjZSBzaGVsbCBjb21tYW5kcyIpLAorCQlPUFRfQk9PTCgwLCAid3JpdGUtanVuaXQteG1sIiwgJnN1aXRlLndyaXRlX2p1bml0X3htbCwKKwkJCSAid3JpdGUgSlVuaXQtc3R5bGUgWE1MIGZpbGVzIiksCisJCU9QVF9FTkQoKQorCX07CisKKwltZW1zZXQoJnN1aXRlLCAwLCBzaXplb2Yoc3VpdGUpKTsKKwlzdWl0ZS50ZXN0cy5zdHJkdXBfc3RyaW5ncyA9IHN1aXRlLmZhaWxlZC5zdHJkdXBfc3RyaW5ncyA9IDE7CisKKwlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBOVUxMLCBvcHRpb25zLAorCQkJdGVzdHN1aXRlX3VzYWdlLCBQQVJTRV9PUFRfU1RPUF9BVF9OT05fT1BUSU9OKTsKKworCWlmIChtYXhfam9icyA8PSAwKQorCQltYXhfam9icyA9IG9ubGluZV9jcHVzKCk7CisKKwlkaXIgPSBvcGVuZGlyKCIuIik7CisJaWYgKCFkaXIpCisJCWRpZSgiQ291bGQgbm90IG9wZW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5Iik7CisJd2hpbGUgKChkID0gcmVhZGRpcihkaXIpKSkgeworCQljb25zdCBjaGFyICpwID0gZC0+ZF9uYW1lOworCisJCWlmICgqcCAhPSAndCcgfHwgIWlzZGlnaXQocFsxXSkgfHwgIWlzZGlnaXQocFsyXSkgfHwKKwkJICAgICFpc2RpZ2l0KHBbM10pIHx8ICFpc2RpZ2l0KHBbNF0pIHx8IHBbNV0gIT0gJy0nIHx8CisJCSAgICAhZW5kc193aXRoKHAsICIuc2giKSkKKwkJCWNvbnRpbnVlOworCisJCS8qIE5vIHBhdHRlcm46IG1hdGNoIGFsbCAqLworCQlpZiAoIWFyZ2MpIHsKKwkJCXN0cmluZ19saXN0X2FwcGVuZCgmc3VpdGUudGVzdHMsIHApOworCQkJY29udGludWU7CisJCX0KKworCQlmb3IgKGkgPSAwOyBpIDwgYXJnYzsgaSsrKQorCQkJaWYgKCF3aWxkbWF0Y2goYXJndltpXSwgcCwgMCkpIHsKKwkJCQlzdHJpbmdfbGlzdF9hcHBlbmQoJnN1aXRlLnRlc3RzLCBwKTsKKwkJCQlicmVhazsKKwkJCX0KKwl9CisJY2xvc2VkaXIoZGlyKTsKKworCWlmICghc3VpdGUudGVzdHMubnIpCisJCWRpZSgiTm8gdGVzdHMgbWF0Y2ghIik7CisJaWYgKG1heF9qb2JzID4gc3VpdGUudGVzdHMubnIpCisJCW1heF9qb2JzID0gc3VpdGUudGVzdHMubnI7CisKKwlmcHJpbnRmKHN0ZGVyciwgIlJ1bm5pbmcgJWQgdGVzdHMgKCVkIGF0IGEgdGltZSlcbiIsCisJCXN1aXRlLnRlc3RzLm5yLCBtYXhfam9icyk7CisKKwlyZXQgPSBydW5fcHJvY2Vzc2VzX3BhcmFsbGVsKG1heF9qb2JzLCBuZXh0X3Rlc3QsIHRlc3RfZmFpbGVkLAorCQkJCSAgICAgdGVzdF9maW5pc2hlZCwgJnN1aXRlKTsKKworCWlmIChzdWl0ZS5mYWlsZWQubnIgPiAwKSB7CisJCXJldCA9IDE7CisJCWZwcmludGYoc3RkZXJyLCAiJWQgdGVzdHMgZmFpbGVkOlxuXG4iLCBzdWl0ZS5mYWlsZWQubnIpOworCQlmb3IgKGkgPSAwOyBpIDwgc3VpdGUuZmFpbGVkLm5yOyBpKyspCisJCQlmcHJpbnRmKHN0ZGVyciwgIlx0JXNcbiIsIHN1aXRlLmZhaWxlZC5pdGVtc1tpXS5zdHJpbmcpOworCX0KKworCXN0cmluZ19saXN0X2NsZWFyKCZzdWl0ZS50ZXN0cywgMCk7CisJc3RyaW5nX2xpc3RfY2xlYXIoJnN1aXRlLmZhaWxlZCwgMCk7CisKKwlyZXR1cm4gISFyZXQ7Cit9CisKIHN0YXRpYyB1aW50NjRfdCBteV9yYW5kb21fbmV4dCA9IDEyMzQ7CiAKIHN0YXRpYyB1aW50NjRfdCBteV9yYW5kb20odm9pZCkKQEAgLTE3OCwxMSArMzI4LDU4IEBACiAJcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyBpbnQgaW5oZXJpdF9oYW5kbGUoY29uc3QgY2hhciAqYXJndjApCit7CisJc3RydWN0IGNoaWxkX3Byb2Nlc3MgY3AgPSBDSElMRF9QUk9DRVNTX0lOSVQ7CisJY2hhciBwYXRoW1BBVEhfTUFYXTsKKwlpbnQgdG1wOworCisJLyogRmlyc3QsIG9wZW4gYW4gaW5oZXJpdGFibGUgaGFuZGxlICovCisJeHNucHJpbnRmKHBhdGgsIHNpemVvZihwYXRoKSwgIm91dC1YWFhYWFgiKTsKKwl0bXAgPSB4bWtzdGVtcChwYXRoKTsKKworCWFyZ3ZfYXJyYXlfcHVzaGwoJmNwLmFyZ3MsCisJCQkgInRlc3QtdG9vbCIsIGFyZ3YwLCAiaW5oZXJpdGVkLWhhbmRsZS1jaGlsZCIsIE5VTEwpOworCWNwLmluID0gLTE7CisJY3Aubm9fc3Rkb3V0ID0gY3Aubm9fc3RkZXJyID0gMTsKKwlpZiAoc3RhcnRfY29tbWFuZCgmY3ApIDwgMCkKKwkJZGllKCJDb3VsZCBub3Qgc3RhcnQgY2hpbGQgcHJvY2VzcyIpOworCisJLyogVGhlbiBjbG9zZSBpdCwgYW5kIHRyeSB0byBkZWxldGUgaXQuICovCisJY2xvc2UodG1wKTsKKwlpZiAodW5saW5rKHBhdGgpKQorCQlkaWUoIkNvdWxkIG5vdCBkZWxldGUgJyVzJyIsIHBhdGgpOworCisJaWYgKGNsb3NlKGNwLmluKSA8IDAgfHwgZmluaXNoX2NvbW1hbmQoJmNwKSA8IDApCisJCWRpZSgiQ2hpbGQgZGlkIG5vdCBmaW5pc2giKTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IGluaGVyaXRfaGFuZGxlX2NoaWxkKHZvaWQpCit7CisJc3RydWN0IHN0cmJ1ZiBidWYgPSBTVFJCVUZfSU5JVDsKKworCWlmIChzdHJidWZfcmVhZCgmYnVmLCAwLCAwKSA8IDApCisJCWRpZSgiQ291bGQgbm90IHJlYWQgc3RkaW4iKTsKKwlwcmludGYoIlJlY2VpdmVkICVzXG4iLCBidWYuYnVmKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmKTsKKworCXJldHVybiAwOworfQorCiBpbnQgY21kX19ydW5fY29tbWFuZChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpCiB7CiAJc3RydWN0IGNoaWxkX3Byb2Nlc3MgcHJvYyA9IENISUxEX1BST0NFU1NfSU5JVDsKIAlpbnQgam9iczsKIAorCWlmIChhcmdjID4gMSAmJiAhc3RyY21wKGFyZ3ZbMV0sICJ0ZXN0c3VpdGUiKSkKKwkJZXhpdCh0ZXN0c3VpdGUoYXJnYyAtIDEsIGFyZ3YgKyAxKSk7CisJaWYgKCFzdHJjbXAoYXJndlsxXSwgImluaGVyaXRlZC1oYW5kbGUiKSkKKwkJZXhpdChpbmhlcml0X2hhbmRsZShhcmd2WzBdKSk7CisJaWYgKCFzdHJjbXAoYXJndlsxXSwgImluaGVyaXRlZC1oYW5kbGUtY2hpbGQiKSkKKwkJZXhpdChpbmhlcml0X2hhbmRsZV9jaGlsZCgpKTsKKwogCWlmIChhcmdjID49IDIgJiYgIXN0cmNtcChhcmd2WzFdLCAicXVvdGUtc3RyZXNzLXRlc3QiKSkKIAkJcmV0dXJuICEhcXVvdGVfc3RyZXNzX3Rlc3QoYXJnYyAtIDEsIGFyZ3YgKyAxKTsKIApkaWZmIC0tZ2l0IGEvYnVpbHRpbi9zZXJ2ZS5jIGIvdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jCnNpbWlsYXJpdHkgaW5kZXggODAlCnJlbmFtZSBmcm9tIGJ1aWx0aW4vc2VydmUuYwpyZW5hbWUgdG8gdC9oZWxwZXIvdGVzdC1zZXJ2ZS12Mi5jCmluZGV4IGQzZmQyNDAuLmFlZTM1ZTUgMTAwNjQ0Ci0tLSBhL2J1aWx0aW4vc2VydmUuYworKysgYi90L2hlbHBlci90ZXN0LXNlcnZlLXYyLmMKQEAgLTEsMTQgKzEsMTQgQEAKKyNpbmNsdWRlICJ0ZXN0LXRvb2wuaCIKICNpbmNsdWRlICJjYWNoZS5oIgotI2luY2x1ZGUgImJ1aWx0aW4uaCIKICNpbmNsdWRlICJwYXJzZS1vcHRpb25zLmgiCiAjaW5jbHVkZSAic2VydmUuaCIKIAogc3RhdGljIGNoYXIgY29uc3QgKiBjb25zdCBzZXJ2ZV91c2FnZVtdID0gewotCU5fKCJnaXQgc2VydmUgWzxvcHRpb25zPl0iKSwKKwlOXygidGVzdC10b29sIHNlcnZlLXYyIFs8b3B0aW9ucz5dIiksCiAJTlVMTAogfTsKIAotaW50IGNtZF9zZXJ2ZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKnByZWZpeCkKK2ludCBjbWRfX3NlcnZlX3YyKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKIHsKIAlzdHJ1Y3Qgc2VydmVfb3B0aW9ucyBvcHRzID0gU0VSVkVfT1BUSU9OU19JTklUOwogCkBAIC0xOSw2ICsxOSw3IEBACiAJCQkgTl8oImV4aXQgaW1tZWRpYXRlbHkgYWZ0ZXIgYWR2ZXJ0aXNpbmcgY2FwYWJpbGl0aWVzIikpLAogCQlPUFRfRU5EKCkKIAl9OworCWNvbnN0IGNoYXIgKnByZWZpeCA9IHNldHVwX2dpdF9kaXJlY3RvcnkoKTsKIAogCS8qIGlnbm9yZSBhbGwgdW5rbm93biBjbWRsaW5lIHN3aXRjaGVzIGZvciBub3cgKi8KIAlhcmdjID0gcGFyc2Vfb3B0aW9ucyhhcmdjLCBhcmd2LCBwcmVmaXgsIG9wdGlvbnMsIHNlcnZlX3VzYWdlLApkaWZmIC0tZ2l0IGEvdC9oZWxwZXIvdGVzdC1zaGExLmMgYi90L2hlbHBlci90ZXN0LXNoYTEuYwppbmRleCAxYmEwNjc1Li5kODYwYzM4IDEwMDY0NAotLS0gYS90L2hlbHBlci90ZXN0LXNoYTEuYworKysgYi90L2hlbHBlci90ZXN0LXNoYTEuYwpAQCAtMyw1NSArMyw1IEBACiAKIGludCBjbWRfX3NoYTEoaW50IGFjLCBjb25zdCBjaGFyICoqYXYpCiB7Ci0JZ2l0X1NIQV9DVFggY3R4OwotCXVuc2lnbmVkIGNoYXIgc2hhMVsyMF07Ci0JdW5zaWduZWQgYnVmc3ogPSA4MTkyOwotCWludCBiaW5hcnkgPSAwOwotCWNoYXIgKmJ1ZmZlcjsKLQotCWlmIChhYyA9PSAyKSB7Ci0JCWlmICghc3RyY21wKGF2WzFdLCAiLWIiKSkKLQkJCWJpbmFyeSA9IDE7Ci0JCWVsc2UKLQkJCWJ1ZnN6ID0gc3RydG91bChhdlsxXSwgTlVMTCwgMTApICogMTAyNCAqIDEwMjQ7Ci0JfQotCi0JaWYgKCFidWZzeikKLQkJYnVmc3ogPSA4MTkyOwotCi0Jd2hpbGUgKChidWZmZXIgPSBtYWxsb2MoYnVmc3opKSA9PSBOVUxMKSB7Ci0JCWZwcmludGYoc3RkZXJyLCAiYnVmc3ogJXUgaXMgdG9vIGJpZywgaGFsdmluZy4uLlxuIiwgYnVmc3opOwotCQlidWZzeiAvPSAyOwotCQlpZiAoYnVmc3ogPCAxMDI0KQotCQkJZGllKCJPT1BTIik7Ci0JfQotCi0JZ2l0X1NIQTFfSW5pdCgmY3R4KTsKLQotCXdoaWxlICgxKSB7Ci0JCXNzaXplX3Qgc3osIHRoaXNfc3o7Ci0JCWNoYXIgKmNwID0gYnVmZmVyOwotCQl1bnNpZ25lZCByb29tID0gYnVmc3o7Ci0JCXRoaXNfc3ogPSAwOwotCQl3aGlsZSAocm9vbSkgewotCQkJc3ogPSB4cmVhZCgwLCBjcCwgcm9vbSk7Ci0JCQlpZiAoc3ogPT0gMCkKLQkJCQlicmVhazsKLQkJCWlmIChzeiA8IDApCi0JCQkJZGllX2Vycm5vKCJ0ZXN0LXNoYTEiKTsKLQkJCXRoaXNfc3ogKz0gc3o7Ci0JCQljcCArPSBzejsKLQkJCXJvb20gLT0gc3o7Ci0JCX0KLQkJaWYgKHRoaXNfc3ogPT0gMCkKLQkJCWJyZWFrOwotCQlnaXRfU0hBMV9VcGRhdGUoJmN0eCwgYnVmZmVyLCB0aGlzX3N6KTsKLQl9Ci0JZ2l0X1NIQTFfRmluYWwoc2hhMSwgJmN0eCk7Ci0KLQlpZiAoYmluYXJ5KQotCQlmd3JpdGUoc2hhMSwgMSwgMjAsIHN0ZG91dCk7Ci0JZWxzZQotCQlwdXRzKHNoYTFfdG9faGV4KHNoYTEpKTsKLQlleGl0KDApOworCXJldHVybiBjbWRfaGFzaF9pbXBsKGFjLCBhdiwgR0lUX0hBU0hfU0hBMSk7CiB9CmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LXNoYTI1Ni5jIGIvdC9oZWxwZXIvdGVzdC1zaGEyNTYuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYWM2YTk5Ci0tLSAvZGV2L251bGwKKysrIGIvdC9oZWxwZXIvdGVzdC1zaGEyNTYuYwpAQCAtMCwwICsxLDcgQEAKKyNpbmNsdWRlICJ0ZXN0LXRvb2wuaCIKKyNpbmNsdWRlICJjYWNoZS5oIgorCitpbnQgY21kX19zaGEyNTYoaW50IGFjLCBjb25zdCBjaGFyICoqYXYpCit7CisJcmV0dXJuIGNtZF9oYXNoX2ltcGwoYWMsIGF2LCBHSVRfSEFTSF9TSEEyNTYpOworfQpkaWZmIC0tZ2l0IGEvdC9oZWxwZXIvdGVzdC1zaWdjaGFpbi5jIGIvdC9oZWxwZXIvdGVzdC1zaWdjaGFpbi5jCmluZGV4IDc3YWM1YmMuLmQwMTNiY2MgMTAwNjQ0Ci0tLSBhL3QvaGVscGVyL3Rlc3Qtc2lnY2hhaW4uYworKysgYi90L2hlbHBlci90ZXN0LXNpZ2NoYWluLmMKQEAgLTE0LDcgKzE0LDggQEAKIFgodGhyZWUpCiAjdW5kZWYgWAogCi1pbnQgY21kX19zaWdjaGFpbihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpIHsKK2ludCBjbWRfX3NpZ2NoYWluKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKK3sKIAlzaWdjaGFpbl9wdXNoKFNJR1RFUk0sIG9uZSk7CiAJc2lnY2hhaW5fcHVzaChTSUdURVJNLCB0d28pOwogCXNpZ2NoYWluX3B1c2goU0lHVEVSTSwgdGhyZWUpOwpkaWZmIC0tZ2l0IGEvdC9oZWxwZXIvdGVzdC1zdWJtb2R1bGUtbmVzdGVkLXJlcG8tY29uZmlnLmMgYi90L2hlbHBlci90ZXN0LXN1Ym1vZHVsZS1uZXN0ZWQtcmVwby1jb25maWcuYwppbmRleCBhMzFlMmE5Li5iYzk3OTI5IDEwMDY0NAotLS0gYS90L2hlbHBlci90ZXN0LXN1Ym1vZHVsZS1uZXN0ZWQtcmVwby1jb25maWcuYworKysgYi90L2hlbHBlci90ZXN0LXN1Ym1vZHVsZS1uZXN0ZWQtcmVwby1jb25maWcuYwpAQCAtMTAsMTkgKzEwLDIxIEBACiAKIGludCBjbWRfX3N1Ym1vZHVsZV9uZXN0ZWRfcmVwb19jb25maWcoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQogewotCXN0cnVjdCByZXBvc2l0b3J5IHN1Ym1vZHVsZTsKKwlzdHJ1Y3QgcmVwb3NpdG9yeSBzdWJyZXBvOworCWNvbnN0IHN0cnVjdCBzdWJtb2R1bGUgKnN1YjsKIAogCWlmIChhcmdjIDwgMykKIAkJZGllX3VzYWdlKGFyZ2MsIGFyZ3YsICJXcm9uZyBudW1iZXIgb2YgYXJndW1lbnRzLiIpOwogCiAJc2V0dXBfZ2l0X2RpcmVjdG9yeSgpOwogCi0JaWYgKHJlcG9fc3VibW9kdWxlX2luaXQoJnN1Ym1vZHVsZSwgdGhlX3JlcG9zaXRvcnksIGFyZ3ZbMV0pKSB7CisJc3ViID0gc3VibW9kdWxlX2Zyb21fcGF0aCh0aGVfcmVwb3NpdG9yeSwgJm51bGxfb2lkLCBhcmd2WzFdKTsKKwlpZiAocmVwb19zdWJtb2R1bGVfaW5pdCgmc3VicmVwbywgdGhlX3JlcG9zaXRvcnksIHN1YikpIHsKIAkJZGllX3VzYWdlKGFyZ2MsIGFyZ3YsICJTdWJtb2R1bGUgbm90IGZvdW5kLiIpOwogCX0KIAogCS8qIFJlYWQgdGhlIGNvbmZpZyBvZiBfY2hpbGRfIHN1Ym1vZHVsZXMuICovCi0JcHJpbnRfY29uZmlnX2Zyb21fZ2l0bW9kdWxlcygmc3VibW9kdWxlLCBhcmd2WzJdKTsKKwlwcmludF9jb25maWdfZnJvbV9naXRtb2R1bGVzKCZzdWJyZXBvLCBhcmd2WzJdKTsKIAogCXN1Ym1vZHVsZV9mcmVlKHRoZV9yZXBvc2l0b3J5KTsKIApkaWZmIC0tZ2l0IGEvdC9oZWxwZXIvdGVzdC10b29sLmMgYi90L2hlbHBlci90ZXN0LXRvb2wuYwppbmRleCBiZmIxOTViLi4zMWVlZGNkIDEwMDY0NAotLS0gYS90L2hlbHBlci90ZXN0LXRvb2wuYworKysgYi90L2hlbHBlci90ZXN0LXRvb2wuYwpAQCAtMSw1ICsxLDEyIEBACiAjaW5jbHVkZSAiZ2l0LWNvbXBhdC11dGlsLmgiCiAjaW5jbHVkZSAidGVzdC10b29sLmgiCisjaW5jbHVkZSAidHJhY2UyLmgiCisjaW5jbHVkZSAicGFyc2Utb3B0aW9ucy5oIgorCitzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IHRlc3RfdG9vbF91c2FnZVtdID0geworCSJ0ZXN0LXRvb2wgWy1DIDxkaXJlY3Rvcnk+XSA8Y29tbWFuZCBbPGFyZ3VtZW50cz4uLi5dXSIsCisJTlVMTAorfTsKIAogc3RydWN0IHRlc3RfY21kIHsKIAljb25zdCBjaGFyICpuYW1lOwpAQCAtNywxMSArMTQsMTMgQEAKIH07CiAKIHN0YXRpYyBzdHJ1Y3QgdGVzdF9jbWQgY21kc1tdID0geworCXsgImFkdmlzZSIsIGNtZF9fYWR2aXNlX2lmX2VuYWJsZWQgfSwKIAl7ICJjaG10aW1lIiwgY21kX19jaG10aW1lIH0sCiAJeyAiY29uZmlnIiwgY21kX19jb25maWcgfSwKIAl7ICJjdHlwZSIsIGNtZF9fY3R5cGUgfSwKIAl7ICJkYXRlIiwgY21kX19kYXRlIH0sCiAJeyAiZGVsdGEiLCBjbWRfX2RlbHRhIH0sCisJeyAiZGlyLWl0ZXJhdG9yIiwgY21kX19kaXJfaXRlcmF0b3IgfSwKIAl7ICJkcm9wLWNhY2hlcyIsIGNtZF9fZHJvcF9jYWNoZXMgfSwKIAl7ICJkdW1wLWNhY2hlLXRyZWUiLCBjbWRfX2R1bXBfY2FjaGVfdHJlZSB9LAogCXsgImR1bXAtZnNtb25pdG9yIiwgY21kX19kdW1wX2ZzbW9uaXRvciB9LApAQCAtMTksMjAgKzI4LDI2IEBACiAJeyAiZHVtcC11bnRyYWNrZWQtY2FjaGUiLCBjbWRfX2R1bXBfdW50cmFja2VkX2NhY2hlIH0sCiAJeyAiZXhhbXBsZS1kZWNvcmF0ZSIsIGNtZF9fZXhhbXBsZV9kZWNvcmF0ZSB9LAogCXsgImdlbnJhbmRvbSIsIGNtZF9fZ2VucmFuZG9tIH0sCisJeyAiZ2VuemVyb3MiLCBjbWRfX2dlbnplcm9zIH0sCiAJeyAiaGFzaG1hcCIsIGNtZF9faGFzaG1hcCB9LAorCXsgImhhc2gtc3BlZWQiLCBjbWRfX2hhc2hfc3BlZWQgfSwKIAl7ICJpbmRleC12ZXJzaW9uIiwgY21kX19pbmRleF92ZXJzaW9uIH0sCiAJeyAianNvbi13cml0ZXIiLCBjbWRfX2pzb25fd3JpdGVyIH0sCiAJeyAibGF6eS1pbml0LW5hbWUtaGFzaCIsIGNtZF9fbGF6eV9pbml0X25hbWVfaGFzaCB9LAogCXsgIm1hdGNoLXRyZWVzIiwgY21kX19tYXRjaF90cmVlcyB9LAogCXsgIm1lcmdlc29ydCIsIGNtZF9fbWVyZ2Vzb3J0IH0sCiAJeyAibWt0ZW1wIiwgY21kX19ta3RlbXAgfSwKKwl7ICJvaWRtYXAiLCBjbWRfX29pZG1hcCB9LAogCXsgIm9ubGluZS1jcHVzIiwgY21kX19vbmxpbmVfY3B1cyB9LAogCXsgInBhcnNlLW9wdGlvbnMiLCBjbWRfX3BhcnNlX29wdGlvbnMgfSwKKwl7ICJwYXJzZS1wYXRoc3BlYy1maWxlIiwgY21kX19wYXJzZV9wYXRoc3BlY19maWxlIH0sCiAJeyAicGF0aC11dGlscyIsIGNtZF9fcGF0aF91dGlscyB9LAogCXsgInBrdC1saW5lIiwgY21kX19wa3RfbGluZSB9LAogCXsgInByaW8tcXVldWUiLCBjbWRfX3ByaW9fcXVldWUgfSwKKwl7ICJwcm9ncmVzcyIsIGNtZF9fcHJvZ3Jlc3MgfSwKIAl7ICJyZWFjaCIsIGNtZF9fcmVhY2ggfSwKIAl7ICJyZWFkLWNhY2hlIiwgY21kX19yZWFkX2NhY2hlIH0sCisJeyAicmVhZC1ncmFwaCIsIGNtZF9fcmVhZF9ncmFwaCB9LAogCXsgInJlYWQtbWlkeCIsIGNtZF9fcmVhZF9taWR4IH0sCiAJeyAicmVmLXN0b3JlIiwgY21kX19yZWZfc3RvcmUgfSwKIAl7ICJyZWdleCIsIGNtZF9fcmVnZXggfSwKQEAgLTQwLDE1ICs1NSwxOSBAQAogCXsgInJldmlzaW9uLXdhbGtpbmciLCBjbWRfX3JldmlzaW9uX3dhbGtpbmcgfSwKIAl7ICJydW4tY29tbWFuZCIsIGNtZF9fcnVuX2NvbW1hbmQgfSwKIAl7ICJzY3JhcC1jYWNoZS10cmVlIiwgY21kX19zY3JhcF9jYWNoZV90cmVlIH0sCisJeyAic2VydmUtdjIiLCBjbWRfX3NlcnZlX3YyIH0sCiAJeyAic2hhMSIsIGNtZF9fc2hhMSB9LAogCXsgInNoYTEtYXJyYXkiLCBjbWRfX3NoYTFfYXJyYXkgfSwKKwl7ICJzaGEyNTYiLCBjbWRfX3NoYTI1NiB9LAogCXsgInNpZ2NoYWluIiwgY21kX19zaWdjaGFpbiB9LAogCXsgInN0cmNtcC1vZmZzZXQiLCBjbWRfX3N0cmNtcF9vZmZzZXQgfSwKIAl7ICJzdHJpbmctbGlzdCIsIGNtZF9fc3RyaW5nX2xpc3QgfSwKIAl7ICJzdWJtb2R1bGUtY29uZmlnIiwgY21kX19zdWJtb2R1bGVfY29uZmlnIH0sCiAJeyAic3VibW9kdWxlLW5lc3RlZC1yZXBvLWNvbmZpZyIsIGNtZF9fc3VibW9kdWxlX25lc3RlZF9yZXBvX2NvbmZpZyB9LAogCXsgInN1YnByb2Nlc3MiLCBjbWRfX3N1YnByb2Nlc3MgfSwKKwl7ICJ0cmFjZTIiLCBjbWRfX3RyYWNlMiB9LAogCXsgInVybG1hdGNoLW5vcm1hbGl6YXRpb24iLCBjbWRfX3VybG1hdGNoX25vcm1hbGl6YXRpb24gfSwKKwl7ICJ4bWwtZW5jb2RlIiwgY21kX194bWxfZW5jb2RlIH0sCiAJeyAid2lsZG1hdGNoIiwgY21kX193aWxkbWF0Y2ggfSwKICNpZmRlZiBHSVRfV0lORE9XU19OQVRJVkUKIAl7ICJ3aW5kb3dzLW5hbWVkLXBpcGUiLCBjbWRfX3dpbmRvd3NfbmFtZWRfcGlwZSB9LApAQCAtNjksMTUgKzg4LDMwIEBACiBpbnQgY21kX21haW4oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQogewogCWludCBpOworCWNvbnN0IGNoYXIgKndvcmtpbmdfZGlyZWN0b3J5ID0gTlVMTDsKKwlzdHJ1Y3Qgb3B0aW9uIG9wdGlvbnNbXSA9IHsKKwkJT1BUX1NUUklORygnQycsIE5VTEwsICZ3b3JraW5nX2RpcmVjdG9yeSwgImRpcmVjdG9yeSIsCisJCQkgICAiY2hhbmdlIHRoZSB3b3JraW5nIGRpcmVjdG9yeSIpLAorCQlPUFRfRU5EKCkKKwl9OwogCiAJQlVHX2V4aXRfY29kZSA9IDk5OworCWFyZ2MgPSBwYXJzZV9vcHRpb25zKGFyZ2MsIGFyZ3YsIE5VTEwsIG9wdGlvbnMsIHRlc3RfdG9vbF91c2FnZSwKKwkJCSAgICAgUEFSU0VfT1BUX1NUT1BfQVRfTk9OX09QVElPTiB8CisJCQkgICAgIFBBUlNFX09QVF9LRUVQX0FSR1YwKTsKKwogCWlmIChhcmdjIDwgMikKIAkJZGllX3VzYWdlKCk7CiAKKwlpZiAod29ya2luZ19kaXJlY3RvcnkgJiYgY2hkaXIod29ya2luZ19kaXJlY3RvcnkpIDwgMCkKKwkJZGllKCJDb3VsZCBub3QgY2QgdG8gJyVzJyIsIHdvcmtpbmdfZGlyZWN0b3J5KTsKKwogCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKGNtZHMpOyBpKyspIHsKIAkJaWYgKCFzdHJjbXAoY21kc1tpXS5uYW1lLCBhcmd2WzFdKSkgewogCQkJYXJndisrOwogCQkJYXJnYy0tOworCQkJdHJhY2UyX2NtZF9uYW1lKGNtZHNbaV0ubmFtZSk7CisJCQl0cmFjZTJfY21kX2xpc3RfY29uZmlnKCk7CiAJCQlyZXR1cm4gY21kc1tpXS5mbihhcmdjLCBhcmd2KTsKIAkJfQogCX0KZGlmZiAtLWdpdCBhL3QvaGVscGVyL3Rlc3QtdG9vbC5oIGIvdC9oZWxwZXIvdGVzdC10b29sLmgKaW5kZXggMDQyZjEyNC4uNGViNWU2NiAxMDA2NDQKLS0tIGEvdC9oZWxwZXIvdGVzdC10b29sLmgKKysrIGIvdC9oZWxwZXIvdGVzdC10b29sLmgKQEAgLTEsMTMgKzEsMTYgQEAKICNpZm5kZWYgVEVTVF9UT09MX0gKICNkZWZpbmUgVEVTVF9UT09MX0gKIAorI2RlZmluZSBVU0VfVEhFX0lOREVYX0NPTVBBVElCSUxJVFlfTUFDUk9TCiAjaW5jbHVkZSAiZ2l0LWNvbXBhdC11dGlsLmgiCiAKK2ludCBjbWRfX2FkdmlzZV9pZl9lbmFibGVkKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiBpbnQgY21kX19jaG10aW1lKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiBpbnQgY21kX19jb25maWcoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKIGludCBjbWRfX2N0eXBlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiBpbnQgY21kX19kYXRlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiBpbnQgY21kX19kZWx0YShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOworaW50IGNtZF9fZGlyX2l0ZXJhdG9yKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiBpbnQgY21kX19kcm9wX2NhY2hlcyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fZHVtcF9jYWNoZV90cmVlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiBpbnQgY21kX19kdW1wX2ZzbW9uaXRvcihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwpAQCAtMTUsMjAgKzE4LDI2IEBACiBpbnQgY21kX19kdW1wX3VudHJhY2tlZF9jYWNoZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fZXhhbXBsZV9kZWNvcmF0ZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fZ2VucmFuZG9tKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CitpbnQgY21kX19nZW56ZXJvcyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9faGFzaG1hcChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOworaW50IGNtZF9faGFzaF9zcGVlZChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9faW5kZXhfdmVyc2lvbihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fanNvbl93cml0ZXIoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKIGludCBjbWRfX2xhenlfaW5pdF9uYW1lX2hhc2goaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKIGludCBjbWRfX21hdGNoX3RyZWVzKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiBpbnQgY21kX19tZXJnZXNvcnQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKIGludCBjbWRfX21rdGVtcChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOworaW50IGNtZF9fb2lkbWFwKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiBpbnQgY21kX19vbmxpbmVfY3B1cyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fcGFyc2Vfb3B0aW9ucyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOworaW50IGNtZF9fcGFyc2VfcGF0aHNwZWNfZmlsZShpbnQgYXJnYywgY29uc3QgY2hhcioqIGFyZ3YpOwogaW50IGNtZF9fcGF0aF91dGlscyhpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fcGt0X2xpbmUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKIGludCBjbWRfX3ByaW9fcXVldWUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKK2ludCBjbWRfX3Byb2dyZXNzKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiBpbnQgY21kX19yZWFjaChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fcmVhZF9jYWNoZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOworaW50IGNtZF9fcmVhZF9ncmFwaChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fcmVhZF9taWR4KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiBpbnQgY21kX19yZWZfc3RvcmUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKIGludCBjbWRfX3JlZ2V4KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CkBAIC0zNiwxOSArNDUsMjUgQEAKIGludCBjbWRfX3JldmlzaW9uX3dhbGtpbmcoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKIGludCBjbWRfX3J1bl9jb21tYW5kKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiBpbnQgY21kX19zY3JhcF9jYWNoZV90cmVlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CitpbnQgY21kX19zZXJ2ZV92MihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fc2hhMShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fc2hhMV9hcnJheShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOworaW50IGNtZF9fc2hhMjU2KGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiBpbnQgY21kX19zaWdjaGFpbihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fc3RyY21wX29mZnNldChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fc3RyaW5nX2xpc3QoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKIGludCBjbWRfX3N1Ym1vZHVsZV9jb25maWcoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKIGludCBjbWRfX3N1Ym1vZHVsZV9uZXN0ZWRfcmVwb19jb25maWcoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKIGludCBjbWRfX3N1YnByb2Nlc3MoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKK2ludCBjbWRfX3RyYWNlMihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fdXJsbWF0Y2hfbm9ybWFsaXphdGlvbihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOworaW50IGNtZF9feG1sX2VuY29kZShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOwogaW50IGNtZF9fd2lsZG1hdGNoKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndik7CiAjaWZkZWYgR0lUX1dJTkRPV1NfTkFUSVZFCiBpbnQgY21kX193aW5kb3dzX25hbWVkX3BpcGUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKICNlbmRpZgogaW50IGNtZF9fd3JpdGVfY2FjaGUoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KTsKIAoraW50IGNtZF9oYXNoX2ltcGwoaW50IGFjLCBjb25zdCBjaGFyICoqYXYsIGludCBhbGdvKTsKKwogI2VuZGlmCmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LXRyYWNlMi5jIGIvdC9oZWxwZXIvdGVzdC10cmFjZTIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOTc4MTljCi0tLSAvZGV2L251bGwKKysrIGIvdC9oZWxwZXIvdGVzdC10cmFjZTIuYwpAQCAtMCwwICsxLDI3MyBAQAorI2luY2x1ZGUgInRlc3QtdG9vbC5oIgorI2luY2x1ZGUgImNhY2hlLmgiCisjaW5jbHVkZSAiYXJndi1hcnJheS5oIgorI2luY2x1ZGUgInJ1bi1jb21tYW5kLmgiCisjaW5jbHVkZSAiZXhlYy1jbWQuaCIKKyNpbmNsdWRlICJjb25maWcuaCIKKwordHlwZWRlZiBpbnQoZm5fdW5pdF90ZXN0KShpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpOworCitzdHJ1Y3QgdW5pdF90ZXN0IHsKKwlmbl91bml0X3Rlc3QgKnV0X2ZuOworCWNvbnN0IGNoYXIgKnV0X25hbWU7CisJY29uc3QgY2hhciAqdXRfdXNhZ2U7Cit9OworCisjZGVmaW5lIE15T2sgMAorI2RlZmluZSBNeUVycm9yIDEKKworc3RhdGljIGludCBnZXRfaShpbnQgKnBfdmFsdWUsIGNvbnN0IGNoYXIgKmRhdGEpCit7CisJY2hhciAqZW5kcHRyOworCisJaWYgKCFkYXRhIHx8ICEqZGF0YSkKKwkJcmV0dXJuIE15RXJyb3I7CisKKwkqcF92YWx1ZSA9IHN0cnRvbChkYXRhLCAmZW5kcHRyLCAxMCk7CisJaWYgKCplbmRwdHIgfHwgZXJybm8gPT0gRVJBTkdFKQorCQlyZXR1cm4gTXlFcnJvcjsKKworCXJldHVybiBNeU9rOworfQorCisvKgorICogQ2F1c2UgcHJvY2VzcyB0byBleGl0IHdpdGggdGhlIHJlcXVlc3RlZCB2YWx1ZSB2aWEgInJldHVybiIuCisgKgorICogUmVseSBvbiB0ZXN0LXRvb2wuYzpjbWRfbWFpbigpIHRvIGNhbGwgdHJhY2UyX2NtZF9leGl0KCkKKyAqIHdpdGggb3VyIHJlc3VsdC4KKyAqCisgKiBUZXN0IGhhcm5lc3MgY2FuIGNvbmZpcm06CisgKiBbXSB0aGUgcHJvY2Vzcy1leGl0IHZhbHVlLgorICogW10gdGhlICJjb2RlIiBmaWVsZCBpbiB0aGUgImV4aXQiIHRyYWNlMiBldmVudC4KKyAqIFtdIHRoZSAiY29kZSIgZmllbGQgaW4gdGhlICJhdGV4aXQiIHRyYWNlMiBldmVudC4KKyAqIFtdIHRoZSAibmFtZSIgZmllbGQgaW4gdGhlICJjbWRfbmFtZSIgdHJhY2UyIGV2ZW50LgorICogW10gImRlZl9wYXJhbSIgZXZlbnRzIGZvciBhbGwgb2YgdGhlICJpbnRlcmVzdGluZyIgcHJlLWRlZmluZWQKKyAqIGNvbmZpZyBzZXR0aW5ncy4KKyAqLworc3RhdGljIGludCB1dF8wMDFyZXR1cm4oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQoreworCWludCByYzsKKworCWlmIChnZXRfaSgmcmMsIGFyZ3ZbMF0pKQorCQlkaWUoImV4cGVjdCA8ZXhpdF9jb2RlPiIpOworCisJcmV0dXJuIHJjOworfQorCisvKgorICogQ2F1c2UgdGhlIHByb2Nlc3MgdG8gZXhpdCB3aXRoIHRoZSByZXF1ZXN0ZWQgdmFsdWUgdmlhICJleGl0KCkiLgorICoKKyAqIFRlc3QgaGFybmVzcyBjYW4gY29uZmlybToKKyAqIFtdIHRoZSAiY29kZSIgZmllbGQgaW4gdGhlICJleGl0IiB0cmFjZTIgZXZlbnQuCisgKiBbXSB0aGUgImNvZGUiIGZpZWxkIGluIHRoZSAiYXRleGl0IiB0cmFjZTIgZXZlbnQuCisgKiBbXSB0aGUgIm5hbWUiIGZpZWxkIGluIHRoZSAiY21kX25hbWUiIHRyYWNlMiBldmVudC4KKyAqIFtdICJkZWZfcGFyYW0iIGV2ZW50cyBmb3IgYWxsIG9mIHRoZSAiaW50ZXJlc3RpbmciIHByZS1kZWZpbmVkCisgKiBjb25maWcgc2V0dGluZ3MuCisgKi8KK3N0YXRpYyBpbnQgdXRfMDAyZXhpdChpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpCit7CisJaW50IHJjOworCisJaWYgKGdldF9pKCZyYywgYXJndlswXSkpCisJCWRpZSgiZXhwZWN0IDxleGl0X2NvZGU+Iik7CisKKwlleGl0KHJjKTsKK30KKworLyoKKyAqIFNlbmQgYW4gImVycm9yIiBldmVudCB3aXRoIGVhY2ggdmFsdWUgaW4gYXJndi4gIE5vcm1hbGx5LCBnaXQgb25seSBpc3N1ZXMKKyAqIGEgc2luZ2xlICJlcnJvciIgZXZlbnQgaW1tZWRpYXRlbHkgYmVmb3JlIGlzc3VpbmcgYW4gImV4aXQiIGV2ZW50IChzdWNoCisgKiBhcyBpbiBkaWUoKSBvciBCVUcoKSksIGJ1dCBtdWx0aXBsZSAiZXJyb3IiIGV2ZW50cyBhcmUgYWxsb3dlZC4KKyAqCisgKiBUZXN0IGhhcm5lc3MgY2FuIGNvbmZpcm06CisgKiBbXSBhIHRyYWNlMiAiZXJyb3IiIGV2ZW50IGZvciBlYWNoIHZhbHVlIGluIGFyZ3YuCisgKiBbXSB0aGUgIm5hbWUiIGZpZWxkIGluIHRoZSAiY21kX25hbWUiIHRyYWNlMiBldmVudC4KKyAqIFtdIChvcHRpb25hbCkgdGhlIGZpbGU6bGluZSBpbiB0aGUgImV4aXQiIGV2ZW50IHJlZmVycyB0byB0aGlzIGZ1bmN0aW9uLgorICovCitzdGF0aWMgaW50IHV0XzAwM2Vycm9yKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwlpbnQgazsKKworCWlmICghYXJndlswXSB8fCAhKmFyZ3ZbMF0pCisJCWRpZSgiZXhwZWN0IDxlcnJvcl9tZXNzYWdlPiIpOworCisJZm9yIChrID0gMDsgayA8IGFyZ2M7IGsrKykKKwkJZXJyb3IoIiVzIiwgYXJndltrXSk7CisKKwlyZXR1cm4gMDsKK30KKworLyoKKyAqIFJ1biBhIGNoaWxkIHByb2Nlc3MgYW5kIHdhaXQgZm9yIGl0IHRvIGZpbmlzaCBhbmQgZXhpdCB3aXRoIGl0cyByZXR1cm4gY29kZS4KKyAqIHRlc3QtdG9vbCB0cmFjZTIgMDA0Y2hpbGQgWzxjaGlsZC1jb21tYW5kLWxpbmU+XQorICoKKyAqIEZvciBleGFtcGxlOgorICogdGVzdC10b29sIHRyYWNlMiAwMDRjaGlsZCBnaXQgdmVyc2lvbgorICogdGVzdC10b29sIHRyYWNlMiAwMDRjaGlsZCB0ZXN0LXRvb2wgdHJhY2UyIDAwMXJldHVybiAwCisgKiB0ZXN0LXRvb2wgdHJhY2UyIDAwNGNoaWxkIHRlc3QtdG9vbCB0cmFjZTIgMDA0Y2hpbGQgdGVzdC10b29sIHRyYWNlMiAwMDRjaGlsZAorICogdGVzdC10b29sIHRyYWNlMiAwMDRjaGlsZCBnaXQgLWMgYWxpYXMueHl6PXZlcnNpb24geHl6CisgKgorICogVGVzdCBoYXJuZXNzIGNhbiBjb25maXJtOgorICogW10gdGhlICJuYW1lIiBmaWVsZCBpbiB0aGUgImNtZF9uYW1lIiB0cmFjZTIgZXZlbnQuCisgKiBbXSB0aGF0IHRoZSBvdXRlciBwcm9jZXNzIGhhcyBhIHNpbmdsZSBjb21wb25lbnQgU0lEIChvciBkZXB0aCAiZDAiIGluCisgKiAgICB0aGUgUEVSRiBzdHJlYW0pLgorICogW10gdGhhdCAiY2hpbGRfc3RhcnQiIGFuZCAiY2hpbGRfZXhpdCIgZXZlbnRzIGFyZSBnZW5lcmF0ZWQgZm9yIHRoZSBjaGlsZC4KKyAqIFtdIGlmIHRoZSBjaGlsZCBwcm9jZXNzIGlzIGFuIGluc3RydW1lbnRlZCBleGVjdXRhYmxlOgorICogICAgW10gdGhhdCAidmVyc2lvbiIsICJzdGFydCIsIC4uLiwgImV4aXQiLCBhbmQgImF0ZXhpdCIgZXZlbnRzIGFyZQorICogICAgICAgZ2VuZXJhdGVkIGJ5IHRoZSBjaGlsZCBwcm9jZXNzLgorICogICAgW10gdGhhdCB0aGUgY2hpbGQgcHJvY2VzcyBldmVudHMgaGF2ZSBhIG11bHRpcGxlIGNvbXBvbmVudCBTSUQgKG9yCisgKiAgICAgICBkZXB0aCAiZE4rMSIgaW4gdGhlIFBFUkYgc3RyZWFtKS4KKyAqIFtdIHRoYXQgdGhlIGNoaWxkIGV4aXQgY29kZSBpcyBwcm9wYWdhdGVkIHRvIHRoZSBwYXJlbnQgcHJvY2VzcyAiZXhpdCIKKyAqICAgIGFuZCAiYXRleGl0IiBldmVudHMuLgorICogW10gKG9wdGlvbmFsKSB0aGF0IHRoZSAidF9hYnMiIGZpZWxkIGluIHRoZSBjaGlsZCBwcm9jZXNzICJhdGV4aXQiIGV2ZW50CisgKiAgICBpcyBsZXNzIHRoYW4gdGhlICJ0X3JlbCIgZmllbGQgaW4gdGhlICJjaGlsZF9leGl0IiBldmVudCBvZiB0aGUgcGFyZW50CisgKiAgICBwcm9jZXNzLgorICogW10gaWYgdGhlIGNoaWxkIHByb2Nlc3MgaXMgbGlrZSB0aGUgYWxpYXMgZXhhbXBsZSBhYm92ZSwKKyAqICAgIFtdIChvcHRpb25hbCkgdGhlIGNoaWxkIHByb2Nlc3MgYXR0ZW1wdHMgdG8gcnVuICJnaXQteHl4IiBhcyBhIGRhc2hlZAorICogICAgICAgY29tbWFuZC4KKyAqICAgIFtdIHRoZSBjaGlsZCBwcm9jZXNzIGVtaXRzIGFuICJhbGlhcyIgZXZlbnQgd2l0aCAieHl6IiA9PiAidmVyc2lvbiIKKyAqICAgIFtdIHRoZSBjaGlsZCBwcm9jZXNzIHJ1bnMgImdpdCB2ZXJzaW9uIiBhcyBhIGNoaWxkIHByb2Nlc3MuCisgKiAgICBbXSB0aGUgY2hpbGQgcHJvY2VzcyBoYXMgYSAzIGNvbXBvbmVudCBTSUQgKG9yIGRlcHRoICJkMiIgaW4gdGhlIFBFUkYKKyAqICAgICAgIHN0cmVhbSkuCisgKi8KK3N0YXRpYyBpbnQgdXRfMDA0Y2hpbGQoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQoreworCWludCByZXN1bHQ7CisKKwkvKgorCSAqIEFsbG93IGVtcHR5IDxjaGlsZF9jb21tYW5kX2xpbmU+IHNvIHdlIGNhbiBkbyBhcmJpdHJhcmlseSBkZWVwCisJICogY29tbWFuZCBuZXN0aW5nIGFuZCBsZXQgdGhlIGxhc3Qgb25lIGJlIG51bGwuCisJICovCisJaWYgKCFhcmdjKQorCQlyZXR1cm4gMDsKKworCXJlc3VsdCA9IHJ1bl9jb21tYW5kX3Zfb3B0KGFyZ3YsIDApOworCWV4aXQocmVzdWx0KTsKK30KKworLyoKKyAqIEV4ZWMgYSBnaXQgY29tbWFuZC4gIFRoaXMgbWF5IGVpdGhlciBjcmVhdGUgYSBjaGlsZCBwcm9jZXNzIChXaW5kb3dzKQorICogb3IgcmVwbGFjZSB0aGUgZXhpc3RpbmcgcHJvY2Vzcy4KKyAqIHRlc3QtdG9vbCB0cmFjZTIgMDA1ZXhlYyA8Z2l0X2NvbW1hbmRfYXJncz4KKyAqCisgKiBGb3IgZXhhbXBsZToKKyAqIHRlc3QtdG9vbCB0cmFjZTIgMDA1ZXhlYyB2ZXJzaW9uCisgKgorICogVGVzdCBoYXJuZXNzIGNhbiBjb25maXJtIChvbiBXaW5kb3dzKToKKyAqIFtdIHRoZSAibmFtZSIgZmllbGQgaW4gdGhlICJjbWRfbmFtZSIgdHJhY2UyIGV2ZW50LgorICogW10gdGhhdCB0aGUgb3V0ZXIgcHJvY2VzcyBoYXMgYSBzaW5nbGUgY29tcG9uZW50IFNJRCAob3IgZGVwdGggImQwIiBpbgorICogICAgdGhlIFBFUkYgc3RyZWFtKS4KKyAqIFtdIHRoYXQgImV4ZWMiIGFuZCAiZXhlY19yZXN1bHQiIGV2ZW50cyBhcmUgZ2VuZXJhdGVkIGZvciB0aGUgY2hpbGQKKyAqICAgIHByb2Nlc3MgKHNpbmNlIHRoZSBXaW5kb3dzIGNvbXBhdGliaWxpdHkgbGF5ZXIgZmFrZXMgYW4gZXhlYygpIHdpdGgKKyAqICAgIGEgQ3JlYXRlUHJvY2VzcygpLCBXYWl0Rm9yU2luZ2xlT2JqZWN0KCksIGFuZCBleGl0KCkpLgorICogW10gdGhhdCB0aGUgY2hpbGQgcHJvY2VzcyBoYXMgbXVsdGlwbGUgY29tcG9uZW50IFNJRCAob3IgZGVwdGggImROKzEiCisgKiAgICBpbiB0aGUgUEVSRiBzdHJlYW0pLgorICoKKyAqIFRlc3QgaGFybmVzcyBjYW4gY29uZmlybSAob24gcGxhdGZvcm1zIHdpdGggYSByZWFsIGV4ZWMoKSBmdW5jdGlvbik6CisgKiBbXSBUT0RPIHRhbGsgYWJvdXQgcHJvY2VzcyByZXBsYWNlbWVudCBhbmQgaG93IGl0IGFmZmVjdHMgU0lELgorICovCitzdGF0aWMgaW50IHV0XzAwNWV4ZWMoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQoreworCWludCByZXN1bHQ7CisKKwlpZiAoIWFyZ2MpCisJCXJldHVybiAwOworCisJcmVzdWx0ID0gZXhlY3ZfZ2l0X2NtZChhcmd2KTsKKwlyZXR1cm4gcmVzdWx0OworfQorCitzdGF0aWMgaW50IHV0XzAwNmRhdGEoaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiphcmd2KQoreworCWNvbnN0IGNoYXIgKnVzYWdlX2Vycm9yID0KKwkJImV4cGVjdCA8Y2F0MD4gPGswPiA8djA+IFs8Y2F0MT4gPGsxPiA8djE+IFsuLi5dXSI7CisKKwlpZiAoYXJnYyAlIDMgIT0gMCkKKwkJZGllKCIlcyIsIHVzYWdlX2Vycm9yKTsKKworCXdoaWxlIChhcmdjKSB7CisJCWlmICghYXJndlswXSB8fCAhKmFyZ3ZbMF0gfHwgIWFyZ3ZbMV0gfHwgISphcmd2WzFdIHx8CisJCSAgICAhYXJndlsyXSB8fCAhKmFyZ3ZbMl0pCisJCQlkaWUoIiVzIiwgdXNhZ2VfZXJyb3IpOworCisJCXRyYWNlMl9kYXRhX3N0cmluZyhhcmd2WzBdLCB0aGVfcmVwb3NpdG9yeSwgYXJndlsxXSwgYXJndlsyXSk7CisJCWFyZ3YgKz0gMzsKKwkJYXJnYyAtPSAzOworCX0KKworCXJldHVybiAwOworfQorCisvKgorICogVXNhZ2U6CisgKiAgICAgdGVzdC10b29sIHRyYWNlMiA8dXRfbmFtZV8xPiA8dXRfdXNhZ2VfMT4KKyAqICAgICB0ZXN0LXRvb2wgdHJhY2UyIDx1dF9uYW1lXzI+IDx1dF91c2FnZV8yPgorICogICAgIC4uLgorICovCisjZGVmaW5lIFVTQUdFX1BSRUZJWCAidGVzdC10b29sIHRyYWNlMiIKKworLyogY2xhbmctZm9ybWF0IG9mZiAqLworc3RhdGljIHN0cnVjdCB1bml0X3Rlc3QgdXRfdGFibGVbXSA9IHsKKwl7IHV0XzAwMXJldHVybiwgICAiMDAxcmV0dXJuIiwgIjxleGl0X2NvZGU+IiB9LAorCXsgdXRfMDAyZXhpdCwgICAgICIwMDJleGl0IiwgICAiPGV4aXRfY29kZT4iIH0sCisJeyB1dF8wMDNlcnJvciwgICAgIjAwM2Vycm9yIiwgICI8ZXJyb3JfbWVzc2FnZT4rIiB9LAorCXsgdXRfMDA0Y2hpbGQsICAgICIwMDRjaGlsZCIsICAiWzxjaGlsZF9jb21tYW5kX2xpbmU+XSIgfSwKKwl7IHV0XzAwNWV4ZWMsICAgICAiMDA1ZXhlYyIsICAgIjxnaXRfY29tbWFuZF9hcmdzPiIgfSwKKwl7IHV0XzAwNmRhdGEsICAgICAiMDA2ZGF0YSIsICAgIls8Y2F0ZWdvcnk+IDxrZXk+IDx2YWx1ZT5dKyIgfSwKK307CisvKiBjbGFuZy1mb3JtYXQgb24gKi8KKworLyogY2xhbmctZm9ybWF0IG9mZiAqLworI2RlZmluZSBmb3JfZWFjaF91dChrLCB1dF9rKQkJCVwKKwlmb3IgKGsgPSAwLCB1dF9rID0gJnV0X3RhYmxlW2tdOwlcCisJICAgICBrIDwgQVJSQVlfU0laRSh1dF90YWJsZSk7CQlcCisJICAgICBrKyssIHV0X2sgPSAmdXRfdGFibGVba10pCisvKiBjbGFuZy1mb3JtYXQgb24gKi8KKworc3RhdGljIGludCBwcmludF91c2FnZSh2b2lkKQoreworCWludCBrOworCXN0cnVjdCB1bml0X3Rlc3QgKnV0X2s7CisKKwlmcHJpbnRmKHN0ZGVyciwgInVzYWdlOlxuIik7CisJZm9yX2VhY2hfdXQgKGssIHV0X2spCisJCWZwcmludGYoc3RkZXJyLCAiXHQlcyAlcyAlc1xuIiwgVVNBR0VfUFJFRklYLCB1dF9rLT51dF9uYW1lLAorCQkJdXRfay0+dXRfdXNhZ2UpOworCisJcmV0dXJuIDEyOTsKK30KKworLyoKKyAqIElzc3VlIHZhcmlvdXMgdHJhY2UyIGV2ZW50cyBmb3IgdGVzdGluZy4KKyAqCisgKiBXZSBhc3N1bWUgdGhhdCB0aGVzZSB0cmFjZTIgcm91dGluZXMgaGFzIGFscmVhZHkgYmVlbiBjYWxsZWQ6CisgKiAgICBbXSB0cmFjZTJfaW5pdGlhbGl6ZSgpICAgICAgW2NvbW1vbi1tYWluLmM6bWFpbigpXQorICogICAgW10gdHJhY2UyX2NtZF9zdGFydCgpICAgICAgIFtjb21tb24tbWFpbi5jOm1haW4oKV0KKyAqICAgIFtdIHRyYWNlMl9jbWRfbmFtZSgpICAgICAgICBbdGVzdC10b29sLmM6Y21kX21haW4oKV0KKyAqICAgIFtdIHRyYWNkMl9jbWRfbGlzdF9jb25maWcoKSBbdGVzdC10b29sLmM6Y21kX21haW4oKV0KKyAqIFNvIHRoYXQ6CisgKiAgICBbXSB0aGUgdmFyaW91cyB0cmFjZTIgc3RyZWFtcyBhcmUgb3Blbi4KKyAqICAgIFtdIHRoZSBwcm9jZXNzIFNJRCBoYXMgYmVlbiBjcmVhdGVkLgorICogICAgW10gdGhlICJ2ZXJzaW9uIiBldmVudCBoYXMgYmVlbiBnZW5lcmF0ZWQuCisgKiAgICBbXSB0aGUgInN0YXJ0IiBldmVudCBoYXMgYmVlbiBnZW5lcmF0ZWQuCisgKiAgICBbXSB0aGUgImNtZF9uYW1lIiBldmVudCBoYXMgYmVlbiBnZW5lcmF0ZWQuCisgKiAgICBbXSB0aGlzIHdyaXRlcyB2YXJpb3VzICJkZWZfcGFyYW0iIGV2ZW50cyBmb3IgaW50ZXJlc3RpbmcgY29uZmlnIHZhbHVlcy4KKyAqCisgKiBXZSBmdXJ0aGVyIGFzc3VtZSB0aGF0IGlmIHdlIHJldHVybiAocmF0aGVyIHRoYW4gZXhpdCgpKSwgdHJhY2UyX2NtZF9leGl0KCkKKyAqIHdpbGwgYmUgY2FsbGVkIGJ5IHRlc3QtdG9vbC5jOmNtZF9tYWluKCkuCisgKi8KK2ludCBjbWRfX3RyYWNlMihpbnQgYXJnYywgY29uc3QgY2hhciAqKmFyZ3YpCit7CisJaW50IGs7CisJc3RydWN0IHVuaXRfdGVzdCAqdXRfazsKKworCWFyZ2MtLTsgLyogc2tpcCBvdmVyICJ0cmFjZTIiIGFyZyAqLworCWFyZ3YrKzsKKworCWlmIChhcmdjKQorCQlmb3JfZWFjaF91dCAoaywgdXRfaykKKwkJCWlmICghc3RyY21wKGFyZ3ZbMF0sIHV0X2stPnV0X25hbWUpKQorCQkJCXJldHVybiB1dF9rLT51dF9mbihhcmdjIC0gMSwgYXJndiArIDEpOworCisJcmV0dXJuIHByaW50X3VzYWdlKCk7Cit9CmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LXdpbmRvd3MtbmFtZWQtcGlwZS5jIGIvdC9oZWxwZXIvdGVzdC13aW5kb3dzLW5hbWVkLXBpcGUuYwppbmRleCBiNGI3NTJiLi5hZTUyMTgzIDEwMDY0NAotLS0gYS90L2hlbHBlci90ZXN0LXdpbmRvd3MtbmFtZWQtcGlwZS5jCisrKyBiL3QvaGVscGVyL3Rlc3Qtd2luZG93cy1uYW1lZC1waXBlLmMKQEAgLTE5LDcgKzE5LDcgQEAKIAlpZiAoYXJnYyA8IDIpCiAJCWdvdG8gcHJpbnRfdXNhZ2U7CiAJZmlsZW5hbWUgPSBhcmd2WzFdOwotCWlmIChzdHJjaHIoZmlsZW5hbWUsICcvJykgfHwgc3RyY2hyKGZpbGVuYW1lLCAnXFwnKSkKKwlpZiAoc3RycGJyayhmaWxlbmFtZSwgIi9cXCIpKQogCQlnb3RvIHByaW50X3VzYWdlOwogCXN0cmJ1Zl9hZGRmKCZwYXRobmFtZSwgIi8vLi9waXBlLyVzIiwgZmlsZW5hbWUpOwogCmRpZmYgLS1naXQgYS90L2hlbHBlci90ZXN0LXhtbC1lbmNvZGUuYyBiL3QvaGVscGVyL3Rlc3QteG1sLWVuY29kZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE2NDhiYmQKLS0tIC9kZXYvbnVsbAorKysgYi90L2hlbHBlci90ZXN0LXhtbC1lbmNvZGUuYwpAQCAtMCwwICsxLDgwIEBACisjaW5jbHVkZSAidGVzdC10b29sLmgiCisKK3N0YXRpYyBjb25zdCBjaGFyICp1dGY4X3JlcGxhY2VfY2hhcmFjdGVyID0gIiYjeGZmZmQ7IjsKKworLyoKKyAqIEVuY29kZXMgKHBvc3NpYmx5IGluY29ycmVjdCkgVVRGLTggb24gPHN0ZGluPiB0byA8c3Rkb3V0PiwgdG8gYmUgZW1iZWRkZWQKKyAqIGluIGFuIFhNTCBmaWxlLgorICovCitpbnQgY21kX194bWxfZW5jb2RlKGludCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwl1bnNpZ25lZCBjaGFyIGJ1ZlsxMDI0XSwgdG1wWzRdLCAqdG1wMiA9IE5VTEw7CisJc3NpemVfdCBjdXIgPSAwLCBsZW4gPSAxLCByZW1haW5pbmcgPSAwOworCXVuc2lnbmVkIGNoYXIgY2g7CisKKwlmb3IgKDs7KSB7CisJCWlmICgrK2N1ciA9PSBsZW4pIHsKKwkJCWxlbiA9IHhyZWFkKDAsIGJ1Ziwgc2l6ZW9mKGJ1ZikpOworCQkJaWYgKCFsZW4pCisJCQkJcmV0dXJuIDA7CisJCQlpZiAobGVuIDwgMCkKKwkJCQlkaWVfZXJybm8oIkNvdWxkIG5vdCByZWFkIDxzdGRpbj4iKTsKKwkJCWN1ciA9IDA7CisJCX0KKwkJY2ggPSBidWZbY3VyXTsKKworCQlpZiAodG1wMikgeworCQkJaWYgKChjaCAmIDB4YzApICE9IDB4ODApIHsKKwkJCQlmcHV0cyh1dGY4X3JlcGxhY2VfY2hhcmFjdGVyLCBzdGRvdXQpOworCQkJCXRtcDIgPSBOVUxMOworCQkJCWN1ci0tOworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJKnRtcDIgPSBjaDsKKwkJCXRtcDIrKzsKKwkJCWlmICgtLXJlbWFpbmluZyA9PSAwKSB7CisJCQkJZndyaXRlKHRtcCwgdG1wMiAtIHRtcCwgMSwgc3Rkb3V0KTsKKwkJCQl0bXAyID0gTlVMTDsKKwkJCX0KKwkJCWNvbnRpbnVlOworCQl9CisKKwkJaWYgKCEoY2ggJiAweDgwKSkgeworCQkJLyogMHh4eHh4eHggKi8KKwkJCWlmIChjaCA9PSAnJicpCisJCQkJZnB1dHMoIiZhbXA7Iiwgc3Rkb3V0KTsKKwkJCWVsc2UgaWYgKGNoID09ICdcJycpCisJCQkJZnB1dHMoIiZhcG9zOyIsIHN0ZG91dCk7CisJCQllbHNlIGlmIChjaCA9PSAnIicpCisJCQkJZnB1dHMoIiZxdW90OyIsIHN0ZG91dCk7CisJCQllbHNlIGlmIChjaCA9PSAnPCcpCisJCQkJZnB1dHMoIiZsdDsiLCBzdGRvdXQpOworCQkJZWxzZSBpZiAoY2ggPT0gJz4nKQorCQkJCWZwdXRzKCImZ3Q7Iiwgc3Rkb3V0KTsKKwkJCWVsc2UgaWYgKGNoID49IDB4MjApCisJCQkJZnB1dGMoY2gsIHN0ZG91dCk7CisJCQllbHNlIGlmIChjaCA9PSAweDA5IHx8IGNoID09IDB4MGEgfHwgY2ggPT0gMHgwZCkKKwkJCQlmcHJpbnRmKHN0ZG91dCwgIiYjeCUwMng7IiwgY2gpOworCQkJZWxzZQorCQkJCWZwdXRzKHV0ZjhfcmVwbGFjZV9jaGFyYWN0ZXIsIHN0ZG91dCk7CisJCX0gZWxzZSBpZiAoKGNoICYgMHhlMCkgPT0gMHhjMCkgeworCQkJLyogMTEwWFhYWHggMTB4eHh4eHggKi8KKwkJCXRtcFswXSA9IGNoOworCQkJcmVtYWluaW5nID0gMTsKKwkJCXRtcDIgPSB0bXAgKyAxOworCQl9IGVsc2UgaWYgKChjaCAmIDB4ZjApID09IDB4ZTApIHsKKwkJCS8qIDExMTBYWFhYIDEwWHh4eHh4IDEweHh4eHh4ICovCisJCQl0bXBbMF0gPSBjaDsKKwkJCXJlbWFpbmluZyA9IDI7CisJCQl0bXAyID0gdG1wICsgMTsKKwkJfSBlbHNlIGlmICgoY2ggJiAweGY4KSA9PSAweGYwKSB7CisJCQkvKiAxMTExMFhYWCAxMFhYeHh4eCAxMHh4eHh4eCAxMHh4eHh4eCAqLworCQkJdG1wWzBdID0gY2g7CisJCQlyZW1haW5pbmcgPSAzOworCQkJdG1wMiA9IHRtcCArIDE7CisJCX0gZWxzZQorCQkJZnB1dHModXRmOF9yZXBsYWNlX2NoYXJhY3Rlciwgc3Rkb3V0KTsKKwl9CisKKwlyZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL3QvaW50ZXJvcC9pNTUwMC1naXQtZGFlbW9uLnNoIGIvdC9pbnRlcm9wL2k1NTAwLWdpdC1kYWVtb24uc2gKaW5kZXggMWRhZjY5NC4uNGQyMmU0MiAxMDA3NTUKLS0tIGEvdC9pbnRlcm9wL2k1NTAwLWdpdC1kYWVtb24uc2gKKysrIGIvdC9pbnRlcm9wL2k1NTAwLWdpdC1kYWVtb24uc2gKQEAgLTM3LDUgKzM3LDQgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKLXN0b3BfZ2l0X2RhZW1vbgogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L2xpYi1iYXNoLnNoIGIvdC9saWItYmFzaC5zaAppbmRleCAyYmU5NTVmLi5iMGI2MDYwIDEwMDY0NAotLS0gYS90L2xpYi1iYXNoLnNoCisrKyBiL3QvbGliLWJhc2guc2gKQEAgLTIsMTAgKzIsMTIgQEAKICMgdG8gcnVuIHVuZGVyIEJhc2g7IHByaW1hcmlseSBpbnRlbmRlZCBmb3IgdGVzdHMgb2YgdGhlIGNvbXBsZXRpb24KICMgc2NyaXB0LgogCi1pZiB0ZXN0IC1uICIkQkFTSCIgJiYgdGVzdCAteiAiJFBPU0lYTFlfQ09SUkVDVCI7IHRoZW4KK2lmIHRlc3QgLW4gIiRCQVNIIiAmJiB0ZXN0IC16ICIkUE9TSVhMWV9DT1JSRUNUIgordGhlbgogCSMgd2UgYXJlIGluIGZ1bGwtb24gYmFzaCBtb2RlCiAJdHJ1ZQotZWxpZiB0eXBlIGJhc2ggPi9kZXYvbnVsbCAyPiYxOyB0aGVuCitlbGlmIHR5cGUgYmFzaCA+L2Rldi9udWxsIDI+JjEKK3RoZW4KIAkjIGV4ZWN1dGUgaW4gZnVsbC1vbiBiYXNoIG1vZGUKIAl1bnNldCBQT1NJWExZX0NPUlJFQ1QKIAlleGVjIGJhc2ggIiQwIiAiJEAiCmRpZmYgLS1naXQgYS90L2xpYi1naXQtZGFlbW9uLnNoIGIvdC9saWItZ2l0LWRhZW1vbi5zaAppbmRleCBmOThkZTk1Li5lNjI1NjkyIDEwMDY0NAotLS0gYS90L2xpYi1naXQtZGFlbW9uLnNoCisrKyBiL3QvbGliLWdpdC1kYWVtb24uc2gKQEAgLTEzLDExICsxMyw5IEBACiAjCiAjCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgLi4uCiAjCi0jCXN0b3BfZ2l0X2RhZW1vbgogIwl0ZXN0X2RvbmUKIAotdGVzdF90cmlzdGF0ZSBHSVRfVEVTVF9HSVRfREFFTU9OCi1pZiB0ZXN0ICIkR0lUX1RFU1RfR0lUX0RBRU1PTiIgPSBmYWxzZQoraWYgISB0ZXN0X2Jvb2xfZW52IEdJVF9URVNUX0dJVF9EQUVNT04gdHJ1ZQogdGhlbgogCXNraXBfYWxsPSJnaXQtZGFlbW9uIHRlc3RpbmcgZGlzYWJsZWQgKHVuc2V0IEdJVF9URVNUX0dJVF9EQUVNT04gdG8gZW5hYmxlKSIKIAl0ZXN0X2RvbmUKQEAgLTI1LDE2ICsyMywxOCBAQAogCiBpZiB0ZXN0X2hhdmVfcHJlcmVxICFQSVBFCiB0aGVuCi0JdGVzdF9za2lwX29yX2RpZSAkR0lUX1RFU1RfR0lUX0RBRU1PTiAiZmlsZSBzeXN0ZW0gZG9lcyBub3Qgc3VwcG9ydCBGSUZPcyIKKwl0ZXN0X3NraXBfb3JfZGllIEdJVF9URVNUX0dJVF9EQUVNT04gImZpbGUgc3lzdGVtIGRvZXMgbm90IHN1cHBvcnQgRklGT3MiCiBmaQogCi1MSUJfR0lUX0RBRU1PTl9QT1JUPSR7TElCX0dJVF9EQUVNT05fUE9SVC0ke3RoaXNfdGVzdCN0fX0KK3Rlc3Rfc2V0X3BvcnQgTElCX0dJVF9EQUVNT05fUE9SVAogCiBHSVRfREFFTU9OX1BJRD0KK0dJVF9EQUVNT05fUElERklMRT0iJFBXRCIvZGFlbW9uLnBpZAogR0lUX0RBRU1PTl9ET0NVTUVOVF9ST09UX1BBVEg9IiRQV0QiL3JlcG8KIEdJVF9EQUVNT05fSE9TVF9QT1JUPTEyNy4wLjAuMTokTElCX0dJVF9EQUVNT05fUE9SVAogR0lUX0RBRU1PTl9VUkw9Z2l0Oi8vJEdJVF9EQUVNT05fSE9TVF9QT1JUCiAKK3JlZ2lzdGVyZWRfc3RvcF9naXRfZGFlbW9uX2F0ZXhpdF9oYW5kbGVyPQogc3RhcnRfZ2l0X2RhZW1vbigpIHsKIAlpZiB0ZXN0IC1uICIkR0lUX0RBRU1PTl9QSUQiCiAJdGhlbgpAQCAtNDMsMzggKzQzLDM2IEBACiAKIAlta2RpciAtcCAiJEdJVF9EQUVNT05fRE9DVU1FTlRfUk9PVF9QQVRIIgogCi0JdHJhcCAnY29kZT0kPzsgc3RvcF9naXRfZGFlbW9uOyAoZXhpdCAkY29kZSk7IGRpZScgRVhJVAorCSMgT25lIG9mIHRoZSB0ZXN0IHNjcmlwdHMgc3RvcHMgYW5kIHRoZW4gcmUtc3RhcnRzICdnaXQgZGFlbW9uJy4KKwkjIERvbid0IHJlZ2lzdGVyIGFuZCB0aGVuIHJ1biB0aGUgc2FtZSBhdGV4aXQgaGFuZGxlcnMgc2V2ZXJhbCB0aW1lcy4KKwlpZiB0ZXN0IC16ICIkcmVnaXN0ZXJlZF9zdG9wX2dpdF9kYWVtb25fYXRleGl0X2hhbmRsZXIiCisJdGhlbgorCQl0ZXN0X2F0ZXhpdCAnc3RvcF9naXRfZGFlbW9uJworCQlyZWdpc3RlcmVkX3N0b3BfZ2l0X2RhZW1vbl9hdGV4aXRfaGFuZGxlcj1BbHJlYWR5RG9uZQorCWZpCiAKIAlzYXkgPiYzICJTdGFydGluZyBnaXQgZGFlbW9uIC4uLiIKIAlta2ZpZm8gZ2l0X2RhZW1vbl9vdXRwdXQKIAkke0xJQl9HSVRfREFFTU9OX0NPTU1BTkQ6LWdpdCBkYWVtb259IFwKIAkJLS1saXN0ZW49MTI3LjAuMC4xIC0tcG9ydD0iJExJQl9HSVRfREFFTU9OX1BPUlQiIFwKLQkJLS1yZXVzZWFkZHIgLS12ZXJib3NlIFwKKwkJLS1yZXVzZWFkZHIgLS12ZXJib3NlIC0tcGlkLWZpbGU9IiRHSVRfREFFTU9OX1BJREZJTEUiIFwKIAkJLS1iYXNlLXBhdGg9IiRHSVRfREFFTU9OX0RPQ1VNRU5UX1JPT1RfUEFUSCIgXAogCQkiJEAiICIkR0lUX0RBRU1PTl9ET0NVTUVOVF9ST09UX1BBVEgiIFwKIAkJPiYzIDI+Z2l0X2RhZW1vbl9vdXRwdXQgJgogCUdJVF9EQUVNT05fUElEPSQhCi0JPmRhZW1vbi5sb2cKIAl7CiAJCXJlYWQgLXIgbGluZSA8JjcKLQkJcHJpbnRmICIlc1xuIiAiJGxpbmUiCi0JCXByaW50ZiA+JjQgIiVzXG4iICIkbGluZSIKLQkJKAotCQkJd2hpbGUgcmVhZCAtciBsaW5lIDwmNwotCQkJZG8KLQkJCQlwcmludGYgIiVzXG4iICIkbGluZSIKLQkJCQlwcmludGYgPiY0ICIlc1xuIiAiJGxpbmUiCi0JCQlkb25lCi0JCSkgJgotCX0gNzxnaXRfZGFlbW9uX291dHB1dCA+PiIkVFJBU0hfRElSRUNUT1JZL2RhZW1vbi5sb2ciICYmCisJCXByaW50ZiAiJXNcbiIgIiRsaW5lIiA+JjQKKwkJY2F0IDwmNyA+JjQgJgorCX0gNzxnaXRfZGFlbW9uX291dHB1dCAmJgogCiAJIyBDaGVjayBleHBlY3RlZCBvdXRwdXQKIAlpZiB0ZXN0IHgiJChleHByICIkbGluZSIgOiAiXFtbMC05XSpcXSBcKC4qXCkiKSIgIT0geCJSZWFkeSB0byBydW1ibGUiCiAJdGhlbgogCQlraWxsICIkR0lUX0RBRU1PTl9QSUQiCiAJCXdhaXQgIiRHSVRfREFFTU9OX1BJRCIKLQkJdHJhcCAnZGllJyBFWElUCi0JCXRlc3Rfc2tpcF9vcl9kaWUgJEdJVF9URVNUX0dJVF9EQUVNT04gXAorCQl1bnNldCBHSVRfREFFTU9OX1BJRAorCQl0ZXN0X3NraXBfb3JfZGllIEdJVF9URVNUX0dJVF9EQUVNT04gXAogCQkJImdpdCBkYWVtb24gZmFpbGVkIHRvIHN0YXJ0IgogCWZpCiB9CkBAIC04NSw4ICs4Myw2IEBACiAJCXJldHVybgogCWZpCiAKLQl0cmFwICdkaWUnIEVYSVQKLQogCSMga2lsbCBnaXQtZGFlbW9uIGNoaWxkIG9mIGdpdAogCXNheSA+JjMgIlN0b3BwaW5nIGdpdCBkYWVtb24gLi4uIgogCWtpbGwgIiRHSVRfREFFTU9OX1BJRCIKQEAgLTk2LDggKzkyLDkgQEAKIAl0aGVuCiAJCWVycm9yICJnaXQgZGFlbW9uIGV4aXRlZCB3aXRoIHN0YXR1czogJHJldCIKIAlmaQorCWtpbGwgIiQoY2F0ICIkR0lUX0RBRU1PTl9QSURGSUxFIikiIDI+L2Rldi9udWxsCiAJR0lUX0RBRU1PTl9QSUQ9Ci0Jcm0gLWYgZ2l0X2RhZW1vbl9vdXRwdXQKKwlybSAtZiBnaXRfZGFlbW9uX291dHB1dCAiJEdJVF9EQUVNT05fUElERklMRSIKIH0KIAogIyBBIHN0cmlwcGVkLWRvd24gdmVyc2lvbiBvZiBhIG5ldGNhdCBjbGllbnQsIHRoYXQgY29ubmVjdHMgdG8gYSAiaG9zdDpwb3J0IgpkaWZmIC0tZ2l0IGEvdC9saWItZ2l0LXA0LnNoIGIvdC9saWItZ2l0LXA0LnNoCmluZGV4IGMyNzU5OTQuLjVhZmYyYWIgMTAwNjQ0Ci0tLSBhL3QvbGliLWdpdC1wNC5zaAorKysgYi90L2xpYi1naXQtcDQuc2gKQEAgLTQ0LDIzICs0NCw3IEBACiAJZWNobyAiJHBhdGgiCiB9CiAKLSMgT24gU29sYXJpcyB0aGUgJ2RhdGUgKyVzJyBmdW5jdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGFuZCB0aGVyZWZvcmUgd2UKLSMgbmVlZCB0aGlzIHJlcGxhY2VtZW50LgotIyBBdHRlbnRpb246IFRoaXMgZnVuY3Rpb24gaXMgbm90IHNhZmUgYWdhaW4gYWdhaW5zdCB0aW1lIG9mZnNldCB1cGRhdGVzCi0jIGF0IHJ1bnRpbWUgKGUuZy4gdmlhIE5UUCkuIFRoZSAnY2xvY2tfZ2V0dGltZShDTE9DS19NT05PVE9OSUMpJwotIyBmdW5jdGlvbiBjb3VsZCBmaXggdGhhdCBidXQgaXQgaXMgbm90IGluIFB5dGhvbiB1bnRpbCAzLjMuCi10aW1lX2luX3NlY29uZHMgKCkgewotCShjZCAvICYmICIkUFlUSE9OX1BBVEgiIC1jICdpbXBvcnQgdGltZTsgcHJpbnQoaW50KHRpbWUudGltZSgpKSknKQotfQotCi0jIFRyeSB0byBwaWNrIGEgdW5pcXVlIHBvcnQ6IGd1ZXNzIGEgbGFyZ2UgbnVtYmVyLCB0aGVuIGhvcGUKLSMgbm8gbW9yZSB0aGFuIG9uZSBvZiBlYWNoIHRlc3QgaXMgcnVubmluZy4KLSMKLSMgVGhpcyBkb2VzIG5vdCBoYW5kbGUgdGhlIGNhc2Ugd2hlcmUgc29tZWJvZHkgZWxzZSBpcyBydW5uaW5nIHRoZQotIyBzYW1lIHRlc3RzIGFuZCBoYXMgY2hvc2VuIHRoZSBzYW1lIHBvcnRzLgotdGVzdGlkPSR7dGhpc190ZXN0I3R9Ci1naXRfcDRfdGVzdF9zdGFydD05ODAwCi1QNERQT1JUPSQoKDEwNjY5ICsgKCR0ZXN0aWQgLSAkZ2l0X3A0X3Rlc3Rfc3RhcnQpKSkKK3Rlc3Rfc2V0X3BvcnQgUDREUE9SVAogCiBQNFBPUlQ9bG9jYWxob3N0OiRQNERQT1JUCiBQNENMSUVOVD1jbGllbnQKQEAgLTc0LDE0ICs1OCw5IEBACiBnaXQ9IiRUUkFTSF9ESVJFQ1RPUlkvZ2l0IgogcGlkZmlsZT0iJFRSQVNIX0RJUkVDVE9SWS9wNGQucGlkIgogCi0jIFNvbWV0aW1lcyAicHJvdmUiIHNlZW1zIHRvIGhhbmcgb24gZXhpdCBiZWNhdXNlIHA0ZCBpcyBzdGlsbCBydW5uaW5nCi1jbGVhbnVwICgpIHsKLQlpZiB0ZXN0IC1mICIkcGlkZmlsZSIKLQl0aGVuCi0JCWtpbGwgLTkgJChjYXQgIiRwaWRmaWxlIikgMj4vZGV2L251bGwgJiYgZXhpdCAyNTUKLQlmaQorc3RvcF9wNGRfYW5kX3dhdGNoZG9nICgpIHsKKwlraWxsIC05ICRwNGRfcGlkICR3YXRjaGRvZ19waWQKIH0KLXRyYXAgY2xlYW51cCBFWElUCiAKICMgZ2l0IHA0IHN1Ym1pdCBnZW5lcmF0ZXMgYSB0ZW1wIGZpbGUsIHdoaWNoIHdpbGwKICMgbm90IGdldCBjbGVhbmVkIHVwIGlmIHRoZSBzdWJtaXNzaW9uIGZhaWxzLiAgRG9uJ3QKQEAgLTg5LDcgKzY4LDE2IEBACiBUTVBESVI9IiRUUkFTSF9ESVJFQ1RPUlkiCiBleHBvcnQgVE1QRElSCiAKK3JlZ2lzdGVyZWRfc3RvcF9wNGRfYXRleGl0X2hhbmRsZXI9CiBzdGFydF9wNGQgKCkgeworCSMgT25lIG9mIHRoZSB0ZXN0IHNjcmlwdHMgc3RvcHMgYW5kIHRoZW4gcmUtc3RhcnRzIHA0ZC4KKwkjIERvbid0IHJlZ2lzdGVyIGFuZCB0aGVuIHJ1biB0aGUgc2FtZSBhdGV4aXQgaGFuZGxlcnMgc2V2ZXJhbCB0aW1lcy4KKwlpZiB0ZXN0IC16ICIkcmVnaXN0ZXJlZF9zdG9wX3A0ZF9hdGV4aXRfaGFuZGxlciIKKwl0aGVuCisJCXRlc3RfYXRleGl0ICdzdG9wX3A0ZF9hbmRfd2F0Y2hkb2cnCisJCXJlZ2lzdGVyZWRfc3RvcF9wNGRfYXRleGl0X2hhbmRsZXI9QWxyZWFkeURvbmUKKwlmaQorCiAJbWtkaXIgLXAgIiRkYiIgIiRjbGkiICIkZ2l0IiAmJgogCXJtIC1mICIkcGlkZmlsZSIgJiYKIAkoCkBAIC05OSw2ICs4Nyw3IEBACiAJCQllY2hvICQhID4iJHBpZGZpbGUiCiAJCX0KIAkpICYmCisJcDRkX3BpZD0kKGNhdCAiJHBpZGZpbGUiKQogCiAJIyBUaGlzIGdpdmVzIHA0ZCBhIGxvbmcgdGltZSB0byBzdGFydCB1cCwgYXMgaXQgY2FuIGJlCiAJIyBxdWl0ZSBzbG93IGRlcGVuZGluZyBvbiB0aGUgbWFjaGluZS4gIFNldCB0aGlzIGVudmlyb25tZW50CkBAIC0xMDYsMTggKzk1LDE4IEBACiAJIyBhbiBhdXRvbWF0ZWQgdGVzdCBzZXR1cC4gIElmIHRoZSBwNGQgcHJvY2VzcyBkaWVzLCB0aGF0CiAJIyB3aWxsIGJlIGNhdWdodCB3aXRoIHRoZSAia2lsbCAtMCIgY2hlY2sgYmVsb3cuCiAJaT0ke1A0RF9TVEFSVF9QQVRJRU5DRTotMzAwfQotCXBpZD0kKGNhdCAiJHBpZGZpbGUiKQogCi0JdGltZW91dD0kKCgkKHRpbWVfaW5fc2Vjb25kcykgKyAkUDREX1RJTUVPVVQpKQorCW5yX3RyaWVzX2xlZnQ9JFA0RF9USU1FT1VUCiAJd2hpbGUgdHJ1ZQogCWRvCi0JCWlmIHRlc3QgJCh0aW1lX2luX3NlY29uZHMpIC1ndCAkdGltZW91dAorCQlpZiB0ZXN0ICRucl90cmllc19sZWZ0IC1lcSAwCiAJCXRoZW4KLQkJCWtpbGwgLTkgJHBpZAorCQkJa2lsbCAtOSAkcDRkX3BpZAogCQkJZXhpdCAxCiAJCWZpCiAJCXNsZWVwIDEKLQlkb25lICYKKwkJbnJfdHJpZXNfbGVmdD0kKCgkbnJfdHJpZXNfbGVmdCAtIDEpKQorCWRvbmUgMj4vZGV2L251bGwgND4mMiAmCiAJd2F0Y2hkb2dfcGlkPSQhCiAKIAlyZWFkeT0KQEAgLTEzMCw3ICsxMTksNyBAQAogCQkJYnJlYWsKIAkJZmkKIAkJIyBmYWlsIGlmIHA0ZCBkaWVkCi0JCWtpbGwgLTAgJHBpZCAyPi9kZXYvbnVsbCB8fCBicmVhaworCQlraWxsIC0wICRwNGRfcGlkIDI+L2Rldi9udWxsIHx8IGJyZWFrCiAJCWVjaG8gd2FpdGluZyBmb3IgcDRkIHRvIHN0YXJ0CiAJCXNsZWVwIDEKIAkJaT0kKCggJGkgLSAxICkpCkBAIC0xNzAsMzQgKzE1OSwyMyBAQAogfQogCiByZXRyeV91bnRpbF9zdWNjZXNzICgpIHsKLQl0aW1lb3V0PSQoKCQodGltZV9pbl9zZWNvbmRzKSArICRSRVRSWV9USU1FT1VUKSkKLQl1bnRpbCAiJEAiIDI+L2Rldi9udWxsIHx8IHRlc3QgJCh0aW1lX2luX3NlY29uZHMpIC1ndCAkdGltZW91dAorCW5yX3RyaWVzX2xlZnQ9JFJFVFJZX1RJTUVPVVQKKwl1bnRpbCAiJEAiIDI+L2Rldi9udWxsIHx8IHRlc3QgJG5yX3RyaWVzX2xlZnQgLWVxIDAKIAlkbwogCQlzbGVlcCAxCisJCW5yX3RyaWVzX2xlZnQ9JCgoJG5yX3RyaWVzX2xlZnQgLSAxKSkKIAlkb25lCiB9CiAKLXJldHJ5X3VudGlsX2ZhaWwgKCkgewotCXRpbWVvdXQ9JCgoJCh0aW1lX2luX3NlY29uZHMpICsgJFJFVFJZX1RJTUVPVVQpKQotCXVudGlsICEgIiRAIiAyPi9kZXYvbnVsbCB8fCB0ZXN0ICQodGltZV9pbl9zZWNvbmRzKSAtZ3QgJHRpbWVvdXQKLQlkbwotCQlzbGVlcCAxCi0JZG9uZQotfQotCi1raWxsX3A0ZCAoKSB7Ci0JcGlkPSQoY2F0ICIkcGlkZmlsZSIpCi0JcmV0cnlfdW50aWxfZmFpbCBraWxsICRwaWQKLQlyZXRyeV91bnRpbF9mYWlsIGtpbGwgLTkgJHBpZAotCSMgY29tcGxhaW4gaWYgaXQgd291bGQgbm90IGRpZQotCXRlc3RfbXVzdF9mYWlsIGtpbGwgJHBpZCA+L2Rldi9udWxsIDI+JjEgJiYKLQlybSAtcmYgIiRkYiIgIiRjbGkiICIkcGlkZmlsZSIgJiYKLQlyZXRyeV91bnRpbF9mYWlsIGtpbGwgLTkgJHdhdGNoZG9nX3BpZAorc3RvcF9hbmRfY2xlYW51cF9wNGQgKCkgeworCWtpbGwgLTkgJHA0ZF9waWQgJHdhdGNoZG9nX3BpZAorCXdhaXQgJHA0ZF9waWQKKwlybSAtcmYgIiRkYiIgIiRjbGkiICIkcGlkZmlsZSIKIH0KIAogY2xlYW51cF9naXQgKCkgewogCXJldHJ5X3VudGlsX3N1Y2Nlc3Mgcm0gLXIgIiRnaXQiCi0JdGVzdF9tdXN0X2ZhaWwgdGVzdCAtZCAiJGdpdCIgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyAiJGdpdCIgJiYKIAlyZXRyeV91bnRpbF9zdWNjZXNzIG1rZGlyICIkZ2l0IgogfQogCmRpZmYgLS1naXQgYS90L2xpYi1naXQtc3ZuLnNoIGIvdC9saWItZ2l0LXN2bi5zaAppbmRleCBhODEzMGY5Li43ZDI0OGU2IDEwMDY0NAotLS0gYS90L2xpYi1naXQtc3ZuLnNoCisrKyBiL3QvbGliLWdpdC1zdm4uc2gKQEAgLTEzLDYgKzEzLDcgQEAKIEdJVF9ESVI9JFBXRC8uZ2l0CiBHSVRfU1ZOX0RJUj0kR0lUX0RJUi9zdm4vcmVmcy9yZW1vdGVzL2dpdC1zdm4KIFNWTl9UUkVFPSRHSVRfU1ZOX0RJUi9zdm4tdHJlZQordGVzdF9zZXRfcG9ydCBTVk5TRVJWRV9QT1JUCiAKIHN2biA+L2Rldi9udWxsIDI+JjEKIGlmIHRlc3QgJD8gLW5lIDEKQEAgLTY4LDE5ICs2OSwxMiBAQAogbWF5YmVfc3RhcnRfaHR0cGQgKCkgewogCWxvYz0kezEtc3ZufQogCi0JdGVzdF90cmlzdGF0ZSBHSVRfU1ZOX1RFU1RfSFRUUEQKLQljYXNlICRHSVRfU1ZOX1RFU1RfSFRUUEQgaW4KLQl0cnVlKQorCWlmIHRlc3RfYm9vbF9lbnYgR0lUX1RFU1RfU1ZOX0hUVFBEIGZhbHNlCisJdGhlbgogCQkuICIkVEVTVF9ESVJFQ1RPUlkiL2xpYi1odHRwZC5zaAogCQlMSUJfSFRUUERfU1ZOPSIkbG9jIgogCQlzdGFydF9odHRwZAotCQk7OwotCSopCi0JCXN0b3BfaHR0cGQgKCkgewotCQkJOiBub29wCi0JCX0KLQkJOzsKLQllc2FjCisJZmkKIH0KIAogY29udmVydF90b19yZXZfZGIgKCkgewpAQCAtMTEwLDggKzEwNCw3IEBACiB9CiAKIHJlcXVpcmVfc3Zuc2VydmUgKCkgewotCXRlc3RfdHJpc3RhdGUgR0lUX1RFU1RfU1ZOU0VSVkUKLQlpZiAhIHRlc3QgIiRHSVRfVEVTVF9TVk5TRVJWRSIgPSB0cnVlCisJaWYgISB0ZXN0X2Jvb2xfZW52IEdJVF9URVNUX1NWTlNFUlZFIGZhbHNlCiAJdGhlbgogCQlza2lwX2FsbD0nc2tpcHBpbmcgc3Zuc2VydmUgdGVzdC4gKHNldCAkR0lUX1RFU1RfU1ZOU0VSVkUgdG8gZW5hYmxlKScKIAkJdGVzdF9kb25lCkBAIC0xMTksNyArMTEyLDYgQEAKIH0KIAogc3RhcnRfc3Zuc2VydmUgKCkgewotCVNWTlNFUlZFX1BPUlQ9JHtTVk5TRVJWRV9QT1JULSR7dGhpc190ZXN0I3R9fQogCXN2bnNlcnZlIC0tbGlzdGVuLXBvcnQgJFNWTlNFUlZFX1BPUlQgXAogCQkgLS1yb290ICIkcmF3c3ZucmVwbyIgXAogCQkgLS1saXN0ZW4tb25jZSBcCmRpZmYgLS1naXQgYS90L2xpYi1ncGcuc2ggYi90L2xpYi1ncGcuc2gKaW5kZXggZjEyNzdiZS4uOGQyODY1MiAxMDA3NTUKLS0tIGEvdC9saWItZ3BnLnNoCisrKyBiL3QvbGliLWdwZy5zaApAQCAtNjMsOCArNjMsNyBAQAogCQljdXQgLWQiICIgLWY0IHwKIAkJdHIgLWQgJ1xuJyA+IiR7R05VUEdIT01FfS90cnVzdGxpc3QudHh0IiAmJgogCi0JCWVjaG8gIiBTIHJlbGF4IiA+PiAke0dOVVBHSE9NRX0vdHJ1c3RsaXN0LnR4dCAmJgotCQkoZ3BnY29uZiAtLWtpbGwgZ3BnLWFnZW50ID4vZGV2L251bGwgMj4mMSB8fCA6ICkgJiYKKwkJZWNobyAiIFMgcmVsYXgiID4+IiR7R05VUEdIT01FfS90cnVzdGxpc3QudHh0IiAmJgogCQllY2hvIGhlbGxvIHwgZ3Bnc20gLS1ob21lZGlyICIke0dOVVBHSE9NRX0iID4vZGV2L251bGwgXAogCQkJLXUgY29tbWl0dGVyQGV4YW1wbGUuY29tIC1vIC9kZXYvbnVsbCAtLXNpZ24gLSAyPiYxICYmCiAJCXRlc3Rfc2V0X3ByZXJlcSBHUEdTTQpkaWZmIC0tZ2l0IGEvdC9saWItaHR0cGQuc2ggYi90L2xpYi1odHRwZC5zaAppbmRleCBhODcyOWY4Li4xNDQ5ZWU5IDEwMDY0NAotLS0gYS90L2xpYi1odHRwZC5zaAorKysgYi90L2xpYi1odHRwZC5zaApAQCAtMTQsNyArMTQsNiBAQAogIwogIwl0ZXN0X2V4cGVjdF9zdWNjZXNzIC4uLgogIwotIwlzdG9wX2h0dHBkCiAjCXRlc3RfZG9uZQogIwogIyBDYW4gYmUgY29uZmlndXJlZCB1c2luZyB0aGUgZm9sbG93aW5nIHZhcmlhYmxlcy4KQEAgLTQyLDE1ICs0MSwxNCBAQAogCXRlc3RfZG9uZQogZmkKIAotdGVzdF90cmlzdGF0ZSBHSVRfVEVTVF9IVFRQRAotaWYgdGVzdCAiJEdJVF9URVNUX0hUVFBEIiA9IGZhbHNlCitpZiAhIHRlc3RfYm9vbF9lbnYgR0lUX1RFU1RfSFRUUEQgdHJ1ZQogdGhlbgogCXNraXBfYWxsPSJOZXR3b3JrIHRlc3RpbmcgZGlzYWJsZWQgKHVuc2V0IEdJVF9URVNUX0hUVFBEIHRvIGVuYWJsZSkiCiAJdGVzdF9kb25lCiBmaQogCiBpZiAhIHRlc3RfaGF2ZV9wcmVyZXEgTk9UX1JPT1Q7IHRoZW4KLQl0ZXN0X3NraXBfb3JfZGllICRHSVRfVEVTVF9IVFRQRCBcCisJdGVzdF9za2lwX29yX2RpZSBHSVRfVEVTVF9IVFRQRCBcCiAJCSJDYW5ub3QgcnVuIGh0dHBkIHRlc3RzIGFzIHJvb3QiCiBmaQogCkBAIC04Miw3ICs4MCw3IEBACiBlc2FjCiAKIExJQl9IVFRQRF9QQVRIPSR7TElCX0hUVFBEX1BBVEgtIiRERUZBVUxUX0hUVFBEX1BBVEgifQotTElCX0hUVFBEX1BPUlQ9JHtMSUJfSFRUUERfUE9SVC0ke3RoaXNfdGVzdCN0fX0KK3Rlc3Rfc2V0X3BvcnQgTElCX0hUVFBEX1BPUlQKIAogVEVTVF9QQVRIPSIkVEVTVF9ESVJFQ1RPUlkiL2xpYi1odHRwZAogSFRUUERfUk9PVF9QQVRIPSIkUFdEIi9odHRwZApAQCAtOTEsMTEgKzg5LDEyIEBACiAjIGhhY2sgdG8gc3VwcHJlc3MgYXBhY2hlIFBhc3NFbnYgd2FybmluZ3MKIEdJVF9WQUxHUklORD0kR0lUX1ZBTEdSSU5EOyBleHBvcnQgR0lUX1ZBTEdSSU5ECiBHSVRfVkFMR1JJTkRfT1BUSU9OUz0kR0lUX1ZBTEdSSU5EX09QVElPTlM7IGV4cG9ydCBHSVRfVkFMR1JJTkRfT1BUSU9OUworR0lUX1RFU1RfU0lERUJBTkRfQUxMPSRHSVRfVEVTVF9TSURFQkFORF9BTEw7IGV4cG9ydCBHSVRfVEVTVF9TSURFQkFORF9BTEwKIEdJVF9UUkFDRT0kR0lUX1RSQUNFOyBleHBvcnQgR0lUX1RSQUNFCiAKIGlmICEgdGVzdCAteCAiJExJQl9IVFRQRF9QQVRIIgogdGhlbgotCXRlc3Rfc2tpcF9vcl9kaWUgJEdJVF9URVNUX0hUVFBEICJubyB3ZWIgc2VydmVyIGZvdW5kIGF0ICckTElCX0hUVFBEX1BBVEgnIgorCXRlc3Rfc2tpcF9vcl9kaWUgR0lUX1RFU1RfSFRUUEQgIm5vIHdlYiBzZXJ2ZXIgZm91bmQgYXQgJyRMSUJfSFRUUERfUEFUSCciCiBmaQogCiBIVFRQRF9WRVJTSU9OPSQoJExJQl9IVFRQRF9QQVRIIC12IHwgXApAQCAtMTA3LDE5ICsxMDYsMTkgQEAKIAl0aGVuCiAJCWlmICEgdGVzdCAkSFRUUERfVkVSU0lPTiAtZ2UgMgogCQl0aGVuCi0JCQl0ZXN0X3NraXBfb3JfZGllICRHSVRfVEVTVF9IVFRQRCBcCisJCQl0ZXN0X3NraXBfb3JfZGllIEdJVF9URVNUX0hUVFBEIFwKIAkJCQkiYXQgbGVhc3QgQXBhY2hlIHZlcnNpb24gMiBpcyByZXF1aXJlZCIKIAkJZmkKIAkJaWYgISB0ZXN0IC1kICIkREVGQVVMVF9IVFRQRF9NT0RVTEVfUEFUSCIKIAkJdGhlbgotCQkJdGVzdF9za2lwX29yX2RpZSAkR0lUX1RFU1RfSFRUUEQgXAorCQkJdGVzdF9za2lwX29yX2RpZSBHSVRfVEVTVF9IVFRQRCBcCiAJCQkJIkFwYWNoZSBtb2R1bGUgZGlyZWN0b3J5IG5vdCBmb3VuZCIKIAkJZmkKIAogCQlMSUJfSFRUUERfTU9EVUxFX1BBVEg9IiRERUZBVUxUX0hUVFBEX01PRFVMRV9QQVRIIgogCWZpCiBlbHNlCi0JdGVzdF9za2lwX29yX2RpZSAkR0lUX1RFU1RfSFRUUEQgXAorCXRlc3Rfc2tpcF9vcl9kaWUgR0lUX1RFU1RfSFRUUEQgXAogCQkiQ291bGQgbm90IGlkZW50aWZ5IHdlYiBzZXJ2ZXIgYXQgJyRMSUJfSFRUUERfUEFUSCciCiBmaQogCkBAIC0xMzEsOCArMTMwLDkgQEAKIAlta2RpciAtcCAiJEhUVFBEX0RPQ1VNRU5UX1JPT1RfUEFUSCIKIAljcCAiJFRFU1RfUEFUSCIvcGFzc3dkICIkSFRUUERfUk9PVF9QQVRIIgogCWluc3RhbGxfc2NyaXB0IGJyb2tlbi1zbWFydC1odHRwLnNoCisJaW5zdGFsbF9zY3JpcHQgZXJyb3Itc21hcnQtaHR0cC5zaAogCWluc3RhbGxfc2NyaXB0IGVycm9yLnNoCi0JaW5zdGFsbF9zY3JpcHQgYXBwbHktb25lLXRpbWUtc2VkLnNoCisJaW5zdGFsbF9zY3JpcHQgYXBwbHktb25lLXRpbWUtcGVybC5zaAogCiAJbG4gLXMgIiRMSUJfSFRUUERfTU9EVUxFX1BBVEgiICIkSFRUUERfUk9PVF9QQVRIL21vZHVsZXMiCiAKQEAgLTE3NCw3ICsxNzQsNyBAQAogc3RhcnRfaHR0cGQoKSB7CiAJcHJlcGFyZV9odHRwZCA+JjMgMj4mNAogCi0JdHJhcCAnY29kZT0kPzsgc3RvcF9odHRwZDsgKGV4aXQgJGNvZGUpOyBkaWUnIEVYSVQKKwl0ZXN0X2F0ZXhpdCBzdG9wX2h0dHBkCiAKIAkiJExJQl9IVFRQRF9QQVRIIiAtZCAiJEhUVFBEX1JPT1RfUEFUSCIgXAogCQktZiAiJFRFU1RfUEFUSC9hcGFjaGUuY29uZiIgJEhUVFBEX1BBUkEgXApAQCAtMTgyLDE1ICsxODIsMTIgQEAKIAkJPiYzIDI+JjQKIAlpZiB0ZXN0ICQ/IC1uZSAwCiAJdGhlbgotCQl0cmFwICdkaWUnIEVYSVQKIAkJY2F0ICIkSFRUUERfUk9PVF9QQVRIIi9lcnJvci5sb2cgPiY0IDI+L2Rldi9udWxsCi0JCXRlc3Rfc2tpcF9vcl9kaWUgJEdJVF9URVNUX0hUVFBEICJ3ZWIgc2VydmVyIHNldHVwIGZhaWxlZCIKKwkJdGVzdF9za2lwX29yX2RpZSBHSVRfVEVTVF9IVFRQRCAid2ViIHNlcnZlciBzZXR1cCBmYWlsZWQiCiAJZmkKIH0KIAogc3RvcF9odHRwZCgpIHsKLQl0cmFwICdkaWUnIEVYSVQKLQogCSIkTElCX0hUVFBEX1BBVEgiIC1kICIkSFRUUERfUk9PVF9QQVRIIiBcCiAJCS1mICIkVEVTVF9QQVRIL2FwYWNoZS5jb25mIiAkSFRUUERfUEFSQSAtayBzdG9wCiB9CmRpZmYgLS1naXQgYS90L2xpYi1odHRwZC9hcGFjaGUuY29uZiBiL3QvbGliLWh0dHBkL2FwYWNoZS5jb25mCmluZGV4IDU4MWMwMTAuLjk5NGU1MjkgMTAwNjQ0Ci0tLSBhL3QvbGliLWh0dHBkL2FwYWNoZS5jb25mCisrKyBiL3QvbGliLWh0dHBkL2FwYWNoZS5jb25mCkBAIC03Niw4ICs3NiwxMCBAQAogUGFzc0VudiBHSVRfVkFMR1JJTkRfT1BUSU9OUwogUGFzc0VudiBHTlVQR0hPTUUKIFBhc3NFbnYgQVNBTl9PUFRJT05TCitQYXNzRW52IExTQU5fT1BUSU9OUwogUGFzc0VudiBHSVRfVFJBQ0UKIFBhc3NFbnYgR0lUX0NPTkZJR19OT1NZU1RFTQorUGFzc0VudiBHSVRfVEVTVF9TSURFQkFORF9BTEwKIAogU2V0RW52SWYgR2l0LVByb3RvY29sICIuKiIgR0lUX1BST1RPQ09MPSQwCiAKQEAgLTExMSwyNCArMTEzLDI5IEBACiAJU2V0RW52IEdJVF9FWEVDX1BBVEggJHtHSVRfRVhFQ19QQVRIfQogCVNldEVudiBHSVRfSFRUUF9FWFBPUlRfQUxMCiA8L0xvY2F0aW9uTWF0Y2g+Ci08TG9jYXRpb25NYXRjaCAvb25lX3RpbWVfc2VkLz4KKzxMb2NhdGlvbk1hdGNoIC9vbmVfdGltZV9wZXJsLz4KIAlTZXRFbnYgR0lUX0VYRUNfUEFUSCAke0dJVF9FWEVDX1BBVEh9CiAJU2V0RW52IEdJVF9IVFRQX0VYUE9SVF9BTEwKIDwvTG9jYXRpb25NYXRjaD4KK1NjcmlwdEFsaWFzTWF0Y2ggL2Vycm9yX2dpdF91cGxvYWRfcGFjay8oLiopL2dpdC11cGxvYWQtcGFjayBlcnJvci5zaC8KIFNjcmlwdEFsaWFzTWF0Y2ggL3NtYXJ0XypbXi9dKi8oLiopICR7R0lUX0VYRUNfUEFUSH0vZ2l0LWh0dHAtYmFja2VuZC8kMQogU2NyaXB0QWxpYXMgL2Jyb2tlbl9zbWFydC8gYnJva2VuLXNtYXJ0LWh0dHAuc2gvCitTY3JpcHRBbGlhcyAvZXJyb3Jfc21hcnQvIGVycm9yLXNtYXJ0LWh0dHAuc2gvCiBTY3JpcHRBbGlhcyAvZXJyb3IvIGVycm9yLnNoLwotU2NyaXB0QWxpYXNNYXRjaCAvb25lX3RpbWVfc2VkLyguKikgYXBwbHktb25lLXRpbWUtc2VkLnNoLyQxCitTY3JpcHRBbGlhc01hdGNoIC9vbmVfdGltZV9wZXJsLyguKikgYXBwbHktb25lLXRpbWUtcGVybC5zaC8kMQogPERpcmVjdG9yeSAke0dJVF9FWEVDX1BBVEh9PgogCU9wdGlvbnMgRm9sbG93U3ltbGlua3MKIDwvRGlyZWN0b3J5PgogPEZpbGVzIGJyb2tlbi1zbWFydC1odHRwLnNoPgogCU9wdGlvbnMgRXhlY0NHSQogPC9GaWxlcz4KKzxGaWxlcyBlcnJvci1zbWFydC1odHRwLnNoPgorCU9wdGlvbnMgRXhlY0NHSQorPC9GaWxlcz4KIDxGaWxlcyBlcnJvci5zaD4KICAgT3B0aW9ucyBFeGVjQ0dJCiA8L0ZpbGVzPgotPEZpbGVzIGFwcGx5LW9uZS10aW1lLXNlZC5zaD4KKzxGaWxlcyBhcHBseS1vbmUtdGltZS1wZXJsLnNoPgogCU9wdGlvbnMgRXhlY0NHSQogPC9GaWxlcz4KIDxGaWxlcyAke0dJVF9FWEVDX1BBVEh9L2dpdC1odHRwLWJhY2tlbmQ+CmRpZmYgLS1naXQgYS90L2xpYi1odHRwZC9hcHBseS1vbmUtdGltZS1wZXJsLnNoIGIvdC9saWItaHR0cGQvYXBwbHktb25lLXRpbWUtcGVybC5zaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wOWEwYWJkCi0tLSAvZGV2L251bGwKKysrIGIvdC9saWItaHR0cGQvYXBwbHktb25lLXRpbWUtcGVybC5zaApAQCAtMCwwICsxLDI3IEBACisjIS9iaW4vc2gKKworIyBJZiAib25lLXRpbWUtcGVybCIgZXhpc3RzIGluICRIVFRQRF9ST09UX1BBVEgsIHJ1biBwZXJsIG9uIHRoZSBIVFRQIHJlc3BvbnNlLAorIyB1c2luZyB0aGUgY29udGVudHMgb2YgIm9uZS10aW1lLXBlcmwiIGFzIHRoZSBwZXJsIGNvbW1hbmQgdG8gYmUgcnVuLiBJZiB0aGUKKyMgcmVzcG9uc2Ugd2FzIG1vZGlmaWVkIGFzIGEgcmVzdWx0LCBkZWxldGUgIm9uZS10aW1lLXBlcmwiIHNvIHRoYXQgc3Vic2VxdWVudAorIyBIVFRQIHJlc3BvbnNlcyBhcmUgbm8gbG9uZ2VyIG1vZGlmaWVkLgorIworIyBUaGlzIGNhbiBiZSB1c2VkIHRvIHNpbXVsYXRlIHRoZSBlZmZlY3RzIG9mIHRoZSByZXBvc2l0b3J5IGNoYW5naW5nIGluCisjIGJldHdlZW4gSFRUUCByZXF1ZXN0LXJlc3BvbnNlIHBhaXJzLgoraWYgdGVzdCAtZiBvbmUtdGltZS1wZXJsCit0aGVuCisJTENfQUxMPUMKKwlleHBvcnQgTENfQUxMCisKKwkiJEdJVF9FWEVDX1BBVEgvZ2l0LWh0dHAtYmFja2VuZCIgPm91dAorCXBlcmwgLXBlICIkKGNhdCBvbmUtdGltZS1wZXJsKSIgb3V0ID5vdXRfbW9kaWZpZWQKKworCWlmIGNtcCAtcyBvdXQgb3V0X21vZGlmaWVkCisJdGhlbgorCQljYXQgb3V0CisJZWxzZQorCQljYXQgb3V0X21vZGlmaWVkCisJCXJtIG9uZS10aW1lLXBlcmwKKwlmaQorZWxzZQorCSIkR0lUX0VYRUNfUEFUSC9naXQtaHR0cC1iYWNrZW5kIgorZmkKZGlmZiAtLWdpdCBhL3QvbGliLWh0dHBkL2FwcGx5LW9uZS10aW1lLXNlZC5zaCBiL3QvbGliLWh0dHBkL2FwcGx5LW9uZS10aW1lLXNlZC5zaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZmNlZjcyOC4uMDAwMDAwMAotLS0gYS90L2xpYi1odHRwZC9hcHBseS1vbmUtdGltZS1zZWQuc2gKKysrIC9kZXYvbnVsbApAQCAtMSwyMiArMCwwIEBACi0jIS9iaW4vc2gKLQotIyBJZiAib25lLXRpbWUtc2VkIiBleGlzdHMgaW4gJEhUVFBEX1JPT1RfUEFUSCwgcnVuIHNlZCBvbiB0aGUgSFRUUCByZXNwb25zZSwKLSMgdXNpbmcgdGhlIGNvbnRlbnRzIG9mICJvbmUtdGltZS1zZWQiIGFzIHRoZSBzZWQgY29tbWFuZCB0byBiZSBydW4uIElmIHRoZQotIyByZXNwb25zZSB3YXMgbW9kaWZpZWQgYXMgYSByZXN1bHQsIGRlbGV0ZSAib25lLXRpbWUtc2VkIiBzbyB0aGF0IHN1YnNlcXVlbnQKLSMgSFRUUCByZXNwb25zZXMgYXJlIG5vIGxvbmdlciBtb2RpZmllZC4KLSMKLSMgVGhpcyBjYW4gYmUgdXNlZCB0byBzaW11bGF0ZSB0aGUgZWZmZWN0cyBvZiB0aGUgcmVwb3NpdG9yeSBjaGFuZ2luZyBpbgotIyBiZXR3ZWVuIEhUVFAgcmVxdWVzdC1yZXNwb25zZSBwYWlycy4KLWlmIFsgLWUgb25lLXRpbWUtc2VkIF07IHRoZW4KLQkiJEdJVF9FWEVDX1BBVEgvZ2l0LWh0dHAtYmFja2VuZCIgPm91dAotCXNlZCAiJChjYXQgb25lLXRpbWUtc2VkKSIgPG91dCA+b3V0X21vZGlmaWVkCi0KLQlpZiBkaWZmIG91dCBvdXRfbW9kaWZpZWQgPi9kZXYvbnVsbDsgdGhlbgotCQljYXQgb3V0Ci0JZWxzZQotCQljYXQgb3V0X21vZGlmaWVkCi0JCXJtIG9uZS10aW1lLXNlZAotCWZpCi1lbHNlCi0JIiRHSVRfRVhFQ19QQVRIL2dpdC1odHRwLWJhY2tlbmQiCi1maQpkaWZmIC0tZ2l0IGEvdC9saWItaHR0cGQvZXJyb3Itc21hcnQtaHR0cC5zaCBiL3QvbGliLWh0dHBkL2Vycm9yLXNtYXJ0LWh0dHAuc2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTY1ZDQ0NwotLS0gL2Rldi9udWxsCisrKyBiL3QvbGliLWh0dHBkL2Vycm9yLXNtYXJ0LWh0dHAuc2gKQEAgLTAsMCArMSwzIEBACitlY2hvICJDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL3gtZ2l0LXVwbG9hZC1wYWNrLWFkdmVydGlzZW1lbnQiCitlY2hvCitwcmludGYgIiVzIiAiMDAxOUVSUiBzZXJ2ZXItc2lkZSBlcnJvciIKZGlmZiAtLWdpdCBhL3QvbGliLWxvZy1ncmFwaC5zaCBiL3QvbGliLWxvZy1ncmFwaC5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi4xMTg0Y2NlCi0tLSAvZGV2L251bGwKKysrIGIvdC9saWItbG9nLWdyYXBoLnNoCkBAIC0wLDAgKzEsMjggQEAKKyMgSGVscHMgc2hhcmVkIGJ5IHRoZSB0ZXN0IHNjcmlwdHMgZm9yIGNvbXBhcmluZyBsb2cgZ3JhcGhzLgorCitzYW5pdGl6ZV9sb2dfb3V0cHV0ICgpIHsKKwlzZWQgLWUgJ3MvICokLy8nIFwKKwkgICAgLWUgJ3MvY29tbWl0IFswLTlhLWZdKiQvY29tbWl0IENPTU1JVF9PQkpFQ1RfTkFNRS8nIFwKKwkgICAgLWUgJ3MvTWVyZ2U6IFsgMC05YS1mXSokL01lcmdlOiBNRVJHRV9QQVJFTlRTLycgXAorCSAgICAtZSAncy9NZXJnZSB0YWcuKi9NZXJnZSBIRUFEUyBERVNDUklQVElPTi8nIFwKKwkgICAgLWUgJ3MvTWVyZ2UgY29tbWl0LiovTWVyZ2UgSEVBRFMgREVTQ1JJUFRJT04vJyBcCisJICAgIC1lICdzL2luZGV4IFswLTlhLWZdKlwuXC5bMC05YS1mXSovaW5kZXggQkVGT1JFLi5BRlRFUi8nCit9CisKK2xpYl90ZXN0X2NtcF9ncmFwaCAoKSB7CisJZ2l0IGxvZyAtLWdyYXBoICIkQCIgPm91dHB1dCAmJgorCXNlZCAncy8gKiQvLycgPm91dHB1dC5zYW5pdGl6ZWQgPG91dHB1dCAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3Qgb3V0cHV0LnNhbml0aXplZAorfQorCitsaWJfdGVzdF9jbXBfc2hvcnRfZ3JhcGggKCkgeworCWdpdCBsb2cgLS1ncmFwaCAtLXByZXR0eT1zaG9ydCAiJEAiID5vdXRwdXQgJiYKKwlzYW5pdGl6ZV9sb2dfb3V0cHV0ID5vdXRwdXQuc2FuaXRpemVkIDxvdXRwdXQgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IG91dHB1dC5zYW5pdGl6ZWQKK30KKworbGliX3Rlc3RfY21wX2NvbG9yZWRfZ3JhcGggKCkgeworCWdpdCBsb2cgLS1ncmFwaCAtLWNvbG9yPWFsd2F5cyAiJEAiID5vdXRwdXQuY29sb3JzLnJhdyAmJgorCXRlc3RfZGVjb2RlX2NvbG9yIDxvdXRwdXQuY29sb3JzLnJhdyB8IHNlZCAicy8gKlwkLy8iID5vdXRwdXQuY29sb3JzICYmCisJdGVzdF9jbXAgZXhwZWN0LmNvbG9ycyBvdXRwdXQuY29sb3JzCit9CmRpZmYgLS1naXQgYS90L2xpYi1wYWNrLnNoIGIvdC9saWItcGFjay5zaAppbmRleCBjNGQ5MDdhLi5mMzQ2MzE3IDEwMDY0NAotLS0gYS90L2xpYi1wYWNrLnNoCisrKyBiL3QvbGliLXBhY2suc2gKQEAgLTM1LDkgKzM1LDExIEBACiAjIGhhdmUgaGFyZGNvZGVkIHNvbWUgd2VsbC1rbm93biBvYmplY3RzLiBTZWUgdGhlIGNhc2Ugc3RhdGVtZW50cyBiZWxvdyBmb3IgdGhlCiAjIGNvbXBsZXRlIGxpc3QuCiBwYWNrX29iaiAoKSB7CisJdGVzdF9vaWRfaW5pdAorCiAJY2FzZSAiJDEiIGluCiAJIyBlbXB0eSBibG9iCi0JZTY5ZGUyOWJiMmQxZDY0MzRiOGIyOWFlNzc1YWQ4YzJlNDhjNTM5MSkKKwkkRU1QVFlfQkxPQikKIAkJY2FzZSAiJDIiIGluCiAJCScnKQogCQkJcHJpbnRmICdcMDYwXDE3MFwyMzRcMDAzXDBcMFwwXDBcMScKQEAgLTQ3LDcgKzQ5LDcgQEAKIAkJOzsKIAogCSMgYmxvYiBjb250YWluaW5nICJcN1w3NiIKLQllNjhmZTgxMjliNTQ2YjEwMWFlZTk1MTBjNTMyOGU3ZjIxY2ExZDE4KQorCSQodGVzdF9vaWQgcGFja2xpYl83Xzc2KSkKIAkJY2FzZSAiJDIiIGluCiAJCScnKQogCQkJcHJpbnRmICdcMDYyXDE3MFwyMzRcMTQzXDI2N1wzXDBcMFwxMTZcMFwxMDYnCkBAIC01OSwxMSArNjEsMTggQEAKIAkJCXByaW50ZiAnXDIzNFwxNDNcMTQyXDE0MlwxNDJcMjY3XDAwM1wwXDBcMTUxXDBcMTE0JwogCQkJcmV0dXJuCiAJCQk7OworCQkzN2M4ZTJjMTViYjIyYjkxMmU1OWI0M2ZkNTFhNGY3ZTk0NjVlZDBiNTA4NGM1YTE0MTFkOTkxY2JlNjMwNjgzKQorCQkJcHJpbnRmICdcMTY1XDY3XDMxMFwzNDJcMzAxXDEzM1wyNjJcNTNcMjIxXDU2XDEzMScgJiYKKwkJCXByaW50ZiAnXDI2NFw3N1wzMjVcMzJcMTE3XDE3NlwyMjRcMTQ1XDM1NVwxM1wxMjAnICYmCisJCQlwcmludGYgJ1wyMDRcMzA1XDI0MVwxMDFcMzVcMjMxXDM0XDI3NlwxNDNcNlwyMDNcMTcwJyAmJgorCQkJcHJpbnRmICdcMjM0XDE0M1wxNDJcMTQyXDE0MlwyNjdcMDAzXDBcMFwxNTFcMFwxMTQnCisJCQlyZXR1cm4KKwkJCTs7CiAJCWVzYWMKIAkJOzsKIAogCSMgYmxvYiBjb250YWluaW5nICJcN1wwIgotCTAxZDc3MTM2NjZmNGRlODIyNzc2Yzc2MjJjMTBmMWIwN2RlMjgwZGMpCisJJCh0ZXN0X29pZCBwYWNrbGliXzdfMCkpCiAJCWNhc2UgIiQyIiBpbgogCQknJykKIAkJCXByaW50ZiAnXDA2MlwxNzBcMjM0XDE0M1wxNDdcMFwwXDBcMjBcMFwxMCcKQEAgLTc1LDYgKzg0LDEzIEBACiAJCQlwcmludGYgJ1wxNDNcMTQyXDE0MlwxNDJcMTQ3XDBcMFwwXDUzXDBcMTYnCiAJCQlyZXR1cm4KIAkJCTs7CisJCTVkOGU2ZmM0MGYyZGFiMDBlNjk4M2E0ODUyM2ZlNTdlNjIxZjQ2NDM0Y2I1OGRiZDQ0MjJmYmEwMzM4MGQ4ODYpCisJCQlwcmludGYgJ1wxNjVcMTM1XDIxNlwxNTdcMzA0XDE3XDU1XDI1M1wwXDM0NlwyMzBcNzInICYmCisJCQlwcmludGYgJ1wxMTBcMTIyXDc3XDM0NVwxNzZcMTQyXDM3XDEwNlwxMDNcMTE0XDI2NScgJiYKKwkJCXByaW50ZiAnXDIxNVwyNzVcMTA0XDQyXDM3M1wyNDBcNjNcMjAwXDMzMFwyMDZcMTcwXDIzNCcgJiYKKwkJCXByaW50ZiAnXDE0M1wxNDJcMTQyXDE0MlwxNDdcMFwwXDBcNTNcMFwxNicKKwkJCXJldHVybgorCQkJOzsKIAkJZXNhYwogCQk7OwogCWVzYWMKQEAgLTg2LDcgKzEwMiw3IEBACiAJdGhlbgogCQllY2hvICIkMSIgfCBnaXQgcGFjay1vYmplY3RzIC0tc3Rkb3V0ID5wYWNrX29iai50bXAgJiYKIAkJc2l6ZT0kKHdjIC1jIDxwYWNrX29iai50bXApICYmCi0JCWRkIGlmPXBhY2tfb2JqLnRtcCBicz0xIGNvdW50PSQoKHNpemUgLSAyMCAtIDEyKSkgc2tpcD0xMiAmJgorCQlkZCBpZj1wYWNrX29iai50bXAgYnM9MSBjb3VudD0kKChzaXplIC0gJCh0ZXN0X29pZCByYXdzeikgLSAxMikpIHNraXA9MTIgJiYKIAkJcm0gLWYgcGFja19vYmoudG1wCiAJCXJldHVybgogCWZpCkBAIC05Nyw3ICsxMTMsOCBAQAogCiAjIENvbXB1dGUgYW5kIGFwcGVuZCBwYWNrIHRyYWlsZXIgdG8gIiQxIgogcGFja190cmFpbGVyICgpIHsKLQl0ZXN0LXRvb2wgc2hhMSAtYiA8IiQxIiA+dHJhaWxlci50bXAgJiYKKwl0ZXN0X29pZF9pbml0ICYmCisJdGVzdC10b29sICQodGVzdF9vaWQgYWxnbykgLWIgPCIkMSIgPnRyYWlsZXIudG1wICYmCiAJY2F0IHRyYWlsZXIudG1wID4+IiQxIiAmJgogCXJtIC1mIHRyYWlsZXIudG1wCiB9CkBAIC0xMDgsMyArMTI1LDExIEBACiBjbGVhcl9wYWNrcyAoKSB7CiAJcm0gLWYgLmdpdC9vYmplY3RzL3BhY2svKgogfQorCit0ZXN0X29pZF9jYWNoZSA8PC1FT0YKK3BhY2tsaWJfN18wIHNoYTE6MDFkNzcxMzY2NmY0ZGU4MjI3NzZjNzYyMmMxMGYxYjA3ZGUyODBkYworcGFja2xpYl83XzAgc2hhMjU2OjM3YzhlMmMxNWJiMjJiOTEyZTU5YjQzZmQ1MWE0ZjdlOTQ2NWVkMGI1MDg0YzVhMTQxMWQ5OTFjYmU2MzA2ODMKKworcGFja2xpYl83Xzc2IHNoYTE6ZTY4ZmU4MTI5YjU0NmIxMDFhZWU5NTEwYzUzMjhlN2YyMWNhMWQxOAorcGFja2xpYl83Xzc2IHNoYTI1Njo1ZDhlNmZjNDBmMmRhYjAwZTY5ODNhNDg1MjNmZTU3ZTYyMWY0NjQzNGNiNThkYmQ0NDIyZmJhMDMzODBkODg2CitFT0YKZGlmZiAtLWdpdCBhL3QvbGliLXBhdGNoLW1vZGUuc2ggYi90L2xpYi1wYXRjaC1tb2RlLnNoCmluZGV4IDA2YzNjOTEuLmNmZDc2YmYgMTAwNjQ0Ci0tLSBhL3QvbGliLXBhdGNoLW1vZGUuc2gKKysrIGIvdC9saWItcGF0Y2gtbW9kZS5zaApAQCAtMiwyOCArMiw0MCBAQAogCiAuIC4vdGVzdC1saWIuc2gKIAorIyBzZXRfc3RhdGUgPHBhdGg+IDx3b3JrdHJlZS1jb250ZW50PiA8aW5kZXgtY29udGVudD4KKyMKKyMgUHJlcGFyZSB0aGUgY29udGVudCBmb3IgcGF0aCBpbiB3b3JrdHJlZSBhbmQgdGhlIGluZGV4IGFzIHNwZWNpZmllZC4KIHNldF9zdGF0ZSAoKSB7CiAJZWNobyAiJDMiID4gIiQxIiAmJgogCWdpdCBhZGQgIiQxIiAmJgogCWVjaG8gIiQyIiA+ICIkMSIKIH0KIAorIyBzYXZlX3N0YXRlIDxwYXRoPgorIworIyBTYXZlIGluZGV4L3dvcmt0cmVlIGNvbnRlbnQgb2YgPHBhdGg+IGluIHRoZSBmaWxlcyBfd29ya3RyZWVfPHBhdGg+CisjIGFuZCBfaW5kZXhfPHBhdGg+CiBzYXZlX3N0YXRlICgpIHsKIAlub3NsYXNoPSIkKGVjaG8gIiQxIiB8IHRyIC8gXykiICYmCiAJY2F0ICIkMSIgPiBfd29ya3RyZWVfIiRub3NsYXNoIiAmJgogCWdpdCBzaG93IDoiJDEiID4gX2luZGV4XyIkbm9zbGFzaCIKIH0KIAorIyBzZXRfYW5kX3NhdmVfc3RhdGUgPHBhdGg+IDx3b3JrdHJlZS1jb250ZW50PiA8aW5kZXgtY29udGVudD4KIHNldF9hbmRfc2F2ZV9zdGF0ZSAoKSB7CiAJc2V0X3N0YXRlICIkQCIgJiYKIAlzYXZlX3N0YXRlICIkMSIKIH0KIAorIyB2ZXJpZnlfc3RhdGUgPHBhdGg+IDxleHBlY3RlZC13b3JrdHJlZS1jb250ZW50PiA8ZXhwZWN0ZWQtaW5kZXgtY29udGVudD4KIHZlcmlmeV9zdGF0ZSAoKSB7CiAJdGVzdCAiJChjYXQgIiQxIikiID0gIiQyIiAmJgogCXRlc3QgIiQoZ2l0IHNob3cgOiIkMSIpIiA9ICIkMyIKIH0KIAorIyB2ZXJpZnlfc2F2ZWRfc3RhdGUgPHBhdGg+CisjCisjIENhbGwgdmVyaWZ5X3N0YXRlIHdpdGggZXhwZWN0ZWQgY29udGVudHMgZnJvbSB0aGUgbGFzdCBzYXZlX3N0YXRlCiB2ZXJpZnlfc2F2ZWRfc3RhdGUgKCkgewogCW5vc2xhc2g9IiQoZWNobyAiJDEiIHwgdHIgLyBfKSIgJiYKIAl2ZXJpZnlfc3RhdGUgIiQxIiAiJChjYXQgX3dvcmt0cmVlXyIkbm9zbGFzaCIpIiAiJChjYXQgX2luZGV4XyIkbm9zbGFzaCIpIgpkaWZmIC0tZ2l0IGEvdC9saWItcmViYXNlLnNoIGIvdC9saWItcmViYXNlLnNoCmluZGV4IDdlYTMwZTUuLmI3MmMwNTEgMTAwNjQ0Ci0tLSBhL3QvbGliLXJlYmFzZS5zaAorKysgYi90L2xpYi1yZWJhc2Uuc2gKQEAgLTQ0LDEwICs0NCwxMCBAQAogCXJtIC1mICIkMSIKIAllY2hvICdyZWJhc2UgLWkgc2NyaXB0IGJlZm9yZSBlZGl0aW5nOicKIAljYXQgIiQxIi50bXAKLQlhY3Rpb249cGljaworCWFjdGlvbj1cJgogCWZvciBsaW5lIGluICRGQUtFX0xJTkVTOyBkbwogCQljYXNlICRsaW5lIGluCi0JCXBpY2t8cHxzcXVhc2h8c3xmaXh1cHxmfGVkaXR8ZXxyZXdvcmR8cnxkcm9wfGQpCisJCXBpY2t8cHxzcXVhc2h8c3xmaXh1cHxmfGVkaXR8ZXxyZXdvcmR8cnxkcm9wfGR8bGFiZWx8bHxyZXNldHxyfG1lcmdlfG0pCiAJCQlhY3Rpb249IiRsaW5lIjs7CiAJCWV4ZWNfKnx4Xyp8YnJlYWt8YikKIAkJCWVjaG8gIiRsaW5lIiB8IHNlZCAncy9fLyAvZycgPj4gIiQxIjs7CkBAIC01OCwxMSArNTgsMTIgQEAKIAkJYmFkKQogCQkJYWN0aW9uPSJiYWRjbWQiOzsKIAkJZmFrZXNoYSkKKwkJCXRlc3QgXCYgIT0gIiRhY3Rpb24iIHx8IGFjdGlvbj1waWNrCiAJCQllY2hvICIkYWN0aW9uIFhYWFhYWFggRmFsc2UgY29tbWl0IiA+PiAiJDEiCiAJCQlhY3Rpb249cGljazs7CiAJCSopCi0JCQlzZWQgLW4gIiR7bGluZX1zL15waWNrLyRhY3Rpb24vcCIgPCAiJDEiLnRtcCA+PiAiJDEiCi0JCQlhY3Rpb249cGljazs7CisJCQlzZWQgLW4gIiR7bGluZX1zL15bYS16XVthLXpdKi8kYWN0aW9uL3AiIDwgIiQxIi50bXAgPj4gIiQxIgorCQkJYWN0aW9uPVwmOzsKIAkJZXNhYwogCWRvbmUKIAllY2hvICdyZWJhc2UgLWkgc2NyaXB0IGFmdGVyIGVkaXRpbmc6JwpAQCAtMTE4LDMgKzExOSwzMSBAQAogCWdpdCBjb21taXQgLS1hbGxvdy1lbXB0eSAtbSAiJDEiICYmCiAJZ2l0IHRhZyAiJDEiCiB9CisKKyMgQ2FsbCB0aGlzIChpbnNpZGUgdGVzdF9leHBlY3Rfc3VjY2VzcykgYXQgdGhlIGVuZCBvZiBhIHRlc3QgZmlsZSB0bworIyBjaGVjayB0aGF0IG5vIHRlc3RzIGhhdmUgY2hhbmdlZCBlZGl0b3IgcmVsYXRlZCBlbnZpcm9ubWVudAorIyB2YXJpYWJsZXMgb3IgY29uZmlnIHNldHRpbmdzCit0ZXN0X2VkaXRvcl91bmNoYW5nZWQgKCkgeworCSMgV2UncmUgb25seSBpbnRlcmVzdGVkIGluIGV4cG9ydGVkIHZhcmlhYmxlcyBoZW5jZSAnc2ggLWMnCisJc2ggLWMgJ2NhdCA+YWN0dWFsIDw8LUVPRgorCUVESVRPUj0kRURJVE9SCisJRkFLRV9DT01NSVRfQU1FTkQ9JEZBS0VfQ09NTUlUX0FNRU5ECisJRkFLRV9DT01NSVRfTUVTU0FHRT0kRkFLRV9DT01NSVRfTUVTU0FHRQorCUZBS0VfTElORVM9JEZBS0VfTElORVMKKwlHSVRfRURJVE9SPSRHSVRfRURJVE9SCisJR0lUX1NFUVVFTkNFX0VESVRPUj0kR0lUX1NFUVVFTkNFX0VESVRPUgorCWNvcmUuZWRpdG9yPSQoZ2l0IGNvbmZpZyBjb3JlLmVkaXRvcikKKwlzZXF1ZW5jZS5lZGl0b3I9JChnaXQgY29uZmlnIHNlcXVlbmNlLmVkaXRvcikKKwlFT0YnCisJY2F0ID5leHBlY3QgPDwtXEVPRgorCUVESVRPUj06CisJRkFLRV9DT01NSVRfQU1FTkQ9CisJRkFLRV9DT01NSVRfTUVTU0FHRT0KKwlGQUtFX0xJTkVTPQorCUdJVF9FRElUT1I9CisJR0lUX1NFUVVFTkNFX0VESVRPUj0KKwljb3JlLmVkaXRvcj0KKwlzZXF1ZW5jZS5lZGl0b3I9CisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorfQpkaWZmIC0tZ2l0IGEvdC9saWItc3VibW9kdWxlLXVwZGF0ZS5zaCBiL3QvbGliLXN1Ym1vZHVsZS11cGRhdGUuc2gKaW5kZXggMDE2MzkxNy4uMWRkMTdmYyAxMDA3NTUKLS0tIGEvdC9saWItc3VibW9kdWxlLXVwZGF0ZS5zaAorKysgYi90L2xpYi1zdWJtb2R1bGUtdXBkYXRlLnNoCkBAIC0xMzksNyArMTM5LDcgQEAKIAkJZ2l0IHJldmVydCBIRUFEICYmCiAKIAkJZ2l0IGNoZWNrb3V0IC1iIGludmFsaWRfc3ViMSBhZGRfc3ViMSAmJgotCQlnaXQgdXBkYXRlLWluZGV4IC0tY2FjaGVpbmZvIDE2MDAwMCAwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5IHN1YjEgJiYKKwkJZ2l0IHVwZGF0ZS1pbmRleCAtLWNhY2hlaW5mbyAxNjAwMDAgJCh0ZXN0X29pZCBudW1lcmljKSBzdWIxICYmCiAJCWdpdCBjb21taXQgLW0gIkludmFsaWQgc3ViMSBjb21taXQiICYmCiAJCWdpdCBjaGVja291dCAtYiB2YWxpZF9zdWIxICYmCiAJCWdpdCByZXZlcnQgSEVBRCAmJgpAQCAtMTk2LDYgKzE5Niw3IEBACiAjIHRoZSBzdWJtb2R1bGUgcmVwbyBpZiBpdCBkb2Vzbid0IGV4aXN0IGFuZCBjb25maWd1cmVzIHRoZSBtb3N0IHByb2JsZW1hdGljCiAjIHNldHRpbmdzIGZvciBkaWZmLmlnbm9yZVN1Ym1vZHVsZXMuCiBwcm9sb2cgKCkgeworCXRlc3Rfb2lkX2luaXQgJiYKIAkodGVzdCAtZCBzdWJtb2R1bGVfdXBkYXRlX3JlcG8gfHwgY3JlYXRlX2xpYl9zdWJtb2R1bGVfcmVwbykgJiYKIAl0ZXN0X2NvbmZpZ19nbG9iYWwgZGlmZi5pZ25vcmVTdWJtb2R1bGVzIGFsbCAmJgogCXRlc3RfY29uZmlnIGRpZmYuaWdub3JlU3VibW9kdWxlcyBhbGwKQEAgLTIzNSw3ICsyMzYsNyBAQAogCXRoZW4KIAkJbWtkaXIgLXAgc3VibW9kdWxlX3VwZGF0ZS8uZ2l0L21vZHVsZXMvc3ViMS9tb2R1bGVzICYmCiAJCWNwIC1yIHN1Ym1vZHVsZV91cGRhdGVfcmVwby8uZ2l0L21vZHVsZXMvc3ViMS9tb2R1bGVzL3N1YjIgc3VibW9kdWxlX3VwZGF0ZS8uZ2l0L21vZHVsZXMvc3ViMS9tb2R1bGVzL3N1YjIKLQkJR0lUX1dPUktfVFJFRT0uIGdpdCAtQyBzdWJtb2R1bGVfdXBkYXRlLy5naXQvbW9kdWxlcy9zdWIxL21vZHVsZXMvc3ViMiBjb25maWcgLS11bnNldCBjb3JlLndvcmt0cmVlCisJCSMgY29yZS53b3JrdHJlZSBpcyB1bnNldCBmb3Igc3ViMiBhcyBpdCBpcyBub3QgY2hlY2tlZCBvdXQKIAlmaSAmJgogCSMgaW5kaWNhdGUgd2UgYXJlIGludGVyZXN0ZWQgaW4gdGhlIHN1Ym1vZHVsZToKIAlnaXQgLUMgc3VibW9kdWxlX3VwZGF0ZSBjb25maWcgc3VibW9kdWxlLnN1YjEudXJsICJib2d1cyIgJiYKQEAgLTcwOSw3ICs3MTAsOCBAQAogCQkJZ2l0IGJyYW5jaCAtdCByZW1vdmVfc3ViMSBvcmlnaW4vcmVtb3ZlX3N1YjEgJiYKIAkJCSRjb21tYW5kIHJlbW92ZV9zdWIxICYmCiAJCQl0ZXN0X3N1cGVycHJvamVjdF9jb250ZW50IG9yaWdpbi9yZW1vdmVfc3ViMSAmJgotCQkJISB0ZXN0IC1lIHN1YjEKKwkJCSEgdGVzdCAtZSBzdWIxICYmCisJCQl0ZXN0X211c3RfZmFpbCBnaXQgY29uZmlnIC1mIC5naXQvbW9kdWxlcy9zdWIxL2NvbmZpZyBjb3JlLndvcmt0cmVlCiAJCSkKIAknCiAJIyAuLi4gYWJzb3JiaW5nIGEgLmdpdCBkaXJlY3RvcnkgYWxvbmcgdGhlIHdheS4KZGlmZiAtLWdpdCBhL3Qvb2lkLWluZm8vaGFzaC1pbmZvIGIvdC9vaWQtaW5mby9oYXNoLWluZm8KaW5kZXggY2NkYmZkZi4uZDA3MzZkZCAxMDA2NDQKLS0tIGEvdC9vaWQtaW5mby9oYXNoLWluZm8KKysrIGIvdC9vaWQtaW5mby9oYXNoLWluZm8KQEAgLTYsMyArNiwxMiBAQAogCiB6ZXJvIHNoYTE6MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAogemVybyBzaGEyNTY6MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAorCithbGdvIHNoYTE6c2hhMQorYWxnbyBzaGEyNTY6c2hhMjU2CisKK2VtcHR5X2Jsb2Igc2hhMTplNjlkZTI5YmIyZDFkNjQzNGI4YjI5YWU3NzVhZDhjMmU0OGM1MzkxCitlbXB0eV9ibG9iIHNoYTI1Njo0NzNhMGY0YzNiZThhOTM2ODFhMjY3ZTNiMWU5YTdkY2RhMTE4NTQzNmZlMTQxZjc3NDkxMjBhMzAzNzIxODEzCisKK2VtcHR5X3RyZWUgc2hhMTo0YjgyNWRjNjQyY2I2ZWI5YTA2MGU1NGJmOGQ2OTI4OGZiZWU0OTA0CitlbXB0eV90cmVlIHNoYTI1Njo2ZWYxOWI0MTIyNWM1MzY5ZjFjMTA0ZDQ1ZDhkODVlZmE5YjA1N2I1M2IxNGI0YjliOTM5ZGQ3NGRlY2M1MzIxCmRpZmYgLS1naXQgYS90L3BlcmYvUkVBRE1FIGIvdC9wZXJmL1JFQURNRQppbmRleCBiZTEyMDkwLi5jN2I3MGUyIDEwMDY0NAotLS0gYS90L3BlcmYvUkVBRE1FCisrKyBiL3QvcGVyZi9SRUFETUUKQEAgLTQ1LDcgKzQ1LDcgQEAKIAogICAgICQgLi9wMDAwMS1yZXYtbGlzdC5zaAogICAgIFsuLi5dCi0gICAgJCBHSVRfQlVJTERfRElSPS9wYXRoL3RvL290aGVyL2dpdCAuL3AwMDAxLXJldi1saXN0LnNoCisgICAgJCAuL3J1biAvcGF0aC90by9vdGhlci9naXQgLS0gLi9wMDAwMS1yZXYtbGlzdC5zaAogICAgIFsuLi5dCiAgICAgJCAuL2FnZ3JlZ2F0ZS5wZXJsIC4gL3BhdGgvdG8vb3RoZXIvZ2l0IC4vcDAwMDEtcmV2LWxpc3Quc2gKIApkaWZmIC0tZ2l0IGEvdC9wZXJmL2FnZ3JlZ2F0ZS5wZXJsIGIvdC9wZXJmL2FnZ3JlZ2F0ZS5wZXJsCmluZGV4IDQ5NDkwN2EuLjE0ZTRjZGEgMTAwNzU1Ci0tLSBhL3QvcGVyZi9hZ2dyZWdhdGUucGVybAorKysgYi90L3BlcmYvYWdncmVnYXRlLnBlcmwKQEAgLTMsOSArMyw4IEBACiB1c2UgbGliICcuLi8uLi9wZXJsL2J1aWxkL2xpYic7CiB1c2Ugc3RyaWN0OwogdXNlIHdhcm5pbmdzOwotdXNlIEpTT047CiB1c2UgR2V0b3B0OjpMb25nOwotdXNlIEdpdDsKK3VzZSBDd2QgcXcocmVhbHBhdGgpOwogCiBzdWIgZ2V0X3RpbWVzIHsKIAlteSAkbmFtZSA9IHNoaWZ0OwpAQCAtODUsNiArODQsMTEgQEAKIAlyZXR1cm4gJG91dDsKIH0KIAorc3ViIHNhbmVfYmFja3RpY2tzIHsKKwlvcGVuKG15ICRmaCwgJy18JywgQF8pOworCXJldHVybiA8JGZoPjsKK30KKwogbXkgKEBkaXJzLCAlZGlybmFtZXMsICVkaXJhYmJyZXZzLCAlcHJlZml4ZXMsIEB0ZXN0cywKICAgICAkY29kZXNwZWVkLCAkc29ydGJ5LCAkc3Vic2VjdGlvbiwgJHJlcG9uYW1lKTsKIApAQCAtOTksMTggKzEwMywyMiBAQAogd2hpbGUgKHNjYWxhciBAQVJHVikgewogCW15ICRhcmcgPSAkQVJHVlswXTsKIAlteSAkZGlyOworCW15ICRwcmVmaXggPSAnJzsKIAlsYXN0IGlmIC1mICRhcmcgb3IgJGFyZyBlcSAiLS0iOwogCWlmICghIC1kICRhcmcpIHsKLQkJbXkgJHJldiA9IEdpdDo6Y29tbWFuZF9vbmVsaW5lKHF3KHJldi1wYXJzZSAtLXZlcmlmeSksICRhcmcpOworCQlteSAkcmV2ID0gc2FuZV9iYWNrdGlja3MocXcoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSksICRhcmcpOworCQljaG9tcCAkcmV2OwogCQkkZGlyID0gImJ1aWxkLyIuJHJldjsKKwl9IGVsc2lmICgkYXJnIGVxICcuJykgeworCQkkZGlyID0gJy4nOwogCX0gZWxzZSB7Ci0JCSRhcmcgPX4gc3svKiR9e307Ci0JCSRkaXIgPSAkYXJnOwotCQkkZGlyYWJicmV2c3skZGlyfSA9ICRkaXI7CisJCSRkaXIgPSByZWFscGF0aCgkYXJnKTsKKwkJJGRpcm5hbWVzeyRkaXJ9ID0gJGRpcjsKKwkJJHByZWZpeCAuPSAnYmluZGlyJzsKIAl9CiAJcHVzaCBAZGlycywgJGRpcjsKLQkkZGlybmFtZXN7JGRpcn0gPSAkYXJnOwotCW15ICRwcmVmaXggPSAkZGlyOworCSRkaXJuYW1lc3skZGlyfSB8fD0gJGFyZzsKKwkkcHJlZml4IC49ICRkaXI7CiAJJHByZWZpeCA9fiB0ci9eYS16QS1aMC05L18vYzsKIAkkcHJlZml4ZXN7JGRpcn0gPSAkcHJlZml4IC4gJy4nOwogCXNoaWZ0IEBBUkdWOwpAQCAtMjE2LDEzICsyMjQsNyBAQAogCQlmb3IgbXkgJGkgKDAuLiQjZGlycykgewogCQkJbXkgJGQgPSAkZGlyc1skaV07CiAJCQlteSAkYmFzZSA9ICIkcmVzdWx0c2Rpci8kcHJlZml4ZXN7JGR9JHQiOwotCQkJJHRpbWVzeyRwcmVmaXhlc3skZH0uJHR9ID0gW107Ci0JCQlmb3JlYWNoIG15ICR0eXBlIChxdyh0aW1lcyBzaXplKSkgewotCQkJCWlmICgtZSAiJGJhc2UuJHR5cGUiKSB7Ci0JCQkJCSR0aW1lc3skcHJlZml4ZXN7JGR9LiR0fSA9IFtnZXRfdGltZXMoIiRiYXNlLiR0eXBlIildOwotCQkJCQlsYXN0OwotCQkJCX0KLQkJCX0KKwkJCSR0aW1lc3skcHJlZml4ZXN7JGR9LiR0fSA9IFtnZXRfdGltZXMoIiRiYXNlLnJlc3VsdCIpXTsKIAkJCW15ICgkciwkdSwkcykgPSBAeyR0aW1lc3skcHJlZml4ZXN7JGR9LiR0fX07CiAJCQlteSAkdyA9IGxlbmd0aCBmb3JtYXRfdGltZXMoJHIsJHUsJHMsJGZpcnN0cik7CiAJCQkkY29sd2lkdGhbJGldID0gJHcgaWYgJHcgPiAkY29sd2lkdGhbJGldOwpAQCAtMjY0LDcgKzI2Niw3IEBACiAJCW15ICgkcHJldnIsICRwcmV2dSwgJHByZXZzLCAkcHJldnJldik7CiAJCWZvciBteSAkaSAoMC4uJCNkaXJzKSB7CiAJCQlteSAkZCA9ICRkaXJzWyRpXTsKLQkJCW15ICgkciwgJHUsICRzKSA9IGdldF90aW1lcygiJHJlc3VsdHNkaXIvJHByZWZpeGVzeyRkfSR0LnRpbWVzIik7CisJCQlteSAoJHIsICR1LCAkcykgPSBnZXRfdGltZXMoIiRyZXN1bHRzZGlyLyRwcmVmaXhlc3skZH0kdC5yZXN1bHQiKTsKIAkJCWlmICgkaSA+IDAgYW5kIGRlZmluZWQgJHIgYW5kIGRlZmluZWQgJHByZXZyIGFuZCAkcHJldnIgPiAwKSB7CiAJCQkJbXkgJHBlcmNlbnQgPSAxMDAuMCAqICgkciAtICRwcmV2cikgLyAkcHJldnI7CiAJCQkJcHVzaCBAZXZvbHV0aW9ucywgeyAicGVyY2VudCIgID0+ICRwZXJjZW50LApAQCAtMzEyLDkgKzMxNCw2IEBACiAJCSRlbnZpcm9ubWVudCA9ICRyZXBvbmFtZTsKIAl9IGVsc2lmIChleGlzdHMgJEVOVntHSVRfUEVSRl9SRVBPX05BTUV9IGFuZCAkRU5We0dJVF9QRVJGX1JFUE9fTkFNRX0gbmUgIiIpIHsKIAkJJGVudmlyb25tZW50ID0gJEVOVntHSVRfUEVSRl9SRVBPX05BTUV9OwotCX0gZWxzaWYgKGV4aXN0cyAkRU5We0dJVF9URVNUX0lOU1RBTExFRH0gYW5kICRFTlZ7R0lUX1RFU1RfSU5TVEFMTEVEfSBuZSAiIikgewotCQkkZW52aXJvbm1lbnQgPSAkRU5We0dJVF9URVNUX0lOU1RBTExFRH07Ci0JCSRlbnZpcm9ubWVudCA9fiBzfC9iaW4td3JhcHBlcnMkfHw7CiAJfSBlbHNlIHsKIAkJJGVudmlyb25tZW50ID0gYHVuYW1lIC1yYDsKIAkJY2hvbXAgJGVudmlyb25tZW50OwpAQCAtMzI3LDcgKzMyNiw3IEBACiAJCQlteSAkY29tbWl0aWQgPSAkcHJlZml4ZXN7JGR9OwogCQkJJGNvbW1pdGlkID1+IHMvXmJ1aWxkXy8vOwogCQkJJGNvbW1pdGlkID1+IHMvXC4kLy87Ci0JCQlteSAoJHJlc3VsdF92YWx1ZSwgJHUsICRzKSA9IGdldF90aW1lcygiJHJlc3VsdHNkaXIvJHByZWZpeGVzeyRkfSR0LnRpbWVzIik7CisJCQlteSAoJHJlc3VsdF92YWx1ZSwgJHUsICRzKSA9IGdldF90aW1lcygiJHJlc3VsdHNkaXIvJHByZWZpeGVzeyRkfSR0LnJlc3VsdCIpOwogCiAJCQlteSAldmFscyA9ICgKIAkJCQkiY29tbWl0aWQiID0+ICRjb21taXRpZCwKQEAgLTM0Miw3ICszNDEsOCBAQAogCQl9CiAJfQogCi0JcHJpbnQgdG9fanNvbihcQGRhdGEsIHt1dGY4ID0+IDEsIHByZXR0eSA9PiAxLCBjYW5vbmljYWwgPT4gMX0pLCAiXG4iOworCXJlcXVpcmUgSlNPTjsKKwlwcmludCBKU09OOjp0b19qc29uKFxAZGF0YSwge3V0ZjggPT4gMSwgcHJldHR5ID0+IDEsIGNhbm9uaWNhbCA9PiAxfSksICJcbiI7CiB9CiAKIGJpbm1vZGUgU1RET1VULCAiOnV0ZjgiIG9yIGRpZSAiUEFOSUMgb24gYmlubW9kZTogJCEiOwpkaWZmIC0tZ2l0IGEvdC9wZXJmL2Jpc2VjdF9yZWdyZXNzaW9uIGIvdC9wZXJmL2Jpc2VjdF9yZWdyZXNzaW9uCmluZGV4IGE5NGQ5OTUuLmNlNDdlMTYgMTAwNzU1Ci0tLSBhL3QvcGVyZi9iaXNlY3RfcmVncmVzc2lvbgorKysgYi90L3BlcmYvYmlzZWN0X3JlZ3Jlc3Npb24KQEAgLTUxLDcgKzUxLDcgQEAKIG5ld3RpbWU9JChlY2hvICIkbmV3dGltZSIgfCBzZWQgLWUgJ3MvXlwoWzAtOV1cK1wuWzAtOV1cK1wpLiokL1wxLycpCiAKIHRlc3QgJChlY2hvICIkbmV3dGltZSIgIiRvbGR0aW1lIiB8IGF3ayAneyBwcmludCAoJDEgPiAkMikgfScpID0gMSB8fAotCWRpZSAiTmV3IHRpbWUgJyRuZXd0aW1lJyBzaG91ZCBiZSBncmVhdGVyIHRoYW4gb2xkIHRpbWUgJyRvbGR0aW1lJyIKKwlkaWUgIk5ldyB0aW1lICckbmV3dGltZScgc2hvdWxkIGJlIGdyZWF0ZXIgdGhhbiBvbGQgdGltZSAnJG9sZHRpbWUnIgogCiB0bXBkaXI9JChta3RlbXAgLWQgLXQgYmlzZWN0X3JlZ3Jlc3Npb25fWFhYWFhYKSB8fCBkaWUgIkZhaWxlZCB0byBjcmVhdGUgdGVtcCBkaXJlY3RvcnkiCiBlY2hvICIkb2xkdGltZSIgPiIkdG1wZGlyL29sZHRpbWUiIHx8IGRpZSAiRmFpbGVkIHRvIHdyaXRlIHRvICckdG1wZGlyL29sZHRpbWUnIgpkaWZmIC0tZ2l0IGEvdC9wZXJmL3AwMDAxLXJldi1saXN0LnNoIGIvdC9wZXJmL3AwMDAxLXJldi1saXN0LnNoCmluZGV4IGViZjE3MjQuLjMwNDJhODUgMTAwNzU1Ci0tLSBhL3QvcGVyZi9wMDAwMS1yZXYtbGlzdC5zaAorKysgYi90L3BlcmYvcDAwMDEtcmV2LWxpc3Quc2gKQEAgLTE0LDYgKzE0LDI0IEBACiAJZ2l0IHJldi1saXN0IC0tYWxsIC0tb2JqZWN0cyA+L2Rldi9udWxsCiAnCiAKK3Rlc3RfcGVyZiAncmV2LWxpc3QgLS1wYXJlbnRzJyAnCisJZ2l0IHJldi1saXN0IC0tcGFyZW50cyBIRUFEID4vZGV2L251bGwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY3JlYXRlIGR1bW15IGZpbGUnICcKKwllY2hvIHVubGlrZWx5LXRvLWFscmVhZHktYmUtdGhlcmUgPmR1bW15ICYmCisJZ2l0IGFkZCBkdW1teSAmJgorCWdpdCBjb21taXQgLW0gZHVtbXkKKycKKwordGVzdF9wZXJmICdyZXYtbGlzdCAtLSBkdW1teScgJworCWdpdCByZXYtbGlzdCBIRUFEIC0tIGR1bW15CisnCisKK3Rlc3RfcGVyZiAncmV2LWxpc3QgLS1wYXJlbnRzIC0tIGR1bW15JyAnCisJZ2l0IHJldi1saXN0IC0tcGFyZW50cyBIRUFEIC0tIGR1bW15CisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NyZWF0ZSBuZXcgdW5yZWZlcmVuY2VkIGNvbW1pdCcgJwogCWNvbW1pdD0kKGdpdCBjb21taXQtdHJlZSBIRUFEXnt0cmVlfSAtcCBIRUFEKSAmJgogCXRlc3RfZXhwb3J0IGNvbW1pdApkaWZmIC0tZ2l0IGEvdC9wZXJmL3A1MzAyLXBhY2staW5kZXguc2ggYi90L3BlcmYvcDUzMDItcGFjay1pbmRleC5zaAppbmRleCA5OWJkYjE2Li5hOWIzZTExIDEwMDc1NQotLS0gYS90L3BlcmYvcDUzMDItcGFjay1pbmRleC5zaAorKysgYi90L3BlcmYvcDUzMDItcGFjay1pbmRleC5zaApAQCAtMTMsMzUgKzEzLDQwIEBACiAJZXhwb3J0IFBBQ0sKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnY3JlYXRlIHRhcmdldCByZXBvc2l0b3JpZXMnICcKLQlmb3IgcmVwbyBpbiB0MSB0MiB0MyB0NCB0NSB0NgotCWRvCi0JCWdpdCBpbml0IC0tYmFyZSAkcmVwbwotCWRvbmUKLScKLQogdGVzdF9wZXJmICdpbmRleC1wYWNrIDAgdGhyZWFkcycgJwotCUdJVF9ESVI9dDEgZ2l0IGluZGV4LXBhY2sgLS10aHJlYWRzPTEgLS1zdGRpbiA8ICRQQUNLCisJcm0gLXJmIHJlcG8uZ2l0ICYmCisJZ2l0IGluaXQgLS1iYXJlIHJlcG8uZ2l0ICYmCisJR0lUX0RJUj1yZXBvLmdpdCBnaXQgaW5kZXgtcGFjayAtLXRocmVhZHM9MSAtLXN0ZGluIDwgJFBBQ0sKICcKIAogdGVzdF9wZXJmICdpbmRleC1wYWNrIDEgdGhyZWFkICcgJwotCUdJVF9ESVI9dDIgR0lUX0ZPUkNFX1RIUkVBRFM9MSBnaXQgaW5kZXgtcGFjayAtLXRocmVhZHM9MSAtLXN0ZGluIDwgJFBBQ0sKKwlybSAtcmYgcmVwby5naXQgJiYKKwlnaXQgaW5pdCAtLWJhcmUgcmVwby5naXQgJiYKKwlHSVRfRElSPXJlcG8uZ2l0IEdJVF9GT1JDRV9USFJFQURTPTEgZ2l0IGluZGV4LXBhY2sgLS10aHJlYWRzPTEgLS1zdGRpbiA8ICRQQUNLCiAnCiAKIHRlc3RfcGVyZiAnaW5kZXgtcGFjayAyIHRocmVhZHMnICcKLQlHSVRfRElSPXQzIGdpdCBpbmRleC1wYWNrIC0tdGhyZWFkcz0yIC0tc3RkaW4gPCAkUEFDSworCXJtIC1yZiByZXBvLmdpdCAmJgorCWdpdCBpbml0IC0tYmFyZSByZXBvLmdpdCAmJgorCUdJVF9ESVI9cmVwby5naXQgZ2l0IGluZGV4LXBhY2sgLS10aHJlYWRzPTIgLS1zdGRpbiA8ICRQQUNLCiAnCiAKIHRlc3RfcGVyZiAnaW5kZXgtcGFjayA0IHRocmVhZHMnICcKLQlHSVRfRElSPXQ0IGdpdCBpbmRleC1wYWNrIC0tdGhyZWFkcz00IC0tc3RkaW4gPCAkUEFDSworCXJtIC1yZiByZXBvLmdpdCAmJgorCWdpdCBpbml0IC0tYmFyZSByZXBvLmdpdCAmJgorCUdJVF9ESVI9cmVwby5naXQgZ2l0IGluZGV4LXBhY2sgLS10aHJlYWRzPTQgLS1zdGRpbiA8ICRQQUNLCiAnCiAKIHRlc3RfcGVyZiAnaW5kZXgtcGFjayA4IHRocmVhZHMnICcKLQlHSVRfRElSPXQ1IGdpdCBpbmRleC1wYWNrIC0tdGhyZWFkcz04IC0tc3RkaW4gPCAkUEFDSworCXJtIC1yZiByZXBvLmdpdCAmJgorCWdpdCBpbml0IC0tYmFyZSByZXBvLmdpdCAmJgorCUdJVF9ESVI9cmVwby5naXQgZ2l0IGluZGV4LXBhY2sgLS10aHJlYWRzPTggLS1zdGRpbiA8ICRQQUNLCiAnCiAKIHRlc3RfcGVyZiAnaW5kZXgtcGFjayBkZWZhdWx0IG51bWJlciBvZiB0aHJlYWRzJyAnCi0JR0lUX0RJUj10NiBnaXQgaW5kZXgtcGFjayAtLXN0ZGluIDwgJFBBQ0sKKwlybSAtcmYgcmVwby5naXQgJiYKKwlnaXQgaW5pdCAtLWJhcmUgcmVwby5naXQgJiYKKwlHSVRfRElSPXJlcG8uZ2l0IGdpdCBpbmRleC1wYWNrIC0tc3RkaW4gPCAkUEFDSwogJwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvcGVyZi9wNTMwMy1tYW55LXBhY2tzLnNoIGIvdC9wZXJmL3A1MzAzLW1hbnktcGFja3Muc2gKaW5kZXggMzc3OTg1MS4uN2VlNzkxNiAxMDA3NTUKLS0tIGEvdC9wZXJmL3A1MzAzLW1hbnktcGFja3Muc2gKKysrIGIvdC9wZXJmL3A1MzAzLW1hbnktcGFja3Muc2gKQEAgLTc3LDYgKzc3LDcgQEAKIAkjIGFjdHVhbCBwYWNrIGdlbmVyYXRpb24sIHdpdGhvdXQgc211ZGdpbmcgdGhlIG9uLWRpc2sgc2V0dXAKIAkjIGJldHdlZW4gdHJpYWxzLgogCXRlc3RfcGVyZiAicmVwYWNrICgkbnJfcGFja3MpIiAnCisJCUdJVF9URVNUX0ZVTExfSU5fUEFDS19BUlJBWT0xIFwKIAkJZ2l0IHBhY2stb2JqZWN0cyAtLWtlZXAtdHJ1ZS1wYXJlbnRzIFwKIAkJICAtLWhvbm9yLXBhY2sta2VlcCAtLW5vbi1lbXB0eSAtLWFsbCBcCiAJCSAgLS1yZWZsb2cgLS1pbmRleGVkLW9iamVjdHMgLS1kZWx0YS1iYXNlLW9mZnNldCBcCkBAIC04NCw0ICs4NSwyMiBAQAogCScKIGRvbmUKIAorIyBNZWFzdXJlIHBhY2sgbG9hZGluZyB3aXRoIDEwLDAwMCBwYWNrcy4KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dlbmVyYXRlIGxvdHMgb2YgcGFja3MnICcKKwlmb3IgaSBpbiAkKHRlc3Rfc2VxIDEwMDAwKTsgZG8KKwkJZWNobyAiYmxvYiIKKwkJZWNobyAiZGF0YSA8PEVPRiIKKwkJZWNobyAiYmxvYiAkaSIKKwkJZWNobyAiRU9GIgorCQllY2hvICJjaGVja3BvaW50IgorCWRvbmUgfAorCWdpdCAtYyBmYXN0aW1wb3J0LnVucGFja0xpbWl0PTAgZmFzdC1pbXBvcnQKKycKKworIyBUaGUgcHVycG9zZSBvZiB0aGlzIHRlc3QgaXMgdG8gZXZhbHVhdGUgbG9hZCB0aW1lIGZvciBhIGxhcmdlIG51bWJlcgorIyBvZiBwYWNrcyB3aGlsZSBkb2luZyBhcyBsaXR0bGUgb3RoZXIgd29yayBhcyBwb3NzaWJsZS4KK3Rlc3RfcGVyZiAibG9hZCAxMCwwMDAgcGFja3MiICcKKwlnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5ICJIRUFEXntjb21taXR9IgorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvcGVyZi9wNTMwNC1wcnVuZS5zaCBiL3QvcGVyZi9wNTMwNC1wcnVuZS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi44M2JhZWRiCi0tLSAvZGV2L251bGwKKysrIGIvdC9wZXJmL3A1MzA0LXBydW5lLnNoCkBAIC0wLDAgKzEsMzUgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdwZXJmb3JtYW5jZSB0ZXN0cyBvZiBwcnVuZScKKy4gLi9wZXJmLWxpYi5zaAorCit0ZXN0X3BlcmZfZGVmYXVsdF9yZXBvCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlbW92ZSByZWFjaGFibGUgbG9vc2Ugb2JqZWN0cycgJworCWdpdCByZXBhY2sgLWFkCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlbW92ZSB1bnJlYWNoYWJsZSBsb29zZSBvYmplY3RzJyAnCisJZ2l0IHBydW5lCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbmZpcm0gdGhlcmUgYXJlIG5vIGxvb3NlIG9iamVjdHMnICcKKwlnaXQgY291bnQtb2JqZWN0cyB8IGdyZXAgXjAKKycKKwordGVzdF9wZXJmICdwcnVuZSB3aXRoIG5vIG9iamVjdHMnICcKKwlnaXQgcHJ1bmUKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVwYWNrIHdpdGggYml0bWFwcycgJworCWdpdCByZXBhY2sgLWFkYgorJworCisjIFdlIGhhdmUgdG8gY3JlYXRlIHRoZSBvYmplY3QgaW4gZWFjaCB0cmlhbCBydW4sIHNpbmNlIG90aGVyd2lzZQorIyBydW5zIGFmdGVyIHRoZSBmaXJzdCBzZWUgbm8gb2JqZWN0IGFuZCBqdXN0IHNraXAgdGhlIHRyYXZlcnNhbCBlbnRpcmVseSEKK3Rlc3RfcGVyZiAncHJ1bmUgd2l0aCBiaXRtYXBzJyAnCisJZWNobyAicHJvYmFibHkgbm90IHByZXNlbnQgaW4gcmVwbyIgfCBnaXQgaGFzaC1vYmplY3QgLXcgLS1zdGRpbiAmJgorCWdpdCBwcnVuZQorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvcGVyZi9wNTMxMC1wYWNrLWJpdG1hcHMuc2ggYi90L3BlcmYvcDUzMTAtcGFjay1iaXRtYXBzLnNoCmluZGV4IGJiOTFkYmIuLjc3NDNmNGYgMTAwNzU1Ci0tLSBhL3QvcGVyZi9wNTMxMC1wYWNrLWJpdG1hcHMuc2gKKysrIGIvdC9wZXJmL3A1MzEwLXBhY2stYml0bWFwcy5zaApAQCAtMTIsOCArMTIsNyBAQAogIyBXZSBpbnRlbnRpb25hbGx5IHVzZSB0aGUgZGVwcmVjYXRlZCBwYWNrLndyaXRlYml0bWFwcwogIyBjb25maWcgc28gdGhhdCB3ZSBjYW4gdGVzdCBhZ2FpbnN0IG9sZGVyIHZlcnNpb25zIG9mIGdpdC4KIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIGJpdG1hcCBjb25maWcnICcKLQlnaXQgY29uZmlnIHBhY2sud3JpdGViaXRtYXBzIHRydWUgJiYKLQlnaXQgY29uZmlnIHBhY2sud3JpdGViaXRtYXBoYXNoY2FjaGUgdHJ1ZQorCWdpdCBjb25maWcgcGFjay53cml0ZWJpdG1hcHMgdHJ1ZQogJwogCiB0ZXN0X3BlcmYgJ3JlcGFjayB0byBkaXNrJyAnCkBAIC00MCw2ICszOSwyOCBAQAogCWdpdCBwYWNrLW9iamVjdHMgLS11c2UtYml0bWFwLWluZGV4IC0tYWxsIHBhY2sxYiA8L2Rldi9udWxsID4vZGV2L251bGwKICcKIAordGVzdF9wZXJmICdyZXYtbGlzdCAoY29tbWl0cyknICcKKwlnaXQgcmV2LWxpc3QgLS1hbGwgLS11c2UtYml0bWFwLWluZGV4ID4vZGV2L251bGwKKycKKwordGVzdF9wZXJmICdyZXYtbGlzdCAob2JqZWN0cyknICcKKwlnaXQgcmV2LWxpc3QgLS1hbGwgLS11c2UtYml0bWFwLWluZGV4IC0tb2JqZWN0cyA+L2Rldi9udWxsCisnCisKK3Rlc3RfcGVyZiAncmV2LWxpc3QgY291bnQgd2l0aCBibG9iOm5vbmUnICcKKwlnaXQgcmV2LWxpc3QgLS11c2UtYml0bWFwLWluZGV4IC0tY291bnQgLS1vYmplY3RzIC0tYWxsIFwKKwkJLS1maWx0ZXI9YmxvYjpub25lID4vZGV2L251bGwKKycKKwordGVzdF9wZXJmICdyZXYtbGlzdCBjb3VudCB3aXRoIGJsb2I6bGltaXQ9MWsnICcKKwlnaXQgcmV2LWxpc3QgLS11c2UtYml0bWFwLWluZGV4IC0tY291bnQgLS1vYmplY3RzIC0tYWxsIFwKKwkJLS1maWx0ZXI9YmxvYjpsaW1pdD0xayA+L2Rldi9udWxsCisnCisKK3Rlc3RfcGVyZiAnc2ltdWxhdGVkIHBhcnRpYWwgY2xvbmUnICcKKwlnaXQgcGFjay1vYmplY3RzIC0tc3Rkb3V0IC0tYWxsIC0tZmlsdGVyPWJsb2I6bm9uZSA8L2Rldi9udWxsID4vZGV2L251bGwKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY3JlYXRlIHBhcnRpYWwgYml0bWFwIHN0YXRlJyAnCiAJIyBwaWNrIGEgY29tbWl0IHRvIHJlcHJlc2VudCB0aGUgcmVwbyB0aXAgaW4gdGhlIHBhc3QKIAljdXRvZmY9JChnaXQgcmV2LWxpc3QgSEVBRH4xMDAgLTEpICYmCmRpZmYgLS1naXQgYS90L3BlcmYvcDUzMTEtcGFjay1iaXRtYXBzLWZldGNoLnNoIGIvdC9wZXJmL3A1MzExLXBhY2stYml0bWFwcy1mZXRjaC5zaAppbmRleCBiMDQ1NzU5Li40N2MzZmQ3IDEwMDc1NQotLS0gYS90L3BlcmYvcDUzMTEtcGFjay1iaXRtYXBzLWZldGNoLnNoCisrKyBiL3QvcGVyZi9wNTMxMS1wYWNrLWJpdG1hcHMtZmV0Y2guc2gKQEAgLTcsNyArNyw2IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NyZWF0ZSBiaXRtYXBwZWQgc2VydmVyIHJlcG8nICcKIAlnaXQgY29uZmlnIHBhY2sud3JpdGViaXRtYXBzIHRydWUgJiYKLQlnaXQgY29uZmlnIHBhY2sud3JpdGViaXRtYXBoYXNoY2FjaGUgdHJ1ZSAmJgogCWdpdCByZXBhY2sgLWFkCiAnCiAKZGlmZiAtLWdpdCBhL3QvcGVyZi9wNTYwMC1wYXJ0aWFsLWNsb25lLnNoIGIvdC9wZXJmL3A1NjAwLXBhcnRpYWwtY2xvbmUuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uM2UwNGJkMgotLS0gL2Rldi9udWxsCisrKyBiL3QvcGVyZi9wNTYwMC1wYXJ0aWFsLWNsb25lLnNoCkBAIC0wLDAgKzEsMjYgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdwZXJmb3JtYW5jZSBvZiBwYXJ0aWFsIGNsb25lcycKKy4gLi9wZXJmLWxpYi5zaAorCit0ZXN0X3BlcmZfZGVmYXVsdF9yZXBvCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2VuYWJsZSBzZXJ2ZXItc2lkZSBjb25maWcnICcKKwlnaXQgY29uZmlnIHVwbG9hZHBhY2suYWxsb3dGaWx0ZXIgdHJ1ZSAmJgorCWdpdCBjb25maWcgdXBsb2FkcGFjay5hbGxvd0FueVNIQTFJbldhbnQgdHJ1ZQorJworCit0ZXN0X3BlcmYgJ2Nsb25lIHdpdGhvdXQgYmxvYnMnICcKKwlybSAtcmYgYmFyZS5naXQgJiYKKwlnaXQgY2xvbmUgLS1uby1sb2NhbCAtLWJhcmUgLS1maWx0ZXI9YmxvYjpub25lIC4gYmFyZS5naXQKKycKKwordGVzdF9wZXJmICdjaGVja291dCBvZiByZXN1bHQnICcKKwlybSAtcmYgd29ya3RyZWUgJiYKKwlta2RpciAtcCB3b3JrdHJlZS8uZ2l0ICYmCisJdGFyIC1DIGJhcmUuZ2l0IC1jZiAtIC4gfCB0YXIgLUMgd29ya3RyZWUvLmdpdCAteGYgLSAmJgorCWdpdCAtQyB3b3JrdHJlZSBjb25maWcgY29yZS5iYXJlIGZhbHNlICYmCisJZ2l0IC1DIHdvcmt0cmVlIGNoZWNrb3V0IC1mCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC9wZXJmL3A1NjAxLWNsb25lLXJlZmVyZW5jZS5zaCBiL3QvcGVyZi9wNTYwMS1jbG9uZS1yZWZlcmVuY2Uuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNjhmZWQ2NgotLS0gL2Rldi9udWxsCisrKyBiL3QvcGVyZi9wNTYwMS1jbG9uZS1yZWZlcmVuY2Uuc2gKQEAgLTAsMCArMSwyNyBAQAorIyEvYmluL3NoCisKK3Rlc3RfZGVzY3JpcHRpb249J3NwZWVkIG9mIGNsb25lIC0tcmVmZXJlbmNlJworLiAuL3BlcmYtbGliLnNoCisKK3Rlc3RfcGVyZl9kZWZhdWx0X3JlcG8KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY3JlYXRlIHNoYXJlYWJsZSByZXBvc2l0b3J5JyAnCisJZ2l0IGNsb25lIC0tYmFyZSAuIHNoYXJlZC5naXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYWR2YW5jZSBiYXNlIHJlcG9zaXRvcnknICcKKwkjIERvIG5vdCB1c2UgdGVzdF9jb21taXQgaGVyZTsgaXRzIHRlc3RfdGljayB3aWxsCisJIyB1c2Ugc29tZSBhbmNpZW50IGhhcmQtY29kZWQgZGF0ZS4gVGhlIHJlc3VsdGluZyBjbG9jaworCSMgc2tldyB3aWxsIGNhdXNlIHBhY2stb2JqZWN0cyB0byB0cmF2ZXJzZSBpbiBhIHZlcnkKKwkjIHN1Yi1vcHRpbWFsIG9yZGVyLCBza2V3aW5nIHRoZSByZXN1bHRzLgorCWVjaG8gY29udGVudCA+bmV3LWZpbGUtdGhhdC1kb2VzLW5vdC1leGlzdCAmJgorCWdpdCBhZGQgbmV3LWZpbGUtdGhhdC1kb2VzLW5vdC1leGlzdCAmJgorCWdpdCBjb21taXQgLW0gIm5ldyBjb21taXQiCisnCisKK3Rlc3RfcGVyZiAnY2xvbmUgLS1yZWZlcmVuY2UnICcKKwlybSAtcmYgZHN0LmdpdCAmJgorCWdpdCBjbG9uZSAtLW5vLWxvY2FsIC0tYmFyZSAtLXJlZmVyZW5jZSBzaGFyZWQuZ2l0IC4gZHN0LmdpdAorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvcGVyZi9wZXJmLWxpYi5zaCBiL3QvcGVyZi9wZXJmLWxpYi5zaAppbmRleCAyZTMzYWIzLi4xM2UzODkzIDEwMDY0NAotLS0gYS90L3BlcmYvcGVyZi1saWIuc2gKKysrIGIvdC9wZXJmL3BlcmYtbGliLnNoCkBAIC0xNywzNyArMTcsMjcgQEAKICMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvIC4KIAotIyBkbyB0aGUgLS10ZWUgd29yayBlYXJseTsgaXQgb3RoZXJ3aXNlIGNvbmZ1c2VzIG91ciBjYXJlZnVsCi0jIEdJVF9CVUlMRF9ESVIgbWFuZ2xpbmcKLWNhc2UgIiRHSVRfVEVTVF9URUVfU1RBUlRFRCwgJCogIiBpbgotZG9uZSwqKQotCSMgZG8gbm90IHJlZGlyZWN0IGFnYWluCi0JOzsKLSonIC0tdGVlICcqfConIC0tdmEnKikKLQlta2RpciAtcCB0ZXN0LXJlc3VsdHMKLQlCQVNFPXRlc3QtcmVzdWx0cy8kKGJhc2VuYW1lICIkMCIgLnNoKQotCShHSVRfVEVTVF9URUVfU1RBUlRFRD1kb25lICR7U0hFTEwtc2h9ICIkMCIgIiRAIiAyPiYxOwotCSBlY2hvICQ/ID4gJEJBU0UuZXhpdCkgfCB0ZWUgJEJBU0Uub3V0Ci0JdGVzdCAiJChjYXQgJEJBU0UuZXhpdCkiID0gMAotCWV4aXQKLQk7OwotZXNhYwotCisjIFRoZXNlIHZhcmlhYmxlcyBtdXN0IGJlIHNldCBiZWZvcmUgdGhlIGluY2x1c2lvbiBvZiB0ZXN0LWxpYi5zaCBiZWxvdywKKyMgYmVjYXVzZSBpdCB3aWxsIGNoYW5nZSBvdXIgd29ya2luZyBkaXJlY3RvcnkuCiBURVNUX0RJUkVDVE9SWT0kKHB3ZCkvLi4KIFRFU1RfT1VUUFVUX0RJUkVDVE9SWT0kKHB3ZCkKLWlmIHRlc3QgLXogIiRHSVRfVEVTVF9JTlNUQUxMRUQiOyB0aGVuCi0JcGVyZl9yZXN1bHRzX3ByZWZpeD0KLWVsc2UKLQlwZXJmX3Jlc3VsdHNfcHJlZml4PSQocHJpbnRmICIlcyIgIiR7R0lUX1RFU1RfSU5TVEFMTEVEJS9iaW4td3JhcHBlcnN9IiB8IHRyIC1jICJbYS16QS1aMC05XSIgIltfKl0iKSIuIgotCSMgbWFrZSB0aGUgdGVzdGVkIGRpciBhYnNvbHV0ZQotCUdJVF9URVNUX0lOU1RBTExFRD0kKGNkICIkR0lUX1RFU1RfSU5TVEFMTEVEIiAmJiBwd2QpCi1maQogCiBURVNUX05PX0NSRUFURV9SRVBPPXQKIFRFU1RfTk9fTUFMTE9DX0NIRUNLPXQKIAogLiAuLi90ZXN0LWxpYi5zaAogCitpZiB0ZXN0IC1uICIkR0lUX1RFU1RfSU5TVEFMTEVEIiAtYSAteiAiJFBFUkZfU0VUX0dJVF9URVNUX0lOU1RBTExFRCIKK3RoZW4KKwllcnJvciAiRG8gbm90IHVzZSBHSVRfVEVTVF9JTlNUQUxMRUQgd2l0aCB0aGUgcGVyZiB0ZXN0cy4KKworSW5zdGVhZCB1c2U6CisKKyAgICAuL3J1biA8cGF0aC10by1naXQ+IC0tIDx0ZXN0cz4KKworU2VlIHQvcGVyZi9SRUFETUUgZm9yIGRldGFpbHMuIgorZmkKKwogIyBWYXJpYWJsZXMgZnJvbSB0ZXN0LWxpYiB0aGF0IGFyZSBub3JtYWxseSBpbnRlcm5hbCB0byB0aGUgdGVzdHM7IHdlCiAjIG5lZWQgdG8gZXhwb3J0IHRoZW0gZm9yIHRlc3RfcGVyZiBzdWJzaGVsbHMKIGV4cG9ydCBURVNUX0RJUkVDVE9SWSBUUkFTSF9ESVJFQ1RPUlkgR0lUX0JVSUxEX0RJUiBHSVRfVEVTVF9DTVAKQEAgLTE5MSw3ICsxODEsNyBAQAogCQliYXNlPSQoYmFzZW5hbWUgIiQwIiAuc2gpCiAJCWVjaG8gIiR0ZXN0X2NvdW50IiA+PiIkcGVyZl9yZXN1bHRzX2RpciIvJGJhc2Uuc3VidGVzdHMKIAkJZWNobyAiJDEiID4iJHBlcmZfcmVzdWx0c19kaXIiLyRiYXNlLiR0ZXN0X2NvdW50LmRlc2NyCi0JCWJhc2U9IiRwZXJmX3Jlc3VsdHNfZGlyIi8iJHBlcmZfcmVzdWx0c19wcmVmaXgkKGJhc2VuYW1lICIkMCIgLnNoKSIuIiR0ZXN0X2NvdW50IgorCQliYXNlPSIkcGVyZl9yZXN1bHRzX2RpciIvIiRQRVJGX1JFU1VMVFNfUFJFRklYJChiYXNlbmFtZSAiJDAiIC5zaCkiLiIkdGVzdF9jb3VudCIKIAkJIiR0ZXN0X3dyYXBwZXJfZnVuY18iICIkQCIKIAlmaQogCkBAIC0yMjQsNyArMjE0LDcgQEAKIAllbHNlCiAJCXRlc3Rfb2tfICIkMSIKIAlmaQotCSIkVEVTVF9ESVJFQ1RPUlkiL3BlcmYvbWluX3RpbWUucGVybCB0ZXN0X3RpbWUuKiA+IiRiYXNlIi50aW1lcworCSIkVEVTVF9ESVJFQ1RPUlkiL3BlcmYvbWluX3RpbWUucGVybCB0ZXN0X3RpbWUuKiA+IiRiYXNlIi5yZXN1bHQKIH0KIAogdGVzdF9wZXJmICgpIHsKQEAgLTIzMyw3ICsyMjMsNyBAQAogCiB0ZXN0X3NpemVfICgpIHsKIAlzYXkgPiYzICJydW5uaW5nOiAkMiIKLQlpZiB0ZXN0X2V2YWxfICIkMiIgMz4iJGJhc2UiLnNpemU7IHRoZW4KKwlpZiB0ZXN0X2V2YWxfICIkMiIgMz4iJGJhc2UiLnJlc3VsdDsgdGhlbgogCQl0ZXN0X29rXyAiJDEiCiAJZWxzZQogCQl0ZXN0X2ZhaWx1cmVfICIkQCIKZGlmZiAtLWdpdCBhL3QvcGVyZi9ydW4gYi90L3BlcmYvcnVuCmluZGV4IDlhYWE3MzMuLmM3Yjg2MTAgMTAwNzU1Ci0tLSBhL3QvcGVyZi9ydW4KKysrIGIvdC9wZXJmL3J1bgpAQCAtNzAsNiArNzAsMjQgQEAKIAkpIHx8IGRpZSAiZmFpbGVkIHRvIGJ1aWxkIHJldmlzaW9uICckbXlkaXInIgogfQogCitzZXRfZ2l0X3Rlc3RfaW5zdGFsbGVkICgpIHsKKwlteWRpcj0kMQorCisJbXlkaXJfYWJzPSQoY2QgJG15ZGlyICYmIHB3ZCkKKwlteWRpcl9hYnNfd3JhcHBlcnM9IiRteWRpcl9hYnNfd3JhcHBlcnMvYmluLXdyYXBwZXJzIgorCWlmIHRlc3QgLWQgIiRteWRpcl9hYnNfd3JhcHBlcnMiCisJdGhlbgorCQlHSVRfVEVTVF9JTlNUQUxMRUQ9JG15ZGlyX2Fic193cmFwcGVycworCWVsc2UKKwkJIyBPbGRlciB2ZXJzaW9ucyBvZiBnaXQgbGFja2VkIGJpbi13cmFwcGVyczsKKwkJIyBmYWxsYmFjayB0byB0aGUgZmlsZXMgaW4gdGhlIHJvb3QuCisJCUdJVF9URVNUX0lOU1RBTExFRD0kbXlkaXJfYWJzCisJZmkKKwlleHBvcnQgR0lUX1RFU1RfSU5TVEFMTEVECisJUEVSRl9TRVRfR0lUX1RFU1RfSU5TVEFMTEVEPXRydWUKKwlleHBvcnQgUEVSRl9TRVRfR0lUX1RFU1RfSU5TVEFMTEVECit9CisKIHJ1bl9kaXJzX2hlbHBlciAoKSB7CiAJbXlkaXI9JHsxJS99CiAJc2hpZnQKQEAgLTc5LDcgKzk3LDE2IEBACiAJaWYgdGVzdCAkIyAtZ3QgMCAtYSAiJDEiID0gLS07IHRoZW4KIAkJc2hpZnQKIAlmaQotCWlmIFsgISAtZCAiJG15ZGlyIiBdOyB0aGVuCisKKwlQRVJGX1JFU1VMVFNfUFJFRklYPQorCWlmIHRlc3QgIiRteWRpciIgPSAiLiIKKwl0aGVuCisJCXVuc2V0IEdJVF9URVNUX0lOU1RBTExFRAorCWVsaWYgdGVzdCAtZCAiJG15ZGlyIgorCXRoZW4KKwkJUEVSRl9SRVNVTFRTX1BSRUZJWD1iaW5kaXIkKGNkICRteWRpciAmJiBwcmludGYgIiVzIiAiJChwd2QpIiB8IHRyIC1jICJbYS16QS1aMC05XSIgIl8iKS4KKwkJc2V0X2dpdF90ZXN0X2luc3RhbGxlZCAiJG15ZGlyIgorCWVsc2UKIAkJcmV2PSQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSAiJG15ZGlyIiAyPi9kZXYvbnVsbCkgfHwKIAkJZGllICInJG15ZGlyJyBpcyBuZWl0aGVyIGEgZGlyZWN0b3J5IG5vciBhIHZhbGlkIHJldmlzaW9uIgogCQlpZiBbICEgLWQgYnVpbGQvJHJldiBdOyB0aGVuCkBAIC04NywxNiArMTE0LDEyIEBACiAJCWZpCiAJCWJ1aWxkX2dpdF9yZXYgJHJldiAiJG15ZGlyIgogCQlteWRpcj1idWlsZC8kcmV2CisKKwkJUEVSRl9SRVNVTFRTX1BSRUZJWD1idWlsZF8kcmV2LgorCQlzZXRfZ2l0X3Rlc3RfaW5zdGFsbGVkICIkbXlkaXIiCiAJZmkKLQlpZiB0ZXN0ICIkbXlkaXIiID0gLjsgdGhlbgotCQl1bnNldCBHSVRfVEVTVF9JTlNUQUxMRUQKLQllbHNlCi0JCUdJVF9URVNUX0lOU1RBTExFRD0iJG15ZGlyL2Jpbi13cmFwcGVycyIKLQkJIyBPbGRlciB2ZXJzaW9ucyBvZiBnaXQgbGFja2VkIGJpbi13cmFwcGVyczsgZmFsbGJhY2sgdG8gdGhlCi0JCSMgZmlsZXMgaW4gdGhlIHJvb3QuCi0JCXRlc3QgLWQgIiRHSVRfVEVTVF9JTlNUQUxMRUQiIHx8IEdJVF9URVNUX0lOU1RBTExFRD0kbXlkaXIKLQkJZXhwb3J0IEdJVF9URVNUX0lOU1RBTExFRAotCWZpCisJZXhwb3J0IFBFUkZfUkVTVUxUU19QUkVGSVgKKwogCXJ1bl9vbmVfZGlyICIkQCIKIH0KIApkaWZmIC0tZ2l0IGEvdC90MDAwMC1iYXNpYy5zaCBiL3QvdDAwMDAtYmFzaWMuc2gKaW5kZXggYjY1NjYwMC4uM2U0NDBjMCAxMDA3NTUKLS0tIGEvdC90MDAwMC1iYXNpYy5zaAorKysgYi90L3QwMDAwLWJhc2ljLnNoCkBAIC0yMCwyOCArMjAsMjcgQEAKIAogLiAuL3Rlc3QtbGliLnNoCiAKLXRyeV9sb2NhbF94ICgpIHsKLQlsb2NhbCB4PSJsb2NhbCIgJiYKLQllY2hvICIkeCIKK3RyeV9sb2NhbF94eSAoKSB7CisJbG9jYWwgeD0ibG9jYWwiIHk9ImFsc29sb2NhbCIgJiYKKwllY2hvICIkeCAkeSIKIH0KIAotIyBUaGlzIHRlc3QgaXMgYW4gZXhwZXJpbWVudCB0byBjaGVjayB3aGV0aGVyIGFueSBHaXQgdXNlcnMgYXJlIHVzaW5nCi0jIFNoZWxscyB0aGF0IGRvbid0IHN1cHBvcnQgdGhlICJsb2NhbCIga2V5d29yZC4gImxvY2FsIiBpcyBub3QKKyMgQ2hlY2sgd2hldGhlciB0aGUgc2hlbGwgc3VwcG9ydHMgdGhlICJsb2NhbCIga2V5d29yZC4gImxvY2FsIiBpcyBub3QKICMgUE9TSVgtc3RhbmRhcmQsIGJ1dCBpdCBpcyB2ZXJ5IHdpZGVseSBzdXBwb3J0ZWQgYnkgUE9TSVgtY29tcGxpYW50Ci0jIHNoZWxscywgYW5kIGlmIGl0IGRvZXNuJ3QgY2F1c2UgcHJvYmxlbXMgZm9yIHBlb3BsZSwgd2Ugd291bGQgbGlrZQotIyB0byBiZSBhYmxlIHRvIHVzZSBpdCBpbiBHaXQgY29kZS4KKyMgc2hlbGxzLCBhbmQgd2UgcmVseSBvbiBpdCB3aXRoaW4gR2l0J3MgdGVzdCBmcmFtZXdvcmsuCiAjCi0jIEZvciBub3csIHRoaXMgaXMgdGhlIG9ubHkgdGVzdCB0aGF0IHJlcXVpcmVzICJsb2NhbCIuIElmIHlvdXIgc2hlbGwKLSMgZmFpbHMgdGhpcyB0ZXN0LCB5b3UgY2FuIGlnbm9yZSB0aGUgZmFpbHVyZSwgYnV0IHBsZWFzZSByZXBvcnQgdGhlCi0jIHByb2JsZW0gdG8gdGhlIEdpdCBtYWlsaW5nIGxpc3QgPGdpdEB2Z2VyLmtlcm5lbC5vcmc+LCBhcyBpdCBtaWdodAotIyBjb252aW5jZSB1cyB0byBjb250aW51ZSBhdm9pZGluZyB0aGUgdXNlIG9mICJsb2NhbCIuCisjIElmIHlvdXIgc2hlbGwgZmFpbHMgdGhpcyB0ZXN0LCB0aGUgcmVzdWx0cyBvZiBvdGhlciB0ZXN0cyBtYXkgYmUKKyMgdW5yZWxpYWJsZS4gWW91IG1heSB3aXNoIHRvIHJlcG9ydCB0aGUgcHJvYmxlbSB0byB0aGUgR2l0IG1haWxpbmcKKyMgbGlzdCA8Z2l0QHZnZXIua2VybmVsLm9yZz4sIGFzIGl0IGNvdWxkIGNhdXNlIHVzIHRvIHJlY29uc2lkZXIKKyMgcmVseWluZyBvbiAibG9jYWwiLgogdGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IHRoYXQgdGhlIHJ1bm5pbmcgc2hlbGwgc3VwcG9ydHMgImxvY2FsIicgJwogCXg9Im5vdGxvY2FsIiAmJgotCWVjaG8gImxvY2FsIiA+ZXhwZWN0ZWQxICYmCi0JdHJ5X2xvY2FsX3ggPmFjdHVhbDEgJiYKKwl5PSJhbHNvbm90bG9jYWwiICYmCisJZWNobyAibG9jYWwgYWxzb2xvY2FsIiA+ZXhwZWN0ZWQxICYmCisJdHJ5X2xvY2FsX3h5ID5hY3R1YWwxICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQxIGFjdHVhbDEgJiYKLQllY2hvICJub3Rsb2NhbCIgPmV4cGVjdGVkMiAmJgotCWVjaG8gIiR4IiA+YWN0dWFsMiAmJgorCWVjaG8gIm5vdGxvY2FsIGFsc29ub3Rsb2NhbCIgPmV4cGVjdGVkMiAmJgorCWVjaG8gIiR4ICR5IiA+YWN0dWFsMiAmJgogCXRlc3RfY21wIGV4cGVjdGVkMiBhY3R1YWwyCiAnCiAKQEAgLTEyOCw3ICsxMjcsNyBAQAogCiBjaGVja19zdWJfdGVzdF9saWJfdGVzdF9lcnIgKCkgewogCW5hbWU9IiQxIiAjIHN0ZGluIGlzIHRoZSBleHBlY3RlZCBvdXRwdXQgZnJvbSB0aGUgdGVzdAotCSMgZXhwZWN0ZWQgZXJyb3Igb3V0cHV0IGlzIGluIGRlc2NyaXB0aW9yIDMKKwkjIGV4cGVjdGVkIGVycm9yIG91dHB1dCBpcyBpbiBkZXNjcmlwdG9yIDMKIAkoCiAJCWNkICIkbmFtZSIgJiYKIAkJc2VkIC1lICdzL14+IC8vJyAtZSAncy9aJC8vJyA+ZXhwZWN0Lm91dCAmJgpAQCAtMTU2LDcgKzE1NSw3IEBACiAiCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ByZXRlbmQgd2UgaGF2ZSBhIHBhcnRpYWxseSBwYXNzaW5nIHRlc3Qgc3VpdGUnICIKLQl0ZXN0X211c3RfZmFpbCBydW5fc3ViX3Rlc3RfbGliX3Rlc3QgXAorCXJ1bl9zdWJfdGVzdF9saWJfdGVzdF9lcnIgXAogCQlwYXJ0aWFsLXBhc3MgJzIvMyB0ZXN0cyBwYXNzaW5nJyA8PC1cXEVPRiAmJgogCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Bhc3NpbmcgdGVzdCAjMScgJ3RydWUnCiAJdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFpbGluZyB0ZXN0ICMyJyAnZmFsc2UnCkBAIC0yMjAsNyArMjE5LDcgQEAKICIKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncHJldGVuZCB3ZSBoYXZlIGEgcGFzcywgZmFpbCwgYW5kIGtub3duIGJyZWFrYWdlJyAiCi0JdGVzdF9tdXN0X2ZhaWwgcnVuX3N1Yl90ZXN0X2xpYl90ZXN0IFwKKwlydW5fc3ViX3Rlc3RfbGliX3Rlc3RfZXJyIFwKIAkJbWl4ZWQtcmVzdWx0czEgJ21peGVkIHJlc3VsdHMgIzEnIDw8LVxcRU9GICYmCiAJdGVzdF9leHBlY3Rfc3VjY2VzcyAncGFzc2luZyB0ZXN0JyAndHJ1ZScKIAl0ZXN0X2V4cGVjdF9zdWNjZXNzICdmYWlsaW5nIHRlc3QnICdmYWxzZScKQEAgLTIzOSw3ICsyMzgsNyBAQAogIgogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcmV0ZW5kIHdlIGhhdmUgYSBtaXggb2YgYWxsIHBvc3NpYmxlIHJlc3VsdHMnICIKLQl0ZXN0X211c3RfZmFpbCBydW5fc3ViX3Rlc3RfbGliX3Rlc3QgXAorCXJ1bl9zdWJfdGVzdF9saWJfdGVzdF9lcnIgXAogCQltaXhlZC1yZXN1bHRzMiAnbWl4ZWQgcmVzdWx0cyAjMicgPDwtXFxFT0YgJiYKIAl0ZXN0X2V4cGVjdF9zdWNjZXNzICdwYXNzaW5nIHRlc3QnICd0cnVlJwogCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Bhc3NpbmcgdGVzdCcgJ3RydWUnCkBAIC0yNzUsMjQgKzI3NCwyNCBAQAogIgogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIENfTE9DQUxFX09VVFBVVCAndGVzdCAtLXZlcmJvc2UnICcKLQl0ZXN0X211c3RfZmFpbCBydW5fc3ViX3Rlc3RfbGliX3Rlc3QgXAotCQl0ZXN0LXZlcmJvc2UgInRlc3QgdmVyYm9zZSIgLS12ZXJib3NlIDw8LVxFT0YgJiYKKwlydW5fc3ViX3Rlc3RfbGliX3Rlc3RfZXJyIFwKKwkJdDEyMzQtdmVyYm9zZSAidGVzdCB2ZXJib3NlIiAtLXZlcmJvc2UgPDwtXEVPRiAmJgogCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgInBhc3NpbmcgdGVzdCIgdHJ1ZQogCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgInRlc3Qgd2l0aCBvdXRwdXQiICJlY2hvIGZvbyIKIAl0ZXN0X2V4cGVjdF9zdWNjZXNzICJmYWlsaW5nIHRlc3QiIGZhbHNlCiAJdGVzdF9kb25lCiAJRU9GCi0JbXYgdGVzdC12ZXJib3NlL291dCB0ZXN0LXZlcmJvc2Uvb3V0KyAmJgotCWdyZXAgLXYgIl5Jbml0aWFsaXplZCBlbXB0eSIgdGVzdC12ZXJib3NlL291dCsgPnRlc3QtdmVyYm9zZS9vdXQgJiYKLQljaGVja19zdWJfdGVzdF9saWJfdGVzdCB0ZXN0LXZlcmJvc2UgPDwtXEVPRgotCT4gZXhwZWN0aW5nIHN1Y2Nlc3M6IHRydWUKKwltdiB0MTIzNC12ZXJib3NlL291dCB0MTIzNC12ZXJib3NlL291dCsgJiYKKwlncmVwIC12ICJeSW5pdGlhbGl6ZWQgZW1wdHkiIHQxMjM0LXZlcmJvc2Uvb3V0KyA+dDEyMzQtdmVyYm9zZS9vdXQgJiYKKwljaGVja19zdWJfdGVzdF9saWJfdGVzdCB0MTIzNC12ZXJib3NlIDw8LVxFT0YKKwk+IGV4cGVjdGluZyBzdWNjZXNzIG9mIDEyMzQuMSAnXCcncGFzc2luZyB0ZXN0J1wnJzogdHJ1ZQogCT4gb2sgMSAtIHBhc3NpbmcgdGVzdAogCT4gWgotCT4gZXhwZWN0aW5nIHN1Y2Nlc3M6IGVjaG8gZm9vCisJPiBleHBlY3Rpbmcgc3VjY2VzcyBvZiAxMjM0LjIgJ1wnJ3Rlc3Qgd2l0aCBvdXRwdXQnXCcnOiBlY2hvIGZvbwogCT4gZm9vCiAJPiBvayAyIC0gdGVzdCB3aXRoIG91dHB1dAogCT4gWgotCT4gZXhwZWN0aW5nIHN1Y2Nlc3M6IGZhbHNlCisJPiBleHBlY3Rpbmcgc3VjY2VzcyBvZiAxMjM0LjMgJ1wnJ2ZhaWxpbmcgdGVzdCdcJyc6IGZhbHNlCiAJPiBub3Qgb2sgMyAtIGZhaWxpbmcgdGVzdAogCT4gIwlmYWxzZQogCT4gWgpAQCAtMzAyLDE4ICszMDEsMTggQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdCAtLXZlcmJvc2Utb25seScgJwotCXRlc3RfbXVzdF9mYWlsIHJ1bl9zdWJfdGVzdF9saWJfdGVzdCBcCi0JCXRlc3QtdmVyYm9zZS1vbmx5LTIgInRlc3QgdmVyYm9zZS1vbmx5PTIiIFwKKwlydW5fc3ViX3Rlc3RfbGliX3Rlc3RfZXJyIFwKKwkJdDIzNDUtdmVyYm9zZS1vbmx5LTIgInRlc3QgdmVyYm9zZS1vbmx5PTIiIFwKIAkJLS12ZXJib3NlLW9ubHk9MiA8PC1cRU9GICYmCiAJdGVzdF9leHBlY3Rfc3VjY2VzcyAicGFzc2luZyB0ZXN0IiB0cnVlCiAJdGVzdF9leHBlY3Rfc3VjY2VzcyAidGVzdCB3aXRoIG91dHB1dCIgImVjaG8gZm9vIgogCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgImZhaWxpbmcgdGVzdCIgZmFsc2UKIAl0ZXN0X2RvbmUKIAlFT0YKLQljaGVja19zdWJfdGVzdF9saWJfdGVzdCB0ZXN0LXZlcmJvc2Utb25seS0yIDw8LVxFT0YKKwljaGVja19zdWJfdGVzdF9saWJfdGVzdCB0MjM0NS12ZXJib3NlLW9ubHktMiA8PC1cRU9GCiAJPiBvayAxIC0gcGFzc2luZyB0ZXN0CiAJPiBaCi0JPiBleHBlY3Rpbmcgc3VjY2VzczogZWNobyBmb28KKwk+IGV4cGVjdGluZyBzdWNjZXNzIG9mIDIzNDUuMiAnXCcndGVzdCB3aXRoIG91dHB1dCdcJyc6IGVjaG8gZm9vCiAJPiBmb28KIAk+IG9rIDIgLSB0ZXN0IHdpdGggb3V0cHV0CiAJPiBaCkBAIC0zOTMsNiArMzkyLDQ0IEBACiAJKQogIgogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdHSVRfU0tJUF9URVNUUyBlbnRpcmUgc3VpdGUnICIKKwkoCisJCUdJVF9TS0lQX1RFU1RTPSdnaXQnICYmIGV4cG9ydCBHSVRfU0tJUF9URVNUUyAmJgorCQlydW5fc3ViX3Rlc3RfbGliX3Rlc3QgZ2l0LXNraXAtdGVzdHMtZW50aXJlLXN1aXRlIFwKKwkJCSdHSVRfU0tJUF9URVNUUyBlbnRpcmUgc3VpdGUnIDw8LVxcRU9GICYmCisJCWZvciBpIGluIDEgMiAzCisJCWRvCisJCQl0ZXN0X2V4cGVjdF9zdWNjZXNzIFwicGFzc2luZyB0ZXN0ICNcJGlcIiAndHJ1ZScKKwkJZG9uZQorCQl0ZXN0X2RvbmUKKwkJRU9GCisJCWNoZWNrX3N1Yl90ZXN0X2xpYl90ZXN0IGdpdC1za2lwLXRlc3RzLWVudGlyZS1zdWl0ZSA8PC1cXEVPRgorCQk+IDEuLjAgIyBTS0lQIHNraXAgYWxsIHRlc3RzIGluIGdpdAorCQlFT0YKKwkpCisiCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0dJVF9TS0lQX1RFU1RTIGRvZXMgbm90IHNraXAgdW5tYXRjaGVkIHN1aXRlJyAiCisJKAorCQlHSVRfU0tJUF9URVNUUz0nbm90Z2l0JyAmJiBleHBvcnQgR0lUX1NLSVBfVEVTVFMgJiYKKwkJcnVuX3N1Yl90ZXN0X2xpYl90ZXN0IGdpdC1za2lwLXRlc3RzLXVubWF0Y2hlZC1zdWl0ZSBcCisJCQknR0lUX1NLSVBfVEVTVFMgZG9lcyBub3Qgc2tpcCB1bm1hdGNoZWQgc3VpdGUnIDw8LVxcRU9GICYmCisJCWZvciBpIGluIDEgMiAzCisJCWRvCisJCQl0ZXN0X2V4cGVjdF9zdWNjZXNzIFwicGFzc2luZyB0ZXN0ICNcJGlcIiAndHJ1ZScKKwkJZG9uZQorCQl0ZXN0X2RvbmUKKwkJRU9GCisJCWNoZWNrX3N1Yl90ZXN0X2xpYl90ZXN0IGdpdC1za2lwLXRlc3RzLXVubWF0Y2hlZC1zdWl0ZSA8PC1cXEVPRgorCQk+IG9rIDEgLSBwYXNzaW5nIHRlc3QgIzEKKwkJPiBvayAyIC0gcGFzc2luZyB0ZXN0ICMyCisJCT4gb2sgMyAtIHBhc3NpbmcgdGVzdCAjMworCQk+ICMgcGFzc2VkIGFsbCAzIHRlc3QocykKKwkJPiAxLi4zCisJCUVPRgorCSkKKyIKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1ydW4gYmFzaWMnICIKIAlydW5fc3ViX3Rlc3RfbGliX3Rlc3QgcnVuLWJhc2ljIFwKIAkJJy0tcnVuIGJhc2ljJyAtLXJ1bj0nMSAzIDUnIDw8LVxcRU9GICYmCkBAIC03MjYsNyArNzYzLDcgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgRE9OVEhBVkVJVCAndW5tZXQgcHJlcmVxdWlzaXRlIGNhdXNlcyB0ZXN0IHRvIGJlIHNraXBwZWQnICcKIAlkb250aGF2ZWl0PW5vCiAnCi1pZiB0ZXN0ICRoYXZlaXQkZG9udGhhdmVpdCAhPSB5ZXN5ZXMKK2lmIHRlc3QgLXogIiRHSVRfVEVTVF9GQUlMX1BSRVJFUVNfSU5URVJOQUwiIC1hICRoYXZlaXQkZG9udGhhdmVpdCAhPSB5ZXN5ZXMKIHRoZW4KIAlzYXkgImJ1ZyBpbiB0ZXN0IGZyYW1ld29yazogcHJlcmVxdWlzaXRlIHRhZ3MgZG8gbm90IHdvcmsgcmVsaWFibHkiCiAJZXhpdCAxCkBAIC03NDcsNyArNzg0LDcgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgRE9OVEhBVkVJVCxIQVZFSVQgJ3VubWV0IHByZXJlcXVpc2l0ZXMgY2F1c2VzIHRlc3QgdG8gYmUgc2tpcHBlZCcgJwogCWRvbnRoYXZlaXRlaXRoZXI9bm8KICcKLWlmIHRlc3QgJGhhdmVpdCRkb250aGF2ZWl0JGRvbnRoYXZlaXRlaXRoZXIgIT0geWVzeWVzeWVzCitpZiB0ZXN0IC16ICIkR0lUX1RFU1RfRkFJTF9QUkVSRVFTX0lOVEVSTkFMIiAtYSAkaGF2ZWl0JGRvbnRoYXZlaXQkZG9udGhhdmVpdGVpdGhlciAhPSB5ZXN5ZXN5ZXMKIHRoZW4KIAlzYXkgImJ1ZyBpbiB0ZXN0IGZyYW1ld29yazogbXVsdGlwbGUgcHJlcmVxdWlzaXRlIHRhZ3MgZG8gbm90IHdvcmsgcmVsaWFibHkiCiAJZXhpdCAxCkBAIC03NjMsNyArODAwLDcgQEAKIAlkb250aGF2ZXRydWU9bm8KICcKIAotaWYgdGVzdCAiJGhhdmV0cnVlJGRvbnRoYXZldHJ1ZSIgIT0geWVzeWVzCitpZiB0ZXN0IC16ICIkR0lUX1RFU1RfRkFJTF9QUkVSRVFTX0lOVEVSTkFMIiAtYSAiJGhhdmV0cnVlJGRvbnRoYXZldHJ1ZSIgIT0geWVzeWVzCiB0aGVuCiAJc2F5ICdidWcgaW4gdGVzdCBmcmFtZXdvcms6IGxhenkgcHJlcmVxdWlzaXRlcyBkbyBub3Qgd29yaycKIAlleGl0IDEKQEAgLTc3OSw3ICs4MTYsNyBAQAogCWhhdmVmYWxzZT1ubwogJwogCi1pZiB0ZXN0ICIkbm90aGF2ZWZhbHNlJGhhdmVmYWxzZSIgIT0geWVzeWVzCitpZiB0ZXN0IC16ICIkR0lUX1RFU1RfRkFJTF9QUkVSRVFTX0lOVEVSTkFMIiAtYSAiJG5vdGhhdmVmYWxzZSRoYXZlZmFsc2UiICE9IHllc3llcwogdGhlbgogCXNheSAnYnVnIGluIHRlc3QgZnJhbWV3b3JrOiBuZWdhdGl2ZSBsYXp5IHByZXJlcXVpc2l0ZXMgZG8gbm90IHdvcmsnCiAJZXhpdCAxCkBAIC03OTAsMTQgKzgyNywxNCBAQAogCXRlc3Rfd2hlbl9maW5pc2hlZCBjbGVhbj15ZXMKICcKIAotaWYgdGVzdCAkY2xlYW4gIT0geWVzCitpZiB0ZXN0IC16ICIkR0lUX1RFU1RfRkFJTF9QUkVSRVFTX0lOVEVSTkFMIiAtYSAkY2xlYW4gIT0geWVzCiB0aGVuCiAJc2F5ICJidWcgaW4gdGVzdCBmcmFtZXdvcms6IGJhc2ljIGNsZWFudXAgY29tbWFuZCBkb2VzIG5vdCB3b3JrIHJlbGlhYmx5IgogCWV4aXQgMQogZmkKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdHMgY2xlYW4gdXAgZXZlbiBvbiBmYWlsdXJlcycgIgotCXRlc3RfbXVzdF9mYWlsIHJ1bl9zdWJfdGVzdF9saWJfdGVzdCBcCisJcnVuX3N1Yl90ZXN0X2xpYl90ZXN0X2VyciBcCiAJCWZhaWxpbmctY2xlYW51cCAnRmFpbGluZyB0ZXN0cyB3aXRoIGNsZWFudXAgY29tbWFuZHMnIDw8LVxcRU9GICYmCiAJdGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdHMgY2xlYW4gdXAgZXZlbiBhZnRlciBhIGZhaWx1cmUnICcKIAkJdG91Y2ggY2xlYW4tYWZ0ZXItZmFpbHVyZSAmJgpAQCAtODI1LDYgKzg2MiwyNCBAQAogCUVPRgogIgogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd0ZXN0X2F0ZXhpdCBpcyBydW4nICIKKwlydW5fc3ViX3Rlc3RfbGliX3Rlc3RfZXJyIFwKKwkJYXRleGl0LWNsZWFudXAgJ1J1biBhdGV4aXQgY29tbWFuZHMnIC1pIDw8LVxcRU9GICYmCisJdGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdHMgY2xlYW4gdXAgZXZlbiBhZnRlciBhIGZhaWx1cmUnICcKKwkJPiAuLi8uLi9jbGVhbi1hdGV4aXQgJiYKKwkJdGVzdF9hdGV4aXQgcm0gLi4vLi4vY2xlYW4tYXRleGl0ICYmCisJCT4gLi4vLi4vYWxzby1jbGVhbi1hdGV4aXQgJiYKKwkJdGVzdF9hdGV4aXQgcm0gLi4vLi4vYWxzby1jbGVhbi1hdGV4aXQgJiYKKwkJPiAuLi8uLi9kb250LWNsZWFuLWF0ZXhpdCAmJgorCQkoZXhpdCAxKQorCScKKwl0ZXN0X2RvbmUKKwlFT0YKKwl0ZXN0X3BhdGhfaXNfZmlsZSBkb250LWNsZWFuLWF0ZXhpdCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIGNsZWFuLWF0ZXhpdCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIGFsc28tY2xlYW4tYXRleGl0CisiCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Rlc3Rfb2lkIHNldHVwJyAnCiAJdGVzdF9vaWRfaW5pdAogJwpAQCAtODYyLDYgKzkxNyw0MCBAQAogCXRlc3QgIiRoZXhzeiIgLWVxIDY0CiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Rlc3RfYm9vbF9lbnYnICcKKwkoCisJCXNhbmVfdW5zZXQgZW52dmFyICYmCisKKwkJdGVzdF9ib29sX2VudiBlbnZ2YXIgdHJ1ZSAmJgorCQkhIHRlc3RfYm9vbF9lbnYgZW52dmFyIGZhbHNlICYmCisKKwkJZW52dmFyPSAmJgorCQlleHBvcnQgZW52dmFyICYmCisJCSEgdGVzdF9ib29sX2VudiBlbnZ2YXIgdHJ1ZSAmJgorCQkhIHRlc3RfYm9vbF9lbnYgZW52dmFyIGZhbHNlICYmCisKKwkJZW52dmFyPXRydWUgJiYKKwkJdGVzdF9ib29sX2VudiBlbnZ2YXIgdHJ1ZSAmJgorCQl0ZXN0X2Jvb2xfZW52IGVudnZhciBmYWxzZSAmJgorCisJCWVudnZhcj1mYWxzZSAmJgorCQkhIHRlc3RfYm9vbF9lbnYgZW52dmFyIHRydWUgJiYKKwkJISB0ZXN0X2Jvb2xfZW52IGVudnZhciBmYWxzZSAmJgorCisJCWVudnZhcj1pbnZhbGlkICYmCisJCSMgV2hlbiBlbmNvdW50ZXJpbmcgYW4gaW52YWxpZCBib29sIHZhbHVlLCB0ZXN0X2Jvb2xfZW52CisJCSMgcHJpbnRzIGl0cyBlcnJvciBtZXNzYWdlIHRvIHRoZSBvcmlnaW5hbCBzdGRlcnIgb2YgdGhlCisJCSMgdGVzdCBzY3JpcHQsIGhlbmNlIHRoZSByZWRpcmVjdGlvbiBvZiBmZCA3LCBhbmQgYWJvcnRzCisJCSMgd2l0aCAiZXhpdCAxIiwgaGVuY2UgdGhlIHN1YnNoZWxsLgorCQkhICggdGVzdF9ib29sX2VudiBlbnZ2YXIgdHJ1ZSApIDc+ZXJyICYmCisJCWdyZXAgImVycm9yOiB0ZXN0X2Jvb2xfZW52IHJlcXVpcmVzIGJvb2wgdmFsdWVzIiBlcnIgJiYKKworCQllbnZ2YXI9dHJ1ZSAmJgorCQkhICggdGVzdF9ib29sX2VudiBlbnZ2YXIgaW52YWxpZCApIDc+ZXJyICYmCisJCWdyZXAgImVycm9yOiB0ZXN0X2Jvb2xfZW52IHJlcXVpcmVzIGJvb2wgdmFsdWVzIiBlcnIKKwkpCisnCisKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMgQmFzaWNzIG9mIHRoZSBiYXNpY3MKIApkaWZmIC0tZ2l0IGEvdC90MDAwMS1pbml0LnNoIGIvdC90MDAwMS1pbml0LnNoCmluZGV4IDQyYTI2M2MuLjI2ZjgyMDYgMTAwNzU1Ci0tLSBhL3QvdDAwMDEtaW5pdC5zaAorKysgYi90L3QwMDAxLWluaXQuc2gKQEAgLTkzLDYgKzkzLDcgQEAKIAkJc2VkIC1uIFwKIAkJCS1lICIvXkdJVF9QUkVGSVg9L2QiIFwKIAkJCS1lICIvXkdJVF9URVhURE9NQUlORElSPS9kIiBcCisJCQktZSAiL15HSVRfVFJBQ0UyX1BBUkVOVC9kIiBcCiAJCQktZSAiL15HSVRfL3MvPS4qLy9wIiB8CiAJCXNvcnQKIAlFT0YKQEAgLTE3NCw3ICsxNzUsNyBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnaW5pdCB3aXRoIC0tdGVtcGxhdGUnICcKIAlta2RpciB0ZW1wbGF0ZS1zb3VyY2UgJiYKIAllY2hvIGNvbnRlbnQgPnRlbXBsYXRlLXNvdXJjZS9maWxlICYmCi0JZ2l0IGluaXQgLS10ZW1wbGF0ZT0uLi90ZW1wbGF0ZS1zb3VyY2UgdGVtcGxhdGUtY3VzdG9tICYmCisJZ2l0IGluaXQgLS10ZW1wbGF0ZT10ZW1wbGF0ZS1zb3VyY2UgdGVtcGxhdGUtY3VzdG9tICYmCiAJdGVzdF9jbXAgdGVtcGxhdGUtc291cmNlL2ZpbGUgdGVtcGxhdGUtY3VzdG9tLy5naXQvZmlsZQogJwogCkBAIC0zMTAsOCArMzExLDggQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2luaXQgd2l0aCBzZXBhcmF0ZSBnaXRkaXInICcKIAlybSAtcmYgbmV3ZGlyICYmCiAJZ2l0IGluaXQgLS1zZXBhcmF0ZS1naXQtZGlyIHJlYWxnaXRkaXIgbmV3ZGlyICYmCi0JZWNobyAiZ2l0ZGlyOiAkKHB3ZCkvcmVhbGdpdGRpciIgPmV4cGVjdGVkICYmCi0JdGVzdF9jbXAgZXhwZWN0ZWQgbmV3ZGlyLy5naXQgJiYKKwluZXdkaXJfZ2l0PSIkKGNhdCBuZXdkaXIvLmdpdCkiICYmCisJdGVzdF9jbXBfZnNwYXRoICIkKHB3ZCkvcmVhbGdpdGRpciIgIiR7bmV3ZGlyX2dpdCNnaXRkaXI6IH0iICYmCiAJdGVzdF9wYXRoX2lzX2RpciByZWFsZ2l0ZGlyL3JlZnMKICcKIApAQCAtMzYwLDEyICszNjEsOSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZS1pbml0IHRvIHVwZGF0ZSBnaXQgbGluaycgJwotCSgKLQljZCBuZXdkaXIgJiYKLQlnaXQgaW5pdCAtLXNlcGFyYXRlLWdpdC1kaXIgLi4vc3VycmVhbGdpdGRpcgotCSkgJiYKLQllY2hvICJnaXRkaXI6ICQocHdkKS9zdXJyZWFsZ2l0ZGlyIiA+ZXhwZWN0ZWQgJiYKLQl0ZXN0X2NtcCBleHBlY3RlZCBuZXdkaXIvLmdpdCAmJgorCWdpdCAtQyBuZXdkaXIgaW5pdCAtLXNlcGFyYXRlLWdpdC1kaXIgLi4vc3VycmVhbGdpdGRpciAmJgorCW5ld2Rpcl9naXQ9IiQoY2F0IG5ld2Rpci8uZ2l0KSIgJiYKKwl0ZXN0X2NtcF9mc3BhdGggIiQocHdkKS9zdXJyZWFsZ2l0ZGlyIiAiJHtuZXdkaXJfZ2l0I2dpdGRpcjogfSIgJiYKIAl0ZXN0X3BhdGhfaXNfZGlyIHN1cnJlYWxnaXRkaXIvcmVmcyAmJgogCXRlc3RfcGF0aF9pc19taXNzaW5nIHJlYWxnaXRkaXIvcmVmcwogJwpAQCAtMzczLDEyICszNzEsOSBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmUtaW5pdCB0byBtb3ZlIGdpdGRpcicgJwogCXJtIC1yZiBuZXdkaXIgcmVhbGdpdGRpciBzdXJyZWFsZ2l0ZGlyICYmCiAJZ2l0IGluaXQgbmV3ZGlyICYmCi0JKAotCWNkIG5ld2RpciAmJgotCWdpdCBpbml0IC0tc2VwYXJhdGUtZ2l0LWRpciAuLi9yZWFsZ2l0ZGlyCi0JKSAmJgotCWVjaG8gImdpdGRpcjogJChwd2QpL3JlYWxnaXRkaXIiID5leHBlY3RlZCAmJgotCXRlc3RfY21wIGV4cGVjdGVkIG5ld2Rpci8uZ2l0ICYmCisJZ2l0IC1DIG5ld2RpciBpbml0IC0tc2VwYXJhdGUtZ2l0LWRpciAuLi9yZWFsZ2l0ZGlyICYmCisJbmV3ZGlyX2dpdD0iJChjYXQgbmV3ZGlyLy5naXQpIiAmJgorCXRlc3RfY21wX2ZzcGF0aCAiJChwd2QpL3JlYWxnaXRkaXIiICIke25ld2Rpcl9naXQjZ2l0ZGlyOiB9IiAmJgogCXRlc3RfcGF0aF9pc19kaXIgcmVhbGdpdGRpci9yZWZzCiAnCiAKQEAgLTQ1Myw2ICs0NDgsMTcgQEAKIAkpCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgTUlOR1cgJ2NvcmUuaGlkZWRvdGZpbGVzID0gZmFsc2UnICcKKwlnaXQgY29uZmlnIC0tZ2xvYmFsIGNvcmUuaGlkZWRvdGZpbGVzIGZhbHNlICYmCisJcm0gLXJmIG5ld2RpciAmJgorCW1rZGlyIG5ld2RpciAmJgorCSgKKwkJc2FuZV91bnNldCBHSVRfRElSIEdJVF9XT1JLX1RSRUUgR0lUX0NPTkZJRyAmJgorCQlnaXQgLUMgbmV3ZGlyIGluaXQKKwkpICYmCisJISBpc19oaWRkZW4gbmV3ZGlyLy5naXQKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyBNSU5HVyAncmVkaXJlY3Qgc3RkIGhhbmRsZXMnICcKIAlHSVRfUkVESVJFQ1RfU1RET1VUPW91dHB1dC50eHQgZ2l0IHJldi1wYXJzZSAtLWdpdC1kaXIgJiYKIAl0ZXN0IC5naXQgPSAiJChjYXQgb3V0cHV0LnR4dCkiICYmCkBAIC00NjEsOCArNDY3LDggQEAKIAkJR0lUX1JFRElSRUNUX1NURE9VVD1vdXRwdXQudHh0IFwKIAkJR0lUX1JFRElSRUNUX1NUREVSUj0iMj4mMSIgXAogCQlnaXQgcmV2LXBhcnNlIC0tZ2l0LWRpciAtLXZlcmlmeSByZWZzL2ludmFsaWQgJiYKLQlwcmludGYgIi5naXRcbmZhdGFsOiBOZWVkZWQgYSBzaW5nbGUgcmV2aXNpb25cbiIgPmV4cGVjdCAmJgotCXRlc3RfY21wIGV4cGVjdCBvdXRwdXQudHh0CisJZ3JlcCAiXlxcLmdpdFwkIiBvdXRwdXQudHh0ICYmCisJZ3JlcCAiTmVlZGVkIGEgc2luZ2xlIHJldmlzaW9uIiBvdXRwdXQudHh0CiAnCiAKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MDAwMy1hdHRyaWJ1dGVzLnNoIGIvdC90MDAwMy1hdHRyaWJ1dGVzLnNoCmluZGV4IDIyNDk5YmMuLmI2NjA1OTMgMTAwNzU1Ci0tLSBhL3QvdDAwMDMtYXR0cmlidXRlcy5zaAorKysgYi90L3QwMDAzLWF0dHJpYnV0ZXMuc2gKQEAgLTUsMTkgKzUsMTYgQEAKIC4gLi90ZXN0LWxpYi5zaAogCiBhdHRyX2NoZWNrICgpIHsKLQlwYXRoPSIkMSIgZXhwZWN0PSIkMiIKKwlwYXRoPSIkMSIgZXhwZWN0PSIkMiIgZ2l0X29wdHM9IiQzIiAmJgogCi0JZ2l0ICQzIGNoZWNrLWF0dHIgdGVzdCAtLSAiJHBhdGgiID5hY3R1YWwgMj5lcnIgJiYKLQllY2hvICIkcGF0aDogdGVzdDogJDIiID5leHBlY3QgJiYKKwlnaXQgJGdpdF9vcHRzIGNoZWNrLWF0dHIgdGVzdCAtLSAiJHBhdGgiID5hY3R1YWwgMj5lcnIgJiYKKwllY2hvICIkcGF0aDogdGVzdDogJGV4cGVjdCIgPmV4cGVjdCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKLQl0ZXN0X2xpbmVfY291bnQgPSAwIGVycgorCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIKIH0KIAogYXR0cl9jaGVja19xdW90ZSAoKSB7Ci0KLQlwYXRoPSIkMSIKLQlxdW90ZWRfcGF0aD0iJDIiCi0JZXhwZWN0PSIkMyIKKwlwYXRoPSIkMSIgcXVvdGVkX3BhdGg9IiQyIiBleHBlY3Q9IiQzIiAmJgogCiAJZ2l0IGNoZWNrLWF0dHIgdGVzdCAtLSAiJHBhdGgiID5hY3R1YWwgJiYKIAllY2hvICJcIiRxdW90ZWRfcGF0aFwiOiB0ZXN0OiAkZXhwZWN0IiA+ZXhwZWN0ICYmCkBAIC0yNyw3ICsyNCw3IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ29wZW4tcXVvdGVkIHBhdGhuYW1lJyAnCiAJZWNobyAiXCJhIHRlc3Q9YSIgPi5naXRhdHRyaWJ1dGVzICYmCi0JdGVzdF9tdXN0X2ZhaWwgYXR0cl9jaGVjayBhIGEKKwlhdHRyX2NoZWNrIGEgdW5zcGVjaWZpZWQKICcKIAogCkBAIC0xMTIsMjAgKzEwOSwyMCBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhdHRyaWJ1dGUgbWF0Y2hpbmcgaXMgY2FzZSBzZW5zaXRpdmUgd2hlbiBjb3JlLmlnbm9yZWNhc2U9MCcgJwogCi0JdGVzdF9tdXN0X2ZhaWwgYXR0cl9jaGVjayBGIGYgIi1jIGNvcmUuaWdub3JlY2FzZT0wIiAmJgotCXRlc3RfbXVzdF9mYWlsIGF0dHJfY2hlY2sgYS9GIGYgIi1jIGNvcmUuaWdub3JlY2FzZT0wIiAmJgotCXRlc3RfbXVzdF9mYWlsIGF0dHJfY2hlY2sgYS9jL0YgZiAiLWMgY29yZS5pZ25vcmVjYXNlPTAiICYmCi0JdGVzdF9tdXN0X2ZhaWwgYXR0cl9jaGVjayBhL0cgYS9nICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKLQl0ZXN0X211c3RfZmFpbCBhdHRyX2NoZWNrIGEvQi9nIGEvYi9nICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKLQl0ZXN0X211c3RfZmFpbCBhdHRyX2NoZWNrIGEvYi9HIGEvYi9nICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKLQl0ZXN0X211c3RfZmFpbCBhdHRyX2NoZWNrIGEvYi9IIGEvYi9oICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKLQl0ZXN0X211c3RfZmFpbCBhdHRyX2NoZWNrIGEvYi9EL2cgImEvYi9kLyoiICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKLQl0ZXN0X211c3RfZmFpbCBhdHRyX2NoZWNrIG9Ob0ZmIHVuc2V0ICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKLQl0ZXN0X211c3RfZmFpbCBhdHRyX2NoZWNrIG9GZk9uIHNldCAiLWMgY29yZS5pZ25vcmVjYXNlPTAiICYmCisJYXR0cl9jaGVjayBGIHVuc3BlY2lmaWVkICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKKwlhdHRyX2NoZWNrIGEvRiB1bnNwZWNpZmllZCAiLWMgY29yZS5pZ25vcmVjYXNlPTAiICYmCisJYXR0cl9jaGVjayBhL2MvRiB1bnNwZWNpZmllZCAiLWMgY29yZS5pZ25vcmVjYXNlPTAiICYmCisJYXR0cl9jaGVjayBhL0cgdW5zcGVjaWZpZWQgIi1jIGNvcmUuaWdub3JlY2FzZT0wIiAmJgorCWF0dHJfY2hlY2sgYS9CL2cgYS9nICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKKwlhdHRyX2NoZWNrIGEvYi9HIHVuc3BlY2lmaWVkICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKKwlhdHRyX2NoZWNrIGEvYi9IIHVuc3BlY2lmaWVkICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKKwlhdHRyX2NoZWNrIGEvYi9EL2cgYS9nICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKKwlhdHRyX2NoZWNrIG9Ob0ZmIHVuc3BlY2lmaWVkICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKKwlhdHRyX2NoZWNrIG9GZk9uIHVuc3BlY2lmaWVkICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKIAlhdHRyX2NoZWNrIE5PIHVuc3BlY2lmaWVkICItYyBjb3JlLmlnbm9yZWNhc2U9MCIgJiYKLQl0ZXN0X211c3RfZmFpbCBhdHRyX2NoZWNrIGEvYi9EL05PICJhL2IvZC8qIiAiLWMgY29yZS5pZ25vcmVjYXNlPTAiICYmCisJYXR0cl9jaGVjayBhL2IvRC9OTyB1bnNwZWNpZmllZCAiLWMgY29yZS5pZ25vcmVjYXNlPTAiICYmCiAJYXR0cl9jaGVjayBhL2IvZC9ZRVMgYS9iL2QvKiAiLWMgY29yZS5pZ25vcmVjYXNlPTAiICYmCi0JdGVzdF9tdXN0X2ZhaWwgYXR0cl9jaGVjayBhL0UvZiAiQS9lL0YiICItYyBjb3JlLmlnbm9yZWNhc2U9MCIKKwlhdHRyX2NoZWNrIGEvRS9mIGYgIi1jIGNvcmUuaWdub3JlY2FzZT0wIgogCiAnCiAKQEAgLTE0OSw4ICsxNDYsOCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIENBU0VfSU5TRU5TSVRJVkVfRlMgJ2FkZGl0aW9uYWwgY2FzZSBpbnNlbnNpdGl2aXR5IHRlc3RzJyAnCi0JdGVzdF9tdXN0X2ZhaWwgYXR0cl9jaGVjayBhL0IvRC9nICJhL2IvZC8qIiAiLWMgY29yZS5pZ25vcmVjYXNlPTAiICYmCi0JdGVzdF9tdXN0X2ZhaWwgYXR0cl9jaGVjayBBL0IvRC9OTyAiYS9iL2QvKiIgIi1jIGNvcmUuaWdub3JlY2FzZT0wIiAmJgorCWF0dHJfY2hlY2sgYS9CL0QvZyBhL2cgIi1jIGNvcmUuaWdub3JlY2FzZT0wIiAmJgorCWF0dHJfY2hlY2sgQS9CL0QvTk8gdW5zcGVjaWZpZWQgIi1jIGNvcmUuaWdub3JlY2FzZT0wIiAmJgogCWF0dHJfY2hlY2sgQS9iL2ggYS9iL2ggIi1jIGNvcmUuaWdub3JlY2FzZT0xIiAmJgogCWF0dHJfY2hlY2sgYS9CL0QvZyAiYS9iL2QvKiIgIi1jIGNvcmUuaWdub3JlY2FzZT0xIiAmJgogCWF0dHJfY2hlY2sgQS9CL0QvTk8gImEvYi9kLyoiICItYyBjb3JlLmlnbm9yZWNhc2U9MSIKQEAgLTI0NCw3ICsyNDEsNyBAQAogCWdpdCBjaGVjay1hdHRyIGZvbyAtLSAiYS9iL2YiID4+YWN0dWFsIDI+PmVyciAmJgogCWdpdCBjaGVjay1hdHRyIGZvbyAtLSAiYS9iL2MvZiIgPj5hY3R1YWwgMj4+ZXJyICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgotCXRlc3RfbGluZV9jb3VudCA9IDAgZXJyCisJdGVzdF9tdXN0X2JlX2VtcHR5IGVycgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICciKioiIHdpdGggbm8gc2xhc2hlcyB0ZXN0JyAnCkBAIC0yNjUsNyArMjYyLDcgQEAKIAlnaXQgY2hlY2stYXR0ciBmb28gLS0gImEvYi9mIiA+PmFjdHVhbCAyPj5lcnIgJiYKIAlnaXQgY2hlY2stYXR0ciBmb28gLS0gImEvYi9jL2YiID4+YWN0dWFsIDI+PmVyciAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKLQl0ZXN0X2xpbmVfY291bnQgPSAwIGVycgorCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndXNpbmcgLS1naXQtZGlyIGFuZCAtLXdvcmstdHJlZScgJwpAQCAtMzIyLDQgKzMxOSwyNCBAQAogCSkKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnYmluYXJ5IG1hY3JvIGV4cGFuZGVkIGJ5IC1hJyAnCisJZWNobyAiZmlsZSBiaW5hcnkiID4uZ2l0YXR0cmlidXRlcyAmJgorCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlmaWxlOiBiaW5hcnk6IHNldAorCWZpbGU6IGRpZmY6IHVuc2V0CisJZmlsZTogbWVyZ2U6IHVuc2V0CisJZmlsZTogdGV4dDogdW5zZXQKKwlFT0YKKwlnaXQgY2hlY2stYXR0ciAtYSBmaWxlID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncXVlcnkgYmluYXJ5IG1hY3JvIGRpcmVjdGx5JyAnCisJZWNobyAiZmlsZSBiaW5hcnkiID4uZ2l0YXR0cmlidXRlcyAmJgorCWVjaG8gZmlsZTogYmluYXJ5OiBzZXQgPmV4cGVjdCAmJgorCWdpdCBjaGVjay1hdHRyIGJpbmFyeSBmaWxlID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MDAwNi1kYXRlLnNoIGIvdC90MDAwNi1kYXRlLnNoCmluZGV4IGZmYjI5NzUuLmQ5ZmNjODIgMTAwNzU1Ci0tLSBhL3QvdDAwMDYtZGF0ZS5zaAorKysgYi90L3QwMDA2LWRhdGUuc2gKQEAgLTQsMTAgKzQsMTAgQEAKIC4gLi90ZXN0LWxpYi5zaAogCiAjIGFyYml0cmFyeSByZWZlcmVuY2UgdGltZTogMjAwOS0wOC0zMCAxOToyMDowMAotVEVTVF9EQVRFX05PVz0xMjUxNjYwMDAwOyBleHBvcnQgVEVTVF9EQVRFX05PVworR0lUX1RFU1RfREFURV9OT1c9MTI1MTY2MDAwMDsgZXhwb3J0IEdJVF9URVNUX0RBVEVfTk9XCiAKIGNoZWNrX3JlbGF0aXZlKCkgewotCXQ9JCgoJFRFU1RfREFURV9OT1cgLSAkMSkpCisJdD0kKCgkR0lUX1RFU1RfREFURV9OT1cgLSAkMSkpCiAJZWNobyAiJHQgLT4gJDIiID5leHBlY3QKIAl0ZXN0X2V4cGVjdF8kezM6LXN1Y2Nlc3N9ICJyZWxhdGl2ZSBkYXRlICgkMikiICIKIAl0ZXN0LXRvb2wgZGF0ZSByZWxhdGl2ZSAkdCA+YWN0dWFsICYmCkBAIC0xMjgsNCArMTI4LDIyIEBACiBjaGVja19hcHByb3hpZGF0ZSAnMjAwOC0xMi0wMScgJzIwMDgtMTItMDEgMTk6MjA6MDAnCiBjaGVja19hcHByb3hpZGF0ZSAnMjAwOS0xMi0wMScgJzIwMDktMTItMDEgMTk6MjA6MDAnCiAKK2NoZWNrX2RhdGVfZm9ybWF0X2h1bWFuKCkgeworCXQ9JCgoJEdJVF9URVNUX0RBVEVfTk9XIC0gJDEpKQorCWVjaG8gIiR0IC0+ICQyIiA+ZXhwZWN0CisJdGVzdF9leHBlY3Rfc3VjY2VzcyAiaHVtYW4gZGF0ZSAkdCIgJworCQl0ZXN0LXRvb2wgZGF0ZSBodW1hbiAkdCA+YWN0dWFsICYmCisJCXRlc3RfaTE4bmNtcCBleHBlY3QgYWN0dWFsCisnCit9CisKK2NoZWNrX2RhdGVfZm9ybWF0X2h1bWFuIDE4MDAwICI1IGhvdXJzIGFnbyIgIyA1IGhvdXJzIGFnbworY2hlY2tfZGF0ZV9mb3JtYXRfaHVtYW4gNDMyMDAwICJUdWUgQXVnIDI1IDE5OjIwIiAjIDUgZGF5cyBhZ28KK2NoZWNrX2RhdGVfZm9ybWF0X2h1bWFuIDE3MjgwMDAgIk1vbiBBdWcgMTAgMTk6MjAiICMgMyB3ZWVrcyBhZ28KK2NoZWNrX2RhdGVfZm9ybWF0X2h1bWFuIDEzMDAwMDAwICJUaHUgQXByIDIgMDg6MTMiICMgNSBtb250aHMgYWdvCitjaGVja19kYXRlX2Zvcm1hdF9odW1hbiAzMTQ0OTYwMCAiQXVnIDMxIDIwMDgiICMgMTIgbW9udGhzIGFnbworY2hlY2tfZGF0ZV9mb3JtYXRfaHVtYW4gMzc1MDAwMDAgIkp1biAyMiAyMDA4IiAjIDEgeWVhciwgMiBtb250aHMgYWdvCitjaGVja19kYXRlX2Zvcm1hdF9odW1hbiA1NTE4ODAwMCAiRGVjIDEgMjAwNyIgIyAxIHllYXIsIDkgbW9udGhzIGFnbworY2hlY2tfZGF0ZV9mb3JtYXRfaHVtYW4gNjMwMDAwMDAwICJTZXAgMTMgMTk4OSIgIyAyMCB5ZWFycyBhZ28KKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QwMDA3LWdpdC12YXIuc2ggYi90L3QwMDA3LWdpdC12YXIuc2gKaW5kZXggNTg2OGE4Ny4uMWY2MDBlMiAxMDA3NTUKLS0tIGEvdC90MDAwNy1naXQtdmFyLnNoCisrKyBiL3QvdDAwMDctZ2l0LXZhci5zaApAQCAtMTcsNyArMTcsNyBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAhQVVUT0lERU5UICdyZXF1ZXN0ZWQgaWRlbnRpdGVzIGFyZSBzdHJpY3QnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgIUZBSUxfUFJFUkVRUywhQVVUT0lERU5UICdyZXF1ZXN0ZWQgaWRlbnRpdGVzIGFyZSBzdHJpY3QnICcKIAkoCiAJCXNhbmVfdW5zZXQgR0lUX0NPTU1JVFRFUl9OQU1FICYmCiAJCXNhbmVfdW5zZXQgR0lUX0NPTU1JVFRFUl9FTUFJTCAmJgpkaWZmIC0tZ2l0IGEvdC90MDAwOC1pZ25vcmVzLnNoIGIvdC90MDAwOC1pZ25vcmVzLnNoCmluZGV4IDE3NDRjZWUuLjM3MGEzODkgMTAwNzU1Ci0tLSBhL3QvdDAwMDgtaWdub3Jlcy5zaAorKysgYi90L3QwMDA4LWlnbm9yZXMuc2gKQEAgLTQyNCw5ICs0MjQsMjQgQEAKIAkpCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3NfbXVsdGkgJ25lc3RlZCBpbmNsdWRlJyBcCi0JJ2EvYi8uZ2l0aWdub3JlOjg6IW9uKglhL2Ivb25lJyAnCi0JdGVzdF9jaGVja19pZ25vcmUgImEvYi9vbmUiCit0ZXN0X2V4cGVjdF9zdWNjZXNzICduZXN0ZWQgaW5jbHVkZSBvZiBuZWdhdGVkIHBhdHRlcm4nICcKKwlleHBlY3QgIiIgJiYKKwl0ZXN0X2NoZWNrX2lnbm9yZSAiYS9iL29uZSIgMQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICduZXN0ZWQgaW5jbHVkZSBvZiBuZWdhdGVkIHBhdHRlcm4gd2l0aCAtcScgJworCWV4cGVjdCAiIiAmJgorCXRlc3RfY2hlY2tfaWdub3JlICItcSBhL2Ivb25lIiAxCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25lc3RlZCBpbmNsdWRlIG9mIG5lZ2F0ZWQgcGF0dGVybiB3aXRoIC12JyAnCisJZXhwZWN0ICJhL2IvLmdpdGlnbm9yZTo4OiFvbioJYS9iL29uZSIgJiYKKwl0ZXN0X2NoZWNrX2lnbm9yZSAiLXYgYS9iL29uZSIgMAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICduZXN0ZWQgaW5jbHVkZSBvZiBuZWdhdGVkIHBhdHRlcm4gd2l0aCAtdiAtbicgJworCWV4cGVjdCAiYS9iLy5naXRpZ25vcmU6ODohb24qCWEvYi9vbmUiICYmCisJdGVzdF9jaGVja19pZ25vcmUgIi12IC1uIGEvYi9vbmUiIDAKICcKIAogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpAQCAtNDYwLDcgKzQ3NSw2IEBACiAJZXhwZWN0X2Zyb21fc3RkaW4gPDwtXEVPRiAmJgogCQlmb28KIAkJdHdvb29vCi0JCS4uL29uZQogCQlzZXZlbgogCQkuLi8uLi9vbmUKIAlFT0YKQEAgLTU0Myw3ICs1NTcsNiBAQAogCQlnbG9iYWx0aHJlZQogCQlhL2dsb2JhbHRocmVlCiAJCWEvcGVyLXJlcG8KLQkJZ2xvYmFsdHdvCiAJRU9GCiAJdGVzdF9jaGVja19pZ25vcmUgImdsb2JhbG9uZSBwZXItcmVwbyBnbG9iYWx0aHJlZSBhL2dsb2JhbHRocmVlIGEvcGVyLXJlcG8gbm90LWlnbm9yZWQgZ2xvYmFsdHdvIgogJwpAQCAtNTg2LDE3ICs1OTksNyBAQAogY2F0IDw8LVxFT0YgPmV4cGVjdGVkLWRlZmF1bHQKIAlvbmUKIAlhL29uZQotCWEvYi9vbgotCWEvYi9vbmUKLQlhL2Ivb25lIG9uZQotCWEvYi9vbmUgdHdvCi0JImEvYi9vbmVcInRocmVlIgotCWEvYi90d28KIAlhL2IvdHdvb28KLQlnbG9iYWx0d28KLQlhL2dsb2JhbHR3bwotCWEvYi9nbG9iYWx0d28KLQliL2dsb2JhbHR3bwogRU9GCiBjYXQgPDwtRU9GID5leHBlY3RlZC12ZXJib3NlCiAJLmdpdGlnbm9yZToxOm9uZQlvbmUKQEAgLTY5Niw4ICs2OTksMTIgQEAKIAkkZ2xvYmFsX2V4Y2x1ZGVzOjI6IWdsb2JhbHR3bwkuLi9iL2dsb2JhbHR3bwogCTo6CWMvbm90LWlnbm9yZWQKIEVPRgorY2F0IDw8LUVPRiA+ZXhwZWN0ZWQtZGVmYXVsdAorLi4vb25lCitvbmUKK2IvdHdvb28KK0VPRgogZ3JlcCAtdiAnXjo6CScgZXhwZWN0ZWQtYWxsID5leHBlY3RlZC12ZXJib3NlCi1zZWQgLWUgJ3MvLioJLy8nIGV4cGVjdGVkLXZlcmJvc2UgPmV4cGVjdGVkLWRlZmF1bHQKIAogYnJva2VuX2NfdW5xdW90ZSBzdGRpbiA+c3RkaW4wCiAKZGlmZiAtLWdpdCBhL3QvdDAwMTEtaGFzaG1hcC5zaCBiL3QvdDAwMTEtaGFzaG1hcC5zaAppbmRleCAzZjFmNTA1Li41MzQzZmZkIDEwMDc1NQotLS0gYS90L3QwMDExLWhhc2htYXAuc2gKKysrIGIvdC90MDAxMS1oYXNobWFwLnNoCkBAIC05LDE1ICs5LDYgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiB9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2hhc2ggZnVuY3Rpb25zJyAnCi0KLXRlc3RfaGFzaG1hcCAiaGFzaCBrZXkxIiAiMjIxNTk4Mjc0MyAyMjE1OTgyNzQzIDExNjM3MjE1MSAxMTYzNzIxNTEiICYmCi10ZXN0X2hhc2htYXAgImhhc2gga2V5MiIgIjIyMTU5ODI3NDAgMjIxNTk4Mjc0MCAxMTYzNzIxNDggMTE2MzcyMTQ4IiAmJgotdGVzdF9oYXNobWFwICJoYXNoIGZvb0JhckZyb3R6IiAiMTM4MzkxMjgwNyAxMzgzOTEyODA3IDMxODk3NjY3MjcgMzE4OTc2NjcyNyIgJiYKLXRlc3RfaGFzaG1hcCAiaGFzaCBmb29iYXJmcm90eiIgIjI4NjIzMDU5NTkgMjg2MjMwNTk1OSAzMTg5NzY2NzI3IDMxODk3NjY3MjciCi0KLScKLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAncHV0JyAnCiAKIHRlc3RfaGFzaG1hcCAicHV0IGtleTEgdmFsdWUxCkBAIC0xNzksMzEgKzE3MCw0NSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdpdGVyYXRlJyAnCisJdGVzdC10b29sIGhhc2htYXAgPmFjdHVhbC5yYXcgPDwtXEVPRiAmJgorCXB1dCBrZXkxIHZhbHVlMQorCXB1dCBrZXkyIHZhbHVlMgorCXB1dCBmb29CYXJGcm90eiB2YWx1ZTMKKwlpdGVyYXRlCisJRU9GCiAKLXRlc3RfaGFzaG1hcCAicHV0IGtleTEgdmFsdWUxCi1wdXQga2V5MiB2YWx1ZTIKLXB1dCBmb29CYXJGcm90eiB2YWx1ZTMKLWl0ZXJhdGUiICJOVUxMCi1OVUxMCi1OVUxMCi1rZXkyIHZhbHVlMgota2V5MSB2YWx1ZTEKLWZvb0JhckZyb3R6IHZhbHVlMyIKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJTlVMTAorCU5VTEwKKwlOVUxMCisJZm9vQmFyRnJvdHogdmFsdWUzCisJa2V5MSB2YWx1ZTEKKwlrZXkyIHZhbHVlMgorCUVPRgogCisJc29ydCA8YWN0dWFsLnJhdyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdpdGVyYXRlIChjYXNlIGluc2Vuc2l0aXZlKScgJworCXRlc3QtdG9vbCBoYXNobWFwIGlnbm9yZWNhc2UgPmFjdHVhbC5yYXcgPDwtXEVPRiAmJgorCXB1dCBrZXkxIHZhbHVlMQorCXB1dCBrZXkyIHZhbHVlMgorCXB1dCBmb29CYXJGcm90eiB2YWx1ZTMKKwlpdGVyYXRlCisJRU9GCiAKLXRlc3RfaGFzaG1hcCAicHV0IGtleTEgdmFsdWUxCi1wdXQga2V5MiB2YWx1ZTIKLXB1dCBmb29CYXJGcm90eiB2YWx1ZTMKLWl0ZXJhdGUiICJOVUxMCi1OVUxMCi1OVUxMCi1mb29CYXJGcm90eiB2YWx1ZTMKLWtleTIgdmFsdWUyCi1rZXkxIHZhbHVlMSIgaWdub3JlY2FzZQorCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlOVUxMCisJTlVMTAorCU5VTEwKKwlmb29CYXJGcm90eiB2YWx1ZTMKKwlrZXkxIHZhbHVlMQorCWtleTIgdmFsdWUyCisJRU9GCiAKKwlzb3J0IDxhY3R1YWwucmF3ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dyb3cgLyBzaHJpbmsnICcKZGlmZiAtLWdpdCBhL3QvdDAwMTQtYWxpYXMuc2ggYi90L3QwMDE0LWFsaWFzLnNoCmluZGV4IGEwNzBlNjQuLjhkM2Q5MTQgMTAwNzU1Ci0tLSBhL3QvdDAwMTQtYWxpYXMuc2gKKysrIGIvdC90MDAxNC1hbGlhcy5zaApAQCAtMzcsNCArMzcsMTEgQEAKICMJdGVzdF9pMThuZ3JlcCAiXmZhdGFsOiBhbGlhcyBsb29wIGRldGVjdGVkOiBleHBhbnNpb24gb2YiIG91dHB1dAogIycKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncnVuLWNvbW1hbmQgZm9ybWF0cyBlbXB0eSBhcmdzIHByb3Blcmx5JyAnCisgICAgdGVzdF9tdXN0X2ZhaWwgZW52IEdJVF9UUkFDRT0xIGdpdCBmcm90eiBhICIiIGIgIiAiIGMgMj5hY3R1YWwucmF3ICYmCisgICAgc2VkIC1uZSAiL3J1bl9jb21tYW5kOi9zLy4qdHJhY2U6IHJ1bl9jb21tYW5kOiAvL3AiIGFjdHVhbC5yYXcgPmFjdHVhbCAmJgorICAgIGVjaG8gImdpdC1mcm90eiBhICdcJycnXCcnIGIgJ1wnJyAnXCcnIGMiID5leHBlY3QgJiYKKyAgICB0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MDAxNS1oYXNoLnNoIGIvdC90MDAxNS1oYXNoLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjI5MWU5MDYKLS0tIC9kZXYvbnVsbAorKysgYi90L3QwMDE1LWhhc2guc2gKQEAgLTAsMCArMSw1NSBAQAorIyEvYmluL3NoCisKK3Rlc3RfZGVzY3JpcHRpb249J3Rlc3QgYmFzaWMgaGFzaCBpbXBsZW1lbnRhdGlvbicKKy4gLi90ZXN0LWxpYi5zaAorCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Rlc3QgYmFzaWMgU0hBLTEgaGFzaCB2YWx1ZXMnICcKKwl0ZXN0LXRvb2wgc2hhMSA8L2Rldi9udWxsID5hY3R1YWwgJiYKKwlncmVwIGRhMzlhM2VlNWU2YjRiMGQzMjU1YmZlZjk1NjAxODkwYWZkODA3MDkgYWN0dWFsICYmCisJcHJpbnRmICJhIiB8IHRlc3QtdG9vbCBzaGExID5hY3R1YWwgJiYKKwlncmVwIDg2ZjdlNDM3ZmFhNWE3ZmNlMTVkMWRkY2I5ZWFlYWVhMzc3NjY3YjggYWN0dWFsICYmCisJcHJpbnRmICJhYmMiIHwgdGVzdC10b29sIHNoYTEgPmFjdHVhbCAmJgorCWdyZXAgYTk5OTNlMzY0NzA2ODE2YWJhM2UyNTcxNzg1MGMyNmM5Y2QwZDg5ZCBhY3R1YWwgJiYKKwlwcmludGYgIm1lc3NhZ2UgZGlnZXN0IiB8IHRlc3QtdG9vbCBzaGExID5hY3R1YWwgJiYKKwlncmVwIGMxMjI1MmNlZGE4YmU4OTk0ZDVmYTAyOTBhNDcyMzFjMWQxNmFhZTMgYWN0dWFsICYmCisJcHJpbnRmICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eiIgfCB0ZXN0LXRvb2wgc2hhMSA+YWN0dWFsICYmCisJZ3JlcCAzMmQxMGM3YjhjZjk2NTcwY2EwNGNlMzdmMmExOWQ4NDI0MGQzYTg5IGFjdHVhbCAmJgorCXBlcmwgLWUgIiR8ID0gMTsgcHJpbnQgcXthYWFhYWFhYWFhfSBmb3IgMS4uMTAwMDAwOyIgfCBcCisJCXRlc3QtdG9vbCBzaGExID5hY3R1YWwgJiYKKwlncmVwIDM0YWE5NzNjZDRjNGRhYTRmNjFlZWIyYmRiYWQyNzMxNjUzNDAxNmYgYWN0dWFsICYmCisJcHJpbnRmICJibG9iIDBcMCIgfCB0ZXN0LXRvb2wgc2hhMSA+YWN0dWFsICYmCisJZ3JlcCBlNjlkZTI5YmIyZDFkNjQzNGI4YjI5YWU3NzVhZDhjMmU0OGM1MzkxIGFjdHVhbCAmJgorCXByaW50ZiAiYmxvYiAzXDBhYmMiIHwgdGVzdC10b29sIHNoYTEgPmFjdHVhbCAmJgorCWdyZXAgZjJiYThmODRhYjVjMWJjZTg0YTdiNDQxY2IxOTU5Y2ZjNzA5M2I3ZiBhY3R1YWwgJiYKKwlwcmludGYgInRyZWUgMFwwIiB8IHRlc3QtdG9vbCBzaGExID5hY3R1YWwgJiYKKwlncmVwIDRiODI1ZGM2NDJjYjZlYjlhMDYwZTU0YmY4ZDY5Mjg4ZmJlZTQ5MDQgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Rlc3QgYmFzaWMgU0hBLTI1NiBoYXNoIHZhbHVlcycgJworCXRlc3QtdG9vbCBzaGEyNTYgPC9kZXYvbnVsbCA+YWN0dWFsICYmCisJZ3JlcCBlM2IwYzQ0Mjk4ZmMxYzE0OWFmYmY0Yzg5OTZmYjkyNDI3YWU0MWU0NjQ5YjkzNGNhNDk1OTkxYjc4NTJiODU1IGFjdHVhbCAmJgorCXByaW50ZiAiYSIgfCB0ZXN0LXRvb2wgc2hhMjU2ID5hY3R1YWwgJiYKKwlncmVwIGNhOTc4MTEyY2ExYmJkY2FmYWMyMzFiMzlhMjNkYzRkYTc4NmVmZjgxNDdjNGU3MmI5ODA3Nzg1YWZlZTQ4YmIgYWN0dWFsICYmCisJcHJpbnRmICJhYmMiIHwgdGVzdC10b29sIHNoYTI1NiA+YWN0dWFsICYmCisJZ3JlcCBiYTc4MTZiZjhmMDFjZmVhNDE0MTQwZGU1ZGFlMjIyM2IwMDM2MWEzOTYxNzdhOWNiNDEwZmY2MWYyMDAxNWFkIGFjdHVhbCAmJgorCXByaW50ZiAibWVzc2FnZSBkaWdlc3QiIHwgdGVzdC10b29sIHNoYTI1NiA+YWN0dWFsICYmCisJZ3JlcCBmNzg0NmY1NWNmMjNlMTRlZWJlYWI1YjRlMTU1MGNhZDViNTA5ZTMzNDhmYmM0ZWZhM2ExNDEzZDM5M2NiNjUwIGFjdHVhbCAmJgorCXByaW50ZiAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoiIHwgdGVzdC10b29sIHNoYTI1NiA+YWN0dWFsICYmCisJZ3JlcCA3MWM0ODBkZjkzZDZhZTJmMWVmYWQxNDQ3YzY2Yzk1MjVlMzE2MjE4Y2Y1MWZjOGQ5ZWQ4MzJmMmRhZjE4YjczIGFjdHVhbCAmJgorCSMgVHJ5IHRvIGV4ZXJjaXNlIHRoZSBjaHVua2luZyBjb2RlIGJ5IHR1cm5pbmcgYXV0b2ZsdXNoIG9uLgorCXBlcmwgLWUgIiR8ID0gMTsgcHJpbnQgcXthYWFhYWFhYWFhfSBmb3IgMS4uMTAwMDAwOyIgfCBcCisJCXRlc3QtdG9vbCBzaGEyNTYgPmFjdHVhbCAmJgorCWdyZXAgY2RjNzZlNWM5OTE0ZmI5MjgxYTFjN2UyODRkNzNlNjdmMTgwOWE0OGE0OTcyMDBlMDQ2ZDM5Y2NjNzExMmNkMCBhY3R1YWwgJiYKKwlwZXJsIC1lICIkfCA9IDE7IHByaW50IHF7YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp9IGZvciAxLi4xMDAwMDA7IiB8IFwKKwkJdGVzdC10b29sIHNoYTI1NiA+YWN0dWFsICYmCisJZ3JlcCBlNDA2YmEzMjFjYTcxMmFkMzVhNjk4YmYwYWY4ZDYxZmM0ZGM0MGVjYTZiZGNlYTQ2OTc5NjI3MjRjY2JkZTM1IGFjdHVhbCAmJgorCXByaW50ZiAiYmxvYiAwXDAiIHwgdGVzdC10b29sIHNoYTI1NiA+YWN0dWFsICYmCisJZ3JlcCA0NzNhMGY0YzNiZThhOTM2ODFhMjY3ZTNiMWU5YTdkY2RhMTE4NTQzNmZlMTQxZjc3NDkxMjBhMzAzNzIxODEzIGFjdHVhbCAmJgorCXByaW50ZiAiYmxvYiAzXDBhYmMiIHwgdGVzdC10b29sIHNoYTI1NiA+YWN0dWFsICYmCisJZ3JlcCBjMWNmNmU0NjUwNzc5MzBlODhkYzUxMzY2NDFkNDAyZjcyYTIyOWRkZDk5NmY2MjdkNjBlOTYzOWVhYmEzNWE2IGFjdHVhbCAmJgorCXByaW50ZiAidHJlZSAwXDAiIHwgdGVzdC10b29sIHNoYTI1NiA+YWN0dWFsICYmCisJZ3JlcCA2ZWYxOWI0MTIyNWM1MzY5ZjFjMTA0ZDQ1ZDhkODVlZmE5YjA1N2I1M2IxNGI0YjliOTM5ZGQ3NGRlY2M1MzIxIGFjdHVhbAorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDAwMTYtb2lkbWFwLnNoIGIvdC90MDAxNi1vaWRtYXAuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMzFmODI3NgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDAwMTYtb2lkbWFwLnNoCkBAIC0wLDAgKzEsMTEwIEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0ndGVzdCBvaWRtYXAnCisuIC4vdGVzdC1saWIuc2gKKworIyBUaGlzIHB1cnBvc2VmdWxseSBpcyB2ZXJ5IHNpbWlsYXIgdG8gdDAwMTEtaGFzaG1hcC5zaAorCit0ZXN0X29pZG1hcCAoKSB7CisJZWNobyAiJDEiIHwgdGVzdC10b29sIG9pZG1hcCAkMyA+YWN0dWFsICYmCisJZWNobyAiJDIiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCit9CisKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICcKKworCXRlc3RfY29tbWl0IG9uZSAmJgorCXRlc3RfY29tbWl0IHR3byAmJgorCXRlc3RfY29tbWl0IHRocmVlICYmCisJdGVzdF9jb21taXQgZm91cgorCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1dCcgJworCit0ZXN0X29pZG1hcCAicHV0IG9uZSAxCitwdXQgdHdvIDIKK3B1dCBpbnZhbGlkT2lkIDQKK3B1dCB0aHJlZSAzIiAiTlVMTAorTlVMTAorVW5rbm93biBvaWQ6IGludmFsaWRPaWQKK05VTEwiCisKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVwbGFjZScgJworCit0ZXN0X29pZG1hcCAicHV0IG9uZSAxCitwdXQgdHdvIDIKK3B1dCB0aHJlZSAzCitwdXQgaW52YWxpZE9pZCA0CitwdXQgdHdvIGRldXgKK3B1dCBvbmUgdW4iICJOVUxMCitOVUxMCitOVUxMCitVbmtub3duIG9pZDogaW52YWxpZE9pZAorMgorMSIKKworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnZXQnICcKKwordGVzdF9vaWRtYXAgInB1dCBvbmUgMQorcHV0IHR3byAyCitwdXQgdGhyZWUgMworZ2V0IHR3bworZ2V0IGZvdXIKK2dldCBpbnZhbGlkT2lkCitnZXQgb25lIiAiTlVMTAorTlVMTAorTlVMTAorMgorTlVMTAorVW5rbm93biBvaWQ6IGludmFsaWRPaWQKKzEiCisKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVtb3ZlJyAnCisKK3Rlc3Rfb2lkbWFwICJwdXQgb25lIDEKK3B1dCB0d28gMgorcHV0IHRocmVlIDMKK3JlbW92ZSBvbmUKK3JlbW92ZSB0d28KK3JlbW92ZSBpbnZhbGlkT2lkCityZW1vdmUgZm91ciIgIk5VTEwKK05VTEwKK05VTEwKKzEKKzIKK1Vua25vd24gb2lkOiBpbnZhbGlkT2lkCitOVUxMIgorCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2l0ZXJhdGUnICcKKwl0ZXN0LXRvb2wgb2lkbWFwID5hY3R1YWwucmF3IDw8LVxFT0YgJiYKKwlwdXQgb25lIDEKKwlwdXQgdHdvIDIKKwlwdXQgdGhyZWUgMworCWl0ZXJhdGUKKwlFT0YKKworCSMgc29ydCAiZXhwZWN0IiB0b28gc28gd2UgZG8gbm90IHJlbHkgb24gdGhlIG9yZGVyIG9mIHBhcnRpY3VsYXIgb2lkcworCXNvcnQgPmV4cGVjdCA8PC1FT0YgJiYKKwlOVUxMCisJTlVMTAorCU5VTEwKKwkkKGdpdCByZXYtcGFyc2Ugb25lKSAxCisJJChnaXQgcmV2LXBhcnNlIHR3bykgMgorCSQoZ2l0IHJldi1wYXJzZSB0aHJlZSkgMworCUVPRgorCisJc29ydCA8YWN0dWFsLnJhdyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDAwMTctZW52LWhlbHBlci5zaCBiL3QvdDAwMTctZW52LWhlbHBlci5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5jMWVjZjZhCi0tLSAvZGV2L251bGwKKysrIGIvdC90MDAxNy1lbnYtaGVscGVyLnNoCkBAIC0wLDAgKzEsOTkgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSd0ZXN0IGVudi0taGVscGVyJworCisuIC4vdGVzdC1saWIuc2gKKworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdlbnYtLWhlbHBlciB1c2FnZScgJworCXRlc3RfbXVzdF9mYWlsIGdpdCBlbnYtLWhlbHBlciAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBlbnYtLWhlbHBlciAtLXR5cGU9Ym9vbCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBlbnYtLWhlbHBlciAtLXR5cGU9dWxvbmcgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgZW52LS1oZWxwZXIgLS10eXBlPWJvb2wgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgZW52LS1oZWxwZXIgLS10eXBlPWJvb2wgLS1kZWZhdWx0ICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGVudi0taGVscGVyIC0tdHlwZT1ib29sIC0tZGVmYXVsdD0gJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgZW52LS1oZWxwZXIgLS1kZWZhdWx0eHl6CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Vudi0taGVscGVyIGJhZCBkZWZhdWx0IHZhbHVlcycgJworCXRlc3RfbXVzdF9mYWlsIGdpdCBlbnYtLWhlbHBlciAtLXR5cGU9Ym9vbCAtLWRlZmF1bHQ9MXh5eiBNSVNTSU5HICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGVudi0taGVscGVyIC0tdHlwZT11bG9uZyAtLWRlZmF1bHQ9MXh5eiBNSVNTSU5HCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Vudi0taGVscGVyIC0tdHlwZT1ib29sJyAnCisJIyBUZXN0IHZhcmlvdXMgLS1kZWZhdWx0IGJvb2wgdmFsdWVzCisJZWNobyB0cnVlID5leHBlY3RlZCAmJgorCWdpdCBlbnYtLWhlbHBlciAtLXR5cGU9Ym9vbCAtLWRlZmF1bHQ9MSBNSVNTSU5HID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwgJiYKKwlnaXQgZW52LS1oZWxwZXIgLS10eXBlPWJvb2wgLS1kZWZhdWx0PXllcyBNSVNTSU5HID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwgJiYKKwlnaXQgZW52LS1oZWxwZXIgLS10eXBlPWJvb2wgLS1kZWZhdWx0PXRydWUgTUlTU0lORyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsICYmCisJZWNobyBmYWxzZSA+ZXhwZWN0ZWQgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgZW52LS1oZWxwZXIgLS10eXBlPWJvb2wgLS1kZWZhdWx0PTAgTUlTU0lORyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGVudi0taGVscGVyIC0tdHlwZT1ib29sIC0tZGVmYXVsdD1ubyBNSVNTSU5HID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgZW52LS1oZWxwZXIgLS10eXBlPWJvb2wgLS1kZWZhdWx0PWZhbHNlIE1JU1NJTkcgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbCAmJgorCisJIyBObyBvdXRwdXQgd2l0aCAtLWV4aXQtY29kZQorCWdpdCBlbnYtLWhlbHBlciAtLXR5cGU9Ym9vbCAtLWRlZmF1bHQ9dHJ1ZSAtLWV4aXQtY29kZSBNSVNTSU5HID5hY3R1YWwub3V0IDI+YWN0dWFsLmVyciAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwub3V0ICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbC5lcnIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgZW52LS1oZWxwZXIgLS10eXBlPWJvb2wgLS1kZWZhdWx0PWZhbHNlIC0tZXhpdC1jb2RlIE1JU1NJTkcgPmFjdHVhbC5vdXQgMj5hY3R1YWwuZXJyICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbC5vdXQgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsLmVyciAmJgorCisJIyBFeGlzdGluZyB2YXJpYWJsZQorCUVYSVNUUz10cnVlIGdpdCBlbnYtLWhlbHBlciAtLXR5cGU9Ym9vbCAtLWRlZmF1bHQ9ZmFsc2UgLS1leGl0LWNvZGUgRVhJU1RTID5hY3R1YWwub3V0IDI+YWN0dWFsLmVyciAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwub3V0ICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbC5lcnIgJiYKKwl0ZXN0X211c3RfZmFpbCBcCisJCWVudiBFWElTVFM9ZmFsc2UgXAorCQlnaXQgZW52LS1oZWxwZXIgLS10eXBlPWJvb2wgLS1kZWZhdWx0PXRydWUgLS1leGl0LWNvZGUgRVhJU1RTID5hY3R1YWwub3V0IDI+YWN0dWFsLmVyciAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwub3V0ICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbC5lcnIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZW52LS1oZWxwZXIgLS10eXBlPXVsb25nJyAnCisJZWNobyAxMjM0NTY3ODkwID5leHBlY3RlZCAmJgorCWdpdCBlbnYtLWhlbHBlciAtLXR5cGU9dWxvbmcgLS1kZWZhdWx0PTEyMzQ1Njc4OTAgTUlTU0lORyA+YWN0dWFsLm91dCAyPmFjdHVhbC5lcnIgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwub3V0ICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbC5lcnIgJiYKKworCWVjaG8gMCA+ZXhwZWN0ZWQgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgZW52LS1oZWxwZXIgLS10eXBlPXVsb25nIC0tZGVmYXVsdD0wIE1JU1NJTkcgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbCAmJgorCisJZ2l0IGVudi0taGVscGVyIC0tdHlwZT11bG9uZyAtLWRlZmF1bHQ9MTIzNDU2Nzg5MCAtLWV4aXQtY29kZSBNSVNTSU5HID5hY3R1YWwub3V0IDI+YWN0dWFsLmVyciAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwub3V0ICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbC5lcnIgJiYKKworCUVYSVNUUz0xMjM0NTY3ODkwIGdpdCBlbnYtLWhlbHBlciAtLXR5cGU9dWxvbmcgLS1kZWZhdWx0PTAgRVhJU1RTIC0tZXhpdC1jb2RlID5hY3R1YWwub3V0IDI+YWN0dWFsLmVyciAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwub3V0ICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbC5lcnIgJiYKKworCWVjaG8gMTIzNDU2Nzg5MCA+ZXhwZWN0ZWQgJiYKKwlFWElTVFM9MTIzNDU2Nzg5MCBnaXQgZW52LS1oZWxwZXIgLS10eXBlPXVsb25nIC0tZGVmYXVsdD0wIEVYSVNUUyA+YWN0dWFsLm91dCAyPmFjdHVhbC5lcnIgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwub3V0ICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbC5lcnIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZW52LS1oZWxwZXIgcmVhZHMgY29uZmlnIHRoYW5rcyB0byB0cmFjZTInICcKKwlta2RpciBob21lICYmCisJZ2l0IGNvbmZpZyAtZiBob21lLy5naXRjb25maWcgaW5jbHVkZS5wYXRoIGN5Y2xlICYmCisJZ2l0IGNvbmZpZyAtZiBob21lL2N5Y2xlIGluY2x1ZGUucGF0aCAuZ2l0Y29uZmlnICYmCisKKwl0ZXN0X211c3RfZmFpbCBcCisJCWVudiBIT01FPSIkKHB3ZCkvaG9tZSIgR0lUX1RFU1RfR0VUVEVYVF9QT0lTT049ZmFsc2UgXAorCQlnaXQgY29uZmlnIC1sIDI+ZXJyICYmCisJZ3JlcCAiZXhjZWVkZWQgbWF4aW11bSBpbmNsdWRlIGRlcHRoIiBlcnIgJiYKKworCXRlc3RfbXVzdF9mYWlsIFwKKwkJZW52IEhPTUU9IiQocHdkKS9ob21lIiBHSVRfVEVTVF9HRVRURVhUX1BPSVNPTj10cnVlIFwKKwkJZ2l0IC1DIGN5Y2xlIGVudi0taGVscGVyIC0tdHlwZT1ib29sIC0tZGVmYXVsdD0wIC0tZXhpdC1jb2RlIEdJVF9URVNUX0dFVFRFWFRfUE9JU09OIDI+ZXJyICYmCisJZ3JlcCAiIyBHRVRURVhUIFBPSVNPTiAjIiBlcnIKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QwMDE4LWFkdmljZS5zaCBiL3QvdDAwMTgtYWR2aWNlLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmUwMzU1NGQKLS0tIC9kZXYvbnVsbAorKysgYi90L3QwMDE4LWFkdmljZS5zaApAQCAtMCwwICsxLDMyIEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0nVGVzdCBhZHZpc2VfaWZfZW5hYmxlZCBmdW5jdGlvbmFsaXR5JworCisuIC4vdGVzdC1saWIuc2gKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYWR2aWNlIHNob3VsZCBiZSBwcmludGVkIHdoZW4gY29uZmlnIHZhcmlhYmxlIGlzIHVuc2V0JyAnCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCWhpbnQ6IFRoaXMgaXMgYSBwaWVjZSBvZiBhZHZpY2UKKwloaW50OiBEaXNhYmxlIHRoaXMgbWVzc2FnZSB3aXRoICJnaXQgY29uZmlnIGFkdmljZS5uZXN0ZWRUYWcgZmFsc2UiCisJRU9GCisJdGVzdC10b29sIGFkdmlzZSAiVGhpcyBpcyBhIHBpZWNlIG9mIGFkdmljZSIgMj5hY3R1YWwgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhZHZpY2Ugc2hvdWxkIGJlIHByaW50ZWQgd2hlbiBjb25maWcgdmFyaWFibGUgaXMgc2V0IHRvIHRydWUnICcKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJaGludDogVGhpcyBpcyBhIHBpZWNlIG9mIGFkdmljZQorCWhpbnQ6IERpc2FibGUgdGhpcyBtZXNzYWdlIHdpdGggImdpdCBjb25maWcgYWR2aWNlLm5lc3RlZFRhZyBmYWxzZSIKKwlFT0YKKwl0ZXN0X2NvbmZpZyBhZHZpY2UubmVzdGVkVGFnIHRydWUgJiYKKwl0ZXN0LXRvb2wgYWR2aXNlICJUaGlzIGlzIGEgcGllY2Ugb2YgYWR2aWNlIiAyPmFjdHVhbCAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FkdmljZSBzaG91bGQgbm90IGJlIHByaW50ZWQgd2hlbiBjb25maWcgdmFyaWFibGUgaXMgc2V0IHRvIGZhbHNlJyAnCisJdGVzdF9jb25maWcgYWR2aWNlLm5lc3RlZFRhZyBmYWxzZSAmJgorCXRlc3QtdG9vbCBhZHZpc2UgIlRoaXMgaXMgYSBwaWVjZSBvZiBhZHZpY2UiIDI+YWN0dWFsICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbAorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDAwMjAtY3JsZi5zaCBiL3QvdDAwMjAtY3JsZi5zaAppbmRleCA4NTRkYTBhLi5iNjNiYTYyIDEwMDc1NQotLS0gYS90L3QwMDIwLWNybGYuc2gKKysrIGIvdC90MDAyMC1jcmxmLnNoCkBAIC0xNTksOCArMTU5LDggQEAKIAlybSAtZiB0bXAgb25lIGRpci90d28gdGhyZWUgJiYKIAlnaXQgY29uZmlnIGNvcmUuYXV0b2NybGYgaW5wdXQgJiYKIAlnaXQgcmVhZC10cmVlIC0tcmVzZXQgLXUgSEVBRCAmJgotCXRlc3RfbXVzdF9mYWlsIGhhc19jciBvbmUgJiYKLQl0ZXN0X211c3RfZmFpbCBoYXNfY3IgZGlyL3R3byAmJgorCSEgaGFzX2NyIG9uZSAmJgorCSEgaGFzX2NyIGRpci90d28gJiYKIAlnaXQgdXBkYXRlLWluZGV4IC0tIG9uZSBkaXIvdHdvICYmCiAJdGVzdCAiJG9uZSIgPSAkKGdpdCBoYXNoLW9iamVjdCAtLXN0ZGluIDxvbmUpICYmCiAJdGVzdCAiJHR3byIgPSAkKGdpdCBoYXNoLW9iamVjdCAtLXN0ZGluIDxkaXIvdHdvKSAmJgpAQCAtMjM3LDkgKzIzNyw5IEBACiAJZ2l0IGNvbmZpZyBjb3JlLmF1dG9jcmxmIHRydWUgJiYKIAlnaXQgcmVhZC10cmVlIC0tcmVzZXQgLXUgSEVBRCAmJgogCi0JdGVzdF9tdXN0X2ZhaWwgaGFzX2NyIGRpci90d28gJiYKKwkhIGhhc19jciBkaXIvdHdvICYmCiAJdmVyYm9zZSBoYXNfY3Igb25lICYmCi0JdGVzdF9tdXN0X2ZhaWwgaGFzX2NyIHRocmVlCisJISBoYXNfY3IgdGhyZWUKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnLmdpdGF0dHJpYnV0ZXMgc2F5cyB0d28gaXMgaW5wdXQnICcKQEAgLTI0OCw3ICsyNDgsNyBAQAogCWVjaG8gInR3byBjcmxmPWlucHV0IiA+LmdpdGF0dHJpYnV0ZXMgJiYKIAlnaXQgcmVhZC10cmVlIC0tcmVzZXQgLXUgSEVBRCAmJgogCi0JdGVzdF9tdXN0X2ZhaWwgaGFzX2NyIGRpci90d28KKwkhIGhhc19jciBkaXIvdHdvCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy5naXRhdHRyaWJ1dGVzIHNheXMgdHdvIGFuZCB0aHJlZSBhcmUgdGV4dCcgJwpAQCAtMjcwLDcgKzI3MCw3IEBACiAJcm0gLXJmIHRtcCBvbmUgZGlyIC5naXRhdHRyaWJ1dGVzIHBhdGNoLmZpbGUgdGhyZWUgJiYKIAlnaXQgcmVhZC10cmVlIC0tcmVzZXQgLXUgSEVBRCAmJgogCi0JdGVzdF9tdXN0X2ZhaWwgaGFzX2NyIG9uZSAmJgorCSEgaGFzX2NyIG9uZSAmJgogCXZlcmJvc2UgaGFzX2NyIHRocmVlCiAnCiAKQEAgLTI4MCw3ICsyODAsNyBAQAogCWdpdCByZWFkLXRyZWUgLS1yZXNldCBIRUFEICYmCiAJZ2l0IGNoZWNrb3V0LWluZGV4IC1mIC1xIC11IC1hICYmCiAKLQl0ZXN0X211c3RfZmFpbCBoYXNfY3Igb25lICYmCisJISBoYXNfY3Igb25lICYmCiAJdmVyYm9zZSBoYXNfY3IgdGhyZWUKICcKIApAQCAtMjkxLDcgKzI5MSw3IEBACiAJZ2l0IGNoZWNrb3V0LWluZGV4IC11IC5naXRhdHRyaWJ1dGVzICYmCiAJZ2l0IGNoZWNrb3V0LWluZGV4IC11IG9uZSBkaXIvdHdvIHRocmVlICYmCiAKLQl0ZXN0X211c3RfZmFpbCBoYXNfY3Igb25lICYmCisJISBoYXNfY3Igb25lICYmCiAJdmVyYm9zZSBoYXNfY3IgdGhyZWUKICcKIApAQCAtMzAyLDcgKzMwMiw3IEBACiAJZ2l0IGNoZWNrb3V0LWluZGV4IC11IG9uZSBkaXIvdHdvIHRocmVlICYmCiAJZ2l0IGNoZWNrb3V0LWluZGV4IC11IC5naXRhdHRyaWJ1dGVzICYmCiAKLQl0ZXN0X211c3RfZmFpbCBoYXNfY3Igb25lICYmCisJISBoYXNfY3Igb25lICYmCiAJdmVyYm9zZSBoYXNfY3IgdGhyZWUKICcKIApkaWZmIC0tZ2l0IGEvdC90MDAyMS1jb252ZXJzaW9uLnNoIGIvdC90MDAyMS1jb252ZXJzaW9uLnNoCmluZGV4IGZkNWYxYWMuLmRjNjY0ZGEgMTAwNzU1Ci0tLSBhL3QvdDAwMjEtY29udmVyc2lvbi5zaAorKysgYi90L3QwMDIxLWNvbnZlcnNpb24uc2gKQEAgLTI0LDcgKzI0LDcgQEAKIH0KIAogZmlsZV9zaXplICgpIHsKLQlwZXJsIC1lICdwcmludCAtcyAkQVJHVlswXScgIiQxIgorCXRlc3QtdG9vbCBwYXRoLXV0aWxzIGZpbGUtc2l6ZSAiJDEiCiB9CiAKIGZpbHRlcl9naXQgKCkgewpAQCAtMzUsNyArMzUsNyBAQAogIyBDb21wYXJlIHR3byBmaWxlcyBhbmQgZW5zdXJlIHRoYXQgYGNsZWFuYCBhbmQgYHNtdWRnZWAgcmVzcGVjdGl2ZWx5IGFyZQogIyBjYWxsZWQgYXQgbGVhc3Qgb25jZSBpZiBzcGVjaWZpZWQgaW4gdGhlIGBleHBlY3RgIGZpbGUuIFRoZSBhY3R1YWwKICMgaW52b2NhdGlvbiBjb3VudCBpcyBub3QgcmVsZXZhbnQgYmVjYXVzZSB0aGVpciBudW1iZXIgY2FuIHZhcnkuCi0jIGMuZi4gaHR0cDovL3B1YmxpYy1pbmJveC5vcmcvZ2l0L3htcXFzaHYxOGk4aS5mc2ZAZ2l0c3Rlci5tdHYuY29ycC5nb29nbGUuY29tLworIyBjLmYuIGh0dHA6Ly9sb3JlLmtlcm5lbC5vcmcvZ2l0L3htcXFzaHYxOGk4aS5mc2ZAZ2l0c3Rlci5tdHYuY29ycC5nb29nbGUuY29tLwogdGVzdF9jbXBfY291bnQgKCkgewogCWV4cGVjdD0kMQogCWFjdHVhbD0kMgpAQCAtNTAsNyArNTAsNyBAQAogCiAjIENvbXBhcmUgdHdvIGZpbGVzIGJ1dCBleGNsdWRlIGFsbCBgY2xlYW5gIGludm9jYXRpb25zIGJlY2F1c2UgR2l0IGNhbgogIyBjYWxsIGBjbGVhbmAgemVybyBvciBtb3JlIHRpbWVzLgotIyBjLmYuIGh0dHA6Ly9wdWJsaWMtaW5ib3gub3JnL2dpdC94bXFxc2h2MThpOGkuZnNmQGdpdHN0ZXIubXR2LmNvcnAuZ29vZ2xlLmNvbS8KKyMgYy5mLiBodHRwOi8vbG9yZS5rZXJuZWwub3JnL2dpdC94bXFxc2h2MThpOGkuZnNmQGdpdHN0ZXIubXR2LmNvcnAuZ29vZ2xlLmNvbS8KIHRlc3RfY21wX2V4Y2x1ZGVfY2xlYW4gKCkgewogCWV4cGVjdD0kMQogCWFjdHVhbD0kMgpAQCAtMzkwLDYgKzM5MCw5IEBACiAJCUVPRgogCQl0ZXN0X2NtcF9leGNsdWRlX2NsZWFuIGV4cGVjdGVkLmxvZyBkZWJ1Zy5sb2cgJiYKIAorCQkjIE1ha2Ugc3VyZSB0aGF0IHRoZSBmaWxlIGFwcGVhcnMgZGlydHksIHNvIGNoZWNrb3V0IGJlbG93IGhhcyB0bworCQkjIHJ1biB0aGUgY29uZmlndXJlZCBmaWx0ZXIuCisJCXRvdWNoIHRlc3QuciAmJgogCQlmaWx0ZXJfZ2l0IGNoZWNrb3V0IC0tcXVpZXQgLS1uby1wcm9ncmVzcyBlbXB0eS1icmFuY2ggJiYKIAkJY2F0ID5leHBlY3RlZC5sb2cgPDwtRU9GICYmCiAJCQlTVEFSVApAQCAtNzkyLDcgKzc5NSw2IEBACiAKIAlybSAtcmYgcmVwby1jbG9uZWQgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgY2xvbmUgcmVwbyByZXBvLWNsb25lZCAyPmdpdC1zdGRlcnIubG9nICYmCi0JY2F0IGdpdC1zdGRlcnIubG9nICYmCiAJZ3JlcCAiZXJyb3I6IC5taXNzaW5nLWRlbGF5XC5hLiB3YXMgbm90IGZpbHRlcmVkIHByb3Blcmx5IiBnaXQtc3RkZXJyLmxvZwogJwogCmRpZmYgLS1naXQgYS90L3QwMDI1LWNybGYtcmVub3JtYWxpemUuc2ggYi90L3QwMDI1LWNybGYtcmVub3JtYWxpemUuc2gKaW5kZXggOWQ5ZTAyYS4uZTEzMzYzYSAxMDA3NTUKLS0tIGEvdC90MDAyNS1jcmxmLXJlbm9ybWFsaXplLnNoCisrKyBiL3QvdDAwMjUtY3JsZi1yZW5vcm1hbGl6ZS5zaApAQCAtMjcsNCArMjcsMTMgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2lnbm9yZS1lcnJvcnMgbm90IG1pc3Rha2VuIGZvciByZW5vcm1hbGl6ZScgJworCWdpdCByZXNldCAtLWhhcmQgJiYKKwllY2hvICIqLnR4dCB0ZXh0PWF1dG8iID4uZ2l0YXR0cmlidXRlcyAmJgorCWdpdCBscy1maWxlcyAtLWVvbCA+ZXhwZWN0ICYmCisJZ2l0IGFkZCAtLWlnbm9yZS1lcnJvcnMgIioudHh0IiAmJgorCWdpdCBscy1maWxlcyAtLWVvbCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDAwMjctYXV0by1jcmxmLnNoIGIvdC90MDAyNy1hdXRvLWNybGYuc2gKaW5kZXggYmViNTkyNy4uOWZjZDU2ZiAxMDA3NTUKLS0tIGEvdC90MDAyNy1hdXRvLWNybGYuc2gKKysrIGIvdC90MDAyNy1hdXRvLWNybGYuc2gKQEAgLTE1LDggKzE1LDEwIEBACiAJcGZ4PSQxCiAJZXhwPSQyLmV4cGVjdAogCWFjdD0kcGZ4LmFjdHVhbC4kMwotCXRyICdcMDE1XDAwMGFiY2RlZjAxMjM0NTY3ODknIFFOMDAwMDAwMDAwMDAwMDAwMDAgPCIkMiIgPiIkZXhwIiAmJgotCXRyICdcMDE1XDAwMGFiY2RlZjAxMjM0NTY3ODknIFFOMDAwMDAwMDAwMDAwMDAwMDAgPCIkMyIgPiIkYWN0IiAmJgorCXRyICdcMDE1XDAwMGFiY2RlZjAxMjM0NTY3ODknIFFOMDAwMDAwMDAwMDAwMDAwMDAgPCIkMiIgfAorCQlzZWQgLWUgInMvMDAwMCovJFpFUk9fT0lELyIgPiIkZXhwIiAmJgorCXRyICdcMDE1XDAwMGFiY2RlZjAxMjM0NTY3ODknIFFOMDAwMDAwMDAwMDAwMDAwMDAgPCIkMyIgfAorCQlzZWQgLWUgInMvMDAwMCovJFpFUk9fT0lELyIgPiIkYWN0IiAmJgogCXRlc3RfY21wICIkZXhwIiAiJGFjdCIgJiYKIAlybSAiJGV4cCIgIiRhY3QiCiB9CkBAIC0yMTMsNyArMjE1LDcgQEAKIH0KIAogCi0jIGNvbnRydWN0IHRoZSBhdHRyLyByZXR1cm5lZCBieSBnaXQgbHMtZmlsZXMgLS1lb2wKKyMgY29uc3RydWN0IHRoZSBhdHRyLyByZXR1cm5lZCBieSBnaXQgbHMtZmlsZXMgLS1lb2wKICMgVGFrZSBub25lICg9ZW1wdHkpLCBvbmUgb3IgdHdvIGFyZ3MKICMgY29udmVydC5jOiBlb2w9WFggb3ZlcnJpZGVzIHRleHQ9YXV0bwogYXR0cl9hc2NpaSAoKSB7CkBAIC0yOTMsOSArMjk1LDkgQEAKIAlkbwogCQlybSBjcmxmX2ZhbHNlX2F0dHJfXyRmLnR4dCAmJgogCQlpZiB0ZXN0IC16ICIkY2VvbCI7IHRoZW4KLQkJCWdpdCBjaGVja291dCBjcmxmX2ZhbHNlX2F0dHJfXyRmLnR4dAorCQkJZ2l0IGNoZWNrb3V0IC0tIGNybGZfZmFsc2VfYXR0cl9fJGYudHh0CiAJCWVsc2UKLQkJCWdpdCAtYyBjb3JlLmVvbD0kY2VvbCBjaGVja291dCBjcmxmX2ZhbHNlX2F0dHJfXyRmLnR4dAorCQkJZ2l0IC1jIGNvcmUuZW9sPSRjZW9sIGNoZWNrb3V0IC0tIGNybGZfZmFsc2VfYXR0cl9fJGYudHh0CiAJCWZpCiAJZG9uZQogCmRpZmYgLS1naXQgYS90L3QwMDI4LXdvcmtpbmctdHJlZS1lbmNvZGluZy5zaCBiL3QvdDAwMjgtd29ya2luZy10cmVlLWVuY29kaW5nLnNoCmluZGV4IDdlODdiNWEuLmJmYzRmYjkgMTAwNzU1Ci0tLSBhL3QvdDAwMjgtd29ya2luZy10cmVlLWVuY29kaW5nLnNoCisrKyBiL3QvdDAwMjgtd29ya2luZy10cmVlLWVuY29kaW5nLnNoCkBAIC02LDE0ICs2LDQxIEBACiAKIEdJVF9UUkFDRV9XT1JLSU5HX1RSRUVfRU5DT0RJTkc9MSAmJiBleHBvcnQgR0lUX1RSQUNFX1dPUktJTkdfVFJFRV9FTkNPRElORwogCit0ZXN0X2xhenlfcHJlcmVxIE5PX1VURjE2X0JPTSAnCisJdGVzdCAkKHByaW50ZiBhYmMgfCBpY29udiAtZiBVVEYtOCAtdCBVVEYtMTYgfCB3YyAtYykgPSA2CisnCisKK3Rlc3RfbGF6eV9wcmVyZXEgTk9fVVRGMzJfQk9NICcKKwl0ZXN0ICQocHJpbnRmIGFiYyB8IGljb252IC1mIFVURi04IC10IFVURi0zMiB8IHdjIC1jKSA9IDEyCisnCisKK3dyaXRlX3V0ZjE2ICgpIHsKKwlpZiB0ZXN0X2hhdmVfcHJlcmVxIE5PX1VURjE2X0JPTQorCXRoZW4KKwkJcHJpbnRmICdcMzc2XDM3NycKKwlmaSAmJgorCWljb252IC1mIFVURi04IC10IFVURi0xNgorfQorCit3cml0ZV91dGYzMiAoKSB7CisJaWYgdGVzdF9oYXZlX3ByZXJlcSBOT19VVEYzMl9CT00KKwl0aGVuCisJCXByaW50ZiAnXDBcMFwzNzZcMzc3JworCWZpICYmCisJaWNvbnYgLWYgVVRGLTggLXQgVVRGLTMyCit9CisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHRlc3QgZmlsZXMnICcKIAlnaXQgY29uZmlnIGNvcmUuZW9sIGxmICYmCiAKIAl0ZXh0PSJoYWxsbyB0aGVyZSFcbmNhbiB5b3UgcmVhZCBtZT8iICYmCiAJZWNobyAiKi51dGYxNiB0ZXh0IHdvcmtpbmctdHJlZS1lbmNvZGluZz11dGYtMTYiID4uZ2l0YXR0cmlidXRlcyAmJgorCWVjaG8gIioudXRmMTZsZWJvbSB0ZXh0IHdvcmtpbmctdHJlZS1lbmNvZGluZz1VVEYtMTZMRS1CT00iID4+LmdpdGF0dHJpYnV0ZXMgJiYKIAlwcmludGYgIiR0ZXh0IiA+dGVzdC51dGY4LnJhdyAmJgotCXByaW50ZiAiJHRleHQiIHwgaWNvbnYgLWYgVVRGLTggLXQgVVRGLTE2ID50ZXN0LnV0ZjE2LnJhdyAmJgotCXByaW50ZiAiJHRleHQiIHwgaWNvbnYgLWYgVVRGLTggLXQgVVRGLTMyID50ZXN0LnV0ZjMyLnJhdyAmJgorCXByaW50ZiAiJHRleHQiIHwgd3JpdGVfdXRmMTYgPnRlc3QudXRmMTYucmF3ICYmCisJcHJpbnRmICIkdGV4dCIgfCB3cml0ZV91dGYzMiA+dGVzdC51dGYzMi5yYXcgJiYKKwlwcmludGYgIlwzNzdcMzc2IiAgICAgICAgICAgICAgICAgICAgICAgICA+dGVzdC51dGYxNmxlYm9tLnJhdyAmJgorCXByaW50ZiAiJHRleHQiIHwgaWNvbnYgLWYgVVRGLTggLXQgVVRGLTE2TEUgPj50ZXN0LnV0ZjE2bGVib20ucmF3ICYmCiAKIAkjIExpbmUgZW5kaW5nIHRlc3RzCiAJcHJpbnRmICJvbmVcbnR3b1xudGhyZWVcbiIgPmxmLnV0ZjgucmF3ICYmCkBAIC0yMiwxNyArNDksMTggQEAKIAkjIEJPTSB0ZXN0cwogCXByaW50ZiAiXDBhXDBiXDBjIiAgICAgICAgICAgICAgICAgICAgICAgICA+bm9ib20udXRmMTZiZS5yYXcgJiYKIAlwcmludGYgImFcMGJcMGNcMCIgICAgICAgICAgICAgICAgICAgICAgICAgPm5vYm9tLnV0ZjE2bGUucmF3ICYmCi0JcHJpbnRmICJcMzc2XDc3N1wwYVwwYlwwYyIgICAgICAgICAgICAgICAgID5iZWJvbS51dGYxNmJlLnJhdyAmJgotCXByaW50ZiAiXDc3N1wzNzZhXDBiXDBjXDAiICAgICAgICAgICAgICAgICA+bGVib20udXRmMTZsZS5yYXcgJiYKKwlwcmludGYgIlwzNzZcMzc3XDBhXDBiXDBjIiAgICAgICAgICAgICAgICAgPmJlYm9tLnV0ZjE2YmUucmF3ICYmCisJcHJpbnRmICJcMzc3XDM3NmFcMGJcMGNcMCIgICAgICAgICAgICAgICAgID5sZWJvbS51dGYxNmxlLnJhdyAmJgogCXByaW50ZiAiXDBcMFwwYVwwXDBcMGJcMFwwXDBjIiAgICAgICAgICAgICA+bm9ib20udXRmMzJiZS5yYXcgJiYKIAlwcmludGYgImFcMFwwXDBiXDBcMFwwY1wwXDBcMCIgICAgICAgICAgICAgPm5vYm9tLnV0ZjMybGUucmF3ICYmCi0JcHJpbnRmICJcMFwwXDM3Nlw3NzdcMFwwXDBhXDBcMFwwYlwwXDBcMGMiID5iZWJvbS51dGYzMmJlLnJhdyAmJgotCXByaW50ZiAiXDc3N1wzNzZcMFwwYVwwXDBcMGJcMFwwXDBjXDBcMFwwIiA+bGVib20udXRmMzJsZS5yYXcgJiYKKwlwcmludGYgIlwwXDBcMzc2XDM3N1wwXDBcMGFcMFwwXDBiXDBcMFwwYyIgPmJlYm9tLnV0ZjMyYmUucmF3ICYmCisJcHJpbnRmICJcMzc3XDM3NlwwXDBhXDBcMFwwYlwwXDBcMGNcMFwwXDAiID5sZWJvbS51dGYzMmxlLnJhdyAmJgogCiAJIyBBZGQgb25seSBVVEYtMTYgZmlsZSwgd2Ugd2lsbCBhZGQgdGhlIFVURi0zMiBmaWxlIGxhdGVyCiAJY3AgdGVzdC51dGYxNi5yYXcgdGVzdC51dGYxNiAmJgogCWNwIHRlc3QudXRmMzIucmF3IHRlc3QudXRmMzIgJiYKLQlnaXQgYWRkIC5naXRhdHRyaWJ1dGVzIHRlc3QudXRmMTYgJiYKKwljcCB0ZXN0LnV0ZjE2bGVib20ucmF3IHRlc3QudXRmMTZsZWJvbSAmJgorCWdpdCBhZGQgLmdpdGF0dHJpYnV0ZXMgdGVzdC51dGYxNiB0ZXN0LnV0ZjE2bGVib20gJiYKIAlnaXQgY29tbWl0IC1tIGluaXRpYWwKICcKIApAQCAtNTEsNiArNzksMTIgQEAKIAl0ZXN0X2NtcF9iaW4gdGVzdC51dGYxNi5yYXcgdGVzdC51dGYxNgogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZS1lbmNvZGUgdG8gVVRGLTE2LUxFLUJPTSBvbiBjaGVja291dCcgJworCXJtIHRlc3QudXRmMTZsZWJvbSAmJgorCWdpdCBjaGVja291dCB0ZXN0LnV0ZjE2bGVib20gJiYKKwl0ZXN0X2NtcF9iaW4gdGVzdC51dGYxNmxlYm9tLnJhdyB0ZXN0LnV0ZjE2bGVib20KKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2sgJEdJVF9ESVIvaW5mby9hdHRyaWJ1dGVzIHN1cHBvcnQnICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIHRlc3QudXRmMzIuZ2l0IiAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCBIRUFEIiAmJgpAQCAtMTE0LDggKzE0OCw4IEBACiAJCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgY3JsZi51dGYke2l9LnJhdyBsZi51dGYke2l9LnJhdyIgJiYKIAkJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVzZXQgLS1oYXJkIEhFQUReIiAmJgogCi0JCWNhdCBsZi51dGY4LnJhdyB8IGljb252IC1mIFVURi04IC10IFVURi0ke2l9ID5sZi51dGYke2l9LnJhdyAmJgotCQljYXQgY3JsZi51dGY4LnJhdyB8IGljb252IC1mIFVURi04IC10IFVURi0ke2l9ID5jcmxmLnV0ZiR7aX0ucmF3ICYmCisJCWNhdCBsZi51dGY4LnJhdyB8IHdyaXRlX3V0ZiR7aX0gPmxmLnV0ZiR7aX0ucmF3ICYmCisJCWNhdCBjcmxmLnV0ZjgucmF3IHwgd3JpdGVfdXRmJHtpfSA+Y3JsZi51dGYke2l9LnJhdyAmJgogCQljcCBjcmxmLnV0ZiR7aX0ucmF3IGVvbC51dGYke2l9ICYmCiAKIAkJY2F0ID5leHBlY3RJbmRleExGIDw8LUVPRiAmJgpAQCAtMjEzLDcgKzI0Nyw3IEBACiAKIAl0ZXh0PSJoYWxsbyB0aGVyZSFcbnJvdW5kdHJpcCB0ZXN0IGhlcmUhIiAmJgogCXByaW50ZiAiJHRleHQiIHwgaWNvbnYgLWYgVVRGLTggLXQgU0hJRlQtSklTID5yb3VuZHRyaXAuc2hpZnQgJiYKLQlwcmludGYgIiR0ZXh0IiB8IGljb252IC1mIFVURi04IC10IFVURi0xNiA+cm91bmR0cmlwLnV0ZjE2ICYmCisJcHJpbnRmICIkdGV4dCIgfCB3cml0ZV91dGYxNiA+cm91bmR0cmlwLnV0ZjE2ICYmCiAJZWNobyAiKi5zaGlmdCB0ZXh0IHdvcmtpbmctdHJlZS1lbmNvZGluZz1TSElGVC1KSVMiID4+LmdpdGF0dHJpYnV0ZXMgJiYKIAogCSMgU0hJRlQtSklTIGVuY29kZWQgZmlsZXMgYXJlIHJvdW5kLXRyaXAgY2hlY2tlZCBieSBkZWZhdWx0Li4uCkBAIC0yNDYsNCArMjgwLDQzIEBACiAJZ2l0IHJlc2V0CiAnCiAKKyMgJDE6IGNoZWNrb3V0IGVuY29kaW5nCisjICQyOiB0ZXN0IHN0cmluZworIyAkMzogYmluYXJ5IHRlc3Qgc3RyaW5nIGluIGNoZWNrb3V0IGVuY29kaW5nCit0ZXN0X2NvbW1pdF91dGY4X2NoZWNrb3V0X290aGVyICgpIHsKKwllbmNvZGluZz0iJDEiCisJb3JpZ19zdHJpbmc9IiQyIgorCWV4cGVjdF9ieXRlcz0iJDMiCisKKwl0ZXN0X2V4cGVjdF9zdWNjZXNzICJDb21taXQgVVRGLTgsIGNoZWNrb3V0ICRlbmNvZGluZyIgJworCQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCBjaGVja291dCBIRUFEIC0tIC5naXRhdHRyaWJ1dGVzIiAmJgorCisJCXRlc3RfZXh0PSJjb21taXRfdXRmOF9jaGVja291dF8kZW5jb2RpbmciICYmCisJCXRlc3RfZmlsZT0idGVzdC4kdGVzdF9leHQiICYmCisKKwkJIyBDb21taXQgYXMgVVRGLTgKKwkJZWNobyAiKi4kdGVzdF9leHQgdGV4dCB3b3JraW5nLXRyZWUtZW5jb2Rpbmc9VVRGLTgiID4uZ2l0YXR0cmlidXRlcyAmJgorCQlwcmludGYgIiRvcmlnX3N0cmluZyIgPiR0ZXN0X2ZpbGUgJiYKKwkJZ2l0IGFkZCAkdGVzdF9maWxlICYmCisJCWdpdCBjb21taXQgLW0gIlRlc3QgZGF0YSIgJiYKKworCQkjIENoZWNrb3V0IGluIHRlc3RlZCBlbmNvZGluZworCQlybSAkdGVzdF9maWxlICYmCisJCWVjaG8gIiouJHRlc3RfZXh0IHRleHQgd29ya2luZy10cmVlLWVuY29kaW5nPSRlbmNvZGluZyIgPi5naXRhdHRyaWJ1dGVzICYmCisJCWdpdCBjaGVja291dCBIRUFEIC0tICR0ZXN0X2ZpbGUgJiYKKworCQkjIFRlc3QKKwkJcHJpbnRmICRleHBlY3RfYnl0ZXMgPiR0ZXN0X2ZpbGUucmF3ICYmCisJCXRlc3RfY21wX2JpbiAkdGVzdF9maWxlLnJhdyAkdGVzdF9maWxlCisJJworfQorCit0ZXN0X2NvbW1pdF91dGY4X2NoZWNrb3V0X290aGVyICJVVEYtOCIgICAgICAgICJUZXN0INCi0LXRgdGCIiAiXDEyNFwxNDVcMTYzXDE2NFwwNDBcMzIwXDI0MlwzMjBcMjY1XDMyMVwyMDFcMzIxXDIwMiIKK3Rlc3RfY29tbWl0X3V0ZjhfY2hlY2tvdXRfb3RoZXIgIlVURi0xNkxFIiAgICAgIlRlc3Qg0KLQtdGB0YIiICJcMTI0XDAwMFwxNDVcMDAwXDE2M1wwMDBcMTY0XDAwMFwwNDBcMDAwXDA0MlwwMDRcMDY1XDAwNFwxMDFcMDA0XDEwMlwwMDQiCit0ZXN0X2NvbW1pdF91dGY4X2NoZWNrb3V0X290aGVyICJVVEYtMTZCRSIgICAgICJUZXN0INCi0LXRgdGCIiAiXDAwMFwxMjRcMDAwXDE0NVwwMDBcMTYzXDAwMFwxNjRcMDAwXDA0MFwwMDRcMDQyXDAwNFwwNjVcMDA0XDEwMVwwMDRcMTAyIgordGVzdF9jb21taXRfdXRmOF9jaGVja291dF9vdGhlciAiVVRGLTE2TEUtQk9NIiAiVGVzdCDQotC10YHRgiIgIlwzNzdcMzc2XDEyNFwwMDBcMTQ1XDAwMFwxNjNcMDAwXDE2NFwwMDBcMDQwXDAwMFwwNDJcMDA0XDA2NVwwMDRcMTAxXDAwNFwxMDJcMDA0IgordGVzdF9jb21taXRfdXRmOF9jaGVja291dF9vdGhlciAiVVRGLTE2QkUtQk9NIiAiVGVzdCDQotC10YHRgiIgIlwzNzZcMzc3XDAwMFwxMjRcMDAwXDE0NVwwMDBcMTYzXDAwMFwxNjRcMDAwXDA0MFwwMDRcMDQyXDAwNFwwNjVcMDA0XDEwMVwwMDRcMTAyIgordGVzdF9jb21taXRfdXRmOF9jaGVja291dF9vdGhlciAiVVRGLTMyTEUiICAgICAiVGVzdCDQotC10YHRgiIgIlwxMjRcMDAwXDAwMFwwMDBcMTQ1XDAwMFwwMDBcMDAwXDE2M1wwMDBcMDAwXDAwMFwxNjRcMDAwXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDA0MlwwMDRcMDAwXDAwMFwwNjVcMDA0XDAwMFwwMDBcMTAxXDAwNFwwMDBcMDAwXDEwMlwwMDRcMDAwXDAwMCIKK3Rlc3RfY29tbWl0X3V0ZjhfY2hlY2tvdXRfb3RoZXIgIlVURi0zMkJFIiAgICAgIlRlc3Qg0KLQtdGB0YIiICJcMDAwXDAwMFwwMDBcMTI0XDAwMFwwMDBcMDAwXDE0NVwwMDBcMDAwXDAwMFwxNjNcMDAwXDAwMFwwMDBcMTY0XDAwMFwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwNFwwNDJcMDAwXDAwMFwwMDRcMDY1XDAwMFwwMDBcMDA0XDEwMVwwMDBcMDAwXDAwNFwxMDIiCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MDAzMC1zdHJpcHNwYWNlLnNoIGIvdC90MDAzMC1zdHJpcHNwYWNlLnNoCmluZGV4IDVjZTQ3ZTguLjBjMjRhMGYgMTAwNzU1Ci0tLSBhL3QvdDAwMzAtc3RyaXBzcGFjZS5zaAorKysgYi90L3QwMDMwLXN0cmlwc3BhY2Uuc2gKQEAgLTQzMCw5ICs0MzAsMTUgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy1jIHdpdGggY29tbWVudCBjaGFyIGRlZmluZWQgaW4gLmdpdC9jb25maWcnICcKIAl0ZXN0X2NvbmZpZyBjb3JlLmNvbW1lbnRjaGFyID0gJiYKIAlwcmludGYgIj0gZm9vXG4iID5leHBlY3QgJiYKLQlwcmludGYgImZvbyIgfCAoCi0JCW1rZGlyIHN1YiAmJiBjZCBzdWIgJiYgZ2l0IHN0cmlwc3BhY2UgLWMKLQkpID5hY3R1YWwgJiYKKwlybSAtZnIgc3ViICYmCisJbWtkaXIgc3ViICYmCisJcHJpbnRmICJmb28iIHwgZ2l0IC1DIHN1YiBzdHJpcHNwYWNlIC1jID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy1jIG91dHNpZGUgZ2l0IHJlcG9zaXRvcnknICcKKwlwcmludGYgIiMgZm9vXG4iID5leHBlY3QgJiYKKwlwcmludGYgImZvbyIgfCBub25naXQgZ2l0IHN0cmlwc3BhY2UgLWMgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIApkaWZmIC0tZ2l0IGEvdC90MDA0MC1wYXJzZS1vcHRpb25zLnNoIGIvdC90MDA0MC1wYXJzZS1vcHRpb25zLnNoCmluZGV4IGY1YjEwODYuLjM0ODNiNzIgMTAwNzU1Ci0tLSBhL3QvdDAwNDAtcGFyc2Utb3B0aW9ucy5zaAorKysgYi90L3QwMDQwLXBhcnNlLW9wdGlvbnMuc2gKQEAgLTIzLDYgKzIzLDggQEAKICAgICAtaiA8bj4gICAgICAgICAgICAgICAgZ2V0IGEgaW50ZWdlciwgdG9vCiAgICAgLW0sIC0tbWFnbml0dWRlIDxuPiAgIGdldCBhIG1hZ25pdHVkZQogICAgIC0tc2V0MjMgICAgICAgICAgICAgICBzZXQgaW50ZWdlciB0byAyMworICAgIC0tbW9kZTEgICAgICAgICAgICAgICBzZXQgaW50ZWdlciB0byAxIChjbWRtb2RlIG9wdGlvbikKKyAgICAtLW1vZGUyICAgICAgICAgICAgICAgc2V0IGludGVnZXIgdG8gMiAoY21kbW9kZSBvcHRpb24pCiAgICAgLUwsIC0tbGVuZ3RoIDxzdHI+ICAgIGdldCBsZW5ndGggb2YgPHN0cj4KICAgICAtRiwgLS1maWxlIDxmaWxlPiAgICAgc2V0IGZpbGUgdG8gPGZpbGU+CiAKQEAgLTQ4LDYgKzUwLDEyIEBACiAgICAgLXEsIC0tcXVpZXQgICAgICAgICAgIGJlIHF1aWV0CiAgICAgLS1leHBlY3QgPHN0cmluZz4gICAgIGV4cGVjdGVkIG91dHB1dCBpbiB0aGUgdmFyaWFibGUgZHVtcAogCitBbGlhcworICAgIC1BLCAtLWFsaWFzLXNvdXJjZSA8c3RyaW5nPgorICAgICAgICAgICAgICAgICAgICAgICAgICBnZXQgYSBzdHJpbmcKKyAgICAtWiwgLS1hbGlhcy10YXJnZXQgPHN0cmluZz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0IGEgc3RyaW5nCisKIEVPRgogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd0ZXN0IGhlbHAnICcKQEAgLTIwMyw0MSArMjExLDU2IEBACiBFT0YKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndW5hbWJpZ3VvdXNseSBhYmJyZXZpYXRlZCBvcHRpb24nICcKKwlHSVRfVEVTVF9ESVNBTExPV19BQkJSRVZJQVRFRF9PUFRJT05TPWZhbHNlIFwKIAl0ZXN0LXRvb2wgcGFyc2Utb3B0aW9ucyAtLWludCAyIC0tYm9vbGVhbiAtLW5vLWJvID5vdXRwdXQgMj5vdXRwdXQuZXJyICYmCiAJdGVzdF9tdXN0X2JlX2VtcHR5IG91dHB1dC5lcnIgJiYKIAl0ZXN0X2NtcCBleHBlY3Qgb3V0cHV0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3VuYW1iaWd1b3VzbHkgYWJicmV2aWF0ZWQgb3B0aW9uIHdpdGggIj0iJyAnCisJR0lUX1RFU1RfRElTQUxMT1dfQUJCUkVWSUFURURfT1BUSU9OUz1mYWxzZSBcCiAJdGVzdC10b29sIHBhcnNlLW9wdGlvbnMgLS1leHBlY3Q9ImludGVnZXI6IDIiIC0taW50PTIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYW1iaWd1b3VzbHkgYWJicmV2aWF0ZWQgb3B0aW9uJyAnCi0JdGVzdF9leHBlY3RfY29kZSAxMjkgdGVzdC10b29sIHBhcnNlLW9wdGlvbnMgLS1zdHJpbiAxMjMKKwl0ZXN0X2V4cGVjdF9jb2RlIDEyOSBlbnYgR0lUX1RFU1RfRElTQUxMT1dfQUJCUkVWSUFURURfT1BUSU9OUz1mYWxzZSBcCisJdGVzdC10b29sIHBhcnNlLW9wdGlvbnMgLS1zdHJpbiAxMjMKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbm9uIGFtYmlndW91cyBvcHRpb24gKGFmdGVyIHR3byBvcHRpb25zIGl0IGFiYnJldmlhdGVzKScgJworCUdJVF9URVNUX0RJU0FMTE9XX0FCQlJFVklBVEVEX09QVElPTlM9ZmFsc2UgXAogCXRlc3QtdG9vbCBwYXJzZS1vcHRpb25zIC0tZXhwZWN0PSJzdHJpbmc6IDEyMyIgLS1zdCAxMjMKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnQWxpYXMgb3B0aW9ucyBkbyBub3QgY29udHJpYnV0ZSB0byBhYmJyZXZpYXRpb24nICcKKwl0ZXN0LXRvb2wgcGFyc2Utb3B0aW9ucyAtLWFsaWFzLXNvdXJjZSAxMjMgPm91dHB1dCAmJgorCWdyZXAgIl5zdHJpbmc6IDEyMyIgb3V0cHV0ICYmCisJdGVzdC10b29sIHBhcnNlLW9wdGlvbnMgLS1hbGlhcy10YXJnZXQgMTIzID5vdXRwdXQgJiYKKwlncmVwICJec3RyaW5nOiAxMjMiIG91dHB1dCAmJgorCXRlc3RfbXVzdF9mYWlsIHRlc3QtdG9vbCBwYXJzZS1vcHRpb25zIC0tYWxpYXMgJiYKKwlHSVRfVEVTVF9ESVNBTExPV19BQkJSRVZJQVRFRF9PUFRJT05TPWZhbHNlIFwKKwl0ZXN0LXRvb2wgcGFyc2Utb3B0aW9ucyAtLWFsaWFzIDEyMyA+b3V0cHV0ICYmCisJZ3JlcCAiXnN0cmluZzogMTIzIiBvdXRwdXQKKycKKwogY2F0ID50eXBvLmVyciA8PFxFT0YKLWVycm9yOiBkaWQgeW91IG1lYW4gYC0tYm9vbGVhbmAgKHdpdGggdHdvIGRhc2hlcyA/KQorZXJyb3I6IGRpZCB5b3UgbWVhbiBgLS1ib29sZWFuYCAod2l0aCB0d28gZGFzaGVzKT8KIEVPRgogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZXRlY3QgcG9zc2libGUgdHlwb3MnICcKIAl0ZXN0X211c3RfZmFpbCB0ZXN0LXRvb2wgcGFyc2Utb3B0aW9ucyAtYm9vbGVhbiA+b3V0cHV0IDI+b3V0cHV0LmVyciAmJgogCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXRwdXQgJiYKLQl0ZXN0X2NtcCB0eXBvLmVyciBvdXRwdXQuZXJyCisJdGVzdF9pMThuY21wIHR5cG8uZXJyIG91dHB1dC5lcnIKICcKIAogY2F0ID50eXBvLmVyciA8PFxFT0YKLWVycm9yOiBkaWQgeW91IG1lYW4gYC0tYW1iaWd1b3VzYCAod2l0aCB0d28gZGFzaGVzID8pCitlcnJvcjogZGlkIHlvdSBtZWFuIGAtLWFtYmlndW91c2AgKHdpdGggdHdvIGRhc2hlcyk/CiBFT0YKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGV0ZWN0IHBvc3NpYmxlIHR5cG9zJyAnCiAJdGVzdF9tdXN0X2ZhaWwgdGVzdC10b29sIHBhcnNlLW9wdGlvbnMgLWFtYmlndW91cyA+b3V0cHV0IDI+b3V0cHV0LmVyciAmJgogCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXRwdXQgJiYKLQl0ZXN0X2NtcCB0eXBvLmVyciBvdXRwdXQuZXJyCisJdGVzdF9pMThuY21wIHR5cG8uZXJyIG91dHB1dC5lcnIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAna2VlcCBzb21lIG9wdGlvbnMgYXMgYXJndW1lbnRzJyAnCkBAIC0zMDMsNiArMzI2LDIyIEBACiAJdGVzdC10b29sIHBhcnNlLW9wdGlvbnMgLS1leHBlY3Q9ImJvb2xlYW46IDYiIC1iYiAtLW5vLW5lZy1vcjQKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnT1BUX0NNRE1PREUoKSB3b3JrcycgJworCXRlc3QtdG9vbCBwYXJzZS1vcHRpb25zIC0tZXhwZWN0PSJpbnRlZ2VyOiAxIiAtLW1vZGUxCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ09QVF9DTURNT0RFKCkgZGV0ZWN0cyBpbmNvbXBhdGliaWxpdHknICcKKwl0ZXN0X211c3RfZmFpbCB0ZXN0LXRvb2wgcGFyc2Utb3B0aW9ucyAtLW1vZGUxIC0tbW9kZTIgPm91dHB1dCAyPm91dHB1dC5lcnIgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgb3V0cHV0ICYmCisJdGVzdF9pMThuZ3JlcCAiaW5jb21wYXRpYmxlIHdpdGggLS1tb2RlIiBvdXRwdXQuZXJyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ09QVF9DTURNT0RFKCkgZGV0ZWN0cyBpbmNvbXBhdGliaWxpdHkgd2l0aCBzb21ldGhpbmcgZWxzZScgJworCXRlc3RfbXVzdF9mYWlsIHRlc3QtdG9vbCBwYXJzZS1vcHRpb25zIC0tc2V0MjMgLS1tb2RlMiA+b3V0cHV0IDI+b3V0cHV0LmVyciAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXRwdXQgJiYKKwl0ZXN0X2kxOG5ncmVwICJpbmNvbXBhdGlibGUgd2l0aCBzb21ldGhpbmcgZWxzZSIgb3V0cHV0LmVycgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdPUFRfQ09VTlRVUCgpIHdpdGggUEFSU0VfT1BUX05PREFTSCB3b3JrcycgJwogCXRlc3QtdG9vbCBwYXJzZS1vcHRpb25zIC0tZXhwZWN0PSJib29sZWFuOiA2IiArICsgKyArICsgKwogJwpAQCAtMzI1LDYgKzM2NCw3IEBACiBFT0YKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbmVnYXRpb24gb2YgT1BUX05PTkVHIGZsYWdzIGlzIG5vdCBhbWJpZ3VvdXMnICcKKwlHSVRfVEVTVF9ESVNBTExPV19BQkJSRVZJQVRFRF9PUFRJT05TPWZhbHNlIFwKIAl0ZXN0LXRvb2wgcGFyc2Utb3B0aW9ucyAtLW5vLWFtYmlnID5vdXRwdXQgMj5vdXRwdXQuZXJyICYmCiAJdGVzdF9tdXN0X2JlX2VtcHR5IG91dHB1dC5lcnIgJiYKIAl0ZXN0X2NtcCBleHBlY3Qgb3V0cHV0CkBAIC0zNzAsNCArNDEwLDE4IEBACiAJdGVzdC10b29sIHBhcnNlLW9wdGlvbnMgLS1leHBlY3Q9InZlcmJvc2U6IDAiIC12IC12IC12IC0tbm8tdmVyYm9zZQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdHSVRfVEVTVF9ESVNBTExPV19BQkJSRVZJQVRFRF9PUFRJT05TIHdvcmtzJyAnCisJR0lUX1RFU1RfRElTQUxMT1dfQUJCUkVWSUFURURfT1BUSU9OUz1mYWxzZSBcCisJCXRlc3QtdG9vbCBwYXJzZS1vcHRpb25zIC0teWUgJiYKKwl0ZXN0X211c3RfZmFpbCBlbnYgR0lUX1RFU1RfRElTQUxMT1dfQUJCUkVWSUFURURfT1BUSU9OUz10cnVlIFwKKwkJdGVzdC10b29sIHBhcnNlLW9wdGlvbnMgLS15ZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLWVuZC1vZi1vcHRpb25zIHRyZWF0cyByZW1haW5kZXIgYXMgYXJncycgJworCXRlc3QtdG9vbCBwYXJzZS1vcHRpb25zIFwKKwkgICAgLS1leHBlY3Q9InZlcmJvc2U6IC0xIiBcCisJICAgIC0tZXhwZWN0PSJhcmcgMDA6IC0tdmVyYm9zZSIgXAorCSAgICAtLWVuZC1vZi1vcHRpb25zIC0tdmVyYm9zZQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDAwNTAtZmlsZXN5c3RlbS5zaCBiL3QvdDAwNTAtZmlsZXN5c3RlbS5zaAppbmRleCAxOTJjOTRlLi42MDg2NzNmIDEwMDc1NQotLS0gYS90L3QwMDUwLWZpbGVzeXN0ZW0uc2gKKysrIGIvdC90MDA1MC1maWxlc3lzdGVtLnNoCkBAIC0xMzEsNCArMTMxLDI0IEBACiAJZ2l0IG1lcmdlIHRvcGljCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgQ0FTRV9JTlNFTlNJVElWRV9GUyAnY2hlY2tvdXQgd2l0aCBubyBwYXRoc3BlYyBhbmQgYSBjYXNlIGluc2Vuc2l0aXZlIGZzJyAnCisJZ2l0IGluaXQgcmVwbyAmJgorCSgKKwkJY2QgcmVwbyAmJgorCisJCT5HaXR3ZWIgJiYKKwkJZ2l0IGFkZCBHaXR3ZWIgJiYKKwkJZ2l0IGNvbW1pdCAtbSAiYWRkIEdpdHdlYiIgJiYKKworCQlnaXQgY2hlY2tvdXQgLS1vcnBoYW4gdG9kbyAmJgorCQlnaXQgcmVzZXQgLS1oYXJkICYmCisJCW1rZGlyIC1wIGdpdHdlYi9zdWJkaXIgJiYKKwkJPmdpdHdlYi9zdWJkaXIvZmlsZSAmJgorCQlnaXQgYWRkIGdpdHdlYiAmJgorCQlnaXQgY29tbWl0IC1tICJhZGQgZ2l0d2ViL3N1YmRpci9maWxlIiAmJgorCisJCWdpdCBjaGVja291dCBtYXN0ZXIKKwkpCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MDA2MC1wYXRoLXV0aWxzLnNoIGIvdC90MDA2MC1wYXRoLXV0aWxzLnNoCmluZGV4IGIxOTNlZDQuLjJlYTJkMDAgMTAwNzU1Ci0tLSBhL3QvdDAwNjAtcGF0aC11dGlscy5zaAorKysgYi90L3QwMDYwLXBhdGgtdXRpbHMuc2gKQEAgLTI5NCw5ICsyOTQsMTMgQEAKIHRlc3RfZ2l0X3BhdGggR0lUX09CSkVDVF9ESVJFQ1RPUlk9Zm9vIG9iamVjdHMyIC5naXQvb2JqZWN0czIKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIGNvbW1vbiByZXBvc2l0b3J5JyAnZ2l0IC0tZ2l0LWRpcj1iYXIgaW5pdCcKIHRlc3RfZ2l0X3BhdGggR0lUX0NPTU1PTl9ESVI9YmFyIGluZGV4ICAgICAgICAgICAgICAgICAgICAuZ2l0L2luZGV4Cit0ZXN0X2dpdF9wYXRoIEdJVF9DT01NT05fRElSPWJhciBpbmRleC5sb2NrICAgICAgICAgICAgICAgLmdpdC9pbmRleC5sb2NrCiB0ZXN0X2dpdF9wYXRoIEdJVF9DT01NT05fRElSPWJhciBIRUFEICAgICAgICAgICAgICAgICAgICAgLmdpdC9IRUFECiB0ZXN0X2dpdF9wYXRoIEdJVF9DT01NT05fRElSPWJhciBsb2dzL0hFQUQgICAgICAgICAgICAgICAgLmdpdC9sb2dzL0hFQUQKK3Rlc3RfZ2l0X3BhdGggR0lUX0NPTU1PTl9ESVI9YmFyIGxvZ3MvSEVBRC5sb2NrICAgICAgICAgICAuZ2l0L2xvZ3MvSEVBRC5sb2NrCiB0ZXN0X2dpdF9wYXRoIEdJVF9DT01NT05fRElSPWJhciBsb2dzL3JlZnMvYmlzZWN0L2ZvbyAgICAgLmdpdC9sb2dzL3JlZnMvYmlzZWN0L2ZvbwordGVzdF9naXRfcGF0aCBHSVRfQ09NTU9OX0RJUj1iYXIgbG9ncy9yZWZzICAgICAgICAgICAgICAgIGJhci9sb2dzL3JlZnMKK3Rlc3RfZ2l0X3BhdGggR0lUX0NPTU1PTl9ESVI9YmFyIGxvZ3MvcmVmcy8gICAgICAgICAgICAgICBiYXIvbG9ncy9yZWZzLwogdGVzdF9naXRfcGF0aCBHSVRfQ09NTU9OX0RJUj1iYXIgbG9ncy9yZWZzL2Jpc2VjL2ZvbyAgICAgIGJhci9sb2dzL3JlZnMvYmlzZWMvZm9vCiB0ZXN0X2dpdF9wYXRoIEdJVF9DT01NT05fRElSPWJhciBsb2dzL3JlZnMvYmlzZWMgICAgICAgICAgYmFyL2xvZ3MvcmVmcy9iaXNlYwogdGVzdF9naXRfcGF0aCBHSVRfQ09NTU9OX0RJUj1iYXIgbG9ncy9yZWZzL2Jpc2VjdGZvbyAgICAgIGJhci9sb2dzL3JlZnMvYmlzZWN0Zm9vCkBAIC00NjUsMTEgKzQ2OSwxNCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIE1JTkdXICdpc192YWxpZF9wYXRoKCkgb24gV2luZG93cycgJwotICAgICAgIHRlc3QtdG9vbCBwYXRoLXV0aWxzIGlzX3ZhbGlkX3BhdGggXAorCXRlc3QtdG9vbCBwYXRoLXV0aWxzIGlzX3ZhbGlkX3BhdGggXAogCQl3aW4zMiBcCiAJCSJ3aW4zMiB4IiBcCiAJCS4uL2hlbGxvLnR4dCBcCiAJCUM6XFxnaXQgXAorCQljb21tIFwKKwkJY29ub3V0LmMgXAorCQlscHROIFwKIAkJXAogCQktLW5vdCBcCiAJCSJ3aW4zMiAiICBcCkBAIC00NzcsNyArNDg0LDEzIEBACiAJCSJ3aW4zMi4iICBcCiAJCSJ3aW4zMiAuIC4iIFwKIAkJLi4uL2hlbGxvLnR4dCBcCi0JCWNvbG9uOnRlc3QKKwkJY29sb246dGVzdCBcCisJCSJBVVguYyIgXAorCQkiYWJjL2Nvbk91dFwkICAueHl6L3Rlc3QiIFwKKwkJbHB0OCBcCisJCSJscHQqIiBcCisJCU51bCBcCisJCSJQUk4uL2FiYyIKICcKIAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QwMDYxLXJ1bi1jb21tYW5kLnNoIGIvdC90MDA2MS1ydW4tY29tbWFuZC5zaAppbmRleCA5NmJmNmQ2Li43ZDU5OTY3IDEwMDc1NQotLS0gYS90L3QwMDYxLXJ1bi1jb21tYW5kLnNoCisrKyBiL3QvdDAwNjEtcnVuLWNvbW1hbmQuc2gKQEAgLTEyLDYgKzEyLDEwIEBACiAJY2F0IGhlbGxvLXNjcmlwdAogRU9GCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgTUlOR1cgJ3N1YnByb2Nlc3MgaW5oZXJpdHMgb25seSBzdGQgaGFuZGxlcycgJworCXRlc3QtdG9vbCBydW4tY29tbWFuZCBpbmhlcml0ZWQtaGFuZGxlCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXJ0X2NvbW1hbmQgcmVwb3J0cyBFTk9FTlQgKHNsYXNoKScgJwogCXRlc3QtdG9vbCBydW4tY29tbWFuZCBzdGFydC1jb21tYW5kLUVOT0VOVCAuL2RvZXMtbm90LWV4aXN0IDI+ZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAiXC4vZG9lcy1ub3QtZXhpc3QiIGVycgpAQCAtMzEsNyArMzUsMTUgQEAKIAl0ZXN0X211c3RfYmVfZW1wdHkgZXJyCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3J1bl9jb21tYW5kIGlzIHJlc3RyaWN0ZWQgdG8gUEFUSCcgJworCit0ZXN0X2xhenlfcHJlcmVxIFJVTlNfQ09NTUFORFNfRlJPTV9QV0QgJworCXdyaXRlX3NjcmlwdCBydW5zLWNvbW1hbmRzLWZyb20tcHdkIDw8LVxFT0YgJiYKKwl0cnVlCisJRU9GCisJcnVucy1jb21tYW5kcy1mcm9tLXB3ZCA+L2Rldi9udWxsIDI+JjEKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAhUlVOU19DT01NQU5EU19GUk9NX1BXRCAncnVuX2NvbW1hbmQgaXMgcmVzdHJpY3RlZCB0byBQQVRIJyAnCiAJd3JpdGVfc2NyaXB0IHNob3VsZC1ub3QtcnVuIDw8LVxFT0YgJiYKIAllY2hvIHlpa2VzCiAJRU9GCkBAIC0xNTgsNyArMTcwLDggQEAKIAlleHBlY3Q9IiQxIgogCXNoaWZ0CiAJR0lUX1RSQUNFPTEgdGVzdC10b29sIHJ1bi1jb21tYW5kICIkQCIgcnVuLWNvbW1hbmQgdHJ1ZSAyPiYxID4vZGV2L251bGwgfCBcCi0JCXNlZCAtZSAncy8uKiBydW5fY29tbWFuZDogLy8nIC1lICcvdHJhY2U6IC4qL2QnID5hY3R1YWwgJiYKKwkJc2VkIC1lICdzLy4qIHJ1bl9jb21tYW5kOiAvLycgLWUgJy90cmFjZTogLiovZCcgXAorCQkJLWUgJy9SVU5USU1FX1BSRUZJWCByZXF1ZXN0ZWQvZCcgPmFjdHVhbCAmJgogCWVjaG8gIiRleHBlY3QgdHJ1ZSIgPmV4cGVjdCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKIH0KQEAgLTE5MSw0ICsyMDQsMzMgQEAKIAkpCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgTUlOR1cgJ3ZlcmlmeSBjdXJsaWVzIGFyZSBxdW90ZWQgcHJvcGVybHknICcKKwk6IGZvcmNlIHRoZSByZXYtcGFyc2UgdGhyb3VnaCB0aGUgTVNZUzIgQmFzaCAmJgorCWdpdCAtYyBhbGlhcy5yPSIhZ2l0IHJldi1wYXJzZSIgciAtLSBhe2J9YyA+YWN0dWFsICYmCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCS0tCisJYXtifWMKKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgTUlOR1cgJ2NhbiBzcGF3biAuYmF0IHdpdGggYXJndlswXSBjb250YWluaW5nIHNwYWNlcycgJworCWJhdD0iJFRSQVNIX0RJUkVDVE9SWS9iYXQgd2l0aCBzcGFjZXMgaW4gbmFtZS5iYXQiICYmCisKKwkjIEV2ZXJ5IC5iYXQgaW52b2NhdGlvbiB3aWxsIGxvZyBpdHMgYXJndW1lbnRzIHRvIGZpbGUgIm91dCIKKwlybSAtZiBvdXQgJiYKKwllY2hvICJlY2hvICUqID4+b3V0IiA+IiRiYXQiICYmCisKKwkjIEFzayBnaXQgdG8gaW52b2tlIC5iYXQ7IGNsb25lIHdpbGwgZmFpbCBkdWUgdG8gZmFrZSBTU0ggaGVscGVyCisJdGVzdF9tdXN0X2ZhaWwgZW52IEdJVF9TU0g9IiRiYXQiIGdpdCBjbG9uZSBteWhvc3Q6c3JjIHNzaC1jbG9uZSAmJgorCisJIyBTcGF3bmluZyAuYmF0IGNhbiBmYWlsIGlmIHRoZXJlIGFyZSB0d28gcXVvdGVkIGNtZC5leGUgYXJndW1lbnRzLgorCSMgLmJhdCBpdHNlbGYgaXMgZmlyc3QgKGR1ZSB0byBzcGFjZXMgaW4gbmFtZSksIHNvIGp1c3Qgb25lIG1vcmUgaXMKKwkjIG5lZWRlZCB0byB2ZXJpZnkuIEdJVF9TU0ggd2lsbCBpbnZva2UgLmJhdCBtdWx0aXBsZSB0aW1lczoKKwkjIDEpIC1HIG15aG9zdAorCSMgMikgbXlob3N0ICJnaXQtdXBsb2FkLXBhY2sgc3JjIgorCSMgRmlyc3QgaW52b2NhdGlvbiB3aWxsIGFsd2F5cyBzdWNjZWVkLiBUZXN0IHRoZSBzZWNvbmQgb25lLgorCWdyZXAgImdpdC11cGxvYWQtcGFjayIgb3V0CisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MDA2Ni1kaXItaXRlcmF0b3Iuc2ggYi90L3QwMDY2LWRpci1pdGVyYXRvci5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi45MjkxMGU0Ci0tLSAvZGV2L251bGwKKysrIGIvdC90MDA2Ni1kaXItaXRlcmF0b3Iuc2gKQEAgLTAsMCArMSwxNDggQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdUZXN0IHRoZSBkaXItaXRlcmF0b3IgZnVuY3Rpb25hbGl0eScKKworLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCisJbWtkaXIgLXAgZGlyICYmCisJbWtkaXIgLXAgZGlyL2EvYi9jLyAmJgorCT5kaXIvYiAmJgorCT5kaXIvYyAmJgorCW1rZGlyIC1wIGRpci9kL2UvZC8gJiYKKwk+ZGlyL2EvYi9jL2QgJiYKKwk+ZGlyL2EvZSAmJgorCT5kaXIvZC9lL2QvYSAmJgorCisJbWtkaXIgLXAgZGlyMi9hL2IvYy8gJiYKKwk+ZGlyMi9hL2IvYy9kCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Rpci1pdGVyYXRvciBzaG91bGQgaXRlcmF0ZSB0aHJvdWdoIGFsbCBmaWxlcycgJworCWNhdCA+ZXhwZWN0ZWQtaXRlcmF0aW9uLXNvcnRlZC1vdXRwdXQgPDwtRU9GICYmCisJW2RdIChhKSBbYV0gLi9kaXIvYQorCVtkXSAoYS9iKSBbYl0gLi9kaXIvYS9iCisJW2RdIChhL2IvYykgW2NdIC4vZGlyL2EvYi9jCisJW2RdIChkKSBbZF0gLi9kaXIvZAorCVtkXSAoZC9lKSBbZV0gLi9kaXIvZC9lCisJW2RdIChkL2UvZCkgW2RdIC4vZGlyL2QvZS9kCisJW2ZdIChhL2IvYy9kKSBbZF0gLi9kaXIvYS9iL2MvZAorCVtmXSAoYS9lKSBbZV0gLi9kaXIvYS9lCisJW2ZdIChiKSBbYl0gLi9kaXIvYgorCVtmXSAoYykgW2NdIC4vZGlyL2MKKwlbZl0gKGQvZS9kL2EpIFthXSAuL2Rpci9kL2UvZC9hCisJRU9GCisKKwl0ZXN0LXRvb2wgZGlyLWl0ZXJhdG9yIC4vZGlyID5vdXQgJiYKKwlzb3J0IG91dCA+Li9hY3R1YWwtaXRlcmF0aW9uLXNvcnRlZC1vdXRwdXQgJiYKKworCXRlc3RfY21wIGV4cGVjdGVkLWl0ZXJhdGlvbi1zb3J0ZWQtb3V0cHV0IGFjdHVhbC1pdGVyYXRpb24tc29ydGVkLW91dHB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaXItaXRlcmF0b3Igc2hvdWxkIGxpc3QgZmlsZXMgaW4gdGhlIGNvcnJlY3Qgb3JkZXInICcKKwljYXQgPmV4cGVjdGVkLXByZS1vcmRlci1vdXRwdXQgPDwtRU9GICYmCisJW2RdIChhKSBbYV0gLi9kaXIyL2EKKwlbZF0gKGEvYikgW2JdIC4vZGlyMi9hL2IKKwlbZF0gKGEvYi9jKSBbY10gLi9kaXIyL2EvYi9jCisJW2ZdIChhL2IvYy9kKSBbZF0gLi9kaXIyL2EvYi9jL2QKKwlFT0YKKworCXRlc3QtdG9vbCBkaXItaXRlcmF0b3IgLi9kaXIyID5hY3R1YWwtcHJlLW9yZGVyLW91dHB1dCAmJgorCisJdGVzdF9jbXAgZXhwZWN0ZWQtcHJlLW9yZGVyLW91dHB1dCBhY3R1YWwtcHJlLW9yZGVyLW91dHB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdiZWdpbiBzaG91bGQgZmFpbCB1cG9uIGluZXhpc3RlbnQgcGF0aHMnICcKKwl0ZXN0X211c3RfZmFpbCB0ZXN0LXRvb2wgZGlyLWl0ZXJhdG9yIC4vaW5leGlzdGVudC1wYXRoIFwKKwkJPmFjdHVhbC1pbmV4aXN0ZW50LXBhdGgtb3V0cHV0ICYmCisJZWNobyAiZGlyX2l0ZXJhdG9yX2JlZ2luIGZhaWx1cmU6IEVOT0VOVCIgPmV4cGVjdGVkLWluZXhpc3RlbnQtcGF0aC1vdXRwdXQgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZC1pbmV4aXN0ZW50LXBhdGgtb3V0cHV0IGFjdHVhbC1pbmV4aXN0ZW50LXBhdGgtb3V0cHV0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2JlZ2luIHNob3VsZCBmYWlsIHVwb24gbm9uIGRpcmVjdG9yeSBwYXRocycgJworCXRlc3RfbXVzdF9mYWlsIHRlc3QtdG9vbCBkaXItaXRlcmF0b3IgLi9kaXIvYiA+YWN0dWFsLW5vbi1kaXItb3V0cHV0ICYmCisJZWNobyAiZGlyX2l0ZXJhdG9yX2JlZ2luIGZhaWx1cmU6IEVOT1RESVIiID5leHBlY3RlZC1ub24tZGlyLW91dHB1dCAmJgorCXRlc3RfY21wIGV4cGVjdGVkLW5vbi1kaXItb3V0cHV0IGFjdHVhbC1ub24tZGlyLW91dHB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIFBPU0lYUEVSTSxTQU5JVFkgJ2FkdmFuY2Ugc2hvdWxkIG5vdCBmYWlsIG9uIGVycm9ycyBieSBkZWZhdWx0JyAnCisJY2F0ID5leHBlY3RlZC1uby1wZXJtaXNzaW9ucy1vdXRwdXQgPDwtRU9GICYmCisJW2RdIChhKSBbYV0gLi9kaXIzL2EKKwlFT0YKKworCW1rZGlyIC1wIGRpcjMvYSAmJgorCT5kaXIzL2EvYiAmJgorCWNobW9kIDAgZGlyMy9hICYmCisKKwl0ZXN0LXRvb2wgZGlyLWl0ZXJhdG9yIC4vZGlyMyA+YWN0dWFsLW5vLXBlcm1pc3Npb25zLW91dHB1dCAmJgorCXRlc3RfY21wIGV4cGVjdGVkLW5vLXBlcm1pc3Npb25zLW91dHB1dCBhY3R1YWwtbm8tcGVybWlzc2lvbnMtb3V0cHV0ICYmCisJY2htb2QgNzU1IGRpcjMvYSAmJgorCXJtIC1yZiBkaXIzCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgUE9TSVhQRVJNLFNBTklUWSAnYWR2YW5jZSBzaG91bGQgZmFpbCBvbiBlcnJvcnMsIHcvIHBlZGFudGljIGZsYWcnICcKKwljYXQgPmV4cGVjdGVkLW5vLXBlcm1pc3Npb25zLXBlZGFudGljLW91dHB1dCA8PC1FT0YgJiYKKwlbZF0gKGEpIFthXSAuL2RpcjMvYQorCWRpcl9pdGVyYXRvcl9hZHZhbmNlIGZhaWx1cmUKKwlFT0YKKworCW1rZGlyIC1wIGRpcjMvYSAmJgorCT5kaXIzL2EvYiAmJgorCWNobW9kIDAgZGlyMy9hICYmCisKKwl0ZXN0X211c3RfZmFpbCB0ZXN0LXRvb2wgZGlyLWl0ZXJhdG9yIC0tcGVkYW50aWMgLi9kaXIzIFwKKwkJPmFjdHVhbC1uby1wZXJtaXNzaW9ucy1wZWRhbnRpYy1vdXRwdXQgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZC1uby1wZXJtaXNzaW9ucy1wZWRhbnRpYy1vdXRwdXQgXAorCQlhY3R1YWwtbm8tcGVybWlzc2lvbnMtcGVkYW50aWMtb3V0cHV0ICYmCisJY2htb2QgNzU1IGRpcjMvYSAmJgorCXJtIC1yZiBkaXIzCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgU1lNTElOS1MgJ3NldHVwIGRpcnMgd2l0aCBzeW1saW5rcycgJworCW1rZGlyIC1wIGRpcjQvYSAmJgorCW1rZGlyIC1wIGRpcjQvYi9jICYmCisJPmRpcjQvYS9kICYmCisJbG4gLXMgZCBkaXI0L2EvZSAmJgorCWxuIC1zIC4uL2IgZGlyNC9hL2YgJiYKKworCW1rZGlyIC1wIGRpcjUvYS9iICYmCisJbWtkaXIgLXAgZGlyNS9hL2MgJiYKKwlsbiAtcyAuLi9jIGRpcjUvYS9iL2QgJiYKKwlsbiAtcyAuLi8gZGlyNS9hL2IvZSAmJgorCWxuIC1zIC4uLy4uLyBkaXI1L2EvYi9mCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgU1lNTElOS1MgJ2Rpci1pdGVyYXRvciBzaG91bGQgbm90IGZvbGxvdyBzeW1saW5rcyBieSBkZWZhdWx0JyAnCisJY2F0ID5leHBlY3RlZC1uby1mb2xsb3ctc29ydGVkLW91dHB1dCA8PC1FT0YgJiYKKwlbZF0gKGEpIFthXSAuL2RpcjQvYQorCVtkXSAoYikgW2JdIC4vZGlyNC9iCisJW2RdIChiL2MpIFtjXSAuL2RpcjQvYi9jCisJW2ZdIChhL2QpIFtkXSAuL2RpcjQvYS9kCisJW3NdIChhL2UpIFtlXSAuL2RpcjQvYS9lCisJW3NdIChhL2YpIFtmXSAuL2RpcjQvYS9mCisJRU9GCisKKwl0ZXN0LXRvb2wgZGlyLWl0ZXJhdG9yIC4vZGlyNCA+b3V0ICYmCisJc29ydCBvdXQgPmFjdHVhbC1uby1mb2xsb3ctc29ydGVkLW91dHB1dCAmJgorCisJdGVzdF9jbXAgZXhwZWN0ZWQtbm8tZm9sbG93LXNvcnRlZC1vdXRwdXQgYWN0dWFsLW5vLWZvbGxvdy1zb3J0ZWQtb3V0cHV0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgU1lNTElOS1MgJ2Rpci1pdGVyYXRvciBzaG91bGQgZm9sbG93IHN5bWxpbmtzIHcvIGZvbGxvdyBmbGFnJyAnCisJY2F0ID5leHBlY3RlZC1mb2xsb3ctc29ydGVkLW91dHB1dCA8PC1FT0YgJiYKKwlbZF0gKGEpIFthXSAuL2RpcjQvYQorCVtkXSAoYS9mKSBbZl0gLi9kaXI0L2EvZgorCVtkXSAoYS9mL2MpIFtjXSAuL2RpcjQvYS9mL2MKKwlbZF0gKGIpIFtiXSAuL2RpcjQvYgorCVtkXSAoYi9jKSBbY10gLi9kaXI0L2IvYworCVtmXSAoYS9kKSBbZF0gLi9kaXI0L2EvZAorCVtmXSAoYS9lKSBbZV0gLi9kaXI0L2EvZQorCUVPRgorCisJdGVzdC10b29sIGRpci1pdGVyYXRvciAtLWZvbGxvdy1zeW1saW5rcyAuL2RpcjQgPm91dCAmJgorCXNvcnQgb3V0ID5hY3R1YWwtZm9sbG93LXNvcnRlZC1vdXRwdXQgJiYKKworCXRlc3RfY21wIGV4cGVjdGVkLWZvbGxvdy1zb3J0ZWQtb3V0cHV0IGFjdHVhbC1mb2xsb3ctc29ydGVkLW91dHB1dAorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDAwNjctcGFyc2VfcGF0aHNwZWNfZmlsZS5zaCBiL3QvdDAwNjctcGFyc2VfcGF0aHNwZWNfZmlsZS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi43YmFiNDlmCi0tLSAvZGV2L251bGwKKysrIGIvdC90MDA2Ny1wYXJzZV9wYXRoc3BlY19maWxlLnNoCkBAIC0wLDAgKzEsMTA4IEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0nVGVzdCBwYXJzZV9wYXRoc3BlY19maWxlKCknCisKKy4gLi90ZXN0LWxpYi5zaAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdvbmUgaXRlbSBmcm9tIHN0ZGluJyAnCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCWZpbGVBLnQKKwlFT0YKKworCWVjaG8gZmlsZUEudCB8CisJdGVzdC10b29sIHBhcnNlLXBhdGhzcGVjLWZpbGUgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSA+YWN0dWFsICYmCisKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ29uZSBpdGVtIGZyb20gZmlsZScgJworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlmaWxlQS50CisJRU9GCisKKwllY2hvIGZpbGVBLnQgPmxpc3QgJiYKKwl0ZXN0LXRvb2wgcGFyc2UtcGF0aHNwZWMtZmlsZSAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0ID5hY3R1YWwgJiYKKworCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnTlVMIGRlbGltaXRlcnMnICcKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJZmlsZUEudAorCWZpbGVCLnQKKwlFT0YKKworCXByaW50ZiAiZmlsZUEudFwwZmlsZUIudFwwIiB8CisJdGVzdC10b29sIHBhcnNlLXBhdGhzcGVjLWZpbGUgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSAtLXBhdGhzcGVjLWZpbGUtbnVsID5hY3R1YWwgJiYKKworCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnTEYgZGVsaW1pdGVycycgJworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlmaWxlQS50CisJZmlsZUIudAorCUVPRgorCisJcHJpbnRmICJmaWxlQS50XG5maWxlQi50XG4iIHwKKwl0ZXN0LXRvb2wgcGFyc2UtcGF0aHNwZWMtZmlsZSAtLXBhdGhzcGVjLWZyb20tZmlsZT0tID5hY3R1YWwgJiYKKworCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbm8gdHJhaWxpbmcgZGVsaW1pdGVyJyAnCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCWZpbGVBLnQKKwlmaWxlQi50CisJRU9GCisKKwlwcmludGYgImZpbGVBLnRcbmZpbGVCLnQiIHwKKwl0ZXN0LXRvb2wgcGFyc2UtcGF0aHNwZWMtZmlsZSAtLXBhdGhzcGVjLWZyb20tZmlsZT0tID5hY3R1YWwgJiYKKworCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnQ1JMRiBkZWxpbWl0ZXJzJyAnCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCWZpbGVBLnQKKwlmaWxlQi50CisJRU9GCisKKwlwcmludGYgImZpbGVBLnRcclxuZmlsZUIudFxyXG4iIHwKKwl0ZXN0LXRvb2wgcGFyc2UtcGF0aHNwZWMtZmlsZSAtLXBhdGhzcGVjLWZyb20tZmlsZT0tID5hY3R1YWwgJiYKKworCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncXVvdGVzJyAnCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCWZpbGVBLnQKKwlFT0YKKworCWNhdCA+bGlzdCA8PC1cRU9GICYmCisJImZpbGVcMTAxLnQiCisJRU9GCisKKwl0ZXN0LXRvb2wgcGFyc2UtcGF0aHNwZWMtZmlsZSAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0ID5hY3R1YWwgJiYKKworCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1wYXRoc3BlYy1maWxlLW51bCB0YWtlcyBxdW90ZXMgbGl0ZXJhbGx5JyAnCisJIyBOb3RlOiB0aGVyZSBpcyBhbiBleHRyYSBuZXdsaW5lIGJlY2F1c2UgLS1wYXRoc3BlYy1maWxlLW51bCB0YWtlcworCSMgaW5wdXQgXG4gbGl0ZXJhbGx5LCB0b28KKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJImZpbGVcMTAxLnQiCisKKwlFT0YKKworCWNhdCA+bGlzdCA8PC1cRU9GICYmCisJImZpbGVcMTAxLnQiCisJRU9GCisKKwl0ZXN0LXRvb2wgcGFyc2UtcGF0aHNwZWMtZmlsZSAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0IC0tcGF0aHNwZWMtZmlsZS1udWwgPmFjdHVhbCAmJgorCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDAwOTAtY2FjaGUtdHJlZS5zaCBiL3QvdDAwOTAtY2FjaGUtdHJlZS5zaAppbmRleCA1MDQzMzRlLi41YTYzMzY5IDEwMDc1NQotLS0gYS90L3QwMDkwLWNhY2hlLXRyZWUuc2gKKysrIGIvdC90MDA5MC1jYWNoZS10cmVlLnNoCkBAIC0yMSw5ICsyMSwxMCBAQAogCXBhcmVudD0iJDIiICYmCiAJIyBscy1maWxlcyBtaWdodCBoYXZlIGZvby9iYXIsIGZvby9iYXIvYmF6LCBhbmQgZm9vL2Jhci9xdXV4CiAJIyBXZSB3YW50IHRvIGNvdW50IG9ubHkgZm9vIGJlY2F1c2UgaXQncyB0aGUgb25seSBkaXJlY3QgY2hpbGQKLQlzdWJ0cmVlcz0kKGdpdCBscy1maWxlc3xncmVwIC98Y3V0IC1kIC8gLWYgMXx1bmlxKSAmJgorCWdpdCBscy1maWxlcyA+ZmlsZXMgJiYKKwlzdWJ0cmVlcz0kKGdyZXAgLyBmaWxlc3xjdXQgLWQgLyAtZiAxfHVuaXEpICYmCiAJc3VidHJlZV9jb3VudD0kKGVjaG8gIiRzdWJ0cmVlcyJ8YXdrIC12IGM9MCAnJDEgIT0gIiIgeysrY30gRU5EIHtwcmludCBjfScpICYmCi0JZW50cmllcz0kKGdpdCBscy1maWxlc3x3YyAtbCkgJiYKKwllbnRyaWVzPSQod2MgLWwgPGZpbGVzKSAmJgogCXByaW50ZiAiU0hBICRkaXIgKCVkIGVudHJpZXMsICVkIHN1YnRyZWVzKVxuIiAiJGVudHJpZXMiICIkc3VidHJlZV9jb3VudCIgJiYKIAlmb3Igc3VidHJlZSBpbiAkc3VidHJlZXMKIAlkbwpAQCAtMTYyLDggKzE2Myw4IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgUEVSTCAnY29tbWl0IC1wIHdpdGggc2hyaW5raW5nIGNhY2hlLXRyZWUnICcKLQlta2RpciAtcCBkZWVwL3N1YmRpciAmJgotCWVjaG8gY29udGVudCA+ZGVlcC9zdWJkaXIvZmlsZSAmJgorCW1rZGlyIC1wIGRlZXAvdmVyeS1sb25nLXN1YmRpciAmJgorCWVjaG8gY29udGVudCA+ZGVlcC92ZXJ5LWxvbmctc3ViZGlyL2ZpbGUgJiYKIAlnaXQgYWRkIGRlZXAgJiYKIAlnaXQgY29tbWl0IC1tIGFkZCAmJgogCWdpdCBybSAtciBkZWVwICYmCmRpZmYgLS1naXQgYS90L3QwMjA1LWdldHRleHQtcG9pc29uLnNoIGIvdC90MDIwNS1nZXR0ZXh0LXBvaXNvbi5zaAppbmRleCBhMDYyNjlmLi5mOWZhMTZhIDEwMDc1NQotLS0gYS90L3QwMjA1LWdldHRleHQtcG9pc29uLnNoCisrKyBiL3QvdDAyMDUtZ2V0dGV4dC1wb2lzb24uc2gKQEAgLTUsNyArNSw3IEBACiAKIHRlc3RfZGVzY3JpcHRpb249J0dldHRleHQgU2hlbGwgcG9pc29uJwogCi1HSVRfVEVTVF9HRVRURVhUX1BPSVNPTj1ZZXNQbGVhc2UKK0dJVF9URVNUX0dFVFRFWFRfUE9JU09OPXRydWUKIGV4cG9ydCBHSVRfVEVTVF9HRVRURVhUX1BPSVNPTgogLiAuL2xpYi1nZXR0ZXh0LnNoCiAKQEAgLTMxLDQgKzMxLDkgQEAKICAgICB0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgImdldHRleHQ6IGludmFsaWQgR0lUX1RFU1RfR0VUVEVYVF9QT0lTT04gdmFsdWUgZG9lc24ndCBpbmZpbml0ZWx5IGxvb3AiICIKKwl0ZXN0X211c3RfZmFpbCBlbnYgR0lUX1RFU1RfR0VUVEVYVF9QT0lTT049eHl6IGdpdCB2ZXJzaW9uIDI+ZXJyb3IgJiYKKwlncmVwIFwiZmF0YWw6IGJhZCBudW1lcmljIGNvbmZpZyB2YWx1ZSAneHl6JyBmb3IgJ0dJVF9URVNUX0dFVFRFWFRfUE9JU09OJzogaW52YWxpZCB1bml0XCIgZXJyb3IKKyIKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QwMjEwLXRyYWNlMi1ub3JtYWwuc2ggYi90L3QwMjEwLXRyYWNlMi1ub3JtYWwuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uY2U3NTc0ZQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDAyMTAtdHJhY2UyLW5vcm1hbC5zaApAQCAtMCwwICsxLDE4OSBAQAorIyEvYmluL3NoCisKK3Rlc3RfZGVzY3JpcHRpb249J3Rlc3QgdHJhY2UyIGZhY2lsaXR5IChub3JtYWwgdGFyZ2V0KScKKy4gLi90ZXN0LWxpYi5zaAorCisjIFR1cm4gb2ZmIGFueSBpbmhlcml0ZWQgdHJhY2UyIHNldHRpbmdzIGZvciB0aGlzIHRlc3QuCitzYW5lX3Vuc2V0IEdJVF9UUkFDRTIgR0lUX1RSQUNFMl9QRVJGIEdJVF9UUkFDRTJfRVZFTlQKK3NhbmVfdW5zZXQgR0lUX1RSQUNFMl9CUklFRgorc2FuZV91bnNldCBHSVRfVFJBQ0UyX0NPTkZJR19QQVJBTVMKKworIyBBZGQgdC9oZWxwZXIgZGlyZWN0b3J5IHRvIFBBVEggc28gdGhhdCB3ZSBjYW4gdXNlIGEgcmVsYXRpdmUKKyMgcGF0aCB0byBydW4gbmVzdGVkIGluc3RhbmNlcyBvZiB0ZXN0LXRvb2wuZXhlIChzZWUgMDA0Y2hpbGQpLgorIyBUaGlzIGhlbHBzIHdpdGggSEVSRURPQyBjb21wYXJpc29ucyBsYXRlci4KK1RURElSPSIkR0lUX0JVSUxEX0RJUi90L2hlbHBlci8iICYmIGV4cG9ydCBUVERJUgorUEFUSD0iJFRURElSOiRQQVRIIiAmJiBleHBvcnQgUEFUSAorCisjIFdhcm5pbmc6IHVzZSBvZiAndGVzdF9jbXAnIG1heSBydW4gdGVzdC10b29sLmV4ZSBhbmQvb3IgZ2l0LmV4ZQorIyBXYXJuaW5nOiB0byBkbyB0aGUgYWN0dWFsIGRpZmYvY29tcGFyaXNvbiwgc28gdGhlIEhFUkVET0NzIGhlcmUKKyMgV2FybmluZzogb25seSBjb3ZlciBvdXIgYWN0dWFsIGNhbGxzIHRvIHRlc3QtdG9vbCBhbmQvb3IgZ2l0LgorIyBXYXJuaW5nOiBTbyB5b3UgbWF5IHNlZSBleHRyYSBsaW5lcyBpbiBhcnRpZmFjdCBmaWxlcyB3aGVuCisjIFdhcm5pbmc6IGludGVyYWN0aXZlbHkgZGVidWdnaW5nLgorCitWPSQoZ2l0IHZlcnNpb24gfCBzZWQgLWUgJ3MvXmdpdCB2ZXJzaW9uIC8vJykgJiYgZXhwb3J0IFYKKworIyBUaGVyZSBhcmUgbXVsdGlwbGUgdHJhY2UyIHRhcmdldHM6IG5vcm1hbCwgcGVyZiwgYW5kIGV2ZW50LgorIyBUcmFjZTIgZXZlbnRzIHdpbGwvY2FuIGJlIHdyaXR0ZW4gdG8gZWFjaCBhY3RpdmUgdGFyZ2V0IChzdWJqZWN0CisjIHRvIHdoYXRldmVyIGZpbHRlcmluZyB0aGF0IHRhcmdldCBkZWNpZGVzIHRvIGRvKS4KKyMgVGhpcyBzY3JpcHQgdGVzdHMgdGhlIG5vcm1hbCB0YXJnZXQgaW4gaXNvbGF0aW9uLgorIworIyBEZWZlciBzZXR0aW5nIEdJVF9UUkFDRTIgdW50aWwgdGhlIGFjdHVhbCBjb21tYW5kIGxpbmUgd2Ugd2FudCB0byB0ZXN0CisjIGJlY2F1c2UgaGlkZGVuIGdpdCBhbmQgdGVzdC10b29sIGNvbW1hbmRzIHJ1biBieSB0aGUgdGVzdCBoYXJuZXNzCisjIGNhbiBjb250YW1pbmF0ZSBvdXIgb3V0cHV0LgorCisjIEVuYWJsZSAiYnJpZWYiIGZlYXR1cmUgd2hpY2ggdHVybnMgb2ZmICI8Y2xvY2s+IDxmaWxlPjo8bGluZT4gIiBwcmVmaXguCitHSVRfVFJBQ0UyX0JSSUVGPTEgJiYgZXhwb3J0IEdJVF9UUkFDRTJfQlJJRUYKKworIyBCYXNpYyB0ZXN0cyBvZiB0aGUgdHJhY2UyIG5vcm1hbCBzdHJlYW0uICBTaW5jZSB0aGlzIHN0cmVhbSBpcyB1c2VkCisjIHByaW1hcmlseSB3aXRoIHByaW50Zi1zdHlsZSBkZWJ1Z2dpbmcvdHJhY2luZywgd2UgZG8gbGltaXRlZCB0ZXN0aW5nCisjIGhlcmUuCisjCisjIFdlIGRvIGNvbmZpcm0gdGhlIGZvbGxvd2luZyBBUEkgZmVhdHVyZXM6CisjIFtdIHRoZSAndmVyc2lvbiA8dj4nIGV2ZW50CisjIFtdIHRoZSAnc3RhcnQgPGFyZ3Y+JyBldmVudAorIyBbXSB0aGUgJ2NtZF9uYW1lIDxuYW1lPicgZXZlbnQKKyMgW10gdGhlICdleGl0IDx0aW1lPiBjb2RlOjxjb2RlPicgZXZlbnQKKyMgW10gdGhlICdhdGV4aXQgPHRpbWU+IGNvZGU6PGNvZGU+JyBldmVudAorIworIyBGaWVsZHMgb2YgdGhlIGZvcm0gX0ZJRUxEXyBhcmUgdG9rZW5zIHRoYXQgaGF2ZSBiZWVuIHJlcGxhY2VkIChzdWNoCisjIGFzIHRoZSBlbGFwc2VkIHRpbWUpLgorCisjIFZlcmIgMDAxcmV0dXJuCisjCisjIEltcGxpY2l0IHJldHVybiBmcm9tIGNtZF88dmVyYj4gZnVuY3Rpb24gcHJvcGFnYXRlcyA8Y29kZT4uCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25vcm1hbCBzdHJlYW0sIHJldHVybiBjb2RlIDAnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIHRyYWNlLm5vcm1hbCBhY3R1YWwgZXhwZWN0IiAmJgorCUdJVF9UUkFDRTI9IiQocHdkKS90cmFjZS5ub3JtYWwiIHRlc3QtdG9vbCB0cmFjZTIgMDAxcmV0dXJuIDAgJiYKKwlwZXJsICIkVEVTVF9ESVJFQ1RPUlkvdDAyMTAvc2NydWJfbm9ybWFsLnBlcmwiIDx0cmFjZS5ub3JtYWwgPmFjdHVhbCAmJgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCQl2ZXJzaW9uICRWCisJCXN0YXJ0IF9FWEVfIHRyYWNlMiAwMDFyZXR1cm4gMAorCQljbWRfbmFtZSB0cmFjZTIgKHRyYWNlMikKKwkJZXhpdCBlbGFwc2VkOl9USU1FXyBjb2RlOjAKKwkJYXRleGl0IGVsYXBzZWQ6X1RJTUVfIGNvZGU6MAorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbm9ybWFsIHN0cmVhbSwgcmV0dXJuIGNvZGUgMScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gdHJhY2Uubm9ybWFsIGFjdHVhbCBleHBlY3QiICYmCisJdGVzdF9tdXN0X2ZhaWwgZW52IEdJVF9UUkFDRTI9IiQocHdkKS90cmFjZS5ub3JtYWwiIHRlc3QtdG9vbCB0cmFjZTIgMDAxcmV0dXJuIDEgJiYKKwlwZXJsICIkVEVTVF9ESVJFQ1RPUlkvdDAyMTAvc2NydWJfbm9ybWFsLnBlcmwiIDx0cmFjZS5ub3JtYWwgPmFjdHVhbCAmJgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCQl2ZXJzaW9uICRWCisJCXN0YXJ0IF9FWEVfIHRyYWNlMiAwMDFyZXR1cm4gMQorCQljbWRfbmFtZSB0cmFjZTIgKHRyYWNlMikKKwkJZXhpdCBlbGFwc2VkOl9USU1FXyBjb2RlOjEKKwkJYXRleGl0IGVsYXBzZWQ6X1RJTUVfIGNvZGU6MQorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYXV0b21hdGljIGZpbGVuYW1lJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtciB0cmFjZXMgYWN0dWFsIGV4cGVjdCIgJiYKKwlta2RpciB0cmFjZXMgJiYKKwlHSVRfVFJBQ0UyPSIkKHB3ZCkvdHJhY2VzIiB0ZXN0LXRvb2wgdHJhY2UyIDAwMXJldHVybiAwICYmCisJcGVybCAiJFRFU1RfRElSRUNUT1JZL3QwMjEwL3NjcnViX25vcm1hbC5wZXJsIiA8IiQobHMgdHJhY2VzLyopIiA+YWN0dWFsICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCXZlcnNpb24gJFYKKwkJc3RhcnQgX0VYRV8gdHJhY2UyIDAwMXJldHVybiAwCisJCWNtZF9uYW1lIHRyYWNlMiAodHJhY2UyKQorCQlleGl0IGVsYXBzZWQ6X1RJTUVfIGNvZGU6MAorCQlhdGV4aXQgZWxhcHNlZDpfVElNRV8gY29kZTowCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCisjIFZlcmIgMDAyZXhpdAorIworIyBFeHBsaWNpdCBleGl0KGNvZGUpIGZyb20gd2l0aGluIGNtZF88dmVyYj4gcHJvcGFnYXRlcyA8Y29kZT4uCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25vcm1hbCBzdHJlYW0sIGV4aXQgY29kZSAwJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSB0cmFjZS5ub3JtYWwgYWN0dWFsIGV4cGVjdCIgJiYKKwlHSVRfVFJBQ0UyPSIkKHB3ZCkvdHJhY2Uubm9ybWFsIiB0ZXN0LXRvb2wgdHJhY2UyIDAwMmV4aXQgMCAmJgorCXBlcmwgIiRURVNUX0RJUkVDVE9SWS90MDIxMC9zY3J1Yl9ub3JtYWwucGVybCIgPHRyYWNlLm5vcm1hbCA+YWN0dWFsICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCXZlcnNpb24gJFYKKwkJc3RhcnQgX0VYRV8gdHJhY2UyIDAwMmV4aXQgMAorCQljbWRfbmFtZSB0cmFjZTIgKHRyYWNlMikKKwkJZXhpdCBlbGFwc2VkOl9USU1FXyBjb2RlOjAKKwkJYXRleGl0IGVsYXBzZWQ6X1RJTUVfIGNvZGU6MAorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbm9ybWFsIHN0cmVhbSwgZXhpdCBjb2RlIDEnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIHRyYWNlLm5vcm1hbCBhY3R1YWwgZXhwZWN0IiAmJgorCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVFJBQ0UyPSIkKHB3ZCkvdHJhY2Uubm9ybWFsIiB0ZXN0LXRvb2wgdHJhY2UyIDAwMmV4aXQgMSAmJgorCXBlcmwgIiRURVNUX0RJUkVDVE9SWS90MDIxMC9zY3J1Yl9ub3JtYWwucGVybCIgPHRyYWNlLm5vcm1hbCA+YWN0dWFsICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCXZlcnNpb24gJFYKKwkJc3RhcnQgX0VYRV8gdHJhY2UyIDAwMmV4aXQgMQorCQljbWRfbmFtZSB0cmFjZTIgKHRyYWNlMikKKwkJZXhpdCBlbGFwc2VkOl9USU1FXyBjb2RlOjEKKwkJYXRleGl0IGVsYXBzZWQ6X1RJTUVfIGNvZGU6MQorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKworIyBWZXJiIDAwM2Vycm9yCisjCisjIFRvIHRoZSBhYm92ZSwgYWRkIG11bHRpcGxlICdlcnJvciA8bXNnPicgZXZlbnRzCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25vcm1hbCBzdHJlYW0sIGVycm9yIGV2ZW50JyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSB0cmFjZS5ub3JtYWwgYWN0dWFsIGV4cGVjdCIgJiYKKwlHSVRfVFJBQ0UyPSIkKHB3ZCkvdHJhY2Uubm9ybWFsIiB0ZXN0LXRvb2wgdHJhY2UyIDAwM2Vycm9yICJoZWxsbyB3b3JsZCIgInRoaXMgaXMgYSB0ZXN0IiAmJgorCXBlcmwgIiRURVNUX0RJUkVDVE9SWS90MDIxMC9zY3J1Yl9ub3JtYWwucGVybCIgPHRyYWNlLm5vcm1hbCA+YWN0dWFsICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCXZlcnNpb24gJFYKKwkJc3RhcnQgX0VYRV8gdHJhY2UyIDAwM2Vycm9yICdcJydoZWxsbyB3b3JsZCdcJycgJ1wnJ3RoaXMgaXMgYSB0ZXN0J1wnJworCQljbWRfbmFtZSB0cmFjZTIgKHRyYWNlMikKKwkJZXJyb3IgaGVsbG8gd29ybGQKKwkJZXJyb3IgdGhpcyBpcyBhIHRlc3QKKwkJZXhpdCBlbGFwc2VkOl9USU1FXyBjb2RlOjAKKwkJYXRleGl0IGVsYXBzZWQ6X1RJTUVfIGNvZGU6MAorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKworc2FuZV91bnNldCBHSVRfVFJBQ0UyX0JSSUVGCisKKyMgTm93IHRlc3Qgd2l0aG91dCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgYW5kIGdldCBhbGwgVHJhY2UyIHNldHRpbmdzCisjIGZyb20gdGhlIGdsb2JhbCBjb25maWcuCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3VzaW5nIGdsb2JhbCBjb25maWcsIG5vcm1hbCBzdHJlYW0sIHJldHVybiBjb2RlIDAnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIHRyYWNlLm5vcm1hbCBhY3R1YWwgZXhwZWN0IiAmJgorCXRlc3RfY29uZmlnX2dsb2JhbCB0cmFjZTIubm9ybWFsQnJpZWYgMSAmJgorCXRlc3RfY29uZmlnX2dsb2JhbCB0cmFjZTIubm9ybWFsVGFyZ2V0ICIkKHB3ZCkvdHJhY2Uubm9ybWFsIiAmJgorCXRlc3QtdG9vbCB0cmFjZTIgMDAxcmV0dXJuIDAgJiYKKwlwZXJsICIkVEVTVF9ESVJFQ1RPUlkvdDAyMTAvc2NydWJfbm9ybWFsLnBlcmwiIDx0cmFjZS5ub3JtYWwgPmFjdHVhbCAmJgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCQl2ZXJzaW9uICRWCisJCXN0YXJ0IF9FWEVfIHRyYWNlMiAwMDFyZXR1cm4gMAorCQljbWRfbmFtZSB0cmFjZTIgKHRyYWNlMikKKwkJZXhpdCBlbGFwc2VkOl9USU1FXyBjb2RlOjAKKwkJYXRleGl0IGVsYXBzZWQ6X1RJTUVfIGNvZGU6MAorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndXNpbmcgZ2xvYmFsIGNvbmZpZyB3aXRoIGluY2x1ZGUnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIHRyYWNlLm5vcm1hbCBhY3R1YWwgZXhwZWN0IHJlYWwuZ2l0Y29uZmlnIiAmJgorCXRlc3RfY29uZmlnX2dsb2JhbCB0cmFjZTIubm9ybWFsQnJpZWYgMSAmJgorCXRlc3RfY29uZmlnX2dsb2JhbCB0cmFjZTIubm9ybWFsVGFyZ2V0ICIkKHB3ZCkvdHJhY2Uubm9ybWFsIiAmJgorCW12ICIkKHB3ZCkvLmdpdGNvbmZpZyIgIiQocHdkKS9yZWFsLmdpdGNvbmZpZyIgJiYKKwl0ZXN0X2NvbmZpZ19nbG9iYWwgaW5jbHVkZS5wYXRoICIkKHB3ZCkvcmVhbC5naXRjb25maWciICYmCisJdGVzdC10b29sIHRyYWNlMiAwMDFyZXR1cm4gMCAmJgorCXBlcmwgIiRURVNUX0RJUkVDVE9SWS90MDIxMC9zY3J1Yl9ub3JtYWwucGVybCIgPHRyYWNlLm5vcm1hbCA+YWN0dWFsICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCXZlcnNpb24gJFYKKwkJc3RhcnQgX0VYRV8gdHJhY2UyIDAwMXJldHVybiAwCisJCWNtZF9uYW1lIHRyYWNlMiAodHJhY2UyKQorCQlleGl0IGVsYXBzZWQ6X1RJTUVfIGNvZGU6MAorCQlhdGV4aXQgZWxhcHNlZDpfVElNRV8gY29kZTowCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDAyMTAvc2NydWJfbm9ybWFsLnBlcmwgYi90L3QwMjEwL3NjcnViX25vcm1hbC5wZXJsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM2NWQxYTgKLS0tIC9kZXYvbnVsbAorKysgYi90L3QwMjEwL3NjcnViX25vcm1hbC5wZXJsCkBAIC0wLDAgKzEsNDggQEAKKyMhL3Vzci9iaW4vcGVybAorIworIyBTY3J1YiB0aGUgdmFyaWFibGUgZmllbGRzIGZyb20gdGhlIG5vcm1hbCB0cmFjZTIgb3V0cHV0IHRvCisjIG1ha2UgdGVzdGluZyBlYXNpZXIuCisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK215ICRmbG9hdCA9ICdbMC05XSpcLlswLTldKyhbZUVdWy0rXT9bMC05XSspPyc7CisKKyMgVGhpcyBjb2RlIGFzc3VtZXMgdGhhdCB0aGUgdHJhY2UyIGRhdGEgd2FzIHdyaXR0ZW4gd2l0aCBiYXJlCisjIHR1cm5lZCBvbiAod2hpY2ggb21pdHMgdGhlICI8Y2xvY2s+IDxmaWxlPjo8bGluZT4iIHByZWZpeC4KKword2hpbGUgKDw+KSB7CisgICAgIyBWYXJpb3VzIG1lc3NhZ2VzIGluY2x1ZGUgYW4gZWxhcHNlZCB0aW1lIGluIHRoZSBtaWRkbGUKKyAgICAjIG9mIHRoZSBtZXNzYWdlLiAgUmVwbGFjZSB0aGUgdGltZSB3aXRoIGEgcGxhY2Vob2xkZXIgdG8KKyAgICAjIHNpbXBsaWZ5IG91ciBIRVJFRE9DIGluIHRoZSB0ZXN0IHNjcmlwdC4KKyAgICBzL2VsYXBzZWQ6JGZsb2F0L2VsYXBzZWQ6X1RJTUVfL2c7CisKKyAgICBteSAkbGluZSA9ICRfOworCisgICAgIyB3ZSBleHBlY3Q6CisgICAgIyAgICBzdGFydCA8YXJndjA+IFs8YXJndjE+IFs8YXJndjI+IFsuLi5dXV0KKyAgICAjCisgICAgIyB3aGVyZSBhcmd2MCBtaWdodCBiZSBhIHJlbGF0aXZlIG9yIGFic29sdXRlIHBhdGgsIHdpdGgKKyAgICAjIG9yIHdpdGhvdXQgcXVvdGVzLCBhbmQgcGxhdGZvcm0gZGVwZW5kZW50LiAgUmVwbGFjZSBhcmd2MAorICAgICMgd2l0aCBhIHRva2VuIGZvciBIRVJFRE9DIG1hdGNoaW5nIGluIHRoZSB0ZXN0IHNjcmlwdC4KKworICAgIGlmICgkbGluZSA9fiBtL15zdGFydC8pIHsKKwkkbGluZSA9fiAvXnN0YXJ0XHMrKC4qKS87CisJbXkgJGFyZ3YgPSAkMTsKKwkkYXJndiA9fiBtLyhcJ1teXCddKlwnfFteIF0rKVxzKyguKikvOworCW15ICRhcmd2XzAgPSAkMTsKKwlteSAkYXJndl9yZXN0ID0gJDI7CisKKwlwcmludCAic3RhcnQgX0VYRV8gJGFyZ3ZfcmVzdFxuIjsKKyAgICB9CisgICAgZWxzaWYgKCRsaW5lID1+IG0vXmNtZF9wYXRoLykgeworCSMgTGlrZXdpc2UsIHRoZSAnY21kX3BhdGgnIG1lc3NhZ2UgYnJlYWtzIG91dCBhcmd2WzBdLgorCSMKKwkjIFRoaXMgbGluZSBpcyBvbmx5IGVtaXR0ZWQgd2hlbiBSVU5USU1FX1BSRUZJWCBpcyBkZWZpbmVkLAorCSMgc28ganVzdCBvbWl0IGl0IGZvciB0ZXN0aW5nIHB1cnBvc2VzLgorCSMgcHJpbnQgImNtZF9wYXRoIF9FWEVfXG4iOworICAgIH0KKyAgICBlbHNlIHsKKwlwcmludCAiJGxpbmUiOworICAgIH0KK30KZGlmZiAtLWdpdCBhL3QvdDAyMTEtdHJhY2UyLXBlcmYuc2ggYi90L3QwMjExLXRyYWNlMi1wZXJmLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjZlZThlZTMKLS0tIC9kZXYvbnVsbAorKysgYi90L3QwMjExLXRyYWNlMi1wZXJmLnNoCkBAIC0wLDAgKzEsMTc0IEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0ndGVzdCB0cmFjZTIgZmFjaWxpdHkgKHBlcmYgdGFyZ2V0KScKKy4gLi90ZXN0LWxpYi5zaAorCisjIFR1cm4gb2ZmIGFueSBpbmhlcml0ZWQgdHJhY2UyIHNldHRpbmdzIGZvciB0aGlzIHRlc3QuCitzYW5lX3Vuc2V0IEdJVF9UUkFDRTIgR0lUX1RSQUNFMl9QRVJGIEdJVF9UUkFDRTJfRVZFTlQKK3NhbmVfdW5zZXQgR0lUX1RSQUNFMl9QRVJGX0JSSUVGCitzYW5lX3Vuc2V0IEdJVF9UUkFDRTJfQ09ORklHX1BBUkFNUworCisjIEFkZCB0L2hlbHBlciBkaXJlY3RvcnkgdG8gUEFUSCBzbyB0aGF0IHdlIGNhbiB1c2UgYSByZWxhdGl2ZQorIyBwYXRoIHRvIHJ1biBuZXN0ZWQgaW5zdGFuY2VzIG9mIHRlc3QtdG9vbC5leGUgKHNlZSAwMDRjaGlsZCkuCisjIFRoaXMgaGVscHMgd2l0aCBIRVJFRE9DIGNvbXBhcmlzb25zIGxhdGVyLgorVFRESVI9IiRHSVRfQlVJTERfRElSL3QvaGVscGVyLyIgJiYgZXhwb3J0IFRURElSCitQQVRIPSIkVFRESVI6JFBBVEgiICYmIGV4cG9ydCBQQVRICisKKyMgV2FybmluZzogdXNlIG9mICd0ZXN0X2NtcCcgbWF5IHJ1biB0ZXN0LXRvb2wuZXhlIGFuZC9vciBnaXQuZXhlCisjIFdhcm5pbmc6IHRvIGRvIHRoZSBhY3R1YWwgZGlmZi9jb21wYXJpc29uLCBzbyB0aGUgSEVSRURPQ3MgaGVyZQorIyBXYXJuaW5nOiBvbmx5IGNvdmVyIG91ciBhY3R1YWwgY2FsbHMgdG8gdGVzdC10b29sIGFuZC9vciBnaXQuCisjIFdhcm5pbmc6IFNvIHlvdSBtYXkgc2VlIGV4dHJhIGxpbmVzIGluIGFydGlmYWN0IGZpbGVzIHdoZW4KKyMgV2FybmluZzogaW50ZXJhY3RpdmVseSBkZWJ1Z2dpbmcuCisKK1Y9JChnaXQgdmVyc2lvbiB8IHNlZCAtZSAncy9eZ2l0IHZlcnNpb24gLy8nKSAmJiBleHBvcnQgVgorCisjIFRoZXJlIGFyZSBtdWx0aXBsZSB0cmFjZTIgdGFyZ2V0czogbm9ybWFsLCBwZXJmLCBhbmQgZXZlbnQuCisjIFRyYWNlMiBldmVudHMgd2lsbC9jYW4gYmUgd3JpdHRlbiB0byBlYWNoIGFjdGl2ZSB0YXJnZXQgKHN1YmplY3QKKyMgdG8gd2hhdGV2ZXIgZmlsdGVyaW5nIHRoYXQgdGFyZ2V0IGRlY2lkZXMgdG8gZG8pLgorIyBUZXN0IGVhY2ggdGFyZ2V0IGluZGVwZW5kZW50bHkuCisjCisjIERlZmVyIHNldHRpbmcgR0lUX1RSQUNFMl9QRVJGIHVudGlsIHRoZSBhY3R1YWwgY29tbWFuZCB3ZSB3YW50IHRvCisjIHRlc3QgYmVjYXVzZSBoaWRkZW4gZ2l0IGFuZCB0ZXN0LXRvb2wgY29tbWFuZHMgaW4gdGhlIHRlc3QKKyMgaGFybmVzcyBjYW4gY29udGFtaW5hdGUgb3VyIG91dHB1dC4KKworIyBFbmFibGUgImJyaWVmIiBmZWF0dXJlIHdoaWNoIHR1cm5zIG9mZiB0aGUgcHJlZml4OgorIyAgICAgIjxjbG9jaz4gPGZpbGU+OjxsaW5lPiB8IDxucl9wYXJlbnRzPiB8ICIKK0dJVF9UUkFDRTJfUEVSRl9CUklFRj0xICYmIGV4cG9ydCBHSVRfVFJBQ0UyX1BFUkZfQlJJRUYKKworIyBSZXBlYXQgc29tZSBvZiB0aGUgdDAyMTAgdGVzdHMgdXNpbmcgdGhlIHBlcmYgdGFyZ2V0IHN0cmVhbSBpbnN0ZWFkIG9mCisjIHRoZSBub3JtYWwgc3RyZWFtLgorIworIyBUb2tlbnMgaGVyZSBvZiB0aGUgZm9ybSBfRklFTERfIGhhdmUgYmVlbiByZXBsYWNlZCBpbiB0aGUgb2JzZXJ2ZWQgb3V0cHV0LgorCisjIFZlcmIgMDAxcmV0dXJuCisjCisjIEltcGxpY2l0IHJldHVybiBmcm9tIGNtZF88dmVyYj4gZnVuY3Rpb24gcHJvcGFnYXRlcyA8Y29kZT4uCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BlcmYgc3RyZWFtLCByZXR1cm4gY29kZSAwJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSB0cmFjZS5wZXJmIGFjdHVhbCBleHBlY3QiICYmCisJR0lUX1RSQUNFMl9QRVJGPSIkKHB3ZCkvdHJhY2UucGVyZiIgdGVzdC10b29sIHRyYWNlMiAwMDFyZXR1cm4gMCAmJgorCXBlcmwgIiRURVNUX0RJUkVDVE9SWS90MDIxMS9zY3J1Yl9wZXJmLnBlcmwiIDx0cmFjZS5wZXJmID5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkJZDB8bWFpbnx2ZXJzaW9ufHx8fHwkVgorCQlkMHxtYWlufHN0YXJ0fHxfVF9BQlNffHx8X0VYRV8gdHJhY2UyIDAwMXJldHVybiAwCisJCWQwfG1haW58Y21kX25hbWV8fHx8fHRyYWNlMiAodHJhY2UyKQorCQlkMHxtYWlufGV4aXR8fF9UX0FCU198fHxjb2RlOjAKKwkJZDB8bWFpbnxhdGV4aXR8fF9UX0FCU198fHxjb2RlOjAKKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BlcmYgc3RyZWFtLCByZXR1cm4gY29kZSAxJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSB0cmFjZS5wZXJmIGFjdHVhbCBleHBlY3QiICYmCisJdGVzdF9tdXN0X2ZhaWwgZW52IEdJVF9UUkFDRTJfUEVSRj0iJChwd2QpL3RyYWNlLnBlcmYiIHRlc3QtdG9vbCB0cmFjZTIgMDAxcmV0dXJuIDEgJiYKKwlwZXJsICIkVEVTVF9ESVJFQ1RPUlkvdDAyMTEvc2NydWJfcGVyZi5wZXJsIiA8dHJhY2UucGVyZiA+YWN0dWFsICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCWQwfG1haW58dmVyc2lvbnx8fHx8JFYKKwkJZDB8bWFpbnxzdGFydHx8X1RfQUJTX3x8fF9FWEVfIHRyYWNlMiAwMDFyZXR1cm4gMQorCQlkMHxtYWlufGNtZF9uYW1lfHx8fHx0cmFjZTIgKHRyYWNlMikKKwkJZDB8bWFpbnxleGl0fHxfVF9BQlNffHx8Y29kZToxCisJCWQwfG1haW58YXRleGl0fHxfVF9BQlNffHx8Y29kZToxCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCisjIFZlcmIgMDAzZXJyb3IKKyMKKyMgVG8gdGhlIGFib3ZlLCBhZGQgbXVsdGlwbGUgJ2Vycm9yIDxtc2c+JyBldmVudHMKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncGVyZiBzdHJlYW0sIGVycm9yIGV2ZW50JyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSB0cmFjZS5wZXJmIGFjdHVhbCBleHBlY3QiICYmCisJR0lUX1RSQUNFMl9QRVJGPSIkKHB3ZCkvdHJhY2UucGVyZiIgdGVzdC10b29sIHRyYWNlMiAwMDNlcnJvciAiaGVsbG8gd29ybGQiICJ0aGlzIGlzIGEgdGVzdCIgJiYKKwlwZXJsICIkVEVTVF9ESVJFQ1RPUlkvdDAyMTEvc2NydWJfcGVyZi5wZXJsIiA8dHJhY2UucGVyZiA+YWN0dWFsICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCWQwfG1haW58dmVyc2lvbnx8fHx8JFYKKwkJZDB8bWFpbnxzdGFydHx8X1RfQUJTX3x8fF9FWEVfIHRyYWNlMiAwMDNlcnJvciAnXCcnaGVsbG8gd29ybGQnXCcnICdcJyd0aGlzIGlzIGEgdGVzdCdcJycKKwkJZDB8bWFpbnxjbWRfbmFtZXx8fHx8dHJhY2UyICh0cmFjZTIpCisJCWQwfG1haW58ZXJyb3J8fHx8fGhlbGxvIHdvcmxkCisJCWQwfG1haW58ZXJyb3J8fHx8fHRoaXMgaXMgYSB0ZXN0CisJCWQwfG1haW58ZXhpdHx8X1RfQUJTX3x8fGNvZGU6MAorCQlkMHxtYWlufGF0ZXhpdHx8X1RfQUJTX3x8fGNvZGU6MAorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKworIyBWZXJiIDAwNGNoaWxkCisjCisjIFRlc3QgbmVzdGVkIHNwYXduaW5nIG9mIGNoaWxkIHByb2Nlc3Nlcy4KKyMKKyMgQ29uY2VwdHVhbGx5LCB0aGlzIGxvb2tzIGxpa2U6CisjICAgIFAxOiBUVCB0cmFjZTIgMDA0Y2hpbGQKKyMgICAgUDI6IHwtLS0gVFQgdHJhY2UyIDAwNGNoaWxkCisjICAgIFAzOiAgICAgIHwtLS0gVFQgdHJhY2UyIDAwMXJldHVybiAwCisjCisjIFdoaWNoIHNob3VsZCBnZW5lcmF0ZSBldmVudHM6CisjICAgIFAxOiB2ZXJzaW9uCisjICAgIFAxOiBzdGFydAorIyAgICBQMTogY21kX25hbWUKKyMgICAgUDE6IGNoaWxkX3N0YXJ0CisjICAgICAgICBQMjogdmVyc2lvbgorIyAgICAgICAgUDI6IHN0YXJ0CisjICAgICAgICBQMjogY21kX25hbWUKKyMgICAgICAgIFAyOiBjaGlsZF9zdGFydAorIyAgICAgICAgICAgIFAzOiB2ZXJzaW9uCisjICAgICAgICAgICAgUDM6IHN0YXJ0CisjICAgICAgICAgICAgUDM6IGNtZF9uYW1lCisjICAgICAgICAgICAgUDM6IGV4aXQKKyMgICAgICAgICAgICBQMzogYXRleGl0CisjICAgICAgICBQMjogY2hpbGRfZXhpdAorIyAgICAgICAgUDI6IGV4aXQKKyMgICAgICAgIFAyOiBhdGV4aXQKKyMgICAgUDE6IGNoaWxkX2V4aXQKKyMgICAgUDE6IGV4aXQKKyMgICAgUDE6IGF0ZXhpdAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwZXJmIHN0cmVhbSwgY2hpbGQgcHJvY2Vzc2VzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSB0cmFjZS5wZXJmIGFjdHVhbCBleHBlY3QiICYmCisJR0lUX1RSQUNFMl9QRVJGPSIkKHB3ZCkvdHJhY2UucGVyZiIgdGVzdC10b29sIHRyYWNlMiAwMDRjaGlsZCB0ZXN0LXRvb2wgdHJhY2UyIDAwNGNoaWxkIHRlc3QtdG9vbCB0cmFjZTIgMDAxcmV0dXJuIDAgJiYKKwlwZXJsICIkVEVTVF9ESVJFQ1RPUlkvdDAyMTEvc2NydWJfcGVyZi5wZXJsIiA8dHJhY2UucGVyZiA+YWN0dWFsICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCWQwfG1haW58dmVyc2lvbnx8fHx8JFYKKwkJZDB8bWFpbnxzdGFydHx8X1RfQUJTX3x8fF9FWEVfIHRyYWNlMiAwMDRjaGlsZCB0ZXN0LXRvb2wgdHJhY2UyIDAwNGNoaWxkIHRlc3QtdG9vbCB0cmFjZTIgMDAxcmV0dXJuIDAKKwkJZDB8bWFpbnxjbWRfbmFtZXx8fHx8dHJhY2UyICh0cmFjZTIpCisJCWQwfG1haW58Y2hpbGRfc3RhcnR8fF9UX0FCU198fHxbY2gwXSBjbGFzczo/IGFyZ3Y6W3Rlc3QtdG9vbCB0cmFjZTIgMDA0Y2hpbGQgdGVzdC10b29sIHRyYWNlMiAwMDFyZXR1cm4gMF0KKwkJZDF8bWFpbnx2ZXJzaW9ufHx8fHwkVgorCQlkMXxtYWlufHN0YXJ0fHxfVF9BQlNffHx8X0VYRV8gdHJhY2UyIDAwNGNoaWxkIHRlc3QtdG9vbCB0cmFjZTIgMDAxcmV0dXJuIDAKKwkJZDF8bWFpbnxjbWRfbmFtZXx8fHx8dHJhY2UyICh0cmFjZTIvdHJhY2UyKQorCQlkMXxtYWlufGNoaWxkX3N0YXJ0fHxfVF9BQlNffHx8W2NoMF0gY2xhc3M6PyBhcmd2Olt0ZXN0LXRvb2wgdHJhY2UyIDAwMXJldHVybiAwXQorCQlkMnxtYWlufHZlcnNpb258fHx8fCRWCisJCWQyfG1haW58c3RhcnR8fF9UX0FCU198fHxfRVhFXyB0cmFjZTIgMDAxcmV0dXJuIDAKKwkJZDJ8bWFpbnxjbWRfbmFtZXx8fHx8dHJhY2UyICh0cmFjZTIvdHJhY2UyL3RyYWNlMikKKwkJZDJ8bWFpbnxleGl0fHxfVF9BQlNffHx8Y29kZTowCisJCWQyfG1haW58YXRleGl0fHxfVF9BQlNffHx8Y29kZTowCisJCWQxfG1haW58Y2hpbGRfZXhpdHx8X1RfQUJTX3xfVF9SRUxffHxbY2gwXSBwaWQ6X1BJRF8gY29kZTowCisJCWQxfG1haW58ZXhpdHx8X1RfQUJTX3x8fGNvZGU6MAorCQlkMXxtYWlufGF0ZXhpdHx8X1RfQUJTX3x8fGNvZGU6MAorCQlkMHxtYWlufGNoaWxkX2V4aXR8fF9UX0FCU198X1RfUkVMX3x8W2NoMF0gcGlkOl9QSURfIGNvZGU6MAorCQlkMHxtYWlufGV4aXR8fF9UX0FCU198fHxjb2RlOjAKKwkJZDB8bWFpbnxhdGV4aXR8fF9UX0FCU198fHxjb2RlOjAKKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3NhbmVfdW5zZXQgR0lUX1RSQUNFMl9QRVJGX0JSSUVGCisKKyMgTm93IHRlc3Qgd2l0aG91dCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgYW5kIGdldCBhbGwgVHJhY2UyIHNldHRpbmdzCisjIGZyb20gdGhlIGdsb2JhbCBjb25maWcuCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3VzaW5nIGdsb2JhbCBjb25maWcsIHBlcmYgc3RyZWFtLCByZXR1cm4gY29kZSAwJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSB0cmFjZS5wZXJmIGFjdHVhbCBleHBlY3QiICYmCisJdGVzdF9jb25maWdfZ2xvYmFsIHRyYWNlMi5wZXJmQnJpZWYgMSAmJgorCXRlc3RfY29uZmlnX2dsb2JhbCB0cmFjZTIucGVyZlRhcmdldCAiJChwd2QpL3RyYWNlLnBlcmYiICYmCisJdGVzdC10b29sIHRyYWNlMiAwMDFyZXR1cm4gMCAmJgorCXBlcmwgIiRURVNUX0RJUkVDVE9SWS90MDIxMS9zY3J1Yl9wZXJmLnBlcmwiIDx0cmFjZS5wZXJmID5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkJZDB8bWFpbnx2ZXJzaW9ufHx8fHwkVgorCQlkMHxtYWlufHN0YXJ0fHxfVF9BQlNffHx8X0VYRV8gdHJhY2UyIDAwMXJldHVybiAwCisJCWQwfG1haW58Y21kX25hbWV8fHx8fHRyYWNlMiAodHJhY2UyKQorCQlkMHxtYWlufGV4aXR8fF9UX0FCU198fHxjb2RlOjAKKwkJZDB8bWFpbnxhdGV4aXR8fF9UX0FCU198fHxjb2RlOjAKKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MDIxMS9zY3J1Yl9wZXJmLnBlcmwgYi90L3QwMjExL3NjcnViX3BlcmYucGVybApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNTFhZjc4Ci0tLSAvZGV2L251bGwKKysrIGIvdC90MDIxMS9zY3J1Yl9wZXJmLnBlcmwKQEAgLTAsMCArMSw3NiBAQAorIyEvdXNyL2Jpbi9wZXJsCisjCisjIFNjcnViIHRoZSB2YXJpYWJsZSBmaWVsZHMgZnJvbSB0aGUgcGVyZiB0cmFjZTIgb3V0cHV0IHRvCisjIG1ha2UgdGVzdGluZyBlYXNpZXIuCisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK215ICRxcGF0aCA9ICdcJ1teXCddKlwnfFteIF0qJzsKKworbXkgJGNvbF9kZXB0aD0wOworbXkgJGNvbF90aHJlYWQ9MTsKK215ICRjb2xfZXZlbnQ9MjsKK215ICRjb2xfcmVwbz0zOworbXkgJGNvbF90X2Ficz00OworbXkgJGNvbF90X3JlbD01OworbXkgJGNvbF9jYXRlZ29yeT02OworbXkgJGNvbF9yZXN0PTc7CisKKyMgVGhpcyBjb2RlIGFzc3VtZXMgdGhhdCB0aGUgdHJhY2UyIGRhdGEgd2FzIHdyaXR0ZW4gd2l0aCBiYXJlCisjIHR1cm5lZCBvbiAod2hpY2ggb21pdHMgdGhlICI8Y2xvY2s+IDxmaWxlPjo8bGluZT4gfCA8cGFyZW50cz4iCisjIHByZWZpeC4KKword2hpbGUgKDw+KSB7CisgICAgbXkgQHRva2VucyA9IHNwbGl0IC9cfC87CisKKyAgICBmb3JlYWNoIG15ICRjb2wgKEB0b2tlbnMpIHsgJGNvbCA9fiBzL15ccyt8XHMrJC8vZzsgfQorCisgICAgaWYgKCR0b2tlbnNbJGNvbF9ldmVudF0gPX4gbS9ec3RhcnQvKSB7CisJIyBUaGUgJ3N0YXJ0JyBtZXNzYWdlIGxpc3RzIHRoZSBjb250ZW50cyBvZiBhcmd2IGluICRjb2xfcmVzdC4KKwkjIE9uIHNvbWUgcGxhdGZvcm1zIChXaW5kb3dzKSwgYXJndlswXSBpcyAqc29tZXRpbWVzKiBhIGNhbm9uaWNhbAorCSMgYWJzb2x1dGUgcGF0aCB0byB0aGUgRVhFIHJhdGhlciB0aGFuIHRoZSB2YWx1ZSBwYXNzZWQgaW4gdGhlCisJIyBzaGVsbCBzY3JpcHQuICBSZXBsYWNlIGl0IHdpdGggYSBwbGFjZWhvbGRlciB0byBzaW1wbGlmeSBvdXIKKwkjIEhFUkVET0MgaW4gdGhlIHRlc3Qgc2NyaXB0LgorCW15ICRhcmd2MDsKKwlteSAkYXJndlJlc3Q7CisJJHRva2Vuc1skY29sX3Jlc3RdID1+IHMvXigkcXBhdGgpXFcqKC4qKS9fRVhFXyAkMi87CisgICAgfQorICAgIGVsc2lmICgkdG9rZW5zWyRjb2xfZXZlbnRdID1+IG0vY21kX3BhdGgvKSB7CisJIyBMaWtld2lzZSwgdGhlICdjbWRfcGF0aCcgbWVzc2FnZSBicmVha3Mgb3V0IGFyZ3ZbMF0uCisJIworCSMgVGhpcyBsaW5lIGlzIG9ubHkgZW1pdHRlZCB3aGVuIFJVTlRJTUVfUFJFRklYIGlzIGRlZmluZWQsCisJIyBzbyBqdXN0IG9taXQgaXQgZm9yIHRlc3RpbmcgcHVycG9zZXMuCisJIyAkdG9rZW5zWyRjb2xfcmVzdF0gPSAiX0VYRV8iOworCWdvdG8gU0tJUF9MSU5FOworICAgIH0KKyAgICBlbHNpZiAoJHRva2Vuc1skY29sX2V2ZW50XSA9fiBtL2NoaWxkX2V4aXQvKSB7CisJJHRva2Vuc1skY29sX3Jlc3RdID1+IHMvIHBpZDpcZCogLyBwaWQ6X1BJRF8gLzsKKyAgICB9CisgICAgZWxzaWYgKCR0b2tlbnNbJGNvbF9ldmVudF0gPX4gbS9kYXRhLykgeworCWlmICgkdG9rZW5zWyRjb2xfY2F0ZWdvcnldID1+IG0vcHJvY2Vzcy8pIHsKKwkgICAgIyAnZGF0YScgYW5kICdkYXRhX2pzb24nIGV2ZW50cyBjb250YWluaW5nICdwcm9jZXNzJworCSAgICAjIGNhdGVnb3J5IGRhdGEgYXJlIGFzc3VtZWQgdG8gYmUgcGxhdGZvcm0tc3BlY2lmaWMKKwkgICAgIyBhbmQgaGlnaGx5IHZhcmlhYmxlLiAgSnVzdCBvbWl0IHRoZW0uCisJICAgIGdvdG8gU0tJUF9MSU5FOworCX0KKyAgICB9CisKKyAgICAjIHRfYWJzIGFuZCB0X3JlbCBhcmUgZWl0aGVyIGJsYW5rIG9yIGEgZmxvYXQuICBSZXBsYWNlIHRoZSBmbG9hdAorICAgICMgd2l0aCBhIGNvbnN0YW50IGZvciBtYXRjaGluZyB0aGUgSEVSRURPQyBpbiB0aGUgdGVzdCBzY3JpcHQuCisgICAgaWYgKCR0b2tlbnNbJGNvbF90X2Fic10gPX4gbS9cZC8pIHsKKwkkdG9rZW5zWyRjb2xfdF9hYnNdID0gIl9UX0FCU18iOworICAgIH0KKyAgICBpZiAoJHRva2Vuc1skY29sX3RfcmVsXSA9fiBtL1xkLykgeworCSR0b2tlbnNbJGNvbF90X3JlbF0gPSAiX1RfUkVMXyI7CisgICAgfQorCisgICAgbXkgJG91dDsKKworICAgICRvdXQgPSBqb2luKCd8JywgQHRva2Vucyk7CisgICAgcHJpbnQgIiRvdXRcbiI7CisKKyAgU0tJUF9MSU5FOgorfQorCisKZGlmZiAtLWdpdCBhL3QvdDAyMTItdHJhY2UyLWV2ZW50LnNoIGIvdC90MDIxMi10cmFjZTItZXZlbnQuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNzA2NWExYgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDAyMTItdHJhY2UyLWV2ZW50LnNoCkBAIC0wLDAgKzEsMjg3IEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0ndGVzdCB0cmFjZTIgZmFjaWxpdHknCisuIC4vdGVzdC1saWIuc2gKKworIyBUdXJuIG9mZiBhbnkgaW5oZXJpdGVkIHRyYWNlMiBzZXR0aW5ncyBmb3IgdGhpcyB0ZXN0Lgorc2FuZV91bnNldCBHSVRfVFJBQ0UyIEdJVF9UUkFDRTJfUEVSRiBHSVRfVFJBQ0UyX0VWRU5UCitzYW5lX3Vuc2V0IEdJVF9UUkFDRTJfQkFSRQorc2FuZV91bnNldCBHSVRfVFJBQ0UyX0NPTkZJR19QQVJBTVMKKworcGVybCAtTUpTT046OlBQIC1lIDAgPi9kZXYvbnVsbCAyPiYxICYmIHRlc3Rfc2V0X3ByZXJlcSBKU09OX1BQCisKKyMgQWRkIHQvaGVscGVyIGRpcmVjdG9yeSB0byBQQVRIIHNvIHRoYXQgd2UgY2FuIHVzZSBhIHJlbGF0aXZlCisjIHBhdGggdG8gcnVuIG5lc3RlZCBpbnN0YW5jZXMgb2YgdGVzdC10b29sLmV4ZSAoc2VlIDAwNGNoaWxkKS4KKyMgVGhpcyBoZWxwcyB3aXRoIEhFUkVET0MgY29tcGFyaXNvbnMgbGF0ZXIuCitUVERJUj0iJEdJVF9CVUlMRF9ESVIvdC9oZWxwZXIvIiAmJiBleHBvcnQgVFRESVIKK1BBVEg9IiRUVERJUjokUEFUSCIgJiYgZXhwb3J0IFBBVEgKKworIyBXYXJuaW5nOiB1c2Ugb2YgJ3Rlc3RfY21wJyBtYXkgcnVuIHRlc3QtdG9vbC5leGUgYW5kL29yIGdpdC5leGUKKyMgV2FybmluZzogdG8gZG8gdGhlIGFjdHVhbCBkaWZmL2NvbXBhcmlzb24sIHNvIHRoZSBIRVJFRE9DcyBoZXJlCisjIFdhcm5pbmc6IG9ubHkgY292ZXIgb3VyIGFjdHVhbCBjYWxscyB0byB0ZXN0LXRvb2wgYW5kL29yIGdpdC4KKyMgV2FybmluZzogU28geW91IG1heSBzZWUgZXh0cmEgbGluZXMgaW4gYXJ0aWZhY3QgZmlsZXMgd2hlbgorIyBXYXJuaW5nOiBpbnRlcmFjdGl2ZWx5IGRlYnVnZ2luZy4KKworVj0kKGdpdCB2ZXJzaW9uIHwgc2VkIC1lICdzL15naXQgdmVyc2lvbiAvLycpICYmIGV4cG9ydCBWCisKKyMgVGhlcmUgYXJlIG11bHRpcGxlIHRyYWNlMiB0YXJnZXRzOiBub3JtYWwsIHBlcmYsIGFuZCBldmVudC4KKyMgVHJhY2UyIGV2ZW50cyB3aWxsL2NhbiBiZSB3cml0dGVuIHRvIGVhY2ggYWN0aXZlIHRhcmdldCAoc3ViamVjdAorIyB0byB3aGF0ZXZlciBmaWx0ZXJpbmcgdGhhdCB0YXJnZXQgZGVjaWRlcyB0byBkbykuCisjIFRlc3QgZWFjaCB0YXJnZXQgaW5kZXBlbmRlbnRseS4KKyMKKyMgRGVmZXIgc2V0dGluZyBHSVRfVFJBQ0UyX1BFUkYgdW50aWwgdGhlIGFjdHVhbCBjb21tYW5kIHdlIHdhbnQgdG8KKyMgdGVzdCBiZWNhdXNlIGhpZGRlbiBnaXQgYW5kIHRlc3QtdG9vbCBjb21tYW5kcyBpbiB0aGUgdGVzdAorIyBoYXJuZXNzIGNhbiBjb250YW1pbmF0ZSBvdXIgb3V0cHV0LgorCisjIFdlIGRvbid0IGJvdGhlciByZXBlYXRpbmcgdGhlIDAwMXJldHVybiBhbmQgMDAyZXhpdCB0ZXN0cywgc2luY2UgdGhleQorIyBoYXZlIGNvdmVyYWdlIGluIHRoZSBub3JtYWwgYW5kIHBlcmYgdGFyZ2V0cy4KKworIyBWZXJiIDAwM2Vycm9yCisjCisjIFRvIHRoZSBhYm92ZSwgYWRkIG11bHRpcGxlICdlcnJvciA8bXNnPicgZXZlbnRzCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgSlNPTl9QUCAnZXZlbnQgc3RyZWFtLCBlcnJvciBldmVudCcgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gdHJhY2UuZXZlbnQgYWN0dWFsIGV4cGVjdCIgJiYKKwlHSVRfVFJBQ0UyX0VWRU5UPSIkKHB3ZCkvdHJhY2UuZXZlbnQiIHRlc3QtdG9vbCB0cmFjZTIgMDAzZXJyb3IgImhlbGxvIHdvcmxkIiAidGhpcyBpcyBhIHRlc3QiICYmCisJcGVybCAiJFRFU1RfRElSRUNUT1JZL3QwMjEyL3BhcnNlX2V2ZW50cy5wZXJsIiA8dHJhY2UuZXZlbnQgPmFjdHVhbCAmJgorCXNlZCAtZSAicy9efC8vIiA+ZXhwZWN0IDw8LUVPRiAmJgorCXxWQVIxID0geworCXwgICJfU0lEMF8iOnsKKwl8ICAgICJhcmd2IjpbCisJfCAgICAgICJfRVhFXyIsCisJfCAgICAgICJ0cmFjZTIiLAorCXwgICAgICAiMDAzZXJyb3IiLAorCXwgICAgICAiaGVsbG8gd29ybGQiLAorCXwgICAgICAidGhpcyBpcyBhIHRlc3QiCisJfCAgICBdLAorCXwgICAgImVycm9ycyI6WworCXwgICAgICAiJXMiLAorCXwgICAgICAiJXMiCisJfCAgICBdLAorCXwgICAgImV4aXRfY29kZSI6MCwKKwl8ICAgICJoaWVyYXJjaHkiOiJ0cmFjZTIiLAorCXwgICAgIm5hbWUiOiJ0cmFjZTIiLAorCXwgICAgInZlcnNpb24iOiIkViIKKwl8ICB9CisJfH07CisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCisjIFZlcmIgMDA0Y2hpbGQKKyMKKyMgVGVzdCBuZXN0ZWQgc3Bhd25pbmcgb2YgY2hpbGQgcHJvY2Vzc2VzLgorIworIyBDb25jZXB0dWFsbHksIHRoaXMgbG9va3MgbGlrZToKKyMgICAgUDE6IFRUIHRyYWNlMiAwMDRjaGlsZAorIyAgICBQMjogfC0tLSBUVCB0cmFjZTIgMDA0Y2hpbGQKKyMgICAgUDM6ICAgICAgfC0tLSBUVCB0cmFjZTIgMDAxcmV0dXJuIDAKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBKU09OX1BQICdldmVudCBzdHJlYW0sIHJldHVybiBjb2RlIDAnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIHRyYWNlLmV2ZW50IGFjdHVhbCBleHBlY3QiICYmCisJR0lUX1RSQUNFMl9FVkVOVD0iJChwd2QpL3RyYWNlLmV2ZW50IiB0ZXN0LXRvb2wgdHJhY2UyIDAwNGNoaWxkIHRlc3QtdG9vbCB0cmFjZTIgMDA0Y2hpbGQgdGVzdC10b29sIHRyYWNlMiAwMDFyZXR1cm4gMCAmJgorCXBlcmwgIiRURVNUX0RJUkVDVE9SWS90MDIxMi9wYXJzZV9ldmVudHMucGVybCIgPHRyYWNlLmV2ZW50ID5hY3R1YWwgJiYKKwlzZWQgLWUgInMvXnwvLyIgPmV4cGVjdCA8PC1FT0YgJiYKKwl8VkFSMSA9IHsKKwl8ICAiX1NJRDBfIjp7CisJfCAgICAiYXJndiI6WworCXwgICAgICAiX0VYRV8iLAorCXwgICAgICAidHJhY2UyIiwKKwl8ICAgICAgIjAwNGNoaWxkIiwKKwl8ICAgICAgInRlc3QtdG9vbCIsCisJfCAgICAgICJ0cmFjZTIiLAorCXwgICAgICAiMDA0Y2hpbGQiLAorCXwgICAgICAidGVzdC10b29sIiwKKwl8ICAgICAgInRyYWNlMiIsCisJfCAgICAgICIwMDFyZXR1cm4iLAorCXwgICAgICAiMCIKKwl8ICAgIF0sCisJfCAgICAiY2hpbGQiOnsKKwl8ICAgICAgIjAiOnsKKwl8ICAgICAgICAiY2hpbGRfYXJndiI6WworCXwgICAgICAgICAgIl9FWEVfIiwKKwl8ICAgICAgICAgICJ0cmFjZTIiLAorCXwgICAgICAgICAgIjAwNGNoaWxkIiwKKwl8ICAgICAgICAgICJ0ZXN0LXRvb2wiLAorCXwgICAgICAgICAgInRyYWNlMiIsCisJfCAgICAgICAgICAiMDAxcmV0dXJuIiwKKwl8ICAgICAgICAgICIwIgorCXwgICAgICAgIF0sCisJfCAgICAgICAgImNoaWxkX2NsYXNzIjoiPyIsCisJfCAgICAgICAgImNoaWxkX2NvZGUiOjAsCisJfCAgICAgICAgInVzZV9zaGVsbCI6MAorCXwgICAgICB9CisJfCAgICB9LAorCXwgICAgImV4aXRfY29kZSI6MCwKKwl8ICAgICJoaWVyYXJjaHkiOiJ0cmFjZTIiLAorCXwgICAgIm5hbWUiOiJ0cmFjZTIiLAorCXwgICAgInZlcnNpb24iOiIkViIKKwl8ICB9LAorCXwgICJfU0lEMF8vX1NJRDFfIjp7CisJfCAgICAiYXJndiI6WworCXwgICAgICAiX0VYRV8iLAorCXwgICAgICAidHJhY2UyIiwKKwl8ICAgICAgIjAwNGNoaWxkIiwKKwl8ICAgICAgInRlc3QtdG9vbCIsCisJfCAgICAgICJ0cmFjZTIiLAorCXwgICAgICAiMDAxcmV0dXJuIiwKKwl8ICAgICAgIjAiCisJfCAgICBdLAorCXwgICAgImNoaWxkIjp7CisJfCAgICAgICIwIjp7CisJfCAgICAgICAgImNoaWxkX2FyZ3YiOlsKKwl8ICAgICAgICAgICJfRVhFXyIsCisJfCAgICAgICAgICAidHJhY2UyIiwKKwl8ICAgICAgICAgICIwMDFyZXR1cm4iLAorCXwgICAgICAgICAgIjAiCisJfCAgICAgICAgXSwKKwl8ICAgICAgICAiY2hpbGRfY2xhc3MiOiI/IiwKKwl8ICAgICAgICAiY2hpbGRfY29kZSI6MCwKKwl8ICAgICAgICAidXNlX3NoZWxsIjowCisJfCAgICAgIH0KKwl8ICAgIH0sCisJfCAgICAiZXhpdF9jb2RlIjowLAorCXwgICAgImhpZXJhcmNoeSI6InRyYWNlMi90cmFjZTIiLAorCXwgICAgIm5hbWUiOiJ0cmFjZTIiLAorCXwgICAgInZlcnNpb24iOiIkViIKKwl8ICB9LAorCXwgICJfU0lEMF8vX1NJRDFfL19TSUQyXyI6eworCXwgICAgImFyZ3YiOlsKKwl8ICAgICAgIl9FWEVfIiwKKwl8ICAgICAgInRyYWNlMiIsCisJfCAgICAgICIwMDFyZXR1cm4iLAorCXwgICAgICAiMCIKKwl8ICAgIF0sCisJfCAgICAiZXhpdF9jb2RlIjowLAorCXwgICAgImhpZXJhcmNoeSI6InRyYWNlMi90cmFjZTIvdHJhY2UyIiwKKwl8ICAgICJuYW1lIjoidHJhY2UyIiwKKwl8ICAgICJ2ZXJzaW9uIjoiJFYiCisJfCAgfQorCXx9OworCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKworIyBUZXN0IGxpc3Rpbmcgb2YgYWxsICJpbnRlcmVzdGluZyIgY29uZmlnIHNldHRpbmdzLgorCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEpTT05fUFAgJ2V2ZW50IHN0cmVhbSwgbGlzdCBjb25maWcnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIHRyYWNlLmV2ZW50IGFjdHVhbCBleHBlY3QiICYmCisJZ2l0IGNvbmZpZyAtLWxvY2FsIHQwMjEyLmFiYyAxICYmCisJZ2l0IGNvbmZpZyAtLWxvY2FsIHQwMjEyLmRlZiAiaGVsbG8gd29ybGQiICYmCisJR0lUX1RSQUNFMl9FVkVOVD0iJChwd2QpL3RyYWNlLmV2ZW50IiBHSVRfVFJBQ0UyX0NPTkZJR19QQVJBTVM9InQwMjEyLioiIHRlc3QtdG9vbCB0cmFjZTIgMDAxcmV0dXJuIDAgJiYKKwlwZXJsICIkVEVTVF9ESVJFQ1RPUlkvdDAyMTIvcGFyc2VfZXZlbnRzLnBlcmwiIDx0cmFjZS5ldmVudCA+YWN0dWFsICYmCisJc2VkIC1lICJzL158Ly8iID5leHBlY3QgPDwtRU9GICYmCisJfFZBUjEgPSB7CisJfCAgIl9TSUQwXyI6eworCXwgICAgImFyZ3YiOlsKKwl8ICAgICAgIl9FWEVfIiwKKwl8ICAgICAgInRyYWNlMiIsCisJfCAgICAgICIwMDFyZXR1cm4iLAorCXwgICAgICAiMCIKKwl8ICAgIF0sCisJfCAgICAiZXhpdF9jb2RlIjowLAorCXwgICAgImhpZXJhcmNoeSI6InRyYWNlMiIsCisJfCAgICAibmFtZSI6InRyYWNlMiIsCisJfCAgICAicGFyYW1zIjpbCisJfCAgICAgIHsKKwl8ICAgICAgICAicGFyYW0iOiJ0MDIxMi5hYmMiLAorCXwgICAgICAgICJ2YWx1ZSI6IjEiCisJfCAgICAgIH0sCisJfCAgICAgIHsKKwl8ICAgICAgICAicGFyYW0iOiJ0MDIxMi5kZWYiLAorCXwgICAgICAgICJ2YWx1ZSI6ImhlbGxvIHdvcmxkIgorCXwgICAgICB9CisJfCAgICBdLAorCXwgICAgInZlcnNpb24iOiIkViIKKwl8ICB9CisJfH07CisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEpTT05fUFAgJ2Jhc2ljIHRyYWNlMl9kYXRhJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSB0cmFjZS5ldmVudCBhY3R1YWwgZXhwZWN0IiAmJgorCUdJVF9UUkFDRTJfRVZFTlQ9IiQocHdkKS90cmFjZS5ldmVudCIgdGVzdC10b29sIHRyYWNlMiAwMDZkYXRhIHRlc3RfY2F0ZWdvcnkgazEgdjEgdGVzdF9jYXRlZ29yeSBrMiB2MiAmJgorCXBlcmwgIiRURVNUX0RJUkVDVE9SWS90MDIxMi9wYXJzZV9ldmVudHMucGVybCIgPHRyYWNlLmV2ZW50ID5hY3R1YWwgJiYKKwlzZWQgLWUgInMvXnwvLyIgPmV4cGVjdCA8PC1FT0YgJiYKKwl8VkFSMSA9IHsKKwl8ICAiX1NJRDBfIjp7CisJfCAgICAiYXJndiI6WworCXwgICAgICAiX0VYRV8iLAorCXwgICAgICAidHJhY2UyIiwKKwl8ICAgICAgIjAwNmRhdGEiLAorCXwgICAgICAidGVzdF9jYXRlZ29yeSIsCisJfCAgICAgICJrMSIsCisJfCAgICAgICJ2MSIsCisJfCAgICAgICJ0ZXN0X2NhdGVnb3J5IiwKKwl8ICAgICAgImsyIiwKKwl8ICAgICAgInYyIgorCXwgICAgXSwKKwl8ICAgICJkYXRhIjp7CisJfCAgICAgICJ0ZXN0X2NhdGVnb3J5Ijp7CisJfCAgICAgICAgImsxIjoidjEiLAorCXwgICAgICAgICJrMiI6InYyIgorCXwgICAgICB9CisJfCAgICB9LAorCXwgICAgImV4aXRfY29kZSI6MCwKKwl8ICAgICJoaWVyYXJjaHkiOiJ0cmFjZTIiLAorCXwgICAgIm5hbWUiOiJ0cmFjZTIiLAorCXwgICAgInZlcnNpb24iOiIkViIKKwl8ICB9CisJfH07CisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCisjIE5vdyB0ZXN0IHdpdGhvdXQgZW52aXJvbm1lbnQgdmFyaWFibGVzIGFuZCBnZXQgYWxsIFRyYWNlMiBzZXR0aW5ncworIyBmcm9tIHRoZSBnbG9iYWwgY29uZmlnLgorCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEpTT05fUFAgJ3VzaW5nIGdsb2JhbCBjb25maWcsIGV2ZW50IHN0cmVhbSwgZXJyb3IgZXZlbnQnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIHRyYWNlLmV2ZW50IGFjdHVhbCBleHBlY3QiICYmCisJdGVzdF9jb25maWdfZ2xvYmFsIHRyYWNlMi5ldmVudFRhcmdldCAiJChwd2QpL3RyYWNlLmV2ZW50IiAmJgorCXRlc3QtdG9vbCB0cmFjZTIgMDAzZXJyb3IgImhlbGxvIHdvcmxkIiAidGhpcyBpcyBhIHRlc3QiICYmCisJcGVybCAiJFRFU1RfRElSRUNUT1JZL3QwMjEyL3BhcnNlX2V2ZW50cy5wZXJsIiA8dHJhY2UuZXZlbnQgPmFjdHVhbCAmJgorCXNlZCAtZSAicy9efC8vIiA+ZXhwZWN0IDw8LUVPRiAmJgorCXxWQVIxID0geworCXwgICJfU0lEMF8iOnsKKwl8ICAgICJhcmd2IjpbCisJfCAgICAgICJfRVhFXyIsCisJfCAgICAgICJ0cmFjZTIiLAorCXwgICAgICAiMDAzZXJyb3IiLAorCXwgICAgICAiaGVsbG8gd29ybGQiLAorCXwgICAgICAidGhpcyBpcyBhIHRlc3QiCisJfCAgICBdLAorCXwgICAgImVycm9ycyI6WworCXwgICAgICAiJXMiLAorCXwgICAgICAiJXMiCisJfCAgICBdLAorCXwgICAgImV4aXRfY29kZSI6MCwKKwl8ICAgICJoaWVyYXJjaHkiOiJ0cmFjZTIiLAorCXwgICAgIm5hbWUiOiJ0cmFjZTIiLAorCXwgICAgInZlcnNpb24iOiIkViIKKwl8ICB9CisJfH07CisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaXNjYXJkIHRyYWNlcyB3aGVuIHRoZXJlIGFyZSB0b28gbWFueSBmaWxlcycgJworCW1rZGlyIHRyYWNlX3RhcmdldF9kaXIgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1yIHRyYWNlX3RhcmdldF9kaXIiICYmCisJKAorCQlHSVRfVFJBQ0UyX01BWF9GSUxFUz01ICYmCisJCWV4cG9ydCBHSVRfVFJBQ0UyX01BWF9GSUxFUyAmJgorCQljZCB0cmFjZV90YXJnZXRfZGlyICYmCisJCXRlc3Rfc2VxICRHSVRfVFJBQ0UyX01BWF9GSUxFUyA+Li4vZXhwZWN0ZWRfZmlsZW5hbWVzLnR4dCAmJgorCQl4YXJncyB0b3VjaCA8Li4vZXhwZWN0ZWRfZmlsZW5hbWVzLnR4dCAmJgorCQljZCAuLiAmJgorCQlHSVRfVFJBQ0UyX0VWRU5UPSIkKHB3ZCkvdHJhY2VfdGFyZ2V0X2RpciIgdGVzdC10b29sIHRyYWNlMiAwMDFyZXR1cm4gMAorCSkgJiYKKwllY2hvIGdpdC10cmFjZTItZGlzY2FyZCA+PmV4cGVjdGVkX2ZpbGVuYW1lcy50eHQgJiYKKwlscyB0cmFjZV90YXJnZXRfZGlyID5sc19vdXRwdXQudHh0ICYmCisJdGVzdF9jbXAgZXhwZWN0ZWRfZmlsZW5hbWVzLnR4dCBsc19vdXRwdXQudHh0ICYmCisJaGVhZCAtbjEgdHJhY2VfdGFyZ2V0X2Rpci9naXQtdHJhY2UyLWRpc2NhcmQgfCBncmVwIFwiZXZlbnRcIjpcInZlcnNpb25cIiAmJgorCWhlYWQgLW4yIHRyYWNlX3RhcmdldF9kaXIvZ2l0LXRyYWNlMi1kaXNjYXJkIHwgdGFpbCAtbjEgfCBncmVwIFwiZXZlbnRcIjpcInRvb19tYW55X2ZpbGVzXCIKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QwMjEyL3BhcnNlX2V2ZW50cy5wZXJsIGIvdC90MDIxMi9wYXJzZV9ldmVudHMucGVybApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NTg0YmI1Ci0tLSAvZGV2L251bGwKKysrIGIvdC90MDIxMi9wYXJzZV9ldmVudHMucGVybApAQCAtMCwwICsxLDI1MSBAQAorIyEvdXNyL2Jpbi9wZXJsCisjCisjIFBhcnNlIGV2ZW50IHN0cmVhbSBhbmQgY29udmVydCBpbmRpdmlkdWFsIGV2ZW50cyBpbnRvIGEgc3VtbWFyeQorIyByZWNvcmQgZm9yIHRoZSBwcm9jZXNzLgorIworIyBHaXQuZXhlIGdlbmVyYXRlcyBvbmUgb3IgbW9yZSAiZXZlbnQiIHJlY29yZHMgZm9yIGVhY2ggQVBJIG1ldGhvZCwKKyMgc3VjaCBhcyAic3RhcnQgPGFyZ3Y+IiBhbmQgImV4aXQgPGNvZGU+IiwgZHVyaW5nIHRoZSBsaWZlIG9mIHRoZSBnaXQKKyMgcHJvY2Vzcy4gIEFkZGl0aW9uYWxseSwgdGhlIGlucHV0IG1heSBjb250YWluIGludGVybGVhdmVkIGV2ZW50cworIyBmcm9tIG11bHRpcGxlIGNvbmN1cnJlbnQgZ2l0IHByb2Nlc3NlcyBhbmQvb3IgbXVsdGlwbGUgdGhyZWFkcyBmcm9tCisjIHdpdGhpbiBhIGdpdCBwcm9jZXNzLgorIworIyBBY2N1bXVsYXRlIGV2ZW50cyBmb3IgZWFjaCBwcm9jZXNzIChiYXNlZCBvbiBpdHMgdW5pcXVlIFNJRCkgaW4gYQorIyBkaWN0aW9uYXJ5IGFuZCBlbWl0IHByb2Nlc3Mgc3VtbWFyeSByZWNvcmRzLgorIworIyBDb252ZXJ0IHNvbWUgb2YgdGhlIHZhcmlhYmxlIGZpZWxkcyAoc3VjaCBhcyBlbGFwc2VkIHRpbWUpIGludG8KKyMgcGxhY2Vob2xkZXJzIChvciBvbWl0IHRoZW0pIHRvIG1ha2UgSEVSRURPQyBjb21wYXJpc29ucyBlYXNpZXIgaW4KKyMgdGhlIHRlc3Qgc2NyaXB0cy4KKyMKKyMgV2UgbWF5IGFsc28gb21pdCBmaWVsZHMgbm90IChjdXJyZW50bHkpIHVzZWZ1bCBmb3IgdGVzdGluZyBwdXJwb3Nlcy4KKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKK3VzZSBKU09OOjpQUDsKK3VzZSBEYXRhOjpEdW1wZXI7Cit1c2UgR2V0b3B0OjpMb25nOworCisjIFRoZSB2ZXJzaW9uIG9mIHRoZSB0cmFjZTIgZXZlbnQgdGFyZ2V0IGZvcm1hdCB0aGF0IHdlIHVuZGVyc3RhbmQuCisjIFRoaXMgaXMgcmVwb3J0ZWQgaW4gdGhlICd2ZXJzaW9uJyBldmVudCBpbiB0aGUgJ2V2dCcgZmllbGQuCisjIEl0IGNvbWVzIGZyb20gdGhlIEdJVF9UUkFDRTJfRVZFTlRfVkVSU0lPTiBtYWNybyBpbiB0cmFjZTIvdHIyX3RndF9ldmVudC5jCitteSAkZXZ0X3ZlcnNpb24gPSAnMSc7CisKK215ICRzaG93X2NoaWxkcmVuID0gMTsKK215ICRzaG93X2V4ZWMgICAgID0gMTsKK215ICRzaG93X3RocmVhZHMgID0gMTsKKworIyBBIGhhY2sgdG8gZ2VuZXJhdGUgdGVzdCBIRVJFRE9DIGRhdGEgZm9yIHBhc3RpbmcgaW50byB0aGUgdGVzdCBzY3JpcHQuCisjIFVzYWdlOgorIyAgICBjZCAidC90cmFzaCBkaXJlY3RvcnkudDAyMTItdHJhY2UyLWV2ZW50IgorIyAgICAkVFQgdHJhY2UgLi4uID50cmFjZS5ldmVudAorIyAgICBWVj0kKC4uLy4uL2dpdC5leGUgdmVyc2lvbiB8IHNlZCAtZSAncy9eZ2l0IHZlcnNpb24gLy8nKQorIyAgICBwZXJsIC4uL3QwMjEyL3BhcnNlX2V2ZW50cy5wZXJsIC0tSEVSRURPQyAtLVZFUlNJT049JFZWIDx0cmFjZS5ldmVudCA+aGVyZWRvYworIyBUaGVuIHBhc3RlIGhlcmVkb2MgaW50byB5b3VyIG5ldyB0ZXN0LgorCitteSAkZ2VuX2hlcmVkb2MgPSAwOworbXkgJGdlbl92ZXJzaW9uID0gJyc7CisKK0dldE9wdGlvbnMoImNoaWxkcmVuISIgPT4gXCRzaG93X2NoaWxkcmVuLAorCSAgICJleGVjISIgICAgID0+IFwkc2hvd19leGVjLAorCSAgICJ0aHJlYWRzISIgID0+IFwkc2hvd190aHJlYWRzLAorCSAgICJIRVJFRE9DISIgID0+IFwkZ2VuX2hlcmVkb2MsCisJICAgIlZFUlNJT049cyIgPT4gXCRnZW5fdmVyc2lvbiAgICApCisgICAgb3IgZGllKCJFcnJvciBpbiBjb21tYW5kIGxpbmUgYXJndW1lbnRzXG4iKTsKKworCisjIFNJRHMgY29udGFpbnMgdGltZXN0YW1wcyBhbmQgUElEcyBvZiB0aGUgcHJvY2VzcyBhbmQgaXRzIHBhcmVudHMuCisjIFRoaXMgbWFrZXMgaXQgZGlmZmljdWx0IHRvIG1hdGNoIHVwIGluIGEgSEVSRURPQyBpbiB0aGUgdGVzdCBzY3JpcHQuCisjIEJ1aWxkIGEgbWFwIGZyb20gYWN0dWFsIFNJRHMgdG8gcHJlZGljdGFibGUgY29uc3RhbnQgdmFsdWVzIGFuZCB5ZXQKKyMga2VlcCB0aGUgcGFyZW50L2NoaWxkIHJlbGF0aW9uc2hpcHMuICBGb3IgZXhhbXBsZToKKyMgey4uLiwgInNpZCI6IjE1Mzk3MDY5NTI0NTgyNzYtODY1MiIsIC4uLn0KKyMgey4uLiwgInNpZCI6IjE1Mzk3MDY5NTI0NTgyNzYtODY1Mi8xNTM5NzA2OTUyNjQ5NDkzLTE1NDUyIiwgLi4ufQorIyBiZWNvbWVzOgorIyB7Li4uLCAic2lkIjoiX1NJRDFfIiwgLi4ufQorIyB7Li4uLCAic2lkIjoiX1NJRDFfL19TSUQyXyIsIC4uLn0KK215ICRzaWRfbWFwOworbXkgJHNpZF9jb3VudCA9IDA7CisKK215ICRwcm9jZXNzZXM7CisKK3doaWxlICg8PikgeworICAgIG15ICRsaW5lID0gZGVjb2RlX2pzb24oICRfICk7CisKKyAgICBteSAkc2lkID0gIiI7CisgICAgbXkgJHNpZF9zZXAgPSAiIjsKKworICAgIG15ICRyYXdfc2lkID0gJGxpbmUtPnsnc2lkJ307CisgICAgbXkgQHJhd19zaWRfcGFydHMgPSBzcGxpdCAvXC8vLCAkcmF3X3NpZDsKKyAgICBmb3JlYWNoIG15ICRyYXdfc2lkX2sgKEByYXdfc2lkX3BhcnRzKSB7CisJaWYgKCFleGlzdHMgJHNpZF9tYXAtPnskcmF3X3NpZF9rfSkgeworCSAgICAkc2lkX21hcC0+eyRyYXdfc2lkX2t9ID0gJ19TSUQnIC4gJHNpZF9jb3VudCAuICdfJzsKKwkgICAgJHNpZF9jb3VudCsrOworCX0KKwkkc2lkID0gJHNpZCAuICRzaWRfc2VwIC4gJHNpZF9tYXAtPnskcmF3X3NpZF9rfTsKKwkkc2lkX3NlcCA9ICcvJzsKKyAgICB9CisgICAgCisgICAgbXkgJGV2ZW50ID0gJGxpbmUtPnsnZXZlbnQnfTsKKworICAgIGlmICgkZXZlbnQgZXEgJ3ZlcnNpb24nKSB7CisJJHByb2Nlc3Nlcy0+eyRzaWR9LT57J3ZlcnNpb24nfSA9ICRsaW5lLT57J2V4ZSd9OworCWlmICgkZ2VuX2hlcmVkb2MgPT0gMSAmJiAkZ2VuX3ZlcnNpb24gZXEgJGxpbmUtPnsnZXhlJ30pIHsKKwkgICAgIyBJZiB3ZSBhcmUgZ2VuZXJhdGluZyBkYXRhIEZPUiB0aGUgdGVzdCBzY3JpcHQsIHJlcGxhY2UKKwkgICAgIyB0aGUgcmVwb3J0ZWQgZ2l0LmV4ZSB2ZXJzaW9uIHdpdGggYSByZWZlcmVuY2UgdG8gYW4KKwkgICAgIyBlbnZpcm9ubWVudCB2YXJpYWJsZS4gIFdoZW4gb3VyIG91dHB1dCBpcyBwYXN0ZWQgaW50bworCSAgICAjIHRoZSB0ZXN0IHNjcmlwdCwgaXQgd2lsbCB0aGVuIGJlIGV4cGFuZGVkIGluIGZ1dHVyZQorCSAgICAjIHRlc3QgcnVucyB0byB0aGUgVEhFTiBjdXJyZW50IHZlcnNpb24gb2YgZ2l0LmV4ZS4KKwkgICAgIyBXZSBhc3N1bWUgdGhhdCB0aGUgdGVzdCBzY3JpcHQgdXNlcyBlbnYgdmFyICRWLgorCSAgICAkcHJvY2Vzc2VzLT57JHNpZH0tPnsndmVyc2lvbid9ID0gIlwkViI7CisJfQorICAgIH0KKworICAgIGVsc2lmICgkZXZlbnQgZXEgJ3N0YXJ0JykgeworCSRwcm9jZXNzZXMtPnskc2lkfS0+eydhcmd2J30gPSAkbGluZS0+eydhcmd2J307CisJJHByb2Nlc3Nlcy0+eyRzaWR9LT57J2FyZ3YnfVswXSA9ICJfRVhFXyI7CisgICAgfQorCisgICAgZWxzaWYgKCRldmVudCBlcSAnZXhpdCcpIHsKKwkkcHJvY2Vzc2VzLT57JHNpZH0tPnsnZXhpdF9jb2RlJ30gPSAkbGluZS0+eydjb2RlJ307CisgICAgfQorCisgICAgZWxzaWYgKCRldmVudCBlcSAnYXRleGl0JykgeworCSRwcm9jZXNzZXMtPnskc2lkfS0+eydleGl0X2NvZGUnfSA9ICRsaW5lLT57J2NvZGUnfTsKKyAgICB9CisKKyAgICBlbHNpZiAoJGV2ZW50IGVxICdlcnJvcicpIHsKKwkjIEZvciBIRVJFRE9DIHB1cnBvc2VzLCB1c2UgdGhlIGVycm9yIG1lc3NhZ2UgZm9ybWF0IHN0cmluZyBpZgorCSMgYXZhaWxhYmxlLCByYXRoZXIgdGhhbiB0aGUgZm9ybWF0dGVkIG1lc3NhZ2UgKHdoaWNoIHByb2JhYmx5CisJIyBoYXMgYW4gYWJzb2x1dGUgcGF0aG5hbWUpLgorCWlmIChleGlzdHMgJGxpbmUtPnsnZm10J30pIHsKKwkgICAgcHVzaCggQHskcHJvY2Vzc2VzLT57JHNpZH0tPnsnZXJyb3JzJ319LCAkbGluZS0+eydmbXQnfSApOworCX0KKwllbHNpZiAoZXhpc3RzICRsaW5lLT57J21zZyd9KSB7CisJICAgIHB1c2goIEB7JHByb2Nlc3Nlcy0+eyRzaWR9LT57J2Vycm9ycyd9fSwgJGxpbmUtPnsnbXNnJ30gKTsKKwl9CisgICAgfQorCisgICAgZWxzaWYgKCRldmVudCBlcSAnY21kX3BhdGgnKSB7CisJIyMgJHByb2Nlc3Nlcy0+eyRzaWR9LT57J3BhdGgnfSA9ICRsaW5lLT57J3BhdGgnfTsKKwkjCisJIyBMaWtlIGluIHRoZSAnc3RhcnQnIGV2ZW50LCB3ZSBuZWVkIHRvIHJlcGxhY2UgdGhlIHZhbHVlIG9mCisJIyBhcmd2WzBdIHdpdGggYSB0b2tlbiBmb3IgSEVSRURPQyBwdXJwb3Nlcy4gIEhvd2V2ZXIsIHRoZQorCSMgZXZlbnQgaXMgb25seSBlbWl0dGVkIHdoZW4gUlVOVElNRV9QUkVGSVggaXMgZGVmaW5lZCwgc28KKwkjIGp1c3Qgb21pdCBpdCBmb3IgdGVzdGluZyBwdXJwb3Nlcy4KKwkjICRwcm9jZXNzZXMtPnskc2lkfS0+eydwYXRoJ30gPSAiX0VYRV8iOworICAgIH0KKyAgICAKKyAgICBlbHNpZiAoJGV2ZW50IGVxICdjbWRfbmFtZScpIHsKKwkkcHJvY2Vzc2VzLT57JHNpZH0tPnsnbmFtZSd9ID0gJGxpbmUtPnsnbmFtZSd9OworCSRwcm9jZXNzZXMtPnskc2lkfS0+eydoaWVyYXJjaHknfSA9ICRsaW5lLT57J2hpZXJhcmNoeSd9OworICAgIH0KKworICAgIGVsc2lmICgkZXZlbnQgZXEgJ2FsaWFzJykgeworCSRwcm9jZXNzZXMtPnskc2lkfS0+eydhbGlhcyd9LT57J2tleSd9ID0gJGxpbmUtPnsnYWxpYXMnfTsKKwkkcHJvY2Vzc2VzLT57JHNpZH0tPnsnYWxpYXMnfS0+eydhcmd2J30gPSAkbGluZS0+eydhcmd2J307CisgICAgfQorCisgICAgZWxzaWYgKCRldmVudCBlcSAnZGVmX3BhcmFtJykgeworCW15ICRrdjsKKwkka3YtPnsncGFyYW0nfSA9ICRsaW5lLT57J3BhcmFtJ307CisJJGt2LT57J3ZhbHVlJ30gPSAkbGluZS0+eyd2YWx1ZSd9OworCXB1c2goIEB7JHByb2Nlc3Nlcy0+eyRzaWR9LT57J3BhcmFtcyd9fSwgJGt2ICk7CisgICAgfQorCisgICAgZWxzaWYgKCRldmVudCBlcSAnY2hpbGRfc3RhcnQnKSB7CisJaWYgKCRzaG93X2NoaWxkcmVuID09IDEpIHsKKwkgICAgJHByb2Nlc3Nlcy0+eyRzaWR9LT57J2NoaWxkJ30tPnskbGluZS0+eydjaGlsZF9pZCd9fS0+eydjaGlsZF9jbGFzcyd9ID0gJGxpbmUtPnsnY2hpbGRfY2xhc3MnfTsKKwkgICAgJHByb2Nlc3Nlcy0+eyRzaWR9LT57J2NoaWxkJ30tPnskbGluZS0+eydjaGlsZF9pZCd9fS0+eydjaGlsZF9hcmd2J30gPSAkbGluZS0+eydhcmd2J307CisJICAgICRwcm9jZXNzZXMtPnskc2lkfS0+eydjaGlsZCd9LT57JGxpbmUtPnsnY2hpbGRfaWQnfX0tPnsnY2hpbGRfYXJndid9WzBdID0gIl9FWEVfIjsKKwkgICAgJHByb2Nlc3Nlcy0+eyRzaWR9LT57J2NoaWxkJ30tPnskbGluZS0+eydjaGlsZF9pZCd9fS0+eyd1c2Vfc2hlbGwnfSA9ICRsaW5lLT57J3VzZV9zaGVsbCd9ID8gMSA6IDA7CisJfQorICAgIH0KKworICAgIGVsc2lmICgkZXZlbnQgZXEgJ2NoaWxkX2V4aXQnKSB7CisJaWYgKCRzaG93X2NoaWxkcmVuID09IDEpIHsKKwkgICAgJHByb2Nlc3Nlcy0+eyRzaWR9LT57J2NoaWxkJ30tPnskbGluZS0+eydjaGlsZF9pZCd9fS0+eydjaGlsZF9jb2RlJ30gPSAkbGluZS0+eydjb2RlJ307CisJfQorICAgIH0KKworICAgICMgVE9ETyBkZWNpZGUgd2hhdCBpbmZvcm1hdGlvbiB3ZSB3YW50IHRvIHRlc3QgZnJvbSB0aHJlYWQgZXZlbnRzLgorCisgICAgZWxzaWYgKCRldmVudCBlcSAndGhyZWFkX3N0YXJ0JykgeworCWlmICgkc2hvd190aHJlYWRzID09IDEpIHsKKwl9CisgICAgfQorCisgICAgZWxzaWYgKCRldmVudCBlcSAndGhyZWFkX2V4aXQnKSB7CisJaWYgKCRzaG93X3RocmVhZHMgPT0gMSkgeworCX0KKyAgICB9CisKKyAgICAjIFRPRE8gZGVjaWRlIHdoYXQgaW5mb3JtYXRpb24gd2Ugd2FudCB0byB0ZXN0IGZyb20gZXhlYyBldmVudHMuCisKKyAgICBlbHNpZiAoJGV2ZW50IGVxICdleGVjJykgeworCWlmICgkc2hvd19leGVjID09IDEpIHsKKwl9CisgICAgfQorCisgICAgZWxzaWYgKCRldmVudCBlcSAnZXhlY19yZXN1bHQnKSB7CisJaWYgKCRzaG93X2V4ZWMgPT0gMSkgeworCX0KKyAgICB9CisKKyAgICBlbHNpZiAoJGV2ZW50IGVxICdkZWZfcGFyYW0nKSB7CisJIyBBY2N1bXVsYXRlIHBhcmFtZXRlciBrZXkvdmFsdWUgcGFpcnMgYnkga2V5IHJhdGhlciB0aGFuIGluIGFuIGFycmF5CisJIyBzbyB0aGF0IHdlIGdldCBvdmVyd3JpdGUgKGxhc3Qgb25lIHdpbnMpIGVmZmVjdHMuCisJJHByb2Nlc3Nlcy0+eyRzaWR9LT57J3BhcmFtcyd9LT57JGxpbmUtPnsncGFyYW0nfX0gPSAkbGluZS0+eyd2YWx1ZSd9OworICAgIH0KKworICAgIGVsc2lmICgkZXZlbnQgZXEgJ2RlZl9yZXBvJykgeworCSMgJHByb2Nlc3Nlcy0+eyRzaWR9LT57J3JlcG9zJ30tPnskbGluZS0+eydyZXBvJ319ID0gJGxpbmUtPnsnd29ya3RyZWUnfTsKKwkkcHJvY2Vzc2VzLT57JHNpZH0tPnsncmVwb3MnfS0+eyRsaW5lLT57J3JlcG8nfX0gPSAiX1dPUktUUkVFXyI7CisgICAgfQorCisgICAgIyBBIHNlcmllcyBvZiBwb3RlbnRpYWxseSBuZXN0ZWQgYW5kIHRocmVhZGVkIHJlZ2lvbiBhbmQgZGF0YSBldmVudHMKKyAgICAjIGlzIGZ1bmRhbWVudGFsbHkgaW5jb21wYXRpYmlsZSB3aXRoIHRoZSB0eXBlIG9mIHN1bW1hcnkgcmVjb3JkIHdlCisgICAgIyBhcmUgYnVpbGRpbmcgaW4gdGhpcyBzY3JpcHQuICBTaW5jZSB0aGV5IGFyZSBpbnRlbmRlZCBmb3IKKyAgICAjIHBlcmYtdHJhY2UtbGlrZSBhbmFseXNpcyByYXRoZXIgdGhhbiBhIHJlc3VsdCBzdW1tYXJ5LCB3ZSBpZ25vcmUKKyAgICAjIG1vc3Qgb2YgdGhlbSBoZXJlLgorCisgICAgIyBlbHNpZiAoJGV2ZW50IGVxICdyZWdpb25fZW50ZXInKSB7CisgICAgIyB9CisgICAgIyBlbHNpZiAoJGV2ZW50IGVxICdyZWdpb25fbGVhdmUnKSB7CisgICAgIyB9CisKKyAgICBlbHNpZiAoJGV2ZW50IGVxICdkYXRhJykgeworCW15ICRjYXQgPSAkbGluZS0+eydjYXRlZ29yeSd9OworCWlmICgkY2F0IGVxICd0ZXN0X2NhdGVnb3J5JykgeworCSAgICAKKwkgICAgbXkgJGtleSA9ICRsaW5lLT57J2tleSd9OworCSAgICBteSAkdmFsdWUgPSAkbGluZS0+eyd2YWx1ZSd9OworCSAgICAkcHJvY2Vzc2VzLT57JHNpZH0tPnsnZGF0YSd9LT57JGNhdH0tPnska2V5fSA9ICR2YWx1ZTsKKwl9CisgICAgfQorCisgICAgIyBUaGlzIHRyYWNlMiB0YXJnZXQgZG9lcyBub3QgZW1pdCAncHJpbnRmJyBldmVudHMuCisgICAgIworICAgICMgZWxzaWYgKCRldmVudCBlcSAncHJpbnRmJykgeworICAgICMgfQorfQorCisjIER1bXAgdGhlIHJlc3VsdGluZyBoYXNoIGludG8gc29tZXRoaW5nIHRoYXQgd2UgY2FuIGNvbXBhcmUgYWdhaW5zdAorIyBpbiB0aGUgdGVzdCBzY3JpcHQuICBUaGVzZSBvcHRpb25zIG1ha2UgRHVtcGVyIG91dHB1dCBsb29rIGEgbGl0dGxlCisjIGJpdCBsaWtlIEpTT04uICBBbHNvIGNvbnZlcnQgdmFyaWFibGUgcmVmZXJlbmNlcyBvZiB0aGUgZm9ybSAiJFZBUioiCisjIHNvIHRoYXQgdGhlIG1hdGNoaW5nIEhFUkVET0MgZG9lc24ndCBuZWVkIHRvIGVzY2FwZSBpdC4KKworJERhdGE6OkR1bXBlcjo6U29ydGtleXMgPSAxOworJERhdGE6OkR1bXBlcjo6SW5kZW50ID0gMTsKKyREYXRhOjpEdW1wZXI6OlB1cml0eSA9IDE7CiskRGF0YTo6RHVtcGVyOjpQYWlyID0gJzonOworCitteSAkb3V0ID0gRHVtcGVyKCRwcm9jZXNzZXMpOworJG91dCA9fiBzLycvIi9nOworJG91dCA9fiBzL1wkVkFSL1ZBUi9nOworCisjIEZpbmFsbHksIGlmIHdlJ3JlIHJ1bm5pbmcgdGhpcyBzY3JpcHQgdG8gZ2VuZXJhdGUgKG1hbnVhbGx5IGNvbmZpcm1lZCkKKyMgZGF0YSB0byBhZGQgdG8gdGhlIHRlc3Qgc2NyaXB0LCBndWFyZCB0aGUgaW5kZW50YXRpb24uCisKK2lmICgkZ2VuX2hlcmVkb2MgPT0gMSkgeworICAgICRvdXQgPX4gcy9eL1x0XHwvZ21zOworfQorCitwcmludCAkb3V0OwpkaWZmIC0tZ2l0IGEvdC90MDMwMC1jcmVkZW50aWFscy5zaCBiL3QvdDAzMDAtY3JlZGVudGlhbHMuc2gKaW5kZXggODJlYWFlYS4uMzlmMDk3ZSAxMDA3NTUKLS0tIGEvdC90MDMwMC1jcmVkZW50aWFscy5zaAorKysgYi90L3QwMzAwLWNyZWRlbnRpYWxzLnNoCkBAIC0yNDAsNiArMjQwLDU3IEBACiAJRU9GCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21hdGNoIG11bHRpcGxlIGNvbmZpZ3VyZWQgaGVscGVycycgJworCXRlc3RfY29uZmlnIGNyZWRlbnRpYWwuaGVscGVyICJ2ZXJiYXRpbSBcIlwiIFwiXCIiICYmCisJdGVzdF9jb25maWcgY3JlZGVudGlhbC5odHRwczovL2V4YW1wbGUuY29tLmhlbHBlciAiJEhFTFBFUiIgJiYKKwljaGVjayBmaWxsIDw8LVxFT0YKKwlwcm90b2NvbD1odHRwcworCWhvc3Q9ZXhhbXBsZS5jb20KKwlwYXRoPXJlcG8uZ2l0CisJLS0KKwlwcm90b2NvbD1odHRwcworCWhvc3Q9ZXhhbXBsZS5jb20KKwl1c2VybmFtZT1mb28KKwlwYXNzd29yZD1iYXIKKwktLQorCXZlcmJhdGltOiBnZXQKKwl2ZXJiYXRpbTogcHJvdG9jb2w9aHR0cHMKKwl2ZXJiYXRpbTogaG9zdD1leGFtcGxlLmNvbQorCUVPRgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdtYXRjaCBtdWx0aXBsZSBjb25maWd1cmVkIGhlbHBlcnMgd2l0aCBVUkxzJyAnCisJdGVzdF9jb25maWcgY3JlZGVudGlhbC5odHRwczovL2V4YW1wbGUuY29tL3JlcG8uZ2l0LmhlbHBlciAidmVyYmF0aW0gXCJcIiBcIlwiIiAmJgorCXRlc3RfY29uZmlnIGNyZWRlbnRpYWwuaHR0cHM6Ly9leGFtcGxlLmNvbS5oZWxwZXIgIiRIRUxQRVIiICYmCisJY2hlY2sgZmlsbCA8PC1cRU9GCisJcHJvdG9jb2w9aHR0cHMKKwlob3N0PWV4YW1wbGUuY29tCisJcGF0aD1yZXBvLmdpdAorCS0tCisJcHJvdG9jb2w9aHR0cHMKKwlob3N0PWV4YW1wbGUuY29tCisJdXNlcm5hbWU9Zm9vCisJcGFzc3dvcmQ9YmFyCisJLS0KKwl2ZXJiYXRpbTogZ2V0CisJdmVyYmF0aW06IHByb3RvY29sPWh0dHBzCisJdmVyYmF0aW06IGhvc3Q9ZXhhbXBsZS5jb20KKwlFT0YKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbWF0Y2ggcGVyY2VudC1lbmNvZGVkIHZhbHVlcycgJworCXRlc3RfY29uZmlnIGNyZWRlbnRpYWwuaHR0cHM6Ly9leGFtcGxlLmNvbS8lMjU2Ni5naXQuaGVscGVyICIkSEVMUEVSIiAmJgorCWNoZWNrIGZpbGwgPDwtXEVPRgorCXVybD1odHRwczovL2V4YW1wbGUuY29tLyUyNTY2LmdpdAorCS0tCisJcHJvdG9jb2w9aHR0cHMKKwlob3N0PWV4YW1wbGUuY29tCisJdXNlcm5hbWU9Zm9vCisJcGFzc3dvcmQ9YmFyCisJLS0KKwlFT0YKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAncHVsbCB1c2VybmFtZSBmcm9tIGNvbmZpZycgJwogCXRlc3RfY29uZmlnIGNyZWRlbnRpYWwuaHR0cHM6Ly9leGFtcGxlLmNvbS51c2VybmFtZSBmb28gJiYKIAljaGVjayBmaWxsIDw8LVxFT0YKQEAgLTI1NSw2ICszMDYsNjMgQEAKIAlFT0YKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnaG9ub3JzIHVzZXJuYW1lIGZyb20gVVJMIG92ZXIgaGVscGVyIChVUkwpJyAnCisJdGVzdF9jb25maWcgY3JlZGVudGlhbC5odHRwczovL2V4YW1wbGUuY29tLnVzZXJuYW1lIGJvYiAmJgorCXRlc3RfY29uZmlnIGNyZWRlbnRpYWwuaHR0cHM6Ly9leGFtcGxlLmNvbS5oZWxwZXIgInZlcmJhdGltIFwiXCIgYmFyIiAmJgorCWNoZWNrIGZpbGwgPDwtXEVPRgorCXVybD1odHRwczovL2FsaWNlQGV4YW1wbGUuY29tCisJLS0KKwlwcm90b2NvbD1odHRwcworCWhvc3Q9ZXhhbXBsZS5jb20KKwl1c2VybmFtZT1hbGljZQorCXBhc3N3b3JkPWJhcgorCS0tCisJdmVyYmF0aW06IGdldAorCXZlcmJhdGltOiBwcm90b2NvbD1odHRwcworCXZlcmJhdGltOiBob3N0PWV4YW1wbGUuY29tCisJdmVyYmF0aW06IHVzZXJuYW1lPWFsaWNlCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2hvbm9ycyB1c2VybmFtZSBmcm9tIFVSTCBvdmVyIGhlbHBlciAoY29tcG9uZW50cyknICcKKwl0ZXN0X2NvbmZpZyBjcmVkZW50aWFsLmh0dHBzOi8vZXhhbXBsZS5jb20udXNlcm5hbWUgYm9iICYmCisJdGVzdF9jb25maWcgY3JlZGVudGlhbC5odHRwczovL2V4YW1wbGUuY29tLmhlbHBlciAidmVyYmF0aW0gXCJcIiBiYXIiICYmCisJY2hlY2sgZmlsbCA8PC1cRU9GCisJcHJvdG9jb2w9aHR0cHMKKwlob3N0PWV4YW1wbGUuY29tCisJdXNlcm5hbWU9YWxpY2UKKwktLQorCXByb3RvY29sPWh0dHBzCisJaG9zdD1leGFtcGxlLmNvbQorCXVzZXJuYW1lPWFsaWNlCisJcGFzc3dvcmQ9YmFyCisJLS0KKwl2ZXJiYXRpbTogZ2V0CisJdmVyYmF0aW06IHByb3RvY29sPWh0dHBzCisJdmVyYmF0aW06IGhvc3Q9ZXhhbXBsZS5jb20KKwl2ZXJiYXRpbTogdXNlcm5hbWU9YWxpY2UKKwlFT0YKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbGFzdCBtYXRjaGluZyB1c2VybmFtZSB3aW5zJyAnCisJdGVzdF9jb25maWcgY3JlZGVudGlhbC5odHRwczovL2V4YW1wbGUuY29tL3BhdGguZ2l0LnVzZXJuYW1lIGJvYiAmJgorCXRlc3RfY29uZmlnIGNyZWRlbnRpYWwuaHR0cHM6Ly9leGFtcGxlLmNvbS51c2VybmFtZSBhbGljZSAmJgorCXRlc3RfY29uZmlnIGNyZWRlbnRpYWwuaHR0cHM6Ly9leGFtcGxlLmNvbS5oZWxwZXIgInZlcmJhdGltIFwiXCIgYmFyIiAmJgorCWNoZWNrIGZpbGwgPDwtXEVPRgorCXVybD1odHRwczovL2V4YW1wbGUuY29tL3BhdGguZ2l0CisJLS0KKwlwcm90b2NvbD1odHRwcworCWhvc3Q9ZXhhbXBsZS5jb20KKwl1c2VybmFtZT1hbGljZQorCXBhc3N3b3JkPWJhcgorCS0tCisJdmVyYmF0aW06IGdldAorCXZlcmJhdGltOiBwcm90b2NvbD1odHRwcworCXZlcmJhdGltOiBob3N0PWV4YW1wbGUuY29tCisJdmVyYmF0aW06IHVzZXJuYW1lPWFsaWNlCisJRU9GCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2h0dHAgcGF0aHMgY2FuIGJlIHBhcnQgb2YgY29udGV4dCcgJwogCWNoZWNrIGZpbGwgInZlcmJhdGltIGZvbyBiYXIiIDw8LVxFT0YgJiYKIAlwcm90b2NvbD1odHRwcwpAQCAtMjg5LDYgKzM5NywyNiBAQAogCUVPRgogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb250ZXh0IHVzZXMgdXJsbWF0Y2gnICcKKwl0ZXN0X2NvbmZpZyAiY3JlZGVudGlhbC5odHRwczovLyoub3JnLnVzZUh0dHBQYXRoIiB0cnVlICYmCisJY2hlY2sgZmlsbCAidmVyYmF0aW0gZm9vIGJhciIgPDwtXEVPRgorCXByb3RvY29sPWh0dHBzCisJaG9zdD1leGFtcGxlLm9yZworCXBhdGg9Zm9vLmdpdAorCS0tCisJcHJvdG9jb2w9aHR0cHMKKwlob3N0PWV4YW1wbGUub3JnCisJcGF0aD1mb28uZ2l0CisJdXNlcm5hbWU9Zm9vCisJcGFzc3dvcmQ9YmFyCisJLS0KKwl2ZXJiYXRpbTogZ2V0CisJdmVyYmF0aW06IHByb3RvY29sPWh0dHBzCisJdmVyYmF0aW06IGhvc3Q9ZXhhbXBsZS5vcmcKKwl2ZXJiYXRpbTogcGF0aD1mb28uZ2l0CisJRU9GCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2hlbHBlcnMgY2FuIGFib3J0IHRoZSBwcm9jZXNzJyAnCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IFwKIAkJLWMgY3JlZGVudGlhbC5oZWxwZXI9IiFmKCkgeyBlY2hvIHF1aXQ9MTsgfTsgZiIgXApkaWZmIC0tZ2l0IGEvdC90MDMwMS1jcmVkZW50aWFsLWNhY2hlLnNoIGIvdC90MDMwMS1jcmVkZW50aWFsLWNhY2hlLnNoCmluZGV4IGZkOTI1MzMuLmViZDVmYTUgMTAwNzU1Ci0tLSBhL3QvdDAzMDEtY3JlZGVudGlhbC1jYWNoZS5zaAorKysgYi90L3QwMzAxLWNyZWRlbnRpYWwtY2FjaGUuc2gKQEAgLTEwLDcgKzEwLDcgQEAKIH0KIAogIyBkb24ndCBsZWF2ZSBhIHN0YWxlIGRhZW1vbiBydW5uaW5nCi10cmFwICdjb2RlPSQ/OyBnaXQgY3JlZGVudGlhbC1jYWNoZSBleGl0OyAoZXhpdCAkY29kZSk7IGRpZScgRVhJVAordGVzdF9hdGV4aXQgJ2dpdCBjcmVkZW50aWFsLWNhY2hlIGV4aXQnCiAKICMgdGVzdCB0aGF0IHRoZSBkYWVtb24gd29ya3Mgd2l0aCBubyBzcGVjaWFsIHNldHVwCiBoZWxwZXJfdGVzdCBjYWNoZQpAQCAtMTA4LDkgKzEwOCw0IEBACiAKIGhlbHBlcl90ZXN0X3RpbWVvdXQgY2FjaGUgLS10aW1lb3V0PTEKIAotIyB3ZSBjYW4ndCByZWx5IG9uIG91ciAidHJhcCIgYWJvdmUgd29ya2luZyBhZnRlciB0ZXN0X2RvbmUsCi0jIGFzIHRlc3RfZG9uZSB3aWxsIGRlbGV0ZSB0aGUgdHJhc2ggZGlyZWN0b3J5IGNvbnRhaW5pbmcKLSMgb3VyIHNvY2tldCwgbGVhdmluZyB1cyB3aXRoIG5vIHdheSB0byBhY2Nlc3MgdGhlIGRhZW1vbi4KLWdpdCBjcmVkZW50aWFsLWNhY2hlIGV4aXQKLQogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QwNDEwLXBhcnRpYWwtY2xvbmUuc2ggYi90L3QwNDEwLXBhcnRpYWwtY2xvbmUuc2gKaW5kZXggYmEzODg3Zi4uYTM5ODhiZCAxMDA3NTUKLS0tIGEvdC90MDQxMC1wYXJ0aWFsLWNsb25lLnNoCisrKyBiL3QvdDA0MTAtcGFydGlhbC1jbG9uZS5zaApAQCAtMjYsNyArMjYsNyBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZXh0ZW5zaW9ucy5wYXJ0aWFsY2xvbmUgd2l0aG91dCBmaWx0ZXInICcKIAl0ZXN0X2NyZWF0ZV9yZXBvIHNlcnZlciAmJgogCWdpdCBjbG9uZSAtLWZpbHRlcj0iYmxvYjpub25lIiAiZmlsZTovLyQocHdkKS9zZXJ2ZXIiIGNsaWVudCAmJgotCWdpdCAtQyBjbGllbnQgY29uZmlnIC0tdW5zZXQgY29yZS5wYXJ0aWFsY2xvbmVmaWx0ZXIgJiYKKwlnaXQgLUMgY2xpZW50IGNvbmZpZyAtLXVuc2V0IHJlbW90ZS5vcmlnaW4ucGFydGlhbGNsb25lZmlsdGVyICYmCiAJZ2l0IC1DIGNsaWVudCBmZXRjaCBvcmlnaW4KICcKIApAQCAtMTY2LDggKzE2Niw5IEBACiAJIyBhc3NvY2lhdGVkIHBhY2tmaWxlIGNvbnRhaW5zIHRoZSBvYmplY3QKIAlscyByZXBvLy5naXQvb2JqZWN0cy9wYWNrL3BhY2stKi5wcm9taXNvciA+cHJvbWlzb3JsaXN0ICYmCiAJdGVzdF9saW5lX2NvdW50ID0gMSBwcm9taXNvcmxpc3QgJiYKLQlJRFg9JChjYXQgcHJvbWlzb3JsaXN0IHwgc2VkICJzL3Byb21pc29yJC9pZHgvIikgJiYKLQlnaXQgdmVyaWZ5LXBhY2sgLS12ZXJib3NlICIkSURYIiB8IGdyZXAgIiRIQVNIIgorCUlEWD0kKHNlZCAicy9wcm9taXNvciQvaWR4LyIgcHJvbWlzb3JsaXN0KSAmJgorCWdpdCB2ZXJpZnktcGFjayAtLXZlcmJvc2UgIiRJRFgiID5vdXQgJiYKKwlncmVwICIkSEFTSCIgb3V0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoaW5nIG9mIG1pc3Npbmcgb2JqZWN0cyB3b3JrcyB3aXRoIHJlZi1pbi13YW50IGVuYWJsZWQnICcKQEAgLTE4Miw4ICsxODMsNTUgQEAKIAlncmVwICJnaXQ8IGZldGNoPS4qcmVmLWluLXdhbnQiIHRyYWNlCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoaW5nIG9mIG1pc3Npbmcgb2JqZWN0cyBmcm9tIGFub3RoZXIgcHJvbWlzb3IgcmVtb3RlJyAnCisJZ2l0IGNsb25lICJmaWxlOi8vJChwd2QpL3NlcnZlciIgc2VydmVyMiAmJgorCXRlc3RfY29tbWl0IC1DIHNlcnZlcjIgYmFyICYmCisJZ2l0IC1DIHNlcnZlcjIgcmVwYWNrIC1hIC1kIC0td3JpdGUtYml0bWFwLWluZGV4ICYmCisJSEFTSDI9JChnaXQgLUMgc2VydmVyMiByZXYtcGFyc2UgYmFyKSAmJgorCisJZ2l0IC1DIHJlcG8gcmVtb3RlIGFkZCBzZXJ2ZXIyICJmaWxlOi8vJChwd2QpL3NlcnZlcjIiICYmCisJZ2l0IC1DIHJlcG8gY29uZmlnIHJlbW90ZS5zZXJ2ZXIyLnByb21pc29yIHRydWUgJiYKKwlnaXQgLUMgcmVwbyBjYXQtZmlsZSAtcCAiJEhBU0gyIiAmJgorCisJZ2l0IC1DIHJlcG8gZmV0Y2ggc2VydmVyMiAmJgorCXJtIC1yZiByZXBvLy5naXQvb2JqZWN0cy8qICYmCisJZ2l0IC1DIHJlcG8gY2F0LWZpbGUgLXAgIiRIQVNIMiIgJiYKKworCSMgRW5zdXJlIHRoYXQgdGhlIC5wcm9taXNvciBmaWxlIGlzIHdyaXR0ZW4sIGFuZCBjaGVjayB0aGF0IGl0cworCSMgYXNzb2NpYXRlZCBwYWNrZmlsZSBjb250YWlucyB0aGUgb2JqZWN0CisJbHMgcmVwby8uZ2l0L29iamVjdHMvcGFjay9wYWNrLSoucHJvbWlzb3IgPnByb21pc29ybGlzdCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDEgcHJvbWlzb3JsaXN0ICYmCisJSURYPSQoc2VkICJzL3Byb21pc29yJC9pZHgvIiBwcm9taXNvcmxpc3QpICYmCisJZ2l0IHZlcmlmeS1wYWNrIC0tdmVyYm9zZSAiJElEWCIgPm91dCAmJgorCWdyZXAgIiRIQVNIMiIgb3V0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoaW5nIG9mIG1pc3Npbmcgb2JqZWN0cyBjb25maWd1cmVzIGEgcHJvbWlzb3IgcmVtb3RlJyAnCisJZ2l0IGNsb25lICJmaWxlOi8vJChwd2QpL3NlcnZlciIgc2VydmVyMyAmJgorCXRlc3RfY29tbWl0IC1DIHNlcnZlcjMgYmF6ICYmCisJZ2l0IC1DIHNlcnZlcjMgcmVwYWNrIC1hIC1kIC0td3JpdGUtYml0bWFwLWluZGV4ICYmCisJSEFTSDM9JChnaXQgLUMgc2VydmVyMyByZXYtcGFyc2UgYmF6KSAmJgorCWdpdCAtQyBzZXJ2ZXIzIGNvbmZpZyB1cGxvYWRwYWNrLmFsbG93ZmlsdGVyIDEgJiYKKworCXJtIHJlcG8vLmdpdC9vYmplY3RzL3BhY2svcGFjay0qLnByb21pc29yICYmCisKKwlnaXQgLUMgcmVwbyByZW1vdGUgYWRkIHNlcnZlcjMgImZpbGU6Ly8kKHB3ZCkvc2VydmVyMyIgJiYKKwlnaXQgLUMgcmVwbyBmZXRjaCAtLWZpbHRlcj0iYmxvYjpub25lIiBzZXJ2ZXIzICRIQVNIMyAmJgorCisJdGVzdF9jbXBfY29uZmlnIC1DIHJlcG8gdHJ1ZSByZW1vdGUuc2VydmVyMy5wcm9taXNvciAmJgorCisJIyBFbnN1cmUgdGhhdCB0aGUgLnByb21pc29yIGZpbGUgaXMgd3JpdHRlbiwgYW5kIGNoZWNrIHRoYXQgaXRzCisJIyBhc3NvY2lhdGVkIHBhY2tmaWxlIGNvbnRhaW5zIHRoZSBvYmplY3QKKwlscyByZXBvLy5naXQvb2JqZWN0cy9wYWNrL3BhY2stKi5wcm9taXNvciA+cHJvbWlzb3JsaXN0ICYmCisJdGVzdF9saW5lX2NvdW50ID0gMSBwcm9taXNvcmxpc3QgJiYKKwlJRFg9JChzZWQgInMvcHJvbWlzb3IkL2lkeC8iIHByb21pc29ybGlzdCkgJiYKKwlnaXQgdmVyaWZ5LXBhY2sgLS12ZXJib3NlICIkSURYIiA+b3V0ICYmCisJZ3JlcCAiJEhBU0gzIiBvdXQKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2hpbmcgb2YgbWlzc2luZyBibG9icyB3b3JrcycgJwotCXJtIC1yZiBzZXJ2ZXIgcmVwbyAmJgorCXJtIC1yZiBzZXJ2ZXIgc2VydmVyMiByZXBvICYmCisJcm0gLXJmIHNlcnZlciBzZXJ2ZXIzIHJlcG8gJiYKIAl0ZXN0X2NyZWF0ZV9yZXBvIHNlcnZlciAmJgogCXRlc3RfY29tbWl0IC1DIHNlcnZlciBmb28gJiYKIAlnaXQgLUMgc2VydmVyIHJlcGFjayAtYSAtZCAtLXdyaXRlLWJpdG1hcC1pbmRleCAmJgpAQCAtMjM0LDcgKzI4Miw3IEBACiAKIAlnaXQgLUMgcmVwbyBjb25maWcgY29yZS5yZXBvc2l0b3J5Zm9ybWF0dmVyc2lvbiAxICYmCiAJZ2l0IC1DIHJlcG8gY29uZmlnIGV4dGVuc2lvbnMucGFydGlhbGNsb25lICJhcmJpdHJhcnkgc3RyaW5nIiAmJgotCUdJVF9URVNUX0NPTU1JVF9HUkFQSD0wIGdpdCAtQyByZXBvIHJldi1saXN0IC0tZXhjbHVkZS1wcm9taXNvci1vYmplY3RzIC0tb2JqZWN0cyBiYXIgPm91dCAmJgorCUdJVF9URVNUX0NPTU1JVF9HUkFQSD0wIGdpdCAtQyByZXBvIC1jIGNvcmUuY29tbWl0R3JhcGg9ZmFsc2UgcmV2LWxpc3QgLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgLS1vYmplY3RzIGJhciA+b3V0ICYmCiAJZ3JlcCAkKGdpdCAtQyByZXBvIHJldi1wYXJzZSBiYXIpIG91dCAmJgogCSEgZ3JlcCAkRk9PIG91dAogJwpAQCAtMzQ5LDcgKzM5Nyw3IEBACiAJZ3JlcCAkKGdpdCAtQyByZXBvIHJldi1wYXJzZSBiYXIpIG91dCAgIyBzYW5pdHkgY2hlY2sgdGhhdCBzb21lIHdhbGtpbmcgd2FzIGRvbmUKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAncmV2LWxpc3QgYWNjZXB0cyBtaXNzaW5nIGFuZCBwcm9taXNlZCBvYmplY3RzIG9uIGNvbW1hbmQgbGluZScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmV2LWxpc3QgZGllcyBmb3IgbWlzc2luZyBvYmplY3RzIG9uIGNtZCBsaW5lJyAnCiAJcm0gLXJmIHJlcG8gJiYKIAl0ZXN0X2NyZWF0ZV9yZXBvIHJlcG8gJiYKIAl0ZXN0X2NvbW1pdCAtQyByZXBvIGZvbyAmJgpAQCAtMzY2LDcgKzQxNCwzMiBAQAogCiAJZ2l0IC1DIHJlcG8gY29uZmlnIGNvcmUucmVwb3NpdG9yeWZvcm1hdHZlcnNpb24gMSAmJgogCWdpdCAtQyByZXBvIGNvbmZpZyBleHRlbnNpb25zLnBhcnRpYWxjbG9uZSAiYXJiaXRyYXJ5IHN0cmluZyIgJiYKLQlnaXQgLUMgcmVwbyByZXYtbGlzdCAtLWV4Y2x1ZGUtcHJvbWlzb3Itb2JqZWN0cyAtLW9iamVjdHMgIiRDT01NSVQiICIkVFJFRSIgIiRCTE9CIgorCisJZm9yIE9CSiBpbiAiJENPTU1JVCIgIiRUUkVFIiAiJEJMT0IiOyBkbworCQl0ZXN0X211c3RfZmFpbCBnaXQgLUMgcmVwbyByZXYtbGlzdCAtLW9iamVjdHMgXAorCQkJLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgIiRPQkoiICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyByZXBvIHJldi1saXN0IC0tb2JqZWN0cy1lZGdlLWFnZ3Jlc3NpdmUgXAorCQkJLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgIiRPQkoiICYmCisKKwkJIyBEbyBub3QgZGllIG9yIGNyYXNoIHdoZW4gLS1pZ25vcmUtbWlzc2luZyBpcyBwYXNzZWQuCisJCWdpdCAtQyByZXBvIHJldi1saXN0IC0taWdub3JlLW1pc3NpbmcgLS1vYmplY3RzIFwKKwkJCS0tZXhjbHVkZS1wcm9taXNvci1vYmplY3RzICIkT0JKIiAmJgorCQlnaXQgLUMgcmVwbyByZXYtbGlzdCAtLWlnbm9yZS1taXNzaW5nIC0tb2JqZWN0cy1lZGdlLWFnZ3Jlc3NpdmUgXAorCQkJLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgIiRPQkoiCisJZG9uZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaW5nbGUgcHJvbWlzb3IgcmVtb3RlIGNhbiBiZSByZS1pbml0aWFsaXplZCBncmFjZWZ1bGx5JyAnCisJIyBlbnN1cmUgb25lIHByb21pc29yIGlzIGluIHRoZSBwcm9taXNvcnMgbGlzdAorCXJtIC1yZiByZXBvICYmCisJdGVzdF9jcmVhdGVfcmVwbyByZXBvICYmCisJdGVzdF9jcmVhdGVfcmVwbyBvdGhlciAmJgorCWdpdCAtQyByZXBvIHJlbW90ZSBhZGQgZm9vICJmaWxlOi8vJChwd2QpL290aGVyIiAmJgorCWdpdCAtQyByZXBvIGNvbmZpZyByZW1vdGUuZm9vLnByb21pc29yIHRydWUgJiYKKwlnaXQgLUMgcmVwbyBjb25maWcgZXh0ZW5zaW9ucy5wYXJ0aWFsY2xvbmUgZm9vICYmCisKKwkjIHJlaW5pdGlhbGl6ZSB0aGUgcHJvbWlzb3JzIGxpc3QKKwlnaXQgLUMgcmVwbyBmZXRjaCAtLWZpbHRlcj1ibG9iOm5vbmUgZm9vCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2djIHJlcGFja3MgcHJvbWlzb3Igb2JqZWN0cyBzZXBhcmF0ZWx5IGZyb20gbm9uLXByb21pc29yIG9iamVjdHMnICcKQEAgLTQ4MCw3ICs1NTMsMjAgQEAKIAkhIGdyZXAgIiRUUkVFX0hBU0giIG91dAogJwogCi1MSUJfSFRUUERfUE9SVD0xMjM0NSAgIyBkZWZhdWx0IHBvcnQsIDQxMCwgY2Fubm90IGJlIHVzZWQgYXMgbm9uLXJvb3QKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RvIG5vdCBmZXRjaCB3aGVuIGNoZWNraW5nIGV4aXN0ZW5jZSBvZiB0cmVlIHdlIGNvbnN0cnVjdCBvdXJzZWx2ZXMnICcKKwlybSAtcmYgcmVwbyAmJgorCXRlc3RfY3JlYXRlX3JlcG8gcmVwbyAmJgorCXRlc3RfY29tbWl0IC1DIHJlcG8gYmFzZSAmJgorCXRlc3RfY29tbWl0IC1DIHJlcG8gc2lkZTEgJiYKKwlnaXQgLUMgcmVwbyBjaGVja291dCBiYXNlICYmCisJdGVzdF9jb21taXQgLUMgcmVwbyBzaWRlMiAmJgorCisJZ2l0IC1DIHJlcG8gY29uZmlnIGNvcmUucmVwb3NpdG9yeWZvcm1hdHZlcnNpb24gMSAmJgorCWdpdCAtQyByZXBvIGNvbmZpZyBleHRlbnNpb25zLnBhcnRpYWxjbG9uZSAiYXJiaXRyYXJ5IHN0cmluZyIgJiYKKworCWdpdCAtQyByZXBvIGNoZXJyeS1waWNrIHNpZGUxCisnCisKIC4gIiRURVNUX0RJUkVDVE9SWSIvbGliLWh0dHBkLnNoCiBzdGFydF9odHRwZAogCkBAIC01MDMsMTAgKzU4OSwxMiBAQAogCSMgYXNzb2NpYXRlZCBwYWNrZmlsZSBjb250YWlucyB0aGUgb2JqZWN0CiAJbHMgcmVwby8uZ2l0L29iamVjdHMvcGFjay9wYWNrLSoucHJvbWlzb3IgPnByb21pc29ybGlzdCAmJgogCXRlc3RfbGluZV9jb3VudCA9IDEgcHJvbWlzb3JsaXN0ICYmCi0JSURYPSQoY2F0IHByb21pc29ybGlzdCB8IHNlZCAicy9wcm9taXNvciQvaWR4LyIpICYmCi0JZ2l0IHZlcmlmeS1wYWNrIC0tdmVyYm9zZSAiJElEWCIgfCBncmVwICIkSEFTSCIKKwlJRFg9JChzZWQgInMvcHJvbWlzb3IkL2lkeC8iIHByb21pc29ybGlzdCkgJiYKKwlnaXQgdmVyaWZ5LXBhY2sgLS12ZXJib3NlICIkSURYIiA+b3V0ICYmCisJZ3JlcCAiJEhBU0giIG91dAogJwogCi1zdG9wX2h0dHBkCisjIERPIE5PVCBhZGQgbm9uLWh0dHBkLXNwZWNpZmljIHRlc3RzIGhlcmUsIGJlY2F1c2UgdGhlIGxhc3QgcGFydCBvZiB0aGlzCisjIHRlc3Qgc2NyaXB0IGlzIG9ubHkgZXhlY3V0ZWQgd2hlbiBodHRwZCBpcyBhdmFpbGFibGUgYW5kIGVuYWJsZWQuCiAKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MDUwMC1wcm9ncmVzcy1kaXNwbGF5LnNoIGIvdC90MDUwMC1wcm9ncmVzcy1kaXNwbGF5LnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmQyZDA4OGQKLS0tIC9kZXYvbnVsbAorKysgYi90L3QwNTAwLXByb2dyZXNzLWRpc3BsYXkuc2gKQEAgLTAsMCArMSwyODYgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdwcm9ncmVzcyBkaXNwbGF5JworCisuIC4vdGVzdC1saWIuc2gKKworc2hvd19jciAoKSB7CisJdHIgJ1wwMTUnIFEgfCBzZWQgLWUgInMvUS88Q1I+XFwkTEYvZyIKK30KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2ltcGxlIHByb2dyZXNzIGRpc3BsYXknICcKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJV29ya2luZyBoYXJkOiAxPENSPgorCVdvcmtpbmcgaGFyZDogMjxDUj4KKwlXb3JraW5nIGhhcmQ6IDU8Q1I+CisJV29ya2luZyBoYXJkOiA1LCBkb25lLgorCUVPRgorCisJY2F0ID5pbiA8PC1cRU9GICYmCisJdXBkYXRlCisJcHJvZ3Jlc3MgMQorCXVwZGF0ZQorCXByb2dyZXNzIDIKKwlwcm9ncmVzcyAzCisJcHJvZ3Jlc3MgNAorCXVwZGF0ZQorCXByb2dyZXNzIDUKKwlFT0YKKwl0ZXN0LXRvb2wgcHJvZ3Jlc3MgIldvcmtpbmcgaGFyZCIgPGluIDI+c3RkZXJyICYmCisKKwlzaG93X2NyIDxzdGRlcnIgPm91dCAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3Qgb3V0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Byb2dyZXNzIGRpc3BsYXkgd2l0aCB0b3RhbCcgJworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlXb3JraW5nIGhhcmQ6ICAzMyUgKDEvMyk8Q1I+CisJV29ya2luZyBoYXJkOiAgNjYlICgyLzMpPENSPgorCVdvcmtpbmcgaGFyZDogMTAwJSAoMy8zKTxDUj4KKwlXb3JraW5nIGhhcmQ6IDEwMCUgKDMvMyksIGRvbmUuCisJRU9GCisKKwljYXQgPmluIDw8LVxFT0YgJiYKKwlwcm9ncmVzcyAxCisJcHJvZ3Jlc3MgMgorCXByb2dyZXNzIDMKKwlFT0YKKwl0ZXN0LXRvb2wgcHJvZ3Jlc3MgLS10b3RhbD0zICJXb3JraW5nIGhhcmQiIDxpbiAyPnN0ZGVyciAmJgorCisJc2hvd19jciA8c3RkZXJyID5vdXQgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IG91dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcm9ncmVzcyBkaXNwbGF5IGJyZWFrcyBsb25nIGxpbmVzICMxJyAnCisJc2VkIC1lICJzL1okLy8iID5leHBlY3QgPDxcRU9GICYmCitXb3JraW5nIGhhcmQuLi4uLi4uMi4uLi4uLi4uLjMuLi4uLi4uLi40Li4uLi4uLi4uNS4uLi4uLi4uLjY6ICAgMCUgKDEwMC8xMDAwMDApPENSPgorV29ya2luZyBoYXJkLi4uLi4uLjIuLi4uLi4uLi4zLi4uLi4uLi4uNC4uLi4uLi4uLjUuLi4uLi4uLi42OiAgIDElICgxMDAwLzEwMDAwMCk8Q1I+CitXb3JraW5nIGhhcmQuLi4uLi4uMi4uLi4uLi4uLjMuLi4uLi4uLi40Li4uLi4uLi4uNS4uLi4uLi4uLjY6ICAgICAgICAgICAgICAgICAgIFoKKyAgIDEwJSAoMTAwMDAvMTAwMDAwKTxDUj4KKyAgMTAwJSAoMTAwMDAwLzEwMDAwMCk8Q1I+CisgIDEwMCUgKDEwMDAwMC8xMDAwMDApLCBkb25lLgorRU9GCisKKwljYXQgPmluIDw8LVxFT0YgJiYKKwlwcm9ncmVzcyAxMDAKKwlwcm9ncmVzcyAxMDAwCisJcHJvZ3Jlc3MgMTAwMDAKKwlwcm9ncmVzcyAxMDAwMDAKKwlFT0YKKwl0ZXN0LXRvb2wgcHJvZ3Jlc3MgLS10b3RhbD0xMDAwMDAgXAorCQkiV29ya2luZyBoYXJkLi4uLi4uLjIuLi4uLi4uLi4zLi4uLi4uLi4uNC4uLi4uLi4uLjUuLi4uLi4uLi42IiBcCisJCTxpbiAyPnN0ZGVyciAmJgorCisJc2hvd19jciA8c3RkZXJyID5vdXQgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IG91dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcm9ncmVzcyBkaXNwbGF5IGJyZWFrcyBsb25nIGxpbmVzICMyJyAnCisJIyBOb3RlOiB3ZSBkbyBub3QgbmVlZCB0aGF0IG1hbnkgc3BhY2VzIGFmdGVyIHRoZSB0aXRsZSB0byBjb3ZlciB1cAorCSMgdGhlIGxhc3QgbGluZSBiZWZvcmUgYnJlYWtpbmcgdGhlIHByb2dyZXNzIGxpbmUuCisJc2VkIC1lICJzL1okLy8iID5leHBlY3QgPDxcRU9GICYmCitXb3JraW5nIGhhcmQuLi4uLi4uMi4uLi4uLi4uLjMuLi4uLi4uLi40Li4uLi4uLi4uNS4uLi4uLi4uLjY6ICAgMCUgKDEvMTAwMDAwKTxDUj4KK1dvcmtpbmcgaGFyZC4uLi4uLi4yLi4uLi4uLi4uMy4uLi4uLi4uLjQuLi4uLi4uLi41Li4uLi4uLi4uNjogICAwJSAoMi8xMDAwMDApPENSPgorV29ya2luZyBoYXJkLi4uLi4uLjIuLi4uLi4uLi4zLi4uLi4uLi4uNC4uLi4uLi4uLjUuLi4uLi4uLi42OiAgICAgICAgICAgICAgICAgICBaCisgICAxMCUgKDEwMDAwLzEwMDAwMCk8Q1I+CisgIDEwMCUgKDEwMDAwMC8xMDAwMDApPENSPgorICAxMDAlICgxMDAwMDAvMTAwMDAwKSwgZG9uZS4KK0VPRgorCisJY2F0ID5pbiA8PC1cRU9GICYmCisJdXBkYXRlCisJcHJvZ3Jlc3MgMQorCXVwZGF0ZQorCXByb2dyZXNzIDIKKwlwcm9ncmVzcyAxMDAwMAorCXByb2dyZXNzIDEwMDAwMAorCUVPRgorCXRlc3QtdG9vbCBwcm9ncmVzcyAtLXRvdGFsPTEwMDAwMCBcCisJCSJXb3JraW5nIGhhcmQuLi4uLi4uMi4uLi4uLi4uLjMuLi4uLi4uLi40Li4uLi4uLi4uNS4uLi4uLi4uLjYiIFwKKwkJPGluIDI+c3RkZXJyICYmCisKKwlzaG93X2NyIDxzdGRlcnIgPm91dCAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3Qgb3V0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Byb2dyZXNzIGRpc3BsYXkgYnJlYWtzIGxvbmcgbGluZXMgIzMgLSBldmVuIHRoZSBmaXJzdCBpcyB0b28gbG9uZycgJworCSMgTm90ZTogd2UgZG8gbm90IGFjdHVhbGx5IG5lZWQgYW55IHNwYWNlcyBhdCB0aGUgZW5kIG9mIHRoZSB0aXRsZQorCSMgbGluZSwgYmVjYXVzZSB0aGVyZSBpcyBubyBwcmV2aW91cyBwcm9ncmVzcyBsaW5lIHRvIGNvdmVyIHVwLgorCXNlZCAtZSAicy9aJC8vIiA+ZXhwZWN0IDw8XEVPRiAmJgorV29ya2luZyBoYXJkLi4uLi4uLjIuLi4uLi4uLi4zLi4uLi4uLi4uNC4uLi4uLi4uLjUuLi4uLi4uLi42OiAgICAgICAgICAgICAgICAgICBaCisgICAyNSUgKDI1MDAwLzEwMDAwMCk8Q1I+CisgICA1MCUgKDUwMDAwLzEwMDAwMCk8Q1I+CisgICA3NSUgKDc1MDAwLzEwMDAwMCk8Q1I+CisgIDEwMCUgKDEwMDAwMC8xMDAwMDApPENSPgorICAxMDAlICgxMDAwMDAvMTAwMDAwKSwgZG9uZS4KK0VPRgorCisJY2F0ID5pbiA8PC1cRU9GICYmCisJcHJvZ3Jlc3MgMjUwMDAKKwlwcm9ncmVzcyA1MDAwMAorCXByb2dyZXNzIDc1MDAwCisJcHJvZ3Jlc3MgMTAwMDAwCisJRU9GCisJdGVzdC10b29sIHByb2dyZXNzIC0tdG90YWw9MTAwMDAwIFwKKwkJIldvcmtpbmcgaGFyZC4uLi4uLi4yLi4uLi4uLi4uMy4uLi4uLi4uLjQuLi4uLi4uLi41Li4uLi4uLi4uNiIgXAorCQk8aW4gMj5zdGRlcnIgJiYKKworCXNob3dfY3IgPHN0ZGVyciA+b3V0ICYmCisJdGVzdF9pMThuY21wIGV4cGVjdCBvdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncHJvZ3Jlc3MgZGlzcGxheSBicmVha3MgbG9uZyBsaW5lcyAjNCAtIHRpdGxlIGxpbmUgbWF0Y2hlcyB0ZXJtaW5hbCB3aWR0aCcgJworCWNhdCA+ZXhwZWN0IDw8XEVPRiAmJgorV29ya2luZyBoYXJkLi4uLi4uLjIuLi4uLi4uLi4zLi4uLi4uLi4uNC4uLi4uLi4uLjUuLi4uLi4uLi42Li4uLi4uLi4uNy4uLi4uLi4uLjoKKyAgIDI1JSAoMjUwMDAvMTAwMDAwKTxDUj4KKyAgIDUwJSAoNTAwMDAvMTAwMDAwKTxDUj4KKyAgIDc1JSAoNzUwMDAvMTAwMDAwKTxDUj4KKyAgMTAwJSAoMTAwMDAwLzEwMDAwMCk8Q1I+CisgIDEwMCUgKDEwMDAwMC8xMDAwMDApLCBkb25lLgorRU9GCisKKwljYXQgPmluIDw8LVxFT0YgJiYKKwlwcm9ncmVzcyAyNTAwMAorCXByb2dyZXNzIDUwMDAwCisJcHJvZ3Jlc3MgNzUwMDAKKwlwcm9ncmVzcyAxMDAwMDAKKwlFT0YKKwl0ZXN0LXRvb2wgcHJvZ3Jlc3MgLS10b3RhbD0xMDAwMDAgXAorCQkiV29ya2luZyBoYXJkLi4uLi4uLjIuLi4uLi4uLi4zLi4uLi4uLi4uNC4uLi4uLi4uLjUuLi4uLi4uLi42Li4uLi4uLi4uNy4uLi4uLi4uLiIgXAorCQk8aW4gMj5zdGRlcnIgJiYKKworCXNob3dfY3IgPHN0ZGVyciA+b3V0ICYmCisJdGVzdF9pMThuY21wIGV4cGVjdCBvdXQKKycKKworIyBQcm9ncmVzcyBjb3VudGVyIGdvZXMgYmFja3dhcmRzLCB0aGlzIHNob3VsZCBub3QgaGFwcGVuIGluIHByYWN0aWNlLgordGVzdF9leHBlY3Rfc3VjY2VzcyAncHJvZ3Jlc3Mgc2hvcnRlbnMgLSBjcmF6eSBjYWxsZXInICcKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJV29ya2luZyBoYXJkOiAgMTAlICgxMDAvMTAwMCk8Q1I+CisJV29ya2luZyBoYXJkOiAgMjAlICgyMDAvMTAwMCk8Q1I+CisJV29ya2luZyBoYXJkOiAgIDAlICgxLzEwMDApICA8Q1I+CisJV29ya2luZyBoYXJkOiAxMDAlICgxMDAwLzEwMDApPENSPgorCVdvcmtpbmcgaGFyZDogMTAwJSAoMTAwMC8xMDAwKSwgZG9uZS4KKwlFT0YKKworCWNhdCA+aW4gPDwtXEVPRiAmJgorCXByb2dyZXNzIDEwMAorCXByb2dyZXNzIDIwMAorCXByb2dyZXNzIDEKKwlwcm9ncmVzcyAxMDAwCisJRU9GCisJdGVzdC10b29sIHByb2dyZXNzIC0tdG90YWw9MTAwMCAiV29ya2luZyBoYXJkIiA8aW4gMj5zdGRlcnIgJiYKKworCXNob3dfY3IgPHN0ZGVyciA+b3V0ICYmCisJdGVzdF9pMThuY21wIGV4cGVjdCBvdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncHJvZ3Jlc3MgZGlzcGxheSB3aXRoIHRocm91Z2hwdXQnICcKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJV29ya2luZyBoYXJkOiAxMDxDUj4KKwlXb3JraW5nIGhhcmQ6IDIwLCAyMDAuMDAgS2lCIHwgMTAwLjAwIEtpQi9zPENSPgorCVdvcmtpbmcgaGFyZDogMzAsIDMwMC4wMCBLaUIgfCAxMDAuMDAgS2lCL3M8Q1I+CisJV29ya2luZyBoYXJkOiA0MCwgNDAwLjAwIEtpQiB8IDEwMC4wMCBLaUIvczxDUj4KKwlXb3JraW5nIGhhcmQ6IDQwLCA0MDAuMDAgS2lCIHwgMTAwLjAwIEtpQi9zLCBkb25lLgorCUVPRgorCisJY2F0ID5pbiA8PC1cRU9GICYmCisJdGhyb3VnaHB1dCAxMDI0MDAgMTAwMAorCXVwZGF0ZQorCXByb2dyZXNzIDEwCisJdGhyb3VnaHB1dCAyMDQ4MDAgMjAwMAorCXVwZGF0ZQorCXByb2dyZXNzIDIwCisJdGhyb3VnaHB1dCAzMDcyMDAgMzAwMAorCXVwZGF0ZQorCXByb2dyZXNzIDMwCisJdGhyb3VnaHB1dCA0MDk2MDAgNDAwMAorCXVwZGF0ZQorCXByb2dyZXNzIDQwCisJRU9GCisJdGVzdC10b29sIHByb2dyZXNzICJXb3JraW5nIGhhcmQiIDxpbiAyPnN0ZGVyciAmJgorCisJc2hvd19jciA8c3RkZXJyID5vdXQgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IG91dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcm9ncmVzcyBkaXNwbGF5IHdpdGggdGhyb3VnaHB1dCBhbmQgdG90YWwnICcKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJV29ya2luZyBoYXJkOiAgMjUlICgxMC80MCk8Q1I+CisJV29ya2luZyBoYXJkOiAgNTAlICgyMC80MCksIDIwMC4wMCBLaUIgfCAxMDAuMDAgS2lCL3M8Q1I+CisJV29ya2luZyBoYXJkOiAgNzUlICgzMC80MCksIDMwMC4wMCBLaUIgfCAxMDAuMDAgS2lCL3M8Q1I+CisJV29ya2luZyBoYXJkOiAxMDAlICg0MC80MCksIDQwMC4wMCBLaUIgfCAxMDAuMDAgS2lCL3M8Q1I+CisJV29ya2luZyBoYXJkOiAxMDAlICg0MC80MCksIDQwMC4wMCBLaUIgfCAxMDAuMDAgS2lCL3MsIGRvbmUuCisJRU9GCisKKwljYXQgPmluIDw8LVxFT0YgJiYKKwl0aHJvdWdocHV0IDEwMjQwMCAxMDAwCisJcHJvZ3Jlc3MgMTAKKwl0aHJvdWdocHV0IDIwNDgwMCAyMDAwCisJcHJvZ3Jlc3MgMjAKKwl0aHJvdWdocHV0IDMwNzIwMCAzMDAwCisJcHJvZ3Jlc3MgMzAKKwl0aHJvdWdocHV0IDQwOTYwMCA0MDAwCisJcHJvZ3Jlc3MgNDAKKwlFT0YKKwl0ZXN0LXRvb2wgcHJvZ3Jlc3MgLS10b3RhbD00MCAiV29ya2luZyBoYXJkIiA8aW4gMj5zdGRlcnIgJiYKKworCXNob3dfY3IgPHN0ZGVyciA+b3V0ICYmCisJdGVzdF9pMThuY21wIGV4cGVjdCBvdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY292ZXIgdXAgYWZ0ZXIgdGhyb3VnaHB1dCBzaG9ydGVucycgJworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlXb3JraW5nIGhhcmQ6IDE8Q1I+CisJV29ya2luZyBoYXJkOiAyLCA4MDAuMDAgS2lCIHwgNDAwLjAwIEtpQi9zPENSPgorCVdvcmtpbmcgaGFyZDogMywgMS4xNyBNaUIgfCA0MDAuMDAgS2lCL3MgIDxDUj4KKwlXb3JraW5nIGhhcmQ6IDQsIDEuNTYgTWlCIHwgNDAwLjAwIEtpQi9zPENSPgorCVdvcmtpbmcgaGFyZDogNCwgMS41NiBNaUIgfCA0MDAuMDAgS2lCL3MsIGRvbmUuCisJRU9GCisKKwljYXQgPmluIDw8LVxFT0YgJiYKKwl0aHJvdWdocHV0IDQwOTYwMCAxMDAwCisJdXBkYXRlCisJcHJvZ3Jlc3MgMQorCXRocm91Z2hwdXQgODE5MjAwIDIwMDAKKwl1cGRhdGUKKwlwcm9ncmVzcyAyCisJdGhyb3VnaHB1dCAxMjI4ODAwIDMwMDAKKwl1cGRhdGUKKwlwcm9ncmVzcyAzCisJdGhyb3VnaHB1dCAxNjM4NDAwIDQwMDAKKwl1cGRhdGUKKwlwcm9ncmVzcyA0CisJRU9GCisJdGVzdC10b29sIHByb2dyZXNzICJXb3JraW5nIGhhcmQiIDxpbiAyPnN0ZGVyciAmJgorCisJc2hvd19jciA8c3RkZXJyID5vdXQgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IG91dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3ZlciB1cCBhZnRlciB0aHJvdWdocHV0IHNob3J0ZW5zIGEgbG90JyAnCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCVdvcmtpbmcgaGFyZDogMTxDUj4KKwlXb3JraW5nIGhhcmQ6IDIsIDEwMDAuMDAgS2lCIHwgMTAwMC4wMCBLaUIvczxDUj4KKwlXb3JraW5nIGhhcmQ6IDMsIDMuMDAgTWlCIHwgMS41MCBNaUIvcyAgICAgIDxDUj4KKwlXb3JraW5nIGhhcmQ6IDMsIDMuMDAgTWlCIHwgMTAyNC4wMCBLaUIvcywgZG9uZS4KKwlFT0YKKworCWNhdCA+aW4gPDwtXEVPRiAmJgorCXRocm91Z2hwdXQgMSAxMDAwCisJdXBkYXRlCisJcHJvZ3Jlc3MgMQorCXRocm91Z2hwdXQgMTAyNDAwMCAyMDAwCisJdXBkYXRlCisJcHJvZ3Jlc3MgMgorCXRocm91Z2hwdXQgMzE0NTcyOCAzMDAwCisJdXBkYXRlCisJcHJvZ3Jlc3MgMworCUVPRgorCXRlc3QtdG9vbCBwcm9ncmVzcyAiV29ya2luZyBoYXJkIiA8aW4gMj5zdGRlcnIgJiYKKworCXNob3dfY3IgPHN0ZGVyciA+b3V0ICYmCisJdGVzdF9pMThuY21wIGV4cGVjdCBvdXQKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QxMDA3LWhhc2gtb2JqZWN0LnNoIGIvdC90MTAwNy1oYXNoLW9iamVjdC5zaAppbmRleCBhMzc3NTMwLi42NGIzNDBmIDEwMDc1NQotLS0gYS90L3QxMDA3LWhhc2gtb2JqZWN0LnNoCisrKyBiL3QvdDEwMDctaGFzaC1vYmplY3Quc2gKQEAgLTksMjIgKzksMTkgQEAKIH0KIAogdGVzdF9ibG9iX2RvZXNfbm90X2V4aXN0KCkgewotCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgU0hBMSAnYmxvYiBkb2VzIG5vdCBleGlzdCBpbiBkYXRhYmFzZScgIgorCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Jsb2IgZG9lcyBub3QgZXhpc3QgaW4gZGF0YWJhc2UnICIKIAkJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNhdC1maWxlIGJsb2IgJDEKIAkiCiB9CiAKIHRlc3RfYmxvYl9leGlzdHMoKSB7Ci0JdGVzdF9leHBlY3Rfc3VjY2VzcyBTSEExICdibG9iIGV4aXN0cyBpbiBkYXRhYmFzZScgIgorCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Jsb2IgZXhpc3RzIGluIGRhdGFiYXNlJyAiCiAJCWdpdCBjYXQtZmlsZSBibG9iICQxCiAJIgogfQogCiBoZWxsb19jb250ZW50PSJIZWxsbyBXb3JsZCIKLWhlbGxvX3NoYTE9NWUxYzMwOWRhZTdmNDVlMGYzOWIxYmYzYWMzY2Q5ZGIxMmU3ZDY4OQotCiBleGFtcGxlX2NvbnRlbnQ9IlRoaXMgaXMgYW4gZXhhbXBsZSIKLWV4YW1wbGVfc2hhMT1kZGQzZjgzNmQzZTNmYmI3YWUyODlhYTlhZTgzNTM2Zjc2OTU2Mzk5CiAKIHNldHVwX3JlcG8oKSB7CiAJZWNob193aXRob3V0X25ld2xpbmUgIiRoZWxsb19jb250ZW50IiA+IGhlbGxvCkBAIC00NCw3ICs0MSwxNiBAQAogCXJtIC1yZiAkdGVzdF9yZXBvCiB9CiAKLXNldHVwX3JlcG8KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCisJc2V0dXBfcmVwbyAmJgorCXRlc3Rfb2lkX2NhY2hlIDw8LUVPRgorCWhlbGxvIHNoYTE6NWUxYzMwOWRhZTdmNDVlMGYzOWIxYmYzYWMzY2Q5ZGIxMmU3ZDY4OQorCWhlbGxvIHNoYTI1NjoxZTNiNmMwNGQyZWViMmIzZTQ1YzhhMzMwNDQ1NDA0YzBiN2NjN2IyNTdlMmIwOTcxNjdkMjZmNTIzMDA5MGM0CisKKwlleGFtcGxlIHNoYTE6ZGRkM2Y4MzZkM2UzZmJiN2FlMjg5YWE5YWU4MzUzNmY3Njk1NjM5OQorCWV4YW1wbGUgc2hhMjU2OmI0NGZlMWZlNjU1ODk4NDgyNTM3MzdkYjg1OWJkNDkwNDUzNTEwNzE5ZDc0MjRkYWFiMDNkYWYwNzY3Yjg1YWUKKwlFT0YKKycKIAogIyBBcmd1bWVudCBjaGVja2luZwogCkBAIC03MywyMyArNzksMjMgQEAKIAogcHVzaF9yZXBvCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgU0hBMSAnaGFzaCBhIGZpbGUnICcKLQl0ZXN0ICRoZWxsb19zaGExID0gJChnaXQgaGFzaC1vYmplY3QgaGVsbG8pCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdoYXNoIGEgZmlsZScgJworCXRlc3QgIiQodGVzdF9vaWQgaGVsbG8pIiA9ICQoZ2l0IGhhc2gtb2JqZWN0IGhlbGxvKQogJwogCi10ZXN0X2Jsb2JfZG9lc19ub3RfZXhpc3QgJGhlbGxvX3NoYTEKK3Rlc3RfYmxvYl9kb2VzX25vdF9leGlzdCAiJCh0ZXN0X29pZCBoZWxsbykiCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgU0hBMSAnaGFzaCBmcm9tIHN0ZGluJyAnCi0JdGVzdCAkZXhhbXBsZV9zaGExID0gJChnaXQgaGFzaC1vYmplY3QgLS1zdGRpbiA8IGV4YW1wbGUpCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdoYXNoIGZyb20gc3RkaW4nICcKKwl0ZXN0ICIkKHRlc3Rfb2lkIGV4YW1wbGUpIiA9ICQoZ2l0IGhhc2gtb2JqZWN0IC0tc3RkaW4gPCBleGFtcGxlKQogJwogCi10ZXN0X2Jsb2JfZG9lc19ub3RfZXhpc3QgJGV4YW1wbGVfc2hhMQordGVzdF9ibG9iX2RvZXNfbm90X2V4aXN0ICIkKHRlc3Rfb2lkIGV4YW1wbGUpIgogCi10ZXN0X2V4cGVjdF9zdWNjZXNzIFNIQTEgJ2hhc2ggYSBmaWxlIGFuZCB3cml0ZSB0byBkYXRhYmFzZScgJwotCXRlc3QgJGhlbGxvX3NoYTEgPSAkKGdpdCBoYXNoLW9iamVjdCAtdyBoZWxsbykKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2hhc2ggYSBmaWxlIGFuZCB3cml0ZSB0byBkYXRhYmFzZScgJworCXRlc3QgIiQodGVzdF9vaWQgaGVsbG8pIiA9ICQoZ2l0IGhhc2gtb2JqZWN0IC13IGhlbGxvKQogJwogCi10ZXN0X2Jsb2JfZXhpc3RzICRoZWxsb19zaGExCit0ZXN0X2Jsb2JfZXhpc3RzICIkKHRlc3Rfb2lkIGhlbGxvKSIKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGhhc2gtb2JqZWN0IC0tc3RkaW4gZmlsZTEgPGZpbGUwIGZpcnN0IG9wZXJhdGVzIG9uIGZpbGUwLCB0aGVuIGZpbGUxJyAnCiAJZWNobyBmb28gPiBmaWxlMSAmJgpAQCAtMTYxLDExICsxNjcsMTEgQEAKIGZvciBhcmdzIGluICItdyAtLXN0ZGluIiAiLS1zdGRpbiAtdyI7IGRvCiAJcHVzaF9yZXBvCiAKLQl0ZXN0X2V4cGVjdF9zdWNjZXNzIFNIQTEgImhhc2ggZnJvbSBzdGRpbiBhbmQgd3JpdGUgdG8gZGF0YWJhc2UgKCRhcmdzKSIgJwotCQl0ZXN0ICRleGFtcGxlX3NoYTEgPSAkKGdpdCBoYXNoLW9iamVjdCAkYXJncyA8IGV4YW1wbGUpCisJdGVzdF9leHBlY3Rfc3VjY2VzcyAiaGFzaCBmcm9tIHN0ZGluIGFuZCB3cml0ZSB0byBkYXRhYmFzZSAoJGFyZ3MpIiAnCisJCXRlc3QgIiQodGVzdF9vaWQgZXhhbXBsZSkiID0gJChnaXQgaGFzaC1vYmplY3QgJGFyZ3MgPCBleGFtcGxlKQogCScKIAotCXRlc3RfYmxvYl9leGlzdHMgJGV4YW1wbGVfc2hhMQorCXRlc3RfYmxvYl9leGlzdHMgIiQodGVzdF9vaWQgZXhhbXBsZSkiCiAKIAlwb3BfcmVwbwogZG9uZQpAQCAtMTczLDIyICsxNzksMjIgQEAKIGZpbGVuYW1lcz0iaGVsbG8KIGV4YW1wbGUiCiAKLXNoYTFzPSIkaGVsbG9fc2hhMQotJGV4YW1wbGVfc2hhMSIKK29pZHM9IiQodGVzdF9vaWQgaGVsbG8pCiskKHRlc3Rfb2lkIGV4YW1wbGUpIgogCi10ZXN0X2V4cGVjdF9zdWNjZXNzIFNIQTEgImhhc2ggdHdvIGZpbGVzIHdpdGggbmFtZXMgb24gc3RkaW4iICcKLQl0ZXN0ICIkc2hhMXMiID0gIiQoZWNob193aXRob3V0X25ld2xpbmUgIiRmaWxlbmFtZXMiIHwgZ2l0IGhhc2gtb2JqZWN0IC0tc3RkaW4tcGF0aHMpIgordGVzdF9leHBlY3Rfc3VjY2VzcyAiaGFzaCB0d28gZmlsZXMgd2l0aCBuYW1lcyBvbiBzdGRpbiIgJworCXRlc3QgIiRvaWRzIiA9ICIkKGVjaG9fd2l0aG91dF9uZXdsaW5lICIkZmlsZW5hbWVzIiB8IGdpdCBoYXNoLW9iamVjdCAtLXN0ZGluLXBhdGhzKSIKICcKIAogZm9yIGFyZ3MgaW4gIi13IC0tc3RkaW4tcGF0aHMiICItLXN0ZGluLXBhdGhzIC13IjsgZG8KIAlwdXNoX3JlcG8KIAotCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgU0hBMSAiaGFzaCB0d28gZmlsZXMgd2l0aCBuYW1lcyBvbiBzdGRpbiBhbmQgd3JpdGUgdG8gZGF0YWJhc2UgKCRhcmdzKSIgJwotCQl0ZXN0ICIkc2hhMXMiID0gIiQoZWNob193aXRob3V0X25ld2xpbmUgIiRmaWxlbmFtZXMiIHwgZ2l0IGhhc2gtb2JqZWN0ICRhcmdzKSIKKwl0ZXN0X2V4cGVjdF9zdWNjZXNzICJoYXNoIHR3byBmaWxlcyB3aXRoIG5hbWVzIG9uIHN0ZGluIGFuZCB3cml0ZSB0byBkYXRhYmFzZSAoJGFyZ3MpIiAnCisJCXRlc3QgIiRvaWRzIiA9ICIkKGVjaG9fd2l0aG91dF9uZXdsaW5lICIkZmlsZW5hbWVzIiB8IGdpdCBoYXNoLW9iamVjdCAkYXJncykiCiAJJwogCi0JdGVzdF9ibG9iX2V4aXN0cyAkaGVsbG9fc2hhMQotCXRlc3RfYmxvYl9leGlzdHMgJGV4YW1wbGVfc2hhMQorCXRlc3RfYmxvYl9leGlzdHMgIiQodGVzdF9vaWQgaGVsbG8pIgorCXRlc3RfYmxvYl9leGlzdHMgIiQodGVzdF9vaWQgZXhhbXBsZSkiCiAKIAlwb3BfcmVwbwogZG9uZQpAQCAtMTk5LDEwICsyMDUsNiBAQAogCXRlc3RfaTE4bmdyZXAgInRvby1zaG9ydCB0cmVlIG9iamVjdCIgZXJyCiAnCiAKLWhleDJvY3QoKSB7Ci0gICAgcGVybCAtbmUgJ3ByaW50ZiAiXFwlMDNvIiwgaGV4IGZvciAvLi4vZycKLX0KLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbWFsZm9ybWVkIG1vZGUgaW4gdHJlZScgJwogCWhleF9zaGExPSQoZWNobyBmb28gfCBnaXQgaGFzaC1vYmplY3QgLS1zdGRpbiAtdykgJiYKIAliaW5fc2hhMT0kKGVjaG8gJGhleF9zaGExIHwgaGV4Mm9jdCkgJiYKZGlmZiAtLWdpdCBhL3QvdDEwMTEtcmVhZC10cmVlLXNwYXJzZS1jaGVja291dC5zaCBiL3QvdDEwMTEtcmVhZC10cmVlLXNwYXJzZS1jaGVja291dC5zaAppbmRleCBiYTcxYjE1Li5lYjQ0YmFmIDEwMDc1NQotLS0gYS90L3QxMDExLXJlYWQtdHJlZS1zcGFyc2UtY2hlY2tvdXQuc2gKKysrIGIvdC90MTAxMS1yZWFkLXRyZWUtc3BhcnNlLWNoZWNrb3V0LnNoCkBAIC0yMTUsNyArMjE1LDYgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnaW5kZXggcmVtb3ZhbCBhbmQgd29ya3RyZWUgbmFycm93aW5nIGF0IHRoZSBzYW1lIHRpbWUnICcKLQk+ZW1wdHkgJiYKIAllY2hvIGluaXQudCA+LmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCAmJgogCWVjaG8gc3ViL2FkZGVkID4+LmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCAmJgogCWdpdCBjaGVja291dCAtZiB0b3AgJiYKQEAgLTIyMyw3ICsyMjIsNyBAQAogCWdpdCBjaGVja291dCByZW1vdmVkICYmCiAJZ2l0IGxzLWZpbGVzIHN1Yi9hZGRlZCA+cmVzdWx0ICYmCiAJdGVzdCAhIC1mIHN1Yi9hZGRlZCAmJgotCXRlc3RfY21wIGVtcHR5IHJlc3VsdAorCXRlc3RfbXVzdF9iZV9lbXB0eSByZXN1bHQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVhZC10cmVlIC0tcmVzZXQgcmVtb3ZlcyBvdXRzaWRlIHdvcmt0cmVlJyAnCmRpZmYgLS1naXQgYS90L3QxMDUwLWxhcmdlLnNoIGIvdC90MTA1MC1sYXJnZS5zaAppbmRleCAxYTliMjFiLi4xODRiNDc5IDEwMDc1NQotLS0gYS90L3QxMDUwLWxhcmdlLnNoCisrKyBiL3QvdDEwNTAtbGFyZ2Uuc2gKQEAgLTgsNyArOCw3IEBACiAjIFRoaXMgc2hvdWxkIGJlIG1vdmVkIHRvIHRlc3QtbGliLnNoIHRvZ2V0aGVyIHdpdGggdGhlCiAjIGNvcHkgaW4gdDAwMjEgYWZ0ZXIgYm90aCB0b3BpY3MgaGF2ZSBncmFkdWF0ZWQgdG8gJ21hc3RlcicuCiBmaWxlX3NpemUgKCkgewotCXBlcmwgLWUgJ3ByaW50IC1zICRBUkdWWzBdJyAiJDEiCisJdGVzdC10b29sIHBhdGgtdXRpbHMgZmlsZS1zaXplICIkMSIKIH0KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBzZXR1cCAnCkBAIC01Myw3ICs1Myw4IEBACiAJZm9yIHAgaW4gLmdpdC9vYmplY3RzL3BhY2svcGFjay0qLnBhY2sKIAlkbwogCQljb3VudD0kKCggJGNvdW50ICsgMSApKQotCQlpZiB0ZXN0IC1mICIkcCIgJiYgaWR4PSR7cCUucGFja30uaWR4ICYmIHRlc3QgLWYgIiRpZHgiCisJCWlmIHRlc3RfcGF0aF9pc19maWxlICIkcCIgJiYKKwkJICAgaWR4PSR7cCUucGFja30uaWR4ICYmIHRlc3RfcGF0aF9pc19maWxlICIkaWR4IgogCQl0aGVuCiAJCQljb250aW51ZQogCQlmaQpAQCAtNjUsNyArNjYsNyBAQAogCXRlc3QgJGNudCA9IDIgJiYKIAlmb3IgbCBpbiAuZ2l0L29iamVjdHMvPz8vPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8KIAlkbwotCQl0ZXN0IC1mICIkbCIgfHwgY29udGludWUKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgIiRsIiB8fCBjb250aW51ZQogCQliYWQ9dAogCWRvbmUgJiYKIAl0ZXN0IC16ICIkYmFkIiAmJgpAQCAtNzYsNyArNzcsOCBAQAogCWZvciBwIGluIC5naXQvb2JqZWN0cy9wYWNrL3BhY2stKi5wYWNrCiAJZG8KIAkJY291bnQ9JCgoICRjb3VudCArIDEgKSkKLQkJaWYgdGVzdCAtZiAiJHAiICYmIGlkeD0ke3AlLnBhY2t9LmlkeCAmJiB0ZXN0IC1mICIkaWR4IgorCQlpZiB0ZXN0X3BhdGhfaXNfZmlsZSAiJHAiICYmCisJCSAgIGlkeD0ke3AlLnBhY2t9LmlkeCAmJiB0ZXN0X3BhdGhfaXNfZmlsZSAiJGlkeCIKIAkJdGhlbgogCQkJY29udGludWUKIAkJZmkKQEAgLTExMSw3ICsxMTMsNyBAQAogCQljb3VudD0wICYmCiAJCWZvciBwaSBpbiAuZ2l0L29iamVjdHMvcGFjay9wYWNrLSouaWR4CiAJCWRvCi0JCQl0ZXN0IC1mICIkcGkiICYmIGNvdW50PSQoKCAkY291bnQgKyAxICkpCisJCQl0ZXN0X3BhdGhfaXNfZmlsZSAiJHBpIiAmJiBjb3VudD0kKCggJGNvdW50ICsgMSApKQogCQlkb25lICYmCiAJCXRlc3QgJGNvdW50ID0gMiAmJgogCkBAIC0xOTQsMTUgKzE5NiwxNSBAQAogCXRlc3RfY21wIGh1Z2UgYWN0dWFsCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RhciBhY2hpdmluZycgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAndGFyIGFyY2hpdmluZycgJwogCWdpdCBhcmNoaXZlIC0tZm9ybWF0PXRhciBIRUFEID4vZGV2L251bGwKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnemlwIGFjaGl2aW5nLCBzdG9yZSBvbmx5JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd6aXAgYXJjaGl2aW5nLCBzdG9yZSBvbmx5JyAnCiAJZ2l0IGFyY2hpdmUgLS1mb3JtYXQ9emlwIC0wIEhFQUQgPi9kZXYvbnVsbAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICd6aXAgYWNoaXZpbmcsIGRlZmxhdGUnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ppcCBhcmNoaXZpbmcsIGRlZmxhdGUnICcKIAlnaXQgYXJjaGl2ZSAtLWZvcm1hdD16aXAgSEVBRCA+L2Rldi9udWxsCiAnCiAKZGlmZiAtLWdpdCBhL3QvdDEwNjAtb2JqZWN0LWNvcnJ1cHRpb24uc2ggYi90L3QxMDYwLW9iamVjdC1jb3JydXB0aW9uLnNoCmluZGV4IDRmZWI2NTEuLmJjODkzNzEgMTAwNzU1Ci0tLSBhL3QvdDEwNjAtb2JqZWN0LWNvcnJ1cHRpb24uc2gKKysrIGIvdC90MTA2MC1vYmplY3QtY29ycnVwdGlvbi5zaApAQCAtMTI3LDQgKzEyNywxNCBAQAogCSkKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnaW50ZXJuYWwgdHJlZSBvYmplY3RzIGFyZSBub3QgIm1pc3NpbmciJyAnCisJZ2l0IGluaXQgbWlzc2luZy1lbXB0eSAmJgorCSgKKwkJY2QgbWlzc2luZy1lbXB0eSAmJgorCQllbXB0eV90cmVlPSQoZ2l0IGhhc2gtb2JqZWN0IC10IHRyZWUgL2Rldi9udWxsKSAmJgorCQljb21taXQ9JChlY2hvIGZvbyB8IGdpdCBjb21taXQtdHJlZSAkZW1wdHlfdHJlZSkgJiYKKwkJZ2l0IHJldi1saXN0IC0tb2JqZWN0cyAkY29tbWl0CisJKQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDEwOTAtc3BhcnNlLWNoZWNrb3V0LXNjb3BlLnNoIGIvdC90MTA5MC1zcGFyc2UtY2hlY2tvdXQtc2NvcGUuc2gKaW5kZXggMDkwYjdmYy4uNDBjYzAwNCAxMDA3NTUKLS0tIGEvdC90MTA5MC1zcGFyc2UtY2hlY2tvdXQtc2NvcGUuc2gKKysrIGIvdC90MTA5MC1zcGFyc2UtY2hlY2tvdXQtc2NvcGUuc2gKQEAgLTMxLDIwICszMSw2IEBACiAJdGVzdF9wYXRoX2lzX2ZpbGUgYwogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja291dCAtYiBjaGVja291dC5vcHRpbWl6ZU5ld0JyYW5jaCBpbnRlcmFjdGlvbicgJwotCWNwIC5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXQgLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dC5iYWsgJiYKLQl0ZXN0X3doZW5fZmluaXNoZWQgIgotCQltdiAtZiAuZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0LmJhayAuZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0Ci0JCWdpdCBjaGVja291dCBtYXN0ZXIKLQkiICYmCi0JZWNobyAiL2IiID4+LmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCAmJgotCXRlc3QgIiQoZ2l0IGxzLWZpbGVzIC10IGIpIiA9ICJTIGIiICYmCi0JZ2l0IC1jIGNoZWNrb3V0Lm9wdGltaXplTmV3QnJhbmNoPXRydWUgY2hlY2tvdXQgLWIgZmFzdCAmJgotCXRlc3QgIiQoZ2l0IGxzLWZpbGVzIC10IGIpIiA9ICJTIGIiICYmCi0JZ2l0IGNoZWNrb3V0IC1iIHNsb3cgJiYKLQl0ZXN0ICIkKGdpdCBscy1maWxlcyAtdCBiKSIgPSAiSCBiIgotJwotCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtZXJnZSBmZWF0dXJlIGJyYW5jaCBpbnRvIHNwYXJzZSBjaGVja291dCBvZiBtYXN0ZXInICcKIAlnaXQgbWVyZ2UgZmVhdHVyZSAmJgogCXRlc3RfcGF0aF9pc19maWxlIGEgJiYKZGlmZiAtLWdpdCBhL3QvdDEwOTEtc3BhcnNlLWNoZWNrb3V0LWJ1aWx0aW4uc2ggYi90L3QxMDkxLXNwYXJzZS1jaGVja291dC1idWlsdGluLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjQ0YTkxMjAKLS0tIC9kZXYvbnVsbAorKysgYi90L3QxMDkxLXNwYXJzZS1jaGVja291dC1idWlsdGluLnNoCkBAIC0wLDAgKzEsNTI0IEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0nc3BhcnNlIGNoZWNrb3V0IGJ1aWx0aW4gdGVzdHMnCisKKy4gLi90ZXN0LWxpYi5zaAorCitsaXN0X2ZpbGVzKCkgeworCSMgRG8gbm90IHJlcGxhY2UgdGhpcyB3aXRoICdscyAiJDEiJywgYXMgImxzIiB3aXRoIEJTRC1saW5lYWdlCisJIyBlbmFibGVzICItQSIgYnkgZGVmYXVsdCBmb3Igcm9vdCBhbmQgZW5kcyB1cCBpbmNsdWRpbmcgIi5naXQiIGFuZAorCSMgc3VjaCBpbiBpdHMgb3V0cHV0LiAoTm90ZSwgdGhvdWdoLCB0aGF0IHJ1bm5pbmcgdGhlIHRlc3Qgc3VpdGUgYXMKKwkjIHJvb3QgaXMgZ2VuZXJhbGx5IG5vdCByZWNvbW1lbmRlZC4pCisJKGNkICIkMSIgJiYgcHJpbnRmICclc1xuJyAqKQorfQorCitjaGVja19maWxlcygpIHsKKwlsaXN0X2ZpbGVzICIkMSIgPmFjdHVhbCAmJgorCXNoaWZ0ICYmCisJcHJpbnRmICIlc1xuIiAkQCA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorfQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCcgJworCWdpdCBpbml0IHJlcG8gJiYKKwkoCisJCWNkIHJlcG8gJiYKKwkJZWNobyAiaW5pdGlhbCIgPmEgJiYKKwkJbWtkaXIgZm9sZGVyMSBmb2xkZXIyIGRlZXAgJiYKKwkJbWtkaXIgZGVlcC9kZWVwZXIxIGRlZXAvZGVlcGVyMiAmJgorCQlta2RpciBkZWVwL2RlZXBlcjEvZGVlcGVzdCAmJgorCQljcCBhIGZvbGRlcjEgJiYKKwkJY3AgYSBmb2xkZXIyICYmCisJCWNwIGEgZGVlcCAmJgorCQljcCBhIGRlZXAvZGVlcGVyMSAmJgorCQljcCBhIGRlZXAvZGVlcGVyMiAmJgorCQljcCBhIGRlZXAvZGVlcGVyMS9kZWVwZXN0ICYmCisJCWdpdCBhZGQgLiAmJgorCQlnaXQgY29tbWl0IC1tICJpbml0aWFsIGNvbW1pdCIKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBzcGFyc2UtY2hlY2tvdXQgbGlzdCAoZW1wdHkpJyAnCisJZ2l0IC1DIHJlcG8gc3BhcnNlLWNoZWNrb3V0IGxpc3QgPmxpc3QgMj5lcnIgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgbGlzdCAmJgorCXRlc3RfaTE4bmdyZXAgInRoaXMgd29ya3RyZWUgaXMgbm90IHNwYXJzZSAoc3BhcnNlLWNoZWNrb3V0IGZpbGUgbWF5IG5vdCBleGlzdCkiIGVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgc3BhcnNlLWNoZWNrb3V0IGxpc3QgKHBvcHVsYXRlZCknICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgcm0gLWYgcmVwby8uZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0ICYmCisJY2F0ID5yZXBvLy5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXQgPDwtXEVPRiAmJgorCS9mb2xkZXIxLyoKKwkvZGVlcC8KKwkqKi9hCisJISpiaW4qCisJRU9GCisJY3AgcmVwby8uZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0IGV4cGVjdCAmJgorCWdpdCAtQyByZXBvIHNwYXJzZS1jaGVja291dCBsaXN0ID5saXN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGxpc3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IHNwYXJzZS1jaGVja291dCBpbml0JyAnCisJZ2l0IC1DIHJlcG8gc3BhcnNlLWNoZWNrb3V0IGluaXQgJiYKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJLyoKKwkhLyovCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IHJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCAmJgorCXRlc3RfY21wX2NvbmZpZyAtQyByZXBvIHRydWUgY29yZS5zcGFyc2VjaGVja291dCAmJgorCWNoZWNrX2ZpbGVzIHJlcG8gYQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgc3BhcnNlLWNoZWNrb3V0IGxpc3QgYWZ0ZXIgaW5pdCcgJworCWdpdCAtQyByZXBvIHNwYXJzZS1jaGVja291dCBsaXN0ID5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJLyoKKwkhLyovCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdpbml0IHdpdGggZXhpc3Rpbmcgc3BhcnNlLWNoZWNrb3V0JyAnCisJZWNobyAiKmZvbGRlcioiID4+IHJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCAmJgorCWdpdCAtQyByZXBvIHNwYXJzZS1jaGVja291dCBpbml0ICYmCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCS8qCisJIS8qLworCSpmb2xkZXIqCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IHJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCAmJgorCWNoZWNrX2ZpbGVzIHJlcG8gYSBmb2xkZXIxIGZvbGRlcjIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xvbmUgLS1zcGFyc2UnICcKKwlnaXQgY2xvbmUgLS1zcGFyc2UgImZpbGU6Ly8kKHB3ZCkvcmVwbyIgY2xvbmUgJiYKKwlnaXQgLUMgY2xvbmUgc3BhcnNlLWNoZWNrb3V0IGxpc3QgPmFjdHVhbCAmJgorCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwkvKgorCSEvKi8KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJY2hlY2tfZmlsZXMgY2xvbmUgYQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXQgZW5hYmxlcyBjb25maWcnICcKKwlnaXQgaW5pdCBlbXB0eS1jb25maWcgJiYKKwkoCisJCWNkIGVtcHR5LWNvbmZpZyAmJgorCQl0ZXN0X2NvbW1pdCB0ZXN0IGZpbGUgJiYKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9jb25maWcud29ya3RyZWUgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHNwYXJzZS1jaGVja291dCBzZXQgbm90aGluZyAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSAuZ2l0L2NvbmZpZy53b3JrdHJlZSAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgY29uZmlnIGNvcmUuc3BhcnNlQ2hlY2tvdXQgJiYKKwkJZ2l0IHNwYXJzZS1jaGVja291dCBzZXQgIi8qIiAmJgorCQl0ZXN0X2NtcF9jb25maWcgdHJ1ZSBjb3JlLnNwYXJzZUNoZWNrb3V0CisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXQgc3BhcnNlLWNoZWNrb3V0IHVzaW5nIGJ1aWx0aW4nICcKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgc2V0ICIvKiIgIiEvKi8iICIqZm9sZGVyKiIgJiYKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJLyoKKwkhLyovCisJKmZvbGRlcioKKwlFT0YKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgbGlzdCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCByZXBvLy5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXQgJiYKKwljaGVja19maWxlcyByZXBvIGEgZm9sZGVyMSBmb2xkZXIyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldCBzcGFyc2UtY2hlY2tvdXQgdXNpbmcgLS1zdGRpbicgJworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwkvKgorCSEvKi8KKwkvZm9sZGVyMS8KKwkvZm9sZGVyMi8KKwlFT0YKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgc2V0IC0tc3RkaW4gPGV4cGVjdCAmJgorCWdpdCAtQyByZXBvIHNwYXJzZS1jaGVja291dCBsaXN0ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IHJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCAmJgorCWNoZWNrX2ZpbGVzIHJlcG8gImEgZm9sZGVyMSBmb2xkZXIyIgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhZGQgdG8gc3BhcnNlLWNoZWNrb3V0JyAnCisJY2F0IHJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCA+ZXhwZWN0ICYmCisJY2F0ID5hZGQgPDwtXEVPRiAmJgorCXBhdHRlcm4xCisJL2ZvbGRlcjEvCisJcGF0dGVybjIKKwlFT0YKKwljYXQgYWRkID4+ZXhwZWN0ICYmCisJZ2l0IC1DIHJlcG8gc3BhcnNlLWNoZWNrb3V0IGFkZCAtLXN0ZGluIDxhZGQgJiYKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgbGlzdCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCByZXBvLy5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXQgJiYKKwljaGVja19maWxlcyByZXBvICJhIGZvbGRlcjEgZm9sZGVyMiIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29uZSBtb2RlOiBtYXRjaCBwYXR0ZXJucycgJworCWdpdCAtQyByZXBvIGNvbmZpZyAtLXdvcmt0cmVlIGNvcmUuc3BhcnNlQ2hlY2tvdXRDb25lIHRydWUgJiYKKwlybSAtcmYgcmVwby9hIHJlcG8vZm9sZGVyMSByZXBvL2ZvbGRlcjIgJiYKKwlnaXQgLUMgcmVwbyByZWFkLXRyZWUgLW11IEhFQUQgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICEgImRpc2FibGluZyBjb25lIHBhdHRlcm5zIiBlcnIgJiYKKwlnaXQgLUMgcmVwbyByZXNldCAtLWhhcmQgJiYKKwljaGVja19maWxlcyByZXBvIGEgZm9sZGVyMSBmb2xkZXIyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbmUgbW9kZTogd2FybiBvbiBiYWQgcGF0dGVybicgJworCXRlc3Rfd2hlbl9maW5pc2hlZCBtdiBzcGFyc2UtY2hlY2tvdXQgcmVwby8uZ2l0L2luZm8vICYmCisJY3AgcmVwby8uZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0IC4gJiYKKwllY2hvICIhL2RlZXAvZGVlcGVyLyoiID4+cmVwby8uZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0ICYmCisJZ2l0IC1DIHJlcG8gcmVhZC10cmVlIC1tdSBIRUFEIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAidW5yZWNvZ25pemVkIG5lZ2F0aXZlIHBhdHRlcm4iIGVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzcGFyc2UtY2hlY2tvdXQgZGlzYWJsZScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCBybSAtcmYgcmVwby8uZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0ICYmCisJZ2l0IC1DIHJlcG8gc3BhcnNlLWNoZWNrb3V0IGRpc2FibGUgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSByZXBvLy5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXQgJiYKKwlnaXQgLUMgcmVwbyBjb25maWcgLS1saXN0ID5jb25maWcgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgY29uZmlnIGNvcmUuc3BhcnNlQ2hlY2tvdXQgJiYKKwljaGVja19maWxlcyByZXBvIGEgZGVlcCBmb2xkZXIxIGZvbGRlcjIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29uZSBtb2RlOiBpbml0IGFuZCBzZXQnICcKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgaW5pdCAtLWNvbmUgJiYKKwlnaXQgLUMgcmVwbyBjb25maWcgLS1saXN0ID5jb25maWcgJiYKKwl0ZXN0X2kxOG5ncmVwICJjb3JlLnNwYXJzZWNoZWNrb3V0Y29uZT10cnVlIiBjb25maWcgJiYKKwlsaXN0X2ZpbGVzIHJlcG8gPmRpciAgJiYKKwllY2hvIGEgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBkaXIgJiYKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgc2V0IGRlZXAvZGVlcGVyMS9kZWVwZXN0LyAyPmVyciAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIgJiYKKwljaGVja19maWxlcyByZXBvIGEgZGVlcCAmJgorCWNoZWNrX2ZpbGVzIHJlcG8vZGVlcCBhIGRlZXBlcjEgJiYKKwljaGVja19maWxlcyByZXBvL2RlZXAvZGVlcGVyMSBhIGRlZXBlc3QgJiYKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJLyoKKwkhLyovCisJL2RlZXAvCisJIS9kZWVwLyovCisJL2RlZXAvZGVlcGVyMS8KKwkhL2RlZXAvZGVlcGVyMS8qLworCS9kZWVwL2RlZXBlcjEvZGVlcGVzdC8KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgcmVwby8uZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0ICYmCisJZ2l0IC1DIHJlcG8gc3BhcnNlLWNoZWNrb3V0IHNldCAtLXN0ZGluIDI+ZXJyIDw8LVxFT0YgJiYKKwlmb2xkZXIxCisJZm9sZGVyMgorCUVPRgorCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIgJiYKKwljaGVja19maWxlcyByZXBvIGEgZm9sZGVyMSBmb2xkZXIyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbmUgbW9kZTogbGlzdCcgJworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlmb2xkZXIxCisJZm9sZGVyMgorCUVPRgorCWdpdCAtQyByZXBvIHNwYXJzZS1jaGVja291dCBzZXQgLS1zdGRpbiA8ZXhwZWN0ICYmCisJZ2l0IC1DIHJlcG8gc3BhcnNlLWNoZWNrb3V0IGxpc3QgPmFjdHVhbCAyPmVyciAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbmUgbW9kZTogc2V0IHdpdGggbmVzdGVkIGZvbGRlcnMnICcKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgc2V0IGRlZXAgZGVlcC9kZWVwZXIxL2RlZXBlc3QgMj5lcnIgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAwIGVyciAmJgorCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwkvKgorCSEvKi8KKwkvZGVlcC8KKwlFT0YKKwl0ZXN0X2NtcCByZXBvLy5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXQgZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbmUgbW9kZTogYWRkIGluZGVwZW5kZW50IHBhdGgnICcKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgc2V0IGRlZXAvZGVlcGVyMSAmJgorCWdpdCAtQyByZXBvIHNwYXJzZS1jaGVja291dCBhZGQgZm9sZGVyMSAmJgorCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwkvKgorCSEvKi8KKwkvZGVlcC8KKwkhL2RlZXAvKi8KKwkvZGVlcC9kZWVwZXIxLworCS9mb2xkZXIxLworCUVPRgorCXRlc3RfY21wIGV4cGVjdCByZXBvLy5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXQgJiYKKwljaGVja19maWxlcyByZXBvIGEgZGVlcCBmb2xkZXIxCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbmUgbW9kZTogYWRkIHNpYmxpbmcgcGF0aCcgJworCWdpdCAtQyByZXBvIHNwYXJzZS1jaGVja291dCBzZXQgZGVlcC9kZWVwZXIxICYmCisJZ2l0IC1DIHJlcG8gc3BhcnNlLWNoZWNrb3V0IGFkZCBkZWVwL2RlZXBlcjIgJiYKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJLyoKKwkhLyovCisJL2RlZXAvCisJIS9kZWVwLyovCisJL2RlZXAvZGVlcGVyMS8KKwkvZGVlcC9kZWVwZXIyLworCUVPRgorCXRlc3RfY21wIGV4cGVjdCByZXBvLy5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXQgJiYKKwljaGVja19maWxlcyByZXBvIGEgZGVlcAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb25lIG1vZGU6IGFkZCBwYXJlbnQgcGF0aCcgJworCWdpdCAtQyByZXBvIHNwYXJzZS1jaGVja291dCBzZXQgZGVlcC9kZWVwZXIxIGZvbGRlcjEgJiYKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgYWRkIGRlZXAgJiYKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJLyoKKwkhLyovCisJL2RlZXAvCisJL2ZvbGRlcjEvCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IHJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCAmJgorCWNoZWNrX2ZpbGVzIHJlcG8gYSBkZWVwIGZvbGRlcjEKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmV2ZXJ0IHRvIG9sZCBzcGFyc2UtY2hlY2tvdXQgb24gYmFkIHVwZGF0ZScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCBnaXQgLUMgcmVwbyByZXNldCAtLWhhcmQgJiYKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgc2V0IGRlZXAgJiYKKwllY2hvIHVwZGF0ZSA+cmVwby9kZWVwL2RlZXBlcjIvYSAmJgorCWNwIHJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCBleHBlY3QgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgc2V0IGRlZXAvZGVlcGVyMSAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgImNhbm5vdCBzZXQgc3BhcnNlLWNoZWNrb3V0IHBhdHRlcm5zIiBlcnIgJiYKKwl0ZXN0X2NtcCByZXBvLy5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXQgZXhwZWN0ICYmCisJY2hlY2tfZmlsZXMgcmVwby9kZWVwIGEgZGVlcGVyMSBkZWVwZXIyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JldmVydCB0byBvbGQgc3BhcnNlLWNoZWNrb3V0IG9uIGVtcHR5IHVwZGF0ZScgJworCWdpdCBpbml0IGVtcHR5LXRlc3QgJiYKKwkoCisJCWVjaG8gPmZpbGUgJiYKKwkJZ2l0IGFkZCBmaWxlICYmCisJCWdpdCBjb21taXQgLW0gInRlc3QiICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBzcGFyc2UtY2hlY2tvdXQgc2V0IG5vdGhpbmcgMj5lcnIgJiYKKwkJdGVzdF9pMThuZ3JlcCAiU3BhcnNlIGNoZWNrb3V0IGxlYXZlcyBubyBlbnRyeSBvbiB3b3JraW5nIGRpcmVjdG9yeSIgZXJyICYmCisJCXRlc3RfaTE4bmdyZXAgISAiLmdpdC9pbmRleC5sb2NrIiBlcnIgJiYKKwkJZ2l0IHNwYXJzZS1jaGVja291dCBzZXQgZmlsZQorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFpbCB3aGVuIGxvY2sgaXMgdGFrZW4nICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgcm0gLXJmIHJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dC5sb2NrICYmCisJdG91Y2ggcmVwby8uZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0LmxvY2sgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgc2V0IGRlZXAgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJVbmFibGUgdG8gY3JlYXRlIC4qXC5sb2NrIiBlcnIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLmdpdGlnbm9yZSBzaG91bGQgbm90IHdhcm4gYWJvdXQgY29uZSBtb2RlJyAnCisJZ2l0IC1DIHJlcG8gY29uZmlnIC0td29ya3RyZWUgY29yZS5zcGFyc2VDaGVja291dENvbmUgdHJ1ZSAmJgorCWVjaG8gIioqL2Jpbi8qIiA+cmVwby8uZ2l0aWdub3JlICYmCisJZ2l0IC1DIHJlcG8gcmVzZXQgLS1oYXJkIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAhICJkaXNhYmxpbmcgY29uZSBwYXR0ZXJucyIgZXJyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NwYXJzZS1jaGVja291dCAoaW5pdHxzZXR8ZGlzYWJsZSkgZmFpbHMgd2l0aCBkaXJ0eSBzdGF0dXMnICcKKwlnaXQgY2xvbmUgcmVwbyBkaXJ0eSAmJgorCWVjaG8gZGlydHkgPmRpcnR5L2ZvbGRlcjEvYSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyBkaXJ0eSBzcGFyc2UtY2hlY2tvdXQgaW5pdCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyBkaXJ0eSBzcGFyc2UtY2hlY2tvdXQgc2V0IC9mb2xkZXIyLyogL2RlZXAvZGVlcGVyMS8qICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1DIGRpcnR5IHNwYXJzZS1jaGVja291dCBkaXNhYmxlICYmCisJZ2l0IC1DIGRpcnR5IHJlc2V0IC0taGFyZCAmJgorCWdpdCAtQyBkaXJ0eSBzcGFyc2UtY2hlY2tvdXQgaW5pdCAmJgorCWdpdCAtQyBkaXJ0eSBzcGFyc2UtY2hlY2tvdXQgc2V0IC9mb2xkZXIyLyogL2RlZXAvZGVlcGVyMS8qICYmCisJZ2l0IC1DIGRpcnR5IHNwYXJzZS1jaGVja291dCBkaXNhYmxlCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbmUgbW9kZTogc2V0IHdpdGggY29yZS5pZ25vcmVDYXNlPXRydWUnICcKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgaW5pdCAtLWNvbmUgJiYKKwlnaXQgLUMgcmVwbyAtYyBjb3JlLmlnbm9yZUNhc2U9dHJ1ZSBzcGFyc2UtY2hlY2tvdXQgc2V0IGZvbGRlcjEgJiYKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJLyoKKwkhLyovCisJL2ZvbGRlcjEvCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IHJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCAmJgorCWNoZWNrX2ZpbGVzIHJlcG8gYSBmb2xkZXIxCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ludGVyYWN0aW9uIHdpdGggc3VibW9kdWxlcycgJworCWdpdCBjbG9uZSByZXBvIHN1cGVyICYmCisJKAorCQljZCBzdXBlciAmJgorCQlta2RpciBtb2R1bGVzICYmCisJCWdpdCBzdWJtb2R1bGUgYWRkIC4uL3JlcG8gbW9kdWxlcy9jaGlsZCAmJgorCQlnaXQgYWRkIC4gJiYKKwkJZ2l0IGNvbW1pdCAtbSAiYWRkIHN1Ym1vZHVsZSIgJiYKKwkJZ2l0IHNwYXJzZS1jaGVja291dCBpbml0IC0tY29uZSAmJgorCQlnaXQgc3BhcnNlLWNoZWNrb3V0IHNldCBmb2xkZXIxCisJKSAmJgorCWNoZWNrX2ZpbGVzIHN1cGVyIGEgZm9sZGVyMSBtb2R1bGVzICYmCisJY2hlY2tfZmlsZXMgc3VwZXIvbW9kdWxlcy9jaGlsZCBhIGRlZXAgZm9sZGVyMSBmb2xkZXIyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RpZmZlcmVudCBzcGFyc2UtY2hlY2tvdXRzIHdpdGggd29ya3RyZWVzJyAnCisJZ2l0IC1DIHJlcG8gd29ya3RyZWUgYWRkIC0tZGV0YWNoIC4uL3dvcmt0cmVlICYmCisJY2hlY2tfZmlsZXMgd29ya3RyZWUgImEgZGVlcCBmb2xkZXIxIGZvbGRlcjIiICYmCisJZ2l0IC1DIHdvcmt0cmVlIHNwYXJzZS1jaGVja291dCBpbml0IC0tY29uZSAmJgorCWdpdCAtQyByZXBvIHNwYXJzZS1jaGVja291dCBzZXQgZm9sZGVyMSAmJgorCWdpdCAtQyB3b3JrdHJlZSBzcGFyc2UtY2hlY2tvdXQgc2V0IGRlZXAvZGVlcGVyMSAmJgorCWNoZWNrX2ZpbGVzIHJlcG8gYSBmb2xkZXIxICYmCisJY2hlY2tfZmlsZXMgd29ya3RyZWUgYSBkZWVwCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldCB1c2luZyBmaWxlbmFtZSBrZWVwcyBmaWxlIG9uLWRpc2snICcKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgc2V0IGEgZGVlcCAmJgorCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwkvKgorCSEvKi8KKwkvYS8KKwkvZGVlcC8KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgcmVwby8uZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0ICYmCisJY2hlY2tfZmlsZXMgcmVwbyBhIGRlZXAKKycKKworY2hlY2tfcmVhZF90cmVlX2Vycm9ycyAoKSB7CisJUkVQTz0kMQorCUZJTEVTPSQyCisJRVJST1JTPSQzCisJZ2l0IC1DICRSRVBPIC1jIGNvcmUuc3BhcnNlQ2hlY2tvdXRDb25lPWZhbHNlIHJlYWQtdHJlZSAtbXUgSEVBRCAyPmVyciAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIgJiYKKwljaGVja19maWxlcyAkUkVQTyAiJEZJTEVTIiAmJgorCWdpdCAtQyAkUkVQTyByZWFkLXRyZWUgLW11IEhFQUQgMj5lcnIgJiYKKwlpZiB0ZXN0IC16ICIkRVJST1JTIgorCXRoZW4KKwkJdGVzdF9tdXN0X2JlX2VtcHR5IGVycgorCWVsc2UKKwkJdGVzdF9pMThuZ3JlcCAiJEVSUk9SUyIgZXJyCisJZmkgJiYKKwljaGVja19maWxlcyAkUkVQTyAkRklMRVMKK30KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncGF0dGVybi1jaGVja3M6IC9BLyoqJyAnCisJY2F0ID5yZXBvLy5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXQgPDwtXEVPRiAmJgorCS8qCisJIS8qLworCS9mb2xkZXIxLyoqCisJRU9GCisJY2hlY2tfcmVhZF90cmVlX2Vycm9ycyByZXBvICJhIGZvbGRlcjEiICJkaXNhYmxpbmcgY29uZSBwYXR0ZXJuIG1hdGNoaW5nIgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwYXR0ZXJuLWNoZWNrczogL0EvKiovQi8nICcKKwljYXQgPnJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCA8PC1cRU9GICYmCisJLyoKKwkhLyovCisJL2RlZXAvKiovZGVlcGVzdAorCUVPRgorCWNoZWNrX3JlYWRfdHJlZV9lcnJvcnMgcmVwbyAiYSBkZWVwIiAiZGlzYWJsaW5nIGNvbmUgcGF0dGVybiBtYXRjaGluZyIgJiYKKwljaGVja19maWxlcyByZXBvL2RlZXAgImRlZXBlcjEiICYmCisJY2hlY2tfZmlsZXMgcmVwby9kZWVwL2RlZXBlcjEgImRlZXBlc3QiCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BhdHRlcm4tY2hlY2tzOiB0b28gc2hvcnQnICcKKwljYXQgPnJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCA8PC1cRU9GICYmCisJLyoKKwkhLyovCisJLworCUVPRgorCWNoZWNrX3JlYWRfdHJlZV9lcnJvcnMgcmVwbyAiYSIgImRpc2FibGluZyBjb25lIHBhdHRlcm4gbWF0Y2hpbmciCisnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwYXR0ZXJuLWNoZWNrczogbm90IHRvbyBzaG9ydCcgJworCWNhdCA+cmVwby8uZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0IDw8LVxFT0YgJiYKKwkvKgorCSEvKi8KKwkvYi8KKwlFT0YKKwlnaXQgLUMgcmVwbyByZWFkLXRyZWUgLW11IEhFQUQgMj5lcnIgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgZXJyICYmCisJY2hlY2tfZmlsZXMgcmVwbyBhCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BhdHRlcm4tY2hlY2tzOiB0cmFpbGluZyAiKiInICcKKwljYXQgPnJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCA8PC1cRU9GICYmCisJLyoKKwkhLyovCisJL2EqCisJRU9GCisJY2hlY2tfcmVhZF90cmVlX2Vycm9ycyByZXBvICJhIiAiZGlzYWJsaW5nIGNvbmUgcGF0dGVybiBtYXRjaGluZyIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncGF0dGVybi1jaGVja3M6IHN0YXJ0aW5nICIqIicgJworCWNhdCA+cmVwby8uZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0IDw8LVxFT0YgJiYKKwkvKgorCSEvKi8KKwkqZWVwLworCUVPRgorCWNoZWNrX3JlYWRfdHJlZV9lcnJvcnMgcmVwbyAiYSBkZWVwIiAiZGlzYWJsaW5nIGNvbmUgcGF0dGVybiBtYXRjaGluZyIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncGF0dGVybi1jaGVja3M6IGNvbnRhaW5lZCBnbG9iIGNoYXJhY3RlcnMnICcKKwlmb3IgYyBpbiAiW2FdIiAiXFwiICI/IiAiKiIKKwlkbworCQljYXQgPnJlcG8vLmdpdC9pbmZvL3NwYXJzZS1jaGVja291dCA8PC1FT0YgJiYKKwkJLyoKKwkJIS8qLworCQlzb21ldGhpbmckYy1lbHNlLworCQlFT0YKKwkJY2hlY2tfcmVhZF90cmVlX2Vycm9ycyByZXBvICJhIiAiZGlzYWJsaW5nIGNvbmUgcGF0dGVybiBtYXRjaGluZyIKKwlkb25lCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgQlNMQVNIUFNQRUMgJ3BhdHRlcm4tY2hlY2tzOiBlc2NhcGVkIGNoYXJhY3RlcnMnICcKKwlnaXQgY2xvbmUgcmVwbyBlc2NhcGVkICYmCisJVFJFRU9JRD0kKGdpdCAtQyBlc2NhcGVkIHJldi1wYXJzZSBIRUFEOmZvbGRlcjEpICYmCisJTkVXVFJFRT0kKGdpdCAtQyBlc2NhcGVkIG1rdHJlZSA8PC1FT0YKKwkkKGdpdCAtQyBlc2NhcGVkIGxzLXRyZWUgSEVBRCkKKwkwNDAwMDAgdHJlZSAkVFJFRU9JRAl6YmFkXFxkaXIKKwkwNDAwMDAgdHJlZSAkVFJFRU9JRAl6ZG9lcypleGlzdAorCTA0MDAwMCB0cmVlICRUUkVFT0lECXpnbG9iWyFhXT8KKwlFT0YKKwkpICYmCisJQ09NTUlUPSQoZ2l0IC1DIGVzY2FwZWQgY29tbWl0LXRyZWUgJE5FV1RSRUUgLXAgSEVBRCkgJiYKKwlnaXQgLUMgZXNjYXBlZCByZXNldCAtLWhhcmQgJENPTU1JVCAmJgorCWNoZWNrX2ZpbGVzIGVzY2FwZWQgImEgZGVlcCBmb2xkZXIxIGZvbGRlcjIgemJhZFxcZGlyIHpkb2VzKmV4aXN0IiB6Z2xvYlshYV0/ICYmCisJZ2l0IC1DIGVzY2FwZWQgc3BhcnNlLWNoZWNrb3V0IGluaXQgLS1jb25lICYmCisJZ2l0IC1DIGVzY2FwZWQgc3BhcnNlLWNoZWNrb3V0IHNldCB6YmFkXFxkaXIvYm9ndXMgInpkb2VzKm5vdCpleGlzdCIgInpkb2VzKmV4aXN0IiAiemdsb2JbIWFdPyIgJiYKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJLyoKKwkhLyovCisJL3piYWRcXGRpci8KKwkhL3piYWRcXGRpci8qLworCS96YmFkXFxkaXIvYm9ndXMvCisJL3pkb2VzXCpleGlzdC8KKwkvemRvZXNcKm5vdFwqZXhpc3QvCisJL3pnbG9iXFshYV1cPy8KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgZXNjYXBlZC8uZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0ICYmCisJY2hlY2tfcmVhZF90cmVlX2Vycm9ycyBlc2NhcGVkICJhIHpiYWRcXGRpciB6ZG9lcypleGlzdCB6Z2xvYlshYV0/IiAmJgorCWdpdCAtQyBlc2NhcGVkIGxzLXRyZWUgLWQgLS1uYW1lLW9ubHkgSEVBRCA+bGlzdC1leHBlY3QgJiYKKwlnaXQgLUMgZXNjYXBlZCBzcGFyc2UtY2hlY2tvdXQgc2V0IC0tc3RkaW4gPGxpc3QtZXhwZWN0ICYmCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCS8qCisJIS8qLworCS9kZWVwLworCS9mb2xkZXIxLworCS9mb2xkZXIyLworCS96YmFkXFxkaXIvCisJL3pkb2VzXCpleGlzdC8KKwkvemdsb2JcWyFhXVw/LworCUVPRgorCXRlc3RfY21wIGV4cGVjdCBlc2NhcGVkLy5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXQgJiYKKwljaGVja19maWxlcyBlc2NhcGVkICJhIGRlZXAgZm9sZGVyMSBmb2xkZXIyIHpiYWRcXGRpciB6ZG9lcypleGlzdCIgemdsb2JbIWFdPyAmJgorCWdpdCAtQyBlc2NhcGVkIHNwYXJzZS1jaGVja291dCBsaXN0ID5saXN0LWFjdHVhbCAmJgorCXRlc3RfY21wIGxpc3QtZXhwZWN0IGxpc3QtYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgTUlOR1cgJ2NvbmUgbW9kZSByZXBsYWNlcyBiYWNrc2xhc2hlcyB3aXRoIHNsYXNoZXMnICcKKwlnaXQgLUMgcmVwbyBzcGFyc2UtY2hlY2tvdXQgc2V0IGRlZXBcXGRlZXBlcjEgJiYKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJLyoKKwkhLyovCisJL2RlZXAvCisJIS9kZWVwLyovCisJL2RlZXAvZGVlcGVyMS8KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgcmVwby8uZ2l0L2luZm8vc3BhcnNlLWNoZWNrb3V0ICYmCisJY2hlY2tfZmlsZXMgcmVwbyBhIGRlZXAgJiYKKwljaGVja19maWxlcyByZXBvL2RlZXAgYSBkZWVwZXIxCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MTMwMC1jb25maWcuc2ggYi90L3QxMzAwLWNvbmZpZy5zaAppbmRleCA5NjUyYjI0Li45N2ViZmUxIDEwMDc1NQotLS0gYS90L3QxMzAwLWNvbmZpZy5zaAorKysgYi90L3QxMzAwLWNvbmZpZy5zaApAQCAtODkyLDYgKzg5Miw3IEBACiAJMTUxMDM0ODA4NwogCTAKIAlFT0YKKwk6ICJ3b3JrIGFyb3VuZCBoZXJlZG9jIHBhcnNpbmcgYnVnIGZpeGVkIGluIGRhc2ggMC41LjcgKGluIGVjMmM4NGQpIiAmJgogCXsKIAkJZWNobyAiJHJlbF9vdXQgJChnaXQgY29uZmlnIC0tZXhwaXJ5LWRhdGUgZGF0ZS52YWxpZDEpIgogCQlnaXQgY29uZmlnIC0tZXhwaXJ5LWRhdGUgZGF0ZS52YWxpZDIgJiYKQEAgLTExOTAsNDcgKzExOTEsNDcgQEAKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIHRlc3RDb25maWcgdGVzdENvbmZpZ19leHBlY3QgdGVzdENvbmZpZ19hY3R1YWwiICYmCiAKIAljYXQgPnRlc3RDb25maWdfYWN0dWFsIDw8LUVPRiAmJgotCQlbVi5BXQotCQlyID0gdmFsdWUxCisJW1YuQV0KKwlyID0gdmFsdWUxCiAJRU9GCiAJcV90b190YWIgPnRlc3RDb25maWdfZXhwZWN0IDw8LUVPRiAmJgotCQlbVi5BXQotCQlRciA9IHZhbHVlMgorCVtWLkFdCisJUXIgPSB2YWx1ZTIKIAlFT0YKIAlnaXQgY29uZmlnIC1mIHRlc3RDb25maWdfYWN0dWFsICJ2LmEuciIgdmFsdWUyICYmCiAJdGVzdF9jbXAgdGVzdENvbmZpZ19leHBlY3QgdGVzdENvbmZpZ19hY3R1YWwgJiYKIAogCWNhdCA+dGVzdENvbmZpZ19hY3R1YWwgPDwtRU9GICYmCi0JCVtWLkFdCi0JCXIgPSB2YWx1ZTEKKwlbVi5BXQorCXIgPSB2YWx1ZTEKIAlFT0YKIAlxX3RvX3RhYiA+dGVzdENvbmZpZ19leHBlY3QgPDwtRU9GICYmCi0JCVtWLkFdCi0JCVFSID0gdmFsdWUyCisJW1YuQV0KKwlRUiA9IHZhbHVlMgogCUVPRgogCWdpdCBjb25maWcgLWYgdGVzdENvbmZpZ19hY3R1YWwgIlYuYS5SIiB2YWx1ZTIgJiYKIAl0ZXN0X2NtcCB0ZXN0Q29uZmlnX2V4cGVjdCB0ZXN0Q29uZmlnX2FjdHVhbCAmJgogCiAJY2F0ID50ZXN0Q29uZmlnX2FjdHVhbCA8PC1FT0YgJiYKLQkJW1YuQV0KLQkJciA9IHZhbHVlMQorCVtWLkFdCisJciA9IHZhbHVlMQogCUVPRgogCXFfdG9fdGFiID50ZXN0Q29uZmlnX2V4cGVjdCA8PC1FT0YgJiYKLQkJW1YuQV0KLQkJciA9IHZhbHVlMQotCQlRciA9IHZhbHVlMgorCVtWLkFdCisJciA9IHZhbHVlMQorCVFyID0gdmFsdWUyCiAJRU9GCiAJZ2l0IGNvbmZpZyAtZiB0ZXN0Q29uZmlnX2FjdHVhbCAiVi5BLnIiIHZhbHVlMiAmJgogCXRlc3RfY21wIHRlc3RDb25maWdfZXhwZWN0IHRlc3RDb25maWdfYWN0dWFsICYmCiAKIAljYXQgPnRlc3RDb25maWdfYWN0dWFsIDw8LUVPRiAmJgotCQlbVi5BXQotCQlyID0gdmFsdWUxCisJW1YuQV0KKwlyID0gdmFsdWUxCiAJRU9GCiAJcV90b190YWIgPnRlc3RDb25maWdfZXhwZWN0IDw8LUVPRiAmJgotCQlbVi5BXQotCQlyID0gdmFsdWUxCi0JCVFyID0gdmFsdWUyCisJW1YuQV0KKwlyID0gdmFsdWUxCisJUXIgPSB2YWx1ZTIKIAlFT0YKIAlnaXQgY29uZmlnIC1mIHRlc3RDb25maWdfYWN0dWFsICJ2LkEuciIgdmFsdWUyICYmCiAJdGVzdF9jbXAgdGVzdENvbmZpZ19leHBlY3QgdGVzdENvbmZpZ19hY3R1YWwKQEAgLTEyNDAsMjYgKzEyNDEsMjYgQEAKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIHRlc3RDb25maWcgdGVzdENvbmZpZ19leHBlY3QgdGVzdENvbmZpZ19hY3R1YWwiICYmCiAKIAljYXQgPnRlc3RDb25maWdfYWN0dWFsIDw8LUVPRiAmJgotCQlbViAiQSJdCi0JCVIgPSB2MQotCQlbSyAiRSJdCi0JCVkgPSB2MQotCQlbYSAiYiJdCi0JCWMgPSB2MQotCQlbZCAiZSJdCi0JCWYgPSB2MQorCVtWICJBIl0KKwlSID0gdjEKKwlbSyAiRSJdCisJWSA9IHYxCisJW2EgImIiXQorCWMgPSB2MQorCVtkICJlIl0KKwlmID0gdjEKIAlFT0YKIAlxX3RvX3RhYiA+dGVzdENvbmZpZ19leHBlY3QgPDwtRU9GICYmCi0JCVtWICJBIl0KLQkJUXIgPSB2MgotCQlbSyAiRSJdCi0JCVF5ID0gdjIKLQkJW2EgImIiXQotCQlRYyA9IHYyCi0JCVtkICJlIl0KLQkJZiA9IHYxCi0JCVtkICJFIl0KLQkJUWYgPSB2MgorCVtWICJBIl0KKwlRciA9IHYyCisJW0sgIkUiXQorCVF5ID0gdjIKKwlbYSAiYiJdCisJUWMgPSB2MgorCVtkICJlIl0KKwlmID0gdjEKKwlbZCAiRSJdCisJUWYgPSB2MgogCUVPRgogCSMgZXhhY3QgbWF0Y2gKIAlnaXQgY29uZmlnIC1mIHRlc3RDb25maWdfYWN0dWFsIGEuYi5jIHYyICYmCkBAIC0xMjkzLDI2ICsxMjk0LDI1IEBACiAJR0lUX0NPTkZJR19QQVJBTUVURVJTPSIiIGdpdCAtYyB4Lm9uZT0xIGNvbmZpZyAtLWxpc3QKICcKIAotc3E9IiciCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZXRlY3QgYm9ndXMgR0lUX0NPTkZJR19QQVJBTUVURVJTJyAnCiAJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgogCWVudi5vbmUgb25lCiAJZW52LnR3byB0d28KIAlFT0YKLQlHSVRfQ09ORklHX1BBUkFNRVRFUlM9IiR7c3F9ZW52Lm9uZT1vbmUke3NxfSAke3NxfWVudi50d289dHdvJHtzcX0iIFwKKwlHSVRfQ09ORklHX1BBUkFNRVRFUlM9IiR7U1F9ZW52Lm9uZT1vbmUke1NRfSAke1NRfWVudi50d289dHdvJHtTUX0iIFwKIAkJZ2l0IGNvbmZpZyAtLWdldC1yZWdleHAgImVudi4qIiA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgogCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCi0JZW52Lm9uZSBvbmUke3NxfQorCWVudi5vbmUgb25lJHtTUX0KIAllbnYudHdvIHR3bwogCUVPRgotCUdJVF9DT05GSUdfUEFSQU1FVEVSUz0iJHtzcX1lbnYub25lPW9uZSR7c3F9XFwkc3Ekc3Ekc3EgJHtzcX1lbnYudHdvPXR3byR7c3F9IiBcCisJR0lUX0NPTkZJR19QQVJBTUVURVJTPSIke1NRfWVudi5vbmU9b25lJHtTUX1cXCRTUSRTUSRTUSAke1NRfWVudi50d289dHdvJHtTUX0iIFwKIAkJZ2l0IGNvbmZpZyAtLWdldC1yZWdleHAgImVudi4qIiA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgogCiAJdGVzdF9tdXN0X2ZhaWwgZW52IFwKLQkJR0lUX0NPTkZJR19QQVJBTUVURVJTPSIke3NxfWVudi5vbmU9b25lJHtzcX1cXCRzcSAke3NxfWVudi50d289dHdvJHtzcX0iIFwKKwkJR0lUX0NPTkZJR19QQVJBTUVURVJTPSIke1NRfWVudi5vbmU9b25lJHtTUX1cXCRTUSAke1NRfWVudi50d289dHdvJHtTUX0iIFwKIAkJZ2l0IGNvbmZpZyAtLWdldC1yZWdleHAgImVudi4qIgogJwogCkBAIC0xNDA4LDYgKzE0MDgsOCBAQAogCQljb29raWVGaWxlID0gL3RtcC93aWxkY2FyZC50eHQKIAlbaHR0cCAiaHR0cHM6Ly8qLmV4YW1wbGUuY29tL3dpbGRjYXJkd2l0aHN1YmRvbWFpbiJdCiAJCWNvb2tpZUZpbGUgPSAvdG1wL3dpbGRjYXJkd2l0aHN1YmRvbWFpbi50eHQKKwlbaHR0cCAiaHR0cHM6Ly8qLmV4YW1wbGUuKiJdCisJCWNvb2tpZUZpbGUgPSAvdG1wL211bHRpd2lsZGNhcmQudHh0CiAJW2h0dHAgImh0dHBzOi8vdHJhaWxpbmcuZXhhbXBsZS5jb20iXQogCQljb29raWVGaWxlID0gL3RtcC90cmFpbGluZy50eHQKIAlbaHR0cCAiaHR0cHM6Ly91c2VyQCouZXhhbXBsZS5jb20vIl0KQEAgLTE0NTQsNiArMTQ1NiwxMCBAQAogCiAJZWNobyBodHRwLmNvb2tpZWZpbGUgL3RtcC9zdWIudHh0ID5leHBlY3QgJiYKIAlnaXQgY29uZmlnIC0tZ2V0LXVybG1hdGNoIEhUVFAgaHR0cHM6Ly91c2VyQHN1Yi5leGFtcGxlLmNvbSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJZWNobyBodHRwLmNvb2tpZWZpbGUgL3RtcC9tdWx0aXdpbGRjYXJkLnR4dCA+ZXhwZWN0ICYmCisJZ2l0IGNvbmZpZyAtLWdldC11cmxtYXRjaCBIVFRQIGh0dHBzOi8vd2lsZGNhcmQuZXhhbXBsZS5vcmcgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIApAQCAtMTYyMiw0MCArMTYyOCw0MCBAQAogCUlOQ0xVREVfRElSPSIkSE9NRS9pbmNsdWRlIiAmJgogCW1rZGlyIC1wICIkSU5DTFVERV9ESVIiICYmCiAJY2F0ID4iJElOQ0xVREVfRElSIi9hYnNvbHV0ZS5pbmNsdWRlIDw8LVxFT0YgJiYKLQkJW3VzZXJdCi0JCQlhYnNvbHV0ZSA9IGluY2x1ZGUKKwlbdXNlcl0KKwkJYWJzb2x1dGUgPSBpbmNsdWRlCiAJRU9GCiAJY2F0ID4iJElOQ0xVREVfRElSIi9yZWxhdGl2ZS5pbmNsdWRlIDw8LVxFT0YgJiYKLQkJW3VzZXJdCi0JCQlyZWxhdGl2ZSA9IGluY2x1ZGUKKwlbdXNlcl0KKwkJcmVsYXRpdmUgPSBpbmNsdWRlCiAJRU9GCiAJY2F0ID4iJEhPTUUiLy5naXRjb25maWcgPDwtRU9GICYmCi0JCVt1c2VyXQotCQkJZ2xvYmFsID0gdHJ1ZQotCQkJb3ZlcnJpZGUgPSBnbG9iYWwKLQkJW2luY2x1ZGVdCi0JCQlwYXRoID0gIiRJTkNMVURFX0RJUi9hYnNvbHV0ZS5pbmNsdWRlIgorCVt1c2VyXQorCQlnbG9iYWwgPSB0cnVlCisJCW92ZXJyaWRlID0gZ2xvYmFsCisJW2luY2x1ZGVdCisJCXBhdGggPSAiJElOQ0xVREVfRElSL2Fic29sdXRlLmluY2x1ZGUiCiAJRU9GCiAJY2F0ID4uZ2l0L2NvbmZpZyA8PC1cRU9GCi0JCVt1c2VyXQotCQkJbG9jYWwgPSB0cnVlCi0JCQlvdmVycmlkZSA9IGxvY2FsCi0JCVtpbmNsdWRlXQotCQkJcGF0aCA9IC4uL2luY2x1ZGUvcmVsYXRpdmUuaW5jbHVkZQorCVt1c2VyXQorCQlsb2NhbCA9IHRydWUKKwkJb3ZlcnJpZGUgPSBsb2NhbAorCVtpbmNsdWRlXQorCQlwYXRoID0gLi4vaW5jbHVkZS9yZWxhdGl2ZS5pbmNsdWRlCiAJRU9GCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tc2hvdy1vcmlnaW4gd2l0aCAtLWxpc3QnICcKIAljYXQgPmV4cGVjdCA8PC1FT0YgJiYKLQkJZmlsZTokSE9NRS8uZ2l0Y29uZmlnCXVzZXIuZ2xvYmFsPXRydWUKLQkJZmlsZTokSE9NRS8uZ2l0Y29uZmlnCXVzZXIub3ZlcnJpZGU9Z2xvYmFsCi0JCWZpbGU6JEhPTUUvLmdpdGNvbmZpZwlpbmNsdWRlLnBhdGg9JElOQ0xVREVfRElSL2Fic29sdXRlLmluY2x1ZGUKLQkJZmlsZTokSU5DTFVERV9ESVIvYWJzb2x1dGUuaW5jbHVkZQl1c2VyLmFic29sdXRlPWluY2x1ZGUKLQkJZmlsZTouZ2l0L2NvbmZpZwl1c2VyLmxvY2FsPXRydWUKLQkJZmlsZTouZ2l0L2NvbmZpZwl1c2VyLm92ZXJyaWRlPWxvY2FsCi0JCWZpbGU6LmdpdC9jb25maWcJaW5jbHVkZS5wYXRoPS4uL2luY2x1ZGUvcmVsYXRpdmUuaW5jbHVkZQotCQlmaWxlOi5naXQvLi4vaW5jbHVkZS9yZWxhdGl2ZS5pbmNsdWRlCXVzZXIucmVsYXRpdmU9aW5jbHVkZQotCQljb21tYW5kIGxpbmU6CXVzZXIuY21kbGluZT10cnVlCisJZmlsZTokSE9NRS8uZ2l0Y29uZmlnCXVzZXIuZ2xvYmFsPXRydWUKKwlmaWxlOiRIT01FLy5naXRjb25maWcJdXNlci5vdmVycmlkZT1nbG9iYWwKKwlmaWxlOiRIT01FLy5naXRjb25maWcJaW5jbHVkZS5wYXRoPSRJTkNMVURFX0RJUi9hYnNvbHV0ZS5pbmNsdWRlCisJZmlsZTokSU5DTFVERV9ESVIvYWJzb2x1dGUuaW5jbHVkZQl1c2VyLmFic29sdXRlPWluY2x1ZGUKKwlmaWxlOi5naXQvY29uZmlnCXVzZXIubG9jYWw9dHJ1ZQorCWZpbGU6LmdpdC9jb25maWcJdXNlci5vdmVycmlkZT1sb2NhbAorCWZpbGU6LmdpdC9jb25maWcJaW5jbHVkZS5wYXRoPS4uL2luY2x1ZGUvcmVsYXRpdmUuaW5jbHVkZQorCWZpbGU6LmdpdC8uLi9pbmNsdWRlL3JlbGF0aXZlLmluY2x1ZGUJdXNlci5yZWxhdGl2ZT1pbmNsdWRlCisJY29tbWFuZCBsaW5lOgl1c2VyLmNtZGxpbmU9dHJ1ZQogCUVPRgogCWdpdCAtYyB1c2VyLmNtZGxpbmU9dHJ1ZSBjb25maWcgLS1saXN0IC0tc2hvdy1vcmlnaW4gPm91dHB1dCAmJgogCXRlc3RfY21wIGV4cGVjdCBvdXRwdXQKQEAgLTE2NjMsMTYgKzE2NjksMTYgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1zaG93LW9yaWdpbiB3aXRoIC0tbGlzdCAtLW51bGwnICcKIAljYXQgPmV4cGVjdCA8PC1FT0YgJiYKLQkJZmlsZTokSE9NRS8uZ2l0Y29uZmlnUXVzZXIuZ2xvYmFsCi0JCXRydWVRZmlsZTokSE9NRS8uZ2l0Y29uZmlnUXVzZXIub3ZlcnJpZGUKLQkJZ2xvYmFsUWZpbGU6JEhPTUUvLmdpdGNvbmZpZ1FpbmNsdWRlLnBhdGgKLQkJJElOQ0xVREVfRElSL2Fic29sdXRlLmluY2x1ZGVRZmlsZTokSU5DTFVERV9ESVIvYWJzb2x1dGUuaW5jbHVkZVF1c2VyLmFic29sdXRlCi0JCWluY2x1ZGVRZmlsZTouZ2l0L2NvbmZpZ1F1c2VyLmxvY2FsCi0JCXRydWVRZmlsZTouZ2l0L2NvbmZpZ1F1c2VyLm92ZXJyaWRlCi0JCWxvY2FsUWZpbGU6LmdpdC9jb25maWdRaW5jbHVkZS5wYXRoCi0JCS4uL2luY2x1ZGUvcmVsYXRpdmUuaW5jbHVkZVFmaWxlOi5naXQvLi4vaW5jbHVkZS9yZWxhdGl2ZS5pbmNsdWRlUXVzZXIucmVsYXRpdmUKLQkJaW5jbHVkZVFjb21tYW5kIGxpbmU6UXVzZXIuY21kbGluZQotCQl0cnVlUQorCWZpbGU6JEhPTUUvLmdpdGNvbmZpZ1F1c2VyLmdsb2JhbAorCXRydWVRZmlsZTokSE9NRS8uZ2l0Y29uZmlnUXVzZXIub3ZlcnJpZGUKKwlnbG9iYWxRZmlsZTokSE9NRS8uZ2l0Y29uZmlnUWluY2x1ZGUucGF0aAorCSRJTkNMVURFX0RJUi9hYnNvbHV0ZS5pbmNsdWRlUWZpbGU6JElOQ0xVREVfRElSL2Fic29sdXRlLmluY2x1ZGVRdXNlci5hYnNvbHV0ZQorCWluY2x1ZGVRZmlsZTouZ2l0L2NvbmZpZ1F1c2VyLmxvY2FsCisJdHJ1ZVFmaWxlOi5naXQvY29uZmlnUXVzZXIub3ZlcnJpZGUKKwlsb2NhbFFmaWxlOi5naXQvY29uZmlnUWluY2x1ZGUucGF0aAorCS4uL2luY2x1ZGUvcmVsYXRpdmUuaW5jbHVkZVFmaWxlOi5naXQvLi4vaW5jbHVkZS9yZWxhdGl2ZS5pbmNsdWRlUXVzZXIucmVsYXRpdmUKKwlpbmNsdWRlUWNvbW1hbmQgbGluZTpRdXNlci5jbWRsaW5lCisJdHJ1ZVEKIAlFT0YKIAlnaXQgLWMgdXNlci5jbWRsaW5lPXRydWUgY29uZmlnIC0tbnVsbCAtLWxpc3QgLS1zaG93LW9yaWdpbiA+b3V0cHV0LnJhdyAmJgogCW51bF90b19xIDxvdXRwdXQucmF3ID5vdXRwdXQgJiYKQEAgLTE2ODQsOSArMTY5MCw5IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tc2hvdy1vcmlnaW4gd2l0aCBzaW5nbGUgZmlsZScgJwogCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKLQkJZmlsZTouZ2l0L2NvbmZpZwl1c2VyLmxvY2FsPXRydWUKLQkJZmlsZTouZ2l0L2NvbmZpZwl1c2VyLm92ZXJyaWRlPWxvY2FsCi0JCWZpbGU6LmdpdC9jb25maWcJaW5jbHVkZS5wYXRoPS4uL2luY2x1ZGUvcmVsYXRpdmUuaW5jbHVkZQorCWZpbGU6LmdpdC9jb25maWcJdXNlci5sb2NhbD10cnVlCisJZmlsZTouZ2l0L2NvbmZpZwl1c2VyLm92ZXJyaWRlPWxvY2FsCisJZmlsZTouZ2l0L2NvbmZpZwlpbmNsdWRlLnBhdGg9Li4vaW5jbHVkZS9yZWxhdGl2ZS5pbmNsdWRlCiAJRU9GCiAJZ2l0IGNvbmZpZyAtLWxvY2FsIC0tbGlzdCAtLXNob3ctb3JpZ2luID5vdXRwdXQgJiYKIAl0ZXN0X2NtcCBleHBlY3Qgb3V0cHV0CkBAIC0xNjk0LDggKzE3MDAsOCBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXNob3ctb3JpZ2luIHdpdGggLS1nZXQtcmVnZXhwJyAnCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCi0JCWZpbGU6JEhPTUUvLmdpdGNvbmZpZwl1c2VyLmdsb2JhbCB0cnVlCi0JCWZpbGU6LmdpdC9jb25maWcJdXNlci5sb2NhbCB0cnVlCisJZmlsZTokSE9NRS8uZ2l0Y29uZmlnCXVzZXIuZ2xvYmFsIHRydWUKKwlmaWxlOi5naXQvY29uZmlnCXVzZXIubG9jYWwgdHJ1ZQogCUVPRgogCWdpdCBjb25maWcgLS1zaG93LW9yaWdpbiAtLWdldC1yZWdleHAgInVzZXJcLltnfGxdLioiID5vdXRwdXQgJiYKIAl0ZXN0X2NtcCBleHBlY3Qgb3V0cHV0CkBAIC0xNzAzLDMxICsxNzA5LDM2IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tc2hvdy1vcmlnaW4gZ2V0dGluZyBhIHNpbmdsZSBrZXknICcKIAljYXQgPmV4cGVjdCA8PC1cRU9GICYmCi0JCWZpbGU6LmdpdC9jb25maWcJbG9jYWwKKwlmaWxlOi5naXQvY29uZmlnCWxvY2FsCiAJRU9GCiAJZ2l0IGNvbmZpZyAtLXNob3ctb3JpZ2luIHVzZXIub3ZlcnJpZGUgPm91dHB1dCAmJgogCXRlc3RfY21wIGV4cGVjdCBvdXRwdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0IHVwIGN1c3RvbSBjb25maWcgZmlsZScgJwotCUNVU1RPTV9DT05GSUdfRklMRT0iZmlsZVwiIChkcSkgYW5kIHNwYWNlcy5jb25mIiAmJgorCUNVU1RPTV9DT05GSUdfRklMRT0iY3VzdG9tLmNvbmYiICYmCiAJY2F0ID4iJENVU1RPTV9DT05GSUdfRklMRSIgPDwtXEVPRgotCQlbdXNlcl0KLQkJCWN1c3RvbSA9IHRydWUKKwlbdXNlcl0KKwkJY3VzdG9tID0gdHJ1ZQogCUVPRgogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICFNSU5HVyAnc2V0IHVwIGN1c3RvbSBjb25maWcgZmlsZSB3aXRoIHNwZWNpYWwgbmFtZSBjaGFyYWN0ZXJzJyAnCisJV0VJUkRMWV9OQU1FRF9GSUxFPSJmaWxlXCIgKGRxKSBhbmQgc3BhY2VzLmNvbmYiICYmCisJY3AgIiRDVVNUT01fQ09ORklHX0ZJTEUiICIkV0VJUkRMWV9OQU1FRF9GSUxFIgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICFNSU5HVyAnLS1zaG93LW9yaWdpbiBlc2NhcGUgc3BlY2lhbCBmaWxlIG5hbWUgY2hhcmFjdGVycycgJwogCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKLQkJZmlsZToiZmlsZVwiIChkcSkgYW5kIHNwYWNlcy5jb25mIgl1c2VyLmN1c3RvbT10cnVlCisJZmlsZToiZmlsZVwiIChkcSkgYW5kIHNwYWNlcy5jb25mIgl1c2VyLmN1c3RvbT10cnVlCiAJRU9GCi0JZ2l0IGNvbmZpZyAtLWZpbGUgIiRDVVNUT01fQ09ORklHX0ZJTEUiIC0tc2hvdy1vcmlnaW4gLS1saXN0ID5vdXRwdXQgJiYKKwlnaXQgY29uZmlnIC0tZmlsZSAiJFdFSVJETFlfTkFNRURfRklMRSIgLS1zaG93LW9yaWdpbiAtLWxpc3QgPm91dHB1dCAmJgogCXRlc3RfY21wIGV4cGVjdCBvdXRwdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1zaG93LW9yaWdpbiBzdGRpbicgJwogCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKLQkJc3RhbmRhcmQgaW5wdXQ6CXVzZXIuY3VzdG9tPXRydWUKKwlzdGFuZGFyZCBpbnB1dDoJdXNlci5jdXN0b209dHJ1ZQogCUVPRgogCWdpdCBjb25maWcgLS1maWxlIC0gLS1zaG93LW9yaWdpbiAtLWxpc3QgPCIkQ1VTVE9NX0NPTkZJR19GSUxFIiA+b3V0cHV0ICYmCiAJdGVzdF9jbXAgZXhwZWN0IG91dHB1dApAQCAtMTczNSwxMSArMTc0NiwxMSBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXNob3ctb3JpZ2luIHN0ZGluIHdpdGggZmlsZSBpbmNsdWRlJyAnCiAJY2F0ID4iJElOQ0xVREVfRElSIi9zdGRpbi5pbmNsdWRlIDw8LUVPRiAmJgotCQlbdXNlcl0KLQkJCXN0ZGluID0gaW5jbHVkZQorCVt1c2VyXQorCQlzdGRpbiA9IGluY2x1ZGUKIAlFT0YKIAljYXQgPmV4cGVjdCA8PC1FT0YgJiYKLQkJZmlsZTokSU5DTFVERV9ESVIvc3RkaW4uaW5jbHVkZQlpbmNsdWRlCisJZmlsZTokSU5DTFVERV9ESVIvc3RkaW4uaW5jbHVkZQlpbmNsdWRlCiAJRU9GCiAJZWNobyAiW2luY2x1ZGVdcGF0aD1cIiRJTkNMVURFX0RJUlwiL3N0ZGluLmluY2x1ZGUiIHwKIAlnaXQgY29uZmlnIC0tc2hvdy1vcmlnaW4gLS1pbmNsdWRlcyAtLWZpbGUgLSB1c2VyLnN0ZGluID5vdXRwdXQgJiYKQEAgLTE3NDcsMTggKzE3NTgsMTggQEAKIAl0ZXN0X2NtcCBleHBlY3Qgb3V0cHV0CiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgIU1JTkdXICctLXNob3ctb3JpZ2luIGJsb2InICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tc2hvdy1vcmlnaW4gYmxvYicgJwogCWJsb2I9JChnaXQgaGFzaC1vYmplY3QgLXcgIiRDVVNUT01fQ09ORklHX0ZJTEUiKSAmJgogCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgotCQlibG9iOiRibG9iCXVzZXIuY3VzdG9tPXRydWUKKwlibG9iOiRibG9iCXVzZXIuY3VzdG9tPXRydWUKIAlFT0YKIAlnaXQgY29uZmlnIC0tYmxvYj0kYmxvYiAtLXNob3ctb3JpZ2luIC0tbGlzdCA+b3V0cHV0ICYmCiAJdGVzdF9jbXAgZXhwZWN0IG91dHB1dAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICFNSU5HVyAnLS1zaG93LW9yaWdpbiBibG9iIHJlZicgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1zaG93LW9yaWdpbiBibG9iIHJlZicgJwogCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKLQkJYmxvYjoibWFzdGVyOmZpbGVcIiAoZHEpIGFuZCBzcGFjZXMuY29uZiIJdXNlci5jdXN0b209dHJ1ZQorCWJsb2I6bWFzdGVyOmN1c3RvbS5jb25mCXVzZXIuY3VzdG9tPXRydWUKIAlFT0YKIAlnaXQgYWRkICIkQ1VTVE9NX0NPTkZJR19GSUxFIiAmJgogCWdpdCBjb21taXQgLW0gIm5ldyBjb25maWcgZmlsZSIgJiYKQEAgLTE3NjYsNiArMTc3Nyw2NSBAQAogCXRlc3RfY21wIGV4cGVjdCBvdXRwdXQKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1zaG93LXNjb3BlIHdpdGggLS1saXN0JyAnCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJZ2xvYmFsCXVzZXIuZ2xvYmFsPXRydWUKKwlnbG9iYWwJdXNlci5vdmVycmlkZT1nbG9iYWwKKwlnbG9iYWwJaW5jbHVkZS5wYXRoPSRJTkNMVURFX0RJUi9hYnNvbHV0ZS5pbmNsdWRlCisJZ2xvYmFsCXVzZXIuYWJzb2x1dGU9aW5jbHVkZQorCWxvY2FsCXVzZXIubG9jYWw9dHJ1ZQorCWxvY2FsCXVzZXIub3ZlcnJpZGU9bG9jYWwKKwlsb2NhbAlpbmNsdWRlLnBhdGg9Li4vaW5jbHVkZS9yZWxhdGl2ZS5pbmNsdWRlCisJbG9jYWwJdXNlci5yZWxhdGl2ZT1pbmNsdWRlCisJY29tbWFuZAl1c2VyLmNtZGxpbmU9dHJ1ZQorCUVPRgorCWdpdCAtYyB1c2VyLmNtZGxpbmU9dHJ1ZSBjb25maWcgLS1saXN0IC0tc2hvdy1zY29wZSA+b3V0cHV0ICYmCisJdGVzdF9jbXAgZXhwZWN0IG91dHB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICFNSU5HVyAnLS1zaG93LXNjb3BlIHdpdGggLS1ibG9iJyAnCisJYmxvYj0kKGdpdCBoYXNoLW9iamVjdCAtdyAiJENVU1RPTV9DT05GSUdfRklMRSIpICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJY29tbWFuZAl1c2VyLmN1c3RvbT10cnVlCisJRU9GCisJZ2l0IGNvbmZpZyAtLWJsb2I9JGJsb2IgLS1zaG93LXNjb3BlIC0tbGlzdCA+b3V0cHV0ICYmCisJdGVzdF9jbXAgZXhwZWN0IG91dHB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXNob3ctc2NvcGUgd2l0aCAtLWxvY2FsJyAnCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCWxvY2FsCXVzZXIubG9jYWw9dHJ1ZQorCWxvY2FsCXVzZXIub3ZlcnJpZGU9bG9jYWwKKwlsb2NhbAlpbmNsdWRlLnBhdGg9Li4vaW5jbHVkZS9yZWxhdGl2ZS5pbmNsdWRlCisJRU9GCisJZ2l0IGNvbmZpZyAtLWxvY2FsIC0tbGlzdCAtLXNob3ctc2NvcGUgPm91dHB1dCAmJgorCXRlc3RfY21wIGV4cGVjdCBvdXRwdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1zaG93LXNjb3BlIGdldHRpbmcgYSBzaW5nbGUgdmFsdWUnICcKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJbG9jYWwJdHJ1ZQorCUVPRgorCWdpdCBjb25maWcgLS1zaG93LXNjb3BlIC0tZ2V0IHVzZXIubG9jYWwgPm91dHB1dCAmJgorCXRlc3RfY21wIGV4cGVjdCBvdXRwdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1zaG93LXNjb3BlIHdpdGggLS1zaG93LW9yaWdpbicgJworCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCWdsb2JhbAlmaWxlOiRIT01FLy5naXRjb25maWcJdXNlci5nbG9iYWw9dHJ1ZQorCWdsb2JhbAlmaWxlOiRIT01FLy5naXRjb25maWcJdXNlci5vdmVycmlkZT1nbG9iYWwKKwlnbG9iYWwJZmlsZTokSE9NRS8uZ2l0Y29uZmlnCWluY2x1ZGUucGF0aD0kSU5DTFVERV9ESVIvYWJzb2x1dGUuaW5jbHVkZQorCWdsb2JhbAlmaWxlOiRJTkNMVURFX0RJUi9hYnNvbHV0ZS5pbmNsdWRlCXVzZXIuYWJzb2x1dGU9aW5jbHVkZQorCWxvY2FsCWZpbGU6LmdpdC9jb25maWcJdXNlci5sb2NhbD10cnVlCisJbG9jYWwJZmlsZTouZ2l0L2NvbmZpZwl1c2VyLm92ZXJyaWRlPWxvY2FsCisJbG9jYWwJZmlsZTouZ2l0L2NvbmZpZwlpbmNsdWRlLnBhdGg9Li4vaW5jbHVkZS9yZWxhdGl2ZS5pbmNsdWRlCisJbG9jYWwJZmlsZTouZ2l0Ly4uL2luY2x1ZGUvcmVsYXRpdmUuaW5jbHVkZQl1c2VyLnJlbGF0aXZlPWluY2x1ZGUKKwljb21tYW5kCWNvbW1hbmQgbGluZToJdXNlci5jbWRsaW5lPXRydWUKKwlFT0YKKwlnaXQgLWMgdXNlci5jbWRsaW5lPXRydWUgY29uZmlnIC0tbGlzdCAtLXNob3ctb3JpZ2luIC0tc2hvdy1zY29wZSA+b3V0cHV0ICYmCisJdGVzdF9jbXAgZXhwZWN0IG91dHB1dAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICctLWxvY2FsIHJlcXVpcmVzIGEgcmVwbycgJwogCSMgd2UgZXhwZWN0IDEyOCB0byBlbnN1cmUgdGhhdCB3ZSBkbyBub3Qgc2ltcGx5CiAJIyBmYWlsIHRvIGZpbmQgYW55dGhpbmcgYW5kIHJldHVybiBjb2RlICIxIgpkaWZmIC0tZ2l0IGEvdC90MTMwMS1zaGFyZWQtcmVwby5zaCBiL3QvdDEzMDEtc2hhcmVkLXJlcG8uc2gKaW5kZXggZGZlY2U3NS4uMmRjODUzZCAxMDA3NTUKLS0tIGEvdC90MTMwMS1zaGFyZWQtcmVwby5zaAorKysgYi90L3QxMzAxLXNoYXJlZC1yZXBvLnNoCkBAIC0xMzYsNyArMTM2LDcgQEAKIAkoCiAJCWNkIG5ldyAmJgogCQl1bWFzayAwMDIgJiYKLQkJZ2l0IGluaXQgLS1zaGFyZWQ9MDY2MCAtLXRlbXBsYXRlPS4uL3RlbXBsYXRlcyAmJgorCQlnaXQgaW5pdCAtLXNoYXJlZD0wNjYwIC0tdGVtcGxhdGU9dGVtcGxhdGVzICYmCiAJCT5mcm90eiAmJgogCQlnaXQgYWRkIGZyb3R6ICYmCiAJCWdpdCBjb21taXQgLWEgLW0gaW5pdGlhbCAmJgpAQCAtMTkyLDcgKzE5Miw3IEBACiAJdW1hc2sgMDAyMiAmJgogCWdpdCBpbml0IC0tYmFyZSAtLXNoYXJlZD0wNjY2IGNoaWxkLmdpdCAmJgogCXRlc3RfcGF0aF9pc19taXNzaW5nIGNoaWxkLmdpdC9mb28gJiYKLQlnaXQgaW5pdCAtLWJhcmUgLS10ZW1wbGF0ZT0uLi90ZW1wbGF0ZXMgY2hpbGQuZ2l0ICYmCisJZ2l0IGluaXQgLS1iYXJlIC0tdGVtcGxhdGU9dGVtcGxhdGVzIGNoaWxkLmdpdCAmJgogCWVjaG8gIi1ydy1ydy1ydy0iID5leHBlY3QgJiYKIAl0ZXN0X21vZGViaXRzIGNoaWxkLmdpdC9mb28gPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKQEAgLTIwMyw3ICsyMDMsNyBAQAogCXVtYXNrIDAwMjIgJiYKIAlnaXQgY29uZmlnIGNvcmUuc2hhcmVkcmVwb3NpdG9yeSAwNjY2ICYmCiAJY3AgLmdpdC9jb25maWcgdGVtcGxhdGVzL2NvbmZpZyAmJgotCWdpdCBpbml0IC0tYmFyZSAtLXRlbXBsYXRlPS4uL3RlbXBsYXRlcyBjaGlsZC5naXQgJiYKKwlnaXQgaW5pdCAtLWJhcmUgLS10ZW1wbGF0ZT10ZW1wbGF0ZXMgY2hpbGQuZ2l0ICYmCiAJZWNobyAiLXJ3LXJ3LXJ3LSIgPmV4cGVjdCAmJgogCXRlc3RfbW9kZWJpdHMgY2hpbGQuZ2l0L0hFQUQgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKZGlmZiAtLWdpdCBhL3QvdDEzMDUtY29uZmlnLWluY2x1ZGUuc2ggYi90L3QxMzA1LWNvbmZpZy1pbmNsdWRlLnNoCmluZGV4IDYzNTkxODUuLmYxZTFiMjggMTAwNzU1Ci0tLSBhL3QvdDEzMDUtY29uZmlnLWluY2x1ZGUuc2gKKysrIGIvdC90MTMwNS1jb25maWctaW5jbHVkZS5zaApAQCAtNjMsNyArNjMsNyBAQAogCXRlc3Qub25lPTEKIAlFT0YKIAlnaXQgY29uZmlnIC0tbGlzdCA+YWN0dWFsLmZ1bGwgJiYKLQlncmVwIC12IF5jb3JlIGFjdHVhbC5mdWxsID5hY3R1YWwgJiYKKwlncmVwIC12IC1lIF5jb3JlIC1lIF5leHRlbnNpb25zIGFjdHVhbC5mdWxsID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKQEAgLTIyOSw2ICsyMjksMTkgQEAKIAkpCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbmRpdGlvbmFsIGluY2x1ZGUgd2l0aCAvKiovJyAnCisJUkVQTz1mb28vYmFyL3JlcG8gJiYKKwlnaXQgaW5pdCAkUkVQTyAmJgorCWNhdCA+PiRSRVBPLy5naXQvY29uZmlnIDw8LVxFT0YgJiYKKwlbaW5jbHVkZUlmICJnaXRkaXI6KiovZm9vLyoqL2Jhci8qKiJdCisJcGF0aD1iYXI3CisJRU9GCisJZWNobyAiW3Rlc3Rdc2V2ZW49NyIgPiRSRVBPLy5naXQvYmFyNyAmJgorCWVjaG8gNyA+ZXhwZWN0ICYmCisJZ2l0IC1DICRSRVBPIGNvbmZpZyB0ZXN0LnNldmVuID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgU1lNTElOS1MgJ2NvbmRpdGlvbmFsIGluY2x1ZGUsIHNldCB1cCBzeW1saW5rZWQgJEhPTUUnICcKIAlta2RpciByZWFsLWhvbWUgJiYKIAlsbiAtcyByZWFsLWhvbWUgaG9tZSAmJgpAQCAtMjk2LDIxICszMDksNTMgQEAKIAkpCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbmRpdGlvbmFsIGluY2x1ZGUsIG9uYnJhbmNoJyAnCisJZWNobyAiW2luY2x1ZGVJZiBcIm9uYnJhbmNoOmZvby1icmFuY2hcIl1wYXRoPWJhcjkiID4+LmdpdC9jb25maWcgJiYKKwllY2hvICJbdGVzdF1uaW5lPTkiID4uZ2l0L2JhcjkgJiYKKwlnaXQgY2hlY2tvdXQgLWIgbWFzdGVyICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbmZpZyB0ZXN0Lm5pbmUgJiYKKwlnaXQgY2hlY2tvdXQgLWIgZm9vLWJyYW5jaCAmJgorCWVjaG8gOSA+ZXhwZWN0ICYmCisJZ2l0IGNvbmZpZyB0ZXN0Lm5pbmUgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29uZGl0aW9uYWwgaW5jbHVkZSwgb25icmFuY2gsIHdpbGRjYXJkJyAnCisJZWNobyAiW2luY2x1ZGVJZiBcIm9uYnJhbmNoOj9vby0qLyoqXCJdcGF0aD1iYXIxMCIgPj4uZ2l0L2NvbmZpZyAmJgorCWVjaG8gIlt0ZXN0XXRlbj0xMCIgPi5naXQvYmFyMTAgJiYKKwlnaXQgY2hlY2tvdXQgLWIgbm90LWZvby1icmFuY2gvYSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBjb25maWcgdGVzdC50ZW4gJiYKKworCWVjaG8gMTAgPmV4cGVjdCAmJgorCWdpdCBjaGVja291dCAtYiBmb28tYnJhbmNoL2EvYi9jICYmCisJZ2l0IGNvbmZpZyB0ZXN0LnRlbiA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJZ2l0IGNoZWNrb3V0IC1iIG1vby1iYXIvYSAmJgorCWdpdCBjb25maWcgdGVzdC50ZW4gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29uZGl0aW9uYWwgaW5jbHVkZSwgb25icmFuY2gsIGltcGxpY2l0IC8qKiBmb3IgLycgJworCWVjaG8gIltpbmNsdWRlSWYgXCJvbmJyYW5jaDpmb28tZGlyL1wiXXBhdGg9YmFyMTEiID4+LmdpdC9jb25maWcgJiYKKwllY2hvICJbdGVzdF1lbGV2ZW49MTEiID4uZ2l0L2JhcjExICYmCisJZ2l0IGNoZWNrb3V0IC1iIG5vdC1mb28tZGlyL2EgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgY29uZmlnIHRlc3QuZWxldmVuICYmCisKKwllY2hvIDExID5leHBlY3QgJiYKKwlnaXQgY2hlY2tvdXQgLWIgZm9vLWRpci9hL2IvYyAmJgorCWdpdCBjb25maWcgdGVzdC5lbGV2ZW4gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnaW5jbHVkZSBjeWNsZXMgYXJlIGRldGVjdGVkJyAnCi0JY2F0ID4uZ2l0Y29uZmlnIDw8LVxFT0YgJiYKLQlbdGVzdF12YWx1ZSA9IGdpdGNvbmZpZwotCVtpbmNsdWRlXXBhdGggPSBjeWNsZQotCUVPRgotCWNhdCA+Y3ljbGUgPDwtXEVPRiAmJgotCVt0ZXN0XXZhbHVlID0gY3ljbGUKLQlbaW5jbHVkZV1wYXRoID0gLmdpdGNvbmZpZwotCUVPRgotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKLQlnaXRjb25maWcKLQljeWNsZQotCUVPRgotCXRlc3RfbXVzdF9mYWlsIGdpdCBjb25maWcgLS1nZXQtYWxsIHRlc3QudmFsdWUgMj5zdGRlcnIgJiYKLQl0ZXN0X2kxOG5ncmVwICJleGNlZWRlZCBtYXhpbXVtIGluY2x1ZGUgZGVwdGgiIHN0ZGVycgorCWdpdCBpbml0IC0tYmFyZSBjeWNsZSAmJgorCWdpdCAtQyBjeWNsZSBjb25maWcgaW5jbHVkZS5wYXRoIGN5Y2xlICYmCisJZ2l0IGNvbmZpZyAtZiBjeWNsZS9jeWNsZSBpbmNsdWRlLnBhdGggY29uZmlnICYmCisJdGVzdF9tdXN0X2ZhaWwgXAorCQllbnYgR0lUX1RFU1RfR0VUVEVYVF9QT0lTT049ZmFsc2UgXAorCQlnaXQgLUMgY3ljbGUgY29uZmlnIC0tZ2V0LWFsbCB0ZXN0LnZhbHVlIDI+c3RkZXJyICYmCisJZ3JlcCAiZXhjZWVkZWQgbWF4aW11bSBpbmNsdWRlIGRlcHRoIiBzdGRlcnIKICcKIAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QxMzA2LXhkZy1maWxlcy5zaCBiL3QvdDEzMDYteGRnLWZpbGVzLnNoCmluZGV4IDIxZTEzOWEuLmRkODdiNDMgMTAwNzU1Ci0tLSBhL3QvdDEzMDYteGRnLWZpbGVzLnNoCisrKyBiL3QvdDEzMDYteGRnLWZpbGVzLnNoCkBAIC0xNTMsNyArMTUzLDcgQEAKIAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdDaGVja2luZyBhdHRyaWJ1dGVzIGluIGEgbm9uLVhERyBnbG9iYWwgYXR0cmlidXRlcyBmaWxlJyAnCi0JdGVzdF9taWdodF9mYWlsIHJtIC5naXRhdHRyaWJ1dGVzICYmCisJcm0gLWYgLmdpdGF0dHJpYnV0ZXMgJiYKIAllY2hvICJmIGF0dHJfZj10ZXN0IiA+IiRIT01FIi9teV9naXRhdHRyaWJ1dGVzICYmCiAJZ2l0IGNvbmZpZyBjb3JlLmF0dHJpYnV0ZXNmaWxlICIkSE9NRSIvbXlfZ2l0YXR0cmlidXRlcyAmJgogCWVjaG8gImY6IGF0dHJfZjogdGVzdCIgPmV4cGVjdGVkICYmCkBAIC0xNjUsNyArMTY1LDcgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dyaXRlOiB4ZGcgZmlsZSBleGlzdHMgYW5kIH4vLmdpdGNvbmZpZyBkb2VzbidcJyd0JyAnCiAJbWtkaXIgLXAgIiRIT01FIi8uY29uZmlnL2dpdCAmJgogCT4iJEhPTUUiLy5jb25maWcvZ2l0L2NvbmZpZyAmJgotCXRlc3RfbWlnaHRfZmFpbCBybSAiJEhPTUUiLy5naXRjb25maWcgJiYKKwlybSAtZiAiJEhPTUUiLy5naXRjb25maWcgJiYKIAlnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIubmFtZSAid3JpdGVfY29uZmlnIiAmJgogCWVjaG8gIlt1c2VyXSIgPmV4cGVjdGVkICYmCiAJZWNobyAiCW5hbWUgPSB3cml0ZV9jb25maWciID4+ZXhwZWN0ZWQgJiYKQEAgLTE4Myw4ICsxODMsOCBAQAogCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dyaXRlOiB+Ly5jb25maWcvZ2l0LyBleGlzdHMgYW5kIGNvbmZpZyBmaWxlIGRvZXNuJ1wnJ3QnICcKLQl0ZXN0X21pZ2h0X2ZhaWwgcm0gIiRIT01FIi8uZ2l0Y29uZmlnICYmCi0JdGVzdF9taWdodF9mYWlsIHJtICIkSE9NRSIvLmNvbmZpZy9naXQvY29uZmlnICYmCisJcm0gLWYgIiRIT01FIi8uZ2l0Y29uZmlnICYmCisJcm0gLWYgIiRIT01FIi8uY29uZmlnL2dpdC9jb25maWcgJiYKIAlnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIubmFtZSAid3JpdGVfZ2l0Y29uZmlnIiAmJgogCWVjaG8gIlt1c2VyXSIgPmV4cGVjdGVkICYmCiAJZWNobyAiCW5hbWUgPSB3cml0ZV9naXRjb25maWciID4+ZXhwZWN0ZWQgJiYKZGlmZiAtLWdpdCBhL3QvdDEzMDctY29uZmlnLWJsb2Iuc2ggYi90L3QxMzA3LWNvbmZpZy1ibG9iLnNoCmluZGV4IDM3ZGM2ODkuLjAwMmU2ZDMgMTAwNzU1Ci0tLSBhL3QvdDEzMDctY29uZmlnLWJsb2Iuc2gKKysrIGIvdC90MTMwNy1jb25maWctYmxvYi5zaApAQCAtNzQsNyArNzQsNyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb25maWcgLS1ibG9iIG91dHNpZGUgb2YgYSByZXBvc2l0b3J5IGlzIGFuIGVycm9yJyAnCi0JdGVzdF9tdXN0X2ZhaWwgbm9uZ2l0IGdpdCBjb25maWcgLS1ibG9iPWZvbyAtLWxpc3QKKwlub25naXQgdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbmZpZyAtLWJsb2I9Zm9vIC0tbGlzdAogJwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDEzMDgtY29uZmlnLXNldC5zaCBiL3QvdDEzMDgtY29uZmlnLXNldC5zaAppbmRleCBkMGEyNzI3Li4zYTUyN2UzIDEwMDc1NQotLS0gYS90L3QxMzA4LWNvbmZpZy1zZXQuc2gKKysrIGIvdC90MTMwOC1jb25maWctc2V0LnNoCkBAIC0xNjYsMTQgKzE2NiwxNCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmaW5kIHZhbHVlX2xpc3QgZm9yIGEga2V5IGZyb20gYSBjb25maWdzZXQnICcKLQljYXQgPmV4Y2VwdCA8PC1cRU9GICYmCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCWxhbWEKKwliYWxsCiAJc2FtCiAJYmF0CiAJaGFzawotCWxhbWEKLQliYWxsCiAJRU9GCi0JdGVzdC10b29sIGNvbmZpZyBjb25maWdzZXRfZ2V0X3ZhbHVlIGNhc2UuYmF6IGNvbmZpZzIgLmdpdC9jb25maWcgPmFjdHVhbCAmJgorCXRlc3QtdG9vbCBjb25maWcgY29uZmlnc2V0X2dldF92YWx1ZV9tdWx0aSBjYXNlLmJheiBjb25maWcyIC5naXQvY29uZmlnID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKQEAgLTIzOCw4ICsyMzgsOCBAQAogCiBjbWRsaW5lX2NvbmZpZz0iJ2Zvby5iYXI9ZnJvbS1jbWRsaW5lJyIKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2l0ZXJhdGlvbiBzaG93cyBjb3JyZWN0IG9yaWdpbnMnICcKLQllY2hvICJbZm9vXWJhciA9IGZyb20tcmVwbyIgPi5naXQvY29uZmlnICYmCi0JZWNobyAiW2Zvb11iYXIgPSBmcm9tLWhvbWUiID4uZ2l0Y29uZmlnICYmCisJcHJpbnRmICJbaWdub3JlXVxuXHR0aGlzID0gcGxlYXNlXG5bZm9vXWJhciA9IGZyb20tcmVwb1xuIiA+LmdpdC9jb25maWcgJiYKKwlwcmludGYgIltmb29dXG5cdGJhciA9IGZyb20taG9tZVxuIiA+LmdpdGNvbmZpZyAmJgogCWlmIHRlc3RfaGF2ZV9wcmVyZXEgTUlOR1cKIAl0aGVuCiAJCSMgVXNlIFdpbmRvd3MgcGF0aCAoaS5lLiAqbm90KiAkSE9NRSkKQEAgLTI1MywxOSArMjUzLDI5IEBACiAJdmFsdWU9ZnJvbS1ob21lCiAJb3JpZ2luPWZpbGUKIAluYW1lPSRIT01FX0dJVENPTkZJRworCWxubz0yCiAJc2NvcGU9Z2xvYmFsCiAKKwlrZXk9aWdub3JlLnRoaXMKKwl2YWx1ZT1wbGVhc2UKKwlvcmlnaW49ZmlsZQorCW5hbWU9LmdpdC9jb25maWcKKwlsbm89MgorCXNjb3BlPWxvY2FsCisKIAlrZXk9Zm9vLmJhcgogCXZhbHVlPWZyb20tcmVwbwogCW9yaWdpbj1maWxlCiAJbmFtZT0uZ2l0L2NvbmZpZwotCXNjb3BlPXJlcG8KKwlsbm89MworCXNjb3BlPWxvY2FsCiAKIAlrZXk9Zm9vLmJhcgogCXZhbHVlPWZyb20tY21kbGluZQogCW9yaWdpbj1jb21tYW5kIGxpbmUKIAluYW1lPQotCXNjb3BlPWNtZGxpbmUKKwlsbm89LTEKKwlzY29wZT1jb21tYW5kCiAJRU9GCiAJR0lUX0NPTkZJR19QQVJBTUVURVJTPSRjbWRsaW5lX2NvbmZpZyB0ZXN0LXRvb2wgY29uZmlnIGl0ZXJhdGUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKZGlmZiAtLWdpdCBhL3QvdDEzMDktZWFybHktY29uZmlnLnNoIGIvdC90MTMwOS1lYXJseS1jb25maWcuc2gKaW5kZXggNDEzNjQyYS4uZWJiOGUxYSAxMDA3NTUKLS0tIGEvdC90MTMwOS1lYXJseS1jb25maWcuc2gKKysrIGIvdC90MTMwOS1lYXJseS1jb25maWcuc2gKQEAgLTI5LDcgKzI5LDcgQEAKIAkJY2Qgc3ViICYmCiAJCXRlc3QtdG9vbCBjb25maWcgcmVhZF9lYXJseV9jb25maWcgZWFybHkuY29uZmlnCiAJKSA+b3V0cHV0ICYmCi0JdGVzdCAteiAiJChjYXQgb3V0cHV0KSIKKwl0ZXN0X211c3RfYmVfZW1wdHkgb3V0cHV0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NlaWxpbmcgIzInICcKQEAgLTg5LDQgKzg5LDE0IEBACiAJdGVzdF93aXRoX2NvbmZpZyAiWyIKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnZWFybHkgY29uZmlnIGFuZCBvbmJyYW5jaCcgJworCWVjaG8gIlticm9rZW4iID5icm9rZW4gJiYKKwl0ZXN0X3dpdGhfY29uZmlnICJbaW5jbHVkZWlmIFwib25icmFuY2g6bWFzdGVyXCJdcGF0aD0uLi9icm9rZW4iCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ29uYnJhbmNoIGNvbmZpZyBvdXRzaWRlIG9mIGdpdCByZXBvJyAnCisJdGVzdF9jb25maWdfZ2xvYmFsIGluY2x1ZGVJZi5vbmJyYW5jaDptYXN0ZXIucGF0aCBub24tZXhpc3RlbnQgJiYKKwlub25naXQgZ2l0IGhlbHAKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QxNDAwLXVwZGF0ZS1yZWYuc2ggYi90L3QxNDAwLXVwZGF0ZS1yZWYuc2gKaW5kZXggMWZiZDk0MC4uYTYyMjRlZiAxMDA3NTUKLS0tIGEvdC90MTQwMC11cGRhdGUtcmVmLnNoCisrKyBiL3QvdDE0MDAtdXBkYXRlLXJlZi5zaApAQCAtMzQ0LDE0ICszNDQsMTYgQEAKIAl0ZXN0X2NtcCBleHBlY3QgLmdpdC9sb2dzLyRtCiAnCiAKLWdpdCB1cGRhdGUtcmVmICRtICRECi1jYXQgPi5naXQvbG9ncy8kbSA8PEVPRgotJFogJEMgJEdJVF9DT01NSVRURVJfTkFNRSA8JEdJVF9DT01NSVRURVJfRU1BSUw+IDExMTcxNTAzMjAgLTA1MDAKLSRDICRBICRHSVRfQ09NTUlUVEVSX05BTUUgPCRHSVRfQ09NTUlUVEVSX0VNQUlMPiAxMTE3MTUwMzUwIC0wNTAwCi0kQSAkQiAkR0lUX0NPTU1JVFRFUl9OQU1FIDwkR0lUX0NPTU1JVFRFUl9FTUFJTD4gMTExNzE1MDM4MCAtMDUwMAotJEYgJFogJEdJVF9DT01NSVRURVJfTkFNRSA8JEdJVF9DT01NSVRURVJfRU1BSUw+IDExMTcxNTA2ODAgLTA1MDAKLSRaICRFICRHSVRfQ09NTUlUVEVSX05BTUUgPCRHSVRfQ09NTUlUVEVSX0VNQUlMPiAxMTE3MTUwOTgwIC0wNTAwCi1FT0YKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldCB1cCBmb3IgcXVlcnlpbmcgdGhlIHJlZmxvZycgJworCWdpdCB1cGRhdGUtcmVmICRtICREICYmCisJY2F0ID4uZ2l0L2xvZ3MvJG0gPDwtRU9GCisJJFogJEMgJEdJVF9DT01NSVRURVJfTkFNRSA8JEdJVF9DT01NSVRURVJfRU1BSUw+IDExMTcxNTAzMjAgLTA1MDAKKwkkQyAkQSAkR0lUX0NPTU1JVFRFUl9OQU1FIDwkR0lUX0NPTU1JVFRFUl9FTUFJTD4gMTExNzE1MDM1MCAtMDUwMAorCSRBICRCICRHSVRfQ09NTUlUVEVSX05BTUUgPCRHSVRfQ09NTUlUVEVSX0VNQUlMPiAxMTE3MTUwMzgwIC0wNTAwCisJJEYgJFogJEdJVF9DT01NSVRURVJfTkFNRSA8JEdJVF9DT01NSVRURVJfRU1BSUw+IDExMTcxNTA2ODAgLTA1MDAKKwkkWiAkRSAkR0lUX0NPTU1JVFRFUl9OQU1FIDwkR0lUX0NPTU1JVFRFUl9FTUFJTD4gMTExNzE1MDk4MCAtMDUwMAorCUVPRgorJwogCiBlZD0iVGh1LCAyNiBNYXkgMjAwNSAxODozMjowMCAtMDUwMCIKIGdkPSJUaHUsIDI2IE1heSAyMDA1IDE4OjMzOjAwIC0wNTAwIgpAQCAtMzU5LDU1ICszNjEsNjcgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ1F1ZXJ5ICJtYXN0ZXJAe01heSAyNSAyMDA1fSIgKGJlZm9yZSBoaXN0b3J5KScgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgbyBlIiAmJgogCWdpdCByZXYtcGFyc2UgLS12ZXJpZnkgIm1hc3RlckB7TWF5IDI1IDIwMDV9IiA+byAyPmUgJiYKLQl0ZXN0ICRDID0gJChjYXQgbykgJiYKLQl0ZXN0ICJ3YXJuaW5nOiBMb2cgZm9yICdcJydtYXN0ZXInXCcnIG9ubHkgZ29lcyBiYWNrIHRvICRlZC4iID0gIiQoY2F0IGUpIgorCWVjaG8gIiRDIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IG8gJiYKKwllY2hvICJ3YXJuaW5nOiBsb2cgZm9yICdcJydtYXN0ZXInXCcnIG9ubHkgZ29lcyBiYWNrIHRvICRlZCIgPmV4cGVjdCAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3QgZQogJwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnUXVlcnkgbWFzdGVyQHsyMDA1LTA1LTI1fSAoYmVmb3JlIGhpc3RvcnkpJyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBvIGUiICYmCiAJZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBtYXN0ZXJAezIwMDUtMDUtMjV9ID5vIDI+ZSAmJgotCXRlc3QgJEMgPSAkKGNhdCBvKSAmJgotCXRlc3QgIndhcm5pbmc6IExvZyBmb3IgJ1wnJ21hc3RlcidcJycgb25seSBnb2VzIGJhY2sgdG8gJGVkLiIgPSAiJChjYXQgZSkiCisJZWNobyAiJEMiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgbyAmJgorCWVjaG8gIndhcm5pbmc6IGxvZyBmb3IgJ1wnJ21hc3RlcidcJycgb25seSBnb2VzIGJhY2sgdG8gJGVkIiA+ZXhwZWN0ICYmCisJdGVzdF9pMThuY21wIGV4cGVjdCBlCiAnCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdRdWVyeSAibWFzdGVyQHtNYXkgMjYgMjAwNSAyMzozMTo1OX0iICgxIHNlY29uZCBiZWZvcmUgaGlzdG9yeSknICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIG8gZSIgJiYKIAlnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5ICJtYXN0ZXJAe01heSAyNiAyMDA1IDIzOjMxOjU5fSIgPm8gMj5lICYmCi0JdGVzdCAkQyA9ICQoY2F0IG8pICYmCi0JdGVzdCAid2FybmluZzogTG9nIGZvciAnXCcnbWFzdGVyJ1wnJyBvbmx5IGdvZXMgYmFjayB0byAkZWQuIiA9ICIkKGNhdCBlKSIKKwllY2hvICIkQyIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBvICYmCisJZWNobyAid2FybmluZzogbG9nIGZvciAnXCcnbWFzdGVyJ1wnJyBvbmx5IGdvZXMgYmFjayB0byAkZWQiID5leHBlY3QgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IGUKICcKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ1F1ZXJ5ICJtYXN0ZXJAe01heSAyNiAyMDA1IDIzOjMyOjAwfSIgKGV4YWN0bHkgaGlzdG9yeSBzdGFydCknICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIG8gZSIgJiYKIAlnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5ICJtYXN0ZXJAe01heSAyNiAyMDA1IDIzOjMyOjAwfSIgPm8gMj5lICYmCi0JdGVzdCAkQyA9ICQoY2F0IG8pICYmCi0JdGVzdCAiIiA9ICIkKGNhdCBlKSIKKwllY2hvICIkQyIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBvICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGUKICcKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ1F1ZXJ5ICJtYXN0ZXJAe01heSAyNiAyMDA1IDIzOjMyOjMwfSIgKGZpcnN0IG5vbi1jcmVhdGlvbiBjaGFuZ2UpJyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBvIGUiICYmCiAJZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSAibWFzdGVyQHtNYXkgMjYgMjAwNSAyMzozMjozMH0iID5vIDI+ZSAmJgotCXRlc3QgJEEgPSAkKGNhdCBvKSAmJgotCXRlc3QgIiIgPSAiJChjYXQgZSkiCisJZWNobyAiJEEiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgbyAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBlCiAnCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdRdWVyeSAibWFzdGVyQHsyMDA1LTA1LTI2IDIzOjMzOjAxfSIgKG1pZGRsZSBvZiBoaXN0b3J5IHdpdGggZ2FwKScgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgbyBlIiAmJgogCWdpdCByZXYtcGFyc2UgLS12ZXJpZnkgIm1hc3RlckB7MjAwNS0wNS0yNiAyMzozMzowMX0iID5vIDI+ZSAmJgotCXRlc3QgJEIgPSAkKGNhdCBvKSAmJgorCWVjaG8gIiRCIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IG8gJiYKIAl0ZXN0X2kxOG5ncmVwIC1GICJ3YXJuaW5nOiBsb2cgZm9yIHJlZiAkbSBoYXMgZ2FwIGFmdGVyICRnZCIgZQogJwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnUXVlcnkgIm1hc3RlckB7MjAwNS0wNS0yNiAyMzozODowMH0iIChtaWRkbGUgb2YgaGlzdG9yeSknICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIG8gZSIgJiYKIAlnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5ICJtYXN0ZXJAezIwMDUtMDUtMjYgMjM6Mzg6MDB9IiA+byAyPmUgJiYKLQl0ZXN0ICRaID0gJChjYXQgbykgJiYKLQl0ZXN0ICIiID0gIiQoY2F0IGUpIgorCWVjaG8gIiRaIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IG8gJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgZQogJwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnUXVlcnkgIm1hc3RlckB7MjAwNS0wNS0yNiAyMzo0MzowMH0iIChleGFjdCBlbmQgb2YgaGlzdG9yeSknICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIG8gZSIgJiYKIAlnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5ICJtYXN0ZXJAezIwMDUtMDUtMjYgMjM6NDM6MDB9IiA+byAyPmUgJiYKLQl0ZXN0ICRFID0gJChjYXQgbykgJiYKLQl0ZXN0ICIiID0gIiQoY2F0IGUpIgorCWVjaG8gIiRFIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IG8gJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgZQogJwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnUXVlcnkgIm1hc3RlckB7MjAwNS0wNS0yOH0iIChwYXN0IGVuZCBvZiBoaXN0b3J5KScgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgbyBlIiAmJgogCWdpdCByZXYtcGFyc2UgLS12ZXJpZnkgIm1hc3RlckB7MjAwNS0wNS0yOH0iID5vIDI+ZSAmJgotCXRlc3QgJEQgPSAkKGNhdCBvKSAmJgorCWVjaG8gIiREIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IG8gJiYKIAl0ZXN0X2kxOG5ncmVwIC1GICJ3YXJuaW5nOiBsb2cgZm9yIHJlZiAkbSB1bmV4cGVjdGVkbHkgZW5kZWQgb24gJGxkIiBlCiAnCiAKZGlmZiAtLWdpdCBhL3QvdDE0MDQtdXBkYXRlLXJlZi1lcnJvcnMuc2ggYi90L3QxNDA0LXVwZGF0ZS1yZWYtZXJyb3JzLnNoCmluZGV4IDUxYTRmNGMuLjJkMTQyZTUgMTAwNzU1Ci0tLSBhL3QvdDE0MDQtdXBkYXRlLXJlZi1lcnJvcnMuc2gKKysrIGIvdC90MTQwNC11cGRhdGUtcmVmLWVycm9ycy5zaApAQCAtMzIsOCArMzIsNiBAQAogCXRlc3RfY21wIHVuY2hhbmdlZCBhY3R1YWwKIH0KIAotUT0iJyIKLQogIyBUZXN0IGFkZGluZyBhbmQgZGVsZXRpbmcgRC9GLWNvbmZsaWN0aW5nIHJlZmVyZW5jZXMgaW4gYSBzaW5nbGUKICMgdHJhbnNhY3Rpb24uCiBkZl90ZXN0KCkgewpAQCAtOTMsNyArOTEsNyBAQAogCQlkZWxuYW1lPSIkZGVscmVmIgogCWZpICYmCiAJY2F0ID5leHBlY3RlZC1lcnIgPDwtRU9GICYmCi0JZmF0YWw6IGNhbm5vdCBsb2NrIHJlZiAkUSRhZGRuYW1lJFE6ICRRJGRlbHJlZiRRIGV4aXN0czsgY2Fubm90IGNyZWF0ZSAkUSRhZGRyZWYkUQorCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFNRJGFkZG5hbWUkU1E6ICRTUSRkZWxyZWYkU1EgZXhpc3RzOyBjYW5ub3QgY3JlYXRlICRTUSRhZGRyZWYkU1EKIAlFT0YKIAkkcGFjayAmJgogCWlmICRhZGRfZGVsCkBAIC0xMjMsNyArMTIxLDcgQEAKIAogCXByZWZpeD1yZWZzLzFsICYmCiAJdGVzdF91cGRhdGVfcmVqZWN0ZWQgImEgYyBlIiBmYWxzZSAiYiBjL3ggZCIgXAotCQkiJFEkcHJlZml4L2MkUSBleGlzdHM7IGNhbm5vdCBjcmVhdGUgJFEkcHJlZml4L2MveCRRIgorCQkiJFNRJHByZWZpeC9jJFNRIGV4aXN0czsgY2Fubm90IGNyZWF0ZSAkU1EkcHJlZml4L2MveCRTUSIKIAogJwogCkBAIC0xMzEsNyArMTI5LDcgQEAKIAogCXByZWZpeD1yZWZzLzFwICYmCiAJdGVzdF91cGRhdGVfcmVqZWN0ZWQgImEgYyBlIiB0cnVlICJiIGMveCBkIiBcCi0JCSIkUSRwcmVmaXgvYyRRIGV4aXN0czsgY2Fubm90IGNyZWF0ZSAkUSRwcmVmaXgvYy94JFEiCisJCSIkU1EkcHJlZml4L2MkU1EgZXhpc3RzOyBjYW5ub3QgY3JlYXRlICRTUSRwcmVmaXgvYy94JFNRIgogCiAnCiAKQEAgLTEzOSw3ICsxMzcsNyBAQAogCiAJcHJlZml4PXJlZnMvMmwgJiYKIAl0ZXN0X3VwZGF0ZV9yZWplY3RlZCAiYSBjIGUiIGZhbHNlICJiIGMveC95IGQiIFwKLQkJIiRRJHByZWZpeC9jJFEgZXhpc3RzOyBjYW5ub3QgY3JlYXRlICRRJHByZWZpeC9jL3gveSRRIgorCQkiJFNRJHByZWZpeC9jJFNRIGV4aXN0czsgY2Fubm90IGNyZWF0ZSAkU1EkcHJlZml4L2MveC95JFNRIgogCiAnCiAKQEAgLTE0Nyw3ICsxNDUsNyBAQAogCiAJcHJlZml4PXJlZnMvMnAgJiYKIAl0ZXN0X3VwZGF0ZV9yZWplY3RlZCAiYSBjIGUiIHRydWUgImIgYy94L3kgZCIgXAotCQkiJFEkcHJlZml4L2MkUSBleGlzdHM7IGNhbm5vdCBjcmVhdGUgJFEkcHJlZml4L2MveC95JFEiCisJCSIkU1EkcHJlZml4L2MkU1EgZXhpc3RzOyBjYW5ub3QgY3JlYXRlICRTUSRwcmVmaXgvYy94L3kkU1EiCiAKICcKIApAQCAtMTU1LDcgKzE1Myw3IEBACiAKIAlwcmVmaXg9cmVmcy8zbCAmJgogCXRlc3RfdXBkYXRlX3JlamVjdGVkICJhIGMveCBlIiBmYWxzZSAiYiBjIGQiIFwKLQkJIiRRJHByZWZpeC9jL3gkUSBleGlzdHM7IGNhbm5vdCBjcmVhdGUgJFEkcHJlZml4L2MkUSIKKwkJIiRTUSRwcmVmaXgvYy94JFNRIGV4aXN0czsgY2Fubm90IGNyZWF0ZSAkU1EkcHJlZml4L2MkU1EiCiAKICcKIApAQCAtMTYzLDcgKzE2MSw3IEBACiAKIAlwcmVmaXg9cmVmcy8zcCAmJgogCXRlc3RfdXBkYXRlX3JlamVjdGVkICJhIGMveCBlIiB0cnVlICJiIGMgZCIgXAotCQkiJFEkcHJlZml4L2MveCRRIGV4aXN0czsgY2Fubm90IGNyZWF0ZSAkUSRwcmVmaXgvYyRRIgorCQkiJFNRJHByZWZpeC9jL3gkU1EgZXhpc3RzOyBjYW5ub3QgY3JlYXRlICRTUSRwcmVmaXgvYyRTUSIKIAogJwogCkBAIC0xNzEsNyArMTY5LDcgQEAKIAogCXByZWZpeD1yZWZzLzRsICYmCiAJdGVzdF91cGRhdGVfcmVqZWN0ZWQgImEgYy94L3kgZSIgZmFsc2UgImIgYyBkIiBcCi0JCSIkUSRwcmVmaXgvYy94L3kkUSBleGlzdHM7IGNhbm5vdCBjcmVhdGUgJFEkcHJlZml4L2MkUSIKKwkJIiRTUSRwcmVmaXgvYy94L3kkU1EgZXhpc3RzOyBjYW5ub3QgY3JlYXRlICRTUSRwcmVmaXgvYyRTUSIKIAogJwogCkBAIC0xNzksNyArMTc3LDcgQEAKIAogCXByZWZpeD1yZWZzLzRwICYmCiAJdGVzdF91cGRhdGVfcmVqZWN0ZWQgImEgYy94L3kgZSIgdHJ1ZSAiYiBjIGQiIFwKLQkJIiRRJHByZWZpeC9jL3gveSRRIGV4aXN0czsgY2Fubm90IGNyZWF0ZSAkUSRwcmVmaXgvYyRRIgorCQkiJFNRJHByZWZpeC9jL3gveSRTUSBleGlzdHM7IGNhbm5vdCBjcmVhdGUgJFNRJHByZWZpeC9jJFNRIgogCiAnCiAKQEAgLTE4Nyw3ICsxODUsNyBAQAogCiAJcHJlZml4PXJlZnMvNSAmJgogCXRlc3RfdXBkYXRlX3JlamVjdGVkICJhIGUiIGZhbHNlICJiIGMgYy94IGQiIFwKLQkJImNhbm5vdCBwcm9jZXNzICRRJHByZWZpeC9jJFEgYW5kICRRJHByZWZpeC9jL3gkUSBhdCB0aGUgc2FtZSB0aW1lIgorCQkiY2Fubm90IHByb2Nlc3MgJFNRJHByZWZpeC9jJFNRIGFuZCAkU1EkcHJlZml4L2MveCRTUSBhdCB0aGUgc2FtZSB0aW1lIgogCiAnCiAKQEAgLTMzNCw3ICszMzIsNyBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbWlzc2luZyBvbGQgdmFsdWUgYmxvY2tzIHVwZGF0ZScgJwogCXByZWZpeD1yZWZzL21pc3NpbmctdXBkYXRlICYmCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRRJHByZWZpeC9mb28kUTogdW5hYmxlIHRvIHJlc29sdmUgcmVmZXJlbmNlICRRJHByZWZpeC9mb28kUQorCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFNRJHByZWZpeC9mb28kU1E6IHVuYWJsZSB0byByZXNvbHZlIHJlZmVyZW5jZSAkU1EkcHJlZml4L2ZvbyRTUQogCUVPRgogCXByaW50ZiAiJXNcbiIgInVwZGF0ZSAkcHJlZml4L2ZvbyAkRSAkRCIgfAogCXRlc3RfbXVzdF9mYWlsIGdpdCB1cGRhdGUtcmVmIC0tc3RkaW4gMj5vdXRwdXQuZXJyICYmCkBAIC0zNDUsNyArMzQzLDcgQEAKIAlwcmVmaXg9cmVmcy9pbmNvcnJlY3QtdXBkYXRlICYmCiAJZ2l0IHVwZGF0ZS1yZWYgJHByZWZpeC9mb28gJEMgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFEkcHJlZml4L2ZvbyRROiBpcyBhdCAkQyBidXQgZXhwZWN0ZWQgJEQKKwlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRTUSRwcmVmaXgvZm9vJFNROiBpcyBhdCAkQyBidXQgZXhwZWN0ZWQgJEQKIAlFT0YKIAlwcmludGYgIiVzXG4iICJ1cGRhdGUgJHByZWZpeC9mb28gJEUgJEQiIHwKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBkYXRlLXJlZiAtLXN0ZGluIDI+b3V0cHV0LmVyciAmJgpAQCAtMzU2LDcgKzM1NCw3IEBACiAJcHJlZml4PXJlZnMvZXhpc3RpbmctY3JlYXRlICYmCiAJZ2l0IHVwZGF0ZS1yZWYgJHByZWZpeC9mb28gJEMgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFEkcHJlZml4L2ZvbyRROiByZWZlcmVuY2UgYWxyZWFkeSBleGlzdHMKKwlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRTUSRwcmVmaXgvZm9vJFNROiByZWZlcmVuY2UgYWxyZWFkeSBleGlzdHMKIAlFT0YKIAlwcmludGYgIiVzXG4iICJjcmVhdGUgJHByZWZpeC9mb28gJEUiIHwKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBkYXRlLXJlZiAtLXN0ZGluIDI+b3V0cHV0LmVyciAmJgpAQCAtMzY3LDcgKzM2NSw3IEBACiAJcHJlZml4PXJlZnMvaW5jb3JyZWN0LWRlbGV0ZSAmJgogCWdpdCB1cGRhdGUtcmVmICRwcmVmaXgvZm9vICRDICYmCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRRJHByZWZpeC9mb28kUTogaXMgYXQgJEMgYnV0IGV4cGVjdGVkICRECisJZmF0YWw6IGNhbm5vdCBsb2NrIHJlZiAkU1EkcHJlZml4L2ZvbyRTUTogaXMgYXQgJEMgYnV0IGV4cGVjdGVkICRECiAJRU9GCiAJcHJpbnRmICIlc1xuIiAiZGVsZXRlICRwcmVmaXgvZm9vICREIiB8CiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHVwZGF0ZS1yZWYgLS1zdGRpbiAyPm91dHB1dC5lcnIgJiYKQEAgLTM3OCw3ICszNzYsNyBAQAogCXByZWZpeD1yZWZzL21pc3NpbmctaW5kaXJlY3QtdXBkYXRlICYmCiAJZ2l0IHN5bWJvbGljLXJlZiAkcHJlZml4L3N5bXJlZiAkcHJlZml4L2ZvbyAmJgogCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCi0JZmF0YWw6IGNhbm5vdCBsb2NrIHJlZiAkUSRwcmVmaXgvc3ltcmVmJFE6IHVuYWJsZSB0byByZXNvbHZlIHJlZmVyZW5jZSAkUSRwcmVmaXgvZm9vJFEKKwlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRTUSRwcmVmaXgvc3ltcmVmJFNROiB1bmFibGUgdG8gcmVzb2x2ZSByZWZlcmVuY2UgJFNRJHByZWZpeC9mb28kU1EKIAlFT0YKIAlwcmludGYgIiVzXG4iICJ1cGRhdGUgJHByZWZpeC9zeW1yZWYgJEUgJEQiIHwKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBkYXRlLXJlZiAtLXN0ZGluIDI+b3V0cHV0LmVyciAmJgpAQCAtMzkwLDcgKzM4OCw3IEBACiAJZ2l0IHN5bWJvbGljLXJlZiAkcHJlZml4L3N5bXJlZiAkcHJlZml4L2ZvbyAmJgogCWdpdCB1cGRhdGUtcmVmICRwcmVmaXgvZm9vICRDICYmCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRRJHByZWZpeC9zeW1yZWYkUTogaXMgYXQgJEMgYnV0IGV4cGVjdGVkICRECisJZmF0YWw6IGNhbm5vdCBsb2NrIHJlZiAkU1EkcHJlZml4L3N5bXJlZiRTUTogaXMgYXQgJEMgYnV0IGV4cGVjdGVkICRECiAJRU9GCiAJcHJpbnRmICIlc1xuIiAidXBkYXRlICRwcmVmaXgvc3ltcmVmICRFICREIiB8CiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHVwZGF0ZS1yZWYgLS1zdGRpbiAyPm91dHB1dC5lcnIgJiYKQEAgLTQwMiw3ICs0MDAsNyBAQAogCWdpdCBzeW1ib2xpYy1yZWYgJHByZWZpeC9zeW1yZWYgJHByZWZpeC9mb28gJiYKIAlnaXQgdXBkYXRlLXJlZiAkcHJlZml4L2ZvbyAkQyAmJgogCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCi0JZmF0YWw6IGNhbm5vdCBsb2NrIHJlZiAkUSRwcmVmaXgvc3ltcmVmJFE6IHJlZmVyZW5jZSBhbHJlYWR5IGV4aXN0cworCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFNRJHByZWZpeC9zeW1yZWYkU1E6IHJlZmVyZW5jZSBhbHJlYWR5IGV4aXN0cwogCUVPRgogCXByaW50ZiAiJXNcbiIgImNyZWF0ZSAkcHJlZml4L3N5bXJlZiAkRSIgfAogCXRlc3RfbXVzdF9mYWlsIGdpdCB1cGRhdGUtcmVmIC0tc3RkaW4gMj5vdXRwdXQuZXJyICYmCkBAIC00MTQsNyArNDEyLDcgQEAKIAlnaXQgc3ltYm9saWMtcmVmICRwcmVmaXgvc3ltcmVmICRwcmVmaXgvZm9vICYmCiAJZ2l0IHVwZGF0ZS1yZWYgJHByZWZpeC9mb28gJEMgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFEkcHJlZml4L3N5bXJlZiRROiBpcyBhdCAkQyBidXQgZXhwZWN0ZWQgJEQKKwlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRTUSRwcmVmaXgvc3ltcmVmJFNROiBpcyBhdCAkQyBidXQgZXhwZWN0ZWQgJEQKIAlFT0YKIAlwcmludGYgIiVzXG4iICJkZWxldGUgJHByZWZpeC9zeW1yZWYgJEQiIHwKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBkYXRlLXJlZiAtLXN0ZGluIDI+b3V0cHV0LmVyciAmJgpAQCAtNDI1LDcgKzQyMyw3IEBACiAJcHJlZml4PXJlZnMvbWlzc2luZy1ub2RlcmVmLXVwZGF0ZSAmJgogCWdpdCBzeW1ib2xpYy1yZWYgJHByZWZpeC9zeW1yZWYgJHByZWZpeC9mb28gJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFEkcHJlZml4L3N5bXJlZiRROiByZWZlcmVuY2UgaXMgbWlzc2luZyBidXQgZXhwZWN0ZWQgJEQKKwlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRTUSRwcmVmaXgvc3ltcmVmJFNROiByZWZlcmVuY2UgaXMgbWlzc2luZyBidXQgZXhwZWN0ZWQgJEQKIAlFT0YKIAlwcmludGYgIiVzXG4iICJvcHRpb24gbm8tZGVyZWYiICJ1cGRhdGUgJHByZWZpeC9zeW1yZWYgJEUgJEQiIHwKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBkYXRlLXJlZiAtLXN0ZGluIDI+b3V0cHV0LmVyciAmJgpAQCAtNDM3LDcgKzQzNSw3IEBACiAJZ2l0IHN5bWJvbGljLXJlZiAkcHJlZml4L3N5bXJlZiAkcHJlZml4L2ZvbyAmJgogCWdpdCB1cGRhdGUtcmVmICRwcmVmaXgvZm9vICRDICYmCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRRJHByZWZpeC9zeW1yZWYkUTogaXMgYXQgJEMgYnV0IGV4cGVjdGVkICRECisJZmF0YWw6IGNhbm5vdCBsb2NrIHJlZiAkU1EkcHJlZml4L3N5bXJlZiRTUTogaXMgYXQgJEMgYnV0IGV4cGVjdGVkICRECiAJRU9GCiAJcHJpbnRmICIlc1xuIiAib3B0aW9uIG5vLWRlcmVmIiAidXBkYXRlICRwcmVmaXgvc3ltcmVmICRFICREIiB8CiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHVwZGF0ZS1yZWYgLS1zdGRpbiAyPm91dHB1dC5lcnIgJiYKQEAgLTQ0OSw3ICs0NDcsNyBAQAogCWdpdCBzeW1ib2xpYy1yZWYgJHByZWZpeC9zeW1yZWYgJHByZWZpeC9mb28gJiYKIAlnaXQgdXBkYXRlLXJlZiAkcHJlZml4L2ZvbyAkQyAmJgogCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCi0JZmF0YWw6IGNhbm5vdCBsb2NrIHJlZiAkUSRwcmVmaXgvc3ltcmVmJFE6IHJlZmVyZW5jZSBhbHJlYWR5IGV4aXN0cworCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFNRJHByZWZpeC9zeW1yZWYkU1E6IHJlZmVyZW5jZSBhbHJlYWR5IGV4aXN0cwogCUVPRgogCXByaW50ZiAiJXNcbiIgIm9wdGlvbiBuby1kZXJlZiIgImNyZWF0ZSAkcHJlZml4L3N5bXJlZiAkRSIgfAogCXRlc3RfbXVzdF9mYWlsIGdpdCB1cGRhdGUtcmVmIC0tc3RkaW4gMj5vdXRwdXQuZXJyICYmCkBAIC00NjEsNyArNDU5LDcgQEAKIAlnaXQgc3ltYm9saWMtcmVmICRwcmVmaXgvc3ltcmVmICRwcmVmaXgvZm9vICYmCiAJZ2l0IHVwZGF0ZS1yZWYgJHByZWZpeC9mb28gJEMgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFEkcHJlZml4L3N5bXJlZiRROiBpcyBhdCAkQyBidXQgZXhwZWN0ZWQgJEQKKwlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRTUSRwcmVmaXgvc3ltcmVmJFNROiBpcyBhdCAkQyBidXQgZXhwZWN0ZWQgJEQKIAlFT0YKIAlwcmludGYgIiVzXG4iICJvcHRpb24gbm8tZGVyZWYiICJkZWxldGUgJHByZWZpeC9zeW1yZWYgJEQiIHwKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBkYXRlLXJlZiAtLXN0ZGluIDI+b3V0cHV0LmVyciAmJgpAQCAtNDc0LDEzICs0NzIsMTMgQEAKIAk6ID4uZ2l0LyRwcmVmaXgvZm9vL2Jhci9iYXoubG9jayAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgLmdpdC8kcHJlZml4L2Zvby9iYXIvYmF6LmxvY2siICYmCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRRJHByZWZpeC9mb28kUTogdGhlcmUgaXMgYSBub24tZW1wdHkgZGlyZWN0b3J5ICRRLmdpdC8kcHJlZml4L2ZvbyRRIGJsb2NraW5nIHJlZmVyZW5jZSAkUSRwcmVmaXgvZm9vJFEKKwlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRTUSRwcmVmaXgvZm9vJFNROiB0aGVyZSBpcyBhIG5vbi1lbXB0eSBkaXJlY3RvcnkgJFNRLmdpdC8kcHJlZml4L2ZvbyRTUSBibG9ja2luZyByZWZlcmVuY2UgJFNRJHByZWZpeC9mb28kU1EKIAlFT0YKIAlwcmludGYgIiVzXG4iICJ1cGRhdGUgJHByZWZpeC9mb28gJEMiIHwKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBkYXRlLXJlZiAtLXN0ZGluIDI+b3V0cHV0LmVyciAmJgogCXRlc3RfY21wIGV4cGVjdGVkIG91dHB1dC5lcnIgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFEkcHJlZml4L2ZvbyRROiB1bmFibGUgdG8gcmVzb2x2ZSByZWZlcmVuY2UgJFEkcHJlZml4L2ZvbyRRCisJZmF0YWw6IGNhbm5vdCBsb2NrIHJlZiAkU1EkcHJlZml4L2ZvbyRTUTogdW5hYmxlIHRvIHJlc29sdmUgcmVmZXJlbmNlICRTUSRwcmVmaXgvZm9vJFNRCiAJRU9GCiAJcHJpbnRmICIlc1xuIiAidXBkYXRlICRwcmVmaXgvZm9vICREICRDIiB8CiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHVwZGF0ZS1yZWYgLS1zdGRpbiAyPm91dHB1dC5lcnIgJiYKQEAgLTQ5MywxMyArNDkxLDEzIEBACiAJZWNobyAiZ29iYmxlZGlnb29rIiA+LmdpdC8kcHJlZml4L2ZvbyAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgLmdpdC8kcHJlZml4L2ZvbyIgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFEkcHJlZml4L2ZvbyRROiB1bmFibGUgdG8gcmVzb2x2ZSByZWZlcmVuY2UgJFEkcHJlZml4L2ZvbyRROiByZWZlcmVuY2UgYnJva2VuCisJZmF0YWw6IGNhbm5vdCBsb2NrIHJlZiAkU1EkcHJlZml4L2ZvbyRTUTogdW5hYmxlIHRvIHJlc29sdmUgcmVmZXJlbmNlICRTUSRwcmVmaXgvZm9vJFNROiByZWZlcmVuY2UgYnJva2VuCiAJRU9GCiAJcHJpbnRmICIlc1xuIiAidXBkYXRlICRwcmVmaXgvZm9vICRDIiB8CiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHVwZGF0ZS1yZWYgLS1zdGRpbiAyPm91dHB1dC5lcnIgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZCBvdXRwdXQuZXJyICYmCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRRJHByZWZpeC9mb28kUTogdW5hYmxlIHRvIHJlc29sdmUgcmVmZXJlbmNlICRRJHByZWZpeC9mb28kUTogcmVmZXJlbmNlIGJyb2tlbgorCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFNRJHByZWZpeC9mb28kU1E6IHVuYWJsZSB0byByZXNvbHZlIHJlZmVyZW5jZSAkU1EkcHJlZml4L2ZvbyRTUTogcmVmZXJlbmNlIGJyb2tlbgogCUVPRgogCXByaW50ZiAiJXNcbiIgInVwZGF0ZSAkcHJlZml4L2ZvbyAkRCAkQyIgfAogCXRlc3RfbXVzdF9mYWlsIGdpdCB1cGRhdGUtcmVmIC0tc3RkaW4gMj5vdXRwdXQuZXJyICYmCkBAIC01MTMsMTMgKzUxMSwxMyBAQAogCTogPi5naXQvJHByZWZpeC9mb28vYmFyL2Jhei5sb2NrICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiAuZ2l0LyRwcmVmaXgvZm9vL2Jhci9iYXoubG9jayIgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFEkcHJlZml4L3N5bXJlZiRROiB0aGVyZSBpcyBhIG5vbi1lbXB0eSBkaXJlY3RvcnkgJFEuZ2l0LyRwcmVmaXgvZm9vJFEgYmxvY2tpbmcgcmVmZXJlbmNlICRRJHByZWZpeC9mb28kUQorCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFNRJHByZWZpeC9zeW1yZWYkU1E6IHRoZXJlIGlzIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSAkU1EuZ2l0LyRwcmVmaXgvZm9vJFNRIGJsb2NraW5nIHJlZmVyZW5jZSAkU1EkcHJlZml4L2ZvbyRTUQogCUVPRgogCXByaW50ZiAiJXNcbiIgInVwZGF0ZSAkcHJlZml4L3N5bXJlZiAkQyIgfAogCXRlc3RfbXVzdF9mYWlsIGdpdCB1cGRhdGUtcmVmIC0tc3RkaW4gMj5vdXRwdXQuZXJyICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgb3V0cHV0LmVyciAmJgogCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCi0JZmF0YWw6IGNhbm5vdCBsb2NrIHJlZiAkUSRwcmVmaXgvc3ltcmVmJFE6IHVuYWJsZSB0byByZXNvbHZlIHJlZmVyZW5jZSAkUSRwcmVmaXgvZm9vJFEKKwlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRTUSRwcmVmaXgvc3ltcmVmJFNROiB1bmFibGUgdG8gcmVzb2x2ZSByZWZlcmVuY2UgJFNRJHByZWZpeC9mb28kU1EKIAlFT0YKIAlwcmludGYgIiVzXG4iICJ1cGRhdGUgJHByZWZpeC9zeW1yZWYgJEQgJEMiIHwKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBkYXRlLXJlZiAtLXN0ZGluIDI+b3V0cHV0LmVyciAmJgpAQCAtNTMyLDEzICs1MzAsMTMgQEAKIAllY2hvICJnb2JibGVkaWdvb2siID4uZ2l0LyRwcmVmaXgvZm9vICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiAuZ2l0LyRwcmVmaXgvZm9vIiAmJgogCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCi0JZmF0YWw6IGNhbm5vdCBsb2NrIHJlZiAkUSRwcmVmaXgvc3ltcmVmJFE6IHVuYWJsZSB0byByZXNvbHZlIHJlZmVyZW5jZSAkUSRwcmVmaXgvZm9vJFE6IHJlZmVyZW5jZSBicm9rZW4KKwlmYXRhbDogY2Fubm90IGxvY2sgcmVmICRTUSRwcmVmaXgvc3ltcmVmJFNROiB1bmFibGUgdG8gcmVzb2x2ZSByZWZlcmVuY2UgJFNRJHByZWZpeC9mb28kU1E6IHJlZmVyZW5jZSBicm9rZW4KIAlFT0YKIAlwcmludGYgIiVzXG4iICJ1cGRhdGUgJHByZWZpeC9zeW1yZWYgJEMiIHwKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBkYXRlLXJlZiAtLXN0ZGluIDI+b3V0cHV0LmVyciAmJgogCXRlc3RfY21wIGV4cGVjdGVkIG91dHB1dC5lcnIgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCWZhdGFsOiBjYW5ub3QgbG9jayByZWYgJFEkcHJlZml4L3N5bXJlZiRROiB1bmFibGUgdG8gcmVzb2x2ZSByZWZlcmVuY2UgJFEkcHJlZml4L2ZvbyRROiByZWZlcmVuY2UgYnJva2VuCisJZmF0YWw6IGNhbm5vdCBsb2NrIHJlZiAkU1EkcHJlZml4L3N5bXJlZiRTUTogdW5hYmxlIHRvIHJlc29sdmUgcmVmZXJlbmNlICRTUSRwcmVmaXgvZm9vJFNROiByZWZlcmVuY2UgYnJva2VuCiAJRU9GCiAJcHJpbnRmICIlc1xuIiAidXBkYXRlICRwcmVmaXgvc3ltcmVmICREICRDIiB8CiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHVwZGF0ZS1yZWYgLS1zdGRpbiAyPm91dHB1dC5lcnIgJiYKQEAgLTYxNCw3ICs2MTIsMjMgQEAKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIC5naXQvcGFja2VkLXJlZnMubG9jayIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBkYXRlLXJlZiAtZCAkcHJlZml4L2ZvbyA+b3V0IDI+ZXJyICYmCiAJZ2l0IGZvci1lYWNoLXJlZiAkcHJlZml4ID5hY3R1YWwgJiYKLQl0ZXN0X2kxOG5ncmVwICJVbmFibGUgdG8gY3JlYXRlICRRLipwYWNrZWQtcmVmcy5sb2NrJFE6IEZpbGUgZXhpc3RzIiBlcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJVbmFibGUgdG8gY3JlYXRlICRTUS4qcGFja2VkLXJlZnMubG9jayRTUTogIiBlcnIgJiYKKwl0ZXN0X2NtcCB1bmNoYW5nZWQgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RlbGV0ZSBmYWlscyBjbGVhbmx5IGlmIHBhY2tlZC1yZWZzLm5ldyB3cml0ZSBmYWlscycgJworCSMgU2V0dXAgYW5kIGV4cGVjdGF0aW9ucyBhcmUgc2ltaWxhciB0byB0aGUgdGVzdCBhYm92ZS4KKwlwcmVmaXg9cmVmcy9mYWlsZWQtcGFja2VkLXJlZnMgJiYKKwlnaXQgdXBkYXRlLXJlZiAkcHJlZml4L2ZvbyAkQyAmJgorCWdpdCBwYWNrLXJlZnMgLS1hbGwgJiYKKwlnaXQgdXBkYXRlLXJlZiAkcHJlZml4L2ZvbyAkRCAmJgorCWdpdCBmb3ItZWFjaC1yZWYgJHByZWZpeCA+dW5jaGFuZ2VkICYmCisJIyBUaGlzIHNob3VsZCBub3QgaGFwcGVuIGluIHByYWN0aWNlLCBidXQgaXQgaXMgYW4gZWFzeSB3YXkgdG8gZ2V0IGEKKwkjIHJlbGlhYmxlIGVycm9yICh3ZSBvcGVuIHdpdGggY3JlYXRlX3RlbXBmaWxlKCksIHdoaWNoIHVzZXMgT19FWENMKS4KKwk6ID4uZ2l0L3BhY2tlZC1yZWZzLm5ldyAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgLmdpdC9wYWNrZWQtcmVmcy5uZXciICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHVwZGF0ZS1yZWYgLWQgJHByZWZpeC9mb28gJiYKKwlnaXQgZm9yLWVhY2gtcmVmICRwcmVmaXggPmFjdHVhbCAmJgogCXRlc3RfY21wIHVuY2hhbmdlZCBhY3R1YWwKICcKIApkaWZmIC0tZ2l0IGEvdC90MTQwNi1zdWJtb2R1bGUtcmVmLXN0b3JlLnNoIGIvdC90MTQwNi1zdWJtb2R1bGUtcmVmLXN0b3JlLnNoCmluZGV4IGQxOTlkODcuLjM2YjdlZjUgMTAwNzU1Ci0tLSBhL3QvdDE0MDYtc3VibW9kdWxlLXJlZi1zdG9yZS5zaAorKysgYi90L3QxNDA2LXN1Ym1vZHVsZS1yZWYtc3RvcmUuc2gKQEAgLTc1LDcgKzc1LDcgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9yX2VhY2hfcmVmbG9nX2VudCgpJyAnCi0JJFJVTiBmb3ItZWFjaC1yZWZsb2ctZW50IEhFQUQgPmFjdHVhbCAmJiBjYXQgYWN0dWFsICYmCisJJFJVTiBmb3ItZWFjaC1yZWZsb2ctZW50IEhFQUQgPmFjdHVhbCAmJgogCWhlYWQgLW4xIGFjdHVhbCB8IGdyZXAgZmlyc3QgJiYKIAl0YWlsIC1uMiBhY3R1YWwgfCBoZWFkIC1uMSB8IGdyZXAgbWFzdGVyLnRvLm5ldwogJwpkaWZmIC0tZ2l0IGEvdC90MTQwOS1hdm9pZC1wYWNraW5nLXJlZnMuc2ggYi90L3QxNDA5LWF2b2lkLXBhY2tpbmctcmVmcy5zaAppbmRleCBlNWNiOGEyLi5iZTEyZmI2IDEwMDc1NQotLS0gYS90L3QxNDA5LWF2b2lkLXBhY2tpbmctcmVmcy5zaAorKysgYi90L3QxNDA5LWF2b2lkLXBhY2tpbmctcmVmcy5zaApAQCAtOCw3ICs4LDcgQEAKICMgc2hvdWxkbid0IHVwc2V0IHJlYWRlcnMsIGFuZCBpdCBzaG91bGQgYmUgb21pdHRlZCBpZiB0aGUgZmlsZSBpcwogIyBldmVyIHJld3JpdHRlbi4KIG1hcmtfcGFja2VkX3JlZnMgKCkgewotCXNlZCAtZSAicy9eXCgjLipcKS9cMSB0MTQwOSAvIiA8LmdpdC9wYWNrZWQtcmVmcyA+LmdpdC9wYWNrZWQtcmVmcy5uZXcgJiYKKwlzZWQgLWUgInMvXlwoIy4qXCkvXDEgdDE0MDkgLyIgLmdpdC9wYWNrZWQtcmVmcyA+LmdpdC9wYWNrZWQtcmVmcy5uZXcgJiYKIAltdiAuZ2l0L3BhY2tlZC1yZWZzLm5ldyAuZ2l0L3BhY2tlZC1yZWZzCiB9CiAKQEAgLTI3LDE1ICsyNywxNSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkbyBub3QgY3JlYXRlIHBhY2tlZC1yZWZzIGZpbGUgZ3JhdHVpdG91c2x5JyAnCi0JdGVzdF9tdXN0X2ZhaWwgdGVzdCAtZiAuZ2l0L3BhY2tlZC1yZWZzICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9wYWNrZWQtcmVmcyAmJgogCWdpdCB1cGRhdGUtcmVmIHJlZnMvaGVhZHMvZm9vICRBICYmCi0JdGVzdF9tdXN0X2ZhaWwgdGVzdCAtZiAuZ2l0L3BhY2tlZC1yZWZzICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9wYWNrZWQtcmVmcyAmJgogCWdpdCB1cGRhdGUtcmVmIHJlZnMvaGVhZHMvZm9vICRCICYmCi0JdGVzdF9tdXN0X2ZhaWwgdGVzdCAtZiAuZ2l0L3BhY2tlZC1yZWZzICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9wYWNrZWQtcmVmcyAmJgogCWdpdCB1cGRhdGUtcmVmIHJlZnMvaGVhZHMvZm9vICRDICRCICYmCi0JdGVzdF9tdXN0X2ZhaWwgdGVzdCAtZiAuZ2l0L3BhY2tlZC1yZWZzICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9wYWNrZWQtcmVmcyAmJgogCWdpdCB1cGRhdGUtcmVmIC1kIHJlZnMvaGVhZHMvZm9vICYmCi0JdGVzdF9tdXN0X2ZhaWwgdGVzdCAtZiAuZ2l0L3BhY2tlZC1yZWZzCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9wYWNrZWQtcmVmcwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjayB0aGF0IG1hcmtpbmcgdGhlIHBhY2tlZC1yZWZzIGZpbGUgd29ya3MnICcKQEAgLTQ2LDcgKzQ2LDcgQEAKIAlnaXQgZm9yLWVhY2gtcmVmID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwgJiYKIAlnaXQgcGFjay1yZWZzIC0tYWxsICYmCi0JdGVzdF9tdXN0X2ZhaWwgY2hlY2tfcGFja2VkX3JlZnNfbWFya2VkICYmCisJISBjaGVja19wYWNrZWRfcmVmc19tYXJrZWQgJiYKIAlnaXQgZm9yLWVhY2gtcmVmID5hY3R1YWwyICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsMgogJwpAQCAtODAsNyArODAsNyBAQAogCWdpdCBwYWNrLXJlZnMgLS1hbGwgJiYKIAltYXJrX3BhY2tlZF9yZWZzICYmCiAJZ2l0IHVwZGF0ZS1yZWYgLWQgcmVmcy9oZWFkcy9wYWNrZWQtZGVsZXRlICYmCi0JdGVzdF9tdXN0X2ZhaWwgY2hlY2tfcGFja2VkX3JlZnNfbWFya2VkCisJISBjaGVja19wYWNrZWRfcmVmc19tYXJrZWQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbGVhdmUgcGFja2VkLXJlZnMgdW50b3VjaGVkIG9uIHVwZGF0ZSBvZiBsb29zZScgJwpkaWZmIC0tZ2l0IGEvdC90MTQxMC1yZWZsb2cuc2ggYi90L3QxNDEwLXJlZmxvZy5zaAppbmRleCAzZTA1MzUzLi43NmQ5Yjc0IDEwMDc1NQotLS0gYS90L3QxNDEwLXJlZmxvZy5zaAorKysgYi90L3QxNDEwLXJlZmxvZy5zaApAQCAtMjAsMjQgKzIwLDIzIEBACiB9CiAKIGNoZWNrX2ZzY2sgKCkgewotCW91dHB1dD0kKGdpdCBmc2NrIC0tZnVsbCkKKwlnaXQgZnNjayAtLWZ1bGwgPmZzY2sub3V0cHV0CiAJY2FzZSAiJDEiIGluCiAJJycpCi0JCXRlc3QgLXogIiRvdXRwdXQiIDs7CisJCXRlc3RfbXVzdF9iZV9lbXB0eSBmc2NrLm91dHB1dCA7OwogCSopCi0JCWVjaG8gIiRvdXRwdXQiIHwgZ3JlcCAiJDEiIDs7CisJCXRlc3RfaTE4bmdyZXAgIiQxIiBmc2NrLm91dHB1dCA7OwogCWVzYWMKIH0KIAogY29ycnVwdCAoKSB7Ci0JYWE9JHsxJT8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/fSB6ej0kezEjPz99Ci0JbXYgLmdpdC9vYmplY3RzLyRhYS8kenogLmdpdC8kYWEkenoKKwltdiAuZ2l0L29iamVjdHMvJCh0ZXN0X29pZF90b19wYXRoICQxKSAuZ2l0LyQxCiB9CiAKIHJlY292ZXIgKCkgewotCWFhPSR7MSU/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/P30geno9JHsxIz8/fQorCWFhPSQoZWNobyAkMSB8IGN1dCAtYyAxLTIpCiAJbWtkaXIgLXAgLmdpdC9vYmplY3RzLyRhYQotCW12IC5naXQvJGFhJHp6IC5naXQvb2JqZWN0cy8kYWEvJHp6CisJbXYgLmdpdC8kMSAuZ2l0L29iamVjdHMvJCh0ZXN0X29pZF90b19wYXRoICQxKQogfQogCiBjaGVja19kb250X2hhdmUgKCkgewpAQCAtNTUsNiArNTQsNyBAQAogfQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIHNldHVwICcKKwl0ZXN0X29pZF9pbml0ICYmCiAJbWtkaXIgLXAgQS9CICYmCiAJZWNobyByYXQgPkMgJiYKIAllY2hvIG94ID5BL0QgJiYKQEAgLTE5NSw3ICsxOTUsNyBAQAogCiAJZ2l0IHJlZmxvZyBkZWxldGUgbWFzdGVyQHsxfSAmJgogCWdpdCByZWZsb2cgc2hvdyBtYXN0ZXIgPiBvdXRwdXQgJiYKLQl0ZXN0ICQoKCRtYXN0ZXJfZW50cnlfY291bnQgLSAxKSkgPSAkKHdjIC1sIDwgb3V0cHV0KSAmJgorCXRlc3RfbGluZV9jb3VudCA9ICQoKCRtYXN0ZXJfZW50cnlfY291bnQgLSAxKSkgb3V0cHV0ICYmCiAJdGVzdCAkSEVBRF9lbnRyeV9jb3VudCA9ICQoZ2l0IHJlZmxvZyB8IHdjIC1sKSAmJgogCSEgZ3JlcCBveCA8IG91dHB1dCAmJgogCkBAIC0yMDksNyArMjA5LDcgQEAKIAogCWdpdCByZWZsb2cgZGVsZXRlIG1hc3RlckB7MDcuMDQuMjAwNS4xNToxNTowMC4tMDcwMH0gJiYKIAlnaXQgcmVmbG9nIHNob3cgbWFzdGVyID4gb3V0cHV0ICYmCi0JdGVzdCAkKCgkbWFzdGVyX2VudHJ5X2NvdW50IC0gMSkpID0gJCh3YyAtbCA8IG91dHB1dCkgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAkKCgkbWFzdGVyX2VudHJ5X2NvdW50IC0gMSkpIG91dHB1dCAmJgogCSEgZ3JlcCBkcmFnb24gPCBvdXRwdXQKIAogJwpAQCAtMjMyLDI1ICsyMzIsMzQgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2MucmVmbG9nZXhwaXJlPW5ldmVyJyAnCisJdGVzdF9jb25maWcgZ2MucmVmbG9nZXhwaXJlIG5ldmVyICYmCisJdGVzdF9jb25maWcgZ2MucmVmbG9nZXhwaXJldW5yZWFjaGFibGUgbmV2ZXIgJiYKIAotCWdpdCBjb25maWcgZ2MucmVmbG9nZXhwaXJlIG5ldmVyICYmCi0JZ2l0IGNvbmZpZyBnYy5yZWZsb2dleHBpcmV1bnJlYWNoYWJsZSBuZXZlciAmJgotCWdpdCByZWZsb2cgZXhwaXJlIC0tdmVyYm9zZSAtLWFsbCAmJgorCWdpdCByZWZsb2cgZXhwaXJlIC0tdmVyYm9zZSAtLWFsbCA+b3V0cHV0ICYmCisJdGVzdF9saW5lX2NvdW50ID0gOSBvdXRwdXQgJiYKKwogCWdpdCByZWZsb2cgcmVmcy9oZWFkcy9tYXN0ZXIgPm91dHB1dCAmJgogCXRlc3RfbGluZV9jb3VudCA9IDQgb3V0cHV0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2djLnJlZmxvZ2V4cGlyZT1mYWxzZScgJworCXRlc3RfY29uZmlnIGdjLnJlZmxvZ2V4cGlyZSBmYWxzZSAmJgorCXRlc3RfY29uZmlnIGdjLnJlZmxvZ2V4cGlyZXVucmVhY2hhYmxlIGZhbHNlICYmCiAKLQlnaXQgY29uZmlnIGdjLnJlZmxvZ2V4cGlyZSBmYWxzZSAmJgotCWdpdCBjb25maWcgZ2MucmVmbG9nZXhwaXJldW5yZWFjaGFibGUgZmFsc2UgJiYKIAlnaXQgcmVmbG9nIGV4cGlyZSAtLXZlcmJvc2UgLS1hbGwgJiYKIAlnaXQgcmVmbG9nIHJlZnMvaGVhZHMvbWFzdGVyID5vdXRwdXQgJiYKLQl0ZXN0X2xpbmVfY291bnQgPSA0IG91dHB1dCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDQgb3V0cHV0CiAKLQlnaXQgY29uZmlnIC0tdW5zZXQgZ2MucmVmbG9nZXhwaXJlICYmCi0JZ2l0IGNvbmZpZyAtLXVuc2V0IGdjLnJlZmxvZ2V4cGlyZXVucmVhY2hhYmxlCisnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCByZWZsb2cgZXhwaXJlIHVua25vd24gcmVmZXJlbmNlJyAnCisJdGVzdF9jb25maWcgZ2MucmVmbG9nZXhwaXJlIG5ldmVyICYmCisJdGVzdF9jb25maWcgZ2MucmVmbG9nZXhwaXJldW5yZWFjaGFibGUgbmV2ZXIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCByZWZsb2cgZXhwaXJlIG1hc3RlckB7MTIzfSAyPnN0ZGVyciAmJgorCXRlc3RfaTE4bmdyZXAgInBvaW50cyBub3doZXJlIiBzdGRlcnIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmVmbG9nIGV4cGlyZSBkb2VzLW5vdC1leGlzdCAyPnN0ZGVyciAmJgorCXRlc3RfaTE4bmdyZXAgInBvaW50cyBub3doZXJlIiBzdGRlcnIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2tvdXQgc2hvdWxkIG5vdCBkZWxldGUgbG9nIGZvciBwYWNrZWQgcmVmJyAnCkBAIC0zMDQsMTIgKzMxMywxMiBAQAogIyBFYWNoIGxpbmUgaXMgMTE0IGNoYXJhY3RlcnMsIHNvIHdlIG5lZWQgNzUgdG8gc3RpbGwgaGF2ZSBhIGZldyBiZWZvcmUgdGhlCiAjIGxhc3QgOEsuIFRoZSA4OS1jaGFyYWN0ZXIgcGFkZGluZyBvbiB0aGUgZmluYWwgZW50cnkgbGluZXMgdXAgb3VyCiAjIG5ld2xpbmUgZXhhY3RseS4KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BhcnNpbmcgcmV2ZXJzZSByZWZsb2dzIGF0IEJVRlNJWiBib3VuZGFyaWVzJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzIFNIQTEgJ3BhcnNpbmcgcmV2ZXJzZSByZWZsb2dzIGF0IEJVRlNJWiBib3VuZGFyaWVzJyAnCiAJZ2l0IGNoZWNrb3V0IC1iIHJlZmxvZ3NraXAgJiYKLQl6Mzg9MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgJiYKKwl6Zj0kKHRlc3Rfb2lkIHplcm9fMikgJiYKIAlpZGVudD0iYWJjIDx4eXo+IDAwMDAwMDAwMDEgKzAwMDAiICYmCiAJZm9yIGkgaW4gJCh0ZXN0X3NlcSAxIDc1KTsgZG8KLQkJcHJpbnRmICIkejM4JTAyZCAkejM4JTAyZCAlc1x0IiAkaSAkKCgkaSsxKSkgIiRpZGVudCIgJiYKKwkJcHJpbnRmICIkemYlMDJkICR6ZiUwMmQgJXNcdCIgJGkgJCgoJGkrMSkpICIkaWRlbnQiICYmCiAJCWlmIHRlc3QgJGkgPSA3NTsgdGhlbgogCQkJZm9yIGogaW4gJCh0ZXN0X3NlcSAxIDg5KTsgZG8KIAkJCQlwcmludGYgWApAQCAtMzIwLDcgKzMyOSw3IEBACiAJCXByaW50ZiAiXG4iCiAJZG9uZSA+LmdpdC9sb2dzL3JlZnMvaGVhZHMvcmVmbG9nc2tpcCAmJgogCWdpdCByZXYtcGFyc2UgcmVmbG9nc2tpcEB7NzN9ID5hY3R1YWwgJiYKLQllY2hvICR7ejM4fTAzID5leHBlY3QgJiYKKwllY2hvICR7emZ9MDMgPmV4cGVjdCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIApkaWZmIC0tZ2l0IGEvdC90MTQxNC1yZWZsb2ctd2Fsay5zaCBiL3QvdDE0MTQtcmVmbG9nLXdhbGsuc2gKaW5kZXggZmViMWVmZC4uMTE4MWE5ZiAxMDA3NTUKLS0tIGEvdC90MTQxNC1yZWZsb2ctd2Fsay5zaAorKysgYi90L3QxNDE0LXJlZmxvZy13YWxrLnNoCkBAIC0xOCwxMCArMTgsOSBAQAogCWdpdCBsb2cgLWcgLS1mb3JtYXQ9IiVnZCAlZ3MiICIkQCIKIH0KIAotc3E9IiciCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXQgdXAgZXhwZWN0ZWQgcmVmbG9nJyAnCiAJY2F0ID5leHBlY3QuYWxsIDw8LUVPRgotCUhFQURAezB9IGNvbW1pdCAobWVyZ2UpOiBNZXJnZSBicmFuY2ggJHtzcX1tYXN0ZXIke3NxfSBpbnRvIHNpZGUKKwlIRUFEQHswfSBjb21taXQgKG1lcmdlKTogTWVyZ2UgYnJhbmNoICR7U1F9bWFzdGVyJHtTUX0gaW50byBzaWRlCiAJSEVBREB7MX0gY29tbWl0OiB0aHJlZQogCUhFQURAezJ9IGNoZWNrb3V0OiBtb3ZpbmcgZnJvbSBtYXN0ZXIgdG8gc2lkZQogCUhFQURAezN9IGNvbW1pdDogdHdvCmRpZmYgLS1naXQgYS90L3QxNDE1LXdvcmt0cmVlLXJlZnMuc2ggYi90L3QxNDE1LXdvcmt0cmVlLXJlZnMuc2gKaW5kZXggYjY2NGU1MS4uYmIyYzc1NyAxMDA3NTUKLS0tIGEvdC90MTQxNS13b3JrdHJlZS1yZWZzLnNoCisrKyBiL3QvdDE0MTUtd29ya3RyZWUtcmVmcy5zaApAQCAtNzYsNCArNzYsMzkgQEAKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwud3QyCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvci1lYWNoLXJlZiBmcm9tIG1haW4gcmVwbycgJworCW1rZGlyIGZlcjEgJiYKKwlnaXQgLUMgZmVyMSBpbml0IHJlcG8gJiYKKwl0ZXN0X2NvbW1pdCAtQyBmZXIxL3JlcG8gaW5pdGlhbCAmJgorCWdpdCAtQyBmZXIxL3JlcG8gd29ya3RyZWUgYWRkIC4uL3NlY29uZCAmJgorCWdpdCAtQyBmZXIxL3JlcG8gdXBkYXRlLXJlZiByZWZzL2Jpc2VjdC9tYWluIEhFQUQgJiYKKwlnaXQgLUMgZmVyMS9yZXBvIHVwZGF0ZS1yZWYgcmVmcy9yZXdyaXR0ZW4vbWFpbiBIRUFEICYmCisJZ2l0IC1DIGZlcjEvcmVwbyB1cGRhdGUtcmVmIHJlZnMvd29ya3RyZWUvbWFpbiBIRUFEICYmCisJZ2l0IC1DIGZlcjEvcmVwbyBmb3ItZWFjaC1yZWYgLS1mb3JtYXQ9IiUocmVmbmFtZSkiIHwgZ3JlcCBtYWluID5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdGVkIDw8LVxFT0YgJiYKKwlyZWZzL2Jpc2VjdC9tYWluCisJcmVmcy9yZXdyaXR0ZW4vbWFpbgorCXJlZnMvd29ya3RyZWUvbWFpbgorCUVPRgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3ItZWFjaC1yZWYgZnJvbSBsaW5rZWQgcmVwbycgJworCW1rZGlyIGZlcjIgJiYKKwlnaXQgLUMgZmVyMiBpbml0IHJlcG8gJiYKKwl0ZXN0X2NvbW1pdCAtQyBmZXIyL3JlcG8gaW5pdGlhbCAmJgorCWdpdCAtQyBmZXIyL3JlcG8gd29ya3RyZWUgYWRkIC4uL3NlY29uZCAmJgorCWdpdCAtQyBmZXIyL3NlY29uZCB1cGRhdGUtcmVmIHJlZnMvYmlzZWN0L3NlY29uZCBIRUFEICYmCisJZ2l0IC1DIGZlcjIvc2Vjb25kIHVwZGF0ZS1yZWYgcmVmcy9yZXdyaXR0ZW4vc2Vjb25kIEhFQUQgJiYKKwlnaXQgLUMgZmVyMi9zZWNvbmQgdXBkYXRlLXJlZiByZWZzL3dvcmt0cmVlL3NlY29uZCBIRUFEICYmCisJZ2l0IC1DIGZlcjIvc2Vjb25kIGZvci1lYWNoLXJlZiAtLWZvcm1hdD0iJShyZWZuYW1lKSIgfCBncmVwIHNlY29uZCA+YWN0dWFsICYmCisJY2F0ID5leHBlY3RlZCA8PC1cRU9GICYmCisJcmVmcy9iaXNlY3Qvc2Vjb25kCisJcmVmcy9oZWFkcy9zZWNvbmQKKwlyZWZzL3Jld3JpdHRlbi9zZWNvbmQKKwlyZWZzL3dvcmt0cmVlL3NlY29uZAorCUVPRgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDE0NTAtZnNjay5zaCBiL3QvdDE0NTAtZnNjay5zaAppbmRleCBjNzY3ZTI3Li5kMDllZmY1IDEwMDc1NQotLS0gYS90L3QxNDUwLWZzY2suc2gKKysrIGIvdC90MTQ1MC1mc2NrLnNoCkBAIC05LDYgKzksNyBAQAogLiAuL3Rlc3QtbGliLnNoCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3Mgc2V0dXAgJworCXRlc3Rfb2lkX2luaXQgJiYKIAlnaXQgY29uZmlnIGdjLmF1dG8gMCAmJgogCWdpdCBjb25maWcgaTE4bi5jb21taXRlbmNvZGluZyBJU08tODg1OS0xICYmCiAJdGVzdF9jb21taXQgQSBmaWxlQSBvbmUgJiYKQEAgLTU0LDggKzU1LDggQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnb2JqZWN0IHdpdGggYmFkIHNoYTEnICcKIAlzaGE9JChlY2hvIGJsb2IgfCBnaXQgaGFzaC1vYmplY3QgLXcgLS1zdGRpbikgJiYKLQlvbGQ9JChlY2hvICRzaGEgfCBzZWQgInMrXi4uKyYvKyIpICYmCi0JbmV3PSQoZGlybmFtZSAkb2xkKS9mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiAmJgorCW9sZD0kKHRlc3Rfb2lkX3RvX3BhdGggIiRzaGEiKSAmJgorCW5ldz0kKGRpcm5hbWUgJG9sZCkvJCh0ZXN0X29pZCBmZl8yKSAmJgogCXNoYT0iJChkaXJuYW1lICRuZXcpJChiYXNlbmFtZSAkbmV3KSIgJiYKIAltdiAuZ2l0L29iamVjdHMvJG9sZCAuZ2l0L29iamVjdHMvJG5ldyAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAicmVtb3ZlX29iamVjdCAkc2hhIiAmJgpAQCAtNjksMjYgKzcwLDIzIEBACiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgdXBkYXRlLXJlZiAtZCByZWZzL2hlYWRzL2JvZ3VzIiAmJgogCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZzY2sgMj5vdXQgJiYKLQljYXQgb3V0ICYmCi0JZ3JlcCAiJHNoYS4qY29ycnVwdCIgb3V0CisJdGVzdF9pMThuZ3JlcCAiJHNoYS4qY29ycnVwdCIgb3V0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2JyYW5jaCBwb2ludGluZyB0byBub24tY29tbWl0JyAnCiAJZ2l0IHJldi1wYXJzZSBIRUFEXnt0cmVlfSA+LmdpdC9yZWZzL2hlYWRzL2ludmFsaWQgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCB1cGRhdGUtcmVmIC1kIHJlZnMvaGVhZHMvaW52YWxpZCIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgZnNjayAyPm91dCAmJgotCWNhdCBvdXQgJiYKLQlncmVwICJub3QgYSBjb21taXQiIG91dAorCXRlc3RfaTE4bmdyZXAgIm5vdCBhIGNvbW1pdCIgb3V0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0hFQUQgbGluayBwb2ludGluZyBhdCBhIGZ1bm55IG9iamVjdCcgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCAibXYgLmdpdC9TQVZFRF9IRUFEIC5naXQvSEVBRCIgJiYKIAltdiAuZ2l0L0hFQUQgLmdpdC9TQVZFRF9IRUFEICYmCi0JZWNobyAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwID4uZ2l0L0hFQUQgJiYKKwllY2hvICRaRVJPX09JRCA+LmdpdC9IRUFEICYmCiAJIyBhdm9pZCBjb3JydXB0L2Jyb2tlbiBIRUFEIGZyb20gaW50ZXJmZXJpbmcgd2l0aCByZXBvIGRpc2NvdmVyeQogCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfRElSPS5naXQgZ2l0IGZzY2sgMj5vdXQgJiYKLQljYXQgb3V0ICYmCi0JZ3JlcCAiZGV0YWNoZWQgSEVBRCBwb2ludHMiIG91dAorCXRlc3RfaTE4bmdyZXAgImRldGFjaGVkIEhFQUQgcG9pbnRzIiBvdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnSEVBRCBsaW5rIHBvaW50aW5nIGF0IGEgZnVubnkgcGxhY2UnICcKQEAgLTk3LDggKzk1LDcgQEAKIAllY2hvICJyZWY6IHJlZnMvZnVubnkvcGxhY2UiID4uZ2l0L0hFQUQgJiYKIAkjIGF2b2lkIGNvcnJ1cHQvYnJva2VuIEhFQUQgZnJvbSBpbnRlcmZlcmluZyB3aXRoIHJlcG8gZGlzY292ZXJ5CiAJdGVzdF9tdXN0X2ZhaWwgZW52IEdJVF9ESVI9LmdpdCBnaXQgZnNjayAyPm91dCAmJgotCWNhdCBvdXQgJiYKLQlncmVwICJIRUFEIHBvaW50cyB0byBzb21ldGhpbmcgc3RyYW5nZSIgb3V0CisJdGVzdF9pMThuZ3JlcCAiSEVBRCBwb2ludHMgdG8gc29tZXRoaW5nIHN0cmFuZ2UiIG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdIRUFEIGxpbmsgcG9pbnRpbmcgYXQgYSBmdW5ueSBvYmplY3QgKGZyb20gZGlmZmVyZW50IHd0KScgJwpAQCAtMTA5LDcgKzEwNiw3IEBACiAJZWNobyAkWkVST19PSUQgPi5naXQvSEVBRCAmJgogCSMgYXZvaWQgY29ycnVwdC9icm9rZW4gSEVBRCBmcm9tIGludGVyZmVyaW5nIHdpdGggcmVwbyBkaXNjb3ZlcnkKIAl0ZXN0X211c3RfZmFpbCBnaXQgLUMgd3QgZnNjayAyPm91dCAmJgotCWdyZXAgIm1haW4td29ya3RyZWUvSEVBRDogZGV0YWNoZWQgSEVBRCBwb2ludHMiIG91dAorCXRlc3RfaTE4bmdyZXAgIm1haW4td29ya3RyZWUvSEVBRDogZGV0YWNoZWQgSEVBRCBwb2ludHMiIG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdvdGhlciB3b3JrdHJlZSBIRUFEIGxpbmsgcG9pbnRpbmcgYXQgYSBmdW5ueSBvYmplY3QnICcKQEAgLTExNyw3ICsxMTQsNyBAQAogCWdpdCB3b3JrdHJlZSBhZGQgb3RoZXIgJiYKIAllY2hvICRaRVJPX09JRCA+LmdpdC93b3JrdHJlZXMvb3RoZXIvSEVBRCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBmc2NrIDI+b3V0ICYmCi0JZ3JlcCAid29ya3RyZWVzL290aGVyL0hFQUQ6IGRldGFjaGVkIEhFQUQgcG9pbnRzIiBvdXQKKwl0ZXN0X2kxOG5ncmVwICJ3b3JrdHJlZXMvb3RoZXIvSEVBRDogZGV0YWNoZWQgSEVBRCBwb2ludHMiIG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdvdGhlciB3b3JrdHJlZSBIRUFEIGxpbmsgcG9pbnRpbmcgYXQgbWlzc2luZyBvYmplY3QnICcKQEAgLTEyNSw3ICsxMjIsNyBAQAogCWdpdCB3b3JrdHJlZSBhZGQgb3RoZXIgJiYKIAllY2hvICJDb250ZW50cyBtaXNzaW5nIGZyb20gcmVwbyIgfCBnaXQgaGFzaC1vYmplY3QgLS1zdGRpbiA+LmdpdC93b3JrdHJlZXMvb3RoZXIvSEVBRCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBmc2NrIDI+b3V0ICYmCi0JZ3JlcCAid29ya3RyZWVzL290aGVyL0hFQUQ6IGludmFsaWQgc2hhMSBwb2ludGVyIiBvdXQKKwl0ZXN0X2kxOG5ncmVwICJ3b3JrdHJlZXMvb3RoZXIvSEVBRDogaW52YWxpZCBzaGExIHBvaW50ZXIiIG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdvdGhlciB3b3JrdHJlZSBIRUFEIGxpbmsgcG9pbnRpbmcgYXQgYSBmdW5ueSBwbGFjZScgJwpAQCAtMTMzLDcgKzEzMCw3IEBACiAJZ2l0IHdvcmt0cmVlIGFkZCBvdGhlciAmJgogCWVjaG8gInJlZjogcmVmcy9mdW5ueS9wbGFjZSIgPi5naXQvd29ya3RyZWVzL290aGVyL0hFQUQgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgZnNjayAyPm91dCAmJgotCWdyZXAgIndvcmt0cmVlcy9vdGhlci9IRUFEIHBvaW50cyB0byBzb21ldGhpbmcgc3RyYW5nZSIgb3V0CisJdGVzdF9pMThuZ3JlcCAid29ya3RyZWVzL290aGVyL0hFQUQgcG9pbnRzIHRvIHNvbWV0aGluZyBzdHJhbmdlIiBvdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZW1haWwgd2l0aG91dCBAIGlzIG9rYXknICcKQEAgLTE0NCw3ICsxNDEsNiBAQAogCWdpdCB1cGRhdGUtcmVmIHJlZnMvaGVhZHMvYm9ndXMgIiRuZXciICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgdXBkYXRlLXJlZiAtZCByZWZzL2hlYWRzL2JvZ3VzIiAmJgogCWdpdCBmc2NrIDI+b3V0ICYmCi0JY2F0IG91dCAmJgogCSEgZ3JlcCAiY29tbWl0ICRuZXciIG91dAogJwogCkBAIC0xNTYsOCArMTUyLDcgQEAKIAlnaXQgdXBkYXRlLXJlZiByZWZzL2hlYWRzL2JvZ3VzICIkbmV3IiAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHVwZGF0ZS1yZWYgLWQgcmVmcy9oZWFkcy9ib2d1cyIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgZnNjayAyPm91dCAmJgotCWNhdCBvdXQgJiYKLQlncmVwICJlcnJvciBpbiBjb21taXQgJG5ldyIgb3V0CisJdGVzdF9pMThuZ3JlcCAiZXJyb3IgaW4gY29tbWl0ICRuZXciIG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtaXNzaW5nIDwgZW1haWwgZGVsaW1pdGVyIGlzIHJlcG9ydGVkIG5pY2VseScgJwpAQCAtMTY4LDggKzE2Myw3IEBACiAJZ2l0IHVwZGF0ZS1yZWYgcmVmcy9oZWFkcy9ib2d1cyAiJG5ldyIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCB1cGRhdGUtcmVmIC1kIHJlZnMvaGVhZHMvYm9ndXMiICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZzY2sgMj5vdXQgJiYKLQljYXQgb3V0ICYmCi0JZ3JlcCAiZXJyb3IgaW4gY29tbWl0ICRuZXcuKiAtIGJhZCBuYW1lIiBvdXQKKwl0ZXN0X2kxOG5ncmVwICJlcnJvciBpbiBjb21taXQgJG5ldy4qIC0gYmFkIG5hbWUiIG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtaXNzaW5nIGVtYWlsIGlzIHJlcG9ydGVkIG5pY2VseScgJwpAQCAtMTgwLDggKzE3NCw3IEBACiAJZ2l0IHVwZGF0ZS1yZWYgcmVmcy9oZWFkcy9ib2d1cyAiJG5ldyIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCB1cGRhdGUtcmVmIC1kIHJlZnMvaGVhZHMvYm9ndXMiICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZzY2sgMj5vdXQgJiYKLQljYXQgb3V0ICYmCi0JZ3JlcCAiZXJyb3IgaW4gY29tbWl0ICRuZXcuKiAtIG1pc3NpbmcgZW1haWwiIG91dAorCXRlc3RfaTE4bmdyZXAgImVycm9yIGluIGNvbW1pdCAkbmV3LiogLSBtaXNzaW5nIGVtYWlsIiBvdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnPiBpbiBuYW1lIGlzIHJlcG9ydGVkJyAnCkBAIC0xOTIsOCArMTg1LDcgQEAKIAlnaXQgdXBkYXRlLXJlZiByZWZzL2hlYWRzL2JvZ3VzICIkbmV3IiAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHVwZGF0ZS1yZWYgLWQgcmVmcy9oZWFkcy9ib2d1cyIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgZnNjayAyPm91dCAmJgotCWNhdCBvdXQgJiYKLQlncmVwICJlcnJvciBpbiBjb21taXQgJG5ldyIgb3V0CisJdGVzdF9pMThuZ3JlcCAiZXJyb3IgaW4gY29tbWl0ICRuZXciIG91dAogJwogCiAjIGRhdGUgaXMgMl42NCArIDEKQEAgLTIwNiw4ICsxOTgsNyBAQAogCWdpdCB1cGRhdGUtcmVmIHJlZnMvaGVhZHMvYm9ndXMgIiRuZXciICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgdXBkYXRlLXJlZiAtZCByZWZzL2hlYWRzL2JvZ3VzIiAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBmc2NrIDI+b3V0ICYmCi0JY2F0IG91dCAmJgotCWdyZXAgImVycm9yIGluIGNvbW1pdCAkbmV3LippbnRlZ2VyIG92ZXJmbG93IiBvdXQKKwl0ZXN0X2kxOG5ncmVwICJlcnJvciBpbiBjb21taXQgJG5ldy4qaW50ZWdlciBvdmVyZmxvdyIgb3V0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbW1pdCB3aXRoIE5VTCBpbiBoZWFkZXInICcKQEAgLTIxOCw4ICsyMDksNyBAQAogCWdpdCB1cGRhdGUtcmVmIHJlZnMvaGVhZHMvYm9ndXMgIiRuZXciICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgdXBkYXRlLXJlZiAtZCByZWZzL2hlYWRzL2JvZ3VzIiAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBmc2NrIDI+b3V0ICYmCi0JY2F0IG91dCAmJgotCWdyZXAgImVycm9yIGluIGNvbW1pdCAkbmV3Lip1bnRlcm1pbmF0ZWQgaGVhZGVyOiBOVUwgYXQgb2Zmc2V0IiBvdXQKKwl0ZXN0X2kxOG5ncmVwICJlcnJvciBpbiBjb21taXQgJG5ldy4qdW50ZXJtaW5hdGVkIGhlYWRlcjogTlVMIGF0IG9mZnNldCIgb3V0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RyZWUgb2JqZWN0IHdpdGggZHVwbGljYXRlIGVudHJpZXMnICcKQEAgLTI0MCwxNCArMjMwLDIwIEBACiAJCWdpdCBoYXNoLW9iamVjdCAtdyAtdCB0cmVlIC0tc3RkaW4KIAkpICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZzY2sgMj5vdXQgJiYKLQlncmVwICJlcnJvciBpbiB0cmVlIC4qY29udGFpbnMgZHVwbGljYXRlIGZpbGUgZW50cmllcyIgb3V0CisJdGVzdF9pMThuZ3JlcCAiZXJyb3IgaW4gdHJlZSAuKmNvbnRhaW5zIGR1cGxpY2F0ZSBmaWxlIGVudHJpZXMiIG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd1bnBhcnNlYWJsZSB0cmVlIG9iamVjdCcgJworCXRlc3Rfb2lkX2NhY2hlIDw8LVxFT0YgJiYKKwlqdW5rIHNoYTE6dHdlbnR5LWJ5dGVzLW9mLWp1bmsKKwlqdW5rIHNoYTI1Njp0d2VudHktYnl0ZXMtb2YtanVuay10d2VsdmUtbW9yZQorCUVPRgorCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgdXBkYXRlLXJlZiAtZCByZWZzL2hlYWRzL3dyb25nIiAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAicmVtb3ZlX29iamVjdCBcJHRyZWVfc2hhMSIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJlbW92ZV9vYmplY3QgXCRjb21taXRfc2hhMSIgJiYKLQl0cmVlX3NoYTE9JChwcmludGYgIjEwMDY0NCBcMHR3ZW50eS1ieXRlcy1vZi1qdW5rIiB8IGdpdCBoYXNoLW9iamVjdCAtdCB0cmVlIC0tc3RkaW4gLXcgLS1saXRlcmFsbHkpICYmCisJanVuaz0kKHRlc3Rfb2lkIGp1bmspICYmCisJdHJlZV9zaGExPSQocHJpbnRmICIxMDA2NDQgXDAkanVuayIgfCBnaXQgaGFzaC1vYmplY3QgLXQgdHJlZSAtLXN0ZGluIC13IC0tbGl0ZXJhbGx5KSAmJgogCWNvbW1pdF9zaGExPSQoZ2l0IGNvbW1pdC10cmVlICR0cmVlX3NoYTEpICYmCiAJZ2l0IHVwZGF0ZS1yZWYgcmVmcy9oZWFkcy93cm9uZyAkY29tbWl0X3NoYTEgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgZnNjayAyPm91dCAmJgpAQCAtMjU2LDEwICsyNTIsNiBAQAogCXRlc3RfaTE4bmdyZXAgISAiZmF0YWw6IGVtcHR5IGZpbGVuYW1lIGluIHRyZWUgZW50cnkiIG91dAogJwogCi1oZXgyb2N0KCkgewotCXBlcmwgLW5lICdwcmludGYgIlxcJTAzbyIsIGhleCBmb3IgLy4uL2cnCi19Ci0KIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RyZWUgZW50cnkgd2l0aCB0eXBlIG1pc21hdGNoJyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJyZW1vdmVfb2JqZWN0IFwkYmxvYiIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJlbW92ZV9vYmplY3QgXCR0cmVlIiAmJgpAQCAtMjc5LDggKzI3MSw5IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RhZyBwb2ludGluZyB0byBub25leGlzdGVudCcgJwotCWNhdCA+aW52YWxpZC10YWcgPDwtXEVPRiAmJgotCW9iamVjdCBmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmCisJYmFkb2lkPSQodGVzdF9vaWQgZGVhZGJlZWYpICYmCisJY2F0ID5pbnZhbGlkLXRhZyA8PC1FT0YgJiYKKwlvYmplY3QgJGJhZG9pZAogCXR5cGUgY29tbWl0CiAJdGFnIGludmFsaWQKIAl0YWdnZXIgVCBBIEdnZXIgPHRhZ2dlckBleGFtcGxlLmNvbT4gMTIzNDU2Nzg5MCAtMDAwMApAQCAtMjkzLDggKzI4Niw3IEBACiAJZWNobyAkdGFnID4uZ2l0L3JlZnMvdGFncy9pbnZhbGlkICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgdXBkYXRlLXJlZiAtZCByZWZzL3RhZ3MvaW52YWxpZCIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgZnNjayAtLXRhZ3MgPm91dCAmJgotCWNhdCBvdXQgJiYKLQlncmVwICJicm9rZW4gbGluayIgb3V0CisJdGVzdF9pMThuZ3JlcCAiYnJva2VuIGxpbmsiIG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd0YWcgcG9pbnRpbmcgdG8gc29tZXRoaW5nIGVsc2UgdGhhbiBpdHMgdHlwZScgJwpAQCAtMzM2LDcgKzMyOCw3IEBACiAJd2FybmluZyBpbiB0YWcgJHRhZzogYmFkVGFnTmFtZTogaW52YWxpZCAnXCcndGFnJ1wnJyBuYW1lOiB3cm9uZyBuYW1lIGZvcm1hdAogCXdhcm5pbmcgaW4gdGFnICR0YWc6IG1pc3NpbmdUYWdnZXJFbnRyeTogaW52YWxpZCBmb3JtYXQgLSBleHBlY3RlZCAnXCcndGFnZ2VyJ1wnJyBsaW5lCiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0IG91dAorCXRlc3RfaTE4bmNtcCBleHBlY3Qgb3V0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RhZyB3aXRoIGJhZCB0YWdnZXInICcKQEAgLTM1NSw3ICszNDcsNyBAQAogCWVjaG8gJHRhZyA+LmdpdC9yZWZzL3RhZ3Mvd3JvbmcgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCB1cGRhdGUtcmVmIC1kIHJlZnMvdGFncy93cm9uZyIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgZnNjayAtLXRhZ3MgMj5vdXQgJiYKLQlncmVwICJlcnJvciBpbiB0YWcgLio6IGludmFsaWQgYXV0aG9yL2NvbW1pdHRlciIgb3V0CisJdGVzdF9pMThuZ3JlcCAiZXJyb3IgaW4gdGFnIC4qOiBpbnZhbGlkIGF1dGhvci9jb21taXR0ZXIiIG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd0YWcgd2l0aCBOVUwgaW4gaGVhZGVyJyAnCkBAIC0zNzQsOCArMzY2LDcgQEAKIAllY2hvICR0YWcgPi5naXQvcmVmcy90YWdzL3dyb25nICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgdXBkYXRlLXJlZiAtZCByZWZzL3RhZ3Mvd3JvbmciICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZzY2sgLS10YWdzIDI+b3V0ICYmCi0JY2F0IG91dCAmJgotCWdyZXAgImVycm9yIGluIHRhZyAkdGFnLip1bnRlcm1pbmF0ZWQgaGVhZGVyOiBOVUwgYXQgb2Zmc2V0IiBvdXQKKwl0ZXN0X2kxOG5ncmVwICJlcnJvciBpbiB0YWcgJHRhZy4qdW50ZXJtaW5hdGVkIGhlYWRlcjogTlVMIGF0IG9mZnNldCIgb3V0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NsZWFuZWQgdXAnICcKQEAgLTM5MCw4ICszODEsOCBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXYtbGlzdCAtLXZlcmlmeS1vYmplY3RzIHdpdGggYmFkIHNoYTEnICcKIAlzaGE9JChlY2hvIGJsb2IgfCBnaXQgaGFzaC1vYmplY3QgLXcgLS1zdGRpbikgJiYKLQlvbGQ9JChlY2hvICRzaGEgfCBzZWQgInMrXi4uKyYvKyIpICYmCi0JbmV3PSQoZGlybmFtZSAkb2xkKS9mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiAmJgorCW9sZD0kKHRlc3Rfb2lkX3RvX3BhdGggJHNoYSkgJiYKKwluZXc9JChkaXJuYW1lICRvbGQpLyQodGVzdF9vaWQgZmZfMikgJiYKIAlzaGE9IiQoZGlybmFtZSAkbmV3KSQoYmFzZW5hbWUgJG5ldykiICYmCiAJbXYgLmdpdC9vYmplY3RzLyRvbGQgLmdpdC9vYmplY3RzLyRuZXcgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJlbW92ZV9vYmplY3QgJHNoYSIgJiYKQEAgLTQwNSw4ICszOTYsNyBAQAogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHVwZGF0ZS1yZWYgLWQgcmVmcy9oZWFkcy9ib2d1cyIgJiYKIAogCXRlc3RfbWlnaHRfZmFpbCBnaXQgcmV2LWxpc3QgLS12ZXJpZnktb2JqZWN0cyByZWZzL2hlYWRzL2JvZ3VzID4vZGV2L251bGwgMj5vdXQgJiYKLQljYXQgb3V0ICYmCi0JdGVzdF9pMThuZ3JlcCAtcSAiZXJyb3I6IHNoYTEgbWlzbWF0Y2ggNjNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiIgb3V0CisJdGVzdF9pMThuZ3JlcCAtcSAiZXJyb3I6IGhhc2ggbWlzbWF0Y2ggJChkaXJuYW1lICRuZXcpJCh0ZXN0X29pZCBmZl8yKSIgb3V0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZvcmNlIGZzY2sgdG8gaWdub3JlIGRvdWJsZSBhdXRob3InICcKQEAgLTQyMSwyOCArNDExLDI1IEBACiAnCiAKIF9iej0nXDAnCi1fYno1PSIkX2J6JF9ieiRfYnokX2J6JF9ieiIKLV9iejIwPSIkX2J6NSRfYno1JF9iejUkX2J6NSIKK19iem9pZD0kKHByaW50ZiAkWkVST19PSUQgfCBzZWQgLWUgJ3MvMDAvXFwwL2cnKQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmc2NrIG5vdGljZXMgYmxvYiBlbnRyeSBwb2ludGluZyB0byBudWxsIHNoYTEnICcKIAkoZ2l0IGluaXQgbnVsbC1ibG9iICYmCiAJIGNkIG51bGwtYmxvYiAmJgotCSBzaGE9JChwcmludGYgIjEwMDY0NCBmaWxlJF9ieiRfYnoyMCIgfAorCSBzaGE9JChwcmludGYgIjEwMDY0NCBmaWxlJF9ieiRfYnpvaWQiIHwKIAkgICAgICAgZ2l0IGhhc2gtb2JqZWN0IC13IC0tc3RkaW4gLXQgdHJlZSkgJiYKIAkgIGdpdCBmc2NrIDI+b3V0ICYmCi0JICBjYXQgb3V0ICYmCi0JICBncmVwICJ3YXJuaW5nLipudWxsIHNoYTEiIG91dAorCSAgdGVzdF9pMThuZ3JlcCAid2FybmluZy4qbnVsbCBzaGExIiBvdXQKIAkpCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZzY2sgbm90aWNlcyBzdWJtb2R1bGUgZW50cnkgcG9pbnRpbmcgdG8gbnVsbCBzaGExJyAnCiAJKGdpdCBpbml0IG51bGwtY29tbWl0ICYmCiAJIGNkIG51bGwtY29tbWl0ICYmCi0JIHNoYT0kKHByaW50ZiAiMTYwMDAwIHN1Ym1vZHVsZSRfYnokX2J6MjAiIHwKKwkgc2hhPSQocHJpbnRmICIxNjAwMDAgc3VibW9kdWxlJF9ieiRfYnpvaWQiIHwKIAkgICAgICAgZ2l0IGhhc2gtb2JqZWN0IC13IC0tc3RkaW4gLXQgdHJlZSkgJiYKIAkgIGdpdCBmc2NrIDI+b3V0ICYmCi0JICBjYXQgb3V0ICYmCi0JICBncmVwICJ3YXJuaW5nLipudWxsIHNoYTEiIG91dAorCSAgdGVzdF9pMThuZ3JlcCAid2FybmluZy4qbnVsbCBzaGExIiBvdXQKIAkpCiAnCiAKQEAgLTQ2Myw4ICs0NTAsNyBAQAogCQkJcHJpbnRmICIkbW9kZSAkdHlwZSAlc1x0JXMiICIkdmFsdWUiICIkcGF0aCIgPmJhZCAmJgogCQkJYmFkX3RyZWU9JChnaXQgbWt0cmVlIDxiYWQpICYmCiAJCQlnaXQgZnNjayAyPm91dCAmJgotCQkJY2F0IG91dCAmJgotCQkJZ3JlcCAid2FybmluZy4qdHJlZSAkYmFkX3RyZWUiIG91dAorCQkJdGVzdF9pMThuZ3JlcCAid2FybmluZy4qdHJlZSAkYmFkX3RyZWUiIG91dAogCQkpJwogCWRvbmUgPDwtXEVPRgogCTEwMDY0NCBibG9iCkBAIC01MTAsOSArNDk2LDkgQEAKIAkJZ2l0IGJyYW5jaCBiYWQgJChjYXQgbmFtZSkgJiYKIAogCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgZnNjay5udWxJbkNvbW1pdD1lcnJvciBmc2NrIDI+d2Fybi4xICYmCi0JCWdyZXAgbnVsSW5Db21taXQgd2Fybi4xICYmCisJCXRlc3RfaTE4bmdyZXAgbnVsSW5Db21taXQgd2Fybi4xICYmCiAJCWdpdCBmc2NrIDI+d2Fybi4yICYmCi0JCWdyZXAgbnVsSW5Db21taXQgd2Fybi4yCisJCXRlc3RfaTE4bmdyZXAgbnVsSW5Db21taXQgd2Fybi4yCiAJKQogJwogCkBAIC01OTEsNyArNTc3LDcgQEAKIAkJIyBpdHMgdHlwZS4gVGhhdCBsZXRzIHVzIHNlZSB0aGF0IC0tY29ubmVjdGl2aXR5LW9ubHkgaXMKIAkJIyBub3QgYWN0dWFsbHkgbG9va2luZyBhdCB0aGUgY29udGVudHMsIGJ1dCBsZWF2ZXMgaXQKIAkJIyBmcmVlIHRvIGV4YW1pbmUgdGhlIHR5cGUgaWYgaXQgY2hvb3Nlcy4KLQkJZW1wdHk9LmdpdC9vYmplY3RzL2U2LzlkZTI5YmIyZDFkNjQzNGI4YjI5YWU3NzVhZDhjMmU0OGM1MzkxICYmCisJCWVtcHR5PS5naXQvb2JqZWN0cy8kKHRlc3Rfb2lkX3RvX3BhdGggJEVNUFRZX0JMT0IpICYmCiAJCWJsb2I9JChlY2hvIHVucmVsYXRlZCB8IGdpdCBoYXNoLW9iamVjdCAtdyAtLXN0ZGluKSAmJgogCQltdiAtZiAkKHNoYTFfZmlsZSAkYmxvYikgJGVtcHR5ICYmCiAKQEAgLTYzMCwxOCArNjE2LDIwIEBACiAJCXJlbW92ZV9vYmplY3QgJChnaXQgcmV2LXBhcnNlIGp1bGl1czpjYWVzYXIudCkgJiYKIAkJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZzY2sgLS1uYW1lLW9iamVjdHMgPm91dCAmJgogCQl0cmVlPSQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBqdWxpdXM6KSAmJgotCQllZ3JlcCAiJHRyZWUgXCgocmVmcy9oZWFkcy9tYXN0ZXJ8SEVBRClAXHtbMC05XSpcfToiIG91dAorCQl0ZXN0X2kxOG5ncmVwICIkdHJlZSAocmVmcy90YWdzL2p1bGl1czoiIG91dAogCSkKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYWx0ZXJuYXRlIG9iamVjdHMgYXJlIGNvcnJlY3RseSBibGFtZWQnICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1yZiBhbHQuZ2l0IC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiICYmCisJbmFtZT0kKHRlc3Rfb2lkIG51bWVyaWMpICYmCisJcGF0aD0kKHRlc3Rfb2lkX3RvX3BhdGggIiRuYW1lIikgJiYKIAlnaXQgaW5pdCAtLWJhcmUgYWx0LmdpdCAmJgogCWVjaG8gIi4uLy4uL2FsdC5naXQvb2JqZWN0cyIgPi5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMgJiYKLQlta2RpciBhbHQuZ2l0L29iamVjdHMvMTIgJiYKLQk+YWx0LmdpdC9vYmplY3RzLzEyLzM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwICYmCisJbWtkaXIgYWx0LmdpdC9vYmplY3RzLyQoZGlybmFtZSAkcGF0aCkgJiYKKwk+YWx0LmdpdC9vYmplY3RzLyQoZGlybmFtZSAkcGF0aCkvJChiYXNlbmFtZSAkcGF0aCkgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgZnNjayA+b3V0IDI+JjEgJiYKLQlncmVwIGFsdC5naXQgb3V0CisJdGVzdF9pMThuZ3JlcCBhbHQuZ2l0IG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmc2NrIGVycm9ycyBpbiBwYWNrZWQgb2JqZWN0cycgJwpAQCAtNjYwLDggKzY0OCw4IEBACiAJcmVtb3ZlX29iamVjdCAkb25lICYmCiAJcmVtb3ZlX29iamVjdCAkdHdvICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZzY2sgMj5vdXQgJiYKLQlncmVwICJlcnJvciBpbiBjb21taXQgJG9uZS4qIC0gYmFkIG5hbWUiIG91dCAmJgotCWdyZXAgImVycm9yIGluIGNvbW1pdCAkdHdvLiogLSBiYWQgbmFtZSIgb3V0ICYmCisJdGVzdF9pMThuZ3JlcCAiZXJyb3IgaW4gY29tbWl0ICRvbmUuKiAtIGJhZCBuYW1lIiBvdXQgJiYKKwl0ZXN0X2kxOG5ncmVwICJlcnJvciBpbiBjb21taXQgJHR3by4qIC0gYmFkIG5hbWUiIG91dCAmJgogCSEgZ3JlcCBjb3JydXB0IG91dAogJwogCkBAIC03NDEsNyArNzI5LDcgQEAKICMgZm9yIGVhY2ggb2YgdHlwZSwgd2UgaGF2ZSBvbmUgdmVyc2lvbiB3aGljaCBpcyByZWZlcmVuY2VkIGJ5IGFub3RoZXIgb2JqZWN0CiAjIChhbmQgc28gd2hpbGUgdW5yZWFjaGFibGUsIG5vdCBkYW5nbGluZyksIGFuZCBhbm90aGVyIHZhcmlhbnQgd2hpY2ggcmVhbGx5IGlzCiAjIGRhbmdsaW5nLgotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZnNjayBub3RpY2VzIGRhbmdsaW5nIG9iamVjdHMnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NyZWF0ZSBkYW5nbGluZy1vYmplY3QgcmVwb3NpdG9yeScgJwogCWdpdCBpbml0IGRhbmdsaW5nICYmCiAJKAogCQljZCBkYW5nbGluZyAmJgpAQCAtNzUyLDE2ICs3NDAsMzEgQEAKIAkJY29tbWl0PSQoZ2l0IGNvbW1pdC10cmVlICR0cmVlKSAmJgogCQlkY29tbWl0PSQoZ2l0IGNvbW1pdC10cmVlIC1wICRjb21taXQgJHRyZWUpICYmCiAKLQkJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCWNhdCA+ZXhwZWN0IDw8LUVPRgogCQlkYW5nbGluZyBibG9iICRkYmxvYgogCQlkYW5nbGluZyBjb21taXQgJGRjb21taXQKIAkJZGFuZ2xpbmcgdHJlZSAkZHRyZWUKIAkJRU9GCisJKQorJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmc2NrIG5vdGljZXMgZGFuZ2xpbmcgb2JqZWN0cycgJworCSgKKwkJY2QgZGFuZ2xpbmcgJiYKIAkJZ2l0IGZzY2sgPmFjdHVhbCAmJgogCQkjIHRoZSBvdXRwdXQgb3JkZXIgaXMgbm9uLWRldGVybWluaXN0aWMsIGFzIGl0IGNvbWVzIGZyb20gYSBoYXNoCiAJCXNvcnQgPGFjdHVhbCA+YWN0dWFsLnNvcnRlZCAmJgotCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsLnNvcnRlZAorCQl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbC5zb3J0ZWQKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZzY2sgLS1jb25uZWN0aXZpdHktb25seSBub3RpY2VzIGRhbmdsaW5nIG9iamVjdHMnICcKKwkoCisJCWNkIGRhbmdsaW5nICYmCisJCWdpdCBmc2NrIC0tY29ubmVjdGl2aXR5LW9ubHkgPmFjdHVhbCAmJgorCQkjIHRoZSBvdXRwdXQgb3JkZXIgaXMgbm9uLWRldGVybWluaXN0aWMsIGFzIGl0IGNvbWVzIGZyb20gYSBoYXNoCisJCXNvcnQgPGFjdHVhbCA+YWN0dWFsLnNvcnRlZCAmJgorCQl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbC5zb3J0ZWQKIAkpCiAnCiAKQEAgLTgwOSw3ICs4MTIsNyBAQAogCXRlc3Rfd2hlbl9maW5pc2hlZCAibXYgLmdpdC9pbmRleC5iYWNrdXAgLmdpdC9pbmRleCIgJiYKIAljb3JydXB0X2luZGV4X2NoZWNrc3VtICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZzY2sgLS1jYWNoZSAyPmVycm9ycyAmJgotCWdyZXAgImJhZCBpbmRleCBmaWxlIiBlcnJvcnMKKwl0ZXN0X2kxOG5ncmVwICJiYWQgaW5kZXggZmlsZSIgZXJyb3JzCiAnCiAKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MTUwMC1yZXYtcGFyc2Uuc2ggYi90L3QxNTAwLXJldi1wYXJzZS5zaAppbmRleCAwMWFiZWU1Li42MDMwMTliIDEwMDc1NQotLS0gYS90L3QxNTAwLXJldi1wYXJzZS5zaAorKysgYi90L3QxNTAwLXJldi1wYXJzZS5zaApAQCAtNTksNiArNTksNyBAQAogUk9PVD0kKHB3ZCkKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICcKKwl0ZXN0X29pZF9pbml0ICYmCiAJbWtkaXIgLXAgc3ViL2RpciB3b3JrICYmCiAJY3AgLVIgLmdpdCByZXBvLmdpdAogJwpAQCAtMTMxLDYgKzEzMiwzMCBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncmV2LXBhcnNlIC0tc2hvdy1vYmplY3QtZm9ybWF0IGluIHJlcG8nICcKKwllY2hvICIkKHRlc3Rfb2lkIGFsZ28pIiA+ZXhwZWN0ICYmCisJZ2l0IHJldi1wYXJzZSAtLXNob3ctb2JqZWN0LWZvcm1hdCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCWdpdCByZXYtcGFyc2UgLS1zaG93LW9iamVjdC1mb3JtYXQ9c3RvcmFnZSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCWdpdCByZXYtcGFyc2UgLS1zaG93LW9iamVjdC1mb3JtYXQ9aW5wdXQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKwlnaXQgcmV2LXBhcnNlIC0tc2hvdy1vYmplY3QtZm9ybWF0PW91dHB1dCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgLS1zaG93LW9iamVjdC1mb3JtYXQ9c3F1ZWFtaXNoLW9zc2lmcmFnZSAyPmVyciAmJgorCWdyZXAgInVua25vd24gbW9kZSBmb3IgLS1zaG93LW9iamVjdC1mb3JtYXQ6IHNxdWVhbWlzaC1vc3NpZnJhZ2UiIGVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXNob3ctdG9wbGV2ZWwgZnJvbSBzdWJkaXIgb2Ygd29ya2luZyB0cmVlJyAnCisJcHdkID5leHBlY3QgJiYKKwlnaXQgLUMgc3ViL2RpciByZXYtcGFyc2UgLS1zaG93LXRvcGxldmVsID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tc2hvdy10b3BsZXZlbCBmcm9tIGluc2lkZSAuZ2l0JyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1DIC5naXQgcmV2LXBhcnNlIC0tc2hvdy10b3BsZXZlbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaG93aW5nIHRoZSBzdXBlcnByb2plY3QgY29ycmVjdGx5JyAnCiAJZ2l0IHJldi1wYXJzZSAtLXNob3ctc3VwZXJwcm9qZWN0LXdvcmtpbmctdHJlZSA+b3V0ICYmCiAJdGVzdF9tdXN0X2JlX2VtcHR5IG91dCAmJgpkaWZmIC0tZ2l0IGEvdC90MTUwMS13b3JrLXRyZWUuc2ggYi90L3QxNTAxLXdvcmstdHJlZS5zaAppbmRleCAzNDk4ZDNkLi5iNzU1NTgwIDEwMDc1NQotLS0gYS90L3QxNTAxLXdvcmstdHJlZS5zaAorKysgYi90L3QxNTAxLXdvcmstdHJlZS5zaApAQCAtMzUwLDcgKzM1MCw3IEBACiAJbWtkaXIgd29yayAmJgogCW1rZGlyIC1wIHJlcG8uZ2l0L3JlcG9zL2ZvbyAmJgogCWNwIHJlcG8uZ2l0L0hFQUQgcmVwby5naXQvaW5kZXggcmVwby5naXQvcmVwb3MvZm9vICYmCi0JdGVzdF9taWdodF9mYWlsIGNwIHJlcG8uZ2l0L3NoYXJlZGluZGV4LiogcmVwby5naXQvcmVwb3MvZm9vICYmCisJeyBjcCByZXBvLmdpdC9zaGFyZWRpbmRleC4qIHJlcG8uZ2l0L3JlcG9zL2ZvbyB8fCA6OyB9ICYmCiAJc2FuZV91bnNldCBHSVRfRElSIEdJVF9DT05GSUcgR0lUX1dPUktfVFJFRQogJwogCmRpZmYgLS1naXQgYS90L3QxNTA2LXJldi1wYXJzZS1kaWFnbm9zaXMuc2ggYi90L3QxNTA2LXJldi1wYXJzZS1kaWFnbm9zaXMuc2gKaW5kZXggNGVlMDA5ZC4uNTJlZGNiZCAxMDA3NTUKLS0tIGEvdC90MTUwNi1yZXYtcGFyc2UtZGlhZ25vc2lzLnNoCisrKyBiL3QvdDE1MDYtcmV2LXBhcnNlLWRpYWdub3Npcy5zaApAQCAtOCwxMiArOCwxMSBAQAogCiB0ZXN0X2RpZF95b3VfbWVhbiAoKQogewotCXNxPSInIiAmJgogCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCi0JZmF0YWw6IFBhdGggJyQyJDMnICQ0LCBidXQgbm90ICR7NTotJHNxJDMkc3F9LgotCURpZCB5b3UgbWVhbiAnJDE6JDIkMyckezI6KyBha2EgJHNxJDE6Li8kMyRzcX0/CisJZmF0YWw6IHBhdGggJyQyJDMnICQ0LCBidXQgbm90ICR7NTotJFNRJDMkU1F9CisJaGludDogRGlkIHlvdSBtZWFuICckMTokMiQzJyR7MjorIGFrYSAkU1EkMTouLyQzJFNRfT8KIAlFT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBlcnJvcgorCXRlc3RfaTE4bmNtcCBleHBlY3RlZCBlcnJvcgogfQogCiBIQVNIX2ZpbGU9CkBAIC0xMDQsNjYgKzEwMyw2NiBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdpbmNvcnJlY3QgcmV2aXNpb24gaWQnICcKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIGZvb2JhcjpmaWxlLnR4dCAyPmVycm9yICYmCi0JZ3JlcCAiSW52YWxpZCBvYmplY3QgbmFtZSAnIiciJ2Zvb2JhciciJyInLiIgZXJyb3IgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIGZvb2JhciAyPiBlcnJvciAmJgorCXRlc3RfaTE4bmdyZXAgImludmFsaWQgb2JqZWN0IG5hbWUgLmZvb2Jhci4iIGVycm9yICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSBmb29iYXIgMj5lcnJvciAmJgogCXRlc3RfaTE4bmdyZXAgInVua25vd24gcmV2aXNpb24gb3IgcGF0aCBub3QgaW4gdGhlIHdvcmtpbmcgdHJlZS4iIGVycm9yCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2luY29ycmVjdCBmaWxlIGluIHNoYTE6cGF0aCcgJwotCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgSEVBRDpub3RoaW5nLnR4dCAyPiBlcnJvciAmJgotCWdyZXAgImZhdGFsOiBQYXRoICciJyInbm90aGluZy50eHQnIiciJyBkb2VzIG5vdCBleGlzdCBpbiAnIiciJ0hFQUQnIiciJyIgZXJyb3IgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIEhFQUQ6aW5kZXgtb25seS50eHQgMj4gZXJyb3IgJiYKLQlncmVwICJmYXRhbDogUGF0aCAnIiciJ2luZGV4LW9ubHkudHh0JyInIicgZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gJyInIidIRUFEJyInIicuIiBlcnJvciAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgSEVBRDpub3RoaW5nLnR4dCAyPmVycm9yICYmCisJdGVzdF9pMThuZ3JlcCAicGF0aCAubm90aGluZy50eHQuIGRvZXMgbm90IGV4aXN0IGluIC5IRUFELiIgZXJyb3IgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIEhFQUQ6aW5kZXgtb25seS50eHQgMj5lcnJvciAmJgorCXRlc3RfaTE4bmdyZXAgInBhdGggLmluZGV4LW9ubHkudHh0LiBleGlzdHMgb24gZGlzaywgYnV0IG5vdCBpbiAuSEVBRC4iIGVycm9yICYmCiAJKGNkIHN1YmRpciAmJgotCSB0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIEhFQUQ6ZmlsZTIudHh0IDI+IGVycm9yICYmCisJIHRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgSEVBRDpmaWxlMi50eHQgMj5lcnJvciAmJgogCSB0ZXN0X2RpZF95b3VfbWVhbiBIRUFEIHN1YmRpci8gZmlsZTIudHh0IGV4aXN0cyApCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2luY29ycmVjdCBmaWxlIGluIDpwYXRoIGFuZCA6TjpwYXRoJyAnCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSA6bm90aGluZy50eHQgMj4gZXJyb3IgJiYKLQlncmVwICJmYXRhbDogUGF0aCAnIiciJ25vdGhpbmcudHh0JyInIicgZG9lcyBub3QgZXhpc3QgKG5laXRoZXIgb24gZGlzayBub3IgaW4gdGhlIGluZGV4KS4iIGVycm9yICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSA6MTpub3RoaW5nLnR4dCAyPiBlcnJvciAmJgotCWdyZXAgIlBhdGggJyInIidub3RoaW5nLnR4dCciJyInIGRvZXMgbm90IGV4aXN0IChuZWl0aGVyIG9uIGRpc2sgbm9yIGluIHRoZSBpbmRleCkuIiBlcnJvciAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgOjE6ZmlsZS50eHQgMj4gZXJyb3IgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIDpub3RoaW5nLnR4dCAyPmVycm9yICYmCisJdGVzdF9pMThuZ3JlcCAicGF0aCAubm90aGluZy50eHQuIGRvZXMgbm90IGV4aXN0IChuZWl0aGVyIG9uIGRpc2sgbm9yIGluIHRoZSBpbmRleCkiIGVycm9yICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSA6MTpub3RoaW5nLnR4dCAyPmVycm9yICYmCisJdGVzdF9pMThuZ3JlcCAicGF0aCAubm90aGluZy50eHQuIGRvZXMgbm90IGV4aXN0IChuZWl0aGVyIG9uIGRpc2sgbm9yIGluIHRoZSBpbmRleCkiIGVycm9yICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSA6MTpmaWxlLnR4dCAyPmVycm9yICYmCiAJdGVzdF9kaWRfeW91X21lYW4gIjowIiAiIiBmaWxlLnR4dCAiaXMgaW4gdGhlIGluZGV4IiAiYXQgc3RhZ2UgMSIgJiYKIAkoY2Qgc3ViZGlyICYmCi0JIHRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgOjE6ZmlsZS50eHQgMj4gZXJyb3IgJiYKKwkgdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSA6MTpmaWxlLnR4dCAyPmVycm9yICYmCiAJIHRlc3RfZGlkX3lvdV9tZWFuICI6MCIgIiIgZmlsZS50eHQgImlzIGluIHRoZSBpbmRleCIgImF0IHN0YWdlIDEiICYmCi0JIHRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgOmZpbGUyLnR4dCAyPiBlcnJvciAmJgorCSB0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIDpmaWxlMi50eHQgMj5lcnJvciAmJgogCSB0ZXN0X2RpZF95b3VfbWVhbiAiOjAiIHN1YmRpci8gZmlsZTIudHh0ICJpcyBpbiB0aGUgaW5kZXgiICYmCi0JIHRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgOjI6ZmlsZTIudHh0IDI+IGVycm9yICYmCisJIHRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgOjI6ZmlsZTIudHh0IDI+ZXJyb3IgJiYKIAkgdGVzdF9kaWRfeW91X21lYW4gOjAgc3ViZGlyLyBmaWxlMi50eHQgImlzIGluIHRoZSBpbmRleCIpICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSA6ZGlzay1vbmx5LnR4dCAyPiBlcnJvciAmJgotCWdyZXAgImZhdGFsOiBQYXRoICciJyInZGlzay1vbmx5LnR4dCciJyInIGV4aXN0cyBvbiBkaXNrLCBidXQgbm90IGluIHRoZSBpbmRleC4iIGVycm9yCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSA6ZGlzay1vbmx5LnR4dCAyPmVycm9yICYmCisJdGVzdF9pMThuZ3JlcCAicGF0aCAuZGlzay1vbmx5LnR4dC4gZXhpc3RzIG9uIGRpc2ssIGJ1dCBub3QgaW4gdGhlIGluZGV4IiBlcnJvcgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdpbnZhbGlkIEB7bn0gcmVmZXJlbmNlJyAnCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSBtYXN0ZXJAezk5OTk5fSA+b3V0cHV0IDI+ZXJyb3IgJiYKLQl0ZXN0IC16ICIkKGNhdCBvdXRwdXQpIiAmJgotCWdyZXAgImZhdGFsOiBMb2cgZm9yIFteIF0qIG9ubHkgaGFzIFswLTldWzAtOV0qIGVudHJpZXMuIiBlcnJvciAgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgb3V0cHV0ICYmCisJdGVzdF9pMThuZ3JlcCAibG9nIGZvciBbXiBdKiBvbmx5IGhhcyBbMC05XVswLTldKiBlbnRyaWVzIiBlcnJvciAgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IG1hc3RlckB7OTk5OTl9ID5vdXRwdXQgMj5lcnJvciAmJgotCXRlc3QgLXogIiQoY2F0IG91dHB1dCkiICYmCi0JZ3JlcCAiZmF0YWw6IExvZyBmb3IgW14gXSogb25seSBoYXMgWzAtOV1bMC05XSogZW50cmllcy4iIGVycm9yCisJdGVzdF9tdXN0X2JlX2VtcHR5IG91dHB1dCAmJgorCXRlc3RfaTE4bmdyZXAgImxvZyBmb3IgW14gXSogb25seSBoYXMgWzAtOV1bMC05XSogZW50cmllcyIgZXJyb3IKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVsYXRpdmUgcGF0aCBub3QgZm91bmQnICcKIAkoCiAJCWNkIHN1YmRpciAmJgogCQl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIEhFQUQ6Li9ub25leGlzdGVudC50eHQgMj5lcnJvciAmJgotCQlncmVwIHN1YmRpci9ub25leGlzdGVudC50eHQgZXJyb3IKKwkJdGVzdF9pMThuZ3JlcCBzdWJkaXIvbm9uZXhpc3RlbnQudHh0IGVycm9yCiAJKQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWxhdGl2ZSBwYXRoIG91dHNpZGUgd29ya3RyZWUnICcKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIEhFQUQ6Li4vZmlsZS50eHQgPm91dHB1dCAyPmVycm9yICYmCi0JdGVzdCAteiAiJChjYXQgb3V0cHV0KSIgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgb3V0cHV0ICYmCiAJdGVzdF9pMThuZ3JlcCAib3V0c2lkZSByZXBvc2l0b3J5IiBlcnJvcgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWxhdGl2ZSBwYXRoIHdoZW4gY3dkIGlzIG91dHNpZGUgd29ya3RyZWUnICcKIAl0ZXN0X211c3RfZmFpbCBnaXQgLS1naXQtZGlyPS5naXQgLS13b3JrLXRyZWU9c3ViZGlyIHJldi1wYXJzZSBIRUFEOi4vZmlsZS50eHQgPm91dHB1dCAyPmVycm9yICYmCi0JdGVzdCAteiAiJChjYXQgb3V0cHV0KSIgJiYKLQlncmVwICJyZWxhdGl2ZSBwYXRoIHN5bnRheCBjYW4udCBiZSB1c2VkIG91dHNpZGUgd29ya2luZyB0cmVlLiIgZXJyb3IKKwl0ZXN0X211c3RfYmVfZW1wdHkgb3V0cHV0ICYmCisJdGVzdF9pMThuZ3JlcCAicmVsYXRpdmUgcGF0aCBzeW50YXggY2FuLnQgYmUgdXNlZCBvdXRzaWRlIHdvcmtpbmcgdHJlZSIgZXJyb3IKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnPGNvbW1pdD46ZmlsZSBjb3JyZWN0bHkgZGlhZ25vc2VkIGFmdGVyIGEgcGF0aG5hbWUnICcKQEAgLTIxNSw0ICsyMTQsMjYgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlamVjdCBOdGggcGFyZW50IGlmIE4gaXMgdG9vIGhpZ2gnICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIEhFQUReMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlamVjdCBOdGggYW5jZXN0b3IgaWYgTiBpcyB0b28gaGlnaCcgJworCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgSEVBRH4xMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncGF0aHNwZWNzIHdpdGggd2lsZGNhcmRzIGFyZSBub3QgYW1iaWd1b3VzJyAnCisJZWNobyAiKi5jIiA+ZXhwZWN0ICYmCisJZ2l0IHJldi1wYXJzZSAiKi5jIiA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdiYWNrc2xhc2ggZG9lcyBub3QgdHJpZ2dlciB3aWxkY2FyZCBydWxlJyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSAiZm9vXFxiYXIiCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2VzY2FwZWQgY2hhciBkb2VzIG5vdCB0cmlnZ2VyIHdpbGRjYXJkIHJ1bGUnICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlICJmb29cXCpiYXIiCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MTUwNy1yZXYtcGFyc2UtdXBzdHJlYW0uc2ggYi90L3QxNTA3LXJldi1wYXJzZS11cHN0cmVhbS5zaAppbmRleCBmYTNlNDk5Li5kZmMwZDk2IDEwMDc1NQotLS0gYS90L3QxNTA3LXJldi1wYXJzZS11cHN0cmVhbS5zaAorKysgYi90L3QxNTA3LXJldi1wYXJzZS11cHN0cmVhbS5zaApAQCAtMjgsMTYgKzI4LDkgQEAKIAkpCiAnCiAKLXNxPSInIgotCi1mdWxsX25hbWUgKCkgewotCShjZCBjbG9uZSAmJgotCSBnaXQgcmV2LXBhcnNlIC0tc3ltYm9saWMtZnVsbC1uYW1lICIkQCIpCi19Ci0KIGNvbW1pdF9zdWJqZWN0ICgpIHsKIAkoY2QgY2xvbmUgJiYKLQkgZ2l0IHNob3cgLXMgLS1wcmV0dHk9Zm9ybWF0OiVzICIkQCIpCisJIGdpdCBzaG93IC1zIC0tcHJldHR5PXRmb3JtYXQ6JXMgIiRAIikKIH0KIAogZXJyb3JfbWVzc2FnZSAoKSB7CkBAIC00Niw2MyArMzksNzggQEAKIH0KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnQHt1cHN0cmVhbX0gcmVzb2x2ZXMgdG8gY29ycmVjdCBmdWxsIG5hbWUnICcKLQl0ZXN0IHJlZnMvcmVtb3Rlcy9vcmlnaW4vbWFzdGVyID0gIiQoZnVsbF9uYW1lIEB7dXBzdHJlYW19KSIgJiYKLQl0ZXN0IHJlZnMvcmVtb3Rlcy9vcmlnaW4vbWFzdGVyID0gIiQoZnVsbF9uYW1lIEB7VVBTVFJFQU19KSIgJiYKLQl0ZXN0IHJlZnMvcmVtb3Rlcy9vcmlnaW4vbWFzdGVyID0gIiQoZnVsbF9uYW1lIEB7VXBTVFJlYW19KSIKKwllY2hvIHJlZnMvcmVtb3Rlcy9vcmlnaW4vbWFzdGVyID5leHBlY3QgJiYKKwlnaXQgLUMgY2xvbmUgcmV2LXBhcnNlIC0tc3ltYm9saWMtZnVsbC1uYW1lIEB7dXBzdHJlYW19ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJZ2l0IC1DIGNsb25lIHJldi1wYXJzZSAtLXN5bWJvbGljLWZ1bGwtbmFtZSBAe1VQU1RSRUFNfSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCWdpdCAtQyBjbG9uZSByZXYtcGFyc2UgLS1zeW1ib2xpYy1mdWxsLW5hbWUgQHtVcFNUUmVhbX0gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnQHt1fSByZXNvbHZlcyB0byBjb3JyZWN0IGZ1bGwgbmFtZScgJwotCXRlc3QgcmVmcy9yZW1vdGVzL29yaWdpbi9tYXN0ZXIgPSAiJChmdWxsX25hbWUgQHt1fSkiICYmCi0JdGVzdCByZWZzL3JlbW90ZXMvb3JpZ2luL21hc3RlciA9ICIkKGZ1bGxfbmFtZSBAe1V9KSIKKwllY2hvIHJlZnMvcmVtb3Rlcy9vcmlnaW4vbWFzdGVyID5leHBlY3QgJiYKKwlnaXQgLUMgY2xvbmUgcmV2LXBhcnNlIC0tc3ltYm9saWMtZnVsbC1uYW1lIEB7dX0gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKwlnaXQgLUMgY2xvbmUgcmV2LXBhcnNlIC0tc3ltYm9saWMtZnVsbC1uYW1lIEB7VX0gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbXktc2lkZUB7dXBzdHJlYW19IHJlc29sdmVzIHRvIGNvcnJlY3QgZnVsbCBuYW1lJyAnCi0JdGVzdCByZWZzL3JlbW90ZXMvb3JpZ2luL3NpZGUgPSAiJChmdWxsX25hbWUgbXktc2lkZUB7dX0pIgorCWVjaG8gcmVmcy9yZW1vdGVzL29yaWdpbi9zaWRlID5leHBlY3QgJiYKKwlnaXQgLUMgY2xvbmUgcmV2LXBhcnNlIC0tc3ltYm9saWMtZnVsbC1uYW1lIG15LXNpZGVAe3V9ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Vwc3RyZWFtIG9mIGJyYW5jaCB3aXRoIEAgaW4gbWlkZGxlJyAnCi0JZnVsbF9uYW1lIGZ1bkBueUB7dX0gPmFjdHVhbCAmJgorCWdpdCAtQyBjbG9uZSByZXYtcGFyc2UgLS1zeW1ib2xpYy1mdWxsLW5hbWUgZnVuQG55QHt1fSA+YWN0dWFsICYmCiAJZWNobyByZWZzL3JlbW90ZXMvb3JpZ2luL3NpZGUgPmV4cGVjdCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKLQlmdWxsX25hbWUgZnVuQG55QHtVfSA+YWN0dWFsICYmCisJZ2l0IC1DIGNsb25lIHJldi1wYXJzZSAtLXN5bWJvbGljLWZ1bGwtbmFtZSBmdW5AbnlAe1V9ID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Vwc3RyZWFtIG9mIGJyYW5jaCB3aXRoIEAgYXQgc3RhcnQnICcKLQlmdWxsX25hbWUgQGZ1bm55QHt1fSA+YWN0dWFsICYmCisJZ2l0IC1DIGNsb25lIHJldi1wYXJzZSAtLXN5bWJvbGljLWZ1bGwtbmFtZSBAZnVubnlAe3V9ID5hY3R1YWwgJiYKIAllY2hvIHJlZnMvcmVtb3Rlcy9vcmlnaW4vc2lkZSA+ZXhwZWN0ICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd1cHN0cmVhbSBvZiBicmFuY2ggd2l0aCBAIGF0IGVuZCcgJwotCWZ1bGxfbmFtZSBmdW5ueUBAe3V9ID5hY3R1YWwgJiYKKwlnaXQgLUMgY2xvbmUgcmV2LXBhcnNlIC0tc3ltYm9saWMtZnVsbC1uYW1lIGZ1bm55QEB7dX0gPmFjdHVhbCAmJgogCWVjaG8gcmVmcy9yZW1vdGVzL29yaWdpbi9zaWRlID5leHBlY3QgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlZnMvaGVhZHMvbXktc2lkZUB7dXBzdHJlYW19IGRvZXMgbm90IHJlc29sdmUgdG8gbXktc2lkZXt1cHN0cmVhbX0nICcKLQl0ZXN0X211c3RfZmFpbCBmdWxsX25hbWUgcmVmcy9oZWFkcy9teS1zaWRlQHt1cHN0cmVhbX0KKwl0ZXN0X211c3RfZmFpbCBnaXQgLUMgY2xvbmUgcmV2LXBhcnNlIC0tc3ltYm9saWMtZnVsbC1uYW1lIHJlZnMvaGVhZHMvbXktc2lkZUB7dXBzdHJlYW19CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ215LXNpZGVAe3V9IHJlc29sdmVzIHRvIGNvcnJlY3QgY29tbWl0JyAnCiAJZ2l0IGNoZWNrb3V0IHNpZGUgJiYKIAl0ZXN0X2NvbW1pdCA1ICYmCiAJKGNkIGNsb25lICYmIGdpdCBmZXRjaCkgJiYKLQl0ZXN0IDIgPSAiJChjb21taXRfc3ViamVjdCBteS1zaWRlKSIgJiYKLQl0ZXN0IDUgPSAiJChjb21taXRfc3ViamVjdCBteS1zaWRlQHt1fSkiCisJZWNobyAyID5leHBlY3QgJiYKKwljb21taXRfc3ViamVjdCBteS1zaWRlID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJZWNobyA1ID5leHBlY3QgJiYKKwljb21taXRfc3ViamVjdCBteS1zaWRlQHt1fSA+YWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25vdC10cmFja2luZ0B7dX0gZmFpbHMnICcKLQl0ZXN0X211c3RfZmFpbCBmdWxsX25hbWUgbm9uLXRyYWNraW5nQHt1fSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyBjbG9uZSByZXYtcGFyc2UgLS1zeW1ib2xpYy1mdWxsLW5hbWUgbm9uLXRyYWNraW5nQHt1fSAmJgogCShjZCBjbG9uZSAmJiBnaXQgY2hlY2tvdXQgLS1uby10cmFjayAtYiBub24tdHJhY2tpbmcpICYmCi0JdGVzdF9tdXN0X2ZhaWwgZnVsbF9uYW1lIG5vbi10cmFja2luZ0B7dX0KKwl0ZXN0X211c3RfZmFpbCBnaXQgLUMgY2xvbmUgcmV2LXBhcnNlIC0tc3ltYm9saWMtZnVsbC1uYW1lIG5vbi10cmFja2luZ0B7dX0KICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnPGJyYW5jaD5Ae3V9QHsxfSByZXNvbHZlcyBjb3JyZWN0bHknICcKIAl0ZXN0X2NvbW1pdCA2ICYmCiAJKGNkIGNsb25lICYmIGdpdCBmZXRjaCkgJiYKLQl0ZXN0IDUgPSAkKGNvbW1pdF9zdWJqZWN0IG15LXNpZGVAe3V9QHsxfSkgJiYKLQl0ZXN0IDUgPSAkKGNvbW1pdF9zdWJqZWN0IG15LXNpZGVAe1V9QHsxfSkKKwllY2hvIDUgPmV4cGVjdCAmJgorCWNvbW1pdF9zdWJqZWN0IG15LXNpZGVAe3V9QHsxfSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCWNvbW1pdF9zdWJqZWN0IG15LXNpZGVAe1V9QHsxfSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdAe3V9IHdpdGhvdXQgc3BlY2lmeWluZyBicmFuY2ggZmFpbHMgb24gYSBkZXRhY2hlZCBIRUFEJyAnCkBAIC0xMjksNyArMTM3LDcgQEAKIAlnaXQgYnJhbmNoIC10IG5ldyBteS1zaWRlQHt1fSAmJgogCWdpdCBtZXJnZSAtcyBvdXJzIG5ld0B7dX0gJiYKIAlnaXQgc2hvdyAtcyAtLXByZXR0eT10Zm9ybWF0OiVzID5hY3R1YWwgJiYKLQllY2hvICJNZXJnZSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoICR7c3F9b3JpZ2luL3NpZGUke3NxfSIgPmV4cGVjdCAmJgorCWVjaG8gIk1lcmdlIHJlbW90ZS10cmFja2luZyBicmFuY2ggJHtTUX1vcmlnaW4vc2lkZSR7U1F9IiA+ZXhwZWN0ICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogKQogJwpAQCAtMTUxLDEyICsxNTksMTQgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYnJhbmNoQHt1fSB3b3JrcyB3aGVuIHRyYWNraW5nIGEgbG9jYWwgYnJhbmNoJyAnCi0JdGVzdCByZWZzL2hlYWRzL21hc3RlciA9ICIkKGZ1bGxfbmFtZSBsb2NhbC1tYXN0ZXJAe3V9KSIKKwllY2hvIHJlZnMvaGVhZHMvbWFzdGVyID5leHBlY3QgJiYKKwlnaXQgLUMgY2xvbmUgcmV2LXBhcnNlIC0tc3ltYm9saWMtZnVsbC1uYW1lIGxvY2FsLW1hc3RlckB7dX0gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYnJhbmNoQHt1fSBlcnJvciBtZXNzYWdlIHdoZW4gbm8gdXBzdHJlYW0nICcKIAljYXQgPmV4cGVjdCA8PC1FT0YgJiYKLQlmYXRhbDogbm8gdXBzdHJlYW0gY29uZmlndXJlZCBmb3IgYnJhbmNoICR7c3F9bm9uLXRyYWNraW5nJHtzcX0KKwlmYXRhbDogbm8gdXBzdHJlYW0gY29uZmlndXJlZCBmb3IgYnJhbmNoICR7U1F9bm9uLXRyYWNraW5nJHtTUX0KIAlFT0YKIAllcnJvcl9tZXNzYWdlIG5vbi10cmFja2luZ0B7dX0gJiYKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0IGVycm9yCkBAIC0xNjQsNyArMTc0LDcgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnQHt1fSBlcnJvciBtZXNzYWdlIHdoZW4gbm8gdXBzdHJlYW0nICcKIAljYXQgPmV4cGVjdCA8PC1FT0YgJiYKLQlmYXRhbDogbm8gdXBzdHJlYW0gY29uZmlndXJlZCBmb3IgYnJhbmNoICR7c3F9bWFzdGVyJHtzcX0KKwlmYXRhbDogbm8gdXBzdHJlYW0gY29uZmlndXJlZCBmb3IgYnJhbmNoICR7U1F9bWFzdGVyJHtTUX0KIAlFT0YKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IEB7dX0gMj5hY3R1YWwgJiYKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbApAQCAtMTcyLDcgKzE4Miw3IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2JyYW5jaEB7dX0gZXJyb3IgbWVzc2FnZSB3aXRoIG1pc3NwZWx0IGJyYW5jaCcgJwogCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgotCWZhdGFsOiBubyBzdWNoIGJyYW5jaDogJHtzcX1uby1zdWNoLWJyYW5jaCR7c3F9CisJZmF0YWw6IG5vIHN1Y2ggYnJhbmNoOiAke1NRfW5vLXN1Y2gtYnJhbmNoJHtTUX0KIAlFT0YKIAllcnJvcl9tZXNzYWdlIG5vLXN1Y2gtYnJhbmNoQHt1fSAmJgogCXRlc3RfaTE4bmNtcCBleHBlY3QgZXJyb3IKQEAgLTE4OSw3ICsxOTksNyBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdicmFuY2hAe3V9IGVycm9yIG1lc3NhZ2UgaWYgdXBzdHJlYW0gYnJhbmNoIG5vdCBmZXRjaGVkJyAnCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCi0JZmF0YWw6IHVwc3RyZWFtIGJyYW5jaCAke3NxfXJlZnMvaGVhZHMvc2lkZSR7c3F9IG5vdCBzdG9yZWQgYXMgYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoCisJZmF0YWw6IHVwc3RyZWFtIGJyYW5jaCAke1NRfXJlZnMvaGVhZHMvc2lkZSR7U1F9IG5vdCBzdG9yZWQgYXMgYSByZW1vdGUtdHJhY2tpbmcgYnJhbmNoCiAJRU9GCiAJZXJyb3JfbWVzc2FnZSBiYWQtdXBzdHJlYW1Ae3V9ICYmCiAJdGVzdF9pMThuY21wIGV4cGVjdCBlcnJvcgpAQCAtMjA1LDM1ICsyMTUsMzcgQEAKIAogIyBtYWtlcyBzZW5zZSBpZiB0aGUgcHJldmlvdXMgb25lIHN1Y2NlZWRlZAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnQHt1fSB3b3JrcyB3aGVuIHRyYWNraW5nIGEgbG9jYWwgYnJhbmNoJyAnCi0JdGVzdCByZWZzL2hlYWRzL21hc3RlciA9ICIkKGZ1bGxfbmFtZSBAe3V9KSIKKwllY2hvIHJlZnMvaGVhZHMvbWFzdGVyID5leHBlY3QgJiYKKwlnaXQgLUMgY2xvbmUgcmV2LXBhcnNlIC0tc3ltYm9saWMtZnVsbC1uYW1lIEB7dX0gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAotY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKQotY2F0ID5leHBlY3QgPDxFT0YKLWNvbW1pdCAkY29tbWl0Ci1SZWZsb2c6IG1hc3RlckB7MH0gKEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4pCi1SZWZsb2cgbWVzc2FnZTogYnJhbmNoOiBDcmVhdGVkIGZyb20gSEVBRAotQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgotRGF0ZTogICBUaHUgQXByIDcgMTU6MTU6MTMgMjAwNSAtMDcwMAotCi0gICAgMwotRU9GCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLWcgb3RoZXJAe3V9JyAnCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCWNvbW1pdCAkY29tbWl0CisJUmVmbG9nOiBtYXN0ZXJAezB9IChDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+KQorCVJlZmxvZyBtZXNzYWdlOiBicmFuY2g6IENyZWF0ZWQgZnJvbSBIRUFECisJQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgorCURhdGU6ICAgVGh1IEFwciA3IDE1OjE1OjEzIDIwMDUgLTA3MDAKKworCSAgICAzCisJRU9GCiAJZ2l0IGxvZyAtMSAtZyBvdGhlckB7dX0gPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAotY2F0ID5leHBlY3QgPDxFT0YKLWNvbW1pdCAkY29tbWl0Ci1SZWZsb2c6IG1hc3RlckB7VGh1IEFwciA3IDE1OjE3OjEzIDIwMDUgLTA3MDB9IChDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+KQotUmVmbG9nIG1lc3NhZ2U6IGJyYW5jaDogQ3JlYXRlZCBmcm9tIEhFQUQKLUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KLURhdGU6ICAgVGh1IEFwciA3IDE1OjE1OjEzIDIwMDUgLTA3MDAKLQotICAgIDMKLUVPRgotCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLWcgb3RoZXJAe3V9QHtub3d9JyAnCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCWNvbW1pdCAkY29tbWl0CisJUmVmbG9nOiBtYXN0ZXJAe1RodSBBcHIgNyAxNToxNzoxMyAyMDA1IC0wNzAwfSAoQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPikKKwlSZWZsb2cgbWVzc2FnZTogYnJhbmNoOiBDcmVhdGVkIGZyb20gSEVBRAorCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KKwlEYXRlOiAgIFRodSBBcHIgNyAxNToxNToxMyAyMDA1IC0wNzAwCisKKwkgICAgMworCUVPRgogCWdpdCBsb2cgLTEgLWcgb3RoZXJAe3V9QHtub3d9ID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCmRpZmYgLS1naXQgYS90L3QxNTEyLXJldi1wYXJzZS1kaXNhbWJpZ3VhdGlvbi5zaCBiL3QvdDE1MTItcmV2LXBhcnNlLWRpc2FtYmlndWF0aW9uLnNoCmluZGV4IGU0ZDViNTYuLjE4ZmE2Y2YgMTAwNzU1Ci0tLSBhL3QvdDE1MTItcmV2LXBhcnNlLWRpc2FtYmlndWF0aW9uLnNoCisrKyBiL3QvdDE1MTItcmV2LXBhcnNlLWRpc2FtYmlndWF0aW9uLnNoCkBAIC0yODIsNyArMjgyLDcgQEAKIAkjIGNvbW1pdHMgY3JlYXRlZCBieSBjb21taXQtdHJlZSBpbiBlYXJsaWVyIHRlc3RzIHNoYXJlIGEKIAkjIGRpZmZlcmVudCBwcmVmaXguCiAJZ2l0IHJldi1wYXJzZSAtLWRpc2FtYmlndWF0ZT0wMDAwMDAwMDAgPmFjdHVhbCAmJgotCXRlc3QgJCh3YyAtbCA8YWN0dWFsKSA9IDE2ICYmCisJdGVzdF9saW5lX2NvdW50ID0gMTYgYWN0dWFsICYmCiAJdGVzdCAiJChzZWQgLWUgInMvXlwoLi4uLi4uLi4uXCkuKi9cMS8iIGFjdHVhbCB8IHNvcnQgLXUpIiA9IDAwMDAwMDAwMAogJwogCkBAIC0zMzksNyArMzM5LDcgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgQ19MT0NBTEVfT1VUUFVUICdhbWJpZ3VpdHkgaGludHMgcmVzcGVjdCB0eXBlJyAnCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSAwMDAwMDAwMDBee2NvbW1pdH0gMj5zdGRlcnIgJiYKIAlncmVwIF5oaW50OiBzdGRlcnIgPmhpbnRzICYmCi0JIyA1IGNvbW1pdHMsIDEgdGFnICh3aGljaCBpcyBhIGNvbW1pdGlzaCksIHBsdXMgaW50cm8gbGluZQorCSMgNSBjb21taXRzLCAxIHRhZyAod2hpY2ggaXMgYSBjb21taXR0aXNoKSwgcGx1cyBpbnRybyBsaW5lCiAJdGVzdF9saW5lX2NvdW50ID0gNyBoaW50cwogJwogCkBAIC0zODgsNCArMzg4LDE0IEBACiAJZG9uZQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjYXQtZmlsZSAtLWJhdGNoIGFuZCAtLWJhdGNoLWNoZWNrIHNob3cgYW1iaWd1b3VzJyAnCisJZWNobyAiMDAwMCBhbWJpZ3VvdXMiID5leHBlY3QgJiYKKwllY2hvIDAwMDAgfCBnaXQgY2F0LWZpbGUgLS1iYXRjaC1jaGVjayA+YWN0dWFsIDI+ZXJyICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCXRlc3RfaTE4bmdyZXAgaGludDogZXJyICYmCisJZWNobyAwMDAwIHwgZ2l0IGNhdC1maWxlIC0tYmF0Y2ggPmFjdHVhbCAyPmVyciAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKwl0ZXN0X2kxOG5ncmVwIGhpbnQ6IGVycgorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDE2MDAtaW5kZXguc2ggYi90L3QxNjAwLWluZGV4LnNoCmluZGV4IDQyOTYyZWQuLmI3YzMxYWEgMTAwNzU1Ci0tLSBhL3QvdDE2MDAtaW5kZXguc2gKKysrIGIvdC90MTYwMC1pbmRleC5zaApAQCAtNTksMTcgKzU5LDQyIEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdHSVRfSU5ERVhfVkVSU0lPTiB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgY29uZmlnJyAnCit0ZXN0X2luZGV4X3ZlcnNpb24gKCkgeworCUlOREVYX1ZFUlNJT05fQ09ORklHPSQxICYmCisJRkVBVFVSRV9NQU5ZX0ZJTEVTPSQyICYmCisJRU5WX1ZBUl9WRVJTSU9OPSQzCisJRVhQRUNURURfT1VUUFVUX1ZFUlNJT049JDQgJiYKIAkoCiAJCXJtIC1mIC5naXQvaW5kZXggJiYKLQkJR0lUX0lOREVYX1ZFUlNJT049NCAmJgotCQlleHBvcnQgR0lUX0lOREVYX1ZFUlNJT04gJiYKLQkJZ2l0IGNvbmZpZyAtLWFkZCBpbmRleC52ZXJzaW9uIDIgJiYKKwkJcm0gLWYgLmdpdC9jb25maWcgJiYKKwkJaWYgdGVzdCAiJElOREVYX1ZFUlNJT05fQ09ORklHIiAtbmUgMAorCQl0aGVuCisJCQlnaXQgY29uZmlnIC0tYWRkIGluZGV4LnZlcnNpb24gJElOREVYX1ZFUlNJT05fQ09ORklHCisJCWZpICYmCisJCWdpdCBjb25maWcgLS1hZGQgZmVhdHVyZS5tYW55RmlsZXMgJEZFQVRVUkVfTUFOWV9GSUxFUworCQlpZiB0ZXN0ICIkRU5WX1ZBUl9WRVJTSU9OIiAtbmUgMAorCQl0aGVuCisJCQlHSVRfSU5ERVhfVkVSU0lPTj0kRU5WX1ZBUl9WRVJTSU9OICYmCisJCQlleHBvcnQgR0lUX0lOREVYX1ZFUlNJT04KKwkJZWxzZQorCQkJdW5zZXQgR0lUX0lOREVYX1ZFUlNJT04KKwkJZmkgJiYKIAkJZ2l0IGFkZCBhIDI+JjEgJiYKLQkJZWNobyA0ID5leHBlY3QgJiYKKwkJZWNobyAkRVhQRUNURURfT1VUUFVUX1ZFUlNJT04gPmV4cGVjdCAmJgogCQl0ZXN0LXRvb2wgaW5kZXgtdmVyc2lvbiA8LmdpdC9pbmRleCA+YWN0dWFsICYmCiAJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKIAkpCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2luZGV4IHZlcnNpb24gY29uZmlnIHByZWNlZGVuY2UnICcKKwl0ZXN0X2luZGV4X3ZlcnNpb24gMCBmYWxzZSAwIDIgJiYKKwl0ZXN0X2luZGV4X3ZlcnNpb24gMiBmYWxzZSAwIDIgJiYKKwl0ZXN0X2luZGV4X3ZlcnNpb24gMyBmYWxzZSAwIDIgJiYKKwl0ZXN0X2luZGV4X3ZlcnNpb24gNCBmYWxzZSAwIDQgJiYKKwl0ZXN0X2luZGV4X3ZlcnNpb24gMiBmYWxzZSA0IDQgJiYKKwl0ZXN0X2luZGV4X3ZlcnNpb24gMiB0cnVlIDAgMiAmJgorCXRlc3RfaW5kZXhfdmVyc2lvbiAwIHRydWUgMCA0ICYmCisJdGVzdF9pbmRleF92ZXJzaW9uIDAgdHJ1ZSAyIDIKICcKIAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QxNzAwLXNwbGl0LWluZGV4LnNoIGIvdC90MTcwMC1zcGxpdC1pbmRleC5zaAppbmRleCA0NjY3ZTFhLi4xMmE1NTY4IDEwMDc1NQotLS0gYS90L3QxNzAwLXNwbGl0LWluZGV4LnNoCisrKyBiL3QvdDE3MDAtc3BsaXQtaW5kZXguc2gKQEAgLTIwLDYgKzIwLDIyIEBACiAJdGVzdC10b29sIGNobXRpbWUgPS01ICIkMSIKIH0KIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICcKKwl0ZXN0X29pZF9jYWNoZSA8PC1FT0YKKwlvd25fdjMgc2hhMTo4Mjk5YjBiY2QxYWMzNjRlNWYxZDc3NjhlZmI2MmZhMmRhNzlhMzM5CisJb3duX3YzIHNoYTI1NjozOGE2ZDI5MjVlM2VjZWVjMzNhZDdiMzRjYmZmNGUwMDg2Y2FhMGRhZjI4ZjMxZTUxZjViZDk0YjRhN2FmODZiCisKKwliYXNlX3YzIHNoYTE6MzlkODkwMTM5ZWU1MzU2YzdlZjU3MjIxNmNlYmNkMjdhYTQxZjlkZgorCWJhc2VfdjMgc2hhMjU2OmM5YmFlYWRmOTA1MTEyYmY2YzE3YWVmYmQ3ZDAyMjY3YWZkNzBkZWQ2MTNjMzBjYWZlZDJkNDBjYjUwNmUxZWQKKworCW93bl92NCBzaGExOjQzMmVmNGI2M2YzMjE5Mzk4NGYzMzk0MzFmZDUwY2E3OTY0OTM1NjkKKwlvd25fdjQgc2hhMjU2OjY3MzhhYzYzMTljMjViNjk0YWZhN2JjYzMxM2RlYjE4MmQxYTU5YjY4YmY3YTQ3YjQyOTZkZTgzNDc4YzA0MjAKKworCWJhc2VfdjQgc2hhMTo1MDg4NTFhN2YwZGZhODY5MWU5ZjY5YzdmMDU1ODY1Mzg5MDEyNDkxCisJYmFzZV92NCBzaGEyNTY6MzE3N2Q0YWRmZGQ0YjY5MDRmN2U5MjFkOTFkNzE1YTQ3MWMwZGRlN2NmNmE0YmJhNTc0OTI3ZjAyYjY5OTUwOAorCUVPRgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdlbmFibGUgc3BsaXQgaW5kZXgnICcKIAlnaXQgY29uZmlnIHNwbGl0SW5kZXgubWF4UGVyY2VudENoYW5nZSAxMDAgJiYKIAlnaXQgdXBkYXRlLWluZGV4IC0tc3BsaXQtaW5kZXggJiYKQEAgLTI5LDExICs0NSwxMSBAQAogCSMgTkVFRFNXT1JLOiBTdG9wIGhhcmQtY29kaW5nIGNoZWNrc3Vtcy4KIAlpZiB0ZXN0ICIkaW5kZXh2ZXJzaW9uIiA9ICI0IgogCXRoZW4KLQkJb3duPTQzMmVmNGI2M2YzMjE5Mzk4NGYzMzk0MzFmZDUwY2E3OTY0OTM1NjkKLQkJYmFzZT01MDg4NTFhN2YwZGZhODY5MWU5ZjY5YzdmMDU1ODY1Mzg5MDEyNDkxCisJCW93bj0kKHRlc3Rfb2lkIG93bl92NCkKKwkJYmFzZT0kKHRlc3Rfb2lkIGJhc2VfdjQpCiAJZWxzZQotCQlvd249ODI5OWIwYmNkMWFjMzY0ZTVmMWQ3NzY4ZWZiNjJmYTJkYTc5YTMzOQotCQliYXNlPTM5ZDg5MDEzOWVlNTM1NmM3ZWY1NzIyMTZjZWJjZDI3YWE0MWY5ZGYKKwkJb3duPSQodGVzdF9vaWQgb3duX3YzKQorCQliYXNlPSQodGVzdF9vaWQgYmFzZV92MykKIAlmaSAmJgogCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCkBAIC05OSwxNyArMTE1LDE4IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmeSBvcmlnaW5hbCBmaWxlLCBiYXNlIGluZGV4IHVudG91Y2hlZCcgJwogCWVjaG8gbW9kaWZpZWQgfCBjcmVhdGVfbm9uX3JhY3lfZmlsZSBvbmUgJiYKKwlmaWxlMV9ibG9iPSQoZ2l0IGhhc2gtb2JqZWN0IG9uZSkgJiYKIAlnaXQgdXBkYXRlLWluZGV4IG9uZSAmJgogCWdpdCBscy1maWxlcyAtLXN0YWdlID5scy1maWxlcy5hY3R1YWwgJiYKIAljYXQgPmxzLWZpbGVzLmV4cGVjdCA8PC1FT0YgJiYKLQkxMDA2NDQgMmUwOTk2MDAwYjdlOTAxOWVhYmNhZDI5MzkxYmYwZjVjNzcwMmYwYiAwCW9uZQorCTEwMDY0NCAkZmlsZTFfYmxvYiAwCW9uZQogCUVPRgogCXRlc3RfY21wIGxzLWZpbGVzLmV4cGVjdCBscy1maWxlcy5hY3R1YWwgJiYKIAogCXRlc3QtdG9vbCBkdW1wLXNwbGl0LWluZGV4IC5naXQvaW5kZXggfCBzZWQgIi9eb3duL2QiID5hY3R1YWwgJiYKIAlxX3RvX3RhYiA+ZXhwZWN0IDw8LUVPRiAmJgogCSRCQVNFCi0JMTAwNjQ0IDJlMDk5NjAwMGI3ZTkwMTllYWJjYWQyOTM5MWJmMGY1Yzc3MDJmMGIgMFEKKwkxMDA2NDQgJGZpbGUxX2Jsb2IgMFEKIAlyZXBsYWNlbWVudHM6IDAKIAlkZWxldGlvbnM6CiAJRU9GCkBAIC0xMjEsNyArMTM4LDcgQEAKIAlnaXQgdXBkYXRlLWluZGV4IC0tYWRkIHR3byAmJgogCWdpdCBscy1maWxlcyAtLXN0YWdlID5scy1maWxlcy5hY3R1YWwgJiYKIAljYXQgPmxzLWZpbGVzLmV4cGVjdCA8PC1FT0YgJiYKLQkxMDA2NDQgMmUwOTk2MDAwYjdlOTAxOWVhYmNhZDI5MzkxYmYwZjVjNzcwMmYwYiAwCW9uZQorCTEwMDY0NCAkZmlsZTFfYmxvYiAwCW9uZQogCTEwMDY0NCAkRU1QVFlfQkxPQiAwCXR3bwogCUVPRgogCXRlc3RfY21wIGxzLWZpbGVzLmV4cGVjdCBscy1maWxlcy5hY3R1YWwgJiYKQEAgLTEyOSw3ICsxNDYsNyBAQAogCXRlc3QtdG9vbCBkdW1wLXNwbGl0LWluZGV4IC5naXQvaW5kZXggfCBzZWQgIi9eb3duL2QiID5hY3R1YWwgJiYKIAlxX3RvX3RhYiA+ZXhwZWN0IDw8LUVPRiAmJgogCSRCQVNFCi0JMTAwNjQ0IDJlMDk5NjAwMGI3ZTkwMTllYWJjYWQyOTM5MWJmMGY1Yzc3MDJmMGIgMFEKKwkxMDA2NDQgJGZpbGUxX2Jsb2IgMFEKIAkxMDA2NDQgJEVNUFRZX0JMT0IgMAl0d28KIAlyZXBsYWNlbWVudHM6IDAKIAlkZWxldGlvbnM6CkBAIC0xNDEsMTQgKzE1OCwxNCBAQAogCWdpdCB1cGRhdGUtaW5kZXggLS1mb3JjZS1yZW1vdmUgdHdvICYmCiAJZ2l0IGxzLWZpbGVzIC0tc3RhZ2UgPmxzLWZpbGVzLmFjdHVhbCAmJgogCWNhdCA+bHMtZmlsZXMuZXhwZWN0IDw8LUVPRiAmJgotCTEwMDY0NCAyZTA5OTYwMDBiN2U5MDE5ZWFiY2FkMjkzOTFiZjBmNWM3NzAyZjBiIDAJb25lCisJMTAwNjQ0ICRmaWxlMV9ibG9iIDAJb25lCiAJRU9GCiAJdGVzdF9jbXAgbHMtZmlsZXMuZXhwZWN0IGxzLWZpbGVzLmFjdHVhbCAmJgogCiAJdGVzdC10b29sIGR1bXAtc3BsaXQtaW5kZXggLmdpdC9pbmRleCB8IHNlZCAiL15vd24vZCIgPmFjdHVhbCAmJgogCXFfdG9fdGFiID5leHBlY3QgPDwtRU9GICYmCiAJJEJBU0UKLQkxMDA2NDQgMmUwOTk2MDAwYjdlOTAxOWVhYmNhZDI5MzkxYmYwZjVjNzcwMmYwYiAwUQorCTEwMDY0NCAkZmlsZTFfYmxvYiAwUQogCXJlcGxhY2VtZW50czogMAogCWRlbGV0aW9uczoKIAlFT0YKQEAgLTIzNyw5ICsyNTQsOSBAQAogCWdpdCB1cGRhdGUtaW5kZXggLS1hZGQgdGhyZWUgJiYKIAlnaXQgbHMtZmlsZXMgLS1zdGFnZSA+bHMtZmlsZXMuYWN0dWFsICYmCiAJY2F0ID5scy1maWxlcy5leHBlY3QgPDwtRU9GICYmCi0JMTAwNjQ0IGU2OWRlMjliYjJkMWQ2NDM0YjhiMjlhZTc3NWFkOGMyZTQ4YzUzOTEgMAlvbmUKLQkxMDA2NDQgZTY5ZGUyOWJiMmQxZDY0MzRiOGIyOWFlNzc1YWQ4YzJlNDhjNTM5MSAwCXRocmVlCi0JMTAwNjQ0IGU2OWRlMjliYjJkMWQ2NDM0YjhiMjlhZTc3NWFkOGMyZTQ4YzUzOTEgMAl0d28KKwkxMDA2NDQgJEVNUFRZX0JMT0IgMAlvbmUKKwkxMDA2NDQgJEVNUFRZX0JMT0IgMAl0aHJlZQorCTEwMDY0NCAkRU1QVFlfQkxPQiAwCXR3bwogCUVPRgogCXRlc3RfY21wIGxzLWZpbGVzLmV4cGVjdCBscy1maWxlcy5hY3R1YWwgJiYKIAlCQVNFPSQodGVzdC10b29sIGR1bXAtc3BsaXQtaW5kZXggLmdpdC9pbmRleCB8IGdyZXAgIl5iYXNlIikgJiYKQEAgLTI1Nyw4ICsyNzQsOCBAQAogCWdpdCB1cGRhdGUtaW5kZXggLS1mb3JjZS1yZW1vdmUgdGhyZWUgJiYKIAlnaXQgbHMtZmlsZXMgLS1zdGFnZSA+bHMtZmlsZXMuYWN0dWFsICYmCiAJY2F0ID5scy1maWxlcy5leHBlY3QgPDwtRU9GICYmCi0JMTAwNjQ0IGU2OWRlMjliYjJkMWQ2NDM0YjhiMjlhZTc3NWFkOGMyZTQ4YzUzOTEgMAlvbmUKLQkxMDA2NDQgZTY5ZGUyOWJiMmQxZDY0MzRiOGIyOWFlNzc1YWQ4YzJlNDhjNTM5MSAwCXR3bworCTEwMDY0NCAkRU1QVFlfQkxPQiAwCW9uZQorCTEwMDY0NCAkRU1QVFlfQkxPQiAwCXR3bwogCUVPRgogCXRlc3RfY21wIGxzLWZpbGVzLmV4cGVjdCBscy1maWxlcy5hY3R1YWwgJiYKIAl0ZXN0LXRvb2wgZHVtcC1zcGxpdC1pbmRleCAuZ2l0L2luZGV4IHwgc2VkICIvXm93bi9kIiA+YWN0dWFsICYmCkBAIC0yODUsNyArMzAyLDcgQEAKIAl0ZXN0LXRvb2wgZHVtcC1zcGxpdC1pbmRleCAuZ2l0L2luZGV4IHwgc2VkICIvXm93bi9kIiA+YWN0dWFsICYmCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCiAJJEJBU0UKLQkxMDA2NDQgZTY5ZGUyOWJiMmQxZDY0MzRiOGIyOWFlNzc1YWQ4YzJlNDhjNTM5MSAwCWZvdXIKKwkxMDA2NDQgJEVNUFRZX0JMT0IgMAlmb3VyCiAJcmVwbGFjZW1lbnRzOgogCWRlbGV0aW9uczoKIAlFT0YKQEAgLTMwOSw3ICszMjYsNyBAQAogCXRlc3QtdG9vbCBkdW1wLXNwbGl0LWluZGV4IC5naXQvaW5kZXggfCBzZWQgIi9eb3duL2QiID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdCA8PC1FT0YgJiYKIAkkQkFTRQotCTEwMDY0NCBlNjlkZTI5YmIyZDFkNjQzNGI4YjI5YWU3NzVhZDhjMmU0OGM1MzkxIDAJc2l4CisJMTAwNjQ0ICRFTVBUWV9CTE9CIDAJc2l4CiAJcmVwbGFjZW1lbnRzOgogCWRlbGV0aW9uczoKIAlFT0YKQEAgLTQ3Miw0ICs0ODksMjIgQEAKIAl0ZXN0X2xpbmVfY291bnQgPSAwIGNhY2hlLXRyZWUub3V0CiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RvIG5vdCByZWZyZXNoIG51bGwgYmFzZSBpbmRleCcgJworCXRlc3RfY3JlYXRlX3JlcG8gbWVyZ2UgJiYKKwkoCisJCWNkIG1lcmdlICYmCisJCXRlc3RfY29tbWl0IGluaXRpYWwgJiYKKwkJZ2l0IGNoZWNrb3V0IC1iIHNpZGUtYnJhbmNoICYmCisJCXRlc3RfY29tbWl0IGV4dHJhICYmCisJCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwkJZ2l0IHVwZGF0ZS1pbmRleCAtLXNwbGl0LWluZGV4ICYmCisJCXRlc3RfY29tbWl0IG1vcmUgJiYKKwkJIyBtdXN0IG5vdCB3cml0ZSBhIG5ldyBzaGFyZWluZGV4LCBvciB3ZSB3b250IGNhdGNoIHRoZSBwcm9ibGVtCisJCWdpdCAtYyBzcGxpdEluZGV4Lm1heFBlcmNlbnRDaGFuZ2U9MTAwIG1lcmdlIC0tbm8tZWRpdCBzaWRlLWJyYW5jaCAyPmVyciAmJgorCQkjIGkuZS4gZG8gbm90IGV4cGVjdCB3YXJuaW5ncyBsaWtlCisJCSMgY291bGQgbm90IGZyZXNoZW4gc2hhcmVkIGluZGV4IC4uLi9zaGFyZWluZGV4LjAwMDAwLi4uCisJCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIKKwkpCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MjAxNC1zd2l0Y2guc2ggYi90L3QyMDE0LWNoZWNrb3V0LXN3aXRjaC5zaApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gdC90MjAxNC1zd2l0Y2guc2gKcmVuYW1lIHRvIHQvdDIwMTQtY2hlY2tvdXQtc3dpdGNoLnNoCmRpZmYgLS1naXQgYS90L3QyMDE4LWNoZWNrb3V0LWJyYW5jaC5zaCBiL3QvdDIwMTgtY2hlY2tvdXQtYnJhbmNoLnNoCmluZGV4IDIxMzFmYjIuLmJiY2E3ZWYgMTAwNzU1Ci0tLSBhL3QvdDIwMTgtY2hlY2tvdXQtYnJhbmNoLnNoCisrKyBiL3QvdDIwMTgtY2hlY2tvdXQtYnJhbmNoLnNoCkBAIC0xLDUwICsxLDc2IEBACiAjIS9iaW4vc2gKIAotdGVzdF9kZXNjcmlwdGlvbj0nY2hlY2tvdXQgJwordGVzdF9kZXNjcmlwdGlvbj0nY2hlY2tvdXQnCiAKIC4gLi90ZXN0LWxpYi5zaAogCi0jIEFyZ3VtZW50czogPGJyYW5jaD4gPHNoYT4gWzxjaGVja291dCBvcHRpb25zPl0KKyMgQXJndW1lbnRzOiBbIV0gPGJyYW5jaD4gPG9pZD4gWzxjaGVja291dCBvcHRpb25zPl0KICMKICMgUnVucyAiZ2l0IGNoZWNrb3V0IiB0byBzd2l0Y2ggdG8gPGJyYW5jaD4sIHRlc3RpbmcgdGhhdAogIwogIyAgIDEpIHdlIGFyZSBvbiB0aGUgc3BlY2lmaWVkIGJyYW5jaCwgPGJyYW5jaD47Ci0jICAgMikgSEVBRCBpcyA8c2hhPjsgaWYgPHNoYT4gaXMgbm90IHNwZWNpZmllZCwgdGhlIG9sZCBIRUFEIGlzIHVzZWQuCisjICAgMikgSEVBRCBpcyA8b2lkPjsgaWYgPG9pZD4gaXMgbm90IHNwZWNpZmllZCwgdGhlIG9sZCBIRUFEIGlzIHVzZWQuCiAjCiAjIElmIDxjaGVja291dCBvcHRpb25zPiBpcyBub3Qgc3BlY2lmaWVkLCAiZ2l0IGNoZWNrb3V0IiBpcyBydW4gd2l0aCAtYi4KLWRvX2NoZWNrb3V0KCkgeworIworIyBJZiB0aGUgZmlyc3QgYXJndW1lbnQgaXMgYCFgLCAiZ2l0IGNoZWNrb3V0IiBpcyBleHBlY3RlZCB0byBmYWlsIHdoZW4KKyMgaXQgaXMgcnVuLgorZG9fY2hlY2tvdXQgKCkgeworCXNob3VsZF9mYWlsPSAmJgorCWlmIHRlc3QgIngkMSIgPSAieCEiCisJdGhlbgorCQlzaG91bGRfZmFpbD15ZXMgJiYKKwkJc2hpZnQKKwlmaSAmJgogCWV4cF9icmFuY2g9JDEgJiYKIAlleHBfcmVmPSJyZWZzL2hlYWRzLyRleHBfYnJhbmNoIiAmJgogCi0JIyBpZiA8c2hhPiBpcyBub3Qgc3BlY2lmaWVkLCB1c2UgSEVBRC4KLQlleHBfc2hhPSR7MjotJChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IEhFQUQpfSAmJgorCSMgaWYgPG9pZD4gaXMgbm90IHNwZWNpZmllZCwgdXNlIEhFQUQuCisJZXhwX29pZD0kezI6LSQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBIRUFEKX0gJiYKIAogCSMgZGVmYXVsdCBvcHRpb25zIGZvciBnaXQgY2hlY2tvdXQ6IC1iCi0JaWYgWyAteiAiJDMiIF07IHRoZW4KKwlpZiB0ZXN0IC16ICIkMyIKKwl0aGVuCiAJCW9wdHM9Ii1iIgogCWVsc2UKIAkJb3B0cz0iJDMiCiAJZmkKIAotCWdpdCBjaGVja291dCAkb3B0cyAkZXhwX2JyYW5jaCAkZXhwX3NoYSAmJgotCi0JdGVzdCAkZXhwX3JlZiA9ICQoZ2l0IHJldi1wYXJzZSAtLXN5bWJvbGljLWZ1bGwtbmFtZSBIRUFEKSAmJgotCXRlc3QgJGV4cF9zaGEgPSAkKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgSEVBRCkKKwlpZiB0ZXN0IC1uICIkc2hvdWxkX2ZhaWwiCisJdGhlbgorCQl0ZXN0X211c3RfZmFpbCBnaXQgY2hlY2tvdXQgJG9wdHMgJGV4cF9icmFuY2ggJGV4cF9vaWQKKwllbHNlCisJCWdpdCBjaGVja291dCAkb3B0cyAkZXhwX2JyYW5jaCAkZXhwX29pZCAmJgorCQllY2hvICIkZXhwX3JlZiIgPnJlZi5leHBlY3QgJiYKKwkJZ2l0IHJldi1wYXJzZSAtLXN5bWJvbGljLWZ1bGwtbmFtZSBIRUFEID5yZWYuYWN0dWFsICYmCisJCXRlc3RfY21wIHJlZi5leHBlY3QgcmVmLmFjdHVhbCAmJgorCQllY2hvICIkZXhwX29pZCIgPm9pZC5leHBlY3QgJiYKKwkJZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBIRUFEID5vaWQuYWN0dWFsICYmCisJCXRlc3RfY21wIG9pZC5leHBlY3Qgb2lkLmFjdHVhbAorCWZpCiB9CiAKLXRlc3RfZGlydHlfdW5tZXJnZWFibGUoKSB7Ci0JISBnaXQgZGlmZiAtLWV4aXQtY29kZSA+L2Rldi9udWxsCit0ZXN0X2RpcnR5X3VubWVyZ2VhYmxlICgpIHsKKwl0ZXN0X2V4cGVjdF9jb2RlIDEgZ2l0IGRpZmYgLS1leGl0LWNvZGUKIH0KIAotc2V0dXBfZGlydHlfdW5tZXJnZWFibGUoKSB7Cit0ZXN0X2RpcnR5X3VubWVyZ2VhYmxlX2Rpc2NhcmRzX2NoYW5nZXMgKCkgeworCWdpdCBkaWZmIC0tZXhpdC1jb2RlCit9CisKK3NldHVwX2RpcnR5X3VubWVyZ2VhYmxlICgpIHsKIAllY2hvID4+ZmlsZTEgY2hhbmdlMgogfQogCi10ZXN0X2RpcnR5X21lcmdlYWJsZSgpIHsKLQkhIGdpdCBkaWZmIC0tY2FjaGVkIC0tZXhpdC1jb2RlID4vZGV2L251bGwKK3Rlc3RfZGlydHlfbWVyZ2VhYmxlICgpIHsKKwl0ZXN0X2V4cGVjdF9jb2RlIDEgZ2l0IGRpZmYgLS1jYWNoZWQgLS1leGl0LWNvZGUKIH0KIAotc2V0dXBfZGlydHlfbWVyZ2VhYmxlKCkgewordGVzdF9kaXJ0eV9tZXJnZWFibGVfZGlzY2FyZHNfY2hhbmdlcyAoKSB7CisJZ2l0IGRpZmYgLS1jYWNoZWQgLS1leGl0LWNvZGUKK30KKworc2V0dXBfZGlydHlfbWVyZ2VhYmxlICgpIHsKIAllY2hvID5maWxlMiBmaWxlMiAmJgogCWdpdCBhZGQgZmlsZTIKIH0KQEAgLTYwLDM4ICs4Niw0NyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja291dCAtYiB0byBhIG5ldyBicmFuY2gsIHNldCB0byBIRUFEJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICIKKwkJZ2l0IGNoZWNrb3V0IGJyYW5jaDEgJiYKKwkJdGVzdF9taWdodF9mYWlsIGdpdCBicmFuY2ggLUQgYnJhbmNoMiIgJiYKIAlkb19jaGVja291dCBicmFuY2gyCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrb3V0IC1iIHRvIGEgbmV3IGJyYW5jaCwgc2V0IHRvIGFuIGV4cGxpY2l0IHJlZicgJwotCWdpdCBjaGVja291dCBicmFuY2gxICYmCi0JZ2l0IGJyYW5jaCAtRCBicmFuY2gyICYmCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja291dCAtYiB0byBhIG1lcmdlIGJhc2UnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgIgorCQlnaXQgY2hlY2tvdXQgYnJhbmNoMSAmJgorCQl0ZXN0X21pZ2h0X2ZhaWwgZ2l0IGJyYW5jaCAtRCBicmFuY2gyIiAmJgorCWdpdCBjaGVja291dCAtYiBicmFuY2gyIGJyYW5jaDEuLi4KKycKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2tvdXQgLWIgdG8gYSBuZXcgYnJhbmNoLCBzZXQgdG8gYW4gZXhwbGljaXQgcmVmJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICIKKwkJZ2l0IGNoZWNrb3V0IGJyYW5jaDEgJiYKKwkJdGVzdF9taWdodF9mYWlsIGdpdCBicmFuY2ggLUQgYnJhbmNoMiIgJiYKIAlkb19jaGVja291dCBicmFuY2gyICRIRUFEMQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja291dCAtYiB0byBhIG5ldyBicmFuY2ggd2l0aCB1bm1lcmdlYWJsZSBjaGFuZ2VzIGZhaWxzJyAnCi0JZ2l0IGNoZWNrb3V0IGJyYW5jaDEgJiYKLQotCSMgY2xlYW4gdXAgZnJvbSBwcmV2aW91cyB0ZXN0Ci0JZ2l0IGJyYW5jaCAtRCBicmFuY2gyICYmCi0KIAlzZXR1cF9kaXJ0eV91bm1lcmdlYWJsZSAmJgotCXRlc3RfbXVzdF9mYWlsIGRvX2NoZWNrb3V0IGJyYW5jaDIgJEhFQUQxICYmCisJZG9fY2hlY2tvdXQgISBicmFuY2gyICRIRUFEMSAmJgogCXRlc3RfZGlydHlfdW5tZXJnZWFibGUKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2tvdXQgLWYgLWIgdG8gYSBuZXcgYnJhbmNoIHdpdGggdW5tZXJnZWFibGUgY2hhbmdlcyBkaXNjYXJkcyBjaGFuZ2VzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICIKKwkJZ2l0IGNoZWNrb3V0IGJyYW5jaDEgJiYKKwkJdGVzdF9taWdodF9mYWlsIGdpdCBicmFuY2ggLUQgYnJhbmNoMiIgJiYKKwogCSMgc3RpbGwgZGlydHkgYW5kIG9uIGJyYW5jaDEKIAlkb19jaGVja291dCBicmFuY2gyICRIRUFEMSAiLWYgLWIiICYmCi0JdGVzdF9tdXN0X2ZhaWwgdGVzdF9kaXJ0eV91bm1lcmdlYWJsZQorCXRlc3RfZGlydHlfdW5tZXJnZWFibGVfZGlzY2FyZHNfY2hhbmdlcwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja291dCAtYiB0byBhIG5ldyBicmFuY2ggcHJlc2VydmVzIG1lcmdlYWJsZSBjaGFuZ2VzJyAnCi0JZ2l0IGNoZWNrb3V0IGJyYW5jaDEgJiYKLQotCSMgY2xlYW4gdXAgZnJvbSBwcmV2aW91cyB0ZXN0Ci0JZ2l0IGJyYW5jaCAtRCBicmFuY2gyICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkICIKKwkJZ2l0IHJlc2V0IC0taGFyZCAmJgorCQlnaXQgY2hlY2tvdXQgYnJhbmNoMSAmJgorCQl0ZXN0X21pZ2h0X2ZhaWwgZ2l0IGJyYW5jaCAtRCBicmFuY2gyIiAmJgogCiAJc2V0dXBfZGlydHlfbWVyZ2VhYmxlICYmCiAJZG9fY2hlY2tvdXQgYnJhbmNoMiAkSEVBRDEgJiYKQEAgLTk5LDI3ICsxMzQsMTggQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2tvdXQgLWYgLWIgdG8gYSBuZXcgYnJhbmNoIHdpdGggbWVyZ2VhYmxlIGNoYW5nZXMgZGlzY2FyZHMgY2hhbmdlcycgJwotCSMgY2xlYW4gdXAgZnJvbSBwcmV2aW91cyB0ZXN0Ci0JZ2l0IHJlc2V0IC0taGFyZCAmJgotCi0JZ2l0IGNoZWNrb3V0IGJyYW5jaDEgJiYKLQotCSMgY2xlYW4gdXAgZnJvbSBwcmV2aW91cyB0ZXN0Ci0JZ2l0IGJyYW5jaCAtRCBicmFuY2gyICYmCi0KKwl0ZXN0X3doZW5fZmluaXNoZWQgZ2l0IHJlc2V0IC0taGFyZCBIRUFEICYmCiAJc2V0dXBfZGlydHlfbWVyZ2VhYmxlICYmCiAJZG9fY2hlY2tvdXQgYnJhbmNoMiAkSEVBRDEgIi1mIC1iIiAmJgotCXRlc3RfbXVzdF9mYWlsIHRlc3RfZGlydHlfbWVyZ2VhYmxlCisJdGVzdF9kaXJ0eV9tZXJnZWFibGVfZGlzY2FyZHNfY2hhbmdlcwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja291dCAtYiB0byBhbiBleGlzdGluZyBicmFuY2ggZmFpbHMnICcKLQlnaXQgcmVzZXQgLS1oYXJkIEhFQUQgJiYKLQotCXRlc3RfbXVzdF9mYWlsIGRvX2NoZWNrb3V0IGJyYW5jaDIgJEhFQUQyCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCByZXNldCAtLWhhcmQgSEVBRCAmJgorCWRvX2NoZWNrb3V0ICEgYnJhbmNoMiAkSEVBRDIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2tvdXQgLWIgdG8gQHstMX0gZmFpbHMgd2l0aCB0aGUgcmlnaHQgYnJhbmNoIG5hbWUnICcKLQlnaXQgcmVzZXQgLS1oYXJkIEhFQUQgJiYKIAlnaXQgY2hlY2tvdXQgYnJhbmNoMSAmJgogCWdpdCBjaGVja291dCBicmFuY2gyICYmCiAJZWNobyAgPmV4cGVjdCAiZmF0YWw6IEEgYnJhbmNoIG5hbWVkICdcJydicmFuY2gxJ1wnJyBhbHJlYWR5IGV4aXN0cy4iICYmCkBAIC0xMzMsOCArMTU5LDE1IEBACiAJZG9fY2hlY2tvdXQgYnJhbmNoMiAiIiAtQgogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja291dCAtQiB0byBhIG1lcmdlIGJhc2UnICcKKwlnaXQgY2hlY2tvdXQgYnJhbmNoMSAmJgorCisJZ2l0IGNoZWNrb3V0IC1CIGJyYW5jaDIgYnJhbmNoMS4uLgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja291dCAtQiB0byBhbiBleGlzdGluZyBicmFuY2ggZnJvbSBkZXRhY2hlZCBIRUFEIHJlc2V0cyBicmFuY2ggdG8gSEVBRCcgJwotCWdpdCBjaGVja291dCAkKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgSEVBRCkgJiYKKwloZWFkPSQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBIRUFEKSAmJgorCWdpdCBjaGVja291dCAiJGhlYWQiICYmCiAKIAlkb19jaGVja291dCBicmFuY2gyICIiIC1CCiAnCkBAIC0xNDksMTcgKzE4MiwxOCBAQAogCWdpdCBjaGVja291dCBicmFuY2gxICYmCiAKIAlzZXR1cF9kaXJ0eV91bm1lcmdlYWJsZSAmJgotCXRlc3RfbXVzdF9mYWlsIGRvX2NoZWNrb3V0IGJyYW5jaDIgJEhFQUQxIC1CICYmCisJZG9fY2hlY2tvdXQgISBicmFuY2gyICRIRUFEMSAtQiAmJgogCXRlc3RfZGlydHlfdW5tZXJnZWFibGUKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2tvdXQgLWYgLUIgdG8gYW4gZXhpc3RpbmcgYnJhbmNoIHdpdGggdW5tZXJnZWFibGUgY2hhbmdlcyBkaXNjYXJkcyBjaGFuZ2VzJyAnCiAJIyBzdGlsbCBkaXJ0eSBhbmQgb24gYnJhbmNoMQogCWRvX2NoZWNrb3V0IGJyYW5jaDIgJEhFQUQxICItZiAtQiIgJiYKLQl0ZXN0X211c3RfZmFpbCB0ZXN0X2RpcnR5X3VubWVyZ2VhYmxlCisJdGVzdF9kaXJ0eV91bm1lcmdlYWJsZV9kaXNjYXJkc19jaGFuZ2VzCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrb3V0IC1CIHRvIGFuIGV4aXN0aW5nIGJyYW5jaCBwcmVzZXJ2ZXMgbWVyZ2VhYmxlIGNoYW5nZXMnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgZ2l0IHJlc2V0IC0taGFyZCAmJgogCWdpdCBjaGVja291dCBicmFuY2gxICYmCiAKIAlzZXR1cF9kaXJ0eV9tZXJnZWFibGUgJiYKQEAgLTE2OCwxNCArMjAyLDExIEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrb3V0IC1mIC1CIHRvIGFuIGV4aXN0aW5nIGJyYW5jaCB3aXRoIG1lcmdlYWJsZSBjaGFuZ2VzIGRpc2NhcmRzIGNoYW5nZXMnICcKLQkjIGNsZWFuIHVwIGZyb20gcHJldmlvdXMgdGVzdAotCWdpdCByZXNldCAtLWhhcmQgJiYKLQogCWdpdCBjaGVja291dCBicmFuY2gxICYmCiAKIAlzZXR1cF9kaXJ0eV9tZXJnZWFibGUgJiYKIAlkb19jaGVja291dCBicmFuY2gyICRIRUFEMSAiLWYgLUIiICYmCi0JdGVzdF9tdXN0X2ZhaWwgdGVzdF9kaXJ0eV9tZXJnZWFibGUKKwl0ZXN0X2RpcnR5X21lcmdlYWJsZV9kaXNjYXJkc19jaGFuZ2VzCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrb3V0IC1iIDxkZXNjcmliZT4nICcKQEAgLTE5OCw0ICsyMjksMTMgQEAKIAl0ZXN0X2RpcnR5X21lcmdlYWJsZQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja291dCAtYiBhZnRlciBjbG9uZSAtLW5vLWNoZWNrb3V0IGRvZXMgYSBjaGVja291dCBvZiBIRUFEJyAnCisJZ2l0IGluaXQgc3JjICYmCisJdGVzdF9jb21taXQgLUMgc3JjIGEgJiYKKwlyZXY9IiQoZ2l0IC1DIHNyYyByZXYtcGFyc2UgSEVBRCkiICYmCisJZ2l0IGNsb25lIC0tbm8tY2hlY2tvdXQgc3JjIGRlc3QgJiYKKwlnaXQgLUMgZGVzdCBjaGVja291dCAiJHJldiIgLWIgYnJhbmNoICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgZGVzdC9hLnQKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QyMDIwLWNoZWNrb3V0LWRldGFjaC5zaCBiL3QvdDIwMjAtY2hlY2tvdXQtZGV0YWNoLnNoCmluZGV4IDFmYTY3MDYuLmI3NDhkYjkgMTAwNzU1Ci0tLSBhL3QvdDIwMjAtY2hlY2tvdXQtZGV0YWNoLnNoCisrKyBiL3QvdDIwMjAtY2hlY2tvdXQtZGV0YWNoLnNoCkBAIC0xOTUsMTYgKzE5NSwyMiBAQAogCiAJIyBUaGUgZmlyc3QgZGV0YWNoIG9wZXJhdGlvbiBpcyBtb3JlIGNoYXR0eSB0aGFuIHRoZSBmb2xsb3dpbmcgb25lcy4KIAljYXQgPjFzdF9kZXRhY2ggPDwtRU9GICYmCi0JTm90ZTogY2hlY2tpbmcgb3V0ICdIRUFEXicuCisJTm90ZTogc3dpdGNoaW5nIHRvICdIRUFEXicuCiAKIAlZb3UgYXJlIGluICdkZXRhY2hlZCBIRUFEJyBzdGF0ZS4gWW91IGNhbiBsb29rIGFyb3VuZCwgbWFrZSBleHBlcmltZW50YWwKIAljaGFuZ2VzIGFuZCBjb21taXQgdGhlbSwgYW5kIHlvdSBjYW4gZGlzY2FyZCBhbnkgY29tbWl0cyB5b3UgbWFrZSBpbiB0aGlzCi0Jc3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHBlcmZvcm1pbmcgYW5vdGhlciBjaGVja291dC4KKwlzdGF0ZSB3aXRob3V0IGltcGFjdGluZyBhbnkgYnJhbmNoZXMgYnkgc3dpdGNoaW5nIGJhY2sgdG8gYSBicmFuY2guCiAKIAlJZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBuZXcgYnJhbmNoIHRvIHJldGFpbiBjb21taXRzIHlvdSBjcmVhdGUsIHlvdSBtYXkKLQlkbyBzbyAobm93IG9yIGxhdGVyKSBieSB1c2luZyAtYiB3aXRoIHRoZSBjaGVja291dCBjb21tYW5kIGFnYWluLiBFeGFtcGxlOgorCWRvIHNvIChub3cgb3IgbGF0ZXIpIGJ5IHVzaW5nIC1jIHdpdGggdGhlIHN3aXRjaCBjb21tYW5kLiBFeGFtcGxlOgogCi0JICBnaXQgY2hlY2tvdXQgLWIgPG5ldy1icmFuY2gtbmFtZT4KKwkgIGdpdCBzd2l0Y2ggLWMgPG5ldy1icmFuY2gtbmFtZT4KKworCU9yIHVuZG8gdGhpcyBvcGVyYXRpb24gd2l0aDoKKworCSAgZ2l0IHN3aXRjaCAtCisKKwlUdXJuIG9mZiB0aGlzIGFkdmljZSBieSBzZXR0aW5nIGNvbmZpZyB2YXJpYWJsZSBhZHZpY2UuZGV0YWNoZWRIZWFkIHRvIGZhbHNlCiAKIAlIRUFEIGlzIG5vdyBhdCBcJGNvbW1pdCB0aHJlZQogCUVPRgpAQCAtMjcxLDE2ICsyNzcsMjIgQEAKIAogCSMgVGhlIGZpcnN0IGRldGFjaCBvcGVyYXRpb24gaXMgbW9yZSBjaGF0dHkgdGhhbiB0aGUgZm9sbG93aW5nIG9uZXMuCiAJY2F0ID4xc3RfZGV0YWNoIDw8LUVPRiAmJgotCU5vdGU6IGNoZWNraW5nIG91dCAnSEVBRF4nLgorCU5vdGU6IHN3aXRjaGluZyB0byAnSEVBRF4nLgogCiAJWW91IGFyZSBpbiAnZGV0YWNoZWQgSEVBRCcgc3RhdGUuIFlvdSBjYW4gbG9vayBhcm91bmQsIG1ha2UgZXhwZXJpbWVudGFsCiAJY2hhbmdlcyBhbmQgY29tbWl0IHRoZW0sIGFuZCB5b3UgY2FuIGRpc2NhcmQgYW55IGNvbW1pdHMgeW91IG1ha2UgaW4gdGhpcwotCXN0YXRlIHdpdGhvdXQgaW1wYWN0aW5nIGFueSBicmFuY2hlcyBieSBwZXJmb3JtaW5nIGFub3RoZXIgY2hlY2tvdXQuCisJc3RhdGUgd2l0aG91dCBpbXBhY3RpbmcgYW55IGJyYW5jaGVzIGJ5IHN3aXRjaGluZyBiYWNrIHRvIGEgYnJhbmNoLgogCiAJSWYgeW91IHdhbnQgdG8gY3JlYXRlIGEgbmV3IGJyYW5jaCB0byByZXRhaW4gY29tbWl0cyB5b3UgY3JlYXRlLCB5b3UgbWF5Ci0JZG8gc28gKG5vdyBvciBsYXRlcikgYnkgdXNpbmcgLWIgd2l0aCB0aGUgY2hlY2tvdXQgY29tbWFuZCBhZ2Fpbi4gRXhhbXBsZToKKwlkbyBzbyAobm93IG9yIGxhdGVyKSBieSB1c2luZyAtYyB3aXRoIHRoZSBzd2l0Y2ggY29tbWFuZC4gRXhhbXBsZToKIAotCSAgZ2l0IGNoZWNrb3V0IC1iIDxuZXctYnJhbmNoLW5hbWU+CisJICBnaXQgc3dpdGNoIC1jIDxuZXctYnJhbmNoLW5hbWU+CisKKwlPciB1bmRvIHRoaXMgb3BlcmF0aW9uIHdpdGg6CisKKwkgIGdpdCBzd2l0Y2ggLQorCisJVHVybiBvZmYgdGhpcyBhZHZpY2UgYnkgc2V0dGluZyBjb25maWcgdmFyaWFibGUgYWR2aWNlLmRldGFjaGVkSGVhZCB0byBmYWxzZQogCiAJSEVBRCBpcyBub3cgYXQgXCRjb21taXQuLi4gdGhyZWUKIAlFT0YKZGlmZiAtLWdpdCBhL3QvdDIwMjItY2hlY2tvdXQtcGF0aHMuc2ggYi90L3QyMDIyLWNoZWNrb3V0LXBhdGhzLnNoCmluZGV4IGZjM2ViNDMuLjY4NDRhZmEgMTAwNzU1Ci0tLSBhL3QvdDIwMjItY2hlY2tvdXQtcGF0aHMuc2gKKysrIGIvdC90MjAyMi1jaGVja291dC1wYXRocy5zaApAQCAtNzgsNCArNzgsMTUgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrb3V0IEhFQUQgYWRkcyBkZWxldGVkIGludGVudC10by1hZGQgZmlsZSBiYWNrIHRvIGluZGV4JyAnCisJZWNobyAibm9uZW1wdHkiID5ub25lbXB0eSAmJgorCT5lbXB0eSAmJgorCWdpdCBhZGQgbm9uZW1wdHkgZW1wdHkgJiYKKwlnaXQgY29tbWl0IC1tICJjcmVhdGUgZmlsZXMgdG8gYmUgZGVsZXRlZCIgJiYKKwlnaXQgcm0gLS1jYWNoZWQgbm9uZW1wdHkgZW1wdHkgJiYKKwlnaXQgYWRkIC1OIG5vbmVtcHR5IGVtcHR5ICYmCisJZ2l0IGNoZWNrb3V0IEhFQUQgbm9uZW1wdHkgZW1wdHkgJiYKKwlnaXQgZGlmZiAtLWNhY2hlZCAtLWV4aXQtY29kZQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDIwMjMtY2hlY2tvdXQtbS5zaCBiL3QvdDIwMjMtY2hlY2tvdXQtbS5zaAppbmRleCA3ZTE4OTg1Li5mY2EzZjg1IDEwMDc1NQotLS0gYS90L3QyMDIzLWNoZWNrb3V0LW0uc2gKKysrIGIvdC90MjAyMy1jaGVja291dC1tLnNoCkBAIC00Niw0ICs0NiwyOCBAQAogCXRlc3RfY21wIGJvdGgudHh0LmNvbmZsaWN0ZWQuY2xlYW5lZCBib3RoLnR4dC5jbGVhbmVkCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZvcmNlIGNoZWNrb3V0IGEgY29uZmxpY3QgZmlsZSBjcmVhdGVzIHN0YWdlIHplcm8gZW50cnknICcKKwlnaXQgaW5pdCBjby1mb3JjZSAmJgorCSgKKwkJY2QgY28tZm9yY2UgJiYKKwkJZWNobyBhID5hICYmCisJCWdpdCBhZGQgYSAmJgorCQlnaXQgY29tbWl0IC1hbWEgJiYKKwkJQV9PQko9JChnaXQgcmV2LXBhcnNlIDphKSAmJgorCQlnaXQgYnJhbmNoIHRvcGljICYmCisJCWVjaG8gYiA+YSAmJgorCQlnaXQgY29tbWl0IC1hbWIgJiYKKwkJQl9PQko9JChnaXQgcmV2LXBhcnNlIDphKSAmJgorCQlnaXQgY2hlY2tvdXQgdG9waWMgJiYKKwkJZWNobyBjID5hICYmCisJCUNfT0JKPSQoZ2l0IGhhc2gtb2JqZWN0IGEpICYmCisJCWdpdCBjaGVja291dCAtbSBtYXN0ZXIgJiYKKwkJdGVzdF9jbXBfcmV2IDoxOmEgJEFfT0JKICYmCisJCXRlc3RfY21wX3JldiA6MjphICRCX09CSiAmJgorCQl0ZXN0X2NtcF9yZXYgOjM6YSAkQ19PQkogJiYKKwkJZ2l0IGNoZWNrb3V0IC1mIHRvcGljICYmCisJCXRlc3RfY21wX3JldiA6MDphICRBX09CSgorCSkKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QyMDI0LWNoZWNrb3V0LWR3aW0uc2ggYi90L3QyMDI0LWNoZWNrb3V0LWR3aW0uc2gKaW5kZXggNjliNjc3NC4uYWNjZmE5YSAxMDA3NTUKLS0tIGEvdC90MjAyNC1jaGVja291dC1kd2ltLnNoCisrKyBiL3QvdDIwMjQtY2hlY2tvdXQtZHdpbS5zaApAQCAtMzcsNyArMzcsOSBAQAogCQlnaXQgY2hlY2tvdXQgLWIgZm9vICYmCiAJCXRlc3RfY29tbWl0IGFfZm9vICYmCiAJCWdpdCBjaGVja291dCAtYiBiYXIgJiYKLQkJdGVzdF9jb21taXQgYV9iYXIKKwkJdGVzdF9jb21taXQgYV9iYXIgJiYKKwkJZ2l0IGNoZWNrb3V0IC1iIGFtYmlndW91c19icmFuY2hfYW5kX2ZpbGUgJiYKKwkJdGVzdF9jb21taXQgYV9hbWJpZ3VvdXNfYnJhbmNoX2FuZF9maWxlCiAJKSAmJgogCWdpdCBpbml0IHJlcG9fYiAmJgogCSgKQEAgLTQ2LDcgKzQ4LDkgQEAKIAkJZ2l0IGNoZWNrb3V0IC1iIGZvbyAmJgogCQl0ZXN0X2NvbW1pdCBiX2ZvbyAmJgogCQlnaXQgY2hlY2tvdXQgLWIgYmF6ICYmCi0JCXRlc3RfY29tbWl0IGJfYmF6CisJCXRlc3RfY29tbWl0IGJfYmF6ICYmCisJCWdpdCBjaGVja291dCAtYiBhbWJpZ3VvdXNfYnJhbmNoX2FuZF9maWxlICYmCisJCXRlc3RfY29tbWl0IGJfYW1iaWd1b3VzX2JyYW5jaF9hbmRfZmlsZQogCSkgJiYKIAlnaXQgcmVtb3RlIGFkZCByZXBvX2EgcmVwb19hICYmCiAJZ2l0IHJlbW90ZSBhZGQgcmVwb19iIHJlcG9fYiAmJgpAQCAtNzUsNiArNzksMjYgQEAKIAl0ZXN0X2JyYW5jaCBtYXN0ZXIKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnd2hlbiBhcmcgbWF0Y2hlcyBtdWx0aXBsZSByZW1vdGVzLCBkbyBub3QgZmFsbGJhY2sgdG8gaW50ZXJwcmV0aW5nIGFzIHBhdGhzcGVjJyAnCisJIyBjcmVhdGUgYSBmaWxlIHdpdGggbmFtZSBtYXRjaGluZyByZW1vdGUgYnJhbmNoIG5hbWUKKwlnaXQgY2hlY2tvdXQgLWIgdF9hbWJpZ3VvdXNfYnJhbmNoX2FuZF9maWxlICYmCisJPmFtYmlndW91c19icmFuY2hfYW5kX2ZpbGUgJiYKKwlnaXQgYWRkIGFtYmlndW91c19icmFuY2hfYW5kX2ZpbGUgJiYKKwlnaXQgY29tbWl0IC1tICJhbWJpZ3VvdXNfYnJhbmNoX2FuZF9maWxlIiAmJgorCisJIyBtb2RpZnkgZmlsZSB0byB2ZXJpZnkgdGhhdCBpdCB3aWxsIG5vdCBiZSB0b3VjaGVkIGJ5IGNoZWNrb3V0CisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY2hlY2tvdXQgLS0gYW1iaWd1b3VzX2JyYW5jaF9hbmRfZmlsZSIgJiYKKwllY2hvICJmaWxlIGNvbnRlbnRzIiA+YW1iaWd1b3VzX2JyYW5jaF9hbmRfZmlsZSAmJgorCWNwIGFtYmlndW91c19icmFuY2hfYW5kX2ZpbGUgZXhwZWN0ICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgY2hlY2tvdXQgYW1iaWd1b3VzX2JyYW5jaF9hbmRfZmlsZSAyPmVyciAmJgorCisJdGVzdF9pMThuZ3JlcCAibWF0Y2hlZCBtdWx0aXBsZSAoMikgcmVtb3RlIHRyYWNraW5nIGJyYW5jaGVzIiBlcnIgJiYKKworCSMgZmlsZSBtdXN0IG5vdCBiZSBhbHRlcmVkCisJdGVzdF9jbXAgZXhwZWN0IGFtYmlndW91c19icmFuY2hfYW5kX2ZpbGUKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2tvdXQgb2YgYnJhbmNoIGZyb20gbXVsdGlwbGUgcmVtb3RlcyBmYWlscyB3aXRoIGFkdmljZScgJwogCWdpdCBjaGVja291dCAtQiBtYXN0ZXIgJiYKIAl0ZXN0X21pZ2h0X2ZhaWwgZ2l0IGJyYW5jaCAtRCBmb28gJiYKQEAgLTI3OCw0ICszMDIsMzUgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlamVjdCB3aGVuIGFyZyBjb3VsZCBiZSBwYXJ0IG9mIGR3aW0gYnJhbmNoJyAnCisJZ2l0IHJlbW90ZSBhZGQgZm9vIGZpbGU6Ly9ub24tZXhpc3RlbnQtcGxhY2UgJiYKKwlnaXQgdXBkYXRlLXJlZiByZWZzL3JlbW90ZXMvZm9vL2R3aW0tYXJnIEhFQUQgJiYKKwllY2hvIGZvbyA+ZHdpbS1hcmcgJiYKKwlnaXQgYWRkIGR3aW0tYXJnICYmCisJZWNobyBiYXIgPmR3aW0tYXJnICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZWNrb3V0IGR3aW0tYXJnICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSByZWZzL2hlYWRzL2R3aW0tYXJnIC0tICYmCisJZ3JlcCBiYXIgZHdpbS1hcmcKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlzYW1iaWd1YXRlIGR3aW0gYnJhbmNoIGFuZCBjaGVja291dCBwYXRoICgxKScgJworCWdpdCB1cGRhdGUtcmVmIHJlZnMvcmVtb3Rlcy9mb28vZHdpbS1hcmcxIEhFQUQgJiYKKwllY2hvIGZvbyA+ZHdpbS1hcmcxICYmCisJZ2l0IGFkZCBkd2ltLWFyZzEgJiYKKwllY2hvIGJhciA+ZHdpbS1hcmcxICYmCisJZ2l0IGNoZWNrb3V0IC0tIGR3aW0tYXJnMSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgcmVmcy9oZWFkcy9kd2ltLWFyZzEgLS0gJiYKKwlncmVwIGZvbyBkd2ltLWFyZzEKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlzYW1iaWd1YXRlIGR3aW0gYnJhbmNoIGFuZCBjaGVja291dCBwYXRoICgyKScgJworCWdpdCB1cGRhdGUtcmVmIHJlZnMvcmVtb3Rlcy9mb28vZHdpbS1hcmcyIEhFQUQgJiYKKwllY2hvIGZvbyA+ZHdpbS1hcmcyICYmCisJZ2l0IGFkZCBkd2ltLWFyZzIgJiYKKwllY2hvIGJhciA+ZHdpbS1hcmcyICYmCisJZ2l0IGNoZWNrb3V0IGR3aW0tYXJnMiAtLSAmJgorCWdpdCByZXYtcGFyc2UgcmVmcy9oZWFkcy9kd2ltLWFyZzIgLS0gJiYKKwlncmVwIGJhciBkd2ltLWFyZzIKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QyMDI1LWNoZWNrb3V0LW5vLW92ZXJsYXkuc2ggYi90L3QyMDI1LWNoZWNrb3V0LW5vLW92ZXJsYXkuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNzYzMzBjYgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDIwMjUtY2hlY2tvdXQtbm8tb3ZlcmxheS5zaApAQCAtMCwwICsxLDQ3IEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0nY2hlY2tvdXQgLS1uby1vdmVybGF5IDx0cmVlLWlzaD4gLS0gPHBhdGhzcGVjPicKKworLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCisJZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5IC1tICJpbml0aWFsIgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja291dCAtLW5vLW92ZXJsYXkgZGVsZXRlcyBmaWxlcyBub3QgaW4gPHRyZWUtaXNoPicgJworCT5maWxlICYmCisJbWtkaXIgZGlyICYmCisJPmRpci9maWxlMSAmJgorCWdpdCBhZGQgZmlsZSBkaXIvZmlsZTEgJiYKKwlnaXQgY2hlY2tvdXQgLS1uby1vdmVybGF5IEhFQUQgLS0gZmlsZSAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIGZpbGUgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBkaXIvZmlsZTEKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2tvdXQgLS1uby1vdmVybGF5IHJlbW92aW5nIGxhc3QgZmlsZSBmcm9tIGRpcmVjdG9yeScgJworCWdpdCBjaGVja291dCAtLW5vLW92ZXJsYXkgSEVBRCAtLSBkaXIvZmlsZTEgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBkaXIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2tvdXQgLXAgLS1vdmVybGF5IGlzIGRpc2FsbG93ZWQnICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgY2hlY2tvdXQgLXAgLS1vdmVybGF5IEhFQUQgMj5hY3R1YWwgJiYKKwl0ZXN0X2kxOG5ncmVwICJmYXRhbDogLXAgYW5kIC0tb3ZlcmxheSBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIiBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1uby1vdmVybGF5IC0tdGhlaXJzIHdpdGggRC9GIGNvbmZsaWN0IGRlbGV0ZXMgZmlsZScgJworCXRlc3RfY29tbWl0IGZpbGUxIGZpbGUxICYmCisJdGVzdF9jb21taXQgZmlsZTIgZmlsZTIgJiYKKwlnaXQgcm0gLS1jYWNoZWQgZmlsZTEgJiYKKwllY2hvIDEyMzQgPmZpbGUxICYmCisJRjE9JChnaXQgcmV2LXBhcnNlIEhFQUQ6ZmlsZTEpICYmCisJRjI9JChnaXQgcmV2LXBhcnNlIEhFQUQ6ZmlsZTIpICYmCisJeworCQllY2hvICIxMDA2NDQgJEYxIDEJZmlsZTEiICYmCisJCWVjaG8gIjEwMDY0NCAkRjIgMglmaWxlMSIKKwl9IHwgZ2l0IHVwZGF0ZS1pbmRleCAtLWluZGV4LWluZm8gJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBmaWxlMSAmJgorCWdpdCBjaGVja291dCAtLXRoZWlycyAtLW5vLW92ZXJsYXkgLS0gZmlsZTEgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBmaWxlMQorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDIwMjYtY2hlY2tvdXQtcGF0aHNwZWMtZmlsZS5zaCBiL3QvdDIwMjYtY2hlY2tvdXQtcGF0aHNwZWMtZmlsZS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi40M2QzMWQ3Ci0tLSAvZGV2L251bGwKKysrIGIvdC90MjAyNi1jaGVja291dC1wYXRoc3BlYy1maWxlLnNoCkBAIC0wLDAgKzEsMTYzIEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0nY2hlY2tvdXQgLS1wYXRoc3BlYy1mcm9tLWZpbGUnCisKKy4gLi90ZXN0LWxpYi5zaAorCit0ZXN0X3RpY2sKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBzZXR1cCAnCisJdGVzdF9jb21taXQgZmlsZTAgJiYKKworCWVjaG8gMSA+ZmlsZUEudCAmJgorCWVjaG8gMSA+ZmlsZUIudCAmJgorCWVjaG8gMSA+ZmlsZUMudCAmJgorCWVjaG8gMSA+ZmlsZUQudCAmJgorCWdpdCBhZGQgZmlsZUEudCBmaWxlQi50IGZpbGVDLnQgZmlsZUQudCAmJgorCWdpdCBjb21taXQgLW0gImZpbGVzIDEiICYmCisKKwllY2hvIDIgPmZpbGVBLnQgJiYKKwllY2hvIDIgPmZpbGVCLnQgJiYKKwllY2hvIDIgPmZpbGVDLnQgJiYKKwllY2hvIDIgPmZpbGVELnQgJiYKKwlnaXQgYWRkIGZpbGVBLnQgZmlsZUIudCBmaWxlQy50IGZpbGVELnQgJiYKKwlnaXQgY29tbWl0IC1tICJmaWxlcyAyIiAmJgorCisJZ2l0IHRhZyBjaGVja3BvaW50CisnCisKK3Jlc3RvcmVfY2hlY2twb2ludCAoKSB7CisJZ2l0IHJlc2V0IC0taGFyZCBjaGVja3BvaW50Cit9CisKK3ZlcmlmeV9leHBlY3QgKCkgeworCWdpdCBzdGF0dXMgLS1wb3JjZWxhaW4gLS11bnRyYWNrZWQtZmlsZXM9bm8gLS0gZmlsZUEudCBmaWxlQi50IGZpbGVDLnQgZmlsZUQudCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorfQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXBhdGhzcGVjLWZyb20tZmlsZSBmcm9tIHN0ZGluJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwllY2hvIGZpbGVBLnQgfCBnaXQgY2hlY2tvdXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSBIRUFEXjEgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlNICBmaWxlQS50CisJRU9GCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXBhdGhzcGVjLWZyb20tZmlsZSBmcm9tIGZpbGUnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCWVjaG8gZmlsZUEudCA+bGlzdCAmJgorCWdpdCBjaGVja291dCAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0IEhFQUReMSAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCU0gIGZpbGVBLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ05VTCBkZWxpbWl0ZXJzJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwlwcmludGYgImZpbGVBLnRcMGZpbGVCLnRcMCIgfCBnaXQgY2hlY2tvdXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSAtLXBhdGhzcGVjLWZpbGUtbnVsIEhFQUReMSAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCU0gIGZpbGVBLnQKKwlNICBmaWxlQi50CisJRU9GCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdMRiBkZWxpbWl0ZXJzJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwlwcmludGYgImZpbGVBLnRcbmZpbGVCLnRcbiIgfCBnaXQgY2hlY2tvdXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSBIRUFEXjEgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlNICBmaWxlQS50CisJTSAgZmlsZUIudAorCUVPRgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbm8gdHJhaWxpbmcgZGVsaW1pdGVyJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwlwcmludGYgImZpbGVBLnRcbmZpbGVCLnQiIHwgZ2l0IGNoZWNrb3V0IC0tcGF0aHNwZWMtZnJvbS1maWxlPS0gSEVBRF4xICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJTSAgZmlsZUEudAorCU0gIGZpbGVCLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0NSTEYgZGVsaW1pdGVycycgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJcHJpbnRmICJmaWxlQS50XHJcbmZpbGVCLnRcclxuIiB8IGdpdCBjaGVja291dCAtLXBhdGhzcGVjLWZyb20tZmlsZT0tIEhFQUReMSAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCU0gIGZpbGVBLnQKKwlNICBmaWxlQi50CisJRU9GCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdxdW90ZXMnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCWNhdCA+bGlzdCA8PC1cRU9GICYmCisJImZpbGVcMTAxLnQiCisJRU9GCisKKwlnaXQgY2hlY2tvdXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9bGlzdCBIRUFEXjEgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlNICBmaWxlQS50CisJRU9GCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdxdW90ZXMgbm90IGNvbXBhdGlibGUgd2l0aCAtLXBhdGhzcGVjLWZpbGUtbnVsJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwljYXQgPmxpc3QgPDwtXEVPRiAmJgorCSJmaWxlXDEwMS50IgorCUVPRgorCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZWNrb3V0IC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLS1wYXRoc3BlYy1maWxlLW51bCBIRUFEXjEKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnb25seSB0b3VjaGVzIHdoYXQgd2FzIGxpc3RlZCcgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJcHJpbnRmICJmaWxlQi50XG5maWxlQy50XG4iIHwgZ2l0IGNoZWNrb3V0IC0tcGF0aHNwZWMtZnJvbS1maWxlPS0gSEVBRF4xICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJTSAgZmlsZUIudAorCU0gIGZpbGVDLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Vycm9yIGNvbmRpdGlvbnMnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKwllY2hvIGZpbGVBLnQgPmxpc3QgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBjaGVja291dCAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0IC0tZGV0YWNoIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1kZXRhY2giIGVyciAmJgorCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZWNrb3V0IC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLS1wYXRjaCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tcGF0Y2giIGVyciAmJgorCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZWNrb3V0IC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLS0gZmlsZUEudCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIgZXJyICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgY2hlY2tvdXQgLS1wYXRoc3BlYy1maWxlLW51bCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIi0tcGF0aHNwZWMtZmlsZS1udWwgcmVxdWlyZXMgLS1wYXRoc3BlYy1mcm9tLWZpbGUiIGVycgorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDIwNjAtc3dpdGNoLnNoIGIvdC90MjA2MC1zd2l0Y2guc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uZjllZmEyOQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDIwNjAtc3dpdGNoLnNoCkBAIC0wLDAgKzEsOTYgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdzd2l0Y2ggYmFzaWMgZnVuY3Rpb25hbGl0eScKKworLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCisJdGVzdF9jb21taXQgZmlyc3QgJiYKKwlnaXQgYnJhbmNoIGZpcnN0LWJyYW5jaCAmJgorCXRlc3RfY29tbWl0IHNlY29uZCAmJgorCXRlc3RfY29tbWl0IHRoaXJkICYmCisJZ2l0IHJlbW90ZSBhZGQgb3JpZ2luIG5vaG9zdDovbm9wYXRoICYmCisJZ2l0IHVwZGF0ZS1yZWYgcmVmcy9yZW1vdGVzL29yaWdpbi9mb28gZmlyc3QtYnJhbmNoCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N3aXRjaCBicmFuY2ggbm8gYXJndW1lbnRzJyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHN3aXRjaAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzd2l0Y2ggYnJhbmNoJyAnCisJZ2l0IHN3aXRjaCBmaXJzdC1icmFuY2ggJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzZWNvbmQudAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzd2l0Y2ggYW5kIGRldGFjaCcgJworCXRlc3Rfd2hlbl9maW5pc2hlZCBnaXQgc3dpdGNoIG1hc3RlciAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBzd2l0Y2ggbWFzdGVyXntjb21taXR9ICYmCisJZ2l0IHN3aXRjaCAtLWRldGFjaCBtYXN0ZXJee2NvbW1pdH0gJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgc3ltYm9saWMtcmVmIEhFQUQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3dpdGNoIGFuZCBkZXRhY2ggY3VycmVudCBicmFuY2gnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgZ2l0IHN3aXRjaCBtYXN0ZXIgJiYKKwlnaXQgc3dpdGNoIG1hc3RlciAmJgorCWdpdCBzd2l0Y2ggLS1kZXRhY2ggJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgc3ltYm9saWMtcmVmIEhFQUQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3dpdGNoIGFuZCBjcmVhdGUgYnJhbmNoJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCBzd2l0Y2ggbWFzdGVyICYmCisJZ2l0IHN3aXRjaCAtYyB0ZW1wIG1hc3Rlcl4gJiYKKwl0ZXN0X2NtcF9yZXYgbWFzdGVyXiByZWZzL2hlYWRzL3RlbXAgJiYKKwllY2hvIHJlZnMvaGVhZHMvdGVtcCA+ZXhwZWN0ZWQtYnJhbmNoICYmCisJZ2l0IHN5bWJvbGljLXJlZiBIRUFEID5hY3R1YWwtYnJhbmNoICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQtYnJhbmNoIGFjdHVhbC1icmFuY2gKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9yY2UgY3JlYXRlIGJyYW5jaCBmcm9tIEhFQUQnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgZ2l0IHN3aXRjaCBtYXN0ZXIgJiYKKwlnaXQgc3dpdGNoIC0tZGV0YWNoIG1hc3RlciAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBzd2l0Y2ggLWMgdGVtcCAmJgorCWdpdCBzd2l0Y2ggLUMgdGVtcCAmJgorCXRlc3RfY21wX3JldiBtYXN0ZXIgcmVmcy9oZWFkcy90ZW1wICYmCisJZWNobyByZWZzL2hlYWRzL3RlbXAgPmV4cGVjdGVkLWJyYW5jaCAmJgorCWdpdCBzeW1ib2xpYy1yZWYgSEVBRCA+YWN0dWFsLWJyYW5jaCAmJgorCXRlc3RfY21wIGV4cGVjdGVkLWJyYW5jaCBhY3R1YWwtYnJhbmNoCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25ldyBvcnBoYW4gYnJhbmNoIGZyb20gZW1wdHknICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgZ2l0IHN3aXRjaCBtYXN0ZXIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgc3dpdGNoIC0tb3JwaGFuIG5ldy1vcnBoYW4gSEVBRCAmJgorCWdpdCBzd2l0Y2ggLS1vcnBoYW4gbmV3LW9ycGhhbiAmJgorCXRlc3RfY29tbWl0IG9ycGhhbiAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgcmVmcy9oZWFkcy9uZXctb3JwaGFuID5jb21taXQgJiYKKwkhIGdyZXAgXnBhcmVudCBjb21taXQgJiYKKwlnaXQgbHMtZmlsZXMgPnRyYWNrZWQtZmlsZXMgJiYKKwllY2hvIG9ycGhhbi50ID5leHBlY3RlZCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIHRyYWNrZWQtZmlsZXMKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3dpdGNoaW5nIGlnbm9yZXMgZmlsZSBvZiBzYW1lIGJyYW5jaCBuYW1lJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCBzd2l0Y2ggbWFzdGVyICYmCisJOiA+Zmlyc3QtYnJhbmNoICYmCisJZ2l0IHN3aXRjaCBmaXJzdC1icmFuY2ggJiYKKwllY2hvIHJlZnMvaGVhZHMvZmlyc3QtYnJhbmNoID5leHBlY3RlZCAmJgorCWdpdCBzeW1ib2xpYy1yZWYgSEVBRCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2d1ZXNzIGFuZCBjcmVhdGUgYnJhbmNoICcgJworCXRlc3Rfd2hlbl9maW5pc2hlZCBnaXQgc3dpdGNoIG1hc3RlciAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBzd2l0Y2ggLS1uby1ndWVzcyBmb28gJiYKKwlnaXQgc3dpdGNoIGZvbyAmJgorCWVjaG8gcmVmcy9oZWFkcy9mb28gPmV4cGVjdGVkICYmCisJZ2l0IHN5bWJvbGljLXJlZiBIRUFEID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbm90IHN3aXRjaGluZyB3aGVuIHNvbWV0aGluZyBpcyBpbiBwcm9ncmVzcycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCBybSAtZiAuZ2l0L01FUkdFX0hFQUQgJiYKKwkjIGZha2UgYSBtZXJnZS1pbi1wcm9ncmVzcworCWNwIC5naXQvSEVBRCAuZ2l0L01FUkdFX0hFQUQgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgc3dpdGNoIC1kIEBeCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MjA3MC1yZXN0b3JlLnNoIGIvdC90MjA3MC1yZXN0b3JlLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjA3NmQwZGYKLS0tIC9kZXYvbnVsbAorKysgYi90L3QyMDcwLXJlc3RvcmUuc2gKQEAgLTAsMCArMSwxMjYgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdyZXN0b3JlIGJhc2ljIGZ1bmN0aW9uYWxpdHknCisKKy4gLi90ZXN0LWxpYi5zaAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCcgJworCXRlc3RfY29tbWl0IGZpcnN0ICYmCisJZWNobyBmaXJzdC1hbmQtYS1oYWxmID4+Zmlyc3QudCAmJgorCWdpdCBhZGQgZmlyc3QudCAmJgorCXRlc3RfY29tbWl0IHNlY29uZCAmJgorCWVjaG8gb25lID5vbmUgJiYKKwllY2hvIHR3byA+dHdvICYmCisJZWNobyB1bnRyYWNrZWQgPnVudHJhY2tlZCAmJgorCWVjaG8gaWdub3JlZCA+aWdub3JlZCAmJgorCWVjaG8gL2lnbm9yZWQgPi5naXRpZ25vcmUgJiYKKwlnaXQgYWRkIG9uZSB0d28gLmdpdGlnbm9yZSAmJgorCWdpdCB1cGRhdGUtcmVmIHJlZnMvaGVhZHMvb25lIG1hc3RlcgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXN0b3JlIHdpdGhvdXQgcGF0aHNwZWMgaXMgbm90IG9rJyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlc3RvcmUgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmVzdG9yZSAtLXNvdXJjZT1maXJzdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXN0b3JlIGEgZmlsZSwgaWdub3JpbmcgYnJhbmNoIG9mIHNhbWUgbmFtZScgJworCWNhdCBvbmUgPmV4cGVjdGVkICYmCisJZWNobyBkaXJ0eSA+Pm9uZSAmJgorCWdpdCByZXN0b3JlIG9uZSAmJgorCXRlc3RfY21wIGV4cGVjdGVkIG9uZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXN0b3JlIGEgZmlsZSBvbiB3b3JrdHJlZSBmcm9tIGFub3RoZXIgcmVmJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCByZXNldCAtLWhhcmQgJiYKKwlnaXQgY2F0LWZpbGUgYmxvYiBmaXJzdDouL2ZpcnN0LnQgPmV4cGVjdGVkICYmCisJZ2l0IHJlc3RvcmUgLS1zb3VyY2U9Zmlyc3QgZmlyc3QudCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGZpcnN0LnQgJiYKKwlnaXQgY2F0LWZpbGUgYmxvYiBIRUFEOi4vZmlyc3QudCA+ZXhwZWN0ZWQgJiYKKwlnaXQgc2hvdyA6Zmlyc3QudCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Jlc3RvcmUgYSBmaWxlIGluIHRoZSBpbmRleCBmcm9tIGFub3RoZXIgcmVmJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCByZXNldCAtLWhhcmQgJiYKKwlnaXQgY2F0LWZpbGUgYmxvYiBmaXJzdDouL2ZpcnN0LnQgPmV4cGVjdGVkICYmCisJZ2l0IHJlc3RvcmUgLS1zb3VyY2U9Zmlyc3QgLS1zdGFnZWQgZmlyc3QudCAmJgorCWdpdCBzaG93IDpmaXJzdC50ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwgJiYKKwlnaXQgY2F0LWZpbGUgYmxvYiBIRUFEOi4vZmlyc3QudCA+ZXhwZWN0ZWQgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBmaXJzdC50CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Jlc3RvcmUgYSBmaWxlIGluIGJvdGggdGhlIGluZGV4IGFuZCB3b3JrdHJlZSBmcm9tIGFub3RoZXIgcmVmJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCByZXNldCAtLWhhcmQgJiYKKwlnaXQgY2F0LWZpbGUgYmxvYiBmaXJzdDouL2ZpcnN0LnQgPmV4cGVjdGVkICYmCisJZ2l0IHJlc3RvcmUgLS1zb3VyY2U9Zmlyc3QgLS1zdGFnZWQgLS13b3JrdHJlZSBmaXJzdC50ICYmCisJZ2l0IHNob3cgOmZpcnN0LnQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGZpcnN0LnQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVzdG9yZSAtLXN0YWdlZCB1c2VzIEhFQUQgYXMgc291cmNlJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCByZXNldCAtLWhhcmQgJiYKKwlnaXQgY2F0LWZpbGUgYmxvYiA6Li9maXJzdC50ID5leHBlY3RlZCAmJgorCWVjaG8gaW5kZXgtZGlydHkgPj5maXJzdC50ICYmCisJZ2l0IGFkZCBmaXJzdC50ICYmCisJZ2l0IHJlc3RvcmUgLS1zdGFnZWQgZmlyc3QudCAmJgorCWdpdCBjYXQtZmlsZSBibG9iIDouL2ZpcnN0LnQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXN0b3JlIC0taWdub3JlLXVubWVyZ2VkIGlnbm9yZXMgdW5tZXJnZWQgZW50cmllcycgJworCWdpdCBpbml0IHVubWVyZ2VkICYmCisJKAorCQljZCB1bm1lcmdlZCAmJgorCQllY2hvIG9uZSA+dW5tZXJnZWQgJiYKKwkJZWNobyBvbmUgPmNvbW1vbiAmJgorCQlnaXQgYWRkIHVubWVyZ2VkIGNvbW1vbiAmJgorCQlnaXQgY29tbWl0IC1tIGNvbW1vbiAmJgorCQlnaXQgc3dpdGNoIC1jIGZpcnN0ICYmCisJCWVjaG8gZmlyc3QgPnVubWVyZ2VkICYmCisJCWdpdCBjb21taXQgLWFtIGZpcnN0ICYmCisJCWdpdCBzd2l0Y2ggLWMgc2Vjb25kIG1hc3RlciAmJgorCQllY2hvIHNlY29uZCA+dW5tZXJnZWQgJiYKKwkJZ2l0IGNvbW1pdCAtYW0gc2Vjb25kICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBmaXJzdCAmJgorCisJCWVjaG8gZGlydHkgPj5jb21tb24gJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlc3RvcmUgLiAmJgorCisJCWdpdCByZXN0b3JlIC0taWdub3JlLXVubWVyZ2VkIC0tcXVpZXQgLiA+b3V0cHV0IDI+JjEgJiYKKwkJZ2l0IGRpZmYgY29tbW9uID5kaWZmLW91dHB1dCAmJgorCQl0ZXN0X211c3RfYmVfZW1wdHkgb3V0cHV0ICYmCisJCXRlc3RfbXVzdF9iZV9lbXB0eSBkaWZmLW91dHB1dAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVzdG9yZSAtLXN0YWdlZCBhZGRzIGRlbGV0ZWQgaW50ZW50LXRvLWFkZCBmaWxlIGJhY2sgdG8gaW5kZXgnICcKKwllY2hvICJub25lbXB0eSIgPm5vbmVtcHR5ICYmCisJPmVtcHR5ICYmCisJZ2l0IGFkZCBub25lbXB0eSBlbXB0eSAmJgorCWdpdCBjb21taXQgLW0gImNyZWF0ZSBmaWxlcyB0byBiZSBkZWxldGVkIiAmJgorCWdpdCBybSAtLWNhY2hlZCBub25lbXB0eSBlbXB0eSAmJgorCWdpdCBhZGQgLU4gbm9uZW1wdHkgZW1wdHkgJiYKKwlnaXQgcmVzdG9yZSAtLXN0YWdlZCBub25lbXB0eSBlbXB0eSAmJgorCWdpdCBkaWZmIC0tY2FjaGVkIC0tZXhpdC1jb2RlCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Jlc3RvcmUgLS1zdGFnZWQgaW52YWxpZGF0ZXMgY2FjaGUgdHJlZSBmb3IgZGVsZXRpb25zJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCByZXNldCAtLWhhcmQgJiYKKwk+bmV3MSAmJgorCT5uZXcyICYmCisJZ2l0IGFkZCBuZXcxIG5ldzIgJiYKKworCSMgSXQgaXMgaW1wb3J0YW50IHRvIGNvbW1pdCBhbmQgdGhlbiByZXNldCBoZXJlLCBzbyB0aGF0IHRoZSBpbmRleAorCSMgY29udGFpbnMgYSB2YWxpZCBjYWNoZS10cmVlIGZvciB0aGUgImJvdGgiIHRyZWUuCisJZ2l0IGNvbW1pdCAtbSBib3RoICYmCisJZ2l0IHJlc2V0IC0tc29mdCBIRUFEXiAmJgorCisJZ2l0IHJlc3RvcmUgLS1zdGFnZWQgbmV3MSAmJgorCWdpdCBjb21taXQgLW0gImp1c3QgbmV3MiIgJiYKKwlnaXQgcmV2LXBhcnNlIEhFQUQ6bmV3MiAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgSEVBRDpuZXcxCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MjA3MS1yZXN0b3JlLXBhdGNoLnNoIGIvdC90MjA3MS1yZXN0b3JlLXBhdGNoLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjk4YjI0NzYKLS0tIC9kZXYvbnVsbAorKysgYi90L3QyMDcxLXJlc3RvcmUtcGF0Y2guc2gKQEAgLTAsMCArMSwxMTAgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdnaXQgcmVzdG9yZSAtLXBhdGNoJworCisuIC4vbGliLXBhdGNoLW1vZGUuc2gKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBQRVJMICdzZXR1cCcgJworCW1rZGlyIGRpciAmJgorCWVjaG8gcGFyZW50ID5kaXIvZm9vICYmCisJZWNobyBkdW1teSA+YmFyICYmCisJZ2l0IGFkZCBiYXIgZGlyL2ZvbyAmJgorCWdpdCBjb21taXQgLW0gaW5pdGlhbCAmJgorCXRlc3RfdGljayAmJgorCXRlc3RfY29tbWl0IHNlY29uZCBkaXIvZm9vIGhlYWQgJiYKKwlzZXRfYW5kX3NhdmVfc3RhdGUgYmFyIGJhcl93b3JrIGJhcl9pbmRleCAmJgorCXNhdmVfaGVhZAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIFBFUkwgJ3Jlc3RvcmUgLXAgd2l0aG91dCBwYXRoc3BlYyBpcyBmaW5lJyAnCisJZWNobyBxID5jbWQgJiYKKwlnaXQgcmVzdG9yZSAtcCA8Y21kCisnCisKKyMgbm90ZTogYmFyIHNvcnRzIGJlZm9yZSBkaXIvZm9vLCBzbyB0aGUgZmlyc3QgJ24nIGlzIGFsd2F5cyB0byBza2lwICdiYXInCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgUEVSTCAnc2F5aW5nICJuIiBkb2VzIG5vdGhpbmcnICcKKwlzZXRfYW5kX3NhdmVfc3RhdGUgZGlyL2ZvbyB3b3JrIGhlYWQgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzIG4gbiB8IGdpdCByZXN0b3JlIC1wICYmCisJdmVyaWZ5X3NhdmVkX3N0YXRlIGJhciAmJgorCXZlcmlmeV9zYXZlZF9zdGF0ZSBkaXIvZm9vCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgUEVSTCAnZ2l0IHJlc3RvcmUgLXAnICcKKwlzZXRfYW5kX3NhdmVfc3RhdGUgZGlyL2ZvbyB3b3JrIGhlYWQgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzIG4geSB8IGdpdCByZXN0b3JlIC1wICYmCisJdmVyaWZ5X3NhdmVkX3N0YXRlIGJhciAmJgorCXZlcmlmeV9zdGF0ZSBkaXIvZm9vIGhlYWQgaGVhZAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIFBFUkwgJ2dpdCByZXN0b3JlIC1wIHdpdGggc3RhZ2VkIGNoYW5nZXMnICcKKwlzZXRfc3RhdGUgZGlyL2ZvbyB3b3JrIGluZGV4ICYmCisJdGVzdF93cml0ZV9saW5lcyBuIHkgfCBnaXQgcmVzdG9yZSAtcCAmJgorCXZlcmlmeV9zYXZlZF9zdGF0ZSBiYXIgJiYKKwl2ZXJpZnlfc3RhdGUgZGlyL2ZvbyBpbmRleCBpbmRleAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIFBFUkwgJ2dpdCByZXN0b3JlIC1wIC0tc291cmNlPUhFQUQnICcKKwlzZXRfc3RhdGUgZGlyL2ZvbyB3b3JrIGluZGV4ICYmCisJIyB0aGUgdGhpcmQgbiBpcyB0byBnZXQgb3V0IGluIGNhc2UgaXQgbWlzdGFrZW5seSBkb2VzIG5vdCBhcHBseQorCXRlc3Rfd3JpdGVfbGluZXMgbiB5IG4gfCBnaXQgcmVzdG9yZSAtcCAtLXNvdXJjZT1IRUFEICYmCisJdmVyaWZ5X3NhdmVkX3N0YXRlIGJhciAmJgorCXZlcmlmeV9zdGF0ZSBkaXIvZm9vIGhlYWQgaW5kZXgKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBQRVJMICdnaXQgcmVzdG9yZSAtcCAtLXNvdXJjZT1IRUFEXicgJworCXNldF9zdGF0ZSBkaXIvZm9vIHdvcmsgaW5kZXggJiYKKwkjIHRoZSB0aGlyZCBuIGlzIHRvIGdldCBvdXQgaW4gY2FzZSBpdCBtaXN0YWtlbmx5IGRvZXMgbm90IGFwcGx5CisJdGVzdF93cml0ZV9saW5lcyBuIHkgbiB8IGdpdCByZXN0b3JlIC1wIC0tc291cmNlPUhFQUReICYmCisJdmVyaWZ5X3NhdmVkX3N0YXRlIGJhciAmJgorCXZlcmlmeV9zdGF0ZSBkaXIvZm9vIHBhcmVudCBpbmRleAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIFBFUkwgJ2dpdCByZXN0b3JlIC1wIGhhbmRsZXMgZGVsZXRpb24nICcKKwlzZXRfc3RhdGUgZGlyL2ZvbyB3b3JrIGluZGV4ICYmCisJcm0gZGlyL2ZvbyAmJgorCXRlc3Rfd3JpdGVfbGluZXMgbiB5IHwgZ2l0IHJlc3RvcmUgLXAgJiYKKwl2ZXJpZnlfc2F2ZWRfc3RhdGUgYmFyICYmCisJdmVyaWZ5X3N0YXRlIGRpci9mb28gaW5kZXggaW5kZXgKKycKKworIyBUaGUgaWRlYSBpbiB0aGUgcmVzdCBpcyB0aGF0IGJhciBzb3J0cyBmaXJzdCwgc28gd2UgYWx3YXlzIHNheSAneScKKyMgZmlyc3QgYW5kIGlmIHRoZSBwYXRoIGxpbWl0ZXIgZmFpbHMgaXQnbGwgYXBwbHkgdG8gYmFyIGluc3RlYWQgb2YKKyMgZGlyL2Zvby4gIFRoZXJlJ3MgYWx3YXlzIGFuIGV4dHJhICduJyB0byByZWplY3QgZWRpdHMgdG8gZGlyL2ZvbyBpbgorIyB0aGUgZmFpbHVyZSBjYXNlIChhbmQgdGh1cyBnZXQgb3V0IG9mIHRoZSBsb29wKS4KKwordGVzdF9leHBlY3Rfc3VjY2VzcyBQRVJMICdwYXRoIGxpbWl0aW5nIHdvcmtzOiBkaXInICcKKwlzZXRfc3RhdGUgZGlyL2ZvbyB3b3JrIGhlYWQgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzIHkgbiB8IGdpdCByZXN0b3JlIC1wIGRpciAmJgorCXZlcmlmeV9zYXZlZF9zdGF0ZSBiYXIgJiYKKwl2ZXJpZnlfc3RhdGUgZGlyL2ZvbyBoZWFkIGhlYWQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBQRVJMICdwYXRoIGxpbWl0aW5nIHdvcmtzOiAtLSBkaXInICcKKwlzZXRfc3RhdGUgZGlyL2ZvbyB3b3JrIGhlYWQgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzIHkgbiB8IGdpdCByZXN0b3JlIC1wIC0tIGRpciAmJgorCXZlcmlmeV9zYXZlZF9zdGF0ZSBiYXIgJiYKKwl2ZXJpZnlfc3RhdGUgZGlyL2ZvbyBoZWFkIGhlYWQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBQRVJMICdwYXRoIGxpbWl0aW5nIHdvcmtzOiBIRUFEXiAtLSBkaXInICcKKwlzZXRfc3RhdGUgZGlyL2ZvbyB3b3JrIGhlYWQgJiYKKwkjIHRoZSB0aGlyZCBuIGlzIHRvIGdldCBvdXQgaW4gY2FzZSBpdCBtaXN0YWtlbmx5IGRvZXMgbm90IGFwcGx5CisJdGVzdF93cml0ZV9saW5lcyB5IG4gbiB8IGdpdCByZXN0b3JlIC1wIC0tc291cmNlPUhFQUReIC0tIGRpciAmJgorCXZlcmlmeV9zYXZlZF9zdGF0ZSBiYXIgJiYKKwl2ZXJpZnlfc3RhdGUgZGlyL2ZvbyBwYXJlbnQgaGVhZAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIFBFUkwgJ3BhdGggbGltaXRpbmcgd29ya3M6IGZvbyBpbnNpZGUgZGlyJyAnCisJc2V0X3N0YXRlIGRpci9mb28gd29yayBoZWFkICYmCisJIyB0aGUgdGhpcmQgbiBpcyB0byBnZXQgb3V0IGluIGNhc2UgaXQgbWlzdGFrZW5seSBkb2VzIG5vdCBhcHBseQorCXRlc3Rfd3JpdGVfbGluZXMgeSBuIG4gfCAoY2QgZGlyICYmIGdpdCByZXN0b3JlIC1wIGZvbykgJiYKKwl2ZXJpZnlfc2F2ZWRfc3RhdGUgYmFyICYmCisJdmVyaWZ5X3N0YXRlIGRpci9mb28gaGVhZCBoZWFkCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgUEVSTCAnbm9uZSBvZiB0aGlzIG1vdmVkIEhFQUQnICcKKwl2ZXJpZnlfc2F2ZWRfaGVhZAorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDIwNzItcmVzdG9yZS1wYXRoc3BlYy1maWxlLnNoIGIvdC90MjA3Mi1yZXN0b3JlLXBhdGhzcGVjLWZpbGUuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMGQ0Nzk0NgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDIwNzItcmVzdG9yZS1wYXRoc3BlYy1maWxlLnNoCkBAIC0wLDAgKzEsMTY0IEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0ncmVzdG9yZSAtLXBhdGhzcGVjLWZyb20tZmlsZScKKworLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfdGljaworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIHNldHVwICcKKwl0ZXN0X2NvbW1pdCBmaWxlMCAmJgorCisJZWNobyAxID5maWxlQS50ICYmCisJZWNobyAxID5maWxlQi50ICYmCisJZWNobyAxID5maWxlQy50ICYmCisJZWNobyAxID5maWxlRC50ICYmCisJZ2l0IGFkZCBmaWxlQS50IGZpbGVCLnQgZmlsZUMudCBmaWxlRC50ICYmCisJZ2l0IGNvbW1pdCAtbSAiZmlsZXMgMSIgJiYKKworCWVjaG8gMiA+ZmlsZUEudCAmJgorCWVjaG8gMiA+ZmlsZUIudCAmJgorCWVjaG8gMiA+ZmlsZUMudCAmJgorCWVjaG8gMiA+ZmlsZUQudCAmJgorCWdpdCBhZGQgZmlsZUEudCBmaWxlQi50IGZpbGVDLnQgZmlsZUQudCAmJgorCWdpdCBjb21taXQgLW0gImZpbGVzIDIiICYmCisKKwlnaXQgdGFnIGNoZWNrcG9pbnQKKycKKworcmVzdG9yZV9jaGVja3BvaW50ICgpIHsKKwlnaXQgcmVzZXQgLS1oYXJkIGNoZWNrcG9pbnQKK30KKwordmVyaWZ5X2V4cGVjdCAoKSB7CisJZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbiAtLXVudHJhY2tlZC1maWxlcz1ubyAtLSBmaWxlQS50IGZpbGVCLnQgZmlsZUMudCBmaWxlRC50ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcGF0aHNwZWMtZnJvbS1maWxlIGZyb20gc3RkaW4nICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCWVjaG8gZmlsZUEudCB8IGdpdCByZXN0b3JlIC0tcGF0aHNwZWMtZnJvbS1maWxlPS0gLS1zb3VyY2U9SEVBRF4xICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJIE0gZmlsZUEudAorCUVPRgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1wYXRoc3BlYy1mcm9tLWZpbGUgZnJvbSBmaWxlJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwllY2hvIGZpbGVBLnQgPmxpc3QgJiYKKwlnaXQgcmVzdG9yZSAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0IC0tc291cmNlPUhFQUReMSAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCSBNIGZpbGVBLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ05VTCBkZWxpbWl0ZXJzJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwlwcmludGYgImZpbGVBLnRcMGZpbGVCLnRcMCIgfCBnaXQgcmVzdG9yZSAtLXBhdGhzcGVjLWZyb20tZmlsZT0tIC0tcGF0aHNwZWMtZmlsZS1udWwgLS1zb3VyY2U9SEVBRF4xICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJIE0gZmlsZUEudAorCSBNIGZpbGVCLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0xGIGRlbGltaXRlcnMnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCXByaW50ZiAiZmlsZUEudFxuZmlsZUIudFxuIiB8IGdpdCByZXN0b3JlIC0tcGF0aHNwZWMtZnJvbS1maWxlPS0gLS1zb3VyY2U9SEVBRF4xICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJIE0gZmlsZUEudAorCSBNIGZpbGVCLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25vIHRyYWlsaW5nIGRlbGltaXRlcicgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJcHJpbnRmICJmaWxlQS50XG5maWxlQi50IiB8IGdpdCByZXN0b3JlIC0tcGF0aHNwZWMtZnJvbS1maWxlPS0gLS1zb3VyY2U9SEVBRF4xICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJIE0gZmlsZUEudAorCSBNIGZpbGVCLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0NSTEYgZGVsaW1pdGVycycgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJcHJpbnRmICJmaWxlQS50XHJcbmZpbGVCLnRcclxuIiB8IGdpdCByZXN0b3JlIC0tcGF0aHNwZWMtZnJvbS1maWxlPS0gLS1zb3VyY2U9SEVBRF4xICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJIE0gZmlsZUEudAorCSBNIGZpbGVCLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3F1b3RlcycgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJY2F0ID5saXN0IDw8LVxFT0YgJiYKKwkiZmlsZVwxMDEudCIKKwlFT0YKKworCWdpdCByZXN0b3JlIC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLS1zb3VyY2U9SEVBRF4xICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJIE0gZmlsZUEudAorCUVPRgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncXVvdGVzIG5vdCBjb21wYXRpYmxlIHdpdGggLS1wYXRoc3BlYy1maWxlLW51bCcgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJY2F0ID5saXN0IDw8LVxFT0YgJiYKKwkiZmlsZVwxMDEudCIKKwlFT0YKKworCXRlc3RfbXVzdF9mYWlsIGdpdCByZXN0b3JlIC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLS1wYXRoc3BlYy1maWxlLW51bCAtLXNvdXJjZT1IRUFEXjEKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnb25seSB0b3VjaGVzIHdoYXQgd2FzIGxpc3RlZCcgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJcHJpbnRmICJmaWxlQi50XG5maWxlQy50XG4iIHwgZ2l0IHJlc3RvcmUgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSAtLXNvdXJjZT1IRUFEXjEgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwkgTSBmaWxlQi50CisJIE0gZmlsZUMudAorCUVPRgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZXJyb3IgY29uZGl0aW9ucycgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCWVjaG8gZmlsZUEudCA+bGlzdCAmJgorCT5lbXB0eV9saXN0ICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmVzdG9yZSAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0IC0tcGF0Y2ggLS1zb3VyY2U9SEVBRF4xIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1wYXRjaCIgZXJyICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmVzdG9yZSAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0IC0tc291cmNlPUhFQUReMSAtLSBmaWxlQS50IDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggcGF0aHNwZWMgYXJndW1lbnRzIiBlcnIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCByZXN0b3JlIC0tcGF0aHNwZWMtZmlsZS1udWwgLS1zb3VyY2U9SEVBRF4xIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiLS1wYXRoc3BlYy1maWxlLW51bCByZXF1aXJlcyAtLXBhdGhzcGVjLWZyb20tZmlsZSIgZXJyICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmVzdG9yZSAtLXBhdGhzcGVjLWZyb20tZmlsZT1lbXB0eV9saXN0IC0tc291cmNlPUhFQUReMSAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgInlvdSBtdXN0IHNwZWNpZnkgcGF0aChzKSB0byByZXN0b3JlIiBlcnIKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QyMTA3LXVwZGF0ZS1pbmRleC1iYXNpYy5zaCBiL3QvdDIxMDctdXBkYXRlLWluZGV4LWJhc2ljLnNoCmluZGV4IDIyNDJjZDAuLmEzMGI3Y2EgMTAwNzU1Ci0tLSBhL3QvdDIxMDctdXBkYXRlLWluZGV4LWJhc2ljLnNoCisrKyBiL3QvdDIxMDctdXBkYXRlLWluZGV4LWJhc2ljLnNoCkBAIC05LDcgKzksNiBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd1cGRhdGUtaW5kZXggLS1ub25zZW5zZSBmYWlscycgJwogCXRlc3RfbXVzdF9mYWlsIGdpdCB1cGRhdGUtaW5kZXggLS1ub25zZW5zZSAyPm1zZyAmJgotCWNhdCBtc2cgJiYKIAl0ZXN0IC1zIG1zZwogJwogCmRpZmYgLS1naXQgYS90L3QyMjAzLWFkZC1pbnRlbnQuc2ggYi90L3QyMjAzLWFkZC1pbnRlbnQuc2gKaW5kZXggNjhlNTRkNS4uNWJiZThkYyAxMDA3NTUKLS0tIGEvdC90MjIwMy1hZGQtaW50ZW50LnNoCisrKyBiL3QvdDIyMDMtYWRkLWludGVudC5zaApAQCAtMjQ3LDEyICsyNDcsMTQgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJyJkaWZmIEhFQUQiIGluY2x1ZGVzIGl0YSBhcyBuZXcgZmlsZXMnICcKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZWNobyBuZXcgPm5ldy1pdGEgJiYKKwlvaWQ9JChnaXQgaGFzaC1vYmplY3QgbmV3LWl0YSkgJiYKKwlvaWQ9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgJG9pZCkgJiYKIAlnaXQgYWRkIC1OIG5ldy1pdGEgJiYKIAlnaXQgZGlmZiBIRUFEID5hY3R1YWwgJiYKLQljYXQgPmV4cGVjdGVkIDw8LVxFT0YgJiYKKwljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgogCWRpZmYgLS1naXQgYS9uZXctaXRhIGIvbmV3LWl0YQogCW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci0JaW5kZXggMDAwMDAwMC4uM2U3NTc2NQorCWluZGV4IDAwMDAwMDAuLiRvaWQKIAktLS0gL2Rldi9udWxsCiAJKysrIGIvbmV3LWl0YQogCUBAIC0wLDAgKzEgQEAKZGlmZiAtLWdpdCBhL3QvdDIwMjUtd29ya3RyZWUtYWRkLnNoIGIvdC90MjQwMC13b3JrdHJlZS1hZGQuc2gKc2ltaWxhcml0eSBpbmRleCA4OSUKcmVuYW1lIGZyb20gdC90MjAyNS13b3JrdHJlZS1hZGQuc2gKcmVuYW1lIHRvIHQvdDI0MDAtd29ya3RyZWUtYWRkLnNoCmluZGV4IDI4NmJiYTMuLjVhNzQ5NTQgMTAwNzU1Ci0tLSBhL3QvdDIwMjUtd29ya3RyZWUtYWRkLnNoCisrKyBiL3QvdDI0MDAtd29ya3RyZWUtYWRkLnNoCkBAIC00MzgsNyArNDM4LDcgQEAKIAkJY2QgZm9vICYmCiAJCXRlc3RfbXVzdF9mYWlsIGdpdCBjb25maWcgImJyYW5jaC5mb28ucmVtb3RlIiAmJgogCQl0ZXN0X211c3RfZmFpbCBnaXQgY29uZmlnICJicmFuY2guZm9vLm1lcmdlIiAmJgotCQkhIHRlc3RfY21wX3JldiByZWZzL3JlbW90ZXMvcmVwb19hL2ZvbyByZWZzL2hlYWRzL2ZvbworCQl0ZXN0X2NtcF9yZXYgISByZWZzL3JlbW90ZXMvcmVwb19hL2ZvbyByZWZzL2hlYWRzL2ZvbwogCSkKICcKIApAQCAtNDgzLDcgKzQ4Myw3IEBACiAJCWNkIGZvbyAmJgogCQl0ZXN0X211c3RfZmFpbCBnaXQgY29uZmlnICJicmFuY2guZm9vLnJlbW90ZSIgJiYKIAkJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbmZpZyAiYnJhbmNoLmZvby5tZXJnZSIgJiYKLQkJISB0ZXN0X2NtcF9yZXYgcmVmcy9yZW1vdGVzL3JlcG9fYS9mb28gcmVmcy9oZWFkcy9mb28KKwkJdGVzdF9jbXBfcmV2ICEgcmVmcy9yZW1vdGVzL3JlcG9fYS9mb28gcmVmcy9oZWFkcy9mb28KIAkpCiAnCiAKQEAgLTU3MCw0ICs1NzAsNTQgQEAKIAlnaXQgd29ya3RyZWUgYWRkIC0tZm9yY2UgLS1mb3JjZSAtLWRldGFjaCBnbm9vCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJyJhZGQiIG5vdCB0cmlwcGVkIHVwIGJ5IG1hZ2ljIHdvcmt0cmVlIG1hdGNoaW5nIicgJworCSMgaWYgd29ya3RyZWUgInN1YjEvYmFyIiBleGlzdHMsICJnaXQgd29ya3RyZWUgYWRkIGJhciIgaW4gZGlzdGluY3QKKwkjIGRpcmVjdG9yeSBgc3ViMmAgc2hvdWxkIG5vdCBtaXN0YWtlbmx5IGNvbXBsYWluIHRoYXQgYGJhcmAgaXMgYW4KKwkjIGFscmVhZHktcmVnaXN0ZXJlZCB3b3JrdHJlZQorCW1rZGlyIHN1YjEgc3ViMiAmJgorCWdpdCAtQyBzdWIxIC0tZ2l0LWRpcj0uLi8uZ2l0IHdvcmt0cmVlIGFkZCAtLWRldGFjaCBib3pvICYmCisJZ2l0IC1DIHN1YjIgLS1naXQtZGlyPS4uLy5naXQgd29ya3RyZWUgYWRkIC0tZGV0YWNoIGJvem8KKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBGVU5OWU5BTUVTICdzYW5pdGl6ZSBnZW5lcmF0ZWQgd29ya3RyZWUgbmFtZScgJworCWdpdCB3b3JrdHJlZSBhZGQgLS1kZXRhY2ggIi4gIHdlaXJkKi4uPy5sb2NrLmxvY2siICYmCisJdGVzdCAtZCAuZ2l0L3dvcmt0cmVlcy8tLS13ZWlyZC0uLQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICciYWRkIiBzaG91bGQgbm90IGZhaWwgYmVjYXVzZSBvZiBhbm90aGVyIGJhZCB3b3JrdHJlZScgJworCWdpdCBpbml0IGFkZC1mYWlsICYmCisJKAorCQljZCBhZGQtZmFpbCAmJgorCQl0ZXN0X2NvbW1pdCBmaXJzdCAmJgorCQlta2RpciBzdWIgJiYKKwkJZ2l0IHdvcmt0cmVlIGFkZCBzdWIvdG8tYmUtZGVsZXRlZCAmJgorCQlybSAtcmYgc3ViICYmCisJCWdpdCB3b3JrdHJlZSBhZGQgc2Vjb25kCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICciYWRkIiB3aXRoIHVuaW5pdGlhbGl6ZWQgc3VibW9kdWxlLCB3aXRoIHN1Ym1vZHVsZS5yZWN1cnNlIHVuc2V0JyAnCisJdGVzdF9jcmVhdGVfcmVwbyBzdWJtb2R1bGUgJiYKKwl0ZXN0X2NvbW1pdCAtQyBzdWJtb2R1bGUgZmlyc3QgJiYKKwl0ZXN0X2NyZWF0ZV9yZXBvIHByb2plY3QgJiYKKwlnaXQgLUMgcHJvamVjdCBzdWJtb2R1bGUgYWRkIC4uL3N1Ym1vZHVsZSAmJgorCWdpdCAtQyBwcm9qZWN0IGFkZCBzdWJtb2R1bGUgJiYKKwl0ZXN0X3RpY2sgJiYKKwlnaXQgLUMgcHJvamVjdCBjb21taXQgLW0gYWRkX3N1YiAmJgorCWdpdCBjbG9uZSBwcm9qZWN0IHByb2plY3QtY2xvbmUgJiYKKwlnaXQgLUMgcHJvamVjdC1jbG9uZSB3b3JrdHJlZSBhZGQgLi4vcHJvamVjdC0yCisnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICciYWRkIiB3aXRoIHVuaW5pdGlhbGl6ZWQgc3VibW9kdWxlLCB3aXRoIHN1Ym1vZHVsZS5yZWN1cnNlIHNldCcgJworCWdpdCAtQyBwcm9qZWN0LWNsb25lIC1jIHN1Ym1vZHVsZS5yZWN1cnNlIHdvcmt0cmVlIGFkZCAuLi9wcm9qZWN0LTMKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnImFkZCIgd2l0aCBpbml0aWFsaXplZCBzdWJtb2R1bGUsIHdpdGggc3VibW9kdWxlLnJlY3Vyc2UgdW5zZXQnICcKKwlnaXQgLUMgcHJvamVjdC1jbG9uZSBzdWJtb2R1bGUgdXBkYXRlIC0taW5pdCAmJgorCWdpdCAtQyBwcm9qZWN0LWNsb25lIHdvcmt0cmVlIGFkZCAuLi9wcm9qZWN0LTQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnImFkZCIgd2l0aCBpbml0aWFsaXplZCBzdWJtb2R1bGUsIHdpdGggc3VibW9kdWxlLnJlY3Vyc2Ugc2V0JyAnCisJZ2l0IC1DIHByb2plY3QtY2xvbmUgLWMgc3VibW9kdWxlLnJlY3Vyc2Ugd29ya3RyZWUgYWRkIC4uL3Byb2plY3QtNQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDIwMjYtd29ya3RyZWUtcHJ1bmUuc2ggYi90L3QyNDAxLXdvcmt0cmVlLXBydW5lLnNoCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSB0L3QyMDI2LXdvcmt0cmVlLXBydW5lLnNoCnJlbmFtZSB0byB0L3QyNDAxLXdvcmt0cmVlLXBydW5lLnNoCmRpZmYgLS1naXQgYS90L3QyMDI3LXdvcmt0cmVlLWxpc3Quc2ggYi90L3QyNDAyLXdvcmt0cmVlLWxpc3Quc2gKc2ltaWxhcml0eSBpbmRleCA5NiUKcmVuYW1lIGZyb20gdC90MjAyNy13b3JrdHJlZS1saXN0LnNoCnJlbmFtZSB0byB0L3QyNDAyLXdvcmt0cmVlLWxpc3Quc2gKaW5kZXggYmI2ZmI5Yi4uNjlmZmU4NiAxMDA3NTUKLS0tIGEvdC90MjAyNy13b3JrdHJlZS1saXN0LnNoCisrKyBiL3QvdDI0MDItd29ya3RyZWUtbGlzdC5zaApAQCAtMTUxLDQgKzE1MSwxMCBAQAogCXRlc3RfY21wIGV4cGVjdGVkIHNvcnRlZC9tYWluL2FjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd3b3JrdHJlZSBwYXRoIHdoZW4gY2FsbGVkIGluIC5naXQgZGlyZWN0b3J5JyAnCisJZ2l0IHdvcmt0cmVlIGxpc3QgPmxpc3QxJiYKKwlnaXQgLUMgLmdpdCB3b3JrdHJlZSBsaXN0ID5saXN0MiAmJgorCXRlc3RfY21wIGxpc3QxIGxpc3QyCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MjAyOC13b3JrdHJlZS1tb3ZlLnNoIGIvdC90MjQwMy13b3JrdHJlZS1tb3ZlLnNoCnNpbWlsYXJpdHkgaW5kZXggODYlCnJlbmFtZSBmcm9tIHQvdDIwMjgtd29ya3RyZWUtbW92ZS5zaApyZW5hbWUgdG8gdC90MjQwMy13b3JrdHJlZS1tb3ZlLnNoCmluZGV4IDMzYzAzMzcuLjkzOWQxOGQgMTAwNzU1Ci0tLSBhL3QvdDIwMjgtd29ya3RyZWUtbW92ZS5zaAorKysgYi90L3QyNDAzLXdvcmt0cmVlLW1vdmUuc2gKQEAgLTExMiw2ICsxMTIsMjYgQEAKIAlnaXQgd29ya3RyZWUgbW92ZSAtLWZvcmNlIC0tZm9yY2UgZmx1bXAgcGxvb2YKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnbW92ZSBhIHJlcG8gd2l0aCB1bmluaXRpYWxpemVkIHN1Ym1vZHVsZScgJworCWdpdCBpbml0IHdpdGhzdWIgJiYKKwkoCisJCWNkIHdpdGhzdWIgJiYKKwkJdGVzdF9jb21taXQgaW5pdGlhbCAmJgorCQlnaXQgc3VibW9kdWxlIGFkZCAiJFBXRCIvLmdpdCBzdWIgJiYKKwkJZ2l0IGNvbW1pdCAtbSB3aXRoc3ViICYmCisJCWdpdCB3b3JrdHJlZSBhZGQgc2Vjb25kIEhFQUQgJiYKKwkJZ2l0IHdvcmt0cmVlIG1vdmUgc2Vjb25kIHRoaXJkCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdub3QgbW92ZSBhIHJlcG8gd2l0aCBpbml0aWFsaXplZCBzdWJtb2R1bGUnICcKKwkoCisJCWNkIHdpdGhzdWIgJiYKKwkJZ2l0IC1DIHRoaXJkIHN1Ym1vZHVsZSB1cGRhdGUgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHdvcmt0cmVlIG1vdmUgdGhpcmQgZm9ydGgKKwkpCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlbW92ZSBtYWluIHdvcmt0cmVlJyAnCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHdvcmt0cmVlIHJlbW92ZSAuCiAnCkBAIC0xODUsNCArMjA1LDIxIEBACiAJKQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZW1vdmUgYSByZXBvIHdpdGggdW5pbml0aWFsaXplZCBzdWJtb2R1bGUnICcKKwkoCisJCWNkIHdpdGhzdWIgJiYKKwkJZ2l0IHdvcmt0cmVlIGFkZCB0by1yZW1vdmUgSEVBRCAmJgorCQlnaXQgd29ya3RyZWUgcmVtb3ZlIHRvLXJlbW92ZQorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbm90IHJlbW92ZSBhIHJlcG8gd2l0aCBpbml0aWFsaXplZCBzdWJtb2R1bGUnICcKKwkoCisJCWNkIHdpdGhzdWIgJiYKKwkJZ2l0IHdvcmt0cmVlIGFkZCB0by1yZW1vdmUgSEVBRCAmJgorCQlnaXQgLUMgdG8tcmVtb3ZlIHN1Ym1vZHVsZSB1cGRhdGUgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHdvcmt0cmVlIHJlbW92ZSB0by1yZW1vdmUKKwkpCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MjAyOS13b3JrdHJlZS1jb25maWcuc2ggYi90L3QyNDA0LXdvcmt0cmVlLWNvbmZpZy5zaApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gdC90MjAyOS13b3JrdHJlZS1jb25maWcuc2gKcmVuYW1lIHRvIHQvdDI0MDQtd29ya3RyZWUtY29uZmlnLnNoCmRpZmYgLS1naXQgYS90L3QyNDA1LXdvcmt0cmVlLXN1Ym1vZHVsZS5zaCBiL3QvdDI0MDUtd29ya3RyZWUtc3VibW9kdWxlLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmUxYjJiZmQKLS0tIC9kZXYvbnVsbAorKysgYi90L3QyNDA1LXdvcmt0cmVlLXN1Ym1vZHVsZS5zaApAQCAtMCwwICsxLDkwIEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0nQ29tYmluYXRpb24gb2Ygc3VibW9kdWxlcyBhbmQgbXVsdGlwbGUgd29ya3RyZWVzJworCisuIC4vdGVzdC1saWIuc2gKKworYmFzZV9wYXRoPSQocHdkIC1QKQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cDogY3JlYXRlIG9yaWdpbiByZXBvcycgICcKKwlnaXQgaW5pdCBvcmlnaW4vc3ViICYmCisJdGVzdF9jb21taXQgLUMgb3JpZ2luL3N1YiBmaWxlMSAmJgorCWdpdCBpbml0IG9yaWdpbi9tYWluICYmCisJdGVzdF9jb21taXQgLUMgb3JpZ2luL21haW4gZmlyc3QgJiYKKwlnaXQgLUMgb3JpZ2luL21haW4gc3VibW9kdWxlIGFkZCAuLi9zdWIgJiYKKwlnaXQgLUMgb3JpZ2luL21haW4gY29tbWl0IC1tICJhZGQgc3ViIiAmJgorCXRlc3RfY29tbWl0IC1DIG9yaWdpbi9zdWIgImZpbGUxIHVwZGF0ZWQiIGZpbGUxIGZpbGUxdXBkYXRlZCBmaWxlMXVwZGF0ZWQgJiYKKwlnaXQgLUMgb3JpZ2luL21haW4vc3ViIHB1bGwgJiYKKwlnaXQgLUMgb3JpZ2luL21haW4gYWRkIHN1YiAmJgorCWdpdCAtQyBvcmlnaW4vbWFpbiBjb21taXQgLW0gInN1YiB1cGRhdGVkIgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cDogY2xvbmUgc3VwZXJwcm9qZWN0IHRvIGNyZWF0ZSBtYWluIHdvcmt0cmVlJyAnCisJZ2l0IGNsb25lIC0tcmVjdXJzaXZlICIkYmFzZV9wYXRoL29yaWdpbi9tYWluIiBtYWluCisnCisKK3JldjFfaGFzaF9tYWluPSQoZ2l0IC0tZ2l0LWRpcj1vcmlnaW4vbWFpbi8uZ2l0IHNob3cgLS1wcmV0dHk9Zm9ybWF0OiVoIC1xICJIRUFEfjEiKQorcmV2MV9oYXNoX3N1Yj0kKGdpdCAtLWdpdC1kaXI9b3JpZ2luL3N1Yi8uZ2l0IHNob3cgLS1wcmV0dHk9Zm9ybWF0OiVoIC1xICJIRUFEfjEiKQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhZGQgc3VwZXJwcm9qZWN0IHdvcmt0cmVlJyAnCisJZ2l0IC1DIG1haW4gd29ya3RyZWUgYWRkICIkYmFzZV9wYXRoL3dvcmt0cmVlIiAiJHJldjFfaGFzaF9tYWluIgorJworCit0ZXN0X2V4cGVjdF9mYWlsdXJlICdzdWJtb2R1bGUgaXMgY2hlY2tlZCBvdXQganVzdCBhZnRlciB3b3JrdHJlZSBhZGQnICcKKwlnaXQgLUMgd29ya3RyZWUgZGlmZiAtLXN1Ym1vZHVsZSBtYXN0ZXIiXiEiID5vdXQgJiYKKwlncmVwICJmaWxlMSB1cGRhdGVkIiBvdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYWRkIHN1cGVycHJvamVjdCB3b3JrdHJlZSBhbmQgaW5pdGlhbGl6ZSBzdWJtb2R1bGVzJyAnCisJZ2l0IC1DIG1haW4gd29ya3RyZWUgYWRkICIkYmFzZV9wYXRoL3dvcmt0cmVlLXN1Ym1vZHVsZS11cGRhdGUiICIkcmV2MV9oYXNoX21haW4iICYmCisJZ2l0IC1DIHdvcmt0cmVlLXN1Ym1vZHVsZS11cGRhdGUgc3VibW9kdWxlIHVwZGF0ZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWJtb2R1bGUgaXMgY2hlY2tlZCBvdXQganVzdCBhZnRlciBzdWJtb2R1bGUgdXBkYXRlIGluIGxpbmtlZCB3b3JrdHJlZScgJworCWdpdCAtQyB3b3JrdHJlZS1zdWJtb2R1bGUtdXBkYXRlIGRpZmYgLS1zdWJtb2R1bGUgbWFzdGVyIl4hIiA+b3V0ICYmCisJZ3JlcCAiZmlsZTEgdXBkYXRlZCIgb3V0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FkZCBzdXBlcnByb2plY3Qgd29ya3RyZWUgYW5kIG1hbnVhbGx5IGFkZCBzdWJtb2R1bGUgd29ya3RyZWUnICcKKwlnaXQgLUMgbWFpbiB3b3JrdHJlZSBhZGQgIiRiYXNlX3BhdGgvbGlua2VkX3N1Ym1vZHVsZSIgIiRyZXYxX2hhc2hfbWFpbiIgJiYKKwlnaXQgLUMgbWFpbi9zdWIgd29ya3RyZWUgYWRkICIkYmFzZV9wYXRoL2xpbmtlZF9zdWJtb2R1bGUvc3ViIiAiJHJldjFfaGFzaF9zdWIiCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N1Ym1vZHVsZSBpcyBjaGVja2VkIG91dCBhZnRlciBtYW51YWxseSBhZGRpbmcgc3VibW9kdWxlIHdvcmt0cmVlJyAnCisJZ2l0IC1DIGxpbmtlZF9zdWJtb2R1bGUgZGlmZiAtLXN1Ym1vZHVsZSBtYXN0ZXIiXiEiID5vdXQgJiYKKwlncmVwICJmaWxlMSB1cGRhdGVkIiBvdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2tvdXQgLS1yZWN1cnNlLXN1Ym1vZHVsZXMgdXNlcyAkR0lUX0RJUiBmb3Igc3VibW9kdWxlcyBpbiBhIGxpbmtlZCB3b3JrdHJlZScgJworCWdpdCAtQyBtYWluIHdvcmt0cmVlIGFkZCAiJGJhc2VfcGF0aC9jaGVja291dC1yZWN1cnNlIiAtLWRldGFjaCAgJiYKKwlnaXQgLUMgY2hlY2tvdXQtcmVjdXJzZSBzdWJtb2R1bGUgdXBkYXRlIC0taW5pdCAmJgorCWVjaG8gImdpdGRpcjogLi4vLi4vbWFpbi8uZ2l0L3dvcmt0cmVlcy9jaGVja291dC1yZWN1cnNlL21vZHVsZXMvc3ViIiA+ZXhwZWN0LWdpdGZpbGUgJiYKKwljYXQgY2hlY2tvdXQtcmVjdXJzZS9zdWIvLmdpdCA+YWN0dWFsLWdpdGZpbGUgJiYKKwl0ZXN0X2NtcCBleHBlY3QtZ2l0ZmlsZSBhY3R1YWwtZ2l0ZmlsZSAmJgorCWdpdCAtQyBtYWluL3N1YiByZXYtcGFyc2UgSEVBRCA+ZXhwZWN0LWhlYWQtbWFpbiAmJgorCWdpdCAtQyBjaGVja291dC1yZWN1cnNlIGNoZWNrb3V0IC0tcmVjdXJzZS1zdWJtb2R1bGVzIEhFQUR+MSAmJgorCWNhdCBjaGVja291dC1yZWN1cnNlL3N1Yi8uZ2l0ID5hY3R1YWwtZ2l0ZmlsZSAmJgorCWdpdCAtQyBtYWluL3N1YiByZXYtcGFyc2UgSEVBRCA+YWN0dWFsLWhlYWQtbWFpbiAmJgorCXRlc3RfY21wIGV4cGVjdC1naXRmaWxlIGFjdHVhbC1naXRmaWxlICYmCisJdGVzdF9jbXAgZXhwZWN0LWhlYWQtbWFpbiBhY3R1YWwtaGVhZC1tYWluCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvcmUud29ya3RyZWUgaXMgcmVtb3ZlZCBpbiAkR0lUX0RJUi9tb2R1bGVzLzxuYW1lPi9jb25maWcsIG5vdCBpbiAkR0lUX0NPTU1PTl9ESVIvbW9kdWxlcy88bmFtZT4vY29uZmlnJyAnCisJZWNobyAiLi4vLi4vLi4vc3ViIiA+ZXhwZWN0LW1haW4gJiYKKwlnaXQgLUMgbWFpbi9zdWIgY29uZmlnIC0tZ2V0IGNvcmUud29ya3RyZWUgPmFjdHVhbC1tYWluICYmCisJdGVzdF9jbXAgZXhwZWN0LW1haW4gYWN0dWFsLW1haW4gJiYKKwllY2hvICIuLi8uLi8uLi8uLi8uLi8uLi9jaGVja291dC1yZWN1cnNlL3N1YiIgPmV4cGVjdC1saW5rZWQgJiYKKwlnaXQgLUMgY2hlY2tvdXQtcmVjdXJzZS9zdWIgY29uZmlnIC0tZ2V0IGNvcmUud29ya3RyZWUgPmFjdHVhbC1saW5rZWQgJiYKKwl0ZXN0X2NtcCBleHBlY3QtbGlua2VkIGFjdHVhbC1saW5rZWQgJiYKKwlnaXQgLUMgY2hlY2tvdXQtcmVjdXJzZSBjaGVja291dCAtLXJlY3Vyc2Utc3VibW9kdWxlcyBmaXJzdCAmJgorCXRlc3RfZXhwZWN0X2NvZGUgMSBnaXQgLUMgbWFpbi8uZ2l0L3dvcmt0cmVlcy9jaGVja291dC1yZWN1cnNlL21vZHVsZXMvc3ViIGNvbmZpZyAtLWdldCBjb3JlLndvcmt0cmVlID5saW5rZWQtY29uZmlnICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGxpbmtlZC1jb25maWcgJiYKKwlnaXQgLUMgbWFpbi9zdWIgY29uZmlnIC0tZ2V0IGNvcmUud29ya3RyZWUgPmFjdHVhbC1tYWluICYmCisJdGVzdF9jbXAgZXhwZWN0LW1haW4gYWN0dWFsLW1haW4KKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndW5zZXR0aW5nIGNvcmUud29ya3RyZWUgZG9lcyBub3QgcHJldmVudCBydW5uaW5nIGNvbW1hbmRzIGRpcmVjdGx5IGFnYWluc3QgdGhlIHN1Ym1vZHVsZSByZXBvc2l0b3J5JyAnCisJZ2l0IC1DIG1haW4vLmdpdC93b3JrdHJlZXMvY2hlY2tvdXQtcmVjdXJzZS9tb2R1bGVzL3N1YiBsb2cKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzMDAwLWxzLWZpbGVzLW90aGVycy5zaCBiL3QvdDMwMDAtbHMtZmlsZXMtb3RoZXJzLnNoCmluZGV4IGFmZDQ3NTYuLjBhZWZhZGEgMTAwNzU1Ci0tLSBhL3QvdDMwMDAtbHMtZmlsZXMtb3RoZXJzLnNoCisrKyBiL3QvdDMwMDAtbHMtZmlsZXMtb3RoZXJzLnNoCkBAIC0zLDcgKzMsNyBAQAogIyBDb3B5cmlnaHQgKGMpIDIwMDUgSnVuaW8gQyBIYW1hbm8KICMKIAotdGVzdF9kZXNjcmlwdGlvbj0nZ2l0IGxzLWZpbGVzIHRlc3QgKC0tb3RoZXJzIHNob3VsZCBwaWNrIHVwIHN5bWxpbmtzKS4KK3Rlc3RfZGVzY3JpcHRpb249J2Jhc2ljIHRlc3RzIGZvciBscy1maWxlcyAtLW90aGVycwogCiBUaGlzIHRlc3QgcnVucyBnaXQgbHMtZmlsZXMgLS1vdGhlcnMgd2l0aCB0aGUgZm9sbG93aW5nIG9uIHRoZQogZmlsZXN5c3RlbS4KZGlmZiAtLWdpdCBhL3QvdDMwMDUtbHMtZmlsZXMtcmVsYXRpdmUuc2ggYi90L3QzMDA1LWxzLWZpbGVzLXJlbGF0aXZlLnNoCmluZGV4IDIwOWI0YzcuLjJlYzY5YTggMTAwNzU1Ci0tLSBhL3QvdDMwMDUtbHMtZmlsZXMtcmVsYXRpdmUuc2gKKysrIGIvdC90MzAwNS1scy1maWxlcy1yZWxhdGl2ZS5zaApAQCAtNywxMCArNyw2IEBACiAKIC4gLi90ZXN0LWxpYi5zaAogCi1uZXdfbGluZT0nCi0nCi1zcT1cJwotCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcmVwYXJlJyAnCiAJOiA+bmV2ZXItbWluZC1tZSAmJgogCWdpdCBhZGQgbmV2ZXItbWluZC1tZSAmJgpAQCAtNDQsOSArNDAsOSBAQAogCQljZCB0b3Avc3ViICYmCiAJCWZvciBmIGluIC4uL3kqCiAJCWRvCi0JCQllY2hvICJlcnJvcjogcGF0aHNwZWMgJHNxJGYkc3EgZGlkIG5vdCBtYXRjaCBhbnkgZmlsZShzKSBrbm93biB0byBnaXQiCisJCQllY2hvICJlcnJvcjogcGF0aHNwZWMgJFNRJGYkU1EgZGlkIG5vdCBtYXRjaCBhbnkgZmlsZShzKSBrbm93biB0byBnaXQiCiAJCWRvbmUgPmV4cGVjdC5lcnIgJiYKLQkJZWNobyAiRGlkIHlvdSBmb3JnZXQgdG8gJHtzcX1naXQgYWRkJHtzcX0/IiA+PmV4cGVjdC5lcnIgJiYKKwkJZWNobyAiRGlkIHlvdSBmb3JnZXQgdG8gJHtTUX1naXQgYWRkJHtTUX0/IiA+PmV4cGVjdC5lcnIgJiYKIAkJbHMgLi4veCogPmV4cGVjdC5vdXQgJiYKIAkJdGVzdF9tdXN0X2ZhaWwgZ2l0IGxzLWZpbGVzIC1jIC0tZXJyb3ItdW5tYXRjaCAuLi9beHldKiA+YWN0dWFsLm91dCAyPmFjdHVhbC5lcnIgJiYKIAkJdGVzdF9jbXAgZXhwZWN0Lm91dCBhY3R1YWwub3V0ICYmCkBAIC01OSw5ICs1NSw5IEBACiAJCWNkIHRvcC9zdWIgJiYKIAkJZm9yIGYgaW4gLi4veCoKIAkJZG8KLQkJCWVjaG8gImVycm9yOiBwYXRoc3BlYyAkc3EkZiRzcSBkaWQgbm90IG1hdGNoIGFueSBmaWxlKHMpIGtub3duIHRvIGdpdCIKKwkJCWVjaG8gImVycm9yOiBwYXRoc3BlYyAkU1EkZiRTUSBkaWQgbm90IG1hdGNoIGFueSBmaWxlKHMpIGtub3duIHRvIGdpdCIKIAkJZG9uZSA+ZXhwZWN0LmVyciAmJgotCQllY2hvICJEaWQgeW91IGZvcmdldCB0byAke3NxfWdpdCBhZGQke3NxfT8iID4+ZXhwZWN0LmVyciAmJgorCQllY2hvICJEaWQgeW91IGZvcmdldCB0byAke1NRfWdpdCBhZGQke1NRfT8iID4+ZXhwZWN0LmVyciAmJgogCQlscyAuLi95KiA+ZXhwZWN0Lm91dCAmJgogCQl0ZXN0X211c3RfZmFpbCBnaXQgbHMtZmlsZXMgLW8gLS1lcnJvci11bm1hdGNoIC4uL1t4eV0qID5hY3R1YWwub3V0IDI+YWN0dWFsLmVyciAmJgogCQl0ZXN0X2NtcCBleHBlY3Qub3V0IGFjdHVhbC5vdXQgJiYKZGlmZiAtLWdpdCBhL3QvdDMwMDctbHMtZmlsZXMtcmVjdXJzZS1zdWJtb2R1bGVzLnNoIGIvdC90MzAwNy1scy1maWxlcy1yZWN1cnNlLXN1Ym1vZHVsZXMuc2gKaW5kZXggMzE4YjViYy4uNGEwODAwMCAxMDA3NTUKLS0tIGEvdC90MzAwNy1scy1maWxlcy1yZWN1cnNlLXN1Ym1vZHVsZXMuc2gKKysrIGIvdC90MzAwNy1scy1maWxlcy1yZWN1cnNlLXN1Ym1vZHVsZXMuc2gKQEAgLTEzMCw3ICsxMzAsNiBAQAogCiAJZ2l0IGxzLWZpbGVzIC0tcmVjdXJzZS1zdWJtb2R1bGVzID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCi0JY2F0IGFjdHVhbCAmJgogCWdpdCBscy1maWxlcyAtLXJlY3Vyc2Utc3VibW9kdWxlcyAiKiIgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKZGlmZiAtLWdpdCBhL3QvdDMwMDgtbHMtZmlsZXMtbGF6eS1pbml0LW5hbWUtaGFzaC5zaCBiL3QvdDMwMDgtbHMtZmlsZXMtbGF6eS1pbml0LW5hbWUtaGFzaC5zaAppbmRleCA2NGYwNDczLi44NWYzNzA0IDEwMDc1NQotLS0gYS90L3QzMDA4LWxzLWZpbGVzLWxhenktaW5pdC1uYW1lLWhhc2guc2gKKysrIGIvdC90MzAwOC1scy1maWxlcy1sYXp5LWluaXQtbmFtZS1oYXNoLnNoCkBAIC00LDcgKzQsNyBAQAogCiAuIC4vdGVzdC1saWIuc2gKIAotaWYgdGVzdCAxIC1lcSAkKCRHSVRfQlVJTERfRElSL3QvaGVscGVyL3Rlc3QtdG9vbCBvbmxpbmUtY3B1cykKK2lmIHRlc3QgMSAtZXEgJCh0ZXN0LXRvb2wgb25saW5lLWNwdXMpCiB0aGVuCiAJc2tpcF9hbGw9J3NraXBwaW5nIGxhenktaW5pdCB0ZXN0cywgc2luZ2xlIGNwdScKIAl0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDMwMDktbHMtZmlsZXMtb3RoZXJzLW5vbnN1Ym1vZHVsZS5zaCBiL3QvdDMwMDktbHMtZmlsZXMtb3RoZXJzLW5vbnN1Ym1vZHVsZS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi45NjNmMzQ2Ci0tLSAvZGV2L251bGwKKysrIGIvdC90MzAwOS1scy1maWxlcy1vdGhlcnMtbm9uc3VibW9kdWxlLnNoCkBAIC0wLDAgKzEsNTAgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSd0ZXN0IGdpdCBscy1maWxlcyAtLW90aGVycyB3aXRoIG5vbi1zdWJtb2R1bGUgcmVwb3NpdG9yaWVzCisKK1RoaXMgdGVzdCBydW5zIGdpdCBscy1maWxlcyAtLW90aGVycyB3aXRoIHRoZSBmb2xsb3dpbmcgd29ya2luZyB0cmVlOgorCisgICAgbm9ucmVwby1uby1maWxlcy8KKyAgICAgIHBsYWluIGRpcmVjdG9yeSB3aXRoIG5vIGZpbGVzCisgICAgbm9ucmVwby11bnRyYWNrZWQtZmlsZS8KKyAgICAgIHBsYWluIGRpcmVjdG9yeSB3aXRoIGFuIHVudHJhY2tlZCBmaWxlCisgICAgcmVwby1uby1jb21taXQtbm8tZmlsZXMvCisgICAgICBnaXQgcmVwb3NpdG9yeSB3aXRob3V0IGEgY29tbWl0IG9yIGEgZmlsZQorICAgIHJlcG8tbm8tY29tbWl0LXVudHJhY2tlZC1maWxlLworICAgICAgZ2l0IHJlcG9zaXRvcnkgd2l0aG91dCBhIGNvbW1pdCBidXQgd2l0aCBhbiB1bnRyYWNrZWQgZmlsZQorICAgIHJlcG8td2l0aC1jb21taXQtbm8tZmlsZXMvCisgICAgICBnaXQgcmVwb3NpdG9yeSB3aXRoIGEgY29tbWl0IGFuZCBubyB1bnRyYWNrZWQgZmlsZXMKKyAgICByZXBvLXdpdGgtY29tbWl0LXVudHJhY2tlZC1maWxlLworICAgICAgZ2l0IHJlcG9zaXRvcnkgd2l0aCBhIGNvbW1pdCBhbmQgYW4gdW50cmFja2VkIGZpbGUKKycKKworLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwOiBkaXJlY3RvcmllcycgJworCW1rZGlyIG5vbnJlcG8tbm8tZmlsZXMvICYmCisJbWtkaXIgbm9ucmVwby11bnRyYWNrZWQtZmlsZSAmJgorCTogPm5vbnJlcG8tdW50cmFja2VkLWZpbGUvdW50cmFja2VkICYmCisJZ2l0IGluaXQgcmVwby1uby1jb21taXQtbm8tZmlsZXMgJiYKKwlnaXQgaW5pdCByZXBvLW5vLWNvbW1pdC11bnRyYWNrZWQtZmlsZSAmJgorCTogPnJlcG8tbm8tY29tbWl0LXVudHJhY2tlZC1maWxlL3VudHJhY2tlZCAmJgorCWdpdCBpbml0IHJlcG8td2l0aC1jb21taXQtbm8tZmlsZXMgJiYKKwlnaXQgLUMgcmVwby13aXRoLWNvbW1pdC1uby1maWxlcyBjb21taXQgLS1hbGxvdy1lbXB0eSAtbW1zZyAmJgorCWdpdCBpbml0IHJlcG8td2l0aC1jb21taXQtdW50cmFja2VkLWZpbGUgJiYKKwl0ZXN0X2NvbW1pdCAtQyByZXBvLXdpdGgtY29tbWl0LXVudHJhY2tlZC1maWxlIG1zZyAmJgorCTogPnJlcG8td2l0aC1jb21taXQtdW50cmFja2VkLWZpbGUvdW50cmFja2VkCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xzLWZpbGVzIC0tb3RoZXJzIGhhbmRsZXMgdW50cmFja2VkIGdpdCByZXBvc2l0b3JpZXMnICcKKwlnaXQgbHMtZmlsZXMgLW8gPm91dHB1dCAmJgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCW5vbnJlcG8tdW50cmFja2VkLWZpbGUvdW50cmFja2VkCisJb3V0cHV0CisJcmVwby1uby1jb21taXQtbm8tZmlsZXMvCisJcmVwby1uby1jb21taXQtdW50cmFja2VkLWZpbGUvCisJcmVwby13aXRoLWNvbW1pdC1uby1maWxlcy8KKwlyZXBvLXdpdGgtY29tbWl0LXVudHJhY2tlZC1maWxlLworCUVPRgorCXRlc3RfY21wIGV4cGVjdCBvdXRwdXQKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzMDExLWNvbW1vbi1wcmVmaXhlcy1hbmQtZGlyZWN0b3J5LXRyYXZlcnNhbC5zaCBiL3QvdDMwMTEtY29tbW9uLXByZWZpeGVzLWFuZC1kaXJlY3RvcnktdHJhdmVyc2FsLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjNkYTViMmIKLS0tIC9kZXYvbnVsbAorKysgYi90L3QzMDExLWNvbW1vbi1wcmVmaXhlcy1hbmQtZGlyZWN0b3J5LXRyYXZlcnNhbC5zaApAQCAtMCwwICsxLDIwOSBAQAorIyEvYmluL3NoCisKK3Rlc3RfZGVzY3JpcHRpb249J2RpcmVjdG9yeSB0cmF2ZXJzYWwgaGFuZGxpbmcsIGVzcGVjaWFsbHkgd2l0aCBjb21tb24gcHJlZml4ZXMnCisKKy4gLi90ZXN0LWxpYi5zaAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCcgJworCXRlc3RfY29tbWl0IGhlbGxvICYmCisKKwk+ZW1wdHkgJiYKKwlta2RpciB1bnRyYWNrZWRfZGlyICYmCisJPnVudHJhY2tlZF9kaXIvZW1wdHkgJiYKKwlnaXQgaW5pdCB1bnRyYWNrZWRfcmVwbyAmJgorCT51bnRyYWNrZWRfcmVwby9lbXB0eSAmJgorCisJY2F0IDw8LUVPRiA+LmdpdGlnbm9yZSAmJgorCWlnbm9yZWQKKwlhbl9pZ25vcmVkX2Rpci8KKwlFT0YKKwlta2RpciBhbl9pZ25vcmVkX2RpciAmJgorCW1rZGlyIGFuX3VudHJhY2tlZF9kaXIgJiYKKwk+YW5faWdub3JlZF9kaXIvaWdub3JlZCAmJgorCT5hbl9pZ25vcmVkX2Rpci91bnRyYWNrZWQgJiYKKwk+YW5fdW50cmFja2VkX2Rpci9pZ25vcmVkICYmCisJPmFuX3VudHJhY2tlZF9kaXIvdW50cmFja2VkCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBscy1maWxlcyAtbyBzaG93cyB0aGUgcmlnaHQgZW50cmllcycgJworCWNhdCA8PC1FT0YgPmV4cGVjdCAmJgorCS5naXRpZ25vcmUKKwlhY3R1YWwKKwlhbl9pZ25vcmVkX2Rpci9pZ25vcmVkCisJYW5faWdub3JlZF9kaXIvdW50cmFja2VkCisJYW5fdW50cmFja2VkX2Rpci9pZ25vcmVkCisJYW5fdW50cmFja2VkX2Rpci91bnRyYWNrZWQKKwllbXB0eQorCWV4cGVjdAorCXVudHJhY2tlZF9kaXIvZW1wdHkKKwl1bnRyYWNrZWRfcmVwby8KKwlFT0YKKwlnaXQgbHMtZmlsZXMgLW8gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGxzLWZpbGVzIC1vIC0tZXhjbHVkZS1zdGFuZGFyZCBzaG93cyB0aGUgcmlnaHQgZW50cmllcycgJworCWNhdCA8PC1FT0YgPmV4cGVjdCAmJgorCS5naXRpZ25vcmUKKwlhY3R1YWwKKwlhbl91bnRyYWNrZWRfZGlyL3VudHJhY2tlZAorCWVtcHR5CisJZXhwZWN0CisJdW50cmFja2VkX2Rpci9lbXB0eQorCXVudHJhY2tlZF9yZXBvLworCUVPRgorCWdpdCBscy1maWxlcyAtbyAtLWV4Y2x1ZGUtc3RhbmRhcmQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGxzLWZpbGVzIC1vIHVudHJhY2tlZF9kaXIgcmVjdXJzZXMnICcKKwllY2hvIHVudHJhY2tlZF9kaXIvZW1wdHkgPmV4cGVjdCAmJgorCWdpdCBscy1maWxlcyAtbyB1bnRyYWNrZWRfZGlyID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBscy1maWxlcyAtbyB1bnRyYWNrZWRfZGlyLyByZWN1cnNlcycgJworCWVjaG8gdW50cmFja2VkX2Rpci9lbXB0eSA+ZXhwZWN0ICYmCisJZ2l0IGxzLWZpbGVzIC1vIHVudHJhY2tlZF9kaXIvID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBscy1maWxlcyAtbyAtLWRpcmVjdG9yeSB1bnRyYWNrZWRfZGlyIGRvZXMgbm90IHJlY3Vyc2UnICcKKwllY2hvIHVudHJhY2tlZF9kaXIvID5leHBlY3QgJiYKKwlnaXQgbHMtZmlsZXMgLW8gLS1kaXJlY3RvcnkgdW50cmFja2VkX2RpciA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgbHMtZmlsZXMgLW8gLS1kaXJlY3RvcnkgdW50cmFja2VkX2Rpci8gZG9lcyBub3QgcmVjdXJzZScgJworCWVjaG8gdW50cmFja2VkX2Rpci8gPmV4cGVjdCAmJgorCWdpdCBscy1maWxlcyAtbyAtLWRpcmVjdG9yeSB1bnRyYWNrZWRfZGlyLyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgbHMtZmlsZXMgLW8gdW50cmFja2VkX3JlcG8gZG9lcyBub3QgcmVjdXJzZScgJworCWVjaG8gdW50cmFja2VkX3JlcG8vID5leHBlY3QgJiYKKwlnaXQgbHMtZmlsZXMgLW8gdW50cmFja2VkX3JlcG8gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGxzLWZpbGVzIC1vIHVudHJhY2tlZF9yZXBvLyBkb2VzIG5vdCByZWN1cnNlJyAnCisJZWNobyB1bnRyYWNrZWRfcmVwby8gPmV4cGVjdCAmJgorCWdpdCBscy1maWxlcyAtbyB1bnRyYWNrZWRfcmVwby8gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGxzLWZpbGVzIC1vIHVudHJhY2tlZF9kaXIgdW50cmFja2VkX3JlcG8gcmVjdXJzZXMgaW50byB1bnRyYWNrZWRfZGlyIG9ubHknICcKKwljYXQgPDwtRU9GID5leHBlY3QgJiYKKwl1bnRyYWNrZWRfZGlyL2VtcHR5CisJdW50cmFja2VkX3JlcG8vCisJRU9GCisJZ2l0IGxzLWZpbGVzIC1vIHVudHJhY2tlZF9kaXIgdW50cmFja2VkX3JlcG8gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGxzLWZpbGVzIC1vIHVudHJhY2tlZF9kaXIvIHVudHJhY2tlZF9yZXBvLyByZWN1cnNlcyBpbnRvIHVudHJhY2tlZF9kaXIgb25seScgJworCWNhdCA8PC1FT0YgPmV4cGVjdCAmJgorCXVudHJhY2tlZF9kaXIvZW1wdHkKKwl1bnRyYWNrZWRfcmVwby8KKwlFT0YKKwlnaXQgbHMtZmlsZXMgLW8gdW50cmFja2VkX2Rpci8gdW50cmFja2VkX3JlcG8vID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBscy1maWxlcyAtbyAtLWRpcmVjdG9yeSB1bnRyYWNrZWRfZGlyIHVudHJhY2tlZF9yZXBvIGRvZXMgbm90IHJlY3Vyc2UnICcKKwljYXQgPDwtRU9GID5leHBlY3QgJiYKKwl1bnRyYWNrZWRfZGlyLworCXVudHJhY2tlZF9yZXBvLworCUVPRgorCWdpdCBscy1maWxlcyAtbyAtLWRpcmVjdG9yeSB1bnRyYWNrZWRfZGlyIHVudHJhY2tlZF9yZXBvID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBscy1maWxlcyAtbyAtLWRpcmVjdG9yeSB1bnRyYWNrZWRfZGlyLyB1bnRyYWNrZWRfcmVwby8gZG9lcyBub3QgcmVjdXJzZScgJworCWNhdCA8PC1FT0YgPmV4cGVjdCAmJgorCXVudHJhY2tlZF9kaXIvCisJdW50cmFja2VkX3JlcG8vCisJRU9GCisJZ2l0IGxzLWZpbGVzIC1vIC0tZGlyZWN0b3J5IHVudHJhY2tlZF9kaXIvIHVudHJhY2tlZF9yZXBvLyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgbHMtZmlsZXMgLW8gLmdpdCBzaG93cyBub3RoaW5nJyAnCisJZ2l0IGxzLWZpbGVzIC1vIC5naXQgPmFjdHVhbCAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGxzLWZpbGVzIC1vIC5naXQvIHNob3dzIG5vdGhpbmcnICcKKwlnaXQgbHMtZmlsZXMgLW8gLmdpdC8gPmFjdHVhbCAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBGVU5OWU5BTUVTICdnaXQgbHMtZmlsZXMgLW8gdW50cmFja2VkXyogcmVjdXJzZXMgYXBwcm9wcmlhdGVseScgJworCW1rZGlyICJ1bnRyYWNrZWRfKiIgJiYKKwk+InVudHJhY2tlZF8qL2VtcHR5IiAmJgorCisJY2F0IDw8LUVPRiA+ZXhwZWN0ICYmCisJdW50cmFja2VkXyovZW1wdHkKKwl1bnRyYWNrZWRfZGlyL2VtcHR5CisJdW50cmFja2VkX3JlcG8vCisJRU9GCisJZ2l0IGxzLWZpbGVzIC1vICJ1bnRyYWNrZWRfKiIgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKworIyBJdCB0dXJucyBvdXQgZmlsbF9kaXJlY3RvcnkgcmV0dXJucyB0aGUgcmlnaHQgcGF0aHMsIGJ1dCBscy1maWxlcycgcG9zdC1jYWxsCisjIGZpbHRlcmluZyBpbiBzaG93X2Rpcl9lbnRyeSgpIHZpYSBjYWxsaW5nIGRpcl9wYXRoX21hdGNoKCkgd2hpY2ggZW5kcyB1cAorIyBpbiBnaXRfZm5tYXRjaCgpIGhhcyBsb2dpYyBmb3IgUEFUSFNQRUNfT05FU1RBUiB0aGF0IGFzc3VtZXMgdGhlIHBhdGhzcGVjCisjIG11c3QgbWF0Y2ggdGhlIGZ1bGwgcGF0aDsgaXQgZG9lc24ndCBjaGVjayBpdCBmb3IgbWF0Y2hpbmcgYSBsZWFkaW5nCisjIGRpcmVjdG9yeS4KK3Rlc3RfZXhwZWN0X2ZhaWx1cmUgRlVOTllOQU1FUyAnZ2l0IGxzLWZpbGVzIC1vIHVudHJhY2tlZF8qLyByZWN1cnNlcyBhcHByb3ByaWF0ZWx5JyAnCisJY2F0IDw8LUVPRiA+ZXhwZWN0ICYmCisJdW50cmFja2VkXyovZW1wdHkKKwl1bnRyYWNrZWRfZGlyL2VtcHR5CisJdW50cmFja2VkX3JlcG8vCisJRU9GCisJZ2l0IGxzLWZpbGVzIC1vICJ1bnRyYWNrZWRfKi8iID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgRlVOTllOQU1FUyAnZ2l0IGxzLWZpbGVzIC1vIC0tZGlyZWN0b3J5IHVudHJhY2tlZF8qIGRvZXMgbm90IHJlY3Vyc2UnICcKKwljYXQgPDwtRU9GID5leHBlY3QgJiYKKwl1bnRyYWNrZWRfKi8KKwl1bnRyYWNrZWRfZGlyLworCXVudHJhY2tlZF9yZXBvLworCUVPRgorCWdpdCBscy1maWxlcyAtbyAtLWRpcmVjdG9yeSAidW50cmFja2VkXyoiID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgRlVOTllOQU1FUyAnZ2l0IGxzLWZpbGVzIC1vIC0tZGlyZWN0b3J5IHVudHJhY2tlZF8qLyBkb2VzIG5vdCByZWN1cnNlJyAnCisJY2F0IDw8LUVPRiA+ZXhwZWN0ICYmCisJdW50cmFja2VkXyovCisJdW50cmFja2VkX2Rpci8KKwl1bnRyYWNrZWRfcmVwby8KKwlFT0YKKwlnaXQgbHMtZmlsZXMgLW8gLS1kaXJlY3RvcnkgInVudHJhY2tlZF8qLyIgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGxzLWZpbGVzIC1vIGNvbnNpc3RlbnQgYmV0d2VlbiBvbmUgb3IgdHdvIGRpcnMnICcKKwlnaXQgbHMtZmlsZXMgLW8gLS1leGNsdWRlLXN0YW5kYXJkIGFuX2lnbm9yZWRfZGlyLyBhbl91bnRyYWNrZWRfZGlyLyA+dG1wICYmCisJISBncmVwIF5hbl9pZ25vcmVkX2Rpci8gdG1wID5leHBlY3QgJiYKKwlnaXQgbHMtZmlsZXMgLW8gLS1leGNsdWRlLXN0YW5kYXJkIGFuX2lnbm9yZWRfZGlyLyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCisjIGxzLWZpbGVzIGRvZXNuJ3QgaGF2ZSBhIHdheSB0byByZXF1ZXN0IHNob3dpbmcgYm90aCB1bnRyYWNrZWQgYW5kIGlnbm9yZWQKKyMgZmlsZXMgYXQgdGhlIHNhbWUgdGltZSwgc28gdXNlIGBnaXQgc3RhdHVzIC0taWdub3JlZGAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBzdGF0dXMgLS1pZ25vcmVkIHNob3dzIHNhbWUgZmlsZXMgdW5kZXIgZGlyIHdpdGggb3Igd2l0aG91dCBwYXRoc3BlYycgJworCWNhdCA8PC1FT0YgPmV4cGVjdCAmJgorCT8/IGFuX3VudHJhY2tlZF9kaXIvCisJISEgYW5fdW50cmFja2VkX2Rpci9pZ25vcmVkCisJRU9GCisJZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbiAtLWlnbm9yZWQgPm91dHB1dCAmJgorCWdyZXAgYW5fdW50cmFja2VkX2RpciBvdXRwdXQgPmV4cGVjdCAmJgorCWdpdCBzdGF0dXMgLS1wb3JjZWxhaW4gLS1pZ25vcmVkIGFuX3VudHJhY2tlZF9kaXIvID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MzAzMC1tZXJnZS1yZWN1cnNpdmUuc2ggYi90L3QzMDMwLW1lcmdlLXJlY3Vyc2l2ZS5zaAppbmRleCBmZjY0MWIzLi5kNDhkMjExIDEwMDc1NQotLS0gYS90L3QzMDMwLW1lcmdlLXJlY3Vyc2l2ZS5zaAorKysgYi90L3QzMDMwLW1lcmdlLXJlY3Vyc2l2ZS5zaApAQCAtNDUyLDYgKzQ1MiwzNCBAQAogCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgU1lNTElOS1MgJ2RpciBpbiB3b3JraW5nIHRyZWUgd2l0aCBzeW1saW5rIGFuY2VzdG9yIGRvZXMgbm90IHByb2R1Y2UgZC9mIGNvbmZsaWN0JyAnCisJZ2l0IGluaXQgc3ltICYmCisJKAorCQljZCBzeW0gJiYKKwkJbG4gLXMgLiBmb28gJiYKKwkJbWtkaXIgYmFyICYmCisJCT5iYXIvZmlsZSAmJgorCQlnaXQgYWRkIGZvbyBiYXIvZmlsZSAmJgorCQlnaXQgY29tbWl0IC1tICJmb28gc3ltbGluayIgJiYKKworCQlnaXQgY2hlY2tvdXQgLWIgYnJhbmNoMSAmJgorCQlnaXQgY29tbWl0IC0tYWxsb3ctZW1wdHkgLW0gImVtcHR5IGNvbW1pdCIgJiYKKworCQlnaXQgY2hlY2tvdXQgbWFzdGVyICYmCisJCWdpdCBybSBmb28gJiYKKwkJbWtkaXIgZm9vICYmCisJCT5mb28vYmFyICYmCisJCWdpdCBhZGQgZm9vL2JhciAmJgorCQlnaXQgY29tbWl0IC1tICJyZXBsYWNlIGZvbyBzeW1saW5rIHdpdGggcmVhbCBmb28gZGlyIGFuZCBmb28vYmFyIGZpbGUiICYmCisKKwkJZ2l0IGNoZWNrb3V0IGJyYW5jaDEgJiYKKworCQlnaXQgY2hlcnJ5LXBpY2sgbWFzdGVyICYmCisJCXRlc3RfcGF0aF9pc19kaXIgZm9vICYmCisJCXRlc3RfcGF0aF9pc19maWxlIGZvby9iYXIKKwkpCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Jlc2V0IGFuZCAzLXdheSBtZXJnZScgJwogCiAJZ2l0IHJlc2V0IC0taGFyZCAiJGMyIiAmJgpAQCAtNTc2LDcgKzYwNCw3IEBACiAJZ2l0IGNvbW1pdCAtbXJlbW92ZWQtZC9lICYmCiAJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgogCWdpdCBtZXJnZSAtcyByZWN1cnNpdmUgcm0gJiYKLQl0ZXN0X211c3RfZmFpbCB0ZXN0IC1kIGQKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBkCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21lcmdlLXJlY3Vyc2l2ZSBzaW1wbGUgdy9zdWJtb2R1bGUnICcKQEAgLTY2NywxNSArNjk1LDIyIEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtZXJnZS1yZWN1cnNpdmUgcmVtZW1iZXJzIHRoZSBuYW1lcyBvZiBhbGwgYmFzZSB0cmVlcycgJwogCWdpdCByZXNldCAtLWhhcmQgSEVBRCAmJgogCisJIyBtYWtlIHRoZSBpbmRleCBtYXRjaCAkYzEgc28gdGhhdCBtZXJnZS1yZWN1cnNpdmUgYmVsb3cgZG9lcyBub3QKKwkjIGZhaWwgZWFybHkKKwlnaXQgZGlmZiAtLWJpbmFyeSBIRUFEICRjMSAtLSB8IGdpdCBhcHBseSAtLWNhY2hlZCAmJgorCiAJIyBtb3JlIHRyZWVzIHRoYW4gc3RhdGljIHNsb3RzIHVzZWQgYnkgb2lkX3RvX2hleCgpCiAJZm9yIGNvbW1pdCBpbiAkYzAgJGMyICRjNCAkYzUgJGM2ICRjNwogCWRvCiAJCWdpdCByZXYtcGFyc2UgIiRjb21taXRee3RyZWV9IgogCWRvbmUgPnRyZWVzICYmCiAKLQkjIGlnbm9yZSB0aGUgcmV0dXJuIGNvZGUgLS0gaXQgb25seSBmYWlscyBiZWNhdXNlIHRoZSBpbnB1dCBpcyB3ZWlyZAorCSMgaWdub3JlIHRoZSByZXR1cm4gY29kZTsgaXQgb25seSBmYWlscyBiZWNhdXNlIHRoZSBpbnB1dCBpcyB3ZWlyZC4uLgogCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBtZXJnZS52ZXJib3NpdHk9NSBtZXJnZS1yZWN1cnNpdmUgJChjYXQgdHJlZXMpIC0tICRjMSAkYzMgPm91dCAmJgogCisJIyAuLi5idXQgbWFrZSBzdXJlIGl0IGZhaWxzIGluIHRoZSBleHBlY3RlZCB3YXkKKwl0ZXN0X2kxOG5ncmVwIENPTkZMSUNULipyZW5hbWUvcmVuYW1lIG91dCAmJgorCiAJIyBtZXJnZS1yZWN1cnNpdmUgcHJpbnRzIGluIHJldmVyc2Ugb3JkZXIsIGJ1dCB3ZSBkbyBub3QgY2FyZQogCXNvcnQgPHRyZWVzID5leHBlY3QgJiYKIAlzZWQgLW4gInMvXnZpcnR1YWwgLy9wIiBvdXQgfCBzb3J0ID5hY3R1YWwgJiYKZGlmZiAtLWdpdCBhL3QvdDMwMzUtbWVyZ2Utc3BhcnNlLnNoIGIvdC90MzAzNS1tZXJnZS1zcGFyc2Uuc2gKaW5kZXggYzRiNGE5NC4uNzQ1NjJlMSAxMDA3NTUKLS0tIGEvdC90MzAzNS1tZXJnZS1zcGFyc2Uuc2gKKysrIGIvdC90MzAzNS1tZXJnZS1zcGFyc2Uuc2gKQEAgLTI4LDcgKzI4LDcgQEAKIAlnaXQgY29uZmlnIGNvcmUuc3BhcnNlQ2hlY2tvdXQgdHJ1ZSAmJgogCWVjaG8gIi9jaGVja2VkLW91dCIgPi5naXQvaW5mby9zcGFyc2UtY2hlY2tvdXQgJiYKIAlnaXQgcmVzZXQgLS1oYXJkICYmCi0JISBnaXQgbWVyZ2UgdGhlaXJzCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIHRoZWlycwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXNldCAtLWhhcmQgd29ya3MgYWZ0ZXIgdGhlIGNvbmZsaWN0JyAnCkBAIC00Miw3ICs0Miw3IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwOiBjb25mbGljdCBiYWNrJyAnCi0JISBnaXQgbWVyZ2UgdGhlaXJzCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIHRoZWlycwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdNZXJnZSBhYm9ydCB3b3JrcyBhZnRlciB0aGUgY29uZmxpY3QnICcKZGlmZiAtLWdpdCBhL3QvdDMwNjAtbHMtZmlsZXMtd2l0aC10cmVlLnNoIGIvdC90MzA2MC1scy1maWxlcy13aXRoLXRyZWUuc2gKaW5kZXggNDRmMzc4Yy4uNTJlZDY2NSAxMDA3NTUKLS0tIGEvdC90MzA2MC1scy1maWxlcy13aXRoLXRyZWUuc2gKKysrIGIvdC90MzA2MC1scy1maWxlcy13aXRoLXRyZWUuc2gKQEAgLTQ3LDcgKzQ3LDcgQEAKIAlnaXQgYWRkIC4KICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IC1scy1maWxlcyAtLXdpdGgtdHJlZSBzaG91bGQgc3VjY2VlZCBmcm9tIHN1YmRpcicgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGxzLWZpbGVzIC0td2l0aC10cmVlIHNob3VsZCBzdWNjZWVkIGZyb20gc3ViZGlyJyAnCiAJIyBXZSBoYXZlIHRvIHJ1biBmcm9tIGEgc3ViLWRpcmVjdG9yeSB0byB0cmlnZ2VyIHBydW5lX3BhdGgKIAkjIFRoZW4gd2UgZmluYWxseSBnZXQgdG8gcnVuIG91ciAtLXdpdGgtdHJlZSB0ZXN0CiAJKApAQCAtNTcsNyArNTcsNyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIFwKLSAgICAnZ2l0IC1scy1maWxlcyAtLXdpdGgtdHJlZSBzaG91bGQgYWRkIGVudHJpZXMgZnJvbSBuYW1lZCB0cmVlLicgXAorICAgICdnaXQgbHMtZmlsZXMgLS13aXRoLXRyZWUgc2hvdWxkIGFkZCBlbnRyaWVzIGZyb20gbmFtZWQgdHJlZS4nIFwKICAgICAndGVzdF9jbXAgZXhwZWN0ZWQgb3V0cHV0JwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDMyMDAtYnJhbmNoLnNoIGIvdC90MzIwMC1icmFuY2guc2gKaW5kZXggNDc4YjgyYy4uNDExYTcwYiAxMDA3NTUKLS0tIGEvdC90MzIwMC1icmFuY2guc2gKKysrIGIvdC90MzIwMC1icmFuY2guc2gKQEAgLTQyLDYgKzQyLDEwIEBACiAJZ2l0IGJyYW5jaCBhL2IvYyAmJiB0ZXN0X3BhdGhfaXNfZmlsZSAuZ2l0L3JlZnMvaGVhZHMvYS9iL2MKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGJyYW5jaCBtYiBtYXN0ZXIuLi4gc2hvdWxkIGNyZWF0ZSBhIGJyYW5jaCcgJworCWdpdCBicmFuY2ggbWIgbWFzdGVyLi4uICYmIHRlc3RfcGF0aF9pc19maWxlIC5naXQvcmVmcy9oZWFkcy9tYgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgYnJhbmNoIEhFQUQgc2hvdWxkIGZhaWwnICcKIAl0ZXN0X211c3RfZmFpbCBnaXQgYnJhbmNoIEhFQUQKICcKQEAgLTIwMiwxOCArMjA2LDIyIEBACiAJZ2l0IHdvcmt0cmVlIGFkZCAtZiBiYXpkaXIyIGJheiAmJgogCWdpdCBicmFuY2ggLU0gYmF6IGJhbSAmJgogCXRlc3QgJChnaXQgLUMgYmF6ZGlyIHJldi1wYXJzZSAtLWFiYnJldi1yZWYgSEVBRCkgPSBiYW0gJiYKLQl0ZXN0ICQoZ2l0IC1DIGJhemRpcjIgcmV2LXBhcnNlIC0tYWJicmV2LXJlZiBIRUFEKSA9IGJhbQorCXRlc3QgJChnaXQgLUMgYmF6ZGlyMiByZXYtcGFyc2UgLS1hYmJyZXYtcmVmIEhFQUQpID0gYmFtICYmCisJcm0gLXIgYmF6ZGlyIGJhemRpcjIgJiYKKwlnaXQgd29ya3RyZWUgcHJ1bmUKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGJyYW5jaCAtTSBiYXogYmFtIHNob3VsZCBzdWNjZWVkIHdpdGhpbiBhIHdvcmt0cmVlIGluIHdoaWNoIGJheiBpcyBjaGVja2VkIG91dCcgJwogCWdpdCBjaGVja291dCAtYiBiYXogJiYKLQlnaXQgd29ya3RyZWUgYWRkIC1mIGJhemRpcjMgYmF6ICYmCisJZ2l0IHdvcmt0cmVlIGFkZCAtZiBiYXpkaXIgYmF6ICYmCiAJKAotCQljZCBiYXpkaXIzICYmCisJCWNkIGJhemRpciAmJgogCQlnaXQgYnJhbmNoIC1NIGJheiBiYW0gJiYKIAkJdGVzdCAkKGdpdCByZXYtcGFyc2UgLS1hYmJyZXYtcmVmIEhFQUQpID0gYmFtCiAJKSAmJgotCXRlc3QgJChnaXQgcmV2LXBhcnNlIC0tYWJicmV2LXJlZiBIRUFEKSA9IGJhbQorCXRlc3QgJChnaXQgcmV2LXBhcnNlIC0tYWJicmV2LXJlZiBIRUFEKSA9IGJhbSAmJgorCXJtIC1yIGJhemRpciAmJgorCWdpdCB3b3JrdHJlZSBwcnVuZQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgYnJhbmNoIC1NIG1hc3RlciBzaG91bGQgd29yayB3aGVuIG1hc3RlciBpcyBjaGVja2VkIG91dCcgJwpAQCAtMjY0LDYgKzI3MiwzMCBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgcmVmcy9oZWFkcy90CiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RlbGV0aW5nIGNoZWNrZWQtb3V0IGJyYW5jaCBmcm9tIHJlcG8gdGhhdCBpcyBhIHN1Ym1vZHVsZScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLXJmIHJlcG8xIHJlcG8yIiAmJgorCisJZ2l0IGluaXQgcmVwbzEgJiYKKwlnaXQgaW5pdCByZXBvMS9zdWIgJiYKKwl0ZXN0X2NvbW1pdCAtQyByZXBvMS9zdWIgeCAmJgorCWdpdCAtQyByZXBvMSBzdWJtb2R1bGUgYWRkIC4vc3ViICYmCisJZ2l0IC1DIHJlcG8xIGNvbW1pdCAtbSAiYWRkaW5nIHN1YiIgJiYKKworCWdpdCBjbG9uZSAtLXJlY3Vyc2Utc3VibW9kdWxlcyByZXBvMSByZXBvMiAmJgorCWdpdCAtQyByZXBvMi9zdWIgY2hlY2tvdXQgLWIgd29yayAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyByZXBvMi9zdWIgYnJhbmNoIC1EIHdvcmsKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYmFyZSBtYWluIHdvcmt0cmVlIGhhcyBIRUFEIGF0IGJyYW5jaCBkZWxldGVkIGJ5IHNlY29uZGFyeSB3b3JrdHJlZScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLXJmIG5vbmJhcmUgYmFzZSBzZWNvbmRhcnkiICYmCisKKwlnaXQgaW5pdCBub25iYXJlICYmCisJdGVzdF9jb21taXQgLUMgbm9uYmFyZSB4ICYmCisJZ2l0IGNsb25lIC0tYmFyZSBub25iYXJlIGJhcmUgJiYKKwlnaXQgLUMgYmFyZSB3b3JrdHJlZSBhZGQgLS1kZXRhY2ggLi4vc2Vjb25kYXJ5IG1hc3RlciAmJgorCWdpdCAtQyBzZWNvbmRhcnkgYnJhbmNoIC1EIG1hc3RlcgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgYnJhbmNoIC0tbGlzdCAtdiB3aXRoIC0tYWJicmV2JyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgYnJhbmNoIC1EIHQiICYmCiAJZ2l0IGJyYW5jaCB0ICYmCkBAIC0yOTIsOCArMzI0LDggQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBicmFuY2ggLS1jb2x1bW4nICcKIAlDT0xVTU5TPTgxIGdpdCBicmFuY2ggLS1jb2x1bW49Y29sdW1uID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8XEVPRiAmJgotICBhL2IvYyAgICAgYmFtICAgICAgIGZvbyAgICAgICBsICAgICAgICogbWFzdGVyICAgIG4gICAgICAgICBvL3AgICAgICAgcgotICBhYmMgICAgICAgYmFyICAgICAgIGovayAgICAgICBtL20gICAgICAgbWFzdGVyMiAgIG8vbyAgICAgICBxCisgIGEvYi9jICAgICBiYW0gICAgICAgZm9vICAgICAgIGwgICAgICAgKiBtYXN0ZXIgICAgbWIgICAgICAgIG8vbyAgICAgICBxCisgIGFiYyAgICAgICBiYXIgICAgICAgai9rICAgICAgIG0vbSAgICAgICBtYXN0ZXIyICAgbiAgICAgICAgIG8vcCAgICAgICByCiBFT0YKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKICcKQEAgLTMxNSw2ICszNDcsNyBAQAogICBtL20KICogbWFzdGVyCiAgIG1hc3RlcjIKKyAgbWIKICAgbgogICBvL28KICAgby9wCkBAIC0zMzIsOCArMzY1LDggQEAKIAlnaXQgY29uZmlnIC0tdW5zZXQgY29sdW1uLmJyYW5jaCAmJgogCWdpdCBjb25maWcgLS11bnNldCBjb2x1bW4udWkgJiYKIAljYXQgPmV4cGVjdGVkIDw8XEVPRiAmJgotICBhL2IvYyAgIGJhbSAgIGZvbyAgIGwgICAqIG1hc3RlciAgICBuICAgICBvL3AgICByCi0gIGFiYyAgICAgYmFyICAgai9rICAgbS9tICAgbWFzdGVyMiAgIG8vbyAgIHEKKyAgYS9iL2MgICBiYW0gICBmb28gICBsICAgKiBtYXN0ZXIgICAgbWIgICBvL28gICBxCisgIGFiYyAgICAgYmFyICAgai9rICAgbS9tICAgbWFzdGVyMiAgIG4gICAgby9wICAgcgogRU9GCiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCkBAIC0zNTcsNiArMzkwLDcgQEAKICAgbS9tCiAqIG1hc3RlcgogICBtYXN0ZXIyCisgIG1iCiAgIG4KICAgby9vCiAgIG8vcApAQCAtNzc0LDcgKzgwOCw5IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZWxldGluZyBjdXJyZW50bHkgY2hlY2tlZCBvdXQgYnJhbmNoIGZhaWxzJyAnCiAJZ2l0IHdvcmt0cmVlIGFkZCAtYiBteTcgbXk3ICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1DIG15NyBicmFuY2ggLWQgbXk3ICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IGJyYW5jaCAtZCBteTcKKwl0ZXN0X211c3RfZmFpbCBnaXQgYnJhbmNoIC1kIG15NyAmJgorCXJtIC1yIG15NyAmJgorCWdpdCB3b3JrdHJlZSBwcnVuZQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd0ZXN0IC0tdHJhY2sgd2l0aG91dCAuZmV0Y2ggZW50cmllcycgJwpkaWZmIC0tZ2l0IGEvdC90MzIwMS1icmFuY2gtY29udGFpbnMuc2ggYi90L3QzMjAxLWJyYW5jaC1jb250YWlucy5zaAppbmRleCAwZWE0ZmM0Li40MDI1MWM5IDEwMDc1NQotLS0gYS90L3QzMjAxLWJyYW5jaC1jb250YWlucy5zaAorKysgYi90L3QzMjAxLWJyYW5jaC1jb250YWlucy5zaApAQCAtMTkyLDEwICsxOTIsMTAgQEAKIAlFT0YKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAJZ2l0IGJyYW5jaCAtLXZlcmJvc2UgLS1tZXJnZWQgdG9waWMgPmFjdHVhbCAmJgotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKLQkgIG1hc3RlciBjNzdhMGE5IHNlY29uZCBvbiBtYXN0ZXIKLQkqIHRvcGljICAyYzkzOWY0IFthaGVhZCAxXSBmb28KLQkgIHp6eiAgICBjNzdhMGE5IHNlY29uZCBvbiBtYXN0ZXIKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkgIG1hc3RlciAkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBtYXN0ZXIpIHNlY29uZCBvbiBtYXN0ZXIKKwkqIHRvcGljICAkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCB0b3BpYyApIFthaGVhZCAxXSBmb28KKwkgIHp6eiAgICAkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCB6enogICApIHNlY29uZCBvbiBtYXN0ZXIKIAlFT0YKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAogJwpkaWZmIC0tZ2l0IGEvdC90MzIwMy1icmFuY2gtb3V0cHV0LnNoIGIvdC90MzIwMy1icmFuY2gtb3V0cHV0LnNoCmluZGV4IGVlNjc4NzYuLjcxODE4YjkgMTAwNzU1Ci0tLSBhL3QvdDMyMDMtYnJhbmNoLW91dHB1dC5zaAorKysgYi90L3QzMjAzLWJyYW5jaC1vdXRwdXQuc2gKQEAgLTEwMCw2ICsxMDAsNTMgQEAKIAl0ZXN0X211c3RfZmFpbCBnaXQgYnJhbmNoIC12IGJyYW5jaCoKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGJyYW5jaCBgLS1zaG93LWN1cnJlbnRgIHNob3dzIGN1cnJlbnQgYnJhbmNoJyAnCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCWJyYW5jaC10d28KKwlFT0YKKwlnaXQgY2hlY2tvdXQgYnJhbmNoLXR3byAmJgorCWdpdCBicmFuY2ggLS1zaG93LWN1cnJlbnQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGJyYW5jaCBgLS1zaG93LWN1cnJlbnRgIGlzIHNpbGVudCB3aGVuIGRldGFjaGVkIEhFQUQnICcKKwlnaXQgY2hlY2tvdXQgSEVBRF4wICYmCisJZ2l0IGJyYW5jaCAtLXNob3ctY3VycmVudCA+YWN0dWFsICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgYnJhbmNoIGAtLXNob3ctY3VycmVudGAgd29ya3MgcHJvcGVybHkgd2hlbiB0YWcgZXhpc3RzJyAnCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCWJyYW5jaC1hbmQtdGFnLW5hbWUKKwlFT0YKKwl0ZXN0X3doZW5fZmluaXNoZWQgIgorCQlnaXQgY2hlY2tvdXQgYnJhbmNoLW9uZQorCQlnaXQgYnJhbmNoIC1EIGJyYW5jaC1hbmQtdGFnLW5hbWUKKwkiICYmCisJZ2l0IGNoZWNrb3V0IC1iIGJyYW5jaC1hbmQtdGFnLW5hbWUgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCB0YWcgLWQgYnJhbmNoLWFuZC10YWctbmFtZSIgJiYKKwlnaXQgdGFnIGJyYW5jaC1hbmQtdGFnLW5hbWUgJiYKKwlnaXQgYnJhbmNoIC0tc2hvdy1jdXJyZW50ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBicmFuY2ggYC0tc2hvdy1jdXJyZW50YCB3b3JrcyBwcm9wZXJseSB3aXRoIHdvcmt0cmVlcycgJworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlicmFuY2gtb25lCisJYnJhbmNoLXR3bworCUVPRgorCWdpdCBjaGVja291dCBicmFuY2gtb25lICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkICIKKwkJZ2l0IHdvcmt0cmVlIHJlbW92ZSB3b3JrdHJlZV9kaXIKKwkiICYmCisJZ2l0IHdvcmt0cmVlIGFkZCB3b3JrdHJlZV9kaXIgYnJhbmNoLXR3byAmJgorCXsKKwkJZ2l0IGJyYW5jaCAtLXNob3ctY3VycmVudCAmJgorCQlnaXQgLUMgd29ya3RyZWVfZGlyIGJyYW5jaCAtLXNob3ctY3VycmVudAorCX0gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGJyYW5jaCBzaG93cyBkZXRhY2hlZCBIRUFEIHByb3Blcmx5JyAnCiAJY2F0ID5leHBlY3QgPDxFT0YgJiYKICogKEhFQUQgZGV0YWNoZWQgYXQgJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRF4wKSkKQEAgLTI0MCw2ICsyODcsMjQgQEAKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd3b3JrdHJlZSBjb2xvcnMgY29ycmVjdCcgJworCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCSogPEdSRUVOPihIRUFEIGRldGFjaGVkIGZyb20gZnJvbXRhZyk8UkVTRVQ+CisJICBhbWJpZ3VvdXM8UkVTRVQ+CisJICBicmFuY2gtb25lPFJFU0VUPgorCSsgPENZQU4+YnJhbmNoLXR3bzxSRVNFVD4KKwkgIG1hc3RlcjxSRVNFVD4KKwkgIHJlZi10by1icmFuY2g8UkVTRVQ+IC0+IGJyYW5jaC1vbmUKKwkgIHJlZi10by1yZW1vdGU8UkVTRVQ+IC0+IG9yaWdpbi9icmFuY2gtb25lCisJRU9GCisJZ2l0IHdvcmt0cmVlIGFkZCB3b3JrdHJlZV9kaXIgYnJhbmNoLXR3byAmJgorCWdpdCBicmFuY2ggLS1jb2xvciA+YWN0dWFsLnJhdyAmJgorCXJtIC1yIHdvcmt0cmVlX2RpciAmJgorCWdpdCB3b3JrdHJlZSBwcnVuZSAmJgorCXRlc3RfZGVjb2RlX2NvbG9yIDxhY3R1YWwucmF3ID5hY3R1YWwgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICJzZXQgdXAgY29sb3IgdGVzdHMiICcKIAllY2hvICI8UkVEPm1hc3RlcjxSRVNFVD4iID5leHBlY3QuY29sb3IgJiYKIAllY2hvICJtYXN0ZXIiID5leHBlY3QuYmFyZSAmJgpAQCAtMjY0LDQgKzMyOSwyMyBAQAogCXRlc3RfY21wIGV4cGVjdC5jb2xvciBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyYm9zZSBvdXRwdXQgbGlzdHMgd29ya3RyZWUgcGF0aCcgJworCW9uZT0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEKSAmJgorCXR3bz0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBtYXN0ZXIpICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJKiAoSEVBRCBkZXRhY2hlZCBmcm9tIGZyb210YWcpICRvbmUgb25lCisJICBhbWJpZ3VvdXMgICAgICAgICAgICAgICAgICAgICRvbmUgb25lCisJICBicmFuY2gtb25lICAgICAgICAgICAgICAgICAgICR0d28gdHdvCisJKyBicmFuY2gtdHdvICAgICAgICAgICAgICAgICAgICRvbmUgKCQocHdkKS93b3JrdHJlZV9kaXIpIG9uZQorCSAgbWFzdGVyICAgICAgICAgICAgICAgICAgICAgICAkdHdvIHR3bworCSAgcmVmLXRvLWJyYW5jaCAgICAgICAgICAgICAgICAkdHdvIHR3bworCSAgcmVmLXRvLXJlbW90ZSAgICAgICAgICAgICAgICAkdHdvIHR3bworCUVPRgorCWdpdCB3b3JrdHJlZSBhZGQgd29ya3RyZWVfZGlyIGJyYW5jaC10d28gJiYKKwlnaXQgYnJhbmNoIC12diA+YWN0dWFsICYmCisJcm0gLXIgd29ya3RyZWVfZGlyICYmCisJZ2l0IHdvcmt0cmVlIHBydW5lICYmCisJdGVzdF9pMThuY21wIGV4cGVjdCBhY3R1YWwKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzMjA2LXJhbmdlLWRpZmYuc2ggYi90L3QzMjA2LXJhbmdlLWRpZmYuc2gKaW5kZXggMDQ4ZmVhZi4uYmQ4MDhmOCAxMDA3NTUKLS0tIGEvdC90MzIwNi1yYW5nZS1kaWZmLnNoCisrKyBiL3QvdDMyMDYtcmFuZ2UtZGlmZi5zaApAQCAtOCw5OCArOCwyMTMgQEAKICMgaGFybSB0aGFuIGdvb2QuICBXZSBuZWVkIHNvbWUgcmVhbCBoaXN0b3J5LgogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCcgJwotCWdpdCBmYXN0LWltcG9ydCA8ICIkVEVTVF9ESVJFQ1RPUlkiL3QzMjA2L2hpc3RvcnkuZXhwb3J0CisJZ2l0IGZhc3QtaW1wb3J0IDwiJFRFU1RfRElSRUNUT1JZIi90MzIwNi9oaXN0b3J5LmV4cG9ydCAmJgorCXRlc3Rfb2lkX2NhY2hlIDw8LVxFT0YKKwkjIHRvcGljCisJdDEgc2hhMTo0ZGU0NTdkCisJdDIgc2hhMTpmY2NjZTIyCisJdDMgc2hhMToxNDdlNjRlCisJdDQgc2hhMTphNjNlOTkyCisJdDEgc2hhMjU2OmI4OWY4YjkKKwl0MiBzaGEyNTY6NWYxMmFhZAorCXQzIHNoYTI1NjplYThiMjczCisJdDQgc2hhMjU2OjE0YjczMzYKKworCSMgdW5tb2RpZmllZAorCXUxIHNoYTE6MzViOWIyNQorCXUyIHNoYTE6ZGUzNDVhYgorCXUzIHNoYTE6OWFmNjY1NAorCXU0IHNoYTE6MjkwMWY3NworCXUxIHNoYTI1NjplMzczMWJlCisJdTIgc2hhMjU2OjE0ZmFkZjgKKwl1MyBzaGEyNTY6NzM2YzRiYworCXU0IHNoYTI1Njo2NzNlNzdkCisKKwkjIHJlb3JkZXJlZAorCXIxIHNoYTE6YWNhMTc3YQorCXIyIHNoYTE6MTRhZDYyOQorCXIzIHNoYTE6ZWU1ODIwOAorCXI0IHNoYTE6MzA3YjI3YQorCXIxIHNoYTI1NjpmNTlkM2FhCisJcjIgc2hhMjU2OmZiMjYxYTgKKwlyMyBzaGEyNTY6Y2IyNjQ5YgorCXI0IHNoYTI1Njo5NTg1NzdlCisKKwkjIHJlbW92ZWQgKGRlbGV0ZWQpCisJZDEgc2hhMTo3NjU3MTU5CisJZDIgc2hhMTo0M2Q4NGQzCisJZDMgc2hhMTphNzQwMzk2CisJZDEgc2hhMjU2OmUzMTI1MTMKKwlkMiBzaGEyNTY6ZWIxOTI1OAorCWQzIHNoYTI1NjoxY2NiM2MxCisKKwkjIGFkZGVkCisJYTEgc2hhMToyNzE2MDIyCisJYTIgc2hhMTpiNjJhY2NkCisJYTMgc2hhMTpkZjQ2Y2ZhCisJYTQgc2hhMTozZTY0NTQ4CisJYTUgc2hhMToxMmI0MDYzCisJYTEgc2hhMjU2OmQ3MjRmNGQKKwlhMiBzaGEyNTY6MWRlNzc2MgorCWEzIHNoYTI1NjplMTU5NDMxCisJYTQgc2hhMjU2OmIzZTQ4M2MKKwlhNSBzaGEyNTY6OTA4NjZhNworCisJIyByZWJhc2VkCisJYjEgc2hhMTpjYzljNDQzCisJYjIgc2hhMTpjNWQ5NjQxCisJYjMgc2hhMToyOGNjMmI2CisJYjQgc2hhMTo1NjI4YWI3CisJYjUgc2hhMTphMzFiMTJlCisJYjEgc2hhMjU2OmExYTg3MTcKKwliMiBzaGEyNTY6MjBhNTg2MgorCWIzIHNoYTI1Njo1ODcxNzJhCisJYjQgc2hhMjU2OjI3MjFjNWQKKwliNSBzaGEyNTY6N2I1Nzg2NAorCisJIyBjaGFuZ2VkCisJYzEgc2hhMTphNGIzMzMzCisJYzIgc2hhMTpmNTFkMzcwCisJYzMgc2hhMTowNTU5NTU2CisJYzQgc2hhMTpkOTY2YzVjCisJYzEgc2hhMjU2OmY4YzJiOWQKKwljMiBzaGEyNTY6M2ZiNjMxOAorCWMzIHNoYTI1NjoxNjhhYjY4CisJYzQgc2hhMjU2OjM1MjY1MzkKKworCSMgY2hhbmdlZC1tZXNzYWdlCisJbTEgc2hhMTpmNjg2MDI0CisJbTIgc2hhMTo0YWIwNjdkCisJbTMgc2hhMTpiOWNiOTU2CisJbTQgc2hhMTo4YWRkNWYxCisJbTEgc2hhMjU2OjMxZTYyODEKKwltMiBzaGEyNTY6YTA2YmYxYgorCW0zIHNoYTI1Njo4MmRjNjU0CisJbTQgc2hhMjU2OjQ4NDcwYzUKKworCSMgcmVuYW1lZAorCW4xIHNoYTE6ZjI1OGQ3NQorCW4yIHNoYTE6MDE3YjYyZAorCW4zIHNoYTE6M2NlN2FmNgorCW40IHNoYTE6MWU2MjI2YgorCW4xIHNoYTI1NjphZDUyMTE0CisJbjIgc2hhMjU2OjNiNTRjOGYKKwluMyBzaGEyNTY6M2IwYTY0NAorCW40IHNoYTI1NjplNDYxNjUzCisKKwkjIG1vZGUgY2hhbmdlCisJbzEgc2hhMTo0ZDM5Y2IzCisJbzIgc2hhMToyNmMxMDdmCisJbzMgc2hhMTo0YzFlMGY1CisJbzEgc2hhMjU2OmQwZGQ1OTgKKwlvMiBzaGEyNTY6YzRhMjc5ZQorCW8zIHNoYTI1Njo3ODQ1OWQ3CisKKwkjIGFkZGVkIGFuZCByZW1vdmVkCisJczEgc2hhMTowOTZiMWJhCisJczIgc2hhMTpkOTJlNjk4CisJczMgc2hhMTo5YTFkYjRkCisJczQgc2hhMTpmZWEzYjVjCisJczEgc2hhMjU2OmE3ZjkxMzQKKwlzMiBzaGEyNTY6YjRjMjU4MAorCXMzIHNoYTI1NjoxZDYyYWEyCisJczQgc2hhMjU2OjQ4MTYwZTgKKworCSMgRW1wdHkgZGVsaW1pdGVyIChpbmNsdWRlZCBzbyBsaW5lcyBtYXRjaCBuZWF0bHkpCisJX18gc2hhMTotLS0tLS0tCisJX18gc2hhMjU2Oi0tLS0tLS0KKwlFT0YKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2ltcGxlIEEuLkIgQS4uQyAodW5tb2RpZmllZCknICcKIAlnaXQgcmFuZ2UtZGlmZiAtLW5vLWNvbG9yIG1hc3Rlci4udG9waWMgbWFzdGVyLi51bm1vZGlmaWVkIFwKIAkJPmFjdHVhbCAmJgotCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCi0JMTogIDRkZTQ1N2QgPSAxOiAgMzViOWIyNSBzLzUvQS8KLQkyOiAgZmNjY2UyMiA9IDI6ICBkZTM0NWFiIHMvNC9BLwotCTM6ICAxNDdlNjRlID0gMzogIDlhZjY2NTQgcy8xMS9CLwotCTQ6ICBhNjNlOTkyID0gNDogIDI5MDFmNzcgcy8xMi9CLworCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCTE6ICAkKHRlc3Rfb2lkIHQxKSA9IDE6ICAkKHRlc3Rfb2lkIHUxKSBzLzUvQS8KKwkyOiAgJCh0ZXN0X29pZCB0MikgPSAyOiAgJCh0ZXN0X29pZCB1Mikgcy80L0EvCisJMzogICQodGVzdF9vaWQgdDMpID0gMzogICQodGVzdF9vaWQgdTMpIHMvMTEvQi8KKwk0OiAgJCh0ZXN0X29pZCB0NCkgPSA0OiAgJCh0ZXN0X29pZCB1NCkgcy8xMi9CLwogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2ltcGxlIEIuLi5DICh1bm1vZGlmaWVkKScgJwogCWdpdCByYW5nZS1kaWZmIC0tbm8tY29sb3IgdG9waWMuLi51bm1vZGlmaWVkID5hY3R1YWwgJiYKLQkjIHNhbWUgImV4cGVjdGVkIiBhcyBhYm92ZQotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCSMgc2FtZSAiZXhwZWN0IiBhcyBhYm92ZQorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2ltcGxlIEEgQiBDICh1bm1vZGlmaWVkKScgJwogCWdpdCByYW5nZS1kaWZmIC0tbm8tY29sb3IgbWFzdGVyIHRvcGljIHVubW9kaWZpZWQgPmFjdHVhbCAmJgotCSMgc2FtZSAiZXhwZWN0ZWQiIGFzIGFib3ZlCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJIyBzYW1lICJleHBlY3QiIGFzIGFib3ZlCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd0cml2aWFsIHJlb3JkZXJpbmcnICcKIAlnaXQgcmFuZ2UtZGlmZiAtLW5vLWNvbG9yIG1hc3RlciB0b3BpYyByZW9yZGVyZWQgPmFjdHVhbCAmJgotCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCi0JMTogIDRkZTQ1N2QgPSAxOiAgYWNhMTc3YSBzLzUvQS8KLQkzOiAgMTQ3ZTY0ZSA9IDI6ICAxNGFkNjI5IHMvMTEvQi8KLQk0OiAgYTYzZTk5MiA9IDM6ICBlZTU4MjA4IHMvMTIvQi8KLQkyOiAgZmNjY2UyMiA9IDQ6ICAzMDdiMjdhIHMvNC9BLworCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCTE6ICAkKHRlc3Rfb2lkIHQxKSA9IDE6ICAkKHRlc3Rfb2lkIHIxKSBzLzUvQS8KKwkzOiAgJCh0ZXN0X29pZCB0MykgPSAyOiAgJCh0ZXN0X29pZCByMikgcy8xMS9CLworCTQ6ICAkKHRlc3Rfb2lkIHQ0KSA9IDM6ICAkKHRlc3Rfb2lkIHIzKSBzLzEyL0IvCisJMjogICQodGVzdF9vaWQgdDIpID0gNDogICQodGVzdF9vaWQgcjQpIHMvNC9BLwogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVtb3ZlZCBhIGNvbW1pdCcgJwogCWdpdCByYW5nZS1kaWZmIC0tbm8tY29sb3IgbWFzdGVyIHRvcGljIHJlbW92ZWQgPmFjdHVhbCAmJgotCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCi0JMTogIDRkZTQ1N2QgPSAxOiAgNzY1NzE1OSBzLzUvQS8KLQkyOiAgZmNjY2UyMiA8IC06ICAtLS0tLS0tIHMvNC9BLwotCTM6ICAxNDdlNjRlID0gMjogIDQzZDg0ZDMgcy8xMS9CLwotCTQ6ICBhNjNlOTkyID0gMzogIGE3NDAzOTYgcy8xMi9CLworCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCTE6ICAkKHRlc3Rfb2lkIHQxKSA9IDE6ICAkKHRlc3Rfb2lkIGQxKSBzLzUvQS8KKwkyOiAgJCh0ZXN0X29pZCB0MikgPCAtOiAgJCh0ZXN0X29pZCBfXykgcy80L0EvCisJMzogICQodGVzdF9vaWQgdDMpID0gMjogICQodGVzdF9vaWQgZDIpIHMvMTEvQi8KKwk0OiAgJCh0ZXN0X29pZCB0NCkgPSAzOiAgJCh0ZXN0X29pZCBkMykgcy8xMi9CLwogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYWRkZWQgYSBjb21taXQnICcKIAlnaXQgcmFuZ2UtZGlmZiAtLW5vLWNvbG9yIG1hc3RlciB0b3BpYyBhZGRlZCA+YWN0dWFsICYmCi0JY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQkxOiAgNGRlNDU3ZCA9IDE6ICAyNzE2MDIyIHMvNS9BLwotCTI6ICBmY2NjZTIyID0gMjogIGI2MmFjY2Qgcy80L0EvCi0JLTogIC0tLS0tLS0gPiAzOiAgZGY0NmNmYSBzLzYvQS8KLQkzOiAgMTQ3ZTY0ZSA9IDQ6ICAzZTY0NTQ4IHMvMTEvQi8KLQk0OiAgYTYzZTk5MiA9IDU6ICAxMmI0MDYzIHMvMTIvQi8KKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkxOiAgJCh0ZXN0X29pZCB0MSkgPSAxOiAgJCh0ZXN0X29pZCBhMSkgcy81L0EvCisJMjogICQodGVzdF9vaWQgdDIpID0gMjogICQodGVzdF9vaWQgYTIpIHMvNC9BLworCS06ICAkKHRlc3Rfb2lkIF9fKSA+IDM6ICAkKHRlc3Rfb2lkIGEzKSBzLzYvQS8KKwkzOiAgJCh0ZXN0X29pZCB0MykgPSA0OiAgJCh0ZXN0X29pZCBhNCkgcy8xMS9CLworCTQ6ICAkKHRlc3Rfb2lkIHQ0KSA9IDU6ICAkKHRlc3Rfb2lkIGE1KSBzLzEyL0IvCiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICduZXcgYmFzZSwgQSBCIEMnICcKIAlnaXQgcmFuZ2UtZGlmZiAtLW5vLWNvbG9yIG1hc3RlciB0b3BpYyByZWJhc2VkID5hY3R1YWwgJiYKLQljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCTE6ICA0ZGU0NTdkID0gMTogIGNjOWM0NDMgcy81L0EvCi0JMjogIGZjY2NlMjIgPSAyOiAgYzVkOTY0MSBzLzQvQS8KLQkzOiAgMTQ3ZTY0ZSA9IDM6ICAyOGNjMmI2IHMvMTEvQi8KLQk0OiAgYTYzZTk5MiA9IDQ6ICA1NjI4YWI3IHMvMTIvQi8KKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkxOiAgJCh0ZXN0X29pZCB0MSkgPSAxOiAgJCh0ZXN0X29pZCBiMSkgcy81L0EvCisJMjogICQodGVzdF9vaWQgdDIpID0gMjogICQodGVzdF9vaWQgYjIpIHMvNC9BLworCTM6ICAkKHRlc3Rfb2lkIHQzKSA9IDM6ICAkKHRlc3Rfb2lkIGIzKSBzLzExL0IvCisJNDogICQodGVzdF9vaWQgdDQpID0gNDogICQodGVzdF9vaWQgYjQpIHMvMTIvQi8KIAlFT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25ldyBiYXNlLCBCLi4uQycgJwogCSMgdGhpcyBzeW50YXggaW5jbHVkZXMgdGhlIGNvbW1pdHMgZnJvbSBtYXN0ZXIhCiAJZ2l0IHJhbmdlLWRpZmYgLS1uby1jb2xvciB0b3BpYy4uLnJlYmFzZWQgPmFjdHVhbCAmJgotCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCi0JLTogIC0tLS0tLS0gPiAxOiAgYTMxYjEyZSB1bnJlbGF0ZWQKLQkxOiAgNGRlNDU3ZCA9IDI6ICBjYzljNDQzIHMvNS9BLwotCTI6ICBmY2NjZTIyID0gMzogIGM1ZDk2NDEgcy80L0EvCi0JMzogIDE0N2U2NGUgPSA0OiAgMjhjYzJiNiBzLzExL0IvCi0JNDogIGE2M2U5OTIgPSA1OiAgNTYyOGFiNyBzLzEyL0IvCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJLTogICQodGVzdF9vaWQgX18pID4gMTogICQodGVzdF9vaWQgYjUpIHVucmVsYXRlZAorCTE6ICAkKHRlc3Rfb2lkIHQxKSA9IDI6ICAkKHRlc3Rfb2lkIGIxKSBzLzUvQS8KKwkyOiAgJCh0ZXN0X29pZCB0MikgPSAzOiAgJCh0ZXN0X29pZCBiMikgcy80L0EvCisJMzogICQodGVzdF9vaWQgdDMpID0gNDogICQodGVzdF9vaWQgYjMpIHMvMTEvQi8KKwk0OiAgJCh0ZXN0X29pZCB0NCkgPSA1OiAgJCh0ZXN0X29pZCBiNCkgcy8xMi9CLwogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hhbmdlZCBjb21taXQnICcKIAlnaXQgcmFuZ2UtZGlmZiAtLW5vLWNvbG9yIHRvcGljLi4uY2hhbmdlZCA+YWN0dWFsICYmCi0JY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQkxOiAgNGRlNDU3ZCA9IDE6ICBhNGIzMzMzIHMvNS9BLwotCTI6ICBmY2NjZTIyID0gMjogIGY1MWQzNzAgcy80L0EvCi0JMzogIDE0N2U2NGUgISAzOiAgMDU1OTU1NiBzLzExL0IvCi0JICAgIEBAIC0xMCw3ICsxMCw3IEBACisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJMTogICQodGVzdF9vaWQgdDEpID0gMTogICQodGVzdF9vaWQgYzEpIHMvNS9BLworCTI6ICAkKHRlc3Rfb2lkIHQyKSA9IDI6ICAkKHRlc3Rfb2lkIGMyKSBzLzQvQS8KKwkzOiAgJCh0ZXN0X29pZCB0MykgISAzOiAgJCh0ZXN0X29pZCBjMykgcy8xMS9CLworCSAgICBAQCBmaWxlOiBBCiAJICAgICAgOQogCSAgICAgIDEwCiAJICAgICAtMTEKQEAgLTEwOCw5ICsyMjMsOSBAQAogCSAgICAgIDEyCiAJICAgICAgMTMKIAkgICAgICAxNAotCTQ6ICBhNjNlOTkyICEgNDogIGQ5NjZjNWMgcy8xMi9CLwotCSAgICBAQCAtOCw3ICs4LDcgQEAKLQkgICAgIEBACisJNDogICQodGVzdF9vaWQgdDQpICEgNDogICQodGVzdF9vaWQgYzQpIHMvMTIvQi8KKwkgICAgQEAgZmlsZQorCSAgICAgQEAgZmlsZTogQQogCSAgICAgIDkKIAkgICAgICAxMAogCSAgICAtIEIKQEAgLTExOSw0NiArMjM0LDQ2IEBACiAJICAgICArQgogCSAgICAgIDEzCiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGFuZ2VkIGNvbW1pdCB3aXRoIC0tbm8tcGF0Y2ggZGlmZiBvcHRpb24nICcKIAlnaXQgcmFuZ2UtZGlmZiAtLW5vLWNvbG9yIC0tbm8tcGF0Y2ggdG9waWMuLi5jaGFuZ2VkID5hY3R1YWwgJiYKLQljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCTE6ICA0ZGU0NTdkID0gMTogIGE0YjMzMzMgcy81L0EvCi0JMjogIGZjY2NlMjIgPSAyOiAgZjUxZDM3MCBzLzQvQS8KLQkzOiAgMTQ3ZTY0ZSAhIDM6ICAwNTU5NTU2IHMvMTEvQi8KLQk0OiAgYTYzZTk5MiAhIDQ6ICBkOTY2YzVjIHMvMTIvQi8KKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkxOiAgJCh0ZXN0X29pZCB0MSkgPSAxOiAgJCh0ZXN0X29pZCBjMSkgcy81L0EvCisJMjogICQodGVzdF9vaWQgdDIpID0gMjogICQodGVzdF9vaWQgYzIpIHMvNC9BLworCTM6ICAkKHRlc3Rfb2lkIHQzKSAhIDM6ICAkKHRlc3Rfb2lkIGMzKSBzLzExL0IvCisJNDogICQodGVzdF9vaWQgdDQpICEgNDogICQodGVzdF9vaWQgYzQpIHMvMTIvQi8KIAlFT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoYW5nZWQgY29tbWl0IHdpdGggLS1zdGF0IGRpZmYgb3B0aW9uJyAnCiAJZ2l0IHJhbmdlLWRpZmYgLS1uby1jb2xvciAtLXN0YXQgdG9waWMuLi5jaGFuZ2VkID5hY3R1YWwgJiYKLQljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCTE6ICA0ZGU0NTdkID0gMTogIGE0YjMzMzMgcy81L0EvCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJMTogICQodGVzdF9vaWQgdDEpID0gMTogICQodGVzdF9vaWQgYzEpIHMvNS9BLwogCSAgICAgYSA9PiBiIHwgMAogCSAgICAgMSBmaWxlIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKLQkyOiAgZmNjY2UyMiA9IDI6ICBmNTFkMzcwIHMvNC9BLworCTI6ICAkKHRlc3Rfb2lkIHQyKSA9IDI6ICAkKHRlc3Rfb2lkIGMyKSBzLzQvQS8KIAkgICAgIGEgPT4gYiB8IDAKIAkgICAgIDEgZmlsZSBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCi0JMzogIDE0N2U2NGUgISAzOiAgMDU1OTU1NiBzLzExL0IvCisJMzogICQodGVzdF9vaWQgdDMpICEgMzogICQodGVzdF9vaWQgYzMpIHMvMTEvQi8KIAkgICAgIGEgPT4gYiB8IDAKIAkgICAgIDEgZmlsZSBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCi0JNDogIGE2M2U5OTIgISA0OiAgZDk2NmM1YyBzLzEyL0IvCisJNDogICQodGVzdF9vaWQgdDQpICEgNDogICQodGVzdF9vaWQgYzQpIHMvMTIvQi8KIAkgICAgIGEgPT4gYiB8IDAKIAkgICAgIDEgZmlsZSBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGFuZ2VkIGNvbW1pdCB3aXRoIHNtIGNvbmZpZycgJwogCWdpdCByYW5nZS1kaWZmIC0tbm8tY29sb3IgLS1zdWJtb2R1bGU9bG9nIHRvcGljLi4uY2hhbmdlZCA+YWN0dWFsICYmCi0JY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQkxOiAgNGRlNDU3ZCA9IDE6ICBhNGIzMzMzIHMvNS9BLwotCTI6ICBmY2NjZTIyID0gMjogIGY1MWQzNzAgcy80L0EvCi0JMzogIDE0N2U2NGUgISAzOiAgMDU1OTU1NiBzLzExL0IvCi0JICAgIEBAIC0xMCw3ICsxMCw3IEBACisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJMTogICQodGVzdF9vaWQgdDEpID0gMTogICQodGVzdF9vaWQgYzEpIHMvNS9BLworCTI6ICAkKHRlc3Rfb2lkIHQyKSA9IDI6ICAkKHRlc3Rfb2lkIGMyKSBzLzQvQS8KKwkzOiAgJCh0ZXN0X29pZCB0MykgISAzOiAgJCh0ZXN0X29pZCBjMykgcy8xMS9CLworCSAgICBAQCBmaWxlOiBBCiAJICAgICAgOQogCSAgICAgIDEwCiAJICAgICAtMTEKQEAgLTE2Nyw5ICsyODIsOSBAQAogCSAgICAgIDEyCiAJICAgICAgMTMKIAkgICAgICAxNAotCTQ6ICBhNjNlOTkyICEgNDogIGQ5NjZjNWMgcy8xMi9CLwotCSAgICBAQCAtOCw3ICs4LDcgQEAKLQkgICAgIEBACisJNDogICQodGVzdF9vaWQgdDQpICEgNDogICQodGVzdF9vaWQgYzQpIHMvMTIvQi8KKwkgICAgQEAgZmlsZQorCSAgICAgQEAgZmlsZTogQQogCSAgICAgIDkKIAkgICAgICAxMAogCSAgICAtIEIKQEAgLTE3OCw3ICsyOTMsMTMzIEBACiAJICAgICArQgogCSAgICAgIDEzCiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZW5hbWVkIGZpbGUnICcKKwlnaXQgcmFuZ2UtZGlmZiAtLW5vLWNvbG9yIC0tc3VibW9kdWxlPWxvZyB0b3BpYy4uLnJlbmFtZWQtZmlsZSA+YWN0dWFsICYmCisJc2VkIHMvWi9cIC9nID5leHBlY3QgPDwtRU9GICYmCisJMTogICQodGVzdF9vaWQgdDEpID0gMTogICQodGVzdF9vaWQgbjEpIHMvNS9BLworCTI6ICAkKHRlc3Rfb2lkIHQyKSAhIDI6ICAkKHRlc3Rfb2lkIG4yKSBzLzQvQS8KKwkgICAgQEAgTWV0YWRhdGEKKwkgICAgWkF1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QGluZi5ldGh6LmNoPgorCSAgICBaCisJICAgIFogIyMgQ29tbWl0IG1lc3NhZ2UgIyMKKwkgICAgLSAgICBzLzQvQS8KKwkgICAgKyAgICBzLzQvQS8gKyByZW5hbWUgZmlsZQorCSAgICBaCisJICAgIC0gIyMgZmlsZSAjIworCSAgICArICMjIGZpbGUgPT4gcmVuYW1lZC1maWxlICMjCisJICAgIFpAQAorCSAgICBaIDEKKwkgICAgWiAyCisJMzogICQodGVzdF9vaWQgdDMpICEgMzogICQodGVzdF9vaWQgbjMpIHMvMTEvQi8KKwkgICAgQEAgTWV0YWRhdGEKKwkgICAgWiAjIyBDb21taXQgbWVzc2FnZSAjIworCSAgICBaICAgIHMvMTEvQi8KKwkgICAgWgorCSAgICAtICMjIGZpbGUgIyMKKwkgICAgLUBAIGZpbGU6IEEKKwkgICAgKyAjIyByZW5hbWVkLWZpbGUgIyMKKwkgICAgK0BAIHJlbmFtZWQtZmlsZTogQQorCSAgICBaIDgKKwkgICAgWiA5CisJICAgIFogMTAKKwk0OiAgJCh0ZXN0X29pZCB0NCkgISA0OiAgJCh0ZXN0X29pZCBuNCkgcy8xMi9CLworCSAgICBAQCBNZXRhZGF0YQorCSAgICBaICMjIENvbW1pdCBtZXNzYWdlICMjCisJICAgIFogICAgcy8xMi9CLworCSAgICBaCisJICAgIC0gIyMgZmlsZSAjIworCSAgICAtQEAgZmlsZTogQQorCSAgICArICMjIHJlbmFtZWQtZmlsZSAjIworCSAgICArQEAgcmVuYW1lZC1maWxlOiBBCisJICAgIFogOQorCSAgICBaIDEwCisJICAgIFogQgorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmlsZSB3aXRoIG1vZGUgb25seSBjaGFuZ2UnICcKKwlnaXQgcmFuZ2UtZGlmZiAtLW5vLWNvbG9yIC0tc3VibW9kdWxlPWxvZyB0b3BpYy4uLm1vZGUtb25seS1jaGFuZ2UgPmFjdHVhbCAmJgorCXNlZCBzL1ovXCAvZyA+ZXhwZWN0IDw8LUVPRiAmJgorCTE6ICAkKHRlc3Rfb2lkIHQyKSAhIDE6ICAkKHRlc3Rfb2lkIG8xKSBzLzQvQS8KKwkgICAgQEAgTWV0YWRhdGEKKwkgICAgWkF1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QGluZi5ldGh6LmNoPgorCSAgICBaCisJICAgIFogIyMgQ29tbWl0IG1lc3NhZ2UgIyMKKwkgICAgLSAgICBzLzQvQS8KKwkgICAgKyAgICBzLzQvQS8gKyBhZGQgb3RoZXItZmlsZQorCSAgICBaCisJICAgIFogIyMgZmlsZSAjIworCSAgICBaQEAKKwkgICAgQEAgZmlsZQorCSAgICBaIEEKKwkgICAgWiA2CisJICAgIFogNworCSAgICArCisJICAgICsgIyMgb3RoZXItZmlsZSAobmV3KSAjIworCTI6ICAkKHRlc3Rfb2lkIHQzKSAhIDI6ICAkKHRlc3Rfb2lkIG8yKSBzLzExL0IvCisJICAgIEBAIE1ldGFkYXRhCisJICAgIFpBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBpbmYuZXRoei5jaD4KKwkgICAgWgorCSAgICBaICMjIENvbW1pdCBtZXNzYWdlICMjCisJICAgIC0gICAgcy8xMS9CLworCSAgICArICAgIHMvMTEvQi8gKyBtb2RlIGNoYW5nZSBvdGhlci1maWxlCisJICAgIFoKKwkgICAgWiAjIyBmaWxlICMjCisJICAgIFpAQCBmaWxlOiBBCisJICAgIEBAIGZpbGU6IEEKKwkgICAgWiAxMgorCSAgICBaIDEzCisJICAgIFogMTQKKwkgICAgKworCSAgICArICMjIG90aGVyLWZpbGUgKG1vZGUgY2hhbmdlIDEwMDY0NCA9PiAxMDA3NTUpICMjCisJMzogICQodGVzdF9vaWQgdDQpID0gMzogICQodGVzdF9vaWQgbzMpIHMvMTIvQi8KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZpbGUgYWRkZWQgYW5kIGxhdGVyIHJlbW92ZWQnICcKKwlnaXQgcmFuZ2UtZGlmZiAtLW5vLWNvbG9yIC0tc3VibW9kdWxlPWxvZyB0b3BpYy4uLmFkZGVkLXJlbW92ZWQgPmFjdHVhbCAmJgorCXNlZCBzL1ovXCAvZyA+ZXhwZWN0IDw8LUVPRiAmJgorCTE6ICAkKHRlc3Rfb2lkIHQxKSA9IDE6ICAkKHRlc3Rfb2lkIHMxKSBzLzUvQS8KKwkyOiAgJCh0ZXN0X29pZCB0MikgISAyOiAgJCh0ZXN0X29pZCBzMikgcy80L0EvCisJICAgIEBAIE1ldGFkYXRhCisJICAgIFpBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBpbmYuZXRoei5jaD4KKwkgICAgWgorCSAgICBaICMjIENvbW1pdCBtZXNzYWdlICMjCisJICAgIC0gICAgcy80L0EvCisJICAgICsgICAgcy80L0EvICsgbmV3LWZpbGUKKwkgICAgWgorCSAgICBaICMjIGZpbGUgIyMKKwkgICAgWkBACisJICAgIEBAIGZpbGUKKwkgICAgWiBBCisJICAgIFogNgorCSAgICBaIDcKKwkgICAgKworCSAgICArICMjIG5ldy1maWxlIChuZXcpICMjCisJMzogICQodGVzdF9vaWQgdDMpICEgMzogICQodGVzdF9vaWQgczMpIHMvMTEvQi8KKwkgICAgQEAgTWV0YWRhdGEKKwkgICAgWkF1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QGluZi5ldGh6LmNoPgorCSAgICBaCisJICAgIFogIyMgQ29tbWl0IG1lc3NhZ2UgIyMKKwkgICAgLSAgICBzLzExL0IvCisJICAgICsgICAgcy8xMS9CLyArIHJlbW92ZSBmaWxlCisJICAgIFoKKwkgICAgWiAjIyBmaWxlICMjCisJICAgIFpAQCBmaWxlOiBBCisJICAgIEBAIGZpbGU6IEEKKwkgICAgWiAxMgorCSAgICBaIDEzCisJICAgIFogMTQKKwkgICAgKworCSAgICArICMjIG5ldy1maWxlIChkZWxldGVkKSAjIworCTQ6ICAkKHRlc3Rfb2lkIHQ0KSA9IDQ6ICAkKHRlc3Rfb2lkIHM0KSBzLzEyL0IvCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdubyBjb21taXRzIG9uIG9uZSBzaWRlJyAnCkBAIC0xODgsMzkgKzQyOSwzOSBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGFuZ2VkIG1lc3NhZ2UnICcKIAlnaXQgcmFuZ2UtZGlmZiAtLW5vLWNvbG9yIHRvcGljLi4uY2hhbmdlZC1tZXNzYWdlID5hY3R1YWwgJiYKLQlzZWQgcy9aL1wgL2cgPmV4cGVjdGVkIDw8LUVPRiAmJgotCTE6ICA0ZGU0NTdkID0gMTogIGY2ODYwMjQgcy81L0EvCi0JMjogIGZjY2NlMjIgISAyOiAgNGFiMDY3ZCBzLzQvQS8KLQkgICAgQEAgLTIsNiArMiw4IEBACi0JICAgIFoKKwlzZWQgcy9aL1wgL2cgPmV4cGVjdCA8PC1FT0YgJiYKKwkxOiAgJCh0ZXN0X29pZCB0MSkgPSAxOiAgJCh0ZXN0X29pZCBtMSkgcy81L0EvCisJMjogICQodGVzdF9vaWQgdDIpICEgMjogICQodGVzdF9vaWQgbTIpIHMvNC9BLworCSAgICBAQCBNZXRhZGF0YQorCSAgICBaICMjIENvbW1pdCBtZXNzYWdlICMjCiAJICAgIFogICAgcy80L0EvCiAJICAgIFoKIAkgICAgKyAgICBBbHNvIGEgc2lsbHkgY29tbWVudCBoZXJlIQogCSAgICArCi0JICAgIFogZGlmZiAtLWdpdCBhL2ZpbGUgYi9maWxlCi0JICAgIFogLS0tIGEvZmlsZQotCSAgICBaICsrKyBiL2ZpbGUKLQkzOiAgMTQ3ZTY0ZSA9IDM6ICBiOWNiOTU2IHMvMTEvQi8KLQk0OiAgYTYzZTk5MiA9IDQ6ICA4YWRkNWYxIHMvMTIvQi8KKwkgICAgWiAjIyBmaWxlICMjCisJICAgIFpAQAorCSAgICBaIDEKKwkzOiAgJCh0ZXN0X29pZCB0MykgPSAzOiAgJCh0ZXN0X29pZCBtMykgcy8xMS9CLworCTQ6ICAkKHRlc3Rfb2lkIHQ0KSA9IDQ6ICAkKHRlc3Rfb2lkIG00KSBzLzEyL0IvCiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkdWFsLWNvbG9yaW5nJyAnCi0Jc2VkIC1lICJzfF46fHwiID5leHBlY3QgPDwtXEVPRiAmJgotCTo8WUVMTE9XPjE6ICBhNGIzMzMzID0gMTogIGY2ODYwMjQgcy81L0EvPFJFU0VUPgotCTo8UkVEPjI6ICBmNTFkMzcwIDxSRVNFVD48WUVMTE9XPiE8UkVTRVQ+PEdSRUVOPiAyOiAgNGFiMDY3ZDxSRVNFVD48WUVMTE9XPiBzLzQvQS88UkVTRVQ+Ci0JOiAgICA8UkVWRVJTRT48Q1lBTj5AQCAtMiw2ICsyLDggQEA8UkVTRVQ+Ci0JOiAgICAgPFJFU0VUPgorCXNlZCAtZSAic3xeOnx8IiA+ZXhwZWN0IDw8LUVPRiAmJgorCTo8WUVMTE9XPjE6ICAkKHRlc3Rfb2lkIGMxKSA9IDE6ICAkKHRlc3Rfb2lkIG0xKSBzLzUvQS88UkVTRVQ+CisJOjxSRUQ+MjogICQodGVzdF9vaWQgYzIpIDxSRVNFVD48WUVMTE9XPiE8UkVTRVQ+PEdSRUVOPiAyOiAgJCh0ZXN0X29pZCBtMik8UkVTRVQ+PFlFTExPVz4gcy80L0EvPFJFU0VUPgorCTogICAgPFJFVkVSU0U+PENZQU4+QEA8UkVTRVQ+IDxSRVNFVD5NZXRhZGF0YTxSRVNFVD4KKwk6ICAgICAgIyMgQ29tbWl0IG1lc3NhZ2UgIyM8UkVTRVQ+CiAJOiAgICAgICAgIHMvNC9BLzxSRVNFVD4KIAk6ICAgICA8UkVTRVQ+CiAJOiAgICA8UkVWRVJTRT48R1JFRU4+KzxSRVNFVD48Qk9MRD4gICAgQWxzbyBhIHNpbGx5IGNvbW1lbnQgaGVyZSE8UkVTRVQ+CiAJOiAgICA8UkVWRVJTRT48R1JFRU4+KzxSRVNFVD4KLQk6ICAgICAgZGlmZiAtLWdpdCBhL2ZpbGUgYi9maWxlPFJFU0VUPgotCTogICAgICAtLS0gYS9maWxlPFJFU0VUPgotCTogICAgICArKysgYi9maWxlPFJFU0VUPgotCTo8UkVEPjM6ICAwNTU5NTU2IDxSRVNFVD48WUVMTE9XPiE8UkVTRVQ+PEdSRUVOPiAzOiAgYjljYjk1NjxSRVNFVD48WUVMTE9XPiBzLzExL0IvPFJFU0VUPgotCTogICAgPFJFVkVSU0U+PENZQU4+QEAgLTEwLDcgKzEwLDcgQEA8UkVTRVQ+CisJOiAgICAgICMjIGZpbGUgIyM8UkVTRVQ+CisJOiAgICA8Q1lBTj4gQEA8UkVTRVQ+CisJOiAgICAgIDE8UkVTRVQ+CisJOjxSRUQ+MzogICQodGVzdF9vaWQgYzMpIDxSRVNFVD48WUVMTE9XPiE8UkVTRVQ+PEdSRUVOPiAzOiAgJCh0ZXN0X29pZCBtMyk8UkVTRVQ+PFlFTExPVz4gcy8xMS9CLzxSRVNFVD4KKwk6ICAgIDxSRVZFUlNFPjxDWUFOPkBAPFJFU0VUPiA8UkVTRVQ+ZmlsZTogQTxSRVNFVD4KIAk6ICAgICAgOTxSRVNFVD4KIAk6ICAgICAgMTA8UkVTRVQ+CiAJOiAgICA8UkVEPiAtMTE8UkVTRVQ+CkBAIC0yMjksOSArNDcwLDkgQEAKIAk6ICAgICAgMTI8UkVTRVQ+CiAJOiAgICAgIDEzPFJFU0VUPgogCTogICAgICAxNDxSRVNFVD4KLQk6PFJFRD40OiAgZDk2NmM1YyA8UkVTRVQ+PFlFTExPVz4hPFJFU0VUPjxHUkVFTj4gNDogIDhhZGQ1ZjE8UkVTRVQ+PFlFTExPVz4gcy8xMi9CLzxSRVNFVD4KLQk6ICAgIDxSRVZFUlNFPjxDWUFOPkBAIC04LDcgKzgsNyBAQDxSRVNFVD4KLQk6ICAgIDxDWUFOPiBAQDxSRVNFVD4KKwk6PFJFRD40OiAgJCh0ZXN0X29pZCBjNCkgPFJFU0VUPjxZRUxMT1c+ITxSRVNFVD48R1JFRU4+IDQ6ICAkKHRlc3Rfb2lkIG00KTxSRVNFVD48WUVMTE9XPiBzLzEyL0IvPFJFU0VUPgorCTogICAgPFJFVkVSU0U+PENZQU4+QEA8UkVTRVQ+IDxSRVNFVD5maWxlPFJFU0VUPgorCTogICAgPENZQU4+IEBAIGZpbGU6IEE8UkVTRVQ+CiAJOiAgICAgIDk8UkVTRVQ+CiAJOiAgICAgIDEwPFJFU0VUPgogCTogICAgPFJFVkVSU0U+PFJFRD4tPFJFU0VUPjxGQUlOVD4gQkI8UkVTRVQ+CkBAIC0yNjgsNCArNTA5LDIwNiBAQAogCWdyZXAgIj4gMTogLiogbmV3IG1lc3NhZ2UiIDAwMDEtKgogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyYW5nZS1kaWZmIG92ZXJyaWRlcyBkaWZmLm5vcHJlZml4IGludGVybmFsbHknICcKKwlnaXQgLWMgZGlmZi5ub3ByZWZpeD10cnVlIHJhbmdlLWRpZmYgSEVBRF4uLi4KKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmFuZ2UtZGlmZiBjb21wYXJlcyBub3RlcyBieSBkZWZhdWx0JyAnCisJZ2l0IG5vdGVzIGFkZCAtbSAidG9waWMgbm90ZSIgdG9waWMgJiYKKwlnaXQgbm90ZXMgYWRkIC1tICJ1bm1vZGlmaWVkIG5vdGUiIHVubW9kaWZpZWQgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgZ2l0IG5vdGVzIHJlbW92ZSB0b3BpYyB1bm1vZGlmaWVkICYmCisJZ2l0IHJhbmdlLWRpZmYgLS1uby1jb2xvciBtYXN0ZXIuLnRvcGljIG1hc3Rlci4udW5tb2RpZmllZCBcCisJCT5hY3R1YWwgJiYKKwlzZWQgcy9aL1wgL2cgPmV4cGVjdCA8PC1FT0YgJiYKKwkxOiAgJCh0ZXN0X29pZCB0MSkgPSAxOiAgJCh0ZXN0X29pZCB1MSkgcy81L0EvCisJMjogICQodGVzdF9vaWQgdDIpID0gMjogICQodGVzdF9vaWQgdTIpIHMvNC9BLworCTM6ICAkKHRlc3Rfb2lkIHQzKSA9IDM6ICAkKHRlc3Rfb2lkIHUzKSBzLzExL0IvCisJNDogICQodGVzdF9vaWQgdDQpICEgNDogICQodGVzdF9vaWQgdTQpIHMvMTIvQi8KKwkgICAgQEAgQ29tbWl0IG1lc3NhZ2UKKwkgICAgWgorCSAgICBaCisJICAgIFogIyMgTm90ZXMgIyMKKwkgICAgLSAgICB0b3BpYyBub3RlCisJICAgICsgICAgdW5tb2RpZmllZCBub3RlCisJICAgIFoKKwkgICAgWiAjIyBmaWxlICMjCisJICAgIFpAQCBmaWxlOiBBCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyYW5nZS1kaWZmIHdpdGggLS1uby1ub3RlcycgJworCWdpdCBub3RlcyBhZGQgLW0gInRvcGljIG5vdGUiIHRvcGljICYmCisJZ2l0IG5vdGVzIGFkZCAtbSAidW5tb2RpZmllZCBub3RlIiB1bm1vZGlmaWVkICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCBub3RlcyByZW1vdmUgdG9waWMgdW5tb2RpZmllZCAmJgorCWdpdCByYW5nZS1kaWZmIC0tbm8tY29sb3IgLS1uby1ub3RlcyBtYXN0ZXIuLnRvcGljIG1hc3Rlci4udW5tb2RpZmllZCBcCisJCT5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkxOiAgJCh0ZXN0X29pZCB0MSkgPSAxOiAgJCh0ZXN0X29pZCB1MSkgcy81L0EvCisJMjogICQodGVzdF9vaWQgdDIpID0gMjogICQodGVzdF9vaWQgdTIpIHMvNC9BLworCTM6ICAkKHRlc3Rfb2lkIHQzKSA9IDM6ICAkKHRlc3Rfb2lkIHUzKSBzLzExL0IvCisJNDogICQodGVzdF9vaWQgdDQpID0gNDogICQodGVzdF9vaWQgdTQpIHMvMTIvQi8KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JhbmdlLWRpZmYgd2l0aCBtdWx0aXBsZSAtLW5vdGVzJyAnCisJZ2l0IG5vdGVzIC0tcmVmPW5vdGUxIGFkZCAtbSAidG9waWMgbm90ZTEiIHRvcGljICYmCisJZ2l0IG5vdGVzIC0tcmVmPW5vdGUxIGFkZCAtbSAidW5tb2RpZmllZCBub3RlMSIgdW5tb2RpZmllZCAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCBnaXQgbm90ZXMgLS1yZWY9bm90ZTEgcmVtb3ZlIHRvcGljIHVubW9kaWZpZWQgJiYKKwlnaXQgbm90ZXMgLS1yZWY9bm90ZTIgYWRkIC1tICJ0b3BpYyBub3RlMiIgdG9waWMgJiYKKwlnaXQgbm90ZXMgLS1yZWY9bm90ZTIgYWRkIC1tICJ1bm1vZGlmaWVkIG5vdGUyIiB1bm1vZGlmaWVkICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCBub3RlcyAtLXJlZj1ub3RlMiByZW1vdmUgdG9waWMgdW5tb2RpZmllZCAmJgorCWdpdCByYW5nZS1kaWZmIC0tbm8tY29sb3IgLS1ub3Rlcz1ub3RlMSAtLW5vdGVzPW5vdGUyIG1hc3Rlci4udG9waWMgbWFzdGVyLi51bm1vZGlmaWVkIFwKKwkJPmFjdHVhbCAmJgorCXNlZCBzL1ovXCAvZyA+ZXhwZWN0IDw8LUVPRiAmJgorCTE6ICAkKHRlc3Rfb2lkIHQxKSA9IDE6ICAkKHRlc3Rfb2lkIHUxKSBzLzUvQS8KKwkyOiAgJCh0ZXN0X29pZCB0MikgPSAyOiAgJCh0ZXN0X29pZCB1Mikgcy80L0EvCisJMzogICQodGVzdF9vaWQgdDMpID0gMzogICQodGVzdF9vaWQgdTMpIHMvMTEvQi8KKwk0OiAgJCh0ZXN0X29pZCB0NCkgISA0OiAgJCh0ZXN0X29pZCB1NCkgcy8xMi9CLworCSAgICBAQCBDb21taXQgbWVzc2FnZQorCSAgICBaCisJICAgIFoKKwkgICAgWiAjIyBOb3RlcyAobm90ZTEpICMjCisJICAgIC0gICAgdG9waWMgbm90ZTEKKwkgICAgKyAgICB1bm1vZGlmaWVkIG5vdGUxCisJICAgIFoKKwkgICAgWgorCSAgICBaICMjIE5vdGVzIChub3RlMikgIyMKKwkgICAgLSAgICB0b3BpYyBub3RlMgorCSAgICArICAgIHVubW9kaWZpZWQgbm90ZTIKKwkgICAgWgorCSAgICBaICMjIGZpbGUgIyMKKwkgICAgWkBAIGZpbGU6IEEKKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCAtLXJhbmdlLWRpZmYgZG9lcyBub3QgY29tcGFyZSBub3RlcyBieSBkZWZhdWx0JyAnCisJZ2l0IG5vdGVzIGFkZCAtbSAidG9waWMgbm90ZSIgdG9waWMgJiYKKwlnaXQgbm90ZXMgYWRkIC1tICJ1bm1vZGlmaWVkIG5vdGUiIHVubW9kaWZpZWQgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgZ2l0IG5vdGVzIHJlbW92ZSB0b3BpYyB1bm1vZGlmaWVkICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtLWNvdmVyLWxldHRlciAtLXJhbmdlLWRpZmY9JHByZXYgXAorCQltYXN0ZXIuLnVubW9kaWZpZWQgPmFjdHVhbCAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gMDAwPy0qIiAmJgorCXRlc3RfbGluZV9jb3VudCA9IDUgYWN0dWFsICYmCisJdGVzdF9pMThuZ3JlcCAiXlJhbmdlLWRpZmY6JCIgMDAwMC0qICYmCisJZ3JlcCAiPSAxOiAuKiBzLzUvQSIgMDAwMC0qICYmCisJZ3JlcCAiPSAyOiAuKiBzLzQvQSIgMDAwMC0qICYmCisJZ3JlcCAiPSAzOiAuKiBzLzExL0IiIDAwMDAtKiAmJgorCWdyZXAgIj0gNDogLiogcy8xMi9CIiAwMDAwLSogJiYKKwkhIGdyZXAgIk5vdGVzIiAwMDAwLSogJiYKKwkhIGdyZXAgIm5vdGUiIDAwMDAtKgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JtYXQtcGF0Y2ggLS1yYW5nZS1kaWZmIHdpdGggLS1uby1ub3RlcycgJworCWdpdCBub3RlcyBhZGQgLW0gInRvcGljIG5vdGUiIHRvcGljICYmCisJZ2l0IG5vdGVzIGFkZCAtbSAidW5tb2RpZmllZCBub3RlIiB1bm1vZGlmaWVkICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCBub3RlcyByZW1vdmUgdG9waWMgdW5tb2RpZmllZCAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLS1uby1ub3RlcyAtLWNvdmVyLWxldHRlciAtLXJhbmdlLWRpZmY9JHByZXYgXAorCQltYXN0ZXIuLnVubW9kaWZpZWQgPmFjdHVhbCAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gMDAwPy0qIiAmJgorCXRlc3RfbGluZV9jb3VudCA9IDUgYWN0dWFsICYmCisJdGVzdF9pMThuZ3JlcCAiXlJhbmdlLWRpZmY6JCIgMDAwMC0qICYmCisJZ3JlcCAiPSAxOiAuKiBzLzUvQSIgMDAwMC0qICYmCisJZ3JlcCAiPSAyOiAuKiBzLzQvQSIgMDAwMC0qICYmCisJZ3JlcCAiPSAzOiAuKiBzLzExL0IiIDAwMDAtKiAmJgorCWdyZXAgIj0gNDogLiogcy8xMi9CIiAwMDAwLSogJiYKKwkhIGdyZXAgIk5vdGVzIiAwMDAwLSogJiYKKwkhIGdyZXAgIm5vdGUiIDAwMDAtKgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JtYXQtcGF0Y2ggLS1yYW5nZS1kaWZmIHdpdGggLS1ub3RlcycgJworCWdpdCBub3RlcyBhZGQgLW0gInRvcGljIG5vdGUiIHRvcGljICYmCisJZ2l0IG5vdGVzIGFkZCAtbSAidW5tb2RpZmllZCBub3RlIiB1bm1vZGlmaWVkICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCBub3RlcyByZW1vdmUgdG9waWMgdW5tb2RpZmllZCAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLS1ub3RlcyAtLWNvdmVyLWxldHRlciAtLXJhbmdlLWRpZmY9JHByZXYgXAorCQltYXN0ZXIuLnVubW9kaWZpZWQgPmFjdHVhbCAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gMDAwPy0qIiAmJgorCXRlc3RfbGluZV9jb3VudCA9IDUgYWN0dWFsICYmCisJdGVzdF9pMThuZ3JlcCAiXlJhbmdlLWRpZmY6JCIgMDAwMC0qICYmCisJZ3JlcCAiPSAxOiAuKiBzLzUvQSIgMDAwMC0qICYmCisJZ3JlcCAiPSAyOiAuKiBzLzQvQSIgMDAwMC0qICYmCisJZ3JlcCAiPSAzOiAuKiBzLzExL0IiIDAwMDAtKiAmJgorCWdyZXAgIiEgNDogLiogcy8xMi9CIiAwMDAwLSogJiYKKwlzZWQgcy9aL1wgL2cgPmV4cGVjdCA8PC1FT0YgJiYKKwkgICAgQEAgQ29tbWl0IG1lc3NhZ2UKKwkgICAgWgorCSAgICBaCisJICAgIFogIyMgTm90ZXMgIyMKKwkgICAgLSAgICB0b3BpYyBub3RlCisJICAgICsgICAgdW5tb2RpZmllZCBub3RlCisJICAgIFoKKwkgICAgWiAjIyBmaWxlICMjCisJICAgIFpAQCBmaWxlOiBBCisJRU9GCisJc2VkICIvQEAgQ29tbWl0IG1lc3NhZ2UvLC9AQCBmaWxlOiBBLyFkIiAwMDAwLSogPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIC0tcmFuZ2UtZGlmZiB3aXRoIGZvcm1hdC5ub3RlcyBjb25maWcnICcKKwlnaXQgbm90ZXMgYWRkIC1tICJ0b3BpYyBub3RlIiB0b3BpYyAmJgorCWdpdCBub3RlcyBhZGQgLW0gInVubW9kaWZpZWQgbm90ZSIgdW5tb2RpZmllZCAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCBnaXQgbm90ZXMgcmVtb3ZlIHRvcGljIHVubW9kaWZpZWQgJiYKKwl0ZXN0X2NvbmZpZyBmb3JtYXQubm90ZXMgdHJ1ZSAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLS1jb3Zlci1sZXR0ZXIgLS1yYW5nZS1kaWZmPSRwcmV2IFwKKwkJbWFzdGVyLi51bm1vZGlmaWVkID5hY3R1YWwgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIDAwMD8tKiIgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSA1IGFjdHVhbCAmJgorCXRlc3RfaTE4bmdyZXAgIl5SYW5nZS1kaWZmOiQiIDAwMDAtKiAmJgorCWdyZXAgIj0gMTogLiogcy81L0EiIDAwMDAtKiAmJgorCWdyZXAgIj0gMjogLiogcy80L0EiIDAwMDAtKiAmJgorCWdyZXAgIj0gMzogLiogcy8xMS9CIiAwMDAwLSogJiYKKwlncmVwICIhIDQ6IC4qIHMvMTIvQiIgMDAwMC0qICYmCisJc2VkIHMvWi9cIC9nID5leHBlY3QgPDwtRU9GICYmCisJICAgIEBAIENvbW1pdCBtZXNzYWdlCisJICAgIFoKKwkgICAgWgorCSAgICBaICMjIE5vdGVzICMjCisJICAgIC0gICAgdG9waWMgbm90ZQorCSAgICArICAgIHVubW9kaWZpZWQgbm90ZQorCSAgICBaCisJICAgIFogIyMgZmlsZSAjIworCSAgICBaQEAgZmlsZTogQQorCUVPRgorCXNlZCAiL0BAIENvbW1pdCBtZXNzYWdlLywvQEAgZmlsZTogQS8hZCIgMDAwMC0qID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCAtLXJhbmdlLWRpZmYgd2l0aCBtdWx0aXBsZSBub3RlcycgJworCWdpdCBub3RlcyAtLXJlZj1ub3RlMSBhZGQgLW0gInRvcGljIG5vdGUxIiB0b3BpYyAmJgorCWdpdCBub3RlcyAtLXJlZj1ub3RlMSBhZGQgLW0gInVubW9kaWZpZWQgbm90ZTEiIHVubW9kaWZpZWQgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgZ2l0IG5vdGVzIC0tcmVmPW5vdGUxIHJlbW92ZSB0b3BpYyB1bm1vZGlmaWVkICYmCisJZ2l0IG5vdGVzIC0tcmVmPW5vdGUyIGFkZCAtbSAidG9waWMgbm90ZTIiIHRvcGljICYmCisJZ2l0IG5vdGVzIC0tcmVmPW5vdGUyIGFkZCAtbSAidW5tb2RpZmllZCBub3RlMiIgdW5tb2RpZmllZCAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCBnaXQgbm90ZXMgLS1yZWY9bm90ZTIgcmVtb3ZlIHRvcGljIHVubW9kaWZpZWQgJiYKKwlnaXQgZm9ybWF0LXBhdGNoIC0tbm90ZXM9bm90ZTEgLS1ub3Rlcz1ub3RlMiAtLWNvdmVyLWxldHRlciAtLXJhbmdlLWRpZmY9JHByZXYgXAorCQltYXN0ZXIuLnVubW9kaWZpZWQgPmFjdHVhbCAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gMDAwPy0qIiAmJgorCXRlc3RfbGluZV9jb3VudCA9IDUgYWN0dWFsICYmCisJdGVzdF9pMThuZ3JlcCAiXlJhbmdlLWRpZmY6JCIgMDAwMC0qICYmCisJZ3JlcCAiPSAxOiAuKiBzLzUvQSIgMDAwMC0qICYmCisJZ3JlcCAiPSAyOiAuKiBzLzQvQSIgMDAwMC0qICYmCisJZ3JlcCAiPSAzOiAuKiBzLzExL0IiIDAwMDAtKiAmJgorCWdyZXAgIiEgNDogLiogcy8xMi9CIiAwMDAwLSogJiYKKwlzZWQgcy9aL1wgL2cgPmV4cGVjdCA8PC1FT0YgJiYKKwkgICAgQEAgQ29tbWl0IG1lc3NhZ2UKKwkgICAgWgorCSAgICBaCisJICAgIFogIyMgTm90ZXMgKG5vdGUxKSAjIworCSAgICAtICAgIHRvcGljIG5vdGUxCisJICAgICsgICAgdW5tb2RpZmllZCBub3RlMQorCSAgICBaCisJICAgIFoKKwkgICAgWiAjIyBOb3RlcyAobm90ZTIpICMjCisJICAgIC0gICAgdG9waWMgbm90ZTIKKwkgICAgKyAgICB1bm1vZGlmaWVkIG5vdGUyCisJICAgIFoKKwkgICAgWiAjIyBmaWxlICMjCisJICAgIFpAQCBmaWxlOiBBCisJRU9GCisJc2VkICIvQEAgQ29tbWl0IG1lc3NhZ2UvLC9AQCBmaWxlOiBBLyFkIiAwMDAwLSogPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzMjA2L2hpc3RvcnkuZXhwb3J0IGIvdC90MzIwNi9oaXN0b3J5LmV4cG9ydAppbmRleCBiOGZmZmYwLi40YzgwOGU1IDEwMDY0NAotLS0gYS90L3QzMjA2L2hpc3RvcnkuZXhwb3J0CisrKyBiL3QvdDMyMDYvaGlzdG9yeS5leHBvcnQKQEAgLTIyLDggKzIyLDggQEAKIDE5CiAyMAogCi1yZXNldCByZWZzL2hlYWRzL3JlbW92ZWQKLWNvbW1pdCByZWZzL2hlYWRzL3JlbW92ZWQKK3Jlc2V0IHJlZnMvaGVhZHMvcmVuYW1lZC1maWxlCitjb21taXQgcmVmcy9oZWFkcy9yZW5hbWVkLWZpbGUKIG1hcmsgOjIKIGF1dGhvciBUaG9tYXMgUmFzdCA8dHJhc3RAaW5mLmV0aHouY2g+IDEzNzQ0MjQ5MjEgKzAyMDAKIGNvbW1pdHRlciBUaG9tYXMgUmFzdCA8dHJhc3RAaW5mLmV0aHouY2g+IDEzNzQ0ODQ3MjQgKzAyMDAKQEAgLTU1LDcgKzU1LDcgQEAKIDE5CiAyMAogCi1jb21taXQgcmVmcy9oZWFkcy90b3BpYworY29tbWl0IHJlZnMvaGVhZHMvbW9kZS1vbmx5LWNoYW5nZQogbWFyayA6NAogYXV0aG9yIFRob21hcyBSYXN0IDx0cmFzdEBpbmYuZXRoei5jaD4gMTM3NDQ4NTAxNCArMDIwMAogY29tbWl0dGVyIFRob21hcyBSYXN0IDx0cmFzdEBpbmYuZXRoei5jaD4gMTM3NDQ4NTAxNCArMDIwMApAQCAtNTk5LDYgKzU5OSwxMTEgQEAKIGZyb20gOjQ2CiBNIDEwMDY0NCA6MjggZmlsZQogCi1yZXNldCByZWZzL2hlYWRzL3JlbW92ZWQKLWZyb20gOjQ3Citjb21taXQgcmVmcy9oZWFkcy9hZGRlZC1yZW1vdmVkCittYXJrIDo0OAorYXV0aG9yIFRob21hcyBSYXN0IDx0cmFzdEBpbmYuZXRoei5jaD4gMTM3NDQ4NTAxNCArMDIwMAorY29tbWl0dGVyIFRob21hcyBHdW1tZXJlciA8dC5ndW1tZXJlckBnbWFpbC5jb20+IDE1NTY1NzQxNTEgKzAxMDAKK2RhdGEgNworcy81L0EvCitmcm9tIDoyCitNIDEwMDY0NCA6MyBmaWxlCisKK2Jsb2IKK21hcmsgOjQ5CitkYXRhIDAKKworY29tbWl0IHJlZnMvaGVhZHMvYWRkZWQtcmVtb3ZlZAorbWFyayA6NTAKK2F1dGhvciBUaG9tYXMgUmFzdCA8dHJhc3RAaW5mLmV0aHouY2g+IDEzNzQ0ODUwMjQgKzAyMDAKK2NvbW1pdHRlciBUaG9tYXMgR3VtbWVyZXIgPHQuZ3VtbWVyZXJAZ21haWwuY29tPiAxNTU2NTc0MTc3ICswMTAwCitkYXRhIDE4CitzLzQvQS8gKyBuZXctZmlsZQorZnJvbSA6NDgKK00gMTAwNjQ0IDo1IGZpbGUKK00gMTAwNjQ0IDo0OSBuZXctZmlsZQorCitjb21taXQgcmVmcy9oZWFkcy9hZGRlZC1yZW1vdmVkCittYXJrIDo1MQorYXV0aG9yIFRob21hcyBSYXN0IDx0cmFzdEBpbmYuZXRoei5jaD4gMTM3NDQ4NTAzNiArMDIwMAorY29tbWl0dGVyIFRob21hcyBHdW1tZXJlciA8dC5ndW1tZXJlckBnbWFpbC5jb20+IDE1NTY1NzQxNzcgKzAxMDAKK2RhdGEgMjIKK3MvMTEvQi8gKyByZW1vdmUgZmlsZQorZnJvbSA6NTAKK00gMTAwNjQ0IDo3IGZpbGUKK0QgbmV3LWZpbGUKKworY29tbWl0IHJlZnMvaGVhZHMvYWRkZWQtcmVtb3ZlZAorbWFyayA6NTIKK2F1dGhvciBUaG9tYXMgUmFzdCA8dHJhc3RAaW5mLmV0aHouY2g+IDEzNzQ0ODUwNDQgKzAyMDAKK2NvbW1pdHRlciBUaG9tYXMgR3VtbWVyZXIgPHQuZ3VtbWVyZXJAZ21haWwuY29tPiAxNTU2NTc0MTc3ICswMTAwCitkYXRhIDgKK3MvMTIvQi8KK2Zyb20gOjUxCitNIDEwMDY0NCA6OSBmaWxlCisKK2NvbW1pdCByZWZzL2hlYWRzL3JlbmFtZWQtZmlsZQorbWFyayA6NTMKK2F1dGhvciBUaG9tYXMgUmFzdCA8dHJhc3RAaW5mLmV0aHouY2g+IDEzNzQ0ODUwMTQgKzAyMDAKK2NvbW1pdHRlciBUaG9tYXMgR3VtbWVyZXIgPHQuZ3VtbWVyZXJAZ21haWwuY29tPiAxNTU2NTc0MzA5ICswMTAwCitkYXRhIDcKK3MvNS9BLworZnJvbSA6MgorTSAxMDA2NDQgOjMgZmlsZQorCitjb21taXQgcmVmcy9oZWFkcy9yZW5hbWVkLWZpbGUKK21hcmsgOjU0CithdXRob3IgVGhvbWFzIFJhc3QgPHRyYXN0QGluZi5ldGh6LmNoPiAxMzc0NDg1MDI0ICswMjAwCitjb21taXR0ZXIgVGhvbWFzIEd1bW1lcmVyIDx0Lmd1bW1lcmVyQGdtYWlsLmNvbT4gMTU1NjU3NDMxMiArMDEwMAorZGF0YSAyMQorcy80L0EvICsgcmVuYW1lIGZpbGUKK2Zyb20gOjUzCitEIGZpbGUKK00gMTAwNjQ0IDo1IHJlbmFtZWQtZmlsZQorCitjb21taXQgcmVmcy9oZWFkcy9yZW5hbWVkLWZpbGUKK21hcmsgOjU1CithdXRob3IgVGhvbWFzIFJhc3QgPHRyYXN0QGluZi5ldGh6LmNoPiAxMzc0NDg1MDM2ICswMjAwCitjb21taXR0ZXIgVGhvbWFzIEd1bW1lcmVyIDx0Lmd1bW1lcmVyQGdtYWlsLmNvbT4gMTU1NjU3NDMxOSArMDEwMAorZGF0YSA4CitzLzExL0IvCitmcm9tIDo1NAorTSAxMDA2NDQgOjcgcmVuYW1lZC1maWxlCisKK2NvbW1pdCByZWZzL2hlYWRzL3JlbmFtZWQtZmlsZQorbWFyayA6NTYKK2F1dGhvciBUaG9tYXMgUmFzdCA8dHJhc3RAaW5mLmV0aHouY2g+IDEzNzQ0ODUwNDQgKzAyMDAKK2NvbW1pdHRlciBUaG9tYXMgR3VtbWVyZXIgPHQuZ3VtbWVyZXJAZ21haWwuY29tPiAxNTU2NTc0MzE5ICswMTAwCitkYXRhIDgKK3MvMTIvQi8KK2Zyb20gOjU1CitNIDEwMDY0NCA6OSByZW5hbWVkLWZpbGUKKworY29tbWl0IHJlZnMvaGVhZHMvbW9kZS1vbmx5LWNoYW5nZQorbWFyayA6NTcKK2F1dGhvciBUaG9tYXMgUmFzdCA8dHJhc3RAaW5mLmV0aHouY2g+IDEzNzQ0ODUwMjQgKzAyMDAKK2NvbW1pdHRlciBUaG9tYXMgR3VtbWVyZXIgPHQuZ3VtbWVyZXJAZ21haWwuY29tPiAxNTcwNDczNzY3ICswMTAwCitkYXRhIDI0CitzLzQvQS8gKyBhZGQgb3RoZXItZmlsZQorZnJvbSA6NAorTSAxMDA2NDQgOjUgZmlsZQorTSAxMDA2NDQgOjQ5IG90aGVyLWZpbGUKKworY29tbWl0IHJlZnMvaGVhZHMvbW9kZS1vbmx5LWNoYW5nZQorbWFyayA6NTgKK2F1dGhvciBUaG9tYXMgUmFzdCA8dHJhc3RAaW5mLmV0aHouY2g+IDEzNzQ0ODUwMzYgKzAyMDAKK2NvbW1pdHRlciBUaG9tYXMgR3VtbWVyZXIgPHQuZ3VtbWVyZXJAZ21haWwuY29tPiAxNTcwNDczNzY4ICswMTAwCitkYXRhIDMzCitzLzExL0IvICsgbW9kZSBjaGFuZ2Ugb3RoZXItZmlsZQorZnJvbSA6NTcKK00gMTAwNjQ0IDo3IGZpbGUKK00gMTAwNzU1IDo0OSBvdGhlci1maWxlCisKK2NvbW1pdCByZWZzL2hlYWRzL21vZGUtb25seS1jaGFuZ2UKK21hcmsgOjU5CithdXRob3IgVGhvbWFzIFJhc3QgPHRyYXN0QGluZi5ldGh6LmNoPiAxMzc0NDg1MDQ0ICswMjAwCitjb21taXR0ZXIgVGhvbWFzIEd1bW1lcmVyIDx0Lmd1bW1lcmVyQGdtYWlsLmNvbT4gMTU3MDQ3Mzc2OCArMDEwMAorZGF0YSA4CitzLzEyL0IvCitmcm9tIDo1OAorTSAxMDA2NDQgOjkgZmlsZQogCmRpZmYgLS1naXQgYS90L3QzMjEwLXBhY2stcmVmcy5zaCBiL3QvdDMyMTAtcGFjay1yZWZzLnNoCmluZGV4IDllYTVmYTQuLmY0MWIyYWYgMTAwNzU1Ci0tLSBhL3QvdDMyMTAtcGFjay1yZWZzLnNoCisrKyBiL3QvdDMyMTAtcGFjay1yZWZzLnNoCkBAIC0yNDAsNyArMjQwLDcgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBTWU1MSU5LUyAncGFjayBzeW1saW5rZWQgcGFja2VkLXJlZnMnICcKIAkjIEZpcnN0IG1ha2Ugc3VyZSB0aGF0IHN5bWxpbmtpbmcgd29ya3Mgd2hlbiByZWFkaW5nOgotCWdpdCB1cGRhdGUtcmVmIHJlZnMvaGVhZHMvbG9vc3kgcmVmcy9oZWFkcy9tYXN0ZXIgJiYKKwlnaXQgdXBkYXRlLXJlZiByZWZzL2hlYWRzL2xvc3N5IHJlZnMvaGVhZHMvbWFzdGVyICYmCiAJZ2l0IGZvci1lYWNoLXJlZiA+YWxsLXJlZnMtYmVmb3JlICYmCiAJbXYgLmdpdC9wYWNrZWQtcmVmcyAuZ2l0L215LWRldmlhbnQtcGFja2VkLXJlZnMgJiYKIAlsbiAtcyBteS1kZXZpYW50LXBhY2tlZC1yZWZzIC5naXQvcGFja2VkLXJlZnMgJiYKZGlmZiAtLWdpdCBhL3QvdDMzMDEtbm90ZXMuc2ggYi90L3QzMzAxLW5vdGVzLnNoCmluZGV4IDg0YmJmODguLjhmNDMzMDMgMTAwNzU1Ci0tLSBhL3QvdDMzMDEtbm90ZXMuc2gKKysrIGIvdC90MzMwMS1ub3Rlcy5zaApAQCAtNTQsNyArNTQsOSBAQAogCXRlc3RfcGF0aF9pc19taXNzaW5nIC5naXQvTk9URVNfRURJVE1TRyAmJgogCWdpdCBscy10cmVlIC1yIHJlZnMvbm90ZXMvY29tbWl0cyA+YWN0dWFsICYmCiAJdGVzdF9saW5lX2NvdW50ID0gMSBhY3R1YWwgJiYKLQl0ZXN0ICJiNCIgPSAiJChnaXQgbm90ZXMgc2hvdykiICYmCisJZWNobyBiNCA+ZXhwZWN0ICYmCisJZ2l0IG5vdGVzIHNob3cgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAlnaXQgc2hvdyBIRUFEXiAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBub3RlcyBzaG93IEhFQUReCiAnCkBAIC02Niw4ICs2OCw5IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NyZWF0ZSByZWZsb2cgZW50cnknICcKKwlyZWY9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgcmVmcy9ub3Rlcy9jb21taXRzKSAmJgogCWNhdCA8PC1FT0YgPmV4cGVjdCAmJgotCQlhMWQ4ZmE2IHJlZnMvbm90ZXMvY29tbWl0c0B7MH06IG5vdGVzOiBOb3RlcyBhZGRlZCBieSAnXCcnZ2l0IG5vdGVzIGFkZCdcJycKKwkJJHJlZiByZWZzL25vdGVzL2NvbW1pdHNAezB9OiBub3RlczogTm90ZXMgYWRkZWQgYnkgJ1wnJ2dpdCBub3RlcyBhZGQnXCcnCiAJRU9GCiAJZ2l0IHJlZmxvZyBzaG93IHJlZnMvbm90ZXMvY29tbWl0cyA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbApAQCAtNzgsMTQgKzgxLDIxIEBACiAJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9OT1RFU19FRElUTVNHICYmCiAJZ2l0IGxzLXRyZWUgLXIgcmVmcy9ub3Rlcy9jb21taXRzID5hY3R1YWwgJiYKIAl0ZXN0X2xpbmVfY291bnQgPSAxIGFjdHVhbCAmJgotCXRlc3QgImIzIiA9ICIkKGdpdCBub3RlcyBzaG93KSIgJiYKKwllY2hvIGIzID5leHBlY3QgJiYKKwlnaXQgbm90ZXMgc2hvdyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgogCWdpdCBzaG93IEhFQUReICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IG5vdGVzIHNob3cgSEVBRF4KICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2hvdyBub3RlcyBmcm9tIHRyZWVpc2gnICcKLQl0ZXN0ICJiMyIgPSAiJChnaXQgbm90ZXMgLS1yZWYgY29tbWl0c157dHJlZX0gc2hvdykiICYmCi0JdGVzdCAiYjQiID0gIiQoZ2l0IG5vdGVzIC0tcmVmIGNvbW1pdHNAezF9IHNob3cpIgorCWVjaG8gYjMgPmV4cGVjdCAmJgorCWdpdCBub3RlcyAtLXJlZiBjb21taXRzXnt0cmVlfSBzaG93ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwllY2hvIGI0ID5leHBlY3QgJiYKKwlnaXQgbm90ZXMgLS1yZWYgY29tbWl0c0B7MX0gc2hvdyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjYW5ub3QgZWRpdCBub3RlcyBmcm9tIG5vbi1yZWYnICcKQEAgLTk4LDcgKzEwOCw5IEBACiAJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9OT1RFU19FRElUTVNHICYmCiAJZ2l0IGxzLXRyZWUgLXIgcmVmcy9ub3Rlcy9jb21taXRzID5hY3R1YWwgJiYKIAl0ZXN0X2xpbmVfY291bnQgPSAxIGFjdHVhbCAmJgotCXRlc3QgImIzIiA9ICIkKGdpdCBub3RlcyBzaG93KSIgJiYKKwllY2hvIGIzID5leHBlY3QgJiYKKwlnaXQgbm90ZXMgc2hvdyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgogCWdpdCBzaG93IEhFQUReICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IG5vdGVzIHNob3cgSEVBRF4KICcKQEAgLTEwOCw3ICsxMjAsOSBAQAogCXRlc3RfcGF0aF9pc19taXNzaW5nIC5naXQvTk9URVNfRURJVE1TRyAmJgogCWdpdCBscy10cmVlIC1yIHJlZnMvbm90ZXMvY29tbWl0cyA+YWN0dWFsICYmCiAJdGVzdF9saW5lX2NvdW50ID0gMSBhY3R1YWwgJiYKLQl0ZXN0ICJiMSIgPSAiJChnaXQgbm90ZXMgc2hvdykiICYmCisJZWNobyBiMSA+ZXhwZWN0ICYmCisJZ2l0IG5vdGVzIHNob3cgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAlnaXQgc2hvdyBIRUFEXiAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBub3RlcyBzaG93IEhFQUReCiAnCkBAIC0xMTgsNyArMTMyLDkgQEAKIAl0ZXN0X3BhdGhfaXNfbWlzc2luZyAuZ2l0L05PVEVTX0VESVRNU0cgJiYKIAlnaXQgbHMtdHJlZSAtciByZWZzL25vdGVzL2NvbW1pdHMgPmFjdHVhbCAmJgogCXRlc3RfbGluZV9jb3VudCA9IDEgYWN0dWFsICYmCi0JdGVzdCAiYjIiID0gIiQoZ2l0IG5vdGVzIHNob3cpIiAmJgorCWVjaG8gYjIgPmV4cGVjdCAmJgorCWdpdCBub3RlcyBzaG93ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAJZ2l0IHNob3cgSEVBRF4gJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbm90ZXMgc2hvdyBIRUFEXgogJwpAQCAtMTI4LDE0ICsxNDQsMTcgQEAKIAl0ZXN0X3BhdGhfaXNfbWlzc2luZyAuZ2l0L05PVEVTX0VESVRNU0cgJiYKIAlnaXQgbHMtdHJlZSAtciByZWZzL25vdGVzL2NvbW1pdHMgPmFjdHVhbCAmJgogCXRlc3RfbGluZV9jb3VudCA9IDEgYWN0dWFsICYmCi0JdGVzdCAiYjEiID0gIiQoZ2l0IG5vdGVzIHNob3cpIiAmJgorCWVjaG8gYjEgPmV4cGVjdCAmJgorCWdpdCBub3RlcyBzaG93ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAJZ2l0IHNob3cgSEVBRF4gJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbm90ZXMgc2hvdyBIRUFEXgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaG93IG5vdGVzJyAnCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgotCQljb21taXQgN2E0Y2E2ZWU1MmE5NzRhNjZjYmFhNzhlMzMyMTQ1MzVkZmYxZDY5MQorCQljb21taXQgJGNvbW1pdAogCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAJCURhdGU6ICAgVGh1IEFwciA3IDE1OjE0OjEzIDIwMDUgLTA3MDAKIApAQCAtMTQ0LDcgKzE2Myw4IEBACiAJCU5vdGVzOgogCQkke2luZGVudH1iMQogCUVPRgotCSEgKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IGdyZXAgYjEpICYmCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEID5jb21taXRzICYmCisJISBncmVwIGIxIGNvbW1pdHMgJiYKIAlnaXQgbG9nIC0xID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC0xNTIsOCArMTcyLDkgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Nob3cgbXVsdGktbGluZSBub3RlcycgJwogCXRlc3RfY29tbWl0IDNyZCAmJgogCU1TRz0iYjMke0xGfWMzYzNjM2MzJHtMRn1kM2QzZDMiIGdpdCBub3RlcyBhZGQgJiYKKwljb21taXQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJY2F0ID5leHBlY3QtbXVsdGlsaW5lIDw8LUVPRiAmJgotCQljb21taXQgZDA3ZDYyZTUyMDhmMjJlYjU2OTVlN2ViNDc2NjdkYzhiOTg2MDI5MAorCQljb21taXQgJGNvbW1pdAogCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAJCURhdGU6ICAgVGh1IEFwciA3IDE1OjE1OjEzIDIwMDUgLTA3MDAKIApAQCAtMTc0LDggKzE5NSw5IEBACiAJdGVzdF9jb21taXQgNHRoICYmCiAJZWNobyAieHl6enkiID5ub3RlNSAmJgogCWdpdCBub3RlcyBhZGQgLUYgbm90ZTUgJiYKKwljb21taXQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJY2F0ID5leHBlY3QtRiA8PC1FT0YgJiYKLQkJY29tbWl0IDBmN2FhM2VjNjMyNWFlYjg4YjkxMDQ1M2JiM2ViMzdjNDlkNzVjMTEKKwkJY29tbWl0ICRjb21taXQKIAkJQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgogCQlEYXRlOiAgIFRodSBBcHIgNyAxNToxNjoxMyAyMDA1IC0wNzAwCiAKQEAgLTE5OCwxMCArMjIwLDEzIEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBsb2cgLS1wcmV0dHk9cmF3IGRvZXMgbm90IHNob3cgbm90ZXMnICcKKwljb21taXQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCisJdHJlZT0kKGdpdCByZXYtcGFyc2UgSEVBRF57dHJlZX0pICYmCisJcGFyZW50PSQoZ2l0IHJldi1wYXJzZSBIRUFEXikgJiYKIAljYXQgPmV4cGVjdCA8PC1FT0YgJiYKLQkJY29tbWl0IDBmN2FhM2VjNjMyNWFlYjg4YjkxMDQ1M2JiM2ViMzdjNDlkNzVjMTEKLQkJdHJlZSAwNWFjNjUyODhjNGM0YjNiNzA5YTAyMGFlOTRiMmVjZTJmMjIwMWFlCi0JCXBhcmVudCBkMDdkNjJlNTIwOGYyMmViNTY5NWU3ZWI0NzY2N2RjOGI5ODYwMjkwCisJCWNvbW1pdCAkY29tbWl0CisJCXRyZWUgJHRyZWUKKwkJcGFyZW50ICRwYXJlbnQKIAkJYXV0aG9yIEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+IDExMTI5MTIxNzMgLTA3MDAKIAkJY29tbWl0dGVyIEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4gMTExMjkxMjE3MyAtMDcwMAogCkBAIC0yOTEsOCArMzE2LDkgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Nob3cgLW0gbm90ZXMnICcKIAl0ZXN0X2NvbW1pdCA1dGggJiYKIAlnaXQgbm90ZXMgYWRkIC1tIHNwYW0gLW0gImZvbyR7TEZ9YmFyJHtMRn1iYXoiICYmCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCWNhdCA+ZXhwZWN0LW0gPDwtRU9GICYmCi0JCWNvbW1pdCA3ZjlhZDg4MzZjNzc1YWNiMTM0YzBhMDU1ZmM1NWZiNGNkMWJhMzYxCisJCWNvbW1pdCAkY29tbWl0CiAJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAkJRGF0ZTogICBUaHUgQXByIDcgMTU6MTc6MTMgMjAwNSAtMDcwMAogCkBAIC0zMTMsOCArMzM5LDkgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVtb3ZlIG5vdGUgd2l0aCBhZGQgLWYgLUYgL2Rldi9udWxsJyAnCiAJZ2l0IG5vdGVzIGFkZCAtZiAtRiAvZGV2L251bGwgJiYKKwljb21taXQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJY2F0ID5leHBlY3Qtcm0tRiA8PC1FT0YgJiYKLQkJY29tbWl0IDdmOWFkODgzNmM3NzVhY2IxMzRjMGEwNTVmYzU1ZmI0Y2QxYmEzNjEKKwkJY29tbWl0ICRjb21taXQKIAkJQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgogCQlEYXRlOiAgIFRodSBBcHIgNyAxNToxNzoxMyAyMDA1IC0wNzAwCiAKQEAgLTM1NiwxNCArMzgzLDE2IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZW1vdmUgbm90ZSB3aXRoICJnaXQgbm90ZXMgcmVtb3ZlIicgJwogCWdpdCBub3RlcyByZW1vdmUgSEVBRF4gJiYKIAlnaXQgbm90ZXMgcmVtb3ZlICYmCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCXBhcmVudD0kKGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCiAJY2F0ID5leHBlY3Qtcm0tcmVtb3ZlIDw8LUVPRiAmJgotCQljb21taXQgN2Y5YWQ4ODM2Yzc3NWFjYjEzNGMwYTA1NWZjNTVmYjRjZDFiYTM2MQorCQljb21taXQgJGNvbW1pdAogCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAJCURhdGU6ICAgVGh1IEFwciA3IDE1OjE3OjEzIDIwMDUgLTA3MDAKIAogCQkke2luZGVudH01dGgKIAotCQljb21taXQgMGY3YWEzZWM2MzI1YWViODhiOTEwNDUzYmIzZWIzN2M0OWQ3NWMxMQorCQljb21taXQgJHBhcmVudAogCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAJCURhdGU6ICAgVGh1IEFwciA3IDE1OjE2OjEzIDIwMDUgLTA3MDAKIApAQCAtNDU5LDkgKzQ4OCwxMyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdsaXN0IG5vdGVzIHdpdGggImdpdCBub3RlcyBsaXN0IicgJwotCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgotCQljOWM2YWY3Zjc4YmM0NzQ5MGRiZjNlODIyY2YyZjNjMjRkNGI5MDYxIDdhNGNhNmVlNTJhOTc0YTY2Y2JhYTc4ZTMzMjE0NTM1ZGZmMWQ2OTEKLQkJYzE4ZGMwMjRlMTRmMDhkMThkMTRlZWEwZDc0N2ZmNjkyZDY2ZDZhMyBkMDdkNjJlNTIwOGYyMmViNTY5NWU3ZWI0NzY2N2RjOGI5ODYwMjkwCisJY29tbWl0XzI9JChnaXQgcmV2LXBhcnNlIDJuZCkgJiYKKwljb21taXRfMz0kKGdpdCByZXYtcGFyc2UgM3JkKSAmJgorCW5vdGVfMj0kKGdpdCByZXYtcGFyc2UgcmVmcy9ub3Rlcy9jb21taXRzOiRjb21taXRfMikgJiYKKwlub3RlXzM9JChnaXQgcmV2LXBhcnNlIHJlZnMvbm90ZXMvY29tbWl0czokY29tbWl0XzMpICYmCisJc29ydCAtdCIgIiAtazIgPmV4cGVjdCA8PC1FT0YgJiYKKwkJJG5vdGVfMiAkY29tbWl0XzIKKwkJJG5vdGVfMyAkY29tbWl0XzMKIAlFT0YKIAlnaXQgbm90ZXMgbGlzdCA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbApAQCAtNDczLDkgKzUwNiw3IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xpc3Qgc3BlY2lmaWMgbm90ZSB3aXRoICJnaXQgbm90ZXMgbGlzdCA8b2JqZWN0PiInICcKLQljYXQgPmV4cGVjdCA8PC1FT0YgJiYKLQkJYzE4ZGMwMjRlMTRmMDhkMThkMTRlZWEwZDc0N2ZmNjkyZDY2ZDZhMwotCUVPRgorCWdpdCByZXYtcGFyc2UgcmVmcy9ub3Rlcy9jb21taXRzOiRjb21taXRfMyA+ZXhwZWN0ICYmCiAJZ2l0IG5vdGVzIGxpc3QgSEVBRF5eID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC00OTgsMTAgKzUyOSwxMiBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICciZ2l0IG5vdGVzIGxpc3QiIGRvZXMgbm90IGV4cGFuZCB0byAiZ2l0IG5vdGVzIGxpc3QgSEVBRCInICcKLQljYXQgPmV4cGVjdF9saXN0IDw8LUVPRiAmJgotCQljOWM2YWY3Zjc4YmM0NzQ5MGRiZjNlODIyY2YyZjNjMjRkNGI5MDYxIDdhNGNhNmVlNTJhOTc0YTY2Y2JhYTc4ZTMzMjE0NTM1ZGZmMWQ2OTEKLQkJNGI2YWQyMjM1N2NjOGExMjk2NzIwNTc0YjhkMmZiYzIyZmFiMDY3MSA3ZjlhZDg4MzZjNzc1YWNiMTM0YzBhMDU1ZmM1NWZiNGNkMWJhMzYxCi0JCWMxOGRjMDI0ZTE0ZjA4ZDE4ZDE0ZWVhMGQ3NDdmZjY5MmQ2NmQ2YTMgZDA3ZDYyZTUyMDhmMjJlYjU2OTVlN2ViNDc2NjdkYzhiOTg2MDI5MAorCWNvbW1pdF81PSQoZ2l0IHJldi1wYXJzZSA1dGgpICYmCisJbm90ZV81PSQoZ2l0IHJldi1wYXJzZSByZWZzL25vdGVzL2NvbW1pdHM6JGNvbW1pdF81KSAmJgorCXNvcnQgLXQiICIgLWsyID5leHBlY3RfbGlzdCA8PC1FT0YgJiYKKwkJJG5vdGVfMiAkY29tbWl0XzIKKwkJJG5vdGVfMyAkY29tbWl0XzMKKwkJJG5vdGVfNSAkY29tbWl0XzUKIAlFT0YKIAlnaXQgbm90ZXMgbGlzdCA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0X2xpc3QgYWN0dWFsCkBAIC01MzEsOCArNTY0LDkgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NyZWF0ZSBvdGhlciBub3RlIG9uIGEgZGlmZmVyZW50IG5vdGVzIHJlZiAoc2V0dXApJyAnCiAJdGVzdF9jb21taXQgNnRoICYmCiAJR0lUX05PVEVTX1JFRj0icmVmcy9ub3Rlcy9vdGhlciIgZ2l0IG5vdGVzIGFkZCAtbSAib3RoZXIgbm90ZSIgJiYKKwljb21taXQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJY2F0ID5leHBlY3Qtbm90LW90aGVyIDw8LUVPRiAmJgotCQljb21taXQgMmMxMjUzMzExMThjYWJhMGZmODIzOGI3ZjQ5NThhYzZlOTNmZTM5YworCQljb21taXQgJGNvbW1pdAogCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAJCURhdGU6ICAgVGh1IEFwciA3IDE1OjE4OjEzIDIwMDUgLTA3MDAKIApAQCAtNTY5LDggKzYwMywxMCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdTaG93IGFsbCBub3RlcyB3aGVuIG5vdGVzLmRpc3BsYXlSZWY9cmVmcy9ub3Rlcy8qJyAnCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCXBhcmVudD0kKGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCiAJY2F0ID5leHBlY3QtYm90aCA8PC1FT0YgJiYKLQkJY29tbWl0IDJjMTI1MzMxMTE4Y2FiYTBmZjgyMzhiN2Y0OTU4YWM2ZTkzZmUzOWMKKwkJY29tbWl0ICRjb21taXQKIAkJQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgogCQlEYXRlOiAgIFRodSBBcHIgNyAxNToxODoxMyAyMDA1IC0wNzAwCiAKQEAgLTU4Miw3ICs2MTgsNyBAQAogCQlOb3RlcyAob3RoZXIpOgogCQkke2luZGVudH1vdGhlciBub3RlCiAKLQkJY29tbWl0IDdmOWFkODgzNmM3NzVhY2IxMzRjMGEwNTVmYzU1ZmI0Y2QxYmEzNjEKKwkJY29tbWl0ICRwYXJlbnQKIAkJQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgogCQlEYXRlOiAgIFRodSBBcHIgNyAxNToxNzoxMyAyMDA1IC0wNzAwCiAKQEAgLTYxNiw4ICs2NTIsOSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdub3Rlcy5kaXNwbGF5UmVmIHJlc3BlY3RzIG9yZGVyJyAnCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCWNhdCA+ZXhwZWN0LWJvdGgtcmV2ZXJzZWQgPDwtRU9GICYmCi0JCWNvbW1pdCAyYzEyNTMzMTExOGNhYmEwZmY4MjM4YjdmNDk1OGFjNmU5M2ZlMzljCisJCWNvbW1pdCAkY29tbWl0CiAJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAkJRGF0ZTogICBUaHUgQXByIDcgMTU6MTg6MTMgMjAwNSAtMDcwMAogCkBAIC02NDIsMTQgKzY3OSwxNiBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdHSVRfTk9URVNfRElTUExBWV9SRUYgb3ZlcnJpZGVzIGNvbmZpZycgJworCWNvbW1pdD0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKwlwYXJlbnQ9JChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgogCWNhdCA+ZXhwZWN0LW5vbmUgPDwtRU9GICYmCi0JCWNvbW1pdCAyYzEyNTMzMTExOGNhYmEwZmY4MjM4YjdmNDk1OGFjNmU5M2ZlMzljCisJCWNvbW1pdCAkY29tbWl0CiAJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAkJRGF0ZTogICBUaHUgQXByIDcgMTU6MTg6MTMgMjAwNSAtMDcwMAogCiAJCSR7aW5kZW50fTZ0aAogCi0JCWNvbW1pdCA3ZjlhZDg4MzZjNzc1YWNiMTM0YzBhMDU1ZmM1NWZiNGNkMWJhMzYxCisJCWNvbW1pdCAkcGFyZW50CiAJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAkJRGF0ZTogICBUaHUgQXByIDcgMTU6MTc6MTMgMjAwNSAtMDcwMAogCkBAIC02NjYsOCArNzA1LDkgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1uby1zdGFuZGFyZC1ub3RlcycgJworCWNvbW1pdD0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKIAljYXQgPmV4cGVjdC1jb21taXRzIDw8LUVPRiAmJgotCQljb21taXQgMmMxMjUzMzExMThjYWJhMGZmODIzOGI3ZjQ5NThhYzZlOTNmZTM5YworCQljb21taXQgJGNvbW1pdAogCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAJCURhdGU6ICAgVGh1IEFwciA3IDE1OjE4OjEzIDIwMDUgLTA3MDAKIApAQCAtNzAwLDcgKzc0MCw4IEBACiAJZ2l0IG5vdGVzIHNob3cgSEVBRDogPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAllY2hvICJOb3RlIG9uIGEgYmxvYiIgPmV4cGVjdCAmJgotCWZpbGVuYW1lPSQoZ2l0IGxzLXRyZWUgLS1uYW1lLW9ubHkgSEVBRCB8IGhlYWQgLW4xKSAmJgorCWdpdCBscy10cmVlIC0tbmFtZS1vbmx5IEhFQUQgPmZpbGVzICYmCisJZmlsZW5hbWU9JChoZWFkIC1uMSBmaWxlcykgJiYKIAlnaXQgbm90ZXMgYWRkIC1tICJOb3RlIG9uIGEgYmxvYiIgSEVBRDokZmlsZW5hbWUgJiYKIAlnaXQgbm90ZXMgc2hvdyBIRUFEOiRmaWxlbmFtZSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgpAQCAtNzEyLDggKzc1MywxMCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjcmVhdGUgbm90ZSBmcm9tIG90aGVyIG5vdGUgd2l0aCAiZ2l0IG5vdGVzIGFkZCAtQyInICcKKwl0ZXN0X2NvbW1pdCA3dGggJiYKKwljb21taXQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCi0JCWNvbW1pdCBmYjAxZTBjYThjMzNiNmNjMGM2NDUxZGRlNzQ3Zjk3ZGY1NjdjYjVjCisJCWNvbW1pdCAkY29tbWl0CiAJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAkJRGF0ZTogICBUaHUgQXByIDcgMTU6MTk6MTMgMjAwNSAtMDcwMAogCkBAIC03MjIsMTEgKzc2NSwxMyBAQAogCQlOb3RlczoKIAkJJHtpbmRlbnR9b3JkZXIgdGVzdAogCUVPRgotCXRlc3RfY29tbWl0IDd0aCAmJgotCWdpdCBub3RlcyBhZGQgLUMgJChnaXQgbm90ZXMgbGlzdCBIRUFEXikgJiYKKwlub3RlPSQoZ2l0IG5vdGVzIGxpc3QgSEVBRF4pICYmCisJZ2l0IG5vdGVzIGFkZCAtQyAkbm90ZSAmJgogCWdpdCBsb2cgLTEgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKLQl0ZXN0ICIkKGdpdCBub3RlcyBsaXN0IEhFQUQpIiA9ICIkKGdpdCBub3RlcyBsaXN0IEhFQUReKSIKKwlnaXQgbm90ZXMgbGlzdCBIRUFEXiA+ZXhwZWN0ICYmCisJZ2l0IG5vdGVzIGxpc3QgSEVBRCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjcmVhdGUgbm90ZSBmcm9tIG5vbi1leGlzdGluZyBub3RlIHdpdGggImdpdCBub3RlcyBhZGQgLUMiIGZhaWxzJyAnCkBAIC03NDQsOCArNzg5LDkgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY3JlYXRlIG5vdGUgZnJvbSBibG9iIHdpdGggImdpdCBub3RlcyBhZGQgLUMiIHJldXNlcyBibG9iIGlkJyAnCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgotCQljb21taXQgOWE0YzMxYzdmNzIyYjVkNTE3ZTkyYzY0ZTkzMmRkNzUxZTE0MTNiZgorCQljb21taXQgJGNvbW1pdAogCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAJCURhdGU6ICAgVGh1IEFwciA3IDE1OjIwOjEzIDIwMDUgLTA3MDAKIApAQCAtNzU0LDE2ICs4MDAsMTkgQEAKIAkJTm90ZXM6CiAJCSR7aW5kZW50fVRoaXMgaXMgYSBibG9iIG9iamVjdAogCUVPRgotCWJsb2I9JChlY2hvICJUaGlzIGlzIGEgYmxvYiBvYmplY3QiIHwgZ2l0IGhhc2gtb2JqZWN0IC13IC0tc3RkaW4pICYmCi0JZ2l0IG5vdGVzIGFkZCAtQyAkYmxvYiAmJgorCWVjaG8gIlRoaXMgaXMgYSBibG9iIG9iamVjdCIgfCBnaXQgaGFzaC1vYmplY3QgLXcgLS1zdGRpbiA+YmxvYiAmJgorCWdpdCBub3RlcyBhZGQgLUMgJChjYXQgYmxvYikgJiYKIAlnaXQgbG9nIC0xID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCi0JdGVzdCAiJChnaXQgbm90ZXMgbGlzdCBIRUFEKSIgPSAiJGJsb2IiCisJZ2l0IG5vdGVzIGxpc3QgSEVBRCA+YWN0dWFsICYmCisJdGVzdF9jbXAgYmxvYiBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY3JlYXRlIG5vdGUgZnJvbSBvdGhlciBub3RlIHdpdGggImdpdCBub3RlcyBhZGQgLWMiJyAnCisJdGVzdF9jb21taXQgOXRoICYmCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgotCQljb21taXQgMmUwZGI0YmM2NDllMTc0ZDY2N2ExY2RlMTllNzI1Y2Y4OTdhNWJkMgorCQljb21taXQgJGNvbW1pdAogCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAJCURhdGU6ICAgVGh1IEFwciA3IDE1OjIxOjEzIDIwMDUgLTA3MDAKIApAQCAtNzcyLDggKzgyMSw4IEBACiAJCU5vdGVzOgogCQkke2luZGVudH15ZXQgYW5vdGhlciBub3RlCiAJRU9GCi0JdGVzdF9jb21taXQgOXRoICYmCi0JTVNHPSJ5ZXQgYW5vdGhlciBub3RlIiBnaXQgbm90ZXMgYWRkIC1jICQoZ2l0IG5vdGVzIGxpc3QgSEVBRF5eKSAmJgorCW5vdGU9JChnaXQgbm90ZXMgbGlzdCBIRUFEXl4pICYmCisJTVNHPSJ5ZXQgYW5vdGhlciBub3RlIiBnaXQgbm90ZXMgYWRkIC1jICRub3RlICYmCiAJZ2l0IGxvZyAtMSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwpAQCAtNzg1LDggKzgzNCw5IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FwcGVuZCB0byBub3RlIGZyb20gb3RoZXIgbm90ZSB3aXRoICJnaXQgbm90ZXMgYXBwZW5kIC1DIicgJworCWNvbW1pdD0kKGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCi0JCWNvbW1pdCAyZTBkYjRiYzY0OWUxNzRkNjY3YTFjZGUxOWU3MjVjZjg5N2E1YmQyCisJCWNvbW1pdCAkY29tbWl0CiAJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAkJRGF0ZTogICBUaHUgQXByIDcgMTU6MjE6MTMgMjAwNSAtMDcwMAogCkBAIC03OTcsMTQgKzg0NywxNiBAQAogCQkke2luZGVudH0KIAkJJHtpbmRlbnR9eWV0IGFub3RoZXIgbm90ZQogCUVPRgotCWdpdCBub3RlcyBhcHBlbmQgLUMgJChnaXQgbm90ZXMgbGlzdCBIRUFEXikgSEVBRF4gJiYKKwlub3RlPSQoZ2l0IG5vdGVzIGxpc3QgSEVBRF4pICYmCisJZ2l0IG5vdGVzIGFwcGVuZCAtQyAkbm90ZSBIRUFEXiAmJgogCWdpdCBsb2cgLTEgSEVBRF4gPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY3JlYXRlIG5vdGUgZnJvbSBvdGhlciBub3RlIHdpdGggImdpdCBub3RlcyBhcHBlbmQgLWMiJyAnCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgotCQljb21taXQgN2MzYjg3YWIzNjhmODFlMTFiMWVhODdiMmFiOTlhNzFjY2QyNTQwNgorCQljb21taXQgJGNvbW1pdAogCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAJCURhdGU6ICAgVGh1IEFwciA3IDE1OjIyOjEzIDIwMDUgLTA3MDAKIApAQCAtODEzLDE0ICs4NjUsMTYgQEAKIAkJTm90ZXM6CiAJCSR7aW5kZW50fW90aGVyIG5vdGUKIAlFT0YKLQlNU0c9Im90aGVyIG5vdGUiIGdpdCBub3RlcyBhcHBlbmQgLWMgJChnaXQgbm90ZXMgbGlzdCBIRUFEXikgJiYKKwlub3RlPSQoZ2l0IG5vdGVzIGxpc3QgSEVBRF4pICYmCisJTVNHPSJvdGhlciBub3RlIiBnaXQgbm90ZXMgYXBwZW5kIC1jICRub3RlICYmCiAJZ2l0IGxvZyAtMSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhcHBlbmQgdG8gbm90ZSBmcm9tIG90aGVyIG5vdGUgd2l0aCAiZ2l0IG5vdGVzIGFwcGVuZCAtYyInICcKKwljb21taXQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCi0JCWNvbW1pdCA3YzNiODdhYjM2OGY4MWUxMWIxZWE4N2IyYWI5OWE3MWNjZDI1NDA2CisJCWNvbW1pdCAkY29tbWl0CiAJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAkJRGF0ZTogICBUaHUgQXByIDcgMTU6MjI6MTMgMjAwNSAtMDcwMAogCkBAIC04MzEsMTQgKzg4NSwzNyBAQAogCQkke2luZGVudH0KIAkJJHtpbmRlbnR9eWV0IGFub3RoZXIgbm90ZQogCUVPRgotCU1TRz0ieWV0IGFub3RoZXIgbm90ZSIgZ2l0IG5vdGVzIGFwcGVuZCAtYyAkKGdpdCBub3RlcyBsaXN0IEhFQUQpICYmCisJbm90ZT0kKGdpdCBub3RlcyBsaXN0IEhFQUQpICYmCisJTVNHPSJ5ZXQgYW5vdGhlciBub3RlIiBnaXQgbm90ZXMgYXBwZW5kIC1jICRub3RlICYmCiAJZ2l0IGxvZyAtMSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3B5IG5vdGUgd2l0aCAiZ2l0IG5vdGVzIGNvcHkiJyAnCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSA0dGgpICYmCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCi0JCWNvbW1pdCBhNDQ2ZmZmODc3N2VmZGM2ZWI4ZjRiN2M4YTVmZjY5OTQ4NGRmMGQ1CisJCWNvbW1pdCAkY29tbWl0CisJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KKwkJRGF0ZTogICBUaHUgQXByIDcgMTU6MTY6MTMgMjAwNSAtMDcwMAorCisJCSR7aW5kZW50fTR0aAorCisJCU5vdGVzOgorCQkke2luZGVudH1UaGlzIGlzIGEgYmxvYiBvYmplY3QKKwlFT0YKKwlnaXQgbm90ZXMgY29weSA4dGggNHRoICYmCisJZ2l0IGxvZyAzcmQuLjR0aCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCWdpdCBub3RlcyBsaXN0IDR0aCA+ZXhwZWN0ICYmCisJZ2l0IG5vdGVzIGxpc3QgOHRoID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvcHkgbm90ZSB3aXRoICJnaXQgbm90ZXMgY29weSIgd2l0aCBkZWZhdWx0JyAnCisJdGVzdF9jb21taXQgMTF0aCAmJgorCWNvbW1pdD0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkJY29tbWl0ICRjb21taXQKIAkJQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgogCQlEYXRlOiAgIFRodSBBcHIgNyAxNToyMzoxMyAyMDA1IC0wNzAwCiAKQEAgLTg0OSwyMyArOTI2LDU5IEBACiAJCSR7aW5kZW50fQogCQkke2luZGVudH15ZXQgYW5vdGhlciBub3RlCiAJRU9GCi0JdGVzdF9jb21taXQgMTF0aCAmJgotCWdpdCBub3RlcyBjb3B5IEhFQUReIEhFQUQgJiYKKwlnaXQgbm90ZXMgY29weSBIRUFEXiAmJgogCWdpdCBsb2cgLTEgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKLQl0ZXN0ICIkKGdpdCBub3RlcyBsaXN0IEhFQUQpIiA9ICIkKGdpdCBub3RlcyBsaXN0IEhFQUReKSIKKwlnaXQgbm90ZXMgbGlzdCBIRUFEXiA+ZXhwZWN0ICYmCisJZ2l0IG5vdGVzIGxpc3QgSEVBRCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcmV2ZW50IG92ZXJ3cml0ZSB3aXRoICJnaXQgbm90ZXMgY29weSInICcKIAl0ZXN0X211c3RfZmFpbCBnaXQgbm90ZXMgY29weSBIRUFEfjIgSEVBRCAmJgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCQljb21taXQgJGNvbW1pdAorCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CisJCURhdGU6ICAgVGh1IEFwciA3IDE1OjIzOjEzIDIwMDUgLTA3MDAKKworCQkke2luZGVudH0xMXRoCisKKwkJTm90ZXM6CisJCSR7aW5kZW50fW90aGVyIG5vdGUKKwkJJHtpbmRlbnR9CisJCSR7aW5kZW50fXlldCBhbm90aGVyIG5vdGUKKwlFT0YKIAlnaXQgbG9nIC0xID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCi0JdGVzdCAiJChnaXQgbm90ZXMgbGlzdCBIRUFEKSIgPSAiJChnaXQgbm90ZXMgbGlzdCBIRUFEXikiCisJZ2l0IG5vdGVzIGxpc3QgSEVBRF4gPmV4cGVjdCAmJgorCWdpdCBub3RlcyBsaXN0IEhFQUQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYWxsb3cgb3ZlcndyaXRlIHdpdGggImdpdCBub3RlcyBjb3B5IC1mIicgJworCWNvbW1pdD0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKIAljYXQgPmV4cGVjdCA8PC1FT0YgJiYKLQkJY29tbWl0IGE0NDZmZmY4Nzc3ZWZkYzZlYjhmNGI3YzhhNWZmNjk5NDg0ZGYwZDUKKwkJY29tbWl0ICRjb21taXQKKwkJQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgorCQlEYXRlOiAgIFRodSBBcHIgNyAxNToyMzoxMyAyMDA1IC0wNzAwCisKKwkJJHtpbmRlbnR9MTF0aAorCisJCU5vdGVzOgorCQkke2luZGVudH1UaGlzIGlzIGEgYmxvYiBvYmplY3QKKwlFT0YKKwlnaXQgbm90ZXMgY29weSAtZiBIRUFEfjMgSEVBRCAmJgorCWdpdCBsb2cgLTEgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKwlnaXQgbm90ZXMgbGlzdCBIRUFEfjMgPmV4cGVjdCAmJgorCWdpdCBub3RlcyBsaXN0IEhFQUQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYWxsb3cgb3ZlcndyaXRlIHdpdGggImdpdCBub3RlcyBjb3B5IC1mIiB3aXRoIGRlZmF1bHQnICcKKwljb21taXQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCWNvbW1pdCAkY29tbWl0CiAJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAkJRGF0ZTogICBUaHUgQXByIDcgMTU6MjM6MTMgMjAwNSAtMDcwMAogCkBAIC04NzYsMTAgKzk4OSwxMiBAQAogCQkke2luZGVudH0KIAkJJHtpbmRlbnR9eWV0IGFub3RoZXIgbm90ZQogCUVPRgotCWdpdCBub3RlcyBjb3B5IC1mIEhFQUR+MiBIRUFEICYmCisJZ2l0IG5vdGVzIGNvcHkgLWYgSEVBRH4yICYmCiAJZ2l0IGxvZyAtMSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgotCXRlc3QgIiQoZ2l0IG5vdGVzIGxpc3QgSEVBRCkiID0gIiQoZ2l0IG5vdGVzIGxpc3QgSEVBRH4yKSIKKwlnaXQgbm90ZXMgbGlzdCBIRUFEfjIgPmV4cGVjdCAmJgorCWdpdCBub3RlcyBsaXN0IEhFQUQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2Fubm90IGNvcHkgbm90ZSBmcm9tIG9iamVjdCB3aXRob3V0IG5vdGVzJyAnCkBAIC04ODksOCArMTAwNCwxMCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgbm90ZXMgY29weSAtLXN0ZGluJyAnCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCXBhcmVudD0kKGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCi0JCWNvbW1pdCBlODcxYWE2MTE4MmIxZDk1ZDBhNmZiNzU0NDVkODkxNzIyODYzYjZiCisJCWNvbW1pdCAkY29tbWl0CiAJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAkJRGF0ZTogICBUaHUgQXByIDcgMTU6MjU6MTMgMjAwNSAtMDcwMAogCkBAIC05MDEsNyArMTAxOCw3IEBACiAJCSR7aW5kZW50fQogCQkke2luZGVudH15ZXQgYW5vdGhlciBub3RlCiAKLQkJY29tbWl0IDY1ZTI2M2RlZDAyYWU0ZTg4MzliYzE1MTA5NTExMzczNzU3OWRjMTIKKwkJY29tbWl0ICRwYXJlbnQKIAkJQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgogCQlEYXRlOiAgIFRodSBBcHIgNyAxNToyNDoxMyAyMDA1IC0wNzAwCiAKQEAgLTkxMiw0MSArMTAyOSw1NyBAQAogCQkke2luZGVudH0KIAkJJHtpbmRlbnR9eWV0IGFub3RoZXIgbm90ZQogCUVPRgotCShlY2hvICQoZ2l0IHJldi1wYXJzZSBIRUFEfjMpICQoZ2l0IHJldi1wYXJzZSBIRUFEXikgJiYKLQllY2hvICQoZ2l0IHJldi1wYXJzZSBIRUFEfjIpICQoZ2l0IHJldi1wYXJzZSBIRUFEKSkgfAotCWdpdCBub3RlcyBjb3B5IC0tc3RkaW4gJiYKKwlmcm9tPSQoZ2l0IHJldi1wYXJzZSBIRUFEfjMpICYmCisJdG89JChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgorCWVjaG8gIiRmcm9tIiAiJHRvIiA+Y29weSAmJgorCWZyb209JChnaXQgcmV2LXBhcnNlIEhFQUR+MikgJiYKKwl0bz0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKwllY2hvICIkZnJvbSIgIiR0byIgPj5jb3B5ICYmCisJZ2l0IG5vdGVzIGNvcHkgLS1zdGRpbiA8Y29weSAmJgogCWdpdCBsb2cgLTIgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKLQl0ZXN0ICIkKGdpdCBub3RlcyBsaXN0IEhFQUQpIiA9ICIkKGdpdCBub3RlcyBsaXN0IEhFQUR+MikiICYmCi0JdGVzdCAiJChnaXQgbm90ZXMgbGlzdCBIRUFEXikiID0gIiQoZ2l0IG5vdGVzIGxpc3QgSEVBRH4zKSIKKwlnaXQgbm90ZXMgbGlzdCBIRUFEfjIgPmV4cGVjdCAmJgorCWdpdCBub3RlcyBsaXN0IEhFQUQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKwlnaXQgbm90ZXMgbGlzdCBIRUFEfjMgPmV4cGVjdCAmJgorCWdpdCBub3RlcyBsaXN0IEhFQUReID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBub3RlcyBjb3B5IC0tZm9yLXJld3JpdGUgKHVuY29uZmlndXJlZCknICcKKwl0ZXN0X2NvbW1pdCAxNHRoICYmCisJdGVzdF9jb21taXQgMTV0aCAmJgorCWNvbW1pdD0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKwlwYXJlbnQ9JChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgogCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgotCQljb21taXQgNGFjZjQyZTg0N2U3ZmZmYmJmODllZTM2NWMyMGFjN2NhZjQwZGU4OQorCQljb21taXQgJGNvbW1pdAogCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAJCURhdGU6ICAgVGh1IEFwciA3IDE1OjI3OjEzIDIwMDUgLTA3MDAKIAogCQkke2luZGVudH0xNXRoCiAKLQkJY29tbWl0IDA3Yzg1ZDc3MDU5MzkzZWQwMTU0YjhjOTY5MDY1NDdhNTlkZmNkZGQKKwkJY29tbWl0ICRwYXJlbnQKIAkJQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgogCQlEYXRlOiAgIFRodSBBcHIgNyAxNToyNjoxMyAyMDA1IC0wNzAwCiAKIAkJJHtpbmRlbnR9MTR0aAogCUVPRgotCXRlc3RfY29tbWl0IDE0dGggJiYKLQl0ZXN0X2NvbW1pdCAxNXRoICYmCi0JKGVjaG8gJChnaXQgcmV2LXBhcnNlIEhFQUR+MykgJChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgotCWVjaG8gJChnaXQgcmV2LXBhcnNlIEhFQUR+MikgJChnaXQgcmV2LXBhcnNlIEhFQUQpKSB8Ci0JZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZT1mb28gJiYKKwlmcm9tPSQoZ2l0IHJldi1wYXJzZSBIRUFEfjMpICYmCisJdG89JChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgorCWVjaG8gIiRmcm9tIiAiJHRvIiA+Y29weSAmJgorCWZyb209JChnaXQgcmV2LXBhcnNlIEhFQUR+MikgJiYKKwl0bz0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKwllY2hvICIkZnJvbSIgIiR0byIgPj5jb3B5ICYmCisJZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZT1mb28gPGNvcHkgJiYKIAlnaXQgbG9nIC0yID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBub3RlcyBjb3B5IC0tZm9yLXJld3JpdGUgKGVuYWJsZWQpJyAnCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCXBhcmVudD0kKGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCi0JCWNvbW1pdCA0YWNmNDJlODQ3ZTdmZmZiYmY4OWVlMzY1YzIwYWM3Y2FmNDBkZTg5CisJCWNvbW1pdCAkY29tbWl0CiAJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAkJRGF0ZTogICBUaHUgQXByIDcgMTU6Mjc6MTMgMjAwNSAtMDcwMAogCkBAIC05NTcsNyArMTA5MCw3IEBACiAJCSR7aW5kZW50fQogCQkke2luZGVudH15ZXQgYW5vdGhlciBub3RlCiAKLQkJY29tbWl0IDA3Yzg1ZDc3MDU5MzkzZWQwMTU0YjhjOTY5MDY1NDdhNTlkZmNkZGQKKwkJY29tbWl0ICRwYXJlbnQKIAkJQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgogCQlEYXRlOiAgIFRodSBBcHIgNyAxNToyNjoxMyAyMDA1IC0wNzAwCiAKQEAgLTk3MCwyNCArMTEwMywzMSBAQAogCUVPRgogCXRlc3RfY29uZmlnIG5vdGVzLnJld3JpdGVNb2RlIG92ZXJ3cml0ZSAmJgogCXRlc3RfY29uZmlnIG5vdGVzLnJld3JpdGVSZWYgInJlZnMvbm90ZXMvKiIgJiYKLQkoZWNobyAkKGdpdCByZXYtcGFyc2UgSEVBRH4zKSAkKGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCi0JZWNobyAkKGdpdCByZXYtcGFyc2UgSEVBRH4yKSAkKGdpdCByZXYtcGFyc2UgSEVBRCkpIHwKLQlnaXQgbm90ZXMgY29weSAtLWZvci1yZXdyaXRlPWZvbyAmJgorCWZyb209JChnaXQgcmV2LXBhcnNlIEhFQUR+MykgJiYKKwl0bz0kKGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCisJZWNobyAiJGZyb20iICIkdG8iID5jb3B5ICYmCisJZnJvbT0kKGdpdCByZXYtcGFyc2UgSEVBRH4yKSAmJgorCXRvPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCWVjaG8gIiRmcm9tIiAiJHRvIiA+PmNvcHkgJiYKKwlnaXQgbm90ZXMgY29weSAtLWZvci1yZXdyaXRlPWZvbyA8Y29weSAmJgogCWdpdCBsb2cgLTIgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZSAoZGlzYWJsZWQpJyAnCiAJdGVzdF9jb25maWcgbm90ZXMucmV3cml0ZS5iYXIgZmFsc2UgJiYKLQllY2hvICQoZ2l0IHJldi1wYXJzZSBIRUFEfjMpICQoZ2l0IHJldi1wYXJzZSBIRUFEKSB8Ci0JZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZT1iYXIgJiYKKwlmcm9tPSQoZ2l0IHJldi1wYXJzZSBIRUFEfjMpICYmCisJdG89JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCisJZWNobyAiJGZyb20iICIkdG8iID5jb3B5ICYmCisJZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZT1iYXIgPGNvcHkgJiYKIAlnaXQgbG9nIC0yID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBub3RlcyBjb3B5IC0tZm9yLXJld3JpdGUgKG92ZXJ3cml0ZSknICcKKwljb21taXQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCi0JCWNvbW1pdCA0YWNmNDJlODQ3ZTdmZmZiYmY4OWVlMzY1YzIwYWM3Y2FmNDBkZTg5CisJCWNvbW1pdCAkY29tbWl0CiAJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAkJRGF0ZTogICBUaHUgQXByIDcgMTU6Mjc6MTMgMjAwNSAtMDcwMAogCkBAIC05OTksOCArMTEzOSwxMCBAQAogCWdpdCBub3RlcyBhZGQgLWYgLW0iYSBmcmVzaCBub3RlIiBIRUFEXiAmJgogCXRlc3RfY29uZmlnIG5vdGVzLnJld3JpdGVNb2RlIG92ZXJ3cml0ZSAmJgogCXRlc3RfY29uZmlnIG5vdGVzLnJld3JpdGVSZWYgInJlZnMvbm90ZXMvKiIgJiYKLQllY2hvICQoZ2l0IHJldi1wYXJzZSBIRUFEXikgJChnaXQgcmV2LXBhcnNlIEhFQUQpIHwKLQlnaXQgbm90ZXMgY29weSAtLWZvci1yZXdyaXRlPWZvbyAmJgorCWZyb209JChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgorCXRvPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCWVjaG8gIiRmcm9tIiAiJHRvIiA+Y29weSAmJgorCWdpdCBub3RlcyBjb3B5IC0tZm9yLXJld3JpdGU9Zm9vIDxjb3B5ICYmCiAJZ2l0IGxvZyAtMSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwpAQCAtMTAwOCwxNSArMTE1MCwxOCBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZSAoaWdub3JlKScgJwogCXRlc3RfY29uZmlnIG5vdGVzLnJld3JpdGVNb2RlIGlnbm9yZSAmJgogCXRlc3RfY29uZmlnIG5vdGVzLnJld3JpdGVSZWYgInJlZnMvbm90ZXMvKiIgJiYKLQllY2hvICQoZ2l0IHJldi1wYXJzZSBIRUFEXikgJChnaXQgcmV2LXBhcnNlIEhFQUQpIHwKLQlnaXQgbm90ZXMgY29weSAtLWZvci1yZXdyaXRlPWZvbyAmJgorCWZyb209JChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgorCXRvPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCWVjaG8gIiRmcm9tIiAiJHRvIiA+Y29weSAmJgorCWdpdCBub3RlcyBjb3B5IC0tZm9yLXJld3JpdGU9Zm9vIDxjb3B5ICYmCiAJZ2l0IGxvZyAtMSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgbm90ZXMgY29weSAtLWZvci1yZXdyaXRlIChhcHBlbmQpJyAnCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgotCQljb21taXQgNGFjZjQyZTg0N2U3ZmZmYmJmODllZTM2NWMyMGFjN2NhZjQwZGU4OQorCQljb21taXQgJGNvbW1pdAogCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAJCURhdGU6ICAgVGh1IEFwciA3IDE1OjI3OjEzIDIwMDUgLTA3MDAKIApAQCAtMTAzMCwxNSArMTE3NSwxOCBAQAogCWdpdCBub3RlcyBhZGQgLWYgLW0iYW5vdGhlciBmcmVzaCBub3RlIiBIRUFEXiAmJgogCXRlc3RfY29uZmlnIG5vdGVzLnJld3JpdGVNb2RlIGNvbmNhdGVuYXRlICYmCiAJdGVzdF9jb25maWcgbm90ZXMucmV3cml0ZVJlZiAicmVmcy9ub3Rlcy8qIiAmJgotCWVjaG8gJChnaXQgcmV2LXBhcnNlIEhFQUReKSAkKGdpdCByZXYtcGFyc2UgSEVBRCkgfAotCWdpdCBub3RlcyBjb3B5IC0tZm9yLXJld3JpdGU9Zm9vICYmCisJZnJvbT0kKGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCisJdG89JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCisJZWNobyAiJGZyb20iICIkdG8iID5jb3B5ICYmCisJZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZT1mb28gPGNvcHkgJiYKIAlnaXQgbG9nIC0xID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBub3RlcyBjb3B5IC0tZm9yLXJld3JpdGUgKGFwcGVuZCB0d28gdG8gb25lKScgJworCWNvbW1pdD0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKIAljYXQgPmV4cGVjdCA8PC1FT0YgJiYKLQkJY29tbWl0IDRhY2Y0MmU4NDdlN2ZmZmJiZjg5ZWUzNjVjMjBhYzdjYWY0MGRlODkKKwkJY29tbWl0ICRjb21taXQKIAkJQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgogCQlEYXRlOiAgIFRodSBBcHIgNyAxNToyNzoxMyAyMDA1IC0wNzAwCiAKQEAgLTEwNTcsOSArMTIwNSwxMyBAQAogCWdpdCBub3RlcyBhZGQgLWYgLW0iYXBwZW5kIDIiIEhFQUReXiAmJgogCXRlc3RfY29uZmlnIG5vdGVzLnJld3JpdGVNb2RlIGNvbmNhdGVuYXRlICYmCiAJdGVzdF9jb25maWcgbm90ZXMucmV3cml0ZVJlZiAicmVmcy9ub3Rlcy8qIiAmJgotCShlY2hvICQoZ2l0IHJldi1wYXJzZSBIRUFEXikgJChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCi0JZWNobyAkKGdpdCByZXYtcGFyc2UgSEVBRF5eKSAkKGdpdCByZXYtcGFyc2UgSEVBRCkpIHwKLQlnaXQgbm90ZXMgY29weSAtLWZvci1yZXdyaXRlPWZvbyAmJgorCWZyb209JChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgorCXRvPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCWVjaG8gIiRmcm9tIiAiJHRvIiA+Y29weSAmJgorCWZyb209JChnaXQgcmV2LXBhcnNlIEhFQUReXikgJiYKKwl0bz0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKwllY2hvICIkZnJvbSIgIiR0byIgPj5jb3B5ICYmCisJZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZT1mb28gPGNvcHkgJiYKIAlnaXQgbG9nIC0xID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC0xMDY4LDE1ICsxMjIwLDE4IEBACiAJZ2l0IG5vdGVzIHJlbW92ZSBIRUFEXiAmJgogCXRlc3RfY29uZmlnIG5vdGVzLnJld3JpdGVNb2RlIGNvbmNhdGVuYXRlICYmCiAJdGVzdF9jb25maWcgbm90ZXMucmV3cml0ZVJlZiAicmVmcy9ub3Rlcy8qIiAmJgotCWVjaG8gJChnaXQgcmV2LXBhcnNlIEhFQUReKSAkKGdpdCByZXYtcGFyc2UgSEVBRCkgfAotCWdpdCBub3RlcyBjb3B5IC0tZm9yLXJld3JpdGU9Zm9vICYmCisJZnJvbT0kKGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCisJdG89JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCisJZWNobyAiJGZyb20iICIkdG8iID5jb3B5ICYmCisJZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZT1mb28gPGNvcHkgJiYKIAlnaXQgbG9nIC0xID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0dJVF9OT1RFU19SRVdSSVRFX01PREUgd29ya3MnICcKKwljb21taXQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCi0JCWNvbW1pdCA0YWNmNDJlODQ3ZTdmZmZiYmY4OWVlMzY1YzIwYWM3Y2FmNDBkZTg5CisJCWNvbW1pdCAkY29tbWl0CiAJCUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAkJRGF0ZTogICBUaHUgQXByIDcgMTU6Mjc6MTMgMjAwNSAtMDcwMAogCkBAIC0xMDg4LDE1ICsxMjQzLDE4IEBACiAJdGVzdF9jb25maWcgbm90ZXMucmV3cml0ZU1vZGUgY29uY2F0ZW5hdGUgJiYKIAl0ZXN0X2NvbmZpZyBub3Rlcy5yZXdyaXRlUmVmICJyZWZzL25vdGVzLyoiICYmCiAJZ2l0IG5vdGVzIGFkZCAtZiAtbSJyZXBsYWNlbWVudCBub3RlIDEiIEhFQUReICYmCi0JZWNobyAkKGdpdCByZXYtcGFyc2UgSEVBRF4pICQoZ2l0IHJldi1wYXJzZSBIRUFEKSB8Ci0JR0lUX05PVEVTX1JFV1JJVEVfTU9ERT1vdmVyd3JpdGUgZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZT1mb28gJiYKKwlmcm9tPSQoZ2l0IHJldi1wYXJzZSBIRUFEXikgJiYKKwl0bz0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKwllY2hvICIkZnJvbSIgIiR0byIgPmNvcHkgJiYKKwlHSVRfTk9URVNfUkVXUklURV9NT0RFPW92ZXJ3cml0ZSBnaXQgbm90ZXMgY29weSAtLWZvci1yZXdyaXRlPWZvbyA8Y29weSAmJgogCWdpdCBsb2cgLTEgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnR0lUX05PVEVTX1JFV1JJVEVfUkVGIHdvcmtzJyAnCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgotCQljb21taXQgNGFjZjQyZTg0N2U3ZmZmYmJmODllZTM2NWMyMGFjN2NhZjQwZGU4OQorCQljb21taXQgJGNvbW1pdAogCQlBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAJCURhdGU6ICAgVGh1IEFwciA3IDE1OjI3OjEzIDIwMDUgLTA3MDAKIApAQCAtMTEwOCw5ICsxMjY2LDExIEBACiAJZ2l0IG5vdGVzIGFkZCAtZiAtbSJyZXBsYWNlbWVudCBub3RlIDIiIEhFQUReICYmCiAJdGVzdF9jb25maWcgbm90ZXMucmV3cml0ZU1vZGUgb3ZlcndyaXRlICYmCiAJdGVzdF91bmNvbmZpZyBub3Rlcy5yZXdyaXRlUmVmICYmCi0JZWNobyAkKGdpdCByZXYtcGFyc2UgSEVBRF4pICQoZ2l0IHJldi1wYXJzZSBIRUFEKSB8CisJZnJvbT0kKGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCisJdG89JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCisJZWNobyAiJGZyb20iICIkdG8iID5jb3B5ICYmCiAJR0lUX05PVEVTX1JFV1JJVEVfUkVGPXJlZnMvbm90ZXMvY29tbWl0czpyZWZzL25vdGVzL290aGVyIFwKLQkJZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZT1mb28gJiYKKwkJZ2l0IG5vdGVzIGNvcHkgLS1mb3ItcmV3cml0ZT1mb28gPGNvcHkgJiYKIAlnaXQgbG9nIC0xID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC0xMTE5LDQwICsxMjc5LDU1IEBACiAJZ2l0IG5vdGVzIGFkZCAtZiAtbSJyZXBsYWNlbWVudCBub3RlIDMiIEhFQUReICYmCiAJdGVzdF9jb25maWcgbm90ZXMucmV3cml0ZU1vZGUgb3ZlcndyaXRlICYmCiAJdGVzdF9jb25maWcgbm90ZXMucmV3cml0ZVJlZiByZWZzL25vdGVzL290aGVyICYmCi0JZWNobyAkKGdpdCByZXYtcGFyc2UgSEVBRF4pICQoZ2l0IHJldi1wYXJzZSBIRUFEKSB8Ci0JR0lUX05PVEVTX1JFV1JJVEVfUkVGPSBnaXQgbm90ZXMgY29weSAtLWZvci1yZXdyaXRlPWZvbyAmJgorCWZyb209JChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgorCXRvPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCWVjaG8gIiRmcm9tIiAiJHRvIiA+Y29weSAmJgorCUdJVF9OT1RFU19SRVdSSVRFX1JFRj1yZWZzL25vdGVzL2NvbW1pdHMgXAorCQlnaXQgbm90ZXMgY29weSAtLWZvci1yZXdyaXRlPWZvbyA8Y29weSAmJgogCWdpdCBsb2cgLTEgPmFjdHVhbCAmJgotCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwlncmVwICJyZXBsYWNlbWVudCBub3RlIDMiIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgbm90ZXMgY29weSBkaWFnbm9zZXMgdG9vIG1hbnkgb3IgdG9vIGZldyBwYXJhbWV0ZXJzJyAnCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IG5vdGVzIGNvcHkgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgbm90ZXMgY29weSBvbmUgdHdvIHRocmVlCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IG5vdGVzIGNvcHkgMj5lcnJvciAmJgorCXRlc3RfaTE4bmdyZXAgInRvbyBmZXcgcGFyYW1ldGVycyIgZXJyb3IgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgbm90ZXMgY29weSBvbmUgdHdvIHRocmVlIDI+ZXJyb3IgJiYKKwl0ZXN0X2kxOG5ncmVwICJ0b28gbWFueSBwYXJhbWV0ZXJzIiBlcnJvcgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgbm90ZXMgZ2V0LXJlZiBleHBhbmRzIHJlZnMvaGVhZHMvbWFzdGVyIHRvIHJlZnMvbm90ZXMvcmVmcy9oZWFkcy9tYXN0ZXInICcKIAl0ZXN0X3VuY29uZmlnIGNvcmUubm90ZXNSZWYgJiYKIAlzYW5lX3Vuc2V0IEdJVF9OT1RFU19SRUYgJiYKLQl0ZXN0ICIkKGdpdCBub3RlcyAtLXJlZj1yZWZzL2hlYWRzL21hc3RlciBnZXQtcmVmKSIgPSAicmVmcy9ub3Rlcy9yZWZzL2hlYWRzL21hc3RlciIKKwllY2hvIHJlZnMvbm90ZXMvcmVmcy9oZWFkcy9tYXN0ZXIgPmV4cGVjdCAmJgorCWdpdCBub3RlcyAtLXJlZj1yZWZzL2hlYWRzL21hc3RlciBnZXQtcmVmID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBub3RlcyBnZXQtcmVmIChubyBvdmVycmlkZXMpJyAnCiAJdGVzdF91bmNvbmZpZyBjb3JlLm5vdGVzUmVmICYmCiAJc2FuZV91bnNldCBHSVRfTk9URVNfUkVGICYmCi0JdGVzdCAiJChnaXQgbm90ZXMgZ2V0LXJlZikiID0gInJlZnMvbm90ZXMvY29tbWl0cyIKKwllY2hvIHJlZnMvbm90ZXMvY29tbWl0cyA+ZXhwZWN0ICYmCisJZ2l0IG5vdGVzIGdldC1yZWYgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IG5vdGVzIGdldC1yZWYgKGNvcmUubm90ZXNSZWYpJyAnCiAJdGVzdF9jb25maWcgY29yZS5ub3Rlc1JlZiByZWZzL25vdGVzL2ZvbyAmJgotCXRlc3QgIiQoZ2l0IG5vdGVzIGdldC1yZWYpIiA9ICJyZWZzL25vdGVzL2ZvbyIKKwllY2hvIHJlZnMvbm90ZXMvZm9vID5leHBlY3QgJiYKKwlnaXQgbm90ZXMgZ2V0LXJlZiA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgbm90ZXMgZ2V0LXJlZiAoR0lUX05PVEVTX1JFRiknICcKLQl0ZXN0ICIkKEdJVF9OT1RFU19SRUY9cmVmcy9ub3Rlcy9iYXIgZ2l0IG5vdGVzIGdldC1yZWYpIiA9ICJyZWZzL25vdGVzL2JhciIKKwllY2hvIHJlZnMvbm90ZXMvYmFyID5leHBlY3QgJiYKKwlHSVRfTk9URVNfUkVGPXJlZnMvbm90ZXMvYmFyIGdpdCBub3RlcyBnZXQtcmVmID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBub3RlcyBnZXQtcmVmICgtLXJlZiknICcKLQl0ZXN0ICIkKEdJVF9OT1RFU19SRUY9cmVmcy9ub3Rlcy9iYXIgZ2l0IG5vdGVzIC0tcmVmPWJheiBnZXQtcmVmKSIgPSAicmVmcy9ub3Rlcy9iYXoiCisJZWNobyByZWZzL25vdGVzL2JheiA+ZXhwZWN0ICYmCisJR0lUX05PVEVTX1JFRj1yZWZzL25vdGVzL2JhciBnaXQgbm90ZXMgLS1yZWY9YmF6IGdldC1yZWYgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgdGVzdGluZyBvZiBlbXB0eSBub3RlcycgJwpkaWZmIC0tZ2l0IGEvdC90MzMwNS1ub3Rlcy1mYW5vdXQuc2ggYi90L3QzMzA1LW5vdGVzLWZhbm91dC5zaAppbmRleCA1NDQ2MGJlLi4zYjQ3NTNlIDEwMDc1NQotLS0gYS90L3QzMzA1LW5vdGVzLWZhbm91dC5zaAorKysgYi90L3QzMzA1LW5vdGVzLWZhbm91dC5zaApAQCAtNCw2ICs0LDM4IEBACiAKIC4gLi90ZXN0LWxpYi5zaAogCitwYXRoX2hhc19mYW5vdXQoKSB7CisJcGF0aD0kMSAmJgorCWZhbm91dD0kMiAmJgorCWFmdGVyX2xhc3Rfc2xhc2g9JCgoNDAgLSAkZmFub3V0ICogMikpICYmCisJZWNobyAkcGF0aCB8IGdyZXAgLXEgIl5cKFswLTlhLWZdXHsyXH0vXClceyRmYW5vdXRcfVswLTlhLWZdXHskYWZ0ZXJfbGFzdF9zbGFzaFx9JCIKK30KKwordG91Y2hlZF9vbmVfbm90ZV93aXRoX2Zhbm91dCgpIHsKKwlub3Rlc19jb21taXQ9JDEgJiYKKwltb2RpZmljYXRpb249JDIgJiYgICMgJ0EnIGZvciBhZGRpdGlvbiwgJ0QnIGZvciBkZWxldGlvbgorCWZhbm91dD0kMyAmJgorCWRpZmY9JChnaXQgZGlmZi10cmVlIC0tbm8tY29tbWl0LWlkIC0tbmFtZS1zdGF0dXMgLS1yb290IC1yICRub3Rlc19jb21taXQpICYmCisJcGF0aD0kKGVjaG8gJGRpZmYgfCBzZWQgLWUgInMvXiRtb2RpZmljYXRpb25bXHQgXS8vIikgJiYKKwlwYXRoX2hhc19mYW5vdXQgIiRwYXRoIiAkZmFub3V0OworfQorCithbGxfbm90ZXNfaGF2ZV9mYW5vdXQoKSB7CisJbm90ZXNfY29tbWl0PSQxICYmCisJZmFub3V0PSQyICYmCisJZ2l0IGxzLXRyZWUgLXIgLS1uYW1lLW9ubHkgJG5vdGVzX2NvbW1pdCAyPi9kZXYvbnVsbCB8CisJd2hpbGUgcmVhZCBwYXRoCisJZG8KKwkJcGF0aF9oYXNfZmFub3V0ICRwYXRoICRmYW5vdXQgfHwgcmV0dXJuIDEKKwlkb25lCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3R3ZWFrIHRlc3QgZW52aXJvbm1lbnQnICcKKwlnaXQgY2hlY2tvdXQgLWIgbm9uZGV0ZXJtaW5pc20gJiYKKwl0ZXN0X2NvbW1pdCBBICYmCisJZ2l0IGNoZWNrb3V0IC0tb3JwaGFuIHdpdGhfbm90ZXM7CisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NyZWF0aW5nIG1hbnkgbm90ZXMgd2l0aCBnaXQtbm90ZXMnICcKIAludW1fbm90ZXM9MzAwICYmCiAJaT0wICYmCkBAIC0yMCw3ICs1Miw3IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21hbnkgbm90ZXMgY3JlYXRlZCBjb3JyZWN0bHkgd2l0aCBnaXQtbm90ZXMnICcKIAlnaXQgbG9nIHwgZ3JlcCAiXiAgICAiID4gb3V0cHV0ICYmCi0JaT0zMDAgJiYKKwlpPSRudW1fbm90ZXMgJiYKIAl3aGlsZSB0ZXN0ICRpIC1ndCAwCiAJZG8KIAkJZWNobyAiICAgIGNvbW1pdCAjJGkiICYmCkBAIC0zMCwzOSArNjIsNDYgQEAKIAl0ZXN0X2NtcCBleHBlY3Qgb3V0cHV0CiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21hbnkgbm90ZXMgY3JlYXRlZCB3aXRoIGdpdC1ub3RlcyB0cmlnZ2VycyBmYW5vdXQnICcKLQkjIEV4cGVjdCBlbnRpcmUgbm90ZXMgdHJlZSB0byBoYXZlIGEgZmFub3V0ID09IDEKLQlnaXQgbHMtdHJlZSAtciAtLW5hbWUtb25seSByZWZzL25vdGVzL2NvbW1pdHMgfAotCXdoaWxlIHJlYWQgcGF0aAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3RhYmxlIGZhbm91dCAwIGlzIGZvbGxvd2VkIGJ5IHN0YWJsZSBmYW5vdXQgMScgJworCWk9JG51bV9ub3RlcyAmJgorCWZhbm91dD0wICYmCisJd2hpbGUgdGVzdCAkaSAtZ3QgMAogCWRvCi0JCWNhc2UgIiRwYXRoIiBpbgotCQk/Py8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/PykKLQkJCTogdHJ1ZQotCQkJOzsKLQkJKikKLQkJCWVjaG8gIkludmFsaWQgcGF0aCBcIiRwYXRoXCIiICYmCi0JCQlyZXR1cm4gMQotCQkJOzsKLQkJZXNhYwotCWRvbmUKKwkJaT0kKCgkaSAtIDEpKSAmJgorCQlpZiB0b3VjaGVkX29uZV9ub3RlX3dpdGhfZmFub3V0IHJlZnMvbm90ZXMvY29tbWl0c34kaSBBICRmYW5vdXQKKwkJdGhlbgorCQkJY29udGludWUKKwkJZWxpZiB0ZXN0ICRmYW5vdXQgLWVxIDAKKwkJdGhlbgorCQkJZmFub3V0PTEgJiYKKwkJCWlmIGFsbF9ub3Rlc19oYXZlX2Zhbm91dCByZWZzL25vdGVzL2NvbW1pdHN+JGkgJGZhbm91dAorCQkJdGhlbgorCQkJCWVjaG8gIkZhbm91dCAwIC0+IDEgYXQgcmVmcy9ub3Rlcy9jb21taXRzfiRpIiAmJgorCQkJCWNvbnRpbnVlCisJCQlmaQorCQlmaSAmJgorCQllY2hvICJGYWlsZWQgZmFub3V0PSRmYW5vdXQgY2hlY2sgYXQgcmVmcy9ub3Rlcy9jb21taXRzfiRpIiAmJgorCQlnaXQgbHMtdHJlZSAtciAtLW5hbWUtb25seSByZWZzL25vdGVzL2NvbW1pdHN+JGkgJiYKKwkJcmV0dXJuIDEKKwlkb25lICYmCisJYWxsX25vdGVzX2hhdmVfZmFub3V0IHJlZnMvbm90ZXMvY29tbWl0cyAxCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RlbGV0aW5nIG1vc3Qgbm90ZXMgd2l0aCBnaXQtbm90ZXMnICcKLQludW1fbm90ZXM9MjUwICYmCisJcmVtb3ZlX25vdGVzPTI4NSAmJgogCWk9MCAmJgogCWdpdCByZXYtbGlzdCBIRUFEIHwKLQl3aGlsZSB0ZXN0ICRpIC1sdCAkbnVtX25vdGVzICYmIHJlYWQgc2hhMQorCXdoaWxlIHRlc3QgJGkgLWx0ICRyZW1vdmVfbm90ZXMgJiYgcmVhZCBzaGExCiAJZG8KIAkJaT0kKCgkaSArIDEpKSAmJgogCQl0ZXN0X3RpY2sgJiYKLQkJZ2l0IG5vdGVzIHJlbW92ZSAiJHNoYTEiIHx8Ci0JCWV4aXQgMQorCQlnaXQgbm90ZXMgcmVtb3ZlICIkc2hhMSIgMj4vZGV2L251bGwgfHwgcmV0dXJuIDEKIAlkb25lCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vc3Qgbm90ZXMgZGVsZXRlZCBjb3JyZWN0bHkgd2l0aCBnaXQtbm90ZXMnICcKLQlnaXQgbG9nIEhFQUR+MjUwIHwgZ3JlcCAiXiAgICAiID4gb3V0cHV0ICYmCi0JaT01MCAmJgorCWdpdCBsb2cgSEVBRH4kcmVtb3ZlX25vdGVzIHwgZ3JlcCAiXiAgICAiID4gb3V0cHV0ICYmCisJaT0kKCgkbnVtX25vdGVzIC0gJHJlbW92ZV9ub3RlcykpICYmCiAJd2hpbGUgdGVzdCAkaSAtZ3QgMAogCWRvCiAJCWVjaG8gIiAgICBjb21taXQgIyRpIiAmJgpAQCAtNzIsMjEgKzExMSwyOSBAQAogCXRlc3RfY21wIGV4cGVjdCBvdXRwdXQKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGVsZXRpbmcgbW9zdCBub3RlcyB0cmlnZ2VycyBmYW5vdXQgY29uc29saWRhdGlvbicgJwotCSMgRXhwZWN0IGVudGlyZSBub3RlcyB0cmVlIHRvIGhhdmUgYSBmYW5vdXQgPT0gMAotCWdpdCBscy10cmVlIC1yIC0tbmFtZS1vbmx5IHJlZnMvbm90ZXMvY29tbWl0cyB8Ci0Jd2hpbGUgcmVhZCBwYXRoCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGFibGUgZmFub3V0IDEgaXMgZm9sbG93ZWQgYnkgc3RhYmxlIGZhbm91dCAwJyAnCisJaT0kcmVtb3ZlX25vdGVzICYmCisJZmFub3V0PTEgJiYKKwl3aGlsZSB0ZXN0ICRpIC1ndCAwCiAJZG8KLQkJY2FzZSAiJHBhdGgiIGluCi0JCT8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8pCi0JCQk6IHRydWUKLQkJCTs7Ci0JCSopCi0JCQllY2hvICJJbnZhbGlkIHBhdGggXCIkcGF0aFwiIiAmJgotCQkJcmV0dXJuIDEKLQkJCTs7Ci0JCWVzYWMKLQlkb25lCisJCWk9JCgoJGkgLSAxKSkgJiYKKwkJaWYgdG91Y2hlZF9vbmVfbm90ZV93aXRoX2Zhbm91dCByZWZzL25vdGVzL2NvbW1pdHN+JGkgRCAkZmFub3V0CisJCXRoZW4KKwkJCWNvbnRpbnVlCisJCWVsaWYgdGVzdCAkZmFub3V0IC1lcSAxCisJCXRoZW4KKwkJCWZhbm91dD0wICYmCisJCQlpZiBhbGxfbm90ZXNfaGF2ZV9mYW5vdXQgcmVmcy9ub3Rlcy9jb21taXRzfiRpICRmYW5vdXQKKwkJCXRoZW4KKwkJCQllY2hvICJGYW5vdXQgMSAtPiAwIGF0IHJlZnMvbm90ZXMvY29tbWl0c34kaSIgJiYKKwkJCQljb250aW51ZQorCQkJZmkKKwkJZmkgJiYKKwkJZWNobyAiRmFpbGVkIGZhbm91dD0kZmFub3V0IGNoZWNrIGF0IHJlZnMvbm90ZXMvY29tbWl0c34kaSIgJiYKKwkJZ2l0IGxzLXRyZWUgLXIgLS1uYW1lLW9ubHkgcmVmcy9ub3Rlcy9jb21taXRzfiRpICYmCisJCXJldHVybiAxCisJZG9uZSAmJgorCWFsbF9ub3Rlc19oYXZlX2Zhbm91dCByZWZzL25vdGVzL2NvbW1pdHMgMAogJwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDMzMDYtbm90ZXMtcHJ1bmUuc2ggYi90L3QzMzA2LW5vdGVzLXBydW5lLnNoCmluZGV4IDYxNzQ4MDguLjhmNDEwMmYgMTAwNzU1Ci0tLSBhL3QvdDMzMDYtbm90ZXMtcHJ1bmUuc2gKKysrIGIvdC90MzMwNi1ub3Rlcy1wcnVuZS5zaApAQCAtMTEsMjMgKzExLDI2IEBACiAJdGVzdF90aWNrICYmCiAJZ2l0IGNvbW1pdCAtbSAxc3QgJiYKIAlnaXQgbm90ZXMgYWRkIC1tICJOb3RlICMxIiAmJgorCWZpcnN0PSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCTogPiBmaWxlMiAmJgogCWdpdCBhZGQgZmlsZTIgJiYKIAl0ZXN0X3RpY2sgJiYKIAlnaXQgY29tbWl0IC1tIDJuZCAmJgogCWdpdCBub3RlcyBhZGQgLW0gIk5vdGUgIzIiICYmCisJc2Vjb25kPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCTogPiBmaWxlMyAmJgogCWdpdCBhZGQgZmlsZTMgJiYKIAl0ZXN0X3RpY2sgJiYKIAlnaXQgY29tbWl0IC1tIDNyZCAmJgotCUNPTU1JVF9GSUxFPS5naXQvb2JqZWN0cy81ZS9lMWMzNWU4M2VhNDdjZDNjYzRmOGNiZWUwNTY4OTE1ZmJiYmQyOSAmJgorCXRoaXJkPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCUNPTU1JVF9GSUxFPSQoZWNobyAkdGhpcmQgfCBzZWQgInMhXi4uIS5naXQvb2JqZWN0cy8mLyEiKSAmJgogCXRlc3QgLWYgJENPTU1JVF9GSUxFICYmCiAJdGVzdC10b29sIGNobXRpbWUgPSswICRDT01NSVRfRklMRSAmJgogCWdpdCBub3RlcyBhZGQgLW0gIk5vdGUgIzMiCiAnCiAKIGNhdCA+IGV4cGVjdCA8PEVORF9PRl9MT0cKLWNvbW1pdCA1ZWUxYzM1ZTgzZWE0N2NkM2NjNGY4Y2JlZTA1Njg5MTVmYmJiZDI5Citjb21taXQgJHRoaXJkCiBBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiBEYXRlOiAgIFRodSBBcHIgNyAxNToxNToxMyAyMDA1IC0wNzAwCiAKQEAgLTM2LDcgKzM5LDcgQEAKIE5vdGVzOgogICAgIE5vdGUgIzMKIAotY29tbWl0IDA4MzQxYWQ5ZTk0ZmFhMDg5ZDYwZmQzZjUyM2FmZmIyNWM2ZGExODkKK2NvbW1pdCAkc2Vjb25kCiBBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiBEYXRlOiAgIFRodSBBcHIgNyAxNToxNDoxMyAyMDA1IC0wNzAwCiAKQEAgLTQ1LDcgKzQ4LDcgQEAKIE5vdGVzOgogICAgIE5vdGUgIzIKIAotY29tbWl0IGFiNWYzMDIwMzVmMmU3YWFmMDQyNjVmMDhiNDIwMzRjMjMyNTZlMWYKK2NvbW1pdCAkZmlyc3QKIEF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIERhdGU6ICAgVGh1IEFwciA3IDE1OjEzOjEzIDIwMDUgLTA3MDAKIApAQCAtNzAsMTYgKzczLDE2IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ZlcmlmeSB0aGF0IGNvbW1pdHMgYXJlIGdvbmUnICcKIAotCXRlc3RfbXVzdF9mYWlsIGdpdCBjYXQtZmlsZSAtcCA1ZWUxYzM1ZTgzZWE0N2NkM2NjNGY4Y2JlZTA1Njg5MTVmYmJiZDI5ICYmCi0JZ2l0IGNhdC1maWxlIC1wIDA4MzQxYWQ5ZTk0ZmFhMDg5ZDYwZmQzZjUyM2FmZmIyNWM2ZGExODkgJiYKLQlnaXQgY2F0LWZpbGUgLXAgYWI1ZjMwMjAzNWYyZTdhYWYwNDI2NWYwOGI0MjAzNGMyMzI1NmUxZgorCXRlc3RfbXVzdF9mYWlsIGdpdCBjYXQtZmlsZSAtcCAkdGhpcmQgJiYKKwlnaXQgY2F0LWZpbGUgLXAgJHNlY29uZCAmJgorCWdpdCBjYXQtZmlsZSAtcCAkZmlyc3QKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IHRoYXQgbm90ZXMgYXJlIHN0aWxsIHByZXNlbnQnICcKIAotCWdpdCBub3RlcyBzaG93IDVlZTFjMzVlODNlYTQ3Y2QzY2M0ZjhjYmVlMDU2ODkxNWZiYmJkMjkgJiYKLQlnaXQgbm90ZXMgc2hvdyAwODM0MWFkOWU5NGZhYTA4OWQ2MGZkM2Y1MjNhZmZiMjVjNmRhMTg5ICYmCi0JZ2l0IG5vdGVzIHNob3cgYWI1ZjMwMjAzNWYyZTdhYWYwNDI2NWYwOGI0MjAzNGMyMzI1NmUxZgorCWdpdCBub3RlcyBzaG93ICR0aGlyZCAmJgorCWdpdCBub3RlcyBzaG93ICRzZWNvbmQgJiYKKwlnaXQgbm90ZXMgc2hvdyAkZmlyc3QKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncHJ1bmUgLW4gZG9lcyBub3QgcmVtb3ZlIG5vdGVzJyAnCkBAIC05MCwxMyArOTMsMTAgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKLWNhdCA+IGV4cGVjdCA8PEVPRgotNWVlMWMzNWU4M2VhNDdjZDNjYzRmOGNiZWUwNTY4OTE1ZmJiYmQyOQotRU9GCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BydW5lIC1uIGxpc3RzIHBydW5hYmxlIG5vdGVzJyAnCiAKLQorCWVjaG8gJHRoaXJkID5leHBlY3QgJiYKIAlnaXQgbm90ZXMgcHJ1bmUgLW4gPiBhY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC0xMDksOSArMTA5LDkgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IHRoYXQgbm90ZXMgYXJlIGdvbmUnICcKIAotCXRlc3RfbXVzdF9mYWlsIGdpdCBub3RlcyBzaG93IDVlZTFjMzVlODNlYTQ3Y2QzY2M0ZjhjYmVlMDU2ODkxNWZiYmJkMjkgJiYKLQlnaXQgbm90ZXMgc2hvdyAwODM0MWFkOWU5NGZhYTA4OWQ2MGZkM2Y1MjNhZmZiMjVjNmRhMTg5ICYmCi0JZ2l0IG5vdGVzIHNob3cgYWI1ZjMwMjAzNWYyZTdhYWYwNDI2NWYwOGI0MjAzNGMyMzI1NmUxZgorCXRlc3RfbXVzdF9mYWlsIGdpdCBub3RlcyBzaG93ICR0aGlyZCAmJgorCWdpdCBub3RlcyBzaG93ICRzZWNvbmQgJiYKKwlnaXQgbm90ZXMgc2hvdyAkZmlyc3QKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVtb3ZlIHNvbWUgY29tbWl0cycgJwpAQCAtMTIxLDIxICsxMjEsMTggQEAKIAlnaXQgZ2MgLS1wcnVuZT1ub3cKICcKIAotY2F0ID4gZXhwZWN0IDw8RU9GCi0wODM0MWFkOWU5NGZhYTA4OWQ2MGZkM2Y1MjNhZmZiMjVjNmRhMTg5Ci1FT0YKLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAncHJ1bmUgLXYgbm90ZXMnICcKIAorCWVjaG8gJHNlY29uZCA+ZXhwZWN0ICYmCiAJZ2l0IG5vdGVzIHBydW5lIC12ID4gYWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgdGhhdCBub3RlcyBhcmUgZ29uZScgJwogCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IG5vdGVzIHNob3cgNWVlMWMzNWU4M2VhNDdjZDNjYzRmOGNiZWUwNTY4OTE1ZmJiYmQyOSAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCBub3RlcyBzaG93IDA4MzQxYWQ5ZTk0ZmFhMDg5ZDYwZmQzZjUyM2FmZmIyNWM2ZGExODkgJiYKLQlnaXQgbm90ZXMgc2hvdyBhYjVmMzAyMDM1ZjJlN2FhZjA0MjY1ZjA4YjQyMDM0YzIzMjU2ZTFmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IG5vdGVzIHNob3cgJHRoaXJkICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IG5vdGVzIHNob3cgJHNlY29uZCAmJgorCWdpdCBub3RlcyBzaG93ICRmaXJzdAogJwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDMzMDgtbm90ZXMtbWVyZ2Uuc2ggYi90L3QzMzA4LW5vdGVzLW1lcmdlLnNoCmluZGV4IGQ2MDU4OGUuLjc5MGUyOTIgMTAwNzU1Ci0tLSBhL3QvdDMzMDgtbm90ZXMtbWVyZ2Uuc2gKKysrIGIvdC90MzMwOC1ub3Rlcy1tZXJnZS5zaApAQCAtMjAsNyArMjAsMzQgQEAKIAlnaXQgbm90ZXMgYWRkIC1tICJOb3RlcyBvbiAzcmQgY29tbWl0IiAzcmQgJiYKIAlnaXQgbm90ZXMgYWRkIC1tICJOb3RlcyBvbiA0dGggY29tbWl0IiA0dGggJiYKIAkjIENvcHkgbm90ZXMgdG8gcmVtb3RlLW5vdGVzCi0JZ2l0IGZldGNoIC4gcmVmcy9ub3Rlcy8qOnJlZnMvcmVtb3RlLW5vdGVzL29yaWdpbi8qCisJZ2l0IGZldGNoIC4gcmVmcy9ub3Rlcy8qOnJlZnMvcmVtb3RlLW5vdGVzL29yaWdpbi8qICYmCisKKwl0ZXN0X29pZF9pbml0ICYmCisJdGVzdF9vaWRfY2FjaGUgPDwtRU9GCisJaGFzaDRhIHNoYTE6NWU5M2QyNDA4NGQzMmUxY2I2MWY3MDcwNTA1YjlkMjUzMGNjYTk4NworCWhhc2gzYSBzaGExOjgzNjY3MzFlZWVlNTM3ODdkMmJkZjhmYzFlZmY3ZDk0NzU3ZThkYTAKKwloYXNoMmEgc2hhMTplZWRlODkwNjRjZDQyNDQxNTkwZDZhZmVjNmMzN2IzMjFhZGEzMzg5CisJaGFzaDFhIHNoYTE6ZGFhNTVmZmFkNmNiOTliZjY0MjI2NTMyMTQ3ZmZjYWY1Y2U4YmRkMQorCWhhc2g1YiBzaGExOjBmMmVmYmQwMDI2MmYyZmQ0MWRmYWUzM2RmODc2NTYxOGVlYWNkOTkKKwloYXNoNGIgc2hhMTpkZWMyNTAyZGFjM2VhMTYxNTQzZjcxOTMwMDQ0ZGVmZjkzZmE5NDVjCisJaGFzaDNiIHNoYTE6NDA2OWNkYjM5OWZkNDU0NjNlYzZlZWY4ZTA1MWExNmEwMzU5MmQ5MQorCWhhc2gyYyBzaGExOmQwMDBkMzBlNmRkY2ZjZTNhODEyMmM0MDMyMjZhMmNlMmZkMDRkOWQKKwloYXNoMWMgc2hhMTo0M2FkZDZiZDBjOGMwYmM4NzFhYzc5OTFlMGY1NTczY2ZiYTI3ODA0CisJaGFzaDRkIHNoYTE6MWYyNTdhM2E5MDMyODU1N2M0NTJmMDgxN2Q2Y2M1MGM4OWQzMTVkNAorCWhhc2gzZCBzaGExOjA1YTQ5Mjc5NTFiY2VmMzQ3ZjUxNDg2NTc1Yjg3OGIyYjYwMTM3ZjIKKworCWhhc2g0YSBzaGEyNTY6ZWVmODc2YmUxZDMyYWMyZTJlNDIyNDBlMDQyOTMyNWNlYzExNmU1NWU4OGNiMjk2OTg5OWZhYzY5NWFhNzYyZgorCWhhc2gzYSBzaGEyNTY6Y2Y3Y2QxYmMwOTFkN2JhNDE2NmE4NmRmODY0MTEwZTQyMDg3Y2Q4OTNhNWFlOTZiYzUwZDYzN2UwMjkwOTM5ZAorCWhhc2gyYSBzaGEyNTY6MjFkZGRlN2ViY2UyYzI4NTIxMzg5OGNiMDRkZWNhMGZkMzIwOTYxMGNmN2FhZjgyMjJlNGUyZjQ1MjYyZmFlMgorCWhhc2gxYSBzaGEyNTY6ZjlmZTBlZGExNmM2MDI3NzMyZWQ5ZDQyOTU2ODlhMDNhYmQxNmY4OTNiZTY5YjNkY2JmNDAzN2RkYjE5MTkyMQorCWhhc2g1YiBzaGEyNTY6MjAwNDZmMjI0NDU3Nzc5N2E5ZTNkM2Y3OTBlYTllY2E0ZDhhNmJhZmIyYTU1NzBiY2IwZTAzYWEwMmNlMTAwYgorCWhhc2g0YiBzaGEyNTY6ZjkwNTYzZDEzNGM2MWE5NWJiODhhZmJkNDVkNDhjY2M5ZTkxOWM2MmFhNmZiZmNkNDgzMzAyYjNlNGQ4ZGJjYgorCWhhc2gzYiBzaGEyNTY6OTg4ZjJhY2E5ZjJkODdlOTNlNmE3MzE5N2MyYmI5OTU2MGNjNDRhMmY5MmQxODY1Mzk2OGY5NTZmMDEyMjFlMAorCWhhc2gyYyBzaGEyNTY6ODQxNTNiNzc3YjRkNDI4MjdhNzU2YzY1NzhkY2RiNTlkOGFlNWQxMzYwYjg3NGZiMzdjNDMwMTUwYzgyNWMyNgorCWhhc2gxYyBzaGEyNTY6OWJlYjJiYzRlZWY3MmU0YzQwODdiZTE2OGEyMDU3M2UzNGQ5OTNkOWFiMTg4MzA1NWYyM2UzMjJhZmEwNjU2NworCWhhc2g0ZCBzaGEyNTY6MzJkZTM5ZGMwNmU2NzlhN2FiYjJkNGE1NWVkZTc3MDliMzEyNDM0MGE0YTkwYWEzMDU5NzFiMWM3MmFjMzE5ZAorCWhhc2gzZCBzaGEyNTY6ZmE3M2IyMGU0MWNiYjc1NDFjNGM4MWQxNTM1MDE2MTMxZGJmYmViMDViZjZhNzFmNjExNWU5Y2FkMzFjN2FmNQorCUVPRgogJwogCiBjb21taXRfc2hhMT0kKGdpdCByZXYtcGFyc2UgMXN0Xntjb21taXR9KQpAQCAtNDAsMTAgKzY3LDEwIEBACiB9CiAKIGNhdCA8PEVPRiB8IHNvcnQgPmV4cGVjdF9ub3Rlc194Ci01ZTkzZDI0MDg0ZDMyZTFjYjYxZjcwNzA1MDViOWQyNTMwY2NhOTg3ICRjb21taXRfc2hhNAotODM2NjczMWVlZWU1Mzc4N2QyYmRmOGZjMWVmZjdkOTQ3NTdlOGRhMCAkY29tbWl0X3NoYTMKLWVlZGU4OTA2NGNkNDI0NDE1OTBkNmFmZWM2YzM3YjMyMWFkYTMzODkgJGNvbW1pdF9zaGEyCi1kYWE1NWZmYWQ2Y2I5OWJmNjQyMjY1MzIxNDdmZmNhZjVjZThiZGQxICRjb21taXRfc2hhMQorJCh0ZXN0X29pZCBoYXNoNGEpICRjb21taXRfc2hhNAorJCh0ZXN0X29pZCBoYXNoM2EpICRjb21taXRfc2hhMworJCh0ZXN0X29pZCBoYXNoMmEpICRjb21taXRfc2hhMgorJCh0ZXN0X29pZCBoYXNoMWEpICRjb21taXRfc2hhMQogRU9GCiAKIGNhdCA+ZXhwZWN0X2xvZ194IDw8RU9GCkBAIC0xMjYsMTAgKzE1MywxMCBAQAogJwogCiBjYXQgPDxFT0YgfCBzb3J0ID5leHBlY3Rfbm90ZXNfeQotMGYyZWZiZDAwMjYyZjJmZDQxZGZhZTMzZGY4NzY1NjE4ZWVhY2Q5OSAkY29tbWl0X3NoYTUKLWRlYzI1MDJkYWMzZWExNjE1NDNmNzE5MzAwNDRkZWZmOTNmYTk0NWMgJGNvbW1pdF9zaGE0Ci00MDY5Y2RiMzk5ZmQ0NTQ2M2VjNmVlZjhlMDUxYTE2YTAzNTkyZDkxICRjb21taXRfc2hhMwotZGFhNTVmZmFkNmNiOTliZjY0MjI2NTMyMTQ3ZmZjYWY1Y2U4YmRkMSAkY29tbWl0X3NoYTEKKyQodGVzdF9vaWQgaGFzaDViKSAkY29tbWl0X3NoYTUKKyQodGVzdF9vaWQgaGFzaDRiKSAkY29tbWl0X3NoYTQKKyQodGVzdF9vaWQgaGFzaDNiKSAkY29tbWl0X3NoYTMKKyQodGVzdF9vaWQgaGFzaDFhKSAkY29tbWl0X3NoYTEKIEVPRgogCiBjYXQgPmV4cGVjdF9sb2dfeSA8PEVPRgpAQCAtMTkzLDExICsyMjAsMTEgQEAKICcKIAogY2F0IDw8RU9GIHwgc29ydCA+ZXhwZWN0X25vdGVzX3kKLTBmMmVmYmQwMDI2MmYyZmQ0MWRmYWUzM2RmODc2NTYxOGVlYWNkOTkgJGNvbW1pdF9zaGE1Ci1kZWMyNTAyZGFjM2VhMTYxNTQzZjcxOTMwMDQ0ZGVmZjkzZmE5NDVjICRjb21taXRfc2hhNAotNDA2OWNkYjM5OWZkNDU0NjNlYzZlZWY4ZTA1MWExNmEwMzU5MmQ5MSAkY29tbWl0X3NoYTMKLWQwMDBkMzBlNmRkY2ZjZTNhODEyMmM0MDMyMjZhMmNlMmZkMDRkOWQgJGNvbW1pdF9zaGEyCi00M2FkZDZiZDBjOGMwYmM4NzFhYzc5OTFlMGY1NTczY2ZiYTI3ODA0ICRjb21taXRfc2hhMQorJCh0ZXN0X29pZCBoYXNoNWIpICRjb21taXRfc2hhNQorJCh0ZXN0X29pZCBoYXNoNGIpICRjb21taXRfc2hhNAorJCh0ZXN0X29pZCBoYXNoM2IpICRjb21taXRfc2hhMworJCh0ZXN0X29pZCBoYXNoMmMpICRjb21taXRfc2hhMgorJCh0ZXN0X29pZCBoYXNoMWMpICRjb21taXRfc2hhMQogRU9GCiAKIGNhdCA+ZXhwZWN0X2xvZ195IDw8RU9GCkBAIC0yMzEsOSArMjU4LDkgQEAKICcKIAogY2F0IDw8RU9GIHwgc29ydCA+ZXhwZWN0X25vdGVzX3gKLTBmMmVmYmQwMDI2MmYyZmQ0MWRmYWUzM2RmODc2NTYxOGVlYWNkOTkgJGNvbW1pdF9zaGE1Ci0xZjI1N2EzYTkwMzI4NTU3YzQ1MmYwODE3ZDZjYzUwYzg5ZDMxNWQ0ICRjb21taXRfc2hhNAotZGFhNTVmZmFkNmNiOTliZjY0MjI2NTMyMTQ3ZmZjYWY1Y2U4YmRkMSAkY29tbWl0X3NoYTEKKyQodGVzdF9vaWQgaGFzaDViKSAkY29tbWl0X3NoYTUKKyQodGVzdF9vaWQgaGFzaDRkKSAkY29tbWl0X3NoYTQKKyQodGVzdF9vaWQgaGFzaDFhKSAkY29tbWl0X3NoYTEKIEVPRgogCiBjYXQgPmV4cGVjdF9sb2dfeCA8PEVPRgpAQCAtMjYyLDEwICsyODksMTAgQEAKICcKIAogY2F0IDw8RU9GIHwgc29ydCA+ZXhwZWN0X25vdGVzX3gKLTBmMmVmYmQwMDI2MmYyZmQ0MWRmYWUzM2RmODc2NTYxOGVlYWNkOTkgJGNvbW1pdF9zaGE1Ci0xZjI1N2EzYTkwMzI4NTU3YzQ1MmYwODE3ZDZjYzUwYzg5ZDMxNWQ0ICRjb21taXRfc2hhNAotZDAwMGQzMGU2ZGRjZmNlM2E4MTIyYzQwMzIyNmEyY2UyZmQwNGQ5ZCAkY29tbWl0X3NoYTIKLTQzYWRkNmJkMGM4YzBiYzg3MWFjNzk5MWUwZjU1NzNjZmJhMjc4MDQgJGNvbW1pdF9zaGExCiskKHRlc3Rfb2lkIGhhc2g1YikgJGNvbW1pdF9zaGE1CiskKHRlc3Rfb2lkIGhhc2g0ZCkgJGNvbW1pdF9zaGE0CiskKHRlc3Rfb2lkIGhhc2gyYykgJGNvbW1pdF9zaGEyCiskKHRlc3Rfb2lkIGhhc2gxYykgJGNvbW1pdF9zaGExCiBFT0YKIAogY2F0ID5leHBlY3RfbG9nX3ggPDxFT0YKQEAgLTI5Niw4ICszMjMsOCBAQAogJwogCiBjYXQgPDxFT0YgfCBzb3J0ID5leHBlY3Rfbm90ZXNfdwotMDVhNDkyNzk1MWJjZWYzNDdmNTE0ODY1NzViODc4YjJiNjAxMzdmMiAkY29tbWl0X3NoYTMKLWQwMDBkMzBlNmRkY2ZjZTNhODEyMmM0MDMyMjZhMmNlMmZkMDRkOWQgJGNvbW1pdF9zaGEyCiskKHRlc3Rfb2lkIGhhc2gzZCkgJGNvbW1pdF9zaGEzCiskKHRlc3Rfb2lkIGhhc2gyYykgJGNvbW1pdF9zaGEyCiBFT0YKIAogY2F0ID5leHBlY3RfbG9nX3cgPDxFT0YKQEAgLTMyNiwxMSArMzUzLDExIEBACiAnCiAKIGNhdCA8PEVPRiB8IHNvcnQgPmV4cGVjdF9ub3Rlc194Ci0wZjJlZmJkMDAyNjJmMmZkNDFkZmFlMzNkZjg3NjU2MThlZWFjZDk5ICRjb21taXRfc2hhNQotMWYyNTdhM2E5MDMyODU1N2M0NTJmMDgxN2Q2Y2M1MGM4OWQzMTVkNCAkY29tbWl0X3NoYTQKLTA1YTQ5Mjc5NTFiY2VmMzQ3ZjUxNDg2NTc1Yjg3OGIyYjYwMTM3ZjIgJGNvbW1pdF9zaGEzCi1kMDAwZDMwZTZkZGNmY2UzYTgxMjJjNDAzMjI2YTJjZTJmZDA0ZDlkICRjb21taXRfc2hhMgotNDNhZGQ2YmQwYzhjMGJjODcxYWM3OTkxZTBmNTU3M2NmYmEyNzgwNCAkY29tbWl0X3NoYTEKKyQodGVzdF9vaWQgaGFzaDViKSAkY29tbWl0X3NoYTUKKyQodGVzdF9vaWQgaGFzaDRkKSAkY29tbWl0X3NoYTQKKyQodGVzdF9vaWQgaGFzaDNkKSAkY29tbWl0X3NoYTMKKyQodGVzdF9vaWQgaGFzaDJjKSAkY29tbWl0X3NoYTIKKyQodGVzdF9vaWQgaGFzaDFjKSAkY29tbWl0X3NoYTEKIEVPRgogCiBjYXQgPmV4cGVjdF9sb2dfeCA8PEVPRgpkaWZmIC0tZ2l0IGEvdC90MzMwOS1ub3Rlcy1tZXJnZS1hdXRvLXJlc29sdmUuc2ggYi90L3QzMzA5LW5vdGVzLW1lcmdlLWF1dG8tcmVzb2x2ZS5zaAppbmRleCAxNGMyYWRmLi4xNDFkM2U0IDEwMDc1NQotLS0gYS90L3QzMzA5LW5vdGVzLW1lcmdlLWF1dG8tcmVzb2x2ZS5zaAorKysgYi90L3QzMzA5LW5vdGVzLW1lcmdlLWF1dG8tcmVzb2x2ZS5zaApAQCAtMjMsNyArMjMsNjcgQEAKIAl0ZXN0X2NvbW1pdCAxMnRoICYmCiAJdGVzdF9jb21taXQgMTN0aCAmJgogCXRlc3RfY29tbWl0IDE0dGggJiYKLQl0ZXN0X2NvbW1pdCAxNXRoCisJdGVzdF9jb21taXQgMTV0aCAmJgorCisJdGVzdF9vaWRfY2FjaGUgPDwtRU9GCisJaGFzaDE1YSBzaGExOjQ1N2E4NWQ2YzgxNGVhMjA4NTUwZjE1ZmNjNDhmODA0YWM4ZGMwMjMKKwloYXNoMTRhIHNoYTE6YjBjOTViOTU0MzAxZDY5ZGEyYmMzNzIzZjRjYjE2ODBkMzU1OTM3YworCWhhc2gxM2Egc2hhMTo1ZDMwMjE2YTEyOWVlZmZhOTdkOTY5NGZmZThjNzQzMTdhNTYwMzE1CisJaGFzaDEyYSBzaGExOmRkMTYxYmMxNDk0NzBmZDg5MGRkNGFiNTJhNGNiZDc5YmJkMThjMzYKKwloYXNoMTFhIHNoYTE6N2FiYmM0NTEyNmQ2ODAzMzZmYjI0Mjk0ZjAxM2E3Y2RmYTNlZDU0NQorCWhhc2gxMGEgc2hhMTpiOGQwM2UxNzNmNjdmNjUwNWE3NmY2ZTAwY2Y5MzQ0MDIwMGRkOWJlCisJaGFzaDA5YSBzaGExOjIwYzYxM2M4MzUwMTFjNDhhNWFiZTI5MTcwYTI0MDJjYTYzNTQ5MTAKKwloYXNoMDhhIHNoYTE6YTNkYWY4YTFlNGU1ZGMzNDA5YTMwM2FkODQ4MWQ1N2JmZWE3ZjVkNgorCWhhc2gwN2Egc2hhMTo4OTcwMDMzMjJiNTNiYzZjYTA5OGU5MzI0ZWU1MDgzNjIzNDdlNzM0CisJaGFzaDA2YSBzaGExOjExZDk3ZmRlYmZhNWNlZWU1NDBhM2RhMDdiY2U2ZmEwMjIyYmMwODIKKwloYXNoMTViIHNoYTE6NjhiODYzMGQyNTUxNjAyOGJlZDg2MjcxOTg1NWIzZDY3NjhkNzgzMworCWhhc2gxNGIgc2hhMTo1ZGU3ZWE3YWQ0ZjQ3ZTdmZjkxOTg5ZmI4MjIzNDYzNDczMGY3NWRmCisJaGFzaDEzYiBzaGExOjNhNjMxZmRiNmY0MWIwNWI1NWQ4ZjRiYWYyMDcyOGJhOGY2ZmNjYmMKKwloYXNoMTJiIHNoYTE6YTY2MDU1ZmE4MmY3YTAzZmUwYzAyYTZhYmEzMjg3YTg1YWJmN2M2MgorCWhhc2gwNWIgc2hhMToxNTQ1MDhjN2EwYmNhZDgyYjZmZTRiNDcyYmM0YzI2YjNiZjA4MjViCisJaGFzaDA0YiBzaGExOmUyYmZkMDZhMzdkZDIwMzE2ODRhNTlhNmUyYjAzM2UyMTIyMzljNzgKKwloYXNoMDNiIHNoYTE6NTc3MmY0MjQwOGMwZGQ2ZjA5N2E3Y2EyZDI0ZGUwZTc4ZDFjNDZiMQorCWhhc2gxNWMgc2hhMTo5YjRiMmM2MWYwNjE1NDEyZGEzYzEwZjk4ZmY4NWI1N2MwNGVjNzY1CisJaGFzaDExYyBzaGExOjdlM2M1MzUwM2EzZGI4ZGQ5OTZjYjYyZTM3YzY2ZTA3MGI0NGI1NGQKKwloYXNoMDhjIHNoYTE6ODUxZTE2Mzg3ODRhODg0YzdkZDI2YzVkNDFmMzM0MGY2Mzg3NDEzYQorCWhhc2gwNWMgc2hhMTo5OWZjMzRhZGZjNDAwYjk1YzY3YjAxMzExNWUzN2UzMWFhOWE2ZDIzCisJaGFzaDAyYyBzaGExOjI4M2I0ODIxOWFlZTlhNDEwNWY2Y2FiMzM3ZTc4OTA2NWM4MmMyYjkKKwloYXNoMTVkIHNoYTE6N2M0ZTU0NmVmZDBmZTkzOWY4NzZiZWIyNjJlY2UwMjc5Nzg4MGI1NAorCWhhc2gwNWQgc2hhMTo2Yzg0MWNjMzZlYTQ5NjAyNzI5MDk2N2NhOTZiZDJiZWY1NGRiYjQ3CisJaGFzaDE1ZSBzaGExOmQ2ODIxMDdiOGJmN2E3YWVhMWU1MzdhOGQ1Y2I2YTEyYjYwMTM1ZjEKKwloYXNoMDVlIHNoYTE6MzU3YjZjYTE0YzdhZmQ1OWI3ZjhiOGFhYWE2YjhiNzIzNzcxMTM1YgorCWhhc2gxNWYgc2hhMTo2YmU5MDI0MGI1ZjU0NTk0MjAzZTI1ZDlmMmY2NGI3NTY3MTc1YWVlCisJaGFzaDA1ZiBzaGExOjY2MDMxMWQ3Zjc4ZGM1M2RiMTJhYzM3M2E0M2ZjYTc0NjUzODFhN2UKKworCWhhc2gxNWEgc2hhMjU2OjQ1YjE1NThlNWMxYjc1ZjU3MDAxMGZhNDhhYWE2N2JiMjI4OWZjZDQzMWIzNGFkODFjYjRjOGI5NWY0Zjg3MmEKKwloYXNoMTRhIHNoYTI1Njo2ZTdhZjE3OWVhNGRkMjhhZmRjODNhZTY5MTJiYTAwOThjZGVmZjc2NGIyNmE4Yjc1MGIxNTdkZDgxNzQ5MDkyCisJaGFzaDEzYSBzaGEyNTY6NzM1MzA4OTk2MWJhZjU1NTM4OGUxYmFjNjhjNjdjOGVhOTRiMDhjY2JkOTc1MzIyMDFjZjdmNjc5MDcwMzA1MgorCWhhc2gxMmEgc2hhMjU2OjU4NjNlNDUyMTY4OWVlMTg3OWNlYWIzYjM4ZDM5ZTkzYWI1YjUxZWM3MGFhZjZhOTZhZDM4OGZiZGVkZmEyNWUKKwloYXNoMTFhIHNoYTI1Njo4MmEwZWMwMzM4YjRlY2Y4YjQ0MzA0YmFkZjRhZDM4ZDc0NjlkYzQxODI3ZjM4ZDdiYTZjNDJlM2JhZTNlZTk4CisJaGFzaDEwYSBzaGEyNTY6ZTg0ZjI1NjRlOTJkZTk3OTJjOTNiOGQxOTcyNjJjNzM1ZDdjY2IxZGU2MDI1Y2VmODc1OWFmOGY2YzMzMDhlYgorCWhhc2gwOWEgc2hhMjU2OjRkZDA3NzY0YmNlYzY5NmYxOTVjMGVhNzFhZTg5ZTE3NDg3NjQwM2FmMTYzN2U0NjQyYjhmNDQ1M2ZkMjMwMjgKKwloYXNoMDhhIHNoYTI1NjowMjEzMmM0NTQ2Y2Q4OGExZDBhYTU4NTRkZDU1ZGExMjA5MjdmNzkwNGJhMTZhZmUzNmZlMDNlOTFhNjIyMDY3CisJaGFzaDA3YSBzaGEyNTY6MzY5YmFmN2QwMGM2NzIwZWZkYzEwMjczNDkzNTU1Zjk0MzA1MWY4NGE0NzA2ZmIyNGNhZWIzNTNmYTQ3ODlkYgorCWhhc2gwNmEgc2hhMjU2OjUyZDMyYzEwMzUzNTgzYjJkOTZhNTg0OWIxZjFmNDNjODAxOGU3NmYzZThlZjFiMGQ0NmViNWNmZjdjZGVmYWYKKwloYXNoMTViIHNoYTI1NjozNDVlNjY2MGIzNDVmYTE3NDczOGEzMWE3YTU5NDIzYzM5NGJkZjQxNDgwNGUyMDBiYzUxMGM2NWQ5NzFhZTk2CisJaGFzaDE0YiBzaGEyNTY6NzY1M2E2NTk2MDIxYzUyZTQwNWNiYTk3OWVlYTE1YTcyOTk5M2U3MTAyYjlhNjFiYTQ2NjdlMzRmMGVhZDRhMQorCWhhc2gxM2Igc2hhMjU2OjBmMjAyYTBiNmI5NjkwZGUyMzQ5YzE3M2RmZDc2NmEzN2U4Mjc0NGY2MWMxNGYxYzM4OTMwNmYxZDY5ZjQ3MGIKKwloYXNoMTJiIHNoYTI1NjplYjAwZjIxOWMwMjYxMzZlYTY1MzViMTZmZjhlYzNlZmE1MTBlNmJmNTAwOThjYTA0MWUxYTJhMWQ0Yjc5ODQwCisJaGFzaDA1YiBzaGEyNTY6OTkzYjIyOTBjZDBjMjRjMjdjODQ5ZDk5ZjE5MDRmM2I1OTBmNzdhZjBmNTM5OTMyNzM0YWQwNTY3OWFjNWEyZgorCWhhc2gwNGIgc2hhMjU2OmM3ZmJhMGQ2MTA0OTE3ZmJmMzUyNThmNDBiOWZhNGZjNjk3Y2ZhOTkyZGVlY2QxNTcwYTNiMDhkMGE1NTg3YTkKKwloYXNoMDNiIHNoYTI1Njo3Mjg3YTJkNzhhMzc2NmMxODFiMDhkZjM4OTUxZDc4NGIwOGI3MmE0NGY1NzFlZDZkODU1YmQwYmUyMmM3MGY2CisJaGFzaDE1YyBzaGEyNTY6NjIzMTY2NjBhMjJiZjk3ODU3ZGM0YTE2NzA5ZWM0ZDkzYTIyNGU4YzlmMzdkNjYxZWY5MTc1MWUxZjRjNDE2NgorCWhhc2gxMWMgc2hhMjU2OjUxYzM3NjNkZTliMDgzMDkzNzBhZGM1MDM2ZDU4ZGViYjMzMTk4MGU3MzA5NzkwMjk1N2M0NDQ2MDI1NTFkYWEKKwloYXNoMDhjIHNoYTI1NjoyMmNmMWZhMjk1OTk4OThhNzIxOGM1MTEzNWQ2NmVkODVkMjJhYWQ1ODRmNzdkYjMzMDVkZWRjZTRjM2Q0Nzk4CisJaGFzaDA1YyBzaGEyNTY6MjUwOGZkODZkYjk4MGYwNTA4ODkzYTFjMTU3MWJkZjNiMmVlMTEzZGMyNWRkYjFhM2EyZmI5NGJkNmNkMGQ1OAorCWhhc2gwMmMgc2hhMjU2OjYzYmI1MjdlMGI0ZTFjOGUxZGQwZDU0ZGQ3NzhjYTdjMzcxODY4OWZkNmUzN2M0NzMwNDRjZmJjZjFjYWNmZGIKKwloYXNoMTVkIHNoYTI1Njo2NjdhY2I0ZTJkNWY4ZGYxNWU1YWVhNDUwNmRmZDE2ZDI1YmM3ZmVjYTcwZmRiMGQ5NjVhNzIyMmY5ODNiYjg4CisJaGFzaDA1ZCBzaGEyNTY6MDllNmI1YTZmZTY2NmM0YTAyNzY3NGI2NjExYTI1NGI3ZDI1MjhjZDIxMWM2YjUyODhkMWI0ZGI2Yzc0MWRmYQorCWhhc2gxNWUgc2hhMjU2OmU4Y2JmNTJmNmZjYWRjNmRlM2M3NzYxZTY0YTg5ZTlmZTM4ZDE5YTAzZDNlMjhlZjZjYTg1OTZkOTNmYzRmM2EKKwloYXNoMDVlIHNoYTI1NjpjZGIxZTE5ZjdiYTE1MzlmOTVhZjUxYTU3ZWRlYjg4YTdlY2M5N2QzYzJmNTJkYThjNGM4NmFmMzA4NTk1NjA3CisJaGFzaDE1ZiBzaGEyNTY6MjljMTRjYjkyZGE0NDhhOTIzOTYzYjhhNDM5OTQyNjhiMTljMmU1NzkxM2RlNzNmMzY2NzQyMWZkMmMwZWVlYworCWhhc2gwNWYgc2hhMjU2OjE0YTZlNjQxYjJjMGE5ZjM5OGViYWM2YjRkMzRhZmE1ZWZlYTRjNTJkMjYzMTM4MmY0NWY4ZjY2MjI2NjkwM2IKKwlFT0YKICcKIAogY29tbWl0X3NoYTE9JChnaXQgcmV2LXBhcnNlIDFzdF57Y29tbWl0fSkKQEAgLTY4LDE2ICsxMjgsMTYgQEAKICcKIAogY2F0IDw8RU9GIHwgc29ydCA+ZXhwZWN0X25vdGVzX3gKLTQ1N2E4NWQ2YzgxNGVhMjA4NTUwZjE1ZmNjNDhmODA0YWM4ZGMwMjMgJGNvbW1pdF9zaGExNQotYjBjOTViOTU0MzAxZDY5ZGEyYmMzNzIzZjRjYjE2ODBkMzU1OTM3YyAkY29tbWl0X3NoYTE0Ci01ZDMwMjE2YTEyOWVlZmZhOTdkOTY5NGZmZThjNzQzMTdhNTYwMzE1ICRjb21taXRfc2hhMTMKLWRkMTYxYmMxNDk0NzBmZDg5MGRkNGFiNTJhNGNiZDc5YmJkMThjMzYgJGNvbW1pdF9zaGExMgotN2FiYmM0NTEyNmQ2ODAzMzZmYjI0Mjk0ZjAxM2E3Y2RmYTNlZDU0NSAkY29tbWl0X3NoYTExCi1iOGQwM2UxNzNmNjdmNjUwNWE3NmY2ZTAwY2Y5MzQ0MDIwMGRkOWJlICRjb21taXRfc2hhMTAKLTIwYzYxM2M4MzUwMTFjNDhhNWFiZTI5MTcwYTI0MDJjYTYzNTQ5MTAgJGNvbW1pdF9zaGE5Ci1hM2RhZjhhMWU0ZTVkYzM0MDlhMzAzYWQ4NDgxZDU3YmZlYTdmNWQ2ICRjb21taXRfc2hhOAotODk3MDAzMzIyYjUzYmM2Y2EwOThlOTMyNGVlNTA4MzYyMzQ3ZTczNCAkY29tbWl0X3NoYTcKLTExZDk3ZmRlYmZhNWNlZWU1NDBhM2RhMDdiY2U2ZmEwMjIyYmMwODIgJGNvbW1pdF9zaGE2CiskKHRlc3Rfb2lkIGhhc2gxNWEpICRjb21taXRfc2hhMTUKKyQodGVzdF9vaWQgaGFzaDE0YSkgJGNvbW1pdF9zaGExNAorJCh0ZXN0X29pZCBoYXNoMTNhKSAkY29tbWl0X3NoYTEzCiskKHRlc3Rfb2lkIGhhc2gxMmEpICRjb21taXRfc2hhMTIKKyQodGVzdF9vaWQgaGFzaDExYSkgJGNvbW1pdF9zaGExMQorJCh0ZXN0X29pZCBoYXNoMTBhKSAkY29tbWl0X3NoYTEwCiskKHRlc3Rfb2lkIGhhc2gwOWEpICRjb21taXRfc2hhOQorJCh0ZXN0X29pZCBoYXNoMDhhKSAkY29tbWl0X3NoYTgKKyQodGVzdF9vaWQgaGFzaDA3YSkgJGNvbW1pdF9zaGE3CiskKHRlc3Rfb2lkIGhhc2gwNmEpICRjb21taXRfc2hhNgogRU9GCiAKIGNhdCA+ZXhwZWN0X2xvZ194IDw8RU9GCkBAIC0xNDEsMTYgKzIwMSwxNiBAQAogJwogCiBjYXQgPDxFT0YgfCBzb3J0ID5leHBlY3Rfbm90ZXNfeQotNjhiODYzMGQyNTUxNjAyOGJlZDg2MjcxOTg1NWIzZDY3NjhkNzgzMyAkY29tbWl0X3NoYTE1Ci01ZGU3ZWE3YWQ0ZjQ3ZTdmZjkxOTg5ZmI4MjIzNDYzNDczMGY3NWRmICRjb21taXRfc2hhMTQKLTNhNjMxZmRiNmY0MWIwNWI1NWQ4ZjRiYWYyMDcyOGJhOGY2ZmNjYmMgJGNvbW1pdF9zaGExMwotYTY2MDU1ZmE4MmY3YTAzZmUwYzAyYTZhYmEzMjg3YTg1YWJmN2M2MiAkY29tbWl0X3NoYTEyCi03YWJiYzQ1MTI2ZDY4MDMzNmZiMjQyOTRmMDEzYTdjZGZhM2VkNTQ1ICRjb21taXRfc2hhMTEKLWI4ZDAzZTE3M2Y2N2Y2NTA1YTc2ZjZlMDBjZjkzNDQwMjAwZGQ5YmUgJGNvbW1pdF9zaGExMAotMjBjNjEzYzgzNTAxMWM0OGE1YWJlMjkxNzBhMjQwMmNhNjM1NDkxMCAkY29tbWl0X3NoYTkKLTE1NDUwOGM3YTBiY2FkODJiNmZlNGI0NzJiYzRjMjZiM2JmMDgyNWIgJGNvbW1pdF9zaGE1Ci1lMmJmZDA2YTM3ZGQyMDMxNjg0YTU5YTZlMmIwMzNlMjEyMjM5Yzc4ICRjb21taXRfc2hhNAotNTc3MmY0MjQwOGMwZGQ2ZjA5N2E3Y2EyZDI0ZGUwZTc4ZDFjNDZiMSAkY29tbWl0X3NoYTMKKyQodGVzdF9vaWQgaGFzaDE1YikgJGNvbW1pdF9zaGExNQorJCh0ZXN0X29pZCBoYXNoMTRiKSAkY29tbWl0X3NoYTE0CiskKHRlc3Rfb2lkIGhhc2gxM2IpICRjb21taXRfc2hhMTMKKyQodGVzdF9vaWQgaGFzaDEyYikgJGNvbW1pdF9zaGExMgorJCh0ZXN0X29pZCBoYXNoMTFhKSAkY29tbWl0X3NoYTExCiskKHRlc3Rfb2lkIGhhc2gxMGEpICRjb21taXRfc2hhMTAKKyQodGVzdF9vaWQgaGFzaDA5YSkgJGNvbW1pdF9zaGE5CiskKHRlc3Rfb2lkIGhhc2gwNWIpICRjb21taXRfc2hhNQorJCh0ZXN0X29pZCBoYXNoMDRiKSAkY29tbWl0X3NoYTQKKyQodGVzdF9vaWQgaGFzaDAzYikgJGNvbW1pdF9zaGEzCiBFT0YKIAogY2F0ID5leHBlY3RfbG9nX3kgPDxFT0YKQEAgLTIxNCwxNiArMjc0LDE2IEBACiAnCiAKIGNhdCA8PEVPRiB8IHNvcnQgPmV4cGVjdF9ub3Rlc196Ci05YjRiMmM2MWYwNjE1NDEyZGEzYzEwZjk4ZmY4NWI1N2MwNGVjNzY1ICRjb21taXRfc2hhMTUKLTVkZTdlYTdhZDRmNDdlN2ZmOTE5ODlmYjgyMjM0NjM0NzMwZjc1ZGYgJGNvbW1pdF9zaGExNAotNWQzMDIxNmExMjllZWZmYTk3ZDk2OTRmZmU4Yzc0MzE3YTU2MDMxNSAkY29tbWl0X3NoYTEzCi03ZTNjNTM1MDNhM2RiOGRkOTk2Y2I2MmUzN2M2NmUwNzBiNDRiNTRkICRjb21taXRfc2hhMTEKLWI4ZDAzZTE3M2Y2N2Y2NTA1YTc2ZjZlMDBjZjkzNDQwMjAwZGQ5YmUgJGNvbW1pdF9zaGExMAotODUxZTE2Mzg3ODRhODg0YzdkZDI2YzVkNDFmMzM0MGY2Mzg3NDEzYSAkY29tbWl0X3NoYTgKLTg5NzAwMzMyMmI1M2JjNmNhMDk4ZTkzMjRlZTUwODM2MjM0N2U3MzQgJGNvbW1pdF9zaGE3Ci05OWZjMzRhZGZjNDAwYjk1YzY3YjAxMzExNWUzN2UzMWFhOWE2ZDIzICRjb21taXRfc2hhNQotZTJiZmQwNmEzN2RkMjAzMTY4NGE1OWE2ZTJiMDMzZTIxMjIzOWM3OCAkY29tbWl0X3NoYTQKLTI4M2I0ODIxOWFlZTlhNDEwNWY2Y2FiMzM3ZTc4OTA2NWM4MmMyYjkgJGNvbW1pdF9zaGEyCiskKHRlc3Rfb2lkIGhhc2gxNWMpICRjb21taXRfc2hhMTUKKyQodGVzdF9vaWQgaGFzaDE0YikgJGNvbW1pdF9zaGExNAorJCh0ZXN0X29pZCBoYXNoMTNhKSAkY29tbWl0X3NoYTEzCiskKHRlc3Rfb2lkIGhhc2gxMWMpICRjb21taXRfc2hhMTEKKyQodGVzdF9vaWQgaGFzaDEwYSkgJGNvbW1pdF9zaGExMAorJCh0ZXN0X29pZCBoYXNoMDhjKSAkY29tbWl0X3NoYTgKKyQodGVzdF9vaWQgaGFzaDA3YSkgJGNvbW1pdF9zaGE3CiskKHRlc3Rfb2lkIGhhc2gwNWMpICRjb21taXRfc2hhNQorJCh0ZXN0X29pZCBoYXNoMDRiKSAkY29tbWl0X3NoYTQKKyQodGVzdF9vaWQgaGFzaDAyYykgJGNvbW1pdF9zaGEyCiBFT0YKIAogY2F0ID5leHBlY3RfbG9nX3ogPDxFT0YKQEAgLTMwNiwxNiArMzY2LDE2IEBACiAnCiAKIGNhdCA8PEVPRiB8IHNvcnQgPmV4cGVjdF9ub3Rlc19vdXJzCi02OGI4NjMwZDI1NTE2MDI4YmVkODYyNzE5ODU1YjNkNjc2OGQ3ODMzICRjb21taXRfc2hhMTUKLTVkZTdlYTdhZDRmNDdlN2ZmOTE5ODlmYjgyMjM0NjM0NzMwZjc1ZGYgJGNvbW1pdF9zaGExNAotM2E2MzFmZGI2ZjQxYjA1YjU1ZDhmNGJhZjIwNzI4YmE4ZjZmY2NiYyAkY29tbWl0X3NoYTEzCi1hNjYwNTVmYTgyZjdhMDNmZTBjMDJhNmFiYTMyODdhODVhYmY3YzYyICRjb21taXRfc2hhMTIKLTdlM2M1MzUwM2EzZGI4ZGQ5OTZjYjYyZTM3YzY2ZTA3MGI0NGI1NGQgJGNvbW1pdF9zaGExMQotYjhkMDNlMTczZjY3ZjY1MDVhNzZmNmUwMGNmOTM0NDAyMDBkZDliZSAkY29tbWl0X3NoYTEwCi0xNTQ1MDhjN2EwYmNhZDgyYjZmZTRiNDcyYmM0YzI2YjNiZjA4MjViICRjb21taXRfc2hhNQotZTJiZmQwNmEzN2RkMjAzMTY4NGE1OWE2ZTJiMDMzZTIxMjIzOWM3OCAkY29tbWl0X3NoYTQKLTU3NzJmNDI0MDhjMGRkNmYwOTdhN2NhMmQyNGRlMGU3OGQxYzQ2YjEgJGNvbW1pdF9zaGEzCi0yODNiNDgyMTlhZWU5YTQxMDVmNmNhYjMzN2U3ODkwNjVjODJjMmI5ICRjb21taXRfc2hhMgorJCh0ZXN0X29pZCBoYXNoMTViKSAkY29tbWl0X3NoYTE1CiskKHRlc3Rfb2lkIGhhc2gxNGIpICRjb21taXRfc2hhMTQKKyQodGVzdF9vaWQgaGFzaDEzYikgJGNvbW1pdF9zaGExMworJCh0ZXN0X29pZCBoYXNoMTJiKSAkY29tbWl0X3NoYTEyCiskKHRlc3Rfb2lkIGhhc2gxMWMpICRjb21taXRfc2hhMTEKKyQodGVzdF9vaWQgaGFzaDEwYSkgJGNvbW1pdF9zaGExMAorJCh0ZXN0X29pZCBoYXNoMDViKSAkY29tbWl0X3NoYTUKKyQodGVzdF9vaWQgaGFzaDA0YikgJGNvbW1pdF9zaGE0CiskKHRlc3Rfb2lkIGhhc2gwM2IpICRjb21taXRfc2hhMworJCh0ZXN0X29pZCBoYXNoMDJjKSAkY29tbWl0X3NoYTIKIEVPRgogCiBjYXQgPmV4cGVjdF9sb2dfb3VycyA8PEVPRgpAQCAtMzk1LDE2ICs0NTUsMTYgQEAKICcKIAogY2F0IDw8RU9GIHwgc29ydCA+ZXhwZWN0X25vdGVzX3RoZWlycwotOWI0YjJjNjFmMDYxNTQxMmRhM2MxMGY5OGZmODViNTdjMDRlYzc2NSAkY29tbWl0X3NoYTE1Ci01ZGU3ZWE3YWQ0ZjQ3ZTdmZjkxOTg5ZmI4MjIzNDYzNDczMGY3NWRmICRjb21taXRfc2hhMTQKLTNhNjMxZmRiNmY0MWIwNWI1NWQ4ZjRiYWYyMDcyOGJhOGY2ZmNjYmMgJGNvbW1pdF9zaGExMwotN2UzYzUzNTAzYTNkYjhkZDk5NmNiNjJlMzdjNjZlMDcwYjQ0YjU0ZCAkY29tbWl0X3NoYTExCi1iOGQwM2UxNzNmNjdmNjUwNWE3NmY2ZTAwY2Y5MzQ0MDIwMGRkOWJlICRjb21taXRfc2hhMTAKLTg1MWUxNjM4Nzg0YTg4NGM3ZGQyNmM1ZDQxZjMzNDBmNjM4NzQxM2EgJGNvbW1pdF9zaGE4Ci05OWZjMzRhZGZjNDAwYjk1YzY3YjAxMzExNWUzN2UzMWFhOWE2ZDIzICRjb21taXRfc2hhNQotZTJiZmQwNmEzN2RkMjAzMTY4NGE1OWE2ZTJiMDMzZTIxMjIzOWM3OCAkY29tbWl0X3NoYTQKLTU3NzJmNDI0MDhjMGRkNmYwOTdhN2NhMmQyNGRlMGU3OGQxYzQ2YjEgJGNvbW1pdF9zaGEzCi0yODNiNDgyMTlhZWU5YTQxMDVmNmNhYjMzN2U3ODkwNjVjODJjMmI5ICRjb21taXRfc2hhMgorJCh0ZXN0X29pZCBoYXNoMTVjKSAkY29tbWl0X3NoYTE1CiskKHRlc3Rfb2lkIGhhc2gxNGIpICRjb21taXRfc2hhMTQKKyQodGVzdF9vaWQgaGFzaDEzYikgJGNvbW1pdF9zaGExMworJCh0ZXN0X29pZCBoYXNoMTFjKSAkY29tbWl0X3NoYTExCiskKHRlc3Rfb2lkIGhhc2gxMGEpICRjb21taXRfc2hhMTAKKyQodGVzdF9vaWQgaGFzaDA4YykgJGNvbW1pdF9zaGE4CiskKHRlc3Rfb2lkIGhhc2gwNWMpICRjb21taXRfc2hhNQorJCh0ZXN0X29pZCBoYXNoMDRiKSAkY29tbWl0X3NoYTQKKyQodGVzdF9vaWQgaGFzaDAzYikgJGNvbW1pdF9zaGEzCiskKHRlc3Rfb2lkIGhhc2gwMmMpICRjb21taXRfc2hhMgogRU9GCiAKIGNhdCA+ZXhwZWN0X2xvZ190aGVpcnMgPDxFT0YKQEAgLTQ3MywxNyArNTMzLDE3IEBACiAnCiAKIGNhdCA8PEVPRiB8IHNvcnQgPmV4cGVjdF9ub3Rlc191bmlvbgotN2M0ZTU0NmVmZDBmZTkzOWY4NzZiZWIyNjJlY2UwMjc5Nzg4MGI1NCAkY29tbWl0X3NoYTE1Ci01ZGU3ZWE3YWQ0ZjQ3ZTdmZjkxOTg5ZmI4MjIzNDYzNDczMGY3NWRmICRjb21taXRfc2hhMTQKLTNhNjMxZmRiNmY0MWIwNWI1NWQ4ZjRiYWYyMDcyOGJhOGY2ZmNjYmMgJGNvbW1pdF9zaGExMwotYTY2MDU1ZmE4MmY3YTAzZmUwYzAyYTZhYmEzMjg3YTg1YWJmN2M2MiAkY29tbWl0X3NoYTEyCi03ZTNjNTM1MDNhM2RiOGRkOTk2Y2I2MmUzN2M2NmUwNzBiNDRiNTRkICRjb21taXRfc2hhMTEKLWI4ZDAzZTE3M2Y2N2Y2NTA1YTc2ZjZlMDBjZjkzNDQwMjAwZGQ5YmUgJGNvbW1pdF9zaGExMAotODUxZTE2Mzg3ODRhODg0YzdkZDI2YzVkNDFmMzM0MGY2Mzg3NDEzYSAkY29tbWl0X3NoYTgKLTZjODQxY2MzNmVhNDk2MDI3MjkwOTY3Y2E5NmJkMmJlZjU0ZGJiNDcgJGNvbW1pdF9zaGE1Ci1lMmJmZDA2YTM3ZGQyMDMxNjg0YTU5YTZlMmIwMzNlMjEyMjM5Yzc4ICRjb21taXRfc2hhNAotNTc3MmY0MjQwOGMwZGQ2ZjA5N2E3Y2EyZDI0ZGUwZTc4ZDFjNDZiMSAkY29tbWl0X3NoYTMKLTI4M2I0ODIxOWFlZTlhNDEwNWY2Y2FiMzM3ZTc4OTA2NWM4MmMyYjkgJGNvbW1pdF9zaGEyCiskKHRlc3Rfb2lkIGhhc2gxNWQpICRjb21taXRfc2hhMTUKKyQodGVzdF9vaWQgaGFzaDE0YikgJGNvbW1pdF9zaGExNAorJCh0ZXN0X29pZCBoYXNoMTNiKSAkY29tbWl0X3NoYTEzCiskKHRlc3Rfb2lkIGhhc2gxMmIpICRjb21taXRfc2hhMTIKKyQodGVzdF9vaWQgaGFzaDExYykgJGNvbW1pdF9zaGExMQorJCh0ZXN0X29pZCBoYXNoMTBhKSAkY29tbWl0X3NoYTEwCiskKHRlc3Rfb2lkIGhhc2gwOGMpICRjb21taXRfc2hhOAorJCh0ZXN0X29pZCBoYXNoMDVkKSAkY29tbWl0X3NoYTUKKyQodGVzdF9vaWQgaGFzaDA0YikgJGNvbW1pdF9zaGE0CiskKHRlc3Rfb2lkIGhhc2gwM2IpICRjb21taXRfc2hhMworJCh0ZXN0X29pZCBoYXNoMDJjKSAkY29tbWl0X3NoYTIKIEVPRgogCiBjYXQgPmV4cGVjdF9sb2dfdW5pb24gPDxFT0YKQEAgLTU3NCwxNyArNjM0LDE3IEBACiAnCiAKIGNhdCA8PEVPRiB8IHNvcnQgPmV4cGVjdF9ub3Rlc191bmlvbjIKLWQ2ODIxMDdiOGJmN2E3YWVhMWU1MzdhOGQ1Y2I2YTEyYjYwMTM1ZjEgJGNvbW1pdF9zaGExNQotNWRlN2VhN2FkNGY0N2U3ZmY5MTk4OWZiODIyMzQ2MzQ3MzBmNzVkZiAkY29tbWl0X3NoYTE0Ci0zYTYzMWZkYjZmNDFiMDViNTVkOGY0YmFmMjA3MjhiYThmNmZjY2JjICRjb21taXRfc2hhMTMKLWE2NjA1NWZhODJmN2EwM2ZlMGMwMmE2YWJhMzI4N2E4NWFiZjdjNjIgJGNvbW1pdF9zaGExMgotN2UzYzUzNTAzYTNkYjhkZDk5NmNiNjJlMzdjNjZlMDcwYjQ0YjU0ZCAkY29tbWl0X3NoYTExCi1iOGQwM2UxNzNmNjdmNjUwNWE3NmY2ZTAwY2Y5MzQ0MDIwMGRkOWJlICRjb21taXRfc2hhMTAKLTg1MWUxNjM4Nzg0YTg4NGM3ZGQyNmM1ZDQxZjMzNDBmNjM4NzQxM2EgJGNvbW1pdF9zaGE4Ci0zNTdiNmNhMTRjN2FmZDU5YjdmOGI4YWFhYTZiOGI3MjM3NzExMzViICRjb21taXRfc2hhNQotZTJiZmQwNmEzN2RkMjAzMTY4NGE1OWE2ZTJiMDMzZTIxMjIzOWM3OCAkY29tbWl0X3NoYTQKLTU3NzJmNDI0MDhjMGRkNmYwOTdhN2NhMmQyNGRlMGU3OGQxYzQ2YjEgJGNvbW1pdF9zaGEzCi0yODNiNDgyMTlhZWU5YTQxMDVmNmNhYjMzN2U3ODkwNjVjODJjMmI5ICRjb21taXRfc2hhMgorJCh0ZXN0X29pZCBoYXNoMTVlKSAkY29tbWl0X3NoYTE1CiskKHRlc3Rfb2lkIGhhc2gxNGIpICRjb21taXRfc2hhMTQKKyQodGVzdF9vaWQgaGFzaDEzYikgJGNvbW1pdF9zaGExMworJCh0ZXN0X29pZCBoYXNoMTJiKSAkY29tbWl0X3NoYTEyCiskKHRlc3Rfb2lkIGhhc2gxMWMpICRjb21taXRfc2hhMTEKKyQodGVzdF9vaWQgaGFzaDEwYSkgJGNvbW1pdF9zaGExMAorJCh0ZXN0X29pZCBoYXNoMDhjKSAkY29tbWl0X3NoYTgKKyQodGVzdF9vaWQgaGFzaDA1ZSkgJGNvbW1pdF9zaGE1CiskKHRlc3Rfb2lkIGhhc2gwNGIpICRjb21taXRfc2hhNAorJCh0ZXN0X29pZCBoYXNoMDNiKSAkY29tbWl0X3NoYTMKKyQodGVzdF9vaWQgaGFzaDAyYykgJGNvbW1pdF9zaGEyCiBFT0YKIAogY2F0ID5leHBlY3RfbG9nX3VuaW9uMiA8PEVPRgpAQCAtNjQ4LDE3ICs3MDgsMTcgQEAKICcKIAogY2F0IDw8RU9GIHwgc29ydCA+ZXhwZWN0X25vdGVzX2NhdF9zb3J0X3VuaXEKLTZiZTkwMjQwYjVmNTQ1OTQyMDNlMjVkOWYyZjY0Yjc1NjcxNzVhZWUgJGNvbW1pdF9zaGExNQotNWRlN2VhN2FkNGY0N2U3ZmY5MTk4OWZiODIyMzQ2MzQ3MzBmNzVkZiAkY29tbWl0X3NoYTE0Ci0zYTYzMWZkYjZmNDFiMDViNTVkOGY0YmFmMjA3MjhiYThmNmZjY2JjICRjb21taXRfc2hhMTMKLWE2NjA1NWZhODJmN2EwM2ZlMGMwMmE2YWJhMzI4N2E4NWFiZjdjNjIgJGNvbW1pdF9zaGExMgotN2UzYzUzNTAzYTNkYjhkZDk5NmNiNjJlMzdjNjZlMDcwYjQ0YjU0ZCAkY29tbWl0X3NoYTExCi1iOGQwM2UxNzNmNjdmNjUwNWE3NmY2ZTAwY2Y5MzQ0MDIwMGRkOWJlICRjb21taXRfc2hhMTAKLTg1MWUxNjM4Nzg0YTg4NGM3ZGQyNmM1ZDQxZjMzNDBmNjM4NzQxM2EgJGNvbW1pdF9zaGE4Ci02NjAzMTFkN2Y3OGRjNTNkYjEyYWMzNzNhNDNmY2E3NDY1MzgxYTdlICRjb21taXRfc2hhNQotZTJiZmQwNmEzN2RkMjAzMTY4NGE1OWE2ZTJiMDMzZTIxMjIzOWM3OCAkY29tbWl0X3NoYTQKLTU3NzJmNDI0MDhjMGRkNmYwOTdhN2NhMmQyNGRlMGU3OGQxYzQ2YjEgJGNvbW1pdF9zaGEzCi0yODNiNDgyMTlhZWU5YTQxMDVmNmNhYjMzN2U3ODkwNjVjODJjMmI5ICRjb21taXRfc2hhMgorJCh0ZXN0X29pZCBoYXNoMTVmKSAkY29tbWl0X3NoYTE1CiskKHRlc3Rfb2lkIGhhc2gxNGIpICRjb21taXRfc2hhMTQKKyQodGVzdF9vaWQgaGFzaDEzYikgJGNvbW1pdF9zaGExMworJCh0ZXN0X29pZCBoYXNoMTJiKSAkY29tbWl0X3NoYTEyCiskKHRlc3Rfb2lkIGhhc2gxMWMpICRjb21taXRfc2hhMTEKKyQodGVzdF9vaWQgaGFzaDEwYSkgJGNvbW1pdF9zaGExMAorJCh0ZXN0X29pZCBoYXNoMDhjKSAkY29tbWl0X3NoYTgKKyQodGVzdF9vaWQgaGFzaDA1ZikgJGNvbW1pdF9zaGE1CiskKHRlc3Rfb2lkIGhhc2gwNGIpICRjb21taXRfc2hhNAorJCh0ZXN0X29pZCBoYXNoMDNiKSAkY29tbWl0X3NoYTMKKyQodGVzdF9vaWQgaGFzaDAyYykgJGNvbW1pdF9zaGEyCiBFT0YKIAogY2F0ID5leHBlY3RfbG9nX2NhdF9zb3J0X3VuaXEgPDxFT0YKZGlmZiAtLWdpdCBhL3QvdDMzMTAtbm90ZXMtbWVyZ2UtbWFudWFsLXJlc29sdmUuc2ggYi90L3QzMzEwLW5vdGVzLW1lcmdlLW1hbnVhbC1yZXNvbHZlLnNoCmluZGV4IDJkZWE4NDYuLmQzZDcyZTIgMTAwNzU1Ci0tLSBhL3QvdDMzMTAtbm90ZXMtbWVyZ2UtbWFudWFsLXJlc29sdmUuc2gKKysrIGIvdC90MzMxMC1ub3Rlcy1tZXJnZS1tYW51YWwtcmVzb2x2ZS5zaApAQCAtMTMsNyArMTMsMzkgQEAKIAl0ZXN0X2NvbW1pdCAybmQgJiYKIAl0ZXN0X2NvbW1pdCAzcmQgJiYKIAl0ZXN0X2NvbW1pdCA0dGggJiYKLQl0ZXN0X2NvbW1pdCA1dGgKKwl0ZXN0X2NvbW1pdCA1dGggJiYKKworCXRlc3Rfb2lkX2NhY2hlIDw8LUVPRgorCWhhc2gwNGEgc2hhMTo2ZThlM2ZlYmNhM2MyYmI4OTY3MDQzMzVjYzRkMGMzNGNiMmY4NzE1CisJaGFzaDAzYSBzaGExOmU1Mzg4YzEwODYwNDU2ZWU2MDY3MzAyNTM0NWZlMmUxNTNlYjhjZjgKKwloYXNoMDJhIHNoYTE6Y2VlZmE2NzQ4NzM2NzBlN2VjZDEzMTgxNGQ5MDk3MjNjY2UyYjY2OQorCWhhc2gwNGIgc2hhMTplMmJmZDA2YTM3ZGQyMDMxNjg0YTU5YTZlMmIwMzNlMjEyMjM5Yzc4CisJaGFzaDAzYiBzaGExOjU3NzJmNDI0MDhjMGRkNmYwOTdhN2NhMmQyNGRlMGU3OGQxYzQ2YjEKKwloYXNoMDFiIHNoYTE6YjBhNjAyMWVjMDA2ZDA3ZTgwZTliMjBlYzliNDQ0Y2JkOWQ1NjBkMworCWhhc2gwNGMgc2hhMTpjZmY1OWM3OTNjMjBiYjQ5YTRlMDFiYzA2ZmIwNmJhZDY0MmUwZDU0CisJaGFzaDAyYyBzaGExOjI4M2I0ODIxOWFlZTlhNDEwNWY2Y2FiMzM3ZTc4OTA2NWM4MmMyYjkKKwloYXNoMDFjIHNoYTE6MGE4MWRhODk1NjM0NmUxOWJjYjI3YTkwNmYwNGFmMzI3ZTAzZTMxYgorCWhhc2gwNGQgc2hhMTowMDQ5NGFkZWNmMmQ5NjM1YTAyZmE0MzEzMDhkNjc5OTNmODUzOTY4CisJaGFzaDAxZSBzaGExOmY3NWQxZGY4OGNiZmU0MjU4ZDQ5ODUyZjI2Y2ZjODNmMmFkNDQ5NGIKKwloYXNoMDRmIHNoYTE6MDIxZmFhMjBlOTMxZmI0ODk4NmZmYzYyODJiNGJiMDU1NTNhYzk0NgorCWhhc2gwMWYgc2hhMTowYTU5ZTc4N2U2ZDY4OGFhNjMwOWU1NmU4YzFiODk0MzFhMGZjMWMxCisJaGFzaDA1ZyBzaGExOjMwNGRmYjQzMjVjZjI0MzAyNWI5OTU3NDg2ZWI2MDVhOWI1MWMxOTkKKworCWhhc2gwNGEJc2hhMjU2OmYxOGE5MzVlNjU4NjYzNDUwOThiM2I3NTQwNzFkYmY5ZjNhYTM1MjBlYjI3YTdiMDM2YjI3OGM1ZTJmMWVkN2UKKwloYXNoMDNhCXNoYTI1Njo3MTMwMzVkYzk0MDY3YTY0ZTVmYTZlNGUxODIxYjdjM2JkZTQ5YTc3YzdjYjNmODBlYWFkZWZhMWNhNDFiM2QyCisJaGFzaDAyYQlzaGEyNTY6ZjE2MGE2N2UwNDhiNmZhNzViZWMzOTUyMTg0MTU0MDQ1MDc2NjkyY2Y1ZGNjZDNkYTIxZTNmZDM0YjdhM2YwZgorCWhhc2gwNGIgc2hhMjU2OmM3ZmJhMGQ2MTA0OTE3ZmJmMzUyNThmNDBiOWZhNGZjNjk3Y2ZhOTkyZGVlY2QxNTcwYTNiMDhkMGE1NTg3YTkKKwloYXNoMDNiIHNoYTI1Njo3Mjg3YTJkNzhhMzc2NmMxODFiMDhkZjM4OTUxZDc4NGIwOGI3MmE0NGY1NzFlZDZkODU1YmQwYmUyMmM3MGY2CisJaGFzaDAxYiBzaGEyNTY6ZGE5NmNmNzc4YzE1ZDBhMmJiNzZmOThiMmE2MmY2YzljMDE3MzBmYTcwMzBlOGYwOGVmMDE5MTA0OGU3ZDYyMAorCWhhc2gwNGMgc2hhMjU2OmNiNjE1ZDJkZWY0YjgzNGQ1ZjU1YjIzNTFkZjk3ZGM5MmJlZTRmNTAwOWQyODUyMDE0MjdmMzQ5MDgxYzhhY2EKKwloYXNoMDJjIHNoYTI1Njo2M2JiNTI3ZTBiNGUxYzhlMWRkMGQ1NGRkNzc4Y2E3YzM3MTg2ODlmZDZlMzdjNDczMDQ0Y2ZiY2YxY2FjZmRiCisJaGFzaDAxYyBzaGEyNTY6NWI4NzIzN2FjMWZiYWUwMjQ2MjU2ZmVkOWY5YTFmMDc3YzQxNDBmYjdlNjQ0NDkyNWY4ZGJmYTVhZTQwNmNkOAorCWhhc2gwNGQgc2hhMjU2OmVlZGRjOWY5ZjZjYjNkNmIzOWI4NjE2NTk4NTNmMTA4OTFkYzM3M2UwYjZlZWNiMDllMDNlMzliNmNlNjQ3MTQKKwloYXNoMDFlIHNoYTI1NjoxMDhmNTIxYjFhNzRjMmU2ZDBiNTJhNGVkYTg3ZTA5MTYyYmY4NDdmN2QxOTBjZmNlNDk2ZWUxYWYwYjI5YTVhCisJaGFzaDA0ZiBzaGEyNTY6OTAxYWNkYTA0NTQ1MDJiM2JiZDI4MWYxMzBjNDE5ZTZjOGRlNzhhZmNmNzJhOGRlZjhkNDVhZDMxNDYyYmNlNAorCWhhc2gwMWYgc2hhMjU2OmEyZDk5ZDFiOGJmMjNjOGFmN2Q5ZDkxMzY4NDU0YWRjMTEwZGZkNWNjMDY4YTRjZWJiNDg2ZWU4ZjVhMWUxNmMKKwloYXNoMDVnIHNoYTI1Njo0ZmVmMDE1YjAxZGE4ZWZlOTI5YTY4ZTNiYjliOGZiYWQ4MWY1Mzk5NWYwOTdiZWZlOGViYzkzZjEyYWI5OGVjCisJRU9GCiAnCiAKIGNvbW1pdF9zaGExPSQoZ2l0IHJldi1wYXJzZSAxc3Ree2NvbW1pdH0pCkBAIC0zMiwxMCArNjQsMTYgQEAKIAl0ZXN0X2NtcCAiZXhwZWN0X2xvZ18kbm90ZXNfcmVmIiAib3V0cHV0X2xvZ18kbm90ZXNfcmVmIgogfQogCitub3Rlc19tZXJnZV9maWxlc19nb25lICgpIHsKKwkjIE5vIC5naXQvTk9URVNfTUVSR0VfKiBmaWxlcyBsZWZ0CisJeyBscyAuZ2l0L05PVEVTX01FUkdFXyogPm91dHB1dCB8fCA6OyB9ICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IG91dHB1dAorfQorCiBjYXQgPDxFT0YgfCBzb3J0ID5leHBlY3Rfbm90ZXNfeAotNmU4ZTNmZWJjYTNjMmJiODk2NzA0MzM1Y2M0ZDBjMzRjYjJmODcxNSAkY29tbWl0X3NoYTQKLWU1Mzg4YzEwODYwNDU2ZWU2MDY3MzAyNTM0NWZlMmUxNTNlYjhjZjggJGNvbW1pdF9zaGEzCi1jZWVmYTY3NDg3MzY3MGU3ZWNkMTMxODE0ZDkwOTcyM2NjZTJiNjY5ICRjb21taXRfc2hhMgorJCh0ZXN0X29pZCBoYXNoMDRhKSAkY29tbWl0X3NoYTQKKyQodGVzdF9vaWQgaGFzaDAzYSkgJGNvbW1pdF9zaGEzCiskKHRlc3Rfb2lkIGhhc2gwMmEpICRjb21taXRfc2hhMgogRU9GCiAKIGNhdCA+ZXhwZWN0X2xvZ194IDw8RU9GCkBAIC02Myw5ICsxMDEsOSBAQAogJwogCiBjYXQgPDxFT0YgfCBzb3J0ID5leHBlY3Rfbm90ZXNfeQotZTJiZmQwNmEzN2RkMjAzMTY4NGE1OWE2ZTJiMDMzZTIxMjIzOWM3OCAkY29tbWl0X3NoYTQKLTU3NzJmNDI0MDhjMGRkNmYwOTdhN2NhMmQyNGRlMGU3OGQxYzQ2YjEgJGNvbW1pdF9zaGEzCi1iMGE2MDIxZWMwMDZkMDdlODBlOWIyMGVjOWI0NDRjYmQ5ZDU2MGQzICRjb21taXRfc2hhMQorJCh0ZXN0X29pZCBoYXNoMDRiKSAkY29tbWl0X3NoYTQKKyQodGVzdF9vaWQgaGFzaDAzYikgJGNvbW1pdF9zaGEzCiskKHRlc3Rfb2lkIGhhc2gwMWIpICRjb21taXRfc2hhMQogRU9GCiAKIGNhdCA+ZXhwZWN0X2xvZ195IDw8RU9GCkBAIC05NSw5ICsxMzMsOSBAQAogJwogCiBjYXQgPDxFT0YgfCBzb3J0ID5leHBlY3Rfbm90ZXNfegotY2ZmNTljNzkzYzIwYmI0OWE0ZTAxYmMwNmZiMDZiYWQ2NDJlMGQ1NCAkY29tbWl0X3NoYTQKLTI4M2I0ODIxOWFlZTlhNDEwNWY2Y2FiMzM3ZTc4OTA2NWM4MmMyYjkgJGNvbW1pdF9zaGEyCi0wYTgxZGE4OTU2MzQ2ZTE5YmNiMjdhOTA2ZjA0YWYzMjdlMDNlMzFiICRjb21taXRfc2hhMQorJCh0ZXN0X29pZCBoYXNoMDRjKSAkY29tbWl0X3NoYTQKKyQodGVzdF9vaWQgaGFzaDAyYykgJGNvbW1pdF9zaGEyCiskKHRlc3Rfb2lkIGhhc2gwMWMpICRjb21taXRfc2hhMQogRU9GCiAKIGNhdCA+ZXhwZWN0X2xvZ196IDw8RU9GCkBAIC0xOTMsOSArMjMxLDkgQEAKICcKIAogY2F0IDw8RU9GIHwgc29ydCA+ZXhwZWN0X25vdGVzX3oKLTAwNDk0YWRlY2YyZDk2MzVhMDJmYTQzMTMwOGQ2Nzk5M2Y4NTM5NjggJGNvbW1pdF9zaGE0Ci0yODNiNDgyMTlhZWU5YTQxMDVmNmNhYjMzN2U3ODkwNjVjODJjMmI5ICRjb21taXRfc2hhMgotMGE4MWRhODk1NjM0NmUxOWJjYjI3YTkwNmYwNGFmMzI3ZTAzZTMxYiAkY29tbWl0X3NoYTEKKyQodGVzdF9vaWQgaGFzaDA0ZCkgJGNvbW1pdF9zaGE0CiskKHRlc3Rfb2lkIGhhc2gwMmMpICRjb21taXRfc2hhMgorJCh0ZXN0X29pZCBoYXNoMDFjKSAkY29tbWl0X3NoYTEKIEVPRgogCiBjYXQgPmV4cGVjdF9sb2dfeiA8PEVPRgpAQCAtMjMxLDggKzI2OSw4IEBACiAjIFNldHVwIG5vbi1jb25mbGljdGluZyBtZXJnZSBiZXR3ZWVuIHggYW5kIG5ldyBub3RlcyByZWYgdwogCiBjYXQgPDxFT0YgfCBzb3J0ID5leHBlY3Rfbm90ZXNfdwotY2VlZmE2NzQ4NzM2NzBlN2VjZDEzMTgxNGQ5MDk3MjNjY2UyYjY2OSAkY29tbWl0X3NoYTIKLWY3NWQxZGY4OGNiZmU0MjU4ZDQ5ODUyZjI2Y2ZjODNmMmFkNDQ5NGIgJGNvbW1pdF9zaGExCiskKHRlc3Rfb2lkIGhhc2gwMmEpICRjb21taXRfc2hhMgorJCh0ZXN0X29pZCBoYXNoMDFlKSAkY29tbWl0X3NoYTEKIEVPRgogCiBjYXQgPmV4cGVjdF9sb2dfdyA8PEVPRgpAQCAtMjU4LDEwICsyOTYsMTAgQEAKICcKIAogY2F0IDw8RU9GIHwgc29ydCA+ZXhwZWN0X25vdGVzX3cKLTZlOGUzZmViY2EzYzJiYjg5NjcwNDMzNWNjNGQwYzM0Y2IyZjg3MTUgJGNvbW1pdF9zaGE0Ci1lNTM4OGMxMDg2MDQ1NmVlNjA2NzMwMjUzNDVmZTJlMTUzZWI4Y2Y4ICRjb21taXRfc2hhMwotY2VlZmE2NzQ4NzM2NzBlN2VjZDEzMTgxNGQ5MDk3MjNjY2UyYjY2OSAkY29tbWl0X3NoYTIKLWY3NWQxZGY4OGNiZmU0MjU4ZDQ5ODUyZjI2Y2ZjODNmMmFkNDQ5NGIgJGNvbW1pdF9zaGExCiskKHRlc3Rfb2lkIGhhc2gwNGEpICRjb21taXRfc2hhNAorJCh0ZXN0X29pZCBoYXNoMDNhKSAkY29tbWl0X3NoYTMKKyQodGVzdF9vaWQgaGFzaDAyYSkgJGNvbW1pdF9zaGEyCiskKHRlc3Rfb2lkIGhhc2gwMWUpICRjb21taXRfc2hhMQogRU9GCiAKIGNhdCA+ZXhwZWN0X2xvZ193IDw8RU9GCkBAIC0yOTEsMTAgKzMyOSwxMCBAQAogJwogCiBjYXQgPDxFT0YgfCBzb3J0ID5leHBlY3Rfbm90ZXNfbQotMDIxZmFhMjBlOTMxZmI0ODk4NmZmYzYyODJiNGJiMDU1NTNhYzk0NiAkY29tbWl0X3NoYTQKLTU3NzJmNDI0MDhjMGRkNmYwOTdhN2NhMmQyNGRlMGU3OGQxYzQ2YjEgJGNvbW1pdF9zaGEzCi0yODNiNDgyMTlhZWU5YTQxMDVmNmNhYjMzN2U3ODkwNjVjODJjMmI5ICRjb21taXRfc2hhMgotMGE1OWU3ODdlNmQ2ODhhYTYzMDllNTZlOGMxYjg5NDMxYTBmYzFjMSAkY29tbWl0X3NoYTEKKyQodGVzdF9vaWQgaGFzaDA0ZikgJGNvbW1pdF9zaGE0CiskKHRlc3Rfb2lkIGhhc2gwM2IpICRjb21taXRfc2hhMworJCh0ZXN0X29pZCBoYXNoMDJjKSAkY29tbWl0X3NoYTIKKyQodGVzdF9vaWQgaGFzaDAxZikgJGNvbW1pdF9zaGExCiBFT0YKIAogY2F0ID5leHBlY3RfbG9nX20gPDxFT0YKQEAgLTMzNSw5ICszNzMsNyBAQAogeSBhbmQgeiBub3RlcyBvbiA0dGggY29tbWl0CiBFT0YKIAlnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXQgJiYKLQkjIE5vIC5naXQvTk9URVNfTUVSR0VfKiBmaWxlcyBsZWZ0Ci0JdGVzdF9taWdodF9mYWlsIGxzIC5naXQvTk9URVNfTUVSR0VfKiA+b3V0cHV0IDI+L2Rldi9udWxsICYmCi0JdGVzdF9tdXN0X2JlX2VtcHR5IG91dHB1dCAmJgorCW5vdGVzX21lcmdlX2ZpbGVzX2dvbmUgJiYKIAkjIE1lcmdlIGNvbW1pdCBoYXMgcHJlLW1lcmdlIHkgYW5kIHByZS1tZXJnZSB6IGFzIHBhcmVudHMKIAl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgcmVmcy9ub3Rlcy9tXjEpIiA9ICIkKGNhdCBwcmVfbWVyZ2VfeSkiICYmCiAJdGVzdCAiJChnaXQgcmV2LXBhcnNlIHJlZnMvbm90ZXMvbV4yKSIgPSAiJChjYXQgcHJlX21lcmdlX3opIiAmJgpAQCAtMzk3LDkgKzQzMyw3IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Fib3J0IG5vdGVzIG1lcmdlJyAnCiAJZ2l0IG5vdGVzIG1lcmdlIC0tYWJvcnQgJiYKLQkjIE5vIC5naXQvTk9URVNfTUVSR0VfKiBmaWxlcyBsZWZ0Ci0JdGVzdF9taWdodF9mYWlsIGxzIC5naXQvTk9URVNfTUVSR0VfKiA+b3V0cHV0IDI+L2Rldi9udWxsICYmCi0JdGVzdF9tdXN0X2JlX2VtcHR5IG91dHB1dCAmJgorCW5vdGVzX21lcmdlX2ZpbGVzX2dvbmUgJiYKIAkjIG0gaGFzIG5vdCBtb3ZlZCAoc3RpbGwgPT0geSkKIAl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgcmVmcy9ub3Rlcy9tKSIgPSAiJChjYXQgcHJlX21lcmdlX3kpIiAmJgogCSMgVmVyaWZ5IHRoYXQgb3RoZXIgbm90ZXMgcmVmcyBoYXMgbm90IGNoYW5nZWQgKHcsIHgsIHkgYW5kIHopCkBAIC00MzAsOSArNDY0LDkgQEAKICcKIAogY2F0IDw8RU9GIHwgc29ydCA+ZXhwZWN0X25vdGVzX20KLTMwNGRmYjQzMjVjZjI0MzAyNWI5OTU3NDg2ZWI2MDVhOWI1MWMxOTkgJGNvbW1pdF9zaGE1Ci0yODNiNDgyMTlhZWU5YTQxMDVmNmNhYjMzN2U3ODkwNjVjODJjMmI5ICRjb21taXRfc2hhMgotMGE1OWU3ODdlNmQ2ODhhYTYzMDllNTZlOGMxYjg5NDMxYTBmYzFjMSAkY29tbWl0X3NoYTEKKyQodGVzdF9vaWQgaGFzaDA1ZykgJGNvbW1pdF9zaGE1CiskKHRlc3Rfb2lkIGhhc2gwMmMpICRjb21taXRfc2hhMgorJCh0ZXN0X29pZCBoYXNoMDFmKSAkY29tbWl0X3NoYTEKIEVPRgogCiBjYXQgPmV4cGVjdF9sb2dfbSA8PEVPRgpAQCAtNDY0LDkgKzQ5OCw3IEBACiAJZWNobyAibmV3IG5vdGUgb24gNXRoIGNvbW1pdCIgPiAuZ2l0L05PVEVTX01FUkdFX1dPUktUUkVFLyRjb21taXRfc2hhNSAmJgogCSMgRmluYWxpemUgbWVyZ2UKIAlnaXQgbm90ZXMgbWVyZ2UgLS1jb21taXQgJiYKLQkjIE5vIC5naXQvTk9URVNfTUVSR0VfKiBmaWxlcyBsZWZ0Ci0JdGVzdF9taWdodF9mYWlsIGxzIC5naXQvTk9URVNfTUVSR0VfKiA+b3V0cHV0IDI+L2Rldi9udWxsICYmCi0JdGVzdF9tdXN0X2JlX2VtcHR5IG91dHB1dCAmJgorCW5vdGVzX21lcmdlX2ZpbGVzX2dvbmUgJiYKIAkjIE1lcmdlIGNvbW1pdCBoYXMgcHJlLW1lcmdlIHkgYW5kIHByZS1tZXJnZSB6IGFzIHBhcmVudHMKIAl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgcmVmcy9ub3Rlcy9tXjEpIiA9ICIkKGNhdCBwcmVfbWVyZ2VfeSkiICYmCiAJdGVzdCAiJChnaXQgcmV2LXBhcnNlIHJlZnMvbm90ZXMvbV4yKSIgPSAiJChjYXQgcHJlX21lcmdlX3opIiAmJgpAQCAtNTUzLDkgKzU4NSw3IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Jlc29sdmUgc2l0dWF0aW9uIGJ5IGFib3J0aW5nIHRoZSBub3RlcyBtZXJnZScgJwogCWdpdCBub3RlcyBtZXJnZSAtLWFib3J0ICYmCi0JIyBObyAuZ2l0L05PVEVTX01FUkdFXyogZmlsZXMgbGVmdAotCXRlc3RfbWlnaHRfZmFpbCBscyAuZ2l0L05PVEVTX01FUkdFXyogPm91dHB1dCAyPi9kZXYvbnVsbCAmJgotCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXRwdXQgJiYKKwlub3Rlc19tZXJnZV9maWxlc19nb25lICYmCiAJIyBtIGhhcyBub3QgbW92ZWQgKHN0aWxsID09IHcpCiAJdGVzdCAiJChnaXQgcmV2LXBhcnNlIHJlZnMvbm90ZXMvbSkiID0gIiQoZ2l0IHJldi1wYXJzZSByZWZzL25vdGVzL3cpIiAmJgogCSMgVmVyaWZ5IHRoYXQgb3RoZXIgbm90ZXMgcmVmcyBoYXMgbm90IGNoYW5nZWQgKHcsIHgsIHkgYW5kIHopCmRpZmYgLS1naXQgYS90L3QzMzExLW5vdGVzLW1lcmdlLWZhbm91dC5zaCBiL3QvdDMzMTEtbm90ZXMtbWVyZ2UtZmFub3V0LnNoCmluZGV4IDkzNTE2ZWYuLjViNjc1NDEgMTAwNzU1Ci0tLSBhL3QvdDMzMTEtbm90ZXMtbWVyZ2UtZmFub3V0LnNoCisrKyBiL3QvdDMzMTEtbm90ZXMtbWVyZ2UtZmFub3V0LnNoCkBAIC0yOSwxNSArMjksMTAgQEAKIAlnaXQgbHMtdHJlZSAtciAtLW5hbWUtb25seSAicmVmcy9ub3Rlcy8kbm90ZXNfcmVmIiB8CiAJd2hpbGUgcmVhZCBwYXRoCiAJZG8KLQkJY2FzZSAiJHBhdGgiIGluCi0JCT8/Lz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/KQotCQkJOiB0cnVlCi0JCQk7OwotCQkqKQorCQllY2hvICIkcGF0aCIgfCBncmVwICJeLi4vWzAtOWEtZl0qJCIgfHwgewogCQkJZWNobyAiSW52YWxpZCBwYXRoIFwiJHBhdGhcIiIgJiYKLQkJCXJldHVybiAxCi0JCQk7OwotCQllc2FjCisJCQlyZXR1cm4gMTsKKwkJfQogCWRvbmUKIH0KIApAQCAtNDgsMTUgKzQzLDEwIEBACiAJZ2l0IGxzLXRyZWUgLXIgLS1uYW1lLW9ubHkgInJlZnMvbm90ZXMvJG5vdGVzX3JlZiIgfAogCXdoaWxlIHJlYWQgcGF0aAogCWRvCi0JCWNhc2UgIiRwYXRoIiBpbgotCQk/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/KQotCQkJOiB0cnVlCi0JCQk7OwotCQkqKQorCQllY2hvICIkcGF0aCIgfCBncmVwIC12ICJeLi4vLioiIHx8IHsKIAkJCWVjaG8gIkludmFsaWQgcGF0aCBcIiRwYXRoXCIiICYmCi0JCQlyZXR1cm4gMQotCQkJOzsKLQkJZXNhYworCQkJcmV0dXJuIDE7CisJCX0KIAlkb25lCiB9CiAKQEAgLTY3LDcgKzU3LDI3IEBACiAJZG8KIAkJdGVzdF9jb21taXQgImNvbW1pdCRpIiA+L2Rldi9udWxsICYmCiAJCWdpdCBub3RlcyBhZGQgLW0gIm5vdGVzIGZvciBjb21taXQkaSIgfHwgcmV0dXJuIDEKLQlkb25lCisJZG9uZSAmJgorCisJZ2l0IGxvZyAtLWZvcm1hdD1vbmVsaW5lICYmCisKKwl0ZXN0X29pZF9jYWNoZSA8PC1FT0YKKwloYXNoMDVhIHNoYTE6YWVkOTExNTVjN2E3MmMyMTg4ZTc4MWZkZjQwZTBmMzc2MWIyOTlkYgorCWhhc2gwNGEgc2hhMTo5OWZhYjI2OGY5ZDdlZTdiMDExZTA5MWE0MzZjNzhkZWY4ZWVlZTY5CisJaGFzaDAzYSBzaGExOjk1M2MyMGFlMjZjN2FhMGI0MjhjMjA2OTNmZTM4YmM2ODdmOWQxYTkKKwloYXNoMDJhIHNoYTE6NjM1ODc5NjEzMWI4OTE2ZWFhMmRkZTY5MDI2NDI5NDJhMWNiMzdlMQorCWhhc2gwMWEgc2hhMTpiMDJkNDU5YzMyZjBlNjhmMmZlMDk4MTAzM2JiMzRmMzg3NzZiYTQ3CisJaGFzaDAzYiBzaGExOjlmNTA2ZWU3MGUyMDM3OWQ3Zjc4MjA0Yzc3YjMzNGY0M2Q3NzQxMGQKKwloYXNoMDJiIHNoYTE6MjNhNDdkNmVhN2Q1ODk4OTVmYWY4MDA3NTIwNTQ4MThlMWU3NjI3YgorCisJaGFzaDA1YSBzaGEyNTY6M2FhZTVkMjY2MTlkOTZkYmE5Mzc5NWY2NjMyNTcxNmU0Y2JjNDg2ODg0Zjk1YTZhZGVlOGZiMDYxNWE3NmQxMgorCWhhc2gwNGEgc2hhMjU2OjA3ZTQzZGQzZDg5ZmU2MzRkMzI1MmUyNTNiNDI2YWFjYzcyODVhOTk1ZGNkYmNmOTRhYzI4NDA2MGExMTIyY2YKKwloYXNoMDNhIHNoYTI1NjoyNmZiNTJlYWE3ZjQ4NjZiZjczNTI1NDU4N2JlN2IzMTIwOWVjMTBlNTI1OTEyZmZkOGU4YmE1NDliYTg5MmZmCisJaGFzaDAyYSBzaGEyNTY6YjU3ZWJkZjIzNjM0ZTc1MGRjYmM0YjlhMzc5OTFkNzBmOTA4MzBkNTY4YTBlNDUyOWNlOWRlMGEzZjhkNjA1YworCWhhc2gwMWEgc2hhMjU2OjM3NzkwM2IxNTcyYmQ1MTE3MDg3YTU1MThmY2IxMDExYjUwNTNjY2NiYzU5ZTNjN2M4MjNhODYxNTIwNDE3M2IKKwloYXNoMDNiIHNoYTI1NjowNGU3YjM5MmZkYTdjMTg1YmZhMTdjOTE3OWI1NmRiNzMyZWRjMmRjMmIzYmY4ODczMDhkY2FhYmI3MTcyNzBkCisJaGFzaDAyYiBzaGEyNTY6NjYwOTlhYWFlYzQ5YTQ4NWVkOTkwYWNhZGQ5YTliODEyMzJlYTU5MjA3OTk2NDExM2Q4ZjU4MWZmNjllZjUwYgorCUVPRgogJwogCiBjb21taXRfc2hhMT0kKGdpdCByZXYtcGFyc2UgY29tbWl0MV57Y29tbWl0fSkKQEAgLTc3LDExICs4NywxMSBAQAogY29tbWl0X3NoYTU9JChnaXQgcmV2LXBhcnNlIGNvbW1pdDVee2NvbW1pdH0pCiAKIGNhdCA8PEVPRiB8IHNvcnQgPmV4cGVjdF9ub3Rlc194Ci1hZWQ5MTE1NWM3YTcyYzIxODhlNzgxZmRmNDBlMGYzNzYxYjI5OWRiICRjb21taXRfc2hhNQotOTlmYWIyNjhmOWQ3ZWU3YjAxMWUwOTFhNDM2Yzc4ZGVmOGVlZWU2OSAkY29tbWl0X3NoYTQKLTk1M2MyMGFlMjZjN2FhMGI0MjhjMjA2OTNmZTM4YmM2ODdmOWQxYTkgJGNvbW1pdF9zaGEzCi02MzU4Nzk2MTMxYjg5MTZlYWEyZGRlNjkwMjY0Mjk0MmExY2IzN2UxICRjb21taXRfc2hhMgotYjAyZDQ1OWMzMmYwZTY4ZjJmZTA5ODEwMzNiYjM0ZjM4Nzc2YmE0NyAkY29tbWl0X3NoYTEKKyQodGVzdF9vaWQgaGFzaDA1YSkgJGNvbW1pdF9zaGE1CiskKHRlc3Rfb2lkIGhhc2gwNGEpICRjb21taXRfc2hhNAorJCh0ZXN0X29pZCBoYXNoMDNhKSAkY29tbWl0X3NoYTMKKyQodGVzdF9vaWQgaGFzaDAyYSkgJGNvbW1pdF9zaGEyCiskKHRlc3Rfb2lkIGhhc2gwMWEpICRjb21taXRfc2hhMQogRU9GCiAKIGNhdCA+ZXhwZWN0X2xvZ194IDw8RU9GCkBAIC0xMTQsMTIgKzEyNCwxMiBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnQWRkIGEgZmV3IGh1bmRyZWQgY29tbWl0cyB3L25vdGVzIHRvIHRyaWdnZXIgZmFub3V0ICh4IC0+IHkpJyAnCiAJZ2l0IHVwZGF0ZS1yZWYgcmVmcy9ub3Rlcy95IHJlZnMvbm90ZXMveCAmJgogCWdpdCBjb25maWcgY29yZS5ub3Rlc1JlZiByZWZzL25vdGVzL3kgJiYKLQlpPTUgJiYKLQl3aGlsZSB0ZXN0ICRpIC1sdCAkbnVtCisJdGVzdF9jb21taXRfYnVsayAtLXN0YXJ0PTYgLS1pZD1jb21taXQgJCgobnVtIC0gNSkpICYmCisJaT0wICYmCisJd2hpbGUgdGVzdCAkaSAtbHQgJCgobnVtIC0gNSkpCiAJZG8KLQkJaT0kKCgkaSArIDEpKSAmJgotCQl0ZXN0X2NvbW1pdCAiY29tbWl0JGkiID4vZGV2L251bGwgJiYKLQkJZ2l0IG5vdGVzIGFkZCAtbSAibm90ZXMgZm9yIGNvbW1pdCRpIiB8fCByZXR1cm4gMQorCQlnaXQgbm90ZXMgYWRkIC1tICJub3RlcyBmb3IgY29tbWl0JGkiIEhFQUR+JGkgfHwgcmV0dXJuIDEKKwkJaT0kKChpICsgMSkpCiAJZG9uZSAmJgogCXRlc3QgIiQoZ2l0IHJldi1wYXJzZSByZWZzL25vdGVzL3kpIiAhPSAiJChnaXQgcmV2LXBhcnNlIHJlZnMvbm90ZXMveCkiICYmCiAJIyBFeHBlY3RlZCBudW1iZXIgb2YgY29tbWl0cyBhbmQgbm90ZXMKQEAgLTE0NSw5ICsxNTUsOSBAQAogJwogCiBjYXQgPDxFT0YgfCBzb3J0ID5leHBlY3Rfbm90ZXNfegotOWY1MDZlZTcwZTIwMzc5ZDdmNzgyMDRjNzdiMzM0ZjQzZDc3NDEwZCAkY29tbWl0X3NoYTMKLTIzYTQ3ZDZlYTdkNTg5ODk1ZmFmODAwNzUyMDU0ODE4ZTFlNzYyN2IgJGNvbW1pdF9zaGEyCi1iMDJkNDU5YzMyZjBlNjhmMmZlMDk4MTAzM2JiMzRmMzg3NzZiYTQ3ICRjb21taXRfc2hhMQorJCh0ZXN0X29pZCBoYXNoMDNiKSAkY29tbWl0X3NoYTMKKyQodGVzdF9vaWQgaGFzaDAyYikgJGNvbW1pdF9zaGEyCiskKHRlc3Rfb2lkIGhhc2gwMWEpICRjb21taXRfc2hhMQogRU9GCiAKIGNhdCA+ZXhwZWN0X2xvZ196IDw8RU9GCmRpZmYgLS1naXQgYS90L3QzNDAwLXJlYmFzZS5zaCBiL3QvdDM0MDAtcmViYXNlLnNoCmluZGV4IDNlNzNmNzUuLjQwZDI5NzUgMTAwNzU1Ci0tLSBhL3QvdDM0MDAtcmViYXNlLnNoCisrKyBiL3QvdDM0MDAtcmViYXNlLnNoCkBAIC01OSw2ICs1OSwxNCBAQAogCWdpdCByZWJhc2UgbWFzdGVyCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSBzZXRzIE9SSUdfSEVBRCB0byBwcmUtcmViYXNlIHN0YXRlJyAnCisJZ2l0IGNoZWNrb3V0IC1iIG9yaWctaGVhZCB0b3BpYyAmJgorCXByZT0iJChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IEhFQUQpIiAmJgorCWdpdCByZWJhc2UgbWFzdGVyICYmCisJdGVzdF9jbXBfcmV2ICIkcHJlIiBPUklHX0hFQUQgJiYKKwl0ZXN0X2NtcF9yZXYgISAiJHByZSIgSEVBRAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UsIHdpdGggPG9udG8+IGFuZCA8dXBzdHJlYW0+IHNwZWNpZmllZCBhcyA6L3F1dXhlcnknICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCBicmFuY2ggLUQgdG9yZWJhc2UiICYmCiAJZ2l0IGNoZWNrb3V0IC1iIHRvcmViYXNlIG15LXRvcGljLWJyYW5jaF4gJiYKQEAgLTEzNSwxMSArMTQzLDExIEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ1Nob3cgdmVyYm9zZSBlcnJvciB3aGVuIEhFQUQgY291bGQgbm90IGJlIGRldGFjaGVkJyAnCiAJPkIgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIEIiICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSB0b3BpYyAyPm91dHB1dC5lcnIgPm91dHB1dC5vdXQgJiYKIAl0ZXN0X2kxOG5ncmVwICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6IiBvdXRwdXQuZXJyICYmCiAJdGVzdF9pMThuZ3JlcCBCIG91dHB1dC5lcnIKICcKLXJtIC1mIEIKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFpbCB3aGVuIHVwc3RyZWFtIGFyZyBpcyBtaXNzaW5nIGFuZCBub3Qgb24gYnJhbmNoJyAnCiAJZ2l0IGNoZWNrb3V0IHRvcGljICYmCkBAIC0xNTEsMTkgKzE1OSw0MyBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGVmYXVsdCB0byBjb21tb24gYmFzZSBpbiBAe3Vwc3RyZWFtfXMgcmVmbG9nIGlmIG5vIHVwc3RyZWFtIGFyZycgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIHdvcmtzIHdpdGggZm9ybWF0LnVzZUF1dG9CYXNlJyAnCisJdGVzdF9jb25maWcgZm9ybWF0LnVzZUF1dG9CYXNlIHRydWUgJiYKKwlnaXQgY2hlY2tvdXQgdG9waWMgJiYKKwlnaXQgcmViYXNlIG1hc3RlcgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZWZhdWx0IHRvIGNvbW1vbiBiYXNlIGluIEB7dXBzdHJlYW19cyByZWZsb2cgaWYgbm8gdXBzdHJlYW0gYXJnICgtLW1lcmdlKScgJwogCWdpdCBjaGVja291dCAtYiBkZWZhdWx0LWJhc2UgbWFzdGVyICYmCiAJZ2l0IGNoZWNrb3V0IC1iIGRlZmF1bHQgdG9waWMgJiYKIAlnaXQgY29uZmlnIGJyYW5jaC5kZWZhdWx0LnJlbW90ZSAuICYmCiAJZ2l0IGNvbmZpZyBicmFuY2guZGVmYXVsdC5tZXJnZSByZWZzL2hlYWRzL2RlZmF1bHQtYmFzZSAmJgotCWdpdCByZWJhc2UgJiYKKwlnaXQgcmViYXNlIC0tbWVyZ2UgJiYKIAlnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IGRlZmF1bHQtYmFzZSA+ZXhwZWN0ICYmCiAJZ2l0IHJldi1wYXJzZSBkZWZhdWx0fjEgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAlnaXQgY2hlY2tvdXQgZGVmYXVsdC1iYXNlICYmCiAJZ2l0IHJlc2V0IC0taGFyZCBIRUFEXiAmJgogCWdpdCBjaGVja291dCBkZWZhdWx0ICYmCi0JZ2l0IHJlYmFzZSAmJgorCWdpdCByZWJhc2UgLS1tZXJnZSAmJgorCWdpdCByZXYtcGFyc2UgLS12ZXJpZnkgZGVmYXVsdC1iYXNlID5leHBlY3QgJiYKKwlnaXQgcmV2LXBhcnNlIGRlZmF1bHR+MSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZWZhdWx0IHRvIGNvbW1vbiBiYXNlIGluIEB7dXBzdHJlYW19cyByZWZsb2cgaWYgbm8gdXBzdHJlYW0gYXJnICgtLWFwcGx5KScgJworCWdpdCBjaGVja291dCAtQiBkZWZhdWx0LWJhc2UgbWFzdGVyICYmCisJZ2l0IGNoZWNrb3V0IC1CIGRlZmF1bHQgdG9waWMgJiYKKwlnaXQgY29uZmlnIGJyYW5jaC5kZWZhdWx0LnJlbW90ZSAuICYmCisJZ2l0IGNvbmZpZyBicmFuY2guZGVmYXVsdC5tZXJnZSByZWZzL2hlYWRzL2RlZmF1bHQtYmFzZSAmJgorCWdpdCByZWJhc2UgLS1hcHBseSAmJgorCWdpdCByZXYtcGFyc2UgLS12ZXJpZnkgZGVmYXVsdC1iYXNlID5leHBlY3QgJiYKKwlnaXQgcmV2LXBhcnNlIGRlZmF1bHR+MSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCWdpdCBjaGVja291dCBkZWZhdWx0LWJhc2UgJiYKKwlnaXQgcmVzZXQgLS1oYXJkIEhFQUReICYmCisJZ2l0IGNoZWNrb3V0IGRlZmF1bHQgJiYKKwlnaXQgcmViYXNlIC0tYXBwbHkgJiYKIAlnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IGRlZmF1bHQtYmFzZSA+ZXhwZWN0ICYmCiAJZ2l0IHJldi1wYXJzZSBkZWZhdWx0fjEgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKQEAgLTE5Miw5ICsyMjQsMTUgQEAKIAl0ZXN0X2NtcCBleHBlY3QgRAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLXEgaXMgcXVpZXQnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtLWFwcGx5IC1xIGlzIHF1aWV0JyAnCiAJZ2l0IGNoZWNrb3V0IC1iIHF1aWV0IHRvcGljICYmCi0JZ2l0IHJlYmFzZSAtcSBtYXN0ZXIgPm91dHB1dC5vdXQgMj4mMSAmJgorCWdpdCByZWJhc2UgLS1hcHBseSAtcSBtYXN0ZXIgPm91dHB1dC5vdXQgMj4mMSAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXRwdXQub3V0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtLW1lcmdlIC1xIGlzIHF1aWV0JyAnCisJZ2l0IGNoZWNrb3V0IC1CIHF1aWV0IHRvcGljICYmCisJZ2l0IHJlYmFzZSAtLW1lcmdlIC1xIG1hc3RlciA+b3V0cHV0Lm91dCAyPiYxICYmCiAJdGVzdF9tdXN0X2JlX2VtcHR5IG91dHB1dC5vdXQKICcKIApAQCAtMjc3LDcgKzMxNSw3IEBACiAJdGVzdF9jbXAgRnJvbV8ubXNnIG91dAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UtLWFtLnNoIGFuZCAtLXNob3ctY3VycmVudC1wYXRjaCcgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC0tYXBwbHkgYW5kIC0tc2hvdy1jdXJyZW50LXBhdGNoJyAnCiAJdGVzdF9jcmVhdGVfcmVwbyBjb25mbGljdC1hcHBseSAmJgogCSgKIAkJY2QgY29uZmxpY3QtYXBwbHkgJiYKQEAgLTI4NywxMiArMzI1LDQ4IEBACiAJCWVjaG8gdHdvID4+aW5pdC50ICYmCiAJCWdpdCBjb21taXQgLWEgLW0gdHdvICYmCiAJCWdpdCB0YWcgdHdvICYmCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1vbnRvIGluaXQgSEVBRF4gJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLWFwcGx5IC1mIC0tb250byBpbml0IEhFQUReICYmCiAJCUdJVF9UUkFDRT0xIGdpdCByZWJhc2UgLS1zaG93LWN1cnJlbnQtcGF0Y2ggPi9kZXYvbnVsbCAyPnN0ZGVyciAmJgogCQlncmVwICJzaG93LiokKGdpdCByZXYtcGFyc2UgdHdvKSIgc3RkZXJyCiAJKQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLS1hcHBseSBhbmQgLmdpdGF0dHJpYnV0ZXMnICcKKwl0ZXN0X2NyZWF0ZV9yZXBvIGF0dHJpYnV0ZXMgJiYKKwkoCisJCWNkIGF0dHJpYnV0ZXMgJiYKKwkJdGVzdF9jb21taXQgaW5pdCAmJgorCQlnaXQgY29uZmlnIGZpbHRlci50ZXN0LmNsZWFuICJzZWQgLWUgJ1wnJ3Mvc211ZGdlZC9jbGVhbi9nJ1wnJyIgJiYKKwkJZ2l0IGNvbmZpZyBmaWx0ZXIudGVzdC5zbXVkZ2UgInNlZCAtZSAnXCcncy9jbGVhbi9zbXVkZ2VkL2cnXCcnIiAmJgorCisJCXRlc3RfY29tbWl0IHNlY29uZCAmJgorCQlnaXQgY2hlY2tvdXQgLWIgdGVzdCBIRUFEXiAmJgorCisJCWVjaG8gIioudHh0IGZpbHRlcj10ZXN0IiA+LmdpdGF0dHJpYnV0ZXMgJiYKKwkJZ2l0IGFkZCAuZ2l0YXR0cmlidXRlcyAmJgorCQl0ZXN0X2NvbW1pdCB0aGlyZCAmJgorCisJCWVjaG8gIlRoaXMgdGV4dCBpcyBzbXVkZ2VkLiIgPmEudHh0ICYmCisJCWdpdCBhZGQgYS50eHQgJiYKKwkJdGVzdF9jb21taXQgZm91cnRoICYmCisKKwkJZ2l0IGNoZWNrb3V0IC1iIHJlbW92YWwgSEVBRF4gJiYKKwkJZ2l0IHJtIC5naXRhdHRyaWJ1dGVzICYmCisJCWdpdCBhZGQgLXUgJiYKKwkJdGVzdF9jb21taXQgZmlmdGggJiYKKwkJZ2l0IGNoZXJyeS1waWNrIHRlc3QgJiYKKworCQlnaXQgY2hlY2tvdXQgdGVzdCAmJgorCQlnaXQgcmViYXNlIG1hc3RlciAmJgorCQlncmVwICJzbXVkZ2VkIiBhLnR4dCAmJgorCisJCWdpdCBjaGVja291dCByZW1vdmFsICYmCisJCWdpdCByZXNldCAtLWhhcmQgJiYKKwkJZ2l0IHJlYmFzZSBtYXN0ZXIgJiYKKwkJZ3JlcCAiY2xlYW4iIGEudHh0CisJKQorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UtLW1lcmdlLnNoIGFuZCAtLXNob3ctY3VycmVudC1wYXRjaCcgJwogCXRlc3RfY3JlYXRlX3JlcG8gY29uZmxpY3QtbWVyZ2UgJiYKIAkoCkBAIC0zMTEsNCArMzg1LDM4IEBACiAJKQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLWMgcmViYXNlLnVzZUJ1aWx0aW49ZmFsc2Ugd2FybmluZycgJworCWV4cGVjdGVkPSJyZWJhc2UudXNlQnVpbHRpbiBzdXBwb3J0IGhhcyBiZWVuIHJlbW92ZWQiICYmCisKKwkjIE9ubHkgd2FybiB3aGVuIHRoZSBsZWdhY3kgcmViYXNlIGlzIHJlcXVlc3RlZC4uLgorCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyByZWJhc2UudXNlQnVpbHRpbj1mYWxzZSByZWJhc2UgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICIkZXhwZWN0ZWQiIGVyciAmJgorCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVEVTVF9SRUJBU0VfVVNFX0JVSUxUSU49ZmFsc2UgZ2l0IHJlYmFzZSAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgIiRleHBlY3RlZCIgZXJyICYmCisKKwkjIC4uLm5vdCB3aGVuIHdlIHdvdWxkIGhhdmUgdXNlZCB0aGUgYnVpbHQtaW4gYW55d2F5CisJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIHJlYmFzZS51c2VCdWlsdGluPXRydWUgcmViYXNlIDI+ZXJyICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGVyciAmJgorCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVEVTVF9SRUJBU0VfVVNFX0JVSUxUSU49dHJ1ZSBnaXQgcmViYXNlIDI+ZXJyICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzd2l0Y2ggdG8gYnJhbmNoIGNoZWNrZWQgb3V0IGhlcmUnICcKKwlnaXQgY2hlY2tvdXQgbWFzdGVyICYmCisJZ2l0IHJlYmFzZSBtYXN0ZXIgbWFzdGVyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N3aXRjaCB0byBicmFuY2ggbm90IGNoZWNrZWQgb3V0JyAnCisJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgorCWdpdCBicmFuY2ggb3RoZXIgJiYKKwlnaXQgcmViYXNlIG1hc3RlciBvdGhlcgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWZ1c2UgdG8gc3dpdGNoIHRvIGJyYW5jaCBjaGVja2VkIG91dCBlbHNld2hlcmUnICcKKwlnaXQgY2hlY2tvdXQgbWFzdGVyICYmCisJZ2l0IHdvcmt0cmVlIGFkZCB3dCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyB3dCByZWJhc2UgbWFzdGVyIG1hc3RlciAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgImFscmVhZHkgY2hlY2tlZCBvdXQiIGVycgorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDM0MDEtcmViYXNlLWFuZC1hbS1yZW5hbWUuc2ggYi90L3QzNDAxLXJlYmFzZS1hbmQtYW0tcmVuYW1lLnNoCmluZGV4IGUwYjUxMTEuLmYxOGJhZTkgMTAwNzU1Ci0tLSBhL3QvdDM0MDEtcmViYXNlLWFuZC1hbS1yZW5hbWUuc2gKKysrIGIvdC90MzQwMS1yZWJhc2UtYW5kLWFtLXJlbmFtZS5zaApAQCAtNDIsNyArNDIsNyBAQAogCQlnaXQgY2hlY2tvdXQgQl4wICYmCiAKIAkJc2V0X2Zha2VfZWRpdG9yICYmCi0JCUZBS0VfTElORVM9IjEiIGdpdCByZWJhc2UgLS1pbnRlcmFjdGl2ZSBBICYmCisJCUZBS0VfTElORVM9IjEiIGdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgcmViYXNlIC0taW50ZXJhY3RpdmUgQSAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDUgb3V0ICYmCkBAIC01MiwxMyArNTIsMTMgQEAKIAkpCiAnCiAKLXRlc3RfZXhwZWN0X2ZhaWx1cmUgJ3JlYmFzZSAoYW0pOiBkaXJlY3RvcnkgcmVuYW1lIGRldGVjdGVkJyAnCit0ZXN0X2V4cGVjdF9mYWlsdXJlICdyZWJhc2UgLS1hcHBseTogZGlyZWN0b3J5IHJlbmFtZSBkZXRlY3RlZCcgJwogCSgKIAkJY2QgZGlyLXJlbmFtZSAmJgogCiAJCWdpdCBjaGVja291dCBCXjAgJiYKIAotCQlnaXQgcmViYXNlIEEgJiYKKwkJZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSByZWJhc2UgLS1hcHBseSBBICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gNSBvdXQgJiYKQEAgLTc0LDcgKzc0LDcgQEAKIAogCQlnaXQgY2hlY2tvdXQgQl4wICYmCiAKLQkJZ2l0IHJlYmFzZSAtLW1lcmdlIEEgJiYKKwkJZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSByZWJhc2UgLS1tZXJnZSBBICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gNSBvdXQgJiYKQEAgLTkyLDcgKzkyLDcgQEAKIAogCQlnaXQgZm9ybWF0LXBhdGNoIC0xIEIgJiYKIAotCQlnaXQgYW0gLS0zd2F5IDAwMDEqLnBhdGNoICYmCisJCWdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgYW0gLS0zd2F5IDAwMDEqLnBhdGNoICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gNSBvdXQgJiYKZGlmZiAtLWdpdCBhL3QvdDM0MDMtcmViYXNlLXNraXAuc2ggYi90L3QzNDAzLXJlYmFzZS1za2lwLnNoCmluZGV4IDFmNTEyMmIuLmE5Mjc3NzQgMTAwNzU1Ci0tLSBhL3QvdDM0MDMtcmViYXNlLXNraXAuc2gKKysrIGIvdC90MzQwMy1yZWJhc2Utc2tpcC5zaApAQCAtNyw2ICs3LDggQEAKIAogLiAuL3Rlc3QtbGliLnNoCiAKKy4gIiRURVNUX0RJUkVDVE9SWSIvbGliLXJlYmFzZS5zaAorCiAjIHdlIGFzc3VtZSB0aGUgZGVmYXVsdCBnaXQgYW0gLTMgLS1za2lwIHN0cmF0ZWd5IGlzIHRlc3RlZCBpbmRlcGVuZGVudGx5CiAjIGFuZCBhbHdheXMgd29ya3MgOikKIApAQCAtMjAsNiArMjIsMjAgQEAKIAlnaXQgY29tbWl0IC1hIC1tICJoZWxsbyB3b3JsZCIgJiYKIAllY2hvIGdvb2RieWUgPj4gaGVsbG8gJiYKIAlnaXQgY29tbWl0IC1hIC1tICJnb29kYnllIiAmJgorCWdpdCB0YWcgZ29vZGJ5ZSAmJgorCisJZ2l0IGNoZWNrb3V0IC0tZGV0YWNoICYmCisJZ2l0IGNoZWNrb3V0IEhFQUReIC4gJiYKKwl0ZXN0X3RpY2sgJiYKKwlnaXQgY29tbWl0IC1tIHJldmVydGVkLWdvb2RieWUgJiYKKwlnaXQgdGFnIHJldmVydGVkLWdvb2RieWUgJiYKKwlnaXQgY2hlY2tvdXQgZ29vZGJ5ZSAmJgorCXRlc3RfdGljayAmJgorCUdJVF9BVVRIT1JfTkFNRT0iQW5vdGhlciBBdXRob3IiIFwKKwkJR0lUX0FVVEhPUl9FTUFJTD0iYW5vdGhlci5hdXRob3JAZXhhbXBsZS5jb20iIFwKKwkJZ2l0IGNvbW1pdCAtLWFtZW5kIC0tbm8tZWRpdCAtbSBhbWVuZGVkLWdvb2RieWUgJiYKKwl0ZXN0X3RpY2sgJiYKKwlnaXQgdGFnIGFtZW5kZWQtZ29vZGJ5ZSAmJgogCiAJZ2l0IGNoZWNrb3V0IC1mIHNraXAtcmVmZXJlbmNlICYmCiAJZWNobyBtb28gPiBoZWxsbyAmJgpAQCAtNzYsNCArOTIsOTkgQEAKIAogdGVzdF9kZWJ1ZyAnZ2l0ayAtLWFsbCAmIHNsZWVwIDEnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvcnJlY3QgYWR2aWNlIHVwb24gcGlja2luZyBlbXB0eSBjb21taXQnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZWJhc2UgLS1hYm9ydCIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC1pIC0tb250byBnb29kYnllIFwKKwkJYW1lbmRlZC1nb29kYnllXiBhbWVuZGVkLWdvb2RieWUgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJwcmV2aW91cyBjaGVycnktcGljayBpcyBub3cgZW1wdHkiIGVyciAmJgorCXRlc3RfaTE4bmdyZXAgImdpdCByZWJhc2UgLS1za2lwIiBlcnIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0ICYmCisJdGVzdF9pMThuZ3JlcCAiZ2l0IHJlYmFzZSAtLXNraXAiIGVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3JyZWN0IGF1dGhvcnNoaXAgd2hlbiBjb21taXR0aW5nIGVtcHR5IHBpY2snICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZWJhc2UgLS1hYm9ydCIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC1pIC0tb250byBnb29kYnllIFwKKwkJYW1lbmRlZC1nb29kYnllXiBhbWVuZGVkLWdvb2RieWUgJiYKKwlnaXQgY29tbWl0IC0tYWxsb3ctZW1wdHkgJiYKKwlnaXQgbG9nIC0tcHJldHR5PWZvcm1hdDoiJWFuIDwlYWU+JW4lYWQlQiIgLTEgYW1lbmRlZC1nb29kYnllID5leHBlY3QgJiYKKwlnaXQgbG9nIC0tcHJldHR5PWZvcm1hdDoiJWFuIDwlYWU+JW4lYWQlQiIgLTEgSEVBRCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3JyZWN0IGFkdmljZSB1cG9uIHJld29yZGluZyBlbXB0eSBjb21taXQnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZWJhc2UgLS1hYm9ydCIgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0icmV3b3JkIDEiIGdpdCByZWJhc2UgLWkgXAorCQkJLS1vbnRvIGdvb2RieWUgYW1lbmRlZC1nb29kYnllXiBhbWVuZGVkLWdvb2RieWUgMj5lcnIKKwkpICYmCisJdGVzdF9pMThuZ3JlcCAicHJldmlvdXMgY2hlcnJ5LXBpY2sgaXMgbm93IGVtcHR5IiBlcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJnaXQgcmViYXNlIC0tc2tpcCIgZXJyICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbW1pdCAmJgorCXRlc3RfaTE4bmdyZXAgImdpdCByZWJhc2UgLS1za2lwIiBlcnIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29ycmVjdCBhZHZpY2UgdXBvbiBlZGl0aW5nIGVtcHR5IGNvbW1pdCcgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlYmFzZSAtLWFib3J0IiAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0xJTkVTPSJlZGl0IDEiIGdpdCByZWJhc2UgLWkgXAorCQkJLS1vbnRvIGdvb2RieWUgYW1lbmRlZC1nb29kYnllXiBhbWVuZGVkLWdvb2RieWUgMj5lcnIKKwkpICYmCisJdGVzdF9pMThuZ3JlcCAicHJldmlvdXMgY2hlcnJ5LXBpY2sgaXMgbm93IGVtcHR5IiBlcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJnaXQgcmViYXNlIC0tc2tpcCIgZXJyICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbW1pdCAmJgorCXRlc3RfaTE4bmdyZXAgImdpdCByZWJhc2UgLS1za2lwIiBlcnIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29ycmVjdCBhZHZpY2UgdXBvbiBjaGVycnktcGlja2luZyBhbiBlbXB0eSBjb21taXQgZHVyaW5nIGEgcmViYXNlJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmViYXNlIC0tYWJvcnQiICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZW52IEZBS0VfTElORVM9IjEgZXhlY19naXRfY2hlcnJ5LXBpY2tfYW1lbmRlZC1nb29kYnllIiBcCisJCQlnaXQgcmViYXNlIC1pIGdvb2RieWVeIGdvb2RieWUgMj5lcnIKKwkpICYmCisJdGVzdF9pMThuZ3JlcCAicHJldmlvdXMgY2hlcnJ5LXBpY2sgaXMgbm93IGVtcHR5IiBlcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJnaXQgY2hlcnJ5LXBpY2sgLS1za2lwIiBlcnIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0IDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAiZ2l0IGNoZXJyeS1waWNrIC0tc2tpcCIgZXJyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvcnJlY3QgYWR2aWNlIHVwb24gbXVsdGkgY2hlcnJ5LXBpY2sgcGlja2luZyBhbiBlbXB0eSBjb21taXQgZHVyaW5nIGEgcmViYXNlJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmViYXNlIC0tYWJvcnQiICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZW52IEZBS0VfTElORVM9IjEgZXhlY19naXRfY2hlcnJ5LXBpY2tfZ29vZGJ5ZV9hbWVuZGVkLWdvb2RieWUiIFwKKwkJCWdpdCByZWJhc2UgLWkgZ29vZGJ5ZV5eIGdvb2RieWUgMj5lcnIKKwkpICYmCisJdGVzdF9pMThuZ3JlcCAicHJldmlvdXMgY2hlcnJ5LXBpY2sgaXMgbm93IGVtcHR5IiBlcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJnaXQgY2hlcnJ5LXBpY2sgLS1za2lwIiBlcnIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0IDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAiZ2l0IGNoZXJyeS1waWNrIC0tc2tpcCIgZXJyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZpeHVwIHRoYXQgZW1wdGllcyBjb21taXQgZmFpbHMnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZWJhc2UgLS1hYm9ydCIgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iMSBmaXh1cCAyIiBnaXQgcmViYXNlIC1pIFwKKwkJCWdvb2RieWVeIHJldmVydGVkLWdvb2RieWUKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NxdWFzaCB0aGF0IGVtcHRpZXMgY29tbWl0IGZhaWxzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmViYXNlIC0tYWJvcnQiICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZW52IEZBS0VfTElORVM9IjEgc3F1YXNoIDIiIGdpdCByZWJhc2UgLWkgXAorCQkJZ29vZGJ5ZV4gcmV2ZXJ0ZWQtZ29vZGJ5ZQorCSkKKycKKworIyBNdXN0IGJlIHRoZSBsYXN0IHRlc3QgaW4gdGhpcyBmaWxlCit0ZXN0X2V4cGVjdF9zdWNjZXNzICckRURJVE9SIGFuZCBmcmllbmRzIGFyZSB1bmNoYW5nZWQnICcKKwl0ZXN0X2VkaXRvcl91bmNoYW5nZWQKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzNDA0LXJlYmFzZS1pbnRlcmFjdGl2ZS5zaCBiL3QvdDM0MDQtcmViYXNlLWludGVyYWN0aXZlLnNoCmluZGV4IDdhNDQwZTAuLjRhN2QyMWYgMTAwNzU1Ci0tLSBhL3QvdDM0MDQtcmViYXNlLWludGVyYWN0aXZlLnNoCisrKyBiL3QvdDM0MDQtcmViYXNlLWludGVyYWN0aXZlLnNoCkBAIC0yOSw5ICsyOSw2IEBACiAKIC4gIiRURVNUX0RJUkVDVE9SWSIvbGliLXJlYmFzZS5zaAogCi0jIFdBUk5JTkc6IE1vZGlmaWNhdGlvbnMgdG8gdGhlIGluaXRpYWwgcmVwb3NpdG9yeSBjYW4gY2hhbmdlIHRoZSBTSEEgSUQgdXNlZAotIyBpbiB0aGUgZXhwZWN0MiBmaWxlIGZvciB0aGUgJ3N0b3Agb24gY29uZmxpY3RpbmcgcGljaycgdGVzdC4KLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICcKIAl0ZXN0X2NvbW1pdCBBIGZpbGUxICYmCiAJdGVzdF9jb21taXQgQiBmaWxlMSAmJgpAQCAtNzUsMTMgKzcyLDE2IEBACiAJdGVzdF9saW5lX2NvdW50ID0gNiBhY3R1YWwKICcKIAotY2F0ID4gZXhwZWN0IDw8RU9GCi1lcnJvcjogbm90aGluZyB0byBkbwotRU9GCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtaSB3aXRoIGVtcHR5IEhFQUQnICcKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iMSBleGVjX3RydWUiIGdpdCByZWJhc2UgLWkgSEVBRF4gPmFjdHVhbCAyPiYxICYmCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLWkgd2l0aCBlbXB0eSB0b2RvIGxpc3QnICcKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJZXJyb3I6IG5vdGhpbmcgdG8gZG8KKwlFT0YKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iIyIgXAorCQkJZ2l0IHJlYmFzZSAtaSBIRUFEXiA+b3V0cHV0IDI+JjEKKwkpICYmCisJdGFpbCAtbiAxIG91dHB1dCA+YWN0dWFsICYmICAjIElnbm9yZSBvdXRwdXQgYWJvdXQgY2hhbmdpbmcgdG9kbyBsaXN0CiAJdGVzdF9pMThuY21wIGV4cGVjdCBhY3R1YWwKICcKIApAQCAtMTQwLDEwMCArMTQwLDEyNSBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLWkgd2l0aCB0aGUgZXhlYyBjb21tYW5kIGNoZWNrcyB0cmVlIGNsZWFubmVzcycgJwogCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iZXhlY19lY2hvX2Zvb18+ZmlsZTEgMSIgZ2l0IHJlYmFzZSAtaSBIRUFEXiAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0xJTkVTPSJleGVjX2VjaG9fZm9vXz5maWxlMSAxIiBcCisJCQlnaXQgcmViYXNlIC1pIEhFQUReCisJKSAmJgogCXRlc3RfY21wX3JldiBtYXN0ZXJeIEhFQUQgJiYKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAteCB3aXRoIGVtcHR5IGNvbW1hbmQgZmFpbHMnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZWJhc2UgLS1hYm9ydCB8fDoiICYmCisJdGVzdF9tdXN0X2ZhaWwgZW52IGdpdCByZWJhc2UgLXggIiIgQCAyPmFjdHVhbCAmJgorCXRlc3Rfd3JpdGVfbGluZXMgImVycm9yOiBlbXB0eSBleGVjIGNvbW1hbmQiID5leHBlY3RlZCAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3RlZCBhY3R1YWwgJiYKKwl0ZXN0X211c3RfZmFpbCBlbnYgZ2l0IHJlYmFzZSAteCAiICIgQCAyPmFjdHVhbCAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3RlZCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC14IHdpdGggbmV3bGluZSBpbiBjb21tYW5kIGZhaWxzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmViYXNlIC0tYWJvcnQgfHw6IiAmJgorCXRlc3RfbXVzdF9mYWlsIGVudiBnaXQgcmViYXNlIC14ICJhJHtMRn1iIiBAIDI+YWN0dWFsICYmCisJdGVzdF93cml0ZV9saW5lcyAiZXJyb3I6IGV4ZWMgY29tbWFuZHMgY2Fubm90IGNvbnRhaW4gbmV3bGluZXMiIFwKKwkJCSA+ZXhwZWN0ZWQgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0ZWQgYWN0dWFsCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtaSB3aXRoIGV4ZWMgb2YgaW5leGlzdGVudCBjb21tYW5kJyAnCiAJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlYmFzZSAtLWFib3J0IiAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0xJTkVTPSJleGVjX3RoaXMtY29tbWFuZC1kb2VzLW5vdC1leGlzdCAxIiBcCi0JZ2l0IHJlYmFzZSAtaSBIRUFEXiA+YWN0dWFsIDI+JjEgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iZXhlY190aGlzLWNvbW1hbmQtZG9lcy1ub3QtZXhpc3QgMSIgXAorCQkJZ2l0IHJlYmFzZSAtaSBIRUFEXiA+YWN0dWFsIDI+JjEKKwkpICYmCiAJISBncmVwICJNYXliZSBnaXQtcmViYXNlIGlzIGJyb2tlbiIgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ltcGxpY2l0IGludGVyYWN0aXZlIHJlYmFzZSBkb2VzIG5vdCBpbnZva2Ugc2VxdWVuY2UgZWRpdG9yJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmViYXNlIC0tYWJvcnQgfHw6IiAmJgorCUdJVF9TRVFVRU5DRV9FRElUT1I9ImVjaG8gYmFkID4iIGdpdCByZWJhc2UgLXgiZWNobyBvbmUiIEBeCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25vIGNoYW5nZXMgYXJlIGEgbm9wJyAnCiAJZ2l0IGNoZWNrb3V0IGJyYW5jaDIgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKIAlnaXQgcmViYXNlIC1pIEYgJiYKIAl0ZXN0ICIkKGdpdCBzeW1ib2xpYy1yZWYgLXEgSEVBRCkiID0gInJlZnMvaGVhZHMvYnJhbmNoMiIgJiYKLQl0ZXN0ICQoZ2l0IHJldi1wYXJzZSBJKSA9ICQoZ2l0IHJldi1wYXJzZSBIRUFEKQorCXRlc3RfY21wX3JldiBJIEhFQUQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdCB0aGUgW2JyYW5jaF0gb3B0aW9uJyAnCiAJZ2l0IGNoZWNrb3V0IC1iIGRlYWQtZW5kICYmCiAJZ2l0IHJtIGZpbGU2ICYmCiAJZ2l0IGNvbW1pdCAtbSAic3RvcCBoZXJlIiAmJgotCXNldF9mYWtlX2VkaXRvciAmJgogCWdpdCByZWJhc2UgLWkgRiBicmFuY2gyICYmCiAJdGVzdCAiJChnaXQgc3ltYm9saWMtcmVmIC1xIEhFQUQpIiA9ICJyZWZzL2hlYWRzL2JyYW5jaDIiICYmCi0JdGVzdCAkKGdpdCByZXYtcGFyc2UgSSkgPSAkKGdpdCByZXYtcGFyc2UgYnJhbmNoMikgJiYKLQl0ZXN0ICQoZ2l0IHJldi1wYXJzZSBJKSA9ICQoZ2l0IHJldi1wYXJzZSBIRUFEKQorCXRlc3RfY21wX3JldiBJIGJyYW5jaDIgJiYKKwl0ZXN0X2NtcF9yZXYgSSBIRUFECiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Rlc3QgLS1vbnRvIDxicmFuY2g+JyAnCiAJZ2l0IGNoZWNrb3V0IC1iIHRlc3Qtb250byBicmFuY2gyICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCiAJZ2l0IHJlYmFzZSAtaSAtLW9udG8gYnJhbmNoMSBGICYmCiAJdGVzdCAiJChnaXQgc3ltYm9saWMtcmVmIC1xIEhFQUQpIiA9ICJyZWZzL2hlYWRzL3Rlc3Qtb250byIgJiYKLQl0ZXN0ICQoZ2l0IHJldi1wYXJzZSBIRUFEXikgPSAkKGdpdCByZXYtcGFyc2UgYnJhbmNoMSkgJiYKLQl0ZXN0ICQoZ2l0IHJldi1wYXJzZSBJKSA9ICQoZ2l0IHJldi1wYXJzZSBicmFuY2gyKQorCXRlc3RfY21wX3JldiBIRUFEXiBicmFuY2gxICYmCisJdGVzdF9jbXBfcmV2IEkgYnJhbmNoMgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2Ugb24gdG9wIG9mIGEgbm9uLWNvbmZsaWN0aW5nIGNvbW1pdCcgJwogCWdpdCBjaGVja291dCBicmFuY2gxICYmCiAJZ2l0IHRhZyBvcmlnaW5hbC1icmFuY2gxICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCiAJZ2l0IHJlYmFzZSAtaSBicmFuY2gyICYmCiAJdGVzdCBmaWxlNiA9ICQoZ2l0IGRpZmYgLS1uYW1lLW9ubHkgb3JpZ2luYWwtYnJhbmNoMSkgJiYKIAl0ZXN0ICIkKGdpdCBzeW1ib2xpYy1yZWYgLXEgSEVBRCkiID0gInJlZnMvaGVhZHMvYnJhbmNoMSIgJiYKLQl0ZXN0ICQoZ2l0IHJldi1wYXJzZSBJKSA9ICQoZ2l0IHJldi1wYXJzZSBicmFuY2gyKSAmJgotCXRlc3QgJChnaXQgcmV2LXBhcnNlIEkpID0gJChnaXQgcmV2LXBhcnNlIEhFQUR+MikKKwl0ZXN0X2NtcF9yZXYgSSBicmFuY2gyICYmCisJdGVzdF9jbXBfcmV2IEkgSEVBRH4yCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlZmxvZyBmb3IgdGhlIGJyYW5jaCBzaG93cyBzdGF0ZSBiZWZvcmUgcmViYXNlJyAnCi0JdGVzdCAkKGdpdCByZXYtcGFyc2UgYnJhbmNoMUB7MX0pID0gJChnaXQgcmV2LXBhcnNlIG9yaWdpbmFsLWJyYW5jaDEpCisJdGVzdF9jbXBfcmV2IGJyYW5jaDFAezF9IG9yaWdpbmFsLWJyYW5jaDEKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVmbG9nIGZvciB0aGUgYnJhbmNoIHNob3dzIGNvcnJlY3QgZmluaXNoIG1lc3NhZ2UnICcKLQlwcmludGYgInJlYmFzZSAtaSAoZmluaXNoKTogcmVmcy9oZWFkcy9icmFuY2gxIG9udG8gJXNcbiIgXAorCXByaW50ZiAicmViYXNlIChmaW5pc2gpOiByZWZzL2hlYWRzL2JyYW5jaDEgb250byAlc1xuIiBcCiAJCSIkKGdpdCByZXYtcGFyc2UgYnJhbmNoMikiID5leHBlY3RlZCAmJgogCWdpdCBsb2cgLWcgLS1wcmV0dHk9JWdzIC0xIHJlZnMvaGVhZHMvYnJhbmNoMSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2V4Y2hhbmdlIHR3byBjb21taXRzJyAnCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JRkFLRV9MSU5FUz0iMiAxIiBnaXQgcmViYXNlIC1pIEhFQUR+MiAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfTElORVM9IjIgMSIgZ2l0IHJlYmFzZSAtaSBIRUFEfjIKKwkpICYmCiAJdGVzdCBIID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUReIHwgc2VkIC1uZSBcJHApICYmCi0JdGVzdCBHID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLW5lIFwkcCkKKwl0ZXN0IEcgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IHNlZCAtbmUgXCRwKSAmJgorCWJsb2IxPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUReOmZpbGUxKSAmJgorCWJsb2IyPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUQ6ZmlsZTEpICYmCisJY29tbWl0PSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUQpCiAnCiAKLWNhdCA+IGV4cGVjdCA8PCBFT0YKLWRpZmYgLS1naXQgYS9maWxlMSBiL2ZpbGUxCi1pbmRleCBmNzBmMTBlLi5mZDc5MjM1IDEwMDY0NAotLS0tIGEvZmlsZTEKLSsrKyBiL2ZpbGUxCi1AQCAtMSArMSBAQAotLUEKLStHCi1FT0YKLQotY2F0ID4gZXhwZWN0MiA8PCBFT0YKLTw8PDw8PDwgSEVBRAotRAotPT09PT09PQotRwotPj4+Pj4+PiA1ZDE4ZTU0Li4uIEcKLUVPRgotCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdG9wIG9uIGNvbmZsaWN0aW5nIHBpY2snICcKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwlkaWZmIC0tZ2l0IGEvZmlsZTEgYi9maWxlMQorCWluZGV4ICRibG9iMS4uJGJsb2IyIDEwMDY0NAorCS0tLSBhL2ZpbGUxCisJKysrIGIvZmlsZTEKKwlAQCAtMSArMSBAQAorCS1BCisJK0cKKwlFT0YKKwljYXQgPmV4cGVjdDIgPDwtRU9GICYmCisJPDw8PDw8PCBIRUFECisJRAorCT09PT09PT0KKwlHCisJPj4+Pj4+PiAkY29tbWl0Li4uIEcKKwlFT0YKIAlnaXQgdGFnIG5ldy1icmFuY2gxICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtaSBtYXN0ZXIgJiYKIAl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgSEVBRH4zKSIgPSAiJChnaXQgcmV2LXBhcnNlIG1hc3RlcikiICYmCiAJdGVzdF9jbXAgZXhwZWN0IC5naXQvcmViYXNlLW1lcmdlL3BhdGNoICYmCkBAIC0yNTQsNyArMjc5LDcgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYWJvcnQnICcKIAlnaXQgcmViYXNlIC0tYWJvcnQgJiYKLQl0ZXN0ICQoZ2l0IHJldi1wYXJzZSBuZXctYnJhbmNoMSkgPSAkKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKwl0ZXN0X2NtcF9yZXYgbmV3LWJyYW5jaDEgSEVBRCAmJgogCXRlc3QgIiQoZ2l0IHN5bWJvbGljLXJlZiAtcSBIRUFEKSIgPSAicmVmcy9oZWFkcy9icmFuY2gxIiAmJgogCXRlc3RfcGF0aF9pc19taXNzaW5nIC5naXQvcmViYXNlLW1lcmdlCiAnCkBAIC0yNjIsNyArMjg3LDYgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Fib3J0IHdpdGggZXJyb3Igd2hlbiBuZXcgYmFzZSBjYW5ub3QgYmUgY2hlY2tlZCBvdXQnICcKIAlnaXQgcm0gLS1jYWNoZWQgZmlsZTEgJiYKIAlnaXQgY29tbWl0IC1tICJyZW1vdmUgZmlsZSBpbiBiYXNlIiAmJgotCXNldF9mYWtlX2VkaXRvciAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLWkgbWFzdGVyID4gb3V0cHV0IDI+JjEgJiYKIAl0ZXN0X2kxOG5ncmVwICJUaGUgZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgY2hlY2tvdXQ6IiBcCiAJCW91dHB1dCAmJgpAQCAtMjc3LDcgKzMwMSw2IEBACiAJdGVzdF90aWNrICYmCiAJR0lUX0FVVEhPUl9OQU1FPSJUd2VycCBTbm9nIiBnaXQgY29tbWl0IC1tICJkaWZmZXJlbnQgYXV0aG9yIiAmJgogCWdpdCB0YWcgdHdlcnAgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKIAlnaXQgcmViYXNlIC1pIC0tb250byBtYXN0ZXIgSEVBRF4gJiYKIAlnaXQgc2hvdyBIRUFEIHwgZ3JlcCAiXkF1dGhvcjogVHdlcnAgU25vZyIKICcKQEAgLTI5NSwxMiArMzE4LDExIEBACiAJdGVzdF9jb21taXQgYiBjb25mbGljdCBiIGNvbmZsaWN0LWIgJiYKIAlHSVRfQVVUSE9SX05BTUU9JG9HSVRfQVVUSE9SX05BTUUgJiYKIAotCXNldF9mYWtlX2VkaXRvciAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLWkgY29uZmxpY3QtYSAmJgogCWVjaG8gcmVzb2x2ZWQgPmNvbmZsaWN0ICYmCiAJZ2l0IGFkZCBjb25mbGljdCAmJgogCWdpdCByZWJhc2UgLS1jb250aW51ZSAmJgotCXRlc3QgJChnaXQgcmV2LXBhcnNlIGNvbmZsaWN0LWFeMCkgPSAkKGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCisJdGVzdF9jbXBfcmV2IGNvbmZsaWN0LWFeMCBIRUFEXiAmJgogCWdpdCBzaG93ID5vdXQgJiYKIAlncmVwIEF0dHJpYnV0ZU1lIG91dAogJwpAQCAtMzExLDExICszMzMsMTMgQEAKIAl0ZXN0X3RpY2sgJiYKIAlHSVRfQVVUSE9SX05BTUU9Ik5pdGZvbCIgZ2l0IGNvbW1pdCAtbSAibml0Zm9sIiBmaWxlNyAmJgogCWVjaG8gIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiIgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQlGQUtFX0xJTkVTPSIxIHNxdWFzaCAyIiBFWFBFQ1RfSEVBREVSX0NPVU5UPTIgXAotCQlnaXQgcmViYXNlIC1pIC0tb250byBtYXN0ZXIgSEVBRH4yICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iMSBzcXVhc2ggMiIgRVhQRUNUX0hFQURFUl9DT1VOVD0yIFwKKwkJCWdpdCByZWJhc2UgLWkgLS1vbnRvIG1hc3RlciBIRUFEfjIKKwkpICYmCiAJdGVzdCBCID0gJChjYXQgZmlsZTcpICYmCi0JdGVzdCAkKGdpdCByZXYtcGFyc2UgSEVBRF4pID0gJChnaXQgcmV2LXBhcnNlIG1hc3RlcikKKwl0ZXN0X2NtcF9yZXYgSEVBRF4gbWFzdGVyCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JldGFpbiBhdXRob3JzaGlwIHdoZW4gc3F1YXNoaW5nJyAnCkBAIC0zMjQsNyArMzQ4LDYgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBSRUJBU0VfUCAnLXAgaGFuZGxlcyAibm8gY2hhbmdlcyIgZ3JhY2VmdWxseScgJwogCUhFQUQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCiAJZ2l0IHJlYmFzZSAtaSAtcCBIRUFEXiAmJgogCWdpdCB1cGRhdGUtaW5kZXggLS1yZWZyZXNoICYmCiAJZ2l0IGRpZmYtZmlsZXMgLS1xdWlldCAmJgpAQCAtMzM0LDggKzM1NywxMCBAQAogCiB0ZXN0X2V4cGVjdF9mYWlsdXJlIFJFQkFTRV9QICdleGNoYW5nZSB0d28gY29tbWl0cyB3aXRoIC1wJyAnCiAJZ2l0IGNoZWNrb3V0IEggJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQlGQUtFX0xJTkVTPSIyIDEiIGdpdCByZWJhc2UgLWkgLXAgSEVBRH4yICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iMiAxIiBnaXQgcmViYXNlIC1pIC1wIEhFQUR+MgorCSkgJiYKIAl0ZXN0IEggPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF4gfCBzZWQgLW5lIFwkcCkgJiYKIAl0ZXN0IEcgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IHNlZCAtbmUgXCRwKQogJwpAQCAtMzY5LDE0ICszOTQsMTMgQEAKIAlnaXQgY29tbWl0IC1tIE0gZmlsZTEgJiYKIAlnaXQgY2hlY2tvdXQgLWIgdG8tYmUtcmViYXNlZCAmJgogCXRlc3RfdGljayAmJgotCXNldF9mYWtlX2VkaXRvciAmJgogCWdpdCByZWJhc2UgLWkgLXAgLS1vbnRvIGJyYW5jaDEgbWFzdGVyICYmCiAJZ2l0IHVwZGF0ZS1pbmRleCAtLXJlZnJlc2ggJiYKIAlnaXQgZGlmZi1maWxlcyAtLXF1aWV0ICYmCiAJZ2l0IGRpZmYtaW5kZXggLS1xdWlldCAtLWNhY2hlZCBIRUFEIC0tICYmCi0JdGVzdCAkKGdpdCByZXYtcGFyc2UgSEVBRH42KSA9ICQoZ2l0IHJldi1wYXJzZSBicmFuY2gxKSAmJgotCXRlc3QgJChnaXQgcmV2LXBhcnNlIEhFQUR+NF4yKSA9ICQoZ2l0IHJldi1wYXJzZSB0by1iZS1wcmVzZXJ2ZWQpICYmCi0JdGVzdCAkKGdpdCByZXYtcGFyc2UgSEVBRF5eMl4pID0gJChnaXQgcmV2LXBhcnNlIEhFQUReXl4pICYmCisJdGVzdF9jbXBfcmV2IEhFQUR+NiBicmFuY2gxICYmCisJdGVzdF9jbXBfcmV2IEhFQUR+NF4yIHRvLWJlLXByZXNlcnZlZCAmJgorCXRlc3RfY21wX3JldiBIRUFEXl4yXiBIRUFEXl5eICYmCiAJdGVzdCAkKGdpdCBzaG93IEhFQUR+NTpmaWxlMSkgPSBCICYmCiAJdGVzdCAkKGdpdCBzaG93IEhFQUR+MzpmaWxlMSkgPSBDICYmCiAJdGVzdCAkKGdpdCBzaG93IEhFQUQ6ZmlsZTEpID0gRSAmJgpAQCAtMzg0LDggKzQwOCwxMCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIFJFQkFTRV9QICdlZGl0IGFuY2VzdG9yIHdpdGggLXAnICcKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQlGQUtFX0xJTkVTPSIxIDIgZWRpdCAzIDQiIGdpdCByZWJhc2UgLWkgLXAgSEVBRH4zICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iMSAyIGVkaXQgMyA0IiBnaXQgcmViYXNlIC1pIC1wIEhFQUR+MworCSkgJiYKIAllY2hvIDIgPiB1bnJlbGF0ZWQtZmlsZSAmJgogCXRlc3RfdGljayAmJgogCWdpdCBjb21taXQgLW0gTDItbW9kaWZpZWQgLS1hbWVuZCB1bnJlbGF0ZWQtZmlsZSAmJgpAQCAtMzk5LDE5ICs0MjUsMjAgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tY29udGludWUgdHJpZXMgdG8gY29tbWl0JyAnCiAJZ2l0IHJlc2V0IC0taGFyZCBEICYmCiAJdGVzdF90aWNrICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtaSAtLW9udG8gbmV3LWJyYW5jaDEgSEVBRF4gJiYKLQllY2hvIHJlc29sdmVkID4gZmlsZTEgJiYKLQlnaXQgYWRkIGZpbGUxICYmCi0JRkFLRV9DT01NSVRfTUVTU0FHRT0iY2hvdWV0dGUhIiBnaXQgcmViYXNlIC0tY29udGludWUgJiYKLQl0ZXN0ICQoZ2l0IHJldi1wYXJzZSBIRUFEXikgPSAkKGdpdCByZXYtcGFyc2UgbmV3LWJyYW5jaDEpICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtaSAtLW9udG8gbmV3LWJyYW5jaDEgSEVBRF4gJiYKKwkJZWNobyByZXNvbHZlZCA+IGZpbGUxICYmCisJCWdpdCBhZGQgZmlsZTEgJiYKKwkJRkFLRV9DT01NSVRfTUVTU0FHRT0iY2hvdWV0dGUhIiBnaXQgcmViYXNlIC0tY29udGludWUKKwkpICYmCisJdGVzdF9jbXBfcmV2IEhFQUReIG5ldy1icmFuY2gxICYmCiAJZ2l0IHNob3cgSEVBRCB8IGdyZXAgY2hvdWV0dGUKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyYm9zZSBmbGFnIGlzIGhlZWRlZCwgZXZlbiBhZnRlciAtLWNvbnRpbnVlJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCBtYXN0ZXJAezF9ICYmCiAJdGVzdF90aWNrICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtdiAtaSAtLW9udG8gbmV3LWJyYW5jaDEgSEVBRF4gJiYKIAllY2hvIHJlc29sdmVkID4gZmlsZTEgJiYKIAlnaXQgYWRkIGZpbGUxICYmCkBAIC00MjEsMTAgKzQ0OCwxMyBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIENfTE9DQUxFX09VVFBVVCAnbXVsdGktc3F1YXNoIG9ubHkgZmlyZXMgdXAgZWRpdG9yIG9uY2UnICcKIAliYXNlPSQoZ2l0IHJldi1wYXJzZSBIRUFEfjQpICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JRkFLRV9DT01NSVRfQU1FTkQ9Ik9OQ0UiIEZBS0VfTElORVM9IjEgc3F1YXNoIDIgc3F1YXNoIDMgc3F1YXNoIDQiIFwKLQkJRVhQRUNUX0hFQURFUl9DT1VOVD00IFwKLQkJZ2l0IHJlYmFzZSAtaSAkYmFzZSAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfQ09NTUlUX0FNRU5EPSJPTkNFIiBcCisJCQlGQUtFX0xJTkVTPSIxIHNxdWFzaCAyIHNxdWFzaCAzIHNxdWFzaCA0IiBcCisJCQlFWFBFQ1RfSEVBREVSX0NPVU5UPTQgXAorCQkJZ2l0IHJlYmFzZSAtaSAkYmFzZQorCSkgJiYKIAl0ZXN0ICRiYXNlID0gJChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgogCXRlc3QgMSA9ICQoZ2l0IHNob3cgfCBncmVwIE9OQ0UgfCB3YyAtbCkKICcKQEAgLTQzMiw5ICs0NjIsMTIgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgQ19MT0NBTEVfT1VUUFVUICdtdWx0aS1maXh1cCBkb2VzIG5vdCBmaXJlIHVwIGVkaXRvcicgJwogCWdpdCBjaGVja291dCAtYiBtdWx0aS1maXh1cCBFICYmCiAJYmFzZT0kKGdpdCByZXYtcGFyc2UgSEVBRH40KSAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfQ09NTUlUX0FNRU5EPSJORVZFUiIgRkFLRV9MSU5FUz0iMSBmaXh1cCAyIGZpeHVwIDMgZml4dXAgNCIgXAotCQlnaXQgcmViYXNlIC1pICRiYXNlICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9DT01NSVRfQU1FTkQ9Ik5FVkVSIiBcCisJCQlGQUtFX0xJTkVTPSIxIGZpeHVwIDIgZml4dXAgMyBmaXh1cCA0IiBcCisJCQlnaXQgcmViYXNlIC1pICRiYXNlCisJKSAmJgogCXRlc3QgJGJhc2UgPSAkKGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCiAJdGVzdCAwID0gJChnaXQgc2hvdyB8IGdyZXAgTkVWRVIgfCB3YyAtbCkgJiYKIAlnaXQgY2hlY2tvdXQgQHstMX0gJiYKQEAgLTQ0NCwxMiArNDc3LDE1IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb21taXQgbWVzc2FnZSB1c2VkIGFmdGVyIGNvbmZsaWN0JyAnCiAJZ2l0IGNoZWNrb3V0IC1iIGNvbmZsaWN0LWZpeHVwIGNvbmZsaWN0LWJyYW5jaCAmJgogCWJhc2U9JChnaXQgcmV2LXBhcnNlIEhFQUR+NCkgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iMSBmaXh1cCAzIGZpeHVwIDQiIGdpdCByZWJhc2UgLWkgJGJhc2UgJiYKLQllY2hvIHRocmVlID4gY29uZmxpY3QgJiYKLQlnaXQgYWRkIGNvbmZsaWN0ICYmCi0JRkFLRV9DT01NSVRfQU1FTkQ9Ik9OQ0UiIEVYUEVDVF9IRUFERVJfQ09VTlQ9MiBcCi0JCWdpdCByZWJhc2UgLS1jb250aW51ZSAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0xJTkVTPSIxIGZpeHVwIDMgZml4dXAgNCIgXAorCQkJZ2l0IHJlYmFzZSAtaSAkYmFzZSAmJgorCQllY2hvIHRocmVlID4gY29uZmxpY3QgJiYKKwkJZ2l0IGFkZCBjb25mbGljdCAmJgorCQlGQUtFX0NPTU1JVF9BTUVORD0iT05DRSIgRVhQRUNUX0hFQURFUl9DT1VOVD0yIFwKKwkJCWdpdCByZWJhc2UgLS1jb250aW51ZQorCSkgJiYKIAl0ZXN0ICRiYXNlID0gJChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgogCXRlc3QgMSA9ICQoZ2l0IHNob3cgfCBncmVwIE9OQ0UgfCB3YyAtbCkgJiYKIAlnaXQgY2hlY2tvdXQgQHstMX0gJiYKQEAgLTQ1OSwzMyArNDk1LDM4IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb21taXQgbWVzc2FnZSByZXRhaW5lZCBhZnRlciBjb25mbGljdCcgJwogCWdpdCBjaGVja291dCAtYiBjb25mbGljdC1zcXVhc2ggY29uZmxpY3QtYnJhbmNoICYmCiAJYmFzZT0kKGdpdCByZXYtcGFyc2UgSEVBRH40KSAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0xJTkVTPSIxIGZpeHVwIDMgc3F1YXNoIDQiIGdpdCByZWJhc2UgLWkgJGJhc2UgJiYKLQllY2hvIHRocmVlID4gY29uZmxpY3QgJiYKLQlnaXQgYWRkIGNvbmZsaWN0ICYmCi0JRkFLRV9DT01NSVRfQU1FTkQ9IlRXSUNFIiBFWFBFQ1RfSEVBREVSX0NPVU5UPTIgXAotCQlnaXQgcmViYXNlIC0tY29udGludWUgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iMSBmaXh1cCAzIHNxdWFzaCA0IiBcCisJCQlnaXQgcmViYXNlIC1pICRiYXNlICYmCisJCWVjaG8gdGhyZWUgPiBjb25mbGljdCAmJgorCQlnaXQgYWRkIGNvbmZsaWN0ICYmCisJCUZBS0VfQ09NTUlUX0FNRU5EPSJUV0lDRSIgRVhQRUNUX0hFQURFUl9DT1VOVD0yIFwKKwkJCWdpdCByZWJhc2UgLS1jb250aW51ZQorCSkgJiYKIAl0ZXN0ICRiYXNlID0gJChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgogCXRlc3QgMiA9ICQoZ2l0IHNob3cgfCBncmVwIFRXSUNFIHwgd2MgLWwpICYmCiAJZ2l0IGNoZWNrb3V0IEB7LTF9ICYmCiAJZ2l0IGJyYW5jaCAtRCBjb25mbGljdC1zcXVhc2gKICcKIAotY2F0ID4gZXhwZWN0LXNxdWFzaC1maXh1cCA8PCBFT0YKLUIKLQotRAotCi1PTkNFCi1FT0YKLQogdGVzdF9leHBlY3Rfc3VjY2VzcyBDX0xPQ0FMRV9PVVRQVVQgJ3NxdWFzaCBhbmQgZml4dXAgZ2VuZXJhdGUgY29ycmVjdCBsb2cgbWVzc2FnZXMnICcKKwljYXQgPmV4cGVjdC1zcXVhc2gtZml4dXAgPDwtXEVPRiAmJgorCUIKKworCUQKKworCU9OQ0UKKwlFT0YKIAlnaXQgY2hlY2tvdXQgLWIgc3F1YXNoLWZpeHVwIEUgJiYKIAliYXNlPSQoZ2l0IHJldi1wYXJzZSBIRUFEfjQpICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JRkFLRV9DT01NSVRfQU1FTkQ9Ik9OQ0UiIEZBS0VfTElORVM9IjEgZml4dXAgMiBzcXVhc2ggMyBmaXh1cCA0IiBcCi0JCUVYUEVDVF9IRUFERVJfQ09VTlQ9NCBcCi0JCWdpdCByZWJhc2UgLWkgJGJhc2UgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlGQUtFX0NPTU1JVF9BTUVORD0iT05DRSIgXAorCQkJRkFLRV9MSU5FUz0iMSBmaXh1cCAyIHNxdWFzaCAzIGZpeHVwIDQiIFwKKwkJCUVYUEVDVF9IRUFERVJfQ09VTlQ9NCBcCisJCQlnaXQgcmViYXNlIC1pICRiYXNlCisJKSAmJgogCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IHNlZCAtZSAxLC9eXCQvZCA+IGFjdHVhbC1zcXVhc2gtZml4dXAgJiYKIAl0ZXN0X2NtcCBleHBlY3Qtc3F1YXNoLWZpeHVwIGFjdHVhbC1zcXVhc2gtZml4dXAgJiYKIAlnaXQgY2F0LWZpbGUgY29tbWl0IEhFQURAezJ9IHwKQEAgLTQ5OSwxMCArNTQwLDEzIEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzIENfTE9DQUxFX09VVFBVVCAnc3F1YXNoIGlnbm9yZXMgY29tbWVudHMnICcKIAlnaXQgY2hlY2tvdXQgLWIgc2tpcC1jb21tZW50cyBFICYmCiAJYmFzZT0kKGdpdCByZXYtcGFyc2UgSEVBRH40KSAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfQ09NTUlUX0FNRU5EPSJPTkNFIiBGQUtFX0xJTkVTPSIjIDEgIyBzcXVhc2ggMiAjIHNxdWFzaCAzICMgc3F1YXNoIDQgIyIgXAotCQlFWFBFQ1RfSEVBREVSX0NPVU5UPTQgXAotCQlnaXQgcmViYXNlIC1pICRiYXNlICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9DT01NSVRfQU1FTkQ9Ik9OQ0UiIFwKKwkJCUZBS0VfTElORVM9IiMgMSAjIHNxdWFzaCAyICMgc3F1YXNoIDMgIyBzcXVhc2ggNCAjIiBcCisJCQlFWFBFQ1RfSEVBREVSX0NPVU5UPTQgXAorCQkJZ2l0IHJlYmFzZSAtaSAkYmFzZQorCSkgJiYKIAl0ZXN0ICRiYXNlID0gJChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgogCXRlc3QgMSA9ICQoZ2l0IHNob3cgfCBncmVwIE9OQ0UgfCB3YyAtbCkgJiYKIAlnaXQgY2hlY2tvdXQgQHstMX0gJiYKQEAgLTUxMiwxMCArNTU2LDEzIEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzIENfTE9DQUxFX09VVFBVVCAnc3F1YXNoIGlnbm9yZXMgYmxhbmsgbGluZXMnICcKIAlnaXQgY2hlY2tvdXQgLWIgc2tpcC1ibGFuay1saW5lcyBFICYmCiAJYmFzZT0kKGdpdCByZXYtcGFyc2UgSEVBRH40KSAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfQ09NTUlUX0FNRU5EPSJPTkNFIiBGQUtFX0xJTkVTPSI+IDEgPiBzcXVhc2ggMiA+IHNxdWFzaCAzID4gc3F1YXNoIDQgPiIgXAotCQlFWFBFQ1RfSEVBREVSX0NPVU5UPTQgXAotCQlnaXQgcmViYXNlIC1pICRiYXNlICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9DT01NSVRfQU1FTkQ9Ik9OQ0UiIFwKKwkJCUZBS0VfTElORVM9Ij4gMSA+IHNxdWFzaCAyID4gc3F1YXNoIDMgPiBzcXVhc2ggNCA+IiBcCisJCQlFWFBFQ1RfSEVBREVSX0NPVU5UPTQgXAorCQkJZ2l0IHJlYmFzZSAtaSAkYmFzZQorCSkgJiYKIAl0ZXN0ICRiYXNlID0gJChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgogCXRlc3QgMSA9ICQoZ2l0IHNob3cgfCBncmVwIE9OQ0UgfCB3YyAtbCkgJiYKIAlnaXQgY2hlY2tvdXQgQHstMX0gJiYKQEAgLTUyNSwxNyArNTcyLDIxIEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzcXVhc2ggd29ya3MgYXMgZXhwZWN0ZWQnICcKIAlnaXQgY2hlY2tvdXQgLWIgc3F1YXNoLXdvcmtzIG5vLWNvbmZsaWN0LWJyYW5jaCAmJgogCW9uZT0kKGdpdCByZXYtcGFyc2UgSEVBRH4zKSAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfTElORVM9IjEgcyAzIDIiIEVYUEVDVF9IRUFERVJfQ09VTlQ9MiBcCi0JCWdpdCByZWJhc2UgLWkgSEVBRH4zICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iMSBzIDMgMiIgRVhQRUNUX0hFQURFUl9DT1VOVD0yIGdpdCByZWJhc2UgLWkgSEVBRH4zCisJKSAmJgogCXRlc3QgJG9uZSA9ICQoZ2l0IHJldi1wYXJzZSBIRUFEfjIpCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ludGVycnVwdGVkIHNxdWFzaCB3b3JrcyBhcyBleHBlY3RlZCcgJwogCWdpdCBjaGVja291dCAtYiBpbnRlcnJ1cHRlZC1zcXVhc2ggY29uZmxpY3QtYnJhbmNoICYmCiAJb25lPSQoZ2l0IHJldi1wYXJzZSBIRUFEfjMpICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JdGVzdF9tdXN0X2ZhaWwgZW52IEZBS0VfTElORVM9IjEgc3F1YXNoIDMgMiIgZ2l0IHJlYmFzZSAtaSBIRUFEfjMgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iMSBzcXVhc2ggMyAyIiBcCisJCQlnaXQgcmViYXNlIC1pIEhFQUR+MworCSkgJiYKIAl0ZXN0X3dyaXRlX2xpbmVzIG9uZSB0d28gZm91ciA+IGNvbmZsaWN0ICYmCiAJZ2l0IGFkZCBjb25mbGljdCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1jb250aW51ZSAmJgpAQCAtNTQ4LDggKzU5OSwxMSBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnaW50ZXJydXB0ZWQgc3F1YXNoIHdvcmtzIGFzIGV4cGVjdGVkIChjYXNlIDIpJyAnCiAJZ2l0IGNoZWNrb3V0IC1iIGludGVycnVwdGVkLXNxdWFzaDIgY29uZmxpY3QtYnJhbmNoICYmCiAJb25lPSQoZ2l0IHJldi1wYXJzZSBIRUFEfjMpICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JdGVzdF9tdXN0X2ZhaWwgZW52IEZBS0VfTElORVM9IjMgc3F1YXNoIDEgMiIgZ2l0IHJlYmFzZSAtaSBIRUFEfjMgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iMyBzcXVhc2ggMSAyIiBcCisJCQlnaXQgcmViYXNlIC1pIEhFQUR+MworCSkgJiYKIAl0ZXN0X3dyaXRlX2xpbmVzIG9uZSBmb3VyID4gY29uZmxpY3QgJiYKIAlnaXQgYWRkIGNvbmZsaWN0ICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCkBAIC01NjksMTEgKzYyMywxMyBAQAogCWdpdCBjb21taXQgLW0gInVucmVsYXRlZCBjaGFuZ2UiICYmCiAJcGFyZW50PSQoZ2l0IHJldi1wYXJzZSBIRUFEXikgJiYKIAl0ZXN0X3RpY2sgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQlGQUtFX0xJTkVTPSJlZGl0IDEiIGdpdCByZWJhc2UgLWkgSEVBRF4gJiYKLQllY2hvIGVkaXRlZCA+IGZpbGU3ICYmCi0JZ2l0IGFkZCBmaWxlNyAmJgotCUZBS0VfQ09NTUlUX01FU1NBR0U9ImNob3VldHRlISIgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iZWRpdCAxIiBnaXQgcmViYXNlIC1pIEhFQUReICYmCisJCWVjaG8gZWRpdGVkID4gZmlsZTcgJiYKKwkJZ2l0IGFkZCBmaWxlNyAmJgorCQlGQUtFX0NPTU1JVF9NRVNTQUdFPSJjaG91ZXR0ZSEiIGdpdCByZWJhc2UgLS1jb250aW51ZQorCSkgJiYKIAl0ZXN0IGVkaXRlZCA9ICQoZ2l0IHNob3cgSEVBRDpmaWxlNykgJiYKIAlnaXQgc2hvdyBIRUFEIHwgZ3JlcCBjaG91ZXR0ZSAmJgogCXRlc3QgJHBhcmVudCA9ICQoZ2l0IHJldi1wYXJzZSBIRUFEXikKQEAgLTU4MiwzNCArNjM4LDQxIEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhYm9ydGVkIC0tY29udGludWUgZG9lcyBub3Qgc3F1YXNoIGNvbW1pdHMgYWZ0ZXIgImVkaXQiJyAnCiAJb2xkPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCXRlc3RfdGljayAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfTElORVM9ImVkaXQgMSIgZ2l0IHJlYmFzZSAtaSBIRUFEXiAmJgotCWVjaG8gImVkaXRlZCBhZ2FpbiIgPiBmaWxlNyAmJgotCWdpdCBhZGQgZmlsZTcgJiYKLQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9DT01NSVRfTUVTU0FHRT0iICIgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iZWRpdCAxIiBnaXQgcmViYXNlIC1pIEhFQUReICYmCisJCWVjaG8gImVkaXRlZCBhZ2FpbiIgPiBmaWxlNyAmJgorCQlnaXQgYWRkIGZpbGU3ICYmCisJCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0NPTU1JVF9NRVNTQUdFPSIgIiBnaXQgcmViYXNlIC0tY29udGludWUKKwkpICYmCiAJdGVzdCAkb2xkID0gJChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJZ2l0IHJlYmFzZSAtLWFib3J0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2F1dG8tYW1lbmQgb25seSBlZGl0ZWQgY29tbWl0cyBhZnRlciAiZWRpdCInICcKIAl0ZXN0X3RpY2sgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQlGQUtFX0xJTkVTPSJlZGl0IDEiIGdpdCByZWJhc2UgLWkgSEVBRF4gJiYKLQllY2hvICJlZGl0ZWQgYWdhaW4iID4gZmlsZTcgJiYKLQlnaXQgYWRkIGZpbGU3ICYmCi0JRkFLRV9DT01NSVRfTUVTU0FHRT0iZWRpdGVkIGZpbGU3IGFnYWluIiBnaXQgY29tbWl0ICYmCi0JZWNobyAiYW5kIGFnYWluIiA+IGZpbGU3ICYmCi0JZ2l0IGFkZCBmaWxlNyAmJgotCXRlc3RfdGljayAmJgotCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0NPTU1JVF9NRVNTQUdFPSJhbmQgYWdhaW4iIGdpdCByZWJhc2UgLS1jb250aW51ZSAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfTElORVM9ImVkaXQgMSIgZ2l0IHJlYmFzZSAtaSBIRUFEXiAmJgorCQllY2hvICJlZGl0ZWQgYWdhaW4iID4gZmlsZTcgJiYKKwkJZ2l0IGFkZCBmaWxlNyAmJgorCQlGQUtFX0NPTU1JVF9NRVNTQUdFPSJlZGl0ZWQgZmlsZTcgYWdhaW4iIGdpdCBjb21taXQgJiYKKwkJZWNobyAiYW5kIGFnYWluIiA+IGZpbGU3ICYmCisJCWdpdCBhZGQgZmlsZTcgJiYKKwkJdGVzdF90aWNrICYmCisJCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0NPTU1JVF9NRVNTQUdFPSJhbmQgYWdhaW4iIFwKKwkJCWdpdCByZWJhc2UgLS1jb250aW51ZQorCSkgJiYKIAlnaXQgcmViYXNlIC0tYWJvcnQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xlYW4gZXJyb3IgYWZ0ZXIgZmFpbGVkICJleGVjIicgJwogCXRlc3RfdGljayAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlYmFzZSAtLWFib3J0IHx8IDoiICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JdGVzdF9tdXN0X2ZhaWwgZW52IEZBS0VfTElORVM9IjEgZXhlY19mYWxzZSIgZ2l0IHJlYmFzZSAtaSBIRUFEXiAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0xJTkVTPSIxIGV4ZWNfZmFsc2UiIGdpdCByZWJhc2UgLWkgSEVBRF4KKwkpICYmCiAJZWNobyAiZWRpdGVkIGFnYWluIiA+IGZpbGU3ICYmCiAJZ2l0IGFkZCBmaWxlNyAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1jb250aW51ZSAyPmVycm9yICYmCkBAIC02MjAsOCArNjgzLDEwIEBACiAJZ3JhbmRwYXJlbnQ9JChnaXQgcmV2LXBhcnNlIEhFQUR+MikgJiYKIAlnaXQgY2hlY2tvdXQgJChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJdGVzdF90aWNrICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JRkFLRV9MSU5FUz0iMiAxIiBnaXQgcmViYXNlIC1pIEhFQUR+MiAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfTElORVM9IjIgMSIgZ2l0IHJlYmFzZSAtaSBIRUFEfjIKKwkpICYmCiAJdGVzdCAkZ3JhbmRwYXJlbnQgPSAkKGdpdCByZXYtcGFyc2UgSEVBRH4yKQogJwogCkBAIC02MzYsOSArNzAxLDEwIEBACiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbW1pdCAtbSBkb2VzbnQtdmVyaWZ5IGZpbGUxICYmCiAJZ2l0IGNvbW1pdCAtbSBkb2VzbnQtdmVyaWZ5IC0tbm8tdmVyaWZ5IGZpbGUxICYmCiAJdGVzdF90aWNrICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JRkFLRV9MSU5FUz0yIGdpdCByZWJhc2UgLWkgSEVBRH4yCi0KKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlGQUtFX0xJTkVTPTIgZ2l0IHJlYmFzZSAtaSBIRUFEfjIKKwkpCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSB3aXRoIGEgZmlsZSBuYW1lZCBIRUFEIGluIHdvcmt0cmVlJyAnCkBAIC02NTgsOCArNzI0LDEwIEBACiAJCWdpdCBjb21taXQgLW0gIkFkZCBib2R5IgogCSkgJiYKIAotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfTElORVM9IjEgc3F1YXNoIDIiIGdpdCByZWJhc2UgLWkgQHstMX0gJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlGQUtFX0xJTkVTPSIxIHNxdWFzaCAyIiBnaXQgcmViYXNlIC1pIEB7LTF9CisJKSAmJgogCXRlc3QgIiQoZ2l0IHNob3cgLXMgLS1wcmV0dHk9Zm9ybWF0OiVhbikiID0gIlNxdWFzaGVkIEF3YXkiCiAKICcKQEAgLTY3MCw5ICs3MzgsOCBAQAogCUdJVF9FRElUT1I9OiBnaXQgY29tbWl0IC0tYW1lbmQgXAogCQktLWF1dGhvcj0iU29tZWJvZHkgZWxzZSA8c29tZWJvZHlAZWxzZS5jb20+IiAmJgogCXRlc3QgJChnaXQgcmV2LXBhcnNlIGJyYW5jaDMpICE9ICQoZ2l0IHJldi1wYXJzZSBicmFuY2g0KSAmJgotCXNldF9mYWtlX2VkaXRvciAmJgogCWdpdCByZWJhc2UgLWkgYnJhbmNoMyAmJgotCXRlc3QgJChnaXQgcmV2LXBhcnNlIGJyYW5jaDMpID0gJChnaXQgcmV2LXBhcnNlIGJyYW5jaDQpCisJdGVzdF9jbXBfcmV2IGJyYW5jaDMgYnJhbmNoNAogCiAnCiAKQEAgLTY5NSwxMyArNzYyLDE0IEBACiAJCWdpdCBjb21taXQgLWEgLW0gInN1Ym1vZHVsZSBzZWNvbmQiCiAJKSAmJgogCXRlc3RfdGljayAmJgotCXNldF9mYWtlX2VkaXRvciAmJgogCWdpdCBjb21taXQgLWEgLW0gIlRocmVlIGNoYW5nZXMgc3VibW9kdWxlIgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWJtb2R1bGUgcmViYXNlIC1pJyAnCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JRkFLRV9MSU5FUz0iMSBzcXVhc2ggMiAzIiBnaXQgcmViYXNlIC1pIEEKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlGQUtFX0xJTkVTPSIxIHNxdWFzaCAyIDMiIGdpdCByZWJhc2UgLWkgQQorCSkKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3VibW9kdWxlIGNvbmZsaWN0IHNldHVwJyAnCkBAIC03MTgsNyArNzg2LDYgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC1pIGNvbnRpbnVlIHdpdGggb25seSBzdWJtb2R1bGUgc3RhZ2VkJyAnCi0Jc2V0X2Zha2VfZWRpdG9yICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtaSBzdWJtb2R1bGUtYmFzZSAmJgogCWdpdCBhZGQgc3ViICYmCiAJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCkBAIC03MjgsMTEgKzc5NSwxMCBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC1pIGNvbnRpbnVlIHdpdGggdW5zdGFnZWQgc3VibW9kdWxlJyAnCiAJZ2l0IGNoZWNrb3V0IHN1Ym1vZHVsZS10b3BpYyAmJgogCWdpdCByZXNldCAtLWhhcmQgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC1pIHN1Ym1vZHVsZS1iYXNlICYmCiAJZ2l0IHJlc2V0ICYmCiAJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCi0JdGVzdCAkKGdpdCByZXYtcGFyc2Ugc3VibW9kdWxlLWJhc2UpID0gJChnaXQgcmV2LXBhcnNlIEhFQUQpCisJdGVzdF9jbXBfcmV2IHN1Ym1vZHVsZS1iYXNlIEhFQUQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYXZvaWQgdW5uZWNlc3NhcnkgcmVzZXQnICcKQEAgLTc0MSw3ICs4MDcsNiBAQAogCXRlc3QtdG9vbCBjaG10aW1lID0xMjM0NTY3ODkgZmlsZTMgJiYKIAlnaXQgdXBkYXRlLWluZGV4IC0tcmVmcmVzaCAmJgogCUhFQUQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCiAJZ2l0IHJlYmFzZSAtaSBIRUFEfjQgJiYKIAl0ZXN0ICRIRUFEID0gJChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJTVRJTUU9JCh0ZXN0LXRvb2wgY2htdGltZSAtLWdldCBmaWxlMykgJiYKQEAgLTc1MCwxNiArODE1LDIyIEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Jld29yZCcgJwogCWdpdCBjaGVja291dCAtYiByZXdvcmQtYnJhbmNoIG1hc3RlciAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfTElORVM9IjEgMiAzIHJld29yZCA0IiBGQUtFX0NPTU1JVF9NRVNTQUdFPSJFIGNoYW5nZWQiIGdpdCByZWJhc2UgLWkgQSAmJgotCWdpdCBzaG93IEhFQUQgfCBncmVwICJFIGNoYW5nZWQiICYmCi0JdGVzdCAkKGdpdCByZXYtcGFyc2UgbWFzdGVyKSAhPSAkKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKLQl0ZXN0ICQoZ2l0IHJldi1wYXJzZSBtYXN0ZXJeKSA9ICQoZ2l0IHJldi1wYXJzZSBIRUFEXikgJiYKLQlGQUtFX0xJTkVTPSIxIDIgcmV3b3JkIDMgNCIgRkFLRV9DT01NSVRfTUVTU0FHRT0iRCBjaGFuZ2VkIiBnaXQgcmViYXNlIC1pIEEgJiYKLQlnaXQgc2hvdyBIRUFEXiB8IGdyZXAgIkQgY2hhbmdlZCIgJiYKLQlGQUtFX0xJTkVTPSJyZXdvcmQgMSAyIDMgNCIgRkFLRV9DT01NSVRfTUVTU0FHRT0iQiBjaGFuZ2VkIiBnaXQgcmViYXNlIC1pIEEgJiYKLQlnaXQgc2hvdyBIRUFEfjMgfCBncmVwICJCIGNoYW5nZWQiICYmCi0JRkFLRV9MSU5FUz0iMSByIDIgcGljayAzIHAgNCIgRkFLRV9DT01NSVRfTUVTU0FHRT0iQyBjaGFuZ2VkIiBnaXQgcmViYXNlIC1pIEEgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlGQUtFX0xJTkVTPSIxIDIgMyByZXdvcmQgNCIgRkFLRV9DT01NSVRfTUVTU0FHRT0iRSBjaGFuZ2VkIiBcCisJCQlnaXQgcmViYXNlIC1pIEEgJiYKKwkJZ2l0IHNob3cgSEVBRCB8IGdyZXAgIkUgY2hhbmdlZCIgJiYKKwkJdGVzdCAkKGdpdCByZXYtcGFyc2UgbWFzdGVyKSAhPSAkKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKwkJdGVzdF9jbXBfcmV2IG1hc3Rlcl4gSEVBRF4gJiYKKwkJRkFLRV9MSU5FUz0iMSAyIHJld29yZCAzIDQiIEZBS0VfQ09NTUlUX01FU1NBR0U9IkQgY2hhbmdlZCIgXAorCQkJZ2l0IHJlYmFzZSAtaSBBICYmCisJCWdpdCBzaG93IEhFQUReIHwgZ3JlcCAiRCBjaGFuZ2VkIiAmJgorCQlGQUtFX0xJTkVTPSJyZXdvcmQgMSAyIDMgNCIgRkFLRV9DT01NSVRfTUVTU0FHRT0iQiBjaGFuZ2VkIiBcCisJCQlnaXQgcmViYXNlIC1pIEEgJiYKKwkJZ2l0IHNob3cgSEVBRH4zIHwgZ3JlcCAiQiBjaGFuZ2VkIiAmJgorCQlGQUtFX0xJTkVTPSIxIHIgMiBwaWNrIDMgcCA0IiBGQUtFX0NPTU1JVF9NRVNTQUdFPSJDIGNoYW5nZWQiIFwKKwkJCWdpdCByZWJhc2UgLWkgQQorCSkgJiYKIAlnaXQgc2hvdyBIRUFEfjIgfCBncmVwICJDIGNoYW5nZWQiCiAnCiAKQEAgLTc3MCwyMiArODQxLDIzIEBACiAJdGVzdF9jb21taXQgbjIgJiYKIAl0ZXN0X2NvbW1pdCBuMyAmJgogCWdpdCBub3RlcyBhZGQgLW0iYSBub3RlIiBuMyAmJgotCXNldF9mYWtlX2VkaXRvciAmJgogCWdpdCByZWJhc2UgLWkgLS1vbnRvIG4xIG4yICYmCiAJdGVzdCAiYSBub3RlIiA9ICIkKGdpdCBub3RlcyBzaG93IEhFQUQpIgogJwogCi1jYXQgPmV4cGVjdCA8PEVPRgotYW4gZWFybGllciBub3RlCi0KLWEgbm90ZQotRU9GCi0KIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtaSBjYW4gY29weSBub3RlcyBvdmVyIGEgZml4dXAnICcKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJYW4gZWFybGllciBub3RlCisKKwlhIG5vdGUKKwlFT0YKIAlnaXQgcmVzZXQgLS1oYXJkIG4zICYmCiAJZ2l0IG5vdGVzIGFkZCAtbSJhbiBlYXJsaWVyIG5vdGUiIG4yICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JR0lUX05PVEVTX1JFV1JJVEVfTU9ERT1jb25jYXRlbmF0ZSBGQUtFX0xJTkVTPSIxIGYgMiIgZ2l0IHJlYmFzZSAtaSBuMSAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUdJVF9OT1RFU19SRVdSSVRFX01PREU9Y29uY2F0ZW5hdGUgRkFLRV9MSU5FUz0iMSBmIDIiIFwKKwkJCWdpdCByZWJhc2UgLWkgbjEKKwkpICYmCiAJZ2l0IG5vdGVzIHNob3cgPiBvdXRwdXQgJiYKIAl0ZXN0X2NtcCBleHBlY3Qgb3V0cHV0CiAnCkBAIC03OTQsOCArODY2LDEwIEBACiAJZ2l0IHN5bWJvbGljLXJlZiBIRUFEICYmCiAJZ3JhbmRwYXJlbnQ9JChnaXQgcmV2LXBhcnNlIEhFQUR+MikgJiYKIAl0ZXN0X3RpY2sgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQlGQUtFX0xJTkVTPSIyIDEiIGdpdCByZWJhc2UgLWkgSEVBRH4yIEhFQUReMCAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfTElORVM9IjIgMSIgZ2l0IHJlYmFzZSAtaSBIRUFEfjIgSEVBRF4wCisJKSAmJgogCXRlc3QgJGdyYW5kcGFyZW50ID0gJChnaXQgcmV2LXBhcnNlIEhFQUR+MikgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgc3ltYm9saWMtcmVmIEhFQUQKICcKQEAgLTgwNCw3ICs4NzgsNiBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYWx3YXlzIGNoZXJyeS1waWNrIHdpdGggLS1uby1mZicgJwogCWdpdCBjaGVja291dCBuby1mZi1icmFuY2ggJiYKIAlnaXQgdGFnIG9yaWdpbmFsLW5vLWZmLWJyYW5jaCAmJgotCXNldF9mYWtlX2VkaXRvciAmJgogCWdpdCByZWJhc2UgLWkgLS1uby1mZiBBICYmCiAJZm9yIHAgaW4gMCAxIDIKIAlkbwpAQCAtODEyLDcgKzg4NSw3IEBACiAJCWdpdCBkaWZmIEhFQUR+JHAgb3JpZ2luYWwtbm8tZmYtYnJhbmNofiRwID4gb3V0ICYmCiAJCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXQKIAlkb25lICYmCi0JdGVzdCAkKGdpdCByZXYtcGFyc2UgSEVBRH4zKSA9ICQoZ2l0IHJldi1wYXJzZSBvcmlnaW5hbC1uby1mZi1icmFuY2h+MykgJiYKKwl0ZXN0X2NtcF9yZXYgSEVBRH4zIG9yaWdpbmFsLW5vLWZmLWJyYW5jaH4zICYmCiAJZ2l0IGRpZmYgSEVBRH4zIG9yaWdpbmFsLW5vLWZmLWJyYW5jaH4zID4gb3V0ICYmCiAJdGVzdF9tdXN0X2JlX2VtcHR5IG91dAogJwpAQCAtODM2LDggKzkwOSwxMCBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlLWkgaGlzdG9yeSB3aXRoIGZ1bm55IG1lc3NhZ2VzJyAnCiAJZ2l0IHJldi1saXN0IEEuLmZ1bm55ID5leHBlY3QgJiYKIAl0ZXN0X3RpY2sgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQlGQUtFX0xJTkVTPSIxIDIgMyA0IiBnaXQgcmViYXNlIC1pIEEgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlGQUtFX0xJTkVTPSIxIDIgMyA0IiBnaXQgcmViYXNlIC1pIEEKKwkpICYmCiAJZ2l0IHJldi1saXN0IEEuLiA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwpAQCAtODUxLDkgKzkyNiw5IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3J1bm5pbmcgImdpdCByZWJhc2UgLWkgLS1leGVjIGdpdCBzaG93IEhFQUQiJyAnCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JZ2l0IHJlYmFzZSAtaSAtLWV4ZWMgImdpdCBzaG93IEhFQUQiIEhFQUR+MiA+YWN0dWFsICYmCiAJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJZ2l0IHJlYmFzZSAtaSAtLWV4ZWMgImdpdCBzaG93IEhFQUQiIEhFQUR+MiA+YWN0dWFsICYmCiAJCUZBS0VfTElORVM9IjEgZXhlY19naXRfc2hvd19IRUFEIDIgZXhlY19naXRfc2hvd19IRUFEIiAmJgogCQlleHBvcnQgRkFLRV9MSU5FUyAmJgogCQlnaXQgcmViYXNlIC1pIEhFQUR+MiA+ZXhwZWN0CkBAIC04NjQsOSArOTM5LDkgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncnVubmluZyAiZ2l0IHJlYmFzZSAtLWV4ZWMgZ2l0IHNob3cgSEVBRCAtaSInICcKIAlnaXQgcmVzZXQgLS1oYXJkIGV4ZWN1dGUgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQlnaXQgcmViYXNlIC0tZXhlYyAiZ2l0IHNob3cgSEVBRCIgLWkgSEVBRH4yID5hY3R1YWwgJiYKIAkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlnaXQgcmViYXNlIC0tZXhlYyAiZ2l0IHNob3cgSEVBRCIgLWkgSEVBRH4yID5hY3R1YWwgJiYKIAkJRkFLRV9MSU5FUz0iMSBleGVjX2dpdF9zaG93X0hFQUQgMiBleGVjX2dpdF9zaG93X0hFQUQiICYmCiAJCWV4cG9ydCBGQUtFX0xJTkVTICYmCiAJCWdpdCByZWJhc2UgLWkgSEVBRH4yID5leHBlY3QKQEAgLTg3Nyw5ICs5NTIsOSBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdydW5uaW5nICJnaXQgcmViYXNlIC1peCBnaXQgc2hvdyBIRUFEIicgJwogCWdpdCByZXNldCAtLWhhcmQgZXhlY3V0ZSAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCWdpdCByZWJhc2UgLWl4ICJnaXQgc2hvdyBIRUFEIiBIRUFEfjIgPmFjdHVhbCAmJgogCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCWdpdCByZWJhc2UgLWl4ICJnaXQgc2hvdyBIRUFEIiBIRUFEfjIgPmFjdHVhbCAmJgogCQlGQUtFX0xJTkVTPSIxIGV4ZWNfZ2l0X3Nob3dfSEVBRCAyIGV4ZWNfZ2l0X3Nob3dfSEVBRCIgJiYKIAkJZXhwb3J0IEZBS0VfTElORVMgJiYKIAkJZ2l0IHJlYmFzZSAtaSBIRUFEfjIgPmV4cGVjdApAQCAtODkxLDkgKzk2Niw5IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtaXggd2l0aCBzZXZlcmFsIDxDTUQ+JyAnCiAJZ2l0IHJlc2V0IC0taGFyZCBleGVjdXRlICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JZ2l0IHJlYmFzZSAtaXggImdpdCBzaG93IEhFQUQ7IHB3ZCIgSEVBRH4yID5hY3R1YWwgJiYKIAkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlnaXQgcmViYXNlIC1peCAiZ2l0IHNob3cgSEVBRDsgcHdkIiBIRUFEfjIgPmFjdHVhbCAmJgogCQlGQUtFX0xJTkVTPSIxIGV4ZWNfZ2l0X3Nob3dfSEVBRDtfcHdkIDIgZXhlY19naXRfc2hvd19IRUFEO19wd2QiICYmCiAJCWV4cG9ydCBGQUtFX0xJTkVTICYmCiAJCWdpdCByZWJhc2UgLWkgSEVBRH4yID5leHBlY3QKQEAgLTkwNCw5ICs5NzksOSBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLWl4IHdpdGggc2V2ZXJhbCBpbnN0YW5jZXMgb2YgLS1leGVjJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCBleGVjdXRlICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JZ2l0IHJlYmFzZSAtaSAtLWV4ZWMgImdpdCBzaG93IEhFQUQiIC0tZXhlYyAicHdkIiBIRUFEfjIgPmFjdHVhbCAmJgogCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCWdpdCByZWJhc2UgLWkgLS1leGVjICJnaXQgc2hvdyBIRUFEIiAtLWV4ZWMgInB3ZCIgSEVBRH4yID5hY3R1YWwgJiYKIAkJRkFLRV9MSU5FUz0iMSBleGVjX2dpdF9zaG93X0hFQUQgZXhlY19wd2QgMgogCQkJCWV4ZWNfZ2l0X3Nob3dfSEVBRCBleGVjX3B3ZCIgJiYKIAkJZXhwb3J0IEZBS0VfTElORVMgJiYKQEAgLTkyNSwxMyArMTAwMCwxMSBAQAogCWVjaG8gYmlzID5iaXMudHh0ICYmCiAJZ2l0IGFkZCBiaXMudHh0ICYmCiAJZ2l0IGNvbW1pdCAtbSAiZml4dXAhIHR3b19leGVjIiAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCSgKLQkJZ2l0IGNoZWNrb3V0IC1iIGF1dG9zcXVhc2hfYWN0dWFsICYmCi0JCWdpdCByZWJhc2UgLWkgLS1leGVjICJnaXQgc2hvdyBIRUFEIiAtLWF1dG9zcXVhc2ggSEVBRH40ID5hY3R1YWwKLQkpICYmCisJZ2l0IGNoZWNrb3V0IC1iIGF1dG9zcXVhc2hfYWN0dWFsICYmCisJZ2l0IHJlYmFzZSAtaSAtLWV4ZWMgImdpdCBzaG93IEhFQUQiIC0tYXV0b3NxdWFzaCBIRUFEfjQgPmFjdHVhbCAmJgogCWdpdCBjaGVja291dCBhdXRvc3F1YXNoICYmCiAJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKIAkJZ2l0IGNoZWNrb3V0IC1iIGF1dG9zcXVhc2hfZXhwZWN0ZWQgJiYKIAkJRkFLRV9MSU5FUz0iMSBmaXh1cCAzIGZpeHVwIDQgZXhlY19naXRfc2hvd19IRUFEIDIgZXhlY19naXRfc2hvd19IRUFEIiAmJgogCQlleHBvcnQgRkFLRV9MSU5FUyAmJgpAQCAtOTUyLDcgKzEwMjUsNiBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLWkgLS1leGVjIHdpdGhvdXQgPENNRD4nICcKIAlnaXQgcmVzZXQgLS1oYXJkIGV4ZWN1dGUgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC1pIC0tZXhlYyAyPmFjdHVhbCAmJgogCXRlc3RfaTE4bmdyZXAgInJlcXVpcmVzIGEgdmFsdWUiIGFjdHVhbCAmJgogCWdpdCBjaGVja291dCBtYXN0ZXIKQEAgLTk2MCw4ICsxMDMyLDEwIEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtaSAtLXJvb3QgcmUtb3JkZXIgYW5kIGRyb3AgY29tbWl0cycgJwogCWdpdCBjaGVja291dCBFICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JRkFLRV9MSU5FUz0iMyAxIDIgNSIgZ2l0IHJlYmFzZSAtaSAtLXJvb3QgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlGQUtFX0xJTkVTPSIzIDEgMiA1IiBnaXQgcmViYXNlIC1pIC0tcm9vdAorCSkgJiYKIAl0ZXN0IEUgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IHNlZCAtbmUgXCRwKSAmJgogCXRlc3QgQiA9ICQoZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEXiB8IHNlZCAtbmUgXCRwKSAmJgogCXRlc3QgQSA9ICQoZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEXl4gfCBzZWQgLW5lIFwkcCkgJiYKQEAgLTk3NCw0OCArMTA0OCw3MCBAQAogCWVjaG8gQiA+ZmlsZTcgJiYKIAlnaXQgYWRkIGZpbGU3ICYmCiAJR0lUX0FVVEhPUl9OQU1FPSJUd2VycCBTbm9nIiBnaXQgY29tbWl0IC1tICJkaWZmZXJlbnQgYXV0aG9yIiAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfTElORVM9IjIiIGdpdCByZWJhc2UgLWkgLS1yb290ICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iMiIgZ2l0IHJlYmFzZSAtaSAtLXJvb3QKKwkpICYmCiAJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEIHwgZ3JlcCAtcSAiXmF1dGhvciBUd2VycCBTbm9nIiAmJgogCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IGdyZXAgLXEgIl5kaWZmZXJlbnQgYXV0aG9yJCIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC1pIC0tcm9vdCB0ZW1wb3Jhcnkgc2VudGluZWwgY29tbWl0JyAnCiAJZ2l0IGNoZWNrb3V0IEIgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iMiIgZ2l0IHJlYmFzZSAtaSAtLXJvb3QgJiYKLQlnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBncmVwICJedHJlZSA0YjgyNWRjNjQyY2IiICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZW52IEZBS0VfTElORVM9IjIiIGdpdCByZWJhc2UgLWkgLS1yb290CisJKSAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IGdyZXAgIl50cmVlICRFTVBUWV9UUkVFIiAmJgogCWdpdCByZWJhc2UgLS1hYm9ydAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLWkgLS1yb290IGZpeHVwIHJvb3QgY29tbWl0JyAnCiAJZ2l0IGNoZWNrb3V0IEIgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQlGQUtFX0xJTkVTPSIxIGZpeHVwIDIiIGdpdCByZWJhc2UgLWkgLS1yb290ICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iMSBmaXh1cCAyIiBnaXQgcmViYXNlIC1pIC0tcm9vdAorCSkgJiYKIAl0ZXN0IEEgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IHNlZCAtbmUgXCRwKSAmJgogCXRlc3QgQiA9ICQoZ2l0IHNob3cgSEVBRDpmaWxlMSkgJiYKIAl0ZXN0IDAgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IGdyZXAgLWMgXnBhcmVudFwgKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLWkgLS1yb290IHJld29yZCByb290IGNvbW1pdCcgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC1pIC0tcm9vdCByZXdvcmQgb3JpZ2luYWwgcm9vdCBjb21taXQnICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgInRlc3RfbWlnaHRfZmFpbCBnaXQgcmViYXNlIC0tYWJvcnQiICYmCi0JZ2l0IGNoZWNrb3V0IC1iIHJld29yZC1yb290LWJyYW5jaCBtYXN0ZXIgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQlGQUtFX0xJTkVTPSJyZXdvcmQgMSAyIiBGQUtFX0NPTU1JVF9NRVNTQUdFPSJBIGNoYW5nZWQiIFwKLQlnaXQgcmViYXNlIC1pIC0tcm9vdCAmJgorCWdpdCBjaGVja291dCAtYiByZXdvcmQtb3JpZ2luYWwtcm9vdC1icmFuY2ggbWFzdGVyICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0icmV3b3JkIDEgMiIgRkFLRV9DT01NSVRfTUVTU0FHRT0iQSBjaGFuZ2VkIiBcCisJCQlnaXQgcmViYXNlIC1pIC0tcm9vdAorCSkgJiYKIAlnaXQgc2hvdyBIRUFEXiB8IGdyZXAgIkEgY2hhbmdlZCIgJiYKIAl0ZXN0IC16ICIkKGdpdCBzaG93IC1zIC0tZm9ybWF0PSVwIEhFQUReKSIKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC1pIC0tcm9vdCB3aGVuIHJvb3QgaGFzIHVudHJhY2tlZCBmaWxlIGNvbmZpbGN0JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLWkgLS1yb290IHJld29yZCBuZXcgcm9vdCBjb21taXQnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInRlc3RfbWlnaHRfZmFpbCBnaXQgcmViYXNlIC0tYWJvcnQiICYmCisJZ2l0IGNoZWNrb3V0IC1iIHJld29yZC1ub3ctcm9vdC1icmFuY2ggbWFzdGVyICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0icmV3b3JkIDMgMSIgRkFLRV9DT01NSVRfTUVTU0FHRT0iQyBjaGFuZ2VkIiBcCisJCWdpdCByZWJhc2UgLWkgLS1yb290CisJKSAmJgorCWdpdCBzaG93IEhFQUReIHwgZ3JlcCAiQyBjaGFuZ2VkIiAmJgorCXRlc3QgLXogIiQoZ2l0IHNob3cgLXMgLS1mb3JtYXQ9JXAgSEVBRF4pIgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLWkgLS1yb290IHdoZW4gcm9vdCBoYXMgdW50cmFja2VkIGZpbGUgY29uZmxpY3QnICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJlc2V0X3JlYmFzZSIgJiYKIAlnaXQgY2hlY2tvdXQgLWIgZmFpbGluZy1yb290LXBpY2sgQSAmJgogCWVjaG8geCA+ZmlsZTIgJiYKIAlnaXQgcm0gZmlsZTEgJiYKIAlnaXQgY29tbWl0IC1tICJyZW1vdmUgZmlsZSAxIGFkZCBmaWxlIDIiICYmCiAJZWNobyB6ID5maWxlMSAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0xJTkVTPSIxIDIiIGdpdCByZWJhc2UgLWkgLS1yb290ICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZW52IEZBS0VfTElORVM9IjEgMiIgZ2l0IHJlYmFzZSAtaSAtLXJvb3QKKwkpICYmCiAJcm0gZmlsZTEgJiYKIAlnaXQgcmViYXNlIC0tY29udGludWUgJiYKIAl0ZXN0ICIkKGdpdCBsb2cgLTEgLS1mb3JtYXQ9JUIpIiA9ICJyZW1vdmUgZmlsZSAxIGFkZCBmaWxlIDIiICYmCkBAIC0xMDI1LDMyICsxMTIxLDM4IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLWkgLS1yb290IHJld29yZCByb290IHdoZW4gcm9vdCBoYXMgdW50cmFja2VkIGZpbGUgY29uZmxpY3QnICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJlc2V0X3JlYmFzZSIgJiYKIAllY2hvIHo+ZmlsZTEgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0icmV3b3JkIDEgMiIgXAotCQlGQUtFX0NPTU1JVF9NRVNTQUdFPSJNb2RpZmllZCBBIiBnaXQgcmViYXNlIC1pIC0tcm9vdCAmJgotCXJtIGZpbGUxICYmCi0JRkFLRV9DT01NSVRfTUVTU0FHRT0iUmV3b3JkZWQgQSIgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZW52IEZBS0VfTElORVM9InJld29yZCAxIDIiIFwKKwkJCUZBS0VfQ09NTUlUX01FU1NBR0U9Ik1vZGlmaWVkIEEiIGdpdCByZWJhc2UgLWkgLS1yb290ICYmCisJCXJtIGZpbGUxICYmCisJCUZBS0VfQ09NTUlUX01FU1NBR0U9IlJld29yZGVkIEEiIGdpdCByZWJhc2UgLS1jb250aW51ZQorCSkgJiYKIAl0ZXN0ICIkKGdpdCBsb2cgLTEgLS1mb3JtYXQ9JUIgSEVBRF4pIiA9ICJSZXdvcmRlZCBBIiAmJgogCXRlc3QgIiQoZ2l0IHJldi1saXN0IC0tY291bnQgSEVBRCkiID0gMgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIENfTE9DQUxFX09VVFBVVCAncmViYXNlIC0tZWRpdC10b2RvIGRvZXMgbm90IHdvcmsgb24gbm9uLWludGVyYWN0aXZlIHJlYmFzZScgJwotCWdpdCBjaGVja291dCByZXdvcmQtcm9vdC1icmFuY2ggJiYKKwlnaXQgY2hlY2tvdXQgcmV3b3JkLW9yaWdpbmFsLXJvb3QtYnJhbmNoICYmCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWdpdCBjaGVja291dCBjb25mbGljdC1icmFuY2ggJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC0tb250byBIRUFEfjIgSEVBRH4gJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC0tZWRpdC10b2RvICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtZiAtLWFwcGx5IC0tb250byBIRUFEfjIgSEVBRH4gJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbworCSkgJiYKIAlnaXQgcmViYXNlIC0tYWJvcnQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC0tZWRpdC10b2RvIGNhbiBiZSB1c2VkIHRvIG1vZGlmeSB0b2RvJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWdpdCBjaGVja291dCBuby1jb25mbGljdC1icmFuY2heMCAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfTElORVM9ImVkaXQgMSAyIDMiIGdpdCByZWJhc2UgLWkgSEVBRH4zICYmCi0JRkFLRV9MSU5FUz0iMiAxIiBnaXQgcmViYXNlIC0tZWRpdC10b2RvICYmCi0JZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iZWRpdCAxIDIgMyIgZ2l0IHJlYmFzZSAtaSBIRUFEfjMgJiYKKwkJRkFLRV9MSU5FUz0iMiAxIiBnaXQgcmViYXNlIC0tZWRpdC10b2RvICYmCisJCWdpdCByZWJhc2UgLS1jb250aW51ZQorCSkgJiYKIAl0ZXN0IE0gPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF4gfCBzZWQgLW5lIFwkcCkgJiYKIAl0ZXN0IEwgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IHNlZCAtbmUgXCRwKQogJwpAQCAtMTA1OCwxMyArMTE2MCwxMiBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC1pIHByb2R1Y2VzIHJlYWRhYmxlIHJlZmxvZycgJwogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlnaXQgYnJhbmNoIC1mIGJyYW5jaC1yZWZsb2ctdGVzdCBIICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCiAJZ2l0IHJlYmFzZSAtaSAtLW9udG8gSSBGIGJyYW5jaC1yZWZsb2ctdGVzdCAmJgogCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKLQlyZWJhc2UgLWkgKGZpbmlzaCk6IHJldHVybmluZyB0byByZWZzL2hlYWRzL2JyYW5jaC1yZWZsb2ctdGVzdAotCXJlYmFzZSAtaSAocGljayk6IEgKLQlyZWJhc2UgLWkgKHBpY2spOiBHCi0JcmViYXNlIC1pIChzdGFydCk6IGNoZWNrb3V0IEkKKwlyZWJhc2UgKGZpbmlzaCk6IHJldHVybmluZyB0byByZWZzL2hlYWRzL2JyYW5jaC1yZWZsb2ctdGVzdAorCXJlYmFzZSAocGljayk6IEgKKwlyZWJhc2UgKHBpY2spOiBHCisJcmViYXNlIChzdGFydCk6IGNoZWNrb3V0IEkKIAlFT0YKIAlnaXQgcmVmbG9nIC1uNCBIRUFEIHwKIAlzZWQgInMvW146XSo6IC8vIiA+YWN0dWFsICYmCkBAIC0xMDc5LDggKzExODAsMTAgQEAKIAlzZWQgLWUgIjIsXCRzL14vXFxcXC8iICIkMSIgPiIkMS50bXAiICYmCiAJbXYgIiQxLnRtcCIgIiQxIgogCUVPRgotCXRlc3Rfc2V0X2VkaXRvciAiJChwd2QpL3JlbW92ZS1hbGwtYnV0LWZpcnN0LnNoIiAmJgotCWdpdCByZWJhc2UgLWkgQiAmJgorCSgKKwkJdGVzdF9zZXRfZWRpdG9yICIkKHB3ZCkvcmVtb3ZlLWFsbC1idXQtZmlyc3Quc2giICYmCisJCWdpdCByZWJhc2UgLWkgQgorCSkgJiYKIAl0ZXN0IEIgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF4gfCBzZWQgLW5lIFwkcCkKICcKIApAQCAtMTA4OSw5ICsxMTkyLDExIEBACiAJd3JpdGVfc2NyaXB0IGNvcHktZWRpdC1zY3JpcHQuc2ggPDwtXEVPRiAmJgogCWNwICIkMSIgZWRpdC1zY3JpcHQKIAlFT0YKLQl0ZXN0X3NldF9lZGl0b3IgIiQocHdkKS9jb3B5LWVkaXQtc2NyaXB0LnNoIiAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlYmFzZSAtLWFib3J0IHx8IDoiICYmCi0JZ2l0IHJlYmFzZSAtaSBIRUFEXiAmJgorCSgKKwkJdGVzdF9zZXRfZWRpdG9yICIkKHB3ZCkvY29weS1lZGl0LXNjcmlwdC5zaCIgJiYKKwkJZ2l0IHJlYmFzZSAtaSBIRUFEXgorCSkgJiYKIAl0ZXN0IC16ICIkKGdyZXAgLXZlICJeIyIgLWUgIl5cJCIgLWUgIl5waWNrIiBlZGl0LXNjcmlwdCkiCiAnCiAKQEAgLTExMjYsOCArMTIzMSwxMSBAQAogCWVjaG8gZml2ZSA+Y29uZmxpY3QgJiYKIAllY2hvIFogPmZpbGUxICYmCiAJZ2l0IGNvbW1pdCAtYSAtbSAib25lIGZpbGUgY29uZmxpY3QiICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JRkFLRV9MSU5FUz0iZWRpdCAxIDIiIGdpdCByZWJhc2UgLWkgLS1zdHJhdGVneT1yZWN1cnNpdmUgLVhvdXJzIGNvbmZsaWN0LWJyYW5jaCAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfTElORVM9ImVkaXQgMSAyIiBnaXQgcmViYXNlIC1pIC0tc3RyYXRlZ3k9cmVjdXJzaXZlIFwKKwkJCS1Yb3VycyBjb25mbGljdC1icmFuY2gKKwkpICYmCiAJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCiAJdGVzdCAkKGdpdCBzaG93IGNvbmZsaWN0LWJyYW5jaDpjb25mbGljdCkgPSAkKGNhdCBjb25mbGljdCkgJiYKIAl0ZXN0ICQoY2F0IGZpbGUxKSA9IFoKQEAgLTExNDIsNyArMTI1MCw3IEBACiAJdGVzdF9leHBlY3RfY29kZSAxIGdyZXAgICIJZW1wIiBlcnJvcgogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdzaG9ydCBTSEEtMSBzZXR1cCcgJwordGVzdF9leHBlY3Rfc3VjY2VzcyBTSEExICdzaG9ydCBTSEEtMSBzZXR1cCcgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IGNoZWNrb3V0IG1hc3RlciIgJiYKIAlnaXQgY2hlY2tvdXQgLS1vcnBoYW4gY29sbGlkZSAmJgogCWdpdCBybSAtcmYgLiAmJgpAQCAtMTE1NCwyMiArMTI2MiwzNyBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2hvcnQgU0hBLTEgY29sbGlkZScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyBTSEExICdzaG9ydCBTSEEtMSBjb2xsaWRlJyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJyZXNldF9yZWJhc2UgJiYgZ2l0IGNoZWNrb3V0IG1hc3RlciIgJiYKIAlnaXQgY2hlY2tvdXQgY29sbGlkZSAmJgorCWNvbGxpZGluZ19zaGExPTZiY2RhMzcgJiYKKwl0ZXN0ICRjb2xsaWRpbmdfc2hhMSA9ICIkKGdpdCByZXYtcGFyc2UgSEVBRCB8IGN1dCAtYyAxLTcpIiAmJgogCSgKLQl1bnNldCB0ZXN0X3RpY2sgJiYKLQl0ZXN0X3RpY2sgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQlGQUtFX0NPTU1JVF9NRVNTQUdFPSJjb2xsaWRlMiBhYzRmMmVlIiBcCi0JRkFLRV9MSU5FUz0icmV3b3JkIDEgMiIgZ2l0IHJlYmFzZSAtaSBIRUFEfjIKLQkpCisJCXVuc2V0IHRlc3RfdGljayAmJgorCQl0ZXN0X3RpY2sgJiYKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfQ09NTUlUX01FU1NBR0U9ImNvbGxpZGUyIGFjNGYyZWUiIFwKKwkJRkFLRV9MSU5FUz0icmV3b3JkIDEgYnJlYWsgMiIgZ2l0IHJlYmFzZSAtaSBIRUFEfjIgJiYKKwkJdGVzdCAkY29sbGlkaW5nX3NoYTEgPSAiJChnaXQgcmV2LXBhcnNlIEhFQUQgfCBjdXQgLWMgMS03KSIgJiYKKwkJZ3JlcCAiXnBpY2sgJGNvbGxpZGluZ19zaGExICIgXAorCQkJLmdpdC9yZWJhc2UtbWVyZ2UvZ2l0LXJlYmFzZS10b2RvLnRtcCAmJgorCQlncmVwICJecGljayBbMC05YS1mXVx7NDBcfSIgXAorCQkJLmdpdC9yZWJhc2UtbWVyZ2UvZ2l0LXJlYmFzZS10b2RvICYmCisJCWdyZXAgIl5waWNrIFswLTlhLWZdXHs0MFx9IiBcCisJCQkuZ2l0L3JlYmFzZS1tZXJnZS9naXQtcmViYXNlLXRvZG8uYmFja3VwICYmCisJCWdpdCByZWJhc2UgLS1jb250aW51ZQorCSkgJiYKKwljb2xsaWRlMj0iJChnaXQgcmV2LXBhcnNlIEhFQUR+MSB8IGN1dCAtYyAxLTQpIiAmJgorCWNvbGxpZGUzPSIkKGdpdCByZXYtcGFyc2UgY29sbGlkZTMgfCBjdXQgLWMgMS00KSIgJiYKKwl0ZXN0ICIkY29sbGlkZTIiID0gIiRjb2xsaWRlMyIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVzcGVjdCBjb3JlLmFiYnJldicgJwogCWdpdCBjb25maWcgY29yZS5hYmJyZXYgMTIgJiYKLQlzZXRfY2F0X3RvZG9fZWRpdG9yICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtaSBIRUFEfjQgPnRvZG8tbGlzdCAmJgorCSgKKwkJc2V0X2NhdF90b2RvX2VkaXRvciAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC1pIEhFQUR+NCA+dG9kby1saXN0CisJKSAmJgogCXRlc3QgNCA9ICQoZ3JlcCAtYyAicGljayBbMC05YS1mXVx7MTIsXH0iIHRvZG8tbGlzdCkKICcKIApAQCAtMTE3NywxNiArMTMwMCwyMCBAQAogCXdyaXRlX3NjcmlwdCBkdW1wLXJhdy5zaCA8PC1cRU9GICYmCiAJCWNhdCAiJDEiCiAJRU9GCi0JdGVzdF9zZXRfZWRpdG9yICIkKHB3ZCkvZHVtcC1yYXcuc2giICYmCi0JZ2l0IHJlYmFzZSAtaSBIRUFEfjQgPmFjdHVhbCAmJgorCSgKKwkJdGVzdF9zZXRfZWRpdG9yICIkKHB3ZCkvZHVtcC1yYXcuc2giICYmCisJCWdpdCByZWJhc2UgLWkgSEVBRH40ID5hY3R1YWwKKwkpICYmCiAJdGVzdF9pMThuZ3JlcCAiXiMgUmViYXNlIC4uKiBvbnRvIC4uKiAoWzAtOV0iIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLWkgY29tbWl0cyB0aGF0IG92ZXJ3cml0ZSB1bnRyYWNrZWQgZmlsZXMgKHBpY2spJyAnCiAJZ2l0IGNoZWNrb3V0IC0tZm9yY2UgYnJhbmNoMiAmJgogCWdpdCBjbGVhbiAtZiAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfTElORVM9ImVkaXQgMSAyIiBnaXQgcmViYXNlIC1pIEEgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlGQUtFX0xJTkVTPSJlZGl0IDEgMiIgZ2l0IHJlYmFzZSAtaSBBCisJKSAmJgogCXRlc3RfY21wX3JldiBIRUFEIEYgJiYKIAl0ZXN0X3BhdGhfaXNfbWlzc2luZyBmaWxlNiAmJgogCT5maWxlNiAmJgpAQCAtMTIwMSw4ICsxMzI4LDEwIEBACiAJZ2l0IGNoZWNrb3V0IC0tZm9yY2UgYnJhbmNoMiAmJgogCWdpdCBjbGVhbiAtZiAmJgogCWdpdCB0YWcgb3JpZ2luYWwtYnJhbmNoMiAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfTElORVM9ImVkaXQgMSBzcXVhc2ggMiIgZ2l0IHJlYmFzZSAtaSBBICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iZWRpdCAxIHNxdWFzaCAyIiBnaXQgcmViYXNlIC1pIEEKKwkpICYmCiAJdGVzdF9jbXBfcmV2IEhFQUQgRiAmJgogCXRlc3RfcGF0aF9pc19taXNzaW5nIGZpbGU2ICYmCiAJPmZpbGU2ICYmCkBAIC0xMjE3LDggKzEzNDYsMTAgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtaSBjb21taXRzIHRoYXQgb3ZlcndyaXRlIHVudHJhY2tlZCBmaWxlcyAobm8gZmYpJyAnCiAJZ2l0IGNoZWNrb3V0IC0tZm9yY2UgYnJhbmNoMiAmJgogCWdpdCBjbGVhbiAtZiAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfTElORVM9ImVkaXQgMSAyIiBnaXQgcmViYXNlIC1pIC0tbm8tZmYgQSAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfTElORVM9ImVkaXQgMSAyIiBnaXQgcmViYXNlIC1pIC0tbm8tZmYgQQorCSkgJiYKIAl0ZXN0ICQoZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEIHwgc2VkIC1uZSBcJHApID0gRiAmJgogCXRlc3RfcGF0aF9pc19taXNzaW5nIGZpbGU2ICYmCiAJPmZpbGU2ICYmCkBAIC0xMjQxLDggKzEzNzIsMTAgQEAKIAlnaXQgdGFnIHNlcS1vbnRvICYmCiAJZ2l0IHJlc2V0IC0taGFyZCBIRUFEfjIgJiYKIAlnaXQgY2hlcnJ5LXBpY2sgc2VxLW9udG8gJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0gZ2l0IHJlYmFzZSAtaSBzZXEtb250byAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0xJTkVTPSBnaXQgcmViYXNlIC1pIHNlcS1vbnRvCisJKSAmJgogCXRlc3QgLWQgLmdpdC9yZWJhc2UtbWVyZ2UgJiYKIAlnaXQgcmViYXNlIC0tY29udGludWUgJiYKIAlnaXQgZGlmZiAtLWV4aXQtY29kZSBzZXEtb250byAmJgpAQCAtMTI2MSw4ICsxMzk0LDEwIEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Ryb3AnICcKIAlyZWJhc2Vfc2V0dXBfYW5kX2NsZWFuIGRyb3AtdGVzdCAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfTElORVM9IjEgZHJvcCAyIDMgZCA0IDUiIGdpdCByZWJhc2UgLWkgLS1yb290ICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iMSBkcm9wIDIgMyBkIDQgNSIgZ2l0IHJlYmFzZSAtaSAtLXJvb3QKKwkpICYmCiAJdGVzdCBFID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLW5lIFwkcCkgJiYKIAl0ZXN0IEMgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF4gfCBzZWQgLW5lIFwkcCkgJiYKIAl0ZXN0IEEgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF5eIHwgc2VkIC1uZSBcJHApCkBAIC0xMjcxLDc2ICsxNDA2LDE4NSBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC1pIHJlc3BlY3RzIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrID0gaWdub3JlJyAnCiAJdGVzdF9jb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2sgaWdub3JlICYmCiAJcmViYXNlX3NldHVwX2FuZF9jbGVhbiBtaXNzaW5nLWNvbW1pdCAmJgotCXNldF9mYWtlX2VkaXRvciAmJgotCUZBS0VfTElORVM9IjEgMiAzIDQiIFwKLQkJZ2l0IHJlYmFzZSAtaSAtLXJvb3QgMj5hY3R1YWwgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlGQUtFX0xJTkVTPSIxIDIgMyA0IiBnaXQgcmViYXNlIC1pIC0tcm9vdCAyPmFjdHVhbAorCSkgJiYKIAl0ZXN0IEQgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IHNlZCAtbmUgXCRwKSAmJgogCXRlc3RfaTE4bmdyZXAgXAogCQkiU3VjY2Vzc2Z1bGx5IHJlYmFzZWQgYW5kIHVwZGF0ZWQgcmVmcy9oZWFkcy9taXNzaW5nLWNvbW1pdCIgXAogCQlhY3R1YWwKICcKIAotY2F0ID5leHBlY3QgPDxFT0YKLVdhcm5pbmc6IHNvbWUgY29tbWl0cyBtYXkgaGF2ZSBiZWVuIGRyb3BwZWQgYWNjaWRlbnRhbGx5LgotRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6Ci0gLSAkKGdpdCByZXYtbGlzdCAtLXByZXR0eT1vbmVsaW5lIC0tYWJicmV2LWNvbW1pdCAtMSBtYXN0ZXIpCi1UbyBhdm9pZCB0aGlzIG1lc3NhZ2UsIHVzZSAiZHJvcCIgdG8gZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuCi0KLVVzZSAnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaycgdG8gY2hhbmdlIHRoZSBsZXZlbCBvZiB3YXJuaW5ncy4KLVRoZSBwb3NzaWJsZSBiZWhhdmlvdXJzIGFyZTogaWdub3JlLCB3YXJuLCBlcnJvci4KLQotUmViYXNpbmcgKDEvNCkKLVJlYmFzaW5nICgyLzQpCi1SZWJhc2luZyAoMy80KQotUmViYXNpbmcgKDQvNCkKLVN1Y2Nlc3NmdWxseSByZWJhc2VkIGFuZCB1cGRhdGVkIHJlZnMvaGVhZHMvbWlzc2luZy1jb21taXQuCi1FT0YKLQotY3JfdG9fbmwgKCkgewotCXRyICdcMDE1JyAnXDAxMicKLX0KLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC1pIHJlc3BlY3RzIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrID0gd2FybicgJworCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCVdhcm5pbmc6IHNvbWUgY29tbWl0cyBtYXkgaGF2ZSBiZWVuIGRyb3BwZWQgYWNjaWRlbnRhbGx5LgorCURyb3BwZWQgY29tbWl0cyAobmV3ZXIgdG8gb2xkZXIpOgorCSAtICQoZ2l0IHJldi1saXN0IC0tcHJldHR5PW9uZWxpbmUgLS1hYmJyZXYtY29tbWl0IC0xIG1hc3RlcikKKwlUbyBhdm9pZCB0aGlzIG1lc3NhZ2UsIHVzZSAiZHJvcCIgdG8gZXhwbGljaXRseSByZW1vdmUgYSBjb21taXQuCisJRU9GCiAJdGVzdF9jb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2sgd2FybiAmJgogCXJlYmFzZV9zZXR1cF9hbmRfY2xlYW4gbWlzc2luZy1jb21taXQgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQlGQUtFX0xJTkVTPSIxIDIgMyA0IiBcCi0JCWdpdCByZWJhc2UgLWkgLS1yb290IDI+YWN0dWFsLjIgJiYKLQljcl90b19ubCA8YWN0dWFsLjIgPmFjdHVhbCAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfTElORVM9IjEgMiAzIDQiIGdpdCByZWJhc2UgLWkgLS1yb290IDI+YWN0dWFsLjIKKwkpICYmCisJaGVhZCAtbjQgYWN0dWFsLjIgPmFjdHVhbCAmJgogCXRlc3RfaTE4bmNtcCBleHBlY3QgYWN0dWFsICYmCiAJdGVzdCBEID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLW5lIFwkcCkKICcKIAotY2F0ID5leHBlY3QgPDxFT0YKLVdhcm5pbmc6IHNvbWUgY29tbWl0cyBtYXkgaGF2ZSBiZWVuIGRyb3BwZWQgYWNjaWRlbnRhbGx5LgotRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6Ci0gLSAkKGdpdCByZXYtbGlzdCAtLXByZXR0eT1vbmVsaW5lIC0tYWJicmV2LWNvbW1pdCAtMSBtYXN0ZXIpCi0gLSAkKGdpdCByZXYtbGlzdCAtLXByZXR0eT1vbmVsaW5lIC0tYWJicmV2LWNvbW1pdCAtMSBtYXN0ZXJ+MikKLVRvIGF2b2lkIHRoaXMgbWVzc2FnZSwgdXNlICJkcm9wIiB0byBleHBsaWNpdGx5IHJlbW92ZSBhIGNvbW1pdC4KLQotVXNlICdnaXQgY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrJyB0byBjaGFuZ2UgdGhlIGxldmVsIG9mIHdhcm5pbmdzLgotVGhlIHBvc3NpYmxlIGJlaGF2aW91cnMgYXJlOiBpZ25vcmUsIHdhcm4sIGVycm9yLgotCi1Zb3UgY2FuIGZpeCB0aGlzIHdpdGggJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nIGFuZCB0aGVuIHJ1biAnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJy4KLU9yIHlvdSBjYW4gYWJvcnQgdGhlIHJlYmFzZSB3aXRoICdnaXQgcmViYXNlIC0tYWJvcnQnLgotRU9GCi0KIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtaSByZXNwZWN0cyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjayA9IGVycm9yJyAnCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuCisJRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6CisJIC0gJChnaXQgcmV2LWxpc3QgLS1wcmV0dHk9b25lbGluZSAtLWFiYnJldi1jb21taXQgLTEgbWFzdGVyKQorCSAtICQoZ2l0IHJldi1saXN0IC0tcHJldHR5PW9uZWxpbmUgLS1hYmJyZXYtY29tbWl0IC0xIG1hc3Rlcn4yKQorCVRvIGF2b2lkIHRoaXMgbWVzc2FnZSwgdXNlICJkcm9wIiB0byBleHBsaWNpdGx5IHJlbW92ZSBhIGNvbW1pdC4KKworCVVzZSAnXCcnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaydcJycgdG8gY2hhbmdlIHRoZSBsZXZlbCBvZiB3YXJuaW5ncy4KKwlUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuCisKKwlZb3UgY2FuIGZpeCB0aGlzIHdpdGggJ1wnJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nXCcnIGFuZCB0aGVuIHJ1biAnXCcnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJ1wnJy4KKwlPciB5b3UgY2FuIGFib3J0IHRoZSByZWJhc2Ugd2l0aCAnXCcnZ2l0IHJlYmFzZSAtLWFib3J0J1wnJy4KKwlFT0YKIAl0ZXN0X2NvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjayBlcnJvciAmJgogCXJlYmFzZV9zZXR1cF9hbmRfY2xlYW4gbWlzc2luZy1jb21taXQgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iMSAyIDQiIFwKLQkJZ2l0IHJlYmFzZSAtaSAtLXJvb3QgMj5hY3R1YWwgJiYKLQl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbCAmJgotCWNwIC5naXQvcmViYXNlLW1lcmdlL2dpdC1yZWJhc2UtdG9kby5iYWNrdXAgXAotCQkuZ2l0L3JlYmFzZS1tZXJnZS9naXQtcmViYXNlLXRvZG8gJiYKLQlGQUtFX0xJTkVTPSIxIDIgZHJvcCAzIDQgZHJvcCA1IiBcCi0JCWdpdCByZWJhc2UgLS1lZGl0LXRvZG8gJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iMSAyIDQiIFwKKwkJCWdpdCByZWJhc2UgLWkgLS1yb290IDI+YWN0dWFsICYmCisJCXRlc3RfaTE4bmNtcCBleHBlY3QgYWN0dWFsICYmCisJCWNwIC5naXQvcmViYXNlLW1lcmdlL2dpdC1yZWJhc2UtdG9kby5iYWNrdXAgXAorCQkJLmdpdC9yZWJhc2UtbWVyZ2UvZ2l0LXJlYmFzZS10b2RvICYmCisJCUZBS0VfTElORVM9IjEgMiBkcm9wIDMgNCBkcm9wIDUiIGdpdCByZWJhc2UgLS1lZGl0LXRvZG8KKwkpICYmCiAJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCiAJdGVzdCBEID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLW5lIFwkcCkgJiYKIAl0ZXN0IEIgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF4gfCBzZWQgLW5lIFwkcCkKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC0tZWRpdC10b2RvIHJlc3BlY3RzIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrID0gaWdub3JlJyAnCisJdGVzdF9jb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2sgaWdub3JlICYmCisJcmViYXNlX3NldHVwX2FuZF9jbGVhbiBtaXNzaW5nLWNvbW1pdCAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfTElORVM9ImJyZWFrIDEgMiAzIDQgNSIgZ2l0IHJlYmFzZSAtaSAtLXJvb3QgJiYKKwkJRkFLRV9MSU5FUz0iMSAyIDMgNCIgZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbyAmJgorCQlnaXQgcmViYXNlIC0tY29udGludWUgMj5hY3R1YWwKKwkpICYmCisJdGVzdCBEID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLW5lIFwkcCkgJiYKKwl0ZXN0X2kxOG5ncmVwIFwKKwkJIlN1Y2Nlc3NmdWxseSByZWJhc2VkIGFuZCB1cGRhdGVkIHJlZnMvaGVhZHMvbWlzc2luZy1jb21taXQiIFwKKwkJYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtLWVkaXQtdG9kbyByZXNwZWN0cyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjayA9IHdhcm4nICcKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwllcnJvcjogaW52YWxpZCBsaW5lIDE6IGJhZGNtZCAkKGdpdCByZXYtbGlzdCAtLXByZXR0eT1vbmVsaW5lIC0tYWJicmV2LWNvbW1pdCAtMSBtYXN0ZXJ+NCkKKwlXYXJuaW5nOiBzb21lIGNvbW1pdHMgbWF5IGhhdmUgYmVlbiBkcm9wcGVkIGFjY2lkZW50YWxseS4KKwlEcm9wcGVkIGNvbW1pdHMgKG5ld2VyIHRvIG9sZGVyKToKKwkgLSAkKGdpdCByZXYtbGlzdCAtLXByZXR0eT1vbmVsaW5lIC0tYWJicmV2LWNvbW1pdCAtMSBtYXN0ZXIpCisJIC0gJChnaXQgcmV2LWxpc3QgLS1wcmV0dHk9b25lbGluZSAtLWFiYnJldi1jb21taXQgLTEgbWFzdGVyfjQpCisJVG8gYXZvaWQgdGhpcyBtZXNzYWdlLCB1c2UgImRyb3AiIHRvIGV4cGxpY2l0bHkgcmVtb3ZlIGEgY29tbWl0LgorCUVPRgorCWhlYWQgLW40IGV4cGVjdCA+ZXhwZWN0LjIgJiYKKwl0YWlsIC1uMSBleHBlY3QgPj5leHBlY3QuMiAmJgorCXRhaWwgLW40IGV4cGVjdC4yID5leHBlY3QuMyAmJgorCXRlc3RfY29uZmlnIHJlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrIHdhcm4gJiYKKwlyZWJhc2Vfc2V0dXBfYW5kX2NsZWFuIG1pc3NpbmctY29tbWl0ICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZW52IEZBS0VfTElORVM9ImJhZCAxIDIgMyA0IDUiIFwKKwkJCWdpdCByZWJhc2UgLWkgLS1yb290ICYmCisJCWNwIC5naXQvcmViYXNlLW1lcmdlL2dpdC1yZWJhc2UtdG9kby5iYWNrdXAgb3JpZyAmJgorCQlGQUtFX0xJTkVTPSIyIDMgNCIgZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbyAyPmFjdHVhbC4yICYmCisJCWhlYWQgLW42IGFjdHVhbC4yID5hY3R1YWwgJiYKKwkJdGVzdF9pMThuY21wIGV4cGVjdCBhY3R1YWwgJiYKKwkJY3Agb3JpZyAuZ2l0L3JlYmFzZS1tZXJnZS9naXQtcmViYXNlLXRvZG8gJiYKKwkJRkFLRV9MSU5FUz0iMSAyIDMgNCIgZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbyAyPmFjdHVhbC4yICYmCisJCWhlYWQgLW40IGFjdHVhbC4yID5hY3R1YWwgJiYKKwkJdGVzdF9pMThuY21wIGV4cGVjdC4zIGFjdHVhbCAmJgorCQlnaXQgcmViYXNlIC0tY29udGludWUgMj5hY3R1YWwKKwkpICYmCisJdGVzdCBEID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLW5lIFwkcCkgJiYKKwl0ZXN0X2kxOG5ncmVwIFwKKwkJIlN1Y2Nlc3NmdWxseSByZWJhc2VkIGFuZCB1cGRhdGVkIHJlZnMvaGVhZHMvbWlzc2luZy1jb21taXQiIFwKKwkJYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtLWVkaXQtdG9kbyByZXNwZWN0cyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjayA9IGVycm9yJyAnCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJZXJyb3I6IGludmFsaWQgbGluZSAxOiBiYWRjbWQgJChnaXQgcmV2LWxpc3QgLS1wcmV0dHk9b25lbGluZSAtLWFiYnJldi1jb21taXQgLTEgbWFzdGVyfjQpCisJV2FybmluZzogc29tZSBjb21taXRzIG1heSBoYXZlIGJlZW4gZHJvcHBlZCBhY2NpZGVudGFsbHkuCisJRHJvcHBlZCBjb21taXRzIChuZXdlciB0byBvbGRlcik6CisJIC0gJChnaXQgcmV2LWxpc3QgLS1wcmV0dHk9b25lbGluZSAtLWFiYnJldi1jb21taXQgLTEgbWFzdGVyKQorCSAtICQoZ2l0IHJldi1saXN0IC0tcHJldHR5PW9uZWxpbmUgLS1hYmJyZXYtY29tbWl0IC0xIG1hc3Rlcn40KQorCVRvIGF2b2lkIHRoaXMgbWVzc2FnZSwgdXNlICJkcm9wIiB0byBleHBsaWNpdGx5IHJlbW92ZSBhIGNvbW1pdC4KKworCVVzZSAnXCcnZ2l0IGNvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjaydcJycgdG8gY2hhbmdlIHRoZSBsZXZlbCBvZiB3YXJuaW5ncy4KKwlUaGUgcG9zc2libGUgYmVoYXZpb3VycyBhcmU6IGlnbm9yZSwgd2FybiwgZXJyb3IuCisKKwlZb3UgY2FuIGZpeCB0aGlzIHdpdGggJ1wnJ2dpdCByZWJhc2UgLS1lZGl0LXRvZG8nXCcnIGFuZCB0aGVuIHJ1biAnXCcnZ2l0IHJlYmFzZSAtLWNvbnRpbnVlJ1wnJy4KKwlPciB5b3UgY2FuIGFib3J0IHRoZSByZWJhc2Ugd2l0aCAnXCcnZ2l0IHJlYmFzZSAtLWFib3J0J1wnJy4KKwlFT0YKKwl0YWlsIC1uMTEgZXhwZWN0ID5leHBlY3QuMiAmJgorCWhlYWQgLW4zIGV4cGVjdC4yID5leHBlY3QuMyAmJgorCXRhaWwgLW43IGV4cGVjdC4yID4+ZXhwZWN0LjMgJiYKKwl0ZXN0X2NvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjayBlcnJvciAmJgorCXJlYmFzZV9zZXR1cF9hbmRfY2xlYW4gbWlzc2luZy1jb21taXQgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iYmFkIDEgMiAzIDQgNSIgXAorCQkJZ2l0IHJlYmFzZSAtaSAtLXJvb3QgJiYKKwkJY3AgLmdpdC9yZWJhc2UtbWVyZ2UvZ2l0LXJlYmFzZS10b2RvLmJhY2t1cCBvcmlnICYmCisJCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0xJTkVTPSIyIDMgNCIgXAorCQkJZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbyAyPmFjdHVhbCAmJgorCQl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC0tY29udGludWUgMj5hY3R1YWwgJiYKKwkJdGVzdF9pMThuY21wIGV4cGVjdC4yIGFjdHVhbCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC0tZWRpdC10b2RvICYmCisJCWNwIG9yaWcgLmdpdC9yZWJhc2UtbWVyZ2UvZ2l0LXJlYmFzZS10b2RvICYmCisJCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0xJTkVTPSIxIDIgMyA0IiBcCisJCQlnaXQgcmViYXNlIC0tZWRpdC10b2RvIDI+YWN0dWFsICYmCisJCXRlc3RfaTE4bmNtcCBleHBlY3QuMyBhY3R1YWwgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIDI+YWN0dWFsICYmCisJCXRlc3RfaTE4bmNtcCBleHBlY3QuMyBhY3R1YWwgJiYKKwkJY3Agb3JpZyAuZ2l0L3JlYmFzZS1tZXJnZS9naXQtcmViYXNlLXRvZG8gJiYKKwkJRkFLRV9MSU5FUz0iMSAyIDMgNCBkcm9wIDUiIGdpdCByZWJhc2UgLS1lZGl0LXRvZG8gJiYKKwkJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIDI+YWN0dWFsCisJKSAmJgorCXRlc3QgRCA9ICQoZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEIHwgc2VkIC1uZSBcJHApICYmCisJdGVzdF9pMThuZ3JlcCBcCisJCSJTdWNjZXNzZnVsbHkgcmViYXNlZCBhbmQgdXBkYXRlZCByZWZzL2hlYWRzL21pc3NpbmctY29tbWl0IiBcCisJCWFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjayA9IGVycm9yIGFmdGVyIHJlc29sdmluZyBjb25mbGljdHMnICcKKwl0ZXN0X2NvbmZpZyByZWJhc2UubWlzc2luZ0NvbW1pdHNDaGVjayBlcnJvciAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfTElORVM9ImRyb3AgMSBicmVhayAyIDMgNCIgZ2l0IHJlYmFzZSAtaSBBIEUKKwkpICYmCisJZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbyAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1jb250aW51ZSAmJgorCWVjaG8geCA+ZmlsZTEgJiYKKwlnaXQgYWRkIGZpbGUxICYmCisJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZS5taXNzaW5nQ29tbWl0c0NoZWNrID0gZXJyb3Igd2hlbiBlZGl0aW5nIGZvciBhIHNlY29uZCB0aW1lJyAnCisJdGVzdF9jb25maWcgcmViYXNlLm1pc3NpbmdDb21taXRzQ2hlY2sgZXJyb3IgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlGQUtFX0xJTkVTPSIxIGJyZWFrIDIgMyIgZ2l0IHJlYmFzZSAtaSBBIEQgJiYKKwkJY3AgLmdpdC9yZWJhc2UtbWVyZ2UvZ2l0LXJlYmFzZS10b2RvIHRvZG8gJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZW52IEZBS0VfTElORVM9MiBnaXQgcmViYXNlIC0tZWRpdC10b2RvICYmCisJCUdJVF9TRVFVRU5DRV9FRElUT1I9ImNwIHRvZG8iIGdpdCByZWJhc2UgLS1lZGl0LXRvZG8gJiYKKwkJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlCisJKQorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXNwZWN0cyByZWJhc2UuYWJicmV2aWF0ZUNvbW1hbmRzIHdpdGggZml4dXAsIHNxdWFzaCBhbmQgZXhlYycgJwogCXJlYmFzZV9zZXR1cF9hbmRfY2xlYW4gYWJicmV2Y21kICYmCiAJdGVzdF9jb21taXQgImZpcnN0IiBmaWxlMS50eHQgImZpcnN0IGxpbmUiIGZpcnN0ICYmCkBAIC0xMzU2LDIxICsxNjAwLDI3IEBACiAJeCBnaXQgc2hvdyBIRUFECiAJRU9GCiAJZ2l0IGNoZWNrb3V0IGFiYnJldmNtZCAmJgotCXNldF9jYXRfdG9kb19lZGl0b3IgJiYKIAl0ZXN0X2NvbmZpZyByZWJhc2UuYWJicmV2aWF0ZUNvbW1hbmRzIHRydWUgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC1pIC0tZXhlYyAiZ2l0IHNob3cgSEVBRCIgXAotCQktLWF1dG9zcXVhc2ggbWFzdGVyID5hY3R1YWwgJiYKKwkoCisJCXNldF9jYXRfdG9kb19lZGl0b3IgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtaSAtLWV4ZWMgImdpdCBzaG93IEhFQUQiIFwKKwkJCS0tYXV0b3NxdWFzaCBtYXN0ZXIgPmFjdHVhbAorCSkgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3RhdGljIGNoZWNrIG9mIGJhZCBjb21tYW5kJyAnCiAJcmViYXNlX3NldHVwX2FuZF9jbGVhbiBiYWQtY21kICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JdGVzdF9tdXN0X2ZhaWwgZW52IEZBS0VfTElORVM9IjEgMiAzIGJhZCA0IDUiIFwKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iMSAyIDMgYmFkIDQgNSIgXAogCQlnaXQgcmViYXNlIC1pIC0tcm9vdCAyPmFjdHVhbCAmJgotCXRlc3RfaTE4bmdyZXAgImJhZGNtZCAkKGdpdCByZXYtbGlzdCAtLW9uZWxpbmUgLTEgbWFzdGVyfjEpIiBhY3R1YWwgJiYKLQl0ZXN0X2kxOG5ncmVwICJZb3UgY2FuIGZpeCB0aGlzIHdpdGggLmdpdCByZWJhc2UgLS1lZGl0LXRvZG8uLiIgYWN0dWFsICYmCi0JRkFLRV9MSU5FUz0iMSAyIDMgZHJvcCA0IDUiIGdpdCByZWJhc2UgLS1lZGl0LXRvZG8gJiYKKwkJdGVzdF9pMThuZ3JlcCAiYmFkY21kICQoZ2l0IHJldi1saXN0IC0tb25lbGluZSAtMSBtYXN0ZXJ+MSkiIFwKKwkJCQlhY3R1YWwgJiYKKwkJdGVzdF9pMThuZ3JlcCAiWW91IGNhbiBmaXggdGhpcyB3aXRoIC5naXQgcmViYXNlIC0tZWRpdC10b2RvLi4iIFwKKwkJCQlhY3R1YWwgJiYKKwkJRkFLRV9MSU5FUz0iMSAyIDMgZHJvcCA0IDUiIGdpdCByZWJhc2UgLS1lZGl0LXRvZG8KKwkpICYmCiAJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCiAJdGVzdCBFID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLW5lIFwkcCkgJiYKIAl0ZXN0IEMgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF4gfCBzZWQgLW5lIFwkcCkKQEAgLTEzODYsMTkgKzE2MzYsMjQgQEAKIAkpID4iJDEubmV3IgogCW12ICIkMS5uZXciICIkMSIKIAlFT0YKLQl0ZXN0X3NldF9lZGl0b3IgIiQocHdkKS9hZGQtaW5kZW50LnNoIiAmJgotCWdpdCByZWJhc2UgLWkgSEVBRF5eXiAmJgorCSgKKwkJdGVzdF9zZXRfZWRpdG9yICIkKHB3ZCkvYWRkLWluZGVudC5zaCIgJiYKKwkJZ2l0IHJlYmFzZSAtaSBIRUFEXl5eCisJKSAmJgogCXRlc3QgRSA9ICQoZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEIHwgc2VkIC1uZSBcJHApCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXRpYyBjaGVjayBvZiBiYWQgU0hBLTEnICcKIAlyZWJhc2Vfc2V0dXBfYW5kX2NsZWFuIGJhZC1zaGEgJiYKLQlzZXRfZmFrZV9lZGl0b3IgJiYKLQl0ZXN0X211c3RfZmFpbCBlbnYgRkFLRV9MSU5FUz0iMSAyIGVkaXQgZmFrZXNoYSAzIDQgNSAjIiBcCi0JCWdpdCByZWJhc2UgLWkgLS1yb290IDI+YWN0dWFsICYmCi0JdGVzdF9pMThuZ3JlcCAiZWRpdCBYWFhYWFhYIEZhbHNlIGNvbW1pdCIgYWN0dWFsICYmCi0JdGVzdF9pMThuZ3JlcCAiWW91IGNhbiBmaXggdGhpcyB3aXRoIC5naXQgcmViYXNlIC0tZWRpdC10b2RvLi4iIGFjdHVhbCAmJgotCUZBS0VfTElORVM9IjEgMiA0IDUgNiIgZ2l0IHJlYmFzZSAtLWVkaXQtdG9kbyAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCXRlc3RfbXVzdF9mYWlsIGVudiBGQUtFX0xJTkVTPSIxIDIgZWRpdCBmYWtlc2hhIDMgNCA1ICMiIFwKKwkJCWdpdCByZWJhc2UgLWkgLS1yb290IDI+YWN0dWFsICYmCisJCQl0ZXN0X2kxOG5ncmVwICJlZGl0IFhYWFhYWFggRmFsc2UgY29tbWl0IiBhY3R1YWwgJiYKKwkJCXRlc3RfaTE4bmdyZXAgIllvdSBjYW4gZml4IHRoaXMgd2l0aCAuZ2l0IHJlYmFzZSAtLWVkaXQtdG9kby4uIiBcCisJCQkJCWFjdHVhbCAmJgorCQlGQUtFX0xJTkVTPSIxIDIgNCA1IDYiIGdpdCByZWJhc2UgLS1lZGl0LXRvZG8KKwkpICYmCiAJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCiAJdGVzdCBFID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLW5lIFwkcCkKICcKQEAgLTE0MTUsNDIgKzE2NzAsOTkgQEAKIAkpCiAnCiAKLVNRPSInIgogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC1pIC0tZ3BnLXNpZ249PGtleS1pZD4nICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgInRlc3RfbWlnaHRfZmFpbCBnaXQgcmViYXNlIC0tYWJvcnQiICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JRkFLRV9MSU5FUz0iZWRpdCAxIiBnaXQgcmViYXNlIC1pIC0tZ3BnLXNpZ249IlwiUyBJIEduZXJcIiIgSEVBRF4gXAotCQk+b3V0IDI+ZXJyICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iZWRpdCAxIiBnaXQgcmViYXNlIC1pIC0tZ3BnLXNpZ249IlwiUyBJIEduZXJcIiIgXAorCQkJSEVBRF4gPm91dCAyPmVycgorCSkgJiYKIAl0ZXN0X2kxOG5ncmVwICIkU1EtU1wiUyBJIEduZXJcIiRTUSIgZXJyCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtaSAtLWdwZy1zaWduPTxrZXktaWQ+IG92ZXJyaWRlcyBjb21taXQuZ3BnU2lnbicgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCAidGVzdF9taWdodF9mYWlsIGdpdCByZWJhc2UgLS1hYm9ydCIgJiYKIAl0ZXN0X2NvbmZpZyBjb21taXQuZ3Bnc2lnbiB0cnVlICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCi0JRkFLRV9MSU5FUz0iZWRpdCAxIiBnaXQgcmViYXNlIC1pIC0tZ3BnLXNpZ249IlwiUyBJIEduZXJcIiIgSEVBRF4gXAotCQk+b3V0IDI+ZXJyICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iZWRpdCAxIiBnaXQgcmViYXNlIC1pIC0tZ3BnLXNpZ249IlwiUyBJIEduZXJcIiIgXAorCQkJSEVBRF4gPm91dCAyPmVycgorCSkgJiYKIAl0ZXN0X2kxOG5ncmVwICIkU1EtU1wiUyBJIEduZXJcIiRTUSIgZXJyCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ZhbGlkIGF1dGhvciBoZWFkZXIgYWZ0ZXIgLS1yb290IHN3YXAnICcKIAlyZWJhc2Vfc2V0dXBfYW5kX2NsZWFuIGF1dGhvci1oZWFkZXIgbm8tY29uZmxpY3QtYnJhbmNoICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCiAJZ2l0IGNvbW1pdCAtLWFtZW5kIC0tYXV0aG9yPSJBdSAke1NRfXRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4iIC0tbm8tZWRpdCAmJgogCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IGdyZXAgXmF1dGhvciA+ZXhwZWN0ZWQgJiYKLQlGQUtFX0xJTkVTPSI1IDEiIGdpdCByZWJhc2UgLWkgLS1yb290ICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iNSAxIiBnaXQgcmViYXNlIC1pIC0tcm9vdAorCSkgJiYKIAlnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUReIHwgZ3JlcCBeYXV0aG9yID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndmFsaWQgYXV0aG9yIGhlYWRlciB3aGVuIGF1dGhvciBjb250YWlucyBzaW5nbGUgcXVvdGUnICcKIAlyZWJhc2Vfc2V0dXBfYW5kX2NsZWFuIGF1dGhvci1oZWFkZXIgbm8tY29uZmxpY3QtYnJhbmNoICYmCi0Jc2V0X2Zha2VfZWRpdG9yICYmCiAJZ2l0IGNvbW1pdCAtLWFtZW5kIC0tYXV0aG9yPSJBdSAke1NRfXRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4iIC0tbm8tZWRpdCAmJgogCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IGdyZXAgXmF1dGhvciA+ZXhwZWN0ZWQgJiYKLQlGQUtFX0xJTkVTPSIyIiBnaXQgcmViYXNlIC1pIEhFQUR+MiAmJgorCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfTElORVM9IjIiIGdpdCByZWJhc2UgLWkgSEVBRH4yCisJKSAmJgogCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IGdyZXAgXmF1dGhvciA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Bvc3QtY29tbWl0IGhvb2sgaXMgY2FsbGVkJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiAuZ2l0L2hvb2tzL3Bvc3QtY29tbWl0IiAmJgorCT5hY3R1YWwgJiYKKwlta2RpciAtcCAuZ2l0L2hvb2tzICYmCisJd3JpdGVfc2NyaXB0IC5naXQvaG9va3MvcG9zdC1jb21taXQgPDwtXEVPUyAmJgorCWdpdCByZXYtcGFyc2UgSEVBRCA+PmFjdHVhbAorCUVPUworCSgKKwkJc2V0X2Zha2VfZWRpdG9yICYmCisJCUZBS0VfTElORVM9ImVkaXQgNCAxIHJld29yZCAyIGZpeHVwIDMiIGdpdCByZWJhc2UgLWkgQSBFICYmCisJCWVjaG8geD5maWxlMyAmJgorCQlnaXQgYWRkIGZpbGUzICYmCisJCUZBS0VfQ09NTUlUX01FU1NBR0U9ZWRpdGVkIGdpdCByZWJhc2UgLS1jb250aW51ZQorCSkgJiYKKwlnaXQgcmV2LXBhcnNlIEhFQURAezV9IEhFQURAezR9IEhFQURAezN9IEhFQURAezJ9IEhFQURAezF9IEhFQUQgXAorCQk+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3JyZWN0IGVycm9yIG1lc3NhZ2UgZm9yIHBhcnRpYWwgY29tbWl0IGFmdGVyIGVtcHR5IHBpY2snICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZWJhc2UgLS1hYm9ydCIgJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlGQUtFX0xJTkVTPSIyIDEgMSIgJiYKKwkJZXhwb3J0IEZBS0VfTElORVMgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtaSBBIEQKKwkpICYmCisJZWNobyB4ID5maWxlMSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBjb21taXQgZmlsZTEgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJjYW5ub3QgZG8gYSBwYXJ0aWFsIGNvbW1pdCBkdXJpbmcgYSByZWJhc2UuIiBlcnIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29ycmVjdCBlcnJvciBtZXNzYWdlIGZvciBjb21taXQgLS1hbWVuZCBhZnRlciBlbXB0eSBwaWNrJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmViYXNlIC0tYWJvcnQiICYmCisJKAorCQlzZXRfZmFrZV9lZGl0b3IgJiYKKwkJRkFLRV9MSU5FUz0iMSAxIiAmJgorCQlleHBvcnQgRkFLRV9MSU5FUyAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC1pIEEgRAorCSkgJiYKKwllY2hvIHg+ZmlsZTEgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0IC1hIC0tYW1lbmQgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJtaWRkbGUgb2YgYSByZWJhc2UgLS0gY2Fubm90IGFtZW5kLiIgZXJyCisnCisKKyMgVGhpcyBtdXN0IGJlIHRoZSBsYXN0IHRlc3QgaW4gdGhpcyBmaWxlCit0ZXN0X2V4cGVjdF9zdWNjZXNzICckRURJVE9SIGFuZCBmcmllbmRzIGFyZSB1bmNoYW5nZWQnICcKKwl0ZXN0X2VkaXRvcl91bmNoYW5nZWQKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzNDA2LXJlYmFzZS1tZXNzYWdlLnNoIGIvdC90MzQwNi1yZWJhc2UtbWVzc2FnZS5zaAppbmRleCBmNjRiMTMwLi42MWI3NmYzIDEwMDc1NQotLS0gYS90L3QzNDA2LXJlYmFzZS1tZXNzYWdlLnNoCisrKyBiL3QvdDM0MDYtcmViYXNlLW1lc3NhZ2Uuc2gKQEAgLTE3LDM4ICsxNywzMCBAQAogCWdpdCB0YWcgc3RhcnQKICcKIAotY2F0ID5leHBlY3QgPDxcRU9GCi1BbHJlYWR5IGFwcGxpZWQ6IDAwMDEgQQotQWxyZWFkeSBhcHBsaWVkOiAwMDAyIEIKLUNvbW1pdHRlZDogMDAwMyBaCi1FT0YKLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC1tJyAnCi0JZ2l0IHJlYmFzZSAtbSBtYXN0ZXIgPnJlcG9ydCAmJgotCXNlZCAtbiAtZSAiL15BbHJlYWR5IGFwcGxpZWQ6IC9wIiBcCi0JCS1lICIvXkNvbW1pdHRlZDogL3AiIHJlcG9ydCA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorCWdpdCByZWJhc2UgLW0gbWFzdGVyID5hY3R1YWwgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSBhZ2FpbnN0IG1hc3RlciB0d2ljZScgJwotCWdpdCByZWJhc2UgbWFzdGVyID5vdXQgJiYKKwlnaXQgcmViYXNlIC0tYXBwbHkgbWFzdGVyID5vdXQgJiYKIAl0ZXN0X2kxOG5ncmVwICJDdXJyZW50IGJyYW5jaCB0b3BpYyBpcyB1cCB0byBkYXRlIiBvdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIGFnYWluc3QgbWFzdGVyIHR3aWNlIHdpdGggLS1mb3JjZScgJwotCWdpdCByZWJhc2UgLS1mb3JjZS1yZWJhc2UgbWFzdGVyID5vdXQgJiYKKwlnaXQgcmViYXNlIC0tZm9yY2UtcmViYXNlIC0tYXBwbHkgbWFzdGVyID5vdXQgJiYKIAl0ZXN0X2kxOG5ncmVwICJDdXJyZW50IGJyYW5jaCB0b3BpYyBpcyB1cCB0byBkYXRlLCByZWJhc2UgZm9yY2VkIiBvdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIGFnYWluc3QgbWFzdGVyIHR3aWNlIGZyb20gYW5vdGhlciBicmFuY2gnICcKIAlnaXQgY2hlY2tvdXQgdG9waWNeICYmCi0JZ2l0IHJlYmFzZSBtYXN0ZXIgdG9waWMgPm91dCAmJgorCWdpdCByZWJhc2UgLS1hcHBseSBtYXN0ZXIgdG9waWMgPm91dCAmJgogCXRlc3RfaTE4bmdyZXAgIkN1cnJlbnQgYnJhbmNoIHRvcGljIGlzIHVwIHRvIGRhdGUiIG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgZmFzdC1mb3J3YXJkIHRvIG1hc3RlcicgJwogCWdpdCBjaGVja291dCB0b3BpY14gJiYKLQlnaXQgcmViYXNlIHRvcGljID5vdXQgJiYKKwlnaXQgcmViYXNlIC0tYXBwbHkgdG9waWMgPm91dCAmJgogCXRlc3RfaTE4bmdyZXAgIkZhc3QtZm9yd2FyZGVkIEhFQUQgdG8gdG9waWMiIG91dAogJwogCkBAIC05Nyw3ICs4OSw3IEBACiAJZ2l0IGNoZWNrb3V0IC1iIHJlZmxvZy10b3BpYyBzdGFydCAmJgogCXRlc3RfY29tbWl0IHJlZmxvZy10by1yZWJhc2UgJiYKIAotCWdpdCByZWJhc2UgcmVmbG9nLW9udG8gJiYKKwlnaXQgcmViYXNlIC0tYXBwbHkgcmVmbG9nLW9udG8gJiYKIAlnaXQgbG9nIC1nIC0tZm9ybWF0PSVncyAtMyA+YWN0dWFsICYmCiAJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgogCXJlYmFzZSBmaW5pc2hlZDogcmV0dXJuaW5nIHRvIHJlZnMvaGVhZHMvcmVmbG9nLXRvcGljCkBAIC0xMDcsNyArOTksNyBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAogCWdpdCBjaGVja291dCAtYiByZWZsb2ctcHJlZml4IHJlZmxvZy10by1yZWJhc2UgJiYKLQlHSVRfUkVGTE9HX0FDVElPTj1jaGFuZ2UtdGhlLXJlZmxvZyBnaXQgcmViYXNlIHJlZmxvZy1vbnRvICYmCisJR0lUX1JFRkxPR19BQ1RJT049Y2hhbmdlLXRoZS1yZWZsb2cgZ2l0IHJlYmFzZSAtLWFwcGx5IHJlZmxvZy1vbnRvICYmCiAJZ2l0IGxvZyAtZyAtLWZvcm1hdD0lZ3MgLTMgPmFjdHVhbCAmJgogCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKIAlyZWJhc2UgZmluaXNoZWQ6IHJldHVybmluZyB0byByZWZzL2hlYWRzL3JlZmxvZy1wcmVmaXgKZGlmZiAtLWdpdCBhL3QvdDM0MDctcmViYXNlLWFib3J0LnNoIGIvdC90MzQwNy1yZWJhc2UtYWJvcnQuc2gKaW5kZXggOTEwZjIxOC4uOTdlZmVhMCAxMDA3NTUKLS0tIGEvdC90MzQwNy1yZWJhc2UtYWJvcnQuc2gKKysrIGIvdC90MzQwNy1yZWJhc2UtYWJvcnQuc2gKQEAgLTk2LDE0ICs5NiwxNCBAQAogCScKIH0KIAotdGVzdHJlYmFzZSAiIiAuZ2l0L3JlYmFzZS1hcHBseQordGVzdHJlYmFzZSAiIC0tYXBwbHkiIC5naXQvcmViYXNlLWFwcGx5CiB0ZXN0cmViYXNlICIgLS1tZXJnZSIgLmdpdC9yZWJhc2UtbWVyZ2UKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC0tcXVpdCcgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC0tYXBwbHkgLS1xdWl0JyAnCiAJY2QgIiR3b3JrX2RpciIgJiYKIAkjIENsZWFuIHVwIHRoZSBzdGF0ZSBmcm9tIHRoZSBwcmV2aW91cyBvbmUKIAlnaXQgcmVzZXQgLS1oYXJkIHByZS1yZWJhc2UgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIG1hc3RlciAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1hcHBseSBtYXN0ZXIgJiYKIAl0ZXN0X3BhdGhfaXNfZGlyIC5naXQvcmViYXNlLWFwcGx5ICYmCiAJaGVhZF9iZWZvcmU9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJZ2l0IHJlYmFzZSAtLXF1aXQgJiYKZGlmZiAtLWdpdCBhL3QvdDM0MTUtcmViYXNlLWF1dG9zcXVhc2guc2ggYi90L3QzNDE1LXJlYmFzZS1hdXRvc3F1YXNoLnNoCmluZGV4IDEzZjU2ODguLjA5M2RlOTAgMTAwNzU1Ci0tLSBhL3QvdDM0MTUtcmViYXNlLWF1dG9zcXVhc2guc2gKKysrIGIvdC90MzQxNS1yZWJhc2UtYXV0b3NxdWFzaC5zaApAQCAtMjUsNiArMjUsMTMgQEAKICcKIAogdGVzdF9hdXRvX2ZpeHVwICgpIHsKKwlub19zcXVhc2g9ICYmCisJaWYgdGVzdCAieCQxIiA9ICd4IScKKwl0aGVuCisJCW5vX3NxdWFzaD10cnVlCisJCXNoaWZ0CisJZmkgJiYKKwogCWdpdCByZXNldCAtLWhhcmQgYmFzZSAmJgogCWVjaG8gMSA+ZmlsZTEgJiYKIAlnaXQgYWRkIC11ICYmCkBAIC0zNSwxMCArNDIsMTkgQEAKIAl0ZXN0X3RpY2sgJiYKIAlnaXQgcmViYXNlICQyIC1pIEhFQUReXl4gJiYKIAlnaXQgbG9nIC0tb25lbGluZSA+YWN0dWFsICYmCi0JdGVzdF9saW5lX2NvdW50ID0gMyBhY3R1YWwgJiYKLQlnaXQgZGlmZiAtLWV4aXQtY29kZSAkMSAmJgotCXRlc3QgMSA9ICIkKGdpdCBjYXQtZmlsZSBibG9iIEhFQUReOmZpbGUxKSIgJiYKLQl0ZXN0IDEgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF4gfCBncmVwIGZpcnN0IHwgd2MgLWwpCisJaWYgdGVzdCAtbiAiJG5vX3NxdWFzaCIKKwl0aGVuCisJCXRlc3RfbGluZV9jb3VudCA9IDQgYWN0dWFsCisJZWxzZQorCQl0ZXN0X2xpbmVfY291bnQgPSAzIGFjdHVhbCAmJgorCQlnaXQgZGlmZiAtLWV4aXQtY29kZSAkMSAmJgorCQllY2hvIDEgPmV4cGVjdCAmJgorCQlnaXQgY2F0LWZpbGUgYmxvYiBIRUFEXjpmaWxlMSA+YWN0dWFsICYmCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKwkJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEXiA+Y29tbWl0ICYmCisJCWdyZXAgZmlyc3QgY29tbWl0ID5hY3R1YWwgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMSBhY3R1YWwKKwlmaQogfQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhdXRvIGZpeHVwIChvcHRpb24pJyAnCkBAIC00OCwxMiArNjQsMTkgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2F1dG8gZml4dXAgKGNvbmZpZyknICcKIAlnaXQgY29uZmlnIHJlYmFzZS5hdXRvc3F1YXNoIHRydWUgJiYKIAl0ZXN0X2F1dG9fZml4dXAgZmluYWwtZml4dXAtY29uZmlnLXRydWUgJiYKLQl0ZXN0X211c3RfZmFpbCB0ZXN0X2F1dG9fZml4dXAgZml4dXAtY29uZmlnLXRydWUtbm8gLS1uby1hdXRvc3F1YXNoICYmCisJdGVzdF9hdXRvX2ZpeHVwICEgZml4dXAtY29uZmlnLXRydWUtbm8gLS1uby1hdXRvc3F1YXNoICYmCiAJZ2l0IGNvbmZpZyByZWJhc2UuYXV0b3NxdWFzaCBmYWxzZSAmJgotCXRlc3RfbXVzdF9mYWlsIHRlc3RfYXV0b19maXh1cCBmaW5hbC1maXh1cC1jb25maWctZmFsc2UKKwl0ZXN0X2F1dG9fZml4dXAgISBmaW5hbC1maXh1cC1jb25maWctZmFsc2UKICcKIAogdGVzdF9hdXRvX3NxdWFzaCAoKSB7CisJbm9fc3F1YXNoPSAmJgorCWlmIHRlc3QgIngkMSIgPSAneCEnCisJdGhlbgorCQlub19zcXVhc2g9dHJ1ZQorCQlzaGlmdAorCWZpICYmCisKIAlnaXQgcmVzZXQgLS1oYXJkIGJhc2UgJiYKIAllY2hvIDEgPmZpbGUxICYmCiAJZ2l0IGFkZCAtdSAmJgpAQCAtNjQsMTAgKzg3LDE5IEBACiAJdGVzdF90aWNrICYmCiAJZ2l0IHJlYmFzZSAkMiAtaSBIRUFEXl5eICYmCiAJZ2l0IGxvZyAtLW9uZWxpbmUgPmFjdHVhbCAmJgotCXRlc3RfbGluZV9jb3VudCA9IDMgYWN0dWFsICYmCi0JZ2l0IGRpZmYgLS1leGl0LWNvZGUgJDEgJiYKLQl0ZXN0IDEgPSAiJChnaXQgY2F0LWZpbGUgYmxvYiBIRUFEXjpmaWxlMSkiICYmCi0JdGVzdCAyID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUReIHwgZ3JlcCBmaXJzdCB8IHdjIC1sKQorCWlmIHRlc3QgLW4gIiRub19zcXVhc2giCisJdGhlbgorCQl0ZXN0X2xpbmVfY291bnQgPSA0IGFjdHVhbAorCWVsc2UKKwkJdGVzdF9saW5lX2NvdW50ID0gMyBhY3R1YWwgJiYKKwkJZ2l0IGRpZmYgLS1leGl0LWNvZGUgJDEgJiYKKwkJZWNobyAxID5leHBlY3QgJiYKKwkJZ2l0IGNhdC1maWxlIGJsb2IgSEVBRF46ZmlsZTEgPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF4gPmNvbW1pdCAmJgorCQlncmVwIGZpcnN0IGNvbW1pdCA+YWN0dWFsICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDIgYWN0dWFsCisJZmkKIH0KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYXV0byBzcXVhc2ggKG9wdGlvbiknICcKQEAgLTc3LDkgKzEwOSw5IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhdXRvIHNxdWFzaCAoY29uZmlnKScgJwogCWdpdCBjb25maWcgcmViYXNlLmF1dG9zcXVhc2ggdHJ1ZSAmJgogCXRlc3RfYXV0b19zcXVhc2ggZmluYWwtc3F1YXNoLWNvbmZpZy10cnVlICYmCi0JdGVzdF9tdXN0X2ZhaWwgdGVzdF9hdXRvX3NxdWFzaCBzcXVhc2gtY29uZmlnLXRydWUtbm8gLS1uby1hdXRvc3F1YXNoICYmCisJdGVzdF9hdXRvX3NxdWFzaCAhIHNxdWFzaC1jb25maWctdHJ1ZS1ubyAtLW5vLWF1dG9zcXVhc2ggJiYKIAlnaXQgY29uZmlnIHJlYmFzZS5hdXRvc3F1YXNoIGZhbHNlICYmCi0JdGVzdF9tdXN0X2ZhaWwgdGVzdF9hdXRvX3NxdWFzaCBmaW5hbC1zcXVhc2gtY29uZmlnLWZhbHNlCisJdGVzdF9hdXRvX3NxdWFzaCAhIGZpbmFsLXNxdWFzaC1jb25maWctZmFsc2UKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbWlzc3BlbGxlZCBhdXRvIHNxdWFzaCcgJwpAQCAtOTQsNyArMTI2LDggQEAKIAlnaXQgbG9nIC0tb25lbGluZSA+YWN0dWFsICYmCiAJdGVzdF9saW5lX2NvdW50ID0gNCBhY3R1YWwgJiYKIAlnaXQgZGlmZiAtLWV4aXQtY29kZSBmaW5hbC1taXNzcXVhc2ggJiYKLQl0ZXN0IDAgPSAkKGdpdCByZXYtbGlzdCBmaW5hbC1taXNzcXVhc2guLi5IRUFEIHwgd2MgLWwpCisJZ2l0IHJldi1saXN0IGZpbmFsLW1pc3NxdWFzaC4uLkhFQUQgPmxpc3QgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgbGlzdAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhdXRvIHNxdWFzaCB0aGF0IG1hdGNoZXMgMiBjb21taXRzJyAnCkBAIC0xMTMsOSArMTQ2LDE1IEBACiAJZ2l0IGxvZyAtLW9uZWxpbmUgPmFjdHVhbCAmJgogCXRlc3RfbGluZV9jb3VudCA9IDQgYWN0dWFsICYmCiAJZ2l0IGRpZmYgLS1leGl0LWNvZGUgZmluYWwtbXVsdGlzcXVhc2ggJiYKLQl0ZXN0IDEgPSAiJChnaXQgY2F0LWZpbGUgYmxvYiBIRUFEXl46ZmlsZTEpIiAmJgotCXRlc3QgMiA9ICQoZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEXl4gfCBncmVwIGZpcnN0IHwgd2MgLWwpICYmCi0JdGVzdCAxID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBncmVwIGZpcnN0IHwgd2MgLWwpCisJZWNobyAxID5leHBlY3QgJiYKKwlnaXQgY2F0LWZpbGUgYmxvYiBIRUFEXl46ZmlsZTEgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKwlnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUReXiA+Y29tbWl0ICYmCisJZ3JlcCBmaXJzdCBjb21taXQgPmFjdHVhbCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDIgYWN0dWFsICYmCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEID5jb21taXQgJiYKKwlncmVwIGZpcnN0IGNvbW1pdCA+YWN0dWFsICYmCisJdGVzdF9saW5lX2NvdW50ID0gMSBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYXV0byBzcXVhc2ggdGhhdCBtYXRjaGVzIGEgY29tbWl0IGFmdGVyIHRoZSBzcXVhc2gnICcKQEAgLTEzNCwyNSArMTczLDM4IEBACiAJZ2l0IGxvZyAtLW9uZWxpbmUgPmFjdHVhbCAmJgogCXRlc3RfbGluZV9jb3VudCA9IDUgYWN0dWFsICYmCiAJZ2l0IGRpZmYgLS1leGl0LWNvZGUgZmluYWwtcHJlc3F1YXNoICYmCi0JdGVzdCAwID0gIiQoZ2l0IGNhdC1maWxlIGJsb2IgSEVBRF5eOmZpbGUxKSIgJiYKLQl0ZXN0IDEgPSAiJChnaXQgY2F0LWZpbGUgYmxvYiBIRUFEXjpmaWxlMSkiICYmCi0JdGVzdCAxID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBncmVwIHRoaXJkIHwgd2MgLWwpICYmCi0JdGVzdCAxID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUReIHwgZ3JlcCB0aGlyZCB8IHdjIC1sKQorCWVjaG8gMCA+ZXhwZWN0ICYmCisJZ2l0IGNhdC1maWxlIGJsb2IgSEVBRF5eOmZpbGUxID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJZWNobyAxID5leHBlY3QgJiYKKwlnaXQgY2F0LWZpbGUgYmxvYiBIRUFEXjpmaWxlMSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCA+Y29tbWl0ICYmCisJZ3JlcCB0aGlyZCBjb21taXQgPmFjdHVhbCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDEgYWN0dWFsICYmCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEXiA+Y29tbWl0ICYmCisJZ3JlcCB0aGlyZCBjb21taXQgPmFjdHVhbCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDEgYWN0dWFsCiAnCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhdXRvIHNxdWFzaCB0aGF0IG1hdGNoZXMgYSBzaGExJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCBiYXNlICYmCiAJZWNobyAxID5maWxlMSAmJgogCWdpdCBhZGQgLXUgJiYKIAl0ZXN0X3RpY2sgJiYKLQlnaXQgY29tbWl0IC1tICJzcXVhc2ghICQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUReKSIgJiYKKwlvaWQ9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRF4pICYmCisJZ2l0IGNvbW1pdCAtbSAic3F1YXNoISAkb2lkIiAmJgogCWdpdCB0YWcgZmluYWwtc2hhc3F1YXNoICYmCiAJdGVzdF90aWNrICYmCiAJZ2l0IHJlYmFzZSAtLWF1dG9zcXVhc2ggLWkgSEVBRF5eXiAmJgogCWdpdCBsb2cgLS1vbmVsaW5lID5hY3R1YWwgJiYKIAl0ZXN0X2xpbmVfY291bnQgPSAzIGFjdHVhbCAmJgogCWdpdCBkaWZmIC0tZXhpdC1jb2RlIGZpbmFsLXNoYXNxdWFzaCAmJgotCXRlc3QgMSA9ICIkKGdpdCBjYXQtZmlsZSBibG9iIEhFQUReOmZpbGUxKSIgJiYKLQl0ZXN0IDEgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF4gfCBncmVwIHNxdWFzaCB8IHdjIC1sKQorCWVjaG8gMSA+ZXhwZWN0ICYmCisJZ2l0IGNhdC1maWxlIGJsb2IgSEVBRF46ZmlsZTEgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKwlnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUReID5jb21taXQgJiYKKwlncmVwIHNxdWFzaCBjb21taXQgPmFjdHVhbCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDEgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2F1dG8gc3F1YXNoIHRoYXQgbWF0Y2hlcyBsb25nZXIgc2hhMScgJwpAQCAtMTYwLDE1ICsyMTIsMjAgQEAKIAllY2hvIDEgPmZpbGUxICYmCiAJZ2l0IGFkZCAtdSAmJgogCXRlc3RfdGljayAmJgotCWdpdCBjb21taXQgLW0gInNxdWFzaCEgJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQ9MTEgSEVBRF4pIiAmJgorCW9pZD0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydD0xMSBIRUFEXikgJiYKKwlnaXQgY29tbWl0IC1tICJzcXVhc2ghICRvaWQiICYmCiAJZ2l0IHRhZyBmaW5hbC1sb25nc2hhc3F1YXNoICYmCiAJdGVzdF90aWNrICYmCiAJZ2l0IHJlYmFzZSAtLWF1dG9zcXVhc2ggLWkgSEVBRF5eXiAmJgogCWdpdCBsb2cgLS1vbmVsaW5lID5hY3R1YWwgJiYKIAl0ZXN0X2xpbmVfY291bnQgPSAzIGFjdHVhbCAmJgogCWdpdCBkaWZmIC0tZXhpdC1jb2RlIGZpbmFsLWxvbmdzaGFzcXVhc2ggJiYKLQl0ZXN0IDEgPSAiJChnaXQgY2F0LWZpbGUgYmxvYiBIRUFEXjpmaWxlMSkiICYmCi0JdGVzdCAxID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUReIHwgZ3JlcCBzcXVhc2ggfCB3YyAtbCkKKwllY2hvIDEgPmV4cGVjdCAmJgorCWdpdCBjYXQtZmlsZSBibG9iIEhFQUReOmZpbGUxID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEXiA+Y29tbWl0ICYmCisJZ3JlcCBzcXVhc2ggY29tbWl0ID5hY3R1YWwgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAxIGFjdHVhbAogJwogCiB0ZXN0X2F1dG9fY29tbWl0X2ZsYWdzICgpIHsKQEAgLTE4Myw4ICsyNDAsMTIgQEAKIAlnaXQgbG9nIC0tb25lbGluZSA+YWN0dWFsICYmCiAJdGVzdF9saW5lX2NvdW50ID0gMyBhY3R1YWwgJiYKIAlnaXQgZGlmZiAtLWV4aXQtY29kZSBmaW5hbC1jb21taXQtJDEgJiYKLQl0ZXN0IDEgPSAiJChnaXQgY2F0LWZpbGUgYmxvYiBIRUFEXjpmaWxlMSkiICYmCi0JdGVzdCAkMiA9ICQoZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEXiB8IGdyZXAgZmlyc3QgfCB3YyAtbCkKKwllY2hvIDEgPmV4cGVjdCAmJgorCWdpdCBjYXQtZmlsZSBibG9iIEhFQUReOmZpbGUxID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEXiA+Y29tbWl0ICYmCisJZ3JlcCBmaXJzdCBjb21taXQgPmFjdHVhbCAmJgorCXRlc3RfbGluZV9jb3VudCA9ICQyIGFjdHVhbAogfQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd1c2UgY29tbWl0IC0tZml4dXAnICcKQEAgLTIxMCwxMSArMjcxLDE1IEBACiAJKAogCQlzZXRfY2F0X3RvZG9fZWRpdG9yICYmCiAJCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1hdXRvc3F1YXNoIC1pIEhFQUReXl5eID5hY3R1YWwgJiYKKwkJaGVhZD0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEKSAmJgorCQlwYXJlbnQxPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUReKSAmJgorCQlwYXJlbnQyPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUReXikgJiYKKwkJcGFyZW50Mz0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEXl5eKSAmJgogCQljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCQlwaWNrICQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUReXl4pIGZpcnN0IGNvbW1pdAotCQkkMSAkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEXikgJDEhIGZpcnN0Ci0JCSQxICQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUQpICQxISAkMiEgZmlyc3QKLQkJcGljayAkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEXl4pIHNlY29uZCBjb21taXQKKwkJcGljayAkcGFyZW50MyBmaXJzdCBjb21taXQKKwkJJDEgJHBhcmVudDEgJDEhIGZpcnN0CisJCSQxICRoZWFkICQxISAkMiEgZmlyc3QKKwkJcGljayAkcGFyZW50MiBzZWNvbmQgY29tbWl0CiAJCUVPRgogCQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKIAkpICYmCkBAIC0yMjIsMTMgKzI4NywxNyBAQAogCWdpdCBsb2cgLS1vbmVsaW5lID5hY3R1YWwgJiYKIAl0ZXN0X2xpbmVfY291bnQgPSAzIGFjdHVhbAogCWdpdCBkaWZmIC0tZXhpdC1jb2RlICJmaW5hbC0kMS0kMiIgJiYKLQl0ZXN0IDIgPSAiJChnaXQgY2F0LWZpbGUgYmxvYiBIRUFEXjpmaWxlMSkiICYmCisJZWNobyAyID5leHBlY3QgJiYKKwlnaXQgY2F0LWZpbGUgYmxvYiBIRUFEXjpmaWxlMSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF4gPmNvbW1pdCAmJgorCWdyZXAgZmlyc3QgY29tbWl0ID5hY3R1YWwgJiYKIAlpZiB0ZXN0ICIkMSIgPSAiZml4dXAiCiAJdGhlbgotCQl0ZXN0IDEgPSAkKGdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF4gfCBncmVwIGZpcnN0IHwgd2MgLWwpCisJCXRlc3RfbGluZV9jb3VudCA9IDEgYWN0dWFsCiAJZWxpZiB0ZXN0ICIkMSIgPSAic3F1YXNoIgogCXRoZW4KLQkJdGVzdCAzID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUReIHwgZ3JlcCBmaXJzdCB8IHdjIC1sKQorCQl0ZXN0X2xpbmVfY291bnQgPSAzIGFjdHVhbAogCWVsc2UKIAkJZmFsc2UKIAlmaQpAQCAtMjU2LDE5ICszMjUsMjUgQEAKIAllY2hvIDIgPmZpbGUxICYmCiAJZ2l0IGFkZCAtdSAmJgogCXRlc3RfdGljayAmJgotCWdpdCBjb21taXQgLW0gInNxdWFzaCEgJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRF4pIiAmJgorCW9pZD0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEXikgJiYKKwlnaXQgY29tbWl0IC1tICJzcXVhc2ghICRvaWQiICYmCiAJZWNobyAxID5maWxlMSAmJgogCWdpdCBhZGQgLXUgJiYKIAl0ZXN0X3RpY2sgJiYKLQlnaXQgY29tbWl0IC1tICJzcXVhc2ghICQoZ2l0IGxvZyAtbiAxIC0tZm9ybWF0PSVzIEhFQUR+MikiICYmCisJc3ViamVjdD0kKGdpdCBsb2cgLW4gMSAtLWZvcm1hdD0lcyBIRUFEfjIpICYmCisJZ2l0IGNvbW1pdCAtbSAic3F1YXNoISAkc3ViamVjdCIgJiYKIAlnaXQgdGFnIGZpbmFsLXNxdWFzaC1pbnN0Rm10ICYmCiAJdGVzdF90aWNrICYmCiAJZ2l0IHJlYmFzZSAtLWF1dG9zcXVhc2ggLWkgSEVBRH40ICYmCiAJZ2l0IGxvZyAtLW9uZWxpbmUgPmFjdHVhbCAmJgogCXRlc3RfbGluZV9jb3VudCA9IDMgYWN0dWFsICYmCiAJZ2l0IGRpZmYgLS1leGl0LWNvZGUgZmluYWwtc3F1YXNoLWluc3RGbXQgJiYKLQl0ZXN0IDEgPSAiJChnaXQgY2F0LWZpbGUgYmxvYiBIRUFEXjpmaWxlMSkiICYmCi0JdGVzdCAyID0gJChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUReIHwgZ3JlcCBzcXVhc2ggfCB3YyAtbCkKKwllY2hvIDEgPmV4cGVjdCAmJgorCWdpdCBjYXQtZmlsZSBibG9iIEhFQUReOmZpbGUxID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEXiA+Y29tbWl0ICYmCisJZ3JlcCBzcXVhc2ggY29tbWl0ID5hY3R1YWwgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAyIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhdXRvc3F1YXNoIHdpdGggZW1wdHkgY3VzdG9tIGluc3RydWN0aW9uRm9ybWF0JyAnCkBAIC0yNzcsNyArMzUyLDcgQEAKIAkoCiAJCXNldF9jYXRfdG9kb19lZGl0b3IgJiYKIAkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIHJlYmFzZS5pbnN0cnVjdGlvbkZvcm1hdD0gXAotCQkJcmViYXNlIC0tYXV0b3NxdWFzaCAgLS1mb3JjZSAtaSBIRUFEXiA+YWN0dWFsICYmCisJCQlyZWJhc2UgLS1hdXRvc3F1YXNoICAtLWZvcmNlLXJlYmFzZSAtaSBIRUFEXiA+YWN0dWFsICYmCiAJCWdpdCBsb2cgLTEgLS1mb3JtYXQ9InBpY2sgJWggJXMiID5leHBlY3QgJiYKIAkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogCSkKZGlmZiAtLWdpdCBhL3QvdDM0MTYtcmViYXNlLW9udG8tdGhyZWVkb3RzLnNoIGIvdC90MzQxNi1yZWJhc2Utb250by10aHJlZWRvdHMuc2gKaW5kZXggZGRmMmY2NC4uOWMyNTQ4NCAxMDA3NTUKLS0tIGEvdC90MzQxNi1yZWJhc2Utb250by10aHJlZWRvdHMuc2gKKysrIGIvdC90MzQxNi1yZWJhc2Utb250by10aHJlZWRvdHMuc2gKQEAgLTk5LDcgKzk5LDY0IEBACiAJZ2l0IGNoZWNrb3V0IHNpZGUgJiYKIAlnaXQgcmVzZXQgLS1oYXJkIEsgJiYKIAorCXNldF9mYWtlX2VkaXRvciAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLWkgLS1vbnRvIG1hc3Rlci4uLnNpZGUgSgogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLS1rZWVwLWJhc2UgLS1vbnRvIGluY29tcGF0aWJsZScgJworCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1rZWVwLWJhc2UgLS1vbnRvIG1hc3Rlci4uLgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLS1rZWVwLWJhc2UgLS1yb290IGluY29tcGF0aWJsZScgJworCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1rZWVwLWJhc2UgLS1yb290CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtLWtlZXAtYmFzZSBtYXN0ZXIgZnJvbSB0b3BpYycgJworCWdpdCByZXNldCAtLWhhcmQgJiYKKwlnaXQgY2hlY2tvdXQgdG9waWMgJiYKKwlnaXQgcmVzZXQgLS1oYXJkIEcgJiYKKworCWdpdCByZWJhc2UgLS1rZWVwLWJhc2UgbWFzdGVyICYmCisJZ2l0IHJldi1wYXJzZSBDID5iYXNlLmV4cGVjdCAmJgorCWdpdCBtZXJnZS1iYXNlIG1hc3RlciBIRUFEID5iYXNlLmFjdHVhbCAmJgorCXRlc3RfY21wIGJhc2UuZXhwZWN0IGJhc2UuYWN0dWFsICYmCisKKwlnaXQgcmV2LXBhcnNlIEhFQUR+MiA+YWN0dWFsICYmCisJZ2l0IHJldi1wYXJzZSBDXjAgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC0ta2VlcC1iYXNlIG1hc3RlciBmcm9tIHNpZGUnICcKKwlnaXQgcmVzZXQgLS1oYXJkICYmCisJZ2l0IGNoZWNrb3V0IHNpZGUgJiYKKwlnaXQgcmVzZXQgLS1oYXJkIEsgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1rZWVwLWJhc2UgbWFzdGVyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtaSAtLWtlZXAtYmFzZSBtYXN0ZXIgZnJvbSB0b3BpYycgJworCWdpdCByZXNldCAtLWhhcmQgJiYKKwlnaXQgY2hlY2tvdXQgdG9waWMgJiYKKwlnaXQgcmVzZXQgLS1oYXJkIEcgJiYKKworCXNldF9mYWtlX2VkaXRvciAmJgorCUVYUEVDVF9DT1VOVD0yIGdpdCByZWJhc2UgLWkgLS1rZWVwLWJhc2UgbWFzdGVyICYmCisJZ2l0IHJldi1wYXJzZSBDID5iYXNlLmV4cGVjdCAmJgorCWdpdCBtZXJnZS1iYXNlIG1hc3RlciBIRUFEID5iYXNlLmFjdHVhbCAmJgorCXRlc3RfY21wIGJhc2UuZXhwZWN0IGJhc2UuYWN0dWFsICYmCisKKwlnaXQgcmV2LXBhcnNlIEhFQUR+MiA+YWN0dWFsICYmCisJZ2l0IHJldi1wYXJzZSBDXjAgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC1pIC0ta2VlcC1iYXNlIG1hc3RlciBmcm9tIHNpZGUnICcKKwlnaXQgcmVzZXQgLS1oYXJkICYmCisJZ2l0IGNoZWNrb3V0IHNpZGUgJiYKKwlnaXQgcmVzZXQgLS1oYXJkIEsgJiYKKworCXNldF9mYWtlX2VkaXRvciAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLWkgLS1rZWVwLWJhc2UgbWFzdGVyCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MzQxOC1yZWJhc2UtY29udGludWUuc2ggYi90L3QzNDE4LXJlYmFzZS1jb250aW51ZS5zaAppbmRleCAwMjEwYjJhLi43YTJkYTk3IDEwMDc1NQotLS0gYS90L3QzNDE4LXJlYmFzZS1jb250aW51ZS5zaAorKysgYi90L3QzNDE4LXJlYmFzZS1jb250aW51ZS5zaApAQCAtMTIwLDYgKzEyMCwyMCBAQAogCWdpdCByZWJhc2UgLS1jb250aW51ZQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLXIgcGFzc2VzIG1lcmdlIHN0cmF0ZWd5IG9wdGlvbnMgY29ycmVjdGx5JyAnCisJcm0gLWZyIC5naXQvcmViYXNlLSogJiYKKwlnaXQgcmVzZXQgLS1oYXJkIGNvbW1pdC1uZXctZmlsZS1GMy1vbi10b3BpYy1icmFuY2ggJiYKKwl0ZXN0X2NvbW1pdCBtZXJnZS10aGVpcnMgJiYKKwlnaXQgcmVzZXQgLS1oYXJkIEhFQUReICYmCisJdGVzdF9jb21taXQgc29tZS1vdGhlci1jb21taXQgJiYKKwl0ZXN0X3RpY2sgJiYKKwlnaXQgbWVyZ2UgLS1uby1mZiBtZXJnZS10aGVpcnMgJiYKKwlGQUtFX0xJTkVTPSIxIDMgZWRpdCA0IDUgNyA4IDkiIGdpdCByZWJhc2UgLWkgLWYgLXIgLW0gXAorCQktcyByZWN1cnNpdmUgLS1zdHJhdGVneS1vcHRpb249dGhlaXJzIEhFQUR+MiAmJgorCXRlc3RfY29tbWl0IGZvcmNlLWNoYW5nZS1vdXJzICYmCisJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tc2tpcCBhZnRlciBmYWlsZWQgZml4dXAgY2xlYW5zIGNvbW1pdCBtZXNzYWdlJyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJ0ZXN0X21pZ2h0X2ZhaWwgZ2l0IHJlYmFzZSAtLWFib3J0IiAmJgogCWdpdCBjaGVja291dCAtYiB3aXRoLWNvbmZsaWN0aW5nLWZpeHVwICYmCkBAIC0yNTQsNCArMjY4LDIzIEBACiAJdGVzdF9wYXRoX2lzX2ZpbGUgZXhlY2VkCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcmVzY2hlZHVsZS1mYWlsZWQtZXhlYycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlYmFzZSAtLWFib3J0IiAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLXggZmFsc2UgLS1yZXNjaGVkdWxlLWZhaWxlZC1leGVjIEhFQUReICYmCisJZ3JlcCAiXmV4ZWMgZmFsc2UiIC5naXQvcmViYXNlLW1lcmdlL2dpdC1yZWJhc2UtdG9kbyAmJgorCWdpdCByZWJhc2UgLS1hYm9ydCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyByZWJhc2UucmVzY2hlZHVsZUZhaWxlZEV4ZWM9dHJ1ZSBcCisJCXJlYmFzZSAteCBmYWxzZSBIRUFEXiAyPmVyciAmJgorCWdyZXAgIl5leGVjIGZhbHNlIiAuZ2l0L3JlYmFzZS1tZXJnZS9naXQtcmViYXNlLXRvZG8gJiYKKwl0ZXN0X2kxOG5ncmVwICJoYXMgYmVlbiByZXNjaGVkdWxlZCIgZXJyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZS5yZXNjaGVkdWxlZmFpbGVkZXhlYyBvbmx5IGFmZmVjdHMgYHJlYmFzZSAtaWAnICcKKwl0ZXN0X2NvbmZpZyByZWJhc2UucmVzY2hlZHVsZWZhaWxlZGV4ZWMgdHJ1ZSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLXggZmFsc2UgSEVBRF4gJiYKKwlncmVwICJeZXhlYyBmYWxzZSIgLmdpdC9yZWJhc2UtbWVyZ2UvZ2l0LXJlYmFzZS10b2RvICYmCisJZ2l0IHJlYmFzZSAtLWFib3J0ICYmCisJZ2l0IHJlYmFzZSBIRUFEXgorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDM0MTktcmViYXNlLXBhdGNoLWlkLnNoIGIvdC90MzQxOS1yZWJhc2UtcGF0Y2gtaWQuc2gKaW5kZXggNDlmNTQ4Yy4uZDkzNDU4MyAxMDA3NTUKLS0tIGEvdC90MzQxOS1yZWJhc2UtcGF0Y2gtaWQuc2gKKysrIGIvdC90MzQxOS1yZWJhc2UtcGF0Y2gtaWQuc2gKQEAgLTgwLDcgKzgwLDggQEAKIAkJZ2l0IGNvbW1pdCAtcSAtbSAiY2hhbmdlIGJpZyBmaWxlIGFnYWluIiAmJgogCQlnaXQgY2hlY2tvdXQgLXEgb3RoZXJee30gJiYKIAkJZ2l0IHJlYmFzZSBtYXN0ZXIgJiYKLQkJdGVzdF9tdXN0X2ZhaWwgdGVzdCAtbiAiJChnaXQgcmV2LWxpc3QgbWFzdGVyLi4uSEVBRH4pIgorCQlnaXQgcmV2LWxpc3QgbWFzdGVyLi4uSEVBRH4gPnJldnMgJiYKKwkJdGVzdF9tdXN0X2JlX2VtcHR5IHJldnMKIAknCiAKIAl0ZXN0X2V4cGVjdF9zdWNjZXNzICRwciAnZG8gbm90IGRyb3AgcGF0Y2gnICcKQEAgLTkwLDcgKzkxLDcgQEAKIAkJZ2l0IGNvbW1pdCAtcSAtbSBzcXVhc2hlZCAmJgogCQlnaXQgY2hlY2tvdXQgLXEgb3RoZXJee30gJiYKIAkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSBzcXVhc2hlZCAmJgotCQlybSAtcmYgLmdpdC9yZWJhc2UtYXBwbHkKKwkJZ2l0IHJlYmFzZSAtLXF1aXQKIAknCiB9CiAKZGlmZiAtLWdpdCBhL3QvdDM0MjAtcmViYXNlLWF1dG9zdGFzaC5zaCBiL3QvdDM0MjAtcmViYXNlLWF1dG9zdGFzaC5zaAppbmRleCA0Yzc0OTRjLi5iOTdlYTYyIDEwMDc1NQotLS0gYS90L3QzNDIwLXJlYmFzZS1hdXRvc3Rhc2guc2gKKysrIGIvdC90MzQyMC1yZWJhc2UtYXV0b3N0YXNoLnNoCkBAIC0zMCwxMyArMzAsMTMgQEAKIAllY2hvIGNvbmZsaWN0aW5nLWNoYW5nZSA+ZmlsZTIgJiYKIAlnaXQgYWRkIC4gJiYKIAl0ZXN0X3RpY2sgJiYKLQlnaXQgY29tbWl0IC1tICJyZWxhdGVkIGNvbW1pdCIKKwlnaXQgY29tbWl0IC1tICJyZWxhdGVkIGNvbW1pdCIgJiYKKwlyZW1vdmVfcHJvZ3Jlc3NfcmU9IiQocHJpbnRmICJzLy4qXFxyLy8iKSIKICcKIAotY3JlYXRlX2V4cGVjdGVkX3N1Y2Nlc3NfYW0gKCkgeworY3JlYXRlX2V4cGVjdGVkX3N1Y2Nlc3NfYXBwbHkgKCkgewogCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GCiAJJChncmVwICJeQ3JlYXRlZCBhdXRvc3Rhc2g6IFswLTlhLWZdWzAtOWEtZl0qXCQiIGFjdHVhbCkKLQlIRUFEIGlzIG5vdyBhdCAkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBmZWF0dXJlLWJyYW5jaCkgdGhpcmQgY29tbWl0CiAJRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uCiAJQXBwbHlpbmc6IHNlY29uZCBjb21taXQKIAlBcHBseWluZzogdGhpcmQgY29tbWl0CkBAIC00NCw1NCArNDQsMTcgQEAKIAlFT0YKIH0KIAotY3JlYXRlX2V4cGVjdGVkX3N1Y2Nlc3NfaW50ZXJhY3RpdmUgKCkgeworY3JlYXRlX2V4cGVjdGVkX3N1Y2Nlc3NfbWVyZ2UgKCkgewogCXFfdG9fY3IgPmV4cGVjdGVkIDw8LUVPRgogCSQoZ3JlcCAiXkNyZWF0ZWQgYXV0b3N0YXNoOiBbMC05YS1mXVswLTlhLWZdKlwkIiBhY3R1YWwpCi0JSEVBRCBpcyBub3cgYXQgJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgZmVhdHVyZS1icmFuY2gpIHRoaXJkIGNvbW1pdAotCVJlYmFzaW5nICgxLzIpUVJlYmFzaW5nICgyLzIpUUFwcGxpZWQgYXV0b3N0YXNoLgorCUFwcGxpZWQgYXV0b3N0YXNoLgogCVN1Y2Nlc3NmdWxseSByZWJhc2VkIGFuZCB1cGRhdGVkIHJlZnMvaGVhZHMvcmViYXNlZC1mZWF0dXJlLWJyYW5jaC4KIAlFT0YKIH0KIAotY3JlYXRlX2V4cGVjdGVkX3N1Y2Nlc3NfbWVyZ2UgKCkgeworY3JlYXRlX2V4cGVjdGVkX2ZhaWx1cmVfYXBwbHkgKCkgewogCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GCiAJJChncmVwICJeQ3JlYXRlZCBhdXRvc3Rhc2g6IFswLTlhLWZdWzAtOWEtZl0qXCQiIGFjdHVhbCkKLQlIRUFEIGlzIG5vdyBhdCAkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBmZWF0dXJlLWJyYW5jaCkgdGhpcmQgY29tbWl0Ci0JRmlyc3QsIHJld2luZGluZyBoZWFkIHRvIHJlcGxheSB5b3VyIHdvcmsgb24gdG9wIG9mIGl0Li4uCi0JTWVyZ2luZyB1bnJlbGF0ZWQtb250by1icmFuY2ggd2l0aCBIRUFEfjEKLQlNZXJnaW5nOgotCSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IHVucmVsYXRlZC1vbnRvLWJyYW5jaCkgdW5yZWxhdGVkIGNvbW1pdAotCSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IGZlYXR1cmUtYnJhbmNoXikgc2Vjb25kIGNvbW1pdAotCWZvdW5kIDEgY29tbW9uIGFuY2VzdG9yOgotCSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IGZlYXR1cmUtYnJhbmNofjIpIGluaXRpYWwgY29tbWl0Ci0JW2RldGFjaGVkIEhFQUQgJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgcmViYXNlZC1mZWF0dXJlLWJyYW5jaH4xKV0gc2Vjb25kIGNvbW1pdAotCSBBdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+Ci0JIERhdGU6IFRodSBBcHIgNyAxNToxNDoxMyAyMDA1IC0wNzAwCi0JIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspCi0JIGNyZWF0ZSBtb2RlIDEwMDY0NCBmaWxlMQotCSBjcmVhdGUgbW9kZSAxMDA2NDQgZmlsZTIKLQlDb21taXR0ZWQ6IDAwMDEgc2Vjb25kIGNvbW1pdAotCU1lcmdpbmcgdW5yZWxhdGVkLW9udG8tYnJhbmNoIHdpdGggSEVBRH4wCi0JTWVyZ2luZzoKLQkkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCByZWJhc2VkLWZlYXR1cmUtYnJhbmNofjEpIHNlY29uZCBjb21taXQKLQkkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBmZWF0dXJlLWJyYW5jaCkgdGhpcmQgY29tbWl0Ci0JZm91bmQgMSBjb21tb24gYW5jZXN0b3I6Ci0JJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgZmVhdHVyZS1icmFuY2h+MSkgc2Vjb25kIGNvbW1pdAotCVtkZXRhY2hlZCBIRUFEICQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IHJlYmFzZWQtZmVhdHVyZS1icmFuY2gpXSB0aGlyZCBjb21taXQKLQkgQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgotCSBEYXRlOiBUaHUgQXByIDcgMTU6MTU6MTMgMjAwNSAtMDcwMAotCSAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKykKLQkgY3JlYXRlIG1vZGUgMTAwNjQ0IGZpbGUzCi0JQ29tbWl0dGVkOiAwMDAyIHRoaXJkIGNvbW1pdAotCUFsbCBkb25lLgotCUFwcGxpZWQgYXV0b3N0YXNoLgotCUVPRgotfQotCi1jcmVhdGVfZXhwZWN0ZWRfZmFpbHVyZV9hbSAoKSB7Ci0JY2F0ID5leHBlY3RlZCA8PC1FT0YKLQkkKGdyZXAgIl5DcmVhdGVkIGF1dG9zdGFzaDogWzAtOWEtZl1bMC05YS1mXSpcJCIgYWN0dWFsKQotCUhFQUQgaXMgbm93IGF0ICQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IGZlYXR1cmUtYnJhbmNoKSB0aGlyZCBjb21taXQKIAlGaXJzdCwgcmV3aW5kaW5nIGhlYWQgdG8gcmVwbGF5IHlvdXIgd29yayBvbiB0b3Agb2YgaXQuLi4KIAlBcHBseWluZzogc2Vjb25kIGNvbW1pdAogCUFwcGx5aW5nOiB0aGlyZCBjb21taXQKQEAgLTEwMSw1MSArNjQsMTMgQEAKIAlFT0YKIH0KIAotY3JlYXRlX2V4cGVjdGVkX2ZhaWx1cmVfaW50ZXJhY3RpdmUgKCkgewotCXFfdG9fY3IgPmV4cGVjdGVkIDw8LUVPRgotCSQoZ3JlcCAiXkNyZWF0ZWQgYXV0b3N0YXNoOiBbMC05YS1mXVswLTlhLWZdKlwkIiBhY3R1YWwpCi0JSEVBRCBpcyBub3cgYXQgJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgZmVhdHVyZS1icmFuY2gpIHRoaXJkIGNvbW1pdAotCVJlYmFzaW5nICgxLzIpUVJlYmFzaW5nICgyLzIpUUFwcGx5aW5nIGF1dG9zdGFzaCByZXN1bHRlZCBpbiBjb25mbGljdHMuCi0JWW91ciBjaGFuZ2VzIGFyZSBzYWZlIGluIHRoZSBzdGFzaC4KLQlZb3UgY2FuIHJ1biAiZ2l0IHN0YXNoIHBvcCIgb3IgImdpdCBzdGFzaCBkcm9wIiBhdCBhbnkgdGltZS4KLQlTdWNjZXNzZnVsbHkgcmViYXNlZCBhbmQgdXBkYXRlZCByZWZzL2hlYWRzL3JlYmFzZWQtZmVhdHVyZS1icmFuY2guCi0JRU9GCi19Ci0KIGNyZWF0ZV9leHBlY3RlZF9mYWlsdXJlX21lcmdlICgpIHsKIAljYXQgPmV4cGVjdGVkIDw8LUVPRgogCSQoZ3JlcCAiXkNyZWF0ZWQgYXV0b3N0YXNoOiBbMC05YS1mXVswLTlhLWZdKlwkIiBhY3R1YWwpCi0JSEVBRCBpcyBub3cgYXQgJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgZmVhdHVyZS1icmFuY2gpIHRoaXJkIGNvbW1pdAotCUZpcnN0LCByZXdpbmRpbmcgaGVhZCB0byByZXBsYXkgeW91ciB3b3JrIG9uIHRvcCBvZiBpdC4uLgotCU1lcmdpbmcgdW5yZWxhdGVkLW9udG8tYnJhbmNoIHdpdGggSEVBRH4xCi0JTWVyZ2luZzoKLQkkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCB1bnJlbGF0ZWQtb250by1icmFuY2gpIHVucmVsYXRlZCBjb21taXQKLQkkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBmZWF0dXJlLWJyYW5jaF4pIHNlY29uZCBjb21taXQKLQlmb3VuZCAxIGNvbW1vbiBhbmNlc3RvcjoKLQkkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBmZWF0dXJlLWJyYW5jaH4yKSBpbml0aWFsIGNvbW1pdAotCVtkZXRhY2hlZCBIRUFEICQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IHJlYmFzZWQtZmVhdHVyZS1icmFuY2h+MSldIHNlY29uZCBjb21taXQKLQkgQXV0aG9yOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgotCSBEYXRlOiBUaHUgQXByIDcgMTU6MTQ6MTMgMjAwNSAtMDcwMAotCSAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKQotCSBjcmVhdGUgbW9kZSAxMDA2NDQgZmlsZTEKLQkgY3JlYXRlIG1vZGUgMTAwNjQ0IGZpbGUyCi0JQ29tbWl0dGVkOiAwMDAxIHNlY29uZCBjb21taXQKLQlNZXJnaW5nIHVucmVsYXRlZC1vbnRvLWJyYW5jaCB3aXRoIEhFQUR+MAotCU1lcmdpbmc6Ci0JJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgcmViYXNlZC1mZWF0dXJlLWJyYW5jaH4xKSBzZWNvbmQgY29tbWl0Ci0JJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgZmVhdHVyZS1icmFuY2gpIHRoaXJkIGNvbW1pdAotCWZvdW5kIDEgY29tbW9uIGFuY2VzdG9yOgotCSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IGZlYXR1cmUtYnJhbmNofjEpIHNlY29uZCBjb21taXQKLQlbZGV0YWNoZWQgSEVBRCAkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCByZWJhc2VkLWZlYXR1cmUtYnJhbmNoKV0gdGhpcmQgY29tbWl0Ci0JIEF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KLQkgRGF0ZTogVGh1IEFwciA3IDE1OjE1OjEzIDIwMDUgLTA3MDAKLQkgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspCi0JIGNyZWF0ZSBtb2RlIDEwMDY0NCBmaWxlMwotCUNvbW1pdHRlZDogMDAwMiB0aGlyZCBjb21taXQKLQlBbGwgZG9uZS4KIAlBcHBseWluZyBhdXRvc3Rhc2ggcmVzdWx0ZWQgaW4gY29uZmxpY3RzLgogCVlvdXIgY2hhbmdlcyBhcmUgc2FmZSBpbiB0aGUgc3Rhc2guCiAJWW91IGNhbiBydW4gImdpdCBzdGFzaCBwb3AiIG9yICJnaXQgc3Rhc2ggZHJvcCIgYXQgYW55IHRpbWUuCisJU3VjY2Vzc2Z1bGx5IHJlYmFzZWQgYW5kIHVwZGF0ZWQgcmVmcy9oZWFkcy9yZWJhc2VkLWZlYXR1cmUtYnJhbmNoLgogCUVPRgogfQogCkBAIC0xNzYsOSArMTAxLDEzIEBACiAKIAl0ZXN0X2V4cGVjdF9zdWNjZXNzICJyZWJhc2UkdHlwZSAtLWF1dG9zdGFzaDogY2hlY2sgb3V0cHV0IiAnCiAJCXRlc3Rfd2hlbl9maW5pc2hlZCBnaXQgYnJhbmNoIC1EIHJlYmFzZWQtZmVhdHVyZS1icmFuY2ggJiYKLQkJc3VmZml4PSR7dHlwZSNcIC0tfSAmJiBzdWZmaXg9JHtzdWZmaXg6LWFtfSAmJgorCQlzdWZmaXg9JHt0eXBlI1wgLS19ICYmIHN1ZmZpeD0ke3N1ZmZpeDotYXBwbHl9ICYmCisJCWlmIHRlc3QgJHtzdWZmaXh9ID0gImludGVyYWN0aXZlIjsgdGhlbgorCQkJc3VmZml4PW1lcmdlCisJCWZpICYmCiAJCWNyZWF0ZV9leHBlY3RlZF9zdWNjZXNzXyRzdWZmaXggJiYKLQkJdGVzdF9pMThuY21wIGV4cGVjdGVkIGFjdHVhbAorCQlzZWQgIiRyZW1vdmVfcHJvZ3Jlc3NfcmUiIDxhY3R1YWwgPmFjdHVhbDIgJiYKKwkJdGVzdF9pMThuY21wIGV4cGVjdGVkIGFjdHVhbDIKIAknCiAKIAl0ZXN0X2V4cGVjdF9zdWNjZXNzICJyZWJhc2UkdHlwZTogZGlydHkgaW5kZXgsIG5vbi1jb25mbGljdGluZyByZWJhc2UiICcKQEAgLTI3Myw5ICsyMDIsMTMgQEAKIAogCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgInJlYmFzZSR0eXBlOiBjaGVjayBvdXRwdXQgd2l0aCBjb25mbGljdGluZyBzdGFzaCIgJwogCQl0ZXN0X3doZW5fZmluaXNoZWQgZ2l0IGJyYW5jaCAtRCByZWJhc2VkLWZlYXR1cmUtYnJhbmNoICYmCi0JCXN1ZmZpeD0ke3R5cGUjXCAtLX0gJiYgc3VmZml4PSR7c3VmZml4Oi1hbX0gJiYKKwkJc3VmZml4PSR7dHlwZSNcIC0tfSAmJiBzdWZmaXg9JHtzdWZmaXg6LWFwcGx5fSAmJgorCQlpZiB0ZXN0ICR7c3VmZml4fSA9ICJpbnRlcmFjdGl2ZSI7IHRoZW4KKwkJCXN1ZmZpeD1tZXJnZQorCQlmaSAmJgogCQljcmVhdGVfZXhwZWN0ZWRfZmFpbHVyZV8kc3VmZml4ICYmCi0JCXRlc3RfaTE4bmNtcCBleHBlY3RlZCBhY3R1YWwKKwkJc2VkICIkcmVtb3ZlX3Byb2dyZXNzX3JlIiA8YWN0dWFsID5hY3R1YWwyICYmCisJCXRlc3RfaTE4bmNtcCBleHBlY3RlZCBhY3R1YWwyCiAJJwogfQogCkBAIC0zMDEsNyArMjM0LDcgQEAKIAlnaXQgY2hlY2tvdXQgZmVhdHVyZS1icmFuY2gKICcKIAotdGVzdHJlYmFzZSAiIiAuZ2l0L3JlYmFzZS1hcHBseQordGVzdHJlYmFzZSAiIC0tYXBwbHkiIC5naXQvcmViYXNlLWFwcGx5CiB0ZXN0cmViYXNlICIgLS1tZXJnZSIgLmdpdC9yZWJhc2UtbWVyZ2UKIHRlc3RyZWJhc2UgIiAtLWludGVyYWN0aXZlIiAuZ2l0L3JlYmFzZS1tZXJnZQogCkBAIC0zNjksNCArMzAyLDEyIEBACiAJdGVzdCB1bmNoYW5nZWQtYnJhbmNoID0gIiQoZ2l0IHJldi1wYXJzZSAtLWFiYnJldi1yZWYgSEVBRCkiCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25ldmVyIGNoYW5nZSBhY3RpdmUgYnJhbmNoJyAnCisJZ2l0IGNoZWNrb3V0IC1iIG5vdC10aGUtZmVhdHVyZS1icmFuY2ggdW5yZWxhdGVkLW9udG8tYnJhbmNoICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVzZXQgLS1oYXJkICYmIGdpdCBjaGVja291dCBtYXN0ZXIiICYmCisJZWNobyBjaGFuZ2VkID5maWxlMCAmJgorCWdpdCByZWJhc2UgLS1hdXRvc3Rhc2ggbm90LXRoZS1mZWF0dXJlLWJyYW5jaCBmZWF0dXJlLWJyYW5jaCAmJgorCXRlc3RfY21wX3JldiBub3QtdGhlLWZlYXR1cmUtYnJhbmNoIHVucmVsYXRlZC1vbnRvLWJyYW5jaAorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDM0MjEtcmViYXNlLXRvcG9sb2d5LWxpbmVhci5zaCBiL3QvdDM0MjEtcmViYXNlLXRvcG9sb2d5LWxpbmVhci5zaAppbmRleCAyM2FkNGNmLi5jZjhkZmQ2IDEwMDc1NQotLS0gYS90L3QzNDIxLXJlYmFzZS10b3BvbG9neS1saW5lYXIuc2gKKysrIGIvdC90MzQyMS1yZWJhc2UtdG9wb2xvZ3ktbGluZWFyLnNoCkBAIC0yNiwxMSArMjYsMjEgQEAKIAkJdGVzdF9saW5lYXJfcmFuZ2UgJ2QgZScgYy4uCiAJIgogfQotdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgJycKK3Rlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC0tYXBwbHkKIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1tCiB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtaQogdGVzdF9oYXZlX3ByZXJlcSAhUkVCQVNFX1AgfHwgdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLXAKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgYnJhbmNoZXMgYW5kIHJlbW90ZSB0cmFja2luZycgJworCWdpdCB0YWcgLWwgPnRhZ3MgJiYKKwlmb3IgdGFnIGluICQoY2F0IHRhZ3MpCisJZG8KKwkJZ2l0IGJyYW5jaCBicmFuY2gtJHRhZyAkdGFnIHx8IHJldHVybiAxCisJZG9uZSAmJgorCWdpdCByZW1vdGUgYWRkIG9yaWdpbiAiZmlsZTovLyRQV0QiICYmCisJZ2l0IGZldGNoIG9yaWdpbgorJworCiB0ZXN0X3J1bl9yZWJhc2UgKCkgewogCXJlc3VsdD0kMQogCXNoaWZ0CkBAIC00MCw3ICs1MCw3IEBACiAJCXRlc3RfY21wX3JldiBlIEhFQUQKIAkiCiB9Ci10ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAnJwordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLS1hcHBseQogdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLW0KIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1pCiB0ZXN0X2hhdmVfcHJlcmVxICFSRUJBU0VfUCB8fCB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtcApAQCAtNTEsMTIgKzYxLDEzIEBACiAJdGVzdF9leHBlY3RfJHJlc3VsdCAicmViYXNlICQqIC1mIHJld3JpdGVzIGV2ZW4gaWYgdXBzdHJlYW0gaXMgYW4gYW5jZXN0b3IiICIKIAkJcmVzZXRfcmViYXNlICYmCiAJCWdpdCByZWJhc2UgJCogLWYgYiBlICYmCi0JCSEgdGVzdF9jbXBfcmV2IGUgSEVBRCAmJgorCQl0ZXN0X2NtcF9yZXYgISBlIEhFQUQgJiYKIAkJdGVzdF9jbXBfcmV2IGIgSEVBRH4yICYmCiAJCXRlc3RfbGluZWFyX3JhbmdlICdkIGUnIGIuLgogCSIKIH0KLXRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzICcnCit0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtLWFwcGx5Cit0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtLWZvcmstcG9pbnQKIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1tCiB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtaQogdGVzdF9oYXZlX3ByZXJlcSAhUkVCQVNFX1AgfHwgdGVzdF9ydW5fcmViYXNlIGZhaWx1cmUgLXAKQEAgLTY0LDEzICs3NSwzMSBAQAogdGVzdF9ydW5fcmViYXNlICgpIHsKIAlyZXN1bHQ9JDEKIAlzaGlmdAorCXRlc3RfZXhwZWN0XyRyZXN1bHQgInJlYmFzZSAkKiAtZiByZXdyaXRlcyBldmVuIGlmIHJlbW90ZSB1cHN0cmVhbSBpcyBhbiBhbmNlc3RvciIgIgorCQlyZXNldF9yZWJhc2UgJiYKKwkJZ2l0IHJlYmFzZSAkKiAtZiBicmFuY2gtYiBicmFuY2gtZSAmJgorCQl0ZXN0X2NtcF9yZXYgISBicmFuY2gtZSBvcmlnaW4vYnJhbmNoLWUgJiYKKwkJdGVzdF9jbXBfcmV2IGJyYW5jaC1iIEhFQUR+MiAmJgorCQl0ZXN0X2xpbmVhcl9yYW5nZSAnZCBlJyBicmFuY2gtYi4uCisJIgorfQordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLS1hcHBseQordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLS1mb3JrLXBvaW50Cit0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtbQordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLWkKK3Rlc3RfaGF2ZV9wcmVyZXEgIVJFQkFTRV9QIHx8IHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1wCisKK3Rlc3RfcnVuX3JlYmFzZSAoKSB7CisJcmVzdWx0PSQxCisJc2hpZnQKIAl0ZXN0X2V4cGVjdF8kcmVzdWx0ICJyZWJhc2UgJCogZmFzdC1mb3J3YXJkcyBmcm9tIGFuY2VzdG9yIG9mIHVwc3RyZWFtIiAiCiAJCXJlc2V0X3JlYmFzZSAmJgogCQlnaXQgcmViYXNlICQqIGUgYiAmJgogCQl0ZXN0X2NtcF9yZXYgZSBIRUFECiAJIgogfQotdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgJycKK3Rlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC0tYXBwbHkKK3Rlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC0tZm9yay1wb2ludAogdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLW0KIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1pCiB0ZXN0X2hhdmVfcHJlcmVxICFSRUJBU0VfUCB8fCB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtcApAQCAtMTEwLDggKzEzOSw4IEBACiAJCXRlc3RfbGluZWFyX3JhbmdlICdkIGknIGguLgogCSIKIH0KLXRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzICcnCi10ZXN0X3J1bl9yZWJhc2UgZmFpbHVyZSAtbQordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLS1hcHBseQordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLW0KIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1pCiB0ZXN0X2hhdmVfcHJlcmVxICFSRUJBU0VfUCB8fCB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtcAogCkBAIC0xMjUsOCArMTU0LDggQEAKIAkJdGVzdF9saW5lYXJfcmFuZ2UgJ2QnIGguLgogCSIKIH0KLXRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzICcnCi10ZXN0X3J1bl9yZWJhc2UgZmFpbHVyZSAtbQordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLS1hcHBseQordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLW0KIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1pCiB0ZXN0X2hhdmVfcHJlcmVxICFSRUJBU0VfUCB8fCB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtcAogCkBAIC0xNDAsOCArMTY5LDggQEAKIAkJdGVzdF9saW5lYXJfcmFuZ2UgJ2QgaScgZi4uCiAJIgogfQotdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgJycKLXRlc3RfcnVuX3JlYmFzZSBmYWlsdXJlIC1tCit0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtLWFwcGx5Cit0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtbQogdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLWkKIHRlc3RfaGF2ZV9wcmVyZXEgIVJFQkFTRV9QIHx8IHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1wCiAKQEAgLTE1NSw3ICsxODQsNyBAQAogCQl0ZXN0X2xpbmVhcl9yYW5nZSAnZCBncCBpJyBoLi4KIAkiCiB9Ci10ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAnJwordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLS1hcHBseQogdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLW0KIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1pCiB0ZXN0X2hhdmVfcHJlcmVxICFSRUJBU0VfUCB8fCB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtcApAQCAtMTc2LDE3ICsyMDUsMTcgQEAKIHRlc3RfcnVuX3JlYmFzZSAoKSB7CiAJcmVzdWx0PSQxCiAJc2hpZnQKLQl0ZXN0X2V4cGVjdF8kcmVzdWx0ICJyZWJhc2UgJCogZHJvcHMgZW1wdHkgY29tbWl0IiAiCisJdGVzdF9leHBlY3RfJHJlc3VsdCAicmViYXNlICQqIGtlZXBzIGJlZ2luLWVtcHR5IGNvbW1pdHMiICIKIAkJcmVzZXRfcmViYXNlICYmCi0JCWdpdCByZWJhc2UgJCogYyBsICYmCi0JCXRlc3RfY21wX3JldiBjIEhFQUR+MiAmJgotCQl0ZXN0X2xpbmVhcl9yYW5nZSAnZCBsJyBjLi4KKwkJZ2l0IHJlYmFzZSAkKiBqIGwgJiYKKwkJdGVzdF9jbXBfcmV2IGMgSEVBRH40ICYmCisJCXRlc3RfbGluZWFyX3JhbmdlICdqIGQgayBsJyBjLi4KIAkiCiB9Ci10ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAnJwordGVzdF9ydW5fcmViYXNlIGZhaWx1cmUgLS1hcHBseQogdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLW0KIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1pCi10ZXN0X2hhdmVfcHJlcmVxICFSRUJBU0VfUCB8fCB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtcAordGVzdF9oYXZlX3ByZXJlcSAhUkVCQVNFX1AgfHwgdGVzdF9ydW5fcmViYXNlIGZhaWx1cmUgLXAKIAogdGVzdF9ydW5fcmViYXNlICgpIHsKIAlyZXN1bHQ9JDEKQEAgLTE5OCwxMCArMjI3LDEwIEBACiAJCXRlc3RfbGluZWFyX3JhbmdlICdkIGsgbCcgYy4uCiAJIgogfQotdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgJycKK3Rlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC0tYXBwbHkKIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1tCiB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtaQotdGVzdF9oYXZlX3ByZXJlcSAhUkVCQVNFX1AgfHwgdGVzdF9ydW5fcmViYXNlIGZhaWx1cmUgLXAKK3Rlc3RfaGF2ZV9wcmVyZXEgIVJFQkFTRV9QIHx8IHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1wCiAKIHRlc3RfcnVuX3JlYmFzZSAoKSB7CiAJcmVzdWx0PSQxCkBAIC0yMTMsMTAgKzI0MiwxMCBAQAogCQl0ZXN0X2xpbmVhcl9yYW5nZSAnZCBrIGwnIGouLgogCSIKIH0KLXRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzICcnCit0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtLWFwcGx5CiB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtbQogdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLWkKLXRlc3RfaGF2ZV9wcmVyZXEgIVJFQkFTRV9QIHx8IHRlc3RfcnVuX3JlYmFzZSBmYWlsdXJlIC1wCit0ZXN0X2hhdmVfcHJlcmVxICFSRUJBU0VfUCB8fCB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtcAogdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLS1yZWJhc2UtbWVyZ2VzCiAKICMgICAgICAgbQpAQCAtMjUzLDcgKzI4Miw3IEBACiAJCXRlc3RfbGluZWFyX3JhbmdlICd4IHknIGMuLgogCSIKIH0KLXRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzICcnCit0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtLWFwcGx5CiB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtbQogdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLWkKIHRlc3RfaGF2ZV9wcmVyZXEgIVJFQkFTRV9QIHx8IHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1wCkBAIC0yNjgsNyArMjk3LDcgQEAKIAkJdGVzdF9saW5lYXJfcmFuZ2UgJ3ggeScgYy4uCiAJIgogfQotdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgJycKK3Rlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC0tYXBwbHkKIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1tCiB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtaQogdGVzdF9oYXZlX3ByZXJlcSAhUkVCQVNFX1AgfHwgdGVzdF9ydW5fcmViYXNlIGZhaWx1cmUgLXAKQEAgLTI4Myw4ICszMTIsOCBAQAogCQl0ZXN0X2xpbmVhcl9yYW5nZSAneCB5JyBtLi4KIAkiCiB9Ci10ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAnJwotdGVzdF9ydW5fcmViYXNlIGZhaWx1cmUgLW0KK3Rlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC0tYXBwbHkKK3Rlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1tCiB0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAtaQogdGVzdF9oYXZlX3ByZXJlcSAhUkVCQVNFX1AgfHwgdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLXAKIApAQCAtMjk5LDcgKzMyOCw3IEBACiAJIgogfQogCi10ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAnJwordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLS1hcHBseQogdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLW0KIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1pCiB0ZXN0X2hhdmVfcHJlcmVxICFSRUJBU0VfUCB8fCB0ZXN0X3J1bl9yZWJhc2UgZmFpbHVyZSAtcApAQCAtMzE0LDggKzM0Myw4IEBACiAJCXRlc3RfbGluZWFyX3JhbmdlICd4IHknIG0uLgogCSIKIH0KLXRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzICcnCi10ZXN0X3J1bl9yZWJhc2UgZmFpbHVyZSAtbQordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLS1hcHBseQordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLW0KIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1pCiB0ZXN0X2hhdmVfcHJlcmVxICFSRUJBU0VfUCB8fCB0ZXN0X3J1bl9yZWJhc2UgZmFpbHVyZSAtcAogCkBAIC0zMzksNyArMzY4LDcgQEAKIAl0ZXN0X2V4cGVjdF8kcmVzdWx0ICJyZWJhc2UgJCogLWYgLS1yb290IG9uIGxpbmVhciBoaXN0b3J5IGNhdXNlcyByZS13cml0ZSIgIgogCQlyZXNldF9yZWJhc2UgJiYKIAkJZ2l0IHJlYmFzZSAkKiAtZiAtLXJvb3QgYyAmJgotCQkhIHRlc3RfY21wX3JldiBhIEhFQUR+MiAmJgorCQl0ZXN0X2NtcF9yZXYgISBhIEhFQUR+MiAmJgogCQl0ZXN0X2xpbmVhcl9yYW5nZSAnYSBiIGMnIEhFQUQKIAkiCiB9CmRpZmYgLS1naXQgYS90L3QzNDIyLXJlYmFzZS1pbmNvbXBhdGlibGUtb3B0aW9ucy5zaCBiL3QvdDM0MjItcmViYXNlLWluY29tcGF0aWJsZS1vcHRpb25zLnNoCmluZGV4IGJiNzhhNmUuLjUwZTc5NjAgMTAwNzU1Ci0tLSBhL3QvdDM0MjItcmViYXNlLWluY29tcGF0aWJsZS1vcHRpb25zLnNoCisrKyBiL3QvdDM0MjItcmViYXNlLWluY29tcGF0aWJsZS1vcHRpb25zLnNoCkBAIC02NSwyNCArNjUsMTUgQEAKIHRlc3RfcmViYXNlX2FtX29ubHkgLS1jb21taXR0ZXItZGF0ZS1pcy1hdXRob3ItZGF0ZQogdGVzdF9yZWJhc2VfYW1fb25seSAtQzQKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1wcmVzZXJ2ZS1tZXJnZXMgaW5jb21wYXRpYmxlIHdpdGggLS1zaWdub2ZmJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzIFJFQkFTRV9QICctLXByZXNlcnZlLW1lcmdlcyBpbmNvbXBhdGlibGUgd2l0aCAtLXNpZ25vZmYnICcKIAlnaXQgY2hlY2tvdXQgQl4wICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLXByZXNlcnZlLW1lcmdlcyAtLXNpZ25vZmYgQQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICctLXByZXNlcnZlLW1lcmdlcyBpbmNvbXBhdGlibGUgd2l0aCAtLXJlYmFzZS1tZXJnZXMnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgUkVCQVNFX1AgXAorCSctLXByZXNlcnZlLW1lcmdlcyBpbmNvbXBhdGlibGUgd2l0aCAtLXJlYmFzZS1tZXJnZXMnICcKIAlnaXQgY2hlY2tvdXQgQl4wICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLXByZXNlcnZlLW1lcmdlcyAtLXJlYmFzZS1tZXJnZXMgQQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICctLXJlYmFzZS1tZXJnZXMgaW5jb21wYXRpYmxlIHdpdGggLS1zdHJhdGVneScgJwotCWdpdCBjaGVja291dCBCXjAgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC0tcmViYXNlLW1lcmdlcyAtcyByZXNvbHZlIEEKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1yZWJhc2UtbWVyZ2VzIGluY29tcGF0aWJsZSB3aXRoIC0tc3RyYXRlZ3ktb3B0aW9uJyAnCi0JZ2l0IGNoZWNrb3V0IEJeMCAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1yZWJhc2UtbWVyZ2VzIC1YaWdub3JlLXNwYWNlLWNoYW5nZSBBCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MzQyNC1yZWJhc2UtZW1wdHkuc2ggYi90L3QzNDI0LXJlYmFzZS1lbXB0eS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5lMWUzMDUxCi0tLSAvZGV2L251bGwKKysrIGIvdC90MzQyNC1yZWJhc2UtZW1wdHkuc2gKQEAgLTAsMCArMSwxMzQgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdnaXQgcmViYXNlIG9mIGNvbW1pdHMgdGhhdCBzdGFydCBvciBiZWNvbWUgZW1wdHknCisKKy4gLi90ZXN0LWxpYi5zaAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCB0ZXN0IHJlcG9zaXRvcnknICcKKwl0ZXN0X3dyaXRlX2xpbmVzIDEgMiAzIDQgNSA2IDcgOCA5IDEwID5udW1iZXJzICYmCisJdGVzdF93cml0ZV9saW5lcyBBIEIgQyBEIEUgRiBHIEggSSBKID5sZXR0ZXJzICYmCisJZ2l0IGFkZCBudW1iZXJzIGxldHRlcnMgJiYKKwlnaXQgY29tbWl0IC1tIEEgJiYKKworCWdpdCBicmFuY2ggdXBzdHJlYW0gJiYKKwlnaXQgYnJhbmNoIGxvY2FsbW9kcyAmJgorCisJZ2l0IGNoZWNrb3V0IHVwc3RyZWFtICYmCisJdGVzdF93cml0ZV9saW5lcyBBIEIgQyBEIEUgPmxldHRlcnMgJiYKKwlnaXQgYWRkIGxldHRlcnMgJiYKKwlnaXQgY29tbWl0IC1tIEIgJiYKKworCXRlc3Rfd3JpdGVfbGluZXMgMSAyIDMgNCBmaXZlIDYgNyA4IDkgdGVuID5udW1iZXJzICYmCisJZ2l0IGFkZCBudW1iZXJzICYmCisJZ2l0IGNvbW1pdCAtbSBDICYmCisKKwlnaXQgY2hlY2tvdXQgbG9jYWxtb2RzICYmCisJdGVzdF93cml0ZV9saW5lcyAxIDIgMyA0IGZpdmUgNiA3IDggOSAxMCA+bnVtYmVycyAmJgorCWdpdCBhZGQgbnVtYmVycyAmJgorCWdpdCBjb21taXQgLW0gQzIgJiYKKworCWdpdCBjb21taXQgLS1hbGxvdy1lbXB0eSAtbSBEICYmCisKKwl0ZXN0X3dyaXRlX2xpbmVzIEEgQiBDIEQgRSA+bGV0dGVycyAmJgorCWdpdCBhZGQgbGV0dGVycyAmJgorCWdpdCBjb21taXQgLW0gIkZpdmUgbGV0dGVycyBvdWdodCB0byBiZSBlbm91Z2ggZm9yIGFueWJvZHkiCisnCisKK3Rlc3RfZXhwZWN0X2ZhaWx1cmUgJ3JlYmFzZSAoYXBwbHktYmFja2VuZCknICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZWJhc2UgLS1hYm9ydCIgJiYKKwlnaXQgY2hlY2tvdXQgLUIgdGVzdGluZyBsb2NhbG1vZHMgJiYKKwkjIHJlYmFzZSAoLS1hcHBseSkgc2hvdWxkIG5vdCBkcm9wIGNvbW1pdHMgdGhhdCBzdGFydCBlbXB0eQorCWdpdCByZWJhc2UgLS1hcHBseSB1cHN0cmVhbSAmJgorCisJdGVzdF93cml0ZV9saW5lcyBEIEMgQiBBID5leHBlY3QgJiYKKwlnaXQgbG9nIC0tZm9ybWF0PSVzID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtLW1lcmdlIC0tZW1wdHk9ZHJvcCcgJworCWdpdCBjaGVja291dCAtQiB0ZXN0aW5nIGxvY2FsbW9kcyAmJgorCWdpdCByZWJhc2UgLS1tZXJnZSAtLWVtcHR5PWRyb3AgdXBzdHJlYW0gJiYKKworCXRlc3Rfd3JpdGVfbGluZXMgRCBDIEIgQSA+ZXhwZWN0ICYmCisJZ2l0IGxvZyAtLWZvcm1hdD0lcyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLS1tZXJnZSB1c2VzIGRlZmF1bHQgb2YgLS1lbXB0eT1kcm9wJyAnCisJZ2l0IGNoZWNrb3V0IC1CIHRlc3RpbmcgbG9jYWxtb2RzICYmCisJZ2l0IHJlYmFzZSAtLW1lcmdlIHVwc3RyZWFtICYmCisKKwl0ZXN0X3dyaXRlX2xpbmVzIEQgQyBCIEEgPmV4cGVjdCAmJgorCWdpdCBsb2cgLS1mb3JtYXQ9JXMgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC0tbWVyZ2UgLS1lbXB0eT1rZWVwJyAnCisJZ2l0IGNoZWNrb3V0IC1CIHRlc3RpbmcgbG9jYWxtb2RzICYmCisJZ2l0IHJlYmFzZSAtLW1lcmdlIC0tZW1wdHk9a2VlcCB1cHN0cmVhbSAmJgorCisJdGVzdF93cml0ZV9saW5lcyBEIEMyIEMgQiBBID5leHBlY3QgJiYKKwlnaXQgbG9nIC0tZm9ybWF0PSVzID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtLW1lcmdlIC0tZW1wdHk9YXNrJyAnCisJZ2l0IGNoZWNrb3V0IC1CIHRlc3RpbmcgbG9jYWxtb2RzICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLW1lcmdlIC0tZW1wdHk9YXNrIHVwc3RyZWFtICYmCisKKwlnaXQgcmViYXNlIC0tc2tpcCAmJgorCisJdGVzdF93cml0ZV9saW5lcyBEIEMgQiBBID5leHBlY3QgJiYKKwlnaXQgbG9nIC0tZm9ybWF0PSVzID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtLWludGVyYWN0aXZlIC0tZW1wdHk9ZHJvcCcgJworCWdpdCBjaGVja291dCAtQiB0ZXN0aW5nIGxvY2FsbW9kcyAmJgorCWdpdCByZWJhc2UgLS1pbnRlcmFjdGl2ZSAtLWVtcHR5PWRyb3AgdXBzdHJlYW0gJiYKKworCXRlc3Rfd3JpdGVfbGluZXMgRCBDIEIgQSA+ZXhwZWN0ICYmCisJZ2l0IGxvZyAtLWZvcm1hdD0lcyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLS1pbnRlcmFjdGl2ZSAtLWVtcHR5PWtlZXAnICcKKwlnaXQgY2hlY2tvdXQgLUIgdGVzdGluZyBsb2NhbG1vZHMgJiYKKwlnaXQgcmViYXNlIC0taW50ZXJhY3RpdmUgLS1lbXB0eT1rZWVwIHVwc3RyZWFtICYmCisKKwl0ZXN0X3dyaXRlX2xpbmVzIEQgQzIgQyBCIEEgPmV4cGVjdCAmJgorCWdpdCBsb2cgLS1mb3JtYXQ9JXMgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC0taW50ZXJhY3RpdmUgLS1lbXB0eT1hc2snICcKKwlnaXQgY2hlY2tvdXQgLUIgdGVzdGluZyBsb2NhbG1vZHMgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC0taW50ZXJhY3RpdmUgLS1lbXB0eT1hc2sgdXBzdHJlYW0gJiYKKworCWdpdCByZWJhc2UgLS1za2lwICYmCisKKwl0ZXN0X3dyaXRlX2xpbmVzIEQgQyBCIEEgPmV4cGVjdCAmJgorCWdpdCBsb2cgLS1mb3JtYXQ9JXMgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIC0taW50ZXJhY3RpdmUgdXNlcyBkZWZhdWx0IG9mIC0tZW1wdHk9YXNrJyAnCisJZ2l0IGNoZWNrb3V0IC1CIHRlc3RpbmcgbG9jYWxtb2RzICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLWludGVyYWN0aXZlIHVwc3RyZWFtICYmCisKKwlnaXQgcmViYXNlIC0tc2tpcCAmJgorCisJdGVzdF93cml0ZV9saW5lcyBEIEMgQiBBID5leHBlY3QgJiYKKwlnaXQgbG9nIC0tZm9ybWF0PSVzID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSAtLW1lcmdlIGRvZXMgbm90IGxlYXZlIHN0YXRlIGxheWluZyBhcm91bmQnICcKKwlnaXQgY2hlY2tvdXQgLUIgdGVzdGluZyBsb2NhbG1vZHN+MiAmJgorCWdpdCByZWJhc2UgLS1tZXJnZSB1cHN0cmVhbSAmJgorCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9DSEVSUllfUElDS19IRUFEICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9NRVJHRV9NU0cKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzNDI1LXJlYmFzZS10b3BvbG9neS1tZXJnZXMuc2ggYi90L3QzNDI1LXJlYmFzZS10b3BvbG9neS1tZXJnZXMuc2gKaW5kZXggNWY4OTJlMy4uZTQyZmFhNCAxMDA3NTUKLS0tIGEvdC90MzQyNS1yZWJhc2UtdG9wb2xvZ3ktbWVyZ2VzLnNoCisrKyBiL3QvdDM0MjUtcmViYXNlLXRvcG9sb2d5LW1lcmdlcy5zaApAQCAtNTQsNyArNTQsNyBAQAogCQl0ZXN0X2xpbmVhcl9yYW5nZSAnbiBvJyBlLi4KIAkiCiB9Ci10ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAnJwordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLS1hcHBseQogdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgLW0KIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzIC1pCiAKQEAgLTcwLDkgKzcwLDggQEAKIAkJdGVzdF9saW5lYXJfcmFuZ2UgIlwnIiRleHBlY3RlZCJcJyIgZC4uCiAJIgogfQotI1RPRE86IG1ha2Ugb3JkZXIgY29uc2lzdGVudCBhY3Jvc3MgYWxsIGZsYXZvcnMgb2YgcmViYXNlCi10ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAnZSBuIG8nICcnCi10ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAnZSBuIG8nIC1tCit0ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAnbiBvIGUnIC0tYXBwbHkKK3Rlc3RfcnVuX3JlYmFzZSBzdWNjZXNzICduIG8gZScgLW0KIHRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzICduIG8gZScgLWkKIAogdGVzdF9ydW5fcmViYXNlICgpIHsKQEAgLTg3LDkgKzg2LDggQEAKIAkJdGVzdF9saW5lYXJfcmFuZ2UgIlwnIiRleHBlY3RlZCJcJyIgYy4uCiAJIgogfQotI1RPRE86IG1ha2Ugb3JkZXIgY29uc2lzdGVudCBhY3Jvc3MgYWxsIGZsYXZvcnMgb2YgcmViYXNlCi10ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAnZCBlIG4gbycgJycKLXRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzICdkIGUgbiBvJyAtbQordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgJ2QgbiBvIGUnIC0tYXBwbHkKK3Rlc3RfcnVuX3JlYmFzZSBzdWNjZXNzICdkIG4gbyBlJyAtbQogdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgJ2QgbiBvIGUnIC1pCiAKIHRlc3RfcnVuX3JlYmFzZSAoKSB7CkBAIC0xMDQsOSArMTAyLDggQEAKIAkJdGVzdF9saW5lYXJfcmFuZ2UgIlwnIiRleHBlY3RlZCJcJyIgYy4uCiAJIgogfQotI1RPRE86IG1ha2Ugb3JkZXIgY29uc2lzdGVudCBhY3Jvc3MgYWxsIGZsYXZvcnMgb2YgcmViYXNlCi10ZXN0X3J1bl9yZWJhc2Ugc3VjY2VzcyAnZCBlIG4gbycgJycKLXRlc3RfcnVuX3JlYmFzZSBzdWNjZXNzICdkIGUgbiBvJyAtbQordGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgJ2QgbiBvIGUnIC0tYXBwbHkKK3Rlc3RfcnVuX3JlYmFzZSBzdWNjZXNzICdkIG4gbyBlJyAtbQogdGVzdF9ydW5fcmViYXNlIHN1Y2Nlc3MgJ2QgbiBvIGUnIC1pCiAKIGlmICEgdGVzdF9oYXZlX3ByZXJlcSBSRUJBU0VfUDsgdGhlbgpkaWZmIC0tZ2l0IGEvdC90MzQyNy1yZWJhc2Utc3VidHJlZS5zaCBiL3QvdDM0MjctcmViYXNlLXN1YnRyZWUuc2gKaW5kZXggMzc4MDg3Ny4uNzllNDNhMyAxMDA3NTUKLS0tIGEvdC90MzQyNy1yZWJhc2Utc3VidHJlZS5zaAorKysgYi90L3QzNDI3LXJlYmFzZS1zdWJ0cmVlLnNoCkBAIC0xMSwxMDggKzExLDk5IEBACiAJZ2l0IGxvZyAtLXByZXR0eT1mb3JtYXQ6JXMgLTEgIiQxIgogfQogCisjIFRoZXJlIGFyZSBhIGZldyBidWdzIGluIHRoZSByZWJhc2Ugd2l0aCByZWdhcmRzIHRvIHRoZSBzdWJ0cmVlIHN0cmF0ZWd5LCBhbmQKKyMgdGhpcyB0ZXN0IHNjcmlwdCB0cmllcyB0byBkb2N1bWVudCB0aGVtLiAgRmlyc3QsIHRoZSBmb2xsb3dpbmcgY29tbWl0IGhpc3RvcnkKKyMgaXMgZ2VuZXJhdGVkICh0aGUgb25lbGluZXMgYXJlIHNob3duLCB0aW1lIGZsb3dzIGZyb20gbGVmdCB0byByaWdodCk6CisjCisjIG1hc3RlcjEgLSBtYXN0ZXIyIC0gbWFzdGVyMworIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorIyBSRUFETUUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBBZGQgc3VicHJvamVjdCBtYXN0ZXIgLSBtYXN0ZXI0IC0gZmlsZXNfc3VidHJlZS9tYXN0ZXI1CisjCisjIFdoZXJlIHRoZSBtZXJnZSBtb3ZlcyB0aGUgZmlsZXMgbWFzdGVyWzEyM10udCBpbnRvIHRoZSBzdWJkaXJlY3RvcnkKKyMgZmlsZXNfc3VidHJlZS8gYW5kIG1hc3RlcjQgYXMgd2VsbCBhcyBmaWxlc19zdWJ0cmVlL21hc3RlcjUgYWRkIGZpbGVzIHRvIHRoYXQKKyMgZGlyZWN0b3J5IGRpcmVjdGx5LgorIworIyBUaGVuLCBpbiBzdWJzZXF1ZW50IHRlc3QgY2FzZXMsIGBnaXQgZmlsdGVyLWJyYW5jaGAgaXMgdXNlZCB0byBkaXN0aWxsIGp1c3QKKyMgdGhlIGNvbW1pdHMgdGhhdCB0b3VjaCBmaWxlc19zdWJ0cmVlLy4gVG8gZ2l2ZSBpdCBhIGZpbmFsIHByZS1yZWJhc2UgdG91Y2gsCisjIGFuIGVtcHR5IGNvbW1pdCBpcyBhZGRlZCBvbiB0b3AuIFRoZSBwcmUtcmViYXNlIGNvbW1pdCBoaXN0b3J5IGxvb2tzIGxpa2UKKyMgdGhpczoKKyMKKyMgQWRkIHN1YnByb2plY3QgbWFzdGVyIC0gbWFzdGVyNCAtIGZpbGVzX3N1YnRyZWUvbWFzdGVyNSAtIEVtcHR5IGNvbW1pdAorIworIyB3aGVyZSB0aGUgcm9vdCBjb21taXQgYWRkcyB0aHJlZSBmaWxlczogbWFzdGVyMS50LCBtYXN0ZXIyLnQgYW5kIG1hc3RlcjMudC4KKyMKKyMgVGhpcyBjb21taXQgaGlzdG9yeSBpcyB0aGVuIHJlYmFzZWQgb250byBgbWFzdGVyM2Agd2l0aCB0aGUKKyMgYC1Yc3VidHJlZT1maWxlc19zdWJ0cmVlYCBvcHRpb24gaW4gdGhyZWUgZGlmZmVyZW50IHdheXM6CisjCisjIDEuIHVzaW5nIGAtLXByZXNlcnZlLW1lcmdlc2AKKyMgMi4gdXNpbmcgYC0tcHJlc2VydmUtbWVyZ2VzYCBhbmQgLS1rZWVwLWVtcHR5CisjIDMuIHdpdGhvdXQgc3BlY2lmeWluZyBhIHJlYmFzZSBiYWNrZW5kCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCiAJdGVzdF9jb21taXQgUkVBRE1FICYmCi0JbWtkaXIgZmlsZXMgJiYKLQkoCi0JCWNkIGZpbGVzICYmCi0JCWdpdCBpbml0ICYmCi0JCXRlc3RfY29tbWl0IG1hc3RlcjEgJiYKLQkJdGVzdF9jb21taXQgbWFzdGVyMiAmJgotCQl0ZXN0X2NvbW1pdCBtYXN0ZXIzCi0JKSAmJgotCWdpdCBmZXRjaCBmaWxlcyBtYXN0ZXIgJiYKLQlnaXQgYnJhbmNoIGZpbGVzLW1hc3RlciBGRVRDSF9IRUFEICYmCi0JZ2l0IHJlYWQtdHJlZSAtLXByZWZpeD1maWxlc19zdWJ0cmVlIGZpbGVzLW1hc3RlciAmJgotCWdpdCBjaGVja291dCAtLSBmaWxlc19zdWJ0cmVlICYmCi0JdHJlZT0kKGdpdCB3cml0ZS10cmVlKSAmJgotCWhlYWQ9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCi0JcmV2PSQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBmaWxlcy1tYXN0ZXJeMCkgJiYKLQljb21taXQ9JChnaXQgY29tbWl0LXRyZWUgLXAgJGhlYWQgLXAgJHJldiAtbSAiQWRkIHN1YnByb2plY3QgbWFzdGVyIiAkdHJlZSkgJiYKLQlnaXQgdXBkYXRlLXJlZiBIRUFEICRjb21taXQgJiYKLQkoCi0JCWNkIGZpbGVzX3N1YnRyZWUgJiYKLQkJdGVzdF9jb21taXQgbWFzdGVyNAotCSkgJiYKLQl0ZXN0X2NvbW1pdCBmaWxlc19zdWJ0cmVlL21hc3RlcjUKKworCWdpdCBpbml0IGZpbGVzICYmCisJdGVzdF9jb21taXQgLUMgZmlsZXMgbWFzdGVyMSAmJgorCXRlc3RfY29tbWl0IC1DIGZpbGVzIG1hc3RlcjIgJiYKKwl0ZXN0X2NvbW1pdCAtQyBmaWxlcyBtYXN0ZXIzICYmCisKKwk6IHBlcmZvcm0gc3VidHJlZSBtZXJnZSBpbnRvIGZpbGVzX3N1YnRyZWUvICYmCisJZ2l0IGZldGNoIGZpbGVzIHJlZnMvaGVhZHMvbWFzdGVyOnJlZnMvaGVhZHMvZmlsZXMtbWFzdGVyICYmCisJZ2l0IG1lcmdlIC1zIG91cnMgLS1uby1jb21taXQgLS1hbGxvdy11bnJlbGF0ZWQtaGlzdG9yaWVzIFwKKwkJZmlsZXMtbWFzdGVyICYmCisJZ2l0IHJlYWQtdHJlZSAtLXByZWZpeD1maWxlc19zdWJ0cmVlIC11IGZpbGVzLW1hc3RlciAmJgorCWdpdCBjb21taXQgLW0gIkFkZCBzdWJwcm9qZWN0IG1hc3RlciIgJiYKKworCTogYWRkIHR3byBleHRyYSBjb21taXRzIHRvIHJlYmFzZSAmJgorCXRlc3RfY29tbWl0IC1DIGZpbGVzX3N1YnRyZWUgbWFzdGVyNCAmJgorCXRlc3RfY29tbWl0IGZpbGVzX3N1YnRyZWUvbWFzdGVyNSAmJgorCisJZ2l0IGNoZWNrb3V0IC1iIHRvLXJlYmFzZSAmJgorCWdpdCBmYXN0LWV4cG9ydCAtLW5vLWRhdGEgSEVBRCAtLSBmaWxlc19zdWJ0cmVlLyB8CisJCXNlZCAtZSAicyVcKFswLTlhLWZdXHs0MFx9IFwpZmlsZXNfc3VidHJlZS8lXDElIiB8CisJCWdpdCBmYXN0LWltcG9ydCAtLWZvcmNlIC0tcXVpZXQgJiYKKwlnaXQgcmVzZXQgLS1oYXJkICYmCisJZ2l0IGNvbW1pdCAtbSAiRW1wdHkgY29tbWl0IiAtLWFsbG93LWVtcHR5CiAnCiAKICMgRkFJTFVSRTogRG9lcyBub3QgcHJlc2VydmUgbWFzdGVyNC4KLXRlc3RfZXhwZWN0X2ZhaWx1cmUgJ1JlYmFzZSAtWHN1YnRyZWUgLS1wcmVzZXJ2ZS1tZXJnZXMgLS1vbnRvIGNvbW1pdCA0JyAnCit0ZXN0X2V4cGVjdF9mYWlsdXJlIFJFQkFTRV9QICdSZWJhc2UgLVhzdWJ0cmVlIC0tcHJlc2VydmUtbWVyZ2VzIC0tb250byBjb21taXQnICcKIAlyZXNldF9yZWJhc2UgJiYKLQlnaXQgY2hlY2tvdXQgLWIgcmViYXNlLXByZXNlcnZlLW1lcmdlcy00IG1hc3RlciAmJgotCWdpdCBmaWx0ZXItYnJhbmNoIC0tcHJ1bmUtZW1wdHkgLWYgLS1zdWJkaXJlY3RvcnktZmlsdGVyIGZpbGVzX3N1YnRyZWUgJiYKLQlnaXQgY29tbWl0IC1tICJFbXB0eSBjb21taXQiIC0tYWxsb3ctZW1wdHkgJiYKKwlnaXQgY2hlY2tvdXQgLWIgcmViYXNlLXByZXNlcnZlLW1lcmdlcyB0by1yZWJhc2UgJiYKIAlnaXQgcmViYXNlIC1Yc3VidHJlZT1maWxlc19zdWJ0cmVlIC0tcHJlc2VydmUtbWVyZ2VzIC0tb250byBmaWxlcy1tYXN0ZXIgbWFzdGVyICYmCi0JdmVyYm9zZSB0ZXN0ICIkKGNvbW1pdF9tZXNzYWdlIEhFQUR+KSIgPSAiZmlsZXNfc3VidHJlZS9tYXN0ZXI0IgotJwotCi0jIEZBSUxVUkU6IERvZXMgbm90IHByZXNlcnZlIG1hc3RlcjUuCi10ZXN0X2V4cGVjdF9mYWlsdXJlICdSZWJhc2UgLVhzdWJ0cmVlIC0tcHJlc2VydmUtbWVyZ2VzIC0tb250byBjb21taXQgNScgJwotCXJlc2V0X3JlYmFzZSAmJgotCWdpdCBjaGVja291dCAtYiByZWJhc2UtcHJlc2VydmUtbWVyZ2VzLTUgbWFzdGVyICYmCi0JZ2l0IGZpbHRlci1icmFuY2ggLS1wcnVuZS1lbXB0eSAtZiAtLXN1YmRpcmVjdG9yeS1maWx0ZXIgZmlsZXNfc3VidHJlZSAmJgotCWdpdCBjb21taXQgLW0gIkVtcHR5IGNvbW1pdCIgLS1hbGxvdy1lbXB0eSAmJgotCWdpdCByZWJhc2UgLVhzdWJ0cmVlPWZpbGVzX3N1YnRyZWUgLS1wcmVzZXJ2ZS1tZXJnZXMgLS1vbnRvIGZpbGVzLW1hc3RlciBtYXN0ZXIgJiYKKwl2ZXJib3NlIHRlc3QgIiQoY29tbWl0X21lc3NhZ2UgSEVBRH4pIiA9ICJtYXN0ZXI0IiAmJgogCXZlcmJvc2UgdGVzdCAiJChjb21taXRfbWVzc2FnZSBIRUFEKSIgPSAiZmlsZXNfc3VidHJlZS9tYXN0ZXI1IgogJwogCiAjIEZBSUxVUkU6IERvZXMgbm90IHByZXNlcnZlIG1hc3RlcjQuCi10ZXN0X2V4cGVjdF9mYWlsdXJlICdSZWJhc2UgLVhzdWJ0cmVlIC0ta2VlcC1lbXB0eSAtLXByZXNlcnZlLW1lcmdlcyAtLW9udG8gY29tbWl0IDQnICcKK3Rlc3RfZXhwZWN0X2ZhaWx1cmUgUkVCQVNFX1AgJ1JlYmFzZSAtWHN1YnRyZWUgLS1rZWVwLWVtcHR5IC0tcHJlc2VydmUtbWVyZ2VzIC0tb250byBjb21taXQnICcKIAlyZXNldF9yZWJhc2UgJiYKLQlnaXQgY2hlY2tvdXQgLWIgcmViYXNlLWtlZXAtZW1wdHktNCBtYXN0ZXIgJiYKLQlnaXQgZmlsdGVyLWJyYW5jaCAtLXBydW5lLWVtcHR5IC1mIC0tc3ViZGlyZWN0b3J5LWZpbHRlciBmaWxlc19zdWJ0cmVlICYmCi0JZ2l0IGNvbW1pdCAtbSAiRW1wdHkgY29tbWl0IiAtLWFsbG93LWVtcHR5ICYmCisJZ2l0IGNoZWNrb3V0IC1iIHJlYmFzZS1rZWVwLWVtcHR5IHRvLXJlYmFzZSAmJgogCWdpdCByZWJhc2UgLVhzdWJ0cmVlPWZpbGVzX3N1YnRyZWUgLS1rZWVwLWVtcHR5IC0tcHJlc2VydmUtbWVyZ2VzIC0tb250byBmaWxlcy1tYXN0ZXIgbWFzdGVyICYmCi0JdmVyYm9zZSB0ZXN0ICIkKGNvbW1pdF9tZXNzYWdlIEhFQUR+MikiID0gImZpbGVzX3N1YnRyZWUvbWFzdGVyNCIKLScKLQotIyBGQUlMVVJFOiBEb2VzIG5vdCBwcmVzZXJ2ZSBtYXN0ZXI1LgotdGVzdF9leHBlY3RfZmFpbHVyZSAnUmViYXNlIC1Yc3VidHJlZSAtLWtlZXAtZW1wdHkgLS1wcmVzZXJ2ZS1tZXJnZXMgLS1vbnRvIGNvbW1pdCA1JyAnCi0JcmVzZXRfcmViYXNlICYmCi0JZ2l0IGNoZWNrb3V0IC1iIHJlYmFzZS1rZWVwLWVtcHR5LTUgbWFzdGVyICYmCi0JZ2l0IGZpbHRlci1icmFuY2ggLS1wcnVuZS1lbXB0eSAtZiAtLXN1YmRpcmVjdG9yeS1maWx0ZXIgZmlsZXNfc3VidHJlZSAmJgotCWdpdCBjb21taXQgLW0gIkVtcHR5IGNvbW1pdCIgLS1hbGxvdy1lbXB0eSAmJgotCWdpdCByZWJhc2UgLVhzdWJ0cmVlPWZpbGVzX3N1YnRyZWUgLS1rZWVwLWVtcHR5IC0tcHJlc2VydmUtbWVyZ2VzIC0tb250byBmaWxlcy1tYXN0ZXIgbWFzdGVyICYmCi0JdmVyYm9zZSB0ZXN0ICIkKGNvbW1pdF9tZXNzYWdlIEhFQUR+KSIgPSAiZmlsZXNfc3VidHJlZS9tYXN0ZXI1IgotJwotCi0jIEZBSUxVUkU6IERvZXMgbm90IHByZXNlcnZlIEVtcHR5LgotdGVzdF9leHBlY3RfZmFpbHVyZSAnUmViYXNlIC1Yc3VidHJlZSAtLWtlZXAtZW1wdHkgLS1wcmVzZXJ2ZS1tZXJnZXMgLS1vbnRvIGVtcHR5IGNvbW1pdCcgJwotCXJlc2V0X3JlYmFzZSAmJgotCWdpdCBjaGVja291dCAtYiByZWJhc2Uta2VlcC1lbXB0eS1lbXB0eSBtYXN0ZXIgJiYKLQlnaXQgZmlsdGVyLWJyYW5jaCAtLXBydW5lLWVtcHR5IC1mIC0tc3ViZGlyZWN0b3J5LWZpbHRlciBmaWxlc19zdWJ0cmVlICYmCi0JZ2l0IGNvbW1pdCAtbSAiRW1wdHkgY29tbWl0IiAtLWFsbG93LWVtcHR5ICYmCi0JZ2l0IHJlYmFzZSAtWHN1YnRyZWU9ZmlsZXNfc3VidHJlZSAtLWtlZXAtZW1wdHkgLS1wcmVzZXJ2ZS1tZXJnZXMgLS1vbnRvIGZpbGVzLW1hc3RlciBtYXN0ZXIgJiYKKwl2ZXJib3NlIHRlc3QgIiQoY29tbWl0X21lc3NhZ2UgSEVBRH4yKSIgPSAibWFzdGVyNCIgJiYKKwl2ZXJib3NlIHRlc3QgIiQoY29tbWl0X21lc3NhZ2UgSEVBRH4pIiA9ICJmaWxlc19zdWJ0cmVlL21hc3RlcjUiICYmCiAJdmVyYm9zZSB0ZXN0ICIkKGNvbW1pdF9tZXNzYWdlIEhFQUQpIiA9ICJFbXB0eSBjb21taXQiCiAnCiAKLSMgRkFJTFVSRTogZmF0YWw6IENvdWxkIG5vdCBwYXJzZSBvYmplY3QKLXRlc3RfZXhwZWN0X2ZhaWx1cmUgJ1JlYmFzZSAtWHN1YnRyZWUgLS1vbnRvIGNvbW1pdCA0JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdSZWJhc2UgLVhzdWJ0cmVlIC0tZW1wdHk9YXNrIC0tb250byBjb21taXQnICcKIAlyZXNldF9yZWJhc2UgJiYKLQlnaXQgY2hlY2tvdXQgLWIgcmViYXNlLW9udG8tNCBtYXN0ZXIgJiYKLQlnaXQgZmlsdGVyLWJyYW5jaCAtLXBydW5lLWVtcHR5IC1mIC0tc3ViZGlyZWN0b3J5LWZpbHRlciBmaWxlc19zdWJ0cmVlICYmCi0JZ2l0IGNvbW1pdCAtbSAiRW1wdHkgY29tbWl0IiAtLWFsbG93LWVtcHR5ICYmCi0JZ2l0IHJlYmFzZSAtWHN1YnRyZWU9ZmlsZXNfc3VidHJlZSAtLW9udG8gZmlsZXMtbWFzdGVyIG1hc3RlciAmJgotCXZlcmJvc2UgdGVzdCAiJChjb21taXRfbWVzc2FnZSBIRUFEfjIpIiA9ICJmaWxlc19zdWJ0cmVlL21hc3RlcjQiCisJZ2l0IGNoZWNrb3V0IC1iIHJlYmFzZS1vbnRvIHRvLXJlYmFzZSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLVhzdWJ0cmVlPWZpbGVzX3N1YnRyZWUgLS1lbXB0eT1hc2sgLS1vbnRvIGZpbGVzLW1hc3RlciBtYXN0ZXIgJiYKKwk6IGZpcnN0IHBpY2sgcmVzdWx0cyBpbiBubyBjaGFuZ2VzICYmCisJZ2l0IHJlYmFzZSAtLXNraXAgJiYKKwl2ZXJib3NlIHRlc3QgIiQoY29tbWl0X21lc3NhZ2UgSEVBRH4yKSIgPSAibWFzdGVyNCIgJiYKKwl2ZXJib3NlIHRlc3QgIiQoY29tbWl0X21lc3NhZ2UgSEVBRH4pIiA9ICJmaWxlc19zdWJ0cmVlL21hc3RlcjUiICYmCisJdmVyYm9zZSB0ZXN0ICIkKGNvbW1pdF9tZXNzYWdlIEhFQUQpIiA9ICJFbXB0eSBjb21taXQiCiAnCiAKLSMgRkFJTFVSRTogZmF0YWw6IENvdWxkIG5vdCBwYXJzZSBvYmplY3QKLXRlc3RfZXhwZWN0X2ZhaWx1cmUgJ1JlYmFzZSAtWHN1YnRyZWUgLS1vbnRvIGNvbW1pdCA1JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdSZWJhc2UgLVhzdWJ0cmVlIC0tZW1wdHk9YXNrIC0tcmViYXNlLW1lcmdlcyAtLW9udG8gY29tbWl0JyAnCiAJcmVzZXRfcmViYXNlICYmCi0JZ2l0IGNoZWNrb3V0IC1iIHJlYmFzZS1vbnRvLTUgbWFzdGVyICYmCi0JZ2l0IGZpbHRlci1icmFuY2ggLS1wcnVuZS1lbXB0eSAtZiAtLXN1YmRpcmVjdG9yeS1maWx0ZXIgZmlsZXNfc3VidHJlZSAmJgotCWdpdCBjb21taXQgLW0gIkVtcHR5IGNvbW1pdCIgLS1hbGxvdy1lbXB0eSAmJgotCWdpdCByZWJhc2UgLVhzdWJ0cmVlPWZpbGVzX3N1YnRyZWUgLS1vbnRvIGZpbGVzLW1hc3RlciBtYXN0ZXIgJiYKLQl2ZXJib3NlIHRlc3QgIiQoY29tbWl0X21lc3NhZ2UgSEVBRH4pIiA9ICJmaWxlc19zdWJ0cmVlL21hc3RlcjUiCi0nCi0jIEZBSUxVUkU6IGZhdGFsOiBDb3VsZCBub3QgcGFyc2Ugb2JqZWN0Ci10ZXN0X2V4cGVjdF9mYWlsdXJlICdSZWJhc2UgLVhzdWJ0cmVlIC0tb250byBlbXB0eSBjb21taXQnICcKLQlyZXNldF9yZWJhc2UgJiYKLQlnaXQgY2hlY2tvdXQgLWIgcmViYXNlLW9udG8tZW1wdHkgbWFzdGVyICYmCi0JZ2l0IGZpbHRlci1icmFuY2ggLS1wcnVuZS1lbXB0eSAtZiAtLXN1YmRpcmVjdG9yeS1maWx0ZXIgZmlsZXNfc3VidHJlZSAmJgotCWdpdCBjb21taXQgLW0gIkVtcHR5IGNvbW1pdCIgLS1hbGxvdy1lbXB0eSAmJgotCWdpdCByZWJhc2UgLVhzdWJ0cmVlPWZpbGVzX3N1YnRyZWUgLS1vbnRvIGZpbGVzLW1hc3RlciBtYXN0ZXIgJiYKKwlnaXQgY2hlY2tvdXQgLWIgcmViYXNlLW1lcmdlcy1vbnRvIHRvLXJlYmFzZSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLVhzdWJ0cmVlPWZpbGVzX3N1YnRyZWUgLS1lbXB0eT1hc2sgLS1yZWJhc2UtbWVyZ2VzIC0tb250byBmaWxlcy1tYXN0ZXIgLS1yb290ICYmCisJOiBmaXJzdCBwaWNrIHJlc3VsdHMgaW4gbm8gY2hhbmdlcyAmJgorCWdpdCByZWJhc2UgLS1za2lwICYmCisJdmVyYm9zZSB0ZXN0ICIkKGNvbW1pdF9tZXNzYWdlIEhFQUR+MikiID0gIm1hc3RlcjQiICYmCisJdmVyYm9zZSB0ZXN0ICIkKGNvbW1pdF9tZXNzYWdlIEhFQUR+KSIgPSAiZmlsZXNfc3VidHJlZS9tYXN0ZXI1IiAmJgogCXZlcmJvc2UgdGVzdCAiJChjb21taXRfbWVzc2FnZSBIRUFEKSIgPSAiRW1wdHkgY29tbWl0IgogJwogCmRpZmYgLS1naXQgYS90L3QzNDI5LXJlYmFzZS1lZGl0LXRvZG8uc2ggYi90L3QzNDI5LXJlYmFzZS1lZGl0LXRvZG8uc2gKaW5kZXggYjkyOTJkZi4uNzAyNGQ0OSAxMDA3NTUKLS0tIGEvdC90MzQyOS1yZWJhc2UtZWRpdC10b2RvLnNoCisrKyBiL3QvdDM0MjktcmViYXNlLWVkaXQtdG9kby5zaApAQCAtMywxMiArMyw4MyBAQAogdGVzdF9kZXNjcmlwdGlvbj0ncmViYXNlIHNob3VsZCByZXJlYWQgdGhlIHRvZG8gZmlsZSBpZiBhbiBleGVjIG1vZGlmaWVzIGl0JwogCiAuIC4vdGVzdC1saWIuc2gKKy4gIiRURVNUX0RJUkVDVE9SWSIvbGliLXJlYmFzZS5zaAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCcgJworCXRlc3RfY29tbWl0IGZpcnN0IGZpbGUgJiYKKwl0ZXN0X2NvbW1pdCBzZWNvbmQgZmlsZSAmJgorCXRlc3RfY29tbWl0IHRoaXJkIGZpbGUKKycKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIGV4ZWMgbW9kaWZpZXMgcmViYXNlLXRvZG8nICcKLQl0ZXN0X2NvbW1pdCBpbml0aWFsICYmCiAJdG9kbz0uZ2l0L3JlYmFzZS1tZXJnZS9naXQtcmViYXNlLXRvZG8gJiYKIAlnaXQgcmViYXNlIEhFQUQgLXggImVjaG8gZXhlYyB0b3VjaCBGID4+JHRvZG8iICYmCiAJdGVzdCAtZSBGCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvb3NlIG9iamVjdCBjYWNoZSB2cyByZS1yZWFkaW5nIHRvZG8gbGlzdCcgJworCUdJVF9SRUJBU0VfVE9ETz0uZ2l0L3JlYmFzZS1tZXJnZS9naXQtcmViYXNlLXRvZG8gJiYKKwlleHBvcnQgR0lUX1JFQkFTRV9UT0RPICYmCisJd3JpdGVfc2NyaXB0IGFwcGVuZC10b2RvLnNoIDw8LVxFT1MgJiYKKwkjIEZvciB2YWx1ZXMgNSBhbmQgNiwgdGhpcyB5aWVsZHMgU0hBLTFzIHdpdGggdGhlIHNhbWUgZmlyc3QgdHdvIGRpZ2l0cworCWVjaG8gInBpY2sgJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgXAorCQkkKHByaW50ZiAiJXNcXG4iIFwKKwkJCSJ0cmVlICRFTVBUWV9UUkVFIiBcCisJCQkiYXV0aG9yIEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5vcmc+ICQxICswMDAwIiBcCisJCQkiY29tbWl0dGVyIEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5vcmc+ICQxICswMDAwIiBcCisJCQkiIiBcCisJCQkiJDEiIHwKKwkJICBnaXQgaGFzaC1vYmplY3QgLXQgY29tbWl0IC13IC0tc3RkaW4pKSIgPj4kR0lUX1JFQkFTRV9UT0RPCisKKwlzaGlmdAorCXRlc3QgLXogIiQqIiB8fAorCWVjaG8gImV4ZWMgJDAgJCoiID4+JEdJVF9SRUJBU0VfVE9ETworCUVPUworCisJZ2l0IHJlYmFzZSBIRUFEIC14ICIuL2FwcGVuZC10b2RvLnNoIDUgNiIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndG9kbyBpcyByZS1yZWFkIGFmdGVyIHJld29yZCBhbmQgc3F1YXNoJyAnCisJd3JpdGVfc2NyaXB0IHJld29yZC1lZGl0b3Iuc2ggPDwtXEVPUyAmJgorCUdJVF9TRVFVRU5DRV9FRElUT1I9ImVjaG8gXCJleGVjIGVjaG8gJChjYXQgZmlsZSkgPj5hY3R1YWxcIiA+PiIgXAorCQlnaXQgcmViYXNlIC0tZWRpdC10b2RvCisJRU9TCisKKwl0ZXN0X3dyaXRlX2xpbmVzIGZpcnN0IHRoaXJkID5leHBlY3RlZCAmJgorCXNldF9mYWtlX2VkaXRvciAmJgorCUdJVF9TRVFVRU5DRV9FRElUT1I9IiRFRElUT1IiIEZBS0VfTElORVM9InJld29yZCAxIHNxdWFzaCAyIGZpeHVwIDMiIFwKKwkJR0lUX0VESVRPUj0uL3Jld29yZC1lZGl0b3Iuc2ggZ2l0IHJlYmFzZSAtaSAtLXJvb3QgdGhpcmQgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmUtcmVhZGluZyB0b2RvIGRvZXNudCBpbnRlcmZlcmUgd2l0aCByZXZlcnQgLS1lZGl0JyAnCisJZ2l0IHJlc2V0IC0taGFyZCB0aGlyZCAmJgorCisJZ2l0IHJldmVydCAtLWVkaXQgdGhpcmQgc2Vjb25kICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJUmV2ZXJ0ICJzZWNvbmQiCisJUmV2ZXJ0ICJ0aGlyZCIKKwl0aGlyZAorCXNlY29uZAorCWZpcnN0CisJRU9GCisJZ2l0IGxvZyAtLWZvcm1hdD0iJXMiID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlLXJlYWRpbmcgdG9kbyBkb2VzbnQgaW50ZXJmZXJlIHdpdGggY2hlcnJ5LXBpY2sgLS1lZGl0JyAnCisJZ2l0IHJlc2V0IC0taGFyZCBmaXJzdCAmJgorCisJZ2l0IGNoZXJyeS1waWNrIC0tZWRpdCBzZWNvbmQgdGhpcmQgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwl0aGlyZAorCXNlY29uZAorCWZpcnN0CisJRU9GCisJZ2l0IGxvZyAtLWZvcm1hdD0iJXMiID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MzQzMC1yZWJhc2UtbWVyZ2VzLnNoIGIvdC90MzQzMC1yZWJhc2UtbWVyZ2VzLnNoCmluZGV4IGNjNTY0NjguLmExYmMzZTIgMTAwNzU1Ci0tLSBhL3QvdDM0MzAtcmViYXNlLW1lcmdlcy5zaAorKysgYi90L3QzNDMwLXJlYmFzZS1tZXJnZXMuc2gKQEAgLTIwLDEyICsyMCwxMSBAQAogJwogLiAuL3Rlc3QtbGliLnNoCiAuICIkVEVTVF9ESVJFQ1RPUlkiL2xpYi1yZWJhc2Uuc2gKKy4gIiRURVNUX0RJUkVDVE9SWSIvbGliLWxvZy1ncmFwaC5zaAogCiB0ZXN0X2NtcF9ncmFwaCAoKSB7CiAJY2F0ID5leHBlY3QgJiYKLQlnaXQgbG9nIC0tZ3JhcGggLS1ib3VuZGFyeSAtLWZvcm1hdD0lcyAiJEAiID5vdXRwdXQgJiYKLQlzZWQgInMvICokLy8iIDxvdXRwdXQgPm91dHB1dC50cmltbWVkICYmCi0JdGVzdF9jbXAgZXhwZWN0IG91dHB1dC50cmltbWVkCisJbGliX3Rlc3RfY21wX2dyYXBoIC0tYm91bmRhcnkgLS1mb3JtYXQ9JXMgIiRAIgogfQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCcgJwpAQCAtMzcsMjAgKzM2LDI3IEBACiAJdGVzdF9jb21taXQgQSAmJgogCWdpdCBjaGVja291dCAtYiBmaXJzdCAmJgogCXRlc3RfY29tbWl0IEIgJiYKKwliPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUQpICYmCiAJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgogCXRlc3RfY29tbWl0IEMgJiYKKwljPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUQpICYmCiAJdGVzdF9jb21taXQgRCAmJgorCWQ9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRCkgJiYKIAlnaXQgbWVyZ2UgLS1uby1jb21taXQgQiAmJgogCXRlc3RfdGljayAmJgogCWdpdCBjb21taXQgLW0gRSAmJgogCWdpdCB0YWcgLW0gRSBFICYmCisJZT0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEKSAmJgogCWdpdCBjaGVja291dCAtYiBzZWNvbmQgQyAmJgogCXRlc3RfY29tbWl0IEYgJiYKKwlmPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUQpICYmCiAJdGVzdF9jb21taXQgRyAmJgorCWc9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRCkgJiYKIAlnaXQgY2hlY2tvdXQgbWFzdGVyICYmCiAJZ2l0IG1lcmdlIC0tbm8tY29tbWl0IEcgJiYKIAl0ZXN0X3RpY2sgJiYKIAlnaXQgY29tbWl0IC1tIEggJiYKKwloPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUQpICYmCiAJZ2l0IHRhZyAtbSBIIEggJiYKIAlnaXQgY2hlY2tvdXQgQSAmJgogCXRlc3RfY29tbWl0IGNvbmZsaWN0aW5nLUcgRy50CkBAIC05MywyNCArOTksMjQgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2VuZXJhdGUgY29ycmVjdCB0b2RvIGxpc3QnICcKLQljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCiAJbGFiZWwgb250bwogCiAJcmVzZXQgb250bwotCXBpY2sgZDlkZjQ1MCBCCisJcGljayAkYiBCCiAJbGFiZWwgRQogCiAJcmVzZXQgb250bwotCXBpY2sgNWRlZTc4NCBDCisJcGljayAkYyBDCiAJbGFiZWwgYnJhbmNoLXBvaW50Ci0JcGljayBjYTJjODYxIEYKLQlwaWNrIDA4OGIwMGEgRworCXBpY2sgJGYgRgorCXBpY2sgJGcgRwogCWxhYmVsIEgKIAogCXJlc2V0IGJyYW5jaC1wb2ludCAjIEMKLQlwaWNrIDEyYmQwN2IgRAotCW1lcmdlIC1DIDIwNTFiNTYgRSAjIEUKLQltZXJnZSAtQyAyMzNkNDhhIEggIyBICisJcGljayAkZCBECisJbWVyZ2UgLUMgJGUgRSAjIEUKKwltZXJnZSAtQyAkaCBIICMgSAogCiAJRU9GCiAKQEAgLTEyNSw3ICsxMzEsNyBAQAogCTogPmRvbnQtb3ZlcndyaXRlLXVudHJhY2tlZC50ICYmCiAJZWNobyAicmVzZXQgcmVmcy90YWdzL2RvbnQtb3ZlcndyaXRlLXVudHJhY2tlZCIgPnNjcmlwdC1mcm9tLXNjcmF0Y2ggJiYKIAl0ZXN0X2NvbmZpZyBzZXF1ZW5jZS5lZGl0b3IgXCIiJFBXRCIvcmVwbGFjZS1lZGl0b3Iuc2hcIiAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLXIgSEVBRCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLWlyIEhFQUQgJiYKIAlnaXQgcmViYXNlIC0tYWJvcnQKICcKIApAQCAtMTUxLDcgKzE1Nyw2IEBACiAJdGVzdF9wYXRoX2lzX2ZpbGUgLmdpdC9yZWJhc2UtbWVyZ2UvcGF0Y2gKICcKIAotU1E9IiciCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmYWlsZWQgYG1lcmdlIDxicmFuY2g+YCBkb2VzIG5vdCBjcmFzaCcgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCAidGVzdF9taWdodF9mYWlsIGdpdCByZWJhc2UgLS1hYm9ydCIgJiYKIAlnaXQgY2hlY2tvdXQgY29uZmxpY3RpbmctRyAmJgpAQCAtMTY0LDYgKzE2OSwxOSBAQAogCWdyZXAgIl5NZXJnZSBicmFuY2ggJHtTUX1HJHtTUX0kIiAuZ2l0L3JlYmFzZS1tZXJnZS9tZXNzYWdlCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zhc3QtZm9yd2FyZCBtZXJnZSAtYyBzdGlsbCByZXdvcmRzJyAnCisJZ2l0IGNoZWNrb3V0IC1iIGZhc3QtZm9yd2FyZC1tZXJnZS1jIEggJiYKKwkoCisJCXNldF9mYWtlX2VkaXRvciAmJgorCQlGQUtFX0NPTU1JVF9NRVNTQUdFPWVkaXRlZCBcCisJCQlHSVRfU0VRVUVOQ0VfRURJVE9SPSJlY2hvIG1lcmdlIC1jIEggRyA+IiBcCisJCQlnaXQgcmViYXNlIC1pciBAXgorCSkgJiYKKwllY2hvIGVkaXRlZCA+ZXhwZWN0ZWQgJiYKKwlnaXQgbG9nIC0tcHJldHR5PWZvcm1hdDolQiAtMSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dpdGggYSBicmFuY2ggdGlwIHRoYXQgd2FzIGNoZXJyeS1waWNrZWQgYWxyZWFkeScgJwogCWdpdCBjaGVja291dCAtYiBhbHJlYWR5LXVwc3RyZWFtIG1hc3RlciAmJgogCWJhc2U9IiQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBIRUFEKSIgJiYKQEAgLTIyNCw4ICsyNDIsMjQgQEAKIAl0ZXN0X2NtcF9yZXYgSEVBRCAiJChjYXQgd3QvYikiCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tYWJvcnQgY2xlYW5zIHVwIHJlZnMvcmV3cml0dGVuJyAnCisJZ2l0IGNoZWNrb3V0IC1iIGFib3J0LWNsZWFucy1yZWZzLXJld3JpdHRlbiBIICYmCisJR0lUX1NFUVVFTkNFX0VESVRPUj0iZWNobyBicmVhayA+PiIgZ2l0IHJlYmFzZSAtaXIgQF4gJiYKKwlnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IHJlZnMvcmV3cml0dGVuL29udG8gJiYKKwlnaXQgcmViYXNlIC0tYWJvcnQgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IHJlZnMvcmV3cml0dGVuL29udG8KKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1xdWl0IGNsZWFucyB1cCByZWZzL3Jld3JpdHRlbicgJworCWdpdCBjaGVja291dCAtYiBxdWl0LWNsZWFucy1yZWZzLXJld3JpdHRlbiBIICYmCisJR0lUX1NFUVVFTkNFX0VESVRPUj0iZWNobyBicmVhayA+PiIgZ2l0IHJlYmFzZSAtaXIgQF4gJiYKKwlnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IHJlZnMvcmV3cml0dGVuL29udG8gJiYKKwlnaXQgcmViYXNlIC0tcXVpdCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgcmVmcy9yZXdyaXR0ZW4vb250bworJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwb3N0LXJld3JpdGUgaG9vayBhbmQgZml4dXBzIHdvcmsgZm9yIG1lcmdlcycgJwotCWdpdCBjaGVja291dCAtYiBwb3N0LXJld3JpdGUgJiYKKwlnaXQgY2hlY2tvdXQgLWIgcG9zdC1yZXdyaXRlIEggJiYKIAl0ZXN0X2NvbW1pdCBzYW1lMSAmJgogCWdpdCByZXNldCAtLWhhcmQgSEVBRF4gJiYKIAl0ZXN0X2NvbW1pdCBzYW1lMiAmJgpAQCAtMjcxLDcgKzMwNSw3IEBACiAJRU9GCiAJdGVzdF9jb25maWcgc2VxdWVuY2UuZWRpdG9yIFwiIiRQV0QiL3JlcGxhY2UtZWRpdG9yLnNoXCIgJiYKIAl0ZXN0X3RpY2sgJiYKLQlnaXQgcmViYXNlIC1pIC0tZm9yY2UgLS1yb290IC1yICYmCisJZ2l0IHJlYmFzZSAtaSAtLWZvcmNlLXJlYmFzZSAtLXJvb3QgLXIgJiYKIAl0ZXN0ICJQYXJzbmlwIiA9ICIkKGdpdCBzaG93IC1zIC0tZm9ybWF0PSVhbiBIRUFEXikiICYmCiAJdGVzdCAkKGdpdCByZXYtcGFyc2Ugc2Vjb25kLXJvb3ReMCkgIT0gJChnaXQgcmV2LXBhcnNlIEhFQUReKSAmJgogCXRlc3QgJChnaXQgcmV2LXBhcnNlIHNlY29uZC1yb290OnNlY29uZC1yb290LnQpID0gXApAQCAtMzExLDcgKzM0NSw3IEBACiAJZ2l0IG1lcmdlIC0tYWxsb3ctdW5yZWxhdGVkLWhpc3RvcmllcyBraG51bSAmJgogCXRlc3RfdGljayAmJgogCWdpdCByZWJhc2UgLWYgLXIgSEVBRF4gJiYKLQkhIHRlc3RfY21wX3JldiBIRUFEXjIga2hudW0gJiYKKwl0ZXN0X2NtcF9yZXYgISBIRUFEXjIga2hudW0gJiYKIAl0ZXN0X2NtcF9ncmFwaCBIRUFEXi4uIDw8LVxFT0YgJiYKIAkqICAgTWVyZ2UgYnJhbmNoICdcJydraG51bSdcJycgaW50byBhc2hlcmFoCiAJfFwKQEAgLTM2NCw3ICszOTgsNyBAQAogCXRlc3RfY21wX3JldiBIRUFEICRiZWZvcmUgJiYKIAogCXRlc3RfdGljayAmJgotCWdpdCByZWJhc2UgLWkgLS1mb3JjZSAtciBIRUFEXl4gJiYKKwlnaXQgcmViYXNlIC1pIC0tZm9yY2UtcmViYXNlIC1yIEhFQUReXiAmJgogCXRlc3QgIkhhbmsiID0gIiQoZ2l0IHNob3cgLXMgLS1mb3JtYXQ9JWFuIEhFQUQpIiAmJgogCXRlc3QgIiRiZWZvcmUiICE9ICQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCXRlc3RfY21wX2dyYXBoIEhFQUReXi4uIDw8LVxFT0YKQEAgLTM3Myw3ICs0MDcsNyBAQAogCXwgfCAqIHRocmVlCiAJfCAqIHwgdHdvCiAJfCB8LwotCSogfCBvbmUKKwkqIC8gb25lCiAJfC8KIAlvIGJlZm9yZS1vY3RvcHVzCiAJRU9GCkBAIC00MTIsNCArNDQ2LDUyIEBACiAJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9NRVJHRV9IRUFECiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcmViYXNlLW1lcmdlcyB3aXRoIHN0cmF0ZWdpZXMnICcKKwlnaXQgY2hlY2tvdXQgLWIgd2l0aC1hLXN0cmF0ZWd5IEYgJiYKKwl0ZXN0X3RpY2sgJiYKKwlnaXQgbWVyZ2UgLW0gIk1lcmdlIGNvbmZsaWN0aW5nLUciIGNvbmZsaWN0aW5nLUcgJiYKKworCTogZmlyc3QsIHRlc3Qgd2l0aCBhIG1lcmdlIHN0cmF0ZWd5IG9wdGlvbiAmJgorCWdpdCByZWJhc2UgLWlyIC1YdGhlaXJzIEcgJiYKKwllY2hvIGNvbmZsaWN0aW5nLUcgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBHLnQgJiYKKworCTogbm93LCB0cnkgd2l0aCBhIG1lcmdlIHN0cmF0ZWd5IG90aGVyIHRoYW4gcmVjdXJzaXZlICYmCisJZ2l0IHJlc2V0IC0taGFyZCBAezF9ICYmCisJd3JpdGVfc2NyaXB0IGdpdC1tZXJnZS1vdmVycmlkZSA8PC1cRU9GICYmCisJZWNobyBvdmVycmlkZGVuJDEgPj5HLnQKKwlnaXQgYWRkIEcudAorCUVPRgorCVBBVEg9IiRQV0Q6JFBBVEgiIGdpdCByZWJhc2UgLWlyIC1zIG92ZXJyaWRlIC1YeG9wdCBHICYmCisJdGVzdF93cml0ZV9saW5lcyBHIG92ZXJyaWRkZW4tLXhvcHQgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBHLnQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1yZWJhc2UtbWVyZ2VzIHdpdGggY29tbWl0IHRoYXQgY2FuIGdlbmVyYXRlIGJhZCBjaGFyYWN0ZXJzIGZvciBmaWxlbmFtZScgJworCWdpdCBjaGVja291dCAtYiBjb2xvbi1pbi1sYWJlbCBFICYmCisJZ2l0IG1lcmdlIC1tICJjb2xvbjogdGhpcyBzaG91bGQgd29yayIgRyAmJgorCWdpdCByZWJhc2UgLS1yZWJhc2UtbWVyZ2VzIC0tZm9yY2UtcmViYXNlIEUKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1yZWJhc2UtbWVyZ2VzIHdpdGggbWVzc2FnZSBtYXRjaGVkIHdpdGggb250byBsYWJlbCcgJworCWdpdCBjaGVja291dCAtYiBvbnRvLWxhYmVsIEUgJiYKKwlnaXQgbWVyZ2UgLW0gb250byBHICYmCisJZ2l0IHJlYmFzZSAtLXJlYmFzZS1tZXJnZXMgLS1mb3JjZS1yZWJhc2UgRSAmJgorCXRlc3RfY21wX2dyYXBoIDw8LVxFT0YKKwkqICAgb250bworCXxcCisJfCAqIEcKKwl8ICogRgorCSogfCAgIEUKKwl8XCBcCisJfCAqIHwgQgorCSogfCB8IEQKKwl8IHwvCisJfC98CisJKiB8IEMKKwl8LworCSogQQorCUVPRgorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDM0MzEtcmViYXNlLWZvcmstcG9pbnQuc2ggYi90L3QzNDMxLXJlYmFzZS1mb3JrLXBvaW50LnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjc4ODUxYjkKLS0tIC9kZXYvbnVsbAorKysgYi90L3QzNDMxLXJlYmFzZS1mb3JrLXBvaW50LnNoCkBAIC0wLDAgKzEsNTcgQEAKKyMhL2Jpbi9zaAorIworIyBDb3B5cmlnaHQgKGMpIDIwMTkgRGVudG9uIExpdQorIworCit0ZXN0X2Rlc2NyaXB0aW9uPSdnaXQgcmViYXNlIC0tZm9yay1wb2ludCB0ZXN0JworCisuIC4vdGVzdC1saWIuc2gKKworIyBBLS0tQi0tLUQtLS1FICAgIChtYXN0ZXIpCisjICAgICAgXAorIyAgICAgICBDKi0tLUYtLS1HIChzaWRlKQorIworIyBDIHdhcyBmb3JtZXJseSBwYXJ0IG9mIG1hc3RlciBidXQgbWFzdGVyIHdhcyByZXdvdW5kIHRvIHJlbW92ZSBDCisjCit0ZXN0X2V4cGVjdF9zdWNjZXNzIHNldHVwICcKKwl0ZXN0X2NvbW1pdCBBICYmCisJdGVzdF9jb21taXQgQiAmJgorCXRlc3RfY29tbWl0IEMgJiYKKwlnaXQgYnJhbmNoIC10IHNpZGUgJiYKKwlnaXQgcmVzZXQgLS1oYXJkIEhFQUReICYmCisJdGVzdF9jb21taXQgRCAmJgorCXRlc3RfY29tbWl0IEUgJiYKKwlnaXQgY2hlY2tvdXQgc2lkZSAmJgorCXRlc3RfY29tbWl0IEYgJiYKKwl0ZXN0X2NvbW1pdCBHCisnCisKK3Rlc3RfcmViYXNlICgpIHsKKwlleHBlY3RlZD0iJDEiICYmCisJc2hpZnQgJiYKKwl0ZXN0X2V4cGVjdF9zdWNjZXNzICJnaXQgcmViYXNlICQqIiAiCisJCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwkJZ2l0IHJlc2V0IC0taGFyZCBFICYmCisJCWdpdCBjaGVja291dCBzaWRlICYmCisJCWdpdCByZXNldCAtLWhhcmQgRyAmJgorCQlnaXQgcmViYXNlICQqICYmCisJCXRlc3Rfd3JpdGVfbGluZXMgJGV4cGVjdGVkID5leHBlY3QgJiYKKwkJZ2l0IGxvZyAtLXByZXR0eT0lcyA+YWN0dWFsICYmCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwkiCit9CisKK3Rlc3RfcmViYXNlICdHIEYgRSBEIEIgQScKK3Rlc3RfcmViYXNlICdHIEYgRCBCIEEnIC0tb250byBECit0ZXN0X3JlYmFzZSAnRyBGIEIgQScgLS1rZWVwLWJhc2UKK3Rlc3RfcmViYXNlICdHIEYgQyBFIEQgQiBBJyAtLW5vLWZvcmstcG9pbnQKK3Rlc3RfcmViYXNlICdHIEYgQyBEIEIgQScgLS1uby1mb3JrLXBvaW50IC0tb250byBECit0ZXN0X3JlYmFzZSAnRyBGIEMgQiBBJyAtLW5vLWZvcmstcG9pbnQgLS1rZWVwLWJhc2UKK3Rlc3RfcmViYXNlICdHIEYgRSBEIEIgQScgLS1mb3JrLXBvaW50IHJlZnMvaGVhZHMvbWFzdGVyCit0ZXN0X3JlYmFzZSAnRyBGIEQgQiBBJyAtLWZvcmstcG9pbnQgLS1vbnRvIEQgcmVmcy9oZWFkcy9tYXN0ZXIKK3Rlc3RfcmViYXNlICdHIEYgQiBBJyAtLWZvcmstcG9pbnQgLS1rZWVwLWJhc2UgcmVmcy9oZWFkcy9tYXN0ZXIKK3Rlc3RfcmViYXNlICdHIEYgQyBFIEQgQiBBJyByZWZzL2hlYWRzL21hc3RlcgordGVzdF9yZWJhc2UgJ0cgRiBDIEQgQiBBJyAtLW9udG8gRCByZWZzL2hlYWRzL21hc3RlcgordGVzdF9yZWJhc2UgJ0cgRiBDIEIgQScgLS1rZWVwLWJhc2UgcmVmcy9oZWFkcy9tYXN0ZXIKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzNDMyLXJlYmFzZS1mYXN0LWZvcndhcmQuc2ggYi90L3QzNDMyLXJlYmFzZS1mYXN0LWZvcndhcmQuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNmM5ZDRhMQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDM0MzItcmViYXNlLWZhc3QtZm9yd2FyZC5zaApAQCAtMCwwICsxLDEyMyBAQAorIyEvYmluL3NoCisjCisjIENvcHlyaWdodCAoYykgMjAxOSBEZW50b24gTGl1CisjCisKK3Rlc3RfZGVzY3JpcHRpb249J2Vuc3VyZSByZWJhc2UgZmFzdC1mb3J3YXJkcyBjb21taXRzIHdoZW4gcG9zc2libGUnCisKKy4gLi90ZXN0LWxpYi5zaAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzIHNldHVwICcKKwl0ZXN0X2NvbW1pdCBBICYmCisJdGVzdF9jb21taXQgQiAmJgorCXRlc3RfY29tbWl0IEMgJiYKKwl0ZXN0X2NvbW1pdCBEICYmCisJZ2l0IGNoZWNrb3V0IC10IC1iIHNpZGUKKycKKwordGVzdF9yZWJhc2Vfc2FtZV9oZWFkICgpIHsKKwlzdGF0dXNfbj0iJDEiICYmCisJc2hpZnQgJiYKKwl3aGF0X249IiQxIiAmJgorCXNoaWZ0ICYmCisJY21wX249IiQxIiAmJgorCXNoaWZ0ICYmCisJc3RhdHVzX2Y9IiQxIiAmJgorCXNoaWZ0ICYmCisJd2hhdF9mPSIkMSIgJiYKKwlzaGlmdCAmJgorCWNtcF9mPSIkMSIgJiYKKwlzaGlmdCAmJgorCXRlc3RfcmViYXNlX3NhbWVfaGVhZF8gJHN0YXR1c19uICR3aGF0X24gJGNtcF9uICIgLS1hcHBseSIgIiQqIiAmJgorCXRlc3RfcmViYXNlX3NhbWVfaGVhZF8gJHN0YXR1c19mICR3aGF0X2YgJGNtcF9mICIgLS1hcHBseSAtLW5vLWZmIiAiJCoiCisJdGVzdF9yZWJhc2Vfc2FtZV9oZWFkXyAkc3RhdHVzX24gJHdoYXRfbiAkY21wX24gIiAtLW1lcmdlIiAiJCoiICYmCisJdGVzdF9yZWJhc2Vfc2FtZV9oZWFkXyAkc3RhdHVzX2YgJHdoYXRfZiAkY21wX2YgIiAtLW1lcmdlIC0tbm8tZmYiICIkKiIKK30KKwordGVzdF9yZWJhc2Vfc2FtZV9oZWFkXyAoKSB7CisJc3RhdHVzPSIkMSIgJiYKKwlzaGlmdCAmJgorCXdoYXQ9IiQxIiAmJgorCXNoaWZ0ICYmCisJY21wPSIkMSIgJiYKKwlzaGlmdCAmJgorCWZsYWc9IiQxIgorCXNoaWZ0ICYmCisJdGVzdF9leHBlY3RfJHN0YXR1cyAiZ2l0IHJlYmFzZSRmbGFnICQqIHdpdGggJGNoYW5nZXMgaXMgJHdoYXQgd2l0aCAkY21wIEhFQUQiICIKKwkJb2xkaGVhZD1cJChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCisJCXRlc3Rfd2hlbl9maW5pc2hlZCAnZ2l0IHJlc2V0IC0taGFyZCBcJG9sZGhlYWQnICYmCisJCWNwIC5naXQvbG9ncy9IRUFEIGV4cGVjdCAmJgorCQlnaXQgcmViYXNlJGZsYWcgJCogPnN0ZG91dCAmJgorCQlpZiB0ZXN0ICR3aGF0ID0gd29yaworCQl0aGVuCisJCQlvbGQ9XCQod2MgLWwgPGV4cGVjdCkgJiYKKwkJCXRlc3RfbGluZV9jb3VudCAnLWd0JyBcJG9sZCAuZ2l0L2xvZ3MvSEVBRAorCQllbGlmIHRlc3QgJHdoYXQgPSBub29wCisJCXRoZW4KKwkJCXRlc3RfY21wIGV4cGVjdCAuZ2l0L2xvZ3MvSEVBRAorCQlmaSAmJgorCQluZXdoZWFkPVwkKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKwkJaWYgdGVzdCAkY21wID0gc2FtZQorCQl0aGVuCisJCQl0ZXN0X2NtcF9yZXYgXCRvbGRoZWFkIFwkbmV3aGVhZAorCQllbGlmIHRlc3QgJGNtcCA9IGRpZmYKKwkJdGhlbgorCQkJdGVzdF9jbXBfcmV2ICEgXCRvbGRoZWFkIFwkbmV3aGVhZAorCQlmaQorCSIKK30KKworY2hhbmdlcz0nbm8gY2hhbmdlcycKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgc2FtZQordGVzdF9yZWJhc2Vfc2FtZV9oZWFkIHN1Y2Nlc3Mgbm9vcCBzYW1lIHN1Y2Nlc3Mgd29yayBzYW1lIG1hc3RlcgordGVzdF9yZWJhc2Vfc2FtZV9oZWFkIHN1Y2Nlc3Mgbm9vcCBzYW1lIHN1Y2Nlc3Mgd29yayBkaWZmIC0tb250byBCIEIKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgZGlmZiAtLW9udG8gQi4uLiBCCit0ZXN0X3JlYmFzZV9zYW1lX2hlYWQgc3VjY2VzcyBub29wIHNhbWUgc3VjY2VzcyB3b3JrIHNhbWUgLS1vbnRvIG1hc3Rlci4uLiBtYXN0ZXIKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgc2FtZSAtLWtlZXAtYmFzZSBtYXN0ZXIKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgc2FtZSAtLWtlZXAtYmFzZQordGVzdF9yZWJhc2Vfc2FtZV9oZWFkIHN1Y2Nlc3Mgbm9vcCBzYW1lIHN1Y2Nlc3Mgd29yayBzYW1lIC0tbm8tZm9yay1wb2ludAordGVzdF9yZWJhc2Vfc2FtZV9oZWFkIHN1Y2Nlc3Mgbm9vcCBzYW1lIHN1Y2Nlc3Mgd29yayBzYW1lIC0ta2VlcC1iYXNlIC0tbm8tZm9yay1wb2ludAordGVzdF9yZWJhc2Vfc2FtZV9oZWFkIHN1Y2Nlc3Mgbm9vcCBzYW1lIHN1Y2Nlc3Mgd29yayBzYW1lIC0tZm9yay1wb2ludCBtYXN0ZXIKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgZGlmZiAtLWZvcmstcG9pbnQgLS1vbnRvIEIgQgordGVzdF9yZWJhc2Vfc2FtZV9oZWFkIHN1Y2Nlc3Mgbm9vcCBzYW1lIHN1Y2Nlc3Mgd29yayBkaWZmIC0tZm9yay1wb2ludCAtLW9udG8gQi4uLiBCCit0ZXN0X3JlYmFzZV9zYW1lX2hlYWQgc3VjY2VzcyBub29wIHNhbWUgc3VjY2VzcyB3b3JrIHNhbWUgLS1mb3JrLXBvaW50IC0tb250byBtYXN0ZXIuLi4gbWFzdGVyCit0ZXN0X3JlYmFzZV9zYW1lX2hlYWQgc3VjY2VzcyBub29wIHNhbWUgc3VjY2VzcyB3b3JrIHNhbWUgLS1rZWVwLWJhc2UgLS1rZWVwLWJhc2UgbWFzdGVyCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FkZCB3b3JrIHNhbWUgdG8gc2lkZScgJworCXRlc3RfY29tbWl0IEUKKycKKworY2hhbmdlcz0nb3VyIGNoYW5nZXMnCit0ZXN0X3JlYmFzZV9zYW1lX2hlYWQgc3VjY2VzcyBub29wIHNhbWUgc3VjY2VzcyB3b3JrIHNhbWUKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgc2FtZSBtYXN0ZXIKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgZGlmZiAtLW9udG8gQiBCCit0ZXN0X3JlYmFzZV9zYW1lX2hlYWQgc3VjY2VzcyBub29wIHNhbWUgc3VjY2VzcyB3b3JrIGRpZmYgLS1vbnRvIEIuLi4gQgordGVzdF9yZWJhc2Vfc2FtZV9oZWFkIHN1Y2Nlc3Mgbm9vcCBzYW1lIHN1Y2Nlc3Mgd29yayBzYW1lIC0tb250byBtYXN0ZXIuLi4gbWFzdGVyCit0ZXN0X3JlYmFzZV9zYW1lX2hlYWQgc3VjY2VzcyBub29wIHNhbWUgc3VjY2VzcyB3b3JrIHNhbWUgLS1rZWVwLWJhc2UgbWFzdGVyCit0ZXN0X3JlYmFzZV9zYW1lX2hlYWQgc3VjY2VzcyBub29wIHNhbWUgc3VjY2VzcyB3b3JrIHNhbWUgLS1rZWVwLWJhc2UKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgc2FtZSAtLW5vLWZvcmstcG9pbnQKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgc2FtZSAtLWtlZXAtYmFzZSAtLW5vLWZvcmstcG9pbnQKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgc2FtZSAtLWZvcmstcG9pbnQgbWFzdGVyCit0ZXN0X3JlYmFzZV9zYW1lX2hlYWQgc3VjY2VzcyBub29wIHNhbWUgc3VjY2VzcyB3b3JrIGRpZmYgLS1mb3JrLXBvaW50IC0tb250byBCIEIKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgZGlmZiAtLWZvcmstcG9pbnQgLS1vbnRvIEIuLi4gQgordGVzdF9yZWJhc2Vfc2FtZV9oZWFkIHN1Y2Nlc3Mgbm9vcCBzYW1lIHN1Y2Nlc3Mgd29yayBzYW1lIC0tZm9yay1wb2ludCAtLW9udG8gbWFzdGVyLi4uIG1hc3RlcgordGVzdF9yZWJhc2Vfc2FtZV9oZWFkIHN1Y2Nlc3Mgbm9vcCBzYW1lIHN1Y2Nlc3Mgd29yayBzYW1lIC0tZm9yay1wb2ludCAtLWtlZXAtYmFzZSBtYXN0ZXIKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYWRkIHdvcmsgc2FtZSB0byB1cHN0cmVhbScgJworCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwl0ZXN0X2NvbW1pdCBGICYmCisJZ2l0IGNoZWNrb3V0IHNpZGUKKycKKworY2hhbmdlcz0nb3VyIGFuZCB0aGVpciBjaGFuZ2VzJwordGVzdF9yZWJhc2Vfc2FtZV9oZWFkIHN1Y2Nlc3Mgbm9vcCBzYW1lIHN1Y2Nlc3Mgd29yayBkaWZmIC0tb250byBCIEIKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgZGlmZiAtLW9udG8gQi4uLiBCCit0ZXN0X3JlYmFzZV9zYW1lX2hlYWQgc3VjY2VzcyBub29wIHNhbWUgc3VjY2VzcyB3b3JrIGRpZmYgLS1vbnRvIG1hc3Rlci4uLiBtYXN0ZXIKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgZGlmZiAtLWtlZXAtYmFzZSBtYXN0ZXIKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgZGlmZiAtLWtlZXAtYmFzZQordGVzdF9yZWJhc2Vfc2FtZV9oZWFkIGZhaWx1cmUgd29yayBzYW1lIHN1Y2Nlc3Mgd29yayBkaWZmIC0tZm9yay1wb2ludCAtLW9udG8gQiBCCit0ZXN0X3JlYmFzZV9zYW1lX2hlYWQgZmFpbHVyZSB3b3JrIHNhbWUgc3VjY2VzcyB3b3JrIGRpZmYgLS1mb3JrLXBvaW50IC0tb250byBCLi4uIEIKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgZGlmZiAtLWZvcmstcG9pbnQgLS1vbnRvIG1hc3Rlci4uLiBtYXN0ZXIKK3Rlc3RfcmViYXNlX3NhbWVfaGVhZCBzdWNjZXNzIG5vb3Agc2FtZSBzdWNjZXNzIHdvcmsgZGlmZiAtLWZvcmstcG9pbnQgLS1rZWVwLWJhc2UgbWFzdGVyCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MzQzMy1yZWJhc2UtYWNyb3NzLW1vZGUtY2hhbmdlLnNoIGIvdC90MzQzMy1yZWJhc2UtYWNyb3NzLW1vZGUtY2hhbmdlLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjA1ZGY5NjQKLS0tIC9kZXYvbnVsbAorKysgYi90L3QzNDMzLXJlYmFzZS1hY3Jvc3MtbW9kZS1jaGFuZ2Uuc2gKQEAgLTAsMCArMSw0OCBAQAorIyEvYmluL3NoCisKK3Rlc3RfZGVzY3JpcHRpb249J2dpdCByZWJhc2UgYWNyb3NzIG1vZGUgY2hhbmdlJworCisuIC4vdGVzdC1saWIuc2gKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICcKKwlta2RpciBEUyAmJgorCT5EUy93aGF0ZXZlciAmJgorCWdpdCBhZGQgRFMgJiYKKwlnaXQgY29tbWl0IC1tIGJhc2UgJiYKKworCWdpdCBicmFuY2ggc2lkZTEgJiYKKwlnaXQgYnJhbmNoIHNpZGUyICYmCisKKwlnaXQgY2hlY2tvdXQgc2lkZTEgJiYKKwlnaXQgcm0gLXJmIERTICYmCisJdGVzdF9sbl9zX2FkZCB1bnJlbGF0ZWQgRFMgJiYKKwlnaXQgY29tbWl0IC1tIHNpZGUxICYmCisKKwlnaXQgY2hlY2tvdXQgc2lkZTIgJiYKKwk+dW5yZWxhdGVkICYmCisJZ2l0IGFkZCB1bnJlbGF0ZWQgJiYKKwlnaXQgY29tbWl0IC1tIGNvbW1pdDEgJiYKKworCWVjaG8gPj51bnJlbGF0ZWQgJiYKKwlnaXQgY29tbWl0IC1hbSBjb21taXQyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZSBjaGFuZ2VzIHdpdGggdGhlIGFwcGx5IGJhY2tlbmQnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZWJhc2UgLS1hYm9ydCB8fCB0cnVlIiAmJgorCWdpdCBjaGVja291dCAtYiBhcHBseS1iYWNrZW5kIHNpZGUyICYmCisJZ2l0IHJlYmFzZSBzaWRlMQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgY2hhbmdlcyB3aXRoIHRoZSBtZXJnZSBiYWNrZW5kJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmViYXNlIC0tYWJvcnQgfHwgdHJ1ZSIgJiYKKwlnaXQgY2hlY2tvdXQgLWIgbWVyZ2UtYmFja2VuZCBzaWRlMiAmJgorCWdpdCByZWJhc2UgLW0gc2lkZTEKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmViYXNlIGNoYW5nZXMgd2l0aCB0aGUgbWVyZ2UgYmFja2VuZCB3aXRoIGEgZGVsYXknICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZWJhc2UgLS1hYm9ydCB8fCB0cnVlIiAmJgorCWdpdCBjaGVja291dCAtYiBtZXJnZS1kZWxheS1iYWNrZW5kIHNpZGUyICYmCisJZ2l0IHJlYmFzZSAtbSAtLWV4ZWMgInNsZWVwIDEiIHNpZGUxCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MzQzNC1yZWJhc2UtaTE4bi5zaCBiL3QvdDM0MzQtcmViYXNlLWkxOG4uc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYzdjODM1YwotLS0gL2Rldi9udWxsCisrKyBiL3QvdDM0MzQtcmViYXNlLWkxOG4uc2gKQEAgLTAsMCArMSw4NCBAQAorIyEvYmluL3NoCisjCisjIENvcHlyaWdodCAoYykgMjAxOSBEb2FuIFRyYW4gQ29uZyBEYW5oCisjCisKK3Rlc3RfZGVzY3JpcHRpb249J3JlYmFzZSB3aXRoIGNoYW5naW5nIGVuY29kaW5nCisKK0luaXRpYWwgc2V0dXA6CisKKzEgLSAyICAgICAgICAgICAgICBtYXN0ZXIKKyBcCisgIDMgLSA0ICAgICAgICAgICAgZmlyc3QKKyAgIFwKKyAgICA1IC0gNiAgICAgICAgICBzZWNvbmQKKycKKworLiAuL3Rlc3QtbGliLnNoCisKK2NvbXBhcmVfbXNnICgpIHsKKwlpY29udiAtZiAiJDIiIC10ICIkMyIgIiRURVNUX0RJUkVDVE9SWS90MzQzNC8kMSIgPmV4cGVjdCAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCA+cmF3ICYmCisJc2VkICIxLC9eJC9kIiByYXcgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKK30KKwordGVzdF9leHBlY3Rfc3VjY2VzcyBzZXR1cCAnCisJdGVzdF9jb21taXQgb25lICYmCisJZ2l0IGJyYW5jaCBmaXJzdCAmJgorCXRlc3RfY29tbWl0IHR3byAmJgorCWdpdCBzd2l0Y2ggZmlyc3QgJiYKKwl0ZXN0X2NvbW1pdCB0aHJlZSAmJgorCWdpdCBicmFuY2ggc2Vjb25kICYmCisJdGVzdF9jb21taXQgZm91ciAmJgorCWdpdCBzd2l0Y2ggc2Vjb25kICYmCisJdGVzdF9jb21taXQgZml2ZSAmJgorCXRlc3RfY29tbWl0IHNpeAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLS1yZWJhc2UtbWVyZ2VzIHVwZGF0ZSBlbmNvZGluZyBldWNKUCB0byBVVEYtOCcgJworCWdpdCBzd2l0Y2ggLWMgbWVyZ2UtZXVjSlAtVVRGLTggZmlyc3QgJiYKKwlnaXQgY29uZmlnIGkxOG4uY29tbWl0ZW5jb2RpbmcgZXVjSlAgJiYKKwlnaXQgbWVyZ2UgLUYgIiRURVNUX0RJUkVDVE9SWS90MzQzNC9ldWNKUC50eHQiIHNlY29uZCAmJgorCWdpdCBjb25maWcgaTE4bi5jb21taXRlbmNvZGluZyBVVEYtOCAmJgorCWdpdCByZWJhc2UgLS1yZWJhc2UtbWVyZ2VzIG1hc3RlciAmJgorCWNvbXBhcmVfbXNnIGV1Y0pQLnR4dCBldWNKUCBVVEYtOAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLS1yZWJhc2UtbWVyZ2VzIHVwZGF0ZSBlbmNvZGluZyBldWNKUCB0byBJU08tMjAyMi1KUCcgJworCWdpdCBzd2l0Y2ggLWMgbWVyZ2UtZXVjSlAtSVNPLTIwMjItSlAgZmlyc3QgJiYKKwlnaXQgY29uZmlnIGkxOG4uY29tbWl0ZW5jb2RpbmcgZXVjSlAgJiYKKwlnaXQgbWVyZ2UgLUYgIiRURVNUX0RJUkVDVE9SWS90MzQzNC9ldWNKUC50eHQiIHNlY29uZCAmJgorCWdpdCBjb25maWcgaTE4bi5jb21taXRlbmNvZGluZyBJU08tMjAyMi1KUCAmJgorCWdpdCByZWJhc2UgLS1yZWJhc2UtbWVyZ2VzIG1hc3RlciAmJgorCWNvbXBhcmVfbXNnIGV1Y0pQLnR4dCBldWNKUCBJU08tMjAyMi1KUAorJworCit0ZXN0X3JlYmFzZV9jb250aW51ZV91cGRhdGVfZW5jb2RlICgpIHsKKwlvbGQ9JDEKKwluZXc9JDIKKwltc2dmaWxlPSQzCisJdGVzdF9leHBlY3Rfc3VjY2VzcyAicmViYXNlIC0tY29udGludWUgdXBkYXRlIGZyb20gJG9sZCB0byAkbmV3IiAnCisJCShnaXQgcmViYXNlIC0tYWJvcnQgfHwgOiBhYm9ydCBjdXJyZW50IGdpdC1yZWJhc2UgZmFpbHVyZSkgJiYKKwkJZ2l0IHN3aXRjaCAtYyBjb25mbGljdC0kb2xkLSRuZXcgb25lICYmCisJCWVjaG8gZm9yLWNvbmZsaWN0ID50d28udCAmJgorCQlnaXQgYWRkIHR3by50ICYmCisJCWdpdCBjb25maWcgaTE4bi5jb21taXRlbmNvZGluZyAkb2xkICYmCisJCWdpdCBjb21taXQgLUYgIiRURVNUX0RJUkVDVE9SWS90MzQzNC8kbXNnZmlsZSIgJiYKKwkJZ2l0IGNvbmZpZyBpMThuLmNvbW1pdGVuY29kaW5nICRuZXcgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtbSBtYXN0ZXIgJiYKKwkJdGVzdCAtZiAuZ2l0L3JlYmFzZS1tZXJnZS9tZXNzYWdlICYmCisJCWdpdCBzdHJpcHNwYWNlIDwuZ2l0L3JlYmFzZS1tZXJnZS9tZXNzYWdlID50d28udCAmJgorCQlnaXQgYWRkIHR3by50ICYmCisJCWdpdCByZWJhc2UgLS1jb250aW51ZSAmJgorCQljb21wYXJlX21zZyAkbXNnZmlsZSAkb2xkICRuZXcgJiYKKwkJOiBnaXQtY29tbWl0IGFzc3VtZSBpbnZhbGlkIHV0Zi04IGlzIGxhdGluMSAmJgorCQl0ZXN0X2NtcCBleHBlY3QgdHdvLnQKKwknCit9CisKK3Rlc3RfcmViYXNlX2NvbnRpbnVlX3VwZGF0ZV9lbmNvZGUgSVNPLTg4NTktMSBVVEYtOCBJU084ODU5LTEudHh0Cit0ZXN0X3JlYmFzZV9jb250aW51ZV91cGRhdGVfZW5jb2RlIGV1Y0pQIFVURi04IGV1Y0pQLnR4dAordGVzdF9yZWJhc2VfY29udGludWVfdXBkYXRlX2VuY29kZSBldWNKUCBJU08tMjAyMi1KUCBldWNKUC50eHQKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzNDM0L0lTTzg4NTktMS50eHQgYi90L3QzNDM0L0lTTzg4NTktMS50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2NiZWYwZQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDM0MzQvSVNPODg1OS0xLnR4dApAQCAtMCwwICsxLDMgQEAKK8TL0c/WCisKK8Fi52ToZmcKZGlmZiAtLWdpdCBhL3QvdDM0MzQvZXVjSlAudHh0IGIvdC90MzQzNC9ldWNKUC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTQ2ZjJhYQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDM0MzQvZXVjSlAudHh0CkBAIC0wLDAgKzEsNCBAQAorpM+k7KTSpNuk1QorCiukt6TGpKSk66TOpKyhoqSkpOukzqTHoaMKK9/Ayc2k26TspNek6qTdpOyk3qTTpLCk6qTtpNihowpkaWZmIC0tZ2l0IGEvdC90MzUwMS1yZXZlcnQtY2hlcnJ5LXBpY2suc2ggYi90L3QzNTAxLXJldmVydC1jaGVycnktcGljay5zaAppbmRleCBkMWM2OGFmLi43YzFkYTIxIDEwMDc1NQotLS0gYS90L3QzNTAxLXJldmVydC1jaGVycnktcGljay5zaAorKysgYi90L3QzNTAxLXJldmVydC1jaGVycnktcGljay5zaApAQCAtMTA2LDcgKzEwNiw3IEBACiAJcm0gLXJmICogJiYKIAlnaXQgY2hlcnJ5LXBpY2sgaW5pdGlhbCAmJgogCWdpdCBkaWZmIC0tcXVpZXQgaW5pdGlhbCAmJgotCSEgdGVzdF9jbXBfcmV2IGluaXRpYWwgSEVBRAorCXRlc3RfY21wX3JldiAhIGluaXRpYWwgSEVBRAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVycnktcGljayAiLSIgdG8gcGljayBmcm9tIHByZXZpb3VzIGJyYW5jaCcgJwpAQCAtMTUwLDcgKzE1MCw3IEBACiAJdGVzdF90aWNrICYmCiAJZ2l0IGNvbW1pdCAtbSByZW5hbWVkICYmCiAJZWNobyBtb2RpZmllZCA+cmVuYW1lZCAmJgotCWdpdCBjaGVycnktcGljayByZWZzL2hlYWRzL3VucmVsYXRlZCA+b3V0ICYmCisJZ2l0IGNoZXJyeS1waWNrIHJlZnMvaGVhZHMvdW5yZWxhdGVkICYmCiAJdGVzdCAkKGdpdCByZXYtcGFyc2UgOjA6cmVuYW1lZCkgPSAkKGdpdCByZXYtcGFyc2UgSEVBRH4yOnRvLXJlbmFtZS50KSAmJgogCWdyZXAgLXEgIl5tb2RpZmllZCQiIHJlbmFtZWQKICcKZGlmZiAtLWdpdCBhL3QvdDM1MDItY2hlcnJ5LXBpY2stbWVyZ2Uuc2ggYi90L3QzNTAyLWNoZXJyeS1waWNrLW1lcmdlLnNoCmluZGV4IGIxNjAyNzEuLjhiNjM1YTEgMTAwNzU1Ci0tLSBhL3QvdDM1MDItY2hlcnJ5LXBpY2stbWVyZ2Uuc2gKKysrIGIvdC90MzUwMi1jaGVycnktcGljay1tZXJnZS5zaApAQCAtNDAsMTIgKzQwLDEyIEBACiAJdGVzdF9leHBlY3RfY29kZSAxMjkgZ2l0IGNoZXJyeS1waWNrIC1tIDAgYgogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVycnktcGljayBhIG5vbi1tZXJnZSB3aXRoIC1tIHNob3VsZCBmYWlsJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVycnktcGljayBleHBsaWNpdCBmaXJzdCBwYXJlbnQgb2YgYSBub24tbWVyZ2UnICcKIAogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlnaXQgY2hlY2tvdXQgYV4wICYmCi0JdGVzdF9leHBlY3RfY29kZSAxMjggZ2l0IGNoZXJyeS1waWNrIC1tIDEgYiAmJgotCWdpdCBkaWZmIC0tZXhpdC1jb2RlIGEgLS0KKwlnaXQgY2hlcnJ5LXBpY2sgLW0gMSBiICYmCisJZ2l0IGRpZmYgLS1leGl0LWNvZGUgYyAtLQogCiAnCiAKQEAgLTg0LDEyICs4NCwxMiBAQAogCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JldmVydCBhIG5vbi1tZXJnZSB3aXRoIC1tIHNob3VsZCBmYWlsJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXZlcnQgZXhwbGljaXQgZmlyc3QgcGFyZW50IG9mIGEgbm9uLW1lcmdlJyAnCiAKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZ2l0IGNoZWNrb3V0IGNeMCAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCByZXZlcnQgLW0gMSBiICYmCi0JZ2l0IGRpZmYgLS1leGl0LWNvZGUgYworCWdpdCByZXZlcnQgLW0gMSBiICYmCisJZ2l0IGRpZmYgLS1leGl0LWNvZGUgYSAtLQogCiAnCiAKZGlmZiAtLWdpdCBhL3QvdDM1MDQtY2hlcnJ5LXBpY2stcmVyZXJlLnNoIGIvdC90MzUwNC1jaGVycnktcGljay1yZXJlcmUuc2gKaW5kZXggYTI2N2IyZC4uODBhMGQwOCAxMDA3NTUKLS0tIGEvdC90MzUwNC1jaGVycnktcGljay1yZXJlcmUuc2gKKysrIGIvdC90MzUwNC1jaGVycnktcGljay1yZXJlcmUuc2gKQEAgLTk0LDggKzk0LDEwIEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZXJyeS1waWNrIGNvbmZsaWN0IHdpdGhvdXQgcmVyZXJlJyAnCiAJdGVzdF9jb25maWcgcmVyZXJlLmVuYWJsZWQgZmFsc2UgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgY2hlcnJ5LXBpY2sgbWFzdGVyICYmCi0JdGVzdF9tdXN0X2ZhaWwgdGVzdF9jbXAgZXhwZWN0IGZvbworCXRlc3RfbXVzdF9mYWlsIGdpdCBjaGVycnktcGljayBmb28tbWFzdGVyICYmCisJZ3JlcCA9PT09PSBmb28gJiYKKwlncmVwIGZvby1kZXYgZm9vICYmCisJZ3JlcCBmb28tbWFzdGVyIGZvbwogJwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDM1MDYtY2hlcnJ5LXBpY2stZmYuc2ggYi90L3QzNTA2LWNoZXJyeS1waWNrLWZmLnNoCmluZGV4IGZiODg5YWMuLjlkNWFkYmMgMTAwNzU1Ci0tLSBhL3QvdDM1MDYtY2hlcnJ5LXBpY2stZmYuc2gKKysrIGIvdC90MzUwNi1jaGVycnktcGljay1mZi5zaApAQCAtMTYsNyArMTYsMTEgQEAKIAlnaXQgYWRkIGZpbGUxICYmCiAJdGVzdF90aWNrICYmCiAJZ2l0IGNvbW1pdCAtbSAic2Vjb25kIiAmJgotCWdpdCB0YWcgc2Vjb25kCisJZ2l0IHRhZyBzZWNvbmQgJiYKKwl0ZXN0X29pZF9jYWNoZSA8PC1FT0YKKwljcF9mZiBzaGExOjFkZjE5MmNkOGJjNThhMmIyNzVkODQyY2VkZTRkMjIxYWQ5MDAwZDEKKwljcF9mZiBzaGEyNTY6ZTcwZDZiN2ZjMDY0YmRkYjUxNmI4ZDUxMmM5MDU3MDk0Yjk2Y2U2ZmYwOGUxMjA4MGFjYzRmZTdmMWQ2MGExZAorCUVPRgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVycnktcGljayB1c2luZyAtLWZmIGZhc3QgZm9yd2FyZHMnICcKQEAgLTY0LDEwICs2OCwxMCBAQAogCWdpdCBjaGVja291dCAtYiBuZXcgQQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVycnktcGljayBhIG5vbi1tZXJnZSB3aXRoIC0tZmYgYW5kIC1tIHNob3VsZCBmYWlsJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVycnktcGljayBleHBsaWNpdCBmaXJzdCBwYXJlbnQgb2YgYSBub24tbWVyZ2Ugd2l0aCAtLWZmJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCBBIC0tICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIC0tZmYgLW0gMSBCICYmCi0JZ2l0IGRpZmYgLS1leGl0LWNvZGUgQSAtLQorCWdpdCBjaGVycnktcGljayAtLWZmIC1tIDEgQiAmJgorCWdpdCBkaWZmIC0tZXhpdC1jb2RlIEMgLS0KICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlcnJ5IHBpY2sgYSBtZXJnZSB3aXRoIC0tZmYgYnV0IHdpdGhvdXQgLW0gc2hvdWxkIGZhaWwnICcKQEAgLTEwMiw3ICsxMDYsNyBAQAogCWdpdCBhZGQgZmlsZTIgJiYKIAlnaXQgY29tbWl0IC0tYW1lbmQgLW0gImZpbGUyIiAmJgogCWdpdCBjaGVycnktcGljayAtLWZmIGZpcnN0ICYmCi0JdGVzdCAiJChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IEhFQUQpIiA9ICIxZGYxOTJjZDhiYzU4YTJiMjc1ZDg0MmNlZGU0ZDIyMWFkOTAwMGQxIgorCXRlc3QgIiQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBIRUFEKSIgPSAiJCh0ZXN0X29pZCBjcF9mZikiCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZXJyeS1waWNrIC0tZmYgb24gdW5ib3JuIGJyYW5jaCcgJwpkaWZmIC0tZ2l0IGEvdC90MzUwNy1jaGVycnktcGljay1jb25mbGljdC5zaCBiL3QvdDM1MDctY2hlcnJ5LXBpY2stY29uZmxpY3Quc2gKaW5kZXggMGRiMTY2MS4uNzUyYmM0MyAxMDA3NTUKLS0tIGEvdC90MzUwNy1jaGVycnktcGljay1jb25mbGljdC5zaAorKysgYi90L3QzNTA3LWNoZXJyeS1waWNrLWNvbmZsaWN0LnNoCkBAIC0yNSw2ICsyNSwxMSBAQAogCXRlc3RfY29tbWl0IGJhc2UgZm9vIGIgJiYKIAl0ZXN0X2NvbW1pdCBwaWNrZWQgZm9vIGMgJiYKIAl0ZXN0X2NvbW1pdCAtLXNpZ25vZmYgcGlja2VkLXNpZ25lZCBmb28gZCAmJgorCWdpdCBjaGVja291dCAtYiB0b3BpYyBpbml0aWFsICYmCisJdGVzdF9jb21taXQgcmVkdW5kYW50LXBpY2sgZm9vIGMgcmVkdW5kYW50ICYmCisJZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5IC0tYWxsb3ctZW1wdHktbWVzc2FnZSAmJgorCWdpdCB0YWcgZW1wdHkgJiYKKwlnaXQgY2hlY2tvdXQgbWFzdGVyICYmCiAJZ2l0IGNvbmZpZyBhZHZpY2UuZGV0YWNoZWRoZWFkIGZhbHNlCiAKICcKQEAgLTg4LDcgKzkzLDcgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlcnJ5LXBpY2sgdy9kaXJ0eSB0cmVlIGRvZXMgbm90IHNldCBDSEVSUllfUElDS19IRUFEJyAnCiAJcHJpc3RpbmVfZGV0YWNoIGluaXRpYWwgJiYKLQllY2hvIGZvbyA+IGZvbyAmJgorCWVjaG8gZm9vID5mb28gJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgY2hlcnJ5LXBpY2sgYmFzZSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgQ0hFUlJZX1BJQ0tfSEVBRAogJwpAQCAtOTYsNyArMTAxLDcgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAogCSdjaGVycnktcGljayAtLXN0cmF0ZWd5PXJlc29sdmUgdy9kaXJ0eSB0cmVlIGRvZXMgbm90IHNldCBDSEVSUllfUElDS19IRUFEJyAnCiAJcHJpc3RpbmVfZGV0YWNoIGluaXRpYWwgJiYKLQllY2hvIGZvbyA+IGZvbyAmJgorCWVjaG8gZm9vID5mb28gJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgY2hlcnJ5LXBpY2sgLS1zdHJhdGVneT1yZXNvbHZlIGJhc2UgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IENIRVJSWV9QSUNLX0hFQUQKICcKQEAgLTE1Nyw2ICsxNjIsNDggQEAKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IENIRVJSWV9QSUNLX0hFQUQKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncGFydGlhbCBjb21taXQgb2YgY2hlcnJ5LXBpY2sgZmFpbHMnICcKKwlwcmlzdGluZV9kZXRhY2ggaW5pdGlhbCAmJgorCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIHBpY2tlZCAmJgorCWVjaG8gcmVzb2x2ZWQgPmZvbyAmJgorCWdpdCBhZGQgZm9vICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbW1pdCBmb28gMj5lcnIgJiYKKworCXRlc3RfaTE4bmdyZXAgImNhbm5vdCBkbyBhIHBhcnRpYWwgY29tbWl0IGR1cmluZyBhIGNoZXJyeS1waWNrLiIgZXJyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbW1pdCAtLWFtZW5kIG9mIGNoZXJyeS1waWNrIGZhaWxzJyAnCisJcHJpc3RpbmVfZGV0YWNoIGluaXRpYWwgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBjaGVycnktcGljayBwaWNrZWQgJiYKKwllY2hvIHJlc29sdmVkID5mb28gJiYKKwlnaXQgYWRkIGZvbyAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBjb21taXQgLS1hbWVuZCAyPmVyciAmJgorCisJdGVzdF9pMThuZ3JlcCAiaW4gdGhlIG1pZGRsZSBvZiBhIGNoZXJyeS1waWNrIC0tIGNhbm5vdCBhbWVuZC4iIGVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWNjZXNzZnVsIGZpbmFsIGNvbW1pdCBjbGVhcnMgY2hlcnJ5LXBpY2sgc3RhdGUnICcKKwlwcmlzdGluZV9kZXRhY2ggaW5pdGlhbCAmJgorCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIGJhc2UgcGlja2VkLXNpZ25lZCAmJgorCWVjaG8gcmVzb2x2ZWQgPmZvbyAmJgorCXRlc3RfcGF0aF9pc19maWxlIC5naXQvc2VxdWVuY2VyL3RvZG8gJiYKKwlnaXQgY29tbWl0IC1hICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9zZXF1ZW5jZXIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVzZXQgYWZ0ZXIgZmluYWwgcGljayBjbGVhcnMgY2hlcnJ5LXBpY2sgc3RhdGUnICcKKwlwcmlzdGluZV9kZXRhY2ggaW5pdGlhbCAmJgorCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIGJhc2UgcGlja2VkLXNpZ25lZCAmJgorCWVjaG8gcmVzb2x2ZWQgPmZvbyAmJgorCXRlc3RfcGF0aF9pc19maWxlIC5naXQvc2VxdWVuY2VyL3RvZG8gJiYKKwlnaXQgcmVzZXQgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyAuZ2l0L3NlcXVlbmNlcgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmYWlsZWQgY2hlcnJ5LXBpY2sgcHJvZHVjZXMgZGlydHkgaW5kZXgnICcKIAlwcmlzdGluZV9kZXRhY2ggaW5pdGlhbCAmJgogCkBAIC0xNzUsMjMgKzIyMiw2MyBAQAogCQlnaXQgbHMtZmlsZXMgLS1zdGFnZSBmb28gJiYKIAkJZ2l0IGNoZWNrb3V0IHBpY2tlZCAtLSBmb28gJiYKIAkJZ2l0IGxzLWZpbGVzIC0tc3RhZ2UgZm9vCi0JfSA+IHN0YWdlcyAmJgorCX0gPnN0YWdlcyAmJgogCXNlZCAiCiAJCTEgcy8gMAkvIDEJLwogCQkyIHMvIDAJLyAyCS8KIAkJMyBzLyAwCS8gMwkvCi0JIiA8IHN0YWdlcyA+IGV4cGVjdGVkICYmCisJIiBzdGFnZXMgPmV4cGVjdGVkICYmCiAJZ2l0IHJlYWQtdHJlZSAtdSAtLXJlc2V0IEhFQUQgJiYKIAogCXRlc3RfbXVzdF9mYWlsIGdpdCBjaGVycnktcGljayBwaWNrZWQgJiYKLQlnaXQgbHMtZmlsZXMgLS1zdGFnZSAtLXVubWVyZ2VkID4gYWN0dWFsICYmCisJZ2l0IGxzLWZpbGVzIC0tc3RhZ2UgLS11bm1lcmdlZCA+YWN0dWFsICYmCiAKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyBcCisJJ2NoZXJyeS1waWNrIGNvbmZsaWN0LCBlbnN1cmUgY29tbWl0LmNsZWFudXAgPSBzY2lzc29ycyBwbGFjZXMgc2Npc3NvcnMgbGluZSBwcm9wZXJseScgJworCXByaXN0aW5lX2RldGFjaCBpbml0aWFsICYmCisJZ2l0IGNvbmZpZyBjb21taXQuY2xlYW51cCBzY2lzc29ycyAmJgorCWNhdCA8PC1FT0YgPmV4cGVjdGVkICYmCisJCXBpY2tlZAorCisJCSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tID44IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCQkjIERvIG5vdCBtb2RpZnkgb3IgcmVtb3ZlIHRoZSBsaW5lIGFib3ZlLgorCQkjIEV2ZXJ5dGhpbmcgYmVsb3cgaXQgd2lsbCBiZSBpZ25vcmVkLgorCQkjCisJCSMgQ29uZmxpY3RzOgorCQkjCWZvbworCQlFT0YKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBjaGVycnktcGljayBwaWNrZWQgJiYKKworCXRlc3RfaTE4bmNtcCBleHBlY3RlZCAuZ2l0L01FUkdFX01TRworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIFwKKwknY2hlcnJ5LXBpY2sgY29uZmxpY3QsIGVuc3VyZSBjbGVhbnVwPXNjaXNzb3JzIHBsYWNlcyBzY2lzc29ycyBsaW5lIHByb3Blcmx5JyAnCisJcHJpc3RpbmVfZGV0YWNoIGluaXRpYWwgJiYKKwlnaXQgY29uZmlnIC0tdW5zZXQgY29tbWl0LmNsZWFudXAgJiYKKwljYXQgPDwtRU9GID5leHBlY3RlZCAmJgorCQlwaWNrZWQKKworCQkjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSA+OCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwkJIyBEbyBub3QgbW9kaWZ5IG9yIHJlbW92ZSB0aGUgbGluZSBhYm92ZS4KKwkJIyBFdmVyeXRoaW5nIGJlbG93IGl0IHdpbGwgYmUgaWdub3JlZC4KKwkJIworCQkjIENvbmZsaWN0czoKKwkJIwlmb28KKwkJRU9GCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgY2hlcnJ5LXBpY2sgLS1jbGVhbnVwPXNjaXNzb3JzIHBpY2tlZCAmJgorCisJdGVzdF9pMThuY21wIGV4cGVjdGVkIC5naXQvTUVSR0VfTVNHCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZhaWxlZCBjaGVycnktcGljayBkZXNjcmliZXMgY29uZmxpY3QgaW4gd29yayB0cmVlJyAnCiAJcHJpc3RpbmVfZGV0YWNoIGluaXRpYWwgJiYKLQljYXQgPDwtRU9GID4gZXhwZWN0ZWQgJiYKKwljYXQgPDwtRU9GID5leHBlY3RlZCAmJgogCTw8PDw8PDwgSEVBRAogCWEKIAk9PT09PT09CkBAIC0yMDEsMTQgKzI4OCwxNCBAQAogCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIHBpY2tlZCAmJgogCi0Jc2VkICJzL1thLWYwLTldKlwuXC5cLi9vYmppZC8iIGZvbyA+IGFjdHVhbCAmJgorCXNlZCAicy9bYS1mMC05XSpcLlwuXC4vb2JqaWQvIiBmb28gPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaWZmMyAtbSBzdHlsZScgJwogCXByaXN0aW5lX2RldGFjaCBpbml0aWFsICYmCiAJZ2l0IGNvbmZpZyBtZXJnZS5jb25mbGljdHN0eWxlIGRpZmYzICYmCi0JY2F0IDw8LUVPRiA+IGV4cGVjdGVkICYmCisJY2F0IDw8LUVPRiA+ZXhwZWN0ZWQgJiYKIAk8PDw8PDw8IEhFQUQKIAlhCiAJfHx8fHx8fCBwYXJlbnQgb2Ygb2JqaWQgcGlja2VkCkBAIC0yMjAsMTQgKzMwNywxNCBAQAogCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIHBpY2tlZCAmJgogCi0Jc2VkICJzL1thLWYwLTldKlwuXC5cLi9vYmppZC8iIGZvbyA+IGFjdHVhbCAmJgorCXNlZCAicy9bYS1mMC05XSpcLlwuXC4vb2JqaWQvIiBmb28gPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXZlcnQgYWxzbyBoYW5kbGVzIGNvbmZsaWN0cyBzYW5lbHknICcKIAlnaXQgY29uZmlnIC0tdW5zZXQgbWVyZ2UuY29uZmxpY3RzdHlsZSAmJgogCXByaXN0aW5lX2RldGFjaCBpbml0aWFsICYmCi0JY2F0IDw8LUVPRiA+IGV4cGVjdGVkICYmCisJY2F0IDw8LUVPRiA+ZXhwZWN0ZWQgJiYKIAk8PDw8PDw8IEhFQUQKIAlhCiAJPT09PT09PQpAQCAtMjQxLDI0ICszMjgsMjQgQEAKIAkJZ2l0IGxzLWZpbGVzIC0tc3RhZ2UgZm9vICYmCiAJCWdpdCBjaGVja291dCBiYXNlIC0tIGZvbyAmJgogCQlnaXQgbHMtZmlsZXMgLS1zdGFnZSBmb28KLQl9ID4gc3RhZ2VzICYmCisJfSA+c3RhZ2VzICYmCiAJc2VkICIKIAkJMSBzLyAwCS8gMQkvCiAJCTIgcy8gMAkvIDIJLwogCQkzIHMvIDAJLyAzCS8KLQkiIDwgc3RhZ2VzID4gZXhwZWN0ZWQtc3RhZ2VzICYmCisJIiBzdGFnZXMgPmV4cGVjdGVkLXN0YWdlcyAmJgogCWdpdCByZWFkLXRyZWUgLXUgLS1yZXNldCBIRUFEICYmCiAKIAloZWFkPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCByZXZlcnQgcGlja2VkICYmCiAJbmV3aGVhZD0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKLQlnaXQgbHMtZmlsZXMgLS1zdGFnZSAtLXVubWVyZ2VkID4gYWN0dWFsLXN0YWdlcyAmJgorCWdpdCBscy1maWxlcyAtLXN0YWdlIC0tdW5tZXJnZWQgPmFjdHVhbC1zdGFnZXMgJiYKIAogCXRlc3QgIiRoZWFkIiA9ICIkbmV3aGVhZCIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBkYXRlLWluZGV4IC0tcmVmcmVzaCAtcSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmLWluZGV4IC0tZXhpdC1jb2RlIEhFQUQgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZC1zdGFnZXMgYWN0dWFsLXN0YWdlcyAmJgotCXNlZCAicy9bYS1mMC05XSpcLlwuXC4vb2JqaWQvIiBmb28gPiBhY3R1YWwgJiYKKwlzZWQgInMvW2EtZjAtOV0qXC5cLlwuL29iamlkLyIgZm9vID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIApAQCAtMjg0LDcgKzM3MSw3IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JldmVydCB3L2RpcnR5IHRyZWUgZG9lcyBub3Qgc2V0IFJFVkVSVF9IRUFEJyAnCiAJcHJpc3RpbmVfZGV0YWNoIGJhc2UgJiYKLQllY2hvIGZvbyA+IGZvbyAmJgorCWVjaG8gZm9vID5mb28gJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmV2ZXJ0IGJhc2UgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IENIRVJSWV9QSUNLX0hFQUQgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IFJFVkVSVF9IRUFECkBAIC0zMTYsMTAgKzQwMywzMCBAQAogCXRlc3RfY21wX3JldiBwaWNrZWQgUkVWRVJUX0hFQUQKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3VjY2Vzc2Z1bCBmaW5hbCBjb21taXQgY2xlYXJzIHJldmVydCBzdGF0ZScgJworCXByaXN0aW5lX2RldGFjaCBwaWNrZWQtc2lnbmVkICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmV2ZXJ0IHBpY2tlZC1zaWduZWQgYmFzZSAmJgorCWVjaG8gcmVzb2x2ZWQgPmZvbyAmJgorCXRlc3RfcGF0aF9pc19maWxlIC5naXQvc2VxdWVuY2VyL3RvZG8gJiYKKwlnaXQgY29tbWl0IC1hICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9zZXF1ZW5jZXIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVzZXQgYWZ0ZXIgZmluYWwgcGljayBjbGVhcnMgcmV2ZXJ0IHN0YXRlJyAnCisJcHJpc3RpbmVfZGV0YWNoIHBpY2tlZC1zaWduZWQgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCByZXZlcnQgcGlja2VkLXNpZ25lZCBiYXNlICYmCisJZWNobyByZXNvbHZlZCA+Zm9vICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgLmdpdC9zZXF1ZW5jZXIvdG9kbyAmJgorCWdpdCByZXNldCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIC5naXQvc2VxdWVuY2VyCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JldmVydCBjb25mbGljdCwgZGlmZjMgLW0gc3R5bGUnICcKIAlwcmlzdGluZV9kZXRhY2ggaW5pdGlhbCAmJgogCWdpdCBjb25maWcgbWVyZ2UuY29uZmxpY3RzdHlsZSBkaWZmMyAmJgotCWNhdCA8PC1FT0YgPiBleHBlY3RlZCAmJgorCWNhdCA8PC1FT0YgPmV4cGVjdGVkICYmCiAJPDw8PDw8PCBIRUFECiAJYQogCXx8fHx8fHwgb2JqaWQgcGlja2VkCkBAIC0zMzEsMTAgKzQzOCw1NiBAQAogCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldmVydCBwaWNrZWQgJiYKIAotCXNlZCAicy9bYS1mMC05XSpcLlwuXC4vb2JqaWQvIiBmb28gPiBhY3R1YWwgJiYKKwlzZWQgInMvW2EtZjAtOV0qXC5cLlwuL29iamlkLyIgZm9vID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyBcCisJJ3JldmVydCBjb25mbGljdCwgZW5zdXJlIGNvbW1pdC5jbGVhbnVwID0gc2Npc3NvcnMgcGxhY2VzIHNjaXNzb3JzIGxpbmUgcHJvcGVybHknICcKKwlwcmlzdGluZV9kZXRhY2ggaW5pdGlhbCAmJgorCWdpdCBjb25maWcgY29tbWl0LmNsZWFudXAgc2Npc3NvcnMgJiYKKwljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgorCQlSZXZlcnQgInBpY2tlZCIKKworCQlUaGlzIHJldmVydHMgY29tbWl0IE9CSklELgorCisJCSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tID44IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCQkjIERvIG5vdCBtb2RpZnkgb3IgcmVtb3ZlIHRoZSBsaW5lIGFib3ZlLgorCQkjIEV2ZXJ5dGhpbmcgYmVsb3cgaXQgd2lsbCBiZSBpZ25vcmVkLgorCQkjCisJCSMgQ29uZmxpY3RzOgorCQkjCWZvbworCQlFT0YKKworCXRlc3RfbXVzdF9mYWlsIGdpdCByZXZlcnQgcGlja2VkICYmCisKKwlzZWQgInMvJE9JRF9SRUdFWC9PQkpJRC8iIC5naXQvTUVSR0VfTVNHID5hY3R1YWwgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0ZWQgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgXAorCSdyZXZlcnQgY29uZmxpY3QsIGVuc3VyZSBjbGVhbnVwPXNjaXNzb3JzIHBsYWNlcyBzY2lzc29ycyBsaW5lIHByb3Blcmx5JyAnCisJcHJpc3RpbmVfZGV0YWNoIGluaXRpYWwgJiYKKwlnaXQgY29uZmlnIC0tdW5zZXQgY29tbWl0LmNsZWFudXAgJiYKKwljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgorCQlSZXZlcnQgInBpY2tlZCIKKworCQlUaGlzIHJldmVydHMgY29tbWl0IE9CSklELgorCisJCSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tID44IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCQkjIERvIG5vdCBtb2RpZnkgb3IgcmVtb3ZlIHRoZSBsaW5lIGFib3ZlLgorCQkjIEV2ZXJ5dGhpbmcgYmVsb3cgaXQgd2lsbCBiZSBpZ25vcmVkLgorCQkjCisJCSMgQ29uZmxpY3RzOgorCQkjCWZvbworCQlFT0YKKworCXRlc3RfbXVzdF9mYWlsIGdpdCByZXZlcnQgLS1jbGVhbnVwPXNjaXNzb3JzIHBpY2tlZCAmJgorCisJc2VkICJzLyRPSURfUkVHRVgvT0JKSUQvIiAuZ2l0L01FUkdFX01TRyA+YWN0dWFsICYmCisJdGVzdF9pMThuY21wIGV4cGVjdGVkIGFjdHVhbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmYWlsZWQgY2hlcnJ5LXBpY2sgZG9lcyBub3QgZm9yZ2V0IC1zJyAnCiAJcHJpc3RpbmVfZGV0YWNoIGluaXRpYWwgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgY2hlcnJ5LXBpY2sgLXMgcGlja2VkICYmCkBAIC0zNDUsNyArNDk4LDcgQEAKIAlwcmlzdGluZV9kZXRhY2ggaW5pdGlhbCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBjaGVycnktcGljayAtcyBwaWNrZWQtc2lnbmVkICYmCiAJZ2l0IGNvbW1pdCAtYSAtcyAmJgotCXRlc3QgJChnaXQgc2hvdyAtcyB8Z3JlcCAtYyAiU2lnbmVkLW9mZi1ieSIpID0gMQorCXRlc3QgJChnaXQgc2hvdyAtcyA+dG1wICYmIGdyZXAgLWMgIlNpZ25lZC1vZmYtYnkiIHRtcCAmJiBybSB0bXApID0gMQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb21taXQgYWZ0ZXIgZmFpbGVkIGNoZXJyeS1waWNrIGFkZHMgLXMgYXQgdGhlIHJpZ2h0IHBsYWNlJyAnCkBAIC0zNTksNyArNTEyLDcgQEAKIAlTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+CiAJIyBDb25mbGljdHM6CiAJRU9GCi0JZ3JlcCAtZSAiXiMgQ29uZmxpY3RzOiIgLWUgJ15TaWduZWQtb2ZmLWJ5JyA8LmdpdC9DT01NSVRfRURJVE1TRyA+YWN0dWFsICYmCisJZ3JlcCAtZSAiXiMgQ29uZmxpY3RzOiIgLWUgJ15TaWduZWQtb2ZmLWJ5JyAuZ2l0L0NPTU1JVF9FRElUTVNHID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAKIAljYXQgPDwtXEVPRiA+ZXhwZWN0ZWQgJiYKQEAgLTM3OCw3ICs1MzEsNyBAQAogCiAJIyBlbXVsYXRlIG9sZC1zdHlsZSBjb25mbGljdHMgYmxvY2sKIAltdiAuZ2l0L01FUkdFX01TRyAuZ2l0L01FUkdFX01TRysgJiYKLQlzZWQgLWUgIi9eIyBDb25mbGljdHM6LyxcJHMvXiMgKi8vIiA8LmdpdC9NRVJHRV9NU0crID4uZ2l0L01FUkdFX01TRyAmJgorCXNlZCAtZSAiL14jIENvbmZsaWN0czovLFwkcy9eIyAqLy8iIC5naXQvTUVSR0VfTVNHKyA+LmdpdC9NRVJHRV9NU0cgJiYKIAogCWdpdCBjb21taXQgLWEgJiYKIAlnaXQgY29tbWl0IC0tYW1lbmQgLXMgJiYKQEAgLTM4OCw3ICs1NDEsNyBAQAogCVNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KIAlDb25mbGljdHM6CiAJRU9GCi0JZ3JlcCAtZSAiXkNvbmZsaWN0czoiIC1lICdeU2lnbmVkLW9mZi1ieScgPC5naXQvQ09NTUlUX0VESVRNU0cgPmFjdHVhbCAmJgorCWdyZXAgLWUgIl5Db25mbGljdHM6IiAtZSAnXlNpZ25lZC1vZmYtYnknIC5naXQvQ09NTUlUX0VESVRNU0cgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIApAQCAtNDA1LDQgKzU1OCwyMyBAQAogCXRlc3RfaTE4bmdyZXAgISAiQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6IiBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlcnJ5LXBpY2sgLS1jb250aW51ZSByZW1lbWJlcnMgLS1rZWVwLXJlZHVuZGFudC1jb21taXRzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY2hlcnJ5LXBpY2sgLS1hYm9ydCB8fCA6IiAmJgorCXByaXN0aW5lX2RldGFjaCBpbml0aWFsICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIC0ta2VlcC1yZWR1bmRhbnQtY29tbWl0cyBwaWNrZWQgcmVkdW5kYW50ICYmCisJZWNobyBjID5mb28gJiYKKwlnaXQgYWRkIGZvbyAmJgorCWdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZXJyeS1waWNrIC0tY29udGludWUgcmVtZW1iZXJzIC0tYWxsb3ctZW1wdHkgYW5kIC0tYWxsb3ctZW1wdHktbWVzc2FnZScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnQgfHwgOiIgJiYKKwlwcmlzdGluZV9kZXRhY2ggaW5pdGlhbCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBjaGVycnktcGljayAtLWFsbG93LWVtcHR5IC0tYWxsb3ctZW1wdHktbWVzc2FnZSBcCisJCQkJICAgICAgIHBpY2tlZCBlbXB0eSAmJgorCWVjaG8gYyA+Zm9vICYmCisJZ2l0IGFkZCBmb28gJiYKKwlnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDM1MDgtY2hlcnJ5LXBpY2stbWFueS1jb21taXRzLnNoIGIvdC90MzUwOC1jaGVycnktcGljay1tYW55LWNvbW1pdHMuc2gKaW5kZXggYjQ1NzMzMy4uMjMwNzBhNyAxMDA3NTUKLS0tIGEvdC90MzUwOC1jaGVycnktcGljay1tYW55LWNvbW1pdHMuc2gKKysrIGIvdC90MzUwOC1jaGVycnktcGljay1tYW55LWNvbW1pdHMuc2gKQEAgLTUsNyArNSw3IEBACiAuIC4vdGVzdC1saWIuc2gKIAogY2hlY2tfaGVhZF9kaWZmZXJzX2Zyb20oKSB7Ci0JISB0ZXN0X2NtcF9yZXYgSEVBRCAiJDEiCisJdGVzdF9jbXBfcmV2ICEgSEVBRCAiJDEiCiB9CiAKIGNoZWNrX2hlYWRfZXF1YWxzKCkgewpkaWZmIC0tZ2l0IGEvdC90MzUxMC1jaGVycnktcGljay1zZXF1ZW5jZS5zaCBiL3QvdDM1MTAtY2hlcnJ5LXBpY2stc2VxdWVuY2Uuc2gKaW5kZXggYzg0ZWVlZi4uNWI5NGZkYSAxMDA3NTUKLS0tIGEvdC90MzUxMC1jaGVycnktcGljay1zZXF1ZW5jZS5zaAorKysgYi90L3QzNTEwLWNoZXJyeS1waWNrLXNlcXVlbmNlLnNoCkBAIC02MSw3ICs2MSwxMSBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVycnktcGljayBwZXJzaXN0cyBvcHRzIGNvcnJlY3RseScgJwogCXByaXN0aW5lX2RldGFjaCBpbml0aWFsICYmCi0JdGVzdF9leHBlY3RfY29kZSAxMjggZ2l0IGNoZXJyeS1waWNrIC1zIC1tIDEgLS1zdHJhdGVneT1yZWN1cnNpdmUgLVggcGF0aWVuY2UgLVggb3VycyBpbml0aWFsLi5hbm90aGVycGljayAmJgorCSMgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIHNlc3Npb24gdG8gY2hlcnJ5LXBpY2sgYSBzZXF1ZW5jZQorCSMgZ2V0cyBpbnRlcnJ1cHRlZCwgdXNlIGEgaGlnaC1lbm91Z2ggbnVtYmVyIHRoYXQgaXMgbGFyZ2VyCisJIyB0aGFuIHRoZSBudW1iZXIgb2YgcGFyZW50cyBvZiBhbnkgY29tbWl0IHdlIGhhdmUgY3JlYXRlZAorCW1haW5saW5lPTQgJiYKKwl0ZXN0X2V4cGVjdF9jb2RlIDEyOCBnaXQgY2hlcnJ5LXBpY2sgLXMgLW0gJG1haW5saW5lIC0tc3RyYXRlZ3k9cmVjdXJzaXZlIC1YIHBhdGllbmNlIC1YIG91cnMgaW5pdGlhbC4uYW5vdGhlcnBpY2sgJiYKIAl0ZXN0X3BhdGhfaXNfZGlyIC5naXQvc2VxdWVuY2VyICYmCiAJdGVzdF9wYXRoX2lzX2ZpbGUgLmdpdC9zZXF1ZW5jZXIvaGVhZCAmJgogCXRlc3RfcGF0aF9pc19maWxlIC5naXQvc2VxdWVuY2VyL3RvZG8gJiYKQEAgLTY5LDcgKzczLDcgQEAKIAllY2hvICJ0cnVlIiA+ZXhwZWN0ICYmCiAJZ2l0IGNvbmZpZyAtLWZpbGU9LmdpdC9zZXF1ZW5jZXIvb3B0cyAtLWdldC1hbGwgb3B0aW9ucy5zaWdub2ZmID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCi0JZWNobyAiMSIgPmV4cGVjdCAmJgorCWVjaG8gIiRtYWlubGluZSIgPmV4cGVjdCAmJgogCWdpdCBjb25maWcgLS1maWxlPS5naXQvc2VxdWVuY2VyL29wdHMgLS1nZXQtYWxsIG9wdGlvbnMubWFpbmxpbmUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAllY2hvICJyZWN1cnNpdmUiID5leHBlY3QgJiYKQEAgLTg5LDYgKzkzLDEyOSBAQAogCXRlc3RfcGF0aF9pc19taXNzaW5nIC5naXQvc2VxdWVuY2VyCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZXJyeS1waWNrIC0tc2tpcCByZXF1aXJlcyBjaGVycnktcGljayBpbiBwcm9ncmVzcycgJworCXByaXN0aW5lX2RldGFjaCBpbml0aWFsICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIC0tc2tpcAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXZlcnQgLS1za2lwIHJlcXVpcmVzIHJldmVydCBpbiBwcm9ncmVzcycgJworCXByaXN0aW5lX2RldGFjaCBpbml0aWFsICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldmVydCAtLXNraXAKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlcnJ5LXBpY2sgLS1za2lwIHRvIHNraXAgY29tbWl0JyAnCisJcHJpc3RpbmVfZGV0YWNoIGluaXRpYWwgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgY2hlcnJ5LXBpY2sgYW5vdGhlcnBpY2sgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmV2ZXJ0IC0tc2tpcCAmJgorCWdpdCBjaGVycnktcGljayAtLXNraXAgJiYKKwl0ZXN0X2NtcF9yZXYgaW5pdGlhbCBIRUFEICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9DSEVSUllfUElDS19IRUFECisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JldmVydCAtLXNraXAgdG8gc2tpcCBjb21taXQnICcKKwlwcmlzdGluZV9kZXRhY2ggYW5vdGhlcnBpY2sgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmV2ZXJ0IGFub3RoZXJwaWNrfjEgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgY2hlcnJ5LXBpY2sgLS1za2lwICYmCisJZ2l0IHJldmVydCAtLXNraXAgJiYKKwl0ZXN0X2NtcF9yZXYgYW5vdGhlcnBpY2sgSEVBRAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdza2lwICJlbXB0eSIgY29tbWl0JyAnCisJcHJpc3RpbmVfZGV0YWNoIHBpY2tlZCAmJgorCXRlc3RfY29tbWl0IGR1bW15IGZvbyBkICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIGFub3RoZXJwaWNrIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAiZ2l0IGNoZXJyeS1waWNrIC0tc2tpcCIgZXJyICYmCisJZ2l0IGNoZXJyeS1waWNrIC0tc2tpcCAmJgorCXRlc3RfY21wX3JldiBkdW1teSBIRUFECisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NraXAgYSBjb21taXQgYW5kIGNoZWNrIGlmIHJlc3Qgb2Ygc2VxdWVuY2UgaXMgY29ycmVjdCcgJworCXByaXN0aW5lX2RldGFjaCBpbml0aWFsICYmCisJZWNobyBlID5leHBlY3QgJiYKKwljYXQgPmV4cGVjdC5sb2cgPDwtRU9GICYmCisJT0JKSUQKKwk6MTAwNjQ0IDEwMDY0NCBPQkpJRCBPQkpJRCBNCWZvbworCU9CSklECisJOjEwMDY0NCAxMDA2NDQgT0JKSUQgT0JKSUQgTQlmb28KKwlPQkpJRAorCToxMDA2NDQgMTAwNjQ0IE9CSklEIE9CSklEIE0JdW5yZWxhdGVkCisJT0JKSUQKKwk6MDAwMDAwIDEwMDY0NCBPQkpJRCBPQkpJRCBBCWZvbworCTowMDAwMDAgMTAwNjQ0IE9CSklEIE9CSklEIEEJdW5yZWxhdGVkCisJRU9GCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIGJhc2UuLnlldGFub3RoZXJwaWNrICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIC0tc2tpcCAmJgorCWVjaG8gZCA+Zm9vICYmCisJZ2l0IGFkZCBmb28gJiYKKwlnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZSAmJgorCXsKKwkJZ2l0IHJldi1saXN0IEhFQUQgfAorCQlnaXQgZGlmZi10cmVlIC0tcm9vdCAtLXN0ZGluIHwKKwkJc2VkICJzLyRPSURfUkVHRVgvT0JKSUQvZyIKKwl9ID5hY3R1YWwubG9nICYmCisJdGVzdF9jbXAgZXhwZWN0IGZvbyAmJgorCXRlc3RfY21wIGV4cGVjdC5sb2cgYWN0dWFsLmxvZworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjayBhZHZpY2Ugd2hlbiB3ZSBtb3ZlIEhFQUQgYnkgY29tbWl0dGluZycgJworCXByaXN0aW5lX2RldGFjaCBpbml0aWFsICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJZXJyb3I6IHRoZXJlIGlzIG5vdGhpbmcgdG8gc2tpcAorCWhpbnQ6IGhhdmUgeW91IGNvbW1pdHRlZCBhbHJlYWR5PworCWhpbnQ6IHRyeSAiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWUiCisJZmF0YWw6IGNoZXJyeS1waWNrIGZhaWxlZAorCUVPRgorCXRlc3RfbXVzdF9mYWlsIGdpdCBjaGVycnktcGljayBiYXNlLi55ZXRhbm90aGVycGljayAmJgorCWVjaG8gYyA+Zm9vICYmCisJZ2l0IGNvbW1pdCAtYSAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIC5naXQvQ0hFUlJZX1BJQ0tfSEVBRCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBjaGVycnktcGljayAtLXNraXAgMj5hZHZpY2UgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFkdmljZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZWxlY3RpdmVseSBhZHZpc2UgLS1za2lwIHdoaWxlIGxhdW5jaGluZyBhbm90aGVyIHNlcXVlbmNlJyAnCisJcHJpc3RpbmVfZGV0YWNoIGluaXRpYWwgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwllcnJvcjogY2hlcnJ5LXBpY2sgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcworCWhpbnQ6IHRyeSAiZ2l0IGNoZXJyeS1waWNrICgtLWNvbnRpbnVlIHwgLS1za2lwIHwgLS1hYm9ydCB8IC0tcXVpdCkiCisJZmF0YWw6IGNoZXJyeS1waWNrIGZhaWxlZAorCUVPRgorCXRlc3RfbXVzdF9mYWlsIGdpdCBjaGVycnktcGljayBwaWNrZWQuLnlldGFub3RoZXJwaWNrICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIHBpY2tlZC4ueWV0YW5vdGhlcnBpY2sgMj5hZHZpY2UgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFkdmljZSAmJgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCWVycm9yOiBjaGVycnktcGljayBpcyBhbHJlYWR5IGluIHByb2dyZXNzCisJaGludDogdHJ5ICJnaXQgY2hlcnJ5LXBpY2sgKC0tY29udGludWUgfCAtLWFib3J0IHwgLS1xdWl0KSIKKwlmYXRhbDogY2hlcnJ5LXBpY2sgZmFpbGVkCisJRU9GCisJZ2l0IHJlc2V0IC0tbWVyZ2UgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgY2hlcnJ5LXBpY2sgcGlja2VkLi55ZXRhbm90aGVycGljayAyPmFkdmljZSAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3QgYWR2aWNlCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FsbG93IHNraXBwaW5nIGNvbW1pdCBidXQgbm90IGFib3J0IGZvciBhIG5ldyBoaXN0b3J5JyAnCisJcHJpc3RpbmVfZGV0YWNoIGluaXRpYWwgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwllcnJvcjogY2Fubm90IGFib3J0IGZyb20gYSBicmFuY2ggeWV0IHRvIGJlIGJvcm4KKwlmYXRhbDogY2hlcnJ5LXBpY2sgZmFpbGVkCisJRU9GCisJZ2l0IGNoZWNrb3V0IC0tb3JwaGFuIG5ld19kaXNjb25uZWN0ZWQgJiYKKwlnaXQgcmVzZXQgLS1oYXJkICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIGFub3RoZXJwaWNrICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnQgMj5hZHZpY2UgJiYKKwlnaXQgY2hlcnJ5LXBpY2sgLS1za2lwICYmCisJdGVzdF9pMThuY21wIGV4cGVjdCBhZHZpY2UKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYWxsb3cgc2tpcHBpbmcgc3RvcHBlZCBjaGVycnktcGljayBiZWNhdXNlIG9mIHVudHJhY2tlZCBmaWxlIG1vZGlmaWNhdGlvbnMnICcKKwlwcmlzdGluZV9kZXRhY2ggaW5pdGlhbCAmJgorCWdpdCBybSAtLWNhY2hlZCB1bnJlbGF0ZWQgJiYKKwlnaXQgY29tbWl0IC1tICJ1bnRyYWNrIHVucmVsYXRlZCIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgY2hlcnJ5LXBpY2sgaW5pdGlhbCBiYXNlICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9DSEVSUllfUElDS19IRUFEICYmCisJZ2l0IGNoZXJyeS1waWNrIC0tc2tpcAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXF1aXQgZG9lcyBub3QgY29tcGxhaW4gd2hlbiBubyBjaGVycnktcGljayBpcyBpbiBwcm9ncmVzcycgJwogCXByaXN0aW5lX2RldGFjaCBpbml0aWFsICYmCiAJZ2l0IGNoZXJyeS1waWNrIC0tcXVpdApkaWZmIC0tZ2l0IGEvdC90MzUxMS1jaGVycnktcGljay14LnNoIGIvdC90MzUxMS1jaGVycnktcGljay14LnNoCmluZGV4IDk4ODhiZjMuLjg0YTU4N2QgMTAwNzU1Ci0tLSBhL3QvdDM1MTEtY2hlcnJ5LXBpY2steC5zaAorKysgYi90L3QzNTExLWNoZXJyeS1waWNrLXguc2gKQEAgLTI5OCw0ICsyOTgsMjQgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZXJyeS1waWNrIC14IGNsZWFucyBjb21taXQgbWVzc2FnZScgJworCXByaXN0aW5lX2RldGFjaCBpbml0aWFsICYmCisJZ2l0IGNoZXJyeS1waWNrIC14IG1lc2ctdW5jbGVhbiAmJgorCWdpdCBsb2cgLTEgLS1wcmV0dHk9Zm9ybWF0OiVCID5hY3R1YWwgJiYKKwlwcmludGYgIiVzXG4oY2hlcnJ5IHBpY2tlZCBmcm9tIGNvbW1pdCAlcylcbiIgXAorCQkiJG1lc2dfdW5jbGVhbiIgJChnaXQgcmV2LXBhcnNlIG1lc2ctdW5jbGVhbikgfAorCQkJZ2l0IHN0cmlwc3BhY2UgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlcnJ5LXBpY2sgLXggcmVzcGVjdHMgY29tbWl0LmNsZWFudXAnICcKKwlwcmlzdGluZV9kZXRhY2ggaW5pdGlhbCAmJgorCWdpdCAtYyBjb21taXQuY2xlYW51cD1zdHJpcCBjaGVycnktcGljayAteCBtZXNnLXVuY2xlYW4gJiYKKwlnaXQgbG9nIC0xIC0tcHJldHR5PWZvcm1hdDolQiA+YWN0dWFsICYmCisJcHJpbnRmICIlc1xuKGNoZXJyeSBwaWNrZWQgZnJvbSBjb21taXQgJXMpXG4iIFwKKwkJIiRtZXNnX3VuY2xlYW4iICQoZ2l0IHJldi1wYXJzZSBtZXNnLXVuY2xlYW4pIHwKKwkJCWdpdCBzdHJpcHNwYWNlIC1zID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MzYwMC1ybS5zaCBiL3QvdDM2MDAtcm0uc2gKaW5kZXggMDRlNWQ0Mi4uZjJjMDE2OCAxMDA3NTUKLS0tIGEvdC90MzYwMC1ybS5zaAorKysgYi90L3QzNjAwLXJtLnNoCkBAIC04LDkxICs4LDkyIEBACiAuIC4vdGVzdC1saWIuc2gKIAogIyBTZXR1cCBzb21lIGZpbGVzIHRvIGJlIHJlbW92ZWQsIHNvbWUgd2l0aCBmdW5ueSBjaGFyYWN0ZXJzCi10ZXN0X2V4cGVjdF9zdWNjZXNzIFwKLSAgICAnSW5pdGlhbGl6ZSB0ZXN0IGRpcmVjdG9yeScgXAotICAgICJ0b3VjaCAtLSBmb28gYmFyIGJheiAnc3BhY2UgZW1iZWRkZWQnIC1xICYmCi0gICAgIGdpdCBhZGQgLS0gZm9vIGJhciBiYXogJ3NwYWNlIGVtYmVkZGVkJyAtcSAmJgotICAgICBnaXQgY29tbWl0IC1tICdhZGQgbm9ybWFsIGZpbGVzJyIKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0luaXRpYWxpemUgdGVzdCBkaXJlY3RvcnknICcKKwl0b3VjaCAtLSBmb28gYmFyIGJheiAic3BhY2UgZW1iZWRkZWQiIC1xICYmCisJZ2l0IGFkZCAtLSBmb28gYmFyIGJheiAic3BhY2UgZW1iZWRkZWQiIC1xICYmCisJZ2l0IGNvbW1pdCAtbSAiYWRkIG5vcm1hbCBmaWxlcyIKKycKIAotaWYgdGVzdF9oYXZlX3ByZXJlcSAhRlVOTllOQU1FUzsgdGhlbgoraWYgdGVzdF9oYXZlX3ByZXJlcSAhRlVOTllOQU1FUwordGhlbgogCXNheSAnWW91ciBmaWxlc3lzdGVtIGRvZXMgbm90IGFsbG93IHRhYnMgaW4gZmlsZW5hbWVzLicKIGZpCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgRlVOTllOQU1FUyAnYWRkIGZpbGVzIHdpdGggZnVubnkgbmFtZXMnICIKLSAgICAgdG91Y2ggLS0gJ3RhYgllbWJlZGRlZCcgJ25ld2xpbmUKLWVtYmVkZGVkJyAmJgotICAgICBnaXQgYWRkIC0tICd0YWIJZW1iZWRkZWQnICduZXdsaW5lCi1lbWJlZGRlZCcgJiYKLSAgICAgZ2l0IGNvbW1pdCAtbSAnYWRkIGZpbGVzIHdpdGggdGFicyBhbmQgbmV3bGluZXMnCi0iCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAotICAgICdQcmUtY2hlY2sgdGhhdCBmb28gZXhpc3RzIGFuZCBpcyBpbiBpbmRleCBiZWZvcmUgZ2l0IHJtIGZvbycgXAotICAgICdbIC1mIGZvbyBdICYmIGdpdCBscy1maWxlcyAtLWVycm9yLXVubWF0Y2ggZm9vJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzIFwKLSAgICAnVGVzdCB0aGF0IGdpdCBybSBmb28gc3VjY2VlZHMnIFwKLSAgICAnZ2l0IHJtIC0tY2FjaGVkIGZvbycKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyBcCi0gICAgJ1Rlc3QgdGhhdCBnaXQgcm0gLS1jYWNoZWQgZm9vIHN1Y2NlZWRzIGlmIHRoZSBpbmRleCBtYXRjaGVzIHRoZSBmaWxlJyBcCi0gICAgJ2VjaG8gY29udGVudCA+Zm9vICYmCi0gICAgIGdpdCBhZGQgZm9vICYmCi0gICAgIGdpdCBybSAtLWNhY2hlZCBmb28nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAotICAgICdUZXN0IHRoYXQgZ2l0IHJtIC0tY2FjaGVkIGZvbyBzdWNjZWVkcyBpZiB0aGUgaW5kZXggbWF0Y2hlcyB0aGUgZmlsZScgXAotICAgICdlY2hvIGNvbnRlbnQgPmZvbyAmJgotICAgICBnaXQgYWRkIGZvbyAmJgotICAgICBnaXQgY29tbWl0IC1tIGZvbyAmJgotICAgICBlY2hvICJvdGhlciBjb250ZW50IiA+Zm9vICYmCi0gICAgIGdpdCBybSAtLWNhY2hlZCBmb28nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAotICAgICdUZXN0IHRoYXQgZ2l0IHJtIC0tY2FjaGVkIGZvbyBmYWlscyBpZiB0aGUgaW5kZXggbWF0Y2hlcyBuZWl0aGVyIHRoZSBmaWxlIG5vciBIRUFEJyAnCi0gICAgIGVjaG8gY29udGVudCA+Zm9vICYmCi0gICAgIGdpdCBhZGQgZm9vICYmCi0gICAgIGdpdCBjb21taXQgLW0gZm9vIC0tYWxsb3ctZW1wdHkgJiYKLSAgICAgZWNobyAib3RoZXIgY29udGVudCIgPmZvbyAmJgotICAgICBnaXQgYWRkIGZvbyAmJgotICAgICBlY2hvICJ5ZXQgYW5vdGhlciBjb250ZW50IiA+Zm9vICYmCi0gICAgIHRlc3RfbXVzdF9mYWlsIGdpdCBybSAtLWNhY2hlZCBmb28KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgRlVOTllOQU1FUyAnYWRkIGZpbGVzIHdpdGggZnVubnkgbmFtZXMnICcKKwl0b3VjaCAtLSAidGFiCWVtYmVkZGVkIiAibmV3bGluZSR7TEZ9ZW1iZWRkZWQiICYmCisJZ2l0IGFkZCAtLSAidGFiCWVtYmVkZGVkIiAibmV3bGluZSR7TEZ9ZW1iZWRkZWQiICYmCisJZ2l0IGNvbW1pdCAtbSAiYWRkIGZpbGVzIHdpdGggdGFicyBhbmQgbmV3bGluZXMiCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAotICAgICdUZXN0IHRoYXQgZ2l0IHJtIC0tY2FjaGVkIC1mIGZvbyB3b3JrcyBpbiBjYXNlIHdoZXJlIC0tY2FjaGVkIG9ubHkgZGlkIG5vdCcgXAotICAgICdlY2hvIGNvbnRlbnQgPmZvbyAmJgotICAgICBnaXQgYWRkIGZvbyAmJgotICAgICBnaXQgY29tbWl0IC1tIGZvbyAtLWFsbG93LWVtcHR5ICYmCi0gICAgIGVjaG8gIm90aGVyIGNvbnRlbnQiID5mb28gJiYKLSAgICAgZ2l0IGFkZCBmb28gJiYKLSAgICAgZWNobyAieWV0IGFub3RoZXIgY29udGVudCIgPmZvbyAmJgotICAgICBnaXQgcm0gLS1jYWNoZWQgLWYgZm9vJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnUHJlLWNoZWNrIHRoYXQgZm9vIGV4aXN0cyBhbmQgaXMgaW4gaW5kZXggYmVmb3JlIGdpdCBybSBmb28nICcKKwl0ZXN0X3BhdGhfaXNfZmlsZSBmb28gJiYKKwlnaXQgbHMtZmlsZXMgLS1lcnJvci11bm1hdGNoIGZvbworJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzIFwKLSAgICAnUG9zdC1jaGVjayB0aGF0IGZvbyBleGlzdHMgYnV0IGlzIG5vdCBpbiBpbmRleCBhZnRlciBnaXQgcm0gZm9vJyBcCi0gICAgJ1sgLWYgZm9vIF0gJiYgdGVzdF9tdXN0X2ZhaWwgZ2l0IGxzLWZpbGVzIC0tZXJyb3ItdW5tYXRjaCBmb28nCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdUZXN0IHRoYXQgZ2l0IHJtIGZvbyBzdWNjZWVkcycgJworCWdpdCBybSAtLWNhY2hlZCBmb28KKycKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyBcCi0gICAgJ1ByZS1jaGVjayB0aGF0IGJhciBleGlzdHMgYW5kIGlzIGluIGluZGV4IGJlZm9yZSAiZ2l0IHJtIGJhciInIFwKLSAgICAnWyAtZiBiYXIgXSAmJiBnaXQgbHMtZmlsZXMgLS1lcnJvci11bm1hdGNoIGJhcicKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ1Rlc3QgdGhhdCBnaXQgcm0gLS1jYWNoZWQgZm9vIHN1Y2NlZWRzIGlmIHRoZSBpbmRleCBtYXRjaGVzIHRoZSBmaWxlJyAnCisJZWNobyBjb250ZW50ID5mb28gJiYKKwlnaXQgYWRkIGZvbyAmJgorCWdpdCBybSAtLWNhY2hlZCBmb28KKycKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyBcCi0gICAgJ1Rlc3QgdGhhdCAiZ2l0IHJtIGJhciIgc3VjY2VlZHMnIFwKLSAgICAnZ2l0IHJtIGJhcicKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ1Rlc3QgdGhhdCBnaXQgcm0gLS1jYWNoZWQgZm9vIHN1Y2NlZWRzIGlmIHRoZSBpbmRleCBtYXRjaGVzIHRoZSBmaWxlJyAnCisJZWNobyBjb250ZW50ID5mb28gJiYKKwlnaXQgYWRkIGZvbyAmJgorCWdpdCBjb21taXQgLW0gZm9vICYmCisJZWNobyAib3RoZXIgY29udGVudCIgPmZvbyAmJgorCWdpdCBybSAtLWNhY2hlZCBmb28KKycKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyBcCi0gICAgJ1Bvc3QtY2hlY2sgdGhhdCBiYXIgZG9lcyBub3QgZXhpc3QgYW5kIGlzIG5vdCBpbiBpbmRleCBhZnRlciAiZ2l0IHJtIC1mIGJhciInIFwKLSAgICAnISBbIC1mIGJhciBdICYmIHRlc3RfbXVzdF9mYWlsIGdpdCBscy1maWxlcyAtLWVycm9yLXVubWF0Y2ggYmFyJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnVGVzdCB0aGF0IGdpdCBybSAtLWNhY2hlZCBmb28gZmFpbHMgaWYgdGhlIGluZGV4IG1hdGNoZXMgbmVpdGhlciB0aGUgZmlsZSBub3IgSEVBRCcgJworCWVjaG8gY29udGVudCA+Zm9vICYmCisJZ2l0IGFkZCBmb28gJiYKKwlnaXQgY29tbWl0IC1tIGZvbyAtLWFsbG93LWVtcHR5ICYmCisJZWNobyAib3RoZXIgY29udGVudCIgPmZvbyAmJgorCWdpdCBhZGQgZm9vICYmCisJZWNobyAieWV0IGFub3RoZXIgY29udGVudCIgPmZvbyAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBybSAtLWNhY2hlZCBmb28KKycKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyBcCi0gICAgJ1Rlc3QgdGhhdCAiZ2l0IHJtIC0tIC1xIiBzdWNjZWVkcyAocmVtb3ZlIGEgZmlsZSB0aGF0IGxvb2tzIGxpa2UgYW4gb3B0aW9uKScgXAotICAgICdnaXQgcm0gLS0gLXEnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdUZXN0IHRoYXQgZ2l0IHJtIC0tY2FjaGVkIC1mIGZvbyB3b3JrcyBpbiBjYXNlIHdoZXJlIC0tY2FjaGVkIG9ubHkgZGlkIG5vdCcgJworCWVjaG8gY29udGVudCA+Zm9vICYmCisJZ2l0IGFkZCBmb28gJiYKKwlnaXQgY29tbWl0IC1tIGZvbyAtLWFsbG93LWVtcHR5ICYmCisJZWNobyAib3RoZXIgY29udGVudCIgPmZvbyAmJgorCWdpdCBhZGQgZm9vICYmCisJZWNobyAieWV0IGFub3RoZXIgY29udGVudCIgPmZvbyAmJgorCWdpdCBybSAtLWNhY2hlZCAtZiBmb28KKycKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyBGVU5OWU5BTUVTIFwKLSAgICAiVGVzdCB0aGF0IFwiZ2l0IHJtIC1mXCIgc3VjY2VlZHMgd2l0aCBlbWJlZGRlZCBzcGFjZSwgdGFiLCBvciBuZXdsaW5lIGNoYXJhY3RlcnMuIiBcCi0gICAgImdpdCBybSAtZiAnc3BhY2UgZW1iZWRkZWQnICd0YWIJZW1iZWRkZWQnICduZXdsaW5lCi1lbWJlZGRlZCciCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdQb3N0LWNoZWNrIHRoYXQgZm9vIGV4aXN0cyBidXQgaXMgbm90IGluIGluZGV4IGFmdGVyIGdpdCBybSBmb28nICcKKwl0ZXN0X3BhdGhfaXNfZmlsZSBmb28gJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgbHMtZmlsZXMgLS1lcnJvci11bm1hdGNoIGZvbworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdQcmUtY2hlY2sgdGhhdCBiYXIgZXhpc3RzIGFuZCBpcyBpbiBpbmRleCBiZWZvcmUgImdpdCBybSBiYXIiJyAnCisJdGVzdF9wYXRoX2lzX2ZpbGUgYmFyICYmCisJZ2l0IGxzLWZpbGVzIC0tZXJyb3ItdW5tYXRjaCBiYXIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnVGVzdCB0aGF0ICJnaXQgcm0gYmFyIiBzdWNjZWVkcycgJworCWdpdCBybSBiYXIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnUG9zdC1jaGVjayB0aGF0IGJhciBkb2VzIG5vdCBleGlzdCBhbmQgaXMgbm90IGluIGluZGV4IGFmdGVyICJnaXQgcm0gLWYgYmFyIicgJworCXRlc3RfcGF0aF9pc19taXNzaW5nIGJhciAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBscy1maWxlcyAtLWVycm9yLXVubWF0Y2ggYmFyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ1Rlc3QgdGhhdCAiZ2l0IHJtIC0tIC1xIiBzdWNjZWVkcyAocmVtb3ZlIGEgZmlsZSB0aGF0IGxvb2tzIGxpa2UgYW4gb3B0aW9uKScgJworCWdpdCBybSAtLSAtcQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEZVTk5ZTkFNRVMgJ1Rlc3QgdGhhdCAiZ2l0IHJtIC1mIiBzdWNjZWVkcyB3aXRoIGVtYmVkZGVkIHNwYWNlLCB0YWIsIG9yIG5ld2xpbmUgY2hhcmFjdGVycy4nICcKKwlnaXQgcm0gLWYgInNwYWNlIGVtYmVkZGVkIiAidGFiCWVtYmVkZGVkIiAibmV3bGluZSR7TEZ9ZW1iZWRkZWQiCisnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgU0FOSVRZICdUZXN0IHRoYXQgImdpdCBybSAtZiIgZmFpbHMgaWYgaXRzIHJtIGZhaWxzJyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJjaG1vZCA3NzUgLiIgJiYKQEAgLTEwMCw5ICsxMDEsOSBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCBybSAtZiBiYXoKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyBcCi0gICAgJ1doZW4gdGhlIHJtIGluICJnaXQgcm0gLWYiIGZhaWxzLCBpdCBzaG91bGQgbm90IHJlbW92ZSB0aGUgZmlsZSBmcm9tIHRoZSBpbmRleCcgXAotICAgICdnaXQgbHMtZmlsZXMgLS1lcnJvci11bm1hdGNoIGJheicKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ1doZW4gdGhlIHJtIGluICJnaXQgcm0gLWYiIGZhaWxzLCBpdCBzaG91bGQgbm90IHJlbW92ZSB0aGUgZmlsZSBmcm9tIHRoZSBpbmRleCcgJworCWdpdCBscy1maWxlcyAtLWVycm9yLXVubWF0Y2ggYmF6CisnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ1JlbW92ZSBub25leGlzdGVudCBmaWxlIHdpdGggLS1pZ25vcmUtdW5tYXRjaCcgJwogCWdpdCBybSAtLWlnbm9yZS11bm1hdGNoIG5vbmV4aXN0ZW50CkBAIC0xMTIsOSArMTEzLDEwIEBACiAJZWNobyBmcm90eiA+dGVzdC1maWxlICYmCiAJZ2l0IGFkZCB0ZXN0LWZpbGUgJiYKIAlnaXQgY29tbWl0IC1tICJhZGQgZmlsZSBmb3Igcm0gdGVzdCIgJiYKLQlnaXQgcm0gdGVzdC1maWxlID5ybS1vdXRwdXQgJiYKLQl0ZXN0ICQoZ3JlcCAiXnJtICIgcm0tb3V0cHV0IHwgd2MgLWwpID0gMSAmJgotCXJtIC1mIHRlc3QtZmlsZSBybS1vdXRwdXQgJiYKKwlnaXQgcm0gdGVzdC1maWxlID5ybS1vdXRwdXQucmF3ICYmCisJZ3JlcCAiXnJtICIgcm0tb3V0cHV0LnJhdyA+cm0tb3V0cHV0ICYmCisJdGVzdF9saW5lX2NvdW50ID0gMSBybS1vdXRwdXQgJiYKKwlybSAtZiB0ZXN0LWZpbGUgcm0tb3V0cHV0LnJhdyBybS1vdXRwdXQgJiYKIAlnaXQgY29tbWl0IC1tICJyZW1vdmUgZmlsZSBmcm9tIHJtIHRlc3QiCiAnCiAKQEAgLTEzNywxNSArMTM5LDE1IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdNb2RpZnkgZm9vIC0tIHJtIHNob3VsZCByZWZ1c2UnICcKIAllY2hvID4+Zm9vICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJtIGZvbyBiYXogJiYKLQl0ZXN0IC1mIGZvbyAmJgotCXRlc3QgLWYgYmF6ICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgZm9vICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgYmF6ICYmCiAJZ2l0IGxzLWZpbGVzIC0tZXJyb3ItdW5tYXRjaCBmb28gYmF6CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ01vZGlmaWVkIGZvbyAtLSBybSAtZiBzaG91bGQgd29yaycgJwogCWdpdCBybSAtZiBmb28gYmF6ICYmCi0JdGVzdCAhIC1mIGZvbyAmJgotCXRlc3QgISAtZiBiYXogJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBmb28gJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBiYXogJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbHMtZmlsZXMgLS1lcnJvci11bm1hdGNoIGZvbyAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBscy1maWxlcyAtLWVycm9yLXVubWF0Y2ggYmFyCiAnCkBAIC0xNTksMTUgKzE2MSwxNSBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb28gaXMgZGlmZmVyZW50IGluIGluZGV4IGZyb20gSEVBRCAtLSBybSBzaG91bGQgcmVmdXNlJyAnCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJtIGZvbyBiYXogJiYKLQl0ZXN0IC1mIGZvbyAmJgotCXRlc3QgLWYgYmF6ICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgZm9vICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgYmF6ICYmCiAJZ2l0IGxzLWZpbGVzIC0tZXJyb3ItdW5tYXRjaCBmb28gYmF6CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2J1dCB3aXRoIC1mIGl0IHNob3VsZCB3b3JrLicgJwogCWdpdCBybSAtZiBmb28gYmF6ICYmCi0JdGVzdCAhIC1mIGZvbyAmJgotCXRlc3QgISAtZiBiYXogJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBmb28gJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBiYXogJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbHMtZmlsZXMgLS1lcnJvci11bm1hdGNoIGZvbyAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBscy1maWxlcyAtLWVycm9yLXVubWF0Y2ggYmF6CiAnCkBAIC0xOTQsMjEgKzE5NiwyMSBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdSZWN1cnNpdmUgd2l0aG91dCAtciBmYWlscycgJwogCXRlc3RfbXVzdF9mYWlsIGdpdCBybSBmcm90eiAmJgotCXRlc3QgLWQgZnJvdHogJiYKLQl0ZXN0IC1mIGZyb3R6L25pdGZvbAorCXRlc3RfcGF0aF9pc19kaXIgZnJvdHogJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBmcm90ei9uaXRmb2wKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnUmVjdXJzaXZlIHdpdGggLXIgYnV0IGRpcnR5JyAnCiAJZWNobyBxZndmcSA+PmZyb3R6L25pdGZvbCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBybSAtciBmcm90eiAmJgotCXRlc3QgLWQgZnJvdHogJiYKLQl0ZXN0IC1mIGZyb3R6L25pdGZvbAorCXRlc3RfcGF0aF9pc19kaXIgZnJvdHogJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBmcm90ei9uaXRmb2wKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnUmVjdXJzaXZlIHdpdGggLXIgLWYnICcKIAlnaXQgcm0gLWYgLXIgZnJvdHogJiYKLQkhIHRlc3QgLWYgZnJvdHovbml0Zm9sICYmCi0JISB0ZXN0IC1kIGZyb3R6CisJdGVzdF9wYXRoX2lzX21pc3NpbmcgZnJvdHovbml0Zm9sICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgZnJvdHoKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnUmVtb3ZlIG5vbmV4aXN0ZW50IGZpbGUgcmV0dXJucyBub256ZXJvIGV4aXQgc3RhdHVzJyAnCkBAIC0yMTcsNDQgKzIxOSw2MiBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdDYWxsICJybSIgZnJvbSBvdXRzaWRlIHRoZSB3b3JrIHRyZWUnICcKIAlta2RpciByZXBvICYmCi0JKGNkIHJlcG8gJiYKLQkgZ2l0IGluaXQgJiYKLQkgZWNobyBzb21ldGhpbmcgPnNvbWVmaWxlICYmCi0JIGdpdCBhZGQgc29tZWZpbGUgJiYKLQkgZ2l0IGNvbW1pdCAtbSAiYWRkIGEgZmlsZSIgJiYKLQkgKGNkIC4uICYmCi0JICBnaXQgLS1naXQtZGlyPXJlcG8vLmdpdCAtLXdvcmstdHJlZT1yZXBvIHJtIHNvbWVmaWxlKSAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCBscy1maWxlcyAtLWVycm9yLXVubWF0Y2ggc29tZWZpbGUpCisJKAorCQljZCByZXBvICYmCisJCWdpdCBpbml0ICYmCisJCWVjaG8gc29tZXRoaW5nID5zb21lZmlsZSAmJgorCQlnaXQgYWRkIHNvbWVmaWxlICYmCisJCWdpdCBjb21taXQgLW0gImFkZCBhIGZpbGUiICYmCisJCSgKKwkJCWNkIC4uICYmCisJCQlnaXQgLS1naXQtZGlyPXJlcG8vLmdpdCAtLXdvcmstdHJlZT1yZXBvIHJtIHNvbWVmaWxlCisJCSkgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IGxzLWZpbGVzIC0tZXJyb3ItdW5tYXRjaCBzb21lZmlsZQorCSkKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVmcmVzaCBpbmRleCBiZWZvcmUgY2hlY2tpbmcgaWYgaXQgaXMgdXAtdG8tZGF0ZScgJwotCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCXRlc3QtdG9vbCBjaG10aW1lIC04NjQwMCBmcm90ei9uaXRmb2wgJiYKIAlnaXQgcm0gZnJvdHovbml0Zm9sICYmCi0JdGVzdCAhIC1mIGZyb3R6L25pdGZvbAotCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgZnJvdHovbml0Zm9sCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Nob2tpbmcgImdpdCBybSIgc2hvdWxkIG5vdCBsZXQgaXQgZGllIHdpdGggY3J1ZnQnICcKKwl0ZXN0X29pZF9pbml0ICYmCiAJZ2l0IHJlc2V0IC1xIC0taGFyZCAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgLmdpdC9pbmRleC5sb2NrICYmIGdpdCByZXNldCAtcSAtLWhhcmQiICYmCiAJaT0wICYmCisJaGFzaD0kKHRlc3Rfb2lkIGRlYWRiZWVmKSAmJgogCXdoaWxlIHRlc3QgJGkgLWx0IDEyMDAwCiAJZG8KLQkgICAgZWNobyAiMTAwNjQ0IDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAgMAlzb21lLWZpbGUtJGkiCi0JICAgIGk9JCgoICRpICsgMSApKQorCQllY2hvICIxMDA2NDQgJGhhc2ggMAlzb21lLWZpbGUtJGkiCisJCWk9JCgoICRpICsgMSApKQogCWRvbmUgfCBnaXQgdXBkYXRlLWluZGV4IC0taW5kZXgtaW5mbyAmJgorCSMgZ2l0IGNvbW1hbmQgaXMgaW50ZW50aW9uYWxseSBwbGFjZWQgdXBzdHJlYW0gb2YgcGlwZSB0byBpbmR1Y2UgU0lHUElQRQogCWdpdCBybSAtbiAic29tZS1maWxlLSoiIHwgOiAmJgogCXRlc3RfcGF0aF9pc19taXNzaW5nIC5naXQvaW5kZXgubG9jawogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdSZXNvbHZpbmcgYnkgcmVtb3ZhbCBpcyBub3QgYSB3YXJuaW5nLXdvcnRoeSBldmVudCcgJworCWdpdCByZXNldCAtcSAtLWhhcmQgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIC5naXQvaW5kZXgubG9jayBtc2cgJiYgZ2l0IHJlc2V0IC1xIC0taGFyZCIgJiYKKwlibG9iPSQoZWNobyBibG9iIHwgZ2l0IGhhc2gtb2JqZWN0IC13IC0tc3RkaW4pICYmCisJZm9yIHN0YWdlIGluIDEgMiAzCisJZG8KKwkJZWNobyAiMTAwNjQ0ICRibG9iICRzdGFnZQlibG9iIgorCWRvbmUgfCBnaXQgdXBkYXRlLWluZGV4IC0taW5kZXgtaW5mbyAmJgorCWdpdCBybSBibG9iID5tc2cgMj4mMSAmJgorCXRlc3RfaTE4bmdyZXAgISAibmVlZHMgbWVyZ2UiIG1zZyAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBscy1maWxlcyAtcyAtLWVycm9yLXVubWF0Y2ggYmxvYgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdybSByZW1vdmVzIHN1YmRpcmVjdG9yaWVzIHJlY3Vyc2l2ZWx5JyAnCiAJbWtkaXIgLXAgZGlyL3N1YmRpci9zdWJzdWJkaXIgJiYKIAllY2hvIGNvbnRlbnQgPmRpci9zdWJkaXIvc3Vic3ViZGlyL2ZpbGUgJiYKIAlnaXQgYWRkIGRpci9zdWJkaXIvc3Vic3ViZGlyL2ZpbGUgJiYKIAlnaXQgcm0gLWYgZGlyL3N1YmRpci9zdWJzdWJkaXIvZmlsZSAmJgotCSEgdGVzdCAtZCBkaXIKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBkaXIKICcKIAogY2F0ID5leHBlY3QgPDxFT0YKQEAgLTI4NSwxNCArMzA1LDE1IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JtIHJlbW92ZXMgZW1wdHkgc3VibW9kdWxlcyBmcm9tIHdvcmsgdHJlZScgJwogCW1rZGlyIHN1Ym1vZCAmJgotCWdpdCB1cGRhdGUtaW5kZXggLS1hZGQgLS1jYWNoZWluZm8gMTYwMDAwICQoZ2l0IHJldi1wYXJzZSBIRUFEKSBzdWJtb2QgJiYKKwloYXNoPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCWdpdCB1cGRhdGUtaW5kZXggLS1hZGQgLS1jYWNoZWluZm8gMTYwMDAwICIkaGFzaCIgc3VibW9kICYmCiAJZ2l0IGNvbmZpZyAtZiAuZ2l0bW9kdWxlcyBzdWJtb2R1bGUuc3ViLnVybCAuLy4gJiYKIAlnaXQgY29uZmlnIC1mIC5naXRtb2R1bGVzIHN1Ym1vZHVsZS5zdWIucGF0aCBzdWJtb2QgJiYKIAlnaXQgc3VibW9kdWxlIGluaXQgJiYKIAlnaXQgYWRkIC5naXRtb2R1bGVzICYmCiAJZ2l0IGNvbW1pdCAtbSAiYWRkIHN1Ym1vZHVsZSIgJiYKIAlnaXQgcm0gc3VibW9kICYmCi0JdGVzdCAhIC1lIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHN1Ym1vZCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgY29uZmlnIC1mIC5naXRtb2R1bGVzIHN1Ym1vZHVsZS5zdWIudXJsICYmCkBAIC0zMTQsNyArMzM1LDcgQEAKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgJiYKIAlnaXQgcm0gc3VibW9kICYmCi0JdGVzdCAhIC1kIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHN1Ym1vZCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgY29uZmlnIC1mIC5naXRtb2R1bGVzIHN1Ym1vZHVsZS5zdWIudXJsICYmCkBAIC0zMjUsNyArMzQ2LDcgQEAKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgJiYKIAlnaXQgcm0gc3VibW9kLyAmJgotCXRlc3QgISAtZCBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzdWJtb2QgJiYKIAlnaXQgc3RhdHVzIC1zIC11bm8gLS1pZ25vcmUtc3VibW9kdWxlcz1ub25lID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC0zNDMsMTIgKzM2NCwxMiBAQAogCWdpdCBzdWJtb2R1bGUgdXBkYXRlICYmCiAJZ2l0IC1DIHN1Ym1vZCBjaGVja291dCBIRUFEXiAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBybSBzdWJtb2QgJiYKLQl0ZXN0IC1kIHN1Ym1vZCAmJgotCXRlc3QgLWYgc3VibW9kLy5naXQgJiYKKwl0ZXN0X3BhdGhfaXNfZGlyIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19maWxlIHN1Ym1vZC8uZ2l0ICYmCiAJZ2l0IHN0YXR1cyAtcyAtdW5vIC0taWdub3JlLXN1Ym1vZHVsZXM9bm9uZSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0Lm1vZGlmaWVkIGFjdHVhbCAmJgogCWdpdCBybSAtZiBzdWJtb2QgJiYKLQl0ZXN0ICEgLWQgc3VibW9kICYmCisJdGVzdF9wYXRoX2lzX21pc3Npbmcgc3VibW9kICYmCiAJZ2l0IHN0YXR1cyAtcyAtdW5vIC0taWdub3JlLXN1Ym1vZHVsZXM9bm9uZSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBjb25maWcgLWYgLmdpdG1vZHVsZXMgc3VibW9kdWxlLnN1Yi51cmwgJiYKQEAgLTM1OSw4ICszODAsOCBAQAogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAmJgogCWdpdCBybSAtLWNhY2hlZCBzdWJtb2QgJiYKLQl0ZXN0IC1kIHN1Ym1vZCAmJgotCXRlc3QgLWYgc3VibW9kLy5naXQgJiYKKwl0ZXN0X3BhdGhfaXNfZGlyIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19maWxlIHN1Ym1vZC8uZ2l0ICYmCiAJZ2l0IHN0YXR1cyAtcyAtdW5vID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QuY2FjaGVkIGFjdHVhbCAmJgogCWdpdCBjb25maWcgLWYgLmdpdG1vZHVsZXMgc3VibW9kdWxlLnN1Yi51cmwgJiYKQEAgLTM3MSw3ICszOTIsNyBAQAogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAmJgogCWdpdCBybSAtbiBzdWJtb2QgJiYKLQl0ZXN0IC1mIHN1Ym1vZC8uZ2l0ICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgc3VibW9kLy5naXQgJiYKIAlnaXQgZGlmZi1pbmRleCAtLWV4aXQtY29kZSBIRUFECiAnCiAKQEAgLTM4MSw4ICs0MDIsOCBAQAogCWdpdCBybSAuZ2l0bW9kdWxlcyAmJgogCWdpdCBybSBzdWJtb2QgPmFjdHVhbCAyPmFjdHVhbC5lcnIgJiYKIAl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsLmVyciAmJgotCSEgdGVzdCAtZCBzdWJtb2QgJiYKLQkhIHRlc3QgLWYgc3VibW9kLy5naXQgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzdWJtb2QvLmdpdCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0LmJvdGhfZGVsZXRlZCBhY3R1YWwKICcKQEAgLTM5MiwxOCArNDEzLDI1IEBACiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgJiYKIAlnaXQgY29uZmlnIC1mIC5naXRtb2R1bGVzIGZvby5iYXIgdHJ1ZSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBybSBzdWJtb2QgPmFjdHVhbCAyPmFjdHVhbC5lcnIgJiYKLQl0ZXN0IC1zIGFjdHVhbC5lcnIgJiYKLQl0ZXN0IC1kIHN1Ym1vZCAmJgotCXRlc3QgLWYgc3VibW9kLy5naXQgJiYKKwl0ZXN0X2ZpbGVfbm90X2VtcHR5IGFjdHVhbC5lcnIgJiYKKwl0ZXN0X3BhdGhfaXNfZGlyIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19maWxlIHN1Ym1vZC8uZ2l0ICYmCiAJZ2l0IGRpZmYtZmlsZXMgLS1xdWlldCAtLSBzdWJtb2QgJiYKIAlnaXQgYWRkIC5naXRtb2R1bGVzICYmCiAJZ2l0IHJtIHN1Ym1vZCA+YWN0dWFsIDI+YWN0dWFsLmVyciAmJgogCXRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwuZXJyICYmCi0JISB0ZXN0IC1kIHN1Ym1vZCAmJgotCSEgdGVzdCAtZiBzdWJtb2QvLmdpdCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHN1Ym1vZC8uZ2l0ICYmCiAJZ2l0IHN0YXR1cyAtcyAtdW5vID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdybSB3aWxsIG5vdCBlcnJvciBvdXQgb24gLmdpdG1vZHVsZXMgZmlsZSB3aXRoIHplcm8gc3RhdCBkYXRhJyAnCisJZ2l0IHJlc2V0IC0taGFyZCAmJgorCWdpdCBzdWJtb2R1bGUgdXBkYXRlICYmCisJZ2l0IHJlYWQtdHJlZSBIRUFEICYmCisJZ2l0IHJtIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHN1Ym1vZAorJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdybSBpc3N1ZXMgYSB3YXJuaW5nIHdoZW4gc2VjdGlvbiBpcyBub3QgZm91bmQgaW4gLmdpdG1vZHVsZXMnICcKIAlnaXQgcmVzZXQgLS1oYXJkICYmCkBAIC00MTMsOCArNDQxLDggQEAKIAllY2hvICJ3YXJuaW5nOiBDb3VsZCBub3QgZmluZCBzZWN0aW9uIGluIC5naXRtb2R1bGVzIHdoZXJlIHBhdGg9c3VibW9kIiA+ZXhwZWN0LmVyciAmJgogCWdpdCBybSBzdWJtb2QgPmFjdHVhbCAyPmFjdHVhbC5lcnIgJiYKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0LmVyciBhY3R1YWwuZXJyICYmCi0JISB0ZXN0IC1kIHN1Ym1vZCAmJgotCSEgdGVzdCAtZiBzdWJtb2QvLmdpdCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHN1Ym1vZC8uZ2l0ICYmCiAJZ2l0IHN0YXR1cyAtcyAtdW5vID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC00MjQsMTIgKzQ1MiwxMiBAQAogCWdpdCBzdWJtb2R1bGUgdXBkYXRlICYmCiAJZWNobyBYID5zdWJtb2QvZW1wdHkgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcm0gc3VibW9kICYmCi0JdGVzdCAtZCBzdWJtb2QgJiYKLQl0ZXN0IC1mIHN1Ym1vZC8uZ2l0ICYmCisJdGVzdF9wYXRoX2lzX2RpciBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBzdWJtb2QvLmdpdCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdC5tb2RpZmllZF9pbnNpZGUgYWN0dWFsICYmCiAJZ2l0IHJtIC1mIHN1Ym1vZCAmJgotCXRlc3QgISAtZCBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzdWJtb2QgJiYKIAlnaXQgc3RhdHVzIC1zIC11bm8gLS1pZ25vcmUtc3VibW9kdWxlcz1ub25lID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC00MzksMTIgKzQ2NywxMiBAQAogCWdpdCBzdWJtb2R1bGUgdXBkYXRlICYmCiAJZWNobyBYID5zdWJtb2QvdW50cmFja2VkICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJtIHN1Ym1vZCAmJgotCXRlc3QgLWQgc3VibW9kICYmCi0JdGVzdCAtZiBzdWJtb2QvLmdpdCAmJgorCXRlc3RfcGF0aF9pc19kaXIgc3VibW9kICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgc3VibW9kLy5naXQgJiYKIAlnaXQgc3RhdHVzIC1zIC11bm8gLS1pZ25vcmUtc3VibW9kdWxlcz1ub25lID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QubW9kaWZpZWRfdW50cmFja2VkIGFjdHVhbCAmJgogCWdpdCBybSAtZiBzdWJtb2QgJiYKLQl0ZXN0ICEgLWQgc3VibW9kICYmCisJdGVzdF9wYXRoX2lzX21pc3Npbmcgc3VibW9kICYmCiAJZ2l0IHN0YXR1cyAtcyAtdW5vIC0taWdub3JlLXN1Ym1vZHVsZXM9bm9uZSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwpAQCAtNDgxLDcgKzUwOSw3IEBACiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgY29uZmxpY3QyICYmCiAJZ2l0IHJtIHN1Ym1vZCAmJgotCXRlc3QgISAtZCBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzdWJtb2QgJiYKIAlnaXQgc3RhdHVzIC1zIC11bm8gLS1pZ25vcmUtc3VibW9kdWxlcz1ub25lID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC00OTMsMTIgKzUyMSwxMiBAQAogCWdpdCAtQyBzdWJtb2QgY2hlY2tvdXQgSEVBRF4gJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgY29uZmxpY3QyICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJtIHN1Ym1vZCAmJgotCXRlc3QgLWQgc3VibW9kICYmCi0JdGVzdCAtZiBzdWJtb2QvLmdpdCAmJgorCXRlc3RfcGF0aF9pc19kaXIgc3VibW9kICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgc3VibW9kLy5naXQgJiYKIAlnaXQgc3RhdHVzIC1zIC11bm8gLS1pZ25vcmUtc3VibW9kdWxlcz1ub25lID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QuY29uZmxpY3QgYWN0dWFsICYmCiAJZ2l0IHJtIC1mIHN1Ym1vZCAmJgotCXRlc3QgISAtZCBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzdWJtb2QgJiYKIAlnaXQgc3RhdHVzIC1zIC11bm8gLS1pZ25vcmUtc3VibW9kdWxlcz1ub25lID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbmZpZyAtZiAuZ2l0bW9kdWxlcyBzdWJtb2R1bGUuc3ViLnVybCAmJgpAQCAtNTEyLDEyICs1NDAsMTIgQEAKIAllY2hvIFggPnN1Ym1vZC9lbXB0eSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBjb25mbGljdDIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcm0gc3VibW9kICYmCi0JdGVzdCAtZCBzdWJtb2QgJiYKLQl0ZXN0IC1mIHN1Ym1vZC8uZ2l0ICYmCisJdGVzdF9wYXRoX2lzX2RpciBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBzdWJtb2QvLmdpdCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdC5jb25mbGljdCBhY3R1YWwgJiYKIAlnaXQgcm0gLWYgc3VibW9kICYmCi0JdGVzdCAhIC1kIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHN1Ym1vZCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgY29uZmlnIC1mIC5naXRtb2R1bGVzIHN1Ym1vZHVsZS5zdWIudXJsICYmCkBAIC01MzEsMTIgKzU1OSwxMiBAQAogCWVjaG8gWCA+c3VibW9kL3VudHJhY2tlZCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBjb25mbGljdDIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcm0gc3VibW9kICYmCi0JdGVzdCAtZCBzdWJtb2QgJiYKLQl0ZXN0IC1mIHN1Ym1vZC8uZ2l0ICYmCisJdGVzdF9wYXRoX2lzX2RpciBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBzdWJtb2QvLmdpdCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdC5jb25mbGljdCBhY3R1YWwgJiYKIAlnaXQgcm0gLWYgc3VibW9kICYmCi0JdGVzdCAhIC1kIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHN1Ym1vZCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKQEAgLTU0NSwyMCArNTczLDIxIEBACiAJZ2l0IGNoZWNrb3V0IGNvbmZsaWN0MSAmJgogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAmJgotCShjZCBzdWJtb2QgJiYKKwkoCisJCWNkIHN1Ym1vZCAmJgogCQlybSAuZ2l0ICYmCiAJCWNwIC1SIC4uLy5naXQvbW9kdWxlcy9zdWIgLmdpdCAmJgogCQlHSVRfV09SS19UUkVFPS4gZ2l0IGNvbmZpZyAtLXVuc2V0IGNvcmUud29ya3RyZWUKIAkpICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIGNvbmZsaWN0MiAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBybSBzdWJtb2QgJiYKLQl0ZXN0IC1kIHN1Ym1vZCAmJgotCXRlc3QgLWQgc3VibW9kLy5naXQgJiYKKwl0ZXN0X3BhdGhfaXNfZGlyIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19kaXIgc3VibW9kLy5naXQgJiYKIAlnaXQgc3RhdHVzIC1zIC11bm8gLS1pZ25vcmUtc3VibW9kdWxlcz1ub25lID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QuY29uZmxpY3QgYWN0dWFsICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJtIC1mIHN1Ym1vZCAmJgotCXRlc3QgLWQgc3VibW9kICYmCi0JdGVzdCAtZCBzdWJtb2QvLmdpdCAmJgorCXRlc3RfcGF0aF9pc19kaXIgc3VibW9kICYmCisJdGVzdF9wYXRoX2lzX2RpciBzdWJtb2QvLmdpdCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdC5jb25mbGljdCBhY3R1YWwgJiYKIAlnaXQgbWVyZ2UgLS1hYm9ydCAmJgpAQCAtNTcwLDcgKzU5OSw3IEBACiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBjb25mbGljdDIgJiYKIAlnaXQgcm0gc3VibW9kICYmCi0JdGVzdCAhIC1kIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHN1Ym1vZCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKQEAgLTU3OSwxNyArNjA4LDE4IEBACiAJZ2l0IGNoZWNrb3V0IC1mIG1hc3RlciAmJgogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAmJgotCShjZCBzdWJtb2QgJiYKKwkoCisJCWNkIHN1Ym1vZCAmJgogCQlybSAuZ2l0ICYmCiAJCWNwIC1SIC4uLy5naXQvbW9kdWxlcy9zdWIgLmdpdCAmJgogCQlHSVRfV09SS19UUkVFPS4gZ2l0IGNvbmZpZyAtLXVuc2V0IGNvcmUud29ya3RyZWUgJiYKIAkJcm0gLXIgLi4vLmdpdC9tb2R1bGVzL3N1YgogCSkgJiYKIAlnaXQgcm0gc3VibW9kIDI+b3V0cHV0LmVyciAmJgotCSEgdGVzdCAtZCBzdWJtb2QgJiYKLQkhIHRlc3QgLWQgc3VibW9kLy5naXQgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzdWJtb2QvLmdpdCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgotCXRlc3QgLXMgYWN0dWFsICYmCisJdGVzdF9maWxlX25vdF9lbXB0eSBhY3R1YWwgJiYKIAl0ZXN0X2kxOG5ncmVwIE1pZ3JhdGluZyBvdXRwdXQuZXJyCiAnCiAKQEAgLTYwMCw4ICs2MzAsMTAgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHN1YnN1Ym1vZHVsZScgJwogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAmJgotCShjZCBzdWJtb2QgJiYKLQkJZ2l0IHVwZGF0ZS1pbmRleCAtLWFkZCAtLWNhY2hlaW5mbyAxNjAwMDAgJChnaXQgcmV2LXBhcnNlIEhFQUQpIHN1YnN1Ym1vZCAmJgorCSgKKwkJY2Qgc3VibW9kICYmCisJCWhhc2g9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCisJCWdpdCB1cGRhdGUtaW5kZXggLS1hZGQgLS1jYWNoZWluZm8gMTYwMDAwICIkaGFzaCIgc3Vic3VibW9kICYmCiAJCWdpdCBjb25maWcgLWYgLmdpdG1vZHVsZXMgc3VibW9kdWxlLnN1Yi51cmwgLi4vLiAmJgogCQlnaXQgY29uZmlnIC1mIC5naXRtb2R1bGVzIHN1Ym1vZHVsZS5zdWIucGF0aCBzdWJzdWJtb2QgJiYKIAkJZ2l0IHN1Ym1vZHVsZSBpbml0ICYmCkBAIC02MTQsNyArNjQ2LDcgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncm0gcmVjdXJzaXZlbHkgcmVtb3ZlcyB3b3JrIHRyZWUgb2YgdW5tb2RpZmllZCBzdWJtb2R1bGVzJyAnCiAJZ2l0IHJtIHN1Ym1vZCAmJgotCXRlc3QgISAtZCBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzdWJtb2QgJiYKIAlnaXQgc3RhdHVzIC1zIC11bm8gLS1pZ25vcmUtc3VibW9kdWxlcz1ub25lID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC02MjQsMTIgKzY1NiwxMiBAQAogCWdpdCBzdWJtb2R1bGUgdXBkYXRlIC0tcmVjdXJzaXZlICYmCiAJZ2l0IC1DIHN1Ym1vZC9zdWJzdWJtb2QgY2hlY2tvdXQgSEVBRF4gJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcm0gc3VibW9kICYmCi0JdGVzdCAtZCBzdWJtb2QgJiYKLQl0ZXN0IC1mIHN1Ym1vZC8uZ2l0ICYmCisJdGVzdF9wYXRoX2lzX2RpciBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBzdWJtb2QvLmdpdCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdC5tb2RpZmllZF9pbnNpZGUgYWN0dWFsICYmCiAJZ2l0IHJtIC1mIHN1Ym1vZCAmJgotCXRlc3QgISAtZCBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzdWJtb2QgJiYKIAlnaXQgc3RhdHVzIC1zIC11bm8gLS1pZ25vcmUtc3VibW9kdWxlcz1ub25lID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC02MzksMTIgKzY3MSwxMiBAQAogCWdpdCBzdWJtb2R1bGUgdXBkYXRlIC0tcmVjdXJzaXZlICYmCiAJZWNobyBYID5zdWJtb2Qvc3Vic3VibW9kL2VtcHR5ICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJtIHN1Ym1vZCAmJgotCXRlc3QgLWQgc3VibW9kICYmCi0JdGVzdCAtZiBzdWJtb2QvLmdpdCAmJgorCXRlc3RfcGF0aF9pc19kaXIgc3VibW9kICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgc3VibW9kLy5naXQgJiYKIAlnaXQgc3RhdHVzIC1zIC11bm8gLS1pZ25vcmUtc3VibW9kdWxlcz1ub25lID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QubW9kaWZpZWRfaW5zaWRlIGFjdHVhbCAmJgogCWdpdCBybSAtZiBzdWJtb2QgJiYKLQl0ZXN0ICEgLWQgc3VibW9kICYmCisJdGVzdF9wYXRoX2lzX21pc3Npbmcgc3VibW9kICYmCiAJZ2l0IHN0YXR1cyAtcyAtdW5vIC0taWdub3JlLXN1Ym1vZHVsZXM9bm9uZSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwpAQCAtNjU0LDEyICs2ODYsMTIgQEAKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtLXJlY3Vyc2l2ZSAmJgogCWVjaG8gWCA+c3VibW9kL3N1YnN1Ym1vZC91bnRyYWNrZWQgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcm0gc3VibW9kICYmCi0JdGVzdCAtZCBzdWJtb2QgJiYKLQl0ZXN0IC1mIHN1Ym1vZC8uZ2l0ICYmCisJdGVzdF9wYXRoX2lzX2RpciBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBzdWJtb2QvLmdpdCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdC5tb2RpZmllZF91bnRyYWNrZWQgYWN0dWFsICYmCiAJZ2l0IHJtIC1mIHN1Ym1vZCAmJgotCXRlc3QgISAtZCBzdWJtb2QgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzdWJtb2QgJiYKIAlnaXQgc3RhdHVzIC1zIC11bm8gLS1pZ25vcmUtc3VibW9kdWxlcz1ub25lID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC02NjcsMTYgKzY5OSwxNyBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAicm0gYWJzb3JicyBzdWJtb2R1bGUncyBuZXN0ZWQgLmdpdCBkaXJlY3RvcnkiICcKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLS1yZWN1cnNpdmUgJiYKLQkoY2Qgc3VibW9kL3N1YnN1Ym1vZCAmJgorCSgKKwkJY2Qgc3VibW9kL3N1YnN1Ym1vZCAmJgogCQlybSAuZ2l0ICYmCiAJCW12IC4uLy4uLy5naXQvbW9kdWxlcy9zdWIvbW9kdWxlcy9zdWIgLmdpdCAmJgogCQlHSVRfV09SS19UUkVFPS4gZ2l0IGNvbmZpZyAtLXVuc2V0IGNvcmUud29ya3RyZWUKIAkpICYmCiAJZ2l0IHJtIHN1Ym1vZCAyPm91dHB1dC5lcnIgJiYKLQkhIHRlc3QgLWQgc3VibW9kICYmCi0JISB0ZXN0IC1kIHN1Ym1vZC9zdWJzdWJtb2QvLmdpdCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHN1Ym1vZCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHN1Ym1vZC9zdWJzdWJtb2QvLmdpdCAmJgogCWdpdCBzdGF0dXMgLXMgLXVubyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgPmFjdHVhbCAmJgotCXRlc3QgLXMgYWN0dWFsICYmCisJdGVzdF9maWxlX25vdF9lbXB0eSBhY3R1YWwgJiYKIAl0ZXN0X2kxOG5ncmVwIE1pZ3JhdGluZyBvdXRwdXQuZXJyCiAnCiAKZGlmZiAtLWdpdCBhL3QvdDM2MDEtcm0tcGF0aHNwZWMtZmlsZS5zaCBiL3QvdDM2MDEtcm0tcGF0aHNwZWMtZmlsZS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi43ZGUyMWY4Ci0tLSAvZGV2L251bGwKKysrIGIvdC90MzYwMS1ybS1wYXRoc3BlYy1maWxlLnNoCkBAIC0wLDAgKzEsNzkgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdybSAtLXBhdGhzcGVjLWZyb20tZmlsZScKKworLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfdGljaworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIHNldHVwICcKKwllY2hvIEEgPmZpbGVBLnQgJiYKKwllY2hvIEIgPmZpbGVCLnQgJiYKKwllY2hvIEMgPmZpbGVDLnQgJiYKKwllY2hvIEQgPmZpbGVELnQgJiYKKwlnaXQgYWRkIGZpbGVBLnQgZmlsZUIudCBmaWxlQy50IGZpbGVELnQgJiYKKwlnaXQgY29tbWl0IC1tICJmaWxlcyIgJiYKKworCWdpdCB0YWcgY2hlY2twb2ludAorJworCityZXN0b3JlX2NoZWNrcG9pbnQgKCkgeworCWdpdCByZXNldCAtLWhhcmQgY2hlY2twb2ludAorfQorCit2ZXJpZnlfZXhwZWN0ICgpIHsKKwlnaXQgc3RhdHVzIC0tcG9yY2VsYWluIC0tdW50cmFja2VkLWZpbGVzPW5vIC0tIGZpbGVBLnQgZmlsZUIudCBmaWxlQy50IGZpbGVELnQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKK30KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2ltcGxlc3QnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlEICBmaWxlQS50CisJRU9GCisKKwllY2hvIGZpbGVBLnQgfCBnaXQgcm0gLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSAmJgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1wYXRoc3BlYy1maWxlLW51bCcgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCUQgIGZpbGVBLnQKKwlEICBmaWxlQi50CisJRU9GCisKKwlwcmludGYgImZpbGVBLnRcMGZpbGVCLnRcMCIgfCBnaXQgcm0gLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSAtLXBhdGhzcGVjLWZpbGUtbnVsICYmCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdvbmx5IHRvdWNoZXMgd2hhdCB3YXMgbGlzdGVkJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJRCAgZmlsZUIudAorCUQgIGZpbGVDLnQKKwlFT0YKKworCXByaW50ZiAiZmlsZUIudFxuZmlsZUMudFxuIiB8IGdpdCBybSAtLXBhdGhzcGVjLWZyb20tZmlsZT0tICYmCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdlcnJvciBjb25kaXRpb25zJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisJZWNobyBmaWxlQS50ID5saXN0ICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgcm0gLS1wYXRoc3BlYy1mcm9tLWZpbGU9bGlzdCAtLSBmaWxlQS50IDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggcGF0aHNwZWMgYXJndW1lbnRzIiBlcnIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBybSAtLXBhdGhzcGVjLWZpbGUtbnVsIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiLS1wYXRoc3BlYy1maWxlLW51bCByZXF1aXJlcyAtLXBhdGhzcGVjLWZyb20tZmlsZSIgZXJyICYmCisKKwk+ZW1wdHlfbGlzdCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBybSAtLXBhdGhzcGVjLWZyb20tZmlsZT1lbXB0eV9saXN0IDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiTm8gcGF0aHNwZWMgd2FzIGdpdmVuLiBXaGljaCBmaWxlcyBzaG91bGQgSSByZW1vdmU/IiBlcnIKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzNzAwLWFkZC5zaCBiL3QvdDM3MDAtYWRkLnNoCmluZGV4IDM3NzI5YmEuLjg4YmM3OTk4IDEwMDc1NQotLS0gYS90L3QzNzAwLWFkZC5zaAorKysgYi90L3QzNzAwLWFkZC5zaApAQCAtMjk2LDYgKzI5NiwxNyBAQAogCSkKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnZXJyb3Igb24gYSByZXBvc2l0b3J5IHdpdGggbm8gY29tbWl0cycgJworCXJtIC1mciBlbXB0eSAmJgorCWdpdCBpbml0IGVtcHR5ICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGFkZCBlbXB0eSA+YWN0dWFsIDI+JjEgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwllcnJvcjogJyInZW1wdHkvJyInIGRvZXMgbm90IGhhdmUgYSBjb21taXQgY2hlY2tlZCBvdXQKKwlmYXRhbDogYWRkaW5nIGZpbGVzIGZhaWxlZAorCUVPRgorCXRlc3RfaTE4bmNtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBhZGQgLS1kcnktcnVuIG9mIGV4aXN0aW5nIGNoYW5nZWQgZmlsZScgIgogCWVjaG8gbmV3ID4+dHJhY2stdGhpcyAmJgogCWdpdCBhZGQgLS1kcnktcnVuIHRyYWNrLXRoaXMgPmFjdHVhbCAyPiYxICYmCkBAIC0zMTUsNyArMzI2LDkgQEAKIGNhdCA+ZXhwZWN0LmVyciA8PFxFT0YKIFRoZSBmb2xsb3dpbmcgcGF0aHMgYXJlIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczoKIGlnbm9yZWQtZmlsZQotVXNlIC1mIGlmIHlvdSByZWFsbHkgd2FudCB0byBhZGQgdGhlbS4KK2hpbnQ6IFVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIHRoZW0uCitoaW50OiBUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnkgcnVubmluZworaGludDogImdpdCBjb25maWcgYWR2aWNlLmFkZElnbm9yZWRGaWxlIGZhbHNlIgogRU9GCiBjYXQgPmV4cGVjdC5vdXQgPDxcRU9GCiBhZGQgJ3RyYWNrLXRoaXMnCkBAIC0zOTYsMTAgKzQwOSwxOCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhbGwgc3RhdHVzZXMgY2hhbmdlZCBpbiBmb2xkZXIgaWYgLiBpcyBnaXZlbicgJworCXJtIC1mciBlbXB0eSAmJgogCWdpdCBhZGQgLS1jaG1vZD0reCAuICYmCiAJdGVzdCAkKGdpdCBscy1maWxlcyAtLXN0YWdlIHwgZ3JlcCBeMTAwNjQ0IHwgd2MgLWwpIC1lcSAwICYmCiAJZ2l0IGFkZCAtLWNobW9kPS14IC4gJiYKIAl0ZXN0ICQoZ2l0IGxzLWZpbGVzIC0tc3RhZ2UgfCBncmVwIF4xMDA3NTUgfCB3YyAtbCkgLWVxIDAKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyBDQVNFX0lOU0VOU0lUSVZFX0ZTICdwYXRoIGlzIGNhc2UtaW5zZW5zaXRpdmUnICcKKwlwYXRoPSIkKHB3ZCkvQkxVQiIgJiYKKwl0b3VjaCAiJHBhdGgiICYmCisJZG93bmNhc2VkPSIkKGVjaG8gIiRwYXRoIiB8IHRyIEEtWiBhLXopIiAmJgorCWdpdCBhZGQgIiRkb3duY2FzZWQiCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MzcwMS1hZGQtaW50ZXJhY3RpdmUuc2ggYi90L3QzNzAxLWFkZC1pbnRlcmFjdGl2ZS5zaAppbmRleCA2NWRmYmMwLi41YmFlNmU1IDEwMDc1NQotLS0gYS90L3QzNzAxLWFkZC1pbnRlcmFjdGl2ZS5zaAorKysgYi90L3QzNzAxLWFkZC1pbnRlcmFjdGl2ZS5zaApAQCAtMjMsNiArMjMsMTcgQEAKIAl0ZXN0X2NtcCAiJDEuZmlsdGVyZWQiICIkMi5maWx0ZXJlZCIKIH0KIAorIyBUaGlzIGZ1bmN0aW9uIHVzZXMgYSB0cmljayB0byBtYW5pcHVsYXRlIHRoZSBpbnRlcmFjdGl2ZSBhZGQgdG8gdXNlIGNvbG9yOgorIyB0aGUgYHdhbnRfY29sb3IoKWAgZnVuY3Rpb24gc3BlY2lhbC1jYXNlcyB0aGUgc2l0dWF0aW9uIHdoZXJlIGEgcGFnZXIgd2FzCisjIHNwYXduZWQgYW5kIEdpdCBub3cgd2FudHMgdG8gb3V0cHV0IGNvbG9yZWQgdGV4dDogdG8gZGV0ZWN0IHRoYXQgc2l0dWF0aW9uLAorIyB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgYEdJVF9QQUdFUl9JTl9VU0VgIGlzIHNldC4gSG93ZXZlciwgY29sb3IgaXMKKyMgc3VwcHJlc3NlZCBkZXNwaXRlIHRoYXQgZW52aXJvbm1lbnQgdmFyaWFibGUgaWYgdGhlIGBURVJNYCB2YXJpYWJsZQorIyBpbmRpY2F0ZXMgYSBkdW1iIHRlcm1pbmFsLCBzbyB3ZSBzZXQgdGhhdCB2YXJpYWJsZSwgdG9vLgorCitmb3JjZV9jb2xvciAoKSB7CisJZW52IEdJVF9QQUdFUl9JTl9VU0U9dHJ1ZSBURVJNPXZ0MTAwICIkQCIKK30KKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgKGluaXRpYWwpJyAnCiAJZWNobyBjb250ZW50ID5maWxlICYmCiAJZ2l0IGFkZCBmaWxlICYmCkBAIC01Nyw2ICs2OCwxNSBAQAogCSEgZ3JlcCAuIG91dHB1dAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhZGQgdW50cmFja2VkIChtdWx0aXBsZSknICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAmJiBybSBbMS05XSIgJiYKKwl0b3VjaCAkKHRlc3Rfc2VxIDkpICYmCisJdGVzdF93cml0ZV9saW5lcyBhICIyLTUgOC0iIHwgZ2l0IGFkZCAtaSAtLSBbMS05XSAmJgorCXRlc3Rfd3JpdGVfbGluZXMgMiAzIDQgNSA4IDkgPmV4cGVjdGVkICYmCisJZ2l0IGxzLWZpbGVzIFsxLTldID5vdXRwdXQgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBvdXRwdXQKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgKGNvbW1pdCknICcKIAllY2hvIGJhc2VsaW5lID5maWxlICYmCiAJZ2l0IGFkZCBmaWxlICYmCkBAIC05NCw3ICsxMTQsNiBAQAogCWdyZXAgInVuY2hhbmdlZCAqKzMvLTAgZmlsZSIgb3V0cHV0CiAnCiAKLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgZXhwZWN0ZWQnICcKIAljYXQgPmV4cGVjdGVkIDw8LVxFT0YKIAlFT0YKQEAgLTI2Myw2ICsyODIsMzUgQEAKIAogIyBlbmQgb2YgdGVzdHMgZGlzYWJsZWQgd2hlbiBmaWxlbW9kZSBpcyBub3QgdXNhYmxlCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RpZmZlcmVudCBwcm9tcHRzIGZvciBtb2RlIGNoYW5nZS9kZWxldGVkJyAnCisJZ2l0IHJlc2V0IC0taGFyZCAmJgorCT5maWxlICYmCisJPmRlbGV0ZWQgJiYKKwlnaXQgYWRkIC0tY2htb2Q9K3ggZmlsZSBkZWxldGVkICYmCisJZWNobyBjaGFuZ2VkID5maWxlICYmCisJcm0gZGVsZXRlZCAmJgorCXRlc3Rfd3JpdGVfbGluZXMgbiBuIG4gfAorCWdpdCAtYyBjb3JlLmZpbGVtb2RlPXRydWUgYWRkIC1wID5hY3R1YWwgJiYKKwlzZWQgLW4gInMvXlwoKFswLTkvXSopIFN0YWdlIC4qP1wpLiovXDEvcCIgYWN0dWFsID5hY3R1YWwuZmlsdGVyZWQgJiYKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJKDEvMSkgU3RhZ2UgZGVsZXRpb24gW3ksbixxLGEsZCw/XT8KKwkoMS8yKSBTdGFnZSBtb2RlIGNoYW5nZSBbeSxuLHEsYSxkLGosSixnLC8sP10/CisJKDIvMikgU3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQsSyxnLC8sZSw/XT8KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsLmZpbHRlcmVkCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvcnJlY3QgbWVzc2FnZSB3aGVuIHRoZXJlIGlzIG5vdGhpbmcgdG8gZG8nICcKKwlnaXQgcmVzZXQgLS1oYXJkICYmCisJZ2l0IGFkZCAtcCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgIk5vIGNoYW5nZXMiIGVyciAmJgorCXByaW50ZiAiXFwwMTIzIiA+YmluYXJ5ICYmCisJZ2l0IGFkZCBiaW5hcnkgJiYKKwlwcmludGYgIlxcMGFiYyIgPmJpbmFyeSAmJgorCWdpdCBhZGQgLXAgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJPbmx5IGJpbmFyeSBmaWxlcyBjaGFuZ2VkIiBlcnIKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgYWdhaW4nICcKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJdGVzdF9jaG1vZCAreCBmaWxlICYmCkBAIC0zMTQsNyArMzYyLDcgQEAKIAlnaXQgY29tbWl0IC1hbSAiY2xlYXIgbG9jYWwgY2hhbmdlcyIgJiYKIAlnaXQgYXBwbHkgcGF0Y2ggJiYKIAlwcmludGYgIiVzXG4iIHMgeSB5IHwgZ2l0IGFkZCAtcCBmaWxlIDI+ZXJyb3IgfAotCQlzZWQgLW4gLWUgInMvXlN0YWdlIHRoaXMgaHVua1teQF0qXChAQCAuKlwpL1wxLyIgXAorCQlzZWQgLW4gLWUgInMvXihbMS0yXVwvWzEtMl0pIFN0YWdlIHRoaXMgaHVua1teQF0qXChAQCAuKlwpL1wxLyIgXAogCQkgICAgICAgLWUgIi9eWy0rQCBcXFxcXSIvcCAgPm91dHB1dCAmJgogCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnJvciAmJgogCWdpdCBkaWZmIC0tY2FjaGVkID5kaWZmICYmCkBAIC0zNzQsNiArNDIyLDM2IEBACiAJdGVzdF93cml0ZV9saW5lcyAxMCAxNSAyMCAyMSAyMiAyMyAyNCAzMCA0MCA1MCA2MCA+dGVzdAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnb3RvIGh1bmsnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCIgJiYKKwl0ciBfICIgIiA+ZXhwZWN0IDw8LUVPRiAmJgorCSgyLzIpIFN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkLEssZywvLGUsP10/ICsgMTogIC0xLDIgKzEsMyAgICAgICAgICArMTUKKwlfIDI6ICAtMiw0ICszLDggICAgICAgICAgKzIxCisJZ28gdG8gd2hpY2ggaHVuaz8gQEAgLTEsMiArMSwzIEBACisJXzEwCisJKzE1CisJXzIwCisJKDEvMikgU3RhZ2UgdGhpcyBodW5rIFt5LG4scSxhLGQsaixKLGcsLyxlLD9dP18KKwlFT0YKKwl0ZXN0X3dyaXRlX2xpbmVzIHMgeSBnIDEgfCBnaXQgYWRkIC1wID5hY3R1YWwgJiYKKwl0YWlsIC1uIDcgPGFjdHVhbCA+YWN0dWFsLnRyaW1tZWQgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsLnRyaW1tZWQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbmF2aWdhdGUgdG8gaHVuayB2aWEgcmVnZXgnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCIgJiYKKwl0ciBfICIgIiA+ZXhwZWN0IDw8LUVPRiAmJgorCSgyLzIpIFN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkLEssZywvLGUsP10/IEBAIC0xLDIgKzEsMyBAQAorCV8xMAorCSsxNQorCV8yMAorCSgxLzIpIFN0YWdlIHRoaXMgaHVuayBbeSxuLHEsYSxkLGosSixnLC8sZSw/XT9fCisJRU9GCisJdGVzdF93cml0ZV9saW5lcyBzIHkgLzEsMiB8IGdpdCBhZGQgLXAgPmFjdHVhbCAmJgorCXRhaWwgLW4gNSA8YWN0dWFsID5hY3R1YWwudHJpbW1lZCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwudHJpbW1lZAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzcGxpdCBodW5rICJhZGQgLXAgKGVkaXQpIicgJwogCSMgU3BsaXQsIHNheSBFZGl0IGFuZCBkbyBub3RoaW5nLiAgVGhlbjoKIAkjCkBAIC00MDMsNiArNDgxLDQwIEBACiAJISBncmVwICJeKzMxIiBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3BsaXQgaHVuayB3aXRoIGluY29tcGxldGUgbGluZSBhdCBlbmQnICcKKwlnaXQgcmVzZXQgLS1oYXJkICYmCisJcHJpbnRmICJtaXNzaW5nIExGIiA+PnRlc3QgJiYKKwlnaXQgYWRkIHRlc3QgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzIGJlZm9yZSAxMCAyMCAzMCA0MCA1MCA2MCA3MCA+dGVzdCAmJgorCWdpdCBncmVwIC0tY2FjaGVkIG1pc3NpbmcgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzIHMgbiB5IHEgfCBnaXQgYWRkIC1wICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGdyZXAgLS1jYWNoZWQgbWlzc2luZyAmJgorCWdpdCBncmVwIGJlZm9yZSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBncmVwIC0tY2FjaGVkIGJlZm9yZQorJworCit0ZXN0X2V4cGVjdF9mYWlsdXJlICdlZGl0LCBhZGRpbmcgbGluZXMgdG8gdGhlIGZpcnN0IGh1bmsnICcKKwl0ZXN0X3dyaXRlX2xpbmVzIDEwIDExIDIwIDMwIDQwIDUwIDUxIDYwID50ZXN0ICYmCisJZ2l0IHJlc2V0ICYmCisJdHIgXyAiICIgPnBhdGNoIDw8LUVPRiAmJgorCUBAIC0xLDUgKzEsNiBAQAorCV8xMAorCSsxMQorCSsxMgorCV8yMAorCSsyMQorCSsyMgorCV8zMAorCUVPRgorCSMgdGVzdCBzZXF1ZW5jZSBpcyBzKHBsaXQpLCBlKGRpdCksIG4obykKKwkjIHEgbiBxIHEgaXMgdGhlcmUgdG8gbWFrZSBzdXJlIHdlIGV4aXQgYXQgdGhlIGVuZC4KKwlwcmludGYgIiVzXG4iIHMgZSBuICAgcSBuIHEgcSB8CisJRURJVE9SPS4vZmFrZV9lZGl0b3Iuc2ggZ2l0IGFkZCAtcCAyPmVycm9yICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGVycm9yICYmCisJZ2l0IGRpZmYgLS1jYWNoZWQgPmFjdHVhbCAmJgorCWdyZXAgIl4rMjIiIGFjdHVhbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwYXRjaCBtb2RlIGlnbm9yZXMgdW5tZXJnZWQgZW50cmllcycgJwogCWdpdCByZXNldCAtLWhhcmQgJiYKIAl0ZXN0X2NvbW1pdCBjb25mbGljdCAmJgpAQCAtNDI5LDM1ICs1NDEsNjEgQEAKIAlkaWZmX2NtcCBleHBlY3RlZCBkaWZmCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgVFRZICdkaWZmcyBjYW4gYmUgY29sb3JpemVkJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaWZmcyBjYW4gYmUgY29sb3JpemVkJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCiAJZWNobyBjb250ZW50ID50ZXN0ICYmCi0JcHJpbnRmIHkgfCB0ZXN0X3Rlcm1pbmFsIGdpdCBhZGQgLXAgPm91dHB1dCAyPiYxICYmCisJcHJpbnRmIHkgPnkgJiYKKwlmb3JjZV9jb2xvciBnaXQgYWRkIC1wID5vdXRwdXQgMj4mMSA8eSAmJgogCiAJIyBXZSBkbyBub3Qgd2FudCB0byBkZXBlbmQgb24gdGhlIGV4YWN0IGNvbG9yaW5nIHNjaGVtZQogCSMgZ2l0IHVzZXMgZm9yIGRpZmZzLCBzbyBqdXN0IGNoZWNrIHRoYXQgd2Ugc2F3IHNvbWUga2luZCBvZiBjb2xvci4KIAlncmVwICIkKHByaW50ZiAiXFwwMzMiKSIgb3V0cHV0CiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgVFRZICdkaWZmRmlsdGVyIGZpbHRlcnMgZGlmZicgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29sb3JpemVkIGRpZmZzIHJlc3BlY3QgZGlmZi53c0Vycm9ySGlnaGxpZ2h0JyAnCisJZ2l0IHJlc2V0IC0taGFyZCAmJgorCisJZWNobyAib2xkICIgPnRlc3QgJiYKKwlnaXQgYWRkIHRlc3QgJiYKKwllY2hvICJuZXcgIiA+dGVzdCAmJgorCisJcHJpbnRmIHkgPnkgJiYKKwlmb3JjZV9jb2xvciBnaXQgLWMgZGlmZi53c0Vycm9ySGlnaGxpZ2h0PWFsbCBhZGQgLXAgPm91dHB1dC5yYXcgMj4mMSA8eSAmJgorCXRlc3RfZGVjb2RlX2NvbG9yIDxvdXRwdXQucmF3ID5vdXRwdXQgJiYKKwlncmVwICJvbGQ8IiBvdXRwdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlmZkZpbHRlciBmaWx0ZXJzIGRpZmYnICcKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAKIAllY2hvIGNvbnRlbnQgPnRlc3QgJiYKIAl0ZXN0X2NvbmZpZyBpbnRlcmFjdGl2ZS5kaWZmRmlsdGVyICJzZWQgcy9eL2ZvbzovIiAmJgotCXByaW50ZiB5IHwgdGVzdF90ZXJtaW5hbCBnaXQgYWRkIC1wID5vdXRwdXQgMj4mMSAmJgorCXByaW50ZiB5ID55ICYmCisJZm9yY2VfY29sb3IgZ2l0IGFkZCAtcCA+b3V0cHV0IDI+JjEgPHkgJiYKIAogCSMgYXZvaWQgZGVwZW5kaW5nIG9uIHRoZSBleGFjdCBjb2xvcmluZyBvciBjb250ZW50IG9mIHRoZSBwcm9tcHRzLAogCSMgYW5kIGp1c3QgbWFrZSBzdXJlIHdlIHNhdyBvdXIgZGlmZiBwcmVmaXhlZAogCWdyZXAgZm9vOi4qY29udGVudCBvdXRwdXQKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyBUVFkgJ2RldGVjdCBib2d1cyBkaWZmRmlsdGVyIG91dHB1dCcgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZGV0ZWN0IGJvZ3VzIGRpZmZGaWx0ZXIgb3V0cHV0JyAnCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCiAJZWNobyBjb250ZW50ID50ZXN0ICYmCi0JdGVzdF9jb25maWcgaW50ZXJhY3RpdmUuZGlmZkZpbHRlciAiZWNobyB0b28tc2hvcnQiICYmCi0JcHJpbnRmIHkgfCB0ZXN0X211c3RfZmFpbCB0ZXN0X3Rlcm1pbmFsIGdpdCBhZGQgLXAKKwl0ZXN0X2NvbmZpZyBpbnRlcmFjdGl2ZS5kaWZmRmlsdGVyICJzZWQgMWQiICYmCisJcHJpbnRmIHkgPnkgJiYKKwl0ZXN0X211c3RfZmFpbCBmb3JjZV9jb2xvciBnaXQgYWRkIC1wIDx5CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RpZmYuYWxnb3JpdGhtIGlzIHBhc3NlZCB0byBgZ2l0IGRpZmYtZmlsZXNgJyAnCisJZ2l0IHJlc2V0IC0taGFyZCAmJgorCisJPmZpbGUgJiYKKwlnaXQgYWRkIGZpbGUgJiYKKwllY2hvIGNoYW5nZWQgPmZpbGUgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgLWMgZGlmZi5hbGdvcml0aG09Ym9ndXMgYWRkIC1wIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAiZXJyb3I6IG9wdGlvbiBkaWZmLWFsZ29yaXRobSBhY2NlcHRzICIgZXJyCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BhdGNoLW1vZGUgdmlhIC1pIHByb21wdHMgZm9yIGZpbGVzJyAnCkBAIC02MzksNCArNzc3LDM3IEBACiAJdGVzdF9jbXAgZXhwZWN0ZWQtMiBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2tvdXQgLXAgd29ya3Mgd2l0aCBwYXRob2xvZ2ljYWwgY29udGV4dCBsaW5lcycgJworCXRlc3Rfd3JpdGVfbGluZXMgYSBhIGEgYSBhIGEgPmEgJiYKKwlnaXQgYWRkIGEgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzIGEgYiBhIGIgYSBiIGEgYiBhIGIgYSA+IGEmJgorCXRlc3Rfd3JpdGVfbGluZXMgcyBuIG4geSBxIHwgZ2l0IGNoZWNrb3V0IC1wICYmCisJdGVzdF93cml0ZV9saW5lcyBhIGIgYSBiIGEgYSBiIGEgYiBhID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaG93IGhlbHAgZnJvbSBhZGQtLWhlbHBlcicgJworCWdpdCByZXNldCAtLWhhcmQgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKworCTxCT0xEPioqKiBDb21tYW5kcyAqKio8UkVTRVQ+CisJICAxOiA8Qk9MRDtCTFVFPnM8UkVTRVQ+dGF0dXMJICAyOiA8Qk9MRDtCTFVFPnU8UkVTRVQ+cGRhdGUJICAzOiA8Qk9MRDtCTFVFPnI8UkVTRVQ+ZXZlcnQJICA0OiA8Qk9MRDtCTFVFPmE8UkVTRVQ+ZGQgdW50cmFja2VkCisJICA1OiA8Qk9MRDtCTFVFPnA8UkVTRVQ+YXRjaAkgIDY6IDxCT0xEO0JMVUU+ZDxSRVNFVD5pZmYJICA3OiA8Qk9MRDtCTFVFPnE8UkVTRVQ+dWl0CSAgODogPEJPTEQ7QkxVRT5oPFJFU0VUPmVscAorCTxCT0xEO0JMVUU+V2hhdCBub3c8UkVTRVQ+PiA8Qk9MRDtSRUQ+c3RhdHVzICAgICAgICAtIHNob3cgcGF0aHMgd2l0aCBjaGFuZ2VzPFJFU0VUPgorCTxCT0xEO1JFRD51cGRhdGUgICAgICAgIC0gYWRkIHdvcmtpbmcgdHJlZSBzdGF0ZSB0byB0aGUgc3RhZ2VkIHNldCBvZiBjaGFuZ2VzPFJFU0VUPgorCTxCT0xEO1JFRD5yZXZlcnQgICAgICAgIC0gcmV2ZXJ0IHN0YWdlZCBzZXQgb2YgY2hhbmdlcyBiYWNrIHRvIHRoZSBIRUFEIHZlcnNpb248UkVTRVQ+CisJPEJPTEQ7UkVEPnBhdGNoICAgICAgICAgLSBwaWNrIGh1bmtzIGFuZCB1cGRhdGUgc2VsZWN0aXZlbHk8UkVTRVQ+CisJPEJPTEQ7UkVEPmRpZmYgICAgICAgICAgLSB2aWV3IGRpZmYgYmV0d2VlbiBIRUFEIGFuZCBpbmRleDxSRVNFVD4KKwk8Qk9MRDtSRUQ+YWRkIHVudHJhY2tlZCAtIGFkZCBjb250ZW50cyBvZiB1bnRyYWNrZWQgZmlsZXMgdG8gdGhlIHN0YWdlZCBzZXQgb2YgY2hhbmdlczxSRVNFVD4KKwk8Qk9MRD4qKiogQ29tbWFuZHMgKioqPFJFU0VUPgorCSAgMTogPEJPTEQ7QkxVRT5zPFJFU0VUPnRhdHVzCSAgMjogPEJPTEQ7QkxVRT51PFJFU0VUPnBkYXRlCSAgMzogPEJPTEQ7QkxVRT5yPFJFU0VUPmV2ZXJ0CSAgNDogPEJPTEQ7QkxVRT5hPFJFU0VUPmRkIHVudHJhY2tlZAorCSAgNTogPEJPTEQ7QkxVRT5wPFJFU0VUPmF0Y2gJICA2OiA8Qk9MRDtCTFVFPmQ8UkVTRVQ+aWZmCSAgNzogPEJPTEQ7QkxVRT5xPFJFU0VUPnVpdAkgIDg6IDxCT0xEO0JMVUU+aDxSRVNFVD5lbHAKKwk8Qk9MRDtCTFVFPldoYXQgbm93PFJFU0VUPj4kU1AKKwlCeWUuCisJRU9GCisJdGVzdF93cml0ZV9saW5lcyBoIHwgZm9yY2VfY29sb3IgZ2l0IGFkZCAtaSA+YWN0dWFsLmNvbG9yZWQgJiYKKwl0ZXN0X2RlY29kZV9jb2xvciA8YWN0dWFsLmNvbG9yZWQgPmFjdHVhbCAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MzcwNC1hZGQtcGF0aHNwZWMtZmlsZS5zaCBiL3QvdDM3MDQtYWRkLXBhdGhzcGVjLWZpbGUuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uOWUzNWMxZgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDM3MDQtYWRkLXBhdGhzcGVjLWZpbGUuc2gKQEAgLTAsMCArMSwxNTkgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdhZGQgLS1wYXRoc3BlYy1mcm9tLWZpbGUnCisKKy4gLi90ZXN0LWxpYi5zaAorCit0ZXN0X3RpY2sKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBzZXR1cCAnCisJdGVzdF9jb21taXQgZmlsZTAgJiYKKwllY2hvIEEgPmZpbGVBLnQgJiYKKwllY2hvIEIgPmZpbGVCLnQgJiYKKwllY2hvIEMgPmZpbGVDLnQgJiYKKwllY2hvIEQgPmZpbGVELnQKKycKKworcmVzdG9yZV9jaGVja3BvaW50ICgpIHsKKwlnaXQgcmVzZXQKK30KKwordmVyaWZ5X2V4cGVjdCAoKSB7CisJZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbiAtLXVudHJhY2tlZC1maWxlcz1ubyAtLSBmaWxlQS50IGZpbGVCLnQgZmlsZUMudCBmaWxlRC50ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcGF0aHNwZWMtZnJvbS1maWxlIGZyb20gc3RkaW4nICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCWVjaG8gZmlsZUEudCB8IGdpdCBhZGQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCUEgIGZpbGVBLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcGF0aHNwZWMtZnJvbS1maWxlIGZyb20gZmlsZScgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJZWNobyBmaWxlQS50ID5saXN0ICYmCisJZ2l0IGFkZCAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0ICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJQSAgZmlsZUEudAorCUVPRgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnTlVMIGRlbGltaXRlcnMnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCXByaW50ZiAiZmlsZUEudFwwZmlsZUIudFwwIiB8IGdpdCBhZGQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSAtLXBhdGhzcGVjLWZpbGUtbnVsICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJQSAgZmlsZUEudAorCUEgIGZpbGVCLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0xGIGRlbGltaXRlcnMnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCXByaW50ZiAiZmlsZUEudFxuZmlsZUIudFxuIiB8IGdpdCBhZGQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCUEgIGZpbGVBLnQKKwlBICBmaWxlQi50CisJRU9GCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdubyB0cmFpbGluZyBkZWxpbWl0ZXInICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCXByaW50ZiAiZmlsZUEudFxuZmlsZUIudCIgfCBnaXQgYWRkIC0tcGF0aHNwZWMtZnJvbS1maWxlPS0gJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlBICBmaWxlQS50CisJQSAgZmlsZUIudAorCUVPRgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnQ1JMRiBkZWxpbWl0ZXJzJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwlwcmludGYgImZpbGVBLnRcclxuZmlsZUIudFxyXG4iIHwgZ2l0IGFkZCAtLXBhdGhzcGVjLWZyb20tZmlsZT0tICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJQSAgZmlsZUEudAorCUEgIGZpbGVCLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3F1b3RlcycgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJY2F0ID5saXN0IDw8LVxFT0YgJiYKKwkiZmlsZVwxMDEudCIKKwlFT0YKKworCWdpdCBhZGQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9bGlzdCAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCUEgIGZpbGVBLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3F1b3RlcyBub3QgY29tcGF0aWJsZSB3aXRoIC0tcGF0aHNwZWMtZmlsZS1udWwnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCWNhdCA+bGlzdCA8PC1cRU9GICYmCisJImZpbGVcMTAxLnQiCisJRU9GCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgYWRkIC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLS1wYXRoc3BlYy1maWxlLW51bAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdvbmx5IHRvdWNoZXMgd2hhdCB3YXMgbGlzdGVkJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwlwcmludGYgImZpbGVCLnRcbmZpbGVDLnRcbiIgfCBnaXQgYWRkIC0tcGF0aHNwZWMtZnJvbS1maWxlPS0gJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlBICBmaWxlQi50CisJQSAgZmlsZUMudAorCUVPRgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZXJyb3IgY29uZGl0aW9ucycgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCWVjaG8gZmlsZUEudCA+bGlzdCAmJgorCT5lbXB0eV9saXN0ICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgYWRkIC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLS1pbnRlcmFjdGl2ZSAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0taW50ZXJhY3RpdmUvLS1wYXRjaCIgZXJyICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgYWRkIC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLS1wYXRjaCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0taW50ZXJhY3RpdmUvLS1wYXRjaCIgZXJyICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgYWRkIC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLS1lZGl0IDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1lZGl0IiBlcnIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBhZGQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9bGlzdCAtLSBmaWxlQS50IDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggcGF0aHNwZWMgYXJndW1lbnRzIiBlcnIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBhZGQgLS1wYXRoc3BlYy1maWxlLW51bCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIi0tcGF0aHNwZWMtZmlsZS1udWwgcmVxdWlyZXMgLS1wYXRoc3BlYy1mcm9tLWZpbGUiIGVyciAmJgorCisJIyBUaGlzIGNhc2Ugc3VjY2VlZHMsIGJ1dCBzdGlsbCBwcmludHMgdG8gc3RkZXJyCisJZ2l0IGFkZCAtLXBhdGhzcGVjLWZyb20tZmlsZT1lbXB0eV9saXN0IDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiTm90aGluZyBzcGVjaWZpZWQsIG5vdGhpbmcgYWRkZWQuIiBlcnIKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzODAwLW1rdGFnLnNoIGIvdC90MzgwMC1ta3RhZy5zaAppbmRleCA4ZWI0Nzk0Li42NGRjYzVlIDEwMDc1NQotLS0gYS90L3QzODAwLW1rdGFnLnNoCisrKyBiL3QvdDM4MDAtbWt0YWcuc2gKQEAgLTIzLDYgKzIzLDcgQEAKICMgZmlyc3QgY3JlYXRlIGEgY29tbWl0LCBzbyB3ZSBoYXZlIGEgdmFsaWQgb2JqZWN0L3R5cGUKICMgZm9yIHRoZSB0YWcuCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCcgJworCXRlc3Rfb2lkX2luaXQgJiYKIAllY2hvIEhlbGxvID5BICYmCiAJZ2l0IHVwZGF0ZS1pbmRleCAtLWFkZCBBICYmCiAJZ2l0IGNvbW1pdCAtbSAiSW5pdGlhbCBjb21taXQiICYmCkBAIC02OSwyOCArNzAsMjggQEAKICMgIDQuIHR5cGUgbGluZSBsYWJlbCBjaGVjawogCiBjYXQgPnRhZy5zaWcgPDxFT0YKLW9iamVjdCA3NzllOWIzMzk4NmIxYzI2NzBmZmY1MmM1MDY3NjAzMTE3YjNlODk1CitvYmplY3QgJGhlYWQKIHh4eHggdGFnCiB0YWcgbXl0YWcKIHRhZ2dlciAuIDw+IDAgKzAwMDAKIAogRU9GCiAKLWNoZWNrX3ZlcmlmeV9mYWlsdXJlICcidHlwZSIgbGluZSBsYWJlbCBjaGVjaycgJ15lcnJvcjogY2hhcjQ3OiAuKiJcXG50eXBlICIkJworY2hlY2tfdmVyaWZ5X2ZhaWx1cmUgJyJ0eXBlIiBsaW5lIGxhYmVsIGNoZWNrJyAnXmVycm9yOiBjaGFyLio6IC4qIlxcbnR5cGUgIiQnCiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogIyAgNS4gdHlwZSBsaW5lIGVvbCBjaGVjawogCi1lY2hvICJvYmplY3QgNzc5ZTliMzM5ODZiMWMyNjcwZmZmNTJjNTA2NzYwMzExN2IzZTg5NSIgPnRhZy5zaWcKK2VjaG8gIm9iamVjdCAkaGVhZCIgPnRhZy5zaWcKIHByaW50ZiAidHlwZSB0YWdzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzIiA+PnRhZy5zaWcKIAotY2hlY2tfdmVyaWZ5X2ZhaWx1cmUgJyJ0eXBlIiBsaW5lIGVvbCBjaGVjaycgJ15lcnJvcjogY2hhcjQ4OiAuKiJcXG4iJCcKK2NoZWNrX3ZlcmlmeV9mYWlsdXJlICcidHlwZSIgbGluZSBlb2wgY2hlY2snICdeZXJyb3I6IGNoYXIuKjogLioiXFxuIiQnCiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogIyAgNi4gdGFnIGxpbmUgbGFiZWwgY2hlY2sgIzEKIAogY2F0ID50YWcuc2lnIDw8RU9GCi1vYmplY3QgNzc5ZTliMzM5ODZiMWMyNjcwZmZmNTJjNTA2NzYwMzExN2IzZTg5NQorb2JqZWN0ICRoZWFkCiB0eXBlIHRhZwogeHh4IG15dGFnCiB0YWdnZXIgLiA8PiAwICswMDAwCkBAIC05OCwzNyArOTksMzcgQEAKIEVPRgogCiBjaGVja192ZXJpZnlfZmFpbHVyZSAnInRhZyIgbGluZSBsYWJlbCBjaGVjayAjMScgXAotCSdeZXJyb3I6IGNoYXI1Nzogbm8gInRhZyAiIGZvdW5kJCcKKwknXmVycm9yOiBjaGFyLio6IG5vICJ0YWcgIiBmb3VuZCQnCiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogIyAgNy4gdGFnIGxpbmUgbGFiZWwgY2hlY2sgIzIKIAogY2F0ID50YWcuc2lnIDw8RU9GCi1vYmplY3QgNzc5ZTliMzM5ODZiMWMyNjcwZmZmNTJjNTA2NzYwMzExN2IzZTg5NQorb2JqZWN0ICRoZWFkCiB0eXBlIHRhZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZwogdGFnCiBFT0YKIAogY2hlY2tfdmVyaWZ5X2ZhaWx1cmUgJyJ0YWciIGxpbmUgbGFiZWwgY2hlY2sgIzInIFwKLQknXmVycm9yOiBjaGFyODc6IG5vICJ0YWcgIiBmb3VuZCQnCisJJ15lcnJvcjogY2hhci4qOiBubyAidGFnICIgZm91bmQkJwogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMgIDguIHR5cGUgbGluZSB0eXBlLW5hbWUgbGVuZ3RoIGNoZWNrCiAKIGNhdCA+dGFnLnNpZyA8PEVPRgotb2JqZWN0IDc3OWU5YjMzOTg2YjFjMjY3MGZmZjUyYzUwNjc2MDMxMTdiM2U4OTUKK29iamVjdCAkaGVhZAogdHlwZSB0YWdnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2cKIHRhZyBteXRhZwogRU9GCiAKIGNoZWNrX3ZlcmlmeV9mYWlsdXJlICcidHlwZSIgbGluZSB0eXBlLW5hbWUgbGVuZ3RoIGNoZWNrJyBcCi0JJ15lcnJvcjogY2hhcjUzOiB0eXBlIHRvbyBsb25nJCcKKwknXmVycm9yOiBjaGFyLio6IHR5cGUgdG9vIGxvbmckJwogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMgIDkuIHZlcmlmeSBvYmplY3QgKFNIQTEvdHlwZSkgY2hlY2sKIAogY2F0ID50YWcuc2lnIDw8RU9GCi1vYmplY3QgNzc5ZTliMzM5ODZiMWMyNjcwZmZmNTJjNTA2NzYwMzExN2IzZTg5NQorb2JqZWN0ICQodGVzdF9vaWQgZGVhZGJlZWYpCiB0eXBlIHRhZ2dnZwogdGFnIG15dGFnCiB0YWdnZXIgLiA8PiAwICswMDAwCkBAIC0xNTAsNyArMTUxLDcgQEAKIEVPRgogCiBjaGVja192ZXJpZnlfZmFpbHVyZSAndmVyaWZ5IHRhZy1uYW1lIGNoZWNrJyBcCi0JJ15lcnJvcjogY2hhcjY3OiBjb3VsZCBub3QgdmVyaWZ5IHRhZyBuYW1lJCcKKwknXmVycm9yOiBjaGFyLio6IGNvdWxkIG5vdCB2ZXJpZnkgdGFnIG5hbWUkJwogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMgMTEuIHRhZ2dlciBsaW5lIGxhYmVsIGNoZWNrICMxCkBAIC0xNjQsNyArMTY1LDcgQEAKIEVPRgogCiBjaGVja192ZXJpZnlfZmFpbHVyZSAnInRhZ2dlciIgbGluZSBsYWJlbCBjaGVjayAjMScgXAotCSdeZXJyb3I6IGNoYXI3MDogY291bGQgbm90IGZpbmQgInRhZ2dlciAiJCcKKwknXmVycm9yOiBjaGFyLio6IGNvdWxkIG5vdCBmaW5kICJ0YWdnZXIgIiQnCiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogIyAxMi4gdGFnZ2VyIGxpbmUgbGFiZWwgY2hlY2sgIzIKQEAgLTE3OSw3ICsxODAsNyBAQAogRU9GCiAKIGNoZWNrX3ZlcmlmeV9mYWlsdXJlICcidGFnZ2VyIiBsaW5lIGxhYmVsIGNoZWNrICMyJyBcCi0JJ15lcnJvcjogY2hhcjcwOiBjb3VsZCBub3QgZmluZCAidGFnZ2VyICIkJworCSdeZXJyb3I6IGNoYXIuKjogY291bGQgbm90IGZpbmQgInRhZ2dlciAiJCcKIAogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAjIDEzLiBkaXNhbGxvdyBtaXNzaW5nIHRhZyBhdXRob3IgbmFtZQpAQCAtMTk0LDcgKzE5NSw3IEBACiBFT0YKIAogY2hlY2tfdmVyaWZ5X2ZhaWx1cmUgJ2Rpc2FsbG93IG1pc3NpbmcgdGFnIGF1dGhvciBuYW1lJyBcCi0JJ15lcnJvcjogY2hhcjc3OiBtaXNzaW5nIHRhZ2dlciBuYW1lJCcKKwknXmVycm9yOiBjaGFyLio6IG1pc3NpbmcgdGFnZ2VyIG5hbWUkJwogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMgMTQuIGRpc2FsbG93IG1pc3NpbmcgdGFnIGF1dGhvciBuYW1lCkBAIC0yMDksNyArMjEwLDcgQEAKIEVPRgogCiBjaGVja192ZXJpZnlfZmFpbHVyZSAnZGlzYWxsb3cgbWFsZm9ybWVkIHRhZ2dlcicgXAotCSdeZXJyb3I6IGNoYXI3NzogbWFsZm9ybWVkIHRhZ2dlciBmaWVsZCQnCisJJ15lcnJvcjogY2hhci4qOiBtYWxmb3JtZWQgdGFnZ2VyIGZpZWxkJCcKIAogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAjIDE1LiBhbGxvdyBlbXB0eSB0YWcgZW1haWwKQEAgLTIzOCw3ICsyMzksNyBAQAogRU9GCiAKIGNoZWNrX3ZlcmlmeV9mYWlsdXJlICdkaXNhbGxvdyBzcGFjZXMgaW4gdGFnIGVtYWlsJyBcCi0JJ15lcnJvcjogY2hhcjc3OiBtYWxmb3JtZWQgdGFnZ2VyIGZpZWxkJCcKKwknXmVycm9yOiBjaGFyLio6IG1hbGZvcm1lZCB0YWdnZXIgZmllbGQkJwogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMgMTcuIGRpc2FsbG93IG1pc3NpbmcgdGFnIHRpbWVzdGFtcApAQCAtMjUyLDcgKzI1Myw3IEBACiBFT0YKIAogY2hlY2tfdmVyaWZ5X2ZhaWx1cmUgJ2Rpc2FsbG93IG1pc3NpbmcgdGFnIHRpbWVzdGFtcCcgXAotCSdeZXJyb3I6IGNoYXIxMDc6IG1pc3NpbmcgdGFnIHRpbWVzdGFtcCQnCisJJ15lcnJvcjogY2hhci4qOiBtaXNzaW5nIHRhZyB0aW1lc3RhbXAkJwogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMgMTguIGRldGVjdCBpbnZhbGlkIHRhZyB0aW1lc3RhbXAxCkBAIC0yNjYsNyArMjY3LDcgQEAKIEVPRgogCiBjaGVja192ZXJpZnlfZmFpbHVyZSAnZGV0ZWN0IGludmFsaWQgdGFnIHRpbWVzdGFtcDEnIFwKLQknXmVycm9yOiBjaGFyMTA3OiBtaXNzaW5nIHRhZyB0aW1lc3RhbXAkJworCSdeZXJyb3I6IGNoYXIuKjogbWlzc2luZyB0YWcgdGltZXN0YW1wJCcKIAogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAjIDE5LiBkZXRlY3QgaW52YWxpZCB0YWcgdGltZXN0YW1wMgpAQCAtMjgwLDcgKzI4MSw3IEBACiBFT0YKIAogY2hlY2tfdmVyaWZ5X2ZhaWx1cmUgJ2RldGVjdCBpbnZhbGlkIHRhZyB0aW1lc3RhbXAyJyBcCi0JJ15lcnJvcjogY2hhcjExMTogbWFsZm9ybWVkIHRhZyB0aW1lc3RhbXAkJworCSdeZXJyb3I6IGNoYXIuKjogbWFsZm9ybWVkIHRhZyB0aW1lc3RhbXAkJwogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMgMjAuIGRldGVjdCBpbnZhbGlkIHRhZyB0aW1lem9uZTEKQEAgLTI5NCw3ICsyOTUsNyBAQAogRU9GCiAKIGNoZWNrX3ZlcmlmeV9mYWlsdXJlICdkZXRlY3QgaW52YWxpZCB0YWcgdGltZXpvbmUxJyBcCi0JJ15lcnJvcjogY2hhcjExODogbWFsZm9ybWVkIHRhZyB0aW1lem9uZSQnCisJJ15lcnJvcjogY2hhci4qOiBtYWxmb3JtZWQgdGFnIHRpbWV6b25lJCcKIAogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAjIDIxLiBkZXRlY3QgaW52YWxpZCB0YWcgdGltZXpvbmUyCkBAIC0zMDgsNyArMzA5LDcgQEAKIEVPRgogCiBjaGVja192ZXJpZnlfZmFpbHVyZSAnZGV0ZWN0IGludmFsaWQgdGFnIHRpbWV6b25lMicgXAotCSdeZXJyb3I6IGNoYXIxMTg6IG1hbGZvcm1lZCB0YWcgdGltZXpvbmUkJworCSdeZXJyb3I6IGNoYXIuKjogbWFsZm9ybWVkIHRhZyB0aW1lem9uZSQnCiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogIyAyMi4gZGV0ZWN0IGludmFsaWQgdGFnIHRpbWV6b25lMwpAQCAtMzIyLDcgKzMyMyw3IEBACiBFT0YKIAogY2hlY2tfdmVyaWZ5X2ZhaWx1cmUgJ2RldGVjdCBpbnZhbGlkIHRhZyB0aW1lem9uZTMnIFwKLQknXmVycm9yOiBjaGFyMTE4OiBtYWxmb3JtZWQgdGFnIHRpbWV6b25lJCcKKwknXmVycm9yOiBjaGFyLio6IG1hbGZvcm1lZCB0YWcgdGltZXpvbmUkJwogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMgMjMuIGRldGVjdCBpbnZhbGlkIGhlYWRlciBlbnRyeQpAQCAtMzM3LDcgKzMzOCw3IEBACiBFT0YKIAogY2hlY2tfdmVyaWZ5X2ZhaWx1cmUgJ2RldGVjdCBpbnZhbGlkIGhlYWRlciBlbnRyeScgXAotCSdeZXJyb3I6IGNoYXIxMjQ6IHRyYWlsaW5nIGdhcmJhZ2UgaW4gdGFnIGhlYWRlciQnCisJJ15lcnJvcjogY2hhci4qOiB0cmFpbGluZyBnYXJiYWdlIGluIHRhZyBoZWFkZXIkJwogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMgMjQuIGNyZWF0ZSB2YWxpZCB0YWcKZGlmZiAtLWdpdCBhL3QvdDM5MDAtaTE4bi1jb21taXQuc2ggYi90L3QzOTAwLWkxOG4tY29tbWl0LnNoCmluZGV4IGI5MmZmOTUuLmQyNzdhOWYgMTAwNzU1Ci0tLSBhL3QvdDM5MDAtaTE4bi1jb21taXQuc2gKKysrIGIvdC90MzkwMC1pMThuLWNvbW1pdC5zaApAQCAtMjA0LDQgKzIwNCw0MSBAQAogCiB0ZXN0X2NvbW1pdF9hdXRvc3F1YXNoX2ZsYWdzIElTTy0yMDIyLUpQIHNxdWFzaAogCit0ZXN0X2NvbW1pdF9hdXRvc3F1YXNoX211bHRpX2VuY29kaW5nICgpIHsKKwlmbGFnPSQxCisJb2xkPSQyCisJbmV3PSQzCisJbXNnPSQ0CisJdGVzdF9leHBlY3Rfc3VjY2VzcyAiY29tbWl0IC0tJGZsYWcgaW50byAkb2xkIGZyb20gJG5ldyIgJworCQlnaXQgY2hlY2tvdXQgLWIgJGZsYWctJG9sZC0kbmV3IEMwICYmCisJCWdpdCBjb25maWcgaTE4bi5jb21taXRlbmNvZGluZyAkb2xkICYmCisJCWVjaG8gJG9sZCA+PkYgJiYKKwkJZ2l0IGNvbW1pdCAtYSAtRiAiJFRFU1RfRElSRUNUT1JZIi90MzkwMC8kbXNnICYmCisJCXRlc3RfdGljayAmJgorCQllY2hvIGludGVybWVkaWF0ZSBzdHVmZiA+PkcgJiYKKwkJZ2l0IGFkZCBHICYmCisJCWdpdCBjb21taXQgLWEgLW0gImludGVybWVkaWF0ZSBjb21taXQiICYmCisJCXRlc3RfdGljayAmJgorCQlnaXQgY29uZmlnIGkxOG4uY29tbWl0ZW5jb2RpbmcgJG5ldyAmJgorCQllY2hvICRuZXctJGZsYWcgPj5GICYmCisJCWdpdCBjb21taXQgLWEgLS0kZmxhZyBIRUFEXiAmJgorCQlnaXQgcmViYXNlIC0tYXV0b3NxdWFzaCAtaSBIRUFEXl5eICYmCisJCWdpdCByZXYtbGlzdCBIRUFEID5hY3R1YWwgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMyBhY3R1YWwgJiYKKwkJaWNvbnYgLWYgJG9sZCAtdCBVVEYtOCAiJFRFU1RfRElSRUNUT1JZIi90MzkwMC8kbXNnID5leHBlY3QgJiYKKwkJaWYgdGVzdCAkZmxhZyA9IHNxdWFzaDsgdGhlbgorCQkJc3ViamVjdD0iJChoZWFkIC0xIGV4cGVjdCkiICYmCisJCQlwcmludGYgIlxuc3F1YXNoISAlc1xuIiAiJHN1YmplY3QiID4+ZXhwZWN0CisJCWZpICYmCisJCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRF4gPnJhdyAmJgorCQkoc2VkICIxLC9eJC9kIiByYXcgfCBpY29udiAtZiAkbmV3IC10IHV0Zi04KSA+YWN0dWFsICYmCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwknCit9CisKK3Rlc3RfY29tbWl0X2F1dG9zcXVhc2hfbXVsdGlfZW5jb2RpbmcgZml4dXAgVVRGLTggSVNPLTg4NTktMSAxLVVURi04LnR4dAordGVzdF9jb21taXRfYXV0b3NxdWFzaF9tdWx0aV9lbmNvZGluZyBzcXVhc2ggSVNPLTg4NTktMSBVVEYtOCBJU084ODU5LTEudHh0Cit0ZXN0X2NvbW1pdF9hdXRvc3F1YXNoX211bHRpX2VuY29kaW5nIHNxdWFzaCBldWNKUCBJU08tMjAyMi1KUCBldWNKUC50eHQKK3Rlc3RfY29tbWl0X2F1dG9zcXVhc2hfbXVsdGlfZW5jb2RpbmcgZml4dXAgSVNPLTIwMjItSlAgVVRGLTggSVNPLTIwMjItSlAudHh0CisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MzkwMy1zdGFzaC5zaCBiL3QvdDM5MDMtc3Rhc2guc2gKaW5kZXggY2QyMTY2NS4uM2FkMjNlMiAxMDA3NTUKLS0tIGEvdC90MzkwMy1zdGFzaC5zaAorKysgYi90L3QzOTAzLXN0YXNoLnNoCkBAIC03LDIzICs3LDM1IEBACiAKIC4gLi90ZXN0LWxpYi5zaAogCitkaWZmX2NtcCAoKSB7CisJZm9yIGkgaW4gIiQxIiAiJDIiCisJZG8KKwkJc2VkIC1lICdzL15pbmRleCAwMDAwMDAwXC5cLlswLTlhLWZdKi9pbmRleCAwMDAwMDAwLi4xMjM0NTY3LycgXAorCQktZSAncy9eaW5kZXggWzAtOWEtZl0qXC5cLlswLTlhLWZdKi9pbmRleCAxMjM0NTY3Li44OWFiY2RlLycgXAorCQktZSAncy9eaW5kZXggWzAtOWEtZl0qLFswLTlhLWZdKlwuXC5bMC05YS1mXSovaW5kZXggMTIzNDU2Nyw3NjU0MzIxLi44OWFiY2RlLycgXAorCQkiJGkiID4iJGkuY29tcGFyZSIgfHwgcmV0dXJuIDEKKwlkb25lICYmCisJdGVzdF9jbXAgIiQxLmNvbXBhcmUiICIkMi5jb21wYXJlIiAmJgorCXJtIC1mICIkMS5jb21wYXJlIiAiJDIuY29tcGFyZSIKK30KKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3Rhc2ggc29tZSBkaXJ0eSB3b3JraW5nIGRpcmVjdG9yeScgJwotCWVjaG8gMSA+IGZpbGUgJiYKKwllY2hvIDEgPmZpbGUgJiYKIAlnaXQgYWRkIGZpbGUgJiYKIAllY2hvIHVucmVsYXRlZCA+b3RoZXItZmlsZSAmJgogCWdpdCBhZGQgb3RoZXItZmlsZSAmJgogCXRlc3RfdGljayAmJgogCWdpdCBjb21taXQgLW0gaW5pdGlhbCAmJgotCWVjaG8gMiA+IGZpbGUgJiYKKwllY2hvIDIgPmZpbGUgJiYKIAlnaXQgYWRkIGZpbGUgJiYKLQllY2hvIDMgPiBmaWxlICYmCisJZWNobyAzID5maWxlICYmCiAJdGVzdF90aWNrICYmCiAJZ2l0IHN0YXNoICYmCiAJZ2l0IGRpZmYtZmlsZXMgLS1xdWlldCAmJgogCWdpdCBkaWZmLWluZGV4IC0tY2FjaGVkIC0tcXVpZXQgSEVBRAogJwogCi1jYXQgPiBleHBlY3QgPDwgRU9GCitjYXQgPmV4cGVjdCA8PEVPRgogZGlmZiAtLWdpdCBhL2ZpbGUgYi9maWxlCiBpbmRleCAwY2ZiZjA4Li4wMDc1MGVkIDEwMDY0NAogLS0tIGEvZmlsZQpAQCAtMzUsOCArNDcsOCBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwYXJlbnRzIG9mIHN0YXNoJyAnCiAJdGVzdCAkKGdpdCByZXYtcGFyc2Ugc3Rhc2heKSA9ICQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgotCWdpdCBkaWZmIHN0YXNoXjIuLnN0YXNoID4gb3V0cHV0ICYmCi0JdGVzdF9jbXAgZXhwZWN0IG91dHB1dAorCWdpdCBkaWZmIHN0YXNoXjIuLnN0YXNoID5vdXRwdXQgJiYKKwlkaWZmX2NtcCBleHBlY3Qgb3V0cHV0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FwcGx5aW5nIGJvZ3VzIHN0YXNoIGRvZXMgbm90aGluZycgJwpAQCAtNzQsNyArODYsNyBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhcHBseSBzdGFzaGVkIGNoYW5nZXMgKGluY2x1ZGluZyBpbmRleCknICcKIAlnaXQgcmVzZXQgLS1oYXJkIEhFQUReICYmCi0JZWNobyA2ID4gb3RoZXItZmlsZSAmJgorCWVjaG8gNiA+b3RoZXItZmlsZSAmJgogCWdpdCBhZGQgb3RoZXItZmlsZSAmJgogCXRlc3RfdGljayAmJgogCWdpdCBjb21taXQgLW0gb3RoZXItZmlsZSAmJgpAQCAtOTksMTIgKzExMSwxMiBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkcm9wIHRvcCBzdGFzaCcgJwogCWdpdCByZXNldCAtLWhhcmQgJiYKLQlnaXQgc3Rhc2ggbGlzdCA+IHN0YXNobGlzdDEgJiYKLQllY2hvIDcgPiBmaWxlICYmCisJZ2l0IHN0YXNoIGxpc3QgPmV4cGVjdGVkICYmCisJZWNobyA3ID5maWxlICYmCiAJZ2l0IHN0YXNoICYmCiAJZ2l0IHN0YXNoIGRyb3AgJiYKLQlnaXQgc3Rhc2ggbGlzdCA+IHN0YXNobGlzdDIgJiYKLQl0ZXN0X2NtcCBzdGFzaGxpc3QxIHN0YXNobGlzdDIgJiYKKwlnaXQgc3Rhc2ggbGlzdCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsICYmCiAJZ2l0IHN0YXNoIGFwcGx5ICYmCiAJdGVzdCAzID0gJChjYXQgZmlsZSkgJiYKIAl0ZXN0IDEgPSAkKGdpdCBzaG93IDpmaWxlKSAmJgpAQCAtMTEzLDkgKzEyNSw5IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Ryb3AgbWlkZGxlIHN0YXNoJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgotCWVjaG8gOCA+IGZpbGUgJiYKKwllY2hvIDggPmZpbGUgJiYKIAlnaXQgc3Rhc2ggJiYKLQllY2hvIDkgPiBmaWxlICYmCisJZWNobyA5ID5maWxlICYmCiAJZ2l0IHN0YXNoICYmCiAJZ2l0IHN0YXNoIGRyb3Agc3Rhc2hAezF9ICYmCiAJdGVzdCAyID0gJChnaXQgc3Rhc2ggbGlzdCB8IHdjIC1sKSAmJgpAQCAtMTYwLDcgKzE3Miw3IEBACiAJdGVzdCAwID0gJChnaXQgc3Rhc2ggbGlzdCB8IHdjIC1sKQogJwogCi1jYXQgPiBleHBlY3QgPDwgRU9GCitjYXQgPmV4cGVjdCA8PEVPRgogZGlmZiAtLWdpdCBhL2ZpbGUyIGIvZmlsZTIKIG5ldyBmaWxlIG1vZGUgMTAwNjQ0CiBpbmRleCAwMDAwMDAwLi4xZmU5MTJjCkBAIC0xNzAsNyArMTgyLDcgQEAKICtiYXIyCiBFT0YKIAotY2F0ID4gZXhwZWN0MSA8PCBFT0YKK2NhdCA+ZXhwZWN0MSA8PEVPRgogZGlmZiAtLWdpdCBhL2ZpbGUgYi9maWxlCiBpbmRleCAyNTdjYzU2Li41NzE2Y2E1IDEwMDY0NAogLS0tIGEvZmlsZQpAQCAtMTgwLDcgKzE5Miw3IEBACiArYmFyCiBFT0YKIAotY2F0ID4gZXhwZWN0MiA8PCBFT0YKK2NhdCA+ZXhwZWN0MiA8PEVPRgogZGlmZiAtLWdpdCBhL2ZpbGUgYi9maWxlCiBpbmRleCA3NjAxODA3Li41NzE2Y2E1IDEwMDY0NAogLS0tIGEvZmlsZQpAQCAtMTk4LDc5ICsyMTAsODkgQEAKIEVPRgogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGFzaCBicmFuY2gnICcKLQllY2hvIGZvbyA+IGZpbGUgJiYKKwllY2hvIGZvbyA+ZmlsZSAmJgogCWdpdCBjb21taXQgZmlsZSAtbSBmaXJzdCAmJgotCWVjaG8gYmFyID4gZmlsZSAmJgotCWVjaG8gYmFyMiA+IGZpbGUyICYmCisJZWNobyBiYXIgPmZpbGUgJiYKKwllY2hvIGJhcjIgPmZpbGUyICYmCiAJZ2l0IGFkZCBmaWxlMiAmJgogCWdpdCBzdGFzaCAmJgotCWVjaG8gYmF6ID4gZmlsZSAmJgorCWVjaG8gYmF6ID5maWxlICYmCiAJZ2l0IGNvbW1pdCBmaWxlIC1tIHNlY29uZCAmJgogCWdpdCBzdGFzaCBicmFuY2ggc3Rhc2hicmFuY2ggJiYKIAl0ZXN0IHJlZnMvaGVhZHMvc3Rhc2hicmFuY2ggPSAkKGdpdCBzeW1ib2xpYy1yZWYgSEVBRCkgJiYKIAl0ZXN0ICQoZ2l0IHJldi1wYXJzZSBIRUFEKSA9ICQoZ2l0IHJldi1wYXJzZSBtYXN0ZXJeKSAmJgotCWdpdCBkaWZmIC0tY2FjaGVkID4gb3V0cHV0ICYmCi0JdGVzdF9jbXAgZXhwZWN0IG91dHB1dCAmJgotCWdpdCBkaWZmID4gb3V0cHV0ICYmCi0JdGVzdF9jbXAgZXhwZWN0MSBvdXRwdXQgJiYKKwlnaXQgZGlmZiAtLWNhY2hlZCA+b3V0cHV0ICYmCisJZGlmZl9jbXAgZXhwZWN0IG91dHB1dCAmJgorCWdpdCBkaWZmID5vdXRwdXQgJiYKKwlkaWZmX2NtcCBleHBlY3QxIG91dHB1dCAmJgogCWdpdCBhZGQgZmlsZSAmJgogCWdpdCBjb21taXQgLW0gYWx0ZXJuYXRlXCBzZWNvbmQgJiYKLQlnaXQgZGlmZiBtYXN0ZXIuLnN0YXNoYnJhbmNoID4gb3V0cHV0ICYmCi0JdGVzdF9jbXAgb3V0cHV0IGV4cGVjdDIgJiYKKwlnaXQgZGlmZiBtYXN0ZXIuLnN0YXNoYnJhbmNoID5vdXRwdXQgJiYKKwlkaWZmX2NtcCBvdXRwdXQgZXhwZWN0MiAmJgogCXRlc3QgMCA9ICQoZ2l0IHN0YXNoIGxpc3QgfCB3YyAtbCkKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYXBwbHkgLXEgaXMgcXVpZXQnICcKLQllY2hvIGZvbyA+IGZpbGUgJiYKKwllY2hvIGZvbyA+ZmlsZSAmJgogCWdpdCBzdGFzaCAmJgotCWdpdCBzdGFzaCBhcHBseSAtcSA+IG91dHB1dC5vdXQgMj4mMSAmJgorCWdpdCBzdGFzaCBhcHBseSAtcSA+b3V0cHV0Lm91dCAyPiYxICYmCiAJdGVzdF9tdXN0X2JlX2VtcHR5IG91dHB1dC5vdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2F2ZSAtcSBpcyBxdWlldCcgJwotCWdpdCBzdGFzaCBzYXZlIC0tcXVpZXQgPiBvdXRwdXQub3V0IDI+JjEgJiYKKwlnaXQgc3Rhc2ggc2F2ZSAtLXF1aWV0ID5vdXRwdXQub3V0IDI+JjEgJiYKIAl0ZXN0X211c3RfYmVfZW1wdHkgb3V0cHV0Lm91dAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdwb3AgLXEgaXMgcXVpZXQnICcKLQlnaXQgc3Rhc2ggcG9wIC1xID4gb3V0cHV0Lm91dCAyPiYxICYmCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwb3AgLXEgd29ya3MgYW5kIGlzIHF1aWV0JyAnCisJZ2l0IHN0YXNoIHBvcCAtcSA+b3V0cHV0Lm91dCAyPiYxICYmCisJZWNobyBiYXIgPmV4cGVjdCAmJgorCWdpdCBzaG93IDpmaWxlID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAJdGVzdF9tdXN0X2JlX2VtcHR5IG91dHB1dC5vdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncG9wIC1xIC0taW5kZXggd29ya3MgYW5kIGlzIHF1aWV0JyAnCi0JZWNobyBmb28gPiBmaWxlICYmCisJZWNobyBmb28gPmZpbGUgJiYKIAlnaXQgYWRkIGZpbGUgJiYKIAlnaXQgc3Rhc2ggc2F2ZSAtLXF1aWV0ICYmCi0JZ2l0IHN0YXNoIHBvcCAtcSAtLWluZGV4ID4gb3V0cHV0Lm91dCAyPiYxICYmCisJZ2l0IHN0YXNoIHBvcCAtcSAtLWluZGV4ID5vdXRwdXQub3V0IDI+JjEgJiYKKwlnaXQgZGlmZi1maWxlcyBmaWxlMiA+ZmlsZTIuZGlmZiAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBmaWxlMi5kaWZmICYmCiAJdGVzdCBmb28gPSAiJChnaXQgc2hvdyA6ZmlsZSkiICYmCiAJdGVzdF9tdXN0X2JlX2VtcHR5IG91dHB1dC5vdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZHJvcCAtcSBpcyBxdWlldCcgJwogCWdpdCBzdGFzaCAmJgotCWdpdCBzdGFzaCBkcm9wIC1xID4gb3V0cHV0Lm91dCAyPiYxICYmCisJZ2l0IHN0YXNoIGRyb3AgLXEgPm91dHB1dC5vdXQgMj4mMSAmJgogCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXRwdXQub3V0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXNoIC1rJyAnCi0JZWNobyBiYXIzID4gZmlsZSAmJgotCWVjaG8gYmFyNCA+IGZpbGUyICYmCisJZWNobyBiYXIzID5maWxlICYmCisJZWNobyBiYXI0ID5maWxlMiAmJgogCWdpdCBhZGQgZmlsZTIgJiYKIAlnaXQgc3Rhc2ggLWsgJiYKIAl0ZXN0IGJhcixiYXI0ID0gJChjYXQgZmlsZSksJChjYXQgZmlsZTIpCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXNoIC0tbm8ta2VlcC1pbmRleCcgJwotCWVjaG8gYmFyMzMgPiBmaWxlICYmCi0JZWNobyBiYXI0NCA+IGZpbGUyICYmCisJZWNobyBiYXIzMyA+ZmlsZSAmJgorCWVjaG8gYmFyNDQgPmZpbGUyICYmCiAJZ2l0IGFkZCBmaWxlMiAmJgogCWdpdCBzdGFzaCAtLW5vLWtlZXAtaW5kZXggJiYKIAl0ZXN0IGJhcixiYXIyID0gJChjYXQgZmlsZSksJChjYXQgZmlsZTIpCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RvbnQgYXNzdW1lIHB1c2ggd2l0aCBub24tb3B0aW9uIGFyZ3MnICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgc3Rhc2ggLXEgZHJvcCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgInN1YmNvbW1hbmQgd2FzbidcJyd0IHNwZWNpZmllZDsgJ1wnJ3B1c2gnXCcnIGNhbidcJyd0IGJlIGFzc3VtZWQgZHVlIHRvIHVuZXhwZWN0ZWQgdG9rZW4gJ1wnJ2Ryb3AnXCcnIiBlcnIKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3Rhc2ggLS1pbnZhbGlkLW9wdGlvbicgJwotCWVjaG8gYmFyNSA+IGZpbGUgJiYKLQllY2hvIGJhcjYgPiBmaWxlMiAmJgorCWVjaG8gYmFyNSA+ZmlsZSAmJgorCWVjaG8gYmFyNiA+ZmlsZTIgJiYKIAlnaXQgYWRkIGZpbGUyICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHN0YXNoIC0taW52YWxpZC1vcHRpb24gJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgc3Rhc2ggc2F2ZSAtLWludmFsaWQtb3B0aW9uICYmCkBAIC0yODcsNiArMzA5LDE0IEBACiAJdGVzdCBuZXcgPSAiJChjYXQgZmlsZTMpIgogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGFzaCAtLWludGVudC10by1hZGQgZmlsZScgJworCWdpdCByZXNldCAtLWhhcmQgJiYKKwllY2hvIG5ldyA+ZmlsZTQgJiYKKwlnaXQgYWRkIC0taW50ZW50LXRvLWFkZCBmaWxlNCAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJtIC1mIGZpbGU0IiAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBzdGFzaAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGFzaCBybSB0aGVuIHJlY3JlYXRlJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWdpdCBybSBmaWxlICYmCkBAIC00NDQsNiArNDc0LDM2IEBACiAJdGVzdCBmb28gPSAiJChjYXQgZmlsZS9maWxlKSIKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l2aW5nIHRvbyBtYW55IHJlZiBhcmd1bWVudHMgZG9lcyBub3QgbW9kaWZ5IGZpbGVzJyAnCisJZ2l0IHN0YXNoIGNsZWFyICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVzZXQgLS1oYXJkIEhFQUQiICYmCisJZWNobyBmb28gPmZpbGUyICYmCisJZ2l0IHN0YXNoICYmCisJZWNobyBiYXIgPmZpbGUyICYmCisJZ2l0IHN0YXNoICYmCisJdGVzdC10b29sIGNobXRpbWUgPTEyMzQ1Njc4OSBmaWxlMiAmJgorCWZvciB0eXBlIGluIGFwcGx5IHBvcCAiYnJhbmNoIHN0YXNoLWJyYW5jaCIKKwlkbworCQl0ZXN0X211c3RfZmFpbCBnaXQgc3Rhc2ggJHR5cGUgc3Rhc2hAezB9IHN0YXNoQHsxfSAyPmVyciAmJgorCQl0ZXN0X2kxOG5ncmVwICJUb28gbWFueSByZXZpc2lvbnMiIGVyciAmJgorCQl0ZXN0IDEyMzQ1Njc4OSA9ICQodGVzdC10b29sIGNobXRpbWUgLWcgZmlsZTIpIHx8IHJldHVybiAxCisJZG9uZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkcm9wOiB0b28gbWFueSBhcmd1bWVudHMgZXJyb3JzIG91dCAoZG9lcyBub3RoaW5nKScgJworCWdpdCBzdGFzaCBsaXN0ID5leHBlY3QgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgc3Rhc2ggZHJvcCBzdGFzaEB7MH0gc3Rhc2hAezF9IDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAiVG9vIG1hbnkgcmV2aXNpb25zIiBlcnIgJiYKKwlnaXQgc3Rhc2ggbGlzdCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaG93OiB0b28gbWFueSBhcmd1bWVudHMgZXJyb3JzIG91dCAoZG9lcyBub3RoaW5nKScgJworCXRlc3RfbXVzdF9mYWlsIGdpdCBzdGFzaCBzaG93IHN0YXNoQHswfSBzdGFzaEB7MX0gMj5lcnIgMT5vdXQgJiYKKwl0ZXN0X2kxOG5ncmVwICJUb28gbWFueSByZXZpc2lvbnMiIGVyciAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXQKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3Rhc2ggY3JlYXRlIC0gbm8gY2hhbmdlcycgJwogCWdpdCBzdGFzaCBjbGVhciAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCBIRUFEIiAmJgpAQCAtNDU2LDExICs1MTYsMTIgQEAKIAlnaXQgc3Rhc2ggY2xlYXIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQgSEVBRCIgJiYKIAlnaXQgcmVzZXQgLS1oYXJkICYmCi0JZWNobyBmb28gPj4gZmlsZSAmJgorCWVjaG8gZm9vID4+ZmlsZSAmJgogCVNUQVNIX0lEPSQoZ2l0IHN0YXNoIGNyZWF0ZSkgJiYKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZ2l0IHN0YXNoIGJyYW5jaCBzdGFzaC1icmFuY2ggJHtTVEFTSF9JRH0gJiYKLQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQgSEVBRCAmJiBnaXQgY2hlY2tvdXQgbWFzdGVyICYmIGdpdCBicmFuY2ggLUQgc3Rhc2gtYnJhbmNoIiAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCBIRUFEICYmIGdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwlnaXQgYnJhbmNoIC1EIHN0YXNoLWJyYW5jaCIgJiYKIAl0ZXN0ICQoZ2l0IGxzLWZpbGVzIC0tbW9kaWZpZWQgfCB3YyAtbCkgLWVxIDEKICcKIApAQCAtNDY4LDI1ICs1MjksMzEgQEAKIAlnaXQgc3Rhc2ggY2xlYXIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQgSEVBRCIgJiYKIAlnaXQgcmVzZXQgLS1oYXJkICYmCi0JZWNobyBmb28gPj4gZmlsZSAmJgorCWVjaG8gZm9vID4+ZmlsZSAmJgogCWdpdCBzdGFzaCAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHN0YXNoIGRyb3AiICYmCi0JZWNobyBiYXIgPj4gZmlsZSAmJgorCWVjaG8gYmFyID4+ZmlsZSAmJgogCVNUQVNIX0lEPSQoZ2l0IHN0YXNoIGNyZWF0ZSkgJiYKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZ2l0IHN0YXNoIGJyYW5jaCBzdGFzaC1icmFuY2ggJHtTVEFTSF9JRH0gJiYKLQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQgSEVBRCAmJiBnaXQgY2hlY2tvdXQgbWFzdGVyICYmIGdpdCBicmFuY2ggLUQgc3Rhc2gtYnJhbmNoIiAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCBIRUFEICYmIGdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwlnaXQgYnJhbmNoIC1EIHN0YXNoLWJyYW5jaCIgJiYKIAl0ZXN0ICQoZ2l0IGxzLWZpbGVzIC0tbW9kaWZpZWQgfCB3YyAtbCkgLWVxIDEKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3Rhc2ggYnJhbmNoIGNvbXBsYWlucyB3aXRoIG5vIGFyZ3VtZW50cycgJworCXRlc3RfbXVzdF9mYWlsIGdpdCBzdGFzaCBicmFuY2ggMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJObyBicmFuY2ggbmFtZSBzcGVjaWZpZWQiIGVycgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGFzaCBzaG93IGZvcm1hdCBkZWZhdWx0cyB0byAtLXN0YXQnICcKIAlnaXQgc3Rhc2ggY2xlYXIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQgSEVBRCIgJiYKIAlnaXQgcmVzZXQgLS1oYXJkICYmCi0JZWNobyBmb28gPj4gZmlsZSAmJgorCWVjaG8gZm9vID4+ZmlsZSAmJgogCWdpdCBzdGFzaCAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHN0YXNoIGRyb3AiICYmCi0JZWNobyBiYXIgPj4gZmlsZSAmJgorCWVjaG8gYmFyID4+ZmlsZSAmJgogCVNUQVNIX0lEPSQoZ2l0IHN0YXNoIGNyZWF0ZSkgJiYKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKQEAgLTUwMSwxMCArNTY4LDEwIEBACiAJZ2l0IHN0YXNoIGNsZWFyICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVzZXQgLS1oYXJkIEhFQUQiICYmCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgotCWVjaG8gZm9vID4+IGZpbGUgJiYKKwllY2hvIGZvbyA+PmZpbGUgJiYKIAlnaXQgc3Rhc2ggJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCBzdGFzaCBkcm9wIiAmJgotCWVjaG8gYmFyID4+IGZpbGUgJiYKKwllY2hvIGJhciA+PmZpbGUgJiYKIAlTVEFTSF9JRD0kKGdpdCBzdGFzaCBjcmVhdGUpICYmCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWVjaG8gIjEJMAlmaWxlIiA+ZXhwZWN0ZWQgJiYKQEAgLTUxNiwxMCArNTgzLDEwIEBACiAJZ2l0IHN0YXNoIGNsZWFyICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVzZXQgLS1oYXJkIEhFQUQiICYmCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgotCWVjaG8gZm9vID4+IGZpbGUgJiYKKwllY2hvIGZvbyA+PmZpbGUgJiYKIAlnaXQgc3Rhc2ggJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCBzdGFzaCBkcm9wIiAmJgotCWVjaG8gYmFyID4+IGZpbGUgJiYKKwllY2hvIGJhciA+PmZpbGUgJiYKIAlTVEFTSF9JRD0kKGdpdCBzdGFzaCBjcmVhdGUpICYmCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCkBAIC01MzIsMTQgKzU5OSwxNCBAQAogCStiYXIKIAlFT0YKIAlnaXQgc3Rhc2ggc2hvdyAtcCAke1NUQVNIX0lEfSA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXNoIHNob3cgLSBubyBzdGFzaGVzIG9uIHN0YWNrLCBzdGFzaC1saWtlIGFyZ3VtZW50JyAnCiAJZ2l0IHN0YXNoIGNsZWFyICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVzZXQgLS1oYXJkIEhFQUQiICYmCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgotCWVjaG8gZm9vID4+IGZpbGUgJiYKKwllY2hvIGZvbyA+PmZpbGUgJiYKIAlTVEFTSF9JRD0kKGdpdCBzdGFzaCBjcmVhdGUpICYmCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWVjaG8gIjEJMAlmaWxlIiA+ZXhwZWN0ZWQgJiYKQEAgLTU1MSw3ICs2MTgsNyBAQAogCWdpdCBzdGFzaCBjbGVhciAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCBIRUFEIiAmJgogCWdpdCByZXNldCAtLWhhcmQgJiYKLQllY2hvIGZvbyA+PiBmaWxlICYmCisJZWNobyBmb28gPj5maWxlICYmCiAJU1RBU0hfSUQ9JChnaXQgc3Rhc2ggY3JlYXRlKSAmJgogCWdpdCByZXNldCAtLWhhcmQgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgpAQCAtNTY0LDE2ICs2MzEsMzQgQEAKIAkrZm9vCiAJRU9GCiAJZ2l0IHN0YXNoIHNob3cgLXAgJHtTVEFTSF9JRH0gPmFjdHVhbCAmJgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWRpZmZfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGFzaCBkcm9wIC0gZmFpbCBlYXJseSBpZiBzcGVjaWZpZWQgc3Rhc2ggaXMgbm90IGEgc3Rhc2ggcmVmZXJlbmNlJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGFzaCBzaG93IC0tcGF0aWVuY2Ugc2hvd3MgZGlmZicgJworCWdpdCByZXNldCAtLWhhcmQgJiYKKwllY2hvIGZvbyA+PmZpbGUgJiYKKwlTVEFTSF9JRD0kKGdpdCBzdGFzaCBjcmVhdGUpICYmCisJZ2l0IHJlc2V0IC0taGFyZCAmJgorCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCisJZGlmZiAtLWdpdCBhL2ZpbGUgYi9maWxlCisJaW5kZXggNzYwMTgwNy4uNzFiNTJjNCAxMDA2NDQKKwktLS0gYS9maWxlCisJKysrIGIvZmlsZQorCUBAIC0xICsxLDIgQEAKKwkgYmF6CisJK2ZvbworCUVPRgorCWdpdCBzdGFzaCBzaG93IC0tcGF0aWVuY2UgJHtTVEFTSF9JRH0gPmFjdHVhbCAmJgorCWRpZmZfY21wIGV4cGVjdGVkIGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkcm9wOiBmYWlsIGVhcmx5IGlmIHNwZWNpZmllZCBzdGFzaCBpcyBub3QgYSBzdGFzaCByZWYnICcKIAlnaXQgc3Rhc2ggY2xlYXIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQgSEVBRCAmJiBnaXQgc3Rhc2ggY2xlYXIiICYmCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgotCWVjaG8gZm9vID4gZmlsZSAmJgorCWVjaG8gZm9vID5maWxlICYmCiAJZ2l0IHN0YXNoICYmCi0JZWNobyBiYXIgPiBmaWxlICYmCisJZWNobyBiYXIgPmZpbGUgJiYKIAlnaXQgc3Rhc2ggJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgc3Rhc2ggZHJvcCAkKGdpdCByZXYtcGFyc2Ugc3Rhc2hAezB9KSAmJgogCWdpdCBzdGFzaCBwb3AgJiYKQEAgLTU4MSwxMyArNjY2LDEzIEBACiAJZ2l0IHJlc2V0IC0taGFyZCBIRUFECiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXNoIHBvcCAtIGZhaWwgZWFybHkgaWYgc3BlY2lmaWVkIHN0YXNoIGlzIG5vdCBhIHN0YXNoIHJlZmVyZW5jZScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAncG9wOiBmYWlsIGVhcmx5IGlmIHNwZWNpZmllZCBzdGFzaCBpcyBub3QgYSBzdGFzaCByZWYnICcKIAlnaXQgc3Rhc2ggY2xlYXIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQgSEVBRCAmJiBnaXQgc3Rhc2ggY2xlYXIiICYmCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgotCWVjaG8gZm9vID4gZmlsZSAmJgorCWVjaG8gZm9vID5maWxlICYmCiAJZ2l0IHN0YXNoICYmCi0JZWNobyBiYXIgPiBmaWxlICYmCisJZWNobyBiYXIgPmZpbGUgJiYKIAlnaXQgc3Rhc2ggJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgc3Rhc2ggcG9wICQoZ2l0IHJldi1wYXJzZSBzdGFzaEB7MH0pICYmCiAJZ2l0IHN0YXNoIHBvcCAmJgpAQCAtNTk3LDggKzY4Miw4IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlZiB3aXRoIG5vbi1leGlzdGVudCByZWZsb2cnICcKIAlnaXQgc3Rhc2ggY2xlYXIgJiYKLQllY2hvIGJhcjUgPiBmaWxlICYmCi0JZWNobyBiYXI2ID4gZmlsZTIgJiYKKwllY2hvIGJhcjUgPmZpbGUgJiYKKwllY2hvIGJhcjYgPmZpbGUyICYmCiAJZ2l0IGFkZCBmaWxlMiAmJgogCWdpdCBzdGFzaCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgLS1xdWlldCAtLXZlcmlmeSBkb2VzLW5vdC1leGlzdCAmJgpAQCAtNjE4LDggKzcwMyw4IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdpbnZhbGlkIHJlZiBvZiB0aGUgZm9ybSBzdGFzaEB7bn0sIG4gPj0gTicgJwogCWdpdCBzdGFzaCBjbGVhciAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBzdGFzaCBkcm9wIHN0YXNoQHswfSAmJgotCWVjaG8gYmFyNSA+IGZpbGUgJiYKLQllY2hvIGJhcjYgPiBmaWxlMiAmJgorCWVjaG8gYmFyNSA+ZmlsZSAmJgorCWVjaG8gYmFyNiA+ZmlsZTIgJiYKIAlnaXQgYWRkIGZpbGUyICYmCiAJZ2l0IHN0YXNoICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHN0YXNoIGRyb3Agc3Rhc2hAezF9ICYmCkBAIC02NDUsNyArNzMwLDI1IEBACiAJZ2l0IHN0YXNoIGRyb3AKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3Rhc2ggYnJhbmNoIHNob3VsZCBub3QgZHJvcCB0aGUgc3Rhc2ggaWYgdGhlIGJyYW5jaCBleGlzdHMnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ZhbGlkIHJlZiBvZiB0aGUgZm9ybSAibiIsIG4gPCBOJyAnCisJZ2l0IHN0YXNoIGNsZWFyICYmCisJZWNobyBiYXI1ID5maWxlICYmCisJZWNobyBiYXI2ID5maWxlMiAmJgorCWdpdCBhZGQgZmlsZTIgJiYKKwlnaXQgc3Rhc2ggJiYKKwlnaXQgc3Rhc2ggc2hvdyAwICYmCisJZ2l0IHN0YXNoIGJyYW5jaCB0bXAgMCAmJgorCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwlnaXQgc3Rhc2ggJiYKKwlnaXQgc3Rhc2ggYXBwbHkgMCAmJgorCWdpdCByZXNldCAtLWhhcmQgJiYKKwlnaXQgc3Rhc2ggcG9wIDAgJiYKKwlnaXQgc3Rhc2ggJiYKKwlnaXQgc3Rhc2ggZHJvcCAwICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHN0YXNoIGRyb3AKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYnJhbmNoOiBkbyBub3QgZHJvcCB0aGUgc3Rhc2ggaWYgdGhlIGJyYW5jaCBleGlzdHMnICcKIAlnaXQgc3Rhc2ggY2xlYXIgJiYKIAllY2hvIGZvbyA+ZmlsZSAmJgogCWdpdCBhZGQgZmlsZSAmJgpAQCAtNjU2LDcgKzc1OSw3IEBACiAJZ2l0IHJldi1wYXJzZSBzdGFzaEB7MH0gLS0KICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3Rhc2ggYnJhbmNoIHNob3VsZCBub3QgZHJvcCB0aGUgc3Rhc2ggaWYgdGhlIGFwcGx5IGZhaWxzJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdicmFuY2g6IHNob3VsZCBub3QgZHJvcCB0aGUgc3Rhc2ggaWYgdGhlIGFwcGx5IGZhaWxzJyAnCiAJZ2l0IHN0YXNoIGNsZWFyICYmCiAJZ2l0IHJlc2V0IEhFQUR+MSAtLWhhcmQgJiYKIAllY2hvIGZvbyA+ZmlsZSAmJgpAQCAtNjcwLDcgKzc3Myw3IEBACiAJZ2l0IHJldi1wYXJzZSBzdGFzaEB7MH0gLS0KICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3Rhc2ggYXBwbHkgc2hvd3Mgc3RhdHVzIHNhbWUgYXMgZ2l0IHN0YXR1cyAocmVsYXRpdmUgdG8gY3VycmVudCBkaXJlY3RvcnkpJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhcHBseTogc2hvdyBzYW1lIHN0YXR1cyBhcyBnaXQgc3RhdHVzIChyZWxhdGl2ZSB0byAuLyknICcKIAlnaXQgc3Rhc2ggY2xlYXIgJiYKIAllY2hvIDEgPnN1YmRpci9zdWJmaWxlMSAmJgogCWVjaG8gMiA+c3ViZGlyL3N1YmZpbGUyICYmCkBAIC02ODksNyArNzkyLDcgQEAKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAogJwogCi1jYXQgPiBleHBlY3QgPDwgRU9GCitjYXQgPmV4cGVjdCA8PEVPRgogZGlmZiAtLWdpdCBhL0hFQUQgYi9IRUFECiBuZXcgZmlsZSBtb2RlIDEwMDY0NAogaW5kZXggMDAwMDAwMC4uZmUwY2JlZQpAQCAtNzAyLDE1ICs4MDUsMTUgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXNoIHdoZXJlIHdvcmtpbmcgZGlyZWN0b3J5IGNvbnRhaW5zICJIRUFEIiBmaWxlJyAnCiAJZ2l0IHN0YXNoIGNsZWFyICYmCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgotCWVjaG8gZmlsZS1ub3QtYS1yZWYgPiBIRUFEICYmCisJZWNobyBmaWxlLW5vdC1hLXJlZiA+SEVBRCAmJgogCWdpdCBhZGQgSEVBRCAmJgogCXRlc3RfdGljayAmJgogCWdpdCBzdGFzaCAmJgogCWdpdCBkaWZmLWZpbGVzIC0tcXVpZXQgJiYKIAlnaXQgZGlmZi1pbmRleCAtLWNhY2hlZCAtLXF1aWV0IEhFQUQgJiYKIAl0ZXN0ICIkKGdpdCByZXYtcGFyc2Ugc3Rhc2heKSIgPSAiJChnaXQgcmV2LXBhcnNlIEhFQUQpIiAmJgotCWdpdCBkaWZmIHN0YXNoXi4uc3Rhc2ggPiBvdXRwdXQgJiYKLQl0ZXN0X2NtcCBleHBlY3Qgb3V0cHV0CisJZ2l0IGRpZmYgc3Rhc2heLi5zdGFzaCA+b3V0cHV0ICYmCisJZGlmZl9jbXAgZXhwZWN0IG91dHB1dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdG9yZSBjYWxsZWQgd2l0aCBpbnZhbGlkIGNvbW1pdCcgJwpAQCAtNzY2LDcgKzg2OSw3IEBACiAJK3dvcmtpbmcKIAlFT0YKIAlnaXQgc3Rhc2ggbGlzdCAtLWZvcm1hdD0lZ2QgLXAgPmFjdHVhbCAmJgotCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwlkaWZmX2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXNoIGxpc3QgLS1jYyBzaG93cyBjb21iaW5lZCBkaWZmJyAnCkBAIC03ODMsNyArODg2LDcgQEAKIAkrK3dvcmtpbmcKIAlFT0YKIAlnaXQgc3Rhc2ggbGlzdCAtLWZvcm1hdD0lZ2QgLXAgLS1jYyA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorCWRpZmZfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3Rhc2ggaXMgbm90IGNvbmZ1c2VkIGJ5IHBhcnRpYWwgcmVuYW1lcycgJwpAQCAtMTAxMSw3ICsxMTE0LDcgQEAKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGFzaCBwdXNoIHdpdGggcGF0aHNwZWMgc2hvd3Mgbm8gY2hhbmdlcyB3aGVuIHRoZXJlIGFyZSBub25lJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdXNoIDxwYXRoc3BlYz46IHNob3cgbm8gY2hhbmdlcyB3aGVuIHRoZXJlIGFyZSBub25lJyAnCiAJPmZvbyAmJgogCWdpdCBhZGQgZm9vICYmCiAJZ2l0IGNvbW1pdCAtbSAidG1wIiAmJgpAQCAtMTAyMSwxMiArMTEyNCwzNSBAQAogCXRlc3RfaTE4bmNtcCBleHBlY3QgYWN0dWFsCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXNoIHB1c2ggd2l0aCBwYXRoc3BlYyBub3QgaW4gdGhlIHJlcG9zaXRvcnkgZXJyb3JzIG91dCcgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAncHVzaDogPHBhdGhzcGVjPiBub3QgaW4gdGhlIHJlcG9zaXRvcnkgZXJyb3JzIG91dCcgJwogCT51bnRyYWNrZWQgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgc3Rhc2ggcHVzaCB1bnRyYWNrZWQgJiYKIAl0ZXN0X3BhdGhfaXNfZmlsZSB1bnRyYWNrZWQKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncHVzaDogLXEgaXMgcXVpZXQgd2l0aCBjaGFuZ2VzJyAnCisJPmZvbyAmJgorCWdpdCBhZGQgZm9vICYmCisJZ2l0IHN0YXNoIHB1c2ggLXEgPm91dHB1dCAyPiYxICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IG91dHB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdXNoOiAtcSBpcyBxdWlldCB3aXRoIG5vIGNoYW5nZXMnICcKKwlnaXQgc3Rhc2ggcHVzaCAtcSA+b3V0cHV0IDI+JjEgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgb3V0cHV0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1c2g6IC1xIGlzIHF1aWV0IGV2ZW4gaWYgdGhlcmUgaXMgbm8gaW5pdGlhbCBjb21taXQnICcKKwlnaXQgaW5pdCBmb29fZGlyICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkIHJtIC1yZiBmb29fZGlyICYmCisJKAorCQljZCBmb29fZGlyICYmCisJCT5iYXIgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHN0YXNoIHB1c2ggLXEgPm91dHB1dCAyPiYxICYmCisJCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXRwdXQKKwkpCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3VudHJhY2tlZCBmaWxlcyBhcmUgbGVmdCBpbiBwbGFjZSB3aGVuIC11IGlzIG5vdCBnaXZlbicgJwogCT5maWxlICYmCiAJZ2l0IGFkZCBmaWxlICYmCkBAIC0xMDk2LDQgKzEyMjIsNzIgQEAKIAl0ZXN0X3BhdGhfaXNfZmlsZSBzdWJkaXIvdW50cmFja2VkCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXNoIHdpdGggdXNlci5uYW1lIGFuZCB1c2VyLmVtYWlsIHNldCB3b3JrcycgJworCXRlc3RfY29uZmlnIHVzZXIubmFtZSAiQSBVIFRob3IiICYmCisJdGVzdF9jb25maWcgdXNlci5lbWFpbCAiYS51QHRob3IiICYmCisJZ2l0IHN0YXNoCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXNoIHdvcmtzIHdoZW4gdXNlci5uYW1lIGFuZCB1c2VyLmVtYWlsIGFyZSBub3Qgc2V0JyAnCisJZ2l0IHJlc2V0ICYmCisJPjEgJiYKKwlnaXQgYWRkIDEgJiYKKwllY2hvICIkR0lUX0FVVEhPUl9OQU1FIDwkR0lUX0FVVEhPUl9FTUFJTD4iID5leHBlY3QgJiYKKwlnaXQgc3Rhc2ggJiYKKwlnaXQgc2hvdyAtcyAtLWZvcm1hdD0iJWFuIDwlYWU+IiByZWZzL3N0YXNoID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJPjIgJiYKKwlnaXQgYWRkIDIgJiYKKwl0ZXN0X2NvbmZpZyB1c2VyLnVzZWNvbmZpZ29ubHkgdHJ1ZSAmJgorCXRlc3RfY29uZmlnIHN0YXNoLnVzZWJ1aWx0aW4gdHJ1ZSAmJgorCSgKKwkJc2FuZV91bnNldCBHSVRfQVVUSE9SX05BTUUgJiYKKwkJc2FuZV91bnNldCBHSVRfQVVUSE9SX0VNQUlMICYmCisJCXNhbmVfdW5zZXQgR0lUX0NPTU1JVFRFUl9OQU1FICYmCisJCXNhbmVfdW5zZXQgR0lUX0NPTU1JVFRFUl9FTUFJTCAmJgorCQl0ZXN0X3VuY29uZmlnIHVzZXIuZW1haWwgJiYKKwkJdGVzdF91bmNvbmZpZyB1c2VyLm5hbWUgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbW1pdCAtbSAic2hvdWxkIGZhaWwiICYmCisJCWVjaG8gImdpdCBzdGFzaCA8Z2l0QHN0YXNoPiIgPmV4cGVjdCAmJgorCQk+MiAmJgorCQlnaXQgc3Rhc2ggJiYKKwkJZ2l0IHNob3cgLXMgLS1mb3JtYXQ9IiVhbiA8JWFlPiIgcmVmcy9zdGFzaCA+YWN0dWFsICYmCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXNoIC0ta2VlcC1pbmRleCB3aXRoIGZpbGUgZGVsZXRlZCBpbiBpbmRleCBkb2VzIG5vdCByZXN1cnJlY3QgaXQgb24gZGlzaycgJworCXRlc3RfY29tbWl0IHRvLXJlbW92ZSB0by1yZW1vdmUgJiYKKwlnaXQgcm0gdG8tcmVtb3ZlICYmCisJZ2l0IHN0YXNoIC0ta2VlcC1pbmRleCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHRvLXJlbW92ZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGFzaCBhcHBseSBzaG91bGQgc3VjY2VlZCB3aXRoIHVubW9kaWZpZWQgZmlsZScgJworCWVjaG8gYmFzZSA+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCWdpdCBjb21taXQgLW0gYmFzZSAmJgorCisJIyBub3cgc3Rhc2ggYSBtb2RpZmljYXRpb24KKwllY2hvIG1vZGlmaWVkID5maWxlICYmCisJZ2l0IHN0YXNoICYmCisKKwkjIG1ha2UgdGhlIGZpbGUgc3RhdCBkaXJ0eQorCWNwIGZpbGUgb3RoZXIgJiYKKwltdiBvdGhlciBmaWxlICYmCisKKwlnaXQgc3Rhc2ggYXBwbHkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3Rhc2ggaGFuZGxlcyBza2lwLXdvcmt0cmVlIGVudHJpZXMgbmljZWx5JyAnCisJdGVzdF9jb21taXQgQSAmJgorCWVjaG8gY2hhbmdlZCA+QS50ICYmCisJZ2l0IGFkZCBBLnQgJiYKKwlnaXQgdXBkYXRlLWluZGV4IC0tc2tpcC13b3JrdHJlZSBBLnQgJiYKKwlybSBBLnQgJiYKKwlnaXQgc3Rhc2ggJiYKKworCWdpdCByZXYtcGFyc2UgLS12ZXJpZnkgcmVmcy9zdGFzaDpBLnQKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzOTA1LXN0YXNoLWluY2x1ZGUtdW50cmFja2VkLnNoIGIvdC90MzkwNS1zdGFzaC1pbmNsdWRlLXVudHJhY2tlZC5zaAppbmRleCBjYzFjOGE3Li5mMDc1YzdmIDEwMDc1NQotLS0gYS90L3QzOTA1LXN0YXNoLWluY2x1ZGUtdW50cmFja2VkLnNoCisrKyBiL3QvdDM5MDUtc3Rhc2gtaW5jbHVkZS11bnRyYWNrZWQuc2gKQEAgLTI3NywxMCArMjc3LDE2IEBACiAJdGVzdF9wYXRoX2lzX2ZpbGUgaWdub3JlZC5kL2JhcgogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGFzaCAtdSAtLSA8bm9uLWV4aXN0YW50PiBzaG93cyBubyBjaGFuZ2VzIHdoZW4gdGhlcmUgYXJlIG5vbmUnICcKLQlnaXQgc3Rhc2ggcHVzaCAtdSAtLSBub24tZXhpc3RhbnQgPmFjdHVhbCAmJgordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3Rhc2ggLXUgLS0gPG5vbi1leGlzdGVudD4gc2hvd3Mgbm8gY2hhbmdlcyB3aGVuIHRoZXJlIGFyZSBub25lJyAnCisJZ2l0IHN0YXNoIHB1c2ggLXUgLS0gbm9uLWV4aXN0ZW50ID5hY3R1YWwgJiYKIAllY2hvICJObyBsb2NhbCBjaGFuZ2VzIHRvIHNhdmUiID5leHBlY3QgJiYKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGFzaCAtdSB3aXRoIGdsb2JzJyAnCisJPnVudHJhY2tlZC50eHQgJiYKKwlnaXQgc3Rhc2ggLXUgLS0gIjooZ2xvYikqKi8qLnR4dCIgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyB1bnRyYWNrZWQudHh0CisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MzkwNi1zdGFzaC1zdWJtb2R1bGUuc2ggYi90L3QzOTA2LXN0YXNoLXN1Ym1vZHVsZS5zaAppbmRleCBkNzIxOWQ2Li5iOTNkMWQ3IDEwMDc1NQotLS0gYS90L3QzOTA2LXN0YXNoLXN1Ym1vZHVsZS5zaAorKysgYi90L3QzOTA2LXN0YXNoLXN1Ym1vZHVsZS5zaApAQCAtMSw2ICsxLDYgQEAKICMhL2Jpbi9zaAogCi10ZXN0X2Rlc2NyaXB0aW9uPSdzdGFzaCBhcHBseSBjYW4gaGFuZGxlIHN1Ym1vZHVsZXMnCit0ZXN0X2Rlc2NyaXB0aW9uPSdzdGFzaCBjYW4gaGFuZGxlIHN1Ym1vZHVsZXMnCiAKIC4gLi90ZXN0LWxpYi5zaAogLiAiJFRFU1RfRElSRUNUT1JZIi9saWItc3VibW9kdWxlLXVwZGF0ZS5zaApAQCAtMjEsNCArMjEsNDQgQEAKIEtOT1dOX0ZBSUxVUkVfTk9GRl9NRVJHRV9ET0VTTlRfQ1JFQVRFX0VNUFRZX1NVQk1PRFVMRV9ESVI9MQogdGVzdF9zdWJtb2R1bGVfc3dpdGNoICJnaXRfc3Rhc2giCiAKK3NldHVwX2Jhc2ljICgpIHsKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1yZiBtYWluIHN1YiIgJiYKKwlnaXQgaW5pdCBzdWIgJiYKKwkoCisJCWNkIHN1YiAmJgorCQl0ZXN0X2NvbW1pdCBzdWJfZmlsZQorCSkgJiYKKwlnaXQgaW5pdCBtYWluICYmCisJKAorCQljZCBtYWluICYmCisJCWdpdCBzdWJtb2R1bGUgYWRkIC4uL3N1YiAmJgorCQl0ZXN0X2NvbW1pdCBtYWluX2ZpbGUKKwkpCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXNoIHB1c2ggd2l0aCBzdWJtb2R1bGUucmVjdXJzZT10cnVlIHByZXNlcnZlcyBkaXJ0eSBzdWJtb2R1bGUgd29ya3RyZWUnICcKKwlzZXR1cF9iYXNpYyAmJgorCSgKKwkJY2QgbWFpbiAmJgorCQlnaXQgY29uZmlnIHN1Ym1vZHVsZS5yZWN1cnNlIHRydWUgJiYKKwkJZWNobyAieCIgPm1haW5fZmlsZS50ICYmCisJCWVjaG8gInkiID5zdWIvc3ViX2ZpbGUudCAmJgorCQlnaXQgc3Rhc2ggcHVzaCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgLUMgc3ViIGRpZmYgLS1xdWlldAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3Rhc2ggcHVzaCBhbmQgcG9wIHdpdGggc3VibW9kdWxlLnJlY3Vyc2U9dHJ1ZSBwcmVzZXJ2ZXMgZGlydHkgc3VibW9kdWxlIHdvcmt0cmVlJyAnCisJc2V0dXBfYmFzaWMgJiYKKwkoCisJCWNkIG1haW4gJiYKKwkJZ2l0IGNvbmZpZyBzdWJtb2R1bGUucmVjdXJzZSB0cnVlICYmCisJCWVjaG8gIngiID5tYWluX2ZpbGUudCAmJgorCQllY2hvICJ5IiA+c3ViL3N1Yl9maWxlLnQgJiYKKwkJZ2l0IHN0YXNoIHB1c2ggJiYKKwkJZ2l0IHN0YXNoIHBvcCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgLUMgc3ViIGRpZmYgLS1xdWlldAorCSkKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzOTA3LXN0YXNoLXNob3ctY29uZmlnLnNoIGIvdC90MzkwNy1zdGFzaC1zaG93LWNvbmZpZy5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi4xMDkxNGJiCi0tLSAvZGV2L251bGwKKysrIGIvdC90MzkwNy1zdGFzaC1zaG93LWNvbmZpZy5zaApAQCAtMCwwICsxLDgzIEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0nVGVzdCBnaXQgc3Rhc2ggc2hvdyBjb25maWd1cmF0aW9uLicKKworLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCisJdGVzdF9jb21taXQgZmlsZQorJworCisjIHRha2VzIHRocmVlIHBhcmFtZXRlcnM6CisjIDEuIHRoZSBzdGFzaC5zaG93U3RhdCB2YWx1ZSAob3IgIjx1bnNldD4iKQorIyAyLiB0aGUgc3Rhc2guc2hvd1BhdGNoIHZhbHVlIChvciAiPHVuc2V0PiIpCisjIDMuIHRoZSBkaWZmIG9wdGlvbnMgb2YgdGhlIGV4cGVjdGVkIG91dHB1dCAob3Igbm90aGluZyBmb3Igbm8gb3V0cHV0KQordGVzdF9zdGF0X2FuZF9wYXRjaCAoKSB7CisJaWYgdGVzdCAiPHVuc2V0PiIgPSAiJDEiCisJdGhlbgorCQl0ZXN0X3VuY29uZmlnIHN0YXNoLnNob3dTdGF0CisJZWxzZQorCQl0ZXN0X2NvbmZpZyBzdGFzaC5zaG93U3RhdCAiJDEiCisJZmkgJiYKKworCWlmIHRlc3QgIjx1bnNldD4iID0gIiQyIgorCXRoZW4KKwkJdGVzdF91bmNvbmZpZyBzdGFzaC5zaG93UGF0Y2gKKwllbHNlCisJCXRlc3RfY29uZmlnIHN0YXNoLnNob3dQYXRjaCAiJDIiCisJZmkgJiYKKworCXNoaWZ0IDIgJiYKKwllY2hvIDIgPmZpbGUudCAmJgorCWlmIHRlc3QgJCMgIT0gMAorCXRoZW4KKwkJZ2l0IGRpZmYgIiRAIiA+ZXhwZWN0CisJZmkgJiYKKwlnaXQgc3Rhc2ggJiYKKwlnaXQgc3Rhc2ggc2hvdyA+YWN0dWFsICYmCisKKwlpZiB0ZXN0ICQjID0gMAorCXRoZW4KKwkJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbAorCWVsc2UKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorCWZpCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Nob3dTdGF0IHVuc2V0IHNob3dQYXRjaCB1bnNldCcgJworCXRlc3Rfc3RhdF9hbmRfcGF0Y2ggIjx1bnNldD4iICI8dW5zZXQ+IiAtLXN0YXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2hvd1N0YXQgdW5zZXQgc2hvd1BhdGNoIGZhbHNlJyAnCisJdGVzdF9zdGF0X2FuZF9wYXRjaCAiPHVuc2V0PiIgZmFsc2UgLS1zdGF0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Nob3dTdGF0IHVuc2V0IHNob3dQYXRjaCB0cnVlJyAnCisJdGVzdF9zdGF0X2FuZF9wYXRjaCAiPHVuc2V0PiIgdHJ1ZSAtLXN0YXQgLXAKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2hvd1N0YXQgZmFsc2Ugc2hvd1BhdGNoIHVuc2V0JyAnCisJdGVzdF9zdGF0X2FuZF9wYXRjaCBmYWxzZSAiPHVuc2V0PiIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2hvd1N0YXQgZmFsc2Ugc2hvd1BhdGNoIGZhbHNlJyAnCisJdGVzdF9zdGF0X2FuZF9wYXRjaCBmYWxzZSBmYWxzZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaG93U3RhdCBmYWxzZSBzaG93UGF0Y2ggdHJ1ZScgJworCXRlc3Rfc3RhdF9hbmRfcGF0Y2ggZmFsc2UgdHJ1ZSAtcAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaG93U3RhdCB0cnVlIHNob3dQYXRjaCB1bnNldCcgJworCXRlc3Rfc3RhdF9hbmRfcGF0Y2ggdHJ1ZSAiPHVuc2V0PiIgLS1zdGF0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Nob3dTdGF0IHRydWUgc2hvd1BhdGNoIGZhbHNlJyAnCisJdGVzdF9zdGF0X2FuZF9wYXRjaCB0cnVlIGZhbHNlIC0tc3RhdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaG93U3RhdCB0cnVlIHNob3dQYXRjaCB0cnVlJyAnCisJdGVzdF9zdGF0X2FuZF9wYXRjaCB0cnVlIHRydWUgLS1zdGF0IC1wCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90MzkwOC1zdGFzaC1pbi13b3JrdHJlZS5zaCBiL3QvdDM5MDgtc3Rhc2gtaW4td29ya3RyZWUuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMmIyYjM2NgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDM5MDgtc3Rhc2gtaW4td29ya3RyZWUuc2gKQEAgLTAsMCArMSwyNyBAQAorIyEvYmluL3NoCisjCisjIENvcHlyaWdodCAoYykgMjAxOSBKb2hhbm5lcyBFIFNjaGluZGVsaW4KKyMKKwordGVzdF9kZXNjcmlwdGlvbj0nVGVzdCBnaXQgc3Rhc2ggaW4gYSB3b3JrdHJlZScKKworLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCisJdGVzdF9jb21taXQgaW5pdGlhbCAmJgorCWdpdCB3b3JrdHJlZSBhZGQgd3QgJiYKKwl0ZXN0X2NvbW1pdCAtQyB3dCBpbi13b3JrdHJlZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhcHBseSBpbiBzdWJkaXJlY3RvcnknICcKKwlta2RpciB3dC9zdWJkaXIgJiYKKwkoCisJCWNkIHd0L3N1YmRpciAmJgorCQllY2hvIG1vZGlmaWVkID4uLi9pbml0aWFsLnQgJiYKKwkJZ2l0IHN0YXNoICYmCisJCWdpdCBzdGFzaCBhcHBseSA+b3V0CisJKSAmJgorCWdyZXAgIlwuXC5cL2luaXRpYWxcLnQiIHd0L3N1YmRpci9vdXQKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3QzOTA5LXN0YXNoLXBhdGhzcGVjLWZpbGUuc2ggYi90L3QzOTA5LXN0YXNoLXBhdGhzcGVjLWZpbGUuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNTVlMDUwYwotLS0gL2Rldi9udWxsCisrKyBiL3QvdDM5MDktc3Rhc2gtcGF0aHNwZWMtZmlsZS5zaApAQCAtMCwwICsxLDEwMCBAQAorIyEvYmluL3NoCisKK3Rlc3RfZGVzY3JpcHRpb249J3N0YXNoIC0tcGF0aHNwZWMtZnJvbS1maWxlJworCisuIC4vdGVzdC1saWIuc2gKKwordGVzdF90aWNrCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3Mgc2V0dXAgJworCT5maWxlQS50ICYmCisJPmZpbGVCLnQgJiYKKwk+ZmlsZUMudCAmJgorCT5maWxlRC50ICYmCisJZ2l0IGFkZCBmaWxlQS50IGZpbGVCLnQgZmlsZUMudCBmaWxlRC50ICYmCisJZ2l0IGNvbW1pdCAtbSAiRmlsZXMiICYmCisKKwlnaXQgdGFnIGNoZWNrcG9pbnQKKycKKworcmVzdG9yZV9jaGVja3BvaW50ICgpIHsKKwlnaXQgcmVzZXQgLS1oYXJkIGNoZWNrcG9pbnQKK30KKwordmVyaWZ5X2V4cGVjdCAoKSB7CisJZ2l0IHN0YXNoIHNob3cgLS1uYW1lLXN0YXR1cyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorfQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaW1wbGVzdCcgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJIyBNb3JlIGZpbGVzIGFyZSB3cml0dGVuIHRvIG1ha2Ugc3VyZSB0aGF0IGdpdCBkaWRudCBpZ25vcmUKKwkjIC0tcGF0aHNwZWMtZnJvbS1maWxlLCBzdGFzaGluZyBldmVyeXRoaW5nCisJZWNobyBBID5maWxlQS50ICYmCisJZWNobyBCID5maWxlQi50ICYmCisJZWNobyBDID5maWxlQy50ICYmCisJZWNobyBEID5maWxlRC50ICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJTQlmaWxlQS50CisJRU9GCisKKwllY2hvIGZpbGVBLnQgfCBnaXQgc3Rhc2ggcHVzaCAtLXBhdGhzcGVjLWZyb20tZmlsZT0tICYmCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXBhdGhzcGVjLWZpbGUtbnVsJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwkjIE1vcmUgZmlsZXMgYXJlIHdyaXR0ZW4gdG8gbWFrZSBzdXJlIHRoYXQgZ2l0IGRpZG50IGlnbm9yZQorCSMgLS1wYXRoc3BlYy1mcm9tLWZpbGUsIHN0YXNoaW5nIGV2ZXJ5dGhpbmcKKwllY2hvIEEgPmZpbGVBLnQgJiYKKwllY2hvIEIgPmZpbGVCLnQgJiYKKwllY2hvIEMgPmZpbGVDLnQgJiYKKwllY2hvIEQgPmZpbGVELnQgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlNCWZpbGVBLnQKKwlNCWZpbGVCLnQKKwlFT0YKKworCXByaW50ZiAiZmlsZUEudFwwZmlsZUIudFwwIiB8IGdpdCBzdGFzaCBwdXNoIC0tcGF0aHNwZWMtZnJvbS1maWxlPS0gLS1wYXRoc3BlYy1maWxlLW51bCAmJgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnb25seSB0b3VjaGVzIHdoYXQgd2FzIGxpc3RlZCcgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJIyBNb3JlIGZpbGVzIGFyZSB3cml0dGVuIHRvIG1ha2Ugc3VyZSB0aGF0IGdpdCBkaWRudCBpZ25vcmUKKwkjIC0tcGF0aHNwZWMtZnJvbS1maWxlLCBzdGFzaGluZyBldmVyeXRoaW5nCisJZWNobyBBID5maWxlQS50ICYmCisJZWNobyBCID5maWxlQi50ICYmCisJZWNobyBDID5maWxlQy50ICYmCisJZWNobyBEID5maWxlRC50ICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJTQlmaWxlQi50CisJTQlmaWxlQy50CisJRU9GCisKKwlwcmludGYgImZpbGVCLnRcbmZpbGVDLnRcbiIgfCBnaXQgc3Rhc2ggcHVzaCAtLXBhdGhzcGVjLWZyb20tZmlsZT0tICYmCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdlcnJvciBjb25kaXRpb25zJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisJZWNobyBBID5maWxlQS50ICYmCisJZWNobyBmaWxlQS50ID5saXN0ICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgc3Rhc2ggcHVzaCAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0IC0tcGF0Y2ggMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwIC1lICItLXBhdGhzcGVjLWZyb20tZmlsZSBpcyBpbmNvbXBhdGlibGUgd2l0aCAtLXBhdGNoIiBlcnIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBzdGFzaCBwdXNoIC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLS0gZmlsZUEudCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIgZXJyICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgc3Rhc2ggcHVzaCAtLXBhdGhzcGVjLWZpbGUtbnVsIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiLS1wYXRoc3BlYy1maWxlLW51bCByZXF1aXJlcyAtLXBhdGhzcGVjLWZyb20tZmlsZSIgZXJyCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NDAwMC1kaWZmLWZvcm1hdC5zaCBiL3QvdDQwMDAtZGlmZi1mb3JtYXQuc2gKaW5kZXggOGRlMzZiNy4uZTUxMTZhNyAxMDA3NTUKLS0tIGEvdC90NDAwMC1kaWZmLWZvcm1hdC5zaAorKysgYi90L3Q0MDAwLWRpZmYtZm9ybWF0LnNoCkBAIC03OCw3ICs3OCw3IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBkaWZmLWZpbGVzIC0tbm8tcGF0Y2ggLS1wYXRjaC13aXRoLXJhdyBzaG93cyB0aGUgcGF0Y2ggYW5kIHJhdyBkYXRhJyAnCiAJZ2l0IGRpZmYtZmlsZXMgLS1uby1wYXRjaCAtLXBhdGNoLXdpdGgtcmF3ID5hY3R1YWwgJiYKLQlncmVwIC1xICJeOjEwMDY0NCAxMDA3NTUgLiogMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBNCXBhdGgwXCQiIGFjdHVhbCAmJgorCWdyZXAgLXEgIl46MTAwNjQ0IDEwMDc1NSAuKiAkWkVST19PSUQgTQlwYXRoMFwkIiBhY3R1YWwgJiYKIAl0YWlsIC1uICs0IGFjdHVhbCA+YWN0dWFsLXBhdGNoICYmCiAJY29tcGFyZV9kaWZmX3BhdGNoIGV4cGVjdGVkIGFjdHVhbC1wYXRjaAogJwpkaWZmIC0tZ2l0IGEvdC90NDAwMi1kaWZmLWJhc2ljLnNoIGIvdC90NDAwMi1kaWZmLWJhc2ljLnNoCmluZGV4IDNhNmMyMWUuLmNiY2RkMTAgMTAwNzU1Ci0tLSBhL3QvdDQwMDItZGlmZi1iYXNpYy5zaAorKysgYi90L3Q0MDAyLWRpZmYtYmFzaWMuc2gKQEAgLTcsMTIzICs3LDI3MiBAQAogCiAnCiAuIC4vdGVzdC1saWIuc2gKKwogLiAiJFRFU1RfRElSRUNUT1JZIi9saWItcmVhZC10cmVlLW0tM3dheS5zaAogCi1jYXQgPi50ZXN0LXBsYWluLU9BIDw8XEVPRgotOjAwMDAwMCAxMDA2NDQgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBjY2JhNzJhZDM4ODhhMzUyMGIzOWVmY2Y3ODBiOWVlNjQxNjc1MzVkIEEJQUEKLTowMDAwMDAgMTAwNjQ0IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgN2U0MjZmYjA3OTQ3OWZkNjdmNmQ4MWY5ODRlNGVjNjQ5YTQ0YmMyNSBBCUFOCi06MTAwNjQ0IDAwMDAwMCBiY2M2OGVmOTk3MDE3NDY2ZDVjOTA5NGJjZjc2OTIyOTVmNTg4YzlhIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgRAlERAotOjAwMDAwMCAwNDAwMDAgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCA2ZDUwZjY1ZDNiZGFiOTFjNjM0NDQyOTRkMzhmMDhhZWZmMzI4ZTQyIEEJREYKLToxMDA2NDQgMDAwMDAwIDE0MWMxZjE2NDIzMjhlNGJjNDZhN2Q4MDFhNzFkYTM5MmU2Njc5MWUgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECURNCi06MTAwNjQ0IDAwMDAwMCAzNWFiZGUxNTA2ZGRmODA2NTcyZmY0ZDQwN2JkMDY4ODVkMGY4ZWU5IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgRAlETgotOjAwMDAwMCAxMDA2NDQgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAxZDQxMTIyZWJkZDdhNjQwZjI5ZDNjOWNjNGY5ZDcwMDk0Mzc0NzYyIEEJTEwKLToxMDA2NDQgMTAwNjQ0IDAzZjI0YzhjNDcwMGJhYmNjZmQyOGI2NTRlN2U4ZWFjNDAyYWQ2Y2QgMTAzZDlmODliNTBiOWFhZDAzMDU0YjU3OWJlNWU3YWE2NjVmMmQ1NyBNCU1ECi06MTAwNjQ0IDEwMDY0NCBiMjU4NTA4YWZiN2NlYjQ0OTk4MWJkOWQ2M2QyZDNlOTcxYmY4ZDM0IGI0MzFiMjcyZDgyOWZmM2FhNGQxYTUwODVmNDM5NGFiNGQzMzA1YjYgTQlNTQotOjEwMDY0NCAxMDA2NDQgYmQwODRiMGMyN2M3YjZjYzM0ZjExZDZkMDUwOWEyOWJlM2NhZjk3MCBhNzE2ZDU4ZGU0YTU3MGUwMDM4ZjVjMzA3YmQ4ZGIzNGRhZWEwMjFmIE0JTU4KLToxMDA2NDQgMTAwNjQ0IDQwYzk1OWY5ODRjOGI4OWEyYjAyNTIwZDE3ZjAwZDcxN2YwMjQzOTcgMmFjNTQ3YWU5NjE0YTAwZDFiMjgyNzVkZTYwODEzMWY3YTBlMjU5ZiBNCVNTCi06MTAwNjQ0IDEwMDY0NCA0YWMxMzQ1ODg5OWFiOTA4ZWYzYjExMjhmYTM3OGRhZWZjODhkMzU2IDRjODZmOWE4NWZiYzVlNjgwNGVlMmUxN2E3OTc1MzhmYmU3ODViY2EgTQlUVAotOjA0MDAwMCAwNDAwMDAgN2Q2NzBmZGNkYjk5MjlmNmM3ZGFjMTk2ZmY3ODY4OWNkMWM1NjZhMSA1ZTVmMjIwNzJiYjM5ZjZlMTJjZjY2M2E1N2NiNjM0Yzc2ZWVmYjQ5IE0JWgordGVzdF9vaWRfaW5pdAorCit0ZXN0X29pZF9jYWNoZSA8PFxFT0YKK2FhXzEgc2hhMTpjY2JhNzJhZDM4ODhhMzUyMGIzOWVmY2Y3ODBiOWVlNjQxNjc1MzVkCithYV8xIHNoYTI1Njo5ZmViZmJmMTgxOTc4MTliMjczNWM0NTI5MWYxMzg1MjVkMjQ3NmQ1OTQ3MGY5ODIzOTY0NzU0NDU4NmJhNDAzCisKK2FhXzIgc2hhMTo2YWEyYjUzMzViMTY0MzFhMGVmNzFlNWMwYTI4YmU2OTE4M2NmNmEyCithYV8yIHNoYTI1Njo2ZWFhMzQzN2RlODNmMTQ1YTRhYWE2YmEzNTUzMDMwNzVhZGU1NDdiMTI4ZWM2YTJjZDAwYTgxZmY3Y2U3YTU2CisKK2FuXzEgc2hhMTo3ZTQyNmZiMDc5NDc5ZmQ2N2Y2ZDgxZjk4NGU0ZWM2NDlhNDRiYzI1Cithbl8xIHNoYTI1Njo4ZjkyYTBiZWM5OWUzOTlhMzhlM2JkMGUxYmYxOWZiZjEyMWUwMTYwZWZiMjliODU3ZGY3OWQ0MzlmMWM0NTM2CisKK2RkXzEgc2hhMTpiY2M2OGVmOTk3MDE3NDY2ZDVjOTA5NGJjZjc2OTIyOTVmNTg4YzlhCitkZF8xIHNoYTI1NjowN2UxNzQyOGIwMDYzOWI4NTQ4NWQyYjAxMDgzZDIxOWUyZjNlM2JhODU3OWU5Y2E0NGU5Y2M4ZGQ1NTRkOTUyCisKK2RmXzEgc2hhMTo2ZDUwZjY1ZDNiZGFiOTFjNjM0NDQyOTRkMzhmMDhhZWZmMzI4ZTQyCitkZl8xIHNoYTI1NjplMzY3Y2VjYzI3ZTliZjU0NTFiMWM2NTgyOGNiMjE5MzhkMzZhNWY4ZTM5YzFiMDNhZDY1MDljYzM2YmI4ZTlkCisKK2RmXzIgc2hhMTo3MTQyMGFiODFlMjU0MTQ1ZDI2ZDZmYzBjZGRlZTY0YzFhY2Q0Nzg3CitkZl8yIHNoYTI1NjowZjBhODZkMTAzNDdmZjY5MjFkMDNhM2M5NTQ2NzlmM2YxZDE0ZmEzZDVjZDgyZjU3YjMyYzA5NzU1ZjNhNDdkCisKK2RmZDEgc2hhMTo2OGE2ZDhiOTFkYTExMDQ1Y2Y0YWEzYTVhYjlmMmE3ODFjNzAxMjQ5CitkZmQxIHNoYTI1NjpmM2JkMzI2NWIwMmI2OTc4Y2U4NjQ5MGQ4YWQwMjZjNTczNjM5Yzk3NGIzZGUxZDlmYWYzMGQ4ZDVhNzdkM2Q1CisKK2RtXzEgc2hhMToxNDFjMWYxNjQyMzI4ZTRiYzQ2YTdkODAxYTcxZGEzOTJlNjY3OTFlCitkbV8xIHNoYTI1NjpjODlmODY1NmU3Yjk0ZTIxZWU1ZmJhZjBlMjE0OWJiZjc4M2M1MWVkYmUyY2UxMTAzNDljYWMxMzA1OWVlN2VkCisKK2RtXzIgc2hhMTozYzRkOGRlNWZiYWQwODU3MmJhYjhlMTBlZWY4ZGJiMjY0Y2YwMjMxCitkbV8yIHNoYTI1Njo4M2E1NzJlMzdlMGM5NDA4NjI5NGRhZTJjZWNjNDNkOTEzMWFmZDZmNmM5MDZlNDk1Yzc4OTcyMjMwYjU0OTg4CisKK2RuXzEgc2hhMTozNWFiZGUxNTA2ZGRmODA2NTcyZmY0ZDQwN2JkMDY4ODVkMGY4ZWU5Citkbl8xIHNoYTI1Njo3NzVkNTg1MjU4MjA3MGU2MjBiZTYzMzI3YmZhNTE1ZmFiOGY3MWM3YWMzZTRmMGMzY2Q2MjY3YjQzNzdiYTI4CisKK2xsXzIgc2hhMToxZDQxMTIyZWJkZDdhNjQwZjI5ZDNjOWNjNGY5ZDcwMDk0Mzc0NzYyCitsbF8yIHNoYTI1Njo3OTE3YjQ5NDhhODgzY2ZlZDBhNzdkM2Q1YTYyNWRjODU3N2Q2ZGRjYzNjNmMzYmJjNTZjNGQ0MjI2YTIyNDZkCisKK21kXzEgc2hhMTowM2YyNGM4YzQ3MDBiYWJjY2ZkMjhiNjU0ZTdlOGVhYzQwMmFkNmNkCittZF8xIHNoYTI1NjpmYzlmMzAzNjliOTc4NTk1YWQ2ODViYTExY2E5YTE3ZGUwYWYxNmQ3OWNkNGI2Mjk5NzVmNGYxNTkwMDMzOTAyCisKK21kXzIgc2hhMToxMDNkOWY4OWI1MGI5YWFkMDMwNTRiNTc5YmU1ZTdhYTY2NWYyZDU3CittZF8yIHNoYTI1NjpmYzc4ZWM3NTI3NTYyODc2MmZlNTIwNDc5YTZiMjM5OGRlYzI5NWNlN2FhYmNiMWQxNWU1OTYzYzdiNGU5MzE3CisKK21tXzEgc2hhMTpiMjU4NTA4YWZiN2NlYjQ0OTk4MWJkOWQ2M2QyZDNlOTcxYmY4ZDM0CittbV8xIHNoYTI1NjphNGI3ODQ3ZDIyOGU5MDBlMzAwMDI4NWUyNDBjMjBmZDk2ZjlkZDQxY2UxNDQ1MzA1ZjZlYWRhMTI2ZDRhMDRhCisKK21tXzIgc2hhMTpiNDMxYjI3MmQ4MjlmZjNhYTRkMWE1MDg1ZjQzOTRhYjRkMzMwNWI2CittbV8yIHNoYTI1NjozZjhiODNlYTM2YWFjZjY4OWJjZjFhMTI5MGE5YThlZDM0MTU2NGQzMjY4MmVhNmY3NmZlYTlhOTc5MTg2NzgyCisKK21tXzMgc2hhMToxOTk4OWQ0NTU5YWFlNDE3ZmVkZWUyNDBjY2YyYmEzMTVlYTRkYzJiCittbV8zIHNoYTI1Njo3MWIzYmZjNTc0N2FjMDMzZmZmOWVhMGFiMzllZTQ1M2EzYWYyOTY5ODkwZTc1ZDZlZjU0N2I4NzU0NGUyNjgxCisKK21uXzEgc2hhMTpiZDA4NGIwYzI3YzdiNmNjMzRmMTFkNmQwNTA5YTI5YmUzY2FmOTcwCittbl8xIHNoYTI1Njo0N2E2NzQ1MDU4M2Q3YTMyOWViMDFhN2M0YmE2NDQ5NDVhZjcyYzBlZDJjN2M5NWViNWEwMGQ2ZTQ2ZDRkNDgzCisKK21uXzIgc2hhMTphNzE2ZDU4ZGU0YTU3MGUwMDM4ZjVjMzA3YmQ4ZGIzNGRhZWEwMjFmCittbl8yIHNoYTI1NjpmOTUxMDRjMWViZTI3YWNiODRiYWMyNWE3YmU5OGM3MWY2YjhkMzA1NGIyMWYzNTdhNWJlMGM1MjRhZDk3ZTA4CisKK25tXzEgc2hhMTpjOGYyNTc4MWU4ZjE3OTJlM2U0MGI3NDIyNWUyMDU1MzA0MWI1MjI2CitubV8xIHNoYTI1NjowOWJhZGRjN2FmYWE2MmU2MmUxNTJjMjNjOWMzYWI5NGJmMTVhMzg5NDAzMWUyMjdlOWJlN2ZlNjhlMWY0ZTQ5CisKK25tXzIgc2hhMTpjZGI5YThjM2RhNTcxNTAyYWMzMDIyNWU5YzE3YmVjY2I4Mzg3OTgzCitubV8yIHNoYTI1Njo1OGI1MjI3OTU2YWMyZDJhMDhkMGVmYTUxM2MwYWUzNzQzMDk0OGIxNjc5MWVhMzg2OWExMzA4ZGJmMDU1MzZkCisKK25hXzEgc2hhMToxNTg4NTg4MWVhNjkxMTUzNTFjMDliMzgzNzFmMDM0OGEzZmI4YzY3CituYV8xIHNoYTI1NjoxOGU0ZmRkMTY3MGNkNzk2OGVlMjNkMzViZmQyOWU1NDE4ZDU2ZmIxOTBjODQwMDk0YzFjNTdjZWVlMGFhZDhmCisKK25kXzEgc2hhMTphNGUxNzllNDI5MWU1NTM2YTVlMWM4MmUwOTEwNTI3NzJkMmM1YTkzCituZF8xIHNoYTI1NjowN2RhYzliMDFkMDA5NTZlYTBjNjViZDk5M2Q3ZGU0ODY0YWVlZjJlZDNjYmIxMjU1ZDlmMWQ5NDlmY2Q2ZGY2CisKK3NzXzEgc2hhMTo0MGM5NTlmOTg0YzhiODlhMmIwMjUyMGQxN2YwMGQ3MTdmMDI0Mzk3Citzc18xIHNoYTI1Njo1MGZjMWI1ZGY3NGQ5OTEwZGIyZjkyNzA5OTM0ODQyMzVmMTViNjliNzViMDFiY2ZiNTNlMDU5Mjg5ZDE0YWY5CisKK3NzXzIgc2hhMToyYWM1NDdhZTk2MTRhMDBkMWIyODI3NWRlNjA4MTMxZjdhMGUyNTlmCitzc18yIHNoYTI1NjphOTBmMDJlNjA0NGYxNDk3ZDEzZGI1ODdkMjJhYjEyZjkwMTUwYTdkMWUwODRhZmNmOTYwNjVmYWIzNWFlMmJjCisKK3R0XzEgc2hhMTo0YWMxMzQ1ODg5OWFiOTA4ZWYzYjExMjhmYTM3OGRhZWZjODhkMzU2Cit0dF8xIHNoYTI1NjpjNTMxMTNjN2RkNTA2MGU4NmI1YjI1MTQyOGJkMDU4ZjY3MjZmNjYyNzNjNmEyNGJmZjFjNjFhMDRmNDk4ZGQzCisKK3R0XzIgc2hhMTo0Yzg2ZjlhODVmYmM1ZTY4MDRlZTJlMTdhNzk3NTM4ZmJlNzg1YmNhCit0dF8yIHNoYTI1NjowNzc1ZjJhMjk2MTI5YTdjZjI4NjJiNDZiYzBlODhjMTRkNTkzZjI3NzNhM2UzZmIxYzUxOTNkYjZmNWE3ZTc3CisKK3R0XzMgc2hhMTpjNGU0YTEyMjMxYjlmYTc5YTAwNTNjYjYwNzdmY2IyMWJiNWIxMzVhCit0dF8zIHNoYTI1Njo0Nzg2MGY5M2NkZDIxMWY5NjQ0M2UwNTYwZjIxYzU3YWI2YzJmNGIwYWMyN2ZmMDM2NTFhMzUyZTUzZmU4NDg0CisKK3pfXzEgc2hhMTo3ZDY3MGZkY2RiOTkyOWY2YzdkYWMxOTZmZjc4Njg5Y2QxYzU2NmExCit6X18xIHNoYTI1Njo0NGQwZjM3YWZmNWU1MWNmY2ZkZDExMzRjOTNhNjQxOWJjY2E3Yjk5NjRmNzkyZmZjZDVmOWI0ZmNiYTFlZTYzCisKK3pfXzIgc2hhMTo1ZTVmMjIwNzJiYjM5ZjZlMTJjZjY2M2E1N2NiNjM0Yzc2ZWVmYjQ5Cit6X18yIHNoYTI1NjpkMjlkZTE2MjExMzE5MGZlZDEwNGViNWYwMTA4MjBjZWY0ZTMxNWY4OWI5MzI2ZTg0OTdmNzIxOWZiNzM3ODk0CisKK3pfXzMgc2hhMToxYmE1MjM5NTVkNTE2MDY4MWFmNjVjYjc3NjQxMWY1NzRjMWU4MTU1Cit6X18zIHNoYTI1NjowNzQyMmQ3NzJiMDc3OTRhYjQzNjlhNTY0OGU2MTc3MTlmODljMmQyMjEyY2JlYWIwNWQ5NzIxNGI2NDcxNjM2CisKK3phYTEgc2hhMTo4YWNiOGU5NzUwZTNmNjQ0YmYzMjNmY2YzZDMzODg0OWRiMTA2Yzc3Cit6YWExIHNoYTI1NjplNzliMDI5MjgyYzhhYmVjMmQ5ZjNmN2ZhY2VhZjJhMTQwNWUwMmQxZjM2OGU2NjQ1MGFlNjZjZjViNjhkMWY0CisKK3phYTIgc2hhMTo2YzBiOTkyODZkMGJjZTU1MWFjNGE3YjNkZmY4YjcwNmVkZmYzNzE1Cit6YWEyIHNoYTI1NjpjODJiZDc4YzNlNjllYTE3OTZlNmIxYTdhM2JhNDViYjEwNmM1MGU4MTkyOTY0NzViODYyMTIzZDNmNWNjNWEwCisKK3phbjEgc2hhMTowODc0OTQyNjIwODRjZWZlZTdlZDQ4NGQyMGM4ZGMwNTgwNzkxMjcyCit6YW4xIHNoYTI1Njo0YjE1OWViMzgwNGQwNTU5OTAyM2RkMDc0Zjc3MWQwNmQwMjg3MGY0YWIyNGE3MTY1YWRkOGFjM2Q3MDNiOGQzCisKK3pkZDEgc2hhMTo4NzkwMDdlZmFlNjI0ZDJiMTMwNzIxNGIyNGE5NTZmMGE4ZDY4NmE4Cit6ZGQxIHNoYTI1NjplZWNmZGQ0ZDgwOTJkZDAzNjNmYjZkNDU0OGI1NGM2YWZjODk4MmMzZWQ5YjM0ZTM5M2YxZDZhOTIxZDhlYWEzCisKK3pkbTEgc2hhMTo5YjU0MWIyMjc1YzA2ZTNhN2IxM2YyOGJhZGY1Mjk0ZTJhZTYzZGY0Cit6ZG0xIHNoYTI1NjphYjEzNmU4OGUxOWE4NDNjNGJmNzcxM2QyMDkwZDVhMjE4NmJhMTZhNmE4MGRhY2MxMmVlZGRkMjU2YThlNTU2CisKK3pkbTIgc2hhMTpkNzczNzFkMTU4MTdmY2FhNTdlZWVjMjdmNzcwYzUwNWJhOTc0ZWMxCit6ZG0yIHNoYTI1NjoxYzFhNWY1NzM2M2Y0NmExNWQ5NWNlODUyN2IzYzJjMTU4ZDg4ZDE2ODUzYjRhY2JmODFiZDIwZmQyYzg5YTQ2CisKK3pkbjEgc2hhMTpiZWI1ZDM4YzU1MjgzZDI4MDY4NWVhMjFhMGU1MGNmY2MwY2EwNjRhCit6ZG4xIHNoYTI1NjowZjBlY2E2NjE4MzYxN2IwYWE1YWQ3NGIyNTY1NDAzMjlmODQxNDcwOTIyY2E2NzYwMjYzYzk5NmQ4MjVlYjE4CisKK3ptZDEgc2hhMTpkNDFmZGE0MWI3ZWM0ZGU0NmI0M2NiN2VhNDJhNDUwMDFhZTM5M2Q1Cit6bWQxIHNoYTI1NjoxZWQzMmQ0ODE4NTJlZGRmMzFhMGNlMTI2NTJhMGFkMTRiZjViN2E4NDI2NjdiNWRiYjBiNTBmMzViZjFjODBhCisKK3ptZDIgc2hhMTphNzlhYzNiZTkzNzc2MzllMWM3ZDFlZGYxYWUxYjNhNWYwY2NkOGE5Cit6bWQyIHNoYTI1NjpiMjM4ZGEyMTFiNDA0Zjg5MTdkZjJkOWM2ZjcwMzA1MzVlOTA0YjIxODYxMzEwMDdhM2MyOTJlYzY5MDJmOTMzCisKK3ptbTEgc2hhMTo0Y2EyMmJhZTI1MjdkM2Q5ZTE2NzY0OThhMGZiYTNiMzU1YmQxMjc4Cit6bW0xIHNoYTI1NjowNzJiMWQ4NWI1ZjM0ZmFiYzk5ZGZhNDYwMDhjNTQxOGRmNjgzMDJkM2UzMTc0MzAwMDZmNDliMzJkMjQ0MjI2CisKK3ptbTIgc2hhMTo2MTQyMmJhOWMyYzg3MzQxNjA2MWE4OGNkNDBhNTlhMzViNTc2NDc0Cit6bW0yIHNoYTI1Njo4MWRkNWQyYjNjNWNkYTE2ZmVmNTUyMjU2YWVkNGUyZWEwODAyYTg0NTBhMDhmMzA4YTkyMTQyMTEyZmY2ZGRhCisKK3ptbTMgc2hhMTo2OTdhYWQ3NzE1YTFlNzMwNmNhNzYyOTBhM2RkNDIwOGZiYWVkZGZhCit6bW0zIHNoYTI1Njo4YjEwZmFiNDllOWJlMzQxNGFhNWU5YTkzZDBlNDZmOTU2OTA1MzQ0MDEzOGE3YzE5YTVlYjU1MzZkOGU5NWJmCisKK3ptbjEgc2hhMTpiMTZkN2IyNWI4NjlmMmJlYjEyNGVmYTUzNDY3ZDhhMTU1MGFkNjk0Cit6bW4xIHNoYTI1Njo2MDllNGY3NWQxMjk1ZTg0NGM4MjZmZWViYTIxM2FjYjBiNmNmYzYwOWFkZmU4ZmY3MDViMTllMzgyOWFlM2U5CisKK3ptbjIgc2hhMTphNWM1NDRjMjFjZmNiMDdlYjgwYTRkODlhNWI3ZDE1NzAwMDJlZGZkCit6bW4yIHNoYTI1NjpkNmQwM2VkZjJkYzFhM2IyNjdhODIwNWRlNWY0MWEyZmY0YjAzZGVmOGM3YWUwMjA1MmI1NDNmYjA5ZDU4OWZjCisKK3puYTEgc2hhMTpkMTI5NzljMjJmZmY2OWM1OWNhOTQwOWU3YThmZTNlZTI1ZWFlZTgwCit6bmExIHNoYTI1NjpiMzdiODBlNzg5ZThlYTMyYWEzMjNmMDA0NjI4ZjAyMDEzZjYzMjEyNGIwMjgyYzdmZTAwYTEyN2QzYzY0YzNjCisKK3puZDEgc2hhMTphMTgzOTNjNjM2Yjk4ZTliZDcyOTZiOGI0MzdlYTQ5OTJiNzI0NDBjCit6bmQxIHNoYTI1NjphZjkyYTIyZWVlOGMzODQxMGEwYzlkMmI1MTM1YTEwYWViMDUyY2JjN2NmNjc1NTQxZWQ5YTY3YmZjYWY3Y2Y5CisKK3pubTEgc2hhMTozZmRiZTE3ZmQwMTMzMDNhMmU5ODFlMWNhMWM2Y2Q2ZTcyNzg5MDg3Cit6bm0xIHNoYTI1NjpmNzVhZWFhMGMxMWU3NjkxOGUzODFjMTA1ZjA3NTI5MzJjNjE1MGU5NDFmZWM1NjVkMjRmYTMxMDk4YTEzZGMxCisKK3pubTIgc2hhMTo3ZTA5ZDZhM2ExNGJkNjMwOTEzZThjNzU2OTNjZWEzMjE1N2I2MDZkCit6bm0yIHNoYTI1Njo5MzhkNzNjZmJhYTFjOTAyYTg0ZmI1YjNhZmQ5NzM2YWEwNTkwMzY3ZmI5YmQ1OWM2YzRkMDcyY2U3MGZjZDZkCiBFT0YKIAotY2F0ID4udGVzdC1yZWN1cnNpdmUtT0EgPDxcRU9GCi06MDAwMDAwIDEwMDY0NCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIGNjYmE3MmFkMzg4OGEzNTIwYjM5ZWZjZjc4MGI5ZWU2NDE2NzUzNWQgQQlBQQotOjAwMDAwMCAxMDA2NDQgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCA3ZTQyNmZiMDc5NDc5ZmQ2N2Y2ZDgxZjk4NGU0ZWM2NDlhNDRiYzI1IEEJQU4KLToxMDA2NDQgMDAwMDAwIGJjYzY4ZWY5OTcwMTc0NjZkNWM5MDk0YmNmNzY5MjI5NWY1ODhjOWEgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECURECi06MDAwMDAwIDEwMDY0NCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIDY4YTZkOGI5MWRhMTEwNDVjZjRhYTNhNWFiOWYyYTc4MWM3MDEyNDkgQQlERi9ERgotOjEwMDY0NCAwMDAwMDAgMTQxYzFmMTY0MjMyOGU0YmM0NmE3ZDgwMWE3MWRhMzkyZTY2NzkxZSAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIEQJRE0KLToxMDA2NDQgMDAwMDAwIDM1YWJkZTE1MDZkZGY4MDY1NzJmZjRkNDA3YmQwNjg4NWQwZjhlZTkgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECUROCi06MDAwMDAwIDEwMDY0NCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIDFkNDExMjJlYmRkN2E2NDBmMjlkM2M5Y2M0ZjlkNzAwOTQzNzQ3NjIgQQlMTAotOjEwMDY0NCAxMDA2NDQgMDNmMjRjOGM0NzAwYmFiY2NmZDI4YjY1NGU3ZThlYWM0MDJhZDZjZCAxMDNkOWY4OWI1MGI5YWFkMDMwNTRiNTc5YmU1ZTdhYTY2NWYyZDU3IE0JTUQKLToxMDA2NDQgMTAwNjQ0IGIyNTg1MDhhZmI3Y2ViNDQ5OTgxYmQ5ZDYzZDJkM2U5NzFiZjhkMzQgYjQzMWIyNzJkODI5ZmYzYWE0ZDFhNTA4NWY0Mzk0YWI0ZDMzMDViNiBNCU1NCi06MTAwNjQ0IDEwMDY0NCBiZDA4NGIwYzI3YzdiNmNjMzRmMTFkNmQwNTA5YTI5YmUzY2FmOTcwIGE3MTZkNThkZTRhNTcwZTAwMzhmNWMzMDdiZDhkYjM0ZGFlYTAyMWYgTQlNTgotOjEwMDY0NCAxMDA2NDQgNDBjOTU5Zjk4NGM4Yjg5YTJiMDI1MjBkMTdmMDBkNzE3ZjAyNDM5NyAyYWM1NDdhZTk2MTRhMDBkMWIyODI3NWRlNjA4MTMxZjdhMGUyNTlmIE0JU1MKLToxMDA2NDQgMTAwNjQ0IDRhYzEzNDU4ODk5YWI5MDhlZjNiMTEyOGZhMzc4ZGFlZmM4OGQzNTYgNGM4NmY5YTg1ZmJjNWU2ODA0ZWUyZTE3YTc5NzUzOGZiZTc4NWJjYSBNCVRUCi06MDAwMDAwIDEwMDY0NCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIDhhY2I4ZTk3NTBlM2Y2NDRiZjMyM2ZjZjNkMzM4ODQ5ZGIxMDZjNzcgQQlaL0FBCi06MDAwMDAwIDEwMDY0NCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIDA4NzQ5NDI2MjA4NGNlZmVlN2VkNDg0ZDIwYzhkYzA1ODA3OTEyNzIgQQlaL0FOCi06MTAwNjQ0IDAwMDAwMCA4NzkwMDdlZmFlNjI0ZDJiMTMwNzIxNGIyNGE5NTZmMGE4ZDY4NmE4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgRAlaL0RECi06MTAwNjQ0IDAwMDAwMCA5YjU0MWIyMjc1YzA2ZTNhN2IxM2YyOGJhZGY1Mjk0ZTJhZTYzZGY0IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgRAlaL0RNCi06MTAwNjQ0IDAwMDAwMCBiZWI1ZDM4YzU1MjgzZDI4MDY4NWVhMjFhMGU1MGNmY2MwY2EwNjRhIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgRAlaL0ROCi06MTAwNjQ0IDEwMDY0NCBkNDFmZGE0MWI3ZWM0ZGU0NmI0M2NiN2VhNDJhNDUwMDFhZTM5M2Q1IGE3OWFjM2JlOTM3NzYzOWUxYzdkMWVkZjFhZTFiM2E1ZjBjY2Q4YTkgTQlaL01ECi06MTAwNjQ0IDEwMDY0NCA0Y2EyMmJhZTI1MjdkM2Q5ZTE2NzY0OThhMGZiYTNiMzU1YmQxMjc4IDYxNDIyYmE5YzJjODczNDE2MDYxYTg4Y2Q0MGE1OWEzNWI1NzY0NzQgTQlaL01NCi06MTAwNjQ0IDEwMDY0NCBiMTZkN2IyNWI4NjlmMmJlYjEyNGVmYTUzNDY3ZDhhMTU1MGFkNjk0IGE1YzU0NGMyMWNmY2IwN2ViODBhNGQ4OWE1YjdkMTU3MDAwMmVkZmQgTQlaL01OCitjYXQgPi50ZXN0LXBsYWluLU9BIDw8RU9GCis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgYWFfMSkgQQlBQQorOjAwMDAwMCAxMDA2NDQgJCh0ZXN0X29pZCB6ZXJvKSAkKHRlc3Rfb2lkIGFuXzEpIEEJQU4KKzoxMDA2NDQgMDAwMDAwICQodGVzdF9vaWQgZGRfMSkgJCh0ZXN0X29pZCB6ZXJvKSBECURECis6MDAwMDAwIDA0MDAwMCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgZGZfMSkgQQlERgorOjEwMDY0NCAwMDAwMDAgJCh0ZXN0X29pZCBkbV8xKSAkKHRlc3Rfb2lkIHplcm8pIEQJRE0KKzoxMDA2NDQgMDAwMDAwICQodGVzdF9vaWQgZG5fMSkgJCh0ZXN0X29pZCB6ZXJvKSBECUROCis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgbGxfMikgQQlMTAorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCBtZF8xKSAkKHRlc3Rfb2lkIG1kXzIpIE0JTUQKKzoxMDA2NDQgMTAwNjQ0ICQodGVzdF9vaWQgbW1fMSkgJCh0ZXN0X29pZCBtbV8yKSBNCU1NCis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIG1uXzEpICQodGVzdF9vaWQgbW5fMikgTQlNTgorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCBzc18xKSAkKHRlc3Rfb2lkIHNzXzIpIE0JU1MKKzoxMDA2NDQgMTAwNjQ0ICQodGVzdF9vaWQgdHRfMSkgJCh0ZXN0X29pZCB0dF8yKSBNCVRUCis6MDQwMDAwIDA0MDAwMCAkKHRlc3Rfb2lkIHpfXzEpICQodGVzdF9vaWQgel9fMikgTQlaCiBFT0YKLWNhdCA+LnRlc3QtcGxhaW4tT0IgPDxcRU9GCi06MDAwMDAwIDEwMDY0NCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIDZhYTJiNTMzNWIxNjQzMWEwZWY3MWU1YzBhMjhiZTY5MTgzY2Y2YTIgQQlBQQotOjEwMDY0NCAwMDAwMDAgYmNjNjhlZjk5NzAxNzQ2NmQ1YzkwOTRiY2Y3NjkyMjk1ZjU4OGM5YSAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIEQJREQKLTowMDAwMDAgMTAwNjQ0IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgNzE0MjBhYjgxZTI1NDE0NWQyNmQ2ZmMwY2RkZWU2NGMxYWNkNDc4NyBBCURGCi06MTAwNjQ0IDEwMDY0NCAxNDFjMWYxNjQyMzI4ZTRiYzQ2YTdkODAxYTcxZGEzOTJlNjY3OTFlIDNjNGQ4ZGU1ZmJhZDA4NTcyYmFiOGUxMGVlZjhkYmIyNjRjZjAyMzEgTQlETQotOjAwMDAwMCAxMDA2NDQgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAxZDQxMTIyZWJkZDdhNjQwZjI5ZDNjOWNjNGY5ZDcwMDk0Mzc0NzYyIEEJTEwKLToxMDA2NDQgMDAwMDAwIDAzZjI0YzhjNDcwMGJhYmNjZmQyOGI2NTRlN2U4ZWFjNDAyYWQ2Y2QgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECU1ECi06MTAwNjQ0IDEwMDY0NCBiMjU4NTA4YWZiN2NlYjQ0OTk4MWJkOWQ2M2QyZDNlOTcxYmY4ZDM0IDE5OTg5ZDQ1NTlhYWU0MTdmZWRlZTI0MGNjZjJiYTMxNWVhNGRjMmIgTQlNTQotOjAwMDAwMCAxMDA2NDQgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAxNTg4NTg4MWVhNjkxMTUzNTFjMDliMzgzNzFmMDM0OGEzZmI4YzY3IEEJTkEKLToxMDA2NDQgMDAwMDAwIGE0ZTE3OWU0MjkxZTU1MzZhNWUxYzgyZTA5MTA1Mjc3MmQyYzVhOTMgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECU5ECi06MTAwNjQ0IDEwMDY0NCBjOGYyNTc4MWU4ZjE3OTJlM2U0MGI3NDIyNWUyMDU1MzA0MWI1MjI2IGNkYjlhOGMzZGE1NzE1MDJhYzMwMjI1ZTljMTdiZWNjYjgzODc5ODMgTQlOTQotOjEwMDY0NCAxMDA2NDQgNDBjOTU5Zjk4NGM4Yjg5YTJiMDI1MjBkMTdmMDBkNzE3ZjAyNDM5NyAyYWM1NDdhZTk2MTRhMDBkMWIyODI3NWRlNjA4MTMxZjdhMGUyNTlmIE0JU1MKLToxMDA2NDQgMTAwNjQ0IDRhYzEzNDU4ODk5YWI5MDhlZjNiMTEyOGZhMzc4ZGFlZmM4OGQzNTYgYzRlNGExMjIzMWI5ZmE3OWEwMDUzY2I2MDc3ZmNiMjFiYjViMTM1YSBNCVRUCi06MDQwMDAwIDA0MDAwMCA3ZDY3MGZkY2RiOTkyOWY2YzdkYWMxOTZmZjc4Njg5Y2QxYzU2NmExIDFiYTUyMzk1NWQ1MTYwNjgxYWY2NWNiNzc2NDExZjU3NGMxZTgxNTUgTQlaCisKK2NhdCA+LnRlc3QtcmVjdXJzaXZlLU9BIDw8RU9GCis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgYWFfMSkgQQlBQQorOjAwMDAwMCAxMDA2NDQgJCh0ZXN0X29pZCB6ZXJvKSAkKHRlc3Rfb2lkIGFuXzEpIEEJQU4KKzoxMDA2NDQgMDAwMDAwICQodGVzdF9vaWQgZGRfMSkgJCh0ZXN0X29pZCB6ZXJvKSBECURECis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgZGZkMSkgQQlERi9ERgorOjEwMDY0NCAwMDAwMDAgJCh0ZXN0X29pZCBkbV8xKSAkKHRlc3Rfb2lkIHplcm8pIEQJRE0KKzoxMDA2NDQgMDAwMDAwICQodGVzdF9vaWQgZG5fMSkgJCh0ZXN0X29pZCB6ZXJvKSBECUROCis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgbGxfMikgQQlMTAorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCBtZF8xKSAkKHRlc3Rfb2lkIG1kXzIpIE0JTUQKKzoxMDA2NDQgMTAwNjQ0ICQodGVzdF9vaWQgbW1fMSkgJCh0ZXN0X29pZCBtbV8yKSBNCU1NCis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIG1uXzEpICQodGVzdF9vaWQgbW5fMikgTQlNTgorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCBzc18xKSAkKHRlc3Rfb2lkIHNzXzIpIE0JU1MKKzoxMDA2NDQgMTAwNjQ0ICQodGVzdF9vaWQgdHRfMSkgJCh0ZXN0X29pZCB0dF8yKSBNCVRUCis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgemFhMSkgQQlaL0FBCis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgemFuMSkgQQlaL0FOCis6MTAwNjQ0IDAwMDAwMCAkKHRlc3Rfb2lkIHpkZDEpICQodGVzdF9vaWQgemVybykgRAlaL0RECis6MTAwNjQ0IDAwMDAwMCAkKHRlc3Rfb2lkIHpkbTEpICQodGVzdF9vaWQgemVybykgRAlaL0RNCis6MTAwNjQ0IDAwMDAwMCAkKHRlc3Rfb2lkIHpkbjEpICQodGVzdF9vaWQgemVybykgRAlaL0ROCis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIHptZDEpICQodGVzdF9vaWQgem1kMikgTQlaL01ECis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIHptbTEpICQodGVzdF9vaWQgem1tMikgTQlaL01NCis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIHptbjEpICQodGVzdF9vaWQgem1uMikgTQlaL01OCiBFT0YKLWNhdCA+LnRlc3QtcmVjdXJzaXZlLU9CIDw8XEVPRgotOjAwMDAwMCAxMDA2NDQgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCA2YWEyYjUzMzViMTY0MzFhMGVmNzFlNWMwYTI4YmU2OTE4M2NmNmEyIEEJQUEKLToxMDA2NDQgMDAwMDAwIGJjYzY4ZWY5OTcwMTc0NjZkNWM5MDk0YmNmNzY5MjI5NWY1ODhjOWEgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECURECi06MDAwMDAwIDEwMDY0NCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIDcxNDIwYWI4MWUyNTQxNDVkMjZkNmZjMGNkZGVlNjRjMWFjZDQ3ODcgQQlERgotOjEwMDY0NCAxMDA2NDQgMTQxYzFmMTY0MjMyOGU0YmM0NmE3ZDgwMWE3MWRhMzkyZTY2NzkxZSAzYzRkOGRlNWZiYWQwODU3MmJhYjhlMTBlZWY4ZGJiMjY0Y2YwMjMxIE0JRE0KLTowMDAwMDAgMTAwNjQ0IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgMWQ0MTEyMmViZGQ3YTY0MGYyOWQzYzljYzRmOWQ3MDA5NDM3NDc2MiBBCUxMCi06MTAwNjQ0IDAwMDAwMCAwM2YyNGM4YzQ3MDBiYWJjY2ZkMjhiNjU0ZTdlOGVhYzQwMmFkNmNkIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgRAlNRAotOjEwMDY0NCAxMDA2NDQgYjI1ODUwOGFmYjdjZWI0NDk5ODFiZDlkNjNkMmQzZTk3MWJmOGQzNCAxOTk4OWQ0NTU5YWFlNDE3ZmVkZWUyNDBjY2YyYmEzMTVlYTRkYzJiIE0JTU0KLTowMDAwMDAgMTAwNjQ0IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgMTU4ODU4ODFlYTY5MTE1MzUxYzA5YjM4MzcxZjAzNDhhM2ZiOGM2NyBBCU5BCi06MTAwNjQ0IDAwMDAwMCBhNGUxNzllNDI5MWU1NTM2YTVlMWM4MmUwOTEwNTI3NzJkMmM1YTkzIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgRAlORAotOjEwMDY0NCAxMDA2NDQgYzhmMjU3ODFlOGYxNzkyZTNlNDBiNzQyMjVlMjA1NTMwNDFiNTIyNiBjZGI5YThjM2RhNTcxNTAyYWMzMDIyNWU5YzE3YmVjY2I4Mzg3OTgzIE0JTk0KLToxMDA2NDQgMTAwNjQ0IDQwYzk1OWY5ODRjOGI4OWEyYjAyNTIwZDE3ZjAwZDcxN2YwMjQzOTcgMmFjNTQ3YWU5NjE0YTAwZDFiMjgyNzVkZTYwODEzMWY3YTBlMjU5ZiBNCVNTCi06MTAwNjQ0IDEwMDY0NCA0YWMxMzQ1ODg5OWFiOTA4ZWYzYjExMjhmYTM3OGRhZWZjODhkMzU2IGM0ZTRhMTIyMzFiOWZhNzlhMDA1M2NiNjA3N2ZjYjIxYmI1YjEzNWEgTQlUVAotOjAwMDAwMCAxMDA2NDQgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCA2YzBiOTkyODZkMGJjZTU1MWFjNGE3YjNkZmY4YjcwNmVkZmYzNzE1IEEJWi9BQQotOjEwMDY0NCAwMDAwMDAgODc5MDA3ZWZhZTYyNGQyYjEzMDcyMTRiMjRhOTU2ZjBhOGQ2ODZhOCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIEQJWi9ERAotOjEwMDY0NCAxMDA2NDQgOWI1NDFiMjI3NWMwNmUzYTdiMTNmMjhiYWRmNTI5NGUyYWU2M2RmNCBkNzczNzFkMTU4MTdmY2FhNTdlZWVjMjdmNzcwYzUwNWJhOTc0ZWMxIE0JWi9ETQotOjEwMDY0NCAwMDAwMDAgZDQxZmRhNDFiN2VjNGRlNDZiNDNjYjdlYTQyYTQ1MDAxYWUzOTNkNSAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIEQJWi9NRAotOjEwMDY0NCAxMDA2NDQgNGNhMjJiYWUyNTI3ZDNkOWUxNjc2NDk4YTBmYmEzYjM1NWJkMTI3OCA2OTdhYWQ3NzE1YTFlNzMwNmNhNzYyOTBhM2RkNDIwOGZiYWVkZGZhIE0JWi9NTQotOjAwMDAwMCAxMDA2NDQgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBkMTI5NzljMjJmZmY2OWM1OWNhOTQwOWU3YThmZTNlZTI1ZWFlZTgwIEEJWi9OQQotOjEwMDY0NCAwMDAwMDAgYTE4MzkzYzYzNmI5OGU5YmQ3Mjk2YjhiNDM3ZWE0OTkyYjcyNDQwYyAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIEQJWi9ORAotOjEwMDY0NCAxMDA2NDQgM2ZkYmUxN2ZkMDEzMzAzYTJlOTgxZTFjYTFjNmNkNmU3Mjc4OTA4NyA3ZTA5ZDZhM2ExNGJkNjMwOTEzZThjNzU2OTNjZWEzMjE1N2I2MDZkIE0JWi9OTQorY2F0ID4udGVzdC1wbGFpbi1PQiA8PEVPRgorOjAwMDAwMCAxMDA2NDQgJCh0ZXN0X29pZCB6ZXJvKSAkKHRlc3Rfb2lkIGFhXzIpIEEJQUEKKzoxMDA2NDQgMDAwMDAwICQodGVzdF9vaWQgZGRfMSkgJCh0ZXN0X29pZCB6ZXJvKSBECURECis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgZGZfMikgQQlERgorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCBkbV8xKSAkKHRlc3Rfb2lkIGRtXzIpIE0JRE0KKzowMDAwMDAgMTAwNjQ0ICQodGVzdF9vaWQgemVybykgJCh0ZXN0X29pZCBsbF8yKSBBCUxMCis6MTAwNjQ0IDAwMDAwMCAkKHRlc3Rfb2lkIG1kXzEpICQodGVzdF9vaWQgemVybykgRAlNRAorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCBtbV8xKSAkKHRlc3Rfb2lkIG1tXzMpIE0JTU0KKzowMDAwMDAgMTAwNjQ0ICQodGVzdF9vaWQgemVybykgJCh0ZXN0X29pZCBuYV8xKSBBCU5BCis6MTAwNjQ0IDAwMDAwMCAkKHRlc3Rfb2lkIG5kXzEpICQodGVzdF9vaWQgemVybykgRAlORAorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCBubV8xKSAkKHRlc3Rfb2lkIG5tXzIpIE0JTk0KKzoxMDA2NDQgMTAwNjQ0ICQodGVzdF9vaWQgc3NfMSkgJCh0ZXN0X29pZCBzc18yKSBNCVNTCis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIHR0XzEpICQodGVzdF9vaWQgdHRfMykgTQlUVAorOjA0MDAwMCAwNDAwMDAgJCh0ZXN0X29pZCB6X18xKSAkKHRlc3Rfb2lkIHpfXzMpIE0JWgogRU9GCi1jYXQgPi50ZXN0LXBsYWluLUFCIDw8XEVPRgotOjEwMDY0NCAxMDA2NDQgY2NiYTcyYWQzODg4YTM1MjBiMzllZmNmNzgwYjllZTY0MTY3NTM1ZCA2YWEyYjUzMzViMTY0MzFhMGVmNzFlNWMwYTI4YmU2OTE4M2NmNmEyIE0JQUEKLToxMDA2NDQgMDAwMDAwIDdlNDI2ZmIwNzk0NzlmZDY3ZjZkODFmOTg0ZTRlYzY0OWE0NGJjMjUgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECUFOCi06MDAwMDAwIDEwMDY0NCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIDcxNDIwYWI4MWUyNTQxNDVkMjZkNmZjMGNkZGVlNjRjMWFjZDQ3ODcgQQlERgotOjA0MDAwMCAwMDAwMDAgNmQ1MGY2NWQzYmRhYjkxYzYzNDQ0Mjk0ZDM4ZjA4YWVmZjMyOGU0MiAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIEQJREYKLTowMDAwMDAgMTAwNjQ0IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgM2M0ZDhkZTVmYmFkMDg1NzJiYWI4ZTEwZWVmOGRiYjI2NGNmMDIzMSBBCURNCi06MDAwMDAwIDEwMDY0NCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIDM1YWJkZTE1MDZkZGY4MDY1NzJmZjRkNDA3YmQwNjg4NWQwZjhlZTkgQQlETgotOjEwMDY0NCAwMDAwMDAgMTAzZDlmODliNTBiOWFhZDAzMDU0YjU3OWJlNWU3YWE2NjVmMmQ1NyAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIEQJTUQKLToxMDA2NDQgMTAwNjQ0IGI0MzFiMjcyZDgyOWZmM2FhNGQxYTUwODVmNDM5NGFiNGQzMzA1YjYgMTk5ODlkNDU1OWFhZTQxN2ZlZGVlMjQwY2NmMmJhMzE1ZWE0ZGMyYiBNCU1NCi06MTAwNjQ0IDEwMDY0NCBhNzE2ZDU4ZGU0YTU3MGUwMDM4ZjVjMzA3YmQ4ZGIzNGRhZWEwMjFmIGJkMDg0YjBjMjdjN2I2Y2MzNGYxMWQ2ZDA1MDlhMjliZTNjYWY5NzAgTQlNTgotOjAwMDAwMCAxMDA2NDQgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAxNTg4NTg4MWVhNjkxMTUzNTFjMDliMzgzNzFmMDM0OGEzZmI4YzY3IEEJTkEKLToxMDA2NDQgMDAwMDAwIGE0ZTE3OWU0MjkxZTU1MzZhNWUxYzgyZTA5MTA1Mjc3MmQyYzVhOTMgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECU5ECi06MTAwNjQ0IDEwMDY0NCBjOGYyNTc4MWU4ZjE3OTJlM2U0MGI3NDIyNWUyMDU1MzA0MWI1MjI2IGNkYjlhOGMzZGE1NzE1MDJhYzMwMjI1ZTljMTdiZWNjYjgzODc5ODMgTQlOTQotOjEwMDY0NCAxMDA2NDQgNGM4NmY5YTg1ZmJjNWU2ODA0ZWUyZTE3YTc5NzUzOGZiZTc4NWJjYSBjNGU0YTEyMjMxYjlmYTc5YTAwNTNjYjYwNzdmY2IyMWJiNWIxMzVhIE0JVFQKLTowNDAwMDAgMDQwMDAwIDVlNWYyMjA3MmJiMzlmNmUxMmNmNjYzYTU3Y2I2MzRjNzZlZWZiNDkgMWJhNTIzOTU1ZDUxNjA2ODFhZjY1Y2I3NzY0MTFmNTc0YzFlODE1NSBNCVoKK2NhdCA+LnRlc3QtcmVjdXJzaXZlLU9CIDw8RU9GCis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgYWFfMikgQQlBQQorOjEwMDY0NCAwMDAwMDAgJCh0ZXN0X29pZCBkZF8xKSAkKHRlc3Rfb2lkIHplcm8pIEQJREQKKzowMDAwMDAgMTAwNjQ0ICQodGVzdF9vaWQgemVybykgJCh0ZXN0X29pZCBkZl8yKSBBCURGCis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIGRtXzEpICQodGVzdF9vaWQgZG1fMikgTQlETQorOjAwMDAwMCAxMDA2NDQgJCh0ZXN0X29pZCB6ZXJvKSAkKHRlc3Rfb2lkIGxsXzIpIEEJTEwKKzoxMDA2NDQgMDAwMDAwICQodGVzdF9vaWQgbWRfMSkgJCh0ZXN0X29pZCB6ZXJvKSBECU1ECis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIG1tXzEpICQodGVzdF9vaWQgbW1fMykgTQlNTQorOjAwMDAwMCAxMDA2NDQgJCh0ZXN0X29pZCB6ZXJvKSAkKHRlc3Rfb2lkIG5hXzEpIEEJTkEKKzoxMDA2NDQgMDAwMDAwICQodGVzdF9vaWQgbmRfMSkgJCh0ZXN0X29pZCB6ZXJvKSBECU5ECis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIG5tXzEpICQodGVzdF9vaWQgbm1fMikgTQlOTQorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCBzc18xKSAkKHRlc3Rfb2lkIHNzXzIpIE0JU1MKKzoxMDA2NDQgMTAwNjQ0ICQodGVzdF9vaWQgdHRfMSkgJCh0ZXN0X29pZCB0dF8zKSBNCVRUCis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgemFhMikgQQlaL0FBCis6MTAwNjQ0IDAwMDAwMCAkKHRlc3Rfb2lkIHpkZDEpICQodGVzdF9vaWQgemVybykgRAlaL0RECis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIHpkbTEpICQodGVzdF9vaWQgemRtMikgTQlaL0RNCis6MTAwNjQ0IDAwMDAwMCAkKHRlc3Rfb2lkIHptZDEpICQodGVzdF9vaWQgemVybykgRAlaL01ECis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIHptbTEpICQodGVzdF9vaWQgem1tMykgTQlaL01NCis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgem5hMSkgQQlaL05BCis6MTAwNjQ0IDAwMDAwMCAkKHRlc3Rfb2lkIHpuZDEpICQodGVzdF9vaWQgemVybykgRAlaL05ECis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIHpubTEpICQodGVzdF9vaWQgem5tMikgTQlaL05NCiBFT0YKLWNhdCA+LnRlc3QtcmVjdXJzaXZlLUFCIDw8XEVPRgotOjEwMDY0NCAxMDA2NDQgY2NiYTcyYWQzODg4YTM1MjBiMzllZmNmNzgwYjllZTY0MTY3NTM1ZCA2YWEyYjUzMzViMTY0MzFhMGVmNzFlNWMwYTI4YmU2OTE4M2NmNmEyIE0JQUEKLToxMDA2NDQgMDAwMDAwIDdlNDI2ZmIwNzk0NzlmZDY3ZjZkODFmOTg0ZTRlYzY0OWE0NGJjMjUgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECUFOCi06MDAwMDAwIDEwMDY0NCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIDcxNDIwYWI4MWUyNTQxNDVkMjZkNmZjMGNkZGVlNjRjMWFjZDQ3ODcgQQlERgotOjEwMDY0NCAwMDAwMDAgNjhhNmQ4YjkxZGExMTA0NWNmNGFhM2E1YWI5ZjJhNzgxYzcwMTI0OSAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIEQJREYvREYKLTowMDAwMDAgMTAwNjQ0IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgM2M0ZDhkZTVmYmFkMDg1NzJiYWI4ZTEwZWVmOGRiYjI2NGNmMDIzMSBBCURNCi06MDAwMDAwIDEwMDY0NCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIDM1YWJkZTE1MDZkZGY4MDY1NzJmZjRkNDA3YmQwNjg4NWQwZjhlZTkgQQlETgotOjEwMDY0NCAwMDAwMDAgMTAzZDlmODliNTBiOWFhZDAzMDU0YjU3OWJlNWU3YWE2NjVmMmQ1NyAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIEQJTUQKLToxMDA2NDQgMTAwNjQ0IGI0MzFiMjcyZDgyOWZmM2FhNGQxYTUwODVmNDM5NGFiNGQzMzA1YjYgMTk5ODlkNDU1OWFhZTQxN2ZlZGVlMjQwY2NmMmJhMzE1ZWE0ZGMyYiBNCU1NCi06MTAwNjQ0IDEwMDY0NCBhNzE2ZDU4ZGU0YTU3MGUwMDM4ZjVjMzA3YmQ4ZGIzNGRhZWEwMjFmIGJkMDg0YjBjMjdjN2I2Y2MzNGYxMWQ2ZDA1MDlhMjliZTNjYWY5NzAgTQlNTgotOjAwMDAwMCAxMDA2NDQgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAxNTg4NTg4MWVhNjkxMTUzNTFjMDliMzgzNzFmMDM0OGEzZmI4YzY3IEEJTkEKLToxMDA2NDQgMDAwMDAwIGE0ZTE3OWU0MjkxZTU1MzZhNWUxYzgyZTA5MTA1Mjc3MmQyYzVhOTMgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECU5ECi06MTAwNjQ0IDEwMDY0NCBjOGYyNTc4MWU4ZjE3OTJlM2U0MGI3NDIyNWUyMDU1MzA0MWI1MjI2IGNkYjlhOGMzZGE1NzE1MDJhYzMwMjI1ZTljMTdiZWNjYjgzODc5ODMgTQlOTQotOjEwMDY0NCAxMDA2NDQgNGM4NmY5YTg1ZmJjNWU2ODA0ZWUyZTE3YTc5NzUzOGZiZTc4NWJjYSBjNGU0YTEyMjMxYjlmYTc5YTAwNTNjYjYwNzdmY2IyMWJiNWIxMzVhIE0JVFQKLToxMDA2NDQgMTAwNjQ0IDhhY2I4ZTk3NTBlM2Y2NDRiZjMyM2ZjZjNkMzM4ODQ5ZGIxMDZjNzcgNmMwYjk5Mjg2ZDBiY2U1NTFhYzRhN2IzZGZmOGI3MDZlZGZmMzcxNSBNCVovQUEKLToxMDA2NDQgMDAwMDAwIDA4NzQ5NDI2MjA4NGNlZmVlN2VkNDg0ZDIwYzhkYzA1ODA3OTEyNzIgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECVovQU4KLTowMDAwMDAgMTAwNjQ0IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgZDc3MzcxZDE1ODE3ZmNhYTU3ZWVlYzI3Zjc3MGM1MDViYTk3NGVjMSBBCVovRE0KLTowMDAwMDAgMTAwNjQ0IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgYmViNWQzOGM1NTI4M2QyODA2ODVlYTIxYTBlNTBjZmNjMGNhMDY0YSBBCVovRE4KLToxMDA2NDQgMDAwMDAwIGE3OWFjM2JlOTM3NzYzOWUxYzdkMWVkZjFhZTFiM2E1ZjBjY2Q4YTkgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECVovTUQKLToxMDA2NDQgMTAwNjQ0IDYxNDIyYmE5YzJjODczNDE2MDYxYTg4Y2Q0MGE1OWEzNWI1NzY0NzQgNjk3YWFkNzcxNWExZTczMDZjYTc2MjkwYTNkZDQyMDhmYmFlZGRmYSBNCVovTU0KLToxMDA2NDQgMTAwNjQ0IGE1YzU0NGMyMWNmY2IwN2ViODBhNGQ4OWE1YjdkMTU3MDAwMmVkZmQgYjE2ZDdiMjViODY5ZjJiZWIxMjRlZmE1MzQ2N2Q4YTE1NTBhZDY5NCBNCVovTU4KLTowMDAwMDAgMTAwNjQ0IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAgZDEyOTc5YzIyZmZmNjljNTljYTk0MDllN2E4ZmUzZWUyNWVhZWU4MCBBCVovTkEKLToxMDA2NDQgMDAwMDAwIGExODM5M2M2MzZiOThlOWJkNzI5NmI4YjQzN2VhNDk5MmI3MjQ0MGMgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBECVovTkQKLToxMDA2NDQgMTAwNjQ0IDNmZGJlMTdmZDAxMzMwM2EyZTk4MWUxY2ExYzZjZDZlNzI3ODkwODcgN2UwOWQ2YTNhMTRiZDYzMDkxM2U4Yzc1NjkzY2VhMzIxNTdiNjA2ZCBNCVovTk0KK2NhdCA+LnRlc3QtcGxhaW4tQUIgPDxFT0YKKzoxMDA2NDQgMTAwNjQ0ICQodGVzdF9vaWQgYWFfMSkgJCh0ZXN0X29pZCBhYV8yKSBNCUFBCis6MTAwNjQ0IDAwMDAwMCAkKHRlc3Rfb2lkIGFuXzEpICQodGVzdF9vaWQgemVybykgRAlBTgorOjAwMDAwMCAxMDA2NDQgJCh0ZXN0X29pZCB6ZXJvKSAkKHRlc3Rfb2lkIGRmXzIpIEEJREYKKzowNDAwMDAgMDAwMDAwICQodGVzdF9vaWQgZGZfMSkgJCh0ZXN0X29pZCB6ZXJvKSBECURGCis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgZG1fMikgQQlETQorOjAwMDAwMCAxMDA2NDQgJCh0ZXN0X29pZCB6ZXJvKSAkKHRlc3Rfb2lkIGRuXzEpIEEJRE4KKzoxMDA2NDQgMDAwMDAwICQodGVzdF9vaWQgbWRfMikgJCh0ZXN0X29pZCB6ZXJvKSBECU1ECis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIG1tXzIpICQodGVzdF9vaWQgbW1fMykgTQlNTQorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCBtbl8yKSAkKHRlc3Rfb2lkIG1uXzEpIE0JTU4KKzowMDAwMDAgMTAwNjQ0ICQodGVzdF9vaWQgemVybykgJCh0ZXN0X29pZCBuYV8xKSBBCU5BCis6MTAwNjQ0IDAwMDAwMCAkKHRlc3Rfb2lkIG5kXzEpICQodGVzdF9vaWQgemVybykgRAlORAorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCBubV8xKSAkKHRlc3Rfb2lkIG5tXzIpIE0JTk0KKzoxMDA2NDQgMTAwNjQ0ICQodGVzdF9vaWQgdHRfMikgJCh0ZXN0X29pZCB0dF8zKSBNCVRUCis6MDQwMDAwIDA0MDAwMCAkKHRlc3Rfb2lkIHpfXzIpICQodGVzdF9vaWQgel9fMykgTQlaCitFT0YKK2NhdCA+LnRlc3QtcmVjdXJzaXZlLUFCIDw8RU9GCis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIGFhXzEpICQodGVzdF9vaWQgYWFfMikgTQlBQQorOjEwMDY0NCAwMDAwMDAgJCh0ZXN0X29pZCBhbl8xKSAkKHRlc3Rfb2lkIHplcm8pIEQJQU4KKzowMDAwMDAgMTAwNjQ0ICQodGVzdF9vaWQgemVybykgJCh0ZXN0X29pZCBkZl8yKSBBCURGCis6MTAwNjQ0IDAwMDAwMCAkKHRlc3Rfb2lkIGRmZDEpICQodGVzdF9vaWQgemVybykgRAlERi9ERgorOjAwMDAwMCAxMDA2NDQgJCh0ZXN0X29pZCB6ZXJvKSAkKHRlc3Rfb2lkIGRtXzIpIEEJRE0KKzowMDAwMDAgMTAwNjQ0ICQodGVzdF9vaWQgemVybykgJCh0ZXN0X29pZCBkbl8xKSBBCUROCis6MTAwNjQ0IDAwMDAwMCAkKHRlc3Rfb2lkIG1kXzIpICQodGVzdF9vaWQgemVybykgRAlNRAorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCBtbV8yKSAkKHRlc3Rfb2lkIG1tXzMpIE0JTU0KKzoxMDA2NDQgMTAwNjQ0ICQodGVzdF9vaWQgbW5fMikgJCh0ZXN0X29pZCBtbl8xKSBNCU1OCis6MDAwMDAwIDEwMDY0NCAkKHRlc3Rfb2lkIHplcm8pICQodGVzdF9vaWQgbmFfMSkgQQlOQQorOjEwMDY0NCAwMDAwMDAgJCh0ZXN0X29pZCBuZF8xKSAkKHRlc3Rfb2lkIHplcm8pIEQJTkQKKzoxMDA2NDQgMTAwNjQ0ICQodGVzdF9vaWQgbm1fMSkgJCh0ZXN0X29pZCBubV8yKSBNCU5NCis6MTAwNjQ0IDEwMDY0NCAkKHRlc3Rfb2lkIHR0XzIpICQodGVzdF9vaWQgdHRfMykgTQlUVAorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCB6YWExKSAkKHRlc3Rfb2lkIHphYTIpIE0JWi9BQQorOjEwMDY0NCAwMDAwMDAgJCh0ZXN0X29pZCB6YW4xKSAkKHRlc3Rfb2lkIHplcm8pIEQJWi9BTgorOjAwMDAwMCAxMDA2NDQgJCh0ZXN0X29pZCB6ZXJvKSAkKHRlc3Rfb2lkIHpkbTIpIEEJWi9ETQorOjAwMDAwMCAxMDA2NDQgJCh0ZXN0X29pZCB6ZXJvKSAkKHRlc3Rfb2lkIHpkbjEpIEEJWi9ETgorOjEwMDY0NCAwMDAwMDAgJCh0ZXN0X29pZCB6bWQyKSAkKHRlc3Rfb2lkIHplcm8pIEQJWi9NRAorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCB6bW0yKSAkKHRlc3Rfb2lkIHptbTMpIE0JWi9NTQorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCB6bW4yKSAkKHRlc3Rfb2lkIHptbjEpIE0JWi9NTgorOjAwMDAwMCAxMDA2NDQgJCh0ZXN0X29pZCB6ZXJvKSAkKHRlc3Rfb2lkIHpuYTEpIEEJWi9OQQorOjEwMDY0NCAwMDAwMDAgJCh0ZXN0X29pZCB6bmQxKSAkKHRlc3Rfb2lkIHplcm8pIEQJWi9ORAorOjEwMDY0NCAxMDA2NDQgJCh0ZXN0X29pZCB6bm0xKSAkKHRlc3Rfb2lkIHpubTIpIE0JWi9OTQogRU9GCiAKIGNtcF9kaWZmX2ZpbGVzX291dHB1dCAoKSB7CmRpZmYgLS1naXQgYS90L3Q0MDA2LWRpZmYtbW9kZS5zaCBiL3QvdDQwMDYtZGlmZi1tb2RlLnNoCmluZGV4IGE4ZTAxZWMuLjAzNDg5YWYgMTAwNzU1Ci0tLSBhL3QvdDQwMDYtZGlmZi1tb2RlLnNoCisrKyBiL3QvdDQwMDYtZGlmZi1tb2RlLnNoCkBAIC0zMiwyOCArMzIsMzcgQEAKIAlnaXQgY29tbWl0IC1tIGJpbmJpbgogJwogCi0jIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tc3RhdCBvdXRwdXQgYWZ0ZXIgdGV4dCBjaG1vZCcgJwotIyAJdGVzdF9jaG1vZCAteCByZXpyb3YgJiYKLSMgCWVjaG8gIiAwIGZpbGVzIGNoYW5nZWQiID5leHBlY3QgJiYKLSMgCWdpdCBkaWZmIEhFQUQgLS1zdGF0ID5hY3R1YWwgJiYKLSMJdGVzdF9pMThuY21wIGV4cGVjdCBhY3R1YWwKLSMgJwotIwotIyB0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXNob3J0c3RhdCBvdXRwdXQgYWZ0ZXIgdGV4dCBjaG1vZCcgJwotIyAJZ2l0IGRpZmYgSEVBRCAtLXNob3J0c3RhdCA+YWN0dWFsICYmCi0jIAl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAotIyAnCi0jCi0jIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tc3RhdCBvdXRwdXQgYWZ0ZXIgYmluYXJ5IGNobW9kJyAnCi0jIAl0ZXN0X2NobW9kICt4IGJpbmJpbiAmJgotIyAJZWNobyAiIDAgZmlsZXMgY2hhbmdlZCIgPmV4cGVjdCAmJgotIyAJZ2l0IGRpZmYgSEVBRCAtLXN0YXQgPmFjdHVhbCAmJgotIyAJdGVzdF9pMThuY21wIGV4cGVjdCBhY3R1YWwKLSMgJwotIwotIyB0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXNob3J0c3RhdCBvdXRwdXQgYWZ0ZXIgYmluYXJ5IGNobW9kJyAnCi0jIAlnaXQgZGlmZiBIRUFEIC0tc2hvcnRzdGF0ID5hY3R1YWwgJiYKLSMgCXRlc3RfaTE4bmNtcCBleHBlY3QgYWN0dWFsCi0jICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tc3RhdCBvdXRwdXQgYWZ0ZXIgdGV4dCBjaG1vZCcgJworCXRlc3RfY2htb2QgLXggcmV6cm92ICYmCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCSByZXpyb3YgfCAwCisJIDEgZmlsZSBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisJRU9GCisJZ2l0IGRpZmYgSEVBRCAtLXN0YXQgPmFjdHVhbCAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tc2hvcnRzdGF0IG91dHB1dCBhZnRlciB0ZXh0IGNobW9kJyAnCisJdGFpbCAtbiAxIDxleHBlY3QgPmV4cGVjdC5zaG9ydCAmJgorCWdpdCBkaWZmIEhFQUQgLS1zaG9ydHN0YXQgPmFjdHVhbCAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3Quc2hvcnQgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tc3RhdCBvdXRwdXQgYWZ0ZXIgYmluYXJ5IGNobW9kJyAnCisJdGVzdF9jaG1vZCAreCBiaW5iaW4gJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkgYmluYmluIHwgQmluCisJIHJlenJvdiB8ICAgMAorCSAyIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKwlFT0YKKwlnaXQgZGlmZiBIRUFEIC0tc3RhdCA+YWN0dWFsICYmCisJdGVzdF9pMThuY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1zaG9ydHN0YXQgb3V0cHV0IGFmdGVyIGJpbmFyeSBjaG1vZCcgJworCXRhaWwgLW4gMSA8ZXhwZWN0ID5leHBlY3Quc2hvcnQgJiYKKwlnaXQgZGlmZiBIRUFEIC0tc2hvcnRzdGF0ID5hY3R1YWwgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0LnNob3J0IGFjdHVhbAorJwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDQwMDktZGlmZi1yZW5hbWUtNC5zaCBiL3QvdDQwMDktZGlmZi1yZW5hbWUtNC5zaAppbmRleCAzNjQxZmQ4Li5iNjNiZGYwIDEwMDc1NQotLS0gYS90L3Q0MDA5LWRpZmYtcmVuYW1lLTQuc2gKKysrIGIvdC90NDAwOS1kaWZmLXJlbmFtZS00LnNoCkBAIC0xNCw2ICsxNCw3IEBACiAgICAgJ2NhdCAiJFRFU1RfRElSRUNUT1JZIi9kaWZmLWxpYi9DT1BZSU5HID5DT1BZSU5HICYmCiAgICAgIGVjaG8gZnJvdHogPnJlenJvdiAmJgogICAgIGdpdCB1cGRhdGUtaW5kZXggLS1hZGQgQ09QWUlORyByZXpyb3YgJiYKKyAgICBvcmlnPSQoZ2l0IGhhc2gtb2JqZWN0IENPUFlJTkcpICYmCiAgICAgdHJlZT0kKGdpdCB3cml0ZS10cmVlKSAmJgogICAgIGVjaG8gJHRyZWUnCiAKQEAgLTIyLDYgKzIzLDggQEAKICAgICAnc2VkIC1lICdzL0hPV0VWRVIvSG93ZXZlci8nIDxDT1BZSU5HID5DT1BZSU5HLjEgJiYKICAgICBzZWQgLWUgJ3MvR1BML0cuUC5ML2cnIDxDT1BZSU5HID5DT1BZSU5HLjIgJiYKICAgICBybSAtZiBDT1BZSU5HICYmCisgICAgYzE9JChnaXQgaGFzaC1vYmplY3QgQ09QWUlORy4xKSAmJgorICAgIGMyPSQoZ2l0IGhhc2gtb2JqZWN0IENPUFlJTkcuMikgJiYKICAgICBnaXQgdXBkYXRlLWluZGV4IC0tYWRkIC0tcmVtb3ZlIENPUFlJTkcgQ09QWUlORy4/JwogCiAjIHRyZWUgaGFzIENPUFlJTkcgYW5kIHJlenJvdi4gIHdvcmsgdHJlZSBoYXMgQ09QWUlORy4xIGFuZCBDT1BZSU5HLjIsCkBAIC0zMSwxMSArMzQsMTEgQEAKIAogZ2l0IGRpZmYtaW5kZXggLXogLUMgJHRyZWUgPmN1cnJlbnQKIAotY2F0ID5leHBlY3RlZCA8PFxFT0YKLToxMDA2NDQgMTAwNjQ0IDZmZjg3YzQ2NjQ5ODFlNDM5NzYyNTc5MWM4ZWEzYmJiNWYyMjc5YTMgMDYwM2IzMjM4YTA3NmRjNmM4MDIyYWVkYzY2NDhmYTUyM2ExNzE3OCBDMTIzNAorY2F0ID5leHBlY3RlZCA8PEVPRgorOjEwMDY0NCAxMDA2NDQgJG9yaWcgJGMxIEMxMjM0CiBDT1BZSU5HCiBDT1BZSU5HLjEKLToxMDA2NDQgMTAwNjQ0IDZmZjg3YzQ2NjQ5ODFlNDM5NzYyNTc5MWM4ZWEzYmJiNWYyMjc5YTMgMDZjNjc5NjFiYmFlZDM0YTEyN2Y3NmQyNjFmNGMwYmY3M2VkYTQ3MSBSMTIzNAorOjEwMDY0NCAxMDA2NDQgJG9yaWcgJGMyIFIxMjM0CiBDT1BZSU5HCiBDT1BZSU5HLjIKIEVPRgpAQCAtNTcsMTAgKzYwLDEwIEBACiAjIGFib3V0IHJlenJvdi4KIAogZ2l0IGRpZmYtaW5kZXggLXogLUMgJHRyZWUgPmN1cnJlbnQKLWNhdCA+ZXhwZWN0ZWQgPDxcRU9GCi06MTAwNjQ0IDEwMDY0NCA2ZmY4N2M0NjY0OTgxZTQzOTc2MjU3OTFjOGVhM2JiYjVmMjI3OWEzIDA2YzY3OTYxYmJhZWQzNGExMjdmNzZkMjYxZjRjMGJmNzNlZGE0NzEgTQorY2F0ID5leHBlY3RlZCA8PEVPRgorOjEwMDY0NCAxMDA2NDQgJG9yaWcgJGMyIE0KIENPUFlJTkcKLToxMDA2NDQgMTAwNjQ0IDZmZjg3YzQ2NjQ5ODFlNDM5NzYyNTc5MWM4ZWEzYmJiNWYyMjc5YTMgMDYwM2IzMjM4YTA3NmRjNmM4MDIyYWVkYzY2NDhmYTUyM2ExNzE3OCBDMTIzNAorOjEwMDY0NCAxMDA2NDQgJG9yaWcgJGMxIEMxMjM0CiBDT1BZSU5HCiBDT1BZSU5HLjEKIEVPRgpAQCAtODIsOCArODUsOCBAQAogICAgICBnaXQgdXBkYXRlLWluZGV4IC0tYWRkIC0tcmVtb3ZlIENPUFlJTkcgQ09QWUlORy4xJwogCiBnaXQgZGlmZi1pbmRleCAteiAtQyAtLWZpbmQtY29waWVzLWhhcmRlciAkdHJlZSA+Y3VycmVudAotY2F0ID5leHBlY3RlZCA8PFxFT0YKLToxMDA2NDQgMTAwNjQ0IDZmZjg3YzQ2NjQ5ODFlNDM5NzYyNTc5MWM4ZWEzYmJiNWYyMjc5YTMgMDYwM2IzMjM4YTA3NmRjNmM4MDIyYWVkYzY2NDhmYTUyM2ExNzE3OCBDMTIzNAorY2F0ID5leHBlY3RlZCA8PEVPRgorOjEwMDY0NCAxMDA2NDQgJG9yaWcgJGMxIEMxMjM0CiBDT1BZSU5HCiBDT1BZSU5HLjEKIEVPRgpkaWZmIC0tZ2l0IGEvdC90NDAxMC1kaWZmLXBhdGhzcGVjLnNoIGIvdC90NDAxMC1kaWZmLXBhdGhzcGVjLnNoCmluZGV4IDI4MWY4ZmEuLmU1Y2EzNTkgMTAwNzU1Ci0tLSBhL3QvdDQwMTAtZGlmZi1wYXRoc3BlYy5zaAorKysgYi90L3Q0MDEwLWRpZmYtcGF0aHNwZWMuc2gKQEAgLTE3LDExICsxNywxNSBAQAogICAgICdlY2hvIGZyb3R6ID5maWxlMCAmJgogICAgICBta2RpciBwYXRoMSAmJgogICAgICBlY2hvIHJlenJvdiA+cGF0aDEvZmlsZTEgJiYKKyAgICAgYmVmb3JlMD0kKGdpdCBoYXNoLW9iamVjdCBmaWxlMCkgJiYKKyAgICAgYmVmb3JlMT0kKGdpdCBoYXNoLW9iamVjdCBwYXRoMS9maWxlMSkgJiYKICAgICAgZ2l0IHVwZGF0ZS1pbmRleCAtLWFkZCBmaWxlMCBwYXRoMS9maWxlMSAmJgogICAgICB0cmVlPSQoZ2l0IHdyaXRlLXRyZWUpICYmCiAgICAgIGVjaG8gIiR0cmVlIiAmJgogICAgICBlY2hvIG5pdGZvbCA+ZmlsZTAgJiYKICAgICAgZWNobyB5b21pbiA+cGF0aDEvZmlsZTEgJiYKKyAgICAgYWZ0ZXIwPSQoZ2l0IGhhc2gtb2JqZWN0IGZpbGUwKSAmJgorICAgICBhZnRlcjE9JChnaXQgaGFzaC1vYmplY3QgcGF0aDEvZmlsZTEpICYmCiAgICAgIGdpdCB1cGRhdGUtaW5kZXggZmlsZTAgcGF0aDEvZmlsZTEnCiAKIGNhdCA+ZXhwZWN0ZWQgPDxcRU9GCkBAIC0zMSwzMiArMzUsMzIgQEAKICAgICAnZ2l0IGRpZmYtaW5kZXggLS1jYWNoZWQgJHRyZWUgLS0gcGF0aCA+Y3VycmVudCAmJgogICAgICBjb21wYXJlX2RpZmZfcmF3IGN1cnJlbnQgZXhwZWN0ZWQnCiAKLWNhdCA+ZXhwZWN0ZWQgPDxcRU9GCi06MTAwNjQ0IDEwMDY0NCA3NjY0OThkOTNhNGIwNjA1N2E4ZTQ5ZDIzZjQwNjhmMTE3MGZmMzhmIDBhNDFlMTE1YWI2MWJlMDMyOGExOWIyOWYxOGNkY2I0OTMzOGQ1MTYgTQlwYXRoMS9maWxlMQorY2F0ID5leHBlY3RlZCA8PEVPRgorOjEwMDY0NCAxMDA2NDQgJGJlZm9yZTEgJGFmdGVyMSBNCXBhdGgxL2ZpbGUxCiBFT0YKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAogICAgICdsaW1pdCB0byBwYXRoMSBzaG91bGQgc2hvdyBwYXRoMS9maWxlMScgXAogICAgICdnaXQgZGlmZi1pbmRleCAtLWNhY2hlZCAkdHJlZSAtLSBwYXRoMSA+Y3VycmVudCAmJgogICAgICBjb21wYXJlX2RpZmZfcmF3IGN1cnJlbnQgZXhwZWN0ZWQnCiAKLWNhdCA+ZXhwZWN0ZWQgPDxcRU9GCi06MTAwNjQ0IDEwMDY0NCA3NjY0OThkOTNhNGIwNjA1N2E4ZTQ5ZDIzZjQwNjhmMTE3MGZmMzhmIDBhNDFlMTE1YWI2MWJlMDMyOGExOWIyOWYxOGNkY2I0OTMzOGQ1MTYgTQlwYXRoMS9maWxlMQorY2F0ID5leHBlY3RlZCA8PEVPRgorOjEwMDY0NCAxMDA2NDQgJGJlZm9yZTEgJGFmdGVyMSBNCXBhdGgxL2ZpbGUxCiBFT0YKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAogICAgICdsaW1pdCB0byBwYXRoMS8gc2hvdWxkIHNob3cgcGF0aDEvZmlsZTEnIFwKICAgICAnZ2l0IGRpZmYtaW5kZXggLS1jYWNoZWQgJHRyZWUgLS0gcGF0aDEvID5jdXJyZW50ICYmCiAgICAgIGNvbXBhcmVfZGlmZl9yYXcgY3VycmVudCBleHBlY3RlZCcKIAotY2F0ID5leHBlY3RlZCA8PFxFT0YKLToxMDA2NDQgMTAwNjQ0IDc2NjQ5OGQ5M2E0YjA2MDU3YThlNDlkMjNmNDA2OGYxMTcwZmYzOGYgMGE0MWUxMTVhYjYxYmUwMzI4YTE5YjI5ZjE4Y2RjYjQ5MzM4ZDUxNiBNCXBhdGgxL2ZpbGUxCitjYXQgPmV4cGVjdGVkIDw8RU9GCis6MTAwNjQ0IDEwMDY0NCAkYmVmb3JlMSAkYWZ0ZXIxIE0JcGF0aDEvZmlsZTEKIEVPRgogdGVzdF9leHBlY3Rfc3VjY2VzcyBcCiAgICAgJyIqZmlsZTEiIHNob3VsZCBzaG93IHBhdGgxL2ZpbGUxJyBcCiAgICAgJ2dpdCBkaWZmLWluZGV4IC0tY2FjaGVkICR0cmVlIC0tICIqZmlsZTEiID5jdXJyZW50ICYmCiAgICAgIGNvbXBhcmVfZGlmZl9yYXcgY3VycmVudCBleHBlY3RlZCcKIAotY2F0ID5leHBlY3RlZCA8PFxFT0YKLToxMDA2NDQgMTAwNjQ0IDhlNDAyMGJiNWE4ZDhjODczYjI1ZGUxNTkzM2U3NWNjMGZjMjc1ZGYgZGNhNmI5MjMwM2JlZmM5MzA4NmFhMDI1ZDkwYTVmYWNkN2ViMjgxMiBNCWZpbGUwCitjYXQgPmV4cGVjdGVkIDw8RU9GCis6MTAwNjQ0IDEwMDY0NCAkYmVmb3JlMCAkYWZ0ZXIwIE0JZmlsZTAKIEVPRgogdGVzdF9leHBlY3Rfc3VjY2VzcyBcCiAgICAgJ2xpbWl0IHRvIGZpbGUwIHNob3VsZCBzaG93IGZpbGUwJyBcCmRpZmYgLS1naXQgYS90L3Q0MDExLWRpZmYtc3ltbGluay5zaCBiL3QvdDQwMTEtZGlmZi1zeW1saW5rLnNoCmluZGV4IDVhZTE5YjkuLjcxNzAzNGIgMTAwNzU1Ci0tLSBhL3QvdDQwMTEtZGlmZi1zeW1saW5rLnNoCisrKyBiL3QvdDQwMTEtZGlmZi1zeW1saW5rLnNoCkBAIC05LDExICs5LDI0IEBACiAuIC4vdGVzdC1saWIuc2gKIC4gIiRURVNUX0RJUkVDVE9SWSIvZGlmZi1saWIuc2gKIAorIyBQcmludCB0aGUgc2hvcnQgT0lEIG9mIGEgc3ltbGluayB3aXRoIHRoZSBnaXZlbiBuYW1lLgorc3ltbGlua19vaWQgKCkgeworCWxvY2FsIG9pZD0kKHByaW50ZiAiJXMiICIkMSIgfCBnaXQgaGFzaC1vYmplY3QgLS1zdGRpbikgJiYKKwlnaXQgcmV2LXBhcnNlIC0tc2hvcnQgIiRvaWQiCit9CisKKyMgUHJpbnQgdGhlIHNob3J0IE9JRCBvZiB0aGUgZ2l2ZW4gZmlsZS4KK3Nob3J0X29pZCAoKSB7CisJbG9jYWwgb2lkPSQoZ2l0IGhhc2gtb2JqZWN0ICIkMSIpICYmCisJZ2l0IHJldi1wYXJzZSAtLXNob3J0ICIkb2lkIgorfQorCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaWZmIG5ldyBzeW1saW5rIGFuZCBmaWxlJyAnCi0JY2F0ID5leHBlY3RlZCA8PC1cRU9GICYmCisJc3ltbGluaz0kKHN5bWxpbmtfb2lkIHh5enp5KSAmJgorCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCiAJZGlmZiAtLWdpdCBhL2Zyb3R6IGIvZnJvdHoKIAluZXcgZmlsZSBtb2RlIDEyMDAwMAotCWluZGV4IDAwMDAwMDAuLjdjNDY1YWYKKwlpbmRleCAwMDAwMDAwLi4kc3ltbGluawogCS0tLSAvZGV2L251bGwKIAkrKysgYi9mcm90egogCUBAIC0wLDAgKzEgQEAKQEAgLTIxLDcgKzM0LDcgQEAKIAlcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKIAlkaWZmIC0tZ2l0IGEvbml0Zm9sIGIvbml0Zm9sCiAJbmV3IGZpbGUgbW9kZSAxMDA2NDQKLQlpbmRleCAwMDAwMDAwLi43YzQ2NWFmCisJaW5kZXggMDAwMDAwMC4uJHN5bWxpbmsKIAktLS0gL2Rldi9udWxsCiAJKysrIGIvbml0Zm9sCiAJQEAgLTAsMCArMSBAQApAQCAtNDYsMTAgKzU5LDEwIEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RpZmYgcmVtb3ZlZCBzeW1saW5rIGFuZCBmaWxlJyAnCi0JY2F0ID5leHBlY3RlZCA8PC1cRU9GICYmCisJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKIAlkaWZmIC0tZ2l0IGEvZnJvdHogYi9mcm90egogCWRlbGV0ZWQgZmlsZSBtb2RlIDEyMDAwMAotCWluZGV4IDdjNDY1YWYuLjAwMDAwMDAKKwlpbmRleCAkc3ltbGluay4uMDAwMDAwMAogCS0tLSBhL2Zyb3R6CiAJKysrIC9kZXYvbnVsbAogCUBAIC0xICswLDAgQEAKQEAgLTU3LDcgKzcwLDcgQEAKIAlcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKIAlkaWZmIC0tZ2l0IGEvbml0Zm9sIGIvbml0Zm9sCiAJZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Ci0JaW5kZXggN2M0NjVhZi4uMDAwMDAwMAorCWluZGV4ICRzeW1saW5rLi4wMDAwMDAwCiAJLS0tIGEvbml0Zm9sCiAJKysrIC9kZXYvbnVsbAogCUBAIC0xICswLDAgQEAKQEAgLTkwLDkgKzEwMywxMCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaWZmIGRpZmZlcmVudCBzeW1saW5rIGFuZCBmaWxlJyAnCi0JY2F0ID5leHBlY3RlZCA8PC1cRU9GICYmCisJbmV3PSQoc3ltbGlua19vaWQgeXh5eXopICYmCisJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKIAlkaWZmIC0tZ2l0IGEvZnJvdHogYi9mcm90egotCWluZGV4IDdjNDY1YWYuLmRmMWRiNTQgMTIwMDAwCisJaW5kZXggJHN5bWxpbmsuLiRuZXcgMTIwMDAwCiAJLS0tIGEvZnJvdHoKIAkrKysgYi9mcm90egogCUBAIC0xICsxIEBACkBAIC0xMDEsNyArMTE1LDcgQEAKIAkreXh5eXoKIAlcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKIAlkaWZmIC0tZ2l0IGEvbml0Zm9sIGIvbml0Zm9sCi0JaW5kZXggN2M0NjVhZi4uZGYxZGI1NCAxMDA2NDQKKwlpbmRleCAkc3ltbGluay4uJG5ldyAxMDA2NDQKIAktLS0gYS9uaXRmb2wKIAkrKysgYi9uaXRmb2wKIAlAQCAtMSArMSBAQApAQCAtMTM3LDE0ICsxNTEsMTYgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBTWU1MSU5LUyAnc3ltbGlua3MgZG8gbm90IHJlc3BlY3QgdXNlcmRpZmYgY29uZmlnIGJ5IHBhdGgnICcKLQljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJZmlsZT0kKHNob3J0X29pZCBmaWxlLmJpbikgJiYKKwlsaW5rPSQoc3ltbGlua19vaWQgZmlsZS5iaW4pICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCiAJZGlmZiAtLWdpdCBhL2ZpbGUuYmluIGIvZmlsZS5iaW4KIAluZXcgZmlsZSBtb2RlIDEwMDY0NAotCWluZGV4IDAwMDAwMDAuLmQ5NWYzYWQKKwlpbmRleCAwMDAwMDAwLi4kZmlsZQogCUJpbmFyeSBmaWxlcyAvZGV2L251bGwgYW5kIGIvZmlsZS5iaW4gZGlmZmVyCiAJZGlmZiAtLWdpdCBhL2xpbmsuYmluIGIvbGluay5iaW4KIAluZXcgZmlsZSBtb2RlIDEyMDAwMAotCWluZGV4IDAwMDAwMDAuLmRjZTQxZWMKKwlpbmRleCAwMDAwMDAwLi4kbGluawogCS0tLSAvZGV2L251bGwKIAkrKysgYi9saW5rLmJpbgogCUBAIC0wLDAgKzEgQEAKZGlmZiAtLWdpdCBhL3QvdDQwMTMtZGlmZi12YXJpb3VzLnNoIGIvdC90NDAxMy1kaWZmLXZhcmlvdXMuc2gKaW5kZXggN2Q5ODVmZi4uZGRlM2YxMSAxMDA3NTUKLS0tIGEvdC90NDAxMy1kaWZmLXZhcmlvdXMuc2gKKysrIGIvdC90NDAxMy1kaWZmLXZhcmlvdXMuc2gKQEAgLTcsOSArNyw2IEBACiAKIC4gLi90ZXN0LWxpYi5zaAogCi1MRj0nCi0nCi0KIHRlc3RfZXhwZWN0X3N1Y2Nlc3Mgc2V0dXAgJwogCiAJR0lUX0FVVEhPUl9EQVRFPSIyMDA2LTA2LTI2IDAwOjAwOjAwICswMDAwIiAmJgpAQCAtOTgsNiArOTUsMTIgQEAKIAlnaXQgY29tbWl0IC1tICJ1cGRhdGUgbW9kZSIgJiYKIAlnaXQgY2hlY2tvdXQgLWYgbWFzdGVyICYmCiAKKwkjIFNhbWUgbWVyZ2UgYXMgbWFzdGVyLCBidXQgd2l0aCBwYXJlbnRzIHJldmVyc2VkLiBIaWRlIGl0IGluIGEKKwkjIHBzZXVkby1yZWYgdG8gYXZvaWQgaW1wYWN0aW5nIHRlc3RzIHdpdGggLS1hbGwuCisJY29tbWl0PSQoZWNobyByZXZlcnNlIHwKKwkJIGdpdCBjb21taXQtdHJlZSAtcCBtYXN0ZXJeMiAtcCBtYXN0ZXJeMSBtYXN0ZXJee3RyZWV9KSAmJgorCWdpdCB1cGRhdGUtcmVmIFJFVkVSU0UgJGNvbW1pdCAmJgorCiAJZ2l0IGNvbmZpZyBkaWZmLnJlbmFtZXMgZmFsc2UgJiYKIAogCWdpdCBzaG93LWJyYW5jaApAQCAtMTE3LDYgKzEyMCwzMCBAQAogKyorKyBbaW5pdGlhbF0gSW5pdGlhbAogRU9GCiAKK3Byb2Nlc3NfZGlmZnMgKCkgeworCV94MDQ9IlswLTlhLWZdWzAtOWEtZl1bMC05YS1mXVswLTlhLWZdIiAmJgorCV94MDc9IiRfeDA1WzAtOWEtZl1bMC05YS1mXSIgJiYKKwlzZWQgLWUgInMvJE9JRF9SRUdFWC8kWkVST19PSUQvZyIgXAorCSAgICAtZSAicy9Gcm9tICRfeDQwIC9Gcm9tICRaRVJPX09JRCAvIiBcCisJICAgIC1lICJzL2Zyb20gJF94NDApL2Zyb20gJFpFUk9fT0lEKS8iIFwKKwkgICAgLWUgInMvY29tbWl0ICRfeDQwXCQvY29tbWl0ICRaRVJPX09JRC8iIFwKKwkgICAgLWUgInMvY29tbWl0ICRfeDQwICgvY29tbWl0ICRaRVJPX09JRCAoLyIgXAorCSAgICAtZSAicy8kX3g0MCAkX3g0MCAkX3g0MC8kWkVST19PSUQgJFpFUk9fT0lEICRaRVJPX09JRC8iIFwKKwkgICAgLWUgInMvJF94NDAgJF94NDAgLyRaRVJPX09JRCAkWkVST19PSUQgLyIgXAorCSAgICAtZSAicy9eJF94NDAgJF94NDAkLyRaRVJPX09JRCAkWkVST19PSUQvIiBcCisJICAgIC1lICJzL14kX3g0MCAvJFpFUk9fT0lEIC8iIFwKKwkgICAgLWUgInMvXiRfeDQwJC8kWkVST19PSUQvIiBcCisJICAgIC1lICJzLyRfeDA3XC5cLiRfeDA3L2ZmZmZmZmYuLmZmZmZmZmYvZyIgXAorCSAgICAtZSAicy8kX3gwNywkX3gwN1wuXC4kX3gwNy9mZmZmZmZmLGZmZmZmZmYuLmZmZmZmZmYvZyIgXAorCSAgICAtZSAicy8kX3gwNyAkX3gwNyAkX3gwNy9mZmZmZmZmIGZmZmZmZmYgZmZmZmZmZi9nIiBcCisJICAgIC1lICJzLyRfeDA3ICRfeDA3IC9mZmZmZmZmIGZmZmZmZmYgL2ciIFwKKwkgICAgLWUgInMvTWVyZ2U6ICRfeDA3ICRfeDA3L01lcmdlOiBmZmZmZmZmIGZmZmZmZmYvZyIgXAorCSAgICAtZSAicy8kX3gwN1wuXC5cLi9mZmZmZmZmLi4uL2ciIFwKKwkgICAgLWUgInMvICRfeDA0XC5cLlwuLyBmZmZmLi4uL2ciIFwKKwkgICAgLWUgInMvICRfeDA0LyBmZmZmL2ciIFwKKwkgICAgIiQxIgorfQorCiBWPSQoZ2l0IHZlcnNpb24gfCBzZWQgLWUgJ3MvXmdpdCB2ZXJzaW9uIC8vJyAtZSAncy9cLi9cXC4vZycpCiB3aGlsZSByZWFkIG1hZ2ljIGNtZAogZG8KQEAgLTE1NSwxMyArMTgyLDE1IEBACiAJCX0gPiIkYWN0dWFsIiAmJgogCQlpZiB0ZXN0IC1mICIkZXhwZWN0IgogCQl0aGVuCisJCQlwcm9jZXNzX2RpZmZzICIkYWN0dWFsIiA+YWN0dWFsICYmCisJCQlwcm9jZXNzX2RpZmZzICIkZXhwZWN0IiA+ZXhwZWN0ICYmCiAJCQljYXNlICRjbWQgaW4KIAkJCSpmb3JtYXQtcGF0Y2gqIHwgKi1zdGF0KikKLQkJCQl0ZXN0X2kxOG5jbXAgIiRleHBlY3QiICIkYWN0dWFsIjs7CisJCQkJdGVzdF9pMThuY21wIGV4cGVjdCBhY3R1YWw7OwogCQkJKikKLQkJCQl0ZXN0X2NtcCAiJGV4cGVjdCIgIiRhY3R1YWwiOzsKKwkJCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsOzsKIAkJCWVzYWMgJiYKLQkJCXJtIC1mICIkYWN0dWFsIgorCQkJcm0gLWYgIiRhY3R1YWwiIGFjdHVhbCBleHBlY3QKIAkJZWxzZQogCQkJIyB0aGlzIGlzIHRvIGhlbHAgZGV2ZWxvcGluZyBuZXcgdGVzdHMuCiAJCQljcCAiJGFjdHVhbCIgIiRleHBlY3QiCkBAIC0yMzksNiArMjY4LDggQEAKICMgc3RhdCBzdW1tYXJ5IHNob3VsZCBzaG93IHRoZSBkaWZmc3RhdCBhbmQgc3VtbWFyeSB3aXRoIHRoZSBmaXJzdCBwYXJlbnQKIGRpZmYtdHJlZSAtYyAtLXN0YXQgLS1zdW1tYXJ5IHNpZGUKIGRpZmYtdHJlZSAtLWNjIC0tc3RhdCAtLXN1bW1hcnkgc2lkZQorZGlmZi10cmVlIC0tY2MgLS1zaG9ydHN0YXQgbWFzdGVyCitkaWZmLXRyZWUgLS1jYyAtLXN1bW1hcnkgUkVWRVJTRQogIyBpbXByb3ZlZCBieSBUaW1vJ3MgcGF0Y2gKIGRpZmYtdHJlZSAtLWNjIC0tcGF0Y2gtd2l0aC1zdGF0IG1hc3RlcgogIyBpbXByb3ZlZCBieSBUaW1vJ3MgcGF0Y2gKQEAgLTMzMCw2ICszNjEsOCBAQAogZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IC0tY292ZXItbGV0dGVyIC1uIGluaXRpYWwuLm1hc3Rlcl4KIAogZGlmZiAtLWFiYnJldiBpbml0aWFsLi5zaWRlCitkaWZmIC1VIGluaXRpYWwuLnNpZGUKK2RpZmYgLVUxIGluaXRpYWwuLnNpZGUKIGRpZmYgLXIgaW5pdGlhbC4uc2lkZQogZGlmZiAtLXN0YXQgaW5pdGlhbC4uc2lkZQogZGlmZiAtciAtLXN0YXQgaW5pdGlhbC4uc2lkZQpAQCAtMzUwLDYgKzM4Myw3IEBACiBkaWZmIC0tZGlyc3RhdCBtYXN0ZXJ+MSBtYXN0ZXJ+MgogZGlmZiAtLWRpcnN0YXQgaW5pdGlhbCByZWFycmFuZ2UKIGRpZmYgLS1kaXJzdGF0LWJ5LWZpbGUgaW5pdGlhbCByZWFycmFuZ2UKK2RpZmYgLS1kaXJzdGF0IC0tY2MgbWFzdGVyfjEgbWFzdGVyCiAjIE5vLWluZGV4IC0tYWJicmV2IGFuZCAtLW5vLWFiYnJldgogZGlmZiAtLXJhdyBpbml0aWFsCiA6bm9lbGxpcHNlcyBkaWZmIC0tcmF3IGluaXRpYWwKQEAgLTM3NSwxNiArNDA5LDIyIEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaWZmIC0tY2FjaGVkIG9uIHVuYm9ybiBicmFuY2gnICcKIAllY2hvIHJlZjogcmVmcy9oZWFkcy91bmJvcm4gPi5naXQvSEVBRCAmJgogCWdpdCBkaWZmIC0tY2FjaGVkID5yZXN1bHQgJiYKLQl0ZXN0X2NtcCAiJFRFU1RfRElSRUNUT1JZL3Q0MDEzL2RpZmYuZGlmZl8tLWNhY2hlZCIgcmVzdWx0CisJcHJvY2Vzc19kaWZmcyByZXN1bHQgPmFjdHVhbCAmJgorCXByb2Nlc3NfZGlmZnMgIiRURVNUX0RJUkVDVE9SWS90NDAxMy9kaWZmLmRpZmZfLS1jYWNoZWQiID5leHBlY3RlZCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaWZmIC0tY2FjaGVkIC0tIGZpbGUgb24gdW5ib3JuIGJyYW5jaCcgJwogCWdpdCBkaWZmIC0tY2FjaGVkIC0tIGZpbGUwID5yZXN1bHQgJiYKLQl0ZXN0X2NtcCAiJFRFU1RfRElSRUNUT1JZL3Q0MDEzL2RpZmYuZGlmZl8tLWNhY2hlZF8tLV9maWxlMCIgcmVzdWx0CisJcHJvY2Vzc19kaWZmcyByZXN1bHQgPmFjdHVhbCAmJgorCXByb2Nlc3NfZGlmZnMgIiRURVNUX0RJUkVDVE9SWS90NDAxMy9kaWZmLmRpZmZfLS1jYWNoZWRfLS1fZmlsZTAiID5leHBlY3RlZCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlmZiAtLWxpbmUtcHJlZml4IHdpdGggc3BhY2VzJyAnCiAJZ2l0IGRpZmYgLS1saW5lLXByZWZpeD0ifCB8IHwgIiAtLWNhY2hlZCAtLSBmaWxlMCA+cmVzdWx0ICYmCi0JdGVzdF9jbXAgIiRURVNUX0RJUkVDVE9SWS90NDAxMy9kaWZmLmRpZmZfLS1saW5lLXByZWZpeF8tLWNhY2hlZF8tLV9maWxlMCIgcmVzdWx0CisJcHJvY2Vzc19kaWZmcyByZXN1bHQgPmFjdHVhbCAmJgorCXByb2Nlc3NfZGlmZnMgIiRURVNUX0RJUkVDVE9SWS90NDAxMy9kaWZmLmRpZmZfLS1saW5lLXByZWZpeF8tLWNhY2hlZF8tLV9maWxlMCIgPmV4cGVjdGVkICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RpZmYtdHJlZSAtLXN0ZGluIHdpdGggbG9nIGZvcm1hdHRpbmcnICcKZGlmZiAtLWdpdCBhL3QvdDQwMTMvZGlmZi5kaWZmLXRyZWVfLS1jY18tLXNob3J0c3RhdF9tYXN0ZXIgYi90L3Q0MDEzL2RpZmYuZGlmZi10cmVlXy0tY2NfLS1zaG9ydHN0YXRfbWFzdGVyCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE0Y2E0MmQKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MDEzL2RpZmYuZGlmZi10cmVlXy0tY2NfLS1zaG9ydHN0YXRfbWFzdGVyCkBAIC0wLDAgKzEsNCBAQAorJCBnaXQgZGlmZi10cmVlIC0tY2MgLS1zaG9ydHN0YXQgbWFzdGVyCis1OWQzMTRhZDZmMzU2ZGQwODYwMWE0Y2Q1ZTUzMDM4MWRhM2UzYzY0CisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKykKKyQKZGlmZiAtLWdpdCBhL3QvdDQwMTMvZGlmZi5kaWZmLXRyZWVfLS1jY18tLXN1bW1hcnlfUkVWRVJTRSBiL3QvdDQwMTMvZGlmZi5kaWZmLXRyZWVfLS1jY18tLXN1bW1hcnlfUkVWRVJTRQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMjA4ZGQ1Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxMy9kaWZmLmRpZmYtdHJlZV8tLWNjXy0tc3VtbWFyeV9SRVZFUlNFCkBAIC0wLDAgKzEsNiBAQAorJCBnaXQgZGlmZi10cmVlIC0tY2MgLS1zdW1tYXJ5IFJFVkVSU0UKKzI1NjIzMjVhN2VlOTE2ZWZiMjQ4MWRhOTMwNzNiODJjZWM4MDFjYmMKKyBjcmVhdGUgbW9kZSAxMDA2NDQgZmlsZTEKKyBkZWxldGUgbW9kZSAxMDA2NDQgZmlsZTIKKyBkZWxldGUgbW9kZSAxMDA2NDQgZmlsZTMKKyQKZGlmZiAtLWdpdCBhL3QvdDQwMTMvZGlmZi5kaWZmXy0tZGlyc3RhdF8tLWNjX21hc3Rlcn4xX21hc3RlciBiL3QvdDQwMTMvZGlmZi5kaWZmXy0tZGlyc3RhdF8tLWNjX21hc3Rlcn4xX21hc3RlcgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYmE0ZTM0Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxMy9kaWZmLmRpZmZfLS1kaXJzdGF0Xy0tY2NfbWFzdGVyfjFfbWFzdGVyCkBAIC0wLDAgKzEsMyBAQAorJCBnaXQgZGlmZiAtLWRpcnN0YXQgLS1jYyBtYXN0ZXJ+MSBtYXN0ZXIKKyAgNDAuMCUgZGlyLworJApkaWZmIC0tZ2l0IGEvdC90NDAxMy9kaWZmLmRpZmZfLVUxX2luaXRpYWwuLnNpZGUgYi90L3Q0MDEzL2RpZmYuZGlmZl8tVTFfaW5pdGlhbC4uc2lkZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNjlmOGYwCi0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxMy9kaWZmLmRpZmZfLVUxX2luaXRpYWwuLnNpZGUKQEAgLTAsMCArMSwyOSBAQAorJCBnaXQgZGlmZiAtVTEgaW5pdGlhbC4uc2lkZQorZGlmZiAtLWdpdCBhL2Rpci9zdWIgYi9kaXIvc3ViCitpbmRleCAzNWQyNDJiLi43Mjg5ZTM1IDEwMDY0NAorLS0tIGEvZGlyL3N1YgorKysrIGIvZGlyL3N1YgorQEAgLTIgKzIsMyBAQCBBCisgQgorKzEKKysyCitkaWZmIC0tZ2l0IGEvZmlsZTAgYi9maWxlMAoraW5kZXggMDFlNzljMy4uZjQ2MTVkYSAxMDA2NDQKKy0tLSBhL2ZpbGUwCisrKysgYi9maWxlMAorQEAgLTMgKzMsNCBAQAorIDMKKytBCisrQgorK0MKK2RpZmYgLS1naXQgYS9maWxlMyBiL2ZpbGUzCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMC4uNzI4OWUzNQorLS0tIC9kZXYvbnVsbAorKysrIGIvZmlsZTMKK0BAIC0wLDAgKzEsNCBAQAorK0EKKytCCisrMQorKzIKKyQKZGlmZiAtLWdpdCBhL3QvdDQwMTMvZGlmZi5kaWZmXy1VMl9pbml0aWFsLi5zaWRlIGIvdC90NDAxMy9kaWZmLmRpZmZfLVUyX2luaXRpYWwuLnNpZGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGZmZTA0ZgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTMvZGlmZi5kaWZmXy1VMl9pbml0aWFsLi5zaWRlCkBAIC0wLDAgKzEsMzEgQEAKKyQgZ2l0IGRpZmYgLVUyIGluaXRpYWwuLnNpZGUKK2RpZmYgLS1naXQgYS9kaXIvc3ViIGIvZGlyL3N1YgoraW5kZXggMzVkMjQyYi4uNzI4OWUzNSAxMDA2NDQKKy0tLSBhL2Rpci9zdWIKKysrKyBiL2Rpci9zdWIKK0BAIC0xLDIgKzEsNCBAQAorIEEKKyBCCisrMQorKzIKK2RpZmYgLS1naXQgYS9maWxlMCBiL2ZpbGUwCitpbmRleCAwMWU3OWMzLi5mNDYxNWRhIDEwMDY0NAorLS0tIGEvZmlsZTAKKysrKyBiL2ZpbGUwCitAQCAtMiwyICsyLDUgQEAKKyAyCisgMworK0EKKytCCisrQworZGlmZiAtLWdpdCBhL2ZpbGUzIGIvZmlsZTMKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwLi43Mjg5ZTM1CistLS0gL2Rldi9udWxsCisrKysgYi9maWxlMworQEAgLTAsMCArMSw0IEBACisrQQorK0IKKysxCisrMgorJApkaWZmIC0tZ2l0IGEvdC90NDAxMy9kaWZmLmRpZmZfLVVfaW5pdGlhbC4uc2lkZSBiL3QvdDQwMTMvZGlmZi5kaWZmXy1VX2luaXRpYWwuLnNpZGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzY2YzBkZAotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTMvZGlmZi5kaWZmXy1VX2luaXRpYWwuLnNpZGUKQEAgLTAsMCArMSwzMiBAQAorJCBnaXQgZGlmZiAtVSBpbml0aWFsLi5zaWRlCitkaWZmIC0tZ2l0IGEvZGlyL3N1YiBiL2Rpci9zdWIKK2luZGV4IDM1ZDI0MmIuLjcyODllMzUgMTAwNjQ0CistLS0gYS9kaXIvc3ViCisrKysgYi9kaXIvc3ViCitAQCAtMSwyICsxLDQgQEAKKyBBCisgQgorKzEKKysyCitkaWZmIC0tZ2l0IGEvZmlsZTAgYi9maWxlMAoraW5kZXggMDFlNzljMy4uZjQ2MTVkYSAxMDA2NDQKKy0tLSBhL2ZpbGUwCisrKysgYi9maWxlMAorQEAgLTEsMyArMSw2IEBACisgMQorIDIKKyAzCisrQQorK0IKKytDCitkaWZmIC0tZ2l0IGEvZmlsZTMgYi9maWxlMworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAuLjcyODllMzUKKy0tLSAvZGV2L251bGwKKysrKyBiL2ZpbGUzCitAQCAtMCwwICsxLDQgQEAKKytBCisrQgorKzEKKysyCiskCmRpZmYgLS1naXQgYS90L3Q0MDE0LWZvcm1hdC1wYXRjaC5zaCBiL3QvdDQwMTQtZm9ybWF0LXBhdGNoLnNoCmluZGV4IDkwOWM3NDMuLmI2NTNkZDcgMTAwNzU1Ci0tLSBhL3QvdDQwMTQtZm9ybWF0LXBhdGNoLnNoCisrKyBiL3QvdDQwMTQtZm9ybWF0LXBhdGNoLnNoCkBAIC05LDcgKzksNiBAQAogLiAiJFRFU1RfRElSRUNUT1JZIi9saWItdGVybWluYWwuc2gKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBzZXR1cCAnCi0KIAlmb3IgaSBpbiAxIDIgMyA0IDUgNiA3IDggOSAxMDsgZG8gZWNobyAiJGkiOyBkb25lID5maWxlICYmCiAJY2F0IGZpbGUgPmVsaWYgJiYKIAlnaXQgYWRkIGZpbGUgZWxpZiAmJgpAQCAtMzQsMzkgKzMzLDU0IEBACiAJZ2l0IGNvbW1pdCAtbSAiU2lkZSBjaGFuZ2VzICMzIHdpdGggXFxuIGJhY2tzbGFzaC1uIGluIGl0LiIgJiYKIAogCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKLQlnaXQgZGlmZi10cmVlIC1wIEMyIHwgZ2l0IGFwcGx5IC0taW5kZXggJiYKKwlnaXQgZGlmZi10cmVlIC1wIEMyID5wYXRjaCAmJgorCWdpdCBhcHBseSAtLWluZGV4IDxwYXRjaCAmJgogCXRlc3RfdGljayAmJgotCWdpdCBjb21taXQgLW0gIk1hc3RlciBhY2NlcHRzIG1vcmFsIGVxdWl2YWxlbnQgb2YgIzIiCisJZ2l0IGNvbW1pdCAtbSAiTWFzdGVyIGFjY2VwdHMgbW9yYWwgZXF1aXZhbGVudCBvZiAjMiIgJiYKIAorCWdpdCBjaGVja291dCBzaWRlICYmCisJZ2l0IGNoZWNrb3V0IC1iIHBhdGNoaWQgJiYKKwlmb3IgaSBpbiA1IDYgMSAyIDMgQSA0IEIgQyA3IDggOSAxMCBEIEUgRjsgZG8gZWNobyAiJGkiOyBkb25lID5maWxlMiAmJgorCWZvciBpIGluIDEgMiAzIEEgNCBCIEMgNyA4IDkgMTAgRCBFIEYgNSA2OyBkbyBlY2hvICIkaSI7IGRvbmUgPmZpbGUzICYmCisJZm9yIGkgaW4gOCA5IDEwOyBkbyBlY2hvICIkaSI7IGRvbmUgPmZpbGUgJiYKKwlnaXQgYWRkIGZpbGUgZmlsZTIgZmlsZTMgJiYKKwl0ZXN0X3RpY2sgJiYKKwlnaXQgY29tbWl0IC1tICJwYXRjaGlkIDEiICYmCisJZm9yIGkgaW4gNCBBIEIgNyA4IDkgMTA7IGRvIGVjaG8gIiRpIjsgZG9uZSA+ZmlsZTIgJiYKKwlmb3IgaSBpbiA4IDkgMTAgNSA2OyBkbyBlY2hvICIkaSI7IGRvbmUgPmZpbGUzICYmCisJZ2l0IGFkZCBmaWxlMiBmaWxlMyAmJgorCXRlc3RfdGljayAmJgorCWdpdCBjb21taXQgLW0gInBhdGNoaWQgMiIgJiYKKwlmb3IgaSBpbiAxMCA1IDY7IGRvIGVjaG8gIiRpIjsgZG9uZSA+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCXRlc3RfdGljayAmJgorCWdpdCBjb21taXQgLW0gInBhdGNoaWQgMyIgJiYKKworCWdpdCBjaGVja291dCBtYXN0ZXIKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAiZm9ybWF0LXBhdGNoIC0taWdub3JlLWlmLWluLXVwc3RyZWFtIiAnCi0KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCAtLWlnbm9yZS1pZi1pbi11cHN0cmVhbScgJwogCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgbWFzdGVyLi5zaWRlID5wYXRjaDAgJiYKLQljbnQ9JChncmVwICJeRnJvbSAiIHBhdGNoMCB8IHdjIC1sKSAmJgotCXRlc3QgJGNudCA9IDMKLQorCWdyZXAgIl5Gcm9tICIgcGF0Y2gwID5mcm9tMCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDMgZnJvbTAKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAiZm9ybWF0LXBhdGNoIC0taWdub3JlLWlmLWluLXVwc3RyZWFtIiAnCi0KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCAtLWlnbm9yZS1pZi1pbi11cHN0cmVhbScgJwogCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgXAogCQktLWlnbm9yZS1pZi1pbi11cHN0cmVhbSBtYXN0ZXIuLnNpZGUgPnBhdGNoMSAmJgotCWNudD0kKGdyZXAgIl5Gcm9tICIgcGF0Y2gxIHwgd2MgLWwpICYmCi0JdGVzdCAkY250ID0gMgotCisJZ3JlcCAiXkZyb20gIiBwYXRjaDEgPmZyb20xICYmCisJdGVzdF9saW5lX2NvdW50ID0gMiBmcm9tMQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICJmb3JtYXQtcGF0Y2ggLS1pZ25vcmUtaWYtaW4tdXBzdHJlYW0gaGFuZGxlcyB0YWdzIiAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JtYXQtcGF0Y2ggLS1pZ25vcmUtaWYtaW4tdXBzdHJlYW0gaGFuZGxlcyB0YWdzJyAnCiAJZ2l0IHRhZyAtYSB2MSAtbSB0YWcgc2lkZSAmJgogCWdpdCB0YWcgLWEgdjIgLW0gdGFnIG1hc3RlciAmJgogCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgLS1pZ25vcmUtaWYtaW4tdXBzdHJlYW0gdjIuLnYxID5wYXRjaDEgJiYKLQljbnQ9JChncmVwICJeRnJvbSAiIHBhdGNoMSB8IHdjIC1sKSAmJgotCXRlc3QgJGNudCA9IDIKKwlncmVwICJeRnJvbSAiIHBhdGNoMSA+ZnJvbTEgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAyIGZyb20xCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgImZvcm1hdC1wYXRjaCBkb2Vzbid0IGNvbnNpZGVyIG1lcmdlIGNvbW1pdHMiICcKLQogCWdpdCBjaGVja291dCAtYiBzbGF2ZSBtYXN0ZXIgJiYKIAllY2hvICJBbm90aGVyIGxpbmUiID4+ZmlsZSAmJgogCXRlc3RfdGljayAmJgpAQCAtNzcsMTQ4ICs5MSwxMzggQEAKIAlnaXQgY2hlY2tvdXQgLWIgbWVyZ2VyIG1hc3RlciAmJgogCXRlc3RfdGljayAmJgogCWdpdCBtZXJnZSAtLW5vLWZmIHNsYXZlICYmCi0JY250PSQoZ2l0IGZvcm1hdC1wYXRjaCAtMyAtLXN0ZG91dCB8IGdyZXAgIl5Gcm9tICIgfCB3YyAtbCkgJiYKLQl0ZXN0ICRjbnQgPSAzCisJZ2l0IGZvcm1hdC1wYXRjaCAtMyAtLXN0ZG91dCA+cGF0Y2ggJiYKKwlncmVwICJeRnJvbSAiIHBhdGNoID5mcm9tICYmCisJdGVzdF9saW5lX2NvdW50ID0gMyBmcm9tCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgImZvcm1hdC1wYXRjaCByZXN1bHQgYXBwbGllcyIgJwotCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JtYXQtcGF0Y2ggcmVzdWx0IGFwcGxpZXMnICcKIAlnaXQgY2hlY2tvdXQgLWIgcmVidWlsZC0wIG1hc3RlciAmJgogCWdpdCBhbSAtMyBwYXRjaDAgJiYKLQljbnQ9JChnaXQgcmV2LWxpc3QgbWFzdGVyLi4gfCB3YyAtbCkgJiYKLQl0ZXN0ICRjbnQgPSAyCisJZ2l0IHJldi1saXN0IG1hc3Rlci4uID5saXN0ICYmCisJdGVzdF9saW5lX2NvdW50ID0gMiBsaXN0CiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgImZvcm1hdC1wYXRjaCAtLWlnbm9yZS1pZi1pbi11cHN0cmVhbSByZXN1bHQgYXBwbGllcyIgJwotCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JtYXQtcGF0Y2ggLS1pZ25vcmUtaWYtaW4tdXBzdHJlYW0gcmVzdWx0IGFwcGxpZXMnICcKIAlnaXQgY2hlY2tvdXQgLWIgcmVidWlsZC0xIG1hc3RlciAmJgogCWdpdCBhbSAtMyBwYXRjaDEgJiYKLQljbnQ9JChnaXQgcmV2LWxpc3QgbWFzdGVyLi4gfCB3YyAtbCkgJiYKLQl0ZXN0ICRjbnQgPSAyCisJZ2l0IHJldi1saXN0IG1hc3Rlci4uID5saXN0ICYmCisJdGVzdF9saW5lX2NvdW50ID0gMiBsaXN0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbW1pdCBkaWQgbm90IHNjcmV3IHVwIHRoZSBsb2cgbWVzc2FnZScgJwotCi0JZ2l0IGNhdC1maWxlIGNvbW1pdCBzaWRlIHwgZ3JlcCAiXlNpZGUgLiogd2l0aCAuKiBiYWNrc2xhc2gtbiIKLQorCWdpdCBjYXQtZmlsZSBjb21taXQgc2lkZSA+YWN0dWFsICYmCisJZ3JlcCAiXlNpZGUgLiogd2l0aCAuKiBiYWNrc2xhc2gtbiIgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCBkaWQgbm90IHNjcmV3IHVwIHRoZSBsb2cgbWVzc2FnZScgJwotCiAJZ3JlcCAiXlN1YmplY3Q6IC4qU2lkZSBjaGFuZ2VzICMzIHdpdGggLiogYmFja3NsYXNoLW4iIHBhdGNoMCAmJgogCWdyZXAgIl5TdWJqZWN0OiAuKlNpZGUgY2hhbmdlcyAjMyB3aXRoIC4qIGJhY2tzbGFzaC1uIiBwYXRjaDEKLQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXBsYXkgZGlkIG5vdCBzY3JldyB1cCB0aGUgbG9nIG1lc3NhZ2UnICcKLQotCWdpdCBjYXQtZmlsZSBjb21taXQgcmVidWlsZC0xIHwgZ3JlcCAiXlNpZGUgLiogd2l0aCAuKiBiYWNrc2xhc2gtbiIKLQorCWdpdCBjYXQtZmlsZSBjb21taXQgcmVidWlsZC0xID5hY3R1YWwgJiYKKwlncmVwICJeU2lkZSAuKiB3aXRoIC4qIGJhY2tzbGFzaC1uIiBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZXh0cmEgaGVhZGVycycgJwotCiAJZ2l0IGNvbmZpZyBmb3JtYXQuaGVhZGVycyAiVG86IFIgRSBDaXBpZW50IDxyY2lwaWVudEBleGFtcGxlLmNvbT4KICIgJiYKIAlnaXQgY29uZmlnIC0tYWRkIGZvcm1hdC5oZWFkZXJzICJDYzogUyBFIENpcGllbnQgPHNjaXBpZW50QGV4YW1wbGUuY29tPgogIiAmJgotCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgbWFzdGVyLi5zaWRlID4gcGF0Y2gyICYmCi0Jc2VkIC1lICIvXlwkL3EiIHBhdGNoMiA+IGhkcnMyICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgPnBhdGNoMiAmJgorCXNlZCAtZSAiL15cJC9xIiBwYXRjaDIgPmhkcnMyICYmCiAJZ3JlcCAiXlRvOiBSIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+XCQiIGhkcnMyICYmCiAJZ3JlcCAiXkNjOiBTIEUgQ2lwaWVudCA8c2NpcGllbnRAZXhhbXBsZS5jb20+XCQiIGhkcnMyCi0KICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZXh0cmEgaGVhZGVycyB3aXRob3V0IG5ld2xpbmVzJyAnCi0KIAlnaXQgY29uZmlnIC0tcmVwbGFjZS1hbGwgZm9ybWF0LmhlYWRlcnMgIlRvOiBSIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+IiAmJgogCWdpdCBjb25maWcgLS1hZGQgZm9ybWF0LmhlYWRlcnMgIkNjOiBTIEUgQ2lwaWVudCA8c2NpcGllbnRAZXhhbXBsZS5jb20+IiAmJgogCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgbWFzdGVyLi5zaWRlID5wYXRjaDMgJiYKLQlzZWQgLWUgIi9eXCQvcSIgcGF0Y2gzID4gaGRyczMgJiYKKwlzZWQgLWUgIi9eXCQvcSIgcGF0Y2gzID5oZHJzMyAmJgogCWdyZXAgIl5UbzogUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPlwkIiBoZHJzMyAmJgogCWdyZXAgIl5DYzogUyBFIENpcGllbnQgPHNjaXBpZW50QGV4YW1wbGUuY29tPlwkIiBoZHJzMwotCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2V4dHJhIGhlYWRlcnMgd2l0aCBtdWx0aXBsZSBUbzpzJyAnCi0KIAlnaXQgY29uZmlnIC0tcmVwbGFjZS1hbGwgZm9ybWF0LmhlYWRlcnMgIlRvOiBSIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+IiAmJgogCWdpdCBjb25maWcgLS1hZGQgZm9ybWF0LmhlYWRlcnMgIlRvOiBTIEUgQ2lwaWVudCA8c2NpcGllbnRAZXhhbXBsZS5jb20+IiAmJgotCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgbWFzdGVyLi5zaWRlID4gcGF0Y2g0ICYmCi0Jc2VkIC1lICIvXlwkL3EiIHBhdGNoNCA+IGhkcnM0ICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgPnBhdGNoNCAmJgorCXNlZCAtZSAiL15cJC9xIiBwYXRjaDQgPmhkcnM0ICYmCiAJZ3JlcCAiXlRvOiBSIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+LFwkIiBoZHJzNCAmJgogCWdyZXAgIl4gKlMgRSBDaXBpZW50IDxzY2lwaWVudEBleGFtcGxlLmNvbT5cJCIgaGRyczQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYWRkaXRpb25hbCBjb21tYW5kIGxpbmUgY2MgKGFzY2lpKScgJwotCiAJZ2l0IGNvbmZpZyAtLXJlcGxhY2UtYWxsIGZvcm1hdC5oZWFkZXJzICJDYzogUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPiIgJiYKLQlnaXQgZm9ybWF0LXBhdGNoIC0tY2M9IlMgRSBDaXBpZW50IDxzY2lwaWVudEBleGFtcGxlLmNvbT4iIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSB8IHNlZCAtZSAiL15cJC9xIiA+cGF0Y2g1ICYmCi0JZ3JlcCAiXkNjOiBSIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+LFwkIiBwYXRjaDUgJiYKLQlncmVwICJeICpTIEUgQ2lwaWVudCA8c2NpcGllbnRAZXhhbXBsZS5jb20+XCQiIHBhdGNoNQorCWdpdCBmb3JtYXQtcGF0Y2ggLS1jYz0iUyBFIENpcGllbnQgPHNjaXBpZW50QGV4YW1wbGUuY29tPiIgLS1zdGRvdXQgbWFzdGVyLi5zaWRlID5wYXRjaDUgJiYKKwlzZWQgLWUgIi9eXCQvcSIgcGF0Y2g1ID5oZHJzNSAmJgorCWdyZXAgIl5DYzogUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPixcJCIgaGRyczUgJiYKKwlncmVwICJeICpTIEUgQ2lwaWVudCA8c2NpcGllbnRAZXhhbXBsZS5jb20+XCQiIGhkcnM1CiAnCiAKIHRlc3RfZXhwZWN0X2ZhaWx1cmUgJ2FkZGl0aW9uYWwgY29tbWFuZCBsaW5lIGNjIChyZmM4MjIpJyAnCi0KIAlnaXQgY29uZmlnIC0tcmVwbGFjZS1hbGwgZm9ybWF0LmhlYWRlcnMgIkNjOiBSIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+IiAmJgotCWdpdCBmb3JtYXQtcGF0Y2ggLS1jYz0iUy4gRS4gQ2lwaWVudCA8c2NpcGllbnRAZXhhbXBsZS5jb20+IiAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgfCBzZWQgLWUgIi9eXCQvcSIgPnBhdGNoNSAmJgotCWdyZXAgIl5DYzogUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPixcJCIgcGF0Y2g1ICYmCi0JZ3JlcCAiXiAqXCJTLiBFLiBDaXBpZW50XCIgPHNjaXBpZW50QGV4YW1wbGUuY29tPlwkIiBwYXRjaDUKKwlnaXQgZm9ybWF0LXBhdGNoIC0tY2M9IlMuIEUuIENpcGllbnQgPHNjaXBpZW50QGV4YW1wbGUuY29tPiIgLS1zdGRvdXQgbWFzdGVyLi5zaWRlID5wYXRjaDUgJiYKKwlzZWQgLWUgIi9eXCQvcSIgcGF0Y2g1ID5oZHJzNSAmJgorCWdyZXAgIl5DYzogUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPixcJCIgaGRyczUgJiYKKwlncmVwICJeICpcIlMuIEUuIENpcGllbnRcIiA8c2NpcGllbnRAZXhhbXBsZS5jb20+XCQiIGhkcnM1CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbW1hbmQgbGluZSBoZWFkZXJzJyAnCi0KIAlnaXQgY29uZmlnIC0tdW5zZXQtYWxsIGZvcm1hdC5oZWFkZXJzICYmCi0JZ2l0IGZvcm1hdC1wYXRjaCAtLWFkZC1oZWFkZXI9IkNjOiBSIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+IiAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgfCBzZWQgLWUgIi9eXCQvcSIgPnBhdGNoNiAmJgotCWdyZXAgIl5DYzogUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPlwkIiBwYXRjaDYKKwlnaXQgZm9ybWF0LXBhdGNoIC0tYWRkLWhlYWRlcj0iQ2M6IFIgRSBDaXBpZW50IDxyY2lwaWVudEBleGFtcGxlLmNvbT4iIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSA+cGF0Y2g2ICYmCisJc2VkIC1lICIvXlwkL3EiIHBhdGNoNiA+aGRyczYgJiYKKwlncmVwICJeQ2M6IFIgRSBDaXBpZW50IDxyY2lwaWVudEBleGFtcGxlLmNvbT5cJCIgaGRyczYKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY29uZmlndXJhdGlvbiBoZWFkZXJzIGFuZCBjb21tYW5kIGxpbmUgaGVhZGVycycgJwotCiAJZ2l0IGNvbmZpZyAtLXJlcGxhY2UtYWxsIGZvcm1hdC5oZWFkZXJzICJDYzogUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPiIgJiYKLQlnaXQgZm9ybWF0LXBhdGNoIC0tYWRkLWhlYWRlcj0iQ2M6IFMgRSBDaXBpZW50IDxzY2lwaWVudEBleGFtcGxlLmNvbT4iIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSB8IHNlZCAtZSAiL15cJC9xIiA+cGF0Y2g3ICYmCi0JZ3JlcCAiXkNjOiBSIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+LFwkIiBwYXRjaDcgJiYKLQlncmVwICJeICpTIEUgQ2lwaWVudCA8c2NpcGllbnRAZXhhbXBsZS5jb20+XCQiIHBhdGNoNworCWdpdCBmb3JtYXQtcGF0Y2ggLS1hZGQtaGVhZGVyPSJDYzogUyBFIENpcGllbnQgPHNjaXBpZW50QGV4YW1wbGUuY29tPiIgLS1zdGRvdXQgbWFzdGVyLi5zaWRlID5wYXRjaDcgJiYKKwlzZWQgLWUgIi9eXCQvcSIgcGF0Y2g3ID5oZHJzNyAmJgorCWdyZXAgIl5DYzogUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPixcJCIgaGRyczcgJiYKKwlncmVwICJeICpTIEUgQ2lwaWVudCA8c2NpcGllbnRAZXhhbXBsZS5jb20+XCQiIGhkcnM3CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbW1hbmQgbGluZSBUbzogaGVhZGVyIChhc2NpaSknICcKLQogCWdpdCBjb25maWcgLS11bnNldC1hbGwgZm9ybWF0LmhlYWRlcnMgJiYKLQlnaXQgZm9ybWF0LXBhdGNoIC0tdG89IlIgRSBDaXBpZW50IDxyY2lwaWVudEBleGFtcGxlLmNvbT4iIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSB8IHNlZCAtZSAiL15cJC9xIiA+cGF0Y2g4ICYmCi0JZ3JlcCAiXlRvOiBSIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+XCQiIHBhdGNoOAorCWdpdCBmb3JtYXQtcGF0Y2ggLS10bz0iUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPiIgLS1zdGRvdXQgbWFzdGVyLi5zaWRlID5wYXRjaDggJiYKKwlzZWQgLWUgIi9eXCQvcSIgcGF0Y2g4ID5oZHJzOCAmJgorCWdyZXAgIl5UbzogUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPlwkIiBoZHJzOAogJwogCiB0ZXN0X2V4cGVjdF9mYWlsdXJlICdjb21tYW5kIGxpbmUgVG86IGhlYWRlciAocmZjODIyKScgJwotCi0JZ2l0IGZvcm1hdC1wYXRjaCAtLXRvPSJSLiBFLiBDaXBpZW50IDxyY2lwaWVudEBleGFtcGxlLmNvbT4iIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSB8IHNlZCAtZSAiL15cJC9xIiA+cGF0Y2g4ICYmCi0JZ3JlcCAiXlRvOiBcIlIuIEUuIENpcGllbnRcIiA8cmNpcGllbnRAZXhhbXBsZS5jb20+XCQiIHBhdGNoOAorCWdpdCBmb3JtYXQtcGF0Y2ggLS10bz0iUi4gRS4gQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+IiAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgPnBhdGNoOCAmJgorCXNlZCAtZSAiL15cJC9xIiBwYXRjaDggPmhkcnM4ICYmCisJZ3JlcCAiXlRvOiBcIlIuIEUuIENpcGllbnRcIiA8cmNpcGllbnRAZXhhbXBsZS5jb20+XCQiIGhkcnM4CiAnCiAKIHRlc3RfZXhwZWN0X2ZhaWx1cmUgJ2NvbW1hbmQgbGluZSBUbzogaGVhZGVyIChyZmMyMDQ3KScgJwotCi0JZ2l0IGZvcm1hdC1wYXRjaCAtLXRvPSJSIMOEIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPiIgLS1zdGRvdXQgbWFzdGVyLi5zaWRlIHwgc2VkIC1lICIvXlwkL3EiID5wYXRjaDggJiYKLQlncmVwICJeVG86ID0/VVRGLTg/cT9SPTIwPUMzPTg0PTIwQ2lwaWVudD89IDxyY2lwaWVudEBleGFtcGxlLmNvbT5cJCIgcGF0Y2g4CisJZ2l0IGZvcm1hdC1wYXRjaCAtLXRvPSJSIMOEIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPiIgLS1zdGRvdXQgbWFzdGVyLi5zaWRlID5wYXRjaDggJiYKKwlzZWQgLWUgIi9eXCQvcSIgcGF0Y2g4ID5oZHJzOCAmJgorCWdyZXAgIl5UbzogPT9VVEYtOD9xP1I9MjA9QzM9ODQ9MjBDaXBpZW50Pz0gPHJjaXBpZW50QGV4YW1wbGUuY29tPlwkIiBoZHJzOAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb25maWd1cmF0aW9uIFRvOiBoZWFkZXIgKGFzY2lpKScgJwotCiAJZ2l0IGNvbmZpZyBmb3JtYXQudG8gIlIgRSBDaXBpZW50IDxyY2lwaWVudEBleGFtcGxlLmNvbT4iICYmCi0JZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgfCBzZWQgLWUgIi9eXCQvcSIgPnBhdGNoOSAmJgotCWdyZXAgIl5UbzogUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPlwkIiBwYXRjaDkKKwlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSA+cGF0Y2g5ICYmCisJc2VkIC1lICIvXlwkL3EiIHBhdGNoOSA+aGRyczkgJiYKKwlncmVwICJeVG86IFIgRSBDaXBpZW50IDxyY2lwaWVudEBleGFtcGxlLmNvbT5cJCIgaGRyczkKICcKIAogdGVzdF9leHBlY3RfZmFpbHVyZSAnY29uZmlndXJhdGlvbiBUbzogaGVhZGVyIChyZmM4MjIpJyAnCi0KIAlnaXQgY29uZmlnIGZvcm1hdC50byAiUi4gRS4gQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+IiAmJgotCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgbWFzdGVyLi5zaWRlIHwgc2VkIC1lICIvXlwkL3EiID5wYXRjaDkgJiYKLQlncmVwICJeVG86IFwiUi4gRS4gQ2lwaWVudFwiIDxyY2lwaWVudEBleGFtcGxlLmNvbT5cJCIgcGF0Y2g5CisJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgPnBhdGNoOSAmJgorCXNlZCAtZSAiL15cJC9xIiBwYXRjaDkgPmhkcnM5ICYmCisJZ3JlcCAiXlRvOiBcIlIuIEUuIENpcGllbnRcIiA8cmNpcGllbnRAZXhhbXBsZS5jb20+XCQiIGhkcnM5CiAnCiAKIHRlc3RfZXhwZWN0X2ZhaWx1cmUgJ2NvbmZpZ3VyYXRpb24gVG86IGhlYWRlciAocmZjMjA0NyknICcKLQogCWdpdCBjb25maWcgZm9ybWF0LnRvICJSIMOEIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPiIgJiYKLQlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSB8IHNlZCAtZSAiL15cJC9xIiA+cGF0Y2g5ICYmCi0JZ3JlcCAiXlRvOiA9P1VURi04P3E/Uj0yMD1DMz04ND0yMENpcGllbnQ/PSA8cmNpcGllbnRAZXhhbXBsZS5jb20+XCQiIHBhdGNoOQorCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgbWFzdGVyLi5zaWRlID5wYXRjaDkgJiYKKwlzZWQgLWUgIi9eXCQvcSIgcGF0Y2g5ID5oZHJzOSAmJgorCWdyZXAgIl5UbzogPT9VVEYtOD9xP1I9MjA9QzM9ODQ9MjBDaXBpZW50Pz0gPHJjaXBpZW50QGV4YW1wbGUuY29tPlwkIiBoZHJzOQogJwogCiAjIGNoZWNrX3BhdGNoIDxwYXRjaD46IFZlcmlmeSB0aGF0IDxwYXRjaD4gbG9va3MgbGlrZSBhIGhhbGYtc2FuZQpAQCAtMjMwLDg5ICsyMzQsNzkgQEAKIH0KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LmZyb209ZmFsc2UnICcKLQotCWdpdCAtYyBmb3JtYXQuZnJvbT1mYWxzZSBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgbWFzdGVyLi5zaWRlIHwKLQlzZWQgLWUgIi9eXCQvcSIgPnBhdGNoICYmCisJZ2l0IC1jIGZvcm1hdC5mcm9tPWZhbHNlIGZvcm1hdC1wYXRjaCAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgPnBhdGNoICYmCisJc2VkIC1lICIvXlwkL3EiIHBhdGNoID5oZHJzICYmCiAJY2hlY2tfcGF0Y2ggcGF0Y2ggJiYKLQkhIGdyZXAgIl5Gcm9tOiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+XCQiIHBhdGNoCisJISBncmVwICJeRnJvbTogQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPlwkIiBoZHJzCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC5mcm9tPXRydWUnICcKLQotCWdpdCAtYyBmb3JtYXQuZnJvbT10cnVlIGZvcm1hdC1wYXRjaCAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgfAotCXNlZCAtZSAiL15cJC9xIiA+cGF0Y2ggJiYKLQljaGVja19wYXRjaCBwYXRjaCAmJgotCWdyZXAgIl5Gcm9tOiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+XCQiIHBhdGNoCisJZ2l0IC1jIGZvcm1hdC5mcm9tPXRydWUgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSA+cGF0Y2ggJiYKKwlzZWQgLWUgIi9eXCQvcSIgcGF0Y2ggPmhkcnMgJiYKKwljaGVja19wYXRjaCBoZHJzICYmCisJZ3JlcCAiXkZyb206IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT5cJCIgaGRycwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JtYXQuZnJvbSB3aXRoIGFkZHJlc3MnICcKLQotCWdpdCAtYyBmb3JtYXQuZnJvbT0iRiBSIE9tIDxmcm9tQGV4YW1wbGUuY29tPiIgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSB8Ci0Jc2VkIC1lICIvXlwkL3EiID5wYXRjaCAmJgotCWNoZWNrX3BhdGNoIHBhdGNoICYmCi0JZ3JlcCAiXkZyb206IEYgUiBPbSA8ZnJvbUBleGFtcGxlLmNvbT5cJCIgcGF0Y2gKKwlnaXQgLWMgZm9ybWF0LmZyb209IkYgUiBPbSA8ZnJvbUBleGFtcGxlLmNvbT4iIGZvcm1hdC1wYXRjaCAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgPnBhdGNoICYmCisJc2VkIC1lICIvXlwkL3EiIHBhdGNoID5oZHJzICYmCisJY2hlY2tfcGF0Y2ggaGRycyAmJgorCWdyZXAgIl5Gcm9tOiBGIFIgT20gPGZyb21AZXhhbXBsZS5jb20+XCQiIGhkcnMKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1uby1mcm9tIG92ZXJyaWRlcyBmb3JtYXQuZnJvbScgJwotCi0JZ2l0IC1jIGZvcm1hdC5mcm9tPSJGIFIgT20gPGZyb21AZXhhbXBsZS5jb20+IiBmb3JtYXQtcGF0Y2ggLS1uby1mcm9tIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSB8Ci0Jc2VkIC1lICIvXlwkL3EiID5wYXRjaCAmJgotCWNoZWNrX3BhdGNoIHBhdGNoICYmCi0JISBncmVwICJeRnJvbTogRiBSIE9tIDxmcm9tQGV4YW1wbGUuY29tPlwkIiBwYXRjaAorCWdpdCAtYyBmb3JtYXQuZnJvbT0iRiBSIE9tIDxmcm9tQGV4YW1wbGUuY29tPiIgZm9ybWF0LXBhdGNoIC0tbm8tZnJvbSAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgPnBhdGNoICYmCisJc2VkIC1lICIvXlwkL3EiIHBhdGNoID5oZHJzICYmCisJY2hlY2tfcGF0Y2ggaGRycyAmJgorCSEgZ3JlcCAiXkZyb206IEYgUiBPbSA8ZnJvbUBleGFtcGxlLmNvbT5cJCIgaGRycwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICctLWZyb20gb3ZlcnJpZGVzIGZvcm1hdC5mcm9tJyAnCi0KLQlnaXQgLWMgZm9ybWF0LmZyb209IkYgUiBPbSA8ZnJvbUBleGFtcGxlLmNvbT4iIGZvcm1hdC1wYXRjaCAtLWZyb20gLS1zdGRvdXQgbWFzdGVyLi5zaWRlIHwKLQlzZWQgLWUgIi9eXCQvcSIgPnBhdGNoICYmCi0JY2hlY2tfcGF0Y2ggcGF0Y2ggJiYKLQkhIGdyZXAgIl5Gcm9tOiBGIFIgT20gPGZyb21AZXhhbXBsZS5jb20+XCQiIHBhdGNoCisJZ2l0IC1jIGZvcm1hdC5mcm9tPSJGIFIgT20gPGZyb21AZXhhbXBsZS5jb20+IiBmb3JtYXQtcGF0Y2ggLS1mcm9tIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSA+cGF0Y2ggJiYKKwlzZWQgLWUgIi9eXCQvcSIgcGF0Y2ggPmhkcnMgJiYKKwljaGVja19wYXRjaCBoZHJzICYmCisJISBncmVwICJeRnJvbTogRiBSIE9tIDxmcm9tQGV4YW1wbGUuY29tPlwkIiBoZHJzCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tbm8tdG8gb3ZlcnJpZGVzIGNvbmZpZy50bycgJwotCiAJZ2l0IGNvbmZpZyAtLXJlcGxhY2UtYWxsIGZvcm1hdC50byBcCiAJCSJSIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+IiAmJgotCWdpdCBmb3JtYXQtcGF0Y2ggLS1uby10byAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgfAotCXNlZCAtZSAiL15cJC9xIiA+cGF0Y2gxMCAmJgotCWNoZWNrX3BhdGNoIHBhdGNoMTAgJiYKLQkhIGdyZXAgIl5UbzogUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPlwkIiBwYXRjaDEwCisJZ2l0IGZvcm1hdC1wYXRjaCAtLW5vLXRvIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSA+cGF0Y2gxMCAmJgorCXNlZCAtZSAiL15cJC9xIiBwYXRjaDEwID5oZHJzMTAgJiYKKwljaGVja19wYXRjaCBoZHJzMTAgJiYKKwkhIGdyZXAgIl5UbzogUiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPlwkIiBoZHJzMTAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1uby10byBhbmQgLS10byByZXBsYWNlcyBjb25maWcudG8nICcKLQogCWdpdCBjb25maWcgLS1yZXBsYWNlLWFsbCBmb3JtYXQudG8gXAogCQkiU29tZW9uZSA8c29tZW9uZUBvdXQudGhlcmU+IiAmJgogCWdpdCBmb3JtYXQtcGF0Y2ggLS1uby10byAtLXRvPSJTb21lb25lIEVsc2UgPGVsc2VAb3V0LnRoZXJlPiIgXAotCQktLXN0ZG91dCBtYXN0ZXIuLnNpZGUgfAotCXNlZCAtZSAiL15cJC9xIiA+cGF0Y2gxMSAmJgotCWNoZWNrX3BhdGNoIHBhdGNoMTEgJiYKLQkhIGdyZXAgIl5UbzogU29tZW9uZSA8c29tZW9uZUBvdXQudGhlcmU+XCQiIHBhdGNoMTEgJiYKLQlncmVwICJeVG86IFNvbWVvbmUgRWxzZSA8ZWxzZUBvdXQudGhlcmU+XCQiIHBhdGNoMTEKKwkJLS1zdGRvdXQgbWFzdGVyLi5zaWRlID5wYXRjaDExICYmCisJc2VkIC1lICIvXlwkL3EiIHBhdGNoMTEgPmhkcnMxMSAmJgorCWNoZWNrX3BhdGNoIGhkcnMxMSAmJgorCSEgZ3JlcCAiXlRvOiBTb21lb25lIDxzb21lb25lQG91dC50aGVyZT5cJCIgaGRyczExICYmCisJZ3JlcCAiXlRvOiBTb21lb25lIEVsc2UgPGVsc2VAb3V0LnRoZXJlPlwkIiBoZHJzMTEKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1uby1jYyBvdmVycmlkZXMgY29uZmlnLmNjJyAnCi0KIAlnaXQgY29uZmlnIC0tcmVwbGFjZS1hbGwgZm9ybWF0LmNjIFwKIAkJIkMgRSBDaXBpZW50IDxyY2lwaWVudEBleGFtcGxlLmNvbT4iICYmCi0JZ2l0IGZvcm1hdC1wYXRjaCAtLW5vLWNjIC0tc3Rkb3V0IG1hc3Rlci4uc2lkZSB8Ci0Jc2VkIC1lICIvXlwkL3EiID5wYXRjaDEyICYmCi0JY2hlY2tfcGF0Y2ggcGF0Y2gxMiAmJgotCSEgZ3JlcCAiXkNjOiBDIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+XCQiIHBhdGNoMTIKKwlnaXQgZm9ybWF0LXBhdGNoIC0tbm8tY2MgLS1zdGRvdXQgbWFzdGVyLi5zaWRlID5wYXRjaDEyICYmCisJc2VkIC1lICIvXlwkL3EiIHBhdGNoMTIgPmhkcnMxMiAmJgorCWNoZWNrX3BhdGNoIGhkcnMxMiAmJgorCSEgZ3JlcCAiXkNjOiBDIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+XCQiIGhkcnMxMgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICctLW5vLWFkZC1oZWFkZXIgb3ZlcnJpZGVzIGNvbmZpZy5oZWFkZXJzJyAnCi0KIAlnaXQgY29uZmlnIC0tcmVwbGFjZS1hbGwgZm9ybWF0LmhlYWRlcnMgXAogCQkiSGVhZGVyMTogQiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPiIgJiYKLQlnaXQgZm9ybWF0LXBhdGNoIC0tbm8tYWRkLWhlYWRlciAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgfAotCXNlZCAtZSAiL15cJC9xIiA+cGF0Y2gxMyAmJgotCWNoZWNrX3BhdGNoIHBhdGNoMTMgJiYKLQkhIGdyZXAgIl5IZWFkZXIxOiBCIEUgQ2lwaWVudCA8cmNpcGllbnRAZXhhbXBsZS5jb20+XCQiIHBhdGNoMTMKKwlnaXQgZm9ybWF0LXBhdGNoIC0tbm8tYWRkLWhlYWRlciAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgPnBhdGNoMTMgJiYKKwlzZWQgLWUgIi9eXCQvcSIgcGF0Y2gxMyA+aGRyczEzICYmCisJY2hlY2tfcGF0Y2ggaGRyczEzICYmCisJISBncmVwICJeSGVhZGVyMTogQiBFIENpcGllbnQgPHJjaXBpZW50QGV4YW1wbGUuY29tPlwkIiBoZHJzMTMKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbXVsdGlwbGUgZmlsZXMnICcKLQogCXJtIC1yZiBwYXRjaGVzLyAmJgogCWdpdCBjaGVja291dCBzaWRlICYmCiAJZ2l0IGZvcm1hdC1wYXRjaCAtbyBwYXRjaGVzLyBtYXN0ZXIgJiYKQEAgLTMzOCw3ICszMzIsNyBAQAogY2hlY2tfdGhyZWFkaW5nICgpIHsKIAlleHBlY3Q9IiQxIiAmJgogCXNoaWZ0ICYmCi0JKGdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgIiRAIjsgZWNobyAkPyA+IHN0YXR1cy5vdXQpIHwKKwlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0ICIkQCIgPnBhdGNoICYmCiAJIyBQcmludHMgZXZlcnl0aGluZyBiZXR3ZWVuIHRoZSBNZXNzYWdlLUlEIGFuZCBJbi1SZXBseS1UbywKIAkjIGFuZCByZXBsYWNlcyBhbGwgTWVzc2FnZS1JRC1sb29rYWxpa2VzIGJ5IGEgc2VxdWVuY2UgbnVtYmVyCiAJcGVybCAtbmUgJwpAQCAtMzUzLDEyICszNDcsMTEgQEAKIAkJCXByaW50OwogCQl9CiAJCXByaW50ICItLS1cbiIgaWYgL15Gcm9tIC9pOwotCScgPiBhY3R1YWwgJiYKLQl0ZXN0IDAgPSAiJChjYXQgc3RhdHVzLm91dCkiICYmCisJJyA8cGF0Y2ggPmFjdHVhbCAmJgogCXRlc3RfY21wICIkZXhwZWN0IiBhY3R1YWwKIH0KIAotY2F0ID4+IGV4cGVjdC5uby10aHJlYWRpbmcgPDxFT0YKK2NhdCA+PmV4cGVjdC5uby10aHJlYWRpbmcgPDxFT0YKIC0tLQogLS0tCiAtLS0KQEAgLTM2OSw3ICszNjIsNyBAQAogCWNoZWNrX3RocmVhZGluZyBleHBlY3Qubm8tdGhyZWFkaW5nIG1hc3RlcgogJwogCi1jYXQgPiBleHBlY3QudGhyZWFkIDw8RU9GCitjYXQgPmV4cGVjdC50aHJlYWQgPDxFT0YKIC0tLQogTWVzc2FnZS1JZDogPDA+CiAtLS0KQEAgLTM4Niw3ICszNzksNyBAQAogCWNoZWNrX3RocmVhZGluZyBleHBlY3QudGhyZWFkIC0tdGhyZWFkIG1hc3RlcgogJwogCi1jYXQgPiBleHBlY3QuaW4tcmVwbHktdG8gPDxFT0YKK2NhdCA+ZXhwZWN0LmluLXJlcGx5LXRvIDw8RU9GCiAtLS0KIE1lc3NhZ2UtSWQ6IDwwPgogSW4tUmVwbHktVG86IDwxPgpAQCAtNDA2LDcgKzM5OSw3IEBACiAJCS0tdGhyZWFkIG1hc3RlcgogJwogCi1jYXQgPiBleHBlY3QuY292ZXItbGV0dGVyIDw8RU9GCitjYXQgPmV4cGVjdC5jb3Zlci1sZXR0ZXIgPDxFT0YKIC0tLQogTWVzc2FnZS1JZDogPDA+CiAtLS0KQEAgLTQyNyw3ICs0MjAsNyBAQAogCWNoZWNrX3RocmVhZGluZyBleHBlY3QuY292ZXItbGV0dGVyIC0tY292ZXItbGV0dGVyIC0tdGhyZWFkIG1hc3RlcgogJwogCi1jYXQgPiBleHBlY3QuY2wtaXJ0IDw8RU9GCitjYXQgPmV4cGVjdC5jbC1pcnQgPDxFT0YKIC0tLQogTWVzc2FnZS1JZDogPDA+CiBJbi1SZXBseS1UbzogPDE+CkBAIC00NTksNyArNDUyLDcgQEAKIAkJLS1pbi1yZXBseS10bz0iPHRlc3QubWVzc2FnZT4iIC0tdGhyZWFkPXNoYWxsb3cgbWFzdGVyCiAnCiAKLWNhdCA+IGV4cGVjdC5kZWVwIDw8RU9GCitjYXQgPmV4cGVjdC5kZWVwIDw8RU9GCiAtLS0KIE1lc3NhZ2UtSWQ6IDwwPgogLS0tCkBAIC00NzcsNyArNDcwLDcgQEAKIAljaGVja190aHJlYWRpbmcgZXhwZWN0LmRlZXAgLS10aHJlYWQ9ZGVlcCBtYXN0ZXIKICcKIAotY2F0ID4gZXhwZWN0LmRlZXAtaXJ0IDw8RU9GCitjYXQgPmV4cGVjdC5kZWVwLWlydCA8PEVPRgogLS0tCiBNZXNzYWdlLUlkOiA8MD4KIEluLVJlcGx5LVRvOiA8MT4KQEAgLTUwMCw3ICs0OTMsNyBAQAogCQktLWluLXJlcGx5LXRvPSI8dGVzdC5tZXNzYWdlPiIgbWFzdGVyCiAnCiAKLWNhdCA+IGV4cGVjdC5kZWVwLWNsIDw8RU9GCitjYXQgPmV4cGVjdC5kZWVwLWNsIDw8RU9GCiAtLS0KIE1lc3NhZ2UtSWQ6IDwwPgogLS0tCkBAIC01MjQsNyArNTE3LDcgQEAKIAljaGVja190aHJlYWRpbmcgZXhwZWN0LmRlZXAtY2wgLS1jb3Zlci1sZXR0ZXIgLS10aHJlYWQ9ZGVlcCBtYXN0ZXIKICcKIAotY2F0ID4gZXhwZWN0LmRlZXAtY2wtaXJ0IDw8RU9GCitjYXQgPmV4cGVjdC5kZWVwLWNsLWlydCA8PEVPRgogLS0tCiBNZXNzYWdlLUlkOiA8MD4KIEluLVJlcGx5LVRvOiA8MT4KQEAgLTU3NSw3ICs1NjgsNiBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdleGNlc3NpdmUgc3ViamVjdCcgJwotCiAJcm0gLXJmIHBhdGNoZXMvICYmCiAJZ2l0IGNoZWNrb3V0IHNpZGUgJiYKIAliZWZvcmU9JChnaXQgaGFzaC1vYmplY3QgZmlsZSkgJiYKQEAgLTU4OSw2ICs1ODEsMTIgQEAKIAlscyBwYXRjaGVzLzAwMDQtVGhpcy1pcy1hbi1leGNlc3NpdmVseS1sb25nLXN1YmplY3QtbGluZS1mb3ItYS1tZXNzYS5wYXRjaAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmYWlsdXJlIHRvIHdyaXRlIGNvdmVyLWxldHRlciBhYm9ydHMgZ3JhY2VmdWxseScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm1kaXIgMDAwMC1jb3Zlci1sZXR0ZXIucGF0Y2giICYmCisJbWtkaXIgMDAwMC1jb3Zlci1sZXR0ZXIucGF0Y2ggJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgZm9ybWF0LXBhdGNoIC0tbm8tcmVuYW1lcyAtLWNvdmVyLWxldHRlciAtMQorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3Zlci1sZXR0ZXIgaW5oZXJpdHMgZGlmZiBvcHRpb25zJyAnCiAJZ2l0IG12IGZpbGUgZm9vICYmCiAJZ2l0IGNvbW1pdCAtbSBmb28gJiYKQEAgLTU5NywxMCArNTk1LDkgQEAKIAkhIGdyZXAgImZpbGUgPT4gZm9vIC4qIDAgKlwkIiAwMDAwLWNvdmVyLWxldHRlci5wYXRjaCAmJgogCWdpdCBmb3JtYXQtcGF0Y2ggLS1jb3Zlci1sZXR0ZXIgLTEgLU0gJiYKIAlncmVwICJmaWxlID0+IGZvbyAuKiAwICpcJCIgMDAwMC1jb3Zlci1sZXR0ZXIucGF0Y2gKLQogJwogCi1jYXQgPiBleHBlY3QgPDwgRU9GCitjYXQgPmV4cGVjdCA8PEVPRgogICBUaGlzIGlzIGFuIGV4Y2Vzc2l2ZWx5IGxvbmcgc3ViamVjdCBsaW5lIGZvciBhIG1lc3NhZ2UgZHVlIHRvIHRoZQogICAgIGhhYml0IHNvbWUgcHJvamVjdHMgaGF2ZSBvZiBub3QgaGF2aW5nIGEgc2hvcnQsIG9uZS1saW5lIHN1YmplY3QgYXQKICAgICB0aGUgc3RhcnQgb2YgdGhlIGNvbW1pdCBtZXNzYWdlLCBidXQgcmF0aGVyIHN0aWNraW5nIGEgd2hvbGUKQEAgLTYxMSwxNCArNjA4LDEyIEBACiBFT0YKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2hvcnRsb2cgb2YgY292ZXItbGV0dGVyIHdyYXBzIG92ZXJseS1sb25nIG9uZWxpbmVzJyAnCi0KIAlnaXQgZm9ybWF0LXBhdGNoIC0tY292ZXItbGV0dGVyIC0yICYmCi0Jc2VkIC1lICIxLC9BIFUgVGhvci9kIiAtZSAiL15cJC9xIiA8IDAwMDAtY292ZXItbGV0dGVyLnBhdGNoID4gb3V0cHV0ICYmCisJc2VkIC1lICIxLC9BIFUgVGhvci9kIiAtZSAiL15cJC9xIiAwMDAwLWNvdmVyLWxldHRlci5wYXRjaCA+b3V0cHV0ICYmCiAJdGVzdF9jbXAgZXhwZWN0IG91dHB1dAotCiAnCiAKLWNhdCA+IGV4cGVjdCA8PCBFT0YKK2NhdCA+ZXhwZWN0IDw8RU9GCiBpbmRleCAkYmVmb3JlLi4kYWZ0ZXIgMTAwNjQ0CiAtLS0gYS9maWxlCiArKysgYi9maWxlCkBAIC02MzEsMTYgKzYyNiwxNCBAQAogRU9GCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCByZXNwZWN0cyAtVScgJwotCiAJZ2l0IGZvcm1hdC1wYXRjaCAtVTQgLTIgJiYKIAlzZWQgLWUgIjEsL15kaWZmL2QiIC1lICIvXis1L3EiIFwKIAkJPDAwMDEtVGhpcy1pcy1hbi1leGNlc3NpdmVseS1sb25nLXN1YmplY3QtbGluZS1mb3ItYS1tZXNzYS5wYXRjaCBcCiAJCT5vdXRwdXQgJiYKIAl0ZXN0X2NtcCBleHBlY3Qgb3V0cHV0Ci0KICcKIAotY2F0ID4gZXhwZWN0IDw8IEVPRgorY2F0ID5leHBlY3QgPDxFT0YKIAogZGlmZiAtLWdpdCBhL2ZpbGUgYi9maWxlCiBpbmRleCAkYmVmb3JlLi4kYWZ0ZXIgMTAwNjQ0CkBAIC02NTQsMTEgKzY0Nyw5IEBACiBFT0YKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIC1wIHN1cHByZXNzZXMgc3RhdCcgJwotCiAJZ2l0IGZvcm1hdC1wYXRjaCAtcCAtMiAmJgotCXNlZCAtZSAiMSwvXlwkL2QiIC1lICIvXis1L3EiIDwgMDAwMS1UaGlzLWlzLWFuLWV4Y2Vzc2l2ZWx5LWxvbmctc3ViamVjdC1saW5lLWZvci1hLW1lc3NhLnBhdGNoID4gb3V0cHV0ICYmCisJc2VkIC1lICIxLC9eXCQvZCIgLWUgIi9eKzUvcSIgMDAwMS1UaGlzLWlzLWFuLWV4Y2Vzc2l2ZWx5LWxvbmctc3ViamVjdC1saW5lLWZvci1hLW1lc3NhLnBhdGNoID5vdXRwdXQgJiYKIAl0ZXN0X2NtcCBleHBlY3Qgb3V0cHV0Ci0KICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIGZyb20gYSBzdWJkaXJlY3RvcnkgKDEpJyAnCkBAIC03MTEsNyArNzAyLDcgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIC0taW4tcmVwbHktdG8nICcKLQlnaXQgZm9ybWF0LXBhdGNoIC0xIC0tc3Rkb3V0IC0taW4tcmVwbHktdG8gImJhekBmb28uYmFyIiA+IHBhdGNoOCAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgLS1pbi1yZXBseS10byAiYmF6QGZvby5iYXIiID5wYXRjaDggJiYKIAlncmVwICJeSW4tUmVwbHktVG86IDxiYXpAZm9vLmJhcj4iIHBhdGNoOCAmJgogCWdyZXAgIl5SZWZlcmVuY2VzOiA8YmF6QGZvby5iYXI+IiBwYXRjaDgKICcKQEAgLTczMiwyMSArNzIzLDEyNiBAQAogCXNlZCAiMSwvXi0tLSQvZCIgb3V0IHwgZ3JlcCAidGVzdCBtZXNzYWdlIgogJwogCi1lY2hvICJmYXRhbDogLS1uYW1lLW9ubHkgZG9lcyBub3QgbWFrZSBzZW5zZSIgPiBleHBlY3QubmFtZS1vbmx5Ci1lY2hvICJmYXRhbDogLS1uYW1lLXN0YXR1cyBkb2VzIG5vdCBtYWtlIHNlbnNlIiA+IGV4cGVjdC5uYW1lLXN0YXR1cwotZWNobyAiZmF0YWw6IC0tY2hlY2sgZG9lcyBub3QgbWFrZSBzZW5zZSIgPiBleHBlY3QuY2hlY2sKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCBub3RlcyBvdXRwdXQgY29udHJvbCcgJworCWdpdCBub3RlcyBhZGQgLW0gIm5vdGVzIGNvbmZpZyBtZXNzYWdlIiBIRUFEICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkIGdpdCBub3RlcyByZW1vdmUgSEVBRCAmJgorCisJZ2l0IGZvcm1hdC1wYXRjaCAtMSAtLXN0ZG91dCA+b3V0ICYmCisJISBncmVwICJub3RlcyBjb25maWcgbWVzc2FnZSIgb3V0ICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtMSAtLXN0ZG91dCAtLW5vdGVzID5vdXQgJiYKKwlncmVwICJub3RlcyBjb25maWcgbWVzc2FnZSIgb3V0ICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtMSAtLXN0ZG91dCAtLW5vLW5vdGVzID5vdXQgJiYKKwkhIGdyZXAgIm5vdGVzIGNvbmZpZyBtZXNzYWdlIiBvdXQgJiYKKwlnaXQgZm9ybWF0LXBhdGNoIC0xIC0tc3Rkb3V0IC0tbm90ZXMgLS1uby1ub3RlcyA+b3V0ICYmCisJISBncmVwICJub3RlcyBjb25maWcgbWVzc2FnZSIgb3V0ICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtMSAtLXN0ZG91dCAtLW5vLW5vdGVzIC0tbm90ZXMgPm91dCAmJgorCWdyZXAgIm5vdGVzIGNvbmZpZyBtZXNzYWdlIiBvdXQgJiYKKworCXRlc3RfY29uZmlnIGZvcm1hdC5ub3RlcyB0cnVlICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtMSAtLXN0ZG91dCA+b3V0ICYmCisJZ3JlcCAibm90ZXMgY29uZmlnIG1lc3NhZ2UiIG91dCAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgLS1ub3RlcyA+b3V0ICYmCisJZ3JlcCAibm90ZXMgY29uZmlnIG1lc3NhZ2UiIG91dCAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgLS1uby1ub3RlcyA+b3V0ICYmCisJISBncmVwICJub3RlcyBjb25maWcgbWVzc2FnZSIgb3V0ICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtMSAtLXN0ZG91dCAtLW5vdGVzIC0tbm8tbm90ZXMgPm91dCAmJgorCSEgZ3JlcCAibm90ZXMgY29uZmlnIG1lc3NhZ2UiIG91dCAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgLS1uby1ub3RlcyAtLW5vdGVzID5vdXQgJiYKKwlncmVwICJub3RlcyBjb25maWcgbWVzc2FnZSIgb3V0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCB3aXRoIG11bHRpcGxlIG5vdGVzIHJlZnMnICcKKwlnaXQgbm90ZXMgLS1yZWYgbm90ZTEgYWRkIC1tICJ0aGlzIGlzIG5vdGUgMSIgSEVBRCAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCBnaXQgbm90ZXMgLS1yZWYgbm90ZTEgcmVtb3ZlIEhFQUQgJiYKKwlnaXQgbm90ZXMgLS1yZWYgbm90ZTIgYWRkIC1tICJ0aGlzIGlzIG5vdGUgMiIgSEVBRCAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCBnaXQgbm90ZXMgLS1yZWYgbm90ZTIgcmVtb3ZlIEhFQUQgJiYKKworCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgPm91dCAmJgorCSEgZ3JlcCAidGhpcyBpcyBub3RlIDEiIG91dCAmJgorCSEgZ3JlcCAidGhpcyBpcyBub3RlIDIiIG91dCAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgLS1ub3Rlcz1ub3RlMSA+b3V0ICYmCisJZ3JlcCAidGhpcyBpcyBub3RlIDEiIG91dCAmJgorCSEgZ3JlcCAidGhpcyBpcyBub3RlIDIiIG91dCAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgLS1ub3Rlcz1ub3RlMiA+b3V0ICYmCisJISBncmVwICJ0aGlzIGlzIG5vdGUgMSIgb3V0ICYmCisJZ3JlcCAidGhpcyBpcyBub3RlIDIiIG91dCAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgLS1ub3Rlcz1ub3RlMSAtLW5vdGVzPW5vdGUyID5vdXQgJiYKKwlncmVwICJ0aGlzIGlzIG5vdGUgMSIgb3V0ICYmCisJZ3JlcCAidGhpcyBpcyBub3RlIDIiIG91dCAmJgorCisJdGVzdF9jb25maWcgZm9ybWF0Lm5vdGVzIG5vdGUxICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtMSAtLXN0ZG91dCA+b3V0ICYmCisJZ3JlcCAidGhpcyBpcyBub3RlIDEiIG91dCAmJgorCSEgZ3JlcCAidGhpcyBpcyBub3RlIDIiIG91dCAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgLS1uby1ub3RlcyA+b3V0ICYmCisJISBncmVwICJ0aGlzIGlzIG5vdGUgMSIgb3V0ICYmCisJISBncmVwICJ0aGlzIGlzIG5vdGUgMiIgb3V0ICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtMSAtLXN0ZG91dCAtLW5vdGVzPW5vdGUyID5vdXQgJiYKKwlncmVwICJ0aGlzIGlzIG5vdGUgMSIgb3V0ICYmCisJZ3JlcCAidGhpcyBpcyBub3RlIDIiIG91dCAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgLS1uby1ub3RlcyAtLW5vdGVzPW5vdGUyID5vdXQgJiYKKwkhIGdyZXAgInRoaXMgaXMgbm90ZSAxIiBvdXQgJiYKKwlncmVwICJ0aGlzIGlzIG5vdGUgMiIgb3V0ICYmCisKKwlnaXQgY29uZmlnIC0tYWRkIGZvcm1hdC5ub3RlcyBub3RlMiAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgPm91dCAmJgorCWdyZXAgInRoaXMgaXMgbm90ZSAxIiBvdXQgJiYKKwlncmVwICJ0aGlzIGlzIG5vdGUgMiIgb3V0ICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtMSAtLXN0ZG91dCAtLW5vLW5vdGVzID5vdXQgJiYKKwkhIGdyZXAgInRoaXMgaXMgbm90ZSAxIiBvdXQgJiYKKwkhIGdyZXAgInRoaXMgaXMgbm90ZSAyIiBvdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIHdpdGggbXVsdGlwbGUgbm90ZXMgcmVmcyBpbiBjb25maWcnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInRlc3RfdW5jb25maWcgZm9ybWF0Lm5vdGVzIiAmJgorCisJZ2l0IG5vdGVzIC0tcmVmIG5vdGUxIGFkZCAtbSAidGhpcyBpcyBub3RlIDEiIEhFQUQgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgZ2l0IG5vdGVzIC0tcmVmIG5vdGUxIHJlbW92ZSBIRUFEICYmCisJZ2l0IG5vdGVzIC0tcmVmIG5vdGUyIGFkZCAtbSAidGhpcyBpcyBub3RlIDIiIEhFQUQgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgZ2l0IG5vdGVzIC0tcmVmIG5vdGUyIHJlbW92ZSBIRUFEICYmCisKKwlnaXQgY29uZmlnIGZvcm1hdC5ub3RlcyBub3RlMSAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgPm91dCAmJgorCWdyZXAgInRoaXMgaXMgbm90ZSAxIiBvdXQgJiYKKwkhIGdyZXAgInRoaXMgaXMgbm90ZSAyIiBvdXQgJiYKKwlnaXQgY29uZmlnIGZvcm1hdC5ub3RlcyBub3RlMiAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgPm91dCAmJgorCSEgZ3JlcCAidGhpcyBpcyBub3RlIDEiIG91dCAmJgorCWdyZXAgInRoaXMgaXMgbm90ZSAyIiBvdXQgJiYKKwlnaXQgY29uZmlnIC0tYWRkIGZvcm1hdC5ub3RlcyBub3RlMSAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgPm91dCAmJgorCWdyZXAgInRoaXMgaXMgbm90ZSAxIiBvdXQgJiYKKwlncmVwICJ0aGlzIGlzIG5vdGUgMiIgb3V0ICYmCisKKwlnaXQgY29uZmlnIC0tcmVwbGFjZS1hbGwgZm9ybWF0Lm5vdGVzIG5vdGUxICYmCisJZ2l0IGNvbmZpZyAtLWFkZCBmb3JtYXQubm90ZXMgZmFsc2UgJiYKKwlnaXQgZm9ybWF0LXBhdGNoIC0xIC0tc3Rkb3V0ID5vdXQgJiYKKwkhIGdyZXAgInRoaXMgaXMgbm90ZSAxIiBvdXQgJiYKKwkhIGdyZXAgInRoaXMgaXMgbm90ZSAyIiBvdXQgJiYKKwlnaXQgY29uZmlnIC0tYWRkIGZvcm1hdC5ub3RlcyBub3RlMiAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLTEgLS1zdGRvdXQgPm91dCAmJgorCSEgZ3JlcCAidGhpcyBpcyBub3RlIDEiIG91dCAmJgorCWdyZXAgInRoaXMgaXMgbm90ZSAyIiBvdXQKKycKKworZWNobyAiZmF0YWw6IC0tbmFtZS1vbmx5IGRvZXMgbm90IG1ha2Ugc2Vuc2UiID5leHBlY3QubmFtZS1vbmx5CitlY2hvICJmYXRhbDogLS1uYW1lLXN0YXR1cyBkb2VzIG5vdCBtYWtlIHNlbnNlIiA+ZXhwZWN0Lm5hbWUtc3RhdHVzCitlY2hvICJmYXRhbDogLS1jaGVjayBkb2VzIG5vdCBtYWtlIHNlbnNlIiA+ZXhwZWN0LmNoZWNrCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ29wdGlvbnMgbm8gbG9uZ2VyIGFsbG93ZWQgZm9yIGZvcm1hdC1wYXRjaCcgJwotCXRlc3RfbXVzdF9mYWlsIGdpdCBmb3JtYXQtcGF0Y2ggLS1uYW1lLW9ubHkgMj4gb3V0cHV0ICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZvcm1hdC1wYXRjaCAtLW5hbWUtb25seSAyPm91dHB1dCAmJgogCXRlc3RfaTE4bmNtcCBleHBlY3QubmFtZS1vbmx5IG91dHB1dCAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCBmb3JtYXQtcGF0Y2ggLS1uYW1lLXN0YXR1cyAyPiBvdXRwdXQgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgZm9ybWF0LXBhdGNoIC0tbmFtZS1zdGF0dXMgMj5vdXRwdXQgJiYKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0Lm5hbWUtc3RhdHVzIG91dHB1dCAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCBmb3JtYXQtcGF0Y2ggLS1jaGVjayAyPiBvdXRwdXQgJiYKLQl0ZXN0X2kxOG5jbXAgZXhwZWN0LmNoZWNrIG91dHB1dCcKKwl0ZXN0X211c3RfZmFpbCBnaXQgZm9ybWF0LXBhdGNoIC0tY2hlY2sgMj5vdXRwdXQgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0LmNoZWNrIG91dHB1dAorJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JtYXQtcGF0Y2ggLS1udW1zdGF0IHNob3VsZCBwcm9kdWNlIGEgcGF0Y2gnICcKLQlnaXQgZm9ybWF0LXBhdGNoIC0tbnVtc3RhdCAtLXN0ZG91dCBtYXN0ZXIuLnNpZGUgPiBvdXRwdXQgJiYKLQl0ZXN0IDUgPSAkKGdyZXAgIl5kaWZmIC0tZ2l0IGEvIiBvdXRwdXQgfCB3YyAtbCknCisJZ2l0IGZvcm1hdC1wYXRjaCAtLW51bXN0YXQgLS1zdGRvdXQgbWFzdGVyLi5zaWRlID5vdXRwdXQgJiYKKwlncmVwICJeZGlmZiAtLWdpdCBhLyIgb3V0cHV0ID5kaWZmICYmCisJdGVzdF9saW5lX2NvdW50ID0gNSBkaWZmCisnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCAtLSA8cGF0aD4nICcKIAlnaXQgZm9ybWF0LXBhdGNoIG1hc3Rlci4uc2lkZSAtLSBmaWxlIDI+ZXJyb3IgJiYKQEAgLTc1NywyMCArODUzLDI1IEBACiAJZ2l0IGZvcm1hdC1wYXRjaCAtLWlnbm9yZS1pZi1pbi11cHN0cmVhbSBIRUFECiAnCiAKLWdpdF92ZXJzaW9uPSIkKGdpdCAtLXZlcnNpb24gfCBzZWQgInMvLiogLy8iKSIKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dldCBnaXQgdmVyc2lvbicgJworCWdpdF92ZXJzaW9uPSQoZ2l0IC0tdmVyc2lvbikgJiYKKwlnaXRfdmVyc2lvbj0ke2dpdF92ZXJzaW9uIyMqIH0KKycKIAogc2lnbmF0dXJlKCkgewogCXByaW50ZiAiJXNcbiVzXG5cbiIgIi0tICIgIiR7MTotJGdpdF92ZXJzaW9ufSIKIH0KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIGRlZmF1bHQgc2lnbmF0dXJlJyAnCi0JZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtMSB8IHRhaWwgLW4gMyA+b3V0cHV0ICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtMSA+cGF0Y2ggJiYKKwl0YWlsIC1uIDMgcGF0Y2ggPm91dHB1dCAmJgogCXNpZ25hdHVyZSA+ZXhwZWN0ICYmCiAJdGVzdF9jbXAgZXhwZWN0IG91dHB1dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JtYXQtcGF0Y2ggLS1zaWduYXR1cmUnICcKLQlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IC0tc2lnbmF0dXJlPSJteSBzaWciIC0xIHwgdGFpbCAtbiAzID5vdXRwdXQgJiYKKwlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IC0tc2lnbmF0dXJlPSJteSBzaWciIC0xID5wYXRjaCAmJgorCXRhaWwgLW4gMyBwYXRjaCA+b3V0cHV0ICYmCiAJc2lnbmF0dXJlICJteSBzaWciID5leHBlY3QgJiYKIAl0ZXN0X2NtcCBleHBlY3Qgb3V0cHV0CiAnCkBAIC04MDIsOCArOTAzLDggQEAKIAlnaXQgY29uZmlnIC0tdW5zZXQtYWxsIGZvcm1hdC5zaWduYXR1cmUgJiYKIAlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IC0tc2lnbmF0dXJlPSJteSBzaWciIC0tY292ZXItbGV0dGVyIFwKIAkJLTEgPm91dHB1dCAmJgotCWdyZXAgIm15IHNpZyIgb3V0cHV0ICYmCi0JdGVzdCAyID0gJChncmVwICJteSBzaWciIG91dHB1dCB8IHdjIC1sKQorCWdyZXAgIm15IHNpZyIgb3V0cHV0ID5zaWcgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAyIHNpZwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JtYXQuc2lnbmF0dXJlPSIiIHN1cHByZXNzZXMgc2lnbmF0dXJlcycgJwpAQCAtODQwLDcgKzk0MSw3IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXNpZ25hdHVyZS1maWxlPWZpbGUgd29ya3MnICcKIAlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IC0tc2lnbmF0dXJlLWZpbGU9bWFpbC1zaWduYXR1cmUgLTEgPm91dHB1dCAmJgogCWNoZWNrX3BhdGNoIG91dHB1dCAmJgotCXNlZCAtZSAiMSwvXi0tIFwkL2QiIDxvdXRwdXQgPmFjdHVhbCAmJgorCXNlZCAtZSAiMSwvXi0tIFwkL2QiIG91dHB1dCA+YWN0dWFsICYmCiAJewogCQljYXQgbWFpbC1zaWduYXR1cmUgJiYgZWNobwogCX0gPmV4cGVjdCAmJgpAQCAtODUxLDcgKzk1Miw3IEBACiAJdGVzdF9jb25maWcgZm9ybWF0LnNpZ25hdHVyZWZpbGUgbWFpbC1zaWduYXR1cmUgJiYKIAlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IC0xID5vdXRwdXQgJiYKIAljaGVja19wYXRjaCBvdXRwdXQgJiYKLQlzZWQgLWUgIjEsL14tLSBcJC9kIiA8b3V0cHV0ID5hY3R1YWwgJiYKKwlzZWQgLWUgIjEsL14tLSBcJC9kIiBvdXRwdXQgPmFjdHVhbCAmJgogCXsKIAkJY2F0IG1haWwtc2lnbmF0dXJlICYmIGVjaG8KIAl9ID5leHBlY3QgJiYKQEAgLTg3Myw3ICs5NzQsNyBAQAogCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgXAogCQkJLS1zaWduYXR1cmUtZmlsZT1vdGhlci1tYWlsLXNpZ25hdHVyZSAtMSA+b3V0cHV0ICYmCiAJY2hlY2tfcGF0Y2ggb3V0cHV0ICYmCi0Jc2VkIC1lICIxLC9eLS0gXCQvZCIgPG91dHB1dCA+YWN0dWFsICYmCisJc2VkIC1lICIxLC9eLS0gXCQvZCIgb3V0cHV0ID5hY3R1YWwgJiYKIAl7CiAJCWNhdCBvdGhlci1tYWlsLXNpZ25hdHVyZSAmJiBlY2hvCiAJfSA+ZXhwZWN0ICYmCkBAIC05NDIsNyArMTA0Myw3IEBACiAJZ2l0IGFkZCBmaWxlICYmCiAJZ2l0IGNvbW1pdCAtbSAiJE01MTIiICYmCiAJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtMSA+cGF0Y2ggJiYKLQlzZWQgLW4gIi9eU3ViamVjdC9wOyAvXiAvcDsgL14kL3EiIDxwYXRjaCA+c3ViamVjdCAmJgorCXNlZCAtbiAiL15TdWJqZWN0L3A7IC9eIC9wOyAvXiQvcSIgcGF0Y2ggPnN1YmplY3QgJiYKIAl0ZXN0X2NtcCBleHBlY3Qgc3ViamVjdAogJwogCkBAIC05ODEsNyArMTA4Miw3IEBACiAJZ2l0IGFkZCBmaWxlICYmCiAJZ2l0IGNvbW1pdCAtbSAiJE01MTIiICYmCiAJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtMSA+cGF0Y2ggJiYKLQlzZWQgLW4gIi9eU3ViamVjdC9wOyAvXiAvcDsgL14kL3EiIDxwYXRjaCA+c3ViamVjdCAmJgorCXNlZCAtbiAiL15TdWJqZWN0L3A7IC9eIC9wOyAvXiQvcSIgcGF0Y2ggPnN1YmplY3QgJiYKIAl0ZXN0X2NtcCBleHBlY3Qgc3ViamVjdAogJwogCkBAIC05OTAsNyArMTA5MSw3IEBACiAJZ2l0IGFkZCBmaWxlICYmCiAJR0lUX0FVVEhPUl9OQU1FPSQxIGdpdCBjb21taXQgLW0gYXV0aG9yLWNoZWNrICYmCiAJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtMSA+cGF0Y2ggJiYKLQlzZWQgLW4gIi9eRnJvbTogL3A7IC9eIC9wOyAvXiQvcSIgPHBhdGNoID5hY3R1YWwgJiYKKwlzZWQgLW4gIi9eRnJvbTogL3A7IC9eIC9wOyAvXiQvcSIgcGF0Y2ggPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKIH0KIApAQCAtMTExMCw3ICsxMjExLDcgQEAKIAlGcm9tOiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgogCiAJRU9GCi0Jc2VkIC1uZSAiL15Gcm9tOi9wOyAvXiQvcDsgL14tLS0kL3EiIDxwYXRjaCA+cGF0Y2guaGVhZCAmJgorCXNlZCAtbmUgIi9eRnJvbTovcDsgL14kL3A7IC9eLS0tJC9xIiBwYXRjaCA+cGF0Y2guaGVhZCAmJgogCXRlc3RfY21wIGV4cGVjdCBwYXRjaC5oZWFkCiAnCiAKQEAgLTExMjIsNyArMTIyMyw3IEBACiAJRnJvbTogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KIAogCUVPRgotCXNlZCAtbmUgIi9eRnJvbTovcDsgL14kL3A7IC9eLS0tJC9xIiA8cGF0Y2ggPnBhdGNoLmhlYWQgJiYKKwlzZWQgLW5lICIvXkZyb206L3A7IC9eJC9wOyAvXi0tLSQvcSIgcGF0Y2ggPnBhdGNoLmhlYWQgJiYKIAl0ZXN0X2NtcCBleHBlY3QgcGF0Y2guaGVhZAogJwogCkBAIC0xMTMyLDcgKzEyMzMsNyBAQAogCUZyb206IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CiAKIAlFT0YKLQlzZWQgLW5lICIvXkZyb206L3A7IC9eJC9wOyAvXi0tLSQvcSIgPHBhdGNoID5wYXRjaC5oZWFkICYmCisJc2VkIC1uZSAiL15Gcm9tOi9wOyAvXiQvcDsgL14tLS0kL3EiIHBhdGNoID5wYXRjaC5oZWFkICYmCiAJdGVzdF9jbXAgZXhwZWN0IHBhdGNoLmhlYWQKICcKIApAQCAtMTE0Nyw3ICsxMjQ4LDcgQEAKIAlGcm9tOiDDqXjDtnTDrGMgPGF1dGhvckBleGFtcGxlLmNvbT4KIAogCUVPRgotCXNlZCAtbmUgIi9eRnJvbTovcDsgL14kL3A7IC9eQ29udGVudC1UeXBlL3A7IC9eLS0tJC9xIiA8cGF0Y2ggPnBhdGNoLmhlYWQgJiYKKwlzZWQgLW5lICIvXkZyb206L3A7IC9eJC9wOyAvXkNvbnRlbnQtVHlwZS9wOyAvXi0tLSQvcSIgcGF0Y2ggPnBhdGNoLmhlYWQgJiYKIAl0ZXN0X2NtcCBleHBlY3QgcGF0Y2guaGVhZAogJwogCkBAIC0xMTYxLDI4MyArMTI2MiwyODMgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2lnbm9mZjogY29tbWl0IHdpdGggbm8gYm9keScgJwogCWFwcGVuZF9zaWdub2ZmIDwvZGV2L251bGwgPmFjdHVhbCAmJgotCWNhdCA8PFxFT0YgfCBzZWQgInMvRU9MJC8vIiA+ZXhwZWN0ZWQgJiYKLTQ6U3ViamVjdDogW1BBVENIXSBFT0wKLTg6Ci05OlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KLUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWNhdCA8PC1cRU9GIHwgc2VkICJzL0VPTCQvLyIgPmV4cGVjdCAmJgorCTQ6U3ViamVjdDogW1BBVENIXSBFT0wKKwk4OgorCTk6U2lnbmVkLW9mZi1ieTogQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPgorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2lnbm9mZjogY29tbWl0IHdpdGggb25seSBzdWJqZWN0JyAnCiAJZWNobyBzdWJqZWN0IHwgYXBwZW5kX3NpZ25vZmYgPmFjdHVhbCAmJgotCWNhdCA+ZXhwZWN0ZWQgPDxcRU9GICYmCi00OlN1YmplY3Q6IFtQQVRDSF0gc3ViamVjdAotODoKLTk6U2lnbmVkLW9mZi1ieTogQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPgotRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0CisJODoKKwk5OlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NpZ25vZmY6IGNvbW1pdCB3aXRoIG9ubHkgc3ViamVjdCB0aGF0IGRvZXMgbm90IGVuZCB3aXRoIE5MJyAnCiAJcHJpbnRmIHN1YmplY3QgfCBhcHBlbmRfc2lnbm9mZiA+YWN0dWFsICYmCi0JY2F0ID5leHBlY3RlZCA8PFxFT0YgJiYKLTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0Ci04OgotOTpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci1FT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJNDpTdWJqZWN0OiBbUEFUQ0hdIHN1YmplY3QKKwk4OgorCTk6U2lnbmVkLW9mZi1ieTogQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPgorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2lnbm9mZjogbm8gZXhpc3Rpbmcgc2lnbm9mZnMnICcKLQlhcHBlbmRfc2lnbm9mZiA8PFxFT0YgPmFjdHVhbCAmJgotc3ViamVjdAorCWFwcGVuZF9zaWdub2ZmIDw8LVxFT0YgPmFjdHVhbCAmJgorCXN1YmplY3QKIAotYm9keQotRU9GCi0JY2F0ID5leHBlY3RlZCA8PFxFT0YgJiYKLTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0Ci04OgotMTA6Ci0xMTpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci1FT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlib2R5CisJRU9GCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0CisJODoKKwkxMDoKKwkxMTpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+CisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaWdub2ZmOiBubyBleGlzdGluZyBzaWdub2ZmcyBhbmQgbm8gdHJhaWxpbmcgTkwnICcKIAlwcmludGYgInN1YmplY3RcblxuYm9keSIgfCBhcHBlbmRfc2lnbm9mZiA+YWN0dWFsICYmCi0JY2F0ID5leHBlY3RlZCA8PFxFT0YgJiYKLTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0Ci04OgotMTA6Ci0xMTpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci1FT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJNDpTdWJqZWN0OiBbUEFUQ0hdIHN1YmplY3QKKwk4OgorCTEwOgorCTExOlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NpZ25vZmY6IHNvbWUgcmFuZG9tIHNpZ25vZmYnICcKLQlhcHBlbmRfc2lnbm9mZiA8PFxFT0YgPmFjdHVhbCAmJgotc3ViamVjdAorCWFwcGVuZF9zaWdub2ZmIDw8LVxFT0YgPmFjdHVhbCAmJgorCXN1YmplY3QKIAotYm9keQorCWJvZHkKIAotU2lnbmVkLW9mZi1ieTogbXlAaG91c2UKLUVPRgotCWNhdCA+ZXhwZWN0ZWQgPDxcRU9GICYmCi00OlN1YmplY3Q6IFtQQVRDSF0gc3ViamVjdAotODoKLTEwOgotMTE6U2lnbmVkLW9mZi1ieTogbXlAaG91c2UKLTEyOlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KLUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCVNpZ25lZC1vZmYtYnk6IG15QGhvdXNlCisJRU9GCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0CisJODoKKwkxMDoKKwkxMTpTaWduZWQtb2ZmLWJ5OiBteUBob3VzZQorCTEyOlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NpZ25vZmY6IG1pc2MgY29uZm9ybWluZyBmb290ZXIgZWxlbWVudHMnICcKLQlhcHBlbmRfc2lnbm9mZiA8PFxFT0YgPmFjdHVhbCAmJgotc3ViamVjdAorCWFwcGVuZF9zaWdub2ZmIDw8LVxFT0YgPmFjdHVhbCAmJgorCXN1YmplY3QKIAotYm9keQorCWJvZHkKIAotU2lnbmVkLW9mZi1ieTogbXlAaG91c2UKLShjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IGRhMzlhM2VlNWU2YjRiMGQzMjU1YmZlZjk1NjAxODkwYWZkODA3MDkpCi1UZXN0ZWQtYnk6IFNvbWUgT25lIDxzb21lb25lQGV4YW1wbGUuY29tPgotQnVnOiAxMjM0Ci1FT0YKLQljYXQgPmV4cGVjdGVkIDw8XEVPRiAmJgotNDpTdWJqZWN0OiBbUEFUQ0hdIHN1YmplY3QKLTg6Ci0xMDoKLTExOlNpZ25lZC1vZmYtYnk6IG15QGhvdXNlCi0xNTpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci1FT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlTaWduZWQtb2ZmLWJ5OiBteUBob3VzZQorCShjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IGRhMzlhM2VlNWU2YjRiMGQzMjU1YmZlZjk1NjAxODkwYWZkODA3MDkpCisJVGVzdGVkLWJ5OiBTb21lIE9uZSA8c29tZW9uZUBleGFtcGxlLmNvbT4KKwlCdWc6IDEyMzQKKwlFT0YKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJNDpTdWJqZWN0OiBbUEFUQ0hdIHN1YmplY3QKKwk4OgorCTEwOgorCTExOlNpZ25lZC1vZmYtYnk6IG15QGhvdXNlCisJMTU6U2lnbmVkLW9mZi1ieTogQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPgorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2lnbm9mZjogc29tZSByYW5kb20gc2lnbm9mZi1hbGlrZScgJwotCWFwcGVuZF9zaWdub2ZmIDw8XEVPRiA+YWN0dWFsICYmCi1zdWJqZWN0CisJYXBwZW5kX3NpZ25vZmYgPDwtXEVPRiA+YWN0dWFsICYmCisJc3ViamVjdAogCi1ib2R5Ci1Gb29sZWQtYnktbWU6IG15QGhvdXNlCi1FT0YKLQljYXQgPmV4cGVjdGVkIDw8XEVPRiAmJgotNDpTdWJqZWN0OiBbUEFUQ0hdIHN1YmplY3QKLTg6Ci0xMToKLTEyOlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KLUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWJvZHkKKwlGb29sZWQtYnktbWU6IG15QGhvdXNlCisJRU9GCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0CisJODoKKwkxMToKKwkxMjpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+CisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaWdub2ZmOiBub3QgcmVhbGx5IGEgc2lnbm9mZicgJwotCWFwcGVuZF9zaWdub2ZmIDw8XEVPRiA+YWN0dWFsICYmCi1zdWJqZWN0CisJYXBwZW5kX3NpZ25vZmYgPDwtXEVPRiA+YWN0dWFsICYmCisJc3ViamVjdAogCi1JIHdhbnQgdG8gbWVudGlvbiBhYm91dCBTaWduZWQtb2ZmLWJ5OiBoZXJlLgotRU9GCi0JY2F0ID5leHBlY3RlZCA8PFxFT0YgJiYKLTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0Ci04OgotOTpJIHdhbnQgdG8gbWVudGlvbiBhYm91dCBTaWduZWQtb2ZmLWJ5OiBoZXJlLgotMTA6Ci0xMTpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci1FT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlJIHdhbnQgdG8gbWVudGlvbiBhYm91dCBTaWduZWQtb2ZmLWJ5OiBoZXJlLgorCUVPRgorCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwk0OlN1YmplY3Q6IFtQQVRDSF0gc3ViamVjdAorCTg6CisJOTpJIHdhbnQgdG8gbWVudGlvbiBhYm91dCBTaWduZWQtb2ZmLWJ5OiBoZXJlLgorCTEwOgorCTExOlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NpZ25vZmY6IG5vdCByZWFsbHkgYSBzaWdub2ZmICgyKScgJwotCWFwcGVuZF9zaWdub2ZmIDw8XEVPRiA+YWN0dWFsICYmCi1zdWJqZWN0CisJYXBwZW5kX3NpZ25vZmYgPDwtXEVPRiA+YWN0dWFsICYmCisJc3ViamVjdAogCi1NeSB1bmZvcnR1bmF0ZQotU2lnbmVkLW9mZi1ieTogZXhhbXBsZSBoYXBwZW5zIHRvIGJlIHdyYXBwZWQgaGVyZS4KLUVPRgotCWNhdCA+ZXhwZWN0ZWQgPDxcRU9GICYmCi00OlN1YmplY3Q6IFtQQVRDSF0gc3ViamVjdAotODoKLTEwOlNpZ25lZC1vZmYtYnk6IGV4YW1wbGUgaGFwcGVucyB0byBiZSB3cmFwcGVkIGhlcmUuCi0xMTpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci1FT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlNeSB1bmZvcnR1bmF0ZQorCVNpZ25lZC1vZmYtYnk6IGV4YW1wbGUgaGFwcGVucyB0byBiZSB3cmFwcGVkIGhlcmUuCisJRU9GCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0CisJODoKKwkxMDpTaWduZWQtb2ZmLWJ5OiBleGFtcGxlIGhhcHBlbnMgdG8gYmUgd3JhcHBlZCBoZXJlLgorCTExOlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NpZ25vZmY6IHZhbGlkIFMtby1iIHBhcmFncmFwaCBpbiB0aGUgbWlkZGxlJyAnCi0JYXBwZW5kX3NpZ25vZmYgPDxcRU9GID5hY3R1YWwgJiYKLXN1YmplY3QKKwlhcHBlbmRfc2lnbm9mZiA8PC1cRU9GID5hY3R1YWwgJiYKKwlzdWJqZWN0CiAKLVNpZ25lZC1vZmYtYnk6IG15QGhvdXNlCi1TaWduZWQtb2ZmLWJ5OiB5b3VyQGhvdXNlCisJU2lnbmVkLW9mZi1ieTogbXlAaG91c2UKKwlTaWduZWQtb2ZmLWJ5OiB5b3VyQGhvdXNlCiAKLUEgbG90IG9mIGhvdXNlcy4KLUVPRgotCWNhdCA+ZXhwZWN0ZWQgPDxcRU9GICYmCi00OlN1YmplY3Q6IFtQQVRDSF0gc3ViamVjdAotODoKLTk6U2lnbmVkLW9mZi1ieTogbXlAaG91c2UKLTEwOlNpZ25lZC1vZmYtYnk6IHlvdXJAaG91c2UKLTExOgotMTM6Ci0xNDpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci1FT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlBIGxvdCBvZiBob3VzZXMuCisJRU9GCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0CisJODoKKwk5OlNpZ25lZC1vZmYtYnk6IG15QGhvdXNlCisJMTA6U2lnbmVkLW9mZi1ieTogeW91ckBob3VzZQorCTExOgorCTEzOgorCTE0OlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NpZ25vZmY6IHRoZSBzYW1lIHNpZ25vZmYgYXQgdGhlIGVuZCcgJwotCWFwcGVuZF9zaWdub2ZmIDw8XEVPRiA+YWN0dWFsICYmCi1zdWJqZWN0CisJYXBwZW5kX3NpZ25vZmYgPDwtXEVPRiA+YWN0dWFsICYmCisJc3ViamVjdAogCi1ib2R5CisJYm9keQogCi1TaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci1FT0YKLQljYXQgPmV4cGVjdGVkIDw8XEVPRiAmJgotNDpTdWJqZWN0OiBbUEFUQ0hdIHN1YmplY3QKLTg6Ci0xMDoKLTExOlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KLUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCVNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KKwlFT0YKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJNDpTdWJqZWN0OiBbUEFUQ0hdIHN1YmplY3QKKwk4OgorCTEwOgorCTExOlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NpZ25vZmY6IHRoZSBzYW1lIHNpZ25vZmYgYXQgdGhlIGVuZCwgbm8gdHJhaWxpbmcgTkwnICcKIAlwcmludGYgInN1YmplY3RcblxuU2lnbmVkLW9mZi1ieTogQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPiIgfAogCQlhcHBlbmRfc2lnbm9mZiA+YWN0dWFsICYmCi0JY2F0ID5leHBlY3RlZCA8PFxFT0YgJiYKLTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0Ci04OgotOTpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci1FT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJNDpTdWJqZWN0OiBbUEFUQ0hdIHN1YmplY3QKKwk4OgorCTk6U2lnbmVkLW9mZi1ieTogQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPgorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2lnbm9mZjogdGhlIHNhbWUgc2lnbm9mZiBOT1QgYXQgdGhlIGVuZCcgJwotCWFwcGVuZF9zaWdub2ZmIDw8XEVPRiA+YWN0dWFsICYmCi1zdWJqZWN0CisJYXBwZW5kX3NpZ25vZmYgPDwtXEVPRiA+YWN0dWFsICYmCisJc3ViamVjdAogCi1ib2R5CisJYm9keQogCi1TaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci1TaWduZWQtb2ZmLWJ5OiBteUBob3VzZQotRU9GCi0JY2F0ID5leHBlY3RlZCA8PFxFT0YgJiYKLTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0Ci04OgotMTA6Ci0xMTpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci0xMjpTaWduZWQtb2ZmLWJ5OiBteUBob3VzZQotRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJU2lnbmVkLW9mZi1ieTogQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPgorCVNpZ25lZC1vZmYtYnk6IG15QGhvdXNlCisJRU9GCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0CisJODoKKwkxMDoKKwkxMTpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+CisJMTI6U2lnbmVkLW9mZi1ieTogbXlAaG91c2UKKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NpZ25vZmY6IHRvbGVyYXRlIGdhcmJhZ2UgaW4gY29uZm9ybWluZyBmb290ZXInICcKLQlhcHBlbmRfc2lnbm9mZiA8PFxFT0YgPmFjdHVhbCAmJgotc3ViamVjdAorCWFwcGVuZF9zaWdub2ZmIDw8LVxFT0YgPmFjdHVhbCAmJgorCXN1YmplY3QKIAotYm9keQorCWJvZHkKIAotVGVzdGVkLWJ5OiBteUBob3VzZQotU29tZSBUcmFzaAotU2lnbmVkLW9mZi1ieTogQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPgotRU9GCi0JY2F0ID5leHBlY3RlZCA8PFxFT0YgJiYKLTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0Ci04OgotMTA6Ci0xMzpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci1FT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlUZXN0ZWQtYnk6IG15QGhvdXNlCisJU29tZSBUcmFzaAorCVNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KKwlFT0YKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJNDpTdWJqZWN0OiBbUEFUQ0hdIHN1YmplY3QKKwk4OgorCTEwOgorCTEzOlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NpZ25vZmY6IHJlc3BlY3QgdHJhaWxlciBjb25maWcnICcKLQlhcHBlbmRfc2lnbm9mZiA8PFxFT0YgPmFjdHVhbCAmJgotc3ViamVjdAorCWFwcGVuZF9zaWdub2ZmIDw8LVxFT0YgPmFjdHVhbCAmJgorCXN1YmplY3QKIAotTXlmb290ZXI6IHgKLVNvbWUgVHJhc2gKLUVPRgotCWNhdCA+ZXhwZWN0ZWQgPDxcRU9GICYmCi00OlN1YmplY3Q6IFtQQVRDSF0gc3ViamVjdAotODoKLTExOgotMTI6U2lnbmVkLW9mZi1ieTogQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPgotRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsICYmCisJTXlmb290ZXI6IHgKKwlTb21lIFRyYXNoCisJRU9GCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0CisJODoKKwkxMToKKwkxMjpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+CisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgogCiAJdGVzdF9jb25maWcgdHJhaWxlci5NeWZvb3Rlci5pZmV4aXN0cyBhZGQgJiYKLQlhcHBlbmRfc2lnbm9mZiA8PFxFT0YgPmFjdHVhbCAmJgotc3ViamVjdAorCWFwcGVuZF9zaWdub2ZmIDw8LVxFT0YgPmFjdHVhbCAmJgorCXN1YmplY3QKIAotTXlmb290ZXI6IHgKLVNvbWUgVHJhc2gKLUVPRgotCWNhdCA+ZXhwZWN0ZWQgPDxcRU9GICYmCi00OlN1YmplY3Q6IFtQQVRDSF0gc3ViamVjdAotODoKLTExOlNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KLUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCU15Zm9vdGVyOiB4CisJU29tZSBUcmFzaAorCUVPRgorCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwk0OlN1YmplY3Q6IFtQQVRDSF0gc3ViamVjdAorCTg6CisJMTE6U2lnbmVkLW9mZi1ieTogQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPgorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2lnbm9mZjogZm9vdGVyIGJlZ2lucyB3aXRoIG5vbi1zaWdub2ZmIHdpdGhvdXQgQCBzaWduJyAnCi0JYXBwZW5kX3NpZ25vZmYgPDxcRU9GID5hY3R1YWwgJiYKLXN1YmplY3QKKwlhcHBlbmRfc2lnbm9mZiA8PC1cRU9GID5hY3R1YWwgJiYKKwlzdWJqZWN0CiAKLWJvZHkKKwlib2R5CiAKLVJldmlld2VkLWlkOiBOb29uZQotVGVzdGVkLWJ5OiBteUBob3VzZQotQ2hhbmdlLWlkOiBJZGVhZGJlZWYKLVNpZ25lZC1vZmYtYnk6IEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KLUJ1ZzogMTIzNAotRU9GCi0JY2F0ID5leHBlY3RlZCA8PFxFT0YgJiYKLTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0Ci04OgotMTA6Ci0xNDpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+Ci1FT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlSZXZpZXdlZC1pZDogTm9vbmUKKwlUZXN0ZWQtYnk6IG15QGhvdXNlCisJQ2hhbmdlLWlkOiBJZGVhZGJlZWYKKwlTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+CisJQnVnOiAxMjM0CisJRU9GCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCTQ6U3ViamVjdDogW1BBVENIXSBzdWJqZWN0CisJODoKKwkxMDoKKwkxNDpTaWduZWQtb2ZmLWJ5OiBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+CisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JtYXQgcGF0Y2ggaWdub3JlcyBjb2xvci51aScgJwpAQCAtMTQ0OCw0NiArMTU0OSwyMTggQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvdmVyIGxldHRlciB3aXRoIGludmFsaWQgLS1jb3Zlci1mcm9tLWRlc2NyaXB0aW9uIGFuZCBjb25maWcnICcKKwl0ZXN0X2NvbmZpZyBicmFuY2gucmVidWlsZC0xLmRlc2NyaXB0aW9uICJjb25maWcgc3ViamVjdAorCitib2R5IiAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBmb3JtYXQtcGF0Y2ggLS1jb3Zlci1sZXR0ZXIgLS1jb3Zlci1mcm9tLWRlc2NyaXB0aW9uIGdhcmJhZ2UgbWFzdGVyICYmCisJdGVzdF9jb25maWcgZm9ybWF0LmNvdmVyRnJvbURlc2NyaXB0aW9uIGdhcmJhZ2UgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgZm9ybWF0LXBhdGNoIC0tY292ZXItbGV0dGVyIG1hc3RlcgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3ZlciBsZXR0ZXIgd2l0aCBmb3JtYXQuY292ZXJGcm9tRGVzY3JpcHRpb24gPSBkZWZhdWx0JyAnCisJdGVzdF9jb25maWcgYnJhbmNoLnJlYnVpbGQtMS5kZXNjcmlwdGlvbiAiY29uZmlnIHN1YmplY3QKKworYm9keSIgJiYKKwl0ZXN0X2NvbmZpZyBmb3JtYXQuY292ZXJGcm9tRGVzY3JpcHRpb24gZGVmYXVsdCAmJgorCWdpdCBjaGVja291dCByZWJ1aWxkLTEgJiYKKwlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IC0tY292ZXItbGV0dGVyIG1hc3RlciA+YWN0dWFsICYmCisJZ3JlcCAiXlN1YmplY3Q6IFxbUEFUQ0ggMC8yXF0gXCpcKlwqIFNVQkpFQ1QgSEVSRSBcKlwqXCokIiBhY3R1YWwgJiYKKwkhIGdyZXAgIl5cKlwqXCogQkxVUkIgSEVSRSBcKlwqXCokIiBhY3R1YWwgJiYKKwlncmVwICJeY29uZmlnIHN1YmplY3QkIiBhY3R1YWwgJiYKKwlncmVwICJeYm9keSQiIGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3ZlciBsZXR0ZXIgd2l0aCAtLWNvdmVyLWZyb20tZGVzY3JpcHRpb24gZGVmYXVsdCcgJworCXRlc3RfY29uZmlnIGJyYW5jaC5yZWJ1aWxkLTEuZGVzY3JpcHRpb24gImNvbmZpZyBzdWJqZWN0CisKK2JvZHkiICYmCisJZ2l0IGNoZWNrb3V0IHJlYnVpbGQtMSAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgLS1jb3Zlci1sZXR0ZXIgLS1jb3Zlci1mcm9tLWRlc2NyaXB0aW9uIGRlZmF1bHQgbWFzdGVyID5hY3R1YWwgJiYKKwlncmVwICJeU3ViamVjdDogXFtQQVRDSCAwLzJcXSBcKlwqXCogU1VCSkVDVCBIRVJFIFwqXCpcKiQiIGFjdHVhbCAmJgorCSEgZ3JlcCAiXlwqXCpcKiBCTFVSQiBIRVJFIFwqXCpcKiQiIGFjdHVhbCAmJgorCWdyZXAgIl5jb25maWcgc3ViamVjdCQiIGFjdHVhbCAmJgorCWdyZXAgIl5ib2R5JCIgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvdmVyIGxldHRlciB3aXRoIGZvcm1hdC5jb3ZlckZyb21EZXNjcmlwdGlvbiA9IG5vbmUnICcKKwl0ZXN0X2NvbmZpZyBicmFuY2gucmVidWlsZC0xLmRlc2NyaXB0aW9uICJjb25maWcgc3ViamVjdAorCitib2R5IiAmJgorCXRlc3RfY29uZmlnIGZvcm1hdC5jb3ZlckZyb21EZXNjcmlwdGlvbiBub25lICYmCisJZ2l0IGNoZWNrb3V0IHJlYnVpbGQtMSAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgLS1jb3Zlci1sZXR0ZXIgbWFzdGVyID5hY3R1YWwgJiYKKwlncmVwICJeU3ViamVjdDogXFtQQVRDSCAwLzJcXSBcKlwqXCogU1VCSkVDVCBIRVJFIFwqXCpcKiQiIGFjdHVhbCAmJgorCWdyZXAgIl5cKlwqXCogQkxVUkIgSEVSRSBcKlwqXCokIiBhY3R1YWwgJiYKKwkhIGdyZXAgIl5jb25maWcgc3ViamVjdCQiIGFjdHVhbCAmJgorCSEgZ3JlcCAiXmJvZHkkIiBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY292ZXIgbGV0dGVyIHdpdGggLS1jb3Zlci1mcm9tLWRlc2NyaXB0aW9uIG5vbmUnICcKKwl0ZXN0X2NvbmZpZyBicmFuY2gucmVidWlsZC0xLmRlc2NyaXB0aW9uICJjb25maWcgc3ViamVjdAorCitib2R5IiAmJgorCWdpdCBjaGVja291dCByZWJ1aWxkLTEgJiYKKwlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IC0tY292ZXItbGV0dGVyIC0tY292ZXItZnJvbS1kZXNjcmlwdGlvbiBub25lIG1hc3RlciA+YWN0dWFsICYmCisJZ3JlcCAiXlN1YmplY3Q6IFxbUEFUQ0ggMC8yXF0gXCpcKlwqIFNVQkpFQ1QgSEVSRSBcKlwqXCokIiBhY3R1YWwgJiYKKwlncmVwICJeXCpcKlwqIEJMVVJCIEhFUkUgXCpcKlwqJCIgYWN0dWFsICYmCisJISBncmVwICJeY29uZmlnIHN1YmplY3QkIiBhY3R1YWwgJiYKKwkhIGdyZXAgIl5ib2R5JCIgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvdmVyIGxldHRlciB3aXRoIGZvcm1hdC5jb3ZlckZyb21EZXNjcmlwdGlvbiA9IG1lc3NhZ2UnICcKKwl0ZXN0X2NvbmZpZyBicmFuY2gucmVidWlsZC0xLmRlc2NyaXB0aW9uICJjb25maWcgc3ViamVjdAorCitib2R5IiAmJgorCXRlc3RfY29uZmlnIGZvcm1hdC5jb3ZlckZyb21EZXNjcmlwdGlvbiBtZXNzYWdlICYmCisJZ2l0IGNoZWNrb3V0IHJlYnVpbGQtMSAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgLS1jb3Zlci1sZXR0ZXIgbWFzdGVyID5hY3R1YWwgJiYKKwlncmVwICJeU3ViamVjdDogXFtQQVRDSCAwLzJcXSBcKlwqXCogU1VCSkVDVCBIRVJFIFwqXCpcKiQiIGFjdHVhbCAmJgorCSEgZ3JlcCAiXlwqXCpcKiBCTFVSQiBIRVJFIFwqXCpcKiQiIGFjdHVhbCAmJgorCWdyZXAgIl5jb25maWcgc3ViamVjdCQiIGFjdHVhbCAmJgorCWdyZXAgIl5ib2R5JCIgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvdmVyIGxldHRlciB3aXRoIC0tY292ZXItZnJvbS1kZXNjcmlwdGlvbiBtZXNzYWdlJyAnCisJdGVzdF9jb25maWcgYnJhbmNoLnJlYnVpbGQtMS5kZXNjcmlwdGlvbiAiY29uZmlnIHN1YmplY3QKKworYm9keSIgJiYKKwlnaXQgY2hlY2tvdXQgcmVidWlsZC0xICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWNvdmVyLWxldHRlciAtLWNvdmVyLWZyb20tZGVzY3JpcHRpb24gbWVzc2FnZSBtYXN0ZXIgPmFjdHVhbCAmJgorCWdyZXAgIl5TdWJqZWN0OiBcW1BBVENIIDAvMlxdIFwqXCpcKiBTVUJKRUNUIEhFUkUgXCpcKlwqJCIgYWN0dWFsICYmCisJISBncmVwICJeXCpcKlwqIEJMVVJCIEhFUkUgXCpcKlwqJCIgYWN0dWFsICYmCisJZ3JlcCAiXmNvbmZpZyBzdWJqZWN0JCIgYWN0dWFsICYmCisJZ3JlcCAiXmJvZHkkIiBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY292ZXIgbGV0dGVyIHdpdGggZm9ybWF0LmNvdmVyRnJvbURlc2NyaXB0aW9uID0gc3ViamVjdCcgJworCXRlc3RfY29uZmlnIGJyYW5jaC5yZWJ1aWxkLTEuZGVzY3JpcHRpb24gImNvbmZpZyBzdWJqZWN0CisKK2JvZHkiICYmCisJdGVzdF9jb25maWcgZm9ybWF0LmNvdmVyRnJvbURlc2NyaXB0aW9uIHN1YmplY3QgJiYKKwlnaXQgY2hlY2tvdXQgcmVidWlsZC0xICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWNvdmVyLWxldHRlciBtYXN0ZXIgPmFjdHVhbCAmJgorCWdyZXAgIl5TdWJqZWN0OiBcW1BBVENIIDAvMlxdIGNvbmZpZyBzdWJqZWN0JCIgYWN0dWFsICYmCisJISBncmVwICJeXCpcKlwqIEJMVVJCIEhFUkUgXCpcKlwqJCIgYWN0dWFsICYmCisJISBncmVwICJeY29uZmlnIHN1YmplY3QkIiBhY3R1YWwgJiYKKwlncmVwICJeYm9keSQiIGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3ZlciBsZXR0ZXIgd2l0aCAtLWNvdmVyLWZyb20tZGVzY3JpcHRpb24gc3ViamVjdCcgJworCXRlc3RfY29uZmlnIGJyYW5jaC5yZWJ1aWxkLTEuZGVzY3JpcHRpb24gImNvbmZpZyBzdWJqZWN0CisKK2JvZHkiICYmCisJZ2l0IGNoZWNrb3V0IHJlYnVpbGQtMSAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgLS1jb3Zlci1sZXR0ZXIgLS1jb3Zlci1mcm9tLWRlc2NyaXB0aW9uIHN1YmplY3QgbWFzdGVyID5hY3R1YWwgJiYKKwlncmVwICJeU3ViamVjdDogXFtQQVRDSCAwLzJcXSBjb25maWcgc3ViamVjdCQiIGFjdHVhbCAmJgorCSEgZ3JlcCAiXlwqXCpcKiBCTFVSQiBIRVJFIFwqXCpcKiQiIGFjdHVhbCAmJgorCSEgZ3JlcCAiXmNvbmZpZyBzdWJqZWN0JCIgYWN0dWFsICYmCisJZ3JlcCAiXmJvZHkkIiBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY292ZXIgbGV0dGVyIHdpdGggZm9ybWF0LmNvdmVyRnJvbURlc2NyaXB0aW9uID0gYXV0byAoc2hvcnQgc3ViamVjdCBsaW5lKScgJworCXRlc3RfY29uZmlnIGJyYW5jaC5yZWJ1aWxkLTEuZGVzY3JpcHRpb24gImNvbmZpZyBzdWJqZWN0CisKK2JvZHkiICYmCisJdGVzdF9jb25maWcgZm9ybWF0LmNvdmVyRnJvbURlc2NyaXB0aW9uIGF1dG8gJiYKKwlnaXQgY2hlY2tvdXQgcmVidWlsZC0xICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWNvdmVyLWxldHRlciBtYXN0ZXIgPmFjdHVhbCAmJgorCWdyZXAgIl5TdWJqZWN0OiBcW1BBVENIIDAvMlxdIGNvbmZpZyBzdWJqZWN0JCIgYWN0dWFsICYmCisJISBncmVwICJeXCpcKlwqIEJMVVJCIEhFUkUgXCpcKlwqJCIgYWN0dWFsICYmCisJISBncmVwICJeY29uZmlnIHN1YmplY3QkIiBhY3R1YWwgJiYKKwlncmVwICJeYm9keSQiIGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3ZlciBsZXR0ZXIgd2l0aCAtLWNvdmVyLWZyb20tZGVzY3JpcHRpb24gYXV0byAoc2hvcnQgc3ViamVjdCBsaW5lKScgJworCXRlc3RfY29uZmlnIGJyYW5jaC5yZWJ1aWxkLTEuZGVzY3JpcHRpb24gImNvbmZpZyBzdWJqZWN0CisKK2JvZHkiICYmCisJZ2l0IGNoZWNrb3V0IHJlYnVpbGQtMSAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgLS1jb3Zlci1sZXR0ZXIgLS1jb3Zlci1mcm9tLWRlc2NyaXB0aW9uIGF1dG8gbWFzdGVyID5hY3R1YWwgJiYKKwlncmVwICJeU3ViamVjdDogXFtQQVRDSCAwLzJcXSBjb25maWcgc3ViamVjdCQiIGFjdHVhbCAmJgorCSEgZ3JlcCAiXlwqXCpcKiBCTFVSQiBIRVJFIFwqXCpcKiQiIGFjdHVhbCAmJgorCSEgZ3JlcCAiXmNvbmZpZyBzdWJqZWN0JCIgYWN0dWFsICYmCisJZ3JlcCAiXmJvZHkkIiBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY292ZXIgbGV0dGVyIHdpdGggZm9ybWF0LmNvdmVyRnJvbURlc2NyaXB0aW9uID0gYXV0byAobG9uZyBzdWJqZWN0IGxpbmUpJyAnCisJdGVzdF9jb25maWcgYnJhbmNoLnJlYnVpbGQtMS5kZXNjcmlwdGlvbiAidGhpcyBpcyBhIHJlYWxseSBsb25nIGZpcnN0IGxpbmUgYW5kIGl0IGlzIG92ZXIgMTAwIGNoYXJhY3RlcnMgbG9uZyB3aGljaCBpcyB0aGUgdGhyZXNob2xkIGZvciBsb25nIHN1YmplY3RzCisKK2JvZHkiICYmCisJdGVzdF9jb25maWcgZm9ybWF0LmNvdmVyRnJvbURlc2NyaXB0aW9uIGF1dG8gJiYKKwlnaXQgY2hlY2tvdXQgcmVidWlsZC0xICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWNvdmVyLWxldHRlciBtYXN0ZXIgPmFjdHVhbCAmJgorCWdyZXAgIl5TdWJqZWN0OiBcW1BBVENIIDAvMlxdIFwqXCpcKiBTVUJKRUNUIEhFUkUgXCpcKlwqJCIgYWN0dWFsICYmCisJISBncmVwICJeXCpcKlwqIEJMVVJCIEhFUkUgXCpcKlwqJCIgYWN0dWFsICYmCisJZ3JlcCAiXnRoaXMgaXMgYSByZWFsbHkgbG9uZyBmaXJzdCBsaW5lIGFuZCBpdCBpcyBvdmVyIDEwMCBjaGFyYWN0ZXJzIGxvbmcgd2hpY2ggaXMgdGhlIHRocmVzaG9sZCBmb3IgbG9uZyBzdWJqZWN0cyQiIGFjdHVhbCAmJgorCWdyZXAgIl5ib2R5JCIgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvdmVyIGxldHRlciB3aXRoIC0tY292ZXItZnJvbS1kZXNjcmlwdGlvbiBhdXRvIChsb25nIHN1YmplY3QgbGluZSknICcKKwl0ZXN0X2NvbmZpZyBicmFuY2gucmVidWlsZC0xLmRlc2NyaXB0aW9uICJ0aGlzIGlzIGEgcmVhbGx5IGxvbmcgZmlyc3QgbGluZSBhbmQgaXQgaXMgb3ZlciAxMDAgY2hhcmFjdGVycyBsb25nIHdoaWNoIGlzIHRoZSB0aHJlc2hvbGQgZm9yIGxvbmcgc3ViamVjdHMKKworYm9keSIgJiYKKwlnaXQgY2hlY2tvdXQgcmVidWlsZC0xICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWNvdmVyLWxldHRlciAtLWNvdmVyLWZyb20tZGVzY3JpcHRpb24gYXV0byBtYXN0ZXIgPmFjdHVhbCAmJgorCWdyZXAgIl5TdWJqZWN0OiBcW1BBVENIIDAvMlxdIFwqXCpcKiBTVUJKRUNUIEhFUkUgXCpcKlwqJCIgYWN0dWFsICYmCisJISBncmVwICJeXCpcKlwqIEJMVVJCIEhFUkUgXCpcKlwqJCIgYWN0dWFsICYmCisJZ3JlcCAiXnRoaXMgaXMgYSByZWFsbHkgbG9uZyBmaXJzdCBsaW5lIGFuZCBpdCBpcyBvdmVyIDEwMCBjaGFyYWN0ZXJzIGxvbmcgd2hpY2ggaXMgdGhlIHRocmVzaG9sZCBmb3IgbG9uZyBzdWJqZWN0cyQiIGFjdHVhbCAmJgorCWdyZXAgIl5ib2R5JCIgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvdmVyIGxldHRlciB3aXRoIGNvbW1hbmQtbGluZSAtLWNvdmVyLWZyb20tZGVzY3JpcHRpb24gb3ZlcnJpZGVzIGNvbmZpZycgJworCXRlc3RfY29uZmlnIGJyYW5jaC5yZWJ1aWxkLTEuZGVzY3JpcHRpb24gImNvbmZpZyBzdWJqZWN0CisKK2JvZHkiICYmCisJdGVzdF9jb25maWcgZm9ybWF0LmNvdmVyRnJvbURlc2NyaXB0aW9uIG5vbmUgJiYKKwlnaXQgY2hlY2tvdXQgcmVidWlsZC0xICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWNvdmVyLWxldHRlciAtLWNvdmVyLWZyb20tZGVzY3JpcHRpb24gc3ViamVjdCBtYXN0ZXIgPmFjdHVhbCAmJgorCWdyZXAgIl5TdWJqZWN0OiBcW1BBVENIIDAvMlxdIGNvbmZpZyBzdWJqZWN0JCIgYWN0dWFsICYmCisJISBncmVwICJeXCpcKlwqIEJMVVJCIEhFUkUgXCpcKlwqJCIgYWN0dWFsICYmCisJISBncmVwICJeY29uZmlnIHN1YmplY3QkIiBhY3R1YWwgJiYKKwlncmVwICJeYm9keSQiIGFjdHVhbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3ZlciBsZXR0ZXIgdXNpbmcgYnJhbmNoIGRlc2NyaXB0aW9uICgxKScgJwogCWdpdCBjaGVja291dCByZWJ1aWxkLTEgJiYKIAl0ZXN0X2NvbmZpZyBicmFuY2gucmVidWlsZC0xLmRlc2NyaXB0aW9uIGhlbGxvICYmCiAJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWNvdmVyLWxldHRlciBtYXN0ZXIgPmFjdHVhbCAmJgotCWdyZXAgaGVsbG8gYWN0dWFsID4vZGV2L251bGwKKwlncmVwIGhlbGxvIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3ZlciBsZXR0ZXIgdXNpbmcgYnJhbmNoIGRlc2NyaXB0aW9uICgyKScgJwogCWdpdCBjaGVja291dCByZWJ1aWxkLTEgJiYKIAl0ZXN0X2NvbmZpZyBicmFuY2gucmVidWlsZC0xLmRlc2NyaXB0aW9uIGhlbGxvICYmCiAJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWNvdmVyLWxldHRlciByZWJ1aWxkLTF+Mi4ucmVidWlsZC0xID5hY3R1YWwgJiYKLQlncmVwIGhlbGxvIGFjdHVhbCA+L2Rldi9udWxsCisJZ3JlcCBoZWxsbyBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY292ZXIgbGV0dGVyIHVzaW5nIGJyYW5jaCBkZXNjcmlwdGlvbiAoMyknICcKIAlnaXQgY2hlY2tvdXQgcmVidWlsZC0xICYmCiAJdGVzdF9jb25maWcgYnJhbmNoLnJlYnVpbGQtMS5kZXNjcmlwdGlvbiBoZWxsbyAmJgogCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgLS1jb3Zlci1sZXR0ZXIgXm1hc3RlciByZWJ1aWxkLTEgPmFjdHVhbCAmJgotCWdyZXAgaGVsbG8gYWN0dWFsID4vZGV2L251bGwKKwlncmVwIGhlbGxvIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3ZlciBsZXR0ZXIgdXNpbmcgYnJhbmNoIGRlc2NyaXB0aW9uICg0KScgJwogCWdpdCBjaGVja291dCByZWJ1aWxkLTEgJiYKIAl0ZXN0X2NvbmZpZyBicmFuY2gucmVidWlsZC0xLmRlc2NyaXB0aW9uIGhlbGxvICYmCiAJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWNvdmVyLWxldHRlciBtYXN0ZXIuLiA+YWN0dWFsICYmCi0JZ3JlcCBoZWxsbyBhY3R1YWwgPi9kZXYvbnVsbAorCWdyZXAgaGVsbG8gYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvdmVyIGxldHRlciB1c2luZyBicmFuY2ggZGVzY3JpcHRpb24gKDUpJyAnCiAJZ2l0IGNoZWNrb3V0IHJlYnVpbGQtMSAmJgogCXRlc3RfY29uZmlnIGJyYW5jaC5yZWJ1aWxkLTEuZGVzY3JpcHRpb24gaGVsbG8gJiYKIAlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IC0tY292ZXItbGV0dGVyIC0yIEhFQUQgPmFjdHVhbCAmJgotCWdyZXAgaGVsbG8gYWN0dWFsID4vZGV2L251bGwKKwlncmVwIGhlbGxvIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3ZlciBsZXR0ZXIgdXNpbmcgYnJhbmNoIGRlc2NyaXB0aW9uICg2KScgJwogCWdpdCBjaGVja291dCByZWJ1aWxkLTEgJiYKIAl0ZXN0X2NvbmZpZyBicmFuY2gucmVidWlsZC0xLmRlc2NyaXB0aW9uIGhlbGxvICYmCiAJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWNvdmVyLWxldHRlciAtMiA+YWN0dWFsICYmCi0JZ3JlcCBoZWxsbyBhY3R1YWwgPi9kZXYvbnVsbAorCWdyZXAgaGVsbG8gYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvdmVyIGxldHRlciB3aXRoIG5vdGhpbmcnICcKQEAgLTE1MzcsMTEgKzE4MTAsMzkgQEAKIAl0ZXN0X2NtcCBmcm9tIGZpbHRlcmVkCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCAtbyB3aXRoIG5vIGxlYWRpbmcgZGlyZWN0b3JpZXMnICcKKwlybSAtZnIgcGF0Y2hlcyAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLW8gcGF0Y2hlcyBtYXN0ZXIuLnNpZGUgJiYKKwljb3VudD0kKGdpdCByZXYtbGlzdCAtLWNvdW50IG1hc3Rlci4uc2lkZSkgJiYKKwlscyBwYXRjaGVzID5saXN0ICYmCisJdGVzdF9saW5lX2NvdW50ID0gJGNvdW50IGxpc3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIC1vIHdpdGggbGVhZGluZyBleGlzdGluZyBkaXJlY3RvcmllcycgJworCXJtIC1yZiBleGlzdGluZy1kaXIgJiYKKwlta2RpciBleGlzdGluZy1kaXIgJiYKKwlnaXQgZm9ybWF0LXBhdGNoIC1vIGV4aXN0aW5nLWRpci9wYXRjaGVzIG1hc3Rlci4uc2lkZSAmJgorCWNvdW50PSQoZ2l0IHJldi1saXN0IC0tY291bnQgbWFzdGVyLi5zaWRlKSAmJgorCWxzIGV4aXN0aW5nLWRpci9wYXRjaGVzID5saXN0ICYmCisJdGVzdF9saW5lX2NvdW50ID0gJGNvdW50IGxpc3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIC1vIHdpdGggbGVhZGluZyBub24tZXhpc3RpbmcgZGlyZWN0b3JpZXMnICcKKwlybSAtcmYgbm9uLWV4aXN0aW5nLWRpciAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLW8gbm9uLWV4aXN0aW5nLWRpci9wYXRjaGVzIG1hc3Rlci4uc2lkZSAmJgorCWNvdW50PSQoZ2l0IHJldi1saXN0IC0tY291bnQgbWFzdGVyLi5zaWRlKSAmJgorCXRlc3RfcGF0aF9pc19kaXIgbm9uLWV4aXN0aW5nLWRpciAmJgorCWxzIG5vbi1leGlzdGluZy1kaXIvcGF0Y2hlcyA+bGlzdCAmJgorCXRlc3RfbGluZV9jb3VudCA9ICRjb3VudCBsaXN0CisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCBmb3JtYXQub3V0cHV0RGlyZWN0b3J5IG9wdGlvbicgJwogCXRlc3RfY29uZmlnIGZvcm1hdC5vdXRwdXREaXJlY3RvcnkgcGF0Y2hlcyAmJgogCXJtIC1mciBwYXRjaGVzICYmCiAJZ2l0IGZvcm1hdC1wYXRjaCBtYXN0ZXIuLnNpZGUgJiYKLQl0ZXN0ICQoZ2l0IHJldi1saXN0IG1hc3Rlci4uc2lkZSB8IHdjIC1sKSAtZXEgJChscyBwYXRjaGVzIHwgd2MgLWwpCisJY291bnQ9JChnaXQgcmV2LWxpc3QgLS1jb3VudCBtYXN0ZXIuLnNpZGUpICYmCisJbHMgcGF0Y2hlcyA+bGlzdCAmJgorCXRlc3RfbGluZV9jb3VudCA9ICRjb3VudCBsaXN0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCAtbyBvdmVycmlkZXMgZm9ybWF0Lm91dHB1dERpcmVjdG9yeScgJwpAQCAtMTU1MywxNiArMTg1NCw0NCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JtYXQtcGF0Y2ggLS1iYXNlJyAnCi0JZ2l0IGNoZWNrb3V0IHNpZGUgJiYKLQlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IC0tYmFzZT1IRUFEfjMgLTEgfCB0YWlsIC1uIDcgPmFjdHVhbDEgJiYKLQlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IC0tYmFzZT1IRUFEfjMgSEVBRH4uLiB8IHRhaWwgLW4gNyA+YWN0dWFsMiAmJgotCWVjaG8gPmV4cGVjdGVkICYmCi0JZWNobyAiYmFzZS1jb21taXQ6ICQoZ2l0IHJldi1wYXJzZSBIRUFEfjMpIiA+PmV4cGVjdGVkICYmCi0JZWNobyAicHJlcmVxdWlzaXRlLXBhdGNoLWlkOiAkKGdpdCBzaG93IC0tcGF0Y2ggSEVBRH4yIHwgZ2l0IHBhdGNoLWlkIC0tc3RhYmxlIHwgYXdrICJ7cHJpbnQgXCQxfSIpIiA+PmV4cGVjdGVkICYmCi0JZWNobyAicHJlcmVxdWlzaXRlLXBhdGNoLWlkOiAkKGdpdCBzaG93IC0tcGF0Y2ggSEVBRH4xIHwgZ2l0IHBhdGNoLWlkIC0tc3RhYmxlIHwgYXdrICJ7cHJpbnQgXCQxfSIpIiA+PmV4cGVjdGVkICYmCi0Jc2lnbmF0dXJlID4+IGV4cGVjdGVkICYmCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsMSAmJgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbDIKKwlnaXQgY2hlY2tvdXQgcGF0Y2hpZCAmJgorCisJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWJhc2U9SEVBRH4zIC0xID5wYXRjaCAmJgorCXRhaWwgLW4gNyBwYXRjaCA+YWN0dWFsMSAmJgorCisJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWJhc2U9SEVBRH4zIEhFQUR+Li4gPnBhdGNoICYmCisJdGFpbCAtbiA3IHBhdGNoID5hY3R1YWwyICYmCisKKwllY2hvID5leHBlY3QgJiYKKwlnaXQgcmV2LXBhcnNlIEhFQUR+MyA+Y29tbWl0LWlkLWJhc2UgJiYKKwllY2hvICJiYXNlLWNvbW1pdDogJChjYXQgY29tbWl0LWlkLWJhc2UpIiA+PmV4cGVjdCAmJgorCisJZ2l0IHNob3cgLS1wYXRjaCBIRUFEfjIgPnBhdGNoICYmCisJZ2l0IHBhdGNoLWlkIC0tc3RhYmxlIDxwYXRjaCA+cGF0Y2guaWQucmF3ICYmCisJYXdrICJ7cHJpbnQgXCJwcmVyZXF1aXNpdGUtcGF0Y2gtaWQ6XCIsIFwkMX0iIDxwYXRjaC5pZC5yYXcgPj5leHBlY3QgJiYKKworCWdpdCBzaG93IC0tcGF0Y2ggSEVBRH4xID5wYXRjaCAmJgorCWdpdCBwYXRjaC1pZCAtLXN0YWJsZSA8cGF0Y2ggPnBhdGNoLmlkLnJhdyAmJgorCWF3ayAie3ByaW50IFwicHJlcmVxdWlzaXRlLXBhdGNoLWlkOlwiLCBcJDF9IiA8cGF0Y2guaWQucmF3ID4+ZXhwZWN0ICYmCisKKwlzaWduYXR1cmUgPj5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsMSAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwyICYmCisKKwllY2hvID5mYWlsICYmCisJZWNobyAiYmFzZS1jb21taXQ6ICQoY2F0IGNvbW1pdC1pZC1iYXNlKSIgPj5mYWlsICYmCisKKwlnaXQgc2hvdyAtLXBhdGNoIEhFQUR+MiA+cGF0Y2ggJiYKKwlnaXQgcGF0Y2gtaWQgLS11bnN0YWJsZSA8cGF0Y2ggPnBhdGNoLmlkLnJhdyAmJgorCWF3ayAie3ByaW50IFwicHJlcmVxdWlzaXRlLXBhdGNoLWlkOlwiLCBcJDF9IiA8cGF0Y2guaWQucmF3ID4+ZmFpbCAmJgorCisJZ2l0IHNob3cgLS1wYXRjaCBIRUFEfjEgPnBhdGNoICYmCisJZ2l0IHBhdGNoLWlkIC0tdW5zdGFibGUgPHBhdGNoID5wYXRjaC5pZC5yYXcgJiYKKwlhd2sgIntwcmludCBcInByZXJlcXVpc2l0ZS1wYXRjaC1pZDpcIiwgXCQxfSIgPHBhdGNoLmlkLnJhdyA+PmZhaWwgJiYKKworCXNpZ25hdHVyZSA+PmZhaWwgJiYKKwkhIHRlc3RfY21wIGZhaWwgYWN0dWFsMSAmJgorCSEgdGVzdF9jbXAgZmFpbCBhY3R1YWwyCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCAtLWJhc2UgZXJyb3JzIG91dCB3aGVuIGJhc2UgY29tbWl0IGlzIGluIHJldmlzaW9uIGxpc3QnICcKQEAgLTE1NzAsOCArMTg5OSw5IEBACiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZvcm1hdC1wYXRjaCAtLWJhc2U9SEVBRH4xIC0yICYmCiAJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWJhc2U9SEVBRH4yIC0yID5wYXRjaCAmJgogCWdyZXAgIl5iYXNlLWNvbW1pdDoiIHBhdGNoID5hY3R1YWwgJiYKLQllY2hvICJiYXNlLWNvbW1pdDogJChnaXQgcmV2LXBhcnNlIEhFQUR+MikiID5leHBlY3RlZCAmJgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWdpdCByZXYtcGFyc2UgSEVBRH4yID5jb21taXQtaWQtYmFzZSAmJgorCWVjaG8gImJhc2UtY29tbWl0OiAkKGNhdCBjb21taXQtaWQtYmFzZSkiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCAtLWJhc2UgZXJyb3JzIG91dCB3aGVuIGJhc2UgY29tbWl0IGlzIG5vdCBhbmNlc3RvciBvZiByZXZpc2lvbiBsaXN0JyAnCkBAIC0xNTk3LDggKzE5MjcsOCBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCBmb3JtYXQtcGF0Y2ggLS1iYXNlPSQoY2F0IGNvbW1pdC1pZC1aKSAtMyAmJgogCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgLS1iYXNlPSQoY2F0IGNvbW1pdC1pZC1iYXNlKSAtMyA+cGF0Y2ggJiYKIAlncmVwICJeYmFzZS1jb21taXQ6IiBwYXRjaCA+YWN0dWFsICYmCi0JZWNobyAiYmFzZS1jb21taXQ6ICQoY2F0IGNvbW1pdC1pZC1iYXNlKSIgPmV4cGVjdGVkICYmCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZWNobyAiYmFzZS1jb21taXQ6ICQoY2F0IGNvbW1pdC1pZC1iYXNlKSIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIC0tYmFzZT1hdXRvJyAnCkBAIC0xNjA5LDggKzE5MzksOSBAQAogCXRlc3RfY29tbWl0IE4yICYmCiAJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtLWJhc2U9YXV0byAtMiA+cGF0Y2ggJiYKIAlncmVwICJeYmFzZS1jb21taXQ6IiBwYXRjaCA+YWN0dWFsICYmCi0JZWNobyAiYmFzZS1jb21taXQ6ICQoZ2l0IHJldi1wYXJzZSB1cHN0cmVhbSkiID5leHBlY3RlZCAmJgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWdpdCByZXYtcGFyc2UgdXBzdHJlYW0gPmNvbW1pdC1pZC1iYXNlICYmCisJZWNobyAiYmFzZS1jb21taXQ6ICQoY2F0IGNvbW1pdC1pZC1iYXNlKSIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIGVycm9ycyBvdXQgd2hlbiBoaXN0b3J5IGludm9sdmVzIGNyaXNzLWNyb3NzJyAnCkBAIC0xNjQwLDIzICsxOTcxLDI5IEBACiAJdGVzdF9tdXN0X2ZhaWwgCWdpdCBmb3JtYXQtcGF0Y2ggLS1iYXNlPWF1dG8gLTEKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIGZvcm1hdC51c2VBdXRvQmFzZW9wdGlvbicgJwotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IGNvbmZpZyAtLXVuc2V0IGZvcm1hdC51c2VBdXRvQmFzZSIgJiYKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zvcm1hdC1wYXRjaCBmb3JtYXQudXNlQXV0b0Jhc2Ugb3B0aW9uJyAnCiAJZ2l0IGNoZWNrb3V0IGxvY2FsICYmCi0JZ2l0IGNvbmZpZyBmb3JtYXQudXNlQXV0b0Jhc2UgdHJ1ZSAmJgorCXRlc3RfY29uZmlnIGZvcm1hdC51c2VBdXRvQmFzZSB0cnVlICYmCiAJZ2l0IGZvcm1hdC1wYXRjaCAtLXN0ZG91dCAtMSA+cGF0Y2ggJiYKIAlncmVwICJeYmFzZS1jb21taXQ6IiBwYXRjaCA+YWN0dWFsICYmCi0JZWNobyAiYmFzZS1jb21taXQ6ICQoZ2l0IHJldi1wYXJzZSB1cHN0cmVhbSkiID5leHBlY3RlZCAmJgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWdpdCByZXYtcGFyc2UgdXBzdHJlYW0gPmNvbW1pdC1pZC1iYXNlICYmCisJZWNobyAiYmFzZS1jb21taXQ6ICQoY2F0IGNvbW1pdC1pZC1iYXNlKSIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIC0tYmFzZSBvdmVycmlkZXMgZm9ybWF0LnVzZUF1dG9CYXNlJyAnCi0JdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY29uZmlnIC0tdW5zZXQgZm9ybWF0LnVzZUF1dG9CYXNlIiAmJgotCWdpdCBjb25maWcgZm9ybWF0LnVzZUF1dG9CYXNlIHRydWUgJiYKKwl0ZXN0X2NvbmZpZyBmb3JtYXQudXNlQXV0b0Jhc2UgdHJ1ZSAmJgogCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgLS1iYXNlPUhFQUR+MSAtMSA+cGF0Y2ggJiYKIAlncmVwICJeYmFzZS1jb21taXQ6IiBwYXRjaCA+YWN0dWFsICYmCi0JZWNobyAiYmFzZS1jb21taXQ6ICQoZ2l0IHJldi1wYXJzZSBIRUFEfjEpIiA+ZXhwZWN0ZWQgJiYKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlnaXQgcmV2LXBhcnNlIEhFQUR+MSA+Y29tbWl0LWlkLWJhc2UgJiYKKwllY2hvICJiYXNlLWNvbW1pdDogJChjYXQgY29tbWl0LWlkLWJhc2UpIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JtYXQtcGF0Y2ggLS1uby1iYXNlIG92ZXJyaWRlcyBmb3JtYXQudXNlQXV0b0Jhc2UnICcKKwl0ZXN0X2NvbmZpZyBmb3JtYXQudXNlQXV0b0Jhc2UgdHJ1ZSAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgLS1uby1iYXNlIC0xID5wYXRjaCAmJgorCSEgZ3JlcCAiXmJhc2UtY29tbWl0OiIgcGF0Y2gKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZm9ybWF0LXBhdGNoIC0tYmFzZSB3aXRoIC0tYXR0YWNoJyAnCkBAIC0xNzMxLDcgKzIwNjgsNyBAQAogCWdpdCBmb3JtYXQtcGF0Y2ggLS1jb3Zlci1sZXR0ZXIgLS1pbnRlcmRpZmY9Ym9vcH4yIC0xIGJvb3AgJiYKIAl0ZXN0X2kxOG5ncmVwICJeSW50ZXJkaWZmOiQiIDAwMDAtY292ZXItbGV0dGVyLnBhdGNoICYmCiAJdGVzdF9pMThuZ3JlcCAhICJeSW50ZXJkaWZmOiQiIDAwMDEtZmxlZXAucGF0Y2ggJiYKLQlzZWQgIjEsL15AQCAvZDsgL14tLSAkL3EiIDwwMDAwLWNvdmVyLWxldHRlci5wYXRjaCA+YWN0dWFsICYmCisJc2VkICIxLC9eQEAgL2Q7IC9eLS0gJC9xIiAwMDAwLWNvdmVyLWxldHRlci5wYXRjaCA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCkBAIC0xNzQ3LDcgKzIwODQsNyBAQAogCUVPRgogCWdpdCBmb3JtYXQtcGF0Y2ggLS1pbnRlcmRpZmY9Ym9vcH4yIC0xIGJvb3AgJiYKIAl0ZXN0X2kxOG5ncmVwICJeSW50ZXJkaWZmOiQiIDAwMDEtZmxlZXAucGF0Y2ggJiYKLQlzZWQgIjEsL14gIEBAIC9kOyAvXiQvcSIgPDAwMDEtZmxlZXAucGF0Y2ggPmFjdHVhbCAmJgorCXNlZCAiMSwvXiAgQEAgL2Q7IC9eJC9xIiAwMDAxLWZsZWVwLnBhdGNoID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKZGlmZiAtLWdpdCBhL3QvdDQwMTUtZGlmZi13aGl0ZXNwYWNlLnNoIGIvdC90NDAxNS1kaWZmLXdoaXRlc3BhY2Uuc2gKaW5kZXggYTlmYjIyNi4uODhkMzAyNiAxMDA3NTUKLS0tIGEvdC90NDAxNS1kaWZmLXdoaXRlc3BhY2Uuc2gKKysrIGIvdC90NDAxNS1kaWZmLXdoaXRlc3BhY2Uuc2gKQEAgLTE2LDYgKzE2LDggQEAKIAl9IHdoaWxlICgwKTsKIAlFT0YKIAlnaXQgdXBkYXRlLWluZGV4IC0tYWRkIHggJiYKKwlvbGRfaGFzaF94PSQoZ2l0IGhhc2gtb2JqZWN0IHgpICYmCisJYmVmb3JlPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0ICIkb2xkX2hhc2hfeCIpICYmCiAKIAljYXQgPDwtXEVPRiA+eCAmJgogCWRvCkBAIC0yNCwxMCArMjYsMTIgQEAKIAl9CiAJd2hpbGUgKDApOwogCUVPRgorCW5ld19oYXNoX3g9JChnaXQgaGFzaC1vYmplY3QgeCkgJiYKKwlhZnRlcj0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCAiJG5ld19oYXNoX3giKSAmJgogCi0JY2F0IDw8LVxFT0YgPmV4cGVjdCAmJgorCWNhdCA8PC1FT0YgPmV4cGVjdCAmJgogCWRpZmYgLS1naXQgYS94IGIveAotCWluZGV4IGFkZjM5MzcuLjZlZGMxNzIgMTAwNjQ0CisJaW5kZXggJGJlZm9yZS4uJGFmdGVyIDEwMDY0NAogCS0tLSBhL3gKIAkrKysgYi94CiAJQEAgLTEsMyArMSw1IEBACkBAIC02MSw2ICs2NSw4IEBACiAJRU9GCiAKIAlnaXQgdXBkYXRlLWluZGV4IHggJiYKKwlvbGRfaGFzaF94PSQoZ2l0IGhhc2gtb2JqZWN0IHgpICYmCisJYmVmb3JlPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0ICIkb2xkX2hhc2hfeCIpICYmCiAKIAl0ciAiXyIgIiAiIDw8LVxFT0YgPnggJiYKIAlfCXdoaXRlc3BhY2UgYXQgYmVnaW5uaW5nCkBAIC03MCwxMCArNzYsMTIgQEAKIAl1bmNoYW5nZWQgbGluZQogCUNSIGF0IGVuZAogCUVPRgorCW5ld19oYXNoX3g9JChnaXQgaGFzaC1vYmplY3QgeCkgJiYKKwlhZnRlcj0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCAiJG5ld19oYXNoX3giKSAmJgogCi0JdHIgIlFfIiAiXDAxNSAiIDw8LVxFT0YgPmV4cGVjdCAmJgorCXRyICJRXyIgIlwwMTUgIiA8PC1FT0YgPmV4cGVjdCAmJgogCWRpZmYgLS1naXQgYS94IGIveAotCWluZGV4IGQ5OWFmMjMuLjIyZDlmNzMgMTAwNjQ0CisJaW5kZXggJGJlZm9yZS4uJGFmdGVyIDEwMDY0NAogCS0tLSBhL3gKIAkrKysgYi94CiAJQEAgLTEsNiArMSw2IEBACkBAIC0xMDgsOSArMTE2LDkgQEAKIAlnaXQgZGlmZiAtdyAtLWlnbm9yZS1jci1hdC1lb2wgPm91dCAmJgogCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXQgJiYKIAotCXRyICJRXyIgIlwwMTUgIiA8PC1cRU9GID5leHBlY3QgJiYKKwl0ciAiUV8iICJcMDE1ICIgPDwtRU9GID5leHBlY3QgJiYKIAlkaWZmIC0tZ2l0IGEveCBiL3gKLQlpbmRleCBkOTlhZjIzLi4yMmQ5ZjczIDEwMDY0NAorCWluZGV4ICRiZWZvcmUuLiRhZnRlciAxMDA2NDQKIAktLS0gYS94CiAJKysrIGIveAogCUBAIC0xLDYgKzEsNiBAQApAQCAtMTMyLDkgKzE0MCw5IEBACiAJZ2l0IGRpZmYgLWIgLS1pZ25vcmUtY3ItYXQtZW9sID5vdXQgJiYKIAl0ZXN0X2NtcCBleHBlY3Qgb3V0ICYmCiAKLQl0ciAiUV8iICJcMDE1ICIgPDwtXEVPRiA+ZXhwZWN0ICYmCisJdHIgIlFfIiAiXDAxNSAiIDw8LUVPRiA+ZXhwZWN0ICYmCiAJZGlmZiAtLWdpdCBhL3ggYi94Ci0JaW5kZXggZDk5YWYyMy4uMjJkOWY3MyAxMDA2NDQKKwlpbmRleCAkYmVmb3JlLi4kYWZ0ZXIgMTAwNjQ0CiAJLS0tIGEveAogCSsrKyBiL3gKIAlAQCAtMSw2ICsxLDYgQEAKQEAgLTE1NCw5ICsxNjIsOSBAQAogCWdpdCBkaWZmIC0taWdub3JlLXNwYWNlLWF0LWVvbCAtLWlnbm9yZS1jci1hdC1lb2wgPm91dCAmJgogCXRlc3RfY21wIGV4cGVjdCBvdXQgJiYKIAotCXRyICJRXyIgIlwwMTUgIiA8PC1cRU9GID5leHBlY3QgJiYKKwl0ciAiUV8iICJcMDE1ICIgPDwtRU9GID5leHBlY3QgJiYKIAlkaWZmIC0tZ2l0IGEveCBiL3gKLQlpbmRleF9kOTlhZjIzLi4yMmQ5ZjczIDEwMDY0NAorCWluZGV4XyRiZWZvcmUuLiRhZnRlciAxMDA2NDQKIAktLS0gYS94CiAJKysrIGIveAogCUBAIC0xLDYgKzEsNiBAQApAQCAtNTIyLDEzICs1MzAsMTUgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrIG1peGVkIHNwYWNlcyBhbmQgdGFicyBpbiBpbmRlbnQnICcKIAkjIFRoaXMgaXMgaW5kZW50ZWQgd2l0aCBTUCBIVCBTUC4KIAllY2hvICIgCSBmb28oKTsiID54ICYmCi0JZ2l0IGRpZmYgLS1jaGVjayB8IGdyZXAgInNwYWNlIGJlZm9yZSB0YWIgaW4gaW5kZW50IgorCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmIC0tY2hlY2sgPmNoZWNrICYmCisJZ3JlcCAic3BhY2UgYmVmb3JlIHRhYiBpbiBpbmRlbnQiIGNoZWNrCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrIG1peGVkIHRhYnMgYW5kIHNwYWNlcyBpbiBpbmRlbnQnICcKIAkjIFRoaXMgaXMgaW5kZW50ZWQgd2l0aCBIVCBTUCBIVC4KIAllY2hvICIJIAlmb28oKTsiID54ICYmCi0JZ2l0IGRpZmYgLS1jaGVjayB8IGdyZXAgInNwYWNlIGJlZm9yZSB0YWIgaW4gaW5kZW50IgorCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmIC0tY2hlY2sgPmNoZWNrICYmCisJZ3JlcCAic3BhY2UgYmVmb3JlIHRhYiBpbiBpbmRlbnQiIGNoZWNrCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrIHdpdGggbm8gd2hpdGVzcGFjZSBlcnJvcnMnICcKQEAgLTc0OSwyMCArNzU5LDIzIEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdsaW5lIG51bWJlcnMgaW4gLS1jaGVjayBvdXRwdXQgYXJlIGNvcnJlY3QnICcKIAllY2hvICIiID54ICYmCiAJZWNobyAiZm9vKCk7ICIgPj54ICYmCi0JZ2l0IGRpZmYgLS1jaGVjayB8IGdyZXAgIng6MjoiCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGRpZmYgLS1jaGVjayA+Y2hlY2sgJiYKKwlncmVwICJ4OjI6IiBjaGVjawogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja2RpZmYgZGV0ZWN0cyBuZXcgdHJhaWxpbmcgYmxhbmsgbGluZXMgKDEpJyAnCiAJZWNobyAiZm9vKCk7IiA+eCAmJgogCWVjaG8gIiIgPj54ICYmCi0JZ2l0IGRpZmYgLS1jaGVjayB8IGdyZXAgIm5ldyBibGFuayBsaW5lIgorCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmIC0tY2hlY2sgPmNoZWNrICYmCisJZ3JlcCAibmV3IGJsYW5rIGxpbmUiIGNoZWNrCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrZGlmZiBkZXRlY3RzIG5ldyB0cmFpbGluZyBibGFuayBsaW5lcyAoMiknICcKLQl7IGVjaG8gYTsgZWNobyBiOyBlY2hvOyBlY2hvOyB9ID54ICYmCisJdGVzdF93cml0ZV9saW5lcyBhIGIgIiIgIiIgPnggJiYKIAlnaXQgYWRkIHggJiYKLQl7IGVjaG8gYTsgZWNobzsgZWNobzsgZWNobzsgZWNobzsgfSA+eCAmJgotCWdpdCBkaWZmIC0tY2hlY2sgfCBncmVwICJuZXcgYmxhbmsgbGluZSIKKwl0ZXN0X3dyaXRlX2xpbmVzIGEgIiIgIiIgIiIgIiIgPnggJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgZGlmZiAtLWNoZWNrID5jaGVjayAmJgorCWdyZXAgIm5ldyBibGFuayBsaW5lIiBjaGVjawogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja2RpZmYgYWxsb3dzIG5ldyBibGFuayBsaW5lcycgJwpAQCAtNzg2LDIzICs3OTksMjcgQEAKIAl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCiAnCiAKLWNhdCA8PEVPRiA+ZXhwZWN0Ci1kaWZmIC0tZ2l0IGEveCBiL3oKLXNpbWlsYXJpdHkgaW5kZXggTlVNJQotcmVuYW1lIGZyb20geAotcmVuYW1lIHRvIHoKLWluZGV4IDM4MGMzMmEuLmE5N2I3ODUgMTAwNjQ0Ci1FT0YKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3doaXRlc3BhY2Utb25seSBjaGFuZ2VzIHJlcG9ydGVkIGFjcm9zcyByZW5hbWVzJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWZvciBpIGluIDEgMiAzIDQgNSA2IDcgOCA5OyBkbyBlY2hvICIkaSRpJGkkaSRpJGkiOyBkb25lID54ICYmCiAJZ2l0IGFkZCB4ICYmCisJaGFzaF94PSQoZ2l0IGhhc2gtb2JqZWN0IHgpICYmCisJYmVmb3JlPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0ICIkaGFzaF94IikgJiYKIAlnaXQgY29tbWl0IC1tICJiYXNlIiAmJgogCXNlZCAtZSAiNXMvXi8gLyIgeCA+eiAmJgogCWdpdCBybSB4ICYmCiAJZ2l0IGFkZCB6ICYmCi0JZ2l0IGRpZmYgLXcgLU0gLS1jYWNoZWQgfAotCXNlZCAtZSAiL15zaW1pbGFyaXR5IGluZGV4IC9zL1swLTldWzAtOV0qL05VTS8iID5hY3R1YWwgJiYKKwloYXNoX3o9JChnaXQgaGFzaC1vYmplY3QgeikgJiYKKwlhZnRlcj0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCAiJGhhc2hfeiIpICYmCisJZ2l0IGRpZmYgLXcgLU0gLS1jYWNoZWQgPmFjdHVhbC5yYXcgJiYKKwlzZWQgLWUgIi9ec2ltaWxhcml0eSBpbmRleCAvcy9bMC05XVswLTldKi9OVU0vIiBhY3R1YWwucmF3ID5hY3R1YWwgJiYKKwljYXQgPDwtRU9GID5leHBlY3QgJiYKKwlkaWZmIC0tZ2l0IGEveCBiL3oKKwlzaW1pbGFyaXR5IGluZGV4IE5VTSUKKwlyZW5hbWUgZnJvbSB4CisJcmVuYW1lIHRvIHoKKwlpbmRleCAkYmVmb3JlLi4kYWZ0ZXIgMTAwNjQ0CisJRU9GCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCkBAIC04MzQsNyArODUxLDggQEAKIAlnaXQgY29uZmlnIGNvcmUuYXV0b2NybGYgdHJ1ZSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBtYXN0ZXIgJiYKIAotCWdpdCBkaWZmIHwgc2VkIC1lICIxLC9eQEBAL2QiID5hY3R1YWwgJiYKKwlnaXQgZGlmZiA+YWN0dWFsLnJhdyAmJgorCXNlZCAtZSAiMSwvXkBAQC9kIiBhY3R1YWwucmF3ID5hY3R1YWwgJiYKIAkhIGdyZXAgIl4tIiBhY3R1YWwKIAogJwpAQCAtODU4LDEzICs4NzYsMTggQEAKIAlnaXQgY29uZmlnIGNvcmUud2hpdGVzcGFjZSBibGFuay1hdC1lb2wgJiYKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZWNobyAidGVzdCIgPnggJiYKKwlvbGRfaGFzaF94PSQoZ2l0IGhhc2gtb2JqZWN0IHgpICYmCisJYmVmb3JlPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0ICIkb2xkX2hhc2hfeCIpICYmCiAJZ2l0IGNvbW1pdCAtbSAiaW5pdGlhbCIgeCAmJgogCWVjaG8gIntOVE59IiB8IHRyICJOVCIgIlxuXHQiID4+eCAmJgotCWdpdCBkaWZmIC0tY29sb3IgfCB0ZXN0X2RlY29kZV9jb2xvciA+Y3VycmVudCAmJgorCW5ld19oYXNoX3g9JChnaXQgaGFzaC1vYmplY3QgeCkgJiYKKwlhZnRlcj0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCAiJG5ld19oYXNoX3giKSAmJgorCWdpdCBkaWZmIC0tY29sb3IgPmN1cnJlbnQucmF3ICYmCisJdGVzdF9kZWNvZGVfY29sb3IgPGN1cnJlbnQucmF3ID5jdXJyZW50ICYmCiAKLQljYXQgPmV4cGVjdGVkIDw8LVxFT0YgJiYKKwljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgogCTxCT0xEPmRpZmYgLS1naXQgYS94IGIveDxSRVNFVD4KLQk8Qk9MRD5pbmRleCA5ZGFlYWZiLi4yODc0YjkxIDEwMDY0NDxSRVNFVD4KKwk8Qk9MRD5pbmRleCAkYmVmb3JlLi4kYWZ0ZXIgMTAwNjQ0PFJFU0VUPgogCTxCT0xEPi0tLSBhL3g8UkVTRVQ+CiAJPEJPTEQ+KysrIGIveDxSRVNFVD4KIAk8Q1lBTj5AQCAtMSArMSw0IEBAPFJFU0VUPgpAQCAtODgzLDE5ICs5MDYsMjMgQEAKIAkJZWNobyAiMC4gYmxhbmstYXQtZW9sICIgJiYKIAkJZWNobyAiMS4gYmxhbmstYXQtZW9sICIKIAl9ID54ICYmCisJb2xkX2hhc2hfeD0kKGdpdCBoYXNoLW9iamVjdCB4KSAmJgorCWJlZm9yZT0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCAiJG9sZF9oYXNoX3giKSAmJgogCWdpdCBjb21taXQgLWEgLS1hbGxvdy1lbXB0eSAtbSBwcmVpbWFnZSAmJgogCXsKIAkJZWNobyAiMC4gYmxhbmstYXQtZW9sICIgJiYKIAkJZWNobyAiMS4gc3RpbGwtYmxhbmstYXQtZW9sICIgJiYKIAkJZWNobyAiMi4gYW5kIGEgbmV3IGxpbmUgIgogCX0gPnggJiYKKwluZXdfaGFzaF94PSQoZ2l0IGhhc2gtb2JqZWN0IHgpICYmCisJYWZ0ZXI9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgIiRuZXdfaGFzaF94IikgJiYKIAotCWdpdCBkaWZmIC0tY29sb3IgfAotCXRlc3RfZGVjb2RlX2NvbG9yID5jdXJyZW50ICYmCisJZ2l0IGRpZmYgLS1jb2xvciA+Y3VycmVudC5yYXcgJiYKKwl0ZXN0X2RlY29kZV9jb2xvciA8Y3VycmVudC5yYXcgPmN1cnJlbnQgJiYKIAotCWNhdCA+ZXhwZWN0ZWQgPDwtXEVPRiAmJgorCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCiAJPEJPTEQ+ZGlmZiAtLWdpdCBhL3ggYi94PFJFU0VUPgotCTxCT0xEPmluZGV4IGQwMjMzYTIuLjcwMDg4NmUgMTAwNjQ0PFJFU0VUPgorCTxCT0xEPmluZGV4ICRiZWZvcmUuLiRhZnRlciAxMDA2NDQ8UkVTRVQ+CiAJPEJPTEQ+LS0tIGEveDxSRVNFVD4KIAk8Qk9MRD4rKysgYi94PFJFU0VUPgogCTxDWUFOPkBAIC0xLDIgKzEsMyBAQDxSRVNFVD4KQEAgLTkxNSwxNiArOTQyLDIwIEBACiAJCWVjaG8gIjAuIGJsYW5rLWF0LWVvbCAiICYmCiAJCWVjaG8gIjEuIGJsYW5rLWF0LWVvbCAiCiAJfSA+eCAmJgorCW9sZF9oYXNoX3g9JChnaXQgaGFzaC1vYmplY3QgeCkgJiYKKwliZWZvcmU9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgIiRvbGRfaGFzaF94IikgJiYKIAlnaXQgY29tbWl0IC1hIC0tYWxsb3ctZW1wdHkgLW0gcHJlaW1hZ2UgJiYKIAl7CiAJCWVjaG8gIjAuIGJsYW5rLWF0LWVvbCAiICYmCiAJCWVjaG8gIjEuIHN0aWxsLWJsYW5rLWF0LWVvbCAiICYmCiAJCWVjaG8gIjIuIGFuZCBhIG5ldyBsaW5lICIKIAl9ID54ICYmCisJbmV3X2hhc2hfeD0kKGdpdCBoYXNoLW9iamVjdCB4KSAmJgorCWFmdGVyPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0ICIkbmV3X2hhc2hfeCIpICYmCiAKLQljYXQgPmV4cGVjdC5kZWZhdWx0LW9sZCA8PC1cRU9GICYmCisJY2F0ID5leHBlY3QuZGVmYXVsdC1vbGQgPDwtRU9GICYmCiAJPEJPTEQ+ZGlmZiAtLWdpdCBhL3ggYi94PFJFU0VUPgotCTxCT0xEPmluZGV4IGQwMjMzYTIuLjcwMDg4NmUgMTAwNjQ0PFJFU0VUPgorCTxCT0xEPmluZGV4ICRiZWZvcmUuLiRhZnRlciAxMDA2NDQ8UkVTRVQ+CiAJPEJPTEQ+LS0tIGEveDxSRVNFVD4KIAk8Qk9MRD4rKysgYi94PFJFU0VUPgogCTxDWUFOPkBAIC0xLDIgKzEsMyBAQDxSRVNFVD4KQEAgLTkzNCw5ICs5NjUsOSBAQAogCTxHUkVFTj4rPFJFU0VUPjxHUkVFTj4yLiBhbmQgYSBuZXcgbGluZTxSRVNFVD48QkxVRT4gPFJFU0VUPgogCUVPRgogCi0JY2F0ID5leHBlY3QuYWxsIDw8LVxFT0YgJiYKKwljYXQgPmV4cGVjdC5hbGwgPDwtRU9GICYmCiAJPEJPTEQ+ZGlmZiAtLWdpdCBhL3ggYi94PFJFU0VUPgotCTxCT0xEPmluZGV4IGQwMjMzYTIuLjcwMDg4NmUgMTAwNjQ0PFJFU0VUPgorCTxCT0xEPmluZGV4ICRiZWZvcmUuLiRhZnRlciAxMDA2NDQ8UkVTRVQ+CiAJPEJPTEQ+LS0tIGEveDxSRVNFVD4KIAk8Qk9MRD4rKysgYi94PFJFU0VUPgogCTxDWUFOPkBAIC0xLDIgKzEsMyBAQDxSRVNFVD4KQEAgLTk0Niw5ICs5NzcsOSBAQAogCTxHUkVFTj4rPFJFU0VUPjxHUkVFTj4yLiBhbmQgYSBuZXcgbGluZTxSRVNFVD48QkxVRT4gPFJFU0VUPgogCUVPRgogCi0JY2F0ID5leHBlY3Qubm9uZSA8PC1cRU9GCisJY2F0ID5leHBlY3Qubm9uZSA8PC1FT0YKIAk8Qk9MRD5kaWZmIC0tZ2l0IGEveCBiL3g8UkVTRVQ+Ci0JPEJPTEQ+aW5kZXggZDAyMzNhMi4uNzAwODg2ZSAxMDA2NDQ8UkVTRVQ+CisJPEJPTEQ+aW5kZXggJGJlZm9yZS4uJGFmdGVyIDEwMDY0NDxSRVNFVD4KIAk8Qk9MRD4tLS0gYS94PFJFU0VUPgogCTxCT0xEPisrKyBiL3g8UkVTRVQ+CiAJPENZQU4+QEAgLTEsMiArMSwzIEBAPFJFU0VUPgpAQCAtOTYyLDMyICs5OTMsMzIgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdCAtLXdzLWVycm9yLWhpZ2hsaWdodCBvcHRpb24nICcKIAotCWdpdCBkaWZmIC0tY29sb3IgLS13cy1lcnJvci1oaWdobGlnaHQ9ZGVmYXVsdCxvbGQgfAotCXRlc3RfZGVjb2RlX2NvbG9yID5jdXJyZW50ICYmCisJZ2l0IGRpZmYgLS1jb2xvciAtLXdzLWVycm9yLWhpZ2hsaWdodD1kZWZhdWx0LG9sZCA+Y3VycmVudC5yYXcgJiYKKwl0ZXN0X2RlY29kZV9jb2xvciA8Y3VycmVudC5yYXcgPmN1cnJlbnQgJiYKIAl0ZXN0X2NtcCBleHBlY3QuZGVmYXVsdC1vbGQgY3VycmVudCAmJgogCi0JZ2l0IGRpZmYgLS1jb2xvciAtLXdzLWVycm9yLWhpZ2hsaWdodD1hbGwgfAotCXRlc3RfZGVjb2RlX2NvbG9yID5jdXJyZW50ICYmCisJZ2l0IGRpZmYgLS1jb2xvciAtLXdzLWVycm9yLWhpZ2hsaWdodD1hbGwgPmN1cnJlbnQucmF3ICYmCisJdGVzdF9kZWNvZGVfY29sb3IgPGN1cnJlbnQucmF3ID5jdXJyZW50ICYmCiAJdGVzdF9jbXAgZXhwZWN0LmFsbCBjdXJyZW50ICYmCiAKLQlnaXQgZGlmZiAtLWNvbG9yIC0td3MtZXJyb3ItaGlnaGxpZ2h0PW5vbmUgfAotCXRlc3RfZGVjb2RlX2NvbG9yID5jdXJyZW50ICYmCisJZ2l0IGRpZmYgLS1jb2xvciAtLXdzLWVycm9yLWhpZ2hsaWdodD1ub25lID5jdXJyZW50LnJhdyAmJgorCXRlc3RfZGVjb2RlX2NvbG9yIDxjdXJyZW50LnJhdyA+Y3VycmVudCAmJgogCXRlc3RfY21wIGV4cGVjdC5ub25lIGN1cnJlbnQKIAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd0ZXN0IGRpZmYud3NFcnJvckhpZ2hsaWdodCBjb25maWcnICcKIAotCWdpdCAtYyBkaWZmLndzRXJyb3JIaWdobGlnaHQ9ZGVmYXVsdCxvbGQgZGlmZiAtLWNvbG9yIHwKLQl0ZXN0X2RlY29kZV9jb2xvciA+Y3VycmVudCAmJgorCWdpdCAtYyBkaWZmLndzRXJyb3JIaWdobGlnaHQ9ZGVmYXVsdCxvbGQgZGlmZiAtLWNvbG9yID5jdXJyZW50LnJhdyAmJgorCXRlc3RfZGVjb2RlX2NvbG9yIDxjdXJyZW50LnJhdyA+Y3VycmVudCAmJgogCXRlc3RfY21wIGV4cGVjdC5kZWZhdWx0LW9sZCBjdXJyZW50ICYmCiAKLQlnaXQgLWMgZGlmZi53c0Vycm9ySGlnaGxpZ2h0PWFsbCBkaWZmIC0tY29sb3IgfAotCXRlc3RfZGVjb2RlX2NvbG9yID5jdXJyZW50ICYmCisJZ2l0IC1jIGRpZmYud3NFcnJvckhpZ2hsaWdodD1hbGwgZGlmZiAtLWNvbG9yID5jdXJyZW50LnJhdyAmJgorCXRlc3RfZGVjb2RlX2NvbG9yIDxjdXJyZW50LnJhdyA+Y3VycmVudCAmJgogCXRlc3RfY21wIGV4cGVjdC5hbGwgY3VycmVudCAmJgogCi0JZ2l0IC1jIGRpZmYud3NFcnJvckhpZ2hsaWdodD1ub25lIGRpZmYgLS1jb2xvciB8Ci0JdGVzdF9kZWNvZGVfY29sb3IgPmN1cnJlbnQgJiYKKwlnaXQgLWMgZGlmZi53c0Vycm9ySGlnaGxpZ2h0PW5vbmUgZGlmZiAtLWNvbG9yID5jdXJyZW50LnJhdyAmJgorCXRlc3RfZGVjb2RlX2NvbG9yIDxjdXJyZW50LnJhdyA+Y3VycmVudCAmJgogCXRlc3RfY21wIGV4cGVjdC5ub25lIGN1cnJlbnQKIAogJwpAQCAtOTk1LDE4ICsxMDI2LDE4IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdvcHRpb24gb3ZlcnJpZGVzIGRpZmYud3NFcnJvckhpZ2hsaWdodCcgJwogCiAJZ2l0IC1jIGRpZmYud3NFcnJvckhpZ2hsaWdodD1ub25lIFwKLQkJZGlmZiAtLWNvbG9yIC0td3MtZXJyb3ItaGlnaGxpZ2h0PWRlZmF1bHQsb2xkIHwKLQl0ZXN0X2RlY29kZV9jb2xvciA+Y3VycmVudCAmJgorCQlkaWZmIC0tY29sb3IgLS13cy1lcnJvci1oaWdobGlnaHQ9ZGVmYXVsdCxvbGQgPmN1cnJlbnQucmF3ICYmCisJdGVzdF9kZWNvZGVfY29sb3IgPGN1cnJlbnQucmF3ID5jdXJyZW50ICYmCiAJdGVzdF9jbXAgZXhwZWN0LmRlZmF1bHQtb2xkIGN1cnJlbnQgJiYKIAogCWdpdCAtYyBkaWZmLndzRXJyb3JIaWdobGlnaHQ9ZGVmYXVsdCBcCi0JCWRpZmYgLS1jb2xvciAtLXdzLWVycm9yLWhpZ2hsaWdodD1hbGwgfAotCXRlc3RfZGVjb2RlX2NvbG9yID5jdXJyZW50ICYmCisJCWRpZmYgLS1jb2xvciAtLXdzLWVycm9yLWhpZ2hsaWdodD1hbGwgPmN1cnJlbnQucmF3ICYmCisJdGVzdF9kZWNvZGVfY29sb3IgPGN1cnJlbnQucmF3ID5jdXJyZW50ICYmCiAJdGVzdF9jbXAgZXhwZWN0LmFsbCBjdXJyZW50ICYmCiAKIAlnaXQgLWMgZGlmZi53c0Vycm9ySGlnaGxpZ2h0PWFsbCBcCi0JCWRpZmYgLS1jb2xvciAtLXdzLWVycm9yLWhpZ2hsaWdodD1ub25lIHwKLQl0ZXN0X2RlY29kZV9jb2xvciA+Y3VycmVudCAmJgorCQlkaWZmIC0tY29sb3IgLS13cy1lcnJvci1oaWdobGlnaHQ9bm9uZSA+Y3VycmVudC5yYXcgJiYKKwl0ZXN0X2RlY29kZV9jb2xvciA8Y3VycmVudC5yYXcgPmN1cnJlbnQgJiYKIAl0ZXN0X2NtcCBleHBlY3Qubm9uZSBjdXJyZW50CiAKICcKQEAgLTEwMjIsMTQgKzEwNTMsMTYgQEAKIAlFT0YKIAlnaXQgYWRkIHRlc3QuYyAmJgogCWdpdCBjb21taXQgLW0gImFkZCBtYWluIGZ1bmN0aW9uIiAmJgorCWZpbGU9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRDp0ZXN0LmMpICYmCiAJZ2l0IG12IHRlc3QuYyBtYWluLmMgJiYKIAl0ZXN0X2NvbmZpZyBjb2xvci5kaWZmLm9sZE1vdmVkICJub3JtYWwgcmVkIiAmJgogCXRlc3RfY29uZmlnIGNvbG9yLmRpZmYubmV3TW92ZWQgIm5vcm1hbCBncmVlbiIgJiYKLQlnaXQgZGlmZiBIRUFEIC0tY29sb3ItbW92ZWQ9emVicmEgLS1jb2xvciAtLW5vLXJlbmFtZXMgfCB0ZXN0X2RlY29kZV9jb2xvciA+YWN0dWFsICYmCi0JY2F0ID5leHBlY3RlZCA8PC1cRU9GICYmCisJZ2l0IGRpZmYgSEVBRCAtLWNvbG9yLW1vdmVkPXplYnJhIC0tY29sb3IgLS1uby1yZW5hbWVzID5hY3R1YWwucmF3ICYmCisJdGVzdF9kZWNvZGVfY29sb3IgPGFjdHVhbC5yYXcgPmFjdHVhbCAmJgorCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCiAJPEJPTEQ+ZGlmZiAtLWdpdCBhL21haW4uYyBiL21haW4uYzxSRVNFVD4KIAk8Qk9MRD5uZXcgZmlsZSBtb2RlIDEwMDY0NDxSRVNFVD4KLQk8Qk9MRD5pbmRleCAwMDAwMDAwLi5hOTg2YzU3PFJFU0VUPgorCTxCT0xEPmluZGV4IDAwMDAwMDAuLiRmaWxlPFJFU0VUPgogCTxCT0xEPi0tLSAvZGV2L251bGw8UkVTRVQ+CiAJPEJPTEQ+KysrIGIvbWFpbi5jPFJFU0VUPgogCTxDWUFOPkBAIC0wLDAgKzEsNSBAQDxSRVNFVD4KQEAgLTEwNDAsNyArMTA3Myw3IEBACiAJPEJHUkVFTj4rPFJFU0VUPjxCR1JFRU4+fTxSRVNFVD4KIAk8Qk9MRD5kaWZmIC0tZ2l0IGEvdGVzdC5jIGIvdGVzdC5jPFJFU0VUPgogCTxCT0xEPmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NDxSRVNFVD4KLQk8Qk9MRD5pbmRleCBhOTg2YzU3Li4wMDAwMDAwPFJFU0VUPgorCTxCT0xEPmluZGV4ICRmaWxlLi4wMDAwMDAwPFJFU0VUPgogCTxCT0xEPi0tLSBhL3Rlc3QuYzxSRVNFVD4KIAk8Qk9MRD4rKysgL2Rldi9udWxsPFJFU0VUPgogCTxDWUFOPkBAIC0xLDUgKzAsMCBAQDxSRVNFVD4KQEAgLTEwOTQsNiArMTEyNyw4IEBACiAJRU9GCiAJZ2l0IGFkZCBtYWluLmMgdGVzdC5jICYmCiAJZ2l0IGNvbW1pdCAtbSAiYWRkIG1haW4gYW5kIHRlc3QgZmlsZSIgJiYKKwliZWZvcmVfbWFpbj0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEOm1haW4uYykgJiYKKwliZWZvcmVfdGVzdD0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEOnRlc3QuYykgJiYKIAljYXQgPDwtXEVPRiA+bWFpbi5jICYmCiAJCSNpbmNsdWRlPHN0ZGlvLmg+CiAJCWludCBzdHVmZigpCkBAIC0xMTI2LDEwICsxMTYxLDE1IEBACiAJCQliYXIoKTsKIAkJfQogCUVPRgotCWdpdCBkaWZmIEhFQUQgLS1uby1yZW5hbWVzIC0tY29sb3ItbW92ZWQ9emVicmEgLS1jb2xvciB8IHRlc3RfZGVjb2RlX2NvbG9yID5hY3R1YWwgJiYKLQljYXQgPDwtXEVPRiA+ZXhwZWN0ZWQgJiYKKwloYXNoX21haW49JChnaXQgaGFzaC1vYmplY3QgbWFpbi5jKSAmJgorCWFmdGVyX21haW49JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgIiRoYXNoX21haW4iKSAmJgorCWhhc2hfdGVzdD0kKGdpdCBoYXNoLW9iamVjdCB0ZXN0LmMpICYmCisJYWZ0ZXJfdGVzdD0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCAiJGhhc2hfdGVzdCIpICYmCisJZ2l0IGRpZmYgSEVBRCAtLW5vLXJlbmFtZXMgLS1jb2xvci1tb3ZlZD16ZWJyYSAtLWNvbG9yID5hY3R1YWwucmF3ICYmCisJdGVzdF9kZWNvZGVfY29sb3IgPGFjdHVhbC5yYXcgPmFjdHVhbCAmJgorCWNhdCA8PC1FT0YgPmV4cGVjdGVkICYmCiAJPEJPTEQ+ZGlmZiAtLWdpdCBhL21haW4uYyBiL21haW4uYzxSRVNFVD4KLQk8Qk9MRD5pbmRleCAyN2E2MTljLi43Y2Y5MzM2IDEwMDY0NDxSRVNFVD4KKwk8Qk9MRD5pbmRleCAkYmVmb3JlX21haW4uLiRhZnRlcl9tYWluIDEwMDY0NDxSRVNFVD4KIAk8Qk9MRD4tLS0gYS9tYWluLmM8UkVTRVQ+CiAJPEJPTEQ+KysrIGIvbWFpbi5jPFJFU0VUPgogCTxDWUFOPkBAIC01LDEzICs1LDYgQEA8UkVTRVQ+IDxSRVNFVD5wcmludGYoIkhlbGxvICIpOzxSRVNFVD4KQEAgLTExNDcsNyArMTE4Nyw3IEBACiAJIHs8UkVTRVQ+CiAJIGZvbygpOzxSRVNFVD4KIAk8Qk9MRD5kaWZmIC0tZ2l0IGEvdGVzdC5jIGIvdGVzdC5jPFJFU0VUPgotCTxCT0xEPmluZGV4IDFkYzFkODUuLjJiZWRlYzkgMTAwNjQ0PFJFU0VUPgorCTxCT0xEPmluZGV4ICRiZWZvcmVfdGVzdC4uJGFmdGVyX3Rlc3QgMTAwNjQ0PFJFU0VUPgogCTxCT0xEPi0tLSBhL3Rlc3QuYzxSRVNFVD4KIAk8Qk9MRD4rKysgYi90ZXN0LmM8UkVTRVQ+CiAJPENZQU4+QEAgLTQsNiArNCwxMyBAQDxSRVNFVD4gPFJFU0VUPmludCBiYXIoKTxSRVNFVD4KQEAgLTExNzUsMTAgKzEyMTUsMTEgQEAKIAl0ZXN0X2NvbmZpZyBjb2xvci5kaWZmLm9sZE1vdmVkQWx0ZXJuYXRpdmUgImJsdWUiICYmCiAJdGVzdF9jb25maWcgY29sb3IuZGlmZi5uZXdNb3ZlZEFsdGVybmF0aXZlICJ5ZWxsb3ciICYmCiAJIyBuZWVkcyBwcmV2aW91cyB0ZXN0IGFzIHNldHVwCi0JZ2l0IGRpZmYgSEVBRCAtLW5vLXJlbmFtZXMgLS1jb2xvci1tb3ZlZD1wbGFpbiAtLWNvbG9yIHwgdGVzdF9kZWNvZGVfY29sb3IgPmFjdHVhbCAmJgotCWNhdCA8PC1cRU9GID5leHBlY3RlZCAmJgorCWdpdCBkaWZmIEhFQUQgLS1uby1yZW5hbWVzIC0tY29sb3ItbW92ZWQ9cGxhaW4gLS1jb2xvciA+YWN0dWFsLnJhdyAmJgorCXRlc3RfZGVjb2RlX2NvbG9yIDxhY3R1YWwucmF3ID5hY3R1YWwgJiYKKwljYXQgPDwtRU9GID5leHBlY3RlZCAmJgogCTxCT0xEPmRpZmYgLS1naXQgYS9tYWluLmMgYi9tYWluLmM8UkVTRVQ+Ci0JPEJPTEQ+aW5kZXggMjdhNjE5Yy4uN2NmOTMzNiAxMDA2NDQ8UkVTRVQ+CisJPEJPTEQ+aW5kZXggJGJlZm9yZV9tYWluLi4kYWZ0ZXJfbWFpbiAxMDA2NDQ8UkVTRVQ+CiAJPEJPTEQ+LS0tIGEvbWFpbi5jPFJFU0VUPgogCTxCT0xEPisrKyBiL21haW4uYzxSRVNFVD4KIAk8Q1lBTj5AQCAtNSwxMyArNSw2IEBAPFJFU0VUPiA8UkVTRVQ+cHJpbnRmKCJIZWxsbyAiKTs8UkVTRVQ+CkBAIC0xMTk2LDcgKzEyMzcsNyBAQAogCSB7PFJFU0VUPgogCSBmb28oKTs8UkVTRVQ+CiAJPEJPTEQ+ZGlmZiAtLWdpdCBhL3Rlc3QuYyBiL3Rlc3QuYzxSRVNFVD4KLQk8Qk9MRD5pbmRleCAxZGMxZDg1Li4yYmVkZWM5IDEwMDY0NDxSRVNFVD4KKwk8Qk9MRD5pbmRleCAkYmVmb3JlX3Rlc3QuLiRhZnRlcl90ZXN0IDEwMDY0NDxSRVNFVD4KIAk8Qk9MRD4tLS0gYS90ZXN0LmM8UkVTRVQ+CiAJPEJPTEQ+KysrIGIvdGVzdC5jPFJFU0VUPgogCTxDWUFOPkBAIC00LDYgKzQsMTMgQEA8UkVTRVQ+IDxSRVNFVD5pbnQgYmFyKCk8UkVTRVQ+CkBAIC0xNzU0LDcgKzE3OTUsOCBAQAogCSEgZ3JlcCBCUkVEIGRlY29kZWRfYWN0dWFsICYmCiAKIAkjIG5vciBkaWQgd2UgbWVzcyB3aXRoIGl0IGFub3RoZXIgd2F5Ci0JZ2l0IGRpZmYgLS1zdWJtb2R1bGU9ZGlmZiAtLWNvbG9yIHwgdGVzdF9kZWNvZGVfY29sb3IgPmV4cGVjdCAmJgorCWdpdCBkaWZmIC0tc3VibW9kdWxlPWRpZmYgLS1jb2xvciA+ZXhwZWN0LnJhdyAmJgorCXRlc3RfZGVjb2RlX2NvbG9yIDxleHBlY3QucmF3ID5leHBlY3QgJiYKIAl0ZXN0X2NtcCBleHBlY3QgZGVjb2RlZF9hY3R1YWwgJiYKIAlybSAtcmYgYmFuYW5hcyAmJgogCWdpdCBzdWJtb2R1bGUgZGVpbml0IGJhbmFuYXMKQEAgLTE4MDIsOCArMTg0NCw4IEBACiAJPEJPTEQ7TUFHRU5UQT4tYSBsb25nIGxpbmUgdG8gZXhjZWVkIHBlci1saW5lIG1pbmltdW08UkVTRVQ+CiAJPEJPTEQ7TUFHRU5UQT4tYW5vdGhlciBsb25nIGxpbmUgdG8gZXhjZWVkIHBlci1saW5lIG1pbmltdW08UkVTRVQ+CiAJPFJFRD4tb3JpZ2luYWwgZmlsZTxSRVNFVD4KLQk8Qk9MRDtZRUxMT1c+KzxSRVNFVD5RPEJPTEQ7WUVMTE9XPmEgbG9uZyBsaW5lIHRvIGV4Y2VlZCBwZXItbGluZSBtaW5pbXVtPFJFU0VUPgotCTxCT0xEO1lFTExPVz4rPFJFU0VUPlE8Qk9MRDtZRUxMT1c+YW5vdGhlciBsb25nIGxpbmUgdG8gZXhjZWVkIHBlci1saW5lIG1pbmltdW08UkVTRVQ+CisJPEJPTEQ7Q1lBTj4rPFJFU0VUPlE8Qk9MRDtDWUFOPmEgbG9uZyBsaW5lIHRvIGV4Y2VlZCBwZXItbGluZSBtaW5pbXVtPFJFU0VUPgorCTxCT0xEO0NZQU4+KzxSRVNFVD5RPEJPTEQ7Q1lBTj5hbm90aGVyIGxvbmcgbGluZSB0byBleGNlZWQgcGVyLWxpbmUgbWluaW11bTxSRVNFVD4KIAk8R1JFRU4+KzxSRVNFVD48R1JFRU4+bmV3IGZpbGU8UkVTRVQ+CiAJRU9GCiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCkBAIC0xODI3LDYgKzE4NjksNyBAQAogCVFRUXRoYXQgaGFzIHNpbWlsYXIgbGluZXMKIAlRUVF0byBwcmV2aW91cyBibG9ja3MsIGJ1dCB3aXRoIGRpZmZlcmVudCBpbmRlbnQKIAlRUVFZZXRRQW5vdGhlclFvdXRsaWVyUQorCVFMaW5lIHdpdGggaW50ZXJuYWwgdyBoIGkgdCBlIHMgcCBhIGMgZSBjaGFuZ2UKIAlFT0YKIAogCWdpdCBhZGQgdGV4dC50eHQgJiYKQEAgLTE4NDcsNiArMTg5MCw3IEBACiAJUVF0aGF0IGhhcyBzaW1pbGFyIGxpbmVzCiAJUVF0byBwcmV2aW91cyBibG9ja3MsIGJ1dCB3aXRoIGRpZmZlcmVudCBpbmRlbnQKIAlRUVlldFFBbm90aGVyUW91dGxpZXIKKwlRTGluZSB3aXRoIGludGVybmFsIHdoaXRlc3BhY2UgY2hhbmdlCiAJRU9GCiAKIAlnaXQgZGlmZiAtLWNvbG9yIC0tY29sb3ItbW92ZWQgLS1jb2xvci1tb3ZlZC13cz1hbGxvdy1pbmRlbnRhdGlvbi1jaGFuZ2UgPmFjdHVhbC5yYXcgJiYKQEAgLTE4NTYsNyArMTkwMCw3IEBACiAJCTxCT0xEPmRpZmYgLS1naXQgYS90ZXh0LnR4dCBiL3RleHQudHh0PFJFU0VUPgogCQk8Qk9MRD4tLS0gYS90ZXh0LnR4dDxSRVNFVD4KIAkJPEJPTEQ+KysrIGIvdGV4dC50eHQ8UkVTRVQ+Ci0JCTxDWUFOPkBAIC0xLDE0ICsxLDE0IEBAPFJFU0VUPgorCQk8Q1lBTj5AQCAtMSwxNSArMSwxNSBAQDxSRVNFVD4KIAkJPEJPTEQ7TUFHRU5UQT4tUUluZGVudGVkPFJFU0VUPgogCQk8Qk9MRDtNQUdFTlRBPi1RVGV4dCBhY3Jvc3M8UkVTRVQ+CiAJCTxCT0xEO01BR0VOVEE+LVFzb21lIGxpbmVzPFJFU0VUPgpAQCAtMTg3MSw2ICsxOTE1LDcgQEAKIAkJPEJPTEQ7TUFHRU5UQT4tUVFRdGhhdCBoYXMgc2ltaWxhciBsaW5lczxSRVNFVD4KIAkJPEJPTEQ7TUFHRU5UQT4tUVFRdG8gcHJldmlvdXMgYmxvY2tzLCBidXQgd2l0aCBkaWZmZXJlbnQgaW5kZW50PFJFU0VUPgogCQk8UkVEPi1RUVFZZXRRQW5vdGhlclFvdXRsaWVyUTxSRVNFVD4KKwkJPFJFRD4tUUxpbmUgd2l0aCBpbnRlcm5hbCB3IGggaSB0IGUgcyBwIGEgYyBlIGNoYW5nZTxSRVNFVD4KIAkJPEJPTEQ7Q1lBTj4rPFJFU0VUPlFRPEJPTEQ7Q1lBTj5JbmRlbnRlZDxSRVNFVD4KIAkJPEJPTEQ7Q1lBTj4rPFJFU0VUPlFRPEJPTEQ7Q1lBTj5UZXh0IGFjcm9zczxSRVNFVD4KIAkJPEJPTEQ7Q1lBTj4rPFJFU0VUPlFRPEJPTEQ7Q1lBTj5zb21lIGxpbmVzPFJFU0VUPgpAQCAtMTg4NSwxMSArMTkzMCwzMCBAQAogCQk8Qk9MRDtDWUFOPis8UkVTRVQ+UVE8Qk9MRDtDWUFOPnRoYXQgaGFzIHNpbWlsYXIgbGluZXM8UkVTRVQ+CiAJCTxCT0xEO0NZQU4+KzxSRVNFVD5RUTxCT0xEO0NZQU4+dG8gcHJldmlvdXMgYmxvY2tzLCBidXQgd2l0aCBkaWZmZXJlbnQgaW5kZW50PFJFU0VUPgogCQk8R1JFRU4+KzxSRVNFVD5RUTxHUkVFTj5ZZXRRQW5vdGhlclFvdXRsaWVyPFJFU0VUPgorCQk8R1JFRU4+KzxSRVNFVD5RPEdSRUVOPkxpbmUgd2l0aCBpbnRlcm5hbCB3aGl0ZXNwYWNlIGNoYW5nZTxSRVNFVD4KIAlFT0YKIAogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdib2d1cyBzZXR0aW5ncyBpbiBtb3ZlIGRldGVjdGlvbiBlcnJvcmluZyBvdXQnICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgZGlmZiAtLWNvbG9yLW1vdmVkPWJvZ3VzIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAibXVzdCBiZSBvbmUgb2YiIGVyciAmJgorCXRlc3RfaTE4bmdyZXAgYm9ndXMgZXJyICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgLWMgZGlmZi5jb2xvcm1vdmVkPWJvZ3VzIGRpZmYgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJtdXN0IGJlIG9uZSBvZiIgZXJyICYmCisJdGVzdF9pMThuZ3JlcCAiZnJvbSBjb21tYW5kLWxpbmUgY29uZmlnIiBlcnIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmIC0tY29sb3ItbW92ZWQtd3M9Ym9ndXMgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJwb3NzaWJsZSB2YWx1ZXMiIGVyciAmJgorCXRlc3RfaTE4bmdyZXAgYm9ndXMgZXJyICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgLWMgZGlmZi5jb2xvcm1vdmVkd3M9Ym9ndXMgZGlmZiAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgInBvc3NpYmxlIHZhbHVlcyIgZXJyICYmCisJdGVzdF9pMThuZ3JlcCAiZnJvbSBjb21tYW5kLWxpbmUgY29uZmlnIiBlcnIKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY29tcGFyZSB3aGl0ZXNwYWNlIGRlbHRhIGluY29tcGF0aWJsZSB3aXRoIG90aGVyIHNwYWNlIG9wdGlvbnMnICcKIAl0ZXN0X211c3RfZmFpbCBnaXQgZGlmZiBcCiAJCS0tY29sb3ItbW92ZWQtd3M9YWxsb3ctaW5kZW50YXRpb24tY2hhbmdlLGlnbm9yZS1hbGwtc3BhY2UgXApAQCAtMTg5Nyw0ICsxOTYxLDEzNCBAQAogCXRlc3RfaTE4bmdyZXAgYWxsb3ctaW5kZW50YXRpb24tY2hhbmdlIGVycgogJwogCitFTVBUWT0nJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29tcGFyZSBtaXhlZCB3aGl0ZXNwYWNlIGRlbHRhIGFjcm9zcyBtb3ZlZCBibG9ja3MnICcKKworCWdpdCByZXNldCAtLWhhcmQgJiYKKwl0ciBRXyAiXHQgIiA8PC1FT0YgPnRleHQudHh0ICYmCisJJHtFTVBUWX0KKwlfX19fdG9vIHNob3J0IHdpdGhvdXQKKwkke0VNUFRZfQorCV9fX2JlaW5nIGdyb3VwZWQgYWNyb3NzIGJsYW5rIGxpbmUKKwkke0VNUFRZfQorCWNvbnRleHQKKwlsaW5lcworCXRvCisJYW5jaG9yCisJX19fX0luZGVudGVkIHRleHQgdG8KKwlfUV9fX19iZSBmdXJ0aGVyIGluZGVudGVkIGJ5IGZvdXIgc3BhY2VzIGFjcm9zcworCV9fX19Rc2V2ZXJhbCBsaW5lcworCVFRX19fX1RoZXNlIHR3byBsaW5lcyBoYXZlIGhhZCB0aGVpcgorCV9fX19pbmRlbnRhdGlvbiByZWR1Y2VkIGJ5IGZvdXIgc3BhY2VzCisJUWRpZmZlcmVudCBpbmRlbnRhdGlvbiBjaGFuZ2UKKwlfX19fdG9vIHNob3J0CisJRU9GCisKKwlnaXQgYWRkIHRleHQudHh0ICYmCisJZ2l0IGNvbW1pdCAtbSAiYWRkIHRleHQudHh0IiAmJgorCisJdHIgUV8gIlx0ICIgPDwtRU9GID50ZXh0LnR4dCAmJgorCWNvbnRleHQKKwlsaW5lcworCXRvCisJYW5jaG9yCisJUUluZGVudGVkIHRleHQgdG8KKwlRUWJlIGZ1cnRoZXIgaW5kZW50ZWQgYnkgZm91ciBzcGFjZXMgYWNyb3NzCisJUV9fX19zZXZlcmFsIGxpbmVzCisJJHtFTVBUWX0KKwlRUXRvbyBzaG9ydCB3aXRob3V0CisJJHtFTVBUWX0KKwlRX19fX19fX2JlaW5nIGdyb3VwZWQgYWNyb3NzIGJsYW5rIGxpbmUKKwkke0VNUFRZfQorCVFfUVRoZXNlIHR3byBsaW5lcyBoYXZlIGhhZCB0aGVpcgorCWluZGVudGF0aW9uIHJlZHVjZWQgYnkgZm91ciBzcGFjZXMKKwlRUWRpZmZlcmVudCBpbmRlbnRhdGlvbiBjaGFuZ2UKKwlfX1F0b28gc2hvcnQKKwlFT0YKKworCWdpdCAtYyBjb2xvci5kaWZmLndoaXRlc3BhY2U9Im5vcm1hbCByZWQiIFwKKwkJLWMgY29yZS53aGl0ZXNwYWNlPXNwYWNlLWJlZm9yZS10YWIgXAorCQlkaWZmIC0tY29sb3IgLS1jb2xvci1tb3ZlZCAtLXdzLWVycm9yLWhpZ2hsaWdodD1hbGwgXAorCQktLWNvbG9yLW1vdmVkLXdzPWFsbG93LWluZGVudGF0aW9uLWNoYW5nZSA+YWN0dWFsLnJhdyAmJgorCWdyZXAgLXYgImluZGV4IiBhY3R1YWwucmF3IHwgdGVzdF9kZWNvZGVfY29sb3IgPmFjdHVhbCAmJgorCisJY2F0IDw8LVxFT0YgPmV4cGVjdGVkICYmCisJPEJPTEQ+ZGlmZiAtLWdpdCBhL3RleHQudHh0IGIvdGV4dC50eHQ8UkVTRVQ+CisJPEJPTEQ+LS0tIGEvdGV4dC50eHQ8UkVTRVQ+CisJPEJPTEQ+KysrIGIvdGV4dC50eHQ8UkVTRVQ+CisJPENZQU4+QEAgLTEsMTYgKzEsMTYgQEA8UkVTRVQ+CisJPEJPTEQ7TUFHRU5UQT4tPFJFU0VUPgorCTxCT0xEO01BR0VOVEE+LTxSRVNFVD48Qk9MRDtNQUdFTlRBPiAgICB0b28gc2hvcnQgd2l0aG91dDxSRVNFVD4KKwk8Qk9MRDtNQUdFTlRBPi08UkVTRVQ+CisJPEJPTEQ7TUFHRU5UQT4tPFJFU0VUPjxCT0xEO01BR0VOVEE+ICAgYmVpbmcgZ3JvdXBlZCBhY3Jvc3MgYmxhbmsgbGluZTxSRVNFVD4KKwk8Qk9MRDtNQUdFTlRBPi08UkVTRVQ+CisJIDxSRVNFVD5jb250ZXh0PFJFU0VUPgorCSA8UkVTRVQ+bGluZXM8UkVTRVQ+CisJIDxSRVNFVD50bzxSRVNFVD4KKwkgPFJFU0VUPmFuY2hvcjxSRVNFVD4KKwk8Qk9MRDtNQUdFTlRBPi08UkVTRVQ+PEJPTEQ7TUFHRU5UQT4gICAgSW5kZW50ZWQgdGV4dCB0bzxSRVNFVD4KKwk8Qk9MRDtNQUdFTlRBPi08UkVTRVQ+PEJSRUQ+IDxSRVNFVD4JPEJPTEQ7TUFHRU5UQT4gICAgYmUgZnVydGhlciBpbmRlbnRlZCBieSBmb3VyIHNwYWNlcyBhY3Jvc3M8UkVTRVQ+CisJPEJPTEQ7TUFHRU5UQT4tPFJFU0VUPjxCUkVEPiAgICA8UkVTRVQ+CTxCT0xEO01BR0VOVEE+c2V2ZXJhbCBsaW5lczxSRVNFVD4KKwk8Qk9MRDtCTFVFPi08UkVTRVQ+CQk8Qk9MRDtCTFVFPiAgICBUaGVzZSB0d28gbGluZXMgaGF2ZSBoYWQgdGhlaXI8UkVTRVQ+CisJPEJPTEQ7QkxVRT4tPFJFU0VUPjxCT0xEO0JMVUU+ICAgIGluZGVudGF0aW9uIHJlZHVjZWQgYnkgZm91ciBzcGFjZXM8UkVTRVQ+CisJPEJPTEQ7TUFHRU5UQT4tPFJFU0VUPgk8Qk9MRDtNQUdFTlRBPmRpZmZlcmVudCBpbmRlbnRhdGlvbiBjaGFuZ2U8UkVTRVQ+CisJPFJFRD4tPFJFU0VUPjxSRUQ+ICAgIHRvbyBzaG9ydDxSRVNFVD4KKwk8Qk9MRDtDWUFOPis8UkVTRVQ+CTxCT0xEO0NZQU4+SW5kZW50ZWQgdGV4dCB0bzxSRVNFVD4KKwk8Qk9MRDtDWUFOPis8UkVTRVQ+CQk8Qk9MRDtDWUFOPmJlIGZ1cnRoZXIgaW5kZW50ZWQgYnkgZm91ciBzcGFjZXMgYWNyb3NzPFJFU0VUPgorCTxCT0xEO0NZQU4+KzxSRVNFVD4JPEJPTEQ7Q1lBTj4gICAgc2V2ZXJhbCBsaW5lczxSRVNFVD4KKwk8Qk9MRDtZRUxMT1c+KzxSRVNFVD4KKwk8Qk9MRDtZRUxMT1c+KzxSRVNFVD4JCTxCT0xEO1lFTExPVz50b28gc2hvcnQgd2l0aG91dDxSRVNFVD4KKwk8Qk9MRDtZRUxMT1c+KzxSRVNFVD4KKwk8Qk9MRDtZRUxMT1c+KzxSRVNFVD4JPEJPTEQ7WUVMTE9XPiAgICAgICBiZWluZyBncm91cGVkIGFjcm9zcyBibGFuayBsaW5lPFJFU0VUPgorCTxCT0xEO1lFTExPVz4rPFJFU0VUPgorCTxCT0xEO0NZQU4+KzxSRVNFVD4JPEJSRUQ+IDxSRVNFVD4JPEJPTEQ7Q1lBTj5UaGVzZSB0d28gbGluZXMgaGF2ZSBoYWQgdGhlaXI8UkVTRVQ+CisJPEJPTEQ7Q1lBTj4rPFJFU0VUPjxCT0xEO0NZQU4+aW5kZW50YXRpb24gcmVkdWNlZCBieSBmb3VyIHNwYWNlczxSRVNFVD4KKwk8Qk9MRDtZRUxMT1c+KzxSRVNFVD4JCTxCT0xEO1lFTExPVz5kaWZmZXJlbnQgaW5kZW50YXRpb24gY2hhbmdlPFJFU0VUPgorCTxHUkVFTj4rPFJFU0VUPjxCUkVEPiAgPFJFU0VUPgk8R1JFRU4+dG9vIHNob3J0PFJFU0VUPgorCUVPRgorCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbWJpbmUgLS1pZ25vcmUtYmxhbmstbGluZXMgd2l0aCAtLWZ1bmN0aW9uLWNvbnRleHQnICcKKwl0ZXN0X3dyaXRlX2xpbmVzIDEgIiIgMiAzIDQgNSA+YSAmJgorCXRlc3Rfd3JpdGVfbGluZXMgMSAgICAyIDMgNCAgID5iICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGRpZmYgLS1uby1pbmRleCBcCisJCS0taWdub3JlLWJsYW5rLWxpbmVzIC0tZnVuY3Rpb24tY29udGV4dCBhIGIgPmFjdHVhbC5yYXcgJiYKKwlzZWQgLW4gIi9AQC8sXCRwIiA8YWN0dWFsLnJhdyA+YWN0dWFsICYmCisJY2F0IDw8LVxFT0YgPmV4cGVjdCAmJgorCUBAIC0xLDYgKzEsNCBAQAorCSAxCisJLQorCSAyCisJIDMKKwkgNAorCS01CisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb21iaW5lIC0taWdub3JlLWJsYW5rLWxpbmVzIHdpdGggLS1mdW5jdGlvbi1jb250ZXh0IDInICcKKwl0ZXN0X3dyaXRlX2xpbmVzICAgIGEgYiBjICIiIGZ1bmN0aW9uIDEgMiAzIDQgNSAiIiA2IDcgOCA5ID5hICYmCisJdGVzdF93cml0ZV9saW5lcyAiIiBhIGIgYyAiIiBmdW5jdGlvbiAxIDIgMyA0IDUgICAgNiA3IDggICA+YiAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmIC0tbm8taW5kZXggXAorCQktLWlnbm9yZS1ibGFuay1saW5lcyAtLWZ1bmN0aW9uLWNvbnRleHQgYSBiID5hY3R1YWwucmF3ICYmCisJc2VkIC1uICIvQEAvLFwkcCIgPGFjdHVhbC5yYXcgPmFjdHVhbCAmJgorCWNhdCA8PC1cRU9GID5leHBlY3QgJiYKKwlAQCAtNSwxMSArNiw5IEBAIGMKKwkgZnVuY3Rpb24KKwkgMQorCSAyCisJIDMKKwkgNAorCSA1CisJLQorCSA2CisJIDcKKwkgOAorCS05CisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDQwMTgtZGlmZi1mdW5jbmFtZS5zaCBiL3QvdDQwMTgtZGlmZi1mdW5jbmFtZS5zaAppbmRleCAyMmY5Zjg4Li4wMjI1NWEwIDEwMDc1NQotLS0gYS90L3Q0MDE4LWRpZmYtZnVuY25hbWUuc2gKKysrIGIvdC90NDAxOC1kaWZmLWZ1bmNuYW1lLnNoCkBAIC0zMSw2ICszMSw4IEBACiAJY3BwCiAJY3NoYXJwCiAJY3NzCisJZHRzCisJZWxpeGlyCiAJZm9ydHJhbgogCWZvdW50YWluCiAJZ29sYW5nCkBAIC00Myw2ICs0NSw3IEBACiAJcGhwCiAJcHl0aG9uCiAJcnVieQorCXJ1c3QKIAl0ZXgKIAljdXN0b20xCiAJY3VzdG9tMgpAQCAtMTAzLDcgKzEwNiw2IEBACiAJCXJlc3VsdD1zdWNjZXNzCiAJZmkKIAl0ZXN0X2V4cGVjdF8kcmVzdWx0ICJodW5rIGhlYWRlcjogJGkiICIKLQkJdGVzdF93aGVuX2ZpbmlzaGVkICdjYXQgYWN0dWFsJyAmJgkjIGZvciBkZWJ1Z2dpbmcgb25seQogCQlnaXQgZGlmZiAtVTEgJGkgPmFjdHVhbCAmJgogCQlncmVwICdAQCAuKiBAQC4qUklHSFQnIGFjdHVhbAogCSIKZGlmZiAtLWdpdCBhL3QvdDQwMTgvZHRzLWxhYmVscyBiL3QvdDQwMTgvZHRzLWxhYmVscwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMjFlZjg3Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxOC9kdHMtbGFiZWxzCkBAIC0wLDAgKzEsOSBAQAorLyB7CisJbGFiZWxfMTogbm9kZTFAZmYwMCB7CisJCWxhYmVsMjogUklHSFQgeworCQkJdmVuZG9yLHNvbWUtcHJvcGVydHk7CisKKwkJCUNoYW5nZU1lID0gPDB4NDUtMzA+OworCQl9OworCX07Cit9OwpkaWZmIC0tZ2l0IGEvdC90NDAxOC9kdHMtbm9kZS11bml0bGVzcyBiL3QvdDQwMTgvZHRzLW5vZGUtdW5pdGxlc3MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzUyODdkOQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvZHRzLW5vZGUtdW5pdGxlc3MKQEAgLTAsMCArMSw4IEBACisvIHsKKwlsYWJlbF8xOiBub2RlMSB7CisJCVJJR0hUIHsKKwkJCXByb3AtYXJyYXkgPSA8MT4sIDw0PjsKKwkJCUNoYW5nZU1lID0gPDB4ZmZlZWRkMDA+OworCQl9OworCX07Cit9OwpkaWZmIC0tZ2l0IGEvdC90NDAxOC9kdHMtbm9kZXMgYi90L3Q0MDE4L2R0cy1ub2RlcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41YTQzMzRiCi0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxOC9kdHMtbm9kZXMKQEAgLTAsMCArMSw4IEBACisvIHsKKwlsYWJlbF8xOiBub2RlMUBmZjAwIHsKKwkJUklHSFRAZGVhZGYwMCw0MDAwIHsKKwkJCSNzaXplLWNlbGxzID0gPDE+OworCQkJQ2hhbmdlTWUgPSA8MHhmZmVlZGQwMD47CisJCX07CisJfTsKK307CmRpZmYgLS1naXQgYS90L3Q0MDE4L2R0cy1ub2Rlcy1ib29sZWFuLXByb3AgYi90L3Q0MDE4L2R0cy1ub2Rlcy1ib29sZWFuLXByb3AKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWZjNmI1YgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvZHRzLW5vZGVzLWJvb2xlYW4tcHJvcApAQCAtMCwwICsxLDkgQEAKKy8geworCWxhYmVsXzE6IG5vZGUxQGZmMDAgeworCQlSSUdIVEBkZWFkZjAwLDQwMDAgeworCQkJYm9vbGVhbi1wcm9wMTsKKworCQkJQ2hhbmdlTWU7CisJCX07CisJfTsKK307CmRpZmYgLS1naXQgYS90L3Q0MDE4L2R0cy1ub2Rlcy1jb21tZW50MSBiL3QvdDQwMTgvZHRzLW5vZGVzLWNvbW1lbnQxCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU1OWRmY2UKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MDE4L2R0cy1ub2Rlcy1jb21tZW50MQpAQCAtMCwwICsxLDggQEAKKy8geworCWxhYmVsXzE6IG5vZGUxQGZmMDAgeworCQlSSUdIVEBkZWFkZjAwLDQwMDAgLyogJmEgY29tbWVudCAqLyB7CisJCQkjc2l6ZS1jZWxscyA9IDwxPjsKKwkJCUNoYW5nZU1lID0gPDB4ZmZlZWRkMDA+OworCQl9OworCX07Cit9OwpkaWZmIC0tZ2l0IGEvdC90NDAxOC9kdHMtbm9kZXMtY29tbWVudDIgYi90L3Q0MDE4L2R0cy1ub2Rlcy1jb21tZW50MgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yN2U5NzE4Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxOC9kdHMtbm9kZXMtY29tbWVudDIKQEAgLTAsMCArMSw4IEBACisvIHsKKwlsYWJlbF8xOiBub2RlMUBmZjAwIHsKKwkJUklHSFRAZGVhZGYwMCw0MDAwIHsgLyogYSB0cmFpbGluZyBjb21tZW50ICovIAorCQkJI3NpemUtY2VsbHMgPSA8MT47CisJCQlDaGFuZ2VNZSA9IDwweGZmZWVkZDAwPjsKKwkJfTsKKwl9OworfTsKZGlmZiAtLWdpdCBhL3QvdDQwMTgvZHRzLW5vZGVzLW11bHRpbGluZS1wcm9wIGIvdC90NDAxOC9kdHMtbm9kZXMtbXVsdGlsaW5lLXByb3AKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDcyZDU4YgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvZHRzLW5vZGVzLW11bHRpbGluZS1wcm9wCkBAIC0wLDAgKzEsMTMgQEAKKy8geworCWxhYmVsXzE6IG5vZGUxQGZmMDAgeworCQlSSUdIVEBkZWFkZjAwLDQwMDAgeworCQkJbXVsdGlsaW5lcHJvcCA9IDwzPiwKKwkJCQkJPDQ+LAorCQkJCQk8NT4sCisJCQkJCTw2PiwKKwkJCQkJPDc+OworCisJCQlDaGFuZ2VNZSA9IDwweGZmZWVkZDAwPjsKKwkJfTsKKwl9OworfTsKZGlmZiAtLWdpdCBhL3QvdDQwMTgvZHRzLXJlZmVyZW5jZSBiL3QvdDQwMTgvZHRzLXJlZmVyZW5jZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZjBjODdkCi0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxOC9kdHMtcmVmZXJlbmNlCkBAIC0wLDAgKzEsOSBAQAorJmxhYmVsXzEgeworCVRFU1QgPSA8NDU1PjsKK307CisKKyZSSUdIVCB7CisJdmVuZG9yLHNvbWUtcHJvcGVydHk7CisKKwlDaGFuZ2VNZSA9IDwweDQ1LTMwPjsKK307CmRpZmYgLS1naXQgYS90L3Q0MDE4L2R0cy1yb290IGIvdC90NDAxOC9kdHMtcm9vdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MzUzYjgyCi0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxOC9kdHMtcm9vdApAQCAtMCwwICsxLDUgQEAKKy8geyBSSUdIVCAvKiBUZWNobmljYWxseSBqdXN0IHN1cHBvc2VkIHRvIGJlIGEgc2xhc2ggYW5kIGJyYWNlICovCisJI3NpemUtY2VsbHMgPSA8MT47CisKKwlDaGFuZ2VNZSA9IDwweGZmZWVkZDAwPjsKK307CmRpZmYgLS1naXQgYS90L3Q0MDE4L2R0cy1yb290LWNvbW1lbnQgYi90L3Q0MDE4L2R0cy1yb290LWNvbW1lbnQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzMzYTYyNQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvZHRzLXJvb3QtY29tbWVudApAQCAtMCwwICsxLDggQEAKKy8geyBSSUdIVCAvKiBUZWNobmljYWxseSBqdXN0IHN1cHBvc2VkIHRvIGJlIGEgc2xhc2ggYW5kIGJyYWNlICovCisJI3NpemUtY2VsbHMgPSA8MT47CisKKwkvKiBUaGlzIGNvbW1lbnQgc2hvdWxkIGJlIGlnbm9yZWQgKi8KKworCXNvbWUtcHJvcGVydHkgPSA8NDArMj47CisJQ2hhbmdlTWUgPSA8MHhmZmVlZGQwMD47Cit9OwpkaWZmIC0tZ2l0IGEvdC90NDAxOC9lbGl4aXItZG8tbm90LXBpY2stZW5kIGIvdC90NDAxOC9lbGl4aXItZG8tbm90LXBpY2stZW5kCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZhZTA4YmEKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MDE4L2VsaXhpci1kby1ub3QtcGljay1lbmQKQEAgLTAsMCArMSw1IEBACitkZWZtb2R1bGUgUklHSFQgZG8KK2VuZAorIworIworIyBDaGFuZ2VNZTsgZG8gbm90IHBpY2sgdXAgJ2VuZCcgbGluZQpkaWZmIC0tZ2l0IGEvdC90NDAxOC9lbGl4aXItZXgtdW5pdC10ZXN0IGIvdC90NDAxOC9lbGl4aXItZXgtdW5pdC10ZXN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA1NjBhMmIKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MDE4L2VsaXhpci1leC11bml0LXRlc3QKQEAgLTAsMCArMSw2IEBACitkZWZtb2R1bGUgVGVzdCBkbworICB0ZXN0ICJSSUdIVCIgZG8KKyAgICBhc3NlcnQgdHJ1ZSA9PSB0cnVlCisgICAgYXNzZXJ0IENoYW5nZU1lCisgIGVuZAorZW5kCmRpZmYgLS1naXQgYS90L3Q0MDE4L2VsaXhpci1mdW5jdGlvbiBiL3QvdDQwMTgvZWxpeGlyLWZ1bmN0aW9uCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ0NTJmNDkKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MDE4L2VsaXhpci1mdW5jdGlvbgpAQCAtMCwwICsxLDUgQEAKK2RlZiBmdW5jdGlvbihSSUdIVCwgYXJnKSBkbworICAjIGNvbW1lbnQKKyAgIyBjb21tZW50CisgIENoYW5nZU1lCitlbmQKZGlmZiAtLWdpdCBhL3QvdDQwMTgvZWxpeGlyLW1hY3JvIGIvdC90NDAxOC9lbGl4aXItbWFjcm8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGY5MjVlOQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvZWxpeGlyLW1hY3JvCkBAIC0wLDAgKzEsNSBAQAorZGVmbWFjcm8gZm9vKFJJR0hUKSBkbworICAjIENvZGUKKyAgIyBDb2RlCisgIENoYW5nZU1lCitlbmQKZGlmZiAtLWdpdCBhL3QvdDQwMTgvZWxpeGlyLW1vZHVsZSBiL3QvdDQwMTgvZWxpeGlyLW1vZHVsZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MWE0ZTdhCi0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxOC9lbGl4aXItbW9kdWxlCkBAIC0wLDAgKzEsOSBAQAorZGVmbW9kdWxlIFJJR0hUIGRvCisgIEBtb2R1bGVkb2MgIiIiCisgIEZvbyBiYXIKKyAgIiIiCisKKyAgZGVmIENoYW5nZU1lKGEpIHdoZXJlIGlzX21hcChhKSBkbworICAgIGEKKyAgZW5kCitlbmQKZGlmZiAtLWdpdCBhL3QvdDQwMTgvZWxpeGlyLW1vZHVsZS1mdW5jIGIvdC90NDAxOC9lbGl4aXItbW9kdWxlLWZ1bmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzk5MTBkMAotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvZWxpeGlyLW1vZHVsZS1mdW5jCkBAIC0wLDAgKzEsOCBAQAorZGVmbW9kdWxlIEZvbyBkbworICBkZWYgZnVuKFJJR0hUKSBkbworICAgICAjIENvZGUKKyAgICAgIyBDb2RlCisgICAgICMgQ29kZQorICAgICBDaGFuZ2VNZQorICBlbmQKK2VuZApkaWZmIC0tZ2l0IGEvdC90NDAxOC9lbGl4aXItbmVzdGVkLW1vZHVsZSBiL3QvdDQwMTgvZWxpeGlyLW5lc3RlZC1tb2R1bGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzcxZWJjNQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvZWxpeGlyLW5lc3RlZC1tb2R1bGUKQEAgLTAsMCArMSw5IEBACitkZWZtb2R1bGUgTXlBcHAuUklHSFQgZG8KKyAgQG1vZHVsZWRvYyAiIiIKKyAgRm9vIGJhcgorICAiIiIKKworICBkZWYgQ2hhbmdlTWUoYSkgd2hlcmUgaXNfbWFwKGEpIGRvCisgICAgYQorICBlbmQKK2VuZApkaWZmIC0tZ2l0IGEvdC90NDAxOC9lbGl4aXItcHJpdmF0ZS1mdW5jdGlvbiBiL3QvdDQwMTgvZWxpeGlyLXByaXZhdGUtZnVuY3Rpb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWFhYmUzMwotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvZWxpeGlyLXByaXZhdGUtZnVuY3Rpb24KQEAgLTAsMCArMSw1IEBACitkZWZwIGZ1bmN0aW9uKFJJR0hULCBhcmcpIGRvCisgICMgY29tbWVudAorICAjIGNvbW1lbnQKKyAgQ2hhbmdlTWUKK2VuZApkaWZmIC0tZ2l0IGEvdC90NDAxOC9lbGl4aXItcHJvdG9jb2wgYi90L3Q0MDE4L2VsaXhpci1wcm90b2NvbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZDkxNzM2Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxOC9lbGl4aXItcHJvdG9jb2wKQEAgLTAsMCArMSw2IEBACitkZWZwcm90b2NvbCBSSUdIVCBkbworICBAZG9jICIiIgorICBDYWxjdWxhdGVzIHRoZSBzaXplIChhbmQgbm90IHRoZSBsZW5ndGghKSBvZiBhIGRhdGEgc3RydWN0dXJlCisgICIiIgorICBkZWYgc2l6ZShkYXRhLCBDaGFuZ2VNZSkKK2VuZApkaWZmIC0tZ2l0IGEvdC90NDAxOC9lbGl4aXItcHJvdG9jb2wtaW1wbGVtZW50YXRpb24gYi90L3Q0MDE4L2VsaXhpci1wcm90b2NvbC1pbXBsZW1lbnRhdGlvbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mOTIzNGJiCi0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxOC9lbGl4aXItcHJvdG9jb2wtaW1wbGVtZW50YXRpb24KQEAgLTAsMCArMSw1IEBACitkZWZpbXBsIFJJR0hUIGRvCisgICMgRG9jcworICAjIERvY3MKKyAgZGVmIGZvbyhDaGFuZ2VNZSksIGRvOiA6b2sKK2VuZApkaWZmIC0tZ2l0IGEvdC90NDAxOC9tYXRsYWItY2xhc3MtZGVmaW5pdGlvbiBiL3QvdDQwMTgvbWF0bGFiLWNsYXNzLWRlZmluaXRpb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODRkYWVkZgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvbWF0bGFiLWNsYXNzLWRlZmluaXRpb24KQEAgLTAsMCArMSw1IEBACitjbGFzc2RlZiBSSUdIVAorICAgIHByb3BlcnRpZXMKKyAgICAgICAgQ2hhbmdlTWUKKyAgICBlbmQKK2VuZApkaWZmIC0tZ2l0IGEvdC90NDAxOC9tYXRsYWItZnVuY3Rpb24gYi90L3Q0MDE4L21hdGxhYi1mdW5jdGlvbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44OTdhOWIxCi0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxOC9tYXRsYWItZnVuY3Rpb24KQEAgLTAsMCArMSw0IEBACitmdW5jdGlvbiB5ID0gUklHSFQoKQoreCA9IDU7Cit5ID0gQ2hhbmdlTWUgKyB4OworZW5kCmRpZmYgLS1naXQgYS90L3Q0MDE4L21hdGxhYi1vY3RhdmUtc2VjdGlvbi0xIGIvdC90NDAxOC9tYXRsYWItb2N0YXZlLXNlY3Rpb24tMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYmI2YzQ2Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxOC9tYXRsYWItb2N0YXZlLXNlY3Rpb24tMQpAQCAtMCwwICsxLDMgQEAKKyUlJSBSSUdIVCBzZWN0aW9uCisjIHRoaXMgaXMgb2N0YXZlIHNjcmlwdAorQ2hhbmdlTWUgPSAxOwpkaWZmIC0tZ2l0IGEvdC90NDAxOC9tYXRsYWItb2N0YXZlLXNlY3Rpb24tMiBiL3QvdDQwMTgvbWF0bGFiLW9jdGF2ZS1zZWN0aW9uLTIKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWIyOTgwZgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvbWF0bGFiLW9jdGF2ZS1zZWN0aW9uLTIKQEAgLTAsMCArMSwzIEBACisjIyBSSUdIVCBzZWN0aW9uCisjIHRoaXMgaXMgb2N0YXZlIHNjcmlwdAorQ2hhbmdlTWUgPSAxOwpkaWZmIC0tZ2l0IGEvdC90NDAxOC9tYXRsYWItc2VjdGlvbiBiL3QvdDQwMTgvbWF0bGFiLXNlY3Rpb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWVhNTlhNQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvbWF0bGFiLXNlY3Rpb24KQEAgLTAsMCArMSwzIEBACislJSBSSUdIVCBzZWN0aW9uCislIHRoaXMgaXMgdW5kZXJzdG9vZCBieSBib3RoIG1hdGxhYiBhbmQgb2N0YXZlCitDaGFuZ2VNZSA9IDE7CmRpZmYgLS1naXQgYS90L3Q0MDE4L3B5dGhvbi1hc3luYy1kZWYgYi90L3Q0MDE4L3B5dGhvbi1hc3luYy1kZWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODc2NDBlMAotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvcHl0aG9uLWFzeW5jLWRlZgpAQCAtMCwwICsxLDQgQEAKK2FzeW5jIGRlZiBSSUdIVChwaTogaW50ID0gMy4xNCk6CisgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgYnJlYWsKKyAgICByZXR1cm4gQ2hhbmdlTWUoKQpkaWZmIC0tZ2l0IGEvdC90NDAxOC9weXRob24tY2xhc3MgYi90L3Q0MDE4L3B5dGhvbi1jbGFzcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYTllNzQxCi0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxOC9weXRob24tY2xhc3MKQEAgLTAsMCArMSw0IEBACitjbGFzcyBSSUdIVChpbnQsIHN0cik6CisgICAgIyBjb21tZW50CisgICAgIyBhbm90aGVyIGNvbW1lbnQKKyAgICAjIENoYW5nZU1lCmRpZmYgLS1naXQgYS90L3Q0MDE4L3B5dGhvbi1kZWYgYi90L3Q0MDE4L3B5dGhvbi1kZWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTUwYjMxYgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvcHl0aG9uLWRlZgpAQCAtMCwwICsxLDQgQEAKK2RlZiBSSUdIVChwaTogaW50ID0gMy4xNCk6CisgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgYnJlYWsKKyAgICByZXR1cm4gQ2hhbmdlTWUoKQpkaWZmIC0tZ2l0IGEvdC90NDAxOC9weXRob24taW5kZW50ZWQtYXN5bmMtZGVmIGIvdC90NDAxOC9weXRob24taW5kZW50ZWQtYXN5bmMtZGVmCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY1ZDAzMjUKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MDE4L3B5dGhvbi1pbmRlbnRlZC1hc3luYy1kZWYKQEAgLTAsMCArMSw3IEBACitjbGFzcyBGb286CisgICAgYXN5bmMgZGVmIFJJR0hUKHNlbGYsIHg6IGludCk6CisgICAgICAgIHJldHVybiBbCisgICAgICAgICAgICAxLAorICAgICAgICAgICAgMiwKKyAgICAgICAgICAgIENoYW5nZU1lLAorICAgICAgICBdCmRpZmYgLS1naXQgYS90L3Q0MDE4L3B5dGhvbi1pbmRlbnRlZC1jbGFzcyBiL3QvdDQwMTgvcHl0aG9uLWluZGVudGVkLWNsYXNzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE5YjRmMzUKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MDE4L3B5dGhvbi1pbmRlbnRlZC1jbGFzcwpAQCAtMCwwICsxLDUgQEAKK2lmIFRZUEVfQ0hFQ0tJTkc6CisgICAgY2xhc3MgUklHSFQ6CisgICAgICAgICMgY29tbWVudAorICAgICAgICAjIGFub3RoZXIgY29tbWVudAorICAgICAgICAjIENoYW5nZU1lCmRpZmYgLS1naXQgYS90L3Q0MDE4L3B5dGhvbi1pbmRlbnRlZC1kZWYgYi90L3Q0MDE4L3B5dGhvbi1pbmRlbnRlZC1kZWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjA4ZmJhZAotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvcHl0aG9uLWluZGVudGVkLWRlZgpAQCAtMCwwICsxLDcgQEAKK2NsYXNzIEZvbzoKKyAgICBkZWYgUklHSFQoc2VsZiwgeDogaW50KToKKyAgICAgICAgcmV0dXJuIFsKKyAgICAgICAgICAgIDEsCisgICAgICAgICAgICAyLAorICAgICAgICAgICAgQ2hhbmdlTWUsCisgICAgICAgIF0KZGlmZiAtLWdpdCBhL3QvdDQwMTgvcnVzdC1mbiBiL3QvdDQwMTgvcnVzdC1mbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYmUwMjE1Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NDAxOC9ydXN0LWZuCkBAIC0wLDAgKzEsNSBAQAorcHViKHNlbGYpIGZuIFJJR0hUPFQ+KHg6ICZbVF0pIHdoZXJlIFQ6IERlYnVnIHsKKyAgICBsZXQgXyA9IHg7CisgICAgLy8gYSBjb21tZW50CisgICAgbGV0IGEgPSBDaGFuZ2VNZTsKK30KZGlmZiAtLWdpdCBhL3QvdDQwMTgvcnVzdC1pbXBsIGIvdC90NDAxOC9ydXN0LWltcGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDlkZjNjZAotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvcnVzdC1pbXBsCkBAIC0wLDAgKzEsNSBAQAoraW1wbDwnYSwgVDogQXNSZWY8W3U4XT4+ICBzdGQ6OlJJR0hUIGZvciBHaXQ8J2E+IHsKKworICAgIHB1YiBmbiBDaGFuZ2VNZSgmc2VsZikgLT4gKCkgeworICAgIH0KK30KZGlmZiAtLWdpdCBhL3QvdDQwMTgvcnVzdC1zdHJ1Y3QgYi90L3Q0MDE4L3J1c3Qtc3RydWN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc2YWZmMWMKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MDE4L3J1c3Qtc3RydWN0CkBAIC0wLDAgKzEsNSBAQAorI1tkZXJpdmUoRGVidWcpXQorcHViKHN1cGVyKSBzdHJ1Y3QgUklHSFQ8J2E+IHsKKyAgICBuYW1lOiAmJ2Egc3RyLAorICAgIGFnZTogQ2hhbmdlTWUsCit9CmRpZmYgLS1naXQgYS90L3Q0MDE4L3J1c3QtdHJhaXQgYi90L3Q0MDE4L3J1c3QtdHJhaXQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWEzOTdmMAotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMTgvcnVzdC10cmFpdApAQCAtMCwwICsxLDUgQEAKK3Vuc2FmZSB0cmFpdCBSSUdIVDxUPiB7CisgICAgZm4gbGVuKCZzZWxmKSAtPiB1MzI7CisgICAgZm4gQ2hhbmdlTWUoJnNlbGYsIG46IHUzMikgLT4gVDsKKyAgICBmbiBpdGVyPEY+KCZzZWxmLCBmOiBGKSB3aGVyZSBGOiBGbihUKTsKK30KZGlmZiAtLWdpdCBhL3QvdDQwMjYtY29sb3Iuc2ggYi90L3Q0MDI2LWNvbG9yLnNoCmluZGV4IDY3MWU5NTEuLmMwYjY0MmMgMTAwNzU1Ci0tLSBhL3QvdDQwMjYtY29sb3Iuc2gKKysrIGIvdC90NDAyNi1jb2xvci5zaApAQCAtMzAsNiArMzAsMTQgQEAKIAljb2xvciAiYm9sZCByZWQiICJbMTszMW0iCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FpeHRlcm0gYnJpZ2h0IGZnIGNvbG9yJyAnCisJY29sb3IgImJyaWdodHJlZCIgIls5MW0iCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FpeHRlcm0gYnJpZ2h0IGJnIGNvbG9yJyAnCisJY29sb3IgImdyZWVuIGJyaWdodGJsdWUiICJbMzI7MTA0bSIKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY29sb3IgbmFtZSBiZWZvcmUgYXR0cmlidXRlJyAnCiAJY29sb3IgInJlZCBib2xkIiAiWzE7MzFtIgogJwpAQCAtNzQsNiArODIsMTAgQEAKIAljb2xvciAiMCA3IiAiWzMwOzQ3bSIKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnOC0xNSBhcmUgYWxpYXNlcyBmb3IgYWl4dGVybSBjb2xvciBuYW1lcycgJworCWNvbG9yICIxMiAxMyIgIls5NDsxMDVtIgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICcyNTYgY29sb3JzJyAnCiAJY29sb3IgIjI1NCBib2xkIDI1NSIgIlsxOzM4OzU7MjU0OzQ4OzU7MjU1bSIKICcKZGlmZiAtLWdpdCBhL3QvdDQwMjctZGlmZi1zdWJtb2R1bGUuc2ggYi90L3Q0MDI3LWRpZmYtc3VibW9kdWxlLnNoCmluZGV4IDlhYThlMmIuLmUyOWRlYWYgMTAwNzU1Ci0tLSBhL3QvdDQwMjctZGlmZi1zdWJtb2R1bGUuc2gKKysrIGIvdC90NDAyNy1kaWZmLXN1Ym1vZHVsZS5zaApAQCAtNiw2ICs2LDcgQEAKIC4gIiRURVNUX0RJUkVDVE9SWSIvZGlmZi1saWIuc2gKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBzZXR1cCAnCisJdGVzdF9vaWRfaW5pdCAmJgogCXRlc3RfdGljayAmJgogCXRlc3RfY3JlYXRlX3JlcG8gc3ViICYmCiAJKApAQCAtMzYsNyArMzcsOCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgZGlmZiAtLXJhdyBIRUFEJyAnCi0JZ2l0IGRpZmYgLS1yYXcgLS1hYmJyZXY9NDAgSEVBRCA+YWN0dWFsICYmCisJaGV4c3o9JCh0ZXN0X29pZCBoZXhzeikgJiYKKwlnaXQgZGlmZiAtLXJhdyAtLWFiYnJldj0kaGV4c3ogSEVBRCA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCkBAIC0yNDUsMjMgKzI0NywyMSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb25mbGljdGVkIHN1Ym1vZHVsZSBzZXR1cCcgJwotCi0JIyAzOSBlZnMKLQljPWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiAmJgorCWM9JCh0ZXN0X29pZCBmZl8xKSAmJgogCSgKIAkJZWNobyAiMDAwMDAwICRaRVJPX09JRCAwCXN1YiIgJiYKIAkJZWNobyAiMTYwMDAwIDEkYyAxCXN1YiIgJiYKIAkJZWNobyAiMTYwMDAwIDIkYyAyCXN1YiIgJiYKIAkJZWNobyAiMTYwMDAwIDMkYyAzCXN1YiIKIAkpIHwgZ2l0IHVwZGF0ZS1pbmRleCAtLWluZGV4LWluZm8gJiYKLQllY2hvID5leHBlY3Qubm9zdWIgJ1wnJ2RpZmYgLS1jYyBzdWIKKwllY2hvID5leHBlY3Qubm9zdWIgImRpZmYgLS1jYyBzdWIKIGluZGV4IDJmZmZmZmYsM2ZmZmZmZi4uMDAwMDAwMAogLS0tIGEvc3ViCiArKysgYi9zdWIKIEBAQCAtMSwxIC0xLDEgKzEsMSBAQEAKLS0gU3VicHJvamVjdCBjb21taXQgMmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZgotIC1TdWJwcm9qZWN0IGNvbW1pdCAzZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmCi0rK1N1YnByb2plY3QgY29tbWl0IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnXCcnICYmCistIFN1YnByb2plY3QgY29tbWl0IDIkYworIC1TdWJwcm9qZWN0IGNvbW1pdCAzJGMKKysrU3VicHJvamVjdCBjb21taXQgJFpFUk9fT0lEIiAmJgogCiAJaGg9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCiAJc2VkIC1lICJzLyRaRVJPX09JRC8kaGgvIiBleHBlY3Qubm9zdWIgPmV4cGVjdC53aXRoc3ViCmRpZmYgLS1naXQgYS90L3Q0MDM0LWRpZmYtd29yZHMuc2ggYi90L3Q0MDM0LWRpZmYtd29yZHMuc2gKaW5kZXggOTEyZGY5MS4uZmIxNDVhYSAxMDA3NTUKLS0tIGEvdC90NDAzNC1kaWZmLXdvcmRzLnNoCisrKyBiL3QvdDQwMzQtZGlmZi13b3Jkcy5zaApAQCAtMTksOSArMTksMTEgQEAKIAogCWFlZmYgPSBhZWZmICogKCBhYWEgKQogRU9GCi1jYXQgPmV4cGVjdC5sZXR0ZXItcnVucy1hcmUtd29yZHMgPDwtXEVPRgorcHJlPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0ICQoZ2l0IGhhc2gtb2JqZWN0IHByZS5zaW1wbGUpKQorcG9zdD0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCAkKGdpdCBoYXNoLW9iamVjdCBwb3N0LnNpbXBsZSkpCitjYXQgPmV4cGVjdC5sZXR0ZXItcnVucy1hcmUtd29yZHMgPDwtRU9GCiAJPEJPTEQ+ZGlmZiAtLWdpdCBhL3ByZSBiL3Bvc3Q8UkVTRVQ+Ci0JPEJPTEQ+aW5kZXggMzMwYjA0Zi4uNWVkOGVmZiAxMDA2NDQ8UkVTRVQ+CisJPEJPTEQ+aW5kZXggJHByZS4uJHBvc3QgMTAwNjQ0PFJFU0VUPgogCTxCT0xEPi0tLSBhL3ByZTxSRVNFVD4KIAk8Qk9MRD4rKysgYi9wb3N0PFJFU0VUPgogCTxDWUFOPkBAIC0xLDMgKzEsNyBAQDxSRVNFVD4KQEAgLTMzLDkgKzM1LDkgQEAKIAogCTxHUkVFTj5hZWZmID0gYWVmZiAqICggYWFhPFJFU0VUPiApCiBFT0YKLWNhdCA+ZXhwZWN0Lm5vbi13aGl0ZXNwYWNlLWlzLXdvcmQgPDwtXEVPRgorY2F0ID5leHBlY3Qubm9uLXdoaXRlc3BhY2UtaXMtd29yZCA8PC1FT0YKIAk8Qk9MRD5kaWZmIC0tZ2l0IGEvcHJlIGIvcG9zdDxSRVNFVD4KLQk8Qk9MRD5pbmRleCAzMzBiMDRmLi41ZWQ4ZWZmIDEwMDY0NDxSRVNFVD4KKwk8Qk9MRD5pbmRleCAkcHJlLi4kcG9zdCAxMDA2NDQ8UkVTRVQ+CiAJPEJPTEQ+LS0tIGEvcHJlPFJFU0VUPgogCTxCT0xEPisrKyBiL3Bvc3Q8UkVTRVQ+CiAJPENZQU4+QEAgLTEsMyArMSw3IEBAPFJFU0VUPgpAQCAtNDksOSArNTEsMTIgQEAKIEVPRgogCiB3b3JkX2RpZmYgKCkgeworCXByZT0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCAkKGdpdCBoYXNoLW9iamVjdCBwcmUpKSAmJgorCXBvc3Q9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgJChnaXQgaGFzaC1vYmplY3QgcG9zdCkpICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGRpZmYgLS1uby1pbmRleCAiJEAiIHByZSBwb3N0ID5vdXRwdXQgJiYKIAl0ZXN0X2RlY29kZV9jb2xvciA8b3V0cHV0ID5vdXRwdXQuZGVjcnlwdGVkICYmCi0JdGVzdF9jbXAgZXhwZWN0IG91dHB1dC5kZWNyeXB0ZWQKKwlzZWQgLWUgIjJzL2luZGV4IFteIF0qL2luZGV4ICRwcmUuLiRwb3N0LyIgZXhwZWN0ID5leHBlY3RlZAorCXRlc3RfY21wIGV4cGVjdGVkIG91dHB1dC5kZWNyeXB0ZWQKIH0KIAogdGVzdF9sYW5ndWFnZV9kcml2ZXIgKCkgewpAQCAtNzcsOSArODIsOSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd3b3JkIGRpZmYgd2l0aCBydW5zIG9mIHdoaXRlc3BhY2UnICcKLQljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCiAJCTxCT0xEPmRpZmYgLS1naXQgYS9wcmUgYi9wb3N0PFJFU0VUPgotCQk8Qk9MRD5pbmRleCAzMzBiMDRmLi41ZWQ4ZWZmIDEwMDY0NDxSRVNFVD4KKwkJPEJPTEQ+aW5kZXggJHByZS4uJHBvc3QgMTAwNjQ0PFJFU0VUPgogCQk8Qk9MRD4tLS0gYS9wcmU8UkVTRVQ+CiAJCTxCT0xEPisrKyBiL3Bvc3Q8UkVTRVQ+CiAJCTxDWUFOPkBAIC0xLDMgKzEsNyBAQDxSRVNFVD4KQEAgLTk3LDkgKzEwMiw5IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0td29yZC1kaWZmPXBvcmNlbGFpbicgJwotCXNlZCAncy8jLiokLy8nID5leHBlY3QgPDwtXEVPRiAmJgorCXNlZCAncy8jLiokLy8nID5leHBlY3QgPDwtRU9GICYmCiAJCWRpZmYgLS1naXQgYS9wcmUgYi9wb3N0Ci0JCWluZGV4IDMzMGIwNGYuLjVlZDhlZmYgMTAwNjQ0CisJCWluZGV4ICRwcmUuLiRwb3N0IDEwMDY0NAogCQktLS0gYS9wcmUKIAkJKysrIGIvcG9zdAogCQlAQCAtMSwzICsxLDcgQEAKQEAgLTEyMSw5ICsxMjYsOSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXdvcmQtZGlmZj1wbGFpbicgJwotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKIAkJZGlmZiAtLWdpdCBhL3ByZSBiL3Bvc3QKLQkJaW5kZXggMzMwYjA0Zi4uNWVkOGVmZiAxMDA2NDQKKwkJaW5kZXggJHByZS4uJHBvc3QgMTAwNjQ0CiAJCS0tLSBhL3ByZQogCQkrKysgYi9wb3N0CiAJCUBAIC0xLDMgKzEsNyBAQApAQCAtMTQwLDkgKzE0NSw5IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0td29yZC1kaWZmPXBsYWluIC0tY29sb3InICcKLQljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCiAJCTxCT0xEPmRpZmYgLS1naXQgYS9wcmUgYi9wb3N0PFJFU0VUPgotCQk8Qk9MRD5pbmRleCAzMzBiMDRmLi41ZWQ4ZWZmIDEwMDY0NDxSRVNFVD4KKwkJPEJPTEQ+aW5kZXggJHByZS4uJHBvc3QgMTAwNjQ0PFJFU0VUPgogCQk8Qk9MRD4tLS0gYS9wcmU8UkVTRVQ+CiAJCTxCT0xEPisrKyBiL3Bvc3Q8UkVTRVQ+CiAJCTxDWUFOPkBAIC0xLDMgKzEsNyBAQDxSRVNFVD4KQEAgLTE1OCw5ICsxNjMsOSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd3b3JkIGRpZmYgd2l0aG91dCBjb250ZXh0JyAnCi0JY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgogCQk8Qk9MRD5kaWZmIC0tZ2l0IGEvcHJlIGIvcG9zdDxSRVNFVD4KLQkJPEJPTEQ+aW5kZXggMzMwYjA0Zi4uNWVkOGVmZiAxMDA2NDQ8UkVTRVQ+CisJCTxCT0xEPmluZGV4ICRwcmUuLiRwb3N0IDEwMDY0NDxSRVNFVD4KIAkJPEJPTEQ+LS0tIGEvcHJlPFJFU0VUPgogCQk8Qk9MRD4rKysgYi9wb3N0PFJFU0VUPgogCQk8Q1lBTj5AQCAtMSArMSBAQDxSRVNFVD4KQEAgLTIwNyw5ICsyMTIsOSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb21tYW5kLWxpbmUgb3ZlcnJpZGVzIGNvbmZpZzogLS13b3JkLWRpZmYtcmVnZXgnICcKLQljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCiAJCTxCT0xEPmRpZmYgLS1naXQgYS9wcmUgYi9wb3N0PFJFU0VUPgotCQk8Qk9MRD5pbmRleCAzMzBiMDRmLi41ZWQ4ZWZmIDEwMDY0NDxSRVNFVD4KKwkJPEJPTEQ+aW5kZXggJHByZS4uJHBvc3QgMTAwNjQ0PFJFU0VUPgogCQk8Qk9MRD4tLS0gYS9wcmU8UkVTRVQ+CiAJCTxCT0xEPisrKyBiL3Bvc3Q8UkVTRVQ+CiAJCTxDWUFOPkBAIC0xLDMgKzEsNyBAQDxSRVNFVD4KQEAgLTIzNCw5ICsyMzksOSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd1c2UgY29uZmlndXJlZCByZWdleCcgJwotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKIAkJPEJPTEQ+ZGlmZiAtLWdpdCBhL3ByZSBiL3Bvc3Q8UkVTRVQ+Ci0JCTxCT0xEPmluZGV4IDMzMGIwNGYuLjVlZDhlZmYgMTAwNjQ0PFJFU0VUPgorCQk8Qk9MRD5pbmRleCAkcHJlLi4kcG9zdCAxMDA2NDQ8UkVTRVQ+CiAJCTxCT0xEPi0tLSBhL3ByZTxSRVNFVD4KIAkJPEJPTEQ+KysrIGIvcG9zdDxSRVNFVD4KIAkJPENZQU4+QEAgLTEsMyArMSw3IEBAPFJFU0VUPgpAQCAtMjU0LDkgKzI1OSwxMSBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdCBwYXJzaW5nIHdvcmRzIGZvciBuZXdsaW5lJyAnCiAJZWNobyAiYWFhIChhYWEpIiA+cHJlICYmCiAJZWNobyAiYWFhIChhYWEpIGFhYSIgPnBvc3QgJiYKLQljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJcHJlPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0ICQoZ2l0IGhhc2gtb2JqZWN0IHByZSkpICYmCisJcG9zdD0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCAkKGdpdCBoYXNoLW9iamVjdCBwb3N0KSkgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKIAkJPEJPTEQ+ZGlmZiAtLWdpdCBhL3ByZSBiL3Bvc3Q8UkVTRVQ+Ci0JCTxCT0xEPmluZGV4IGMyOTQ1M2IuLmJlMjJmMzcgMTAwNjQ0PFJFU0VUPgorCQk8Qk9MRD5pbmRleCAkcHJlLi4kcG9zdCAxMDA2NDQ8UkVTRVQ+CiAJCTxCT0xEPi0tLSBhL3ByZTxSRVNFVD4KIAkJPEJPTEQ+KysrIGIvcG9zdDxSRVNFVD4KIAkJPENZQU4+QEAgLTEgKzEgQEA8UkVTRVQ+CkBAIC0yNjgsOSArMjc1LDExIEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd0ZXN0IHdoZW4gd29yZHMgYXJlIG9ubHkgcmVtb3ZlZCBhdCB0aGUgZW5kJyAnCiAJZWNobyAiKDoiID5wcmUgJiYKIAllY2hvICIoIiA+cG9zdCAmJgotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlwcmU9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgJChnaXQgaGFzaC1vYmplY3QgcHJlKSkgJiYKKwlwb3N0PSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0ICQoZ2l0IGhhc2gtb2JqZWN0IHBvc3QpKSAmJgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgogCQk8Qk9MRD5kaWZmIC0tZ2l0IGEvcHJlIGIvcG9zdDxSRVNFVD4KLQkJPEJPTEQ+aW5kZXggMjg5Y2I5ZC4uMmQwNmYzNyAxMDA2NDQ8UkVTRVQ+CisJCTxCT0xEPmluZGV4ICRwcmUuLiRwb3N0IDEwMDY0NDxSRVNFVD4KIAkJPEJPTEQ+LS0tIGEvcHJlPFJFU0VUPgogCQk8Qk9MRD4rKysgYi9wb3N0PFJFU0VUPgogCQk8Q1lBTj5AQCAtMSArMSBAQDxSRVNFVD4KQEAgLTI4Miw5ICsyOTEsMTEgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0td29yZC1kaWZmPW5vbmUnICcKIAllY2hvICIoOiIgPnByZSAmJgogCWVjaG8gIigiID5wb3N0ICYmCi0JY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCXByZT0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCAkKGdpdCBoYXNoLW9iamVjdCBwcmUpKSAmJgorCXBvc3Q9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgJChnaXQgaGFzaC1vYmplY3QgcG9zdCkpICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCiAJCWRpZmYgLS1naXQgYS9wcmUgYi9wb3N0Ci0JCWluZGV4IDI4OWNiOWQuLjJkMDZmMzcgMTAwNjQ0CisJCWluZGV4ICRwcmUuLiRwb3N0IDEwMDY0NAogCQktLS0gYS9wcmUKIAkJKysrIGIvcG9zdAogCQlAQCAtMSArMSBAQApAQCAtMzAzLDYgKzMxNCw3IEBACiB0ZXN0X2xhbmd1YWdlX2RyaXZlciBjcHAKIHRlc3RfbGFuZ3VhZ2VfZHJpdmVyIGNzaGFycAogdGVzdF9sYW5ndWFnZV9kcml2ZXIgY3NzCit0ZXN0X2xhbmd1YWdlX2RyaXZlciBkdHMKIHRlc3RfbGFuZ3VhZ2VfZHJpdmVyIGZvcnRyYW4KIHRlc3RfbGFuZ3VhZ2VfZHJpdmVyIGh0bWwKIHRlc3RfbGFuZ3VhZ2VfZHJpdmVyIGphdmEKQEAgLTMxNiwxNiArMzI4LDYgQEAKIHRlc3RfbGFuZ3VhZ2VfZHJpdmVyIHRleAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd3b3JkLWRpZmYgd2l0aCBkaWZmLnNiZScgJwotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKLQlkaWZmIC0tZ2l0IGEvcHJlIGIvcG9zdAotCWluZGV4IGExYTUzYjUuLmJjOGZlNmQgMTAwNjQ0Ci0JLS0tIGEvcHJlCi0JKysrIGIvcG9zdAotCUBAIC0xLDMgKzEsMyBAQAotCWEKLQotCVstYi1deytjK30KLQlFT0YKIAljYXQgPnByZSA8PC1cRU9GICYmCiAJYQogCkBAIC0zMzYsMjEgKzMzOCwzNSBAQAogCiAJYwogCUVPRgorCXByZT0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCAkKGdpdCBoYXNoLW9iamVjdCBwcmUpKSAmJgorCXBvc3Q9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgJChnaXQgaGFzaC1vYmplY3QgcG9zdCkpICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJZGlmZiAtLWdpdCBhL3ByZSBiL3Bvc3QKKwlpbmRleCAkcHJlLi4kcG9zdCAxMDA2NDQKKwktLS0gYS9wcmUKKwkrKysgYi9wb3N0CisJQEAgLTEsMyArMSwzIEBACisJYQorCisJWy1iLV17K2MrfQorCUVPRgogCXRlc3RfY29uZmlnIGRpZmYuc3VwcHJlc3MtYmxhbmstZW1wdHkgdHJ1ZSAmJgogCXdvcmRfZGlmZiAtLXdvcmQtZGlmZj1wbGFpbgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd3b3JkLWRpZmYgd2l0aCBubyBuZXdsaW5lIGF0IEVPRicgJwotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlwcmludGYgIiVzIiAiYSBhIGEgYSBhIiA+cHJlICYmCisJcHJpbnRmICIlcyIgImEgYSBhYiBhIGEiID5wb3N0ICYmCisJcHJlPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0ICQoZ2l0IGhhc2gtb2JqZWN0IHByZSkpICYmCisJcG9zdD0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCAkKGdpdCBoYXNoLW9iamVjdCBwb3N0KSkgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKIAlkaWZmIC0tZ2l0IGEvcHJlIGIvcG9zdAotCWluZGV4IDdiZjMxNmUuLjNkZDAzMDMgMTAwNjQ0CisJaW5kZXggJHByZS4uJHBvc3QgMTAwNjQ0CiAJLS0tIGEvcHJlCiAJKysrIGIvcG9zdAogCUBAIC0xICsxIEBACiAJYSBhIFstYS1deythYit9IGEgYQogCUVPRgotCXByaW50ZiAiJXMiICJhIGEgYSBhIGEiID5wcmUgJiYKLQlwcmludGYgIiVzIiAiYSBhIGFiIGEgYSIgPnBvc3QgJiYKIAl3b3JkX2RpZmYgLS13b3JkLWRpZmY9cGxhaW4KICcKIApkaWZmIC0tZ2l0IGEvdC90NDAzNC9kdHMvZXhwZWN0IGIvdC90NDAzNC9kdHMvZXhwZWN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU2MGZjOTkKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MDM0L2R0cy9leHBlY3QKQEAgLTAsMCArMSwzNyBAQAorPEJPTEQ+ZGlmZiAtLWdpdCBhL3ByZSBiL3Bvc3Q8UkVTRVQ+Cis8Qk9MRD5pbmRleCBiNmE5MDUxLi43ODAzYWVlIDEwMDY0NDxSRVNFVD4KKzxCT0xEPi0tLSBhL3ByZTxSRVNFVD4KKzxCT0xEPisrKyBiL3Bvc3Q8UkVTRVQ+Cis8Q1lBTj5AQCAtMSwzMiArMSwzMiBAQDxSRVNFVD4KKy8gezxSRVNFVD4KKwk8UkVEPnRoaXNfaGFuZGxlPFJFU0VUPjxHUkVFTj5IQU5ETEVfMjxSRVNFVD46IDxSRUQ+bm9kZTxSRVNFVD48R1JFRU4+bmV3LW5vZGU8UkVTRVQ+QDxSRUQ+ZjAwPFJFU0VUPjxHUkVFTj5lZWRhPFJFU0VUPiB7CisJCWNvbXBhdGlibGUgPSAiPFJFRD5teWRldjxSRVNFVD48R1JFRU4+dmVuZG9yLGNvbXBhdDxSRVNFVD4iOworCQlzdHJpbmctcHJvcCA9IDxSRUQ+c3RhcnQ8UkVTRVQ+PEdSRUVOPmVuZDxSRVNFVD46ICJoZWxsbyA8UkVEPndvcmxkITxSRVNFVD48R1JFRU4+d29ybGQ/PFJFU0VUPiIgPFJFRD5lbmQ8UkVTRVQ+PEdSRUVOPnN0YXJ0PFJFU0VUPjogOworCQk8UkVEPiNzaXplLWNlbGxzPFJFU0VUPjxHUkVFTj4jYWRkcmVzcy1jZWxsczxSRVNFVD4gPSA8PFJFRD4wKzA8UkVTRVQ+PEdSRUVOPjArNDA8UkVTRVQ+PjsKKwkJcmVnID0gPDxSRUQ+MHhmMDA8UkVTRVQ+PEdSRUVOPjB4ZWVkYTxSRVNFVD4+OworCQlwcm9wID0gPDxHUkVFTj4oPFJFU0VUPjE8R1JFRU4+KTxSRVNFVD4+OworCQlwcm9wID0gPDxHUkVFTj4oPFJFU0VUPi0xZTEwPEdSRUVOPik8UkVTRVQ+PjsKKwkJcHJvcCA9IDwoITxSRUQ+MzxSRVNFVD48R1JFRU4+MTxSRVNFVD4pPjsKKwkJcHJvcCA9IDwofjxSRUQ+MzxSRVNFVD48R1JFRU4+MTxSRVNFVD4pPjsKKwkJcHJvcCA9IDwoPFJFRD4zPFJFU0VUPjxHUkVFTj4xPFJFU0VUPio8UkVEPjQ8UkVTRVQ+PEdSRUVOPjI8UkVTRVQ+KT47CisJCXByb3AgPSA8KDxSRUQ+MzxSRVNFVD48R1JFRU4+MTxSRVNFVD4mPFJFRD40PFJFU0VUPjxHUkVFTj4yPFJFU0VUPik+OworCQlwcm9wID0gPCg8UkVEPjM8UkVTRVQ+PEdSRUVOPjE8UkVTRVQ+KjxSRUQ+NDxSRVNFVD48R1JFRU4+MjxSRVNFVD4pPjsKKwkJcHJvcCA9IDwoPFJFRD4zPFJFU0VUPjxHUkVFTj4xPFJFU0VUPi88UkVEPjQ8UkVTRVQ+PEdSRUVOPjI8UkVTRVQ+KT47CisJCXByb3AgPSA8KDxSRUQ+MzxSRVNFVD48R1JFRU4+MTxSRVNFVD4lPFJFRD40PFJFU0VUPjxHUkVFTj4yPFJFU0VUPik+OworCQlwcm9wID0gPCg8UkVEPjMrNDxSRVNFVD48R1JFRU4+MSsyPFJFU0VUPik+OworCQlwcm9wID0gPCg8UkVEPjMtNDxSRVNFVD48R1JFRU4+MS0yPFJFU0VUPik+OworCQlwcm9wID0gL2JpdHMvIDxSRUQ+NjQ8UkVTRVQ+PEdSRUVOPjMyPFJFU0VUPiA8KDxSRUQ+MzxSRVNFVD48R1JFRU4+MTxSRVNFVD48PDxSRUQ+NDxSRVNFVD48R1JFRU4+MjxSRVNFVD4pPjsKKwkJcHJvcCA9IDwoPFJFRD4zPFJFU0VUPjxHUkVFTj4xPFJFU0VUPj4+PFJFRD40PFJFU0VUPjxHUkVFTj4yPFJFU0VUPik+OworCQlwcm9wID0gPCg8UkVEPjM8UkVTRVQ+PEdSRUVOPjE8UkVTRVQ+JjxSRUQ+NDxSRVNFVD48R1JFRU4+MjxSRVNFVD4pPjsKKwkJcHJvcCA9IDwoPFJFRD4zPFJFU0VUPjxHUkVFTj4xPFJFU0VUPl48UkVEPjQ8UkVTRVQ+PEdSRUVOPjI8UkVTRVQ+KT47CisJCXByb3AgPSA8KDxSRUQ+MzxSRVNFVD48R1JFRU4+MTxSRVNFVD58PFJFRD40PFJFU0VUPjxHUkVFTj4yPFJFU0VUPik+OworCQlwcm9wID0gPCg8UkVEPjM8UkVTRVQ+PEdSRUVOPjE8UkVTRVQ+JiY8UkVEPjQ8UkVTRVQ+PEdSRUVOPjI8UkVTRVQ+KT47CisJCXByb3AgPSA8KDxSRUQ+MzxSRVNFVD48R1JFRU4+MTxSRVNFVD58fDxSRUQ+NDxSRVNFVD48R1JFRU4+MjxSRVNFVD4pPjsKKwkJcHJvcCA9IDwoPFJFRD40PzU8UkVTRVQ+PEdSRUVOPjE/MjxSRVNFVD46Myk+OworCQlsaXN0ID0gPCY8UkVEPnRoaXNfaGFuZGxlPFJFU0VUPjxHUkVFTj5IQU5ETEVfMjxSRVNFVD4+LCA8MCAwIDAgPFJFRD4wPFJFU0VUPjxHUkVFTj4xPFJFU0VUPj47CisJfTs8UkVTRVQ+CisKKwkmPFJFRD5waGFuZGxlPFJFU0VUPjxHUkVFTj5waGFuZGxlMjxSRVNFVD4geworCQk8UkVEPnByZS1waGFuZGxlPFJFU0VUPjxHUkVFTj5wcm9wX2hhbmRsZTxSRVNFVD4gPSA8JjxSRUQ+dGhpc19oYW5kbGU8UkVTRVQ+PEdSRUVOPkhBTkRMRV8yPFJFU0VUPj47CisJfTs8UkVTRVQ+Cit9OzxSRVNFVD4KZGlmZiAtLWdpdCBhL3QvdDQwMzQvZHRzL3Bvc3QgYi90L3Q0MDM0L2R0cy9wb3N0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc4MDNhZWUKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MDM0L2R0cy9wb3N0CkBAIC0wLDAgKzEsMzIgQEAKKy8geworCUhBTkRMRV8yOiBuZXctbm9kZUBlZWRhIHsKKwkJY29tcGF0aWJsZSA9ICJ2ZW5kb3IsY29tcGF0IjsKKwkJc3RyaW5nLXByb3AgPSBlbmQ6ICJoZWxsbyB3b3JsZD8iIHN0YXJ0OiA7CisJCSNhZGRyZXNzLWNlbGxzID0gPDArNDA+OworCQlyZWcgPSA8MHhlZWRhPjsKKwkJcHJvcCA9IDwoMSk+OworCQlwcm9wID0gPCgtMWUxMCk+OworCQlwcm9wID0gPCghMSk+OworCQlwcm9wID0gPCh+MSk+OworCQlwcm9wID0gPCgxKjIpPjsKKwkJcHJvcCA9IDwoMSYyKT47CisJCXByb3AgPSA8KDEqMik+OworCQlwcm9wID0gPCgxLzIpPjsKKwkJcHJvcCA9IDwoMSUyKT47CisJCXByb3AgPSA8KDErMik+OworCQlwcm9wID0gPCgxLTIpPjsKKwkJcHJvcCA9IC9iaXRzLyAzMiA8KDE8PDIpPjsKKwkJcHJvcCA9IDwoMT4+Mik+OworCQlwcm9wID0gPCgxJjIpPjsKKwkJcHJvcCA9IDwoMV4yKT47CisJCXByb3AgPSA8KDF8Mik+OworCQlwcm9wID0gPCgxJiYyKT47CisJCXByb3AgPSA8KDF8fDIpPjsKKwkJcHJvcCA9IDwoMT8yOjMpPjsKKwkJbGlzdCA9IDwmSEFORExFXzI+LCA8MCAwIDAgMT47CisJfTsKKworCSZwaGFuZGxlMiB7CisJCXByb3BfaGFuZGxlID0gPCZIQU5ETEVfMj47CisJfTsKK307CmRpZmYgLS1naXQgYS90L3Q0MDM0L2R0cy9wcmUgYi90L3Q0MDM0L2R0cy9wcmUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjZhOTA1MQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQwMzQvZHRzL3ByZQpAQCAtMCwwICsxLDMyIEBACisvIHsKKwl0aGlzX2hhbmRsZTogbm9kZUBmMDAgeworCQljb21wYXRpYmxlID0gIm15ZGV2IjsKKwkJc3RyaW5nLXByb3AgPSBzdGFydDogImhlbGxvIHdvcmxkISIgZW5kOiA7CisJCSNzaXplLWNlbGxzID0gPDArMD47CisJCXJlZyA9IDwweGYwMD47CisJCXByb3AgPSA8MT47CisJCXByb3AgPSA8LTFlMTA+OworCQlwcm9wID0gPCghMyk+OworCQlwcm9wID0gPCh+Myk+OworCQlwcm9wID0gPCgzKjQpPjsKKwkJcHJvcCA9IDwoMyY0KT47CisJCXByb3AgPSA8KDMqNCk+OworCQlwcm9wID0gPCgzLzQpPjsKKwkJcHJvcCA9IDwoMyU0KT47CisJCXByb3AgPSA8KDMrNCk+OworCQlwcm9wID0gPCgzLTQpPjsKKwkJcHJvcCA9IC9iaXRzLyA2NCA8KDM8PDQpPjsKKwkJcHJvcCA9IDwoMz4+NCk+OworCQlwcm9wID0gPCgzJjQpPjsKKwkJcHJvcCA9IDwoM140KT47CisJCXByb3AgPSA8KDN8NCk+OworCQlwcm9wID0gPCgzJiY0KT47CisJCXByb3AgPSA8KDN8fDQpPjsKKwkJcHJvcCA9IDwoND81OjMpPjsKKwkJbGlzdCA9IDwmdGhpc19oYW5kbGU+LCA8MCAwIDAgMD47CisJfTsKKworCSZwaGFuZGxlIHsKKwkJcHJlLXBoYW5kbGUgPSA8JnRoaXNfaGFuZGxlPjsKKwl9OworfTsKZGlmZiAtLWdpdCBhL3QvdDQwMzgtZGlmZi1jb21iaW5lZC5zaCBiL3QvdDQwMzgtZGlmZi1jb21iaW5lZC5zaAppbmRleCBlMjgyNGQzLi45NDY4MDgzIDEwMDc1NQotLS0gYS90L3Q0MDM4LWRpZmYtY29tYmluZWQuc2gKKysrIGIvdC90NDAzOC1kaWZmLWNvbWJpbmVkLnNoCkBAIC0zNTQsNyArMzU0LDcgQEAKICcKIAogIyBUZXN0IGZvciBhIGJ1ZyByZXBvcnRlZCBhdAotIyBodHRwczovL3B1YmxpYy1pbmJveC5vcmcvZ2l0LzIwMTMwNTE1MTQzNTA4LkdPMjU3NDJAbG9naW4uZHJzbnVnZ2xlcy5zdGRlcnIubmwvCisjIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC8yMDEzMDUxNTE0MzUwOC5HTzI1NzQyQGxvZ2luLmRyc251Z2dsZXMuc3RkZXJyLm5sLwogIyB3aGVyZSBhIGRlbGV0ZSBsaW5lcyB3ZXJlIG1pc3NpbmcgZnJvbSBjb21iaW5lZCBkaWZmIG91dHB1dCB3aGVuIHRoZXkKICMgb2NjdXJyZWQgZXhhY3RseSBiZWZvcmUgdGhlIGNvbnRleHQgbGluZXMgb2YgYSBsYXRlciBjaGFuZ2UuCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb21iaW5lIGRpZmYgbWlzc2luZyBkZWxldGUgYnVnJyAnCkBAIC00MzUsNCArNDM1LDk5IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBmb3IgLS1jb21iaW5lZC1hbGwtcGF0aHMnICcKKwlnaXQgYnJhbmNoIHNpZGUxYyAmJgorCWdpdCBicmFuY2ggc2lkZTJjICYmCisJZ2l0IGNoZWNrb3V0IHNpZGUxYyAmJgorCXRlc3Rfc2VxIDEgMTAgPmZpbGVuYW1lLXNpZGUxYyAmJgorCXNpZGUxY2Y9JChnaXQgaGFzaC1vYmplY3QgZmlsZW5hbWUtc2lkZTFjKSAmJgorCWdpdCBhZGQgZmlsZW5hbWUtc2lkZTFjICYmCisJZ2l0IGNvbW1pdCAtbSB3aXRoICYmCisJZ2l0IGNoZWNrb3V0IHNpZGUyYyAmJgorCXRlc3Rfc2VxIDEgOSA+ZmlsZW5hbWUtc2lkZTJjICYmCisJZWNobyB0ZW4gPj5maWxlbmFtZS1zaWRlMmMgJiYKKwlzaWRlMmNmPSQoZ2l0IGhhc2gtb2JqZWN0IGZpbGVuYW1lLXNpZGUyYykgJiYKKwlnaXQgYWRkIGZpbGVuYW1lLXNpZGUyYyAmJgorCWdpdCBjb21taXQgLW0gaWFtICYmCisJZ2l0IGNoZWNrb3V0IC1iIG1lcmdlcnkgc2lkZTFjICYmCisJZ2l0IG1lcmdlIC0tbm8tY29tbWl0IHNpZGUyYyAmJgorCWdpdCBybSBmaWxlbmFtZS1zaWRlMWMgJiYKKwllY2hvIGVsZXZlbiA+PmZpbGVuYW1lLXNpZGUyYyAmJgorCWdpdCBtdiBmaWxlbmFtZS1zaWRlMmMgZmlsZW5hbWUtbWVyZ2VkICYmCisJbWVyZ2VkZj0kKGdpdCBoYXNoLW9iamVjdCBmaWxlbmFtZS1tZXJnZWQpICYmCisJZ2l0IGFkZCBmaWxlbmFtZS1tZXJnZWQgJiYKKwlnaXQgY29tbWl0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tY29tYmluZWQtYWxsLXBhdGhzIGFuZCAtLXJhdycgJworCWNhdCA8PC1FT0YgPmV4cGVjdCAmJgorCTo6MTAwNjQ0IDEwMDY0NCAxMDA2NDQgJHNpZGUxY2YgJHNpZGUyY2YgJG1lcmdlZGYgUlIJZmlsZW5hbWUtc2lkZTFjCWZpbGVuYW1lLXNpZGUyYwlmaWxlbmFtZS1tZXJnZWQKKwlFT0YKKwlnaXQgZGlmZi10cmVlIC1jIC1NIC0tcmF3IC0tY29tYmluZWQtYWxsLXBhdGhzIEhFQUQgPmFjdHVhbC50bXAgJiYKKwlzZWQgMWQgPGFjdHVhbC50bXAgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1jb21iaW5lZC1hbGwtcGF0aHMgYW5kIC0tY2MnICcKKwljYXQgPDwtXEVPRiA+ZXhwZWN0ICYmCisJLS0tIGEvZmlsZW5hbWUtc2lkZTFjCisJLS0tIGEvZmlsZW5hbWUtc2lkZTJjCisJKysrIGIvZmlsZW5hbWUtbWVyZ2VkCisJRU9GCisJZ2l0IGRpZmYtdHJlZSAtLWNjIC1NIC0tY29tYmluZWQtYWxsLXBhdGhzIEhFQUQgPmFjdHVhbC50bXAgJiYKKwlncmVwIF5bLStdWy0rXVstK10gPGFjdHVhbC50bXAgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBGVU5OWU5BTUVTICdzZXR1cCBmb3IgLS1jb21iaW5lZC1hbGwtcGF0aHMgd2l0aCBmdW5ueSBuYW1lcycgJworCWdpdCBicmFuY2ggc2lkZTFkICYmCisJZ2l0IGJyYW5jaCBzaWRlMmQgJiYKKwlnaXQgY2hlY2tvdXQgc2lkZTFkICYmCisJdGVzdF9zZXEgMSAxMCA+IiQocHJpbnRmICJmaWxlXHR3aXRoXHR0YWJzIikiICYmCisJZ2l0IGFkZCBmaWxlKiAmJgorCXNpZGUxZGY9JChnaXQgaGFzaC1vYmplY3QgKnRhYnMpICYmCisJZ2l0IGNvbW1pdCAtbSB3aXRoICYmCisJZ2l0IGNoZWNrb3V0IHNpZGUyZCAmJgorCXRlc3Rfc2VxIDEgOSA+IiQocHJpbnRmICJpXHRhbVx0dGFiYmVkIikiICYmCisJZWNobyB0ZW4gPj4iJChwcmludGYgImlcdGFtXHR0YWJiZWQiKSIgJiYKKwlnaXQgYWRkICp0YWJiZWQgJiYKKwlzaWRlMmRmPSQoZ2l0IGhhc2gtb2JqZWN0ICp0YWJiZWQpICYmCisJZ2l0IGNvbW1pdCAtbSBpYW0gJiYKKwlnaXQgY2hlY2tvdXQgLWIgZnVubnktbmFtZXMtbWVyZ2VyeSBzaWRlMWQgJiYKKwlnaXQgbWVyZ2UgLS1uby1jb21taXQgc2lkZTJkICYmCisJZ2l0IHJtICp0YWJzICYmCisJZWNobyBlbGV2ZW4gPj4iJChwcmludGYgImlcdGFtXHR0YWJiZWQiKSIgJiYKKwlnaXQgbXYgIiQocHJpbnRmICJpXHRhbVx0dGFiYmVkIikiICIkKHByaW50ZiAiZmlja2xlXHRuYW1pbmciKSIgJiYKKwlnaXQgYWRkIGZpY2tsZSogJiYKKwloZWFkZj0kKGdpdCBoYXNoLW9iamVjdCBmaWNrbGUqKSAmJgorCWdpdCBjb21taXQgJiYKKwloZWFkPSQoZ2l0IHJldi1wYXJzZSBIRUFEKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEZVTk5ZTkFNRVMgJy0tY29tYmluZWQtYWxsLXBhdGhzIGFuZCAtLXJhdyBhbmQgZnVubnkgbmFtZXMnICcKKwljYXQgPDwtRU9GID5leHBlY3QgJiYKKwk6OjEwMDY0NCAxMDA2NDQgMTAwNjQ0ICRzaWRlMWRmICRzaWRlMmRmICRoZWFkZiBSUgkiZmlsZVx0d2l0aFx0dGFicyIJImlcdGFtXHR0YWJiZWQiCSJmaWNrbGVcdG5hbWluZyIKKwlFT0YKKwlnaXQgZGlmZi10cmVlIC1jIC1NIC0tcmF3IC0tY29tYmluZWQtYWxsLXBhdGhzIEhFQUQgPmFjdHVhbC50bXAgJiYKKwlzZWQgMWQgPGFjdHVhbC50bXAgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBGVU5OWU5BTUVTICctLWNvbWJpbmVkLWFsbC1wYXRocyBhbmQgLS1yYXcgLWFuZCAteiBhbmQgZnVubnkgbmFtZXMnICcKKwlwcmludGYgIiRoZWFkXDA6OjEwMDY0NCAxMDA2NDQgMTAwNjQ0ICRzaWRlMWRmICRzaWRlMmRmICRoZWFkZiBSUlwwZmlsZVx0d2l0aFx0dGFic1wwaVx0YW1cdHRhYmJlZFwwZmlja2xlXHRuYW1pbmdcMCIgPmV4cGVjdCAmJgorCWdpdCBkaWZmLXRyZWUgLWMgLU0gLS1yYXcgLS1jb21iaW5lZC1hbGwtcGF0aHMgLXogSEVBRCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEZVTk5ZTkFNRVMgJy0tY29tYmluZWQtYWxsLXBhdGhzIGFuZCAtLWNjIGFuZCBmdW5ueSBuYW1lcycgJworCWNhdCA8PC1cRU9GID5leHBlY3QgJiYKKwktLS0gImEvZmlsZVx0d2l0aFx0dGFicyIKKwktLS0gImEvaVx0YW1cdHRhYmJlZCIKKwkrKysgImIvZmlja2xlXHRuYW1pbmciCisJRU9GCisJZ2l0IGRpZmYtdHJlZSAtLWNjIC1NIC0tY29tYmluZWQtYWxsLXBhdGhzIEhFQUQgPmFjdHVhbC50bXAgJiYKKwlncmVwIF5bLStdWy0rXVstK10gPGFjdHVhbC50bXAgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q0MDM5LWRpZmYtYXNzdW1lLXVuY2hhbmdlZC5zaCBiL3QvdDQwMzktZGlmZi1hc3N1bWUtdW5jaGFuZ2VkLnNoCmluZGV4IDUzYWM0NGIuLjBlYjAzMTQgMTAwNzU1Ci0tLSBhL3QvdDQwMzktZGlmZi1hc3N1bWUtdW5jaGFuZ2VkLnNoCisrKyBiL3QvdDQwMzktZGlmZi1hc3N1bWUtdW5jaGFuZ2VkLnNoCkBAIC0xMiw2ICsxMiw3IEBACiAJZ2l0IGNvbW1pdCAtbSB6ZXJvICYmCiAJZWNobyBvbmUgPiBvbmUgJiYKIAllY2hvIHR3byA+IHR3byAmJgorCWJsb2I9JChnaXQgaGFzaC1vYmplY3Qgb25lKSAmJgogCWdpdCBhZGQgb25lIHR3byAmJgogCWdpdCBjb21taXQgLW0gb25ldHdvICYmCiAJZ2l0IHVwZGF0ZS1pbmRleCAtLWFzc3VtZS11bmNoYW5nZWQgb25lICYmCkBAIC0yMCw3ICsyMSw3IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RpZmYtaW5kZXggZG9lcyBub3QgZXhhbWluZSBhc3N1bWUtdW5jaGFuZ2VkIGVudHJpZXMnICcKLQlnaXQgZGlmZi1pbmRleCBIRUFEXiAtLSBvbmUgfCBncmVwIC1xIDU2MjZhYmYwZjcyZTU4ZDdhMTUzMzY4YmE1N2RiNGM2NzNjMGUxNzEKKwlnaXQgZGlmZi1pbmRleCBIRUFEXiAtLSBvbmUgfCBncmVwIC1xICRibG9iCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RpZmYtZmlsZXMgZG9lcyBub3QgZXhhbWluZSBhc3N1bWUtdW5jaGFuZ2VkIGVudHJpZXMnICcKZGlmZiAtLWdpdCBhL3QvdDQwNDEtZGlmZi1zdWJtb2R1bGUtb3B0aW9uLnNoIGIvdC90NDA0MS1kaWZmLXN1Ym1vZHVsZS1vcHRpb24uc2gKaW5kZXggNjE5YmY5Ny4uZjg1MjEzNiAxMDA3NTUKLS0tIGEvdC90NDA0MS1kaWZmLXN1Ym1vZHVsZS1vcHRpb24uc2gKKysrIGIvdC90NDA0MS1kaWZmLXN1Ym1vZHVsZS1vcHRpb24uc2gKQEAgLTI4NCw3ICsyODQsNyBAQAogCXRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3VibW9kdWxlIGNvbnRhaW5zIHVudHJhY2tlZCBhbmQgbW9kaWZlZCBjb250ZW50JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWJtb2R1bGUgY29udGFpbnMgdW50cmFja2VkIGFuZCBtb2RpZmllZCBjb250ZW50JyAnCiAJZWNobyBuZXcgPiBzbTEvZm9vNiAmJgogCWdpdCBkaWZmLWluZGV4IC1wIC0tc3VibW9kdWxlPWxvZyBIRUFEID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgpAQCAtMjk0LDcgKzI5NCw3IEBACiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N1Ym1vZHVsZSBjb250YWlucyB1bnRyYWNrZWQgYW5kIG1vZGlmZWQgY29udGVudCAodW50cmFja2VkIGlnbm9yZWQpJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWJtb2R1bGUgY29udGFpbnMgdW50cmFja2VkIGFuZCBtb2RpZmllZCBjb250ZW50ICh1bnRyYWNrZWQgaWdub3JlZCknICcKIAllY2hvIG5ldyA+IHNtMS9mb282ICYmCiAJZ2l0IGRpZmYtaW5kZXggLXAgLS1pZ25vcmUtc3VibW9kdWxlcz11bnRyYWNrZWQgLS1zdWJtb2R1bGU9bG9nIEhFQUQgPmFjdHVhbCAmJgogCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCkBAIC0zMDMsMTkgKzMwMywxOSBAQAogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWJtb2R1bGUgY29udGFpbnMgdW50cmFja2VkIGFuZCBtb2RpZmVkIGNvbnRlbnQgKGRpcnR5IGlnbm9yZWQpJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWJtb2R1bGUgY29udGFpbnMgdW50cmFja2VkIGFuZCBtb2RpZmllZCBjb250ZW50IChkaXJ0eSBpZ25vcmVkKScgJwogCWVjaG8gbmV3ID4gc20xL2ZvbzYgJiYKIAlnaXQgZGlmZi1pbmRleCAtcCAtLWlnbm9yZS1zdWJtb2R1bGVzPWRpcnR5IC0tc3VibW9kdWxlPWxvZyBIRUFEID5hY3R1YWwgJiYKIAl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N1Ym1vZHVsZSBjb250YWlucyB1bnRyYWNrZWQgYW5kIG1vZGlmZWQgY29udGVudCAoYWxsIGlnbm9yZWQpJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWJtb2R1bGUgY29udGFpbnMgdW50cmFja2VkIGFuZCBtb2RpZmllZCBjb250ZW50IChhbGwgaWdub3JlZCknICcKIAllY2hvIG5ldyA+IHNtMS9mb282ICYmCiAJZ2l0IGRpZmYtaW5kZXggLXAgLS1pZ25vcmUtc3VibW9kdWxlcyAtLXN1Ym1vZHVsZT1sb2cgSEVBRCA+YWN0dWFsICYmCiAJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWJtb2R1bGUgY29udGFpbnMgbW9kaWZlZCBjb250ZW50JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWJtb2R1bGUgY29udGFpbnMgbW9kaWZpZWQgY29udGVudCcgJwogCXJtIC1mIHNtMS9uZXctZmlsZSAmJgogCWdpdCBkaWZmLWluZGV4IC1wIC0tc3VibW9kdWxlPWxvZyBIRUFEID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgpAQCAtMzY5LDcgKzM2OSw3IEBACiAJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdtb2RpZmllZCBzdWJtb2R1bGUgY29udGFpbnMgdW50cmFja2VkIGFuZCBtb2RpZmVkIGNvbnRlbnQnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmaWVkIHN1Ym1vZHVsZSBjb250YWlucyB1bnRyYWNrZWQgYW5kIG1vZGlmaWVkIGNvbnRlbnQnICcKIAllY2hvIG1vZGlmaWNhdGlvbiA+PiBzbTEvZm9vNiAmJgogCWdpdCBkaWZmLWluZGV4IC1wIC0tc3VibW9kdWxlPWxvZyBIRUFEID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgpAQCAtMzgxLDcgKzM4MSw3IEBACiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmaWVkIHN1Ym1vZHVsZSBjb250YWlucyB1bnRyYWNrZWQgYW5kIG1vZGlmZWQgY29udGVudCAodW50cmFja2VkIGlnbm9yZWQpJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdtb2RpZmllZCBzdWJtb2R1bGUgY29udGFpbnMgdW50cmFja2VkIGFuZCBtb2RpZmllZCBjb250ZW50ICh1bnRyYWNrZWQgaWdub3JlZCknICcKIAllY2hvIG1vZGlmaWNhdGlvbiA+PiBzbTEvZm9vNiAmJgogCWdpdCBkaWZmLWluZGV4IC1wIC0taWdub3JlLXN1Ym1vZHVsZXM9dW50cmFja2VkIC0tc3VibW9kdWxlPWxvZyBIRUFEID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgpAQCAtMzkyLDcgKzM5Miw3IEBACiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmaWVkIHN1Ym1vZHVsZSBjb250YWlucyB1bnRyYWNrZWQgYW5kIG1vZGlmZWQgY29udGVudCAoZGlydHkgaWdub3JlZCknICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmaWVkIHN1Ym1vZHVsZSBjb250YWlucyB1bnRyYWNrZWQgYW5kIG1vZGlmaWVkIGNvbnRlbnQgKGRpcnR5IGlnbm9yZWQpJyAnCiAJZWNobyBtb2RpZmljYXRpb24gPj4gc20xL2ZvbzYgJiYKIAlnaXQgZGlmZi1pbmRleCAtcCAtLWlnbm9yZS1zdWJtb2R1bGVzPWRpcnR5IC0tc3VibW9kdWxlPWxvZyBIRUFEID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgpAQCAtNDAyLDEzICs0MDIsMTMgQEAKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnbW9kaWZpZWQgc3VibW9kdWxlIGNvbnRhaW5zIHVudHJhY2tlZCBhbmQgbW9kaWZlZCBjb250ZW50IChhbGwgaWdub3JlZCknICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmaWVkIHN1Ym1vZHVsZSBjb250YWlucyB1bnRyYWNrZWQgYW5kIG1vZGlmaWVkIGNvbnRlbnQgKGFsbCBpZ25vcmVkKScgJwogCWVjaG8gbW9kaWZpY2F0aW9uID4+IHNtMS9mb282ICYmCiAJZ2l0IGRpZmYtaW5kZXggLXAgLS1pZ25vcmUtc3VibW9kdWxlcyAtLXN1Ym1vZHVsZT1sb2cgSEVBRCA+YWN0dWFsICYmCiAJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdtb2RpZmllZCBzdWJtb2R1bGUgY29udGFpbnMgbW9kaWZlZCBjb250ZW50JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdtb2RpZmllZCBzdWJtb2R1bGUgY29udGFpbnMgbW9kaWZpZWQgY29udGVudCcgJwogCXJtIC1mIHNtMS9uZXctZmlsZSAmJgogCWdpdCBkaWZmLWluZGV4IC1wIC0tc3VibW9kdWxlPWxvZyBIRUFEID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgpkaWZmIC0tZ2l0IGEvdC90NDA0NC1kaWZmLWluZGV4LXVuaXF1ZS1hYmJyZXYuc2ggYi90L3Q0MDQ0LWRpZmYtaW5kZXgtdW5pcXVlLWFiYnJldi5zaAppbmRleCA2NDc5MDVlLi40NzAxNzk2IDEwMDc1NQotLS0gYS90L3Q0MDQ0LWRpZmYtaW5kZXgtdW5pcXVlLWFiYnJldi5zaAorKysgYi90L3Q0MDQ0LWRpZmYtaW5kZXgtdW5pcXVlLWFiYnJldi5zaApAQCAtMywzNCArMyw0OCBAQAogdGVzdF9kZXNjcmlwdGlvbj0ndGVzdCB1bmlxdWUgc2hhMSBhYmJyZXZpYXRpb24gb24gImluZGV4IGZyb20uLnRvIiBsaW5lJwogLiAuL3Rlc3QtbGliLnNoCiAKLWlmICEgdGVzdF9oYXZlX3ByZXJlcSBTSEExCi10aGVuCi0gICAgICAgc2tpcF9hbGw9J25vdCB1c2luZyBTSEEtMSBmb3Igb2JqZWN0cycKLSAgICAgICB0ZXN0X2RvbmUKLWZpCi0KLWNhdCA+ZXhwZWN0X2luaXRpYWwgPDxFT0YKLTEwMDY0NCBibG9iIDUxZDI3Mzg0NjNlYTRjYTY2Zjg2OTFjOTFlMzNjZTY0YjdkNDFiYjEJZm9vCi1FT0YKLQotY2F0ID5leHBlY3RfdXBkYXRlIDw8RU9GCi0xMDA2NDQgYmxvYiA1MWQyNzM4ZWZiNGFkOGExZTQwYmVkODM5YWI4ZTExNmYwYTE1ZTQ3CWZvbwotRU9GCi0KIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCi0JZWNobyA0ODI3ID4gZm9vICYmCisJdGVzdF9vaWRfY2FjaGUgPDwtRU9GICYmCisJdmFsMSBzaGExOjQ4MjcKKwl2YWwxIHNoYTI1Njo1NjY0CisKKwl2YWwyIHNoYTE6MTE3NDIKKwl2YWwyIHNoYTI1NjoxMDYyNQorCisJaGFzaDEgc2hhMTo1MWQyNzM4NDYzZWE0Y2E2NmY4NjkxYzkxZTMzY2U2NGI3ZDQxYmIxCisJaGFzaDEgc2hhMjU2OmFlMzFkZmZmMGFmOTNiMmM2MmIwMDk4YTAzOWIzODU2OWM0M2IwYTdlOTdiODczMDAwY2E0MmQxMjhmMjczNTAKKworCWhhc2h0MSBzaGExOjUxZDI3Mzg0CisJaGFzaHQxIHNoYTI1NjphZTMxZGZmZgorCisJaGFzaDIgc2hhMTo1MWQyNzM4ZWZiNGFkOGExZTQwYmVkODM5YWI4ZTExNmYwYTE1ZTQ3CisJaGFzaDIgc2hhMjU2OmFlMzFkZmZhZGE4OGE0NmZkNWY1M2M3ZWQ1YWEyNWE3YTg5NTFmMWQ1ZTg4NDU2YzMxN2M4ZDU0ODRkMjYzZTUKKworCWhhc2h0MiBzaGExOjUxZDI3MzhlCisJaGFzaHQyIHNoYTI1NjphZTMxZGZmYQorCUVPRgorCisJY2F0ID5leHBlY3RfaW5pdGlhbCA8PC1FT0YgJiYKKwkxMDA2NDQgYmxvYiAkKHRlc3Rfb2lkIGhhc2gxKQlmb28KKwlFT0YKKworCWNhdCA+ZXhwZWN0X3VwZGF0ZSA8PC1FT0YgJiYKKwkxMDA2NDQgYmxvYiAkKHRlc3Rfb2lkIGhhc2gyKQlmb28KKwlFT0YKKworCWVjaG8gIiQodGVzdF9vaWQgdmFsMSkiID4gZm9vICYmCiAJZ2l0IGFkZCBmb28gJiYKIAlnaXQgY29tbWl0IC1tICJpbml0aWFsIiAmJgogCWdpdCBjYXQtZmlsZSAtcCBIRUFEOiA+IGFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdF9pbml0aWFsIGFjdHVhbCAmJgotCWVjaG8gMTE3NDIgPiBmb28gJiYKKwllY2hvICIkKHRlc3Rfb2lkIHZhbDIpIiA+IGZvbyAmJgogCWdpdCBjb21taXQgLWEgLW0gInVwZGF0ZSIgJiYKIAlnaXQgY2F0LWZpbGUgLXAgSEVBRDogPiBhY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3RfdXBkYXRlIGFjdHVhbAogJwogCiBjYXQgPmV4cGVjdCA8PEVPRgotaW5kZXggNTFkMjczODQuLjUxZDI3MzhlIDEwMDY0NAoraW5kZXggJCh0ZXN0X29pZCBoYXNodDEpLi4kKHRlc3Rfb2lkIGhhc2h0MikgMTAwNjQ0CiBFT0YKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlmZiBkb2VzIG5vdCBwcm9kdWNlIGFtYmlndW91cyBpbmRleCBsaW5lJyAnCmRpZmYgLS1naXQgYS90L3Q0MDQ1LWRpZmYtcmVsYXRpdmUuc2ggYi90L3Q0MDQ1LWRpZmYtcmVsYXRpdmUuc2gKaW5kZXggMzZmOGVkOC4uMjU4ODA4NyAxMDA3NTUKLS0tIGEvdC90NDA0NS1kaWZmLXJlbGF0aXZlLnNoCisrKyBiL3QvdDQwNDUtZGlmZi1yZWxhdGl2ZS5zaApAQCAtNzAsNyArNzAsNyBAQAogCWV4cGVjdD0kMQogCXNoaWZ0CiAJY2F0ID5leHBlY3RlZCA8PC1FT0YKLQk6MDAwMDAwIDEwMDY0NCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwICRibG9iIEEJJGV4cGVjdAorCTowMDAwMDAgMTAwNjQ0ICRaRVJPX09JRCAkYmxvYiBBCSRleHBlY3QKIAlFT0YKIAl0ZXN0X2V4cGVjdF9zdWNjZXNzICItLXJhdyAkKiIgIgogCQlnaXQgLUMgJyRkaXInIGRpZmYgLS1uby1hYmJyZXYgLS1yYXcgJCogSEVBRF4gPmFjdHVhbCAmJgpkaWZmIC0tZ2l0IGEvdC90NDA0OC1kaWZmLWNvbWJpbmVkLWJpbmFyeS5zaCBiL3QvdDQwNDgtZGlmZi1jb21iaW5lZC1iaW5hcnkuc2gKaW5kZXggODdhODk0OS4uN2Y5YWQ5ZiAxMDA3NTUKLS0tIGEvdC90NDA0OC1kaWZmLWNvbWJpbmVkLWJpbmFyeS5zaAorKysgYi90L3Q0MDQ4LWRpZmYtY29tYmluZWQtYmluYXJ5LnNoCkBAIC05LDI0ICs5LDI3IEBACiAJZ2l0IGNvbW1pdCAtbSBvbmUgJiYKIAllY2hvIHR3b1EyIHwgcV90b19udWwgPmJpbmFyeSAmJgogCWdpdCBjb21taXQgLWEgLW0gdHdvICYmCisJdHdvPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUQ6YmluYXJ5KSAmJgogCWdpdCBjaGVja291dCAtYiBicmFuY2gtYmluYXJ5IEhFQUReICYmCiAJZWNobyB0aHJlZVEzIHwgcV90b19udWwgPmJpbmFyeSAmJgogCWdpdCBjb21taXQgLWEgLW0gdGhyZWUgJiYKKwl0aHJlZT0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEOmJpbmFyeSkgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyICYmCiAJZWNobyByZXNvbHZlZFFob29yYXkgfCBxX3RvX251bCA+YmluYXJ5ICYmCi0JZ2l0IGNvbW1pdCAtYSAtbSByZXNvbHZlZAorCWdpdCBjb21taXQgLWEgLW0gcmVzb2x2ZWQgJiYKKwlyZXM9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRDpiaW5hcnkpCiAnCiAKLWNhdCA+ZXhwZWN0IDw8J0VPRicKK2NhdCA+ZXhwZWN0IDw8RU9GCiByZXNvbHZlZAogCiBkaWZmIC0tZ2l0IGEvYmluYXJ5IGIvYmluYXJ5Ci1pbmRleCA3ZWE2ZGVkLi45NTYzNjkxIDEwMDY0NAoraW5kZXggJHRocmVlLi4kcmVzIDEwMDY0NAogQmluYXJ5IGZpbGVzIGEvYmluYXJ5IGFuZCBiL2JpbmFyeSBkaWZmZXIKIHJlc29sdmVkCiAKIGRpZmYgLS1naXQgYS9iaW5hcnkgYi9iaW5hcnkKLWluZGV4IDYxOTc1NzAuLjk1NjM2OTEgMTAwNjQ0CitpbmRleCAkdHdvLi4kcmVzIDEwMDY0NAogQmluYXJ5IGZpbGVzIGEvYmluYXJ5IGFuZCBiL2JpbmFyeSBkaWZmZXIKIEVPRgogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlmZiAtbSBpbmRpY2F0ZXMgYmluYXJ5LW5lc3MnICcKQEAgLTM0LDExICszNywxMSBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAotY2F0ID5leHBlY3QgPDwnRU9GJworY2F0ID5leHBlY3QgPDxFT0YKIHJlc29sdmVkCiAKIGRpZmYgLS1jb21iaW5lZCBiaW5hcnkKLWluZGV4IDdlYTZkZWQsNjE5NzU3MC4uOTU2MzY5MQoraW5kZXggJHRocmVlLCR0d28uLiRyZXMKIEJpbmFyeSBmaWxlcyBkaWZmZXIKIEVPRgogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlmZiAtYyBpbmRpY2F0ZXMgYmluYXJ5LW5lc3MnICcKQEAgLTQ2LDExICs0OSwxMSBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAotY2F0ID5leHBlY3QgPDwnRU9GJworY2F0ID5leHBlY3QgPDxFT0YKIHJlc29sdmVkCiAKIGRpZmYgLS1jYyBiaW5hcnkKLWluZGV4IDdlYTZkZWQsNjE5NzU3MC4uOTU2MzY5MQoraW5kZXggJHRocmVlLCR0d28uLiRyZXMKIEJpbmFyeSBmaWxlcyBkaWZmZXIKIEVPRgogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlmZiAtLWNjIGluZGljYXRlcyBiaW5hcnktbmVzcycgJwpAQCAtNjIsMjMgKzY1LDI2IEBACiAJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgogCXRlc3RfY29tbWl0IG9uZSB0ZXh0ICYmCiAJdGVzdF9jb21taXQgdHdvIHRleHQgJiYKKwl0d289JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRDp0ZXh0KSAmJgogCWdpdCBjaGVja291dCAtYiBicmFuY2gtdGV4dCBIRUFEXiAmJgogCXRlc3RfY29tbWl0IHRocmVlIHRleHQgJiYKKwl0aHJlZT0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEOnRleHQpICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIG1hc3RlciAmJgogCXRlc3RfY29tbWl0IHJlc29sdmVkIHRleHQgJiYKKwlyZXM9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRDp0ZXh0KSAmJgogCWVjaG8gdGV4dCAtZGlmZiA+LmdpdGF0dHJpYnV0ZXMKICcKIAotY2F0ID5leHBlY3QgPDwnRU9GJworY2F0ID5leHBlY3QgPDxFT0YKIHJlc29sdmVkCiAKIGRpZmYgLS1naXQgYS90ZXh0IGIvdGV4dAotaW5kZXggMmJkZjY3YS4uMmFiMTlhZSAxMDA2NDQKK2luZGV4ICR0aHJlZS4uJHJlcyAxMDA2NDQKIEJpbmFyeSBmaWxlcyBhL3RleHQgYW5kIGIvdGV4dCBkaWZmZXIKIHJlc29sdmVkCiAKIGRpZmYgLS1naXQgYS90ZXh0IGIvdGV4dAotaW5kZXggZjcxOWVmZC4uMmFiMTlhZSAxMDA2NDQKK2luZGV4ICR0d28uLiRyZXMgMTAwNjQ0CiBCaW5hcnkgZmlsZXMgYS90ZXh0IGFuZCBiL3RleHQgZGlmZmVyCiBFT0YKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RpZmYgLW0gcmVzcGVjdHMgYmluYXJ5IGF0dHJpYnV0ZScgJwpAQCAtODYsMTEgKzkyLDExIEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCi1jYXQgPmV4cGVjdCA8PCdFT0YnCitjYXQgPmV4cGVjdCA8PEVPRgogcmVzb2x2ZWQKIAogZGlmZiAtLWNvbWJpbmVkIHRleHQKLWluZGV4IDJiZGY2N2EsZjcxOWVmZC4uMmFiMTlhZQoraW5kZXggJHRocmVlLCR0d28uLiRyZXMKIEJpbmFyeSBmaWxlcyBkaWZmZXIKIEVPRgogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlmZiAtYyByZXNwZWN0cyBiaW5hcnkgYXR0cmlidXRlJyAnCkBAIC05OCwxMSArMTA0LDExIEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCi1jYXQgPmV4cGVjdCA8PCdFT0YnCitjYXQgPmV4cGVjdCA8PEVPRgogcmVzb2x2ZWQKIAogZGlmZiAtLWNjIHRleHQKLWluZGV4IDJiZGY2N2EsZjcxOWVmZC4uMmFiMTlhZQoraW5kZXggJHRocmVlLCR0d28uLiRyZXMKIEJpbmFyeSBmaWxlcyBkaWZmZXIKIEVPRgogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlmZiAtLWNjIHJlc3BlY3RzIGJpbmFyeSBhdHRyaWJ1dGUnICcKQEAgLTExNSwxMSArMTIxLDExIEBACiAJZ2l0IGNvbmZpZyBkaWZmLnVwY2FzZS50ZXh0Y29udiAidHIgYS16IEEtWiA8IgogJwogCi1jYXQgPmV4cGVjdCA8PCdFT0YnCitjYXQgPmV4cGVjdCA8PEVPRgogcmVzb2x2ZWQKIAogZGlmZiAtLWdpdCBhL3RleHQgYi90ZXh0Ci1pbmRleCAyYmRmNjdhLi4yYWIxOWFlIDEwMDY0NAoraW5kZXggJHRocmVlLi4kcmVzIDEwMDY0NAogLS0tIGEvdGV4dAogKysrIGIvdGV4dAogQEAgLTEgKzEgQEAKQEAgLTEyOCw3ICsxMzQsNyBAQAogcmVzb2x2ZWQKIAogZGlmZiAtLWdpdCBhL3RleHQgYi90ZXh0Ci1pbmRleCBmNzE5ZWZkLi4yYWIxOWFlIDEwMDY0NAoraW5kZXggJHR3by4uJHJlcyAxMDA2NDQKIC0tLSBhL3RleHQKICsrKyBiL3RleHQKIEBAIC0xICsxIEBACkBAIC0xNDAsMTEgKzE0NiwxMSBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAotY2F0ID5leHBlY3QgPDwnRU9GJworY2F0ID5leHBlY3QgPDxFT0YKIHJlc29sdmVkCiAKIGRpZmYgLS1jb21iaW5lZCB0ZXh0Ci1pbmRleCAyYmRmNjdhLGY3MTllZmQuLjJhYjE5YWUKK2luZGV4ICR0aHJlZSwkdHdvLi4kcmVzCiAtLS0gYS90ZXh0CiArKysgYi90ZXh0CiBAQEAgLTEsMSAtMSwxICsxLDEgQEBACkBAIC0xNTcsMTEgKzE2MywxMSBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAotY2F0ID5leHBlY3QgPDwnRU9GJworY2F0ID5leHBlY3QgPDxFT0YKIHJlc29sdmVkCiAKIGRpZmYgLS1jYyB0ZXh0Ci1pbmRleCAyYmRmNjdhLGY3MTllZmQuLjJhYjE5YWUKK2luZGV4ICR0aHJlZSwkdHdvLi4kcmVzCiAtLS0gYS90ZXh0CiArKysgYi90ZXh0CiBAQEAgLTEsMSAtMSwxICsxLDEgQEBACkBAIC0xNzQsOSArMTgwLDkgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKLWNhdCA+ZXhwZWN0IDw8J0VPRicKK2NhdCA+ZXhwZWN0IDw8RU9GCiBkaWZmIC0tY29tYmluZWQgdGV4dAotaW5kZXggMmJkZjY3YSxmNzE5ZWZkLi4yYWIxOWFlCitpbmRleCAkdGhyZWUsJHR3by4uJHJlcwogLS0tIGEvdGV4dAogKysrIGIvdGV4dAogQEBAIC0xLDEgLTEsMSArMSwxIEBAQApAQCAtMTkwLDkgKzE5Niw5IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCi1jYXQgPmV4cGVjdCA8PCdFT0YnCitjYXQgPmV4cGVjdCA8PEVPRgogZGlmZiAtLWNjIHRleHQKLWluZGV4IDJiZGY2N2EsZjcxOWVmZC4uMDAwMDAwMAoraW5kZXggJHRocmVlLCR0d28uLjAwMDAwMDAKIC0tLSBhL3RleHQKICsrKyBiL3RleHQKIEBAQCAtMSwxIC0xLDEgKzEsNSBAQEAKZGlmZiAtLWdpdCBhL3QvdDQwNTMtZGlmZi1uby1pbmRleC5zaCBiL3QvdDQwNTMtZGlmZi1uby1pbmRleC5zaAppbmRleCA2ZTBkZDZmLi4wMTY4OTQ2IDEwMDc1NQotLS0gYS90L3Q0MDUzLWRpZmYtbm8taW5kZXguc2gKKysrIGIvdC90NDA1My1kaWZmLW5vLWluZGV4LnNoCkBAIC01MCw4ICs1MCw3IEBACiAJCWV4cG9ydCBHSVRfQ0VJTElOR19ESVJFQ1RPUklFUyAmJgogCQljZCBub24vZ2l0ICYmCiAJCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmIC0tbm8taW5kZXggYSAyPmFjdHVhbC5lcnIgJiYKLQkJZWNobyAidXNhZ2U6IGdpdCBkaWZmIC0tbm8taW5kZXggPHBhdGg+IDxwYXRoPiIgPmV4cGVjdC5lcnIgJiYKLQkJdGVzdF9jbXAgZXhwZWN0LmVyciBhY3R1YWwuZXJyCisJCXRlc3RfaTE4bmdyZXAgInVzYWdlOiBnaXQgZGlmZiAtLW5vLWluZGV4IiBhY3R1YWwuZXJyCiAJKQogJwogCkBAIC0xMzcsNCArMTM2LDEyIEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaWZmIC0tbm8taW5kZXggYWxsb3dzIGV4dGVybmFsIGRpZmYnICcKKwl0ZXN0X2V4cGVjdF9jb2RlIDEgXAorCQllbnYgR0lUX0VYVEVSTkFMX0RJRkY9ImVjaG8gZXh0ZXJuYWwgOzoiIFwKKwkJZ2l0IGRpZmYgLS1uby1pbmRleCBub24vZ2l0L2Egbm9uL2dpdC9iID5hY3R1YWwgJiYKKwllY2hvIGV4dGVybmFsID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NDA1NC1kaWZmLWJvZ3VzLXRyZWUuc2ggYi90L3Q0MDU0LWRpZmYtYm9ndXMtdHJlZS5zaAppbmRleCBmY2FlODJmLi44Yzk1ZjE1IDEwMDc1NQotLS0gYS90L3Q0MDU0LWRpZmYtYm9ndXMtdHJlZS5zaAorKysgYi90L3Q0MDU0LWRpZmYtYm9ndXMtdHJlZS5zaApAQCAtNCw4ICs0LDkgQEAKIC4gLi90ZXN0LWxpYi5zaAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjcmVhdGUgYm9ndXMgdHJlZScgJworCW5hbWU9JChlY2hvICRaRVJPX09JRCB8IHNlZCAtZSAicy8wMC9RL2ciKSAmJgogCWJvZ3VzX3RyZWU9JCgKLQkJcHJpbnRmICIxMDA2NDQgZm9vUVFRUVFRUVFRUVFRUVFRUVFRUVFRIiB8CisJCXByaW50ZiAiMTAwNjQ0IGZvb1EkbmFtZSIgfAogCQlxX3RvX251bCB8CiAJCWdpdCBoYXNoLW9iamVjdCAtdyAtLXN0ZGluIC10IHRyZWUKIAkpCmRpZmYgLS1naXQgYS90L3Q0MDU3LWRpZmYtY29tYmluZWQtcGF0aHMuc2ggYi90L3Q0MDU3LWRpZmYtY29tYmluZWQtcGF0aHMuc2gKaW5kZXggZGZmMzZiNy4uNGY0YjU0MSAxMDA3NTUKLS0tIGEvdC90NDA1Ny1kaWZmLWNvbWJpbmVkLXBhdGhzLnNoCisrKyBiL3QvdDQwNTctZGlmZi1jb21iaW5lZC1wYXRocy5zaApAQCAtMzMsNyArMzMsNyBAQAogJwogCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ29ubHkgb25lIHRydWxseSBjb25mbGljdGluZyBwYXRoJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdvbmx5IG9uZSB0cnVseSBjb25mbGljdGluZyBwYXRoJyAnCiAJZ2l0IGNoZWNrb3V0IHNpZGUgJiYKIAlmb3IgaSBpbiAkKHRlc3Rfc2VxIDIgOSkKIAlkbwpkaWZmIC0tZ2l0IGEvdC90NDA2MC1kaWZmLXN1Ym1vZHVsZS1vcHRpb24tZGlmZi1mb3JtYXQuc2ggYi90L3Q0MDYwLWRpZmYtc3VibW9kdWxlLW9wdGlvbi1kaWZmLWZvcm1hdC5zaAppbmRleCA5ZGNiNjlkLi5mYzgyMjljIDEwMDc1NQotLS0gYS90L3Q0MDYwLWRpZmYtc3VibW9kdWxlLW9wdGlvbi1kaWZmLWZvcm1hdC5zaAorKysgYi90L3Q0MDYwLWRpZmYtc3VibW9kdWxlLW9wdGlvbi1kaWZmLWZvcm1hdC5zaApAQCAtNDIsNiArNDIsMTcgQEAKIAlnaXQgY29tbWl0ICIkQCIgLW0gIkNvbW1pdCAkKiIgPi9kZXYvbnVsbAogfQogCitkaWZmX2NtcCAoKSB7CisgICAgICAgZm9yIGkgaW4gIiQxIiAiJDIiCisgICAgICAgZG8KKwkJc2VkIC1lICdzL15pbmRleCAwMDAwMDAwXC5cLlswLTlhLWZdKi9pbmRleCAwMDAwMDAwLi4xMjM0NTY3LycgXAorCQktZSAncy9eaW5kZXggWzAtOWEtZl0qXC5cLlswLTlhLWZdKi9pbmRleCAxMjM0NTY3Li44OWFiY2RlLycgXAorCQkiJGkiID4iJGkuY29tcGFyZSIgfHwgcmV0dXJuIDEKKyAgICAgICBkb25lICYmCisgICAgICAgdGVzdF9jbXAgIiQxLmNvbXBhcmUiICIkMi5jb21wYXJlIiAmJgorICAgICAgIHJtIC1mICIkMS5jb21wYXJlIiAiJDIuY29tcGFyZSIKK30KKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgcmVwb3NpdG9yeScgJwogCXRlc3RfY3JlYXRlX3JlcG8gc20xICYmCiAJYWRkX2ZpbGUgLiBmb28gJiYKQEAgLTY5LDcgKzgwLDcgQEAKIAlAQCAtMCwwICsxIEBACiAJK2ZvbzIKIAlFT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlkaWZmX2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYWRkZWQgc3VibW9kdWxlLCBzZXQgZGlmZi5zdWJtb2R1bGUnICcKQEAgLTkzLDcgKzEwNCw3IEBACiAJQEAgLTAsMCArMSBAQAogCStmb28yCiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tc3VibW9kdWxlPXNob3J0IG92ZXJyaWRlcyBkaWZmLnN1Ym1vZHVsZScgJwpAQCAtMTA5LDcgKzEyMCw3IEBACiAJQEAgLTAsMCArMSBAQAogCStTdWJwcm9qZWN0IGNvbW1pdCAkZnVsbGhlYWQxCiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RpZmYuc3VibW9kdWxlIGRvZXMgbm90IGFmZmVjdCBwbHVtYmluZycgJwpAQCAtMTI0LDcgKzEzNSw3IEBACiAJQEAgLTAsMCArMSBAQAogCStTdWJwcm9qZWN0IGNvbW1pdCAkZnVsbGhlYWQxCiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIGNvbW1pdF9maWxlIHNtMSAmJgpAQCAtMTQyLDcgKzE1Myw3IEBACiAJQEAgLTAsMCArMSBAQAogCStmb28zCiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmaWVkIHN1Ym1vZHVsZShmb3J3YXJkKScgJwpAQCAtMTU3LDcgKzE2OCw3IEBACiAJQEAgLTAsMCArMSBAQAogCStmb28zCiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmaWVkIHN1Ym1vZHVsZShmb3J3YXJkKSAtLXN1Ym1vZHVsZScgJwpAQCAtMTY2LDcgKzE3Nyw3IEBACiAJU3VibW9kdWxlIHNtMSAkaGVhZDEuLiRoZWFkMjoKIAkgID4gQWRkIGZvbzMgKCRhZGRlZCBmb28zKQogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWRpZmZfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiBmdWxsaGVhZDI9JChjZCBzbTE7IGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgSEVBRCkKQEAgLTE4MSw3ICsxOTIsNyBAQAogCS1TdWJwcm9qZWN0IGNvbW1pdCAkZnVsbGhlYWQxCiAJK1N1YnByb2plY3QgY29tbWl0ICRmdWxsaGVhZDIKIAlFT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlkaWZmX2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogY29tbWl0X2ZpbGUgc20xICYmCkBAIC0yMTAsNyArMjIxLDcgQEAKIAlAQCAtMSArMCwwIEBACiAJLWZvbzMKIAlFT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlkaWZmX2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogaGVhZDQ9JChhZGRfZmlsZSBzbTEgZm9vNCBmb281KQpAQCAtMjQ3LDcgKzI1OCw3IEBACiAJQEAgLTAsMCArMSBAQAogCStmb281CiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIGNvbW1pdF9maWxlIHNtMSAmJgpAQCAtMjkxLDcgKzMwMiw3IEBACiAJQEAgLTAsMCArMSBAQAogCStzbTEKIAlFT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlkaWZmX2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndHlwZWNoYW5nZWQgc3VibW9kdWxlKHN1Ym1vZHVsZS0+YmxvYiknICcKQEAgLTMyNyw3ICszMzgsNyBAQAogCUBAIC0wLDAgKzEgQEAKIAkrZm9vNQogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWRpZmZfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiBybSAtcmYgc20xICYmCkBAIC0zNDQsNyArMzU1LDcgQEAKIAlAQCAtMCwwICsxIEBACiAJK3NtMQogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWRpZmZfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiBybSAtZiBzbTEgJiYKQEAgLTM1Niw3ICszNjcsNyBAQAogCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCiAJU3VibW9kdWxlIHNtMSAkaGVhZDQuLi4kaGVhZDYgKGNvbW1pdHMgbm90IHByZXNlbnQpCiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIGNvbW1pdF9maWxlCkBAIC0zODYsMTEgKzM5NywxMiBAQAogCUBAIC0wLDAgKzEgQEAKIAkrZm9vNwogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWRpZmZfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiBjb21taXRfZmlsZSBzbTEgJiYKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N1Ym1vZHVsZSBpcyB1cCB0byBkYXRlJyAnCisJaGVhZDc9JChnaXQgLUMgc20xIHJldi1wYXJzZSAtLXNob3J0IC0tdmVyaWZ5IEhFQUQpICYmCiAJZ2l0IGRpZmYtaW5kZXggLXAgLS1zdWJtb2R1bGU9ZGlmZiBIRUFEID5hY3R1YWwgJiYKIAl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCiAnCkBAIC00MDEsNyArNDEzLDcgQEAKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgogCVN1Ym1vZHVsZSBzbTEgY29udGFpbnMgdW50cmFja2VkIGNvbnRlbnQKIAlFT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlkaWZmX2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3VibW9kdWxlIGNvbnRhaW5zIHVudHJhY2tlZCBjb250ZW50ICh1bnRyYWNrZWQgaWdub3JlZCknICcKQEAgLTQzMyw3ICs0NDUsNyBAQAogCS1mb282CiAJK25ldwogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWRpZmZfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiAjIE5PVCBPSwpAQCAtNDUwLDcgKzQ2Miw3IEBACiAJLWZvbzYKIAkrbmV3CiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N1Ym1vZHVsZSBjb250YWlucyB1bnRyYWNrZWQgYW5kIG1vZGlmaWVkIGNvbnRlbnQgKGRpcnR5IGlnbm9yZWQpJyAnCkBAIC00NzgsNyArNDkwLDcgQEAKIAktZm9vNgogCStuZXcKIAlFT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlkaWZmX2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogKGNkIHNtMTsgZ2l0IGNvbW1pdCAtbWNoYW5nZSBmb282ID4vZGV2L251bGwpICYmCkBAIC00ODYsNyArNDk4LDcgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N1Ym1vZHVsZSBpcyBtb2RpZmllZCcgJwogCWdpdCBkaWZmLWluZGV4IC1wIC0tc3VibW9kdWxlPWRpZmYgSEVBRCA+YWN0dWFsICYmCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQlTdWJtb2R1bGUgc20xIDE3MjQzYzkuLiRoZWFkODoKKwlTdWJtb2R1bGUgc20xICRoZWFkNy4uJGhlYWQ4OgogCWRpZmYgLS1naXQgYS9zbTEvZm9vNiBiL3NtMS9mb282CiAJaW5kZXggNDYyMzk4Yi4uM2U3NTc2NSAxMDA2NDQKIAktLS0gYS9zbTEvZm9vNgpAQCAtNDk1LDcgKzUwNyw3IEBACiAJLWZvbzYKIAkrbmV3CiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmaWVkIHN1Ym1vZHVsZSBjb250YWlucyB1bnRyYWNrZWQgY29udGVudCcgJwpAQCAtNTAzLDcgKzUxNSw3IEBACiAJZ2l0IGRpZmYtaW5kZXggLXAgLS1zdWJtb2R1bGU9ZGlmZiBIRUFEID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgogCVN1Ym1vZHVsZSBzbTEgY29udGFpbnMgdW50cmFja2VkIGNvbnRlbnQKLQlTdWJtb2R1bGUgc20xIDE3MjQzYzkuLiRoZWFkODoKKwlTdWJtb2R1bGUgc20xICRoZWFkNy4uJGhlYWQ4OgogCWRpZmYgLS1naXQgYS9zbTEvZm9vNiBiL3NtMS9mb282CiAJaW5kZXggNDYyMzk4Yi4uM2U3NTc2NSAxMDA2NDQKIAktLS0gYS9zbTEvZm9vNgpAQCAtNTEyLDEzICs1MjQsMTMgQEAKIAktZm9vNgogCStuZXcKIAlFT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlkaWZmX2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbW9kaWZpZWQgc3VibW9kdWxlIGNvbnRhaW5zIHVudHJhY2tlZCBjb250ZW50ICh1bnRyYWNrZWQgaWdub3JlZCknICcKIAlnaXQgZGlmZi1pbmRleCAtcCAtLWlnbm9yZS1zdWJtb2R1bGVzPXVudHJhY2tlZCAtLXN1Ym1vZHVsZT1kaWZmIEhFQUQgPmFjdHVhbCAmJgogCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCi0JU3VibW9kdWxlIHNtMSAxNzI0M2M5Li4kaGVhZDg6CisJU3VibW9kdWxlIHNtMSAkaGVhZDcuLiRoZWFkODoKIAlkaWZmIC0tZ2l0IGEvc20xL2ZvbzYgYi9zbTEvZm9vNgogCWluZGV4IDQ2MjM5OGIuLjNlNzU3NjUgMTAwNjQ0CiAJLS0tIGEvc20xL2ZvbzYKQEAgLTUyNywxMyArNTM5LDEzIEBACiAJLWZvbzYKIAkrbmV3CiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmaWVkIHN1Ym1vZHVsZSBjb250YWlucyB1bnRyYWNrZWQgY29udGVudCAoZGlydHkgaWdub3JlZCknICcKIAlnaXQgZGlmZi1pbmRleCAtcCAtLWlnbm9yZS1zdWJtb2R1bGVzPWRpcnR5IC0tc3VibW9kdWxlPWRpZmYgSEVBRCA+YWN0dWFsICYmCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQlTdWJtb2R1bGUgc20xIDE3MjQzYzkuLmNmY2U1NjI6CisJU3VibW9kdWxlIHNtMSAkaGVhZDcuLiRoZWFkODoKIAlkaWZmIC0tZ2l0IGEvc20xL2ZvbzYgYi9zbTEvZm9vNgogCWluZGV4IDQ2MjM5OGIuLjNlNzU3NjUgMTAwNjQ0CiAJLS0tIGEvc20xL2ZvbzYKQEAgLTU0Miw3ICs1NTQsNyBAQAogCS1mb282CiAJK25ldwogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWRpZmZfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtb2RpZmllZCBzdWJtb2R1bGUgY29udGFpbnMgdW50cmFja2VkIGNvbnRlbnQgKGFsbCBpZ25vcmVkKScgJwpAQCAtNTU2LDcgKzU2OCw3IEBACiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKIAlTdWJtb2R1bGUgc20xIGNvbnRhaW5zIHVudHJhY2tlZCBjb250ZW50CiAJU3VibW9kdWxlIHNtMSBjb250YWlucyBtb2RpZmllZCBjb250ZW50Ci0JU3VibW9kdWxlIHNtMSAxNzI0M2M5Li5jZmNlNTYyOgorCVN1Ym1vZHVsZSBzbTEgJGhlYWQ3Li4kaGVhZDg6CiAJZGlmZiAtLWdpdCBhL3NtMS9mb282IGIvc20xL2ZvbzYKIAlpbmRleCA0NjIzOThiLi5kZmRhNTQxIDEwMDY0NAogCS0tLSBhL3NtMS9mb282CkBAIC01NjYsNyArNTc4LDcgQEAKIAkrbmV3CiAJK21vZGlmaWNhdGlvbgogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWRpZmZfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtb2RpZmllZCBzdWJtb2R1bGUgY29udGFpbnMgdW50cmFja2VkIGFuZCBtb2RpZmllZCBjb250ZW50ICh1bnRyYWNrZWQgaWdub3JlZCknICcKQEAgLTU3NCw3ICs1ODYsNyBAQAogCWdpdCBkaWZmLWluZGV4IC1wIC0taWdub3JlLXN1Ym1vZHVsZXM9dW50cmFja2VkIC0tc3VibW9kdWxlPWRpZmYgSEVBRCA+YWN0dWFsICYmCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKIAlTdWJtb2R1bGUgc20xIGNvbnRhaW5zIG1vZGlmaWVkIGNvbnRlbnQKLQlTdWJtb2R1bGUgc20xIDE3MjQzYzkuLmNmY2U1NjI6CisJU3VibW9kdWxlIHNtMSAkaGVhZDcuLiRoZWFkODoKIAlkaWZmIC0tZ2l0IGEvc20xL2ZvbzYgYi9zbTEvZm9vNgogCWluZGV4IDQ2MjM5OGIuLmUyMGUyZDkgMTAwNjQ0CiAJLS0tIGEvc20xL2ZvbzYKQEAgLTU4NSwxNCArNTk3LDE0IEBACiAJK21vZGlmaWNhdGlvbgogCSttb2RpZmljYXRpb24KIAlFT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlkaWZmX2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbW9kaWZpZWQgc3VibW9kdWxlIGNvbnRhaW5zIHVudHJhY2tlZCBhbmQgbW9kaWZpZWQgY29udGVudCAoZGlydHkgaWdub3JlZCknICcKIAllY2hvIG1vZGlmaWNhdGlvbiA+PiBzbTEvZm9vNiAmJgogCWdpdCBkaWZmLWluZGV4IC1wIC0taWdub3JlLXN1Ym1vZHVsZXM9ZGlydHkgLS1zdWJtb2R1bGU9ZGlmZiBIRUFEID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCVN1Ym1vZHVsZSBzbTEgMTcyNDNjOS4uY2ZjZTU2MjoKKwlTdWJtb2R1bGUgc20xICRoZWFkNy4uJGhlYWQ4OgogCWRpZmYgLS1naXQgYS9zbTEvZm9vNiBiL3NtMS9mb282CiAJaW5kZXggNDYyMzk4Yi4uM2U3NTc2NSAxMDA2NDQKIAktLS0gYS9zbTEvZm9vNgpAQCAtNjAxLDcgKzYxMyw3IEBACiAJLWZvbzYKIAkrbmV3CiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmaWVkIHN1Ym1vZHVsZSBjb250YWlucyB1bnRyYWNrZWQgYW5kIG1vZGlmaWVkIGNvbnRlbnQgKGFsbCBpZ25vcmVkKScgJwpAQCAtNjE2LDcgKzYyOCw3IEBACiAJZ2l0IGRpZmYtaW5kZXggLXAgLS1zdWJtb2R1bGU9ZGlmZiBIRUFEID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgogCVN1Ym1vZHVsZSBzbTEgY29udGFpbnMgbW9kaWZpZWQgY29udGVudAotCVN1Ym1vZHVsZSBzbTEgMTcyNDNjOS4uY2ZjZTU2MjoKKwlTdWJtb2R1bGUgc20xICRoZWFkNy4uJGhlYWQ4OgogCWRpZmYgLS1naXQgYS9zbTEvZm9vNiBiL3NtMS9mb282CiAJaW5kZXggNDYyMzk4Yi4uYWM0NjZjYSAxMDA2NDQKIAktLS0gYS9zbTEvZm9vNgpAQCAtNjI5LDI5ICs2NDEsMjkgQEAKIAkrbW9kaWZpY2F0aW9uCiAJK21vZGlmaWNhdGlvbgogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWRpZmZfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiBybSAtcmYgc20xCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZWxldGVkIHN1Ym1vZHVsZScgJwogCWdpdCBkaWZmLWluZGV4IC1wIC0tc3VibW9kdWxlPWRpZmYgSEVBRCA+YWN0dWFsICYmCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQlTdWJtb2R1bGUgc20xIDE3MjQzYzkuLi4wMDAwMDAwIChzdWJtb2R1bGUgZGVsZXRlZCkKKwlTdWJtb2R1bGUgc20xICRoZWFkNy4uLjAwMDAwMDAgKHN1Ym1vZHVsZSBkZWxldGVkKQogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWRpZmZfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjcmVhdGUgc2Vjb25kIHN1Ym1vZHVsZScgJwogCXRlc3RfY3JlYXRlX3JlcG8gc20yICYmCi0JaGVhZDc9JChhZGRfZmlsZSBzbTIgZm9vOCBmb285KSAmJgorCWhlYWQ5PSQoYWRkX2ZpbGUgc20yIGZvbzggZm9vOSkgJiYKIAlnaXQgYWRkIHNtMgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtdWx0aXBsZSBzdWJtb2R1bGVzJyAnCiAJZ2l0IGRpZmYtaW5kZXggLXAgLS1zdWJtb2R1bGU9ZGlmZiBIRUFEID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCVN1Ym1vZHVsZSBzbTEgMTcyNDNjOS4uLjAwMDAwMDAgKHN1Ym1vZHVsZSBkZWxldGVkKQotCVN1Ym1vZHVsZSBzbTIgMDAwMDAwMC4uLmE1YTY1YzkgKG5ldyBzdWJtb2R1bGUpCisJU3VibW9kdWxlIHNtMSAkaGVhZDcuLi4wMDAwMDAwIChzdWJtb2R1bGUgZGVsZXRlZCkKKwlTdWJtb2R1bGUgc20yIDAwMDAwMDAuLi4kaGVhZDkgKG5ldyBzdWJtb2R1bGUpCiAJZGlmZiAtLWdpdCBhL3NtMi9mb284IGIvc20yL2ZvbzgKIAluZXcgZmlsZSBtb2RlIDEwMDY0NAogCWluZGV4IDAwMDAwMDAuLmRiOTkxNmIKQEAgLTY2NywxMyArNjc5LDEzIEBACiAJQEAgLTAsMCArMSBAQAogCStmb285CiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BhdGggZmlsdGVyJyAnCiAJZ2l0IGRpZmYtaW5kZXggLXAgLS1zdWJtb2R1bGU9ZGlmZiBIRUFEIHNtMiA+YWN0dWFsICYmCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQlTdWJtb2R1bGUgc20yIDAwMDAwMDAuLi5hNWE2NWM5IChuZXcgc3VibW9kdWxlKQorCVN1Ym1vZHVsZSBzbTIgMDAwMDAwMC4uLiRoZWFkOSAobmV3IHN1Ym1vZHVsZSkKIAlkaWZmIC0tZ2l0IGEvc20yL2ZvbzggYi9zbTIvZm9vOAogCW5ldyBmaWxlIG1vZGUgMTAwNjQ0CiAJaW5kZXggMDAwMDAwMC4uZGI5OTE2YgpAQCAtNjg5LDE1ICs3MDEsMTUgQEAKIAlAQCAtMCwwICsxIEBACiAJK2ZvbzkKIAlFT0YKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlkaWZmX2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogY29tbWl0X2ZpbGUgc20yCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXZlbiBjb21taXQnICcKIAlnaXQgZGlmZi1pbmRleCAtcCAtLXN1Ym1vZHVsZT1kaWZmIEhFQUReID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCVN1Ym1vZHVsZSBzbTEgMTcyNDNjOS4uLjAwMDAwMDAgKHN1Ym1vZHVsZSBkZWxldGVkKQotCVN1Ym1vZHVsZSBzbTIgMDAwMDAwMC4uLmE1YTY1YzkgKG5ldyBzdWJtb2R1bGUpCisJU3VibW9kdWxlIHNtMSAkaGVhZDcuLi4wMDAwMDAwIChzdWJtb2R1bGUgZGVsZXRlZCkKKwlTdWJtb2R1bGUgc20yIDAwMDAwMDAuLi4kaGVhZDkgKG5ldyBzdWJtb2R1bGUpCiAJZGlmZiAtLWdpdCBhL3NtMi9mb284IGIvc20yL2ZvbzgKIAluZXcgZmlsZSBtb2RlIDEwMDY0NAogCWluZGV4IDAwMDAwMDAuLmRiOTkxNmIKQEAgLTcxMyw3ICs3MjUsNyBAQAogCUBAIC0wLDAgKzEgQEAKIAkrZm9vOQogCUVPRgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCWRpZmZfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCAuZ2l0IGZpbGUgZm9yIHNtMicgJwpAQCAtNzI2LDggKzczOCw4IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaWZmIC0tc3VibW9kdWxlPWRpZmYgd2l0aCAuZ2l0IGZpbGUnICcKIAlnaXQgZGlmZiAtLXN1Ym1vZHVsZT1kaWZmIEhFQUReID5hY3R1YWwgJiYKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgotCVN1Ym1vZHVsZSBzbTEgMTcyNDNjOS4uLjAwMDAwMDAgKHN1Ym1vZHVsZSBkZWxldGVkKQotCVN1Ym1vZHVsZSBzbTIgMDAwMDAwMC4uLmE1YTY1YzkgKG5ldyBzdWJtb2R1bGUpCisJU3VibW9kdWxlIHNtMSAkaGVhZDcuLi4wMDAwMDAwIChzdWJtb2R1bGUgZGVsZXRlZCkKKwlTdWJtb2R1bGUgc20yIDAwMDAwMDAuLi4kaGVhZDkgKG5ldyBzdWJtb2R1bGUpCiAJZGlmZiAtLWdpdCBhL3NtMi9mb284IGIvc20yL2ZvbzgKIAluZXcgZmlsZSBtb2RlIDEwMDY0NAogCWluZGV4IDAwMDAwMDAuLmRiOTkxNmIKQEAgLTc0MywyNSArNzU1LDI3IEBACiAJQEAgLTAsMCArMSBAQAogCStmb285CiAJRU9GCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIG5lc3RlZCBzdWJtb2R1bGUnICcKIAlnaXQgc3VibW9kdWxlIGFkZCAtZiAuL3NtMiAmJgogCWdpdCBjb21taXQgLWEgLW0gImFkZCBzbTIiICYmCiAJZ2l0IC1DIHNtMiBzdWJtb2R1bGUgYWRkIC4uL3NtMiBuZXN0ZWQgJiYKLQlnaXQgLUMgc20yIGNvbW1pdCAtYSAtbSAibmVzdGVkIHN1YiIKKwlnaXQgLUMgc20yIGNvbW1pdCAtYSAtbSAibmVzdGVkIHN1YiIgJiYKKwloZWFkMTA9JChnaXQgLUMgc20yIHJldi1wYXJzZSAtLXNob3J0IC0tdmVyaWZ5IEhFQUQpCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vdmUgbmVzdGVkIHN1Ym1vZHVsZSBIRUFEJyAnCiAJZWNobyAibmVzdGVkIGNvbnRlbnQiID5zbTIvbmVzdGVkL2ZpbGUgJiYKIAlnaXQgLUMgc20yL25lc3RlZCBhZGQgZmlsZSAmJgotCWdpdCAtQyBzbTIvbmVzdGVkIGNvbW1pdCAtLWFsbG93LWVtcHR5IC1tICJuZXcgSEVBRCIKKwlnaXQgLUMgc20yL25lc3RlZCBjb21taXQgLS1hbGxvdy1lbXB0eSAtbSAibmV3IEhFQUQiICYmCisJaGVhZDExPSQoZ2l0IC1DIHNtMi9uZXN0ZWQgcmV2LXBhcnNlIC0tc2hvcnQgLS12ZXJpZnkgSEVBRCkKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlmZiAtLXN1Ym1vZHVsZT1kaWZmIHdpdGggbW92ZWQgbmVzdGVkIHN1Ym1vZHVsZSBIRUFEJyAnCiAJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKLQlTdWJtb2R1bGUgbmVzdGVkIGE1YTY1YzkuLmI1NTkyOGM6CisJU3VibW9kdWxlIG5lc3RlZCAkaGVhZDkuLiRoZWFkMTE6CiAJZGlmZiAtLWdpdCBhL25lc3RlZC9maWxlIGIvbmVzdGVkL2ZpbGUKIAluZXcgZmlsZSBtb2RlIDEwMDY0NAogCWluZGV4IDAwMDAwMDAuLmNhMjgxZjUKQEAgLTc3MiwxMyArNzg2LDEzIEBACiAJRU9GCiAJZ2l0IC1DIHNtMiBkaWZmIC0tc3VibW9kdWxlPWRpZmYgPmFjdHVhbCAyPmVyciAmJgogCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIgJiYKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlkaWZmX2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlmZiAtLXN1Ym1vZHVsZT1kaWZmIHJlY3Vyc2VzIGludG8gbmVzdGVkIHN1Ym1vZHVsZXMnICcKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgogCVN1Ym1vZHVsZSBzbTIgY29udGFpbnMgbW9kaWZpZWQgY29udGVudAotCVN1Ym1vZHVsZSBzbTIgYTVhNjVjOS4uMjgwOTY5YToKKwlTdWJtb2R1bGUgc20yICRoZWFkOS4uJGhlYWQxMDoKIAlkaWZmIC0tZ2l0IGEvc20yLy5naXRtb2R1bGVzIGIvc20yLy5naXRtb2R1bGVzCiAJbmV3IGZpbGUgbW9kZSAxMDA2NDQKIAlpbmRleCAwMDAwMDAwLi4zYTgxNmI4CkBAIC03ODgsNyArODAyLDcgQEAKIAkrW3N1Ym1vZHVsZSAibmVzdGVkIl0KIAkrCXBhdGggPSBuZXN0ZWQKIAkrCXVybCA9IC4uL3NtMgotCVN1Ym1vZHVsZSBuZXN0ZWQgMDAwMDAwMC4uLmI1NTkyOGMgKG5ldyBzdWJtb2R1bGUpCisJU3VibW9kdWxlIG5lc3RlZCAwMDAwMDAwLi4uJGhlYWQxMSAobmV3IHN1Ym1vZHVsZSkKIAlkaWZmIC0tZ2l0IGEvc20yL25lc3RlZC9maWxlIGIvc20yL25lc3RlZC9maWxlCiAJbmV3IGZpbGUgbW9kZSAxMDA2NDQKIAlpbmRleCAwMDAwMDAwLi5jYTI4MWY1CkBAIC04MTMsNyArODI3LDcgQEAKIAlFT0YKIAlnaXQgZGlmZiAtLXN1Ym1vZHVsZT1kaWZmID5hY3R1YWwgMj5lcnIgJiYKIAl0ZXN0X211c3RfYmVfZW1wdHkgZXJyICYmCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZGlmZl9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NDA2Ni1kaWZmLWVtaXQtZGVsYXkuc2ggYi90L3Q0MDY2LWRpZmYtZW1pdC1kZWxheS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi42MzMxZjYzCi0tLSAvZGV2L251bGwKKysrIGIvdC90NDA2Ni1kaWZmLWVtaXQtZGVsYXkuc2gKQEAgLTAsMCArMSw3OSBAQAorIyEvYmluL3NoCisKK3Rlc3RfZGVzY3JpcHRpb249J3Rlc3QgY29tYmluZWQvc3RhdC9tb3ZlZCBpbnRlcmFjdGlvbicKKy4gLi90ZXN0LWxpYi5zaAorCisjIFRoaXMgdGVzdCBjb3ZlcnMgYSB3ZWlyZCAzLXdheSBpbnRlcmFjdGlvbiBiZXR3ZWVuICItLWNjIC1wIiwgd2hpY2ggd2lsbCBydW4KKyMgdGhlIGNvbWJpbmVkIGRpZmYgY29kZSwgYWxvbmcgd2l0aCAiLS1zdGF0Iiwgd2hpY2ggd2lsbCBiZSBjb21wdXRlZCBhcyBhCisjIGZpcnN0LXBhcmVudCBzdGF0IGR1cmluZyB0aGUgY29tYmluZWQgZGlmZiwgYW5kICItLWNvbG9yLW1vdmVkIiwgd2hpY2gKKyMgZW5hYmxlcyB0aGUgZW1pdHRlZF9zeW1ib2xzIGxpc3QgdG8gc3RvcmUgdGhlIGRpZmYgaW4gbWVtb3J5LgorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXQgdXAgaGlzdG9yeSB3aXRoIGEgbWVyZ2UnICcKKwl0ZXN0X2NvbW1pdCBBICYmCisJdGVzdF9jb21taXQgQiAmJgorCWdpdCBjaGVja291dCAtYiBzaWRlIEhFQUReICYmCisJdGVzdF9jb21taXQgQyAmJgorCWdpdCBtZXJnZSAtbSBNIG1hc3RlciAmJgorCXRlc3RfY29tbWl0IEQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tY2MgLXAgLS1zdGF0IC0tY29sb3ItbW92ZWQnICcKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwljb21taXQgRAorCS0tLQorCSBELnQgfCAxICsKKwkgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspCisKKwlkaWZmIC0tZ2l0IGEvRC50IGIvRC50CisJbmV3IGZpbGUgbW9kZSAxMDA2NDQKKwlpbmRleCAwMDAwMDAwLi4kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBEOkQudCkKKwktLS0gL2Rldi9udWxsCisJKysrIGIvRC50CisJQEAgLTAsMCArMSBAQAorCStECisJY29tbWl0IE0KKworCSBCLnQgfCAxICsKKwkgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspCisJY29tbWl0IEMKKwktLS0KKwkgQy50IHwgMSArCisJIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKQorCisJZGlmZiAtLWdpdCBhL0MudCBiL0MudAorCW5ldyBmaWxlIG1vZGUgMTAwNjQ0CisJaW5kZXggMDAwMDAwMC4uJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgQzpDLnQpCisJLS0tIC9kZXYvbnVsbAorCSsrKyBiL0MudAorCUBAIC0wLDAgKzEgQEAKKwkrQworCWNvbW1pdCBCCisJLS0tCisJIEIudCB8IDEgKworCSAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKykKKworCWRpZmYgLS1naXQgYS9CLnQgYi9CLnQKKwluZXcgZmlsZSBtb2RlIDEwMDY0NAorCWluZGV4IDAwMDAwMDAuLiQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEI6Qi50KQorCS0tLSAvZGV2L251bGwKKwkrKysgYi9CLnQKKwlAQCAtMCwwICsxIEBACisJK0IKKwljb21taXQgQQorCS0tLQorCSBBLnQgfCAxICsKKwkgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspCisKKwlkaWZmIC0tZ2l0IGEvQS50IGIvQS50CisJbmV3IGZpbGUgbW9kZSAxMDA2NDQKKwlpbmRleCAwMDAwMDAwLi4kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBBOkEudCkKKwktLS0gL2Rldi9udWxsCisJKysrIGIvQS50CisJQEAgLTAsMCArMSBAQAorCStBCisJRU9GCisJZ2l0IGxvZyAtLWZvcm1hdD0iY29tbWl0ICVzIiAtLWNjIC1wIC0tc3RhdCAtLWNvbG9yLW1vdmVkID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NDA2Ny1kaWZmLXBhcnRpYWwtY2xvbmUuc2ggYi90L3Q0MDY3LWRpZmYtcGFydGlhbC1jbG9uZS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi40ODMxYWQzCi0tLSAvZGV2L251bGwKKysrIGIvdC90NDA2Ny1kaWZmLXBhcnRpYWwtY2xvbmUuc2gKQEAgLTAsMCArMSwxMzQgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdiZWhhdmlvciBvZiBkaWZmIHdoZW4gcmVhZGluZyBvYmplY3RzIGluIGEgcGFydGlhbCBjbG9uZScKKworLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBzaG93IGJhdGNoZXMgYmxvYnMnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1yZiBzZXJ2ZXIgY2xpZW50IHRyYWNlIiAmJgorCisJdGVzdF9jcmVhdGVfcmVwbyBzZXJ2ZXIgJiYKKwllY2hvIGEgPnNlcnZlci9hICYmCisJZWNobyBiID5zZXJ2ZXIvYiAmJgorCWdpdCAtQyBzZXJ2ZXIgYWRkIGEgYiAmJgorCWdpdCAtQyBzZXJ2ZXIgY29tbWl0IC1tIHggJiYKKworCXRlc3RfY29uZmlnIC1DIHNlcnZlciB1cGxvYWRwYWNrLmFsbG93ZmlsdGVyIDEgJiYKKwl0ZXN0X2NvbmZpZyAtQyBzZXJ2ZXIgdXBsb2FkcGFjay5hbGxvd2FueXNoYTFpbndhbnQgMSAmJgorCWdpdCBjbG9uZSAtLWJhcmUgLS1maWx0ZXI9YmxvYjpsaW1pdD0wICJmaWxlOi8vJChwd2QpL3NlcnZlciIgY2xpZW50ICYmCisKKwkjIEVuc3VyZSB0aGF0IHRoZXJlIGlzIGV4YWN0bHkgMSBuZWdvdGlhdGlvbiBieSBjaGVja2luZyB0aGF0IHRoZXJlIGlzCisJIyBvbmx5IDEgImRvbmUiIGxpbmUgc2VudC4gKCJkb25lIiBtYXJrcyB0aGUgZW5kIG9mIG5lZ290aWF0aW9uLikKKwlHSVRfVFJBQ0VfUEFDS0VUPSIkKHB3ZCkvdHJhY2UiIGdpdCAtQyBjbGllbnQgc2hvdyBIRUFEICYmCisJZ3JlcCAiZ2l0PiBkb25lIiB0cmFjZSA+ZG9uZV9saW5lcyAmJgorCXRlc3RfbGluZV9jb3VudCA9IDEgZG9uZV9saW5lcworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaWZmIGJhdGNoZXMgYmxvYnMnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1yZiBzZXJ2ZXIgY2xpZW50IHRyYWNlIiAmJgorCisJdGVzdF9jcmVhdGVfcmVwbyBzZXJ2ZXIgJiYKKwllY2hvIGEgPnNlcnZlci9hICYmCisJZWNobyBiID5zZXJ2ZXIvYiAmJgorCWdpdCAtQyBzZXJ2ZXIgYWRkIGEgYiAmJgorCWdpdCAtQyBzZXJ2ZXIgY29tbWl0IC1tIHggJiYKKwllY2hvIGMgPnNlcnZlci9jICYmCisJZWNobyBkID5zZXJ2ZXIvZCAmJgorCWdpdCAtQyBzZXJ2ZXIgYWRkIGMgZCAmJgorCWdpdCAtQyBzZXJ2ZXIgY29tbWl0IC1tIHggJiYKKworCXRlc3RfY29uZmlnIC1DIHNlcnZlciB1cGxvYWRwYWNrLmFsbG93ZmlsdGVyIDEgJiYKKwl0ZXN0X2NvbmZpZyAtQyBzZXJ2ZXIgdXBsb2FkcGFjay5hbGxvd2FueXNoYTFpbndhbnQgMSAmJgorCWdpdCBjbG9uZSAtLWJhcmUgLS1maWx0ZXI9YmxvYjpsaW1pdD0wICJmaWxlOi8vJChwd2QpL3NlcnZlciIgY2xpZW50ICYmCisKKwkjIEVuc3VyZSB0aGF0IHRoZXJlIGlzIGV4YWN0bHkgMSBuZWdvdGlhdGlvbiBieSBjaGVja2luZyB0aGF0IHRoZXJlIGlzCisJIyBvbmx5IDEgImRvbmUiIGxpbmUgc2VudC4gKCJkb25lIiBtYXJrcyB0aGUgZW5kIG9mIG5lZ290aWF0aW9uLikKKwlHSVRfVFJBQ0VfUEFDS0VUPSIkKHB3ZCkvdHJhY2UiIGdpdCAtQyBjbGllbnQgZGlmZiBIRUFEXiBIRUFEICYmCisJZ3JlcCAiZ2l0PiBkb25lIiB0cmFjZSA+ZG9uZV9saW5lcyAmJgorCXRlc3RfbGluZV9jb3VudCA9IDEgZG9uZV9saW5lcworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaWZmIHNraXBzIHNhbWUtT0lEIGJsb2JzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtcmYgc2VydmVyIGNsaWVudCB0cmFjZSIgJiYKKworCXRlc3RfY3JlYXRlX3JlcG8gc2VydmVyICYmCisJZWNobyBhID5zZXJ2ZXIvYSAmJgorCWVjaG8gYiA+c2VydmVyL2IgJiYKKwlnaXQgLUMgc2VydmVyIGFkZCBhIGIgJiYKKwlnaXQgLUMgc2VydmVyIGNvbW1pdCAtbSB4ICYmCisJZWNobyBhbm90aGVyLWEgPnNlcnZlci9hICYmCisJZ2l0IC1DIHNlcnZlciBhZGQgYSAmJgorCWdpdCAtQyBzZXJ2ZXIgY29tbWl0IC1tIHggJiYKKworCXRlc3RfY29uZmlnIC1DIHNlcnZlciB1cGxvYWRwYWNrLmFsbG93ZmlsdGVyIDEgJiYKKwl0ZXN0X2NvbmZpZyAtQyBzZXJ2ZXIgdXBsb2FkcGFjay5hbGxvd2FueXNoYTFpbndhbnQgMSAmJgorCWdpdCBjbG9uZSAtLWJhcmUgLS1maWx0ZXI9YmxvYjpsaW1pdD0wICJmaWxlOi8vJChwd2QpL3NlcnZlciIgY2xpZW50ICYmCisKKwllY2hvIGEgfCBnaXQgaGFzaC1vYmplY3QgLS1zdGRpbiA+aGFzaC1vbGQtYSAmJgorCWVjaG8gYW5vdGhlci1hIHwgZ2l0IGhhc2gtb2JqZWN0IC0tc3RkaW4gPmhhc2gtbmV3LWEgJiYKKwllY2hvIGIgfCBnaXQgaGFzaC1vYmplY3QgLS1zdGRpbiA+aGFzaC1iICYmCisKKwkjIEVuc3VyZSB0aGF0IG9ubHkgYSBhbmQgYW5vdGhlci1hIGFyZSBmZXRjaGVkLgorCUdJVF9UUkFDRV9QQUNLRVQ9IiQocHdkKS90cmFjZSIgZ2l0IC1DIGNsaWVudCBkaWZmIEhFQUReIEhFQUQgJiYKKwlncmVwICJ3YW50ICQoY2F0IGhhc2gtb2xkLWEpIiB0cmFjZSAmJgorCWdyZXAgIndhbnQgJChjYXQgaGFzaC1uZXctYSkiIHRyYWNlICYmCisJISBncmVwICJ3YW50ICQoY2F0IGhhc2gtYikiIHRyYWNlCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3doZW4gZmV0Y2hpbmcgbWlzc2luZyBvYmplY3RzLCBkaWZmIHNraXBzIEdJVExJTktzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtcmYgc3ViIHNlcnZlciBjbGllbnQgdHJhY2UiICYmCisKKwl0ZXN0X2NyZWF0ZV9yZXBvIHN1YiAmJgorCXRlc3RfY29tbWl0IC1DIHN1YiBmaXJzdCAmJgorCisJdGVzdF9jcmVhdGVfcmVwbyBzZXJ2ZXIgJiYKKwllY2hvIGEgPnNlcnZlci9hICYmCisJZ2l0IC1DIHNlcnZlciBhZGQgYSAmJgorCWdpdCAtQyBzZXJ2ZXIgc3VibW9kdWxlIGFkZCAiZmlsZTovLyQocHdkKS9zdWIiICYmCisJZ2l0IC1DIHNlcnZlciBjb21taXQgLW0geCAmJgorCisJdGVzdF9jb21taXQgLUMgc2VydmVyL3N1YiBzZWNvbmQgJiYKKwllY2hvIGFub3RoZXItYSA+c2VydmVyL2EgJiYKKwlnaXQgLUMgc2VydmVyIGFkZCBhIHN1YiAmJgorCWdpdCAtQyBzZXJ2ZXIgY29tbWl0IC1tIHggJiYKKworCXRlc3RfY29uZmlnIC1DIHNlcnZlciB1cGxvYWRwYWNrLmFsbG93ZmlsdGVyIDEgJiYKKwl0ZXN0X2NvbmZpZyAtQyBzZXJ2ZXIgdXBsb2FkcGFjay5hbGxvd2FueXNoYTFpbndhbnQgMSAmJgorCWdpdCBjbG9uZSAtLWJhcmUgLS1maWx0ZXI9YmxvYjpsaW1pdD0wICJmaWxlOi8vJChwd2QpL3NlcnZlciIgY2xpZW50ICYmCisKKwllY2hvIGEgfCBnaXQgaGFzaC1vYmplY3QgLS1zdGRpbiA+aGFzaC1vbGQtYSAmJgorCWVjaG8gYW5vdGhlci1hIHwgZ2l0IGhhc2gtb2JqZWN0IC0tc3RkaW4gPmhhc2gtbmV3LWEgJiYKKworCSMgRW5zdXJlIHRoYXQgYSBhbmQgYW5vdGhlci1hIGFyZSBmZXRjaGVkLCBhbmQgY2hlY2sgKGJ5IHN1Y2Nlc3NmdWwKKwkjIGV4ZWN1dGlvbiBvZiB0aGUgZGlmZikgdGhhdCBubyBpbnZhbGlkIE9JRHMgYXJlIHNlbnQuCisJR0lUX1RSQUNFX1BBQ0tFVD0iJChwd2QpL3RyYWNlIiBnaXQgLUMgY2xpZW50IGRpZmYgSEVBRF4gSEVBRCAmJgorCWdyZXAgIndhbnQgJChjYXQgaGFzaC1vbGQtYSkiIHRyYWNlICYmCisJZ3JlcCAid2FudCAkKGNhdCBoYXNoLW5ldy1hKSIgdHJhY2UKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlmZiB3aXRoIHJlbmFtZSBkZXRlY3Rpb24gYmF0Y2hlcyBibG9icycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLXJmIHNlcnZlciBjbGllbnQgdHJhY2UiICYmCisKKwl0ZXN0X2NyZWF0ZV9yZXBvIHNlcnZlciAmJgorCWVjaG8gYSA+c2VydmVyL2EgJiYKKwlwcmludGYgImJcbmJcbmJcbmJcbmJcbiIgPnNlcnZlci9iICYmCisJZ2l0IC1DIHNlcnZlciBhZGQgYSBiICYmCisJZ2l0IC1DIHNlcnZlciBjb21taXQgLW0geCAmJgorCXJtIHNlcnZlci9iICYmCisJcHJpbnRmICJiXG5iXG5iXG5iXG5iWFxuIiA+c2VydmVyL2MgJiYKKwlnaXQgLUMgc2VydmVyIGFkZCBjICYmCisJZ2l0IC1DIHNlcnZlciBjb21taXQgLWEgLW0geCAmJgorCisJdGVzdF9jb25maWcgLUMgc2VydmVyIHVwbG9hZHBhY2suYWxsb3dmaWx0ZXIgMSAmJgorCXRlc3RfY29uZmlnIC1DIHNlcnZlciB1cGxvYWRwYWNrLmFsbG93YW55c2hhMWlud2FudCAxICYmCisJZ2l0IGNsb25lIC0tYmFyZSAtLWZpbHRlcj1ibG9iOmxpbWl0PTAgImZpbGU6Ly8kKHB3ZCkvc2VydmVyIiBjbGllbnQgJiYKKworCSMgRW5zdXJlIHRoYXQgdGhlcmUgaXMgZXhhY3RseSAxIG5lZ290aWF0aW9uIGJ5IGNoZWNraW5nIHRoYXQgdGhlcmUgaXMKKwkjIG9ubHkgMSAiZG9uZSIgbGluZSBzZW50LiAoImRvbmUiIG1hcmtzIHRoZSBlbmQgb2YgbmVnb3RpYXRpb24uKQorCUdJVF9UUkFDRV9QQUNLRVQ9IiQocHdkKS90cmFjZSIgZ2l0IC1DIGNsaWVudCBkaWZmIC1NIEhFQUReIEhFQUQgPm91dCAmJgorCWdyZXAgInNpbWlsYXJpdHkgaW5kZXgiIG91dCAmJgorCWdyZXAgImdpdD4gZG9uZSIgdHJhY2UgPmRvbmVfbGluZXMgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAxIGRvbmVfbGluZXMKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q0MTAwL3QtYXBwbHktMS5wYXRjaCBiL3QvdDQxMDAvdC1hcHBseS0xLnBhdGNoCmluZGV4IDkwYWI1NGYuLjQzMzk0ZjggMTAwNjQ0Ci0tLSBhL3QvdDQxMDAvdC1hcHBseS0xLnBhdGNoCisrKyBiL3QvdDQxMDAvdC1hcHBseS0xLnBhdGNoCkBAIC03NSw4ICs3NSw4IEBACiArbGluazpnaXQtc3NoLXB1bGwuaHRtbFtnaXQtc3NoLXB1bGxdOjoKICAJUHVsbHMgZnJvbSBhIHJlbW90ZSByZXBvc2l0b3J5IG92ZXIgc3NoIGNvbm5lY3Rpb24KICAKLSBJbnRlcm9nYXRvcnM6Ci1AQCAtMTU2LDggKzE1Niw4IEBAIEludGVyb2dhdG9yczoKKyBJbnRlcnJvZ2F0b3JzOgorQEAgLTE1Niw4ICsxNTYsOCBAQCBJbnRlcnJvZ2F0b3JzOgogIGxpbms6Z2l0LWRpZmYtaGVscGVyLmh0bWxbZ2l0LWRpZmYtaGVscGVyXTo6CiAgCUdlbmVyYXRlcyBwYXRjaCBmb3JtYXQgb3V0cHV0IGZvciBnaXQtZGlmZi0qCiAgCmRpZmYgLS1naXQgYS90L3Q0MTAwL3QtYXBwbHktMy5wYXRjaCBiL3QvdDQxMDAvdC1hcHBseS0zLnBhdGNoCmluZGV4IDkwY2RiYWEuLmNhYzE3MmUgMTAwNjQ0Ci0tLSBhL3QvdDQxMDAvdC1hcHBseS0zLnBhdGNoCisrKyBiL3QvdDQxMDAvdC1hcHBseS0zLnBhdGNoCkBAIC0yMTEsNyArMjExLDcgQEAKIC0KIC0JCS8qIElmIHRoaXMgaXMgYW4gZXhhY3QgZGlyZWN0b3J5IG1hdGNoLCB3ZSBtYXkgaGF2ZQogLQkJICogZGlyZWN0b3J5IGZpbGVzIGZvbGxvd2luZyB0aGlzIHBhdGguIE1hdGNoIG9uIHRoZW0uCi0tCQkgKiBPdGhlcndpc2UsIHdlJ3JlIGF0IGEgcGFjaCBzdWJjb21wb25lbnQsIGFuZCB3ZSBuZWVkCistCQkgKiBPdGhlcndpc2UsIHdlJ3JlIGF0IGEgcGF0Y2ggc3ViY29tcG9uZW50LCBhbmQgd2UgbmVlZAogLQkJICogdG8gdHJ5IHRvIG1hdGNoIGFnYWluLgogLQkJICovCiAtCQlpZiAobXR5cGUgPT0gMCkKZGlmZiAtLWdpdCBhL3QvdDQxMDAvdC1hcHBseS01LnBhdGNoIGIvdC90NDEwMC90LWFwcGx5LTUucGF0Y2gKaW5kZXggNWY2ZGRjMS4uNTdlYzc5ZCAxMDA2NDQKLS0tIGEvdC90NDEwMC90LWFwcGx5LTUucGF0Y2gKKysrIGIvdC90NDEwMC90LWFwcGx5LTUucGF0Y2gKQEAgLTE4NSw4ICsxODUsOCBAQAogK2xpbms6Z2l0LXNzaC1wdWxsLmh0bWxbZ2l0LXNzaC1wdWxsXTo6CiAgCVB1bGxzIGZyb20gYSByZW1vdGUgcmVwb3NpdG9yeSBvdmVyIHNzaCBjb25uZWN0aW9uCiAgCi0gSW50ZXJvZ2F0b3JzOgotQEAgLTE1Niw4ICsxNTYsOCBAQCBJbnRlcm9nYXRvcnM6CisgSW50ZXJyb2dhdG9yczoKK0BAIC0xNTYsOCArMTU2LDggQEAgSW50ZXJyb2dhdG9yczoKICBsaW5rOmdpdC1kaWZmLWhlbHBlci5odG1sW2dpdC1kaWZmLWhlbHBlcl06OgogIAlHZW5lcmF0ZXMgcGF0Y2ggZm9ybWF0IG91dHB1dCBmb3IgZ2l0LWRpZmYtKgogIApkaWZmIC0tZ2l0IGEvdC90NDEwMC90LWFwcGx5LTcucGF0Y2ggYi90L3Q0MTAwL3QtYXBwbHktNy5wYXRjaAppbmRleCAwN2M2NTg5Li5mYTI0MzA1IDEwMDY0NAotLS0gYS90L3Q0MTAwL3QtYXBwbHktNy5wYXRjaAorKysgYi90L3Q0MTAwL3QtYXBwbHktNy5wYXRjaApAQCAtMzM1LDcgKzMzNSw3IEBACiAgCiAtCQkvKiBJZiB0aGlzIGlzIGFuIGV4YWN0IGRpcmVjdG9yeSBtYXRjaCwgd2UgbWF5IGhhdmUKIC0JCSAqIGRpcmVjdG9yeSBmaWxlcyBmb2xsb3dpbmcgdGhpcyBwYXRoLiBNYXRjaCBvbiB0aGVtLgotLQkJICogT3RoZXJ3aXNlLCB3ZSdyZSBhdCBhIHBhY2ggc3ViY29tcG9uZW50LCBhbmQgd2UgbmVlZAorLQkJICogT3RoZXJ3aXNlLCB3ZSdyZSBhdCBhIHBhdGNoIHN1YmNvbXBvbmVudCwgYW5kIHdlIG5lZWQKIC0JCSAqIHRvIHRyeSB0byBtYXRjaCBhZ2Fpbi4KICsJaWYgKGUtPmRpcmVjdG9yeSkgewogKwkJLyogSWYgdGhpcyBpcyBhIGRpcmVjdG9yeSwgd2UgaGF2ZSB0aGUgZm9sbG93aW5nIGNhc2VzOgpkaWZmIC0tZ2l0IGEvdC90NDEwOC1hcHBseS10aHJlZXdheS5zaCBiL3QvdDQxMDgtYXBwbHktdGhyZWV3YXkuc2gKaW5kZXggZmE1ZDRlZi4uZDczNDljZSAxMDA3NTUKLS0tIGEvdC90NDEwOC1hcHBseS10aHJlZXdheS5zaAorKysgYi90L3Q0MTA4LWFwcGx5LXRocmVld2F5LnNoCkBAIC00LDIzICs0LDE3IEBACiAKIC4gLi90ZXN0LWxpYi5zaAogCi1jcmVhdGVfZmlsZSAoKSB7Ci0JZm9yIGkKLQlkbwotCQllY2hvICIkaSIKLQlkb25lCi19Ci0KLXNhbml0aXplX2NvbmZsaWN0ZWRfZGlmZiAoKSB7CitwcmludF9zYW5pdGl6ZWRfY29uZmxpY3RlZF9kaWZmICgpIHsKKwlnaXQgZGlmZiBIRUFEID5kaWZmLnJhdyAmJgogCXNlZCAtZSAnCiAJCS9eaW5kZXggL2QKLQkJcy9eXCgrWzw+XVs8Pl1bPD5dWzw+XSpcKSAuKi9cMS8KLQknCisJCXMvXlwoK1s8PnxdWzw+fF1bPD58XVs8PnxdKlwpIC4qL1wxLworCScgZGlmZi5yYXcKIH0KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBzZXR1cCAnCiAJdGVzdF90aWNrICYmCi0JY3JlYXRlX2ZpbGUgPm9uZSAxIDIgMyA0IDUgNiA3ICYmCisJdGVzdF93cml0ZV9saW5lcyAxIDIgMyA0IDUgNiA3ID5vbmUgJiYKIAljYXQgb25lID50d28gJiYKIAlnaXQgYWRkIG9uZSB0d28gJiYKIAlnaXQgY29tbWl0IC1tIGluaXRpYWwgJiYKQEAgLTI4LDEzICsyMiwxMyBAQAogCWdpdCBicmFuY2ggc2lkZSAmJgogCiAJdGVzdF90aWNrICYmCi0JY3JlYXRlX2ZpbGUgPm9uZSAxIHR3byAzIDQgNSBzaXggNyAmJgotCWNyZWF0ZV9maWxlID50d28gMSB0d28gMyA0IDUgNiA3ICYmCisJdGVzdF93cml0ZV9saW5lcyAxIHR3byAzIDQgNSBzaXggNyA+b25lICYmCisJdGVzdF93cml0ZV9saW5lcyAxIHR3byAzIDQgNSA2IDcgPnR3byAmJgogCWdpdCBjb21taXQgLWEgLW0gbWFzdGVyICYmCiAKIAlnaXQgY2hlY2tvdXQgc2lkZSAmJgotCWNyZWF0ZV9maWxlID5vbmUgMSAyIDMgNCBmaXZlIDYgNyAmJgotCWNyZWF0ZV9maWxlID50d28gMSAyIDMgNCBmaXZlIDYgNyAmJgorCXRlc3Rfd3JpdGVfbGluZXMgMSAyIDMgNCBmaXZlIDYgNyA+b25lICYmCisJdGVzdF93cml0ZV9saW5lcyAxIDIgMyA0IGZpdmUgNiA3ID50d28gJiYKIAlnaXQgY29tbWl0IC1hIC1tIHNpZGUgJiYKIAogCWdpdCBjaGVja291dCBtYXN0ZXIKQEAgLTUyLDcgKzQ2LDcgQEAKIAlnaXQgZGlmZi1pbmRleCAtLWV4aXQtY29kZSAtLWNhY2hlZCBIRUFECiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FwcGx5IHdpdGggLS0zd2F5JyAnCit0ZXN0X2FwcGx5X3dpdGhfM3dheSAoKSB7CiAJIyBNZXJnaW5nIHNpZGUgc2hvdWxkIGJlIHNpbWlsYXIgdG8gYXBwbHlpbmcgdGhpcyBwYXRjaAogCWdpdCBkaWZmIC4uLnNpZGUgPlAuZGlmZiAmJgogCkBAIC02MSwyMiArNTUsMzEgQEAKIAlnaXQgY2hlY2tvdXQgbWFzdGVyXjAgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLS1uby1jb21taXQgc2lkZSAmJgogCWdpdCBscy1maWxlcyAtcyA+ZXhwZWN0LmxzICYmCi0JZ2l0IGRpZmYgSEVBRCB8IHNhbml0aXplX2NvbmZsaWN0ZWRfZGlmZiA+ZXhwZWN0LmRpZmYgJiYKKwlwcmludF9zYW5pdGl6ZWRfY29uZmxpY3RlZF9kaWZmID5leHBlY3QuZGlmZiAmJgogCiAJIyBzaG91bGQgZmFpbCB0byBhcHBseQogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlnaXQgY2hlY2tvdXQgbWFzdGVyXjAgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgYXBwbHkgLS1pbmRleCAtLTN3YXkgUC5kaWZmICYmCiAJZ2l0IGxzLWZpbGVzIC1zID5hY3R1YWwubHMgJiYKLQlnaXQgZGlmZiBIRUFEIHwgc2FuaXRpemVfY29uZmxpY3RlZF9kaWZmID5hY3R1YWwuZGlmZiAmJgorCXByaW50X3Nhbml0aXplZF9jb25mbGljdGVkX2RpZmYgPmFjdHVhbC5kaWZmICYmCiAKIAkjIFRoZSByZXN1bHQgc2hvdWxkIHJlc2VtYmxlIHRoZSBjb3JyZXNwb25kaW5nIG1lcmdlCiAJdGVzdF9jbXAgZXhwZWN0LmxzIGFjdHVhbC5scyAmJgogCXRlc3RfY21wIGV4cGVjdC5kaWZmIGFjdHVhbC5kaWZmCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FwcGx5IHdpdGggLS0zd2F5JyAnCisJdGVzdF9hcHBseV93aXRoXzN3YXkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYXBwbHkgd2l0aCAtLTN3YXkgd2l0aCBtZXJnZS5jb25mbGljdFN0eWxlID0gZGlmZjMnICcKKwl0ZXN0X2NvbmZpZyBtZXJnZS5jb25mbGljdFN0eWxlIGRpZmYzICYmCisJdGVzdF9hcHBseV93aXRoXzN3YXkKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYXBwbHkgd2l0aCAtLTN3YXkgd2l0aCByZXJlcmUgZW5hYmxlZCcgJwotCWdpdCBjb25maWcgcmVyZXJlLmVuYWJsZWQgdHJ1ZSAmJgorCXRlc3RfY29uZmlnIHJlcmVyZS5lbmFibGVkIHRydWUgJiYKIAogCSMgTWVyZ2luZyBzaWRlIHNob3VsZCBiZSBzaW1pbGFyIHRvIGFwcGx5aW5nIHRoaXMgcGF0Y2gKIAlnaXQgZGlmZiAuLi5zaWRlID5QLmRpZmYgJiYKQEAgLTg3LDcgKzkwLDcgQEAKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLS1uby1jb21taXQgc2lkZSAmJgogCiAJIyBNYW51YWxseSByZXNvbHZlIGFuZCByZWNvcmQgdGhlIHJlc29sdXRpb24KLQljcmVhdGVfZmlsZSAxIHR3byAzIDQgZml2ZSBzaXggNyA+b25lICYmCisJdGVzdF93cml0ZV9saW5lcyAxIHR3byAzIDQgZml2ZSBzaXggNyA+b25lICYmCiAJZ2l0IHJlcmVyZSAmJgogCWNhdCBvbmUgPmV4cGVjdCAmJgogCkBAIC0xMDQsMTQgKzEwNywxNCBAQAogCWdpdCByZXNldCAtLWhhcmQgJiYKIAogCWdpdCBjaGVja291dCAtYiBhZGRlciAmJgotCWNyZWF0ZV9maWxlIDEgMiAzIDQgNSA2IDcgPnRocmVlICYmCi0JY3JlYXRlX2ZpbGUgMSAyIDMgNCA1IDYgNyA+Zm91ciAmJgorCXRlc3Rfd3JpdGVfbGluZXMgMSAyIDMgNCA1IDYgNyA+dGhyZWUgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzIDEgMiAzIDQgNSA2IDcgPmZvdXIgJiYKIAlnaXQgYWRkIHRocmVlIGZvdXIgJiYKIAlnaXQgY29tbWl0IC1tICJhZGQgdGhyZWUgYW5kIGZvdXIiICYmCiAKIAlnaXQgY2hlY2tvdXQgLWIgYW5vdGhlciBhZGRlcl4gJiYKLQljcmVhdGVfZmlsZSAxIDIgMyA0IDUgNiA3ID50aHJlZSAmJgotCWNyZWF0ZV9maWxlIDEgMiAzIGZvdXIgNSA2IDcgPmZvdXIgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzIDEgMiAzIDQgNSA2IDcgPnRocmVlICYmCisJdGVzdF93cml0ZV9saW5lcyAxIDIgMyBmb3VyIDUgNiA3ID5mb3VyICYmCiAJZ2l0IGFkZCB0aHJlZSBmb3VyICYmCiAJZ2l0IGNvbW1pdCAtbSAiYWRkIHRocmVlIGFuZCBmb3VyIiAmJgogCkBAIC0xMjEsNyArMTI0LDcgQEAKIAlnaXQgY2hlY2tvdXQgYWRkZXJeMCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtLW5vLWNvbW1pdCBhbm90aGVyICYmCiAJZ2l0IGxzLWZpbGVzIC1zID5leHBlY3QubHMgJiYKLQlnaXQgZGlmZiBIRUFEIHwgc2FuaXRpemVfY29uZmxpY3RlZF9kaWZmID5leHBlY3QuZGlmZgorCXByaW50X3Nhbml0aXplZF9jb25mbGljdGVkX2RpZmYgPmV4cGVjdC5kaWZmCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FwcGx5IC0zIHdpdGggYWRkL2FkZCBjb25mbGljdCcgJwpAQCAtMTMxLDcgKzEzNCw3IEBACiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGFwcGx5IC0taW5kZXggLS0zd2F5IFAuZGlmZiAmJgogCSMgLi4uIGFuZCBsZWF2ZSBjb25mbGljdHMgaW4gdGhlIGluZGV4IGFuZCBpbiB0aGUgd29ya2luZyB0cmVlCiAJZ2l0IGxzLWZpbGVzIC1zID5hY3R1YWwubHMgJiYKLQlnaXQgZGlmZiBIRUFEIHwgc2FuaXRpemVfY29uZmxpY3RlZF9kaWZmID5hY3R1YWwuZGlmZiAmJgorCXByaW50X3Nhbml0aXplZF9jb25mbGljdGVkX2RpZmYgPmFjdHVhbC5kaWZmICYmCiAKIAkjIFRoZSByZXN1bHQgc2hvdWxkIHJlc2VtYmxlIHRoZSBjb3JyZXNwb25kaW5nIG1lcmdlCiAJdGVzdF9jbXAgZXhwZWN0LmxzIGFjdHVhbC5scyAmJgpkaWZmIC0tZ2l0IGEvdC90NDExNy1hcHBseS1yZWplY3Quc2ggYi90L3Q0MTE3LWFwcGx5LXJlamVjdC5zaAppbmRleCBmN2RlNmYwLi4wZWU5M2ZlIDEwMDc1NQotLS0gYS90L3Q0MTE3LWFwcGx5LXJlamVjdC5zaAorKysgYi90L3Q0MTE3LWFwcGx5LXJlamVjdC5zaApAQCAtNzQsNyArNzQsNyBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCBhcHBseSAtLXJlamVjdCBwYXRjaC4xICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgZmlsZTEgJiYKIAotCWNhdCBmaWxlMS5yZWogJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBmaWxlMS5yZWogJiYKIAl0ZXN0X3BhdGhfaXNfbWlzc2luZyBmaWxlMi5yZWoKICcKIApAQCAtODcsNyArODcsNyBAQAogCXRlc3RfcGF0aF9pc19taXNzaW5nIGZpbGUxICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgZmlsZTIgJiYKIAotCWNhdCBmaWxlMi5yZWogJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBmaWxlMi5yZWogJiYKIAl0ZXN0X3BhdGhfaXNfbWlzc2luZyBmaWxlMS5yZWoKIAogJwpAQCAtMTAxLDcgKzEwMSw3IEBACiAJdGVzdF9wYXRoX2lzX21pc3NpbmcgZmlsZTEgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZCBmaWxlMiAmJgogCi0JY2F0IGZpbGUyLnJlaiAmJgorCXRlc3RfcGF0aF9pc19maWxlIGZpbGUyLnJlaiAmJgogCXRlc3RfcGF0aF9pc19taXNzaW5nIGZpbGUxLnJlagogCiAnCmRpZmYgLS1naXQgYS90L3Q0MTI0LWFwcGx5LXdzLXJ1bGUuc2ggYi90L3Q0MTI0LWFwcGx5LXdzLXJ1bGUuc2gKaW5kZXggZmY1MWU5ZS4uOTcxYTVhNyAxMDA3NTUKLS0tIGEvdC90NDEyNC1hcHBseS13cy1ydWxlLnNoCisrKyBiL3QvdDQxMjQtYXBwbHktd3MtcnVsZS5zaApAQCAtMzUsOSArMzUsMTUgQEAKIH0KIAogYXBwbHlfcGF0Y2ggKCkgeworCWNtZF9wcmVmaXg9ICYmCisJaWYgdGVzdCAieCQxIiA9ICd4IScKKwl0aGVuCisJCWNtZF9wcmVmaXg9dGVzdF9tdXN0X2ZhaWwgJiYKKwkJc2hpZnQKKwlmaSAmJgogCT50YXJnZXQgJiYKIAlzZWQgLWUgInN8XChbYWJdXCkvZmlsZXxcMS90YXJnZXR8IiA8cGF0Y2ggfAotCWdpdCBhcHBseSAiJEAiCisJJGNtZF9wcmVmaXggZ2l0IGFwcGx5ICIkQCIKIH0KIAogdGVzdF9maXggKCkgewpAQCAtOTksNyArMTA1LDcgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnd2hpdGVzcGFjZT1lcnJvci1hbGwsIGRlZmF1bHQgcnVsZScgJwogCi0JdGVzdF9tdXN0X2ZhaWwgYXBwbHlfcGF0Y2ggLS13aGl0ZXNwYWNlPWVycm9yLWFsbCAmJgorCWFwcGx5X3BhdGNoICEgLS13aGl0ZXNwYWNlPWVycm9yLWFsbCAmJgogCXRlc3RfbXVzdF9iZV9lbXB0eSB0YXJnZXQKIAogJwpkaWZmIC0tZ2l0IGEvdC90NDEzNC1hcHBseS1zdWJtb2R1bGUuc2ggYi90L3Q0MTM0LWFwcGx5LXN1Ym1vZHVsZS5zaAppbmRleCAwMDQzOTMwLi45OWVkNGNjIDEwMDc1NQotLS0gYS90L3Q0MTM0LWFwcGx5LXN1Ym1vZHVsZS5zaAorKysgYi90L3Q0MTM0LWFwcGx5LXN1Ym1vZHVsZS5zaApAQCAtOCw2ICs4LDcgQEAKIC4gLi90ZXN0LWxpYi5zaAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIHNldHVwICcKKwl0ZXN0X29pZF9pbml0ICYmCiAJY2F0ID4gY3JlYXRlLXNtLnBhdGNoIDw8RU9GICYmCiBkaWZmIC0tZ2l0IGEvZGlyL3NtIGIvZGlyL3NtCiBuZXcgZmlsZSBtb2RlIDE2MDAwMApAQCAtMTUsNyArMTYsNyBAQAogLS0tIC9kZXYvbnVsbAogKysrIGIvZGlyL3NtCiBAQCAtMCwwICsxIEBACi0rU3VicHJvamVjdCBjb21taXQgMDEyMzQ1Njc4OWFiY2RlZjAxMjM0NTY3ODlhYmNkZWYwMTIzNDU2NworK1N1YnByb2plY3QgY29tbWl0ICQodGVzdF9vaWQgbnVtZXJpYykKIEVPRgogCWNhdCA+IHJlbW92ZS1zbS5wYXRjaCA8PEVPRgogZGlmZiAtLWdpdCBhL2Rpci9zbSBiL2Rpci9zbQpAQCAtMjQsNyArMjUsNyBAQAogLS0tIGEvZGlyL3NtCiArKysgL2Rldi9udWxsCiBAQCAtMSArMCwwIEBACi0tU3VicHJvamVjdCBjb21taXQgMDEyMzQ1Njc4OWFiY2RlZjAxMjM0NTY3ODlhYmNkZWYwMTIzNDU2NworLVN1YnByb2plY3QgY29tbWl0ICQodGVzdF9vaWQgbnVtZXJpYykKIEVPRgogJwogCmRpZmYgLS1naXQgYS90L3Q0MTM4LWFwcGx5LXdzLWV4cGFuc2lvbi5zaCBiL3QvdDQxMzgtYXBwbHktd3MtZXhwYW5zaW9uLnNoCmluZGV4IDNiNjM2YTYuLmIxOWZhZWIgMTAwNzU1Ci0tLSBhL3QvdDQxMzgtYXBwbHktd3MtZXhwYW5zaW9uLnNoCisrKyBiL3QvdDQxMzgtYXBwbHktd3MtZXhwYW5zaW9uLnNoCkBAIC0xNyw4ICsxNyw4IEBACiAJcHJpbnRmICJcdCVzXG4iIDEgMiAzID5hZnRlciAmJgogCXByaW50ZiAiJTY0c1xuIiBhIGIgYyA+PmFmdGVyICYmCiAJcHJpbnRmICJcdCVzXG4iIDQgNSA2ID4+YWZ0ZXIgJiYKLQlnaXQgZGlmZiAtLW5vLWluZGV4IGJlZm9yZSBhZnRlciB8Ci0JCXNlZCAtZSAicy9iZWZvcmUvdGVzdC0xLyIgLWUgInMvYWZ0ZXIvdGVzdC0xLyIgPnBhdGNoMS5wYXRjaCAmJgorCXRlc3RfZXhwZWN0X2NvZGUgMSBnaXQgZGlmZiAtLW5vLWluZGV4IGJlZm9yZSBhZnRlciA+cGF0Y2gxLnBhdGNoLnJhdyAmJgorCXNlZCAtZSAicy9iZWZvcmUvdGVzdC0xLyIgLWUgInMvYWZ0ZXIvdGVzdC0xLyIgcGF0Y2gxLnBhdGNoLnJhdyA+cGF0Y2gxLnBhdGNoICYmCiAJcHJpbnRmICIlNjRzXG4iIDEgMiAzIDQgNSA2ID50ZXN0LTEgJiYKIAlwcmludGYgIiU2NHNcbiIgMSAyIDMgYSBiIGMgNCA1IDYgPmV4cGVjdC0xICYmCiAKQEAgLTMzLDggKzMzLDggQEAKIAkJeD0kKCggJHggKyAxICkpCiAJZG9uZSAmJgogCXByaW50ZiAiXHQlc1xuIiBkIGUgZiA+PmFmdGVyICYmCi0JZ2l0IGRpZmYgLS1uby1pbmRleCBiZWZvcmUgYWZ0ZXIgfAotCQlzZWQgLWUgInMvYmVmb3JlL3Rlc3QtMi8iIC1lICJzL2FmdGVyL3Rlc3QtMi8iID5wYXRjaDIucGF0Y2ggJiYKKwl0ZXN0X2V4cGVjdF9jb2RlIDEgZ2l0IGRpZmYgLS1uby1pbmRleCBiZWZvcmUgYWZ0ZXIgPnBhdGNoMi5wYXRjaC5yYXcgJiYKKwlzZWQgLWUgInMvYmVmb3JlL3Rlc3QtMi8iIC1lICJzL2FmdGVyL3Rlc3QtMi8iIHBhdGNoMi5wYXRjaC5yYXcgPnBhdGNoMi5wYXRjaCAmJgogCXByaW50ZiAiJTY0c1xuIiBhIGIgYyBkIGUgZiA+dGVzdC0yICYmCiAJcHJpbnRmICIlNjRzXG4iIGEgYiBjID5leHBlY3QtMiAmJgogCXg9MSAmJgpAQCAtNTYsOCArNTYsOCBAQAogCQl4PSQoKCAkeCArIDEgKSkKIAlkb25lICYmCiAJcHJpbnRmICJcdCVzXG4iIGQgZSBmID4+YWZ0ZXIgJiYKLQlnaXQgZGlmZiAtLW5vLWluZGV4IGJlZm9yZSBhZnRlciB8Ci0Jc2VkIC1lICJzL2JlZm9yZS90ZXN0LTMvIiAtZSAicy9hZnRlci90ZXN0LTMvIiA+cGF0Y2gzLnBhdGNoICYmCisJdGVzdF9leHBlY3RfY29kZSAxIGdpdCBkaWZmIC0tbm8taW5kZXggYmVmb3JlIGFmdGVyID5wYXRjaDMucGF0Y2gucmF3ICYmCisJc2VkIC1lICJzL2JlZm9yZS90ZXN0LTMvIiAtZSAicy9hZnRlci90ZXN0LTMvIiBwYXRjaDMucGF0Y2gucmF3ID5wYXRjaDMucGF0Y2ggJiYKIAlwcmludGYgIiU2NHNcbiIgYSBiIGMgZCBlIGYgPnRlc3QtMyAmJgogCXByaW50ZiAiJTY0c1xuIiBhIGIgYyA+ZXhwZWN0LTMgJiYKIAl4PTAgJiYKQEAgLTg0LDggKzg0LDggQEAKIAkJcHJpbnRmICJcdCUwMmRcbiIgJHggPj5hZnRlcgogCQl4PSQoKCAkeCArIDEgKSkKIAlkb25lICYmCi0JZ2l0IGRpZmYgLS1uby1pbmRleCBiZWZvcmUgYWZ0ZXIgfAotCXNlZCAtZSAicy9iZWZvcmUvdGVzdC00LyIgLWUgInMvYWZ0ZXIvdGVzdC00LyIgPnBhdGNoNC5wYXRjaCAmJgorCXRlc3RfZXhwZWN0X2NvZGUgMSBnaXQgZGlmZiAtLW5vLWluZGV4IGJlZm9yZSBhZnRlciA+cGF0Y2g0LnBhdGNoLnJhdyAmJgorCXNlZCAtZSAicy9iZWZvcmUvdGVzdC00LyIgLWUgInMvYWZ0ZXIvdGVzdC00LyIgcGF0Y2g0LnBhdGNoLnJhdyA+cGF0Y2g0LnBhdGNoICYmCiAJPnRlc3QtNCAmJgogCXg9MCAmJgogCXdoaWxlIHRlc3QgJHggLWx0IDUwCmRpZmYgLS1naXQgYS90L3Q0MTUwLWFtLnNoIGIvdC90NDE1MC1hbS5zaAppbmRleCA1NWI1NzdkLi5jYjQ1MjcxIDEwMDc1NQotLS0gYS90L3Q0MTUwLWFtLnNoCisrKyBiL3QvdDQxNTAtYW0uc2gKQEAgLTc3LDE0ICs3NywxMiBAQAogCiAJcHJpbnRmICJTdWJqZWN0OiAiID5zdWJqZWN0LXByZWZpeCAmJgogCi0JY2F0IC0gc3ViamVjdC1wcmVmaXggbXNnLXdpdGhvdXQtc2Npc3NvcnMtbGluZSA+bXNnLXdpdGgtc2Npc3NvcnMtbGluZSA8PC1cRU9GICYmCisJY2F0IC0gc3ViamVjdC1wcmVmaXggbXNnLXdpdGhvdXQtc2Npc3NvcnMtbGluZSA+bXNnLXdpdGgtc2Npc3NvcnMtbGluZSA8PC1cRU9GCiAJVGhpcyBsaW5lIHNob3VsZCBub3QgYmUgaW5jbHVkZWQgaW4gdGhlIGNvbW1pdCBtZXNzYWdlIHdpdGggLS1zY2lzc29ycyBlbmFibGVkLgogCiAJIC0gLSA+OCAtIC0gcmVtb3ZlIGV2ZXJ5dGhpbmcgYWJvdmUgdGhpcyBsaW5lIC0gLSA+OCAtIC0KIAogCUVPRgotCi0Jc2lnbm9mZj0iU2lnbmVkLW9mZi1ieTogJEdJVF9DT01NSVRURVJfTkFNRSA8JEdJVF9DT01NSVRURVJfRU1BSUw+IgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIHNldHVwICcKQEAgLTY2OCw2ICs2NjYsMjYgQEAKIAl0ZXN0X2NtcCAuZ2l0L3JlYmFzZS1hcHBseS8wMDAxIGFjdHVhbC5wYXRjaAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhbSAtLXNob3ctY3VycmVudC1wYXRjaD1yYXcnICcKKwlnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2g9cmF3ID5hY3R1YWwucGF0Y2ggJiYKKwl0ZXN0X2NtcCAuZ2l0L3JlYmFzZS1hcHBseS8wMDAxIGFjdHVhbC5wYXRjaAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhbSAtLXNob3ctY3VycmVudC1wYXRjaD1kaWZmJyAnCisJZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoPWRpZmYgPmFjdHVhbC5wYXRjaCAmJgorCXRlc3RfY21wIC5naXQvcmViYXNlLWFwcGx5L3BhdGNoIGFjdHVhbC5wYXRjaAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhbSBhY2NlcHRzIHJlcGVhdGVkIC0tc2hvdy1jdXJyZW50LXBhdGNoJyAnCisJZ2l0IGFtIC0tc2hvdy1jdXJyZW50LXBhdGNoIC0tc2hvdy1jdXJyZW50LXBhdGNoPXJhdyA+YWN0dWFsLnBhdGNoICYmCisJdGVzdF9jbXAgLmdpdC9yZWJhc2UtYXBwbHkvMDAwMSBhY3R1YWwucGF0Y2gKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYW0gZGV0ZWN0cyBpbmNvbXBhdGlibGUgLS1zaG93LWN1cnJlbnQtcGF0Y2gnICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2g9cmF3IC0tc2hvdy1jdXJyZW50LXBhdGNoPWRpZmYgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgYW0gLS1zaG93LWN1cnJlbnQtcGF0Y2ggLS1zaG93LWN1cnJlbnQtcGF0Y2g9ZGlmZgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhbSAtLXNraXAgd29ya3MnICcKIAllY2hvIGdvb2RieWUgPmV4cGVjdGVkICYmCiAJZ2l0IGFtIC0tc2tpcCAmJgpAQCAtMTA2Myw0ICsxMDgxLDU2IEBACiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FtIGFuZCAuZ2l0YXR0aWJ1dGVzJyAnCisJdGVzdF9jcmVhdGVfcmVwbyBhdHRyaWJ1dGVzICYmCisJKAorCQljZCBhdHRyaWJ1dGVzICYmCisJCXRlc3RfY29tbWl0IGluaXQgJiYKKwkJZ2l0IGNvbmZpZyBmaWx0ZXIudGVzdC5jbGVhbiAic2VkIC1lICdcJydzL3NtdWRnZWQvY2xlYW4vZydcJyciICYmCisJCWdpdCBjb25maWcgZmlsdGVyLnRlc3Quc211ZGdlICJzZWQgLWUgJ1wnJ3MvY2xlYW4vc211ZGdlZC9nJ1wnJyIgJiYKKworCQl0ZXN0X2NvbW1pdCBzZWNvbmQgJiYKKwkJZ2l0IGNoZWNrb3V0IC1iIHRlc3QgSEVBRF4gJiYKKworCQllY2hvICIqLnR4dCBmaWx0ZXI9dGVzdCBjb25mbGljdC1tYXJrZXItc2l6ZT0xMCIgPi5naXRhdHRyaWJ1dGVzICYmCisJCWdpdCBhZGQgLmdpdGF0dHJpYnV0ZXMgJiYKKwkJdGVzdF9jb21taXQgdGhpcmQgJiYKKworCQllY2hvICJUaGlzIHRleHQgaXMgc211ZGdlZC4iID5hLnR4dCAmJgorCQlnaXQgYWRkIGEudHh0ICYmCisJCXRlc3RfY29tbWl0IGZvdXJ0aCAmJgorCisJCWdpdCBjaGVja291dCAtYiByZW1vdmFsIEhFQUReICYmCisJCWdpdCBybSAuZ2l0YXR0cmlidXRlcyAmJgorCQlnaXQgYWRkIC11ICYmCisJCXRlc3RfY29tbWl0IGZpZnRoICYmCisJCWdpdCBjaGVycnktcGljayB0ZXN0ICYmCisKKwkJZ2l0IGNoZWNrb3V0IC1iIGNvbmZsaWN0IHRoaXJkICYmCisJCWVjaG8gIlRoaXMgdGV4dCBpcyBkaWZmZXJlbnQuIiA+YS50eHQgJiYKKwkJZ2l0IGFkZCBhLnR4dCAmJgorCQl0ZXN0X2NvbW1pdCBzaXh0aCAmJgorCisJCWdpdCBjaGVja291dCB0ZXN0ICYmCisJCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgbWFzdGVyLi5IRUFEID5wYXRjaGVzICYmCisJCWdpdCByZXNldCAtLWhhcmQgbWFzdGVyICYmCisJCWdpdCBhbSBwYXRjaGVzICYmCisJCWdyZXAgInNtdWRnZWQiIGEudHh0ICYmCisKKwkJZ2l0IGNoZWNrb3V0IHJlbW92YWwgJiYKKwkJZ2l0IHJlc2V0IC0taGFyZCAmJgorCQlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IG1hc3Rlci4uSEVBRCA+cGF0Y2hlcyAmJgorCQlnaXQgcmVzZXQgLS1oYXJkIG1hc3RlciAmJgorCQlnaXQgYW0gcGF0Y2hlcyAmJgorCQlncmVwICJjbGVhbiIgYS50eHQgJiYKKworCQlnaXQgY2hlY2tvdXQgY29uZmxpY3QgJiYKKwkJZ2l0IHJlc2V0IC0taGFyZCAmJgorCQlnaXQgZm9ybWF0LXBhdGNoIC0tc3Rkb3V0IG1hc3Rlci4uSEVBRCA+cGF0Y2hlcyAmJgorCQlnaXQgcmVzZXQgLS1oYXJkIGZvdXJ0aCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgYW0gLTMgcGF0Y2hlcyAmJgorCQlncmVwICI8PDw8PDw8PDw8IiBhLnR4dAorCSkKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q0MjAwLXJlcmVyZS5zaCBiL3QvdDQyMDAtcmVyZXJlLnNoCmluZGV4IDU1Yjc3NTAuLjgzMWQ0MjQgMTAwNzU1Ci0tLSBhL3QvdDQyMDAtcmVyZXJlLnNoCisrKyBiL3QvdDQyMDAtcmVyZXJlLnNoCkBAIC0yNSw2ICsyNSw3IEBACiAuIC4vdGVzdC1saWIuc2gKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICcKKwl0ZXN0X29pZF9pbml0ICYmCiAJY2F0ID5hMSA8PC1cRU9GICYmCiAJU29tZSB0aXRsZQogCT09PT09PT09PT0KQEAgLTIxMCw3ICsyMTEsNyBAQAogCWVjaG8gSGVsbG8gPiRyci9wcmVpbWFnZSAmJgogCWVjaG8gV29ybGQgPiRyci9wb3N0aW1hZ2UgJiYKIAotCXNoYTI9NDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAmJgorCXNoYTI9JCh0ZXN0X29pZCBkZWFkYmVlZikgJiYKIAlycjI9LmdpdC9yci1jYWNoZS8kc2hhMiAmJgogCW1rZGlyICRycjIgJiYKIAllY2hvIEhlbGxvID4kcnIyL3ByZWltYWdlICYmCmRpZmYgLS1naXQgYS90L3Q0MjAyLWxvZy5zaCBiL3QvdDQyMDItbG9nLnNoCmluZGV4IDgxOWMyNGQuLjBmNzY2YmEgMTAwNzU1Ci0tLSBhL3QvdDQyMDItbG9nLnNoCisrKyBiL3QvdDQyMDItbG9nLnNoCkBAIC01LDYgKzUsMTEgQEAKIC4gLi90ZXN0LWxpYi5zaAogLiAiJFRFU1RfRElSRUNUT1JZL2xpYi1ncGcuc2giCiAuICIkVEVTVF9ESVJFQ1RPUlkvbGliLXRlcm1pbmFsLnNoIgorLiAiJFRFU1RfRElSRUNUT1JZL2xpYi1sb2ctZ3JhcGguc2giCisKK3Rlc3RfY21wX2dyYXBoICgpIHsKKwlsaWJfdGVzdF9jbXBfZ3JhcGggLS1mb3JtYXQ9JXMgIiRAIgorfQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIHNldHVwICcKIApAQCAtODcsMTIgKzkyLDEyIEBACiAnCiAKIGNhdCA+IGV4cGVjdCA8PCBFT0YKLTgwNGE3ODcgc2l4dGgKLTM5NGVmNzggZmlmdGgKLTVkMzExNTkgZm91cnRoCi0yZmJlOGMwIHRoaXJkCi1mN2RhYjhlIHNlY29uZAotM2EyZmRjYiBpbml0aWFsCiskKGdpdCByZXYtcGFyc2UgLS1zaG9ydCA6L3NpeHRoICApIHNpeHRoCiskKGdpdCByZXYtcGFyc2UgLS1zaG9ydCA6L2ZpZnRoICApIGZpZnRoCiskKGdpdCByZXYtcGFyc2UgLS1zaG9ydCA6L2ZvdXJ0aCApIGZvdXJ0aAorJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgOi90aGlyZCAgKSB0aGlyZAorJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgOi9zZWNvbmQgKSBzZWNvbmQKKyQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IDovaW5pdGlhbCkgaW5pdGlhbAogRU9GCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdvbmVsaW5lJyAnCiAKQEAgLTE3Myw0MyArMTc4LDQ1IEBACiAJdmVyYm9zZSB0ZXN0ICIkYWN0dWFsIiA9ICIkZXhwZWN0IgogJwogCisjIE5vdGUgdGhhdCB0aGVzZSBjb21taXRzIGFyZSBpbnRlbnRpb25hbGx5IGxpc3RlZCBvdXQgb2Ygb3JkZXIuCitsYXN0X3RocmVlPSIkKGdpdCByZXYtcGFyc2UgOi9mb3VydGggOi9zaXh0aCA6L2ZpZnRoKSIKIGNhdCA+IGV4cGVjdCA8PCBFT0YKLTgwNGE3ODcgc2l4dGgKLTM5NGVmNzggZmlmdGgKLTVkMzExNTkgZm91cnRoCiskKGdpdCByZXYtcGFyc2UgLS1zaG9ydCA6L3NpeHRoICkgc2l4dGgKKyQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IDovZmlmdGggKSBmaWZ0aAorJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgOi9mb3VydGgpIGZvdXJ0aAogRU9GCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgbG9nIC0tbm8td2FsayA8Y29tbWl0cz4gc29ydHMgYnkgY29tbWl0IHRpbWUnICcKLQlnaXQgbG9nIC0tbm8td2FsayAtLW9uZWxpbmUgNWQzMTE1OSA4MDRhNzg3IDM5NGVmNzggPiBhY3R1YWwgJiYKKwlnaXQgbG9nIC0tbm8td2FsayAtLW9uZWxpbmUgJGxhc3RfdGhyZWUgPiBhY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBsb2cgLS1uby13YWxrPXNvcnRlZCA8Y29tbWl0cz4gc29ydHMgYnkgY29tbWl0IHRpbWUnICcKLQlnaXQgbG9nIC0tbm8td2Fsaz1zb3J0ZWQgLS1vbmVsaW5lIDVkMzExNTkgODA0YTc4NyAzOTRlZjc4ID4gYWN0dWFsICYmCisJZ2l0IGxvZyAtLW5vLXdhbGs9c29ydGVkIC0tb25lbGluZSAkbGFzdF90aHJlZSA+IGFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogY2F0ID4gZXhwZWN0IDw8IEVPRgotPT09IDgwNGE3ODcgc2l4dGgKLT09PSAzOTRlZjc4IGZpZnRoCi09PT0gNWQzMTE1OSBmb3VydGgKKz09PSAkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCA6L3NpeHRoICkgc2l4dGgKKz09PSAkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCA6L2ZpZnRoICkgZmlmdGgKKz09PSAkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCA6L2ZvdXJ0aCkgZm91cnRoCiBFT0YKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBsb2cgLS1saW5lLXByZWZpeD0iPT09ICIgLS1uby13YWxrIDxjb21taXRzPiBzb3J0cyBieSBjb21taXQgdGltZScgJwotCWdpdCBsb2cgLS1saW5lLXByZWZpeD0iPT09ICIgLS1uby13YWxrIC0tb25lbGluZSA1ZDMxMTU5IDgwNGE3ODcgMzk0ZWY3OCA+IGFjdHVhbCAmJgorCWdpdCBsb2cgLS1saW5lLXByZWZpeD0iPT09ICIgLS1uby13YWxrIC0tb25lbGluZSAkbGFzdF90aHJlZSA+IGFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogY2F0ID4gZXhwZWN0IDw8IEVPRgotNWQzMTE1OSBmb3VydGgKLTgwNGE3ODcgc2l4dGgKLTM5NGVmNzggZmlmdGgKKyQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IDovZm91cnRoKSBmb3VydGgKKyQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IDovc2l4dGggKSBzaXh0aAorJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgOi9maWZ0aCApIGZpZnRoCiBFT0YKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBsb2cgLS1uby13YWxrPXVuc29ydGVkIDxjb21taXRzPiBsZWF2ZXMgbGlzdCBvZiBjb21taXRzIGFzIGdpdmVuJyAnCi0JZ2l0IGxvZyAtLW5vLXdhbGs9dW5zb3J0ZWQgLS1vbmVsaW5lIDVkMzExNTkgODA0YTc4NyAzOTRlZjc4ID4gYWN0dWFsICYmCisJZ2l0IGxvZyAtLW5vLXdhbGs9dW5zb3J0ZWQgLS1vbmVsaW5lICRsYXN0X3RocmVlID4gYWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgc2hvdyA8Y29tbWl0cz4gbGVhdmVzIGxpc3Qgb2YgY29tbWl0cyBhcyBnaXZlbicgJwotCWdpdCBzaG93IC0tb25lbGluZSAtcyA1ZDMxMTU5IDgwNGE3ODcgMzk0ZWY3OCA+IGFjdHVhbCAmJgorCWdpdCBzaG93IC0tb25lbGluZSAtcyAkbGFzdF90aHJlZSA+IGFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIApAQCAtMzUyLDcgKzM1OSw3IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgd2l0aCB2YXJpb3VzIGdyZXAucGF0dGVyblR5cGUgY29uZmlndXJhdGlvbnMgJiBjb21tYW5kLWxpbmVzJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICFGQUlMX1BSRVJFUVMgJ2xvZyB3aXRoIHZhcmlvdXMgZ3JlcC5wYXR0ZXJuVHlwZSBjb25maWd1cmF0aW9ucyAmIGNvbW1hbmQtbGluZXMnICcKIAlnaXQgaW5pdCBwYXR0ZXJuLXR5cGUgJiYKIAkoCiAJCWNkIHBhdHRlcm4tdHlwZSAmJgpAQCAtNDUwLDggKzQ1Nyw3IEBACiBFT0YKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2ltcGxlIGxvZyAtLWdyYXBoJyAnCi0JZ2l0IGxvZyAtLWdyYXBoIC0tcHJldHR5PXRmb3JtYXQ6JXMgPmFjdHVhbCAmJgotCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwl0ZXN0X2NtcF9ncmFwaAogJwogCiBjYXQgPiBleHBlY3QgPDxFT0YKQEAgLTQ2NSw4ICs0NzEsNyBAQAogRU9GCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NpbXBsZSBsb2cgLS1ncmFwaCAtLWxpbmUtcHJlZml4PSIxMjMgIicgJwotCWdpdCBsb2cgLS1ncmFwaCAtLWxpbmUtcHJlZml4PSIxMjMgIiAtLXByZXR0eT10Zm9ybWF0OiVzID5hY3R1YWwgJiYKLQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJdGVzdF9jbXBfZ3JhcGggLS1saW5lLXByZWZpeD0iMTIzICIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0IHVwIG1lcmdlIGhpc3RvcnknICcKQEAgLTQ5Myw5ICs0OTgsNyBAQAogRU9GCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggbWVyZ2UnICcKLQlnaXQgbG9nIC0tZ3JhcGggLS1kYXRlLW9yZGVyIC0tcHJldHR5PXRmb3JtYXQ6JXMgfAotCQlzZWQgInMvICpcJC8vIiA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorCXRlc3RfY21wX2dyYXBoIC0tZGF0ZS1vcmRlcgogJwogCiBjYXQgPiBleHBlY3QgPDxcRU9GCkBAIC01MTQsOSArNTE3LDcgQEAKIEVPRgogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1ncmFwaCAtLWxpbmUtcHJlZml4PSJ8IHwgfCAiIHdpdGggbWVyZ2UnICcKLQlnaXQgbG9nIC0tbGluZS1wcmVmaXg9InwgfCB8ICIgLS1ncmFwaCAtLWRhdGUtb3JkZXIgLS1wcmV0dHk9dGZvcm1hdDolcyB8Ci0JCXNlZCAicy8gKlwkLy8iID5hY3R1YWwgJiYKLQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJdGVzdF9jbXBfZ3JhcGggLS1saW5lLXByZWZpeD0ifCB8IHwgIiAtLWRhdGUtb3JkZXIKICcKIAogY2F0ID4gZXhwZWN0LmNvbG9ycyA8PFxFT0YKQEAgLTUzNiw5ICs1MzcsNyBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1ncmFwaCB3aXRoIG1lcmdlIHdpdGggbG9nLmdyYXBoQ29sb3JzJyAnCiAJdGVzdF9jb25maWcgbG9nLmdyYXBoQ29sb3JzICIgYmx1ZSxpbnZhbGlkLWNvbG9yLCBjeWFuLCByZWQgICwgIiAmJgotCWdpdCBsb2cgLS1jb2xvcj1hbHdheXMgLS1ncmFwaCAtLWRhdGUtb3JkZXIgLS1wcmV0dHk9dGZvcm1hdDolcyB8Ci0JCXRlc3RfZGVjb2RlX2NvbG9yIHwgc2VkICJzLyAqXCQvLyIgPmFjdHVhbCAmJgotCXRlc3RfY21wIGV4cGVjdC5jb2xvcnMgYWN0dWFsCisJbGliX3Rlc3RfY21wX2NvbG9yZWRfZ3JhcGggLS1kYXRlLW9yZGVyIC0tZm9ybWF0PSVzCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLXJhdyAtLWdyYXBoIC1tIHdpdGggbWVyZ2UnICcKQEAgLTY2NywxNiArNjY2LDE0IEBACiAqIHwgfCBmaWZ0aAogKiB8IHwgZm91cnRoCiB8LyAvCi0qIHwgdGhpcmQKKyogLyB0aGlyZAogfC8KICogc2Vjb25kCiAqIGluaXRpYWwKIEVPRgogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1ncmFwaCB3aXRoIG1lcmdlJyAnCi0JZ2l0IGxvZyAtLWdyYXBoIC0tZGF0ZS1vcmRlciAtLXByZXR0eT10Zm9ybWF0OiVzIHwKLQkJc2VkICJzLyAqXCQvLyIgPmFjdHVhbCAmJgotCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwl0ZXN0X2NtcF9ncmFwaCAtLWRhdGUtb3JkZXIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nLmRlY29yYXRlIGNvbmZpZ3VyYXRpb24nICcKQEAgLTgzNyw2ICs4MzQsMjEgQEAKIAl0ZXN0X2NtcCBleHBlY3QuZGVjb3JhdGUgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RlY29yYXRlLXJlZnMtZXhjbHVkZSBhbmQgc2ltcGxpZnktYnktZGVjb3JhdGlvbicgJworCWNhdCA+ZXhwZWN0LmRlY29yYXRlIDw8LVxFT0YgJiYKKwlNZXJnZS10YWctcmVhY2ggKEhFQUQgLT4gbWFzdGVyKQorCXJlYWNoICh0YWc6IHJlYWNoLCByZWFjaCkKKwlzZXZlbnRoICh0YWc6IHNldmVudGgpCisJTWVyZ2UtYnJhbmNoLXRhbmdsZQorCU1lcmdlLWJyYW5jaC1zaWRlLWVhcmx5LXBhcnQtaW50by10YW5nbGUgKHRhbmdsZSkKKwl0YW5nbGUtYSAodGFnOiB0YW5nbGUtYSkKKwlFT0YKKwlnaXQgbG9nIC1uNiAtLWRlY29yYXRlPXNob3J0IC0tcHJldHR5PSJ0Zm9ybWF0OiVmJWQiIFwKKwkJLS1kZWNvcmF0ZS1yZWZzLWV4Y2x1ZGU9IipvY3RvcHVzKiIgXAorCQktLXNpbXBsaWZ5LWJ5LWRlY29yYXRpb24gPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdC5kZWNvcmF0ZSBhY3R1YWwKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nLmRlY29yYXRlIGNvbmZpZyBwYXJzaW5nJyAnCiAJZ2l0IGxvZyAtLW9uZWxpbmUgLS1kZWNvcmF0ZT1mdWxsID5leHBlY3QuZnVsbCAmJgogCWdpdCBsb2cgLS1vbmVsaW5lIC0tZGVjb3JhdGU9c2hvcnQgPmV4cGVjdC5zaG9ydCAmJgpAQCAtOTQyLDcgKzk1NCw3IEBACiB8IHwKIHwgfCBkaWZmIC0tZ2l0IGEvcmVhY2gudCBiL3JlYWNoLnQKIHwgfCBuZXcgZmlsZSBtb2RlIDEwMDY0NAotfCB8IGluZGV4IDAwMDAwMDAuLjEwYzk1OTEKK3wgfCBpbmRleCBCRUZPUkUuLkFGVEVSCiB8IHwgLS0tIC9kZXYvbnVsbAogfCB8ICsrKyBiL3JlYWNoLnQKIHwgfCBAQCAtMCwwICsxIEBACkBAIC05NjUsNyArOTc3LDcgQEAKIHwgfCB8CiB8IHwgfCAgIGRpZmYgLS1naXQgYS9vY3RvcHVzLWIudCBiL29jdG9wdXMtYi50CiB8IHwgfCAgIG5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci18IHwgfCAgIGluZGV4IDAwMDAwMDAuLmQ1ZmNhZDAKK3wgfCB8ICAgaW5kZXggQkVGT1JFLi5BRlRFUgogfCB8IHwgICAtLS0gL2Rldi9udWxsCiB8IHwgfCAgICsrKyBiL29jdG9wdXMtYi50CiB8IHwgfCAgIEBAIC0wLDAgKzEgQEAKQEAgLTk4MSw3ICs5OTMsNyBAQAogfCB8CiB8IHwgICBkaWZmIC0tZ2l0IGEvb2N0b3B1cy1hLnQgYi9vY3RvcHVzLWEudAogfCB8ICAgbmV3IGZpbGUgbW9kZSAxMDA2NDQKLXwgfCAgIGluZGV4IDAwMDAwMDAuLjExZWUwMTUKK3wgfCAgIGluZGV4IEJFRk9SRS4uQUZURVIKIHwgfCAgIC0tLSAvZGV2L251bGwKIHwgfCAgICsrKyBiL29jdG9wdXMtYS50CiB8IHwgICBAQCAtMCwwICsxIEBACkBAIC05OTcsNyArMTAwOSw3IEBACiB8CiB8ICAgZGlmZiAtLWdpdCBhL3NldmVudGgudCBiL3NldmVudGgudAogfCAgIG5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci18ICAgaW5kZXggMDAwMDAwMC4uOTc0NGZmYworfCAgIGluZGV4IEJFRk9SRS4uQUZURVIKIHwgICAtLS0gL2Rldi9udWxsCiB8ICAgKysrIGIvc2V2ZW50aC50CiB8ICAgQEAgLTAsMCArMSBAQApAQCAtMTAzMSw3ICsxMDQzLDcgQEAKIHwgfCB8IHwKIHwgfCB8IHwgZGlmZiAtLWdpdCBhL3RhbmdsZS1hIGIvdGFuZ2xlLWEKIHwgfCB8IHwgbmV3IGZpbGUgbW9kZSAxMDA2NDQKLXwgfCB8IHwgaW5kZXggMDAwMDAwMC4uNzg5ODE5MgorfCB8IHwgfCBpbmRleCBCRUZPUkUuLkFGVEVSCiB8IHwgfCB8IC0tLSAvZGV2L251bGwKIHwgfCB8IHwgKysrIGIvdGFuZ2xlLWEKIHwgfCB8IHwgQEAgLTAsMCArMSBAQApAQCAtMTA1Myw3ICsxMDY1LDcgQEAKIHwgfCB8IHwKIHwgfCB8IHwgICBkaWZmIC0tZ2l0IGEvMiBiLzIKIHwgfCB8IHwgICBuZXcgZmlsZSBtb2RlIDEwMDY0NAotfCB8IHwgfCAgIGluZGV4IDAwMDAwMDAuLjBjZmJmMDgKK3wgfCB8IHwgICBpbmRleCBCRUZPUkUuLkFGVEVSCiB8IHwgfCB8ICAgLS0tIC9kZXYvbnVsbAogfCB8IHwgfCAgICsrKyBiLzIKIHwgfCB8IHwgICBAQCAtMCwwICsxIEBACkBAIC0xMDY5LDcgKzEwODEsNyBAQAogfCB8IHwgfAogfCB8IHwgfCBkaWZmIC0tZ2l0IGEvMSBiLzEKIHwgfCB8IHwgbmV3IGZpbGUgbW9kZSAxMDA2NDQKLXwgfCB8IHwgaW5kZXggMDAwMDAwMC4uZDAwNDkxZgorfCB8IHwgfCBpbmRleCBCRUZPUkUuLkFGVEVSCiB8IHwgfCB8IC0tLSAvZGV2L251bGwKIHwgfCB8IHwgKysrIGIvMQogfCB8IHwgfCBAQCAtMCwwICsxIEBACkBAIC0xMDg1LDcgKzEwOTcsNyBAQAogfCB8IHwgfAogfCB8IHwgfCBkaWZmIC0tZ2l0IGEvb25lIGIvb25lCiB8IHwgfCB8IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci18IHwgfCB8IGluZGV4IDAwMDAwMDAuLjlhMzMzODMKK3wgfCB8IHwgaW5kZXggQkVGT1JFLi5BRlRFUgogfCB8IHwgfCAtLS0gL2Rldi9udWxsCiB8IHwgfCB8ICsrKyBiL29uZQogfCB8IHwgfCBAQCAtMCwwICsxIEBACkBAIC0xMTAxLDcgKzExMTMsNyBAQAogfCB8IHwKIHwgfCB8ICAgZGlmZiAtLWdpdCBhL2EvdHdvIGIvYS90d28KIHwgfCB8ICAgZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Ci18IHwgfCAgIGluZGV4IDkyNDVhZjUuLjAwMDAwMDAKK3wgfCB8ICAgaW5kZXggQkVGT1JFLi5BRlRFUgogfCB8IHwgICAtLS0gYS9hL3R3bwogfCB8IHwgICArKysgL2Rldi9udWxsCiB8IHwgfCAgIEBAIC0xICswLDAgQEAKQEAgLTExMTcsNyArMTEyOSw3IEBACiB8IHwgfAogfCB8IHwgZGlmZiAtLWdpdCBhL2EvdHdvIGIvYS90d28KIHwgfCB8IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci18IHwgfCBpbmRleCAwMDAwMDAwLi45MjQ1YWY1Cit8IHwgfCBpbmRleCBCRUZPUkUuLkFGVEVSCiB8IHwgfCAtLS0gL2Rldi9udWxsCiB8IHwgfCArKysgYi9hL3R3bwogfCB8IHwgQEAgLTAsMCArMSBAQApAQCAtMTEzMyw3ICsxMTQ1LDcgQEAKIHwgfAogfCB8ICAgZGlmZiAtLWdpdCBhL2VpbiBiL2VpbgogfCB8ICAgbmV3IGZpbGUgbW9kZSAxMDA2NDQKLXwgfCAgIGluZGV4IDAwMDAwMDAuLjlkN2U2OWYKK3wgfCAgIGluZGV4IEJFRk9SRS4uQUZURVIKIHwgfCAgIC0tLSAvZGV2L251bGwKIHwgfCAgICsrKyBiL2VpbgogfCB8ICAgQEAgLTAsMCArMSBAQApAQCAtMTE1MCwxNCArMTE2MiwxNCBAQAogfAogfCAgIGRpZmYgLS1naXQgYS9pY2hpIGIvaWNoaQogfCAgIG5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci18ICAgaW5kZXggMDAwMDAwMC4uOWQ3ZTY5ZgorfCAgIGluZGV4IEJFRk9SRS4uQUZURVIKIHwgICAtLS0gL2Rldi9udWxsCiB8ICAgKysrIGIvaWNoaQogfCAgIEBAIC0wLDAgKzEgQEAKIHwgICAraWNoaQogfCAgIGRpZmYgLS1naXQgYS9vbmUgYi9vbmUKIHwgICBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKLXwgICBpbmRleCA5ZDdlNjlmLi4wMDAwMDAwCit8ICAgaW5kZXggQkVGT1JFLi5BRlRFUgogfCAgIC0tLSBhL29uZQogfCAgICsrKyAvZGV2L251bGwKIHwgICBAQCAtMSArMCwwIEBACkBAIC0xMTcyLDcgKzExODQsNyBAQAogfCAgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCiB8CiB8IGRpZmYgLS1naXQgYS9vbmUgYi9vbmUKLXwgaW5kZXggNTYyNmFiZi4uOWQ3ZTY5ZiAxMDA2NDQKK3wgaW5kZXggQkVGT1JFLi5BRlRFUiAxMDA2NDQKIHwgLS0tIGEvb25lCiB8ICsrKyBiL29uZQogfCBAQCAtMSArMSBAQApAQCAtMTE4OSwzMCArMTIwMSwxNSBAQAogCiAgIGRpZmYgLS1naXQgYS9vbmUgYi9vbmUKICAgbmV3IGZpbGUgbW9kZSAxMDA2NDQKLSAgaW5kZXggMDAwMDAwMC4uNTYyNmFiZgorICBpbmRleCBCRUZPUkUuLkFGVEVSCiAgIC0tLSAvZGV2L251bGwKICAgKysrIGIvb25lCiAgIEBAIC0wLDAgKzEgQEAKICAgK29uZQogRU9GCiAKLXNhbml0aXplX291dHB1dCAoKSB7Ci0Jc2VkIC1lICdzLyAqJC8vJyBcCi0JICAgIC1lICdzL2NvbW1pdCBbMC05YS1mXSokL2NvbW1pdCBDT01NSVRfT0JKRUNUX05BTUUvJyBcCi0JICAgIC1lICdzL01lcmdlOiBbIDAtOWEtZl0qJC9NZXJnZTogTUVSR0VfUEFSRU5UUy8nIFwKLQkgICAgLWUgJ3MvTWVyZ2UgdGFnLiovTWVyZ2UgSEVBRFMgREVTQ1JJUFRJT04vJyBcCi0JICAgIC1lICdzL01lcmdlIGNvbW1pdC4qL01lcmdlIEhFQURTIERFU0NSSVBUSU9OLycgXAotCSAgICAtZSAncy8sIDAgZGVsZXRpb25zKC0pLy8nIFwKLQkgICAgLWUgJ3MvLCAwIGluc2VydGlvbnMoKykvLycgXAotCSAgICAtZSAncy8gMSBmaWxlcyBjaGFuZ2VkLCAvIDEgZmlsZSBjaGFuZ2VkLCAvJyBcCi0JICAgIC1lICdzLywgMSBkZWxldGlvbnMoLSkvLCAxIGRlbGV0aW9uKC0pLycgXAotCSAgICAtZSAncy8sIDEgaW5zZXJ0aW9ucygrKS8sIDEgaW5zZXJ0aW9uKCspLycKLX0KLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tZ3JhcGggd2l0aCBkaWZmIGFuZCBzdGF0cycgJwotCWdpdCBsb2cgLS1uby1yZW5hbWVzIC0tZ3JhcGggLS1wcmV0dHk9c2hvcnQgLS1zdGF0IC1wID5hY3R1YWwgJiYKLQlzYW5pdGl6ZV9vdXRwdXQgPmFjdHVhbC5zYW5pdGl6ZWQgPGFjdHVhbCAmJgotCXRlc3RfaTE4bmNtcCBleHBlY3QgYWN0dWFsLnNhbml0aXplZAorCWxpYl90ZXN0X2NtcF9zaG9ydF9ncmFwaCAtLW5vLXJlbmFtZXMgLS1zdGF0IC1wCiAnCiAKIGNhdCA+ZXhwZWN0IDw8XEVPRgpAQCAtMTIzMiw3ICsxMjI5LDcgQEAKICoqKiB8IHwKICoqKiB8IHwgZGlmZiAtLWdpdCBhL3JlYWNoLnQgYi9yZWFjaC50CiAqKiogfCB8IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci0qKiogfCB8IGluZGV4IDAwMDAwMDAuLjEwYzk1OTEKKyoqKiB8IHwgaW5kZXggQkVGT1JFLi5BRlRFUgogKioqIHwgfCAtLS0gL2Rldi9udWxsCiAqKiogfCB8ICsrKyBiL3JlYWNoLnQKICoqKiB8IHwgQEAgLTAsMCArMSBAQApAQCAtMTI1NSw3ICsxMjUyLDcgQEAKICoqKiB8IHwgfAogKioqIHwgfCB8ICAgZGlmZiAtLWdpdCBhL29jdG9wdXMtYi50IGIvb2N0b3B1cy1iLnQKICoqKiB8IHwgfCAgIG5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci0qKiogfCB8IHwgICBpbmRleCAwMDAwMDAwLi5kNWZjYWQwCisqKiogfCB8IHwgICBpbmRleCBCRUZPUkUuLkFGVEVSCiAqKiogfCB8IHwgICAtLS0gL2Rldi9udWxsCiAqKiogfCB8IHwgICArKysgYi9vY3RvcHVzLWIudAogKioqIHwgfCB8ICAgQEAgLTAsMCArMSBAQApAQCAtMTI3MSw3ICsxMjY4LDcgQEAKICoqKiB8IHwKICoqKiB8IHwgICBkaWZmIC0tZ2l0IGEvb2N0b3B1cy1hLnQgYi9vY3RvcHVzLWEudAogKioqIHwgfCAgIG5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci0qKiogfCB8ICAgaW5kZXggMDAwMDAwMC4uMTFlZTAxNQorKioqIHwgfCAgIGluZGV4IEJFRk9SRS4uQUZURVIKICoqKiB8IHwgICAtLS0gL2Rldi9udWxsCiAqKiogfCB8ICAgKysrIGIvb2N0b3B1cy1hLnQKICoqKiB8IHwgICBAQCAtMCwwICsxIEBACkBAIC0xMjg3LDcgKzEyODQsNyBAQAogKioqIHwKICoqKiB8ICAgZGlmZiAtLWdpdCBhL3NldmVudGgudCBiL3NldmVudGgudAogKioqIHwgICBuZXcgZmlsZSBtb2RlIDEwMDY0NAotKioqIHwgICBpbmRleCAwMDAwMDAwLi45NzQ0ZmZjCisqKiogfCAgIGluZGV4IEJFRk9SRS4uQUZURVIKICoqKiB8ICAgLS0tIC9kZXYvbnVsbAogKioqIHwgICArKysgYi9zZXZlbnRoLnQKICoqKiB8ICAgQEAgLTAsMCArMSBAQApAQCAtMTMyMSw3ICsxMzE4LDcgQEAKICoqKiB8IHwgfCB8CiAqKiogfCB8IHwgfCBkaWZmIC0tZ2l0IGEvdGFuZ2xlLWEgYi90YW5nbGUtYQogKioqIHwgfCB8IHwgbmV3IGZpbGUgbW9kZSAxMDA2NDQKLSoqKiB8IHwgfCB8IGluZGV4IDAwMDAwMDAuLjc4OTgxOTIKKyoqKiB8IHwgfCB8IGluZGV4IEJFRk9SRS4uQUZURVIKICoqKiB8IHwgfCB8IC0tLSAvZGV2L251bGwKICoqKiB8IHwgfCB8ICsrKyBiL3RhbmdsZS1hCiAqKiogfCB8IHwgfCBAQCAtMCwwICsxIEBACkBAIC0xMzQzLDcgKzEzNDAsNyBAQAogKioqIHwgfCB8IHwKICoqKiB8IHwgfCB8ICAgZGlmZiAtLWdpdCBhLzIgYi8yCiAqKiogfCB8IHwgfCAgIG5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci0qKiogfCB8IHwgfCAgIGluZGV4IDAwMDAwMDAuLjBjZmJmMDgKKyoqKiB8IHwgfCB8ICAgaW5kZXggQkVGT1JFLi5BRlRFUgogKioqIHwgfCB8IHwgICAtLS0gL2Rldi9udWxsCiAqKiogfCB8IHwgfCAgICsrKyBiLzIKICoqKiB8IHwgfCB8ICAgQEAgLTAsMCArMSBAQApAQCAtMTM1OSw3ICsxMzU2LDcgQEAKICoqKiB8IHwgfCB8CiAqKiogfCB8IHwgfCBkaWZmIC0tZ2l0IGEvMSBiLzEKICoqKiB8IHwgfCB8IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci0qKiogfCB8IHwgfCBpbmRleCAwMDAwMDAwLi5kMDA0OTFmCisqKiogfCB8IHwgfCBpbmRleCBCRUZPUkUuLkFGVEVSCiAqKiogfCB8IHwgfCAtLS0gL2Rldi9udWxsCiAqKiogfCB8IHwgfCArKysgYi8xCiAqKiogfCB8IHwgfCBAQCAtMCwwICsxIEBACkBAIC0xMzc1LDcgKzEzNzIsNyBAQAogKioqIHwgfCB8IHwKICoqKiB8IHwgfCB8IGRpZmYgLS1naXQgYS9vbmUgYi9vbmUKICoqKiB8IHwgfCB8IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci0qKiogfCB8IHwgfCBpbmRleCAwMDAwMDAwLi45YTMzMzgzCisqKiogfCB8IHwgfCBpbmRleCBCRUZPUkUuLkFGVEVSCiAqKiogfCB8IHwgfCAtLS0gL2Rldi9udWxsCiAqKiogfCB8IHwgfCArKysgYi9vbmUKICoqKiB8IHwgfCB8IEBAIC0wLDAgKzEgQEAKQEAgLTEzOTEsNyArMTM4OCw3IEBACiAqKiogfCB8IHwKICoqKiB8IHwgfCAgIGRpZmYgLS1naXQgYS9hL3R3byBiL2EvdHdvCiAqKiogfCB8IHwgICBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKLSoqKiB8IHwgfCAgIGluZGV4IDkyNDVhZjUuLjAwMDAwMDAKKyoqKiB8IHwgfCAgIGluZGV4IEJFRk9SRS4uQUZURVIKICoqKiB8IHwgfCAgIC0tLSBhL2EvdHdvCiAqKiogfCB8IHwgICArKysgL2Rldi9udWxsCiAqKiogfCB8IHwgICBAQCAtMSArMCwwIEBACkBAIC0xNDA3LDcgKzE0MDQsNyBAQAogKioqIHwgfCB8CiAqKiogfCB8IHwgZGlmZiAtLWdpdCBhL2EvdHdvIGIvYS90d28KICoqKiB8IHwgfCBuZXcgZmlsZSBtb2RlIDEwMDY0NAotKioqIHwgfCB8IGluZGV4IDAwMDAwMDAuLjkyNDVhZjUKKyoqKiB8IHwgfCBpbmRleCBCRUZPUkUuLkFGVEVSCiAqKiogfCB8IHwgLS0tIC9kZXYvbnVsbAogKioqIHwgfCB8ICsrKyBiL2EvdHdvCiAqKiogfCB8IHwgQEAgLTAsMCArMSBAQApAQCAtMTQyMyw3ICsxNDIwLDcgQEAKICoqKiB8IHwKICoqKiB8IHwgICBkaWZmIC0tZ2l0IGEvZWluIGIvZWluCiAqKiogfCB8ICAgbmV3IGZpbGUgbW9kZSAxMDA2NDQKLSoqKiB8IHwgICBpbmRleCAwMDAwMDAwLi45ZDdlNjlmCisqKiogfCB8ICAgaW5kZXggQkVGT1JFLi5BRlRFUgogKioqIHwgfCAgIC0tLSAvZGV2L251bGwKICoqKiB8IHwgICArKysgYi9laW4KICoqKiB8IHwgICBAQCAtMCwwICsxIEBACkBAIC0xNDQwLDE0ICsxNDM3LDE0IEBACiAqKiogfAogKioqIHwgICBkaWZmIC0tZ2l0IGEvaWNoaSBiL2ljaGkKICoqKiB8ICAgbmV3IGZpbGUgbW9kZSAxMDA2NDQKLSoqKiB8ICAgaW5kZXggMDAwMDAwMC4uOWQ3ZTY5ZgorKioqIHwgICBpbmRleCBCRUZPUkUuLkFGVEVSCiAqKiogfCAgIC0tLSAvZGV2L251bGwKICoqKiB8ICAgKysrIGIvaWNoaQogKioqIHwgICBAQCAtMCwwICsxIEBACiAqKiogfCAgICtpY2hpCiAqKiogfCAgIGRpZmYgLS1naXQgYS9vbmUgYi9vbmUKICoqKiB8ICAgZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Ci0qKiogfCAgIGluZGV4IDlkN2U2OWYuLjAwMDAwMDAKKyoqKiB8ICAgaW5kZXggQkVGT1JFLi5BRlRFUgogKioqIHwgICAtLS0gYS9vbmUKICoqKiB8ICAgKysrIC9kZXYvbnVsbAogKioqIHwgICBAQCAtMSArMCwwIEBACkBAIC0xNDYyLDcgKzE0NTksNyBAQAogKioqIHwgIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQogKioqIHwKICoqKiB8IGRpZmYgLS1naXQgYS9vbmUgYi9vbmUKLSoqKiB8IGluZGV4IDU2MjZhYmYuLjlkN2U2OWYgMTAwNjQ0CisqKiogfCBpbmRleCBCRUZPUkUuLkFGVEVSIDEwMDY0NAogKioqIHwgLS0tIGEvb25lCiAqKiogfCArKysgYi9vbmUKICoqKiB8IEBAIC0xICsxIEBACkBAIC0xNDc5LDcgKzE0NzYsNyBAQAogKioqCiAqKiogICBkaWZmIC0tZ2l0IGEvb25lIGIvb25lCiAqKiogICBuZXcgZmlsZSBtb2RlIDEwMDY0NAotKioqICAgaW5kZXggMDAwMDAwMC4uNTYyNmFiZgorKioqICAgaW5kZXggQkVGT1JFLi5BRlRFUgogKioqICAgLS0tIC9kZXYvbnVsbAogKioqICAgKysrIGIvb25lCiAqKiogICBAQCAtMCwwICsxIEBACkBAIC0xNDg3LDkgKzE0ODQsNyBAQAogRU9GCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWxpbmUtcHJlZml4PSIqKiogIiAtLWdyYXBoIHdpdGggZGlmZiBhbmQgc3RhdHMnICcKLQlnaXQgbG9nIC0tbGluZS1wcmVmaXg9IioqKiAiIC0tbm8tcmVuYW1lcyAtLWdyYXBoIC0tcHJldHR5PXNob3J0IC0tc3RhdCAtcCA+YWN0dWFsICYmCi0Jc2FuaXRpemVfb3V0cHV0ID5hY3R1YWwuc2FuaXRpemVkIDxhY3R1YWwgJiYKLQl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbC5zYW5pdGl6ZWQKKwlsaWJfdGVzdF9jbXBfc2hvcnRfZ3JhcGggLS1saW5lLXByZWZpeD0iKioqICIgLS1uby1yZW5hbWVzIC0tc3RhdCAtcAogJwogCiBjYXQgPmV4cGVjdCA8PC1cRU9GCkBAIC0xNTExLDkgKzE1MDYsNyBAQAogRU9GCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggLS1uYW1lLXN0YXR1cycgJwotCWdpdCBsb2cgLS1ncmFwaCAtLWZvcm1hdD0lcyAtLW5hbWUtc3RhdHVzIHRhbmdsZS4ucmVhY2ggPmFjdHVhbCAmJgotCXNhbml0aXplX291dHB1dCA8YWN0dWFsID5hY3R1YWwuc2FuaXRpemVkICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbC5zYW5pdGl6ZWQKKwl0ZXN0X2NtcF9ncmFwaCAtLW5hbWUtc3RhdHVzIHRhbmdsZS4ucmVhY2gKICcKIAogY2F0ID5leHBlY3QgPDwtXEVPRgpAQCAtMTUzNSw5ICsxNTI4LDcgQEAKIEVPRgogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1ncmFwaCB3aXRoIC0tbmFtZS1vbmx5JyAnCi0JZ2l0IGxvZyAtLWdyYXBoIC0tZm9ybWF0PSVzIC0tbmFtZS1vbmx5IHRhbmdsZS4ucmVhY2ggPmFjdHVhbCAmJgotCXNhbml0aXplX291dHB1dCA8YWN0dWFsID5hY3R1YWwuc2FuaXRpemVkICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbC5zYW5pdGl6ZWQKKwl0ZXN0X2NtcF9ncmFwaCAtLW5hbWUtb25seSB0YW5nbGUuLnJlYWNoCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RvdGRvdCBpcyBhIHBhcmVudCBkaXJlY3RvcnknICcKQEAgLTE1NTUsNiArMTU0NiwxNCBAQAogCWdpdCBjb21taXQgLVMgLW0gc2lnbmVkX2NvbW1pdAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQRyAnc2V0dXAgc2lnbmVkIGJyYW5jaCB3aXRoIHN1YmtleScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCAmJiBnaXQgY2hlY2tvdXQgbWFzdGVyIiAmJgorCWdpdCBjaGVja291dCAtYiBzaWduZWQtc3Via2V5IG1hc3RlciAmJgorCWVjaG8gZm9vID5mb28gJiYKKwlnaXQgYWRkIGZvbyAmJgorCWdpdCBjb21taXQgLVNCNzIyNzE4OSAtbSBzaWduZWRfY29tbWl0CisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHU00gJ3NldHVwIHNpZ25lZCBicmFuY2ggeDUwOScgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCAmJiBnaXQgY2hlY2tvdXQgbWFzdGVyIiAmJgogCWdpdCBjaGVja291dCAtYiBzaWduZWQteDUwOSBtYXN0ZXIgJiYKQEAgLTE1NjUsNiArMTU2NCwxOCBAQAogCWdpdCBjb21taXQgLVMgLW0gc2lnbmVkX2NvbW1pdAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQR1NNICdsb2cgeDUwOSBmaW5nZXJwcmludCcgJworCWVjaG8gIkY4QkY2MkUwNjkzRDA2OTQ4MTYzNzcwOTk5MDlDNzc5RkEyM0ZENjUgfCAiID5leHBlY3QgJiYKKwlnaXQgbG9nIC1uMSAtLWZvcm1hdD0iJUdGIHwgJUdQIiBzaWduZWQteDUwOSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQR1NNICdsb2cgT3BlblBHUCBmaW5nZXJwcmludCcgJworCWVjaG8gIkQ0QkUyMjMxMUFEMzEzMUU1RURBMjlBNDYxMDkyRTg1QjcyMjcxODkiID4gZXhwZWN0ICYmCisJZ2l0IGxvZyAtbjEgLS1mb3JtYXQ9IiVHUCIgc2lnbmVkLXN1YmtleSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQRyAnbG9nIC0tZ3JhcGggLS1zaG93LXNpZ25hdHVyZScgJwogCWdpdCBsb2cgLS1ncmFwaCAtLXNob3ctc2lnbmF0dXJlIC1uMSBzaWduZWQgPmFjdHVhbCAmJgogCWdyZXAgIl58IGdwZzogU2lnbmF0dXJlIG1hZGUiIGFjdHVhbCAmJgpAQCAtMTU5Niw2ICsxNjA3LDI2IEBACiAJZ3JlcCAiXnwgfCBncGc6IEdvb2Qgc2lnbmF0dXJlIiBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyBHUEcgJ2xvZyAtLWdyYXBoIC0tc2hvdy1zaWduYXR1cmUgZm9yIG1lcmdlZCB0YWcgaW4gc2hhbGxvdyBjbG9uZScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCAmJiBnaXQgY2hlY2tvdXQgbWFzdGVyIiAmJgorCWdpdCBjaGVja291dCAtYiBwbGFpbi1zaGFsbG93IG1hc3RlciAmJgorCWVjaG8gYWFhID5iYXIgJiYKKwlnaXQgYWRkIGJhciAmJgorCWdpdCBjb21taXQgLW0gYmFyX2NvbW1pdCAmJgorCWdpdCBjaGVja291dCAtLWRldGFjaCBtYXN0ZXIgJiYKKwllY2hvIGJiYiA+YmF6ICYmCisJZ2l0IGFkZCBiYXogJiYKKwlnaXQgY29tbWl0IC1tIGJhel9jb21taXQgJiYKKwlnaXQgdGFnIC1zIC1tIHNpZ25lZF90YWdfbXNnIHNpZ25lZF90YWdfc2hhbGxvdyAmJgorCWhhc2g9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCisJZ2l0IGNoZWNrb3V0IHBsYWluLXNoYWxsb3cgJiYKKwlnaXQgbWVyZ2UgLS1uby1mZiAtbSBtc2cgc2lnbmVkX3RhZ19zaGFsbG93ICYmCisJZ2l0IGNsb25lIC0tZGVwdGggMSAtLW5vLWxvY2FsIC4gc2hhbGxvdyAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLXJmIHNoYWxsb3ciICYmCisJZ2l0IC1DIHNoYWxsb3cgbG9nIC0tZ3JhcGggLS1zaG93LXNpZ25hdHVyZSAtbjEgcGxhaW4tc2hhbGxvdyA+YWN0dWFsICYmCisJZ3JlcCAidGFnIHNpZ25lZF90YWdfc2hhbGxvdyBuYW1lcyBhIG5vbi1wYXJlbnQgJGhhc2giIGFjdHVhbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQR1NNICdsb2cgLS1ncmFwaCAtLXNob3ctc2lnbmF0dXJlIGZvciBtZXJnZWQgdGFnIHg1MDknICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQgJiYgZ2l0IGNoZWNrb3V0IG1hc3RlciIgJiYKIAl0ZXN0X2NvbmZpZyBncGcuZm9ybWF0IHg1MDkgJiYKQEAgLTE2NzQsMTAgKzE3MDUsMTAgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tc291cmNlIHBhaW50cyBicmFuY2ggbmFtZXMnICcKLQljYXQgPmV4cGVjdCA8PC1cRU9GICYmCi0JMDllMTJhOQlzb3VyY2UtYiB0aHJlZQotCThlMzkzZTEJc291cmNlLWEgdHdvCi0JMWFjNmM3Nwlzb3VyY2UtYiBvbmUKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCA6L3RocmVlKQlzb3VyY2UtYiB0aHJlZQorCSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IDovdHdvICApCXNvdXJjZS1hIHR3bworCSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IDovb25lICApCXNvdXJjZS1iIG9uZQogCUVPRgogCWdpdCBsb2cgLS1vbmVsaW5lIC0tc291cmNlIHNvdXJjZS1hIHNvdXJjZS1iID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCkBAIC0xNjg1LDE5ICsxNzE2LDE5IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLXNvdXJjZSBwYWludHMgdGFnIG5hbWVzJyAnCiAJZ2l0IHRhZyAtbSB0YWdnZWQgc291cmNlLXRhZyAmJgotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKLQkwOWUxMmE5CXNvdXJjZS10YWcgdGhyZWUKLQk4ZTM5M2UxCXNvdXJjZS1hIHR3bwotCTFhYzZjNzcJc291cmNlLXRhZyBvbmUKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCA6L3RocmVlKQlzb3VyY2UtdGFnIHRocmVlCisJJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgOi90d28gICkJc291cmNlLWEgdHdvCisJJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgOi9vbmUgICkJc291cmNlLXRhZyBvbmUKIAlFT0YKIAlnaXQgbG9nIC0tb25lbGluZSAtLXNvdXJjZSBzb3VyY2UtdGFnIHNvdXJjZS1hID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLXNvdXJjZSBwYWludHMgc3ltbWV0cmljIHJhbmdlcycgJwotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKLQkwOWUxMmE5CXNvdXJjZS1iIHRocmVlCi0JOGUzOTNlMQlzb3VyY2UtYSB0d28KKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCA6L3RocmVlKQlzb3VyY2UtYiB0aHJlZQorCSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IDovdHdvICApCXNvdXJjZS1hIHR3bwogCUVPRgogCWdpdCBsb2cgLS1vbmVsaW5lIC0tc291cmNlIHNvdXJjZS1hLi4uc291cmNlLWIgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKQEAgLTE3MDcsNCArMTczOCwxMSBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCBsb2cgLS1leGNsdWRlLXByb21pc29yLW9iamVjdHMgc291cmNlLWEKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tZW5kLW9mLW9wdGlvbnMnICcKKyAgICAgICBnaXQgdXBkYXRlLXJlZiByZWZzL2hlYWRzLy0tc291cmNlIEhFQUQgJiYKKyAgICAgICBnaXQgbG9nIC0tZW5kLW9mLW9wdGlvbnMgLS1zb3VyY2UgPmFjdHVhbCAmJgorICAgICAgIGdpdCBsb2cgPmV4cGVjdCAmJgorICAgICAgIHRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q0MjAzLW1haWxtYXAuc2ggYi90L3Q0MjAzLW1haWxtYXAuc2gKaW5kZXggNDNiMTUyMi4uNTg2YzNhOCAxMDA3NTUKLS0tIGEvdC90NDIwMy1tYWlsbWFwLnNoCisrKyBiL3QvdDQyMDMtbWFpbG1hcC5zaApAQCAtMTMsOCArMTMsOCBAQAogfQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIHNldHVwICcKLQljYXQgPmNvbnRhY3RzIDw8LVxFT0YgJiYKLQlBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgorCWNhdCA+Y29udGFjdHMgPDwtIEVPRiAmJgorCSRHSVRfQVVUSE9SX05BTUUgPCRHSVRfQVVUSE9SX0VNQUlMPgogCW5pY2sxIDxidWdzQGNvbXBhbnkueHg+CiAJRU9GCiAKQEAgLTMzLDE5ICszMywxOSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjay1tYWlsbWFwIGFyZ3VtZW50cycgJwotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKLQlBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPgorCWNhdCA+ZXhwZWN0IDw8LSBFT0YgJiYKKwkkR0lUX0FVVEhPUl9OQU1FIDwkR0lUX0FVVEhPUl9FTUFJTD4KIAluaWNrMSA8YnVnc0Bjb21wYW55Lnh4PgogCUVPRgogCWdpdCBjaGVjay1tYWlsbWFwIFwKLQkJIkEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+IiBcCisJCSIkR0lUX0FVVEhPUl9OQU1FIDwkR0lUX0FVVEhPUl9FTUFJTD4iIFwKIAkJIm5pY2sxIDxidWdzQGNvbXBhbnkueHg+IiA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjay1tYWlsbWFwIC0tc3RkaW4nICcKLQljYXQgPmV4cGVjdCA8PC1cRU9GICYmCi0JQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KKwljYXQgPmV4cGVjdCA8PC0gRU9GICYmCisJJEdJVF9BVVRIT1JfTkFNRSA8JEdJVF9BVVRIT1JfRU1BSUw+CiAJbmljazEgPGJ1Z3NAY29tcGFueS54eD4KIAlFT0YKIAlnaXQgY2hlY2stbWFpbG1hcCAtLXN0ZGluIDxjb250YWN0cyA+YWN0dWFsICYmCkBAIC02Niw4ICs2Niw4IEBACiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZWNrLW1haWxtYXAgYm9ndXMKICcKIAotY2F0ID5leHBlY3QgPDxcRU9GCi1BIFUgVGhvciAoMSk6CitjYXQgPmV4cGVjdCA8PCBFT0YKKyRHSVRfQVVUSE9SX05BTUUgKDEpOgogICAgICAgaW5pdGlhbAogCiBuaWNrMSAoMSk6CkBAIC05MCw3ICs5MCw3IEBACiBFT0YKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGVmYXVsdCAubWFpbG1hcCcgJwotCWVjaG8gIlJlcG8gR3V5IDxhdXRob3JAZXhhbXBsZS5jb20+IiA+IC5tYWlsbWFwICYmCisJZWNobyAiUmVwbyBHdXkgPCRHSVRfQVVUSE9SX0VNQUlMPiIgPiAubWFpbG1hcCAmJgogCWdpdCBzaG9ydGxvZyBIRUFEID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC0xMjIsNyArMTIyLDcgQEAKIAogRU9GCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtYWlsbWFwLmZpbGUgb3ZlcnJpZGUnICcKLQllY2hvICJFeHRlcm5hbCBHdXkgPGF1dGhvckBleGFtcGxlLmNvbT4iID4+IGludGVybmFsX21haWxtYXAvLm1haWxtYXAgJiYKKwllY2hvICJFeHRlcm5hbCBHdXkgPCRHSVRfQVVUSE9SX0VNQUlMPiIgPj4gaW50ZXJuYWxfbWFpbG1hcC8ubWFpbG1hcCAmJgogCWdpdCBjb25maWcgbWFpbG1hcC5maWxlIGludGVybmFsX21haWxtYXAvLm1haWxtYXAgJiYKIAlnaXQgc2hvcnRsb2cgSEVBRCA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbApAQCAtMTc4LDggKzE3OCw4IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCi1jYXQgPmV4cGVjdCA8PFxFT0YKLUEgVSBUaG9yICgxKToKK2NhdCA+ZXhwZWN0IDw8IEVPRgorJEdJVF9BVVRIT1JfTkFNRSAoMSk6CiAgICAgICBpbml0aWFsCiAKIG5pY2sxICgxKToKQEAgLTE5NSwxOCArMTk1LDE4IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBtYWlsbWFwIGJsb2IgdGVzdHMnICcKIAlnaXQgY2hlY2tvdXQgLWIgbWFwICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY2hlY2tvdXQgbWFzdGVyIiAmJgotCWNhdCA+anVzdC1idWdzIDw8LVxFT0YgJiYKKwljYXQgPmp1c3QtYnVncyA8PC0gRU9GICYmCiAJQmxvYiBHdXkgPGJ1Z3NAY29tcGFueS54eD4KIAlFT0YKLQljYXQgPmJvdGggPDwtXEVPRiAmJgotCUJsb2IgR3V5IDxhdXRob3JAZXhhbXBsZS5jb20+CisJY2F0ID5ib3RoIDw8LSBFT0YgJiYKKwlCbG9iIEd1eSA8JEdJVF9BVVRIT1JfRU1BSUw+CiAJQmxvYiBHdXkgPGJ1Z3NAY29tcGFueS54eD4KIAlFT0YKLQlwcmludGYgIlRyaWNreSBHdXkgPGF1dGhvckBleGFtcGxlLmNvbT4iID5uby1uZXdsaW5lICYmCisJcHJpbnRmICJUcmlja3kgR3V5IDwkR0lUX0FVVEhPUl9FTUFJTD4iID5uby1uZXdsaW5lICYmCiAJZ2l0IGFkZCBqdXN0LWJ1Z3MgYm90aCBuby1uZXdsaW5lICYmCiAJZ2l0IGNvbW1pdCAtbSAibXkgbWFpbG1hcHMiICYmCi0JZWNobyAiUmVwbyBHdXkgPGF1dGhvckBleGFtcGxlLmNvbT4iID4ubWFpbG1hcCAmJgotCWVjaG8gIkludGVybmFsIEd1eSA8YXV0aG9yQGV4YW1wbGUuY29tPiIgPmludGVybmFsLm1hcAorCWVjaG8gIlJlcG8gR3V5IDwkR0lUX0FVVEhPUl9FTUFJTD4iID4ubWFpbG1hcCAmJgorCWVjaG8gIkludGVybmFsIEd1eSA8JEdJVF9BVVRIT1JfRU1BSUw+IiA+aW50ZXJuYWwubWFwCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21haWxtYXAuYmxvYiBzZXQnICcKQEAgLTI2NiwxMiArMjY2LDEyIEBACiAJZ2l0IGluaXQgbm9uLWJhcmUgJiYKIAkoCiAJCWNkIG5vbi1iYXJlICYmCi0JCXRlc3RfY29tbWl0IG9uZSAubWFpbG1hcCAiRmFrZSBOYW1lIDxhdXRob3JAZXhhbXBsZS5jb20+IiAmJgorCQl0ZXN0X2NvbW1pdCBvbmUgLm1haWxtYXAgIkZha2UgTmFtZSA8JEdJVF9BVVRIT1JfRU1BSUw+IiAmJgogCQllY2hvICIgICAgIDEJRmFrZSBOYW1lIiA+ZXhwZWN0ICYmCiAJCWdpdCBzaG9ydGxvZyAtbnMgSEVBRCA+YWN0dWFsICYmCiAJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAkJcm0gLm1haWxtYXAgJiYKLQkJZWNobyAiICAgICAxCUEgVSBUaG9yIiA+ZXhwZWN0ICYmCisJCWVjaG8gIiAgICAgMQkkR0lUX0FVVEhPUl9OQU1FIiA+ZXhwZWN0ICYmCiAJCWdpdCBzaG9ydGxvZyAtbnMgSEVBRCA+YWN0dWFsICYmCiAJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKIAkpCkBAIC0zMDUsMjYgKzMwNSwyNiBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaW5nbGUtY2hhcmFjdGVyIG5hbWUnICcKLQllY2hvICIgICAgIDEJQSA8YXV0aG9yQGV4YW1wbGUuY29tPiIgPmV4cGVjdCAmJgorCWVjaG8gIiAgICAgMQlBIDwkR0lUX0FVVEhPUl9FTUFJTD4iID5leHBlY3QgJiYKIAllY2hvICIgICAgIDEJbmljazEgPGJ1Z3NAY29tcGFueS54eD4iID4+ZXhwZWN0ICYmCi0JZWNobyAiQSA8YXV0aG9yQGV4YW1wbGUuY29tPiIgPi5tYWlsbWFwICYmCisJZWNobyAiQSA8JEdJVF9BVVRIT1JfRU1BSUw+IiA+Lm1haWxtYXAgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC5tYWlsbWFwIiAmJgogCWdpdCBzaG9ydGxvZyAtZXMgSEVBRCA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcmVzZXJ2ZSBjYW5vbmljYWwgZW1haWwgY2FzZScgJwotCWVjaG8gIiAgICAgMQlBIFUgVGhvciA8QVVUSE9SQGV4YW1wbGUuY29tPiIgPmV4cGVjdCAmJgorCWVjaG8gIiAgICAgMQkkR0lUX0FVVEhPUl9OQU1FIDxBVVRIT1JAZXhhbXBsZS5jb20+IiA+ZXhwZWN0ICYmCiAJZWNobyAiICAgICAxCW5pY2sxIDxidWdzQGNvbXBhbnkueHg+IiA+PmV4cGVjdCAmJgotCWVjaG8gIjxBVVRIT1JAZXhhbXBsZS5jb20+IDxhdXRob3JAZXhhbXBsZS5jb20+IiA+Lm1haWxtYXAgJiYKKwllY2hvICI8QVVUSE9SQGV4YW1wbGUuY29tPiA8JEdJVF9BVVRIT1JfRU1BSUw+IiA+Lm1haWxtYXAgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC5tYWlsbWFwIiAmJgogCWdpdCBzaG9ydGxvZyAtZXMgSEVBRCA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiAjIEV4dGVuZGVkIG1haWxtYXAgY29uZmlndXJhdGlvbnMgc2hvdWxkIGdpdmUgdXMgdGhlIGZvbGxvd2luZyBvdXRwdXQgZm9yIHNob3J0bG9nCi1jYXQgPmV4cGVjdCA8PFxFT0YKLUEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+ICgxKToKK2NhdCA+ZXhwZWN0IDw8IEVPRgorJEdJVF9BVVRIT1JfTkFNRSA8JEdJVF9BVVRIT1JfRU1BSUw+ICgxKToKICAgICAgIGluaXRpYWwKIAogQ1RPIDxjdG9AY29tcGFueS54eD4gKDEpOgpAQCAtMzcwLDcgKzM3MCw3IEBACiAJZ2l0IGNvbW1pdCAtLWF1dGhvciAiQ1RPIDxjdG9AY29vbXBhbnkueHg+IiAtbSBzZXZlbnRoICYmCiAKIAlta2RpciAtcCBpbnRlcm5hbF9tYWlsbWFwICYmCi0JZWNobyAiQ29tbWl0dGVkIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+IiA+IGludGVybmFsX21haWxtYXAvLm1haWxtYXAgJiYKKwllY2hvICJDb21taXR0ZWQgPCRHSVRfQ09NTUlUVEVSX0VNQUlMPiIgPiBpbnRlcm5hbF9tYWlsbWFwLy5tYWlsbWFwICYmCiAJZWNobyAiPGN0b0Bjb21wYW55Lnh4PiAgICAgICAgICAgICAgICAgICAgICAgPGN0b0Bjb29tcGFueS54eD4iID4+IGludGVybmFsX21haWxtYXAvLm1haWxtYXAgJiYKIAllY2hvICJTb21lIER1ZGUgPHNvbWVAZHVkZS54eD4gICAgICAgICBuaWNrMSA8YnVnc0Bjb21wYW55Lnh4PiIgPj4gaW50ZXJuYWxfbWFpbG1hcC8ubWFpbG1hcCAmJgogCWVjaG8gIk90aGVyIEF1dGhvciA8b3RoZXJAYXV0aG9yLnh4PiAgIG5pY2syIDxidWdzQGNvbXBhbnkueHg+IiA+PiBpbnRlcm5hbF9tYWlsbWFwLy5tYWlsbWFwICYmCkBAIC0zODQsMjcgKzM4NCwyNyBAQAogJwogCiAjIGdpdCBsb2cgd2l0aCAtLXByZXR0eSBmb3JtYXQgd2hpY2ggdXNlcyB0aGUgbmFtZSBhbmQgZW1haWwgbWFpbG1hcCBwbGFjZW1hcmtlcnMKLWNhdCA+ZXhwZWN0IDw8XEVPRgorY2F0ID5leHBlY3QgPDwgRU9GCiBBdXRob3IgQ1RPIDxjdG9AY29vbXBhbnkueHg+IG1hcHMgdG8gQ1RPIDxjdG9AY29tcGFueS54eD4KLUNvbW1pdHRlciBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+IG1hcHMgdG8gQ29tbWl0dGVkIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+CitDb21taXR0ZXIgJEdJVF9DT01NSVRURVJfTkFNRSA8JEdJVF9DT01NSVRURVJfRU1BSUw+IG1hcHMgdG8gQ29tbWl0dGVkIDwkR0lUX0NPTU1JVFRFUl9FTUFJTD4KIAogQXV0aG9yIGNsYXVzIDxtZUBjb21wYW55Lnh4PiBtYXBzIHRvIFNhbnRhIENsYXVzIDxzYW50YS5jbGF1c0Bub3J0aHBvbGUueHg+Ci1Db21taXR0ZXIgQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPiBtYXBzIHRvIENvbW1pdHRlZCA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPgorQ29tbWl0dGVyICRHSVRfQ09NTUlUVEVSX05BTUUgPCRHSVRfQ09NTUlUVEVSX0VNQUlMPiBtYXBzIHRvIENvbW1pdHRlZCA8JEdJVF9DT01NSVRURVJfRU1BSUw+CiAKIEF1dGhvciBzYW50YSA8bWVAY29tcGFueS54eD4gbWFwcyB0byBTYW50YSBDbGF1cyA8c2FudGEuY2xhdXNAbm9ydGhwb2xlLnh4PgotQ29tbWl0dGVyIEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4gbWFwcyB0byBDb21taXR0ZWQgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KK0NvbW1pdHRlciAkR0lUX0NPTU1JVFRFUl9OQU1FIDwkR0lUX0NPTU1JVFRFUl9FTUFJTD4gbWFwcyB0byBDb21taXR0ZWQgPCRHSVRfQ09NTUlUVEVSX0VNQUlMPgogCiBBdXRob3IgbmljazIgPG5pY2syQGNvbXBhbnkueHg+IG1hcHMgdG8gT3RoZXIgQXV0aG9yIDxvdGhlckBhdXRob3IueHg+Ci1Db21taXR0ZXIgQyBPIE1pdHRlciA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPiBtYXBzIHRvIENvbW1pdHRlZCA8Y29tbWl0dGVyQGV4YW1wbGUuY29tPgorQ29tbWl0dGVyICRHSVRfQ09NTUlUVEVSX05BTUUgPCRHSVRfQ09NTUlUVEVSX0VNQUlMPiBtYXBzIHRvIENvbW1pdHRlZCA8JEdJVF9DT01NSVRURVJfRU1BSUw+CiAKIEF1dGhvciBuaWNrMiA8YnVnc0Bjb21wYW55Lnh4PiBtYXBzIHRvIE90aGVyIEF1dGhvciA8b3RoZXJAYXV0aG9yLnh4PgotQ29tbWl0dGVyIEMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4gbWFwcyB0byBDb21taXR0ZWQgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KK0NvbW1pdHRlciAkR0lUX0NPTU1JVFRFUl9OQU1FIDwkR0lUX0NPTU1JVFRFUl9FTUFJTD4gbWFwcyB0byBDb21taXR0ZWQgPCRHSVRfQ09NTUlUVEVSX0VNQUlMPgogCiBBdXRob3IgbmljazEgPGJ1Z3NAY29tcGFueS54eD4gbWFwcyB0byBTb21lIER1ZGUgPHNvbWVAZHVkZS54eD4KLUNvbW1pdHRlciBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+IG1hcHMgdG8gQ29tbWl0dGVkIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+CitDb21taXR0ZXIgJEdJVF9DT01NSVRURVJfTkFNRSA8JEdJVF9DT01NSVRURVJfRU1BSUw+IG1hcHMgdG8gQ29tbWl0dGVkIDwkR0lUX0NPTU1JVFRFUl9FTUFJTD4KIAotQXV0aG9yIEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+IG1hcHMgdG8gQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KLUNvbW1pdHRlciBDIE8gTWl0dGVyIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+IG1hcHMgdG8gQ29tbWl0dGVkIDxjb21taXR0ZXJAZXhhbXBsZS5jb20+CitBdXRob3IgJEdJVF9BVVRIT1JfTkFNRSA8JEdJVF9BVVRIT1JfRU1BSUw+IG1hcHMgdG8gJEdJVF9BVVRIT1JfTkFNRSA8JEdJVF9BVVRIT1JfRU1BSUw+CitDb21taXR0ZXIgJEdJVF9DT01NSVRURVJfTkFNRSA8JEdJVF9DT01NSVRURVJfRU1BSUw+IG1hcHMgdG8gQ29tbWl0dGVkIDwkR0lUX0NPTU1JVFRFUl9FTUFJTD4KIEVPRgogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdMb2cgb3V0cHV0IChjb21wbGV4IG1hcHBpbmcpJyAnCkBAIC00MTIsMTQgKzQxMiw0MiBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAotY2F0ID5leHBlY3QgPDxcRU9GCitjYXQgPmV4cGVjdCA8PCBFT0YKK0F1dGhvciBlbWFpbCBjdG9AY29vbXBhbnkueHggaGFzIGxvY2FsLXBhcnQgY3RvCitDb21taXR0ZXIgZW1haWwgJEdJVF9DT01NSVRURVJfRU1BSUwgaGFzIGxvY2FsLXBhcnQgJFRFU1RfQ09NTUlUVEVSX0xPQ0FMTkFNRQorCitBdXRob3IgZW1haWwgbWVAY29tcGFueS54eCBoYXMgbG9jYWwtcGFydCBtZQorQ29tbWl0dGVyIGVtYWlsICRHSVRfQ09NTUlUVEVSX0VNQUlMIGhhcyBsb2NhbC1wYXJ0ICRURVNUX0NPTU1JVFRFUl9MT0NBTE5BTUUKKworQXV0aG9yIGVtYWlsIG1lQGNvbXBhbnkueHggaGFzIGxvY2FsLXBhcnQgbWUKK0NvbW1pdHRlciBlbWFpbCAkR0lUX0NPTU1JVFRFUl9FTUFJTCBoYXMgbG9jYWwtcGFydCAkVEVTVF9DT01NSVRURVJfTE9DQUxOQU1FCisKK0F1dGhvciBlbWFpbCBuaWNrMkBjb21wYW55Lnh4IGhhcyBsb2NhbC1wYXJ0IG5pY2syCitDb21taXR0ZXIgZW1haWwgJEdJVF9DT01NSVRURVJfRU1BSUwgaGFzIGxvY2FsLXBhcnQgJFRFU1RfQ09NTUlUVEVSX0xPQ0FMTkFNRQorCitBdXRob3IgZW1haWwgYnVnc0Bjb21wYW55Lnh4IGhhcyBsb2NhbC1wYXJ0IGJ1Z3MKK0NvbW1pdHRlciBlbWFpbCAkR0lUX0NPTU1JVFRFUl9FTUFJTCBoYXMgbG9jYWwtcGFydCAkVEVTVF9DT01NSVRURVJfTE9DQUxOQU1FCisKK0F1dGhvciBlbWFpbCBidWdzQGNvbXBhbnkueHggaGFzIGxvY2FsLXBhcnQgYnVncworQ29tbWl0dGVyIGVtYWlsICRHSVRfQ09NTUlUVEVSX0VNQUlMIGhhcyBsb2NhbC1wYXJ0ICRURVNUX0NPTU1JVFRFUl9MT0NBTE5BTUUKKworQXV0aG9yIGVtYWlsIGF1dGhvckBleGFtcGxlLmNvbSBoYXMgbG9jYWwtcGFydCBhdXRob3IKK0NvbW1pdHRlciBlbWFpbCAkR0lUX0NPTU1JVFRFUl9FTUFJTCBoYXMgbG9jYWwtcGFydCAkVEVTVF9DT01NSVRURVJfTE9DQUxOQU1FCitFT0YKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnTG9nIG91dHB1dCAobG9jYWwtcGFydCBlbWFpbCBhZGRyZXNzKScgJworCWdpdCBsb2cgLS1wcmV0dHk9Zm9ybWF0OiJBdXRob3IgZW1haWwgJWFlIGhhcyBsb2NhbC1wYXJ0ICVhbCVuQ29tbWl0dGVyIGVtYWlsICVjZSBoYXMgbG9jYWwtcGFydCAlY2wlbiIgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKworY2F0ID5leHBlY3QgPDwgRU9GCiBBdXRob3I6IENUTyA8Y3RvQGNvbXBhbnkueHg+CiBBdXRob3I6IFNhbnRhIENsYXVzIDxzYW50YS5jbGF1c0Bub3J0aHBvbGUueHg+CiBBdXRob3I6IFNhbnRhIENsYXVzIDxzYW50YS5jbGF1c0Bub3J0aHBvbGUueHg+CiBBdXRob3I6IE90aGVyIEF1dGhvciA8b3RoZXJAYXV0aG9yLnh4PgogQXV0aG9yOiBPdGhlciBBdXRob3IgPG90aGVyQGF1dGhvci54eD4KIEF1dGhvcjogU29tZSBEdWRlIDxzb21lQGR1ZGUueHg+Ci1BdXRob3I6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+CitBdXRob3I6ICRHSVRfQVVUSE9SX05BTUUgPCRHSVRfQVVUSE9SX0VNQUlMPgogRU9GCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0xvZyBvdXRwdXQgd2l0aCAtLXVzZS1tYWlsbWFwJyAnCkBAIC00MjcsMTQgKzQ1NSwxNCBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAotY2F0ID5leHBlY3QgPDxcRU9GCitjYXQgPmV4cGVjdCA8PCBFT0YKIEF1dGhvcjogQ1RPIDxjdG9AY29tcGFueS54eD4KIEF1dGhvcjogU2FudGEgQ2xhdXMgPHNhbnRhLmNsYXVzQG5vcnRocG9sZS54eD4KIEF1dGhvcjogU2FudGEgQ2xhdXMgPHNhbnRhLmNsYXVzQG5vcnRocG9sZS54eD4KIEF1dGhvcjogT3RoZXIgQXV0aG9yIDxvdGhlckBhdXRob3IueHg+CiBBdXRob3I6IE90aGVyIEF1dGhvciA8b3RoZXJAYXV0aG9yLnh4PgogQXV0aG9yOiBTb21lIER1ZGUgPHNvbWVAZHVkZS54eD4KLUF1dGhvcjogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4KK0F1dGhvcjogJEdJVF9BVVRIT1JfTkFNRSA8JEdJVF9BVVRIT1JfRU1BSUw+CiBFT0YKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnTG9nIG91dHB1dCB3aXRoIGxvZy5tYWlsbWFwJyAnCkBAIC00NDIsNiArNDcwLDM0IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cubWFpbG1hcD1mYWxzZSBkaXNhYmxlcyBtYWlsbWFwJyAnCisJY2F0ID5leHBlY3QgPDwtIEVPRiAmJgorCUF1dGhvcjogQ1RPIDxjdG9AY29vbXBhbnkueHg+CisJQXV0aG9yOiBjbGF1cyA8bWVAY29tcGFueS54eD4KKwlBdXRob3I6IHNhbnRhIDxtZUBjb21wYW55Lnh4PgorCUF1dGhvcjogbmljazIgPG5pY2syQGNvbXBhbnkueHg+CisJQXV0aG9yOiBuaWNrMiA8YnVnc0Bjb21wYW55Lnh4PgorCUF1dGhvcjogbmljazEgPGJ1Z3NAY29tcGFueS54eD4KKwlBdXRob3I6ICRHSVRfQVVUSE9SX05BTUUgPCRHSVRfQVVUSE9SX0VNQUlMPgorCUVPRgorCWdpdCAtYyBsb2cubWFpbG1hcD1GYWxzZSBsb2cgfCBncmVwIEF1dGhvciA+IGFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1uby11c2UtbWFpbG1hcCBkaXNhYmxlcyBtYWlsbWFwJyAnCisJY2F0ID5leHBlY3QgPDwtIEVPRiAmJgorCUF1dGhvcjogQ1RPIDxjdG9AY29vbXBhbnkueHg+CisJQXV0aG9yOiBjbGF1cyA8bWVAY29tcGFueS54eD4KKwlBdXRob3I6IHNhbnRhIDxtZUBjb21wYW55Lnh4PgorCUF1dGhvcjogbmljazIgPG5pY2syQGNvbXBhbnkueHg+CisJQXV0aG9yOiBuaWNrMiA8YnVnc0Bjb21wYW55Lnh4PgorCUF1dGhvcjogbmljazEgPGJ1Z3NAY29tcGFueS54eD4KKwlBdXRob3I6ICRHSVRfQVVUSE9SX05BTUUgPCRHSVRfQVVUSE9SX0VNQUlMPgorCUVPRgorCWdpdCBsb2cgLS1uby11c2UtbWFpbG1hcCB8IGdyZXAgQXV0aG9yID4gYWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCiBjYXQgPmV4cGVjdCA8PFxFT0YKIEF1dGhvcjogU2FudGEgQ2xhdXMgPHNhbnRhLmNsYXVzQG5vcnRocG9sZS54eD4KIEF1dGhvcjogU2FudGEgQ2xhdXMgPHNhbnRhLmNsYXVzQG5vcnRocG9sZS54eD4KQEAgLTQ2MSwxNCArNTE3LDE5IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cubWFpbG1hcCBpcyB0cnVlIGJ5IGRlZmF1bHQgdGhlc2UgZGF5cycgJworCWdpdCBsb2cgLS1hdXRob3IgU2FudGEgfCBncmVwIEF1dGhvciA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdPbmx5IGdyZXAgcmVwbGFjZWQgYXV0aG9yIHdpdGggLS11c2UtbWFpbG1hcCcgJwogCWdpdCBsb2cgLS11c2UtbWFpbG1hcCAtLWF1dGhvciAiPGN0b0Bjb29tcGFueS54eD4iID5hY3R1YWwgJiYKIAl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCiAnCiAKICMgZ2l0IGJsYW1lCi1jYXQgPmV4cGVjdCA8PFxFT0YKLV5PQkpJIChBIFUgVGhvciAgICAgREFURSAxKSBvbmUKK2NhdCA+ZXhwZWN0IDw8RU9GCiteT0JKSSAoJEdJVF9BVVRIT1JfTkFNRSAgICAgREFURSAxKSBvbmUKIE9CSklEIChTb21lIER1ZGUgICAgREFURSAyKSB0d28KIE9CSklEIChPdGhlciBBdXRob3IgREFURSAzKSB0aHJlZQogT0JKSUQgKE90aGVyIEF1dGhvciBEQVRFIDQpIGZvdXIKZGlmZiAtLWdpdCBhL3QvdDQyMDQtcGF0Y2gtaWQuc2ggYi90L3Q0MjA0LXBhdGNoLWlkLnNoCmluZGV4IDAyODhjMTcuLjhmZjhiZDggMTAwNzU1Ci0tLSBhL3QvdDQyMDQtcGF0Y2gtaWQuc2gKKysrIGIvdC90NDIwNC1wYXRjaC1pZC5zaApAQCAtMjUsNyArMjUsNyBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwYXRjaC1pZCBvdXRwdXQgaXMgd2VsbC1mb3JtZWQnICcKIAlnaXQgbG9nIC1wIC0xIHwgZ2l0IHBhdGNoLWlkID5vdXRwdXQgJiYKLQlncmVwICJeW2EtZjAtOV1cezQwXH0gJChnaXQgcmV2LXBhcnNlIEhFQUQpJCIgb3V0cHV0CisJZ3JlcCAiXiRPSURfUkVHRVggJChnaXQgcmV2LXBhcnNlIEhFQUQpJCIgb3V0cHV0CiAnCiAKICNjYWxjdWxhdGUgcGF0Y2ggaWQuIE1ha2Ugc3VyZSBvdXRwdXQgaXMgbm90IGVtcHR5LgpkaWZmIC0tZ2l0IGEvdC90NDIwNS1sb2ctcHJldHR5LWZvcm1hdHMuc2ggYi90L3Q0MjA1LWxvZy1wcmV0dHktZm9ybWF0cy5zaAppbmRleCA5NzhhOGE2Li4yMDRjMTQ5IDEwMDc1NQotLS0gYS90L3Q0MjA1LWxvZy1wcmV0dHktZm9ybWF0cy5zaAorKysgYi90L3Q0MjA1LWxvZy1wcmV0dHktZm9ybWF0cy5zaApAQCAtMTM0LDYgKzEzNCwzNiBAQAogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCitmb3IgcCBpbiBzaG9ydCBtZWRpdW0gZnVsbCBmdWxsZXIgZW1haWwgcmF3CitkbworCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgIk5VTCB0ZXJtaW5hdGlvbiB3aXRoIC0tcmVmbG9nIC0tcHJldHR5PSRwIiAnCisJCXJldnM9IiQoZ2l0IHJldi1saXN0IC0tcmVmbG9nKSIgJiYKKwkJZm9yIHIgaW4gJHJldnMKKwkJZG8KKwkJCWdpdCBzaG93IC1zICIkciIgLS1wcmV0dHk9IiRwIiAmJgorCQkJcHJpbnRmICJcMCIgfHwgcmV0dXJuIDEKKwkJZG9uZSA+ZXhwZWN0ICYmCisJCXsKKwkJCWdpdCBsb2cgLXogLS1yZWZsb2cgLS1wcmV0dHk9IiRwIiAmJgorCQkJcHJpbnRmICJcMCIKKwkJfSA+YWN0dWFsICYmCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwknCitkb25lCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ05VTCB0ZXJtaW5hdGlvbiB3aXRoIC0tcmVmbG9nIC0tcHJldHR5PW9uZWxpbmUnICcKKwlyZXZzPSIkKGdpdCByZXYtbGlzdCAtLXJlZmxvZykiICYmCisJZm9yIHIgaW4gJHJldnMKKwlkbworCQlnaXQgc2hvdyAtcyAtLXByZXR0eT1vbmVsaW5lICIkciIgPnJhdyAmJgorCQljYXQgcmF3IHwgbGZfdG9fbnVsIHx8IGV4aXQgMQorCWRvbmUgPmV4cGVjdCAmJgorCSMgdGhlIHRyYWlsaW5nIE5VTCBpcyBhbHJlYWR5IHByb2R1Y2VkIHNvIHdlIGRvIG5vdCBuZWVkIHRvCisJIyBvdXRwdXQgYW5vdGhlciBvbmUKKwlnaXQgbG9nIC16IC0tcHJldHR5PW9uZWxpbmUgLS1yZWZsb2cgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgbW9yZSBjb21taXRzJyAnCiAJdGVzdF9jb21taXQgIm1lc3NhZ2Ugb25lIiBvbmUgb25lIG1lc3NhZ2Utb25lICYmCiAJdGVzdF9jb21taXQgIm1lc3NhZ2UgdHdvIiB0d28gdHdvIG1lc3NhZ2UtdHdvICYmCkBAIC01MDMsNiArNTMzLDEyIEBACiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Nob3J0IGRhdGUnICcKKwlnaXQgbG9nIC0tZm9ybWF0PSVhZCVuJWNkIC0tZGF0ZT1zaG9ydCA+ZXhwZWN0ZWQgJiYKKwlnaXQgbG9nIC0tZm9ybWF0PSVhcyVuJWNzID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKycKKwogIyBnZXQgbmV3IGRpZ2VzdHMgKHdpdGggbm8gYWJicmV2aWF0aW9ucykKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldCB1cCBsb2cgZGVjb3JhdGlvbiB0ZXN0cycgJwogCWhlYWQxPSQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBIRUFEfjApICYmCkBAIC01NzgsNiArNjE0LDI0IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICclKHRyYWlsZXJzOm9ubHk9eWVzKSBzaG93cyBvbmx5ICJrZXk6IHZhbHVlIiB0cmFpbGVycycgJworCWdpdCBsb2cgLS1uby13YWxrIC0tcHJldHR5PWZvcm1hdDoiJSh0cmFpbGVyczpvbmx5PXllcykiID5hY3R1YWwgJiYKKwlncmVwIC12IHBhdGNoLmRlc2NyaXB0aW9uIDx0cmFpbGVycyA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICclKHRyYWlsZXJzOm9ubHk9bm8pIHNob3dzIGFsbCB0cmFpbGVycycgJworCWdpdCBsb2cgLS1uby13YWxrIC0tcHJldHR5PWZvcm1hdDoiJSh0cmFpbGVyczpvbmx5PW5vKSIgPmFjdHVhbCAmJgorCWNhdCB0cmFpbGVycyA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICclKHRyYWlsZXJzOm9ubHk9bm8sb25seT10cnVlKSBzaG93cyBvbmx5ICJrZXk6IHZhbHVlIiB0cmFpbGVycycgJworCWdpdCBsb2cgLS1uby13YWxrIC0tcHJldHR5PWZvcm1hdDoiJSh0cmFpbGVyczpvbmx5PXllcykiID5hY3R1YWwgJiYKKwlncmVwIC12IHBhdGNoLmRlc2NyaXB0aW9uIDx0cmFpbGVycyA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICclKHRyYWlsZXJzOnVuZm9sZCkgdW5mb2xkcyB0cmFpbGVycycgJwogCWdpdCBsb2cgLS1uby13YWxrIC0tcHJldHR5PSIlKHRyYWlsZXJzOnVuZm9sZCkiID5hY3R1YWwgJiYKIAl7CkBAIC01OTgsNiArNjUyLDEwNSBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncHJldHR5IGZvcm1hdCAlKHRyYWlsZXJzOmtleT1mb28pIHNob3dzIHRoYXQgdHJhaWxlcicgJworCWdpdCBsb2cgLS1uby13YWxrIC0tcHJldHR5PSJmb3JtYXQ6JSh0cmFpbGVyczprZXk9QWNrZWQtYnkpIiA+YWN0dWFsICYmCisJZWNobyAiQWNrZWQtYnk6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+IiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcmV0dHkgZm9ybWF0ICUodHJhaWxlcnM6a2V5PWZvbykgaXMgY2FzZSBpbnNlbnNpdGl2ZScgJworCWdpdCBsb2cgLS1uby13YWxrIC0tcHJldHR5PSJmb3JtYXQ6JSh0cmFpbGVyczprZXk9QWNLZWQtYlkpIiA+YWN0dWFsICYmCisJZWNobyAiQWNrZWQtYnk6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+IiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcmV0dHkgZm9ybWF0ICUodHJhaWxlcnM6a2V5PWZvbzopIHRyYWlsaW5nIGNvbG9uIGFsc28gd29ya3MnICcKKwlnaXQgbG9nIC0tbm8td2FsayAtLXByZXR0eT0iZm9ybWF0OiUodHJhaWxlcnM6a2V5PUFja2VkLWJ5OikiID5hY3R1YWwgJiYKKwllY2hvICJBY2tlZC1ieTogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4iID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ByZXR0eSBmb3JtYXQgJSh0cmFpbGVyczprZXk9Zm9vKSBtdWx0aXBsZSBrZXlzJyAnCisJZ2l0IGxvZyAtLW5vLXdhbGsgLS1wcmV0dHk9ImZvcm1hdDolKHRyYWlsZXJzOmtleT1BY2tlZC1ieTosa2V5PVNpZ25lZC1vZmYtQnkpIiA+YWN0dWFsICYmCisJZ3JlcCAtdiBwYXRjaC5kZXNjcmlwdGlvbiA8dHJhaWxlcnMgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnJSh0cmFpbGVyczprZXk9bm9uZXhpc3RlbnQpIGJlY29tZXMgZW1wdHknICcKKwlnaXQgbG9nIC0tbm8td2FsayAtLXByZXR0eT0ieCUodHJhaWxlcnM6a2V5PU5hY2tlZC1ieSl4IiA+YWN0dWFsICYmCisJZWNobyAieHgiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJyUodHJhaWxlcnM6a2V5PWZvbykgaGFuZGxlcyBtdWx0aXBsZSBsaW5lcyBldmVuIGlmIGZvbGRlZCcgJworCWdpdCBsb2cgLS1uby13YWxrIC0tcHJldHR5PSJmb3JtYXQ6JSh0cmFpbGVyczprZXk9U2lnbmVkLU9mZi1ieSkiID5hY3R1YWwgJiYKKwlncmVwIC12IHBhdGNoLmRlc2NyaXB0aW9uIDx0cmFpbGVycyB8IGdyZXAgLXYgQWNrZWQtYnkgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnJSh0cmFpbGVyczprZXk9Zm9vLHVuZm9sZCkgcHJvcGVybHkgdW5mb2xkcycgJworCWdpdCBsb2cgLS1uby13YWxrIC0tcHJldHR5PSJmb3JtYXQ6JSh0cmFpbGVyczprZXk9U2lnbmVkLU9mZi1ieSx1bmZvbGQpIiA+YWN0dWFsICYmCisJdW5mb2xkIDx0cmFpbGVycyB8IGdyZXAgU2lnbmVkLW9mZi1ieSA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcmV0dHkgZm9ybWF0ICUodHJhaWxlcnM6a2V5PWZvbyxvbmx5PW5vKSBhbHNvIGluY2x1ZGVzIG5vbnRyYWlsZXIgbGluZXMnICcKKwlnaXQgbG9nIC0tbm8td2FsayAtLXByZXR0eT0iZm9ybWF0OiUodHJhaWxlcnM6a2V5PUFja2VkLWJ5LG9ubHk9bm8pIiA+YWN0dWFsICYmCisJeworCQllY2hvICJBY2tlZC1ieTogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT4iICYmCisJCWdyZXAgcGF0Y2guZGVzY3JpcHRpb24gPHRyYWlsZXJzCisJfSA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICclKHRyYWlsZXJzOmtleSkgd2l0aG91dCB2YWx1ZSBpcyBlcnJvcicgJworCWdpdCBsb2cgLS1uby13YWxrIC0tcHJldHR5PSJ0Zm9ybWF0OiUodHJhaWxlcnM6a2V5KSIgPmFjdHVhbCAmJgorCWVjaG8gIiUodHJhaWxlcnM6a2V5KSIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnJSh0cmFpbGVyczprZXk9Zm9vLHZhbHVlb25seSkgc2hvd3Mgb25seSB2YWx1ZScgJworCWdpdCBsb2cgLS1uby13YWxrIC0tcHJldHR5PSJmb3JtYXQ6JSh0cmFpbGVyczprZXk9QWNrZWQtYnksdmFsdWVvbmx5KSIgPmFjdHVhbCAmJgorCWVjaG8gIkEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+IiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcmV0dHkgZm9ybWF0ICUodHJhaWxlcnM6c2VwYXJhdG9yKSBjaGFuZ2VzIHNlcGFyYXRvcicgJworCWdpdCBsb2cgLS1uby13YWxrIC0tcHJldHR5PWZvcm1hdDoiWCUodHJhaWxlcnM6c2VwYXJhdG9yPSV4MDAsdW5mb2xkKVgiID5hY3R1YWwgJiYKKwlwcmludGYgIlhTaWduZWQtb2ZmLWJ5OiBBIFUgVGhvciA8YXV0aG9yQGV4YW1wbGUuY29tPlwwQWNrZWQtYnk6IEEgVSBUaG9yIDxhdXRob3JAZXhhbXBsZS5jb20+XDBbIHYyIHVwZGF0ZWQgcGF0Y2ggZGVzY3JpcHRpb24gXVwwU2lnbmVkLW9mZi1ieTogQSBVIFRob3IgPGF1dGhvckBleGFtcGxlLmNvbT5YIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcmV0dHkgZm9ybWF0ICUodHJhaWxlcnMpIGNvbWJpbmluZyBzZXBhcmF0b3Iva2V5L3ZhbHVlb25seScgJworCWdpdCBjb21taXQgLS1hbGxvdy1lbXB0eSAtRiAtIDw8LVxFT0YgJiYKKwlJbXBvcnRhbnQgZml4CisKKwlUaGUgZml4IGlzIGV4cGxhaW5lZCBoZXJlCisKKwlDbG9zZXM6ICMxMjM0CisJRU9GCisKKwlnaXQgY29tbWl0IC0tYWxsb3ctZW1wdHkgLUYgLSA8PC1cRU9GICYmCisJQW5vdGhlciBmaXgKKworCVRoZSBmaXggaXMgZXhwbGFpbmVkIGhlcmUKKworCUNsb3NlczogIzU2NworCUNsb3NlczogIzg5MAorCUVPRgorCisJZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5IC1GIC0gPDwtXEVPRiAmJgorCURvZXMgbm90IGNsb3NlIGFueSB0aWNrZXRzCisJRU9GCisKKwlnaXQgbG9nIC0tcHJldHR5PSIlcyUgKHRyYWlsZXJzOnNlcGFyYXRvcj0leDJjJXgyMCxrZXk9Q2xvc2VzLHZhbHVlb25seSkiIEhFQUR+My4uID5hY3R1YWwgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzIFwKKwkJIkRvZXMgbm90IGNsb3NlIGFueSB0aWNrZXRzIiBcCisJCSJBbm90aGVyIGZpeCAjNTY3LCAjODkwIiBcCisJCSJJbXBvcnRhbnQgZml4ICMxMjM0IiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd0cmFpbGVyIHBhcnNpbmcgbm90IGZvb2xlZCBieSAtLS0gbGluZScgJwogCWdpdCBjb21taXQgLS1hbGxvdy1lbXB0eSAtRiAtIDw8LVxFT0YgJiYKIAl0aGlzIGlzIHRoZSBzdWJqZWN0CkBAIC02MjEsNCArNzc0LDk3IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXQgdXAgJVMgdGVzdHMnICcKKwlnaXQgY2hlY2tvdXQgLS1vcnBoYW4gc291cmNlLWEgJiYKKwl0ZXN0X2NvbW1pdCBvbmUgJiYKKwl0ZXN0X2NvbW1pdCB0d28gJiYKKwlnaXQgY2hlY2tvdXQgLWIgc291cmNlLWIgSEVBRF4gJiYKKwl0ZXN0X2NvbW1pdCB0aHJlZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1mb3JtYXQ9JVMgcGFpbnRzIGJyYW5jaCBuYW1lcycgJworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlzb3VyY2UtYgorCXNvdXJjZS1hCisJc291cmNlLWIKKwlFT0YKKwlnaXQgbG9nIC0tZm9ybWF0PSVTIHNvdXJjZS1hIHNvdXJjZS1iID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWZvcm1hdD0lUyBwYWludHMgdGFnIG5hbWVzJyAnCisJZ2l0IHRhZyAtbSB0YWdnZWQgc291cmNlLXRhZyAmJgorCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlzb3VyY2UtdGFnCisJc291cmNlLWEKKwlzb3VyY2UtdGFnCisJRU9GCisJZ2l0IGxvZyAtLWZvcm1hdD0lUyBzb3VyY2UtdGFnIHNvdXJjZS1hID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWZvcm1hdD0lUyBwYWludHMgc3ltbWV0cmljIHJhbmdlcycgJworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlzb3VyY2UtYgorCXNvdXJjZS1hCisJRU9GCisJZ2l0IGxvZyAtLWZvcm1hdD0lUyBzb3VyY2UtYS4uLnNvdXJjZS1iID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJyVTIGluIGdpdCBsb2cgLS1mb3JtYXQgd29ya3Mgd2l0aCBvdGhlciBwbGFjZWhvbGRlcnMgKHBhcnQgMSknICcKKwlnaXQgbG9nIC0tZm9ybWF0PSJzb3VyY2UtYiAlaCIgc291cmNlLWIgPmV4cGVjdCAmJgorCWdpdCBsb2cgLS1mb3JtYXQ9IiVTICVoIiBzb3VyY2UtYiA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICclUyBpbiBnaXQgbG9nIC0tZm9ybWF0IHdvcmtzIHdpdGggb3RoZXIgcGxhY2Vob2xkZXJzIChwYXJ0IDIpJyAnCisJZ2l0IGxvZyAtLWZvcm1hdD0iJWggc291cmNlLWIiIHNvdXJjZS1iID5leHBlY3QgJiYKKwlnaXQgbG9nIC0tZm9ybWF0PSIlaCAlUyIgc291cmNlLWIgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tcHJldHR5PXJlZmVyZW5jZScgJworCWdpdCBsb2cgLS1wcmV0dHk9InRmb3JtYXQ6JWggKCVzLCAlYXMpIiA+ZXhwZWN0ICYmCisJZ2l0IGxvZyAtLXByZXR0eT1yZWZlcmVuY2UgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tcHJldHR5PXJlZmVyZW5jZSB3aXRoIGxvZy5kYXRlIGlzIG92ZXJyaWRkZW4gYnkgc2hvcnQgZGF0ZScgJworCWdpdCBsb2cgLS1wcmV0dHk9InRmb3JtYXQ6JWggKCVzLCAlYXMpIiA+ZXhwZWN0ICYmCisJdGVzdF9jb25maWcgbG9nLmRhdGUgcmZjICYmCisJZ2l0IGxvZyAtLXByZXR0eT1yZWZlcmVuY2UgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tcHJldHR5PXJlZmVyZW5jZSB3aXRoIGV4cGxpY2l0IGRhdGUgb3ZlcnJpZGVzIHNob3J0IGRhdGUnICcKKwlnaXQgbG9nIC0tZGF0ZT1yZmMgLS1wcmV0dHk9InRmb3JtYXQ6JWggKCVzLCAlYWQpIiA+ZXhwZWN0ICYmCisJZ2l0IGxvZyAtLWRhdGU9cmZjIC0tcHJldHR5PXJlZmVyZW5jZSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1wcmV0dHk9cmVmZXJlbmNlIGlzIG5ldmVyIHVuYWJicmV2aWF0ZWQnICcKKwlnaXQgbG9nIC0tcHJldHR5PSJ0Zm9ybWF0OiVoICglcywgJWFzKSIgPmV4cGVjdCAmJgorCWdpdCBsb2cgLS1uby1hYmJyZXYtY29tbWl0IC0tcHJldHR5PXJlZmVyZW5jZSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1wcmV0dHk9cmVmZXJlbmNlIGlzIG5ldmVyIGRlY29yYXRlZCcgJworCWdpdCBsb2cgLS1wcmV0dHk9InRmb3JtYXQ6JWggKCVzLCAlYXMpIiA+ZXhwZWN0ICYmCisJZ2l0IGxvZyAtLWRlY29yYXRlPXNob3J0IC0tcHJldHR5PXJlZmVyZW5jZSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1wcmV0dHk9cmVmZXJlbmNlIGRvZXMgbm90IG91dHB1dCByZWZsb2cgaW5mbycgJworCWdpdCBsb2cgLS13YWxrLXJlZmxvZ3MgLS1wcmV0dHk9InRmb3JtYXQ6JWggKCVzLCAlYXMpIiA+ZXhwZWN0ICYmCisJZ2l0IGxvZyAtLXdhbGstcmVmbG9ncyAtLXByZXR0eT1yZWZlcmVuY2UgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tcHJldHR5PXJlZmVyZW5jZSBpcyBjb2xvcmVkIGFwcHJvcHJpYXRlbHknICcKKwlnaXQgbG9nIC0tY29sb3I9YWx3YXlzIC0tcHJldHR5PSJ0Zm9ybWF0OiVDKGF1dG8pJWggKCVzLCAlYXMpIiA+ZXhwZWN0ICYmCisJZ2l0IGxvZyAtLWNvbG9yPWFsd2F5cyAtLXByZXR0eT1yZWZlcmVuY2UgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q0MjA5LWxvZy1waWNrYXhlLnNoIGIvdC90NDIwOS1sb2ctcGlja2F4ZS5zaAppbmRleCA4NDRkZjc2Li41ZDA2ZjVmIDEwMDc1NQotLS0gYS90L3Q0MjA5LWxvZy1waWNrYXhlLnNoCisrKyBiL3QvdDQyMDktbG9nLXBpY2theGUuc2gKQEAgLTEwNiw0ICsxMDYsMzkgQEAKIAlybSAuZ2l0YXR0cmlidXRlcwogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBsb2cgLVtHU10gYmluYXJ5ICYgLS10ZXh0JyAnCisJZ2l0IGNoZWNrb3V0IC0tb3JwaGFuIEdTLWJpbmFyeS1hbmQtdGV4dCAmJgorCWdpdCByZWFkLXRyZWUgLS1lbXB0eSAmJgorCXByaW50ZiAiYVxuYVwwYVxuIiA+ZGF0YS5iaW4gJiYKKwlnaXQgYWRkIGRhdGEuYmluICYmCisJZ2l0IGNvbW1pdCAtbSAiY3JlYXRlIGJpbmFyeSBmaWxlIiBkYXRhLmJpbiAmJgorCXByaW50ZiAiYVxuYVwwYVxuIiA+PmRhdGEuYmluICYmCisJZ2l0IGNvbW1pdCAtbSAibW9kaWZ5IGJpbmFyeSBmaWxlIiBkYXRhLmJpbiAmJgorCWdpdCBybSBkYXRhLmJpbiAmJgorCWdpdCBjb21taXQgLW0gImRlbGV0ZSBiaW5hcnkgZmlsZSIgZGF0YS5iaW4gJiYKKwlnaXQgbG9nID5mdWxsLWxvZworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLUcgaWdub3JlcyBiaW5hcnkgZmlsZXMnICcKKwlnaXQgbG9nIC1HYSA+bG9nICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGxvZworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLUcgbG9va3MgaW50byBiaW5hcnkgZmlsZXMgd2l0aCAtYScgJworCWdpdCBsb2cgLWEgLUdhID5sb2cgJiYKKwl0ZXN0X2NtcCBsb2cgZnVsbC1sb2cKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC1HIGxvb2tzIGludG8gYmluYXJ5IGZpbGVzIHdpdGggdGV4dGNvbnYgZmlsdGVyJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAuZ2l0YXR0cmlidXRlcyIgJiYKKwllY2hvICIqIGRpZmY9YmluIiA+LmdpdGF0dHJpYnV0ZXMgJiYKKwlnaXQgLWMgZGlmZi5iaW4udGV4dGNvbnY9Y2F0IGxvZyAtR2EgPmxvZyAmJgorCXRlc3RfY21wIGxvZyBmdWxsLWxvZworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLVMgbG9va3MgaW50byBiaW5hcnkgZmlsZXMnICcKKwlnaXQgbG9nIC1TYSA+bG9nICYmCisJdGVzdF9jbXAgbG9nIGZ1bGwtbG9nCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NDIxMC1sb2ctaTE4bi5zaCBiL3QvdDQyMTAtbG9nLWkxOG4uc2gKaW5kZXggN2M1MTk0My4uYzM3OTIwOCAxMDA3NTUKLS0tIGEvdC90NDIxMC1sb2ctaTE4bi5zaAorKysgYi90L3Q0MjEwLWxvZy1pMThuLnNoCkBAIC0xLDEyICsxLDE1IEBACiAjIS9iaW4vc2gKIAogdGVzdF9kZXNjcmlwdGlvbj0ndGVzdCBsb2cgd2l0aCBpMThuIGZlYXR1cmVzJwotLiAuL3Rlc3QtbGliLnNoCisuIC4vbGliLWdldHRleHQuc2gKIAogIyB0d28gZm9ybXMgb2Ygw6kKIHV0ZjhfZT0kKHByaW50ZiAnXDMwM1wyNTEnKQogbGF0aW4xX2U9JChwcmludGYgJ1wzNTEnKQogCisjIGludmFsaWQgVVRGLTgKK2ludmFsaWRfZT0kKHByaW50ZiAnXDMwM1w1MCknKSAjICIpIiBhdCBlbmQgdG8gY2xvc2Ugb3BlbmluZyAiKCIKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY3JlYXRlIGNvbW1pdHMgaW4gZGlmZmVyZW50IGVuY29kaW5ncycgJwogCXRlc3RfdGljayAmJgogCWNhdCA+bXNnIDw8LUVPRiAmJgpAQCAtNDgsOSArNTEsNDMgQEAKIAl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyZXAgZG9lcyBub3QgZmluZCBub24tcmVlbmNvZGVkIHZhbHVlcyAobGF0aW4xKScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAhTUlOR1cgJ2xvZyAtLWdyZXAgZG9lcyBub3QgZmluZCBub24tcmVlbmNvZGVkIHZhbHVlcyAobGF0aW4xKScgJwogCWdpdCBsb2cgLS1lbmNvZGluZz1JU08tODg1OS0xIC0tZm9ybWF0PSVzIC0tZ3JlcD0kdXRmOF9lID5hY3R1YWwgJiYKIAl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCiAnCiAKK2ZvciBlbmdpbmUgaW4gZml4ZWQgYmFzaWMgZXh0ZW5kZWQgcGVybAorZG8KKwlwcmVyZXE9CisJaWYgdGVzdCAkZW5naW5lID0gInBlcmwiCisJdGhlbgorCQlwcmVyZXE9IlBDUkUiCisJZWxzZQorCQlwcmVyZXE9IiIKKwlmaQorCWZvcmNlX3JlZ2V4PQorCWlmIHRlc3QgJGVuZ2luZSAhPSAiZml4ZWQiCisJdGhlbgorCSAgICBmb3JjZV9yZWdleD0uKgorCWZpCisJdGVzdF9leHBlY3Rfc3VjY2VzcyAhTUlOR1csIVJFR0VYX0lMTFNFUSxHRVRURVhUX0xPQ0FMRSwkcHJlcmVxICItYyBncmVwLnBhdHRlcm5UeXBlPSRlbmdpbmUgbG9nIC0tZ3JlcCBkb2VzIG5vdCBmaW5kIG5vbi1yZWVuY29kZWQgdmFsdWVzIChsYXRpbjEgKyBsb2NhbGUpIiAiCisJCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwkJbGF0aW4xCisJCXV0ZjgKKwkJRU9GCisJCUxDX0FMTD1cIiRpc19JU19sb2NhbGVcIiBnaXQgLWMgZ3JlcC5wYXR0ZXJuVHlwZT0kZW5naW5lIGxvZyAtLWVuY29kaW5nPUlTTy04ODU5LTEgLS1mb3JtYXQ9JXMgLS1ncmVwPVwiJGZvcmNlX3JlZ2V4JGxhdGluMV9lXCIgPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJIgorCisJdGVzdF9leHBlY3Rfc3VjY2VzcyAhTUlOR1csR0VUVEVYVF9MT0NBTEUsJHByZXJlcSAiLWMgZ3JlcC5wYXR0ZXJuVHlwZT0kZW5naW5lIGxvZyAtLWdyZXAgZG9lcyBub3QgZmluZCBub24tcmVlbmNvZGVkIHZhbHVlcyAobGF0aW4xICsgbG9jYWxlKSIgIgorCQlMQ19BTEw9XCIkaXNfSVNfbG9jYWxlXCIgZ2l0IC1jIGdyZXAucGF0dGVyblR5cGU9JGVuZ2luZSBsb2cgLS1lbmNvZGluZz1JU08tODg1OS0xIC0tZm9ybWF0PSVzIC0tZ3JlcD1cIiRmb3JjZV9yZWdleCR1dGY4X2VcIiA+YWN0dWFsICYmCisJCXRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwKKwkiCisKKwl0ZXN0X2V4cGVjdF9zdWNjZXNzICFNSU5HVywhUkVHRVhfSUxMU0VRLEdFVFRFWFRfTE9DQUxFLCRwcmVyZXEgIi1jIGdyZXAucGF0dGVyblR5cGU9JGVuZ2luZSBsb2cgLS1ncmVwIGRvZXMgbm90IGRpZSBvbiBpbnZhbGlkIFVURi04IHZhbHVlIChsYXRpbjEgKyBsb2NhbGUgKyBpbnZhbGlkIG5lZWRsZSkiICIKKwkJTENfQUxMPVwiJGlzX0lTX2xvY2FsZVwiIGdpdCAtYyBncmVwLnBhdHRlcm5UeXBlPSRlbmdpbmUgbG9nIC0tZW5jb2Rpbmc9SVNPLTg4NTktMSAtLWZvcm1hdD0lcyAtLWdyZXA9XCIkZm9yY2VfcmVnZXgkaW52YWxpZF9lXCIgPmFjdHVhbCAmJgorCQl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCisJIgorZG9uZQorCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDQyMTEtbGluZS1sb2cuc2ggYi90L3Q0MjExLWxpbmUtbG9nLnNoCmluZGV4IGVmMTMyMjEuLmNkYTU4MTggMTAwNzU1Ci0tLSBhL3QvdDQyMTEtbGluZS1sb2cuc2gKKysrIGIvdC90NDIxMS1saW5lLWxvZy5zaApAQCAtNCw2ICs0LDcgQEAKIC4gLi90ZXN0LWxpYi5zaAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCAoaW1wb3J0IGhpc3RvcnkpJyAnCisJdGVzdF9vaWRfaW5pdCAmJgogCWdpdCBmYXN0LWltcG9ydCA8ICIkVEVTVF9ESVJFQ1RPUlkiL3Q0MjExL2hpc3RvcnkuZXhwb3J0ICYmCiAJZ2l0IHJlc2V0IC0taGFyZAogJwpAQCAtMTEsNyArMTIsNyBAQAogY2FubmVkX3Rlc3RfMSAoKSB7CiAJdGVzdF9leHBlY3RfJDEgIiQyIiAiCiAJCWdpdCBsb2cgJDIgPmFjdHVhbCAmJgotCQl0ZXN0X2NtcCBcIlwkVEVTVF9ESVJFQ1RPUllcIi90NDIxMS9leHBlY3QuJDMgYWN0dWFsCisJCXRlc3RfY21wIFwiXCRURVNUX0RJUkVDVE9SWVwiL3Q0MjExLyQodGVzdF9vaWQgYWxnbykvZXhwZWN0LiQzIGFjdHVhbAogCSIKIH0KIApAQCAtMjUsNyArMjYsNyBAQAogdGVzdF9iYWRfb3B0cyAoKSB7CiAJdGVzdF9leHBlY3Rfc3VjY2VzcyAiaW52YWxpZCBhcmdzOiAkMSIgIgogCQl0ZXN0X211c3RfZmFpbCBnaXQgbG9nICQxIDI+ZXJyb3JzICYmCi0JCWdyZXAgJyQyJyBlcnJvcnMKKwkJdGVzdF9pMThuZ3JlcCAnJDInIGVycm9ycwogCSIKIH0KIApAQCAtMTE1LDQgKzExNiwxMDMgQEAKIAlnaXQgbG9nICQoZm9yIHggaW4gJCh0ZXN0X3NlcSAyMDApOyBkbyBlY2hvIC1MICQoKDIqeCkpLCsxOmMuYzsgZG9uZSkKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnLXMgc2hvd3Mgb25seSBsaW5lLWxvZyBjb21taXRzJyAnCisJZ2l0IGxvZyAtLWZvcm1hdD0iY29tbWl0ICVzIiAtTDEsMjQ6Yi5jID5leHBlY3QucmF3ICYmCisJZ3JlcCBeY29tbWl0IGV4cGVjdC5yYXcgPmV4cGVjdCAmJgorCWdpdCBsb2cgLS1mb3JtYXQ9ImNvbW1pdCAlcyIgLUwxLDI0OmIuYyAtcyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctcCBzaG93cyB0aGUgZGVmYXVsdCBwYXRjaCBvdXRwdXQnICcKKwlnaXQgbG9nIC1MMSwyNDpiLmMgPmV4cGVjdCAmJgorCWdpdCBsb2cgLUwxLDI0OmIuYyAtcCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXJhdyBpcyBmb3JiaWRkZW4nICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgbG9nIC1MMSwyNDpiLmMgLS1yYXcKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgZm9yIGNoZWNraW5nIGZhbmN5IHJlbmFtZSBmb2xsb3dpbmcnICcKKwlnaXQgY2hlY2tvdXQgLS1vcnBoYW4gbW92ZXMtc3RhcnQgJiYKKwlnaXQgcmVzZXQgLS1oYXJkICYmCisKKwlwcmludGYgIiVzXG4iICAgIDEyIDEzIDE0IDE1ICAgICAgYiBjIGQgZSAgID5maWxlLTEgJiYKKwlwcmludGYgIiVzXG4iICAgIDIyIDIzIDI0IDI1ICAgICAgQiBDIEQgRSAgID5maWxlLTIgJiYKKwlnaXQgYWRkIGZpbGUtMSBmaWxlLTIgJiYKKwl0ZXN0X3RpY2sgJiYKKwlnaXQgY29tbWl0IC1tICJBZGQgZmlsZS0xIGFuZCBmaWxlLTIiICYmCisJb2lkX2FkZF9mMV9mMj0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEKSAmJgorCisJZ2l0IGNoZWNrb3V0IC1iIG1vdmVzLW1haW4gJiYKKwlwcmludGYgIiVzXG4iIDExIDEyIDEzIDE0IDE1ICAgICAgYiBjIGQgZSAgID5maWxlLTEgJiYKKwlnaXQgY29tbWl0IC1hIC1tICJNb2RpZnkgZmlsZS0xIG9uIG1haW4iICYmCisJb2lkX21vZF9mMV9tYWluPSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IEhFQUQpICYmCisKKwlwcmludGYgIiVzXG4iIDIxIDIyIDIzIDI0IDI1ICAgICAgQiBDIEQgRSAgID5maWxlLTIgJiYKKwlnaXQgY29tbWl0IC1hIC1tICJNb2RpZnkgZmlsZS0yIG9uIG1haW4gIzEiICYmCisJb2lkX21vZF9mMl9tYWluXzE9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRCkgJiYKKworCWdpdCBtdiBmaWxlLTEgcmVuYW1lZC0xICYmCisJZ2l0IGNvbW1pdCAtbSAiUmVuYW1lIGZpbGUtMSB0byByZW5hbWVkLTEgb24gbWFpbiIgJiYKKworCXByaW50ZiAiJXNcbiIgMTEgMTIgMTMgMTQgMTUgICAgICBiIGMgZCBlIGYgPnJlbmFtZWQtMSAmJgorCWdpdCBjb21taXQgLWEgLW0gIk1vZGlmeSByZW5hbWVkLTEgb24gbWFpbiIgJiYKKwlvaWRfbW9kX3IxX21haW49JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRCkgJiYKKworCXByaW50ZiAiJXNcbiIgMjEgMjIgMjMgMjQgMjUgICAgICBCIEMgRCBFIEYgPmZpbGUtMiAmJgorCWdpdCBjb21taXQgLWEgLW0gIk1vZGlmeSBmaWxlLTIgb24gbWFpbiAjMiIgJiYKKwlvaWRfbW9kX2YyX21haW5fMj0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEKSAmJgorCisJZ2l0IGNoZWNrb3V0IC1iIG1vdmVzLXNpZGUgbW92ZXMtc3RhcnQgJiYKKwlwcmludGYgIiVzXG4iICAgIDEyIDEzIDE0IDE1IDE2ICAgYiBjIGQgZSAgID5maWxlLTEgJiYKKwlnaXQgY29tbWl0IC1hIC1tICJNb2RpZnkgZmlsZS0xIG9uIHNpZGUgIzEiICYmCisJb2lkX21vZF9mMV9zaWRlXzE9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRCkgJiYKKworCXByaW50ZiAiJXNcbiIgICAgMjIgMjMgMjQgMjUgMjYgICBCIEMgRCBFICAgPmZpbGUtMiAmJgorCWdpdCBjb21taXQgLWEgLW0gIk1vZGlmeSBmaWxlLTIgb24gc2lkZSIgJiYKKwlvaWRfbW9kX2YyX3NpZGU9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRCkgJiYKKworCWdpdCBtdiBmaWxlLTIgcmVuYW1lZC0yICYmCisJZ2l0IGNvbW1pdCAtbSAiUmVuYW1lIGZpbGUtMiB0byByZW5hbWVkLTIgb24gc2lkZSIgJiYKKworCXByaW50ZiAiJXNcbiIgICAgMTIgMTMgMTQgMTUgMTYgYSBiIGMgZCBlICAgPmZpbGUtMSAmJgorCWdpdCBjb21taXQgLWEgLW0gIk1vZGlmeSBmaWxlLTEgb24gc2lkZSAjMiIgJiYKKwlvaWRfbW9kX2YxX3NpZGVfMj0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEKSAmJgorCisJcHJpbnRmICIlc1xuIiAgICAyMiAyMyAyNCAyNSAyNiBBIEIgQyBEIEUgICA+cmVuYW1lZC0yICYmCisJZ2l0IGNvbW1pdCAtYSAtbSAiTW9kaWZ5IHJlbmFtZWQtMiBvbiBzaWRlIiAmJgorCW9pZF9tb2RfcjJfc2lkZT0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEKSAmJgorCisJZ2l0IGNoZWNrb3V0IG1vdmVzLW1haW4gJiYKKwlnaXQgbWVyZ2UgbW92ZXMtc2lkZSAmJgorCW9pZF9tZXJnZT0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmYW5jeSByZW5hbWUgZm9sbG93aW5nICMxJyAnCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJJG9pZF9tZXJnZSBNZXJnZSBicmFuY2ggJ1wnJ21vdmVzLXNpZGUnXCcnIGludG8gbW92ZXMtbWFpbgorCSRvaWRfbW9kX2YxX3NpZGVfMiBNb2RpZnkgZmlsZS0xIG9uIHNpZGUgIzIKKwkkb2lkX21vZF9mMV9zaWRlXzEgTW9kaWZ5IGZpbGUtMSBvbiBzaWRlICMxCisJJG9pZF9tb2RfcjFfbWFpbiBNb2RpZnkgcmVuYW1lZC0xIG9uIG1haW4KKwkkb2lkX21vZF9mMV9tYWluIE1vZGlmeSBmaWxlLTEgb24gbWFpbgorCSRvaWRfYWRkX2YxX2YyIEFkZCBmaWxlLTEgYW5kIGZpbGUtMgorCUVPRgorCWdpdCBsb2cgLUwxOnJlbmFtZWQtMSAtLW9uZWxpbmUgLS1uby1wYXRjaCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmYW5jeSByZW5hbWUgZm9sbG93aW5nICMyJyAnCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJJG9pZF9tZXJnZSBNZXJnZSBicmFuY2ggJ1wnJ21vdmVzLXNpZGUnXCcnIGludG8gbW92ZXMtbWFpbgorCSRvaWRfbW9kX3IyX3NpZGUgTW9kaWZ5IHJlbmFtZWQtMiBvbiBzaWRlCisJJG9pZF9tb2RfZjJfc2lkZSBNb2RpZnkgZmlsZS0yIG9uIHNpZGUKKwkkb2lkX21vZF9mMl9tYWluXzIgTW9kaWZ5IGZpbGUtMiBvbiBtYWluICMyCisJJG9pZF9tb2RfZjJfbWFpbl8xIE1vZGlmeSBmaWxlLTIgb24gbWFpbiAjMQorCSRvaWRfYWRkX2YxX2YyIEFkZCBmaWxlLTEgYW5kIGZpbGUtMgorCUVPRgorCWdpdCBsb2cgLUwxOnJlbmFtZWQtMiAtLW9uZWxpbmUgLS1uby1wYXRjaCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDQyMTEvZXhwZWN0LmJlZ2lubmluZy1vZi1maWxlIGIvdC90NDIxMS9zaGExL2V4cGVjdC5iZWdpbm5pbmctb2YtZmlsZQpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gdC90NDIxMS9leHBlY3QuYmVnaW5uaW5nLW9mLWZpbGUKcmVuYW1lIHRvIHQvdDQyMTEvc2hhMS9leHBlY3QuYmVnaW5uaW5nLW9mLWZpbGUKZGlmZiAtLWdpdCBhL3QvdDQyMTEvZXhwZWN0LmVuZC1vZi1maWxlIGIvdC90NDIxMS9zaGExL2V4cGVjdC5lbmQtb2YtZmlsZQpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gdC90NDIxMS9leHBlY3QuZW5kLW9mLWZpbGUKcmVuYW1lIHRvIHQvdDQyMTEvc2hhMS9leHBlY3QuZW5kLW9mLWZpbGUKZGlmZiAtLWdpdCBhL3QvdDQyMTEvZXhwZWN0Lm1vdmUtc3VwcG9ydC1mIGIvdC90NDIxMS9zaGExL2V4cGVjdC5tb3ZlLXN1cHBvcnQtZgpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gdC90NDIxMS9leHBlY3QubW92ZS1zdXBwb3J0LWYKcmVuYW1lIHRvIHQvdDQyMTEvc2hhMS9leHBlY3QubW92ZS1zdXBwb3J0LWYKZGlmZiAtLWdpdCBhL3QvdDQyMTEvZXhwZWN0Lm11bHRpcGxlIGIvdC90NDIxMS9zaGExL2V4cGVjdC5tdWx0aXBsZQpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gdC90NDIxMS9leHBlY3QubXVsdGlwbGUKcmVuYW1lIHRvIHQvdDQyMTEvc2hhMS9leHBlY3QubXVsdGlwbGUKZGlmZiAtLWdpdCBhL3QvdDQyMTEvZXhwZWN0Lm11bHRpcGxlLW92ZXJsYXBwaW5nIGIvdC90NDIxMS9zaGExL2V4cGVjdC5tdWx0aXBsZS1vdmVybGFwcGluZwpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gdC90NDIxMS9leHBlY3QubXVsdGlwbGUtb3ZlcmxhcHBpbmcKcmVuYW1lIHRvIHQvdDQyMTEvc2hhMS9leHBlY3QubXVsdGlwbGUtb3ZlcmxhcHBpbmcKZGlmZiAtLWdpdCBhL3QvdDQyMTEvZXhwZWN0Lm11bHRpcGxlLXN1cGVyc2V0IGIvdC90NDIxMS9zaGExL2V4cGVjdC5tdWx0aXBsZS1zdXBlcnNldApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gdC90NDIxMS9leHBlY3QubXVsdGlwbGUtc3VwZXJzZXQKcmVuYW1lIHRvIHQvdDQyMTEvc2hhMS9leHBlY3QubXVsdGlwbGUtc3VwZXJzZXQKZGlmZiAtLWdpdCBhL3QvdDQyMTEvZXhwZWN0LnBhcmFsbGVsLWNoYW5nZS1mLXRvLW1haW4gYi90L3Q0MjExL3NoYTEvZXhwZWN0LnBhcmFsbGVsLWNoYW5nZS1mLXRvLW1haW4Kc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIHQvdDQyMTEvZXhwZWN0LnBhcmFsbGVsLWNoYW5nZS1mLXRvLW1haW4KcmVuYW1lIHRvIHQvdDQyMTEvc2hhMS9leHBlY3QucGFyYWxsZWwtY2hhbmdlLWYtdG8tbWFpbgpkaWZmIC0tZ2l0IGEvdC90NDIxMS9leHBlY3Quc2ltcGxlLWYgYi90L3Q0MjExL3NoYTEvZXhwZWN0LnNpbXBsZS1mCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSB0L3Q0MjExL2V4cGVjdC5zaW1wbGUtZgpyZW5hbWUgdG8gdC90NDIxMS9zaGExL2V4cGVjdC5zaW1wbGUtZgpkaWZmIC0tZ2l0IGEvdC90NDIxMS9leHBlY3Quc2ltcGxlLWYtdG8tbWFpbiBiL3QvdDQyMTEvc2hhMS9leHBlY3Quc2ltcGxlLWYtdG8tbWFpbgpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gdC90NDIxMS9leHBlY3Quc2ltcGxlLWYtdG8tbWFpbgpyZW5hbWUgdG8gdC90NDIxMS9zaGExL2V4cGVjdC5zaW1wbGUtZi10by1tYWluCmRpZmYgLS1naXQgYS90L3Q0MjExL2V4cGVjdC5zaW1wbGUtbWFpbiBiL3QvdDQyMTEvc2hhMS9leHBlY3Quc2ltcGxlLW1haW4Kc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIHQvdDQyMTEvZXhwZWN0LnNpbXBsZS1tYWluCnJlbmFtZSB0byB0L3Q0MjExL3NoYTEvZXhwZWN0LnNpbXBsZS1tYWluCmRpZmYgLS1naXQgYS90L3Q0MjExL2V4cGVjdC5zaW1wbGUtbWFpbi10by1lbmQgYi90L3Q0MjExL3NoYTEvZXhwZWN0LnNpbXBsZS1tYWluLXRvLWVuZApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gdC90NDIxMS9leHBlY3Quc2ltcGxlLW1haW4tdG8tZW5kCnJlbmFtZSB0byB0L3Q0MjExL3NoYTEvZXhwZWN0LnNpbXBsZS1tYWluLXRvLWVuZApkaWZmIC0tZ2l0IGEvdC90NDIxMS9leHBlY3QudHdvLXJhbmdlcyBiL3QvdDQyMTEvc2hhMS9leHBlY3QudHdvLXJhbmdlcwpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gdC90NDIxMS9leHBlY3QudHdvLXJhbmdlcwpyZW5hbWUgdG8gdC90NDIxMS9zaGExL2V4cGVjdC50d28tcmFuZ2VzCmRpZmYgLS1naXQgYS90L3Q0MjExL2V4cGVjdC52YW5pc2hlcy1lYXJseSBiL3QvdDQyMTEvc2hhMS9leHBlY3QudmFuaXNoZXMtZWFybHkKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIHQvdDQyMTEvZXhwZWN0LnZhbmlzaGVzLWVhcmx5CnJlbmFtZSB0byB0L3Q0MjExL3NoYTEvZXhwZWN0LnZhbmlzaGVzLWVhcmx5CmRpZmYgLS1naXQgYS90L3Q0MjExL3NoYTI1Ni9leHBlY3QuYmVnaW5uaW5nLW9mLWZpbGUgYi90L3Q0MjExL3NoYTI1Ni9leHBlY3QuYmVnaW5uaW5nLW9mLWZpbGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWFkZmRmYwotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC5iZWdpbm5pbmctb2YtZmlsZQpAQCAtMCwwICsxLDQzIEBACitjb21taXQgNjJhNDBiMzhmYTRmMDA4MDAwMDRhZWU4MWVmMjg3YjcyMDEzMTc1OTRlYmNiOTkwZjM4Y2JlNDkzYjAxZDIwMAorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ3OjQwIDIwMTMgKzAxMDAKKworICAgIGNoYW5nZSBhdCB2ZXJ5IGJlZ2lubmluZworCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTEsMyArMSw0IEBACisrI2luY2x1ZGUgPHVuaXN0ZC5oPgorICNpbmNsdWRlIDxzdGRpby5oPgorIAorIGxvbmcgZihsb25nIHgpCisKK2NvbW1pdCBjY2Y5N2I5ODc4MTg5YzQwYTk4MWRhNTBiMTU3MTNiYjgwYTM1NzU1MzI2MzIwZWM4MDkwMGNhZjIyY2VkNDZmCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDU6MTYgMjAxMyArMDEwMAorCisgICAgdG91Y2ggYm90aCBmdW5jdGlvbnMKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC0xLDMgKzEsMyBAQAorICNpbmNsdWRlIDxzdGRpby5oPgorIAorLWludCBmKGludCB4KQorK2xvbmcgZihsb25nIHgpCisKK2NvbW1pdCAxZGQ3ZTliMmIxNjk5MzI0YjUzYjM0MWU3Mjg2NTNiOTEzYmMxOTJhMTRkZmVhMTY4YzViNTFmMmIzZDAzNTkyCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDQ6NDggMjAxMyArMDEwMAorCisgICAgaW5pdGlhbAorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gL2Rldi9udWxsCisrKysgYi9hLmMKK0BAIC0wLDAgKzEsMyBAQAorKyNpbmNsdWRlIDxzdGRpby5oPgorKworK2ludCBmKGludCB4KQpkaWZmIC0tZ2l0IGEvdC90NDIxMS9zaGEyNTYvZXhwZWN0LmVuZC1vZi1maWxlIGIvdC90NDIxMS9zaGEyNTYvZXhwZWN0LmVuZC1vZi1maWxlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAzYWI1YzEKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MjExL3NoYTI1Ni9leHBlY3QuZW5kLW9mLWZpbGUKQEAgLTAsMCArMSw2MiBAQAorY29tbWl0IDU1MjZlZDA1YzI0NzZiNTZhZjhiN2JlNDk5ZThmNzhiZDUwZjQ5MDc0MDczM2E5Y2E3ZTFmNTU4NzhmYTkwYTkKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0ODo0MyAyMDEzICswMTAwCisKKyAgICBjaGFuZ2UgYmFjayB0byBjb21wbGV0ZSBsaW5lCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMjAsMyArMjAsNSBAQAorIAlwcmludGYoIiVsZFxuIiwgZigxNSkpOworIAlyZXR1cm4gMDsKKy19CitcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKyt9CisrCisrLyogaW5jb21wbGV0ZSBsaW5lcyBhcmUgYmFkISAqLworCitjb21taXQgMjlmMzJhYzMxNDFjNDhiMjI4MDNlNWM0MTI3YjcxOTkxN2I2N2QwZjhjYThjNTI0OGJlYmZhMmExOWY3ZGExMAorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ4OjEwIDIwMTMgKzAxMDAKKworICAgIGNoYW5nZSB0byBhbiBpbmNvbXBsZXRlIGxpbmUgYXQgZW5kCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMjAsMyArMjAsMyBAQAorIAlwcmludGYoIiVsZFxuIiwgZigxNSkpOworIAlyZXR1cm4gMDsKKy19CisrfQorXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCisKK2NvbW1pdCBjY2Y5N2I5ODc4MTg5YzQwYTk4MWRhNTBiMTU3MTNiYjgwYTM1NzU1MzI2MzIwZWM4MDkwMGNhZjIyY2VkNDZmCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDU6MTYgMjAxMyArMDEwMAorCisgICAgdG91Y2ggYm90aCBmdW5jdGlvbnMKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC0xOSwzICsxOSwzIEBACistCXByaW50ZigiJWRcbiIsIGYoMTUpKTsKKysJcHJpbnRmKCIlbGRcbiIsIGYoMTUpKTsKKyAJcmV0dXJuIDA7CisgfQorCitjb21taXQgMWRkN2U5YjJiMTY5OTMyNGI1M2IzNDFlNzI4NjUzYjkxM2JjMTkyYTE0ZGZlYTE2OGM1YjUxZjJiM2QwMzU5MgorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ0OjQ4IDIwMTMgKzAxMDAKKworICAgIGluaXRpYWwKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIC9kZXYvbnVsbAorKysrIGIvYS5jCitAQCAtMCwwICsxOCwzIEBACisrCXByaW50ZigiJWRcbiIsIGYoMTUpKTsKKysJcmV0dXJuIDA7CisrfQpkaWZmIC0tZ2l0IGEvdC90NDIxMS9zaGEyNTYvZXhwZWN0Lm1vdmUtc3VwcG9ydC1mIGIvdC90NDIxMS9zaGEyNTYvZXhwZWN0Lm1vdmUtc3VwcG9ydC1mCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIyM2I0ZWQKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MjExL3NoYTI1Ni9leHBlY3QubW92ZS1zdXBwb3J0LWYKQEAgLTAsMCArMSw4MCBAQAorY29tbWl0IDRmN2E1ODE5NWE5MmM0MDBlMjhhMjM1NDMyODU4N2YxZmYxNGZiNzdmNWNmODk0NTM2ZjE3Y2NiYzcyOTMxYjkKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0OTo1MCAyMDEzICswMTAwCisKKyAgICBhbm90aGVyIHNpbXBsZSBjaGFuZ2UKKworZGlmZiAtLWdpdCBhL2IuYyBiL2IuYworLS0tIGEvYi5jCisrKysgYi9iLmMKK0BAIC00LDkgKzQsOSBAQAorIGxvbmcgZihsb25nIHgpCisgeworIAlpbnQgcyA9IDA7CisgCXdoaWxlICh4KSB7CistCQl4ID4+PSAxOworKwkJeCAvPSAyOworIAkJcysrOworIAl9CisgCXJldHVybiBzOworIH0KKworY29tbWl0IGNjZjk3Yjk4NzgxODljNDBhOTgxZGE1MGIxNTcxM2JiODBhMzU3NTUzMjYzMjBlYzgwOTAwY2FmMjJjZWQ0NmYKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NToxNiAyMDEzICswMTAwCisKKyAgICB0b3VjaCBib3RoIGZ1bmN0aW9ucworCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTMsOSArMyw5IEBACistaW50IGYoaW50IHgpCisrbG9uZyBmKGxvbmcgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKyAJCXggPj49IDE7CisgCQlzKys7CisgCX0KKyAJcmV0dXJuIHM7CisgfQorCitjb21taXQgZjY0MzRhY2QzNDI2MGE2YzlmNjFlOTZkOTZiZjlhMzIzZDMzMDU2MWRmNWIxY2EyNjMxMTA0ZjgyMDI2ZGZlZAorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ0OjU1IDIwMTMgKzAxMDAKKworICAgIGNoYW5nZSBmKCkKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC0zLDggKzMsOSBAQAorIGludCBmKGludCB4KQorIHsKKyAJaW50IHMgPSAwOworIAl3aGlsZSAoeCkgeworIAkJeCA+Pj0gMTsKKyAJCXMrKzsKKyAJfQorKwlyZXR1cm4gczsKKyB9CisKK2NvbW1pdCAxZGQ3ZTliMmIxNjk5MzI0YjUzYjM0MWU3Mjg2NTNiOTEzYmMxOTJhMTRkZmVhMTY4YzViNTFmMmIzZDAzNTkyCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDQ6NDggMjAxMyArMDEwMAorCisgICAgaW5pdGlhbAorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gL2Rldi9udWxsCisrKysgYi9hLmMKK0BAIC0wLDAgKzMsOCBAQAorK2ludCBmKGludCB4KQorK3sKKysJaW50IHMgPSAwOworKwl3aGlsZSAoeCkgeworKwkJeCA+Pj0gMTsKKysJCXMrKzsKKysJfQorK30KZGlmZiAtLWdpdCBhL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC5tdWx0aXBsZSBiL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC5tdWx0aXBsZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYTAwNDA5Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NDIxMS9zaGEyNTYvZXhwZWN0Lm11bHRpcGxlCkBAIC0wLDAgKzEsMTA0IEBACitjb21taXQgNTUyNmVkMDVjMjQ3NmI1NmFmOGI3YmU0OTllOGY3OGJkNTBmNDkwNzQwNzMzYTljYTdlMWY1NTg3OGZhOTBhOQorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ4OjQzIDIwMTMgKzAxMDAKKworICAgIGNoYW5nZSBiYWNrIHRvIGNvbXBsZXRlIGxpbmUKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC0xOCw1ICsxOCw3IEBACisgaW50IG1haW4gKCkKKyB7CisgCXByaW50ZigiJWxkXG4iLCBmKDE1KSk7CisgCXJldHVybiAwOworLX0KK1wgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorK30KKysKKysvKiBpbmNvbXBsZXRlIGxpbmVzIGFyZSBiYWQhICovCisKK2NvbW1pdCAyOWYzMmFjMzE0MWM0OGIyMjgwM2U1YzQxMjdiNzE5OTE3YjY3ZDBmOGNhOGM1MjQ4YmViZmEyYTE5ZjdkYTEwCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDg6MTAgMjAxMyArMDEwMAorCisgICAgY2hhbmdlIHRvIGFuIGluY29tcGxldGUgbGluZSBhdCBlbmQKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC0xOCw1ICsxOCw1IEBACisgaW50IG1haW4gKCkKKyB7CisgCXByaW50ZigiJWxkXG4iLCBmKDE1KSk7CisgCXJldHVybiAwOworLX0KKyt9CitcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKworY29tbWl0IGNjZjk3Yjk4NzgxODljNDBhOTgxZGE1MGIxNTcxM2JiODBhMzU3NTUzMjYzMjBlYzgwOTAwY2FmMjJjZWQ0NmYKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NToxNiAyMDEzICswMTAwCisKKyAgICB0b3VjaCBib3RoIGZ1bmN0aW9ucworCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTMsOSArMyw5IEBACistaW50IGYoaW50IHgpCisrbG9uZyBmKGxvbmcgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKyAJCXggPj49IDE7CisgCQlzKys7CisgCX0KKyAJcmV0dXJuIHM7CisgfQorQEAgLTE3LDUgKzE3LDUgQEAKKyBpbnQgbWFpbiAoKQorIHsKKy0JcHJpbnRmKCIlZFxuIiwgZigxNSkpOworKwlwcmludGYoIiVsZFxuIiwgZigxNSkpOworIAlyZXR1cm4gMDsKKyB9CisKK2NvbW1pdCBmNjQzNGFjZDM0MjYwYTZjOWY2MWU5NmQ5NmJmOWEzMjNkMzMwNTYxZGY1YjFjYTI2MzExMDRmODIwMjZkZmVkCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDQ6NTUgMjAxMyArMDEwMAorCisgICAgY2hhbmdlIGYoKQorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTMsOCArMyw5IEBACisgaW50IGYoaW50IHgpCisgeworIAlpbnQgcyA9IDA7CisgCXdoaWxlICh4KSB7CisgCQl4ID4+PSAxOworIAkJcysrOworIAl9CisrCXJldHVybiBzOworIH0KKworY29tbWl0IDFkZDdlOWIyYjE2OTkzMjRiNTNiMzQxZTcyODY1M2I5MTNiYzE5MmExNGRmZWExNjhjNWI1MWYyYjNkMDM1OTIKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NDo0OCAyMDEzICswMTAwCisKKyAgICBpbml0aWFsCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSAvZGV2L251bGwKKysrKyBiL2EuYworQEAgLTAsMCArMyw4IEBACisraW50IGYoaW50IHgpCisreworKwlpbnQgcyA9IDA7CisrCXdoaWxlICh4KSB7CisrCQl4ID4+PSAxOworKwkJcysrOworKwl9CisrfQpkaWZmIC0tZ2l0IGEvdC90NDIxMS9zaGEyNTYvZXhwZWN0Lm11bHRpcGxlLW92ZXJsYXBwaW5nIGIvdC90NDIxMS9zaGEyNTYvZXhwZWN0Lm11bHRpcGxlLW92ZXJsYXBwaW5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkwMTVhNDUKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MjExL3NoYTI1Ni9leHBlY3QubXVsdGlwbGUtb3ZlcmxhcHBpbmcKQEAgLTAsMCArMSwxODcgQEAKK2NvbW1pdCA1NTI2ZWQwNWMyNDc2YjU2YWY4YjdiZTQ5OWU4Zjc4YmQ1MGY0OTA3NDA3MzNhOWNhN2UxZjU1ODc4ZmE5MGE5CitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDg6NDMgMjAxMyArMDEwMAorCisgICAgY2hhbmdlIGJhY2sgdG8gY29tcGxldGUgbGluZQorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTQsMTkgKzQsMjEgQEAKKyBsb25nIGYobG9uZyB4KQorIHsKKyAJaW50IHMgPSAwOworIAl3aGlsZSAoeCkgeworIAkJeCA+Pj0gMTsKKyAJCXMrKzsKKyAJfQorIAlyZXR1cm4gczsKKyB9CisgCisgLyoKKyAgKiBUaGlzIGlzIG9ubHkgYW4gZXhhbXBsZSEKKyAgKi8KKyAKKyBpbnQgbWFpbiAoKQorIHsKKyAJcHJpbnRmKCIlbGRcbiIsIGYoMTUpKTsKKyAJcmV0dXJuIDA7CistfQorXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCisrfQorKworKy8qIGluY29tcGxldGUgbGluZXMgYXJlIGJhZCEgKi8KKworY29tbWl0IDI5ZjMyYWMzMTQxYzQ4YjIyODAzZTVjNDEyN2I3MTk5MTdiNjdkMGY4Y2E4YzUyNDhiZWJmYTJhMTlmN2RhMTAKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0ODoxMCAyMDEzICswMTAwCisKKyAgICBjaGFuZ2UgdG8gYW4gaW5jb21wbGV0ZSBsaW5lIGF0IGVuZAorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTQsMTkgKzQsMTkgQEAKKyBsb25nIGYobG9uZyB4KQorIHsKKyAJaW50IHMgPSAwOworIAl3aGlsZSAoeCkgeworIAkJeCA+Pj0gMTsKKyAJCXMrKzsKKyAJfQorIAlyZXR1cm4gczsKKyB9CisgCisgLyoKKyAgKiBUaGlzIGlzIG9ubHkgYW4gZXhhbXBsZSEKKyAgKi8KKyAKKyBpbnQgbWFpbiAoKQorIHsKKyAJcHJpbnRmKCIlbGRcbiIsIGYoMTUpKTsKKyAJcmV0dXJuIDA7CistfQorK30KK1wgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorCitjb21taXQgNWExYjM5ODkwNjNkNTVlNzFlNzY4NWVmYTMzOTJmMTMzMzg1YjQwMzRiZGRkZTUzMGRjYjUwOTBkOGI4YjhjYQorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ1OjQxIDIwMTMgKzAxMDAKKworICAgIHRvdWNoIGNvbW1lbnQKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC0zLDE5ICszLDE5IEBACisgbG9uZyBmKGxvbmcgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKyAJCXggPj49IDE7CisgCQlzKys7CisgCX0KKyAJcmV0dXJuIHM7CisgfQorIAorIC8qCistICogQSBjb21tZW50LgorKyAqIFRoaXMgaXMgb25seSBhbiBleGFtcGxlIQorICAqLworIAorIGludCBtYWluICgpCisgeworIAlwcmludGYoIiVsZFxuIiwgZigxNSkpOworIAlyZXR1cm4gMDsKKyB9CisKK2NvbW1pdCBjY2Y5N2I5ODc4MTg5YzQwYTk4MWRhNTBiMTU3MTNiYjgwYTM1NzU1MzI2MzIwZWM4MDkwMGNhZjIyY2VkNDZmCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDU6MTYgMjAxMyArMDEwMAorCisgICAgdG91Y2ggYm90aCBmdW5jdGlvbnMKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC0zLDE5ICszLDE5IEBACistaW50IGYoaW50IHgpCisrbG9uZyBmKGxvbmcgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKyAJCXggPj49IDE7CisgCQlzKys7CisgCX0KKyAJcmV0dXJuIHM7CisgfQorIAorIC8qCisgICogQSBjb21tZW50LgorICAqLworIAorIGludCBtYWluICgpCisgeworLQlwcmludGYoIiVkXG4iLCBmKDE1KSk7CisrCXByaW50ZigiJWxkXG4iLCBmKDE1KSk7CisgCXJldHVybiAwOworIH0KKworY29tbWl0IGY2NDM0YWNkMzQyNjBhNmM5ZjYxZTk2ZDk2YmY5YTMyM2QzMzA1NjFkZjViMWNhMjYzMTEwNGY4MjAyNmRmZWQKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NDo1NSAyMDEzICswMTAwCisKKyAgICBjaGFuZ2UgZigpCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMywxOCArMywxOSBAQAorIGludCBmKGludCB4KQorIHsKKyAJaW50IHMgPSAwOworIAl3aGlsZSAoeCkgeworIAkJeCA+Pj0gMTsKKyAJCXMrKzsKKyAJfQorKwlyZXR1cm4gczsKKyB9CisgCisgLyoKKyAgKiBBIGNvbW1lbnQuCisgICovCisgCisgaW50IG1haW4gKCkKKyB7CisgCXByaW50ZigiJWRcbiIsIGYoMTUpKTsKKyAJcmV0dXJuIDA7CisgfQorCitjb21taXQgMWRkN2U5YjJiMTY5OTMyNGI1M2IzNDFlNzI4NjUzYjkxM2JjMTkyYTE0ZGZlYTE2OGM1YjUxZjJiM2QwMzU5MgorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ0OjQ4IDIwMTMgKzAxMDAKKworICAgIGluaXRpYWwKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIC9kZXYvbnVsbAorKysrIGIvYS5jCitAQCAtMCwwICszLDE4IEBACisraW50IGYoaW50IHgpCisreworKwlpbnQgcyA9IDA7CisrCXdoaWxlICh4KSB7CisrCQl4ID4+PSAxOworKwkJcysrOworKwl9CisrfQorKworKy8qCisrICogQSBjb21tZW50LgorKyAqLworKworK2ludCBtYWluICgpCisreworKwlwcmludGYoIiVkXG4iLCBmKDE1KSk7CisrCXJldHVybiAwOworK30KZGlmZiAtLWdpdCBhL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC5tdWx0aXBsZS1zdXBlcnNldCBiL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC5tdWx0aXBsZS1zdXBlcnNldApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MDE1YTQ1Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NDIxMS9zaGEyNTYvZXhwZWN0Lm11bHRpcGxlLXN1cGVyc2V0CkBAIC0wLDAgKzEsMTg3IEBACitjb21taXQgNTUyNmVkMDVjMjQ3NmI1NmFmOGI3YmU0OTllOGY3OGJkNTBmNDkwNzQwNzMzYTljYTdlMWY1NTg3OGZhOTBhOQorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ4OjQzIDIwMTMgKzAxMDAKKworICAgIGNoYW5nZSBiYWNrIHRvIGNvbXBsZXRlIGxpbmUKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC00LDE5ICs0LDIxIEBACisgbG9uZyBmKGxvbmcgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKyAJCXggPj49IDE7CisgCQlzKys7CisgCX0KKyAJcmV0dXJuIHM7CisgfQorIAorIC8qCisgICogVGhpcyBpcyBvbmx5IGFuIGV4YW1wbGUhCisgICovCisgCisgaW50IG1haW4gKCkKKyB7CisgCXByaW50ZigiJWxkXG4iLCBmKDE1KSk7CisgCXJldHVybiAwOworLX0KK1wgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorK30KKysKKysvKiBpbmNvbXBsZXRlIGxpbmVzIGFyZSBiYWQhICovCisKK2NvbW1pdCAyOWYzMmFjMzE0MWM0OGIyMjgwM2U1YzQxMjdiNzE5OTE3YjY3ZDBmOGNhOGM1MjQ4YmViZmEyYTE5ZjdkYTEwCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDg6MTAgMjAxMyArMDEwMAorCisgICAgY2hhbmdlIHRvIGFuIGluY29tcGxldGUgbGluZSBhdCBlbmQKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC00LDE5ICs0LDE5IEBACisgbG9uZyBmKGxvbmcgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKyAJCXggPj49IDE7CisgCQlzKys7CisgCX0KKyAJcmV0dXJuIHM7CisgfQorIAorIC8qCisgICogVGhpcyBpcyBvbmx5IGFuIGV4YW1wbGUhCisgICovCisgCisgaW50IG1haW4gKCkKKyB7CisgCXByaW50ZigiJWxkXG4iLCBmKDE1KSk7CisgCXJldHVybiAwOworLX0KKyt9CitcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKworY29tbWl0IDVhMWIzOTg5MDYzZDU1ZTcxZTc2ODVlZmEzMzkyZjEzMzM4NWI0MDM0YmRkZGU1MzBkY2I1MDkwZDhiOGI4Y2EKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NTo0MSAyMDEzICswMTAwCisKKyAgICB0b3VjaCBjb21tZW50CisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMywxOSArMywxOSBAQAorIGxvbmcgZihsb25nIHgpCisgeworIAlpbnQgcyA9IDA7CisgCXdoaWxlICh4KSB7CisgCQl4ID4+PSAxOworIAkJcysrOworIAl9CisgCXJldHVybiBzOworIH0KKyAKKyAvKgorLSAqIEEgY29tbWVudC4KKysgKiBUaGlzIGlzIG9ubHkgYW4gZXhhbXBsZSEKKyAgKi8KKyAKKyBpbnQgbWFpbiAoKQorIHsKKyAJcHJpbnRmKCIlbGRcbiIsIGYoMTUpKTsKKyAJcmV0dXJuIDA7CisgfQorCitjb21taXQgY2NmOTdiOTg3ODE4OWM0MGE5ODFkYTUwYjE1NzEzYmI4MGEzNTc1NTMyNjMyMGVjODA5MDBjYWYyMmNlZDQ2ZgorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ1OjE2IDIwMTMgKzAxMDAKKworICAgIHRvdWNoIGJvdGggZnVuY3Rpb25zCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMywxOSArMywxOSBAQAorLWludCBmKGludCB4KQorK2xvbmcgZihsb25nIHgpCisgeworIAlpbnQgcyA9IDA7CisgCXdoaWxlICh4KSB7CisgCQl4ID4+PSAxOworIAkJcysrOworIAl9CisgCXJldHVybiBzOworIH0KKyAKKyAvKgorICAqIEEgY29tbWVudC4KKyAgKi8KKyAKKyBpbnQgbWFpbiAoKQorIHsKKy0JcHJpbnRmKCIlZFxuIiwgZigxNSkpOworKwlwcmludGYoIiVsZFxuIiwgZigxNSkpOworIAlyZXR1cm4gMDsKKyB9CisKK2NvbW1pdCBmNjQzNGFjZDM0MjYwYTZjOWY2MWU5NmQ5NmJmOWEzMjNkMzMwNTYxZGY1YjFjYTI2MzExMDRmODIwMjZkZmVkCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDQ6NTUgMjAxMyArMDEwMAorCisgICAgY2hhbmdlIGYoKQorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTMsMTggKzMsMTkgQEAKKyBpbnQgZihpbnQgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKyAJCXggPj49IDE7CisgCQlzKys7CisgCX0KKysJcmV0dXJuIHM7CisgfQorIAorIC8qCisgICogQSBjb21tZW50LgorICAqLworIAorIGludCBtYWluICgpCisgeworIAlwcmludGYoIiVkXG4iLCBmKDE1KSk7CisgCXJldHVybiAwOworIH0KKworY29tbWl0IDFkZDdlOWIyYjE2OTkzMjRiNTNiMzQxZTcyODY1M2I5MTNiYzE5MmExNGRmZWExNjhjNWI1MWYyYjNkMDM1OTIKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NDo0OCAyMDEzICswMTAwCisKKyAgICBpbml0aWFsCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSAvZGV2L251bGwKKysrKyBiL2EuYworQEAgLTAsMCArMywxOCBAQAorK2ludCBmKGludCB4KQorK3sKKysJaW50IHMgPSAwOworKwl3aGlsZSAoeCkgeworKwkJeCA+Pj0gMTsKKysJCXMrKzsKKysJfQorK30KKysKKysvKgorKyAqIEEgY29tbWVudC4KKysgKi8KKysKKytpbnQgbWFpbiAoKQorK3sKKysJcHJpbnRmKCIlZFxuIiwgZigxNSkpOworKwlyZXR1cm4gMDsKKyt9CmRpZmYgLS1naXQgYS90L3Q0MjExL3NoYTI1Ni9leHBlY3QucGFyYWxsZWwtY2hhbmdlLWYtdG8tbWFpbiBiL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC5wYXJhbGxlbC1jaGFuZ2UtZi10by1tYWluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU2OGY4OTIKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MjExL3NoYTI1Ni9leHBlY3QucGFyYWxsZWwtY2hhbmdlLWYtdG8tbWFpbgpAQCAtMCwwICsxLDE2MCBAQAorY29tbWl0IDk4MTE3YzIwNTliNzZjMzY5OTU3NDhmYjk3YjAyNTQyYWVmNDc3ZmUyNjM3OWU5NGMxOGZkNzBmNzc5MGJjNjcKK01lcmdlOiBiNTExNjk0IDRmN2E1ODEKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QGluZi5ldGh6LmNoPgorRGF0ZTogICBGcmkgQXByIDEyIDE2OjE2OjI0IDIwMTMgKzAyMDAKKworICAgIE1lcmdlIGFjcm9zcyB0aGUgcmVuYW1lCisKKworY29tbWl0IDRmN2E1ODE5NWE5MmM0MDBlMjhhMjM1NDMyODU4N2YxZmYxNGZiNzdmNWNmODk0NTM2ZjE3Y2NiYzcyOTMxYjkKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0OTo1MCAyMDEzICswMTAwCisKKyAgICBhbm90aGVyIHNpbXBsZSBjaGFuZ2UKKworZGlmZiAtLWdpdCBhL2IuYyBiL2IuYworLS0tIGEvYi5jCisrKysgYi9iLmMKK0BAIC00LDE0ICs0LDE0IEBACisgbG9uZyBmKGxvbmcgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKy0JCXggPj49IDE7CisrCQl4IC89IDI7CisgCQlzKys7CisgCX0KKyAJcmV0dXJuIHM7CisgfQorIAorIC8qCisgICogVGhpcyBpcyBvbmx5IGFuIGV4YW1wbGUhCisgICovCisgCisKK2NvbW1pdCBiNTExNjk0ZjUzMzc2NjNmYmQ2OTc2MjI5OTNhNWY4ZTEwOTllY2E4NGJlNGRmMzEzZjJiM2VlOTRhMDk4YjQyCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBpbmYuZXRoei5jaD4KK0RhdGU6ICAgRnJpIEFwciAxMiAxNjoxNTo1NyAyMDEzICswMjAwCisKKyAgICBjaGFuZ2Ugb24gYW5vdGhlciBsaW5lIG9mIGhpc3Rvcnkgd2hpbGUgcmVuYW1lIGhhcHBlbnMKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC00LDE0ICs0LDE0IEBACisgbG9uZyBmKGxvbmcgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKyAJCXggPj49IDE7CisgCQlzKys7CisgCX0KKyAJcmV0dXJuIHM7CisgfQorIAorIC8qCistICogVGhpcyBpcyBvbmx5IGFuIGV4YW1wbGUhCisrICogVGhpcyBpcyBvbmx5IGEgc2hvcnQgZXhhbXBsZSEKKyAgKi8KKyAKKworY29tbWl0IDVhMWIzOTg5MDYzZDU1ZTcxZTc2ODVlZmEzMzkyZjEzMzM4NWI0MDM0YmRkZGU1MzBkY2I1MDkwZDhiOGI4Y2EKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NTo0MSAyMDEzICswMTAwCisKKyAgICB0b3VjaCBjb21tZW50CisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMywxNCArMywxNCBAQAorIGxvbmcgZihsb25nIHgpCisgeworIAlpbnQgcyA9IDA7CisgCXdoaWxlICh4KSB7CisgCQl4ID4+PSAxOworIAkJcysrOworIAl9CisgCXJldHVybiBzOworIH0KKyAKKyAvKgorLSAqIEEgY29tbWVudC4KKysgKiBUaGlzIGlzIG9ubHkgYW4gZXhhbXBsZSEKKyAgKi8KKyAKKworY29tbWl0IGNjZjk3Yjk4NzgxODljNDBhOTgxZGE1MGIxNTcxM2JiODBhMzU3NTUzMjYzMjBlYzgwOTAwY2FmMjJjZWQ0NmYKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NToxNiAyMDEzICswMTAwCisKKyAgICB0b3VjaCBib3RoIGZ1bmN0aW9ucworCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTMsMTQgKzMsMTQgQEAKKy1pbnQgZihpbnQgeCkKKytsb25nIGYobG9uZyB4KQorIHsKKyAJaW50IHMgPSAwOworIAl3aGlsZSAoeCkgeworIAkJeCA+Pj0gMTsKKyAJCXMrKzsKKyAJfQorIAlyZXR1cm4gczsKKyB9CisgCisgLyoKKyAgKiBBIGNvbW1lbnQuCisgICovCisgCisKK2NvbW1pdCBmNjQzNGFjZDM0MjYwYTZjOWY2MWU5NmQ5NmJmOWEzMjNkMzMwNTYxZGY1YjFjYTI2MzExMDRmODIwMjZkZmVkCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDQ6NTUgMjAxMyArMDEwMAorCisgICAgY2hhbmdlIGYoKQorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTMsMTMgKzMsMTQgQEAKKyBpbnQgZihpbnQgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKyAJCXggPj49IDE7CisgCQlzKys7CisgCX0KKysJcmV0dXJuIHM7CisgfQorIAorIC8qCisgICogQSBjb21tZW50LgorICAqLworIAorCitjb21taXQgMWRkN2U5YjJiMTY5OTMyNGI1M2IzNDFlNzI4NjUzYjkxM2JjMTkyYTE0ZGZlYTE2OGM1YjUxZjJiM2QwMzU5MgorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ0OjQ4IDIwMTMgKzAxMDAKKworICAgIGluaXRpYWwKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIC9kZXYvbnVsbAorKysrIGIvYS5jCitAQCAtMCwwICszLDEzIEBACisraW50IGYoaW50IHgpCisreworKwlpbnQgcyA9IDA7CisrCXdoaWxlICh4KSB7CisrCQl4ID4+PSAxOworKwkJcysrOworKwl9CisrfQorKworKy8qCisrICogQSBjb21tZW50LgorKyAqLworKwpkaWZmIC0tZ2l0IGEvdC90NDIxMS9zaGEyNTYvZXhwZWN0LnNpbXBsZS1mIGIvdC90NDIxMS9zaGEyNTYvZXhwZWN0LnNpbXBsZS1mCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY1NTA4ZDcKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MjExL3NoYTI1Ni9leHBlY3Quc2ltcGxlLWYKQEAgLTAsMCArMSw1OSBAQAorY29tbWl0IGNjZjk3Yjk4NzgxODljNDBhOTgxZGE1MGIxNTcxM2JiODBhMzU3NTUzMjYzMjBlYzgwOTAwY2FmMjJjZWQ0NmYKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NToxNiAyMDEzICswMTAwCisKKyAgICB0b3VjaCBib3RoIGZ1bmN0aW9ucworCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTMsOSArMyw5IEBACistaW50IGYoaW50IHgpCisrbG9uZyBmKGxvbmcgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKyAJCXggPj49IDE7CisgCQlzKys7CisgCX0KKyAJcmV0dXJuIHM7CisgfQorCitjb21taXQgZjY0MzRhY2QzNDI2MGE2YzlmNjFlOTZkOTZiZjlhMzIzZDMzMDU2MWRmNWIxY2EyNjMxMTA0ZjgyMDI2ZGZlZAorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ0OjU1IDIwMTMgKzAxMDAKKworICAgIGNoYW5nZSBmKCkKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC0zLDggKzMsOSBAQAorIGludCBmKGludCB4KQorIHsKKyAJaW50IHMgPSAwOworIAl3aGlsZSAoeCkgeworIAkJeCA+Pj0gMTsKKyAJCXMrKzsKKyAJfQorKwlyZXR1cm4gczsKKyB9CisKK2NvbW1pdCAxZGQ3ZTliMmIxNjk5MzI0YjUzYjM0MWU3Mjg2NTNiOTEzYmMxOTJhMTRkZmVhMTY4YzViNTFmMmIzZDAzNTkyCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDQ6NDggMjAxMyArMDEwMAorCisgICAgaW5pdGlhbAorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gL2Rldi9udWxsCisrKysgYi9hLmMKK0BAIC0wLDAgKzMsOCBAQAorK2ludCBmKGludCB4KQorK3sKKysJaW50IHMgPSAwOworKwl3aGlsZSAoeCkgeworKwkJeCA+Pj0gMTsKKysJCXMrKzsKKysJfQorK30KZGlmZiAtLWdpdCBhL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC5zaW1wbGUtZi10by1tYWluIGIvdC90NDIxMS9zaGEyNTYvZXhwZWN0LnNpbXBsZS1mLXRvLW1haW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzdiNzIxYwotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC5zaW1wbGUtZi10by1tYWluCkBAIC0wLDAgKzEsMTAwIEBACitjb21taXQgNWExYjM5ODkwNjNkNTVlNzFlNzY4NWVmYTMzOTJmMTMzMzg1YjQwMzRiZGRkZTUzMGRjYjUwOTBkOGI4YjhjYQorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ1OjQxIDIwMTMgKzAxMDAKKworICAgIHRvdWNoIGNvbW1lbnQKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC0zLDE0ICszLDE0IEBACisgbG9uZyBmKGxvbmcgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKyAJCXggPj49IDE7CisgCQlzKys7CisgCX0KKyAJcmV0dXJuIHM7CisgfQorIAorIC8qCistICogQSBjb21tZW50LgorKyAqIFRoaXMgaXMgb25seSBhbiBleGFtcGxlIQorICAqLworIAorCitjb21taXQgY2NmOTdiOTg3ODE4OWM0MGE5ODFkYTUwYjE1NzEzYmI4MGEzNTc1NTMyNjMyMGVjODA5MDBjYWYyMmNlZDQ2ZgorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ1OjE2IDIwMTMgKzAxMDAKKworICAgIHRvdWNoIGJvdGggZnVuY3Rpb25zCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMywxNCArMywxNCBAQAorLWludCBmKGludCB4KQorK2xvbmcgZihsb25nIHgpCisgeworIAlpbnQgcyA9IDA7CisgCXdoaWxlICh4KSB7CisgCQl4ID4+PSAxOworIAkJcysrOworIAl9CisgCXJldHVybiBzOworIH0KKyAKKyAvKgorICAqIEEgY29tbWVudC4KKyAgKi8KKyAKKworY29tbWl0IGY2NDM0YWNkMzQyNjBhNmM5ZjYxZTk2ZDk2YmY5YTMyM2QzMzA1NjFkZjViMWNhMjYzMTEwNGY4MjAyNmRmZWQKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NDo1NSAyMDEzICswMTAwCisKKyAgICBjaGFuZ2UgZigpCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMywxMyArMywxNCBAQAorIGludCBmKGludCB4KQorIHsKKyAJaW50IHMgPSAwOworIAl3aGlsZSAoeCkgeworIAkJeCA+Pj0gMTsKKyAJCXMrKzsKKyAJfQorKwlyZXR1cm4gczsKKyB9CisgCisgLyoKKyAgKiBBIGNvbW1lbnQuCisgICovCisgCisKK2NvbW1pdCAxZGQ3ZTliMmIxNjk5MzI0YjUzYjM0MWU3Mjg2NTNiOTEzYmMxOTJhMTRkZmVhMTY4YzViNTFmMmIzZDAzNTkyCitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDQ6NDggMjAxMyArMDEwMAorCisgICAgaW5pdGlhbAorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gL2Rldi9udWxsCisrKysgYi9hLmMKK0BAIC0wLDAgKzMsMTMgQEAKKytpbnQgZihpbnQgeCkKKyt7CisrCWludCBzID0gMDsKKysJd2hpbGUgKHgpIHsKKysJCXggPj49IDE7CisrCQlzKys7CisrCX0KKyt9CisrCisrLyoKKysgKiBBIGNvbW1lbnQuCisrICovCisrCmRpZmYgLS1naXQgYS90L3Q0MjExL3NoYTI1Ni9leHBlY3Quc2ltcGxlLW1haW4gYi90L3Q0MjExL3NoYTI1Ni9leHBlY3Quc2ltcGxlLW1haW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDIwNzA4YwotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC5zaW1wbGUtbWFpbgpAQCAtMCwwICsxLDY4IEBACitjb21taXQgNTUyNmVkMDVjMjQ3NmI1NmFmOGI3YmU0OTllOGY3OGJkNTBmNDkwNzQwNzMzYTljYTdlMWY1NTg3OGZhOTBhOQorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ4OjQzIDIwMTMgKzAxMDAKKworICAgIGNoYW5nZSBiYWNrIHRvIGNvbXBsZXRlIGxpbmUKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC0xOCw1ICsxOCw1IEBACisgaW50IG1haW4gKCkKKyB7CisgCXByaW50ZigiJWxkXG4iLCBmKDE1KSk7CisgCXJldHVybiAwOworLX0KK1wgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorK30KKworY29tbWl0IDI5ZjMyYWMzMTQxYzQ4YjIyODAzZTVjNDEyN2I3MTk5MTdiNjdkMGY4Y2E4YzUyNDhiZWJmYTJhMTlmN2RhMTAKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0ODoxMCAyMDEzICswMTAwCisKKyAgICBjaGFuZ2UgdG8gYW4gaW5jb21wbGV0ZSBsaW5lIGF0IGVuZAorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTE4LDUgKzE4LDUgQEAKKyBpbnQgbWFpbiAoKQorIHsKKyAJcHJpbnRmKCIlbGRcbiIsIGYoMTUpKTsKKyAJcmV0dXJuIDA7CistfQorK30KK1wgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorCitjb21taXQgY2NmOTdiOTg3ODE4OWM0MGE5ODFkYTUwYjE1NzEzYmI4MGEzNTc1NTMyNjMyMGVjODA5MDBjYWYyMmNlZDQ2ZgorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ1OjE2IDIwMTMgKzAxMDAKKworICAgIHRvdWNoIGJvdGggZnVuY3Rpb25zCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMTcsNSArMTcsNSBAQAorIGludCBtYWluICgpCisgeworLQlwcmludGYoIiVkXG4iLCBmKDE1KSk7CisrCXByaW50ZigiJWxkXG4iLCBmKDE1KSk7CisgCXJldHVybiAwOworIH0KKworY29tbWl0IDFkZDdlOWIyYjE2OTkzMjRiNTNiMzQxZTcyODY1M2I5MTNiYzE5MmExNGRmZWExNjhjNWI1MWYyYjNkMDM1OTIKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NDo0OCAyMDEzICswMTAwCisKKyAgICBpbml0aWFsCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSAvZGV2L251bGwKKysrKyBiL2EuYworQEAgLTAsMCArMTYsNSBAQAorK2ludCBtYWluICgpCisreworKwlwcmludGYoIiVkXG4iLCBmKDE1KSk7CisrCXJldHVybiAwOworK30KZGlmZiAtLWdpdCBhL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC5zaW1wbGUtbWFpbi10by1lbmQgYi90L3Q0MjExL3NoYTI1Ni9leHBlY3Quc2ltcGxlLW1haW4tdG8tZW5kCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYxN2NkZjMKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q0MjExL3NoYTI1Ni9leHBlY3Quc2ltcGxlLW1haW4tdG8tZW5kCkBAIC0wLDAgKzEsNzAgQEAKK2NvbW1pdCA1NTI2ZWQwNWMyNDc2YjU2YWY4YjdiZTQ5OWU4Zjc4YmQ1MGY0OTA3NDA3MzNhOWNhN2UxZjU1ODc4ZmE5MGE5CitBdXRob3I6IFRob21hcyBSYXN0IDx0cmFzdEBzdHVkZW50LmV0aHouY2g+CitEYXRlOiAgIFRodSBGZWIgMjggMTA6NDg6NDMgMjAxMyArMDEwMAorCisgICAgY2hhbmdlIGJhY2sgdG8gY29tcGxldGUgbGluZQorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTE4LDUgKzE4LDcgQEAKKyBpbnQgbWFpbiAoKQorIHsKKyAJcHJpbnRmKCIlbGRcbiIsIGYoMTUpKTsKKyAJcmV0dXJuIDA7CistfQorXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCisrfQorKworKy8qIGluY29tcGxldGUgbGluZXMgYXJlIGJhZCEgKi8KKworY29tbWl0IDI5ZjMyYWMzMTQxYzQ4YjIyODAzZTVjNDEyN2I3MTk5MTdiNjdkMGY4Y2E4YzUyNDhiZWJmYTJhMTlmN2RhMTAKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0ODoxMCAyMDEzICswMTAwCisKKyAgICBjaGFuZ2UgdG8gYW4gaW5jb21wbGV0ZSBsaW5lIGF0IGVuZAorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTE4LDUgKzE4LDUgQEAKKyBpbnQgbWFpbiAoKQorIHsKKyAJcHJpbnRmKCIlbGRcbiIsIGYoMTUpKTsKKyAJcmV0dXJuIDA7CistfQorK30KK1wgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorCitjb21taXQgY2NmOTdiOTg3ODE4OWM0MGE5ODFkYTUwYjE1NzEzYmI4MGEzNTc1NTMyNjMyMGVjODA5MDBjYWYyMmNlZDQ2ZgorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ1OjE2IDIwMTMgKzAxMDAKKworICAgIHRvdWNoIGJvdGggZnVuY3Rpb25zCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMTcsNSArMTcsNSBAQAorIGludCBtYWluICgpCisgeworLQlwcmludGYoIiVkXG4iLCBmKDE1KSk7CisrCXByaW50ZigiJWxkXG4iLCBmKDE1KSk7CisgCXJldHVybiAwOworIH0KKworY29tbWl0IDFkZDdlOWIyYjE2OTkzMjRiNTNiMzQxZTcyODY1M2I5MTNiYzE5MmExNGRmZWExNjhjNWI1MWYyYjNkMDM1OTIKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NDo0OCAyMDEzICswMTAwCisKKyAgICBpbml0aWFsCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSAvZGV2L251bGwKKysrKyBiL2EuYworQEAgLTAsMCArMTYsNSBAQAorK2ludCBtYWluICgpCisreworKwlwcmludGYoIiVkXG4iLCBmKDE1KSk7CisrCXJldHVybiAwOworK30KZGlmZiAtLWdpdCBhL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC50d28tcmFuZ2VzIGIvdC90NDIxMS9zaGEyNTYvZXhwZWN0LnR3by1yYW5nZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWY1N2M4YgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC50d28tcmFuZ2VzCkBAIC0wLDAgKzEsMTAyIEBACitjb21taXQgNTUyNmVkMDVjMjQ3NmI1NmFmOGI3YmU0OTllOGY3OGJkNTBmNDkwNzQwNzMzYTljYTdlMWY1NTg3OGZhOTBhOQorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ4OjQzIDIwMTMgKzAxMDAKKworICAgIGNoYW5nZSBiYWNrIHRvIGNvbXBsZXRlIGxpbmUKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC0xOCw1ICsxOCw1IEBACisgaW50IG1haW4gKCkKKyB7CisgCXByaW50ZigiJWxkXG4iLCBmKDE1KSk7CisgCXJldHVybiAwOworLX0KK1wgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorK30KKworY29tbWl0IDI5ZjMyYWMzMTQxYzQ4YjIyODAzZTVjNDEyN2I3MTk5MTdiNjdkMGY4Y2E4YzUyNDhiZWJmYTJhMTlmN2RhMTAKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0ODoxMCAyMDEzICswMTAwCisKKyAgICBjaGFuZ2UgdG8gYW4gaW5jb21wbGV0ZSBsaW5lIGF0IGVuZAorCitkaWZmIC0tZ2l0IGEvYS5jIGIvYS5jCistLS0gYS9hLmMKKysrKyBiL2EuYworQEAgLTE4LDUgKzE4LDUgQEAKKyBpbnQgbWFpbiAoKQorIHsKKyAJcHJpbnRmKCIlbGRcbiIsIGYoMTUpKTsKKyAJcmV0dXJuIDA7CistfQorK30KK1wgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorCitjb21taXQgY2NmOTdiOTg3ODE4OWM0MGE5ODFkYTUwYjE1NzEzYmI4MGEzNTc1NTMyNjMyMGVjODA5MDBjYWYyMmNlZDQ2ZgorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ1OjE2IDIwMTMgKzAxMDAKKworICAgIHRvdWNoIGJvdGggZnVuY3Rpb25zCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMyw5ICszLDkgQEAKKy1pbnQgZihpbnQgeCkKKytsb25nIGYobG9uZyB4KQorIHsKKyAJaW50IHMgPSAwOworIAl3aGlsZSAoeCkgeworIAkJeCA+Pj0gMTsKKyAJCXMrKzsKKyAJfQorIAlyZXR1cm4gczsKKyB9CitAQCAtMTcsNSArMTcsNSBAQAorIGludCBtYWluICgpCisgeworLQlwcmludGYoIiVkXG4iLCBmKDE1KSk7CisrCXByaW50ZigiJWxkXG4iLCBmKDE1KSk7CisgCXJldHVybiAwOworIH0KKworY29tbWl0IGY2NDM0YWNkMzQyNjBhNmM5ZjYxZTk2ZDk2YmY5YTMyM2QzMzA1NjFkZjViMWNhMjYzMTEwNGY4MjAyNmRmZWQKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NDo1NSAyMDEzICswMTAwCisKKyAgICBjaGFuZ2UgZigpCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMyw4ICszLDkgQEAKKyBpbnQgZihpbnQgeCkKKyB7CisgCWludCBzID0gMDsKKyAJd2hpbGUgKHgpIHsKKyAJCXggPj49IDE7CisgCQlzKys7CisgCX0KKysJcmV0dXJuIHM7CisgfQorCitjb21taXQgMWRkN2U5YjJiMTY5OTMyNGI1M2IzNDFlNzI4NjUzYjkxM2JjMTkyYTE0ZGZlYTE2OGM1YjUxZjJiM2QwMzU5MgorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ0OjQ4IDIwMTMgKzAxMDAKKworICAgIGluaXRpYWwKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIC9kZXYvbnVsbAorKysrIGIvYS5jCitAQCAtMCwwICszLDggQEAKKytpbnQgZihpbnQgeCkKKyt7CisrCWludCBzID0gMDsKKysJd2hpbGUgKHgpIHsKKysJCXggPj49IDE7CisrCQlzKys7CisrCX0KKyt9CmRpZmYgLS1naXQgYS90L3Q0MjExL3NoYTI1Ni9leHBlY3QudmFuaXNoZXMtZWFybHkgYi90L3Q0MjExL3NoYTI1Ni9leHBlY3QudmFuaXNoZXMtZWFybHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTFlYzliZAotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQyMTEvc2hhMjU2L2V4cGVjdC52YW5pc2hlcy1lYXJseQpAQCAtMCwwICsxLDM5IEBACitjb21taXQgNTUyNmVkMDVjMjQ3NmI1NmFmOGI3YmU0OTllOGY3OGJkNTBmNDkwNzQwNzMzYTljYTdlMWY1NTg3OGZhOTBhOQorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ4OjQzIDIwMTMgKzAxMDAKKworICAgIGNoYW5nZSBiYWNrIHRvIGNvbXBsZXRlIGxpbmUKKworZGlmZiAtLWdpdCBhL2EuYyBiL2EuYworLS0tIGEvYS5jCisrKysgYi9hLmMKK0BAIC0yMiwxICsyNCwxIEBACistfQorXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCisrLyogaW5jb21wbGV0ZSBsaW5lcyBhcmUgYmFkISAqLworCitjb21taXQgMjlmMzJhYzMxNDFjNDhiMjI4MDNlNWM0MTI3YjcxOTkxN2I2N2QwZjhjYThjNTI0OGJlYmZhMmExOWY3ZGExMAorQXV0aG9yOiBUaG9tYXMgUmFzdCA8dHJhc3RAc3R1ZGVudC5ldGh6LmNoPgorRGF0ZTogICBUaHUgRmViIDI4IDEwOjQ4OjEwIDIwMTMgKzAxMDAKKworICAgIGNoYW5nZSB0byBhbiBpbmNvbXBsZXRlIGxpbmUgYXQgZW5kCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSBhL2EuYworKysrIGIvYS5jCitAQCAtMjIsMSArMjIsMSBAQAorLX0KKyt9CitcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKworY29tbWl0IDFkZDdlOWIyYjE2OTkzMjRiNTNiMzQxZTcyODY1M2I5MTNiYzE5MmExNGRmZWExNjhjNWI1MWYyYjNkMDM1OTIKK0F1dGhvcjogVGhvbWFzIFJhc3QgPHRyYXN0QHN0dWRlbnQuZXRoei5jaD4KK0RhdGU6ICAgVGh1IEZlYiAyOCAxMDo0NDo0OCAyMDEzICswMTAwCisKKyAgICBpbml0aWFsCisKK2RpZmYgLS1naXQgYS9hLmMgYi9hLmMKKy0tLSAvZGV2L251bGwKKysrKyBiL2EuYworQEAgLTAsMCArMjAsMSBAQAorK30KZGlmZiAtLWdpdCBhL3QvdDQyMTMtbG9nLXRhYmV4cGFuZC5zaCBiL3QvdDQyMTMtbG9nLXRhYmV4cGFuZC5zaAppbmRleCA3ZjkwZjU4Li41M2E0YWYzIDEwMDc1NQotLS0gYS90L3Q0MjEzLWxvZy10YWJleHBhbmQuc2gKKysrIGIvdC90NDIxMy1sb2ctdGFiZXhwYW5kLnNoCkBAIC0zNiw3ICszNiw3IEBACiAJZXNhYwogCiAJIyBQcmVmaXggdGhlIG91dHB1dCB3aXRoIHRoZSBjb21tYW5kIGxpbmUgYXJndW1lbnRzLCBhbmQKLQkjIHJlcGxhY2UgU1Agd2l0aCBhIGRvdCBib3RoIGluIHRoZSBleHBlY3RlIGFuZCBhY3R1YWwgb3V0cHV0CisJIyByZXBsYWNlIFNQIHdpdGggYSBkb3QgYm90aCBpbiB0aGUgZXhwZWN0ZWQgYW5kIGFjdHVhbCBvdXRwdXQKIAkjIHNvIHRoYXQgdGVzdF9jbXAgd291bGQgc2hvdyB0aGUgZGlmZmVyZW5jZSB0b2dldGhlciB3aXRoIHRoZQogCSMgYnJlYWthZ2UgaW4gYSB3YXkgZWFzaWVyIHRvIGNvbnN1bWUgYnkgdGhlIGRlYnVnZ2luZyB1c2VyLgogCXsKZGlmZiAtLWdpdCBhL3QvdDQyMTQtbG9nLWdyYXBoLW9jdG9wdXMuc2ggYi90L3Q0MjE0LWxvZy1ncmFwaC1vY3RvcHVzLnNoCmluZGV4IGRhYjk2YzguLmEwODAzMjUgMTAwNzU1Ci0tLSBhL3QvdDQyMTQtbG9nLWdyYXBoLW9jdG9wdXMuc2gKKysrIGIvdC90NDIxNC1sb2ctZ3JhcGgtb2N0b3B1cy5zaApAQCAtMywzNiArMywxOCBAQAogdGVzdF9kZXNjcmlwdGlvbj0nZ2l0IGxvZyAtLWdyYXBoIG9mIHNrZXdlZCBsZWZ0IG9jdG9wdXMgbWVyZ2UuJwogCiAuIC4vdGVzdC1saWIuc2gKKy4gIiRURVNUX0RJUkVDVE9SWSIvbGliLWxvZy1ncmFwaC5zaAorCit0ZXN0X2NtcF9ncmFwaCAoKSB7CisJY2F0ID5leHBlY3QgJiYKKwlsaWJfdGVzdF9jbXBfZ3JhcGggLS1jb2xvcj1uZXZlciAtLWRhdGUtb3JkZXIgLS1mb3JtYXQ9JXMgIiRAIgorfQorCit0ZXN0X2NtcF9jb2xvcmVkX2dyYXBoICgpIHsKKwlsaWJfdGVzdF9jbXBfY29sb3JlZF9ncmFwaCAtLWRhdGUtb3JkZXIgLS1mb3JtYXQ9JXMgIiRAIgorfQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXQgdXAgbWVyZ2UgaGlzdG9yeScgJwotCWNhdCA+ZXhwZWN0LnVuY29sb3JlZCA8PC1cRU9GICYmCi0JKiBsZWZ0Ci0JfCAqLS0tLiAgIG9jdG9wdXMtbWVyZ2UKLQl8IHxcIFwgXAotCXwvIC8gLyAvCi0JfCB8IHwgKiA0Ci0JfCB8ICogfCAzCi0JfCB8IHwvCi0JfCAqIHwgMgotCXwgfC8KLQkqIHwgMQotCXwvCi0JKiBpbml0aWFsCi0JRU9GCi0JY2F0ID5leHBlY3QuY29sb3JzIDw8LVxFT0YgJiYKLQkqIGxlZnQKLQk8UkVEPnw8UkVTRVQ+ICo8QkxVRT4tPFJFU0VUPjxCTFVFPi08UkVTRVQ+PE1BR0VOVEE+LTxSRVNFVD48TUFHRU5UQT4uPFJFU0VUPiAgIG9jdG9wdXMtbWVyZ2UKLQk8UkVEPnw8UkVTRVQ+IDxSRUQ+fDxSRVNFVD48WUVMTE9XPlw8UkVTRVQ+IDxCTFVFPlw8UkVTRVQ+IDxNQUdFTlRBPlw8UkVTRVQ+Ci0JPFJFRD58PFJFU0VUPjxSRUQ+LzxSRVNFVD4gPFlFTExPVz4vPFJFU0VUPiA8QkxVRT4vPFJFU0VUPiA8TUFHRU5UQT4vPFJFU0VUPgotCTxSRUQ+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPiA8QkxVRT58PFJFU0VUPiAqIDQKLQk8UkVEPnw8UkVTRVQ+IDxZRUxMT1c+fDxSRVNFVD4gKiA8TUFHRU5UQT58PFJFU0VUPiAzCi0JPFJFRD58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+IDxNQUdFTlRBPnw8UkVTRVQ+PE1BR0VOVEE+LzxSRVNFVD4KLQk8UkVEPnw8UkVTRVQ+ICogPE1BR0VOVEE+fDxSRVNFVD4gMgotCTxSRUQ+fDxSRVNFVD4gPE1BR0VOVEE+fDxSRVNFVD48TUFHRU5UQT4vPFJFU0VUPgotCSogPE1BR0VOVEE+fDxSRVNFVD4gMQotCTxNQUdFTlRBPnw8UkVTRVQ+PE1BR0VOVEE+LzxSRVNFVD4KLQkqIGluaXRpYWwKLQlFT0YKIAl0ZXN0X2NvbW1pdCBpbml0aWFsICYmCiAJZm9yIGkgaW4gMSAyIDMgNCA7IGRvCiAJCWdpdCBjaGVja291dCBtYXN0ZXIgLWIgJGkgfHwgcmV0dXJuICQ/CkBAIC00MSw0NCArMjMsNjYgQEAKIAkJdGVzdF9jb21taXQgJGkgJGkgJGkgdGFnJGkgfHwgcmV0dXJuICQ/CiAJZG9uZSAmJgogCWdpdCBjaGVja291dCAxIC1iIG1lcmdlICYmCi0JdGVzdF90aWNrICYmCi0JZ2l0IG1lcmdlIC1tIG9jdG9wdXMtbWVyZ2UgMSAyIDMgNCAmJgorCXRlc3RfbWVyZ2Ugb2N0b3B1cy1tZXJnZSAxIDIgMyA0ICYmCisJdGVzdF9jb21taXQgYWZ0ZXItbWVyZ2UgJiYKIAlnaXQgY2hlY2tvdXQgMSAtYiBMICYmCi0JdGVzdF9jb21taXQgbGVmdAorCXRlc3RfY29tbWl0IGxlZnQgJiYKKwlnaXQgY2hlY2tvdXQgNCAtYiBjcm9zc292ZXIgJiYKKwl0ZXN0X2NvbW1pdCBhZnRlci00ICYmCisJZ2l0IGNoZWNrb3V0IGluaXRpYWwgLWIgbW9yZS1MICYmCisJdGVzdF9jb21taXQgYWZ0ZXItaW5pdGlhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1ncmFwaCB3aXRoIHRyaWNreSBvY3RvcHVzIG1lcmdlLCBubyBjb2xvcicgJworCXRlc3RfY21wX2dyYXBoIGxlZnQgb2N0b3B1cy1tZXJnZSA8PC1cRU9GCisJKiBsZWZ0CisJfCAqLS4gICBvY3RvcHVzLW1lcmdlCisJfC98XCBcCisJfCB8IHwgKiA0CisJfCB8ICogfCAzCisJfCB8IHwvCisJfCAqIC8gMgorCXwgfC8KKwkqIC8gMQorCXwvCisJKiBpbml0aWFsCisJRU9GCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggdHJpY2t5IG9jdG9wdXMgbWVyZ2Ugd2l0aCBjb2xvcnMnICcKIAl0ZXN0X2NvbmZpZyBsb2cuZ3JhcGhDb2xvcnMgcmVkLGdyZWVuLHllbGxvdyxibHVlLG1hZ2VudGEsY3lhbiAmJgotCWdpdCBsb2cgLS1jb2xvcj1hbHdheXMgLS1ncmFwaCAtLWRhdGUtb3JkZXIgLS1wcmV0dHk9dGZvcm1hdDolcyAtLWFsbCA+YWN0dWFsLmNvbG9ycy5yYXcgJiYKLQl0ZXN0X2RlY29kZV9jb2xvciA8YWN0dWFsLmNvbG9ycy5yYXcgfCBzZWQgInMvICpcJC8vIiA+YWN0dWFsLmNvbG9ycyAmJgotCXRlc3RfY21wIGV4cGVjdC5jb2xvcnMgYWN0dWFsLmNvbG9ycwotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1ncmFwaCB3aXRoIHRyaWNreSBvY3RvcHVzIG1lcmdlLCBubyBjb2xvcicgJwotCWdpdCBsb2cgLS1jb2xvcj1uZXZlciAtLWdyYXBoIC0tZGF0ZS1vcmRlciAtLXByZXR0eT10Zm9ybWF0OiVzIC0tYWxsID5hY3R1YWwucmF3ICYmCi0Jc2VkICJzLyAqXCQvLyIgYWN0dWFsLnJhdyA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0LnVuY29sb3JlZCBhY3R1YWwKKwljYXQgPmV4cGVjdC5jb2xvcnMgPDwtXEVPRiAmJgorCSogbGVmdAorCTxSRUQ+fDxSRVNFVD4gKjxNQUdFTlRBPi08UkVTRVQ+PE1BR0VOVEE+LjxSRVNFVD4gICBvY3RvcHVzLW1lcmdlCisJPFJFRD58PFJFU0VUPjxSRUQ+LzxSRVNFVD48WUVMTE9XPnw8UkVTRVQ+PEJMVUU+XDxSRVNFVD4gPE1BR0VOVEE+XDxSRVNFVD4KKwk8UkVEPnw8UkVTRVQ+IDxZRUxMT1c+fDxSRVNFVD4gPEJMVUU+fDxSRVNFVD4gKiA0CisJPFJFRD58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+ICogPE1BR0VOVEE+fDxSRVNFVD4gMworCTxSRUQ+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPiA8TUFHRU5UQT58PFJFU0VUPjxNQUdFTlRBPi88UkVTRVQ+CisJPFJFRD58PFJFU0VUPiAqIDxNQUdFTlRBPi88UkVTRVQ+IDIKKwk8UkVEPnw8UkVTRVQ+IDxNQUdFTlRBPnw8UkVTRVQ+PE1BR0VOVEE+LzxSRVNFVD4KKwkqIDxNQUdFTlRBPi88UkVTRVQ+IDEKKwk8TUFHRU5UQT58PFJFU0VUPjxNQUdFTlRBPi88UkVTRVQ+CisJKiBpbml0aWFsCisJRU9GCisJdGVzdF9jbXBfY29sb3JlZF9ncmFwaCBsZWZ0IG9jdG9wdXMtbWVyZ2UKICcKIAogIyBSZXBlYXQgdGhlIHByZXZpb3VzIHR3byB0ZXN0cyB3aXRoICJub3JtYWwiIG9jdG9wdXMgbWVyZ2UgKGkuZS4sCiAjIHdpdGhvdXQgdGhlIGZpcnN0IHBhcmVudCBza2V3aW5nIHRvIHRoZSAibGVmdCIgYnJhbmNoIGNvbHVtbikuCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggbm9ybWFsIG9jdG9wdXMgbWVyZ2UsIG5vIGNvbG9yJyAnCi0JY2F0ID5leHBlY3QudW5jb2xvcmVkIDw8LVxFT0YgJiYKKwl0ZXN0X2NtcF9ncmFwaCBvY3RvcHVzLW1lcmdlIDw8LVxFT0YKIAkqLS0tLiAgIG9jdG9wdXMtbWVyZ2UKIAl8XCBcIFwKIAl8IHwgfCAqIDQKIAl8IHwgKiB8IDMKIAl8IHwgfC8KLQl8ICogfCAyCisJfCAqIC8gMgogCXwgfC8KLQkqIHwgMQorCSogLyAxCiAJfC8KIAkqIGluaXRpYWwKIAlFT0YKLQlnaXQgbG9nIC0tY29sb3I9bmV2ZXIgLS1ncmFwaCAtLWRhdGUtb3JkZXIgLS1wcmV0dHk9dGZvcm1hdDolcyBtZXJnZSA+YWN0dWFsLnJhdyAmJgotCXNlZCAicy8gKlwkLy8iIGFjdHVhbC5yYXcgPmFjdHVhbCAmJgotCXRlc3RfY21wIGV4cGVjdC51bmNvbG9yZWQgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggbm9ybWFsIG9jdG9wdXMgbWVyZ2Ugd2l0aCBjb2xvcnMnICcKQEAgLTg4LDE1ICs5MiwyNTYgQEAKIAk8UkVEPnw8UkVTRVQ+IDxHUkVFTj58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+ICogNAogCTxSRUQ+fDxSRVNFVD4gPEdSRUVOPnw8UkVTRVQ+ICogPEJMVUU+fDxSRVNFVD4gMwogCTxSRUQ+fDxSRVNFVD4gPEdSRUVOPnw8UkVTRVQ+IDxCTFVFPnw8UkVTRVQ+PEJMVUU+LzxSRVNFVD4KLQk8UkVEPnw8UkVTRVQ+ICogPEJMVUU+fDxSRVNFVD4gMgorCTxSRUQ+fDxSRVNFVD4gKiA8QkxVRT4vPFJFU0VUPiAyCiAJPFJFRD58PFJFU0VUPiA8QkxVRT58PFJFU0VUPjxCTFVFPi88UkVTRVQ+Ci0JKiA8QkxVRT58PFJFU0VUPiAxCisJKiA8QkxVRT4vPFJFU0VUPiAxCiAJPEJMVUU+fDxSRVNFVD48QkxVRT4vPFJFU0VUPgogCSogaW5pdGlhbAogCUVPRgogCXRlc3RfY29uZmlnIGxvZy5ncmFwaENvbG9ycyByZWQsZ3JlZW4seWVsbG93LGJsdWUsbWFnZW50YSxjeWFuICYmCi0JZ2l0IGxvZyAtLWNvbG9yPWFsd2F5cyAtLWdyYXBoIC0tZGF0ZS1vcmRlciAtLXByZXR0eT10Zm9ybWF0OiVzIG1lcmdlID5hY3R1YWwuY29sb3JzLnJhdyAmJgotCXRlc3RfZGVjb2RlX2NvbG9yIDxhY3R1YWwuY29sb3JzLnJhdyB8IHNlZCAicy8gKlwkLy8iID5hY3R1YWwuY29sb3JzICYmCi0JdGVzdF9jbXAgZXhwZWN0LmNvbG9ycyBhY3R1YWwuY29sb3JzCisJdGVzdF9jbXBfY29sb3JlZF9ncmFwaCBvY3RvcHVzLW1lcmdlCiAnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggbm9ybWFsIG9jdG9wdXMgbWVyZ2UgYW5kIGNoaWxkLCBubyBjb2xvcicgJworCXRlc3RfY21wX2dyYXBoIGFmdGVyLW1lcmdlIDw8LVxFT0YKKwkqIGFmdGVyLW1lcmdlCisJKi0tLS4gICBvY3RvcHVzLW1lcmdlCisJfFwgXCBcCisJfCB8IHwgKiA0CisJfCB8ICogfCAzCisJfCB8IHwvCisJfCAqIC8gMgorCXwgfC8KKwkqIC8gMQorCXwvCisJKiBpbml0aWFsCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggbm9ybWFsIG9jdG9wdXMgYW5kIGNoaWxkIG1lcmdlIHdpdGggY29sb3JzJyAnCisJY2F0ID5leHBlY3QuY29sb3JzIDw8LVxFT0YgJiYKKwkqIGFmdGVyLW1lcmdlCisJKjxCTFVFPi08UkVTRVQ+PEJMVUU+LTxSRVNFVD48TUFHRU5UQT4tPFJFU0VUPjxNQUdFTlRBPi48UkVTRVQ+ICAgb2N0b3B1cy1tZXJnZQorCTxHUkVFTj58PFJFU0VUPjxZRUxMT1c+XDxSRVNFVD4gPEJMVUU+XDxSRVNFVD4gPE1BR0VOVEE+XDxSRVNFVD4KKwk8R1JFRU4+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPiA8QkxVRT58PFJFU0VUPiAqIDQKKwk8R1JFRU4+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPiAqIDxNQUdFTlRBPnw8UkVTRVQ+IDMKKwk8R1JFRU4+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPiA8TUFHRU5UQT58PFJFU0VUPjxNQUdFTlRBPi88UkVTRVQ+CisJPEdSRUVOPnw8UkVTRVQ+ICogPE1BR0VOVEE+LzxSRVNFVD4gMgorCTxHUkVFTj58PFJFU0VUPiA8TUFHRU5UQT58PFJFU0VUPjxNQUdFTlRBPi88UkVTRVQ+CisJKiA8TUFHRU5UQT4vPFJFU0VUPiAxCisJPE1BR0VOVEE+fDxSRVNFVD48TUFHRU5UQT4vPFJFU0VUPgorCSogaW5pdGlhbAorCUVPRgorCXRlc3RfY29uZmlnIGxvZy5ncmFwaENvbG9ycyByZWQsZ3JlZW4seWVsbG93LGJsdWUsbWFnZW50YSxjeWFuICYmCisJdGVzdF9jbXBfY29sb3JlZF9ncmFwaCBhZnRlci1tZXJnZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1ncmFwaCB3aXRoIHRyaWNreSBvY3RvcHVzIG1lcmdlIGFuZCBpdHMgY2hpbGQsIG5vIGNvbG9yJyAnCisJdGVzdF9jbXBfZ3JhcGggbGVmdCBhZnRlci1tZXJnZSA8PC1cRU9GCisJKiBsZWZ0CisJfCAqIGFmdGVyLW1lcmdlCisJfCAqLS4gICBvY3RvcHVzLW1lcmdlCisJfC98XCBcCisJfCB8IHwgKiA0CisJfCB8ICogfCAzCisJfCB8IHwvCisJfCAqIC8gMgorCXwgfC8KKwkqIC8gMQorCXwvCisJKiBpbml0aWFsCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggdHJpY2t5IG9jdG9wdXMgbWVyZ2UgYW5kIGl0cyBjaGlsZCB3aXRoIGNvbG9ycycgJworCXRlc3RfY29uZmlnIGxvZy5ncmFwaENvbG9ycyByZWQsZ3JlZW4seWVsbG93LGJsdWUsbWFnZW50YSxjeWFuICYmCisJY2F0ID5leHBlY3QuY29sb3JzIDw8LVxFT0YgJiYKKwkqIGxlZnQKKwk8UkVEPnw8UkVTRVQ+ICogYWZ0ZXItbWVyZ2UKKwk8UkVEPnw8UkVTRVQ+ICo8Q1lBTj4tPFJFU0VUPjxDWUFOPi48UkVTRVQ+ICAgb2N0b3B1cy1tZXJnZQorCTxSRUQ+fDxSRVNFVD48UkVEPi88UkVTRVQ+PEJMVUU+fDxSRVNFVD48TUFHRU5UQT5cPFJFU0VUPiA8Q1lBTj5cPFJFU0VUPgorCTxSRUQ+fDxSRVNFVD4gPEJMVUU+fDxSRVNFVD4gPE1BR0VOVEE+fDxSRVNFVD4gKiA0CisJPFJFRD58PFJFU0VUPiA8QkxVRT58PFJFU0VUPiAqIDxDWUFOPnw8UkVTRVQ+IDMKKwk8UkVEPnw8UkVTRVQ+IDxCTFVFPnw8UkVTRVQ+IDxDWUFOPnw8UkVTRVQ+PENZQU4+LzxSRVNFVD4KKwk8UkVEPnw8UkVTRVQ+ICogPENZQU4+LzxSRVNFVD4gMgorCTxSRUQ+fDxSRVNFVD4gPENZQU4+fDxSRVNFVD48Q1lBTj4vPFJFU0VUPgorCSogPENZQU4+LzxSRVNFVD4gMQorCTxDWUFOPnw8UkVTRVQ+PENZQU4+LzxSRVNFVD4KKwkqIGluaXRpYWwKKwlFT0YKKwl0ZXN0X2NtcF9jb2xvcmVkX2dyYXBoIGxlZnQgYWZ0ZXItbWVyZ2UKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tZ3JhcGggd2l0aCBjcm9zc292ZXIgaW4gb2N0b3B1cyBtZXJnZSwgbm8gY29sb3InICcKKwl0ZXN0X2NtcF9ncmFwaCBhZnRlci00IG9jdG9wdXMtbWVyZ2UgPDwtXEVPRgorCSogYWZ0ZXItNAorCXwgKi0tLS4gICBvY3RvcHVzLW1lcmdlCisJfCB8XCBcIFwKKwl8IHxffF98LworCXwvfCB8IHwKKwkqIHwgfCB8IDQKKwl8IHwgfCAqIDMKKwl8IHxffC8KKwl8L3wgfAorCXwgfCAqIDIKKwl8IHwvCisJfC98CisJfCAqIDEKKwl8LworCSogaW5pdGlhbAorCUVPRgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1ncmFwaCB3aXRoIGNyb3Nzb3ZlciBpbiBvY3RvcHVzIG1lcmdlIHdpdGggY29sb3JzJyAnCisJdGVzdF9jb25maWcgbG9nLmdyYXBoQ29sb3JzIHJlZCxncmVlbix5ZWxsb3csYmx1ZSxtYWdlbnRhLGN5YW4gJiYKKwljYXQgPmV4cGVjdC5jb2xvcnMgPDwtXEVPRiAmJgorCSogYWZ0ZXItNAorCTxSRUQ+fDxSRVNFVD4gKjxCTFVFPi08UkVTRVQ+PEJMVUU+LTxSRVNFVD48UkVEPi08UkVTRVQ+PFJFRD4uPFJFU0VUPiAgIG9jdG9wdXMtbWVyZ2UKKwk8UkVEPnw8UkVTRVQ+IDxHUkVFTj58PFJFU0VUPjxZRUxMT1c+XDxSRVNFVD4gPEJMVUU+XDxSRVNFVD4gPFJFRD5cPFJFU0VUPgorCTxSRUQ+fDxSRVNFVD4gPEdSRUVOPnw8UkVTRVQ+PFJFRD5fPFJFU0VUPjxZRUxMT1c+fDxSRVNFVD48UkVEPl88UkVTRVQ+PEJMVUU+fDxSRVNFVD48UkVEPi88UkVTRVQ+CisJPFJFRD58PFJFU0VUPjxSRUQ+LzxSRVNFVD48R1JFRU4+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPiA8QkxVRT58PFJFU0VUPgorCSogPEdSRUVOPnw8UkVTRVQ+IDxZRUxMT1c+fDxSRVNFVD4gPEJMVUU+fDxSRVNFVD4gNAorCTxNQUdFTlRBPnw8UkVTRVQ+IDxHUkVFTj58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+ICogMworCTxNQUdFTlRBPnw8UkVTRVQ+IDxHUkVFTj58PFJFU0VUPjxNQUdFTlRBPl88UkVTRVQ+PFlFTExPVz58PFJFU0VUPjxNQUdFTlRBPi88UkVTRVQ+CisJPE1BR0VOVEE+fDxSRVNFVD48TUFHRU5UQT4vPFJFU0VUPjxHUkVFTj58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+CisJPE1BR0VOVEE+fDxSRVNFVD4gPEdSRUVOPnw8UkVTRVQ+ICogMgorCTxNQUdFTlRBPnw8UkVTRVQ+IDxHUkVFTj58PFJFU0VUPjxNQUdFTlRBPi88UkVTRVQ+CisJPE1BR0VOVEE+fDxSRVNFVD48TUFHRU5UQT4vPFJFU0VUPjxHUkVFTj58PFJFU0VUPgorCTxNQUdFTlRBPnw8UkVTRVQ+ICogMQorCTxNQUdFTlRBPnw8UkVTRVQ+PE1BR0VOVEE+LzxSRVNFVD4KKwkqIGluaXRpYWwKKwlFT0YKKwl0ZXN0X2NtcF9jb2xvcmVkX2dyYXBoIGFmdGVyLTQgb2N0b3B1cy1tZXJnZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1ncmFwaCB3aXRoIGNyb3Nzb3ZlciBpbiBvY3RvcHVzIG1lcmdlIGFuZCBpdHMgY2hpbGQsIG5vIGNvbG9yJyAnCisJdGVzdF9jbXBfZ3JhcGggYWZ0ZXItNCBhZnRlci1tZXJnZSA8PC1cRU9GCisJKiBhZnRlci00CisJfCAqIGFmdGVyLW1lcmdlCisJfCAqLS0tLiAgIG9jdG9wdXMtbWVyZ2UKKwl8IHxcIFwgXAorCXwgfF98X3wvCisJfC98IHwgfAorCSogfCB8IHwgNAorCXwgfCB8ICogMworCXwgfF98LworCXwvfCB8CisJfCB8ICogMgorCXwgfC8KKwl8L3wKKwl8ICogMQorCXwvCisJKiBpbml0aWFsCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggY3Jvc3NvdmVyIGluIG9jdG9wdXMgbWVyZ2UgYW5kIGl0cyBjaGlsZCB3aXRoIGNvbG9ycycgJworCXRlc3RfY29uZmlnIGxvZy5ncmFwaENvbG9ycyByZWQsZ3JlZW4seWVsbG93LGJsdWUsbWFnZW50YSxjeWFuICYmCisJY2F0ID5leHBlY3QuY29sb3JzIDw8LVxFT0YgJiYKKwkqIGFmdGVyLTQKKwk8UkVEPnw8UkVTRVQ+ICogYWZ0ZXItbWVyZ2UKKwk8UkVEPnw8UkVTRVQ+ICo8TUFHRU5UQT4tPFJFU0VUPjxNQUdFTlRBPi08UkVTRVQ+PFJFRD4tPFJFU0VUPjxSRUQ+LjxSRVNFVD4gICBvY3RvcHVzLW1lcmdlCisJPFJFRD58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+PEJMVUU+XDxSRVNFVD4gPE1BR0VOVEE+XDxSRVNFVD4gPFJFRD5cPFJFU0VUPgorCTxSRUQ+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPjxSRUQ+XzxSRVNFVD48QkxVRT58PFJFU0VUPjxSRUQ+XzxSRVNFVD48TUFHRU5UQT58PFJFU0VUPjxSRUQ+LzxSRVNFVD4KKwk8UkVEPnw8UkVTRVQ+PFJFRD4vPFJFU0VUPjxZRUxMT1c+fDxSRVNFVD4gPEJMVUU+fDxSRVNFVD4gPE1BR0VOVEE+fDxSRVNFVD4KKwkqIDxZRUxMT1c+fDxSRVNFVD4gPEJMVUU+fDxSRVNFVD4gPE1BR0VOVEE+fDxSRVNFVD4gNAorCTxDWUFOPnw8UkVTRVQ+IDxZRUxMT1c+fDxSRVNFVD4gPEJMVUU+fDxSRVNFVD4gKiAzCisJPENZQU4+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPjxDWUFOPl88UkVTRVQ+PEJMVUU+fDxSRVNFVD48Q1lBTj4vPFJFU0VUPgorCTxDWUFOPnw8UkVTRVQ+PENZQU4+LzxSRVNFVD48WUVMTE9XPnw8UkVTRVQ+IDxCTFVFPnw8UkVTRVQ+CisJPENZQU4+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPiAqIDIKKwk8Q1lBTj58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+PENZQU4+LzxSRVNFVD4KKwk8Q1lBTj58PFJFU0VUPjxDWUFOPi88UkVTRVQ+PFlFTExPVz58PFJFU0VUPgorCTxDWUFOPnw8UkVTRVQ+ICogMQorCTxDWUFOPnw8UkVTRVQ+PENZQU4+LzxSRVNFVD4KKwkqIGluaXRpYWwKKwlFT0YKKwl0ZXN0X2NtcF9jb2xvcmVkX2dyYXBoIGFmdGVyLTQgYWZ0ZXItbWVyZ2UKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tZ3JhcGggd2l0aCB1bnJlbGF0ZWQgY29tbWl0IGFuZCBvY3RvcHVzIHRpcCwgbm8gY29sb3InICcKKwl0ZXN0X2NtcF9ncmFwaCBhZnRlci1pbml0aWFsIG9jdG9wdXMtbWVyZ2UgPDwtXEVPRgorCSogYWZ0ZXItaW5pdGlhbAorCXwgKi0tLS4gICBvY3RvcHVzLW1lcmdlCisJfCB8XCBcIFwKKwl8IHwgfCB8ICogNAorCXwgfF98X3wvCisJfC98IHwgfAorCXwgfCB8ICogMworCXwgfF98LworCXwvfCB8CisJfCB8ICogMgorCXwgfC8KKwl8L3wKKwl8ICogMQorCXwvCisJKiBpbml0aWFsCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggdW5yZWxhdGVkIGNvbW1pdCBhbmQgb2N0b3B1cyB0aXAgd2l0aCBjb2xvcnMnICcKKwl0ZXN0X2NvbmZpZyBsb2cuZ3JhcGhDb2xvcnMgcmVkLGdyZWVuLHllbGxvdyxibHVlLG1hZ2VudGEsY3lhbiAmJgorCWNhdCA+ZXhwZWN0LmNvbG9ycyA8PC1cRU9GICYmCisJKiBhZnRlci1pbml0aWFsCisJPFJFRD58PFJFU0VUPiAqPEJMVUU+LTxSRVNFVD48QkxVRT4tPFJFU0VUPjxNQUdFTlRBPi08UkVTRVQ+PE1BR0VOVEE+LjxSRVNFVD4gICBvY3RvcHVzLW1lcmdlCisJPFJFRD58PFJFU0VUPiA8R1JFRU4+fDxSRVNFVD48WUVMTE9XPlw8UkVTRVQ+IDxCTFVFPlw8UkVTRVQ+IDxNQUdFTlRBPlw8UkVTRVQ+CisJPFJFRD58PFJFU0VUPiA8R1JFRU4+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPiA8QkxVRT58PFJFU0VUPiAqIDQKKwk8UkVEPnw8UkVTRVQ+IDxHUkVFTj58PFJFU0VUPjxSRUQ+XzxSRVNFVD48WUVMTE9XPnw8UkVTRVQ+PFJFRD5fPFJFU0VUPjxCTFVFPnw8UkVTRVQ+PFJFRD4vPFJFU0VUPgorCTxSRUQ+fDxSRVNFVD48UkVEPi88UkVTRVQ+PEdSRUVOPnw8UkVTRVQ+IDxZRUxMT1c+fDxSRVNFVD4gPEJMVUU+fDxSRVNFVD4KKwk8UkVEPnw8UkVTRVQ+IDxHUkVFTj58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+ICogMworCTxSRUQ+fDxSRVNFVD4gPEdSRUVOPnw8UkVTRVQ+PFJFRD5fPFJFU0VUPjxZRUxMT1c+fDxSRVNFVD48UkVEPi88UkVTRVQ+CisJPFJFRD58PFJFU0VUPjxSRUQ+LzxSRVNFVD48R1JFRU4+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPgorCTxSRUQ+fDxSRVNFVD4gPEdSRUVOPnw8UkVTRVQ+ICogMgorCTxSRUQ+fDxSRVNFVD4gPEdSRUVOPnw8UkVTRVQ+PFJFRD4vPFJFU0VUPgorCTxSRUQ+fDxSRVNFVD48UkVEPi88UkVTRVQ+PEdSRUVOPnw8UkVTRVQ+CisJPFJFRD58PFJFU0VUPiAqIDEKKwk8UkVEPnw8UkVTRVQ+PFJFRD4vPFJFU0VUPgorCSogaW5pdGlhbAorCUVPRgorCXRlc3RfY21wX2NvbG9yZWRfZ3JhcGggYWZ0ZXItaW5pdGlhbCBvY3RvcHVzLW1lcmdlCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggdW5yZWxhdGVkIGNvbW1pdCBhbmQgb2N0b3B1cyBjaGlsZCwgbm8gY29sb3InICcKKwl0ZXN0X2NtcF9ncmFwaCBhZnRlci1pbml0aWFsIGFmdGVyLW1lcmdlIDw8LVxFT0YKKwkqIGFmdGVyLWluaXRpYWwKKwl8ICogYWZ0ZXItbWVyZ2UKKwl8ICotLS0uICAgb2N0b3B1cy1tZXJnZQorCXwgfFwgXCBcCisJfCB8IHwgfCAqIDQKKwl8IHxffF98LworCXwvfCB8IHwKKwl8IHwgfCAqIDMKKwl8IHxffC8KKwl8L3wgfAorCXwgfCAqIDIKKwl8IHwvCisJfC98CisJfCAqIDEKKwl8LworCSogaW5pdGlhbAorCUVPRgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1ncmFwaCB3aXRoIHVucmVsYXRlZCBjb21taXQgYW5kIG9jdG9wdXMgY2hpbGQgd2l0aCBjb2xvcnMnICcKKwl0ZXN0X2NvbmZpZyBsb2cuZ3JhcGhDb2xvcnMgcmVkLGdyZWVuLHllbGxvdyxibHVlLG1hZ2VudGEsY3lhbiAmJgorCWNhdCA+ZXhwZWN0LmNvbG9ycyA8PC1cRU9GICYmCisJKiBhZnRlci1pbml0aWFsCisJPFJFRD58PFJFU0VUPiAqIGFmdGVyLW1lcmdlCisJPFJFRD58PFJFU0VUPiAqPE1BR0VOVEE+LTxSRVNFVD48TUFHRU5UQT4tPFJFU0VUPjxDWUFOPi08UkVTRVQ+PENZQU4+LjxSRVNFVD4gICBvY3RvcHVzLW1lcmdlCisJPFJFRD58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+PEJMVUU+XDxSRVNFVD4gPE1BR0VOVEE+XDxSRVNFVD4gPENZQU4+XDxSRVNFVD4KKwk8UkVEPnw8UkVTRVQ+IDxZRUxMT1c+fDxSRVNFVD4gPEJMVUU+fDxSRVNFVD4gPE1BR0VOVEE+fDxSRVNFVD4gKiA0CisJPFJFRD58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+PFJFRD5fPFJFU0VUPjxCTFVFPnw8UkVTRVQ+PFJFRD5fPFJFU0VUPjxNQUdFTlRBPnw8UkVTRVQ+PFJFRD4vPFJFU0VUPgorCTxSRUQ+fDxSRVNFVD48UkVEPi88UkVTRVQ+PFlFTExPVz58PFJFU0VUPiA8QkxVRT58PFJFU0VUPiA8TUFHRU5UQT58PFJFU0VUPgorCTxSRUQ+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPiA8QkxVRT58PFJFU0VUPiAqIDMKKwk8UkVEPnw8UkVTRVQ+IDxZRUxMT1c+fDxSRVNFVD48UkVEPl88UkVTRVQ+PEJMVUU+fDxSRVNFVD48UkVEPi88UkVTRVQ+CisJPFJFRD58PFJFU0VUPjxSRUQ+LzxSRVNFVD48WUVMTE9XPnw8UkVTRVQ+IDxCTFVFPnw8UkVTRVQ+CisJPFJFRD58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+ICogMgorCTxSRUQ+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPjxSRUQ+LzxSRVNFVD4KKwk8UkVEPnw8UkVTRVQ+PFJFRD4vPFJFU0VUPjxZRUxMT1c+fDxSRVNFVD4KKwk8UkVEPnw8UkVTRVQ+ICogMQorCTxSRUQ+fDxSRVNFVD48UkVEPi88UkVTRVQ+CisJKiBpbml0aWFsCisJRU9GCisJdGVzdF9jbXBfY29sb3JlZF9ncmFwaCBhZnRlci1pbml0aWFsIGFmdGVyLW1lcmdlCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NDIxNS1sb2ctc2tld2VkLW1lcmdlcy5zaCBiL3QvdDQyMTUtbG9nLXNrZXdlZC1tZXJnZXMuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMjhkMDc3OQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDQyMTUtbG9nLXNrZXdlZC1tZXJnZXMuc2gKQEAgLTAsMCArMSwzNzMgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdnaXQgbG9nIC0tZ3JhcGggb2Ygc2tld2VkIG1lcmdlcycKKworLiAuL3Rlc3QtbGliLnNoCisuICIkVEVTVF9ESVJFQ1RPUlkiL2xpYi1sb2ctZ3JhcGguc2gKKworY2hlY2tfZ3JhcGggKCkgeworCWNhdCA+ZXhwZWN0ICYmCisJbGliX3Rlc3RfY21wX2dyYXBoIC0tZm9ybWF0PSVzICIkQCIKK30KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tZ3JhcGggd2l0aCBtZXJnZSBmdXNpbmcgd2l0aCBpdHMgbGVmdCBhbmQgcmlnaHQgbmVpZ2hib3JzJyAnCisJZ2l0IGNoZWNrb3V0IC0tb3JwaGFuIF9wICYmCisJdGVzdF9jb21taXQgQSAmJgorCXRlc3RfY29tbWl0IEIgJiYKKwlnaXQgY2hlY2tvdXQgLWIgX3EgQF4gJiYgdGVzdF9jb21taXQgQyAmJgorCWdpdCBjaGVja291dCAtYiBfciBAXiAmJiB0ZXN0X2NvbW1pdCBEICYmCisJZ2l0IGNoZWNrb3V0IF9wICYmIGdpdCBtZXJnZSAtLW5vLWZmIF9xIF9yIC1tIEUgJiYKKwlnaXQgY2hlY2tvdXQgX3IgJiYgdGVzdF9jb21taXQgRiAmJgorCWdpdCBjaGVja291dCBfcCAmJiBnaXQgbWVyZ2UgLS1uby1mZiBfciAtbSBHICYmCisJZ2l0IGNoZWNrb3V0IEBeXiAmJiBnaXQgbWVyZ2UgLS1uby1mZiBfcCAtbSBIICYmCisKKwljaGVja19ncmFwaCA8PC1cRU9GCisJKiAgIEgKKwl8XAorCXwgKiAgIEcKKwl8IHxcCisJfCB8ICogRgorCXwgKiB8IEUKKwl8L3xcfAorCXwgfCAqIEQKKwl8ICogfCBDCisJfCB8LworCSogLyBCCisJfC8KKwkqIEEKKwlFT0YKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tZ3JhcGggd2l0aCBsZWZ0LXNrZXdlZCBtZXJnZScgJworCWdpdCBjaGVja291dCAtLW9ycGhhbiAwX3AgJiYgdGVzdF9jb21taXQgMF9BICYmCisJZ2l0IGNoZWNrb3V0IC1iIDBfcSAwX3AgJiYgdGVzdF9jb21taXQgMF9CICYmCisJZ2l0IGNoZWNrb3V0IC1iIDBfciAwX3AgJiYKKwl0ZXN0X2NvbW1pdCAwX0MgJiYKKwl0ZXN0X2NvbW1pdCAwX0QgJiYKKwlnaXQgY2hlY2tvdXQgLWIgMF9zIDBfcCAmJiB0ZXN0X2NvbW1pdCAwX0UgJiYKKwlnaXQgY2hlY2tvdXQgLWIgMF90IDBfcCAmJiBnaXQgbWVyZ2UgLS1uby1mZiAwX3JeIDBfcyAtbSAwX0YgJiYKKwlnaXQgY2hlY2tvdXQgMF9wICYmIGdpdCBtZXJnZSAtLW5vLWZmIDBfcyAtbSAwX0cgJiYKKwlnaXQgY2hlY2tvdXQgQF4gJiYgZ2l0IG1lcmdlIC0tbm8tZmYgMF9xIDBfciAwX3QgMF9wIC1tIDBfSCAmJgorCisJY2hlY2tfZ3JhcGggPDwtXEVPRgorCSotLS0tLS4gICAwX0gKKwl8XCBcIFwgXAorCXwgfCB8IHwgKiAwX0cKKwl8IHxffF98L3wKKwl8L3wgfCB8IHwKKwl8IHwgfCAqIHwgMF9GCisJfCB8X3wvfFx8CisJfC98IHwgfCB8CisJfCB8IHwgfCAqIDBfRQorCXwgfF98X3wvCisJfC98IHwgfAorCXwgfCAqIHwgMF9ECisJfCB8IHwvCisJfCB8ICogMF9DCisJfCB8LworCXwvfAorCXwgKiAwX0IKKwl8LworCSogMF9BCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggbmVzdGVkIGxlZnQtc2tld2VkIG1lcmdlJyAnCisJZ2l0IGNoZWNrb3V0IC0tb3JwaGFuIDFfcCAmJgorCXRlc3RfY29tbWl0IDFfQSAmJgorCXRlc3RfY29tbWl0IDFfQiAmJgorCXRlc3RfY29tbWl0IDFfQyAmJgorCWdpdCBjaGVja291dCAtYiAxX3EgQF4gJiYgdGVzdF9jb21taXQgMV9EICYmCisJZ2l0IGNoZWNrb3V0IDFfcCAmJiBnaXQgbWVyZ2UgLS1uby1mZiAxX3EgLW0gMV9FICYmCisJZ2l0IGNoZWNrb3V0IC1iIDFfciBAfjMgJiYgdGVzdF9jb21taXQgMV9GICYmCisJZ2l0IGNoZWNrb3V0IDFfcCAmJiBnaXQgbWVyZ2UgLS1uby1mZiAxX3IgLW0gMV9HICYmCisJZ2l0IGNoZWNrb3V0IEBeXiAmJiBnaXQgbWVyZ2UgLS1uby1mZiAxX3AgLW0gMV9IICYmCisKKwljaGVja19ncmFwaCA8PC1cRU9GCisJKiAgIDFfSAorCXxcCisJfCAqICAgMV9HCisJfCB8XAorCXwgfCAqIDFfRgorCXwgKiB8IDFfRQorCXwvfCB8CisJfCAqIHwgMV9ECisJKiB8IHwgMV9DCisJfC8gLworCSogLyAxX0IKKwl8LworCSogMV9BCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggbmVzdGVkIGxlZnQtc2tld2VkIG1lcmdlIGZvbGxvd2luZyBub3JtYWwgbWVyZ2UnICcKKwlnaXQgY2hlY2tvdXQgLS1vcnBoYW4gMl9wICYmCisJdGVzdF9jb21taXQgMl9BICYmCisJdGVzdF9jb21taXQgMl9CICYmCisJdGVzdF9jb21taXQgMl9DICYmCisJZ2l0IGNoZWNrb3V0IC1iIDJfcSBAXl4gJiYKKwl0ZXN0X2NvbW1pdCAyX0QgJiYKKwl0ZXN0X2NvbW1pdCAyX0UgJiYKKwlnaXQgY2hlY2tvdXQgLWIgMl9yIEBeICYmIHRlc3RfY29tbWl0IDJfRiAmJgorCWdpdCBjaGVja291dCAyX3EgJiYKKwlnaXQgbWVyZ2UgLS1uby1mZiAyX3IgLW0gMl9HICYmCisJZ2l0IG1lcmdlIC0tbm8tZmYgMl9wXiAtbSAyX0ggJiYKKwlnaXQgY2hlY2tvdXQgLWIgMl9zIEBeXiAmJiBnaXQgbWVyZ2UgLS1uby1mZiAyX3EgLW0gMl9KICYmCisJZ2l0IGNoZWNrb3V0IDJfcCAmJiBnaXQgbWVyZ2UgLS1uby1mZiAyX3MgLW0gMl9LICYmCisKKwljaGVja19ncmFwaCA8PC1cRU9GCisJKiAgIDJfSworCXxcCisJfCAqICAgMl9KCisJfCB8XAorCXwgfCAqICAgMl9ICisJfCB8IHxcCisJfCB8ICogfCAyX0cKKwl8IHwvfCB8CisJfCB8ICogfCAyX0YKKwl8ICogfCB8IDJfRQorCXwgfC8gLworCXwgKiB8IDJfRAorCSogfCB8IDJfQworCXwgfC8KKwl8L3wKKwkqIHwgMl9CCisJfC8KKwkqIDJfQQorCUVPRgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1ncmFwaCB3aXRoIG5lc3RlZCByaWdodC1za2V3ZWQgbWVyZ2UgZm9sbG93aW5nIGxlZnQtc2tld2VkIG1lcmdlJyAnCisJZ2l0IGNoZWNrb3V0IC0tb3JwaGFuIDNfcCAmJgorCXRlc3RfY29tbWl0IDNfQSAmJgorCWdpdCBjaGVja291dCAtYiAzX3EgJiYKKwl0ZXN0X2NvbW1pdCAzX0IgJiYKKwl0ZXN0X2NvbW1pdCAzX0MgJiYKKwlnaXQgY2hlY2tvdXQgLWIgM19yIEBeICYmCisJdGVzdF9jb21taXQgM19EICYmCisJZ2l0IGNoZWNrb3V0IDNfcSAmJiBnaXQgbWVyZ2UgLS1uby1mZiAzX3IgLW0gM19FICYmCisJZ2l0IGNoZWNrb3V0IDNfcCAmJiBnaXQgbWVyZ2UgLS1uby1mZiAzX3EgLW0gM19GICYmCisJZ2l0IGNoZWNrb3V0IDNfciAmJiB0ZXN0X2NvbW1pdCAzX0cgJiYKKwlnaXQgY2hlY2tvdXQgM19wICYmIGdpdCBtZXJnZSAtLW5vLWZmIDNfciAtbSAzX0ggJiYKKwlnaXQgY2hlY2tvdXQgQF5eICYmIGdpdCBtZXJnZSAtLW5vLWZmIDNfcCAtbSAzX0ogJiYKKworCWNoZWNrX2dyYXBoIDw8LVxFT0YKKwkqICAgM19KCisJfFwKKwl8ICogICAzX0gKKwl8IHxcCisJfCB8ICogM19HCisJfCAqIHwgM19GCisJfC98IHwKKwl8ICogfCAzX0UKKwl8IHxcfAorCXwgfCAqIDNfRAorCXwgKiB8IDNfQworCXwgfC8KKwl8ICogM19CCisJfC8KKwkqIDNfQQorCUVPRgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdsb2cgLS1ncmFwaCB3aXRoIHJpZ2h0LXNrZXdlZCBtZXJnZSBmb2xsb3dpbmcgYSBsZWZ0LXNrZXdlZCBvbmUnICcKKwlnaXQgY2hlY2tvdXQgLS1vcnBoYW4gNF9wICYmCisJdGVzdF9jb21taXQgNF9BICYmCisJdGVzdF9jb21taXQgNF9CICYmCisJdGVzdF9jb21taXQgNF9DICYmCisJZ2l0IGNoZWNrb3V0IC1iIDRfcSBAXl4gJiYgdGVzdF9jb21taXQgNF9EICYmCisJZ2l0IGNoZWNrb3V0IC1iIDRfciA0X3BeICYmIGdpdCBtZXJnZSAtLW5vLWZmIDRfcSAtbSA0X0UgJiYKKwlnaXQgY2hlY2tvdXQgLWIgNF9zIDRfcF5eICYmCisJZ2l0IG1lcmdlIC0tbm8tZmYgNF9yIC1tIDRfRiAmJgorCWdpdCBtZXJnZSAtLW5vLWZmIDRfcCAtbSA0X0cgJiYKKwlnaXQgY2hlY2tvdXQgQF5eICYmIGdpdCBtZXJnZSAtLW5vLWZmIDRfcyAtbSA0X0ggJiYKKworCWNoZWNrX2dyYXBoIC0tZGF0ZS1vcmRlciA8PC1cRU9GCisJKiAgIDRfSAorCXxcCisJfCAqICAgNF9HCisJfCB8XAorCXwgKiB8IDRfRgorCXwvfCB8CisJfCAqIHwgICA0X0UKKwl8IHxcIFwKKwl8IHwgKiB8IDRfRAorCXwgfC8gLworCXwvfCB8CisJfCB8ICogNF9DCisJfCB8LworCXwgKiA0X0IKKwl8LworCSogNF9BCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggb2N0b3B1cyBtZXJnZSB3aXRoIGNvbHVtbiBqb2luaW5nIGl0cyBwZW51bHRpbWF0ZSBwYXJlbnQnICcKKwlnaXQgY2hlY2tvdXQgLS1vcnBoYW4gNV9wICYmCisJdGVzdF9jb21taXQgNV9BICYmCisJZ2l0IGJyYW5jaCA1X3EgJiYKKwlnaXQgYnJhbmNoIDVfciAmJgorCXRlc3RfY29tbWl0IDVfQiAmJgorCWdpdCBjaGVja291dCA1X3EgJiYgdGVzdF9jb21taXQgNV9DICYmCisJZ2l0IGNoZWNrb3V0IDVfciAmJiB0ZXN0X2NvbW1pdCA1X0QgJiYKKwlnaXQgY2hlY2tvdXQgNV9wICYmCisJZ2l0IG1lcmdlIC0tbm8tZmYgNV9xIDVfciAtbSA1X0UgJiYKKwlnaXQgY2hlY2tvdXQgNV9xICYmIHRlc3RfY29tbWl0IDVfRiAmJgorCWdpdCBjaGVja291dCAtYiA1X3MgNV9wXiAmJgorCWdpdCBtZXJnZSAtLW5vLWZmIDVfcCA1X3EgLW0gNV9HICYmCisJZ2l0IGNoZWNrb3V0IDVfciAmJgorCWdpdCBtZXJnZSAtLW5vLWZmIDVfcyAtbSA1X0ggJiYKKworCWNoZWNrX2dyYXBoIDw8LVxFT0YKKwkqICAgNV9ICisJfFwKKwl8ICotLiAgIDVfRworCXwgfFwgXAorCXwgfCB8ICogNV9GCisJfCB8ICogfCAgIDVfRQorCXwgfC98XCBcCisJfCB8X3wvIC8KKwl8L3wgfCAvCisJfCB8IHwvCisJKiB8IHwgNV9ECisJfCB8ICogNV9DCisJfCB8LworCXwvfAorCXwgKiA1X0IKKwl8LworCSogNV9BCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggbXVsdGlwbGUgdGlwcycgJworCWdpdCBjaGVja291dCAtLW9ycGhhbiA2XzEgJiYKKwl0ZXN0X2NvbW1pdCA2X0EgJiYKKwlnaXQgYnJhbmNoIDZfMiAmJgorCWdpdCBicmFuY2ggNl80ICYmCisJdGVzdF9jb21taXQgNl9CICYmCisJZ2l0IGJyYW5jaCA2XzMgJiYKKwl0ZXN0X2NvbW1pdCA2X0MgJiYKKwlnaXQgY2hlY2tvdXQgNl8yICYmIHRlc3RfY29tbWl0IDZfRCAmJgorCWdpdCBjaGVja291dCA2XzMgJiYgdGVzdF9jb21taXQgNl9FICYmCisJZ2l0IGNoZWNrb3V0IC1iIDZfNSA2XzEgJiYKKwlnaXQgbWVyZ2UgLS1uby1mZiA2XzIgLW0gNl9GICYmCisJZ2l0IGNoZWNrb3V0IDZfNCAmJiB0ZXN0X2NvbW1pdCA2X0cgJiYKKwlnaXQgY2hlY2tvdXQgNl8zICYmCisJZ2l0IG1lcmdlIC0tbm8tZmYgNl80IC1tIDZfSCAmJgorCWdpdCBjaGVja291dCA2XzEgJiYKKwlnaXQgbWVyZ2UgLS1uby1mZiA2XzIgLW0gNl9JICYmCisKKwljaGVja19ncmFwaCA2XzEgNl8zIDZfNSA8PC1cRU9GCisJKiAgIDZfSQorCXxcCisJfCB8ICogICA2X0gKKwl8IHwgfFwKKwl8IHwgfCAqIDZfRworCXwgfCAqIHwgNl9FCisJfCB8IHwgfCAqIDZfRgorCXwgfF98X3wvfAorCXwvfCB8IHwvCisJfCB8IHwvfAorCXwgfC98IHwKKwl8ICogfCB8IDZfRAorCXwgfCB8LworCXwgfC98CisJKiB8IHwgNl9DCisJfCB8LworCXwvfAorCSogfCA2X0IKKwl8LworCSogNl9BCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggbXVsdGlwbGUgdGlwcyBhbmQgY29sb3JzJyAnCisJdGVzdF9jb25maWcgbG9nLmdyYXBoQ29sb3JzIHJlZCxncmVlbix5ZWxsb3csYmx1ZSxtYWdlbnRhLGN5YW4gJiYKKwljYXQgPmV4cGVjdC5jb2xvcnMgPDwtXEVPRiAmJgorCSogICA2X0kKKwk8UkVEPnw8UkVTRVQ+PEdSRUVOPlw8UkVTRVQ+CisJPFJFRD58PFJFU0VUPiA8R1JFRU4+fDxSRVNFVD4gKiAgIDZfSAorCTxSRUQ+fDxSRVNFVD4gPEdSRUVOPnw8UkVTRVQ+IDxZRUxMT1c+fDxSRVNFVD48QkxVRT5cPFJFU0VUPgorCTxSRUQ+fDxSRVNFVD4gPEdSRUVOPnw8UkVTRVQ+IDxZRUxMT1c+fDxSRVNFVD4gKiA2X0cKKwk8UkVEPnw8UkVTRVQ+IDxHUkVFTj58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+IDxCTFVFPnw8UkVTRVQ+ICogNl9GCisJPFJFRD58PFJFU0VUPiA8R1JFRU4+fDxSRVNFVD48UkVEPl88UkVTRVQ+PFlFTExPVz58PFJFU0VUPjxSRUQ+XzxSRVNFVD48QkxVRT58PFJFU0VUPjxSRUQ+LzxSRVNFVD48R1JFRU4+fDxSRVNFVD4KKwk8UkVEPnw8UkVTRVQ+PFJFRD4vPFJFU0VUPjxHUkVFTj58PFJFU0VUPiA8WUVMTE9XPnw8UkVTRVQ+IDxCTFVFPnw8UkVTRVQ+PEdSRUVOPi88UkVTRVQ+CisJPFJFRD58PFJFU0VUPiA8R1JFRU4+fDxSRVNFVD4gPFlFTExPVz58PFJFU0VUPjxHUkVFTj4vPFJFU0VUPjxCTFVFPnw8UkVTRVQ+CisJPFJFRD58PFJFU0VUPiA8R1JFRU4+fDxSRVNFVD48R1JFRU4+LzxSRVNFVD48WUVMTE9XPnw8UkVTRVQ+IDxCTFVFPnw8UkVTRVQ+CisJPFJFRD58PFJFU0VUPiA8R1JFRU4+fDxSRVNFVD4gKiA8QkxVRT58PFJFU0VUPiA2X0UKKwk8UkVEPnw8UkVTRVQ+ICogPENZQU4+fDxSRVNFVD4gPEJMVUU+fDxSRVNFVD4gNl9ECisJPFJFRD58PFJFU0VUPiA8QkxVRT58PFJFU0VUPiA8Q1lBTj58PFJFU0VUPjxCTFVFPi88UkVTRVQ+CisJPFJFRD58PFJFU0VUPiA8QkxVRT58PFJFU0VUPjxCTFVFPi88UkVTRVQ+PENZQU4+fDxSRVNFVD4KKwkqIDxCTFVFPnw8UkVTRVQ+IDxDWUFOPnw8UkVTRVQ+IDZfQworCTxDWUFOPnw8UkVTRVQ+IDxCTFVFPnw8UkVTRVQ+PENZQU4+LzxSRVNFVD4KKwk8Q1lBTj58PFJFU0VUPjxDWUFOPi88UkVTRVQ+PEJMVUU+fDxSRVNFVD4KKwkqIDxCTFVFPnw8UkVTRVQ+IDZfQgorCTxCTFVFPnw8UkVTRVQ+PEJMVUU+LzxSRVNFVD4KKwkqIDZfQQorCUVPRgorCWxpYl90ZXN0X2NtcF9jb2xvcmVkX2dyYXBoIC0tZGF0ZS1vcmRlciAtLXByZXR0eT10Zm9ybWF0OiVzIDZfMSA2XzMgNl81CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyAtLWdyYXBoIHdpdGggbXVsdGlwbGUgdGlwcycgJworCWdpdCBjaGVja291dCAtLW9ycGhhbiA3XzEgJiYKKwl0ZXN0X2NvbW1pdCA3X0EgJiYKKwl0ZXN0X2NvbW1pdCA3X0IgJiYKKwl0ZXN0X2NvbW1pdCA3X0MgJiYKKwlnaXQgY2hlY2tvdXQgLWIgN18yIDdfMX4yICYmCisJdGVzdF9jb21taXQgN19EICYmCisJdGVzdF9jb21taXQgN19FICYmCisJZ2l0IGNoZWNrb3V0IC1iIDdfMyA3XzF+MSAmJgorCXRlc3RfY29tbWl0IDdfRiAmJgorCXRlc3RfY29tbWl0IDdfRyAmJgorCWdpdCBjaGVja291dCAtYiA3XzQgN18yfjEgJiYKKwl0ZXN0X2NvbW1pdCA3X0ggJiYKKwlnaXQgY2hlY2tvdXQgLWIgN181IDdfMX4yICYmCisJdGVzdF9jb21taXQgN19JICYmCisJZ2l0IGNoZWNrb3V0IC1iIDdfNiA3XzN+MSAmJgorCXRlc3RfY29tbWl0IDdfSiAmJgorCWdpdCBjaGVja291dCAtYiBNXzEgN18xICYmCisJZ2l0IG1lcmdlIC0tbm8tZmYgN18yIC1tIDdfTTEgJiYKKwlnaXQgY2hlY2tvdXQgLWIgTV8zIDdfMyAmJgorCWdpdCBtZXJnZSAtLW5vLWZmIDdfNCAtbSA3X00yICYmCisJZ2l0IGNoZWNrb3V0IC1iIE1fNSA3XzUgJiYKKwlnaXQgbWVyZ2UgLS1uby1mZiA3XzYgLW0gN19NMyAmJgorCWdpdCBjaGVja291dCAtYiBNXzcgN18xICYmCisJZ2l0IG1lcmdlIC0tbm8tZmYgN18yIDdfMyAtbSA3X000ICYmCisKKwljaGVja19ncmFwaCBNXzEgTV8zIE1fNSBNXzcgPDwtXEVPRgorCSogICA3X00xCisJfFwKKwl8IHwgKiAgIDdfTTIKKwl8IHwgfFwKKwl8IHwgfCAqIDdfSAorCXwgfCB8IHwgKiAgIDdfTTMKKwl8IHwgfCB8IHxcCisJfCB8IHwgfCB8ICogN19KCisJfCB8IHwgfCAqIHwgN19JCisJfCB8IHwgfCB8IHwgKiAgIDdfTTQKKwl8IHxffF98X3xffC98XAorCXwvfCB8IHwgfCB8LyAvCisJfCB8IHxffF98L3wgLworCXwgfC98IHwgfCB8LworCXwgfCB8IHxffC98CisJfCB8IHwvfCB8IHwKKwl8IHwgKiB8IHwgfCA3X0cKKwl8IHwgfCB8X3wvCisJfCB8IHwvfCB8CisJfCB8ICogfCB8IDdfRgorCXwgKiB8IHwgfCA3X0UKKwl8IHwgfC8gLworCXwgfC98IHwKKwl8ICogfCB8IDdfRAorCXwgfCB8LworCXwgfC98CisJKiB8IHwgN19DCisJfCB8LworCXwvfAorCSogfCA3X0IKKwl8LworCSogN19BCisJRU9GCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NDI1My1hbS1rZWVwLWNyLWRvcy5zaCBiL3QvdDQyNTMtYW0ta2VlcC1jci1kb3Muc2gKaW5kZXggNTUzZmUzZS4uNmUxYjczZSAxMDA3NTUKLS0tIGEvdC90NDI1My1hbS1rZWVwLWNyLWRvcy5zaAorKysgYi90L3Q0MjUzLWFtLWtlZXAtY3ItZG9zLnNoCkBAIC01MSwxNCArNTEsMTYgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYW0gd2l0aCBkb3MgZmlsZXMgd2l0aCAtLWtlZXAtY3InICcKIAlnaXQgY2hlY2tvdXQgLWIgZG9zZmlsZXMta2VlcC1jciBpbml0aWFsICYmCi0JZ2l0IGZvcm1hdC1wYXRjaCAtayAtLXN0ZG91dCBpbml0aWFsLi5tYXN0ZXIgfCBnaXQgYW0gLS1rZWVwLWNyIC1rIC0zICYmCisJZ2l0IGZvcm1hdC1wYXRjaCAtayAtLXN0ZG91dCBpbml0aWFsLi5tYXN0ZXIgPm91dHB1dCAmJgorCWdpdCBhbSAtLWtlZXAtY3IgLWsgLTMgb3V0cHV0ICYmCiAJZ2l0IGRpZmYgLS1leGl0LWNvZGUgbWFzdGVyCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FtIHdpdGggZG9zIGZpbGVzIGNvbmZpZyBhbS5rZWVwY3InICcKIAlnaXQgY29uZmlnIGFtLmtlZXBjciAxICYmCiAJZ2l0IGNoZWNrb3V0IC1iIGRvc2ZpbGVzLWNvbmYta2VlcGNyIGluaXRpYWwgJiYKLQlnaXQgZm9ybWF0LXBhdGNoIC1rIC0tc3Rkb3V0IGluaXRpYWwuLm1hc3RlciB8IGdpdCBhbSAtayAtMyAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLWsgLS1zdGRvdXQgaW5pdGlhbC4ubWFzdGVyID5vdXRwdXQgJiYKKwlnaXQgYW0gLWsgLTMgb3V0cHV0ICYmCiAJZ2l0IGRpZmYgLS1leGl0LWNvZGUgbWFzdGVyCiAnCiAKZGlmZiAtLWdpdCBhL3QvdDQyNTYtYW0tZm9ybWF0LWZsb3dlZC5zaCBiL3QvdDQyNTYtYW0tZm9ybWF0LWZsb3dlZC5zaAppbmRleCA2MzQwMzEwLi4yMzY5YzRlIDEwMDc1NQotLS0gYS90L3Q0MjU2LWFtLWZvcm1hdC1mbG93ZWQuc2gKKysrIGIvdC90NDI1Ni1hbS1mb3JtYXQtZmxvd2VkLnNoCkBAIC0xMSw3ICsxMSw3IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FtIHdpdGggZm9ybWF0PWZsb3dlZCcgJwotCWdpdCBhbSA8IiRURVNUX0RJUkVDVE9SWS90NDI1Ni8xL3BhdGNoIiA+c3Rkb3V0IDI+c3RkZXJyICYmCisJZ2l0IGFtIDwiJFRFU1RfRElSRUNUT1JZL3Q0MjU2LzEvcGF0Y2giIDI+c3RkZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAid2FybmluZzogUGF0Y2ggc2VudCB3aXRoIGZvcm1hdD1mbG93ZWQiIHN0ZGVyciAmJgogCXRlc3RfY21wICIkVEVTVF9ESVJFQ1RPUlkvdDQyNTYvMS9tYWlsaW5mby5jIiBtYWlsaW5mby5jCiAnCmRpZmYgLS1naXQgYS90L3Q0MjU3LWFtLWludGVyYWN0aXZlLnNoIGIvdC90NDI1Ny1hbS1pbnRlcmFjdGl2ZS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi41MzQ0YmQyCi0tLSAvZGV2L251bGwKKysrIGIvdC90NDI1Ny1hbS1pbnRlcmFjdGl2ZS5zaApAQCAtMCwwICsxLDUyIEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0nYW0gLS1pbnRlcmFjdGl2ZSB0ZXN0cycKKy4gLi90ZXN0LWxpYi5zaAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXQgdXAgcGF0Y2hlcyB0byBhcHBseScgJworCXRlc3RfY29tbWl0IHVucmVsYXRlZCAmJgorCXRlc3RfY29tbWl0IG5vLWNvbmZsaWN0ICYmCisJdGVzdF9jb21taXQgY29uZmxpY3QtcGF0Y2ggZmlsZSBwYXRjaCAmJgorCWdpdCBmb3JtYXQtcGF0Y2ggLS1zdGRvdXQgLTIgPm1ib3ggJiYKKworCWdpdCByZXNldCAtLWhhcmQgdW5yZWxhdGVkICYmCisJdGVzdF9jb21taXQgY29uZmxpY3QtbWFzdGVyIGZpbGUgbWFzdGVyIGJhc2UKKycKKworIyBTYW5pdHkgY2hlY2sgb3VyIHNldHVwLgordGVzdF9leHBlY3Rfc3VjY2VzcyAnYXBwbHlpbmcgYWxsIHBhdGNoZXMgZ2VuZXJhdGVzIGNvbmZsaWN0JyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGFtIG1ib3ggJiYKKwllY2hvIHJlc29sdmVkID5maWxlICYmCisJZ2l0IGFkZCAtdSAmJgorCWdpdCBhbSAtLXJlc29sdmVkCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ludGVyYWN0aXZlIGFtIGNhbiBhcHBseSBhIHNpbmdsZSBwYXRjaCcgJworCWdpdCByZXNldCAtLWhhcmQgYmFzZSAmJgorCSMgYXBwbHkgdGhlIGZpcnN0LCBidXQgbm90IHRoZSBzZWNvbmQKKwl0ZXN0X3dyaXRlX2xpbmVzIHkgbiB8IGdpdCBhbSAtaSBtYm94ICYmCisKKwllY2hvIG5vLWNvbmZsaWN0ID5leHBlY3QgJiYKKwlnaXQgbG9nIC0xIC0tZm9ybWF0PSVzID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ludGVyYWN0aXZlIGFtIGNhbiByZXNvbHZlIGNvbmZsaWN0JyAnCisJZ2l0IHJlc2V0IC0taGFyZCBiYXNlICYmCisJIyBhcHBseSBib3RoOyB0aGUgc2Vjb25kIG9uZSB3aWxsIGNvbmZsaWN0CisJdGVzdF93cml0ZV9saW5lcyB5IHkgfCB0ZXN0X211c3RfZmFpbCBnaXQgYW0gLWkgbWJveCAmJgorCWVjaG8gcmVzb2x2ZWQgPmZpbGUgJiYKKwlnaXQgYWRkIC11ICYmCisJIyBpbnRlcmFjdGl2ZSAiLS1yZXNvbHZlZCIgd2lsbCBhc2sgdXMgaWYgd2Ugd2FudCB0byBhcHBseSB0aGUgcmVzdWx0CisJZWNobyB5IHwgZ2l0IGFtIC1pIC0tcmVzb2x2ZWQgJiYKKworCWVjaG8gY29uZmxpY3QtcGF0Y2ggPmV4cGVjdCAmJgorCWdpdCBsb2cgLTEgLS1mb3JtYXQ9JXMgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKworCWVjaG8gcmVzb2x2ZWQgPmV4cGVjdCAmJgorCWdpdCBjYXQtZmlsZSBibG9iIEhFQUQ6ZmlsZSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDQzMDAtbWVyZ2UtdHJlZS5zaCBiL3QvdDQzMDAtbWVyZ2UtdHJlZS5zaAppbmRleCBkODdjYzdkLi5lNTk2MDFlIDEwMDc1NQotLS0gYS90L3Q0MzAwLW1lcmdlLXRyZWUuc2gKKysrIGIvdC90NDMwMC1tZXJnZS10cmVlLnNoCkBAIC0xMSwxNiArMTEsMTYgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmlsZSBhZGQgQSwgIUInICcKLQljYXQgPmV4cGVjdGVkIDw8XEVYUEVDVEVEICYmCisJZ2l0IHJlc2V0IC0taGFyZCBpbml0aWFsICYmCisJdGVzdF9jb21taXQgImFkZC1hLW5vdC1iIiAiT05FIiAiQUFBIiAmJgorCWdpdCBtZXJnZS10cmVlIGluaXRpYWwgaW5pdGlhbCBhZGQtYS1ub3QtYiA+YWN0dWFsICYmCisJY2F0ID5leHBlY3RlZCA8PEVYUEVDVEVEICYmCiBhZGRlZCBpbiByZW1vdGUKLSAgdGhlaXIgIDEwMDY0NCA0M2Q1YThlZDZlZjZjMDBmZjc3NTAwODYzM2Y5NTc4N2QwODgyODVkIE9ORQorICB0aGVpciAgMTAwNjQ0ICQoZ2l0IHJldi1wYXJzZSBIRUFEOk9ORSkgT05FCiBAQCAtMCwwICsxIEBACiArQUFBCiBFWFBFQ1RFRAogCi0JZ2l0IHJlc2V0IC0taGFyZCBpbml0aWFsICYmCi0JdGVzdF9jb21taXQgImFkZC1hLW5vdC1iIiAiT05FIiAiQUFBIiAmJgotCWdpdCBtZXJnZS10cmVlIGluaXRpYWwgaW5pdGlhbCBhZGQtYS1ub3QtYiA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKQEAgLTQxLDEwICs0MSwxNSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmaWxlIGFkZCBBLCBCIChkaWZmZXJlbnQpJyAnCi0JY2F0ID5leHBlY3RlZCA8PFxFWFBFQ1RFRCAmJgorCWdpdCByZXNldCAtLWhhcmQgaW5pdGlhbCAmJgorCXRlc3RfY29tbWl0ICJhZGQtYS1iLWRpZmYtQSIgIk9ORSIgIkFBQSIgJiYKKwlnaXQgcmVzZXQgLS1oYXJkIGluaXRpYWwgJiYKKwl0ZXN0X2NvbW1pdCAiYWRkLWEtYi1kaWZmLUIiICJPTkUiICJCQkIiICYmCisJZ2l0IG1lcmdlLXRyZWUgaW5pdGlhbCBhZGQtYS1iLWRpZmYtQSBhZGQtYS1iLWRpZmYtQiA+YWN0dWFsICYmCisJY2F0ID5leHBlY3RlZCA8PEVYUEVDVEVEICYmCiBhZGRlZCBpbiBib3RoCi0gIG91ciAgICAxMDA2NDQgNDNkNWE4ZWQ2ZWY2YzAwZmY3NzUwMDg2MzNmOTU3ODdkMDg4Mjg1ZCBPTkUKLSAgdGhlaXIgIDEwMDY0NCBiYTYyOTIzOGNhODk0ODlmMmIzNTBlMTk2Y2E0NDVlMDlkOGJiODM0IE9ORQorICBvdXIgICAgMTAwNjQ0ICQoZ2l0IHJldi1wYXJzZSBhZGQtYS1iLWRpZmYtQTpPTkUpIE9ORQorICB0aGVpciAgMTAwNjQ0ICQoZ2l0IHJldi1wYXJzZSBhZGQtYS1iLWRpZmYtQjpPTkUpIE9ORQogQEAgLTEgKzEsNSBAQAogKzw8PDw8PDwgLm91cgogIEFBQQpAQCAtNTMsMTEgKzU4LDYgQEAKICs+Pj4+Pj4+IC50aGVpcgogRVhQRUNURUQKIAotCWdpdCByZXNldCAtLWhhcmQgaW5pdGlhbCAmJgotCXRlc3RfY29tbWl0ICJhZGQtYS1iLWRpZmYtQSIgIk9ORSIgIkFBQSIgJiYKLQlnaXQgcmVzZXQgLS1oYXJkIGluaXRpYWwgJiYKLQl0ZXN0X2NvbW1pdCAiYWRkLWEtYi1kaWZmLUIiICJPTkUiICJCQkIiICYmCi0JZ2l0IG1lcmdlLXRyZWUgaW5pdGlhbCBhZGQtYS1iLWRpZmYtQSBhZGQtYS1iLWRpZmYtQiA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKQEAgLTY5LDE4ICs2OSwxOCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmaWxlIGNoYW5nZSAhQSwgQicgJwotCWNhdCA+ZXhwZWN0ZWQgPDxcRVhQRUNURUQgJiYKKwlnaXQgcmVzZXQgLS1oYXJkIGluaXRpYWwgJiYKKwl0ZXN0X2NvbW1pdCAiY2hhbmdlLW5vdC1hLWIiICJpbml0aWFsLWZpbGUiICJCQkIiICYmCisJZ2l0IG1lcmdlLXRyZWUgaW5pdGlhbCBpbml0aWFsIGNoYW5nZS1ub3QtYS1iID5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdGVkIDw8RVhQRUNURUQgJiYKIG1lcmdlZAotICByZXN1bHQgMTAwNjQ0IGJhNjI5MjM4Y2E4OTQ4OWYyYjM1MGUxOTZjYTQ0NWUwOWQ4YmI4MzQgaW5pdGlhbC1maWxlCi0gIG91ciAgICAxMDA2NDQgZTc5YzVlOGY5NjQ0OTMyOTBhNDA5ODg4ZDU0MTNhNzM3ZThlNWRkNSBpbml0aWFsLWZpbGUKKyAgcmVzdWx0IDEwMDY0NCAkKGdpdCByZXYtcGFyc2UgY2hhbmdlLWEtbm90LWI6aW5pdGlhbC1maWxlKSBpbml0aWFsLWZpbGUKKyAgb3VyICAgIDEwMDY0NCAkKGdpdCByZXYtcGFyc2UgaW5pdGlhbDppbml0aWFsLWZpbGUgICAgICAgKSBpbml0aWFsLWZpbGUKIEBAIC0xICsxIEBACiAtaW5pdGlhbAogK0JCQgogRVhQRUNURUQKIAotCWdpdCByZXNldCAtLWhhcmQgaW5pdGlhbCAmJgotCXRlc3RfY29tbWl0ICJjaGFuZ2Utbm90LWEtYiIgImluaXRpYWwtZmlsZSIgIkJCQiIgJiYKLQlnaXQgbWVyZ2UtdHJlZSBpbml0aWFsIGluaXRpYWwgY2hhbmdlLW5vdC1hLWIgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCkBAIC05NCwxMSArOTQsMTYgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmlsZSBjaGFuZ2UgQSwgQiAoZGlmZmVyZW50KScgJwotCWNhdCA+ZXhwZWN0ZWQgPDxcRVhQRUNURUQgJiYKKwlnaXQgcmVzZXQgLS1oYXJkIGluaXRpYWwgJiYKKwl0ZXN0X2NvbW1pdCAiY2hhbmdlLWEtYi1kaWZmLUEiICJpbml0aWFsLWZpbGUiICJBQUEiICYmCisJZ2l0IHJlc2V0IC0taGFyZCBpbml0aWFsICYmCisJdGVzdF9jb21taXQgImNoYW5nZS1hLWItZGlmZi1CIiAiaW5pdGlhbC1maWxlIiAiQkJCIiAmJgorCWdpdCBtZXJnZS10cmVlIGluaXRpYWwgY2hhbmdlLWEtYi1kaWZmLUEgY2hhbmdlLWEtYi1kaWZmLUIgPmFjdHVhbCAmJgorCWNhdCA+ZXhwZWN0ZWQgPDxFWFBFQ1RFRCAmJgogY2hhbmdlZCBpbiBib3RoCi0gIGJhc2UgICAxMDA2NDQgZTc5YzVlOGY5NjQ0OTMyOTBhNDA5ODg4ZDU0MTNhNzM3ZThlNWRkNSBpbml0aWFsLWZpbGUKLSAgb3VyICAgIDEwMDY0NCA0M2Q1YThlZDZlZjZjMDBmZjc3NTAwODYzM2Y5NTc4N2QwODgyODVkIGluaXRpYWwtZmlsZQotICB0aGVpciAgMTAwNjQ0IGJhNjI5MjM4Y2E4OTQ4OWYyYjM1MGUxOTZjYTQ0NWUwOWQ4YmI4MzQgaW5pdGlhbC1maWxlCisgIGJhc2UgICAxMDA2NDQgJChnaXQgcmV2LXBhcnNlIGluaXRpYWw6aW5pdGlhbC1maWxlICAgICAgICAgICkgaW5pdGlhbC1maWxlCisgIG91ciAgICAxMDA2NDQgJChnaXQgcmV2LXBhcnNlIGNoYW5nZS1hLWItZGlmZi1BOmluaXRpYWwtZmlsZSkgaW5pdGlhbC1maWxlCisgIHRoZWlyICAxMDA2NDQgJChnaXQgcmV2LXBhcnNlIGNoYW5nZS1hLWItZGlmZi1COmluaXRpYWwtZmlsZSkgaW5pdGlhbC1maWxlCiBAQCAtMSArMSw1IEBACiArPDw8PDw8PCAub3VyCiAgQUFBCkBAIC0xMDcsMzQgKzExMiwxMCBAQAogKz4+Pj4+Pj4gLnRoZWlyCiBFWFBFQ1RFRAogCi0JZ2l0IHJlc2V0IC0taGFyZCBpbml0aWFsICYmCi0JdGVzdF9jb21taXQgImNoYW5nZS1hLWItZGlmZi1BIiAiaW5pdGlhbC1maWxlIiAiQUFBIiAmJgotCWdpdCByZXNldCAtLWhhcmQgaW5pdGlhbCAmJgotCXRlc3RfY29tbWl0ICJjaGFuZ2UtYS1iLWRpZmYtQiIgImluaXRpYWwtZmlsZSIgIkJCQiIgJiYKLQlnaXQgbWVyZ2UtdHJlZSBpbml0aWFsIGNoYW5nZS1hLWItZGlmZi1BIGNoYW5nZS1hLWItZGlmZi1CID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmlsZSBjaGFuZ2UgQSwgQiAobWl4ZWQpJyAnCi0JY2F0ID5leHBlY3RlZCA8PFxFWFBFQ1RFRCAmJgotY2hhbmdlZCBpbiBib3RoCi0gIGJhc2UgICAxMDA2NDQgZjRmMWY5OThjNzc3NjU2OGM0ZmYzOGY1MTZkNzdmZWY5Mzk5YjVhNyBPTkUKLSAgb3VyICAgIDEwMDY0NCBhZjE0YzJjMzQ3NTMzN2M3Mzc1OWQ1NjFlZjcwYjU5ZTVjNzMxMTc2IE9ORQotICB0aGVpciAgMTAwNjQ0IDM3MmQ3NjE0OTNmNTI0ZDQ0ZDU5YmQyNDcwMGMzYmRmOTE0Yzk3M2MgT05FCi1AQCAtNyw3ICs3LDExIEBACi0gQUFBCi0gQUFBCi0gQUFBCi0rPDw8PDw8PCAub3VyCi0gQkJCCi0rPT09PT09PQotK0NDQwotKz4+Pj4+Pj4gLnRoZWlyCi0gQUFBCi0gQUFBCi0gQUFBCi1FWFBFQ1RFRAotCiAJZ2l0IHJlc2V0IC0taGFyZCBpbml0aWFsICYmCiAJdGVzdF9jb21taXQgImNoYW5nZS1hLWItbWl4LWJhc2UiICJPTkUiICIKIEFBQQpAQCAtMTU5LDYgKzE0MCwyNiBAQAogCQkiJChzZWQgLWUgIjF7cy9BQUEvQkJCLzt9IiAtZSAiMTB7cy9BQUEvQ0NDLzt9IiA8T05FKSIgJiYKIAlnaXQgbWVyZ2UtdHJlZSBjaGFuZ2UtYS1iLW1peC1iYXNlIGNoYW5nZS1hLWItbWl4LUEgY2hhbmdlLWEtYi1taXgtQiBcCiAJCT5hY3R1YWwgJiYKKworCWNhdCA+ZXhwZWN0ZWQgPDxFWFBFQ1RFRCAmJgorY2hhbmdlZCBpbiBib3RoCisgIGJhc2UgICAxMDA2NDQgJChnaXQgcmV2LXBhcnNlIGNoYW5nZS1hLWItbWl4LWJhc2U6T05FKSBPTkUKKyAgb3VyICAgIDEwMDY0NCAkKGdpdCByZXYtcGFyc2UgY2hhbmdlLWEtYi1taXgtQTpPTkUgICApIE9ORQorICB0aGVpciAgMTAwNjQ0ICQoZ2l0IHJldi1wYXJzZSBjaGFuZ2UtYS1iLW1peC1COk9ORSAgICkgT05FCitAQCAtNyw3ICs3LDExIEBACisgQUFBCisgQUFBCisgQUFBCisrPDw8PDw8PCAub3VyCisgQkJCCisrPT09PT09PQorK0NDQworKz4+Pj4+Pj4gLnRoZWlyCisgQUFBCisgQUFBCisgQUFBCitFWFBFQ1RFRAorCiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKQEAgLTE3MywyMCArMTc0LDIwIEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZpbGUgcmVtb3ZlICFBLCBCJyAnCi0JY2F0ID5leHBlY3RlZCA8PFxFWFBFQ1RFRCAmJgotcmVtb3ZlZCBpbiByZW1vdGUKLSAgYmFzZSAgIDEwMDY0NCA0M2Q1YThlZDZlZjZjMDBmZjc3NTAwODYzM2Y5NTc4N2QwODgyODVkIE9ORQotICBvdXIgICAgMTAwNjQ0IDQzZDVhOGVkNmVmNmMwMGZmNzc1MDA4NjMzZjk1Nzg3ZDA4ODI4NWQgT05FCi1AQCAtMSArMCwwIEBACi0tQUFBCi1FWFBFQ1RFRAotCiAJZ2l0IHJlc2V0IC0taGFyZCBpbml0aWFsICYmCiAJdGVzdF9jb21taXQgInJtLW5vdC1hLWItYmFzZSIgIk9ORSIgIkFBQSIgJiYKIAlnaXQgcm0gT05FICYmCiAJZ2l0IGNvbW1pdCAtbSAicm0tbm90LWEtYiIgJiYKIAlnaXQgdGFnICJybS1ub3QtYS1iIiAmJgogCWdpdCBtZXJnZS10cmVlIHJtLWEtbm90LWItYmFzZSBybS1hLW5vdC1iLWJhc2Ugcm0tYS1ub3QtYiA+YWN0dWFsICYmCisJY2F0ID5leHBlY3RlZCA8PEVYUEVDVEVEICYmCityZW1vdmVkIGluIHJlbW90ZQorICBiYXNlICAgMTAwNjQ0ICQoZ2l0IHJldi1wYXJzZSBybS1hLW5vdC1iLWJhc2U6T05FKSBPTkUKKyAgb3VyICAgIDEwMDY0NCAkKGdpdCByZXYtcGFyc2Ugcm0tYS1ub3QtYi1iYXNlOk9ORSkgT05FCitAQCAtMSArMCwwIEBACistQUFBCitFWFBFQ1RFRAorCiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKQEAgLTIwMSwxNCArMjAyLDYgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmlsZSBjaGFuZ2UgQSwgcmVtb3ZlIEInICcKLQljYXQgPmV4cGVjdGVkIDw8XEVYUEVDVEVEICYmCi1yZW1vdmVkIGluIHJlbW90ZQotICBiYXNlICAgMTAwNjQ0IDQzZDVhOGVkNmVmNmMwMGZmNzc1MDA4NjMzZjk1Nzg3ZDA4ODI4NWQgT05FCi0gIG91ciAgICAxMDA2NDQgYmE2MjkyMzhjYTg5NDg5ZjJiMzUwZTE5NmNhNDQ1ZTA5ZDhiYjgzNCBPTkUKLUBAIC0xICswLDAgQEAKLS1CQkIKLUVYUEVDVEVECi0KIAlnaXQgcmVzZXQgLS1oYXJkIGluaXRpYWwgJiYKIAl0ZXN0X2NvbW1pdCAiY2hhbmdlLWEtcm0tYi1iYXNlIiAiT05FIiAiQUFBIiAmJgogCXRlc3RfY29tbWl0ICJjaGFuZ2UtYS1ybS1iLUEiICJPTkUiICJCQkIiICYmCkBAIC0yMTgsMTYgKzIxMSwxOCBAQAogCWdpdCB0YWcgImNoYW5nZS1hLXJtLWItQiIgJiYKIAlnaXQgbWVyZ2UtdHJlZSBjaGFuZ2UtYS1ybS1iLWJhc2UgY2hhbmdlLWEtcm0tYi1BIGNoYW5nZS1hLXJtLWItQiBcCiAJCT5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdGVkIDw8RVhQRUNURUQgJiYKK3JlbW92ZWQgaW4gcmVtb3RlCisgIGJhc2UgICAxMDA2NDQgJChnaXQgcmV2LXBhcnNlIGNoYW5nZS1hLXJtLWItYmFzZTpPTkUpIE9ORQorICBvdXIgICAgMTAwNjQ0ICQoZ2l0IHJldi1wYXJzZSBjaGFuZ2UtYS1ybS1iLUE6T05FICAgKSBPTkUKK0BAIC0xICswLDAgQEAKKy1CQkIKK0VYUEVDVEVECisKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmlsZSByZW1vdmUgQSwgY2hhbmdlIEInICcKLQljYXQgPmV4cGVjdGVkIDw8XEVYUEVDVEVEICYmCi1yZW1vdmVkIGluIGxvY2FsCi0gIGJhc2UgICAxMDA2NDQgNDNkNWE4ZWQ2ZWY2YzAwZmY3NzUwMDg2MzNmOTU3ODdkMDg4Mjg1ZCBPTkUKLSAgdGhlaXIgIDEwMDY0NCBiYTYyOTIzOGNhODk0ODlmMmIzNTBlMTk2Y2E0NDVlMDlkOGJiODM0IE9ORQotRVhQRUNURUQKLQogCWdpdCByZXNldCAtLWhhcmQgaW5pdGlhbCAmJgogCXRlc3RfY29tbWl0ICJybS1hLWNoYW5nZS1iLWJhc2UiICJPTkUiICJBQUEiICYmCiAKQEAgLTIzOCw2ICsyMzMsMTEgQEAKIAl0ZXN0X2NvbW1pdCAicm0tYS1jaGFuZ2UtYi1CIiAiT05FIiAiQkJCIiAmJgogCWdpdCBtZXJnZS10cmVlIHJtLWEtY2hhbmdlLWItYmFzZSBybS1hLWNoYW5nZS1iLUEgcm0tYS1jaGFuZ2UtYi1CIFwKIAkJPmFjdHVhbCAmJgorCWNhdCA+ZXhwZWN0ZWQgPDxFWFBFQ1RFRCAmJgorcmVtb3ZlZCBpbiBsb2NhbAorICBiYXNlICAgMTAwNjQ0ICQoZ2l0IHJldi1wYXJzZSBybS1hLWNoYW5nZS1iLWJhc2U6T05FKSBPTkUKKyAgdGhlaXIgIDEwMDY0NCAkKGdpdCByZXYtcGFyc2Ugcm0tYS1jaGFuZ2UtYi1COk9ORSAgICkgT05FCitFWFBFQ1RFRAogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCkBAIC0yNTAsMTcgKzI1MCw2IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RyZWUgYWRkIEEsIEIgKGRpZmZlcmVudCknICcKLQljYXQgPmV4cGVjdCA8PC1cRU9GICYmCi0JYWRkZWQgaW4gYm90aAotCSAgb3VyICAgIDEwMDY0NCA0M2Q1YThlZDZlZjZjMDBmZjc3NTAwODYzM2Y5NTc4N2QwODgyODVkIHN1Yi9maWxlCi0JICB0aGVpciAgMTAwNjQ0IGJhNjI5MjM4Y2E4OTQ4OWYyYjM1MGUxOTZjYTQ0NWUwOWQ4YmI4MzQgc3ViL2ZpbGUKLQlAQCAtMSArMSw1IEBACi0JKzw8PDw8PDwgLm91cgotCSBBQUEKLQkrPT09PT09PQotCStCQkIKLQkrPj4+Pj4+PiAudGhlaXIKLQlFT0YKIAlnaXQgcmVzZXQgLS1oYXJkIGluaXRpYWwgJiYKIAlta2RpciBzdWIgJiYKIAl0ZXN0X2NvbW1pdCAiYWRkIHN1Yi9maWxlIiAic3ViL2ZpbGUiICJBQUEiIGFkZC10cmVlLWEtYi1BICYmCkBAIC0yNjgsMTcgKzI1NywyMSBAQAogCW1rZGlyIHN1YiAmJgogCXRlc3RfY29tbWl0ICJhZGQgc3ViL2ZpbGUiICJzdWIvZmlsZSIgIkJCQiIgYWRkLXRyZWUtYS1iLUIgJiYKIAlnaXQgbWVyZ2UtdHJlZSBpbml0aWFsIGFkZC10cmVlLWEtYi1BIGFkZC10cmVlLWEtYi1CID5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwlhZGRlZCBpbiBib3RoCisJICBvdXIgICAgMTAwNjQ0ICQoZ2l0IHJldi1wYXJzZSBhZGQtdHJlZS1hLWItQTpzdWIvZmlsZSkgc3ViL2ZpbGUKKwkgIHRoZWlyICAxMDA2NDQgJChnaXQgcmV2LXBhcnNlIGFkZC10cmVlLWEtYi1COnN1Yi9maWxlKSBzdWIvZmlsZQorCUBAIC0xICsxLDUgQEAKKwkrPDw8PDw8PCAub3VyCisJIEFBQQorCSs9PT09PT09CisJK0JCQgorCSs+Pj4+Pj4+IC50aGVpcgorCUVPRgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndHJlZSB1bmNoYW5nZWQgQSwgcmVtb3ZlZCBCJyAnCi0JY2F0ID5leHBlY3QgPDwtXEVPRiAmJgotCXJlbW92ZWQgaW4gcmVtb3RlCi0JICBiYXNlICAgMTAwNjQ0IDQzZDVhOGVkNmVmNmMwMGZmNzc1MDA4NjMzZjk1Nzg3ZDA4ODI4NWQgc3ViL2ZpbGUKLQkgIG91ciAgICAxMDA2NDQgNDNkNWE4ZWQ2ZWY2YzAwZmY3NzUwMDg2MzNmOTU3ODdkMDg4Mjg1ZCBzdWIvZmlsZQotCUBAIC0xICswLDAgQEAKLQktQUFBCi0JRU9GCiAJZ2l0IHJlc2V0IC0taGFyZCBpbml0aWFsICYmCiAJbWtkaXIgc3ViICYmCiAJdGVzdF9jb21taXQgImFkZCBzdWIvZmlsZSIgInN1Yi9maWxlIiAiQUFBIiB0cmVlLXJlbW92ZS1iLWluaXRpYWwgJiYKQEAgLTI4Nyw2ICsyODAsMTMgQEAKIAlnaXQgY29tbWl0IC1tICJyZW1vdmUgc3ViL2ZpbGUiICYmCiAJZ2l0IHRhZyB0cmVlLXJlbW92ZS1iLUIgJiYKIAlnaXQgbWVyZ2UtdHJlZSB0cmVlLXJlbW92ZS1iLWluaXRpYWwgdHJlZS1yZW1vdmUtYi1pbml0aWFsIHRyZWUtcmVtb3ZlLWItQiA+YWN0dWFsICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJcmVtb3ZlZCBpbiByZW1vdGUKKwkgIGJhc2UgICAxMDA2NDQgJChnaXQgcmV2LXBhcnNlIHRyZWUtcmVtb3ZlLWItaW5pdGlhbDpzdWIvZmlsZSkgc3ViL2ZpbGUKKwkgIG91ciAgICAxMDA2NDQgJChnaXQgcmV2LXBhcnNlIHRyZWUtcmVtb3ZlLWItaW5pdGlhbDpzdWIvZmlsZSkgc3ViL2ZpbGUKKwlAQCAtMSArMCwwIEBACisJLUFBQQorCUVPRgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIApAQCAtMjk2LDE0ICsyOTYsMTQgQEAKIAlta2RpciBpbml0aWFsLWZpbGUgJiYKIAl0ZXN0X2NvbW1pdCAidHVybi1maWxlLXRvLXRyZWUiICJpbml0aWFsLWZpbGUvT05FIiAiQ0NDIiAmJgogCWdpdCBtZXJnZS10cmVlIGluaXRpYWwgaW5pdGlhbCB0dXJuLWZpbGUtdG8tdHJlZSA+YWN0dWFsICYmCi0JY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgogCWFkZGVkIGluIHJlbW90ZQotCSAgdGhlaXIgIDEwMDY0NCA0M2FhNGZkZWMzMWViOTJlMWZkYzJmMGNlNmVhOWRkYjdjMzJiY2Y3IGluaXRpYWwtZmlsZS9PTkUKKwkgIHRoZWlyICAxMDA2NDQgJChnaXQgcmV2LXBhcnNlIHR1cm4tZmlsZS10by10cmVlOmluaXRpYWwtZmlsZS9PTkUpIGluaXRpYWwtZmlsZS9PTkUKIAlAQCAtMCwwICsxIEBACiAJK0NDQwogCXJlbW92ZWQgaW4gcmVtb3RlCi0JICBiYXNlICAgMTAwNjQ0IGU3OWM1ZThmOTY0NDkzMjkwYTQwOTg4OGQ1NDEzYTczN2U4ZTVkZDUgaW5pdGlhbC1maWxlCi0JICBvdXIgICAgMTAwNjQ0IGU3OWM1ZThmOTY0NDkzMjkwYTQwOTg4OGQ1NDEzYTczN2U4ZTVkZDUgaW5pdGlhbC1maWxlCisJICBiYXNlICAgMTAwNjQ0ICQoZ2l0IHJldi1wYXJzZSBpbml0aWFsOmluaXRpYWwtZmlsZSkgaW5pdGlhbC1maWxlCisJICBvdXIgICAgMTAwNjQ0ICQoZ2l0IHJldi1wYXJzZSBpbml0aWFsOmluaXRpYWwtZmlsZSkgaW5pdGlhbC1maWxlCiAJQEAgLTEgKzAsMCBAQAogCS1pbml0aWFsCiAJRU9GCkBAIC0zMTgsMTQgKzMxOCwxNCBAQAogCXJtIC1mciBkaXIgJiYKIAl0ZXN0X2NvbW1pdCAibWFrZS1maWxlIiAiZGlyIiAiQ0NDIiAmJgogCWdpdCBtZXJnZS10cmVlIGFkZC10cmVlIGFkZC1hbm90aGVyLXRyZWUgbWFrZS1maWxlID5hY3R1YWwgJiYKLQljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCiAJcmVtb3ZlZCBpbiByZW1vdGUKLQkgIGJhc2UgICAxMDA2NDQgNDNkNWE4ZWQ2ZWY2YzAwZmY3NzUwMDg2MzNmOTU3ODdkMDg4Mjg1ZCBkaXIvcGF0aAotCSAgb3VyICAgIDEwMDY0NCA0M2Q1YThlZDZlZjZjMDBmZjc3NTAwODYzM2Y5NTc4N2QwODgyODVkIGRpci9wYXRoCisJICBiYXNlICAgMTAwNjQ0ICQoZ2l0IHJldi1wYXJzZSBhZGQtdHJlZTpkaXIvcGF0aCkgZGlyL3BhdGgKKwkgIG91ciAgICAxMDA2NDQgJChnaXQgcmV2LXBhcnNlIGFkZC10cmVlOmRpci9wYXRoKSBkaXIvcGF0aAogCUBAIC0xICswLDAgQEAKIAktQUFBCiAJYWRkZWQgaW4gcmVtb3RlCi0JICB0aGVpciAgMTAwNjQ0IDQzYWE0ZmRlYzMxZWI5MmUxZmRjMmYwY2U2ZWE5ZGRiN2MzMmJjZjcgZGlyCisJICB0aGVpciAgMTAwNjQ0ICQoZ2l0IHJldi1wYXJzZSBtYWtlLWZpbGU6ZGlyKSBkaXIKIAlAQCAtMCwwICsxIEBACiAJK0NDQwogCUVPRgpkaWZmIC0tZ2l0IGEvdC90NTAwMC10YXItdHJlZS5zaCBiL3QvdDUwMDAtdGFyLXRyZWUuc2gKaW5kZXggNjAyYmZkOS4uMzc2NTVhMiAxMDA3NTUKLS0tIGEvdC90NTAwMC10YXItdHJlZS5zaAorKysgYi90L3Q1MDAwLXRhci10cmVlLnNoCkBAIC05NCw2ICs5NCwxMyBAQAogCScKIH0KIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICcKKwl0ZXN0X29pZF9jYWNoZSA8PC1FT0YKKwlvYmogc2hhMToxOWY5YzgyNzNlYzQ1YTg5MzhlNjk5OWNiNTliM2ZmNjY3Mzk5MDJhCisJb2JqIHNoYTI1NjozYzY2NmY3OTg3OTg2MDE1NzFmNWNlYzBhZGI1N2NlNGFiYTg1NDY4NzVlNzY5MzE3N2UwNTM1ZjM0ZDJjNDliCisJRU9GCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAogICAgICdwb3B1bGF0ZSB3b3JrZGlyJyBcCiAgICAgJ21rZGlyIGEgJiYKQEAgLTM2OSwxMSArMzc2LDEwIEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgTE9OR19JU182NEJJVCAnc2V0IHVwIHJlcG9zaXRvcnkgd2l0aCBodWdlIGJsb2InICcKLQlvYmpfZD0xOSAmJgotCW9ial9mPWY5YzgyNzNlYzQ1YTg5MzhlNjk5OWNiNTliM2ZmNjY3Mzk5MDJhICYmCi0Jb2JqPSR7b2JqX2R9JHtvYmpfZn0gJiYKLQlta2RpciAtcCAuZ2l0L29iamVjdHMvJG9ial9kICYmCi0JY3AgIiRURVNUX0RJUkVDVE9SWSIvdDUwMDAvJG9iaiAuZ2l0L29iamVjdHMvJG9ial9kLyRvYmpfZiAmJgorCW9iaj0kKHRlc3Rfb2lkIG9iaikgJiYKKwlwYXRoPSQodGVzdF9vaWRfdG9fcGF0aCAkb2JqKSAmJgorCW1rZGlyIC1wIC5naXQvb2JqZWN0cy8kKGRpcm5hbWUgJHBhdGgpICYmCisJY3AgIiRURVNUX0RJUkVDVE9SWSIvdDUwMDAvaHVnZS1vYmplY3QgLmdpdC9vYmplY3RzLyRwYXRoICYmCiAJcm0gLWYgLmdpdC9pbmRleCAmJgogCWdpdCB1cGRhdGUtaW5kZXggLS1hZGQgLS1jYWNoZWluZm8gMTAwNjQ0LCRvYmosaHVnZSAmJgogCWdpdCBjb21taXQgLW0gaHVnZQpkaWZmIC0tZ2l0IGEvdC90NTAwMC8xOWY5YzgyNzNlYzQ1YTg5MzhlNjk5OWNiNTliM2ZmNjY3Mzk5MDJhIGIvdC90NTAwMC9odWdlLW9iamVjdApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gdC90NTAwMC8xOWY5YzgyNzNlYzQ1YTg5MzhlNjk5OWNiNTliM2ZmNjY3Mzk5MDJhCnJlbmFtZSB0byB0L3Q1MDAwL2h1Z2Utb2JqZWN0CkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL3QvdDUwMDQtYXJjaGl2ZS1jb3JuZXItY2FzZXMuc2ggYi90L3Q1MDA0LWFyY2hpdmUtY29ybmVyLWNhc2VzLnNoCmluZGV4IGNlZDQ0MzUuLjNlN2IyM2MgMTAwNzU1Ci0tLSBhL3QvdDUwMDQtYXJjaGl2ZS1jb3JuZXItY2FzZXMuc2gKKysrIGIvdC90NTAwNC1hcmNoaXZlLWNvcm5lci1jYXNlcy5zaApAQCAtMyw4ICszLDEyIEBACiB0ZXN0X2Rlc2NyaXB0aW9uPSd0ZXN0IGNvcm5lciBjYXNlcyBvZiBnaXQtYXJjaGl2ZScKIC4gLi90ZXN0LWxpYi5zaAogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdjcmVhdGUgY29tbWl0IHdpdGggZW1wdHkgdHJlZScgJwotCWdpdCBjb21taXQgLS1hbGxvdy1lbXB0eSAtbSBmb28KKyMgdGhlIDEwa251bHMudGFyIGZpbGUgaXMgdXNlZCB0byB0ZXN0IGZvciBhbiBlbXB0eSBnaXQgZ2VuZXJhdGVkIHRhcgorIyB3aXRob3V0IGhhdmluZyB0byBpbnZva2UgdGFyIGJlY2F1c2UgYW4gb3RoZXJ3aXNlIHZhbGlkIGVtcHR5IEdOVSB0YXIKKyMgd2lsbCBiZSBjb25zaWRlcmVkIGJyb2tlbiBieSB7T3BlbixOZXR9QlNEIHRhcgordGVzdF9leHBlY3Rfc3VjY2VzcyAnY3JlYXRlIGNvbW1pdCB3aXRoIGVtcHR5IHRyZWUgYW5kIGZha2UgZW1wdHkgdGFyJyAnCisJZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5IC1tIGZvbyAmJgorCXBlcmwgLWUgInByaW50IFwiXFwwXCIgeCAxMDI0MCIgPjEwa251bHMudGFyCiAnCiAKICMgTWFrZSBhIGRpciBhbmQgY2xlYW4gaXQgdXAgYWZ0ZXJ3YXJkcwpAQCAtNDcsNyArNTEsNiBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd0YXIgYXJjaGl2ZSBvZiBlbXB0eSB0cmVlIGlzIGVtcHR5JyAnCiAJZ2l0IGFyY2hpdmUgLS1mb3JtYXQ9dGFyIEhFQUQ6ID5lbXB0eS50YXIgJiYKLQlwZXJsIC1lICJwcmludCBcIlxcMFwiIHggMTAyNDAiID4xMGtudWxzLnRhciAmJgogCXRlc3RfY21wX2JpbiAxMGtudWxzLnRhciBlbXB0eS50YXIKICcKIApAQCAtMTA2LDE2ICsxMDksMTIgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYXJjaGl2ZSBlbXB0eSBzdWJ0cmVlIHdpdGggbm8gcGF0aHNwZWMnICcKIAlnaXQgYXJjaGl2ZSAtLWZvcm1hdD10YXIgJHJvb3RfdHJlZSA+c3VidHJlZS1hbGwudGFyICYmCi0JbWFrZV9kaXIgZXh0cmFjdCAmJgotCSIkVEFSIiB4ZiBzdWJ0cmVlLWFsbC50YXIgLUMgZXh0cmFjdCAmJgotCWNoZWNrX2RpciBleHRyYWN0CisJdGVzdF9jbXBfYmluIDEwa251bHMudGFyIHN1YnRyZWUtYWxsLnRhcgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhcmNoaXZlIGVtcHR5IHN1YnRyZWUgYnkgZGlyZWN0IHBhdGhzcGVjJyAnCiAJZ2l0IGFyY2hpdmUgLS1mb3JtYXQ9dGFyICRyb290X3RyZWUgLS0gc3ViID5zdWJ0cmVlLXBhdGgudGFyICYmCi0JbWFrZV9kaXIgZXh0cmFjdCAmJgotCSIkVEFSIiB4ZiBzdWJ0cmVlLXBhdGgudGFyIC1DIGV4dHJhY3QgJiYKLQljaGVja19kaXIgZXh0cmFjdAorCXRlc3RfY21wX2JpbiAxMGtudWxzLnRhciBzdWJ0cmVlLXBhdGgudGFyCiAnCiAKIFpJUElORk89emlwaW5mbwpAQCAtMjA1LDQgKzIwNCwyMyBAQAogCWdyZXAgJHNpemUgYmlnLmxzdAogJwogCitidWlsZF90cmVlKCkgeworCXBlcmwgLWUgJworCQlteSAkaGFzaCA9ICRBUkdWWzBdOworCQlmb3JlYWNoIG15ICRvcmRlciAoMi4uNikgeworCQkJJGZpcnN0ID0gMTAgKiogJG9yZGVyOworCQkJZm9yZWFjaCBteSAkaSAoLTEzLi4tOSkgeworCQkJCW15ICRuYW1lID0gImEiIHggKCRmaXJzdCArICRpKTsKKwkJCQlwcmludCAiMTAwNjQ0IGJsb2IgJGhhc2hcdCRuYW1lXG4iCisJCQl9CisJCX0KKwknICIkMSIKK30KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndGFyIGFyY2hpdmUgd2l0aCBsb25nIHBhdGhzJyAnCisJYmxvYj0kKGVjaG8gZm9vIHwgZ2l0IGhhc2gtb2JqZWN0IC13IC0tc3RkaW4pICYmCisJdHJlZT0kKGJ1aWxkX3RyZWUgJGJsb2IgfCBnaXQgbWt0cmVlKSAmJgorCWdpdCBhcmNoaXZlIC1vIGxvbmdfcGF0aHMudGFyICR0cmVlCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTEwMC1tYWlsaW5mby5zaCBiL3QvdDUxMDAtbWFpbGluZm8uc2gKaW5kZXggOTY5MGRjYS4uMTQ3ZTYxNiAxMDA3NTUKLS0tIGEvdC90NTEwMC1tYWlsaW5mby5zaAorKysgYi90L3Q1MTAwLW1haWxpbmZvLnNoCkBAIC0yMTMsNCArMjEzLDE5IEBACiAJdGVzdCB6IiRzdWJqIiA9IHoiU3ViamVjdDogW290aGVyXSBtZXNzYWdlIgogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdtYWlsaW5mbyBoYW5kbGVzIHVudXN1YWwgaGVhZGVyIHdoaXRlc3BhY2UnICcKKwlnaXQgbWFpbGluZm8gL2Rldi9udWxsIC9kZXYvbnVsbCA+YWN0dWFsIDw8LVxFT0YgJiYKKwlGcm9tOlJlYWwgTmFtZSA8dXNlckBleGFtcGxlLmNvbT4KKwlTdWJqZWN0OiAgICBleHRyYSBzcGFjZXMKKwlFT0YKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlBdXRob3I6IFJlYWwgTmFtZQorCUVtYWlsOiB1c2VyQGV4YW1wbGUuY29tCisJU3ViamVjdDogZXh0cmEgc3BhY2VzCisKKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTE1MC1yZXF1ZXN0LXB1bGwuc2ggYi90L3Q1MTUwLXJlcXVlc3QtcHVsbC5zaAppbmRleCBmY2EwMDFlLi5jMTgxMWVhIDEwMDc1NQotLS0gYS90L3Q1MTUwLXJlcXVlc3QtcHVsbC5zaAorKysgYi90L3Q1MTUwLXJlcXVlc3QtcHVsbC5zaApAQCAtNCw2ICs0LDEyIEBACiAKIC4gLi90ZXN0LWxpYi5zaAogCitpZiAhIHRlc3RfaGF2ZV9wcmVyZXEgUEVSTAordGhlbgorCXNraXBfYWxsPSdza2lwcGluZyByZXF1ZXN0LXB1bGwgdGVzdHMsIHBlcmwgbm90IGF2YWlsYWJsZScKKwl0ZXN0X2RvbmUKK2ZpCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCiAKIAlnaXQgaW5pdCAtLWJhcmUgdXBzdHJlYW0uZ2l0ICYmCkBAIC0xNDQsNyArMTUwLDYgQEAKIAkJZ2l0IHJlcXVlc3QtcHVsbCBpbml0aWFsIG9yaWdpbiBtYXN0ZXI6Zm9yLXVwc3RyZWFtID4uLi9yZXF1ZXN0CiAJKSAmJgogCXNlZCAtbmYgcmVhZC1yZXF1ZXN0LnNlZCA8cmVxdWVzdCA+ZGlnZXN0ICYmCi0JY2F0IGRpZ2VzdCAmJgogCXsKIAkJcmVhZCB0YXNrICYmCiAJCXJlYWQgcmVwb3NpdG9yeSAmJgpAQCAtMTczLDcgKzE3OCw2IEBACiAJCWdpdCByZXF1ZXN0LXB1bGwgaW5pdGlhbCAiJGRvd25zdHJlYW1fdXJsIiA+Li4vcmVxdWVzdAogCSkgJiYKIAlzZWQgLW5mIHJlYWQtcmVxdWVzdC5zZWQgPHJlcXVlc3QgPmRpZ2VzdCAmJgotCWNhdCBkaWdlc3QgJiYKIAl7CiAJCXJlYWQgdGFzayAmJgogCQlyZWFkIHJlcG9zaXRvcnkgJiYKQEAgLTI0Niw0ICsyNTAsNTcgQEAKIAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXF1ZXN0LXB1bGwgcXVvdGVzIHJlZ2V4IG1ldGFjaGFyYWN0ZXJzIHByb3Blcmx5JyAnCisKKwlybSAtZnIgZG93bnN0cmVhbS5naXQgJiYKKwlnaXQgaW5pdCAtLWJhcmUgZG93bnN0cmVhbS5naXQgJiYKKwkoCisJCWNkIGxvY2FsICYmCisJCWdpdCBjaGVja291dCBpbml0aWFsICYmCisJCWdpdCBtZXJnZSAtLWZmLW9ubHkgbWFzdGVyICYmCisJCWdpdCB0YWcgLW1yZWxlYXNlIHYyLjAgJiYKKwkJZ2l0IHB1c2ggb3JpZ2luIHJlZnMvdGFncy92Mi4wOnJlZnMvdGFncy92Mi0wICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCByZXF1ZXN0LXB1bGwgaW5pdGlhbCAiJGRvd25zdHJlYW1fdXJsIiB0YWdzL3YyLjAgXAorCQkJMj4uLi9lcnIKKwkpICYmCisJZ3JlcCAiTm8gbWF0Y2ggZm9yIGNvbW1pdCAuKiIgZXJyICYmCisJZ3JlcCAiQXJlIHlvdSBzdXJlIHlvdSBwdXNoZWQiIGVycgorCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1bGwgcmVxdWVzdCB3aXRoIG1pc21hdGNoZWQgb2JqZWN0JyAnCisKKwlybSAtZnIgZG93bnN0cmVhbS5naXQgJiYKKwlnaXQgaW5pdCAtLWJhcmUgZG93bnN0cmVhbS5naXQgJiYKKwkoCisJCWNkIGxvY2FsICYmCisJCWdpdCBjaGVja291dCBpbml0aWFsICYmCisJCWdpdCBtZXJnZSAtLWZmLW9ubHkgbWFzdGVyICYmCisJCWdpdCBwdXNoIG9yaWdpbiBIRUFEOnJlZnMvdGFncy9mdWxsICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCByZXF1ZXN0LXB1bGwgaW5pdGlhbCAiJGRvd25zdHJlYW1fdXJsIiB0YWdzL2Z1bGwgXAorCQkJMj4uLi9lcnIKKwkpICYmCisJZ3JlcCAicG9pbnRzIHRvIGEgZGlmZmVyZW50IG9iamVjdCIgZXJyICYmCisJZ3JlcCAiQXJlIHlvdSBzdXJlIHlvdSBwdXNoZWQiIGVycgorCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1bGwgcmVxdWVzdCB3aXRoIHN0YWxlIG9iamVjdCcgJworCisJcm0gLWZyIGRvd25zdHJlYW0uZ2l0ICYmCisJZ2l0IGluaXQgLS1iYXJlIGRvd25zdHJlYW0uZ2l0ICYmCisJKAorCQljZCBsb2NhbCAmJgorCQlnaXQgY2hlY2tvdXQgaW5pdGlhbCAmJgorCQlnaXQgbWVyZ2UgLS1mZi1vbmx5IG1hc3RlciAmJgorCQlnaXQgcHVzaCBvcmlnaW4gcmVmcy90YWdzL2Z1bGwgJiYKKwkJZ2l0IHRhZyAtZiAtbSJUaGlydHktb25lIGRheXMiIGZ1bGwgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlcXVlc3QtcHVsbCBpbml0aWFsICIkZG93bnN0cmVhbV91cmwiIHRhZ3MvZnVsbCBcCisJCQkyPi4uL2VycgorCSkgJiYKKwlncmVwICJwb2ludHMgdG8gYSBkaWZmZXJlbnQgb2JqZWN0IiBlcnIgJiYKKwlncmVwICJBcmUgeW91IHN1cmUgeW91IHB1c2hlZCIgZXJyCisKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1MjAwLXVwZGF0ZS1zZXJ2ZXItaW5mby5zaCBiL3QvdDUyMDAtdXBkYXRlLXNlcnZlci1pbmZvLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjIxYTU4ZWUKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q1MjAwLXVwZGF0ZS1zZXJ2ZXItaW5mby5zaApAQCAtMCwwICsxLDQxIEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0nVGVzdCBnaXQgdXBkYXRlLXNlcnZlci1pbmZvJworCisuIC4vdGVzdC1saWIuc2gKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICd0ZXN0X2NvbW1pdCBmaWxlJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjcmVhdGUgaW5mby9yZWZzJyAnCisJZ2l0IHVwZGF0ZS1zZXJ2ZXItaW5mbyAmJgorCXRlc3RfcGF0aF9pc19maWxlIC5naXQvaW5mby9yZWZzCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmeSBhbmQgc3RvcmUgbXRpbWUnICcKKwl0ZXN0LXRvb2wgY2htdGltZSA9MCAuZ2l0L2luZm8vcmVmcyAmJgorCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0IC5naXQvaW5mby9yZWZzID5hCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2luZm8vcmVmcyBpcyBub3QgbmVlZGxlc3NseSBvdmVyd3JpdHRlbicgJworCWdpdCB1cGRhdGUtc2VydmVyLWluZm8gJiYKKwl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCAuZ2l0L2luZm8vcmVmcyA+YiAmJgorCXRlc3RfY21wIGEgYgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdpbmZvL3JlZnMgY2FuIGJlIGZvcmNlZCB0byB1cGRhdGUnICcKKwlnaXQgdXBkYXRlLXNlcnZlci1pbmZvIC1mICYmCisJdGVzdC10b29sIGNobXRpbWUgLS1nZXQgLmdpdC9pbmZvL3JlZnMgPmIgJiYKKwkhIHRlc3RfY21wIGEgYgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdpbmZvL3JlZnMgdXBkYXRlcyB3aGVuIGNoYW5nZXMgYXJlIG1hZGUnICcKKwl0ZXN0LXRvb2wgY2htdGltZSA9MCAuZ2l0L2luZm8vcmVmcyAmJgorCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0IC5naXQvaW5mby9yZWZzID5iICYmCisJdGVzdF9jbXAgYSBiICYmCisJZ2l0IHVwZGF0ZS1yZWYgcmVmcy9oZWFkcy9mb28gSEVBRCAmJgorCWdpdCB1cGRhdGUtc2VydmVyLWluZm8gJiYKKwl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCAuZ2l0L2luZm8vcmVmcyA+YiAmJgorCSEgdGVzdF9jbXAgYSBiCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTMwMi1wYWNrLWluZGV4LnNoIGIvdC90NTMwMi1wYWNrLWluZGV4LnNoCmluZGV4IDkxZDUxYjMuLmFkMDdmMmYgMTAwNzU1Ci0tLSBhL3QvdDUzMDItcGFjay1pbmRleC5zaAorKysgYi90L3Q1MzAyLXBhY2staW5kZXguc2gKQEAgLTYsOSArNiwxMCBAQAogdGVzdF9kZXNjcmlwdGlvbj0ncGFjayBpbmRleCB3aXRoIDY0LWJpdCBvZmZzZXRzIGFuZCBvYmplY3QgQ1JDJwogLiAuL3Rlc3QtbGliLnNoCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAotICAgICdzZXR1cCcgXAotICAgICdybSAtcmYgLmdpdCAmJgordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICcKKyAgICAgdGVzdF9vaWRfaW5pdCAmJgorICAgICByYXdzej0kKHRlc3Rfb2lkIHJhd3N6KSAmJgorICAgICBybSAtcmYgLmdpdCAmJgogICAgICBnaXQgaW5pdCAmJgogICAgICBnaXQgY29uZmlnIHBhY2sudGhyZWFkcyAxICYmCiAgICAgIGk9MSAmJgpAQCAtMzIsNyArMzMsOCBAQAogCSBlY2hvICR0cmVlICYmCiAJIGdpdCBscy10cmVlICR0cmVlIHwgc2VkIC1lICJzLy4qIFxcKFswLTlhLWZdKlxcKQkuKi9cXDEvIgogICAgICB9ID5vYmotbGlzdCAmJgotICAgICBnaXQgdXBkYXRlLXJlZiBIRUFEICRjb21taXQnCisgICAgIGdpdCB1cGRhdGUtcmVmIEhFQUQgJGNvbW1pdAorJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIFwKICAgICAncGFjay1vYmplY3RzIHdpdGggaW5kZXggdmVyc2lvbiAxJyBcCkBAIC0xNTcsMTAgKzE1OSwxMSBAQAogICAgICBvZmZzXzEwMT0kKGluZGV4X29ial9vZmZzZXQgMS5pZHggJHNoYTFfMTAxKSAmJgogICAgICBucl8wOTk9JChpbmRleF9vYmpfbnIgMS5pZHggJHNoYTFfMDk5KSAmJgogICAgICBjaG1vZCArdyAiLmdpdC9vYmplY3RzL3BhY2svcGFjay0ke3BhY2sxfS5wYWNrIiAmJgorICAgICByZWNvcmRzej0kKChyYXdzeiArIDQpKSAmJgogICAgICBkZCBvZj0iLmdpdC9vYmplY3RzL3BhY2svcGFjay0ke3BhY2sxfS5wYWNrIiBzZWVrPSQoKCRvZmZzXzEwMSArIDEpKSBcCiAgICAgICAgIGlmPSIuZ2l0L29iamVjdHMvcGFjay9wYWNrLSR7cGFjazF9LmlkeCIgXAotICAgICAgICBza2lwPSQoKDQgKyAyNTYgKiA0ICsgJG5yXzA5OSAqIDI0KSkgXAotICAgICAgICBicz0xIGNvdW50PTIwIGNvbnY9bm90cnVuYyAmJgorICAgICAgICBza2lwPSQoKDQgKyAyNTYgKiA0ICsgJG5yXzA5OSAqIHJlY29yZHN6KSkgXAorICAgICAgICBicz0xIGNvdW50PSRyYXdzeiBjb252PW5vdHJ1bmMgJiYKICAgICAgZ2l0IGNhdC1maWxlIGJsb2IgJHNoYTFfMTAxID4gZmlsZV8xMDFfZm9vMScKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBcCkBAIC0yMDAsOCArMjAzLDggQEAKICAgICAgY2htb2QgK3cgIi5naXQvb2JqZWN0cy9wYWNrL3BhY2stJHtwYWNrMX0ucGFjayIgJiYKICAgICAgZGQgb2Y9Ii5naXQvb2JqZWN0cy9wYWNrL3BhY2stJHtwYWNrMX0ucGFjayIgc2Vlaz0kKCgkb2Zmc18xMDEgKyAxKSkgXAogICAgICAgICBpZj0iLmdpdC9vYmplY3RzL3BhY2svcGFjay0ke3BhY2sxfS5pZHgiIFwKLSAgICAgICAgc2tpcD0kKCg4ICsgMjU2ICogNCArICRucl8wOTkgKiAyMCkpIFwKLSAgICAgICAgYnM9MSBjb3VudD0yMCBjb252PW5vdHJ1bmMgJiYKKyAgICAgICAgc2tpcD0kKCg4ICsgMjU2ICogNCArICRucl8wOTkgKiByYXdzeikpIFwKKyAgICAgICAgYnM9MSBjb3VudD0kcmF3c3ogY29udj1ub3RydW5jICYmCiAgICAgIGdpdCBjYXQtZmlsZSBibG9iICRzaGExXzEwMSA+IGZpbGVfMTAxX2ZvbzInCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgXApAQCAtMjI2LDcgKzIyOSw3IEBACiAgICAgIG5yPSQoaW5kZXhfb2JqX25yICIuZ2l0L29iamVjdHMvcGFjay9wYWNrLSR7cGFjazF9LmlkeCIgJG9iaikgJiYKICAgICAgY2htb2QgK3cgIi5naXQvb2JqZWN0cy9wYWNrL3BhY2stJHtwYWNrMX0uaWR4IiAmJgogICAgICBwcmludGYgeHh4eCB8IGRkIG9mPSIuZ2l0L29iamVjdHMvcGFjay9wYWNrLSR7cGFjazF9LmlkeCIgY29udj1ub3RydW5jIFwKLSAgICAgICAgYnM9MSBjb3VudD00IHNlZWs9JCgoOCArIDI1NiAqIDQgKyAkKHdjIC1sIDxvYmotbGlzdCkgKiAyMCArICRuciAqIDQpKSAmJgorICAgICAgICBicz0xIGNvdW50PTQgc2Vlaz0kKCg4ICsgMjU2ICogNCArICQod2MgLWwgPG9iai1saXN0KSAqIHJhd3N6ICsgJG5yICogNCkpICYmCiAgICAgICggd2hpbGUgcmVhZCBvYmoKICAgICAgICBkbyBnaXQgY2F0LWZpbGUgLXAgJG9iaiA+L2Rldi9udWxsIHx8IGV4aXQgMQogICAgICAgIGRvbmUgPG9iai1saXN0ICkgJiYKZGlmZiAtLWdpdCBhL3QvdDUzMDQtcHJ1bmUuc2ggYi90L3Q1MzA0LXBydW5lLnNoCmluZGV4IDI3MGRhMjEuLmRmNjBmMTggMTAwNzU1Ci0tLSBhL3QvdDUzMDQtcHJ1bmUuc2gKKysrIGIvdC90NTMwNC1wcnVuZS5zaApAQCAtMTE4LDEwICsxMTgsMTAgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncHJ1bmU6IHBydW5lIGZvcm1lciBIRUFEIGFmdGVyIGNoZWNraW5nIG91dCBicmFuY2gnICcKIAotCWhlYWRfc2hhMT0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKwloZWFkX29pZD0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKIAlnaXQgY2hlY2tvdXQgLS1xdWlldCBtYXN0ZXIgJiYKIAlnaXQgcHJ1bmUgLXYgPnBydW5lX2FjdHVhbCAmJgotCWdyZXAgIiRoZWFkX3NoYTEiIHBydW5lX2FjdHVhbAorCWdyZXAgIiRoZWFkX29pZCIgcHJ1bmVfYWN0dWFsCiAKICcKIApAQCAtMjY1LDE1ICsyNjUsMjcgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncHJ1bmUgLmdpdC9zaGFsbG93JyAnCi0JU0hBMT0kKGVjaG8gaGl8Z2l0IGNvbW1pdC10cmVlIEhFQURee3RyZWV9KSAmJgotCWVjaG8gJFNIQTEgPi5naXQvc2hhbGxvdyAmJgorCW9pZD0kKGVjaG8gaGl8Z2l0IGNvbW1pdC10cmVlIEhFQURee3RyZWV9KSAmJgorCWVjaG8gJG9pZCA+LmdpdC9zaGFsbG93ICYmCiAJZ2l0IHBydW5lIC0tZHJ5LXJ1biA+b3V0ICYmCi0JZ3JlcCAkU0hBMSAuZ2l0L3NoYWxsb3cgJiYKLQlncmVwICRTSEExIG91dCAmJgorCWdyZXAgJG9pZCAuZ2l0L3NoYWxsb3cgJiYKKwlncmVwICRvaWQgb3V0ICYmCiAJZ2l0IHBydW5lICYmCiAJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9zaGFsbG93CiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BydW5lIC5naXQvc2hhbGxvdyB3aGVuIHRoZXJlIGFyZSBubyBsb29zZSBvYmplY3RzJyAnCisJb2lkPSQoZWNobyBoaXxnaXQgY29tbWl0LXRyZWUgSEVBRF57dHJlZX0pICYmCisJZWNobyAkb2lkID4uZ2l0L3NoYWxsb3cgJiYKKwlnaXQgdXBkYXRlLXJlZiByZWZzL2hlYWRzL3NoYWxsb3ctdGlwICRvaWQgJiYKKwlnaXQgcmVwYWNrIC1hZCAmJgorCSMgdmVyaWZ5IGFzc3VtcHRpb24gdGhhdCBhbGwgbG9vc2Ugb2JqZWN0cyBhcmUgZ29uZQorCWdpdCBjb3VudC1vYmplY3RzIHwgZ3JlcCBeMCAmJgorCWdpdCBwcnVuZSAmJgorCWVjaG8gJG9pZCA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IC5naXQvc2hhbGxvdworJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcnVuZTogaGFuZGxlIGFsdGVybmF0ZSBvYmplY3QgZGF0YWJhc2UnICcKIAl0ZXN0X2NyZWF0ZV9yZXBvIEEgJiYKIAlnaXQgLUMgQSBjb21taXQgLS1hbGxvdy1lbXB0eSAtbSAiaW5pdGlhbCBjb21taXQiICYmCkBAIC0zMTQsOCArMzI2LDggQEAKIAkJZ2l0IHJlc2V0IC0taGFyZCBIRUFEXgogCSkgJiYKIAlnaXQgcHJ1bmUgLS1leHBpcmU9bm93ICYmCi0JU0hBMT1gZ2l0IGhhc2gtb2JqZWN0IGV4cGVjdGVkYCAmJgotCWdpdCAtQyB0aGlyZC13b3JrdHJlZSBzaG93ICIkU0hBMSIgPmFjdHVhbCAmJgorCW9pZD1gZ2l0IGhhc2gtb2JqZWN0IGV4cGVjdGVkYCAmJgorCWdpdCAtQyB0aGlyZC13b3JrdHJlZSBzaG93ICIkb2lkIiA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKQEAgLTMyOSw0ICszNDEsMTIgQEAKIAlnaXQgcHJ1bmUgLS1uby1leHBpcmUKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAndHJpdmlhbCBwcnVuZSB3aXRoIGJpdG1hcHMgZW5hYmxlZCcgJworCWdpdCByZXBhY2sgLWFkYiAmJgorCWJsb2I9JChlY2hvIGJpdG1hcC11bnJlYWNoYWJsZS1ibG9iIHwgZ2l0IGhhc2gtb2JqZWN0IC13IC0tc3RkaW4pICYmCisJZ2l0IHBydW5lIC0tZXhwaXJlPW5vdyAmJgorCWdpdCBjYXQtZmlsZSAtZSBIRUFEICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNhdC1maWxlIC1lICRibG9iCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTMwNy1wYWNrLW1pc3NpbmctY29tbWl0LnNoIGIvdC90NTMwNy1wYWNrLW1pc3NpbmctY29tbWl0LnNoCmluZGV4IGRhY2I0NDAuLmY0MzM4YWIgMTAwNzU1Ci0tLSBhL3QvdDUzMDctcGFjay1taXNzaW5nLWNvbW1pdC5zaAorKysgYi90L3Q1MzA3LXBhY2stbWlzc2luZy1jb21taXQuc2gKQEAgLTI0LDExICsyNCwxMSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXYtbGlzdCBub3RpY2VzIGNvcnJ1cHRpb24gKDEpJyAnCi0JdGVzdF9tdXN0X2ZhaWwgZW52IEdJVF9URVNUX0NPTU1JVF9HUkFQSD0wIGdpdCByZXYtbGlzdCBIRUFECisJdGVzdF9tdXN0X2ZhaWwgZW52IEdJVF9URVNUX0NPTU1JVF9HUkFQSD0wIGdpdCAtYyBjb3JlLmNvbW1pdEdyYXBoPWZhbHNlIHJldi1saXN0IEhFQUQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmV2LWxpc3Qgbm90aWNlcyBjb3JydXB0aW9uICgyKScgJwotCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVEVTVF9DT01NSVRfR1JBUEg9MCBnaXQgcmV2LWxpc3QgLS1vYmplY3RzIEhFQUQKKwl0ZXN0X211c3RfZmFpbCBlbnYgR0lUX1RFU1RfQ09NTUlUX0dSQVBIPTAgZ2l0IC1jIGNvcmUuY29tbWl0R3JhcGg9ZmFsc2UgcmV2LWxpc3QgLS1vYmplY3RzIEhFQUQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncGFjay1vYmplY3RzIG5vdGljZXMgY29ycnVwdGlvbicgJwpkaWZmIC0tZ2l0IGEvdC90NTMwOS1wYWNrLWRlbHRhLWN5Y2xlcy5zaCBiL3QvdDUzMDktcGFjay1kZWx0YS1jeWNsZXMuc2gKaW5kZXggNDkxNTU2ZGEuLjU1Yjc4NzYgMTAwNzU1Ci0tLSBhL3QvdDUzMDktcGFjay1kZWx0YS1jeWNsZXMuc2gKKysrIGIvdC90NTMwOS1wYWNrLWRlbHRhLWN5Y2xlcy5zaApAQCAtNCwxNSArNCw5IEBACiAuIC4vdGVzdC1saWIuc2gKIC4gIiRURVNUX0RJUkVDVE9SWSIvbGliLXBhY2suc2gKIAotaWYgISB0ZXN0X2hhdmVfcHJlcmVxIFNIQTEKLXRoZW4KLSAgICAgICBza2lwX2FsbD0nbm90IHVzaW5nIFNIQS0xIGZvciBvYmplY3RzJwotICAgICAgIHRlc3RfZG9uZQotZmkKLQogIyBUd28gc2ltaWxhci1pc2ggb2JqZWN0cyB0aGF0IHdlIGhhdmUgY29tcHV0ZWQgZGVsdGFzIGJldHdlZW4uCi1BPTAxZDc3MTM2NjZmNGRlODIyNzc2Yzc2MjJjMTBmMWIwN2RlMjgwZGMKLUI9ZTY4ZmU4MTI5YjU0NmIxMDFhZWU5NTEwYzUzMjhlN2YyMWNhMWQxOAorQT0kKHRlc3Rfb2lkIHBhY2tsaWJfN18wKQorQj0kKHRlc3Rfb2lkIHBhY2tsaWJfN183NikKIAogIyBkb3VibGUtY2hlY2sgb3VyIGhhbmQtY29uc3R1Y3RlZCBwYWNrcwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnaW5kZXgtcGFjayB3b3JrcyB3aXRoIGEgc2luZ2xlIGRlbHRhIChBLT5CKScgJwpAQCAtNjIsMTMgKzU2LDEzIEBACiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGluZGV4LXBhY2sgLS1maXgtdGhpbiAtLXN0ZGluIDxjeWNsZS5wYWNrCiAnCiAKLXRlc3RfZXhwZWN0X2ZhaWx1cmUgJ2ZhaWxvdmVyIHRvIGFuIG9iamVjdCBpbiBhbm90aGVyIHBhY2snICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZhaWxvdmVyIHRvIGFuIG9iamVjdCBpbiBhbm90aGVyIHBhY2snICcKIAljbGVhcl9wYWNrcyAmJgogCWdpdCBpbmRleC1wYWNrIC0tc3RkaW4gPGFiLnBhY2sgJiYKLQlnaXQgaW5kZXgtcGFjayAtLXN0ZGluIC0tZml4LXRoaW4gPGN5Y2xlLnBhY2sKKwl0ZXN0X211c3RfZmFpbCBnaXQgaW5kZXgtcGFjayAtLXN0ZGluIC0tZml4LXRoaW4gPGN5Y2xlLnBhY2sKICcKIAotdGVzdF9leHBlY3RfZmFpbHVyZSAnZmFpbG92ZXIgdG8gYSBkdXBsaWNhdGUgb2JqZWN0IGluIHRoZSBzYW1lIHBhY2snICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZhaWxvdmVyIHRvIGEgZHVwbGljYXRlIG9iamVjdCBpbiB0aGUgc2FtZSBwYWNrJyAnCiAJY2xlYXJfcGFja3MgJiYKIAl7CiAJCXBhY2tfaGVhZGVyIDMgJiYKQEAgLTc3LDcgKzcxLDcgQEAKIAkJcGFja19vYmogJEEKIAl9ID5yZWNvdmVyYWJsZS5wYWNrICYmCiAJcGFja190cmFpbGVyIHJlY292ZXJhYmxlLnBhY2sgJiYKLQlnaXQgaW5kZXgtcGFjayAtLWZpeC10aGluIC0tc3RkaW4gPHJlY292ZXJhYmxlLnBhY2sKKwl0ZXN0X211c3RfZmFpbCBnaXQgaW5kZXgtcGFjayAtLWZpeC10aGluIC0tc3RkaW4gPHJlY292ZXJhYmxlLnBhY2sKICcKIAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1MzEwLXBhY2stYml0bWFwcy5zaCBiL3QvdDUzMTAtcGFjay1iaXRtYXBzLnNoCmluZGV4IDgyZDdmN2YuLjgzMTg3ODEgMTAwNzU1Ci0tLSBhL3QvdDUzMTAtcGFjay1iaXRtYXBzLnNoCisrKyBiL3QvdDUzMTAtcGFjay1iaXRtYXBzLnNoCkBAIC0yMSwyMSArMjEsMTQgQEAKIH0KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgcmVwbyB3aXRoIG1vZGVyYXRlLXNpemVkIGhpc3RvcnknICcKLQlmb3IgaSBpbiAkKHRlc3Rfc2VxIDEgMTApCi0JZG8KLQkJdGVzdF9jb21taXQgJGkKLQlkb25lICYmCisJdGVzdF9jb21taXRfYnVsayAtLWlkPWZpbGUgMTAwICYmCiAJZ2l0IGNoZWNrb3V0IC1iIG90aGVyIEhFQUR+NSAmJgotCWZvciBpIGluICQodGVzdF9zZXEgMSAxMCkKLQlkbwotCQl0ZXN0X2NvbW1pdCBzaWRlLSRpCi0JZG9uZSAmJgorCXRlc3RfY29tbWl0X2J1bGsgLS1pZD1zaWRlIDEwICYmCiAJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgogCWJpdG1hcHRpcD0kKGdpdCByZXYtcGFyc2UgbWFzdGVyKSAmJgogCWJsb2I9JChlY2hvIHRhZ2dlZC1ibG9iIHwgZ2l0IGhhc2gtb2JqZWN0IC13IC0tc3RkaW4pICYmCiAJZ2l0IHRhZyB0YWdnZWQtYmxvYiAkYmxvYiAmJgotCWdpdCBjb25maWcgcmVwYWNrLndyaXRlYml0bWFwcyB0cnVlICYmCi0JZ2l0IGNvbmZpZyBwYWNrLndyaXRlYml0bWFwaGFzaGNhY2hlIHRydWUKKwlnaXQgY29uZmlnIHJlcGFjay53cml0ZWJpdG1hcHMgdHJ1ZQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmdWxsIHJlcGFjayBjcmVhdGVzIGJpdG1hcHMnICcKQEAgLTgxLDE2ICs3NCwyNCBAQAogCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAJJwogCi0JdGVzdF9leHBlY3Rfc3VjY2VzcyAiZW51bWVyYXRlIC0tb2JqZWN0cyAoJHN0YXRlKSIgJwotCQlnaXQgcmV2LWxpc3QgLS1vYmplY3RzIC0tdXNlLWJpdG1hcC1pbmRleCBIRUFEID50bXAgJiYKLQkJY3V0IC1kIiAiIC1mMSA8dG1wID50bXAyICYmCi0JCXNvcnQgPHRtcDIgPmFjdHVhbCAmJgotCQlnaXQgcmV2LWxpc3QgLS1vYmplY3RzIEhFQUQgPnRtcCAmJgotCQljdXQgLWQiICIgLWYxIDx0bXAgPnRtcDIgJiYKLQkJc29ydCA8dG1wMiA+ZXhwZWN0ICYmCisJdGVzdF9leHBlY3Rfc3VjY2VzcyAiY291bnRpbmcgb2JqZWN0cyB2aWEgYml0bWFwICgkc3RhdGUpIiAnCisJCWdpdCByZXYtbGlzdCAtLWNvdW50IC0tb2JqZWN0cyBIRUFEID5leHBlY3QgJiYKKwkJZ2l0IHJldi1saXN0IC0tdXNlLWJpdG1hcC1pbmRleCAtLWNvdW50IC0tb2JqZWN0cyBIRUFEID5hY3R1YWwgJiYKIAkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogCScKIAorCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgImVudW1lcmF0ZSBjb21taXRzICgkc3RhdGUpIiAnCisJCWdpdCByZXYtbGlzdCAtLXVzZS1iaXRtYXAtaW5kZXggSEVBRCA+YWN0dWFsICYmCisJCWdpdCByZXYtbGlzdCBIRUFEID5leHBlY3QgJiYKKwkJdGVzdF9iaXRtYXBfdHJhdmVyc2FsIC0tbm8tY29uZmlybS1iaXRtYXBzIGV4cGVjdCBhY3R1YWwKKwknCisKKwl0ZXN0X2V4cGVjdF9zdWNjZXNzICJlbnVtZXJhdGUgLS1vYmplY3RzICgkc3RhdGUpIiAnCisJCWdpdCByZXYtbGlzdCAtLW9iamVjdHMgLS11c2UtYml0bWFwLWluZGV4IEhFQUQgPmFjdHVhbCAmJgorCQlnaXQgcmV2LWxpc3QgLS1vYmplY3RzIEhFQUQgPmV4cGVjdCAmJgorCQl0ZXN0X2JpdG1hcF90cmF2ZXJzYWwgZXhwZWN0IGFjdHVhbAorCScKKwogCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgImJpdG1hcCAtLW9iamVjdHMgaGFuZGxlcyBub24tY29tbWl0IG9iamVjdHMgKCRzdGF0ZSkiICcKIAkJZ2l0IHJldi1saXN0IC0tb2JqZWN0cyAtLXVzZS1iaXRtYXAtaW5kZXggSEVBRCB0YWdnZWQtYmxvYiA+YWN0dWFsICYmCiAJCWdyZXAgJGJsb2IgYWN0dWFsCkBAIC0xMDYsMTEgKzEwNywyMiBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncGFydGlhbCBjbG9uZSBmcm9tIGJpdG1hcHBlZCByZXBvc2l0b3J5JyAnCisJdGVzdF9jb25maWcgdXBsb2FkcGFjay5hbGxvd2ZpbHRlciB0cnVlICYmCisJZ2l0IGNsb25lIC0tbm8tbG9jYWwgLS1iYXJlIC0tZmlsdGVyPWJsb2I6bm9uZSAuIHBhcnRpYWwtY2xvbmUuZ2l0ICYmCisJKAorCQljZCBwYXJ0aWFsLWNsb25lLmdpdCAmJgorCQlwYWNrPSQoZWNobyBvYmplY3RzL3BhY2svKi5wYWNrKSAmJgorCQlnaXQgdmVyaWZ5LXBhY2sgLXYgIiRwYWNrIiA+aGF2ZSAmJgorCQlhd2sgIi9ibG9iLyB7IHByaW50IFwkMSB9IiA8aGF2ZSA+YmxvYnMgJiYKKwkJIyB3ZSBleHBlY3QgdGhpcyBzaW5nbGUgYmxvYiBiZWNhdXNlIG9mIHRoZSBkaXJlY3QgcmVmCisJCWdpdCByZXYtcGFyc2UgcmVmcy90YWdzL3RhZ2dlZC1ibG9iID5leHBlY3QgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGJsb2JzCisJKQorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBmdXJ0aGVyIG5vbi1iaXRtYXBwZWQgY29tbWl0cycgJwotCWZvciBpIGluICQodGVzdF9zZXEgMSAxMCkKLQlkbwotCQl0ZXN0X2NvbW1pdCBmdXJ0aGVyLSRpCi0JZG9uZQorCXRlc3RfY29tbWl0X2J1bGsgLS1pZD1mdXJ0aGVyIDEwCiAnCiAKIHJldl9saXN0X3Rlc3RzICdwYXJ0aWFsIGJpdG1hcCcKQEAgLTI2OSw3ICsyODEsNyBAQAogCWdpdCBjbG9uZSAtLWJhcmUgLiBjb21wYXQtamdpdC5naXQgJiYKIAkoCiAJCWNkIGNvbXBhdC1qZ2l0LmdpdCAmJgotCQlybSAtZiAuZ2l0L29iamVjdHMvcGFjay8qLmJpdG1hcCAmJgorCQlybSAtZiBvYmplY3RzL3BhY2svKi5iaXRtYXAgJiYKIAkJamdpdCBnYyAmJgogCQlnaXQgcmV2LWxpc3QgLS10ZXN0LWJpdG1hcCBIRUFECiAJKQpkaWZmIC0tZ2l0IGEvdC90NTMxMy1wYWNrLWJvdW5kcy1jaGVja3Muc2ggYi90L3Q1MzEzLXBhY2stYm91bmRzLWNoZWNrcy5zaAppbmRleCBmMTcwOGQ0Li4yYTQ1NTdlIDEwMDc1NQotLS0gYS90L3Q1MzEzLXBhY2stYm91bmRzLWNoZWNrcy5zaAorKysgYi90L3Q1MzEzLXBhY2stYm91bmRzLWNoZWNrcy5zaApAQCAtMzgsMTYgKzM4LDI3IEBACiAjIGZvciB0aGUgaW5pdGlhbCwgYW5kIGFub3RoZXIgb2ZzKDQqbnIpIHBhc3QgdGhhdCBmb3IgdGhlIGV4dGVuZGVkLgogIwogb2ZzX3RhYmxlICgpIHsKLQllY2hvICQoKDQgKyA0ICsgNCoyNTYgKyAyMCokMSArIDQqJDEpKQorCWVjaG8gJCgoNCArIDQgKyA0KjI1NiArICQodGVzdF9vaWQgcmF3c3opKiQxICsgNCokMSkpCiB9CiBleHRlbmRlZF90YWJsZSAoKSB7CiAJZWNobyAkKCgkKG9mc190YWJsZSAiJDEiKSArIDQqJDEpKQogfQogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCcgJworCXRlc3Rfb2lkX2luaXQgJiYKKwl0ZXN0X29pZF9jYWNoZSA8PC1FT0YKKwlvaWQwMDAgc2hhMToxNDg1CisJb2lkMDAwIHNoYTI1Njo0MjIyCisKKwlvaWRmZmYgc2hhMTo3NAorCW9pZGZmZiBzaGEyNTY6MTM1MAorCUVPRgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXQgdXAgYmFzZSBwYWNrZmlsZSBhbmQgdmFyaWFibGVzJyAnCiAJIyB0aGUgaGFzaCBvZiB0aGlzIGNvbnRlbnQgc3RhcnRzIHdpdGggZmYsIHdoaWNoCiAJIyBtYWtlcyBzb21lIGxhdGVyIGNvbXB1dGF0aW9ucyBtdWNoIHNpbXBsZXIKLQllY2hvIDc0ID5maWxlICYmCisJZWNobyAkKHRlc3Rfb2lkIG9pZGZmZikgPmZpbGUgJiYKIAlnaXQgYWRkIGZpbGUgJiYKIAlnaXQgY29tbWl0IC1tIGJhc2UgJiYKIAlnaXQgcmVwYWNrIC1hZCAmJgpAQCAtMTQwLDEwICsxNTEsMTAgQEAKIAkjIGFuIGV4dGVuZGVkIHRhYmxlIChpZiB0aGUgZmlyc3Qgb2JqZWN0IHdlcmUgbGFyZ2VyIHRoYW4gMl4zMSkuCiAJIwogCSMgTm90ZSB0aGF0IHRoZSB2YWx1ZSBpcyBpbXBvcnRhbnQgaGVyZS4gV2Ugd2FudCAkb2JqZWN0IGFzCi0JIyB0aGUgc2Vjb25kIGVudHJ5IGluIHNvcnRlZC1zaGExIG9yZGVyLiBUaGUgc2hhMSBvZiAxNDg1IHN0YXJ0cworCSMgdGhlIHNlY29uZCBlbnRyeSBpbiBzb3J0ZWQtaGFzaCBvcmRlci4gVGhlIGhhc2ggb2YgdGhpcyBvYmplY3Qgc3RhcnRzCiAJIyB3aXRoICIwMDAiLCB3aGljaCBzb3J0cyBiZWZvcmUgdGhhdCBvZiAkb2JqZWN0ICh3aGljaCBzdGFydHMKIAkjIHdpdGggImZmZiIpLgotCXNlY29uZD0kKGVjaG8gMTQ4NSB8IGdpdCBoYXNoLW9iamVjdCAtdyAtLXN0ZGluKSAmJgorCXNlY29uZD0kKHRlc3Rfb2lkIG9pZDAwMCB8IGdpdCBoYXNoLW9iamVjdCAtdyAtLXN0ZGluKSAmJgogCWRvX3BhY2sgIiRvYmplY3QgJHNlY29uZCIgLS1pbmRleC12ZXJzaW9uPTIgJiYKIAogCSMgV2UgaGF2ZSB0byBtYWtlIGV4dHJhIHJvb20gZm9yIHRoZSB0YWJsZSwgc28gd2UgY2Fubm90CmRpZmYgLS1naXQgYS90L3Q1MzE0LXBhY2stY3ljbGUtZGV0ZWN0aW9uLnNoIGIvdC90NTMxNC1wYWNrLWN5Y2xlLWRldGVjdGlvbi5zaAppbmRleCBlNTI1NDY2Li4wYWVjODYxIDEwMDc1NQotLS0gYS90L3Q1MzE0LXBhY2stY3ljbGUtZGV0ZWN0aW9uLnNoCisrKyBiL3QvdDUzMTQtcGFjay1jeWNsZS1kZXRlY3Rpb24uc2gKQEAgLTUzLDcgKzUzLDcgQEAKIAogCiAKLSMgQ3JlYXRlIGEgcGFjayBjb250YWluaW5nIHRoZSB0aGUgdHJlZSAkMSBhbmQgYmxvYiAkMTpmaWxlLCB3aXRoCisjIENyZWF0ZSBhIHBhY2sgY29udGFpbmluZyB0aGUgdHJlZSAkMSBhbmQgYmxvYiAkMTpmaWxlLCB3aXRoCiAjIHRoZSBsYXR0ZXIgc3RvcmVkIGFzIGEgZGVsdGEgYWdhaW5zdCAkMjpmaWxlLgogIwogIyBXZSBjb252aW5jZSBwYWNrLW9iamVjdHMgdG8gbWFrZSB0aGUgZGVsdGEgaW4gdGhlIGRpcmVjdGlvbiBvZiBvdXIgY2hvb3NpbmcKZGlmZiAtLWdpdCBhL3QvdDUzMTUtcGFjay1vYmplY3RzLWNvbXByZXNzaW9uLnNoIGIvdC90NTMxNS1wYWNrLW9iamVjdHMtY29tcHJlc3Npb24uc2gKaW5kZXggMzRjNDdkYS4uZGY5NzBkNyAxMDA3NTUKLS0tIGEvdC90NTMxNS1wYWNrLW9iamVjdHMtY29tcHJlc3Npb24uc2gKKysrIGIvdC90NTMxNS1wYWNrLW9iamVjdHMtY29tcHJlc3Npb24uc2gKQEAgLTcsNyArNyw3IEBACiAjIFRoaXMgc2hvdWxkIGJlIG1vdmVkIHRvIHRlc3QtbGliLnNoIHRvZ2V0aGVyIHdpdGggdGhlCiAjIGNvcHkgaW4gdDAwMjEgYWZ0ZXIgYm90aCB0b3BpY3MgaGF2ZSBncmFkdWF0ZWQgdG8gJ21hc3RlcicuCiBmaWxlX3NpemUgKCkgewotCXBlcmwgLWUgJ3ByaW50IC1zICRBUkdWWzBdJyAiJDEiCisJdGVzdC10b29sIHBhdGgtdXRpbHMgZmlsZS1zaXplICIkMSIKIH0KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBzZXR1cCAnCmRpZmYgLS1naXQgYS90L3Q1MzE3LXBhY2stb2JqZWN0cy1maWx0ZXItb2JqZWN0cy5zaCBiL3QvdDUzMTctcGFjay1vYmplY3RzLWZpbHRlci1vYmplY3RzLnNoCmluZGV4IDI0NTQxZWEuLmRjMDQ0NjUgMTAwNzU1Ci0tLSBhL3QvdDUzMTctcGFjay1vYmplY3RzLWZpbHRlci1vYmplY3RzLnNoCisrKyBiL3QvdDUzMTctcGFjay1vYmplY3RzLWZpbHRlci1vYmplY3RzLnNoCkBAIC0yNSw3ICsyNSw3IEBACiAJYXdrIC1mIHByaW50XzIuYXdrIGxzX2ZpbGVzX3Jlc3VsdCB8CiAJc29ydCA+ZXhwZWN0ZWQgJiYKIAotCWdpdCAtQyByMSBwYWNrLW9iamVjdHMgLS1yZXYgLS1zdGRvdXQgPmFsbC5wYWNrIDw8LUVPRiAmJgorCWdpdCAtQyByMSBwYWNrLW9iamVjdHMgLS1yZXZzIC0tc3Rkb3V0ID5hbGwucGFjayA8PC1FT0YgJiYKIAlIRUFECiAJRU9GCiAJZ2l0IC1DIHIxIGluZGV4LXBhY2sgLi4vYWxsLnBhY2sgJiYKQEAgLTM5LDE4ICszOSwxMyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgYmxvYjpub25lIHBhY2tmaWxlIGhhcyBubyBibG9icycgJwotCWdpdCAtQyByMSBwYWNrLW9iamVjdHMgLS1yZXYgLS1zdGRvdXQgLS1maWx0ZXI9YmxvYjpub25lID5maWx0ZXIucGFjayA8PC1FT0YgJiYKKwlnaXQgLUMgcjEgcGFjay1vYmplY3RzIC0tcmV2cyAtLXN0ZG91dCAtLWZpbHRlcj1ibG9iOm5vbmUgPmZpbHRlci5wYWNrIDw8LUVPRiAmJgogCUhFQUQKIAlFT0YKIAlnaXQgLUMgcjEgaW5kZXgtcGFjayAuLi9maWx0ZXIucGFjayAmJgogCiAJZ2l0IC1DIHIxIHZlcmlmeS1wYWNrIC12IC4uL2ZpbHRlci5wYWNrID52ZXJpZnlfcmVzdWx0ICYmCi0JZ3JlcCBibG9iIHZlcmlmeV9yZXN1bHQgfAotCWF3ayAtZiBwcmludF8xLmF3ayB8Ci0Jc29ydCA+b2JzZXJ2ZWQgJiYKLQotCW5yPSQod2MgLWwgPG9ic2VydmVkKSAmJgotCXRlc3QgMCAtZXEgJG5yCisJISBncmVwIGJsb2IgdmVyaWZ5X3Jlc3VsdAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgbm9ybWFsIGFuZCBibG9iOm5vbmUgcGFja2ZpbGVzIGhhdmUgc2FtZSBjb21taXRzL3RyZWVzJyAnCkBAIC03Miw5ICs2NywxMCBAQAogCWVjaG8gZm9vID5yNS9mb28gJiYKIAlnaXQgLUMgcjUgYWRkIGZvbyAmJgogCWdpdCAtQyByNSBjb21taXQgLW0gImZvbyIgJiYKLQlkZWw9JChnaXQgLUMgcjUgcmV2LXBhcnNlIEhFQURee3RyZWV9IHwgc2VkICJzfC4ufCYvfCIpICYmCisJZ2l0IC1DIHI1IHJldi1wYXJzZSBIRUFEXnt0cmVlfSA+dHJlZSAmJgorCWRlbD0kKHNlZCAic3wuLnwmL3wiIHRyZWUpICYmCiAJcm0gcjUvLmdpdC9vYmplY3RzLyRkZWwgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgLUMgcjUgcGFjay1vYmplY3RzIC0tcmV2IC0tc3Rkb3V0IDI+YmFkX3RyZWUgPDwtRU9GICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1DIHI1IHBhY2stb2JqZWN0cyAtLXJldnMgLS1zdGRvdXQgMj5iYWRfdHJlZSA8PC1FT0YgJiYKIAlIRUFECiAJRU9GCiAJZ3JlcCAiYmFkIHRyZWUgb2JqZWN0IiBiYWRfdHJlZQpAQCAtODgsNyArODQsNyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgdHJlZTowIHBhY2tmaWxlIGhhcyBubyBibG9icyBvciB0cmVlcycgJwotCWdpdCAtQyByMSBwYWNrLW9iamVjdHMgLS1yZXYgLS1zdGRvdXQgLS1maWx0ZXI9dHJlZTowID5jb21taXRzb25seS5wYWNrIDw8LUVPRiAmJgorCWdpdCAtQyByMSBwYWNrLW9iamVjdHMgLS1yZXZzIC0tc3Rkb3V0IC0tZmlsdGVyPXRyZWU6MCA+Y29tbWl0c29ubHkucGFjayA8PC1FT0YgJiYKIAlIRUFECiAJRU9GCiAJZ2l0IC1DIHIxIGluZGV4LXBhY2sgLi4vY29tbWl0c29ubHkucGFjayAmJgpAQCAtOTgsNyArOTQsNyBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdncmFiIHRyZWUgZGlyZWN0bHkgd2hlbiB1c2luZyB0cmVlOjAnICcKIAkjIFdlIHNob3VsZCBnZXQgdGhlIHRyZWUgc3BlY2lmaWVkIGRpcmVjdGx5IGJ1dCBub3QgaXRzIGJsb2JzIG9yIHN1YnRyZWVzLgotCWdpdCAtQyByMSBwYWNrLW9iamVjdHMgLS1yZXYgLS1zdGRvdXQgLS1maWx0ZXI9dHJlZTowID5jb21taXRzb25seS5wYWNrIDw8LUVPRiAmJgorCWdpdCAtQyByMSBwYWNrLW9iamVjdHMgLS1yZXZzIC0tc3Rkb3V0IC0tZmlsdGVyPXRyZWU6MCA+Y29tbWl0c29ubHkucGFjayA8PC1FT0YgJiYKIAlIRUFEOgogCUVPRgogCWdpdCAtQyByMSBpbmRleC1wYWNrIC4uL2NvbW1pdHNvbmx5LnBhY2sgJiYKQEAgLTEyOCw3ICsxMjQsNyBAQAogCWF3ayAtZiBwcmludF8yLmF3ayBsc19maWxlc19yZXN1bHQgfAogCXNvcnQgPmV4cGVjdGVkICYmCiAKLQlnaXQgLUMgcjIgcGFjay1vYmplY3RzIC0tcmV2IC0tc3Rkb3V0ID5hbGwucGFjayA8PC1FT0YgJiYKKwlnaXQgLUMgcjIgcGFjay1vYmplY3RzIC0tcmV2cyAtLXN0ZG91dCA+YWxsLnBhY2sgPDwtRU9GICYmCiAJSEVBRAogCUVPRgogCWdpdCAtQyByMiBpbmRleC1wYWNrIC4uL2FsbC5wYWNrICYmCkBAIC0xNDIsMzMgKzEzOCwyMyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgYmxvYjpsaW1pdD01MDAgb21pdHMgYWxsIGJsb2JzJyAnCi0JZ2l0IC1DIHIyIHBhY2stb2JqZWN0cyAtLXJldiAtLXN0ZG91dCAtLWZpbHRlcj1ibG9iOmxpbWl0PTUwMCA+ZmlsdGVyLnBhY2sgPDwtRU9GICYmCisJZ2l0IC1DIHIyIHBhY2stb2JqZWN0cyAtLXJldnMgLS1zdGRvdXQgLS1maWx0ZXI9YmxvYjpsaW1pdD01MDAgPmZpbHRlci5wYWNrIDw8LUVPRiAmJgogCUhFQUQKIAlFT0YKIAlnaXQgLUMgcjIgaW5kZXgtcGFjayAuLi9maWx0ZXIucGFjayAmJgogCiAJZ2l0IC1DIHIyIHZlcmlmeS1wYWNrIC12IC4uL2ZpbHRlci5wYWNrID52ZXJpZnlfcmVzdWx0ICYmCi0JZ3JlcCBibG9iIHZlcmlmeV9yZXN1bHQgfAotCWF3ayAtZiBwcmludF8xLmF3ayB8Ci0Jc29ydCA+b2JzZXJ2ZWQgJiYKLQotCW5yPSQod2MgLWwgPG9ic2VydmVkKSAmJgotCXRlc3QgMCAtZXEgJG5yCisJISBncmVwIGJsb2IgdmVyaWZ5X3Jlc3VsdAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgYmxvYjpsaW1pdD0xMDAwJyAnCi0JZ2l0IC1DIHIyIHBhY2stb2JqZWN0cyAtLXJldiAtLXN0ZG91dCAtLWZpbHRlcj1ibG9iOmxpbWl0PTEwMDAgPmZpbHRlci5wYWNrIDw8LUVPRiAmJgorCWdpdCAtQyByMiBwYWNrLW9iamVjdHMgLS1yZXZzIC0tc3Rkb3V0IC0tZmlsdGVyPWJsb2I6bGltaXQ9MTAwMCA+ZmlsdGVyLnBhY2sgPDwtRU9GICYmCiAJSEVBRAogCUVPRgogCWdpdCAtQyByMiBpbmRleC1wYWNrIC4uL2ZpbHRlci5wYWNrICYmCiAKIAlnaXQgLUMgcjIgdmVyaWZ5LXBhY2sgLXYgLi4vZmlsdGVyLnBhY2sgPnZlcmlmeV9yZXN1bHQgJiYKLQlncmVwIGJsb2IgdmVyaWZ5X3Jlc3VsdCB8Ci0JYXdrIC1mIHByaW50XzEuYXdrIHwKLQlzb3J0ID5vYnNlcnZlZCAmJgotCi0JbnI9JCh3YyAtbCA8b2JzZXJ2ZWQpICYmCi0JdGVzdCAwIC1lcSAkbnIKKwkhIGdyZXAgYmxvYiB2ZXJpZnlfcmVzdWx0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ZlcmlmeSBibG9iOmxpbWl0PTEwMDEnICcKQEAgLTE3Niw3ICsxNjIsNyBAQAogCWF3ayAtZiBwcmludF8yLmF3ayBsc19maWxlc19yZXN1bHQgfAogCXNvcnQgPmV4cGVjdGVkICYmCiAKLQlnaXQgLUMgcjIgcGFjay1vYmplY3RzIC0tcmV2IC0tc3Rkb3V0IC0tZmlsdGVyPWJsb2I6bGltaXQ9MTAwMSA+ZmlsdGVyLnBhY2sgPDwtRU9GICYmCisJZ2l0IC1DIHIyIHBhY2stb2JqZWN0cyAtLXJldnMgLS1zdGRvdXQgLS1maWx0ZXI9YmxvYjpsaW1pdD0xMDAxID5maWx0ZXIucGFjayA8PC1FT0YgJiYKIAlIRUFECiAJRU9GCiAJZ2l0IC1DIHIyIGluZGV4LXBhY2sgLi4vZmlsdGVyLnBhY2sgJiYKQEAgLTE5NCw3ICsxODAsNyBAQAogCWF3ayAtZiBwcmludF8yLmF3ayBsc19maWxlc19yZXN1bHQgfAogCXNvcnQgPmV4cGVjdGVkICYmCiAKLQlnaXQgLUMgcjIgcGFjay1vYmplY3RzIC0tcmV2IC0tc3Rkb3V0IC0tZmlsdGVyPWJsb2I6bGltaXQ9MTAwMDEgPmZpbHRlci5wYWNrIDw8LUVPRiAmJgorCWdpdCAtQyByMiBwYWNrLW9iamVjdHMgLS1yZXZzIC0tc3Rkb3V0IC0tZmlsdGVyPWJsb2I6bGltaXQ9MTAwMDEgPmZpbHRlci5wYWNrIDw8LUVPRiAmJgogCUhFQUQKIAlFT0YKIAlnaXQgLUMgcjIgaW5kZXgtcGFjayAuLi9maWx0ZXIucGFjayAmJgpAQCAtMjEyLDcgKzE5OCw3IEBACiAJYXdrIC1mIHByaW50XzIuYXdrIGxzX2ZpbGVzX3Jlc3VsdCB8CiAJc29ydCA+ZXhwZWN0ZWQgJiYKIAotCWdpdCAtQyByMiBwYWNrLW9iamVjdHMgLS1yZXYgLS1zdGRvdXQgLS1maWx0ZXI9YmxvYjpsaW1pdD0xayA+ZmlsdGVyLnBhY2sgPDwtRU9GICYmCisJZ2l0IC1DIHIyIHBhY2stb2JqZWN0cyAtLXJldnMgLS1zdGRvdXQgLS1maWx0ZXI9YmxvYjpsaW1pdD0xayA+ZmlsdGVyLnBhY2sgPDwtRU9GICYmCiAJSEVBRAogCUVPRgogCWdpdCAtQyByMiBpbmRleC1wYWNrIC4uL2ZpbHRlci5wYWNrICYmCkBAIC0yMzAsMTAgKzIxNiw5IEBACiAJYXdrIC1mIHByaW50XzIuYXdrIGxzX2ZpbGVzX3Jlc3VsdCB8CiAJc29ydCA+ZXhwZWN0ZWQgJiYKIAotCWdpdCAtQyByMiBwYWNrLW9iamVjdHMgLS1yZXYgLS1zdGRvdXQgLS1maWx0ZXI9YmxvYjpsaW1pdD0xayA+ZmlsdGVyLnBhY2sgPDwtRU9GICYmCi0JSEVBRAotCSQoZ2l0IC1DIHIyIHJldi1wYXJzZSBIRUFEOmxhcmdlLjEwMDAwKQotCUVPRgorCWVjaG8gSEVBRCA+b2JqZWN0cyAmJgorCWdpdCAtQyByMiByZXYtcGFyc2UgSEVBRDpsYXJnZS4xMDAwMCA+Pm9iamVjdHMgJiYKKwlnaXQgLUMgcjIgcGFjay1vYmplY3RzIC0tcmV2cyAtLXN0ZG91dCAtLWZpbHRlcj1ibG9iOmxpbWl0PTFrIDxvYmplY3RzID5maWx0ZXIucGFjayAmJgogCWdpdCAtQyByMiBpbmRleC1wYWNrIC4uL2ZpbHRlci5wYWNrICYmCiAKIAlnaXQgLUMgcjIgdmVyaWZ5LXBhY2sgLXYgLi4vZmlsdGVyLnBhY2sgPnZlcmlmeV9yZXN1bHQgJiYKQEAgLTI0OSw3ICsyMzQsNyBAQAogCWF3ayAtZiBwcmludF8yLmF3ayBsc19maWxlc19yZXN1bHQgfAogCXNvcnQgPmV4cGVjdGVkICYmCiAKLQlnaXQgLUMgcjIgcGFjay1vYmplY3RzIC0tcmV2IC0tc3Rkb3V0IC0tZmlsdGVyPWJsb2I6bGltaXQ9MW0gPmZpbHRlci5wYWNrIDw8LUVPRiAmJgorCWdpdCAtQyByMiBwYWNrLW9iamVjdHMgLS1yZXZzIC0tc3Rkb3V0IC0tZmlsdGVyPWJsb2I6bGltaXQ9MW0gPmZpbHRlci5wYWNrIDw8LUVPRiAmJgogCUhFQUQKIAlFT0YKIAlnaXQgLUMgcjIgaW5kZXgtcGFjayAuLi9maWx0ZXIucGFjayAmJgpAQCAtMjc3LDYgKzI2MiwxMCBAQAogJwogCiAjIFRlc3Qgc3BhcnNlOnBhdGg9PHBhdGg+IGZpbHRlci4KKyMgISEhIQorIyBOT1RFOiBzcGFyc2U6cGF0aCBmaWx0ZXIgc3VwcG9ydCBoYXMgYmVlbiBkcm9wcGVkIGZvciBzZWN1cml0eSByZWFzb25zLAorIyBzbyB0aGUgdGVzdHMgaGF2ZSBiZWVuIGNoYW5nZWQgdG8gbWFrZSBzdXJlIHRoYXQgdXNpbmcgaXQgZmFpbHMuCisjICEhISEKICMgVXNlIGEgbG9jYWwgZmlsZSBjb250YWluaW5nIGEgc3BhcnNlLWNoZWNrb3V0IHNwZWNpZmljYXRpb24gdG8gZmlsdGVyCiAjIG91dCBibG9icyBub3QgcmVxdWlyZWQgZm9yIHRoZSBjb3JyZXNwb25kaW5nIHNwYXJzZS1jaGVja291dC4gIFdlIGRvIG5vdAogIyByZXF1aXJlIHNwYXJzZS1jaGVja291dCB0byBhY3R1YWxseSBiZSBlbmFibGVkLgpAQCAtMzAyLDcgKzI5MSw3IEBACiAJYXdrIC1mIHByaW50XzIuYXdrIGxzX2ZpbGVzX3Jlc3VsdCB8CiAJc29ydCA+ZXhwZWN0ZWQgJiYKIAotCWdpdCAtQyByMyBwYWNrLW9iamVjdHMgLS1yZXYgLS1zdGRvdXQgPmFsbC5wYWNrIDw8LUVPRiAmJgorCWdpdCAtQyByMyBwYWNrLW9iamVjdHMgLS1yZXZzIC0tc3Rkb3V0ID5hbGwucGFjayA8PC1FT0YgJiYKIAlIRUFECiAJRU9GCiAJZ2l0IC1DIHIzIGluZGV4LXBhY2sgLi4vYWxsLnBhY2sgJiYKQEAgLTMxNSw3MyArMzA0LDI0IEBACiAJdGVzdF9jbXAgZXhwZWN0ZWQgb2JzZXJ2ZWQKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IHNwYXJzZTpwYXRoPXBhdHRlcm4xJyAnCi0JZ2l0IC1DIHIzIGxzLWZpbGVzIC1zIGRpcjEvc3BhcnNlMSBkaXIxL3NwYXJzZTIgPmxzX2ZpbGVzX3Jlc3VsdCAmJgotCWF3ayAtZiBwcmludF8yLmF3ayBsc19maWxlc19yZXN1bHQgfAotCXNvcnQgPmV4cGVjdGVkICYmCi0KLQlnaXQgLUMgcjMgcGFjay1vYmplY3RzIC0tcmV2IC0tc3Rkb3V0IC0tZmlsdGVyPXNwYXJzZTpwYXRoPS4uL3BhdHRlcm4xID5maWx0ZXIucGFjayA8PC1FT0YgJiYKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ZlcmlmeSBzcGFyc2U6cGF0aD1wYXR0ZXJuMSBmYWlscycgJworCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyByMyBwYWNrLW9iamVjdHMgLS1yZXZzIC0tc3Rkb3V0IFwKKwkJLS1maWx0ZXI9c3BhcnNlOnBhdGg9Li4vcGF0dGVybjEgPDwtRU9GCiAJSEVBRAogCUVPRgotCWdpdCAtQyByMyBpbmRleC1wYWNrIC4uL2ZpbHRlci5wYWNrICYmCi0KLQlnaXQgLUMgcjMgdmVyaWZ5LXBhY2sgLXYgLi4vZmlsdGVyLnBhY2sgPnZlcmlmeV9yZXN1bHQgJiYKLQlncmVwIGJsb2IgdmVyaWZ5X3Jlc3VsdCB8Ci0JYXdrIC1mIHByaW50XzEuYXdrIHwKLQlzb3J0ID5vYnNlcnZlZCAmJgotCi0JdGVzdF9jbXAgZXhwZWN0ZWQgb2JzZXJ2ZWQKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IG5vcm1hbCBhbmQgc3BhcnNlOnBhdGg9cGF0dGVybjEgcGFja2ZpbGVzIGhhdmUgc2FtZSBjb21taXRzL3RyZWVzJyAnCi0JZ2l0IC1DIHIzIHZlcmlmeS1wYWNrIC12IC4uL2FsbC5wYWNrID52ZXJpZnlfcmVzdWx0ICYmCi0JZ3JlcCAtRSAiY29tbWl0fHRyZWUiIHZlcmlmeV9yZXN1bHQgfAotCWF3ayAtZiBwcmludF8xLmF3ayB8Ci0Jc29ydCA+ZXhwZWN0ZWQgJiYKLQotCWdpdCAtQyByMyB2ZXJpZnktcGFjayAtdiAuLi9maWx0ZXIucGFjayA+dmVyaWZ5X3Jlc3VsdCAmJgotCWdyZXAgLUUgImNvbW1pdHx0cmVlIiB2ZXJpZnlfcmVzdWx0IHwKLQlhd2sgLWYgcHJpbnRfMS5hd2sgfAotCXNvcnQgPm9ic2VydmVkICYmCi0KLQl0ZXN0X2NtcCBleHBlY3RlZCBvYnNlcnZlZAotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgc3BhcnNlOnBhdGg9cGF0dGVybjInICcKLQlnaXQgLUMgcjMgbHMtZmlsZXMgLXMgc3BhcnNlMSBkaXIxL3NwYXJzZTEgPmxzX2ZpbGVzX3Jlc3VsdCAmJgotCWF3ayAtZiBwcmludF8yLmF3ayBsc19maWxlc19yZXN1bHQgfAotCXNvcnQgPmV4cGVjdGVkICYmCi0KLQlnaXQgLUMgcjMgcGFjay1vYmplY3RzIC0tcmV2IC0tc3Rkb3V0IC0tZmlsdGVyPXNwYXJzZTpwYXRoPS4uL3BhdHRlcm4yID5maWx0ZXIucGFjayA8PC1FT0YgJiYKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ZlcmlmeSBzcGFyc2U6cGF0aD1wYXR0ZXJuMiBmYWlscycgJworCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyByMyBwYWNrLW9iamVjdHMgLS1yZXZzIC0tc3Rkb3V0IFwKKwkJLS1maWx0ZXI9c3BhcnNlOnBhdGg9Li4vcGF0dGVybjIgPDwtRU9GCiAJSEVBRAogCUVPRgotCWdpdCAtQyByMyBpbmRleC1wYWNrIC4uL2ZpbHRlci5wYWNrICYmCi0KLQlnaXQgLUMgcjMgdmVyaWZ5LXBhY2sgLXYgLi4vZmlsdGVyLnBhY2sgPnZlcmlmeV9yZXN1bHQgJiYKLQlncmVwIGJsb2IgdmVyaWZ5X3Jlc3VsdCB8Ci0JYXdrIC1mIHByaW50XzEuYXdrIHwKLQlzb3J0ID5vYnNlcnZlZCAmJgotCi0JdGVzdF9jbXAgZXhwZWN0ZWQgb2JzZXJ2ZWQKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IG5vcm1hbCBhbmQgc3BhcnNlOnBhdGg9cGF0dGVybjIgcGFja2ZpbGVzIGhhdmUgc2FtZSBjb21taXRzL3RyZWVzJyAnCi0JZ2l0IC1DIHIzIHZlcmlmeS1wYWNrIC12IC4uL2FsbC5wYWNrID52ZXJpZnlfcmVzdWx0ICYmCi0JZ3JlcCAtRSAiY29tbWl0fHRyZWUiIHZlcmlmeV9yZXN1bHQgfAotCWF3ayAtZiBwcmludF8xLmF3ayB8Ci0Jc29ydCA+ZXhwZWN0ZWQgJiYKLQotCWdpdCAtQyByMyB2ZXJpZnktcGFjayAtdiAuLi9maWx0ZXIucGFjayA+dmVyaWZ5X3Jlc3VsdCAmJgotCWdyZXAgLUUgImNvbW1pdHx0cmVlIiB2ZXJpZnlfcmVzdWx0IHwKLQlhd2sgLWYgcHJpbnRfMS5hd2sgfAotCXNvcnQgPm9ic2VydmVkICYmCi0KLQl0ZXN0X2NtcCBleHBlY3RlZCBvYnNlcnZlZAogJwogCiAjIFRlc3Qgc3BhcnNlOm9pZD08b2lkLWlzaD4gZmlsdGVyLgotIyBMaWtlIHNwYXJzZTpwYXRoLCBidXQgd2UgZ2V0IHRoZSBzcGFyc2UtY2hlY2tvdXQgc3BlY2lmaWNhdGlvbiBmcm9tCi0jIGEgYmxvYiByYXRoZXIgdGhhbiBhIGZpbGUgb24gZGlzay4KKyMgVXNlIGEgYmxvYiBjb250YWluaW5nIGEgc3BhcnNlLWNoZWNrb3V0IHNwZWNpZmljYXRpb24gdG8gZmlsdGVyCisjIG91dCBibG9icyBub3QgcmVxdWlyZWQgZm9yIHRoZSBjb3JyZXNwb25kaW5nIHNwYXJzZS1jaGVja291dC4gIFdlIGRvIG5vdAorIyByZXF1aXJlIHNwYXJzZS1jaGVja291dCB0byBhY3R1YWxseSBiZSBlbmFibGVkLgogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCByNCcgJwogCWdpdCBpbml0IHI0ICYmCkBAIC00MDQsNyArMzQ0LDcgQEAKIAlhd2sgLWYgcHJpbnRfMi5hd2sgbHNfZmlsZXNfcmVzdWx0IHwKIAlzb3J0ID5leHBlY3RlZCAmJgogCi0JZ2l0IC1DIHI0IHBhY2stb2JqZWN0cyAtLXJldiAtLXN0ZG91dCA+YWxsLnBhY2sgPDwtRU9GICYmCisJZ2l0IC1DIHI0IHBhY2stb2JqZWN0cyAtLXJldnMgLS1zdGRvdXQgPmFsbC5wYWNrIDw8LUVPRiAmJgogCUhFQUQKIAlFT0YKIAlnaXQgLUMgcjQgaW5kZXgtcGFjayAuLi9hbGwucGFjayAmJgpAQCAtNDIyLDggKzM2Miw5IEBACiAJYXdrIC1mIHByaW50XzIuYXdrIGxzX2ZpbGVzX3Jlc3VsdCB8CiAJc29ydCA+ZXhwZWN0ZWQgJiYKIAotCW9pZD0kKGdpdCAtQyByNCBscy1maWxlcyAtcyBwYXR0ZXJuIHwgYXdrIC1mIHByaW50XzIuYXdrKSAmJgotCWdpdCAtQyByNCBwYWNrLW9iamVjdHMgLS1yZXYgLS1zdGRvdXQgLS1maWx0ZXI9c3BhcnNlOm9pZD0kb2lkID5maWx0ZXIucGFjayA8PC1FT0YgJiYKKwlnaXQgLUMgcjQgbHMtZmlsZXMgLXMgcGF0dGVybiA+c3RhZ2VkICYmCisJb2lkPSQoYXdrIC1mIHByaW50XzIuYXdrIHN0YWdlZCkgJiYKKwlnaXQgLUMgcjQgcGFjay1vYmplY3RzIC0tcmV2cyAtLXN0ZG91dCAtLWZpbHRlcj1zcGFyc2U6b2lkPSRvaWQgPmZpbHRlci5wYWNrIDw8LUVPRiAmJgogCUhFQUQKIAlFT0YKIAlnaXQgLUMgcjQgaW5kZXgtcGFjayAuLi9maWx0ZXIucGFjayAmJgpAQCAtNDQxLDcgKzM4Miw3IEBACiAJYXdrIC1mIHByaW50XzIuYXdrIGxzX2ZpbGVzX3Jlc3VsdCB8CiAJc29ydCA+ZXhwZWN0ZWQgJiYKIAotCWdpdCAtQyByNCBwYWNrLW9iamVjdHMgLS1yZXYgLS1zdGRvdXQgLS1maWx0ZXI9c3BhcnNlOm9pZD1tYXN0ZXI6cGF0dGVybiA+ZmlsdGVyLnBhY2sgPDwtRU9GICYmCisJZ2l0IC1DIHI0IHBhY2stb2JqZWN0cyAtLXJldnMgLS1zdGRvdXQgLS1maWx0ZXI9c3BhcnNlOm9pZD1tYXN0ZXI6cGF0dGVybiA+ZmlsdGVyLnBhY2sgPDwtRU9GICYmCiAJSEVBRAogCUVPRgogCWdpdCAtQyByNCBpbmRleC1wYWNrIC4uL2ZpbHRlci5wYWNrICYmCkBAIC00NzAsMTkgKzQxMSwxOSBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgcGFjay1vYmplY3RzIGZhaWxzIHcvIG1pc3Npbmcgb2JqZWN0cycgJwotCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyByMSBwYWNrLW9iamVjdHMgLS1yZXYgLS1zdGRvdXQgPm1pc3MucGFjayA8PC1FT0YKKwl0ZXN0X211c3RfZmFpbCBnaXQgLUMgcjEgcGFjay1vYmplY3RzIC0tcmV2cyAtLXN0ZG91dCA+bWlzcy5wYWNrIDw8LUVPRgogCUhFQUQKIAlFT0YKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IHBhY2stb2JqZWN0cyBmYWlscyB3LyAtLW1pc3Npbmc9ZXJyb3InICcKLQl0ZXN0X211c3RfZmFpbCBnaXQgLUMgcjEgcGFjay1vYmplY3RzIC0tcmV2IC0tc3Rkb3V0IC0tbWlzc2luZz1lcnJvciA+bWlzcy5wYWNrIDw8LUVPRgorCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyByMSBwYWNrLW9iamVjdHMgLS1yZXZzIC0tc3Rkb3V0IC0tbWlzc2luZz1lcnJvciA+bWlzcy5wYWNrIDw8LUVPRgogCUhFQUQKIAlFT0YKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IHBhY2stb2JqZWN0cyB3LyAtLW1pc3Npbmc9YWxsb3ctYW55JyAnCi0JZ2l0IC1DIHIxIHBhY2stb2JqZWN0cyAtLXJldiAtLXN0ZG91dCAtLW1pc3Npbmc9YWxsb3ctYW55ID5taXNzLnBhY2sgPDwtRU9GCisJZ2l0IC1DIHIxIHBhY2stb2JqZWN0cyAtLXJldnMgLS1zdGRvdXQgLS1taXNzaW5nPWFsbG93LWFueSA+bWlzcy5wYWNrIDw8LUVPRgogCUhFQUQKIAlFT0YKICcKZGlmZiAtLWdpdCBhL3QvdDUzMTgtY29tbWl0LWdyYXBoLnNoIGIvdC90NTMxOC1jb21taXQtZ3JhcGguc2gKaW5kZXggNWZlMjFkYi4uOWJmOTIwYSAxMDA3NTUKLS0tIGEvdC90NTMxOC1jb21taXQtZ3JhcGguc2gKKysrIGIvdC90NTMxOC1jb21taXQtZ3JhcGguc2gKQEAgLTE5LDggKzE5LDE1IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dyaXRlIGdyYXBoIHdpdGggbm8gcGFja3MnICcKIAljZCAiJFRSQVNIX0RJUkVDVE9SWS9mdWxsIiAmJgotCWdpdCBjb21taXQtZ3JhcGggd3JpdGUgLS1vYmplY3QtZGlyIC4gJiYKLQl0ZXN0X3BhdGhfaXNfZmlsZSBpbmZvL2NvbW1pdC1ncmFwaAorCWdpdCBjb21taXQtZ3JhcGggd3JpdGUgLS1vYmplY3QtZGlyICRvYmpkaXIgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyAkb2JqZGlyL2luZm8vY29tbWl0LWdyYXBoCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2V4aXQgd2l0aCBjb3JyZWN0IGVycm9yIG9uIGJhZCBpbnB1dCB0byAtLXN0ZGluLXBhY2tzJyAnCisJY2QgIiRUUkFTSF9ESVJFQ1RPUlkvZnVsbCIgJiYKKwllY2hvIGRvZXNub3RleGlzdCA+aW4gJiYKKwl0ZXN0X2V4cGVjdF9jb2RlIDEgZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSAtLXN0ZGluLXBhY2tzIDxpbiAyPnN0ZGVyciAmJgorCXRlc3RfaTE4bmdyZXAgImVycm9yIGFkZGluZyBwYWNrIiBzdGRlcnIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY3JlYXRlIGNvbW1pdHMgYW5kIHJlcGFjaycgJwpAQCAtMzMsNiArNDAsMTUgQEAKIAlnaXQgcmVwYWNrCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2V4aXQgd2l0aCBjb3JyZWN0IGVycm9yIG9uIGJhZCBpbnB1dCB0byAtLXN0ZGluLWNvbW1pdHMnICcKKwljZCAiJFRSQVNIX0RJUkVDVE9SWS9mdWxsIiAmJgorCWVjaG8gSEVBRCB8IHRlc3RfZXhwZWN0X2NvZGUgMSBnaXQgY29tbWl0LWdyYXBoIHdyaXRlIC0tc3RkaW4tY29tbWl0cyAyPnN0ZGVyciAmJgorCXRlc3RfaTE4bmdyZXAgImludmFsaWQgY29tbWl0IG9iamVjdCBpZCIgc3RkZXJyICYmCisJIyB2YWxpZCB0cmVlIE9JRCwgYnV0IG5vdCBhIGNvbW1pdCBPSUQKKwlnaXQgcmV2LXBhcnNlIEhFQURee3RyZWV9IHwgdGVzdF9leHBlY3RfY29kZSAxIGdpdCBjb21taXQtZ3JhcGggd3JpdGUgLS1zdGRpbi1jb21taXRzIDI+c3RkZXJyICYmCisJdGVzdF9pMThuZ3JlcCAiaW52YWxpZCBjb21taXQgb2JqZWN0IGlkIiBzdGRlcnIKKycKKwogZ3JhcGhfZ2l0X3R3b19tb2RlcygpIHsKIAlnaXQgLWMgY29yZS5jb21taXRHcmFwaD10cnVlICQxID5vdXRwdXQKIAlnaXQgLWMgY29yZS5jb21taXRHcmFwaD1mYWxzZSAkMSA+ZXhwZWN0CkBAIC02OSwxMyArODUsMTMgQEAKIAludW1fY29tbWl0czogJDEKIAljaHVua3M6IG9pZF9mYW5vdXQgb2lkX2xvb2t1cCBjb21taXRfbWV0YWRhdGEkT1BUSU9OQUwKIAlFT0YKLQlnaXQgY29tbWl0LWdyYXBoIHJlYWQgPm91dHB1dCAmJgorCXRlc3QtdG9vbCByZWFkLWdyYXBoID5vdXRwdXQgJiYKIAl0ZXN0X2NtcCBleHBlY3Qgb3V0cHV0CiB9CiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dyaXRlIGdyYXBoJyAnCiAJY2QgIiRUUkFTSF9ESVJFQ1RPUlkvZnVsbCIgJiYKLQlncmFwaDE9JChnaXQgY29tbWl0LWdyYXBoIHdyaXRlKSAmJgorCWdpdCBjb21taXQtZ3JhcGggd3JpdGUgJiYKIAl0ZXN0X3BhdGhfaXNfZmlsZSAkb2JqZGlyL2luZm8vY29tbWl0LWdyYXBoICYmCiAJZ3JhcGhfcmVhZF9leHBlY3QgIjMiCiAnCkBAIC0xMDgsNiArMTI0LDQyIEBACiAJZ2l0IHJlcGFjawogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb21taXQtZ3JhcGggd3JpdGUgcHJvZ3Jlc3Mgb2ZmIGZvciByZWRpcmVjdGVkIHN0ZGVycicgJworCWNkICIkVFJBU0hfRElSRUNUT1JZL2Z1bGwiICYmCisJZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSAyPmVyciAmJgorCXRlc3RfbGluZV9jb3VudCA9IDAgZXJyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbW1pdC1ncmFwaCB3cml0ZSBmb3JjZSBwcm9ncmVzcyBvbiBmb3Igc3RkZXJyJyAnCisJY2QgIiRUUkFTSF9ESVJFQ1RPUlkvZnVsbCIgJiYKKwlHSVRfUFJPR1JFU1NfREVMQVk9MCBnaXQgY29tbWl0LWdyYXBoIHdyaXRlIC0tcHJvZ3Jlc3MgMj5lcnIgJiYKKwl0ZXN0X2ZpbGVfbm90X2VtcHR5IGVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb21taXQtZ3JhcGggd3JpdGUgd2l0aCB0aGUgLS1uby1wcm9ncmVzcyBvcHRpb24nICcKKwljZCAiJFRSQVNIX0RJUkVDVE9SWS9mdWxsIiAmJgorCWdpdCBjb21taXQtZ3JhcGggd3JpdGUgLS1uby1wcm9ncmVzcyAyPmVyciAmJgorCXRlc3RfbGluZV9jb3VudCA9IDAgZXJyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbW1pdC1ncmFwaCB2ZXJpZnkgcHJvZ3Jlc3Mgb2ZmIGZvciByZWRpcmVjdGVkIHN0ZGVycicgJworCWNkICIkVFJBU0hfRElSRUNUT1JZL2Z1bGwiICYmCisJZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgMj5lcnIgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAwIGVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb21taXQtZ3JhcGggdmVyaWZ5IGZvcmNlIHByb2dyZXNzIG9uIGZvciBzdGRlcnInICcKKwljZCAiJFRSQVNIX0RJUkVDVE9SWS9mdWxsIiAmJgorCUdJVF9QUk9HUkVTU19ERUxBWT0wIGdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IC0tcHJvZ3Jlc3MgMj5lcnIgJiYKKwl0ZXN0X2ZpbGVfbm90X2VtcHR5IGVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb21taXQtZ3JhcGggdmVyaWZ5IHdpdGggdGhlIC0tbm8tcHJvZ3Jlc3Mgb3B0aW9uJyAnCisJY2QgIiRUUkFTSF9ESVJFQ1RPUlkvZnVsbCIgJiYKKwlnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSAtLW5vLXByb2dyZXNzIDI+ZXJyICYmCisJdGVzdF9saW5lX2NvdW50ID0gMCBlcnIKKycKKwogIyBDdXJyZW50IGdyYXBoIHN0cnVjdHVyZToKICMKICMgICBfX00zX19fCkBAIC0xMjIsNyArMTc0LDcgQEAKIAljZCAiJFRSQVNIX0RJUkVDVE9SWS9mdWxsIiAmJgogCWdpdCBjb21taXQtZ3JhcGggd3JpdGUgJiYKIAl0ZXN0X3BhdGhfaXNfZmlsZSAkb2JqZGlyL2luZm8vY29tbWl0LWdyYXBoICYmCi0JZ3JhcGhfcmVhZF9leHBlY3QgIjEwIiAibGFyZ2VfZWRnZXMiCisJZ3JhcGhfcmVhZF9leHBlY3QgIjEwIiAiZXh0cmFfZWRnZXMiCiAnCiAKIGdyYXBoX2dpdF9iZWhhdmlvciAnbWVyZ2UgMSB2cyAyJyBmdWxsIG1lcmdlLzEgbWVyZ2UvMgpAQCAtMTU3LDcgKzIwOSw3IEBACiAJY2QgIiRUUkFTSF9ESVJFQ1RPUlkvZnVsbCIgJiYKIAlnaXQgY29tbWl0LWdyYXBoIHdyaXRlICYmCiAJdGVzdF9wYXRoX2lzX2ZpbGUgJG9iamRpci9pbmZvL2NvbW1pdC1ncmFwaCAmJgotCWdyYXBoX3JlYWRfZXhwZWN0ICIxMSIgImxhcmdlX2VkZ2VzIgorCWdyYXBoX3JlYWRfZXhwZWN0ICIxMSIgImV4dHJhX2VkZ2VzIgogJwogCiBncmFwaF9naXRfYmVoYXZpb3IgJ2Z1bGwgZ3JhcGgsIGNvbW1pdCA4IHZzIG1lcmdlIDEnIGZ1bGwgY29tbWl0cy84IG1lcmdlLzEKQEAgLTE2Nyw3ICsyMTksNyBAQAogCWNkICIkVFJBU0hfRElSRUNUT1JZL2Z1bGwiICYmCiAJZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSAmJgogCXRlc3RfcGF0aF9pc19maWxlICRvYmpkaXIvaW5mby9jb21taXQtZ3JhcGggJiYKLQlncmFwaF9yZWFkX2V4cGVjdCAiMTEiICJsYXJnZV9lZGdlcyIKKwlncmFwaF9yZWFkX2V4cGVjdCAiMTEiICJleHRyYV9lZGdlcyIKICcKIAogZ3JhcGhfZ2l0X2JlaGF2aW9yICdjbGVhcmVkIGdyYXBoLCBjb21taXQgOCB2cyBtZXJnZSAxJyBmdWxsIGNvbW1pdHMvOCBtZXJnZS8xCkBAIC0xNzcsNyArMjI5LDcgQEAKIAljZCAiJFRSQVNIX0RJUkVDVE9SWS9mdWxsIiAmJgogCWNhdCBuZXctaWR4IHwgZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSAtLXN0ZGluLXBhY2tzICYmCiAJdGVzdF9wYXRoX2lzX2ZpbGUgJG9iamRpci9pbmZvL2NvbW1pdC1ncmFwaCAmJgotCWdyYXBoX3JlYWRfZXhwZWN0ICI5IiAibGFyZ2VfZWRnZXMiCisJZ3JhcGhfcmVhZF9leHBlY3QgIjkiICJleHRyYV9lZGdlcyIKICcKIAogZ3JhcGhfZ2l0X2JlaGF2aW9yICdncmFwaCBmcm9tIHBhY2ssIGNvbW1pdCA4IHZzIG1lcmdlIDEnIGZ1bGwgY29tbWl0cy84IG1lcmdlLzEKQEAgLTIwMCw3ICsyNTIsNyBAQAogCWNkICIkVFJBU0hfRElSRUNUT1JZL2Z1bGwiICYmCiAJZ2l0IHJldi1wYXJzZSBtZXJnZS8zIHwgZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSAtLXN0ZGluLWNvbW1pdHMgLS1hcHBlbmQgJiYKIAl0ZXN0X3BhdGhfaXNfZmlsZSAkb2JqZGlyL2luZm8vY29tbWl0LWdyYXBoICYmCi0JZ3JhcGhfcmVhZF9leHBlY3QgIjEwIiAibGFyZ2VfZWRnZXMiCisJZ3JhcGhfcmVhZF9leHBlY3QgIjEwIiAiZXh0cmFfZWRnZXMiCiAnCiAKIGdyYXBoX2dpdF9iZWhhdmlvciAnYXBwZW5kIGdyYXBoLCBjb21taXQgOCB2cyBtZXJnZSAxJyBmdWxsIGNvbW1pdHMvOCBtZXJnZS8xCkBAIC0yMTAsNyArMjYyLDcgQEAKIAljZCAiJFRSQVNIX0RJUkVDVE9SWS9mdWxsIiAmJgogCWdpdCBjb21taXQtZ3JhcGggd3JpdGUgLS1yZWFjaGFibGUgJiYKIAl0ZXN0X3BhdGhfaXNfZmlsZSAkb2JqZGlyL2luZm8vY29tbWl0LWdyYXBoICYmCi0JZ3JhcGhfcmVhZF9leHBlY3QgIjExIiAibGFyZ2VfZWRnZXMiCisJZ3JhcGhfcmVhZF9leHBlY3QgIjExIiAiZXh0cmFfZWRnZXMiCiAnCiAKIGdyYXBoX2dpdF9iZWhhdmlvciAnYXBwZW5kIGdyYXBoLCBjb21taXQgOCB2cyBtZXJnZSAxJyBmdWxsIGNvbW1pdHMvOCBtZXJnZS8xCkBAIC0yMzEsNyArMjgzLDcgQEAKIAljZCAiJFRSQVNIX0RJUkVDVE9SWS9iYXJlIiAmJgogCWdpdCBjb21taXQtZ3JhcGggd3JpdGUgJiYKIAl0ZXN0X3BhdGhfaXNfZmlsZSAkYmFyZWRpci9pbmZvL2NvbW1pdC1ncmFwaCAmJgotCWdyYXBoX3JlYWRfZXhwZWN0ICIxMSIgImxhcmdlX2VkZ2VzIgorCWdyYXBoX3JlYWRfZXhwZWN0ICIxMSIgImV4dHJhX2VkZ2VzIgogJwogCiBncmFwaF9naXRfYmVoYXZpb3IgJ2JhcmUgcmVwbyB3aXRoIGdyYXBoLCBjb21taXQgOCB2cyBtZXJnZSAxJyBiYXJlIGNvbW1pdHMvOCBtZXJnZS8xCkBAIC0zNjYsMjQgKzQxOCw1OCBAQAogR1JBUEhfQllURV9PQ1RPUFVTPSQoKCRHUkFQSF9PQ1RPUFVTX0RBVEFfT0ZGU0VUICsgNCkpCiBHUkFQSF9CWVRFX0ZPT1RFUj0kKCgkR1JBUEhfT0NUT1BVU19EQVRBX09GRlNFVCArIDQgKiAkTlVNX09DVE9QVVNfRURHRVMpKQogCi0jIHVzYWdlOiBjb3JydXB0X2dyYXBoX2FuZF92ZXJpZnkgPHBvc2l0aW9uPiA8ZGF0YT4gPHN0cmluZz4KK2NvcnJ1cHRfZ3JhcGhfc2V0dXAoKSB7CisJY2QgIiRUUkFTSF9ESVJFQ1RPUlkvZnVsbCIgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgbXYgY29tbWl0LWdyYXBoLWJhY2t1cCAkb2JqZGlyL2luZm8vY29tbWl0LWdyYXBoICYmCisJY3AgJG9iamRpci9pbmZvL2NvbW1pdC1ncmFwaCBjb21taXQtZ3JhcGgtYmFja3VwCit9CisKK2NvcnJ1cHRfZ3JhcGhfdmVyaWZ5KCkgeworCWdyZXBzdHI9JDEKKwl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSAyPnRlc3RfZXJyICYmCisJZ3JlcCAtdiAiXisiIHRlc3RfZXJyID5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICIkZ3JlcHN0ciIgZXJyICYmCisJaWYgdGVzdCAiJDIiICE9ICJuby1jb3B5IgorCXRoZW4KKwkJY3AgJG9iamRpci9pbmZvL2NvbW1pdC1ncmFwaCBjb21taXQtZ3JhcGgtcHJlLXdyaXRlLXRlc3QKKwlmaSAmJgorCWdpdCBzdGF0dXMgLS1zaG9ydCAmJgorCUdJVF9URVNUX0NPTU1JVF9HUkFQSF9ESUVfT05fTE9BRD10cnVlIGdpdCBjb21taXQtZ3JhcGggd3JpdGUgJiYKKwlnaXQgY29tbWl0LWdyYXBoIHZlcmlmeQorfQorCisjIHVzYWdlOiBjb3JydXB0X2dyYXBoX2FuZF92ZXJpZnkgPHBvc2l0aW9uPiA8ZGF0YT4gPHN0cmluZz4gWzx6ZXJvX3Bvcz5dCiAjIE1hbmlwdWxhdGVzIHRoZSBjb21taXQtZ3JhcGggZmlsZSBhdCB0aGUgcG9zaXRpb24KLSMgYnkgaW5zZXJ0aW5nIHRoZSBkYXRhLCB0aGVuIHJ1bnMgJ2dpdCBjb21taXQtZ3JhcGggdmVyaWZ5JworIyBieSBpbnNlcnRpbmcgdGhlIGRhdGEsIG9wdGlvbmFsbHkgemVyb2luZyB0aGUgZmlsZQorIyBzdGFydGluZyBhdCA8emVyb19wb3M+LCB0aGVuIHJ1bnMgJ2dpdCBjb21taXQtZ3JhcGggdmVyaWZ5JwogIyBhbmQgcGxhY2VzIHRoZSBvdXRwdXQgaW4gdGhlIGZpbGUgJ2VycicuIFRlc3QgJ2VycicgZm9yCiAjIHRoZSBnaXZlbiBzdHJpbmcuCiBjb3JydXB0X2dyYXBoX2FuZF92ZXJpZnkoKSB7CiAJcG9zPSQxCiAJZGF0YT0iJHsyOi1cMH0iCiAJZ3JlcHN0cj0kMwotCWNkICIkVFJBU0hfRElSRUNUT1JZL2Z1bGwiICYmCi0JdGVzdF93aGVuX2ZpbmlzaGVkIG12IGNvbW1pdC1ncmFwaC1iYWNrdXAgJG9iamRpci9pbmZvL2NvbW1pdC1ncmFwaCAmJgotCWNwICRvYmpkaXIvaW5mby9jb21taXQtZ3JhcGggY29tbWl0LWdyYXBoLWJhY2t1cCAmJgorCWNvcnJ1cHRfZ3JhcGhfc2V0dXAgJiYKKwlvcmlnX3NpemU9JCh3YyAtYyA8ICRvYmpkaXIvaW5mby9jb21taXQtZ3JhcGgpICYmCisJemVyb19wb3M9JHs0Oi0ke29yaWdfc2l6ZX19ICYmCiAJcHJpbnRmICIkZGF0YSIgfCBkZCBvZj0iJG9iamRpci9pbmZvL2NvbW1pdC1ncmFwaCIgYnM9MSBzZWVrPSIkcG9zIiBjb252PW5vdHJ1bmMgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSAyPnRlc3RfZXJyICYmCi0JZ3JlcCAtdiAiXisiIHRlc3RfZXJyID5lcnIKLQl0ZXN0X2kxOG5ncmVwICIkZ3JlcHN0ciIgZXJyCisJZGQgb2Y9IiRvYmpkaXIvaW5mby9jb21taXQtZ3JhcGgiIGJzPTEgc2Vlaz0iJHplcm9fcG9zIiBpZj0vZGV2L251bGwgJiYKKwlnZW5lcmF0ZV96ZXJvX2J5dGVzICQoKCRvcmlnX3NpemUgLSAkemVyb19wb3MpKSA+PiIkb2JqZGlyL2luZm8vY29tbWl0LWdyYXBoIiAmJgorCWNvcnJ1cHRfZ3JhcGhfdmVyaWZ5ICIkZ3JlcHN0ciIKKwogfQogCit0ZXN0X2V4cGVjdF9zdWNjZXNzIFBPU0lYUEVSTSxTQU5JVFkgJ2RldGVjdCBwZXJtaXNzaW9uIHByb2JsZW0nICcKKwljb3JydXB0X2dyYXBoX3NldHVwICYmCisJY2htb2QgMDAwICRvYmpkaXIvaW5mby9jb21taXQtZ3JhcGggJiYKKwljb3JydXB0X2dyYXBoX3ZlcmlmeSAiQ291bGQgbm90IG9wZW4iICJuby1jb3B5IgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZXRlY3QgdG9vIHNtYWxsJyAnCisJY29ycnVwdF9ncmFwaF9zZXR1cCAmJgorCWVjaG8gImEgc21hbGwgZ3JhcGgiID4kb2JqZGlyL2luZm8vY29tbWl0LWdyYXBoICYmCisJY29ycnVwdF9ncmFwaF92ZXJpZnkgInRvbyBzbWFsbCIKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGV0ZWN0IGJhZCBzaWduYXR1cmUnICcKIAljb3JydXB0X2dyYXBoX2FuZF92ZXJpZnkgMCAiXDAiIFwKIAkJImdyYXBoIHNpZ25hdHVyZSIKQEAgLTM5NSw3ICs0ODEsNyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZXRlY3QgYmFkIGhhc2ggdmVyc2lvbicgJwotCWNvcnJ1cHRfZ3JhcGhfYW5kX3ZlcmlmeSAkR1JBUEhfQllURV9IQVNIICJcMDIiIFwKKwljb3JydXB0X2dyYXBoX2FuZF92ZXJpZnkgJEdSQVBIX0JZVEVfSEFTSCAiXDAzIiBcCiAJCSJoYXNoIHZlcnNpb24iCiAnCiAKQEAgLTQ4NCwxMSArNTcwLDE3IEBACiAJCSJpbmNvcnJlY3QgY2hlY2tzdW0iCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RldGVjdCBpbmNvcnJlY3QgY2h1bmsgY291bnQnICcKKwljb3JydXB0X2dyYXBoX2FuZF92ZXJpZnkgJEdSQVBIX0JZVEVfQ0hVTktfQ09VTlQgIlwzNzciIFwKKwkJImNodW5rIGxvb2t1cCB0YWJsZSBlbnRyeSBtaXNzaW5nIiAkR1JBUEhfQ0hVTktfTE9PS1VQX09GRlNFVAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgZnNjayAoY2hlY2tzIGNvbW1pdC1ncmFwaCknICcKIAljZCAiJFRSQVNIX0RJUkVDVE9SWS9mdWxsIiAmJgogCWdpdCBmc2NrICYmCiAJY29ycnVwdF9ncmFwaF9hbmRfdmVyaWZ5ICRHUkFQSF9CWVRFX0ZPT1RFUiAiXDAwIiBcCiAJCSJpbmNvcnJlY3QgY2hlY2tzdW0iICYmCisJY3AgY29tbWl0LWdyYXBoLXByZS13cml0ZS10ZXN0ICRvYmpkaXIvaW5mby9jb21taXQtZ3JhcGggJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgZnNjawogJwogCkBAIC01MjksNCArNjIxLDQ3IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3JydXB0IGNvbW1pdC1ncmFwaCB3cml0ZSAoYnJva2VuIHBhcmVudCknICcKKwlybSAtcmYgcmVwbyAmJgorCWdpdCBpbml0IHJlcG8gJiYKKwkoCisJCWNkIHJlcG8gJiYKKwkJZW1wdHk9IiQoZ2l0IG1rdHJlZSA8L2Rldi9udWxsKSIgJiYKKwkJY2F0ID5icm9rZW4gPDwtRU9GICYmCisJCXRyZWUgJGVtcHR5CisJCXBhcmVudCAkWkVST19PSUQKKwkJYXV0aG9yIHdoYXRldmVyIDx3aGF0ZXZlckBleGFtcGxlLmNvbT4gMTIzNCAtMDAwMAorCQljb21taXR0ZXIgd2hhdGV2ZXIgPHdoYXRldmVyQGV4YW1wbGUuY29tPiAxMjM0IC0wMDAwCisKKwkJYnJva2VuIGNvbW1pdAorCQlFT0YKKwkJYnJva2VuPSIkKGdpdCBoYXNoLW9iamVjdCAtdyAtdCBjb21taXQgLS1saXRlcmFsbHkgYnJva2VuKSIgJiYKKwkJZ2l0IGNvbW1pdC10cmVlIC1wICIkYnJva2VuIiAtbSAiZ29vZCBjb21taXQiICIkZW1wdHkiID5nb29kICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBjb21taXQtZ3JhcGggd3JpdGUgLS1zdGRpbi1jb21taXRzIFwKKwkJCTxnb29kIDI+dGVzdF9lcnIgJiYKKwkJdGVzdF9pMThuZ3JlcCAidW5hYmxlIHRvIHBhcnNlIGNvbW1pdCIgdGVzdF9lcnIKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvcnJ1cHQgY29tbWl0LWdyYXBoIHdyaXRlIChtaXNzaW5nIHRyZWUpJyAnCisJcm0gLXJmIHJlcG8gJiYKKwlnaXQgaW5pdCByZXBvICYmCisJKAorCQljZCByZXBvICYmCisJCXRyZWU9IiQoZ2l0IG1rdHJlZSA8L2Rldi9udWxsKSIgJiYKKwkJY2F0ID5icm9rZW4gPDwtRU9GICYmCisJCXBhcmVudCAkWkVST19PSUQKKwkJYXV0aG9yIHdoYXRldmVyIDx3aGF0ZXZlckBleGFtcGxlLmNvbT4gMTIzNCAtMDAwMAorCQljb21taXR0ZXIgd2hhdGV2ZXIgPHdoYXRldmVyQGV4YW1wbGUuY29tPiAxMjM0IC0wMDAwCisKKwkJYnJva2VuIGNvbW1pdAorCQlFT0YKKwkJYnJva2VuPSIkKGdpdCBoYXNoLW9iamVjdCAtdyAtdCBjb21taXQgLS1saXRlcmFsbHkgYnJva2VuKSIgJiYKKwkJZ2l0IGNvbW1pdC10cmVlIC1wICIkYnJva2VuIiAtbSAiZ29vZCIgIiR0cmVlIiA+Z29vZCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0LWdyYXBoIHdyaXRlIC0tc3RkaW4tY29tbWl0cyBcCisJCQk8Z29vZCAyPnRlc3RfZXJyICYmCisJCXRlc3RfaTE4bmdyZXAgInVuYWJsZSB0byBwYXJzZSBjb21taXQiIHRlc3RfZXJyCisJKQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDUzMTktbXVsdGktcGFjay1pbmRleC5zaCBiL3QvdDUzMTktbXVsdGktcGFjay1pbmRleC5zaAppbmRleCA3MDkyNmI1Li40M2E3YTY2IDEwMDc1NQotLS0gYS90L3Q1MzE5LW11bHRpLXBhY2staW5kZXguc2gKKysrIGIvdC90NTMxOS1tdWx0aS1wYWNrLWluZGV4LnNoCkBAIC0yOCw2ICsyOCwyMCBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKIH0KIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICcKKwl0ZXN0X29pZF9pbml0ICYmCisJdGVzdF9vaWRfY2FjaGUgPDwtRU9GCisJaWR4b2ZmIHNoYTE6Mjk5OQorCWlkeG9mZiBzaGEyNTY6MzczOQorCisJcGFja25hbWVvZmYgc2hhMTo2NTIKKwlwYWNrbmFtZW9mZiBzaGEyNTY6OTQwCisKKwlmYW5vdXRvZmYgc2hhMToxCisJZmFub3V0b2ZmIHNoYTI1NjozCisJRU9GCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dyaXRlIG1pZHggd2l0aCBubyBwYWNrcycgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCBybSAtZiBwYWNrL211bHRpLXBhY2staW5kZXggJiYKIAlnaXQgbXVsdGktcGFjay1pbmRleCAtLW9iamVjdC1kaXI9LiB3cml0ZSAmJgpAQCAtODYsMTMgKzEwMCwxNCBAQAogJwogCiBtaWR4X2dpdF90d29fbW9kZXMgKCkgeworCWdpdCAtYyBjb3JlLm11bHRpUGFja0luZGV4PWZhbHNlICQxID5leHBlY3QgJiYKKwlnaXQgLWMgY29yZS5tdWx0aVBhY2tJbmRleD10cnVlICQxID5hY3R1YWwgJiYKIAlpZiBbICIkMiIgPSAic29ydGVkIiBdCiAJdGhlbgotCQlnaXQgLWMgY29yZS5tdWx0aVBhY2tJbmRleD1mYWxzZSAkMSB8IHNvcnQgPmV4cGVjdCAmJgotCQlnaXQgLWMgY29yZS5tdWx0aVBhY2tJbmRleD10cnVlICQxIHwgc29ydCA+YWN0dWFsCi0JZWxzZQotCQlnaXQgLWMgY29yZS5tdWx0aVBhY2tJbmRleD1mYWxzZSAkMSA+ZXhwZWN0ICYmCi0JCWdpdCAtYyBjb3JlLm11bHRpUGFja0luZGV4PXRydWUgJDEgPmFjdHVhbAorCQlzb3J0IDxleHBlY3QgPmV4cGVjdC5zb3J0ZWQgJiYKKwkJbXYgZXhwZWN0LnNvcnRlZCBleHBlY3QgJiYKKwkJc29ydCA8YWN0dWFsID5hY3R1YWwuc29ydGVkICYmCisJCW12IGFjdHVhbC5zb3J0ZWQgYWN0dWFsCiAJZmkgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiB9CkBAIC0xMDMsOCArMTE4LDggQEAKIAkJbWlkeF9naXRfdHdvX21vZGVzICJyZXYtbGlzdCAtLW9iamVjdHMgLS1hbGwiICYmCiAJCW1pZHhfZ2l0X3R3b19tb2RlcyAibG9nIC0tcmF3IiAmJgogCQltaWR4X2dpdF90d29fbW9kZXMgImNvdW50LW9iamVjdHMgLS12ZXJib3NlIiAmJgotCQltaWR4X2dpdF90d29fbW9kZXMgImNhdC1maWxlIC0tYmF0Y2gtYWxsLW9iamVjdHMgLS1idWZmZXIgLS1iYXRjaC1jaGVjayIgJiYKLQkJbWlkeF9naXRfdHdvX21vZGVzICJjYXQtZmlsZSAtLWJhdGNoLWFsbC1vYmplY3RzIC0tYnVmZmVyIC0tYmF0Y2gtY2hlY2sgLS11bnNvcnRlZCIgc29ydGVkCisJCW1pZHhfZ2l0X3R3b19tb2RlcyAiY2F0LWZpbGUgLS1iYXRjaC1hbGwtb2JqZWN0cyAtLWJhdGNoLWNoZWNrIiAmJgorCQltaWR4X2dpdF90d29fbW9kZXMgImNhdC1maWxlIC0tYmF0Y2gtYWxsLW9iamVjdHMgLS1iYXRjaC1jaGVjayAtLXVub3JkZXJlZCIgc29ydGVkCiAJJwogfQogCkBAIC0xMTYsNiArMTMxLDIwIEBACiAKIGNvbXBhcmVfcmVzdWx0c193aXRoX21pZHggIm9uZSB2MiBwYWNrIgogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3JydXB0IGlkeCBub3Qgb3BlbmVkJyAnCisJaWR4PSQodGVzdC10b29sIHJlYWQtbWlkeCAkb2JqZGlyIHwgZ3JlcCAiXC5pZHhcJCIpICYmCisJbXYgJG9iamRpci9wYWNrLyRpZHggYmFja3VwLSRpZHggJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgIm12IGJhY2t1cC1cJGlkeCBcJG9iamRpci9wYWNrL1wkaWR4IiAmJgorCisJIyBUaGlzIGlzIHRoZSBtaW5pbXVtIHNpemUgZm9yIGEgc2hhLTEgYmFzZWQgLmlkeDsgdGhpcyBsZXRzCisJIyB1cyBwYXNzIHBlcmZ1bmN0b3J5IHRlc3RzLCBidXQgYW55dGhpbmcgdGhhdCBhY3R1YWxseSBvcGVucyBhbmQgcmVhZHMKKwkjIHRoZSBpZHggZmlsZSB3aWxsIGNvbXBsYWluLgorCXRlc3RfY29weV9ieXRlcyAxMDY0IDxiYWNrdXAtJGlkeCA+JG9iamRpci9wYWNrLyRpZHggJiYKKworCWdpdCAtYyBjb3JlLm11bHRpUGFja0luZGV4PXRydWUgcmV2LWxpc3QgLS1vYmplY3RzIC0tYWxsIDI+ZXJyICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGVycgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhZGQgbW9yZSBvYmplY3RzJyAnCiAJZm9yIGkgaW4gJCh0ZXN0X3NlcSA2IDEwKQogCWRvCkBAIC0xMzIsNiArMTYxLDIxIEBACiAKIGNvbXBhcmVfcmVzdWx0c193aXRoX21pZHggInR3byBwYWNrcyIKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnd3JpdGUgcHJvZ3Jlc3Mgb2ZmIGZvciByZWRpcmVjdGVkIHN0ZGVycicgJworCWdpdCBtdWx0aS1wYWNrLWluZGV4IC0tb2JqZWN0LWRpcj0kb2JqZGlyIHdyaXRlIDI+ZXJyICYmCisJdGVzdF9saW5lX2NvdW50ID0gMCBlcnIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnd3JpdGUgZm9yY2UgcHJvZ3Jlc3Mgb24gZm9yIHN0ZGVycicgJworCWdpdCBtdWx0aS1wYWNrLWluZGV4IC0tb2JqZWN0LWRpcj0kb2JqZGlyIC0tcHJvZ3Jlc3Mgd3JpdGUgMj5lcnIgJiYKKwl0ZXN0X2ZpbGVfbm90X2VtcHR5IGVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd3cml0ZSB3aXRoIHRoZSAtLW5vLXByb2dyZXNzIG9wdGlvbicgJworCWdpdCBtdWx0aS1wYWNrLWluZGV4IC0tb2JqZWN0LWRpcj0kb2JqZGlyIC0tbm8tcHJvZ3Jlc3Mgd3JpdGUgMj5lcnIgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAwIGVycgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhZGQgbW9yZSBwYWNrcycgJwogCWZvciBqIGluICQodGVzdF9zZXEgMTEgMjApCiAJZG8KQEAgLTE1NCw2ICsxOTgsMjEgQEAKIAlnaXQgbXVsdGktcGFjay1pbmRleCB2ZXJpZnkgLS1vYmplY3QtZGlyPSRvYmpkaXIKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IHByb2dyZXNzIG9mZiBmb3IgcmVkaXJlY3RlZCBzdGRlcnInICcKKwlnaXQgbXVsdGktcGFjay1pbmRleCB2ZXJpZnkgLS1vYmplY3QtZGlyPSRvYmpkaXIgMj5lcnIgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAwIGVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgZm9yY2UgcHJvZ3Jlc3Mgb24gZm9yIHN0ZGVycicgJworCWdpdCBtdWx0aS1wYWNrLWluZGV4IHZlcmlmeSAtLW9iamVjdC1kaXI9JG9iamRpciAtLXByb2dyZXNzIDI+ZXJyICYmCisJdGVzdF9maWxlX25vdF9lbXB0eSBlcnIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IHdpdGggdGhlIC0tbm8tcHJvZ3Jlc3Mgb3B0aW9uJyAnCisJZ2l0IG11bHRpLXBhY2staW5kZXggdmVyaWZ5IC0tb2JqZWN0LWRpcj0kb2JqZGlyIC0tbm8tcHJvZ3Jlc3MgMj5lcnIgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAwIGVycgorJworCiAjIHVzYWdlOiBjb3JydXB0X21pZHhfYW5kX3ZlcmlmeSA8cG9zPiA8ZGF0YT4gPG9iamRpcj4gPHN0cmluZz4KIGNvcnJ1cHRfbWlkeF9hbmRfdmVyaWZ5KCkgewogCVBPUz0kMSAmJgpAQCAtMTgwLDcgKzIzOSw3IEBACiAJCSJtdWx0aS1wYWNrLWluZGV4IHNpZ25hdHVyZSIKICcKIAotSEFTSF9MRU49MjAKK0hBU0hfTEVOPSQodGVzdF9vaWQgcmF3c3opCiBOVU1fT0JKRUNUUz03NAogTUlEWF9CWVRFX1ZFUlNJT049NAogTUlEWF9CWVRFX09JRF9WRVJTSU9OPTUKQEAgLTE5Myw5ICsyNTIsOSBAQAogTUlEWF9PRkZTRVRfUEFDS05BTUVTPSQoKCRNSURYX0hFQURFUl9TSVpFICsgXAogCQkJICRNSURYX05VTV9DSFVOS1MgKiAkTUlEWF9DSFVOS19MT09LVVBfV0lEVEgpKQogTUlEWF9CWVRFX1BBQ0tOQU1FX09SREVSPSQoKCRNSURYX09GRlNFVF9QQUNLTkFNRVMgKyAyKSkKLU1JRFhfT0ZGU0VUX09JRF9GQU5PVVQ9JCgoJE1JRFhfT0ZGU0VUX1BBQ0tOQU1FUyArIDY1MikpCitNSURYX09GRlNFVF9PSURfRkFOT1VUPSQoKCRNSURYX09GRlNFVF9QQUNLTkFNRVMgKyAkKHRlc3Rfb2lkIHBhY2tuYW1lb2ZmKSkpCiBNSURYX09JRF9GQU5PVVRfV0lEVEg9NAotTUlEWF9CWVRFX09JRF9GQU5PVVRfT1JERVI9JCgoTUlEWF9PRkZTRVRfT0lEX0ZBTk9VVCArIDI1MCAqICRNSURYX09JRF9GQU5PVVRfV0lEVEggKyAxKSkKK01JRFhfQllURV9PSURfRkFOT1VUX09SREVSPSQoKE1JRFhfT0ZGU0VUX09JRF9GQU5PVVQgKyAyNTAgKiAkTUlEWF9PSURfRkFOT1VUX1dJRFRIICsgJCh0ZXN0X29pZCBmYW5vdXRvZmYpKSkKIE1JRFhfT0ZGU0VUX09JRF9MT09LVVA9JCgoJE1JRFhfT0ZGU0VUX09JRF9GQU5PVVQgKyAyNTYgKiAkTUlEWF9PSURfRkFOT1VUX1dJRFRIKSkKIE1JRFhfQllURV9PSURfTE9PS1VQPSQoKCRNSURYX09GRlNFVF9PSURfTE9PS1VQICsgMTYgKiAkSEFTSF9MRU4pKQogTUlEWF9PRkZTRVRfT0JKRUNUX09GRlNFVFM9JCgoJE1JRFhfT0ZGU0VUX09JRF9MT09LVVAgKyAkTlVNX09CSkVDVFMgKiAkSEFTSF9MRU4pKQpAQCAtMjU5LDE2ICszMTgsMzEgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IGluY29ycmVjdCBvZmZzZXQnICcKLQljb3JydXB0X21pZHhfYW5kX3ZlcmlmeSAkTUlEWF9CWVRFX09GRlNFVCAiXDA3IiAkb2JqZGlyIFwKKwljb3JydXB0X21pZHhfYW5kX3ZlcmlmeSAkTUlEWF9CWVRFX09GRlNFVCAiXDM3NyIgJG9iamRpciBcCiAJCSJpbmNvcnJlY3Qgb2JqZWN0IG9mZnNldCIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0LWZzY2sgaW5jb3JyZWN0IG9mZnNldCcgJwotCWNvcnJ1cHRfbWlkeF9hbmRfdmVyaWZ5ICRNSURYX0JZVEVfT0ZGU0VUICJcMDciICRvYmpkaXIgXAorCWNvcnJ1cHRfbWlkeF9hbmRfdmVyaWZ5ICRNSURYX0JZVEVfT0ZGU0VUICJcMzc3IiAkb2JqZGlyIFwKIAkJImluY29ycmVjdCBvYmplY3Qgb2Zmc2V0IiBcCiAJCSJnaXQgLWMgY29yZS5tdWx0aXBhY2tpbmRleD10cnVlIGZzY2siCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlcGFjayBwcm9ncmVzcyBvZmYgZm9yIHJlZGlyZWN0ZWQgc3RkZXJyJyAnCisJZ2l0IG11bHRpLXBhY2staW5kZXggLS1vYmplY3QtZGlyPSRvYmpkaXIgcmVwYWNrIDI+ZXJyICYmCisJdGVzdF9saW5lX2NvdW50ID0gMCBlcnIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVwYWNrIGZvcmNlIHByb2dyZXNzIG9uIGZvciBzdGRlcnInICcKKwlnaXQgbXVsdGktcGFjay1pbmRleCAtLW9iamVjdC1kaXI9JG9iamRpciAtLXByb2dyZXNzIHJlcGFjayAyPmVyciAmJgorCXRlc3RfZmlsZV9ub3RfZW1wdHkgZXJyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlcGFjayB3aXRoIHRoZSAtLW5vLXByb2dyZXNzIG9wdGlvbicgJworCWdpdCBtdWx0aS1wYWNrLWluZGV4IC0tb2JqZWN0LWRpcj0kb2JqZGlyIC0tbm8tcHJvZ3Jlc3MgcmVwYWNrIDI+ZXJyICYmCisJdGVzdF9saW5lX2NvdW50ID0gMCBlcnIKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVwYWNrIHJlbW92ZXMgbXVsdGktcGFjay1pbmRleCcgJwogCXRlc3RfcGF0aF9pc19maWxlICRvYmpkaXIvcGFjay9tdWx0aS1wYWNrLWluZGV4ICYmCiAJR0lUX1RFU1RfTVVMVElfUEFDS19JTkRFWD0wIGdpdCByZXBhY2sgLWFkZiAmJgpAQCAtMzI3LDcgKzQwMSw3IEBACiAJcGFjazY0PSQoZ2l0IHBhY2stb2JqZWN0cyAtLWluZGV4LXZlcnNpb249MiwweDQwIG9iamVjdHM2NC9wYWNrL3Rlc3QtNjQgPG9iai1saXN0KSAmJgogCWlkeDY0PW9iamVjdHM2NC9wYWNrL3Rlc3QtNjQtJHBhY2s2NC5pZHggJiYKIAljaG1vZCB1K3cgJGlkeDY0ICYmCi0JY29ycnVwdF9kYXRhICRpZHg2NCAyOTk5ICJcMDIiICYmCisJY29ycnVwdF9kYXRhICRpZHg2NCAkKHRlc3Rfb2lkIGlkeG9mZikgIlwwMiIgJiYKIAltaWR4NjQ9JChnaXQgbXVsdGktcGFjay1pbmRleCAtLW9iamVjdC1kaXI9b2JqZWN0czY0IHdyaXRlKSAmJgogCW1pZHhfcmVhZF9leHBlY3QgMSA2MyA1IG9iamVjdHM2NCAiIGxhcmdlLW9mZnNldHMiCiAnCkBAIC0zNDgsNCArNDIyLDIxMiBAQAogCQkiaW5jb3JyZWN0IG9iamVjdCBvZmZzZXQiCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIGV4cGlyZSB0ZXN0cycgJworCW1rZGlyIGR1cCAmJgorCSgKKwkJY2QgZHVwICYmCisJCWdpdCBpbml0ICYmCisJCXRlc3QtdG9vbCBnZW5yYW5kb20gImRhdGEiIDQwOTYgPmxhcmdlX2ZpbGUudHh0ICYmCisJCWdpdCB1cGRhdGUtaW5kZXggLS1hZGQgbGFyZ2VfZmlsZS50eHQgJiYKKwkJZm9yIGkgaW4gJCh0ZXN0X3NlcSAxIDIwKQorCQlkbworCQkJdGVzdF9jb21taXQgJGkKKwkJZG9uZSAmJgorCQlnaXQgYnJhbmNoIEEgSEVBRCAmJgorCQlnaXQgYnJhbmNoIEIgSEVBRH44ICYmCisJCWdpdCBicmFuY2ggQyBIRUFEfjEzICYmCisJCWdpdCBicmFuY2ggRCBIRUFEfjE2ICYmCisJCWdpdCBicmFuY2ggRSBIRUFEfjE4ICYmCisJCWdpdCBwYWNrLW9iamVjdHMgLS1yZXZzIC5naXQvb2JqZWN0cy9wYWNrL3BhY2stQSA8PC1FT0YgJiYKKwkJcmVmcy9oZWFkcy9BCisJCV5yZWZzL2hlYWRzL0IKKwkJRU9GCisJCWdpdCBwYWNrLW9iamVjdHMgLS1yZXZzIC5naXQvb2JqZWN0cy9wYWNrL3BhY2stQiA8PC1FT0YgJiYKKwkJcmVmcy9oZWFkcy9CCisJCV5yZWZzL2hlYWRzL0MKKwkJRU9GCisJCWdpdCBwYWNrLW9iamVjdHMgLS1yZXZzIC5naXQvb2JqZWN0cy9wYWNrL3BhY2stQyA8PC1FT0YgJiYKKwkJcmVmcy9oZWFkcy9DCisJCV5yZWZzL2hlYWRzL0QKKwkJRU9GCisJCWdpdCBwYWNrLW9iamVjdHMgLS1yZXZzIC5naXQvb2JqZWN0cy9wYWNrL3BhY2stRCA8PC1FT0YgJiYKKwkJcmVmcy9oZWFkcy9ECisJCV5yZWZzL2hlYWRzL0UKKwkJRU9GCisJCWdpdCBwYWNrLW9iamVjdHMgLS1yZXZzIC5naXQvb2JqZWN0cy9wYWNrL3BhY2stRSA8PC1FT0YgJiYKKwkJcmVmcy9oZWFkcy9FCisJCUVPRgorCQlnaXQgbXVsdGktcGFjay1pbmRleCB3cml0ZSAmJgorCQljcCAtciAuZ2l0L29iamVjdHMvcGFjayAuZ2l0L29iamVjdHMvcGFjay1iYWNrdXAKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2V4cGlyZSBkb2VzIG5vdCByZW1vdmUgYW55IHBhY2tzJyAnCisJKAorCQljZCBkdXAgJiYKKwkJbHMgLmdpdC9vYmplY3RzL3BhY2sgPmV4cGVjdCAmJgorCQlnaXQgbXVsdGktcGFjay1pbmRleCBleHBpcmUgJiYKKwkJbHMgLmdpdC9vYmplY3RzL3BhY2sgPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdleHBpcmUgcHJvZ3Jlc3Mgb2ZmIGZvciByZWRpcmVjdGVkIHN0ZGVycicgJworCSgKKwkJY2QgZHVwICYmCisJCWdpdCBtdWx0aS1wYWNrLWluZGV4IGV4cGlyZSAyPmVyciAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAwIGVycgorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZXhwaXJlIGZvcmNlIHByb2dyZXNzIG9uIGZvciBzdGRlcnInICcKKwkoCisJCWNkIGR1cCAmJgorCQlnaXQgbXVsdGktcGFjay1pbmRleCAtLXByb2dyZXNzIGV4cGlyZSAyPmVyciAmJgorCQl0ZXN0X2ZpbGVfbm90X2VtcHR5IGVycgorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZXhwaXJlIHdpdGggdGhlIC0tbm8tcHJvZ3Jlc3Mgb3B0aW9uJyAnCisJKAorCQljZCBkdXAgJiYKKwkJZ2l0IG11bHRpLXBhY2staW5kZXggLS1uby1wcm9ncmVzcyBleHBpcmUgMj5lcnIgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMCBlcnIKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2V4cGlyZSByZW1vdmVzIHVucmVmZXJlbmNlZCBwYWNrcycgJworCSgKKwkJY2QgZHVwICYmCisJCWdpdCBwYWNrLW9iamVjdHMgLS1yZXZzIC5naXQvb2JqZWN0cy9wYWNrL3BhY2stY29tYmluZWQgPDwtRU9GICYmCisJCXJlZnMvaGVhZHMvQQorCQlecmVmcy9oZWFkcy9DCisJCUVPRgorCQlnaXQgbXVsdGktcGFjay1pbmRleCB3cml0ZSAmJgorCQlscyAuZ2l0L29iamVjdHMvcGFjayB8IGdyZXAgLXYgLWUgcGFjay1bQUJdID5leHBlY3QgJiYKKwkJZ2l0IG11bHRpLXBhY2staW5kZXggZXhwaXJlICYmCisJCWxzIC5naXQvb2JqZWN0cy9wYWNrID5hY3R1YWwgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCQlscyAuZ2l0L29iamVjdHMvcGFjay8gfCBncmVwIGlkeCA+ZXhwZWN0LWlkeCAmJgorCQl0ZXN0LXRvb2wgcmVhZC1taWR4IC5naXQvb2JqZWN0cyB8IGdyZXAgaWR4ID5hY3R1YWwtbWlkeCAmJgorCQl0ZXN0X2NtcCBleHBlY3QtaWR4IGFjdHVhbC1taWR4ICYmCisJCWdpdCBtdWx0aS1wYWNrLWluZGV4IHZlcmlmeSAmJgorCQlnaXQgZnNjaworCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVwYWNrIHdpdGggbWluaW11bSBzaXplIGRvZXMgbm90IGFsdGVyIGV4aXN0aW5nIHBhY2tzJyAnCisJKAorCQljZCBkdXAgJiYKKwkJcm0gLXJmIC5naXQvb2JqZWN0cy9wYWNrICYmCisJCW12IC5naXQvb2JqZWN0cy9wYWNrLWJhY2t1cCAuZ2l0L29iamVjdHMvcGFjayAmJgorCQl0b3VjaCAtbSAtdCAyMDE5MDEwMTAwMDAgLmdpdC9vYmplY3RzL3BhY2svcGFjay1EKiAmJgorCQl0b3VjaCAtbSAtdCAyMDE5MDEwMTAwMDEgLmdpdC9vYmplY3RzL3BhY2svcGFjay1DKiAmJgorCQl0b3VjaCAtbSAtdCAyMDE5MDEwMTAwMDIgLmdpdC9vYmplY3RzL3BhY2svcGFjay1CKiAmJgorCQl0b3VjaCAtbSAtdCAyMDE5MDEwMTAwMDMgLmdpdC9vYmplY3RzL3BhY2svcGFjay1BKiAmJgorCQlscyAuZ2l0L29iamVjdHMvcGFjayA+ZXhwZWN0ICYmCisJCU1JTlNJWkU9JCh0ZXN0LXRvb2wgcGF0aC11dGlscyBmaWxlLXNpemUgLmdpdC9vYmplY3RzL3BhY2svKnBhY2sgfCBzb3J0IC1uIHwgaGVhZCAtbiAxKSAmJgorCQlnaXQgbXVsdGktcGFjay1pbmRleCByZXBhY2sgLS1iYXRjaC1zaXplPSRNSU5TSVpFICYmCisJCWxzIC5naXQvb2JqZWN0cy9wYWNrID5hY3R1YWwgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVwYWNrIGNyZWF0ZXMgYSBuZXcgcGFjaycgJworCSgKKwkJY2QgZHVwICYmCisJCWxzIC5naXQvb2JqZWN0cy9wYWNrLyppZHggPmlkeC1saXN0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDUgaWR4LWxpc3QgJiYKKwkJVEhJUkRfU01BTExFU1RfU0laRT0kKHRlc3QtdG9vbCBwYXRoLXV0aWxzIGZpbGUtc2l6ZSAuZ2l0L29iamVjdHMvcGFjay8qcGFjayB8IHNvcnQgLW4gfCBoZWFkIC1uIDMgfCB0YWlsIC1uIDEpICYmCisJCUJBVENIX1NJWkU9JCgoJFRISVJEX1NNQUxMRVNUX1NJWkUgKyAxKSkgJiYKKwkJZ2l0IG11bHRpLXBhY2staW5kZXggcmVwYWNrIC0tYmF0Y2gtc2l6ZT0kQkFUQ0hfU0laRSAmJgorCQlscyAuZ2l0L29iamVjdHMvcGFjay8qaWR4ID5pZHgtbGlzdCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSA2IGlkeC1saXN0ICYmCisJCXRlc3QtdG9vbCByZWFkLW1pZHggLmdpdC9vYmplY3RzIHwgZ3JlcCBpZHggPm1pZHgtbGlzdCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSA2IG1pZHgtbGlzdAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZXhwaXJlIHJlbW92ZXMgcmVwYWNrZWQgcGFja3MnICcKKwkoCisJCWNkIGR1cCAmJgorCQlscyAtYWwgLmdpdC9vYmplY3RzL3BhY2svKnBhY2sgJiYKKwkJbHMgLVMgLmdpdC9vYmplY3RzL3BhY2svKnBhY2sgfCBoZWFkIC1uIDQgPmV4cGVjdCAmJgorCQlnaXQgbXVsdGktcGFjay1pbmRleCBleHBpcmUgJiYKKwkJbHMgLVMgLmdpdC9vYmplY3RzL3BhY2svKnBhY2sgPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJCXRlc3QtdG9vbCByZWFkLW1pZHggLmdpdC9vYmplY3RzIHwgZ3JlcCBpZHggPm1pZHgtbGlzdCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSA0IG1pZHgtbGlzdAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZXhwaXJlIHdvcmtzIHdoZW4gYWRkaW5nIG5ldyBwYWNrcycgJworCSgKKwkJY2QgZHVwICYmCisJCWdpdCBwYWNrLW9iamVjdHMgLS1yZXZzIC5naXQvb2JqZWN0cy9wYWNrL3BhY2stY29tYmluZWQgPDwtRU9GICYmCisJCXJlZnMvaGVhZHMvQQorCQlecmVmcy9oZWFkcy9CCisJCUVPRgorCQlnaXQgcGFjay1vYmplY3RzIC0tcmV2cyAuZ2l0L29iamVjdHMvcGFjay9wYWNrLWNvbWJpbmVkIDw8LUVPRiAmJgorCQlyZWZzL2hlYWRzL0IKKwkJXnJlZnMvaGVhZHMvQworCQlFT0YKKwkJZ2l0IHBhY2stb2JqZWN0cyAtLXJldnMgLmdpdC9vYmplY3RzL3BhY2svcGFjay1jb21iaW5lZCA8PC1FT0YgJiYKKwkJcmVmcy9oZWFkcy9DCisJCV5yZWZzL2hlYWRzL0QKKwkJRU9GCisJCWdpdCBtdWx0aS1wYWNrLWluZGV4IHdyaXRlICYmCisJCWdpdCBwYWNrLW9iamVjdHMgLS1yZXZzIC5naXQvb2JqZWN0cy9wYWNrL2EtcGFjayA8PC1FT0YgJiYKKwkJcmVmcy9oZWFkcy9ECisJCV5yZWZzL2hlYWRzL0UKKwkJRU9GCisJCWdpdCBtdWx0aS1wYWNrLWluZGV4IHdyaXRlICYmCisJCWdpdCBwYWNrLW9iamVjdHMgLS1yZXZzIC5naXQvb2JqZWN0cy9wYWNrL3otcGFjayA8PC1FT0YgJiYKKwkJcmVmcy9oZWFkcy9FCisJCUVPRgorCQlnaXQgbXVsdGktcGFjay1pbmRleCBleHBpcmUgJiYKKwkJbHMgLmdpdC9vYmplY3RzL3BhY2svIHwgZ3JlcCBpZHggPmV4cGVjdCAmJgorCQl0ZXN0LXRvb2wgcmVhZC1taWR4IC5naXQvb2JqZWN0cyB8IGdyZXAgaWR4ID5hY3R1YWwgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCQlnaXQgbXVsdGktcGFjay1pbmRleCB2ZXJpZnkKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2V4cGlyZSByZXNwZWN0cyAua2VlcCBmaWxlcycgJworCSgKKwkJY2QgZHVwICYmCisJCWdpdCBwYWNrLW9iamVjdHMgLS1yZXZzIC5naXQvb2JqZWN0cy9wYWNrL3BhY2stYWxsIDw8LUVPRiAmJgorCQlyZWZzL2hlYWRzL0EKKwkJRU9GCisJCWdpdCBtdWx0aS1wYWNrLWluZGV4IHdyaXRlICYmCisJCVBBQ0tBPSQobHMgLmdpdC9vYmplY3RzL3BhY2svYS1wYWNrKlwucGFjayB8IHNlZCBzL1wucGFja1wkLy8pICYmCisJCXRvdWNoICRQQUNLQS5rZWVwICYmCisJCWdpdCBtdWx0aS1wYWNrLWluZGV4IGV4cGlyZSAmJgorCQlscyAtUyAuZ2l0L29iamVjdHMvcGFjay9hLXBhY2sqIHwgZ3JlcCAkUEFDS0EgPmEtcGFjay1maWxlcyAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAzIGEtcGFjay1maWxlcyAmJgorCQl0ZXN0LXRvb2wgcmVhZC1taWR4IC5naXQvb2JqZWN0cyB8IGdyZXAgaWR4ID5taWR4LWxpc3QgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMiBtaWR4LWxpc3QKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlcGFjayAtLWJhdGNoLXNpemU9MCByZXBhY2tzIGV2ZXJ5dGhpbmcnICcKKwkoCisJCWNkIGR1cCAmJgorCQlybSAuZ2l0L29iamVjdHMvcGFjay8qLmtlZXAgJiYKKwkJbHMgLmdpdC9vYmplY3RzL3BhY2svKmlkeCA+aWR4LWxpc3QgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMiBpZHgtbGlzdCAmJgorCQlnaXQgbXVsdGktcGFjay1pbmRleCByZXBhY2sgLS1iYXRjaC1zaXplPTAgJiYKKwkJbHMgLmdpdC9vYmplY3RzL3BhY2svKmlkeCA+aWR4LWxpc3QgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMyBpZHgtbGlzdCAmJgorCQl0ZXN0LXRvb2wgcmVhZC1taWR4IC5naXQvb2JqZWN0cyB8IGdyZXAgaWR4ID5taWR4LWxpc3QgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMyBtaWR4LWxpc3QgJiYKKwkJZ2l0IG11bHRpLXBhY2staW5kZXggZXhwaXJlICYmCisJCWxzIC1hbCAuZ2l0L29iamVjdHMvcGFjay8qaWR4ID5pZHgtbGlzdCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAxIGlkeC1saXN0ICYmCisJCWdpdCBtdWx0aS1wYWNrLWluZGV4IHJlcGFjayAtLWJhdGNoLXNpemU9MCAmJgorCQlscyAtYWwgLmdpdC9vYmplY3RzL3BhY2svKmlkeCA+bmV3LWlkeC1saXN0ICYmCisJCXRlc3RfY21wIGlkeC1saXN0IG5ldy1pZHgtbGlzdAorCSkKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1MzIxLXBhY2stbGFyZ2Utb2JqZWN0cy5zaCBiL3QvdDUzMjEtcGFjay1sYXJnZS1vYmplY3RzLnNoCmluZGV4IGE3NWVhYjguLjhhNTZkOTggMTAwNzU1Ci0tLSBhL3QvdDUzMjEtcGFjay1sYXJnZS1vYmplY3RzLnNoCisrKyBiL3QvdDUzMjEtcGFjay1sYXJnZS1vYmplY3RzLnNoCkBAIC0xMCw4ICsxMCw4IEBACiAuICIkVEVTVF9ESVJFQ1RPUlkiL2xpYi1wYWNrLnNoCiAKICMgVHdvIHNpbWlsYXItaXNoIG9iamVjdHMgdGhhdCB3ZSBoYXZlIGNvbXB1dGVkIGRlbHRhcyBiZXR3ZWVuLgotQT0wMWQ3NzEzNjY2ZjRkZTgyMjc3NmM3NjIyYzEwZjFiMDdkZTI4MGRjCi1CPWU2OGZlODEyOWI1NDZiMTAxYWVlOTUxMGM1MzI4ZTdmMjFjYTFkMTgKK0E9JCh0ZXN0X29pZCBwYWNrbGliXzdfMCkKK0I9JCh0ZXN0X29pZCBwYWNrbGliXzdfNzYpCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCiAJY2xlYXJfcGFja3MgJiYKZGlmZiAtLWdpdCBhL3QvdDUzMjItcGFjay1vYmplY3RzLXNwYXJzZS5zaCBiL3QvdDUzMjItcGFjay1vYmplY3RzLXNwYXJzZS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi43MTI0YjU1Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NTMyMi1wYWNrLW9iamVjdHMtc3BhcnNlLnNoCkBAIC0wLDAgKzEsMTM2IEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0ncGFjay1vYmplY3RzIG9iamVjdCBzZWxlY3Rpb24gdXNpbmcgc3BhcnNlIGFsZ29yaXRobScKKy4gLi90ZXN0LWxpYi5zaAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCByZXBvJyAnCisJdGVzdF9jb21taXQgaW5pdGlhbCAmJgorCWZvciBpIGluICQodGVzdF9zZXEgMSAzKQorCWRvCisJCW1rZGlyIGYkaSAmJgorCQlmb3IgaiBpbiAkKHRlc3Rfc2VxIDEgMykKKwkJZG8KKwkJCW1rZGlyIGYkaS9mJGogJiYKKwkJCWVjaG8gJGogPmYkaS9mJGovZGF0YS50eHQKKwkJZG9uZQorCWRvbmUgJiYKKwlnaXQgYWRkIC4gJiYKKwlnaXQgY29tbWl0IC1tICJJbml0aWFsaXplZCB0cmVlcyIgJiYKKwlmb3IgaSBpbiAkKHRlc3Rfc2VxIDEgMykKKwlkbworCQlnaXQgY2hlY2tvdXQgLWIgdG9waWMkaSBtYXN0ZXIgJiYKKwkJZWNobyBjaGFuZ2UtJGkgPmYkaS9mJGkvZGF0YS50eHQgJiYKKwkJZ2l0IGNvbW1pdCAtYSAtbSAiQ2hhbmdlZCBmJGkvZiRpL2RhdGEudHh0IgorCWRvbmUgJiYKKwljYXQgPnBhY2tpbnB1dC50eHQgPDwtRU9GICYmCisJdG9waWMxCisJXnRvcGljMgorCV50b3BpYzMKKwlFT0YKKwlnaXQgcmV2LXBhcnNlCQkJXAorCQl0b3BpYzEJCQlcCisJCXRvcGljMV57dHJlZX0JCVwKKwkJdG9waWMxOmYxCQlcCisJCXRvcGljMTpmMS9mMQkJXAorCQl0b3BpYzE6ZjEvZjEvZGF0YS50eHQgfCBzb3J0ID5leHBlY3Rfb2JqZWN0cy50eHQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbm9uLXNwYXJzZSBwYWNrLW9iamVjdHMnICcKKwlnaXQgcGFjay1vYmplY3RzIC0tc3Rkb3V0IC0tcmV2cyAtLW5vLXNwYXJzZSA8cGFja2lucHV0LnR4dCA+bm9uc3BhcnNlLnBhY2sgJiYKKwlnaXQgaW5kZXgtcGFjayAtbyBub25zcGFyc2UuaWR4IG5vbnNwYXJzZS5wYWNrICYmCisJZ2l0IHNob3ctaW5kZXggPG5vbnNwYXJzZS5pZHggfCBhd2sgIntwcmludCBcJDJ9IiA+bm9uc3BhcnNlX29iamVjdHMudHh0ICYmCisJdGVzdF9jbXAgZXhwZWN0X29iamVjdHMudHh0IG5vbnNwYXJzZV9vYmplY3RzLnR4dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzcGFyc2UgcGFjay1vYmplY3RzJyAnCisJZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCAtLXJldnMgLS1zcGFyc2UgPHBhY2tpbnB1dC50eHQgPnNwYXJzZS5wYWNrICYmCisJZ2l0IGluZGV4LXBhY2sgLW8gc3BhcnNlLmlkeCBzcGFyc2UucGFjayAmJgorCWdpdCBzaG93LWluZGV4IDxzcGFyc2UuaWR4IHwgYXdrICJ7cHJpbnQgXCQyfSIgPnNwYXJzZV9vYmplY3RzLnR4dCAmJgorCXRlc3RfY21wIGV4cGVjdF9vYmplY3RzLnR4dCBzcGFyc2Vfb2JqZWN0cy50eHQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZHVwbGljYXRlIGEgZm9sZGVyIGZyb20gZjMgYW5kIGNvbW1pdCB0byB0b3BpYzEnICcKKwlnaXQgY2hlY2tvdXQgdG9waWMxICYmCisJZWNobyBjaGFuZ2UtMyA+ZjMvZjMvZGF0YS50eHQgJiYKKwlnaXQgY29tbWl0IC1hIC1tICJDaGFuZ2VkIGYzL2YzL2RhdGEudHh0IiAmJgorCWdpdCByZXYtcGFyc2UJCQlcCisJCXRvcGljMX4xCQlcCisJCXRvcGljMX4xXnt0cmVlfQkJXAorCQl0b3BpYzFee3RyZWV9CQlcCisJCXRvcGljMQkJCVwKKwkJdG9waWMxOmYxCQlcCisJCXRvcGljMTpmMS9mMQkJXAorCQl0b3BpYzE6ZjEvZjEvZGF0YS50eHQgfCBzb3J0ID5yZXF1aXJlZF9vYmplY3RzLnR4dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdub24tc3BhcnNlIHBhY2stb2JqZWN0cycgJworCWdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgLS1yZXZzIC0tbm8tc3BhcnNlIDxwYWNraW5wdXQudHh0ID5ub25zcGFyc2UucGFjayAmJgorCWdpdCBpbmRleC1wYWNrIC1vIG5vbnNwYXJzZS5pZHggbm9uc3BhcnNlLnBhY2sgJiYKKwlnaXQgc2hvdy1pbmRleCA8bm9uc3BhcnNlLmlkeCB8IGF3ayAie3ByaW50IFwkMn0iID5ub25zcGFyc2Vfb2JqZWN0cy50eHQgJiYKKwljb21tIC0xIC0yIHJlcXVpcmVkX29iamVjdHMudHh0IG5vbnNwYXJzZV9vYmplY3RzLnR4dCA+bm9uc3BhcnNlX3JlcXVpcmVkX29iamVjdHMudHh0ICYmCisJdGVzdF9jbXAgcmVxdWlyZWRfb2JqZWN0cy50eHQgbm9uc3BhcnNlX3JlcXVpcmVkX29iamVjdHMudHh0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NwYXJzZSBwYWNrLW9iamVjdHMnICcKKwlnaXQgcGFjay1vYmplY3RzIC0tc3Rkb3V0IC0tcmV2cyAtLXNwYXJzZSA8cGFja2lucHV0LnR4dCA+c3BhcnNlLnBhY2sgJiYKKwlnaXQgaW5kZXgtcGFjayAtbyBzcGFyc2UuaWR4IHNwYXJzZS5wYWNrICYmCisJZ2l0IHNob3ctaW5kZXggPHNwYXJzZS5pZHggfCBhd2sgIntwcmludCBcJDJ9IiA+c3BhcnNlX29iamVjdHMudHh0ICYmCisJY29tbSAtMSAtMiByZXF1aXJlZF9vYmplY3RzLnR4dCBzcGFyc2Vfb2JqZWN0cy50eHQgPnNwYXJzZV9yZXF1aXJlZF9vYmplY3RzLnR4dCAmJgorCXRlc3RfY21wIHJlcXVpcmVkX29iamVjdHMudHh0IHNwYXJzZV9yZXF1aXJlZF9vYmplY3RzLnR4dAorJworCisjIERlbW9uc3RyYXRlIHRoYXQgdGhlIGFsZ29yaXRobXMgZGlmZmVyIHdoZW4gd2UgY29weSBhIHRyZWUgd2hvbGVzYWxlCisjIGZyb20gb25lIGZvbGRlciB0byBhbm90aGVyLgorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkdXBsaWNhdGUgYSBmb2xkZXIgZnJvbSBmMSBpbnRvIGYzJyAnCisJbWtkaXIgZjMvZjQgJiYKKwljcCAtciBmMS9mMS8qIGYzL2Y0ICYmCisJZ2l0IGFkZCBmMy9mNCAmJgorCWdpdCBjb21taXQgLW0gIkNvcGllZCBmMS9mMSB0byBmMy9mNCIgJiYKKwljYXQgPnBhY2tpbnB1dC50eHQgPDwtRU9GICYmCisJdG9waWMxCisJXnRvcGljMX4xCisJRU9GCisJZ2l0IHJldi1wYXJzZQkJXAorCQl0b3BpYzEJCVwKKwkJdG9waWMxXnt0cmVlfSAgIFwKKwkJdG9waWMxOmYzIHwgc29ydCA+cmVxdWlyZWRfb2JqZWN0cy50eHQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbm9uLXNwYXJzZSBwYWNrLW9iamVjdHMnICcKKwlnaXQgcGFjay1vYmplY3RzIC0tc3Rkb3V0IC0tcmV2cyAtLW5vLXNwYXJzZSA8cGFja2lucHV0LnR4dCA+bm9uc3BhcnNlLnBhY2sgJiYKKwlnaXQgaW5kZXgtcGFjayAtbyBub25zcGFyc2UuaWR4IG5vbnNwYXJzZS5wYWNrICYmCisJZ2l0IHNob3ctaW5kZXggPG5vbnNwYXJzZS5pZHggfCBhd2sgIntwcmludCBcJDJ9IiA+bm9uc3BhcnNlX29iamVjdHMudHh0ICYmCisJY29tbSAtMSAtMiByZXF1aXJlZF9vYmplY3RzLnR4dCBub25zcGFyc2Vfb2JqZWN0cy50eHQgPm5vbnNwYXJzZV9yZXF1aXJlZF9vYmplY3RzLnR4dCAmJgorCXRlc3RfY21wIHJlcXVpcmVkX29iamVjdHMudHh0IG5vbnNwYXJzZV9yZXF1aXJlZF9vYmplY3RzLnR4dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzcGFyc2UgcGFjay1vYmplY3RzJyAnCisJZ2l0IHJldi1wYXJzZQkJCVwKKwkJdG9waWMxCQkJXAorCQl0b3BpYzFee3RyZWV9CQlcCisJCXRvcGljMTpmMwkJXAorCQl0b3BpYzE6ZjMvZjQJCVwKKwkJdG9waWMxOmYzL2Y0L2RhdGEudHh0IHwgc29ydCA+ZXhwZWN0X3NwYXJzZV9vYmplY3RzLnR4dCAmJgorCWdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgLS1yZXZzIC0tc3BhcnNlIDxwYWNraW5wdXQudHh0ID5zcGFyc2UucGFjayAmJgorCWdpdCBpbmRleC1wYWNrIC1vIHNwYXJzZS5pZHggc3BhcnNlLnBhY2sgJiYKKwlnaXQgc2hvdy1pbmRleCA8c3BhcnNlLmlkeCB8IGF3ayAie3ByaW50IFwkMn0iID5zcGFyc2Vfb2JqZWN0cy50eHQgJiYKKwl0ZXN0X2NtcCBleHBlY3Rfc3BhcnNlX29iamVjdHMudHh0IHNwYXJzZV9vYmplY3RzLnR4dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwYWNrLnVzZVNwYXJzZSBlbmFibGVzIGFsZ29yaXRobScgJworCWdpdCBjb25maWcgcGFjay51c2VTcGFyc2UgdHJ1ZSAmJgorCWdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgLS1yZXZzIDxwYWNraW5wdXQudHh0ID5zcGFyc2UucGFjayAmJgorCWdpdCBpbmRleC1wYWNrIC1vIHNwYXJzZS5pZHggc3BhcnNlLnBhY2sgJiYKKwlnaXQgc2hvdy1pbmRleCA8c3BhcnNlLmlkeCB8IGF3ayAie3ByaW50IFwkMn0iID5zcGFyc2Vfb2JqZWN0cy50eHQgJiYKKwl0ZXN0X2NtcCBleHBlY3Rfc3BhcnNlX29iamVjdHMudHh0IHNwYXJzZV9vYmplY3RzLnR4dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwYWNrLnVzZVNwYXJzZSBvdmVycmlkZGVuJyAnCisJZ2l0IHBhY2stb2JqZWN0cyAtLXN0ZG91dCAtLXJldnMgLS1uby1zcGFyc2UgPHBhY2tpbnB1dC50eHQgPnNwYXJzZS5wYWNrICYmCisJZ2l0IGluZGV4LXBhY2sgLW8gc3BhcnNlLmlkeCBzcGFyc2UucGFjayAmJgorCWdpdCBzaG93LWluZGV4IDxzcGFyc2UuaWR4IHwgYXdrICJ7cHJpbnQgXCQyfSIgPnNwYXJzZV9vYmplY3RzLnR4dCAmJgorCXRlc3RfY21wIHJlcXVpcmVkX29iamVjdHMudHh0IHNwYXJzZV9vYmplY3RzLnR4dAorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDUzMjMtcGFjay1yZWR1bmRhbnQuc2ggYi90L3Q1MzIzLXBhY2stcmVkdW5kYW50LnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjZiNGQxY2EKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q1MzIzLXBhY2stcmVkdW5kYW50LnNoCkBAIC0wLDAgKzEsNDY3IEBACisjIS9iaW4vc2gKKyMKKyMgQ29weXJpZ2h0IChjKSAyMDE4IEppYW5nIFhpbgorIworCit0ZXN0X2Rlc2NyaXB0aW9uPSdUZXN0IGdpdCBwYWNrLXJlZHVuZGFudAorCitJbiBvcmRlciB0byB0ZXN0IGdpdC1wYWNrLXJlZHVuZGFudCwgd2Ugd2lsbCBjcmVhdGUgYSBudW1iZXIgb2Ygb2JqZWN0cyBhbmQKK3BhY2tzIGluIHRoZSByZXBvc2l0b3J5IGBtYXN0ZXIuZ2l0YC4gVGhlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIHBhY2tzIChQMS1QOCkKK2FuZCBvYmplY3RzIChULCBBLVIpIGlzIHNob3dlZCBpbiB0aGUgZm9sbG93aW5nIGNoYXJ0LiBPYmplY3RzIG9mIGEgcGFjayB3aWxsCitiZSBtYXJrZWQgd2l0aCBsZXR0ZXIgeCwgd2hpbGUgb2JqZWN0cyBvZiByZWR1bmRhbnQgcGFja3Mgd2lsbCBiZSBtYXJrZWQgd2l0aAorZXhjbGFtYXRpb24gcG9pbnQsIGFuZCByZWR1bmRhbnQgcGFjayBpdHNlbGYgd2lsbCBiZSBtYXJrZWQgd2l0aCBhc3Rlcmlzay4KKworCXwgVCBBIEIgQyBEIEUgRiBHIEggSSBKIEsgTCBNIE4gTyBQIFEgUgorICAgIC0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICBQMSAgfCB4IHggeCB4IHggeCB4ICAgICAgICAgICAgICAgICAgICAgICB4CisgICAgUDIqIHwgICAgICEgISAhICEgICAhICEgIQorICAgIFAzICB8ICAgICAgICAgICAgIHggICAgIHggeCB4IHggeAorICAgIFA0KiB8ICAgICAgICAgICAgICAgICAgICAgISAhICEgISAgICAgIQorICAgIFA1ICB8ICAgICAgICAgICAgICAgeCB4ICAgICAgICAgICB4IHgKKyAgICBQNiogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgISAhICAgIQorICAgIFA3ICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeCB4CisgICAgUDgqIHwgICAhCisgICAgLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgIEFMTCB8IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHgKKworQW5vdGhlciByZXBvc2l0b3J5IGBzaGFyZWQuZ2l0YCBoYXMgdW5pcXVlIG9iamVjdHMgKFgtWiksIHdoaWxlIG90aGVyIG9iamVjdHMKKyhtYXJrZWQgd2l0aCBsZXR0ZXIgcykgYXJlIHNoYXJlZCB0aHJvdWdoIGFsdC1vZGIgKG9mIGBtYXN0ZXIuZ2l0YCkuIFRoZQorcmVsYXRpb25zaGlwIGJldHdlZW4gcGFja3MgYW5kIG9iamVjdHMgaXMgYXMgZm9sbG93czoKKworCXwgVCBBIEIgQyBEIEUgRiBHIEggSSBKIEsgTCBNIE4gTyBQIFEgUiAgIFggWSBaCisgICAgLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgUHgxIHwgICBzIHMgcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggeCB4CisgICAgUHgyIHwgICAgICAgICBzIHMgcyAgICAgICAgICAgICAgICAgICAgICAgICAgIHggeCB4CisnCisKKy4gLi90ZXN0LWxpYi5zaAorCittYXN0ZXJfcmVwbz1tYXN0ZXIuZ2l0CitzaGFyZWRfcmVwbz1zaGFyZWQuZ2l0CisKKyMgQ3JlYXRlIGNvbW1pdHMgaW4gPHJlcG8+IGFuZCBhc3NpZ24gZWFjaCBjb21taXQncyBvaWQgdG8gc2hlbGwgdmFyaWFibGVzCisjIGdpdmVuIGluIHRoZSBhcmd1bWVudHMgKEEsIEIsIGFuZCBDKS4gRS5nLjoKKyMKKyMgICAgIGNyZWF0ZV9jb21taXRzX2luIDxyZXBvPiBBIEIgQworIworIyBOT1RFOiBBdm9pZCBjYWxsaW5nIHRoaXMgZnVuY3Rpb24gZnJvbSBhIHN1YnNoZWxsIHNpbmNlIHZhcmlhYmxlCisjIGFzc2lnbm1lbnRzIHdpbGwgZGlzYXBwZWFyIHdoZW4gc3Vic2hlbGwgZXhpdHMuCitjcmVhdGVfY29tbWl0c19pbiAoKSB7CisJcmVwbz0iJDEiICYmCisJaWYgISBwYXJlbnQ9JChnaXQgLUMgIiRyZXBvIiByZXYtcGFyc2UgSEVBRF57fSAyPi9kZXYvbnVsbCkKKwl0aGVuCisJCXBhcmVudD0KKwlmaSAmJgorCVQ9JChnaXQgLUMgIiRyZXBvIiB3cml0ZS10cmVlKSAmJgorCXNoaWZ0ICYmCisJd2hpbGUgdGVzdCAkIyAtZ3QgMAorCWRvCisJCW5hbWU9JDEgJiYKKwkJdGVzdF90aWNrICYmCisJCWlmIHRlc3QgLXogIiRwYXJlbnQiCisJCXRoZW4KKwkJCW9pZD0kKGVjaG8gJG5hbWUgfCBnaXQgLUMgIiRyZXBvIiBjb21taXQtdHJlZSAkVCkKKwkJZWxzZQorCQkJb2lkPSQoZWNobyAkbmFtZSB8IGdpdCAtQyAiJHJlcG8iIGNvbW1pdC10cmVlIC1wICRwYXJlbnQgJFQpCisJCWZpICYmCisJCWV2YWwgJG5hbWU9JG9pZCAmJgorCQlwYXJlbnQ9JG9pZCAmJgorCQlzaGlmdCB8fAorCQlyZXR1cm4gMQorCWRvbmUgJiYKKwlnaXQgLUMgIiRyZXBvIiB1cGRhdGUtcmVmIHJlZnMvaGVhZHMvbWFzdGVyICRvaWQKK30KKworIyBDcmVhdGUgcGFjayBpbiA8cmVwbz4gYW5kIGFzc2lnbiBwYWNrIGlkIHRvIHZhcmlhYmxlIGdpdmVuIGluIHRoZSAybmQgYXJndW1lbnQKKyMgKDxuYW1lPikuIENvbW1pdHMgaW4gdGhlIHBhY2sgd2lsbCBiZSByZWFkIGZyb20gc3RkaW4uIEUuZy46CisjCisjICAgICBjcmVhdGVfcGFja19pbiA8cmVwbz4gPG5hbWU+IDw8LUVPRgorIyAgICAgICAgIC4uLgorIyAgICAgICAgIEVPRgorIworIyBOT1RFOiBjb21taXRzIGZyb20gc3RkaW4gc2hvdWxkIGJlIGdpdmVuIHVzaW5nIGhlcmVkb2MsIG5vdCB1c2luZyBwaXBlLCBhbmQKKyMgYXZvaWQgY2FsbGluZyB0aGlzIGZ1bmN0aW9uIGZyb20gYSBzdWJzaGVsbCBzaW5jZSB2YXJpYWJsZSBhc3NpZ25tZW50cyB3aWxsCisjIGRpc2FwcGVhciB3aGVuIHN1YnNoZWxsIGV4aXRzLgorY3JlYXRlX3BhY2tfaW4gKCkgeworCXJlcG89IiQxIiAmJgorCW5hbWU9IiQyIiAmJgorCXBhY2s9JChnaXQgLUMgIiRyZXBvL29iamVjdHMvcGFjayIgcGFjay1vYmplY3RzIC1xIHBhY2spICYmCisJZXZhbCAkbmFtZT0kcGFjayAmJgorCWV2YWwgUCRwYWNrPSRuYW1lOiRwYWNrCit9CisKK2Zvcm1hdF9wYWNrZmlsZXMgKCkgeworCXNlZCBcCisJCS1lICJzIy4qL3BhY2stXCguKlwpXC5pZHgjXDEjIiBcCisJCS1lICJzIy4qL3BhY2stXCguKlwpXC5wYWNrI1wxIyIgfAorCXNvcnQgLXUgfAorCXdoaWxlIHJlYWQgcAorCWRvCisJCWlmIHRlc3QgLXogIiQoZXZhbCBlY2hvIFwke1AkcH0pIgorCQl0aGVuCisJCQllY2hvICRwCisJCWVsc2UKKwkJCWV2YWwgZWNobyAiXCR7UCRwfSIKKwkJZmkKKwlkb25lIHwKKwlzb3J0Cit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIG1hc3RlciByZXBvJyAnCisJZ2l0IGluaXQgLS1iYXJlICIkbWFzdGVyX3JlcG8iICYmCisJY3JlYXRlX2NvbW1pdHNfaW4gIiRtYXN0ZXJfcmVwbyIgQSBCIEMgRCBFIEYgRyBIIEkgSiBLIEwgTSBOIE8gUCBRIFIKKycKKworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMgQ2hhcnQgb2YgcGFja3MgYW5kIG9iamVjdHMgZm9yIHRoaXMgdGVzdCBjYXNlCisjCisjICAgICAgICAgfCBUIEEgQiBDIEQgRSBGIEcgSCBJIEogSyBMIE0gTiBPIFAgUSBSCisjICAgICAtLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjICAgICBQMSAgfCB4IHggeCB4IHggeCB4ICAgICAgICAgICAgICAgICAgICAgICB4CisjICAgICBQMiAgfCAgICAgeCB4IHggeCAgIHggeCB4CisjICAgICBQMyAgfCAgICAgICAgICAgICB4ICAgICB4IHggeCB4IHgKKyMgICAgIC0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgICAgIEFMTCB8IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCAgICAgICAgIHgKKyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdtYXN0ZXI6IG5vIHJlZHVuZGFudCBmb3IgcGFjayAxLCAyLCAzJyAnCisJY3JlYXRlX3BhY2tfaW4gIiRtYXN0ZXJfcmVwbyIgUDEgPDwtRU9GICYmCisJCSRUCisJCSRBCisJCSRCCisJCSRDCisJCSRECisJCSRFCisJCSRGCisJCSRSCisJCUVPRgorCWNyZWF0ZV9wYWNrX2luICIkbWFzdGVyX3JlcG8iIFAyIDw8LUVPRiAmJgorCQkkQgorCQkkQworCQkkRAorCQkkRQorCQkkRworCQkkSAorCQkkSQorCQlFT0YKKwljcmVhdGVfcGFja19pbiAiJG1hc3Rlcl9yZXBvIiBQMyA8PC1FT0YgJiYKKwkJJEYKKwkJJEkKKwkJJEoKKwkJJEsKKwkJJEwKKwkJJE0KKwkJRU9GCisJKAorCQljZCAiJG1hc3Rlcl9yZXBvIiAmJgorCQlnaXQgcGFjay1yZWR1bmRhbnQgLS1hbGwgPm91dCAmJgorCQl0ZXN0X211c3RfYmVfZW1wdHkgb3V0CisJKQorJworCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyBDaGFydCBvZiBwYWNrcyBhbmQgb2JqZWN0cyBmb3IgdGhpcyB0ZXN0IGNhc2UKKyMKKyMgICAgICAgICB8IFQgQSBCIEMgRCBFIEYgRyBIIEkgSiBLIEwgTSBOIE8gUCBRIFIKKyMgICAgIC0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgICAgIFAxICB8IHggeCB4IHggeCB4IHggICAgICAgICAgICAgICAgICAgICAgIHgKKyMgICAgIFAyICB8ICAgICB4IHggeCB4ICAgeCB4IHgKKyMgICAgIFAzKiB8ICAgICAgICAgICAgICEgICAgICEgISAhICEgIQorIyAgICAgUDQgIHwgICAgICAgICAgICAgICAgICAgICB4IHggeCB4ICAgICB4CisjICAgICBQNSAgfCAgICAgICAgICAgICAgIHggeCAgICAgICAgICAgeCB4CisjICAgICAtLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjICAgICBBTEwgfCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggICB4CisjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbWFzdGVyOiBvbmUgb2YgcGFjay0yL3BhY2stMyBpcyByZWR1bmRhbnQnICcKKwljcmVhdGVfcGFja19pbiAiJG1hc3Rlcl9yZXBvIiBQNCA8PC1FT0YgJiYKKwkJJEoKKwkJJEsKKwkJJEwKKwkJJE0KKwkJJFAKKwkJRU9GCisJY3JlYXRlX3BhY2tfaW4gIiRtYXN0ZXJfcmVwbyIgUDUgPDwtRU9GICYmCisJCSRHCisJCSRICisJCSROCisJCSRPCisJCUVPRgorCSgKKwkJY2QgIiRtYXN0ZXJfcmVwbyIgJiYKKwkJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCQlQMzokUDMKKwkJCUVPRgorCQlnaXQgcGFjay1yZWR1bmRhbnQgLS1hbGwgPm91dCAmJgorCQlmb3JtYXRfcGFja2ZpbGVzIDxvdXQgPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJKQorJworCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyBDaGFydCBvZiBwYWNrcyBhbmQgb2JqZWN0cyBmb3IgdGhpcyB0ZXN0IGNhc2UKKyMKKyMgICAgICAgICB8IFQgQSBCIEMgRCBFIEYgRyBIIEkgSiBLIEwgTSBOIE8gUCBRIFIKKyMgICAgIC0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgICAgIFAxICB8IHggeCB4IHggeCB4IHggICAgICAgICAgICAgICAgICAgICAgIHgKKyMgICAgIFAyKiB8ICAgICAhICEgISAhICAgISAhICEKKyMgICAgIFAzICB8ICAgICAgICAgICAgIHggICAgIHggeCB4IHggeAorIyAgICAgUDQqIHwgICAgICAgICAgICAgICAgICAgICAhICEgISAhICAgICAhCisjICAgICBQNSAgfCAgICAgICAgICAgICAgIHggeCAgICAgICAgICAgeCB4CisjICAgICBQNiogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgISAhICAgIQorIyAgICAgUDcgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4IHgKKyMgICAgIC0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgICAgIEFMTCB8IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHgKKyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdtYXN0ZXI6IHBhY2sgMiwgNCwgYW5kIDYgYXJlIHJlZHVuZGFudCcgJworCWNyZWF0ZV9wYWNrX2luICIkbWFzdGVyX3JlcG8iIFA2IDw8LUVPRiAmJgorCQkkTgorCQkkTworCQkkUQorCQlFT0YKKwljcmVhdGVfcGFja19pbiAiJG1hc3Rlcl9yZXBvIiBQNyA8PC1FT0YgJiYKKwkJJFAKKwkJJFEKKwkJRU9GCisJKAorCQljZCAiJG1hc3Rlcl9yZXBvIiAmJgorCQljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkJCVAyOiRQMgorCQkJUDQ6JFA0CisJCQlQNjokUDYKKwkJCUVPRgorCQlnaXQgcGFjay1yZWR1bmRhbnQgLS1hbGwgPm91dCAmJgorCQlmb3JtYXRfcGFja2ZpbGVzIDxvdXQgPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJKQorJworCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyBDaGFydCBvZiBwYWNrcyBhbmQgb2JqZWN0cyBmb3IgdGhpcyB0ZXN0IGNhc2UKKyMKKyMgICAgICAgICB8IFQgQSBCIEMgRCBFIEYgRyBIIEkgSiBLIEwgTSBOIE8gUCBRIFIKKyMgICAgIC0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgICAgIFAxICB8IHggeCB4IHggeCB4IHggICAgICAgICAgICAgICAgICAgICAgIHgKKyMgICAgIFAyKiB8ICAgICAhICEgISAhICAgISAhICEKKyMgICAgIFAzICB8ICAgICAgICAgICAgIHggICAgIHggeCB4IHggeAorIyAgICAgUDQqIHwgICAgICAgICAgICAgICAgICAgICAhICEgISAhICAgICAhCisjICAgICBQNSAgfCAgICAgICAgICAgICAgIHggeCAgICAgICAgICAgeCB4CisjICAgICBQNiogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgISAhICAgIQorIyAgICAgUDcgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4IHgKKyMgICAgIFA4KiB8ICAgIQorIyAgICAgLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyAgICAgQUxMIHwgeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeAorIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21hc3RlcjogcGFjay04IChzdWJzZXQgb2YgcGFjay0xKSBpcyBhbHNvIHJlZHVuZGFudCcgJworCWNyZWF0ZV9wYWNrX2luICIkbWFzdGVyX3JlcG8iIFA4IDw8LUVPRiAmJgorCQkkQQorCQlFT0YKKwkoCisJCWNkICIkbWFzdGVyX3JlcG8iICYmCisJCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCQkJUDI6JFAyCisJCQlQNDokUDQKKwkJCVA2OiRQNgorCQkJUDg6JFA4CisJCQlFT0YKKwkJZ2l0IHBhY2stcmVkdW5kYW50IC0tYWxsID5vdXQgJiYKKwkJZm9ybWF0X3BhY2tmaWxlcyA8b3V0ID5hY3R1YWwgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbWFzdGVyOiBjbGVhbiBsb29zZSBvYmplY3RzJyAnCisJKAorCQljZCAiJG1hc3Rlcl9yZXBvIiAmJgorCQlnaXQgcHJ1bmUtcGFja2VkICYmCisJCWZpbmQgb2JqZWN0cyAtdHlwZSBmIHwgc2VkIC1lICIvb2JqZWN0c1wvcGFja1wvL2QiID5vdXQgJiYKKwkJdGVzdF9tdXN0X2JlX2VtcHR5IG91dAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbWFzdGVyOiByZW1vdmUgcmVkdW5kYW50IHBhY2tzIGFuZCBwYXNzIGZzY2snICcKKwkoCisJCWNkICIkbWFzdGVyX3JlcG8iICYmCisJCWdpdCBwYWNrLXJlZHVuZGFudCAtLWFsbCB8IHhhcmdzIHJtICYmCisJCWdpdCBmc2NrICYmCisJCWdpdCBwYWNrLXJlZHVuZGFudCAtLWFsbCA+b3V0ICYmCisJCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXQKKwkpCisnCisKKyMgVGhlIGZvbGxvd2luZyB0ZXN0IGNhc2VzIHdpbGwgZXhlY3V0ZSBpbnNpZGUgYHNoYXJlZC5naXRgLCBpbnN0ZWFkIG9mCisjIGluc2lkZSBgbWFzdGVyLmdpdGAuCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBzaGFyZWQuZ2l0JyAnCisJZ2l0IGNsb25lIC0tbWlycm9yICIkbWFzdGVyX3JlcG8iICIkc2hhcmVkX3JlcG8iICYmCisJKAorCQljZCAiJHNoYXJlZF9yZXBvIiAmJgorCQlwcmludGYgIi4uLy4uLyRtYXN0ZXJfcmVwby9vYmplY3RzXG4iID5vYmplY3RzL2luZm8vYWx0ZXJuYXRlcworCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2hhcmVkOiBhbGwgcGFja3MgYXJlIHJlZHVuZGFudCwgYnV0IG5vIG91dHB1dCB3aXRob3V0IC0tYWx0LW9kYicgJworCSgKKwkJY2QgIiRzaGFyZWRfcmVwbyIgJiYKKwkJZ2l0IHBhY2stcmVkdW5kYW50IC0tYWxsID5vdXQgJiYKKwkJdGVzdF9tdXN0X2JlX2VtcHR5IG91dAorCSkKKycKKworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMgQ2hhcnQgb2YgcGFja3MgYW5kIG9iamVjdHMgZm9yIHRoaXMgdGVzdCBjYXNlCisjCisjICAgICA9PT09PT09PT09PT09PT09IG1hc3Rlci5naXQgPT09PT09PT09PT09PT09CisjICAgICAgICAgfCBUIEEgQiBDIEQgRSBGIEcgSCBJIEogSyBMIE0gTiBPIFAgUSBSICA8LS0tLS0tLS0tLSsKKyMgICAgIC0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gICAgICAgICAgICAgfAorIyAgICAgUDEgIHwgeCB4IHggeCB4IHggeCAgICAgICAgICAgICAgICAgICAgICAgeCAgICAgICAgICAgICB8CisjICAgICBQMyAgfCAgICAgICAgICAgICB4ICAgICB4IHggeCB4IHggICAgICAgICAgICAgICAgICAgICAgIHwKKyMgICAgIFA1ICB8ICAgICAgICAgICAgICAgeCB4ICAgICAgICAgICB4IHggICAgICAgICAgICAgICAgICAgfAorIyAgICAgUDcgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4IHggICAgICAgICAgICAgICB8CisjICAgICAtLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICAgICAgICAgICAgIHwKKyMgICAgIEFMTCB8IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggICAgICAgICAgICAgfAorIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyMgICAgID09PT09PT09PT09PT09PT0gc2hhcmVkLmdpdCA9PT09PT09PT09PT09PT0gICAgICAgICAgICAgfAorIyAgICAgICAgIHwgVCBBIEIgQyBEIEUgRiBHIEggSSBKIEsgTCBNIE4gTyBQIFEgUiAgPG9iamVjdHMvaW5mby9hbHRlcm5hdGVzPgorIyAgICAgLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyAgICAgUDEqIHwgcyBzIHMgcyBzIHMgcyAgICAgICAgICAgICAgICAgICAgICAgcworIyAgICAgUDMqIHwgICAgICAgICAgICAgcyAgICAgcyBzIHMgcyBzCisjICAgICBQNSogfCAgICAgICAgICAgICAgIHMgcyAgICAgICAgICAgcyBzCisjICAgICBQNyogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMgcworIyAgICAgLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyAgICAgQUxMIHwgeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeAorIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NoYXJlZDogc2hvdyByZWR1bmRhbnQgcGFja3MgaW4gc3RkZXJyIGZvciB2ZXJib3NlIG1vZGUnICcKKwkoCisJCWNkICIkc2hhcmVkX3JlcG8iICYmCisJCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCQkJUDE6JFAxCisJCQlQMzokUDMKKwkJCVA1OiRQNQorCQkJUDc6JFA3CisJCQlFT0YKKwkJZ2l0IHBhY2stcmVkdW5kYW50IC0tYWxsIC0tdmVyYm9zZSA+b3V0IDI+b3V0LmVyciAmJgorCQl0ZXN0X211c3RfYmVfZW1wdHkgb3V0ICYmCisJCWdyZXAgInBhY2skIiBvdXQuZXJyIHwgZm9ybWF0X3BhY2tmaWxlcyA+YWN0dWFsICYmCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NoYXJlZDogcmVtb3ZlIHJlZHVuZGFudCBwYWNrcywgbm8gcGFja3MgbGVmdCcgJworCSgKKwkJY2QgIiRzaGFyZWRfcmVwbyIgJiYKKwkJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCQlmYXRhbDogWmVybyBwYWNrcyBmb3VuZCEKKwkJCUVPRgorCQlnaXQgcGFjay1yZWR1bmRhbnQgLS1hbGwgLS1hbHQtb2RiIHwgeGFyZ3Mgcm0gJiYKKwkJZ2l0IGZzY2sgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHBhY2stcmVkdW5kYW50IC0tYWxsIC0tYWx0LW9kYiA+YWN0dWFsIDI+JjEgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2hhcmVkOiBjcmVhdGUgbmV3IG9iamVjdHMgYW5kIHBhY2tzJyAnCisJY3JlYXRlX2NvbW1pdHNfaW4gIiRzaGFyZWRfcmVwbyIgWCBZIFogJiYKKwljcmVhdGVfcGFja19pbiAiJHNoYXJlZF9yZXBvIiBQeDEgPDwtRU9GICYmCisJCSRYCisJCSRZCisJCSRaCisJCSRBCisJCSRCCisJCSRDCisJCUVPRgorCWNyZWF0ZV9wYWNrX2luICIkc2hhcmVkX3JlcG8iIFB4MiA8PC1FT0YKKwkJJFgKKwkJJFkKKwkJJFoKKwkJJEQKKwkJJEUKKwkJJEYKKwkJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NoYXJlZDogbm8gcmVkdW5kYW50IHdpdGhvdXQgLS1hbHQtb2RiJyAnCisJKAorCQljZCAiJHNoYXJlZF9yZXBvIiAmJgorCQlnaXQgcGFjay1yZWR1bmRhbnQgLS1hbGwgPm91dCAmJgorCQl0ZXN0X211c3RfYmVfZW1wdHkgb3V0CisJKQorJworCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyBDaGFydCBvZiBwYWNrcyBhbmQgb2JqZWN0cyBmb3IgdGhpcyB0ZXN0IGNhc2UKKyMKKyMgICAgID09PT09PT09PT09PT09PT0gbWFzdGVyLmdpdCA9PT09PT09PT09PT09PT0KKyMgICAgICAgICB8IFQgQSBCIEMgRCBFIEYgRyBIIEkgSiBLIEwgTSBOIE8gUCBRIFIgIDwtLS0tLS0tLS0tLS0tLS0tKworIyAgICAgLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAgICAgICAgICAgICAgICAgICB8CisjICAgICBQMSAgfCB4IHggeCB4IHggeCB4ICAgICAgICAgICAgICAgICAgICAgICB4ICAgICAgICAgICAgICAgICAgIHwKKyMgICAgIFAzICB8ICAgICAgICAgICAgIHggICAgIHggeCB4IHggeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorIyAgICAgUDUgIHwgICAgICAgICAgICAgICB4IHggICAgICAgICAgIHggeCAgICAgICAgICAgICAgICAgICAgICAgICB8CisjICAgICBQNyAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggeCAgICAgICAgICAgICAgICAgICAgIHwKKyMgICAgIC0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gICAgICAgICAgICAgICAgICAgfAorIyAgICAgQUxMIHwgeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCAgICAgICAgICAgICAgICAgICB8CisjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorIyAgICAgPT09PT09PT09PT09PT09PSBzaGFyZWQuZ2l0ID09PT09PT09PT09PT09PT09PT09PT09ICAgICAgICAgICB8CisjICAgICAgICAgfCBUIEEgQiBDIEQgRSBGIEcgSCBJIEogSyBMIE0gTiBPIFAgUSBSICAgWCBZIFogPG9iamVjdHMvaW5mby9hbHRlcm5hdGVzPgorIyAgICAgLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjICAgICBQeDEgfCAgIHMgcyBzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeCB4IHgKKyMgICAgIFB4Mip8ICAgICAgICAgcyBzIHMgICAgICAgICAgICAgICAgICAgICAgICAgICAhICEgIQorIyAgICAgLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjICAgICBBTEwgfCBzIHMgcyBzIHMgcyBzIHMgcyBzIHMgcyBzIHMgcyBzIHMgcyBzICAgeCB4IHgKKyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaGFyZWQ6IG9uZSBwYWNrIGlzIHJlZHVuZGFudCB3aXRoIC0tYWx0LW9kYicgJworCSgKKwkJY2QgIiRzaGFyZWRfcmVwbyIgJiYKKwkJZ2l0IHBhY2stcmVkdW5kYW50IC0tYWxsIC0tYWx0LW9kYiA+b3V0ICYmCisJCWZvcm1hdF9wYWNrZmlsZXMgPG91dCA+YWN0dWFsICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgYWN0dWFsCisJKQorJworCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyBDaGFydCBvZiBwYWNrcyBhbmQgb2JqZWN0cyBmb3IgdGhpcyB0ZXN0IGNhc2UKKyMKKyMgICAgID09PT09PT09PT09PT09PT0gbWFzdGVyLmdpdCA9PT09PT09PT09PT09PT0KKyMgICAgICAgICB8IFQgQSBCIEMgRCBFIEYgRyBIIEkgSiBLIEwgTSBOIE8gUCBRIFIgIDwtLS0tLS0tLS0tLS0tLS0tKworIyAgICAgLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAgICAgICAgICAgICAgICAgICB8CisjICAgICBQMSAgfCB4IHggeCB4IHggeCB4ICAgICAgICAgICAgICAgICAgICAgICB4ICAgICAgICAgICAgICAgICAgIHwKKyMgICAgIFAzICB8ICAgICAgICAgICAgIHggICAgIHggeCB4IHggeCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorIyAgICAgUDUgIHwgICAgICAgICAgICAgICB4IHggICAgICAgICAgIHggeCAgICAgICAgICAgICAgICAgICAgICAgICB8CisjICAgICBQNyAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggeCAgICAgICAgICAgICAgICAgICAgIHwKKyMgICAgIC0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gICAgICAgICAgICAgICAgICAgfAorIyAgICAgQUxMIHwgeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCB4IHggeCAgICAgICAgICAgICAgICAgICB8CisjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorIyAgICAgPT09PT09PT09PT09PT09PSBzaGFyZWQuZ2l0ID09PT09PT09PT09PT09PT09PT09PT09ICAgICAgICAgICB8CisjICAgICAgICAgfCBUIEEgQiBDIEQgRSBGIEcgSCBJIEogSyBMIE0gTiBPIFAgUSBSICAgWCBZIFogPG9iamVjdHMvaW5mby9hbHRlcm5hdGVzPgorIyAgICAgLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjICAgICBQeDEqfCAgIHMgcyBzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSBpIGkKKyMgICAgIFB4Mip8ICAgICAgICAgcyBzIHMgICAgICAgICAgICAgICAgICAgICAgICAgICBpIGkgaQorIyAgICAgLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjICAgICBBTEwgfCBzIHMgcyBzIHMgcyBzIHMgcyBzIHMgcyBzIHMgcyBzIHMgcyBzICAgaSBpIGkKKyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpZ25vcmVkIG9iamVjdHMsIG1hcmtlZCB3aXRoIGkpCisjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2hhcmVkOiBpZ25vcmUgdW5pcXVlIG9iamVjdHMgYW5kIGFsbCB0d28gcGFja3MgYXJlIHJlZHVuZGFudCcgJworCSgKKwkJY2QgIiRzaGFyZWRfcmVwbyIgJiYKKwkJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJCQlQeDE6JFB4MQorCQkJUHgyOiRQeDIKKwkJCUVPRgorCQlnaXQgcGFjay1yZWR1bmRhbnQgLS1hbGwgLS1hbHQtb2RiID5vdXQgPDwtRU9GICYmCisJCQkkWAorCQkJJFkKKwkJCSRaCisJCQlFT0YKKwkJZm9ybWF0X3BhY2tmaWxlcyA8b3V0ID5hY3R1YWwgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorCSkKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1MzI0LXNwbGl0LWNvbW1pdC1ncmFwaC5zaCBiL3QvdDUzMjQtc3BsaXQtY29tbWl0LWdyYXBoLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjUzYjJlNmIKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q1MzI0LXNwbGl0LWNvbW1pdC1ncmFwaC5zaApAQCAtMCwwICsxLDM1NCBAQAorIyEvYmluL3NoCisKK3Rlc3RfZGVzY3JpcHRpb249J3NwbGl0IGNvbW1pdCBncmFwaCcKKy4gLi90ZXN0LWxpYi5zaAorCitHSVRfVEVTVF9DT01NSVRfR1JBUEg9MAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCByZXBvJyAnCisJZ2l0IGluaXQgJiYKKwlnaXQgY29uZmlnIGNvcmUuY29tbWl0R3JhcGggdHJ1ZSAmJgorCWdpdCBjb25maWcgZ2Mud3JpdGVDb21taXRHcmFwaCBmYWxzZSAmJgorCWluZm9kaXI9Ii5naXQvb2JqZWN0cy9pbmZvIiAmJgorCWdyYXBoZGlyPSIkaW5mb2Rpci9jb21taXQtZ3JhcGhzIiAmJgorCXRlc3Rfb2lkX2luaXQgJiYKKwl0ZXN0X29pZF9jYWNoZSA8PC1FT00KKwlzaGFsbG93IHNoYTE6MTc2MAorCXNoYWxsb3cgc2hhMjU2OjIwNjQKKworCWJhc2Ugc2hhMToxMzc2CisJYmFzZSBzaGEyNTY6MTQ5NgorCUVPTQorJworCitncmFwaF9yZWFkX2V4cGVjdCgpIHsKKwlOVU1fQkFTRT0wCisJaWYgdGVzdCAhIC16ICQyCisJdGhlbgorCQlOVU1fQkFTRT0kMgorCWZpCisJY2F0ID5leHBlY3QgPDwtIEVPRgorCWhlYWRlcjogNDM0NzUwNDggMSAxIDMgJE5VTV9CQVNFCisJbnVtX2NvbW1pdHM6ICQxCisJY2h1bmtzOiBvaWRfZmFub3V0IG9pZF9sb29rdXAgY29tbWl0X21ldGFkYXRhCisJRU9GCisJdGVzdC10b29sIHJlYWQtZ3JhcGggPm91dHB1dCAmJgorCXRlc3RfY21wIGV4cGVjdCBvdXRwdXQKK30KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY3JlYXRlIGNvbW1pdHMgYW5kIHdyaXRlIGNvbW1pdC1ncmFwaCcgJworCWZvciBpIGluICQodGVzdF9zZXEgMykKKwlkbworCQl0ZXN0X2NvbW1pdCAkaSAmJgorCQlnaXQgYnJhbmNoIGNvbW1pdHMvJGkgfHwgcmV0dXJuIDEKKwlkb25lICYmCisJZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSAtLXJlYWNoYWJsZSAmJgorCXRlc3RfcGF0aF9pc19maWxlICRpbmZvZGlyL2NvbW1pdC1ncmFwaCAmJgorCWdyYXBoX3JlYWRfZXhwZWN0IDMKKycKKworZ3JhcGhfZ2l0X3R3b19tb2RlcygpIHsKKwlnaXQgLWMgY29yZS5jb21taXRHcmFwaD10cnVlICQxID5vdXRwdXQKKwlnaXQgLWMgY29yZS5jb21taXRHcmFwaD1mYWxzZSAkMSA+ZXhwZWN0CisJdGVzdF9jbXAgZXhwZWN0IG91dHB1dAorfQorCitncmFwaF9naXRfYmVoYXZpb3IoKSB7CisJTVNHPSQxCisJQlJBTkNIPSQyCisJQ09NUEFSRT0kMworCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgImNoZWNrIG5vcm1hbCBnaXQgb3BlcmF0aW9uczogJE1TRyIgJworCQlncmFwaF9naXRfdHdvX21vZGVzICJsb2cgLS1vbmVsaW5lICRCUkFOQ0giICYmCisJCWdyYXBoX2dpdF90d29fbW9kZXMgImxvZyAtLXRvcG8tb3JkZXIgJEJSQU5DSCIgJiYKKwkJZ3JhcGhfZ2l0X3R3b19tb2RlcyAibG9nIC0tZ3JhcGggJENPTVBBUkUuLiRCUkFOQ0giICYmCisJCWdyYXBoX2dpdF90d29fbW9kZXMgImJyYW5jaCAtdnYiICYmCisJCWdyYXBoX2dpdF90d29fbW9kZXMgIm1lcmdlLWJhc2UgLWEgJEJSQU5DSCAkQ09NUEFSRSIKKwknCit9CisKK2dyYXBoX2dpdF9iZWhhdmlvciAnZ3JhcGggZXhpc3RzJyBjb21taXRzLzMgY29tbWl0cy8xCisKK3ZlcmlmeV9jaGFpbl9maWxlc19leGlzdCgpIHsKKwlmb3IgaGFzaCBpbiAkKGNhdCAkMS9jb21taXQtZ3JhcGgtY2hhaW4pCisJZG8KKwkJdGVzdF9wYXRoX2lzX2ZpbGUgJDEvZ3JhcGgtJGhhc2guZ3JhcGggfHwgcmV0dXJuIDEKKwlkb25lCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FkZCBtb3JlIGNvbW1pdHMsIGFuZCB3cml0ZSBhIG5ldyBiYXNlIGdyYXBoJyAnCisJZ2l0IHJlc2V0IC0taGFyZCBjb21taXRzLzEgJiYKKwlmb3IgaSBpbiAkKHRlc3Rfc2VxIDQgNSkKKwlkbworCQl0ZXN0X2NvbW1pdCAkaSAmJgorCQlnaXQgYnJhbmNoIGNvbW1pdHMvJGkgfHwgcmV0dXJuIDEKKwlkb25lICYmCisJZ2l0IHJlc2V0IC0taGFyZCBjb21taXRzLzIgJiYKKwlmb3IgaSBpbiAkKHRlc3Rfc2VxIDYgMTApCisJZG8KKwkJdGVzdF9jb21taXQgJGkgJiYKKwkJZ2l0IGJyYW5jaCBjb21taXRzLyRpIHx8IHJldHVybiAxCisJZG9uZSAmJgorCWdpdCByZXNldCAtLWhhcmQgY29tbWl0cy8yICYmCisJZ2l0IG1lcmdlIGNvbW1pdHMvNCAmJgorCWdpdCBicmFuY2ggbWVyZ2UvMSAmJgorCWdpdCByZXNldCAtLWhhcmQgY29tbWl0cy80ICYmCisJZ2l0IG1lcmdlIGNvbW1pdHMvNiAmJgorCWdpdCBicmFuY2ggbWVyZ2UvMiAmJgorCWdpdCBjb21taXQtZ3JhcGggd3JpdGUgLS1yZWFjaGFibGUgJiYKKwlncmFwaF9yZWFkX2V4cGVjdCAxMgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb3JrIGFuZCBmYWlsIHRvIGJhc2UgYSBjaGFpbiBvbiBhIGNvbW1pdC1ncmFwaCBmaWxlJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkIHJtIC1yZiBmb3JrICYmCisJZ2l0IGNsb25lIC4gZm9yayAmJgorCSgKKwkJY2QgZm9yayAmJgorCQlybSAuZ2l0L29iamVjdHMvaW5mby9jb21taXQtZ3JhcGggJiYKKwkJZWNobyAiJChwd2QpLy4uLy5naXQvb2JqZWN0cyIgPi5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMgJiYKKwkJdGVzdF9jb21taXQgbmV3LWNvbW1pdCAmJgorCQlnaXQgY29tbWl0LWdyYXBoIHdyaXRlIC0tcmVhY2hhYmxlIC0tc3BsaXQgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgJGdyYXBoZGlyL2NvbW1pdC1ncmFwaC1jaGFpbiAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAxICRncmFwaGRpci9jb21taXQtZ3JhcGgtY2hhaW4gJiYKKwkJdmVyaWZ5X2NoYWluX2ZpbGVzX2V4aXN0ICRncmFwaGRpcgorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYWRkIHRocmVlIG1vcmUgY29tbWl0cywgd3JpdGUgYSB0aXAgZ3JhcGgnICcKKwlnaXQgcmVzZXQgLS1oYXJkIGNvbW1pdHMvMyAmJgorCWdpdCBtZXJnZSBtZXJnZS8xICYmCisJZ2l0IG1lcmdlIGNvbW1pdHMvNSAmJgorCWdpdCBtZXJnZSBtZXJnZS8yICYmCisJZ2l0IGJyYW5jaCBtZXJnZS8zICYmCisJZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSAtLXJlYWNoYWJsZSAtLXNwbGl0ICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgJGluZm9kaXIvY29tbWl0LWdyYXBoICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgJGdyYXBoZGlyL2NvbW1pdC1ncmFwaC1jaGFpbiAmJgorCWxzICRncmFwaGRpci9ncmFwaC0qLmdyYXBoID5ncmFwaC1maWxlcyAmJgorCXRlc3RfbGluZV9jb3VudCA9IDIgZ3JhcGgtZmlsZXMgJiYKKwl2ZXJpZnlfY2hhaW5fZmlsZXNfZXhpc3QgJGdyYXBoZGlyCisnCisKK2dyYXBoX2dpdF9iZWhhdmlvciAnc3BsaXQgY29tbWl0LWdyYXBoOiBtZXJnZSAzIHZzIDInIG1lcmdlLzMgbWVyZ2UvMgorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhZGQgb25lIGNvbW1pdCwgd3JpdGUgYSB0aXAgZ3JhcGgnICcKKwl0ZXN0X2NvbW1pdCAxMSAmJgorCWdpdCBicmFuY2ggY29tbWl0cy8xMSAmJgorCWdpdCBjb21taXQtZ3JhcGggd3JpdGUgLS1yZWFjaGFibGUgLS1zcGxpdCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nICRpbmZvZGlyL2NvbW1pdC1ncmFwaCAmJgorCXRlc3RfcGF0aF9pc19maWxlICRncmFwaGRpci9jb21taXQtZ3JhcGgtY2hhaW4gJiYKKwlscyAkZ3JhcGhkaXIvZ3JhcGgtKi5ncmFwaCA+Z3JhcGgtZmlsZXMgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAzIGdyYXBoLWZpbGVzICYmCisJdmVyaWZ5X2NoYWluX2ZpbGVzX2V4aXN0ICRncmFwaGRpcgorJworCitncmFwaF9naXRfYmVoYXZpb3IgJ3RocmVlLWxheWVyIGNvbW1pdC1ncmFwaDogY29tbWl0IDExIHZzIDYnIGNvbW1pdHMvMTEgY29tbWl0cy82CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FkZCBvbmUgY29tbWl0LCB3cml0ZSBhIG1lcmdlZCBncmFwaCcgJworCXRlc3RfY29tbWl0IDEyICYmCisJZ2l0IGJyYW5jaCBjb21taXRzLzEyICYmCisJZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSAtLXJlYWNoYWJsZSAtLXNwbGl0ICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgJGdyYXBoZGlyL2NvbW1pdC1ncmFwaC1jaGFpbiAmJgorCXRlc3RfbGluZV9jb3VudCA9IDIgJGdyYXBoZGlyL2NvbW1pdC1ncmFwaC1jaGFpbiAmJgorCWxzICRncmFwaGRpci9ncmFwaC0qLmdyYXBoID5ncmFwaC1maWxlcyAmJgorCXRlc3RfbGluZV9jb3VudCA9IDIgZ3JhcGgtZmlsZXMgJiYKKwl2ZXJpZnlfY2hhaW5fZmlsZXNfZXhpc3QgJGdyYXBoZGlyCisnCisKK2dyYXBoX2dpdF9iZWhhdmlvciAnbWVyZ2VkIGNvbW1pdC1ncmFwaDogY29tbWl0IDEyIHZzIDYnIGNvbW1pdHMvMTIgY29tbWl0cy82CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NyZWF0ZSBmb3JrIGFuZCBjaGFpbiBhY3Jvc3MgYWx0ZXJuYXRlJyAnCisJZ2l0IGNsb25lIC4gZm9yayAmJgorCSgKKwkJY2QgZm9yayAmJgorCQlnaXQgY29uZmlnIGNvcmUuY29tbWl0R3JhcGggdHJ1ZSAmJgorCQlybSAtcmYgJGdyYXBoZGlyICYmCisJCWVjaG8gIiQocHdkKS8uLi8uZ2l0L29iamVjdHMiID4uZ2l0L29iamVjdHMvaW5mby9hbHRlcm5hdGVzICYmCisJCXRlc3RfY29tbWl0IDEzICYmCisJCWdpdCBicmFuY2ggY29tbWl0cy8xMyAmJgorCQlnaXQgY29tbWl0LWdyYXBoIHdyaXRlIC0tcmVhY2hhYmxlIC0tc3BsaXQgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgJGdyYXBoZGlyL2NvbW1pdC1ncmFwaC1jaGFpbiAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAzICRncmFwaGRpci9jb21taXQtZ3JhcGgtY2hhaW4gJiYKKwkJbHMgJGdyYXBoZGlyL2dyYXBoLSouZ3JhcGggPmdyYXBoLWZpbGVzICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgZ3JhcGgtZmlsZXMgJiYKKwkJZ2l0IC1jIGNvcmUuY29tbWl0R3JhcGg9dHJ1ZSAgcmV2LWxpc3QgSEVBRCA+ZXhwZWN0ICYmCisJCWdpdCAtYyBjb3JlLmNvbW1pdEdyYXBoPWZhbHNlIHJldi1saXN0IEhFQUQgPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJCXRlc3RfY29tbWl0IDE0ICYmCisJCWdpdCBjb21taXQtZ3JhcGggd3JpdGUgLS1yZWFjaGFibGUgLS1zcGxpdCAtLW9iamVjdC1kaXI9LmdpdC9vYmplY3RzLyAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAzICRncmFwaGRpci9jb21taXQtZ3JhcGgtY2hhaW4gJiYKKwkJbHMgJGdyYXBoZGlyL2dyYXBoLSouZ3JhcGggPmdyYXBoLWZpbGVzICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgZ3JhcGgtZmlsZXMKKwkpCisnCisKK2dyYXBoX2dpdF9iZWhhdmlvciAnYWx0ZXJuYXRlOiBjb21taXQgMTMgdnMgNicgY29tbWl0cy8xMyBjb21taXRzLzYKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdCBtZXJnZSBzdHJhZ2V0eSBjb25zdGFudHMnICcKKwlnaXQgY2xvbmUgLiBtZXJnZS0yICYmCisJKAorCQljZCBtZXJnZS0yICYmCisJCWdpdCBjb25maWcgY29yZS5jb21taXRHcmFwaCB0cnVlICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDIgJGdyYXBoZGlyL2NvbW1pdC1ncmFwaC1jaGFpbiAmJgorCQl0ZXN0X2NvbW1pdCAxNCAmJgorCQlnaXQgY29tbWl0LWdyYXBoIHdyaXRlIC0tcmVhY2hhYmxlIC0tc3BsaXQgLS1zaXplLW11bHRpcGxlPTIgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMyAkZ3JhcGhkaXIvY29tbWl0LWdyYXBoLWNoYWluCisKKwkpICYmCisJZ2l0IGNsb25lIC4gbWVyZ2UtMTAgJiYKKwkoCisJCWNkIG1lcmdlLTEwICYmCisJCWdpdCBjb25maWcgY29yZS5jb21taXRHcmFwaCB0cnVlICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDIgJGdyYXBoZGlyL2NvbW1pdC1ncmFwaC1jaGFpbiAmJgorCQl0ZXN0X2NvbW1pdCAxNCAmJgorCQlnaXQgY29tbWl0LWdyYXBoIHdyaXRlIC0tcmVhY2hhYmxlIC0tc3BsaXQgLS1zaXplLW11bHRpcGxlPTEwICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgJGdyYXBoZGlyL2NvbW1pdC1ncmFwaC1jaGFpbiAmJgorCQlscyAkZ3JhcGhkaXIvZ3JhcGgtKi5ncmFwaCA+Z3JhcGgtZmlsZXMgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMSBncmFwaC1maWxlcworCSkgJiYKKwlnaXQgY2xvbmUgLiBtZXJnZS0xMC1leHBpcmUgJiYKKwkoCisJCWNkIG1lcmdlLTEwLWV4cGlyZSAmJgorCQlnaXQgY29uZmlnIGNvcmUuY29tbWl0R3JhcGggdHJ1ZSAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAyICRncmFwaGRpci9jb21taXQtZ3JhcGgtY2hhaW4gJiYKKwkJdGVzdF9jb21taXQgMTUgJiYKKwkJZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSAtLXJlYWNoYWJsZSAtLXNwbGl0IC0tc2l6ZS1tdWx0aXBsZT0xMCAtLWV4cGlyZS10aW1lPTE5ODAtMDEtMDEgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMSAkZ3JhcGhkaXIvY29tbWl0LWdyYXBoLWNoYWluICYmCisJCWxzICRncmFwaGRpci9ncmFwaC0qLmdyYXBoID5ncmFwaC1maWxlcyAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAzIGdyYXBoLWZpbGVzCisJKSAmJgorCWdpdCBjbG9uZSAtLW5vLWhhcmRsaW5rcyAuIG1heC1jb21taXRzICYmCisJKAorCQljZCBtYXgtY29tbWl0cyAmJgorCQlnaXQgY29uZmlnIGNvcmUuY29tbWl0R3JhcGggdHJ1ZSAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAyICRncmFwaGRpci9jb21taXQtZ3JhcGgtY2hhaW4gJiYKKwkJdGVzdF9jb21taXQgMTYgJiYKKwkJdGVzdF9jb21taXQgMTcgJiYKKwkJZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSAtLXJlYWNoYWJsZSAtLXNwbGl0IC0tbWF4LWNvbW1pdHM9MSAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAxICRncmFwaGRpci9jb21taXQtZ3JhcGgtY2hhaW4gJiYKKwkJbHMgJGdyYXBoZGlyL2dyYXBoLSouZ3JhcGggPmdyYXBoLWZpbGVzICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgZ3JhcGgtZmlsZXMKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlbW92ZSBjb21taXQtZ3JhcGgtY2hhaW4gZmlsZSBhZnRlciBmbGF0dGVuaW5nJyAnCisJZ2l0IGNsb25lIC4gZmxhdHRlbiAmJgorCSgKKwkJY2QgZmxhdHRlbiAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAyICRncmFwaGRpci9jb21taXQtZ3JhcGgtY2hhaW4gJiYKKwkJZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSAtLXJlYWNoYWJsZSAmJgorCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyAkZ3JhcGhkaXIvY29tbWl0LWdyYXBoLWNoYWluICYmCisJCWxzICRncmFwaGRpciA+Z3JhcGgtZmlsZXMgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMCBncmFwaC1maWxlcworCSkKKycKKworY29ycnVwdF9maWxlKCkgeworCWZpbGU9JDEKKwlwb3M9JDIKKwlkYXRhPSIkezM6LVwwfSIKKwljaG1vZCBhK3cgIiRmaWxlIiAmJgorCXByaW50ZiAiJGRhdGEiIHwgZGQgb2Y9IiRmaWxlIiBicz0xIHNlZWs9IiRwb3MiIGNvbnY9bm90cnVuYworfQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgaGFzaGVzIGFsb25nIGNoYWluLCBldmVuIGluIHNoYWxsb3cnICcKKwlnaXQgY2xvbmUgLS1uby1oYXJkbGlua3MgLiB2ZXJpZnkgJiYKKwkoCisJCWNkIHZlcmlmeSAmJgorCQlnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSAmJgorCQliYXNlX2ZpbGU9JGdyYXBoZGlyL2dyYXBoLSQoaGVhZCAtbiAxICRncmFwaGRpci9jb21taXQtZ3JhcGgtY2hhaW4pLmdyYXBoICYmCisJCWNvcnJ1cHRfZmlsZSAiJGJhc2VfZmlsZSIgJCh0ZXN0X29pZCBzaGFsbG93KSAiXDAxIiAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSAtLXNoYWxsb3cgMj50ZXN0X2VyciAmJgorCQlncmVwIC12ICJeKyIgdGVzdF9lcnIgPmVyciAmJgorCQl0ZXN0X2kxOG5ncmVwICJpbmNvcnJlY3QgY2hlY2tzdW0iIGVycgorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IC0tc2hhbGxvdyBkb2VzIG5vdCBjaGVjayBiYXNlIGNvbnRlbnRzJyAnCisJZ2l0IGNsb25lIC0tbm8taGFyZGxpbmtzIC4gdmVyaWZ5LXNoYWxsb3cgJiYKKwkoCisJCWNkIHZlcmlmeS1zaGFsbG93ICYmCisJCWdpdCBjb21taXQtZ3JhcGggdmVyaWZ5ICYmCisJCWJhc2VfZmlsZT0kZ3JhcGhkaXIvZ3JhcGgtJChoZWFkIC1uIDEgJGdyYXBoZGlyL2NvbW1pdC1ncmFwaC1jaGFpbikuZ3JhcGggJiYKKwkJY29ycnVwdF9maWxlICIkYmFzZV9maWxlIiAxMDAwICJcMDEiICYmCisJCWdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IC0tc2hhbGxvdyAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSAyPnRlc3RfZXJyICYmCisJCWdyZXAgLXYgIl4rIiB0ZXN0X2VyciA+ZXJyICYmCisJCXRlc3RfaTE4bmdyZXAgImluY29ycmVjdCBjaGVja3N1bSIgZXJyCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd3YXJuIG9uIGJhc2UgZ3JhcGggY2h1bmsgaW5jb3JyZWN0JyAnCisJZ2l0IGNsb25lIC0tbm8taGFyZGxpbmtzIC4gYmFzZS1jaHVuayAmJgorCSgKKwkJY2QgYmFzZS1jaHVuayAmJgorCQlnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSAmJgorCQliYXNlX2ZpbGU9JGdyYXBoZGlyL2dyYXBoLSQodGFpbCAtbiAxICRncmFwaGRpci9jb21taXQtZ3JhcGgtY2hhaW4pLmdyYXBoICYmCisJCWNvcnJ1cHRfZmlsZSAiJGJhc2VfZmlsZSIgJCh0ZXN0X29pZCBiYXNlKSAiXDAxIiAmJgorCQlnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSAtLXNoYWxsb3cgMj50ZXN0X2VyciAmJgorCQlncmVwIC12ICJeKyIgdGVzdF9lcnIgPmVyciAmJgorCQl0ZXN0X2kxOG5ncmVwICJjb21taXQtZ3JhcGggY2hhaW4gZG9lcyBub3QgbWF0Y2giIGVycgorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IGFmdGVyIGNvbW1pdC1ncmFwaC1jaGFpbiBjb3JydXB0aW9uJyAnCisJZ2l0IGNsb25lIC0tbm8taGFyZGxpbmtzIC4gdmVyaWZ5LWNoYWluICYmCisJKAorCQljZCB2ZXJpZnktY2hhaW4gJiYKKwkJY29ycnVwdF9maWxlICIkZ3JhcGhkaXIvY29tbWl0LWdyYXBoLWNoYWluIiA2MCAiRyIgJiYKKwkJZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgMj50ZXN0X2VyciAmJgorCQlncmVwIC12ICJeKyIgdGVzdF9lcnIgPmVyciAmJgorCQl0ZXN0X2kxOG5ncmVwICJpbnZhbGlkIGNvbW1pdC1ncmFwaCBjaGFpbiIgZXJyICYmCisJCWNvcnJ1cHRfZmlsZSAiJGdyYXBoZGlyL2NvbW1pdC1ncmFwaC1jaGFpbiIgNjAgIkEiICYmCisJCWdpdCBjb21taXQtZ3JhcGggdmVyaWZ5IDI+dGVzdF9lcnIgJiYKKwkJZ3JlcCAtdiAiXisiIHRlc3RfZXJyID5lcnIgJiYKKwkJdGVzdF9pMThuZ3JlcCAidW5hYmxlIHRvIGZpbmQgYWxsIGNvbW1pdC1ncmFwaCBmaWxlcyIgZXJyCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgYWNyb3NzIGFsdGVybmF0ZXMnICcKKwlnaXQgY2xvbmUgLS1uby1oYXJkbGlua3MgLiB2ZXJpZnktYWx0ICYmCisJKAorCQljZCB2ZXJpZnktYWx0ICYmCisJCXJtIC1yZiAkZ3JhcGhkaXIgJiYKKwkJYWx0ZGlyPSIkKHB3ZCkvLi4vLmdpdC9vYmplY3RzIiAmJgorCQllY2hvICIkYWx0ZGlyIiA+LmdpdC9vYmplY3RzL2luZm8vYWx0ZXJuYXRlcyAmJgorCQlnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSAtLW9iamVjdC1kaXI9IiRhbHRkaXIvIiAmJgorCQl0ZXN0X2NvbW1pdCBleHRyYSAmJgorCQlnaXQgY29tbWl0LWdyYXBoIHdyaXRlIC0tcmVhY2hhYmxlIC0tc3BsaXQgJiYKKwkJdGlwX2ZpbGU9JGdyYXBoZGlyL2dyYXBoLSQodGFpbCAtbiAxICRncmFwaGRpci9jb21taXQtZ3JhcGgtY2hhaW4pLmdyYXBoICYmCisJCWNvcnJ1cHRfZmlsZSAiJHRpcF9maWxlIiAxMDAgIlwwMSIgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbW1pdC1ncmFwaCB2ZXJpZnkgLS1zaGFsbG93IDI+dGVzdF9lcnIgJiYKKwkJZ3JlcCAtdiAiXisiIHRlc3RfZXJyID5lcnIgJiYKKwkJdGVzdF9pMThuZ3JlcCAiY29tbWl0LWdyYXBoIGhhcyBpbmNvcnJlY3QgZmFub3V0IHZhbHVlIiBlcnIKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FkZCBvY3RvcHVzIG1lcmdlJyAnCisJZ2l0IHJlc2V0IC0taGFyZCBjb21taXRzLzEwICYmCisJZ2l0IG1lcmdlIGNvbW1pdHMvMyBjb21taXRzLzQgJiYKKwlnaXQgYnJhbmNoIG1lcmdlL29jdG9wdXMgJiYKKwlnaXQgY29tbWl0LWdyYXBoIHdyaXRlIC0tcmVhY2hhYmxlIC0tc3BsaXQgJiYKKwlnaXQgY29tbWl0LWdyYXBoIHZlcmlmeSAtLXByb2dyZXNzIDI+ZXJyICYmCisJdGVzdF9saW5lX2NvdW50ID0gMyBlcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICEgd2FybmluZyBlcnIgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAzICRncmFwaGRpci9jb21taXQtZ3JhcGgtY2hhaW4KKycKKworZ3JhcGhfZ2l0X2JlaGF2aW9yICdncmFwaCBleGlzdHMnIG1lcmdlL29jdG9wdXMgY29tbWl0cy8xMgorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzcGxpdCBhY3Jvc3MgYWx0ZXJuYXRlIHdoZXJlIGFsdGVybmF0ZSBpcyBub3Qgc3BsaXQnICcKKwlnaXQgY29tbWl0LWdyYXBoIHdyaXRlIC0tcmVhY2hhYmxlICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgLmdpdC9vYmplY3RzL2luZm8vY29tbWl0LWdyYXBoICYmCisJY3AgLmdpdC9vYmplY3RzL2luZm8vY29tbWl0LWdyYXBoIC4gJiYKKwlnaXQgY2xvbmUgLS1uby1oYXJkbGlua3MgLiBhbHQtc3BsaXQgJiYKKwkoCisJCWNkIGFsdC1zcGxpdCAmJgorCQlybSAtZiAuZ2l0L29iamVjdHMvaW5mby9jb21taXQtZ3JhcGggJiYKKwkJZWNobyAiJChwd2QpIi8uLi8uZ2l0L29iamVjdHMgPi5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMgJiYKKwkJdGVzdF9jb21taXQgMTggJiYKKwkJZ2l0IGNvbW1pdC1ncmFwaCB3cml0ZSAtLXJlYWNoYWJsZSAtLXNwbGl0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgJGdyYXBoZGlyL2NvbW1pdC1ncmFwaC1jaGFpbgorCSkgJiYKKwl0ZXN0X2NtcCBjb21taXQtZ3JhcGggLmdpdC9vYmplY3RzL2luZm8vY29tbWl0LWdyYXBoCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTQwMC1zZW5kLXBhY2suc2ggYi90L3Q1NDAwLXNlbmQtcGFjay5zaAppbmRleCBmMTkzMmVhLi5iODQ2MThjIDEwMDc1NQotLS0gYS90L3Q1NDAwLXNlbmQtcGFjay5zaAorKysgYi90L3Q1NDAwLXNlbmQtcGFjay5zaApAQCAtMjg4LDcgKzI4OCw3IEBACiAJJHNoYXJlZCAuaGF2ZQogCUVPRgogCi0JR0lUX1RSQUNFX1BBQ0tFVD0kKHB3ZCkvdHJhY2UgXAorCUdJVF9UUkFDRV9QQUNLRVQ9JChwd2QpL3RyYWNlIEdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT049MCBcCiAJICAgIGdpdCBwdXNoIFwKIAkJLS1yZWNlaXZlLXBhY2s9InVuc2V0IEdJVF9UUkFDRV9QQUNLRVQ7IGdpdC1yZWNlaXZlLXBhY2siIFwKIAkJZm9yayBIRUFEOmZvbyAmJgpkaWZmIC0tZ2l0IGEvdC90NTQwMy1wb3N0LWNoZWNrb3V0LWhvb2suc2ggYi90L3Q1NDAzLXBvc3QtY2hlY2tvdXQtaG9vay5zaAppbmRleCBmYzg5OGM5Li5hMzliM2I1IDEwMDc1NQotLS0gYS90L3Q1NDAzLXBvc3QtY2hlY2tvdXQtaG9vay5zaAorKysgYi90L3Q1NDAzLXBvc3QtY2hlY2tvdXQtaG9vay5zaApAQCAtNyw4MiArNyw3MCBAQAogLiAuL3Rlc3QtbGliLnNoCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3Mgc2V0dXAgJwotCWVjaG8gRGF0YSBmb3IgY29tbWl0MC4gPmEgJiYKLQllY2hvIERhdGEgZm9yIGNvbW1pdDAuID5iICYmCi0JZ2l0IHVwZGF0ZS1pbmRleCAtLWFkZCBhICYmCi0JZ2l0IHVwZGF0ZS1pbmRleCAtLWFkZCBiICYmCi0JdHJlZTA9JChnaXQgd3JpdGUtdHJlZSkgJiYKLQljb21taXQwPSQoZWNobyBzZXR1cCB8IGdpdCBjb21taXQtdHJlZSAkdHJlZTApICYmCi0JZ2l0IHVwZGF0ZS1yZWYgcmVmcy9oZWFkcy9tYXN0ZXIgJGNvbW1pdDAgJiYKLQlnaXQgY2xvbmUgLi8uIGNsb25lMSAmJgotCWdpdCBjbG9uZSAuLy4gY2xvbmUyICYmCi0JR0lUX0RJUj1jbG9uZTIvLmdpdCBnaXQgYnJhbmNoIG5ldzIgJiYKLQllY2hvIERhdGEgZm9yIGNvbW1pdDEuID5jbG9uZTIvYiAmJgotCUdJVF9ESVI9Y2xvbmUyLy5naXQgZ2l0IGFkZCBjbG9uZTIvYiAmJgotCUdJVF9ESVI9Y2xvbmUyLy5naXQgZ2l0IGNvbW1pdCAtbSBuZXcyCi0nCi0KLWZvciBjbG9uZSBpbiAxIDI7IGRvCi0gICAgY2F0ID5jbG9uZSR7Y2xvbmV9Ly5naXQvaG9va3MvcG9zdC1jaGVja291dCA8PCdFT0YnCi0jIS9iaW4vc2gKLWVjaG8gJEAgPiAkR0lUX0RJUi9wb3N0LWNoZWNrb3V0LmFyZ3MKLUVPRgotICAgIGNobW9kIHUreCBjbG9uZSR7Y2xvbmV9Ly5naXQvaG9va3MvcG9zdC1jaGVja291dAotZG9uZQotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdwb3N0LWNoZWNrb3V0IHJ1bnMgYXMgZXhwZWN0ZWQgJyAnCi0JR0lUX0RJUj1jbG9uZTEvLmdpdCBnaXQgY2hlY2tvdXQgbWFzdGVyICYmCi0JdGVzdCAtZSBjbG9uZTEvLmdpdC9wb3N0LWNoZWNrb3V0LmFyZ3MKKwlta2RpciAtcCAuZ2l0L2hvb2tzICYmCisJd3JpdGVfc2NyaXB0IC5naXQvaG9va3MvcG9zdC1jaGVja291dCA8PC1cRU9GICYmCisJZWNobyAiJEAiID4uZ2l0L3Bvc3QtY2hlY2tvdXQuYXJncworCUVPRgorCXRlc3RfY29tbWl0IG9uZSAmJgorCXRlc3RfY29tbWl0IHR3byAmJgorCXRlc3RfY29tbWl0IHJlYmFzZS1vbi1tZSAmJgorCWdpdCByZXNldCAtLWhhcmQgSEVBRF4gJiYKKwl0ZXN0X2NvbW1pdCB0aHJlZQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwb3N0LWNoZWNrb3V0IHJlY2VpdmVzIHRoZSByaWdodCBhcmd1bWVudHMgd2l0aCBIRUFEIHVuY2hhbmdlZCAnICcKLQlvbGQ9JChhd2sgIntwcmludCBcJDF9IiBjbG9uZTEvLmdpdC9wb3N0LWNoZWNrb3V0LmFyZ3MpICYmCi0JbmV3PSQoYXdrICJ7cHJpbnQgXCQyfSIgY2xvbmUxLy5naXQvcG9zdC1jaGVja291dC5hcmdzKSAmJgotCWZsYWc9JChhd2sgIntwcmludCBcJDN9IiBjbG9uZTEvLmdpdC9wb3N0LWNoZWNrb3V0LmFyZ3MpICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiAuZ2l0L3Bvc3QtY2hlY2tvdXQuYXJncyIgJiYKKwlnaXQgY2hlY2tvdXQgbWFzdGVyICYmCisJcmVhZCBvbGQgbmV3IGZsYWcgPC5naXQvcG9zdC1jaGVja291dC5hcmdzICYmCiAJdGVzdCAkb2xkID0gJG5ldyAmJiB0ZXN0ICRmbGFnID0gMQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdwb3N0LWNoZWNrb3V0IHJ1bnMgYXMgZXhwZWN0ZWQgJyAnCi0JR0lUX0RJUj1jbG9uZTEvLmdpdCBnaXQgY2hlY2tvdXQgbWFzdGVyICYmCi0JdGVzdCAtZSBjbG9uZTEvLmdpdC9wb3N0LWNoZWNrb3V0LmFyZ3MKLScKLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAncG9zdC1jaGVja291dCBhcmdzIGFyZSBjb3JyZWN0IHdpdGggZ2l0IGNoZWNrb3V0IC1iICcgJwotCUdJVF9ESVI9Y2xvbmUxLy5naXQgZ2l0IGNoZWNrb3V0IC1iIG5ldzEgJiYKLQlvbGQ9JChhd2sgIntwcmludCBcJDF9IiBjbG9uZTEvLmdpdC9wb3N0LWNoZWNrb3V0LmFyZ3MpICYmCi0JbmV3PSQoYXdrICJ7cHJpbnQgXCQyfSIgY2xvbmUxLy5naXQvcG9zdC1jaGVja291dC5hcmdzKSAmJgotCWZsYWc9JChhd2sgIntwcmludCBcJDN9IiBjbG9uZTEvLmdpdC9wb3N0LWNoZWNrb3V0LmFyZ3MpICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiAuZ2l0L3Bvc3QtY2hlY2tvdXQuYXJncyIgJiYKKwlnaXQgY2hlY2tvdXQgLWIgbmV3MSAmJgorCXJlYWQgb2xkIG5ldyBmbGFnIDwuZ2l0L3Bvc3QtY2hlY2tvdXQuYXJncyAmJgogCXRlc3QgJG9sZCA9ICRuZXcgJiYgdGVzdCAkZmxhZyA9IDEKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncG9zdC1jaGVja291dCByZWNlaXZlcyB0aGUgcmlnaHQgYXJncyB3aXRoIEhFQUQgY2hhbmdlZCAnICcKLQlHSVRfRElSPWNsb25lMi8uZ2l0IGdpdCBjaGVja291dCBuZXcyICYmCi0Jb2xkPSQoYXdrICJ7cHJpbnQgXCQxfSIgY2xvbmUyLy5naXQvcG9zdC1jaGVja291dC5hcmdzKSAmJgotCW5ldz0kKGF3ayAie3ByaW50IFwkMn0iIGNsb25lMi8uZ2l0L3Bvc3QtY2hlY2tvdXQuYXJncykgJiYKLQlmbGFnPSQoYXdrICJ7cHJpbnQgXCQzfSIgY2xvbmUyLy5naXQvcG9zdC1jaGVja291dC5hcmdzKSAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgLmdpdC9wb3N0LWNoZWNrb3V0LmFyZ3MiICYmCisJZ2l0IGNoZWNrb3V0IHR3byAmJgorCXJlYWQgb2xkIG5ldyBmbGFnIDwuZ2l0L3Bvc3QtY2hlY2tvdXQuYXJncyAmJgogCXRlc3QgJG9sZCAhPSAkbmV3ICYmIHRlc3QgJGZsYWcgPSAxCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Bvc3QtY2hlY2tvdXQgcmVjZWl2ZXMgdGhlIHJpZ2h0IGFyZ3Mgd2hlbiBub3Qgc3dpdGNoaW5nIGJyYW5jaGVzICcgJwotCUdJVF9ESVI9Y2xvbmUyLy5naXQgZ2l0IGNoZWNrb3V0IG1hc3RlciBiICYmCi0Jb2xkPSQoYXdrICJ7cHJpbnQgXCQxfSIgY2xvbmUyLy5naXQvcG9zdC1jaGVja291dC5hcmdzKSAmJgotCW5ldz0kKGF3ayAie3ByaW50IFwkMn0iIGNsb25lMi8uZ2l0L3Bvc3QtY2hlY2tvdXQuYXJncykgJiYKLQlmbGFnPSQoYXdrICJ7cHJpbnQgXCQzfSIgY2xvbmUyLy5naXQvcG9zdC1jaGVja291dC5hcmdzKSAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgLmdpdC9wb3N0LWNoZWNrb3V0LmFyZ3MiICYmCisJZ2l0IGNoZWNrb3V0IG1hc3RlciAtLSB0aHJlZS50ICYmCisJcmVhZCBvbGQgbmV3IGZsYWcgPC5naXQvcG9zdC1jaGVja291dC5hcmdzICYmCiAJdGVzdCAkb2xkID0gJG5ldyAmJiB0ZXN0ICRmbGFnID0gMAogJwogCi1pZiB0ZXN0ICIkKGdpdCBjb25maWcgLS1ib29sIGNvcmUuZmlsZW1vZGUpIiA9IHRydWU7IHRoZW4KLW1rZGlyIC1wIHRlbXBsYXRlcy9ob29rcwotY2F0ID50ZW1wbGF0ZXMvaG9va3MvcG9zdC1jaGVja291dCA8PCdFT0YnCi0jIS9iaW4vc2gKLWVjaG8gJEAgPiAkR0lUX0RJUi9wb3N0LWNoZWNrb3V0LmFyZ3MKLUVPRgotY2htb2QgK3ggdGVtcGxhdGVzL2hvb2tzL3Bvc3QtY2hlY2tvdXQKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Bvc3QtY2hlY2tvdXQgaXMgdHJpZ2dlcmVkIG9uIHJlYmFzZScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgLmdpdC9wb3N0LWNoZWNrb3V0LmFyZ3MiICYmCisJZ2l0IGNoZWNrb3V0IC1iIHJlYmFzZS10ZXN0IG1hc3RlciAmJgorCXJtIC1mIC5naXQvcG9zdC1jaGVja291dC5hcmdzICYmCisJZ2l0IHJlYmFzZSByZWJhc2Utb24tbWUgJiYKKwlyZWFkIG9sZCBuZXcgZmxhZyA8LmdpdC9wb3N0LWNoZWNrb3V0LmFyZ3MgJiYKKwl0ZXN0ICRvbGQgIT0gJG5ldyAmJiB0ZXN0ICRmbGFnID0gMQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwb3N0LWNoZWNrb3V0IGlzIHRyaWdnZXJlZCBvbiByZWJhc2Ugd2l0aCBmYXN0LWZvcndhcmQnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIC5naXQvcG9zdC1jaGVja291dC5hcmdzIiAmJgorCWdpdCBjaGVja291dCAtYiBmZi1yZWJhc2UtdGVzdCByZWJhc2Utb24tbWVeICYmCisJcm0gLWYgLmdpdC9wb3N0LWNoZWNrb3V0LmFyZ3MgJiYKKwlnaXQgcmViYXNlIHJlYmFzZS1vbi1tZSAmJgorCXJlYWQgb2xkIG5ldyBmbGFnIDwuZ2l0L3Bvc3QtY2hlY2tvdXQuYXJncyAmJgorCXRlc3QgJG9sZCAhPSAkbmV3ICYmIHRlc3QgJGZsYWcgPSAxCisnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Bvc3QtY2hlY2tvdXQgaG9vayBpcyB0cmlnZ2VyZWQgYnkgY2xvbmUnICcKKwlta2RpciAtcCB0ZW1wbGF0ZXMvaG9va3MgJiYKKwl3cml0ZV9zY3JpcHQgdGVtcGxhdGVzL2hvb2tzL3Bvc3QtY2hlY2tvdXQgPDwtXEVPRiAmJgorCWVjaG8gIiRAIiA+IiRHSVRfRElSL3Bvc3QtY2hlY2tvdXQuYXJncyIKKwlFT0YKIAlnaXQgY2xvbmUgLS10ZW1wbGF0ZT10ZW1wbGF0ZXMgLiBjbG9uZTMgJiYKIAl0ZXN0IC1mIGNsb25lMy8uZ2l0L3Bvc3QtY2hlY2tvdXQuYXJncwogJwotZmkKIAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1NDA3LXBvc3QtcmV3cml0ZS1ob29rLnNoIGIvdC90NTQwNy1wb3N0LXJld3JpdGUtaG9vay5zaAppbmRleCA5YjJhMjc0Li44MDc1MGE4IDEwMDc1NQotLS0gYS90L3Q1NDA3LXBvc3QtcmV3cml0ZS1ob29rLnNoCisrKyBiL3QvdDU0MDctcG9zdC1yZXdyaXRlLWhvb2suc2gKQEAgLTUzLDEwICs1MywxMCBAQAogCXRlc3QgISAtZiBwb3N0LXJld3JpdGUuZGF0YQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgcmViYXNlJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgcmViYXNlIC0tYXBwbHknICcKIAlnaXQgcmVzZXQgLS1oYXJkIEQgJiYKIAljbGVhcl9ob29rX2lucHV0ICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLW9udG8gQSBCICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLWFwcGx5IC0tb250byBBIEIgJiYKIAllY2hvIEMgPiBmb28gJiYKIAlnaXQgYWRkIGZvbyAmJgogCWdpdCByZWJhc2UgLS1jb250aW51ZSAmJgpAQCAtNjgsMjkgKzY4LDMxIEBACiAJdmVyaWZ5X2hvb2tfaW5wdXQKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IHJlYmFzZSAtLXNraXAnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCByZWJhc2UgLS1hcHBseSAtLXNraXAnICcKIAlnaXQgcmVzZXQgLS1oYXJkIEQgJiYKIAljbGVhcl9ob29rX2lucHV0ICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLW9udG8gQSBCICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLWFwcGx5IC0tb250byBBIEIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC0tc2tpcCAmJgogCWVjaG8gRCA+IGZvbyAmJgogCWdpdCBhZGQgZm9vICYmCiAJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCiAJZWNobyByZWJhc2UgPmV4cGVjdGVkLmFyZ3MgJiYKIAljYXQgPmV4cGVjdGVkLmRhdGEgPDwtRU9GICYmCisJJChnaXQgcmV2LXBhcnNlIEMpICQoZ2l0IHJldi1wYXJzZSBIRUFEXikKIAkkKGdpdCByZXYtcGFyc2UgRCkgJChnaXQgcmV2LXBhcnNlIEhFQUQpCiAJRU9GCiAJdmVyaWZ5X2hvb2tfaW5wdXQKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IHJlYmFzZSAtLXNraXAgdGhlIGxhc3Qgb25lJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgcmViYXNlIC0tYXBwbHkgLS1za2lwIHRoZSBsYXN0IG9uZScgJwogCWdpdCByZXNldCAtLWhhcmQgRiAmJgogCWNsZWFyX2hvb2tfaW5wdXQgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC0tb250byBEIEEgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC0tYXBwbHkgLS1vbnRvIEQgQSAmJgogCWdpdCByZWJhc2UgLS1za2lwICYmCiAJZWNobyByZWJhc2UgPmV4cGVjdGVkLmFyZ3MgJiYKIAljYXQgPmV4cGVjdGVkLmRhdGEgPDwtRU9GICYmCiAJJChnaXQgcmV2LXBhcnNlIEUpICQoZ2l0IHJldi1wYXJzZSBIRUFEKQorCSQoZ2l0IHJldi1wYXJzZSBGKSAkKGdpdCByZXYtcGFyc2UgSEVBRCkKIAlFT0YKIAl2ZXJpZnlfaG9va19pbnB1dAogJwpAQCAtMTIwLDYgKzEyMiwzOCBAQAogCWdpdCByZWJhc2UgLS1jb250aW51ZSAmJgogCWVjaG8gcmViYXNlID5leHBlY3RlZC5hcmdzICYmCiAJY2F0ID5leHBlY3RlZC5kYXRhIDw8LUVPRiAmJgorCSQoZ2l0IHJldi1wYXJzZSBDKSAkKGdpdCByZXYtcGFyc2UgSEVBRF4pCisJJChnaXQgcmV2LXBhcnNlIEQpICQoZ2l0IHJldi1wYXJzZSBIRUFEKQorCUVPRgorCXZlcmlmeV9ob29rX2lucHV0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCByZWJhc2Ugd2l0aCBpbXBsaWNpdCB1c2Ugb2YgbWVyZ2UgYmFja2VuZCcgJworCWdpdCByZXNldCAtLWhhcmQgRCAmJgorCWNsZWFyX2hvb2tfaW5wdXQgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC0ta2VlcC1lbXB0eSAtLW9udG8gQSBCICYmCisJZWNobyBDID4gZm9vICYmCisJZ2l0IGFkZCBmb28gJiYKKwlnaXQgcmViYXNlIC0tY29udGludWUgJiYKKwllY2hvIHJlYmFzZSA+ZXhwZWN0ZWQuYXJncyAmJgorCWNhdCA+ZXhwZWN0ZWQuZGF0YSA8PC1FT0YgJiYKKwkkKGdpdCByZXYtcGFyc2UgQykgJChnaXQgcmV2LXBhcnNlIEhFQUReKQorCSQoZ2l0IHJldi1wYXJzZSBEKSAkKGdpdCByZXYtcGFyc2UgSEVBRCkKKwlFT0YKKwl2ZXJpZnlfaG9va19pbnB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgcmViYXNlIC0tc2tpcCB3aXRoIGltcGxpY2l0IHVzZSBvZiBtZXJnZSBiYWNrZW5kJyAnCisJZ2l0IHJlc2V0IC0taGFyZCBEICYmCisJY2xlYXJfaG9va19pbnB1dCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1rZWVwLWVtcHR5IC0tb250byBBIEIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC0tc2tpcCAmJgorCWVjaG8gRCA+IGZvbyAmJgorCWdpdCBhZGQgZm9vICYmCisJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlICYmCisJZWNobyByZWJhc2UgPmV4cGVjdGVkLmFyZ3MgJiYKKwljYXQgPmV4cGVjdGVkLmRhdGEgPDwtRU9GICYmCisJJChnaXQgcmV2LXBhcnNlIEMpICQoZ2l0IHJldi1wYXJzZSBIRUFEXikKIAkkKGdpdCByZXYtcGFyc2UgRCkgJChnaXQgcmV2LXBhcnNlIEhFQUQpCiAJRU9GCiAJdmVyaWZ5X2hvb2tfaW5wdXQKZGlmZiAtLWdpdCBhL3QvdDU0MDktY29sb3JpemUtcmVtb3RlLW1lc3NhZ2VzLnNoIGIvdC90NTQwOS1jb2xvcml6ZS1yZW1vdGUtbWVzc2FnZXMuc2gKaW5kZXggZjgxYjY4MS4uNWQ4ZjQwMSAxMDA3NTUKLS0tIGEvdC90NTQwOS1jb2xvcml6ZS1yZW1vdGUtbWVzc2FnZXMuc2gKKysrIGIvdC90NTQwOS1jb2xvcml6ZS1yZW1vdGUtbWVzc2FnZXMuc2gKQEAgLTE3LDYgKzE3LDcgQEAKIAllY2hvICIgIiAiZXJyb3I6IGxlYWRpbmcgc3BhY2UiCiAJZWNobyAiICAgICIKIAllY2hvIEVycgorCWVjaG8gU1VDQ0VTUwogCWV4aXQgMAogCUVPRgogCWVjaG8gMSA+ZmlsZSAmJgpAQCAtMzUsNiArMzYsNyBAQAogCWdyZXAgIjxCT0xEO1JFRD5lcnJvcjxSRVNFVD46IGVycm9yIiBkZWNvZGVkICYmCiAJZ3JlcCAiPFlFTExPVz5oaW50PFJFU0VUPjoiIGRlY29kZWQgJiYKIAlncmVwICI8Qk9MRDtHUkVFTj5zdWNjZXNzPFJFU0VUPjoiIGRlY29kZWQgJiYKKwlncmVwICI8Qk9MRDtHUkVFTj5TVUNDRVNTPFJFU0VUPiIgZGVjb2RlZCAmJgogCWdyZXAgIjxCT0xEO1lFTExPVz53YXJuaW5nPFJFU0VUPjoiIGRlY29kZWQKICcKIApAQCAtNTQsMTQgKzU2LDEzIEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Nhc2UtaW5zZW5zaXRpdmUnICcKIAlnaXQgLS1naXQtZGlyIGNoaWxkLy5naXQgLWMgY29sb3IucmVtb3RlPWFsd2F5cyBwdXNoIC1mIG9yaWdpbiBIRUFEOnJlZnMvaGVhZHMvY2FzZS1pbnNlbnNpdGl2ZSAyPm91dHB1dCAmJgotCWNhdCBvdXRwdXQgJiYKIAl0ZXN0X2RlY29kZV9jb2xvciA8b3V0cHV0ID5kZWNvZGVkICYmCiAJZ3JlcCAiPEJPTEQ7UkVEPmVycm9yPFJFU0VUPjogZXJyb3IiIGRlY29kZWQgJiYKIAlncmVwICI8Qk9MRDtSRUQ+RVJST1I8UkVTRVQ+OiBhbHNvIGhpZ2hsaWdodGVkIiBkZWNvZGVkCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xlYWRpbmcgc3BhY2UnICcKLQlnaXQgLS1naXQtZGlyIGNoaWxkLy5naXQgLWMgY29sb3IucmVtb3RlPWFsd2F5cyBwdXNoIC1mIG9yaWdpbiBIRUFEOnJlZnMvaGVhZHMvbGVhZGluZy1zcGFjZSAyPm91dHB1dCAmJiAgICAgICAgY2F0IG91dHB1dCAmJgorCWdpdCAtLWdpdC1kaXIgY2hpbGQvLmdpdCAtYyBjb2xvci5yZW1vdGU9YWx3YXlzIHB1c2ggLWYgb3JpZ2luIEhFQUQ6cmVmcy9oZWFkcy9sZWFkaW5nLXNwYWNlIDI+b3V0cHV0ICYmCiAJdGVzdF9kZWNvZGVfY29sb3IgPG91dHB1dCA+ZGVjb2RlZCAmJgogCWdyZXAgIiAgPEJPTEQ7UkVEPmVycm9yPFJFU0VUPjogbGVhZGluZyBzcGFjZSIgZGVjb2RlZAogJwpkaWZmIC0tZ2l0IGEvdC90NTUwMC1mZXRjaC1wYWNrLnNoIGIvdC90NTUwMC1mZXRjaC1wYWNrLnNoCmluZGV4IDA4NmYyYzQuLmJhYTFhOTkgMTAwNzU1Ci0tLSBhL3QvdDU1MDAtZmV0Y2gtcGFjay5zaAorKysgYi90L3Q1NTAwLWZldGNoLXBhY2suc2gKQEAgLTQzOSwxNSArNDM5LDI0IEBACiAJKSA+aW5wdXQuZHVwCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoIHJlZnMgZnJvbSBjbWRsaW5lJyAnCi0JKAotCQljZCBjbGllbnQgJiYKLQkJZ2l0IGZldGNoLXBhY2sgLS1uby1wcm9ncmVzcyAuLiAkKGNhdCAuLi9pbnB1dCkKLQkpID5vdXRwdXQgJiYKLQljdXQgLWQgIiAiIC1mIDIgPG91dHB1dCB8IHNvcnQgPmFjdHVhbCAmJgotCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIGZldGNoIHJlZnMgZnJvbSBjbWRsaW5lIHZbMTJdJyAnCisJY3AgLXIgY2xpZW50IGNsaWVudDAgJiYKKwljcCAtciBjbGllbnQgY2xpZW50MSAmJgorCWNwIC1yIGNsaWVudCBjbGllbnQyCiAnCiAKK2ZvciB2ZXJzaW9uIGluICcnIDAgMSAyCitkbworCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgInByb3RvY29sLnZlcnNpb249JHZlcnNpb24gZmV0Y2ggcmVmcyBmcm9tIGNtZGxpbmUiICIKKwkJKAorCQkJY2QgY2xpZW50JHZlcnNpb24gJiYKKwkJCUdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT049JHZlcnNpb24gZ2l0IGZldGNoLXBhY2sgLS1uby1wcm9ncmVzcyAuLiBcJChjYXQgLi4vaW5wdXQpCisJCSkgPm91dHB1dCAmJgorCQljdXQgLWQgJyAnIC1mIDIgPG91dHB1dCB8IHNvcnQgPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJIgorZG9uZQorCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmZXRjaCByZWZzIGZyb20gc3RkaW4nICcKIAkoCiAJCWNkIGNsaWVudCAmJgpAQCAtNjI4LDcgKzYzNyw5IEBACiAJdGVzdF9jb21taXQgLUMgc2VydmVyIDYgJiYKIAogCWdpdCBpbml0IGNsaWVudCAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyBjbGllbnQgZmV0Y2gtcGFjayAuLi9zZXJ2ZXIgXAorCSMgU29tZSBwcm90b2NvbCB2ZXJzaW9ucyAoZS5nLiAyKSBzdXBwb3J0IGZldGNoaW5nCisJIyB1bmFkdmVydGlzZWQgb2JqZWN0cywgc28gcmVzdHJpY3QgdGhpcyB0ZXN0IHRvIHYwLgorCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAgZ2l0IC1DIGNsaWVudCBmZXRjaC1wYWNrIC4uL3NlcnZlciBcCiAJCSQoZ2l0IC1DIHNlcnZlciByZXYtcGFyc2UgcmVmcy9oZWFkcy9tYXN0ZXJeKSAyPmVyciAmJgogCXRlc3RfaTE4bmdyZXAgIlNlcnZlciBkb2VzIG5vdCBhbGxvdyByZXF1ZXN0IGZvciB1bmFkdmVydGlzZWQgb2JqZWN0IiBlcnIKICcKQEAgLTY5OCwxMyArNzA5LDIyIEBACiAJIyBmaWxlIHdpdGggc2NoZW1lCiAJZm9yIHAgaW4gZmlsZQogCWRvCi0JCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgImZldGNoLXBhY2sgLS1kaWFnLXVybCAkcDovLyRoLyRyIiAnCisJCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgIU1JTkdXICJmZXRjaC1wYWNrIC0tZGlhZy11cmwgJHA6Ly8kaC8kciIgJwogCQkJY2hlY2tfcHJvdF9wYXRoICRwOi8vJGgvJHIgJHAgIi8kciIKIAkJJworCQl0ZXN0X2V4cGVjdF9zdWNjZXNzIE1JTkdXICJmZXRjaC1wYWNrIC0tZGlhZy11cmwgJHA6Ly8kaC8kciIgJworCQkJY2hlY2tfcHJvdF9wYXRoICRwOi8vJGgvJHIgJHAgIi8vJGgvJHIiCisJCScKKwkJdGVzdF9leHBlY3Rfc3VjY2VzcyBNSU5HVyAiZmV0Y2gtcGFjayAtLWRpYWctdXJsICRwOi8vLyRyIiAnCisJCQljaGVja19wcm90X3BhdGggJHA6Ly8vJHIgJHAgIi8kciIKKwkJJwogCQkjIE5vICIvfiIgLT4gIn4iIGNvbnZlcnNpb24gZm9yIGZpbGUKLQkJdGVzdF9leHBlY3Rfc3VjY2VzcyAiZmV0Y2gtcGFjayAtLWRpYWctdXJsICRwOi8vJGgvfiRyIiAnCisJCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgIU1JTkdXICJmZXRjaC1wYWNrIC0tZGlhZy11cmwgJHA6Ly8kaC9+JHIiICcKIAkJCWNoZWNrX3Byb3RfcGF0aCAkcDovLyRoL34kciAkcCAiL34kciIKIAkJJworCQl0ZXN0X2V4cGVjdF9zdWNjZXNzIE1JTkdXICJmZXRjaC1wYWNrIC0tZGlhZy11cmwgJHA6Ly8kaC9+JHIiICcKKwkJCWNoZWNrX3Byb3RfcGF0aCAkcDovLyRoL34kciAkcCAiLy8kaC9+JHIiCisJCScKIAlkb25lCiAJIyBmaWxlIHdpdGhvdXQgc2NoZW1lCiAJZm9yIGggaW4gbm9ob3N0IG5vaG9zdDoxMiBbOjoxXSBbOjoxXToyMyBbIFs6YWEKQEAgLTc3Myw2ICs3OTMsNDQgQEAKIAkpCiAnCiAKKyMgQSBmZXcgc3VidGxlIHRoaW5ncyBhYm91dCB0aGUgcmVxdWVzdCBpbiB0aGlzIHRlc3Q6CisjCisjICAtIHRoZSBzZXJ2ZXIgbXVzdCBoYXZlIGNvbW1pdC1ncmFwaHMgcHJlc2VudCBhbmQgZW5hYmxlZAorIworIyAgLSB0aGUgaGlzdG9yeSBpcyBzdWNoIHRoYXQgb3VyIHdhbnQvaGF2ZSBzaGFyZSBhIGNvbW1vbiBhbmNlc3RvciAoImJhc2UiCisjICAgIGhlcmUpCisjCisjICAtIHdlIHNlbmQgb25seSBhIHNpbmdsZSBoYXZlLCB3aGljaCBpcyBmZXdlciB0aGFuIGEgbm9ybWFsIGNsaWVudCB3b3VsZAorIyAgICBzZW5kLiBUaGlzIGVuc3VyZXMgdGhhdCB3ZSBkb24ndCBwYXJzZSAiYmFzZSIgdXAgZnJvbnQgd2l0aAorIyAgICBwYXJzZV9vYmplY3QoKSwgYnV0IHJhdGhlciB0cmF2ZXJzZSB0byBpdCBhcyBhIHBhcmVudCB3aGlsZSBkZWNpZGluZyBpZiB3ZQorIyAgICBjYW4gc3RvcCB0aGUgImhhdmUiIG5lZ290aWF0aW9uLCBhbmQgY2FsbCBwYXJzZV9jb21taXQoKS4gVGhlIGZvcm1lcgorIyAgICBzZWVzIHRoZSBhY3R1YWwgb2JqZWN0IGRhdGEgYW5kIHNvIGFsd2F5cyBsb2FkcyB0aGUgdGhyZWUgb2lkLCB3aGVyZWFzIHRoZQorIyAgICBsYXR0ZXIgd2lsbCB0cnkgdG8gbG9hZCBpdCBsYXppbHkuCisjCisjICAtIHdlIG11c3QgdXNlIHByb3RvY29sIHYyLCBiZWNhdXNlIGl0IGhhbmRsZXMgdGhlICJoYXZlIiBuZWdvdGlhdGlvbiBiZWZvcmUKKyMgICAgcHJvY2Vzc2luZyB0aGUgc2hhbGxvdyBkaXJlY3RpdmVzCisjCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaGFsbG93IHNpbmNlIHdpdGggY29tbWl0IGdyYXBoIGFuZCBhbHJlYWR5LXNlZW4gY29tbWl0JyAnCisJdGVzdF9jcmVhdGVfcmVwbyBzaGFsbG93LXNpbmNlLWdyYXBoICYmCisJKAorCWNkIHNoYWxsb3ctc2luY2UtZ3JhcGggJiYKKwl0ZXN0X2NvbW1pdCBiYXNlICYmCisJdGVzdF9jb21taXQgbWFzdGVyICYmCisJZ2l0IGNoZWNrb3V0IC1iIG90aGVyIEhFQUReICYmCisJdGVzdF9jb21taXQgb3RoZXIgJiYKKwlnaXQgY29tbWl0LWdyYXBoIHdyaXRlIC0tcmVhY2hhYmxlICYmCisJZ2l0IGNvbmZpZyBjb3JlLmNvbW1pdEdyYXBoIHRydWUgJiYKKworCUdJVF9QUk9UT0NPTD12ZXJzaW9uPTIgZ2l0IHVwbG9hZC1wYWNrIC4gPDwtRU9GID4vZGV2L251bGwKKwkwMDEyY29tbWFuZD1mZXRjaAorCTAwMDEwMDEzZGVlcGVuLXNpbmNlIDEKKwkwMDMyd2FudCAkKGdpdCByZXYtcGFyc2Ugb3RoZXIpCisJMDAzMmhhdmUgJChnaXQgcmV2LXBhcnNlIG1hc3RlcikKKwkwMDAwCisJRU9GCisJKQorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzaGFsbG93IGNsb25lIGV4Y2x1ZGUgdGFnIHR3bycgJwogCXRlc3RfY3JlYXRlX3JlcG8gc2hhbGxvdy1leGNsdWRlICYmCiAJKApAQCAtODYwLDcgKzkxOCwxMCBAQAogCWdpdCAtQyBjbGllbnQgZmV0Y2gtcGFjayAtLWZpbHRlcj1ibG9iOmxpbWl0PTAgLi4vc2VydmVyIEhFQUQgJiYKIAogCSMgRW5zdXJlIHRoYXQgb2JqZWN0IGlzIG5vdCBpbmFkdmVydGVudGx5IGZldGNoZWQKLQl0ZXN0X211c3RfZmFpbCBnaXQgLUMgY2xpZW50IGNhdC1maWxlIC1lICQoZ2l0IGhhc2gtb2JqZWN0IHNlcnZlci9vbmUudCkKKwljb21taXQ9JChnaXQgLUMgc2VydmVyIHJldi1wYXJzZSBIRUFEKSAmJgorCWJsb2I9JChnaXQgaGFzaC1vYmplY3Qgc2VydmVyL29uZS50KSAmJgorCWdpdCAtQyBjbGllbnQgcmV2LWxpc3QgLS1vYmplY3RzIC0tbWlzc2luZz1hbGxvdy1hbnkgIiRjb21taXQiID5vaWRzICYmCisJISBncmVwICIkYmxvYiIgb2lkcwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmaWx0ZXJpbmcgYnkgc2l6ZSBoYXMgbm8gZWZmZWN0IGlmIHN1cHBvcnQgZm9yIGl0IGlzIG5vdCBhZHZlcnRpc2VkJyAnCkBAIC04NzIsNyArOTMzLDEwIEBACiAJZ2l0IC1DIGNsaWVudCBmZXRjaC1wYWNrIC0tZmlsdGVyPWJsb2I6bGltaXQ9MCAuLi9zZXJ2ZXIgSEVBRCAyPiBlcnIgJiYKIAogCSMgRW5zdXJlIHRoYXQgb2JqZWN0IGlzIGZldGNoZWQKLQlnaXQgLUMgY2xpZW50IGNhdC1maWxlIC1lICQoZ2l0IGhhc2gtb2JqZWN0IHNlcnZlci9vbmUudCkgJiYKKwljb21taXQ9JChnaXQgLUMgc2VydmVyIHJldi1wYXJzZSBIRUFEKSAmJgorCWJsb2I9JChnaXQgaGFzaC1vYmplY3Qgc2VydmVyL29uZS50KSAmJgorCWdpdCAtQyBjbGllbnQgcmV2LWxpc3QgLS1vYmplY3RzIC0tbWlzc2luZz1hbGxvdy1hbnkgIiRjb21taXQiID5vaWRzICYmCisJZ3JlcCAiJGJsb2IiIG9pZHMgJiYKIAogCXRlc3RfaTE4bmdyZXAgImZpbHRlcmluZyBub3QgcmVjb2duaXplZCBieSBzZXJ2ZXIiIGVycgogJwpAQCAtODk0LDkgKzk1OCwxMSBAQAogCWdpdCAtQyBjbGllbnQgZmV0Y2ggLS1maWx0ZXI9YmxvYjpsaW1pdD0wIG9yaWdpbiBIRUFEOnNvbWV3aGVyZSAmJgogCiAJIyBFbnN1cmUgdGhhdCBjb21taXQgaXMgZmV0Y2hlZCwgYnV0IGJsb2IgaXMgbm90Ci0JdGVzdF9jb25maWcgLUMgY2xpZW50IGV4dGVuc2lvbnMucGFydGlhbGNsb25lICJhcmJpdHJhcnkgc3RyaW5nIiAmJgotCWdpdCAtQyBjbGllbnQgY2F0LWZpbGUgLWUgJChnaXQgLUMgIiRTRVJWRVIiIHJldi1wYXJzZSB0d28pICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IC1DIGNsaWVudCBjYXQtZmlsZSAtZSAkKGdpdCBoYXNoLW9iamVjdCAiJFNFUlZFUi90d28udCIpCisJY29tbWl0PSQoZ2l0IC1DICIkU0VSVkVSIiByZXYtcGFyc2UgdHdvKSAmJgorCWJsb2I9JChnaXQgaGFzaC1vYmplY3Qgc2VydmVyL3R3by50KSAmJgorCWdpdCAtQyBjbGllbnQgcmV2LWxpc3QgLS1vYmplY3RzIC0tbWlzc2luZz1hbGxvdy1hbnkgIiRjb21taXQiID5vaWRzICYmCisJZ3JlcCAiJGNvbW1pdCIgb2lkcyAmJgorCSEgZ3JlcCAiJGJsb2IiIG9pZHMKIH0KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2ggd2l0aCAtLWZpbHRlcj1ibG9iOmxpbWl0PTAnICcKQEAgLTkxMCw3ICs5NzYsNyBAQAogCWZldGNoX2ZpbHRlcl9ibG9iX2xpbWl0X3plcm8gIiRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgvc2VydmVyIiAiJEhUVFBEX1VSTC9zbWFydC9zZXJ2ZXIiCiAnCiAKLXN0b3BfaHR0cGQKLQorIyBETyBOT1QgYWRkIG5vbi1odHRwZC1zcGVjaWZpYyB0ZXN0cyBoZXJlLCBiZWNhdXNlIHRoZSBsYXN0IHBhcnQgb2YgdGhpcworIyB0ZXN0IHNjcmlwdCBpcyBvbmx5IGV4ZWN1dGVkIHdoZW4gaHR0cGQgaXMgYXZhaWxhYmxlIGFuZCBlbmFibGVkLgogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU1MDMtdGFnZm9sbG93LnNoIGIvdC90NTUwMy10YWdmb2xsb3cuc2gKaW5kZXggNGNhNDhmMC4uNjA0MWE0ZCAxMDA3NTUKLS0tIGEvdC90NTUwMy10YWdmb2xsb3cuc2gKKysrIGIvdC90NTUwMy10YWdmb2xsb3cuc2gKQEAgLTQ3LDcgKzQ3LDcgQEAKIAl0ZXN0IC1zICIkMSIgJiYKIAlwZXJsIC1hbG5lICcKIAkJbmV4dCB1bmxlc3MgJEZbMV0gZXEgInVwbG9hZC1wYWNrPCI7Ci0JCWxhc3QgaWYgJEZbMl0gZXEgIjAwMDAiOworCQluZXh0IHVubGVzcyAkRlsyXSBlcSAid2FudCI7CiAJCXByaW50ICRGWzJdLCAiICIsICRGWzNdOwogCScgIiQxIgogfQpkaWZmIC0tZ2l0IGEvdC90NTUwNC1mZXRjaC1yZWNlaXZlLXN0cmljdC5zaCBiL3QvdDU1MDQtZmV0Y2gtcmVjZWl2ZS1zdHJpY3Quc2gKaW5kZXggN2JjNzA2OC4uNjQ1YjRjNyAxMDA3NTUKLS0tIGEvdC90NTUwNC1mZXRjaC1yZWNlaXZlLXN0cmljdC5zaAorKysgYi90L3Q1NTA0LWZldGNoLXJlY2VpdmUtc3RyaWN0LnNoCkBAIC00LDYgKzQsNyBAQAogLiAuL3Rlc3QtbGliLnNoCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIGFuZCBpbmplY3QgImNvcnJ1cHQgb3IgbWlzc2luZyIgb2JqZWN0JyAnCisJdGVzdF9vaWRfaW5pdCAmJgogCWVjaG8gaGVsbG8gPmdyZWV0aW5ncyAmJgogCWdpdCBhZGQgZ3JlZXRpbmdzICYmCiAJZ2l0IGNvbW1pdCAtbSBncmVldGluZ3MgJiYKQEAgLTE0NCwxMSArMTQ1LDExIEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHNvcnRlZCBhbmQgdW5zb3J0ZWQgc2tpcExpc3RzJyAnCiAJY2F0ID5TS0lQLnVuc29ydGVkIDw8LUVPRiAmJgotCTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDQKLQkwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyCisJJCh0ZXN0X29pZCAwMDQpCisJJCh0ZXN0X29pZCAwMDIpCiAJJGNvbW1pdAotCTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDEKLQkwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzCisJJCh0ZXN0X29pZCAwMDEpCisJJCh0ZXN0X29pZCAwMDMpCiAJRU9GCiAJc29ydCBTS0lQLnVuc29ydGVkID5TS0lQLnNvcnRlZAogJwpAQCAtMTY0LDIyICsxNjUsMjIgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZzY2sgd2l0aCBpbnZhbGlkIG9yIGJvZ3VzIHNraXBMaXN0IGlucHV0JyAnCiAJZ2l0IC1jIGZzY2suc2tpcExpc3Q9L2Rldi9udWxsIC1jIGZzY2subWlzc2luZ0VtYWlsPWlnbm9yZSBmc2NrICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIGZzY2suc2tpcExpc3Q9ZG9lcy1ub3QtZXhpc3QgLWMgZnNjay5taXNzaW5nRW1haWw9aWdub3JlIGZzY2sgMj5lcnIgJiYKLQl0ZXN0X2kxOG5ncmVwICJDb3VsZCBub3Qgb3BlbiBza2lwIGxpc3Q6IGRvZXMtbm90LWV4aXN0IiBlcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJjb3VsZCBub3Qgb3Blbi4qOiBkb2VzLW5vdC1leGlzdCIgZXJyICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIGZzY2suc2tpcExpc3Q9LmdpdC9jb25maWcgLWMgZnNjay5taXNzaW5nRW1haWw9aWdub3JlIGZzY2sgMj5lcnIgJiYKLQl0ZXN0X2kxOG5ncmVwICJJbnZhbGlkIFNIQS0xOiBcW2NvcmVcXSIgZXJyCisJdGVzdF9pMThuZ3JlcCAiaW52YWxpZCBvYmplY3QgbmFtZTogXFtjb3JlXF0iIGVycgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmc2NrIHdpdGggb3RoZXIgYWNjZXB0ZWQgc2tpcExpc3QgaW5wdXQgKGNvbW1lbnRzICYgZW1wdHkgbGluZXMpJyAnCiAJY2F0ID5TS0lQLndpdGgtY29tbWVudCA8PC1FT0YgJiYKIAkjIFNvbWUgYmFkIGNvbW1pdAotCTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDEKKwkkKHRlc3Rfb2lkIDAwMSkKIAlFT0YKIAl0ZXN0X211c3RfZmFpbCBnaXQgLWMgZnNjay5za2lwTGlzdD1TS0lQLndpdGgtY29tbWVudCBmc2NrIDI+ZXJyLXdpdGgtY29tbWVudCAmJgogCXRlc3RfaTE4bmdyZXAgIm1pc3NpbmdFbWFpbCIgZXJyLXdpdGgtY29tbWVudCAmJgogCWNhdCA+U0tJUC53aXRoLWVtcHR5LWxpbmUgPDwtRU9GICYmCi0JMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMQorCSQodGVzdF9vaWQgMDAxKQogCi0JMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMgorCSQodGVzdF9vaWQgMDAyKQogCUVPRgogCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBmc2NrLnNraXBMaXN0PVNLSVAud2l0aC1lbXB0eS1saW5lIGZzY2sgMj5lcnItd2l0aC1lbXB0eS1saW5lICYmCiAJdGVzdF9pMThuZ3JlcCAibWlzc2luZ0VtYWlsIiBlcnItd2l0aC1lbXB0eS1saW5lCkBAIC0xOTMsNyArMTk0LDcgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZzY2sgd2l0aCBpbnZhbGlkIGFiYnJldmlhdGVkIHNraXBMaXN0IGlucHV0JyAnCiAJZWNobyAkY29tbWl0IHwgdGVzdF9jb3B5X2J5dGVzIDIwID5TS0lQLmFiYnJldmlhdGVkICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIGZzY2suc2tpcExpc3Q9U0tJUC5hYmJyZXZpYXRlZCBmc2NrIDI+ZXJyLWFiYnJldmlhdGVkICYmCi0JdGVzdF9pMThuZ3JlcCAiXmZhdGFsOiBJbnZhbGlkIFNIQS0xOiAiIGVyci1hYmJyZXZpYXRlZAorCXRlc3RfaTE4bmdyZXAgIl5mYXRhbDogaW52YWxpZCBvYmplY3QgbmFtZTogIiBlcnItYWJicmV2aWF0ZWQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZnNjayB3aXRoIGV4aGF1c3RpdmUgYWNjZXB0ZWQgc2tpcExpc3QgaW5wdXQgKHZhcmlvdXMgdHlwZXMgb2YgY29tbWVudHMgZXRjLiknICcKQEAgLTIwNCw3ICsyMDUsNyBAQAogCWVjaG8gIiAjIENvbW1lbnQgYWZ0ZXIgd2hpdGVzcGFjZSIgPj5TS0lQLmV4aGF1c3RpdmUgJiYKIAllY2hvICIkY29tbWl0ICMgT3VyIGJhZCBjb21taXQgKHdpdGggbGVhZGluZyB3aGl0ZXNwYWNlIGFuZCB0cmFpbGluZyBjb21tZW50KSIgPj5TS0lQLmV4aGF1c3RpdmUgJiYKIAllY2hvICIjIFNvbWUgYmFkIGNvbW1pdCAobGVhZGluZyB3aGl0ZXNwYWNlKSIgPj5TS0lQLmV4aGF1c3RpdmUgJiYKLQllY2hvICIgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDEiID4+U0tJUC5leGhhdXN0aXZlICYmCisJZWNobyAiICAkKHRlc3Rfb2lkIDAwMSkiID4+U0tJUC5leGhhdXN0aXZlICYmCiAJZ2l0IC1jIGZzY2suc2tpcExpc3Q9U0tJUC5leGhhdXN0aXZlIGZzY2sgMj5lcnIgJiYKIAl0ZXN0X211c3RfYmVfZW1wdHkgZXJyCiAnCkBAIC0yMjYsMTAgKzIyNywxMCBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCBwdXNoIC0tcG9yY2VsYWluIGRzdCBib2d1cyAmJgogCWdpdCAtLWdpdC1kaXI9ZHN0Ly5naXQgY29uZmlnIHJlY2VpdmUuZnNjay5za2lwTGlzdCBkb2VzLW5vdC1leGlzdCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBwdXNoIC0tcG9yY2VsYWluIGRzdCBib2d1cyAyPmVyciAmJgotCXRlc3RfaTE4bmdyZXAgIkNvdWxkIG5vdCBvcGVuIHNraXAgbGlzdDogZG9lcy1ub3QtZXhpc3QiIGVyciAmJgorCXRlc3RfaTE4bmdyZXAgImNvdWxkIG5vdCBvcGVuLio6IGRvZXMtbm90LWV4aXN0IiBlcnIgJiYKIAlnaXQgLS1naXQtZGlyPWRzdC8uZ2l0IGNvbmZpZyByZWNlaXZlLmZzY2suc2tpcExpc3QgY29uZmlnICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHB1c2ggLS1wb3JjZWxhaW4gZHN0IGJvZ3VzIDI+ZXJyICYmCi0JdGVzdF9pMThuZ3JlcCAiSW52YWxpZCBTSEEtMTogXFtjb3JlXF0iIGVyciAmJgorCXRlc3RfaTE4bmdyZXAgImludmFsaWQgb2JqZWN0IG5hbWU6IFxbY29yZVxdIiBlcnIgJiYKIAogCWdpdCAtLWdpdC1kaXI9ZHN0Ly5naXQgY29uZmlnIHJlY2VpdmUuZnNjay5za2lwTGlzdCBTS0lQICYmCiAJZ2l0IHB1c2ggLS1wb3JjZWxhaW4gZHN0IGJvZ3VzCkBAIC0yNTUsMTAgKzI1NiwxMCBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCAtLWdpdC1kaXI9ZHN0Ly5naXQgZmV0Y2ggImZpbGU6Ly8kKHB3ZCkiICRyZWZzcGVjICYmCiAJZ2l0IC0tZ2l0LWRpcj1kc3QvLmdpdCBjb25maWcgZmV0Y2guZnNjay5za2lwTGlzdCBkb2VzLW5vdC1leGlzdCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCAtLWdpdC1kaXI9ZHN0Ly5naXQgZmV0Y2ggImZpbGU6Ly8kKHB3ZCkiICRyZWZzcGVjIDI+ZXJyICYmCi0JdGVzdF9pMThuZ3JlcCAiQ291bGQgbm90IG9wZW4gc2tpcCBsaXN0OiBkb2VzLW5vdC1leGlzdCIgZXJyICYmCisJdGVzdF9pMThuZ3JlcCAiY291bGQgbm90IG9wZW4uKjogZG9lcy1ub3QtZXhpc3QiIGVyciAmJgogCWdpdCAtLWdpdC1kaXI9ZHN0Ly5naXQgY29uZmlnIGZldGNoLmZzY2suc2tpcExpc3QgZHN0Ly5naXQvY29uZmlnICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IC0tZ2l0LWRpcj1kc3QvLmdpdCBmZXRjaCAiZmlsZTovLyQocHdkKSIgJHJlZnNwZWMgMj5lcnIgJiYKLQl0ZXN0X2kxOG5ncmVwICJJbnZhbGlkIFNIQS0xOiBcW2NvcmVcXSIgZXJyICYmCisJdGVzdF9pMThuZ3JlcCAiaW52YWxpZCBvYmplY3QgbmFtZTogXFtjb3JlXF0iIGVyciAmJgogCiAJZ2l0IC0tZ2l0LWRpcj1kc3QvLmdpdCBjb25maWcgZmV0Y2guZnNjay5za2lwTGlzdCBkc3QvLmdpdC9TS0lQICYmCiAJZ2l0IC0tZ2l0LWRpcj1kc3QvLmdpdCBmZXRjaCAiZmlsZTovLyQocHdkKSIgJHJlZnNwZWMKZGlmZiAtLWdpdCBhL3QvdDU1MDUtcmVtb3RlLnNoIGIvdC90NTUwNS1yZW1vdGUuc2gKaW5kZXggZDJhMmNkZC4uZGRhODFiNyAxMDA3NTUKLS0tIGEvdC90NTUwNS1yZW1vdGUuc2gKKysrIGIvdC90NTUwNS1yZW1vdGUuc2gKQEAgLTczNCwxNSArNzM0LDUzIEBACiAjIHRoZSBsYXN0IHR3byBvbmVzIGNoZWNrIGlmIHRoZSBjb25maWcgaXMgdXBkYXRlZC4KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVuYW1lIGEgcmVtb3RlJyAnCisJdGVzdF9jb25maWdfZ2xvYmFsIHJlbW90ZS5wdXNoRGVmYXVsdCBvcmlnaW4gJiYKIAlnaXQgY2xvbmUgb25lIGZvdXIgJiYKIAkoCiAJCWNkIGZvdXIgJiYKKwkJZ2l0IGNvbmZpZyBicmFuY2gubWFzdGVyLnB1c2hSZW1vdGUgb3JpZ2luICYmCiAJCWdpdCByZW1vdGUgcmVuYW1lIG9yaWdpbiB1cHN0cmVhbSAmJgogCQl0ZXN0IC16ICIkKGdpdCBmb3ItZWFjaC1yZWYgcmVmcy9yZW1vdGVzL29yaWdpbikiICYmCiAJCXRlc3QgIiQoZ2l0IHN5bWJvbGljLXJlZiByZWZzL3JlbW90ZXMvdXBzdHJlYW0vSEVBRCkiID0gInJlZnMvcmVtb3Rlcy91cHN0cmVhbS9tYXN0ZXIiICYmCiAJCXRlc3QgIiQoZ2l0IHJldi1wYXJzZSB1cHN0cmVhbS9tYXN0ZXIpIiA9ICIkKGdpdCByZXYtcGFyc2UgbWFzdGVyKSIgJiYKIAkJdGVzdCAiJChnaXQgY29uZmlnIHJlbW90ZS51cHN0cmVhbS5mZXRjaCkiID0gIityZWZzL2hlYWRzLyo6cmVmcy9yZW1vdGVzL3Vwc3RyZWFtLyoiICYmCi0JCXRlc3QgIiQoZ2l0IGNvbmZpZyBicmFuY2gubWFzdGVyLnJlbW90ZSkiID0gInVwc3RyZWFtIgorCQl0ZXN0ICIkKGdpdCBjb25maWcgYnJhbmNoLm1hc3Rlci5yZW1vdGUpIiA9ICJ1cHN0cmVhbSIgJiYKKwkJdGVzdCAiJChnaXQgY29uZmlnIGJyYW5jaC5tYXN0ZXIucHVzaFJlbW90ZSkiID0gInVwc3RyZWFtIiAmJgorCQl0ZXN0ICIkKGdpdCBjb25maWcgLS1nbG9iYWwgcmVtb3RlLnB1c2hEZWZhdWx0KSIgPSAib3JpZ2luIgorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVuYW1lIGEgcmVtb3RlIHJlbmFtZXMgcmVwbyByZW1vdGUucHVzaERlZmF1bHQnICcKKwlnaXQgY2xvbmUgb25lIGZvdXIuMSAmJgorCSgKKwkJY2QgZm91ci4xICYmCisJCWdpdCBjb25maWcgcmVtb3RlLnB1c2hEZWZhdWx0IG9yaWdpbiAmJgorCQlnaXQgcmVtb3RlIHJlbmFtZSBvcmlnaW4gdXBzdHJlYW0gJiYKKwkJdGVzdCAiJChnaXQgY29uZmlnIC0tbG9jYWwgcmVtb3RlLnB1c2hEZWZhdWx0KSIgPSAidXBzdHJlYW0iCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZW5hbWUgYSByZW1vdGUgcmVuYW1lcyByZXBvIHJlbW90ZS5wdXNoRGVmYXVsdCBidXQgaWdub3JlcyBnbG9iYWwnICcKKwl0ZXN0X2NvbmZpZ19nbG9iYWwgcmVtb3RlLnB1c2hEZWZhdWx0IG90aGVyICYmCisJZ2l0IGNsb25lIG9uZSBmb3VyLjIgJiYKKwkoCisJCWNkIGZvdXIuMiAmJgorCQlnaXQgY29uZmlnIHJlbW90ZS5wdXNoRGVmYXVsdCBvcmlnaW4gJiYKKwkJZ2l0IHJlbW90ZSByZW5hbWUgb3JpZ2luIHVwc3RyZWFtICYmCisJCXRlc3QgIiQoZ2l0IGNvbmZpZyAtLWdsb2JhbCByZW1vdGUucHVzaERlZmF1bHQpIiA9ICJvdGhlciIgJiYKKwkJdGVzdCAiJChnaXQgY29uZmlnIC0tbG9jYWwgcmVtb3RlLnB1c2hEZWZhdWx0KSIgPSAidXBzdHJlYW0iCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZW5hbWUgYSByZW1vdGUgcmVuYW1lcyByZXBvIHJlbW90ZS5wdXNoRGVmYXVsdCBidXQga2VlcHMgZ2xvYmFsJyAnCisJdGVzdF9jb25maWdfZ2xvYmFsIHJlbW90ZS5wdXNoRGVmYXVsdCBvcmlnaW4gJiYKKwlnaXQgY2xvbmUgb25lIGZvdXIuMyAmJgorCSgKKwkJY2QgZm91ci4zICYmCisJCWdpdCBjb25maWcgcmVtb3RlLnB1c2hEZWZhdWx0IG9yaWdpbiAmJgorCQlnaXQgcmVtb3RlIHJlbmFtZSBvcmlnaW4gdXBzdHJlYW0gJiYKKwkJdGVzdCAiJChnaXQgY29uZmlnIC0tZ2xvYmFsIHJlbW90ZS5wdXNoRGVmYXVsdCkiID0gIm9yaWdpbiIgJiYKKwkJdGVzdCAiJChnaXQgY29uZmlnIC0tbG9jYWwgcmVtb3RlLnB1c2hEZWZhdWx0KSIgPSAidXBzdHJlYW0iCiAJKQogJwogCkBAIC03ODQsNiArODIyLDU0IEBACiAJZ2l0IC1DIGZvdXIuZm91ciByZW1vdGUgcmVuYW1lIG9yaWdpbiB1cHN0cmVhbQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZW1vdmUgYSByZW1vdGUnICcKKwl0ZXN0X2NvbmZpZ19nbG9iYWwgcmVtb3RlLnB1c2hEZWZhdWx0IG9yaWdpbiAmJgorCWdpdCBjbG9uZSBvbmUgZm91ci5maXZlICYmCisJKAorCQljZCBmb3VyLmZpdmUgJiYKKwkJZ2l0IGNvbmZpZyBicmFuY2gubWFzdGVyLnB1c2hSZW1vdGUgb3JpZ2luICYmCisJCWdpdCByZW1vdGUgcmVtb3ZlIG9yaWdpbiAmJgorCQl0ZXN0IC16ICIkKGdpdCBmb3ItZWFjaC1yZWYgcmVmcy9yZW1vdGVzL29yaWdpbikiICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBjb25maWcgYnJhbmNoLm1hc3Rlci5yZW1vdGUgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbmZpZyBicmFuY2gubWFzdGVyLnB1c2hSZW1vdGUgJiYKKwkJdGVzdCAiJChnaXQgY29uZmlnIC0tZ2xvYmFsIHJlbW90ZS5wdXNoRGVmYXVsdCkiID0gIm9yaWdpbiIKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlbW92ZSBhIHJlbW90ZSByZW1vdmVzIHJlcG8gcmVtb3RlLnB1c2hEZWZhdWx0JyAnCisJZ2l0IGNsb25lIG9uZSBmb3VyLmZpdmUuMSAmJgorCSgKKwkJY2QgZm91ci5maXZlLjEgJiYKKwkJZ2l0IGNvbmZpZyByZW1vdGUucHVzaERlZmF1bHQgb3JpZ2luICYmCisJCWdpdCByZW1vdGUgcmVtb3ZlIG9yaWdpbiAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgY29uZmlnIC0tbG9jYWwgcmVtb3RlLnB1c2hEZWZhdWx0CisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZW1vdmUgYSByZW1vdGUgcmVtb3ZlcyByZXBvIHJlbW90ZS5wdXNoRGVmYXVsdCBidXQgaWdub3JlcyBnbG9iYWwnICcKKwl0ZXN0X2NvbmZpZ19nbG9iYWwgcmVtb3RlLnB1c2hEZWZhdWx0IG90aGVyICYmCisJZ2l0IGNsb25lIG9uZSBmb3VyLmZpdmUuMiAmJgorCSgKKwkJY2QgZm91ci5maXZlLjIgJiYKKwkJZ2l0IGNvbmZpZyByZW1vdGUucHVzaERlZmF1bHQgb3JpZ2luICYmCisJCWdpdCByZW1vdGUgcmVtb3ZlIG9yaWdpbiAmJgorCQl0ZXN0ICIkKGdpdCBjb25maWcgLS1nbG9iYWwgcmVtb3RlLnB1c2hEZWZhdWx0KSIgPSAib3RoZXIiICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBjb25maWcgLS1sb2NhbCByZW1vdGUucHVzaERlZmF1bHQKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlbW92ZSBhIHJlbW90ZSByZW1vdmVzIHJlcG8gcmVtb3RlLnB1c2hEZWZhdWx0IGJ1dCBrZWVwcyBnbG9iYWwnICcKKwl0ZXN0X2NvbmZpZ19nbG9iYWwgcmVtb3RlLnB1c2hEZWZhdWx0IG9yaWdpbiAmJgorCWdpdCBjbG9uZSBvbmUgZm91ci5maXZlLjMgJiYKKwkoCisJCWNkIGZvdXIuZml2ZS4zICYmCisJCWdpdCBjb25maWcgcmVtb3RlLnB1c2hEZWZhdWx0IG9yaWdpbiAmJgorCQlnaXQgcmVtb3RlIHJlbW92ZSBvcmlnaW4gJiYKKwkJdGVzdCAiJChnaXQgY29uZmlnIC0tZ2xvYmFsIHJlbW90ZS5wdXNoRGVmYXVsdCkiID0gIm9yaWdpbiIgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbmZpZyAtLWxvY2FsIHJlbW90ZS5wdXNoRGVmYXVsdAorCSkKKycKKwogY2F0ID5yZW1vdGVzX29yaWdpbiA8PEVPRgogVVJMOiAkKHB3ZCkvb25lCiBQdXNoOiByZWZzL2hlYWRzL21hc3RlcjpyZWZzL2hlYWRzL3Vwc3RyZWFtCkBAIC0xMjIyLDQgKzEzMDgsNTkgQEAKIAlnaXQgcmVtb3RlIGFkZCBiYWNrdXAgeHl6QGV4YW1wbGUuY29tCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3VucXVhbGlmaWVkIDxkc3Q+IHJlZnNwZWMgRFdJTSBhbmQgYWR2aWNlJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICIoY2QgdGVzdCAmJiBnaXQgdGFnIC1kIHNvbWUtdGFnKSIgJiYKKwkoCisJCWNkIHRlc3QgJiYKKwkJZ2l0IHRhZyAtYSAtbSAiU29tZSB0YWciIHNvbWUtdGFnIG1hc3RlciAmJgorCQlleGl0X3dpdGg9dHJ1ZSAmJgorCQlmb3IgdHlwZSBpbiBjb21taXQgdGFnIHRyZWUgYmxvYgorCQlkbworCQkJaWYgdGVzdCAiJHR5cGUiID0gImJsb2IiCisJCQl0aGVuCisJCQkJb2lkPSQoZ2l0IHJldi1wYXJzZSBzb21lLXRhZzpmaWxlKQorCQkJZWxzZQorCQkJCW9pZD0kKGdpdCByZXYtcGFyc2Ugc29tZS10YWdeeyR0eXBlfSkKKwkJCWZpICYmCisJCQl0ZXN0X211c3RfZmFpbCBnaXQgcHVzaCBvcmlnaW4gJG9pZDpkc3QgMj5lcnIgJiYKKwkJCXRlc3RfaTE4bmdyZXAgImVycm9yOiBUaGUgZGVzdGluYXRpb24geW91IiBlcnIgJiYKKwkJCXRlc3RfaTE4bmdyZXAgImhpbnQ6IERpZCB5b3UgbWVhbiIgZXJyICYmCisJCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgYWR2aWNlLnB1c2hVbnF1YWxpZmllZFJlZk5hbWU9ZmFsc2UgXAorCQkJCXB1c2ggb3JpZ2luICRvaWQ6ZHN0IDI+ZXJyICYmCisJCQl0ZXN0X2kxOG5ncmVwICJlcnJvcjogVGhlIGRlc3RpbmF0aW9uIHlvdSIgZXJyICYmCisJCQl0ZXN0X2kxOG5ncmVwICEgImhpbnQ6IERpZCB5b3UgbWVhbiIgZXJyIHx8CisJCQlleGl0X3dpdGg9ZmFsc2UKKwkJZG9uZSAmJgorCQkkZXhpdF93aXRoCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWZzL3JlbW90ZXMvKiA8c3JjPiByZWZzcGVjIGFuZCB1bnF1YWxpZmllZCA8ZHN0PiBEV0lNIGFuZCBhZHZpY2UnICcKKwkoCisJCWNkIHR3byAmJgorCQlnaXQgdGFnIC1hIC1tICJTb21lIHRhZyIgbXktdGFnIG1hc3RlciAmJgorCQlnaXQgdXBkYXRlLXJlZiByZWZzL3RyZWVzL215LWhlYWQtdHJlZSBIRUFEXnt0cmVlfSAmJgorCQlnaXQgdXBkYXRlLXJlZiByZWZzL2Jsb2JzL215LWZpbGUtYmxvYiBIRUFEOmZpbGUKKwkpICYmCisJKAorCQljZCB0ZXN0ICYmCisJCWdpdCBjb25maWcgLS1hZGQgcmVtb3RlLnR3by5mZXRjaCAiK3JlZnMvdGFncy8qOnJlZnMvcmVtb3Rlcy90YWdzLWZyb20tdHdvLyoiICYmCisJCWdpdCBjb25maWcgLS1hZGQgcmVtb3RlLnR3by5mZXRjaCAiK3JlZnMvdHJlZXMvKjpyZWZzL3JlbW90ZXMvdHJlZXMtZnJvbS10d28vKiIgJiYKKwkJZ2l0IGNvbmZpZyAtLWFkZCByZW1vdGUudHdvLmZldGNoICIrcmVmcy9ibG9icy8qOnJlZnMvcmVtb3Rlcy9ibG9icy1mcm9tLXR3by8qIiAmJgorCQlnaXQgZmV0Y2ggLS1uby10YWdzIHR3byAmJgorCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBwdXNoIG9yaWdpbiByZWZzL3JlbW90ZXMvdHdvL2Fub3RoZXI6ZHN0IDI+ZXJyICYmCisJCXRlc3RfaTE4bmdyZXAgImVycm9yOiBUaGUgZGVzdGluYXRpb24geW91IiBlcnIgJiYKKworCQl0ZXN0X211c3RfZmFpbCBnaXQgcHVzaCBvcmlnaW4gcmVmcy9yZW1vdGVzL3RhZ3MtZnJvbS10d28vbXktdGFnOmRzdC10YWcgMj5lcnIgJiYKKwkJdGVzdF9pMThuZ3JlcCAiZXJyb3I6IFRoZSBkZXN0aW5hdGlvbiB5b3UiIGVyciAmJgorCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBwdXNoIG9yaWdpbiByZWZzL3JlbW90ZXMvdHJlZXMtZnJvbS10d28vbXktaGVhZC10cmVlOmRzdC10cmVlIDI+ZXJyICYmCisJCXRlc3RfaTE4bmdyZXAgImVycm9yOiBUaGUgZGVzdGluYXRpb24geW91IiBlcnIgJiYKKworCQl0ZXN0X211c3RfZmFpbCBnaXQgcHVzaCBvcmlnaW4gcmVmcy9yZW1vdGVzL2Jsb2JzLWZyb20tdHdvL215LWZpbGUtYmxvYjpkc3QtYmxvYiAyPmVyciAmJgorCQl0ZXN0X2kxOG5ncmVwICJlcnJvcjogVGhlIGRlc3RpbmF0aW9uIHlvdSIgZXJyCisJKQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU1MDktZmV0Y2gtcHVzaC1uYW1lc3BhY2VzLnNoIGIvdC90NTUwOS1mZXRjaC1wdXNoLW5hbWVzcGFjZXMuc2gKaW5kZXggYzg4ZGY3OC4uYTY3Zjc5MiAxMDA3NTUKLS0tIGEvdC90NTUwOS1mZXRjaC1wdXNoLW5hbWVzcGFjZXMuc2gKKysrIGIvdC90NTUwOS1mZXRjaC1wdXNoLW5hbWVzcGFjZXMuc2gKQEAgLTIwLDcgKzIwLDcgQEAKIAkpICYmCiAJY29tbWl0MD0kKGNkIG9yaWdpbmFsICYmIGdpdCByZXYtcGFyc2UgSEVBRF4pICYmCiAJY29tbWl0MT0kKGNkIG9yaWdpbmFsICYmIGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKLQlnaXQgaW5pdCBwdXNoZWUgJiYKKwlnaXQgaW5pdCAtLWJhcmUgcHVzaGVlICYmCiAJZ2l0IGluaXQgcHVsbGVyCiAnCiAKQEAgLTEyNCw0ICsxMjQsNDMgQEAKIAl0ZXN0X211c3RfZmFpbCBnaXQgLUMgb3JpZ2luYWwgcHVzaCBwdXNoZWUtbmFtZXNwYWNlZCBtYXN0ZXIKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0IHVwIGFtYmlndW91cyBIRUFEJyAnCisJZ2l0IGluaXQgYW1iaWd1b3VzICYmCisJKAorCQljZCBhbWJpZ3VvdXMgJiYKKwkJZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5IC1tIGZvbyAmJgorCQlnaXQgdXBkYXRlLXJlZiByZWZzL25hbWVzcGFjZXMvbnMvcmVmcy9oZWFkcy9vbmUgSEVBRCAmJgorCQlnaXQgdXBkYXRlLXJlZiByZWZzL25hbWVzcGFjZXMvbnMvcmVmcy9oZWFkcy90d28gSEVBRCAmJgorCQlnaXQgc3ltYm9saWMtcmVmIHJlZnMvbmFtZXNwYWNlcy9ucy9IRUFEIFwKKwkJCXJlZnMvbmFtZXNwYWNlcy9ucy9yZWZzL2hlYWRzL3R3bworCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xvbmUgY2hvb3NlcyBjb3JyZWN0IEhFQUQgKHYwKScgJworCUdJVF9OQU1FU1BBQ0U9bnMgZ2l0IC1jIHByb3RvY29sLnZlcnNpb249MCBcCisJCWNsb25lIGFtYmlndW91cyBhbWJpZ3VvdXMtdjAgJiYKKwllY2hvIHJlZnMvaGVhZHMvdHdvID5leHBlY3QgJiYKKwlnaXQgLUMgYW1iaWd1b3VzLXYwIHN5bWJvbGljLXJlZiBIRUFEID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Nsb25lIGNob29zZXMgY29ycmVjdCBIRUFEICh2MiknICcKKwlHSVRfTkFNRVNQQUNFPW5zIGdpdCAtYyBwcm90b2NvbC52ZXJzaW9uPTIgXAorCQljbG9uZSBhbWJpZ3VvdXMgYW1iaWd1b3VzLXYyICYmCisJZWNobyByZWZzL2hlYWRzL3R3byA+ZXhwZWN0ICYmCisJZ2l0IC1DIGFtYmlndW91cy12MiBzeW1ib2xpYy1yZWYgSEVBRCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZW55Q3VycmVudEJyYW5jaCBhbmQgdW5ib3JuIGJyYW5jaCB3aXRoIHJlZiBuYW1lc3BhY2UnICcKKwkoCisJCWNkIG9yaWdpbmFsICYmCisJCWdpdCBpbml0IHVuYm9ybiAmJgorCQlnaXQgcmVtb3RlIGFkZCB1bmJvcm4tbmFtZXNwYWNlZCAiZXh0OjpnaXQgLS1uYW1lc3BhY2U9bmFtZXNwYWNlICVzIHVuYm9ybiIgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHB1c2ggdW5ib3JuLW5hbWVzcGFjZWQgSEVBRDptYXN0ZXIgJiYKKwkJZ2l0IC1DIHVuYm9ybiBjb25maWcgcmVjZWl2ZS5kZW55Q3VycmVudEJyYW5jaCB1cGRhdGVJbnN0ZWFkICYmCisJCWdpdCBwdXNoIHVuYm9ybi1uYW1lc3BhY2VkIEhFQUQ6bWFzdGVyCisJKQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU1MTAtZmV0Y2guc2ggYi90L3Q1NTEwLWZldGNoLnNoCmluZGV4IDNiN2IzMDUuLmE2NmRiZTAgMTAwNzU1Ci0tLSBhL3QvdDU1MTAtZmV0Y2guc2gKKysrIGIvdC90NTUxMC1mZXRjaC5zaApAQCAtMTEsNyArMTEsNyBAQAogCiB0ZXN0X2J1bmRsZV9vYmplY3RfY291bnQgKCkgewogCWdpdCB2ZXJpZnktcGFjayAtdiAiJDEiID52ZXJpZnkub3V0ICYmCi0JdGVzdCAiJDIiID0gJChncmVwICdeWzAtOWEtZl1cezQwXH0gJyB2ZXJpZnkub3V0IHwgd2MgLWwpCisJdGVzdCAiJDIiID0gJChncmVwICJeJE9JRF9SRUdFWCAiIHZlcmlmeS5vdXQgfCB3YyAtbCkKIH0KIAogY29udmVydF9idW5kbGVfdG9fcGFjayAoKSB7CkBAIC0xNzQsNiArMTc0LDMwIEBACiAJZ2l0IHJldi1wYXJzZSBzb21ldGFnCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcmVmbWFwPSIiIGlnbm9yZXMgY29uZmlndXJlZCByZWZzcGVjJyAnCisJY2QgIiRUUkFTSF9ESVJFQ1RPUlkiICYmCisJZ2l0IGNsb25lICIkRCIgcmVtb3RlLXJlZnMgJiYKKwlnaXQgLUMgcmVtb3RlLXJlZnMgcmV2LXBhcnNlIHJlbW90ZXMvb3JpZ2luL21hc3RlciA+b2xkICYmCisJZ2l0IC1DIHJlbW90ZS1yZWZzIHVwZGF0ZS1yZWYgcmVmcy9yZW1vdGVzL29yaWdpbi9tYXN0ZXIgbWFzdGVyfjEgJiYKKwlnaXQgLUMgcmVtb3RlLXJlZnMgcmV2LXBhcnNlIHJlbW90ZXMvb3JpZ2luL21hc3RlciA+bmV3ICYmCisJZ2l0IC1DIHJlbW90ZS1yZWZzIGZldGNoIC0tcmVmbWFwPSBvcmlnaW4gIityZWZzL2hlYWRzLyo6cmVmcy9oaWRkZW4vb3JpZ2luLyoiICYmCisJZ2l0IC1DIHJlbW90ZS1yZWZzIHJldi1wYXJzZSByZW1vdGVzL29yaWdpbi9tYXN0ZXIgPmFjdHVhbCAmJgorCXRlc3RfY21wIG5ldyBhY3R1YWwgJiYKKwlnaXQgLUMgcmVtb3RlLXJlZnMgZmV0Y2ggb3JpZ2luICYmCisJZ2l0IC1DIHJlbW90ZS1yZWZzIHJldi1wYXJzZSByZW1vdGVzL29yaWdpbi9tYXN0ZXIgPmFjdHVhbCAmJgorCXRlc3RfY21wIG9sZCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1yZWZtYXA9IiIgYW5kIC0tcHJ1bmUnICcKKwlnaXQgLUMgcmVtb3RlLXJlZnMgdXBkYXRlLXJlZiByZWZzL3JlbW90ZXMvb3JpZ2luL2Zvby9vdGhlcmJyYW5jaCBtYXN0ZXIgJiYKKwlnaXQgLUMgcmVtb3RlLXJlZnMgdXBkYXRlLXJlZiByZWZzL2hpZGRlbi9mb28vb3RoZXJicmFuY2ggbWFzdGVyICYmCisJZ2l0IC1DIHJlbW90ZS1yZWZzIGZldGNoIC0tcHJ1bmUgLS1yZWZtYXA9IiIgb3JpZ2luICtyZWZzL2hlYWRzLyo6cmVmcy9oaWRkZW4vKiAmJgorCWdpdCAtQyByZW1vdGUtcmVmcyByZXYtcGFyc2UgcmVtb3Rlcy9vcmlnaW4vZm9vL290aGVyYnJhbmNoICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1DIHJlbW90ZS1yZWZzIHJldi1wYXJzZSByZWZzL2hpZGRlbi9mb28vb3RoZXJicmFuY2ggJiYKKwlnaXQgLUMgcmVtb3RlLXJlZnMgZmV0Y2ggLS1wcnVuZSBvcmlnaW4gJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgLUMgcmVtb3RlLXJlZnMgcmV2LXBhcnNlIHJlbW90ZXMvb3JpZ2luL2Zvby9vdGhlcmJyYW5jaAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmZXRjaCB0YWdzIHdoZW4gdGhlcmUgaXMgbm8gdGFncycgJwogCiAgICAgY2QgIiREIiAmJgpAQCAtMjYxLDkgKzI4NSwxMCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdoZWFkZXIgb2YgYnVuZGxlIGxvb2tzIHJpZ2h0JyAnCisJaGVhZCAtbiA0ICIkRCIvYnVuZGxlMSAmJgogCWhlYWQgLW4gMSAiJEQiL2J1bmRsZTEgfCBncmVwICJeIyIgJiYKLQloZWFkIC1uIDIgIiREIi9idW5kbGUxIHwgZ3JlcCAiXi1bMC05YS1mXVx7NDBcfSAiICYmCi0JaGVhZCAtbiAzICIkRCIvYnVuZGxlMSB8IGdyZXAgIl5bMC05YS1mXVx7NDBcfSAiICYmCisJaGVhZCAtbiAyICIkRCIvYnVuZGxlMSB8IGdyZXAgIl4tJE9JRF9SRUdFWCAiICYmCisJaGVhZCAtbiAzICIkRCIvYnVuZGxlMSB8IGdyZXAgIl4kT0lEX1JFR0VYICIgJiYKIAloZWFkIC1uIDQgIiREIi9idW5kbGUxIHwgZ3JlcCAiXiQiCiAnCiAKQEAgLTI4OSw3ICszMTQsNyBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndW5idW5kbGUgMicgJwogCWNkICIkRC9idW5kbGUiICYmCiAJZ2l0IGZldGNoIC4uL2J1bmRsZTIgbWFzdGVyOm1hc3RlciAmJgotCXRlc3QgInRpcCIgPSAiJChnaXQgbG9nIC0xIC0tcHJldHR5PW9uZWxpbmUgbWFzdGVyIHwgY3V0IC1iNDItKSIKKwl0ZXN0ICJ0aXAiID0gIiQoZ2l0IGxvZyAtMSAtLXByZXR0eT1vbmVsaW5lIG1hc3RlciB8IGN1dCAtZCIgIiAtZjIpIgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdidW5kbGUgZG9lcyBub3QgcHJlcmVxdWlzaXRlIG9iamVjdHMnICcKQEAgLTM1NCw3ICszNzksNiBAQAogIyB0aGUgc3RyYW5nZSBuYW1lIGlzOiBhXCEnYgogdGVzdF9leHBlY3Rfc3VjY2VzcyAncXVvdGluZyBvZiBhIHN0cmFuZ2VseSBuYW1lZCByZXBvJyAnCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZldGNoICJhXFwhJ1wnJ2IiID4gcmVzdWx0IDI+JjEgJiYKLQljYXQgcmVzdWx0ICYmCiAJZ3JlcCAiZmF0YWw6ICdcJydhXFxcXCEnXCcnYidcJyciIHJlc3VsdAogJwogCkBAIC01NzAsNiArNTk0LDM1IEBACiAJKQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmZXRjaC53cml0ZUNvbW1pdEdyYXBoJyAnCisJZ2l0IGNsb25lIHRocmVlIHdyaXRlICYmCisJKAorCQljZCB0aHJlZSAmJgorCQl0ZXN0X2NvbW1pdCBuZXcKKwkpICYmCisJKAorCQljZCB3cml0ZSAmJgorCQlnaXQgLWMgZmV0Y2gud3JpdGVDb21taXRHcmFwaCBmZXRjaCBvcmlnaW4gJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgLmdpdC9vYmplY3RzL2luZm8vY29tbWl0LWdyYXBocy9jb21taXQtZ3JhcGgtY2hhaW4KKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoLndyaXRlQ29tbWl0R3JhcGggd2l0aCBzdWJtb2R1bGVzJyAnCisJZ2l0IGNsb25lIGR1cHMgc3VwZXIgJiYKKwkoCisJCWNkIHN1cGVyICYmCisJCWdpdCBzdWJtb2R1bGUgYWRkICJmaWxlOi8vJFRSQVNIX0RJUkVDVE9SWS90aHJlZSIgJiYKKwkJZ2l0IGNvbW1pdCAtbSAiYWRkIHN1Ym1vZHVsZSIKKwkpICYmCisJZ2l0IGNsb25lICJzdXBlciIgc3VwZXItY2xvbmUgJiYKKwkoCisJCWNkIHN1cGVyLWNsb25lICYmCisJCXJtIC1yZiAuZ2l0L29iamVjdHMvaW5mbyAmJgorCQlnaXQgLWMgZmV0Y2gud3JpdGVDb21taXRHcmFwaD10cnVlIGZldGNoIG9yaWdpbiAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSAuZ2l0L29iamVjdHMvaW5mby9jb21taXQtZ3JhcGhzL2NvbW1pdC1ncmFwaC1jaGFpbgorCSkKKycKKwogIyBjb25maWd1cmVkIHBydW5lIHRlc3RzCiAKIHNldF9jb25maWdfdHJpc3RhdGUgKCkgewpAQCAtOTAyLDYgKzk1NSwyOSBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1uby1zaG93LWZvcmNlZC11cGRhdGVzJyAnCisJbWtkaXIgZm9yY2VkLXVwZGF0ZXMgJiYKKwkoCisJCWNkIGZvcmNlZC11cGRhdGVzICYmCisJCWdpdCBpbml0ICYmCisJCXRlc3RfY29tbWl0IDEgJiYKKwkJdGVzdF9jb21taXQgMgorCSkgJiYKKwlnaXQgY2xvbmUgZm9yY2VkLXVwZGF0ZXMgZm9yY2VkLXVwZGF0ZS1jbG9uZSAmJgorCWdpdCBjbG9uZSBmb3JjZWQtdXBkYXRlcyBuby1mb3JjZWQtdXBkYXRlLWNsb25lICYmCisJZ2l0IC1DIGZvcmNlZC11cGRhdGVzIHJlc2V0IC0taGFyZCBIRUFEfjEgJiYKKwkoCisJCWNkIGZvcmNlZC11cGRhdGUtY2xvbmUgJiYKKwkJZ2l0IGZldGNoIC0tc2hvdy1mb3JjZWQtdXBkYXRlcyBvcmlnaW4gMj5vdXRwdXQgJiYKKwkJdGVzdF9pMThuZ3JlcCAiKGZvcmNlZCB1cGRhdGUpIiBvdXRwdXQKKwkpICYmCisJKAorCQljZCBuby1mb3JjZWQtdXBkYXRlLWNsb25lICYmCisJCWdpdCBmZXRjaCAtLW5vLXNob3ctZm9yY2VkLXVwZGF0ZXMgb3JpZ2luIDI+b3V0cHV0ICYmCisJCXRlc3RfaTE4bmdyZXAgISAiKGZvcmNlZCB1cGRhdGUpIiBvdXRwdXQKKwkpCisnCisKIHNldHVwX25lZ290aWF0aW9uX3RpcCAoKSB7CiAJU0VSVkVSPSIkMSIKIAlVUkw9IiQyIgpAQCAtOTc4LDYgKzEwNTQsNyBAQAogCWNoZWNrX25lZ290aWF0aW9uX3RpcAogJwogCi1zdG9wX2h0dHBkCisjIERPIE5PVCBhZGQgbm9uLWh0dHBkLXNwZWNpZmljIHRlc3RzIGhlcmUsIGJlY2F1c2UgdGhlIGxhc3QgcGFydCBvZiB0aGlzCisjIHRlc3Qgc2NyaXB0IGlzIG9ubHkgZXhlY3V0ZWQgd2hlbiBodHRwZCBpcyBhdmFpbGFibGUgYW5kIGVuYWJsZWQuCiAKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTUxMi1scy1yZW1vdGUuc2ggYi90L3Q1NTEyLWxzLXJlbW90ZS5zaAppbmRleCAzMmU3MjJkLi4wNGIzNTQwIDEwMDc1NQotLS0gYS90L3Q1NTEyLWxzLXJlbW90ZS5zaAorKysgYi90L3Q1NTEyLWxzLXJlbW90ZS5zaApAQCAtMjA0LDYgKzIwNCwxMiBAQAogCWdyZXAgcmVmcy90YWdzL21hZ2ljIGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcm90b2NvbCB2MiBzdXBwb3J0cyBoaWRlcmVmcycgJworCXRlc3RfY29uZmlnIHVwbG9hZHBhY2suaGlkZXJlZnMgcmVmcy90YWdzICYmCisJZ2l0IC1jIHByb3RvY29sLnZlcnNpb249MiBscy1yZW1vdGUgLiA+YWN0dWFsICYmCisJISBncmVwIHJlZnMvdGFncyBhY3R1YWwKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbHMtcmVtb3RlIC0tc3ltcmVmJyAnCiAJZ2l0IGZldGNoIG9yaWdpbiAmJgogCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgpAQCAtMjE3LDUwICsyMjMsNTggQEAKIAkkKGdpdCByZXYtcGFyc2UgcmVmcy90YWdzL21hcmsxLjEwKQlyZWZzL3RhZ3MvbWFyazEuMTAKIAkkKGdpdCByZXYtcGFyc2UgcmVmcy90YWdzL21hcmsxLjIpCXJlZnMvdGFncy9tYXJrMS4yCiAJRU9GCi0JZ2l0IGxzLXJlbW90ZSAtLXN5bXJlZiA+YWN0dWFsICYmCisJIyBQcm90b2NvbCB2MiBzdXBwb3J0cyBzZW5kaW5nIHN5bXJlZnMgZm9yIHJlZnMgb3RoZXIgdGhhbiBIRUFELCBzbyB1c2UKKwkjIHByb3RvY29sIHYwIGhlcmUuCisJR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTj0wIGdpdCBscy1yZW1vdGUgLS1zeW1yZWYgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbHMtcmVtb3RlIHdpdGggZmlsdGVyZWQgc3ltcmVmIChyZWZuYW1lKScgJwotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlyZXY9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCiAJcmVmOiByZWZzL2hlYWRzL21hc3RlcglIRUFECi0JMWJkNDRjYjlkMTMyMDRiMGZlMTk1OGRiMDA4MmY1MDI4YTE2ZWIzYQlIRUFECisJJHJldglIRUFECiAJRU9GCi0JZ2l0IGxzLXJlbW90ZSAtLXN5bXJlZiAuIEhFQUQgPmFjdHVhbCAmJgorCSMgUHJvdG9jb2wgdjIgc3VwcG9ydHMgc2VuZGluZyBzeW1yZWZzIGZvciByZWZzIG90aGVyIHRoYW4gSEVBRCwgc28gdXNlCisJIyBwcm90b2NvbCB2MCBoZXJlLgorCUdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT049MCBnaXQgbHMtcmVtb3RlIC0tc3ltcmVmIC4gSEVBRCA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9mYWlsdXJlICdscy1yZW1vdGUgd2l0aCBmaWx0ZXJlZCBzeW1yZWYgKC0taGVhZHMpJyAnCiAJZ2l0IHN5bWJvbGljLXJlZiByZWZzL2hlYWRzL2ZvbyByZWZzL3RhZ3MvbWFyayAmJgotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKIAlyZWY6IHJlZnMvdGFncy9tYXJrCXJlZnMvaGVhZHMvZm9vCi0JMWJkNDRjYjlkMTMyMDRiMGZlMTk1OGRiMDA4MmY1MDI4YTE2ZWIzYQlyZWZzL2hlYWRzL2ZvbwotCTFiZDQ0Y2I5ZDEzMjA0YjBmZTE5NThkYjAwODJmNTAyOGExNmViM2EJcmVmcy9oZWFkcy9tYXN0ZXIKKwkkcmV2CXJlZnMvaGVhZHMvZm9vCisJJHJldglyZWZzL2hlYWRzL21hc3RlcgogCUVPRgotCWdpdCBscy1yZW1vdGUgLS1zeW1yZWYgLS1oZWFkcyAuID5hY3R1YWwgJiYKKwkjIFByb3RvY29sIHYyIHN1cHBvcnRzIHNlbmRpbmcgc3ltcmVmcyBmb3IgcmVmcyBvdGhlciB0aGFuIEhFQUQsIHNvIHVzZQorCSMgcHJvdG9jb2wgdjAgaGVyZS4KKwlHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAgZ2l0IGxzLXJlbW90ZSAtLXN5bXJlZiAtLWhlYWRzIC4gPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbHMtcmVtb3RlIC0tc3ltcmVmIG9taXRzIGZpbHRlcmVkLW91dCBtYXRjaGVzJyAnCi0JY2F0ID5leHBlY3QgPDwtXEVPRiAmJgotCTFiZDQ0Y2I5ZDEzMjA0YjBmZTE5NThkYjAwODJmNTAyOGExNmViM2EJcmVmcy9oZWFkcy9mb28KLQkxYmQ0NGNiOWQxMzIwNGIwZmUxOTU4ZGIwMDgyZjUwMjhhMTZlYjNhCXJlZnMvaGVhZHMvbWFzdGVyCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJJHJldglyZWZzL2hlYWRzL2ZvbworCSRyZXYJcmVmcy9oZWFkcy9tYXN0ZXIKIAlFT0YKLQlnaXQgbHMtcmVtb3RlIC0tc3ltcmVmIC0taGVhZHMgLiA+YWN0dWFsICYmCisJIyBQcm90b2NvbCB2MiBzdXBwb3J0cyBzZW5kaW5nIHN5bXJlZnMgZm9yIHJlZnMgb3RoZXIgdGhhbiBIRUFELCBzbyB1c2UKKwkjIHByb3RvY29sIHYwIGhlcmUuCisJR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTj0wIGdpdCBscy1yZW1vdGUgLS1zeW1yZWYgLS1oZWFkcyAuID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCi0JZ2l0IGxzLXJlbW90ZSAtLXN5bXJlZiAuICJyZWZzL2hlYWRzLyoiID5hY3R1YWwgJiYKKwlHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAgZ2l0IGxzLXJlbW90ZSAtLXN5bXJlZiAuICJyZWZzL2hlYWRzLyoiID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfbGF6eV9wcmVyZXEgR0lUX0RBRU1PTiAnCi0JdGVzdF90cmlzdGF0ZSBHSVRfVEVTVF9HSVRfREFFTU9OICYmCi0JdGVzdCAiJEdJVF9URVNUX0dJVF9EQUVNT04iICE9IGZhbHNlCisJdGVzdF9ib29sX2VudiBHSVRfVEVTVF9HSVRfREFFTU9OIHRydWUKICcKIAogIyBUaGlzIHRlc3Qgc3Bhd25zIGEgZGFlbW9uLCBzbyBydW4gaXQgb25seSBpZiB0aGUgdXNlciB3b3VsZCBiZSBPSyB3aXRoCiAjIHRlc3Rpbmcgd2l0aCBnaXQtZGFlbW9uLgogdGVzdF9leHBlY3Rfc3VjY2VzcyBQSVBFLEpHSVQsR0lUX0RBRU1PTiAnaW5kaWNhdGUgbm8gcmVmcyBpbiBzdGFuZGFyZHMtY29tcGxpYW50IGVtcHR5IHJlbW90ZScgJwotCUpHSVRfREFFTU9OX1BPUlQ9JHtKR0lUX0RBRU1PTl9QT1JULSR7dGhpc190ZXN0I3R9fSAmJgorCXRlc3Rfc2V0X3BvcnQgSkdJVF9EQUVNT05fUE9SVCAmJgogCUpHSVRfREFFTU9OX1BJRD0gJiYKIAlnaXQgaW5pdCAtLWJhcmUgZW1wdHkuZ2l0ICYmCiAJPmVtcHR5LmdpdC9naXQtZGFlbW9uLWV4cG9ydC1vayAmJgpkaWZmIC0tZ2l0IGEvdC90NTUxNC1mZXRjaC1tdWx0aXBsZS5zaCBiL3QvdDU1MTQtZmV0Y2gtbXVsdGlwbGUuc2gKaW5kZXggMDAzMGM5Mi4uZGU4ZTJmMSAxMDA3NTUKLS0tIGEvdC90NTUxNC1mZXRjaC1tdWx0aXBsZS5zaAorKysgYi90L3Q1NTE0LWZldGNoLW11bHRpcGxlLnNoCkBAIC0xMDUsOSArMTA1LDEyIEBACiAJIGdpdCByZW1vdGUgcm0gb3JpZ2luICYmCiAJIGdpdCByZW1vdGUgYWRkIG9uZSAuLi9vbmUgJiYKIAkgZ2l0IHJlbW90ZSBhZGQgdHdvIC4uL3R3byAmJgotCSBnaXQgZmV0Y2ggLS1tdWx0aXBsZSBvbmUgdHdvICYmCisJIEdJVF9UUkFDRT0xIGdpdCBmZXRjaCAtLW11bHRpcGxlIG9uZSB0d28gMj50cmFjZSAmJgogCSBnaXQgYnJhbmNoIC1yID4gb3V0cHV0ICYmCi0JIHRlc3RfY21wIC4uL2V4cGVjdCBvdXRwdXQpCisJIHRlc3RfY21wIC4uL2V4cGVjdCBvdXRwdXQgJiYKKwkgZ3JlcCAiYnVpbHQtaW46IGdpdCBnYyIgdHJhY2UgPmdjICYmCisJIHRlc3RfbGluZV9jb3VudCA9IDEgZ2MKKwkpCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBmZXRjaCAtLW11bHRpcGxlIChiYWQgcmVtb3RlIG5hbWVzKScgJwpAQCAtMTgwLDQgKzE4MywxNSBAQAogCXRlc3RfY21wIGV4cGVjdCB0ZXN0OC9vdXRwdXQKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncGFyYWxsZWwnICcKKwlnaXQgcmVtb3RlIGFkZCBvbmUgLi9ib2d1czEgJiYKKwlnaXQgcmVtb3RlIGFkZCB0d28gLi9ib2d1czIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVFJBQ0U9IiRQV0QvdHJhY2UiIFwKKwkJZ2l0IGZldGNoIC0tam9icz0yIC0tbXVsdGlwbGUgb25lIHR3byAyPmVyciAmJgorCWdyZXAgInByZXBhcmluZyB0byBydW4gdXAgdG8gMiB0YXNrcyIgdHJhY2UgJiYKKwl0ZXN0X2kxOG5ncmVwICJjb3VsZCBub3QgZmV0Y2ggLm9uZS4qMTI4IiBlcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJjb3VsZCBub3QgZmV0Y2ggLnR3by4qMTI4IiBlcnIKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1NTE1LWZldGNoLW1lcmdlLWxvZ2ljLnNoIGIvdC90NTUxNS1mZXRjaC1tZXJnZS1sb2dpYy5zaAppbmRleCAzNmIwZGJjLi45ZDZhNDZmIDEwMDc1NQotLS0gYS90L3Q1NTE1LWZldGNoLW1lcmdlLWxvZ2ljLnNoCisrKyBiL3QvdDU1MTUtZmV0Y2gtbWVyZ2UtbG9naWMuc2gKQEAgLTYsMTYgKzYsNjIgQEAKIAogdGVzdF9kZXNjcmlwdGlvbj0nTWVyZ2UgbG9naWMgaW4gZmV0Y2gnCiAKKyMgTkVFRFNXT1JLOiBJZiB0aGUgb3ZlcnNwZWNpZmljYXRpb24gb2YgdGhlIGV4cGVjdGVkIHJlc3VsdCBpcyByZWR1Y2VkLCB3ZQorIyBtaWdodCBiZSBhYmxlIHRvIHJ1biB0aGlzIHRlc3QgaW4gYWxsIHByb3RvY29sIHZlcnNpb25zLgorR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTj0wCitleHBvcnQgR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTgorCiAuIC4vdGVzdC1saWIuc2gKIAotTEY9JwotJworYnVpbGRfc2NyaXB0ICgpIHsKKwlzY3JpcHQ9IiQxIiAmJgorCWZvciBpIGluIG9uZSB0aHJlZV9maWxlIG1hc3RlciBtYXN0ZXIyIG9uZV90cmVlIHRocmVlIHR3byB0d28yIHRocmVlMgorCWRvCisJCWVjaG8gInMvJCh0ZXN0X29pZCAtLWhhc2g9c2hhMSAiJGkiKS8kKHRlc3Rfb2lkICIkaSIpL2ciID4+IiRzY3JpcHQiCisJZG9uZQorfQorCitjb252ZXJ0X2V4cGVjdGVkICgpIHsKKwlmaWxlPSIkMSIgJiYKKwlzY3JpcHQ9IiQyIiAmJgorCXNlZCAtZiAiJHNjcmlwdCIgIiRmaWxlIiA+IiRmaWxlLnRtcCIgJiYKKwltdiAiJGZpbGUudG1wIiAiJGZpbGUiCit9CiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3Mgc2V0dXAgJwogCUdJVF9BVVRIT1JfREFURT0iMjAwNi0wNi0yNiAwMDowMDowMCArMDAwMCIgJiYKIAlHSVRfQ09NTUlUVEVSX0RBVEU9IjIwMDYtMDYtMjYgMDA6MDA6MDAgKzAwMDAiICYmCiAJZXhwb3J0IEdJVF9BVVRIT1JfREFURSBHSVRfQ09NTUlUVEVSX0RBVEUgJiYKIAorCXRlc3Rfb2lkX2NhY2hlIDw8LUVPRiAmJgorCW9uZSBzaGExOjhlMzJhNmQ5MDEzMjdhMjNlZjgzMTUxMWJhZGNlN2JmM2JmNDY2ODkKKwlvbmUgc2hhMjU2Ojg3Mzk1NDY0MzNhYjFhYzcyZWU5MzA4OGRjZTYxMTIxMGVmZmVlMDcyYjJiNTg2Y2VhYzZkZGU0M2ViZWM5Y2UKKworCXRocmVlX2ZpbGUgc2hhMTowZTNiMTQwNDdkM2VlMzY1ZjRmMmExYjY3M2RiMDU5YzM5NzI1ODljCisJdGhyZWVfZmlsZSBzaGEyNTY6YmM0NDQ3ZDUwYzA3NDk3YThiZmU2ZWVmODE3ZjIzNjRlY2NhOWQ0NzE0NTJlNDNiNTI3NTZjYzFhOTA4YmQzMgorCisJbWFzdGVyIHNoYTE6NmM5ZGVjMmI5MjMyMjhjOWZmOTk0YzZjZmU0YWUxNmMxMjQwOGRjNQorCW1hc3RlciBzaGEyNTY6ODUyMWMzMDcyNDYxZmNmZThmMzJkNjdmOTVjYzZlNmI4MzJhMmRiMmZhMjk3NjlmZmM3ODhiY2U4NWViY2Q3NQorCisJb25lX3RyZWUgc2hhMToyMmZlZWE0NDhiMDIzYTJkODY0ZWY5NGIwMTM3MzVhZjM0ZDIzOGJhCisJb25lX3RyZWUgc2hhMjU2OjZlNDc0M2Y0ZWYyMzU2Yjg4MWRkYTVlOTFmNWM3Y2RmZmU4NzBmYWYzNTBiZjdiMzEyZjgwYTIwOTM1ZjVkODMKKworCXRocmVlIHNoYTE6YzYxYTgyYjYwOTY3MTgwNTQ0ZTNjMTlmODE5ZGRiZDBjOWY4OTg5OQorCXRocmVlIHNoYTI1NjowY2M2ZDFlZGE2MTdkZWQ3MTUxNzA3ODZlMzFiYTRlMmQwMTg1NDA0ZWM1YTM1MDhkZDBkNzNiMzI0ODYwYzZhCisKKwl0d28gc2hhMTo1MjViN2ZiMDY4ZDU5OTUwZDE4NWE4Nzc5ZGM5NTdjNzdlZWQ3M2JhCisJdHdvIHNoYTI1NjozYjIxZGUzNDQwY2QzOGMyYTllOWI0NjRhZGI5MjNmNzA1NDk0OWVkNGM5MThlMWEwYWM0Yzk1Y2Q1Mjc3NGRiCisKKwltYXN0ZXIyIHNoYTE6NzU0Yjc1NDQwN2JmMDMyZTlhMmY5ZDVhOWFkMDVjYTc5YTZiMjI4ZgorCW1hc3RlcjIgc2hhMjU2OjZjN2FiYWVhOGE2ZDhlZjRkODk4NzdlNjg0NjI3NThkYzY3NzQ2OTBmYmJiYjBlNmQ3ZGQ1NzQxNWM5YWJkZTAKKworCXR3bzIgc2hhMTo2MTM0ZWU4Zjg1NzY5M2I5NmZmMWNjOThkM2UyZmQ2MmIxOTllNWE4CisJdHdvMiBzaGEyNTY6ODdhMmQzZWUyOWM4M2EzZGM3YWZkNDFjMDYwNmIxMWY2NzYwMzEyMGI5MTBhN2JlNzg0MGFjY2RjMTgzNDRkNAorCisJdGhyZWUyIHNoYTE6MDU2N2RhNGQ1ZWRkMmZmNGJiMjkyYTQ2NWJhOWU2NGRjYWQ5NTM2YgorCXRocmVlMiBzaGEyNTY6Y2NlYjNlOGVjYTM2NGZhOWEwYTM5YTFlZmJlYmVjYWNjNjY0YWY4NmNiYmQ4MDcwNTcxZjVmYWViNWYwZThjMworCUVPRgorCiAJZWNobyA+ZmlsZSBvcmlnaW5hbCAmJgogCWdpdCBhZGQgZmlsZSAmJgogCWdpdCBjb21taXQgLWEgLW0gT25lICYmCkBAIC04NSw3ICsxMzEsOCBAQAogCQlnaXQgY29uZmlnIGJyYW5jaC5ici0kcmVtb3RlLW9jdG9wdXMucmVtb3RlICRyZW1vdGUgJiYKIAkJZ2l0IGNvbmZpZyBicmFuY2guYnItJHJlbW90ZS1vY3RvcHVzLm1lcmdlIHJlZnMvaGVhZHMvb25lICYmCiAJCWdpdCBjb25maWcgLS1hZGQgYnJhbmNoLmJyLSRyZW1vdGUtb2N0b3B1cy5tZXJnZSB0d28KLQlkb25lCisJZG9uZSAmJgorCWJ1aWxkX3NjcmlwdCBzZWRfc2NyaXB0CiAnCiAKICMgTWVyZ2UgbG9naWMgZGVwZW5kcyBvbiBicmFuY2ggcHJvcGVydGllcyBhbmQgUHVsbDogb3IgLmZldGNoIGxpbmVzCkBAIC0xMzYsNiArMTgzLDEwIEBACiAJYWN0dWFsX3I9IiRwZngtcmVmcy4kdGVzdCIKIAogCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgIiRjbWQiICcKKwkJY3AgIiRleHBlY3RfZiIgZXhwZWN0X2YgJiYKKwkJY29udmVydF9leHBlY3RlZCBleHBlY3RfZiBzZWRfc2NyaXB0ICYmCisJCWNwICIkZXhwZWN0X3IiIGV4cGVjdF9yICYmCisJCWNvbnZlcnRfZXhwZWN0ZWQgZXhwZWN0X3Igc2VkX3NjcmlwdCAmJgogCQl7CiAJCQllY2hvICIjICRjbWQiCiAJCQlzZXQgeCAkY21kOyBzaGlmdApAQCAtMTUxLDE4ICsyMDIsMTggQEAKIAkJCWNhdCAuZ2l0L0ZFVENIX0hFQUQKIAkJfSA+IiRhY3R1YWxfZiIgJiYKIAkJZ2l0IHNob3ctcmVmID4iJGFjdHVhbF9yIiAmJgotCQlpZiB0ZXN0IC1mICIkZXhwZWN0X2YiCisJCWlmIHRlc3QgLWYgImV4cGVjdF9mIgogCQl0aGVuCi0JCQl0ZXN0X2NtcCAiJGV4cGVjdF9mIiAiJGFjdHVhbF9mIiAmJgorCQkJdGVzdF9jbXAgImV4cGVjdF9mIiAiJGFjdHVhbF9mIiAmJgogCQkJcm0gLWYgIiRhY3R1YWxfZiIKIAkJZWxzZQogCQkJIyB0aGlzIGlzIHRvIGhlbHAgZGV2ZWxvcGluZyBuZXcgdGVzdHMuCiAJCQljcCAiJGFjdHVhbF9mIiAiJGV4cGVjdF9mIgogCQkJZmFsc2UKIAkJZmkgJiYKLQkJaWYgdGVzdCAtZiAiJGV4cGVjdF9yIgorCQlpZiB0ZXN0IC1mICJleHBlY3RfciIKIAkJdGhlbgotCQkJdGVzdF9jbXAgIiRleHBlY3RfciIgIiRhY3R1YWxfciIgJiYKKwkJCXRlc3RfY21wICJleHBlY3RfciIgIiRhY3R1YWxfciIgJiYKIAkJCXJtIC1mICIkYWN0dWFsX3IiCiAJCWVsc2UKIAkJCSMgdGhpcyBpcyB0byBoZWxwIGRldmVsb3BpbmcgbmV3IHRlc3RzLgpkaWZmIC0tZ2l0IGEvdC90NTUxNi1mZXRjaC1wdXNoLnNoIGIvdC90NTUxNi1mZXRjaC1wdXNoLnNoCmluZGV4IDM3ZThlODAuLjlmZjA0MWEgMTAwNzU1Ci0tLSBhL3QvdDU1MTYtZmV0Y2gtcHVzaC5zaAorKysgYi90L3Q1NTE2LWZldGNoLXB1c2guc2gKQEAgLTExNDcsOCArMTE0NywxMiBAQAogCQlnaXQgcHJ1bmUgJiYKIAkJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNhdC1maWxlIC10ICR0aGVfY29tbWl0ICYmCiAKKwkJIyBTb21lIHByb3RvY29sIHZlcnNpb25zIChlLmcuIDIpIHN1cHBvcnQgZmV0Y2hpbmcKKwkJIyB1bmFkdmVydGlzZWQgb2JqZWN0cywgc28gcmVzdHJpY3QgdGhpcyB0ZXN0IHRvIHYwLgorCiAJCSMgZmV0Y2hpbmcgdGhlIGhpZGRlbiBvYmplY3Qgc2hvdWxkIGZhaWwgYnkgZGVmYXVsdAotCQl0ZXN0X211c3RfZmFpbCBnaXQgZmV0Y2ggLXYgLi4vdGVzdHJlcG8gJHRoZV9jb21taXQ6cmVmcy9oZWFkcy9jb3B5IDI+ZXJyICYmCisJCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAgXAorCQkJZ2l0IGZldGNoIC12IC4uL3Rlc3RyZXBvICR0aGVfY29tbWl0OnJlZnMvaGVhZHMvY29weSAyPmVyciAmJgogCQl0ZXN0X2kxOG5ncmVwICJTZXJ2ZXIgZG9lcyBub3QgYWxsb3cgcmVxdWVzdCBmb3IgdW5hZHZlcnRpc2VkIG9iamVjdCIgZXJyICYmCiAJCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgcmVmcy9oZWFkcy9jb3B5ICYmCiAKQEAgLTEyMDQsNyArMTIwOCwxMCBAQAogCQlta19lbXB0eSBzaGFsbG93ICYmCiAJCSgKIAkJCWNkIHNoYWxsb3cgJiYKLQkJCXRlc3RfbXVzdF9mYWlsIGdpdCBmZXRjaCAtLWRlcHRoPTEgLi4vdGVzdHJlcG8vLmdpdCAkU0hBMSAmJgorCQkJIyBTb21lIHByb3RvY29sIHZlcnNpb25zIChlLmcuIDIpIHN1cHBvcnQgZmV0Y2hpbmcKKwkJCSMgdW5hZHZlcnRpc2VkIG9iamVjdHMsIHNvIHJlc3RyaWN0IHRoaXMgdGVzdCB0byB2MC4KKwkJCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAgXAorCQkJCWdpdCBmZXRjaCAtLWRlcHRoPTEgLi4vdGVzdHJlcG8vLmdpdCAkU0hBMSAmJgogCQkJZ2l0IC0tZ2l0LWRpcj0uLi90ZXN0cmVwby8uZ2l0IGNvbmZpZyB1cGxvYWRwYWNrLmFsbG93cmVhY2hhYmxlc2hhMWlud2FudCB0cnVlICYmCiAJCQlnaXQgZmV0Y2ggLS1kZXB0aD0xIC4uL3Rlc3RyZXBvLy5naXQgJFNIQTEgJiYKIAkJCWdpdCBjYXQtZmlsZSBjb21taXQgJFNIQTEKQEAgLTEyMzIsMTUgKzEyMzksMjEgQEAKIAkJbWtfZW1wdHkgc2hhbGxvdyAmJgogCQkoCiAJCQljZCBzaGFsbG93ICYmCi0JCQl0ZXN0X211c3RfZmFpbCBvaz1zaWdwaXBlIGdpdCBmZXRjaCAuLi90ZXN0cmVwby8uZ2l0ICRTSEExXzMgJiYKLQkJCXRlc3RfbXVzdF9mYWlsIG9rPXNpZ3BpcGUgZ2l0IGZldGNoIC4uL3Rlc3RyZXBvLy5naXQgJFNIQTFfMSAmJgorCQkJIyBTb21lIHByb3RvY29sIHZlcnNpb25zIChlLmcuIDIpIHN1cHBvcnQgZmV0Y2hpbmcKKwkJCSMgdW5hZHZlcnRpc2VkIG9iamVjdHMsIHNvIHJlc3RyaWN0IHRoaXMgdGVzdCB0byB2MC4KKwkJCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAgXAorCQkJCWdpdCBmZXRjaCAuLi90ZXN0cmVwby8uZ2l0ICRTSEExXzMgJiYKKwkJCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAgXAorCQkJCWdpdCBmZXRjaCAuLi90ZXN0cmVwby8uZ2l0ICRTSEExXzEgJiYKIAkJCWdpdCAtLWdpdC1kaXI9Li4vdGVzdHJlcG8vLmdpdCBjb25maWcgdXBsb2FkcGFjay5hbGxvd3JlYWNoYWJsZXNoYTFpbndhbnQgdHJ1ZSAmJgogCQkJZ2l0IGZldGNoIC4uL3Rlc3RyZXBvLy5naXQgJFNIQTFfMSAmJgogCQkJZ2l0IGNhdC1maWxlIGNvbW1pdCAkU0hBMV8xICYmCiAJCQl0ZXN0X211c3RfZmFpbCBnaXQgY2F0LWZpbGUgY29tbWl0ICRTSEExXzIgJiYKIAkJCWdpdCBmZXRjaCAuLi90ZXN0cmVwby8uZ2l0ICRTSEExXzIgJiYKIAkJCWdpdCBjYXQtZmlsZSBjb21taXQgJFNIQTFfMiAmJgotCQkJdGVzdF9tdXN0X2ZhaWwgb2s9c2lncGlwZSBnaXQgZmV0Y2ggLi4vdGVzdHJlcG8vLmdpdCAkU0hBMV8zCisJCQl0ZXN0X211c3RfZmFpbCBlbnYgR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTj0wIFwKKwkJCQlnaXQgZmV0Y2ggLi4vdGVzdHJlcG8vLmdpdCAkU0hBMV8zIDI+ZXJyICYmCisJCQl0ZXN0X2kxOG5ncmVwICJyZW1vdGUgZXJyb3I6Lipub3Qgb3VyIHJlZi4qJFNIQTFfM1wkIiBlcnIKIAkJKQogCScKIGRvbmUKQEAgLTEyNzIsNiArMTI4NSwxNyBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncGVlbGVkIGFkdmVydGlzZW1lbnRzIGFyZSBub3QgY29uc2lkZXJlZCByZWYgdGlwcycgJworCW1rX2VtcHR5IHRlc3RyZXBvICYmCisJZ2l0IC1DIHRlc3RyZXBvIGNvbW1pdCAtLWFsbG93LWVtcHR5IC1tIG9uZSAmJgorCWdpdCAtQyB0ZXN0cmVwbyBjb21taXQgLS1hbGxvdy1lbXB0eSAtbSB0d28gJiYKKwlnaXQgLUMgdGVzdHJlcG8gdGFnIC1tIGZvbyBteXRhZyBIRUFEXiAmJgorCW9pZD0kKGdpdCAtQyB0ZXN0cmVwbyByZXYtcGFyc2UgbXl0YWdee2NvbW1pdH0pICYmCisJdGVzdF9tdXN0X2ZhaWwgZW52IEdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT049MCBcCisJCWdpdCBmZXRjaCB0ZXN0cmVwbyAkb2lkIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAiU2VydmVyIGRvZXMgbm90IGFsbG93IHJlcXVlc3QgZm9yIHVuYWR2ZXJ0aXNlZCBvYmplY3QiIGVycgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdXNoaW5nIGEgc3BlY2lmaWMgcmVmIGFwcGxpZXMgcmVtb3RlLiRuYW1lLnB1c2ggYXMgcmVmbWFwJyAnCiAJbWtfdGVzdCB0ZXN0cmVwbyBoZWFkcy9tYXN0ZXIgJiYKIAlybSAtZnIgc3JjIGRzdCAmJgpAQCAtMTM3MCw3ICsxMzk0LDcgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1c2ggLS1mb2xsb3ctdGFnIG9ubHkgcHVzaGVzIHJlbGV2YW50IHRhZ3MnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1c2ggLS1mb2xsb3ctdGFncyBvbmx5IHB1c2hlcyByZWxldmFudCB0YWdzJyAnCiAJbWtfdGVzdCB0ZXN0cmVwbyBoZWFkcy9tYXN0ZXIgJiYKIAlybSAtZnIgc3JjIGRzdCAmJgogCWdpdCBpbml0IHNyYyAmJgpAQCAtMTM4NCw3ICsxNDA4LDcgQEAKIAkJZ2l0IHRhZyAtbSAiZnV0dXJlIiBmdXR1cmUgJiYKIAkJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgogCQlnaXQgZm9yLWVhY2gtcmVmIHJlZnMvaGVhZHMvbWFzdGVyIHJlZnMvdGFncy90YWcgPi4uL2V4cGVjdCAmJgotCQlnaXQgcHVzaCAtLWZvbGxvdy10YWcgLi4vZHN0IG1hc3RlcgorCQlnaXQgcHVzaCAtLWZvbGxvdy10YWdzIC4uL2RzdCBtYXN0ZXIKIAkpICYmCiAJKAogCQljZCBkc3QgJiYKQEAgLTE2ODgsNCArMTcxMiwxNSBAQAogCSkKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnZGVueUN1cnJlbnRCcmFuY2ggYW5kIHdvcmt0cmVlcycgJworCWdpdCB3b3JrdHJlZSBhZGQgbmV3LXd0ICYmCisJZ2l0IGNsb25lIC4gY2xvbmVkICYmCisJdGVzdF9jb21taXQgLUMgY2xvbmVkIGZpcnN0ICYmCisJdGVzdF9jb25maWcgcmVjZWl2ZS5kZW55Q3VycmVudEJyYW5jaCByZWZ1c2UgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgLUMgY2xvbmVkIHB1c2ggb3JpZ2luIEhFQUQ6bmV3LXd0ICYmCisJdGVzdF9jb25maWcgcmVjZWl2ZS5kZW55Q3VycmVudEJyYW5jaCB1cGRhdGVJbnN0ZWFkICYmCisJZ2l0IC1DIGNsb25lZCBwdXNoIG9yaWdpbiBIRUFEOm5ldy13dCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyBjbG9uZWQgcHVzaCAtLWRlbGV0ZSBvcmlnaW4gbmV3LXd0CisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTUxNy1wdXNoLW1pcnJvci5zaCBiL3QvdDU1MTctcHVzaC1taXJyb3Iuc2gKaW5kZXggYzA1YTY2MS4uZTRlZGQ1NiAxMDA3NTUKLS0tIGEvdC90NTUxNy1wdXNoLW1pcnJvci5zaAorKysgYi90L3Q1NTE3LXB1c2gtbWlycm9yLnNoCkBAIC0yNjUsNCArMjY1LDE0IEBACiAKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncHVzaCB0byBtaXJyb3JlZCByZXBvc2l0b3J5IHdpdGggcmVmc3BlYyBmYWlscycgJworCW1rX3JlcG9fcGFpciAmJgorCSgKKwkJY2QgbWFzdGVyICYmCisJCWVjaG8gb25lID5mb28gJiYgZ2l0IGFkZCBmb28gJiYgZ2l0IGNvbW1pdCAtbSBvbmUgJiYKKwkJZ2l0IGNvbmZpZyAtLWFkZCByZW1vdGUudXAubWlycm9yIHRydWUgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHB1c2ggdXAgbWFzdGVyCisJKQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU1MjAtcHVsbC5zaCBiL3QvdDU1MjAtcHVsbC5zaAppbmRleCBjZjRjYzMyLi4yZjg2ZmNhIDEwMDc1NQotLS0gYS90L3Q1NTIwLXB1bGwuc2gKKysrIGIvdC90NTUyMC1wdWxsLnNoCkBAIC01LDcgKzUsNyBAQAogLiAuL3Rlc3QtbGliLnNoCiAKIG1vZGlmeSAoKSB7Ci0Jc2VkIC1lICIkMSIgPCIkMiIgPiIkMi54IiAmJgorCXNlZCAtZSAiJDEiICIkMiIgPiIkMi54IiAmJgogCW12ICIkMi54IiAiJDIiCiB9CiAKQEAgLTE1LDggKzE1LDEwIEBACiAJZ2l0IGFkZCBuZXdfZmlsZSAmJgogCWdpdCBwdWxsICIkQCIgLiBjb3B5ICYmCiAJdGVzdF9jbXBfcmV2IEhFQUReIGNvcHkgJiYKLQl0ZXN0ICIkKGNhdCBuZXdfZmlsZSkiID0gZGlydHkgJiYKLQl0ZXN0ICIkKGNhdCBmaWxlKSIgPSAibW9kaWZpZWQgYWdhaW4iCisJZWNobyBkaXJ0eSA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IG5ld19maWxlICYmCisJZWNobyAibW9kaWZpZWQgYWdhaW4iID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZQogfQogCiB0ZXN0X3B1bGxfYXV0b3N0YXNoX2ZhaWwgKCkgewpAQCAtMzksOCArNDEsOCBAQAogCQljZCBjbG9uZWQgJiYKIAkJZ2l0IHB1bGwgLi4KIAkpICYmCi0JdGVzdCAtZiBmaWxlICYmCi0JdGVzdCAtZiBjbG9uZWQvZmlsZSAmJgorCXRlc3RfcGF0aF9pc19maWxlIGZpbGUgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBjbG9uZWQvZmlsZSAmJgogCXRlc3RfY21wIGZpbGUgY2xvbmVkL2ZpbGUKICcKIApAQCAtNTAsOCArNTIsOCBAQAogCQljZCBjbG9uZWQtdWhvICYmCiAJCWdpdCBwdWxsIC4uIG1hc3RlcjptYXN0ZXIKIAkpICYmCi0JdGVzdCAtZiBmaWxlICYmCi0JdGVzdCAtZiBjbG9uZWQtdWhvL2ZpbGUgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBmaWxlICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgY2xvbmVkLXVoby9maWxlICYmCiAJdGVzdF9jbXAgZmlsZSBjbG9uZWQtdWhvL2ZpbGUKICcKIApAQCAtOTksNyArMTAxLDcgQEAKIAkoCiAJCWNkIGNsb25lZC1vY3RvcHVzICYmCiAJCXRlc3RfbXVzdF9mYWlsIGdpdCBwdWxsIC4uIG1hc3RlciBtYXN0ZXIgJiYKLQkJISB0ZXN0IC1mIGZpbGUKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgZmlsZQogCSkKICcKIApAQCAtMTEwLDkgKzExMiwxMSBAQAogCWVjaG8gdXBkYXRlZCA+ZmlsZSAmJgogCWdpdCBjb21taXQgLWEgLW0gdXBkYXRlZCAmJgogCWdpdCBjaGVja291dCBjb3B5ICYmCi0JdGVzdCAiJChjYXQgZmlsZSkiID0gZmlsZSAmJgorCWVjaG8gZmlsZSA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUgJiYKIAlnaXQgcHVsbCAmJgotCXRlc3QgIiQoY2F0IGZpbGUpIiA9IHVwZGF0ZWQgJiYKKwllY2hvIHVwZGF0ZWQgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBmaWxlICYmCiAJZ2l0IHJlZmxvZyAtMSA+cmVmbG9nLmFjdHVhbCAmJgogCXNlZCAicy9eWzAtOWEtZl1bMC05YS1mXSovT0JKSUQvIiByZWZsb2cuYWN0dWFsID5yZWZsb2cuZnV6enkgJiYKIAllY2hvICJPQkpJRCBIRUFEQHswfTogcHVsbDogRmFzdC1mb3J3YXJkIiA+cmVmbG9nLmV4cGVjdGVkICYmCkBAIC0xMjUsOSArMTI5LDExIEBACiAJZ2l0IGNvbW1pdCAtYSAtbSBtb2RpZmllZCAmJgogCWdpdCBjaGVja291dCBjb3B5ICYmCiAJZ2l0IHJlc2V0IC0taGFyZCBIRUFEXiAmJgotCXRlc3QgIiQoY2F0IGZpbGUpIiA9IGZpbGUgJiYKKwllY2hvIGZpbGUgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBmaWxlICYmCiAJZ2l0IHB1bGwgLiBzZWNvbmQgJiYKLQl0ZXN0ICIkKGNhdCBmaWxlKSIgPSBtb2RpZmllZCAmJgorCWVjaG8gbW9kaWZpZWQgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBmaWxlICYmCiAJZ2l0IHJlZmxvZyAtMSA+cmVmbG9nLmFjdHVhbCAmJgogCXNlZCAicy9eWzAtOWEtZl1bMC05YS1mXSovT0JKSUQvIiByZWZsb2cuYWN0dWFsID5yZWZsb2cuZnV6enkgJiYKIAllY2hvICJPQkpJRCBIRUFEQHswfTogcHVsbCAuIHNlY29uZDogRmFzdC1mb3J3YXJkIiA+cmVmbG9nLmV4cGVjdGVkICYmCkBAIC0xMzcsMTAgKzE0MywxMSBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFpbCBpZiB3aWxkY2FyZCBzcGVjIGRvZXMgbm90IG1hdGNoIGFueSByZWZzJyAnCiAJZ2l0IGNoZWNrb3V0IC1iIHRlc3QgY29weV4gJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCBjaGVja291dCAtZiBjb3B5ICYmIGdpdCBicmFuY2ggLUQgdGVzdCIgJiYKLQl0ZXN0ICIkKGNhdCBmaWxlKSIgPSBmaWxlICYmCisJZWNobyBmaWxlID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBwdWxsIC4gInJlZnMvbm9uZXhpc3RpbmcxLyo6cmVmcy9ub25leGlzdGluZzIvKiIgMj5lcnIgJiYKIAl0ZXN0X2kxOG5ncmVwICJubyBjYW5kaWRhdGVzIGZvciBtZXJnaW5nIiBlcnIgJiYKLQl0ZXN0ICIkKGNhdCBmaWxlKSIgPSBmaWxlCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFpbCBpZiBubyBicmFuY2hlcyBzcGVjaWZpZWQgd2l0aCBub24tZGVmYXVsdCByZW1vdGUnICcKQEAgLTE0OCwxMSArMTU1LDEyIEBACiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVtb3RlIHJlbW92ZSB0ZXN0X3JlbW90ZSIgJiYKIAlnaXQgY2hlY2tvdXQgLWIgdGVzdCBjb3B5XiAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IGNoZWNrb3V0IC1mIGNvcHkgJiYgZ2l0IGJyYW5jaCAtRCB0ZXN0IiAmJgotCXRlc3QgIiQoY2F0IGZpbGUpIiA9IGZpbGUgJiYKKwllY2hvIGZpbGUgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBmaWxlICYmCiAJdGVzdF9jb25maWcgYnJhbmNoLnRlc3QucmVtb3RlIG9yaWdpbiAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBwdWxsIHRlc3RfcmVtb3RlIDI+ZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAic3BlY2lmeSBhIGJyYW5jaCBvbiB0aGUgY29tbWFuZCBsaW5lIiBlcnIgJiYKLQl0ZXN0ICIkKGNhdCBmaWxlKSIgPSBmaWxlCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFpbCBpZiBub3Qgb24gYSBicmFuY2gnICcKQEAgLTE2MCwxMCArMTY4LDExIEBACiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVtb3RlIHJlbW92ZSBvcmlnaW4iICYmCiAJZ2l0IGNoZWNrb3V0IEhFQUReICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY2hlY2tvdXQgLWYgY29weSIgJiYKLQl0ZXN0ICIkKGNhdCBmaWxlKSIgPSBmaWxlICYmCisJZWNobyBmaWxlID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBwdWxsIDI+ZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAibm90IGN1cnJlbnRseSBvbiBhIGJyYW5jaCIgZXJyICYmCi0JdGVzdCAiJChjYXQgZmlsZSkiID0gZmlsZQorCXRlc3RfY21wIGV4cGVjdCBmaWxlCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZhaWwgaWYgbm8gY29uZmlndXJhdGlvbiBmb3IgY3VycmVudCBicmFuY2gnICcKQEAgLTE3MiwxMCArMTgxLDExIEBACiAJZ2l0IGNoZWNrb3V0IC1iIHRlc3QgY29weV4gJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCBjaGVja291dCAtZiBjb3B5ICYmIGdpdCBicmFuY2ggLUQgdGVzdCIgJiYKIAl0ZXN0X2NvbmZpZyBicmFuY2gudGVzdC5yZW1vdGUgdGVzdF9yZW1vdGUgJiYKLQl0ZXN0ICIkKGNhdCBmaWxlKSIgPSBmaWxlICYmCisJZWNobyBmaWxlID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBwdWxsIDI+ZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAibm8gdHJhY2tpbmcgaW5mb3JtYXRpb24iIGVyciAmJgotCXRlc3QgIiQoY2F0IGZpbGUpIiA9IGZpbGUKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdWxsIC0tYWxsOiBmYWlsIGlmIG5vIGNvbmZpZ3VyYXRpb24gZm9yIGN1cnJlbnQgYnJhbmNoJyAnCkBAIC0xODQsMTAgKzE5NCwxMSBAQAogCWdpdCBjaGVja291dCAtYiB0ZXN0IGNvcHleICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY2hlY2tvdXQgLWYgY29weSAmJiBnaXQgYnJhbmNoIC1EIHRlc3QiICYmCiAJdGVzdF9jb25maWcgYnJhbmNoLnRlc3QucmVtb3RlIHRlc3RfcmVtb3RlICYmCi0JdGVzdCAiJChjYXQgZmlsZSkiID0gZmlsZSAmJgorCWVjaG8gZmlsZSA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcHVsbCAtLWFsbCAyPmVyciAmJgogCXRlc3RfaTE4bmdyZXAgIlRoZXJlIGlzIG5vIHRyYWNraW5nIGluZm9ybWF0aW9uIiBlcnIgJiYKLQl0ZXN0ICIkKGNhdCBmaWxlKSIgPSBmaWxlCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFpbCBpZiB1cHN0cmVhbSBicmFuY2ggZG9lcyBub3QgZXhpc3QnICcKQEAgLTE5NSwyNiArMjA2LDMxIEBACiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY2hlY2tvdXQgLWYgY29weSAmJiBnaXQgYnJhbmNoIC1EIHRlc3QiICYmCiAJdGVzdF9jb25maWcgYnJhbmNoLnRlc3QucmVtb3RlIC4gJiYKIAl0ZXN0X2NvbmZpZyBicmFuY2gudGVzdC5tZXJnZSByZWZzL2hlYWRzL25vbmV4aXN0aW5nICYmCi0JdGVzdCAiJChjYXQgZmlsZSkiID0gZmlsZSAmJgorCWVjaG8gZmlsZSA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcHVsbCAyPmVyciAmJgogCXRlc3RfaTE4bmdyZXAgIm5vIHN1Y2ggcmVmIHdhcyBmZXRjaGVkIiBlcnIgJiYKLQl0ZXN0ICIkKGNhdCBmaWxlKSIgPSBmaWxlCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFpbCBpZiB0aGUgaW5kZXggaGFzIHVucmVzb2x2ZWQgZW50cmllcycgJwogCWdpdCBjaGVja291dCAtYiB0aGlyZCBzZWNvbmReICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY2hlY2tvdXQgLWYgY29weSAmJiBnaXQgYnJhbmNoIC1EIHRoaXJkIiAmJgotCXRlc3QgIiQoY2F0IGZpbGUpIiA9IGZpbGUgJiYKKwllY2hvIGZpbGUgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBmaWxlICYmCiAJdGVzdF9jb21taXQgbW9kaWZpZWQyIGZpbGUgJiYKLQl0ZXN0IC16ICIkKGdpdCBscy1maWxlcyAtdSkiICYmCisJZ2l0IGxzLWZpbGVzIC11ID51bm1lcmdlZCAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSB1bm1lcmdlZCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBwdWxsIC4gc2Vjb25kICYmCi0JdGVzdCAtbiAiJChnaXQgbHMtZmlsZXMgLXUpIiAmJgorCWdpdCBscy1maWxlcyAtdSA+dW5tZXJnZWQgJiYKKwl0ZXN0X2ZpbGVfbm90X2VtcHR5IHVubWVyZ2VkICYmCiAJY3AgZmlsZSBleHBlY3RlZCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBwdWxsIC4gc2Vjb25kIDI+ZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAiUHVsbGluZyBpcyBub3QgcG9zc2libGUgYmVjYXVzZSB5b3UgaGF2ZSB1bm1lcmdlZCBmaWxlcy4iIGVyciAmJgogCXRlc3RfY21wIGV4cGVjdGVkIGZpbGUgJiYKIAlnaXQgYWRkIGZpbGUgJiYKLQl0ZXN0IC16ICIkKGdpdCBscy1maWxlcyAtdSkiICYmCisJZ2l0IGxzLWZpbGVzIC11ID51bm1lcmdlZCAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSB1bm1lcmdlZCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBwdWxsIC4gc2Vjb25kIDI+ZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAiWW91IGhhdmUgbm90IGNvbmNsdWRlZCB5b3VyIG1lcmdlIiBlcnIgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZCBmaWxlCkBAIC0yMjMsNDcgKzIzOSw2NiBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFzdC1mb3J3YXJkcyB3b3JraW5nIHRyZWUgaWYgYnJhbmNoIGhlYWQgaXMgdXBkYXRlZCcgJwogCWdpdCBjaGVja291dCAtYiB0aGlyZCBzZWNvbmReICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY2hlY2tvdXQgLWYgY29weSAmJiBnaXQgYnJhbmNoIC1EIHRoaXJkIiAmJgotCXRlc3QgIiQoY2F0IGZpbGUpIiA9IGZpbGUgJiYKKwllY2hvIGZpbGUgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBmaWxlICYmCiAJZ2l0IHB1bGwgLiBzZWNvbmQ6dGhpcmQgMj5lcnIgJiYKIAl0ZXN0X2kxOG5ncmVwICJmZXRjaCB1cGRhdGVkIHRoZSBjdXJyZW50IGJyYW5jaCBoZWFkIiBlcnIgJiYKLQl0ZXN0ICIkKGNhdCBmaWxlKSIgPSBtb2RpZmllZCAmJgotCXRlc3QgIiQoZ2l0IHJldi1wYXJzZSB0aGlyZCkiID0gIiQoZ2l0IHJldi1wYXJzZSBzZWNvbmQpIgorCWVjaG8gbW9kaWZpZWQgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBmaWxlICYmCisJdGVzdF9jbXBfcmV2IHRoaXJkIHNlY29uZAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmYXN0LWZvcndhcmQgZmFpbHMgd2l0aCBjb25mbGljdGluZyB3b3JrIHRyZWUnICcKIAlnaXQgY2hlY2tvdXQgLWIgdGhpcmQgc2Vjb25kXiAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IGNoZWNrb3V0IC1mIGNvcHkgJiYgZ2l0IGJyYW5jaCAtRCB0aGlyZCIgJiYKLQl0ZXN0ICIkKGNhdCBmaWxlKSIgPSBmaWxlICYmCisJZWNobyBmaWxlID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZSAmJgogCWVjaG8gY29uZmxpY3QgPmZpbGUgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcHVsbCAuIHNlY29uZDp0aGlyZCAyPmVyciAmJgogCXRlc3RfaTE4bmdyZXAgIkNhbm5vdCBmYXN0LWZvcndhcmQgeW91ciB3b3JraW5nIHRyZWUiIGVyciAmJgotCXRlc3QgIiQoY2F0IGZpbGUpIiA9IGNvbmZsaWN0ICYmCi0JdGVzdCAiJChnaXQgcmV2LXBhcnNlIHRoaXJkKSIgPSAiJChnaXQgcmV2LXBhcnNlIHNlY29uZCkiCisJZWNobyBjb25mbGljdCA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUgJiYKKwl0ZXN0X2NtcF9yZXYgdGhpcmQgc2Vjb25kCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcmViYXNlJyAnCiAJZ2l0IGJyYW5jaCB0by1yZWJhc2UgJiYKLQllY2hvIG1vZGlmaWVkIGFnYWluID4gZmlsZSAmJgorCWVjaG8gbW9kaWZpZWQgYWdhaW4gPmZpbGUgJiYKIAlnaXQgY29tbWl0IC1tIGZpbGUgZmlsZSAmJgogCWdpdCBjaGVja291dCB0by1yZWJhc2UgJiYKLQllY2hvIG5ldyA+IGZpbGUyICYmCisJZWNobyBuZXcgPmZpbGUyICYmCiAJZ2l0IGFkZCBmaWxlMiAmJgogCWdpdCBjb21taXQgLW0gIm5ldyBmaWxlIiAmJgogCWdpdCB0YWcgYmVmb3JlLXJlYmFzZSAmJgogCWdpdCBwdWxsIC0tcmViYXNlIC4gY29weSAmJgotCXRlc3QgIiQoZ2l0IHJldi1wYXJzZSBIRUFEXikiID0gIiQoZ2l0IHJldi1wYXJzZSBjb3B5KSIgJiYKLQl0ZXN0IG5ldyA9ICIkKGdpdCBzaG93IEhFQUQ6ZmlsZTIpIgorCXRlc3RfY21wX3JldiBIRUFEXiBjb3B5ICYmCisJZWNobyBuZXcgPmV4cGVjdCAmJgorCWdpdCBzaG93IEhFQUQ6ZmlsZTIgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1yZWJhc2UgZmFzdCBmb3J3YXJkJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXJlYmFzZSAobWVyZ2UpIGZhc3QgZm9yd2FyZCcgJwogCWdpdCByZXNldCAtLWhhcmQgYmVmb3JlLXJlYmFzZSAmJgogCWdpdCBjaGVja291dCAtYiBmZiAmJgogCWVjaG8gYW5vdGhlciBtb2RpZmljYXRpb24gPmZpbGUgJiYKIAlnaXQgY29tbWl0IC1tIHRoaXJkIGZpbGUgJiYKIAogCWdpdCBjaGVja291dCB0by1yZWJhc2UgJiYKLQlnaXQgcHVsbCAtLXJlYmFzZSAuIGZmICYmCi0JdGVzdCAiJChnaXQgcmV2LXBhcnNlIEhFQUQpIiA9ICIkKGdpdCByZXYtcGFyc2UgZmYpIiAmJgorCWdpdCAtYyByZWJhc2UuYmFja2VuZD1tZXJnZSBwdWxsIC0tcmViYXNlIC4gZmYgJiYKKwl0ZXN0X2NtcF9yZXYgSEVBRCBmZiAmJgorCisJIyBUaGUgYWJvdmUgb25seSB2YWxpZGF0ZXMgdGhlIHJlc3VsdC4gIERpZCB3ZSBhY3R1YWxseSBieXBhc3MgcmViYXNlPworCWdpdCByZWZsb2cgLTEgPnJlZmxvZy5hY3R1YWwgJiYKKwlzZWQgInMvXlswLTlhLWZdWzAtOWEtZl0qL09CSklELyIgcmVmbG9nLmFjdHVhbCA+cmVmbG9nLmZ1enp5ICYmCisJZWNobyAiT0JKSUQgSEVBREB7MH06IHB1bGwgLS1yZWJhc2UgLiBmZjogRmFzdC1mb3J3YXJkIiA+cmVmbG9nLmV4cGVjdGVkICYmCisJdGVzdF9jbXAgcmVmbG9nLmV4cGVjdGVkIHJlZmxvZy5mdXp6eQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXJlYmFzZSAoYW0pIGZhc3QgZm9yd2FyZCcgJworCWdpdCByZXNldCAtLWhhcmQgYmVmb3JlLXJlYmFzZSAmJgorCisJZ2l0IC1jIHJlYmFzZS5iYWNrZW5kPWFwcGx5IHB1bGwgLS1yZWJhc2UgLiBmZiAmJgorCXRlc3RfY21wX3JldiBIRUFEIGZmICYmCiAKIAkjIFRoZSBhYm92ZSBvbmx5IHZhbGlkYXRlcyB0aGUgcmVzdWx0LiAgRGlkIHdlIGFjdHVhbGx5IGJ5cGFzcyByZWJhc2U/CiAJZ2l0IHJlZmxvZyAtMSA+cmVmbG9nLmFjdHVhbCAmJgpAQCAtMjg3LDcgKzMyMiw3IEBACiAJZ2l0IGNoZWNrb3V0IGJlaGluZCAmJgogCWVjaG8gZGlydHkgPmZpbGUgJiYKIAlnaXQgcHVsbCAtLXJlYmFzZSAtLWF1dG9zdGFzaCAuIHRvLXJlYmFzZS1mZiAmJgotCXRlc3QgIiQoZ2l0IHJldi1wYXJzZSBIRUFEKSIgPSAiJChnaXQgcmV2LXBhcnNlIHRvLXJlYmFzZS1mZikiCisJdGVzdF9jbXBfcmV2IEhFQUQgdG8tcmViYXNlLWZmCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcmViYXNlIHdpdGggY29uZmxpY3RzIHNob3dzIGFkdmljZScgJwpAQCAtMzA1LDcgKzM0MCw3IEBACiAJdGVzdF90aWNrICYmCiAJZ2l0IGNvbW1pdCAtbSAiQ3JlYXRlIGNvbmZsaWN0IiBzZXEudHh0ICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHB1bGwgLS1yZWJhc2UgLiBzZXEgMj5lcnIgPm91dCAmJgotCXRlc3RfaTE4bmdyZXAgIlJlc29sdmUgYWxsIGNvbmZsaWN0cyBtYW51YWxseSIgb3V0CisJdGVzdF9pMThuZ3JlcCAiUmVzb2x2ZSBhbGwgY29uZmxpY3RzIG1hbnVhbGx5IiBlcnIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFpbGVkIC0tcmViYXNlIHNob3dzIGFkdmljZScgJwpAQCAtMzE5LDE1ICszNTQsMTcgQEAKIAlnaXQgY2hlY2tvdXQgLWYgLWIgZmFpbHMtdG8tcmViYXNlIEhFQUReICYmCiAJdGVzdF9jb21taXQgdjItd2l0aG91dC1jciBmaWxlICIyIiBmaWxlMi1sZiAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBwdWxsIC0tcmViYXNlIC4gZGl2ZXJnaW5nIDI+ZXJyID5vdXQgJiYKLQl0ZXN0X2kxOG5ncmVwICJSZXNvbHZlIGFsbCBjb25mbGljdHMgbWFudWFsbHkiIG91dAorCXRlc3RfaTE4bmdyZXAgIlJlc29sdmUgYWxsIGNvbmZsaWN0cyBtYW51YWxseSIgZXJyCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcmViYXNlIGZhaWxzIHdpdGggbXVsdGlwbGUgYnJhbmNoZXMnICcKIAlnaXQgcmVzZXQgLS1oYXJkIGJlZm9yZS1yZWJhc2UgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcHVsbCAtLXJlYmFzZSAuIGNvcHkgbWFzdGVyIDI+ZXJyICYmCi0JdGVzdCAiJChnaXQgcmV2LXBhcnNlIEhFQUQpIiA9ICIkKGdpdCByZXYtcGFyc2UgYmVmb3JlLXJlYmFzZSkiICYmCisJdGVzdF9jbXBfcmV2IEhFQUQgYmVmb3JlLXJlYmFzZSAmJgogCXRlc3RfaTE4bmdyZXAgIkNhbm5vdCByZWJhc2Ugb250byBtdWx0aXBsZSBicmFuY2hlcyIgZXJyICYmCi0JdGVzdCBtb2RpZmllZCA9ICIkKGdpdCBzaG93IEhFQUQ6ZmlsZSkiCisJZWNobyBtb2RpZmllZCA+ZXhwZWN0ICYmCisJZ2l0IHNob3cgSEVBRDpmaWxlID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1bGwgLS1yZWJhc2Ugc3VjY2VlZHMgd2l0aCBkaXJ0eSB3b3JraW5nIGRpcmVjdG9yeSBhbmQgcmViYXNlLmF1dG9zdGFzaCBzZXQnICcKQEAgLTM3Nyw4ICs0MTQsMTAgQEAKIAlnaXQgcmVzZXQgLS1oYXJkIGJlZm9yZS1yZWJhc2UgJiYKIAl0ZXN0X2NvbmZpZyBwdWxsLnJlYmFzZSB0cnVlICYmCiAJZ2l0IHB1bGwgLiBjb3B5ICYmCi0JdGVzdCAiJChnaXQgcmV2LXBhcnNlIEhFQUReKSIgPSAiJChnaXQgcmV2LXBhcnNlIGNvcHkpIiAmJgotCXRlc3QgbmV3ID0gIiQoZ2l0IHNob3cgSEVBRDpmaWxlMikiCisJdGVzdF9jbXBfcmV2IEhFQUReIGNvcHkgJiYKKwllY2hvIG5ldyA+ZXhwZWN0ICYmCisJZ2l0IHNob3cgSEVBRDpmaWxlMiA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdWxsIC0tYXV0b3N0YXNoICYgcHVsbC5yZWJhc2U9dHJ1ZScgJwpAQCAtMzk1LDggKzQzNCwxMCBAQAogCWdpdCByZXNldCAtLWhhcmQgYmVmb3JlLXJlYmFzZSAmJgogCXRlc3RfY29uZmlnIGJyYW5jaC50by1yZWJhc2UucmViYXNlIHRydWUgJiYKIAlnaXQgcHVsbCAuIGNvcHkgJiYKLQl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgSEVBRF4pIiA9ICIkKGdpdCByZXYtcGFyc2UgY29weSkiICYmCi0JdGVzdCBuZXcgPSAiJChnaXQgc2hvdyBIRUFEOmZpbGUyKSIKKwl0ZXN0X2NtcF9yZXYgSEVBRF4gY29weSAmJgorCWVjaG8gbmV3ID5leHBlY3QgJiYKKwlnaXQgc2hvdyBIRUFEOmZpbGUyID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2JyYW5jaC50by1yZWJhc2UucmViYXNlIHNob3VsZCBvdmVycmlkZSBwdWxsLnJlYmFzZScgJwpAQCAtNDA0LDIzICs0NDUsMjkgQEAKIAl0ZXN0X2NvbmZpZyBwdWxsLnJlYmFzZSB0cnVlICYmCiAJdGVzdF9jb25maWcgYnJhbmNoLnRvLXJlYmFzZS5yZWJhc2UgZmFsc2UgJiYKIAlnaXQgcHVsbCAuIGNvcHkgJiYKLQl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgSEVBRF4pIiAhPSAiJChnaXQgcmV2LXBhcnNlIGNvcHkpIiAmJgotCXRlc3QgbmV3ID0gIiQoZ2l0IHNob3cgSEVBRDpmaWxlMikiCisJdGVzdF9jbXBfcmV2ICEgSEVBRF4gY29weSAmJgorCWVjaG8gbmV3ID5leHBlY3QgJiYKKwlnaXQgc2hvdyBIRUFEOmZpbGUyID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgInB1bGwgLS1yZWJhc2Ugd2FybnMgb24gLS12ZXJpZnktc2lnbmF0dXJlcyIgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAncHVsbCAtLXJlYmFzZSB3YXJucyBvbiAtLXZlcmlmeS1zaWduYXR1cmVzJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCBiZWZvcmUtcmViYXNlICYmCiAJZ2l0IHB1bGwgLS1yZWJhc2UgLS12ZXJpZnktc2lnbmF0dXJlcyAuIGNvcHkgMj5lcnIgJiYKLQl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgSEVBRF4pIiA9ICIkKGdpdCByZXYtcGFyc2UgY29weSkiICYmCi0JdGVzdCBuZXcgPSAiJChnaXQgc2hvdyBIRUFEOmZpbGUyKSIgJiYKKwl0ZXN0X2NtcF9yZXYgSEVBRF4gY29weSAmJgorCWVjaG8gbmV3ID5leHBlY3QgJiYKKwlnaXQgc2hvdyBIRUFEOmZpbGUyID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAJdGVzdF9pMThuZ3JlcCAiaWdub3JpbmcgLS12ZXJpZnktc2lnbmF0dXJlcyBmb3IgcmViYXNlIiBlcnIKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAicHVsbCAtLXJlYmFzZSBkb2VzIG5vdCB3YXJuIG9uIC0tbm8tdmVyaWZ5LXNpZ25hdHVyZXMiICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1bGwgLS1yZWJhc2UgZG9lcyBub3Qgd2FybiBvbiAtLW5vLXZlcmlmeS1zaWduYXR1cmVzJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCBiZWZvcmUtcmViYXNlICYmCiAJZ2l0IHB1bGwgLS1yZWJhc2UgLS1uby12ZXJpZnktc2lnbmF0dXJlcyAuIGNvcHkgMj5lcnIgJiYKLQl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgSEVBRF4pIiA9ICIkKGdpdCByZXYtcGFyc2UgY29weSkiICYmCi0JdGVzdCBuZXcgPSAiJChnaXQgc2hvdyBIRUFEOmZpbGUyKSIgJiYKKwl0ZXN0X2NtcF9yZXYgSEVBRF4gY29weSAmJgorCWVjaG8gbmV3ID5leHBlY3QgJiYKKwlnaXQgc2hvdyBIRUFEOmZpbGUyID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAJdGVzdF9pMThuZ3JlcCAhICJ2ZXJpZnktc2lnbmF0dXJlcyIgZXJyCiAnCiAKQEAgLTQ0MCwyNSArNDg3LDMxIEBACiAJZ2l0IHJlc2V0IC0taGFyZCBiZWZvcmUtcHJlc2VydmUtcmViYXNlICYmCiAJdGVzdF9jb25maWcgcHVsbC5yZWJhc2UgZmFsc2UgJiYKIAlnaXQgcHVsbCAuIGNvcHkgJiYKLQl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgSEVBRF4xKSIgPSAiJChnaXQgcmV2LXBhcnNlIGJlZm9yZS1wcmVzZXJ2ZS1yZWJhc2UpIiAmJgotCXRlc3QgIiQoZ2l0IHJldi1wYXJzZSBIRUFEXjIpIiA9ICIkKGdpdCByZXYtcGFyc2UgY29weSkiICYmCi0JdGVzdCBmaWxlMyA9ICIkKGdpdCBzaG93IEhFQUQ6ZmlsZTMudCkiCisJdGVzdF9jbXBfcmV2IEhFQUReMSBiZWZvcmUtcHJlc2VydmUtcmViYXNlICYmCisJdGVzdF9jbXBfcmV2IEhFQUReMiBjb3B5ICYmCisJZWNobyBmaWxlMyA+ZXhwZWN0ICYmCisJZ2l0IHNob3cgSEVBRDpmaWxlMy50ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1bGwucmViYXNlPXRydWUgZmxhdHRlbnMga2VlcC1tZXJnZScgJwogCWdpdCByZXNldCAtLWhhcmQgYmVmb3JlLXByZXNlcnZlLXJlYmFzZSAmJgogCXRlc3RfY29uZmlnIHB1bGwucmViYXNlIHRydWUgJiYKIAlnaXQgcHVsbCAuIGNvcHkgJiYKLQl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgSEVBRF5eKSIgPSAiJChnaXQgcmV2LXBhcnNlIGNvcHkpIiAmJgotCXRlc3QgZmlsZTMgPSAiJChnaXQgc2hvdyBIRUFEOmZpbGUzLnQpIgorCXRlc3RfY21wX3JldiBIRUFEXl4gY29weSAmJgorCWVjaG8gZmlsZTMgPmV4cGVjdCAmJgorCWdpdCBzaG93IEhFQUQ6ZmlsZTMudCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdWxsLnJlYmFzZT0xIGlzIHRyZWF0ZWQgYXMgdHJ1ZSBhbmQgZmxhdHRlbnMga2VlcC1tZXJnZScgJwogCWdpdCByZXNldCAtLWhhcmQgYmVmb3JlLXByZXNlcnZlLXJlYmFzZSAmJgogCXRlc3RfY29uZmlnIHB1bGwucmViYXNlIDEgJiYKIAlnaXQgcHVsbCAuIGNvcHkgJiYKLQl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgSEVBRF5eKSIgPSAiJChnaXQgcmV2LXBhcnNlIGNvcHkpIiAmJgotCXRlc3QgZmlsZTMgPSAiJChnaXQgc2hvdyBIRUFEOmZpbGUzLnQpIgorCXRlc3RfY21wX3JldiBIRUFEXl4gY29weSAmJgorCWVjaG8gZmlsZTMgPmV4cGVjdCAmJgorCWdpdCBzaG93IEhFQUQ6ZmlsZTMudCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIFJFQkFTRV9QIFwKQEAgLTQ2Niw4ICs1MTksOCBAQAogCWdpdCByZXNldCAtLWhhcmQgYmVmb3JlLXByZXNlcnZlLXJlYmFzZSAmJgogCXRlc3RfY29uZmlnIHB1bGwucmViYXNlIHByZXNlcnZlICYmCiAJZ2l0IHB1bGwgLiBjb3B5ICYmCi0JdGVzdCAiJChnaXQgcmV2LXBhcnNlIEhFQUReXikiID0gIiQoZ2l0IHJldi1wYXJzZSBjb3B5KSIgJiYKLQl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgSEVBRF4yKSIgPSAiJChnaXQgcmV2LXBhcnNlIGtlZXAtbWVyZ2UpIgorCXRlc3RfY21wX3JldiBIRUFEXl4gY29weSAmJgorCXRlc3RfY21wX3JldiBIRUFEXjIga2VlcC1tZXJnZQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdWxsLnJlYmFzZT1pbnRlcmFjdGl2ZScgJwpAQCAtNDc4LDcgKzUzMSw4IEBACiAJdGVzdF9zZXRfZWRpdG9yICIkVFJBU0hfRElSRUNUT1JZL2Zha2UtZWRpdG9yIiAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAidGVzdF9taWdodF9mYWlsIGdpdCByZWJhc2UgLS1hYm9ydCIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcHVsbCAtLXJlYmFzZT1pbnRlcmFjdGl2ZSAuIGNvcHkgJiYKLQl0ZXN0ICJJIHdhcyBoZXJlIiA9ICIkKGNhdCBmYWtlLm91dCkiCisJZWNobyAiSSB3YXMgaGVyZSIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBmYWtlLm91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdWxsIC0tcmViYXNlPWknICcKQEAgLTQ4OSwzMCArNTQzLDM1IEBACiAJdGVzdF9zZXRfZWRpdG9yICIkVFJBU0hfRElSRUNUT1JZL2Zha2UtZWRpdG9yIiAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAidGVzdF9taWdodF9mYWlsIGdpdCByZWJhc2UgLS1hYm9ydCIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcHVsbCAtLXJlYmFzZT1pIC4gY29weSAmJgotCXRlc3QgIkkgd2FzIGhlcmUsIHRvbyIgPSAiJChjYXQgZmFrZS5vdXQpIgorCWVjaG8gIkkgd2FzIGhlcmUsIHRvbyIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBmYWtlLm91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdWxsLnJlYmFzZT1pbnZhbGlkIGZhaWxzJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCBiZWZvcmUtcHJlc2VydmUtcmViYXNlICYmCiAJdGVzdF9jb25maWcgcHVsbC5yZWJhc2UgaW52YWxpZCAmJgotCSEgZ2l0IHB1bGwgLiBjb3B5CisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHB1bGwgLiBjb3B5CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcmViYXNlPWZhbHNlIGNyZWF0ZSBhIG5ldyBtZXJnZSBjb21taXQnICcKIAlnaXQgcmVzZXQgLS1oYXJkIGJlZm9yZS1wcmVzZXJ2ZS1yZWJhc2UgJiYKIAl0ZXN0X2NvbmZpZyBwdWxsLnJlYmFzZSB0cnVlICYmCiAJZ2l0IHB1bGwgLS1yZWJhc2U9ZmFsc2UgLiBjb3B5ICYmCi0JdGVzdCAiJChnaXQgcmV2LXBhcnNlIEhFQUReMSkiID0gIiQoZ2l0IHJldi1wYXJzZSBiZWZvcmUtcHJlc2VydmUtcmViYXNlKSIgJiYKLQl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgSEVBRF4yKSIgPSAiJChnaXQgcmV2LXBhcnNlIGNvcHkpIiAmJgotCXRlc3QgZmlsZTMgPSAiJChnaXQgc2hvdyBIRUFEOmZpbGUzLnQpIgorCXRlc3RfY21wX3JldiBIRUFEXjEgYmVmb3JlLXByZXNlcnZlLXJlYmFzZSAmJgorCXRlc3RfY21wX3JldiBIRUFEXjIgY29weSAmJgorCWVjaG8gZmlsZTMgPmV4cGVjdCAmJgorCWdpdCBzaG93IEhFQUQ6ZmlsZTMudCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXJlYmFzZT10cnVlIHJlYmFzZXMgYW5kIGZsYXR0ZW5zIGtlZXAtbWVyZ2UnICcKIAlnaXQgcmVzZXQgLS1oYXJkIGJlZm9yZS1wcmVzZXJ2ZS1yZWJhc2UgJiYKIAl0ZXN0X2NvbmZpZyBwdWxsLnJlYmFzZSBwcmVzZXJ2ZSAmJgogCWdpdCBwdWxsIC0tcmViYXNlPXRydWUgLiBjb3B5ICYmCi0JdGVzdCAiJChnaXQgcmV2LXBhcnNlIEhFQUReXikiID0gIiQoZ2l0IHJldi1wYXJzZSBjb3B5KSIgJiYKLQl0ZXN0IGZpbGUzID0gIiQoZ2l0IHNob3cgSEVBRDpmaWxlMy50KSIKKwl0ZXN0X2NtcF9yZXYgSEVBRF5eIGNvcHkgJiYKKwllY2hvIGZpbGUzID5leHBlY3QgJiYKKwlnaXQgc2hvdyBIRUFEOmZpbGUzLnQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBSRUJBU0VfUCBcCkBAIC01MjAsNTggKzU3OSw2MiBAQAogCWdpdCByZXNldCAtLWhhcmQgYmVmb3JlLXByZXNlcnZlLXJlYmFzZSAmJgogCXRlc3RfY29uZmlnIHB1bGwucmViYXNlIHRydWUgJiYKIAlnaXQgcHVsbCAtLXJlYmFzZT1wcmVzZXJ2ZSAuIGNvcHkgJiYKLQl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgSEVBRF5eKSIgPSAiJChnaXQgcmV2LXBhcnNlIGNvcHkpIiAmJgotCXRlc3QgIiQoZ2l0IHJldi1wYXJzZSBIRUFEXjIpIiA9ICIkKGdpdCByZXYtcGFyc2Uga2VlcC1tZXJnZSkiCisJdGVzdF9jbXBfcmV2IEhFQUReXiBjb3B5ICYmCisJdGVzdF9jbXBfcmV2IEhFQUReMiBrZWVwLW1lcmdlCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcmViYXNlPWludmFsaWQgZmFpbHMnICcKIAlnaXQgcmVzZXQgLS1oYXJkIGJlZm9yZS1wcmVzZXJ2ZS1yZWJhc2UgJiYKLQkhIGdpdCBwdWxsIC0tcmViYXNlPWludmFsaWQgLiBjb3B5CisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHB1bGwgLS1yZWJhc2U9aW52YWxpZCAuIGNvcHkKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1yZWJhc2Ugb3ZlcnJpZGVzIHB1bGwucmViYXNlPXByZXNlcnZlIGFuZCBmbGF0dGVucyBrZWVwLW1lcmdlJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCBiZWZvcmUtcHJlc2VydmUtcmViYXNlICYmCiAJdGVzdF9jb25maWcgcHVsbC5yZWJhc2UgcHJlc2VydmUgJiYKIAlnaXQgcHVsbCAtLXJlYmFzZSAuIGNvcHkgJiYKLQl0ZXN0ICIkKGdpdCByZXYtcGFyc2UgSEVBRF5eKSIgPSAiJChnaXQgcmV2LXBhcnNlIGNvcHkpIiAmJgotCXRlc3QgZmlsZTMgPSAiJChnaXQgc2hvdyBIRUFEOmZpbGUzLnQpIgorCXRlc3RfY21wX3JldiBIRUFEXl4gY29weSAmJgorCWVjaG8gZmlsZTMgPmV4cGVjdCAmJgorCWdpdCBzaG93IEhFQUQ6ZmlsZTMudCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXJlYmFzZSB3aXRoIHJlYmFzZWQgdXBzdHJlYW0nICcKLQogCWdpdCByZW1vdGUgYWRkIC1mIG1lIC4gJiYKIAlnaXQgY2hlY2tvdXQgY29weSAmJgogCWdpdCB0YWcgY29weS1vcmlnICYmCiAJZ2l0IHJlc2V0IC0taGFyZCBIRUFEXiAmJgotCWVjaG8gY29uZmxpY3RpbmcgbW9kaWZpY2F0aW9uID4gZmlsZSAmJgorCWVjaG8gY29uZmxpY3RpbmcgbW9kaWZpY2F0aW9uID5maWxlICYmCiAJZ2l0IGNvbW1pdCAtbSBjb25mbGljdCBmaWxlICYmCiAJZ2l0IGNoZWNrb3V0IHRvLXJlYmFzZSAmJgotCWVjaG8gZmlsZSA+IGZpbGUyICYmCisJZWNobyBmaWxlID5maWxlMiAmJgogCWdpdCBjb21taXQgLW0gdG8tcmViYXNlIGZpbGUyICYmCiAJZ2l0IHRhZyB0by1yZWJhc2Utb3JpZyAmJgogCWdpdCBwdWxsIC0tcmViYXNlIG1lIGNvcHkgJiYKLQl0ZXN0ICJjb25mbGljdGluZyBtb2RpZmljYXRpb24iID0gIiQoY2F0IGZpbGUpIiAmJgotCXRlc3QgZmlsZSA9ICIkKGNhdCBmaWxlMikiCi0KKwllY2hvICJjb25mbGljdGluZyBtb2RpZmljYXRpb24iID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZSAmJgorCWVjaG8gZmlsZSA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUyCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcmViYXNlIC1mIHdpdGggcmViYXNlZCB1cHN0cmVhbScgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCAidGVzdF9taWdodF9mYWlsIGdpdCByZWJhc2UgLS1hYm9ydCIgJiYKIAlnaXQgcmVzZXQgLS1oYXJkIHRvLXJlYmFzZS1vcmlnICYmCiAJZ2l0IHB1bGwgLS1yZWJhc2UgLWYgbWUgY29weSAmJgotCXRlc3QgImNvbmZsaWN0aW5nIG1vZGlmaWNhdGlvbiIgPSAiJChjYXQgZmlsZSkiICYmCi0JdGVzdCBmaWxlID0gIiQoY2F0IGZpbGUyKSIKKwllY2hvICJjb25mbGljdGluZyBtb2RpZmljYXRpb24iID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZSAmJgorCWVjaG8gZmlsZSA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUyCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcmViYXNlIHdpdGggcmViYXNlZCBkZWZhdWx0IHVwc3RyZWFtJyAnCi0KIAlnaXQgdXBkYXRlLXJlZiByZWZzL3JlbW90ZXMvbWUvY29weSBjb3B5LW9yaWcgJiYKIAlnaXQgY2hlY2tvdXQgLS10cmFjayAtYiB0by1yZWJhc2UyIG1lL2NvcHkgJiYKIAlnaXQgcmVzZXQgLS1oYXJkIHRvLXJlYmFzZS1vcmlnICYmCiAJZ2l0IHB1bGwgLS1yZWJhc2UgJiYKLQl0ZXN0ICJjb25mbGljdGluZyBtb2RpZmljYXRpb24iID0gIiQoY2F0IGZpbGUpIiAmJgotCXRlc3QgZmlsZSA9ICIkKGNhdCBmaWxlMikiCi0KKwllY2hvICJjb25mbGljdGluZyBtb2RpZmljYXRpb24iID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZSAmJgorCWVjaG8gZmlsZSA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUyCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlYmFzZWQgdXBzdHJlYW0gKyBmZXRjaCArIHB1bGwgLS1yZWJhc2UnICcKQEAgLTU4MiwxMyArNjQ1LDE0IEBACiAJZ2l0IHJlc2V0IC0taGFyZCB0by1yZWJhc2Utb3JpZyAmJgogCWdpdCBmZXRjaCAmJgogCWdpdCBwdWxsIC0tcmViYXNlICYmCi0JdGVzdCAiY29uZmxpY3RpbmcgbW9kaWZpY2F0aW9uIiA9ICIkKGNhdCBmaWxlKSIgJiYKLQl0ZXN0IGZpbGUgPSAiJChjYXQgZmlsZTIpIgorCWVjaG8gImNvbmZsaWN0aW5nIG1vZGlmaWNhdGlvbiIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBmaWxlICYmCisJZWNobyBmaWxlID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZTIKIAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdWxsIC0tcmViYXNlIGRpZXMgZWFybHkgd2l0aCBkaXJ0eSB3b3JraW5nIGRpcmVjdG9yeScgJwotCiAJZ2l0IGNoZWNrb3V0IHRvLXJlYmFzZSAmJgogCWdpdCB1cGRhdGUtcmVmIHJlZnMvcmVtb3Rlcy9tZS9jb3B5IGNvcHleICYmCiAJQ09QWT0iJChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IG1lL2NvcHkpIiAmJgpAQCAtNTk2LDIzICs2NjAsMjMgQEAKIAl0ZXN0X2NvbmZpZyBicmFuY2gudG8tcmViYXNlLnJlbW90ZSBtZSAmJgogCXRlc3RfY29uZmlnIGJyYW5jaC50by1yZWJhc2UubWVyZ2UgcmVmcy9oZWFkcy9jb3B5ICYmCiAJdGVzdF9jb25maWcgYnJhbmNoLnRvLXJlYmFzZS5yZWJhc2UgdHJ1ZSAmJgotCWVjaG8gZGlydHkgPj4gZmlsZSAmJgorCWVjaG8gZGlydHkgPj5maWxlICYmCiAJZ2l0IGFkZCBmaWxlICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHB1bGwgJiYKLQl0ZXN0ICIkQ09QWSIgPSAiJChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IG1lL2NvcHkpIiAmJgorCXRlc3RfY21wX3JldiAiJENPUFkiIG1lL2NvcHkgJiYKIAlnaXQgY2hlY2tvdXQgSEVBRCAtLSBmaWxlICYmCiAJZ2l0IHB1bGwgJiYKLQl0ZXN0ICIkQ09QWSIgIT0gIiQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBtZS9jb3B5KSIKLQorCXRlc3RfY21wX3JldiAhICIkQ09QWSIgbWUvY29weQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdWxsIC0tcmViYXNlIHdvcmtzIG9uIGJyYW5jaCB5ZXQgdG8gYmUgYm9ybicgJwogCWdpdCByZXYtcGFyc2UgbWFzdGVyID5leHBlY3QgJiYKIAlta2RpciBlbXB0eV9yZXBvICYmCi0JKGNkIGVtcHR5X3JlcG8gJiYKLQkgZ2l0IGluaXQgJiYKLQkgZ2l0IHB1bGwgLS1yZWJhc2UgLi4gbWFzdGVyICYmCi0JIGdpdCByZXYtcGFyc2UgSEVBRCA+Li4vYWN0dWFsCisJKAorCQljZCBlbXB0eV9yZXBvICYmCisJCWdpdCBpbml0ICYmCisJCWdpdCBwdWxsIC0tcmViYXNlIC4uIG1hc3RlciAmJgorCQlnaXQgcmV2LXBhcnNlIEhFQUQgPi4uL2FjdHVhbAogCSkgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC02MjQsMTAgKzY4OCwxNCBAQAogCQljZCBlbXB0eV9yZXBvMiAmJgogCQllY2hvIHN0YWdlZC1maWxlID5zdGFnZWQtZmlsZSAmJgogCQlnaXQgYWRkIHN0YWdlZC1maWxlICYmCi0JCXRlc3QgIiQoZ2l0IGxzLWZpbGVzKSIgPSBzdGFnZWQtZmlsZSAmJgorCQllY2hvIHN0YWdlZC1maWxlID5leHBlY3QgJiYKKwkJZ2l0IGxzLWZpbGVzID5hY3R1YWwgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgogCQl0ZXN0X211c3RfZmFpbCBnaXQgcHVsbCAtLXJlYmFzZSAuLiBtYXN0ZXIgMj5lcnIgJiYKLQkJdGVzdCAiJChnaXQgbHMtZmlsZXMpIiA9IHN0YWdlZC1maWxlICYmCi0JCXRlc3QgIiQoZ2l0IHNob3cgOnN0YWdlZC1maWxlKSIgPSBzdGFnZWQtZmlsZSAmJgorCQlnaXQgbHMtZmlsZXMgPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJCWdpdCBzaG93IDpzdGFnZWQtZmlsZSA+YWN0dWFsICYmCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAkJdGVzdF9pMThuZ3JlcCAidW5ib3JuIGJyYW5jaCB3aXRoIGNoYW5nZXMgYWRkZWQgdG8gdGhlIGluZGV4IiBlcnIKIAkpCiAnCkBAIC02MzgsNyArNzA2LDggQEAKIAkoCiAJCWNkIGNvcnJ1cHQgJiYKIAkJdGVzdF9jb21taXQgb25lICYmCi0JCW9iaj0kKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgSEVBRCB8IHNlZCAicyNeLi4jJi8jIikgJiYKKwkJZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBIRUFEID5oZWFkICYmCisJCW9iaj0kKHNlZCAicyNeLi4jJi8jIiBoZWFkKSAmJgogCQlybSAtZiAuZ2l0L29iamVjdHMvJG9iaiAmJgogCQl0ZXN0X211c3RfZmFpbCBnaXQgcHVsbCAtLXJlYmFzZQogCSkKQEAgLTY0Niw2NiArNzE1LDc5IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIGZvciBkZXRlY3RpbmcgdXBzdHJlYW1lZCBjaGFuZ2VzJyAnCiAJbWtkaXIgc3JjICYmCi0JKGNkIHNyYyAmJgotCSBnaXQgaW5pdCAmJgotCSBwcmludGYgIjFcbjJcbjNcbjRcbjVcbjZcbjdcbjhcbjlcbjEwXG4iID4gc3R1ZmYgJiYKLQkgZ2l0IGFkZCBzdHVmZiAmJgotCSBnaXQgY29tbWl0IC1tICJJbml0aWFsIHJldmlzaW9uIgorCSgKKwkJY2Qgc3JjICYmCisJCWdpdCBpbml0ICYmCisJCXByaW50ZiAiMVxuMlxuM1xuNFxuNVxuNlxuN1xuOFxuOVxuMTBcbiIgPiBzdHVmZiAmJgorCQlnaXQgYWRkIHN0dWZmICYmCisJCWdpdCBjb21taXQgLW0gIkluaXRpYWwgcmV2aXNpb24iCiAJKSAmJgogCWdpdCBjbG9uZSBzcmMgZHN0ICYmCi0JKGNkIHNyYyAmJgotCSBtb2RpZnkgcy81LzQzLyBzdHVmZiAmJgotCSBnaXQgY29tbWl0IC1hIC1tICI1LT40MyIgJiYKLQkgbW9kaWZ5IHMvNi80Mi8gc3R1ZmYgJiYKLQkgZ2l0IGNvbW1pdCAtYSAtbSAiTWFrZSBpdCBiaWdnZXIiCisJKAorCQljZCBzcmMgJiYKKwkJbW9kaWZ5IHMvNS80My8gc3R1ZmYgJiYKKwkJZ2l0IGNvbW1pdCAtYSAtbSAiNS0+NDMiICYmCisJCW1vZGlmeSBzLzYvNDIvIHN0dWZmICYmCisJCWdpdCBjb21taXQgLWEgLW0gIk1ha2UgaXQgYmlnZ2VyIgogCSkgJiYKLQkoY2QgZHN0ICYmCi0JIG1vZGlmeSBzLzUvNDMvIHN0dWZmICYmCi0JIGdpdCBjb21taXQgLWEgLW0gIkluZGVwZW5kZW50IGRpc2NvdmVyeSBvZiA1LT40MyIKKwkoCisJCWNkIGRzdCAmJgorCQltb2RpZnkgcy81LzQzLyBzdHVmZiAmJgorCQlnaXQgY29tbWl0IC1hIC1tICJJbmRlcGVuZGVudCBkaXNjb3Zlcnkgb2YgNS0+NDMiCiAJKQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgcHVsbCAtLXJlYmFzZSBkZXRlY3RzIHVwc3RyZWFtZWQgY2hhbmdlcycgJwotCShjZCBkc3QgJiYKLQkgZ2l0IHB1bGwgLS1yZWJhc2UgJiYKLQkgdGVzdCAteiAiJChnaXQgbHMtZmlsZXMgLXUpIgorCSgKKwkJY2QgZHN0ICYmCisJCWdpdCBwdWxsIC0tcmViYXNlICYmCisJCWdpdCBscy1maWxlcyAtdSA+dW50cmFja2VkICYmCisJCXRlc3RfbXVzdF9iZV9lbXB0eSB1bnRyYWNrZWQKIAkpCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIGZvciBhdm9pZGluZyByZWFwcGx5aW5nIG9sZCBwYXRjaGVzJyAnCi0JKGNkIGRzdCAmJgotCSB0ZXN0X21pZ2h0X2ZhaWwgZ2l0IHJlYmFzZSAtLWFib3J0ICYmCi0JIGdpdCByZXNldCAtLWhhcmQgb3JpZ2luL21hc3RlcgorCSgKKwkJY2QgZHN0ICYmCisJCXRlc3RfbWlnaHRfZmFpbCBnaXQgcmViYXNlIC0tYWJvcnQgJiYKKwkJZ2l0IHJlc2V0IC0taGFyZCBvcmlnaW4vbWFzdGVyCiAJKSAmJgogCWdpdCBjbG9uZSAtLWJhcmUgc3JjIHNyYy1yZXBsYWNlLmdpdCAmJgogCXJtIC1yZiBzcmMgJiYKIAltdiBzcmMtcmVwbGFjZS5naXQgc3JjICYmCi0JKGNkIGRzdCAmJgotCSBtb2RpZnkgcy8yLzIyLyBzdHVmZiAmJgotCSBnaXQgY29tbWl0IC1hIC1tICJDaGFuZ2UgMiIgJiYKLQkgbW9kaWZ5IHMvMy8zMy8gc3R1ZmYgJiYKLQkgZ2l0IGNvbW1pdCAtYSAtbSAiQ2hhbmdlIDMiICYmCi0JIG1vZGlmeSBzLzQvNDQvIHN0dWZmICYmCi0JIGdpdCBjb21taXQgLWEgLW0gIkNoYW5nZSA0IiAmJgotCSBnaXQgcHVzaCAmJgorCSgKKwkJY2QgZHN0ICYmCisJCW1vZGlmeSBzLzIvMjIvIHN0dWZmICYmCisJCWdpdCBjb21taXQgLWEgLW0gIkNoYW5nZSAyIiAmJgorCQltb2RpZnkgcy8zLzMzLyBzdHVmZiAmJgorCQlnaXQgY29tbWl0IC1hIC1tICJDaGFuZ2UgMyIgJiYKKwkJbW9kaWZ5IHMvNC80NC8gc3R1ZmYgJiYKKwkJZ2l0IGNvbW1pdCAtYSAtbSAiQ2hhbmdlIDQiICYmCisJCWdpdCBwdXNoICYmCiAKLQkgbW9kaWZ5IHMvNDQvNTUvIHN0dWZmICYmCi0JIGdpdCBjb21taXQgLS1hbWVuZCAtYSAtbSAiTW9kaWZpZWQgQ2hhbmdlIDQiCisJCW1vZGlmeSBzLzQ0LzU1LyBzdHVmZiAmJgorCQlnaXQgY29tbWl0IC0tYW1lbmQgLWEgLW0gIk1vZGlmaWVkIENoYW5nZSA0IgogCSkKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IHB1bGwgLS1yZWJhc2UgZG9lcyBub3QgcmVhcHBseSBvbGQgcGF0Y2hlcycgJwotCShjZCBkc3QgJiYKLQkgdGVzdF9tdXN0X2ZhaWwgZ2l0IHB1bGwgLS1yZWJhc2UgJiYKLQkgdGVzdCAxID0gJChmaW5kIC5naXQvcmViYXNlLWFwcGx5IC1uYW1lICIwMDAqIiB8IHdjIC1sKQorCSgKKwkJY2QgZHN0ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBwdWxsIC0tcmViYXNlICYmCisJCWNhdCAuZ2l0L3JlYmFzZS1tZXJnZS9kb25lIC5naXQvcmViYXNlLW1lcmdlL2dpdC1yZWJhc2UtdG9kbyA+d29yayAmJgorCQlncmVwIC12IC1lIFwjIC1lIF4kIHdvcmsgPnBhdGNoZXMgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMSBwYXRjaGVzICYmCisJCXJtIC1mIHdvcmsKIAkpCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBwdWxsIC0tcmViYXNlIGFnYWluc3QgbG9jYWwgYnJhbmNoJyAnCiAJZ2l0IGNoZWNrb3V0IC1iIGNvcHkyIHRvLXJlYmFzZS1vcmlnICYmCiAJZ2l0IHB1bGwgLS1yZWJhc2UgLiB0by1yZWJhc2UgJiYKLQl0ZXN0ICJjb25mbGljdGluZyBtb2RpZmljYXRpb24iID0gIiQoY2F0IGZpbGUpIiAmJgotCXRlc3QgZmlsZSA9ICIkKGNhdCBmaWxlMikiCisJZWNobyAiY29uZmxpY3RpbmcgbW9kaWZpY2F0aW9uIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUgJiYKKwllY2hvIGZpbGUgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBmaWxlMgogJwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU1MjEtcHVsbC1vcHRpb25zLnNoIGIvdC90NTUyMS1wdWxsLW9wdGlvbnMuc2gKaW5kZXggYzE5ZDhkYi4uY2NkZThiYSAxMDA3NTUKLS0tIGEvdC90NTUyMS1wdWxsLW9wdGlvbnMuc2gKKysrIGIvdC90NTUyMS1wdWxsLW9wdGlvbnMuc2gKQEAgLTc3LDYgKzc3LDE0IEBACiAJdGVzdF9tdXN0X2JlX2VtcHR5IG91dCAmJgogCXRlc3QgLXMgZXJyKQogJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IHB1bGwgLS1jbGVhbnVwIGVycm9ycyBlYXJseSBvbiBpbnZhbGlkIGFyZ3VtZW50JyAnCisJbWtkaXIgY2xvbmVkY2xlYW51cCAmJgorCShjZCBjbG9uZWRjbGVhbnVwICYmIGdpdCBpbml0ICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHB1bGwgLS1jbGVhbnVwIGludmFsaWQgIi4uL3BhcmVudCIgPm91dCAyPmVyciAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXQgJiYKKwl0ZXN0IC1zIGVycikKKycKKwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgcHVsbCAtLWZvcmNlJyAnCiAJbWtkaXIgY2xvbmVkb2xkc3R5bGUgJiYKZGlmZiAtLWdpdCBhL3QvdDU1MjYtZmV0Y2gtc3VibW9kdWxlcy5zaCBiL3QvdDU1MjYtZmV0Y2gtc3VibW9kdWxlcy5zaAppbmRleCA2YzJmOWIyLi42MzIwNWRmIDEwMDc1NQotLS0gYS90L3Q1NTI2LWZldGNoLXN1Ym1vZHVsZXMuc2gKKysrIGIvdC90NTUyNi1mZXRjaC1zdWJtb2R1bGVzLnNoCkBAIC01MjQsNiArNTI0LDggQEAKIAlnaXQgY29uZmlnIGZldGNoLnJlY3Vyc2VTdWJtb2R1bGVzIHRydWUgJiYKIAkoCiAJCWNkIGRvd25zdHJlYW0gJiYKKwkJR0lUX1RSQUNFPSQocHdkKS90cmFjZS5vdXQgZ2l0IGZldGNoICYmCisJCWdyZXAgIjEgdGFza3MiIHRyYWNlLm91dCAmJgogCQlHSVRfVFJBQ0U9JChwd2QpL3RyYWNlLm91dCBnaXQgZmV0Y2ggLS1qb2JzIDcgJiYKIAkJZ3JlcCAiNyB0YXNrcyIgdHJhY2Uub3V0ICYmCiAJCWdpdCBjb25maWcgc3VibW9kdWxlLmZldGNoSm9icyA4ICYmCkBAIC02MDAsNCArNjAyLDEyMSBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAiZmV0Y2ggbmV3IHN1Ym1vZHVsZSBjb21taXRzIG9uLWRlbWFuZCBvdXRzaWRlIHN0YW5kYXJkIHJlZnNwZWMiICcKKwkjIGFkZCBhIHNlY29uZCBzdWJtb2R1bGUgYW5kIGVuc3VyZSBpdCBpcyBhcm91bmQgaW4gZG93bnN0cmVhbSBmaXJzdAorCWdpdCBjbG9uZSBzdWJtb2R1bGUgc3ViMSAmJgorCWdpdCBzdWJtb2R1bGUgYWRkIC4vc3ViMSAmJgorCWdpdCBjb21taXQgLW0gImFkZGluZyBhIHNlY29uZCBzdWJtb2R1bGUiICYmCisJZ2l0IC1DIGRvd25zdHJlYW0gcHVsbCAmJgorCWdpdCAtQyBkb3duc3RyZWFtIHN1Ym1vZHVsZSB1cGRhdGUgLS1pbml0IC0tcmVjdXJzaXZlICYmCisKKwlnaXQgY2hlY2tvdXQgLS1kZXRhY2ggJiYKKworCUM9JChnaXQgLUMgc3VibW9kdWxlIGNvbW1pdC10cmVlIC1tICJuZXcgY2hhbmdlIG91dHNpZGUgcmVmcy9oZWFkcyIgSEVBRF57dHJlZX0pICYmCisJZ2l0IC1DIHN1Ym1vZHVsZSB1cGRhdGUtcmVmIHJlZnMvY2hhbmdlcy8xICRDICYmCisJZ2l0IHVwZGF0ZS1pbmRleCAtLWNhY2hlaW5mbyAxNjAwMDAgJEMgc3VibW9kdWxlICYmCisJdGVzdF90aWNrICYmCisKKwlEPSQoZ2l0IC1DIHN1YjEgY29tbWl0LXRyZWUgLW0gIm5ldyBjaGFuZ2Ugb3V0c2lkZSByZWZzL2hlYWRzIiBIRUFEXnt0cmVlfSkgJiYKKwlnaXQgLUMgc3ViMSB1cGRhdGUtcmVmIHJlZnMvY2hhbmdlcy8yICREICYmCisJZ2l0IHVwZGF0ZS1pbmRleCAtLWNhY2hlaW5mbyAxNjAwMDAgJEQgc3ViMSAmJgorCisJZ2l0IGNvbW1pdCAtbSAidXBkYXRlZCBzdWJtb2R1bGVzIG91dHNpZGUgb2YgcmVmcy9oZWFkcyIgJiYKKwlFPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCWdpdCB1cGRhdGUtcmVmIHJlZnMvY2hhbmdlcy8zICRFICYmCisJKAorCQljZCBkb3duc3RyZWFtICYmCisJCWdpdCBmZXRjaCAtLXJlY3Vyc2Utc3VibW9kdWxlcyBvcmlnaW4gcmVmcy9jaGFuZ2VzLzM6cmVmcy9oZWFkcy9teV9icmFuY2ggJiYKKwkJZ2l0IC1DIHN1Ym1vZHVsZSBjYXQtZmlsZSAtdCAkQyAmJgorCQlnaXQgLUMgc3ViMSBjYXQtZmlsZSAtdCAkRCAmJgorCQlnaXQgY2hlY2tvdXQgLS1yZWN1cnNlLXN1Ym1vZHVsZXMgRkVUQ0hfSEVBRAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2ggbmV3IHN1Ym1vZHVsZSBjb21taXQgb24tZGVtYW5kIGluIEZFVENIX0hFQUQnICcKKwkjIGRlcGVuZHMgb24gdGhlIHByZXZpb3VzIHRlc3QgZm9yIHNldHVwCisKKwlDPSQoZ2l0IC1DIHN1Ym1vZHVsZSBjb21taXQtdHJlZSAtbSAiYW5vdGhlciBjaGFuZ2Ugb3V0c2lkZSByZWZzL2hlYWRzIiBIRUFEXnt0cmVlfSkgJiYKKwlnaXQgLUMgc3VibW9kdWxlIHVwZGF0ZS1yZWYgcmVmcy9jaGFuZ2VzLzQgJEMgJiYKKwlnaXQgdXBkYXRlLWluZGV4IC0tY2FjaGVpbmZvIDE2MDAwMCAkQyBzdWJtb2R1bGUgJiYKKwl0ZXN0X3RpY2sgJiYKKworCUQ9JChnaXQgLUMgc3ViMSBjb21taXQtdHJlZSAtbSAiYW5vdGhlciBjaGFuZ2Ugb3V0c2lkZSByZWZzL2hlYWRzIiBIRUFEXnt0cmVlfSkgJiYKKwlnaXQgLUMgc3ViMSB1cGRhdGUtcmVmIHJlZnMvY2hhbmdlcy81ICREICYmCisJZ2l0IHVwZGF0ZS1pbmRleCAtLWNhY2hlaW5mbyAxNjAwMDAgJEQgc3ViMSAmJgorCisJZ2l0IGNvbW1pdCAtbSAidXBkYXRlZCBzdWJtb2R1bGVzIG91dHNpZGUgb2YgcmVmcy9oZWFkcyIgJiYKKwlFPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCWdpdCB1cGRhdGUtcmVmIHJlZnMvY2hhbmdlcy82ICRFICYmCisJKAorCQljZCBkb3duc3RyZWFtICYmCisJCWdpdCBmZXRjaCAtLXJlY3Vyc2Utc3VibW9kdWxlcyBvcmlnaW4gcmVmcy9jaGFuZ2VzLzYgJiYKKwkJZ2l0IC1DIHN1Ym1vZHVsZSBjYXQtZmlsZSAtdCAkQyAmJgorCQlnaXQgLUMgc3ViMSBjYXQtZmlsZSAtdCAkRCAmJgorCQlnaXQgY2hlY2tvdXQgLS1yZWN1cnNlLXN1Ym1vZHVsZXMgRkVUQ0hfSEVBRAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2ggbmV3IHN1Ym1vZHVsZSBjb21taXRzIG9uLWRlbWFuZCB3aXRob3V0IC5naXRtb2R1bGVzIGVudHJ5JyAnCisJIyBkZXBlbmRzIG9uIHRoZSBwcmV2aW91cyB0ZXN0IGZvciBzZXR1cAorCisJZ2l0IGNvbmZpZyAtZiAuZ2l0bW9kdWxlcyAtLXJlbW92ZS1zZWN0aW9uIHN1Ym1vZHVsZS5zdWIxICYmCisJZ2l0IGFkZCAuZ2l0bW9kdWxlcyAmJgorCWdpdCBjb21taXQgLW0gImRlbGV0ZSBnaXRtb2R1bGVzIGZpbGUiICYmCisJZ2l0IGNoZWNrb3V0IC1CIG1hc3RlciAmJgorCWdpdCAtQyBkb3duc3RyZWFtIGZldGNoICYmCisJZ2l0IC1DIGRvd25zdHJlYW0gY2hlY2tvdXQgb3JpZ2luL21hc3RlciAmJgorCisJQz0kKGdpdCAtQyBzdWJtb2R1bGUgY29tbWl0LXRyZWUgLW0gInlldCBhbm90aGVyIGNoYW5nZSBvdXRzaWRlIHJlZnMvaGVhZHMiIEhFQURee3RyZWV9KSAmJgorCWdpdCAtQyBzdWJtb2R1bGUgdXBkYXRlLXJlZiByZWZzL2NoYW5nZXMvNyAkQyAmJgorCWdpdCB1cGRhdGUtaW5kZXggLS1jYWNoZWluZm8gMTYwMDAwICRDIHN1Ym1vZHVsZSAmJgorCXRlc3RfdGljayAmJgorCisJRD0kKGdpdCAtQyBzdWIxIGNvbW1pdC10cmVlIC1tICJ5ZXQgYW5vdGhlciBjaGFuZ2Ugb3V0c2lkZSByZWZzL2hlYWRzIiBIRUFEXnt0cmVlfSkgJiYKKwlnaXQgLUMgc3ViMSB1cGRhdGUtcmVmIHJlZnMvY2hhbmdlcy84ICREICYmCisJZ2l0IHVwZGF0ZS1pbmRleCAtLWNhY2hlaW5mbyAxNjAwMDAgJEQgc3ViMSAmJgorCisJZ2l0IGNvbW1pdCAtbSAidXBkYXRlZCBzdWJtb2R1bGVzIG91dHNpZGUgb2YgcmVmcy9oZWFkcyIgJiYKKwlFPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCWdpdCB1cGRhdGUtcmVmIHJlZnMvY2hhbmdlcy85ICRFICYmCisJKAorCQljZCBkb3duc3RyZWFtICYmCisJCWdpdCBmZXRjaCAtLXJlY3Vyc2Utc3VibW9kdWxlcyBvcmlnaW4gcmVmcy9jaGFuZ2VzLzkgJiYKKwkJZ2l0IC1DIHN1Ym1vZHVsZSBjYXQtZmlsZSAtdCAkQyAmJgorCQlnaXQgLUMgc3ViMSBjYXQtZmlsZSAtdCAkRCAmJgorCQlnaXQgY2hlY2tvdXQgLS1yZWN1cnNlLXN1Ym1vZHVsZXMgRkVUQ0hfSEVBRAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2ggbmV3IHN1Ym1vZHVsZSBjb21taXQgaW50ZXJtaXR0ZW50bHkgcmVmZXJlbmNlZCBieSBzdXBlcnByb2plY3QnICcKKwkjIGRlcGVuZHMgb24gdGhlIHByZXZpb3VzIHRlc3QgZm9yIHNldHVwCisKKwlEPSQoZ2l0IC1DIHN1YjEgY29tbWl0LXRyZWUgLW0gImNoYW5nZSAxMCBvdXRzaWRlIHJlZnMvaGVhZHMiIEhFQURee3RyZWV9KSAmJgorCUU9JChnaXQgLUMgc3ViMSBjb21taXQtdHJlZSAtbSAiY2hhbmdlIDExIG91dHNpZGUgcmVmcy9oZWFkcyIgSEVBRF57dHJlZX0pICYmCisJRj0kKGdpdCAtQyBzdWIxIGNvbW1pdC10cmVlIC1tICJjaGFuZ2UgMTIgb3V0c2lkZSByZWZzL2hlYWRzIiBIRUFEXnt0cmVlfSkgJiYKKworCWdpdCAtQyBzdWIxIHVwZGF0ZS1yZWYgcmVmcy9jaGFuZ2VzLzEwICREICYmCisJZ2l0IHVwZGF0ZS1pbmRleCAtLWNhY2hlaW5mbyAxNjAwMDAgJEQgc3ViMSAmJgorCWdpdCBjb21taXQgLW0gInVwZGF0ZWQgc3VibW9kdWxlcyBvdXRzaWRlIG9mIHJlZnMvaGVhZHMiICYmCisKKwlnaXQgLUMgc3ViMSB1cGRhdGUtcmVmIHJlZnMvY2hhbmdlcy8xMSAkRSAmJgorCWdpdCB1cGRhdGUtaW5kZXggLS1jYWNoZWluZm8gMTYwMDAwICRFIHN1YjEgJiYKKwlnaXQgY29tbWl0IC1tICJ1cGRhdGVkIHN1Ym1vZHVsZXMgb3V0c2lkZSBvZiByZWZzL2hlYWRzIiAmJgorCisJZ2l0IC1DIHN1YjEgdXBkYXRlLXJlZiByZWZzL2NoYW5nZXMvMTIgJEYgJiYKKwlnaXQgdXBkYXRlLWluZGV4IC0tY2FjaGVpbmZvIDE2MDAwMCAkRiBzdWIxICYmCisJZ2l0IGNvbW1pdCAtbSAidXBkYXRlZCBzdWJtb2R1bGVzIG91dHNpZGUgb2YgcmVmcy9oZWFkcyIgJiYKKworCUc9JChnaXQgcmV2LXBhcnNlIEhFQUQpICYmCisJZ2l0IHVwZGF0ZS1yZWYgcmVmcy9jaGFuZ2VzLzEzICRHICYmCisJKAorCQljZCBkb3duc3RyZWFtICYmCisJCWdpdCBmZXRjaCAtLXJlY3Vyc2Utc3VibW9kdWxlcyBvcmlnaW4gcmVmcy9jaGFuZ2VzLzEzICYmCisKKwkJZ2l0IC1DIHN1YjEgY2F0LWZpbGUgLXQgJEQgJiYKKwkJZ2l0IC1DIHN1YjEgY2F0LWZpbGUgLXQgJEUgJiYKKwkJZ2l0IC1DIHN1YjEgY2F0LWZpbGUgLXQgJEYKKwkpCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTUyOC1wdXNoLWRlZmF1bHQuc2ggYi90L3Q1NTI4LXB1c2gtZGVmYXVsdC5zaAppbmRleCA0NDMwOTU2Li40ZDFlMGMzIDEwMDc1NQotLS0gYS90L3Q1NTI4LXB1c2gtZGVmYXVsdC5zaAorKysgYi90L3Q1NTI4LXB1c2gtZGVmYXVsdC5zaApAQCAtMTYzLDcgKzE2Myw3IEBACiAjIHVwZGF0ZSBwYXJlbnQxJ3MgZm9vICh3aGljaCBpcyBvdXIgdXBzdHJlYW0pCiB0ZXN0X3B1c2hkZWZhdWx0X3dvcmtmbG93IHN1Y2Nlc3MgdXBzdHJlYW0gZm9vCiAKLSMgdXBzcmVhbSBpcyBmb28gd2hpY2ggaXMgbm90IHRoZSBuYW1lIG9mIHRoZSBjdXJyZW50IGJyYW5jaAorIyB1cHN0cmVhbSBpcyBmb28gd2hpY2ggaXMgbm90IHRoZSBuYW1lIG9mIHRoZSBjdXJyZW50IGJyYW5jaAogdGVzdF9wdXNoZGVmYXVsdF93b3JrZmxvdyBmYWlsdXJlIHNpbXBsZSBtYXN0ZXIKIAogIyBtYXN0ZXIgYW5kIGZvbyBhcmUgdXBkYXRlZApkaWZmIC0tZ2l0IGEvdC90NTUzMC11cGxvYWQtcGFjay1lcnJvci5zaCBiL3QvdDU1MzAtdXBsb2FkLXBhY2stZXJyb3Iuc2gKaW5kZXggNGY2ZTMyYi4uNGNlOWE5ZiAxMDA3NTUKLS0tIGEvdC90NTUzMC11cGxvYWQtcGFjay1lcnJvci5zaAorKysgYi90L3Q1NTMwLXVwbG9hZC1wYWNrLWVycm9yLnNoCkBAIC0xNCw3ICsxNCw3IEBACiB9CiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIGFuZCBjb3JydXB0IHJlcG9zaXRvcnknICcKLQorCXRlc3Rfb2lkX2luaXQgJiYKIAllY2hvIGZpbGUgPmZpbGUgJiYKIAlnaXQgYWRkIGZpbGUgJiYKIAlnaXQgcmV2LXBhcnNlIDpmaWxlICYmCkBAIC0zMSw5ICszMSwxMCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd1cGxvYWQtcGFjayBmYWlscyBkdWUgdG8gZXJyb3IgaW4gcGFjay1vYmplY3RzIHBhY2tpbmcnICcKLQotCXByaW50ZiAiMDAzMndhbnQgJXNcbjAwMDAwMDA5ZG9uZVxuMDAwMCIgXAotCQkkKGdpdCByZXYtcGFyc2UgSEVBRCkgPmlucHV0ICYmCisJaGVhZD0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKwloZXhzej0kKHRlc3Rfb2lkIGhleHN6KSAmJgorCXByaW50ZiAiJTA0eHdhbnQgJXNcbjAwMDAwMDA5ZG9uZVxuMDAwMCIgXAorCQkkKCgkaGV4c3ogKyAxMCkpICRoZWFkID5pbnB1dCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCB1cGxvYWQtcGFjayAuIDxpbnB1dCA+L2Rldi9udWxsIDI+b3V0cHV0LmVyciAmJgogCXRlc3RfaTE4bmdyZXAgInVuYWJsZSB0byByZWFkIiBvdXRwdXQuZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAicGFjay1vYmplY3RzIGRpZWQiIG91dHB1dC5lcnIKQEAgLTUxLDI1ICs1MiwzOCBAQAogJwogdGVzdF9leHBlY3Rfc3VjY2VzcyAndXBsb2FkLXBhY2sgZmFpbHMgZHVlIHRvIGVycm9yIGluIHJldi1saXN0JyAnCiAKLQlwcmludGYgIjAwMzJ3YW50ICVzXG4wMDM0c2hhbGxvdyAlczAwMDAwMDA5ZG9uZVxuMDAwMCIgXAotCQkkKGdpdCByZXYtcGFyc2UgSEVBRCkgJChnaXQgcmV2LXBhcnNlIEhFQUReKSA+aW5wdXQgJiYKKwlwcmludGYgIiUwNHh3YW50ICVzXG4lMDR4c2hhbGxvdyAlczAwMDAwMDA5ZG9uZVxuMDAwMCIgXAorCQkkKCgkaGV4c3ogKyAxMCkpICQoZ2l0IHJldi1wYXJzZSBIRUFEKSBcCisJCSQoKCRoZXhzeiArIDEyKSkgJChnaXQgcmV2LXBhcnNlIEhFQUReKSA+aW5wdXQgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBsb2FkLXBhY2sgLiA8aW5wdXQgPi9kZXYvbnVsbCAyPm91dHB1dC5lcnIgJiYKIAlncmVwICJiYWQgdHJlZSBvYmplY3QiIG91dHB1dC5lcnIKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAndXBsb2FkLXBhY2sgZXJyb3IgbWVzc2FnZSB3aGVuIGJhZCByZWYgcmVxdWVzdGVkJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd1cGxvYWQtcGFjayBmYWlscyBkdWUgdG8gYmFkIHdhbnQgKG5vIG9iamVjdCknICcKIAotCXByaW50ZiAiMDA0NXdhbnQgJXMgbXVsdGlfYWNrX2RldGFpbGVkXG4wMDAwMDAwOWRvbmVcbjAwMDAiIFwKLQkJImRlYWRiZWVmZGVhZGJlZWZkZWFkYmVlZmRlYWRiZWVmZGVhZGJlZWYiID5pbnB1dCAmJgorCXByaW50ZiAiJTA0eHdhbnQgJXMgbXVsdGlfYWNrX2RldGFpbGVkXG4wMDAwMDAwOWRvbmVcbjAwMDAiIFwKKwkJJCgoJGhleHN6ICsgMjkpKSAkKHRlc3Rfb2lkIGRlYWRiZWVmKSA+aW5wdXQgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgdXBsb2FkLXBhY2sgLiA8aW5wdXQgPm91dHB1dCAyPm91dHB1dC5lcnIgJiYKLQlncmVwIC1xICJub3Qgb3VyIHJlZiIgb3V0cHV0LmVyciAmJgotCSEgZ3JlcCAtcSBtdWx0aV9hY2tfZGV0YWlsZWQgb3V0cHV0LmVycgorCWdyZXAgIm5vdCBvdXIgcmVmIiBvdXRwdXQuZXJyICYmCisJZ3JlcCAiRVJSIiBvdXRwdXQgJiYKKwkhIGdyZXAgbXVsdGlfYWNrX2RldGFpbGVkIG91dHB1dC5lcnIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndXBsb2FkLXBhY2sgZmFpbHMgZHVlIHRvIGJhZCB3YW50IChub3QgdGlwKScgJworCisJb2lkPSQoZWNobyBhbiBvYmplY3Qgd2UgaGF2ZSB8IGdpdCBoYXNoLW9iamVjdCAtdyAtLXN0ZGluKSAmJgorCXByaW50ZiAiJTA0eHdhbnQgJXMgbXVsdGlfYWNrX2RldGFpbGVkXG4wMDAwMDAwOWRvbmVcbjAwMDAiIFwKKwkJJCgoJGhleHN6ICsgMjkpKSAiJG9pZCIgPmlucHV0ICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHVwbG9hZC1wYWNrIC4gPGlucHV0ID5vdXRwdXQgMj5vdXRwdXQuZXJyICYmCisJZ3JlcCAibm90IG91ciByZWYiIG91dHB1dC5lcnIgJiYKKwlncmVwICJFUlIiIG91dHB1dCAmJgorCSEgZ3JlcCBtdWx0aV9hY2tfZGV0YWlsZWQgb3V0cHV0LmVycgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd1cGxvYWQtcGFjayBmYWlscyBkdWUgdG8gZXJyb3IgaW4gcGFjay1vYmplY3RzIGVudW1lcmF0aW9uJyAnCiAKLQlwcmludGYgIjAwMzJ3YW50ICVzXG4wMDAwMDAwOWRvbmVcbjAwMDAiIFwKLQkJJChnaXQgcmV2LXBhcnNlIEhFQUQpID5pbnB1dCAmJgorCXByaW50ZiAiJTA0eHdhbnQgJXNcbjAwMDAwMDA5ZG9uZVxuMDAwMCIgXAorCQkkKChoZXhzeiArIDEwKSkgJChnaXQgcmV2LXBhcnNlIEhFQUQpID5pbnB1dCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCB1cGxvYWQtcGFjayAuIDxpbnB1dCA+L2Rldi9udWxsIDI+b3V0cHV0LmVyciAmJgogCWdyZXAgImJhZCB0cmVlIG9iamVjdCIgb3V0cHV0LmVyciAmJgogCWdyZXAgInBhY2stb2JqZWN0cyBkaWVkIiBvdXRwdXQuZXJyCmRpZmYgLS1naXQgYS90L3Q1NTMxLWRlZXAtc3VibW9kdWxlLXB1c2guc2ggYi90L3Q1NTMxLWRlZXAtc3VibW9kdWxlLXB1c2guc2gKaW5kZXggZTJjMzdmZC4uNGFkMDU5ZSAxMDA3NTUKLS0tIGEvdC90NTUzMS1kZWVwLXN1Ym1vZHVsZS1wdXNoLnNoCisrKyBiL3QvdDU1MzEtZGVlcC1zdWJtb2R1bGUtcHVzaC5zaApAQCAtMzYzLDcgKzM2Myw3IEBACiAJCSkgJiYKIAkJZ2l0IGFkZCBiICYmCiAJCWdpdCBjb21taXQgLW0gImFkZGVkIHN1Ym1vZHVsZSIgJiYKLQkJZ2l0IHB1c2ggLS1yZWN1cnNlLXN1Ym1vZHVsZT1jaGVjayBvcmlnaW4gbWFzdGVyCisJCWdpdCBwdXNoIC0tcmVjdXJzZS1zdWJtb2R1bGVzPWNoZWNrIG9yaWdpbiBtYXN0ZXIKIAkpCiAnCiAKZGlmZiAtLWdpdCBhL3QvdDU1MzUtZmV0Y2gtcHVzaC1zeW1yZWYuc2ggYi90L3Q1NTM1LWZldGNoLXB1c2gtc3ltcmVmLnNoCmluZGV4IDhlZDU4ZDIuLmU4ZjZkMjMgMTAwNzU1Ci0tLSBhL3QvdDU1MzUtZmV0Y2gtcHVzaC1zeW1yZWYuc2gKKysrIGIvdC90NTUzNS1mZXRjaC1wdXNoLXN5bXJlZi5zaApAQCAtMSw2ICsxLDYgQEAKICMhL2Jpbi9zaAogCi10ZXN0X2Rlc2NyaXB0aW9uPSdhdm9pZGluZyBjb25mbGljdGluZyB1cGRhdGUgdGhydSBzeW1yZWYgYWxpYXNpbmcnCit0ZXN0X2Rlc2NyaXB0aW9uPSdhdm9pZGluZyBjb25mbGljdGluZyB1cGRhdGUgdGhyb3VnaCBzeW1yZWYgYWxpYXNpbmcnCiAKIC4gLi90ZXN0LWxpYi5zaAogCmRpZmYgLS1naXQgYS90L3Q1NTM3LWZldGNoLXNoYWxsb3cuc2ggYi90L3Q1NTM3LWZldGNoLXNoYWxsb3cuc2gKaW5kZXggNmZhZjE3ZS4uNGY2ODFkYiAxMDA3NTUKLS0tIGEvdC90NTUzNy1mZXRjaC1zaGFsbG93LnNoCisrKyBiL3QvdDU1MzctZmV0Y2gtc2hhbGxvdy5zaApAQCAtMTUsNyArMTUsMTEgQEAKIAljb21taXQgMiAmJgogCWNvbW1pdCAzICYmCiAJY29tbWl0IDQgJiYKLQlnaXQgY29uZmlnIC0tZ2xvYmFsIHRyYW5zZmVyLmZzY2tPYmplY3RzIHRydWUKKwlnaXQgY29uZmlnIC0tZ2xvYmFsIHRyYW5zZmVyLmZzY2tPYmplY3RzIHRydWUgJiYKKwl0ZXN0X29pZF9jYWNoZSA8PC1FT0YKKwlwZXJsIHNoYTE6cy8wMDM0c2hhbGxvdyAlcy8wMDM2dW5zaGFsbG93ICVzLworCXBlcmwgc2hhMjU2OnMvMDA0Y3NoYWxsb3cgJXMvMDA0ZXVuc2hhbGxvdyAlcy8KKwlFT0YKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgc2hhbGxvdyBjbG9uZScgJwpAQCAtMjMzLDI3ICsyMzcsMjkgQEAKIAlnaXQgLUMgIiRSRVBPIiBjb25maWcgcHJvdG9jb2wudmVyc2lvbiAyICYmCiAJZ2l0IC1DIGNsaWVudCBjb25maWcgcHJvdG9jb2wudmVyc2lvbiAyICYmCiAKLQlnaXQgLUMgY2xpZW50IGZldGNoIC0tZGVwdGg9MiAiJEhUVFBEX1VSTC9vbmVfdGltZV9zZWQvcmVwbyIgbWFzdGVyOmFfYnJhbmNoICYmCisJZ2l0IC1DIGNsaWVudCBmZXRjaCAtLWRlcHRoPTIgIiRIVFRQRF9VUkwvb25lX3RpbWVfcGVybC9yZXBvIiBtYXN0ZXI6YV9icmFuY2ggJiYKIAogCSMgQ3JhZnQgYSBzaXR1YXRpb24gaW4gd2hpY2ggdGhlIHNlcnZlciBzZW5kcyBiYWNrIGFuIHVuc2hhbGxvdyByZXF1ZXN0CiAJIyB3aXRoIGFuIGVtcHR5IHBhY2tmaWxlLiBUaGlzIGlzIGRvbmUgYnkgcmVmZXRjaGluZyB3aXRoIGEgc2hvcnRlcgogCSMgZGVwdGggKHRvIGVuc3VyZSB0aGF0IHRoZSBwYWNrZmlsZSBpcyBlbXB0eSksIGFuZCBvdmVyd3JpdGluZyB0aGUKIAkjIHNoYWxsb3cgbGluZSBpbiB0aGUgcmVzcG9uc2Ugd2l0aCB0aGUgdW5zaGFsbG93IGxpbmUgd2Ugd2FudC4KLQlwcmludGYgInMvMDAzNHNoYWxsb3cgJXMvMDAzNnVuc2hhbGxvdyAlcy8iIFwKKwlwcmludGYgIiQodGVzdF9vaWQgcGVybCkiIFwKIAkgICAgICAgIiQoZ2l0IC1DICIkUkVQTyIgcmV2LXBhcnNlIEhFQUQpIiBcCiAJICAgICAgICIkKGdpdCAtQyAiJFJFUE8iIHJldi1wYXJzZSBIRUFEXikiIFwKLQkgICAgICAgPiIkSFRUUERfUk9PVF9QQVRIL29uZS10aW1lLXNlZCIgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgLUMgY2xpZW50IGZldGNoIC0tZGVwdGg9MSAiJEhUVFBEX1VSTC9vbmVfdGltZV9zZWQvcmVwbyIgXAorCSAgICAgICA+IiRIVFRQRF9ST09UX1BBVEgvb25lLXRpbWUtcGVybCIgJiYKKwl0ZXN0X211c3RfZmFpbCBlbnYgR0lUX1RFU1RfU0lERUJBTkRfQUxMPTAgZ2l0IC1DIGNsaWVudCBcCisJCWZldGNoIC0tZGVwdGg9MSAiJEhUVFBEX1VSTC9vbmVfdGltZV9wZXJsL3JlcG8iIFwKIAkJbWFzdGVyOmFfYnJhbmNoICYmCiAKLQkjIEVuc3VyZSB0aGF0IHRoZSBvbmUtdGltZS1zZWQgc2NyaXB0IHdhcyB1c2VkLgotCSEgdGVzdCAtZSAiJEhUVFBEX1JPT1RfUEFUSC9vbmUtdGltZS1zZWQiICYmCisJIyBFbnN1cmUgdGhhdCB0aGUgb25lLXRpbWUtcGVybCBzY3JpcHQgd2FzIHVzZWQuCisJISB0ZXN0IC1lICIkSFRUUERfUk9PVF9QQVRIL29uZS10aW1lLXBlcmwiICYmCiAKIAkjIEVuc3VyZSB0aGF0IHRoZSByZXN1bHRpbmcgcmVwbyBpcyBjb25zaXN0ZW50LCBkZXNwaXRlIG91ciBmYWlsdXJlIHRvCiAJIyBmZXRjaC4KIAlnaXQgLUMgY2xpZW50IGZzY2sKICcKIAotc3RvcF9odHRwZAorIyBETyBOT1QgYWRkIG5vbi1odHRwZC1zcGVjaWZpYyB0ZXN0cyBoZXJlLCBiZWNhdXNlIHRoZSBsYXN0IHBhcnQgb2YgdGhpcworIyB0ZXN0IHNjcmlwdCBpcyBvbmx5IGV4ZWN1dGVkIHdoZW4gaHR0cGQgaXMgYXZhaWxhYmxlIGFuZCBlbmFibGVkLgogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU1MzktZmV0Y2gtaHR0cC1zaGFsbG93LnNoIGIvdC90NTUzOS1mZXRjaC1odHRwLXNoYWxsb3cuc2gKaW5kZXggNWZiZjY3Yy4uYzBkMDJkZSAxMDA3NTUKLS0tIGEvdC90NTUzOS1mZXRjaC1odHRwLXNoYWxsb3cuc2gKKysrIGIvdC90NTUzOS1mZXRjaC1odHRwLXNoYWxsb3cuc2gKQEAgLTY3LDcgKzY3LDEwIEBACiAJCWNkIGNsb25lICYmCiAJCWdpdCBjaGVja291dCAtLW9ycGhhbiBuZXduZXcgJiYKIAkJdGVzdF9jb21taXQgbmV3LXRvbyAmJgotCQlHSVRfVFJBQ0VfUEFDS0VUPSIkVFJBU0hfRElSRUNUT1JZL3RyYWNlIiBnaXQgZmV0Y2ggLS1kZXB0aD0yICYmCisJCSMgTkVFRFNXT1JLOiBJZiB0aGUgb3ZlcnNwZWNpZmljYXRpb24gb2YgdGhlIGV4cGVjdGVkIHJlc3VsdCBpcyByZWR1Y2VkLCB3ZQorCQkjIG1pZ2h0IGJlIGFibGUgdG8gcnVuIHRoaXMgdGVzdCBpbiBhbGwgcHJvdG9jb2wgdmVyc2lvbnMuCisJCUdJVF9UUkFDRV9QQUNLRVQ9IiRUUkFTSF9ESVJFQ1RPUlkvdHJhY2UiIEdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT049MCBcCisJCQlnaXQgZmV0Y2ggLS1kZXB0aD0yICYmCiAJCWdyZXAgImZldGNoLXBhY2s8IEFDSyAuKiByZWFkeSIgLi4vdHJhY2UgJiYKIAkJISBncmVwICJmZXRjaC1wYWNrPiBkb25lIiAuLi90cmFjZQogCSkKQEAgLTE0Niw1ICsxNDksNCBAQAogCSkKICcKIAotc3RvcF9odHRwZAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1NTQwLWh0dHAtcHVzaC13ZWJkYXYuc2ggYi90L3Q1NTQwLWh0dHAtcHVzaC13ZWJkYXYuc2gKaW5kZXggODhmZjVhNC4uZDQ3NmMzMyAxMDA3NTUKLS0tIGEvdC90NTU0MC1odHRwLXB1c2gtd2ViZGF2LnNoCisrKyBiL3QvdDU1NDAtaHR0cC1wdXNoLXdlYmRhdi5zaApAQCAtMTM0LDE1ICsxMzQsMTMgQEAKIAogeDE9IlswLTlhLWZdIgogeDI9IiR4MSR4MSIKLXg1PSIkeDEkeDEkeDEkeDEkeDEiCi14Mzg9IiR4NSR4NSR4NSR4NSR4NSR4NSR4NSR4MSR4MSR4MSIKLXg0MD0iJHgzOCR4MiIKK3h0cnVuYz0kKGVjaG8gJE9JRF9SRUdFWCB8IHNlZCAtZSAicy9cWzAtOWEtZlxdXFswLTlhLWZcXS8vIikKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnUFVUIGFuZCBNT1ZFIHNlbmRzIG9iamVjdCB0byBVUkxzIHdpdGggU0hBLTEgaGFzaCBzdWZmaXgnICcKIAlzZWQgXAogCQktZSAicy9QVVQgL09QIC8iIFwKIAkJLWUgInMvTU9WRSAvT1AgLyIgXAotCSAgICAtZSAic3wvb2JqZWN0cy8keDIvJHt4Mzh9XyR4NDB8V0FOVEVEX1BBVEhfUkVRVUVTVHwiIFwKKwkgICAgLWUgInN8L29iamVjdHMvJHgyLyR7eHRydW5jfV8kT0lEX1JFR0VYfFdBTlRFRF9QQVRIX1JFUVVFU1R8IiBcCiAJCSIkSFRUUERfUk9PVF9QQVRIIi9hY2Nlc3MubG9nIHwKIAlncmVwIC1lICJcIk9QIC4qV0FOVEVEX1BBVEhfUkVRVUVTVCBIVFRQL1suMC05XSpcIiAyMFswLTldICIKIApAQCAtMTc2LDYgKzE3NCw0IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCi1zdG9wX2h0dHBkCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTU0MS1odHRwLXB1c2gtc21hcnQuc2ggYi90L3Q1NTQxLWh0dHAtcHVzaC1zbWFydC5zaAppbmRleCA1NDc1YWZjLi4yM2JlOGNlIDEwMDc1NQotLS0gYS90L3Q1NTQxLWh0dHAtcHVzaC1zbWFydC5zaAorKysgYi90L3Q1NTQxLWh0dHAtcHVzaC1zbWFydC5zaApAQCAtNDcsNyArNDcsMTIgQEAKIAljZCAiJFJPT1RfUEFUSCIgJiYKIAlnaXQgY2xvbmUgJEhUVFBEX1VSTC9zbWFydC90ZXN0X3JlcG8uZ2l0LyB0ZXN0X3JlcG9fY2xvbmUgJiYKIAotCWNoZWNrX2FjY2Vzc19sb2cgZXhwCisJIyBORUVEU1dPUks6IElmIHRoZSBvdmVyc3BlY2lmaWNhdGlvbiBvZiB0aGUgZXhwZWN0ZWQgcmVzdWx0IGlzIHJlZHVjZWQsIHdlCisJIyBtaWdodCBiZSBhYmxlIHRvIHJ1biB0aGlzIHRlc3QgaW4gYWxsIHByb3RvY29sIHZlcnNpb25zLgorCWlmIHRlc3QgIiRHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OIiA9IDAKKwl0aGVuCisJCWNoZWNrX2FjY2Vzc19sb2cgZXhwCisJZmkKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xvbmUgcmVtb3RlIHJlcG9zaXRvcnknICcKQEAgLTEyOCw3ICsxMzMsMTIgQEAKIFBPU1QgL3NtYXJ0L3Rlc3RfcmVwby5naXQvZ2l0LXJlY2VpdmUtcGFjayBIVFRQLzEuMSAyMDAKIEVPRgogdGVzdF9leHBlY3Rfc3VjY2VzcyAndXNlZCByZWNlaXZlLXBhY2sgc2VydmljZScgJwotCWNoZWNrX2FjY2Vzc19sb2cgZXhwCisJIyBORUVEU1dPUks6IElmIHRoZSBvdmVyc3BlY2lmaWNhdGlvbiBvZiB0aGUgZXhwZWN0ZWQgcmVzdWx0IGlzIHJlZHVjZWQsIHdlCisJIyBtaWdodCBiZSBhYmxlIHRvIHJ1biB0aGlzIHRlc3QgaW4gYWxsIHByb3RvY29sIHZlcnNpb25zLgorCWlmIHRlc3QgIiRHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OIiA9IDAKKwl0aGVuCisJCWNoZWNrX2FjY2Vzc19sb2cgZXhwCisJZmkKICcKIAogdGVzdF9odHRwX3B1c2hfbm9uZmYgIiRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgiL3Rlc3RfcmVwby5naXQgXApAQCAtMTY3LDYgKzE3Nyw5MSBAQAogCSB0ZXN0ICRIRUFEID0gJChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IEhFQUQpKQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdXNoIC0tYXRvbWljIGFsc28gcHJldmVudHMgYnJhbmNoIGNyZWF0aW9uLCByZXBvcnRzIGNvbGxhdGVyYWwnICcKKwkjIFNldHVwIHVwc3RyZWFtIHJlcG8gLSBlbXB0eSBmb3Igbm93CisJZD0kSFRUUERfRE9DVU1FTlRfUk9PVF9QQVRIL2F0b21pYy1icmFuY2hlcy5naXQgJiYKKwlnaXQgaW5pdCAtLWJhcmUgIiRkIiAmJgorCXRlc3RfY29uZmlnIC1DICIkZCIgaHR0cC5yZWNlaXZlcGFjayB0cnVlICYmCisJdXA9IiRIVFRQRF9VUkwiL3NtYXJ0L2F0b21pYy1icmFuY2hlcy5naXQgJiYKKworCSMgVGVsbCAiJHVwIiBhYm91dCB0aHJlZSBicmFuY2hlcyBmb3Igbm93CisJdGVzdF9jb21taXQgYXRvbWljMSAmJgorCXRlc3RfY29tbWl0IGF0b21pYzIgJiYKKwlnaXQgYnJhbmNoIGNvbGxhdGVyYWwgJiYKKwlnaXQgYnJhbmNoIG90aGVyICYmCisJZ2l0IHB1c2ggIiR1cCIgbWFzdGVyIGNvbGxhdGVyYWwgb3RoZXIgJiYKKworCSMgY29sbGF0ZXJhbCBpcyBhIHZhbGlkIHB1c2gsIGJ1dCBzaG91bGQgYmUgZmFpbGVkIGJ5IGF0b21pYyBwdXNoCisJZ2l0IGNoZWNrb3V0IGNvbGxhdGVyYWwgJiYKKwl0ZXN0X2NvbW1pdCBjb2xsYXRlcmFsMSAmJgorCisJIyBNYWtlIG1hc3RlciBpbmNvbXBhdGlibGUgd2l0aCB1cHN0cmVhbSB0byBwcm92b2tlIGF0b21pYworCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwlnaXQgcmVzZXQgLS1oYXJkIEhFQUReICYmCisKKwkjIEFkZCBhIG5ldyBicmFuY2ggd2hpY2ggc2hvdWxkIGJlIGZhaWxlZCBieSBhdG9taWMgcHVzaC4gVGhpcyBpcyBhCisJIyByZWdyZXNzaW9uIGNhc2UuCisJZ2l0IGJyYW5jaCBhdG9taWMgJiYKKworCSMgLS1hdG9taWMgc2hvdWxkIGNhdXNlIGVudGlyZSBwdXNoIHRvIGJlIHJlamVjdGVkCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHB1c2ggLS1hdG9taWMgIiR1cCIgbWFzdGVyIGF0b21pYyBjb2xsYXRlcmFsIDI+b3V0cHV0ICYmCisKKwkjIHRoZSBuZXcgYnJhbmNoIHNob3VsZCBub3QgaGF2ZSBiZWVuIGNyZWF0ZWQgdXBzdHJlYW0KKwl0ZXN0X211c3RfZmFpbCBnaXQgLUMgIiRkIiBzaG93LXJlZiAtLXZlcmlmeSByZWZzL2hlYWRzL2F0b21pYyAmJgorCisJIyB1cHN0cmVhbSBzaG91bGQgc3RpbGwgcmVmbGVjdCBhdG9taWMyLCB0aGUgbGFzdCB0aGluZyB3ZSBwdXNoZWQKKwkjIHN1Y2Nlc3NmdWxseQorCWdpdCByZXYtcGFyc2UgYXRvbWljMiA+ZXhwZWN0ZWQgJiYKKwkjIG9uIG1hc3Rlci4uLgorCWdpdCAtQyAiJGQiIHJldi1wYXJzZSByZWZzL2hlYWRzL21hc3RlciA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsICYmCisJIyAuLi5hbmQgY29sbGF0ZXJhbC4KKwlnaXQgLUMgIiRkIiByZXYtcGFyc2UgcmVmcy9oZWFkcy9jb2xsYXRlcmFsID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwgJiYKKworCSMgdGhlIGZhaWxlZCByZWZzIHNob3VsZCBiZSBpbmRpY2F0ZWQgdG8gdGhlIHVzZXIKKwlncmVwICJeICEgLipyZWplY3RlZC4qIG1hc3RlciAtPiBtYXN0ZXIiIG91dHB1dCAmJgorCisJIyB0aGUgY29sbGF0ZXJhbCBmYWlsdXJlIHJlZnMgc2hvdWxkIGJlIGluZGljYXRlZCB0byB0aGUgdXNlcgorCWdyZXAgIl4gISAuKnJlamVjdGVkLiogYXRvbWljIC0+IGF0b21pYyAuKmF0b21pYyBwdXNoIGZhaWxlZCIgb3V0cHV0ICYmCisJZ3JlcCAiXiAhIC4qcmVqZWN0ZWQuKiBjb2xsYXRlcmFsIC0+IGNvbGxhdGVyYWwgLiphdG9taWMgcHVzaCBmYWlsZWQiIG91dHB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdXNoIC0tYXRvbWljIGZhaWxzIG9uIHNlcnZlci1zaWRlIGVycm9ycycgJworCSMgVXNlIHByZXZpb3VzbHkgc2V0IHVwIHJlcG9zaXRvcnkKKwlkPSRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgvYXRvbWljLWJyYW5jaGVzLmdpdCAmJgorCXRlc3RfY29uZmlnIC1DICIkZCIgaHR0cC5yZWNlaXZlcGFjayB0cnVlICYmCisJdXA9IiRIVFRQRF9VUkwiL3NtYXJ0L2F0b21pYy1icmFuY2hlcy5naXQgJiYKKworCSMgYnJlYWsgcmVmIHVwZGF0ZXMgZm9yIG90aGVyIG9uIHRoZSByZW1vdGUgc2l0ZQorCW1rZGlyICIkZC9yZWZzL2hlYWRzL290aGVyLmxvY2siICYmCisKKwkjIGFkZCB0aGUgbmV3IGNvbW1pdCB0byBvdGhlcgorCWdpdCBicmFuY2ggLWYgb3RoZXIgY29sbGF0ZXJhbCAmJgorCisJIyAtLWF0b21pYyBzaG91bGQgY2F1c2UgZW50aXJlIHB1c2ggdG8gYmUgcmVqZWN0ZWQKKwl0ZXN0X211c3RfZmFpbCBnaXQgcHVzaCAtLWF0b21pYyAiJHVwIiBhdG9taWMgb3RoZXIgMj5vdXRwdXQgICYmCisKKwkjIHRoZSBuZXcgYnJhbmNoIHNob3VsZCBub3QgaGF2ZSBiZWVuIGNyZWF0ZWQgdXBzdHJlYW0KKwl0ZXN0X211c3RfZmFpbCBnaXQgLUMgIiRkIiBzaG93LXJlZiAtLXZlcmlmeSByZWZzL2hlYWRzL2F0b21pYyAmJgorCisJIyB1cHN0cmVhbSBzaG91bGQgc3RpbGwgcmVmbGVjdCBhdG9taWMyLCB0aGUgbGFzdCB0aGluZyB3ZSBwdXNoZWQKKwkjIHN1Y2Nlc3NmdWxseQorCWdpdCByZXYtcGFyc2UgYXRvbWljMiA+ZXhwZWN0ZWQgJiYKKwkjIC4uLnRvIG90aGVyLgorCWdpdCAtQyAiJGQiIHJldi1wYXJzZSByZWZzL2hlYWRzL290aGVyID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwgJiYKKworCSMgdGhlIG5ldyBicmFuY2ggc2hvdWxkIG5vdCBoYXZlIGJlZW4gY3JlYXRlZCB1cHN0cmVhbQorCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyAiJGQiIHNob3ctcmVmIC0tdmVyaWZ5IHJlZnMvaGVhZHMvYXRvbWljICYmCisKKwkjIHRoZSBmYWlsZWQgcmVmcyBzaG91bGQgYmUgaW5kaWNhdGVkIHRvIHRoZSB1c2VyCisJZ3JlcCAiXiAhIC4qcmVqZWN0ZWQuKiBvdGhlciAtPiBvdGhlciAuKmF0b21pYyB0cmFuc2FjdGlvbiBmYWlsZWQiIG91dHB1dCAmJgorCisJIyB0aGUgY29sbGF0ZXJhbCBmYWlsdXJlIHJlZnMgc2hvdWxkIGJlIGluZGljYXRlZCB0byB0aGUgdXNlcgorCWdyZXAgIl4gISAuKnJlamVjdGVkLiogYXRvbWljIC0+IGF0b21pYyAuKmF0b21pYyB0cmFuc2FjdGlvbiBmYWlsZWQiIG91dHB1dAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdXNoIC0tYWxsIGNhbiBwdXNoIHRvIGVtcHR5IHJlcG8nICcKIAlkPSRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgvZW1wdHktYWxsLmdpdCAmJgogCWdpdCBpbml0IC0tYmFyZSAiJGQiICYmCkBAIC0zNzMsNSArNDY4LDQgQEAKIAl0ZXN0X2kxOG5ncmVwICEgIl5oaW50OiAiIGRlY29kZWQKICcKIAotc3RvcF9odHRwZAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1NTQyLXB1c2gtaHR0cC1zaGFsbG93LnNoIGIvdC90NTU0Mi1wdXNoLWh0dHAtc2hhbGxvdy5zaAppbmRleCA1MTY1ODMzLi5kZGMxZGI3IDEwMDc1NQotLS0gYS90L3Q1NTQyLXB1c2gtaHR0cC1zaGFsbG93LnNoCisrKyBiL3QvdDU1NDItcHVzaC1odHRwLXNoYWxsb3cuc2gKQEAgLTkwLDUgKzkwLDQgQEAKIAkpCiAnCiAKLXN0b3BfaHR0cGQKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTU0NS1wdXNoLW9wdGlvbnMuc2ggYi90L3Q1NTQ1LXB1c2gtb3B0aW9ucy5zaAppbmRleCBiNDdhOTU4Li4zOGU2ZjczIDEwMDc1NQotLS0gYS90L3Q1NTQ1LXB1c2gtb3B0aW9ucy5zaAorKysgYi90L3Q1NTQ1LXB1c2gtb3B0aW9ucy5zaApAQCAtMTE1LDcgKzExNSw3IEBACiAKIAlnaXQgLUMgcGFyZW50IHN1Ym1vZHVsZSBhZGQgLi4vdXBzdHJlYW0gd29ya2JlbmNoICYmCiAJZ2l0IC1DIHBhcmVudC93b3JrYmVuY2ggcmVtb3RlIGFkZCB1cCAuLi8uLi91cHN0cmVhbSAmJgotCWdpdCAtQyBwYXJlbnQgY29tbWl0IC1tICJhZGQgc3VibW91bGUiICYmCisJZ2l0IC1DIHBhcmVudCBjb21taXQgLW0gImFkZCBzdWJtb2R1bGUiICYmCiAKIAl0ZXN0X2NvbW1pdCAtQyBwYXJlbnQvd29ya2JlbmNoIHR3byAmJgogCWdpdCAtQyBwYXJlbnQgYWRkIHdvcmtiZW5jaCAmJgpAQCAtMjc4LDYgKzI3OCw3IEBACiAJdGVzdF9jbXAgZXhwZWN0ICIkSFRUUERfRE9DVU1FTlRfUk9PVF9QQVRIIi91cHN0cmVhbS5naXQvaG9va3MvcHJlLXJlY2VpdmUucHVzaF9vcHRpb25zCiAnCiAKLXN0b3BfaHR0cGQKKyMgRE8gTk9UIGFkZCBub24taHR0cGQtc3BlY2lmaWMgdGVzdHMgaGVyZSwgYmVjYXVzZSB0aGUgbGFzdCBwYXJ0IG9mIHRoaXMKKyMgdGVzdCBzY3JpcHQgaXMgb25seSBleGVjdXRlZCB3aGVuIGh0dHBkIGlzIGF2YWlsYWJsZSBhbmQgZW5hYmxlZC4KIAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1NTUwLWh0dHAtZmV0Y2gtZHVtYi5zaCBiL3QvdDU1NTAtaHR0cC1mZXRjaC1kdW1iLnNoCmluZGV4IDZkN2Q4OGMuLmI4MTFkODkgMTAwNzU1Ci0tLSBhL3QvdDU1NTAtaHR0cC1mZXRjaC1kdW1iLnNoCisrKyBiL3QvdDU1NTAtaHR0cC1mZXRjaC1kdW1iLnNoCkBAIC00MDgsNSArNDA4LDIwIEBACiAJdGVzdF9pMThuZ3JlcCAidW5hYmxlIHRvIGFjY2Vzcy4qL3JlZGlyLXRvLzUwMiIgc3RkZXJyCiAnCiAKLXN0b3BfaHR0cGQKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoaW5nIHZpYSBodHRwIGFsdGVybmF0ZXMgd29ya3MnICcKKwlwYXJlbnQ9JEhUVFBEX0RPQ1VNRU5UX1JPT1RfUEFUSC9hbHQtcGFyZW50LmdpdCAmJgorCWdpdCBpbml0IC0tYmFyZSAiJHBhcmVudCIgJiYKKwlnaXQgLUMgIiRwYXJlbnQiIC0td29yay10cmVlPS4gY29tbWl0IC0tYWxsb3ctZW1wdHkgLW0gZm9vICYmCisJZ2l0IC1DICIkcGFyZW50IiB1cGRhdGUtc2VydmVyLWluZm8gJiYKKwljb21taXQ9JChnaXQgLUMgIiRwYXJlbnQiIHJldi1wYXJzZSBIRUFEKSAmJgorCisJY2hpbGQ9JEhUVFBEX0RPQ1VNRU5UX1JPT1RfUEFUSC9hbHQtY2hpbGQuZ2l0ICYmCisJZ2l0IGluaXQgLS1iYXJlICIkY2hpbGQiICYmCisJZWNobyAiLi4vLi4vYWx0LXBhcmVudC5naXQvb2JqZWN0cyIgPiIkY2hpbGQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMiICYmCisJZ2l0IC1DICIkY2hpbGQiIHVwZGF0ZS1yZWYgSEVBRCAkY29tbWl0ICYmCisJZ2l0IC1DICIkY2hpbGQiIHVwZGF0ZS1zZXJ2ZXItaW5mbyAmJgorCisJZ2l0IC1jIGh0dHAuZm9sbG93cmVkaXJlY3RzPXRydWUgY2xvbmUgIiRIVFRQRF9VUkwvZHVtYi9hbHQtY2hpbGQuZ2l0IgorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU1NTEtaHR0cC1mZXRjaC1zbWFydC5zaCBiL3QvdDU1NTEtaHR0cC1mZXRjaC1zbWFydC5zaAppbmRleCA4NjMwYjBjLi42Nzg4YWVmIDEwMDc1NQotLS0gYS90L3Q1NTUxLWh0dHAtZmV0Y2gtc21hcnQuc2gKKysrIGIvdC90NTU1MS1odHRwLWZldGNoLXNtYXJ0LnNoCkBAIC00Myw3ICs0Myw4IEBACiAJPCBDYWNoZS1Db250cm9sOiBuby1jYWNoZSwgbWF4LWFnZT0wLCBtdXN0LXJldmFsaWRhdGUKIAk8IENvbnRlbnQtVHlwZTogYXBwbGljYXRpb24veC1naXQtdXBsb2FkLXBhY2stcmVzdWx0CiAJRU9GCi0JR0lUX1RSQUNFX0NVUkw9dHJ1ZSBnaXQgY2xvbmUgLS1xdWlldCAkSFRUUERfVVJML3NtYXJ0L3JlcG8uZ2l0IGNsb25lIDI+ZXJyICYmCisJR0lUX1RSQUNFX0NVUkw9dHJ1ZSBHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAgXAorCQlnaXQgY2xvbmUgLS1xdWlldCAkSFRUUERfVVJML3NtYXJ0L3JlcG8uZ2l0IGNsb25lIDI+ZXJyICYmCiAJdGVzdF9jbXAgZmlsZSBjbG9uZS9maWxlICYmCiAJdHIgJ1wnJ1wwMTUnXCcnIFEgPGVyciB8CiAJc2VkIC1lICIKQEAgLTgwLDEyICs4MSwxOCBAQAogCQkvXjwgQ29udGVudC1MZW5ndGg6IC9kCiAJCS9ePCBUcmFuc2Zlci1FbmNvZGluZzogL2QKIAkiID5hY3R1YWwgJiYKLQlzZWQgLWUgInMvXj4gQWNjZXB0LUVuY29kaW5nOiAuKi8+IEFjY2VwdC1FbmNvZGluZzogRU5DT0RJTkdTLyIgXAotCQkJYWN0dWFsID5hY3R1YWwuc211ZGdlZCAmJgotCXRlc3RfY21wIGV4cCBhY3R1YWwuc211ZGdlZCAmJgogCi0JZ3JlcCAiQWNjZXB0LUVuY29kaW5nOi4qZ3ppcCIgYWN0dWFsID5hY3R1YWwuZ3ppcCAmJgotCXRlc3RfbGluZV9jb3VudCA9IDIgYWN0dWFsLmd6aXAKKwkjIE5FRURTV09SSzogSWYgdGhlIG92ZXJzcGVjaWZpY2F0aW9uIG9mIHRoZSBleHBlY3RlZCByZXN1bHQgaXMgcmVkdWNlZCwgd2UKKwkjIG1pZ2h0IGJlIGFibGUgdG8gcnVuIHRoaXMgdGVzdCBpbiBhbGwgcHJvdG9jb2wgdmVyc2lvbnMuCisJaWYgdGVzdCAiJEdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT04iID0gMAorCXRoZW4KKwkJc2VkIC1lICJzL14+IEFjY2VwdC1FbmNvZGluZzogLiovPiBBY2NlcHQtRW5jb2Rpbmc6IEVOQ09ESU5HUy8iIFwKKwkJCQlhY3R1YWwgPmFjdHVhbC5zbXVkZ2VkICYmCisJCXRlc3RfY21wIGV4cCBhY3R1YWwuc211ZGdlZCAmJgorCisJCWdyZXAgIkFjY2VwdC1FbmNvZGluZzouKmd6aXAiIGFjdHVhbCA+YWN0dWFsLmd6aXAgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMiBhY3R1YWwuZ3ppcAorCWZpCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoIGNoYW5nZXMgdmlhIGh0dHAnICcKQEAgLTEwMyw3ICsxMTAsMTMgQEAKIAlHRVQgIC9zbWFydC9yZXBvLmdpdC9pbmZvL3JlZnM/c2VydmljZT1naXQtdXBsb2FkLXBhY2sgSFRUUC8xLjEgMjAwCiAJUE9TVCAvc21hcnQvcmVwby5naXQvZ2l0LXVwbG9hZC1wYWNrIEhUVFAvMS4xIDIwMAogCUVPRgotCWNoZWNrX2FjY2Vzc19sb2cgZXhwCisKKwkjIE5FRURTV09SSzogSWYgdGhlIG92ZXJzcGVjaWZpY2F0aW9uIG9mIHRoZSBleHBlY3RlZCByZXN1bHQgaXMgcmVkdWNlZCwgd2UKKwkjIG1pZ2h0IGJlIGFibGUgdG8gcnVuIHRoaXMgdGVzdCBpbiBhbGwgcHJvdG9jb2wgdmVyc2lvbnMuCisJaWYgdGVzdCAiJEdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT04iID0gMAorCXRoZW4KKwkJY2hlY2tfYWNjZXNzX2xvZyBleHAKKwlmaQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmb2xsb3cgcmVkaXJlY3RzICgzMDEpJyAnCkBAIC0xNTEsNyArMTY0LDE3IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25vLW9wIGhhbGYtYXV0aCBmZXRjaCBkb2VzIG5vdCByZXF1aXJlIGEgcGFzc3dvcmQnICcKIAlzZXRfYXNrcGFzcyB3cm9uZyAmJgotCWdpdCAtLWdpdC1kaXI9aGFsZi1hdXRoIGZldGNoICYmCisKKwkjIE5FRURTV09SSzogV2hlbiB1c2luZyBIVFRQKFMpLCBwcm90b2NvbCB2MCBzdXBwb3J0cyBhICJoYWxmLWF1dGgiCisJIyBjb25maWd1cmF0aW9uIHdpdGggYXV0aGVudGljYXRpb24gcmVxdWlyZWQgb25seSB3aGVuIGRvd25sb2FkaW5nCisJIyBvYmplY3RzIGFuZCBub3QgcmVmcywgYnkgaGF2aW5nIHRoZSBIVFRQIHNlcnZlciBvbmx5IHJlcXVpcmUKKwkjIGF1dGhlbnRpY2F0aW9uIGZvciB0aGUgImdpdC11cGxvYWQtcGFjayIgcGF0aCBhbmQgbm90ICJpbmZvL3JlZnMiLgorCSMgVGhpcyBpcyBub3QgcG9zc2libGUgd2l0aCBwcm90b2NvbCB2Miwgc2luY2UgYm90aCBvYmplY3RzIGFuZCByZWZzCisJIyBhcmUgb2J0YWluZWQgZnJvbSB0aGUgImdpdC11cGxvYWQtcGFjayIgcGF0aC4gQSBzb2x1dGlvbiB0byB0aGlzIGlzCisJIyB0byB0ZWFjaCB0aGUgc2VydmVyIGFuZCBjbGllbnQgdG8gYmUgYWJsZSB0byBpbmxpbmUgbHMtcmVmcyByZXF1ZXN0cworCSMgYXMgYW4gRXh0cmEgUGFyYW1ldGVyIChzZWUgcGFjay1wcm90b2NvbC50eHQpLCBzbyB0aGF0ICJpbmZvL3JlZnMiCisJIyBjYW4gc2VydmUgcmVmcywganVzdCBsaWtlIGl0IGRvZXMgaW4gcHJvdG9jb2wgdjAuCisJR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTj0wIGdpdCAtLWdpdC1kaXI9aGFsZi1hdXRoIGZldGNoICYmCiAJZXhwZWN0X2Fza3Bhc3Mgbm9uZQogJwogCkBAIC0xNzYsNyArMTk5LDcgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnaW52YWxpZCBDb250ZW50LVR5cGUgcmVqZWN0ZWQnICcKIAl0ZXN0X211c3RfZmFpbCBnaXQgY2xvbmUgJEhUVFBEX1VSTC9icm9rZW5fc21hcnQvcmVwby5naXQgMj5hY3R1YWwgJiYKLQlncmVwICJub3QgdmFsaWQ6IiBhY3R1YWwKKwl0ZXN0X2kxOG5ncmVwICJub3QgdmFsaWQ6IiBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY3JlYXRlIG5hbWVzcGFjZWQgcmVmcycgJwpAQCAtMjE1LDggKzIzOCwxNCBAQAogCWdpdCBjb25maWcgaHR0cC5jb29raWVmaWxlIGNvb2tpZXMudHh0ICYmCiAJZ2l0IGNvbmZpZyBodHRwLnNhdmVjb29raWVzIHRydWUgJiYKIAlnaXQgbHMtcmVtb3RlICRIVFRQRF9VUkwvc21hcnRfY29va2llcy9yZXBvLmdpdCBtYXN0ZXIgJiYKLQl0YWlsIC0zIGNvb2tpZXMudHh0IHwgc29ydCA+Y29va2llc190YWlsLnR4dCAmJgotCXRlc3RfY21wIGV4cGVjdF9jb29raWVzLnR4dCBjb29raWVzX3RhaWwudHh0CisKKwkjIE5FRURTV09SSzogSWYgdGhlIG92ZXJzcGVjaWZpY2F0aW9uIG9mIHRoZSBleHBlY3RlZCByZXN1bHQgaXMgcmVkdWNlZCwgd2UKKwkjIG1pZ2h0IGJlIGFibGUgdG8gcnVuIHRoaXMgdGVzdCBpbiBhbGwgcHJvdG9jb2wgdmVyc2lvbnMuCisJaWYgdGVzdCAiJEdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT04iID0gMAorCXRoZW4KKwkJdGFpbCAtMyBjb29raWVzLnR4dCB8IHNvcnQgPmNvb2tpZXNfdGFpbC50eHQgJiYKKwkJdGVzdF9jbXAgZXhwZWN0X2Nvb2tpZXMudHh0IGNvb2tpZXNfdGFpbC50eHQKKwlmaQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd0cmFuc2Zlci5oaWRlcmVmcyB3b3JrcyBvdmVyIHNtYXJ0LWh0dHAnICcKQEAgLTI3MiwxMSArMzAxLDEwIEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdsYXJnZSBmZXRjaC1wYWNrIHJlcXVlc3RzIGNhbiBiZSBzcGxpdCBhY3Jvc3MgUE9TVHMnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xhcmdlIGZldGNoLXBhY2sgcmVxdWVzdHMgY2FuIGJlIHNlbnQgdXNpbmcgY2h1bmtlZCBlbmNvZGluZycgJwogCUdJVF9UUkFDRV9DVVJMPXRydWUgZ2l0IC1jIGh0dHAucG9zdGJ1ZmZlcj02NTUzNiBcCiAJCWNsb25lIC0tYmFyZSAiJEhUVFBEX1VSTC9zbWFydC9yZXBvLmdpdCIgc3BsaXQuZ2l0IDI+ZXJyICYmCi0JZ3JlcCAiXj0+IFNlbmQgaGVhZGVyOiBQT1NUIiBlcnIgPnBvc3RzICYmCi0JdGVzdF9saW5lX2NvdW50ID0gMiBwb3N0cworCWdyZXAgIl49PiBTZW5kIGhlYWRlcjogVHJhbnNmZXItRW5jb2Rpbmc6IGNodW5rZWQiIGVycgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd0ZXN0IGFsbG93cmVhY2hhYmxlc2hhMWlud2FudCcgJwpAQCAtMzA2LDcgKzMzNCwxMCBAQAogCiAJZ2l0IGluaXQgLS1iYXJlIHRlc3RfcmVhY2hhYmxlLmdpdCAmJgogCWdpdCAtQyB0ZXN0X3JlYWNoYWJsZS5naXQgcmVtb3RlIGFkZCBvcmlnaW4gIiRIVFRQRF9VUkwvc21hcnQvcmVwby5naXQiICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IC1DIHRlc3RfcmVhY2hhYmxlLmdpdCBmZXRjaCBvcmlnaW4gIiQoZ2l0IHJldi1wYXJzZSBIRUFEKSIKKwkjIFNvbWUgcHJvdG9jb2wgdmVyc2lvbnMgKGUuZy4gMikgc3VwcG9ydCBmZXRjaGluZworCSMgdW5hZHZlcnRpc2VkIG9iamVjdHMsIHNvIHJlc3RyaWN0IHRoaXMgdGVzdCB0byB2MC4KKwl0ZXN0X211c3RfZmFpbCBlbnYgR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTj0wIFwKKwkJZ2l0IC1DIHRlc3RfcmVhY2hhYmxlLmdpdCBmZXRjaCBvcmlnaW4gIiQoZ2l0IHJldi1wYXJzZSBIRUFEKSIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdCBhbGxvd2FueXNoYTFpbndhbnQgd2l0aCB1bnJlYWNoYWJsZScgJwpAQCAtMzI1LDcgKzM1NiwxMCBAQAogCiAJZ2l0IGluaXQgLS1iYXJlIHRlc3RfcmVhY2hhYmxlLmdpdCAmJgogCWdpdCAtQyB0ZXN0X3JlYWNoYWJsZS5naXQgcmVtb3RlIGFkZCBvcmlnaW4gIiRIVFRQRF9VUkwvc21hcnQvcmVwby5naXQiICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IC1DIHRlc3RfcmVhY2hhYmxlLmdpdCBmZXRjaCBvcmlnaW4gIiQoZ2l0IHJldi1wYXJzZSBIRUFEKSIgJiYKKwkjIFNvbWUgcHJvdG9jb2wgdmVyc2lvbnMgKGUuZy4gMikgc3VwcG9ydCBmZXRjaGluZworCSMgdW5hZHZlcnRpc2VkIG9iamVjdHMsIHNvIHJlc3RyaWN0IHRoaXMgdGVzdCB0byB2MC4KKwl0ZXN0X211c3RfZmFpbCBlbnYgR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTj0wIFwKKwkJZ2l0IC1DIHRlc3RfcmVhY2hhYmxlLmdpdCBmZXRjaCBvcmlnaW4gIiQoZ2l0IHJldi1wYXJzZSBIRUFEKSIgJiYKIAogCWdpdCAtQyAiJHNlcnZlciIgY29uZmlnIHVwbG9hZHBhY2suYWxsb3dhbnlzaGExaW53YW50IDEgJiYKIAlnaXQgLUMgdGVzdF9yZWFjaGFibGUuZ2l0IGZldGNoIG9yaWdpbiAiJChnaXQgcmV2LXBhcnNlIEhFQUQpIgpAQCAtNDI5LDUgKzQ2Myw5IEBACiAJISBncmVwICI9PiBTZW5kIGRhdGEiIGVycgogJwogCi1zdG9wX2h0dHBkCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXJ2ZXItc2lkZSBlcnJvciBkZXRlY3RlZCcgJworCXRlc3RfbXVzdF9mYWlsIGdpdCBjbG9uZSAkSFRUUERfVVJML2Vycm9yX3NtYXJ0L3JlcG8uZ2l0IDI+YWN0dWFsICYmCisJdGVzdF9pMThuZ3JlcCAic2VydmVyLXNpZGUgZXJyb3IiIGFjdHVhbAorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU1NTItc2tpcHBpbmctZmV0Y2gtbmVnb3RpYXRvci5zaCBiL3QvdDU1NTItc2tpcHBpbmctZmV0Y2gtbmVnb3RpYXRvci5zaAppbmRleCAzMDg1N2I4Li4xNTZjNzA0IDEwMDc1NQotLS0gYS90L3Q1NTUyLXNraXBwaW5nLWZldGNoLW5lZ290aWF0b3Iuc2gKKysrIGIvdC90NTU1Mi1za2lwcGluZy1mZXRjaC1uZWdvdGlhdG9yLnNoCkBAIC02MCwyOSArNjAsNiBAQAogCWhhdmVfbm90X3NlbnQgYzYgYzQgYzMKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAndW5rbm93biBmZXRjaC5uZWdvdGlhdGlvbkFsZ29yaXRobSB2YWx1ZXMgZXJyb3Igb3V0JyAnCi0Jcm0gLXJmIHNlcnZlciBjbGllbnQgdHJhY2UgJiYKLQlnaXQgaW5pdCBzZXJ2ZXIgJiYKLQl0ZXN0X2NvbW1pdCAtQyBzZXJ2ZXIgdG9fZmV0Y2ggJiYKLQotCWdpdCBpbml0IGNsaWVudCAmJgotCXRlc3RfY29tbWl0IC1DIGNsaWVudCBvbl9jbGllbnQgJiYKLQlnaXQgLUMgY2xpZW50IGNoZWNrb3V0IG9uX2NsaWVudCAmJgotCi0JdGVzdF9jb25maWcgLUMgY2xpZW50IGZldGNoLm5lZ290aWF0aW9uQWxnb3JpdGhtIGludmFsaWQgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgLUMgY2xpZW50IGZldGNoICIkKHB3ZCkvc2VydmVyIiAyPmVyciAmJgotCXRlc3RfaTE4bmdyZXAgInVua25vd24gZmV0Y2ggbmVnb3RpYXRpb24gYWxnb3JpdGhtIiBlcnIgJiYKLQotCSMgRXhwbGljaXQgImRlZmF1bHQiIHZhbHVlCi0JdGVzdF9jb25maWcgLUMgY2xpZW50IGZldGNoLm5lZ290aWF0aW9uQWxnb3JpdGhtIGRlZmF1bHQgJiYKLQlnaXQgLUMgY2xpZW50IC1jIGZldGNoLm5lZ290aWF0aW9uQWxnb3JpdGhtPWRlZmF1bHQgZmV0Y2ggIiQocHdkKS9zZXJ2ZXIiICYmCi0KLQkjIEltcGxlbWVudGF0aW9uIGRldGFpbDogSWYgdGhlcmUgaXMgbm90aGluZyB0byBmZXRjaCwgd2Ugd2lsbCBub3QgZXJyb3Igb3V0Ci0JdGVzdF9jb25maWcgLUMgY2xpZW50IGZldGNoLm5lZ290aWF0aW9uQWxnb3JpdGhtIGludmFsaWQgJiYKLQlnaXQgLUMgY2xpZW50IGZldGNoICIkKHB3ZCkvc2VydmVyIiAyPmVyciAmJgotCXRlc3RfaTE4bmdyZXAgISAidW5rbm93biBmZXRjaCBuZWdvdGlhdGlvbiBhbGdvcml0aG0iIGVycgotJwotCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd3aGVuIHR3byBza2lwcyBjb2xsaWRlLCBmYXZvciB0aGUgbGFyZ2VyIG9uZScgJwogCXJtIC1yZiBzZXJ2ZXIgY2xpZW50IHRyYWNlICYmCiAJZ2l0IGluaXQgc2VydmVyICYmCkBAIC0xMjcsNyArMTA0LDE0IEBACiAJIyBub3QgbmVlZCB0byBzZW5kIGFueSBhbmNlc3RvcnMgb2YgImMzIiwgYnV0IHdlIHN0aWxsIG5lZWQgdG8gc2VuZCAiYzMiCiAJIyBpdHNlbGYuCiAJdGVzdF9jb25maWcgLUMgY2xpZW50IGZldGNoLm5lZ290aWF0aW9uYWxnb3JpdGhtIHNraXBwaW5nICYmCi0JdHJhY2VfZmV0Y2ggY2xpZW50IG9yaWdpbiB0b19mZXRjaCAmJgorCisJIyBUaGUgcmVmIGFkdmVydGlzZW1lbnQgaXRzZWxmIGlzIGZpbHRlcmVkIHdoZW4gcHJvdG9jb2wgdjIgaXMgdXNlZCwgc28KKwkjIHVzZSB2MC4KKwkoCisJCUdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT049MCAmJgorCQlleHBvcnQgR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTiAmJgorCQl0cmFjZV9mZXRjaCBjbGllbnQgb3JpZ2luIHRvX2ZldGNoCisJKSAmJgogCWhhdmVfc2VudCBjNSBjNF4gYzJzaWRlICYmCiAJaGF2ZV9ub3Rfc2VudCBjNCBjNF5eIGM0Xl5eCiAnCkBAIC0xODksNyArMTczLDE3IEBACiAJdGVzdF9jb21taXQgLUMgc2VydmVyIGNvbW1pdC1vbi1iMSAmJgogCiAJdGVzdF9jb25maWcgLUMgY2xpZW50IGZldGNoLm5lZ290aWF0aW9uYWxnb3JpdGhtIHNraXBwaW5nICYmCi0JdHJhY2VfZmV0Y2ggY2xpZW50ICIkKHB3ZCkvc2VydmVyIiB0b19mZXRjaCAmJgorCisJIyBORUVEU1dPUks6IFRoZSBudW1iZXIgb2YgImhhdmUicyBzZW50IGRlcGVuZHMgb24gd2hldGhlciB0aGUgdHJhbnNwb3J0CisJIyBpcyBzdGF0ZWZ1bC4gSWYgdGhlIG92ZXJzcGVjaWZpY2F0aW9uIG9mIHRoZSByZXN1bHQgd2VyZSByZWR1Y2VkLCB0aGlzCisJIyB0ZXN0IGNvdWxkIGJlIHVzZWQgZm9yIGJvdGggc3RhdGVmdWwgYW5kIHN0YXRlbGVzcyB0cmFuc3BvcnRzLgorCSgKKwkJIyBGb3JjZSBwcm90b2NvbCB2MCwgaW4gd2hpY2ggbG9jYWwgdHJhbnNwb3J0IGlzIHN0YXRlZnVsIChpbgorCQkjIHByb3RvY29sIHYyIGl0IGlzIHN0YXRlbGVzcykuCisJCUdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT049MCAmJgorCQlleHBvcnQgR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTiAmJgorCQl0cmFjZV9mZXRjaCBjbGllbnQgIiQocHdkKS9zZXJ2ZXIiIHRvX2ZldGNoCisJKSAmJgogCWdyZXAgIiAgZmV0Y2giIHRyYWNlICYmCiAKIAkjIGZldGNoLXBhY2sgc2VuZHMgMiByZXF1ZXN0cyBlYWNoIGNvbnRhaW5pbmcgMTYgImhhdmUiIGxpbmVzIGJlZm9yZQpkaWZmIC0tZ2l0IGEvdC90NTU1My1zZXQtdXBzdHJlYW0uc2ggYi90L3Q1NTUzLXNldC11cHN0cmVhbS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi44MTk3NWFkCi0tLSAvZGV2L251bGwKKysrIGIvdC90NTU1My1zZXQtdXBzdHJlYW0uc2gKQEAgLTAsMCArMSwxNzggQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSciZ2l0IGZldGNoL3B1bGwgLS1zZXQtdXBzdHJlYW0iIGJhc2ljIHRlc3RzLicKKy4gLi90ZXN0LWxpYi5zaAorCitjaGVja19jb25maWcgKCkgeworCXByaW50ZiAiJXNcbiIgIiQyIiAiJDMiID4iZXhwZWN0LiQxIiAmJgorCXsKKwkJZ2l0IGNvbmZpZyAiYnJhbmNoLiQxLnJlbW90ZSIgJiYgZ2l0IGNvbmZpZyAiYnJhbmNoLiQxLm1lcmdlIgorCX0gPiJhY3R1YWwuJDEiICYmCisJdGVzdF9jbXAgImV4cGVjdC4kMSIgImFjdHVhbC4kMSIKK30KKworY2hlY2tfY29uZmlnX21pc3NpbmcgKCkgeworCXRlc3RfZXhwZWN0X2NvZGUgMSBnaXQgY29uZmlnICJicmFuY2guJDEucmVtb3RlIiAmJgorCXRlc3RfZXhwZWN0X2NvZGUgMSBnaXQgY29uZmlnICJicmFuY2guJDEubWVyZ2UiCit9CisKK2NsZWFyX2NvbmZpZyAoKSB7CisJZm9yIGJyYW5jaCBpbiAiJEAiOyBkbworCQl0ZXN0X21pZ2h0X2ZhaWwgZ2l0IGNvbmZpZyAtLXVuc2V0LWFsbCAiYnJhbmNoLiRicmFuY2gucmVtb3RlIgorCQl0ZXN0X21pZ2h0X2ZhaWwgZ2l0IGNvbmZpZyAtLXVuc2V0LWFsbCAiYnJhbmNoLiRicmFuY2gubWVyZ2UiCisJZG9uZQorfQorCitlbnN1cmVfZnJlc2hfdXBzdHJlYW0gKCkgeworCXJtIC1yZiBwYXJlbnQgJiYgZ2l0IGluaXQgLS1iYXJlIHBhcmVudAorfQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBiYXJlIHBhcmVudCBmZXRjaCcgJworCWVuc3VyZV9mcmVzaF91cHN0cmVhbSAmJgorCWdpdCByZW1vdGUgYWRkIHVwc3RyZWFtIHBhcmVudAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBjb21taXQgb24gbWFzdGVyIGFuZCBvdGhlciBmZXRjaCcgJworCXRlc3RfY29tbWl0IG9uZSAmJgorCWdpdCBwdXNoIHVwc3RyZWFtIG1hc3RlciAmJgorCWdpdCBjaGVja291dCAtYiBvdGhlciAmJgorCXRlc3RfY29tbWl0IHR3byAmJgorCWdpdCBwdXNoIHVwc3RyZWFtIG90aGVyCisnCisKKyMgdGVzdHMgZm9yIGZldGNoIC0tc2V0LXVwc3RyZWFtCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoIC0tc2V0LXVwc3RyZWFtIGRvZXMgbm90IHNldCB1cHN0cmVhbSB3L28gYnJhbmNoJyAnCisJY2xlYXJfY29uZmlnIG1hc3RlciBvdGhlciAmJgorCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwlnaXQgZmV0Y2ggLS1zZXQtdXBzdHJlYW0gdXBzdHJlYW0gJiYKKwljaGVja19jb25maWdfbWlzc2luZyBtYXN0ZXIgJiYKKwljaGVja19jb25maWdfbWlzc2luZyBvdGhlcgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmZXRjaCAtLXNldC11cHN0cmVhbSB1cHN0cmVhbSBtYXN0ZXIgc2V0cyBicmFuY2ggbWFzdGVyIGJ1dCBub3Qgb3RoZXInICcKKwljbGVhcl9jb25maWcgbWFzdGVyIG90aGVyICYmCisJZ2l0IGZldGNoIC0tc2V0LXVwc3RyZWFtIHVwc3RyZWFtIG1hc3RlciAmJgorCWNoZWNrX2NvbmZpZyBtYXN0ZXIgdXBzdHJlYW0gcmVmcy9oZWFkcy9tYXN0ZXIgJiYKKwljaGVja19jb25maWdfbWlzc2luZyBvdGhlcgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmZXRjaCAtLXNldC11cHN0cmVhbSB1cHN0cmVhbSBvdGhlciBzZXRzIGJyYW5jaCBvdGhlcicgJworCWNsZWFyX2NvbmZpZyBtYXN0ZXIgb3RoZXIgJiYKKwlnaXQgZmV0Y2ggLS1zZXQtdXBzdHJlYW0gdXBzdHJlYW0gb3RoZXIgJiYKKwljaGVja19jb25maWcgbWFzdGVyIHVwc3RyZWFtIHJlZnMvaGVhZHMvb3RoZXIgJiYKKwljaGVja19jb25maWdfbWlzc2luZyBvdGhlcgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmZXRjaCAtLXNldC11cHN0cmVhbSBtYXN0ZXI6b3RoZXIgZG9lcyBub3Qgc2V0IHRoZSBicmFuY2ggb3RoZXIyJyAnCisJY2xlYXJfY29uZmlnIG90aGVyMiAmJgorCWdpdCBmZXRjaCAtLXNldC11cHN0cmVhbSB1cHN0cmVhbSBtYXN0ZXI6b3RoZXIyICYmCisJY2hlY2tfY29uZmlnX21pc3Npbmcgb3RoZXIyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoIC0tc2V0LXVwc3RyZWFtIGh0dHA6Ly9ub3N1Y2hkb21haW4uZXhhbXBsZS5jb20gZmFpbHMgd2l0aCBpbnZhbGlkIHVybCcgJworCSMgbWFzdGVyIGV4cGxpY2l0bHkgbm90IGNsZWFyZWQsIHdlIGNoZWNrIHRoYXQgaXQgaXMgbm90IHRvdWNoZWQgZnJvbSBwcmV2aW91cyB2YWx1ZQorCWNsZWFyX2NvbmZpZyBvdGhlciBvdGhlcjIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgZmV0Y2ggLS1zZXQtdXBzdHJlYW0gaHR0cDovL25vc3VjaGRvbWFpbi5leGFtcGxlLmNvbSAmJgorCWNoZWNrX2NvbmZpZyBtYXN0ZXIgdXBzdHJlYW0gcmVmcy9oZWFkcy9vdGhlciAmJgorCWNoZWNrX2NvbmZpZ19taXNzaW5nIG90aGVyICYmCisJY2hlY2tfY29uZmlnX21pc3Npbmcgb3RoZXIyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoIC0tc2V0LXVwc3RyZWFtIHdpdGggdmFsaWQgVVJMIHNldHMgdXBzdHJlYW0gdG8gVVJMJyAnCisJY2xlYXJfY29uZmlnIG90aGVyIG90aGVyMiAmJgorCXVybD0iZmlsZTovLyciJFBXRCInIiAmJgorCWdpdCBmZXRjaCAtLXNldC11cHN0cmVhbSAiJHVybCIgJiYKKwljaGVja19jb25maWcgbWFzdGVyICIkdXJsIiBIRUFEICYmCisJY2hlY2tfY29uZmlnX21pc3Npbmcgb3RoZXIgJiYKKwljaGVja19jb25maWdfbWlzc2luZyBvdGhlcjIKKycKKworIyB0ZXN0cyBmb3IgcHVsbCAtLXNldC11cHN0cmVhbQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBiYXJlIHBhcmVudCBwdWxsJyAnCisJZ2l0IHJlbW90ZSBybSB1cHN0cmVhbSAmJgorCWVuc3VyZV9mcmVzaF91cHN0cmVhbSAmJgorCWdpdCByZW1vdGUgYWRkIHVwc3RyZWFtIHBhcmVudAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBjb21taXQgb24gbWFzdGVyIGFuZCBvdGhlciBwdWxsJyAnCisJdGVzdF9jb21taXQgdGhyZWUgJiYKKwlnaXQgcHVzaCAtLXRhZ3MgdXBzdHJlYW0gbWFzdGVyICYmCisJdGVzdF9jb21taXQgZm91ciAmJgorCWdpdCBwdXNoIHVwc3RyZWFtIG90aGVyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1bGwgLS1zZXQtdXBzdHJlYW0gdXBzdHJlYW0gbWFzdGVyIHNldHMgYnJhbmNoIG1hc3RlciBidXQgbm90IG90aGVyJyAnCisJY2xlYXJfY29uZmlnIG1hc3RlciBvdGhlciAmJgorCWdpdCBwdWxsIC0tc2V0LXVwc3RyZWFtIHVwc3RyZWFtIG1hc3RlciAmJgorCWNoZWNrX2NvbmZpZyBtYXN0ZXIgdXBzdHJlYW0gcmVmcy9oZWFkcy9tYXN0ZXIgJiYKKwljaGVja19jb25maWdfbWlzc2luZyBvdGhlcgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdWxsIC0tc2V0LXVwc3RyZWFtIG1hc3RlcjpvdGhlcjIgZG9lcyBub3Qgc2V0IHRoZSBicmFuY2ggb3RoZXIyJyAnCisJY2xlYXJfY29uZmlnIG90aGVyMiAmJgorCWdpdCBwdWxsIC0tc2V0LXVwc3RyZWFtIHVwc3RyZWFtIG1hc3RlcjpvdGhlcjIgJiYKKwljaGVja19jb25maWdfbWlzc2luZyBvdGhlcjIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncHVsbCAtLXNldC11cHN0cmVhbSB1cHN0cmVhbSBvdGhlciBzZXRzIGJyYW5jaCBtYXN0ZXInICcKKwljbGVhcl9jb25maWcgbWFzdGVyIG90aGVyICYmCisJZ2l0IHB1bGwgLS1zZXQtdXBzdHJlYW0gdXBzdHJlYW0gb3RoZXIgJiYKKwljaGVja19jb25maWcgbWFzdGVyIHVwc3RyZWFtIHJlZnMvaGVhZHMvb3RoZXIgJiYKKwljaGVja19jb25maWdfbWlzc2luZyBvdGhlcgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdWxsIC0tc2V0LXVwc3RyZWFtIHVwc3RyZWFtIHRhZyBkb2VzIG5vdCBzZXQgdGhlIHRhZycgJworCWNsZWFyX2NvbmZpZyB0aHJlZSAmJgorCWdpdCBwdWxsIC0tdGFncyAtLXNldC11cHN0cmVhbSB1cHN0cmVhbSB0aHJlZSAmJgorCWNoZWNrX2NvbmZpZ19taXNzaW5nIHRocmVlCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1bGwgLS1zZXQtdXBzdHJlYW0gaHR0cDovL25vc3VjaGRvbWFpbi5leGFtcGxlLmNvbSBmYWlscyB3aXRoIGludmFsaWQgdXJsJyAnCisJIyBtYXN0ZXIgZXhwbGljaXRseSBub3QgY2xlYXJlZCwgd2UgY2hlY2sgdGhhdCBpdCBpcyBub3QgdG91Y2hlZCBmcm9tIHByZXZpb3VzIHZhbHVlCisJY2xlYXJfY29uZmlnIG90aGVyIG90aGVyMiB0aHJlZSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBwdWxsIC0tc2V0LXVwc3RyZWFtIGh0dHA6Ly9ub3N1Y2hkb21haW4uZXhhbXBsZS5jb20gJiYKKwljaGVja19jb25maWcgbWFzdGVyIHVwc3RyZWFtIHJlZnMvaGVhZHMvb3RoZXIgJiYKKwljaGVja19jb25maWdfbWlzc2luZyBvdGhlciAmJgorCWNoZWNrX2NvbmZpZ19taXNzaW5nIG90aGVyMiAmJgorCWNoZWNrX2NvbmZpZ19taXNzaW5nIHRocmVlCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1bGwgLS1zZXQtdXBzdHJlYW0gdXBzdHJlYW0gSEVBRCBzZXRzIGJyYW5jaCBIRUFEJyAnCisJY2xlYXJfY29uZmlnIG1hc3RlciBvdGhlciAmJgorCWdpdCBwdWxsIC0tc2V0LXVwc3RyZWFtIHVwc3RyZWFtIEhFQUQgJiYKKwljaGVja19jb25maWcgbWFzdGVyIHVwc3RyZWFtIEhFQUQgJiYKKwlnaXQgY2hlY2tvdXQgb3RoZXIgJiYKKwlnaXQgcHVsbCAtLXNldC11cHN0cmVhbSB1cHN0cmVhbSBIRUFEICYmCisJY2hlY2tfY29uZmlnIG90aGVyIHVwc3RyZWFtIEhFQUQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncHVsbCAtLXNldC11cHN0cmVhbSB1cHN0cmVhbSB3aXRoIG1vcmUgdGhhbiBvbmUgYnJhbmNoIGRvZXMgbm90aGluZycgJworCWNsZWFyX2NvbmZpZyBtYXN0ZXIgdGhyZWUgJiYKKwlnaXQgcHVsbCAtLXNldC11cHN0cmVhbSB1cHN0cmVhbSBtYXN0ZXIgdGhyZWUgJiYKKwljaGVja19jb25maWdfbWlzc2luZyBtYXN0ZXIgJiYKKwljaGVja19jb25maWdfbWlzc2luZyB0aHJlZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwdWxsIC0tc2V0LXVwc3RyZWFtIHdpdGggdmFsaWQgVVJMIHNldHMgdXBzdHJlYW0gdG8gVVJMJyAnCisJY2xlYXJfY29uZmlnIG1hc3RlciBvdGhlciBvdGhlcjIgJiYKKwlnaXQgY2hlY2tvdXQgbWFzdGVyICYmCisJdXJsPSJmaWxlOi8vJyIkUFdEIiciICYmCisJZ2l0IHB1bGwgLS1zZXQtdXBzdHJlYW0gIiR1cmwiICYmCisJY2hlY2tfY29uZmlnIG1hc3RlciAiJHVybCIgSEVBRCAmJgorCWNoZWNrX2NvbmZpZ19taXNzaW5nIG90aGVyICYmCisJY2hlY2tfY29uZmlnX21pc3Npbmcgb3RoZXIyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1bGwgLS1zZXQtdXBzdHJlYW0gd2l0aCB2YWxpZCBVUkwgYW5kIGJyYW5jaCBzZXRzIGJyYW5jaCcgJworCWNsZWFyX2NvbmZpZyBtYXN0ZXIgb3RoZXIgb3RoZXIyICYmCisJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgorCXVybD0iZmlsZTovLyciJFBXRCInIiAmJgorCWdpdCBwdWxsIC0tc2V0LXVwc3RyZWFtICIkdXJsIiBtYXN0ZXIgJiYKKwljaGVja19jb25maWcgbWFzdGVyICIkdXJsIiByZWZzL2hlYWRzL21hc3RlciAmJgorCWNoZWNrX2NvbmZpZ19taXNzaW5nIG90aGVyICYmCisJY2hlY2tfY29uZmlnX21pc3Npbmcgb3RoZXIyCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTU2MS1odHRwLWJhY2tlbmQuc2ggYi90L3Q1NTYxLWh0dHAtYmFja2VuZC5zaAppbmRleCAxYzQ5MDU0Li42ZWIwMjk0IDEwMDc1NQotLS0gYS90L3Q1NTYxLWh0dHAtYmFja2VuZC5zaAorKysgYi90L3Q1NTYxLWh0dHAtYmFja2VuZC5zaApAQCAtMTMyLDUgKzEzMiw0IEBACiAJY2hlY2tfYWNjZXNzX2xvZyBleHAKICcKIAotc3RvcF9odHRwZAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1NTYyLWh0dHAtYmFja2VuZC1jb250ZW50LWxlbmd0aC5zaCBiL3QvdDU1NjItaHR0cC1iYWNrZW5kLWNvbnRlbnQtbGVuZ3RoLnNoCmluZGV4IDkwZDg5MGQuLjRhMTEwYjMgMTAwNzU1Ci0tLSBhL3QvdDU1NjItaHR0cC1iYWNrZW5kLWNvbnRlbnQtbGVuZ3RoLnNoCisrKyBiL3QvdDU1NjItaHR0cC1iYWNrZW5kLWNvbnRlbnQtbGVuZ3RoLnNoCkBAIC04LDEyICs4LDEyIEBACiB2ZXJpZnlfaHR0cF9yZXN1bHQoKSB7CiAJIyBzb21lIGZhdGFsIGVycm9ycyBzdGlsbCBwcm9kdWNlIHN0YXR1cyAyMDAKIAkjIHNvIGNoZWNrIGlmIHRoZXJlIGlzIHRoZSBlcnJvciBtZXNzYWdlCi0JaWYgZ3JlcCAnZmF0YWw6JyBhY3QuZXJyCisJaWYgZ3JlcCAnZmF0YWw6JyBhY3QuZXJyLiR0ZXN0X2NvdW50CiAJdGhlbgogCQlyZXR1cm4gMQogCWZpCiAKLQlpZiAhIGdyZXAgIlN0YXR1cyIgYWN0Lm91dCA+YWN0CisJaWYgISBncmVwICJTdGF0dXMiIGFjdC5vdXQuJHRlc3RfY291bnQgPmFjdAogCXRoZW4KIAkJcHJpbnRmICJTdGF0dXM6IDIwMCBPS1xyXG4iID5hY3QKIAlmaQpAQCAtMzMsNyArMzMsNyBAQAogCQlSRVFVRVNUX01FVEhPRD1QT1NUIFwKIAkJIiRQRVJMX1BBVEgiIFwKIAkJIiRURVNUX0RJUkVDVE9SWSIvdDU1NjIvaW52b2tlLXdpdGgtY29udGVudC1sZW5ndGgucGwgXAotCQkgICAgIiRyZXF1ZXN0X2JvZHkiIGdpdCBodHRwLWJhY2tlbmQgPmFjdC5vdXQgMj5hY3QuZXJyCisJCSAgICAiJHJlcXVlc3RfYm9keSIgZ2l0IGh0dHAtYmFja2VuZCA+YWN0Lm91dC4kdGVzdF9jb3VudCAyPmFjdC5lcnIuJHRlc3RfY291bnQKIH0KIAogc3NpemVfYjEwMGRvdHMoKSB7CkBAIC01OSw3ICs1OSw3IEBACiAJcHJpbnRmIGRvbmUgfCBwYWNrZXRpemUgPj5mZXRjaF9ib2R5ICYmCiAJdGVzdF9jb3B5X2J5dGVzIDEwIDxmZXRjaF9ib2R5ID5mZXRjaF9ib2R5LnRydW5jICYmCiAJaGFzaF9uZXh0PSQoZ2l0IGNvbW1pdC10cmVlIC1wIEhFQUQgLW0gbmV4dCBIRUFEXnt0cmVlfSkgJiYKLQlwcmludGYgIiVzICVzIHJlZnMvaGVhZHMvbmV3YnJhbmNoXFwwcmVwb3J0LXN0YXR1c1xcbiIgIiRfejQwIiAiJGhhc2hfbmV4dCIgfCBwYWNrZXRpemUgPnB1c2hfYm9keSAmJgorCXByaW50ZiAiJXMgJXMgcmVmcy9oZWFkcy9uZXdicmFuY2hcXDByZXBvcnQtc3RhdHVzXFxuIiAiJFpFUk9fT0lEIiAiJGhhc2hfbmV4dCIgfCBwYWNrZXRpemUgPnB1c2hfYm9keSAmJgogCXByaW50ZiAwMDAwID4+cHVzaF9ib2R5ICYmCiAJZWNobyAiJGhhc2hfbmV4dCIgfCBnaXQgcGFjay1vYmplY3RzIC0tc3Rkb3V0ID4+cHVzaF9ib2R5ICYmCiAJdGVzdF9jb3B5X2J5dGVzIDEwIDxwdXNoX2JvZHkgPnB1c2hfYm9keS50cnVuYyAmJgpAQCAtMTUwLDcgKzE1MCw3IEBACiAJCUdJVF9IVFRQX0VYUE9SVF9BTEw9VFJVRSBcCiAJCVJFUVVFU1RfTUVUSE9EPVBPU1QgXAogCQlDT05URU5UX0xFTkdUSD0iJE5PVF9GSVRfSU5fU1NJWkUiIFwKLQkJZ2l0IGh0dHAtYmFja2VuZCA8L2Rldi96ZXJvID4vZGV2L251bGwgMj5lcnIgJiYKKwkJZ2l0IGh0dHAtYmFja2VuZCA8L2Rldi9udWxsID4vZGV2L251bGwgMj5lcnIgJiYKIAlncmVwICJmYXRhbDouKkNPTlRFTlRfTEVOR1RIIiBlcnIKICcKIApAQCAtMTYxLDcgKzE2MSw3IEBACiAJCUdJVF9IVFRQX0VYUE9SVF9BTEw9VFJVRSBcCiAJCVJFUVVFU1RfTUVUSE9EPUdFVCBcCiAJCUNPTlRFTlRfTEVOR1RIPSIiIFwKLQkJZ2l0IGh0dHAtYmFja2VuZCA8ZW1wdHlfYm9keSA+YWN0Lm91dCAyPmFjdC5lcnIgJiYKKwkJZ2l0IGh0dHAtYmFja2VuZCA8ZW1wdHlfYm9keSA+YWN0Lm91dC4kdGVzdF9jb3VudCAyPmFjdC5lcnIuJHRlc3RfY291bnQgJiYKIAl2ZXJpZnlfaHR0cF9yZXN1bHQgIjIwMCBPSyIKICcKIApkaWZmIC0tZ2l0IGEvdC90NTU3MC1naXQtZGFlbW9uLnNoIGIvdC90NTU3MC1naXQtZGFlbW9uLnNoCmluZGV4IDc0NjZhYWQuLjM0NDg3YmIgMTAwNzU1Ci0tLSBhL3QvdDU1NzAtZ2l0LWRhZW1vbi5zaAorKysgYi90L3Q1NTcwLWdpdC1kYWVtb24uc2gKQEAgLTkwLDYgKzkwLDcgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoIG5vdGljZXMgY29ycnVwdCBpZHgnICcKIAljcCAtUiAiJEdJVF9EQUVNT05fRE9DVU1FTlRfUk9PVF9QQVRIIi9yZXBvX3BhY2suZ2l0ICIkR0lUX0RBRU1PTl9ET0NVTUVOVF9ST09UX1BBVEgiL3JlcG9fYmFkMi5naXQgJiYKIAkoY2QgIiRHSVRfREFFTU9OX0RPQ1VNRU5UX1JPT1RfUEFUSCIvcmVwb19iYWQyLmdpdCAmJgorCSBybSAtZiBvYmplY3RzL3BhY2svbXVsdGktcGFjay1pbmRleCAmJgogCSBwPSQobHMgb2JqZWN0cy9wYWNrL3BhY2stKi5pZHgpICYmCiAJIGNobW9kIHUrdyAkcCAmJgogCSBwcmludGYgJTAyNTZkIDAgfCBkZCBvZj0kcCBicz0yNTYgY291bnQ9MSBzZWVrPTEgY29udj1ub3RydW5jCkBAIC0xODMsMTkgKzE4NCw2IEBACiAJCWdpdCBscy1yZW1vdGUgIiRHSVRfREFFTU9OX1VSTC9lc2NhcGUuZ2l0IgogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdkYWVtb24gbG9nIHJlY29yZHMgYWxsIGF0dHJpYnV0ZXMnICcKLQljYXQgPmV4cGVjdCA8PC1cRU9GICYmCi0JRXh0ZW5kZWQgYXR0cmlidXRlICJob3N0IjogbG9jYWxob3N0Ci0JRXh0ZW5kZWQgYXR0cmlidXRlICJwcm90b2NvbCI6IHZlcnNpb249MQotCUVPRgotCT5kYWVtb24ubG9nICYmCi0JR0lUX09WRVJSSURFX1ZJUlRVQUxfSE9TVD1sb2NhbGhvc3QgXAotCQlnaXQgLWMgcHJvdG9jb2wudmVyc2lvbj0xIFwKLQkJCWxzLXJlbW90ZSAiJEdJVF9EQUVNT05fVVJML2ludGVycC5naXQiICYmCi0JZ3JlcCAtaSBleHRlbmRlZC5hdHRyaWJ1dGUgZGFlbW9uLmxvZyB8IGN1dCAtZCIgIiAtZjItID5hY3R1YWwgJiYKLQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCi0nCi0KIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgRkFLRU5DICdob3N0bmFtZSBpbnRlcnBvbGF0aW9uIHdvcmtzIGFmdGVyIExGLXN0cmlwcGluZycgJwogCXsKIAkJcHJpbnRmICJnaXQtdXBsb2FkLXBhY2sgL2ludGVycC5naXRcblwwaG9zdD1sb2NhbGhvc3QiIHwgcGFja2V0aXplCkBAIC0yMTEsNSArMTk5LDQgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKLXN0b3BfZ2l0X2RhZW1vbgogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1NTczLXB1bGwtdmVyaWZ5LXNpZ25hdHVyZXMuc2ggYi90L3Q1NTczLXB1bGwtdmVyaWZ5LXNpZ25hdHVyZXMuc2gKaW5kZXggM2U5ODc2ZS4uYTUzZGQ4NSAxMDA3NTUKLS0tIGEvdC90NTU3My1wdWxsLXZlcmlmeS1zaWduYXR1cmVzLnNoCisrKyBiL3QvdDU1NzMtcHVsbC12ZXJpZnktc2lnbmF0dXJlcy5zaApAQCAtNjAsNiArNjAsMjcgQEAKIAl0ZXN0X2kxOG5ncmVwICJoYXMgYW4gdW50cnVzdGVkIEdQRyBzaWduYXR1cmUiIHB1bGxlcnJvcgogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQRyAncHVsbCBjb21taXQgd2l0aCB1bnRydXN0ZWQgc2lnbmF0dXJlIHdpdGggLS12ZXJpZnktc2lnbmF0dXJlcyBhbmQgbWluVHJ1c3RMZXZlbD11bHRpbWF0ZScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCAmJiBnaXQgY2hlY2tvdXQgaW5pdGlhbCIgJiYKKwl0ZXN0X2NvbmZpZyBncGcubWluVHJ1c3RMZXZlbCB1bHRpbWF0ZSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBwdWxsIC0tZmYtb25seSAtLXZlcmlmeS1zaWduYXR1cmVzIHVudHJ1c3RlZCAyPnB1bGxlcnJvciAmJgorCXRlc3RfaTE4bmdyZXAgImhhcyBhbiB1bnRydXN0ZWQgR1BHIHNpZ25hdHVyZSIgcHVsbGVycm9yCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHICdwdWxsIGNvbW1pdCB3aXRoIHVudHJ1c3RlZCBzaWduYXR1cmUgd2l0aCAtLXZlcmlmeS1zaWduYXR1cmVzIGFuZCBtaW5UcnVzdExldmVsPW1hcmdpbmFsJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVzZXQgLS1oYXJkICYmIGdpdCBjaGVja291dCBpbml0aWFsIiAmJgorCXRlc3RfY29uZmlnIGdwZy5taW5UcnVzdExldmVsIG1hcmdpbmFsICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHB1bGwgLS1mZi1vbmx5IC0tdmVyaWZ5LXNpZ25hdHVyZXMgdW50cnVzdGVkIDI+cHVsbGVycm9yICYmCisJdGVzdF9pMThuZ3JlcCAiaGFzIGFuIHVudHJ1c3RlZCBHUEcgc2lnbmF0dXJlIiBwdWxsZXJyb3IKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBHUEcgJ3B1bGwgY29tbWl0IHdpdGggdW50cnVzdGVkIHNpZ25hdHVyZSB3aXRoIC0tdmVyaWZ5LXNpZ25hdHVyZXMgYW5kIG1pblRydXN0TGV2ZWw9dW5kZWZpbmVkJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVzZXQgLS1oYXJkICYmIGdpdCBjaGVja291dCBpbml0aWFsIiAmJgorCXRlc3RfY29uZmlnIGdwZy5taW5UcnVzdExldmVsIHVuZGVmaW5lZCAmJgorCWdpdCBwdWxsIC0tZmYtb25seSAtLXZlcmlmeS1zaWduYXR1cmVzIHVudHJ1c3RlZCA+cHVsbG91dHB1dCAmJgorCXRlc3RfaTE4bmdyZXAgImhhcyBhIGdvb2QgR1BHIHNpZ25hdHVyZSIgcHVsbG91dHB1dAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQRyAncHVsbCBzaWduZWQgY29tbWl0IHdpdGggLS12ZXJpZnktc2lnbmF0dXJlcycgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCAmJiBnaXQgY2hlY2tvdXQgaW5pdGlhbCIgJiYKIAlnaXQgcHVsbCAtLXZlcmlmeS1zaWduYXR1cmVzIHNpZ25lZCA+cHVsbG91dHB1dCAmJgpAQCAtNzksMTAgKzEwMCw1MyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQRyAncHVsbCB1bnNpZ25lZCBjb21taXQgaW50byB1bmJvcm4gYnJhbmNoJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtcmYgZW1wdHktcmVwbyIgJiYKIAlnaXQgaW5pdCBlbXB0eS1yZXBvICYmCiAJdGVzdF9tdXN0X2ZhaWwgXAogCQlnaXQgLUMgZW1wdHktcmVwbyBwdWxsIC0tdmVyaWZ5LXNpZ25hdHVyZXMgLi4gIDI+cHVsbGVycm9yICYmCiAJdGVzdF9pMThuZ3JlcCAiZG9lcyBub3QgaGF2ZSBhIEdQRyBzaWduYXR1cmUiIHB1bGxlcnJvcgogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQRyAncHVsbCBjb21taXQgaW50byB1bmJvcm4gYnJhbmNoIHdpdGggYmFkIHNpZ25hdHVyZSBhbmQgLS12ZXJpZnktc2lnbmF0dXJlcycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLXJmIGVtcHR5LXJlcG8iICYmCisJZ2l0IGluaXQgZW1wdHktcmVwbyAmJgorCXRlc3RfbXVzdF9mYWlsIFwKKwkJZ2l0IC1DIGVtcHR5LXJlcG8gcHVsbCAtLWZmLW9ubHkgLS12ZXJpZnktc2lnbmF0dXJlcyAuLi9iYWQgMj5wdWxsZXJyb3IgJiYKKwl0ZXN0X2kxOG5ncmVwICJoYXMgYSBiYWQgR1BHIHNpZ25hdHVyZSIgcHVsbGVycm9yCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHICdwdWxsIGNvbW1pdCBpbnRvIHVuYm9ybiBicmFuY2ggd2l0aCB1bnRydXN0ZWQgc2lnbmF0dXJlIGFuZCAtLXZlcmlmeS1zaWduYXR1cmVzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtcmYgZW1wdHktcmVwbyIgJiYKKwlnaXQgaW5pdCBlbXB0eS1yZXBvICYmCisJdGVzdF9tdXN0X2ZhaWwgXAorCQlnaXQgLUMgZW1wdHktcmVwbyBwdWxsIC0tZmYtb25seSAtLXZlcmlmeS1zaWduYXR1cmVzIC4uL3VudHJ1c3RlZCAyPnB1bGxlcnJvciAmJgorCXRlc3RfaTE4bmdyZXAgImhhcyBhbiB1bnRydXN0ZWQgR1BHIHNpZ25hdHVyZSIgcHVsbGVycm9yCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHICdwdWxsIGNvbW1pdCBpbnRvIHVuYm9ybiBicmFuY2ggd2l0aCB1bnRydXN0ZWQgc2lnbmF0dXJlIGFuZCAtLXZlcmlmeS1zaWduYXR1cmVzIGFuZCBtaW5UcnVzdExldmVsPXVsdGltYXRlJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtcmYgZW1wdHktcmVwbyIgJiYKKwlnaXQgaW5pdCBlbXB0eS1yZXBvICYmCisJdGVzdF9jb25maWdfZ2xvYmFsIGdwZy5taW5UcnVzdExldmVsIHVsdGltYXRlICYmCisJdGVzdF9tdXN0X2ZhaWwgXAorCQlnaXQgLUMgZW1wdHktcmVwbyBwdWxsIC0tZmYtb25seSAtLXZlcmlmeS1zaWduYXR1cmVzIC4uL3VudHJ1c3RlZCAyPnB1bGxlcnJvciAmJgorCXRlc3RfaTE4bmdyZXAgImhhcyBhbiB1bnRydXN0ZWQgR1BHIHNpZ25hdHVyZSIgcHVsbGVycm9yCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHICdwdWxsIGNvbW1pdCBpbnRvIHVuYm9ybiBicmFuY2ggd2l0aCB1bnRydXN0ZWQgc2lnbmF0dXJlIGFuZCAtLXZlcmlmeS1zaWduYXR1cmVzIGFuZCBtaW5UcnVzdExldmVsPW1hcmdpbmFsJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtcmYgZW1wdHktcmVwbyIgJiYKKwlnaXQgaW5pdCBlbXB0eS1yZXBvICYmCisJdGVzdF9jb25maWdfZ2xvYmFsIGdwZy5taW5UcnVzdExldmVsIG1hcmdpbmFsICYmCisJdGVzdF9tdXN0X2ZhaWwgXAorCQlnaXQgLUMgZW1wdHktcmVwbyBwdWxsIC0tZmYtb25seSAtLXZlcmlmeS1zaWduYXR1cmVzIC4uL3VudHJ1c3RlZCAyPnB1bGxlcnJvciAmJgorCXRlc3RfaTE4bmdyZXAgImhhcyBhbiB1bnRydXN0ZWQgR1BHIHNpZ25hdHVyZSIgcHVsbGVycm9yCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHICdwdWxsIGNvbW1pdCBpbnRvIHVuYm9ybiBicmFuY2ggd2l0aCB1bnRydXN0ZWQgc2lnbmF0dXJlIGFuZCAtLXZlcmlmeS1zaWduYXR1cmVzIGFuZCBtaW5UcnVzdExldmVsPXVuZGVmaW5lZCcgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLXJmIGVtcHR5LXJlcG8iICYmCisJZ2l0IGluaXQgZW1wdHktcmVwbyAmJgorCXRlc3RfY29uZmlnX2dsb2JhbCBncGcubWluVHJ1c3RMZXZlbCB1bmRlZmluZWQgJiYKKwlnaXQgLUMgZW1wdHktcmVwbyBwdWxsIC0tZmYtb25seSAtLXZlcmlmeS1zaWduYXR1cmVzIC4uL3VudHJ1c3RlZCA+cHVsbG91dHB1dCAmJgorCXRlc3RfaTE4bmdyZXAgImhhcyBhIGdvb2QgR1BHIHNpZ25hdHVyZSIgcHVsbG91dHB1dAorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU1ODAtY2xvbmUtcHVzaC11bmMuc2ggYi90L3Q1NTgwLXVuYy1wYXRocy5zaApzaW1pbGFyaXR5IGluZGV4IDY2JQpyZW5hbWUgZnJvbSB0L3Q1NTgwLWNsb25lLXB1c2gtdW5jLnNoCnJlbmFtZSB0byB0L3Q1NTgwLXVuYy1wYXRocy5zaAppbmRleCBiYTU0OGRmLi5jZjc2OGIzIDEwMDc1NQotLS0gYS90L3Q1NTgwLWNsb25lLXB1c2gtdW5jLnNoCisrKyBiL3QvdDU1ODAtdW5jLXBhdGhzLnNoCkBAIC00MCw2ICs0MCwyMyBAQAogCWdpdCBjbG9uZSAiZmlsZTovLyRVTkNQQVRIIiBjbG9uZQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjbG9uZSB3aXRob3V0IGZpbGU6Ly8nICcKKwlnaXQgY2xvbmUgIiRVTkNQQVRIIiBjbG9uZS13aXRob3V0LWZpbGUKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xvbmUgd2l0aCBiYWNrc2xhc2hlZCBwYXRoJyAnCisJQkFDS1NMQVNIRUQ9IiQoZWNobyAiJFVOQ1BBVEgiIHwgdHIgLyBcXFxcKSIgJiYKKwlnaXQgY2xvbmUgIiRCQUNLU0xBU0hFRCIgYmFja3NsYXNoZWQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBmZXRjaCAnCisJZ2l0IGluaXQgdG8tZmV0Y2ggJiYKKwkoCisJCWNkIHRvLWZldGNoICYmCisJCWdpdCBmZXRjaCAiJFVOQ1BBVEgiIG1hc3RlcgorCSkKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyBwdXNoICcKIAkoCiAJCWNkIGNsb25lICYmCkBAIC01Myw4ICs3MCwyMCBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIE1JTkdXICdyZW1vdGUgbmljayBjYW5ub3QgY29udGFpbiBiYWNrc2xhc2hlcycgJwogCUJBQ0tTTEFTSEVEPSIkKHdpbnB3ZCB8IHRyIC8gXFxcXCkiICYmCi0JZ2l0IGxzLXJlbW90ZSAiJEJBQ0tTTEFTSEVEIiA+b3V0IDI+ZXJyICYmCisJZ2l0IGxzLXJlbW90ZSAiJEJBQ0tTTEFTSEVEIiAyPmVyciAmJgogCXRlc3RfaTE4bmdyZXAgISAidW5hYmxlIHRvIGFjY2VzcyIgZXJyCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3VuYyBhbHRlcm5hdGVzJyAnCisJdHJlZT0iJChnaXQgcmV2LXBhcnNlIEhFQUQ6KSIgJiYKKwlta2RpciB0ZXN0LXVuYy1hbHRlcm5hdGUgJiYKKwkoCisJCWNkIHRlc3QtdW5jLWFsdGVybmF0ZSAmJgorCQlnaXQgaW5pdCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgc2hvdyAkdHJlZSAmJgorCQllY2hvICIkVU5DUEFUSC8uZ2l0L29iamVjdHMiID4uZ2l0L29iamVjdHMvaW5mby9hbHRlcm5hdGVzICYmCisJCWdpdCBzaG93ICR0cmVlCisJKQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU1ODEtaHR0cC1jdXJsLXZlcmJvc2Uuc2ggYi90L3Q1NTgxLWh0dHAtY3VybC12ZXJib3NlLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjUxMjliMDcKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q1NTgxLWh0dHAtY3VybC12ZXJib3NlLnNoCkBAIC0wLDAgKzEsMjYgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSd0ZXN0IEdJVF9DVVJMX1ZFUkJPU0UnCisuIC4vdGVzdC1saWIuc2gKKy4gIiRURVNUX0RJUkVDVE9SWSIvbGliLWh0dHBkLnNoCitzdGFydF9odHRwZAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCByZXBvc2l0b3J5JyAnCisJbWtkaXIgIiRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgvcmVwby5naXQiICYmCisJZ2l0IC1DICIkSFRUUERfRE9DVU1FTlRfUk9PVF9QQVRIL3JlcG8uZ2l0IiAtLWJhcmUgaW5pdCAmJgorCWdpdCBjb25maWcgcHVzaC5kZWZhdWx0IG1hdGNoaW5nICYmCisJZWNobyBjb250ZW50ID5maWxlICYmCisJZ2l0IGFkZCBmaWxlICYmCisJZ2l0IGNvbW1pdCAtbSBvbmUgJiYKKwlnaXQgcmVtb3RlIGFkZCBwdWJsaWMgIiRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgvcmVwby5naXQiICYmCisJZ2l0IHB1c2ggcHVibGljIG1hc3RlcjptYXN0ZXIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFpbHVyZSBpbiBnaXQtdXBsb2FkLXBhY2sgaXMgc2hvd24nICcKKwl0ZXN0X21pZ2h0X2ZhaWwgZW52IEdJVF9DVVJMX1ZFUkJPU0U9MSBcCisJCWdpdCBjbG9uZSAiJEhUVFBEX1VSTC9lcnJvcl9naXRfdXBsb2FkX3BhY2svc21hcnQvcmVwby5naXQiIFwKKwkJMj5jdXJsX2xvZyAmJgorCWdyZXAgIjwgSFRUUC8xLjEgNTAwIEludGVudGlvbmFsIEJyZWFrYWdlIiBjdXJsX2xvZworJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU2MDEtY2xvbmUuc2ggYi90L3Q1NjAxLWNsb25lLnNoCmluZGV4IDhiYmM3MDYuLjg0ZWEyYTMgMTAwNzU1Ci0tLSBhL3QvdDU2MDEtY2xvbmUuc2gKKysrIGIvdC90NTYwMS1jbG9uZS5zaApAQCAtMzQ1LDcgKzM0NSw3IEBACiB9CiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Nsb25lIG15aG9zdDpzcmMgdXNlcyBzc2gnICcKLQlnaXQgY2xvbmUgbXlob3N0OnNyYyBzc2gtY2xvbmUgJiYKKwlHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAgZ2l0IGNsb25lIG15aG9zdDpzcmMgc3NoLWNsb25lICYmCiAJZXhwZWN0X3NzaCBteWhvc3Qgc3JjCiAnCiAKQEAgLTM1NiwxMiArMzU2LDEyIEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2JyYWNrZXRlZCBob3N0bmFtZXMgYXJlIHN0aWxsIHNzaCcgJwotCWdpdCBjbG9uZSAiW215aG9zdDoxMjNdOnNyYyIgc3NoLWJyYWNrZXQtY2xvbmUgJiYKKwlHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAgZ2l0IGNsb25lICJbbXlob3N0OjEyM106c3JjIiBzc2gtYnJhY2tldC1jbG9uZSAmJgogCWV4cGVjdF9zc2ggIi1wIDEyMyIgbXlob3N0IHNyYwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdPcGVuU1NIIHZhcmlhbnQgcGFzc2VzIC00JyAnCi0JZ2l0IGNsb25lIC00ICJbbXlob3N0OjEyM106c3JjIiBzc2gtaXB2NC1jbG9uZSAmJgorCUdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT049MCBnaXQgY2xvbmUgLTQgIltteWhvc3Q6MTIzXTpzcmMiIHNzaC1pcHY0LWNsb25lICYmCiAJZXhwZWN0X3NzaCAiLTQgLXAgMTIzIiBteWhvc3Qgc3JjCiAnCiAKQEAgLTQwNSw3ICs0MDUsNyBAQAogCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgXCJcJFRSQVNIX0RJUkVDVE9SWS91cGxpbmtcIiIgJiYKIAlHSVRfU1NIPSIkVFJBU0hfRElSRUNUT1JZL3VwbGluayIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgIkdJVF9TU0g9XCJcJFRSQVNIX0RJUkVDVE9SWS9zc2hcJFhcIiIgJiYKLQlnaXQgY2xvbmUgIltteWhvc3Q6MTIzXTpzcmMiIHNzaC1icmFja2V0LWNsb25lLXNzaGxpa2UtdXBsaW5rICYmCisJR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTj0wIGdpdCBjbG9uZSAiW215aG9zdDoxMjNdOnNyYyIgc3NoLWJyYWNrZXQtY2xvbmUtc3NobGlrZS11cGxpbmsgJiYKIAlleHBlY3Rfc3NoICItcCAxMjMiIG15aG9zdCBzcmMKICcKIApAQCAtNDM0LDcgKzQzNCw2IEBACiAJZXhwZWN0X3NzaCAiLXYgLVAgMTIzIiBteWhvc3Qgc3JjCiAnCiAKLVNRPSInIgogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2luZ2xlIHF1b3RlZCBwbGluay5leGUgaW4gR0lUX1NTSF9DT01NQU5EJyAnCiAJY29weV9zc2hfd3JhcHBlcl9hcyAiJFRSQVNIX0RJUkVDVE9SWS9wbGluay5leGUiICYmCiAJR0lUX1NTSF9DT01NQU5EPSIkU1EkVFJBU0hfRElSRUNUT1JZL3BsaW5rLmV4ZSRTUSAtdiIgXApAQCAtNDQ0LDE0ICs0NDMsMTQgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnR0lUX1NTSF9WQVJJQU5UIG92ZXJyaWRlcyBwbGluayBkZXRlY3Rpb24nICcKIAljb3B5X3NzaF93cmFwcGVyX2FzICIkVFJBU0hfRElSRUNUT1JZL3BsaW5rIiAmJgotCUdJVF9TU0hfVkFSSUFOVD1zc2ggXAotCWdpdCBjbG9uZSAiW215aG9zdDoxMjNdOnNyYyIgc3NoLWJyYWNrZXQtY2xvbmUtdmFyaWFudC0xICYmCisJR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTj0wIEdJVF9TU0hfVkFSSUFOVD1zc2ggXAorCQlnaXQgY2xvbmUgIltteWhvc3Q6MTIzXTpzcmMiIHNzaC1icmFja2V0LWNsb25lLXZhcmlhbnQtMSAmJgogCWV4cGVjdF9zc2ggIi1wIDEyMyIgbXlob3N0IHNyYwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzc2gudmFyaWFudCBvdmVycmlkZXMgcGxpbmsgZGV0ZWN0aW9uJyAnCiAJY29weV9zc2hfd3JhcHBlcl9hcyAiJFRSQVNIX0RJUkVDVE9SWS9wbGluayIgJiYKLQlnaXQgLWMgc3NoLnZhcmlhbnQ9c3NoIFwKKwlHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAgZ2l0IC1jIHNzaC52YXJpYW50PXNzaCBcCiAJCWNsb25lICJbbXlob3N0OjEyM106c3JjIiBzc2gtYnJhY2tldC1jbG9uZS12YXJpYW50LTIgJiYKIAlleHBlY3Rfc3NoICItcCAxMjMiIG15aG9zdCBzcmMKICcKQEAgLTQ4MiwxMiArNDgxLDEyIEBACiAjICQzIHBhdGgKIHRlc3RfY2xvbmVfdXJsICgpIHsKIAljb3VudGVyPSQoKCRjb3VudGVyICsgMSkpCi0JdGVzdF9taWdodF9mYWlsIGdpdCBjbG9uZSAiJDEiIHRtcCRjb3VudGVyICYmCisJdGVzdF9taWdodF9mYWlsIGVudiBHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAgZ2l0IGNsb25lICIkMSIgdG1wJGNvdW50ZXIgJiYKIAlzaGlmdCAmJgogCWV4cGVjdF9zc2ggIiRAIgogfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICFNSU5HVyAnY2xvbmUgYzp0ZW1wIGlzIHNzbCcgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAhTUlOR1csIUNZR1dJTiAnY2xvbmUgYzp0ZW1wIGlzIHNzbCcgJwogCXRlc3RfY2xvbmVfdXJsIGM6dGVtcCBjIHRlbXAKICcKIApAQCAtNjExLDEwICs2MTAsNiBAQAogCWdpdCAtQyByZXBsYXkuZ2l0IGluZGV4LXBhY2sgLXYgLS1zdGRpbiA8dG1wLnBhY2sKICcKIAotaGV4Mm9jdCAoKSB7Ci0JcGVybCAtbmUgJ3ByaW50ZiAiXFwlMDNvIiwgaGV4IGZvciAvLi4vZycKLX0KLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xvbmUgb24gY2FzZS1pbnNlbnNpdGl2ZSBmcycgJwogCWdpdCBpbml0IGljYXNlZnMgJiYKIAkoCkBAIC02MzQsMjYgKzYyOSwzMiBAQAogCXRlc3RfaTE4bmdyZXAgInRoZSBmb2xsb3dpbmcgcGF0aHMgaGF2ZSBjb2xsaWRlZCIgaWNhc2Vmcy93YXJuaW5nCiAnCiAKLXBhcnRpYWxfY2xvbmUgKCkgeworcGFydGlhbF9jbG9uZV9zZXJ2ZXIgKCkgewogCSAgICAgICBTRVJWRVI9IiQxIiAmJgotCSAgICAgICBVUkw9IiQyIiAmJgogCiAJcm0gLXJmICIkU0VSVkVSIiBjbGllbnQgJiYKIAl0ZXN0X2NyZWF0ZV9yZXBvICIkU0VSVkVSIiAmJgogCXRlc3RfY29tbWl0IC1DICIkU0VSVkVSIiBvbmUgJiYKLQlIQVNIMT0kKGdpdCBoYXNoLW9iamVjdCAiJFNFUlZFUi9vbmUudCIpICYmCisJSEFTSDE9JChnaXQgLUMgIiRTRVJWRVIiIGhhc2gtb2JqZWN0IG9uZS50KSAmJgogCWdpdCAtQyAiJFNFUlZFUiIgcmV2ZXJ0IEhFQUQgJiYKIAl0ZXN0X2NvbW1pdCAtQyAiJFNFUlZFUiIgdHdvICYmCi0JSEFTSDI9JChnaXQgaGFzaC1vYmplY3QgIiRTRVJWRVIvdHdvLnQiKSAmJgorCUhBU0gyPSQoZ2l0IC1DICIkU0VSVkVSIiBoYXNoLW9iamVjdCB0d28udCkgJiYKIAl0ZXN0X2NvbmZpZyAtQyAiJFNFUlZFUiIgdXBsb2FkcGFjay5hbGxvd2ZpbHRlciAxICYmCi0JdGVzdF9jb25maWcgLUMgIiRTRVJWRVIiIHVwbG9hZHBhY2suYWxsb3dhbnlzaGExaW53YW50IDEgJiYKKwl0ZXN0X2NvbmZpZyAtQyAiJFNFUlZFUiIgdXBsb2FkcGFjay5hbGxvd2FueXNoYTFpbndhbnQgMQorfQogCitwYXJ0aWFsX2Nsb25lICgpIHsKKwkgICAgICAgU0VSVkVSPSIkMSIgJiYKKwkgICAgICAgVVJMPSIkMiIgJiYKKworCXBhcnRpYWxfY2xvbmVfc2VydmVyICIke1NFUlZFUn0iICYmCiAJZ2l0IGNsb25lIC0tZmlsdGVyPWJsb2I6bGltaXQ9MCAiJFVSTCIgY2xpZW50ICYmCiAKIAlnaXQgLUMgY2xpZW50IGZzY2sgJiYKIAogCSMgRW5zdXJlIHRoYXQgdW5uZWVkZWQgYmxvYnMgYXJlIG5vdCBpbmFkdmVydGVudGx5IGZldGNoZWQuCi0JdGVzdF9jb25maWcgLUMgY2xpZW50IGV4dGVuc2lvbnMucGFydGlhbGNsb25lICJub3QgYSByZW1vdGUiICYmCisJdGVzdF9jb25maWcgLUMgY2xpZW50IHJlbW90ZS5vcmlnaW4ucHJvbWlzb3IgImZhbHNlIiAmJgorCWdpdCAtQyBjbGllbnQgY29uZmlnIC0tdW5zZXQgcmVtb3RlLm9yaWdpbi5wYXJ0aWFsY2xvbmVmaWx0ZXIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgLUMgY2xpZW50IGNhdC1maWxlIC1lICIkSEFTSDEiICYmCiAKIAkjIEJ1dCB0aGlzIGJsb2Igd2FzIGZldGNoZWQsIGJlY2F1c2UgY2xvbmUgcGVyZm9ybXMgYW4gaW5pdGlhbCBjaGVja291dApAQCAtNjY0LDYgKzY2NSwxMSBAQAogCXBhcnRpYWxfY2xvbmUgc2VydmVyICJmaWxlOi8vJChwd2QpL3NlcnZlciIKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncGFydGlhbCBjbG9uZSB3aXRoIC1vJyAnCisJcGFydGlhbF9jbG9uZV9zZXJ2ZXIgc2VydmVyICYmCisJZ2l0IGNsb25lIC1vIGJsYWggLS1maWx0ZXI9YmxvYjpsaW1pdD0wICJmaWxlOi8vJChwd2QpL3NlcnZlciIgY2xpZW50CisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BhcnRpYWwgY2xvbmU6IHdhcm4gaWYgc2VydmVyIGRvZXMgbm90IHN1cHBvcnQgb2JqZWN0IGZpbHRlcmluZycgJwogCXJtIC1yZiBzZXJ2ZXIgY2xpZW50ICYmCiAJdGVzdF9jcmVhdGVfcmVwbyBzZXJ2ZXIgJiYKQEAgLTczMyw2ICs3MzksNyBAQAogCXBhcnRpYWxfY2xvbmUgIiRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgvc2VydmVyIiAiJEhUVFBEX1VSTC9zbWFydC9zZXJ2ZXIiCiAnCiAKLXN0b3BfaHR0cGQKKyMgRE8gTk9UIGFkZCBub24taHR0cGQtc3BlY2lmaWMgdGVzdHMgaGVyZSwgYmVjYXVzZSB0aGUgbGFzdCBwYXJ0IG9mIHRoaXMKKyMgdGVzdCBzY3JpcHQgaXMgb25seSBleGVjdXRlZCB3aGVuIGh0dHBkIGlzIGF2YWlsYWJsZSBhbmQgZW5hYmxlZC4KIAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1NjA0LWNsb25lLXJlZmVyZW5jZS5zaCBiL3QvdDU2MDQtY2xvbmUtcmVmZXJlbmNlLnNoCmluZGV4IDQzMjAwODIuLjBjNzRiNGUgMTAwNzU1Ci0tLSBhL3QvdDU2MDQtY2xvbmUtcmVmZXJlbmNlLnNoCisrKyBiL3QvdDU2MDQtY2xvbmUtcmVmZXJlbmNlLnNoCkBAIC0yMjEsNCArMjIxLDEzOCBAQAogCSggY2QgQyAmJiBnaXQgZnNjayApCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHJlcG8gd2l0aCBnYXJiYWdlIGluIG9iamVjdHMvKicgJworCWdpdCBpbml0IFMgJiYKKwkoCisJCWNkIFMgJiYKKwkJdGVzdF9jb21taXQgQSAmJgorCisJCWNkIC5naXQvb2JqZWN0cyAmJgorCQk+LnNvbWUtaGlkZGVuLWZpbGUgJiYKKwkJPnNvbWUtZmlsZSAmJgorCQlta2RpciAuc29tZS1oaWRkZW4tZGlyICYmCisJCT4uc29tZS1oaWRkZW4tZGlyL3NvbWUtZmlsZSAmJgorCQk+LnNvbWUtaGlkZGVuLWRpci8uc29tZS1kb3QtZmlsZSAmJgorCQlta2RpciBzb21lLWRpciAmJgorCQk+c29tZS1kaXIvc29tZS1maWxlICYmCisJCT5zb21lLWRpci8uc29tZS1kb3QtZmlsZQorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xvbmUgYSByZXBvIHdpdGggZ2FyYmFnZSBpbiBvYmplY3RzLyonICcKKwlmb3Igb3B0aW9uIGluIC0tbG9jYWwgLS1uby1oYXJkbGlua3MgLS1zaGFyZWQgLS1kaXNzb2NpYXRlCisJZG8KKwkJZ2l0IGNsb25lICRvcHRpb24gUyBTJG9wdGlvbiB8fCByZXR1cm4gMSAmJgorCQlnaXQgLUMgUyRvcHRpb24gZnNjayB8fCByZXR1cm4gMQorCWRvbmUgJiYKKwlmaW5kIFMtKiAtbmFtZSAiKnNvbWUqIiB8IHNvcnQgPmFjdHVhbCAmJgorCWNhdCA+ZXhwZWN0ZWQgPDwtRU9GICYmCisJUy0tZGlzc29jaWF0ZS8uZ2l0L29iamVjdHMvLnNvbWUtaGlkZGVuLWRpcgorCVMtLWRpc3NvY2lhdGUvLmdpdC9vYmplY3RzLy5zb21lLWhpZGRlbi1kaXIvLnNvbWUtZG90LWZpbGUKKwlTLS1kaXNzb2NpYXRlLy5naXQvb2JqZWN0cy8uc29tZS1oaWRkZW4tZGlyL3NvbWUtZmlsZQorCVMtLWRpc3NvY2lhdGUvLmdpdC9vYmplY3RzLy5zb21lLWhpZGRlbi1maWxlCisJUy0tZGlzc29jaWF0ZS8uZ2l0L29iamVjdHMvc29tZS1kaXIKKwlTLS1kaXNzb2NpYXRlLy5naXQvb2JqZWN0cy9zb21lLWRpci8uc29tZS1kb3QtZmlsZQorCVMtLWRpc3NvY2lhdGUvLmdpdC9vYmplY3RzL3NvbWUtZGlyL3NvbWUtZmlsZQorCVMtLWRpc3NvY2lhdGUvLmdpdC9vYmplY3RzL3NvbWUtZmlsZQorCVMtLWxvY2FsLy5naXQvb2JqZWN0cy8uc29tZS1oaWRkZW4tZGlyCisJUy0tbG9jYWwvLmdpdC9vYmplY3RzLy5zb21lLWhpZGRlbi1kaXIvLnNvbWUtZG90LWZpbGUKKwlTLS1sb2NhbC8uZ2l0L29iamVjdHMvLnNvbWUtaGlkZGVuLWRpci9zb21lLWZpbGUKKwlTLS1sb2NhbC8uZ2l0L29iamVjdHMvLnNvbWUtaGlkZGVuLWZpbGUKKwlTLS1sb2NhbC8uZ2l0L29iamVjdHMvc29tZS1kaXIKKwlTLS1sb2NhbC8uZ2l0L29iamVjdHMvc29tZS1kaXIvLnNvbWUtZG90LWZpbGUKKwlTLS1sb2NhbC8uZ2l0L29iamVjdHMvc29tZS1kaXIvc29tZS1maWxlCisJUy0tbG9jYWwvLmdpdC9vYmplY3RzL3NvbWUtZmlsZQorCVMtLW5vLWhhcmRsaW5rcy8uZ2l0L29iamVjdHMvLnNvbWUtaGlkZGVuLWRpcgorCVMtLW5vLWhhcmRsaW5rcy8uZ2l0L29iamVjdHMvLnNvbWUtaGlkZGVuLWRpci8uc29tZS1kb3QtZmlsZQorCVMtLW5vLWhhcmRsaW5rcy8uZ2l0L29iamVjdHMvLnNvbWUtaGlkZGVuLWRpci9zb21lLWZpbGUKKwlTLS1uby1oYXJkbGlua3MvLmdpdC9vYmplY3RzLy5zb21lLWhpZGRlbi1maWxlCisJUy0tbm8taGFyZGxpbmtzLy5naXQvb2JqZWN0cy9zb21lLWRpcgorCVMtLW5vLWhhcmRsaW5rcy8uZ2l0L29iamVjdHMvc29tZS1kaXIvLnNvbWUtZG90LWZpbGUKKwlTLS1uby1oYXJkbGlua3MvLmdpdC9vYmplY3RzL3NvbWUtZGlyL3NvbWUtZmlsZQorCVMtLW5vLWhhcmRsaW5rcy8uZ2l0L29iamVjdHMvc29tZS1maWxlCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgU1lNTElOS1MgJ3NldHVwIHJlcG8gd2l0aCBtYW51YWxseSBzeW1saW5rZWQgb3IgdW5rbm93biBmaWxlcyBhdCBvYmplY3RzLycgJworCWdpdCBpbml0IFQgJiYKKwkoCisJCWNkIFQgJiYKKwkJZ2l0IGNvbmZpZyBnYy5hdXRvIDAgJiYKKwkJdGVzdF9jb21taXQgQSAmJgorCQlnaXQgZ2MgJiYKKwkJdGVzdF9jb21taXQgQiAmJgorCisJCWNkIC5naXQvb2JqZWN0cyAmJgorCQltdiBwYWNrIHBhY2tzICYmCisJCWxuIC1zIHBhY2tzIHBhY2sgJiYKKwkJZmluZCA/PyAtdHlwZSBkID5sb29zZS1kaXJzICYmCisJCWxhc3RfbG9vc2U9JCh0YWlsIC1uIDEgbG9vc2UtZGlycykgJiYKKwkJbXYgJGxhc3RfbG9vc2UgYS1sb29zZS1kaXIgJiYKKwkJbG4gLXMgYS1sb29zZS1kaXIgJGxhc3RfbG9vc2UgJiYKKwkJZmlyc3RfbG9vc2U9JChoZWFkIC1uIDEgbG9vc2UtZGlycykgJiYKKwkJcm0gLWYgbG9vc2UtZGlycyAmJgorCisJCWNkICRmaXJzdF9sb29zZSAmJgorCQlvYmo9JChscyAqKSAmJgorCQltdiAkb2JqIC4uL2FuLW9iamVjdCAmJgorCQlsbiAtcyAuLi9hbi1vYmplY3QgJG9iaiAmJgorCisJCWNkIC4uLyAmJgorCQlmaW5kIC4gLXR5cGUgZiB8IHNvcnQgPi4uLy4uLy4uL1Qub2JqZWN0cy1maWxlcy5yYXcgJiYKKwkJZmluZCAuIC10eXBlIGwgfCBzb3J0ID4uLi8uLi8uLi9ULm9iamVjdHMtc3ltbGlua3MucmF3ICYmCisJCWVjaG8gdW5rbm93bl9jb250ZW50ID51bmtub3duX2ZpbGUKKwkpICYmCisJZ2l0IC1DIFQgZnNjayAmJgorCWdpdCAtQyBUIHJldi1saXN0IC0tYWxsIC0tb2JqZWN0cyA+VC5vYmplY3RzCisnCisKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBTWU1MSU5LUyAnY2xvbmUgcmVwbyB3aXRoIHN5bWxpbmtlZCBvciB1bmtub3duIGZpbGVzIGF0IG9iamVjdHMvJyAnCisJZm9yIG9wdGlvbiBpbiAtLWxvY2FsIC0tbm8taGFyZGxpbmtzIC0tc2hhcmVkIC0tZGlzc29jaWF0ZQorCWRvCisJCWdpdCBjbG9uZSAkb3B0aW9uIFQgVCRvcHRpb24gfHwgcmV0dXJuIDEgJiYKKwkJZ2l0IC1DIFQkb3B0aW9uIGZzY2sgfHwgcmV0dXJuIDEgJiYKKwkJZ2l0IC1DIFQkb3B0aW9uIHJldi1saXN0IC0tYWxsIC0tb2JqZWN0cyA+VCRvcHRpb24ub2JqZWN0cyAmJgorCQl0ZXN0X2NtcCBULm9iamVjdHMgVCRvcHRpb24ub2JqZWN0cyAmJgorCQkoCisJCQljZCBUJG9wdGlvbi8uZ2l0L29iamVjdHMgJiYKKwkJCWZpbmQgLiAtdHlwZSBmIHwgc29ydCA+Li4vLi4vLi4vVCRvcHRpb24ub2JqZWN0cy1maWxlcy5yYXcgJiYKKwkJCWZpbmQgLiAtdHlwZSBsIHwgc29ydCA+Li4vLi4vLi4vVCRvcHRpb24ub2JqZWN0cy1zeW1saW5rcy5yYXcKKwkJKQorCWRvbmUgJiYKKworCWZvciByYXcgaW4gJChscyBUKi5yYXcpCisJZG8KKwkJc2VkIC1lICJzIS8uLi8hL1kvITsgcyFbMC05YS1mXVx7MzgsXH0hWiEiIC1lICIvY29tbWl0LWdyYXBoL2QiIFwKKwkJICAgIC1lICIvbXVsdGktcGFjay1pbmRleC9kIiA8JHJhdyA+JHJhdy5kZS1zaGEtMSAmJgorCQlzb3J0ICRyYXcuZGUtc2hhLTEgPiRyYXcuZGUtc2hhIHx8IHJldHVybiAxCisJZG9uZSAmJgorCisJY2F0ID5leHBlY3RlZC1maWxlcyA8PC1FT0YgJiYKKwkuL1kvWgorCS4vWS9aCisJLi9ZL1oKKwkuL2EtbG9vc2UtZGlyL1oKKwkuL2FuLW9iamVjdAorCS4vaW5mby9wYWNrcworCS4vcGFjay9wYWNrLVouaWR4CisJLi9wYWNrL3BhY2stWi5wYWNrCisJLi9wYWNrcy9wYWNrLVouaWR4CisJLi9wYWNrcy9wYWNrLVoucGFjaworCS4vdW5rbm93bl9maWxlCisJRU9GCisKKwlmb3Igb3B0aW9uIGluIC0tbG9jYWwgLS1uby1oYXJkbGlua3MgLS1kaXNzb2NpYXRlCisJZG8KKwkJdGVzdF9jbXAgZXhwZWN0ZWQtZmlsZXMgVCRvcHRpb24ub2JqZWN0cy1maWxlcy5yYXcuZGUtc2hhIHx8IHJldHVybiAxICYmCisJCXRlc3RfbXVzdF9iZV9lbXB0eSBUJG9wdGlvbi5vYmplY3RzLXN5bWxpbmtzLnJhdy5kZS1zaGEgfHwgcmV0dXJuIDEKKwlkb25lICYmCisKKwllY2hvIC4vaW5mby9hbHRlcm5hdGVzID5leHBlY3RlZC1maWxlcyAmJgorCXRlc3RfY21wIGV4cGVjdGVkLWZpbGVzIFQtLXNoYXJlZC5vYmplY3RzLWZpbGVzLnJhdyAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBULS1zaGFyZWQub2JqZWN0cy1zeW1saW5rcy5yYXcKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1NjA3LWNsb25lLWJ1bmRsZS5zaCBiL3QvdDU2MDctY2xvbmUtYnVuZGxlLnNoCmluZGV4IGNmMzllOWUuLjkxMDhmZjYgMTAwNzU1Ci0tLSBhL3QvdDU2MDctY2xvbmUtYnVuZGxlLnNoCisrKyBiL3QvdDU2MDctY2xvbmUtYnVuZGxlLnNoCkBAIC0xNCw2ICsxNCwxMiBAQAogCWdpdCB0YWcgLWQgdGhpcmQKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnInZlcmlmeSIgbmVlZHMgYSB3b3JrdHJlZScgJworCWdpdCBidW5kbGUgY3JlYXRlIHRpcC5idW5kbGUgLTEgbWFzdGVyICYmCisJdGVzdF9tdXN0X2ZhaWwgbm9uZ2l0IGdpdCBidW5kbGUgdmVyaWZ5IC4uL3RpcC5idW5kbGUgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJuZWVkIGEgcmVwb3NpdG9yeSIgZXJyCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Fubm90YXRlZCB0YWdzIGNhbiBiZSBleGNsdWRlZCBieSByZXYtbGlzdCBvcHRpb25zJyAnCiAJZ2l0IGJ1bmRsZSBjcmVhdGUgYnVuZGxlIC0tYWxsIC0tc2luY2U9Ny5BcHIuMjAwNS4xNToxNDowMC4tMDcwMCAmJgogCWdpdCBscy1yZW1vdGUgYnVuZGxlID4gb3V0cHV0ICYmCkBAIC01OCw3ICs2NCw3IEBACiAJdGVzdCAtcyBoZWFkcyAmJgogCWdpdCBmZXRjaCBsb25nLXN1YmplY3QtYnVuZGxlLmJkbCAmJgogCXNlZCAtbiAiL14tL3twO3E7fSIgbG9uZy1zdWJqZWN0LWJ1bmRsZS5iZGwgPmJvdW5kYXJ5ICYmCi0JZ3JlcCAiXi1bMC05YS1mXVxcezQwXFx9ICIgYm91bmRhcnkKKwlncmVwICJeLSRPSURfUkVHRVggIiBib3VuZGFyeQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcmVyZXF1aXNpdGVzIHdpdGggYW4gZW1wdHkgY29tbWl0IG1lc3NhZ2UnICcKQEAgLTc3LDQgKzgzLDE1IEBACiAJdGVzdF9wYXRoX2lzX21pc3NpbmcgZmFpbC5idW5kbGUubG9jawogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmZXRjaCBTSEEtMSBmcm9tIGJ1bmRsZScgJworCXRlc3RfY3JlYXRlX3JlcG8gZm9vICYmCisJdGVzdF9jb21taXQgLUMgZm9vIHggJiYKKwlnaXQgLUMgZm9vIGJ1bmRsZSBjcmVhdGUgdGlwLmJ1bmRsZSAtMSBtYXN0ZXIgJiYKKwlnaXQgLUMgZm9vIHJldi1wYXJzZSBIRUFEID5oYXNoICYmCisKKwkjIEV4ZXJjaXNlIHRvIGVuc3VyZSB0aGF0IGZldGNoaW5nIGEgU0hBLTEgZnJvbSBhIGJ1bmRsZSB3b3JrcyB3aXRoIG5vCisJIyBlcnJvcnMKKwlnaXQgZmV0Y2ggLS1uby10YWdzIGZvby90aXAuYnVuZGxlICIkKGNhdCBoYXNoKSIKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1NjA4LWNsb25lLTJnYi5zaCBiL3QvdDU2MDgtY2xvbmUtMmdiLnNoCmluZGV4IDJjNmJjMDcuLmVlZTA4NDIgMTAwNzU1Ci0tLSBhL3QvdDU2MDgtY2xvbmUtMmdiLnNoCisrKyBiL3QvdDU2MDgtY2xvbmUtMmdiLnNoCkBAIC0zLDcgKzMsNyBAQAogdGVzdF9kZXNjcmlwdGlvbj0nVGVzdCBjbG9uaW5nIGEgcmVwb3NpdG9yeSBsYXJnZXIgdGhhbiAyIGdpZ2FieXRlJwogLiAuL3Rlc3QtbGliLnNoCiAKLWlmIHRlc3QgLXogIiRHSVRfVEVTVF9DTE9ORV8yR0IiCitpZiAhIHRlc3RfYm9vbF9lbnYgR0lUX1RFU1RfQ0xPTkVfMkdCIGZhbHNlCiB0aGVuCiAJc2F5ICdTa2lwcGluZyBleHBlbnNpdmUgMkdCIGNsb25lIHRlc3Q7IGVuYWJsZSBpdCB3aXRoIEdJVF9URVNUX0NMT05FXzJHQj10JwogZWxzZQpkaWZmIC0tZ2l0IGEvdC90NTYxMS1jbG9uZS1jb25maWcuc2ggYi90L3Q1NjExLWNsb25lLWNvbmZpZy5zaAppbmRleCAzOTMyOWViLi42MGMxYmE5IDEwMDc1NQotLS0gYS90L3Q1NjExLWNsb25lLWNvbmZpZy5zaAorKysgYi90L3Q1NjExLWNsb25lLWNvbmZpZy5zaApAQCAtNDUsNiArNDUsNTMgQEAKIAl0ZXN0X2NtcCBleHBlY3QgY2hpbGQvZmlsZQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjbG9uZSAtYyByZW1vdGUub3JpZ2luLmZldGNoPTxyZWZzcGVjPiB3b3JrcycgJworCXJtIC1yZiBjaGlsZCAmJgorCWdpdCB1cGRhdGUtcmVmIHJlZnMvZ3JhYi9pdCByZWZzL2hlYWRzL21hc3RlciAmJgorCWdpdCB1cGRhdGUtcmVmIHJlZnMvbGVhdmUvb3V0IHJlZnMvaGVhZHMvbWFzdGVyICYmCisJZ2l0IGNsb25lIC1jICJyZW1vdGUub3JpZ2luLmZldGNoPStyZWZzL2dyYWIvKjpyZWZzL2dyYWIvKiIgLiBjaGlsZCAmJgorCWdpdCAtQyBjaGlsZCBmb3ItZWFjaC1yZWYgLS1mb3JtYXQ9IiUocmVmbmFtZSkiID5hY3R1YWwgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlyZWZzL2dyYWIvaXQKKwlyZWZzL2hlYWRzL21hc3RlcgorCXJlZnMvcmVtb3Rlcy9vcmlnaW4vSEVBRAorCXJlZnMvcmVtb3Rlcy9vcmlnaW4vbWFzdGVyCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgLWMgcmVtb3RlLm9yaWdpbi5mZXRjaD08cmVmc3BlYz4gY2xvbmUgd29ya3MnICcKKwlybSAtcmYgY2hpbGQgJiYKKwlnaXQgLWMgInJlbW90ZS5vcmlnaW4uZmV0Y2g9K3JlZnMvZ3JhYi8qOnJlZnMvZ3JhYi8qIiBjbG9uZSAuIGNoaWxkICYmCisJZ2l0IC1DIGNoaWxkIGZvci1lYWNoLXJlZiAtLWZvcm1hdD0iJShyZWZuYW1lKSIgPmFjdHVhbCAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCXJlZnMvZ3JhYi9pdAorCXJlZnMvaGVhZHMvbWFzdGVyCisJcmVmcy9yZW1vdGVzL29yaWdpbi9IRUFECisJcmVmcy9yZW1vdGVzL29yaWdpbi9tYXN0ZXIKKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Nsb25lIC1jIHJlbW90ZS48cmVtb3RlPi5mZXRjaD08cmVmc3BlYz4gLS1vcmlnaW49PG5hbWU+JyAnCisJcm0gLXJmIGNoaWxkICYmCisJZ2l0IGNsb25lIC0tb3JpZ2luPXVwc3RyZWFtIFwKKwkJICAtYyAicmVtb3RlLnVwc3RyZWFtLmZldGNoPStyZWZzL2dyYWIvKjpyZWZzL2dyYWIvKiIgXAorCQkgIC1jICJyZW1vdGUub3JpZ2luLmZldGNoPStyZWZzL2xlYXZlLyo6cmVmcy9sZWF2ZS8qIiBcCisJCSAgLiBjaGlsZCAmJgorCWdpdCAtQyBjaGlsZCBmb3ItZWFjaC1yZWYgLS1mb3JtYXQ9IiUocmVmbmFtZSkiID5hY3R1YWwgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlyZWZzL2dyYWIvaXQKKwlyZWZzL2hlYWRzL21hc3RlcgorCXJlZnMvcmVtb3Rlcy91cHN0cmVhbS9IRUFECisJcmVmcy9yZW1vdGVzL3Vwc3RyZWFtL21hc3RlcgorCUVPRgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwogIyBUZXN0cyBmb3IgdGhlIGhpZGRlbiBmaWxlIGF0dHJpYnV0ZSBvbiB3aW5kb3dzCiBpc19oaWRkZW4gKCkgewogCSMgVXNlIHRoZSBvdXRwdXQgb2YgYGF0dHJpYmAsIGlnbm9yZSB0aGUgYWJzb2x1dGUgcGF0aApkaWZmIC0tZ2l0IGEvdC90NTYxNi1wYXJ0aWFsLWNsb25lLnNoIGIvdC90NTYxNi1wYXJ0aWFsLWNsb25lLnNoCmluZGV4IDMzNmYwMmEuLjc3YmI5MWUgMTAwNzU1Ci0tLSBhL3QvdDU2MTYtcGFydGlhbC1jbG9uZS5zaAorKysgYi90L3Q1NjE2LXBhcnRpYWwtY2xvbmUuc2gKQEAgLTQyLDggKzQyLDE2IEBACiAKIAl0ZXN0X2NtcCBleHBlY3RfMS5vaWRzIG9ic2VydmVkLm9pZHMgJiYKIAl0ZXN0ICIkKGdpdCAtQyBwYzEgY29uZmlnIC0tbG9jYWwgY29yZS5yZXBvc2l0b3J5Zm9ybWF0dmVyc2lvbikiID0gIjEiICYmCi0JdGVzdCAiJChnaXQgLUMgcGMxIGNvbmZpZyAtLWxvY2FsIGV4dGVuc2lvbnMucGFydGlhbGNsb25lKSIgPSAib3JpZ2luIiAmJgotCXRlc3QgIiQoZ2l0IC1DIHBjMSBjb25maWcgLS1sb2NhbCBjb3JlLnBhcnRpYWxjbG9uZWZpbHRlcikiID0gImJsb2I6bm9uZSIKKwl0ZXN0ICIkKGdpdCAtQyBwYzEgY29uZmlnIC0tbG9jYWwgcmVtb3RlLm9yaWdpbi5wcm9taXNvcikiID0gInRydWUiICYmCisJdGVzdCAiJChnaXQgLUMgcGMxIGNvbmZpZyAtLWxvY2FsIHJlbW90ZS5vcmlnaW4ucGFydGlhbGNsb25lZmlsdGVyKSIgPSAiYmxvYjpub25lIgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgdGhhdCAucHJvbWlzb3IgZmlsZSBjb250YWlucyByZWZzIGZldGNoZWQnICcKKwlscyBwYzEvLmdpdC9vYmplY3RzL3BhY2svcGFjay0qLnByb21pc29yID5wcm9taXNvcmxpc3QgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAxIHByb21pc29ybGlzdCAmJgorCWdpdCAtQyBzcnYuYmFyZSByZXYtbGlzdCBIRUFEID5oZWFkaGFzaCAmJgorCWdyZXAgIiQoY2F0IGhlYWRoYXNoKSBIRUFEIiAkKGNhdCBwcm9taXNvcmxpc3QpICYmCisJZ3JlcCAiJChjYXQgaGVhZGhhc2gpIHJlZnMvaGVhZHMvbWFzdGVyIiAkKGNhdCBwcm9taXNvcmxpc3QpCiAnCiAKICMgY2hlY2tvdXQgbWFzdGVyIHRvIGZvcmNlIGR5bmFtaWMgb2JqZWN0IGZldGNoIG9mIGJsb2JzIGF0IEhFQUQuCkBAIC0yMDgsNiArMjE2LDI1IEBACiAJdGVzdF9jbXAgdW5pcXVlX3R5cGVzLmV4cGVjdGVkIHVuaXF1ZV90eXBlcy5vYnNlcnZlZAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdpbXBsaWNpdGx5IGNvbnN0cnVjdCBjb21iaW5lOiBmaWx0ZXIgd2l0aCByZXBlYXRlZCBmbGFncycgJworCUdJVF9UUkFDRT0kKHB3ZCkvdHJhY2UgZ2l0IGNsb25lIC0tYmFyZSBcCisJCS0tZmlsdGVyPWJsb2I6bm9uZSAtLWZpbHRlcj10cmVlOjEgXAorCQkiZmlsZTovLyQocHdkKS9zcnYuYmFyZSIgcGMyICYmCisJZ3JlcCAidHJhY2U6LiogZ2l0IHBhY2stb2JqZWN0cyAuKi0tZmlsdGVyPWNvbWJpbmU6YmxvYjpub25lK3RyZWU6MSIgXAorCQl0cmFjZSAmJgorCWdpdCAtQyBwYzIgcmV2LWxpc3QgLS1vYmplY3RzIC0tbWlzc2luZz1hbGxvdy1hbnkgSEVBRCA+b2JqZWN0cyAmJgorCisJIyBXZSBzaG91bGQgaGF2ZSBnb3R0ZW4gc29tZSByb290IHRyZWVzLgorCWdyZXAgIiAkIiBvYmplY3RzICYmCisJIyBTaG91bGQgbm90IGhhdmUgZ290dGVuIGFueSBub24tcm9vdCB0cmVlcyBvciBibG9icy4KKwkhIGdyZXAgIiAuIiBvYmplY3RzICYmCisKKwl4YXJncyAtbiAxIGdpdCAtQyBwYzIgY2F0LWZpbGUgLXQgPG9iamVjdHMgPnR5cGVzICYmCisJc29ydCAtdSB0eXBlcyA+dW5pcXVlX3R5cGVzLmFjdHVhbCAmJgorCXRlc3Rfd3JpdGVfbGluZXMgY29tbWl0IHRyZWUgPnVuaXF1ZV90eXBlcy5leHBlY3RlZCAmJgorCXRlc3RfY21wIHVuaXF1ZV90eXBlcy5leHBlY3RlZCB1bmlxdWVfdHlwZXMuYWN0dWFsCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BhcnRpYWwgY2xvbmUgZmV0Y2hlcyBibG9icyBwb2ludGVkIHRvIGJ5IHJlZnMgZXZlbiBpZiBub3JtYWxseSBmaWx0ZXJlZCBvdXQnICcKIAlybSAtcmYgc3JjIGRzdCAmJgogCWdpdCBpbml0IHNyYyAmJgpAQCAtMjQxLDE0ICsyNjgsMTc5IEBACiAJISBncmVwICI/JChjYXQgYmxvYikiIG1pc3NpbmdfYWZ0ZXIKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgc3JjIHJlcG8gZm9yIHNwYXJzZSBmaWx0ZXInICcKKwlnaXQgaW5pdCBzcGFyc2Utc3JjICYmCisJZ2l0IC1DIHNwYXJzZS1zcmMgY29uZmlnIC0tbG9jYWwgdXBsb2FkcGFjay5hbGxvd2ZpbHRlciAxICYmCisJZ2l0IC1DIHNwYXJzZS1zcmMgY29uZmlnIC0tbG9jYWwgdXBsb2FkcGFjay5hbGxvd2FueXNoYTFpbndhbnQgMSAmJgorCXRlc3RfY29tbWl0IC1DIHNwYXJzZS1zcmMgb25lICYmCisJdGVzdF9jb21taXQgLUMgc3BhcnNlLXNyYyB0d28gJiYKKwllY2hvIC9vbmUudCA+c3BhcnNlLXNyYy9vbmx5LW9uZSAmJgorCWdpdCAtQyBzcGFyc2Utc3JjIGFkZCAuICYmCisJZ2l0IC1DIHNwYXJzZS1zcmMgY29tbWl0IC1tICJhZGQgc3BhcnNlIGNoZWNrb3V0IGZpbGVzIgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwYXJ0aWFsIGNsb25lIHdpdGggc3BhcnNlIGZpbHRlciBzdWNjZWVkcycgJworCXJtIC1yZiBkc3QuZ2l0ICYmCisJZ2l0IGNsb25lIC0tbm8tbG9jYWwgLS1iYXJlIFwKKwkJICAtLWZpbHRlcj1zcGFyc2U6b2lkPW1hc3Rlcjpvbmx5LW9uZSBcCisJCSAgc3BhcnNlLXNyYyBkc3QuZ2l0ICYmCisJKAorCQljZCBkc3QuZ2l0ICYmCisJCWdpdCByZXYtbGlzdCAtLW9iamVjdHMgLS1taXNzaW5nPXByaW50IEhFQUQgPm91dCAmJgorCQlncmVwICJeJChnaXQgcmV2LXBhcnNlIEhFQUQ6b25lLnQpIiBvdXQgJiYKKwkJZ3JlcCAiXj8kKGdpdCByZXYtcGFyc2UgSEVBRDp0d28udCkiIG91dAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncGFydGlhbCBjbG9uZSB3aXRoIHVucmVzb2x2YWJsZSBzcGFyc2UgZmlsdGVyIGZhaWxzIGNsZWFubHknICcKKwlybSAtcmYgZHN0LmdpdCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBjbG9uZSAtLW5vLWxvY2FsIC0tYmFyZSBcCisJCQkJIC0tZmlsdGVyPXNwYXJzZTpvaWQ9bWFzdGVyOm5vLXN1Y2gtbmFtZSBcCisJCQkJIHNwYXJzZS1zcmMgZHN0LmdpdCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgInVuYWJsZSB0byBhY2Nlc3Mgc3BhcnNlIGJsb2IgaW4gLm1hc3Rlcjpuby1zdWNoLW5hbWUiIGVyciAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBjbG9uZSAtLW5vLWxvY2FsIC0tYmFyZSBcCisJCQkJIC0tZmlsdGVyPXNwYXJzZTpvaWQ9bWFzdGVyIFwKKwkJCQkgc3BhcnNlLXNyYyBkc3QuZ2l0IDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAidW5hYmxlIHRvIHBhcnNlIHNwYXJzZSBmaWx0ZXIgZGF0YSBpbiIgZXJyCisnCisKK3NldHVwX3RyaWFuZ2xlICgpIHsKKwlybSAtcmYgYmlnLWJsb2IudHh0IHNlcnZlciBjbGllbnQgcHJvbWlzb3ItcmVtb3RlICYmCisKKwlwcmludGYgImxpbmUgJWRcbiIgJCh0ZXN0X3NlcSAxIDEwMCkgPmJpZy1ibG9iLnR4dCAmJgorCisJIyBDcmVhdGUgYSBzZXJ2ZXIgd2l0aCAyIGNvbW1pdHM6IGEgY29tbWl0IHdpdGggYSBiaWcgdHJlZSBhbmQgYSBjaGlsZAorCSMgY29tbWl0IHdpdGggYW4gaW5jcmVtZW50YWwgY2hhbmdlLiBBbHNvLCBjcmVhdGUgYSBwYXJ0aWFsIGNsb25lCisJIyBjbGllbnQgdGhhdCBvbmx5IGNvbnRhaW5zIHRoZSBmaXJzdCBjb21taXQuCisJZ2l0IGluaXQgc2VydmVyICYmCisJZ2l0IC1DIHNlcnZlciBjb25maWcgLS1sb2NhbCB1cGxvYWRwYWNrLmFsbG93ZmlsdGVyIDEgJiYKKwlmb3IgaSBpbiAkKHRlc3Rfc2VxIDEgMTAwKQorCWRvCisJCWVjaG8gIm1ha2UgdGhlIHRyZWUgYmlnIiA+c2VydmVyL2ZpbGUkaSAmJgorCQlnaXQgLUMgc2VydmVyIGFkZCBmaWxlJGkKKwlkb25lICYmCisJZ2l0IC1DIHNlcnZlciBjb21taXQgLW0gImluaXRpYWwiICYmCisJZ2l0IGNsb25lIC0tYmFyZSAtLWZpbHRlcj10cmVlOjAgImZpbGU6Ly8kKHB3ZCkvc2VydmVyIiBjbGllbnQgJiYKKwllY2hvIGFub3RoZXIgbGluZSA+PnNlcnZlci9maWxlMSAmJgorCWdpdCAtQyBzZXJ2ZXIgY29tbWl0IC1hbSAiaW5jcmVtZW50YWwgY2hhbmdlIiAmJgorCisJIyBDcmVhdGUgYSBwcm9taXNvciByZW1vdGUgdGhhdCBvbmx5IGNvbnRhaW5zIHRoZSB0cmVlIGFuZCBibG9iIGZyb20KKwkjIHRoZSBmaXJzdCBjb21taXQuCisJZ2l0IGluaXQgcHJvbWlzb3ItcmVtb3RlICYmCisJZ2l0IC1DIHNlcnZlciBjb25maWcgLS1sb2NhbCB1cGxvYWRwYWNrLmFsbG93YW55c2hhMWlud2FudCAxICYmCisJVFJFRV9IQVNIPSQoZ2l0IC1DIHNlcnZlciByZXYtcGFyc2UgSEVBRH4xXnt0cmVlfSkgJiYKKwlnaXQgLUMgcHJvbWlzb3ItcmVtb3RlIGZldGNoIC0ta2VlcCAiZmlsZTovLyQocHdkKS9zZXJ2ZXIiICIkVFJFRV9IQVNIIiAmJgorCWdpdCAtQyBwcm9taXNvci1yZW1vdGUgY291bnQtb2JqZWN0cyAtdiA+b2JqZWN0LWNvdW50ICYmCisJdGVzdF9pMThuZ3JlcCAiY291bnQ6IDAiIG9iamVjdC1jb3VudCAmJgorCXRlc3RfaTE4bmdyZXAgImluLXBhY2s6IDIiIG9iamVjdC1jb3VudCAmJgorCisJIyBTZXQgaXQgYXMgdGhlIHByb21pc29yIHJlbW90ZSBvZiBjbGllbnQuIFRodXMsIHdoZW5ldmVyCisJIyB0aGUgY2xpZW50IGxhenkgZmV0Y2hlcywgdGhlIGxhenkgZmV0Y2ggd2lsbCBzdWNjZWVkIG9ubHkgaWYgaXQgaXMKKwkjIGZvciB0aGlzIHRyZWUgb3IgYmxvYi4KKwl0ZXN0X2NvbW1pdCAtQyBwcm9taXNvci1yZW1vdGUgb25lICYmICMgc28gdGhhdCByZWYgYWR2ZXJ0aXNlbWVudCBpcyBub3QgZW1wdHkKKwlnaXQgLUMgcHJvbWlzb3ItcmVtb3RlIGNvbmZpZyAtLWxvY2FsIHVwbG9hZHBhY2suYWxsb3dhbnlzaGExaW53YW50IDEgJiYKKwlnaXQgLUMgY2xpZW50IHJlbW90ZSBzZXQtdXJsIG9yaWdpbiAiZmlsZTovLyQocHdkKS9wcm9taXNvci1yZW1vdGUiCit9CisKKyMgTkVFRFNXT1JLOiBUaGUgdGVzdHMgYmVnaW5uaW5nIHdpdGggImZldGNoIGxhenktZmV0Y2hlcyIgYmVsb3cgb25seQorIyB0ZXN0IHRoYXQgImZldGNoIiBhdm9pZCBmZXRjaGluZyB0cmVlcyBhbmQgYmxvYnMsIGJ1dCBub3QgY29tbWl0cyBvcgorIyB0YWdzLiBSZXZpc2l0IHRoaXMgaWYgR2l0IGlzIGV2ZXIgdGF1Z2h0IHRvIHN1cHBvcnQgcGFydGlhbCBjbG9uZXMKKyMgd2l0aCBjb21taXRzIGFuZC9vciB0YWdzIGZpbHRlcmVkIG91dC4KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2ggbGF6eS1mZXRjaGVzIG9ubHkgdG8gcmVzb2x2ZSBkZWx0YXMnICcKKwlzZXR1cF90cmlhbmdsZSAmJgorCisJIyBFeGVyY2lzZSB0byBtYWtlIHN1cmUgaXQgd29ya3MuIEdpdCB3aWxsIG5vdCBmZXRjaCBhbnl0aGluZyBmcm9tIHRoZQorCSMgcHJvbWlzb3IgcmVtb3RlIG90aGVyIHRoYW4gZm9yIHRoZSBiaWcgdHJlZSAoYmVjYXVzZSBpdCBuZWVkcyB0bworCSMgcmVzb2x2ZSB0aGUgZGVsdGEpLgorCUdJVF9UUkFDRV9QQUNLRVQ9IiQocHdkKS90cmFjZSIgZ2l0IC1DIGNsaWVudCBcCisJCWZldGNoICJmaWxlOi8vJChwd2QpL3NlcnZlciIgbWFzdGVyICYmCisKKwkjIFZlcmlmeSB0aGUgYXNzdW1wdGlvbiB0aGF0IHRoZSBjbGllbnQgbmVlZGVkIHRvIGZldGNoIHRoZSBkZWx0YSBiYXNlCisJIyB0byByZXNvbHZlIHRoZSBkZWx0YS4KKwlnaXQgLUMgc2VydmVyIHJldi1wYXJzZSBIRUFEfjFee3RyZWV9ID5oYXNoICYmCisJZ3JlcCAid2FudCAkKGNhdCBoYXNoKSIgdHJhY2UKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2ggbGF6eS1mZXRjaGVzIG9ubHkgdG8gcmVzb2x2ZSBkZWx0YXMsIHByb3RvY29sIHYyJyAnCisJc2V0dXBfdHJpYW5nbGUgJiYKKworCWdpdCAtQyBzZXJ2ZXIgY29uZmlnIC0tbG9jYWwgcHJvdG9jb2wudmVyc2lvbiAyICYmCisJZ2l0IC1DIGNsaWVudCBjb25maWcgLS1sb2NhbCBwcm90b2NvbC52ZXJzaW9uIDIgJiYKKwlnaXQgLUMgcHJvbWlzb3ItcmVtb3RlIGNvbmZpZyAtLWxvY2FsIHByb3RvY29sLnZlcnNpb24gMiAmJgorCisJIyBFeGVyY2lzZSB0byBtYWtlIHN1cmUgaXQgd29ya3MuIEdpdCB3aWxsIG5vdCBmZXRjaCBhbnl0aGluZyBmcm9tIHRoZQorCSMgcHJvbWlzb3IgcmVtb3RlIG90aGVyIHRoYW4gZm9yIHRoZSBiaWcgYmxvYiAoYmVjYXVzZSBpdCBuZWVkcyB0bworCSMgcmVzb2x2ZSB0aGUgZGVsdGEpLgorCUdJVF9UUkFDRV9QQUNLRVQ9IiQocHdkKS90cmFjZSIgZ2l0IC1DIGNsaWVudCBcCisJCWZldGNoICJmaWxlOi8vJChwd2QpL3NlcnZlciIgbWFzdGVyICYmCisKKwkjIFZlcmlmeSB0aGF0IHByb3RvY29sIHZlcnNpb24gMiB3YXMgdXNlZC4KKwlncmVwICJmZXRjaDwgdmVyc2lvbiAyIiB0cmFjZSAmJgorCisJIyBWZXJpZnkgdGhlIGFzc3VtcHRpb24gdGhhdCB0aGUgY2xpZW50IG5lZWRlZCB0byBmZXRjaCB0aGUgZGVsdGEgYmFzZQorCSMgdG8gcmVzb2x2ZSB0aGUgZGVsdGEuCisJZ2l0IC1DIHNlcnZlciByZXYtcGFyc2UgSEVBRH4xXnt0cmVlfSA+aGFzaCAmJgorCWdyZXAgIndhbnQgJChjYXQgaGFzaCkiIHRyYWNlCisnCisKKyMgVGhlIGZvbGxvd2luZyB0d28gdGVzdHMgbXVzdCBiZSBpbiB0aGlzIG9yZGVyLCBvciBlbHNlCisjIHRoZSBmaXJzdCB3aWxsIG5vdCBmYWlsLiBJdCBpcyBpbXBvcnRhbnQgdGhhdCB0aGUgc3J2LmJhcmUKKyMgcmVwb3NpdG9yeSBkaWQgbm90IGhhdmUgdGFncyBkdXJpbmcgY2xvbmUsIGJ1dCBoYXMgdGFncworIyBpbiB0aGUgZmV0Y2guCisKK3Rlc3RfZXhwZWN0X2ZhaWx1cmUgJ3ZlcmlmeSBmZXRjaCBzdWNjZWVkcyB3aGVuIGFza2luZyBmb3IgbmV3IHRhZ3MnICcKKwlnaXQgY2xvbmUgLS1maWx0ZXI9YmxvYjpub25lICJmaWxlOi8vJChwd2QpL3Nydi5iYXJlIiB0YWctdGVzdCAmJgorCWZvciBpIGluIEkgSiBLCisJZG8KKwkJdGVzdF9jb21taXQgLUMgc3JjICRpICYmCisJCWdpdCAtQyBzcmMgYnJhbmNoICRpIHx8IHJldHVybiAxCisJZG9uZSAmJgorCWdpdCAtQyBzcnYuYmFyZSBmZXRjaCAtLXRhZ3Mgb3JpZ2luICtyZWZzL2hlYWRzLyo6cmVmcy9oZWFkcy8qICYmCisJZ2l0IC1DIHRhZy10ZXN0IC1jIHByb3RvY29sLnZlcnNpb249MiBmZXRjaCAtLXRhZ3Mgb3JpZ2luCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ZlcmlmeSBmZXRjaCBkb3dubG9hZHMgb25seSBvbmUgcGFjayB3aGVuIHVwZGF0aW5nIHJlZnMnICcKKwlnaXQgY2xvbmUgLS1maWx0ZXI9YmxvYjpub25lICJmaWxlOi8vJChwd2QpL3Nydi5iYXJlIiBwYWNrLXRlc3QgJiYKKwlscyBwYWNrLXRlc3QvLmdpdC9vYmplY3RzL3BhY2svKnBhY2sgPnBhY2stbGlzdCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDIgcGFjay1saXN0ICYmCisJZm9yIGkgaW4gQSBCIEMKKwlkbworCQl0ZXN0X2NvbW1pdCAtQyBzcmMgJGkgJiYKKwkJZ2l0IC1DIHNyYyBicmFuY2ggJGkgfHwgcmV0dXJuIDEKKwlkb25lICYmCisJZ2l0IC1DIHNydi5iYXJlIGZldGNoIG9yaWdpbiArcmVmcy9oZWFkcy8qOnJlZnMvaGVhZHMvKiAmJgorCWdpdCAtQyBwYWNrLXRlc3QgZmV0Y2ggb3JpZ2luICYmCisJbHMgcGFjay10ZXN0Ly5naXQvb2JqZWN0cy9wYWNrLypwYWNrID5wYWNrLWxpc3QgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAzIHBhY2stbGlzdAorJworCiAuICIkVEVTVF9ESVJFQ1RPUlkiL2xpYi1odHRwZC5zaAogc3RhcnRfaHR0cGQKIAotIyBDb252ZXJ0cyBieXRlcyBpbnRvIGEgZm9ybSBzdWl0YWJsZSBmb3IgaW5jbHVzaW9uIGluIGEgc2VkIGNvbW1hbmQuIEZvcgotIyBleGFtcGxlLCAicHJpbnRmICdhYlxyXG4nIHwgaGV4X3VucGFjayIgcmVzdWx0cyBpbiAnXHg2MVx4NjJceDBkXHgwYScuCi1zZWRfZXNjYXBlICgpIHsKLQlwZXJsIC1lICckLyA9IHVuZGVmOyAkaW5wdXQgPSA8PjsgcHJpbnQgdW5wYWNrKCJIMiIgeCBsZW5ndGgoJGlucHV0KSwgJGlucHV0KScgfAotCQlzZWQgJ3MvXCguLlwpL1xceFwxL2cnCisjIENvbnZlcnRzIGJ5dGVzIGludG8gdGhlaXIgaGV4YWRlY2ltYWwgcmVwcmVzZW50YXRpb24uIEZvciBleGFtcGxlLAorIyAicHJpbnRmICdhYlxyXG4nIHwgaGV4X3VucGFjayIgcmVzdWx0cyBpbiAnNjE2MjBkMGEnLgoraGV4X3VucGFjayAoKSB7CisJcGVybCAtZSAnJC8gPSB1bmRlZjsgJGlucHV0ID0gPD47IHByaW50IHVucGFjaygiSDIiIHggbGVuZ3RoKCRpbnB1dCksICRpbnB1dCknCit9CisKKyMgSW5zZXJ0cyAkMSBhdCB0aGUgc3RhcnQgb2YgdGhlIHN0cmluZyBhbmQgZXZlcnkgMiBjaGFyYWN0ZXJzIHRoZXJlYWZ0ZXIuCitpbnRlcnNwZXJzZSAoKSB7CisJc2VkICdzL1woLi5cKS8nJDEnXDEvZycKK30KKworIyBDcmVhdGUgYSBvbmUtdGltZS1wZXJsIGNvbW1hbmQgdG8gcmVwbGFjZSB0aGUgZXhpc3RpbmcgcGFja2ZpbGUgd2l0aCAkMS4KK3JlcGxhY2VfcGFja2ZpbGUgKCkgeworCSMgVGhlIHByb3RvY29sIHJlcXVpcmVzIHRoYXQgdGhlIHBhY2tmaWxlIGJlIHNlbnQgaW4gc2lkZWJhbmQgMSwgaGVuY2UKKwkjIHRoZSBleHRyYSBceDAxIGJ5dGUgYXQgdGhlIGJlZ2lubmluZy4KKwljcCAkMSAiJEhUVFBEX1JPT1RfUEFUSC9vbmUtdGltZS1wYWNrIiAmJgorCWVjaG8gJ2lmICgvcGFja2ZpbGUvKSB7CisJCXByaW50OworCQlteSAkbGVuZ3RoID0gLXMgIm9uZS10aW1lLXBhY2siOworCQlwcmludGYgIiUwNHhceDAxIiwgJGxlbmd0aCArIDU7CisJCXByaW50IGBjYXQgb25lLXRpbWUtcGFja2AgLiAiMDAwMCI7CisJCWxhc3QKKwl9JyA+IiRIVFRQRF9ST09UX1BBVEgvb25lLXRpbWUtcGVybCIKIH0KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndXBvbiBjbG9uaW5nLCBjaGVjayB0aGF0IGFsbCByZWZzIHBvaW50IHRvIG9iamVjdHMnICcKQEAgLTI3MCwyMSArNDYyLDE4IEBACiAJIyBSZXBsYWNlIHRoZSBleGlzdGluZyBwYWNrZmlsZSB3aXRoIHRoZSBjcmFmdGVkIG9uZS4gVGhlIHByb3RvY29sCiAJIyByZXF1aXJlcyB0aGF0IHRoZSBwYWNrZmlsZSBiZSBzZW50IGluIHNpZGViYW5kIDEsIGhlbmNlIHRoZSBleHRyYQogCSMgXHgwMSBieXRlIGF0IHRoZSBiZWdpbm5pbmcuCi0JcHJpbnRmICIxLC9wYWNrZmlsZS8hYyAlMDR4XFxcXHgwMSVzMDAwMCIgXAotCQkiJCgoJCh3YyAtYyA8aW5jb21wbGV0ZS5wYWNrKSArIDUpKSIgXAotCQkiJChzZWRfZXNjYXBlIDxpbmNvbXBsZXRlLnBhY2spIiBcCi0JCT4iJEhUVFBEX1JPT1RfUEFUSC9vbmUtdGltZS1zZWQiICYmCisJcmVwbGFjZV9wYWNrZmlsZSBpbmNvbXBsZXRlLnBhY2sgJiYKIAotCSMgVXNlIHByb3RvY29sIHYyIGJlY2F1c2UgdGhlIHNlZCBjb21tYW5kIGxvb2tzIGZvciB0aGUgInBhY2tmaWxlIgorCSMgVXNlIHByb3RvY29sIHYyIGJlY2F1c2UgdGhlIHBlcmwgY29tbWFuZCBsb29rcyBmb3IgdGhlICJwYWNrZmlsZSIKIAkjIHNlY3Rpb24gaGVhZGVyLgogCXRlc3RfY29uZmlnIC1DICIkU0VSVkVSIiBwcm90b2NvbC52ZXJzaW9uIDIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgLWMgcHJvdG9jb2wudmVyc2lvbj0yIGNsb25lIFwKLQkJLS1maWx0ZXI9YmxvYjpub25lICRIVFRQRF9VUkwvb25lX3RpbWVfc2VkL3NlcnZlciByZXBvIDI+ZXJyICYmCisJCS0tZmlsdGVyPWJsb2I6bm9uZSAkSFRUUERfVVJML29uZV90aW1lX3Blcmwvc2VydmVyIHJlcG8gMj5lcnIgJiYKIAotCWdyZXAgImRpZCBub3Qgc2VuZCBhbGwgbmVjZXNzYXJ5IG9iamVjdHMiIGVyciAmJgorCXRlc3RfaTE4bmdyZXAgImRpZCBub3Qgc2VuZCBhbGwgbmVjZXNzYXJ5IG9iamVjdHMiIGVyciAmJgogCi0JIyBFbnN1cmUgdGhhdCB0aGUgb25lLXRpbWUtc2VkIHNjcmlwdCB3YXMgdXNlZC4KLQkhIHRlc3QgLWUgIiRIVFRQRF9ST09UX1BBVEgvb25lLXRpbWUtc2VkIgorCSMgRW5zdXJlIHRoYXQgdGhlIG9uZS10aW1lLXBlcmwgc2NyaXB0IHdhcyB1c2VkLgorCSEgdGVzdCAtZSAiJEhUVFBEX1JPT1RfUEFUSC9vbmUtdGltZS1wZXJsIgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd3aGVuIHBhcnRpYWwgY2xvbmluZywgdG9sZXJhdGUgc2VydmVyIG5vdCBzZW5kaW5nIHRhcmdldCBvZiB0YWcnICcKQEAgLTMxMywyNCArNTAyLDEwMCBAQAogCSMgUmVwbGFjZSB0aGUgZXhpc3RpbmcgcGFja2ZpbGUgd2l0aCB0aGUgY3JhZnRlZCBvbmUuIFRoZSBwcm90b2NvbAogCSMgcmVxdWlyZXMgdGhhdCB0aGUgcGFja2ZpbGUgYmUgc2VudCBpbiBzaWRlYmFuZCAxLCBoZW5jZSB0aGUgZXh0cmEKIAkjIFx4MDEgYnl0ZSBhdCB0aGUgYmVnaW5uaW5nLgotCXByaW50ZiAiMSwvcGFja2ZpbGUvIWMgJTA0eFxcXFx4MDElczAwMDAiIFwKLQkJIiQoKCQod2MgLWMgPGluY29tcGxldGUucGFjaykgKyA1KSkiIFwKLQkJIiQoc2VkX2VzY2FwZSA8aW5jb21wbGV0ZS5wYWNrKSIgXAotCQk+IiRIVFRQRF9ST09UX1BBVEgvb25lLXRpbWUtc2VkIiAmJgorCXJlcGxhY2VfcGFja2ZpbGUgaW5jb21wbGV0ZS5wYWNrICYmCiAKLQkjIFVzZSBwcm90b2NvbCB2MiBiZWNhdXNlIHRoZSBzZWQgY29tbWFuZCBsb29rcyBmb3IgdGhlICJwYWNrZmlsZSIKKwkjIFVzZSBwcm90b2NvbCB2MiBiZWNhdXNlIHRoZSBwZXJsIGNvbW1hbmQgbG9va3MgZm9yIHRoZSAicGFja2ZpbGUiCiAJIyBzZWN0aW9uIGhlYWRlci4KIAl0ZXN0X2NvbmZpZyAtQyAiJFNFUlZFUiIgcHJvdG9jb2wudmVyc2lvbiAyICYmCiAKIAkjIEV4ZXJjaXNlIHRvIG1ha2Ugc3VyZSBpdCB3b3Jrcy4KIAlnaXQgLWMgcHJvdG9jb2wudmVyc2lvbj0yIGNsb25lIFwKLQkJLS1maWx0ZXI9YmxvYjpub25lICRIVFRQRF9VUkwvb25lX3RpbWVfc2VkL3NlcnZlciByZXBvIDI+IGVyciAmJgorCQktLWZpbHRlcj1ibG9iOm5vbmUgJEhUVFBEX1VSTC9vbmVfdGltZV9wZXJsL3NlcnZlciByZXBvIDI+IGVyciAmJgogCSEgZ3JlcCAibWlzc2luZyBvYmplY3QgcmVmZXJlbmNlZCBieSIgZXJyICYmCiAKLQkjIEVuc3VyZSB0aGF0IHRoZSBvbmUtdGltZS1zZWQgc2NyaXB0IHdhcyB1c2VkLgotCSEgdGVzdCAtZSAiJEhUVFBEX1JPT1RfUEFUSC9vbmUtdGltZS1zZWQiCisJIyBFbnN1cmUgdGhhdCB0aGUgb25lLXRpbWUtcGVybCBzY3JpcHQgd2FzIHVzZWQuCisJISB0ZXN0IC1lICIkSFRUUERfUk9PVF9QQVRIL29uZS10aW1lLXBlcmwiCiAnCiAKLXN0b3BfaHR0cGQKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RvbGVyYXRlIHNlcnZlciBzZW5kaW5nIFJFRl9ERUxUQSBhZ2FpbnN0IG1pc3NpbmcgcHJvbWlzb3Igb2JqZWN0cycgJworCVNFUlZFUj0iJEhUVFBEX0RPQ1VNRU5UX1JPT1RfUEFUSC9zZXJ2ZXIiICYmCisJcm0gLXJmICIkU0VSVkVSIiByZXBvICYmCisJdGVzdF9jcmVhdGVfcmVwbyAiJFNFUlZFUiIgJiYKKwl0ZXN0X2NvbmZpZyAtQyAiJFNFUlZFUiIgdXBsb2FkcGFjay5hbGxvd2ZpbHRlciAxICYmCisJdGVzdF9jb25maWcgLUMgIiRTRVJWRVIiIHVwbG9hZHBhY2suYWxsb3dhbnlzaGExaW53YW50IDEgJiYKKworCSMgQ3JlYXRlIGEgY29tbWl0IHdpdGggMiBibG9icyB0byBiZSB1c2VkIGFzIGRlbHRhIGJhc2VzLgorCWZvciBpIGluICQodGVzdF9zZXEgMTApCisJZG8KKwkJZWNobyAidGhpcyBpcyBhIGxpbmUiID4+IiRTRVJWRVIvZm9vLnR4dCIgJiYKKwkJZWNobyAidGhpcyBpcyBhbm90aGVyIGxpbmUiID4+IiRTRVJWRVIvaGF2ZS50eHQiCisJZG9uZSAmJgorCWdpdCAtQyAiJFNFUlZFUiIgYWRkIGZvby50eHQgaGF2ZS50eHQgJiYKKwlnaXQgLUMgIiRTRVJWRVIiIGNvbW1pdCAtbSBiYXIgJiYKKwlnaXQgLUMgIiRTRVJWRVIiIHJldi1wYXJzZSBIRUFEOmZvby50eHQgPmRlbHRhYmFzZV9taXNzaW5nICYmCisJZ2l0IC1DICIkU0VSVkVSIiByZXYtcGFyc2UgSEVBRDpoYXZlLnR4dCA+ZGVsdGFiYXNlX2hhdmUgJiYKKworCSMgQ2xvbmUuIFRoZSBjbGllbnQgaGFzIGRlbHRhYmFzZV9oYXZlIGJ1dCBub3QgZGVsdGFiYXNlX21pc3NpbmcuCisJZ2l0IC1jIHByb3RvY29sLnZlcnNpb249MiBjbG9uZSAtLW5vLWNoZWNrb3V0IFwKKwkJLS1maWx0ZXI9YmxvYjpub25lICRIVFRQRF9VUkwvb25lX3RpbWVfcGVybC9zZXJ2ZXIgcmVwbyAmJgorCWdpdCAtQyByZXBvIGhhc2gtb2JqZWN0IC13IC0tICIkU0VSVkVSL2hhdmUudHh0IiAmJgorCisJIyBTYW5pdHkgY2hlY2sgdG8gZW5zdXJlIHRoYXQgdGhlIGNsaWVudCBkb2VzIG5vdCBoYXZlCisJIyBkZWx0YWJhc2VfbWlzc2luZy4KKwlnaXQgLUMgcmVwbyByZXYtbGlzdCAtLW9iamVjdHMgLS1pZ25vcmUtbWlzc2luZyBcCisJCS0tICQoY2F0IGRlbHRhYmFzZV9taXNzaW5nKSA+b2JqbGlzdCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDAgb2JqbGlzdCAmJgorCisJIyBBbm90aGVyIGNvbW1pdC4gVGhpcyBjb21taXQgd2lsbCBiZSBmZXRjaGVkIGJ5IHRoZSBjbGllbnQuCisJZWNobyAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoiID4+IiRTRVJWRVIvZm9vLnR4dCIgJiYKKwllY2hvICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eiIgPj4iJFNFUlZFUi9oYXZlLnR4dCIgJiYKKwlnaXQgLUMgIiRTRVJWRVIiIGFkZCBmb28udHh0IGhhdmUudHh0ICYmCisJZ2l0IC1DICIkU0VSVkVSIiBjb21taXQgLW0gYmF6ICYmCisKKwkjIFBhY2sgYSB0aGluIHBhY2sgY29udGFpbmluZywgYW1vbmcgb3RoZXIgdGhpbmdzLCBIRUFEOmZvby50eHQKKwkjIGRlbHRhLWVkIGFnYWluc3QgSEVBRF46Zm9vLnR4dCBhbmQgSEVBRDpoYXZlLnR4dCBkZWx0YS1lZCBhZ2FpbnN0CisJIyBIRUFEXjpoYXZlLnR4dC4KKwlwcmludGYgIiVzXG4tLW5vdFxuJXNcbiIgXAorCQkkKGdpdCAtQyAiJFNFUlZFUiIgcmV2LXBhcnNlIEhFQUQpIFwKKwkJJChnaXQgLUMgIiRTRVJWRVIiIHJldi1wYXJzZSBIRUFEXikgfAorCQlnaXQgLUMgIiRTRVJWRVIiIHBhY2stb2JqZWN0cyAtLXRoaW4gLS1zdGRvdXQgPnRoaW4ucGFjayAmJgorCisJIyBFbnN1cmUgdGhhdCB0aGUgcGFjayBjb250YWlucyBvbmUgZGVsdGEgYWdhaW5zdCBIRUFEXjpmb28udHh0LiBTaW5jZQorCSMgdGhlIGRlbHRhIGNvbnRhaW5zIGF0IGxlYXN0IDI2IG5vdmVsIGNoYXJhY3RlcnMsIHRoZSBzaXplIGNhbm5vdCBiZQorCSMgY29udGFpbmVkIGluIDQgYml0cywgc28gdGhlIG9iamVjdCBoZWFkZXIgd2lsbCB0YWtlIHVwIDIgYnl0ZXMuIFRoZQorCSMgbW9zdCBzaWduaWZpY2FudCBueWJibGUgb2YgdGhlIGZpcnN0IGJ5dGUgaXMgMGIxMTExICgwYjEgdG8gaW5kaWNhdGUKKwkjIHRoYXQgdGhlIGhlYWRlciBjb250aW51ZXMsIGFuZCAwYjExMSB0byBpbmRpY2F0ZSBSRUZfREVMVEEpLCBmb2xsb3dlZAorCSMgYnkgYW55IDMgbnliYmxlcywgdGhlbiB0aGUgT0lEIG9mIHRoZSBkZWx0YSBiYXNlLgorCXByaW50ZiAiZi4sLi4lcyIgJChpbnRlcnNwZXJzZSAiLCIgPGRlbHRhYmFzZV9taXNzaW5nKSA+d2FudCAmJgorCWhleF91bnBhY2sgPHRoaW4ucGFjayB8IGludGVyc3BlcnNlICIsIiA+aGF2ZSAmJgorCWdyZXAgJChjYXQgd2FudCkgaGF2ZSAmJgorCisJIyBFbnN1cmUgdGhhdCB0aGUgcGFjayBjb250YWlucyBvbmUgZGVsdGEgYWdhaW5zdCBIRUFEXjpoYXZlLnR4dCwKKwkjIHNpbWlsYXIgdG8gdGhlIGFib3ZlLgorCXByaW50ZiAiZi4sLi4lcyIgJChpbnRlcnNwZXJzZSAiLCIgPGRlbHRhYmFzZV9oYXZlKSA+d2FudCAmJgorCWhleF91bnBhY2sgPHRoaW4ucGFjayB8IGludGVyc3BlcnNlICIsIiA+aGF2ZSAmJgorCWdyZXAgJChjYXQgd2FudCkgaGF2ZSAmJgorCisJcmVwbGFjZV9wYWNrZmlsZSB0aGluLnBhY2sgJiYKKworCSMgVXNlIHByb3RvY29sIHYyIGJlY2F1c2UgdGhlIHBlcmwgY29tbWFuZCBsb29rcyBmb3IgdGhlICJwYWNrZmlsZSIKKwkjIHNlY3Rpb24gaGVhZGVyLgorCXRlc3RfY29uZmlnIC1DICIkU0VSVkVSIiBwcm90b2NvbC52ZXJzaW9uIDIgJiYKKworCSMgRmV0Y2ggdGhlIHRoaW4gcGFjayBhbmQgZW5zdXJlIHRoYXQgaW5kZXgtcGFjayBpcyBhYmxlIHRvIGhhbmRsZSB0aGUKKwkjIFJFRl9ERUxUQSBvYmplY3Qgd2l0aCBhIG1pc3NpbmcgcHJvbWlzb3IgZGVsdGEgYmFzZS4KKwlHSVRfVFJBQ0VfUEFDS0VUPSIkKHB3ZCkvdHJhY2UiIGdpdCAtQyByZXBvIC1jIHByb3RvY29sLnZlcnNpb249MiBmZXRjaCAmJgorCisJIyBFbnN1cmUgdGhhdCB0aGUgbWlzc2luZyBkZWx0YSBiYXNlIHdhcyBkaXJlY3RseSBmZXRjaGVkLCBidXQgbm90IHRoZQorCSMgb25lIHRoYXQgdGhlIGNsaWVudCBoYXMuCisJZ3JlcCAid2FudCAkKGNhdCBkZWx0YWJhc2VfbWlzc2luZykiIHRyYWNlICYmCisJISBncmVwICJ3YW50ICQoY2F0IGRlbHRhYmFzZV9oYXZlKSIgdHJhY2UgJiYKKworCSMgRW5zdXJlIHRoYXQgdGhlIG9uZS10aW1lLXBlcmwgc2NyaXB0IHdhcyB1c2VkLgorCSEgdGVzdCAtZSAiJEhUVFBEX1JPT1RfUEFUSC9vbmUtdGltZS1wZXJsIgorJworCisjIERPIE5PVCBhZGQgbm9uLWh0dHBkLXNwZWNpZmljIHRlc3RzIGhlcmUsIGJlY2F1c2UgdGhlIGxhc3QgcGFydCBvZiB0aGlzCisjIHRlc3Qgc2NyaXB0IGlzIG9ubHkgZXhlY3V0ZWQgd2hlbiBodHRwZCBpcyBhdmFpbGFibGUgYW5kIGVuYWJsZWQuCiAKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTYxNy1jbG9uZS1zdWJtb2R1bGVzLXJlbW90ZS5zaCBiL3QvdDU2MTctY2xvbmUtc3VibW9kdWxlcy1yZW1vdGUuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMWEwNDFkZgotLS0gL2Rldi9udWxsCisrKyBiL3QvdDU2MTctY2xvbmUtc3VibW9kdWxlcy1yZW1vdGUuc2gKQEAgLTAsMCArMSw2NSBAQAorIyEvYmluL3NoCisKK3Rlc3RfZGVzY3JpcHRpb249J1Rlc3QgY2xvbmluZyByZXBvcyB3aXRoIHN1Ym1vZHVsZXMgdXNpbmcgcmVtb3RlLXRyYWNraW5nIGJyYW5jaGVzJworCisuIC4vdGVzdC1saWIuc2gKKworcHdkPSQocHdkKQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCcgJworCWdpdCBjaGVja291dCAtYiBtYXN0ZXIgJiYKKwl0ZXN0X2NvbW1pdCBjb21taXQxICYmCisJbWtkaXIgc3ViICYmCisJKAorCQljZCBzdWIgJiYKKwkJZ2l0IGluaXQgJiYKKwkJdGVzdF9jb21taXQgc3ViY29tbWl0MSAmJgorCQlnaXQgdGFnIHN1Yl93aGVuX2FkZGVkX3RvX3N1cGVyICYmCisJCWdpdCBicmFuY2ggb3RoZXIKKwkpICYmCisJZ2l0IHN1Ym1vZHVsZSBhZGQgImZpbGU6Ly8kcHdkL3N1YiIgc3ViICYmCisJZ2l0IGNvbW1pdCAtbSAiYWRkIHN1Ym1vZHVsZSIgJiYKKwkoCisJCWNkIHN1YiAmJgorCQl0ZXN0X2NvbW1pdCBzdWJjb21taXQyCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjbG9uZSB3aXRoIC0tbm8tcmVtb3RlLXN1Ym1vZHVsZXMnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1yZiBzdXBlcl9jbG9uZSIgJiYKKwlnaXQgY2xvbmUgLS1yZWN1cnNlLXN1Ym1vZHVsZXMgLS1uby1yZW1vdGUtc3VibW9kdWxlcyAiZmlsZTovLyRwd2QvLiIgc3VwZXJfY2xvbmUgJiYKKwkoCisJCWNkIHN1cGVyX2Nsb25lL3N1YiAmJgorCQlnaXQgZGlmZiAtLWV4aXQtY29kZSBzdWJfd2hlbl9hZGRlZF90b19zdXBlcgorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xvbmUgd2l0aCAtLXJlbW90ZS1zdWJtb2R1bGVzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtcmYgc3VwZXJfY2xvbmUiICYmCisJZ2l0IGNsb25lIC0tcmVjdXJzZS1zdWJtb2R1bGVzIC0tcmVtb3RlLXN1Ym1vZHVsZXMgImZpbGU6Ly8kcHdkLy4iIHN1cGVyX2Nsb25lICYmCisJKAorCQljZCBzdXBlcl9jbG9uZS9zdWIgJiYKKwkJZ2l0IGRpZmYgLS1leGl0LWNvZGUgcmVtb3Rlcy9vcmlnaW4vbWFzdGVyCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjayB0aGUgZGVmYXVsdCBpcyAtLW5vLXJlbW90ZS1zdWJtb2R1bGVzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtcmYgc3VwZXJfY2xvbmUiICYmCisJZ2l0IGNsb25lIC0tcmVjdXJzZS1zdWJtb2R1bGVzICJmaWxlOi8vJHB3ZC8uIiBzdXBlcl9jbG9uZSAmJgorCSgKKwkJY2Qgc3VwZXJfY2xvbmUvc3ViICYmCisJCWdpdCBkaWZmIC0tZXhpdC1jb2RlIHN1Yl93aGVuX2FkZGVkX3RvX3N1cGVyCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjbG9uZSB3aXRoIC0tc2luZ2xlLWJyYW5jaCcgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLXJmIHN1cGVyX2Nsb25lIiAmJgorCWdpdCBjbG9uZSAtLXJlY3Vyc2Utc3VibW9kdWxlcyAtLXNpbmdsZS1icmFuY2ggImZpbGU6Ly8kcHdkLy4iIHN1cGVyX2Nsb25lICYmCisJKAorCQljZCBzdXBlcl9jbG9uZS9zdWIgJiYKKwkJZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBvcmlnaW4vbWFzdGVyICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgb3JpZ2luL290aGVyCisJKQorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU2MTgtYWx0ZXJuYXRlLXJlZnMuc2ggYi90L3Q1NjE4LWFsdGVybmF0ZS1yZWZzLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjMzNTMyMTYKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q1NjE4LWFsdGVybmF0ZS1yZWZzLnNoCkBAIC0wLDAgKzEsNjAgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSd0ZXN0IGhhbmRsaW5nIG9mIC0tYWx0ZXJuYXRlLXJlZnMgdHJhdmVyc2FsJworLiAuL3Rlc3QtbGliLnNoCisKKyMgQXZvaWQgdGVzdF9jb21taXQgYmVjYXVzZSB3ZSB3YW50IGEgc3BlY2lmaWMgYW5kIGtub3duIHNldCBvZiByZWZzOgorIworIyAgYmFzZSAtLSBvbmUKKyMgICAgICBcICAgICAgXAorIyAgICAgICB0d28gLS0gbWVyZ2VkCisjCisjIHdoZXJlICJvbmUiIGFuZCAidHdvIiBhcmUgb24gc2VwYXJhdGUgcmVmcywgYW5kICJtZXJnZWQiIGlzIGF2YWlsYWJsZSBvbmx5IGluCisjIHRoZSBkZXBlbmRlbnQgY2hpbGQgcmVwb3NpdG9yeS4KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldCB1cCBsb2NhbCByZWZzJyAnCisJZ2l0IGNoZWNrb3V0IC1iIG9uZSAmJgorCXRlc3RfdGljayAmJgorCWdpdCBjb21taXQgLS1hbGxvdy1lbXB0eSAtbSBiYXNlICYmCisJdGVzdF90aWNrICYmCisJZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5IC1tIG9uZSAmJgorCWdpdCBjaGVja291dCAtYiB0d28gSEVBRF4gJiYKKwl0ZXN0X3RpY2sgJiYKKwlnaXQgY29tbWl0IC0tYWxsb3ctZW1wdHkgLW0gdHdvCisnCisKKyMgV2UnbGwgZW50ZXIgdGhlIGNoaWxkIHJlcG9zaXRvcnkgYWZ0ZXIgaXQncyBzZXQgdXAgc2luY2UgdGhhdCdzIHdoZXJlCisjIGFsbCBvZiB0aGUgc3Vic2VxdWVudCB0ZXN0cyB3aWxsIHdhbnQgdG8gcnVuIChhbmQgaXQncyBlYXN5IHRvIGZvcmdldCBhCisjICItQyBjaGlsZCIgYW5kIGdldCBub25zZW5zZSByZXN1bHRzKS4KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldCB1cCBzaGFyZWQgY2xvbmUnICcKKwlnaXQgY2xvbmUgLXMgLiBjaGlsZCAmJgorCWNkIGNoaWxkICYmCisJZ2l0IG1lcmdlIG9yaWdpbi9vbmUKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmV2LWxpc3QgLS1hbHRlcm5hdGUtcmVmcycgJworCWdpdCByZXYtbGlzdCAtLXJlbW90ZXM9b3JpZ2luID5leHBlY3QgJiYKKwlnaXQgcmV2LWxpc3QgLS1hbHRlcm5hdGUtcmVmcyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXYtbGlzdCAtLW5vdCAtLWFsdGVybmF0ZS1yZWZzJyAnCisJZ2l0IHJldi1wYXJzZSBIRUFEID5leHBlY3QgJiYKKwlnaXQgcmV2LWxpc3QgSEVBRCAtLW5vdCAtLWFsdGVybmF0ZS1yZWZzID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xpbWl0aW5nIHdpdGggYWx0ZXJuYXRlUmVmc1ByZWZpeGVzJyAnCisJdGVzdF9jb25maWcgY29yZS5hbHRlcm5hdGVSZWZzUHJlZml4ZXMgcmVmcy9oZWFkcy9vbmUgJiYKKwlnaXQgcmV2LWxpc3Qgb3JpZ2luL29uZSA+ZXhwZWN0ICYmCisJZ2l0IHJldi1saXN0IC0tYWx0ZXJuYXRlLXJlZnMgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIC0tc291cmNlIHNob3dzIC5hbHRlcm5hdGUgbWFya2VyJyAnCisJZ2l0IGxvZyAtLW9uZWxpbmUgLS1zb3VyY2UgLS1yZW1vdGVzPW9yaWdpbiA+ZXhwZWN0Lm9yaWcgJiYKKwlzZWQgInMvb3JpZ2luLiogLy5hbHRlcm5hdGUgLyIgPGV4cGVjdC5vcmlnID5leHBlY3QgJiYKKwlnaXQgbG9nIC0tb25lbGluZSAtLXNvdXJjZSAtLWFsdGVybmF0ZS1yZWZzID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTcwMC1wcm90b2NvbC12MS5zaCBiL3QvdDU3MDAtcHJvdG9jb2wtdjEuc2gKaW5kZXggYmE4NmE0NC4uMDIyOTAxYiAxMDA3NTUKLS0tIGEvdC90NTcwMC1wcm90b2NvbC12MS5zaAorKysgYi90L3Q1NzAwLXByb3RvY29sLXYxLnNoCkBAIC00LDYgKzQsMTAgQEAKIAogVEVTVF9OT19DUkVBVEVfUkVQTz0xCiAKKyMgVGhpcyBpcyBhIHByb3RvY29sLXNwZWNpZmljIHRlc3QuCitHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OPTAKK2V4cG9ydCBHSVRfVEVTVF9QUk9UT0NPTF9WRVJTSU9OCisKIC4gLi90ZXN0LWxpYi5zaAogCiAjIFRlc3QgcHJvdG9jb2wgdjEgd2l0aCAnZ2l0Oi8vJyB0cmFuc3BvcnQKQEAgLTI4OSw2ICsyOTMsNyBAQAogCWdyZXAgImdpdDwgdmVyc2lvbiAxIiBsb2cKICcKIAotc3RvcF9odHRwZAorIyBETyBOT1QgYWRkIG5vbi1odHRwZC1zcGVjaWZpYyB0ZXN0cyBoZXJlLCBiZWNhdXNlIHRoZSBsYXN0IHBhcnQgb2YgdGhpcworIyB0ZXN0IHNjcmlwdCBpcyBvbmx5IGV4ZWN1dGVkIHdoZW4gaHR0cGQgaXMgYXZhaWxhYmxlIGFuZCBlbmFibGVkLgogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDU3MDEtZ2l0LXNlcnZlLnNoIGIvdC90NTcwMS1naXQtc2VydmUuc2gKaW5kZXggYWU3OWM2Yi4uZmZiOTYxMyAxMDA3NTUKLS0tIGEvdC90NTcwMS1naXQtc2VydmUuc2gKKysrIGIvdC90NTcwMS1naXQtc2VydmUuc2gKQEAgLTEsNiArMSw2IEBACiAjIS9iaW4vc2gKIAotdGVzdF9kZXNjcmlwdGlvbj0ndGVzdCBnaXQtc2VydmUgYW5kIHNlcnZlciBjb21tYW5kcycKK3Rlc3RfZGVzY3JpcHRpb249J3Rlc3QgcHJvdG9jb2wgdjIgc2VydmVyIGNvbW1hbmRzJwogCiAuIC4vdGVzdC1saWIuc2gKIApAQCAtMTQsNyArMTQsOCBAQAogCTAwMDAKIAlFT0YKIAotCWdpdCBzZXJ2ZSAtLWFkdmVydGlzZS1jYXBhYmlsaXRpZXMgPm91dCAmJgorCUdJVF9URVNUX1NJREVCQU5EX0FMTD0wIHRlc3QtdG9vbCBzZXJ2ZS12MiBcCisJCS0tYWR2ZXJ0aXNlLWNhcGFiaWxpdGllcyA+b3V0ICYmCiAJdGVzdC10b29sIHBrdC1saW5lIHVucGFjayA8b3V0ID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC0yNCwxMSArMjUsMTEgQEAKIAl0ZXN0LXRvb2wgcGt0LWxpbmUgcGFjayA+aW4gPDwtRU9GICYmCiAJMDAwMAogCUVPRgotCWdpdCBzZXJ2ZSAtLXN0YXRlbGVzcy1ycGMgPm91dCA8aW4gJiYKKwl0ZXN0LXRvb2wgc2VydmUtdjIgLS1zdGF0ZWxlc3MtcnBjID5vdXQgPGluICYmCiAJdGVzdF9tdXN0X2JlX2VtcHR5IG91dCAmJgogCiAJIyBFT0YKLQlnaXQgc2VydmUgLS1zdGF0ZWxlc3MtcnBjID5vdXQgJiYKKwl0ZXN0LXRvb2wgc2VydmUtdjIgLS1zdGF0ZWxlc3MtcnBjID5vdXQgJiYKIAl0ZXN0X211c3RfYmVfZW1wdHkgb3V0CiAnCiAKQEAgLTM3LDcgKzM4LDcgQEAKIAlmb29iYXIKIAkwMDAwCiAJRU9GCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHNlcnZlIC0tc3RhdGVsZXNzLXJwYyAyPmVyciA8aW4gJiYKKwl0ZXN0X211c3RfZmFpbCB0ZXN0LXRvb2wgc2VydmUtdjIgLS1zdGF0ZWxlc3MtcnBjIDI+ZXJyIDxpbiAmJgogCXRlc3RfaTE4bmdyZXAgInVua25vd24gY2FwYWJpbGl0eSIgZXJyCiAnCiAKQEAgLTQ2LDcgKzQ3LDcgQEAKIAlhZ2VudD1naXQvdGVzdAogCTAwMDAKIAlFT0YKLQl0ZXN0X211c3RfZmFpbCBnaXQgc2VydmUgLS1zdGF0ZWxlc3MtcnBjIDI+ZXJyIDxpbiAmJgorCXRlc3RfbXVzdF9mYWlsIHRlc3QtdG9vbCBzZXJ2ZS12MiAtLXN0YXRlbGVzcy1ycGMgMj5lcnIgPGluICYmCiAJdGVzdF9pMThuZ3JlcCAibm8gY29tbWFuZCByZXF1ZXN0ZWQiIGVycgogJwogCkBAIC01Niw3ICs1Nyw3IEBACiAJYWdlbnQ9Z2l0L3Rlc3QKIAkwMDAwCiAJRU9GCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHNlcnZlIC0tc3RhdGVsZXNzLXJwYyAyPmVyciA8aW4gJiYKKwl0ZXN0X211c3RfZmFpbCB0ZXN0LXRvb2wgc2VydmUtdjIgLS1zdGF0ZWxlc3MtcnBjIDI+ZXJyIDxpbiAmJgogCXRlc3RfaTE4bmdyZXAgImludmFsaWQgY29tbWFuZCIgZXJyCiAnCiAKQEAgLTg3LDcgKzg4LDcgQEAKIAkwMDAwCiAJRU9GCiAKLQlnaXQgc2VydmUgLS1zdGF0ZWxlc3MtcnBjIDxpbiA+b3V0ICYmCisJdGVzdC10b29sIHNlcnZlLXYyIC0tc3RhdGVsZXNzLXJwYyA8aW4gPm91dCAmJgogCXRlc3QtdG9vbCBwa3QtbGluZSB1bnBhY2sgPG91dCA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwpAQCAtMTA3LDcgKzEwOCw3IEBACiAJMDAwMAogCUVPRgogCi0JZ2l0IHNlcnZlIC0tc3RhdGVsZXNzLXJwYyA8aW4gPm91dCAmJgorCXRlc3QtdG9vbCBzZXJ2ZS12MiAtLXN0YXRlbGVzcy1ycGMgPGluID5vdXQgJiYKIAl0ZXN0LXRvb2wgcGt0LWxpbmUgdW5wYWNrIDxvdXQgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKQEAgLTEyNyw3ICsxMjgsNyBAQAogCTAwMDAKIAlFT0YKIAotCWdpdCBzZXJ2ZSAtLXN0YXRlbGVzcy1ycGMgPGluID5vdXQgJiYKKwl0ZXN0LXRvb2wgc2VydmUtdjIgLS1zdGF0ZWxlc3MtcnBjIDxpbiA+b3V0ICYmCiAJdGVzdC10b29sIHBrdC1saW5lIHVucGFjayA8b3V0ID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC0xNDgsNyArMTQ5LDcgQEAKIAkwMDAwCiAJRU9GCiAKLQlnaXQgc2VydmUgLS1zdGF0ZWxlc3MtcnBjIDxpbiA+b3V0ICYmCisJdGVzdC10b29sIHNlcnZlLXYyIC0tc3RhdGVsZXNzLXJwYyA8aW4gPm91dCAmJgogCXRlc3QtdG9vbCBwa3QtbGluZSB1bnBhY2sgPG91dCA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwpAQCAtMTY5LDcgKzE3MCw3IEBACiAJMDAwMAogCUVPRgogCi0JZ2l0IHNlcnZlIC0tc3RhdGVsZXNzLXJwYyA8aW4gPm91dCAmJgorCXRlc3QtdG9vbCBzZXJ2ZS12MiAtLXN0YXRlbGVzcy1ycGMgPGluID5vdXQgJiYKIAl0ZXN0LXRvb2wgcGt0LWxpbmUgdW5wYWNrIDxvdXQgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKQEAgLTE4OSw3ICsxOTAsNyBAQAogCTAwMDAKIAlFT0YKIAotCWdpdCBzZXJ2ZSAtLXN0YXRlbGVzcy1ycGMgPGluID5vdXQgJiYKKwl0ZXN0LXRvb2wgc2VydmUtdjIgLS1zdGF0ZWxlc3MtcnBjIDxpbiA+b3V0ICYmCiAJdGVzdC10b29sIHBrdC1saW5lIHVucGFjayA8b3V0ID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCkBAIC0yMDQsNyArMjA1LDEwIEBACiAJMDAwMAogCUVPRgogCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IC1DIHNlcnZlciBzZXJ2ZSAtLXN0YXRlbGVzcy1ycGMgPGluID4vZGV2L251bGwgMj5lcnIgJiYKKwkoCisJCWNkIHNlcnZlciAmJgorCQl0ZXN0X211c3RfZmFpbCB0ZXN0LXRvb2wgc2VydmUtdjIgLS1zdGF0ZWxlc3MtcnBjCisJKSA8aW4gPi9kZXYvbnVsbCAyPmVyciAmJgogCWdyZXAgInVuZXhwZWN0ZWQgbGluZTogLnRoaXMtaXMtbm90LWEtY29tbWFuZC4iIGVycgogJwogCmRpZmYgLS1naXQgYS90L3Q1NzAyLXByb3RvY29sLXYyLnNoIGIvdC90NTcwMi1wcm90b2NvbC12Mi5zaAppbmRleCAwZjJiMDllLi41MDM5ZTY2IDEwMDc1NQotLS0gYS90L3Q1NzAyLXByb3RvY29sLXYyLnNoCisrKyBiL3QvdDU3MDItcHJvdG9jb2wtdjIuc2gKQEAgLTMyLDcgKzMyLDcgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlZiBhZHZlcnRpc21lbnQgaXMgZmlsdGVyZWQgd2l0aCBscy1yZW1vdGUgdXNpbmcgcHJvdG9jb2wgdjInICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlZiBhZHZlcnRpc2VtZW50IGlzIGZpbHRlcmVkIHdpdGggbHMtcmVtb3RlIHVzaW5nIHByb3RvY29sIHYyJyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBsb2ciICYmCiAKIAlHSVRfVFJBQ0VfUEFDS0VUPSIkKHB3ZCkvbG9nIiBnaXQgLWMgcHJvdG9jb2wudmVyc2lvbj0yIFwKQEAgLTE1NCw3ICsxNTQsNyBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVmIGFkdmVydGlzbWVudCBpcyBmaWx0ZXJlZCB3aXRoIGxzLXJlbW90ZSB1c2luZyBwcm90b2NvbCB2MicgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVmIGFkdmVydGlzZW1lbnQgaXMgZmlsdGVyZWQgd2l0aCBscy1yZW1vdGUgdXNpbmcgcHJvdG9jb2wgdjInICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIGxvZyIgJiYKIAogCUdJVF9UUkFDRV9QQUNLRVQ9IiQocHdkKS9sb2ciIGdpdCAtYyBwcm90b2NvbC52ZXJzaW9uPTIgXApAQCAtMTgyLDYgKzE4MiwxMyBAQAogCWdyZXAgInNlcnZlci1vcHRpb249d29ybGQiIGxvZwogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd3YXJuIGlmIHVzaW5nIHNlcnZlci1vcHRpb24gd2l0aCBscy1yZW1vdGUgd2l0aCBsZWdhY3kgcHJvdG9jb2wnICcKKwl0ZXN0X211c3RfZmFpbCBlbnYgR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTj0wIGdpdCAtYyBwcm90b2NvbC52ZXJzaW9uPTAgXAorCQlscy1yZW1vdGUgLW8gaGVsbG8gLW8gd29ybGQgImZpbGU6Ly8kKHB3ZCkvZmlsZV9wYXJlbnQiIG1hc3RlciAyPmVyciAmJgorCisJdGVzdF9pMThuZ3JlcCAic2VlIHByb3RvY29sLnZlcnNpb24gaW4iIGVyciAmJgorCXRlc3RfaTE4bmdyZXAgInNlcnZlciBvcHRpb25zIHJlcXVpcmUgcHJvdG9jb2wgdmVyc2lvbiAyIG9yIGxhdGVyIiBlcnIKKycKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xvbmUgd2l0aCBmaWxlOi8vIHVzaW5nIHByb3RvY29sIHYyJyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBsb2ciICYmCkBAIC0yMTgsNyArMjI1LDcgQEAKIAlncmVwICJmZXRjaDwgdmVyc2lvbiAyIiBsb2cKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVmIGFkdmVydGlzbWVudCBpcyBmaWx0ZXJlZCBkdXJpbmcgZmV0Y2ggdXNpbmcgcHJvdG9jb2wgdjInICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlZiBhZHZlcnRpc2VtZW50IGlzIGZpbHRlcmVkIGR1cmluZyBmZXRjaCB1c2luZyBwcm90b2NvbCB2MicgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgbG9nIiAmJgogCiAJdGVzdF9jb21taXQgLUMgZmlsZV9wYXJlbnQgdGhyZWUgJiYKQEAgLTI1MSw2ICsyNTgsNDAgQEAKIAlncmVwICJzZXJ2ZXItb3B0aW9uPXdvcmxkIiBsb2cKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnd2FybiBpZiB1c2luZyBzZXJ2ZXItb3B0aW9uIHdpdGggZmV0Y2ggd2l0aCBsZWdhY3kgcHJvdG9jb2wnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1yZiB0ZW1wX2NoaWxkIiAmJgorCisJZ2l0IGluaXQgdGVtcF9jaGlsZCAmJgorCisJdGVzdF9tdXN0X2ZhaWwgZW52IEdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT049MCBnaXQgLUMgdGVtcF9jaGlsZCAtYyBwcm90b2NvbC52ZXJzaW9uPTAgXAorCQlmZXRjaCAtbyBoZWxsbyAtbyB3b3JsZCAiZmlsZTovLyQocHdkKS9maWxlX3BhcmVudCIgbWFzdGVyIDI+ZXJyICYmCisKKwl0ZXN0X2kxOG5ncmVwICJzZWUgcHJvdG9jb2wudmVyc2lvbiBpbiIgZXJyICYmCisJdGVzdF9pMThuZ3JlcCAic2VydmVyIG9wdGlvbnMgcmVxdWlyZSBwcm90b2NvbCB2ZXJzaW9uIDIgb3IgbGF0ZXIiIGVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXJ2ZXItb3B0aW9ucyBhcmUgc2VudCB3aGVuIGNsb25pbmcnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1yZiBsb2cgbXljbG9uZSIgJiYKKworCUdJVF9UUkFDRV9QQUNLRVQ9IiQocHdkKS9sb2ciIGdpdCAtYyBwcm90b2NvbC52ZXJzaW9uPTIgXAorCQljbG9uZSAtLXNlcnZlci1vcHRpb249aGVsbG8gLS1zZXJ2ZXItb3B0aW9uPXdvcmxkIFwKKwkJImZpbGU6Ly8kKHB3ZCkvZmlsZV9wYXJlbnQiIG15Y2xvbmUgJiYKKworCWdyZXAgInNlcnZlci1vcHRpb249aGVsbG8iIGxvZyAmJgorCWdyZXAgInNlcnZlci1vcHRpb249d29ybGQiIGxvZworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd3YXJuIGlmIHVzaW5nIHNlcnZlci1vcHRpb24gd2l0aCBjbG9uZSB3aXRoIGxlZ2FjeSBwcm90b2NvbCcgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLXJmIG15Y2xvbmUiICYmCisKKwl0ZXN0X211c3RfZmFpbCBlbnYgR0lUX1RFU1RfUFJPVE9DT0xfVkVSU0lPTj0wIGdpdCAtYyBwcm90b2NvbC52ZXJzaW9uPTAgXAorCQljbG9uZSAtLXNlcnZlci1vcHRpb249aGVsbG8gLS1zZXJ2ZXItb3B0aW9uPXdvcmxkIFwKKwkJImZpbGU6Ly8kKHB3ZCkvZmlsZV9wYXJlbnQiIG15Y2xvbmUgMj5lcnIgJiYKKworCXRlc3RfaTE4bmdyZXAgInNlZSBwcm90b2NvbC52ZXJzaW9uIGluIiBlcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJzZXJ2ZXIgb3B0aW9ucyByZXF1aXJlIHByb3RvY29sIHZlcnNpb24gMiBvciBsYXRlciIgZXJyCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3VwbG9hZC1wYWNrIHJlc3BlY3RzIGNvbmZpZyB1c2luZyBwcm90b2NvbCB2MicgJwogCWdpdCBpbml0IHNlcnZlciAmJgogCXdyaXRlX3NjcmlwdCBzZXJ2ZXIvLmdpdC9ob29rIDw8LVxFT0YgJiYKQEAgLTM1OSwxMiArNDAwLDEzIEBACiAJMDAwMAogCUVPRgogCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IC1DIHNlcnZlciBzZXJ2ZSAtLXN0YXRlbGVzcy1ycGMgPGluID4vZGV2L251bGwgMj5lcnIgJiYKKwl0ZXN0X211c3RfZmFpbCB0ZXN0LXRvb2wgLUMgc2VydmVyIHNlcnZlLXYyIC0tc3RhdGVsZXNzLXJwYyBcCisJCTxpbiA+L2Rldi9udWxsIDI+ZXJyICYmCiAJZ3JlcCAidW5leHBlY3RlZCBsaW5lOiAuZmlsdGVyIGJsb2I6bm9uZS4iIGVyciAmJgogCiAJIyBFeGVyY2lzZSB0byBlbnN1cmUgdGhhdCBpZiBhZHZlcnRpc2VkLCBmaWx0ZXIgd29ya3MKIAlnaXQgLUMgc2VydmVyIGNvbmZpZyB1cGxvYWRwYWNrLmFsbG93ZmlsdGVyIDEgJiYKLQlnaXQgLUMgc2VydmVyIHNlcnZlIC0tc3RhdGVsZXNzLXJwYyA8aW4gPi9kZXYvbnVsbAorCXRlc3QtdG9vbCAtQyBzZXJ2ZXIgc2VydmUtdjIgLS1zdGF0ZWxlc3MtcnBjIDxpbiA+L2Rldi9udWxsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RlZmF1bHQgcmVmc3BlYyBpcyB1c2VkIHRvIGZpbHRlciByZWYgd2hlbiBmZXRjaGNpbmcnICcKQEAgLTQ1NywxMCArNDk5LDcgQEAKIAogCSMgQWRkIGV4dHJhIGNvbW1pdHMgdG8gdGhlIGNsaWVudCBzbyB0aGF0IHRoZSB3aG9sZSBmZXRjaCB0YWtlcyBtb3JlCiAJIyB0aGFuIDEgcmVxdWVzdCAoZHVlIHRvIG5lZ290aWF0aW9uKQotCWZvciBpIGluICQodGVzdF9zZXEgMSAzMikKLQlkbwotCQl0ZXN0X2NvbW1pdCAtQyBjbGllbnQgYyRpCi0JZG9uZSAmJgorCXRlc3RfY29tbWl0X2J1bGsgLUMgY2xpZW50IC0taWQ9YyAzMiAmJgogCiAJZ2l0IC1DIHNlcnZlciBjaGVja291dCAtYiBuZXdicmFuY2ggYmFzZSAmJgogCXRlc3RfY29tbWl0IC1DIHNlcnZlciBjbGllbnRfd2FudHMgJiYKQEAgLTQ3MSw2ICs1MTAsNTMgQEAKIAlncmVwICJmZXRjaDwgdmVyc2lvbiAyIiB0cmFjZQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdlbnN1cmUgdGhhdCBtdWx0aXBsZSBmZXRjaGVzIGluIHNhbWUgcHJvY2VzcyBmcm9tIGEgc2hhbGxvdyByZXBvIHdvcmtzJyAnCisJcm0gLXJmIHNlcnZlciBjbGllbnQgdHJhY2UgJiYKKworCXRlc3RfY3JlYXRlX3JlcG8gc2VydmVyICYmCisJdGVzdF9jb21taXQgLUMgc2VydmVyIG9uZSAmJgorCXRlc3RfY29tbWl0IC1DIHNlcnZlciB0d28gJiYKKwl0ZXN0X2NvbW1pdCAtQyBzZXJ2ZXIgdGhyZWUgJiYKKwlnaXQgY2xvbmUgLS1zaGFsbG93LWV4Y2x1ZGUgdHdvICJmaWxlOi8vJChwd2QpL3NlcnZlciIgY2xpZW50ICYmCisKKwlnaXQgLUMgc2VydmVyIHRhZyAtYSAtbSAiYW4gYW5ub3RhdGVkIHRhZyIgdHdvdGFnIHR3byAmJgorCisJIyBUcmlnZ2VycyB0YWcgZm9sbG93aW5nICh0aHVzLCAyIGZldGNoZXMgaW4gb25lIHByb2Nlc3MpCisJR0lUX1RSQUNFX1BBQ0tFVD0iJChwd2QpL3RyYWNlIiBnaXQgLUMgY2xpZW50IC1jIHByb3RvY29sLnZlcnNpb249MiBcCisJCWZldGNoIC0tc2hhbGxvdy1leGNsdWRlIG9uZSBvcmlnaW4gJiYKKwkjIEVuc3VyZSB0aGF0IHByb3RvY29sIHYyIGlzIHVzZWQKKwlncmVwICJmZXRjaDwgdmVyc2lvbiAyIiB0cmFjZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZWVwZW4tcmVsYXRpdmUnICcKKwlybSAtcmYgc2VydmVyIGNsaWVudCB0cmFjZSAmJgorCisJdGVzdF9jcmVhdGVfcmVwbyBzZXJ2ZXIgJiYKKwl0ZXN0X2NvbW1pdCAtQyBzZXJ2ZXIgb25lICYmCisJdGVzdF9jb21taXQgLUMgc2VydmVyIHR3byAmJgorCXRlc3RfY29tbWl0IC1DIHNlcnZlciB0aHJlZSAmJgorCWdpdCBjbG9uZSAtLWRlcHRoIDEgImZpbGU6Ly8kKHB3ZCkvc2VydmVyIiBjbGllbnQgJiYKKwl0ZXN0X2NvbW1pdCAtQyBzZXJ2ZXIgZm91ciAmJgorCisJIyBTYW5pdHkgY2hlY2sgdGhhdCBvbmx5ICJ0aHJlZSIgaXMgZG93bmxvYWRlZAorCWdpdCAtQyBjbGllbnQgbG9nIC0tcHJldHR5PXRmb3JtYXQ6JXMgbWFzdGVyID5hY3R1YWwgJiYKKwllY2hvIHRocmVlID5leHBlY3RlZCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbCAmJgorCisJR0lUX1RSQUNFX1BBQ0tFVD0iJChwd2QpL3RyYWNlIiBnaXQgLUMgY2xpZW50IC1jIHByb3RvY29sLnZlcnNpb249MiBcCisJCWZldGNoIC0tZGVlcGVuPTEgb3JpZ2luICYmCisJIyBFbnN1cmUgdGhhdCBwcm90b2NvbCB2MiBpcyB1c2VkCisJZ3JlcCAiZmV0Y2g8IHZlcnNpb24gMiIgdHJhY2UgJiYKKworCWdpdCAtQyBjbGllbnQgbG9nIC0tcHJldHR5PXRmb3JtYXQ6JXMgb3JpZ2luL21hc3RlciA+YWN0dWFsICYmCisJY2F0ID5leHBlY3RlZCA8PC1cRU9GICYmCisJZm91cgorCXRocmVlCisJdHdvCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisnCisKICMgVGVzdCBwcm90b2NvbCB2MiB3aXRoICdodHRwOi8vJyB0cmFuc3BvcnQKICMKIC4gIiRURVNUX0RJUkVDVE9SWSIvbGliLWh0dHBkLnNoCkBAIC00OTUsNyArNTgxLDM4IEBACiAJIyBDbGllbnQgcmVxdWVzdGVkIHRvIHVzZSBwcm90b2NvbCB2MgogCWdyZXAgIkdpdC1Qcm90b2NvbDogdmVyc2lvbj0yIiBsb2cgJiYKIAkjIFNlcnZlciByZXNwb25kZWQgdXNpbmcgcHJvdG9jb2wgdjIKLQlncmVwICJnaXQ8IHZlcnNpb24gMiIgbG9nCisJZ3JlcCAiZ2l0PCB2ZXJzaW9uIDIiIGxvZyAmJgorCSMgVmVyaWZ5IHRoYXQgdGhlIGNodW5rZWQgZW5jb2Rpbmcgc2VuZGluZyBjb2RlcGF0aCBpcyBOT1QgZXhlcmNpc2VkCisJISBncmVwICJTZW5kIGhlYWRlcjogVHJhbnNmZXItRW5jb2Rpbmc6IGNodW5rZWQiIGxvZworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjbG9uZSBiaWcgcmVwb3NpdG9yeSB3aXRoIGh0dHA6Ly8gdXNpbmcgcHJvdG9jb2wgdjInICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIGxvZyIgJiYKKworCWdpdCBpbml0ICIkSFRUUERfRE9DVU1FTlRfUk9PVF9QQVRIL2JpZyIgJiYKKwkjIEVuc3VyZSB0aGF0IHRoZSBsaXN0IG9mIHdhbnRzIGlzIGdyZWF0ZXIgdGhhbiBodHRwLnBvc3RidWZmZXIgYmVsb3cKKwlmb3IgaSBpbiAkKHRlc3Rfc2VxIDEgMTUwMCkKKwlkbworCQkjIGRvIG5vdCB1c2UgaGVyZS1kb2MsIGJlY2F1c2UgaXQgcmVxdWlyZXMgYSBwcm9jZXNzCisJCSMgcGVyIGxvb3AgaXRlcmF0aW9uCisJCWVjaG8gImNvbW1pdCByZWZzL2hlYWRzL3Rvby1tYW55LXJlZnMtJGkiICYmCisJCWVjaG8gImNvbW1pdHRlciBnaXQgPGdpdEBleGFtcGxlLmNvbT4gJGkgKzAwMDAiICYmCisJCWVjaG8gImRhdGEgMCIgJiYKKwkJZWNobyAiTSA2NDQgaW5saW5lIGJsYS50eHQiICYmCisJCWVjaG8gImRhdGEgNCIgJiYKKwkJZWNobyAiYmxhIgorCWRvbmUgfCBnaXQgLUMgIiRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgvYmlnIiBmYXN0LWltcG9ydCAmJgorCisJR0lUX1RSQUNFX1BBQ0tFVD0iJChwd2QpL2xvZyIgR0lUX1RSQUNFX0NVUkw9IiQocHdkKS9sb2ciIGdpdCBcCisJCS1jIHByb3RvY29sLnZlcnNpb249MiAtYyBodHRwLnBvc3RidWZmZXI9NjU1MzYgXAorCQljbG9uZSAiJEhUVFBEX1VSTC9zbWFydC9iaWciIGJpZ19jaGlsZCAmJgorCisJIyBDbGllbnQgcmVxdWVzdGVkIHRvIHVzZSBwcm90b2NvbCB2MgorCWdyZXAgIkdpdC1Qcm90b2NvbDogdmVyc2lvbj0yIiBsb2cgJiYKKwkjIFNlcnZlciByZXNwb25kZWQgdXNpbmcgcHJvdG9jb2wgdjIKKwlncmVwICJnaXQ8IHZlcnNpb24gMiIgbG9nICYmCisJIyBWZXJpZnkgdGhhdCB0aGUgY2h1bmtlZCBlbmNvZGluZyBzZW5kaW5nIGNvZGVwYXRoIGlzIGV4ZXJjaXNlZAorCWdyZXAgIlNlbmQgaGVhZGVyOiBUcmFuc2Zlci1FbmNvZGluZzogY2h1bmtlZCIgbG9nCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoIHdpdGggaHR0cDovLyB1c2luZyBwcm90b2NvbCB2MicgJwpAQCAtNTE0LDYgKzYzMSw1MiBAQAogCWdyZXAgImdpdDwgdmVyc2lvbiAyIiBsb2cKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2ggd2l0aCBodHRwOi8vIGJ5IGhhc2ggd2l0aG91dCB0YWcgZm9sbG93aW5nIHdpdGggcHJvdG9jb2wgdjIgZG9lcyBub3QgbGlzdCByZWZzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBsb2ciICYmCisKKwl0ZXN0X2NvbW1pdCAtQyAiJEhUVFBEX0RPQ1VNRU5UX1JPT1RfUEFUSC9odHRwX3BhcmVudCIgdHdvX2EgJiYKKwlnaXQgLUMgIiRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgvaHR0cF9wYXJlbnQiIHJldi1wYXJzZSB0d29fYSA+dHdvX2FfaGFzaCAmJgorCisJR0lUX1RSQUNFX1BBQ0tFVD0iJChwd2QpL2xvZyIgZ2l0IC1DIGh0dHBfY2hpbGQgLWMgcHJvdG9jb2wudmVyc2lvbj0yIFwKKwkJZmV0Y2ggLS1uby10YWdzIG9yaWdpbiAkKGNhdCB0d29fYV9oYXNoKSAmJgorCisJZ3JlcCAiZmV0Y2g8IHZlcnNpb24gMiIgbG9nICYmCisJISBncmVwICJmZXRjaD4gY29tbWFuZD1scy1yZWZzIiBsb2cKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2ggZnJvbSBuYW1lc3BhY2VkIHJlcG8gcmVzcGVjdHMgbmFtZXNwYWNlcycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgbG9nIiAmJgorCisJZ2l0IGluaXQgIiRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgvbnNyZXBvIiAmJgorCXRlc3RfY29tbWl0IC1DICIkSFRUUERfRE9DVU1FTlRfUk9PVF9QQVRIL25zcmVwbyIgb25lICYmCisJdGVzdF9jb21taXQgLUMgIiRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgvbnNyZXBvIiB0d28gJiYKKwlnaXQgLUMgIiRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgvbnNyZXBvIiBcCisJCXVwZGF0ZS1yZWYgcmVmcy9uYW1lc3BhY2VzL25zL3JlZnMvaGVhZHMvbWFzdGVyIG9uZSAmJgorCisJR0lUX1RSQUNFX1BBQ0tFVD0iJChwd2QpL2xvZyIgZ2l0IC1DIGh0dHBfY2hpbGQgLWMgcHJvdG9jb2wudmVyc2lvbj0yIFwKKwkJZmV0Y2ggIiRIVFRQRF9VUkwvc21hcnRfbmFtZXNwYWNlL25zcmVwbyIgXAorCQlyZWZzL2hlYWRzL21hc3RlcjpyZWZzL2hlYWRzL3RoZWlycyAmJgorCisJIyBTZXJ2ZXIgcmVzcG9uZGVkIHVzaW5nIHByb3RvY29sIHYyCisJZ3JlcCAiZmV0Y2g8IHZlcnNpb24gMiIgbG9nICYmCisKKwlnaXQgLUMgIiRIVFRQRF9ET0NVTUVOVF9ST09UX1BBVEgvbnNyZXBvIiByZXYtcGFyc2Ugb25lID5leHBlY3QgJiYKKwlnaXQgLUMgaHR0cF9jaGlsZCByZXYtcGFyc2UgdGhlaXJzID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xzLXJlbW90ZSB3aXRoIHYyIGh0dHAgc2VuZHMgb25seSBvbmUgUE9TVCcgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgbG9nIiAmJgorCisJZ2l0IGxzLXJlbW90ZSAiJEhUVFBEX0RPQ1VNRU5UX1JPT1RfUEFUSC9odHRwX3BhcmVudCIgPmV4cGVjdCAmJgorCUdJVF9UUkFDRV9DVVJMPSIkKHB3ZCkvbG9nIiBnaXQgLWMgcHJvdG9jb2wudmVyc2lvbj0yIFwKKwkJbHMtcmVtb3RlICIkSFRUUERfVVJML3NtYXJ0L2h0dHBfcGFyZW50IiA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJZ3JlcCAiU2VuZCBoZWFkZXI6IFBPU1QiIGxvZyA+cG9zdHMgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAxIHBvc3RzCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1c2ggd2l0aCBodHRwOi8vIGFuZCBhIGNvbmZpZyBvZiB2MiBkb2VzIG5vdCByZXF1ZXN0IHYyJyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBsb2ciICYmCiAJIyBUaWxsIHYyIGZvciBwdXNoIGlzIGRlc2lnbmVkLCBtYWtlIHN1cmUgdGhhdCBpZiBhIGNsaWVudCBoYXMKQEAgLTUzMSw5ICs2OTQsOSBAQAogCWdpdCAtQyAiJEhUVFBEX0RPQ1VNRU5UX1JPT1RfUEFUSC9odHRwX3BhcmVudCIgbG9nIC0xIC0tZm9ybWF0PSVzIGNsaWVudF9icmFuY2ggPmV4cGVjdCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAotCSMgQ2xpZW50IGRpZG50IHJlcXVlc3QgdG8gdXNlIHByb3RvY29sIHYyCisJIyBDbGllbnQgZGlkIG5vdCByZXF1ZXN0IHRvIHVzZSBwcm90b2NvbCB2MgogCSEgZ3JlcCAiR2l0LVByb3RvY29sOiB2ZXJzaW9uPTIiIGxvZyAmJgotCSMgU2VydmVyIGRpZG50IHJlc3BvbmQgdXNpbmcgcHJvdG9jb2wgdjIKKwkjIFNlcnZlciBkaWQgbm90IHJlc3BvbmQgdXNpbmcgcHJvdG9jb2wgdjIKIAkhIGdyZXAgImdpdDwgdmVyc2lvbiAyIiBsb2cKICcKIApAQCAtNTQ5LDExICs3MTIsMTEgQEAKIAogCSMgQWZ0ZXIgInJlYWR5IiBpbiB0aGUgYWNrbm93bGVkZ21lbnRzIHNlY3Rpb24sIHByZXRlbmQgdGhhdCBhIEZMVVNICiAJIyAoMDAwMCkgd2FzIHNlbnQgaW5zdGVhZCBvZiBhIERFTElNICgwMDAxKS4KLQlwcmludGYgIi9yZWFkeS8sJCBzLzAwMDEvMDAwMC8iIFwKLQkJPiIkSFRUUERfUk9PVF9QQVRIL29uZS10aW1lLXNlZCIgJiYKKwlwcmludGYgIlwkcmVhZHkgPSAxIGlmIC9yZWFkeS87IFwkcmVhZHkgJiYgcy8wMDAxLzAwMDAvIiBcCisJCT4iJEhUVFBEX1JPT1RfUEFUSC9vbmUtdGltZS1wZXJsIiAmJgogCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1DIGh0dHBfY2hpbGQgLWMgcHJvdG9jb2wudmVyc2lvbj0yIFwKLQkJZmV0Y2ggIiRIVFRQRF9VUkwvb25lX3RpbWVfc2VkL2h0dHBfcGFyZW50IiAyPiBlcnIgJiYKKwkJZmV0Y2ggIiRIVFRQRF9VUkwvb25lX3RpbWVfcGVybC9odHRwX3BhcmVudCIgMj4gZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAiZXhwZWN0ZWQgcGFja2ZpbGUgdG8gYmUgc2VudCBhZnRlciAucmVhZHkuIiBlcnIKICcKIApAQCAtNTcwLDI0ICs3MzMsMjIgQEAKIAkjIENyZWF0ZSBtYW55IGNvbW1pdHMgdG8gZXh0ZW5kIHRoZSBuZWdvdGlhdGlvbiBwaGFzZSBhY3Jvc3MgbXVsdGlwbGUKIAkjIHJlcXVlc3RzLCBzbyB0aGF0IHRoZSBzZXJ2ZXIgZG9lcyBub3Qgc2VuZCAicmVhZHkiIGluIHRoZSBmaXJzdAogCSMgcmVxdWVzdC4KLQlmb3IgaSBpbiAkKHRlc3Rfc2VxIDEgMzIpCi0JZG8KLQkJdGVzdF9jb21taXQgLUMgaHR0cF9jaGlsZCBjJGkKLQlkb25lICYmCisJdGVzdF9jb21taXRfYnVsayAtQyBodHRwX2NoaWxkIC0taWQ9YyAzMiAmJgogCiAJIyBBZnRlciB0aGUgYWNrbm93bGVkZ21lbnRzIHNlY3Rpb24sIHByZXRlbmQgdGhhdCBhIERFTElNCiAJIyAoMDAwMSkgd2FzIHNlbnQgaW5zdGVhZCBvZiBhIEZMVVNIICgwMDAwKS4KLQlwcmludGYgIi9hY2tub3dsZWRnbWVudHMvLCQgcy8wMDAwLzAwMDEvIiBcCi0JCT4iJEhUVFBEX1JPT1RfUEFUSC9vbmUtdGltZS1zZWQiICYmCisJcHJpbnRmICJcJGFjayA9IDEgaWYgL2Fja25vd2xlZGdtZW50cy87IFwkYWNrICYmIHMvMDAwMC8wMDAxLyIgXAorCQk+IiRIVFRQRF9ST09UX1BBVEgvb25lLXRpbWUtcGVybCIgJiYKIAogCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVFJBQ0VfUEFDS0VUPSIkKHB3ZCkvbG9nIiBnaXQgLUMgaHR0cF9jaGlsZCBcCiAJCS1jIHByb3RvY29sLnZlcnNpb249MiBcCi0JCWZldGNoICIkSFRUUERfVVJML29uZV90aW1lX3NlZC9odHRwX3BhcmVudCIgMj4gZXJyICYmCi0JZ3JlcCAiZmV0Y2g8IGFja25vd2xlZGdtZW50cyIgbG9nICYmCi0JISBncmVwICJmZXRjaDwgcmVhZHkiIGxvZyAmJgorCQlmZXRjaCAiJEhUVFBEX1VSTC9vbmVfdGltZV9wZXJsL2h0dHBfcGFyZW50IiAyPiBlcnIgJiYKKwlncmVwICJmZXRjaDwgLiphY2tub3dsZWRnbWVudHMiIGxvZyAmJgorCSEgZ3JlcCAiZmV0Y2g8IC4qcmVhZHkiIGxvZyAmJgogCXRlc3RfaTE4bmdyZXAgImV4cGVjdGVkIG5vIG90aGVyIHNlY3Rpb25zIHRvIGJlIHNlbnQgYWZ0ZXIgbm8gLnJlYWR5LiIgZXJyCiAnCiAKLXN0b3BfaHR0cGQKKyMgRE8gTk9UIGFkZCBub24taHR0cGQtc3BlY2lmaWMgdGVzdHMgaGVyZSwgYmVjYXVzZSB0aGUgbGFzdCBwYXJ0IG9mIHRoaXMKKyMgdGVzdCBzY3JpcHQgaXMgb25seSBleGVjdXRlZCB3aGVuIGh0dHBkIGlzIGF2YWlsYWJsZSBhbmQgZW5hYmxlZC4KIAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q1NzAzLXVwbG9hZC1wYWNrLXJlZi1pbi13YW50LnNoIGIvdC90NTcwMy11cGxvYWQtcGFjay1yZWYtaW4td2FudC5zaAppbmRleCAzZjU4ZjA1Li43ZmJhMzA2IDEwMDc1NQotLS0gYS90L3Q1NzAzLXVwbG9hZC1wYWNrLXJlZi1pbi13YW50LnNoCisrKyBiL3QvdDU3MDMtdXBsb2FkLXBhY2stcmVmLWluLXdhbnQuc2gKQEAgLTE4LDE0ICsxOCwxNiBAQAogCQlwCiAJCX0nIDxvdXQgfCB0ZXN0LXRvb2wgcGt0LWxpbmUgdW5wYWNrLXNpZGViYW5kID5vLnBhY2sgJiYKIAlnaXQgaW5kZXgtcGFjayBvLnBhY2sgJiYKLQlnaXQgdmVyaWZ5LXBhY2sgLXYgby5pZHggfCBncmVwIGNvbW1pdCB8IGN1dCAtYy00MCB8IHNvcnQgPmFjdHVhbF9jb21taXRzCisJZ2l0IHZlcmlmeS1wYWNrIC12IG8uaWR4ID5vYmpzICYmCisJZ3JlcCBjb21taXQgb2JqcyB8IGN1dCAtZCIgIiAtZjEgfCBzb3J0ID5hY3R1YWxfY29tbWl0cwogfQogCiBjaGVja19vdXRwdXQgKCkgewogCWdldF9hY3R1YWxfcmVmcyAmJgogCXRlc3RfY21wIGV4cGVjdGVkX3JlZnMgYWN0dWFsX3JlZnMgJiYKIAlnZXRfYWN0dWFsX2NvbW1pdHMgJiYKLQl0ZXN0X2NtcCBleHBlY3RlZF9jb21taXRzIGFjdHVhbF9jb21taXRzCisJc29ydCBleHBlY3RlZF9jb21taXRzID5zb3J0ZWRfY29tbWl0cyAmJgorCXRlc3RfY21wIHNvcnRlZF9jb21taXRzIGFjdHVhbF9jb21taXRzCiB9CiAKICMgYyhvL2ZvbykgZChvL2JhcikKQEAgLTM1LDYgKzM3LDcgQEAKICMgICAgICAgICAgICAgXCB8IC8KICMgICAgICAgICAgICAgICBhCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCByZXBvc2l0b3J5JyAnCisJdGVzdF9vaWRfaW5pdCAmJgogCXRlc3RfY29tbWl0IGEgJiYKIAlnaXQgY2hlY2tvdXQgLWIgby9mb28gJiYKIAl0ZXN0X2NvbW1pdCBiICYmCkBAIC00OCwxNSArNTEsMTUgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY29uZmlnIGNvbnRyb2xzIHJlZi1pbi13YW50IGFkdmVydGlzZW1lbnQnICcKLQlnaXQgc2VydmUgLS1hZHZlcnRpc2UtY2FwYWJpbGl0aWVzID5vdXQgJiYKKwl0ZXN0LXRvb2wgc2VydmUtdjIgLS1hZHZlcnRpc2UtY2FwYWJpbGl0aWVzID5vdXQgJiYKIAkhIGdyZXAgLWEgcmVmLWluLXdhbnQgb3V0ICYmCiAKIAlnaXQgY29uZmlnIHVwbG9hZHBhY2suYWxsb3dSZWZJbldhbnQgZmFsc2UgJiYKLQlnaXQgc2VydmUgLS1hZHZlcnRpc2UtY2FwYWJpbGl0aWVzID5vdXQgJiYKKwl0ZXN0LXRvb2wgc2VydmUtdjIgLS1hZHZlcnRpc2UtY2FwYWJpbGl0aWVzID5vdXQgJiYKIAkhIGdyZXAgLWEgcmVmLWluLXdhbnQgb3V0ICYmCiAKIAlnaXQgY29uZmlnIHVwbG9hZHBhY2suYWxsb3dSZWZJbldhbnQgdHJ1ZSAmJgotCWdpdCBzZXJ2ZSAtLWFkdmVydGlzZS1jYXBhYmlsaXRpZXMgPm91dCAmJgorCXRlc3QtdG9vbCBzZXJ2ZS12MiAtLWFkdmVydGlzZS1jYXBhYmlsaXRpZXMgPm91dCAmJgogCWdyZXAgLWEgcmVmLWluLXdhbnQgb3V0CiAnCiAKQEAgLTcwLDU3ICs3Myw2MyBAQAogCTAwMDAKIAlFT0YKIAotCXRlc3RfbXVzdF9mYWlsIGdpdCBzZXJ2ZSAtLXN0YXRlbGVzcy1ycGMgMj5vdXQgPGluICYmCisJdGVzdF9tdXN0X2ZhaWwgdGVzdC10b29sIHNlcnZlLXYyIC0tc3RhdGVsZXNzLXJwYyAyPm91dCA8aW4gJiYKIAlncmVwICJ1bmtub3duIHJlZiIgb3V0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Jhc2ljIHdhbnQtcmVmJyAnCisJb2lkPSQoZ2l0IHJldi1wYXJzZSBmKSAmJgogCWNhdCA+ZXhwZWN0ZWRfcmVmcyA8PC1FT0YgJiYKLQkkKGdpdCByZXYtcGFyc2UgZikgcmVmcy9oZWFkcy9tYXN0ZXIKKwkkb2lkIHJlZnMvaGVhZHMvbWFzdGVyCiAJRU9GCi0JZ2l0IHJldi1wYXJzZSBmIHwgc29ydCA+ZXhwZWN0ZWRfY29tbWl0cyAmJgorCWdpdCByZXYtcGFyc2UgZiA+ZXhwZWN0ZWRfY29tbWl0cyAmJgogCisJb2lkPSQoZ2l0IHJldi1wYXJzZSBhKSAmJgogCXRlc3QtdG9vbCBwa3QtbGluZSBwYWNrID5pbiA8PC1FT0YgJiYKIAljb21tYW5kPWZldGNoCiAJMDAwMQogCW5vLXByb2dyZXNzCiAJd2FudC1yZWYgcmVmcy9oZWFkcy9tYXN0ZXIKLQloYXZlICQoZ2l0IHJldi1wYXJzZSBhKQorCWhhdmUgJG9pZAogCWRvbmUKIAkwMDAwCiAJRU9GCiAKLQlnaXQgc2VydmUgLS1zdGF0ZWxlc3MtcnBjID5vdXQgPGluICYmCisJdGVzdC10b29sIHNlcnZlLXYyIC0tc3RhdGVsZXNzLXJwYyA+b3V0IDxpbiAmJgogCWNoZWNrX291dHB1dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtdWx0aXBsZSB3YW50LXJlZiBsaW5lcycgJworCW9pZF9jPSQoZ2l0IHJldi1wYXJzZSBjKSAmJgorCW9pZF9kPSQoZ2l0IHJldi1wYXJzZSBkKSAmJgogCWNhdCA+ZXhwZWN0ZWRfcmVmcyA8PC1FT0YgJiYKLQkkKGdpdCByZXYtcGFyc2UgYykgcmVmcy9oZWFkcy9vL2ZvbwotCSQoZ2l0IHJldi1wYXJzZSBkKSByZWZzL2hlYWRzL28vYmFyCisJJG9pZF9jIHJlZnMvaGVhZHMvby9mb28KKwkkb2lkX2QgcmVmcy9oZWFkcy9vL2JhcgogCUVPRgotCWdpdCByZXYtcGFyc2UgYyBkIHwgc29ydCA+ZXhwZWN0ZWRfY29tbWl0cyAmJgorCWdpdCByZXYtcGFyc2UgYyBkID5leHBlY3RlZF9jb21taXRzICYmCiAKKwlvaWQ9JChnaXQgcmV2LXBhcnNlIGIpICYmCiAJdGVzdC10b29sIHBrdC1saW5lIHBhY2sgPmluIDw8LUVPRiAmJgogCWNvbW1hbmQ9ZmV0Y2gKIAkwMDAxCiAJbm8tcHJvZ3Jlc3MKIAl3YW50LXJlZiByZWZzL2hlYWRzL28vZm9vCiAJd2FudC1yZWYgcmVmcy9oZWFkcy9vL2JhcgotCWhhdmUgJChnaXQgcmV2LXBhcnNlIGIpCisJaGF2ZSAkb2lkCiAJZG9uZQogCTAwMDAKIAlFT0YKIAotCWdpdCBzZXJ2ZSAtLXN0YXRlbGVzcy1ycGMgPm91dCA8aW4gJiYKKwl0ZXN0LXRvb2wgc2VydmUtdjIgLS1zdGF0ZWxlc3MtcnBjID5vdXQgPGluICYmCiAJY2hlY2tfb3V0cHV0CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21peCB3YW50IGFuZCB3YW50LXJlZicgJworCW9pZD0kKGdpdCByZXYtcGFyc2UgZikgJiYKIAljYXQgPmV4cGVjdGVkX3JlZnMgPDwtRU9GICYmCi0JJChnaXQgcmV2LXBhcnNlIGYpIHJlZnMvaGVhZHMvbWFzdGVyCisJJG9pZCByZWZzL2hlYWRzL21hc3RlcgogCUVPRgotCWdpdCByZXYtcGFyc2UgZSBmIHwgc29ydCA+ZXhwZWN0ZWRfY29tbWl0cyAmJgorCWdpdCByZXYtcGFyc2UgZSBmID5leHBlY3RlZF9jb21taXRzICYmCiAKIAl0ZXN0LXRvb2wgcGt0LWxpbmUgcGFjayA+aW4gPDwtRU9GICYmCiAJY29tbWFuZD1mZXRjaApAQCAtMTMzLDMwICsxNDIsMTQ5IEBACiAJMDAwMAogCUVPRgogCi0JZ2l0IHNlcnZlIC0tc3RhdGVsZXNzLXJwYyA+b3V0IDxpbiAmJgorCXRlc3QtdG9vbCBzZXJ2ZS12MiAtLXN0YXRlbGVzcy1ycGMgPm91dCA8aW4gJiYKIAljaGVja19vdXRwdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnd2FudC1yZWYgd2l0aCByZWYgd2UgYWxyZWFkeSBoYXZlIGNvbW1pdCBmb3InICcKKwlvaWQ9JChnaXQgcmV2LXBhcnNlIGMpICYmCiAJY2F0ID5leHBlY3RlZF9yZWZzIDw8LUVPRiAmJgotCSQoZ2l0IHJldi1wYXJzZSBjKSByZWZzL2hlYWRzL28vZm9vCisJJG9pZCByZWZzL2hlYWRzL28vZm9vCiAJRU9GCiAJPmV4cGVjdGVkX2NvbW1pdHMgJiYKIAorCW9pZD0kKGdpdCByZXYtcGFyc2UgYykgJiYKIAl0ZXN0LXRvb2wgcGt0LWxpbmUgcGFjayA+aW4gPDwtRU9GICYmCiAJY29tbWFuZD1mZXRjaAogCTAwMDEKIAluby1wcm9ncmVzcwogCXdhbnQtcmVmIHJlZnMvaGVhZHMvby9mb28KLQloYXZlICQoZ2l0IHJldi1wYXJzZSBjKQorCWhhdmUgJG9pZAogCWRvbmUKIAkwMDAwCiAJRU9GCiAKLQlnaXQgc2VydmUgLS1zdGF0ZWxlc3MtcnBjID5vdXQgPGluICYmCisJdGVzdC10b29sIHNlcnZlLXYyIC0tc3RhdGVsZXNzLXJwYyA+b3V0IDxpbiAmJgogCWNoZWNrX291dHB1dAogJwogCitSRVBPPSIkKHB3ZCkvcmVwbyIKK0xPQ0FMX1BSSVNUSU5FPSIkKHB3ZCkvbG9jYWxfcHJpc3RpbmUiCisKKyMgJFJFUE8KKyMgYyhvL2ZvbykgZChvL2JhcikKKyMgICAgICAgIFwgLworIyAgICAgICAgIGIgICBlKGJheikgIGYobWFzdGVyKQorIyAgICAgICAgICBcX18gIHwgIF9fLworIyAgICAgICAgICAgICBcIHwgLworIyAgICAgICAgICAgICAgIGEKKyMKKyMgJExPQ0FMX1BSSVNUSU5FCisjCQlzMzIoc2lkZSkKKyMJCXwKKyMJCS4KKyMJCS4KKyMJCXwKKyMJCWEobWFzdGVyKQordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgcmVwb3MgZm9yIGZldGNoaW5nIHdpdGggcmVmLWluLXdhbnQgdGVzdHMnICcKKwkoCisJCWdpdCBpbml0ICIkUkVQTyIgJiYKKwkJY2QgIiRSRVBPIiAmJgorCQl0ZXN0X2NvbW1pdCBhICYmCisKKwkJIyBMb2NhbCByZXBvIHdpdGggbWFueSBjb21taXRzIChzbyB0aGF0IG5lZ290aWF0aW9uIHdpbGwgdGFrZQorCQkjIG1vcmUgdGhhbiAxIHJlcXVlc3QvcmVzcG9uc2UgcGFpcikKKwkJcm0gLXJmICIkTE9DQUxfUFJJU1RJTkUiICYmCisJCWdpdCBjbG9uZSAiZmlsZTovLyRSRVBPIiAiJExPQ0FMX1BSSVNUSU5FIiAmJgorCQljZCAiJExPQ0FMX1BSSVNUSU5FIiAmJgorCQlnaXQgY2hlY2tvdXQgLWIgc2lkZSAmJgorCQl0ZXN0X2NvbW1pdF9idWxrIC0taWQ9cyAzMyAmJgorCisJCSMgQWRkIG5vdmVsIGNvbW1pdHMgdG8gdXBzdHJlYW0KKwkJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgorCQljZCAiJFJFUE8iICYmCisJCWdpdCBjaGVja291dCAtYiBvL2ZvbyAmJgorCQl0ZXN0X2NvbW1pdCBiICYmCisJCXRlc3RfY29tbWl0IGMgJiYKKwkJZ2l0IGNoZWNrb3V0IC1iIG8vYmFyIGIgJiYKKwkJdGVzdF9jb21taXQgZCAmJgorCQlnaXQgY2hlY2tvdXQgLWIgYmF6IGEgJiYKKwkJdGVzdF9jb21taXQgZSAmJgorCQlnaXQgY2hlY2tvdXQgbWFzdGVyICYmCisJCXRlc3RfY29tbWl0IGYKKwkpICYmCisJZ2l0IC1DICIkUkVQTyIgY29uZmlnIHVwbG9hZHBhY2suYWxsb3dSZWZJbldhbnQgdHJ1ZSAmJgorCWdpdCAtQyAiJExPQ0FMX1BSSVNUSU5FIiBjb25maWcgcHJvdG9jb2wudmVyc2lvbiAyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoaW5nIHdpdGggZXhhY3QgT0lEJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBsb2ciICYmCisKKwlybSAtcmYgbG9jYWwgJiYKKwljcCAtciAiJExPQ0FMX1BSSVNUSU5FIiBsb2NhbCAmJgorCW9pZD0kKGdpdCAtQyAiJFJFUE8iIHJldi1wYXJzZSBkKSAmJgorCUdJVF9UUkFDRV9QQUNLRVQ9IiQocHdkKS9sb2ciIGdpdCAtQyBsb2NhbCBmZXRjaCBvcmlnaW4gXAorCQkiJG9pZCI6cmVmcy9oZWFkcy9hY3R1YWwgJiYKKworCWdpdCAtQyAiJFJFUE8iIHJldi1wYXJzZSAiZCIgPmV4cGVjdGVkICYmCisJZ2l0IC1DIGxvY2FsIHJldi1wYXJzZSByZWZzL2hlYWRzL2FjdHVhbCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsICYmCisJZ3JlcCAid2FudCAkb2lkIiBsb2cKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2hpbmcgbXVsdGlwbGUgcmVmcycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgbG9nIiAmJgorCisJcm0gLXJmIGxvY2FsICYmCisJY3AgLXIgIiRMT0NBTF9QUklTVElORSIgbG9jYWwgJiYKKwlHSVRfVFJBQ0VfUEFDS0VUPSIkKHB3ZCkvbG9nIiBnaXQgLUMgbG9jYWwgZmV0Y2ggb3JpZ2luIG1hc3RlciBiYXogJiYKKworCWdpdCAtQyAiJFJFUE8iIHJldi1wYXJzZSAibWFzdGVyIiAiYmF6IiA+ZXhwZWN0ZWQgJiYKKwlnaXQgLUMgbG9jYWwgcmV2LXBhcnNlIHJlZnMvcmVtb3Rlcy9vcmlnaW4vbWFzdGVyIHJlZnMvcmVtb3Rlcy9vcmlnaW4vYmF6ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwgJiYKKwlncmVwICJ3YW50LXJlZiByZWZzL2hlYWRzL21hc3RlciIgbG9nICYmCisJZ3JlcCAid2FudC1yZWYgcmVmcy9oZWFkcy9iYXoiIGxvZworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmZXRjaGluZyByZWYgYW5kIGV4YWN0IE9JRCcgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgbG9nIiAmJgorCisJcm0gLXJmIGxvY2FsICYmCisJY3AgLXIgIiRMT0NBTF9QUklTVElORSIgbG9jYWwgJiYKKwlvaWQ9JChnaXQgLUMgIiRSRVBPIiByZXYtcGFyc2UgYikgJiYKKwlHSVRfVFJBQ0VfUEFDS0VUPSIkKHB3ZCkvbG9nIiBnaXQgLUMgbG9jYWwgZmV0Y2ggb3JpZ2luIFwKKwkJbWFzdGVyICIkb2lkIjpyZWZzL2hlYWRzL2FjdHVhbCAmJgorCisJZ2l0IC1DICIkUkVQTyIgcmV2LXBhcnNlICJtYXN0ZXIiICJiIiA+ZXhwZWN0ZWQgJiYKKwlnaXQgLUMgbG9jYWwgcmV2LXBhcnNlIHJlZnMvcmVtb3Rlcy9vcmlnaW4vbWFzdGVyIHJlZnMvaGVhZHMvYWN0dWFsID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwgJiYKKwlncmVwICJ3YW50ICRvaWQiIGxvZyAmJgorCWdyZXAgIndhbnQtcmVmIHJlZnMvaGVhZHMvbWFzdGVyIiBsb2cKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2hpbmcgd2l0aCB3aWxkY2FyZCB0aGF0IGRvZXMgbm90IG1hdGNoIGFueSByZWZzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBsb2ciICYmCisKKwlybSAtcmYgbG9jYWwgJiYKKwljcCAtciAiJExPQ0FMX1BSSVNUSU5FIiBsb2NhbCAmJgorCWdpdCAtQyBsb2NhbCBmZXRjaCBvcmlnaW4gcmVmcy9oZWFkcy9ub25lKjpyZWZzL2hlYWRzLyogPm91dCAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2hpbmcgd2l0aCB3aWxkY2FyZCB0aGF0IG1hdGNoZXMgbXVsdGlwbGUgcmVmcycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgbG9nIiAmJgorCisJcm0gLXJmIGxvY2FsICYmCisJY3AgLXIgIiRMT0NBTF9QUklTVElORSIgbG9jYWwgJiYKKwlHSVRfVFJBQ0VfUEFDS0VUPSIkKHB3ZCkvbG9nIiBnaXQgLUMgbG9jYWwgZmV0Y2ggb3JpZ2luIHJlZnMvaGVhZHMvbyo6cmVmcy9oZWFkcy9vKiAmJgorCisJZ2l0IC1DICIkUkVQTyIgcmV2LXBhcnNlICJvL2ZvbyIgIm8vYmFyIiA+ZXhwZWN0ZWQgJiYKKwlnaXQgLUMgbG9jYWwgcmV2LXBhcnNlICJvL2ZvbyIgIm8vYmFyIiA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsICYmCisJZ3JlcCAid2FudC1yZWYgcmVmcy9oZWFkcy9vL2ZvbyIgbG9nICYmCisJZ3JlcCAid2FudC1yZWYgcmVmcy9oZWFkcy9vL2JhciIgbG9nCisnCisKIC4gIiRURVNUX0RJUkVDVE9SWSIvbGliLWh0dHBkLnNoCiBzdGFydF9odHRwZAogCkBAIC0xNzMsMTAgKzMwMSwxMSBAQAogCiAJCSMgTG9jYWwgcmVwbyB3aXRoIG1hbnkgY29tbWl0cyAoc28gdGhhdCBuZWdvdGlhdGlvbiB3aWxsIHRha2UKIAkJIyBtb3JlIHRoYW4gMSByZXF1ZXN0L3Jlc3BvbnNlIHBhaXIpCisJCXJtIC1yZiAiJExPQ0FMX1BSSVNUSU5FIiAmJgogCQlnaXQgY2xvbmUgImh0dHA6Ly8xMjcuMC4wLjE6JExJQl9IVFRQRF9QT1JUL3NtYXJ0L3JlcG8iICIkTE9DQUxfUFJJU1RJTkUiICYmCiAJCWNkICIkTE9DQUxfUFJJU1RJTkUiICYmCiAJCWdpdCBjaGVja291dCAtYiBzaWRlICYmCi0JCWZvciBpIGluICQodGVzdF9zZXEgMSAzMyk7IGRvIHRlc3RfY29tbWl0IHMkaTsgZG9uZSAmJgorCQl0ZXN0X2NvbW1pdF9idWxrIC0taWQ9cyAzMyAmJgogCiAJCSMgQWRkIG5vdmVsIGNvbW1pdHMgdG8gdXBzdHJlYW0KIAkJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgpAQCAtMTg1LDcgKzMxNCw3IEBACiAJCXRlc3RfY29tbWl0IG0zICYmCiAJCWdpdCB0YWcgLWQgbTIgbTMKIAkpICYmCi0JZ2l0IC1DICIkTE9DQUxfUFJJU1RJTkUiIHJlbW90ZSBzZXQtdXJsIG9yaWdpbiAiaHR0cDovLzEyNy4wLjAuMTokTElCX0hUVFBEX1BPUlQvb25lX3RpbWVfc2VkL3JlcG8iICYmCisJZ2l0IC1DICIkTE9DQUxfUFJJU1RJTkUiIHJlbW90ZSBzZXQtdXJsIG9yaWdpbiAiaHR0cDovLzEyNy4wLjAuMTokTElCX0hUVFBEX1BPUlQvb25lX3RpbWVfcGVybC9yZXBvIiAmJgogCWdpdCAtQyAiJExPQ0FMX1BSSVNUSU5FIiBjb25maWcgcHJvdG9jb2wudmVyc2lvbiAyCiAnCiAKQEAgLTE5NiwyNiArMzI1LDI1IEBACiAJIyByZXBvc2l0b3J5IGFwcGVhcnMgdG8gY2hhbmdlIGR1cmluZyBuZWdvdGlhdGlvbiwgZm9yIGV4YW1wbGUsIHdoZW4KIAkjIGRpZmZlcmVudCBzZXJ2ZXJzIGluIGEgbG9hZC1iYWxhbmNpbmcgYXJyYW5nZW1lbnQgc2VydmUgKHN0YXRlbGVzcykKIAkjIFJQQ3MgZHVyaW5nIGEgc2luZ2xlIG5lZ290aWF0aW9uLgotCXByaW50ZiAicy8lcy8lcy8iIFwKLQkgICAgICAgJChnaXQgLUMgIiRSRVBPIiByZXYtcGFyc2UgJDEgfCB0ciAtZCAiXG4iKSBcCi0JICAgICAgICQoZ2l0IC1DICIkUkVQTyIgcmV2LXBhcnNlICQyIHwgdHIgLWQgIlxuIikgXAotCSAgICAgICA+IiRIVFRQRF9ST09UX1BBVEgvb25lLXRpbWUtc2VkIgorCW9pZDE9JChnaXQgLUMgIiRSRVBPIiByZXYtcGFyc2UgJDEpICYmCisJb2lkMj0kKGdpdCAtQyAiJFJFUE8iIHJldi1wYXJzZSAkMikgJiYKKwllY2hvICJzLyRvaWQxLyRvaWQyLyIgPiIkSFRUUERfUk9PVF9QQVRIL29uZS10aW1lLXBlcmwiCiB9CiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NlcnZlciBpcyBpbml0aWFsbHkgYWhlYWQgLSBubyByZWYgaW4gd2FudCcgJwogCWdpdCAtQyAiJFJFUE8iIGNvbmZpZyB1cGxvYWRwYWNrLmFsbG93UmVmSW5XYW50IGZhbHNlICYmCiAJcm0gLXJmIGxvY2FsICYmCiAJY3AgLXIgIiRMT0NBTF9QUklTVElORSIgbG9jYWwgJiYKLQlpbmNvbnNpc3RlbmN5IG1hc3RlciAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwICYmCisJaW5jb25zaXN0ZW5jeSBtYXN0ZXIgJCh0ZXN0X29pZCBudW1lcmljKSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyBsb2NhbCBmZXRjaCAyPmVyciAmJgotCWdyZXAgIkVSUiB1cGxvYWQtcGFjazogbm90IG91ciByZWYiIGVycgorCXRlc3RfaTE4bmdyZXAgImZhdGFsOiByZW1vdGUgZXJyb3I6IHVwbG9hZC1wYWNrOiBub3Qgb3VyIHJlZiIgZXJyCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NlcnZlciBpcyBpbml0aWFsbHkgYWhlYWQgLSByZWYgaW4gd2FudCcgJwogCWdpdCAtQyAiJFJFUE8iIGNvbmZpZyB1cGxvYWRwYWNrLmFsbG93UmVmSW5XYW50IHRydWUgJiYKIAlybSAtcmYgbG9jYWwgJiYKIAljcCAtciAiJExPQ0FMX1BSSVNUSU5FIiBsb2NhbCAmJgotCWluY29uc2lzdGVuY3kgbWFzdGVyIDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAgJiYKKwlpbmNvbnNpc3RlbmN5IG1hc3RlciAkKHRlc3Rfb2lkIG51bWVyaWMpICYmCiAJZ2l0IC1DIGxvY2FsIGZldGNoICYmCiAKIAlnaXQgLUMgIiRSRVBPIiByZXYtcGFyc2UgLS12ZXJpZnkgbWFzdGVyID5leHBlY3RlZCAmJgpAQCAtMjUxLDEyNyArMzc5LDEzIEBACiAJZ2l0IC1DICIkUkVQTyIgY29uZmlnIHVwbG9hZHBhY2suYWxsb3dSZWZJbldhbnQgdHJ1ZSAmJgogCXJtIC1yZiBsb2NhbCAmJgogCWNwIC1yICIkTE9DQUxfUFJJU1RJTkUiIGxvY2FsICYmCi0JZWNobyAicy9tYXN0ZXIvcmFzdGVyLyIgPiIkSFRUUERfUk9PVF9QQVRIL29uZS10aW1lLXNlZCIgJiYKKwllY2hvICJzL21hc3Rlci9yYXN0ZXIvIiA+IiRIVFRQRF9ST09UX1BBVEgvb25lLXRpbWUtcGVybCIgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgLUMgbG9jYWwgZmV0Y2ggMj5lcnIgJiYKIAotCWdyZXAgIkVSUiB1bmtub3duIHJlZiByZWZzL2hlYWRzL3Jhc3RlciIgZXJyCisJdGVzdF9pMThuZ3JlcCAiZmF0YWw6IHJlbW90ZSBlcnJvcjogdW5rbm93biByZWYgcmVmcy9oZWFkcy9yYXN0ZXIiIGVycgogJwogCi1zdG9wX2h0dHBkCi0KLVJFUE89IiQocHdkKS9yZXBvIgotTE9DQUxfUFJJU1RJTkU9IiQocHdkKS9sb2NhbF9wcmlzdGluZSIKLQotIyAkUkVQTwotIyBjKG8vZm9vKSBkKG8vYmFyKQotIyAgICAgICAgXCAvCi0jICAgICAgICAgYiAgIGUoYmF6KSAgZihtYXN0ZXIpCi0jICAgICAgICAgIFxfXyAgfCAgX18vCi0jICAgICAgICAgICAgIFwgfCAvCi0jICAgICAgICAgICAgICAgYQotIwotIyAkTE9DQUxfUFJJU1RJTkUKLSMJCXMzMihzaWRlKQotIwkJfAotIwkJLgotIwkJLgotIwkJfAotIwkJYShtYXN0ZXIpCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCByZXBvcyBmb3IgZmV0Y2hpbmcgd2l0aCByZWYtaW4td2FudCB0ZXN0cycgJwotCSgKLQkJZ2l0IGluaXQgIiRSRVBPIiAmJgotCQljZCAiJFJFUE8iICYmCi0JCXRlc3RfY29tbWl0IGEgJiYKLQotCQkjIExvY2FsIHJlcG8gd2l0aCBtYW55IGNvbW1pdHMgKHNvIHRoYXQgbmVnb3RpYXRpb24gd2lsbCB0YWtlCi0JCSMgbW9yZSB0aGFuIDEgcmVxdWVzdC9yZXNwb25zZSBwYWlyKQotCQlybSAtcmYgIiRMT0NBTF9QUklTVElORSIgJiYKLQkJZ2l0IGNsb25lICJmaWxlOi8vJFJFUE8iICIkTE9DQUxfUFJJU1RJTkUiICYmCi0JCWNkICIkTE9DQUxfUFJJU1RJTkUiICYmCi0JCWdpdCBjaGVja291dCAtYiBzaWRlICYmCi0JCWZvciBpIGluICQodGVzdF9zZXEgMSAzMyk7IGRvIHRlc3RfY29tbWl0IHMkaTsgZG9uZSAmJgotCi0JCSMgQWRkIG5vdmVsIGNvbW1pdHMgdG8gdXBzdHJlYW0KLQkJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgotCQljZCAiJFJFUE8iICYmCi0JCWdpdCBjaGVja291dCAtYiBvL2ZvbyAmJgotCQl0ZXN0X2NvbW1pdCBiICYmCi0JCXRlc3RfY29tbWl0IGMgJiYKLQkJZ2l0IGNoZWNrb3V0IC1iIG8vYmFyIGIgJiYKLQkJdGVzdF9jb21taXQgZCAmJgotCQlnaXQgY2hlY2tvdXQgLWIgYmF6IGEgJiYKLQkJdGVzdF9jb21taXQgZSAmJgotCQlnaXQgY2hlY2tvdXQgbWFzdGVyICYmCi0JCXRlc3RfY29tbWl0IGYKLQkpICYmCi0JZ2l0IC1DICIkUkVQTyIgY29uZmlnIHVwbG9hZHBhY2suYWxsb3dSZWZJbldhbnQgdHJ1ZSAmJgotCWdpdCAtQyAiJExPQ0FMX1BSSVNUSU5FIiBjb25maWcgcHJvdG9jb2wudmVyc2lvbiAyCi0nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ZldGNoaW5nIHdpdGggZXhhY3QgT0lEJyAnCi0JdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBsb2ciICYmCi0KLQlybSAtcmYgbG9jYWwgJiYKLQljcCAtciAiJExPQ0FMX1BSSVNUSU5FIiBsb2NhbCAmJgotCUdJVF9UUkFDRV9QQUNLRVQ9IiQocHdkKS9sb2ciIGdpdCAtQyBsb2NhbCBmZXRjaCBvcmlnaW4gXAotCQkkKGdpdCAtQyAiJFJFUE8iIHJldi1wYXJzZSBkKTpyZWZzL2hlYWRzL2FjdHVhbCAmJgotCi0JZ2l0IC1DICIkUkVQTyIgcmV2LXBhcnNlICJkIiA+ZXhwZWN0ZWQgJiYKLQlnaXQgLUMgbG9jYWwgcmV2LXBhcnNlIHJlZnMvaGVhZHMvYWN0dWFsID5hY3R1YWwgJiYKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwgJiYKLQlncmVwICJ3YW50ICQoZ2l0IC1DICIkUkVQTyIgcmV2LXBhcnNlIGQpIiBsb2cKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2hpbmcgbXVsdGlwbGUgcmVmcycgJwotCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgbG9nIiAmJgotCi0Jcm0gLXJmIGxvY2FsICYmCi0JY3AgLXIgIiRMT0NBTF9QUklTVElORSIgbG9jYWwgJiYKLQlHSVRfVFJBQ0VfUEFDS0VUPSIkKHB3ZCkvbG9nIiBnaXQgLUMgbG9jYWwgZmV0Y2ggb3JpZ2luIG1hc3RlciBiYXogJiYKLQotCWdpdCAtQyAiJFJFUE8iIHJldi1wYXJzZSAibWFzdGVyIiAiYmF6IiA+ZXhwZWN0ZWQgJiYKLQlnaXQgLUMgbG9jYWwgcmV2LXBhcnNlIHJlZnMvcmVtb3Rlcy9vcmlnaW4vbWFzdGVyIHJlZnMvcmVtb3Rlcy9vcmlnaW4vYmF6ID5hY3R1YWwgJiYKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwgJiYKLQlncmVwICJ3YW50LXJlZiByZWZzL2hlYWRzL21hc3RlciIgbG9nICYmCi0JZ3JlcCAid2FudC1yZWYgcmVmcy9oZWFkcy9iYXoiIGxvZwotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdmZXRjaGluZyByZWYgYW5kIGV4YWN0IE9JRCcgJwotCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgbG9nIiAmJgotCi0Jcm0gLXJmIGxvY2FsICYmCi0JY3AgLXIgIiRMT0NBTF9QUklTVElORSIgbG9jYWwgJiYKLQlHSVRfVFJBQ0VfUEFDS0VUPSIkKHB3ZCkvbG9nIiBnaXQgLUMgbG9jYWwgZmV0Y2ggb3JpZ2luIFwKLQkJbWFzdGVyICQoZ2l0IC1DICIkUkVQTyIgcmV2LXBhcnNlIGIpOnJlZnMvaGVhZHMvYWN0dWFsICYmCi0KLQlnaXQgLUMgIiRSRVBPIiByZXYtcGFyc2UgIm1hc3RlciIgImIiID5leHBlY3RlZCAmJgotCWdpdCAtQyBsb2NhbCByZXYtcGFyc2UgcmVmcy9yZW1vdGVzL29yaWdpbi9tYXN0ZXIgcmVmcy9oZWFkcy9hY3R1YWwgPmFjdHVhbCAmJgotCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbCAmJgotCWdyZXAgIndhbnQgJChnaXQgLUMgIiRSRVBPIiByZXYtcGFyc2UgYikiIGxvZyAmJgotCWdyZXAgIndhbnQtcmVmIHJlZnMvaGVhZHMvbWFzdGVyIiBsb2cKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2hpbmcgd2l0aCB3aWxkY2FyZCB0aGF0IGRvZXMgbm90IG1hdGNoIGFueSByZWZzJyAnCi0JdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBsb2ciICYmCi0KLQlybSAtcmYgbG9jYWwgJiYKLQljcCAtciAiJExPQ0FMX1BSSVNUSU5FIiBsb2NhbCAmJgotCWdpdCAtQyBsb2NhbCBmZXRjaCBvcmlnaW4gcmVmcy9oZWFkcy9ub25lKjpyZWZzL2hlYWRzLyogPm91dCAmJgotCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXQKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2hpbmcgd2l0aCB3aWxkY2FyZCB0aGF0IG1hdGNoZXMgbXVsdGlwbGUgcmVmcycgJwotCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgbG9nIiAmJgotCi0Jcm0gLXJmIGxvY2FsICYmCi0JY3AgLXIgIiRMT0NBTF9QUklTVElORSIgbG9jYWwgJiYKLQlHSVRfVFJBQ0VfUEFDS0VUPSIkKHB3ZCkvbG9nIiBnaXQgLUMgbG9jYWwgZmV0Y2ggb3JpZ2luIHJlZnMvaGVhZHMvbyo6cmVmcy9oZWFkcy9vKiAmJgotCi0JZ2l0IC1DICIkUkVQTyIgcmV2LXBhcnNlICJvL2ZvbyIgIm8vYmFyIiA+ZXhwZWN0ZWQgJiYKLQlnaXQgLUMgbG9jYWwgcmV2LXBhcnNlICJvL2ZvbyIgIm8vYmFyIiA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsICYmCi0JZ3JlcCAid2FudC1yZWYgcmVmcy9oZWFkcy9vL2ZvbyIgbG9nICYmCi0JZ3JlcCAid2FudC1yZWYgcmVmcy9oZWFkcy9vL2JhciIgbG9nCi0nCisjIERPIE5PVCBhZGQgbm9uLWh0dHBkLXNwZWNpZmljIHRlc3RzIGhlcmUsIGJlY2F1c2UgdGhlIGxhc3QgcGFydCBvZiB0aGlzCisjIHRlc3Qgc2NyaXB0IGlzIG9ubHkgZXhlY3V0ZWQgd2hlbiBodHRwZCBpcyBhdmFpbGFibGUgYW5kIGVuYWJsZWQuCiAKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NTgwMS1yZW1vdGUtaGVscGVycy5zaCBiL3QvdDU4MDEtcmVtb3RlLWhlbHBlcnMuc2gKaW5kZXggYWFhYTcyMi4uMTIxZTVjNiAxMDA3NTUKLS0tIGEvdC90NTgwMS1yZW1vdGUtaGVscGVycy5zaAorKysgYi90L3Q1ODAxLXJlbW90ZS1oZWxwZXJzLnNoCkBAIC04LDYgKzgsOCBAQAogLiAuL3Rlc3QtbGliLnNoCiAuICIkVEVTVF9ESVJFQ1RPUlkiL2xpYi1ncGcuc2gKIAorUEFUSD0iJFRFU1RfRElSRUNUT1JZL3Q1ODAxOiRQQVRIIgorCiBjb21wYXJlX3JlZnMoKSB7CiAJZ2l0IC0tZ2l0LWRpcj0iJDEvLmdpdCIgcmV2LXBhcnNlIC0tdmVyaWZ5ICQyID5leHBlY3QgJiYKIAlnaXQgLS1naXQtZGlyPSIkMy8uZ2l0IiByZXYtcGFyc2UgLS12ZXJpZnkgJDQgPmFjdHVhbCAmJgpAQCAtMTI0LDcgKzEyNiw3IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Nsb25pbmcgd2l0aG91dCByZWZzcGVjJyAnCi0JR0lUX1JFTU9URV9URVNUR0lUX1JFRlNQRUM9IiIgXAorCUdJVF9SRU1PVEVfVEVTVEdJVF9OT1JFRlNQRUM9MSBcCiAJZ2l0IGNsb25lICJ0ZXN0Z2l0Ojoke1BXRH0vc2VydmVyIiBsb2NhbDIgMj5lcnJvciAmJgogCXRlc3RfaTE4bmdyZXAgInRoaXMgcmVtb3RlIGhlbHBlciBzaG91bGQgaW1wbGVtZW50IHJlZnNwZWMgY2FwYWJpbGl0eSIgZXJyb3IgJiYKIAljb21wYXJlX3JlZnMgbG9jYWwyIEhFQUQgc2VydmVyIEhFQUQKQEAgLTEzMyw3ICsxMzUsNyBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncHVsbGluZyB3aXRob3V0IHJlZnNwZWNzJyAnCiAJKGNkIGxvY2FsMiAmJgogCWdpdCByZXNldCAtLWhhcmQgJiYKLQlHSVRfUkVNT1RFX1RFU1RHSVRfUkVGU1BFQz0iIiBnaXQgcHVsbCAyPi4uL2Vycm9yKSAmJgorCUdJVF9SRU1PVEVfVEVTVEdJVF9OT1JFRlNQRUM9MSBnaXQgcHVsbCAyPi4uL2Vycm9yKSAmJgogCXRlc3RfaTE4bmdyZXAgInRoaXMgcmVtb3RlIGhlbHBlciBzaG91bGQgaW1wbGVtZW50IHJlZnNwZWMgY2FwYWJpbGl0eSIgZXJyb3IgJiYKIAljb21wYXJlX3JlZnMgbG9jYWwyIEhFQUQgc2VydmVyIEhFQUQKICcKQEAgLTE0Myw4ICsxNDUsOCBAQAogCShjZCBsb2NhbDIgJiYKIAllY2hvIGNvbnRlbnQgPj5maWxlICYmCiAJZ2l0IGNvbW1pdCAtYSAtbSB0ZW4gJiYKLQlHSVRfUkVNT1RFX1RFU1RHSVRfUkVGU1BFQz0iIiAmJgotCWV4cG9ydCBHSVRfUkVNT1RFX1RFU1RHSVRfUkVGU1BFQyAmJgorCUdJVF9SRU1PVEVfVEVTVEdJVF9OT1JFRlNQRUM9MSAmJgorCWV4cG9ydCBHSVRfUkVNT1RFX1RFU1RHSVRfTk9SRUZTUEVDICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHB1c2ggMj4uLi9lcnJvcikgJiYKIAl0ZXN0X2kxOG5ncmVwICJyZW1vdGUtaGVscGVyIGRvZXNuLnQgc3VwcG9ydCBwdXNoOyByZWZzcGVjIG5lZWRlZCIgZXJyb3IKICcKQEAgLTI0NSw3ICsyNDcsNiBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncHJvcGVyIGZhaWx1cmUgY2hlY2tzIGZvciBmZXRjaGluZycgJwogCShjZCBsb2NhbCAmJgogCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfUkVNT1RFX1RFU1RHSVRfRkFJTFVSRT0xIGdpdCBmZXRjaCAyPmVycm9yICYmCi0JY2F0IGVycm9yICYmCiAJdGVzdF9pMThuZ3JlcCAtcSAiZXJyb3Igd2hpbGUgcnVubmluZyBmYXN0LWltcG9ydCIgZXJyb3IKIAkpCiAnCkBAIC0zMDEsNCArMzAyLDE0IEBACiAJY29tcGFyZV9yZWZzIHNlcnZlciBIRUFEIGxvY2FsIEZFVENIX0hFQUQKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmV0Y2ggdGFnJyAnCisJKGNkIHNlcnZlciAmJgorCSBnaXQgdGFnIHYxLjAKKwkpICYmCisJKGNkIGxvY2FsICYmCisJIGdpdCBmZXRjaAorCSkgJiYKKwljb21wYXJlX3JlZnMgbG9jYWwgdjEuMCBzZXJ2ZXIgdjEuMAorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL2dpdC1yZW1vdGUtdGVzdGdpdC5zaCBiL3QvdDU4MDEvZ2l0LXJlbW90ZS10ZXN0Z2l0CnNpbWlsYXJpdHkgaW5kZXggODQlCnJlbmFtZSBmcm9tIGdpdC1yZW1vdGUtdGVzdGdpdC5zaApyZW5hbWUgdG8gdC90NTgwMS9naXQtcmVtb3RlLXRlc3RnaXQKaW5kZXggNzUyYzc2My4uNmI5ZjBiNSAxMDA3NTUKLS0tIGEvZ2l0LXJlbW90ZS10ZXN0Z2l0LnNoCisrKyBiL3QvdDU4MDEvZ2l0LXJlbW90ZS10ZXN0Z2l0CkBAIC0xMSwxMyArMTEsMTUgQEAKIHVybD0kMgogCiBkaXI9IiRHSVRfRElSL3Rlc3RnaXQvJGFsaWFzIgotcHJlZml4PSJyZWZzL3Rlc3RnaXQvJGFsaWFzIgogCi1kZWZhdWx0X3JlZnNwZWM9InJlZnMvaGVhZHMvKjoke3ByZWZpeH0vaGVhZHMvKiIKK2hfcmVmc3BlYz0icmVmcy9oZWFkcy8qOnJlZnMvdGVzdGdpdC8kYWxpYXMvaGVhZHMvKiIKK3RfcmVmc3BlYz0icmVmcy90YWdzLyo6cmVmcy90ZXN0Z2l0LyRhbGlhcy90YWdzLyoiCiAKLXJlZnNwZWM9IiR7R0lUX1JFTU9URV9URVNUR0lUX1JFRlNQRUMtJGRlZmF1bHRfcmVmc3BlY30iCi0KLXRlc3QgLXogIiRyZWZzcGVjIiAmJiBwcmVmaXg9InJlZnMiCitpZiB0ZXN0IC1uICIkR0lUX1JFTU9URV9URVNUR0lUX05PUkVGU1BFQyIKK3RoZW4KKwloX3JlZnNwZWM9IiIKKwl0X3JlZnNwZWM9IiIKK2ZpCiAKIEdJVF9ESVI9IiR1cmwvLmdpdCIKIGV4cG9ydCBHSVRfRElSCkBAIC00MCw3ICs0Miw4IEBACiAJY2FwYWJpbGl0aWVzKQogCQllY2hvICdpbXBvcnQnCiAJCWVjaG8gJ2V4cG9ydCcKLQkJdGVzdCAtbiAiJHJlZnNwZWMiICYmIGVjaG8gInJlZnNwZWMgJHJlZnNwZWMiCisJCXRlc3QgLW4gIiRoX3JlZnNwZWMiICYmIGVjaG8gInJlZnNwZWMgJGhfcmVmc3BlYyIKKwkJdGVzdCAtbiAiJHRfcmVmc3BlYyIgJiYgZWNobyAicmVmc3BlYyAkdF9yZWZzcGVjIgogCQlpZiB0ZXN0IC1uICIkZ2l0bWFya3MiCiAJCXRoZW4KIAkJCWVjaG8gIippbXBvcnQtbWFya3MgJGdpdG1hcmtzIgpAQCAtNTIsNyArNTUsNyBAQAogCQllY2hvCiAJCTs7CiAJbGlzdCkKLQkJZ2l0IGZvci1lYWNoLXJlZiAtLWZvcm1hdD0nPyAlKHJlZm5hbWUpJyAncmVmcy9oZWFkcy8nCisJCWdpdCBmb3ItZWFjaC1yZWYgLS1mb3JtYXQ9Jz8gJShyZWZuYW1lKScgJ3JlZnMvaGVhZHMvJyAncmVmcy90YWdzLycKIAkJaGVhZD0kKGdpdCBzeW1ib2xpYy1yZWYgSEVBRCkKIAkJZWNobyAiQCRoZWFkIEhFQUQiCiAJCWVjaG8KQEAgLTgxLDEwICs4NCwxMSBAQAogCiAJCWVjaG8gImZlYXR1cmUgZG9uZSIKIAkJZ2l0IGZhc3QtZXhwb3J0IFwKKwkJCSR7aF9yZWZzcGVjOisiLS1yZWZzcGVjPSRoX3JlZnNwZWMifSBcCisJCQkke3RfcmVmc3BlYzorIi0tcmVmc3BlYz0kdF9yZWZzcGVjIn0gXAogCQkJJHt0ZXN0Z2l0bWFya3M6KyItLWltcG9ydC1tYXJrcz0kdGVzdGdpdG1hcmtzIn0gXAogCQkJJHt0ZXN0Z2l0bWFya3M6KyItLWV4cG9ydC1tYXJrcz0kdGVzdGdpdG1hcmtzIn0gXAotCQkJJHJlZnMgfAotCQlzZWQgLWUgInMjcmVmcy9oZWFkcy8jJHtwcmVmaXh9L2hlYWRzLyNnIgorCQkJJHJlZnMKIAkJZWNobyAiZG9uZSIKIAkJOzsKIAlleHBvcnQpCmRpZmYgLS1naXQgYS90L3Q1ODEyLXByb3RvLWRpc2FibGUtaHR0cC5zaCBiL3QvdDU4MTItcHJvdG8tZGlzYWJsZS1odHRwLnNoCmluZGV4IDg3Mjc4OGEuLmFmODc3MmYgMTAwNzU1Ci0tLSBhL3QvdDU4MTItcHJvdG8tZGlzYWJsZS1odHRwLnNoCisrKyBiL3QvdDU4MTItcHJvdG8tZGlzYWJsZS1odHRwLnNoCkBAIC0zNCw1ICszNCw0IEBACiAJCWNsb25lICIkSFRUUERfVVJML3NtYXJ0LXJlZGlyLXBlcm0vcmVwby5naXQiIHJlZGlyLmdpdAogJwogCi1zdG9wX2h0dHBkCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDYwMDAtcmV2LWxpc3QtbWlzYy5zaCBiL3QvdDYwMDAtcmV2LWxpc3QtbWlzYy5zaAppbmRleCAwNTA3OTk5Li4zZGMxYWQ4IDEwMDc1NQotLS0gYS90L3Q2MDAwLXJldi1saXN0LW1pc2Muc2gKKysrIGIvdC90NjAwMC1yZXYtbGlzdC1taXNjLnNoCkBAIC00OCw2ICs0OCwyNiBAQAogCSEgZ3JlcCBvbmUgb3V0cHV0CiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Jldi1saXN0IC0tb2JqZWN0cyAtLW5vLW9iamVjdC1uYW1lcyBoYXMgbm8gc3BhY2UvbmFtZXMnICcKKwlnaXQgcmV2LWxpc3QgLS1vYmplY3RzIC0tbm8tb2JqZWN0LW5hbWVzIEhFQUQgPm91dHB1dCAmJgorCSEgZ3JlcCB3YW50ZWRfZmlsZSBvdXRwdXQgJiYKKwkhIGdyZXAgdW53YW50ZWRfZmlsZSBvdXRwdXQgJiYKKwkhIGdyZXAgIiAiIG91dHB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXYtbGlzdCAtLW9iamVjdHMgLS1uby1vYmplY3QtbmFtZXMgd29ya3Mgd2l0aCBjYXQtZmlsZScgJworCWdpdCByZXYtbGlzdCAtLW9iamVjdHMgLS1uby1vYmplY3QtbmFtZXMgLS1hbGwgPmxpc3Qtb3V0cHV0ICYmCisJZ2l0IGNhdC1maWxlIC0tYmF0Y2gtY2hlY2sgPGxpc3Qtb3V0cHV0ID5jYXQtb3V0cHV0ICYmCisJISBncmVwIG1pc3NpbmcgY2F0LW91dHB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLW5vLW9iamVjdC1uYW1lcyBhbmQgLS1vYmplY3QtbmFtZXMgYXJlIGxhc3Qtb25lLXdpbnMnICcKKwlnaXQgcmV2LWxpc3QgLS1vYmplY3RzIC0tbm8tb2JqZWN0LW5hbWVzIC0tb2JqZWN0LW5hbWVzIC0tYWxsID5vdXRwdXQgJiYKKwlncmVwIHdhbnRlZF9maWxlIG91dHB1dCAmJgorCWdpdCByZXYtbGlzdCAtLW9iamVjdHMgLS1vYmplY3QtbmFtZXMgLS1uby1vYmplY3QtbmFtZXMgLS1hbGwgPm91dHB1dCAmJgorCSEgZ3JlcCB3YW50ZWRfZmlsZSBvdXRwdXQKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmV2LWxpc3QgQS4uQiBhbmQgcmV2LWxpc3QgXkEgQiBhcmUgdGhlIHNhbWUnICcKIAlnaXQgY29tbWl0IC0tYWxsb3ctZW1wdHkgLW0gYW5vdGhlciAmJgogCWdpdCB0YWcgLWEgLW0gImFubm90YXRlZCIgdjEuMCAmJgpAQCAtODQsMTMgKzEwNCwxNiBAQAogCSMgICAtIHdlIGRvIG5vdCBzaG93IHRoZSByb290IHRyZWU7IHNpbmNlIHdlIHVwZGF0ZWQgdGhlIGluZGV4LCBpdAogCSMgICAgIGRvZXMgbm90IGhhdmUgYSB2YWxpZCBjYWNoZSB0cmVlCiAJIwotCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKLQk4ZTQwMjBiYjVhOGQ4Yzg3M2IyNWRlMTU5MzNlNzVjYzBmYzI3NWRmIG9uZQotCWQ5ZDNhNzQxN2I5NjA1Y2ZkODhlZTYzMDZiMjhkYWRjMjllNmFiMDggb25seS1pbi1pbmRleAotCTkyMDBiNjI4Y2Y5ZGM4ODNhODVhN2FiYzhkNmU2NzMwYmFlZTU4OWMgdHdvCi0JRU9GCiAJZWNobyBvbmx5LWluLWluZGV4ID5vbmx5LWluLWluZGV4ICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVzZXQgLS1oYXJkIiAmJgorCXJldjE9JChnaXQgcmV2LXBhcnNlIEhFQUQ6b25lKSAmJgorCXJldjI9JChnaXQgcmV2LXBhcnNlIEhFQUQ6dHdvKSAmJgorCXJldmk9JChnaXQgaGFzaC1vYmplY3Qgb25seS1pbi1pbmRleCkgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkkcmV2MSBvbmUKKwkkcmV2aSBvbmx5LWluLWluZGV4CisJJHJldjIgdHdvCisJRU9GCiAJZ2l0IGFkZCBvbmx5LWluLWluZGV4ICYmCiAJZ2l0IHJldi1saXN0IC0tb2JqZWN0cyAtLWluZGV4ZWQtb2JqZWN0cyA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbApAQCAtMTIwLDQgKzE0MywyNCBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncmV2LWxpc3QgLS1lbmQtb2Ytb3B0aW9ucycgJworCWdpdCB1cGRhdGUtcmVmIHJlZnMvaGVhZHMvLS1vdXRwdXQ9eWlrZXMgSEVBRCAmJgorCWdpdCByZXYtbGlzdCAtLWVuZC1vZi1vcHRpb25zIC0tb3V0cHV0PXlpa2VzID5hY3R1YWwgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyB5aWtlcyAmJgorCWdpdCByZXYtbGlzdCBIRUFEID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Jldi1saXN0IC0tY291bnQnICcKKwljb3VudD0kKGdpdCByZXYtbGlzdCAtLWNvdW50IEhFQUQpICYmCisJZ2l0IHJldi1saXN0IEhFQUQgPmFjdHVhbCAmJgorCXRlc3RfbGluZV9jb3VudCA9ICRjb3VudCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncmV2LWxpc3QgLS1jb3VudCAtLW9iamVjdHMnICcKKwljb3VudD0kKGdpdCByZXYtbGlzdCAtLWNvdW50IC0tb2JqZWN0cyBIRUFEKSAmJgorCWdpdCByZXYtbGlzdCAtLW9iamVjdHMgSEVBRCA+YWN0dWFsICYmCisJdGVzdF9saW5lX2NvdW50ID0gJGNvdW50IGFjdHVhbAorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDYwMDYtcmV2LWxpc3QtZm9ybWF0LnNoIGIvdC90NjAwNi1yZXYtbGlzdC1mb3JtYXQuc2gKaW5kZXggZWM0MmMyZi4uN2U4MmU0MyAxMDA3NTUKLS0tIGEvdC90NjAwNi1yZXYtbGlzdC1mb3JtYXQuc2gKKysrIGIvdC90NjAwNi1yZXYtbGlzdC1mb3JtYXQuc2gKQEAgLTMyLDYgKzMyLDcgQEAKIHRydW5jYXRlX2NvdW50PTIwCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCisJdGVzdF9vaWRfaW5pdCAmJgogCTogPmZvbyAmJgogCWdpdCBhZGQgZm9vICYmCiAJZ2l0IGNvbmZpZyBpMThuLmNvbW1pdEVuY29kaW5nICR0ZXN0X2VuY29kaW5nICYmCkBAIC0xMDksMzEgKzExMCwzNSBAQAogRU9GCiAKICMgd2UgZG9uJ3QgdGVzdCByZWxhdGl2ZSBoZXJlCi10ZXN0X2Zvcm1hdCBhdXRob3IgJWFuJW4lYWUlbiVhZCVuJWFEJW4lYXQgPDxFT0YKK3Rlc3RfZm9ybWF0IGF1dGhvciAlYW4lbiVhZSVuJWFsJW4lYWQlbiVhRCVuJWF0IDw8RU9GCiBjb21taXQgJGhlYWQyCi1BIFUgVGhvcgotYXV0aG9yQGV4YW1wbGUuY29tCiskR0lUX0FVVEhPUl9OQU1FCiskR0lUX0FVVEhPUl9FTUFJTAorJFRFU1RfQVVUSE9SX0xPQ0FMTkFNRQogVGh1IEFwciA3IDE1OjEzOjEzIDIwMDUgLTA3MDAKIFRodSwgNyBBcHIgMjAwNSAxNToxMzoxMyAtMDcwMAogMTExMjkxMTk5MwogY29tbWl0ICRoZWFkMQotQSBVIFRob3IKLWF1dGhvckBleGFtcGxlLmNvbQorJEdJVF9BVVRIT1JfTkFNRQorJEdJVF9BVVRIT1JfRU1BSUwKKyRURVNUX0FVVEhPUl9MT0NBTE5BTUUKIFRodSBBcHIgNyAxNToxMzoxMyAyMDA1IC0wNzAwCiBUaHUsIDcgQXByIDIwMDUgMTU6MTM6MTMgLTA3MDAKIDExMTI5MTE5OTMKIEVPRgogCi10ZXN0X2Zvcm1hdCBjb21taXR0ZXIgJWNuJW4lY2UlbiVjZCVuJWNEJW4lY3QgPDxFT0YKK3Rlc3RfZm9ybWF0IGNvbW1pdHRlciAlY24lbiVjZSVuJWNsJW4lY2QlbiVjRCVuJWN0IDw8RU9GCiBjb21taXQgJGhlYWQyCi1DIE8gTWl0dGVyCi1jb21taXR0ZXJAZXhhbXBsZS5jb20KKyRHSVRfQ09NTUlUVEVSX05BTUUKKyRHSVRfQ09NTUlUVEVSX0VNQUlMCiskVEVTVF9DT01NSVRURVJfTE9DQUxOQU1FCiBUaHUgQXByIDcgMTU6MTM6MTMgMjAwNSAtMDcwMAogVGh1LCA3IEFwciAyMDA1IDE1OjEzOjEzIC0wNzAwCiAxMTEyOTExOTkzCiBjb21taXQgJGhlYWQxCi1DIE8gTWl0dGVyCi1jb21taXR0ZXJAZXhhbXBsZS5jb20KKyRHSVRfQ09NTUlUVEVSX05BTUUKKyRHSVRfQ09NTUlUVEVSX0VNQUlMCiskVEVTVF9DT01NSVRURVJfTE9DQUxOQU1FCiBUaHUgQXByIDcgMTU6MTM6MTMgMjAwNSAtMDcwMAogVGh1LCA3IEFwciAyMDA1IDE1OjEzOjEzIC0wNzAwCiAxMTEyOTExOTkzCkBAIC0xODUsNiArMTkwLDEwIEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICclUyBpcyBub3QgYSBwbGFjZWhvbGRlciBmb3IgcmV2LWxpc3QgeWV0JyAnCisJZ2l0IHJldi1saXN0IC0tZm9ybWF0PSIlUyIgLTEgbWFzdGVyIHwgZ3JlcCAiJVMiCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FkdmFuY2VkIGNvbG9ycycgJwogCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgogCWNvbW1pdCAkaGVhZDIKQEAgLTQwNiw3ICs0MTUsNyBAQAogCXRlc3RfdGljayAmJgogCUM9JChHSVRfQVVUSE9SX0VNQUlMPSBnaXQgY29tbWl0LXRyZWUgSEVBRF57dHJlZX0gPC9kZXYvbnVsbCkgJiYKIAlBPSQoZ2l0IHNob3cgLS1wcmV0dHk9Zm9ybWF0OiVhbiwlYWUsJWFkJW4gLXMgJEMpICYmCi0JdmVyYm9zZSB0ZXN0ICIkQSIgPSAiQSBVIFRob3IsLFRodSBBcHIgNyAxNToxNDoxMyAyMDA1IC0wNzAwIgorCXZlcmJvc2UgdGVzdCAiJEEiID0gIiRHSVRfQVVUSE9SX05BTUUsLFRodSBBcHIgNyAxNToxNDoxMyAyMDA1IC0wNzAwIgogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZWwgTEYgYmVmb3JlIGVtcHR5ICgxKScgJwpAQCAtNDU1LDkgKzQ2NCwxMCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICclSCBpcyBub3QgYWZmZWN0ZWQgYnkgLS1hYmJyZXYtY29tbWl0JyAnCisJZXhwZWN0ZWQ9JCgoJCh0ZXN0X29pZCBoZXhzeikgKyAxKSkgJiYKIAlnaXQgbG9nIC0xIC0tZm9ybWF0PSVIIC0tYWJicmV2LWNvbW1pdCAtLWFiYnJldj0yMCBIRUFEID5hY3R1YWwgJiYKIAlsZW49JCh3YyAtYyA8YWN0dWFsKSAmJgotCXRlc3QgJGxlbiA9IDQxCisJdGVzdCAkbGVuID0gJGV4cGVjdGVkCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJyVoIGlzIG5vdCBhZmZlY3RlZCBieSAtLWFiYnJldi1jb21taXQnICcKQEAgLTQ5MSwxNSArNTAxLDE0IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlZmxvZyBpZGVudGl0eScgJwotCWVjaG8gIkMgTyBNaXR0ZXI6Y29tbWl0dGVyQGV4YW1wbGUuY29tIiA+ZXhwZWN0ICYmCisJZWNobyAiJEdJVF9DT01NSVRURVJfTkFNRTokR0lUX0NPTU1JVFRFUl9FTUFJTCIgPmV4cGVjdCAmJgogCWdpdCBsb2cgLWcgLTEgLS1mb3JtYXQ9IiVnbjolZ2UiID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ29uZWxpbmUgd2l0aCBlbXB0eSBtZXNzYWdlJyAnCi0JZ2l0IGNvbW1pdCAtbSAiZHVtbXkiIC0tYWxsb3ctZW1wdHkgJiYKLQlnaXQgY29tbWl0IC1tICJkdW1teSIgLS1hbGxvdy1lbXB0eSAmJgotCWdpdCBmaWx0ZXItYnJhbmNoIC0tbXNnLWZpbHRlciAic2VkIC1lIHMvZHVtbXkvLyIgSEVBRF5eLi4gJiYKKwlnaXQgY29tbWl0IC0tYWxsb3ctZW1wdHkgLS1jbGVhbnVwPXZlcmJhdGltIC1tICIkTEYiICYmCisJZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5IC0tYWxsb3ctZW1wdHktbWVzc2FnZSAmJgogCWdpdCByZXYtbGlzdCAtLW9uZWxpbmUgSEVBRCA+dGVzdC50eHQgJiYKIAl0ZXN0X2xpbmVfY291bnQgPSA1IHRlc3QudHh0ICYmCiAJZ2l0IHJldi1saXN0IC0tb25lbGluZSAtLWdyYXBoIEhFQUQgPnRlc3RnLnR4dCAmJgpkaWZmIC0tZ2l0IGEvdC90NjAxMS1yZXYtbGlzdC13aXRoLWJhZC1jb21taXQuc2ggYi90L3Q2MDExLXJldi1saXN0LXdpdGgtYmFkLWNvbW1pdC5zaAppbmRleCA1NDViNDYxLi5iYWQwMmNmIDEwMDc1NQotLS0gYS90L3Q2MDExLXJldi1saXN0LXdpdGgtYmFkLWNvbW1pdC5zaAorKysgYi90L3Q2MDExLXJldi1saXN0LXdpdGgtYmFkLWNvbW1pdC5zaApAQCAtNDIsNyArNDIsNyBAQAogICAgJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXYtbGlzdCBzaG91bGQgZmFpbCcgJwotCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVEVTVF9DT01NSVRfR1JBUEg9MCBnaXQgcmV2LWxpc3QgLS1hbGwgPiAvZGV2L251bGwKKwl0ZXN0X211c3RfZmFpbCBlbnYgR0lUX1RFU1RfQ09NTUlUX0dSQVBIPTAgZ2l0IC1jIGNvcmUuY29tbWl0R3JhcGg9ZmFsc2UgcmV2LWxpc3QgLS1hbGwgPiAvZGV2L251bGwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IHJlcGFjayBfTVVTVF8gZmFpbCcgXApkaWZmIC0tZ2l0IGEvdC90NjAxNi1yZXYtbGlzdC1ncmFwaC1zaW1wbGlmeS1oaXN0b3J5LnNoIGIvdC90NjAxNi1yZXYtbGlzdC1ncmFwaC1zaW1wbGlmeS1oaXN0b3J5LnNoCmluZGV4IGY3MTgxZDEuLmY1ZTZlOTIgMTAwNzU1Ci0tLSBhL3QvdDYwMTYtcmV2LWxpc3QtZ3JhcGgtc2ltcGxpZnktaGlzdG9yeS5zaAorKysgYi90L3Q2MDE2LXJldi1saXN0LWdyYXBoLXNpbXBsaWZ5LWhpc3Rvcnkuc2gKQEAgLTY3LDExICs2NywxMCBAQAogCWVjaG8gInwgKiAkQzQiID4+IGV4cGVjdGVkICYmCiAJZWNobyAifCAqICRDMyIgPj4gZXhwZWN0ZWQgJiYKIAllY2hvICIqIHwgJEE1IiA+PiBleHBlY3RlZCAmJgotCWVjaG8gInwgfCAgICAgIiA+PiBleHBlY3RlZCAmJgotCWVjaG8gInwgIFxcICAgICIgPj4gZXhwZWN0ZWQgJiYKLQllY2hvICIqLS4gXFwgICAkQTQiID4+IGV4cGVjdGVkICYmCi0JZWNobyAifFxcIFxcIFxcICAiID4+IGV4cGVjdGVkICYmCi0JZWNobyAifCB8IHwvICAiID4+IGV4cGVjdGVkICYmCisJZWNobyAifCB8ICAgIiA+PiBleHBlY3RlZCAmJgorCWVjaG8gInwgIFxcICAiID4+IGV4cGVjdGVkICYmCisJZWNobyAiKi0uIHwgJEE0IiA+PiBleHBlY3RlZCAmJgorCWVjaG8gInxcXCBcXHwgIiA+PiBleHBlY3RlZCAmJgogCWVjaG8gInwgfCAqICRDMiIgPj4gZXhwZWN0ZWQgJiYKIAllY2hvICJ8IHwgKiAkQzEiID4+IGV4cGVjdGVkICYmCiAJZWNobyAifCAqIHwgJEIyIiA+PiBleHBlY3RlZCAmJgpAQCAtOTcsMTEgKzk2LDEwIEBACiAJZWNobyAifCAqICRDNCIgPj4gZXhwZWN0ZWQgJiYKIAllY2hvICJ8ICogJEMzIiA+PiBleHBlY3RlZCAmJgogCWVjaG8gIiogfCAkQTUiID4+IGV4cGVjdGVkICYmCi0JZWNobyAifCB8ICAgICAiID4+IGV4cGVjdGVkICYmCi0JZWNobyAifCAgXFwgICAgIiA+PiBleHBlY3RlZCAmJgotCWVjaG8gIiotLiBcXCAgICRBNCIgPj4gZXhwZWN0ZWQgJiYKLQllY2hvICJ8XFwgXFwgXFwgICIgPj4gZXhwZWN0ZWQgJiYKLQllY2hvICJ8IHwgfC8gICIgPj4gZXhwZWN0ZWQgJiYKKwllY2hvICJ8IHwgICAiID4+IGV4cGVjdGVkICYmCisJZWNobyAifCAgXFwgICIgPj4gZXhwZWN0ZWQgJiYKKwllY2hvICIqLS4gfCAkQTQiID4+IGV4cGVjdGVkICYmCisJZWNobyAifFxcIFxcfCAiID4+IGV4cGVjdGVkICYmCiAJZWNobyAifCB8ICogJEMyIiA+PiBleHBlY3RlZCAmJgogCWVjaG8gInwgfCAqICRDMSIgPj4gZXhwZWN0ZWQgJiYKIAllY2hvICJ8ICogfCAkQjIiID4+IGV4cGVjdGVkICYmCkBAIC0xMzEsOSArMTI5LDggQEAKIAllY2hvICJ8ICogJEM0IiA+PiBleHBlY3RlZCAmJgogCWVjaG8gInwgKiAkQzMiID4+IGV4cGVjdGVkICYmCiAJZWNobyAiKiB8ICRBNSIgPj4gZXhwZWN0ZWQgJiYKLQllY2hvICIqIHwgICAkQTQiID4+IGV4cGVjdGVkICYmCi0JZWNobyAifFxcIFxcICAiID4+IGV4cGVjdGVkICYmCi0JZWNobyAifCB8LyAgIiA+PiBleHBlY3RlZCAmJgorCWVjaG8gIiogfCAkQTQiID4+IGV4cGVjdGVkICYmCisJZWNobyAifFxcfCAiID4+IGV4cGVjdGVkICYmCiAJZWNobyAifCAqICRDMiIgPj4gZXhwZWN0ZWQgJiYKIAllY2hvICJ8ICogJEMxIiA+PiBleHBlY3RlZCAmJgogCWVjaG8gIiogfCAkQTMiID4+IGV4cGVjdGVkICYmCkBAIC0xNTEsOSArMTQ4LDggQEAKIAllY2hvICJ8XFwgICIgPj4gZXhwZWN0ZWQgJiYKIAllY2hvICJ8ICogJEM0IiA+PiBleHBlY3RlZCAmJgogCWVjaG8gIiogfCAkQTUiID4+IGV4cGVjdGVkICYmCi0JZWNobyAiKiB8ICAgJEE0IiA+PiBleHBlY3RlZCAmJgotCWVjaG8gInxcXCBcXCAgIiA+PiBleHBlY3RlZCAmJgotCWVjaG8gInwgfC8gICIgPj4gZXhwZWN0ZWQgJiYKKwllY2hvICIqIHwgJEE0IiA+PiBleHBlY3RlZCAmJgorCWVjaG8gInxcXHwgIiA+PiBleHBlY3RlZCAmJgogCWVjaG8gIiogfCAkQTMiID4+IGV4cGVjdGVkICYmCiAJZWNobyAifC8gICIgPj4gZXhwZWN0ZWQgJiYKIAllY2hvICIqICRBMiIgPj4gZXhwZWN0ZWQgJiYKQEAgLTI1NSw3ICsyNTEsNyBAQAogCWVjaG8gIiogfCB8IHwgJEEzIiA+PiBleHBlY3RlZCAmJgogCWVjaG8gIm8gfCB8IHwgJEEyIiA+PiBleHBlY3RlZCAmJgogCWVjaG8gInwvIC8gLyAgIiA+PiBleHBlY3RlZCAmJgotCWVjaG8gIm8gfCB8ICRBMSIgPj4gZXhwZWN0ZWQgJiYKKwllY2hvICJvIC8gLyAkQTEiID4+IGV4cGVjdGVkICYmCiAJZWNobyAiIC8gLyAgIiA+PiBleHBlY3RlZCAmJgogCWVjaG8gInwgbyAkQzMiID4+IGV4cGVjdGVkICYmCiAJZWNobyAifC8gICIgPj4gZXhwZWN0ZWQgJiYKZGlmZiAtLWdpdCBhL3QvdDYwMTktcmV2LWxpc3QtYW5jZXN0cnktcGF0aC5zaCBiL3QvdDYwMTktcmV2LWxpc3QtYW5jZXN0cnktcGF0aC5zaAppbmRleCBiZWFkYWY2Li4zNTNmODQzIDEwMDc1NQotLS0gYS90L3Q2MDE5LXJldi1saXN0LWFuY2VzdHJ5LXBhdGguc2gKKysrIGIvdC90NjAxOS1yZXYtbGlzdC1hbmNlc3RyeS1wYXRoLnNoCkBAIC0xNDMsMTQgKzE0MywxNCBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY3Jpc3MtY3Jvc3M6IHJldi1saXN0IC0tYW5jZXN0cnktcGF0aCBjYi4uYmMnICcKIAkoY2QgY3Jpc3MtY3Jvc3MgJiYKIAkgZ2l0IHJldi1saXN0IC0tYW5jZXN0cnktcGF0aCB4Y2IuLnhiYyA+IGFjdHVhbCAmJgotCSB0ZXN0IC16ICIkKGNhdCBhY3R1YWwpIikKKwkgdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbCkKICcKIAogIyBubyBjb21taXRzIGluIHJlcG9zaXRvcnkgZGVzY2VuZCBmcm9tIGNiCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjcmlzcy1jcm9zczogcmV2LWxpc3QgLS1hbmNlc3RyeS1wYXRoIC0tYWxsIF5jYicgJwogCShjZCBjcmlzcy1jcm9zcyAmJgogCSBnaXQgcmV2LWxpc3QgLS1hbmNlc3RyeS1wYXRoIC0tYWxsIF54Y2IgPiBhY3R1YWwgJiYKLQkgdGVzdCAteiAiJChjYXQgYWN0dWFsKSIpCisJIHRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwpCiAnCiAKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NjAyMC1tZXJnZS1kZi5zaCBiL3QvdDYwMjAtbWVyZ2UtZGYuc2gKaW5kZXggNDZiNTA2Yi4uNDAwYTRjZCAxMDA3NTUKLS0tIGEvdC90NjAyMC1tZXJnZS1kZi5zaAorKysgYi90L3Q2MDIwLW1lcmdlLWRmLnNoCkBAIC04Myw5ICs4Myw5IEBACiAJdGVzdCA0IC1lcSAkKGdpdCBscy1maWxlcyAtdSB8IHdjIC1sKSAmJgogCXRlc3QgMSAtZXEgJChnaXQgbHMtZmlsZXMgLW8gfCB3YyAtbCkgJiYKIAotCXRlc3QgLWYgbGV0dGVycy9maWxlICYmCi0JdGVzdCAtZiBsZXR0ZXJzLnR4dCAmJgotCXRlc3QgLWYgbGV0dGVyc35tb2RpZnkKKwl0ZXN0X3BhdGhfaXNfZmlsZSBsZXR0ZXJzL2ZpbGUgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBsZXR0ZXJzLnR4dCAmJgorCXRlc3RfcGF0aF9pc19maWxlIGxldHRlcnN+bW9kaWZ5CiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZGlmeS9kZWxldGUgKyBkaXJlY3RvcnkvZmlsZSBjb25mbGljdDsgb3RoZXIgd2F5JyAnCkBAIC05OSw5ICs5OSw1MiBAQAogCXRlc3QgNCAtZXEgJChnaXQgbHMtZmlsZXMgLXUgfCB3YyAtbCkgJiYKIAl0ZXN0IDEgLWVxICQoZ2l0IGxzLWZpbGVzIC1vIHwgd2MgLWwpICYmCiAKLQl0ZXN0IC1mIGxldHRlcnMvZmlsZSAmJgotCXRlc3QgLWYgbGV0dGVycy50eHQgJiYKLQl0ZXN0IC1mIGxldHRlcnN+SEVBRAorCXRlc3RfcGF0aF9pc19maWxlIGxldHRlcnMvZmlsZSAmJgorCXRlc3RfcGF0aF9pc19maWxlIGxldHRlcnMudHh0ICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgbGV0dGVyc35IRUFECisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ1NpbXBsZSBtZXJnZSBpbiByZXBvIHdpdGggaW50ZXJlc3RpbmcgcGF0aG5hbWVzJyAnCisJIyBTaW1wbGUgbGV4aWNvZ3JhcGhpYyBvcmRlcmluZyBvZiBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgd291bGQgYmU6CisJIyAgICAgZm9vCisJIyAgICAgZm9vL2JhcgorCSMgICAgIGZvby9iYXItMgorCSMgICAgIGZvby9iYXIvYmF6CisJIyAgICAgZm9vL2Jhci0yL2JhegorCSMgVGhlIGZhY3QgdGhhdCBmb28vYmFyLTIgYXBwZWFycyBiZXR3ZWVuIGZvby9iYXIgYW5kIGZvby9iYXIvYmF6CisJIyBjYW4gdHJpcCB1cCBzb21lIGNvZGVwYXRocywgYW5kIGlzIHRoZSBwb2ludCBvZiB0aGlzIHRlc3QuCisJdGVzdF9jcmVhdGVfcmVwbyBuYW1lLW9yZGVyaW5nICYmCisJKAorCQljZCBuYW1lLW9yZGVyaW5nICYmCisKKwkJbWtkaXIgLXAgZm9vL2JhciAmJgorCQlta2RpciAtcCBmb28vYmFyLTIgJiYKKwkJPmZvby9iYXIvYmF6ICYmCisJCT5mb28vYmFyLTIvYmF6ICYmCisJCWdpdCBhZGQgLiAmJgorCQlnaXQgY29tbWl0IC1tIGluaXRpYWwgJiYKKworCQlnaXQgYnJhbmNoIG1haW4gJiYKKwkJZ2l0IGJyYW5jaCBvdGhlciAmJgorCisJCWdpdCBjaGVja291dCBvdGhlciAmJgorCQllY2hvIG90aGVyID5mb28vYmFyLTIvYmF6ICYmCisJCWdpdCBhZGQgLXUgJiYKKwkJZ2l0IGNvbW1pdCAtbSBvdGhlciAmJgorCisJCWdpdCBjaGVja291dCBtYWluICYmCisJCWVjaG8gbWFpbiA+Zm9vL2Jhci9iYXogJiYKKwkJZ2l0IGFkZCAtdSAmJgorCQlnaXQgY29tbWl0IC1tIG1haW4gJiYKKworCQlnaXQgbWVyZ2Ugb3RoZXIgJiYKKwkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMiBvdXQgJiYKKwkJZ2l0IHJldi1wYXJzZSA6MDpmb28vYmFyL2JheiA6MDpmb28vYmFyLTIvYmF6ID5hY3R1YWwgJiYKKwkJZ2l0IHJldi1wYXJzZSBIRUFEfjE6Zm9vL2Jhci9iYXogb3RoZXI6Zm9vL2Jhci0yL2JheiA+ZXhwZWN0ICYmCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwkpCisKICcKIAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q2MDIxLW1lcmdlLWNyaXNzLWNyb3NzLnNoIGIvdC90NjAyMS1tZXJnZS1jcmlzcy1jcm9zcy5zaAppbmRleCAyMTNkZWVjLi45ZDVlOTkyIDEwMDc1NQotLS0gYS90L3Q2MDIxLW1lcmdlLWNyaXNzLWNyb3NzLnNoCisrKyBiL3QvdDYwMjEtbWVyZ2UtY3Jpc3MtY3Jvc3Muc2gKQEAgLTMsOTQgKzMsNjUgQEAKICMgQ29weXJpZ2h0IChjKSAyMDA1IEZyZWRyaWsgS3VpdmluZW4KICMKIAotIyBTZWUgaHR0cDovL21hcmMuaW5mby8/bD1naXQmbT0xMTE0NjMzNTg1MDAzNjImdz0yIGZvciBhCisjIFNlZSBodHRwczovL2xvcmUua2VybmVsLm9yZy9naXQvUGluZS5MTlguNC40NC4wNTA0MjcxMjU0MTIwLjQ2NzgtMTAwMDAwQHdheC5lZHMub3JnLyBmb3IgYQogIyBuaWNlIGRlc2NyaXB0aW9uIG9mIHdoYXQgdGhpcyBpcyBhYm91dC4KIAogCiB0ZXN0X2Rlc2NyaXB0aW9uPSdUZXN0IGNyaXNzLWNyb3NzIG1lcmdlJwogLiAuL3Rlc3QtbGliLnNoCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ByZXBhcmUgcmVwb3NpdG9yeScgXAotJ2VjaG8gIjEKLTIKLTMKLTQKLTUKLTYKLTcKLTgKLTkiID4gZmlsZSAmJgotZ2l0IGFkZCBmaWxlICYmCi1naXQgY29tbWl0IC1tICJJbml0aWFsIGNvbW1pdCIgZmlsZSAmJgotZ2l0IGJyYW5jaCBBICYmCi1naXQgYnJhbmNoIEIgJiYKLWdpdCBjaGVja291dCBBICYmCi1lY2hvICIxCi0yCi0zCi00Ci01Ci02Ci03Ci04IGNoYW5nZWQgaW4gQjgsIGJyYW5jaCBBCi05IiA+IGZpbGUgJiYKLWdpdCBjb21taXQgLW0gIkI4IiBmaWxlICYmCi1naXQgY2hlY2tvdXQgQiAmJgotZWNobyAiMQotMgotMyBjaGFuZ2VkIGluIEMzLCBicmFuY2ggQgotNAotNQotNgotNwotOAotOQotIiA+IGZpbGUgJiYKLWdpdCBjb21taXQgLW0gIkMzIiBmaWxlICYmCi1naXQgYnJhbmNoIEMzICYmCi1naXQgbWVyZ2UgLW0gInByZSBFMyBtZXJnZSIgQSAmJgotZWNobyAiMQotMgotMyBjaGFuZ2VkIGluIEUzLCBicmFuY2ggQi4gTmV3IGZpbGUgc2l6ZQotNAotNQotNgotNwotOCBjaGFuZ2VkIGluIEI4LCBicmFuY2ggQQotOQotIiA+IGZpbGUgJiYKLWdpdCBjb21taXQgLW0gIkUzIiBmaWxlICYmCi1naXQgY2hlY2tvdXQgQSAmJgotZ2l0IG1lcmdlIC1tICJwcmUgRDggbWVyZ2UiIEMzICYmCi1lY2hvICIxCi0yCi0zIGNoYW5nZWQgaW4gQzMsIGJyYW5jaCBCCi00Ci01Ci02Ci03Ci04IGNoYW5nZWQgaW4gRDgsIGJyYW5jaCBBLiBOZXcgZmlsZSBzaXplIDIKLTkiID4gZmlsZSAmJgotZ2l0IGNvbW1pdCAtbSBEOCBmaWxlJwordGVzdF9leHBlY3Rfc3VjY2VzcyAncHJlcGFyZSByZXBvc2l0b3J5JyAnCisJdGVzdF93cml0ZV9saW5lcyAxIDIgMyA0IDUgNiA3IDggOSA+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCWdpdCBjb21taXQgLW0gIkluaXRpYWwgY29tbWl0IiBmaWxlICYmCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0NyaXNzLWNyb3NzIG1lcmdlJyAnZ2l0IG1lcmdlIC1tICJmaW5hbCBtZXJnZSIgQicKKwlnaXQgYnJhbmNoIEEgJiYKKwlnaXQgYnJhbmNoIEIgJiYKKwlnaXQgY2hlY2tvdXQgQSAmJgogCi1jYXQgPiBmaWxlLWV4cGVjdCA8PEVPRgotMQotMgotMyBjaGFuZ2VkIGluIEUzLCBicmFuY2ggQi4gTmV3IGZpbGUgc2l6ZQotNAotNQotNgotNwotOCBjaGFuZ2VkIGluIEQ4LCBicmFuY2ggQS4gTmV3IGZpbGUgc2l6ZSAyCi05Ci1FT0YKKwl0ZXN0X3dyaXRlX2xpbmVzIDEgMiAzIDQgNSA2IDcgIjggY2hhbmdlZCBpbiBCOCwgYnJhbmNoIEEiIDkgPmZpbGUgJiYKKwlnaXQgY29tbWl0IC1tICJCOCIgZmlsZSAmJgorCWdpdCBjaGVja291dCBCICYmCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0NyaXNzLWNyb3NzIG1lcmdlIHJlc3VsdCcgJ2NtcCBmaWxlIGZpbGUtZXhwZWN0JworCXRlc3Rfd3JpdGVfbGluZXMgMSAyICIzIGNoYW5nZWQgaW4gQzMsIGJyYW5jaCBCIiA0IDUgNiA3IDggOSA+ZmlsZSAmJgorCWdpdCBjb21taXQgLW0gIkMzIiBmaWxlICYmCisJZ2l0IGJyYW5jaCBDMyAmJgogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdDcmlzcy1jcm9zcyBtZXJnZSBmYWlscyAoLXMgcmVzb2x2ZSknIFwKLSdnaXQgcmVzZXQgLS1oYXJkIEFeICYmCi10ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVzb2x2ZSAtbSAiZmluYWwgbWVyZ2UiIEInCisJZ2l0IG1lcmdlIC1tICJwcmUgRTMgbWVyZ2UiIEEgJiYKKworCXRlc3Rfd3JpdGVfbGluZXMgMSAyICIzIGNoYW5nZWQgaW4gRTMsIGJyYW5jaCBCLiBOZXcgZmlsZSBzaXplIiA0IDUgNiA3ICI4IGNoYW5nZWQgaW4gQjgsIGJyYW5jaCBBIiA5ID5maWxlICYmCisJZ2l0IGNvbW1pdCAtbSAiRTMiIGZpbGUgJiYKKworCWdpdCBjaGVja291dCBBICYmCisJZ2l0IG1lcmdlIC1tICJwcmUgRDggbWVyZ2UiIEMzICYmCisJdGVzdF93cml0ZV9saW5lcyAxIDIgIjMgY2hhbmdlZCBpbiBDMywgYnJhbmNoIEIiIDQgNSA2IDcgIjggY2hhbmdlZCBpbiBEOCwgYnJhbmNoIEEuIE5ldyBmaWxlIHNpemUgMiIgOSA+ZmlsZSAmJgorCisJZ2l0IGNvbW1pdCAtbSBEOCBmaWxlCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0NyaXNzLWNyb3NzIG1lcmdlJyAnCisJZ2l0IG1lcmdlIC1tICJmaW5hbCBtZXJnZSIgQgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdDcmlzcy1jcm9zcyBtZXJnZSByZXN1bHQnICcKKwljYXQgPDwtXEVPRiA+ZmlsZS1leHBlY3QgJiYKKwkxCisJMgorCTMgY2hhbmdlZCBpbiBFMywgYnJhbmNoIEIuIE5ldyBmaWxlIHNpemUKKwk0CisJNQorCTYKKwk3CisJOCBjaGFuZ2VkIGluIEQ4LCBicmFuY2ggQS4gTmV3IGZpbGUgc2l6ZSAyCisJOQorCUVPRgorCisJdGVzdF9jbXAgZmlsZS1leHBlY3QgZmlsZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdDcmlzcy1jcm9zcyBtZXJnZSBmYWlscyAoLXMgcmVzb2x2ZSknICcKKwlnaXQgcmVzZXQgLS1oYXJkIEFeICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC1zIHJlc29sdmUgLW0gImZpbmFsIG1lcmdlIiBCCisnCiAKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NjAyMi1tZXJnZS1yZW5hbWUuc2ggYi90L3Q2MDIyLW1lcmdlLXJlbmFtZS5zaAppbmRleCA1M2NjOWIyLi5iYmJiYTNkIDEwMDc1NQotLS0gYS90L3Q2MDIyLW1lcmdlLXJlbmFtZS5zaAorKysgYi90L3Q2MDIyLW1lcmdlLXJlbmFtZS5zaApAQCAtOCw5NCArOCw5NCBAQAogCW12ICIkMi54IiAiJDIiCiB9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3Mgc2V0dXAgXAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICcKKwljYXQgPkEgPDwtXEVPRiAmJgorCWEgYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhCisJYiBiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmIKKwljIGNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYworCWQgZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkCisJZSBlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWUKKwlmIGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZgorCWcgZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnCisJaCBoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGgKKwlpIGlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaQorCWogampqampqampqampqampqampqampqampqampqampqampqampqampqampqampqampqCisJayBra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2sKKwlsIGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbAorCW0gbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tCisJbiBubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm4KKwlvIG9vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vbworCUVPRgorCisJY2F0ID5NIDw8LVxFT0YgJiYKKwlBIEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQorCUIgQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCCisJQyBDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MKKwlEIERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERAorCUUgRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFCisJRiBGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKKwlHIEdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRworCUggSEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhICisJSSBJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUkKKwlKIEpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSgorCUsgS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLCisJTCBMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEwKKwlNIE1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTQorCU4gTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OCisJTyBPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT08KKwlFT0YKKworCWdpdCBhZGQgQSBNICYmCisJZ2l0IGNvbW1pdCAtbSAiaW5pdGlhbCBoYXMgQSBhbmQgTSIgJiYKKwlnaXQgYnJhbmNoIHdoaXRlICYmCisJZ2l0IGJyYW5jaCByZWQgJiYKKwlnaXQgYnJhbmNoIGJsdWUgJiYKKwlnaXQgYnJhbmNoIHllbGxvdyAmJgorCWdpdCBicmFuY2ggY2hhbmdlICYmCisJZ2l0IGJyYW5jaCBjaGFuZ2UrcmVuYW1lICYmCisKKwlzZWQgLWUgIi9eZyAvcy8uKi9nIDogbWFzdGVyIGNoYW5nZXMgYSBsaW5lLyIgPEEgPkErICYmCisJbXYgQSsgQSAmJgorCWdpdCBjb21taXQgLWEgLW0gIm1hc3RlciB1cGRhdGVzIEEiICYmCisKKwlnaXQgY2hlY2tvdXQgeWVsbG93ICYmCisJcm0gLWYgTSAmJgorCWdpdCBjb21taXQgLWEgLW0gInllbGxvdyByZW1vdmVzIE0iICYmCisKKwlnaXQgY2hlY2tvdXQgd2hpdGUgJiYKKwlzZWQgLWUgIi9eZyAvcy8uKi9nIDogd2hpdGUgY2hhbmdlcyBhIGxpbmUvIiA8QSA+QiAmJgorCXNlZCAtZSAiL15HIC9zLy4qL0cgOiBjb2xvcmVkIGJyYW5jaCBjaGFuZ2VzIGEgbGluZS8iIDxNID5OICYmCisJcm0gLWYgQSBNICYmCisJZ2l0IHVwZGF0ZS1pbmRleCAtLWFkZCAtLXJlbW92ZSBBIEIgTSBOICYmCisJZ2l0IGNvbW1pdCAtbSAid2hpdGUgcmVuYW1lcyBBLT5CLCBNLT5OIiAmJgorCisJZ2l0IGNoZWNrb3V0IHJlZCAmJgorCXNlZCAtZSAiL15nIC9zLy4qL2cgOiByZWQgY2hhbmdlcyBhIGxpbmUvIiA8QSA+QiAmJgorCXNlZCAtZSAiL15HIC9zLy4qL0cgOiBjb2xvcmVkIGJyYW5jaCBjaGFuZ2VzIGEgbGluZS8iIDxNID5OICYmCisJcm0gLWYgQSBNICYmCisJZ2l0IHVwZGF0ZS1pbmRleCAtLWFkZCAtLXJlbW92ZSBBIEIgTSBOICYmCisJZ2l0IGNvbW1pdCAtbSAicmVkIHJlbmFtZXMgQS0+QiwgTS0+TiIgJiYKKworCWdpdCBjaGVja291dCBibHVlICYmCisJc2VkIC1lICIvXmcgL3MvLiovZyA6IGJsdWUgY2hhbmdlcyBhIGxpbmUvIiA8QSA+QyAmJgorCXNlZCAtZSAiL15HIC9zLy4qL0cgOiBjb2xvcmVkIGJyYW5jaCBjaGFuZ2VzIGEgbGluZS8iIDxNID5OICYmCisJcm0gLWYgQSBNICYmCisJZ2l0IHVwZGF0ZS1pbmRleCAtLWFkZCAtLXJlbW92ZSBBIEMgTSBOICYmCisJZ2l0IGNvbW1pdCAtbSAiYmx1ZSByZW5hbWVzIEEtPkMsIE0tPk4iICYmCisKKwlnaXQgY2hlY2tvdXQgY2hhbmdlICYmCisJc2VkIC1lICIvXmcgL3MvLiovZyA6IGNoYW5nZWQgbGluZS8iIDxBID5BKyAmJgorCW12IEErIEEgJiYKKwlnaXQgY29tbWl0IC1xIC1hIC1tICJjaGFuZ2VkIiAmJgorCisJZ2l0IGNoZWNrb3V0IGNoYW5nZStyZW5hbWUgJiYKKwlzZWQgLWUgIi9eZyAvcy8uKi9nIDogY2hhbmdlZCBsaW5lLyIgPEEgPkIgJiYKKwlybSBBICYmCisJZ2l0IHVwZGF0ZS1pbmRleCAtLWFkZCBCICYmCisJZ2l0IGNvbW1pdCAtcSAtYSAtbSAiY2hhbmdlZCBhbmQgcmVuYW1lZCIgJiYKKworCWdpdCBjaGVja291dCBtYXN0ZXIKICcKLWNhdCA+QSA8PFxFT0YgJiYKLWEgYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhCi1iIGJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYgotYyBjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2MKLWQgZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkCi1lIGVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZQotZiBmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYKLWcgZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnCi1oIGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaAotaSBpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWkKLWogampqampqampqampqampqampqampqampqampqampqampqampqampqampqampqampqCi1rIGtra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2trawotbCBsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGwKLW0gbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tCi1uIG5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubgotbyBvb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb28KLUVPRgotCi1jYXQgPk0gPDxcRU9GICYmCi1BIEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQotQiBCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkIKLUMgQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCi1EIERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERAotRSBFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUUKLUYgRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCi1HIEdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRwotSCBISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEgKLUkgSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJCi1KIEpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSgotSyBLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0sKLUwgTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMCi1NIE1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTQotTiBOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk4KLU8gT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PCi1FT0YKLQotZ2l0IGFkZCBBIE0gJiYKLWdpdCBjb21taXQgLW0gImluaXRpYWwgaGFzIEEgYW5kIE0iICYmCi1naXQgYnJhbmNoIHdoaXRlICYmCi1naXQgYnJhbmNoIHJlZCAmJgotZ2l0IGJyYW5jaCBibHVlICYmCi1naXQgYnJhbmNoIHllbGxvdyAmJgotZ2l0IGJyYW5jaCBjaGFuZ2UgJiYKLWdpdCBicmFuY2ggY2hhbmdlK3JlbmFtZSAmJgotCi1zZWQgLWUgIi9eZyAvcy8uKi9nIDogbWFzdGVyIGNoYW5nZXMgYSBsaW5lLyIgPEEgPkErICYmCi1tdiBBKyBBICYmCi1naXQgY29tbWl0IC1hIC1tICJtYXN0ZXIgdXBkYXRlcyBBIiAmJgotCi1naXQgY2hlY2tvdXQgeWVsbG93ICYmCi1ybSAtZiBNICYmCi1naXQgY29tbWl0IC1hIC1tICJ5ZWxsb3cgcmVtb3ZlcyBNIiAmJgotCi1naXQgY2hlY2tvdXQgd2hpdGUgJiYKLXNlZCAtZSAiL15nIC9zLy4qL2cgOiB3aGl0ZSBjaGFuZ2VzIGEgbGluZS8iIDxBID5CICYmCi1zZWQgLWUgIi9eRyAvcy8uKi9HIDogY29sb3JlZCBicmFuY2ggY2hhbmdlcyBhIGxpbmUvIiA8TSA+TiAmJgotcm0gLWYgQSBNICYmCi1naXQgdXBkYXRlLWluZGV4IC0tYWRkIC0tcmVtb3ZlIEEgQiBNIE4gJiYKLWdpdCBjb21taXQgLW0gIndoaXRlIHJlbmFtZXMgQS0+QiwgTS0+TiIgJiYKLQotZ2l0IGNoZWNrb3V0IHJlZCAmJgotc2VkIC1lICIvXmcgL3MvLiovZyA6IHJlZCBjaGFuZ2VzIGEgbGluZS8iIDxBID5CICYmCi1zZWQgLWUgIi9eRyAvcy8uKi9HIDogY29sb3JlZCBicmFuY2ggY2hhbmdlcyBhIGxpbmUvIiA8TSA+TiAmJgotcm0gLWYgQSBNICYmCi1naXQgdXBkYXRlLWluZGV4IC0tYWRkIC0tcmVtb3ZlIEEgQiBNIE4gJiYKLWdpdCBjb21taXQgLW0gInJlZCByZW5hbWVzIEEtPkIsIE0tPk4iICYmCi0KLWdpdCBjaGVja291dCBibHVlICYmCi1zZWQgLWUgIi9eZyAvcy8uKi9nIDogYmx1ZSBjaGFuZ2VzIGEgbGluZS8iIDxBID5DICYmCi1zZWQgLWUgIi9eRyAvcy8uKi9HIDogY29sb3JlZCBicmFuY2ggY2hhbmdlcyBhIGxpbmUvIiA8TSA+TiAmJgotcm0gLWYgQSBNICYmCi1naXQgdXBkYXRlLWluZGV4IC0tYWRkIC0tcmVtb3ZlIEEgQyBNIE4gJiYKLWdpdCBjb21taXQgLW0gImJsdWUgcmVuYW1lcyBBLT5DLCBNLT5OIiAmJgotCi1naXQgY2hlY2tvdXQgY2hhbmdlICYmCi1zZWQgLWUgIi9eZyAvcy8uKi9nIDogY2hhbmdlZCBsaW5lLyIgPEEgPkErICYmCi1tdiBBKyBBICYmCi1naXQgY29tbWl0IC1xIC1hIC1tICJjaGFuZ2VkIiAmJgotCi1naXQgY2hlY2tvdXQgY2hhbmdlK3JlbmFtZSAmJgotc2VkIC1lICIvXmcgL3MvLiovZyA6IGNoYW5nZWQgbGluZS8iIDxBID5CICYmCi1ybSBBICYmCi1naXQgdXBkYXRlLWluZGV4IC0tYWRkIEIgJiYKLWdpdCBjb21taXQgLXEgLWEgLW0gImNoYW5nZWQgYW5kIHJlbmFtZWQiICYmCi0KLWdpdCBjaGVja291dCBtYXN0ZXInCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3B1bGwgcmVuYW1pbmcgYnJhbmNoIGludG8gdW5yZW5hbWluZyBvbmUnIFwKICcKQEAgLTI0MiwxMiArMjQyLDI0IEBACiAJcm0gLWYgQSBNIE4gJiYKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZ2l0IGNoZWNrb3V0IGNoYW5nZStyZW5hbWUgJiYKKworCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0IC0zNjAwIEIgPm9sZC1tdGltZSAmJgogCUdJVF9NRVJHRV9WRVJCT1NJVFk9MyBnaXQgbWVyZ2UgY2hhbmdlID5vdXQgJiYKLQl0ZXN0X2kxOG5ncmVwICJeU2tpcHBlZCBCIiBvdXQgJiYKKworCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0IEIgPm5ldy1tdGltZSAmJgorCXRlc3RfY21wIG9sZC1tdGltZSBuZXctbXRpbWUgJiYKKwogCWdpdCByZXNldCAtLWhhcmQgSEVBRF4gJiYKIAlnaXQgY2hlY2tvdXQgY2hhbmdlICYmCisKKwkjIEEgd2lsbCBiZSByZW5hbWVkIHRvIEI7IHdlIGNoZWNrIG10aW1lcyBhbmQgZmlsZSBwcmVzZW5jZQorCXRlc3RfcGF0aF9pc19taXNzaW5nIEIgJiYKKwl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCAtMzYwMCBBID5vbGQtbXRpbWUgJiYKIAlHSVRfTUVSR0VfVkVSQk9TSVRZPTMgZ2l0IG1lcmdlIGNoYW5nZStyZW5hbWUgPm91dCAmJgotCXRlc3RfaTE4bmdyZXAgISAiXlNraXBwZWQgQiIgb3V0CisKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBBICYmCisJdGVzdC10b29sIGNobXRpbWUgLS1nZXQgQiA+bmV3LW10aW1lICYmCisJdGVzdCAkKGNhdCBvbGQtbXRpbWUpIC1sdCAkKGNhdCBuZXctbXRpbWUpCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIGZvciByZW5hbWUgKyBkL2YgY29uZmxpY3RzJyAnCkBAIC0yODgsMTQgKzMwMCwxNSBAQAogCWdpdCBjb21taXQgLW0gIkNvbmZsaWN0aW5nIGNoYW5nZSIKICcKIAotcHJpbnRmICIxXG4yXG4zXG40XG41NTU1XG42XG43XG44XG45XG4xMFxuMTFcbiIgPmV4cGVjdGVkCi0KIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ1JlbmFtZStEL0YgY29uZmxpY3Q7IHJlbmFtZWQgZmlsZSBtZXJnZXMgKyBkaXIgbm90IGluIHdheScgJwogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlnaXQgY2hlY2tvdXQgLXEgcmVuYW1lZC1maWxlLWhhcy1uby1jb25mbGljdHNeMCAmJgorCiAJZ2l0IG1lcmdlIC0tc3RyYXRlZ3k9cmVjdXJzaXZlIGRpci1ub3QtaW4td2F5ICYmCisKIAlnaXQgZGlmZiAtLXF1aWV0ICYmCi0JdGVzdCAtZiBkaXIgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBkaXIgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzIDEgMiAzIDQgNTU1NSA2IDcgOCA5IDEwIDExID5leHBlY3RlZCAmJgogCXRlc3RfY21wIGV4cGVjdGVkIGRpcgogJwogCkBAIC0zMTUsOCArMzI4LDggQEAKIAl0ZXN0X211c3RfZmFpbCBnaXQgZGlmZiAtLXF1aWV0ICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGRpZmYgLS1jYWNoZWQgLS1xdWlldCAmJgogCi0JdGVzdCAtZiBkaXIvZmlsZS1pbi10aGUtd2F5ICYmCi0JdGVzdCAtZiBkaXJ+SEVBRCAmJgorCXRlc3RfcGF0aF9pc19maWxlIGRpci9maWxlLWluLXRoZS13YXkgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBkaXJ+SEVBRCAmJgogCXRlc3RfY21wIGV4cGVjdGVkIGRpcn5IRUFECiAnCiAKQEAgLTMzNywyOSArMzUwLDExIEBACiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGRpZmYgLS1xdWlldCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmIC0tY2FjaGVkIC0tcXVpZXQgJiYKIAotCXRlc3QgLWYgZGlyL2ZpbGUtaW4tdGhlLXdheSAmJgotCXRlc3QgLWYgZGlyfnJlbmFtZWQtZmlsZS1oYXMtbm8tY29uZmxpY3RzICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgZGlyL2ZpbGUtaW4tdGhlLXdheSAmJgorCXRlc3RfcGF0aF9pc19maWxlIGRpcn5yZW5hbWVkLWZpbGUtaGFzLW5vLWNvbmZsaWN0cyAmJgogCXRlc3RfY21wIGV4cGVjdGVkIGRpcn5yZW5hbWVkLWZpbGUtaGFzLW5vLWNvbmZsaWN0cwogJwogCi1jYXQgPmV4cGVjdGVkIDw8XEVPRiAmJgotMQotMgotMwotNAotNQotNgotNwotOAotOQotMTAKLTw8PDw8PDwgSEVBRDpkaXIKLTEyCi09PT09PT09Ci0xMQotPj4+Pj4+PiBkaXItbm90LWluLXdheTpzdWIvZmlsZQotRU9GCi0KIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ1JlbmFtZStEL0YgY29uZmxpY3Q7IHJlbmFtZWQgZmlsZSBjYW5ub3QgbWVyZ2UsIGRpciBub3QgaW4gd2F5JyAnCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCXJtIC1yZiBkaXJ+KiAmJgpAQCAtMzcyLDcgKzM2NywyNCBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmIC0tcXVpZXQgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgZGlmZiAtLWNhY2hlZCAtLXF1aWV0ICYmCiAKLQl0ZXN0IC1mIGRpciAmJgorCXRlc3RfcGF0aF9pc19maWxlIGRpciAmJgorCWNhdCA+ZXhwZWN0ZWQgPDwtXEVPRiAmJgorCTEKKwkyCisJMworCTQKKwk1CisJNgorCTcKKwk4CisJOQorCTEwCisJPDw8PDw8PCBIRUFEOmRpcgorCTEyCisJPT09PT09PQorCTExCisJPj4+Pj4+PiBkaXItbm90LWluLXdheTpzdWIvZmlsZQorCUVPRgogCXRlc3RfY21wIGV4cGVjdGVkIGRpcgogJwogCkBAIC0zOTEsMjkgKzQwMywxMSBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmIC0tcXVpZXQgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgZGlmZiAtLWNhY2hlZCAtLXF1aWV0ICYmCiAKLQl0ZXN0IC1mIGRpci9maWxlLWluLXRoZS13YXkgJiYKLQl0ZXN0IC1mIGRpcn5IRUFEICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgZGlyL2ZpbGUtaW4tdGhlLXdheSAmJgorCXRlc3RfcGF0aF9pc19maWxlIGRpcn5IRUFEICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgZGlyfkhFQUQKICcKIAotY2F0ID5leHBlY3RlZCA8PFxFT0YgJiYKLTEKLTIKLTMKLTQKLTUKLTYKLTcKLTgKLTkKLTEwCi08PDw8PDw8IEhFQUQ6c3ViL2ZpbGUKLTExCi09PT09PT09Ci0xMgotPj4+Pj4+PiByZW5hbWVkLWZpbGUtaGFzLWNvbmZsaWN0czpkaXIKLUVPRgotCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdTYW1lIGFzIHByZXZpb3VzLCBidXQgbWVyZ2VkIG90aGVyIHdheScgJwogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlybSAtcmYgZGlyfiogJiYKQEAgLTQyNyw4ICs0MjEsMjUgQEAKIAl0ZXN0X211c3RfZmFpbCBnaXQgZGlmZiAtLXF1aWV0ICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGRpZmYgLS1jYWNoZWQgLS1xdWlldCAmJgogCi0JdGVzdCAtZiBkaXIvZmlsZS1pbi10aGUtd2F5ICYmCi0JdGVzdCAtZiBkaXJ+cmVuYW1lZC1maWxlLWhhcy1jb25mbGljdHMgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBkaXIvZmlsZS1pbi10aGUtd2F5ICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgZGlyfnJlbmFtZWQtZmlsZS1oYXMtY29uZmxpY3RzICYmCisJY2F0ID5leHBlY3RlZCA8PC1cRU9GICYmCisJMQorCTIKKwkzCisJNAorCTUKKwk2CisJNworCTgKKwk5CisJMTAKKwk8PDw8PDw8IEhFQUQ6c3ViL2ZpbGUKKwkxMQorCT09PT09PT0KKwkxMgorCT4+Pj4+Pj4gcmVuYW1lZC1maWxlLWhhcy1jb25mbGljdHM6ZGlyCisJRU9GCiAJdGVzdF9jbXAgZXhwZWN0ZWQgZGlyfnJlbmFtZWQtZmlsZS1oYXMtY29uZmxpY3RzCiAnCiAKQEAgLTQ2NCw5ICs0NzUsOSBAQAogCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGRpZmYgLS1xdWlldCAmJgogCi0JdGVzdCAtZiBkZXN0ZGlyL2ZvbyAmJgotCXRlc3QgLWYgb25lICYmCi0JdGVzdCAtZiBkZXN0ZGlyfkhFQUQgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBkZXN0ZGlyL2ZvbyAmJgorCXRlc3RfcGF0aF9pc19maWxlIG9uZSAmJgorCXRlc3RfcGF0aF9pc19maWxlIGRlc3RkaXJ+SEVBRCAmJgogCXRlc3QgInN0dWZmIiA9ICIkKGNhdCBkZXN0ZGlyfkhFQUQpIgogJwogCkBAIC01MDcsOSArNTE4LDkgQEAKIAogCXRlc3QgNCAtZXEgJChmaW5kIC4gfCBncmVwIC12IC5naXQgfCB3YyAtbCkgJiYKIAotCXRlc3QgLWQgb25lICYmCi0JdGVzdCAtZiBvbmV+cmVuYW1lLXR3byAmJgotCXRlc3QgLWYgdHdvICYmCisJdGVzdF9wYXRoX2lzX2RpciBvbmUgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBvbmV+cmVuYW1lLXR3byAmJgorCXRlc3RfcGF0aF9pc19maWxlIHR3byAmJgogCXRlc3QgIm90aGVyIiA9ICQoY2F0IG9uZX5yZW5hbWUtdHdvKSAmJgogCXRlc3QgInN0dWZmIiA9ICQoY2F0IHR3bykKICcKQEAgLTUyNyw4ICs1MzgsOCBAQAogCiAJdGVzdCAzIC1lcSAkKGZpbmQgLiB8IGdyZXAgLXYgLmdpdCB8IHdjIC1sKSAmJgogCi0JdGVzdCAtZiBvbmUgJiYKLQl0ZXN0IC1mIHR3byAmJgorCXRlc3RfcGF0aF9pc19maWxlIG9uZSAmJgorCXRlc3RfcGF0aF9pc19maWxlIHR3byAmJgogCXRlc3QgIm90aGVyIiA9ICQoY2F0IG9uZSkgJiYKIAl0ZXN0ICJzdHVmZiIgPSAkKGNhdCB0d28pCiAnCkBAIC01NjgsMTEgKzU3OSwxMSBAQAogCXRlc3QgMSAtZXEgIiQoZ2l0IGxzLWZpbGVzIC11IG9yaWdpbmFsIHwgd2MgLWwpIiAmJgogCXRlc3QgMiAtZXEgIiQoZ2l0IGxzLWZpbGVzIC1vIHwgd2MgLWwpIiAmJgogCi0JdGVzdCAtZiBvbmUvZmlsZSAmJgotCXRlc3QgLWYgdHdvL2ZpbGUgJiYKLQl0ZXN0IC1mIG9uZX5IRUFEICYmCi0JdGVzdCAtZiB0d29+c2Vjb25kLXJlbmFtZSAmJgotCSEgdGVzdCAtZiBvcmlnaW5hbAorCXRlc3RfcGF0aF9pc19maWxlIG9uZS9maWxlICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgdHdvL2ZpbGUgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBvbmV+SEVBRCAmJgorCXRlc3RfcGF0aF9pc19maWxlIHR3b35zZWNvbmQtcmVuYW1lICYmCisJdGVzdF9wYXRoX2lzX21pc3Npbmcgb3JpZ2luYWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgcmVuYW1lIG9uZSBmaWxlIHRvIHR3bzsgZGlyZWN0b3JpZXMgbW92aW5nIG91dCBvZiB0aGUgd2F5JyAnCkBAIC02MDcsOSArNjE4LDkgQEAKIAl0ZXN0IDEgLWVxICIkKGdpdCBscy1maWxlcyAtdSBvcmlnaW5hbCB8IHdjIC1sKSIgJiYKIAl0ZXN0IDAgLWVxICIkKGdpdCBscy1maWxlcyAtbyB8IHdjIC1sKSIgJiYKIAotCXRlc3QgLWYgb25lICYmCi0JdGVzdCAtZiB0d28gJiYKLQkhIHRlc3QgLWYgb3JpZ2luYWwKKwl0ZXN0X3BhdGhfaXNfZmlsZSBvbmUgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSB0d28gJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBvcmlnaW5hbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBhdm9pZCB1bm5lY2Vzc2FyeSB1cGRhdGUsIG5vcm1hbCByZW5hbWUnICcKQEAgLTYzNSw3ICs2NDYsNyBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhdm9pZCB1bm5lY2Vzc2FyeSB1cGRhdGUsIG5vcm1hbCByZW5hbWUnICcKIAlnaXQgY2hlY2tvdXQgLXEgYXZvaWQtdW5uZWNlc3NhcnktdXBkYXRlLTFeMCAmJgotCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0ID0xMDAwMDAwMDAwIHJlbmFtZSA+ZXhwZWN0ICYmCisJdGVzdC10b29sIGNobXRpbWUgLS1nZXQgLTM2MDAgcmVuYW1lID5leHBlY3QgJiYKIAlnaXQgbWVyZ2UgbWVyZ2UtYnJhbmNoLTEgJiYKIAl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCByZW5hbWUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgIyAicmVuYW1lIiBzaG91bGQgaGF2ZSBzdGF5ZWQgaW50YWN0CkBAIC02NjcsNyArNjc4LDcgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYXZvaWQgdW5uZWNlc3NhcnkgdXBkYXRlLCB3aXRoIEQvRiBjb25mbGljdCcgJwogCWdpdCBjaGVja291dCAtcSBhdm9pZC11bm5lY2Vzc2FyeS11cGRhdGUtMl4wICYmCi0JdGVzdC10b29sIGNobXRpbWUgLS1nZXQgPTEwMDAwMDAwMDAgZGYgPmV4cGVjdCAmJgorCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0IC0zNjAwIGRmID5leHBlY3QgJiYKIAlnaXQgbWVyZ2UgbWVyZ2UtYnJhbmNoLTIgJiYKIAl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCBkZiA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAjICJkZiIgc2hvdWxkIGhhdmUgc3RheWVkIGludGFjdApAQCAtNjk4LDcgKzcwOSw3IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2F2b2lkIHVubmVjZXNzYXJ5IHVwZGF0ZSwgZGlyLT4oZmlsZSxub3RoaW5nKScgJwogCWdpdCBjaGVja291dCAtcSBtYXN0ZXJeMCAmJgotCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0ID0xMDAwMDAwMDAwIGRmID5leHBlY3QgJiYKKwl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCAtMzYwMCBkZiA+ZXhwZWN0ICYmCiAJZ2l0IG1lcmdlIHNpZGUgJiYKIAl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCBkZiA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAjICJkZiIgc2hvdWxkIGhhdmUgc3RheWVkIGludGFjdApAQCAtNzI3LDcgKzczOCw3IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2F2b2lkIHVubmVjZXNzYXJ5IHVwZGF0ZSwgbW9kaWZ5L2RlbGV0ZScgJwogCWdpdCBjaGVja291dCAtcSBtYXN0ZXJeMCAmJgotCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0ID0xMDAwMDAwMDAwIGZpbGUgPmV4cGVjdCAmJgorCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0IC0zNjAwIGZpbGUgPmV4cGVjdCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBzaWRlICYmCiAJdGVzdC10b29sIGNobXRpbWUgLS1nZXQgZmlsZSA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAjICJmaWxlIiBzaG91bGQgaGF2ZSBzdGF5ZWQgaW50YWN0CkBAIC03NTUsNyArNzY2LDcgQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYXZvaWQgdW5uZWNlc3NhcnkgdXBkYXRlLCByZW5hbWUvYWRkLWRlc3QnICcKIAlnaXQgY2hlY2tvdXQgLXEgbWFzdGVyXjAgJiYKLQl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCA9MTAwMDAwMDAwMCBuZXdmaWxlID5leHBlY3QgJiYKKwl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCAtMzYwMCBuZXdmaWxlID5leHBlY3QgJiYKIAlnaXQgbWVyZ2Ugc2lkZSAmJgogCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0IG5ld2ZpbGUgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgIyAiZmlsZSIgc2hvdWxkIGhhdmUgc3RheWVkIGludGFjdApAQCAtODEwLDQ4ICs4MjEsNDggQEAKIAlnaXQgY29tbWl0IC1tQwogJwogCi1jYXQgPmV4cGVjdGVkIDw8XEVPRiAmJgotMQotMgotMwotNAotNQotNgotNwotOAotPDw8PDw8PCBIRUFEOnJlbmFtZWRfZmlsZQotOQotPT09PT09PQotOC41Ci0+Pj4+Pj4+IG1hc3Rlcl4wOm9yaWdpbmFsX2ZpbGUKLUVPRgotCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtZXJnZSBtYXN0ZXIgaW50byByZW5hbWUgaGFzIGNvcnJlY3QgZXh0ZW5kZWQgbWFya2VycycgJwogCWdpdCBjaGVja291dCByZW5hbWVeMCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgbWFzdGVyXjAgJiYKKworCWNhdCA+ZXhwZWN0ZWQgPDwtXEVPRiAmJgorCTEKKwkyCisJMworCTQKKwk1CisJNgorCTcKKwk4CisJPDw8PDw8PCBIRUFEOnJlbmFtZWRfZmlsZQorCTkKKwk9PT09PT09CisJOC41CisJPj4+Pj4+PiBtYXN0ZXJeMDpvcmlnaW5hbF9maWxlCisJRU9GCiAJdGVzdF9jbXAgZXhwZWN0ZWQgcmVuYW1lZF9maWxlCiAnCiAKLWNhdCA+ZXhwZWN0ZWQgPDxcRU9GICYmCi0xCi0yCi0zCi00Ci01Ci02Ci03Ci04Ci08PDw8PDw8IEhFQUQ6b3JpZ2luYWxfZmlsZQotOC41Ci09PT09PT09Ci05Ci0+Pj4+Pj4+IHJlbmFtZV4wOnJlbmFtZWRfZmlsZQotRU9GCi0KIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21lcmdlIHJlbmFtZSBpbnRvIG1hc3RlciBoYXMgY29ycmVjdCBleHRlbmRlZCBtYXJrZXJzJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWdpdCBjaGVja291dCBtYXN0ZXJeMCAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgcmVuYW1lXjAgJiYKKworCWNhdCA+ZXhwZWN0ZWQgPDwtXEVPRiAmJgorCTEKKwkyCisJMworCTQKKwk1CisJNgorCTcKKwk4CisJPDw8PDw8PCBIRUFEOm9yaWdpbmFsX2ZpbGUKKwk4LjUKKwk9PT09PT09CisJOQorCT4+Pj4+Pj4gcmVuYW1lXjA6cmVuYW1lZF9maWxlCisJRU9GCiAJdGVzdF9jbXAgZXhwZWN0ZWQgcmVuYW1lZF9maWxlCiAnCiAKZGlmZiAtLWdpdCBhL3QvdDYwMjMtbWVyZ2UtZmlsZS5zaCBiL3QvdDYwMjMtbWVyZ2UtZmlsZS5zaAppbmRleCA1MWVlODg3Li4yZjQyMWQ5IDEwMDc1NQotLS0gYS90L3Q2MDIzLW1lcmdlLWZpbGUuc2gKKysrIGIvdC90NjAyMy1tZXJnZS1maWxlLnNoCkBAIC0zLDU2ICszLDU5IEBACiB0ZXN0X2Rlc2NyaXB0aW9uPSdSQ1MgbWVyZ2UgcmVwbGFjZW1lbnQ6IG1lcmdlLWZpbGUnCiAuIC4vdGVzdC1saWIuc2gKIAotY2F0ID4gb3JpZy50eHQgPDwgRU9GCi1Eb21pbnVzIHJlZ2l0IG1lLAotZXQgbmloaWwgbWloaSBkZWVyaXQuCi1JbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQsCi1zdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZTsKLWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKLWRlZHV4aXQgbWUgc3VwZXIgc2VtaXRhcyBqdXNpdGlhZSwKLXByb3B0ZXIgbm9tZW4gc3V1bS4KLUVPRgordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICcKKwljYXQgPm9yaWcudHh0IDw8LVxFT0YgJiYKKwlEb21pbnVzIHJlZ2l0IG1lLAorCWV0IG5paGlsIG1paGkgZGVlcml0LgorCUluIGxvY28gcGFzY3VhZSBpYmkgbWUgY29sbG9jYXZpdCwKKwlzdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZTsKKwlhbmltYW0gbWVhbSBjb252ZXJ0aXQsCisJZGVkdXhpdCBtZSBzdXBlciBzZW1pdGFzIGp1c2l0aWFlLAorCXByb3B0ZXIgbm9tZW4gc3V1bS4KKwlFT0YKIAotY2F0ID4gbmV3MS50eHQgPDwgRU9GCi1Eb21pbnVzIHJlZ2l0IG1lLAotZXQgbmloaWwgbWloaSBkZWVyaXQuCi1JbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQsCi1zdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZTsKLWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKLWRlZHV4aXQgbWUgc3VwZXIgc2VtaXRhcyBqdXNpdGlhZSwKLXByb3B0ZXIgbm9tZW4gc3V1bS4KLU5hbSBldCBzaSBhbWJ1bGF2ZXJvIGluIG1lZGlvIHVtYnJhZSBtb3J0aXMsCi1ub24gdGltZWJvIG1hbGEsIHF1b25pYW0gdHUgbWVjdW0gZXM6Ci12aXJnYSB0dWEgZXQgYmFjdWx1cyB0dXVzIGlwc2EgbWUgY29uc29sYXRhIHN1bnQuCi1FT0YKKwljYXQgPm5ldzEudHh0IDw8LVxFT0YgJiYKKwlEb21pbnVzIHJlZ2l0IG1lLAorCWV0IG5paGlsIG1paGkgZGVlcml0LgorCUluIGxvY28gcGFzY3VhZSBpYmkgbWUgY29sbG9jYXZpdCwKKwlzdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZTsKKwlhbmltYW0gbWVhbSBjb252ZXJ0aXQsCisJZGVkdXhpdCBtZSBzdXBlciBzZW1pdGFzIGp1c2l0aWFlLAorCXByb3B0ZXIgbm9tZW4gc3V1bS4KKwlOYW0gZXQgc2kgYW1idWxhdmVybyBpbiBtZWRpbyB1bWJyYWUgbW9ydGlzLAorCW5vbiB0aW1lYm8gbWFsYSwgcXVvbmlhbSB0dSBtZWN1bSBlczoKKwl2aXJnYSB0dWEgZXQgYmFjdWx1cyB0dXVzIGlwc2EgbWUgY29uc29sYXRhIHN1bnQuCisJRU9GCiAKLWNhdCA+IG5ldzIudHh0IDw8IEVPRgotRG9taW51cyByZWdpdCBtZSwgZXQgbmloaWwgbWloaSBkZWVyaXQuCi1JbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQsCi1zdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZTsKLWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKLWRlZHV4aXQgbWUgc3VwZXIgc2VtaXRhcyBqdXNpdGlhZSwKLXByb3B0ZXIgbm9tZW4gc3V1bS4KLUVPRgorCWNhdCA+bmV3Mi50eHQgPDwtXEVPRiAmJgorCURvbWludXMgcmVnaXQgbWUsIGV0IG5paGlsIG1paGkgZGVlcml0LgorCUluIGxvY28gcGFzY3VhZSBpYmkgbWUgY29sbG9jYXZpdCwKKwlzdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZTsKKwlhbmltYW0gbWVhbSBjb252ZXJ0aXQsCisJZGVkdXhpdCBtZSBzdXBlciBzZW1pdGFzIGp1c2l0aWFlLAorCXByb3B0ZXIgbm9tZW4gc3V1bS4KKwlFT0YKIAotY2F0ID4gbmV3My50eHQgPDwgRU9GCi1ET01JTlVTIHJlZ2l0IG1lLAotZXQgbmloaWwgbWloaSBkZWVyaXQuCi1JbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQsCi1zdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZTsKLWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKLWRlZHV4aXQgbWUgc3VwZXIgc2VtaXRhcyBqdXNpdGlhZSwKLXByb3B0ZXIgbm9tZW4gc3V1bS4KLUVPRgorCWNhdCA+bmV3My50eHQgPDwtXEVPRiAmJgorCURPTUlOVVMgcmVnaXQgbWUsCisJZXQgbmloaWwgbWloaSBkZWVyaXQuCisJSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0LAorCXN1cGVyIGFxdWFtIHJlZmVjdGlvbmlzIGVkdWNhdml0IG1lOworCWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKKwlkZWR1eGl0IG1lIHN1cGVyIHNlbWl0YXMganVzaXRpYWUsCisJcHJvcHRlciBub21lbiBzdXVtLgorCUVPRgogCi1jYXQgPiBuZXc0LnR4dCA8PCBFT0YKLURvbWludXMgcmVnaXQgbWUsIGV0IG5paGlsIG1paGkgZGVlcml0LgotSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0LAotc3VwZXIgYXF1YW0gcmVmZWN0aW9uaXMgZWR1Y2F2aXQgbWU7Ci1hbmltYW0gbWVhbSBjb252ZXJ0aXQsCi1kZWR1eGl0IG1lIHN1cGVyIHNlbWl0YXMganVzaXRpYWUsCi1FT0YKLXByaW50ZiAicHJvcHRlciBub21lbiBzdXVtLiIgPj4gbmV3NC50eHQKKwljYXQgPm5ldzQudHh0IDw8LVxFT0YgJiYKKwlEb21pbnVzIHJlZ2l0IG1lLCBldCBuaWhpbCBtaWhpIGRlZXJpdC4KKwlJbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQsCisJc3VwZXIgYXF1YW0gcmVmZWN0aW9uaXMgZWR1Y2F2aXQgbWU7CisJYW5pbWFtIG1lYW0gY29udmVydGl0LAorCWRlZHV4aXQgbWUgc3VwZXIgc2VtaXRhcyBqdXNpdGlhZSwKKwlFT0YKKworCXByaW50ZiAicHJvcHRlciBub21lbiBzdXVtLiIgPj5uZXc0LnR4dAorJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtZXJnZSB3aXRoIG5vIGNoYW5nZXMnICcKIAljcCBvcmlnLnR4dCB0ZXN0LnR4dCAmJgpAQCAtNjAsOSArNjMsMTAgQEAKIAl0ZXN0X2NtcCB0ZXN0LnR4dCBvcmlnLnR4dAogJwogCi1jcCBuZXcxLnR4dCB0ZXN0LnR4dAotdGVzdF9leHBlY3Rfc3VjY2VzcyAibWVyZ2Ugd2l0aG91dCBjb25mbGljdCIgXAotCSJnaXQgbWVyZ2UtZmlsZSB0ZXN0LnR4dCBvcmlnLnR4dCBuZXcyLnR4dCIKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgIm1lcmdlIHdpdGhvdXQgY29uZmxpY3QiICcKKwljcCBuZXcxLnR4dCB0ZXN0LnR4dCAmJgorCWdpdCBtZXJnZS1maWxlIHRlc3QudHh0IG9yaWcudHh0IG5ldzIudHh0CisnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dvcmtzIGluIHN1YmRpcmVjdG9yeScgJwogCW1rZGlyIGRpciAmJgpAQCAtNzMsMTUxICs3NywxNzYgQEAKIAl0ZXN0X3BhdGhfaXNfbWlzc2luZyBhLnR4dAogJwogCi1jcCBuZXcxLnR4dCB0ZXN0LnR4dAotdGVzdF9leHBlY3Rfc3VjY2VzcyAibWVyZ2Ugd2l0aG91dCBjb25mbGljdCAoLS1xdWlldCkiIFwKLQkiZ2l0IG1lcmdlLWZpbGUgLS1xdWlldCB0ZXN0LnR4dCBvcmlnLnR4dCBuZXcyLnR4dCIKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgIm1lcmdlIHdpdGhvdXQgY29uZmxpY3QgKC0tcXVpZXQpIiAnCisJY3AgbmV3MS50eHQgdGVzdC50eHQgJiYKKwlnaXQgbWVyZ2UtZmlsZSAtLXF1aWV0IHRlc3QudHh0IG9yaWcudHh0IG5ldzIudHh0CisnCiAKLWNwIG5ldzEudHh0IHRlc3QyLnR4dAotdGVzdF9leHBlY3RfZmFpbHVyZSAibWVyZ2Ugd2l0aG91dCBjb25mbGljdCAobWlzc2luZyBMRiBhdCBFT0YpIiBcCi0JImdpdCBtZXJnZS1maWxlIHRlc3QyLnR4dCBvcmlnLnR4dCBuZXc0LnR4dCIKK3Rlc3RfZXhwZWN0X2ZhaWx1cmUgIm1lcmdlIHdpdGhvdXQgY29uZmxpY3QgKG1pc3NpbmcgTEYgYXQgRU9GKSIgJworCWNwIG5ldzEudHh0IHRlc3QyLnR4dCAmJgorCWdpdCBtZXJnZS1maWxlIHRlc3QyLnR4dCBvcmlnLnR4dCBuZXc0LnR4dAorJwogCi10ZXN0X2V4cGVjdF9mYWlsdXJlICJtZXJnZSByZXN1bHQgYWRkZWQgbWlzc2luZyBMRiIgXAotCSJ0ZXN0X2NtcCB0ZXN0LnR4dCB0ZXN0Mi50eHQiCit0ZXN0X2V4cGVjdF9mYWlsdXJlICJtZXJnZSByZXN1bHQgYWRkZWQgbWlzc2luZyBMRiIgJworCXRlc3RfY21wIHRlc3QudHh0IHRlc3QyLnR4dAorJwogCi1jcCBuZXc0LnR4dCB0ZXN0My50eHQKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgIm1lcmdlIHdpdGhvdXQgY29uZmxpY3QgKG1pc3NpbmcgTEYgYXQgRU9GLCBhd2F5IGZyb20gY2hhbmdlIGluIHRoZSBvdGhlciBmaWxlKSIgXAotCSJnaXQgbWVyZ2UtZmlsZSAtLXF1aWV0IHRlc3QzLnR4dCBuZXcyLnR4dCBuZXczLnR4dCIKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgIm1lcmdlIHdpdGhvdXQgY29uZmxpY3QgKG1pc3NpbmcgTEYgYXQgRU9GLCBhd2F5IGZyb20gY2hhbmdlIGluIHRoZSBvdGhlciBmaWxlKSIgJworCWNwIG5ldzQudHh0IHRlc3QzLnR4dCAmJgorCWdpdCBtZXJnZS1maWxlIC0tcXVpZXQgdGVzdDMudHh0IG5ldzIudHh0IG5ldzMudHh0CisnCiAKLWNhdCA+IGV4cGVjdC50eHQgPDwgRU9GCi1ET01JTlVTIHJlZ2l0IG1lLAotZXQgbmloaWwgbWloaSBkZWVyaXQuCi1JbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQsCi1zdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZTsKLWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKLWRlZHV4aXQgbWUgc3VwZXIgc2VtaXRhcyBqdXNpdGlhZSwKLUVPRgotcHJpbnRmICJwcm9wdGVyIG5vbWVuIHN1dW0uIiA+PiBleHBlY3QudHh0Cit0ZXN0X2V4cGVjdF9zdWNjZXNzICJtZXJnZSBkb2VzIG5vdCBhZGQgTEYgYXdheSBvZiBjaGFuZ2UiICcKKwljYXQgPmV4cGVjdC50eHQgPDwtXEVPRiAmJgorCURPTUlOVVMgcmVnaXQgbWUsCisJZXQgbmloaWwgbWloaSBkZWVyaXQuCisJSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0LAorCXN1cGVyIGFxdWFtIHJlZmVjdGlvbmlzIGVkdWNhdml0IG1lOworCWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKKwlkZWR1eGl0IG1lIHN1cGVyIHNlbWl0YXMganVzaXRpYWUsCisJRU9GCisJcHJpbnRmICJwcm9wdGVyIG5vbWVuIHN1dW0uIiA+PmV4cGVjdC50eHQgJiYKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAibWVyZ2UgZG9lcyBub3QgYWRkIExGIGF3YXkgb2YgY2hhbmdlIiBcCi0JInRlc3RfY21wIGV4cGVjdC50eHQgdGVzdDMudHh0IgorCXRlc3RfY21wIGV4cGVjdC50eHQgdGVzdDMudHh0CisnCiAKLWNwIHRlc3QudHh0IGJhY2t1cC50eHQKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgIm1lcmdlIHdpdGggY29uZmxpY3RzIiBcCi0JInRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZS1maWxlIHRlc3QudHh0IG9yaWcudHh0IG5ldzMudHh0IgordGVzdF9leHBlY3Rfc3VjY2VzcyAibWVyZ2Ugd2l0aCBjb25mbGljdHMiICcKKwljcCB0ZXN0LnR4dCBiYWNrdXAudHh0ICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgdGVzdC50eHQgb3JpZy50eHQgbmV3My50eHQKKycKIAotY2F0ID4gZXhwZWN0LnR4dCA8PCBFT0YKLTw8PDw8PDwgdGVzdC50eHQKLURvbWludXMgcmVnaXQgbWUsIGV0IG5paGlsIG1paGkgZGVlcml0LgotPT09PT09PQotRE9NSU5VUyByZWdpdCBtZSwKLWV0IG5paGlsIG1paGkgZGVlcml0LgotPj4+Pj4+PiBuZXczLnR4dAotSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0LAotc3VwZXIgYXF1YW0gcmVmZWN0aW9uaXMgZWR1Y2F2aXQgbWU7Ci1hbmltYW0gbWVhbSBjb252ZXJ0aXQsCi1kZWR1eGl0IG1lIHN1cGVyIHNlbWl0YXMganVzaXRpYWUsCi1wcm9wdGVyIG5vbWVuIHN1dW0uCi1OYW0gZXQgc2kgYW1idWxhdmVybyBpbiBtZWRpbyB1bWJyYWUgbW9ydGlzLAotbm9uIHRpbWVibyBtYWxhLCBxdW9uaWFtIHR1IG1lY3VtIGVzOgotdmlyZ2EgdHVhIGV0IGJhY3VsdXMgdHV1cyBpcHNhIG1lIGNvbnNvbGF0YSBzdW50LgotRU9GCit0ZXN0X2V4cGVjdF9zdWNjZXNzICJleHBlY3RlZCBjb25mbGljdCBtYXJrZXJzIiAnCisJY2F0ID5leHBlY3QudHh0IDw8LVxFT0YgJiYKKwk8PDw8PDw8IHRlc3QudHh0CisJRG9taW51cyByZWdpdCBtZSwgZXQgbmloaWwgbWloaSBkZWVyaXQuCisJPT09PT09PQorCURPTUlOVVMgcmVnaXQgbWUsCisJZXQgbmloaWwgbWloaSBkZWVyaXQuCisJPj4+Pj4+PiBuZXczLnR4dAorCUluIGxvY28gcGFzY3VhZSBpYmkgbWUgY29sbG9jYXZpdCwKKwlzdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZTsKKwlhbmltYW0gbWVhbSBjb252ZXJ0aXQsCisJZGVkdXhpdCBtZSBzdXBlciBzZW1pdGFzIGp1c2l0aWFlLAorCXByb3B0ZXIgbm9tZW4gc3V1bS4KKwlOYW0gZXQgc2kgYW1idWxhdmVybyBpbiBtZWRpbyB1bWJyYWUgbW9ydGlzLAorCW5vbiB0aW1lYm8gbWFsYSwgcXVvbmlhbSB0dSBtZWN1bSBlczoKKwl2aXJnYSB0dWEgZXQgYmFjdWx1cyB0dXVzIGlwc2EgbWUgY29uc29sYXRhIHN1bnQuCisJRU9GCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgImV4cGVjdGVkIGNvbmZsaWN0IG1hcmtlcnMiICJ0ZXN0X2NtcCBleHBlY3QudHh0IHRlc3QudHh0IgorCXRlc3RfY21wIGV4cGVjdC50eHQgdGVzdC50eHQKKycKIAotY3AgYmFja3VwLnR4dCB0ZXN0LnR4dAordGVzdF9leHBlY3Rfc3VjY2VzcyAibWVyZ2UgY29uZmxpY3Rpbmcgd2l0aCAtLW91cnMiICcKKwljcCBiYWNrdXAudHh0IHRlc3QudHh0ICYmCiAKLWNhdCA+IGV4cGVjdC50eHQgPDwgRU9GCi1Eb21pbnVzIHJlZ2l0IG1lLCBldCBuaWhpbCBtaWhpIGRlZXJpdC4KLUluIGxvY28gcGFzY3VhZSBpYmkgbWUgY29sbG9jYXZpdCwKLXN1cGVyIGFxdWFtIHJlZmVjdGlvbmlzIGVkdWNhdml0IG1lOwotYW5pbWFtIG1lYW0gY29udmVydGl0LAotZGVkdXhpdCBtZSBzdXBlciBzZW1pdGFzIGp1c2l0aWFlLAotcHJvcHRlciBub21lbiBzdXVtLgotTmFtIGV0IHNpIGFtYnVsYXZlcm8gaW4gbWVkaW8gdW1icmFlIG1vcnRpcywKLW5vbiB0aW1lYm8gbWFsYSwgcXVvbmlhbSB0dSBtZWN1bSBlczoKLXZpcmdhIHR1YSBldCBiYWN1bHVzIHR1dXMgaXBzYSBtZSBjb25zb2xhdGEgc3VudC4KLUVPRgotdGVzdF9leHBlY3Rfc3VjY2VzcyAibWVyZ2UgY29uZmxpY3Rpbmcgd2l0aCAtLW91cnMiIFwKLQkiZ2l0IG1lcmdlLWZpbGUgLS1vdXJzIHRlc3QudHh0IG9yaWcudHh0IG5ldzMudHh0ICYmIHRlc3RfY21wIGV4cGVjdC50eHQgdGVzdC50eHQiCi1jcCBiYWNrdXAudHh0IHRlc3QudHh0CisJY2F0ID5leHBlY3QudHh0IDw8LVxFT0YgJiYKKwlEb21pbnVzIHJlZ2l0IG1lLCBldCBuaWhpbCBtaWhpIGRlZXJpdC4KKwlJbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQsCisJc3VwZXIgYXF1YW0gcmVmZWN0aW9uaXMgZWR1Y2F2aXQgbWU7CisJYW5pbWFtIG1lYW0gY29udmVydGl0LAorCWRlZHV4aXQgbWUgc3VwZXIgc2VtaXRhcyBqdXNpdGlhZSwKKwlwcm9wdGVyIG5vbWVuIHN1dW0uCisJTmFtIGV0IHNpIGFtYnVsYXZlcm8gaW4gbWVkaW8gdW1icmFlIG1vcnRpcywKKwlub24gdGltZWJvIG1hbGEsIHF1b25pYW0gdHUgbWVjdW0gZXM6CisJdmlyZ2EgdHVhIGV0IGJhY3VsdXMgdHV1cyBpcHNhIG1lIGNvbnNvbGF0YSBzdW50LgorCUVPRgogCi1jYXQgPiBleHBlY3QudHh0IDw8IEVPRgotRE9NSU5VUyByZWdpdCBtZSwKLWV0IG5paGlsIG1paGkgZGVlcml0LgotSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0LAotc3VwZXIgYXF1YW0gcmVmZWN0aW9uaXMgZWR1Y2F2aXQgbWU7Ci1hbmltYW0gbWVhbSBjb252ZXJ0aXQsCi1kZWR1eGl0IG1lIHN1cGVyIHNlbWl0YXMganVzaXRpYWUsCi1wcm9wdGVyIG5vbWVuIHN1dW0uCi1OYW0gZXQgc2kgYW1idWxhdmVybyBpbiBtZWRpbyB1bWJyYWUgbW9ydGlzLAotbm9uIHRpbWVibyBtYWxhLCBxdW9uaWFtIHR1IG1lY3VtIGVzOgotdmlyZ2EgdHVhIGV0IGJhY3VsdXMgdHV1cyBpcHNhIG1lIGNvbnNvbGF0YSBzdW50LgotRU9GCi10ZXN0X2V4cGVjdF9zdWNjZXNzICJtZXJnZSBjb25mbGljdGluZyB3aXRoIC0tdGhlaXJzIiBcCi0JImdpdCBtZXJnZS1maWxlIC0tdGhlaXJzIHRlc3QudHh0IG9yaWcudHh0IG5ldzMudHh0ICYmIHRlc3RfY21wIGV4cGVjdC50eHQgdGVzdC50eHQiCi1jcCBiYWNrdXAudHh0IHRlc3QudHh0CisJZ2l0IG1lcmdlLWZpbGUgLS1vdXJzIHRlc3QudHh0IG9yaWcudHh0IG5ldzMudHh0ICYmCisJdGVzdF9jbXAgZXhwZWN0LnR4dCB0ZXN0LnR4dAorJwogCi1jYXQgPiBleHBlY3QudHh0IDw8IEVPRgotRG9taW51cyByZWdpdCBtZSwgZXQgbmloaWwgbWloaSBkZWVyaXQuCi1ET01JTlVTIHJlZ2l0IG1lLAotZXQgbmloaWwgbWloaSBkZWVyaXQuCi1JbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQsCi1zdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZTsKLWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKLWRlZHV4aXQgbWUgc3VwZXIgc2VtaXRhcyBqdXNpdGlhZSwKLXByb3B0ZXIgbm9tZW4gc3V1bS4KLU5hbSBldCBzaSBhbWJ1bGF2ZXJvIGluIG1lZGlvIHVtYnJhZSBtb3J0aXMsCi1ub24gdGltZWJvIG1hbGEsIHF1b25pYW0gdHUgbWVjdW0gZXM6Ci12aXJnYSB0dWEgZXQgYmFjdWx1cyB0dXVzIGlwc2EgbWUgY29uc29sYXRhIHN1bnQuCi1FT0YKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgIm1lcmdlIGNvbmZsaWN0aW5nIHdpdGggLS11bmlvbiIgXAotCSJnaXQgbWVyZ2UtZmlsZSAtLXVuaW9uIHRlc3QudHh0IG9yaWcudHh0IG5ldzMudHh0ICYmIHRlc3RfY21wIGV4cGVjdC50eHQgdGVzdC50eHQiCi1jcCBiYWNrdXAudHh0IHRlc3QudHh0Cit0ZXN0X2V4cGVjdF9zdWNjZXNzICJtZXJnZSBjb25mbGljdGluZyB3aXRoIC0tdGhlaXJzIiAnCisJY3AgYmFja3VwLnR4dCB0ZXN0LnR4dCAmJgogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICJtZXJnZSB3aXRoIGNvbmZsaWN0cywgdXNpbmcgLUwiIFwKLQkidGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgLUwgMSAtTCAyIHRlc3QudHh0IG9yaWcudHh0IG5ldzMudHh0IgorCWNhdCA+ZXhwZWN0LnR4dCA8PC1cRU9GICYmCisJRE9NSU5VUyByZWdpdCBtZSwKKwlldCBuaWhpbCBtaWhpIGRlZXJpdC4KKwlJbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQsCisJc3VwZXIgYXF1YW0gcmVmZWN0aW9uaXMgZWR1Y2F2aXQgbWU7CisJYW5pbWFtIG1lYW0gY29udmVydGl0LAorCWRlZHV4aXQgbWUgc3VwZXIgc2VtaXRhcyBqdXNpdGlhZSwKKwlwcm9wdGVyIG5vbWVuIHN1dW0uCisJTmFtIGV0IHNpIGFtYnVsYXZlcm8gaW4gbWVkaW8gdW1icmFlIG1vcnRpcywKKwlub24gdGltZWJvIG1hbGEsIHF1b25pYW0gdHUgbWVjdW0gZXM6CisJdmlyZ2EgdHVhIGV0IGJhY3VsdXMgdHV1cyBpcHNhIG1lIGNvbnNvbGF0YSBzdW50LgorCUVPRgogCi1jYXQgPiBleHBlY3QudHh0IDw8IEVPRgotPDw8PDw8PCAxCi1Eb21pbnVzIHJlZ2l0IG1lLCBldCBuaWhpbCBtaWhpIGRlZXJpdC4KLT09PT09PT0KLURPTUlOVVMgcmVnaXQgbWUsCi1ldCBuaWhpbCBtaWhpIGRlZXJpdC4KLT4+Pj4+Pj4gbmV3My50eHQKLUluIGxvY28gcGFzY3VhZSBpYmkgbWUgY29sbG9jYXZpdCwKLXN1cGVyIGFxdWFtIHJlZmVjdGlvbmlzIGVkdWNhdml0IG1lOwotYW5pbWFtIG1lYW0gY29udmVydGl0LAotZGVkdXhpdCBtZSBzdXBlciBzZW1pdGFzIGp1c2l0aWFlLAotcHJvcHRlciBub21lbiBzdXVtLgotTmFtIGV0IHNpIGFtYnVsYXZlcm8gaW4gbWVkaW8gdW1icmFlIG1vcnRpcywKLW5vbiB0aW1lYm8gbWFsYSwgcXVvbmlhbSB0dSBtZWN1bSBlczoKLXZpcmdhIHR1YSBldCBiYWN1bHVzIHR1dXMgaXBzYSBtZSBjb25zb2xhdGEgc3VudC4KLUVPRgorCWdpdCBtZXJnZS1maWxlIC0tdGhlaXJzIHRlc3QudHh0IG9yaWcudHh0IG5ldzMudHh0ICYmCisJdGVzdF9jbXAgZXhwZWN0LnR4dCB0ZXN0LnR4dAorJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICJleHBlY3RlZCBjb25mbGljdCBtYXJrZXJzLCB3aXRoIC1MIiBcCi0JInRlc3RfY21wIGV4cGVjdC50eHQgdGVzdC50eHQiCit0ZXN0X2V4cGVjdF9zdWNjZXNzICJtZXJnZSBjb25mbGljdGluZyB3aXRoIC0tdW5pb24iICcKKwljcCBiYWNrdXAudHh0IHRlc3QudHh0ICYmCiAKLXNlZCAicy8gdHUgLyBUVSAvIiA8IG5ldzEudHh0ID4gbmV3NS50eHQKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgImNvbmZsaWN0IGluIHJlbW92ZWQgdGFpbCIgXAotCSJ0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UtZmlsZSAtcCBvcmlnLnR4dCBuZXcxLnR4dCBuZXc1LnR4dCA+IG91dCIKKwljYXQgPmV4cGVjdC50eHQgPDwtXEVPRiAmJgorCURvbWludXMgcmVnaXQgbWUsIGV0IG5paGlsIG1paGkgZGVlcml0LgorCURPTUlOVVMgcmVnaXQgbWUsCisJZXQgbmloaWwgbWloaSBkZWVyaXQuCisJSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0LAorCXN1cGVyIGFxdWFtIHJlZmVjdGlvbmlzIGVkdWNhdml0IG1lOworCWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKKwlkZWR1eGl0IG1lIHN1cGVyIHNlbWl0YXMganVzaXRpYWUsCisJcHJvcHRlciBub21lbiBzdXVtLgorCU5hbSBldCBzaSBhbWJ1bGF2ZXJvIGluIG1lZGlvIHVtYnJhZSBtb3J0aXMsCisJbm9uIHRpbWVibyBtYWxhLCBxdW9uaWFtIHR1IG1lY3VtIGVzOgorCXZpcmdhIHR1YSBldCBiYWN1bHVzIHR1dXMgaXBzYSBtZSBjb25zb2xhdGEgc3VudC4KKwlFT0YKIAotY2F0ID4gZXhwZWN0IDw8IEVPRgotRG9taW51cyByZWdpdCBtZSwKLWV0IG5paGlsIG1paGkgZGVlcml0LgotSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0LAotc3VwZXIgYXF1YW0gcmVmZWN0aW9uaXMgZWR1Y2F2aXQgbWU7Ci1hbmltYW0gbWVhbSBjb252ZXJ0aXQsCi1kZWR1eGl0IG1lIHN1cGVyIHNlbWl0YXMganVzaXRpYWUsCi1wcm9wdGVyIG5vbWVuIHN1dW0uCi08PDw8PDw8IG9yaWcudHh0Ci09PT09PT09Ci1OYW0gZXQgc2kgYW1idWxhdmVybyBpbiBtZWRpbyB1bWJyYWUgbW9ydGlzLAotbm9uIHRpbWVibyBtYWxhLCBxdW9uaWFtIFRVIG1lY3VtIGVzOgotdmlyZ2EgdHVhIGV0IGJhY3VsdXMgdHV1cyBpcHNhIG1lIGNvbnNvbGF0YSBzdW50LgotPj4+Pj4+PiBuZXc1LnR4dAotRU9GCisJZ2l0IG1lcmdlLWZpbGUgLS11bmlvbiB0ZXN0LnR4dCBvcmlnLnR4dCBuZXczLnR4dCAmJgorCXRlc3RfY21wIGV4cGVjdC50eHQgdGVzdC50eHQKKycKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAiZXhwZWN0ZWQgY29uZmxpY3QgbWFya2VycyIgInRlc3RfY21wIGV4cGVjdCBvdXQiCit0ZXN0X2V4cGVjdF9zdWNjZXNzICJtZXJnZSB3aXRoIGNvbmZsaWN0cywgdXNpbmcgLUwiICcKKwljcCBiYWNrdXAudHh0IHRlc3QudHh0ICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UtZmlsZSAtTCAxIC1MIDIgdGVzdC50eHQgb3JpZy50eHQgbmV3My50eHQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAiZXhwZWN0ZWQgY29uZmxpY3QgbWFya2Vycywgd2l0aCAtTCIgJworCWNhdCA+ZXhwZWN0LnR4dCA8PC1cRU9GICYmCisJPDw8PDw8PCAxCisJRG9taW51cyByZWdpdCBtZSwgZXQgbmloaWwgbWloaSBkZWVyaXQuCisJPT09PT09PQorCURPTUlOVVMgcmVnaXQgbWUsCisJZXQgbmloaWwgbWloaSBkZWVyaXQuCisJPj4+Pj4+PiBuZXczLnR4dAorCUluIGxvY28gcGFzY3VhZSBpYmkgbWUgY29sbG9jYXZpdCwKKwlzdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZTsKKwlhbmltYW0gbWVhbSBjb252ZXJ0aXQsCisJZGVkdXhpdCBtZSBzdXBlciBzZW1pdGFzIGp1c2l0aWFlLAorCXByb3B0ZXIgbm9tZW4gc3V1bS4KKwlOYW0gZXQgc2kgYW1idWxhdmVybyBpbiBtZWRpbyB1bWJyYWUgbW9ydGlzLAorCW5vbiB0aW1lYm8gbWFsYSwgcXVvbmlhbSB0dSBtZWN1bSBlczoKKwl2aXJnYSB0dWEgZXQgYmFjdWx1cyB0dXVzIGlwc2EgbWUgY29uc29sYXRhIHN1bnQuCisJRU9GCisKKwl0ZXN0X2NtcCBleHBlY3QudHh0IHRlc3QudHh0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgImNvbmZsaWN0IGluIHJlbW92ZWQgdGFpbCIgJworCXNlZCAicy8gdHUgLyBUVSAvIiA8bmV3MS50eHQgPm5ldzUudHh0ICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgLXAgb3JpZy50eHQgbmV3MS50eHQgbmV3NS50eHQgPm91dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICJleHBlY3RlZCBjb25mbGljdCBtYXJrZXJzIiAnCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCURvbWludXMgcmVnaXQgbWUsCisJZXQgbmloaWwgbWloaSBkZWVyaXQuCisJSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0LAorCXN1cGVyIGFxdWFtIHJlZmVjdGlvbmlzIGVkdWNhdml0IG1lOworCWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKKwlkZWR1eGl0IG1lIHN1cGVyIHNlbWl0YXMganVzaXRpYWUsCisJcHJvcHRlciBub21lbiBzdXVtLgorCTw8PDw8PDwgb3JpZy50eHQKKwk9PT09PT09CisJTmFtIGV0IHNpIGFtYnVsYXZlcm8gaW4gbWVkaW8gdW1icmFlIG1vcnRpcywKKwlub24gdGltZWJvIG1hbGEsIHF1b25pYW0gVFUgbWVjdW0gZXM6CisJdmlyZ2EgdHVhIGV0IGJhY3VsdXMgdHV1cyBpcHNhIG1lIGNvbnNvbGF0YSBzdW50LgorCT4+Pj4+Pj4gbmV3NS50eHQKKwlFT0YKKworCXRlc3RfY21wIGV4cGVjdCBvdXQKKycKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYmluYXJ5IGZpbGVzIGNhbm5vdCBiZSBtZXJnZWQnICcKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UtZmlsZSAtcCBcCkBAIC0yMjUsNTkgKzI1NCw1NSBAQAogCWdyZXAgIkNhbm5vdCBtZXJnZSBiaW5hcnkgZmlsZXMiIG1lcmdlLmVycgogJwogCi1zZWQgLWUgInMvZGVlcml0LlwkL2RlZXJpdDsvIiAtZSAicy9tZTtcJC9tZS4vIiA8IG5ldzUudHh0ID4gbmV3Ni50eHQKLXNlZCAtZSAicy9kZWVyaXQuXCQvZGVlcml0LC8iIC1lICJzL21lO1wkL21lLC8iIDwgbmV3NS50eHQgPiBuZXc3LnR4dAotCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdNRVJHRV9aRUFMT1VTIHNpbXBsaWZpZXMgbm9uLWNvbmZsaWN0cycgJworCXNlZCAtZSAicy9kZWVyaXQuXCQvZGVlcml0Oy8iIC1lICJzL21lO1wkL21lLi8iIDxuZXc1LnR4dCA+bmV3Ni50eHQgJiYKKwlzZWQgLWUgInMvZGVlcml0LlwkL2RlZXJpdCwvIiAtZSAicy9tZTtcJC9tZSwvIiA8bmV3NS50eHQgPm5ldzcudHh0ICYmCiAKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UtZmlsZSAtcCBuZXc2LnR4dCBuZXc1LnR4dCBuZXc3LnR4dCA+IG91dHB1dCAmJgotCXRlc3QgMSA9ICQoZ3JlcCA9PT09PT09IDwgb3V0cHV0IHwgd2MgLWwpCi0KKwl0ZXN0IDEgPSAkKGdyZXAgPT09PT09PSA8b3V0cHV0IHwgd2MgLWwpCiAnCiAKLXNlZCAtZSAncy9kZWVyaXQuLyYlJSUlLycgLWUgInMvbG9jYXZpdCwvbG9jYXZpdDsvIjwgbmV3Ni50eHQgfCB0ciAnJScgJ1wwMTInID4gbmV3OC50eHQKLXNlZCAtZSAncy9kZWVyaXQuLyYlJSUlLycgLWUgInMvbG9jYXZpdCwvbG9jYXZpdCAtLS8iIDwgbmV3Ny50eHQgfCB0ciAnJScgJ1wwMTInID4gbmV3OS50eHQKLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAnWkVBTE9VU19BTE5VTScgJworCXNlZCAtZSAicy9kZWVyaXQuLyYlJSUlLyIgLWUgInMvbG9jYXZpdCwvbG9jYXZpdDsvIiA8bmV3Ni50eHQgfCB0ciAlICJcMDEyIiA+bmV3OC50eHQgJiYKKwlzZWQgLWUgInMvZGVlcml0Li8mJSUlJS8iIC1lICJzL2xvY2F2aXQsL2xvY2F2aXQgLS0vIiA8bmV3Ny50eHQgfCB0ciAlICJcMDEyIiA+bmV3OS50eHQgJiYKIAogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZS1maWxlIC1wIFwKLQkJbmV3OC50eHQgbmV3NS50eHQgbmV3OS50eHQgPiBtZXJnZS5vdXQgJiYKLQl0ZXN0IDEgPSAkKGdyZXAgPT09PT09PSA8IG1lcmdlLm91dCB8IHdjIC1sKQotCisJCW5ldzgudHh0IG5ldzUudHh0IG5ldzkudHh0ID5tZXJnZS5vdXQgJiYKKwl0ZXN0IDEgPSAkKGdyZXAgPT09PT09PSA8bWVyZ2Uub3V0IHwgd2MgLWwpCiAnCiAKLWNhdCA+ZXhwZWN0IDw8XEVPRgotRG9taW51cyByZWdpdCBtZSwKLTw8PDw8PDwgbmV3OC50eHQKLWV0IG5paGlsIG1paGkgZGVlcml0OwotCi0KLQotCi1JbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQ7Ci1zdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZS4KLXx8fHx8fHwgbmV3NS50eHQKLWV0IG5paGlsIG1paGkgZGVlcml0LgotSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0LAotc3VwZXIgYXF1YW0gcmVmZWN0aW9uaXMgZWR1Y2F2aXQgbWU7Ci09PT09PT09Ci1ldCBuaWhpbCBtaWhpIGRlZXJpdCwKLQotCi0KLQotSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0IC0tCi1zdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZSwKLT4+Pj4+Pj4gbmV3OS50eHQKLWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKLWRlZHV4aXQgbWUgc3VwZXIgc2VtaXRhcyBqdXNpdGlhZSwKLXByb3B0ZXIgbm9tZW4gc3V1bS4KLU5hbSBldCBzaSBhbWJ1bGF2ZXJvIGluIG1lZGlvIHVtYnJhZSBtb3J0aXMsCi1ub24gdGltZWJvIG1hbGEsIHF1b25pYW0gVFUgbWVjdW0gZXM6Ci12aXJnYSB0dWEgZXQgYmFjdWx1cyB0dXVzIGlwc2EgbWUgY29uc29sYXRhIHN1bnQuCi1FT0YKLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAnImRpZmYzIC1tIiBzdHlsZSBvdXRwdXQgKDEpJyAnCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCURvbWludXMgcmVnaXQgbWUsCisJPDw8PDw8PCBuZXc4LnR4dAorCWV0IG5paGlsIG1paGkgZGVlcml0OworCisKKworCisJSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0OworCXN1cGVyIGFxdWFtIHJlZmVjdGlvbmlzIGVkdWNhdml0IG1lLgorCXx8fHx8fHwgbmV3NS50eHQKKwlldCBuaWhpbCBtaWhpIGRlZXJpdC4KKwlJbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQsCisJc3VwZXIgYXF1YW0gcmVmZWN0aW9uaXMgZWR1Y2F2aXQgbWU7CisJPT09PT09PQorCWV0IG5paGlsIG1paGkgZGVlcml0LAorCisKKworCisJSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0IC0tCisJc3VwZXIgYXF1YW0gcmVmZWN0aW9uaXMgZWR1Y2F2aXQgbWUsCisJPj4+Pj4+PiBuZXc5LnR4dAorCWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKKwlkZWR1eGl0IG1lIHN1cGVyIHNlbWl0YXMganVzaXRpYWUsCisJcHJvcHRlciBub21lbiBzdXVtLgorCU5hbSBldCBzaSBhbWJ1bGF2ZXJvIGluIG1lZGlvIHVtYnJhZSBtb3J0aXMsCisJbm9uIHRpbWVibyBtYWxhLCBxdW9uaWFtIFRVIG1lY3VtIGVzOgorCXZpcmdhIHR1YSBldCBiYWN1bHVzIHR1dXMgaXBzYSBtZSBjb25zb2xhdGEgc3VudC4KKwlFT0YKKwogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZS1maWxlIC1wIC0tZGlmZjMgXAogCQluZXc4LnR4dCBuZXc1LnR4dCBuZXc5LnR4dCA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbApAQCAtMjkwLDYxICszMTUsNjQgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKLWNhdCA+ZXhwZWN0IDw8XEVPRgotRG9taW51cyByZWdpdCBtZSwKLTw8PDw8PDw8PDwgbmV3OC50eHQKLWV0IG5paGlsIG1paGkgZGVlcml0OwotCi0KLQotCi1JbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQ7Ci1zdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZS4KLXx8fHx8fHx8fHwgbmV3NS50eHQKLWV0IG5paGlsIG1paGkgZGVlcml0LgotSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0LAotc3VwZXIgYXF1YW0gcmVmZWN0aW9uaXMgZWR1Y2F2aXQgbWU7Ci09PT09PT09PT09Ci1ldCBuaWhpbCBtaWhpIGRlZXJpdCwKLQotCi0KLQotSW4gbG9jbyBwYXNjdWFlIGliaSBtZSBjb2xsb2Nhdml0IC0tCi1zdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZSwKLT4+Pj4+Pj4+Pj4gbmV3OS50eHQKLWFuaW1hbSBtZWFtIGNvbnZlcnRpdCwKLWRlZHV4aXQgbWUgc3VwZXIgc2VtaXRhcyBqdXNpdGlhZSwKLXByb3B0ZXIgbm9tZW4gc3V1bS4KLU5hbSBldCBzaSBhbWJ1bGF2ZXJvIGluIG1lZGlvIHVtYnJhZSBtb3J0aXMsCi1ub24gdGltZWJvIG1hbGEsIHF1b25pYW0gVFUgbWVjdW0gZXM6Ci12aXJnYSB0dWEgZXQgYmFjdWx1cyB0dXVzIGlwc2EgbWUgY29uc29sYXRhIHN1bnQuCi1FT0YKLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbWFya2VyIHNpemUnICcKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJRG9taW51cyByZWdpdCBtZSwKKwk8PDw8PDw8PDw8IG5ldzgudHh0CisJZXQgbmloaWwgbWloaSBkZWVyaXQ7CisKKworCisKKwlJbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQ7CisJc3VwZXIgYXF1YW0gcmVmZWN0aW9uaXMgZWR1Y2F2aXQgbWUuCisJfHx8fHx8fHx8fCBuZXc1LnR4dAorCWV0IG5paGlsIG1paGkgZGVlcml0LgorCUluIGxvY28gcGFzY3VhZSBpYmkgbWUgY29sbG9jYXZpdCwKKwlzdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZTsKKwk9PT09PT09PT09CisJZXQgbmloaWwgbWloaSBkZWVyaXQsCisKKworCisKKwlJbiBsb2NvIHBhc2N1YWUgaWJpIG1lIGNvbGxvY2F2aXQgLS0KKwlzdXBlciBhcXVhbSByZWZlY3Rpb25pcyBlZHVjYXZpdCBtZSwKKwk+Pj4+Pj4+Pj4+IG5ldzkudHh0CisJYW5pbWFtIG1lYW0gY29udmVydGl0LAorCWRlZHV4aXQgbWUgc3VwZXIgc2VtaXRhcyBqdXNpdGlhZSwKKwlwcm9wdGVyIG5vbWVuIHN1dW0uCisJTmFtIGV0IHNpIGFtYnVsYXZlcm8gaW4gbWVkaW8gdW1icmFlIG1vcnRpcywKKwlub24gdGltZWJvIG1hbGEsIHF1b25pYW0gVFUgbWVjdW0gZXM6CisJdmlyZ2EgdHVhIGV0IGJhY3VsdXMgdHV1cyBpcHNhIG1lIGNvbnNvbGF0YSBzdW50LgorCUVPRgorCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgLXAgLS1tYXJrZXItc2l6ZT0xMCBcCiAJCW5ldzgudHh0IG5ldzUudHh0IG5ldzkudHh0ID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKLXByaW50ZiAibGluZTFcbmxpbmUyXG5saW5lMyIgPm5vbGYtb3JpZy50eHQKLXByaW50ZiAibGluZTFcbmxpbmUyXG5saW5lM3giID5ub2xmLWRpZmYxLnR4dAotcHJpbnRmICJsaW5lMVxubGluZTJcbmxpbmUzeSIgPm5vbGYtZGlmZjIudHh0Cit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb25mbGljdCBhdCBFT0Ygd2l0aG91dCBMRiByZXNvbHZlZCBieSAtLW91cnMnICcKKwlwcmludGYgImxpbmUxXG5saW5lMlxubGluZTMiID5ub2xmLW9yaWcudHh0ICYmCisJcHJpbnRmICJsaW5lMVxubGluZTJcbmxpbmUzeCIgPm5vbGYtZGlmZjEudHh0ICYmCisJcHJpbnRmICJsaW5lMVxubGluZTJcbmxpbmUzeSIgPm5vbGYtZGlmZjIudHh0ICYmCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbmZsaWN0IGF0IEVPRiB3aXRob3V0IExGIHJlc29sdmVkIGJ5IC0tb3VycycgXAotCSdnaXQgbWVyZ2UtZmlsZSAtcCAtLW91cnMgbm9sZi1kaWZmMS50eHQgbm9sZi1vcmlnLnR4dCBub2xmLWRpZmYyLnR4dCA+b3V0cHV0LnR4dCAmJgotCSBwcmludGYgImxpbmUxXG5saW5lMlxubGluZTN4IiA+ZXhwZWN0LnR4dCAmJgotCSB0ZXN0X2NtcCBleHBlY3QudHh0IG91dHB1dC50eHQnCisJZ2l0IG1lcmdlLWZpbGUgLXAgLS1vdXJzIG5vbGYtZGlmZjEudHh0IG5vbGYtb3JpZy50eHQgbm9sZi1kaWZmMi50eHQgPm91dHB1dC50eHQgJiYKKwlwcmludGYgImxpbmUxXG5saW5lMlxubGluZTN4IiA+ZXhwZWN0LnR4dCAmJgorCXRlc3RfY21wIGV4cGVjdC50eHQgb3V0cHV0LnR4dAorJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdjb25mbGljdCBhdCBFT0Ygd2l0aG91dCBMRiByZXNvbHZlZCBieSAtLXRoZWlycycgXAotCSdnaXQgbWVyZ2UtZmlsZSAtcCAtLXRoZWlycyBub2xmLWRpZmYxLnR4dCBub2xmLW9yaWcudHh0IG5vbGYtZGlmZjIudHh0ID5vdXRwdXQudHh0ICYmCi0JIHByaW50ZiAibGluZTFcbmxpbmUyXG5saW5lM3kiID5leHBlY3QudHh0ICYmCi0JIHRlc3RfY21wIGV4cGVjdC50eHQgb3V0cHV0LnR4dCcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbmZsaWN0IGF0IEVPRiB3aXRob3V0IExGIHJlc29sdmVkIGJ5IC0tdGhlaXJzJyAnCisJZ2l0IG1lcmdlLWZpbGUgLXAgLS10aGVpcnMgbm9sZi1kaWZmMS50eHQgbm9sZi1vcmlnLnR4dCBub2xmLWRpZmYyLnR4dCA+b3V0cHV0LnR4dCAmJgorCXByaW50ZiAibGluZTFcbmxpbmUyXG5saW5lM3kiID5leHBlY3QudHh0ICYmCisJdGVzdF9jbXAgZXhwZWN0LnR4dCBvdXRwdXQudHh0CisnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbmZsaWN0IGF0IEVPRiB3aXRob3V0IExGIHJlc29sdmVkIGJ5IC0tdW5pb24nIFwKLQknZ2l0IG1lcmdlLWZpbGUgLXAgLS11bmlvbiBub2xmLWRpZmYxLnR4dCBub2xmLW9yaWcudHh0IG5vbGYtZGlmZjIudHh0ID5vdXRwdXQudHh0ICYmCi0JIHByaW50ZiAibGluZTFcbmxpbmUyXG5saW5lM3hcbmxpbmUzeSIgPmV4cGVjdC50eHQgJiYKLQkgdGVzdF9jbXAgZXhwZWN0LnR4dCBvdXRwdXQudHh0JwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29uZmxpY3QgYXQgRU9GIHdpdGhvdXQgTEYgcmVzb2x2ZWQgYnkgLS11bmlvbicgJworCWdpdCBtZXJnZS1maWxlIC1wIC0tdW5pb24gbm9sZi1kaWZmMS50eHQgbm9sZi1vcmlnLnR4dCBub2xmLWRpZmYyLnR4dCA+b3V0cHV0LnR4dCAmJgorCXByaW50ZiAibGluZTFcbmxpbmUyXG5saW5lM3hcbmxpbmUzeSIgPmV4cGVjdC50eHQgJiYKKwl0ZXN0X2NtcCBleHBlY3QudHh0IG91dHB1dC50eHQKKycKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY29uZmxpY3Qgc2VjdGlvbnMgbWF0Y2ggZXhpc3RpbmcgbGluZSBlbmRpbmdzJyAnCiAJcHJpbnRmICIxXFxyXFxuMlxcclxcbjMiID5jcmxmLW9yaWcudHh0ICYmCmRpZmYgLS1naXQgYS90L3Q2MDI0LXJlY3Vyc2l2ZS1tZXJnZS5zaCBiL3QvdDYwMjQtcmVjdXJzaXZlLW1lcmdlLnNoCmluZGV4IDI3YzdkZTkuLjMzMmNmYzUgMTAwNzU1Ci0tLSBhL3QvdDYwMjQtcmVjdXJzaXZlLW1lcmdlLnNoCisrKyBiL3QvdDYwMjQtcmVjdXJzaXZlLW1lcmdlLnNoCkBAIC0xNCw4NSArMTQsOTUgQEAKIEdJVF9DT01NSVRURVJfREFURT0iMjAwNi0xMi0xMiAyMzoyODowMCArMDEwMCIKIGV4cG9ydCBHSVRfQ09NTUlUVEVSX0RBVEUKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAic2V0dXAgdGVzdHMiICcKLWVjaG8gMSA+IGExICYmCi1naXQgYWRkIGExICYmCi1HSVRfQVVUSE9SX0RBVEU9IjIwMDYtMTItMTIgMjM6MDA6MDAiIGdpdCBjb21taXQgLW0gMSBhMSAmJgordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgdGVzdHMnICcKKwllY2hvIDEgPmExICYmCisJZ2l0IGFkZCBhMSAmJgorCUdJVF9BVVRIT1JfREFURT0iMjAwNi0xMi0xMiAyMzowMDowMCIgZ2l0IGNvbW1pdCAtbSAxIGExICYmCiAKLWdpdCBjaGVja291dCAtYiBBIG1hc3RlciAmJgotZWNobyBBID4gYTEgJiYKLUdJVF9BVVRIT1JfREFURT0iMjAwNi0xMi0xMiAyMzowMDowMSIgZ2l0IGNvbW1pdCAtbSBBIGExICYmCisJZ2l0IGNoZWNrb3V0IC1iIEEgbWFzdGVyICYmCisJZWNobyBBID5hMSAmJgorCUdJVF9BVVRIT1JfREFURT0iMjAwNi0xMi0xMiAyMzowMDowMSIgZ2l0IGNvbW1pdCAtbSBBIGExICYmCiAKLWdpdCBjaGVja291dCAtYiBCIG1hc3RlciAmJgotZWNobyBCID4gYTEgJiYKLUdJVF9BVVRIT1JfREFURT0iMjAwNi0xMi0xMiAyMzowMDowMiIgZ2l0IGNvbW1pdCAtbSBCIGExICYmCisJZ2l0IGNoZWNrb3V0IC1iIEIgbWFzdGVyICYmCisJZWNobyBCID5hMSAmJgorCUdJVF9BVVRIT1JfREFURT0iMjAwNi0xMi0xMiAyMzowMDowMiIgZ2l0IGNvbW1pdCAtbSBCIGExICYmCiAKLWdpdCBjaGVja291dCAtYiBEIEEgJiYKLWdpdCByZXYtcGFyc2UgQiA+IC5naXQvTUVSR0VfSEVBRCAmJgotZWNobyBEID4gYTEgJiYKLWdpdCB1cGRhdGUtaW5kZXggYTEgJiYKLUdJVF9BVVRIT1JfREFURT0iMjAwNi0xMi0xMiAyMzowMDowMyIgZ2l0IGNvbW1pdCAtbSBEICYmCisJZ2l0IGNoZWNrb3V0IC1iIEQgQSAmJgorCWdpdCByZXYtcGFyc2UgQiA+LmdpdC9NRVJHRV9IRUFEICYmCisJZWNobyBEID5hMSAmJgorCWdpdCB1cGRhdGUtaW5kZXggYTEgJiYKKwlHSVRfQVVUSE9SX0RBVEU9IjIwMDYtMTItMTIgMjM6MDA6MDMiIGdpdCBjb21taXQgLW0gRCAmJgogCi1naXQgc3ltYm9saWMtcmVmIEhFQUQgcmVmcy9oZWFkcy9vdGhlciAmJgotZWNobyAyID4gYTEgJiYKLUdJVF9BVVRIT1JfREFURT0iMjAwNi0xMi0xMiAyMzowMDowNCIgZ2l0IGNvbW1pdCAtbSAyIGExICYmCisJZ2l0IHN5bWJvbGljLXJlZiBIRUFEIHJlZnMvaGVhZHMvb3RoZXIgJiYKKwllY2hvIDIgPmExICYmCisJR0lUX0FVVEhPUl9EQVRFPSIyMDA2LTEyLTEyIDIzOjAwOjA0IiBnaXQgY29tbWl0IC1tIDIgYTEgJiYKIAotZ2l0IGNoZWNrb3V0IC1iIEMgJiYKLWVjaG8gQyA+IGExICYmCi1HSVRfQVVUSE9SX0RBVEU9IjIwMDYtMTItMTIgMjM6MDA6MDUiIGdpdCBjb21taXQgLW0gQyBhMSAmJgorCWdpdCBjaGVja291dCAtYiBDICYmCisJZWNobyBDID5hMSAmJgorCUdJVF9BVVRIT1JfREFURT0iMjAwNi0xMi0xMiAyMzowMDowNSIgZ2l0IGNvbW1pdCAtbSBDIGExICYmCiAKLWdpdCBjaGVja291dCAtYiBFIEMgJiYKLWdpdCByZXYtcGFyc2UgQiA+IC5naXQvTUVSR0VfSEVBRCAmJgotZWNobyBFID4gYTEgJiYKLWdpdCB1cGRhdGUtaW5kZXggYTEgJiYKLUdJVF9BVVRIT1JfREFURT0iMjAwNi0xMi0xMiAyMzowMDowNiIgZ2l0IGNvbW1pdCAtbSBFICYmCisJZ2l0IGNoZWNrb3V0IC1iIEUgQyAmJgorCWdpdCByZXYtcGFyc2UgQiA+LmdpdC9NRVJHRV9IRUFEICYmCisJZWNobyBFID5hMSAmJgorCWdpdCB1cGRhdGUtaW5kZXggYTEgJiYKKwlHSVRfQVVUSE9SX0RBVEU9IjIwMDYtMTItMTIgMjM6MDA6MDYiIGdpdCBjb21taXQgLW0gRSAmJgogCi1naXQgY2hlY2tvdXQgLWIgRyBFICYmCi1naXQgcmV2LXBhcnNlIEEgPiAuZ2l0L01FUkdFX0hFQUQgJiYKLWVjaG8gRyA+IGExICYmCi1naXQgdXBkYXRlLWluZGV4IGExICYmCi1HSVRfQVVUSE9SX0RBVEU9IjIwMDYtMTItMTIgMjM6MDA6MDciIGdpdCBjb21taXQgLW0gRyAmJgorCWdpdCBjaGVja291dCAtYiBHIEUgJiYKKwlnaXQgcmV2LXBhcnNlIEEgPi5naXQvTUVSR0VfSEVBRCAmJgorCWVjaG8gRyA+YTEgJiYKKwlnaXQgdXBkYXRlLWluZGV4IGExICYmCisJR0lUX0FVVEhPUl9EQVRFPSIyMDA2LTEyLTEyIDIzOjAwOjA3IiBnaXQgY29tbWl0IC1tIEcgJiYKIAotZ2l0IGNoZWNrb3V0IC1iIEYgRCAmJgotZ2l0IHJldi1wYXJzZSBDID4gLmdpdC9NRVJHRV9IRUFEICYmCi1lY2hvIEYgPiBhMSAmJgotZ2l0IHVwZGF0ZS1pbmRleCBhMSAmJgotR0lUX0FVVEhPUl9EQVRFPSIyMDA2LTEyLTEyIDIzOjAwOjA4IiBnaXQgY29tbWl0IC1tIEYKKwlnaXQgY2hlY2tvdXQgLWIgRiBEICYmCisJZ2l0IHJldi1wYXJzZSBDID4uZ2l0L01FUkdFX0hFQUQgJiYKKwllY2hvIEYgPmExICYmCisJZ2l0IHVwZGF0ZS1pbmRleCBhMSAmJgorCUdJVF9BVVRIT1JfREFURT0iMjAwNi0xMi0xMiAyMzowMDowOCIgZ2l0IGNvbW1pdCAtbSBGICYmCisKKwl0ZXN0X29pZF9jYWNoZSA8PC1FT0YKKwlpZHhzdGFnZTEgc2hhMTplYzNmZTJhNzkxNzA2NzMzZjJkOGZhN2FkNDVkOWE5NjcyMDMxZjVlCisJaWR4c3RhZ2UxIHNoYTI1NjpiM2M4NDg4OTI5OTAzYWFlYmRlYjIyMjcwY2I2ZDM2ZTViODcyNGIwMWFlMGQ0ZGEyNDYzMmYxNThjOTk2NzZmCisJRU9GCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbWJpbmVkIG1lcmdlIGNvbmZsaWN0cycgJwogCXRlc3RfbXVzdF9mYWlsIGVudiBHSVRfVEVTVF9DT01NSVRfR1JBUEg9MCBnaXQgbWVyZ2UgLW0gZmluYWwgRwogJwogCi1jYXQgPiBleHBlY3QgPDwgRU9GCi08PDw8PDw8IEhFQUQKLUYKLT09PT09PT0KLUcKLT4+Pj4+Pj4gRwotRU9GCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXN1bHQgY29udGFpbnMgYSBjb25mbGljdCcgJworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwk8PDw8PDw8IEhFQUQKKwlGCisJPT09PT09PQorCUcKKwk+Pj4+Pj4+IEcKKwlFT0YKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAicmVzdWx0IGNvbnRhaW5zIGEgY29uZmxpY3QiICJ0ZXN0X2NtcCBleHBlY3QgYTEiCisJdGVzdF9jbXAgZXhwZWN0IGExCisnCiAKLWdpdCBscy1maWxlcyAtLXN0YWdlID4gb3V0Ci1jYXQgPiBleHBlY3QgPDwgRU9GCi0xMDA2NDQgZWMzZmUyYTc5MTcwNjczM2YyZDhmYTdhZDQ1ZDlhOTY3MjAzMWY1ZSAxCWExCi0xMDA2NDQgY2Y4NDQ0M2U0OWUxYjM2NmZhYzkzODcxMWRkZjRiZTJkNGQxZDllOSAyCWExCi0xMDA2NDQgZmQ3OTIzNTI5ODU1ZDBiMjc0Nzk1YWUzMzQ5YzVlMDQzODMzMzk3OSAzCWExCi1FT0YKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ZpcnR1YWwgdHJlZXMgd2VyZSBwcm9jZXNzZWQnICcKKwlnaXQgbHMtZmlsZXMgLS1zdGFnZSA+b3V0ICYmCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgInZpcnR1YWwgdHJlZXMgd2VyZSBwcm9jZXNzZWQiICJ0ZXN0X2NtcCBleHBlY3Qgb3V0IgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCTEwMDY0NCAkKHRlc3Rfb2lkIGlkeHN0YWdlMSkgMQlhMQorCTEwMDY0NCAkKGdpdCByZXYtcGFyc2UgRjphMSkgMglhMQorCTEwMDY0NCAkKGdpdCByZXYtcGFyc2UgRzphMSkgMwlhMQorCUVPRgorCisJdGVzdF9jbXAgZXhwZWN0IG91dAorJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWZ1c2UgdG8gbWVyZ2UgYmluYXJ5IGZpbGVzJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgotCXByaW50ZiAiXDAiID4gYmluYXJ5LWZpbGUgJiYKKwlwcmludGYgIlwwIiA+YmluYXJ5LWZpbGUgJiYKIAlnaXQgYWRkIGJpbmFyeS1maWxlICYmCiAJZ2l0IGNvbW1pdCAtbSBiaW5hcnkgJiYKIAlnaXQgY2hlY2tvdXQgRyAmJgotCXByaW50ZiAiXDBcMCIgPiBiaW5hcnktZmlsZSAmJgorCXByaW50ZiAiXDBcMCIgPmJpbmFyeS1maWxlICYmCiAJZ2l0IGFkZCBiaW5hcnktZmlsZSAmJgogCWdpdCBjb21taXQgLW0gYmluYXJ5MiAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBGID4gbWVyZ2Uub3V0IDI+IG1lcmdlLmVyciAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBGID5tZXJnZS5vdXQgMj5tZXJnZS5lcnIgJiYKIAlncmVwICJDYW5ub3QgbWVyZ2UgYmluYXJ5IGZpbGVzOiBiaW5hcnktZmlsZSAoSEVBRCB2cy4gRikiIG1lcmdlLmVycgogJwogCkBAIC0xMTYsNyArMTI2LDYgQEAKIAl0ZXN0IDEgPSAkKGdpdCBscy1maWxlcyAtLXVubWVyZ2VkIHwgd2MgLWwpICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSA6MjphMiAmJgogCWdpdCByZXYtcGFyc2UgLS12ZXJpZnkgOjM6YTIKLQogJwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDYwMjUtbWVyZ2Utc3ltbGlua3Muc2ggYi90L3Q2MDI1LW1lcmdlLXN5bWxpbmtzLnNoCmluZGV4IDQzM2M0ZGUuLjZjMGE5MGQgMTAwNzU1Ci0tLSBhL3QvdDYwMjUtbWVyZ2Utc3ltbGlua3Muc2gKKysrIGIvdC90NjAyNS1tZXJnZS1zeW1saW5rcy5zaApAQCAtMTAsNTIgKzEwLDUzIEBACiAKIC4gLi90ZXN0LWxpYi5zaAogCi10ZXN0X2V4cGVjdF9zdWNjZXNzIFwKLSdzZXR1cCcgJwotZ2l0IGNvbmZpZyBjb3JlLnN5bWxpbmtzIGZhbHNlICYmCi0+IGZpbGUgJiYKLWdpdCBhZGQgZmlsZSAmJgotZ2l0IGNvbW1pdCAtbSBpbml0aWFsICYmCi1naXQgYnJhbmNoIGItc3ltbGluayAmJgotZ2l0IGJyYW5jaCBiLWZpbGUgJiYKLWw9JChwcmludGYgZmlsZSB8IGdpdCBoYXNoLW9iamVjdCAtdCBibG9iIC13IC0tc3RkaW4pICYmCi1lY2hvICIxMjAwMDAgJGwJc3ltbGluayIgfCBnaXQgdXBkYXRlLWluZGV4IC0taW5kZXgtaW5mbyAmJgotZ2l0IGNvbW1pdCAtbSBtYXN0ZXIgJiYKLWdpdCBjaGVja291dCBiLXN5bWxpbmsgJiYKLWw9JChwcmludGYgZmlsZS1kaWZmZXJlbnQgfCBnaXQgaGFzaC1vYmplY3QgLXQgYmxvYiAtdyAtLXN0ZGluKSAmJgotZWNobyAiMTIwMDAwICRsCXN5bWxpbmsiIHwgZ2l0IHVwZGF0ZS1pbmRleCAtLWluZGV4LWluZm8gJiYKLWdpdCBjb21taXQgLW0gYi1zeW1saW5rICYmCi1naXQgY2hlY2tvdXQgYi1maWxlICYmCi1lY2hvIHBsYWluLWZpbGUgPiBzeW1saW5rICYmCi1naXQgYWRkIHN5bWxpbmsgJiYKLWdpdCBjb21taXQgLW0gYi1maWxlJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICcKKwlnaXQgY29uZmlnIGNvcmUuc3ltbGlua3MgZmFsc2UgJiYKKwk+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCWdpdCBjb21taXQgLW0gaW5pdGlhbCAmJgorCWdpdCBicmFuY2ggYi1zeW1saW5rICYmCisJZ2l0IGJyYW5jaCBiLWZpbGUgJiYKKwlsPSQocHJpbnRmIGZpbGUgfCBnaXQgaGFzaC1vYmplY3QgLXQgYmxvYiAtdyAtLXN0ZGluKSAmJgorCWVjaG8gIjEyMDAwMCAkbAlzeW1saW5rIiB8IGdpdCB1cGRhdGUtaW5kZXggLS1pbmRleC1pbmZvICYmCisJZ2l0IGNvbW1pdCAtbSBtYXN0ZXIgJiYKKwlnaXQgY2hlY2tvdXQgYi1zeW1saW5rICYmCisJbD0kKHByaW50ZiBmaWxlLWRpZmZlcmVudCB8IGdpdCBoYXNoLW9iamVjdCAtdCBibG9iIC13IC0tc3RkaW4pICYmCisJZWNobyAiMTIwMDAwICRsCXN5bWxpbmsiIHwgZ2l0IHVwZGF0ZS1pbmRleCAtLWluZGV4LWluZm8gJiYKKwlnaXQgY29tbWl0IC1tIGItc3ltbGluayAmJgorCWdpdCBjaGVja291dCBiLWZpbGUgJiYKKwllY2hvIHBsYWluLWZpbGUgPnN5bWxpbmsgJiYKKwlnaXQgYWRkIHN5bWxpbmsgJiYKKwlnaXQgY29tbWl0IC1tIGItZmlsZQorJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzIFwKLSdtZXJnZSBtYXN0ZXIgaW50byBiLXN5bWxpbmssIHdoaWNoIGhhcyBhIGRpZmZlcmVudCBzeW1ib2xpYyBsaW5rJyAnCi1naXQgY2hlY2tvdXQgYi1zeW1saW5rICYmCi10ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbWVyZ2UgbWFzdGVyIGludG8gYi1zeW1saW5rLCB3aGljaCBoYXMgYSBkaWZmZXJlbnQgc3ltYm9saWMgbGluaycgJworCWdpdCBjaGVja291dCBiLXN5bWxpbmsgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyCisnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAotJ3RoZSBtZXJnZSByZXN1bHQgbXVzdCBiZSBhIGZpbGUnICcKLXRlc3QgLWYgc3ltbGluaycKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RoZSBtZXJnZSByZXN1bHQgbXVzdCBiZSBhIGZpbGUnICcKKwl0ZXN0X3BhdGhfaXNfZmlsZSBzeW1saW5rCisnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAotJ21lcmdlIG1hc3RlciBpbnRvIGItZmlsZSwgd2hpY2ggaGFzIGEgZmlsZSBpbnN0ZWFkIG9mIGEgc3ltYm9saWMgbGluaycgJwotZ2l0IHJlc2V0IC0taGFyZCAmJiBnaXQgY2hlY2tvdXQgYi1maWxlICYmCi10ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbWVyZ2UgbWFzdGVyIGludG8gYi1maWxlLCB3aGljaCBoYXMgYSBmaWxlIGluc3RlYWQgb2YgYSBzeW1ib2xpYyBsaW5rJyAnCisJZ2l0IHJlc2V0IC0taGFyZCAmJgorCWdpdCBjaGVja291dCBiLWZpbGUgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyCisnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAotJ3RoZSBtZXJnZSByZXN1bHQgbXVzdCBiZSBhIGZpbGUnICcKLXRlc3QgLWYgc3ltbGluaycKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RoZSBtZXJnZSByZXN1bHQgbXVzdCBiZSBhIGZpbGUnICcKKwl0ZXN0X3BhdGhfaXNfZmlsZSBzeW1saW5rCisnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAotJ21lcmdlIGItZmlsZSwgd2hpY2ggaGFzIGEgZmlsZSBpbnN0ZWFkIG9mIGEgc3ltYm9saWMgbGluaywgaW50byBtYXN0ZXInICcKLWdpdCByZXNldCAtLWhhcmQgJiYKLWdpdCBjaGVja291dCBtYXN0ZXIgJiYKLXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBiLWZpbGUnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdtZXJnZSBiLWZpbGUsIHdoaWNoIGhhcyBhIGZpbGUgaW5zdGVhZCBvZiBhIHN5bWJvbGljIGxpbmssIGludG8gbWFzdGVyJyAnCisJZ2l0IHJlc2V0IC0taGFyZCAmJgorCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgYi1maWxlCisnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAotJ3RoZSBtZXJnZSByZXN1bHQgbXVzdCBiZSBhIGZpbGUnICcKLXRlc3QgLWYgc3ltbGluaycKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RoZSBtZXJnZSByZXN1bHQgbXVzdCBiZSBhIGZpbGUnICcKKwl0ZXN0X3BhdGhfaXNfZmlsZSBzeW1saW5rCisnCiAKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NjAyNi1tZXJnZS1hdHRyLnNoIGIvdC90NjAyNi1tZXJnZS1hdHRyLnNoCmluZGV4IDhmOWI0OGEuLjU5MDAzNTggMTAwNzU1Ci0tLSBhL3QvdDYwMjYtbWVyZ2UtYXR0ci5zaAorKysgYi90L3Q2MDI2LW1lcmdlLWF0dHIuc2gKQEAgLTMyLDcgKzMyLDI5IEBACiAJdGVzdF90aWNrICYmCiAJZ2l0IGNvbW1pdCAtbSBTaWRlICYmCiAKLQlnaXQgdGFnIGFuY2hvcgorCWdpdCB0YWcgYW5jaG9yICYmCisKKwljYXQgPi4vY3VzdG9tLW1lcmdlIDw8LVxFT0YgJiYKKwkjIS9iaW4vc2gKKworCW9yaWc9IiQxIiBvdXJzPSIkMiIgdGhlaXJzPSIkMyIgZXhpdD0iJDQiIHBhdGg9JDUKKwkoCisJCWVjaG8gIm9yaWcgaXMgJG9yaWciCisJCWVjaG8gIm91cnMgaXMgJG91cnMiCisJCWVjaG8gInRoZWlycyBpcyAkdGhlaXJzIgorCQllY2hvICJwYXRoIGlzICRwYXRoIgorCQllY2hvICI9PT0gb3JpZyA9PT0iCisJCWNhdCAiJG9yaWciCisJCWVjaG8gIj09PSBvdXJzID09PSIKKwkJY2F0ICIkb3VycyIKKwkJZWNobyAiPT09IHRoZWlycyA9PT0iCisJCWNhdCAiJHRoZWlycyIKKwkpID4iJG91cnMrIgorCWNhdCAiJG91cnMrIiA+IiRvdXJzIgorCXJtIC1mICIkb3VycysiCisJZXhpdCAiJGV4aXQiCisJRU9GCisJY2htb2QgK3ggLi9jdXN0b20tbWVyZ2UKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBtZXJnZSAnCkBAIC04MiwyOCArMTA0LDYgQEAKIAlncmVwICI8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PCIgYWN0dWFsCiAnCiAKLWNhdCA+Li9jdXN0b20tbWVyZ2UgPDxcRU9GCi0jIS9iaW4vc2gKLQotb3JpZz0iJDEiIG91cnM9IiQyIiB0aGVpcnM9IiQzIiBleGl0PSIkNCIgcGF0aD0kNQotKAotCWVjaG8gIm9yaWcgaXMgJG9yaWciCi0JZWNobyAib3VycyBpcyAkb3VycyIKLQllY2hvICJ0aGVpcnMgaXMgJHRoZWlycyIKLQllY2hvICJwYXRoIGlzICRwYXRoIgotCWVjaG8gIj09PSBvcmlnID09PSIKLQljYXQgIiRvcmlnIgotCWVjaG8gIj09PSBvdXJzID09PSIKLQljYXQgIiRvdXJzIgotCWVjaG8gIj09PSB0aGVpcnMgPT09IgotCWNhdCAiJHRoZWlycyIKLSkgPiIkb3VycysiCi1jYXQgIiRvdXJzKyIgPiIkb3VycyIKLXJtIC1mICIkb3VycysiCi1leGl0ICIkZXhpdCIKLUVPRgotY2htb2QgK3ggLi9jdXN0b20tbWVyZ2UKLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY3VzdG9tIG1lcmdlIGJhY2tlbmQnICcKIAogCWVjaG8gIiogbWVyZ2U9dW5pb24iID4uZ2l0YXR0cmlidXRlcyAmJgpkaWZmIC0tZ2l0IGEvdC90NjAzMC1iaXNlY3QtcG9yY2VsYWluLnNoIGIvdC90NjAzMC1iaXNlY3QtcG9yY2VsYWluLnNoCmluZGV4IGY4NGZmOTQuLjgyMWEwYzggMTAwNzU1Ci0tLSBhL3QvdDYwMzAtYmlzZWN0LXBvcmNlbGFpbi5zaAorKysgYi90L3Q2MDMwLWJpc2VjdC1wb3JjZWxhaW4uc2gKQEAgLTQ4Miw3ICs0ODIsNyBAQAogCWdpdCBiaXNlY3QgZ29vZCA+IG15X2Jpc2VjdF9sb2cyLnR4dCAmJgogCXRlc3QgLWYgIi5naXQvQklTRUNUX0FOQ0VTVE9SU19PSyIgJiYKIAl0ZXN0ICIkSEFTSDYiID0gJChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IEhFQUQpICYmCi0JZ2l0IGJpc2VjdCBiYWQgPiBteV9iaXNlY3RfbG9nMy50eHQgJiYKKwlnaXQgYmlzZWN0IGJhZCAmJgogCWdpdCBiaXNlY3QgZ29vZCAiJEFfSEFTSCIgPiBteV9iaXNlY3RfbG9nNC50eHQgJiYKIAl0ZXN0X2kxOG5ncmVwICJtZXJnZSBiYXNlIG11c3QgYmUgdGVzdGVkIiBteV9iaXNlY3RfbG9nNC50eHQgJiYKIAl0ZXN0X211c3RfZmFpbCB0ZXN0IC1mICIuZ2l0L0JJU0VDVF9BTkNFU1RPUlNfT0siCkBAIC02MTUsNiArNjE1LDcgQEAKIAlnaXQgYWRkIG1pc3NpbmcvTUlTU0lORyAmJgogCWdpdCBjb21taXQgLW0gIjYoYnJva2VuKTogQWRkZWQgZmlsZSB0aGF0IHdpbGwgYmUgZGVsZXRlZCIgJiYKIAlnaXQgdGFnIEJST0tFTl9IQVNINiAmJgorCWRlbGV0ZWQ9JChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IEhFQUQ6bWlzc2luZykgJiYKIAlhZGRfbGluZV9pbnRvX2ZpbGUgIjcoYnJva2VuKTogc2Vjb25kIGxpbmUgb24gYSBicm9rZW4gYnJhbmNoIiBoZWxsbzIgJiYKIAlnaXQgdGFnIEJST0tFTl9IQVNINyAmJgogCWFkZF9saW5lX2ludG9fZmlsZSAiOChicm9rZW4pOiB0aGlyZCBsaW5lIG9uIGEgYnJva2VuIGJyYW5jaCIgaGVsbG8yICYmCkBAIC02MjIsMTIgKzYyMywxMiBAQAogCWdpdCBybSBtaXNzaW5nL01JU1NJTkcgJiYKIAlnaXQgY29tbWl0IC1tICI5KGJyb2tlbik6IFJlbW92ZSBtaXNzaW5nIGZpbGUiICYmCiAJZ2l0IHRhZyBCUk9LRU5fSEFTSDkgJiYKLQlybSAuZ2l0L29iamVjdHMvMzkvZjdlNjFhNzI0MTg3YWI3NjdkMmUwODQ0MmQ5YjZiOWRhYjU4N2QKKwlybSAuZ2l0L29iamVjdHMvJCh0ZXN0X29pZF90b19wYXRoICRkZWxldGVkKQogJwogCiBlY2hvICIiID4gZXhwZWN0ZWQub2sKIGNhdCA+IGV4cGVjdGVkLm1pc3NpbmctdHJlZS5kZWZhdWx0IDw8RU9GCi1mYXRhbDogdW5hYmxlIHRvIHJlYWQgdHJlZSAzOWY3ZTYxYTcyNDE4N2FiNzY3ZDJlMDg0NDJkOWI2YjlkYWI1ODdkCitmYXRhbDogdW5hYmxlIHRvIHJlYWQgdHJlZSAkZGVsZXRlZAogRU9GCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Jpc2VjdCBmYWlscyBpZiB0cmVlIGlzIGJyb2tlbiBvbiBzdGFydCBjb21taXQnICcKQEAgLTY4MSw3ICs2ODIsNyBAQAogCWNoZWNrX3NhbWUgQlJPS0VOX0hBU0g2IEJJU0VDVF9IRUFEICYmCiAJZ2l0IGJpc2VjdCBiYWQgQklTRUNUX0hFQUQgJiYKIAljaGVja19zYW1lIEJST0tFTl9IQVNINSBCSVNFQ1RfSEVBRCAmJgotCWdpdCBiaXNlY3QgZ29vZCBCSVNFQ1RfSEVBRCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBiaXNlY3QgZ29vZCBCSVNFQ1RfSEVBRCAmJgogCWNoZWNrX3NhbWUgQlJPS0VOX0hBU0g2IGJpc2VjdC9iYWQgJiYKIAlnaXQgYmlzZWN0IHJlc2V0CiAnCkBAIC02OTIsNyArNjkzLDcgQEAKIAljaGVja19zYW1lIEJST0tFTl9IQVNINiBCSVNFQ1RfSEVBRCAmJgogCWdpdCBiaXNlY3QgZ29vZCBCSVNFQ1RfSEVBRCAmJgogCWNoZWNrX3NhbWUgQlJPS0VOX0hBU0g4IEJJU0VDVF9IRUFEICYmCi0JZ2l0IGJpc2VjdCBnb29kIEJJU0VDVF9IRUFEICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGJpc2VjdCBnb29kIEJJU0VDVF9IRUFEICYmCiAJY2hlY2tfc2FtZSBCUk9LRU5fSEFTSDkgYmlzZWN0L2JhZCAmJgogCWdpdCBiaXNlY3QgcmVzZXQKICcKQEAgLTcwMSw3ICs3MDIsNyBAQAogCWdpdCBiaXNlY3QgcmVzZXQgJiYKIAlnaXQgY2hlY2tvdXQgYnJva2VuICYmCiAJZ2l0IGJpc2VjdCBzdGFydCBicm9rZW4gbWFzdGVyIC0tbm8tY2hlY2tvdXQgJiYKLQlnaXQgYmlzZWN0IHJ1biBcIlwkU0hFTExfUEFUSFwiIC1jICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgYmlzZWN0IHJ1biBcIlwkU0hFTExfUEFUSFwiIC1jICcKIAkJR09PRD1cJChnaXQgZm9yLWVhY2gtcmVmIFwiLS1mb3JtYXQ9JShvYmplY3RuYW1lKVwiIHJlZnMvYmlzZWN0L2dvb2QtKikgJiYKIAkJZ2l0IHJldi1saXN0IC0tb2JqZWN0cyBCSVNFQ1RfSEVBRCAtLW5vdCBcJEdPT0QgPnRtcC5cJFwkICYmCiAJCWdpdCBwYWNrLW9iamVjdHMgLS1zdGRvdXQgPi9kZXYvbnVsbCA8IHRtcC5cJFwkCkBAIC03MTMsMTIgKzcxNCwxMiBAQAogIgogCiBjYXQgPiBleHBlY3RlZC5iaXNlY3QtbG9nIDw8RU9GCi0jIGJhZDogWzMyYTU5NGEzZmRhYzJkNTdjZjZkMDI5ODdlMzBlZWM2ODUxMTQ5OGNdIEFkZCA8NDogQ2lhbyBmb3Igbm93PiBpbnRvIDxoZWxsbz4uCi0jIGdvb2Q6IFs3YjdmMjA0YTc0OWMzMTI1ZDUyMjRlZDYxZWEyYWUxMTg3YWQwNDZmXSBBZGQgPDI6IEEgbmV3IGRheSBmb3IgZ2l0PiBpbnRvIDxoZWxsbz4uCi1naXQgYmlzZWN0IHN0YXJ0ICczMmE1OTRhM2ZkYWMyZDU3Y2Y2ZDAyOTg3ZTMwZWVjNjg1MTE0OThjJyAnN2I3ZjIwNGE3NDljMzEyNWQ1MjI0ZWQ2MWVhMmFlMTE4N2FkMDQ2ZicKLSMgZ29vZDogWzNkZTk1MmYyNDE2YjYwODRmNTU3ZWM0MTc3MDllYWM3NDBjNjgxOGNdIEFkZCA8MzogQW5vdGhlciBuZXcgZGF5IGZvciBnaXQ+IGludG8gPGhlbGxvPi4KLWdpdCBiaXNlY3QgZ29vZCAzZGU5NTJmMjQxNmI2MDg0ZjU1N2VjNDE3NzA5ZWFjNzQwYzY4MThjCi0jIGZpcnN0IGJhZCBjb21taXQ6IFszMmE1OTRhM2ZkYWMyZDU3Y2Y2ZDAyOTg3ZTMwZWVjNjg1MTE0OThjXSBBZGQgPDQ6IENpYW8gZm9yIG5vdz4gaW50byA8aGVsbG8+LgorIyBiYWQ6IFskSEFTSDRdIEFkZCA8NDogQ2lhbyBmb3Igbm93PiBpbnRvIDxoZWxsbz4uCisjIGdvb2Q6IFskSEFTSDJdIEFkZCA8MjogQSBuZXcgZGF5IGZvciBnaXQ+IGludG8gPGhlbGxvPi4KK2dpdCBiaXNlY3Qgc3RhcnQgJyRIQVNINCcgJyRIQVNIMicKKyMgZ29vZDogWyRIQVNIM10gQWRkIDwzOiBBbm90aGVyIG5ldyBkYXkgZm9yIGdpdD4gaW50byA8aGVsbG8+LgorZ2l0IGJpc2VjdCBnb29kICRIQVNIMworIyBmaXJzdCBiYWQgY29tbWl0OiBbJEhBU0g0XSBBZGQgPDQ6IENpYW8gZm9yIG5vdz4gaW50byA8aGVsbG8+LgogRU9GCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Jpc2VjdCBsb2c6IHN1Y2Nlc3NmdWwgcmVzdWx0JyAnCkBAIC03MzEsMTQgKzczMiwxNCBAQAogJwogCiBjYXQgPiBleHBlY3RlZC5iaXNlY3Qtc2tpcC1sb2cgPDxFT0YKLSMgYmFkOiBbMzJhNTk0YTNmZGFjMmQ1N2NmNmQwMjk4N2UzMGVlYzY4NTExNDk4Y10gQWRkIDw0OiBDaWFvIGZvciBub3c+IGludG8gPGhlbGxvPi4KLSMgZ29vZDogWzdiN2YyMDRhNzQ5YzMxMjVkNTIyNGVkNjFlYTJhZTExODdhZDA0NmZdIEFkZCA8MjogQSBuZXcgZGF5IGZvciBnaXQ+IGludG8gPGhlbGxvPi4KLWdpdCBiaXNlY3Qgc3RhcnQgJzMyYTU5NGEzZmRhYzJkNTdjZjZkMDI5ODdlMzBlZWM2ODUxMTQ5OGMnICc3YjdmMjA0YTc0OWMzMTI1ZDUyMjRlZDYxZWEyYWUxMTg3YWQwNDZmJwotIyBza2lwOiBbM2RlOTUyZjI0MTZiNjA4NGY1NTdlYzQxNzcwOWVhYzc0MGM2ODE4Y10gQWRkIDwzOiBBbm90aGVyIG5ldyBkYXkgZm9yIGdpdD4gaW50byA8aGVsbG8+LgotZ2l0IGJpc2VjdCBza2lwIDNkZTk1MmYyNDE2YjYwODRmNTU3ZWM0MTc3MDllYWM3NDBjNjgxOGMKKyMgYmFkOiBbJEhBU0g0XSBBZGQgPDQ6IENpYW8gZm9yIG5vdz4gaW50byA8aGVsbG8+LgorIyBnb29kOiBbJEhBU0gyXSBBZGQgPDI6IEEgbmV3IGRheSBmb3IgZ2l0PiBpbnRvIDxoZWxsbz4uCitnaXQgYmlzZWN0IHN0YXJ0ICckSEFTSDQnICckSEFTSDInCisjIHNraXA6IFskSEFTSDNdIEFkZCA8MzogQW5vdGhlciBuZXcgZGF5IGZvciBnaXQ+IGludG8gPGhlbGxvPi4KK2dpdCBiaXNlY3Qgc2tpcCAkSEFTSDMKICMgb25seSBza2lwcGVkIGNvbW1pdHMgbGVmdCB0byB0ZXN0Ci0jIHBvc3NpYmxlIGZpcnN0IGJhZCBjb21taXQ6IFszMmE1OTRhM2ZkYWMyZDU3Y2Y2ZDAyOTg3ZTMwZWVjNjg1MTE0OThjXSBBZGQgPDQ6IENpYW8gZm9yIG5vdz4gaW50byA8aGVsbG8+LgotIyBwb3NzaWJsZSBmaXJzdCBiYWQgY29tbWl0OiBbM2RlOTUyZjI0MTZiNjA4NGY1NTdlYzQxNzcwOWVhYzc0MGM2ODE4Y10gQWRkIDwzOiBBbm90aGVyIG5ldyBkYXkgZm9yIGdpdD4gaW50byA8aGVsbG8+LgorIyBwb3NzaWJsZSBmaXJzdCBiYWQgY29tbWl0OiBbJEhBU0g0XSBBZGQgPDQ6IENpYW8gZm9yIG5vdz4gaW50byA8aGVsbG8+LgorIyBwb3NzaWJsZSBmaXJzdCBiYWQgY29tbWl0OiBbJEhBU0gzXSBBZGQgPDM6IEFub3RoZXIgbmV3IGRheSBmb3IgZ2l0PiBpbnRvIDxoZWxsbz4uCiBFT0YKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYmlzZWN0IGxvZzogb25seSBza2lwIGNvbW1pdHMgbGVmdCcgJwpAQCAtODAyLDcgKzgwMyw3IEBACiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGJpc2VjdCB0ZXJtcyBvbmx5LW9uZSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBiaXNlY3QgdGVybXMgMSAyICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGJpc2VjdCB0ZXJtcyAyPmFjdHVhbCAmJgotCWVjaG8gIm5vIHRlcm1zIGRlZmluZWQiID5leHBlY3RlZCAmJgorCWVjaG8gImVycm9yOiBubyB0ZXJtcyBkZWZpbmVkIiA+ZXhwZWN0ZWQgJiYKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKZGlmZiAtLWdpdCBhL3QvdDYwMzQtbWVyZ2UtcmVuYW1lLW5vY3J1ZnQuc2ggYi90L3Q2MDM0LW1lcmdlLXJlbmFtZS1ub2NydWZ0LnNoCmluZGV4IDg5ODcxYWEuLmEyNWU3MzAgMTAwNzU1Ci0tLSBhL3QvdDYwMzQtbWVyZ2UtcmVuYW1lLW5vY3J1ZnQuc2gKKysrIGIvdC90NjAzNC1tZXJnZS1yZW5hbWUtbm9jcnVmdC5zaApAQCAtMyw3NCArMyw3MyBAQAogdGVzdF9kZXNjcmlwdGlvbj0nTWVyZ2UtcmVjdXJzaXZlIG1lcmdpbmcgcmVuYW1lcycKIC4gLi90ZXN0LWxpYi5zaAogCi10ZXN0X2V4cGVjdF9zdWNjZXNzIHNldHVwIFwKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCisJY2F0ID5BIDw8LVxFT0YgJiYKKwlhIGFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQorCWIgYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiCisJYyBjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2MKKwlkIGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZAorCWUgZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlCisJZiBmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYKKwlnIGdnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZworCWggaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoCisJaSBpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWkKKwlqIGpqampqampqampqampqampqampqampqampqampqampqampqampqampqampqampqagorCWsga2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2trCisJbCBsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGwKKwltIG1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbQorCW4gbm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5uCisJbyBvb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb28KKwlFT0YKKworCWNhdCA+TSA8PC1cRU9GICYmCisJQSBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEKKwlCIEJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQgorCUMgQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDCisJRCBEREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREQKKwlFIEVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRQorCUYgRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCisJRyBHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0cKKwlIIEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISAorCUkgSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJCisJSiBKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkoKKwlLIEtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSworCUwgTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMCisJTSBNTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU0KKwlOIE5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTgorCU8gT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PCisJRU9GCisKKwlnaXQgYWRkIEEgTSAmJgorCWdpdCBjb21taXQgLW0gImluaXRpYWwgaGFzIEEgYW5kIE0iICYmCisJZ2l0IGJyYW5jaCB3aGl0ZSAmJgorCWdpdCBicmFuY2ggcmVkICYmCisJZ2l0IGJyYW5jaCBibHVlICYmCisKKwlnaXQgY2hlY2tvdXQgd2hpdGUgJiYKKwlzZWQgLWUgIi9eZyAvcy8uKi9nIDogd2hpdGUgY2hhbmdlcyBhIGxpbmUvIiA8QSA+QiAmJgorCXNlZCAtZSAiL15HIC9zLy4qL0cgOiBjb2xvcmVkIGJyYW5jaCBjaGFuZ2VzIGEgbGluZS8iIDxNID5OICYmCisJcm0gLWYgQSBNICYmCisJZ2l0IHVwZGF0ZS1pbmRleCAtLWFkZCAtLXJlbW92ZSBBIEIgTSBOICYmCisJZ2l0IGNvbW1pdCAtbSAid2hpdGUgcmVuYW1lcyBBLT5CLCBNLT5OIiAmJgorCisJZ2l0IGNoZWNrb3V0IHJlZCAmJgorCWVjaG8gY3JlYXRlZCBieSByZWQgPlIgJiYKKwlnaXQgdXBkYXRlLWluZGV4IC0tYWRkIFIgJiYKKwlnaXQgY29tbWl0IC1tICJyZWQgY3JlYXRlcyBSIiAmJgorCisJZ2l0IGNoZWNrb3V0IGJsdWUgJiYKKwlzZWQgLWUgIi9ebyAvcy8uKi9nIDogYmx1ZSBjaGFuZ2VzIGEgbGluZS8iIDxBID5CICYmCisJcm0gLWYgQSAmJgorCW12IEIgQSAmJgorCWdpdCB1cGRhdGUtaW5kZXggQSAmJgorCWdpdCBjb21taXQgLW0gImJsdWUgbW9kaWZ5IEEiICYmCisKKwlnaXQgY2hlY2tvdXQgbWFzdGVyCiAnCi1jYXQgPkEgPDxcRU9GICYmCi1hIGFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQotYiBiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmIKLWMgY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjCi1kIGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZAotZSBlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWUKLWYgZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmCi1nIGdnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZwotaCBoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGgKLWkgaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpCi1qIGpqampqampqampqampqampqampqampqampqampqampqampqampqampqampqampqagotayBra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2sKLWwgbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsCi1tIG1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbQotbiBubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm4KLW8gb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vCi1FT0YKLQotY2F0ID5NIDw8XEVPRiAmJgotQSBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEKLUIgQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCCi1DIENDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQwotRCBEREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREQKLUUgRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFCi1GIEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgotRyBHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0cKLUggSEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhICi1JIElJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSQotSiBKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkoKLUsgS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLCi1MIExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTAotTSBNTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU0KLU4gTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OCi1PIE9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PTwotRU9GCi0KLWdpdCBhZGQgQSBNICYmCi1naXQgY29tbWl0IC1tICJpbml0aWFsIGhhcyBBIGFuZCBNIiAmJgotZ2l0IGJyYW5jaCB3aGl0ZSAmJgotZ2l0IGJyYW5jaCByZWQgJiYKLWdpdCBicmFuY2ggYmx1ZSAmJgotCi1naXQgY2hlY2tvdXQgd2hpdGUgJiYKLXNlZCAtZSAiL15nIC9zLy4qL2cgOiB3aGl0ZSBjaGFuZ2VzIGEgbGluZS8iIDxBID5CICYmCi1zZWQgLWUgIi9eRyAvcy8uKi9HIDogY29sb3JlZCBicmFuY2ggY2hhbmdlcyBhIGxpbmUvIiA8TSA+TiAmJgotcm0gLWYgQSBNICYmCi1naXQgdXBkYXRlLWluZGV4IC0tYWRkIC0tcmVtb3ZlIEEgQiBNIE4gJiYKLWdpdCBjb21taXQgLW0gIndoaXRlIHJlbmFtZXMgQS0+QiwgTS0+TiIgJiYKLQotZ2l0IGNoZWNrb3V0IHJlZCAmJgotZWNobyBjcmVhdGVkIGJ5IHJlZCA+UiAmJgotZ2l0IHVwZGF0ZS1pbmRleCAtLWFkZCBSICYmCi1naXQgY29tbWl0IC1tICJyZWQgY3JlYXRlcyBSIiAmJgotCi1naXQgY2hlY2tvdXQgYmx1ZSAmJgotc2VkIC1lICIvXm8gL3MvLiovZyA6IGJsdWUgY2hhbmdlcyBhIGxpbmUvIiA8QSA+QiAmJgotcm0gLWYgQSAmJgotbXYgQiBBICYmCi1naXQgdXBkYXRlLWluZGV4IEEgJiYKLWdpdCBjb21taXQgLW0gImJsdWUgbW9kaWZ5IEEiICYmCi0KLWdpdCBjaGVja291dCBtYXN0ZXInCiAKICMgVGhpcyB0ZXN0IGJyb2tlIGluIDY1YWM2ZTljM2Y0NzgwN2NiNjAzYWYwN2E2YTllMWE0M2JjMTE5YWUKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21lcmdlIHdoaXRlIGludG8gcmVkIChBLT5CLE0tPk4pJyBcCi0nCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdtZXJnZSB3aGl0ZSBpbnRvIHJlZCAoQS0+QixNLT5OKScgJwogCWdpdCBjaGVja291dCAtYiByZWQtd2hpdGUgcmVkICYmCiAJZ2l0IG1lcmdlIHdoaXRlICYmCiAJZ2l0IHdyaXRlLXRyZWUgJiYKQEAgLTgyLDggKzgxLDcgQEAKICcKIAogIyBUaGlzIHRlc3QgYnJva2UgaW4gODM3MTIzNGVjYWFmNmUxNGZlM2YyMDgyYTg1NWVmZjFiYmQ3OWFlOQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnbWVyZ2UgYmx1ZSBpbnRvIHdoaXRlIChBLT5CLCBtb2QgQSwgQSB1bnRyYWNrZWQpJyBcCi0nCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdtZXJnZSBibHVlIGludG8gd2hpdGUgKEEtPkIsIG1vZCBBLCBBIHVudHJhY2tlZCknICcKIAlnaXQgY2hlY2tvdXQgLWIgd2hpdGUtYmx1ZSB3aGl0ZSAmJgogCWVjaG8gZGlydHkgPkEgJiYKIAlnaXQgbWVyZ2UgYmx1ZSAmJgpkaWZmIC0tZ2l0IGEvdC90NjAzNS1tZXJnZS1kaXItdG8tc3ltbGluay5zaCBiL3QvdDYwMzUtbWVyZ2UtZGlyLXRvLXN5bWxpbmsuc2gKaW5kZXggOTMyNGVhNC4uMmVkZGNjNyAxMDA3NTUKLS0tIGEvdC90NjAzNS1tZXJnZS1kaXItdG8tc3ltbGluay5zaAorKysgYi90L3Q2MDM1LW1lcmdlLWRpci10by1zeW1saW5rLnNoCkBAIC0zMSwxOSArMzEsMTkgQEAKIAlnaXQgcm0gLS1jYWNoZWQgYS9iICYmCiAJZ2l0IGNvbW1pdCAtbSAidW50cmFja2VkIHN5bWxpbmsgcmVtYWlucyIgJiYKIAlnaXQgY2hlY2tvdXQgLWYgc3RhcnReMCAmJgotCXRlc3QgLWYgYS9iLTIvYy9kCisJdGVzdF9wYXRoX2lzX2ZpbGUgYS9iLTIvYy9kCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrb3V0IHNob3VsZCBub3QgaGF2ZSBkZWxldGVkIGEvYi0yL2MvZCcgJwogCWdpdCBjaGVja291dCBIRUFEXjAgJiYKIAlnaXQgcmVzZXQgLS1oYXJkIG1hc3RlciAmJgogCSBnaXQgY2hlY2tvdXQgc3RhcnReMCAmJgotCSB0ZXN0IC1mIGEvYi0yL2MvZAorCSB0ZXN0X3BhdGhfaXNfZmlsZSBhL2ItMi9jL2QKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgZm9yIG1lcmdlIHRlc3QnICcKIAlnaXQgcmVzZXQgLS1oYXJkICYmCi0JdGVzdCAtZiBhL2ItMi9jL2QgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSBhL2ItMi9jL2QgJiYKIAllY2hvIHggPiBhL3ggJiYKIAlnaXQgYWRkIGEveCAmJgogCWdpdCBjb21taXQgLW0geCAmJgpAQCAtNTQsNyArNTQsNyBAQAogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlnaXQgY2hlY2tvdXQgYmFzZWxpbmVeMCAmJgogCWdpdCBtZXJnZSAtcyByZXNvbHZlIG1hc3RlciAmJgotCXRlc3QgLWYgYS9iLTIvYy9kCisJdGVzdF9wYXRoX2lzX2ZpbGUgYS9iLTIvYy9kCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgU1lNTElOS1MgJ2EvYiB3YXMgcmVzb2x2ZWQgYXMgc3ltbGluaycgJwpAQCAtNjUsNyArNjUsNyBAQAogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlnaXQgY2hlY2tvdXQgYmFzZWxpbmVeMCAmJgogCWdpdCBtZXJnZSAtcyByZWN1cnNpdmUgbWFzdGVyICYmCi0JdGVzdCAtZiBhL2ItMi9jL2QKKwl0ZXN0X3BhdGhfaXNfZmlsZSBhL2ItMi9jL2QKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBTWU1MSU5LUyAnYS9iIHdhcyByZXNvbHZlZCBhcyBzeW1saW5rJyAnCkBAIC03Niw3ICs3Niw3IEBACiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWdpdCBjaGVja291dCBtYXN0ZXJeMCAmJgogCWdpdCBtZXJnZSAtcyByZXNvbHZlIGJhc2VsaW5lXjAgJiYKLQl0ZXN0IC1mIGEvYi0yL2MvZAorCXRlc3RfcGF0aF9pc19maWxlIGEvYi0yL2MvZAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIFNZTUxJTktTICdhL2Igd2FzIHJlc29sdmVkIGFzIHN5bWxpbmsnICcKQEAgLTg3LDcgKzg3LDcgQEAKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZ2l0IGNoZWNrb3V0IG1hc3Rlcl4wICYmCiAJZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBiYXNlbGluZV4wICYmCi0JdGVzdCAtZiBhL2ItMi9jL2QKKwl0ZXN0X3BhdGhfaXNfZmlsZSBhL2ItMi9jL2QKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBTWU1MSU5LUyAnYS9iIHdhcyByZXNvbHZlZCBhcyBzeW1saW5rJyAnCkBAIC05OSw4ICs5OSw4IEBACiAJZ2l0IGNoZWNrb3V0IGJhc2VsaW5lXjAgJiYKIAk+YS9iL2MvZSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZXNvbHZlIG1hc3RlciAmJgotCXRlc3QgLWYgYS9iL2MvZSAmJgotCXRlc3QgLWYgYS9iLTIvYy9kCisJdGVzdF9wYXRoX2lzX2ZpbGUgYS9iL2MvZSAmJgorCXRlc3RfcGF0aF9pc19maWxlIGEvYi0yL2MvZAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkbyBub3QgbG9zZSB1bnRyYWNrZWQgaW4gbWVyZ2UgKHJlY3Vyc2l2ZSknICcKQEAgLTEwOCw4ICsxMDgsOCBAQAogCWdpdCBjaGVja291dCBiYXNlbGluZV4wICYmCiAJPmEvYi9jL2UgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIG1hc3RlciAmJgotCXRlc3QgLWYgYS9iL2MvZSAmJgotCXRlc3QgLWYgYS9iLTIvYy9kCisJdGVzdF9wYXRoX2lzX2ZpbGUgYS9iL2MvZSAmJgorCXRlc3RfcGF0aF9pc19maWxlIGEvYi0yL2MvZAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkbyBub3QgbG9zZSBtb2RpZmljYXRpb25zIGluIG1lcmdlIChyZXNvbHZlKScgJwpAQCAtMTQwLDcgKzE0MCw3IEBACiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWdpdCBjaGVja291dCBiYXNlbGluZV4wICYmCiAJZ2l0IG1lcmdlIC1zIHJlc29sdmUgdGVzdDIgJiYKLQl0ZXN0IC1mIGEvYi9jL2QKKwl0ZXN0X3BhdGhfaXNfZmlsZSBhL2IvYy9kCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgU1lNTElOS1MgJ2EvYi0yIHdhcyByZXNvbHZlZCBhcyBzeW1saW5rJyAnCkBAIC0xNTEsNyArMTUxLDcgQEAKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZ2l0IGNoZWNrb3V0IGJhc2VsaW5lXjAgJiYKIAlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIHRlc3QyICYmCi0JdGVzdCAtZiBhL2IvYy9kCisJdGVzdF9wYXRoX2lzX2ZpbGUgYS9iL2MvZAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIFNZTUxJTktTICdhL2ItMiB3YXMgcmVzb2x2ZWQgYXMgc3ltbGluaycgJwpAQCAtMTYyLDcgKzE2Miw3IEBACiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWdpdCBjaGVja291dCAtYiBmb28gdGVzdDIgJiYKIAlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIGJhc2VsaW5lXjAgJiYKLQl0ZXN0IC1mIGEvYi9jL2QKKwl0ZXN0X3BhdGhfaXNfZmlsZSBhL2IvYy9kCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgU1lNTElOS1MgJ2EvYi0yIHdhcyByZXNvbHZlZCBhcyBzeW1saW5rJyAnCmRpZmYgLS1naXQgYS90L3Q2MDM2LXJlY3Vyc2l2ZS1jb3JuZXItY2FzZXMuc2ggYi90L3Q2MDM2LXJlY3Vyc2l2ZS1jb3JuZXItY2FzZXMuc2gKaW5kZXggZTFjZWY1OC4uYjNiZjQ2MiAxMDA3NTUKLS0tIGEvdC90NjAzNi1yZWN1cnNpdmUtY29ybmVyLWNhc2VzLnNoCisrKyBiL3QvdDYwMzYtcmVjdXJzaXZlLWNvcm5lci1jYXNlcy5zaApAQCAtNjAsMTkgKzYwLDE2IEBACiAJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgUjJeMCAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCi0JCXRlc3RfbGluZV9jb3VudCA9IDIgb3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDUgb3V0ICYmCiAJCWdpdCBscy1maWxlcyAtdSA+b3V0ICYmCi0JCXRlc3RfbGluZV9jb3VudCA9IDIgb3V0ICYmCi0JCWdpdCBscy1maWxlcyAtbyA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCisJCWdpdCBscy1maWxlcyAtbyA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgb3V0ICYmCiAKIAkJZ2l0IHJldi1wYXJzZSA+ZXhwZWN0ICAgICAgIFwKLQkJCUwyOnRocmVlICAgUjI6dGhyZWUgXAogCQkJTDI6dGhyZWUgICBSMjp0aHJlZSAmJgogCQlnaXQgcmV2LXBhcnNlICAgPmFjdHVhbCAgICAgXAogCQkJOjI6dGhyZWUgICA6Mzp0aHJlZSAmJgotCQlnaXQgaGFzaC1vYmplY3QgPj5hY3R1YWwgICAgXAotCQkJdGhyZWV+SEVBRCB0aHJlZX5SMl4wICYmCiAJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKIAkpCiAnCkBAIC0xMzYsMTkgKzEzMywxNiBAQAogCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIFIyXjAgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgotCQl0ZXN0X2xpbmVfY291bnQgPSAyIG91dCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSA1IG91dCAmJgogCQlnaXQgbHMtZmlsZXMgLXUgPm91dCAmJgotCQl0ZXN0X2xpbmVfY291bnQgPSAyIG91dCAmJgotCQlnaXQgbHMtZmlsZXMgLW8gPm91dCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSAzIG91dCAmJgorCQlnaXQgbHMtZmlsZXMgLW8gPm91dCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAxIG91dCAmJgogCiAJCWdpdCByZXYtcGFyc2UgPmV4cGVjdCAgICAgICBcCi0JCQlMMjp0aHJlZSAgIFIyOnRocmVlIFwKIAkJCUwyOnRocmVlICAgUjI6dGhyZWUgJiYKIAkJZ2l0IHJldi1wYXJzZSAgID5hY3R1YWwgICAgIFwKIAkJCToyOnRocmVlICAgOjM6dGhyZWUgJiYKLQkJZ2l0IGhhc2gtb2JqZWN0ID4+YWN0dWFsICAgIFwKLQkJCXRocmVlfkhFQUQgdGhyZWV+UjJeMCAmJgogCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAJKQogJwpAQCAtMTg1LDcgKzE3OSw3IEBACiAJCWdpdCBicmFuY2ggQiAmJgogCQlnaXQgY2hlY2tvdXQgLWIgQyAmJgogCQllY2hvIDEwID4+YSAmJgotCQllY2hvICJvdGhlciBjb250ZW50IiA+Pm5ld19hICYmCisJCXRlc3Rfd3JpdGVfbGluZXMgMCAxIDIgMyA0IDUgNiA3IGZvb2JhciA+bmV3X2EgJiYKIAkJZ2l0IGFkZCBhIG5ld19hICYmCiAJCXRlc3RfdGljayAmJiBnaXQgY29tbWl0IC1tIEMgJiYKIApAQCAtMTk1LDE0ICsxODksMTQgQEAKIAogCQlnaXQgY2hlY2tvdXQgQl4wICYmCiAJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBDICYmCi0JCWdpdCBjbGVhbiAtZiAmJgorCQlnaXQgc2hvdyA6MjpuZXdfYSA+bmV3X2EgJiYKKwkJZ2l0IGFkZCBuZXdfYSAmJgogCQl0ZXN0X3RpY2sgJiYgZ2l0IGNvbW1pdCAtbSBEICYmCiAJCWdpdCB0YWcgRCAmJgogCiAJCWdpdCBjaGVja291dCBDXjAgJiYKIAkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIEIgJiYKLQkJcm0gbmV3X2F+SEVBRCBuZXdfYSAmJgotCQlwcmludGYgIkluY29ycmVjdGx5IG1lcmdlZCBjb250ZW50IiA+Pm5ld19hICYmCisJCXRlc3Rfd3JpdGVfbGluZXMgMCAxIDIgMyA0IDUgNiA3IGJhZF9tZXJnZSA+bmV3X2EgJiYKIAkJZ2l0IGFkZCAtdSAmJgogCQl0ZXN0X3RpY2sgJiYgZ2l0IGNvbW1pdCAtbSBFICYmCiAJCWdpdCB0YWcgRQpAQCAtMjI0LDIyICsyMTgsOTYgQEAKIAkJZ2l0IGxzLWZpbGVzIC1vID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gMSBvdXQgJiYKIAotCQlnaXQgcmV2LXBhcnNlID5leHBlY3QgICAgICAgXAotCQkJRDpuZXdfYSAgRTpuZXdfYSAmJgotCQlnaXQgcmV2LXBhcnNlICAgPmFjdHVhbCAgICAgXAotCQkJOjI6bmV3X2EgOjM6bmV3X2EgJiYKLQkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgotCiAJCWdpdCBjYXQtZmlsZSAtcCBDOm5ld19hID5vdXJzICYmCi0JCWdpdCBjYXQtZmlsZSAtcCBCOm5ld19hID50aGVpcnMgJiYKKwkJZ2l0IGNhdC1maWxlIC1wIEM6YSA+dGhlaXJzICYmCiAJCT5lbXB0eSAmJgogCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UtZmlsZSBcCiAJCQktTCAiVGVtcG9yYXJ5IG1lcmdlIGJyYW5jaCAxIiBcCiAJCQktTCAiIiBcCiAJCQktTCAiVGVtcG9yYXJ5IG1lcmdlIGJyYW5jaCAyIiBcCiAJCQlvdXJzIGVtcHR5IHRoZWlycyAmJgorCQlzZWQgLWUgInMvXlwoWzw9Pl1cKS9cMVwxXDEvIiBvdXJzID5vdXJzLXR3ZWFrZWQgJiYKKwkJZ2l0IGhhc2gtb2JqZWN0IG91cnMtdHdlYWtlZCA+ZXhwZWN0ICYmCisJCWdpdCByZXYtcGFyc2UgPj5leHBlY3QgICAgICBcCisJCQkJICBEOm5ld19hICBFOm5ld19hICYmCisJCWdpdCByZXYtcGFyc2UgICA+YWN0dWFsICAgICBcCisJCQk6MTpuZXdfYSA6MjpuZXdfYSA6MzpuZXdfYSAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwkJIyBUZXN0IHRoYXQgdGhlIHR3by13YXkgbWVyZ2UgaW4gbmV3X2EgaXMgYXMgZXhwZWN0ZWQKKwkJZ2l0IGNhdC1maWxlIC1wIEQ6bmV3X2EgPm91cnMgJiYKKwkJZ2l0IGNhdC1maWxlIC1wIEU6bmV3X2EgPnRoZWlycyAmJgorCQk+ZW1wdHkgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgXAorCQkJLUwgIkhFQUQiIFwKKwkJCS1MICIiIFwKKwkJCS1MICJFXjAiIFwKKwkJCW91cnMgZW1wdHkgdGhlaXJzICYmCiAJCXNlZCAtZSAicy9eXChbPD0+XVwpL1wxXDFcMS8iIG91cnMgPmV4cGVjdCAmJgotCQlnaXQgY2F0LWZpbGUgLXAgOjE6bmV3X2EgPmFjdHVhbCAmJgorCQlnaXQgaGFzaC1vYmplY3QgbmV3X2EgPmFjdHVhbCAmJgorCQlnaXQgaGFzaC1vYmplY3Qgb3VycyAgPmV4cGVjdCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJKQorJworCisjIFJlcGVhdCB0aGUgYWJvdmUgdGVzdGNhc2Ugd2l0aCBwcmVjaXNlbHkgdGhlIHNhbWUgc2V0dXAsIG90aGVyIHRoYW4gd2l0aAorIyB0aGUgdHdvIG1lcmdlIGJhc2VzIGhhdmluZyBkaWZmZXJlbnQgb3JkZXJpbmdzIG9mIGNvbW1pdCB0aW1lc3RhbXBzIHNvCisjIHRoYXQgdGhleSBhcmUgcmV2ZXJzZWQgaW4gdGhlIG9yZGVyIHRoZXkgYXJlIHByb3ZpZGVkIHRvIG1lcmdlLXJlY3Vyc2l2ZSwKKyMgc28gdGhhdCB3ZSBjYW4gaW1wcm92ZSBjb2RlIGNvdmVyYWdlLgordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGRldGVjdHMgZGlmZmVyZW50bHkgaGFuZGxlZCBtZXJnZXMgY29uZmxpY3QsIHN3YXBwZWQnICcKKwkoCisJCWNkIHJlbmFtZS1hZGQgJiYKKworCQkjIERpZmZlcmVuY2UgIzE6IERvIGNsZWFudXAgZnJvbSBwcmV2aW91cyB0ZXN0cnVuCisJCWdpdCByZXNldCAtLWhhcmQgJiYKKwkJZ2l0IGNsZWFuIC1mZHF4ICYmCisKKwkJIyBEaWZmZXJlbmNlICMyOiBDaGFuZ2UgY29tbWl0IHRpbWVzdGFtcHMKKwkJYnRpbWU9JChnaXQgbG9nIC0tbm8td2FsayAtLWRhdGU9cmF3IC0tZm9ybWF0PSVjZCBCIHwgYXdrICJ7cHJpbnQgXCQxfSIpICYmCisJCWN0aW1lPSQoZ2l0IGxvZyAtLW5vLXdhbGsgLS1kYXRlPXJhdyAtLWZvcm1hdD0lY2QgQyB8IGF3ayAie3ByaW50IFwkMX0iKSAmJgorCQluZXdjdGltZT0kKCgkYnRpbWUrMSkpICYmCisJCWdpdCBmYXN0LWV4cG9ydCAtLW5vLWRhdGEgLS1hbGwgfCBzZWQgLWUgcy8kY3RpbWUvJG5ld2N0aW1lLyB8IGdpdCBmYXN0LWltcG9ydCAtLWZvcmNlIC0tcXVpZXQgJiYKKwkJIyBFbmQgb2YgbW9zdCBkaWZmZXJlbmNlczsgcmVzdCBpcyBjb3B5LXBhc3RlIG9mIGxhc3QgdGVzdCwKKwkJIyBvdGhlciB0aGFuIHN3YXBwaW5nIEM6YSBhbmQgQzpuZXdfYSBkdWUgdG8gb3JkZXIgc3dpdGNoCisKKwkJZ2l0IGNoZWNrb3V0IEReMCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEVeMCAmJgorCisJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCisJCWdpdCBscy1maWxlcyAtdSA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCisJCWdpdCBscy1maWxlcyAtbyA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgb3V0ICYmCisKKwkJZ2l0IGNhdC1maWxlIC1wIEM6YSA+b3VycyAmJgorCQlnaXQgY2F0LWZpbGUgLXAgQzpuZXdfYSA+dGhlaXJzICYmCisJCT5lbXB0eSAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UtZmlsZSBcCisJCQktTCAiVGVtcG9yYXJ5IG1lcmdlIGJyYW5jaCAxIiBcCisJCQktTCAiIiBcCisJCQktTCAiVGVtcG9yYXJ5IG1lcmdlIGJyYW5jaCAyIiBcCisJCQlvdXJzIGVtcHR5IHRoZWlycyAmJgorCQlzZWQgLWUgInMvXlwoWzw9Pl1cKS9cMVwxXDEvIiBvdXJzID5vdXJzLXR3ZWFrZWQgJiYKKwkJZ2l0IGhhc2gtb2JqZWN0IG91cnMtdHdlYWtlZCA+ZXhwZWN0ICYmCisJCWdpdCByZXYtcGFyc2UgPj5leHBlY3QgICAgICBcCisJCQkJICBEOm5ld19hICBFOm5ld19hICYmCisJCWdpdCByZXYtcGFyc2UgICA+YWN0dWFsICAgICBcCisJCQk6MTpuZXdfYSA6MjpuZXdfYSA6MzpuZXdfYSAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwkJIyBUZXN0IHRoYXQgdGhlIHR3by13YXkgbWVyZ2UgaW4gbmV3X2EgaXMgYXMgZXhwZWN0ZWQKKwkJZ2l0IGNhdC1maWxlIC1wIEQ6bmV3X2EgPm91cnMgJiYKKwkJZ2l0IGNhdC1maWxlIC1wIEU6bmV3X2EgPnRoZWlycyAmJgorCQk+ZW1wdHkgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgXAorCQkJLUwgIkhFQUQiIFwKKwkJCS1MICIiIFwKKwkJCS1MICJFXjAiIFwKKwkJCW91cnMgZW1wdHkgdGhlaXJzICYmCisJCXNlZCAtZSAicy9eXChbPD0+XVwpL1wxXDFcMS8iIG91cnMgPmV4cGVjdCAmJgorCQlnaXQgaGFzaC1vYmplY3QgbmV3X2EgPmFjdHVhbCAmJgorCQlnaXQgaGFzaC1vYmplY3Qgb3VycyAgPmV4cGVjdCAmJgogCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAJKQogJwpAQCAtMTQwMiw0ICsxNDcwLDM1MSBAQAogCSkKICcKIAorIyBTZXR1cDoKKyMgICAgICAgICAgTDEtLS1MMgorIyAgICAgICAgIC8gIFwgLyAgXAorIyAgIG1hc3RlciAgICBYICAgID8KKyMgICAgICAgICBcICAvIFwgIC8KKyMgICAgICAgICAgUjEtLS1SMgorIworIyBXaGVyZToKKyMgICBtYXN0ZXIgaGFzIHR3byBmaWxlcywgbmFtZWQgJ2InIGFuZCAnYScKKyMgICBicmFuY2hlcyBMMSBhbmQgUjEgYm90aCBtb2RpZnkgZWFjaCBvZiB0aGUgdHdvIGZpbGVzIGluIGNvbmZsaWN0aW5nIHdheXMKKyMKKyMgICBMMiBpcyBhIG1lcmdlIG9mIFIxIGludG8gTDE7IG1vcmUgb24gaXQgbGF0ZXIuCisjICAgUjIgaXMgYSBtZXJnZSBvZiBMMSBpbnRvIFIxOyBtb3JlIG9uIGl0IGxhdGVyLgorIworIyAgIFggaXMgYW4gYXV0by1nZW5lcmF0ZWQgbWVyZ2UtYmFzZSB1c2VkIHdoZW4gbWVyZ2luZyBMMiBhbmQgUjIuCisjICAgc2luY2UgWCBpcyBhIG1lcmdlIG9mIEwxIGFuZCBSMSwgaXQgaGFzIGNvbmZsaWN0aW5nIHZlcnNpb25zIG9mIGVhY2ggZmlsZQorIworIyAgIE1vcmUgYWJvdXQgTDIgYW5kIFIyOgorIyAgICAgLSBib3RoIHJlc29sdmUgdGhlIGNvbmZsaWN0cyBpbiAnYicgYW5kICdhJyBkaWZmZXJlbnRseQorIyAgICAgLSBMMiByZW5hbWVzICdiJyB0byAnbScKKyMgICAgIC0gUjIgcmVuYW1lcyAnYScgdG8gJ20nCisjCisjICAgSW4gdGhlIGVuZCwgaW4gZmlsZSAnbScgd2UgaGF2ZSBmb3VyIGRpZmZlcmVudCBjb25mbGljdGluZyBmaWxlcyAoZnJvbQorIyAgIHR3byB2ZXJzaW9ucyBvZiAnYicgYW5kIHR3byBvZiAnYScpLiAgSW4gYWRkaXRpb24sIGlmCisjICAgbWVyZ2UuY29uZmxpY3RzdHlsZSBpcyBkaWZmMywgdGhlbiB0aGUgYmFzZSB2ZXJzaW9uIGFsc28gaGFzCisjICAgY29uZmxpY3QgbWFya2VycyBvZiBpdHMgb3duLCBsZWFkaW5nIHRvIGEgdG90YWwgb2YgdGhyZWUgbGV2ZWxzIG9mCisjICAgY29uZmxpY3QgbWFya2Vycy4gIFRoaXMgaXMgYSBwcmV0dHkgd2VpcmQgY29ybmVyIGNhc2UsIGJ1dCB3ZSBqdXN0IHdhbnQKKyMgICB0byBlbnN1cmUgdGhhdCB3ZSBoYW5kbGUgaXQgYXMgd2VsbCBhcyBwcmFjdGljYWwuCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIG5lc3RlZCBjb25mbGljdHMnICcKKwl0ZXN0X2NyZWF0ZV9yZXBvIG5lc3RlZF9jb25mbGljdHMgJiYKKwkoCisJCWNkIG5lc3RlZF9jb25mbGljdHMgJiYKKworCQkjIENyZWF0ZSBzb21lIHJlbGF0ZWQgZmlsZXMgbm93CisJCWZvciBpIGluICQodGVzdF9zZXEgMSAxMCkKKwkJZG8KKwkJCWVjaG8gUmFuZG9tIGJhc2UgY29udGVudCBsaW5lICRpCisJCWRvbmUgPmluaXRpYWwgJiYKKworCQljcCBpbml0aWFsIGJfTDEgJiYKKwkJY3AgaW5pdGlhbCBiX1IxICYmCisJCWNwIGluaXRpYWwgYl9MMiAmJgorCQljcCBpbml0aWFsIGJfUjIgJiYKKwkJY3AgaW5pdGlhbCBhX0wxICYmCisJCWNwIGluaXRpYWwgYV9SMSAmJgorCQljcCBpbml0aWFsIGFfTDIgJiYKKwkJY3AgaW5pdGlhbCBhX1IyICYmCisKKwkJdGVzdF93cml0ZV9saW5lcyBiIGJfTDEgPj5iX0wxICYmCisJCXRlc3Rfd3JpdGVfbGluZXMgYiBiX1IxID4+Yl9SMSAmJgorCQl0ZXN0X3dyaXRlX2xpbmVzIGIgYl9MMiA+PmJfTDIgJiYKKwkJdGVzdF93cml0ZV9saW5lcyBiIGJfUjIgPj5iX1IyICYmCisJCXRlc3Rfd3JpdGVfbGluZXMgYSBhX0wxID4+YV9MMSAmJgorCQl0ZXN0X3dyaXRlX2xpbmVzIGEgYV9SMSA+PmFfUjEgJiYKKwkJdGVzdF93cml0ZV9saW5lcyBhIGFfTDIgPj5hX0wyICYmCisJCXRlc3Rfd3JpdGVfbGluZXMgYSBhX1IyID4+YV9SMiAmJgorCisJCSMgU2V0dXAgb3JpZ2luYWwgY29tbWl0IChvciBtZXJnZS1iYXNlKSwgY29uc2lzdGluZyBvZgorCQkjIGZpbGVzIG5hbWVkICJiIiBhbmQgImEiCisJCWNwIGluaXRpYWwgYiAmJgorCQljcCBpbml0aWFsIGEgJiYKKwkJZWNobyBiID4+YiAmJgorCQllY2hvIGEgPj5hICYmCisJCWdpdCBhZGQgYiBhICYmCisJCXRlc3RfdGljayAmJiBnaXQgY29tbWl0IC1tIGluaXRpYWwgJiYKKworCQlnaXQgYnJhbmNoIEwgJiYKKwkJZ2l0IGJyYW5jaCBSICYmCisKKwkJIyBIYW5kbGUgdGhlIGxlZnQgc2lkZQorCQlnaXQgY2hlY2tvdXQgTCAmJgorCQltdiAtZiBiX0wxIGIgJiYKKwkJbXYgLWYgYV9MMSBhICYmCisJCWdpdCBhZGQgYiBhICYmCisJCXRlc3RfdGljayAmJiBnaXQgY29tbWl0IC1tICJ2ZXJzaW9uIEwxIG9mIGZpbGVzIiAmJgorCQlnaXQgdGFnIEwxICYmCisKKwkJIyBIYW5kbGUgdGhlIHJpZ2h0IHNpZGUKKwkJZ2l0IGNoZWNrb3V0IFIgJiYKKwkJbXYgLWYgYl9SMSBiICYmCisJCW12IC1mIGFfUjEgYSAmJgorCQlnaXQgYWRkIGIgYSAmJgorCQl0ZXN0X3RpY2sgJiYgZ2l0IGNvbW1pdCAtbSAidmVyc2lvbiBSMSBvZiBmaWxlcyIgJiYKKwkJZ2l0IHRhZyBSMSAmJgorCisJCSMgQ3JlYXRlIGZpcnN0IG1lcmdlIG9uIGxlZnQgc2lkZQorCQlnaXQgY2hlY2tvdXQgTCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgUjEgJiYKKwkJbXYgLWYgYl9MMiBiICYmCisJCW12IC1mIGFfTDIgYSAmJgorCQlnaXQgYWRkIGIgYSAmJgorCQlnaXQgbXYgYiBtICYmCisJCXRlc3RfdGljayAmJiBnaXQgY29tbWl0IC1tICJsZWZ0IG1lcmdlLCByZW5hbWUgYi0+bSIgJiYKKwkJZ2l0IHRhZyBMMiAmJgorCisJCSMgQ3JlYXRlIGZpcnN0IG1lcmdlIG9uIHJpZ2h0IHNpZGUKKwkJZ2l0IGNoZWNrb3V0IFIgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIEwxICYmCisJCW12IC1mIGJfUjIgYiAmJgorCQltdiAtZiBhX1IyIGEgJiYKKwkJZ2l0IGFkZCBiIGEgJiYKKwkJZ2l0IG12IGEgbSAmJgorCQl0ZXN0X3RpY2sgJiYgZ2l0IGNvbW1pdCAtbSAicmlnaHQgbWVyZ2UsIHJlbmFtZSBhLT5tIiAmJgorCQlnaXQgdGFnIFIyCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjayBuZXN0ZWQgY29uZmxpY3RzJyAnCisJKAorCQljZCBuZXN0ZWRfY29uZmxpY3RzICYmCisKKwkJZ2l0IGNsZWFuIC1mICYmCisJCU1BU1RFUj0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBtYXN0ZXIpICYmCisJCWdpdCBjaGVja291dCBMMl4wICYmCisKKwkJIyBNZXJnZSBtdXN0IGZhaWw7IHRoZXJlIGlzIGEgY29uZmxpY3QKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmNvbmZsaWN0c3R5bGU9ZGlmZjMgbWVyZ2UgLXMgcmVjdXJzaXZlIFIyXjAgJiYKKworCQkjIE1ha2Ugc3VyZSB0aGUgaW5kZXggaGFzIHRoZSByaWdodCBudW1iZXIgb2YgZW50cmllcworCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAyIG91dCAmJgorCQlnaXQgbHMtZmlsZXMgLXUgPm91dCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAyIG91dCAmJgorCQkjIEVuc3VyZSB3ZSBoYXZlIHRoZSBjb3JyZWN0IG51bWJlciBvZiB1bnRyYWNrZWQgZmlsZXMKKwkJZ2l0IGxzLWZpbGVzIC1vID5vdXQgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMSBvdXQgJiYKKworCQkjIENyZWF0ZSBhIGFuZCBiIGZyb20gdmlydHVhbCBtZXJnZSBiYXNlIFgKKwkJZ2l0IGNhdC1maWxlIC1wIG1hc3RlcjphID5iYXNlICYmCisJCWdpdCBjYXQtZmlsZSAtcCBMMTphID5vdXJzICYmCisJCWdpdCBjYXQtZmlsZSAtcCBSMTphID50aGVpcnMgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgLS1kaWZmMyBcCisJCQktTCAiVGVtcG9yYXJ5IG1lcmdlIGJyYW5jaCAxIiBcCisJCQktTCAiJE1BU1RFUiIgIFwKKwkJCS1MICJUZW1wb3JhcnkgbWVyZ2UgYnJhbmNoIDIiIFwKKwkJCW91cnMgIFwKKwkJCWJhc2UgIFwKKwkJCXRoZWlycyAmJgorCQlzZWQgLWUgInMvXlwoWzx8PT5dXCkvXDFcMS8iIG91cnMgPnZtYl9hICYmCisKKwkJZ2l0IGNhdC1maWxlIC1wIG1hc3RlcjpiID5iYXNlICYmCisJCWdpdCBjYXQtZmlsZSAtcCBMMTpiID5vdXJzICYmCisJCWdpdCBjYXQtZmlsZSAtcCBSMTpiID50aGVpcnMgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgLS1kaWZmMyBcCisJCQktTCAiVGVtcG9yYXJ5IG1lcmdlIGJyYW5jaCAxIiBcCisJCQktTCAiJE1BU1RFUiIgIFwKKwkJCS1MICJUZW1wb3JhcnkgbWVyZ2UgYnJhbmNoIDIiIFwKKwkJCW91cnMgIFwKKwkJCWJhc2UgIFwKKwkJCXRoZWlycyAmJgorCQlzZWQgLWUgInMvXlwoWzx8PT5dXCkvXDFcMS8iIG91cnMgPnZtYl9iICYmCisKKwkJIyBDb21wYXJlIDoyOm0gdG8gZXhwZWN0ZWQgdmFsdWVzCisJCWdpdCBjYXQtZmlsZSAtcCBMMjptID5vdXJzICYmCisJCWdpdCBjYXQtZmlsZSAtcCBSMjpiID50aGVpcnMgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgLS1kaWZmMyAgXAorCQkJLUwgIkhFQUQ6bSIgICAgICAgICAgICAgICAgICAgIFwKKwkJCS1MICJtZXJnZWQgY29tbW9uIGFuY2VzdG9yczpiIiBcCisJCQktTCAiUjJeMDpiIiAgICAgICAgICAgICAgICAgICAgXAorCQkJb3VycyAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKwkJCXZtYl9iICAgICAgICAgICAgICAgICAgICAgICAgICBcCisJCQl0aGVpcnMgICAgICAgICAgICAgICAgICAgICAgICAgJiYKKwkJc2VkIC1lICJzL15cKFs8fD0+XVwpL1wxXDEvIiBvdXJzID5tX3N0YWdlXzIgJiYKKwkJZ2l0IGNhdC1maWxlIC1wIDoyOm0gPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBtX3N0YWdlXzIgYWN0dWFsICYmCisKKwkJIyBDb21wYXJlIDozOm0gdG8gZXhwZWN0ZWQgdmFsdWVzCisJCWdpdCBjYXQtZmlsZSAtcCBMMjphID5vdXJzICYmCisJCWdpdCBjYXQtZmlsZSAtcCBSMjptID50aGVpcnMgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgLS1kaWZmMyAgXAorCQkJLUwgIkhFQUQ6YSIgICAgICAgICAgICAgICAgICAgIFwKKwkJCS1MICJtZXJnZWQgY29tbW9uIGFuY2VzdG9yczphIiBcCisJCQktTCAiUjJeMDptIiAgICAgICAgICAgICAgICAgICAgXAorCQkJb3VycyAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKwkJCXZtYl9hICAgICAgICAgICAgICAgICAgICAgICAgICBcCisJCQl0aGVpcnMgICAgICAgICAgICAgICAgICAgICAgICAgJiYKKwkJc2VkIC1lICJzL15cKFs8fD0+XVwpL1wxXDEvIiBvdXJzID5tX3N0YWdlXzMgJiYKKwkJZ2l0IGNhdC1maWxlIC1wIDozOm0gPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBtX3N0YWdlXzMgYWN0dWFsICYmCisKKwkJIyBDb21wYXJlIG0gdG8gZXhwZWN0ZWQgY29udGVudHMKKwkJPmVtcHR5ICYmCisJCWNwIG1fc3RhZ2VfMiBleHBlY3RlZF9maW5hbF9tICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZS1maWxlIC0tZGlmZjMgXAorCQkJLUwgIkhFQUQiICAgICAgICAgICAgICAgICAgICAgXAorCQkJLUwgIm1lcmdlZCBjb21tb24gYW5jZXN0b3JzIiAgXAorCQkJLUwgIlIyXjAiICAgICAgICAgICAgICAgICAgICAgXAorCQkJZXhwZWN0ZWRfZmluYWxfbSAgICAgICAgICAgICAgXAorCQkJZW1wdHkgICAgICAgICAgICAgICAgICAgICAgICAgXAorCQkJbV9zdGFnZV8zICAgICAgICAgICAgICAgICAgICAgJiYKKwkJdGVzdF9jbXAgZXhwZWN0ZWRfZmluYWxfbSBtCisJKQorJworCisjIFNldHVwOgorIyAgICAgICAgICBMMS0tLUwyLS0tTDMKKyMgICAgICAgICAvICBcIC8gIFwgLyAgXAorIyAgIG1hc3RlciAgICBYMSAgIFgyICAgPworIyAgICAgICAgIFwgIC8gXCAgLyBcICAvCisjICAgICAgICAgIFIxLS0tUjItLS1SMworIworIyBXaGVyZToKKyMgICBtYXN0ZXIgaGFzIG9uZSBmaWxlIG5hbWVkICdjb250ZW50JworIyAgIGJyYW5jaGVzIEwxIGFuZCBSMSBib3RoIG1vZGlmeSBlYWNoIG9mIHRoZSB0d28gZmlsZXMgaW4gY29uZmxpY3Rpbmcgd2F5cworIworIyAgIEw8bj4gKG4+MSkgaXMgYSBtZXJnZSBvZiBSPG4tMT4gaW50byBMPG4tMT4KKyMgICBSPG4+IChuPjEpIGlzIGEgbWVyZ2Ugb2YgTDxuLTE+IGludG8gUjxuLTE+CisjICAgTDxuPiBhbmQgUjxuPiByZXNvbHZlIHRoZSBjb25mbGljdHMgZGlmZmVyZW50bHkuCisjCisjICAgWDxuPiBpcyBhbiBhdXRvLWdlbmVyYXRlZCBtZXJnZS1iYXNlIHVzZWQgd2hlbiBtZXJnaW5nIEw8bisxPiBhbmQgUjxuKzE+LgorIyAgIEJ5IGNvbnN0cnVjdGlvbiwgWDEgaGFzIGNvbmZsaWN0IG1hcmtlcnMgZHVlIHRvIGNvbmZsaWN0aW5nIHZlcnNpb25zLgorIyAgIFgyLCBkdWUgdG8gdXNpbmcgbWVyZ2UuY29uZmxpY3RzdHlsZT0zLCBoYXMgbmVzdGVkIGNvbmZsaWN0IG1hcmtlcnMuCisjCisjICAgU28sIG1lcmdpbmcgUjMgaW50byBMMyB1c2luZyBtZXJnZS5jb25mbGljdHN0eWxlPTMgc2hvdWxkIHNob3cgdGhlCisjICAgbmVzdGVkIGNvbmZsaWN0IG1hcmtlcnMgZnJvbSBYMiBpbiB0aGUgYmFzZSB2ZXJzaW9uIC0tIHRoYXQgbWVhbnMgd2UKKyMgICBoYXZlIHRocmVlIGxldmVscyBvZiBjb25mbGljdCBtYXJrZXJzLiAgQ2FuIHdlIGRpc3Rpbmd1aXNoIGFsbCB0aHJlZT8KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgdmlydHVhbCBtZXJnZSBiYXNlIHdpdGggbmVzdGVkIGNvbmZsaWN0cycgJworCXRlc3RfY3JlYXRlX3JlcG8gdmlydHVhbF9tZXJnZV9iYXNlX2hhc19uZXN0ZWRfY29uZmxpY3RzICYmCisJKAorCQljZCB2aXJ0dWFsX21lcmdlX2Jhc2VfaGFzX25lc3RlZF9jb25mbGljdHMgJiYKKworCQkjIENyZWF0ZSBzb21lIHJlbGF0ZWQgZmlsZXMgbm93CisJCWZvciBpIGluICQodGVzdF9zZXEgMSAxMCkKKwkJZG8KKwkJCWVjaG8gUmFuZG9tIGJhc2UgY29udGVudCBsaW5lICRpCisJCWRvbmUgPmNvbnRlbnQgJiYKKworCQkjIFNldHVwIG9yaWdpbmFsIGNvbW1pdAorCQlnaXQgYWRkIGNvbnRlbnQgJiYKKwkJdGVzdF90aWNrICYmIGdpdCBjb21taXQgLW0gaW5pdGlhbCAmJgorCisJCWdpdCBicmFuY2ggTCAmJgorCQlnaXQgYnJhbmNoIFIgJiYKKworCQkjIENyZWF0ZSBMMQorCQlnaXQgY2hlY2tvdXQgTCAmJgorCQllY2hvIGxlZnQgPj5jb250ZW50ICYmCisJCWdpdCBhZGQgY29udGVudCAmJgorCQl0ZXN0X3RpY2sgJiYgZ2l0IGNvbW1pdCAtbSAidmVyc2lvbiBMMSBvZiBjb250ZW50IiAmJgorCQlnaXQgdGFnIEwxICYmCisKKwkJIyBDcmVhdGUgUjEKKwkJZ2l0IGNoZWNrb3V0IFIgJiYKKwkJZWNobyByaWdodCA+PmNvbnRlbnQgJiYKKwkJZ2l0IGFkZCBjb250ZW50ICYmCisJCXRlc3RfdGljayAmJiBnaXQgY29tbWl0IC1tICJ2ZXJzaW9uIFIxIG9mIGNvbnRlbnQiICYmCisJCWdpdCB0YWcgUjEgJiYKKworCQkjIENyZWF0ZSBMMgorCQlnaXQgY2hlY2tvdXQgTCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgbWVyZ2UuY29uZmxpY3RzdHlsZT1kaWZmMyBtZXJnZSBSMSAmJgorCQlnaXQgY2hlY2tvdXQgTDEgY29udGVudCAmJgorCQl0ZXN0X3RpY2sgJiYgZ2l0IGNvbW1pdCAtbSAidmVyc2lvbiBMMiBvZiBjb250ZW50IiAmJgorCQlnaXQgdGFnIEwyICYmCisKKwkJIyBDcmVhdGUgUjIKKwkJZ2l0IGNoZWNrb3V0IFIgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmNvbmZsaWN0c3R5bGU9ZGlmZjMgbWVyZ2UgTDEgJiYKKwkJZ2l0IGNoZWNrb3V0IFIxIGNvbnRlbnQgJiYKKwkJdGVzdF90aWNrICYmIGdpdCBjb21taXQgLW0gInZlcnNpb24gUjIgb2YgY29udGVudCIgJiYKKwkJZ2l0IHRhZyBSMiAmJgorCisJCSMgQ3JlYXRlIEwzCisJCWdpdCBjaGVja291dCBMICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBtZXJnZS5jb25mbGljdHN0eWxlPWRpZmYzIG1lcmdlIFIyICYmCisJCWdpdCBjaGVja291dCBMMSBjb250ZW50ICYmCisJCXRlc3RfdGljayAmJiBnaXQgY29tbWl0IC1tICJ2ZXJzaW9uIEwzIG9mIGNvbnRlbnQiICYmCisJCWdpdCB0YWcgTDMgJiYKKworCQkjIENyZWF0ZSBSMworCQlnaXQgY2hlY2tvdXQgUiAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgbWVyZ2UuY29uZmxpY3RzdHlsZT1kaWZmMyBtZXJnZSBMMiAmJgorCQlnaXQgY2hlY2tvdXQgUjEgY29udGVudCAmJgorCQl0ZXN0X3RpY2sgJiYgZ2l0IGNvbW1pdCAtbSAidmVyc2lvbiBSMyBvZiBjb250ZW50IiAmJgorCQlnaXQgdGFnIFIzCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjayB2aXJ0dWFsIG1lcmdlIGJhc2Ugd2l0aCBuZXN0ZWQgY29uZmxpY3RzJyAnCisJKAorCQljZCB2aXJ0dWFsX21lcmdlX2Jhc2VfaGFzX25lc3RlZF9jb25mbGljdHMgJiYKKworCQlNQVNURVI9JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgbWFzdGVyKSAmJgorCQlnaXQgY2hlY2tvdXQgTDNeMCAmJgorCisJCSMgTWVyZ2UgbXVzdCBmYWlsOyB0aGVyZSBpcyBhIGNvbmZsaWN0CisJCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBtZXJnZS5jb25mbGljdHN0eWxlPWRpZmYzIG1lcmdlIC1zIHJlY3Vyc2l2ZSBSM14wICYmCisKKwkJIyBNYWtlIHN1cmUgdGhlIGluZGV4IGhhcyB0aGUgcmlnaHQgbnVtYmVyIG9mIGVudHJpZXMKKwkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMyBvdXQgJiYKKwkJZ2l0IGxzLWZpbGVzIC11ID5vdXQgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMyBvdXQgJiYKKwkJIyBFbnN1cmUgd2UgaGF2ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgdW50cmFja2VkIGZpbGVzCisJCWdpdCBscy1maWxlcyAtbyA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgb3V0ICYmCisKKwkJIyBDb21wYXJlIDpbMjNdOmNvbnRlbnQgdG8gZXhwZWN0ZWQgdmFsdWVzCisJCWdpdCByZXYtcGFyc2UgTDE6Y29udGVudCBSMTpjb250ZW50ID5leHBlY3QgJiYKKwkJZ2l0IHJldi1wYXJzZSA6Mjpjb250ZW50IDozOmNvbnRlbnQgPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwkJIyBJbWl0YXRlIFgxIG1lcmdlIGJhc2UsIGV4Y2VwdCB3aXRob3V0IGxvbmcgZW5vdWdoIGNvbmZsaWN0CisJCSMgbWFya2VycyBiZWNhdXNlIGEgc3Vic2VxdWVudCBzZWQgd2lsbCBtb2RpZnkgdGhlbS4gIFB1dAorCQkjIHJlc3VsdCBpbnRvIHZtYi4KKwkJZ2l0IGNhdC1maWxlIC1wIG1hc3Rlcjpjb250ZW50ID5iYXNlICYmCisJCWdpdCBjYXQtZmlsZSAtcCBMOmNvbnRlbnQgPmxlZnQgJiYKKwkJZ2l0IGNhdC1maWxlIC1wIFI6Y29udGVudCA+cmlnaHQgJiYKKwkJY3AgbGVmdCBtZXJnZWQtb25jZSAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UtZmlsZSAtLWRpZmYzIFwKKwkJCS1MICJUZW1wb3JhcnkgbWVyZ2UgYnJhbmNoIDEiIFwKKwkJCS1MICIkTUFTVEVSIiAgXAorCQkJLUwgIlRlbXBvcmFyeSBtZXJnZSBicmFuY2ggMiIgXAorCQkJbWVyZ2VkLW9uY2UgXAorCQkJYmFzZSAgICAgICAgXAorCQkJcmlnaHQgICAgICAgJiYKKwkJc2VkIC1lICJzL15cKFs8fD0+XVwpL1wxXDFcMS8iIG1lcmdlZC1vbmNlID52bWIgJiYKKworCQkjIEltaXRhdGUgWDIgbWVyZ2UgYmFzZSwgb3ZlcndyaXRpbmcgdm1iLiAgTm90ZSB0aGF0IHdlCisJCSMgZXh0ZW5kIGJvdGggc2V0cyBvZiBjb25mbGljdCBtYXJrZXJzIHRvIG1ha2UgdGhlbSBsb25nZXIKKwkJIyB3aXRoIHRoZSBzZWQgY29tbWFuZC4KKwkJY3AgbGVmdCBtZXJnZWQtdHdpY2UgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgLS1kaWZmMyBcCisJCQktTCAiVGVtcG9yYXJ5IG1lcmdlIGJyYW5jaCAxIiBcCisJCQktTCAibWVyZ2VkIGNvbW1vbiBhbmNlc3RvcnMiICBcCisJCQktTCAiVGVtcG9yYXJ5IG1lcmdlIGJyYW5jaCAyIiBcCisJCQltZXJnZWQtdHdpY2UgXAorCQkJdm1iICAgICAgICAgIFwKKwkJCXJpZ2h0ICAgICAgICAmJgorCQlzZWQgLWUgInMvXlwoWzx8PT5dXCkvXDFcMVwxLyIgbWVyZ2VkLXR3aWNlID52bWIgJiYKKworCQkjIENvbXBhcmUgOjE6Y29udGVudCB0byBleHBlY3RlZCB2YWx1ZQorCQlnaXQgY2F0LWZpbGUgLXAgOjE6Y29udGVudCA+YWN0dWFsICYmCisJCXRlc3RfY21wIHZtYiBhY3R1YWwgJiYKKworCQkjIERldGVybWluZSBleHBlY3RlZCBjb250ZW50IGluIGZpbmFsIG91dGVyIG1lcmdlLCBjb21wYXJlIHRvCisJCSMgd2hhdCB0aGUgbWVyZ2UgZ2VuZXJhdGVkLgorCQljcCAtZiBsZWZ0IGV4cGVjdCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UtZmlsZSAtLWRpZmYzICAgICAgICAgICAgICAgICAgICAgIFwKKwkJCS1MICJIRUFEIiAgLUwgIm1lcmdlZCBjb21tb24gYW5jZXN0b3JzIiAgLUwgIlIzXjAiIFwKKwkJCWV4cGVjdCAgICAgdm1iICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQgICAgICYmCisJCXRlc3RfY21wIGV4cGVjdCBjb250ZW50CisJKQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDYwNDAtdHJhY2tpbmctaW5mby5zaCBiL3QvdDYwNDAtdHJhY2tpbmctaW5mby5zaAppbmRleCA3MTYyODNiLi5hZDE5MjJiIDEwMDc1NQotLS0gYS90L3Q2MDQwLXRyYWNraW5nLWluZm8uc2gKKysrIGIvdC90NjA0MC10cmFja2luZy1pbmZvLnNoCkBAIC0zOCw3ICszOCw3IEBACiAJYWR2YW5jZSBoCiAnCiAKLXNjcmlwdD0ncy9eLi5cKGIuXCkgKlswLTlhLWZdKiBcKC4qXCkkL1wxIFwyL3AnCit0NjA0MF9zY3JpcHQ9J3MvXi4uXChiLlwpICpbMC05YS1mXSogXCguKlwpJC9cMSBcMi9wJwogY2F0ID5leHBlY3QgPDxcRU9GCiBiMSBbYWhlYWQgMSwgYmVoaW5kIDFdIGQKIGIyIFthaGVhZCAxLCBiZWhpbmQgMV0gZApAQCAtNTMsNyArNTMsNyBAQAogCQljZCB0ZXN0ICYmCiAJCWdpdCBicmFuY2ggLXYKIAkpIHwKLQlzZWQgLW4gLWUgIiRzY3JpcHQiID5hY3R1YWwgJiYKKwlzZWQgLW4gLWUgIiR0NjA0MF9zY3JpcHQiID5hY3R1YWwgJiYKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAogJwogCkBAIC03MSw3ICs3MSw3IEBACiAJCWNkIHRlc3QgJiYKIAkJZ2l0IGJyYW5jaCAtdnYKIAkpIHwKLQlzZWQgLW4gLWUgIiRzY3JpcHQiID5hY3R1YWwgJiYKKwlzZWQgLW4gLWUgIiR0NjA0MF9zY3JpcHQiID5hY3R1YWwgJiYKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAogJwogCkBAIC0xNjAsNiArMTYwLDE5IEBACiAnCiAKIGNhdCA+ZXhwZWN0IDw8XEVPRgorIyMgYjEuLi5vcmlnaW4vbWFzdGVyIFtkaWZmZXJlbnRdCitFT0YKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3RhdHVzLmFoZWFkYmVoaW5kPWZhbHNlIHN0YXR1cyAtcyAtYiAoZGl2ZXJnZWQgZnJvbSB1cHN0cmVhbSknICcKKwkoCisJCWNkIHRlc3QgJiYKKwkJZ2l0IGNoZWNrb3V0IGIxID4vZGV2L251bGwgJiYKKwkJZ2l0IC1jIHN0YXR1cy5haGVhZGJlaGluZD1mYWxzZSBzdGF0dXMgLXMgLWIgfCBoZWFkIC0xCisJKSA+YWN0dWFsICYmCisJdGVzdF9pMThuY21wIGV4cGVjdCBhY3R1YWwKKycKKworY2F0ID5leHBlY3QgPDxcRU9GCiBPbiBicmFuY2ggYjEKIFlvdXIgYnJhbmNoIGFuZCAnb3JpZ2luL21hc3RlcicgaGF2ZSBkaXZlcmdlZCwKIGFuZCBoYXZlIDEgYW5kIDEgZGlmZmVyZW50IGNvbW1pdHMgZWFjaCwgcmVzcGVjdGl2ZWx5LgpAQCAtMTc0LDYgKzE4NywxNSBAQAogCXRlc3RfaTE4bmNtcCBleHBlY3QgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXR1cyAtLWxvbmcgLS1icmFuY2gnICcKKwkoCisJCWNkIHRlc3QgJiYKKwkJZ2l0IGNoZWNrb3V0IGIxID4vZGV2L251bGwgJiYKKwkJZ2l0IC1jIHN0YXR1cy5haGVhZGJlaGluZD10cnVlIHN0YXR1cyAtLWxvbmcgLWIgfCBoZWFkIC0zCisJKSA+YWN0dWFsICYmCisJdGVzdF9pMThuY21wIGV4cGVjdCBhY3R1YWwKKycKKwogY2F0ID5leHBlY3QgPDxcRU9GCiBPbiBicmFuY2ggYjEKIFlvdXIgYnJhbmNoIGFuZCAnb3JpZ2luL21hc3RlcicgcmVmZXIgdG8gZGlmZmVyZW50IGNvbW1pdHMuCkBAIC0xODgsNiArMjEwLDE1IEBACiAJdGVzdF9pMThuY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3RhdHVzLmFoZWFkYmVoaW5kPWZhbHNlIHN0YXR1cyAtLWxvbmcgLS1icmFuY2gnICcKKwkoCisJCWNkIHRlc3QgJiYKKwkJZ2l0IGNoZWNrb3V0IGIxID4vZGV2L251bGwgJiYKKwkJZ2l0IC1jIHN0YXR1cy5haGVhZGJlaGluZD1mYWxzZSBzdGF0dXMgLS1sb25nIC1iIHwgaGVhZCAtMgorCSkgPmFjdHVhbCAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3QgYWN0dWFsCisnCisKIGNhdCA+ZXhwZWN0IDw8XEVPRgogIyMgYjUuLi5icm9rZW5iYXNlIFtnb25lXQogRU9GCmRpZmYgLS1naXQgYS90L3Q2MDQyLW1lcmdlLXJlbmFtZS1jb3JuZXItY2FzZXMuc2ggYi90L3Q2MDQyLW1lcmdlLXJlbmFtZS1jb3JuZXItY2FzZXMuc2gKaW5kZXggYjk3YWNhNy4uYjA0N2NmMSAxMDA3NTUKLS0tIGEvdC90NjA0Mi1tZXJnZS1yZW5hbWUtY29ybmVyLWNhc2VzLnNoCisrKyBiL3QvdDYwNDItbWVyZ2UtcmVuYW1lLWNvcm5lci1jYXNlcy5zaApAQCAtNSw3ICs1LDcgQEAKIAogLiAuL3Rlc3QtbGliLnNoCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHJlbmFtZS9kZWxldGUgKyB1bnRyYWNrZWQgZmlsZScgJwordGVzdF9zZXR1cF9yZW5hbWVfZGVsZXRlX3VudHJhY2tlZCAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyByZW5hbWUtZGVsZXRlLXVudHJhY2tlZCAmJgogCSgKIAkJY2QgcmVuYW1lLWRlbGV0ZS11bnRyYWNrZWQgJiYKQEAgLTI5LDkgKzI5LDEwIEBACiAJCWdpdCBjb21taXQgLW0gdHJhY2stcGVvcGxlLWluc3RlYWQtb2Ytb2JqZWN0cyAmJgogCQllY2hvICJNeXl5IFBSRUNJT1VTU1MiID5yaW5nCiAJKQotJworfQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICJEb2VzIGdpdCBwcmVzZXJ2ZSBHb2xsdW0ncyBwcmVjaW91cyBhcnRpZmFjdD8iICcKKwl0ZXN0X3NldHVwX3JlbmFtZV9kZWxldGVfdW50cmFja2VkICYmCiAJKAogCQljZCByZW5hbWUtZGVsZXRlLXVudHJhY2tlZCAmJgogCkBAIC00OSw3ICs1MCw3IEBACiAjCiAjIFdlIHNob3VsZCBiZSBhYmxlIHRvIG1lcmdlIEIgJiBDIGNsZWFubHkKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgcmVuYW1lL21vZGlmeS9hZGQtc291cmNlIGNvbmZsaWN0JyAnCit0ZXN0X3NldHVwX3JlbmFtZV9tb2RpZnlfYWRkX3NvdXJjZSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyByZW5hbWUtbW9kaWZ5LWFkZC1zb3VyY2UgJiYKIAkoCiAJCWNkIHJlbmFtZS1tb2RpZnktYWRkLXNvdXJjZSAmJgpAQCAtNzAsOSArNzEsMTAgQEAKIAkJZ2l0IGFkZCBhICYmCiAJCWdpdCBjb21taXQgLW0gQwogCSkKLScKK30KIAogdGVzdF9leHBlY3RfZmFpbHVyZSAncmVuYW1lL21vZGlmeS9hZGQtc291cmNlIGNvbmZsaWN0IHJlc29sdmFibGUnICcKKwl0ZXN0X3NldHVwX3JlbmFtZV9tb2RpZnlfYWRkX3NvdXJjZSAmJgogCSgKIAkJY2QgcmVuYW1lLW1vZGlmeS1hZGQtc291cmNlICYmCiAKQEAgLTg4LDcgKzkwLDcgQEAKIAkpCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHJlc29sdmFibGUgY29uZmxpY3QgbWlzc2VkIGlmIHJlbmFtZSBtaXNzZWQnICcKK3Rlc3Rfc2V0dXBfYnJlYWtfZGV0ZWN0aW9uXzEgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gYnJlYWstZGV0ZWN0aW9uLTEgJiYKIAkoCiAJCWNkIGJyZWFrLWRldGVjdGlvbi0xICYmCkBAIC0xMTAsOSArMTEyLDEwIEBACiAJCWdpdCBhZGQgYSAmJgogCQlnaXQgY29tbWl0IC1tIEMKIAkpCi0nCit9CiAKIHRlc3RfZXhwZWN0X2ZhaWx1cmUgJ2NvbmZsaWN0IGNhdXNlZCBpZiByZW5hbWUgbm90IGRldGVjdGVkJyAnCisJdGVzdF9zZXR1cF9icmVha19kZXRlY3Rpb25fMSAmJgogCSgKIAkJY2QgYnJlYWstZGV0ZWN0aW9uLTEgJiYKIApAQCAtMTM1LDcgKzEzOCw3IEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBjb25mbGljdCByZXNvbHZlZCB3cm9uZyBpZiByZW5hbWUgbWlzc2VkJyAnCit0ZXN0X3NldHVwX2JyZWFrX2RldGVjdGlvbl8yICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIGJyZWFrLWRldGVjdGlvbi0yICYmCiAJKAogCQljZCBicmVhay1kZXRlY3Rpb24tMiAmJgpAQCAtMTYwLDkgKzE2MywxMCBAQAogCQlnaXQgYWRkIGEgJiYKIAkJZ2l0IGNvbW1pdCAtbSBFCiAJKQotJworfQogCiB0ZXN0X2V4cGVjdF9mYWlsdXJlICdtaXNzZWQgY29uZmxpY3QgaWYgcmVuYW1lIG5vdCBkZXRlY3RlZCcgJworCXRlc3Rfc2V0dXBfYnJlYWtfZGV0ZWN0aW9uXzIgJiYKIAkoCiAJCWNkIGJyZWFrLWRldGVjdGlvbi0yICYmCiAKQEAgLTE4Miw3ICsxODYsNyBAQAogIyAgIENvbW1pdCBCOiByZW5hbWUgYS0+YgogIyAgIENvbW1pdCBDOiByZW5hbWUgYS0+YiwgYWRkIHVucmVsYXRlZCBhCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHVuZGV0ZWN0ZWQgcmVuYW1lL2FkZC1zb3VyY2UgY2F1c2VzIGRhdGEgbG9zcycgJwordGVzdF9zZXR1cF9icmVha19kZXRlY3Rpb25fMyAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyBicmVhay1kZXRlY3Rpb24tMyAmJgogCSgKIAkJY2QgYnJlYWstZGV0ZWN0aW9uLTMgJiYKQEAgLTIwMiw5ICsyMDYsMTAgQEAKIAkJZ2l0IGFkZCBhICYmCiAJCWdpdCBjb21taXQgLW0gQwogCSkKLScKK30KIAogdGVzdF9leHBlY3RfZmFpbHVyZSAnZGV0ZWN0IHJlbmFtZS9hZGQtc291cmNlIGFuZCBwcmVzZXJ2ZSBhbGwgZGF0YScgJworCXRlc3Rfc2V0dXBfYnJlYWtfZGV0ZWN0aW9uXzMgJiYKIAkoCiAJCWNkIGJyZWFrLWRldGVjdGlvbi0zICYmCiAKQEAgLTIzMSw2ICsyMzYsNyBAQAogJwogCiB0ZXN0X2V4cGVjdF9mYWlsdXJlICdkZXRlY3QgcmVuYW1lL2FkZC1zb3VyY2UgYW5kIHByZXNlcnZlIGFsbCBkYXRhLCBtZXJnZSBvdGhlciB3YXknICcKKwl0ZXN0X3NldHVwX2JyZWFrX2RldGVjdGlvbl8zICYmCiAJKAogCQljZCBicmVhay1kZXRlY3Rpb24tMyAmJgogCkBAIC0yNTYsMTAgKzI2MiwxMCBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgY29udGVudCBtZXJnZSArIHJlbmFtZS9kaXJlY3RvcnkgY29uZmxpY3QnICcKLQl0ZXN0X2NyZWF0ZV9yZXBvIHJlbmFtZS1kaXJlY3RvcnktMSAmJgordGVzdF9zZXR1cF9yZW5hbWVfZGlyZWN0b3J5ICgpIHsKKwl0ZXN0X2NyZWF0ZV9yZXBvIHJlbmFtZS1kaXJlY3RvcnktJDEgJiYKIAkoCi0JCWNkIHJlbmFtZS1kaXJlY3RvcnktMSAmJgorCQljZCByZW5hbWUtZGlyZWN0b3J5LSQxICYmCiAKIAkJcHJpbnRmICIxXG4yXG4zXG40XG41XG42XG4iID5maWxlICYmCiAJCWdpdCBhZGQgZmlsZSAmJgpAQCAtMjkwLDExICsyOTYsMTIgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gbGVmdAogCSkKLScKK30KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVuYW1lL2RpcmVjdG9yeSBjb25mbGljdCArIGNsZWFuIGNvbnRlbnQgbWVyZ2UnICcKKwl0ZXN0X3NldHVwX3JlbmFtZV9kaXJlY3RvcnkgMWEgJiYKIAkoCi0JCWNkIHJlbmFtZS1kaXJlY3RvcnktMSAmJgorCQljZCByZW5hbWUtZGlyZWN0b3J5LTFhICYmCiAKIAkJZ2l0IGNoZWNrb3V0IGxlZnQtY2xlYW5eMCAmJgogCkBAIC0zMjAsOCArMzI3LDkgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVuYW1lL2RpcmVjdG9yeSBjb25mbGljdCArIGNvbnRlbnQgbWVyZ2UgY29uZmxpY3QnICcKKwl0ZXN0X3NldHVwX3JlbmFtZV9kaXJlY3RvcnkgMWIgJiYKIAkoCi0JCWNkIHJlbmFtZS1kaXJlY3RvcnktMSAmJgorCQljZCByZW5hbWUtZGlyZWN0b3J5LTFiICYmCiAKIAkJZ2l0IHJlc2V0IC0taGFyZCAmJgogCQlnaXQgY2xlYW4gLWZkcXggJiYKQEAgLTM1OCw3ICszNjYsNyBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgY29udGVudCBtZXJnZSArIHJlbmFtZS9kaXJlY3RvcnkgY29uZmxpY3Qgdy8gZGlzYXBwZWFyaW5nIGRpcicgJwordGVzdF9zZXR1cF9yZW5hbWVfZGlyZWN0b3J5XzIgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gcmVuYW1lLWRpcmVjdG9yeS0yICYmCiAJKAogCQljZCByZW5hbWUtZGlyZWN0b3J5LTIgJiYKQEAgLTM4NSw5ICszOTMsMTAgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gbGVmdAogCSkKLScKK30KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlzYXBwZWFyaW5nIGRpciBpbiByZW5hbWUvZGlyZWN0b3J5IGNvbmZsaWN0IGhhbmRsZWQnICcKKwl0ZXN0X3NldHVwX3JlbmFtZV9kaXJlY3RvcnlfMiAmJgogCSgKIAkJY2QgcmVuYW1lLWRpcmVjdG9yeS0yICYmCiAKQEAgLTQxMSw2ICs0MjAsMTI0IEBACiAJKQogJwogCisjIFRlc3QgZm9yIGJhc2ljIHJlbmFtZS9hZGQtZGVzdCBjb25mbGljdCwgd2l0aCByZW5hbWUgbmVlZGluZyBjb250ZW50IG1lcmdlOgorIyAgIENvbW1pdCBPOiBhCisjICAgQ29tbWl0IEE6IHJlbmFtZSBhLT5iLCBtb2RpZnlpbmcgYiB0b28KKyMgICBDb21taXQgQjogbW9kaWZ5IGEsIGFkZCBkaWZmZXJlbnQgYgorCit0ZXN0X3NldHVwX3JlbmFtZV93aXRoX2NvbnRlbnRfbWVyZ2VfYW5kX2FkZCAoKSB7CisJdGVzdF9jcmVhdGVfcmVwbyByZW5hbWUtd2l0aC1jb250ZW50LW1lcmdlLWFuZC1hZGQtJDEgJiYKKwkoCisJCWNkIHJlbmFtZS13aXRoLWNvbnRlbnQtbWVyZ2UtYW5kLWFkZC0kMSAmJgorCisJCXRlc3Rfc2VxIDEgNSA+YSAmJgorCQlnaXQgYWRkIGEgJiYKKwkJZ2l0IGNvbW1pdCAtbSBPICYmCisJCWdpdCB0YWcgTyAmJgorCisJCWdpdCBjaGVja291dCAtYiBBIE8gJiYKKwkJZ2l0IG12IGEgYiAmJgorCQl0ZXN0X3NlcSAwIDUgPmIgJiYKKwkJZ2l0IGFkZCBiICYmCisJCWdpdCBjb21taXQgLW0gQSAmJgorCisJCWdpdCBjaGVja291dCAtYiBCIE8gJiYKKwkJZWNobyA2ID4+YSAmJgorCQllY2hvIGhlbGxvIHdvcmxkID5iICYmCisJCWdpdCBhZGQgYSBiICYmCisJCWdpdCBjb21taXQgLW0gQgorCSkKK30KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnaGFuZGxlIHJlbmFtZS13aXRoLWNvbnRlbnQtbWVyZ2UgdnMuIGFkZCcgJworCXRlc3Rfc2V0dXBfcmVuYW1lX3dpdGhfY29udGVudF9tZXJnZV9hbmRfYWRkIEFCICYmCisJKAorCQljZCByZW5hbWUtd2l0aC1jb250ZW50LW1lcmdlLWFuZC1hZGQtQUIgJiYKKworCQlnaXQgY2hlY2tvdXQgQV4wICYmCisKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAmJgorCQl0ZXN0X2kxOG5ncmVwICJDT05GTElDVCAocmVuYW1lL2FkZCkiIG91dCAmJgorCisJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDIgb3V0ICYmCisJCWdpdCBscy1maWxlcyAtdSA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDIgb3V0ICYmCisJCSMgQWxzbywgbWFrZSBzdXJlIGJvdGggdW5tZXJnZWQgZW50cmllcyBhcmUgZm9yICJiIgorCQlnaXQgbHMtZmlsZXMgLXUgYiA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDIgb3V0ICYmCisJCWdpdCBscy1maWxlcyAtbyA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgb3V0ICYmCisKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgYSAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBiICYmCisKKwkJdGVzdF9zZXEgMCA2ID50bXAgJiYKKwkJZ2l0IGhhc2gtb2JqZWN0IHRtcCA+ZXhwZWN0ICYmCisJCWdpdCByZXYtcGFyc2UgQjpiID4+ZXhwZWN0ICYmCisJCWdpdCByZXYtcGFyc2UgPmFjdHVhbCAgXAorCQkJOjI6YiAgICA6MzpiICAgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJCSMgVGVzdCB0aGF0IHRoZSB0d28td2F5IG1lcmdlIGluIGIgaXMgYXMgZXhwZWN0ZWQKKwkJZ2l0IGNhdC1maWxlIC1wIDoyOmIgPj5vdXJzICYmCisJCWdpdCBjYXQtZmlsZSAtcCA6MzpiID4+dGhlaXJzICYmCisJCT5lbXB0eSAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UtZmlsZSBcCisJCQktTCAiSEVBRCIgXAorCQkJLUwgIiIgXAorCQkJLUwgIkJeMCIgXAorCQkJb3VycyBlbXB0eSB0aGVpcnMgJiYKKwkJdGVzdF9jbXAgb3VycyBiCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdoYW5kbGUgcmVuYW1lLXdpdGgtY29udGVudC1tZXJnZSB2cy4gYWRkLCBtZXJnZSBvdGhlciB3YXknICcKKwl0ZXN0X3NldHVwX3JlbmFtZV93aXRoX2NvbnRlbnRfbWVyZ2VfYW5kX2FkZCBCQSAmJgorCSgKKwkJY2QgcmVuYW1lLXdpdGgtY29udGVudC1tZXJnZS1hbmQtYWRkLUJBICYmCisKKwkJZ2l0IHJlc2V0IC0taGFyZCAmJgorCQlnaXQgY2xlYW4gLWZkeCAmJgorCisJCWdpdCBjaGVja291dCBCXjAgJiYKKworCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEFeMCA+b3V0ICYmCisJCXRlc3RfaTE4bmdyZXAgIkNPTkZMSUNUIChyZW5hbWUvYWRkKSIgb3V0ICYmCisKKwkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMiBvdXQgJiYKKwkJZ2l0IGxzLWZpbGVzIC11ID5vdXQgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMiBvdXQgJiYKKwkJIyBBbHNvLCBtYWtlIHN1cmUgYm90aCB1bm1lcmdlZCBlbnRyaWVzIGFyZSBmb3IgImIiCisJCWdpdCBscy1maWxlcyAtdSBiID5vdXQgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMiBvdXQgJiYKKwkJZ2l0IGxzLWZpbGVzIC1vID5vdXQgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMSBvdXQgJiYKKworCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBhICYmCisJCXRlc3RfcGF0aF9pc19maWxlIGIgJiYKKworCQl0ZXN0X3NlcSAwIDYgPnRtcCAmJgorCQlnaXQgcmV2LXBhcnNlIEI6YiA+ZXhwZWN0ICYmCisJCWdpdCBoYXNoLW9iamVjdCB0bXAgPj5leHBlY3QgJiYKKwkJZ2l0IHJldi1wYXJzZSA+YWN0dWFsICBcCisJCQk6MjpiICAgIDozOmIgICAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwkJIyBUZXN0IHRoYXQgdGhlIHR3by13YXkgbWVyZ2UgaW4gYiBpcyBhcyBleHBlY3RlZAorCQlnaXQgY2F0LWZpbGUgLXAgOjI6YiA+Pm91cnMgJiYKKwkJZ2l0IGNhdC1maWxlIC1wIDozOmIgPj50aGVpcnMgJiYKKwkJPmVtcHR5ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZS1maWxlIFwKKwkJCS1MICJIRUFEIiBcCisJCQktTCAiIiBcCisJCQktTCAiQV4wIiBcCisJCQlvdXJzIGVtcHR5IHRoZWlycyAmJgorCQl0ZXN0X2NtcCBvdXJzIGIKKwkpCisnCisKICMgVGVzdCBmb3IgYWxsIGtpbmRzIG9mIHRoaW5ncyB0aGF0IGNhbiBnbyB3cm9uZyB3aXRoIHJlbmFtZS9yZW5hbWUgKDJ0bzEpOgogIyAgIENvbW1pdCBBOiBuZXcgZmlsZXM6IGEgJiBiCiAjICAgQ29tbWl0IEI6IHJlbmFtZSBhLT5jLCBtb2RpZnkgYgpAQCAtNDIzLDcgKzU1MCw3IEBACiAjICAgKiBUaGUgd29ya2luZyBjb3B5IHNob3VsZCBoYXZlIHR3byBmaWxlcywgYm90aCBvZiBmb3JtIGN+PHVuaXF1ZT47IGRvZXMgaXQ/CiAjICAgKiBOb3RoaW5nIGVsc2Ugc2hvdWxkIGJlIHByZXNlbnQuICBJcyBhbnl0aGluZz8KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgcmVuYW1lL3JlbmFtZSAoMnRvMSkgKyBtb2RpZnkvbW9kaWZ5JyAnCit0ZXN0X3NldHVwX3JlbmFtZV9yZW5hbWVfMnRvMSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyByZW5hbWUtcmVuYW1lLTJ0bzEgJiYKIAkoCiAJCWNkIHJlbmFtZS1yZW5hbWUtMnRvMSAmJgpAQCAtNDQ2LDkgKzU3MywxMCBAQAogCQlnaXQgYWRkIGEgJiYKIAkJZ2l0IGNvbW1pdCAtbSBDCiAJKQotJworfQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdoYW5kbGUgcmVuYW1lL3JlbmFtZSAoMnRvMSkgY29uZmxpY3QgY29ycmVjdGx5JyAnCisJdGVzdF9zZXR1cF9yZW5hbWVfcmVuYW1lXzJ0bzEgJiYKIAkoCiAJCWNkIHJlbmFtZS1yZW5hbWUtMnRvMSAmJgogCkBAIC00NjQsMTcgKzU5MiwyOCBAQAogCQlnaXQgbHMtZmlsZXMgLXUgYyA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDIgb3V0ICYmCiAJCWdpdCBscy1maWxlcyAtbyA+b3V0ICYmCi0JCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgb3V0ICYmCiAKIAkJdGVzdF9wYXRoX2lzX21pc3NpbmcgYSAmJgogCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBiICYmCi0JCXRlc3RfcGF0aF9pc19maWxlIGN+SEVBRCAmJgotCQl0ZXN0X3BhdGhfaXNfZmlsZSBjfkNeMCAmJgogCi0JCWdpdCByZXYtcGFyc2UgPmV4cGVjdCAgIFwKLQkJCUM6YSAgICAgQjpiICAgICAmJgotCQlnaXQgaGFzaC1vYmplY3QgPmFjdHVhbCBcCi0JCQljfkhFQUQgIGN+Q14wICAgJiYKKwkJZ2l0IHJldi1wYXJzZSA+ZXhwZWN0ICBcCisJCQlDOmEgICAgIEI6YiAgICAmJgorCQlnaXQgcmV2LXBhcnNlID5hY3R1YWwgIFwKKwkJCToyOmMgICAgOjM6YyAgICYmCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKworCQkjIFRlc3QgdGhhdCB0aGUgdHdvLXdheSBtZXJnZSBpbiBuZXdfYSBpcyBhcyBleHBlY3RlZAorCQlnaXQgY2F0LWZpbGUgLXAgOjI6YyA+Pm91cnMgJiYKKwkJZ2l0IGNhdC1maWxlIC1wIDozOmMgPj50aGVpcnMgJiYKKwkJPmVtcHR5ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZS1maWxlIFwKKwkJCS1MICJIRUFEIiBcCisJCQktTCAiIiBcCisJCQktTCAiQ14wIiBcCisJCQlvdXJzIGVtcHR5IHRoZWlycyAmJgorCQlnaXQgaGFzaC1vYmplY3QgYyA+YWN0dWFsICYmCisJCWdpdCBoYXNoLW9iamVjdCBvdXJzID5leHBlY3QgJiYKIAkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogCSkKICcKQEAgLTQ4Myw3ICs2MjIsNyBAQAogIyAgIENvbW1pdCBBOiBuZXcgZmlsZTogYQogIyAgIENvbW1pdCBCOiByZW5hbWUgYS0+YgogIyAgIENvbW1pdCBDOiByZW5hbWUgYS0+YwotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgc2ltcGxlIHJlbmFtZS9yZW5hbWUgKDF0bzIpIGNvbmZsaWN0JyAnCit0ZXN0X3NldHVwX3JlbmFtZV9yZW5hbWVfMXRvMiAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyByZW5hbWUtcmVuYW1lLTF0bzIgJiYKIAkoCiAJCWNkIHJlbmFtZS1yZW5hbWUtMXRvMiAmJgpAQCAtNTA0LDkgKzY0MywxMCBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSBDCiAJKQotJworfQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtZXJnZSBoYXMgY29ycmVjdCB3b3JraW5nIHRyZWUgY29udGVudHMnICcKKwl0ZXN0X3NldHVwX3JlbmFtZV9yZW5hbWVfMXRvMiAmJgogCSgKIAkJY2QgcmVuYW1lLXJlbmFtZS0xdG8yICYmCiAKQEAgLTU0MCw3ICs2ODAsNyBAQAogIwogIyBNZXJnaW5nIG9mIEIgJiBDIHNob3VsZCBOT1QgYmUgY2xlYW47IHRoZXJlJ3MgYSByZW5hbWUvcmVuYW1lIGNvbmZsaWN0CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHJlbmFtZS9yZW5hbWUoMXRvMikvYWRkLXNvdXJjZSBjb25mbGljdCcgJwordGVzdF9zZXR1cF9yZW5hbWVfcmVuYW1lXzF0bzJfYWRkX3NvdXJjZV8xICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIHJlbmFtZS1yZW5hbWUtMXRvMi1hZGQtc291cmNlLTEgJiYKIAkoCiAJCWNkIHJlbmFtZS1yZW5hbWUtMXRvMi1hZGQtc291cmNlLTEgJiYKQEAgLTU2MCw5ICs3MDAsMTAgQEAKIAkJZ2l0IGFkZCBhICYmCiAJCWdpdCBjb21taXQgLW0gQwogCSkKLScKK30KIAogdGVzdF9leHBlY3RfZmFpbHVyZSAnZGV0ZWN0IGNvbmZsaWN0IHdpdGggcmVuYW1lL3JlbmFtZSgxdG8yKS9hZGQtc291cmNlIG1lcmdlJyAnCisJdGVzdF9zZXR1cF9yZW5hbWVfcmVuYW1lXzF0bzJfYWRkX3NvdXJjZV8xICYmCiAJKAogCQljZCByZW5hbWUtcmVuYW1lLTF0bzItYWRkLXNvdXJjZS0xICYmCiAKQEAgLTU4Nyw3ICs3MjgsNyBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgcmVuYW1lL3JlbmFtZSgxdG8yKS9hZGQtc291cmNlIHJlc29sdmFibGUgY29uZmxpY3QnICcKK3Rlc3Rfc2V0dXBfcmVuYW1lX3JlbmFtZV8xdG8yX2FkZF9zb3VyY2VfMiAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyByZW5hbWUtcmVuYW1lLTF0bzItYWRkLXNvdXJjZS0yICYmCiAJKAogCQljZCByZW5hbWUtcmVuYW1lLTF0bzItYWRkLXNvdXJjZS0yICYmCkBAIC02MTAsOSArNzUxLDEwIEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tIHR3bwogCSkKLScKK30KIAogdGVzdF9leHBlY3RfZmFpbHVyZSAncmVuYW1lL3JlbmFtZS9hZGQtc291cmNlIHN0aWxsIHRyYWNrcyBuZXcgYSBmaWxlJyAnCisJdGVzdF9zZXR1cF9yZW5hbWVfcmVuYW1lXzF0bzJfYWRkX3NvdXJjZV8yICYmCiAJKAogCQljZCByZW5hbWUtcmVuYW1lLTF0bzItYWRkLXNvdXJjZS0yICYmCiAKQEAgLTYzMiw3ICs3NzQsNyBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgcmVuYW1lL3JlbmFtZSgxdG8yKS9hZGQtZGVzdCBjb25mbGljdCcgJwordGVzdF9zZXR1cF9yZW5hbWVfcmVuYW1lXzF0bzJfYWRkX2Rlc3QgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gcmVuYW1lLXJlbmFtZS0xdG8yLWFkZC1kZXN0ICYmCiAJKAogCQljZCByZW5hbWUtcmVuYW1lLTF0bzItYWRkLWRlc3QgJiYKQEAgLTY1Nyw5ICs3OTksMTAgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gdHdvCiAJKQotJworfQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZW5hbWUvcmVuYW1lL2FkZC1kZXN0IG1lcmdlIHN0aWxsIGtub3dzIGFib3V0IGNvbmZsaWN0aW5nIGZpbGUgdmVyc2lvbnMnICcKKwl0ZXN0X3NldHVwX3JlbmFtZV9yZW5hbWVfMXRvMl9hZGRfZGVzdCAmJgogCSgKIAkJY2QgcmVuYW1lLXJlbmFtZS0xdG8yLWFkZC1kZXN0ICYmCiAKQEAgLTY3Myw3ICs4MTYsNyBAQAogCQlnaXQgbHMtZmlsZXMgLXUgYyA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDIgb3V0ICYmCiAJCWdpdCBscy1maWxlcyAtbyA+b3V0ICYmCi0JCXRlc3RfbGluZV9jb3VudCA9IDUgb3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgb3V0ICYmCiAKIAkJZ2l0IHJldi1wYXJzZSA+ZXhwZWN0ICAgICAgICAgICAgICAgXAogCQkJQTphICAgQzpiICAgQjpiICAgQzpjICAgQjpjICYmCkBAIC02ODEsMTQgKzgyNCwyNyBAQAogCQkJOjE6YSAgOjI6YiAgOjM6YiAgOjI6YyAgOjM6YyAmJgogCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAKLQkJZ2l0IHJldi1wYXJzZSA+ZXhwZWN0ICAgICAgICAgICAgICAgXAotCQkJQzpjICAgICBCOmMgICAgIEM6YiAgICAgQjpiICYmCi0JCWdpdCBoYXNoLW9iamVjdCA+YWN0dWFsICAgICAgICAgICAgICAgIFwKLQkJCWN+SEVBRCAgY35CXF4wICBifkhFQUQgIGJ+QlxeMCAmJgotCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJCSMgUmVjb3JkIHNvbWUgY29udGVudHMgZm9yIHJlLWRvaW5nIG1lcmdlcworCQlnaXQgY2F0LWZpbGUgLXAgQTphID5zdHVmZiAmJgorCQlnaXQgY2F0LWZpbGUgLXAgQzpiID5pbXBvcnRhbnRfaW5mbyAmJgorCQlnaXQgY2F0LWZpbGUgLXAgQjpjID5wcmVjaW91c19kYXRhICYmCisJCT5lbXB0eSAmJgogCi0JCXRlc3RfcGF0aF9pc19taXNzaW5nIGIgJiYKLQkJdGVzdF9wYXRoX2lzX21pc3NpbmcgYworCQkjIFRlc3QgdGhlIG1lcmdlIGluIGIKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgXAorCQkJLUwgIkhFQUQiIFwKKwkJCS1MICIiIFwKKwkJCS1MICJCXjAiIFwKKwkJCWltcG9ydGFudF9pbmZvIGVtcHR5IHN0dWZmICYmCisJCXRlc3RfY21wIGltcG9ydGFudF9pbmZvIGIgJiYKKworCQkjIFRlc3QgdGhlIG1lcmdlIGluIGMKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgXAorCQkJLUwgIkhFQUQiIFwKKwkJCS1MICIiIFwKKwkJCS1MICJCXjAiIFwKKwkJCXN0dWZmIGVtcHR5IHByZWNpb3VzX2RhdGEgJiYKKwkJdGVzdF9jbXAgc3R1ZmYgYwogCSkKICcKIApAQCAtNjk4LDcgKzg1NCw3IEBACiAjICAgQ29tbWl0IEI6IHJlbmFtZSBmb28tPmJhcgogIyAgIEV4cGVjdGVkOiBDT05GTElDVCAocmVuYW1lL2FkZC9kZWxldGUpLCB0d28td2F5IG1lcmdlZCBiYXIKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAncmFkLXNldHVwOiByZW5hbWUvYWRkL2RlbGV0ZSBjb25mbGljdCcgJwordGVzdF9zZXR1cF9yYWQgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gcmFkICYmCiAJKAogCQljZCByYWQgJiYKQEAgLTcyMCw5ICs4NzYsMTAgQEAKIAkJZ2l0IG12IGZvbyBiYXIgJiYKIAkJZ2l0IGNvbW1pdCAtbSAicmVuYW1lIGZvbyB0byBiYXIiCiAJKQotJworfQogCiB0ZXN0X2V4cGVjdF9mYWlsdXJlICdyYWQtY2hlY2s6IHJlbmFtZS9hZGQvZGVsZXRlIGNvbmZsaWN0JyAnCisJdGVzdF9zZXR1cF9yYWQgJiYKIAkoCiAJCWNkIHJhZCAmJgogCkBAIC03NjQsNyArOTIxLDcgQEAKICMgICBDb21taXQgQjogcmVuYW1lIGJhci0+YmF6LCBybSBmb28KICMgICBFeHBlY3RlZDogQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUvZGVsZXRlL2RlbGV0ZSksIHR3by13YXkgbWVyZ2VkIGJhegogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdycmRkLXNldHVwOiByZW5hbWUvcmVuYW1lKDJ0bzEpL2RlbGV0ZS9kZWxldGUgY29uZmxpY3QnICcKK3Rlc3Rfc2V0dXBfcnJkZCAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyBycmRkICYmCiAJKAogCQljZCBycmRkICYmCkBAIC03ODcsOSArOTQ0LDEwIEBACiAJCWdpdCBybSBmb28gJiYKIAkJZ2l0IGNvbW1pdCAtbSAiUmVuYW1lIGJhciwgcmVtb3ZlIGZvbyIKIAkpCi0nCit9CiAKIHRlc3RfZXhwZWN0X2ZhaWx1cmUgJ3JyZGQtY2hlY2s6IHJlbmFtZS9yZW5hbWUoMnRvMSkvZGVsZXRlL2RlbGV0ZSBjb25mbGljdCcgJworCXRlc3Rfc2V0dXBfcnJkZCAmJgogCSgKIAkJY2QgcnJkZCAmJgogCkBAIC04MzMsNyArOTkxLDcgQEAKICMgICBFeHBlY3RlZDogc2l4IENPTkZMSUNUKHJlbmFtZS9yZW5hbWUpIG1lc3NhZ2VzLCBlYWNoIHBhdGggaW4gdHdvIG9mIHRoZQogIyAgICAgICAgICAgICBtdWx0aS13YXkgbWVyZ2VkIGNvbnRlbnRzIGZvdW5kIGluIHR3bywgZm91ciwgc2l4CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21vZDYtc2V0dXA6IGNoYWlucyBvZiByZW5hbWUvcmVuYW1lKDF0bzIpIGFuZCByZW5hbWUvcmVuYW1lKDJ0bzEpJyAnCit0ZXN0X3NldHVwX21vZDYgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gbW9kNiAmJgogCSgKIAkJY2QgbW9kNiAmJgpAQCAtODY5LDkgKzEwMjcsMTAgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCiB0ZXN0X2V4cGVjdF9mYWlsdXJlICdtb2Q2LWNoZWNrOiBjaGFpbnMgb2YgcmVuYW1lL3JlbmFtZSgxdG8yKSBhbmQgcmVuYW1lL3JlbmFtZSgydG8xKScgJworCXRlc3Rfc2V0dXBfbW9kNiAmJgogCSgKIAkJY2QgbW9kNiAmJgogCkBAIC05MzcsNCArMTA5NiwyODcgQEAKIAkpCiAnCiAKK3Rlc3RfY29uZmxpY3RzX3dpdGhfYWRkc19hbmRfcmVuYW1lcygpIHsKKwlzaWRlTD0kMQorCXNpZGVSPSQyCisKKwkjIFNldHVwOgorCSMgICAgICAgICAgTAorCSMgICAgICAgICAvIFwKKwkjICAgbWFzdGVyICAgPworCSMgICAgICAgICBcIC8KKwkjICAgICAgICAgIFIKKwkjCisJIyBXaGVyZToKKwkjICAgQm90aCBMIGFuZCBSIGhhdmUgZmlsZXMgbmFtZWQgJ3RocmVlJyB3aGljaCBjb2xsaWRlLiAgRWFjaCBvZgorCSMgICB0aGUgY29sbGlkaW5nIGZpbGVzIGNvdWxkIGhhdmUgYmVlbiBpbnZvbHZlZCBpbiBhIHJlbmFtZSwgaW4KKwkjICAgd2hpY2ggY2FzZSB0aGVyZSB3YXMgYSBmaWxlIG5hbWVkICdvbmUnIG9yICd0d28nIHRoYXQgd2FzCisJIyAgIG1vZGlmaWVkIG9uIHRoZSBvcHBvc2l0ZSBzaWRlIG9mIGhpc3RvcnkgYW5kIHJlbmFtZWQgaW50byB0aGUKKwkjICAgY29sbGlzaW9uIG9uIHRoaXMgc2lkZSBvZiBoaXN0b3J5LgorCSMKKwkjIFF1ZXN0aW9uczoKKwkjICAgMSkgVGhlIGluZGV4IHNob3VsZCBjb250YWluIGJvdGggYSBzdGFnZSAyIGFuZCBzdGFnZSAzIGVudHJ5CisJIyAgICAgIGZvciB0aGUgY29sbGlkaW5nIGZpbGUuICBEb2VzIGl0PworCSMgICAyKSBXaGVuIHJlbmFtZXMgYXJlIGludm9sdmVkLCB0aGUgY29udGVudCBtZXJnZXMgYXJlIGNsZWFuLCBzbworCSMgICAgICB0aGUgaW5kZXggc2hvdWxkIHJlZmxlY3QgdGhlIGNvbnRlbnQgbWVyZ2VzLCBub3QgbWVyZWx5IHRoZQorCSMgICAgICB2ZXJzaW9uIG9mIHRoZSBjb2xsaWRpbmcgZmlsZSBmcm9tIHRoZSBwcmlvciBjb21taXQuICBEb2VzCisJIyAgICAgIGl0PworCSMgICAzKSBUaGVyZSBzaG91bGQgYmUgYSBmaWxlIGluIHRoZSB3b3JrdHJlZSBuYW1lZCAndGhyZWUnCisJIyAgICAgIGNvbnRhaW5pbmcgdGhlIHR3by13YXkgbWVyZ2VkIGNvbnRlbnRzIG9mIHRoZSBjb250ZW50LW1lcmdlZAorCSMgICAgICB2ZXJzaW9ucyBvZiAndGhyZWUnIGZyb20gZWFjaCBvZiB0aGUgdHdvIGNvbGxpZGluZworCSMgICAgICBmaWxlcy4gIElzIGl0IHByZXNlbnQ/CisJIyAgIDQpIFRoZXJlIHNob3VsZCBub3QgYmUgYW55IHRocmVlfiogZmlsZXMgaW4gdGhlIHdvcmtpbmcKKwkjICAgICAgdHJlZQorCXRlc3Rfc2V0dXBfY29sbGlzaW9uX2NvbmZsaWN0ICgpIHsKKwkjdGVzdF9leHBlY3Rfc3VjY2VzcyAic2V0dXAgc2ltcGxlICRzaWRlTC8kc2lkZVIgY29uZmxpY3QiICcKKwkJdGVzdF9jcmVhdGVfcmVwbyBzaW1wbGVfJHtzaWRlTH1fJHtzaWRlUn0gJiYKKwkJKAorCQkJY2Qgc2ltcGxlXyR7c2lkZUx9XyR7c2lkZVJ9ICYmCisKKwkJCSMgQ3JlYXRlIHNvbWUgcmVsYXRlZCBmaWxlcyBub3cKKwkJCWZvciBpIGluICQodGVzdF9zZXEgMSAxMCkKKwkJCWRvCisJCQkJZWNobyBSYW5kb20gYmFzZSBjb250ZW50IGxpbmUgJGkKKwkJCWRvbmUgPmZpbGVfdjEgJiYKKwkJCWNwIGZpbGVfdjEgZmlsZV92MiAmJgorCQkJZWNobyBtb2RpZmljYXRpb24gPj5maWxlX3YyICYmCisKKwkJCWNwIGZpbGVfdjEgZmlsZV92MyAmJgorCQkJZWNobyBtb3JlIHN0dWZmID4+ZmlsZV92MyAmJgorCQkJY3AgZmlsZV92MyBmaWxlX3Y0ICYmCisJCQllY2hvIHlldCBtb3JlIHN0dWZmID4+ZmlsZV92NCAmJgorCisJCQkjIFVzZSBhIHRhZyB0byByZWNvcmQgYm90aCB0aGVzZSBmaWxlcyBmb3Igc2ltcGxlCisJCQkjIGFjY2VzcywgYW5kIGNsZWFuIG91dCB0aGVzZSB1bnRyYWNrZWQgZmlsZXMKKwkJCWdpdCB0YWcgZmlsZV92MSAkKGdpdCBoYXNoLW9iamVjdCAtdyBmaWxlX3YxKSAmJgorCQkJZ2l0IHRhZyBmaWxlX3YyICQoZ2l0IGhhc2gtb2JqZWN0IC13IGZpbGVfdjIpICYmCisJCQlnaXQgdGFnIGZpbGVfdjMgJChnaXQgaGFzaC1vYmplY3QgLXcgZmlsZV92MykgJiYKKwkJCWdpdCB0YWcgZmlsZV92NCAkKGdpdCBoYXNoLW9iamVjdCAtdyBmaWxlX3Y0KSAmJgorCQkJZ2l0IGNsZWFuIC1mICYmCisKKwkJCSMgU2V0dXAgb3JpZ2luYWwgY29tbWl0IChvciBtZXJnZS1iYXNlKSwgY29uc2lzdGluZyBvZgorCQkJIyBmaWxlcyBuYW1lZCAib25lIiBhbmQgInR3byIgaWYgcmVuYW1lcyB3ZXJlIGludm9sdmVkLgorCQkJdG91Y2ggaXJyZWxldmFudF9maWxlICYmCisJCQlnaXQgYWRkIGlycmVsZXZhbnRfZmlsZSAmJgorCQkJaWYgWyAkc2lkZUwgPSAicmVuYW1lIiBdCisJCQl0aGVuCisJCQkJZ2l0IHNob3cgZmlsZV92MSA+b25lICYmCisJCQkJZ2l0IGFkZCBvbmUKKwkJCWZpICYmCisJCQlpZiBbICRzaWRlUiA9ICJyZW5hbWUiIF0KKwkJCXRoZW4KKwkJCQlnaXQgc2hvdyBmaWxlX3YzID50d28gJiYKKwkJCQlnaXQgYWRkIHR3bworCQkJZmkgJiYKKwkJCXRlc3RfdGljayAmJiBnaXQgY29tbWl0IC1tIGluaXRpYWwgJiYKKworCQkJZ2l0IGJyYW5jaCBMICYmCisJCQlnaXQgYnJhbmNoIFIgJiYKKworCQkJIyBIYW5kbGUgdGhlIGxlZnQgc2lkZQorCQkJZ2l0IGNoZWNrb3V0IEwgJiYKKwkJCWlmIFsgJHNpZGVMID0gInJlbmFtZSIgXQorCQkJdGhlbgorCQkJCWdpdCBtdiBvbmUgdGhyZWUKKwkJCWVsc2UKKwkJCQlnaXQgc2hvdyBmaWxlX3YyID50aHJlZSAmJgorCQkJCWdpdCBhZGQgdGhyZWUKKwkJCWZpICYmCisJCQlpZiBbICRzaWRlUiA9ICJyZW5hbWUiIF0KKwkJCXRoZW4KKwkJCQlnaXQgc2hvdyBmaWxlX3Y0ID50d28gJiYKKwkJCQlnaXQgYWRkIHR3bworCQkJZmkgJiYKKwkJCXRlc3RfdGljayAmJiBnaXQgY29tbWl0IC1tIEwgJiYKKworCQkJIyBIYW5kbGUgdGhlIHJpZ2h0IHNpZGUKKwkJCWdpdCBjaGVja291dCBSICYmCisJCQlpZiBbICRzaWRlTCA9ICJyZW5hbWUiIF0KKwkJCXRoZW4KKwkJCQlnaXQgc2hvdyBmaWxlX3YyID5vbmUgJiYKKwkJCQlnaXQgYWRkIG9uZQorCQkJZmkgJiYKKwkJCWlmIFsgJHNpZGVSID0gInJlbmFtZSIgXQorCQkJdGhlbgorCQkJCWdpdCBtdiB0d28gdGhyZWUKKwkJCWVsc2UKKwkJCQlnaXQgc2hvdyBmaWxlX3Y0ID50aHJlZSAmJgorCQkJCWdpdCBhZGQgdGhyZWUKKwkJCWZpICYmCisJCQl0ZXN0X3RpY2sgJiYgZ2l0IGNvbW1pdCAtbSBSCisJCSkKKwkjJworCX0KKworCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgImNoZWNrIHNpbXBsZSAkc2lkZUwvJHNpZGVSIGNvbmZsaWN0IiAnCisJCXRlc3Rfc2V0dXBfY29sbGlzaW9uX2NvbmZsaWN0ICYmCisJCSgKKwkJCWNkIHNpbXBsZV8ke3NpZGVMfV8ke3NpZGVSfSAmJgorCisJCQlnaXQgY2hlY2tvdXQgTF4wICYmCisKKwkJCSMgTWVyZ2UgbXVzdCBmYWlsOyB0aGVyZSBpcyBhIGNvbmZsaWN0CisJCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIFJeMCAmJgorCisJCQkjIE1ha2Ugc3VyZSB0aGUgaW5kZXggaGFzIHRoZSByaWdodCBudW1iZXIgb2YgZW50cmllcworCQkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKKwkJCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCisJCQlnaXQgbHMtZmlsZXMgLXUgPm91dCAmJgorCQkJdGVzdF9saW5lX2NvdW50ID0gMiBvdXQgJiYKKwkJCSMgRW5zdXJlIHdlIGhhdmUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIHVudHJhY2tlZCBmaWxlcworCQkJZ2l0IGxzLWZpbGVzIC1vID5vdXQgJiYKKwkJCXRlc3RfbGluZV9jb3VudCA9IDEgb3V0ICYmCisKKwkJCSMgTm90aGluZyBzaG91bGQgaGF2ZSB0b3VjaGVkIGlycmVsZXZhbnRfZmlsZQorCQkJZ2l0IHJldi1wYXJzZSA+YWN0dWFsICAgICAgXAorCQkJCTowOmlycmVsZXZhbnRfZmlsZSBcCisJCQkJOjI6dGhyZWUgICAgICAgICAgIFwKKwkJCQk6Mzp0aHJlZSAgICAgICAgICAgJiYKKwkJCWdpdCByZXYtcGFyc2UgPmV4cGVjdGVkICAgICAgICBcCisJCQkJbWFzdGVyOmlycmVsZXZhbnRfZmlsZSBcCisJCQkJZmlsZV92MiAgICAgICAgICAgICAgICBcCisJCQkJZmlsZV92NCAgICAgICAgICAgICAgICAmJgorCQkJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsICYmCisKKwkJCSMgTWFrZSBzdXJlIHdlIGhhdmUgdGhlIGNvcnJlY3QgbWVyZ2VkIGNvbnRlbnRzIGZvcgorCQkJIyB0aHJlZQorCQkJZ2l0IHNob3cgZmlsZV92MSA+ZXhwZWN0ZWQgJiYKKwkJCWNhdCA8PC1cRU9GID4+ZXhwZWN0ZWQgJiYKKwkJCTw8PDw8PDwgSEVBRAorCQkJbW9kaWZpY2F0aW9uCisJCQk9PT09PT09CisJCQltb3JlIHN0dWZmCisJCQl5ZXQgbW9yZSBzdHVmZgorCQkJPj4+Pj4+PiBSXjAKKwkJCUVPRgorCisJCQl0ZXN0X2NtcCBleHBlY3RlZCB0aHJlZQorCQkpCisJJworfQorCit0ZXN0X2NvbmZsaWN0c193aXRoX2FkZHNfYW5kX3JlbmFtZXMgcmVuYW1lIHJlbmFtZQordGVzdF9jb25mbGljdHNfd2l0aF9hZGRzX2FuZF9yZW5hbWVzIHJlbmFtZSBhZGQKK3Rlc3RfY29uZmxpY3RzX3dpdGhfYWRkc19hbmRfcmVuYW1lcyBhZGQgICAgcmVuYW1lCit0ZXN0X2NvbmZsaWN0c193aXRoX2FkZHNfYW5kX3JlbmFtZXMgYWRkICAgIGFkZAorCisjIFNldHVwOgorIyAgICAgICAgICBMCisjICAgICAgICAgLyBcCisjICAgbWFzdGVyICAgPworIyAgICAgICAgIFwgLworIyAgICAgICAgICBSCisjCisjIFdoZXJlOgorIyAgIG1hc3RlciBoYXMgdHdvIGZpbGVzLCBuYW1lZCAnb25lJyBhbmQgJ3R3bycuCisjICAgYnJhbmNoZXMgTCBhbmQgUiBib3RoIG1vZGlmeSAnb25lJywgaW4gY29uZmxpY3Rpbmcgd2F5cy4KKyMgICBicmFuY2hlcyBMIGFuZCBSIGJvdGggbW9kaWZ5ICd0d28nLCBpbiBjb25mbGljdGluZyB3YXlzLgorIyAgIGJyYW5jaCBMIGFsc28gcmVuYW1lcyAnb25lJyB0byAndGhyZWUnLgorIyAgIGJyYW5jaCBSIGFsc28gcmVuYW1lcyAndHdvJyB0byAndGhyZWUnLgorIworIyAgIFNvLCB3ZSBoYXZlIGZvdXIgZGlmZmVyZW50IGNvbmZsaWN0aW5nIGZpbGVzIHRoYXQgYWxsIGVuZCB1cCBhdCBwYXRoCisjICAgJ3RocmVlJy4KK3Rlc3Rfc2V0dXBfbmVzdGVkX2NvbmZsaWN0c19mcm9tX3JlbmFtZV9yZW5hbWUgKCkgeworCXRlc3RfY3JlYXRlX3JlcG8gbmVzdGVkX2NvbmZsaWN0c19mcm9tX3JlbmFtZV9yZW5hbWUgJiYKKwkoCisJCWNkIG5lc3RlZF9jb25mbGljdHNfZnJvbV9yZW5hbWVfcmVuYW1lICYmCisKKwkJIyBDcmVhdGUgc29tZSByZWxhdGVkIGZpbGVzIG5vdworCQlmb3IgaSBpbiAkKHRlc3Rfc2VxIDEgMTApCisJCWRvCisJCQllY2hvIFJhbmRvbSBiYXNlIGNvbnRlbnQgbGluZSAkaQorCQlkb25lID5maWxlX3YxICYmCisKKwkJY3AgZmlsZV92MSBmaWxlX3YyICYmCisJCWNwIGZpbGVfdjEgZmlsZV92MyAmJgorCQljcCBmaWxlX3YxIGZpbGVfdjQgJiYKKwkJY3AgZmlsZV92MSBmaWxlX3Y1ICYmCisJCWNwIGZpbGVfdjEgZmlsZV92NiAmJgorCisJCWVjaG8gb25lICA+PmZpbGVfdjEgJiYKKwkJZWNobyB1bm8gID4+ZmlsZV92MiAmJgorCQllY2hvIGVpbnMgPj5maWxlX3YzICYmCisKKwkJZWNobyB0d28gID4+ZmlsZV92NCAmJgorCQllY2hvIGRvcyAgPj5maWxlX3Y1ICYmCisJCWVjaG8gendlaSA+PmZpbGVfdjYgJiYKKworCQkjIFNldHVwIG9yaWdpbmFsIGNvbW1pdCAob3IgbWVyZ2UtYmFzZSksIGNvbnNpc3Rpbmcgb2YKKwkJIyBmaWxlcyBuYW1lZCAib25lIiBhbmQgInR3byIuCisJCW12IGZpbGVfdjEgb25lICYmCisJCW12IGZpbGVfdjQgdHdvICYmCisJCWdpdCBhZGQgb25lIHR3byAmJgorCQl0ZXN0X3RpY2sgJiYgZ2l0IGNvbW1pdCAtbSBlbmdsaXNoICYmCisKKwkJZ2l0IGJyYW5jaCBMICYmCisJCWdpdCBicmFuY2ggUiAmJgorCisJCSMgSGFuZGxlIHRoZSBsZWZ0IHNpZGUKKwkJZ2l0IGNoZWNrb3V0IEwgJiYKKwkJZ2l0IHJtIG9uZSB0d28gJiYKKwkJbXYgLWYgZmlsZV92MiB0aHJlZSAmJgorCQltdiAtZiBmaWxlX3Y1IHR3byAmJgorCQlnaXQgYWRkIHR3byB0aHJlZSAmJgorCQl0ZXN0X3RpY2sgJiYgZ2l0IGNvbW1pdCAtbSBzcGFuaXNoICYmCisKKwkJIyBIYW5kbGUgdGhlIHJpZ2h0IHNpZGUKKwkJZ2l0IGNoZWNrb3V0IFIgJiYKKwkJZ2l0IHJtIG9uZSB0d28gJiYKKwkJbXYgLWYgZmlsZV92MyBvbmUgJiYKKwkJbXYgLWYgZmlsZV92NiB0aHJlZSAmJgorCQlnaXQgYWRkIG9uZSB0aHJlZSAmJgorCQl0ZXN0X3RpY2sgJiYgZ2l0IGNvbW1pdCAtbSBnZXJtYW4KKwkpCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrIG5lc3RlZCBjb25mbGljdHMgZnJvbSByZW5hbWUvcmVuYW1lKDJ0bzEpJyAnCisJdGVzdF9zZXR1cF9uZXN0ZWRfY29uZmxpY3RzX2Zyb21fcmVuYW1lX3JlbmFtZSAmJgorCSgKKwkJY2QgbmVzdGVkX2NvbmZsaWN0c19mcm9tX3JlbmFtZV9yZW5hbWUgJiYKKworCQlnaXQgY2hlY2tvdXQgTF4wICYmCisKKwkJIyBNZXJnZSBtdXN0IGZhaWw7IHRoZXJlIGlzIGEgY29uZmxpY3QKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBSXjAgJiYKKworCQkjIE1ha2Ugc3VyZSB0aGUgaW5kZXggaGFzIHRoZSByaWdodCBudW1iZXIgb2YgZW50cmllcworCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAyIG91dCAmJgorCQlnaXQgbHMtZmlsZXMgLXUgPm91dCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAyIG91dCAmJgorCQkjIEVuc3VyZSB3ZSBoYXZlIHRoZSBjb3JyZWN0IG51bWJlciBvZiB1bnRyYWNrZWQgZmlsZXMKKwkJZ2l0IGxzLWZpbGVzIC1vID5vdXQgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMSBvdXQgJiYKKworCQkjIENvbXBhcmUgOjI6dGhyZWUgdG8gZXhwZWN0ZWQgdmFsdWVzCisJCWdpdCBjYXQtZmlsZSAtcCBtYXN0ZXI6b25lID5iYXNlICYmCisJCWdpdCBjYXQtZmlsZSAtcCBMOnRocmVlID5vdXJzICYmCisJCWdpdCBjYXQtZmlsZSAtcCBSOm9uZSA+dGhlaXJzICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZS1maWxlICAgIFwKKwkJCS1MICJIRUFEOnRocmVlIiAgLUwgIiIgIC1MICJSXjA6b25lIiBcCisJCQlvdXJzICAgICAgICAgICAgIGJhc2UgICB0aGVpcnMgJiYKKwkJc2VkIC1lICJzL15cKFs8PT5dXCkvXDFcMS8iIG91cnMgPkwtdGhyZWUgJiYKKwkJZ2l0IGNhdC1maWxlIC1wIDoyOnRocmVlID5leHBlY3QgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IEwtdGhyZWUgJiYKKworCQkjIENvbXBhcmUgOjI6dGhyZWUgdG8gZXhwZWN0ZWQgdmFsdWVzCisJCWdpdCBjYXQtZmlsZSAtcCBtYXN0ZXI6dHdvID5iYXNlICYmCisJCWdpdCBjYXQtZmlsZSAtcCBMOnR3byA+b3VycyAmJgorCQlnaXQgY2F0LWZpbGUgLXAgUjp0aHJlZSA+dGhlaXJzICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZS1maWxlICAgIFwKKwkJCS1MICJIRUFEOnR3byIgIC1MICIiICAtTCAiUl4wOnRocmVlIiBcCisJCQlvdXJzICAgICAgICAgICBiYXNlICAgdGhlaXJzICYmCisJCXNlZCAtZSAicy9eXChbPD0+XVwpL1wxXDEvIiBvdXJzID5SLXRocmVlICYmCisJCWdpdCBjYXQtZmlsZSAtcCA6Mzp0aHJlZSA+ZXhwZWN0ICYmCisJCXRlc3RfY21wIGV4cGVjdCBSLXRocmVlICYmCisKKwkJIyBDb21wYXJlIHRocmVlIHRvIGV4cGVjdGVkIGNvbnRlbnRzCisJCT5lbXB0eSAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UtZmlsZSAgICBcCisJCQktTCAiSEVBRCIgIC1MICIiICAtTCAiUl4wIiBcCisJCQlMLXRocmVlICAgIGVtcHR5ICBSLXRocmVlICYmCisJCXRlc3RfY21wIHRocmVlIEwtdGhyZWUKKwkpCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NjA0My1tZXJnZS1yZW5hbWUtZGlyZWN0b3JpZXMuc2ggYi90L3Q2MDQzLW1lcmdlLXJlbmFtZS1kaXJlY3Rvcmllcy5zaAppbmRleCA0YTcxZjE3Li44Mzc5MmM1IDEwMDc1NQotLS0gYS90L3Q2MDQzLW1lcmdlLXJlbmFtZS1kaXJlY3Rvcmllcy5zaAorKysgYi90L3Q2MDQzLW1lcmdlLXJlbmFtZS1kaXJlY3Rvcmllcy5zaApAQCAtMzgsNyArMzgsNyBAQAogIyAgIENvbW1pdCBCOiB6L3tiLGMsZCxlL2Z9CiAjICAgRXhwZWN0ZWQ6IHkve2IsYyxkLGUvZn0KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMWEtc2V0dXA6IFNpbXBsZSBkaXJlY3RvcnkgcmVuYW1lIGRldGVjdGlvbicgJwordGVzdF9zZXR1cF8xYSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAxYSAmJgogCSgKIAkJY2QgMWEgJiYKQEAgLTY3LDE1ICs2NywxNiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzFhLWNoZWNrOiBTaW1wbGUgZGlyZWN0b3J5IHJlbmFtZSBkZXRlY3Rpb24nICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzFhOiBTaW1wbGUgZGlyZWN0b3J5IHJlbmFtZSBkZXRlY3Rpb24nICcKKwl0ZXN0X3NldHVwXzFhICYmCiAJKAogCQljZCAxYSAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgorCQlnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDQgb3V0ICYmCkBAIC0xMDMsNyArMTA0LDcgQEAKICMgICBDb21taXQgQjogeS97YixjLGR9CiAjICAgRXhwZWN0ZWQ6IHkve2IsYyxkLGV9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzFiLXNldHVwOiBNZXJnZSBhIGRpcmVjdG9yeSB3aXRoIGFub3RoZXInICcKK3Rlc3Rfc2V0dXBfMWIgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gMWIgJiYKIAkoCiAJCWNkIDFiICYmCkBAIC0xMzQsMTUgKzEzNSwxNiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzFiLWNoZWNrOiBNZXJnZSBhIGRpcmVjdG9yeSB3aXRoIGFub3RoZXInICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzFiOiBNZXJnZSBhIGRpcmVjdG9yeSB3aXRoIGFub3RoZXInICcKKwl0ZXN0X3NldHVwXzFiICYmCiAJKAogCQljZCAxYiAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgorCQlnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSA0IG91dCAmJgpAQCAtMTY1LDcgKzE2Nyw3IEBACiAjICAgQ29tbWl0IEI6IHove2IsYyxkfQogIyAgIEV4cGVjdGVkOiB5L3tiLGMsZH0gIChiZWNhdXNlIHgvZCAtPiB6L2QgLT4geS9kKQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcxYy1zZXR1cDogVHJhbnNpdGl2ZSByZW5hbWluZycgJwordGVzdF9zZXR1cF8xYyAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAxYyAmJgogCSgKIAkJY2QgMWMgJiYKQEAgLTE5MywxNSArMTk1LDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMWMtY2hlY2s6IFRyYW5zaXRpdmUgcmVuYW1pbmcnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzFjOiBUcmFuc2l0aXZlIHJlbmFtaW5nJyAnCisJdGVzdF9zZXR1cF8xYyAmJgogCSgKIAkJY2QgMWMgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKKwkJZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSAzIG91dCAmJgpAQCAtMjI3LDcgKzIzMCw3IEBACiAjICAgTm90ZTogeS9tICYgei9uIHNob3VsZCBkZWZpbml0ZWx5IG1vdmUgaW50byB4LiAgQnkgdGhlIHNhbWUgdG9rZW4sIGJvdGgKICMgICAgICAgICB5L3doYW1fMSAmIHovd2hhbV8yIHNob3VsZCB0b28uLi5naXZpbmcgdXMgYSBjb25mbGljdC4KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMWQtc2V0dXA6IERpcmVjdG9yeSByZW5hbWVzIGNhdXNlIGEgcmVuYW1lL3JlbmFtZSgydG8xKSBjb25mbGljdCcgJwordGVzdF9zZXR1cF8xZCAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAxZCAmJgogCSgKIAkJY2QgMWQgJiYKQEAgLTI2MiwxNSArMjY1LDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMWQtY2hlY2s6IERpcmVjdG9yeSByZW5hbWVzIGNhdXNlIGEgcmVuYW1lL3JlbmFtZSgydG8xKSBjb25mbGljdCcgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnMWQ6IERpcmVjdG9yeSByZW5hbWVzIGNhdXNlIGEgcmVuYW1lL3JlbmFtZSgydG8xKSBjb25mbGljdCcgJworCXRlc3Rfc2V0dXBfMWQgJiYKIAkoCiAJCWNkIDFkICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpIiBvdXQgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgpAQCAtMjc4LDcgKzI4Miw3IEBACiAJCWdpdCBscy1maWxlcyAtdSA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDIgb3V0ICYmCiAJCWdpdCBscy1maWxlcyAtbyA+b3V0ICYmCi0JCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDEgb3V0ICYmCiAKIAkJZ2l0IHJldi1wYXJzZSA+YWN0dWFsIFwKIAkJCTowOngvYiA6MDp4L2MgOjA6eC9kIDowOngvZSA6MDp4L20gOjA6eC9uICYmCkBAIC0yOTMsMTUgKzI5NywxNiBAQAogCQkJIEE6eS93aGFtICBCOnovd2hhbSAmJgogCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAKLQkJdGVzdF9wYXRoX2lzX21pc3NpbmcgeC93aGFtICYmCi0JCXRlc3RfcGF0aF9pc19maWxlIHgvd2hhbX5IRUFEICYmCi0JCXRlc3RfcGF0aF9pc19maWxlIHgvd2hhbX5CXjAgJiYKLQotCQlnaXQgaGFzaC1vYmplY3QgPmFjdHVhbCBcCi0JCQl4L3doYW1+SEVBRCB4L3doYW1+Ql4wICYmCi0JCWdpdCByZXYtcGFyc2UgPmV4cGVjdCBcCi0JCQlBOnkvd2hhbSAgICBCOnovd2hhbSAmJgotCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJCSMgVGVzdCB0aGF0IHRoZSB0d28td2F5IG1lcmdlIGluIHgvd2hhbSBpcyBhcyBleHBlY3RlZAorCQlnaXQgY2F0LWZpbGUgLXAgOjI6eC93aGFtID5leHBlY3QgJiYKKwkJZ2l0IGNhdC1maWxlIC1wIDozOngvd2hhbSA+b3RoZXIgJiYKKwkJPmVtcHR5ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZS1maWxlIFwKKwkJCS1MICJIRUFEIiBcCisJCQktTCAiIiBcCisJCQktTCAiQl4wIiBcCisJCQlleHBlY3QgZW1wdHkgb3RoZXIgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IHgvd2hhbQogCSkKICcKIApAQCAtMzEyLDcgKzMxNyw3IEBACiAjICAgQ29tbWl0IEI6IHove29sZGIsb2xkYyxkfQogIyAgIEV4cGVjdGVkOiB5L3tuZXdiLG5ld2MsZH0KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMWUtc2V0dXA6IFJlbmFtZWQgZGlyZWN0b3J5LCB3aXRoIGFsbCBmaWxlcyBiZWluZyByZW5hbWVkIHRvbycgJwordGVzdF9zZXR1cF8xZSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAxZSAmJgogCSgKIAkJY2QgMWUgJiYKQEAgLTM0MSwxNSArMzQ2LDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMWUtY2hlY2s6IFJlbmFtZWQgZGlyZWN0b3J5LCB3aXRoIGFsbCBmaWxlcyBiZWluZyByZW5hbWVkIHRvbycgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnMWU6IFJlbmFtZWQgZGlyZWN0b3J5LCB3aXRoIGFsbCBmaWxlcyBiZWluZyByZW5hbWVkIHRvbycgJworCXRlc3Rfc2V0dXBfMWUgJiYKIAkoCiAJCWNkIDFlICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCWdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wICYmCisJCWdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCkBAIC0zNzAsNyArMzc2LDcgQEAKICMgICBDb21taXQgQjogeS97YixjfSwgeC97ZCxlLGZ9CiAjICAgRXhwZWN0ZWQ6IHkve2IsY30sIHgve2QsZSxmLGd9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzFmLXNldHVwOiBTcGxpdCBhIGRpcmVjdG9yeSBpbnRvIHR3byBvdGhlciBkaXJlY3RvcmllcycgJwordGVzdF9zZXR1cF8xZiAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAxZiAmJgogCSgKIAkJY2QgMWYgJiYKQEAgLTQwNywxNSArNDEzLDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMWYtY2hlY2s6IFNwbGl0IGEgZGlyZWN0b3J5IGludG8gdHdvIG90aGVyIGRpcmVjdG9yaWVzJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcxZjogU3BsaXQgYSBkaXJlY3RvcnkgaW50byB0d28gb3RoZXIgZGlyZWN0b3JpZXMnICcKKwl0ZXN0X3NldHVwXzFmICYmCiAJKAogCQljZCAxZiAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgorCQlnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSA2IG91dCAmJgpAQCAtNDU4LDcgKzQ2NSw3IEBACiAjICAgQ29tbWl0IEE6IHkvYiwgdy9jCiAjICAgQ29tbWl0IEI6IHove2IsYyxkfQogIyAgIEV4cGVjdGVkOiB5L2IsIHcvYywgei9kLCB3aXRoIHdhcm5pbmcgYWJvdXQgei8gLT4gKHkvIHZzLiB3LykgY29uZmxpY3QKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzJhLXNldHVwOiBEaXJlY3Rvcnkgc3BsaXQgaW50byB0d28gb24gb25lIHNpZGUsIHdpdGggZXF1YWwgbnVtYmVycyBvZiBwYXRocycgJwordGVzdF9zZXR1cF8yYSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAyYSAmJgogCSgKIAkJY2QgMmEgJiYKQEAgLTQ4OCwxNSArNDk1LDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMmEtY2hlY2s6IERpcmVjdG9yeSBzcGxpdCBpbnRvIHR3byBvbiBvbmUgc2lkZSwgd2l0aCBlcXVhbCBudW1iZXJzIG9mIHBhdGhzJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcyYTogRGlyZWN0b3J5IHNwbGl0IGludG8gdHdvIG9uIG9uZSBzaWRlLCB3aXRoIGVxdWFsIG51bWJlcnMgb2YgcGF0aHMnICcKKwl0ZXN0X3NldHVwXzJhICYmCiAJKAogCQljZCAyYSAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCiAJCXRlc3RfaTE4bmdyZXAgIkNPTkZMSUNULipkaXJlY3RvcnkgcmVuYW1lIHNwbGl0IiBvdXQgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgpAQCAtNTE5LDcgKzUyNyw3IEBACiAjICAgQ29tbWl0IEE6IHkvYiwgdy9jCiAjICAgQ29tbWl0IEI6IHove2IsY30sIHgvZAogIyAgIEV4cGVjdGVkOiB5L2IsIHcvYywgeC9kOyBObyB3YXJuaW5nIGFib3V0IHovIC0+ICh5LyB2cy4gdy8pIGNvbmZsaWN0Ci10ZXN0X2V4cGVjdF9zdWNjZXNzICcyYi1zZXR1cDogRGlyZWN0b3J5IHNwbGl0IGludG8gdHdvIG9uIG9uZSBzaWRlLCB3aXRoIGVxdWFsIG51bWJlcnMgb2YgcGF0aHMnICcKK3Rlc3Rfc2V0dXBfMmIgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gMmIgJiYKIAkoCiAJCWNkIDJiICYmCkBAIC01NTAsMTUgKzU1OCwxNiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzJiLWNoZWNrOiBEaXJlY3Rvcnkgc3BsaXQgaW50byB0d28gb24gb25lIHNpZGUsIHdpdGggZXF1YWwgbnVtYmVycyBvZiBwYXRocycgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnMmI6IERpcmVjdG9yeSBzcGxpdCBpbnRvIHR3byBvbiBvbmUgc2lkZSwgd2l0aCBlcXVhbCBudW1iZXJzIG9mIHBhdGhzJyAnCisJdGVzdF9zZXR1cF8yYiAmJgogCSgKIAkJY2QgMmIgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAmJgorCQlnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCkBAIC02MDAsNyArNjA5LDcgQEAKICMgICBDb21taXQgQTogei97YixjLGR9IChubyBjaGFuZ2UpCiAjICAgQ29tbWl0IEI6IHkve2IsY30sIHgvZAogIyAgIEV4cGVjdGVkOiB5L3tiLGN9LCB4L2QKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzNhLXNldHVwOiBBdm9pZCBpbXBsaWNpdCByZW5hbWUgaWYgaW52b2x2ZWQgYXMgc291cmNlIG9uIG90aGVyIHNpZGUnICcKK3Rlc3Rfc2V0dXBfM2EgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gM2EgJiYKIAkoCiAJCWNkIDNhICYmCkBAIC02MzEsMTUgKzY0MCwxNiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzNhLWNoZWNrOiBBdm9pZCBpbXBsaWNpdCByZW5hbWUgaWYgaW52b2x2ZWQgYXMgc291cmNlIG9uIG90aGVyIHNpZGUnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzNhOiBBdm9pZCBpbXBsaWNpdCByZW5hbWUgaWYgaW52b2x2ZWQgYXMgc291cmNlIG9uIG90aGVyIHNpZGUnICcKKwl0ZXN0X3NldHVwXzNhICYmCiAJKAogCQljZCAzYSAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgorCQlnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSAzIG91dCAmJgpAQCAtNjYzLDcgKzY3Myw3IEBACiAjICAgICAgICAgZ2V0IGl0IGludm9sdmVkIGluIGRpcmVjdG9yeSByZW5hbWUgZGV0ZWN0aW9uLiAgSWYgaXQgd2VyZSwgd2UgbWlnaHQKICMgICAgICAgICBlbmQgdXAgd2l0aCBDT05GTElDVDooei9kIC0+IHkvZCB2cy4geC9kIHZzLiB3L2QpLCBpLmUuIGEKICMgICAgICAgICByZW5hbWUvcmVuYW1lL3JlbmFtZSgxdG8zKSBjb25mbGljdCwgd2hpY2ggaXMganVzdCB3ZWlyZC4KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzNiLXNldHVwOiBBdm9pZCBpbXBsaWNpdCByZW5hbWUgaWYgaW52b2x2ZWQgYXMgc291cmNlIG9uIGN1cnJlbnQgc2lkZScgJwordGVzdF9zZXR1cF8zYiAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAzYiAmJgogCSgKIAkJY2QgM2IgJiYKQEAgLTY5NiwxNSArNzA2LDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnM2ItY2hlY2s6IEF2b2lkIGltcGxpY2l0IHJlbmFtZSBpZiBpbnZvbHZlZCBhcyBzb3VyY2Ugb24gY3VycmVudCBzaWRlJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICczYjogQXZvaWQgaW1wbGljaXQgcmVuYW1lIGlmIGludm9sdmVkIGFzIHNvdXJjZSBvbiBjdXJyZW50IHNpZGUnICcKKwl0ZXN0X3NldHVwXzNiICYmCiAJKAogCQljZCAzYiAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCiAJCXRlc3RfaTE4bmdyZXAgQ09ORkxJQ1QuKnJlbmFtZS9yZW5hbWUuKnovZC4qeC9kLip3L2Qgb3V0ICYmCiAJCXRlc3RfaTE4bmdyZXAgISBDT05GTElDVC4qcmVuYW1lL3JlbmFtZS4qeS9kIG91dCAmJgogCkBAIC03NDMsNyArNzU0LDcgQEAKICMKICMgV2hhdCBpZiB3ZSB3ZXJlIHRvIGF0dGVtcHQgdG8gZG8gZGlyZWN0b3J5IHJlbmFtZSBkZXRlY3Rpb24gd2hlbiBzb21lb25lCiAjICJtb3N0bHkiIG1vdmVkIGEgZGlyZWN0b3J5IGJ1dCBzdGlsbCBsZWZ0IHNvbWUgZmlsZXMgYXJvdW5kLCBvciwKLSMgZXF1aXZhbGVudGx5LCBmdWxseSByZW5hbWVkIGEgZGlyZWN0b3J5IGluIG9uZSBjb21tbWl0IGFuZCB0aGVuIHJlY3JlYXRlZAorIyBlcXVpdmFsZW50bHksIGZ1bGx5IHJlbmFtZWQgYSBkaXJlY3RvcnkgaW4gb25lIGNvbW1pdCBhbmQgdGhlbiByZWNyZWF0ZWQKICMgdGhhdCBkaXJlY3RvcnkgaW4gYSBsYXRlciBjb21taXQgYWRkaW5nIHNvbWUgbmV3IGZpbGVzIGFuZCB0aGVuIHRyaWVkIHRvCiAjIG1lcmdlPwogIwpAQCAtNzg1LDcgKzc5Niw3IEBACiAjICAgRXhwZWN0ZWQ6IHkve2IsYyxkfSwgei97ZSxmfQogIyAgIE5PVEU6IEV2ZW4gdGhvdWdoIG1vc3QgZmlsZXMgZnJvbSB6IG1vdmVkIHRvIHksIHdlIGRvbid0IHdhbnQgZiB0byBmb2xsb3cuCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzRhLXNldHVwOiBEaXJlY3Rvcnkgc3BsaXQsIHdpdGggb3JpZ2luYWwgZGlyZWN0b3J5IHN0aWxsIHByZXNlbnQnICcKK3Rlc3Rfc2V0dXBfNGEgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gNGEgJiYKIAkoCiAJCWNkIDRhICYmCkBAIC04MTcsMTUgKzgyOCwxNiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzRhLWNoZWNrOiBEaXJlY3Rvcnkgc3BsaXQsIHdpdGggb3JpZ2luYWwgZGlyZWN0b3J5IHN0aWxsIHByZXNlbnQnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzRhOiBEaXJlY3Rvcnkgc3BsaXQsIHdpdGggb3JpZ2luYWwgZGlyZWN0b3J5IHN0aWxsIHByZXNlbnQnICcKKwl0ZXN0X3NldHVwXzRhICYmCiAJKAogCQljZCA0YSAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgorCQlnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSA1IG91dCAmJgpAQCAtODczLDcgKzg4NSw3IEBACiAjICAgICAgICAgb2YgaGlzdG9yeSwgZ2l2aW5nIHVzIG5vIHdheSB0byByZXByZXNlbnQgdGhpcyBjb25mbGljdCBpbiB0aGUKICMgICAgICAgICBpbmRleC4KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnNWEtc2V0dXA6IE1lcmdlIGRpcmVjdG9yaWVzLCBvdGhlciBzaWRlIGFkZHMgZmlsZXMgdG8gb3JpZ2luYWwgYW5kIHRhcmdldCcgJwordGVzdF9zZXR1cF81YSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA1YSAmJgogCSgKIAkJY2QgNWEgJiYKQEAgLTkwNiwxNSArOTE4LDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnNWEtY2hlY2s6IE1lcmdlIGRpcmVjdG9yaWVzLCBvdGhlciBzaWRlIGFkZHMgZmlsZXMgdG8gb3JpZ2luYWwgYW5kIHRhcmdldCcgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnNWE6IE1lcmdlIGRpcmVjdG9yaWVzLCBvdGhlciBzaWRlIGFkZHMgZmlsZXMgdG8gb3JpZ2luYWwgYW5kIHRhcmdldCcgJworCXRlc3Rfc2V0dXBfNWEgJiYKIAkoCiAJCWNkIDVhICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCAiQ09ORkxJQ1QuKmltcGxpY2l0IGRpciByZW5hbWUiIG91dCAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCkBAIC05NDAsMTQgKzk1MywxNCBAQAogIyAgIENvbW1pdCBCOiB6L3tiLGMsZF8xLGV9LCB5L2RfMwogIyAgIEV4cGVjdGVkOiB5L3tiLGMsZX0sIENPTkZMSUNUKGFkZC9hZGQ6IHkvZF8yIHZzLiB5L2RfMykKICMgICBOT1RFOiBJZiB6L2RfMSBpbiBjb21taXQgQiB3ZXJlIHRvIGJlIGludm9sdmVkIGluIGRpciByZW5hbWUgZGV0ZWN0aW9uLCBhcwotIyAgICAgICAgIHdlIG5vcm1hbHkgd291bGQgc2luY2Ugei8gaXMgYmVpbmcgcmVuYW1lZCB0byB5LywgdGhlbiB0aGlzIHdvdWxkIGJlCisjICAgICAgICAgd2Ugbm9ybWFsbHkgd291bGQgc2luY2Ugei8gaXMgYmVpbmcgcmVuYW1lZCB0byB5LywgdGhlbiB0aGlzIHdvdWxkIGJlCiAjICAgICAgICAgYSByZW5hbWUvZGVsZXRlICh6L2RfMSAtPiB5L2RfMSB2cy4gZGVsZXRlZCkgQU5EIGFuIGFkZC9hZGQvYWRkCiAjICAgICAgICAgY29uZmxpY3Qgb2YgeS9kXzEgdnMuIHkvZF8yIHZzLiB5L2RfMy4gIEFkZC9hZGQvYWRkIGlzIG5vdAogIyAgICAgICAgIHJlcHJlc2VudGFibGUgaW4gdGhlIGluZGV4LCBzbyB0aGUgZXhpc3RlbmNlIG9mIHkvZF8zIG5lZWRzIHRvCiAjICAgICAgICAgY2F1c2UgdXMgdG8gYmFpbCBvbiBkaXJlY3RvcnkgcmVuYW1lIGRldGVjdGlvbiBmb3IgdGhhdCBwYXRoLCBmYWxsaW5nCiAjICAgICAgICAgYmFjayB0byBnaXQgYmVoYXZpb3Igd2l0aG91dCB0aGUgZGlyZWN0b3J5IHJlbmFtZSBkZXRlY3Rpb24uCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzViLXNldHVwOiBSZW5hbWUvZGVsZXRlIGluIG9yZGVyIHRvIGdldCBhZGQvYWRkL2FkZCBjb25mbGljdCcgJwordGVzdF9zZXR1cF81YiAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA1YiAmJgogCSgKIAkJY2QgNWIgJiYKQEAgLTk4MCwxNSArOTkzLDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnNWItY2hlY2s6IFJlbmFtZS9kZWxldGUgaW4gb3JkZXIgdG8gZ2V0IGFkZC9hZGQvYWRkIGNvbmZsaWN0JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICc1YjogUmVuYW1lL2RlbGV0ZSBpbiBvcmRlciB0byBnZXQgYWRkL2FkZC9hZGQgY29uZmxpY3QnICcKKwl0ZXN0X3NldHVwXzViICYmCiAJKAogCQljZCA1YiAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCiAJCXRlc3RfaTE4bmdyZXAgIkNPTkZMSUNUIChhZGQvYWRkKS4qIHkvZCIgb3V0ICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKQEAgLTEwMjMsNyArMTAzNyw3IEBACiAjICAgICAgICAgICAgIHkvZCBhcmUgeS9kXzIgYW5kIHkvZF80LiAgV2Ugc3RpbGwgZG8gdGhlIG1vdmUgZnJvbSB6L2UgdG8geS9lLAogIyAgICAgICAgICAgICB0aG91Z2gsIGJlY2F1c2UgaXQgZG9lc24ndCBoYXZlIGFueXRoaW5nIGluIHRoZSB3YXkuCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzVjLXNldHVwOiBUcmFuc2l0aXZlIHJlbmFtZSB3b3VsZCBjYXVzZSByZW5hbWUvcmVuYW1lL3JlbmFtZS9hZGQvYWRkL2FkZCcgJwordGVzdF9zZXR1cF81YyAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA1YyAmJgogCSgKIAkJY2QgNWMgJiYKQEAgLTEwNjAsMTUgKzEwNzQsMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc1Yy1jaGVjazogVHJhbnNpdGl2ZSByZW5hbWUgd291bGQgY2F1c2UgcmVuYW1lL3JlbmFtZS9yZW5hbWUvYWRkL2FkZC9hZGQnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzVjOiBUcmFuc2l0aXZlIHJlbmFtZSB3b3VsZCBjYXVzZSByZW5hbWUvcmVuYW1lL3JlbmFtZS9hZGQvYWRkL2FkZCcgJworCXRlc3Rfc2V0dXBfNWMgJiYKIAkoCiAJCWNkIDVjICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpLip4L2QuKncvZC4qei9kIiBvdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCAiQ09ORkxJQ1QgKGFkZC9hZGQpLiogeS9kIiBvdXQgJiYKIApAQCAtMTA3Nyw3ICsxMDkyLDcgQEAKIAkJZ2l0IGxzLWZpbGVzIC11ID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gNiBvdXQgJiYKIAkJZ2l0IGxzLWZpbGVzIC1vID5vdXQgJiYKLQkJdGVzdF9saW5lX2NvdW50ID0gMyBvdXQgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMSBvdXQgJiYKIAogCQlnaXQgcmV2LXBhcnNlID5hY3R1YWwgXAogCQkJOjA6eS9iIDowOnkvYyA6MDp5L2UgJiYKQEAgLTEwOTMsOSArMTEwOCw5IEBACiAJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKIAogCQlnaXQgaGFzaC1vYmplY3QgPmFjdHVhbCBcCi0JCQl3L2R+SEVBRCB3L2R+Ql4wIHovZCAmJgorCQkJei9kICYmCiAJCWdpdCByZXYtcGFyc2UgPmV4cGVjdCBcCi0JCQlPOngvZCAgICBCOncvZCAgIE86eC9kICYmCisJCQlPOngvZCAmJgogCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAJCXRlc3RfcGF0aF9pc19taXNzaW5nIHgvZCAmJgogCQl0ZXN0X3BhdGhfaXNfZmlsZSB5L2QgJiYKQEAgLTExMTIsNyArMTEyNyw3IEBACiAjICAgICAgICAgZGV0ZWN0aW9uIGZvciB6L2RfMiwgYnV0IHRoYXQgZG9lc24ndCBwcmV2ZW50IHVzIGZyb20gYXBwbHlpbmcgdGhlCiAjICAgICAgICAgZGlyZWN0b3J5IHJlbmFtZSBkZXRlY3Rpb24gZm9yIHovZiAtPiB5L2YuCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzVkLXNldHVwOiBEaXJlY3RvcnkvZmlsZS9maWxlIGNvbmZsaWN0IGR1ZSB0byBkaXJlY3RvcnkgcmVuYW1lJyAnCit0ZXN0X3NldHVwXzVkICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIDVkICYmCiAJKAogCQljZCA1ZCAmJgpAQCAtMTE0NCwxNSArMTE1OSwxNiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzVkLWNoZWNrOiBEaXJlY3RvcnkvZmlsZS9maWxlIGNvbmZsaWN0IGR1ZSB0byBkaXJlY3RvcnkgcmVuYW1lJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICc1ZDogRGlyZWN0b3J5L2ZpbGUvZmlsZSBjb25mbGljdCBkdWUgdG8gZGlyZWN0b3J5IHJlbmFtZScgJworCXRlc3Rfc2V0dXBfNWQgJiYKIAkoCiAJCWNkIDVkICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCAiQ09ORkxJQ1QgKGZpbGUvZGlyZWN0b3J5KS4qeS9kIiBvdXQgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgpAQCAtMTIwNCw3ICsxMjIwLDcgQEAKICMgICAgICAgICB0aGVtIHVuZGVyIHkvIGRvZXNuJ3QgYWNjaWRlbnRhbGx5IGNhdGNoIHovZCBhbmQgbWFrZSBpdCBsb29rIGxpa2UKICMgICAgICAgICBpdCBpcyBhbHNvIGludm9sdmVkIGluIGEgcmVuYW1lL2RlbGV0ZSBjb25mbGljdC4KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnNmEtc2V0dXA6IFRyaWNreSByZW5hbWUvZGVsZXRlJyAnCit0ZXN0X3NldHVwXzZhICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIDZhICYmCiAJKAogCQljZCA2YSAmJgpAQCAtMTIzNCwxNSArMTI1MCwxNiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzZhLWNoZWNrOiBUcmlja3kgcmVuYW1lL2RlbGV0ZScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnNmE6IFRyaWNreSByZW5hbWUvZGVsZXRlJyAnCisJdGVzdF9zZXR1cF82YSAmJgogCSgKIAkJY2QgNmEgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAmJgogCQl0ZXN0X2kxOG5ncmVwICJDT05GTElDVCAocmVuYW1lL2RlbGV0ZSkuKnovYy4qeS9jIiBvdXQgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgpAQCAtMTI3MCw3ICsxMjg3LDcgQEAKICMgICAgICAgICBidXQgQiBkaWQgdGhhdCByZW5hbWUgYW5kIHN0aWxsIGRlY2lkZWQgdG8gcHV0IHRoZSBmaWxlIGludG8gei8sCiAjICAgICAgICAgc28gd2UgcHJvYmFibHkgc2hvdWxkbid0IGFwcGx5IGRpcmVjdG9yeSByZW5hbWUgZGV0ZWN0aW9uIGZvciBpdC4KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnNmItc2V0dXA6IFNhbWUgcmVuYW1lIGRvbmUgb24gYm90aCBzaWRlcycgJwordGVzdF9zZXR1cF82YiAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA2YiAmJgogCSgKIAkJY2QgNmIgJiYKQEAgLTEyOTksMTUgKzEzMTYsMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc2Yi1jaGVjazogU2FtZSByZW5hbWUgZG9uZSBvbiBib3RoIHNpZGVzJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICc2YjogU2FtZSByZW5hbWUgZG9uZSBvbiBib3RoIHNpZGVzJyAnCisJdGVzdF9zZXR1cF82YiAmJgogCSgKIAkJY2QgNmIgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKKwkJZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gMyBvdXQgJiYKQEAgLTEzMzMsNyArMTM1MSw3IEBACiAjICAgTk9URTogU2VlbXMgb2J2aW91cywgYnV0IGp1c3QgY2hlY2tpbmcgdGhhdCB0aGUgaW1wbGVtZW50YXRpb24gZG9lc24ndAogIyAgICAgICAgICJhY2NpZGVudGFsbHkgZGV0ZWN0IGEgcmVuYW1lIiBhbmQgZ2l2ZSB1cyB5L3tiLGMsZH0uCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzZjLXNldHVwOiBSZW5hbWUgb25seSBkb25lIG9uIHNhbWUgc2lkZScgJwordGVzdF9zZXR1cF82YyAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA2YyAmJgogCSgKIAkJY2QgNmMgJiYKQEAgLTEzNjEsMTUgKzEzNzksMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc2Yy1jaGVjazogUmVuYW1lIG9ubHkgZG9uZSBvbiBzYW1lIHNpZGUnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzZjOiBSZW5hbWUgb25seSBkb25lIG9uIHNhbWUgc2lkZScgJworCXRlc3Rfc2V0dXBfNmMgJiYKIAkoCiAJCWNkIDZjICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCWdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wICYmCisJCWdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCkBAIC0xMzk1LDcgKzE0MTQsNyBAQAogIyAgIE5PVEU6IEFnYWluLCB0aGlzIHNlZW1zIG9idmlvdXMgYnV0IGp1c3QgY2hlY2tpbmcgdGhhdCB0aGUgaW1wbGVtZW50YXRpb24KICMgICAgICAgICBkb2Vzbid0ICJhY2NpZGVudGFsbHkgZGV0ZWN0IGEgcmVuYW1lIiBhbmQgZ2l2ZSB1cyB5L3tiLGMsZH0uCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzZkLXNldHVwOiBXZSBkbyBub3QgYWx3YXlzIHdhbnQgdHJhbnNpdGl2ZSByZW5hbWluZycgJwordGVzdF9zZXR1cF82ZCAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA2ZCAmJgogCSgKIAkJY2QgNmQgJiYKQEAgLTE0MjMsMTUgKzE0NDIsMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc2ZC1jaGVjazogV2UgZG8gbm90IGFsd2F5cyB3YW50IHRyYW5zaXRpdmUgcmVuYW1pbmcnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzZkOiBXZSBkbyBub3QgYWx3YXlzIHdhbnQgdHJhbnNpdGl2ZSByZW5hbWluZycgJworCXRlc3Rfc2V0dXBfNmQgJiYKIAkoCiAJCWNkIDZkICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCWdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wICYmCisJCWdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCkBAIC0xNDU3LDcgKzE0NzcsNyBAQAogIyAgICAgICAgIGRvZXNuJ3QgImFjY2lkZW50YWxseSBkZXRlY3QgYSByZW5hbWUiIGFuZCBnaXZlIHVzIHkve2IsY30gKwogIyAgICAgICAgIGFkZC9hZGQgY29uZmxpY3Qgb24geS9kXzEgdnMgeS9kXzIuCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzZlLXNldHVwOiBBZGQvYWRkIGZyb20gb25lIHNpZGUnICcKK3Rlc3Rfc2V0dXBfNmUgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gNmUgJiYKIAkoCiAJCWNkIDZlICYmCkBAIC0xNDg2LDE1ICsxNTA2LDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnNmUtY2hlY2s6IEFkZC9hZGQgZnJvbSBvbmUgc2lkZScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnNmU6IEFkZC9hZGQgZnJvbSBvbmUgc2lkZScgJworCXRlc3Rfc2V0dXBfNmUgJiYKIAkoCiAJCWNkIDZlICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCWdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wICYmCisJCWdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDQgb3V0ICYmCkBAIC0xNTUxLDcgKzE1NzIsNyBAQAogIyAgIEV4cGVjdGVkOiB5L2QsIENPTkZMSUNUKHJlbmFtZS9yZW5hbWUgZm9yIGJvdGggei9iIGFuZCB6L2MpCiAjICAgTk9URTogVGhlcmUncyBhIHJlbmFtZSBvZiB6LyBoZXJlLCB5LyBoYXMgbW9yZSByZW5hbWVzLCBzbyB6L2QgLT4geS9kLgogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc3YS1zZXR1cDogcmVuYW1lLWRpciB2cy4gcmVuYW1lLWRpciAoTk9UIHNwbGl0IGV2ZW5seSkgUExVUyBhZGQtb3RoZXItZmlsZScgJwordGVzdF9zZXR1cF83YSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA3YSAmJgogCSgKIAkJY2QgN2EgJiYKQEAgLTE1ODIsMTUgKzE2MDMsMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc3YS1jaGVjazogcmVuYW1lLWRpciB2cy4gcmVuYW1lLWRpciAoTk9UIHNwbGl0IGV2ZW5seSkgUExVUyBhZGQtb3RoZXItZmlsZScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnN2E6IHJlbmFtZS1kaXIgdnMuIHJlbmFtZS1kaXIgKE5PVCBzcGxpdCBldmVubHkpIFBMVVMgYWRkLW90aGVyLWZpbGUnICcKKwl0ZXN0X3NldHVwXzdhICYmCiAJKAogCQljZCA3YSAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCiAJCXRlc3RfaTE4bmdyZXAgIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKS4qei9iLip5L2IuKncvYiIgb3V0ICYmCiAJCXRlc3RfaTE4bmdyZXAgIkNPTkZMSUNUIChyZW5hbWUvcmVuYW1lKS4qei9jLip5L2MuKngvYyIgb3V0ICYmCiAKQEAgLTE2MjIsNyArMTY0NCw3IEBACiAjICAgQ29tbWl0IEI6IHove2IsYyxkXzF9LCAgICAgICAgdy9kXzIKICMgICBFeHBlY3RlZDogeS97YixjfSwgQ09ORkxJQ1QocmVuYW1lL3JlbmFtZSgydG8xKTogeC9kXzEsIHcvZF8yIC0+IHlfZCkKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnN2Itc2V0dXA6IHJlbmFtZS9yZW5hbWUoMnRvMSksIGJ1dCBvbmx5IGR1ZSB0byB0cmFuc2l0aXZlIHJlbmFtZScgJwordGVzdF9zZXR1cF83YiAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA3YiAmJgogCSgKIAkJY2QgN2IgJiYKQEAgLTE2NTQsMTUgKzE2NzYsMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc3Yi1jaGVjazogcmVuYW1lL3JlbmFtZSgydG8xKSwgYnV0IG9ubHkgZHVlIHRvIHRyYW5zaXRpdmUgcmVuYW1lJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICc3YjogcmVuYW1lL3JlbmFtZSgydG8xKSwgYnV0IG9ubHkgZHVlIHRvIHRyYW5zaXRpdmUgcmVuYW1lJyAnCisJdGVzdF9zZXR1cF83YiAmJgogCSgKIAkJY2QgN2IgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAmJgogCQl0ZXN0X2kxOG5ncmVwICJDT05GTElDVCAocmVuYW1lL3JlbmFtZSkiIG91dCAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCkBAIC0xNjcwLDcgKzE2OTMsNyBAQAogCQlnaXQgbHMtZmlsZXMgLXUgPm91dCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSAyIG91dCAmJgogCQlnaXQgbHMtZmlsZXMgLW8gPm91dCAmJgotCQl0ZXN0X2xpbmVfY291bnQgPSAzIG91dCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAxIG91dCAmJgogCiAJCWdpdCByZXYtcGFyc2UgPmFjdHVhbCBcCiAJCQk6MDp5L2IgOjA6eS9jIDoyOnkvZCA6Mzp5L2QgJiYKQEAgLTE2NzgsMTUgKzE3MDEsMTYgQEAKIAkJCSBPOnovYiAgTzp6L2MgIE86dy9kICBPOngvZCAmJgogCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAKLQkJdGVzdF9wYXRoX2lzX21pc3NpbmcgeS9kICYmCi0JCXRlc3RfcGF0aF9pc19maWxlIHkvZH5IRUFEICYmCi0JCXRlc3RfcGF0aF9pc19maWxlIHkvZH5CXjAgJiYKLQotCQlnaXQgaGFzaC1vYmplY3QgPmFjdHVhbCBcCi0JCQl5L2R+SEVBRCB5L2R+Ql4wICYmCi0JCWdpdCByZXYtcGFyc2UgPmV4cGVjdCBcCi0JCQlPOncvZCAgICBPOngvZCAmJgotCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJCSMgVGVzdCB0aGF0IHRoZSB0d28td2F5IG1lcmdlIGluIHkvZCBpcyBhcyBleHBlY3RlZAorCQlnaXQgY2F0LWZpbGUgLXAgOjI6eS9kID5leHBlY3QgJiYKKwkJZ2l0IGNhdC1maWxlIC1wIDozOnkvZCA+b3RoZXIgJiYKKwkJPmVtcHR5ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZS1maWxlIFwKKwkJCS1MICJIRUFEIiBcCisJCQktTCAiIiBcCisJCQktTCAiQl4wIiBcCisJCQlleHBlY3QgZW1wdHkgb3RoZXIgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IHkvZAogCSkKICcKIApAQCAtMTcwMCw3ICsxNzI0LDcgQEAKICMgICAgICAgICBuZWl0aGVyIENPTkZMSUNUKHgvZCAtPiB3L2QgdnMuIHovZCkKICMgICAgICAgICBub3IgQ09ORkxpQ1QgeC9kIC0+IHcvZCB2cy4geS9kIHZzLiB6L2QpCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzdjLXNldHVwOiByZW5hbWUvcmVuYW1lKDF0by4uLjJvcjMpOyB0cmFuc2l0aXZlIHJlbmFtZSBtYXkgYWRkIGNvbXBsZXhpdHknICcKK3Rlc3Rfc2V0dXBfN2MgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gN2MgJiYKIAkoCiAJCWNkIDdjICYmCkBAIC0xNzMwLDE1ICsxNzU0LDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnN2MtY2hlY2s6IHJlbmFtZS9yZW5hbWUoMXRvLi4uMm9yMyk7IHRyYW5zaXRpdmUgcmVuYW1lIG1heSBhZGQgY29tcGxleGl0eScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnN2M6IHJlbmFtZS9yZW5hbWUoMXRvLi4uMm9yMyk7IHRyYW5zaXRpdmUgcmVuYW1lIG1heSBhZGQgY29tcGxleGl0eScgJworCXRlc3Rfc2V0dXBfN2MgJiYKIAkoCiAJCWNkIDdjICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpLip4L2QuKncvZC4qeS9kIiBvdXQgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgpAQCAtMTc2NCw3ICsxNzg5LDcgQEAKICMgICBFeHBlY3RlZDogeS97YixjfSwgQ09ORkxJQ1QoZGVsZXRlIHgvZCB2cyByZW5hbWUgdG8geS9kKQogIyAgIE5PVEU6IHotPnkgc28gTk9UIENPTkZMSUNUKGRlbGV0ZSB4L2QgdnMgcmVuYW1lIHRvIHovZCkKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnN2Qtc2V0dXA6IHRyYW5zaXRpdmUgcmVuYW1lIGludm9sdmVkIGluIHJlbmFtZS9kZWxldGU7IGhvdyBpcyBpdCByZXBvcnRlZD8nICcKK3Rlc3Rfc2V0dXBfN2QgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gN2QgJiYKIAkoCiAJCWNkIDdkICYmCkBAIC0xNzk0LDE1ICsxODE5LDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnN2QtY2hlY2s6IHRyYW5zaXRpdmUgcmVuYW1lIGludm9sdmVkIGluIHJlbmFtZS9kZWxldGU7IGhvdyBpcyBpdCByZXBvcnRlZD8nICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzdkOiB0cmFuc2l0aXZlIHJlbmFtZSBpbnZvbHZlZCBpbiByZW5hbWUvZGVsZXRlOyBob3cgaXMgaXQgcmVwb3J0ZWQ/JyAnCisJdGVzdF9zZXR1cF83ZCAmJgogCSgKIAkJY2QgN2QgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAmJgogCQl0ZXN0X2kxOG5ncmVwICJDT05GTElDVCAocmVuYW1lL2RlbGV0ZSkuKngvZC4qeS9kIiBvdXQgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgpAQCAtMTg0OSw3ICsxODc1LDcgQEAKICMgICAgICAgICBzZWUgdGVzdGNhc2VzIDljIGFuZCA5ZCBmb3IgZnVydGhlciBkaXNjdXNzaW9uIG9mIHRoaXMgaXNzdWUgYW5kCiAjICAgICAgICAgaG93IGl0J3MgcmVzb2x2ZWQuCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzdlLXNldHVwOiB0cmFuc2l0aXZlIHJlbmFtZSBpbiByZW5hbWUvZGVsZXRlIEFORCBkaXJzIGluIHRoZSB3YXknICcKK3Rlc3Rfc2V0dXBfN2UgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gN2UgJiYKIAkoCiAJCWNkIDdlICYmCkBAIC0xODg0LDE1ICsxOTEwLDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnN2UtY2hlY2s6IHRyYW5zaXRpdmUgcmVuYW1lIGluIHJlbmFtZS9kZWxldGUgQU5EIGRpcnMgaW4gdGhlIHdheScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnN2U6IHRyYW5zaXRpdmUgcmVuYW1lIGluIHJlbmFtZS9kZWxldGUgQU5EIGRpcnMgaW4gdGhlIHdheScgJworCXRlc3Rfc2V0dXBfN2UgJiYKIAkoCiAJCWNkIDdlICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCAiQ09ORkxJQ1QgKHJlbmFtZS9kZWxldGUpLip4L2QuKnkvZCIgb3V0ICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKQEAgLTE5NDMsNyArMTk3MCw3IEBACiAjIHNpbXBsZSBydWxlIGZyb20gc2VjdGlvbiA1IHByZXZlbnRzIG1lIGZyb20gaGFuZGxpbmcgdGhpcyBhcyBvcHRpbWFsbHkgYXMKICMgd2UgcG90ZW50aWFsbHkgY291bGQuCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzhhLXNldHVwOiBEdWFsLWRpcmVjdG9yeSByZW5hbWUsIG9uZSBpbnRvIHRoZSBvdGhlcnMgd2F5JyAnCit0ZXN0X3NldHVwXzhhICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIDhhICYmCiAJKAogCQljZCA4YSAmJgpAQCAtMTk3NSwxNSArMjAwMiwxNiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzhhLWNoZWNrOiBEdWFsLWRpcmVjdG9yeSByZW5hbWUsIG9uZSBpbnRvIHRoZSBvdGhlcnMgd2F5JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICc4YTogRHVhbC1kaXJlY3RvcnkgcmVuYW1lLCBvbmUgaW50byB0aGUgb3RoZXJzIHdheScgJworCXRlc3Rfc2V0dXBfOGEgJiYKIAkoCiAJCWNkIDhhICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCWdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wICYmCisJCWdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDYgb3V0ICYmCkBAIC0yMDIxLDcgKzIwNDksNyBAQAogIyBtYWtpbmcgdXMgZmFsbCBiYWNrIHRvIHByZS1kaXJlY3RvcnktcmVuYW1lLWRldGVjdGlvbiBiZWhhdmlvciBmb3IgYm90aAogIyBlXzEgYW5kIGVfMi4KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnOGItc2V0dXA6IER1YWwtZGlyZWN0b3J5IHJlbmFtZSwgb25lIGludG8gdGhlIG90aGVycyB3YXksIHdpdGggY29uZmxpY3RpbmcgZmlsZW5hbWVzJyAnCit0ZXN0X3NldHVwXzhiICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIDhiICYmCiAJKAogCQljZCA4YiAmJgpAQCAtMjA1MywxNSArMjA4MSwxNiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzhiLWNoZWNrOiBEdWFsLWRpcmVjdG9yeSByZW5hbWUsIG9uZSBpbnRvIHRoZSBvdGhlcnMgd2F5LCB3aXRoIGNvbmZsaWN0aW5nIGZpbGVuYW1lcycgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnOGI6IER1YWwtZGlyZWN0b3J5IHJlbmFtZSwgb25lIGludG8gdGhlIG90aGVycyB3YXksIHdpdGggY29uZmxpY3RpbmcgZmlsZW5hbWVzJyAnCisJdGVzdF9zZXR1cF84YiAmJgogCSgKIAkJY2QgOGIgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKKwkJZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gNiBvdXQgJiYKQEAgLTIwODcsMTQgKzIxMTYsMTQgQEAKICMKICMgICBOb3RlOiBJdCBjb3VsZCBlYXNpbHkgYmUgYXJndWVkIHRoYXQgdGhlIGNvcnJlY3QgcmVzb2x1dGlvbiBoZXJlIGlzCiAjICAgICAgICAgeS97YixjLGV9LCBDT05GTElDVChyZW5hbWUvZGVsZXRlOiB6L2QgLT4geS9kIHZzIGRlbGV0ZWQpCi0jICAgICAgICAgYW5kIHRoYXQgdGhlIG1vZGlmZWQgdmVyc2lvbiBvZiBkIHNob3VsZCBiZSBwcmVzZW50IGluIHkvIGFmdGVyCisjICAgICAgICAgYW5kIHRoYXQgdGhlIG1vZGlmaWVkIHZlcnNpb24gb2YgZCBzaG91bGQgYmUgcHJlc2VudCBpbiB5LyBhZnRlcgogIyAgICAgICAgIHRoZSBtZXJnZSwganVzdCBtYXJrZWQgYXMgY29uZmxpY3RlZC4gIEluZGVlZCwgSSBwcmV2aW91c2x5IGRpZAogIyAgICAgICAgIGFyZ3VlIHRoYXQuICBCdXQgYXBwbHlpbmcgZGlyZWN0b3J5IHJlbmFtZXMgdG8gdGhlIHNpZGUgb2YKICMgICAgICAgICBoaXN0b3J5IHdoZXJlIGEgZmlsZSBpcyBtZXJlbHkgbW9kaWZpZWQgcmVzdWx0cyBpbiBzcHVyaW91cwogIyAgICAgICAgIHJlbmFtZS9yZW5hbWUoMXRvMikgY29uZmxpY3RzIC0tIHNlZSB0ZXN0Y2FzZSA5aC4gIFNlZSBhbHNvCiAjICAgICAgICAgbm90ZXMgaW4gOGQuCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzhjLXNldHVwOiBtb2RpZnkvZGVsZXRlIG9yIHJlbmFtZSttb2RpZnkvZGVsZXRlPycgJwordGVzdF9zZXR1cF84YyAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA4YyAmJgogCSgKIAkJY2QgOGMgJiYKQEAgLTIxMjUsMTUgKzIxNTQsMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc4Yy1jaGVjazogbW9kaWZ5L2RlbGV0ZSBvciByZW5hbWUrbW9kaWZ5L2RlbGV0ZScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnOGM6IG1vZGlmeS9kZWxldGUgb3IgcmVuYW1lK21vZGlmeS9kZWxldGUnICcKKwl0ZXN0X3NldHVwXzhjICYmCiAJKAogCQljZCA4YyAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCiAJCXRlc3RfaTE4bmdyZXAgIkNPTkZMSUNUIChtb2RpZnkvZGVsZXRlKS4qIHovZCIgb3V0ICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKQEAgLTIxNzMsNyArMjIwMyw3IEBACiAjICAgZHVyaW5nIG1lcmdpbmcgYXJlIHN1cHBvc2VkIHRvIGJlIGFib3V0IG9wcG9zaXRlIHNpZGVzIGRvaW5nIHRoaW5ncwogIyAgIGRpZmZlcmVudGx5LgogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc4ZC1zZXR1cDogcmVuYW1lL2RlbGV0ZS4uLm9yIG5vdD8nICcKK3Rlc3Rfc2V0dXBfOGQgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gOGQgJiYKIAkoCiAJCWNkIDhkICYmCkBAIC0yMjAyLDE1ICsyMjMyLDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnOGQtY2hlY2s6IHJlbmFtZS9kZWxldGUuLi5vciBub3Q/JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICc4ZDogcmVuYW1lL2RlbGV0ZS4uLm9yIG5vdD8nICcKKwl0ZXN0X3NldHVwXzhkICYmCiAJKAogCQljZCA4ZCAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgorCQlnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSAzIG91dCAmJgpAQCAtMjI0OCw3ICsyMjc5LDcgQEAKICMgICAgICAgIGFib3V0IHRoZSByYW1pZmljYXRpb25zIG9mIGRvaW5nIHRoYXQsIEkgZGlkbid0IGtub3cgaG93IHRvIHJ1bGUgb3V0CiAjICAgICAgICB0aGF0IG9wZW5pbmcgb3RoZXIgd2VpcmQgZWRnZSBhbmQgY29ybmVyIGNhc2VzIHNvIEkganVzdCBwdW50ZWQuCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzhlLXNldHVwOiBCb3RoIHNpZGVzIHJlbmFtZSwgb25lIHNpZGUgYWRkcyB0byBvcmlnaW5hbCBkaXJlY3RvcnknICcKK3Rlc3Rfc2V0dXBfOGUgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gOGUgJiYKIAkoCiAJCWNkIDhlICYmCkBAIC0yMjc3LDE1ICsyMzA4LDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnOGUtY2hlY2s6IEJvdGggc2lkZXMgcmVuYW1lLCBvbmUgc2lkZSBhZGRzIHRvIG9yaWdpbmFsIGRpcmVjdG9yeScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnOGU6IEJvdGggc2lkZXMgcmVuYW1lLCBvbmUgc2lkZSBhZGRzIHRvIG9yaWdpbmFsIGRpcmVjdG9yeScgJworCXRlc3Rfc2V0dXBfOGUgJiYKIAkoCiAJCWNkIDhlICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKIAkJdGVzdF9pMThuZ3JlcCBDT05GTElDVC4qcmVuYW1lL3JlbmFtZS4qei9jLip5L2MuKncvYyBvdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCBDT05GTElDVC4qcmVuYW1lL3JlbmFtZS4qei9iLip5L2IuKncvYiBvdXQgJiYKIApAQCAtMjMzMSw3ICsyMzYzLDcgQEAKICMgICAgICAgICBvZiB3aGljaCBvbmUgaGFkIHRoZSBtb3N0IHBhdGhzIGdvaW5nIHRvIGl0LiAgQSBuYWl2ZSBpbXBsZW1lbnRhdGlvbgogIyAgICAgICAgIG9mIHRoYXQgY291bGQgdGFrZSB0aGUgbmV3IGZpbGUgaW4gY29tbWl0IEIgYXQgei9pIHRvIHgvdy9pIG9yIHgvaS4KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnOWEtc2V0dXA6IElubmVyIHJlbmFtZWQgZGlyZWN0b3J5IHdpdGhpbiBvdXRlciByZW5hbWVkIGRpcmVjdG9yeScgJwordGVzdF9zZXR1cF85YSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA5YSAmJgogCSgKIAkJY2QgOWEgJiYKQEAgLTIzNjQsMTUgKzIzOTYsMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc5YS1jaGVjazogSW5uZXIgcmVuYW1lZCBkaXJlY3Rvcnkgd2l0aGluIG91dGVyIHJlbmFtZWQgZGlyZWN0b3J5JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICc5YTogSW5uZXIgcmVuYW1lZCBkaXJlY3Rvcnkgd2l0aGluIG91dGVyIHJlbmFtZWQgZGlyZWN0b3J5JyAnCisJdGVzdF9zZXR1cF85YSAmJgogCSgKIAkJY2QgOWEgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKKwkJZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gNyBvdXQgJiYKQEAgLTI0MDIsNyArMjQzNSw3IEBACiAjICAgQ29tbWl0IEI6IHove2IsYyxkXzN9CiAjICAgRXhwZWN0ZWQ6IHkve2IsYyxkX21lcmdlZH0KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnOWItc2V0dXA6IFRyYW5zaXRpdmUgcmVuYW1lIHdpdGggY29udGVudCBtZXJnZScgJwordGVzdF9zZXR1cF85YiAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA5YiAmJgogCSgKIAkJY2QgOWIgJiYKQEAgLTI0MzQsMTUgKzI0NjcsMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc5Yi1jaGVjazogVHJhbnNpdGl2ZSByZW5hbWUgd2l0aCBjb250ZW50IG1lcmdlJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICc5YjogVHJhbnNpdGl2ZSByZW5hbWUgd2l0aCBjb250ZW50IG1lcmdlJyAnCisJdGVzdF9zZXR1cF85YiAmJgogCSgKIAkJY2QgOWIgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKKwkJZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gMyBvdXQgJiYKQEAgLTI0ODksNyArMjUyMyw3IEBACiAjICAgICAgICAgYXdheSwgdGhlbiBpZ25vcmUgdGhhdCBwYXJ0aWN1bGFyIHJlbmFtZSBmcm9tIHRoZSBvdGhlciBzaWRlIG9mCiAjICAgICAgICAgaGlzdG9yeSBmb3IgYW55IGltcGxpY2l0IGRpcmVjdG9yeSByZW5hbWVzLgogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc5Yy1zZXR1cDogRG91Ymx5IHRyYW5zaXRpdmUgcmVuYW1lPycgJwordGVzdF9zZXR1cF85YyAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA5YyAmJgogCSgKIAkJY2QgOWMgJiYKQEAgLTI1MjQsMTUgKzI1NTgsMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc5Yy1jaGVjazogRG91Ymx5IHRyYW5zaXRpdmUgcmVuYW1lPycgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnOWM6IERvdWJseSB0cmFuc2l0aXZlIHJlbmFtZT8nICcKKwl0ZXN0X3NldHVwXzljICYmCiAJKAogCQljZCA5YyAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCisJCWdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCiAJCXRlc3RfaTE4bmdyZXAgIldBUk5JTkc6IEF2b2lkaW5nIGFwcGx5aW5nIHggLT4geiByZW5hbWUgdG8geC9mIiBvdXQgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgpAQCAtMjU3Nyw3ICsyNjEyLDcgQEAKICMgICBzaW1wbGUgcnVsZXMgdGhhdCBhcmUgY29uc2lzdGVudCB3aXRoIHdoYXQgd2UgbmVlZCBmb3IgYWxsIHRoZSBvdGhlcgogIyAgIHRlc3RjYXNlcyBhbmQgc2ltcGxpZmllcyB0aGluZ3MgZm9yIHRoZSB1c2VyLgogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc5ZC1zZXR1cDogTi13YXkgdHJhbnNpdGl2ZSByZW5hbWU/JyAnCit0ZXN0X3NldHVwXzlkICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIDlkICYmCiAJKAogCQljZCA5ZCAmJgpAQCAtMjYxMiwxNSArMjY0NywxNiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzlkLWNoZWNrOiBOLXdheSB0cmFuc2l0aXZlIHJlbmFtZT8nICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzlkOiBOLXdheSB0cmFuc2l0aXZlIHJlbmFtZT8nICcKKwl0ZXN0X3NldHVwXzlkICYmCiAJKAogCQljZCA5ZCAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCisJCWdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0ICYmCiAJCXRlc3RfaTE4bmdyZXAgIldBUk5JTkc6IEF2b2lkaW5nIGFwcGx5aW5nIHogLT4geSByZW5hbWUgdG8gei90IiBvdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCAiV0FSTklORzogQXZvaWRpbmcgYXBwbHlpbmcgeSAtPiB4IHJlbmFtZSB0byB5L2EiIG91dCAmJgogCQl0ZXN0X2kxOG5ncmVwICJXQVJOSU5HOiBBdm9pZGluZyBhcHBseWluZyB4IC0+IHcgcmVuYW1lIHRvIHgvYiIgb3V0ICYmCkBAIC0yNjUxLDcgKzI2ODcsNyBAQAogIyAgIEV4cGVjdGVkOiBjb21iaW5lZC97YSxiLGMsZCxlLGYsZyxoLGksaixrLGx9LCBDT05GTElDVChOdG8xKSB3YXJuaW5ncywKICMgICAgICAgICAgICAgZGlyMS95bywgZGlyMi95bywgZGlyMy95bywgZGlyTi95bwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc5ZS1zZXR1cDogTi10by0xIHdoYW1tbycgJwordGVzdF9zZXR1cF85ZSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA5ZSAmJgogCSgKIAkJY2QgOWUgJiYKQEAgLTI2OTQsMTUgKzI3MzAsMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzIENfTE9DQUxFX09VVFBVVCAnOWUtY2hlY2s6IE4tdG8tMSB3aGFtbW8nICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgQ19MT0NBTEVfT1VUUFVUICc5ZTogTi10by0xIHdoYW1tbycgJworCXRlc3Rfc2V0dXBfOWUgJiYKIAkoCiAJCWNkIDllICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgJiYKIAkJZ3JlcCAiQ09ORkxJQ1QgKGltcGxpY2l0IGRpciByZW5hbWUpOiBDYW5ub3QgbWFwIG1vcmUgdGhhbiBvbmUgcGF0aCB0byBjb21iaW5lZC95byIgb3V0ID5lcnJvcl9saW5lICYmCiAJCWdyZXAgLXEgZGlyMS95byBlcnJvcl9saW5lICYmCiAJCWdyZXAgLXEgZGlyMi95byBlcnJvcl9saW5lICYmCkBAIC0yNzQzLDcgKzI3ODAsNyBAQAogIyAgIENvbW1pdCBCOiBnb2FsL3thLGJ9LyRtb3JlX2ZpbGVzLCBnb2FsL2MKICMgICBFeHBlY3RlZDogcHJpb3JpdHkve2EsYn0vJG1vcmVfZmlsZXMsIHByaW9yaXR5L2MKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnOWYtc2V0dXA6IFJlbmFtZWQgZGlyZWN0b3J5IHRoYXQgb25seSBjb250YWluZWQgaW1tZWRpYXRlIHN1YmRpcnMnICcKK3Rlc3Rfc2V0dXBfOWYgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gOWYgJiYKIAkoCiAJCWNkIDlmICYmCkBAIC0yNzcyLDE1ICsyODA5LDE2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnOWYtY2hlY2s6IFJlbmFtZWQgZGlyZWN0b3J5IHRoYXQgb25seSBjb250YWluZWQgaW1tZWRpYXRlIHN1YmRpcnMnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzlmOiBSZW5hbWVkIGRpcmVjdG9yeSB0aGF0IG9ubHkgY29udGFpbmVkIGltbWVkaWF0ZSBzdWJkaXJzJyAnCisJdGVzdF9zZXR1cF85ZiAmJgogCSgKIAkJY2QgOWYgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKKwkJZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gNCBvdXQgJiYKQEAgLTI4MDcsNyArMjg0NSw3IEBACiAjICAgQ29tbWl0IEI6IGdvYWwve2EsYn0vJG1vcmVfZmlsZXMsIGdvYWwvYwogIyAgIEV4cGVjdGVkOiBwcmlvcml0eS97YWxwaGEsYnJhdm99LyRtb3JlX2ZpbGVzLCBwcmlvcml0eS9jCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzlnLXNldHVwOiBSZW5hbWVkIGRpcmVjdG9yeSB0aGF0IG9ubHkgY29udGFpbmVkIGltbWVkaWF0ZSBzdWJkaXJzLCBpbW1lZGlhdGUgc3ViZGlycyByZW5hbWVkJyAnCit0ZXN0X3NldHVwXzlnICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIDlnICYmCiAJKAogCQljZCA5ZyAmJgpAQCAtMjgzOSwxNSArMjg3NywxNSBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X2ZhaWx1cmUgJzlnLWNoZWNrOiBSZW5hbWVkIGRpcmVjdG9yeSB0aGF0IG9ubHkgY29udGFpbmVkIGltbWVkaWF0ZSBzdWJkaXJzLCBpbW1lZGlhdGUgc3ViZGlycyByZW5hbWVkJyAnCit0ZXN0X2V4cGVjdF9mYWlsdXJlICc5ZzogUmVuYW1lZCBkaXJlY3RvcnkgdGhhdCBvbmx5IGNvbnRhaW5lZCBpbW1lZGlhdGUgc3ViZGlycywgaW1tZWRpYXRlIHN1YmRpcnMgcmVuYW1lZCcgJwogCSgKIAkJY2QgOWcgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKKwkJZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gNCBvdXQgJiYKQEAgLTI4NzUsNyArMjkxMyw3IEBACiAjICAgRXhwZWN0ZWQ6IHkve2IsY30sIHgvZF8yCiAjICAgTk9URTogSWYgd2UgYXBwbGllZCB0aGUgei8gLT4geS8gcmVuYW1lIHRvIHovZCwgdGhlbiB3ZSdkIGVuZCB1cCB3aXRoCiAjICAgICAgICAgYSByZW5hbWUvcmVuYW1lKDF0bzIpIGNvbmZsaWN0ICh6L2QgLT4geS9kIHZzLiB4L2QpCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc5aC1zZXR1cDogQXZvaWQgZGlyIHJlbmFtZSBvbiBtZXJlbHkgbW9kaWZpZWQgcGF0aCcgJwordGVzdF9zZXR1cF85aCAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA5aCAmJgogCSgKIAkJY2QgOWggJiYKQEAgLTI5MDgsMTUgKzI5NDYsMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc5aC1jaGVjazogQXZvaWQgZGlyIHJlbmFtZSBvbiBtZXJlbHkgbW9kaWZpZWQgcGF0aCcgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnOWg6IEF2b2lkIGRpciByZW5hbWUgb24gbWVyZWx5IG1vZGlmaWVkIHBhdGgnICcKKwl0ZXN0X3NldHVwXzloICYmCiAJKAogCQljZCA5aCAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgorCQlnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSAzIG91dCAmJgpAQCAtMjk1NSw3ICsyOTk0LDcgQEAKICMgICBFeHBlY3RlZDogQWJvcnRlZCBNZXJnZSArCiAjICAgICAgIEVSUk9SX01TRyh1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlKQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcxMGEtc2V0dXA6IE92ZXJ3cml0ZSB1bnRyYWNrZWQgd2l0aCBub3JtYWwgcmVuYW1lL2RlbGV0ZScgJwordGVzdF9zZXR1cF8xMGEgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gMTBhICYmCiAJKAogCQljZCAxMGEgJiYKQEAgLTI5ODEsOSArMzAyMCwxMCBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzEwYS1jaGVjazogT3ZlcndyaXRlIHVudHJhY2tlZCB3aXRoIG5vcm1hbCByZW5hbWUvZGVsZXRlJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcxMGE6IE92ZXJ3cml0ZSB1bnRyYWNrZWQgd2l0aCBub3JtYWwgcmVuYW1lL2RlbGV0ZScgJworCXRlc3Rfc2V0dXBfMTBhICYmCiAJKAogCQljZCAxMGEgJiYKIApAQCAtMjk5MSw3ICszMDMxLDcgQEAKIAkJZWNobyB2ZXJ5ID56L2MgJiYKIAkJZWNobyBpbXBvcnRhbnQgPnovZCAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKIAkJdGVzdF9pMThuZ3JlcCAiVGhlIGZvbGxvd2luZyB1bnRyYWNrZWQgd29ya2luZyB0cmVlIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlIiBlcnIgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgpAQCAtMzAxOSw3ICszMDU5LDcgQEAKICMgICAgICAgICAgICAgei9jXzEgLT4gei9kXzEgcmVuYW1lIHJlY29yZGVkIGF0IHN0YWdlIDMgZm9yIHkvZCArCiAjICAgICAgIEVSUk9SX01TRyhyZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0ICd5L2QnKQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcxMGItc2V0dXA6IE92ZXJ3cml0ZSB1bnRyYWNrZWQgd2l0aCBkaXIgcmVuYW1lICsgZGVsZXRlJyAnCit0ZXN0X3NldHVwXzEwYiAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAxMGIgJiYKIAkoCiAJCWNkIDEwYiAmJgpAQCAtMzA0OCw5ICszMDg4LDEwIEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMTBiLWNoZWNrOiBPdmVyd3JpdGUgdW50cmFja2VkIHdpdGggZGlyIHJlbmFtZSArIGRlbGV0ZScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnMTBiOiBPdmVyd3JpdGUgdW50cmFja2VkIHdpdGggZGlyIHJlbmFtZSArIGRlbGV0ZScgJworCXRlc3Rfc2V0dXBfMTBiICYmCiAJKAogCQljZCAxMGIgJiYKIApAQCAtMzA1OSw3ICszMTAwLDcgQEAKIAkJZWNobyBpbXBvcnRhbnQgPnkvZCAmJgogCQllY2hvIGNvbnRlbnRzID55L2UgJiYKIAotCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0IDI+ZXJyICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0IDI+ZXJyICYmCiAJCXRlc3RfaTE4bmdyZXAgIkNPTkZMSUNUIChyZW5hbWUvZGVsZXRlKS4qVmVyc2lvbiBCXF4wIG9mIHkvZCBsZWZ0IGluIHRyZWUgYXQgeS9kfkJcXjAiIG91dCAmJgogCQl0ZXN0X2kxOG5ncmVwICJFcnJvcjogUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCB5L2U7IHdyaXRpbmcgdG8geS9lfkJcXjAgaW5zdGVhZCIgb3V0ICYmCiAKQEAgLTMwOTYsMTAgKzMxMzcsMTAgQEAKICMgICAgICAgICAgICAgeS9jfkJeMCArCiAjICAgICAgICAgICAgIEVSUk9SX01TRyhSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0IHkvYykKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMTBjLXNldHVwOiBPdmVyd3JpdGUgdW50cmFja2VkIHdpdGggZGlyIHJlbmFtZS9yZW5hbWUoMXRvMiknICcKLQl0ZXN0X2NyZWF0ZV9yZXBvIDEwYyAmJgordGVzdF9zZXR1cF8xMGMgKCkgeworCXRlc3RfY3JlYXRlX3JlcG8gMTBjXyQxICYmCiAJKAotCQljZCAxMGMgJiYKKwkJY2QgMTBjXyQxICYmCiAKIAkJbWtkaXIgeiB4ICYmCiAJCWVjaG8gYSA+ei9hICYmCkBAIC0zMTI2LDE2ICszMTY3LDE3IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMTBjLWNoZWNrOiBPdmVyd3JpdGUgdW50cmFja2VkIHdpdGggZGlyIHJlbmFtZS9yZW5hbWUoMXRvMiknICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzEwYzE6IE92ZXJ3cml0ZSB1bnRyYWNrZWQgd2l0aCBkaXIgcmVuYW1lL3JlbmFtZSgxdG8yKScgJworCXRlc3Rfc2V0dXBfMTBjIDEgJiYKIAkoCi0JCWNkIDEwYyAmJgorCQljZCAxMGNfMSAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAkJZWNobyBpbXBvcnRhbnQgPnkvYyAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKIAkJdGVzdF9pMThuZ3JlcCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpIiBvdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCB5L2M7IGFkZGluZyBhcyB5L2N+QlxeMCBpbnN0ZWFkIiBvdXQgJiYKIApAQCAtMzE2MSwxNSArMzIwMyw1MyBAQAogCSkKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnMTBjMjogT3ZlcndyaXRlIHVudHJhY2tlZCB3aXRoIGRpciByZW5hbWUvcmVuYW1lKDF0bzIpLCBvdGhlciBkaXJlY3Rpb24nICcKKwl0ZXN0X3NldHVwXzEwYyAyICYmCisJKAorCQljZCAxMGNfMiAmJgorCisJCWdpdCByZXNldCAtLWhhcmQgJiYKKwkJZ2l0IGNsZWFuIC1mZHF4ICYmCisKKwkJZ2l0IGNoZWNrb3V0IEJeMCAmJgorCQlta2RpciB5ICYmCisJCWVjaG8gaW1wb3J0YW50ID55L2MgJiYKKworCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBBXjAgPm91dCAyPmVyciAmJgorCQl0ZXN0X2kxOG5ncmVwICJDT05GTElDVCAocmVuYW1lL3JlbmFtZSkiIG91dCAmJgorCQl0ZXN0X2kxOG5ncmVwICJSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0IHkvYzsgYWRkaW5nIGFzIHkvY35IRUFEIGluc3RlYWQiIG91dCAmJgorCisJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDYgb3V0ICYmCisJCWdpdCBscy1maWxlcyAtdSA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCisJCWdpdCBscy1maWxlcyAtbyA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCisKKwkJZ2l0IHJldi1wYXJzZSA+YWN0dWFsIFwKKwkJCTowOnkvYSA6MDp5L2IgOjA6eC9kIDoxOngvYyA6Mzp3L2MgOjI6eS9jICYmCisJCWdpdCByZXYtcGFyc2UgPmV4cGVjdCBcCisJCQkgTzp6L2EgIE86ei9iICBPOngvZCAgTzp4L2MgIE86eC9jICBPOngvYyAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwkJZ2l0IGhhc2gtb2JqZWN0IHkvY35IRUFEID5hY3R1YWwgJiYKKwkJZ2l0IHJldi1wYXJzZSBPOngvYyA+ZXhwZWN0ICYmCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKworCQllY2hvIGltcG9ydGFudCA+ZXhwZWN0ICYmCisJCXRlc3RfY21wIGV4cGVjdCB5L2MKKwkpCisnCisKICMgVGVzdGNhc2UgMTBkLCBEZWxldGUgdW50cmFja2VkIHcvIGRpciByZW5hbWUvcmVuYW1lKDJ0bzEpCiAjICAgQ29tbWl0IE86IHove2EsYixjXzF9LCAgICAgICAgeC97ZCxlLGZfMn0KICMgICBDb21taXQgQTogeS97YSxifSwgICAgICAgICAgICB4L3tkLGUsZl8yLHdoYW1fMX0gKyB1bnRyYWNrZWQgeS93aGFtCiAjICAgQ29tbWl0IEI6IHove2EsYixjXzEsd2hhbV8yfSwgeS97ZCxlfQotIyAgIEV4cGVjdGVkOiBGYWlsZWQgTWVyZ2U7IHkve2EsYixkLGV9ICsgdW50cmFja2VkIHkve3doYW0sd2hhbX5CXjAsd2hhbX5IRUFEfSsKKyMgICBFeHBlY3RlZDogRmFpbGVkIE1lcmdlOyB5L3thLGIsZCxlfSArIHVudHJhY2tlZCB5L3t3aGFtLHdoYW1+bWVyZ2VkfSsKICMgICAgICAgICAgICAgQ09ORkxJQ1QocmVuYW1lL3JlbmFtZSkgei9jXzEgdnMgeC9mXzIgLT4geS93aGFtCiAjICAgICAgICAgICAgIEVSUk9SX01TRyhSZWZ1c2luZyB0byBsb3NlIHVudHJhY2tlZCBmaWxlIGF0IHkvd2hhbSkKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMTBkLXNldHVwOiBEZWxldGUgdW50cmFja2VkIHdpdGggZGlyIHJlbmFtZS9yZW5hbWUoMnRvMSknICcKK3Rlc3Rfc2V0dXBfMTBkICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIDEwZCAmJgogCSgKIAkJY2QgMTBkICYmCkBAIC0zMjAxLDE2ICszMjgxLDE3IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMTBkLWNoZWNrOiBEZWxldGUgdW50cmFja2VkIHdpdGggZGlyIHJlbmFtZS9yZW5hbWUoMnRvMSknICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzEwZDogRGVsZXRlIHVudHJhY2tlZCB3aXRoIGRpciByZW5hbWUvcmVuYW1lKDJ0bzEpJyAnCisJdGVzdF9zZXR1cF8xMGQgJiYKIAkoCiAJCWNkIDEwZCAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAkJZWNobyBpbXBvcnRhbnQgPnkvd2hhbSAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKIAkJdGVzdF9pMThuZ3JlcCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpIiBvdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCAiUmVmdXNpbmcgdG8gbG9zZSB1bnRyYWNrZWQgZmlsZSBhdCB5L3doYW0iIG91dCAmJgogCkBAIC0zMjE5LDcgKzMzMDAsNyBAQAogCQlnaXQgbHMtZmlsZXMgLXUgPm91dCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSAyIG91dCAmJgogCQlnaXQgbHMtZmlsZXMgLW8gPm91dCAmJgotCQl0ZXN0X2xpbmVfY291bnQgPSA0IG91dCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAzIG91dCAmJgogCiAJCWdpdCByZXYtcGFyc2UgPmFjdHVhbCBcCiAJCQk6MDp5L2EgOjA6eS9iIDowOnkvZCA6MDp5L2UgOjI6eS93aGFtIDozOnkvd2hhbSAmJgpAQCAtMzIzMiwxMSArMzMxMywxNiBAQAogCQllY2hvIGltcG9ydGFudCA+ZXhwZWN0ICYmCiAJCXRlc3RfY21wIGV4cGVjdCB5L3doYW0gJiYKIAotCQlnaXQgaGFzaC1vYmplY3QgPmFjdHVhbCBcCi0JCQl5L3doYW1+Ql4wIHkvd2hhbX5IRUFEICYmCi0JCWdpdCByZXYtcGFyc2UgPmV4cGVjdCBcCi0JCQlPOngvZiAgICAgIE86ei9jICYmCi0JCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwkJIyBUZXN0IHRoYXQgdGhlIHR3by13YXkgbWVyZ2UgaW4geS93aGFtfm1lcmdlZCBpcyBhcyBleHBlY3RlZAorCQlnaXQgY2F0LWZpbGUgLXAgOjI6eS93aGFtID5leHBlY3QgJiYKKwkJZ2l0IGNhdC1maWxlIC1wIDozOnkvd2hhbSA+b3RoZXIgJiYKKwkJPmVtcHR5ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZS1maWxlIFwKKwkJCS1MICJIRUFEIiBcCisJCQktTCAiIiBcCisJCQktTCAiQl4wIiBcCisJCQlleHBlY3QgZW1wdHkgb3RoZXIgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IHkvd2hhbX5tZXJnZWQKIAkpCiAnCiAKQEAgLTMyNDYsNyArMzMzMiw3IEBACiAjICAgQ29tbWl0IEI6IHove2EsYixjfQogIyAgIEV4cGVjdGVkOiB5L3thLGIsY30gKyB1bnRyYWNrZWQgei9jCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzEwZS1zZXR1cDogRG9lcyBnaXQgY29tcGxhaW4gYWJvdXQgdW50cmFja2VkIGZpbGUgdGhhdCBpcyBub3QgcmVhbGx5IGluIHRoZSB3YXk/JyAnCit0ZXN0X3NldHVwXzEwZSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAxMGUgJiYKIAkoCiAJCWNkIDEwZSAmJgpAQCAtMzI3Myw5ICszMzU5LDkgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9mYWlsdXJlICcxMGUtY2hlY2s6IERvZXMgZ2l0IGNvbXBsYWluIGFib3V0IHVudHJhY2tlZCBmaWxlIHRoYXQgaXMgbm90IHJlYWxseSBpbiB0aGUgd2F5PycgJwordGVzdF9leHBlY3RfZmFpbHVyZSAnMTBlOiBEb2VzIGdpdCBjb21wbGFpbiBhYm91dCB1bnRyYWNrZWQgZmlsZSB0aGF0IGlzIG5vdCByZWFsbHkgaW4gdGhlIHdheT8nICcKIAkoCiAJCWNkIDEwZSAmJgogCkBAIC0zMjgzLDcgKzMzNjksNyBAQAogCQlta2RpciB6ICYmCiAJCWVjaG8gcmFuZG9tID56L2MgJiYKIAotCQlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0IDI+ZXJyICYmCisJCWdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0IDI+ZXJyICYmCiAJCXRlc3RfaTE4bmdyZXAgISAiZm9sbG93aW5nIHVudHJhY2tlZCB3b3JraW5nIHRyZWUgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2UiIGVyciAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCkBAIC0zMzI3LDcgKzM0MTMsNyBAQAogIyAgICAgICAgICAgICB6L2N+SEVBRCB3aXRoIGNvbnRlbnRzIG9mIEI6ei9iX3YyLAogIyAgICAgICAgICAgICB6L2Mgd2l0aCB1bmNvbW1pdHRlZCBtb2RzIG9uIHRvcCBvZiBBOnovY192MQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcxMWEtc2V0dXA6IEF2b2lkIGxvc2luZyBkaXJ0eSBjb250ZW50cyB3aXRoIHNpbXBsZSByZW5hbWUnICcKK3Rlc3Rfc2V0dXBfMTFhICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIDExYSAmJgogCSgKIAkJY2QgMTFhICYmCkBAIC0zMzU0LDE2ICszNDQwLDE3IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMTFhLWNoZWNrOiBBdm9pZCBsb3NpbmcgZGlydHkgY29udGVudHMgd2l0aCBzaW1wbGUgcmVuYW1lJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcxMWE6IEF2b2lkIGxvc2luZyBkaXJ0eSBjb250ZW50cyB3aXRoIHNpbXBsZSByZW5hbWUnICcKKwl0ZXN0X3NldHVwXzExYSAmJgogCSgKIAkJY2QgMTFhICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCQllY2hvIHN0dWZmID4+ei9jICYmCiAKLQkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAyPmVyciAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAyPmVyciAmJgogCQl0ZXN0X2kxOG5ncmVwICJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgei9jIiBvdXQgJiYKIAogCQl0ZXN0X3NlcSAxIDEwID5leHBlY3RlZCAmJgpAQCAtMzM5Nyw3ICszNDg0LDcgQEAKICMgICAgICAgICAgICAgRVJST1JfTVNHKFJlZnVzaW5nIHRvIGxvc2UgZGlydHkgZmlsZSBhdCB6L2MpCiAKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMTFiLXNldHVwOiBBdm9pZCBsb3NpbmcgZGlydHkgZmlsZSBpbnZvbHZlZCBpbiBkaXJlY3RvcnkgcmVuYW1lJyAnCit0ZXN0X3NldHVwXzExYiAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAxMWIgJiYKIAkoCiAJCWNkIDExYiAmJgpAQCAtMzQyNiwxNiArMzUxMywxNyBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzExYi1jaGVjazogQXZvaWQgbG9zaW5nIGRpcnR5IGZpbGUgaW52b2x2ZWQgaW4gZGlyZWN0b3J5IHJlbmFtZScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnMTFiOiBBdm9pZCBsb3NpbmcgZGlydHkgZmlsZSBpbnZvbHZlZCBpbiBkaXJlY3RvcnkgcmVuYW1lJyAnCisJdGVzdF9zZXR1cF8xMWIgJiYKIAkoCiAJCWNkIDExYiAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAkJZWNobyBzdHVmZiA+PnovYyAmJgogCi0JCWdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKwkJZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKIAkJdGVzdF9pMThuZ3JlcCAiUmVmdXNpbmcgdG8gbG9zZSBkaXJ0eSBmaWxlIGF0IHovYyIgb3V0ICYmCiAKIAkJZ3JlcCAtcSBzdHVmZiB6L2MgJiYKQEAgLTM0NzEsNyArMzU1OSw3IEBACiAjICAgRXhwZWN0ZWQ6IEFib3J0X21zZygiZm9sbG93aW5nIGZpbGVzIHdvdWxkIGJlIG92ZXJ3cml0dGVuIGJ5IG1lcmdlIikgKwogIyAgICAgICAgICAgICB5L2MgbGVmdCB1bnRvdWNoZWQgKHN0aWxsIGhhcyB1bmNvbW1pdHRlZCBtb2RzKQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcxMWMtc2V0dXA6IEF2b2lkIGxvc2luZyBub3QtdXB0b2RhdGUgd2l0aCByZW5hbWUgKyBEL0YgY29uZmxpY3QnICcKK3Rlc3Rfc2V0dXBfMTFjICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIDExYyAmJgogCSgKIAkJY2QgMTFjICYmCkBAIC0zNTAxLDE2ICszNTg5LDE3IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMTFjLWNoZWNrOiBBdm9pZCBsb3Npbmcgbm90LXVwdG9kYXRlIHdpdGggcmVuYW1lICsgRC9GIGNvbmZsaWN0JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcxMWM6IEF2b2lkIGxvc2luZyBub3QtdXB0b2RhdGUgd2l0aCByZW5hbWUgKyBEL0YgY29uZmxpY3QnICcKKwl0ZXN0X3NldHVwXzExYyAmJgogCSgKIAkJY2QgMTFjICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCQllY2hvIHN0dWZmID4+eS9jICYmCiAKLQkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAyPmVyciAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAyPmVyciAmJgogCQl0ZXN0X2kxOG5ncmVwICJmb2xsb3dpbmcgZmlsZXMgd291bGQgYmUgb3ZlcndyaXR0ZW4gYnkgbWVyZ2UiIGVyciAmJgogCiAJCWdyZXAgLXEgc3R1ZmYgeS9jICYmCkBAIC0zNTM3LDcgKzM2MjYsNyBAQAogIyAgICAgICAgICAgICBXYXJuaW5nX01zZygiUmVmdXNpbmcgdG8gbG9zZSBkaXJ0eSBmaWxlIGF0IHovYykgKwogIyAgICAgICAgICAgICB5L3thLGN+SEVBRCxjL2R9LCB4L2IsIG5vdy11bnRyYWNrZWQgei9jX3YxIHdpdGggdW5jb21taXR0ZWQgbW9kcwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcxMWQtc2V0dXA6IEF2b2lkIGxvc2luZyBub3QtdXB0b2RhdGUgd2l0aCByZW5hbWUgKyBEL0YgY29uZmxpY3QnICcKK3Rlc3Rfc2V0dXBfMTFkICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIDExZCAmJgogCSgKIAkJY2QgMTFkICYmCkBAIC0zNTY4LDE2ICszNjU3LDE3IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMTFkLWNoZWNrOiBBdm9pZCBsb3Npbmcgbm90LXVwdG9kYXRlIHdpdGggcmVuYW1lICsgRC9GIGNvbmZsaWN0JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcxMWQ6IEF2b2lkIGxvc2luZyBub3QtdXB0b2RhdGUgd2l0aCByZW5hbWUgKyBEL0YgY29uZmxpY3QnICcKKwl0ZXN0X3NldHVwXzExZCAmJgogCSgKIAkJY2QgMTFkICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCQllY2hvIHN0dWZmID4+ei9jICYmCiAKLQkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAyPmVyciAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAyPmVyciAmJgogCQl0ZXN0X2kxOG5ncmVwICJSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgei9jIiBvdXQgJiYKIAogCQlncmVwIC1xIHN0dWZmIHovYyAmJgpAQCAtMzYxNSw3ICszNzA1LDcgQEAKICMgICAgICAgICAgICAgeS9jfkhFQUQgaGFzIEE6eS9jXzIgY29udGVudHMKICMgICAgICAgICAgICAgeS9jIGhhcyBkaXJ0eSBmaWxlIGZyb20gYmVmb3JlIG1lcmdlCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzExZS1zZXR1cDogQXZvaWQgZGVsZXRpbmcgbm90LXVwdG9kYXRlIHdpdGggZGlyIHJlbmFtZS9yZW5hbWUoMXRvMikvYWRkJyAnCit0ZXN0X3NldHVwXzExZSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAxMWUgJiYKIAkoCiAJCWNkIDExZSAmJgpAQCAtMzY0NywxNiArMzczNywxNyBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzExZS1jaGVjazogQXZvaWQgZGVsZXRpbmcgbm90LXVwdG9kYXRlIHdpdGggZGlyIHJlbmFtZS9yZW5hbWUoMXRvMikvYWRkJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcxMWU6IEF2b2lkIGRlbGV0aW5nIG5vdC11cHRvZGF0ZSB3aXRoIGRpciByZW5hbWUvcmVuYW1lKDF0bzIpL2FkZCcgJworCXRlc3Rfc2V0dXBfMTFlICYmCiAJKAogCQljZCAxMWUgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAJCWVjaG8gbW9kcyA+PnkvYyAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKIAkJdGVzdF9pMThuZ3JlcCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpIiBvdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCAiUmVmdXNpbmcgdG8gbG9zZSBkaXJ0eSBmaWxlIGF0IHkvYyIgb3V0ICYmCiAKQEAgLTM2NjUsNyArMzc1Niw3IEBACiAJCWdpdCBscy1maWxlcyAtdSA+b3V0ICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDQgb3V0ICYmCiAJCWdpdCBscy1maWxlcyAtbyA+b3V0ICYmCi0JCXRlc3RfbGluZV9jb3VudCA9IDQgb3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDMgb3V0ICYmCiAKIAkJZWNobyBkaWZmZXJlbnQgPmV4cGVjdGVkICYmCiAJCWVjaG8gbW9kcyA+PmV4cGVjdGVkICYmCkBAIC0zNjc3LDExICszNzY4LDE3IEBACiAJCQkgTzp6L2EgIE86ei9iICBPOngvZCAgTzp4L2MgIE86eC9jICBBOnkvYyAgTzp4L2MgJiYKIAkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgogCi0JCWdpdCBoYXNoLW9iamVjdCA+YWN0dWFsIFwKLQkJCXkvY35CXjAgeS9jfkhFQUQgJiYKLQkJZ2l0IHJldi1wYXJzZSA+ZXhwZWN0IFwKLQkJCU86eC9jICAgQTp5L2MgJiYKLQkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorCQkjIFNlZSBpZiB5L2N+bWVyZ2VkIGhhcyBleHBlY3RlZCBjb250ZW50czsgcmVxdWlyZXMgbWFudWFsbHkKKwkJIyBkb2luZyB0aGUgZXhwZWN0ZWQgZmlsZSBtZXJnZQorCQlnaXQgY2F0LWZpbGUgLXAgQTp5L2MgPmMxICYmCisJCWdpdCBjYXQtZmlsZSAtcCBCOnovYyA+YzIgJiYKKwkJPmVtcHR5ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZS1maWxlIFwKKwkJCS1MICJIRUFEIiBcCisJCQktTCAiIiBcCisJCQktTCAiQl4wIiBcCisJCQljMSBlbXB0eSBjMiAmJgorCQl0ZXN0X2NtcCBjMSB5L2N+bWVyZ2VkCiAJKQogJwogCkBAIC0zNjg5LDEyICszNzg2LDEyIEBACiAjICAgQ29tbWl0IE86IHove2EsYn0sICAgICAgICB4L3tjXzEsZF8yfQogIyAgIENvbW1pdCBBOiB5L3thLGIsd2hhbV8xfSwgeC9kXzIsIGV4Y2VwdCB5L3doYW0gaGFzIHVuY29tbWl0dGVkIG1vZHMKICMgICBDb21taXQgQjogei97YSxiLHdoYW1fMn0sIHgvY18xCi0jICAgRXhwZWN0ZWQ6IEZhaWxlZCBNZXJnZTsgeS97YSxifSArIHVudHJhY2tlZCB5L3t3aGFtfkJeMCx3aGFtfkJeSEVBRH0gKworIyAgIEV4cGVjdGVkOiBGYWlsZWQgTWVyZ2U7IHkve2EsYn0gKyB1bnRyYWNrZWQgeS97d2hhbX5tZXJnZWR9ICsKICMgICAgICAgICAgICAgeS93aGFtIHdpdGggZGlydHkgY2hhbmdlcyBmcm9tIGJlZm9yZSBtZXJnZSArCiAjICAgICAgICAgICAgIENPTkZMSUNUKHJlbmFtZS9yZW5hbWUpIHgvYyB2cyB4L2QgLT4geS93aGFtCiAjICAgICAgICAgICAgIEVSUk9SX01TRyhSZWZ1c2luZyB0byBsb3NlIGRpcnR5IGZpbGUgYXQgeS93aGFtKQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcxMWYtc2V0dXA6IEF2b2lkIGRlbGV0aW5nIG5vdC11cHRvZGF0ZSB3aXRoIGRpciByZW5hbWUvcmVuYW1lKDJ0bzEpJyAnCit0ZXN0X3NldHVwXzExZiAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAxMWYgJiYKIAkoCiAJCWNkIDExZiAmJgpAQCAtMzcyMywxNiArMzgyMCwxNyBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzExZi1jaGVjazogQXZvaWQgZGVsZXRpbmcgbm90LXVwdG9kYXRlIHdpdGggZGlyIHJlbmFtZS9yZW5hbWUoMnRvMSknICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzExZjogQXZvaWQgZGVsZXRpbmcgbm90LXVwdG9kYXRlIHdpdGggZGlyIHJlbmFtZS9yZW5hbWUoMnRvMSknICcKKwl0ZXN0X3NldHVwXzExZiAmJgogCSgKIAkJY2QgMTFmICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCQllY2hvIGltcG9ydGFudCA+Pnkvd2hhbSAmJgogCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKIAkJdGVzdF9pMThuZ3JlcCAiQ09ORkxJQ1QgKHJlbmFtZS9yZW5hbWUpIiBvdXQgJiYKIAkJdGVzdF9pMThuZ3JlcCAiUmVmdXNpbmcgdG8gbG9zZSBkaXJ0eSBmaWxlIGF0IHkvd2hhbSIgb3V0ICYmCiAKQEAgLTM3NDEsMjQgKzM4MzksMzAgQEAKIAkJZ2l0IGxzLWZpbGVzIC11ID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gMiBvdXQgJiYKIAkJZ2l0IGxzLWZpbGVzIC1vID5vdXQgJiYKLQkJdGVzdF9saW5lX2NvdW50ID0gNCBvdXQgJiYKKwkJdGVzdF9saW5lX2NvdW50ID0gMyBvdXQgJiYKIAogCQl0ZXN0X3NlcSAxIDEwID5leHBlY3RlZCAmJgogCQllY2hvIGltcG9ydGFudCA+PmV4cGVjdGVkICYmCiAJCXRlc3RfY21wIGV4cGVjdGVkIHkvd2hhbSAmJgogCiAJCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgOjE6eS93aGFtICYmCi0JCWdpdCBoYXNoLW9iamVjdCA+YWN0dWFsIFwKLQkJCXkvd2hhbX5CXjAgeS93aGFtfkhFQUQgJiYKLQkJZ2l0IHJldi1wYXJzZSA+ZXhwZWN0IFwKLQkJCU86eC9kICAgICAgTzp4L2MgJiYKLQkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgogCiAJCWdpdCByZXYtcGFyc2UgPmFjdHVhbCBcCiAJCQk6MDp5L2EgOjA6eS9iIDoyOnkvd2hhbSA6Mzp5L3doYW0gJiYKIAkJZ2l0IHJldi1wYXJzZSA+ZXhwZWN0IFwKIAkJCSBPOnovYSAgTzp6L2IgIE86eC9jICAgICBPOngvZCAmJgotCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKworCQkjIFRlc3QgdGhhdCB0aGUgdHdvLXdheSBtZXJnZSBpbiB5L3doYW1+bWVyZ2VkIGlzIGFzIGV4cGVjdGVkCisJCWdpdCBjYXQtZmlsZSAtcCA6Mjp5L3doYW0gPmV4cGVjdCAmJgorCQlnaXQgY2F0LWZpbGUgLXAgOjM6eS93aGFtID5vdGhlciAmJgorCQk+ZW1wdHkgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlLWZpbGUgXAorCQkJLUwgIkhFQUQiIFwKKwkJCS1MICIiIFwKKwkJCS1MICJCXjAiIFwKKwkJCWV4cGVjdCBlbXB0eSBvdGhlciAmJgorCQl0ZXN0X2NtcCBleHBlY3QgeS93aGFtfm1lcmdlZAogCSkKICcKIApAQCAtMzc3Niw3ICszODgwLDcgQEAKICMgICBDb21taXQgQjogbm9kZTEve2xlYWYxLGxlYWYyLGxlYWY1fSwgbm9kZTIve2xlYWYzLGxlYWY0LGxlYWY2fQogIyAgIEV4cGVjdGVkOiBub2RlMS97bGVhZjEsbGVhZjIsbGVhZjUsbm9kZTIve2xlYWYzLGxlYWY0LGxlYWY2fX0KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMTJhLXNldHVwOiBNb3Zpbmcgb25lIGRpcmVjdG9yeSBoaWVyYXJjaHkgaW50byBhbm90aGVyJyAnCit0ZXN0X3NldHVwXzEyYSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAxMmEgJiYKIAkoCiAJCWNkIDEyYSAmJgpAQCAtMzgwNiwxNSArMzkxMCwxNiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzEyYS1jaGVjazogTW92aW5nIG9uZSBkaXJlY3RvcnkgaGllcmFyY2h5IGludG8gYW5vdGhlcicgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnMTJhOiBNb3Zpbmcgb25lIGRpcmVjdG9yeSBoaWVyYXJjaHkgaW50byBhbm90aGVyJyAnCisJdGVzdF9zZXR1cF8xMmEgJiYKIAkoCiAJCWNkIDEyYSAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgorCQlnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSA2IG91dCAmJgpAQCAtMzg1NCw3ICszOTU5LDcgQEAKICMgICAgICAgICBUbyB3aGljaCwgSSBjYW4gZG8gbm8gbW9yZSB0aGFuIHNocnVnIG15IHNob3VsZGVycyBhbmQgc2F5IHRoYXQKICMgICAgICAgICBldmVuIHNpbXBsZSBydWxlcyBnaXZlIHdlaXJkIHJlc3VsdHMgd2hlbiBnaXZlbiB3ZWlyZCBpbnB1dHMuCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzEyYi1zZXR1cDogTW92aW5nIG9uZSBkaXJlY3RvcnkgaGllcmFyY2h5IGludG8gYW5vdGhlcicgJwordGVzdF9zZXR1cF8xMmIgKCkgewogCXRlc3RfY3JlYXRlX3JlcG8gMTJiICYmCiAJKAogCQljZCAxMmIgJiYKQEAgLTM4ODIsMTUgKzM5ODcsMTYgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcxMmItY2hlY2s6IE1vdmluZyBvbmUgZGlyZWN0b3J5IGhpZXJhcmNoeSBpbnRvIGFub3RoZXInICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzEyYjogTW92aW5nIHR3byBkaXJlY3RvcnkgaGllcmFyY2hpZXMgaW50byBlYWNoIG90aGVyJyAnCisJdGVzdF9zZXR1cF8xMmIgJiYKIAkoCiAJCWNkIDEyYiAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQlnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgorCQlnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSA0IG91dCAmJgpAQCAtMzkyMCw3ICs0MDI2LDcgQEAKICMgICBOT1RFOiBUaGlzIGlzICpleGFjdGx5KiBsaWtlIDEyYywgZXhjZXB0IHRoYXQgZXZlcnkgcGF0aCBpcyBtb2RpZmllZCBvbgogIyAgICAgICAgIGVhY2ggc2lkZSBvZiB0aGUgbWVyZ2UuCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzEyYy1zZXR1cDogTW92aW5nIG9uZSBkaXJlY3RvcnkgaGllcmFyY2h5IGludG8gYW5vdGhlciB3LyBjb250ZW50IG1lcmdlJyAnCit0ZXN0X3NldHVwXzEyYyAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAxMmMgJiYKIAkoCiAJCWNkIDEyYyAmJgpAQCAtMzk1MiwxNSArNDA1OCwxNiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzEyYy1jaGVjazogTW92aW5nIG9uZSBkaXJlY3RvcnkgaGllcmFyY2h5IGludG8gYW5vdGhlciB3LyBjb250ZW50IG1lcmdlJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcxMmM6IE1vdmluZyBvbmUgZGlyZWN0b3J5IGhpZXJhcmNoeSBpbnRvIGFub3RoZXIgdy8gY29udGVudCBtZXJnZScgJworCXRlc3Rfc2V0dXBfMTJjICYmCiAJKAogCQljZCAxMmMgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC11ID5vdXQgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gMTIgb3V0ICYmCkBAIC0zOTk1LDQgKzQxMDIsNTkyIEBACiAJKQogJwogCisjIFRlc3RjYXNlIDEyZCwgUmVuYW1lL21lcmdlIG9mIHN1YmRpcmVjdG9yeSBpbnRvIHRoZSByb290CisjICAgQ29tbWl0IE86IGEvYi9zdWJkaXIvZm9vCisjICAgQ29tbWl0IEE6IHN1YmRpci9mb28KKyMgICBDb21taXQgQjogYS9iL3N1YmRpci9mb28sIGEvYi9iYXIKKyMgICBFeHBlY3RlZDogc3ViZGlyL2ZvbywgYmFyCisKK3Rlc3Rfc2V0dXBfMTJkICgpIHsKKwl0ZXN0X2NyZWF0ZV9yZXBvIDEyZCAmJgorCSgKKwkJY2QgMTJkICYmCisKKwkJbWtkaXIgLXAgYS9iL3N1YmRpciAmJgorCQl0ZXN0X2NvbW1pdCBhL2Ivc3ViZGlyL2ZvbyAmJgorCisJCWdpdCBicmFuY2ggTyAmJgorCQlnaXQgYnJhbmNoIEEgJiYKKwkJZ2l0IGJyYW5jaCBCICYmCisKKwkJZ2l0IGNoZWNrb3V0IEEgJiYKKwkJbWtkaXIgc3ViZGlyICYmCisJCWdpdCBtdiBhL2Ivc3ViZGlyL2Zvby50IHN1YmRpci9mb28udCAmJgorCQl0ZXN0X3RpY2sgJiYKKwkJZ2l0IGNvbW1pdCAtbSAiQSIgJiYKKworCQlnaXQgY2hlY2tvdXQgQiAmJgorCQl0ZXN0X2NvbW1pdCBhL2IvYmFyCisJKQorfQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcxMmQ6IFJlbmFtZS9tZXJnZSBzdWJkaXIgaW50byB0aGUgcm9vdCwgdmFyaWFudCAxJyAnCisJdGVzdF9zZXR1cF8xMmQgJiYKKwkoCisJCWNkIDEyZCAmJgorCisJCWdpdCBjaGVja291dCBBXjAgJiYKKworCQlnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgJiYKKworCQlnaXQgbHMtZmlsZXMgLXMgPm91dCAmJgorCQl0ZXN0X2xpbmVfY291bnQgPSAyIG91dCAmJgorCisJCWdpdCByZXYtcGFyc2UgPmFjdHVhbCBcCisJCQlIRUFEOnN1YmRpci9mb28udCAgIEhFQUQ6YmFyLnQgJiYKKwkJZ2l0IHJldi1wYXJzZSA+ZXhwZWN0IFwKKwkJCU86YS9iL3N1YmRpci9mb28udCAgQjphL2IvYmFyLnQgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJCWdpdCBoYXNoLW9iamVjdCBiYXIudCA+YWN0dWFsICYmCisJCWdpdCByZXYtcGFyc2UgQjphL2IvYmFyLnQgPmV4cGVjdCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSBIRUFEOmEvYi9zdWJkaXIvZm9vLnQgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSBIRUFEOmEvYi9iYXIudCAmJgorCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBhLyAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBiYXIudAorCSkKKycKKworIyBUZXN0Y2FzZSAxMmUsIFJlbmFtZS9tZXJnZSBvZiBzdWJkaXJlY3RvcnkgaW50byB0aGUgcm9vdAorIyAgIENvbW1pdCBPOiBhL2IvZm9vCisjICAgQ29tbWl0IEE6IGZvbworIyAgIENvbW1pdCBCOiBhL2IvZm9vLCBhL2IvYmFyCisjICAgRXhwZWN0ZWQ6IGZvbywgYmFyCisKK3Rlc3Rfc2V0dXBfMTJlICgpIHsKKwl0ZXN0X2NyZWF0ZV9yZXBvIDEyZSAmJgorCSgKKwkJY2QgMTJlICYmCisKKwkJbWtkaXIgLXAgYS9iICYmCisJCXRlc3RfY29tbWl0IGEvYi9mb28gJiYKKworCQlnaXQgYnJhbmNoIE8gJiYKKwkJZ2l0IGJyYW5jaCBBICYmCisJCWdpdCBicmFuY2ggQiAmJgorCisJCWdpdCBjaGVja291dCBBICYmCisJCW1rZGlyIHN1YmRpciAmJgorCQlnaXQgbXYgYS9iL2Zvby50IGZvby50ICYmCisJCXRlc3RfdGljayAmJgorCQlnaXQgY29tbWl0IC1tICJBIiAmJgorCisJCWdpdCBjaGVja291dCBCICYmCisJCXRlc3RfY29tbWl0IGEvYi9iYXIKKwkpCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzEyZTogUmVuYW1lL21lcmdlIHN1YmRpciBpbnRvIHRoZSByb290LCB2YXJpYW50IDInICcKKwl0ZXN0X3NldHVwXzEyZSAmJgorCSgKKwkJY2QgMTJlICYmCisKKwkJZ2l0IGNoZWNrb3V0IEFeMCAmJgorCisJCWdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCAmJgorCisJCWdpdCBscy1maWxlcyAtcyA+b3V0ICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDIgb3V0ICYmCisKKwkJZ2l0IHJldi1wYXJzZSA+YWN0dWFsIFwKKwkJCUhFQUQ6Zm9vLnQgICBIRUFEOmJhci50ICYmCisJCWdpdCByZXYtcGFyc2UgPmV4cGVjdCBcCisJCQlPOmEvYi9mb28udCAgQjphL2IvYmFyLnQgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJCWdpdCBoYXNoLW9iamVjdCBiYXIudCA+YWN0dWFsICYmCisJCWdpdCByZXYtcGFyc2UgQjphL2IvYmFyLnQgPmV4cGVjdCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSBIRUFEOmEvYi9mb28udCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIEhFQUQ6YS9iL2Jhci50ICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIGEvICYmCisJCXRlc3RfcGF0aF9pc19maWxlIGJhci50CisJKQorJworCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMgU0VDVElPTiAxMzogQ2hlY2tpbmcgaW5mb3JtYXRpb25hbCBhbmQgY29uZmxpY3QgbWVzc2FnZXMKKyMKKyMgQSB5ZWFyIGFmdGVyIGRpcmVjdG9yeSByZW5hbWUgZGV0ZWN0aW9uIGJlY2FtZSB0aGUgZGVmYXVsdCwgaXQgd2FzCisjIGluc3RlYWQgZGVjaWRlZCB0byByZXBvcnQgY29uZmxpY3RzIG9uIHRoZSBwYXRobmFtZSBvbiB0aGUgYmFzaXMgdGhhdAorIyBzb21lIHVzZXJzIG1heSBleHBlY3QgdGhlIG5ldyBmaWxlcyBhZGRlZCBvciBtb3ZlZCBpbnRvIGEgZGlyZWN0b3J5IHRvCisjIGJlIHVucmVsYXRlZCB0byBhbGwgdGhlIG90aGVyIGZpbGVzIGluIHRoYXQgZGlyZWN0b3J5LCBhbmQgdGh1cyB0aGF0CisjIGRpcmVjdG9yeSByZW5hbWUgZGV0ZWN0aW9uIGlzIHVuZXhwZWN0ZWQuICBUZXN0IHRoYXQgdGhlIG1lc3NhZ2VzIHByaW50ZWQKKyMgbWF0Y2ggb3VyIGV4cGVjdGF0aW9uLgorIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisKKyMgVGVzdGNhc2UgMTNhLCBCYXNpYyBkaXJlY3RvcnkgcmVuYW1lIHdpdGggbmV3bHkgYWRkZWQgZmlsZXMKKyMgICBDb21taXQgTzogei97YixjfQorIyAgIENvbW1pdCBBOiB5L3tiLGN9CisjICAgQ29tbWl0IEI6IHove2IsYyxkLGUvZn0KKyMgICBFeHBlY3RlZDogeS97YixjLGQsZS9mfSwgd2l0aCBub3RpY2VzL2NvbmZsaWN0cyBmb3IgYm90aCB5L2QgYW5kIHkvZS9mCisKK3Rlc3Rfc2V0dXBfMTNhICgpIHsKKwl0ZXN0X2NyZWF0ZV9yZXBvIDEzYV8kMSAmJgorCSgKKwkJY2QgMTNhXyQxICYmCisKKwkJbWtkaXIgeiAmJgorCQllY2hvIGIgPnovYiAmJgorCQllY2hvIGMgPnovYyAmJgorCQlnaXQgYWRkIHogJiYKKwkJdGVzdF90aWNrICYmCisJCWdpdCBjb21taXQgLW0gIk8iICYmCisKKwkJZ2l0IGJyYW5jaCBPICYmCisJCWdpdCBicmFuY2ggQSAmJgorCQlnaXQgYnJhbmNoIEIgJiYKKworCQlnaXQgY2hlY2tvdXQgQSAmJgorCQlnaXQgbXYgeiB5ICYmCisJCXRlc3RfdGljayAmJgorCQlnaXQgY29tbWl0IC1tICJBIiAmJgorCisJCWdpdCBjaGVja291dCBCICYmCisJCWVjaG8gZCA+ei9kICYmCisJCW1rZGlyIHovZSAmJgorCQllY2hvIGYgPnovZS9mICYmCisJCWdpdCBhZGQgei9kIHovZS9mICYmCisJCXRlc3RfdGljayAmJgorCQlnaXQgY29tbWl0IC1tICJCIgorCSkKK30KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnMTNhKGNvbmZsaWN0KTogbWVzc2FnZXMgZm9yIG5ld2x5IGFkZGVkIGZpbGVzJyAnCisJdGVzdF9zZXR1cF8xM2EgY29uZmxpY3QgJiYKKwkoCisJCWNkIDEzYV9jb25mbGljdCAmJgorCisJCWdpdCBjaGVja291dCBBXjAgJiYKKworCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0IDI+ZXJyICYmCisKKwkJdGVzdF9pMThuZ3JlcCBDT05GTElDVC4uZmlsZS5sb2NhdGlvbi4qei9lL2YuYWRkZWQuaW4uQl4wLip5L2UvZiBvdXQgJiYKKwkJdGVzdF9pMThuZ3JlcCBDT05GTElDVC4uZmlsZS5sb2NhdGlvbi4qei9kLmFkZGVkLmluLkJeMC4qeS9kIG91dCAmJgorCisJCWdpdCBscy1maWxlcyA+cGF0aHMgJiYKKwkJISBncmVwIHovIHBhdGhzICYmCisJCWdyZXAgInkvW2RlXSIgcGF0aHMgJiYKKworCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyB6L2QgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgICAgeS9kICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIHovZS9mICYmCisJCXRlc3RfcGF0aF9pc19maWxlICAgIHkvZS9mCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcxM2EoaW5mbyk6IG1lc3NhZ2VzIGZvciBuZXdseSBhZGRlZCBmaWxlcycgJworCXRlc3Rfc2V0dXBfMTNhIGluZm8gJiYKKwkoCisJCWNkIDEzYV9pbmZvICYmCisKKwkJZ2l0IHJlc2V0IC0taGFyZCAmJgorCQlnaXQgY2hlY2tvdXQgQV4wICYmCisKKwkJZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKworCQl0ZXN0X2kxOG5ncmVwIFBhdGgudXBkYXRlZDouKnovZS9mLmFkZGVkLmluLkJeMC4qeS9lL2Ygb3V0ICYmCisJCXRlc3RfaTE4bmdyZXAgUGF0aC51cGRhdGVkOi4qei9kLmFkZGVkLmluLkJeMC4qeS9kIG91dCAmJgorCisJCWdpdCBscy1maWxlcyA+cGF0aHMgJiYKKwkJISBncmVwIHovIHBhdGhzICYmCisJCWdyZXAgInkvW2RlXSIgcGF0aHMgJiYKKworCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyB6L2QgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgICAgeS9kICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIHovZS9mICYmCisJCXRlc3RfcGF0aF9pc19maWxlICAgIHkvZS9mCisJKQorJworCisjIFRlc3RjYXNlIDEzYiwgVHJhbnNpdGl2ZSByZW5hbWUgd2l0aCBjb25mbGljdGVkIGNvbnRlbnQgbWVyZ2UgYW5kIGRlZmF1bHQKKyMgICAgICAgICAgICAgICAiY29uZmxpY3QiIHNldHRpbmcKKyMgICAoUmVsYXRlZCB0byB0ZXN0Y2FzZSAxYywgOWIpCisjICAgQ29tbWl0IE86IHove2IsY30sICAgeC9kXzEKKyMgICBDb21taXQgQTogeS97YixjfSwgICB4L2RfMgorIyAgIENvbW1pdCBCOiB6L3tiLGMsZF8zfQorIyAgIEV4cGVjdGVkOiB5L3tiLGMsZF9tZXJnZWR9LCB3aXRoIHR3byBjb25mbGljdCBtZXNzYWdlcyBmb3IgeS9kLAorIyAgICAgICAgICAgICBvbmUgYWJvdXQgY29udGVudCwgYW5kIG9uZSBhYm91dCBmaWxlIGxvY2F0aW9uCisKK3Rlc3Rfc2V0dXBfMTNiICgpIHsKKwl0ZXN0X2NyZWF0ZV9yZXBvIDEzYl8kMSAmJgorCSgKKwkJY2QgMTNiXyQxICYmCisKKwkJbWtkaXIgeCAmJgorCQlta2RpciB6ICYmCisJCXRlc3Rfc2VxIDEgMTAgPngvZCAmJgorCQllY2hvIGIgPnovYiAmJgorCQllY2hvIGMgPnovYyAmJgorCQlnaXQgYWRkIHggeiAmJgorCQl0ZXN0X3RpY2sgJiYKKwkJZ2l0IGNvbW1pdCAtbSAiTyIgJiYKKworCQlnaXQgYnJhbmNoIE8gJiYKKwkJZ2l0IGJyYW5jaCBBICYmCisJCWdpdCBicmFuY2ggQiAmJgorCisJCWdpdCBjaGVja291dCBBICYmCisJCWdpdCBtdiB6IHkgJiYKKwkJZWNobyAxMSA+PngvZCAmJgorCQlnaXQgYWRkIHgvZCAmJgorCQl0ZXN0X3RpY2sgJiYKKwkJZ2l0IGNvbW1pdCAtbSAiQSIgJiYKKworCQlnaXQgY2hlY2tvdXQgQiAmJgorCQllY2hvIGVsZXZlbiA+PngvZCAmJgorCQlnaXQgbXYgeC9kIHovZCAmJgorCQlnaXQgYWRkIHovZCAmJgorCQl0ZXN0X3RpY2sgJiYKKwkJZ2l0IGNvbW1pdCAtbSAiQiIKKwkpCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzEzYihjb25mbGljdCk6IG1lc3NhZ2VzIGZvciB0cmFuc2l0aXZlIHJlbmFtZSB3aXRoIGNvbmZsaWN0ZWQgY29udGVudCcgJworCXRlc3Rfc2V0dXBfMTNiIGNvbmZsaWN0ICYmCisJKAorCQljZCAxM2JfY29uZmxpY3QgJiYKKworCQlnaXQgY2hlY2tvdXQgQV4wICYmCisKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAyPmVyciAmJgorCisJCXRlc3RfaTE4bmdyZXAgQ09ORkxJQ1QuKmNvbnRlbnQuKk1lcmdlLmNvbmZsaWN0LmluLnkvZCBvdXQgJiYKKwkJdGVzdF9pMThuZ3JlcCBDT05GTElDVC4uZmlsZS5sb2NhdGlvbi4qeC9kLnJlbmFtZWQudG8uei9kLiptb3ZlZC50by55L2Qgb3V0ICYmCisKKwkJZ2l0IGxzLWZpbGVzID5wYXRocyAmJgorCQkhIGdyZXAgei8gcGF0aHMgJiYKKwkJZ3JlcCAieS9kIiBwYXRocyAmJgorCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIHovZCAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSAgICB5L2QKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzEzYihpbmZvKTogbWVzc2FnZXMgZm9yIHRyYW5zaXRpdmUgcmVuYW1lIHdpdGggY29uZmxpY3RlZCBjb250ZW50JyAnCisJdGVzdF9zZXR1cF8xM2IgaW5mbyAmJgorCSgKKwkJY2QgMTNiX2luZm8gJiYKKworCQlnaXQgcmVzZXQgLS1oYXJkICYmCisJCWdpdCBjaGVja291dCBBXjAgJiYKKworCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAyPmVyciAmJgorCisJCXRlc3RfaTE4bmdyZXAgQ09ORkxJQ1QuKmNvbnRlbnQuKk1lcmdlLmNvbmZsaWN0LmluLnkvZCBvdXQgJiYKKwkJdGVzdF9pMThuZ3JlcCBQYXRoLnVwZGF0ZWQ6Lip4L2QucmVuYW1lZC50by56L2QuaW4uQl4wLiptb3ZpbmcuaXQudG8ueS9kIG91dCAmJgorCisJCWdpdCBscy1maWxlcyA+cGF0aHMgJiYKKwkJISBncmVwIHovIHBhdGhzICYmCisJCWdyZXAgInkvZCIgcGF0aHMgJiYKKworCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyB6L2QgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgICAgeS9kCisJKQorJworCisjIFRlc3RjYXNlIDEzYywgUmVuYW1lL3JlbmFtZSgxdG8xKSBkdWUgdG8gZGlyZWN0b3J5IHJlbmFtZQorIyAgIENvbW1pdCBPOiB6L3tiLGN9LCAgIHgve2QsZX0KKyMgICBDb21taXQgQTogeS97YixjLGR9LCB4L2UKKyMgICBDb21taXQgQjogei97YixjLGR9LCB4L2UKKyMgICBFeHBlY3RlZDogeS97YixjLGR9LCB3aXRoIGluZm8gb3IgY29uZmxpY3QgbWVzc2FnZXMgZm9yIGQgKAorIyAgICAgICAgICAgICBBOiByZW5hbWVkIHgvZCAtPiB6L2Q7IEI6IHJlbmFtZWQgei8gLT4geS8gQU5EIHJlbmFtZWQgeC9kIHRvIHkvZAorIyAgICAgICAgICAgICBPbmUgY291bGQgYXJndWUgQSBoYWQgcGFydGlhbCBrbm93bGVkZ2Ugb2Ygd2hhdCB3YXMgZG9uZSB3aXRoCisjICAgICAgICAgICAgIGQgYW5kIEIgaGFkIGZ1bGwga25vd2xlZGdlLCBidXQgdGhhdCdzIGEgc2xpcHBlcnkgc2xvcGUgYXMKKyMgICAgICAgICAgICAgc2hvd24gaW4gdGVzdGNhc2UgMTNkLgorCit0ZXN0X3NldHVwXzEzYyAoKSB7CisJdGVzdF9jcmVhdGVfcmVwbyAxM2NfJDEgJiYKKwkoCisJCWNkIDEzY18kMSAmJgorCisJCW1rZGlyIHggJiYKKwkJbWtkaXIgeiAmJgorCQl0ZXN0X3NlcSAxIDEwID54L2QgJiYKKwkJZWNobyBlID54L2UgJiYKKwkJZWNobyBiID56L2IgJiYKKwkJZWNobyBjID56L2MgJiYKKwkJZ2l0IGFkZCB4IHogJiYKKwkJdGVzdF90aWNrICYmCisJCWdpdCBjb21taXQgLW0gIk8iICYmCisKKwkJZ2l0IGJyYW5jaCBPICYmCisJCWdpdCBicmFuY2ggQSAmJgorCQlnaXQgYnJhbmNoIEIgJiYKKworCQlnaXQgY2hlY2tvdXQgQSAmJgorCQlnaXQgbXYgeiB5ICYmCisJCWdpdCBtdiB4L2QgeS8gJiYKKwkJdGVzdF90aWNrICYmCisJCWdpdCBjb21taXQgLW0gIkEiICYmCisKKwkJZ2l0IGNoZWNrb3V0IEIgJiYKKwkJZ2l0IG12IHgvZCB6L2QgJiYKKwkJZ2l0IGFkZCB6L2QgJiYKKwkJdGVzdF90aWNrICYmCisJCWdpdCBjb21taXQgLW0gIkIiCisJKQorfQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcxM2MoY29uZmxpY3QpOiBtZXNzYWdlcyBmb3IgcmVuYW1lL3JlbmFtZSgxdG8xKSB2aWEgdHJhbnNpdGl2ZSByZW5hbWUnICcKKwl0ZXN0X3NldHVwXzEzYyBjb25mbGljdCAmJgorCSgKKwkJY2QgMTNjX2NvbmZsaWN0ICYmCisKKwkJZ2l0IGNoZWNrb3V0IEFeMCAmJgorCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKworCQl0ZXN0X2kxOG5ncmVwIENPTkZMSUNULi5maWxlLmxvY2F0aW9uLip4L2QucmVuYW1lZC50by56L2QuKm1vdmVkLnRvLnkvZCBvdXQgJiYKKworCQlnaXQgbHMtZmlsZXMgPnBhdGhzICYmCisJCSEgZ3JlcCB6LyBwYXRocyAmJgorCQlncmVwICJ5L2QiIHBhdGhzICYmCisKKwkJdGVzdF9wYXRoX2lzX21pc3Npbmcgei9kICYmCisJCXRlc3RfcGF0aF9pc19maWxlICAgIHkvZAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnMTNjKGluZm8pOiBtZXNzYWdlcyBmb3IgcmVuYW1lL3JlbmFtZSgxdG8xKSB2aWEgdHJhbnNpdGl2ZSByZW5hbWUnICcKKwl0ZXN0X3NldHVwXzEzYyBpbmZvICYmCisJKAorCQljZCAxM2NfaW5mbyAmJgorCisJCWdpdCByZXNldCAtLWhhcmQgJiYKKwkJZ2l0IGNoZWNrb3V0IEFeMCAmJgorCisJCWdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPXRydWUgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0IDI+ZXJyICYmCisKKwkJdGVzdF9pMThuZ3JlcCBQYXRoLnVwZGF0ZWQ6Lip4L2QucmVuYW1lZC50by56L2QuaW4uQl4wLiptb3ZpbmcuaXQudG8ueS9kIG91dCAmJgorCisJCWdpdCBscy1maWxlcyA+cGF0aHMgJiYKKwkJISBncmVwIHovIHBhdGhzICYmCisJCWdyZXAgInkvZCIgcGF0aHMgJiYKKworCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyB6L2QgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgICAgeS9kCisJKQorJworCisjIFRlc3RjYXNlIDEzZCwgUmVuYW1lL3JlbmFtZSgxdG8xKSBkdWUgdG8gZGlyZWN0b3J5IHJlbmFtZSBvbiBib3RoIHNpZGVzCisjICAgQ29tbWl0IE86IGEve3oseX0sIGIveCwgICAgIGMvdworIyAgIENvbW1pdCBBOiBhL3osICAgICBiL3t5LHh9LCBkL3cKKyMgICBDb21taXQgQjogYS96LCAgICAgZC94LCAgICAgYy97eSx3fQorIyAgIEV4cGVjdGVkOiBhL3osIGQve3kseCx3fSB3aXRoIG5vIGZpbGUgbG9jYXRpb24gY29uZmxpY3QgZm9yIHgKKyMgICAgICAgICAgICAgRWFzeSBjYXNlczoKKyMgICAgICAgICAgICAgICAqIHogaXMgYWx3YXlzIGluIGE7IHNvIGl0IHN0YXlzIGluIGEuCisjICAgICAgICAgICAgICAgKiB4IHN0YXJ0cyBpbiBiLCBvbmx5IG1vZGlmaWVkIG9uIG9uZSBzaWRlIHRvIG1vdmUgaW50byBkLworIyAgICAgICAgICAgICAgICogdyBzdGFydHMgaW4gYywgb25seSBtb2RpZmllZCBvbiBvbmUgc2lkZSB0byBtb3ZlIGludG8gZC8KKyMgICAgICAgICAgICAgSGFyZCBjYXNlOgorIyAgICAgICAgICAgICAgICogQSByZW5hbWVzIGEveSB0byBiL3ksIGFuZCBCIHJlbmFtZXMgYi8tPmQvID0+IGEveSAtPiBkL3kKKyMgICAgICAgICAgICAgICAqIEIgcmVuYW1lcyBhL3kgdG8gYy95LCBhbmQgQSByZW5hbWVzIGMvLT5kLyA9PiBhL3kgLT4gZC95CisjICAgICAgICAgICAgICAgTm8gY29uZmxpY3QgaW4gd2hlcmUgYS95IGVuZHMgdXAsIHNvIHB1dCBpdCBpbiBkL3kuCisKK3Rlc3Rfc2V0dXBfMTNkICgpIHsKKwl0ZXN0X2NyZWF0ZV9yZXBvIDEzZF8kMSAmJgorCSgKKwkJY2QgMTNkXyQxICYmCisKKwkJbWtkaXIgYSAmJgorCQlta2RpciBiICYmCisJCW1rZGlyIGMgJiYKKwkJZWNobyB6ID5hL3ogJiYKKwkJZWNobyB5ID5hL3kgJiYKKwkJZWNobyB4ID5iL3ggJiYKKwkJZWNobyB3ID5jL3cgJiYKKwkJZ2l0IGFkZCBhIGIgYyAmJgorCQl0ZXN0X3RpY2sgJiYKKwkJZ2l0IGNvbW1pdCAtbSAiTyIgJiYKKworCQlnaXQgYnJhbmNoIE8gJiYKKwkJZ2l0IGJyYW5jaCBBICYmCisJCWdpdCBicmFuY2ggQiAmJgorCisJCWdpdCBjaGVja291dCBBICYmCisJCWdpdCBtdiBhL3kgYi8gJiYKKwkJZ2l0IG12IGMvIGQvICYmCisJCXRlc3RfdGljayAmJgorCQlnaXQgY29tbWl0IC1tICJBIiAmJgorCisJCWdpdCBjaGVja291dCBCICYmCisJCWdpdCBtdiBhL3kgYy8gJiYKKwkJZ2l0IG12IGIvIGQvICYmCisJCXRlc3RfdGljayAmJgorCQlnaXQgY29tbWl0IC1tICJCIgorCSkKK30KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnMTNkKGNvbmZsaWN0KTogbWVzc2FnZXMgZm9yIHJlbmFtZS9yZW5hbWUoMXRvMSkgdmlhIGR1YWwgdHJhbnNpdGl2ZSByZW5hbWUnICcKKwl0ZXN0X3NldHVwXzEzZCBjb25mbGljdCAmJgorCSgKKwkJY2QgMTNkX2NvbmZsaWN0ICYmCisKKwkJZ2l0IGNoZWNrb3V0IEFeMCAmJgorCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKworCQl0ZXN0X2kxOG5ncmVwIENPTkZMSUNULi5maWxlLmxvY2F0aW9uLiphL3kucmVuYW1lZC50by5iL3kuKm1vdmVkLnRvLmQveSBvdXQgJiYKKwkJdGVzdF9pMThuZ3JlcCBDT05GTElDVC4uZmlsZS5sb2NhdGlvbi4qYS95LnJlbmFtZWQudG8uYy95Liptb3ZlZC50by5kL3kgb3V0ICYmCisKKwkJZ2l0IGxzLWZpbGVzID5wYXRocyAmJgorCQkhIGdyZXAgYi8gcGF0aHMgJiYKKwkJISBncmVwIGMvIHBhdGhzICYmCisJCWdyZXAgImQveSIgcGF0aHMgJiYKKworCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBiL3kgJiYKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgYy95ICYmCisJCXRlc3RfcGF0aF9pc19maWxlICAgIGQveQorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnMTNkKGluZm8pOiBtZXNzYWdlcyBmb3IgcmVuYW1lL3JlbmFtZSgxdG8xKSB2aWEgZHVhbCB0cmFuc2l0aXZlIHJlbmFtZScgJworCXRlc3Rfc2V0dXBfMTNkIGluZm8gJiYKKwkoCisJCWNkIDEzZF9pbmZvICYmCisKKwkJZ2l0IHJlc2V0IC0taGFyZCAmJgorCQlnaXQgY2hlY2tvdXQgQV4wICYmCisKKwkJZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKworCQl0ZXN0X2kxOG5ncmVwIFBhdGgudXBkYXRlZC4qYS95LnJlbmFtZWQudG8uYi95Liptb3ZpbmcuaXQudG8uZC95IG91dCAmJgorCQl0ZXN0X2kxOG5ncmVwIFBhdGgudXBkYXRlZC4qYS95LnJlbmFtZWQudG8uYy95Liptb3ZpbmcuaXQudG8uZC95IG91dCAmJgorCisJCWdpdCBscy1maWxlcyA+cGF0aHMgJiYKKwkJISBncmVwIGIvIHBhdGhzICYmCisJCSEgZ3JlcCBjLyBwYXRocyAmJgorCQlncmVwICJkL3kiIHBhdGhzICYmCisKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgYi95ICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIGMveSAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSAgICBkL3kKKwkpCisnCisKKyMgVGVzdGNhc2UgMTNlLCBkaXJlY3RvcnkgcmVuYW1lIGluIHZpcnR1YWwgbWVyZ2UgYmFzZQorIworIyBUaGlzIHRlc3RjYXNlIGhhcyBhIHNsaWdodGx5IGRpZmZlcmVudCBzZXR1cCB0aGFuIGFsbCB0aGUgYWJvdmUgY2FzZXMsIGluCisjIG9yZGVyIHRvIGluY2x1ZGUgYSByZWN1cnNpdmUgY2FzZToKKyMKKyMgICAgICBBICAgQworIyAgICAgIG8gLSBvCisjICAgICAvIFwgLyBcCisjICBPIG8gICBYICAgPworIyAgICAgXCAvIFwgLworIyAgICAgIG8gICBvCisjICAgICAgQiAgIEQKKyMKKyMgICBDb21taXQgTzogYS97eix5fQorIyAgIENvbW1pdCBBOiBiL3t6LHl9CisjICAgQ29tbWl0IEI6IGEve3oseSx4fQorIyAgIENvbW1pdCBDOiBiL3t6LHkseH0KKyMgICBDb21taXQgRDogYi97eix5fSwgYS94CisjICAgRXhwZWN0ZWQ6IGIve3oseSx4fSAgKHNvcnQgb2Y7IHNlZSBiZWxvdyBmb3Igd2h5IHRoaXMgbWlnaHQgbm90IGJlIGV4cGVjdGVkKQorIworIyAgIE5PVEVTOiAnWCcgcmVwcmVzZW50cyBhIHZpcnR1YWwgbWVyZ2UgYmFzZS4gIFdpdGggdGhlIGRlZmF1bHQgb2YKKyMgICAgICAgICAgZGlyZWN0b3J5IHJlbmFtZSBkZXRlY3Rpb24geWllbGRpbmcgY29uZmxpY3RzLCBtZXJnaW5nIEEgYW5kIEIKKyMgICAgICAgICAgcmVzdWx0cyBpbiBhIGNvbmZsaWN0IGNvbXBsYWluaW5nIGFib3V0IHdoZXRoZXIgJ3gnIHNob3VsZCBiZQorIyAgICAgICAgICB1bmRlciAnYS8nIG9yICdiLycuICBIb3dldmVyLCB3aGVuIGNyZWF0aW5nIHRoZSB2aXJ0dWFsIG1lcmdlCisjICAgICAgICAgIGJhc2UgJ1gnLCBzaW5jZSB2aXJ0dWFsIG1lcmdlIGJhc2VzIG5lZWQgdG8gYmUgd3JpdHRlbiBvdXQgYXMgYQorIyAgICAgICAgICB0cmVlLCB3ZSBjYW5ub3QgaGF2ZSBhIGNvbmZsaWN0LCBzbyBzb21lIHJlc29sdXRpb24gaGFzIHRvIGJlCisjICAgICAgICAgIHBpY2tlZC4KKyMKKyMgICAgICAgICAgSW4gY2hvb3NpbmcgdGhlIHJpZ2h0IHJlc29sdXRpb24sIGl0J3Mgd29ydGggbm90aW5nIGhlcmUgdGhhdAorIyAgICAgICAgICBjb21taXRzIEMgJiBEIGFyZSBtZXJnZXMgb2YgQSAmIEIgdGhhdCBjaG9vc2UgZGlmZmVyZW50CisjICAgICAgICAgIGxvY2F0aW9ucyBmb3IgJ3gnIChpLmUuIHRoZXkgcmVzb2x2ZSB0aGUgY29uZmxpY3QgZGlmZmVyZW50bHkpLAorIyAgICAgICAgICBhbmQgc28gaXQgd291bGQgYmUgbmljZSB3aGVuIG1lcmdpbmcgQyAmIEQgaWYgZ2l0IGNvdWxkIGRldGVjdAorIyAgICAgICAgICB0aGlzIGRpZmZlcmVuY2Ugb2Ygb3BpbmlvbiBhbmQgcmVwb3J0IGEgY29uZmxpY3QuICBCdXQgdGhlIG9ubHkKKyMgICAgICAgICAgd2F5IHRvIGRvIHNvIHRoYXQgSSBjYW4gdGhpbmsgb2Ygd291bGQgYmUgdG8gaGF2ZSB0aGUgdmlydHVhbAorIyAgICAgICAgICBtZXJnZSBiYXNlIHBsYWNlICd4JyBpbiBzb21lIGRpcmVjdG9yeSBvdGhlciB0aGFuIGVpdGhlciAnYS8nIG9yCisjICAgICAgICAgICdiLycsIHdoaWNoIHNlZW1zIGEgbGl0dGxlIHdlaXJkIC0tIGVzcGVjaWFsbHkgc2luY2UgaXQnZCByZXN1bHQKKyMgICAgICAgICAgaW4gYSByZW5hbWUvcmVuYW1lKDF0bzIpIGNvbmZsaWN0IHdpdGggYSBzb3VyY2UgcGF0aCB0aGF0IG5ldmVyCisjICAgICAgICAgIGV4aXN0ZWQgaW4gYW55IHZlcnNpb24uCisjCisjICAgICAgICAgIFNvLCBmb3Igbm93LCB3aGVuIGRpcmVjdG9yeSByZW5hbWUgZGV0ZWN0aW9uIGlzIHNldCB0bworIyAgICAgICAgICAnY29uZmxpY3QnIGp1c3QgYXZvaWQgZG9pbmcgZGlyZWN0b3J5IHJlbmFtZSBkZXRlY3Rpb24gYXQgYWxsIGluCisjICAgICAgICAgIHRoZSByZWN1cnNpdmUgY2FzZS4gIFRoaXMgd2lsbCBub3QgYWxsb3cgdXMgdG8gZGV0ZWN0IGEgY29uZmxpY3QKKyMgICAgICAgICAgaW4gdGhlIG91dGVyIG1lcmdlIGZvciB0aGlzIHNwZWNpYWwga2luZCBvZiBzZXR1cCwgYnV0IGl0IGF0CisjICAgICAgICAgIGxlYXN0IGF2b2lkcyBoaXR0aW5nIGEgQlVHKCkuCisjCit0ZXN0X3NldHVwXzEzZSAoKSB7CisJdGVzdF9jcmVhdGVfcmVwbyAxM2UgJiYKKwkoCisJCWNkIDEzZSAmJgorCisJCW1rZGlyIGEgJiYKKwkJZWNobyB6ID5hL3ogJiYKKwkJZWNobyB5ID5hL3kgJiYKKwkJZ2l0IGFkZCBhICYmCisJCXRlc3RfdGljayAmJgorCQlnaXQgY29tbWl0IC1tICJPIiAmJgorCisJCWdpdCBicmFuY2ggTyAmJgorCQlnaXQgYnJhbmNoIEEgJiYKKwkJZ2l0IGJyYW5jaCBCICYmCisKKwkJZ2l0IGNoZWNrb3V0IEEgJiYKKwkJZ2l0IG12IGEvIGIvICYmCisJCXRlc3RfdGljayAmJgorCQlnaXQgY29tbWl0IC1tICJBIiAmJgorCisJCWdpdCBjaGVja291dCBCICYmCisJCWVjaG8geCA+YS94ICYmCisJCWdpdCBhZGQgYSAmJgorCQl0ZXN0X3RpY2sgJiYKKwkJZ2l0IGNvbW1pdCAtbSAiQiIgJiYKKworCQlnaXQgYnJhbmNoIEMgQSAmJgorCQlnaXQgYnJhbmNoIEQgQiAmJgorCisJCWdpdCBjaGVja291dCBDICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPWNvbmZsaWN0IG1lcmdlIEIgJiYKKwkJZ2l0IGFkZCBiL3ggJiYKKwkJdGVzdF90aWNrICYmCisJCWdpdCBjb21taXQgLW0gIkMiICYmCisKKworCQlnaXQgY2hlY2tvdXQgRCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz1jb25mbGljdCBtZXJnZSBBICYmCisJCWdpdCBhZGQgYi94ICYmCisJCW1rZGlyIGEgJiYKKwkJZ2l0IG12IGIveCBhL3ggJiYKKwkJdGVzdF90aWNrICYmCisJCWdpdCBjb21taXQgLW0gIkQiCisJKQorfQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcxM2U6IGRpcmVjdG9yeSByZW5hbWUgZGV0ZWN0aW9uIGluIHJlY3Vyc2l2ZSBjYXNlJyAnCisJdGVzdF9zZXR1cF8xM2UgJiYKKwkoCisJCWNkIDEzZSAmJgorCisJCWdpdCBjaGVja291dCAtLXF1aWV0IEReMCAmJgorCisJCWdpdCAtYyBtZXJnZS5kaXJlY3RvcnlSZW5hbWVzPWNvbmZsaWN0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBDXjAgPm91dCAyPmVyciAmJgorCisJCXRlc3RfaTE4bmdyZXAgISBDT05GTElDVCBvdXQgJiYKKwkJdGVzdF9pMThuZ3JlcCAhIEJVRzogZXJyICYmCisJCXRlc3RfaTE4bmdyZXAgISBjb3JlLmR1bXBlZCBlcnIgJiYKKwkJdGVzdF9tdXN0X2JlX2VtcHR5IGVyciAmJgorCisJCWdpdCBscy1maWxlcyA+cGF0aHMgJiYKKwkJISBncmVwIGEveCBwYXRocyAmJgorCQlncmVwIGIveCBwYXRocworCSkKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q2MDQ2LW1lcmdlLXNraXAtdW5uZWVkZWQtdXBkYXRlcy5zaCBiL3QvdDYwNDYtbWVyZ2Utc2tpcC11bm5lZWRlZC11cGRhdGVzLnNoCmluZGV4IDM4ZTI0ZjcuLjFkZGM5ZTYgMTAwNzU1Ci0tLSBhL3QvdDYwNDYtbWVyZ2Utc2tpcC11bm5lZWRlZC11cGRhdGVzLnNoCisrKyBiL3QvdDYwNDYtbWVyZ2Utc2tpcC11bm5lZWRlZC11cGRhdGVzLnNoCkBAIC0zNiwxMCArMzYsMTAgQEAKICMgICBDb21taXQgQjogYl8zCiAjICAgRXhwZWN0ZWQ6IGJfMgogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcxYS1zZXR1cDogTW9kaWZ5KEEpL01vZGlmeShCKSwgY2hhbmdlIG9uIEIgc3Vic2V0IG9mIEEnICcKLQl0ZXN0X2NyZWF0ZV9yZXBvIDFhICYmCit0ZXN0X3NldHVwXzFhICgpIHsKKwl0ZXN0X2NyZWF0ZV9yZXBvIDFhXyQxICYmCiAJKAotCQljZCAxYSAmJgorCQljZCAxYV8kMSAmJgogCiAJCXRlc3Rfd3JpdGVfbGluZXMgMSAyIDMgNCA1IDYgNyA4IDkgMTAgPmIgJiYKIAkJZ2l0IGFkZCBiICYmCkBAIC02MiwyNiArNjIsMjQgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcxYS1jaGVjay1MOiBNb2RpZnkoQSkvTW9kaWZ5KEIpLCBjaGFuZ2Ugb24gQiBzdWJzZXQgb2YgQScgJwotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IC1DIDFhIHJlc2V0IC0taGFyZCIgJiYKLQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCAtQyAxYSBjbGVhbiAtZmQiICYmCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcxYS1MOiBNb2RpZnkoQSkvTW9kaWZ5KEIpLCBjaGFuZ2Ugb24gQiBzdWJzZXQgb2YgQScgJworCXRlc3Rfc2V0dXBfMWEgTCAmJgogCSgKLQkJY2QgMWEgJiYKKwkJY2QgMWFfTCAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAotCQl0ZXN0LXRvb2wgY2htdGltZSA9MzEzMzcgYiAmJgotCQl0ZXN0LXRvb2wgY2htdGltZSAtdiArMCBiID5leHBlY3RlZC1tdGltZSAmJgorCQl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCAtMzYwMCBiID5vbGQtbXRpbWUgJiYKIAogCQlHSVRfTUVSR0VfVkVSQk9TSVRZPTMgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAyPmVyciAmJgogCi0JCXRlc3RfaTE4bmdyZXAgIlNraXBwZWQgYiIgb3V0ICYmCiAJCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIgJiYKIAotCQl0ZXN0LXRvb2wgY2htdGltZSAtdiArMCBiID5hY3R1YWwtbXRpbWUgJiYKLQkJdGVzdF9jbXAgZXhwZWN0ZWQtbXRpbWUgYWN0dWFsLW10aW1lICYmCisJCSMgTWFrZSBzdXJlIGIgd2FzIE5PVCB1cGRhdGVkCisJCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0IGIgPm5ldy1tdGltZSAmJgorCQl0ZXN0X2NtcCBvbGQtbXRpbWUgbmV3LW10aW1lICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5pbmRleF9maWxlcyAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSAxIGluZGV4X2ZpbGVzICYmCkBAIC05NiwxNyArOTQsMjAgQEAKIAkpCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzFhLWNoZWNrLVI6IE1vZGlmeShBKS9Nb2RpZnkoQiksIGNoYW5nZSBvbiBCIHN1YnNldCBvZiBBJyAnCi0JdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgLUMgMWEgcmVzZXQgLS1oYXJkIiAmJgotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IC1DIDFhIGNsZWFuIC1mZCIgJiYKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzFhLVI6IE1vZGlmeShBKS9Nb2RpZnkoQiksIGNoYW5nZSBvbiBCIHN1YnNldCBvZiBBJyAnCisJdGVzdF9zZXR1cF8xYSBSICYmCiAJKAotCQljZCAxYSAmJgorCQljZCAxYV9SICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEJeMCAmJgogCisJCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0IC0zNjAwIGIgPm9sZC1tdGltZSAmJgogCQlHSVRfTUVSR0VfVkVSQk9TSVRZPTMgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBBXjAgPm91dCAyPmVyciAmJgogCi0JCXRlc3RfaTE4bmdyZXAgIkF1dG8tbWVyZ2luZyBiIiBvdXQgJiYKKwkJIyBNYWtlIHN1cmUgYiBXQVMgdXBkYXRlZAorCQl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCBiID5uZXctbXRpbWUgJiYKKwkJdGVzdCAkKGNhdCBvbGQtbXRpbWUpIC1sdCAkKGNhdCBuZXctbXRpbWUpICYmCisKIAkJdGVzdF9tdXN0X2JlX2VtcHR5IGVyciAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+aW5kZXhfZmlsZXMgJiYKQEAgLTEzMywxMCArMTM0LDEwIEBACiAjICAgQ29tbWl0IEI6IGNfMQogIyAgIEV4cGVjdGVkOiBjXzIKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMmEtc2V0dXA6IE1vZGlmeShBKS9yZW5hbWUoQiknICcKLQl0ZXN0X2NyZWF0ZV9yZXBvIDJhICYmCit0ZXN0X3NldHVwXzJhICgpIHsKKwl0ZXN0X2NyZWF0ZV9yZXBvIDJhXyQxICYmCiAJKAotCQljZCAyYSAmJgorCQljZCAyYV8kMSAmJgogCiAJCXRlc3Rfc2VxIDEgMTAgPmIgJiYKIAkJZ2l0IGFkZCBiICYmCkBAIC0xNTgsMjAgKzE1OSwxOSBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzJhLWNoZWNrLUw6IE1vZGlmeS9yZW5hbWUsIG1lcmdlIGludG8gbW9kaWZ5IHNpZGUnICcKLQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCAtQyAyYSByZXNldCAtLWhhcmQiICYmCi0JdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgLUMgMmEgY2xlYW4gLWZkIiAmJgordGVzdF9leHBlY3Rfc3VjY2VzcyAnMmEtTDogTW9kaWZ5L3JlbmFtZSwgbWVyZ2UgaW50byBtb2RpZnkgc2lkZScgJworCXRlc3Rfc2V0dXBfMmEgTCAmJgogCSgKLQkJY2QgMmEgJiYKKwkJY2QgMmFfTCAmJgogCiAJCWdpdCBjaGVja291dCBBXjAgJiYKIAorCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBjICYmCiAJCUdJVF9NRVJHRV9WRVJCT1NJVFk9MyBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0IDI+ZXJyICYmCiAKLQkJdGVzdF9pMThuZ3JlcCAhICJTa2lwcGVkIGMiIG91dCAmJgotCQl0ZXN0X211c3RfYmVfZW1wdHkgZXJyICYmCisJCXRlc3RfcGF0aF9pc19maWxlIGMgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPmluZGV4X2ZpbGVzICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDEgaW5kZXhfZmlsZXMgJiYKQEAgLTE4OSwxNyArMTg5LDIwIEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcyYS1jaGVjay1SOiBNb2RpZnkvcmVuYW1lLCBtZXJnZSBpbnRvIHJlbmFtZSBzaWRlJyAnCi0JdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgLUMgMmEgcmVzZXQgLS1oYXJkIiAmJgotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IC1DIDJhIGNsZWFuIC1mZCIgJiYKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzJhLVI6IE1vZGlmeS9yZW5hbWUsIG1lcmdlIGludG8gcmVuYW1lIHNpZGUnICcKKwl0ZXN0X3NldHVwXzJhIFIgJiYKIAkoCi0JCWNkIDJhICYmCisJCWNkIDJhX1IgJiYKIAogCQlnaXQgY2hlY2tvdXQgQl4wICYmCiAKKwkJdGVzdC10b29sIGNobXRpbWUgLS1nZXQgLTM2MDAgYyA+b2xkLW10aW1lICYmCiAJCUdJVF9NRVJHRV9WRVJCT1NJVFk9MyBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEFeMCA+b3V0IDI+ZXJyICYmCiAKLQkJdGVzdF9pMThuZ3JlcCAhICJTa2lwcGVkIGMiIG91dCAmJgorCQkjIE1ha2Ugc3VyZSBjIFdBUyB1cGRhdGVkCisJCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0IGMgPm5ldy1tdGltZSAmJgorCQl0ZXN0ICQoY2F0IG9sZC1tdGltZSkgLWx0ICQoY2F0IG5ldy1tdGltZSkgJiYKKwogCQl0ZXN0X211c3RfYmVfZW1wdHkgZXJyICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5pbmRleF9maWxlcyAmJgpAQCAtMjI0LDEwICsyMjcsMTAgQEAKICMgICBDb21taXQgQjogYl8zCiAjICAgRXhwZWN0ZWQ6IGNfMgogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcyYi1zZXR1cDogUmVuYW1lK01vZChBKS9Nb2QoQiksIEIgbW9kcyBzdWJzZXQgb2YgQScgJwotCXRlc3RfY3JlYXRlX3JlcG8gMmIgJiYKK3Rlc3Rfc2V0dXBfMmIgKCkgeworCXRlc3RfY3JlYXRlX3JlcG8gMmJfJDEgJiYKIAkoCi0JCWNkIDJiICYmCisJCWNkIDJiXyQxICYmCiAKIAkJdGVzdF93cml0ZV9saW5lcyAxIDIgMyA0IDUgNiA3IDggOSAxMCA+YiAmJgogCQlnaXQgYWRkIGIgJiYKQEAgLTI1MSwyNiArMjU0LDIzIEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMmItY2hlY2stTDogUmVuYW1lK01vZChBKS9Nb2QoQiksIEIgbW9kcyBzdWJzZXQgb2YgQScgJwotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IC1DIDJiIHJlc2V0IC0taGFyZCIgJiYKLQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCAtQyAyYiBjbGVhbiAtZmQiICYmCit0ZXN0X2V4cGVjdF9zdWNjZXNzICcyYi1MOiBSZW5hbWUrTW9kKEEpL01vZChCKSwgQiBtb2RzIHN1YnNldCBvZiBBJyAnCisJdGVzdF9zZXR1cF8yYiBMICYmCiAJKAotCQljZCAyYiAmJgorCQljZCAyYl9MICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCi0JCXRlc3QtdG9vbCBjaG10aW1lID0zMTMzNyBjICYmCi0JCXRlc3QtdG9vbCBjaG10aW1lIC12ICswIGMgPmV4cGVjdGVkLW10aW1lICYmCi0KKwkJdGVzdC10b29sIGNobXRpbWUgLS1nZXQgLTM2MDAgYyA+b2xkLW10aW1lICYmCiAJCUdJVF9NRVJHRV9WRVJCT1NJVFk9MyBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0IDI+ZXJyICYmCiAKLQkJdGVzdF9pMThuZ3JlcCAiU2tpcHBlZCBjIiBvdXQgJiYKIAkJdGVzdF9tdXN0X2JlX2VtcHR5IGVyciAmJgogCi0JCXRlc3QtdG9vbCBjaG10aW1lIC12ICswIGMgPmFjdHVhbC1tdGltZSAmJgotCQl0ZXN0X2NtcCBleHBlY3RlZC1tdGltZSBhY3R1YWwtbXRpbWUgJiYKKwkJIyBNYWtlIHN1cmUgYyBXQVMgdXBkYXRlZAorCQl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCBjID5uZXctbXRpbWUgJiYKKwkJdGVzdF9jbXAgb2xkLW10aW1lIG5ldy1tdGltZSAmJgogCiAJCWdpdCBscy1maWxlcyAtcyA+aW5kZXhfZmlsZXMgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gMSBpbmRleF9maWxlcyAmJgpAQCAtMjg4LDE3ICsyODgsMTkgQEAKIAkpCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzJiLWNoZWNrLVI6IFJlbmFtZStNb2QoQSkvTW9kKEIpLCBCIG1vZHMgc3Vic2V0IG9mIEEnICcKLQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCAtQyAyYiByZXNldCAtLWhhcmQiICYmCi0JdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgLUMgMmIgY2xlYW4gLWZkIiAmJgordGVzdF9leHBlY3Rfc3VjY2VzcyAnMmItUjogUmVuYW1lK01vZChBKS9Nb2QoQiksIEIgbW9kcyBzdWJzZXQgb2YgQScgJworCXRlc3Rfc2V0dXBfMmIgUiAmJgogCSgKLQkJY2QgMmIgJiYKKwkJY2QgMmJfUiAmJgogCiAJCWdpdCBjaGVja291dCBCXjAgJiYKIAorCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBjICYmCiAJCUdJVF9NRVJHRV9WRVJCT1NJVFk9MyBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEFeMCA+b3V0IDI+ZXJyICYmCiAKLQkJdGVzdF9pMThuZ3JlcCAiQXV0by1tZXJnaW5nIGMiIG91dCAmJgorCQkjIE1ha2Ugc3VyZSBjIG5vdyBwcmVzZW50IChhbmQgdGh1cyB3YXMgdXBkYXRlZCkKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgYyAmJgorCiAJCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPmluZGV4X2ZpbGVzICYmCkBAIC0zMzIsNyArMzM0LDcgQEAKICMgICAgICAgICBza2lwIHRoZSB1cGRhdGUsIHRoZW4gd2UncmUgaW4gdHJvdWJsZS4gIFRoaXMgdGVzdCB2ZXJpZmllcyB3ZSBkbwogIyAgICAgICAgIG5vdCBtYWtlIHRoYXQgcGFydGljdWxhciBtaXN0YWtlLgogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICcyYy1zZXR1cDogTW9kaWZ5IGIgJiBhZGQgYyBWUyByZW5hbWUgYi0+YycgJwordGVzdF9zZXR1cF8yYyAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyAyYyAmJgogCSgKIAkJY2QgMmMgJiYKQEAgLTM1OCwyMSArMzYwLDI2IEBACiAJCXRlc3RfdGljayAmJgogCQlnaXQgY29tbWl0IC1tICJCIgogCSkKLScKK30KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnMmMtY2hlY2s6IE1vZGlmeSBiICYgYWRkIGMgVlMgcmVuYW1lIGItPmMnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJzJjOiBNb2RpZnkgYiAmIGFkZCBjIFZTIHJlbmFtZSBiLT5jJyAnCisJdGVzdF9zZXR1cF8yYyAmJgogCSgKIAkJY2QgMmMgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKKwkJdGVzdC10b29sIGNobXRpbWUgLS1nZXQgLTM2MDAgYyA+b2xkLW10aW1lICYmCiAJCUdJVF9NRVJHRV9WRVJCT1NJVFk9MyAmJgogCQlleHBvcnQgR0lUX01FUkdFX1ZFUkJPU0lUWSAmJgogCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0IDI+ZXJyICYmCiAKIAkJdGVzdF9pMThuZ3JlcCAiQ09ORkxJQ1QgKHJlbmFtZS9hZGQpOiBSZW5hbWUgYi0+YyIgb3V0ICYmCi0JCXRlc3RfaTE4bmdyZXAgISAiU2tpcHBlZCBjIiBvdXQgJiYKLQkJdGVzdF9tdXN0X2JlX2VtcHR5IGVycgorCQl0ZXN0X211c3RfYmVfZW1wdHkgZXJyICYmCisKKwkJIyBNYWtlIHN1cmUgYyBXQVMgdXBkYXRlZAorCQl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCBjID5uZXctbXRpbWUgJiYKKwkJdGVzdCAkKGNhdCBvbGQtbXRpbWUpIC1sdCAkKGNhdCBuZXctbXRpbWUpCiAKIAkJIyBGSVhNRTogcmVuYW1lL2FkZCBjb25mbGljdHMgYXJlIGhvcnJpYmx5IGJyb2tlbiByaWdodCBub3c7CiAJCSMgd2hlbiBJIGdldCBiYWNrIHRvIG15IHBhdGNoIHNlcmllcyBmaXhpbmcgaXQgYW5kCkBAIC00MjgsMTAgKzQzNSwxMCBAQAogIyAgIENvbW1pdCBCOiBicV8xLCBiYXIvd2hhdGV2ZXIKICMgICBFeHBlY3RlZDogYmFyL3ticV8yLCB3aGF0ZXZlcn0KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnM2Etc2V0dXA6IGJxXzEtPmZvby9icV8yIG9uIEEsIGZvby8tPmJhci8gb24gQicgJwotCXRlc3RfY3JlYXRlX3JlcG8gM2EgJiYKK3Rlc3Rfc2V0dXBfM2EgKCkgeworCXRlc3RfY3JlYXRlX3JlcG8gM2FfJDEgJiYKIAkoCi0JCWNkIDNhICYmCisJCWNkIDNhXyQxICYmCiAKIAkJbWtkaXIgZm9vICYmCiAJCXRlc3Rfc2VxIDEgMTAgPmJxICYmCkBAIC00NTYsMjEgKzQ2MywyMiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzNhLWNoZWNrLUw6IGJxXzEtPmZvby9icV8yIG9uIEEsIGZvby8tPmJhci8gb24gQicgJwotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IC1DIDNhIHJlc2V0IC0taGFyZCIgJiYKLQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCAtQyAzYSBjbGVhbiAtZmQiICYmCit0ZXN0X2V4cGVjdF9zdWNjZXNzICczYS1MOiBicV8xLT5mb28vYnFfMiBvbiBBLCBmb28vLT5iYXIvIG9uIEInICcKKwl0ZXN0X3NldHVwXzNhIEwgJiYKIAkoCi0JCWNkIDNhICYmCisJCWNkIDNhX0wgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJR0lUX01FUkdFX1ZFUkJPU0lUWT0zIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgYmFyL2JxICYmCisJCUdJVF9NRVJHRV9WRVJCT1NJVFk9MyBnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAyPmVyciAmJgogCi0JCXRlc3RfaTE4bmdyZXAgISAiU2tpcHBlZCBiYXIvYnEiIG91dCAmJgogCQl0ZXN0X211c3RfYmVfZW1wdHkgZXJyICYmCiAKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgYmFyL2JxICYmCisKIAkJZ2l0IGxzLWZpbGVzIC1zID5pbmRleF9maWxlcyAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSAyIGluZGV4X2ZpbGVzICYmCiAKQEAgLTQ4NywxOSArNDk1LDIwIEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICczYS1jaGVjay1SOiBicV8xLT5mb28vYnFfMiBvbiBBLCBmb28vLT5iYXIvIG9uIEInICcKLQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCAtQyAzYSByZXNldCAtLWhhcmQiICYmCi0JdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgLUMgM2EgY2xlYW4gLWZkIiAmJgordGVzdF9leHBlY3Rfc3VjY2VzcyAnM2EtUjogYnFfMS0+Zm9vL2JxXzIgb24gQSwgZm9vLy0+YmFyLyBvbiBCJyAnCisJdGVzdF9zZXR1cF8zYSBSICYmCiAJKAotCQljZCAzYSAmJgorCQljZCAzYV9SICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEJeMCAmJgogCi0JCUdJVF9NRVJHRV9WRVJCT1NJVFk9MyBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEFeMCA+b3V0IDI+ZXJyICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIGJhci9icSAmJgorCQlHSVRfTUVSR0VfVkVSQk9TSVRZPTMgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQV4wID5vdXQgMj5lcnIgJiYKIAotCQl0ZXN0X2kxOG5ncmVwICEgIlNraXBwZWQgYmFyL2JxIiBvdXQgJiYKIAkJdGVzdF9tdXN0X2JlX2VtcHR5IGVyciAmJgogCisJCXRlc3RfcGF0aF9pc19maWxlIGJhci9icSAmJgorCiAJCWdpdCBscy1maWxlcyAtcyA+aW5kZXhfZmlsZXMgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gMiBpbmRleF9maWxlcyAmJgogCkBAIC01MjIsMTAgKzUzMSwxMCBAQAogIyAgIENvbW1pdCBCOiBicV8yLCBiYXIvd2hhdGV2ZXIKICMgICBFeHBlY3RlZDogYmFyL3ticV8yLCB3aGF0ZXZlcn0KIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnM2Itc2V0dXA6IGJxXzEtPmZvby9icV8yIG9uIEEsIGZvby8tPmJhci8gb24gQicgJwotCXRlc3RfY3JlYXRlX3JlcG8gM2IgJiYKK3Rlc3Rfc2V0dXBfM2IgKCkgeworCXRlc3RfY3JlYXRlX3JlcG8gM2JfJDEgJiYKIAkoCi0JCWNkIDNiICYmCisJCWNkIDNiXyQxICYmCiAKIAkJbWtkaXIgZm9vICYmCiAJCXRlc3Rfc2VxIDEgMTAgPmJxICYmCkBAIC01NTAsMjEgKzU1OSwyMiBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzNiLWNoZWNrLUw6IGJxXzEtPmZvby9icV8yIG9uIEEsIGZvby8tPmJhci8gb24gQicgJwotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IC1DIDNiIHJlc2V0IC0taGFyZCIgJiYKLQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCAtQyAzYiBjbGVhbiAtZmQiICYmCit0ZXN0X2V4cGVjdF9zdWNjZXNzICczYi1MOiBicV8xLT5mb28vYnFfMiBvbiBBLCBmb28vLT5iYXIvIG9uIEInICcKKwl0ZXN0X3NldHVwXzNiIEwgJiYKIAkoCi0JCWNkIDNiICYmCisJCWNkIDNiX0wgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAKLQkJR0lUX01FUkdFX1ZFUkJPU0lUWT0zIGdpdCBtZXJnZSAtcyByZWN1cnNpdmUgQl4wID5vdXQgMj5lcnIgJiYKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgYmFyL2JxICYmCisJCUdJVF9NRVJHRV9WRVJCT1NJVFk9MyBnaXQgLWMgbWVyZ2UuZGlyZWN0b3J5UmVuYW1lcz10cnVlIG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAyPmVyciAmJgogCi0JCXRlc3RfaTE4bmdyZXAgISAiU2tpcHBlZCBiYXIvYnEiIG91dCAmJgogCQl0ZXN0X211c3RfYmVfZW1wdHkgZXJyICYmCiAKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgYmFyL2JxICYmCisKIAkJZ2l0IGxzLWZpbGVzIC1zID5pbmRleF9maWxlcyAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSAyIGluZGV4X2ZpbGVzICYmCiAKQEAgLTU4MSwxOSArNTkxLDIwIEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICczYi1jaGVjay1SOiBicV8xLT5mb28vYnFfMiBvbiBBLCBmb28vLT5iYXIvIG9uIEInICcKLQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCAtQyAzYiByZXNldCAtLWhhcmQiICYmCi0JdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgLUMgM2IgY2xlYW4gLWZkIiAmJgordGVzdF9leHBlY3Rfc3VjY2VzcyAnM2ItUjogYnFfMS0+Zm9vL2JxXzIgb24gQSwgZm9vLy0+YmFyLyBvbiBCJyAnCisJdGVzdF9zZXR1cF8zYiBSICYmCiAJKAotCQljZCAzYiAmJgorCQljZCAzYl9SICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEJeMCAmJgogCi0JCUdJVF9NRVJHRV9WRVJCT1NJVFk9MyBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEFeMCA+b3V0IDI+ZXJyICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIGJhci9icSAmJgorCQlHSVRfTUVSR0VfVkVSQk9TSVRZPTMgZ2l0IC1jIG1lcmdlLmRpcmVjdG9yeVJlbmFtZXM9dHJ1ZSBtZXJnZSAtcyByZWN1cnNpdmUgQV4wID5vdXQgMj5lcnIgJiYKIAotCQl0ZXN0X2kxOG5ncmVwICEgIlNraXBwZWQgYmFyL2JxIiBvdXQgJiYKIAkJdGVzdF9tdXN0X2JlX2VtcHR5IGVyciAmJgogCisJCXRlc3RfcGF0aF9pc19maWxlIGJhci9icSAmJgorCiAJCWdpdCBscy1maWxlcyAtcyA+aW5kZXhfZmlsZXMgJiYKIAkJdGVzdF9saW5lX2NvdW50ID0gMiBpbmRleF9maWxlcyAmJgogCkBAIC02MjEsNyArNjMyLDcgQEAKICMgICBXb3JraW5nIGNvcHk6IGJfNAogIyAgIEV4cGVjdGVkOiBiXzIgZm9yIG1lcmdlLCBiXzQgaW4gd29ya2luZyBjb3B5CiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJzRhLXNldHVwOiBDaGFuZ2Ugb24gQSwgY2hhbmdlIG9uIEIgc3Vic2V0IG9mIEEsIGRpcnR5IG1vZHMgcHJlc2VudCcgJwordGVzdF9zZXR1cF80YSAoKSB7CiAJdGVzdF9jcmVhdGVfcmVwbyA0YSAmJgogCSgKIAkJY2QgNGEgJiYKQEAgLTY0Nyw3ICs2NTgsNyBAQAogCQl0ZXN0X3RpY2sgJiYKIAkJZ2l0IGNvbW1pdCAtbSAiQiIKIAkpCi0nCit9CiAKICMgTk9URTogRm9yIGFzIGxvbmcgYXMgd2UgY29udGludWUgdXNpbmcgdW5wYWNrX3RyZWVzKCkgd2l0aG91dCBpbmRleF9vbmx5CiAjICAgc2V0IHRvIHRydWUsIGl0IHdpbGwgZXJyb3Igb3V0IG9uIGEgY2FzZSBsaWtlIHRoaXMgY2xhaW1pbmcgdGhlIHRoZSBsb2NhbGx5CkBAIC02NTUsMjUgKzY2NiwyMyBAQAogIyAgIGNvcnJlY3QgcmVxdWlyZXMgZG9pbmcgdGhlIG1lcmdlIGluLW1lbW9yeSBmaXJzdCwgdGhlbiByZWFsaXppbmcgdGhhdCBubwogIyAgIHVwZGF0ZXMgdG8gdGhlIGZpbGUgYXJlIG5lY2Vzc2FyeSwgYW5kIHRodXMgdGhhdCB3ZSBjYW4ganVzdCBsZWF2ZSB0aGUgcGF0aAogIyAgIGFsb25lLgotdGVzdF9leHBlY3RfZmFpbHVyZSAnNGEtY2hlY2s6IENoYW5nZSBvbiBBLCBjaGFuZ2Ugb24gQiBzdWJzZXQgb2YgQSwgZGlydHkgbW9kcyBwcmVzZW50JyAnCi0JdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgLUMgNGEgcmVzZXQgLS1oYXJkIiAmJgotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IC1DIDRhIGNsZWFuIC1mZCIgJiYKK3Rlc3RfZXhwZWN0X2ZhaWx1cmUgJzRhOiBDaGFuZ2Ugb24gQSwgY2hhbmdlIG9uIEIgc3Vic2V0IG9mIEEsIGRpcnR5IG1vZHMgcHJlc2VudCcgJworCXRlc3Rfc2V0dXBfNGEgJiYKIAkoCiAJCWNkIDRhICYmCiAKIAkJZ2l0IGNoZWNrb3V0IEFeMCAmJgogCQllY2hvICJGaWxlIHJld3JpdHRlbiIgPmIgJiYKIAotCQl0ZXN0LXRvb2wgY2htdGltZSA9MzEzMzcgYiAmJgotCQl0ZXN0LXRvb2wgY2htdGltZSAtdiArMCBiID5leHBlY3RlZC1tdGltZSAmJgorCQl0ZXN0LXRvb2wgY2htdGltZSAtLWdldCAtMzYwMCBiID5vbGQtbXRpbWUgJiYKIAogCQlHSVRfTUVSR0VfVkVSQk9TSVRZPTMgZ2l0IG1lcmdlIC1zIHJlY3Vyc2l2ZSBCXjAgPm91dCAyPmVyciAmJgogCi0JCXRlc3RfaTE4bmdyZXAgIlNraXBwZWQgYiIgb3V0ICYmCiAJCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIgJiYKIAotCQl0ZXN0LXRvb2wgY2htdGltZSAtdiArMCBiID5hY3R1YWwtbXRpbWUgJiYKLQkJdGVzdF9jbXAgZXhwZWN0ZWQtbXRpbWUgYWN0dWFsLW10aW1lICYmCisJCSMgTWFrZSBzdXJlIGIgd2FzIE5PVCB1cGRhdGVkCisJCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0IGIgPm5ldy1tdGltZSAmJgorCQl0ZXN0X2NtcCBvbGQtbXRpbWUgbmV3LW10aW1lICYmCiAKIAkJZ2l0IGxzLWZpbGVzIC1zID5pbmRleF9maWxlcyAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSAxIGluZGV4X2ZpbGVzICYmCkBAIC02OTUsNyArNzA0LDcgQEAKICMgICBXb3JraW5nIGNvcHk6IGNfNAogIyAgIEV4cGVjdGVkOiBjXzIKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnNGItc2V0dXA6IFJlbmFtZStNb2QoQSkvTW9kKEIpLCBjaGFuZ2Ugb24gQiBzdWJzZXQgb2YgQSwgZGlydHkgbW9kcyBwcmVzZW50JyAnCit0ZXN0X3NldHVwXzRiICgpIHsKIAl0ZXN0X2NyZWF0ZV9yZXBvIDRiICYmCiAJKAogCQljZCA0YiAmJgpAQCAtNzIyLDI3ICs3MzEsMjUgQEAKIAkJdGVzdF90aWNrICYmCiAJCWdpdCBjb21taXQgLW0gIkIiCiAJKQotJworfQogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICc0Yi1jaGVjazogUmVuYW1lK01vZChBKS9Nb2QoQiksIGNoYW5nZSBvbiBCIHN1YnNldCBvZiBBLCBkaXJ0eSBtb2RzIHByZXNlbnQnICcKLQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCAtQyA0YiByZXNldCAtLWhhcmQiICYmCi0JdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgLUMgNGIgY2xlYW4gLWZkIiAmJgordGVzdF9leHBlY3Rfc3VjY2VzcyAnNGI6IFJlbmFtZStNb2QoQSkvTW9kKEIpLCBjaGFuZ2Ugb24gQiBzdWJzZXQgb2YgQSwgZGlydHkgbW9kcyBwcmVzZW50JyAnCisJdGVzdF9zZXR1cF80YiAmJgogCSgKIAkJY2QgNGIgJiYKIAogCQlnaXQgY2hlY2tvdXQgQV4wICYmCiAJCWVjaG8gIkZpbGUgcmV3cml0dGVuIiA+YyAmJgogCi0JCXRlc3QtdG9vbCBjaG10aW1lID0zMTMzNyBjICYmCi0JCXRlc3QtdG9vbCBjaG10aW1lIC12ICswIGMgPmV4cGVjdGVkLW10aW1lICYmCisJCXRlc3QtdG9vbCBjaG10aW1lIC0tZ2V0IC0zNjAwIGMgPm9sZC1tdGltZSAmJgogCiAJCUdJVF9NRVJHRV9WRVJCT1NJVFk9MyBnaXQgbWVyZ2UgLXMgcmVjdXJzaXZlIEJeMCA+b3V0IDI+ZXJyICYmCiAKLQkJdGVzdF9pMThuZ3JlcCAiU2tpcHBlZCBjIiBvdXQgJiYKIAkJdGVzdF9tdXN0X2JlX2VtcHR5IGVyciAmJgogCi0JCXRlc3QtdG9vbCBjaG10aW1lIC12ICswIGMgPmFjdHVhbC1tdGltZSAmJgotCQl0ZXN0X2NtcCBleHBlY3RlZC1tdGltZSBhY3R1YWwtbXRpbWUgJiYKKwkJIyBNYWtlIHN1cmUgYyB3YXMgTk9UIHVwZGF0ZWQKKwkJdGVzdC10b29sIGNobXRpbWUgLS1nZXQgYyA+bmV3LW10aW1lICYmCisJCXRlc3RfY21wIG9sZC1tdGltZSBuZXctbXRpbWUgJiYKIAogCQlnaXQgbHMtZmlsZXMgLXMgPmluZGV4X2ZpbGVzICYmCiAJCXRlc3RfbGluZV9jb3VudCA9IDEgaW5kZXhfZmlsZXMgJiYKZGlmZiAtLWdpdCBhL3QvdDYwNDctZGlmZjMtY29uZmxpY3QtbWFya2Vycy5zaCBiL3QvdDYwNDctZGlmZjMtY29uZmxpY3QtbWFya2Vycy5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5mNDY1NWJiCi0tLSAvZGV2L251bGwKKysrIGIvdC90NjA0Ny1kaWZmMy1jb25mbGljdC1tYXJrZXJzLnNoCkBAIC0wLDAgKzEsMjExIEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0ncmVjdXJzaXZlIG1lcmdlIGRpZmYzIHN0eWxlIGNvbmZsaWN0IG1hcmtlcnMnCisKKy4gLi90ZXN0LWxpYi5zaAorCisjIFNldHVwOgorIyAgICAgICAgICBMMQorIyAgICAgICAgICAgIFwKKyMgICAgICAgICAgICAgPworIyAgICAgICAgICAgIC8KKyMgICAgICAgICAgUjEKKyMKKyMgV2hlcmU6CisjICAgTDEgYW5kIFIxIGJvdGggaGF2ZSBhIGZpbGUgbmFtZWQgJ2NvbnRlbnQnIGJ1dCBoYXZlIG5vIGNvbW1vbiBoaXN0b3J5CisjCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIG5vIG1lcmdlIGJhc2UnICcKKwl0ZXN0X2NyZWF0ZV9yZXBvIG5vX21lcmdlX2Jhc2UgJiYKKwkoCisJCWNkIG5vX21lcmdlX2Jhc2UgJiYKKworCQlnaXQgY2hlY2tvdXQgLWIgTCAmJgorCQl0ZXN0X2NvbW1pdCBBIGNvbnRlbnQgQSAmJgorCisJCWdpdCBjaGVja291dCAtLW9ycGhhbiBSICYmCisJCXRlc3RfY29tbWl0IEIgY29udGVudCBCCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjayBubyBtZXJnZSBiYXNlJyAnCisJKAorCQljZCBub19tZXJnZV9iYXNlICYmCisKKwkJZ2l0IGNoZWNrb3V0IExeMCAmJgorCisJCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBtZXJnZS5jb25mbGljdHN0eWxlPWRpZmYzIG1lcmdlIC0tYWxsb3ctdW5yZWxhdGVkLWhpc3RvcmllcyAtcyByZWN1cnNpdmUgUl4wICYmCisKKwkJZ3JlcCAifHx8fHx8IGVtcHR5IHRyZWUiIGNvbnRlbnQKKwkpCisnCisKKyMgU2V0dXA6CisjICAgICAgICAgIEwxCisjICAgICAgICAgLyAgXAorIyAgIG1hc3RlciAgICA/CisjICAgICAgICAgXCAgLworIyAgICAgICAgICBSMQorIworIyBXaGVyZToKKyMgICBMMSBhbmQgUjEgaGF2ZSBtb2RpZmllZCB0aGUgc2FtZSBmaWxlICgnY29udGVudCcpIGluIGNvbmZsaWN0aW5nIHdheXMKKyMKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgdW5pcXVlIG1lcmdlIGJhc2UnICcKKwl0ZXN0X2NyZWF0ZV9yZXBvIHVuaXF1ZV9tZXJnZV9iYXNlICYmCisJKAorCQljZCB1bmlxdWVfbWVyZ2VfYmFzZSAmJgorCisJCXRlc3RfY29tbWl0IGJhc2UgY29udGVudCAiMQorMgorMworNAorNQorIiAmJgorCisJCWdpdCBicmFuY2ggTCAmJgorCQlnaXQgYnJhbmNoIFIgJiYKKworCQlnaXQgY2hlY2tvdXQgTCAmJgorCQl0ZXN0X2NvbW1pdCBMIGNvbnRlbnQgIjEKKzIKKzMKKzQKKzUKKzciICYmCisKKwkJZ2l0IGNoZWNrb3V0IFIgJiYKKwkJZ2l0IHJtIGNvbnRlbnQgJiYKKwkJdGVzdF9jb21taXQgUiByZW5hbWVkICIxCisyCiszCis0Cis1CitzaXgiCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjayB1bmlxdWUgbWVyZ2UgYmFzZScgJworCSgKKwkJY2QgdW5pcXVlX21lcmdlX2Jhc2UgJiYKKworCQlnaXQgY2hlY2tvdXQgTF4wICYmCisJCU1BU1RFUj0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBtYXN0ZXIpICYmCisKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmNvbmZsaWN0c3R5bGU9ZGlmZjMgbWVyZ2UgLXMgcmVjdXJzaXZlIFJeMCAmJgorCisJCWdyZXAgInx8fHx8fCAkTUFTVEVSOmNvbnRlbnQiIHJlbmFtZWQKKwkpCisnCisKKyMgU2V0dXA6CisjICAgICAgICAgIEwxLS0tTDItLUwzCisjICAgICAgICAgLyAgXCAvICAgICAgXAorIyAgIG1hc3RlciAgICBYMSAgICAgICA/CisjICAgICAgICAgXCAgLyBcICAgICAgLworIyAgICAgICAgICBSMS0tLVIyLS1SMworIworIyBXaGVyZToKKyMgICBjb21taXRzIEwxIGFuZCBSMSBoYXZlIG1vZGlmaWVkIHRoZSBzYW1lIGZpbGUgaW4gbm9uLWNvbmZsaWN0aW5nIHdheXMKKyMgICBYMSBpcyBhbiBhdXRvLWdlbmVyYXRlZCBtZXJnZS1iYXNlIHVzZWQgd2hlbiBtZXJnaW5nIEwxIGFuZCBSMQorIyAgIGNvbW1pdHMgTDIgYW5kIFIyIGFyZSBtZXJnZXMgb2YgUjEgYW5kIEwxIGludG8gTDEgYW5kIFIxLCByZXNwZWN0aXZlbHkKKyMgICBjb21taXRzIEwzIGFuZCBSMyBib3RoIG1vZGlmeSAnY29udGVudCcgaW4gY29uZmxpY3Rpbmcgd2F5cworIworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBtdWx0aXBsZSBtZXJnZSBiYXNlcycgJworCXRlc3RfY3JlYXRlX3JlcG8gbXVsdGlwbGVfbWVyZ2VfYmFzZXMgJiYKKwkoCisJCWNkIG11bHRpcGxlX21lcmdlX2Jhc2VzICYmCisKKwkJdGVzdF9jb21taXQgaW5pdGlhbCBjb250ZW50ICIxCisyCiszCis0Cis1IiAmJgorCisJCWdpdCBicmFuY2ggTCAmJgorCQlnaXQgYnJhbmNoIFIgJiYKKworCQkjIENyZWF0ZSBMMQorCQlnaXQgY2hlY2tvdXQgTCAmJgorCQl0ZXN0X2NvbW1pdCBMMSBjb250ZW50ICIwCisxCisyCiszCis0Cis1IiAmJgorCisJCSMgQ3JlYXRlIFIxCisJCWdpdCBjaGVja291dCBSICYmCisJCXRlc3RfY29tbWl0IFIxIGNvbnRlbnQgIjEKKzIKKzMKKzQKKzUKKzYiICYmCisKKwkJIyBDcmVhdGUgTDIKKwkJZ2l0IGNoZWNrb3V0IEwgJiYKKwkJZ2l0IG1lcmdlIFIxICYmCisKKwkJIyBDcmVhdGUgUjIKKwkJZ2l0IGNoZWNrb3V0IFIgJiYKKwkJZ2l0IG1lcmdlIEwxICYmCisKKwkJIyBDcmVhdGUgTDMKKwkJZ2l0IGNoZWNrb3V0IEwgJiYKKwkJdGVzdF9jb21taXQgTDMgY29udGVudCAiMAorMQorMgorMworNAorNQorQSIgJiYKKworCQkjIENyZWF0ZSBSMworCQlnaXQgY2hlY2tvdXQgUiAmJgorCQlnaXQgcm0gY29udGVudCAmJgorCQl0ZXN0X2NvbW1pdCBSMyByZW5hbWVkICIwCisyCiszCis0Cis1CitzaXgiCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjayBtdWx0aXBsZSBtZXJnZSBiYXNlcycgJworCSgKKwkJY2QgbXVsdGlwbGVfbWVyZ2VfYmFzZXMgJiYKKworCQlnaXQgY2hlY2tvdXQgTF4wICYmCisKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmNvbmZsaWN0c3R5bGU9ZGlmZjMgbWVyZ2UgLXMgcmVjdXJzaXZlIFJeMCAmJgorCisJCWdyZXAgInx8fHx8fCBtZXJnZWQgY29tbW9uIGFuY2VzdG9yczpjb250ZW50IiByZW5hbWVkCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLS1tZXJnZSBkZXNjcmliZXMgcGFyZW50IG9mIGNvbW1pdCBiZWluZyBwaWNrZWQnICcKKwl0ZXN0X2NyZWF0ZV9yZXBvIHJlYmFzZSAmJgorCSgKKwkJY2QgcmViYXNlICYmCisJCXRlc3RfY29tbWl0IGJhc2UgZmlsZSAmJgorCQl0ZXN0X2NvbW1pdCBtYXN0ZXIgZmlsZSAmJgorCQlnaXQgY2hlY2tvdXQgLWIgc2lkZSBIRUFEXiAmJgorCQl0ZXN0X2NvbW1pdCBzaWRlIGZpbGUgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIG1lcmdlLmNvbmZsaWN0c3R5bGU9ZGlmZjMgcmViYXNlIC0tbWVyZ2UgbWFzdGVyICYmCisJCWdyZXAgInx8fHx8fHwgcGFyZW50IG9mIiBmaWxlCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWJhc2UgLS1hcHBseSBkZXNjcmliZXMgZmFrZSBhbmNlc3RvciBiYXNlJyAnCisJKAorCQljZCByZWJhc2UgJiYKKwkJZ2l0IHJlYmFzZSAtLWFib3J0ICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBtZXJnZS5jb25mbGljdHN0eWxlPWRpZmYzIHJlYmFzZSAtLWFwcGx5IG1hc3RlciAmJgorCQlncmVwICJ8fHx8fHx8IGNvbnN0cnVjdGVkIG1lcmdlIGJhc2UiIGZpbGUKKwkpCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NjA1MC1yZXBsYWNlLnNoIGIvdC90NjA1MC1yZXBsYWNlLnNoCmluZGV4IDVkNmQzMTguLmU3ZTY0ZTAgMTAwNzU1Ci0tLSBhL3QvdDYwNTAtcmVwbGFjZS5zaAorKysgYi90L3Q2MDUwLXJlcGxhY2Uuc2gKQEAgLTQwLDcgKzQwLDggQEAKIAl0ZXN0ICIkX2ZvdW5kIiA9ICIkX3BhcmVudCIgfHwgcmV0dXJuIDEKIAlfcGFyZW50X251bWJlcj0kKCggJF9wYXJlbnRfbnVtYmVyICsgMSApKQogICAgIGRvbmUgJiYKLSAgICB0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5ICRfY29tbWl0XiRfcGFyZW50X251bWJlcgorICAgIHRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgJF9jb21taXReJF9wYXJlbnRfbnVtYmVyIDI+ZXJyICYmCisgICAgdGVzdF9pMThuZ3JlcCAiTmVlZGVkIGEgc2luZ2xlIHJldmlzaW9uIiBlcnIKIH0KIAogY29tbWl0X2hhc19wYXJlbnRzICgpCkBAIC0xMzMsOCArMTM0LDggQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnImdpdCBmc2NrIiB3b3JrcycgJwogICAgICBnaXQgZnNjayBtYXN0ZXIgPmZzY2tfbWFzdGVyLm91dCAmJgotICAgICBncmVwICJkYW5nbGluZyBjb21taXQgJFIiIGZzY2tfbWFzdGVyLm91dCAmJgotICAgICBncmVwICJkYW5nbGluZyB0YWcgJChjYXQgLmdpdC9yZWZzL3RhZ3MvbXl0YWcpIiBmc2NrX21hc3Rlci5vdXQgJiYKKyAgICAgdGVzdF9pMThuZ3JlcCAiZGFuZ2xpbmcgY29tbWl0ICRSIiBmc2NrX21hc3Rlci5vdXQgJiYKKyAgICAgdGVzdF9pMThuZ3JlcCAiZGFuZ2xpbmcgdGFnICQoY2F0IC5naXQvcmVmcy90YWdzL215dGFnKSIgZnNja19tYXN0ZXIub3V0ICYmCiAgICAgIHRlc3QgLXogIiQoZ2l0IGZzY2spIgogJwogCkBAIC0zOTMsOSArMzk0LDExIEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tZ3JhZnQgd2l0aCBhbmQgd2l0aG91dCBhbHJlYWR5IHJlcGxhY2VkIG9iamVjdCcgJwotCXRlc3QgJChnaXQgbG9nIC0tb25lbGluZSB8IHdjIC1sKSA9IDcgJiYKKwlnaXQgbG9nIC0tb25lbGluZSA+bG9nICYmCisJdGVzdF9saW5lX2NvdW50ID0gNyBsb2cgJiYKIAlnaXQgcmVwbGFjZSAtLWdyYWZ0ICRIQVNINSAmJgotCXRlc3QgJChnaXQgbG9nIC0tb25lbGluZSB8IHdjIC1sKSA9IDMgJiYKKwlnaXQgbG9nIC0tb25lbGluZSA+bG9nICYmCisJdGVzdF9saW5lX2NvdW50ID0gMyBsb2cgJiYKIAljb21taXRfaGFzX3BhcmVudHMgJEhBU0g1ICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlcGxhY2UgLS1ncmFmdCAkSEFTSDUgJEhBU0g0ICRIQVNIMyAmJgogCWdpdCByZXBsYWNlIC0tZm9yY2UgLWcgJEhBU0g1ICRIQVNINCAkSEFTSDMgJiYKQEAgLTQwMyw2ICs0MDYsMjggQEAKIAlnaXQgcmVwbGFjZSAtZCAkSEFTSDUKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1ncmFmdCB1c2luZyBhIHRhZyBhcyB0aGUgbmV3IHBhcmVudCcgJworCWdpdCB0YWcgbmV3X3BhcmVudCAkSEFTSDUgJiYKKwlnaXQgcmVwbGFjZSAtLWdyYWZ0ICRIQVNINyBuZXdfcGFyZW50ICYmCisJY29tbWl0X2hhc19wYXJlbnRzICRIQVNINyAkSEFTSDUgJiYKKwlnaXQgcmVwbGFjZSAtZCAkSEFTSDcgJiYKKwlnaXQgdGFnIC1hIC1tICJhbm5vdGF0ZWQgbmV3IHBhcmVudCB0YWciIGFubm90YXRlZF9uZXdfcGFyZW50ICRIQVNINSAmJgorCWdpdCByZXBsYWNlIC0tZ3JhZnQgJEhBU0g3IGFubm90YXRlZF9uZXdfcGFyZW50ICYmCisJY29tbWl0X2hhc19wYXJlbnRzICRIQVNINyAkSEFTSDUgJiYKKwlnaXQgcmVwbGFjZSAtZCAkSEFTSDcKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1ncmFmdCB1c2luZyBhIHRhZyBhcyB0aGUgcmVwbGFjZWQgb2JqZWN0JyAnCisJZ2l0IHRhZyByZXBsYWNlZF9vYmplY3QgJEhBU0g3ICYmCisJZ2l0IHJlcGxhY2UgLS1ncmFmdCByZXBsYWNlZF9vYmplY3QgJEhBU0g1ICYmCisJY29tbWl0X2hhc19wYXJlbnRzICRIQVNINyAkSEFTSDUgJiYKKwlnaXQgcmVwbGFjZSAtZCAkSEFTSDcgJiYKKwlnaXQgdGFnIC1hIC1tICJhbm5vdGF0ZWQgcmVwbGFjZWQgb2JqZWN0IHRhZyIgYW5ub3RhdGVkX3JlcGxhY2VkX29iamVjdCAkSEFTSDcgJiYKKwlnaXQgcmVwbGFjZSAtLWdyYWZ0IGFubm90YXRlZF9yZXBsYWNlZF9vYmplY3QgJEhBU0g1ICYmCisJY29tbWl0X2hhc19wYXJlbnRzICRIQVNINyAkSEFTSDUgJiYKKwlnaXQgcmVwbGFjZSAtZCAkSEFTSDcKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyBHUEcgJ3NldCB1cCBhIHNpZ25lZCBjb21taXQnICcKIAllY2hvICJsaW5lIDE3IiA+PmhlbGxvICYmCiAJZWNobyAibGluZSAxOCIgPj5oZWxsbyAmJgpkaWZmIC0tZ2l0IGEvdC90NjEwMi1yZXYtbGlzdC11bmV4cGVjdGVkLW9iamVjdHMuc2ggYi90L3Q2MTAyLXJldi1saXN0LXVuZXhwZWN0ZWQtb2JqZWN0cy5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi41MmNkZTA5Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NjEwMi1yZXYtbGlzdC11bmV4cGVjdGVkLW9iamVjdHMuc2gKQEAgLTAsMCArMSwxMjcgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdnaXQgcmV2LWxpc3Qgc2hvdWxkIGhhbmRsZSB1bmV4cGVjdGVkIG9iamVjdCB0eXBlcycKKworLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHdlbGwtZm9ybWVkIG9iamVjdHMnICcKKwlibG9iPSIkKHByaW50ZiAiZm9vIiB8IGdpdCBoYXNoLW9iamVjdCAtdyAtLXN0ZGluKSIgJiYKKwl0cmVlPSIkKHByaW50ZiAiMTAwNjQ0IGJsb2IgJGJsb2JcdGZvbyIgfCBnaXQgbWt0cmVlKSIgJiYKKwljb21taXQ9IiQoZ2l0IGNvbW1pdC10cmVlICR0cmVlIC1tICJmaXJzdCBjb21taXQiKSIgJiYKKwlnaXQgY2F0LWZpbGUgY29tbWl0ICRjb21taXQgPmdvb2QtY29tbWl0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHVuZXhwZWN0ZWQgbm9uLWJsb2IgZW50cnknICcKKwlwcmludGYgIjEwMDY0NCBmb29cMCQoZWNobyAkdHJlZSB8IGhleDJvY3QpIiA+YnJva2VuLXRyZWUgJiYKKwlicm9rZW5fdHJlZT0iJChnaXQgaGFzaC1vYmplY3QgLXcgLS1saXRlcmFsbHkgLXQgdHJlZSBicm9rZW4tdHJlZSkiCisnCisKK3Rlc3RfZXhwZWN0X2ZhaWx1cmUgJ3RyYXZlcnNlIHVuZXhwZWN0ZWQgbm9uLWJsb2IgZW50cnkgKGxvbmUpJyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1saXN0IC0tb2JqZWN0cyAkYnJva2VuX3RyZWUKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndHJhdmVyc2UgdW5leHBlY3RlZCBub24tYmxvYiBlbnRyeSAoc2VlbiknICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LWxpc3QgLS1vYmplY3RzICR0cmVlICRicm9rZW5fdHJlZSA+b3V0cHV0IDI+JjEgJiYKKwl0ZXN0X2kxOG5ncmVwICJpcyBub3QgYSBibG9iIiBvdXRwdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgdW5leHBlY3RlZCBub24tdHJlZSBlbnRyeScgJworCXByaW50ZiAiNDAwMDAgZm9vXDAkKGVjaG8gJGJsb2IgfCBoZXgyb2N0KSIgPmJyb2tlbi10cmVlICYmCisJYnJva2VuX3RyZWU9IiQoZ2l0IGhhc2gtb2JqZWN0IC13IC0tbGl0ZXJhbGx5IC10IHRyZWUgYnJva2VuLXRyZWUpIgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd0cmF2ZXJzZSB1bmV4cGVjdGVkIG5vbi10cmVlIGVudHJ5IChsb25lKScgJworCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtbGlzdCAtLW9iamVjdHMgJGJyb2tlbl90cmVlCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RyYXZlcnNlIHVuZXhwZWN0ZWQgbm9uLXRyZWUgZW50cnkgKHNlZW4pJyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1saXN0IC0tb2JqZWN0cyAkYmxvYiAkYnJva2VuX3RyZWUgPm91dHB1dCAyPiYxICYmCisJdGVzdF9pMThuZ3JlcCAiaXMgbm90IGEgdHJlZSIgb3V0cHV0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHVuZXhwZWN0ZWQgbm9uLWNvbW1pdCBwYXJlbnQnICcKKwlzZWQgIi9eYXV0aG9yLyB7IGg7IHMvLiovcGFyZW50ICRibG9iLzsgRzsgfSIgPGdvb2QtY29tbWl0IFwKKwkJPmJyb2tlbi1jb21taXQgJiYKKwlicm9rZW5fY29tbWl0PSIkKGdpdCBoYXNoLW9iamVjdCAtdyAtLWxpdGVyYWxseSAtdCBjb21taXQgXAorCQlicm9rZW4tY29tbWl0KSIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndHJhdmVyc2UgdW5leHBlY3RlZCBub24tY29tbWl0IHBhcmVudCAobG9uZSknICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LWxpc3QgLS1vYmplY3RzICRicm9rZW5fY29tbWl0ID5vdXRwdXQgMj4mMSAmJgorCXRlc3RfaTE4bmdyZXAgIm5vdCBhIGNvbW1pdCIgb3V0cHV0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RyYXZlcnNlIHVuZXhwZWN0ZWQgbm9uLWNvbW1pdCBwYXJlbnQgKHNlZW4pJyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1saXN0IC0tb2JqZWN0cyAkYmxvYiAkYnJva2VuX2NvbW1pdCBcCisJCT5vdXRwdXQgMj4mMSAmJgorCXRlc3RfaTE4bmdyZXAgIm5vdCBhIGNvbW1pdCIgb3V0cHV0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHVuZXhwZWN0ZWQgbm9uLXRyZWUgcm9vdCcgJworCXNlZCAtZSAicy8kdHJlZS8kYmxvYi8iIDxnb29kLWNvbW1pdCA+YnJva2VuLWNvbW1pdCAmJgorCWJyb2tlbl9jb21taXQ9IiQoZ2l0IGhhc2gtb2JqZWN0IC13IC0tbGl0ZXJhbGx5IC10IGNvbW1pdCBcCisJCWJyb2tlbi1jb21taXQpIgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd0cmF2ZXJzZSB1bmV4cGVjdGVkIG5vbi10cmVlIHJvb3QgKGxvbmUpJyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1saXN0IC0tb2JqZWN0cyAkYnJva2VuX2NvbW1pdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd0cmF2ZXJzZSB1bmV4cGVjdGVkIG5vbi10cmVlIHJvb3QgKHNlZW4pJyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1saXN0IC0tb2JqZWN0cyAkYmxvYiAkYnJva2VuX2NvbW1pdCBcCisJCT5vdXRwdXQgMj4mMSAmJgorCXRlc3RfaTE4bmdyZXAgIm5vdCBhIHRyZWUiIG91dHB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCB1bmV4cGVjdGVkIG5vbi1jb21taXQgdGFnJyAnCisJZ2l0IHRhZyAtYSAtbSAidGFnZ2VkIGNvbW1pdCIgdGFnICRjb21taXQgJiYKKwlnaXQgY2F0LWZpbGUgdGFnIHRhZyA+Z29vZC10YWcgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCB0YWcgLWQgdGFnIiAmJgorCXNlZCAtZSAicy8kY29tbWl0LyRibG9iLyIgPGdvb2QtdGFnID5icm9rZW4tdGFnICYmCisJdGFnPSQoZ2l0IGhhc2gtb2JqZWN0IC13IC0tbGl0ZXJhbGx5IC10IHRhZyBicm9rZW4tdGFnKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd0cmF2ZXJzZSB1bmV4cGVjdGVkIG5vbi1jb21taXQgdGFnIChsb25lKScgJworCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtbGlzdCAtLW9iamVjdHMgJHRhZworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd0cmF2ZXJzZSB1bmV4cGVjdGVkIG5vbi1jb21taXQgdGFnIChzZWVuKScgJworCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtbGlzdCAtLW9iamVjdHMgJGJsb2IgJHRhZyA+b3V0cHV0IDI+JjEgJiYKKwl0ZXN0X2kxOG5ncmVwICJub3QgYSBjb21taXQiIG91dHB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCB1bmV4cGVjdGVkIG5vbi10cmVlIHRhZycgJworCWdpdCB0YWcgLWEgLW0gInRhZ2dlZCB0cmVlIiB0YWcgJHRyZWUgJiYKKwlnaXQgY2F0LWZpbGUgdGFnIHRhZyA+Z29vZC10YWcgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCB0YWcgLWQgdGFnIiAmJgorCXNlZCAtZSAicy8kdHJlZS8kYmxvYi8iIDxnb29kLXRhZyA+YnJva2VuLXRhZyAmJgorCXRhZz0kKGdpdCBoYXNoLW9iamVjdCAtdyAtLWxpdGVyYWxseSAtdCB0YWcgYnJva2VuLXRhZykKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndHJhdmVyc2UgdW5leHBlY3RlZCBub24tdHJlZSB0YWcgKGxvbmUpJyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1saXN0IC0tb2JqZWN0cyAkdGFnCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RyYXZlcnNlIHVuZXhwZWN0ZWQgbm9uLXRyZWUgdGFnIChzZWVuKScgJworCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtbGlzdCAtLW9iamVjdHMgJGJsb2IgJHRhZyA+b3V0cHV0IDI+JjEgJiYKKwl0ZXN0X2kxOG5ncmVwICJub3QgYSB0cmVlIiBvdXRwdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgdW5leHBlY3RlZCBub24tYmxvYiB0YWcnICcKKwlnaXQgdGFnIC1hIC1tICJ0YWdnZWQgYmxvYiIgdGFnICRibG9iICYmCisJZ2l0IGNhdC1maWxlIHRhZyB0YWcgPmdvb2QtdGFnICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgdGFnIC1kIHRhZyIgJiYKKwlzZWQgLWUgInMvJGJsb2IvJGNvbW1pdC8iIDxnb29kLXRhZyA+YnJva2VuLXRhZyAmJgorCXRhZz0kKGdpdCBoYXNoLW9iamVjdCAtdyAtLWxpdGVyYWxseSAtdCB0YWcgYnJva2VuLXRhZykKKycKKwordGVzdF9leHBlY3RfZmFpbHVyZSAndHJhdmVyc2UgdW5leHBlY3RlZCBub24tYmxvYiB0YWcgKGxvbmUpJyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1saXN0IC0tb2JqZWN0cyAkdGFnCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RyYXZlcnNlIHVuZXhwZWN0ZWQgbm9uLWJsb2IgdGFnIChzZWVuKScgJworCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtbGlzdCAtLW9iamVjdHMgJGNvbW1pdCAkdGFnID5vdXRwdXQgMj4mMSAmJgorCXRlc3RfaTE4bmdyZXAgIm5vdCBhIGJsb2IiIG91dHB1dAorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDYxMTItcmV2LWxpc3QtZmlsdGVycy1vYmplY3RzLnNoIGIvdC90NjExMi1yZXYtbGlzdC1maWx0ZXJzLW9iamVjdHMuc2gKaW5kZXggZWIzMjUwNS4uZGUwZTVhNSAxMDA3NTUKLS0tIGEvdC90NjExMi1yZXYtbGlzdC1maWx0ZXJzLW9iamVjdHMuc2gKKysrIGIvdC90NjExMi1yZXYtbGlzdC1maWx0ZXJzLW9iamVjdHMuc2gKQEAgLTE1Nyw2ICsxNTcsMTAgQEAKICcKIAogIyBUZXN0IHNwYXJzZTpwYXRoPTxwYXRoPiBmaWx0ZXIuCisjICEhISEKKyMgTk9URTogc3BhcnNlOnBhdGggZmlsdGVyIHN1cHBvcnQgaGFzIGJlZW4gZHJvcHBlZCBmb3Igc2VjdXJpdHkgcmVhc29ucywKKyMgc28gdGhlIHRlc3RzIGhhdmUgYmVlbiBjaGFuZ2VkIHRvIG1ha2Ugc3VyZSB0aGF0IHVzaW5nIGl0IGZhaWxzLgorIyAhISEhCiAjIFVzZSBhIGxvY2FsIGZpbGUgY29udGFpbmluZyBhIHNwYXJzZS1jaGVja291dCBzcGVjaWZpY2F0aW9uIHRvIGZpbHRlcgogIyBvdXQgYmxvYnMgbm90IHJlcXVpcmVkIGZvciB0aGUgY29ycmVzcG9uZGluZyBzcGFyc2UtY2hlY2tvdXQuICBXZSBkbyBub3QKICMgcmVxdWlyZSBzcGFyc2UtY2hlY2tvdXQgdG8gYWN0dWFsbHkgYmUgZW5hYmxlZC4KQEAgLTE3NiwzNyArMTgwLDIwIEBACiAJZWNobyBzcGFyc2UxID5wYXR0ZXJuMgogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgc3BhcnNlOnBhdGg9cGF0dGVybjEgb21pdHMgdG9wLWxldmVsIGZpbGVzJyAnCi0JZ2l0IC1DIHIzIGxzLWZpbGVzIC1zIHNwYXJzZTEgc3BhcnNlMiA+bHNfZmlsZXNfcmVzdWx0ICYmCi0JYXdrIC1mIHByaW50XzIuYXdrIGxzX2ZpbGVzX3Jlc3VsdCB8Ci0Jc29ydCA+ZXhwZWN0ZWQgJiYKLQotCWdpdCAtQyByMyByZXYtbGlzdCAtLXF1aWV0IC0tb2JqZWN0cyAtLWZpbHRlci1wcmludC1vbWl0dGVkIFwKLQkJLS1maWx0ZXI9c3BhcnNlOnBhdGg9Li4vcGF0dGVybjEgSEVBRCA+cmV2cyAmJgotCWF3ayAtZiBwcmludF8xLmF3ayByZXZzIHwKLQlzZWQgInMvfi8vIiB8Ci0Jc29ydCA+b2JzZXJ2ZWQgJiYKLQotCXRlc3RfY21wIGV4cGVjdGVkIG9ic2VydmVkCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgc3BhcnNlOnBhdGg9cGF0dGVybjEgZmFpbHMnICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgLUMgcjMgcmV2LWxpc3QgLS1xdWlldCAtLW9iamVjdHMgXAorCQktLWZpbHRlci1wcmludC1vbWl0dGVkIC0tZmlsdGVyPXNwYXJzZTpwYXRoPS4uL3BhdHRlcm4xIEhFQUQKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IHNwYXJzZTpwYXRoPXBhdHRlcm4yIG9taXRzIGJvdGggc3BhcnNlMiBmaWxlcycgJwotCWdpdCAtQyByMyBscy1maWxlcyAtcyBzcGFyc2UyIGRpcjEvc3BhcnNlMiA+bHNfZmlsZXNfcmVzdWx0ICYmCi0JYXdrIC1mIHByaW50XzIuYXdrIGxzX2ZpbGVzX3Jlc3VsdCB8Ci0Jc29ydCA+ZXhwZWN0ZWQgJiYKLQotCWdpdCAtQyByMyByZXYtbGlzdCAtLXF1aWV0IC0tb2JqZWN0cyAtLWZpbHRlci1wcmludC1vbWl0dGVkIFwKLQkJLS1maWx0ZXI9c3BhcnNlOnBhdGg9Li4vcGF0dGVybjIgSEVBRCA+cmV2cyAmJgotCWF3ayAtZiBwcmludF8xLmF3ayByZXZzIHwKLQlzZWQgInMvfi8vIiB8Ci0Jc29ydCA+b2JzZXJ2ZWQgJiYKLQotCXRlc3RfY21wIGV4cGVjdGVkIG9ic2VydmVkCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgc3BhcnNlOnBhdGg9cGF0dGVybjIgZmFpbHMnICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgLUMgcjMgcmV2LWxpc3QgLS1xdWlldCAtLW9iamVjdHMgXAorCQktLWZpbHRlci1wcmludC1vbWl0dGVkIC0tZmlsdGVyPXNwYXJzZTpwYXRoPS4uL3BhdHRlcm4yIEhFQUQKICcKIAogIyBUZXN0IHNwYXJzZTpvaWQ9PG9pZC1pc2g+IGZpbHRlci4KLSMgTGlrZSBzcGFyc2U6cGF0aCwgYnV0IHdlIGdldCB0aGUgc3BhcnNlLWNoZWNrb3V0IHNwZWNpZmljYXRpb24gZnJvbQotIyBhIGJsb2IgcmF0aGVyIHRoYW4gYSBmaWxlIG9uIGRpc2suCisjIFVzZSBhIGJsb2IgY29udGFpbmluZyBhIHNwYXJzZS1jaGVja291dCBzcGVjaWZpY2F0aW9uIHRvIGZpbHRlcgorIyBvdXQgYmxvYnMgbm90IHJlcXVpcmVkIGZvciB0aGUgY29ycmVzcG9uZGluZyBzcGFyc2UtY2hlY2tvdXQuICBXZSBkbyBub3QKKyMgcmVxdWlyZSBzcGFyc2UtY2hlY2tvdXQgdG8gYWN0dWFsbHkgYmUgZW5hYmxlZC4KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgcjMgcGFydCAyJyAnCiAJZWNobyBkaXIxLyA+cjMvcGF0dGVybiAmJgpAQCAtMjgzLDcgKzI3MCw3IEBACiAKICMgTWFrZSBzdXJlIHRyZWU6MCBkb2VzIG5vdCBpdGVyYXRlIHRocm91Z2ggYW55IHRyZWVzLgogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdmaWx0ZXIgYSBHSUFOVCB0cmVlIHRocm91Z2ggdHJlZTowJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgc2tpcHBpbmcgdHJlZSBpdGVyYXRpb24gd2hlbiBub3QgY29sbGVjdGluZyBvbWl0cycgJwogCUdJVF9UUkFDRT0xIGdpdCAtQyByMyByZXYtbGlzdCBcCiAJCS0tb2JqZWN0cyAtLWZpbHRlcj10cmVlOjAgSEVBRCAyPmZpbHRlcl90cmFjZSAmJgogCWdyZXAgIlNraXBwaW5nIGNvbnRlbnRzIG9mIHRyZWUgWy5dWy5dWy5dIiBmaWx0ZXJfdHJhY2UgPmFjdHVhbCAmJgpAQCAtMjkxLDcgKzI3OCwzMTIgQEAKIAl0ZXN0X2xpbmVfY291bnQgPSAyIGFjdHVhbCAmJgogCiAJIyBNYWtlIHN1cmUgbm8gb3RoZXIgdHJlZXMgd2VyZSBjb25zaWRlcmVkIGJlc2lkZXMgdGhlIHJvb3QuCi0JISBncmVwICJTa2lwcGluZyBjb250ZW50cyBvZiB0cmVlIFteLl0iIGZpbHRlcl90cmFjZQorCSEgZ3JlcCAiU2tpcHBpbmcgY29udGVudHMgb2YgdHJlZSBbXi5dIiBmaWx0ZXJfdHJhY2UgJiYKKworCSMgVHJ5IHRoaXMgYWdhaW4gd2l0aCAiY29tYmluZToiLiBJZiBib3RoIHN1Yi1maWx0ZXJzIGFyZSBza2lwcGluZworCSMgdHJlZXMsIHRoZSBjb21wb3NpdGUgZmlsdGVyIHNob3VsZCBhbHNvIHNraXAgdHJlZXMuIFRoaXMgaXMgbm90CisJIyBpbXBvcnRhbnQgdW5sZXNzIHRoZSB1c2VyIGRvZXMgY29tYmluZTp0cmVlOlgrdHJlZTpZIG9yIGFub3RoZXIgZmlsdGVyCisJIyBiZXNpZGVzICJ0cmVlOiIgaXMgaW1wbGVtZW50ZWQgaW4gdGhlIGZ1dHVyZSB3aGljaCBjYW4gc2tpcCB0cmVlcy4KKwlHSVRfVFJBQ0U9MSBnaXQgLUMgcjMgcmV2LWxpc3QgXAorCQktLW9iamVjdHMgLS1maWx0ZXI9Y29tYmluZTp0cmVlOjErdHJlZTozIEhFQUQgMj5maWx0ZXJfdHJhY2UgJiYKKworCSMgT25seSBza2lwIHRoZSBkaXIxLyB0cmVlLCB3aGljaCBpcyBzaGFyZWQgYmV0d2VlbiB0aGUgdHdvIGNvbW1pdHMuCisJZ3JlcCAiU2tpcHBpbmcgY29udGVudHMgb2YgdHJlZSAiIGZpbHRlcl90cmFjZSA+YWN0dWFsICYmCisJdGVzdF93cml0ZV9saW5lcyAiU2tpcHBpbmcgY29udGVudHMgb2YgdHJlZSBkaXIxLy4uLiIgPmV4cGVjdGVkICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisnCisKKyMgVGVzdCB0cmVlOiMgZmlsdGVycy4KKworZXhwZWN0X2hhcyAoKSB7CisJY29tbWl0PSQxICYmCisJbmFtZT0kMiAmJgorCisJaGFzaD0kKGdpdCAtQyByMyByZXYtcGFyc2UgJGNvbW1pdDokbmFtZSkgJiYKKwlncmVwICJeJGhhc2ggJG5hbWUkIiBhY3R1YWwKK30KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IHRyZWU6MSBpbmNsdWRlcyByb290IHRyZWVzJyAnCisJZ2l0IC1DIHIzIHJldi1saXN0IC0tb2JqZWN0cyAtLWZpbHRlcj10cmVlOjEgSEVBRCA+YWN0dWFsICYmCisKKwkjIFdlIHNob3VsZCBnZXQgdHdvIHJvb3QgZGlyZWN0b3JpZXMgYW5kIHR3byBjb21taXRzLgorCWV4cGVjdF9oYXMgSEVBRCAiIiAmJgorCWV4cGVjdF9oYXMgSEVBRH4xICIiICAmJgorCXRlc3RfbGluZV9jb3VudCA9IDQgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ZlcmlmeSB0cmVlOjIgaW5jbHVkZXMgcm9vdCB0cmVlcyBhbmQgaW1tZWRpYXRlIGNoaWxkcmVuJyAnCisJZ2l0IC1DIHIzIHJldi1saXN0IC0tb2JqZWN0cyAtLWZpbHRlcj10cmVlOjIgSEVBRCA+YWN0dWFsICYmCisKKwlleHBlY3RfaGFzIEhFQUQgIiIgJiYKKwlleHBlY3RfaGFzIEhFQUR+MSAiIiAmJgorCWV4cGVjdF9oYXMgSEVBRCBkaXIxICYmCisJZXhwZWN0X2hhcyBIRUFEIHBhdHRlcm4gJiYKKwlleHBlY3RfaGFzIEhFQUQgc3BhcnNlMSAmJgorCWV4cGVjdF9oYXMgSEVBRCBzcGFyc2UyICYmCisKKwkjIFRoZXJlIGFyZSBhbHNvIDIgY29tbWl0IG9iamVjdHMKKwl0ZXN0X2xpbmVfY291bnQgPSA4IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd2ZXJpZnkgdHJlZTozIGluY2x1ZGVzIGV2ZXJ5dGhpbmcgZXhwZWN0ZWQnICcKKwlnaXQgLUMgcjMgcmV2LWxpc3QgLS1vYmplY3RzIC0tZmlsdGVyPXRyZWU6MyBIRUFEID5hY3R1YWwgJiYKKworCWV4cGVjdF9oYXMgSEVBRCAiIiAmJgorCWV4cGVjdF9oYXMgSEVBRH4xICIiICYmCisJZXhwZWN0X2hhcyBIRUFEIGRpcjEgJiYKKwlleHBlY3RfaGFzIEhFQUQgZGlyMS9zcGFyc2UxICYmCisJZXhwZWN0X2hhcyBIRUFEIGRpcjEvc3BhcnNlMiAmJgorCWV4cGVjdF9oYXMgSEVBRCBwYXR0ZXJuICYmCisJZXhwZWN0X2hhcyBIRUFEIHNwYXJzZTEgJiYKKwlleHBlY3RfaGFzIEhFQUQgc3BhcnNlMiAmJgorCisJIyBUaGVyZSBhcmUgYWxzbyAyIGNvbW1pdCBvYmplY3RzCisJdGVzdF9saW5lX2NvdW50ID0gMTAgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbWJpbmU6Li4uIGZvciBhIHNpbXBsZSBjb21iaW5hdGlvbicgJworCWdpdCAtQyByMyByZXYtbGlzdCAtLW9iamVjdHMgLS1maWx0ZXI9Y29tYmluZTp0cmVlOjIrYmxvYjpub25lIEhFQUQgXAorCQk+YWN0dWFsICYmCisKKwlleHBlY3RfaGFzIEhFQUQgIiIgJiYKKwlleHBlY3RfaGFzIEhFQUR+MSAiIiAmJgorCWV4cGVjdF9oYXMgSEVBRCBkaXIxICYmCisKKwkjIFRoZXJlIGFyZSBhbHNvIDIgY29tbWl0IG9iamVjdHMKKwl0ZXN0X2xpbmVfY291bnQgPSA1IGFjdHVhbCAmJgorCisJY3AgYWN0dWFsIGV4cGVjdGVkICYmCisKKwkjIFRyeSBhZ2FpbiB1c2luZyByZXBlYXRlZCAtLWZpbHRlciAtIHRoaXMgaXMgZXF1aXZhbGVudCB0byBhIG1hbnVhbAorCSMgY29tYmluZSB3aXRoICJjb21iaW5lOi4uLisuLi4iCisJZ2l0IC1DIHIzIHJldi1saXN0IC0tb2JqZWN0cyAtLWZpbHRlcj1jb21iaW5lOnRyZWU6MiBcCisJCS0tZmlsdGVyPWJsb2I6bm9uZSBIRUFEID5hY3R1YWwgJiYKKworCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb21iaW5lOi4uLiB3aXRoIFVSTCBlbmNvZGluZycgJworCWdpdCAtQyByMyByZXYtbGlzdCAtLW9iamVjdHMgXAorCQktLWZpbHRlcj1jb21iaW5lOnRyZWUlM2EyK2Jsb2I6JTZFb24lNjUgSEVBRCA+YWN0dWFsICYmCisKKwlleHBlY3RfaGFzIEhFQUQgIiIgJiYKKwlleHBlY3RfaGFzIEhFQUR+MSAiIiAmJgorCWV4cGVjdF9oYXMgSEVBRCBkaXIxICYmCisKKwkjIFRoZXJlIGFyZSBhbHNvIDIgY29tbWl0IG9iamVjdHMKKwl0ZXN0X2xpbmVfY291bnQgPSA1IGFjdHVhbAorJworCitleHBlY3RfaW52YWxpZF9maWx0ZXJfc3BlYyAoKSB7CisJc3BlYz0iJDEiICYmCisJZXJyPSIkMiIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCAtQyByMyByZXYtbGlzdCAtLW9iamVjdHMgLS1maWx0ZXI9IiRzcGVjIiBIRUFEIFwKKwkJPmFjdHVhbCAyPmFjdHVhbF9zdGRlcnIgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsICYmCisJdGVzdF9pMThuZ3JlcCAiJGVyciIgYWN0dWFsX3N0ZGVycgorfQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb21iaW5lOi4uLiB3aGlsZSBVUkwtZW5jb2RpbmcgdGhpbmdzIHRoYXQgc2hvdWxkIG5vdCBiZScgJworCWV4cGVjdF9pbnZhbGlkX2ZpbHRlcl9zcGVjIGNvbWJpbmUlM0F0cmVlOjIrYmxvYjpub25lIFwKKwkJImludmFsaWQgZmlsdGVyLXNwZWMiCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbWJpbmU6IHdpdGggbm90aGluZyBhZnRlciB0aGUgOicgJworCWV4cGVjdF9pbnZhbGlkX2ZpbHRlcl9zcGVjIGNvbWJpbmU6ICJleHBlY3RlZCBzb21ldGhpbmcgYWZ0ZXIgY29tYmluZToiCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BhcnNlIGVycm9yIGluIGZpcnN0IHN1Yi1maWx0ZXIgaW4gY29tYmluZTonICcKKwlleHBlY3RfaW52YWxpZF9maWx0ZXJfc3BlYyBjb21iaW5lOnRyZWU6YXNkZitibG9iOm5vbmUgXAorCQkiZXhwZWN0ZWQgLnRyZWU6PGRlcHRoPi4iCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbWJpbmU6Li4uIHdpdGggbm9uLWVuY29kZWQgcmVzZXJ2ZWQgY2hhcnMnICcKKwlleHBlY3RfaW52YWxpZF9maWx0ZXJfc3BlYyBjb21iaW5lOnRyZWU6MitzcGFyc2U6QHh5eiBcCisJCSJtdXN0IGVzY2FwZSBjaGFyIGluIHN1Yi1maWx0ZXItc3BlYzogLkAuIiAmJgorCWV4cGVjdF9pbnZhbGlkX2ZpbHRlcl9zcGVjIGNvbWJpbmU6dHJlZToyK3NwYXJzZTpcYCBcCisJCSJtdXN0IGVzY2FwZSBjaGFyIGluIHN1Yi1maWx0ZXItc3BlYzogLlxgLiIgJiYKKwlleHBlY3RfaW52YWxpZF9maWx0ZXJfc3BlYyBjb21iaW5lOnRyZWU6MitzcGFyc2U6fmFiYyBcCisJCSJtdXN0IGVzY2FwZSBjaGFyIGluIHN1Yi1maWx0ZXItc3BlYzogLlx+LiIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndmFsaWRhdGUgZXJyIG1zZyBmb3IgImNvbWJpbmU6PHZhbGlkLWZpbHRlcj4rIicgJworCWV4cGVjdF9pbnZhbGlkX2ZpbHRlcl9zcGVjIGNvbWJpbmU6dHJlZToyKyAiZXhwZWN0ZWQgLnRyZWU6PGRlcHRoPi4iCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbWJpbmU6Li4uIHdpdGggZWRnZS1jYXNlIGhleCBkaWdpdHM6IEZmIEFhIDAgOScgJworCWdpdCAtQyByMyByZXYtbGlzdCAtLW9iamVjdHMgLS1maWx0ZXI9ImNvbWJpbmU6dHJlZToyK2JsJTZGYjpuJTZmbmUiIFwKKwkJSEVBRCA+YWN0dWFsICYmCisJdGVzdF9saW5lX2NvdW50ID0gNSBhY3R1YWwgJiYKKwlnaXQgLUMgcjMgcmV2LWxpc3QgLS1vYmplY3RzIC0tZmlsdGVyPSJjb21iaW5lOnRyZWUlM0EyK2Jsb2IlM2Fub25lIiBcCisJCUhFQUQgPmFjdHVhbCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDUgYWN0dWFsICYmCisJZ2l0IC1DIHIzIHJldi1saXN0IC0tb2JqZWN0cyAtLWZpbHRlcj0iY29tYmluZTp0cmVlOiUzMCIgSEVBRCA+YWN0dWFsICYmCisJdGVzdF9saW5lX2NvdW50ID0gMiBhY3R1YWwgJiYKKwlnaXQgLUMgcjMgcmV2LWxpc3QgLS1vYmplY3RzIC0tZmlsdGVyPSJjb21iaW5lOnRyZWU6JTM5K2Jsb2I6bm9uZSIgXAorCQlIRUFEID5hY3R1YWwgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSA1IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhZGQgc3BhcnNlIHBhdHRlcm4gYmxvYnMgd2hvc2UgcGF0aHMgaGF2ZSByZXNlcnZlZCBjaGFycycgJworCWNwIHIzL3BhdHRlcm4gcjMvcGF0dGVybjErcmVuYW1lZCUgJiYKKwljcCByMy9wYXR0ZXJuICJyMy9wO2F0JXRlcituIiAmJgorCWNwIHIzL3BhdHRlcm4gcjMvXn5wYXR0ZXJuICYmCisJZ2l0IC1DIHIzIGFkZCBwYXR0ZXJuMStyZW5hbWVkJSAicDthdCV0ZXIrbiIgXn5wYXR0ZXJuICYmCisJZ2l0IC1DIHIzIGNvbW1pdCAtbSAiYWRkIHNwYXJzZSBwYXR0ZXJuIGZpbGVzIHdpdGggcmVzZXJ2ZWQgY2hhcnMiCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NvbWJpbmU6Li4uIHdpdGggbW9yZSB0aGFuIHR3byBzdWItZmlsdGVycycgJworCWdpdCAtQyByMyByZXYtbGlzdCAtLW9iamVjdHMgXAorCQktLWZpbHRlcj1jb21iaW5lOnRyZWU6MytibG9iOmxpbWl0PTQwK3NwYXJzZTpvaWQ9bWFzdGVyOnBhdHRlcm4gXAorCQlIRUFEID5hY3R1YWwgJiYKKworCWV4cGVjdF9oYXMgSEVBRCAiIiAmJgorCWV4cGVjdF9oYXMgSEVBRH4xICIiICYmCisJZXhwZWN0X2hhcyBIRUFEfjIgIiIgJiYKKwlleHBlY3RfaGFzIEhFQUQgZGlyMSAmJgorCWV4cGVjdF9oYXMgSEVBRCBkaXIxL3NwYXJzZTEgJiYKKwlleHBlY3RfaGFzIEhFQUQgZGlyMS9zcGFyc2UyICYmCisKKwkjIFNob3VsZCBhbHNvIGhhdmUgMyBjb21taXRzCisJdGVzdF9saW5lX2NvdW50ID0gOSBhY3R1YWwgJiYKKworCSMgVHJ5IGFnYWluLCB0aGlzIHRpbWUgbWFraW5nIHN1cmUgdGhlIGxhc3Qgc3ViLWZpbHRlciBpcyBvbmx5CisJIyBVUkwtZGVjb2RlZCBvbmNlLgorCWNwIGFjdHVhbCBleHBlY3QgJiYKKworCWdpdCAtQyByMyByZXYtbGlzdCAtLW9iamVjdHMgXAorCQktLWZpbHRlcj1jb21iaW5lOnRyZWU6MytibG9iOmxpbWl0PTQwK3NwYXJzZTpvaWQ9bWFzdGVyOnBhdHRlcm4xJTJicmVuYW1lZCUyNSBcCisJCUhFQUQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKworCSMgVXNlIHRoZSBzYW1lIGNvbXBvc2l0ZSBmaWx0ZXIgYWdhaW4sIGJ1dCB3aXRoIGEgcGF0dGVybiBmaWxlIG5hbWUgdGhhdAorCSMgcmVxdWlyZXMgZW5jb2RpbmcgbXVsdGlwbGUgY2hhcmFjdGVycywgYW5kIHVzZSBpbXBsaWNpdCBmaWx0ZXIKKwkjIGNvbWJpbmluZy4KKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIHRyYWNlMSIgJiYKKwlHSVRfVFJBQ0U9JChwd2QpL3RyYWNlMSBnaXQgLUMgcjMgcmV2LWxpc3QgLS1vYmplY3RzIFwKKwkJLS1maWx0ZXI9dHJlZTozIC0tZmlsdGVyPWJsb2I6bGltaXQ9NDAgXAorCQktLWZpbHRlcj1zcGFyc2U6b2lkPSJtYXN0ZXI6cDthdCV0ZXIrbiIgXAorCQlIRUFEID5hY3R1YWwgJiYKKworCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKwlncmVwICJBZGQgdG8gY29tYmluZSBmaWx0ZXItc3BlYzogc3BhcnNlOm9pZD1tYXN0ZXI6cCUzYmF0JTI1dGVyJTJibiIgXAorCQl0cmFjZTEgJiYKKworCSMgUmVwZWF0IHRoZSBhYm92ZSB0ZXN0LCBidXQgdGhpcyB0aW1lLCB0aGUgY2hhcmFjdGVycyB0byBlbmNvZGUgYXJlIGluCisJIyB0aGUgTEhTIG9mIHRoZSBjb21iaW5lZCBmaWx0ZXIuCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiB0cmFjZTIiICYmCisJR0lUX1RSQUNFPSQocHdkKS90cmFjZTIgZ2l0IC1DIHIzIHJldi1saXN0IC0tb2JqZWN0cyBcCisJCS0tZmlsdGVyPXNwYXJzZTpvaWQ9bWFzdGVyOl5+cGF0dGVybiBcCisJCS0tZmlsdGVyPXRyZWU6MyAtLWZpbHRlcj1ibG9iOmxpbWl0PTQwIFwKKwkJSEVBRCA+YWN0dWFsICYmCisKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJZ3JlcCAiQWRkIHRvIGNvbWJpbmUgZmlsdGVyLXNwZWM6IHNwYXJzZTpvaWQ9bWFzdGVyOiU1ZSU3ZXBhdHRlcm4iIFwKKwkJdHJhY2UyCisnCisKKyMgVGVzdCBwcm92aXNpb25hbCBvbWl0IGNvbGxlY3Rpb24gbG9naWMgd2l0aCBhIHJlcG8gdGhhdCBoYXMgb2JqZWN0cyBhcHBlYXJpbmcKKyMgYXQgbXVsdGlwbGUgZGVwdGhzIC0gZmlyc3QgZGVlcGVyIHRoYW4gdGhlIGZpbHRlcidzIHRocmVzaG9sZCwgdGhlbiBzaGFsbG93LgorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCByNCcgJworCWdpdCBpbml0IHI0ICYmCisKKwllY2hvIGZvbyA+IHI0L2ZvbyAmJgorCW1rZGlyIHI0L3N1YmRpciAmJgorCWVjaG8gYmFyID4gcjQvc3ViZGlyL2JhciAmJgorCisJbWtkaXIgcjQvZmlsdCAmJgorCWNwIC1yIHI0L2ZvbyByNC9zdWJkaXIgcjQvZmlsdCAmJgorCisJZ2l0IC1DIHI0IGFkZCBmb28gc3ViZGlyIGZpbHQgJiYKKwlnaXQgLUMgcjQgY29tbWl0IC1tICJjb21taXQgbXNnIgorJworCitleHBlY3RfaGFzX3dpdGhfZGlmZmVyZW50X25hbWUgKCkgeworCXJlcG89JDEgJiYKKwluYW1lPSQyICYmCisKKwloYXNoPSQoZ2l0IC1DICRyZXBvIHJldi1wYXJzZSBIRUFEOiRuYW1lKSAmJgorCSEgZ3JlcCAiXiRoYXNoICRuYW1lJCIgYWN0dWFsICYmCisJZ3JlcCAiXiRoYXNoICIgYWN0dWFsICYmCisJISBncmVwICJ+JGhhc2giIGFjdHVhbAorfQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd0ZXN0IHRyZWU6IyBmaWx0ZXIgcHJvdmlzaW9uYWwgb21pdCBmb3IgYmxvYiBhbmQgdHJlZScgJworCWdpdCAtQyByNCByZXYtbGlzdCAtLW9iamVjdHMgLS1maWx0ZXItcHJpbnQtb21pdHRlZCAtLWZpbHRlcj10cmVlOjIgXAorCQlIRUFEID5hY3R1YWwgJiYKKwlleHBlY3RfaGFzX3dpdGhfZGlmZmVyZW50X25hbWUgcjQgZmlsdC9mb28gJiYKKwlleHBlY3RfaGFzX3dpdGhfZGlmZmVyZW50X25hbWUgcjQgZmlsdC9zdWJkaXIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndmVyaWZ5IHNraXBwaW5nIHRyZWUgaXRlcmF0aW9uIHdoZW4gY29sbGVjdGluZyBvbWl0cycgJworCUdJVF9UUkFDRT0xIGdpdCAtQyByNCByZXYtbGlzdCAtLWZpbHRlci1wcmludC1vbWl0dGVkIFwKKwkJLS1vYmplY3RzIC0tZmlsdGVyPXRyZWU6MCBIRUFEIDI+ZmlsdGVyX3RyYWNlICYmCisJZ3JlcCAiXlNraXBwaW5nIGNvbnRlbnRzIG9mIHRyZWUgIiBmaWx0ZXJfdHJhY2UgPmFjdHVhbCAmJgorCisJZWNobyAiU2tpcHBpbmcgY29udGVudHMgb2YgdHJlZSBzdWJkaXIvLi4uIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCByNScgJworCWdpdCBpbml0IHI1ICYmCisJbWtkaXIgLXAgcjUvc3ViZGlyICYmCisKKwllY2hvIDEgICAgID5yNS9zaG9ydC1yb290ICAgICAgICAgICYmCisJZWNobyAxMjM0NSA+cjUvbG9uZy1yb290ICAgICAgICAgICAmJgorCWVjaG8gYSAgICAgPnI1L3N1YmRpci9zaG9ydC1zdWJkaXIgJiYKKwllY2hvIGFiY2RlID5yNS9zdWJkaXIvbG9uZy1zdWJkaXIgICYmCisKKwlnaXQgLUMgcjUgYWRkIHNob3J0LXJvb3QgbG9uZy1yb290IHN1YmRpciAmJgorCWdpdCAtQyByNSBjb21taXQgLW0gImNvbW1pdCBtc2ciCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ZlcmlmeSBjb2xsZWN0aW5nIG9taXRzIGluIGNvbWJpbmVkOiBmaWx0ZXInICcKKwkjIE5vdGUgdGhhdCB0aGlzIHRlc3QgZ3VhcmRzIGFnYWluc3QgdGhlIG5haXZlIGltcGxlbWVudGF0aW9uIG9mIHNpbXBseQorCSMgZ2l2aW5nIGJvdGggZmlsdGVycyB0aGUgc2FtZSAib21pdHMiIHNldCBhbmQgZXhwZWN0aW5nIGl0IHRvCisJIyBhdXRvbWF0aWNhbGx5IG1lcmdlIHRoZW0uCisJZ2l0IC1DIHI1IHJldi1saXN0IC0tb2JqZWN0cyAtLXF1aWV0IC0tZmlsdGVyLXByaW50LW9taXR0ZWQgXAorCQktLWZpbHRlcj1jb21iaW5lOnRyZWU6MitibG9iOmxpbWl0PTMgSEVBRCA+YWN0dWFsICYmCisKKwkjIEV4cGVjdCAwIHRyZWVzL2NvbW1pdHMsIDMgYmxvYnMgb21pdHRlZCAoYWxsIGJsb2JzIGV4Y2VwdCBzaG9ydC1yb290KQorCW9taXR0ZWRfMT0kKGVjaG8gMTIzNDUgfCBnaXQgaGFzaC1vYmplY3QgLS1zdGRpbikgJiYKKwlvbWl0dGVkXzI9JChlY2hvIGEgICAgIHwgZ2l0IGhhc2gtb2JqZWN0IC0tc3RkaW4pICYmCisJb21pdHRlZF8zPSQoZWNobyBhYmNkZSB8IGdpdCBoYXNoLW9iamVjdCAtLXN0ZGluKSAmJgorCisJZ3JlcCB+JG9taXR0ZWRfMSBhY3R1YWwgJiYKKwlncmVwIH4kb21pdHRlZF8yIGFjdHVhbCAmJgorCWdyZXAgfiRvbWl0dGVkXzMgYWN0dWFsICYmCisJdGVzdF9saW5lX2NvdW50ID0gMyBhY3R1YWwKKycKKworIyBUZXN0IHRyZWU6PGRlcHRoPiB3aGVyZSBhIHRyZWUgaXMgaXRlcmF0ZWQgdG8gdHdpY2UgLSBvbmNlIHdoZXJlIGEgc3ViZW50cnkgaXMKKyMgdG9vIGRlZXAgdG8gYmUgaW5jbHVkZWQsIGFuZCBhZ2FpbiB3aGVyZSB0aGUgYmxvYiBpbnNpZGUgaXQgaXMgc2hhbGxvdyBlbm91Z2gKKyMgdG8gYmUgaW5jbHVkZWQuIFRoaXMgbWFrZXMgc3VyZSB3ZSBkb24ndCB1c2UgTE9GUl9NQVJLX1NFRU4gaW5jb3JyZWN0bHkgKHdlCisjIGNhbid0IHVzZSBpdCBiZWNhdXNlIGEgdHJlZSBjYW4gYmUgaXRlcmF0ZWQgb3ZlciBhZ2FpbiBhdCBhIGxvd2VyIGRlcHRoKS4KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndHJlZTo8ZGVwdGg+IHdoZXJlIHdlIGl0ZXJhdGUgb3ZlciB0cmVlIGF0IHR3byBsZXZlbHMnICcKKwlnaXQgaW5pdCByNSAmJgorCisJbWtkaXIgLXAgcjUvYS9zdWJkaXIvYiAmJgorCWVjaG8gZm9vID4gcjUvYS9zdWJkaXIvYi9mb28gJiYKKworCW1rZGlyIC1wIHI1L3N1YmRpci9iICYmCisJZWNobyBmb28gPiByNS9zdWJkaXIvYi9mb28gJiYKKworCWdpdCAtQyByNSBhZGQgYSBzdWJkaXIgJiYKKwlnaXQgLUMgcjUgY29tbWl0IC1tICJjb21taXQgbXNnIiAmJgorCisJZ2l0IC1DIHI1IHJldi1saXN0IC0tb2JqZWN0cyAtLWZpbHRlcj10cmVlOjQgSEVBRCA+YWN0dWFsICYmCisJZXhwZWN0X2hhc193aXRoX2RpZmZlcmVudF9uYW1lIHI1IGEvc3ViZGlyL2IvZm9vCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3RyZWU6PGRlcHRoPiB3aGljaCBmaWx0ZXJzIG91dCBibG9iIGJ1dCBnaXZlbiBhcyBhcmcnICcKKwlibG9iX2hhc2g9JChnaXQgLUMgcjQgcmV2LXBhcnNlIEhFQUQ6c3ViZGlyL2JhcikgJiYKKworCWdpdCAtQyByNCByZXYtbGlzdCAtLW9iamVjdHMgLS1maWx0ZXI9dHJlZToxIEhFQUQgJGJsb2JfaGFzaCA+YWN0dWFsICYmCisJZ3JlcCBeJGJsb2JfaGFzaCBhY3R1YWwKICcKIAogIyBEZWxldGUgc29tZSBsb29zZSBvYmplY3RzIGFuZCB1c2UgcmV2LWxpc3QsIGJ1dCBXSVRIT1VUIGFueSBmaWx0ZXJpbmcuCkBAIC0zMjQsNCArNjE2LDE0IEBACiAJZ2l0IC1DIHIxIHJldi1saXN0IC0tcXVpZXQgLS1taXNzaW5nPWFsbG93LWFueSAtLW9iamVjdHMgSEVBRAogJwogCisjIFRlc3QgZXhwYW5zaW9uIG9mIGZpbHRlciBzcGVjcy4KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZXhwYW5kIGJsb2IgbGltaXQgaW4gcHJvdG9jb2wnICcKKwlnaXQgLUMgcjIgY29uZmlnIC0tbG9jYWwgdXBsb2FkcGFjay5hbGxvd2ZpbHRlciAxICYmCisJR0lUX1RSQUNFX1BBQ0tFVD0iJChwd2QpL3RyYWNlIiBnaXQgLWMgcHJvdG9jb2wudmVyc2lvbj0yIGNsb25lIFwKKwkJLS1maWx0ZXI9YmxvYjpsaW1pdD0xayAiZmlsZTovLyQocHdkKS9yMiIgbGltaXQgJiYKKwkhIGdyZXAgImJsb2I6bGltaXQ9MWsiIHRyYWNlICYmCisJZ3JlcCAiYmxvYjpsaW1pdD0xMDI0IiB0cmFjZQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDYxMTMtcmV2LWxpc3QtYml0bWFwLWZpbHRlcnMuc2ggYi90L3Q2MTEzLXJldi1saXN0LWJpdG1hcC1maWx0ZXJzLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjE0NTYwM2YKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q2MTEzLXJldi1saXN0LWJpdG1hcC1maWx0ZXJzLnNoCkBAIC0wLDAgKzEsNTYgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdyZXYtbGlzdCBjb21iaW5pbmcgYml0bWFwcyBhbmQgZmlsdGVycycKKy4gLi90ZXN0LWxpYi5zaAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXQgdXAgYml0bWFwcGVkIHJlcG8nICcKKwkjIG9uZSBjb21taXQgd2lsbCBoYXZlIGJpdG1hcHMsIHRoZSBvdGhlciB3aWxsIG5vdAorCXRlc3RfY29tbWl0IG9uZSAmJgorCXRlc3RfY29tbWl0IG11Y2gtbGFyZ2VyLWJsb2Itb25lICYmCisJZ2l0IHJlcGFjayAtYWRiICYmCisJdGVzdF9jb21taXQgdHdvICYmCisJdGVzdF9jb21taXQgbXVjaC1sYXJnZXItYmxvYi10d28KKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmlsdGVycyBmYWxsYmFjayB0byBub24tYml0bWFwIHRyYXZlcnNhbCcgJworCSMgdXNlIGEgcGF0aC1iYXNlZCBmaWx0ZXIsIHNpbmNlIHRoZXkgYXJlIGluaGVyZW50bHkgaW5jb21wYXRpYmxlIHdpdGgKKwkjIGJpdG1hcHMgKGkuZS4sIHRoaXMgdGVzdCB3aWxsIG5ldmVyIGdldCBjb25mdXNlZCBieSBsYXRlciBjb2RlIHRvCisJIyBjb21iaW5lIHRoZSBmZWF0dXJlcykKKwlmaWx0ZXI9JChlY2hvICIhb25lIiB8IGdpdCBoYXNoLW9iamVjdCAtdyAtLXN0ZGluKSAmJgorCWdpdCByZXYtbGlzdCAtLW9iamVjdHMgLS1maWx0ZXI9c3BhcnNlOm9pZD0kZmlsdGVyIEhFQUQgPmV4cGVjdCAmJgorCWdpdCByZXYtbGlzdCAtLXVzZS1iaXRtYXAtaW5kZXggXAorCQkgICAgIC0tb2JqZWN0cyAtLWZpbHRlcj1zcGFyc2U6b2lkPSRmaWx0ZXIgSEVBRCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdibG9iOm5vbmUgZmlsdGVyJyAnCisJZ2l0IHJldi1saXN0IC0tb2JqZWN0cyAtLWZpbHRlcj1ibG9iOm5vbmUgSEVBRCA+ZXhwZWN0ICYmCisJZ2l0IHJldi1saXN0IC0tdXNlLWJpdG1hcC1pbmRleCBcCisJCSAgICAgLS1vYmplY3RzIC0tZmlsdGVyPWJsb2I6bm9uZSBIRUFEID5hY3R1YWwgJiYKKwl0ZXN0X2JpdG1hcF90cmF2ZXJzYWwgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdibG9iOm5vbmUgZmlsdGVyIHdpdGggc3BlY2lmaWVkIGJsb2InICcKKwlnaXQgcmV2LWxpc3QgLS1vYmplY3RzIC0tZmlsdGVyPWJsb2I6bm9uZSBIRUFEIEhFQUQ6dHdvLnQgPmV4cGVjdCAmJgorCWdpdCByZXYtbGlzdCAtLXVzZS1iaXRtYXAtaW5kZXggXAorCQkgICAgIC0tb2JqZWN0cyAtLWZpbHRlcj1ibG9iOm5vbmUgSEVBRCBIRUFEOnR3by50ID5hY3R1YWwgJiYKKwl0ZXN0X2JpdG1hcF90cmF2ZXJzYWwgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdibG9iOmxpbWl0IGZpbHRlcicgJworCWdpdCByZXYtbGlzdCAtLW9iamVjdHMgLS1maWx0ZXI9YmxvYjpsaW1pdD01IEhFQUQgPmV4cGVjdCAmJgorCWdpdCByZXYtbGlzdCAtLXVzZS1iaXRtYXAtaW5kZXggXAorCQkgICAgIC0tb2JqZWN0cyAtLWZpbHRlcj1ibG9iOmxpbWl0PTUgSEVBRCA+YWN0dWFsICYmCisJdGVzdF9iaXRtYXBfdHJhdmVyc2FsIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYmxvYjpsaW1pdCBmaWx0ZXIgd2l0aCBzcGVjaWZpZWQgYmxvYicgJworCWdpdCByZXYtbGlzdCAtLW9iamVjdHMgLS1maWx0ZXI9YmxvYjpsaW1pdD01IFwKKwkJICAgICBIRUFEIEhFQUQ6bXVjaC1sYXJnZXItYmxvYi10d28udCA+ZXhwZWN0ICYmCisJZ2l0IHJldi1saXN0IC0tdXNlLWJpdG1hcC1pbmRleCBcCisJCSAgICAgLS1vYmplY3RzIC0tZmlsdGVyPWJsb2I6bGltaXQ9NSBcCisJCSAgICAgSEVBRCBIRUFEOm11Y2gtbGFyZ2VyLWJsb2ItdHdvLnQgPmFjdHVhbCAmJgorCXRlc3RfYml0bWFwX3RyYXZlcnNhbCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NjEyMC1kZXNjcmliZS5zaCBiL3QvdDYxMjAtZGVzY3JpYmUuc2gKaW5kZXggZDYzOWQ5NC4uMzQ1MDJlMyAxMDA3NTUKLS0tIGEvdC90NjEyMC1kZXNjcmliZS5zaAorKysgYi90L3Q2MTIwLWRlc2NyaWJlLnNoCkBAIC0xLDI4ICsxLDI3IEBACiAjIS9iaW4vc2gKIAotdGVzdF9kZXNjcmlwdGlvbj0ndGVzdCBkZXNjcmliZQordGVzdF9kZXNjcmlwdGlvbj0ndGVzdCBkZXNjcmliZScKIAotICAgICAgICAgICAgICAgICAgICAgICBCCi0gICAgICAgIC4tLS0tLS0tLS0tLS0tLW8tLS0tby0tLS1vLS0tLXgKLSAgICAgICAvICAgICAgICAgICAgICAgICAgIC8gICAgLwotIG8tLS0tby0tLS1vLS0tLW8tLS0tby0tLS0uICAgIC8KLSAgICAgICBcICAgICAgICBBICAgIGMgICAgICAgIC8KLSAgICAgICAgLi0tLS0tLS0tLS0tLW8tLS1vLS0tbwotICAgICAgICAgICAgICAgICAgIEQsUiAgIGUKLScKKyMgIG8tLS1vLS0tLS1vLS0tLW8tLS0tby0tLS0tLS1vLS0tLXgKKyMgICAgICAgXCAgIEQsUiAgIGUgICAgICAgICAgIC8KKyMgICAgICAgIFwtLS1vLS0tLS0tLS0tLS0tLW8tJworIyAgICAgICAgIFwgIEIgICAgICAgICAgICAvCisjICAgICAgICAgIGAtby0tLS1vLS0tLW8tJworIyAgICAgICAgICAgICAgICAgQSAgICBjCisjCisjIEZpcnN0IHBhcmVudCBvZiBhIG1lcmdlIGNvbW1pdCBpcyBvbiB0aGUgc2FtZSBsaW5lLCBzZWNvbmQgcGFyZW50IGJlbG93LgorCiAuIC4vdGVzdC1saWIuc2gKIAogY2hlY2tfZGVzY3JpYmUgKCkgewogCWV4cGVjdD0iJDEiCiAJc2hpZnQKLQlSPSQoZ2l0IGRlc2NyaWJlICIkQCIgMj5lcnIuYWN0dWFsKQotCVM9JD8KLQljYXQgZXJyLmFjdHVhbCA+JjMKLQl0ZXN0X2V4cGVjdF9zdWNjZXNzICJkZXNjcmliZSAkKiIgJwotCXRlc3QgJFMgPSAwICYmCisJZGVzY3JpYmVfb3B0cz0iJEAiCisJdGVzdF9leHBlY3Rfc3VjY2VzcyAiZGVzY3JpYmUgJGRlc2NyaWJlX29wdHMiICcKKwlSPSQoZ2l0IGRlc2NyaWJlICRkZXNjcmliZV9vcHRzIDI+ZXJyLmFjdHVhbCkgJiYKIAljYXNlICIkUiIgaW4KIAkkZXhwZWN0KQllY2hvIGhhcHB5IDs7Ci0JKikJZWNobyAiT29wcyAtICRSIGlzIG5vdCAkZXhwZWN0IjsKKwkqKQllY2hvICJPb3BzIC0gJFIgaXMgbm90ICRleHBlY3QiICYmCiAJCWZhbHNlIDs7CiAJZXNhYwogCScKQEAgLTE0MywxNiArMTQyLDQ2IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwYWNrIHRhZyByZWZzJyAnZ2l0IHBhY2stcmVmcycKIGNoZWNrX2Rlc2NyaWJlIEEtKiBIRUFECiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Rlc2NyaWJlIHdvcmtzIGZyb20gb3V0c2lkZSByZXBvIHVzaW5nIC0tZ2l0LWRpcicgJworCWdpdCBjbG9uZSAtLWJhcmUgIiRUUkFTSF9ESVJFQ1RPUlkiICIkVFJBU0hfRElSRUNUT1JZL2JhcmUiICYmCisJZ2l0IC0tZ2l0LWRpciAiJFRSQVNIX0RJUkVDVE9SWS9iYXJlIiBkZXNjcmliZSA+b3V0ICYmCisJZ3JlcCAtRSAiXkEtWzEtOV1bMC05XT8tZ1swLTlhLWZdKyQiIG91dAorJworCiBjaGVja19kZXNjcmliZSAiQS0qWzAtOWEtZl0iIC0tZGlydHkKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnZGVzY3JpYmUgLS1kaXJ0eSB3aXRoIC0td29yay10cmVlJyAnCisJKAorCQljZCAiJFRFU1RfRElSRUNUT1JZIiAmJgorCQlnaXQgLS1naXQtZGlyICIkVFJBU0hfRElSRUNUT1JZLy5naXQiIC0td29yay10cmVlICIkVFJBU0hfRElSRUNUT1JZIiBkZXNjcmliZSAtLWRpcnR5ID4iJFRSQVNIX0RJUkVDVE9SWS9vdXQiCisJKSAmJgorCWdyZXAgLUUgIl5BLVsxLTldWzAtOV0/LWdbMC05YS1mXSskIiBvdXQKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0LXVwIGRpcnR5IHdvcmsgdHJlZScgJwogCWVjaG8gPj5maWxlCiAnCiAKIGNoZWNrX2Rlc2NyaWJlICJBLSpbMC05YS1mXS1kaXJ0eSIgLS1kaXJ0eQogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZXNjcmliZSAtLWRpcnR5IHdpdGggLS13b3JrLXRyZWUgKGRpcnR5KScgJworCSgKKwkJY2QgIiRURVNUX0RJUkVDVE9SWSIgJiYKKwkJZ2l0IC0tZ2l0LWRpciAiJFRSQVNIX0RJUkVDVE9SWS8uZ2l0IiAtLXdvcmstdHJlZSAiJFRSQVNIX0RJUkVDVE9SWSIgZGVzY3JpYmUgLS1kaXJ0eSA+IiRUUkFTSF9ESVJFQ1RPUlkvb3V0IgorCSkgJiYKKwlncmVwIC1FICJeQS1bMS05XVswLTldPy1nWzAtOWEtZl0rLWRpcnR5JCIgb3V0CisnCisKIGNoZWNrX2Rlc2NyaWJlICJBLSpbMC05YS1mXS5tb2QiIC0tZGlydHk9Lm1vZAogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZXNjcmliZSAtLWRpcnR5PS5tb2Qgd2l0aCAtLXdvcmstdHJlZSAoZGlydHkpJyAnCisJKAorCQljZCAiJFRFU1RfRElSRUNUT1JZIiAmJgorCQlnaXQgLS1naXQtZGlyICIkVFJBU0hfRElSRUNUT1JZLy5naXQiIC0td29yay10cmVlICIkVFJBU0hfRElSRUNUT1JZIiBkZXNjcmliZSAtLWRpcnR5PS5tb2QgPiIkVFJBU0hfRElSRUNUT1JZL291dCIKKwkpICYmCisJZ3JlcCAtRSAiXkEtWzEtOV1bMC05XT8tZ1swLTlhLWZdKy5tb2QkIiBvdXQKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGVzY3JpYmUgLS1kaXJ0eSBIRUFEJyAnCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGRlc2NyaWJlIC0tZGlydHkgSEVBRAogJwpAQCAtMzAzLDggKzMzMiwxNyBAQAogCW12IC5naXQvbW9kdWxlcy9zdWIxLyAuZ2l0L21vZHVsZXMvc3ViX21vdmVkICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGRlc2NyaWJlIC0tZGlydHkKICcKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGVzY3JpYmUgaWdub3JpbmcgYSBicm9rZW4gc3VibW9kdWxlJyAnCiAJZ2l0IGRlc2NyaWJlIC0tYnJva2VuID5vdXQgJiYKKwlncmVwIGJyb2tlbiBvdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZGVzY3JpYmUgd2l0aCAtLXdvcmstdHJlZSBpZ25vcmluZyBhIGJyb2tlbiBzdWJtb2R1bGUnICcKKwkoCisJCWNkICIkVEVTVF9ESVJFQ1RPUlkiICYmCisJCWdpdCAtLWdpdC1kaXIgIiRUUkFTSF9ESVJFQ1RPUlkvLmdpdCIgLS13b3JrLXRyZWUgIiRUUkFTSF9ESVJFQ1RPUlkiIGRlc2NyaWJlIC0tYnJva2VuID4iJFRSQVNIX0RJUkVDVE9SWS9vdXQiCisJKSAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAibXYgLmdpdC9tb2R1bGVzL3N1Yl9tb3ZlZCAuZ2l0L21vZHVsZXMvc3ViMSIgJiYKIAlncmVwIGJyb2tlbiBvdXQKICcKQEAgLTM0Myw3ICszODEsNyBAQAogCXRlc3RfaTE4bmdyZXAgImZhdGFsOiB0ZXN0LWJsb2ItMSBpcyBuZWl0aGVyIGEgY29tbWl0IG5vciBibG9iIiBhY3R1YWwKICcKIAotdGVzdF9leHBlY3RfZmFpbHVyZSBVTElNSVRfU1RBQ0tfU0laRSAnbmFtZS1yZXYgd29ya3MgaW4gYSBkZWVwIHJlcG8nICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgVUxJTUlUX1NUQUNLX1NJWkUgJ25hbWUtcmV2IHdvcmtzIGluIGEgZGVlcCByZXBvJyAnCiAJaT0xICYmCiAJd2hpbGUgdGVzdCAkaSAtbHQgODAwMAogCWRvCkBAIC0zODUsNCArNDIzLDExMSBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCBkZXNjcmliZSAkWkVST19PSUQKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnbmFtZS1yZXYgYSByZXYgc2hvcnRseSBhZnRlciBlcG9jaCcgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IGNoZWNrb3V0IG1hc3RlciIgJiYKKworCWdpdCBjaGVja291dCAtLW9ycGhhbiBuby10aW1lc3RhbXAtdW5kZXJmbG93ICYmCisJIyBBbnkgZGF0ZSBjbG9zZXIgdG8gZXBvY2ggdGhhbiB0aGUgQ1VUT0ZGX0RBVEVfU0xPUCBjb25zdGFudAorCSMgaW4gYnVpbHRpbi9uYW1lLXJldi5jLgorCUdJVF9DT01NSVRURVJfREFURT0iQDEyMzQgKzAwMDAiIFwKKwlnaXQgY29tbWl0IC1tICJjb21taXR0ZXIgZGF0ZSBzaG9ydGx5IGFmdGVyIGVwb2NoIiAmJgorCW9sZF9jb21taXRfb2lkPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCisJZWNobyAiJG9sZF9jb21taXRfb2lkIG5vLXRpbWVzdGFtcC11bmRlcmZsb3ciID5leHBlY3QgJiYKKwlnaXQgbmFtZS1yZXYgJG9sZF9jb21taXRfb2lkID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKKyMgQS0tLS0tLS0tLS0tLS0tbWFzdGVyCisjICBcICAgICAgICAgICAgLworIyAgIFwtLS0tLS0tLS0tTTIKKyMgICAgXCAgICAgICAgLworIyAgICAgXC0tLU0xLUMKKyMgICAgICBcIC8KKyMgICAgICAgQgordGVzdF9leHBlY3Rfc3VjY2VzcyAnbmFtZS1yZXYgY292ZXJzIGFsbCBjb25kaXRpb25zIHdoaWxlIGxvb2tpbmcgYXQgcGFyZW50cycgJworCWdpdCBpbml0IHJlcG8gJiYKKwkoCisJCWNkIHJlcG8gJiYKKworCQllY2hvIEEgPmZpbGUgJiYKKwkJZ2l0IGFkZCBmaWxlICYmCisJCWdpdCBjb21taXQgLW0gQSAmJgorCQlBPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCisJCWdpdCBjaGVja291dCAtLWRldGFjaCAmJgorCQllY2hvIEIgPmZpbGUgJiYKKwkJZ2l0IGNvbW1pdCAtbSBCIGZpbGUgJiYKKwkJQj0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKworCQlnaXQgY2hlY2tvdXQgJEEgJiYKKwkJZ2l0IG1lcmdlIC0tbm8tZmYgJEIgJiYgICMgTTEKKworCQllY2hvIEMgPmZpbGUgJiYKKwkJZ2l0IGNvbW1pdCAtbSBDIGZpbGUgJiYKKworCQlnaXQgY2hlY2tvdXQgJEEgJiYKKwkJZ2l0IG1lcmdlIC0tbm8tZmYgSEVBREB7MX0gJiYgIyBNMgorCisJCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwkJZ2l0IG1lcmdlIC0tbm8tZmYgSEVBREB7MX0gJiYKKworCQllY2hvICIkQiBtYXN0ZXJeMl4yfjFeMiIgPmV4cGVjdCAmJgorCQlnaXQgbmFtZS1yZXYgJEIgPmFjdHVhbCAmJgorCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwkpCisnCisKKyMgICAgICAgICAgICAgICBCCisjICAgICAgICAgICAgICAgbworIyAgICAgICAgICAgICAgICBcCisjICBvLS0tLS1vLS0tby0tLS14CisjICAgICAgICBBCisjCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZXNjcmliZSBjb21taXRzIHdpdGggZGlzam9pbnQgYmFzZXMnICcKKwlnaXQgaW5pdCBkaXNqb2ludDEgJiYKKwkoCisJCWNkIGRpc2pvaW50MSAmJgorCisJCWVjaG8gbyA+PiBmaWxlICYmIGdpdCBhZGQgZmlsZSAmJiBnaXQgY29tbWl0IC1tIG8gJiYKKwkJZWNobyBBID4+IGZpbGUgJiYgZ2l0IGFkZCBmaWxlICYmIGdpdCBjb21taXQgLW0gQSAmJgorCQlnaXQgdGFnIEEgLWEgLW0gQSAmJgorCQllY2hvIG8gPj4gZmlsZSAmJiBnaXQgYWRkIGZpbGUgJiYgZ2l0IGNvbW1pdCAtbSBvICYmCisKKwkJZ2l0IGNoZWNrb3V0IC0tb3JwaGFuIGJyYW5jaCAmJiBybSBmaWxlICYmCisJCWVjaG8gQiA+IGZpbGUyICYmIGdpdCBhZGQgZmlsZTIgJiYgZ2l0IGNvbW1pdCAtbSBCICYmCisJCWdpdCB0YWcgQiAtYSAtbSBCICYmCisJCWdpdCBtZXJnZSAtLW5vLWZmIC0tYWxsb3ctdW5yZWxhdGVkLWhpc3RvcmllcyBtYXN0ZXIgLW0geCAmJgorCisJCWNoZWNrX2Rlc2NyaWJlICJBLTMtKiIgSEVBRAorCSkKKycKKworIyAgICAgICAgICAgQgorIyAgIG8tLS1vLS0tby0tLS0tLS0tLS0tLS4KKyMgICAgICAgICAgICAgICAgICAgICAgICAgXAorIyAgICAgICAgICAgICAgICAgIG8tLS1vLS0teAorIyAgICAgICAgICAgICAgICAgIEEKKyMKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Rlc2NyaWJlIGNvbW1pdHMgd2l0aCBkaXNqb2ludCBiYXNlcyAyJyAnCisJZ2l0IGluaXQgZGlzam9pbnQyICYmCisJKAorCQljZCBkaXNqb2ludDIgJiYKKworCQllY2hvIEEgPj4gZmlsZSAmJiBnaXQgYWRkIGZpbGUgJiYgR0lUX0NPTU1JVFRFUl9EQVRFPSIyMDIwLTAxLTAxIDE4OjAwIiBnaXQgY29tbWl0IC1tIEEgJiYKKwkJZ2l0IHRhZyBBIC1hIC1tIEEgJiYKKwkJZWNobyBvID4+IGZpbGUgJiYgZ2l0IGFkZCBmaWxlICYmIEdJVF9DT01NSVRURVJfREFURT0iMjAyMC0wMS0wMSAxODowMSIgZ2l0IGNvbW1pdCAtbSBvICYmCisKKwkJZ2l0IGNoZWNrb3V0IC0tb3JwaGFuIGJyYW5jaCAmJgorCQllY2hvIG8gPj4gZmlsZTIgJiYgZ2l0IGFkZCBmaWxlMiAmJiBHSVRfQ09NTUlUVEVSX0RBVEU9IjIwMjAtMDEtMDEgMTU6MDAiIGdpdCBjb21taXQgLW0gbyAmJgorCQllY2hvIG8gPj4gZmlsZTIgJiYgZ2l0IGFkZCBmaWxlMiAmJiBHSVRfQ09NTUlUVEVSX0RBVEU9IjIwMjAtMDEtMDEgMTU6MDEiIGdpdCBjb21taXQgLW0gbyAmJgorCQllY2hvIEIgPj4gZmlsZTIgJiYgZ2l0IGFkZCBmaWxlMiAmJiBHSVRfQ09NTUlUVEVSX0RBVEU9IjIwMjAtMDEtMDEgMTU6MDIiIGdpdCBjb21taXQgLW0gQiAmJgorCQlnaXQgdGFnIEIgLWEgLW0gQiAmJgorCQlnaXQgbWVyZ2UgLS1uby1mZiAtLWFsbG93LXVucmVsYXRlZC1oaXN0b3JpZXMgbWFzdGVyIC1tIHggJiYKKworCQljaGVja19kZXNjcmliZSAiQi0zLSoiIEhFQUQKKwkpCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NjEzNS1wYXRoc3BlYy13aXRoLWF0dHJzLnNoIGIvdC90NjEzNS1wYXRoc3BlYy13aXRoLWF0dHJzLnNoCmluZGV4IGU0MzZhNzMuLjQ1N2NjMTYgMTAwNzU1Ci0tLSBhL3QvdDYxMzUtcGF0aHNwZWMtd2l0aC1hdHRycy5zaAorKysgYi90L3Q2MTM1LXBhdGhzcGVjLXdpdGgtYXR0cnMuc2gKQEAgLTMxLDcgKzMxLDcgQEAKIAlta2RpciBzdWIgJiYKIAl3aGlsZSByZWFkIHBhdGgKIAlkbwotCQk6ID4kcGF0aCAmJgorCQllY2hvIGNvbnRlbnQgPiRwYXRoICYmCiAJCWdpdCBhZGQgJHBhdGggfHwgcmV0dXJuIDEKIAlkb25lIDxleHBlY3QgJiYKIAlnaXQgY29tbWl0IC1tICJpbml0aWFsIGNvbW1pdCIgJiYKQEAgLTQ4LDYgKzQ4LDEwIEBACiAJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwYXRoc3BlYyB3aXRoIGxhYmVscyBhbmQgbm9uIGV4aXN0ZW50IC5naXRhdHRyaWJ1dGVzICgyKScgJworCXRlc3RfbXVzdF9mYWlsIGdpdCBncmVwIGNvbnRlbnQgSEVBRCAtLSAiOihhdHRyOmxhYmVsKSIKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgLmdpdGF0dHJpYnV0ZXMnICcKIAljYXQgPDwtXEVPRiA+LmdpdGF0dHJpYnV0ZXMgJiYKIAlmaWxlQSBsYWJlbEEKQEAgLTc0LDYgKzc4LDE1IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjayBzcGVjaWZpYyBzZXQgYXR0ciAoMiknICcKKwljYXQgPDwtXEVPRiA+ZXhwZWN0ICYmCisJSEVBRDpmaWxlU2V0TGFiZWwKKwlIRUFEOnN1Yi9maWxlU2V0TGFiZWwKKwlFT0YKKwlnaXQgZ3JlcCAtbCBjb250ZW50IEhFQUQgIjooYXR0cjpsYWJlbCkiID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrIHNwZWNpZmljIHVuc2V0IGF0dHInICcKIAljYXQgPDwtXEVPRiA+ZXhwZWN0ICYmCiAJZmlsZVVuc2V0TGFiZWwKQEAgLTgzLDYgKzk2LDE1IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjayBzcGVjaWZpYyB1bnNldCBhdHRyICgyKScgJworCWNhdCA8PC1cRU9GID5leHBlY3QgJiYKKwlIRUFEOmZpbGVVbnNldExhYmVsCisJSEVBRDpzdWIvZmlsZVVuc2V0TGFiZWwKKwlFT0YKKwlnaXQgZ3JlcCAtbCBjb250ZW50IEhFQUQgIjooYXR0cjotbGFiZWwpIiA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjayBzcGVjaWZpYyB2YWx1ZSBhdHRyJyAnCiAJY2F0IDw8LVxFT0YgPmV4cGVjdCAmJgogCWZpbGVWYWx1ZQpAQCAtOTQsNiArMTE2LDE2IEBACiAJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVjayBzcGVjaWZpYyB2YWx1ZSBhdHRyICgyKScgJworCWNhdCA8PC1cRU9GID5leHBlY3QgJiYKKwlIRUFEOmZpbGVWYWx1ZQorCUhFQUQ6c3ViL2ZpbGVWYWx1ZQorCUVPRgorCWdpdCBncmVwIC1sIGNvbnRlbnQgSEVBRCAiOihhdHRyOmxhYmVsPWZvbykiID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGdyZXAgLWwgY29udGVudCBIRUFEICI6KGF0dHI6bGFiZWw9YmFyKSIKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2sgdW5zcGVjaWZpZWQgYXR0cicgJwogCWNhdCA8PC1cRU9GID5leHBlY3QgJiYKIAkuZ2l0YXR0cmlidXRlcwpAQCAtMTE4LDYgKzE1MCwzMCBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2sgdW5zcGVjaWZpZWQgYXR0ciAoMiknICcKKwljYXQgPDwtXEVPRiA+ZXhwZWN0ICYmCisJSEVBRDouZ2l0YXR0cmlidXRlcworCUhFQUQ6ZmlsZUEKKwlIRUFEOmZpbGVBQgorCUhFQUQ6ZmlsZUFDCisJSEVBRDpmaWxlQgorCUhFQUQ6ZmlsZUJDCisJSEVBRDpmaWxlQworCUhFQUQ6ZmlsZU5vTGFiZWwKKwlIRUFEOmZpbGVXcm9uZ0xhYmVsCisJSEVBRDpzdWIvZmlsZUEKKwlIRUFEOnN1Yi9maWxlQUIKKwlIRUFEOnN1Yi9maWxlQUMKKwlIRUFEOnN1Yi9maWxlQgorCUhFQUQ6c3ViL2ZpbGVCQworCUhFQUQ6c3ViL2ZpbGVDCisJSEVBRDpzdWIvZmlsZU5vTGFiZWwKKwlIRUFEOnN1Yi9maWxlV3JvbmdMYWJlbAorCUVPRgorCWdpdCBncmVwIC1sIF4gSEVBRCAiOihhdHRyOiFsYWJlbCkiID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrIG11bHRpcGxlIHVuc3BlY2lmaWVkIGF0dHInICcKIAljYXQgPDwtXEVPRiA+ZXhwZWN0ICYmCiAJLmdpdGF0dHJpYnV0ZXMKZGlmZiAtLWdpdCBhL3QvdDYxMzYtcGF0aHNwZWMtaW4tYmFyZS5zaCBiL3QvdDYxMzYtcGF0aHNwZWMtaW4tYmFyZS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5iMTE3MjUxCi0tLSAvZGV2L251bGwKKysrIGIvdC90NjEzNi1wYXRoc3BlYy1pbi1iYXJlLnNoCkBAIC0wLDAgKzEsMzggQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdkaWFnbm9zaW5nIG91dC1vZi1zY29wZSBwYXRoc3BlYycKKworLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIGEgYmFyZSBhbmQgbm9uLWJhcmUgcmVwb3NpdG9yeScgJworCXRlc3RfY29tbWl0IGZpbGUxICYmCisJZ2l0IGNsb25lIC0tYmFyZSAuIGJhcmUKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9nIGFuZCBscy1maWxlcyBpbiBhIGJhcmUgcmVwb3NpdG9yeScgJworCSgKKwkJY2QgYmFyZSAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgbG9nIC0tIC4uID5vdXQgMj5lcnIgJiYKKwkJdGVzdF9tdXN0X2JlX2VtcHR5IG91dCAmJgorCQl0ZXN0X2kxOG5ncmVwICJvdXRzaWRlIHJlcG9zaXRvcnkiIGVyciAmJgorCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBscy1maWxlcyAtLSAuLiA+b3V0IDI+ZXJyICYmCisJCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXQgJiYKKwkJdGVzdF9pMThuZ3JlcCAib3V0c2lkZSByZXBvc2l0b3J5IiBlcnIKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvZyBhbmQgbHMtZmlsZXMgaW4gLmdpdCBkaXJlY3RvcnknICcKKwkoCisJCWNkIC5naXQgJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IGxvZyAtLSAuLiA+b3V0IDI+ZXJyICYmCisJCXRlc3RfbXVzdF9iZV9lbXB0eSBvdXQgJiYKKwkJdGVzdF9pMThuZ3JlcCAib3V0c2lkZSByZXBvc2l0b3J5IiBlcnIgJiYKKworCQl0ZXN0X211c3RfZmFpbCBnaXQgbHMtZmlsZXMgLS0gLi4gPm91dCAyPmVyciAmJgorCQl0ZXN0X211c3RfYmVfZW1wdHkgb3V0ICYmCisJCXRlc3RfaTE4bmdyZXAgIm91dHNpZGUgcmVwb3NpdG9yeSIgZXJyCisJKQorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDYyMDAtZm10LW1lcmdlLW1zZy5zaCBiL3QvdDYyMDAtZm10LW1lcmdlLW1zZy5zaAppbmRleCA5M2YyM2NmLi44YTcyYjRjIDEwMDc1NQotLS0gYS90L3Q2MjAwLWZtdC1tZXJnZS1tc2cuc2gKKysrIGIvdC90NjIwMC1mbXQtbWVyZ2UtbXNnLnNoCkBAIC02NiwxMiArNjYsNyBAQAogCWdpdCBjb21taXQgLWEgLW0gIlJpZ2h0ICM1IiAmJgogCiAJZ2l0IGNoZWNrb3V0IC1iIGxvbmcgJiYKLQlpPTAgJiYKLQl3aGlsZSB0ZXN0ICRpIC1sdCAzMAotCWRvCi0JCXRlc3RfY29tbWl0ICRpIG9uZSAmJgotCQlpPSQoKCRpKzEpKQotCWRvbmUgJiYKKwl0ZXN0X2NvbW1pdF9idWxrIC0tc3RhcnQ9MCAtLW1lc3NhZ2U9JXMgLS1maWxlbmFtZT1vbmUgMzAgJiYKIAogCWdpdCBzaG93LWJyYW5jaCAmJgogCmRpZmYgLS1naXQgYS90L3Q2MzAwLWZvci1lYWNoLXJlZi5zaCBiL3QvdDYzMDAtZm9yLWVhY2gtcmVmLnNoCmluZGV4IDk3YmZiZWUuLjljOTEwY2UgMTAwNzU1Ci0tLSBhL3QvdDYzMDAtZm9yLWVhY2gtcmVmLnNoCisrKyBiL3QvdDYzMDAtZm9yLWVhY2gtcmVmLnNoCkBAIC04Myw2ICs4Myw4IEBACiB0ZXN0X2F0b20gaGVhZCBwdXNoOnN0cmlwPS0xIG1hc3RlcgogdGVzdF9hdG9tIGhlYWQgb2JqZWN0dHlwZSBjb21taXQKIHRlc3RfYXRvbSBoZWFkIG9iamVjdHNpemUgMTcxCit0ZXN0X2F0b20gaGVhZCBvYmplY3RzaXplOmRpc2sgMTM4Cit0ZXN0X2F0b20gaGVhZCBkZWx0YWJhc2UgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAogdGVzdF9hdG9tIGhlYWQgb2JqZWN0bmFtZSAkKGdpdCByZXYtcGFyc2UgcmVmcy9oZWFkcy9tYXN0ZXIpCiB0ZXN0X2F0b20gaGVhZCBvYmplY3RuYW1lOnNob3J0ICQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IHJlZnMvaGVhZHMvbWFzdGVyKQogdGVzdF9hdG9tIGhlYWQgb2JqZWN0bmFtZTpzaG9ydD0xICQoZ2l0IHJldi1wYXJzZSAtLXNob3J0PTEgcmVmcy9oZWFkcy9tYXN0ZXIpCkBAIC0xMjQsNiArMTI2LDEwIEBACiB0ZXN0X2F0b20gdGFnIHB1c2ggJycKIHRlc3RfYXRvbSB0YWcgb2JqZWN0dHlwZSB0YWcKIHRlc3RfYXRvbSB0YWcgb2JqZWN0c2l6ZSAxNTQKK3Rlc3RfYXRvbSB0YWcgb2JqZWN0c2l6ZTpkaXNrIDEzOAordGVzdF9hdG9tIHRhZyAnKm9iamVjdHNpemU6ZGlzaycgMTM4Cit0ZXN0X2F0b20gdGFnIGRlbHRhYmFzZSAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCit0ZXN0X2F0b20gdGFnICcqZGVsdGFiYXNlJyAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCiB0ZXN0X2F0b20gdGFnIG9iamVjdG5hbWUgJChnaXQgcmV2LXBhcnNlIHJlZnMvdGFncy90ZXN0dGFnKQogdGVzdF9hdG9tIHRhZyBvYmplY3RuYW1lOnNob3J0ICQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IHJlZnMvdGFncy90ZXN0dGFnKQogdGVzdF9hdG9tIGhlYWQgb2JqZWN0bmFtZTpzaG9ydD0xICQoZ2l0IHJldi1wYXJzZSAtLXNob3J0PTEgcmVmcy9oZWFkcy9tYXN0ZXIpCkBAIC0zNDAsNiArMzQ2LDMyIEBACiAnCiAKIGNhdCA+ZXhwZWN0ZWQgPDxcRU9GCityZWZzL3RhZ3MvdGVzdHRhZworcmVmcy90YWdzL3Rlc3R0YWctMgorRU9GCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2V4ZXJjaXNlIHBhdHRlcm5zIHdpdGggcHJlZml4ZXMnICcKKwlnaXQgdGFnIHRlc3R0YWctMiAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHRhZyAtZCB0ZXN0dGFnLTIiICYmCisJZ2l0IGZvci1lYWNoLXJlZiAtLWZvcm1hdD0iJShyZWZuYW1lKSIgXAorCQlyZWZzL3RhZ3MvdGVzdHRhZyByZWZzL3RhZ3MvdGVzdHRhZy0yID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKycKKworY2F0ID5leHBlY3RlZCA8PFxFT0YKK3JlZnMvdGFncy90ZXN0dGFnCityZWZzL3RhZ3MvdGVzdHRhZy0yCitFT0YKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZXhlcmNpc2UgZ2xvYiBwYXR0ZXJucyB3aXRoIHByZWZpeGVzJyAnCisJZ2l0IHRhZyB0ZXN0dGFnLTIgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCB0YWcgLWQgdGVzdHRhZy0yIiAmJgorCWdpdCBmb3ItZWFjaC1yZWYgLS1mb3JtYXQ9IiUocmVmbmFtZSkiIFwKKwkJcmVmcy90YWdzL3Rlc3R0YWcgInJlZnMvdGFncy90ZXN0dGFnLSoiID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKycKKworY2F0ID5leHBlY3RlZCA8PFxFT0YKICdyZWZzL2hlYWRzL21hc3RlcicKICdyZWZzL3JlbW90ZXMvb3JpZ2luL21hc3RlcicKICdyZWZzL3RhZ3MvdGVzdHRhZycKQEAgLTM4Niw4ICs0MTgsMTUgQEAKIHRlc3RfYXRvbSBoZWFkIHVwc3RyZWFtOnRyYWNrc2hvcnQgJz4nCiB0ZXN0X2F0b20gaGVhZCB1cHN0cmVhbTp0cmFjayxub2JyYWNrZXQgJ2FoZWFkIDEnCiB0ZXN0X2F0b20gaGVhZCB1cHN0cmVhbTpub2JyYWNrZXQsdHJhY2sgJ2FoZWFkIDEnCi10ZXN0X2F0b20gaGVhZCBwdXNoOnRyYWNrICdbYWhlYWQgMV0nCi10ZXN0X2F0b20gaGVhZCBwdXNoOnRyYWNrc2hvcnQgJz4nCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIGZvciBwdXNoOnRyYWNrW3Nob3J0XScgJworCXRlc3RfY29tbWl0IHRoaXJkICYmCisJZ2l0IHVwZGF0ZS1yZWYgcmVmcy9yZW1vdGVzL215Zm9yay9tYXN0ZXIgbWFzdGVyICYmCisJZ2l0IHJlc2V0IG1hc3Rlcn4xCisnCisKK3Rlc3RfYXRvbSBoZWFkIHB1c2g6dHJhY2sgJ1tiZWhpbmQgMV0nCit0ZXN0X2F0b20gaGVhZCBwdXNoOnRyYWNrc2hvcnQgJzwnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0NoZWNrIHRoYXQgOnRyYWNrW3Nob3J0XSBjYW5ub3QgYmUgdXNlZCB3aXRoIG90aGVyIGF0b21zJyAnCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZvci1lYWNoLXJlZiAtLWZvcm1hdD0iJShyZWZuYW1lOnRyYWNrKSIgMj4vZGV2L251bGwgJiYKQEAgLTQxNCw4ICs0NTMsMTAgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldCB1cCBjb2xvciB0ZXN0cycgJwogCWNhdCA+ZXhwZWN0ZWQuY29sb3IgPDwtRU9GICYmCiAJJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgcmVmcy9oZWFkcy9tYXN0ZXIpIDxHUkVFTj5tYXN0ZXI8UkVTRVQ+CisJJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgcmVmcy9yZW1vdGVzL215Zm9yay9tYXN0ZXIpIDxHUkVFTj5teWZvcmsvbWFzdGVyPFJFU0VUPgogCSQoZ2l0IHJldi1wYXJzZSAtLXNob3J0IHJlZnMvcmVtb3Rlcy9vcmlnaW4vbWFzdGVyKSA8R1JFRU4+b3JpZ2luL21hc3RlcjxSRVNFVD4KIAkkKGdpdCByZXYtcGFyc2UgLS1zaG9ydCByZWZzL3RhZ3MvdGVzdHRhZykgPEdSRUVOPnRlc3R0YWc8UkVTRVQ+CisJJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgcmVmcy90YWdzL3RoaXJkKSA8R1JFRU4+dGhpcmQ8UkVTRVQ+CiAJJChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgcmVmcy90YWdzL3R3bykgPEdSRUVOPnR3bzxSRVNFVD4KIAlFT0YKIAlzZWQgInMvPFtePl0qPi8vZyIgPGV4cGVjdGVkLmNvbG9yID5leHBlY3RlZC5iYXJlICYmCkBAIC00ODUsNiArNTI2LDI1IEBACiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NyZWF0ZSB0YWcgd2l0aG91dCB0YWdnZXInICcKKwlnaXQgdGFnIC1hIC1tICJCcm9rZW4gdGFnIiB0YWdnZXJsZXNzICYmCisJZ2l0IHRhZyAtZiB0YWdnZXJsZXNzICQoZ2l0IGNhdC1maWxlIHRhZyB0YWdnZXJsZXNzIHwKKwkJc2VkIC1lICIvXnRhZ2dlciAvZCIgfAorCQlnaXQgaGFzaC1vYmplY3QgLS1zdGRpbiAtdyAtdCB0YWcpCisnCisKK3Rlc3RfYXRvbSByZWZzL3RhZ3MvdGFnZ2VybGVzcyB0eXBlICdjb21taXQnCit0ZXN0X2F0b20gcmVmcy90YWdzL3RhZ2dlcmxlc3MgdGFnICd0YWdnZXJsZXNzJwordGVzdF9hdG9tIHJlZnMvdGFncy90YWdnZXJsZXNzIHRhZ2dlciAnJwordGVzdF9hdG9tIHJlZnMvdGFncy90YWdnZXJsZXNzIHRhZ2dlcm5hbWUgJycKK3Rlc3RfYXRvbSByZWZzL3RhZ3MvdGFnZ2VybGVzcyB0YWdnZXJlbWFpbCAnJwordGVzdF9hdG9tIHJlZnMvdGFncy90YWdnZXJsZXNzIHRhZ2dlcmRhdGUgJycKK3Rlc3RfYXRvbSByZWZzL3RhZ3MvdGFnZ2VybGVzcyBjb21taXR0ZXIgJycKK3Rlc3RfYXRvbSByZWZzL3RhZ3MvdGFnZ2VybGVzcyBjb21taXR0ZXJuYW1lICcnCit0ZXN0X2F0b20gcmVmcy90YWdzL3RhZ2dlcmxlc3MgY29tbWl0dGVyZW1haWwgJycKK3Rlc3RfYXRvbSByZWZzL3RhZ3MvdGFnZ2VybGVzcyBjb21taXR0ZXJkYXRlICcnCit0ZXN0X2F0b20gcmVmcy90YWdzL3RhZ2dlcmxlc3Mgc3ViamVjdCAnQnJva2VuIHRhZycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYW4gdW51c3VhbCB0YWcgd2l0aCBhbiBpbmNvbXBsZXRlIGxpbmUnICcKIAogCWdpdCB0YWcgLW0gImJvZ28iIGJvZ28gJiYKZGlmZiAtLWdpdCBhL3QvdDYzMDItZm9yLWVhY2gtcmVmLWZpbHRlci5zaCBiL3QvdDYzMDItZm9yLWVhY2gtcmVmLWZpbHRlci5zaAppbmRleCBmYzA2N2VkLi4zNTQwOGQ1IDEwMDc1NQotLS0gYS90L3Q2MzAyLWZvci1lYWNoLXJlZi1maWx0ZXIuc2gKKysrIGIvdC90NjMwMi1mb3ItZWFjaC1yZWYtZmlsdGVyLnNoCkBAIC00NDEsNCArNDQxLDE3IEBACiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZvci1lYWNoLXJlZiAtLW1lcmdlZCBIRUFEIC0tbm8tbWVyZ2VkIEhFQUQKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAndmFsaWRhdGUgd29ya3RyZWUgYXRvbScgJworCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCW1hc3RlcjogJChwd2QpCisJbWFzdGVyX3dvcmt0cmVlOiAkKHB3ZCkvd29ya3RyZWVfZGlyCisJc2lkZTogbm90IGNoZWNrZWQgb3V0CisJRU9GCisJZ2l0IHdvcmt0cmVlIGFkZCAtYiBtYXN0ZXJfd29ya3RyZWUgd29ya3RyZWVfZGlyIG1hc3RlciAmJgorCWdpdCBmb3ItZWFjaC1yZWYgLS1mb3JtYXQ9IiUocmVmbmFtZTpzaG9ydCk6ICUoaWYpJSh3b3JrdHJlZXBhdGgpJSh0aGVuKSUod29ya3RyZWVwYXRoKSUoZWxzZSlub3QgY2hlY2tlZCBvdXQlKGVuZCkiIHJlZnMvaGVhZHMvID5hY3R1YWwgJiYKKwlybSAtciB3b3JrdHJlZV9kaXIgJiYKKwlnaXQgd29ya3RyZWUgcHJ1bmUgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NjUwMC1nYy5zaCBiL3QvdDY1MDAtZ2Muc2gKaW5kZXggNDY4NGQwNi4uMGE2OWE2NyAxMDA3NTUKLS0tIGEvdC90NjUwMC1nYy5zaAorKysgYi90L3Q2NTAwLWdjLnNoCkBAIC03MSw2ICs3MSw4IEBACiAJCWdpdCBnYyAtLWtlZXAtbGFyZ2VzdC1wYWNrICYmCiAJCSggY2QgLmdpdC9vYmplY3RzL3BhY2sgJiYgbHMgKi5wYWNrICkgPnBhY2stbGlzdCAmJgogCQl0ZXN0X2xpbmVfY291bnQgPSAyIHBhY2stbGlzdCAmJgorCQlhd2sgIi9eUCAve3ByaW50IFwkMn0iIDwuZ2l0L29iamVjdHMvaW5mby9wYWNrcyA+cGFjay1pbmZvICYmCisJCXRlc3RfbGluZV9jb3VudCA9IDIgcGFjay1pbmZvICYmCiAJCXRlc3RfcGF0aF9pc19maWxlICRCQVNFX1BBQ0sgJiYKIAkJZ2l0IGZzY2sKIAkpCkBAIC0xMDEsMTQgKzEwMywxNCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdnYyAtLW5vLXF1aWV0JyAnCi0JZ2l0IC1jIGdjLndyaXRlQ29tbWl0R3JhcGg9dHJ1ZSBnYyAtLW5vLXF1aWV0ID5zdGRvdXQgMj5zdGRlcnIgJiYKKwlHSVRfUFJPR1JFU1NfREVMQVk9MCBnaXQgLWMgZ2Mud3JpdGVDb21taXRHcmFwaD10cnVlIGdjIC0tbm8tcXVpZXQgPnN0ZG91dCAyPnN0ZGVyciAmJgogCXRlc3RfbXVzdF9iZV9lbXB0eSBzdGRvdXQgJiYKLQl0ZXN0X2xpbmVfY291bnQgPSAxIHN0ZGVyciAmJgogCXRlc3RfaTE4bmdyZXAgIkNvbXB1dGluZyBjb21taXQgZ3JhcGggZ2VuZXJhdGlvbiBudW1iZXJzIiBzdGRlcnIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBUVFkgJ3dpdGggVFRZOiBnYyAtLW5vLXF1aWV0JyAnCi0JdGVzdF90ZXJtaW5hbCBnaXQgLWMgZ2Mud3JpdGVDb21taXRHcmFwaD10cnVlIGdjIC0tbm8tcXVpZXQgPnN0ZG91dCAyPnN0ZGVyciAmJgorCXRlc3RfdGVybWluYWwgZW52IEdJVF9QUk9HUkVTU19ERUxBWT0wIFwKKwkJZ2l0IC1jIGdjLndyaXRlQ29tbWl0R3JhcGg9dHJ1ZSBnYyAtLW5vLXF1aWV0ID5zdGRvdXQgMj5zdGRlcnIgJiYKIAl0ZXN0X211c3RfYmVfZW1wdHkgc3Rkb3V0ICYmCiAJdGVzdF9pMThuZ3JlcCAiRW51bWVyYXRpbmcgb2JqZWN0cyIgc3RkZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAiQ29tcHV0aW5nIGNvbW1pdCBncmFwaCBnZW5lcmF0aW9uIG51bWJlcnMiIHN0ZGVycgpAQCAtMTIwLDYgKzEyMiwyNSBAQAogCXRlc3RfbXVzdF9iZV9lbXB0eSBzdGRlcnIKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2MucmVmbG9nRXhwaXJle1VucmVhY2hhYmxlLH09bmV2ZXIgc2tpcHMgImV4cGlyZSIgdmlhICJnYyInICcKKwl0ZXN0X2NvbmZpZyBnYy5yZWZsb2dFeHBpcmUgbmV2ZXIgJiYKKwl0ZXN0X2NvbmZpZyBnYy5yZWZsb2dFeHBpcmVVbnJlYWNoYWJsZSBuZXZlciAmJgorCisJR0lUX1RSQUNFPSQocHdkKS90cmFjZS5vdXQgZ2l0IGdjICYmCisKKwkjIENoZWNrIHRoYXQgZ2l0LXBhY2stcmVmcyBpcyBydW4gYXMgYSBzYW5pdHkgY2hlY2sgKGRvbmUgdmlhCisJIyBnY19iZWZvcmVfcmVwYWNrKCkpIGJ1dCB0aGF0IGdpdC1leHBpcmUgaXMgbm90LgorCWdyZXAgLUUgIl50cmFjZTogKGJ1aWx0LWlufGV4ZWN8cnVuX2NvbW1hbmQpOiBnaXQgcGFjay1yZWZzIC0tIiB0cmFjZS5vdXQgJiYKKwkhIGdyZXAgLUUgIl50cmFjZTogKGJ1aWx0LWlufGV4ZWN8cnVuX2NvbW1hbmQpOiBnaXQgcmVmbG9nIGV4cGlyZSAtLSIgdHJhY2Uub3V0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ29uZSBvZiBnYy5yZWZsb2dFeHBpcmV7VW5yZWFjaGFibGUsfT1uZXZlciBkb2VzIG5vdCBza2lwICJleHBpcmUiIHZpYSAiZ2MiJyAnCisJPnRyYWNlLm91dCAmJgorCXRlc3RfY29uZmlnIGdjLnJlZmxvZ0V4cGlyZSBuZXZlciAmJgorCUdJVF9UUkFDRT0kKHB3ZCkvdHJhY2Uub3V0IGdpdCBnYyAmJgorCWdyZXAgLUUgIl50cmFjZTogKGJ1aWx0LWlufGV4ZWN8cnVuX2NvbW1hbmQpOiBnaXQgcmVmbG9nIGV4cGlyZSAtLSIgdHJhY2Uub3V0CisnCisKIHJ1bl9hbmRfd2FpdF9mb3JfYXV0b19nYyAoKSB7CiAJIyBXZSByZWFkIHN0ZG91dCBmcm9tIGdjIGZvciB0aGUgc2lkZSBlZmZlY3Qgb2Ygd2FpdGluZyB1bnRpbCB0aGUKIAkjIGJhY2tncm91bmQgZ2MgcHJvY2VzcyBleGl0cywgY2xvc2luZyBpdHMgZmQgOS4gIEZ1cnRoZXJtb3JlLCB0aGUKQEAgLTE2Miw3ICsxODMsMTUgQEAKIAkjIG5vdyBmYWtlIGEgY29uY3VycmVudCBnYyB0aGF0IGhvbGRzIHRoZSBsb2NrOyB3ZSBjYW4gdXNlIG91cgogCSMgc2hlbGwgcGlkIHNvIHRoYXQgaXQgbG9va3MgdmFsaWQuCiAJaG9zdG5hbWU9JChob3N0bmFtZSB8fCBlY2hvIHVua25vd24pICYmCi0JcHJpbnRmICIkJCAlcyIgIiRob3N0bmFtZSIgPi5naXQvZ2MucGlkICYmCisJc2hlbGxfcGlkPSQkICYmCisJaWYgdGVzdF9oYXZlX3ByZXJlcSBNSU5HVyAmJiB0ZXN0IC1mIC9wcm9jLyRzaGVsbF9waWQvd2lucGlkCisJdGhlbgorCQkjIEluIEdpdCBmb3IgV2luZG93cywgQmFzaCAoYWN0dWFsbHksIHRoZSBNU1lTMiBydW50aW1lKSBoYXMgYQorCQkjIGRpZmZlcmVudCBpZGVhIG9mIFBJRHMgdGhhbiBnaXQuZXhlIChhY3R1YWxseSBXaW5kb3dzKS4gVXNlCisJCSMgdGhlIFdpbmRvd3MgUElEIGluIHRoaXMgY2FzZS4KKwkJc2hlbGxfcGlkPSQoY2F0IC9wcm9jLyRzaGVsbF9waWQvd2lucGlkKQorCWZpICYmCisJcHJpbnRmICIlZCAlcyIgIiRzaGVsbF9waWQiICIkaG9zdG5hbWUiID4uZ2l0L2djLnBpZCAmJgogCiAJIyBvdXIgZ2Mgc2hvdWxkIGV4aXQgemVybyB3aXRob3V0IGRvaW5nIGFueXRoaW5nCiAJcnVuX2FuZF93YWl0X2Zvcl9hdXRvX2djICYmCmRpZmYgLS1naXQgYS90L3Q2NTAxLWZyZXNoZW4tb2JqZWN0cy5zaCBiL3QvdDY1MDEtZnJlc2hlbi1vYmplY3RzLnNoCmluZGV4IDAzMzg3MWUuLmYzMGI0ODQgMTAwNzU1Ci0tLSBhL3QvdDY1MDEtZnJlc2hlbi1vYmplY3RzLnNoCisrKyBiL3QvdDY1MDEtZnJlc2hlbi1vYmplY3RzLnNoCkBAIC0xMzcsNyArMTM3LDcgQEAKIAlzb21lIG1lc3NhZ2UKIAlFT0YKIAljb21taXQ9JChnaXQgaGFzaC1vYmplY3QgLXQgY29tbWl0IC13IGJyb2tlbi1jb21taXQpICYmCi0JZ2l0IGdjIDI+c3RkZXJyICYmCisJZ2l0IGdjIC1xIDI+c3RkZXJyICYmCiAJdmVyYm9zZSBnaXQgY2F0LWZpbGUgLWUgJGNvbW1pdCAmJgogCXRlc3RfbXVzdF9iZV9lbXB0eSBzdGRlcnIKICcKQEAgLTE0Nyw3ICsxNDcsNyBAQAogCTEwMDY0NCBibG9iIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDMJZm9vCiAJRU9GCiAJdHJlZT0kKGdpdCBta3RyZWUgLS1taXNzaW5nIDxicm9rZW4tdHJlZSkgJiYKLQlnaXQgZ2MgMj5zdGRlcnIgJiYKKwlnaXQgZ2MgLXEgMj5zdGRlcnIgJiYKIAlnaXQgY2F0LWZpbGUgLWUgJHRyZWUgJiYKIAl0ZXN0X211c3RfYmVfZW1wdHkgc3RkZXJyCiAnCkBAIC0xNjIsNyArMTYyLDcgQEAKIAl0aGlzIGlzIGEgYnJva2VuIHRhZwogCUVPRgogCXRhZz0kKGdpdCBoYXNoLW9iamVjdCAtdCB0YWcgLXcgYnJva2VuLXRhZykgJiYKLQlnaXQgZ2MgMj5zdGRlcnIgJiYKKwlnaXQgZ2MgLXEgMj5zdGRlcnIgJiYKIAlnaXQgY2F0LWZpbGUgLWUgJHRhZyAmJgogCXRlc3RfbXVzdF9iZV9lbXB0eSBzdGRlcnIKICcKZGlmZiAtLWdpdCBhL3QvdDcwMDQtdGFnLnNoIGIvdC90NzAwNC10YWcuc2gKaW5kZXggMGIwMTg2Mi4uNzRiNjM3ZCAxMDA3NTUKLS0tIGEvdC90NzAwNC10YWcuc2gKKysrIGIvdC90NzAwNC10YWcuc2gKQEAgLTIyNywxMCArMjI3LDEwIEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzIFwKIAkndHJ5aW5nIHRvIGRlbGV0ZSB0d28gdGFncywgZXhpc3RpbmcgYW5kIG5vdCwgc2hvdWxkIGZhaWwgaW4gdGhlIDJuZCcgJwogCXRhZ19leGlzdHMgbXl0YWcgJiYKLQkhIHRhZ19leGlzdHMgbXloZWFkICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHRhZyAtZCBteXRhZyBhbm90aGVydGFnICYmCisJISB0YWdfZXhpc3RzIG5vbmV4aXN0aW5ndGFnICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHRhZyAtZCBteXRhZyBub25leGlzdGluZ3RhZyAmJgogCSEgdGFnX2V4aXN0cyBteXRhZyAmJgotCSEgdGFnX2V4aXN0cyBteWhlYWQKKwkhIHRhZ19leGlzdHMgbm9uZXhpc3Rpbmd0YWcKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndHJ5aW5nIHRvIGRlbGV0ZSBhbiBhbHJlYWR5IGRlbGV0ZWQgdGFnIHNob3VsZCBmYWlsJyBcCkBAIC01MTcsNyArNTE3LDYgQEAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgXAogCSd0cnlpbmcgdG8gY3JlYXRlIHRhZ3MgZ2l2aW5nIGJvdGggLW0gb3IgLUYgb3B0aW9ucyBzaG91bGQgZmFpbCcgJwogCWVjaG8gIm1lc3NhZ2UgZmlsZSAxIiA+bXNnZmlsZTEgJiYKLQllY2hvICJtZXNzYWdlIGZpbGUgMiIgPm1zZ2ZpbGUyICYmCiAJISB0YWdfZXhpc3RzIG1zZ3RhZyAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCB0YWcgLW0gIm1lc3NhZ2UgMSIgLUYgbXNnZmlsZTEgbXNndGFnICYmCiAJISB0YWdfZXhpc3RzIG1zZ3RhZyAmJgpAQCAtOTMyLDYgKzkzMSwyNyBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAorZ2V0X3RhZ19oZWFkZXIgZ3Bnc2lnbi1lbmFibGVkICRjb21taXQgY29tbWl0ICR0aW1lID5leHBlY3QKK2VjaG8gIkEgbWVzc2FnZSIgPj5leHBlY3QKK2VjaG8gJy0tLS0tQkVHSU4gUEdQIFNJR05BVFVSRS0tLS0tJyA+PmV4cGVjdAordGVzdF9leHBlY3Rfc3VjY2VzcyBHUEcgXAorCSdnaXQgdGFnIGNvbmZpZ3VyZWQgdGFnLmdwZ3NpZ24gZW5hYmxlcyBHUEcgc2lnbicgXAorCSd0ZXN0X2NvbmZpZyB0YWcuZ3Bnc2lnbiB0cnVlICYmCisJZ2l0IHRhZyAtbSAiQSBtZXNzYWdlIiBncGdzaWduLWVuYWJsZWQgJiYKKwlnZXRfdGFnX21zZyBncGdzaWduLWVuYWJsZWQ+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCitnZXRfdGFnX2hlYWRlciBuby1zaWduICRjb21taXQgY29tbWl0ICR0aW1lID5leHBlY3QKK2VjaG8gIkEgbWVzc2FnZSIgPj5leHBlY3QKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHIFwKKwknZ2l0IHRhZyAtLW5vLXNpZ24gY29uZmlndXJlZCB0YWcuZ3Bnc2lnbiBza2lwIEdQRyBzaWduJyBcCisJJ3Rlc3RfY29uZmlnIHRhZy5ncGdzaWduIHRydWUgJiYKKwlnaXQgdGFnIC1hIC0tbm8tc2lnbiAtbSAiQSBtZXNzYWdlIiBuby1zaWduICYmCisJZ2V0X3RhZ19tc2cgbm8tc2lnbj5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHIFwKIAkndHJ5aW5nIHRvIGNyZWF0ZSBhIHNpZ25lZCB0YWcgd2l0aCBub24tZXhpc3RpbmcgLUYgZmlsZSBzaG91bGQgZmFpbCcgJwogCSEgdGVzdCAtZiBub25leGlzdGluZ2ZpbGUgJiYKQEAgLTEzOTksNyArMTQxOSw3IEBACiBnZXRfdGFnX2hlYWRlciByZXVzZSAkY29tbWl0IGNvbW1pdCAkdGltZSA+ZXhwZWN0CiBlY2hvICJBbiBhbm5vdGF0aW9uIHRvIGJlIHJldXNlZCIgPj4gZXhwZWN0CiB0ZXN0X2V4cGVjdF9zdWNjZXNzIFwKLQknb3ZlcndyaXRpbmcgYW4gYW5ub3RlZCB0YWcgc2hvdWxkIHVzZSBpdHMgcHJldmlvdXMgYm9keScgJworCSdvdmVyd3JpdGluZyBhbiBhbm5vdGF0ZWQgdGFnIHNob3VsZCB1c2UgaXRzIHByZXZpb3VzIGJvZHknICcKIAlnaXQgdGFnIC1hIC1tICJBbiBhbm5vdGF0aW9uIHRvIGJlIHJldXNlZCIgcmV1c2UgJiYKIAlHSVRfRURJVE9SPXRydWUgZ2l0IHRhZyAtZiAtYSByZXVzZSAmJgogCWdldF90YWdfbXNnIHJldXNlID5hY3R1YWwgJiYKQEAgLTE3MDAsNiArMTcyMCwxOCBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVjdXJzaXZlIHRhZ2dpbmcgc2hvdWxkIGdpdmUgYWR2aWNlJyAnCisJc2VkIC1lICJzL3wkLy8iIDw8LUVPRiA+ZXhwZWN0ICYmCisJaGludDogWW91IGhhdmUgY3JlYXRlZCBhIG5lc3RlZCB0YWcuIFRoZSBvYmplY3QgcmVmZXJyZWQgdG8gYnkgeW91ciBuZXcgdGFnIGlzCisJaGludDogYWxyZWFkeSBhIHRhZy4gSWYgeW91IG1lYW50IHRvIHRhZyB0aGUgb2JqZWN0IHRoYXQgaXQgcG9pbnRzIHRvLCB1c2U6CisJaGludDogfAorCWhpbnQ6IAlnaXQgdGFnIC1mIG5lc3RlZCBhbm5vdGF0ZWQtdjQuMF57fQorCWhpbnQ6IERpc2FibGUgdGhpcyBtZXNzYWdlIHdpdGggImdpdCBjb25maWcgYWR2aWNlLm5lc3RlZFRhZyBmYWxzZSIKKwlFT0YKKwlnaXQgdGFnIC1tIG5lc3RlZCBuZXN0ZWQgYW5ub3RhdGVkLXY0LjAgMj5hY3R1YWwgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtdWx0aXBsZSAtLXBvaW50cy1hdCBhcmUgT1ItZWQgdG9nZXRoZXInICcKIAljYXQgPmV4cGVjdCA8PC1cRU9GICYmCiAJdjIuMApkaWZmIC0tZ2l0IGEvdC90NzAwOS1maWx0ZXItYnJhbmNoLW51bGwtc2hhMS5zaCBiL3QvdDcwMDgtZmlsdGVyLWJyYW5jaC1udWxsLXNoYTEuc2gKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIHQvdDcwMDktZmlsdGVyLWJyYW5jaC1udWxsLXNoYTEuc2gKcmVuYW1lIHRvIHQvdDcwMDgtZmlsdGVyLWJyYW5jaC1udWxsLXNoYTEuc2gKZGlmZiAtLWdpdCBhL3QvdDcwMDgtZ3JlcC1iaW5hcnkuc2ggYi90L3Q3MDA4LWdyZXAtYmluYXJ5LnNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAyZDg3YzQ5Li4wMDAwMDAwCi0tLSBhL3QvdDcwMDgtZ3JlcC1iaW5hcnkuc2gKKysrIC9kZXYvbnVsbApAQCAtMSwyNDkgKzAsMCBAQAotIyEvYmluL3NoCi0KLXRlc3RfZGVzY3JpcHRpb249J2dpdCBncmVwIGluIGJpbmFyeSBmaWxlcycKLQotLiAuL3Rlc3QtbGliLnNoCi0KLW51bF9tYXRjaCAoKSB7Ci0JbWF0Y2hlcz0kMQotCWZsYWdzPSQyCi0JcGF0dGVybj0kMwotCXBhdHRlcm5faHVtYW49JChlY2hvICIkcGF0dGVybiIgfCBzZWQgJ3MvUS88TlVMPi9nJykKLQotCWlmIHRlc3QgIiRtYXRjaGVzIiA9IDEKLQl0aGVuCi0JCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgImdpdCBncmVwIC1mIGYgJGZsYWdzICckcGF0dGVybl9odW1hbicgYSIgIgotCQkJcHJpbnRmICckcGF0dGVybicgfCBxX3RvX251bCA+ZiAmJgotCQkJZ2l0IGdyZXAgLWYgZiAkZmxhZ3MgYQotCQkiCi0JZWxpZiB0ZXN0ICIkbWF0Y2hlcyIgPSAwCi0JdGhlbgotCQl0ZXN0X2V4cGVjdF9zdWNjZXNzICJnaXQgZ3JlcCAtZiBmICRmbGFncyAnJHBhdHRlcm5faHVtYW4nIGEiICIKLQkJCXByaW50ZiAnJHBhdHRlcm4nIHwgcV90b19udWwgPmYgJiYKLQkJCXRlc3RfbXVzdF9mYWlsIGdpdCBncmVwIC1mIGYgJGZsYWdzIGEKLQkJIgotCWVsaWYgdGVzdCAiJG1hdGNoZXMiID0gVDEKLQl0aGVuCi0JCXRlc3RfZXhwZWN0X2ZhaWx1cmUgImdpdCBncmVwIC1mIGYgJGZsYWdzICckcGF0dGVybl9odW1hbicgYSIgIgotCQkJcHJpbnRmICckcGF0dGVybicgfCBxX3RvX251bCA+ZiAmJgotCQkJZ2l0IGdyZXAgLWYgZiAkZmxhZ3MgYQotCQkiCi0JZWxpZiB0ZXN0ICIkbWF0Y2hlcyIgPSBUMAotCXRoZW4KLQkJdGVzdF9leHBlY3RfZmFpbHVyZSAiZ2l0IGdyZXAgLWYgZiAkZmxhZ3MgJyRwYXR0ZXJuX2h1bWFuJyBhIiAiCi0JCQlwcmludGYgJyRwYXR0ZXJuJyB8IHFfdG9fbnVsID5mICYmCi0JCQl0ZXN0X211c3RfZmFpbCBnaXQgZ3JlcCAtZiBmICRmbGFncyBhCi0JCSIKLQllbHNlCi0JCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgIlBBTklDOiBUZXN0IGZyYW1ld29yayBlcnJvci4gVW5rbm93biBtYXRjaGVzIHZhbHVlICRtYXRjaGVzIiAnZmFsc2UnCi0JZmkKLX0KLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICIKLQllY2hvICdiaW5hcnlRZmlsZVFtWypdY1Eqw6ZRw7AnIHwgcV90b19udWwgPmEgJiYKLQlnaXQgYWRkIGEgJiYKLQlnaXQgY29tbWl0IC1tLgotIgotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgZ3JlcCBpbmEgYScgJwotCWVjaG8gQmluYXJ5IGZpbGUgYSBtYXRjaGVzID5leHBlY3QgJiYKLQlnaXQgZ3JlcCBpbmEgYSA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgZ3JlcCAtYWggaW5hIGEnICcKLQlnaXQgZ3JlcCAtYWggaW5hIGEgPmFjdHVhbCAmJgotCXRlc3RfY21wIGEgYWN0dWFsCi0nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBncmVwIC1JIGluYSBhJyAnCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IGdyZXAgLUkgaW5hIGEgPmFjdHVhbCAmJgotCXRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGdyZXAgLWMgaW5hIGEnICcKLQllY2hvIGE6MSA+ZXhwZWN0ICYmCi0JZ2l0IGdyZXAgLWMgaW5hIGEgPmFjdHVhbCAmJgotCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGdyZXAgLWwgaW5hIGEnICcKLQllY2hvIGEgPmV4cGVjdCAmJgotCWdpdCBncmVwIC1sIGluYSBhID5hY3R1YWwgJiYKLQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCi0nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBncmVwIC1MIGJhciBhJyAnCi0JZWNobyBhID5leHBlY3QgJiYKLQlnaXQgZ3JlcCAtTCBiYXIgYSA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgZ3JlcCAtcSBpbmEgYScgJwotCWdpdCBncmVwIC1xIGluYSBhID5hY3R1YWwgJiYKLQl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCi0nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBncmVwIC1GIGlsZSBhJyAnCi0JZ2l0IGdyZXAgLUYgaWxlIGEKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGdyZXAgLUZpIGlMRSBhJyAnCi0JZ2l0IGdyZXAgLUZpIGlMRSBhCi0nCi0KLSMgVGhpcyB0ZXN0IGFjdHVhbGx5IHBhc3NlcyBvbiBwbGF0Zm9ybXMgd2hlcmUgcmVnZXhlYygpIHN1cHBvcnRzIHRoZQotIyBmbGFnIFJFR19TVEFSVEVORC4KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBncmVwIGlsZSBhJyAnCi0JZ2l0IGdyZXAgaWxlIGEKLScKLQotdGVzdF9leHBlY3RfZmFpbHVyZSAnZ2l0IGdyZXAgLmZpIGEnICcKLQlnaXQgZ3JlcCAuZmkgYQotJwotCi1udWxfbWF0Y2ggMSAnLUYnICd5UWYnCi1udWxfbWF0Y2ggMCAnLUYnICd5UXgnCi1udWxfbWF0Y2ggMSAnLUZpJyAnWVFmJwotbnVsX21hdGNoIDAgJy1GaScgJ1lReCcKLW51bF9tYXRjaCAxICcnICd5UWYnCi1udWxfbWF0Y2ggMCAnJyAneVF4JwotbnVsX21hdGNoIDEgJycgJ8OmUcOwJwotbnVsX21hdGNoIDEgJy1GJyAnZVFtWypdYycKLW51bF9tYXRjaCAxICctRmknICdFUU1bKl1DJwotCi0jIFJlZ2V4IHBhdHRlcm5zIHRoYXQgd291bGQgbWF0Y2ggYnV0IHNob3VsZG4ndCB3aXRoIC1GCi1udWxfbWF0Y2ggMCAnLUYnICd5UVtmXScKLW51bF9tYXRjaCAwICctRicgJ1t5XVFmJwotbnVsX21hdGNoIDAgJy1GaScgJ1lRW0ZdJwotbnVsX21hdGNoIDAgJy1GaScgJ1tZXVFGJwotbnVsX21hdGNoIDAgJy1GJyAnw6ZRW8OwXScKLW51bF9tYXRjaCAwICctRicgJ1vDpl1Rw7AnCi1udWxfbWF0Y2ggMCAnLUZpJyAnw4ZRW8OQXScKLW51bF9tYXRjaCAwICctRmknICdbw4ZdUcOQJwotCi0jIGt3c2V0IGlzIGRpc2FibGVkIG9uIC1pICYgbm9uLUFTQ0lJLiBObyB3YXkgdG8gbWF0Y2ggbm9uLUFTQ0lJIFwwCi0jIHBhdHRlcm5zIGNhc2UtaW5zZW5zaXRpdmVseS4KLW51bF9tYXRjaCBUMSAnLWknICfDhlHDkCcKLQotIyBcMCBpbXBsaWNpdGx5IGRpc2FibGVzIHJlZ2V4ZXMuIFRoaXMgaXMgYW4gdW5kb2N1bWVudGVkIGludGVybmFsCi0jIGxpbWl0YXRpb24uCi1udWxfbWF0Y2ggVDEgJycgJ3lRW2ZdJwotbnVsX21hdGNoIFQxICcnICdbeV1RZicKLW51bF9tYXRjaCBUMSAnLWknICdZUVtGXScKLW51bF9tYXRjaCBUMSAnLWknICdbWV1RZicKLW51bF9tYXRjaCBUMSAnJyAnw6ZRW8OwXScKLW51bF9tYXRjaCBUMSAnJyAnW8OmXVHDsCcKLW51bF9tYXRjaCBUMSAnLWknICfDhlFbw5BdJwotCi0jIC4uLiBiZWNhdXNlIG9mIFwwIGltcGxpY2l0bHkgZGlzYWJsaW5nIHJlZ2V4ZXMgcmVnZXhlcyB0aGF0Ci0jIHNob3VsZC9zaG91bGRuJ3QgbWF0Y2ggZG9uJ3QgZG8gdGhlIHJpZ2h0IHRoaW5nLgotbnVsX21hdGNoIFQxICcnICdlUW0uKmNRJwotbnVsX21hdGNoIFQxICctaScgJ0VRTS4qY1EnCi1udWxfbWF0Y2ggVDAgJycgJ2VRbVsqXWMnCi1udWxfbWF0Y2ggVDAgJy1pJyAnRVFNWypdQycKLQotIyBEdWUgdG8gdGhlIFJFR19TVEFSVEVORCBleHRlbnNpb24gd2hlbiBrd3NldCgpIGlzIGRpc2FibGVkIG9uIC1pICYKLSMgbm9uLUFTQ0lJIHRoZSBzdHJpbmcgd2lsbCBiZSBtYXRjaGVkIGluIGl0cyBlbnRpcmV0eSwgYnV0IHRoZQotIyBwYXR0ZXJuIHdpbGwgYmUgY3V0IG9mZiBhdCB0aGUgZmlyc3QgXDAuCi1udWxfbWF0Y2ggMCAnLWknICdOT01BVENIUcOwJwotbnVsX21hdGNoIFQwICctaScgJ1vDhl1RTk9NQVRDSCcKLW51bF9tYXRjaCBUMCAnLWknICdbw6ZdUU5PTUFUQ0gnCi0jIE1hdGNoZXMsIGJ1dCBmb3IgdGhlIHdyb25nIHJlYXNvbnMsIGp1c3Qgc3RvcHMgYXQgW8OmXQotbnVsX21hdGNoIDEgJy1pJyAnW8OGXVHDsCcKLW51bF9tYXRjaCAxICctaScgJ1vDpl1Rw7AnCi0KLSMgRW5zdXJlIHRoYXQgdGhlIG1hdGNoZXIgZG9lc24ndCByZWdyZXNzIHRvIHNvbWV0aGluZyB0aGF0IHN0b3BzIGF0Ci0jIFwwCi1udWxfbWF0Y2ggMCAnLUYnICd5UVtmXScKLW51bF9tYXRjaCAwICctRmknICdZUVtGXScKLW51bF9tYXRjaCAwICcnICd5UU5PTUFUQ0gnCi1udWxfbWF0Y2ggMCAnJyAnUU5PTUFUQ0gnCi1udWxfbWF0Y2ggMCAnLWknICdZUU5PTUFUQ0gnCi1udWxfbWF0Y2ggMCAnLWknICdRTk9NQVRDSCcKLW51bF9tYXRjaCAwICctRicgJ8OmUVvDsF0nCi1udWxfbWF0Y2ggMCAnLUZpJyAnw4ZRW8OQXScKLW51bF9tYXRjaCAwICcnICd5UU7Dk01BVENIJwotbnVsX21hdGNoIDAgJycgJ1FOw5NNQVRDSCcKLW51bF9tYXRjaCAwICctaScgJ1lRTsOTTUFUQ0gnCi1udWxfbWF0Y2ggMCAnLWknICdRTsOTTUFUQ0gnCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dyZXAgcmVzcGVjdHMgYmluYXJ5IGRpZmYgYXR0cmlidXRlJyAnCi0JZWNobyB0ZXh0ID50ICYmCi0JZ2l0IGFkZCB0ICYmCi0JZWNobyB0OnRleHQgPmV4cGVjdCAmJgotCWdpdCBncmVwIHRleHQgdCA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgotCWVjaG8gInQgLWRpZmYiID4uZ2l0YXR0cmlidXRlcyAmJgotCWVjaG8gIkJpbmFyeSBmaWxlIHQgbWF0Y2hlcyIgPmV4cGVjdCAmJgotCWdpdCBncmVwIHRleHQgdCA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdncmVwIC0tY2FjaGVkIHJlc3BlY3RzIGJpbmFyeSBkaWZmIGF0dHJpYnV0ZScgJwotCWdpdCBncmVwIC0tY2FjaGVkIHRleHQgdCA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdncmVwIC0tY2FjaGVkIHJlc3BlY3RzIGJpbmFyeSBkaWZmIGF0dHJpYnV0ZSAoMiknICcKLQlnaXQgYWRkIC5naXRhdHRyaWJ1dGVzICYmCi0Jcm0gLmdpdGF0dHJpYnV0ZXMgJiYKLQlnaXQgZ3JlcCAtLWNhY2hlZCB0ZXh0IHQgPmFjdHVhbCAmJgotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJtIC0tY2FjaGVkIC5naXRhdHRyaWJ1dGVzIiAmJgotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IGNoZWNrb3V0IC5naXRhdHRyaWJ1dGVzIiAmJgotCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ3JlcCByZXZpc2lvbiByZXNwZWN0cyBiaW5hcnkgZGlmZiBhdHRyaWJ1dGUnICcKLQlnaXQgY29tbWl0IC1tIG5ldyAmJgotCWVjaG8gIkJpbmFyeSBmaWxlIEhFQUQ6dCBtYXRjaGVzIiA+ZXhwZWN0ICYmCi0JZ2l0IGdyZXAgdGV4dCBIRUFEIC0tIHQgPmFjdHVhbCAmJgotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IEhFQUReIiAmJgotCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ3JlcCByZXNwZWN0cyBub3QtYmluYXJ5IGRpZmYgYXR0cmlidXRlJyAnCi0JZWNobyBiaW5RYXJ5IHwgcV90b19udWwgPmIgJiYKLQlnaXQgYWRkIGIgJiYKLQllY2hvICJCaW5hcnkgZmlsZSBiIG1hdGNoZXMiID5leHBlY3QgJiYKLQlnaXQgZ3JlcCBiaW4gYiA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgotCWVjaG8gImIgZGlmZiIgPi5naXRhdHRyaWJ1dGVzICYmCi0JZWNobyAiYjpiaW5RYXJ5IiA+ZXhwZWN0ICYmCi0JZ2l0IGdyZXAgYmluIGIgPmFjdHVhbC5yYXcgJiYKLQludWxfdG9fcSA8YWN0dWFsLnJhdyA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAotJwotCi1jYXQgPm51bF90b19xX3RleHRjb252IDw8J0VPRicKLSMhL2Jpbi9zaAotIiRQRVJMX1BBVEgiIC1wZSAneS9cMDAwL1EvJyA8ICIkMSIKLUVPRgotY2htb2QgK3ggbnVsX3RvX3FfdGV4dGNvbnYKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAgdGV4dGNvbnYgZmlsdGVycycgJwotCWVjaG8gYSBkaWZmPWZvbyA+LmdpdGF0dHJpYnV0ZXMgJiYKLQlnaXQgY29uZmlnIGRpZmYuZm9vLnRleHRjb252ICJcIiQocHdkKVwiIi9udWxfdG9fcV90ZXh0Y29udgotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdncmVwIGRvZXMgbm90IGhvbm9yIHRleHRjb252JyAnCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IGdyZXAgUWZpbGUKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ3JlcCAtLXRleHRjb252IGhvbm9ycyB0ZXh0Y29udicgJwotCWVjaG8gImE6YmluYXJ5UWZpbGVRbVsqXWNRKsOmUcOwIiA+ZXhwZWN0ICYmCi0JZ2l0IGdyZXAgLS10ZXh0Y29udiBRZmlsZSA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdncmVwIC0tbm8tdGV4dGNvbnYgZG9lcyBub3QgaG9ub3IgdGV4dGNvbnYnICcKLQl0ZXN0X211c3RfZmFpbCBnaXQgZ3JlcCAtLW5vLXRleHRjb252IFFmaWxlCi0nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dyZXAgLS10ZXh0Y29udiBibG9iIGhvbm9ycyB0ZXh0Y29udicgJwotCWVjaG8gIkhFQUQ6YTpiaW5hcnlRZmlsZVFtWypdY1Eqw6ZRw7AiID5leHBlY3QgJiYKLQlnaXQgZ3JlcCAtLXRleHRjb252IFFmaWxlIEhFQUQ6YSA+YWN0dWFsICYmCi0JdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAotJwotCi10ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDcwMTItc2tpcC13b3JrdHJlZS13cml0aW5nLnNoIGIvdC90NzAxMi1za2lwLXdvcmt0cmVlLXdyaXRpbmcuc2gKaW5kZXggOWQxYWJlNS4uNzQ3Njc4MSAxMDA3NTUKLS0tIGEvdC90NzAxMi1za2lwLXdvcmt0cmVlLXdyaXRpbmcuc2gKKysrIGIvdC90NzAxMi1za2lwLXdvcmt0cmVlLXdyaXRpbmcuc2gKQEAgLTEzNCw2ICsxMzQsMjEgQEAKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0ZWQgcmVzdWx0CiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0taWdub3JlLXNraXAtd29ya3RyZWUtZW50cmllcyBsZWF2ZXMgd29ya3RyZWUgYWxvbmUnICcKKwl0ZXN0X2NvbW1pdCBrZWVwLW1lICYmCisJZ2l0IHVwZGF0ZS1pbmRleCAtLXNraXAtd29ya3RyZWUga2VlcC1tZS50ICYmCisJcm0ga2VlcC1tZS50ICYmCisKKwk6IGlnbm9yaW5nIHRoZSB3b3JrdHJlZSAmJgorCWdpdCB1cGRhdGUtaW5kZXggLS1yZW1vdmUgLS1pZ25vcmUtc2tpcC13b3JrdHJlZS1lbnRyaWVzIGtlZXAtbWUudCAmJgorCWdpdCBkaWZmLWluZGV4IC0tY2FjaGVkIC0tZXhpdC1jb2RlIEhFQUQgJiYKKworCTogbm90IGlnbm9yaW5nIHRoZSB3b3JrdHJlZSwgYSBkZWxldGlvbiBpcyBzdGFnZWQgJiYKKwlnaXQgdXBkYXRlLWluZGV4IC0tcmVtb3ZlIGtlZXAtbWUudCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmLWluZGV4IC0tY2FjaGVkIC0tZXhpdC1jb2RlIEhFQUQgXAorCQktLWRpZmYtZmlsdGVyPUQgLS0ga2VlcC1tZS50CisnCisKICNUT0RPIHRlc3RfZXhwZWN0X2ZhaWx1cmUgJ2dpdC1hcHBseSBhZGRzIGZpbGUnIGZhbHNlCiAjVE9ETyB0ZXN0X2V4cGVjdF9mYWlsdXJlICdnaXQtYXBwbHkgdXBkYXRlcyBmaWxlJyBmYWxzZQogI1RPRE8gdGVzdF9leHBlY3RfZmFpbHVyZSAnZ2l0LWFwcGx5IHJlbW92ZXMgZmlsZScgZmFsc2UKZGlmZiAtLWdpdCBhL3QvdDcwMzAtdmVyaWZ5LXRhZy5zaCBiL3QvdDcwMzAtdmVyaWZ5LXRhZy5zaAppbmRleCAwNDFlMzE5Li41YzViYzMyIDEwMDc1NQotLS0gYS90L3Q3MDMwLXZlcmlmeS10YWcuc2gKKysrIGIvdC90NzAzMC12ZXJpZnktdGFnLnNoCkBAIC00NCw4ICs0NCw4IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQR1NNICdjcmVhdGUgc2lnbmVkIHRhZ3MgeDUwOSAnICcKIAl0ZXN0X2NvbmZpZyBncGcuZm9ybWF0IHg1MDkgJiYKIAl0ZXN0X2NvbmZpZyB1c2VyLnNpZ25pbmdrZXkgJEdJVF9DT01NSVRURVJfRU1BSUwgJiYKLQllY2hvIDkgPmZpbGUgJiYgdGVzdF90aWNrICYmIGdpdCBjb21taXQgLWEgLW0gIm5pbmV0aCBncGdzbS1zaWduZWQiICYmCi0JZ2l0IHRhZyAtcyAtbSBuaW5ldGggbmluZXRoLXNpZ25lZC14NTA5CisJZWNobyA5ID5maWxlICYmIHRlc3RfdGljayAmJiBnaXQgY29tbWl0IC1hIC1tICJuaW50aCBncGdzbS1zaWduZWQiICYmCisJZ2l0IHRhZyAtcyAtbSBuaW50aCBuaW50aC1zaWduZWQteDUwOQogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQRyAndmVyaWZ5IGFuZCBzaG93IHNpZ25hdHVyZXMnICcKQEAgLTgwLDEwICs4MCwzNCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQR1NNICd2ZXJpZnkgYW5kIHNob3cgc2lnbmF0dXJlcyB4NTA5JyAnCi0JZ2l0IHZlcmlmeS10YWcgbmluZXRoLXNpZ25lZC14NTA5IDI+YWN0dWFsICYmCisJZ2l0IHZlcmlmeS10YWcgbmludGgtc2lnbmVkLXg1MDkgMj5hY3R1YWwgJiYKIAlncmVwICJHb29kIHNpZ25hdHVyZSBmcm9tIiBhY3R1YWwgJiYKIAkhIGdyZXAgIkJBRCBzaWduYXR1cmUgZnJvbSIgYWN0dWFsICYmCi0JZWNobyBuaW5ldGgtc2lnbmVkLXg1MDkgT0sKKwllY2hvIG5pbnRoLXNpZ25lZC14NTA5IE9LCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHU00gJ3ZlcmlmeSBhbmQgc2hvdyBzaWduYXR1cmVzIHg1MDkgd2l0aCBsb3cgbWluVHJ1c3RMZXZlbCcgJworCXRlc3RfY29uZmlnIGdwZy5taW5UcnVzdExldmVsIHVuZGVmaW5lZCAmJgorCWdpdCB2ZXJpZnktdGFnIG5pbnRoLXNpZ25lZC14NTA5IDI+YWN0dWFsICYmCisJZ3JlcCAiR29vZCBzaWduYXR1cmUgZnJvbSIgYWN0dWFsICYmCisJISBncmVwICJCQUQgc2lnbmF0dXJlIGZyb20iIGFjdHVhbCAmJgorCWVjaG8gbmludGgtc2lnbmVkLXg1MDkgT0sKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBHUEdTTSAndmVyaWZ5IGFuZCBzaG93IHNpZ25hdHVyZXMgeDUwOSB3aXRoIG1hdGNoaW5nIG1pblRydXN0TGV2ZWwnICcKKwl0ZXN0X2NvbmZpZyBncGcubWluVHJ1c3RMZXZlbCBmdWxseSAmJgorCWdpdCB2ZXJpZnktdGFnIG5pbnRoLXNpZ25lZC14NTA5IDI+YWN0dWFsICYmCisJZ3JlcCAiR29vZCBzaWduYXR1cmUgZnJvbSIgYWN0dWFsICYmCisJISBncmVwICJCQUQgc2lnbmF0dXJlIGZyb20iIGFjdHVhbCAmJgorCWVjaG8gbmludGgtc2lnbmVkLXg1MDkgT0sKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBHUEdTTSAndmVyaWZ5IGFuZCBzaG93IHNpZ25hdHVyZXMgeDUwOSB3aXRoIGhpZ2ggbWluVHJ1c3RMZXZlbCcgJworCXRlc3RfY29uZmlnIGdwZy5taW5UcnVzdExldmVsIHVsdGltYXRlICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHZlcmlmeS10YWcgbmludGgtc2lnbmVkLXg1MDkgMj5hY3R1YWwgJiYKKwlncmVwICJHb29kIHNpZ25hdHVyZSBmcm9tIiBhY3R1YWwgJiYKKwkhIGdyZXAgIkJBRCBzaWduYXR1cmUgZnJvbSIgYWN0dWFsICYmCisJZWNobyBuaW50aC1zaWduZWQteDUwOSBPSwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQRyAnZGV0ZWN0IGZ1ZGdlZCBzaWduYXR1cmUnICcKQEAgLTEyNywxMCArMTUxLDEwIEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHU00gJ3ZlcmlmeSBzaWduYXR1cmVzIHdpdGggLS1yYXcgeDUwOScgJwotCWdpdCB2ZXJpZnktdGFnIC0tcmF3IG5pbmV0aC1zaWduZWQteDUwOSAyPmFjdHVhbCAmJgorCWdpdCB2ZXJpZnktdGFnIC0tcmF3IG5pbnRoLXNpZ25lZC14NTA5IDI+YWN0dWFsICYmCiAJZ3JlcCAiR09PRFNJRyIgYWN0dWFsICYmCiAJISBncmVwICJCQURTSUciIGFjdHVhbCAmJgotCWVjaG8gbmluZXRoLXNpZ25lZC14NTA5IE9LCisJZWNobyBuaW50aC1zaWduZWQteDUwOSBPSwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQRyAndmVyaWZ5IG11bHRpcGxlIHRhZ3MnICcKQEAgLTE0Nyw3ICsxNzEsNyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQR1NNICd2ZXJpZnkgbXVsdGlwbGUgdGFncyB4NTA5JyAnCi0JdGFncz0ic2V2ZW50aC1zaWduZWQgbmluZXRoLXNpZ25lZC14NTA5IiAmJgorCXRhZ3M9InNldmVudGgtc2lnbmVkIG5pbnRoLXNpZ25lZC14NTA5IiAmJgogCWZvciBpIGluICR0YWdzCiAJZG8KIAkJZ2l0IHZlcmlmeS10YWcgLXYgLS1yYXcgJGkgfHwgcmV0dXJuIDEKZGlmZiAtLWdpdCBhL3QvdDcwNjAtd3RzdGF0dXMuc2ggYi90L3Q3MDYwLXd0c3RhdHVzLnNoCmluZGV4IDUzY2Y0MmYuLmQ1MjE4NzQgMTAwNzU1Ci0tLSBhL3QvdDcwNjAtd3RzdGF0dXMuc2gKKysrIGIvdC90NzA2MC13dHN0YXR1cy5zaApAQCAtMzgsNyArMzgsNiBAQAogCiBVbm1lcmdlZCBwYXRoczoKICAgKHVzZSAiZ2l0IGFkZC9ybSA8ZmlsZT4uLi4iIGFzIGFwcHJvcHJpYXRlIHRvIG1hcmsgcmVzb2x1dGlvbikKLQogCWRlbGV0ZWQgYnkgdXM6ICAgZm9vCiAKIG5vIGNoYW5nZXMgYWRkZWQgdG8gY29tbWl0ICh1c2UgImdpdCBhZGQiIGFuZC9vciAiZ2l0IGNvbW1pdCAtYSIpCkBAIC0xNDMsNyArMTQyLDYgQEAKIAogVW5tZXJnZWQgcGF0aHM6CiAgICh1c2UgImdpdCBhZGQvcm0gPGZpbGU+Li4uIiBhcyBhcHByb3ByaWF0ZSB0byBtYXJrIHJlc29sdXRpb24pCi0KIAlib3RoIGFkZGVkOiAgICAgIGNvbmZsaWN0LnR4dAogCWRlbGV0ZWQgYnkgdGhlbTogbWFpbi50eHQKIApAQCAtMTc3LDcgKzE3NSw2IEBACiAKIFVubWVyZ2VkIHBhdGhzOgogICAodXNlICJnaXQgYWRkL3JtIDxmaWxlPi4uLiIgYXMgYXBwcm9wcmlhdGUgdG8gbWFyayByZXNvbHV0aW9uKQotCiAJYm90aCBkZWxldGVkOiAgICBtYWluLnR4dAogCWFkZGVkIGJ5IHRoZW06ICAgc3ViX21hc3Rlci50eHQKIAlhZGRlZCBieSB1czogICAgIHN1Yl9zZWNvbmQudHh0CkBAIC0yMDEsMTIgKzE5OCwxMCBAQAogICAodXNlICJnaXQgbWVyZ2UgLS1hYm9ydCIgdG8gYWJvcnQgdGhlIG1lcmdlKQogCiBDaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoKLQogCW5ldyBmaWxlOiAgIHN1Yl9tYXN0ZXIudHh0CiAKIFVubWVyZ2VkIHBhdGhzOgogICAodXNlICJnaXQgcm0gPGZpbGU+Li4uIiB0byBtYXJrIHJlc29sdXRpb24pCi0KIAlib3RoIGRlbGV0ZWQ6ICAgIG1haW4udHh0CiAKIFVudHJhY2tlZCBmaWxlcyBub3QgbGlzdGVkICh1c2UgLXUgb3B0aW9uIHRvIHNob3cgdW50cmFja2VkIGZpbGVzKQpkaWZmIC0tZ2l0IGEvdC90NzA2MS13dHN0YXR1cy1pZ25vcmUuc2ggYi90L3Q3MDYxLXd0c3RhdHVzLWlnbm9yZS5zaAppbmRleCAwYzM5NGNmLi5lNGNmNTQ4IDEwMDc1NQotLS0gYS90L3Q3MDYxLXd0c3RhdHVzLWlnbm9yZS5zaAorKysgYi90L3Q3MDYxLXd0c3RhdHVzLWlnbm9yZS5zaApAQCAtNDMsMTEgKzQzLDE2IEBACiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiBjYXQgPmV4cGVjdGVkIDw8XEVPRgotPz8gdW50cmFja2VkL3VuY29tbWl0dGVkCis/PyB1bnRyYWNrZWQvCiAhISB1bnRyYWNrZWQvaWdub3JlZAogRU9GCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXR1cyBwcmVmaXhlZCB1bnRyYWNrZWQgZGlyZWN0b3J5IHdpdGggLS1pZ25vcmVkJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGF0dXMgb2YgdW50cmFja2VkIGRpcmVjdG9yeSB3aXRoIC0taWdub3JlZCB3b3JrcyB3aXRoIG9yIHdpdGhvdXQgcHJlZml4JyAnCisJZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbiAtLWlnbm9yZWQgPnRtcCAmJgorCWdyZXAgdW50cmFja2VkLyB0bXAgPmFjdHVhbCAmJgorCXJtIHRtcCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbCAmJgorCiAJZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbiAtLWlnbm9yZWQgdW50cmFja2VkLyA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCmRpZmYgLS1naXQgYS90L3Q3MDY0LXd0c3RhdHVzLXB2Mi5zaCBiL3QvdDcwNjQtd3RzdGF0dXMtcHYyLnNoCmluZGV4IDExZWNjYzIuLjUzNzc4N2UgMTAwNzU1Ci0tLSBhL3QvdDcwNjQtd3RzdGF0dXMtcHYyLnNoCisrKyBiL3QvdDcwNjQtd3RzdGF0dXMtcHYyLnNoCkBAIC00NDUsNiArNDQ1LDE0IEBACiAJCUVPRgogCiAJCWdpdCBzdGF0dXMgLS1haGVhZC1iZWhpbmQgLS1wb3JjZWxhaW49djIgLS1icmFuY2ggLS11bnRyYWNrZWQtZmlsZXM9YWxsID5hY3R1YWwgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJCSMgQ29uZmlybSB0aGF0ICJzdGF0dXMuYWhlYWRiZWhpbmQiIERPRVMgTk9UIHdvcmsgb24gVjIgZm9ybWF0LgorCQlnaXQgLWMgc3RhdHVzLmFoZWFkYmVoaW5kPWZhbHNlIHN0YXR1cyAtLXBvcmNlbGFpbj12MiAtLWJyYW5jaCAtLXVudHJhY2tlZC1maWxlcz1hbGwgPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwkJIyBDb25maXJtIHRoYXQgInN0YXR1cy5haGVhZGJlaGluZCIgRE9FUyBOT1Qgd29yayBvbiBWMiBmb3JtYXQuCisJCWdpdCAtYyBzdGF0dXMuYWhlYWRiZWhpbmQ9dHJ1ZSBzdGF0dXMgLS1wb3JjZWxhaW49djIgLS1icmFuY2ggLS11bnRyYWNrZWQtZmlsZXM9YWxsID5hY3R1YWwgJiYKIAkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogCSkKICcKZGlmZiAtLWdpdCBhL3QvdDcxMDUtcmVzZXQtcGF0Y2guc2ggYi90L3Q3MTA1LXJlc2V0LXBhdGNoLnNoCmluZGV4IGJkMTBhOTYuLmZjMmE2Y2YgMTAwNzU1Ci0tLSBhL3QvdDcxMDUtcmVzZXQtcGF0Y2guc2gKKysrIGIvdC90NzEwNS1yZXNldC1wYXRjaC5zaApAQCAtMzgsNiArMzgsMjcgQEAKIAl0ZXN0X2kxOG5ncmVwICJBcHBseSIgb3V0cHV0CiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgUEVSTCAnZ2l0IHJlc2V0IC1wIEhFQUReXnt0cmVlfScgJworCXRlc3Rfd3JpdGVfbGluZXMgbiB5IHwgZ2l0IHJlc2V0IC1wIEhFQUReXnt0cmVlfSA+b3V0cHV0ICYmCisJdmVyaWZ5X3N0YXRlIGRpci9mb28gd29yayBwYXJlbnQgJiYKKwl2ZXJpZnlfc2F2ZWRfc3RhdGUgYmFyICYmCisJdGVzdF9pMThuZ3JlcCAiQXBwbHkiIG91dHB1dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIFBFUkwgJ2dpdCByZXNldCAtcCBIRUFEXjpkaXIvZm9vIChibG9iIGZhaWxzKScgJworCXNldF9hbmRfc2F2ZV9zdGF0ZSBkaXIvZm9vIHdvcmsgd29yayAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZXNldCAtcCBIRUFEXjpkaXIvZm9vICYmCisJdmVyaWZ5X3NhdmVkX3N0YXRlIGRpci9mb28gJiYKKwl2ZXJpZnlfc2F2ZWRfc3RhdGUgYmFyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgUEVSTCAnZ2l0IHJlc2V0IC1wIGFhYWFhYWFhICh1bmtub3duIGZhaWxzKScgJworCXNldF9hbmRfc2F2ZV9zdGF0ZSBkaXIvZm9vIHdvcmsgd29yayAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZXNldCAtcCBhYWFhYWFhYSAmJgorCXZlcmlmeV9zYXZlZF9zdGF0ZSBkaXIvZm9vICYmCisJdmVyaWZ5X3NhdmVkX3N0YXRlIGJhcgorJworCiAjIFRoZSBpZGVhIGluIHRoZSByZXN0IGlzIHRoYXQgYmFyIHNvcnRzIGZpcnN0LCBzbyB3ZSBhbHdheXMgc2F5ICd5JwogIyBmaXJzdCBhbmQgaWYgdGhlIHBhdGggbGltaXRlciBmYWlscyBpdCdsbCBhcHBseSB0byBiYXIgaW5zdGVhZCBvZgogIyBkaXIvZm9vLiAgVGhlcmUncyBhbHdheXMgYW4gZXh0cmEgJ24nIHRvIHJlamVjdCBlZGl0cyB0byBkaXIvZm9vIGluCmRpZmYgLS1naXQgYS90L3Q3MTA3LXJlc2V0LXBhdGhzcGVjLWZpbGUuc2ggYi90L3Q3MTA3LXJlc2V0LXBhdGhzcGVjLWZpbGUuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uY2FkM2E5ZAotLS0gL2Rldi9udWxsCisrKyBiL3QvdDcxMDctcmVzZXQtcGF0aHNwZWMtZmlsZS5zaApAQCAtMCwwICsxLDE3MyBAQAorIyEvYmluL3NoCisKK3Rlc3RfZGVzY3JpcHRpb249J3Jlc2V0IC0tcGF0aHNwZWMtZnJvbS1maWxlJworCisuIC4vdGVzdC1saWIuc2gKKwordGVzdF90aWNrCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3Mgc2V0dXAgJworCWVjaG8gQSA+ZmlsZUEudCAmJgorCWVjaG8gQiA+ZmlsZUIudCAmJgorCWVjaG8gQyA+ZmlsZUMudCAmJgorCWVjaG8gRCA+ZmlsZUQudCAmJgorCWdpdCBhZGQgLiAmJgorCWdpdCBjb21taXQgLS1pbmNsdWRlIC4gLW0gIkNvbW1pdCIgJiYKKwlnaXQgdGFnIGNoZWNrcG9pbnQKKycKKworcmVzdG9yZV9jaGVja3BvaW50ICgpIHsKKwlnaXQgcmVzZXQgLS1oYXJkIGNoZWNrcG9pbnQKK30KKwordmVyaWZ5X2V4cGVjdCAoKSB7CisJZ2l0IHN0YXR1cyAtLXBvcmNlbGFpbiAtLSBmaWxlQS50IGZpbGVCLnQgZmlsZUMudCBmaWxlRC50ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tcGF0aHNwZWMtZnJvbS1maWxlIGZyb20gc3RkaW4nICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCWdpdCBybSBmaWxlQS50ICYmCisJZWNobyBmaWxlQS50IHwgZ2l0IHJlc2V0IC0tcGF0aHNwZWMtZnJvbS1maWxlPS0gJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwkgRCBmaWxlQS50CisJRU9GCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXBhdGhzcGVjLWZyb20tZmlsZSBmcm9tIGZpbGUnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCWdpdCBybSBmaWxlQS50ICYmCisJZWNobyBmaWxlQS50ID5saXN0ICYmCisJZ2l0IHJlc2V0IC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwkgRCBmaWxlQS50CisJRU9GCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdOVUwgZGVsaW1pdGVycycgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJZ2l0IHJtIGZpbGVBLnQgZmlsZUIudCAmJgorCXByaW50ZiAiZmlsZUEudFwwZmlsZUIudFwwIiB8IGdpdCByZXNldCAtLXBhdGhzcGVjLWZyb20tZmlsZT0tIC0tcGF0aHNwZWMtZmlsZS1udWwgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwkgRCBmaWxlQS50CisJIEQgZmlsZUIudAorCUVPRgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnTEYgZGVsaW1pdGVycycgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJZ2l0IHJtIGZpbGVBLnQgZmlsZUIudCAmJgorCXByaW50ZiAiZmlsZUEudFxuZmlsZUIudFxuIiB8IGdpdCByZXNldCAtLXBhdGhzcGVjLWZyb20tZmlsZT0tICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJIEQgZmlsZUEudAorCSBEIGZpbGVCLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25vIHRyYWlsaW5nIGRlbGltaXRlcicgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJZ2l0IHJtIGZpbGVBLnQgZmlsZUIudCAmJgorCXByaW50ZiAiZmlsZUEudFxuZmlsZUIudCIgfCBnaXQgcmVzZXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCSBEIGZpbGVBLnQKKwkgRCBmaWxlQi50CisJRU9GCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdDUkxGIGRlbGltaXRlcnMnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCWdpdCBybSBmaWxlQS50IGZpbGVCLnQgJiYKKwlwcmludGYgImZpbGVBLnRcclxuZmlsZUIudFxyXG4iIHwgZ2l0IHJlc2V0IC0tcGF0aHNwZWMtZnJvbS1maWxlPS0gJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwkgRCBmaWxlQS50CisJIEQgZmlsZUIudAorCUVPRgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAncXVvdGVzJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwljYXQgPmxpc3QgPDwtXEVPRiAmJgorCSJmaWxlXDEwMS50IgorCUVPRgorCisJZ2l0IHJtIGZpbGVBLnQgJiYKKwlnaXQgcmVzZXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9bGlzdCAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCSBEIGZpbGVBLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3F1b3RlcyBub3QgY29tcGF0aWJsZSB3aXRoIC0tcGF0aHNwZWMtZmlsZS1udWwnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCWNhdCA+bGlzdCA8PC1cRU9GICYmCisJImZpbGVcMTAxLnQiCisJRU9GCisKKwkjIE5vdGU6ICJnaXQgcmVzZXQiIGhhcyBub3QgeWV0IGxlYXJuZWQgdG8gZmFpbCBvbiB3cm9uZyBwYXRoc3BlY3MKKwlnaXQgcmVzZXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9bGlzdCAtLXBhdGhzcGVjLWZpbGUtbnVsICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJIEQgZmlsZUEudAorCUVPRgorCXRlc3RfbXVzdF9mYWlsIHZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnb25seSB0b3VjaGVzIHdoYXQgd2FzIGxpc3RlZCcgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJZ2l0IHJtIGZpbGVBLnQgZmlsZUIudCBmaWxlQy50IGZpbGVELnQgJiYKKwlwcmludGYgImZpbGVCLnRcbmZpbGVDLnRcbiIgfCBnaXQgcmVzZXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCUQgIGZpbGVBLnQKKwkgRCBmaWxlQi50CisJIEQgZmlsZUMudAorCUQgIGZpbGVELnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Vycm9yIGNvbmRpdGlvbnMnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKwllY2hvIGZpbGVBLnQgPmxpc3QgJiYKKwlnaXQgcm0gZmlsZUEudCAmJgorCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlc2V0IC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLS1wYXRjaCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIC0tcGF0Y2giIGVyciAmJgorCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlc2V0IC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLS0gZmlsZUEudCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIgZXJyICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmVzZXQgLS1wYXRoc3BlYy1maWxlLW51bCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIi0tcGF0aHNwZWMtZmlsZS1udWwgcmVxdWlyZXMgLS1wYXRoc3BlYy1mcm9tLWZpbGUiIGVyciAmJgorCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlc2V0IC0tc29mdCAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0IDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiZmF0YWw6IENhbm5vdCBkbyBzb2Z0IHJlc2V0IHdpdGggcGF0aHMiIGVyciAmJgorCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlc2V0IC0taGFyZCAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0IDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiZmF0YWw6IENhbm5vdCBkbyBoYXJkIHJlc2V0IHdpdGggcGF0aHMiIGVycgorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDcxMTMtcG9zdC1pbmRleC1jaGFuZ2UtaG9vay5zaCBiL3QvdDcxMTMtcG9zdC1pbmRleC1jaGFuZ2UtaG9vay5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5mMDExYWQ3Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NzExMy1wb3N0LWluZGV4LWNoYW5nZS1ob29rLnNoCkBAIC0wLDAgKzEsMTQ0IEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0ncG9zdCBpbmRleCBjaGFuZ2UgaG9vaycKKworLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCisJbWtkaXIgLXAgZGlyMSAmJgorCXRvdWNoIGRpcjEvZmlsZTEudHh0ICYmCisJZWNobyB0ZXN0aW5nID5kaXIxL2ZpbGUyLnR4dCAmJgorCWdpdCBhZGQgLiAmJgorCWdpdCBjb21taXQgLW0gImluaXRpYWwiCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Rlc3Qgc3RhdHVzLCBhZGQsIGNvbW1pdCwgb3RoZXJzIHRyaWdnZXIgaG9vayB3aXRob3V0IGZsYWdzIHNldCcgJworCW1rZGlyIC1wIC5naXQvaG9va3MgJiYKKwl3cml0ZV9zY3JpcHQgLmdpdC9ob29rcy9wb3N0LWluZGV4LWNoYW5nZSA8PC1cRU9GICYmCisJCWlmIHRlc3QgIiQxIiAtZXEgMTsgdGhlbgorCQkJZWNobyAiSW52YWxpZCBjb21iaW5hdGlvbiBvZiBmbGFncyBwYXNzZWQgdG8gaG9vazsgdXBkYXRlZF93b3JrZGlyIGlzIHNldC4iID50ZXN0ZmFpbHVyZQorCQkJZXhpdCAxCisJCWZpCisJCWlmIHRlc3QgIiQyIiAtZXEgMTsgdGhlbgorCQkJZWNobyAiSW52YWxpZCBjb21iaW5hdGlvbiBvZiBmbGFncyBwYXNzZWQgdG8gaG9vazsgdXBkYXRlZF9za2lwd29ya3RyZWUgaXMgc2V0LiIgPnRlc3RmYWlsdXJlCisJCQlleGl0IDEKKwkJZmkKKwkJaWYgdGVzdCAtZiAiLmdpdC9pbmRleC5sb2NrIjsgdGhlbgorCQkJZWNobyAiLmdpdC9pbmRleC5sb2NrIGV4aXN0cyIgPnRlc3RmYWlsdXJlCisJCQlleGl0IDMKKwkJZmkKKwkJaWYgISB0ZXN0IC1mICIuZ2l0L2luZGV4IjsgdGhlbgorCQkJZWNobyAiLmdpdC9pbmRleCBkb2VzIG5vdCBleGlzdCIgPnRlc3RmYWlsdXJlCisJCQlleGl0IDMKKwkJZmkKKwkJZWNobyAic3VjY2VzcyIgPnRlc3RzdWNjZXNzCisJRU9GCisJbWtkaXIgLXAgZGlyMiAmJgorCXRvdWNoIGRpcjIvZmlsZTEudHh0ICYmCisJdG91Y2ggZGlyMi9maWxlMi50eHQgJiYKKwk6IGZvcmNlIGluZGV4IHRvIGJlIGRpcnR5ICYmCisJdGVzdC10b29sIGNobXRpbWUgKzYwIGRpcjEvZmlsZTEudHh0ICYmCisJZ2l0IHN0YXR1cyAmJgorCXRlc3RfcGF0aF9pc19maWxlIHRlc3RzdWNjZXNzICYmIHJtIC1mIHRlc3RzdWNjZXNzICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgdGVzdGZhaWx1cmUgJiYKKwlnaXQgYWRkIC4gJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSB0ZXN0c3VjY2VzcyAmJiBybSAtZiB0ZXN0c3VjY2VzcyAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHRlc3RmYWlsdXJlICYmCisJZ2l0IGNvbW1pdCAtbSAic2Vjb25kIiAmJgorCXRlc3RfcGF0aF9pc19maWxlIHRlc3RzdWNjZXNzICYmIHJtIC1mIHRlc3RzdWNjZXNzICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgdGVzdGZhaWx1cmUgJiYKKwlnaXQgY2hlY2tvdXQgLS0gZGlyMS9maWxlMS50eHQgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSB0ZXN0c3VjY2VzcyAmJiBybSAtZiB0ZXN0c3VjY2VzcyAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHRlc3RmYWlsdXJlICYmCisJZ2l0IHVwZGF0ZS1pbmRleCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHRlc3RzdWNjZXNzICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgdGVzdGZhaWx1cmUgJiYKKwlnaXQgcmVzZXQgLS1zb2Z0ICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgdGVzdHN1Y2Nlc3MgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyB0ZXN0ZmFpbHVyZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd0ZXN0IGNoZWNrb3V0IGFuZCByZXNldCB0cmlnZ2VyIHRoZSBob29rJyAnCisJd3JpdGVfc2NyaXB0IC5naXQvaG9va3MvcG9zdC1pbmRleC1jaGFuZ2UgPDwtXEVPRiAmJgorCQlpZiB0ZXN0ICIkMSIgLWVxIDEgJiYgdGVzdCAiJDIiIC1lcSAxOyB0aGVuCisJCQllY2hvICJJbnZhbGlkIGNvbWJpbmF0aW9uIG9mIGZsYWdzIHBhc3NlZCB0byBob29rOyB1cGRhdGVkX3dvcmtkaXIgYW5kIHVwZGF0ZWRfc2tpcHdvcmt0cmVlIGFyZSBib3RoIHNldC4iID50ZXN0ZmFpbHVyZQorCQkJZXhpdCAxCisJCWZpCisJCWlmIHRlc3QgIiQxIiAtZXEgMCAmJiB0ZXN0ICIkMiIgLWVxIDA7IHRoZW4KKwkJCWVjaG8gIkludmFsaWQgY29tYmluYXRpb24gb2YgZmxhZ3MgcGFzc2VkIHRvIGhvb2s7IG5laXRoZXIgdXBkYXRlZF93b3JrZGlyIG9yIHVwZGF0ZWRfc2tpcHdvcmt0cmVlIGFyZSBzZXQuIiA+dGVzdGZhaWx1cmUKKwkJCWV4aXQgMgorCQlmaQorCQlpZiB0ZXN0ICIkMSIgLWVxIDE7IHRoZW4KKwkJCWlmIHRlc3QgLWYgIi5naXQvaW5kZXgubG9jayI7IHRoZW4KKwkJCQllY2hvICJ1cGRhdGVkX3dvcmtkaXIgc2V0IGJ1dCAuZ2l0L2luZGV4LmxvY2sgZXhpc3RzIiA+dGVzdGZhaWx1cmUKKwkJCQlleGl0IDMKKwkJCWZpCisJCQlpZiAhIHRlc3QgLWYgIi5naXQvaW5kZXgiOyB0aGVuCisJCQkJZWNobyAidXBkYXRlZF93b3JrZGlyIHNldCBidXQgLmdpdC9pbmRleCBkb2VzIG5vdCBleGlzdCIgPnRlc3RmYWlsdXJlCisJCQkJZXhpdCAzCisJCQlmaQorCQllbHNlCisJCQllY2hvICJ1cGRhdGVfd29ya2RpciBzaG91bGQgYmUgc2V0IGZvciBjaGVja291dCIgPnRlc3RmYWlsdXJlCisJCQlleGl0IDQKKwkJZmkKKwkJZWNobyAic3VjY2VzcyIgPnRlc3RzdWNjZXNzCisJRU9GCisJOiBmb3JjZSBpbmRleCB0byBiZSBkaXJ0eSAmJgorCXRlc3QtdG9vbCBjaG10aW1lICs2MCBkaXIxL2ZpbGUxLnR4dCAmJgorCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSB0ZXN0c3VjY2VzcyAmJiBybSAtZiB0ZXN0c3VjY2VzcyAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHRlc3RmYWlsdXJlICYmCisJdGVzdC10b29sIGNobXRpbWUgKzYwIGRpcjEvZmlsZTEudHh0ICYmCisJZ2l0IGNoZWNrb3V0IEhFQUQgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSB0ZXN0c3VjY2VzcyAmJiBybSAtZiB0ZXN0c3VjY2VzcyAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHRlc3RmYWlsdXJlICYmCisJdGVzdC10b29sIGNobXRpbWUgKzYwIGRpcjEvZmlsZTEudHh0ICYmCisJZ2l0IHJlc2V0IC0taGFyZCAmJgorCXRlc3RfcGF0aF9pc19maWxlIHRlc3RzdWNjZXNzICYmIHJtIC1mIHRlc3RzdWNjZXNzICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgdGVzdGZhaWx1cmUgJiYKKwlnaXQgY2hlY2tvdXQgLUIgdGVzdCAmJgorCXRlc3RfcGF0aF9pc19maWxlIHRlc3RzdWNjZXNzICYmIHJtIC1mIHRlc3RzdWNjZXNzICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgdGVzdGZhaWx1cmUKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdCByZXNldCAtLW1peGVkIGFuZCB1cGRhdGUtaW5kZXggdHJpZ2dlcnMgdGhlIGhvb2snICcKKwl3cml0ZV9zY3JpcHQgLmdpdC9ob29rcy9wb3N0LWluZGV4LWNoYW5nZSA8PC1cRU9GICYmCisJCWlmIHRlc3QgIiQxIiAtZXEgMSAmJiB0ZXN0ICIkMiIgLWVxIDE7IHRoZW4KKwkJCWVjaG8gIkludmFsaWQgY29tYmluYXRpb24gb2YgZmxhZ3MgcGFzc2VkIHRvIGhvb2s7IHVwZGF0ZWRfd29ya2RpciBhbmQgdXBkYXRlZF9za2lwd29ya3RyZWUgYXJlIGJvdGggc2V0LiIgPnRlc3RmYWlsdXJlCisJCQlleGl0IDEKKwkJZmkKKwkJaWYgdGVzdCAiJDEiIC1lcSAwICYmIHRlc3QgIiQyIiAtZXEgMDsgdGhlbgorCQkJZWNobyAiSW52YWxpZCBjb21iaW5hdGlvbiBvZiBmbGFncyBwYXNzZWQgdG8gaG9vazsgbmVpdGhlciB1cGRhdGVkX3dvcmtkaXIgb3IgdXBkYXRlZF9za2lwd29ya3RyZWUgYXJlIHNldC4iID50ZXN0ZmFpbHVyZQorCQkJZXhpdCAyCisJCWZpCisJCWlmIHRlc3QgIiQyIiAtZXEgMTsgdGhlbgorCQkJaWYgdGVzdCAtZiAiLmdpdC9pbmRleC5sb2NrIjsgdGhlbgorCQkJCWVjaG8gInVwZGF0ZWRfc2tpcHdvcmt0cmVlIHNldCBidXQgLmdpdC9pbmRleC5sb2NrIGV4aXN0cyIgPnRlc3RmYWlsdXJlCisJCQkJZXhpdCAzCisJCQlmaQorCQkJaWYgISB0ZXN0IC1mICIuZ2l0L2luZGV4IjsgdGhlbgorCQkJCWVjaG8gInVwZGF0ZWRfc2tpcHdvcmt0cmVlIHNldCBidXQgLmdpdC9pbmRleCBkb2VzIG5vdCBleGlzdCIgPnRlc3RmYWlsdXJlCisJCQkJZXhpdCAzCisJCQlmaQorCQllbHNlCisJCQllY2hvICJ1cGRhdGVkX3NraXB3b3JrdHJlZSBzaG91bGQgYmUgc2V0IGZvciByZXNldCAtLW1peGVkIGFuZCB1cGRhdGUtaW5kZXgiID50ZXN0ZmFpbHVyZQorCQkJZXhpdCA0CisJCWZpCisJCWVjaG8gInN1Y2Nlc3MiID50ZXN0c3VjY2VzcworCUVPRgorCTogZm9yY2UgaW5kZXggdG8gYmUgZGlydHkgJiYKKwl0ZXN0LXRvb2wgY2htdGltZSArNjAgZGlyMS9maWxlMS50eHQgJiYKKwlnaXQgcmVzZXQgLS1taXhlZCAtLXF1aWV0IEhFQUR+MSAmJgorCXRlc3RfcGF0aF9pc19maWxlIHRlc3RzdWNjZXNzICYmIHJtIC1mIHRlc3RzdWNjZXNzICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgdGVzdGZhaWx1cmUgJiYKKwlnaXQgaGFzaC1vYmplY3QgLXcgLS1zdGRpbiA8ZGlyMS9maWxlMi50eHQgPmV4cGVjdCAmJgorCWdpdCB1cGRhdGUtaW5kZXggLS1jYWNoZWluZm8gMTAwNjQ0ICIkKGNhdCBleHBlY3QpIiBkaXIxL2ZpbGUxLnR4dCAmJgorCXRlc3RfcGF0aF9pc19maWxlIHRlc3RzdWNjZXNzICYmIHJtIC1mIHRlc3RzdWNjZXNzICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgdGVzdGZhaWx1cmUgJiYKKwlnaXQgdXBkYXRlLWluZGV4IC0tc2tpcC13b3JrdHJlZSBkaXIxL2ZpbGUyLnR4dCAmJgorCWdpdCB1cGRhdGUtaW5kZXggLS1yZW1vdmUgZGlyMS9maWxlMi50eHQgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSB0ZXN0c3VjY2VzcyAmJiBybSAtZiB0ZXN0c3VjY2VzcyAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIHRlc3RmYWlsdXJlCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NzIwMS1jby5zaCBiL3QvdDcyMDEtY28uc2gKaW5kZXggNzJiOWIzNy4uYjY5NmJhZSAxMDA3NTUKLS0tIGEvdC90NzIwMS1jby5zaAorKysgYi90L3Q3MjAxLWNvLnNoCkBAIC0yMjMsMTMgKzIyMyw4IEBACiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZWNrb3V0IHNpbXBsZSAyPmVycnMgJiYKIAl0ZXN0X2kxOG5ncmVwIG92ZXJ3cml0dGVuIGVycnMgJiYKIAotCWdpdCBjaGVja291dCAtLW1lcmdlIHNpbXBsZSAyPmVycnMgJiYKLQl0ZXN0X2kxOG5ncmVwICEgb3ZlcndyaXR0ZW4gZXJycyAmJgotCWdpdCBscy1maWxlcyAtdSAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCBjYXQtZmlsZSAtdCA6MDp0d28gJiYKLQl0ZXN0ICIkKGdpdCBjYXQtZmlsZSAtdCA6MTp0d28pIiA9IGJsb2IgJiYKLQl0ZXN0ICIkKGdpdCBjYXQtZmlsZSAtdCA6Mjp0d28pIiA9IGJsb2IgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgY2F0LWZpbGUgLXQgOjM6dHdvCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYWQtdHJlZSAtLXF1aWV0IC1tIC11IEhFQUQgc2ltcGxlIDI+ZXJycyAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnJzCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrb3V0IHRvIGRldGFjaCBIRUFEICh3aXRoIGFkdmljZSBkZWNsaW5lZCknICcKQEAgLTI1NCw3ICsyNDksNyBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2tvdXQgdG8gZGV0YWNoIEhFQUQnICcKIAlnaXQgY29uZmlnIGFkdmljZS5kZXRhY2hlZEhlYWQgdHJ1ZSAmJgogCWdpdCBjaGVja291dCAtZiByZW5hbWVyICYmIGdpdCBjbGVhbiAtZiAmJgotCUdJVF9URVNUX0dFVFRFWFRfUE9JU09OPSBnaXQgY2hlY2tvdXQgcmVuYW1lcl4gMj5tZXNzYWdlcyAmJgorCUdJVF9URVNUX0dFVFRFWFRfUE9JU09OPWZhbHNlIGdpdCBjaGVja291dCByZW5hbWVyXiAyPm1lc3NhZ2VzICYmCiAJZ3JlcCAiSEVBRCBpcyBub3cgYXQgNzMyOTM4OCIgbWVzc2FnZXMgJiYKIAl0ZXN0X2xpbmVfY291bnQgLWd0IDEgbWVzc2FnZXMgJiYKIAlIPSQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBIRUFEKSAmJgpkaWZmIC0tZ2l0IGEvdC90NzMwMC1jbGVhbi5zaCBiL3QvdDczMDAtY2xlYW4uc2gKaW5kZXggN2IzNjk1NC4uY2I1ZTM0ZCAxMDA3NTUKLS0tIGEvdC90NzMwMC1jbGVhbi5zaAorKysgYi90L3Q3MzAwLWNsZWFuLnNoCkBAIC0xMTcsNiArMTE3LDcgQEAKIAl3b3VsZF9jbGVhbj0kKAogCQljZCBkb2NzICYmCiAJCWdpdCBjbGVhbiAtbiAuLi9zcmMgfAorCQlncmVwIHBhcnQzIHwKIAkJc2VkIC1uIC1lICJzfF5Xb3VsZCByZW1vdmUgfHxwIgogCSkgJiYKIAl2ZXJib3NlIHRlc3QgIiR3b3VsZF9jbGVhbiIgPSAuLi9zcmMvcGFydDMuYwpAQCAtMTI5LDYgKzEzMCw3IEBACiAJd291bGRfY2xlYW49JCgKIAkJY2QgZG9jcyAmJgogCQlnaXQgY2xlYW4gLW4gIiQocHdkKS8uLi9zcmMiIHwKKwkJZ3JlcCBwYXJ0MyB8CiAJCXNlZCAtbiAtZSAic3xeV291bGQgcmVtb3ZlIHx8cCIKIAkpICYmCiAJdmVyYm9zZSB0ZXN0ICIkd291bGRfY2xlYW4iID0gLi4vc3JjL3BhcnQzLmMKQEAgLTU0Nyw3ICs1NDksNyBAQAogCXRlc3RfcGF0aF9pc19taXNzaW5nIHN0cmFuZ2VfYmFyZQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXZpbmcgcGF0aCBpbiBuZXN0ZWQgZ2l0IHdvcmsgdHJlZSB3aWxsIHJlbW92ZSBpdCcgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l2aW5nIHBhdGggaW4gbmVzdGVkIGdpdCB3b3JrIHRyZWUgd2lsbCBOT1QgcmVtb3ZlIGl0JyAnCiAJcm0gLWZyIHJlcG8gJiYKIAlta2RpciByZXBvICYmCiAJKApAQCAtNTU5LDcgKzU2MSw3IEBACiAJZ2l0IGNsZWFuIC1mIC1kIHJlcG8vYmFyL2JheiAmJgogCXRlc3RfcGF0aF9pc19maWxlIHJlcG8vLmdpdC9IRUFEICYmCiAJdGVzdF9wYXRoX2lzX2RpciByZXBvL2Jhci8gJiYKLQl0ZXN0X3BhdGhfaXNfbWlzc2luZyByZXBvL2Jhci9iYXoKKwl0ZXN0X3BhdGhfaXNfZmlsZSByZXBvL2Jhci9iYXovaGVsbG8ud29ybGQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l2aW5nIHBhdGggdG8gbmVzdGVkIC5naXQgd2lsbCBub3QgcmVtb3ZlIGl0JyAnCkBAIC01NzcsNyArNTc5LDcgQEAKIAl0ZXN0X3BhdGhfaXNfZGlyIHVudHJhY2tlZC8KICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l2aW5nIHBhdGggdG8gbmVzdGVkIC5naXQvIHdpbGwgcmVtb3ZlIGNvbnRlbnRzJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXZpbmcgcGF0aCB0byBuZXN0ZWQgLmdpdC8gd2lsbCBOT1QgcmVtb3ZlIGNvbnRlbnRzJyAnCiAJcm0gLWZyIHJlcG8gdW50cmFja2VkICYmCiAJbWtkaXIgcmVwbyB1bnRyYWNrZWQgJiYKIAkoCkBAIC01ODcsNyArNTg5LDcgQEAKIAkpICYmCiAJZ2l0IGNsZWFuIC1mIC1kIHJlcG8vLmdpdC8gJiYKIAl0ZXN0X3BhdGhfaXNfZGlyIHJlcG8vLmdpdCAmJgotCXRlc3RfZGlyX2lzX2VtcHR5IHJlcG8vLmdpdCAmJgorCXRlc3RfcGF0aF9pc19maWxlIHJlcG8vLmdpdC9IRUFEICYmCiAJdGVzdF9wYXRoX2lzX2RpciB1bnRyYWNrZWQvCiAnCiAKQEAgLTY2OSw0ICs2NzEsNzkgQEAKIAl0ZXN0X3BhdGhfaXNfbWlzc2luZyBmb28vYi9iYgogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgY2xlYW4gLWQgc2tpcHMgbmVzdGVkIHJlcG8gY29udGFpbmluZyBpZ25vcmVkIGZpbGVzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtcmYgbmVzdGVkLXJlcG8td2l0aC1pZ25vcmVkLWZpbGUiICYmCisKKwlnaXQgaW5pdCBuZXN0ZWQtcmVwby13aXRoLWlnbm9yZWQtZmlsZSAmJgorCSgKKwkJY2QgbmVzdGVkLXJlcG8td2l0aC1pZ25vcmVkLWZpbGUgJiYKKwkJPmZpbGUgJiYKKwkJZ2l0IGFkZCBmaWxlICYmCisJCWdpdCBjb21taXQgLW0gSW5pdGlhbCAmJgorCisJCSMgVGhpcyBmaWxlIGlzIGlnbm9yZWQgYnkgYSAuZ2l0aWdub3JlIHJ1bGUgaW4gdGhlIG91dGVyIHJlcG8KKwkJIyBhZGRlZCBpbiB0aGUgcHJldmlvdXMgdGVzdC4KKwkJPmlnbm9yZW1lCisJKSAmJgorCisJZ2l0IGNsZWFuIC1mZCAmJgorCisJdGVzdF9wYXRoX2lzX2ZpbGUgbmVzdGVkLXJlcG8td2l0aC1pZ25vcmVkLWZpbGUvLmdpdC9pbmRleCAmJgorCXRlc3RfcGF0aF9pc19maWxlIG5lc3RlZC1yZXBvLXdpdGgtaWdub3JlZC1maWxlL2lnbm9yZW1lICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgbmVzdGVkLXJlcG8td2l0aC1pZ25vcmVkLWZpbGUvZmlsZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgY2xlYW4gaGFuZGxlcyBiZWluZyB0b2xkIHdoYXQgdG8gY2xlYW4nICcKKwlta2RpciAtcCBkMSBkMiAmJgorCXRvdWNoIGQxL3V0IGQyL3V0ICYmCisJZ2l0IGNsZWFuIC1mICovdXQgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBkMS91dCAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIGQyL3V0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBjbGVhbiBoYW5kbGVzIGJlaW5nIHRvbGQgd2hhdCB0byBjbGVhbiwgd2l0aCAtZCcgJworCW1rZGlyIC1wIGQxIGQyICYmCisJdG91Y2ggZDEvdXQgZDIvdXQgJiYKKwlnaXQgY2xlYW4gLWZmZCAqL3V0ICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgZDEvdXQgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBkMi91dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgY2xlYW4gd29ya3MgaWYgYSBnbG9iIGlzIHBhc3NlZCB3aXRob3V0IC1kJyAnCisJbWtkaXIgLXAgZDEgZDIgJiYKKwl0b3VjaCBkMS91dCBkMi91dCAmJgorCWdpdCBjbGVhbiAtZiAiKnV0IiAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIGQxL3V0ICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgZDIvdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGNsZWFuIHdvcmtzIGlmIGEgZ2xvYiBpcyBwYXNzZWQgd2l0aCAtZCcgJworCW1rZGlyIC1wIGQxIGQyICYmCisJdG91Y2ggZDEvdXQgZDIvdXQgJiYKKwlnaXQgY2xlYW4gLWZmZCAiKnV0IiAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIGQxL3V0ICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgZDIvdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBNSU5HVyAnaGFuZGxlIGNsZWFuICYgY29yZS5sb25ncGF0aHMgPSBmYWxzZSBuaWNlbHknICcKKwl0ZXN0X2NvbmZpZyBjb3JlLmxvbmdwYXRocyBmYWxzZSAmJgorCWE1MD1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYSAmJgorCW1rZGlyIC1wICRhNTAkYTUwLyRhNTAkYTUwLyRhNTAkYTUwICYmCisJOiA+IiRhNTAkYTUwL3Rlc3QudHh0IiAyPiIkYTUwJGE1MC8kYTUwJGE1MC8kYTUwJGE1MC90ZXN0LnR4dCIgJiYKKwkjIGNyZWF0ZSBhIHRlbXBvcmFyeSBvdXRzaWRlIHRoZSB3b3JraW5nIHRyZWUgdG8gaGlkZSBmcm9tICJnaXQgY2xlYW4iCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNsZWFuIC14ZGYgMj4uZ2l0L2VyciAmJgorCSMgZ3JlcHBpbmcgZm9yIGEgc3RyZXJyb3Igc3RyaW5nIGlzIHVucG9ydGFibGUgYnV0IGl0IGlzIE9LIGhlcmUgd2l0aAorCSMgTUlOR1cgcHJlcmVxCisJdGVzdF9pMThuZ3JlcCAidG9vIGxvbmciIC5naXQvZXJyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NsZWFuIHVudHJhY2tlZCBwYXRocyBieSBwYXRoc3BlYycgJworCWdpdCBpbml0IHVudHJhY2tlZCAmJgorCW1rZGlyIHVudHJhY2tlZC9kaXIgJiYKKwllY2hvID51bnRyYWNrZWQvZGlyL2ZpbGUudHh0ICYmCisJZ2l0IC1DIHVudHJhY2tlZCBjbGVhbiAtZiBkaXIvZmlsZS50eHQgJiYKKwlscyB1bnRyYWNrZWQvZGlyID5hY3R1YWwgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCisnCisKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NzQwMC1zdWJtb2R1bGUtYmFzaWMuc2ggYi90L3Q3NDAwLXN1Ym1vZHVsZS1iYXNpYy5zaAppbmRleCA3NmE3Y2IwLi5lM2UyYWFiIDEwMDc1NQotLS0gYS90L3Q3NDAwLXN1Ym1vZHVsZS1iYXNpYy5zaAorKysgYi90L3Q3NDAwLXN1Ym1vZHVsZS1iYXNpYy5zaApAQCAtNDYsNiArNDYsMzAgQEAKIAl0ZXN0X211c3RfZmFpbCBnaXQgc3VibW9kdWxlIGluaXQKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnYWRkIGFib3J0cyBvbiByZXBvc2l0b3J5IHdpdGggbm8gY29tbWl0cycgJworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwknIidyZXBvLW5vLWNvbW1pdHMnIicgZG9lcyBub3QgaGF2ZSBhIGNvbW1pdCBjaGVja2VkIG91dAorCUVPRgorCWdpdCBpbml0IHJlcG8tbm8tY29tbWl0cyAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBzdWJtb2R1bGUgYWRkIC4uL2EgLi9yZXBvLW5vLWNvbW1pdHMgMj5hY3R1YWwgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGF0dXMgc2hvdWxkIGlnbm9yZSBpbm5lciBnaXQgcmVwbyB3aGVuIG5vdCBhZGRlZCcgJworCXJtIC1mciBpbm5lciAmJgorCW1rZGlyIGlubmVyICYmCisJKAorCQljZCBpbm5lciAmJgorCQlnaXQgaW5pdCAmJgorCQk+dCAmJgorCQlnaXQgYWRkIHQgJiYKKwkJZ2l0IGNvbW1pdCAtbSAiaW5pdGlhbCIKKwkpICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHN1Ym1vZHVsZSBzdGF0dXMgaW5uZXIgMj5vdXRwdXQuZXJyICYmCisJcm0gLWZyIGlubmVyICYmCisJdGVzdF9pMThuZ3JlcCAiXmVycm9yOiAuKmRpZCBub3QgbWF0Y2ggYW55IGZpbGUocykga25vd24gdG8gZ2l0IiBvdXRwdXQuZXJyCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIC0gcmVwb3NpdG9yeSBpbiBpbml0IHN1YmRpcmVjdG9yeScgJwogCW1rZGlyIGluaXQgJiYKIAkoCkBAIC0xNDcsOSArMTcxLDExIEBACiAJKAogCQljZCBhZGR0ZXN0LWlnbm9yZSAmJgogCQljYXQgPDwtXEVPRiA+ZXhwZWN0ICYmCi0JCVRoZSBmb2xsb3dpbmcgcGF0aCBpcyBpZ25vcmVkIGJ5IG9uZSBvZiB5b3VyIC5naXRpZ25vcmUgZmlsZXM6CisJCVRoZSBmb2xsb3dpbmcgcGF0aHMgYXJlIGlnbm9yZWQgYnkgb25lIG9mIHlvdXIgLmdpdGlnbm9yZSBmaWxlczoKIAkJc3VibW9kCi0JCVVzZSAtZiBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYWRkIGl0LgorCQloaW50OiBVc2UgLWYgaWYgeW91IHJlYWxseSB3YW50IHRvIGFkZCB0aGVtLgorCQloaW50OiBUdXJuIHRoaXMgbWVzc2FnZSBvZmYgYnkgcnVubmluZworCQloaW50OiAiZ2l0IGNvbmZpZyBhZHZpY2UuYWRkSWdub3JlZEZpbGUgZmFsc2UiCiAJCUVPRgogCQkjIERvZXMgbm90IHVzZSB0ZXN0X2NvbW1pdCBkdWUgdG8gdGhlIGlnbm9yZQogCQllY2hvICIqIiA+IC5naXRpZ25vcmUgJiYKQEAgLTE4Miw2ICsyMDgsMTcgQEAKIAkpCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N1Ym1vZHVsZSBhZGQgcmVsYXlzIGFkZCAtLWRyeS1ydW4gc3RkZXJyJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtcmYgYWRkdGVzdC8uZ2l0L2luZGV4LmxvY2siICYmCisJKAorCQljZCBhZGR0ZXN0ICYmCisJCTogPi5naXQvaW5kZXgubG9jayAmJgorCQkhIGdpdCBzdWJtb2R1bGUgYWRkICIkc3VibW9kdXJsIiBzdWItd2hpbGUtbG9ja2VkIDI+b3V0cHV0LmVyciAmJgorCQl0ZXN0X2kxOG5ncmVwICJeZmF0YWw6IC4qaW5kZXhcLmxvY2siIG91dHB1dC5lcnIgJiYKKwkJdGVzdF9wYXRoX2lzX21pc3Npbmcgc3ViLXdoaWxlLWxvY2tlZAorCSkKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3VibW9kdWxlIGFkZCAtLWJyYW5jaCcgJwogCWVjaG8gInJlZnMvaGVhZHMvaW5pdGlhbCIgPmV4cGVjdC1oZWFkICYmCiAJY2F0IDw8LVxFT0YgPmV4cGVjdC1oZWFkcyAmJgpAQCAtMzQ3LDYgKzM4NCwyOCBAQAogCXRlc3RfbGluZV9jb3VudCA9IDEgbGluZXMKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3RhdHVzIGZyb20gc3ViZGlyZWN0b3J5IHNob3VsZCBoYXZlIHRoZSBzYW1lIFNIQTEnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtZGlyIGFkZHRlc3Qvc3ViZGlyIiAmJgorCSgKKwkJY2QgYWRkdGVzdCAmJgorCQlta2RpciBzdWJkaXIgJiYKKwkJZ2l0IHN1Ym1vZHVsZSBzdGF0dXMgPm91dHB1dCAmJgorCQlhd2sgIntwcmludCBcJDF9IiA8b3V0cHV0ID5leHBlY3QgJiYKKwkJY2Qgc3ViZGlyICYmCisJCWdpdCBzdWJtb2R1bGUgc3RhdHVzID4uLi9vdXRwdXQgJiYKKwkJYXdrICJ7cHJpbnQgXCQxfSIgPC4uL291dHB1dCA+Li4vYWN0dWFsICYmCisJCXRlc3RfY21wIC4uL2V4cGVjdCAuLi9hY3R1YWwgJiYKKwkJZ2l0IC1DIC4uL3N1Ym1vZCBjaGVja291dCBIRUFEXiAmJgorCQlnaXQgc3VibW9kdWxlIHN0YXR1cyA+Li4vb3V0cHV0ICYmCisJCWF3ayAie3ByaW50IFwkMX0iIDwuLi9vdXRwdXQgPi4uL2FjdHVhbDIgJiYKKwkJY2QgLi4gJiYKKwkJZ2l0IHN1Ym1vZHVsZSBzdGF0dXMgPm91dHB1dCAmJgorCQlhd2sgIntwcmludCBcJDF9IiA8b3V0cHV0ID5leHBlY3QyICYmCisJCXRlc3RfY21wIGV4cGVjdDIgYWN0dWFsMiAmJgorCQkhIHRlc3RfY21wIGFjdHVhbCBhY3R1YWwyCisJKQorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCAtIGZldGNoIGNvbW1pdCBuYW1lIGZyb20gc3VibW9kdWxlJyAnCiAJcmV2MT0kKGNkIC5zdWJyZXBvICYmIGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKIAlwcmludGYgInJldjE6ICVzXG4iICIkcmV2MSIgJiYKQEAgLTM2OCw2ICs0MjcsMTQgQEAKIAl0ZXN0X2NtcCBleHBlY3QgdXJsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXR1cyBzaG91bGQgc3RpbGwgYmUgIm1pc3NpbmciIGFmdGVyIGluaXRpYWxpemluZycgJworCXJtIC1mciBpbml0ICYmCisJbWtkaXIgaW5pdCAmJgorCWdpdCBzdWJtb2R1bGUgc3RhdHVzID5saW5lcyAmJgorCXJtIC1mciBpbml0ICYmCisJZ3JlcCAiXi0kcmV2MSIgbGluZXMKKycKKwogdGVzdF9mYWlsdXJlX3dpdGhfdW5rbm93bl9zdWJtb2R1bGUgKCkgewogCXRlc3RfbXVzdF9mYWlsIGdpdCBzdWJtb2R1bGUgJDEgbm8tc3VjaC1zdWJtb2R1bGUgMj5vdXRwdXQuZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAiXmVycm9yOiAuKm5vLXN1Y2gtc3VibW9kdWxlIiBvdXRwdXQuZXJyCkBAIC01MTgsNyArNTg1LDYgQEAKIAl0ZXN0X211c3RfZmFpbCBnaXQgY29uZmlnIHN1Ym1vZHVsZS5leGFtcGxlLnVybCAmJgogCiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgaW5pdCAyPiB1cGRhdGUub3V0ICYmCi0JY2F0IHVwZGF0ZS5vdXQgJiYKIAl0ZXN0X2kxOG5ncmVwICJub3QgaW5pdGlhbGl6ZWQiIHVwZGF0ZS5vdXQgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIC0tcmVzb2x2ZS1naXQtZGlyIGluaXQvLmdpdCAmJgogCkBAIC01MzYsNyArNjAyLDYgQEAKIAkoCiAJCWNkIHN1YiAmJgogCQlnaXQgc3VibW9kdWxlIHVwZGF0ZSAuLi9pbml0IDI+dXBkYXRlLm91dCAmJgotCQljYXQgdXBkYXRlLm91dCAmJgogCQl0ZXN0X2kxOG5ncmVwICJub3QgaW5pdGlhbGl6ZWQiIHVwZGF0ZS5vdXQgJiYKIAkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSAtLXJlc29sdmUtZ2l0LWRpciAuLi9pbml0Ly5naXQgJiYKIApAQCAtODA5LDcgKzg3NCw3IEBACiAJCWNwIHByaXN0aW5lLS5naXQtY29uZmlnIC5naXQvY29uZmlnICYmCiAJCWNwIHByaXN0aW5lLS5naXRtb2R1bGVzIC5naXRtb2R1bGVzICYmCiAJCW1rZGlyIC1wIGEvYi9jICYmCi0JCShjZCBhL2IvYyAmJiBnaXQgaW5pdCkgJiYKKwkJKGNkIGEvYi9jICYmIGdpdCBpbml0ICYmIHRlc3RfY29tbWl0IG1zZykgJiYKIAkJZ2l0IGNvbmZpZyByZW1vdGUub3JpZ2luLnVybCAuLi9mb28vYmFyLmdpdCAmJgogCQlnaXQgc3VibW9kdWxlIGFkZCAuLi9iYXIvYS9iL2MgLi9hL2IvYyAmJgogCQlnaXQgc3VibW9kdWxlIGluaXQgJiYKQEAgLTk4NCw2ICsxMDQ5LDExIEBACiAJcm1kaXIgaW5pdAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWJtb2R1bGUgZGVpbml0IHNob3VsZCB1bnNldCBjb3JlLndvcmt0cmVlJyAnCisJdGVzdF9wYXRoX2lzX2ZpbGUgLmdpdC9tb2R1bGVzL2V4YW1wbGUvY29uZmlnICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbmZpZyAtZiAuZ2l0L21vZHVsZXMvZXhhbXBsZS9jb25maWcgY29yZS53b3JrdHJlZQorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWJtb2R1bGUgZGVpbml0IGZyb20gc3ViZGlyZWN0b3J5JyAnCiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLS1pbml0ICYmCiAJZ2l0IGNvbmZpZyBzdWJtb2R1bGUuZXhhbXBsZS5mb28gYmFyICYmCmRpZmYgLS1naXQgYS90L3Q3NDA1LXN1Ym1vZHVsZS1tZXJnZS5zaCBiL3QvdDc0MDUtc3VibW9kdWxlLW1lcmdlLnNoCmluZGV4IDc4NTViZDguLmFhMzM5NzggMTAwNzU1Ci0tLSBhL3QvdDc0MDUtc3VibW9kdWxlLW1lcmdlLnNoCisrKyBiL3QvdDc0MDUtc3VibW9kdWxlLW1lcmdlLnNoCkBAIC00MTcsNyArNDE3LDcgQEAKIAkpCiAnCiAKLXRlc3RfZXhwZWN0X2ZhaWx1cmUgJ2RpcmVjdG9yeS9zdWJtb2R1bGUgY29uZmxpY3Q7IHNob3VsZCBub3QgdHJlYXQgc3VibW9kdWxlIGZpbGVzIGFzIHVudHJhY2tlZCBvciBpbiB0aGUgd2F5JyAnCit0ZXN0X2V4cGVjdF9mYWlsdXJlICFGQUlMX1BSRVJFUVMgJ2RpcmVjdG9yeS9zdWJtb2R1bGUgY29uZmxpY3Q7IHNob3VsZCBub3QgdHJlYXQgc3VibW9kdWxlIGZpbGVzIGFzIHVudHJhY2tlZCBvciBpbiB0aGUgd2F5JyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgLUMgZGlyZWN0b3J5LXN1Ym1vZHVsZS9wYXRoIHJlc2V0IC0taGFyZCIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCAtQyBkaXJlY3Rvcnktc3VibW9kdWxlIHJlc2V0IC0taGFyZCIgJiYKIAkoCmRpZmYgLS1naXQgYS90L3Q3NDA2LXN1Ym1vZHVsZS11cGRhdGUuc2ggYi90L3Q3NDA2LXN1Ym1vZHVsZS11cGRhdGUuc2gKaW5kZXggYWQ3ZDhmYS4uNGZiNDQ3YSAxMDA3NTUKLS0tIGEvdC90NzQwNi1zdWJtb2R1bGUtdXBkYXRlLnNoCisrKyBiL3QvdDc0MDYtc3VibW9kdWxlLXVwZGF0ZS5zaApAQCAtMTU4LDcgKzE1OCw2IEBACiAJdGVzdF9pMThuY21wIGV4cGVjdDIgYWN0dWFsMgogJwogCi1hcG9zPSInIjsKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N1Ym1vZHVsZSB1cGRhdGUgZG9lcyBub3QgZmV0Y2ggYWxyZWFkeSBwcmVzZW50IGNvbW1pdHMnICcKIAkoY2Qgc3VibW9kdWxlICYmCiAJICBlY2hvIGxpbmUzID4+IGZpbGUgJiYKQEAgLTE2OCw3ICsxNjcsNyBAQAogCSkgJiYKIAkoY2Qgc3VwZXIvc3VibW9kdWxlICYmCiAJICBoZWFkPSQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBIRUFEKSAmJgotCSAgZWNobyAiU3VibW9kdWxlIHBhdGggJHthcG9zfXN1Ym1vZHVsZSRhcG9zOiBjaGVja2VkIG91dCAkYXBvcyRoZWFkJGFwb3MiID4gLi4vLi4vZXhwZWN0ZWQgJiYKKwkgIGVjaG8gIlN1Ym1vZHVsZSBwYXRoICR7U1F9c3VibW9kdWxlJFNROiBjaGVja2VkIG91dCAkU1EkaGVhZCRTUSIgPiAuLi8uLi9leHBlY3RlZCAmJgogCSAgZ2l0IHJlc2V0IC0taGFyZCBIRUFEfjEKIAkpICYmCiAJKGNkIHN1cGVyICYmCkBAIC05NTksNyArOTU4LDEwIEBACiAJCWNkIHN1cGVyMyAmJgogCQlzZWQgLWUgInMjdXJsID0gLi4vI3VybCA9IGZpbGU6Ly8kcHdkLyMiIDwuZ2l0bW9kdWxlcyA+LmdpdG1vZHVsZXMudG1wICYmCiAJCW12IC1mIC5naXRtb2R1bGVzLnRtcCAuZ2l0bW9kdWxlcyAmJgotCQl0ZXN0X211c3RfZmFpbCBnaXQgc3VibW9kdWxlIHVwZGF0ZSAtLWluaXQgLS1kZXB0aD0xIDI+YWN0dWFsICYmCisJCSMgU29tZSBwcm90b2NvbCB2ZXJzaW9ucyAoZS5nLiAyKSBzdXBwb3J0IGZldGNoaW5nCisJCSMgdW5hZHZlcnRpc2VkIG9iamVjdHMsIHNvIHJlc3RyaWN0IHRoaXMgdGVzdCB0byB2MC4KKwkJdGVzdF9tdXN0X2ZhaWwgZW52IEdJVF9URVNUX1BST1RPQ09MX1ZFUlNJT049MCBcCisJCQlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtLWluaXQgLS1kZXB0aD0xIDI+YWN0dWFsICYmCiAJCXRlc3RfaTE4bmdyZXAgIkRpcmVjdCBmZXRjaGluZyBvZiB0aGF0IGNvbW1pdCBmYWlsZWQuIiBhY3R1YWwgJiYKIAkJZ2l0IC1DIC4uL3N1Ym1vZHVsZSBjb25maWcgdXBsb2FkcGFjay5hbGxvd1JlYWNoYWJsZVNIQTFJbldhbnQgdHJ1ZSAmJgogCQlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtLWluaXQgLS1kZXB0aD0xID5hY3R1YWwgJiYKZGlmZiAtLWdpdCBhL3QvdDc0MDctc3VibW9kdWxlLWZvcmVhY2guc2ggYi90L3Q3NDA3LXN1Ym1vZHVsZS1mb3JlYWNoLnNoCmluZGV4IDc3NzI5YWMuLjZiMmFhOTEgMTAwNzU1Ci0tLSBhL3QvdDc0MDctc3VibW9kdWxlLWZvcmVhY2guc2gKKysrIGIvdC90NzQwNy1zdWJtb2R1bGUtZm9yZWFjaC5zaApAQCAtNDExLDQgKzQxMSwyMSBAQAogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdvcHRpb24tbGlrZSBhcmd1bWVudHMgcGFzc2VkIHRvIGZvcmVhY2ggY29tbWFuZHMgYXJlIG5vdCBsb3N0JyAnCisJKAorCQljZCBzdXBlciAmJgorCQlnaXQgc3VibW9kdWxlIGZvcmVhY2ggImVjaG8gYmUgLS1xdWlldCIgPiAuLi9leHBlY3RlZCAmJgorCQlnaXQgc3VibW9kdWxlIGZvcmVhY2ggZWNobyBiZSAtLXF1aWV0ID4gLi4vYWN0dWFsCisJKSAmJgorCWdyZXAgLXNxIC1lICItLXF1aWV0IiBleHBlY3RlZCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdvcHRpb24tbGlrZSBhcmd1bWVudHMgcGFzc2VkIHRvIGZvcmVhY2ggcmVjdXJzZSBjb3JyZWN0bHknICcKKwlnaXQgLUMgY2xvbmUyIHN1Ym1vZHVsZSBmb3JlYWNoIC0tcmVjdXJzaXZlICJlY2hvIGJlIC0tYW4tb3B0aW9uIiA+ZXhwZWN0ICYmCisJZ2l0IC1DIGNsb25lMiBzdWJtb2R1bGUgZm9yZWFjaCAtLXJlY3Vyc2l2ZSBlY2hvIGJlIC0tYW4tb3B0aW9uID5hY3R1YWwgJiYKKwlncmVwIC1lICItLWFuLW9wdGlvbiIgZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDc0MTAtc3VibW9kdWxlLWNoZWNrb3V0LXRvLnNoIGIvdC90NzQxMC1zdWJtb2R1bGUtY2hlY2tvdXQtdG8uc2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IGYxYjQ5MmUuLjAwMDAwMDAKLS0tIGEvdC90NzQxMC1zdWJtb2R1bGUtY2hlY2tvdXQtdG8uc2gKKysrIC9kZXYvbnVsbApAQCAtMSw3NyArMCwwIEBACi0jIS9iaW4vc2gKLQotdGVzdF9kZXNjcmlwdGlvbj0nQ29tYmluYXRpb24gb2Ygc3VibW9kdWxlcyBhbmQgbXVsdGlwbGUgd29ya2RpcnMnCi0KLS4gLi90ZXN0LWxpYi5zaAotCi1iYXNlX3BhdGg9JChwd2QgLVApCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwOiBtYWtlIG9yaWdpbicgICcKLQlta2RpciAtcCBvcmlnaW4vc3ViICYmCi0JKAotCQljZCBvcmlnaW4vc3ViICYmIGdpdCBpbml0ICYmCi0JCWVjaG8gZmlsZTEgPmZpbGUxICYmCi0JCWdpdCBhZGQgZmlsZTEgJiYKLQkJZ2l0IGNvbW1pdCAtbSBmaWxlMQotCSkgJiYKLQlta2RpciAtcCBvcmlnaW4vbWFpbiAmJgotCSgKLQkJY2Qgb3JpZ2luL21haW4gJiYgZ2l0IGluaXQgJiYKLQkJZ2l0IHN1Ym1vZHVsZSBhZGQgLi4vc3ViICYmCi0JCWdpdCBjb21taXQgLW0gImFkZCBzdWIiCi0JKSAmJgotCSgKLQkJY2Qgb3JpZ2luL3N1YiAmJgotCQllY2hvIGZpbGUxdXBkYXRlZCA+ZmlsZTEgJiYKLQkJZ2l0IGFkZCBmaWxlMSAmJgotCQlnaXQgY29tbWl0IC1tICJmaWxlMSB1cGRhdGVkIgotCSkgJiYKLQlnaXQgLUMgb3JpZ2luL21haW4vc3ViIHB1bGwgJiYKLQkoCi0JCWNkIG9yaWdpbi9tYWluICYmCi0JCWdpdCBhZGQgc3ViICYmCi0JCWdpdCBjb21taXQgLW0gInN1YiB1cGRhdGVkIgotCSkKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXA6IGNsb25lJyAnCi0JbWtkaXIgY2xvbmUgJiYKLQlnaXQgLUMgY2xvbmUgY2xvbmUgLS1yZWN1cnNpdmUgIiRiYXNlX3BhdGgvb3JpZ2luL21haW4iCi0nCi0KLXJldjFfaGFzaF9tYWluPSQoZ2l0IC0tZ2l0LWRpcj1vcmlnaW4vbWFpbi8uZ2l0IHNob3cgLS1wcmV0dHk9Zm9ybWF0OiVoIC1xICJIRUFEfjEiKQotcmV2MV9oYXNoX3N1Yj0kKGdpdCAtLWdpdC1kaXI9b3JpZ2luL3N1Yi8uZ2l0IHNob3cgLS1wcmV0dHk9Zm9ybWF0OiVoIC1xICJIRUFEfjEiKQotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdjaGVja291dCBtYWluJyAnCi0JbWtkaXIgZGVmYXVsdF9jaGVja291dCAmJgotCWdpdCAtQyBjbG9uZS9tYWluIHdvcmt0cmVlIGFkZCAiJGJhc2VfcGF0aC9kZWZhdWx0X2NoZWNrb3V0L21haW4iICIkcmV2MV9oYXNoX21haW4iCi0nCi0KLXRlc3RfZXhwZWN0X2ZhaWx1cmUgJ2NhbiBzZWUgc3VibW9kdWxlIGRpZmZzIGp1c3QgYWZ0ZXIgY2hlY2tvdXQnICcKLQlnaXQgLUMgZGVmYXVsdF9jaGVja291dC9tYWluIGRpZmYgLS1zdWJtb2R1bGUgbWFzdGVyIl4hIiA+b3V0ICYmCi0JZ3JlcCAiZmlsZTEgdXBkYXRlZCIgb3V0Ci0nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrb3V0IG1haW4gYW5kIGluaXRpYWxpemUgaW5kZXBlbmRlbnQgY2xvbmVzJyAnCi0JbWtkaXIgZnVsbHlfY2xvbmVkX3N1Ym1vZHVsZSAmJgotCWdpdCAtQyBjbG9uZS9tYWluIHdvcmt0cmVlIGFkZCAiJGJhc2VfcGF0aC9mdWxseV9jbG9uZWRfc3VibW9kdWxlL21haW4iICIkcmV2MV9oYXNoX21haW4iICYmCi0JZ2l0IC1DIGZ1bGx5X2Nsb25lZF9zdWJtb2R1bGUvbWFpbiBzdWJtb2R1bGUgdXBkYXRlCi0nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NhbiBzZWUgc3VibW9kdWxlIGRpZmZzIGFmdGVyIGluZGVwZW5kZW50IGNsb25pbmcnICcKLQlnaXQgLUMgZnVsbHlfY2xvbmVkX3N1Ym1vZHVsZS9tYWluIGRpZmYgLS1zdWJtb2R1bGUgbWFzdGVyIl4hIiA+b3V0ICYmCi0JZ3JlcCAiZmlsZTEgdXBkYXRlZCIgb3V0Ci0nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrb3V0IHN1YiBtYW51YWxseScgJwotCW1rZGlyIGxpbmtlZF9zdWJtb2R1bGUgJiYKLQlnaXQgLUMgY2xvbmUvbWFpbiB3b3JrdHJlZSBhZGQgIiRiYXNlX3BhdGgvbGlua2VkX3N1Ym1vZHVsZS9tYWluIiAiJHJldjFfaGFzaF9tYWluIiAmJgotCWdpdCAtQyBjbG9uZS9tYWluL3N1YiB3b3JrdHJlZSBhZGQgIiRiYXNlX3BhdGgvbGlua2VkX3N1Ym1vZHVsZS9tYWluL3N1YiIgIiRyZXYxX2hhc2hfc3ViIgotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdjYW4gc2VlIHN1Ym1vZHVsZSBkaWZmcyBhZnRlciBtYW51YWwgY2hlY2tvdXQgb2YgbGlua2VkIHN1Ym1vZHVsZScgJwotCWdpdCAtQyBsaW5rZWRfc3VibW9kdWxlL21haW4gZGlmZiAtLXN1Ym1vZHVsZSBtYXN0ZXIiXiEiID5vdXQgJiYKLQlncmVwICJmaWxlMSB1cGRhdGVkIiBvdXQKLScKLQotdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q3NDExLXN1Ym1vZHVsZS1jb25maWcuc2ggYi90L3Q3NDExLXN1Ym1vZHVsZS1jb25maWcuc2gKaW5kZXggODk2OTBiNy4uYWQyOGU5MyAxMDA3NTUKLS0tIGEvdC90NzQxMS1zdWJtb2R1bGUtY29uZmlnLnNoCisrKyBiL3QvdDc0MTEtc3VibW9kdWxlLWNvbmZpZy5zaApAQCAtMTQyLDYgKzE0MiwxNSBAQAogCSkKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAndW5zZXR0aW5nIHN1Ym1vZHVsZXMgY29uZmlnIGZyb20gdGhlIHdvcmtpbmcgdHJlZSB3aXRoICJzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgLS11bnNldCInICcKKwkoY2Qgc3VwZXIgJiYKKwkJZ2l0IHN1Ym1vZHVsZS0taGVscGVyIGNvbmZpZyAtLXVuc2V0IHN1Ym1vZHVsZS5zdWJtb2R1bGUudXJsICYmCisJCWdpdCBzdWJtb2R1bGUtLWhlbHBlciBjb25maWcgc3VibW9kdWxlLnN1Ym1vZHVsZS51cmwgPmFjdHVhbCAmJgorCQl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCisJKQorJworCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dyaXRpbmcgc3VibW9kdWxlcyBjb25maWcgd2l0aCAic3VibW9kdWxlLS1oZWxwZXIgY29uZmlnIicgJwogCShjZCBzdXBlciAmJgogCQllY2hvICJuZXdfdXJsIiA+ZXhwZWN0ICYmCkBAIC0yMzQsMTggKzI0MywxNCBAQAogCSkKICcKIAotIyBXaGVuIHRoaXMgdGVzdCBldmVudHVhbGx5IHBhc3NlcywgYmVmb3JlIHR1cm5pbmcgaXQgaW50bwotIyB0ZXN0X2V4cGVjdF9zdWNjZXNzLCByZW1lbWJlciB0byByZXBsYWNlIHRoZSB0ZXN0X2kxOG5ncmVwIGJlbG93IHdpdGgKLSMgYSAidGVzdF9tdXN0X2JlX2VtcHR5IHdhcm5pbmciIHRvIGJlIHN1cmUgdGhhdCB0aGUgd2FybmluZyBpcyBhY3R1YWxseQotIyByZW1vdmVkIGZyb20gdGhlIGNvZGUuCi10ZXN0X2V4cGVjdF9mYWlsdXJlICdyZWFkaW5nIG5lc3RlZCBzdWJtb2R1bGVzIGNvbmZpZyB3aGVuIC5naXRtb2R1bGVzIGlzIG5vdCBpbiB0aGUgd29ya2luZyB0cmVlJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZWFkaW5nIG5lc3RlZCBzdWJtb2R1bGVzIGNvbmZpZyB3aGVuIC5naXRtb2R1bGVzIGlzIG5vdCBpbiB0aGUgd29ya2luZyB0cmVlJyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgLUMgc3VwZXIvc3VibW9kdWxlIGNoZWNrb3V0IC5naXRtb2R1bGVzIiAmJgogCShjZCBzdXBlciAmJgogCQllY2hvICIuL25lc3RlZF9zdWJtb2R1bGUiID5leHBlY3QgJiYKIAkJcm0gc3VibW9kdWxlLy5naXRtb2R1bGVzICYmCiAJCXRlc3QtdG9vbCBzdWJtb2R1bGUtbmVzdGVkLXJlcG8tY29uZmlnIFwKIAkJCXN1Ym1vZHVsZSBzdWJtb2R1bGUubmVzdGVkX3N1Ym1vZHVsZS51cmwgPmFjdHVhbCAyPndhcm5pbmcgJiYKLQkJdGVzdF9pMThuZ3JlcCAibmVzdGVkIHN1Ym1vZHVsZXMgd2l0aG91dCAlcyBpbiB0aGUgd29ya2luZyB0cmVlIGFyZSBub3Qgc3VwcG9ydGVkIHlldCIgd2FybmluZyAmJgorCQl0ZXN0X211c3RfYmVfZW1wdHkgd2FybmluZyAmJgogCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAJKQogJwpkaWZmIC0tZ2l0IGEvdC90NzQxMi1zdWJtb2R1bGUtYWJzb3JiZ2l0ZGlycy5zaCBiL3QvdDc0MTItc3VibW9kdWxlLWFic29yYmdpdGRpcnMuc2gKaW5kZXggY2U3NGMxMi4uMWNmYTE1MCAxMDA3NTUKLS0tIGEvdC90NzQxMi1zdWJtb2R1bGUtYWJzb3JiZ2l0ZGlycy5zaAorKysgYi90L3Q3NDEyLXN1Ym1vZHVsZS1hYnNvcmJnaXRkaXJzLnNoCkBAIC03NSw3ICs3NSwxMiBAQAogCUdJVF9XT1JLX1RSRUU9Li4vLi4vLi4vbmVzdGVkIGdpdCAtQyBzdWIxLy5naXQvbW9kdWxlcy9uZXN0ZWQgY29uZmlnIFwKIAkJY29yZS53b3JrdHJlZSAiLi4vLi4vLi4vbmVzdGVkIiAmJgogCSMgbWFrZSBzdXJlIHRoaXMgcmUtc2V0dXAgaXMgY29ycmVjdAotCWdpdCBzdGF0dXMgLS1pZ25vcmUtc3VibW9kdWxlcz1ub25lCisJZ2l0IHN0YXR1cyAtLWlnbm9yZS1zdWJtb2R1bGVzPW5vbmUgJiYKKworCSMgYWxzbyBtYWtlIHN1cmUgdGhpcyBvbGQgc2V0dXAgZG9lcyBub3QgcmVncmVzcworCWdpdCBzdWJtb2R1bGUgdXBkYXRlIC0taW5pdCAtLXJlY3Vyc2l2ZSA+b3V0IDI+ZXJyICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IG91dCAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnYWJzb3JiIHRoZSBnaXQgZGlyIGluIGEgbmVzdGVkIHN1Ym1vZHVsZScgJwpkaWZmIC0tZ2l0IGEvdC90NzQxNS1zdWJtb2R1bGUtbmFtZXMuc2ggYi90L3Q3NDE1LXN1Ym1vZHVsZS1uYW1lcy5zaAppbmRleCAxNDBlYThjLi5mNzAzNjhiIDEwMDc1NQotLS0gYS90L3Q3NDE1LXN1Ym1vZHVsZS1uYW1lcy5zaAorKysgYi90L3Q3NDE1LXN1Ym1vZHVsZS1uYW1lcy5zaApAQCAtMTU0LDcgKzE1NCw3IEBACiAJCSMgc3ltbGluayBkZXRlY3RvcjsgdGhpcyBncmVwIHN0cmluZyBjb21lcyBmcm9tIHRoZSBjb25maWcKIAkJIyB2YXJpYWJsZSBuYW1lIGFuZCB3aWxsIG5vdCBiZSB0cmFuc2xhdGVkLgogCQl0ZXN0X211c3RfZmFpbCBnaXQgZnNjayAyPm91dHB1dCAmJgotCQlncmVwIGdpdG1vZHVsZXNTeW1saW5rIG91dHB1dAorCQl0ZXN0X2kxOG5ncmVwIGdpdG1vZHVsZXNTeW1saW5rIG91dHB1dAogCSkKICcKIApAQCAtMTcyLDcgKzE3Miw3IEBACiAJCWdpdCBscy10cmVlIEhFQUQgfCBzZWQgcy9zdWJkaXIvLmdpdG1vZHVsZXMvIHwgZ2l0IG1rdHJlZSAmJgogCiAJCXRlc3RfbXVzdF9mYWlsIGdpdCBmc2NrIDI+b3V0cHV0ICYmCi0JCWdyZXAgZ2l0bW9kdWxlc0Jsb2Igb3V0cHV0CisJCXRlc3RfaTE4bmdyZXAgZ2l0bW9kdWxlc0Jsb2Igb3V0cHV0CiAJKQogJwogCkBAIC0xODYsNyArMTg2LDcgQEAKIAkJZ2l0IGNvbW1pdCAtbSAiYnJva2VuIGdpdG1vZHVsZXMiICYmCiAKIAkJZ2l0IGZzY2sgMj5vdXRwdXQgJiYKLQkJZ3JlcCBnaXRtb2R1bGVzUGFyc2Ugb3V0cHV0ICYmCisJCXRlc3RfaTE4bmdyZXAgZ2l0bW9kdWxlc1BhcnNlIG91dHB1dCAmJgogCQl0ZXN0X2kxOG5ncmVwICEgImJhZCBjb25maWciIG91dHB1dAogCSkKICcKQEAgLTIwNyw2ICsyMDcsOSBAQAogCQkJZ2l0IGhhc2gtb2JqZWN0IC13IC0tc3RkaW4pIiAmJgogCQlyZXY9IiQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBIRUFEKSIgJiYKIAkJaGFzaD0iJChlY2hvIHggfCBnaXQgaGFzaC1vYmplY3QgLXcgLS1zdGRpbikiICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCB1cGRhdGUtaW5kZXggLS1hZGQgXAorCQkJLS1jYWNoZWluZm8gMTYwMDAwLCRyZXYsZFxcYSAyPmVyciAmJgorCQl0ZXN0X2kxOG5ncmVwICJJbnZhbGlkIHBhdGgiIGVyciAmJgogCQlnaXQgLWMgY29yZS5wcm90ZWN0TlRGUz1mYWxzZSB1cGRhdGUtaW5kZXggLS1hZGQgXAogCQkJLS1jYWNoZWluZm8gMTAwNjQ0LCRtb2R1bGVzLC5naXRtb2R1bGVzIFwKIAkJCS0tY2FjaGVpbmZvIDE2MDAwMCwkcmV2LGMgXApAQCAtMjE0LDkgKzIxNyw3IEBACiAJCQktLWNhY2hlaW5mbyAxMDA2NDQsJGhhc2gsZC4vYS94IFwKIAkJCS0tY2FjaGVpbmZvIDEwMDY0NCwkaGFzaCxkLi9hLy4uZ2l0ICYmCiAJCXRlc3RfdGljayAmJgotCQlnaXQgLWMgY29yZS5wcm90ZWN0TlRGUz1mYWxzZSBjb21taXQgLW0gIm1vZHVsZSIgJiYKLQkJdGVzdF9tdXN0X2ZhaWwgZ2l0IHNob3cgSEVBRDogMj5lcnIgJiYKLQkJdGVzdF9pMThuZ3JlcCBiYWNrc2xhc2ggZXJyCisJCWdpdCAtYyBjb3JlLnByb3RlY3ROVEZTPWZhbHNlIGNvbW1pdCAtbSAibW9kdWxlIgogCSkgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgLWMgY29yZS5wcm90ZWN0TlRGUz1mYWxzZSBcCiAJCWNsb25lIC0tcmVjdXJzZS1zdWJtb2R1bGVzIHNxdWF0dGluZyBzcXVhdHRpbmctY2xvbmUgMj5lcnIgJiYKQEAgLTI0NCw3ICsyNDUsNyBAQAogCQlnaXQgY29tbWl0IC1tIG5lc3RlZAogCSkgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgY2xvbmUgLS1yZWN1cnNlLXN1Ym1vZHVsZXMgbmVzdGVkIGNsb25lIDI+ZXJyICYmCi0JdGVzdF9pMThuZ3JlcCAtRSAiKGlzIGluc2lkZSBnaXQgZGlyfGhpcHBvIGFscmVhZHkgZXhpc3RzfG5vdCBhIGdpdCByZXBvc2l0b3J5OiAuKi9oaXBwbykiIGVycgorCXRlc3RfaTE4bmdyZXAgImlzIGluc2lkZSBnaXQgZGlyIiBlcnIKICcKIAogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q3NDE5LXN1Ym1vZHVsZS1zZXQtYnJhbmNoLnNoIGIvdC90NzQxOS1zdWJtb2R1bGUtc2V0LWJyYW5jaC5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5mZDI1Zjc4Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NzQxOS1zdWJtb2R1bGUtc2V0LWJyYW5jaC5zaApAQCAtMCwwICsxLDkzIEBACisjIS9iaW4vc2gKKyMKKyMgQ29weXJpZ2h0IChjKSAyMDE5IERlbnRvbiBMaXUKKyMKKwordGVzdF9kZXNjcmlwdGlvbj0nVGVzdCBzdWJtb2R1bGVzIHNldC1icmFuY2ggc3ViY29tbWFuZAorCitUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCB0aGUgc2V0LWJyYW5jaCBzdWJjb21tYW5kIG9mIGdpdC1zdWJtb2R1bGUgaXMgd29ya2luZworYXMgZXhwZWN0ZWQuCisnCisKK1RFU1RfTk9fQ1JFQVRFX1JFUE89MQorLiAuL3Rlc3QtbGliLnNoCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N1Ym1vZHVsZSBjb25maWcgY2FjaGUgc2V0dXAnICcKKwlta2RpciBzdWJtb2R1bGUgJiYKKwkoY2Qgc3VibW9kdWxlICYmCisJCWdpdCBpbml0ICYmCisJCWVjaG8gYSA+YSAmJgorCQlnaXQgYWRkIC4gJiYKKwkJZ2l0IGNvbW1pdCAtbWEgJiYKKwkJZ2l0IGNoZWNrb3V0IC1iIHRvcGljICYmCisJCWVjaG8gYiA+YSAmJgorCQlnaXQgYWRkIC4gJiYKKwkJZ2l0IGNvbW1pdCAtbWIKKwkpICYmCisJbWtkaXIgc3VwZXIgJiYKKwkoY2Qgc3VwZXIgJiYKKwkJZ2l0IGluaXQgJiYKKwkJZ2l0IHN1Ym1vZHVsZSBhZGQgLi4vc3VibW9kdWxlICYmCisJCWdpdCBjb21taXQgLW0gImFkZCBzdWJtb2R1bGUiCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdlbnN1cmUgc3VibW9kdWxlIGJyYW5jaCBpcyB1bnNldCcgJworCShjZCBzdXBlciAmJgorCQkhIGdyZXAgYnJhbmNoIC5naXRtb2R1bGVzCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd0ZXN0IHN1Ym1vZHVsZSBzZXQtYnJhbmNoIC0tYnJhbmNoJyAnCisJKGNkIHN1cGVyICYmCisJCWdpdCBzdWJtb2R1bGUgc2V0LWJyYW5jaCAtLWJyYW5jaCB0b3BpYyBzdWJtb2R1bGUgJiYKKwkJZ3JlcCAiYnJhbmNoID0gdG9waWMiIC5naXRtb2R1bGVzICYmCisJCWdpdCBzdWJtb2R1bGUgdXBkYXRlIC0tcmVtb3RlICYmCisJCWNhdCA8PC1cRU9GID5leHBlY3QgJiYKKwkJYgorCQlFT0YKKwkJZ2l0IC1DIHN1Ym1vZHVsZSBzaG93IC1zIC0tcHJldHR5PSVzID5hY3R1YWwgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorCSkKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdCBzdWJtb2R1bGUgc2V0LWJyYW5jaCAtLWRlZmF1bHQnICcKKwkoY2Qgc3VwZXIgJiYKKwkJZ2l0IHN1Ym1vZHVsZSBzZXQtYnJhbmNoIC0tZGVmYXVsdCBzdWJtb2R1bGUgJiYKKwkJISBncmVwIGJyYW5jaCAuZ2l0bW9kdWxlcyAmJgorCQlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtLXJlbW90ZSAmJgorCQljYXQgPDwtXEVPRiA+ZXhwZWN0ICYmCisJCWEKKwkJRU9GCisJCWdpdCAtQyBzdWJtb2R1bGUgc2hvdyAtcyAtLXByZXR0eT0lcyA+YWN0dWFsICYmCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Rlc3Qgc3VibW9kdWxlIHNldC1icmFuY2ggLWInICcKKwkoY2Qgc3VwZXIgJiYKKwkJZ2l0IHN1Ym1vZHVsZSBzZXQtYnJhbmNoIC1iIHRvcGljIHN1Ym1vZHVsZSAmJgorCQlncmVwICJicmFuY2ggPSB0b3BpYyIgLmdpdG1vZHVsZXMgJiYKKwkJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLS1yZW1vdGUgJiYKKwkJY2F0IDw8LVxFT0YgPmV4cGVjdCAmJgorCQliCisJCUVPRgorCQlnaXQgLUMgc3VibW9kdWxlIHNob3cgLXMgLS1wcmV0dHk9JXMgPmFjdHVhbCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd0ZXN0IHN1Ym1vZHVsZSBzZXQtYnJhbmNoIC1kJyAnCisJKGNkIHN1cGVyICYmCisJCWdpdCBzdWJtb2R1bGUgc2V0LWJyYW5jaCAtZCBzdWJtb2R1bGUgJiYKKwkJISBncmVwIGJyYW5jaCAuZ2l0bW9kdWxlcyAmJgorCQlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtLXJlbW90ZSAmJgorCQljYXQgPDwtXEVPRiA+ZXhwZWN0ICYmCisJCWEKKwkJRU9GCisJCWdpdCAtQyBzdWJtb2R1bGUgc2hvdyAtcyAtLXByZXR0eT0lcyA+YWN0dWFsICYmCisJCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwkpCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NzQyMC1zdWJtb2R1bGUtc2V0LXVybC5zaCBiL3QvdDc0MjAtc3VibW9kdWxlLXNldC11cmwuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uZWYwY2I2ZQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDc0MjAtc3VibW9kdWxlLXNldC11cmwuc2gKQEAgLTAsMCArMSw1NSBAQAorIyEvYmluL3NoCisjCisjIENvcHlyaWdodCAoYykgMjAxOSBEZW50b24gTGl1CisjCisKK3Rlc3RfZGVzY3JpcHRpb249J1Rlc3Qgc3VibW9kdWxlcyBzZXQtdXJsIHN1YmNvbW1hbmQKKworVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgdGhlIHNldC11cmwgc3ViY29tbWFuZCBvZiBnaXQtc3VibW9kdWxlIGlzIHdvcmtpbmcKK2FzIGV4cGVjdGVkLgorJworCitURVNUX05PX0NSRUFURV9SRVBPPTEKKy4gLi90ZXN0LWxpYi5zaAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdWJtb2R1bGUgY29uZmlnIGNhY2hlIHNldHVwJyAnCisJbWtkaXIgc3VibW9kdWxlICYmCisJKAorCQljZCBzdWJtb2R1bGUgJiYKKwkJZ2l0IGluaXQgJiYKKwkJZWNobyBhID5maWxlICYmCisJCWdpdCBhZGQgZmlsZSAmJgorCQlnaXQgY29tbWl0IC1tYQorCSkgJiYKKwlta2RpciBzdXBlciAmJgorCSgKKwkJY2Qgc3VwZXIgJiYKKwkJZ2l0IGluaXQgJiYKKwkJZ2l0IHN1Ym1vZHVsZSBhZGQgLi4vc3VibW9kdWxlICYmCisJCWdpdCBjb21taXQgLW0gImFkZCBzdWJtb2R1bGUiCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd0ZXN0IHN1Ym1vZHVsZSBzZXQtdXJsJyAnCisJIyBhZGQgYSBjb21taXQgYW5kIG1vdmUgdGhlIHN1Ym1vZHVsZSAoY2hhbmdlIHRoZSB1cmwpCisJKAorCQljZCBzdWJtb2R1bGUgJiYKKwkJZWNobyBiID4+ZmlsZSAmJgorCQlnaXQgYWRkIGZpbGUgJiYKKwkJZ2l0IGNvbW1pdCAtbWIKKwkpICYmCisJbXYgc3VibW9kdWxlIG5ld3N1Ym1vZHVsZSAmJgorCisJZ2l0IC1DIG5ld3N1Ym1vZHVsZSBzaG93ID5leHBlY3QgJiYKKwkoCisJCWNkIHN1cGVyICYmCisJCXRlc3RfbXVzdF9mYWlsIGdpdCBzdWJtb2R1bGUgdXBkYXRlIC0tcmVtb3RlICYmCisJCWdpdCBzdWJtb2R1bGUgc2V0LXVybCBzdWJtb2R1bGUgLi4vbmV3c3VibW9kdWxlICYmCisJCWdyZXAgLUYgInVybCA9IC4uL25ld3N1Ym1vZHVsZSIgLmdpdG1vZHVsZXMgJiYKKwkJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLS1yZW1vdGUKKwkpICYmCisJZ2l0IC1DIHN1cGVyL3N1Ym1vZHVsZSBzaG93ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NzUwMC1jb21taXQtdGVtcGxhdGUtc3F1YXNoLXNpZ25vZmYuc2ggYi90L3Q3NTAwLWNvbW1pdC10ZW1wbGF0ZS1zcXVhc2gtc2lnbm9mZi5zaAppbmRleCA0NmE1Y2Q0Li42ZDE5ZWNlIDEwMDc1NQotLS0gYS90L3Q3NTAwLWNvbW1pdC10ZW1wbGF0ZS1zcXVhc2gtc2lnbm9mZi5zaAorKysgYi90L3Q3NTAwLWNvbW1pdC10ZW1wbGF0ZS1zcXVhc2gtc2lnbm9mZi5zaApAQCAtMzgyLDQgKzM4MiwxMyBAQAogCSkKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29tbWl0IHdpdGhvdXQgc3RhZ2luZyBmaWxlcyBmYWlscyBhbmQgZGlzcGxheXMgaGludHMnICcKKwllY2hvICJpbml0aWFsIiA+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCWdpdCBjb21taXQgLW0gaW5pdGlhbCAmJgorCWVjaG8gImNoYW5nZXMiID4+ZmlsZSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBjb21taXQgLW0gdXBkYXRlID5hY3R1YWwgJiYKKwl0ZXN0X2kxOG5ncmVwICJubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdCAodXNlIFwiZ2l0IGFkZFwiIGFuZC9vciBcImdpdCBjb21taXQgLWFcIikiIGFjdHVhbAorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDc1MDEtY29tbWl0LWJhc2ljLWZ1bmN0aW9uYWxpdHkuc2ggYi90L3Q3NTAxLWNvbW1pdC1iYXNpYy1mdW5jdGlvbmFsaXR5LnNoCmluZGV4IGYxMzQ5YWYuLjExMGI0YmYgMTAwNzU1Ci0tLSBhL3QvdDc1MDEtY29tbWl0LWJhc2ljLWZ1bmN0aW9uYWxpdHkuc2gKKysrIGIvdC90NzUwMS1jb21taXQtYmFzaWMtZnVuY3Rpb25hbGl0eS5zaApAQCAtMTUwLDcgKzE1MCw3IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdhbWVuZCBjb21taXQnICcKIAljYXQgPmVkaXRvciA8PC1cRU9GICYmCiAJIyEvYmluL3NoCi0Jc2VkIC1lICJzL2EgZmlsZS9hbiBhbWVuZCBjb21taXQvZyIgPCAiJDEiID4gIiQxLSIKKwlzZWQgLWUgInMvYSBmaWxlL2FuIGFtZW5kIGNvbW1pdC9nIiA8IiQxIiA+IiQxLSIKIAltdiAiJDEtIiAiJDEiCiAJRU9GCiAJY2htb2QgNzU1IGVkaXRvciAmJgpAQCAtMjYzLDcgKzI2Myw3IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdlZGl0aW5nIG1lc3NhZ2UgZnJvbSBvdGhlciBjb21taXQnICcKIAljYXQgPmVkaXRvciA8PC1cRU9GICYmCiAJIyEvYmluL3NoCi0Jc2VkIC1lICJzL2FtZW5kL29sZGVyL2ciICA8ICIkMSIgPiAiJDEtIgorCXNlZCAtZSAicy9hbWVuZC9vbGRlci9nIiAgPCIkMSIgPiIkMS0iCiAJbXYgIiQxLSIgIiQxIgogCUVPRgogCWNobW9kIDc1NSBlZGl0b3IgJiYKQEAgLTI4NSw5ICsyODUsOCBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIFBFUkwgJ2ludGVyYWN0aXZlIGFkZCcgJwotCWVjaG8gNyB8Ci0JZ2l0IGNvbW1pdCAtLWludGVyYWN0aXZlIHwKLQlncmVwICJXaGF0IG5vdyIKKwllY2hvIDcgfCB0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0IC0taW50ZXJhY3RpdmUgPm91dCAmJgorCWdyZXAgIldoYXQgbm93IiBvdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBQRVJMICJjb21taXQgLS1pbnRlcmFjdGl2ZSBkb2Vzbid0IGNoYW5nZSBpbmRleCBpZiBlZGl0b3IgYWJvcnRzIiAnCkBAIC0zNjIsMTIgKzM2MSwxMiBAQAogCW9sZHRpY2s9JEdJVF9BVVRIT1JfREFURSAmJgogCXRlc3RfdGljayAmJgogCWdpdCByZXNldCAtLWhhcmQgJiYKLQlnaXQgY2F0LWZpbGUgLXAgSEVBRCB8CisJZ2l0IGNhdC1maWxlIC1wIEhFQUQgPmNvbW1pdCAmJgogCXNlZCAtZSAicy9hdXRob3IuKi9hdXRob3IgJGF1dGhvciAkb2xkdGljay8iIFwKLQkJLWUgInMvXlwoY29tbWl0dGVyLio+IFwpLiokL1wxJEdJVF9DT01NSVRURVJfREFURS8iID4gXAotCQlleHBlY3RlZCAmJgorCQktZSAicy9eXChjb21taXR0ZXIuKj4gXCkuKiQvXDEkR0lUX0NPTU1JVFRFUl9EQVRFLyIgXAorCQljb21taXQgPmV4cGVjdGVkICYmCiAJZ2l0IGNvbW1pdCAtLWFtZW5kIC0tYXV0aG9yPSIkYXV0aG9yIiAmJgotCWdpdCBjYXQtZmlsZSAtcCBIRUFEID4gY3VycmVudCAmJgorCWdpdCBjYXQtZmlsZSAtcCBIRUFEID5jdXJyZW50ICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgY3VycmVudAogCiAnCkBAIC0zNzcsMTIgKzM3NiwxMiBAQAogCXRlc3RfdGljayAmJgogCW5ld3RpY2s9JEdJVF9BVVRIT1JfREFURSAmJgogCWdpdCByZXNldCAtLWhhcmQgJiYKLQlnaXQgY2F0LWZpbGUgLXAgSEVBRCB8CisJZ2l0IGNhdC1maWxlIC1wIEhFQUQgPmNvbW1pdCAmJgogCXNlZCAtZSAicy9hdXRob3IuKi9hdXRob3IgJGF1dGhvciAkbmV3dGljay8iIFwKLQkJLWUgInMvXlwoY29tbWl0dGVyLio+IFwpLiokL1wxJEdJVF9DT01NSVRURVJfREFURS8iID4gXAotCQlleHBlY3RlZCAmJgorCQktZSAicy9eXChjb21taXR0ZXIuKj4gXCkuKiQvXDEkR0lUX0NPTU1JVFRFUl9EQVRFLyIgXAorCQljb21taXQgPmV4cGVjdGVkICYmCiAJZ2l0IGNvbW1pdCAtLWFtZW5kIC0tZGF0ZT0iJG5ld3RpY2siICYmCi0JZ2l0IGNhdC1maWxlIC1wIEhFQUQgPiBjdXJyZW50ICYmCisJZ2l0IGNhdC1maWxlIC1wIEhFQUQgPmN1cnJlbnQgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZCBjdXJyZW50CiAKICcKQEAgLTQwOSwxMiArNDA4LDEzIEBACiAJZWNobyAxID5wb3NpdGl2ZSAmJgogCWdpdCBhZGQgcG9zaXRpdmUgJiYKIAlnaXQgY29tbWl0IC1zIC1tICJ0aGFuayB5b3UiICYmCi0JZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEIHwgc2VkIC1lICIxLC9eXCQvZCIgPmFjdHVhbCAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCA+Y29tbWl0ICYmCisJc2VkIC1lICIxLC9eXCQvZCIgY29tbWl0ID5hY3R1YWwgJiYKIAkoCiAJCWVjaG8gdGhhbmsgeW91ICYmCiAJCWVjaG8gJiYKLQkJZ2l0IHZhciBHSVRfQ09NTUlUVEVSX0lERU5UIHwKLQkJc2VkIC1lICJzLz4uKi8+LyIgLWUgInMvXi9TaWduZWQtb2ZmLWJ5OiAvIgorCQlnaXQgdmFyIEdJVF9DT01NSVRURVJfSURFTlQgPmlkZW50ICYmCisJCXNlZCAtZSAicy8+LiovPi8iIC1lICJzL14vU2lnbmVkLW9mZi1ieTogLyIgaWRlbnQKIAkpID5leHBlY3RlZCAmJgogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogCkBAIC00MjgsMTMgKzQyOCwxNCBAQAogCWdpdCBjb21taXQgLXMgLW0gInRoYW5rIHlvdQogCiAkZXhpc3RpbmciICYmCi0JZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEIHwgc2VkIC1lICIxLC9eXCQvZCIgPmFjdHVhbCAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCA+Y29tbWl0ICYmCisJc2VkIC1lICIxLC9eXCQvZCIgY29tbWl0ID5hY3R1YWwgJiYKIAkoCiAJCWVjaG8gdGhhbmsgeW91ICYmCiAJCWVjaG8gJiYKIAkJZWNobyAkZXhpc3RpbmcgJiYKLQkJZ2l0IHZhciBHSVRfQ09NTUlUVEVSX0lERU5UIHwKLQkJc2VkIC1lICJzLz4uKi8+LyIgLWUgInMvXi9TaWduZWQtb2ZmLWJ5OiAvIgorCQlnaXQgdmFyIEdJVF9DT01NSVRURVJfSURFTlQgPmlkZW50ICYmCisJCXNlZCAtZSAicy8+LiovPi8iIC1lICJzL14vU2lnbmVkLW9mZi1ieTogLyIgaWRlbnQKIAkpID5leHBlY3RlZCAmJgogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogCkBAIC00NDgsMTMgKzQ0OSwxNCBAQAogCWdpdCBjb21taXQgLXMgLW0gIndlbGNvbWUKIAogJGFsdCIgJiYKLQlnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLWUgIjEsL15cJC9kIiA+IGFjdHVhbCAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCA+Y29tbWl0ICYmCisJc2VkIC1lICIxLC9eXCQvZCIgY29tbWl0ID5hY3R1YWwgJiYKIAkoCiAJCWVjaG8gd2VsY29tZSAmJgogCQllY2hvICYmCiAJCWVjaG8gJGFsdCAmJgotCQlnaXQgdmFyIEdJVF9DT01NSVRURVJfSURFTlQgfAotCQlzZWQgLWUgInMvPi4qLz4vIiAtZSAicy9eL1NpZ25lZC1vZmYtYnk6IC8iCisJCWdpdCB2YXIgR0lUX0NPTU1JVFRFUl9JREVOVCA+aWRlbnQgJiYKKwkJc2VkIC1lICJzLz4uKi8+LyIgLWUgInMvXi9TaWduZWQtb2ZmLWJ5OiAvIiBpZGVudAogCSkgPmV4cGVjdGVkICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCkBAIC00NjgsMTUgKzQ3MCwxNiBAQAogCiBXZSBoYXZlIG5vdwogJGFsdCIgJiYKLQlnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLWUgIjEsL15cJC9kIiA+IGFjdHVhbCAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCA+Y29tbWl0ICYmCisJc2VkIC1lICIxLC9eXCQvZCIgY29tbWl0ID5hY3R1YWwgJiYKIAkoCiAJCWVjaG8gd2VsY29tZSAmJgogCQllY2hvICYmCiAJCWVjaG8gV2UgaGF2ZSBub3cgJiYKIAkJZWNobyAkYWx0ICYmCiAJCWVjaG8gJiYKLQkJZ2l0IHZhciBHSVRfQ09NTUlUVEVSX0lERU5UIHwKLQkJc2VkIC1lICJzLz4uKi8+LyIgLWUgInMvXi9TaWduZWQtb2ZmLWJ5OiAvIgorCQlnaXQgdmFyIEdJVF9DT01NSVRURVJfSURFTlQgPmlkZW50ICYmCisJCXNlZCAtZSAicy8+LiovPi8iIC1lICJzL14vU2lnbmVkLW9mZi1ieTogLyIgaWRlbnQKIAkpID5leHBlY3RlZCAmJgogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwpAQCAtNDg5LDcgKzQ5Miw4IEBACiAKIG5vbi10cmFpbGVyIGxpbmUKIE15Zm9vdGVyOiB4IiAmJgotCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IHNlZCAtZSAiMSwvXlwkL2QiID4gYWN0dWFsICYmCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEID5jb21taXQgJiYKKwlzZWQgLWUgIjEsL15cJC9kIiBjb21taXQgPmFjdHVhbCAmJgogCSgKIAkJZWNobyBzdWJqZWN0ICYmCiAJCWVjaG8gJiYKQEAgLTUwNiw3ICs1MTAsOCBAQAogCiBub24tdHJhaWxlciBsaW5lCiBNeWZvb3RlcjogeCIgJiYKLQlnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLWUgIjEsL15cJC9kIiA+IGFjdHVhbCAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCA+Y29tbWl0ICYmCisJc2VkIC1lICIxLC9eXCQvZCIgY29tbWl0ID5hY3R1YWwgJiYKIAkoCiAJCWVjaG8gc3ViamVjdCAmJgogCQllY2hvICYmCkBAIC01MzgsNyArNTQzLDggQEAKIAk+bmVnYXRpdmUgJiYKIAlnaXQgYWRkIG5lZ2F0aXZlICYmCiAJZ2l0IGNvbW1pdCAtbSAib25lIiAtbSAidHdvIiAtbSAidGhyZWUiICYmCi0JZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEIHwgc2VkIC1lICIxLC9eXCQvZCIgPmFjdHVhbCAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCA+Y29tbWl0ICYmCisJc2VkIC1lICIxLC9eXCQvZCIgY29tbWl0ID5hY3R1YWwgJiYKIAkoCiAJCWVjaG8gb25lICYmCiAJCWVjaG8gJiYKQEAgLTU1NSwyMyArNTYxLDI1IEBACiAJb2xkdGljaz0kR0lUX0FVVEhPUl9EQVRFICYmCiAJdGVzdF90aWNrICYmCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgotCWdpdCBjYXQtZmlsZSAtcCBIRUFEIHwKKwlnaXQgY2F0LWZpbGUgLXAgSEVBRCA+Y29tbWl0ICYmCiAJc2VkIC1lICJzL2F1dGhvci4qL2F1dGhvciAkYXV0aG9yICRvbGR0aWNrLyIgXAotCQktZSAicy9eXChjb21taXR0ZXIuKj4gXCkuKiQvXDEkR0lUX0NPTU1JVFRFUl9EQVRFLyIgPiBcCi0JCWV4cGVjdGVkICYmCisJCS1lICJzL15cKGNvbW1pdHRlci4qPiBcKS4qJC9cMSRHSVRfQ09NTUlUVEVSX0RBVEUvIiBcCisJCWNvbW1pdCA+ZXhwZWN0ZWQgJiYKIAlnaXQgY29tbWl0IC0tYW1lbmQgLS1hdXRob3I9IiRhdXRob3IiICYmCi0JZ2l0IGNhdC1maWxlIC1wIEhFQUQgPiBjdXJyZW50ICYmCisJZ2l0IGNhdC1maWxlIC1wIEhFQUQgPmN1cnJlbnQgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZCBjdXJyZW50CiAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGNvbW1pdCA8ZmlsZT4gd2l0aCBkaXJ0eSBpbmRleCcgJwotCWVjaG8gdGFjb2NhdCA+IGVsaWYgJiYKLQllY2hvIHRlaGx1bHogPiBjaHogJiYKKwllY2hvIHRhY29jYXQgPmVsaWYgJiYKKwllY2hvIHRlaGx1bHogPmNoeiAmJgogCWdpdCBhZGQgY2h6ICYmCiAJZ2l0IGNvbW1pdCBlbGlmIC1tICJ0YWNvY2F0IGlzIGEgcGFsaW5kcm9tZSIgJiYKLQlnaXQgc2hvdyAtLXN0YXQgfCBncmVwIGVsaWYgJiYKLQlnaXQgZGlmZiAtLWNhY2hlZCB8IGdyZXAgY2h6CisJZ2l0IHNob3cgLS1zdGF0ID5zdGF0ICYmCisJZ3JlcCBlbGlmIHN0YXQgJiYKKwlnaXQgZGlmZiAtLWNhY2hlZCA+ZGlmZiAmJgorCWdyZXAgY2h6IGRpZmYKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc2FtZSB0cmVlIChzaW5nbGUgcGFyZW50KScgJwpAQCAtNTg0LDcgKzU5Miw4IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzYW1lIHRyZWUgKHNpbmdsZSBwYXJlbnQpIC0tYWxsb3ctZW1wdHknICcKIAogCWdpdCBjb21taXQgLS1hbGxvdy1lbXB0eSAtbSAiZm9yY2VkIGVtcHR5IiAmJgotCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IGdyZXAgZm9yY2VkCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEID5jb21taXQgJiYKKwlncmVwIGZvcmNlZCBjb21taXQKIAogJwogCmRpZmYgLS1naXQgYS90L3Q3NTAyLWNvbW1pdC1wb3JjZWxhaW4uc2ggYi90L3Q3NTAyLWNvbW1pdC1wb3JjZWxhaW4uc2gKaW5kZXggY2E0YTc0MC4uMTRjOTJlNCAxMDA3NTUKLS0tIGEvdC90NzUwMi1jb21taXQtcG9yY2VsYWluLnNoCisrKyBiL3QvdDc1MDItY29tbWl0LXBvcmNlbGFpbi5zaApAQCAtMTYsNyArMTYsOCBAQAogIyBBcmd1bWVudHM6IFs8cHJlZml4XSBbPGNvbW1pdCBtZXNzYWdlPl0gWzxjb21taXQgb3B0aW9ucz5dCiBjaGVja19zdW1tYXJ5X29uZWxpbmUoKSB7CiAJdGVzdF90aWNrICYmCi0JZ2l0IGNvbW1pdCAkezMrIiQzIn0gLW0gIiQyIiB8IGhlYWQgLTEgPiBhY3QgJiYKKwlnaXQgY29tbWl0ICR7MysiJDMifSAtbSAiJDIiID5yYXcgJiYKKwloZWFkIC1uIDEgcmF3ID5hY3QgJiYKIAogCSMgYnJhbmNoIG5hbWUKIAlTVU1NQVJZX1BSRUZJWD0iJChnaXQgbmFtZS1yZXYgLS1uYW1lLW9ubHkgSEVBRCkiICYmCkBAIC02OCw3ICs2OSw3IEBACiAJZ2l0IGNoZWNrb3V0IHJlY3Vyc2l2ZS1hICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIHJlY3Vyc2l2ZS1iICYmCiAJIyByZXNvbHZlIHRoZSBjb25mbGljdAotCWVjaG8gY29tbWl0LWEgPiBmaWxlMSAmJgorCWVjaG8gY29tbWl0LWEgPmZpbGUxICYmCiAJZ2l0IGFkZCBmaWxlMSAmJgogCWNoZWNrX3N1bW1hcnlfb25lbGluZSAiIiAiTWVyZ2UiCiAnCkBAIC0xNDIsOSArMTQzLDExIEBACiAJPnBvc2l0aXZlICYmCiAJZ2l0IGFkZCBwb3NpdGl2ZSAmJgogCWdpdCBjb21taXQgLXMgLW0gInRoYW5rIHlvdSIgJiYKLQlhY3R1YWw9JChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLW5lICJzL1NpZ25lZC1vZmYtYnk6IC8vcCIpICYmCi0JZXhwZWN0ZWQ9JChnaXQgdmFyIEdJVF9DT01NSVRURVJfSURFTlQgfCBzZWQgLWUgInMvPi4qLz4vIikgJiYKLQl0ZXN0ICJ6JGFjdHVhbCIgPSAieiRleHBlY3RlZCIKKwlnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgPmNvbW1pdC5tc2cgJiYKKwlzZWQgLW5lICJzL1NpZ25lZC1vZmYtYnk6IC8vcCIgY29tbWl0Lm1zZyA+YWN0dWFsICYmCisJZ2l0IHZhciBHSVRfQ09NTUlUVEVSX0lERU5UID5pZGVudCAmJgorCXNlZCAtZSAicy8+LiovPi8iIGlkZW50ID5leHBlY3RlZCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogCiAnCiAKQEAgLTE1Myw4ICsxNTYsOCBAQAogCT5uZWdhdGl2ZSAmJgogCWdpdCBhZGQgbmVnYXRpdmUgJiYKIAlnaXQgY29tbWl0IC1tICJvbmUiIC1tICJ0d28iIC1tICJ0aHJlZSIgJiYKLQlhY3R1YWw9JChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgfCBzZWQgLWUgIjEsL15cJC9kIikgJiYKLQlleHBlY3RlZD0kKGVjaG8gb25lOyBlY2hvOyBlY2hvIHR3bzsgZWNobzsgZWNobyB0aHJlZSkgJiYKKwlhY3R1YWw9JChnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgPnRtcCAmJiBzZWQgLWUgIjEsL15cJC9kIiB0bXAgJiYgcm0gdG1wKSAmJgorCWV4cGVjdGVkPSQodGVzdF93cml0ZV9saW5lcyAib25lIiAiIiAidHdvIiAiIiAidGhyZWUiKSAmJgogCXRlc3QgInokYWN0dWFsIiA9ICJ6JGV4cGVjdGVkIgogCiAnCkBAIC0xNjMsNyArMTY2LDggQEAKIAogCWVjaG8gbWludXMgPm5lZ2F0aXZlICYmCiAJZ2l0IGFkZCBuZWdhdGl2ZSAmJgotCWdpdCBzdGF0dXMgLXYgfCBzZWQgLW5lICIvXmRpZmYgLS1naXQgL3AiID5hY3R1YWwgJiYKKwlnaXQgc3RhdHVzIC12ID5yYXcgJiYKKwlzZWQgLW5lICIvXmRpZmYgLS1naXQgL3AiIHJhdyA+YWN0dWFsICYmCiAJZWNobyAiZGlmZiAtLWdpdCBhL25lZ2F0aXZlIGIvbmVnYXRpdmUiID5leHBlY3QgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAKQEAgLTE4OSw3ICsxOTMsOCBAQAogCiAJZWNobyA+Pm5lZ2F0aXZlICYmCiAJZ2l0IGNvbW1pdCAtLWNsZWFudXA9dmVyYmF0aW0gLS1uby1zdGF0dXMgLXQgZXhwZWN0IC1hICYmCi0JZ2l0IGNhdC1maWxlIC1wIEhFQUQgfHNlZCAtZSAiMSwvXlwkL2QiID5hY3R1YWwgJiYKKwlnaXQgY2F0LWZpbGUgLXAgSEVBRCA+cmF3ICYmCisJc2VkIC1lICIxLC9eXCQvZCIgcmF3ID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAKICcKQEAgLTE5OCw3ICsyMDMsOCBAQAogCiAJZWNobyA+Pm5lZ2F0aXZlICYmCiAJZ2l0IGNvbW1pdCAtLWNsZWFudXA9dmVyYmF0aW0gLUYgZXhwZWN0IC1hICYmCi0JZ2l0IGNhdC1maWxlIC1wIEhFQUQgfHNlZCAtZSAiMSwvXlwkL2QiPmFjdHVhbCAmJgorCWdpdCBjYXQtZmlsZSAtcCBIRUFEID5yYXcgJiYKKwlzZWQgLWUgIjEsL15cJC9kIiByYXcgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKIAogJwpAQCAtMjA3LDcgKzIxMyw4IEBACiAKIAllY2hvID4+bmVnYXRpdmUgJiYKIAlnaXQgY29tbWl0IC0tY2xlYW51cD12ZXJiYXRpbSAtbSAiJG1lc2dfd2l0aF9jb21tZW50X2FuZF9uZXdsaW5lcyIgLWEgJiYKLQlnaXQgY2F0LWZpbGUgLXAgSEVBRCB8c2VkIC1lICIxLC9eXCQvZCI+YWN0dWFsICYmCisJZ2l0IGNhdC1maWxlIC1wIEhFQUQgPnJhdyAmJgorCXNlZCAtZSAiMSwvXlwkL2QiIHJhdyA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogCiAnCkBAIC0yMTUsMTAgKzIyMiwxMSBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xlYW51cCBjb21taXQgbWVzc2FnZXMgKHdoaXRlc3BhY2Ugb3B0aW9uLC1GKScgJwogCiAJZWNobyA+Pm5lZ2F0aXZlICYmCi0JeyBlY2hvO2VjaG8gIiMgdGV4dCI7ZWNobzsgfSA+dGV4dCAmJgorCXRlc3Rfd3JpdGVfbGluZXMgIiIgIiMgdGV4dCIgIiIgPnRleHQgJiYKIAllY2hvICIjIHRleHQiID5leHBlY3QgJiYKIAlnaXQgY29tbWl0IC0tY2xlYW51cD13aGl0ZXNwYWNlIC1GIHRleHQgLWEgJiYKLQlnaXQgY2F0LWZpbGUgLXAgSEVBRCB8c2VkIC1lICIxLC9eXCQvZCI+YWN0dWFsICYmCisJZ2l0IGNhdC1maWxlIC1wIEhFQUQgPnJhdyAmJgorCXNlZCAtZSAiMSwvXlwkL2QiIHJhdyA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogCiAnCkBAIC0yMjYsNDggKzIzNCw1MSBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xlYW51cCBjb21taXQgbWVzc2FnZXMgKHNjaXNzb3JzIG9wdGlvbiwtRiwtZSknICcKIAogCWVjaG8gPj5uZWdhdGl2ZSAmJgotCWNhdCA+dGV4dCA8PEVPRiAmJgorCWNhdCA+dGV4dCA8PC1cRU9GICYmCiAKLSMgdG8gYmUga2VwdAorCSMgdG8gYmUga2VwdAogCi0gICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tID44IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIyB0byBiZSBrZXB0LCB0b28KLSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tID44IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotdG8gYmUgcmVtb3ZlZAotIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gPjggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi10byBiZSByZW1vdmVkLCB0b28KLUVPRgorCSAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gPjggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisJIyB0byBiZSBrZXB0LCB0b28KKwkjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSA+OCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwl0byBiZSByZW1vdmVkCisJIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gPjggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisJdG8gYmUgcmVtb3ZlZCwgdG9vCisJRU9GCiAKLQljYXQgPmV4cGVjdCA8PEVPRiAmJgotIyB0byBiZSBrZXB0CisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCSMgdG8gYmUga2VwdAogCi0gICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tID44IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIyB0byBiZSBrZXB0LCB0b28KLUVPRgorCSAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gPjggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisJIyB0byBiZSBrZXB0LCB0b28KKwlFT0YKIAlnaXQgY29tbWl0IC0tY2xlYW51cD1zY2lzc29ycyAtZSAtRiB0ZXh0IC1hICYmCi0JZ2l0IGNhdC1maWxlIC1wIEhFQUQgfHNlZCAtZSAiMSwvXlwkL2QiPmFjdHVhbCAmJgorCWdpdCBjYXQtZmlsZSAtcCBIRUFEID5yYXcgJiYKKwlzZWQgLWUgIjEsL15cJC9kIiByYXcgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xlYW51cCBjb21taXQgbWVzc2FnZXMgKHNjaXNzb3JzIG9wdGlvbiwtRiwtZSwgc2Npc3NvcnMgb24gZmlyc3QgbGluZSknICcKIAogCWVjaG8gPj5uZWdhdGl2ZSAmJgotCWNhdCA+dGV4dCA8PEVPRiAmJgotIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gPjggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi10byBiZSByZW1vdmVkCi1FT0YKKwljYXQgPnRleHQgPDwtXEVPRiAmJgorCSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tID44IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCXRvIGJlIHJlbW92ZWQKKwlFT0YKIAlnaXQgY29tbWl0IC0tY2xlYW51cD1zY2lzc29ycyAtZSAtRiB0ZXh0IC1hIC0tYWxsb3ctZW1wdHktbWVzc2FnZSAmJgotCWdpdCBjYXQtZmlsZSAtcCBIRUFEIHxzZWQgLWUgIjEsL15cJC9kIj5hY3R1YWwgJiYKKwlnaXQgY2F0LWZpbGUgLXAgSEVBRCA+cmF3ICYmCisJc2VkIC1lICIxLC9eXCQvZCIgcmF3ID5hY3R1YWwgJiYKIAl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NsZWFudXAgY29tbWl0IG1lc3NhZ2VzIChzdHJpcCBvcHRpb24sLUYpJyAnCiAKIAllY2hvID4+bmVnYXRpdmUgJiYKLQl7IGVjaG87ZWNobyAiIyB0ZXh0IjtlY2hvIHNhbXBsZTtlY2hvOyB9ID50ZXh0ICYmCisJdGVzdF93cml0ZV9saW5lcyAiIiAiIyB0ZXh0IiAic2FtcGxlIiAiIiA+dGV4dCAmJgogCWVjaG8gc2FtcGxlID5leHBlY3QgJiYKIAlnaXQgY29tbWl0IC0tY2xlYW51cD1zdHJpcCAtRiB0ZXh0IC1hICYmCi0JZ2l0IGNhdC1maWxlIC1wIEhFQUQgfHNlZCAtZSAiMSwvXlwkL2QiPmFjdHVhbCAmJgorCWdpdCBjYXQtZmlsZSAtcCBIRUFEID5yYXcgJiYKKwlzZWQgLWUgIjEsL15cJC9kIiByYXcgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKIAogJwpAQCAtMjc1LDcgKzI4Niw3IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdjbGVhbnVwIGNvbW1pdCBtZXNzYWdlcyAoc3RyaXAgb3B0aW9uLC1GLC1lKScgJwogCiAJZWNobyA+Pm5lZ2F0aXZlICYmCi0JeyBlY2hvO2VjaG8gc2FtcGxlO2VjaG87IH0gPnRleHQgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzICIiICJzYW1wbGUiICIiID50ZXh0ICYmCiAJZ2l0IGNvbW1pdCAtZSAtRiB0ZXh0IC1hICYmCiAJaGVhZCAtbiA0IC5naXQvQ09NTUlUX0VESVRNU0cgPmFjdHVhbAogJwpAQCAtMzg3LDExICszOTgsMTEgQEAKICcKIAogd3JpdGVfc2NyaXB0IC5naXQvRkFLRV9FRElUT1IgPDxFT0YKLWVjaG8gZWRpdG9yIHN0YXJ0ZWQgPiAiJChwd2QpLy5naXQvcmVzdWx0IgorZWNobyBlZGl0b3Igc3RhcnRlZCA+IiQocHdkKS8uZ2l0L3Jlc3VsdCIKIGV4aXQgMAogRU9GCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgIUFVVE9JREVOVCAnZG8gbm90IGZpcmUgZWRpdG9yIHdoZW4gY29tbWl0dGVyIGlzIGJvZ3VzJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICFGQUlMX1BSRVJFUVMsIUFVVE9JREVOVCAnZG8gbm90IGZpcmUgZWRpdG9yIHdoZW4gY29tbWl0dGVyIGlzIGJvZ3VzJyAnCiAJPi5naXQvcmVzdWx0ICYmCiAKIAllY2hvID4+bmVnYXRpdmUgJiYKQEAgLTQ1NSw3ICs0NjYsNyBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyBFWEVDS0VFUFNQSUQgJ2EgU0lHVEVSTSBzaG91bGQgYnJlYWsgbG9ja3MnICcKIAllY2hvID4+bmVnYXRpdmUgJiYKIAkhICIkU0hFTExfUEFUSCIgLWMgJ1wnJwotCSAgZWNobyBraWxsIC1URVJNICQkID4+IC5naXQvRkFLRV9FRElUT1IKKwkgIGVjaG8ga2lsbCAtVEVSTSAkJCA+Pi5naXQvRkFLRV9FRElUT1IKIAkgIEdJVF9FRElUT1I9LmdpdC9GQUtFX0VESVRPUgogCSAgZXhwb3J0IEdJVF9FRElUT1IKIAkgIGV4ZWMgZ2l0IGNvbW1pdCAtYSdcJycgJiYKQEAgLTQ3MSw3ICs0ODIsOCBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBzZWNvbmQgbWFzdGVyICYmCiAJZ2l0IGNoZWNrb3V0IG1hc3RlciBnICYmCiAJRURJVE9SPTogZ2l0IGNvbW1pdCAtYSAmJgotCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IHNlZCAtbiAtZSAicy9ecGFyZW50IC8vcCIgLWUgIi9eJC9xIiA+YWN0dWFsICYmCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEID5yYXcgJiYKKwlzZWQgLW4gLWUgInMvXnBhcmVudCAvL3AiIC1lICIvXiQvcSIgcmF3ID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAKICcKQEAgLTQ4MCw3ICs0OTIsOCBAQAogCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWdpdCBjb21taXQgLXMgLW0gImhlbGxvOiBraXR0eSIgLS1hbGxvdy1lbXB0eSAmJgotCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IHNlZCAtZSAiMSwvXiQvZCIgPmFjdHVhbCAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCA+cmF3ICYmCisJc2VkIC1lICIxLC9eJC9kIiByYXcgPmFjdHVhbCAmJgogCXRlc3RfbGluZV9jb3VudCA9IDMgYWN0dWFsCiAKICcKZGlmZiAtLWdpdCBhL3QvdDc1MDMtcHJlLWNvbW1pdC1hbmQtcHJlLW1lcmdlLWNvbW1pdC1ob29rcy5zaCBiL3QvdDc1MDMtcHJlLWNvbW1pdC1hbmQtcHJlLW1lcmdlLWNvbW1pdC1ob29rcy5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5iMzQ4NTQ1Ci0tLSAvZGV2L251bGwKKysrIGIvdC90NzUwMy1wcmUtY29tbWl0LWFuZC1wcmUtbWVyZ2UtY29tbWl0LWhvb2tzLnNoCkBAIC0wLDAgKzEsMjgxIEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0ncHJlLWNvbW1pdCBhbmQgcHJlLW1lcmdlLWNvbW1pdCBob29rcycKKworLiAuL3Rlc3QtbGliLnNoCisKK0hPT0tESVI9IiQoZ2l0IHJldi1wYXJzZSAtLWdpdC1kaXIpL2hvb2tzIgorUFJFQ09NTUlUPSIkSE9PS0RJUi9wcmUtY29tbWl0IgorUFJFTUVSR0U9IiRIT09LRElSL3ByZS1tZXJnZS1jb21taXQiCisKKyMgUHJlcGFyZSBzYW1wbGUgc2NyaXB0cyB0aGF0IHdyaXRlIHRoZWlyICQwIHRvIGFjdHVhbF9ob29rcwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2FtcGxlIHNjcmlwdCBzZXR1cCcgJworCW1rZGlyIC1wICIkSE9PS0RJUiIgJiYKKwl3cml0ZV9zY3JpcHQgIiRIT09LRElSL3N1Y2Nlc3Muc2FtcGxlIiA8PC1cRU9GICYmCisJZWNobyAkMCA+PmFjdHVhbF9ob29rcworCWV4aXQgMAorCUVPRgorCXdyaXRlX3NjcmlwdCAiJEhPT0tESVIvZmFpbC5zYW1wbGUiIDw8LVxFT0YgJiYKKwllY2hvICQwID4+YWN0dWFsX2hvb2tzCisJZXhpdCAxCisJRU9GCisJd3JpdGVfc2NyaXB0ICIkSE9PS0RJUi9ub24tZXhlYy5zYW1wbGUiIDw8LVxFT0YgJiYKKwllY2hvICQwID4+YWN0dWFsX2hvb2tzCisJZXhpdCAxCisJRU9GCisJY2htb2QgLXggIiRIT09LRElSL25vbi1leGVjLnNhbXBsZSIgJiYKKwl3cml0ZV9zY3JpcHQgIiRIT09LRElSL3JlcXVpcmUtcHJlZml4LnNhbXBsZSIgPDwtXEVPRiAmJgorCWVjaG8gJDAgPj5hY3R1YWxfaG9va3MKKwl0ZXN0ICRHSVRfUFJFRklYID0gInN1Y2Nlc3MvIgorCUVPRgorCXdyaXRlX3NjcmlwdCAiJEhPT0tESVIvY2hlY2stYXV0aG9yLnNhbXBsZSIgPDwtXEVPRgorCWVjaG8gJDAgPj5hY3R1YWxfaG9va3MKKwl0ZXN0ICIkR0lUX0FVVEhPUl9OQU1FIiA9ICJOZXcgQXV0aG9yIiAmJgorCXRlc3QgIiRHSVRfQVVUSE9SX0VNQUlMIiA9ICJuZXdhdXRob3JAZXhhbXBsZS5jb20iCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Jvb3QgY29tbWl0JyAnCisJZWNobyAicm9vdCIgPmZpbGUgJiYKKwlnaXQgYWRkIGZpbGUgJiYKKwlnaXQgY29tbWl0IC1tICJ6ZXJvdGgiICYmCisJZ2l0IGNoZWNrb3V0IC1iIHNpZGUgJiYKKwllY2hvICJmb28iID5mb28gJiYKKwlnaXQgYWRkIGZvbyAmJgorCWdpdCBjb21taXQgLW0gIm1ha2UgaXQgbm9uLWZmIiAmJgorCWdpdCBicmFuY2ggc2lkZS1vcmlnIHNpZGUgJiYKKwlnaXQgY2hlY2tvdXQgbWFzdGVyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIGNvbmZsaWN0aW5nIGJyYW5jaGVzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY2hlY2tvdXQgbWFzdGVyIiAmJgorCWdpdCBjaGVja291dCAtYiBjb25mbGljdGluZy1hIG1hc3RlciAmJgorCWVjaG8gYSA+Y29uZmxpY3RpbmcgJiYKKwlnaXQgYWRkIGNvbmZsaWN0aW5nICYmCisJZ2l0IGNvbW1pdCAtbSBjb25mbGljdGluZy1hICYmCisJZ2l0IGNoZWNrb3V0IC1iIGNvbmZsaWN0aW5nLWIgbWFzdGVyICYmCisJZWNobyBiID5jb25mbGljdGluZyAmJgorCWdpdCBhZGQgY29uZmxpY3RpbmcgJiYKKwlnaXQgY29tbWl0IC1tIGNvbmZsaWN0aW5nLWIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnd2l0aCBubyBob29rJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBhY3R1YWxfaG9va3MiICYmCisJZWNobyAiZm9vIiA+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCWdpdCBjb21taXQgLW0gImZpcnN0IiAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIGFjdHVhbF9ob29rcworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd3aXRoIG5vIGhvb2sgKG1lcmdlKScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgYWN0dWFsX2hvb2tzIiAmJgorCWdpdCBicmFuY2ggLWYgc2lkZSBzaWRlLW9yaWcgJiYKKwlnaXQgY2hlY2tvdXQgc2lkZSAmJgorCWdpdCBtZXJnZSAtbSAibWVyZ2UgbWFzdGVyIiBtYXN0ZXIgJiYKKwlnaXQgY2hlY2tvdXQgbWFzdGVyICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgYWN0dWFsX2hvb2tzCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tbm8tdmVyaWZ5IHdpdGggbm8gaG9vaycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgYWN0dWFsX2hvb2tzIiAmJgorCWVjaG8gImJhciIgPmZpbGUgJiYKKwlnaXQgYWRkIGZpbGUgJiYKKwlnaXQgY29tbWl0IC0tbm8tdmVyaWZ5IC1tICJiYXIiICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgYWN0dWFsX2hvb2tzCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tbm8tdmVyaWZ5IHdpdGggbm8gaG9vayAobWVyZ2UpJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBhY3R1YWxfaG9va3MiICYmCisJZ2l0IGJyYW5jaCAtZiBzaWRlIHNpZGUtb3JpZyAmJgorCWdpdCBjaGVja291dCBzaWRlICYmCisJZ2l0IG1lcmdlIC0tbm8tdmVyaWZ5IC1tICJtZXJnZSBtYXN0ZXIiIG1hc3RlciAmJgorCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBhY3R1YWxfaG9va3MKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnd2l0aCBzdWNjZWVkaW5nIGhvb2snICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIFwiJFBSRUNPTU1JVFwiIGV4cGVjdGVkX2hvb2tzIGFjdHVhbF9ob29rcyIgJiYKKwljcCAiJEhPT0tESVIvc3VjY2Vzcy5zYW1wbGUiICIkUFJFQ09NTUlUIiAmJgorCWVjaG8gIiRQUkVDT01NSVQiID5leHBlY3RlZF9ob29rcyAmJgorCWVjaG8gIm1vcmUiID4+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCWdpdCBjb21taXQgLW0gIm1vcmUiICYmCisJdGVzdF9jbXAgZXhwZWN0ZWRfaG9va3MgYWN0dWFsX2hvb2tzCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dpdGggc3VjY2VlZGluZyBob29rIChtZXJnZSknICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIFwiJFBSRU1FUkdFXCIgZXhwZWN0ZWRfaG9va3MgYWN0dWFsX2hvb2tzIiAmJgorCWNwICIkSE9PS0RJUi9zdWNjZXNzLnNhbXBsZSIgIiRQUkVNRVJHRSIgJiYKKwllY2hvICIkUFJFTUVSR0UiID5leHBlY3RlZF9ob29rcyAmJgorCWdpdCBjaGVja291dCBzaWRlICYmCisJZ2l0IG1lcmdlIC1tICJtZXJnZSBtYXN0ZXIiIG1hc3RlciAmJgorCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZF9ob29rcyBhY3R1YWxfaG9va3MKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnYXV0b21hdGljIG1lcmdlIGZhaWxzOyBib3RoIGhvb2tzIGFyZSBhdmFpbGFibGUnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIFwiJFBSRU1FUkdFXCIgXCIkUFJFQ09NTUlUXCIiICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBleHBlY3RlZF9ob29rcyBhY3R1YWxfaG9va3MiICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY2hlY2tvdXQgbWFzdGVyIiAmJgorCWNwICIkSE9PS0RJUi9zdWNjZXNzLnNhbXBsZSIgIiRQUkVNRVJHRSIgJiYKKwljcCAiJEhPT0tESVIvc3VjY2Vzcy5zYW1wbGUiICIkUFJFQ09NTUlUIiAmJgorCisJZ2l0IGNoZWNrb3V0IGNvbmZsaWN0aW5nLWEgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLW0gIm1lcmdlIGNvbmZsaWN0aW5nLWIiIGNvbmZsaWN0aW5nLWIgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBhY3R1YWxfaG9va3MgJiYKKworCWVjaG8gIiRQUkVDT01NSVQiID5leHBlY3RlZF9ob29rcyAmJgorCWVjaG8gYStiID5jb25mbGljdGluZyAmJgorCWdpdCBhZGQgY29uZmxpY3RpbmcgJiYKKwlnaXQgY29tbWl0IC1tICJyZXNvbHZlIGNvbmZsaWN0IiAmJgorCXRlc3RfY21wIGV4cGVjdGVkX2hvb2tzIGFjdHVhbF9ob29rcworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLW5vLXZlcmlmeSB3aXRoIHN1Y2NlZWRpbmcgaG9vaycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgXCIkUFJFQ09NTUlUXCIgYWN0dWFsX2hvb2tzIiAmJgorCWNwICIkSE9PS0RJUi9zdWNjZXNzLnNhbXBsZSIgIiRQUkVDT01NSVQiICYmCisJZWNobyAiZXZlbiBtb3JlIiA+PmZpbGUgJiYKKwlnaXQgYWRkIGZpbGUgJiYKKwlnaXQgY29tbWl0IC0tbm8tdmVyaWZ5IC1tICJldmVuIG1vcmUiICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgYWN0dWFsX2hvb2tzCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tbm8tdmVyaWZ5IHdpdGggc3VjY2VlZGluZyBob29rIChtZXJnZSknICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIFwiJFBSRU1FUkdFXCIgYWN0dWFsX2hvb2tzIiAmJgorCWNwICIkSE9PS0RJUi9zdWNjZXNzLnNhbXBsZSIgIiRQUkVNRVJHRSIgJiYKKwlnaXQgYnJhbmNoIC1mIHNpZGUgc2lkZS1vcmlnICYmCisJZ2l0IGNoZWNrb3V0IHNpZGUgJiYKKwlnaXQgbWVyZ2UgLS1uby12ZXJpZnkgLW0gIm1lcmdlIG1hc3RlciIgbWFzdGVyICYmCisJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIGFjdHVhbF9ob29rcworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd3aXRoIGZhaWxpbmcgaG9vaycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgXCIkUFJFQ09NTUlUXCIgZXhwZWN0ZWRfaG9va3MgYWN0dWFsX2hvb2tzIiAmJgorCWNwICIkSE9PS0RJUi9mYWlsLnNhbXBsZSIgIiRQUkVDT01NSVQiICYmCisJZWNobyAiJFBSRUNPTU1JVCIgPmV4cGVjdGVkX2hvb2tzICYmCisJZWNobyAiYW5vdGhlciIgPj5maWxlICYmCisJZ2l0IGFkZCBmaWxlICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbW1pdCAtbSAiYW5vdGhlciIgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZF9ob29rcyBhY3R1YWxfaG9va3MKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1uby12ZXJpZnkgd2l0aCBmYWlsaW5nIGhvb2snICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIFwiJFBSRUNPTU1JVFwiIGFjdHVhbF9ob29rcyIgJiYKKwljcCAiJEhPT0tESVIvZmFpbC5zYW1wbGUiICIkUFJFQ09NTUlUIiAmJgorCWVjaG8gInN0dWZmIiA+PmZpbGUgJiYKKwlnaXQgYWRkIGZpbGUgJiYKKwlnaXQgY29tbWl0IC0tbm8tdmVyaWZ5IC1tICJzdHVmZiIgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBhY3R1YWxfaG9va3MKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnd2l0aCBmYWlsaW5nIGhvb2sgKG1lcmdlKScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgXCIkUFJFTUVSR0VcIiBleHBlY3RlZF9ob29rcyBhY3R1YWxfaG9va3MiICYmCisJY3AgIiRIT09LRElSL2ZhaWwuc2FtcGxlIiAiJFBSRU1FUkdFIiAmJgorCWVjaG8gIiRQUkVNRVJHRSIgPmV4cGVjdGVkX2hvb2tzICYmCisJZ2l0IGNoZWNrb3V0IHNpZGUgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLW0gIm1lcmdlIG1hc3RlciIgbWFzdGVyICYmCisJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgorCXRlc3RfY21wIGV4cGVjdGVkX2hvb2tzIGFjdHVhbF9ob29rcworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLW5vLXZlcmlmeSB3aXRoIGZhaWxpbmcgaG9vayAobWVyZ2UpJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBcIiRQUkVNRVJHRVwiIGFjdHVhbF9ob29rcyIgJiYKKwljcCAiJEhPT0tESVIvZmFpbC5zYW1wbGUiICIkUFJFTUVSR0UiICYmCisJZ2l0IGJyYW5jaCAtZiBzaWRlIHNpZGUtb3JpZyAmJgorCWdpdCBjaGVja291dCBzaWRlICYmCisJZ2l0IG1lcmdlIC0tbm8tdmVyaWZ5IC1tICJtZXJnZSBtYXN0ZXIiIG1hc3RlciAmJgorCWdpdCBjaGVja291dCBtYXN0ZXIgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBhY3R1YWxfaG9va3MKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBQT1NJWFBFUk0gJ3dpdGggbm9uLWV4ZWN1dGFibGUgaG9vaycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgXCIkUFJFQ09NTUlUXCIgYWN0dWFsX2hvb2tzIiAmJgorCWNwICIkSE9PS0RJUi9ub24tZXhlYy5zYW1wbGUiICIkUFJFQ09NTUlUIiAmJgorCWVjaG8gImNvbnRlbnQiID4+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCWdpdCBjb21taXQgLW0gImNvbnRlbnQiICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgYWN0dWFsX2hvb2tzCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgUE9TSVhQRVJNICctLW5vLXZlcmlmeSB3aXRoIG5vbi1leGVjdXRhYmxlIGhvb2snICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIFwiJFBSRUNPTU1JVFwiIGFjdHVhbF9ob29rcyIgJiYKKwljcCAiJEhPT0tESVIvbm9uLWV4ZWMuc2FtcGxlIiAiJFBSRUNPTU1JVCIgJiYKKwllY2hvICJtb3JlIGNvbnRlbnQiID4+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCWdpdCBjb21taXQgLS1uby12ZXJpZnkgLW0gIm1vcmUgY29udGVudCIgJiYKKwl0ZXN0X3BhdGhfaXNfbWlzc2luZyBhY3R1YWxfaG9va3MKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBQT1NJWFBFUk0gJ3dpdGggbm9uLWV4ZWN1dGFibGUgaG9vayAobWVyZ2UpJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBcIiRQUkVNRVJHRVwiIGFjdHVhbF9ob29rcyIgJiYKKwljcCAiJEhPT0tESVIvbm9uLWV4ZWMuc2FtcGxlIiAiJFBSRU1FUkdFIiAmJgorCWdpdCBicmFuY2ggLWYgc2lkZSBzaWRlLW9yaWcgJiYKKwlnaXQgY2hlY2tvdXQgc2lkZSAmJgorCWdpdCBtZXJnZSAtbSAibWVyZ2UgbWFzdGVyIiBtYXN0ZXIgJiYKKwlnaXQgY2hlY2tvdXQgbWFzdGVyICYmCisJdGVzdF9wYXRoX2lzX21pc3NpbmcgYWN0dWFsX2hvb2tzCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgUE9TSVhQRVJNICctLW5vLXZlcmlmeSB3aXRoIG5vbi1leGVjdXRhYmxlIGhvb2sgKG1lcmdlKScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLWYgXCIkUFJFTUVSR0VcIiBhY3R1YWxfaG9va3MiICYmCisJY3AgIiRIT09LRElSL25vbi1leGVjLnNhbXBsZSIgIiRQUkVNRVJHRSIgJiYKKwlnaXQgYnJhbmNoIC1mIHNpZGUgc2lkZS1vcmlnICYmCisJZ2l0IGNoZWNrb3V0IHNpZGUgJiYKKwlnaXQgbWVyZ2UgLS1uby12ZXJpZnkgLW0gIm1lcmdlIG1hc3RlciIgbWFzdGVyICYmCisJZ2l0IGNoZWNrb3V0IG1hc3RlciAmJgorCXRlc3RfcGF0aF9pc19taXNzaW5nIGFjdHVhbF9ob29rcworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd3aXRoIGhvb2sgcmVxdWlyaW5nIEdJVF9QUkVGSVgnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1yZiBcIiRQUkVDT01NSVRcIiBleHBlY3RlZF9ob29rcyBhY3R1YWxfaG9va3Mgc3VjY2VzcyIgJiYKKwljcCAiJEhPT0tESVIvcmVxdWlyZS1wcmVmaXguc2FtcGxlIiAiJFBSRUNPTU1JVCIgJiYKKwllY2hvICIkUFJFQ09NTUlUIiA+ZXhwZWN0ZWRfaG9va3MgJiYKKwllY2hvICJtb3JlIGNvbnRlbnQiID4+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCW1rZGlyIHN1Y2Nlc3MgJiYKKwkoCisJCWNkIHN1Y2Nlc3MgJiYKKwkJZ2l0IGNvbW1pdCAtbSAiaG9vayByZXF1aXJlcyBHSVRfUFJFRklYID0gc3VjY2Vzcy8iCisJKSAmJgorCXRlc3RfY21wIGV4cGVjdGVkX2hvb2tzIGFjdHVhbF9ob29rcworJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd3aXRoIGZhaWxpbmcgaG9vayByZXF1aXJpbmcgR0lUX1BSRUZJWCcgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLXJmIFwiJFBSRUNPTU1JVFwiIGV4cGVjdGVkX2hvb2tzIGFjdHVhbF9ob29rcyBmYWlsIiAmJgorCWNwICIkSE9PS0RJUi9yZXF1aXJlLXByZWZpeC5zYW1wbGUiICIkUFJFQ09NTUlUIiAmJgorCWVjaG8gIiRQUkVDT01NSVQiID5leHBlY3RlZF9ob29rcyAmJgorCWVjaG8gIm1vcmUgY29udGVudCIgPj5maWxlICYmCisJZ2l0IGFkZCBmaWxlICYmCisJbWtkaXIgZmFpbCAmJgorCSgKKwkJY2QgZmFpbCAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0IC1tICJob29rIG11c3QgZmFpbCIKKwkpICYmCisJZ2l0IGNoZWNrb3V0IC0tIGZpbGUgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZF9ob29rcyBhY3R1YWxfaG9va3MKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2sgdGhlIGF1dGhvciBpbiBob29rJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBcIiRQUkVDT01NSVRcIiBleHBlY3RlZF9ob29rcyBhY3R1YWxfaG9va3MiICYmCisJY3AgIiRIT09LRElSL2NoZWNrLWF1dGhvci5zYW1wbGUiICIkUFJFQ09NTUlUIiAmJgorCWNhdCA+ZXhwZWN0ZWRfaG9va3MgPDwtRU9GICYmCisJJFBSRUNPTU1JVAorCSRQUkVDT01NSVQKKwkkUFJFQ09NTUlUCisJRU9GCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5IC1tICJieSBhLnUudGhvciIgJiYKKwkoCisJCUdJVF9BVVRIT1JfTkFNRT0iTmV3IEF1dGhvciIgJiYKKwkJR0lUX0FVVEhPUl9FTUFJTD0ibmV3YXV0aG9yQGV4YW1wbGUuY29tIiAmJgorCQlleHBvcnQgR0lUX0FVVEhPUl9OQU1FIEdJVF9BVVRIT1JfRU1BSUwgJiYKKwkJZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5IC1tICJieSBuZXcuYXV0aG9yIHZpYSBlbnYiICYmCisJCWdpdCBzaG93IC1zCisJKSAmJgorCWdpdCBjb21taXQgLS1hdXRob3I9Ik5ldyBBdXRob3IgPG5ld2F1dGhvckBleGFtcGxlLmNvbT4iIFwKKwkJLS1hbGxvdy1lbXB0eSAtbSAiYnkgbmV3LmF1dGhvciB2aWEgY29tbWFuZCBsaW5lIiAmJgorCWdpdCBzaG93IC1zICYmCisJdGVzdF9jbXAgZXhwZWN0ZWRfaG9va3MgYWN0dWFsX2hvb2tzCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NzUwMy1wcmUtY29tbWl0LWhvb2suc2ggYi90L3Q3NTAzLXByZS1jb21taXQtaG9vay5zaApkZWxldGVkIGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggOTg0ODg5Yi4uMDAwMDAwMAotLS0gYS90L3Q3NTAzLXByZS1jb21taXQtaG9vay5zaAorKysgL2Rldi9udWxsCkBAIC0xLDEzOSArMCwwIEBACi0jIS9iaW4vc2gKLQotdGVzdF9kZXNjcmlwdGlvbj0ncHJlLWNvbW1pdCBob29rJwotCi0uIC4vdGVzdC1saWIuc2gKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnd2l0aCBubyBob29rJyAnCi0KLQllY2hvICJmb28iID4gZmlsZSAmJgotCWdpdCBhZGQgZmlsZSAmJgotCWdpdCBjb21taXQgLW0gImZpcnN0IgotCi0nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJy0tbm8tdmVyaWZ5IHdpdGggbm8gaG9vaycgJwotCi0JZWNobyAiYmFyIiA+IGZpbGUgJiYKLQlnaXQgYWRkIGZpbGUgJiYKLQlnaXQgY29tbWl0IC0tbm8tdmVyaWZ5IC1tICJiYXIiCi0KLScKLQotIyBub3cgaW5zdGFsbCBob29rIHRoYXQgYWx3YXlzIHN1Y2NlZWRzCi1IT09LRElSPSIkKGdpdCByZXYtcGFyc2UgLS1naXQtZGlyKS9ob29rcyIKLUhPT0s9IiRIT09LRElSL3ByZS1jb21taXQiCi1ta2RpciAtcCAiJEhPT0tESVIiCi1jYXQgPiAiJEhPT0siIDw8RU9GCi0jIS9iaW4vc2gKLWV4aXQgMAotRU9GCi1jaG1vZCAreCAiJEhPT0siCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dpdGggc3VjY2VlZGluZyBob29rJyAnCi0KLQllY2hvICJtb3JlIiA+PiBmaWxlICYmCi0JZ2l0IGFkZCBmaWxlICYmCi0JZ2l0IGNvbW1pdCAtbSAibW9yZSIKLQotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICctLW5vLXZlcmlmeSB3aXRoIHN1Y2NlZWRpbmcgaG9vaycgJwotCi0JZWNobyAiZXZlbiBtb3JlIiA+PiBmaWxlICYmCi0JZ2l0IGFkZCBmaWxlICYmCi0JZ2l0IGNvbW1pdCAtLW5vLXZlcmlmeSAtbSAiZXZlbiBtb3JlIgotCi0nCi0KLSMgbm93IGEgaG9vayB0aGF0IGZhaWxzCi1jYXQgPiAiJEhPT0siIDw8RU9GCi0jIS9iaW4vc2gKLWV4aXQgMQotRU9GCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dpdGggZmFpbGluZyBob29rJyAnCi0KLQllY2hvICJhbm90aGVyIiA+PiBmaWxlICYmCi0JZ2l0IGFkZCBmaWxlICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbW1pdCAtbSAiYW5vdGhlciIKLQotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICctLW5vLXZlcmlmeSB3aXRoIGZhaWxpbmcgaG9vaycgJwotCi0JZWNobyAic3R1ZmYiID4+IGZpbGUgJiYKLQlnaXQgYWRkIGZpbGUgJiYKLQlnaXQgY29tbWl0IC0tbm8tdmVyaWZ5IC1tICJzdHVmZiIKLQotJwotCi1jaG1vZCAteCAiJEhPT0siCi10ZXN0X2V4cGVjdF9zdWNjZXNzIFBPU0lYUEVSTSAnd2l0aCBub24tZXhlY3V0YWJsZSBob29rJyAnCi0KLQllY2hvICJjb250ZW50IiA+PiBmaWxlICYmCi0JZ2l0IGFkZCBmaWxlICYmCi0JZ2l0IGNvbW1pdCAtbSAiY29udGVudCIKLQotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzIFBPU0lYUEVSTSAnLS1uby12ZXJpZnkgd2l0aCBub24tZXhlY3V0YWJsZSBob29rJyAnCi0KLQllY2hvICJtb3JlIGNvbnRlbnQiID4+IGZpbGUgJiYKLQlnaXQgYWRkIGZpbGUgJiYKLQlnaXQgY29tbWl0IC0tbm8tdmVyaWZ5IC1tICJtb3JlIGNvbnRlbnQiCi0KLScKLWNobW9kICt4ICIkSE9PSyIKLQotIyBhIGhvb2sgdGhhdCBjaGVja3MgJEdJVF9QUkVGSVggYW5kIHN1Y2NlZWRzIGluc2lkZSB0aGUKLSMgc3VjY2Vzcy8gc3ViZGlyZWN0b3J5IG9ubHkKLWNhdCA+ICIkSE9PSyIgPDxFT0YKLSMhL2Jpbi9zaAotdGVzdCBcJEdJVF9QUkVGSVggPSBzdWNjZXNzLwotRU9GCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dpdGggaG9vayByZXF1aXJpbmcgR0lUX1BSRUZJWCcgJwotCi0JZWNobyAibW9yZSBjb250ZW50IiA+PiBmaWxlICYmCi0JZ2l0IGFkZCBmaWxlICYmCi0JbWtkaXIgc3VjY2VzcyAmJgotCSgKLQkJY2Qgc3VjY2VzcyAmJgotCQlnaXQgY29tbWl0IC1tICJob29rIHJlcXVpcmVzIEdJVF9QUkVGSVggPSBzdWNjZXNzLyIKLQkpICYmCi0Jcm1kaXIgc3VjY2VzcwotJwotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICd3aXRoIGZhaWxpbmcgaG9vayByZXF1aXJpbmcgR0lUX1BSRUZJWCcgJwotCi0JZWNobyAibW9yZSBjb250ZW50IiA+PiBmaWxlICYmCi0JZ2l0IGFkZCBmaWxlICYmCi0JbWtkaXIgZmFpbCAmJgotCSgKLQkJY2QgZmFpbCAmJgotCQl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0IC1tICJob29rIG11c3QgZmFpbCIKLQkpICYmCi0Jcm1kaXIgZmFpbCAmJgotCWdpdCBjaGVja291dCAtLSBmaWxlCi0nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NoZWNrIHRoZSBhdXRob3IgaW4gaG9vaycgJwotCXdyaXRlX3NjcmlwdCAiJEhPT0siIDw8LVxFT0YgJiYKLQl0ZXN0ICIkR0lUX0FVVEhPUl9OQU1FIiA9ICJOZXcgQXV0aG9yIiAmJgotCXRlc3QgIiRHSVRfQVVUSE9SX0VNQUlMIiA9ICJuZXdhdXRob3JAZXhhbXBsZS5jb20iCi0JRU9GCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5IC1tICJieSBhLnUudGhvciIgJiYKLQkoCi0JCUdJVF9BVVRIT1JfTkFNRT0iTmV3IEF1dGhvciIgJiYKLQkJR0lUX0FVVEhPUl9FTUFJTD0ibmV3YXV0aG9yQGV4YW1wbGUuY29tIiAmJgotCQlleHBvcnQgR0lUX0FVVEhPUl9OQU1FIEdJVF9BVVRIT1JfRU1BSUwgJiYKLQkJZ2l0IGNvbW1pdCAtLWFsbG93LWVtcHR5IC1tICJieSBuZXcuYXV0aG9yIHZpYSBlbnYiICYmCi0JCWdpdCBzaG93IC1zCi0JKSAmJgotCWdpdCBjb21taXQgLS1hdXRob3I9Ik5ldyBBdXRob3IgPG5ld2F1dGhvckBleGFtcGxlLmNvbT4iIFwKLQkJLS1hbGxvdy1lbXB0eSAtbSAiYnkgbmV3LmF1dGhvciB2aWEgY29tbWFuZCBsaW5lIiAmJgotCWdpdCBzaG93IC1zCi0nCi0KLXRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NzUwNS1wcmVwYXJlLWNvbW1pdC1tc2ctaG9vay5zaCBiL3QvdDc1MDUtcHJlcGFyZS1jb21taXQtbXNnLWhvb2suc2gKaW5kZXggZWJmY2FkOS4uOTRmODVjZCAxMDA3NTUKLS0tIGEvdC90NzUwNS1wcmVwYXJlLWNvbW1pdC1tc2ctaG9vay5zaAorKysgYi90L3Q3NTA1LXByZXBhcmUtY29tbWl0LW1zZy1ob29rLnNoCkBAIC0yMTUsNyArMjE1LDcgQEAKIHRlc3RfcmViYXNlICgpIHsKIAlleHBlY3Q9JDEgJiYKIAltb2RlPSQyICYmCi0JdGVzdF9leHBlY3RfJGV4cGVjdCBDX0xPQ0FMRV9PVVRQVVQgIndpdGggaG9vayAocmViYXNlICRtb2RlKSIgJworCXRlc3RfZXhwZWN0XyRleHBlY3QgQ19MT0NBTEVfT1VUUFVUICJ3aXRoIGhvb2sgKHJlYmFzZSAke21vZGU6LS1pfSkiICcKIAkJdGVzdF93aGVuX2ZpbmlzaGVkICJcCiAJCQlnaXQgcmViYXNlIC0tYWJvcnQKIAkJCWdpdCBjaGVja291dCAtZiBtYXN0ZXIKQEAgLTIyNSw3ICsyMjUsNyBAQAogCQlHSVRfRURJVE9SPSJcIiRGQUtFX0VESVRPUlwiIiAmJgogCQkoCiAJCQlleHBvcnQgR0lUX1NFUVVFTkNFX0VESVRPUiBHSVRfRURJVE9SICYmCi0JCQl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlICRtb2RlIGIgJiYKKwkJCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLWkgJG1vZGUgYiAmJgogCQkJZWNobyB4ID5hICYmCiAJCQlnaXQgYWRkIGEgJiYKIAkJCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1jb250aW51ZSAmJgpAQCAtMjQxLDE4ICsyNDEsMTIgQEAKIAkJCWdpdCBhZGQgYiAmJgogCQkJZ2l0IHJlYmFzZSAtLWNvbnRpbnVlCiAJCSkgJiYKLQkJaWYgdGVzdCAkbW9kZSA9IC1wICMgcmV3b3JkIGFtZW5kZWQgYWZ0ZXIgcGljawotCQl0aGVuCi0JCQluPTE4Ci0JCWVsc2UKLQkJCW49MTcKLQkJZmkgJiYKLQkJZ2l0IGxvZyAtLXByZXR0eT0lcyAtZyAtbiRuIEhFQURAezF9ID5hY3R1YWwgJiYKLQkJdGVzdF9jbXAgIiRURVNUX0RJUkVDVE9SWS90NzUwNS9leHBlY3RlZC1yZWJhc2UkbW9kZSIgYWN0dWFsCisJCWdpdCBsb2cgLS1wcmV0dHk9JXMgLWcgLW4xOCBIRUFEQHsxfSA+YWN0dWFsICYmCisJCXRlc3RfY21wICIkVEVTVF9ESVJFQ1RPUlkvdDc1MDUvZXhwZWN0ZWQtcmViYXNlJHttb2RlOi0taX0iIGFjdHVhbAogCScKIH0KIAotdGVzdF9yZWJhc2Ugc3VjY2VzcyAtaQordGVzdF9yZWJhc2Ugc3VjY2VzcwogdGVzdF9oYXZlX3ByZXJlcSAhUkVCQVNFX1AgfHwgdGVzdF9yZWJhc2Ugc3VjY2VzcyAtcAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd3aXRoIGhvb2sgKGNoZXJyeS1waWNrKScgJwpkaWZmIC0tZ2l0IGEvdC90NzUwNS9leHBlY3RlZC1yZWJhc2UtaSBiL3QvdDc1MDUvZXhwZWN0ZWQtcmViYXNlLWkKaW5kZXggYzUxNGJkYi4uOTNiYWRhNSAxMDA2NDQKLS0tIGEvdC90NzUwNS9leHBlY3RlZC1yZWJhc2UtaQorKysgYi90L3Q3NTA1L2V4cGVjdGVkLXJlYmFzZS1pCkBAIC03LDcgKzcsOCBAQAogbWVzc2FnZSBbZml4dXAgcmViYXNlLTldCiBtZXNzYWdlIChubyBlZGl0b3IpIFtmaXh1cCByZWJhc2UtOF0KIG1lc3NhZ2UgKG5vIGVkaXRvcikgW3NxdWFzaCByZWJhc2UtN10KLW1lc3NhZ2UgW3Jld29yZCByZWJhc2UtNl0KK0hFQUQgW3Jld29yZCByZWJhc2UtNl0KK21lc3NhZ2UgKG5vIGVkaXRvcikgW3Jld29yZCByZWJhc2UtNl0KIG1lc3NhZ2UgW3NxdWFzaCByZWJhc2UtNV0KIG1lc3NhZ2UgKG5vIGVkaXRvcikgW2ZpeHVwIHJlYmFzZS00XQogbWVzc2FnZSAobm8gZWRpdG9yKSBbcGljayByZWJhc2UtM10KZGlmZiAtLWdpdCBhL3QvdDc1MDgtc3RhdHVzLnNoIGIvdC90NzUwOC1zdGF0dXMuc2gKaW5kZXggZTFmMTEyOS4uNDgyY2UzNSAxMDA3NTUKLS0tIGEvdC90NzUwOC1zdGF0dXMuc2gKKysrIGIvdC90NzUwOC1zdGF0dXMuc2gKQEAgLTk0LDE5ICs5NCwxNiBAQAogIyAgICh1c2UgImdpdCBwdWxsIiB0byBtZXJnZSB0aGUgcmVtb3RlIGJyYW5jaCBpbnRvIHlvdXJzKQogIwogIyBDaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoKLSMgICAodXNlICJnaXQgcmVzZXQgSEVBRCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCi0jCisjICAgKHVzZSAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQogIwluZXcgZmlsZTogICBkaXIyL2FkZGVkCiAjCiAjIENoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OgogIyAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLSMgICAodXNlICJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCi0jCisjICAgKHVzZSAiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCiAjCW1vZGlmaWVkOiAgIGRpcjEvbW9kaWZpZWQKICMKICMgVW50cmFja2VkIGZpbGVzOgogIyAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0jCiAjCWRpcjEvdW50cmFja2VkIGRpcjIvdW50cmFja2VkCiAjCWRpcjIvbW9kaWZpZWQgIHVudHJhY2tlZAogIwpAQCAtMTI4LDE5ICsxMjUsMTYgQEAKICMgICAodXNlICJnaXQgcHVsbCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycykKICMKICMgQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6Ci0jICAgKHVzZSAiZ2l0IHJlc2V0IEhFQUQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQotIworIyAgICh1c2UgImdpdCByZXN0b3JlIC0tc3RhZ2VkIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKICMJbmV3IGZpbGU6ICAgZGlyMi9hZGRlZAogIwogIyBDaGFuZ2VzIG5vdCBzdGFnZWQgZm9yIGNvbW1pdDoKICMgICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0jICAgKHVzZSAiZ2l0IGNoZWNrb3V0IC0tIDxmaWxlPi4uLiIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KQotIworIyAgICh1c2UgImdpdCByZXN0b3JlIDxmaWxlPi4uLiIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KQogIwltb2RpZmllZDogICBkaXIxL21vZGlmaWVkCiAjCiAjIFVudHJhY2tlZCBmaWxlczoKICMgICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotIwogIwlkaXIxL3VudHJhY2tlZAogIwlkaXIyL21vZGlmaWVkCiAjCWRpcjIvdW50cmFja2VkCkBAIC0yNzgsMjQgKzI3MiwyMCBAQAogICAodXNlICJnaXQgcHVsbCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycykKIAogQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKLQorICAodXNlICJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCiAJbmV3IGZpbGU6ICAgZGlyMi9hZGRlZAogCiBDaGFuZ2VzIG5vdCBzdGFnZWQgZm9yIGNvbW1pdDoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotICAodXNlICJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCiAJbW9kaWZpZWQ6ICAgZGlyMS9tb2RpZmllZAogCiBVbnRyYWNrZWQgZmlsZXM6CiAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0KIAlkaXIyL21vZGlmaWVkCiAKIElnbm9yZWQgZmlsZXM6CiAgICh1c2UgImdpdCBhZGQgLWYgPGZpbGU+Li4uIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0KIAkuZ2l0aWdub3JlCiAJZGlyMS91bnRyYWNrZWQKIAlkaXIyL3VudHJhY2tlZApAQCAtMzQ3LDE5ICszMzcsMTYgQEAKICAgKHVzZSAiZ2l0IHB1bGwiIHRvIG1lcmdlIHRoZSByZW1vdGUgYnJhbmNoIGludG8geW91cnMpCiAKIENoYW5nZXMgdG8gYmUgY29tbWl0dGVkOgotICAodXNlICJnaXQgcmVzZXQgSEVBRCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQogCW5ldyBmaWxlOiAgIGRpcjIvYWRkZWQKIAogQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6CiAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLSAgKHVzZSAiZ2l0IGNoZWNrb3V0IC0tIDxmaWxlPi4uLiIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KQotCisgICh1c2UgImdpdCByZXN0b3JlIDxmaWxlPi4uLiIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KQogCW1vZGlmaWVkOiAgIGRpcjEvbW9kaWZpZWQKIAogSWdub3JlZCBmaWxlczoKICAgKHVzZSAiZ2l0IGFkZCAtZiA8ZmlsZT4uLi4iIHRvIGluY2x1ZGUgaW4gd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLQogCS5naXRpZ25vcmUKIAlkaXIxL3VudHJhY2tlZAogCWRpcjIvbW9kaWZpZWQKQEAgLTQyMCwxNCArNDA3LDEyIEBACiAgICh1c2UgImdpdCBwdWxsIiB0byBtZXJnZSB0aGUgcmVtb3RlIGJyYW5jaCBpbnRvIHlvdXJzKQogCiBDaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoKLSAgKHVzZSAiZ2l0IHJlc2V0IEhFQUQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQotCisgICh1c2UgImdpdCByZXN0b3JlIC0tc3RhZ2VkIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKIAluZXcgZmlsZTogICBkaXIyL2FkZGVkCiAKIENoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0gICh1c2UgImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKLQorICAodXNlICJnaXQgcmVzdG9yZSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKIAltb2RpZmllZDogICBkaXIxL21vZGlmaWVkCiAKIFVudHJhY2tlZCBmaWxlcyBub3QgbGlzdGVkICh1c2UgLXUgb3B0aW9uIHRvIHNob3cgdW50cmFja2VkIGZpbGVzKQpAQCAtNDg0LDE5ICs0NjksMTYgQEAKICAgKHVzZSAiZ2l0IHB1bGwiIHRvIG1lcmdlIHRoZSByZW1vdGUgYnJhbmNoIGludG8geW91cnMpCiAKIENoYW5nZXMgdG8gYmUgY29tbWl0dGVkOgotICAodXNlICJnaXQgcmVzZXQgSEVBRCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQogCW5ldyBmaWxlOiAgIGRpcjIvYWRkZWQKIAogQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6CiAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLSAgKHVzZSAiZ2l0IGNoZWNrb3V0IC0tIDxmaWxlPi4uLiIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KQotCisgICh1c2UgImdpdCByZXN0b3JlIDxmaWxlPi4uLiIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KQogCW1vZGlmaWVkOiAgIGRpcjEvbW9kaWZpZWQKIAogVW50cmFja2VkIGZpbGVzOgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotCiAJZGlyMS91bnRyYWNrZWQKIAlkaXIyL21vZGlmaWVkCiAJZGlyMi91bnRyYWNrZWQKQEAgLTU0MiwxOSArNTI0LDE2IEBACiAgICh1c2UgImdpdCBwdWxsIiB0byBtZXJnZSB0aGUgcmVtb3RlIGJyYW5jaCBpbnRvIHlvdXJzKQogCiBDaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoKLSAgKHVzZSAiZ2l0IHJlc2V0IEhFQUQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQotCisgICh1c2UgImdpdCByZXN0b3JlIC0tc3RhZ2VkIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKIAluZXcgZmlsZTogICBkaXIyL2FkZGVkCiAKIENoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0gICh1c2UgImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKLQorICAodXNlICJnaXQgcmVzdG9yZSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKIAltb2RpZmllZDogICBkaXIxL21vZGlmaWVkCiAKIFVudHJhY2tlZCBmaWxlczoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIGluY2x1ZGUgaW4gd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLQogCWRpcjEvdW50cmFja2VkCiAJZGlyMi9tb2RpZmllZAogCWRpcjIvdW50cmFja2VkCkBAIC02MDUsMTkgKzU4NCwxNiBAQAogICAodXNlICJnaXQgcHVsbCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycykKIAogQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKLQorICAodXNlICJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCiAJbmV3IGZpbGU6ICAgLi4vZGlyMi9hZGRlZAogCiBDaGFuZ2VzIG5vdCBzdGFnZWQgZm9yIGNvbW1pdDoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotICAodXNlICJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCiAJbW9kaWZpZWQ6ICAgbW9kaWZpZWQKIAogVW50cmFja2VkIGZpbGVzOgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotCiAJdW50cmFja2VkCiAJLi4vZGlyMi9tb2RpZmllZAogCS4uL2RpcjIvdW50cmFja2VkCkBAIC02NzYsMTkgKzY1MiwxNiBAQAogICAodXNlICJnaXQgcHVsbCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycykKIAogQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKLQorICAodXNlICJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCiAJPEdSRUVOPm5ldyBmaWxlOiAgIGRpcjIvYWRkZWQ8UkVTRVQ+CiAKIENoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0gICh1c2UgImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKLQorICAodXNlICJnaXQgcmVzdG9yZSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKIAk8UkVEPm1vZGlmaWVkOiAgIGRpcjEvbW9kaWZpZWQ8UkVTRVQ+CiAKIFVudHJhY2tlZCBmaWxlczoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIGluY2x1ZGUgaW4gd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLQogCTxCTFVFPmRpcjEvdW50cmFja2VkPFJFU0VUPgogCTxCTFVFPmRpcjIvbW9kaWZpZWQ8UkVTRVQ+CiAJPEJMVUU+ZGlyMi91bnRyYWNrZWQ8UkVTRVQ+CkBAIC04MDIsMTkgKzc3NSwxNiBAQAogICAodXNlICJnaXQgcHVsbCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycykKIAogQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKLQorICAodXNlICJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCiAJbmV3IGZpbGU6ICAgZGlyMi9hZGRlZAogCiBDaGFuZ2VzIG5vdCBzdGFnZWQgZm9yIGNvbW1pdDoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotICAodXNlICJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCiAJbW9kaWZpZWQ6ICAgZGlyMS9tb2RpZmllZAogCiBVbnRyYWNrZWQgZmlsZXM6CiAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0KIAlkaXIxL3VudHJhY2tlZAogCWRpcjIvbW9kaWZpZWQKIAlkaXIyL3VudHJhY2tlZApAQCAtODUyLDEzICs4MjIsMTEgQEAKICAgKHVzZSAiZ2l0IHB1bGwiIHRvIG1lcmdlIHRoZSByZW1vdGUgYnJhbmNoIGludG8geW91cnMpCiAKIENoYW5nZXMgdG8gYmUgY29tbWl0dGVkOgotICAodXNlICJnaXQgcmVzZXQgSEVBRCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQogCW1vZGlmaWVkOiAgIGRpcjEvbW9kaWZpZWQKIAogVW50cmFja2VkIGZpbGVzOgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotCiAJZGlyMS91bnRyYWNrZWQKIAlkaXIyLwogCXVudHJhY2tlZApAQCAtODk2LDIwICs4NjQsMTcgQEAKICAgKHVzZSAiZ2l0IHB1bGwiIHRvIG1lcmdlIHRoZSByZW1vdGUgYnJhbmNoIGludG8geW91cnMpCiAKIENoYW5nZXMgdG8gYmUgY29tbWl0dGVkOgotICAodXNlICJnaXQgcmVzZXQgSEVBRCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQogCW5ldyBmaWxlOiAgIGRpcjIvYWRkZWQKIAluZXcgZmlsZTogICBzbQogCiBDaGFuZ2VzIG5vdCBzdGFnZWQgZm9yIGNvbW1pdDoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotICAodXNlICJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCiAJbW9kaWZpZWQ6ICAgZGlyMS9tb2RpZmllZAogCiBVbnRyYWNrZWQgZmlsZXM6CiAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0KIAlkaXIxL3VudHJhY2tlZAogCWRpcjIvbW9kaWZpZWQKIAlkaXIyL3VudHJhY2tlZApAQCAtOTU2LDE1ICs5MjEsMTMgQEAKICAgKHVzZSAiZ2l0IHB1bGwiIHRvIG1lcmdlIHRoZSByZW1vdGUgYnJhbmNoIGludG8geW91cnMpCiAKIENoYW5nZXMgdG8gYmUgY29tbWl0dGVkOgotICAodXNlICJnaXQgcmVzZXQgSEVBRCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQogCW5ldyBmaWxlOiAgIGRpcjIvYWRkZWQKIAluZXcgZmlsZTogICBzbQogCiBDaGFuZ2VzIG5vdCBzdGFnZWQgZm9yIGNvbW1pdDoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotICAodXNlICJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCiAJbW9kaWZpZWQ6ICAgZGlyMS9tb2RpZmllZAogCiBTdWJtb2R1bGUgY2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6CkBAIC05NzQsNyArOTM3LDYgQEAKIAogVW50cmFja2VkIGZpbGVzOgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotCiAJZGlyMS91bnRyYWNrZWQKIAlkaXIyL21vZGlmaWVkCiAJZGlyMi91bnRyYWNrZWQKQEAgLTEwMTksMTMgKzk4MSwxMSBAQAogCiBDaGFuZ2VzIG5vdCBzdGFnZWQgZm9yIGNvbW1pdDoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotICAodXNlICJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCiAJbW9kaWZpZWQ6ICAgZGlyMS9tb2RpZmllZAogCiBVbnRyYWNrZWQgZmlsZXM6CiAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0KIAlkaXIxL3VudHJhY2tlZAogCWRpcjIvbW9kaWZpZWQKIAlkaXIyL3VudHJhY2tlZApAQCAtMTA2OCwxNSArMTAyOCwxMyBAQAogICAodXNlICJnaXQgcHVsbCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycykKIAogQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEXjEgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQotCisgICh1c2UgImdpdCByZXN0b3JlIC0tc291cmNlPUhFQUReMSAtLXN0YWdlZCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCiAJbmV3IGZpbGU6ICAgZGlyMi9hZGRlZAogCW5ldyBmaWxlOiAgIHNtCiAKIENoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0gICh1c2UgImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKLQorICAodXNlICJnaXQgcmVzdG9yZSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKIAltb2RpZmllZDogICBkaXIxL21vZGlmaWVkCiAKIFN1Ym1vZHVsZSBjaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoKQEAgLTEwODYsNyArMTA0NCw2IEBACiAKIFVudHJhY2tlZCBmaWxlczoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIGluY2x1ZGUgaW4gd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLQogCWRpcjEvdW50cmFja2VkCiAJZGlyMi9tb2RpZmllZAogCWRpcjIvdW50cmFja2VkCkBAIC0xMTIzLDE0ICsxMDgwLDEyIEBACiAgICh1c2UgImdpdCBwdWxsIiB0byBtZXJnZSB0aGUgcmVtb3RlIGJyYW5jaCBpbnRvIHlvdXJzKQogCiBDaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoKLSAgKHVzZSAiZ2l0IHJlc2V0IEhFQUQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQotCisgICh1c2UgImdpdCByZXN0b3JlIC0tc3RhZ2VkIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKIAltb2RpZmllZDogICBzbQogCiBDaGFuZ2VzIG5vdCBzdGFnZWQgZm9yIGNvbW1pdDoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotICAodXNlICJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCiAJbW9kaWZpZWQ6ICAgZGlyMS9tb2RpZmllZAogCiBTdWJtb2R1bGUgY2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6CkBAIC0xMTQwLDcgKzEwOTUsNiBAQAogCiBVbnRyYWNrZWQgZmlsZXM6CiAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0KIAkuZ2l0bW9kdWxlcwogCWRpcjEvdW50cmFja2VkCiAJZGlyMi9tb2RpZmllZApAQCAtMTIzNSwxNSArMTE4OSwxMyBAQAogICAodXNlICJnaXQgcHVsbCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycykKIAogQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKLQorICAodXNlICJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCiAJbW9kaWZpZWQ6ICAgc20KIAogQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6CiAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLSAgKHVzZSAiZ2l0IGNoZWNrb3V0IC0tIDxmaWxlPi4uLiIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KQorICAodXNlICJnaXQgcmVzdG9yZSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKICAgKGNvbW1pdCBvciBkaXNjYXJkIHRoZSB1bnRyYWNrZWQgb3IgbW9kaWZpZWQgY29udGVudCBpbiBzdWJtb2R1bGVzKQotCiAJbW9kaWZpZWQ6ICAgZGlyMS9tb2RpZmllZAogCW1vZGlmaWVkOiAgIHNtIChtb2RpZmllZCBjb250ZW50KQogCkBAIC0xMjU0LDcgKzEyMDYsNiBAQAogCiBVbnRyYWNrZWQgZmlsZXM6CiAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0KIAkuZ2l0bW9kdWxlcwogCWRpcjEvdW50cmFja2VkCiAJZGlyMi9tb2RpZmllZApAQCAtMTI5NSwxNCArMTI0NiwxMiBAQAogICAodXNlICJnaXQgcHVsbCIgdG8gbWVyZ2UgdGhlIHJlbW90ZSBicmFuY2ggaW50byB5b3VycykKIAogQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKLQorICAodXNlICJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCiAJbW9kaWZpZWQ6ICAgc20KIAogQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6CiAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLSAgKHVzZSAiZ2l0IGNoZWNrb3V0IC0tIDxmaWxlPi4uLiIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KQotCisgICh1c2UgImdpdCByZXN0b3JlIDxmaWxlPi4uLiIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KQogCW1vZGlmaWVkOiAgIGRpcjEvbW9kaWZpZWQKIAltb2RpZmllZDogICBzbSAobmV3IGNvbW1pdHMpCiAKQEAgLTEzMTgsNyArMTI2Nyw2IEBACiAKIFVudHJhY2tlZCBmaWxlczoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIGluY2x1ZGUgaW4gd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLQogCS5naXRtb2R1bGVzCiAJZGlyMS91bnRyYWNrZWQKIAlkaXIyL21vZGlmaWVkCkBAIC0xMzc5LDE0ICsxMzI3LDEyIEBACiA7ICAgKHVzZSAiZ2l0IHB1bGwiIHRvIG1lcmdlIHRoZSByZW1vdGUgYnJhbmNoIGludG8geW91cnMpCiA7CiA7IENoYW5nZXMgdG8gYmUgY29tbWl0dGVkOgotOyAgICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKLTsKKzsgICAodXNlICJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCiA7CW1vZGlmaWVkOiAgIHNtCiA7CiA7IENoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OgogOyAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLTsgICAodXNlICJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCi07Cis7ICAgKHVzZSAiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCiA7CW1vZGlmaWVkOiAgIGRpcjEvbW9kaWZpZWQKIDsJbW9kaWZpZWQ6ICAgc20gKG5ldyBjb21taXRzKQogOwpAQCAtMTQwMiw3ICsxMzQ4LDYgQEAKIDsKIDsgVW50cmFja2VkIGZpbGVzOgogOyAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byBpbmNsdWRlIGluIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi07CiA7CS5naXRtb2R1bGVzCiA7CWRpcjEvdW50cmFja2VkCiA7CWRpcjIvbW9kaWZpZWQKQEAgLTE0MzEsMTMgKzEzNzYsMTEgQEAKIAogQ2hhbmdlcyBub3Qgc3RhZ2VkIGZvciBjb21taXQ6CiAgICh1c2UgImdpdCBhZGQgPGZpbGU+Li4uIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLSAgKHVzZSAiZ2l0IGNoZWNrb3V0IC0tIDxmaWxlPi4uLiIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KQotCisgICh1c2UgImdpdCByZXN0b3JlIDxmaWxlPi4uLiIgdG8gZGlzY2FyZCBjaGFuZ2VzIGluIHdvcmtpbmcgZGlyZWN0b3J5KQogCW1vZGlmaWVkOiAgIGRpcjEvbW9kaWZpZWQKIAogVW50cmFja2VkIGZpbGVzOgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotCiAJLmdpdG1vZHVsZXMKIAlkaXIxL3VudHJhY2tlZAogCWRpcjIvbW9kaWZpZWQKQEAgLTE0NTgsMTkgKzE0MDEsMTYgQEAKICAgKHVzZSAiZ2l0IHB1bGwiIHRvIG1lcmdlIHRoZSByZW1vdGUgYnJhbmNoIGludG8geW91cnMpCiAKIENoYW5nZXMgdG8gYmUgY29tbWl0dGVkOgotICAodXNlICJnaXQgcmVzZXQgSEVBRCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQogCW1vZGlmaWVkOiAgIHNtCiAKIENoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0gICh1c2UgImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKLQorICAodXNlICJnaXQgcmVzdG9yZSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKIAltb2RpZmllZDogICBkaXIxL21vZGlmaWVkCiAKIFVudHJhY2tlZCBmaWxlczoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIGluY2x1ZGUgaW4gd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkKLQogCS5naXRtb2R1bGVzCiAJZGlyMS91bnRyYWNrZWQKIAlkaXIyL21vZGlmaWVkCkBAIC0xNTgxLDE0ICsxNTIxLDEyIEBACiAgICh1c2UgImdpdCBwdWxsIiB0byBtZXJnZSB0aGUgcmVtb3RlIGJyYW5jaCBpbnRvIHlvdXJzKQogCiBDaGFuZ2VzIHRvIGJlIGNvbW1pdHRlZDoKLSAgKHVzZSAiZ2l0IHJlc2V0IEhFQUQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQotCisgICh1c2UgImdpdCByZXN0b3JlIC0tc3RhZ2VkIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKIAltb2RpZmllZDogICBzbQogCiBDaGFuZ2VzIG5vdCBzdGFnZWQgZm9yIGNvbW1pdDoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIHVwZGF0ZSB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKQotICAodXNlICJnaXQgY2hlY2tvdXQgLS0gPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgPGZpbGU+Li4uIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpCiAJbW9kaWZpZWQ6ICAgZGlyMS9tb2RpZmllZAogCiBVbnRyYWNrZWQgZmlsZXMgbm90IGxpc3RlZCAodXNlIC11IG9wdGlvbiB0byBzaG93IHVudHJhY2tlZCBmaWxlcykKQEAgLTE2MzMsNyArMTU3MSw3IEBACiAJdGVzdF9jbXAgZXhwZWN0ZWRfd2l0aG91dF9zdGFzaCBhY3R1YWwKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnbm8gYWRkaXRpb25uYWwgaW5mbyBpZiBubyBzdGFzaCBlbnRyaWVzJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdubyBhZGRpdGlvbmFsIGluZm8gaWYgbm8gc3Rhc2ggZW50cmllcycgJwogCWdpdCBzdGFzaCBjbGVhciAmJgogCWdpdCAtYyBzdGF0dXMuc2hvd1N0YXNoPXRydWUgc3RhdHVzID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3RlZF93aXRob3V0X3N0YXNoIGFjdHVhbApkaWZmIC0tZ2l0IGEvdC90NzUxMC1zaWduZWQtY29tbWl0LnNoIGIvdC90NzUxMC1zaWduZWQtY29tbWl0LnNoCmluZGV4IDg2ZDNmOTMuLjBjMDZkMjIgMTAwNzU1Ci0tLSBhL3QvdDc1MTAtc2lnbmVkLWNvbW1pdC5zaAorKysgYi90L3Q3NTEwLXNpZ25lZC1jb21taXQuc2gKQEAgLTQ5LDE1ICs0OSwyOCBAQAogCWdpdCB0YWcgZWlnaHRoLXNpZ25lZC1hbHQgJiYKIAogCSMgY29tbWl0LmdwZ3NpZ24gaXMgc3RpbGwgb24gYnV0IHRoaXMgbXVzdCBub3QgYmUgc2lnbmVkCi0JZ2l0IHRhZyBuaW50aC11bnNpZ25lZCAkKGVjaG8gOSB8IGdpdCBjb21taXQtdHJlZSBIRUFEXnt0cmVlfSkgJiYKKwllY2hvIDkgfCBnaXQgY29tbWl0LXRyZWUgSEVBRF57dHJlZX0gPm9pZCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDEgb2lkICYmCisJZ2l0IHRhZyBuaW50aC11bnNpZ25lZCAkKGNhdCBvaWQpICYmCiAJIyBleHBsaWNpdCAtUyBvZiBjb3Vyc2UgbXVzdCBzaWduLgotCWdpdCB0YWcgdGVudGgtc2lnbmVkICQoZWNobyA5IHwgZ2l0IGNvbW1pdC10cmVlIC1TIEhFQURee3RyZWV9KQorCWVjaG8gMTAgfCBnaXQgY29tbWl0LXRyZWUgLVMgSEVBRF57dHJlZX0gPm9pZCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDEgb2lkICYmCisJZ2l0IHRhZyB0ZW50aC1zaWduZWQgJChjYXQgb2lkKSAmJgorCisJIyAtLWdwZy1zaWduWz08a2V5LWlkPl0gbXVzdCBzaWduLgorCWVjaG8gMTEgfCBnaXQgY29tbWl0LXRyZWUgLS1ncGctc2lnbiBIRUFEXnt0cmVlfSA+b2lkICYmCisJdGVzdF9saW5lX2NvdW50ID0gMSBvaWQgJiYKKwlnaXQgdGFnIGVsZXZlbnRoLXNpZ25lZCAkKGNhdCBvaWQpICYmCisJZWNobyAxMiB8IGdpdCBjb21taXQtdHJlZSAtLWdwZy1zaWduPUI3MjI3MTg5IEhFQURee3RyZWV9ID5vaWQgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAxIG9pZCAmJgorCWdpdCB0YWcgdHdlbGZ0aC1zaWduZWQtYWx0ICQoY2F0IG9pZCkKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBHUEcgJ3ZlcmlmeSBhbmQgc2hvdyBzaWduYXR1cmVzJyAnCiAJKAogCQlmb3IgY29tbWl0IGluIGluaXRpYWwgc2Vjb25kIG1lcmdlIGZvdXJ0aC1zaWduZWQgXAotCQkJZmlmdGgtc2lnbmVkIHNpeHRoLXNpZ25lZCBzZXZlbnRoLXNpZ25lZCB0ZW50aC1zaWduZWQKKwkJCWZpZnRoLXNpZ25lZCBzaXh0aC1zaWduZWQgc2V2ZW50aC1zaWduZWQgdGVudGgtc2lnbmVkIFwKKwkJCWVsZXZlbnRoLXNpZ25lZAogCQlkbwogCQkJZ2l0IHZlcmlmeS1jb21taXQgJGNvbW1pdCAmJgogCQkJZ2l0IHNob3cgLS1wcmV0dHk9c2hvcnQgLS1zaG93LXNpZ25hdHVyZSAkY29tbWl0ID5hY3R1YWwgJiYKQEAgLTc4LDcgKzkxLDcgQEAKIAkJZG9uZQogCSkgJiYKIAkoCi0JCWZvciBjb21taXQgaW4gZWlnaHRoLXNpZ25lZC1hbHQKKwkJZm9yIGNvbW1pdCBpbiBlaWdodGgtc2lnbmVkLWFsdCB0d2VsZnRoLXNpZ25lZC1hbHQKIAkJZG8KIAkJCWdpdCBzaG93IC0tcHJldHR5PXNob3J0IC0tc2hvdy1zaWduYXR1cmUgJGNvbW1pdCA+YWN0dWFsICYmCiAJCQlncmVwICJHb29kIHNpZ25hdHVyZSBmcm9tIiBhY3R1YWwgJiYKQEAgLTk2LDYgKzEwOSwyMSBAQAogCWdyZXAgIm5vdCBjZXJ0aWZpZWQiIGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQRyAndmVyaWZ5LWNvbW1pdCBleGl0cyBzdWNjZXNzIHdpdGggbWF0Y2hpbmcgbWluVHJ1c3RMZXZlbCcgJworCXRlc3RfY29uZmlnIGdwZy5taW5UcnVzdExldmVsIHVsdGltYXRlICYmCisJZ2l0IHZlcmlmeS1jb21taXQgc2l4dGgtc2lnbmVkCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHICd2ZXJpZnktY29tbWl0IGV4aXRzIHN1Y2Nlc3Mgd2l0aCBsb3cgbWluVHJ1c3RMZXZlbCcgJworCXRlc3RfY29uZmlnIGdwZy5taW5UcnVzdExldmVsIGZ1bGx5ICYmCisJZ2l0IHZlcmlmeS1jb21taXQgc2l4dGgtc2lnbmVkCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHICd2ZXJpZnktY29tbWl0IGV4aXRzIGZhaWx1cmUgd2l0aCBoaWdoIG1pblRydXN0TGV2ZWwnICcKKwl0ZXN0X2NvbmZpZyBncGcubWluVHJ1c3RMZXZlbCB1bHRpbWF0ZSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCB2ZXJpZnktY29tbWl0IGVpZ2h0aC1zaWduZWQtYWx0CisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHICd2ZXJpZnkgc2lnbmF0dXJlcyB3aXRoIC0tcmF3JyAnCiAJKAogCQlmb3IgY29tbWl0IGluIGluaXRpYWwgc2Vjb25kIG1lcmdlIGZvdXJ0aC1zaWduZWQgZmlmdGgtc2lnbmVkIHNpeHRoLXNpZ25lZCBzZXZlbnRoLXNpZ25lZApAQCAtMjA2LDYgKzIzNCwzMCBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyBHUEcgJ3Nob3cgdW50cnVzdGVkIHNpZ25hdHVyZSB3aXRoIHVuZGVmaW5lZCB0cnVzdCBsZXZlbCcgJworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwl1bmRlZmluZWQKKwk2NUEwRUVBMDJFMzBDQUQ3CisJRXJpcyBEaXNjb3JkaWEgPGRpc2NvcmRAZXhhbXBsZS5uZXQ+CisJRjgzNjRBNTlFMDdGRkU5RjRENjMwMDVBNjVBMEVFQTAyRTMwQ0FENworCUQ0QkUyMjMxMUFEMzEzMUU1RURBMjlBNDYxMDkyRTg1QjcyMjcxODkKKwlFT0YKKwlnaXQgbG9nIC0xIC0tZm9ybWF0PSIlR1QlbiVHSyVuJUdTJW4lR0YlbiVHUCIgZWlnaHRoLXNpZ25lZC1hbHQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBHUEcgJ3Nob3cgdW50cnVzdGVkIHNpZ25hdHVyZSB3aXRoIHVsdGltYXRlIHRydXN0IGxldmVsJyAnCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCXVsdGltYXRlCisJMTNCNkY1MUVDRERFNDMwRAorCUMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNvbT4KKwk3M0Q3NTg3NDRCRTcyMTY5OEVDNTRFODcxM0I2RjUxRUNEREU0MzBECisJNzNENzU4NzQ0QkU3MjE2OThFQzU0RTg3MTNCNkY1MUVDRERFNDMwRAorCUVPRgorCWdpdCBsb2cgLTEgLS1mb3JtYXQ9IiVHVCVuJUdLJW4lR1MlbiVHRiVuJUdQIiBzaXh0aC1zaWduZWQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyBHUEcgJ3Nob3cgdW5rbm93biBzaWduYXR1cmUgd2l0aCBjdXN0b20gZm9ybWF0JyAnCiAJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgogCUUKZGlmZiAtLWdpdCBhL3QvdDc1MTItc3RhdHVzLWhlbHAuc2ggYi90L3Q3NTEyLXN0YXR1cy1oZWxwLnNoCmluZGV4IDQ1ODYwOGMuLjI5NTE4ZTAgMTAwNzU1Ci0tLSBhL3QvdDc1MTItc3RhdHVzLWhlbHAuc2gKKysrIGIvdC90NzUxMi1zdGF0dXMtaGVscC5zaApAQCAtMzMsNyArMzMsNiBAQAogCiBVbm1lcmdlZCBwYXRoczoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIG1hcmsgcmVzb2x1dGlvbikKLQogCWJvdGggbW9kaWZpZWQ6ICAgbWFpbi50eHQKIAogbm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXQgKHVzZSAiZ2l0IGFkZCIgYW5kL29yICJnaXQgY29tbWl0IC1hIikKQEAgLTU0LDcgKzUzLDYgQEAKICAgKHVzZSAiZ2l0IGNvbW1pdCIgdG8gY29uY2x1ZGUgbWVyZ2UpCiAKIENoYW5nZXMgdG8gYmUgY29tbWl0dGVkOgotCiAJbW9kaWZpZWQ6ICAgbWFpbi50eHQKIAogVW50cmFja2VkIGZpbGVzIG5vdCBsaXN0ZWQgKHVzZSAtdSBvcHRpb24gdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpCkBAIC03MywxMCArNzEsMTAgQEAKICcKIAogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGF0dXMgd2hlbiByZWJhc2UgaW4gcHJvZ3Jlc3MgYmVmb3JlIHJlc29sdmluZyBjb25mbGljdHMnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXR1cyB3aGVuIHJlYmFzZSAtLWFwcGx5IGluIHByb2dyZXNzIGJlZm9yZSByZXNvbHZpbmcgY29uZmxpY3RzJyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmViYXNlIC0tYWJvcnQiICYmCiAJT05UTz0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEXl4pICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSBIRUFEXiAtLW9udG8gSEVBRF5eICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLWFwcGx5IEhFQUReIC0tb250byBIRUFEXl4gJiYKIAljYXQgPmV4cGVjdGVkIDw8RU9GICYmCiByZWJhc2UgaW4gcHJvZ3Jlc3M7IG9udG8gJE9OVE8KIFlvdSBhcmUgY3VycmVudGx5IHJlYmFzaW5nIGJyYW5jaCAnXCcncmViYXNlX2NvbmZsaWN0cydcJycgb24gJ1wnJyRPTlRPJ1wnJy4KQEAgLTg1LDkgKzgzLDggQEAKICAgKHVzZSAiZ2l0IHJlYmFzZSAtLWFib3J0IiB0byBjaGVjayBvdXQgdGhlIG9yaWdpbmFsIGJyYW5jaCkKIAogVW5tZXJnZWQgcGF0aHM6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKKyAgKHVzZSAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gbWFyayByZXNvbHV0aW9uKQotCiAJYm90aCBtb2RpZmllZDogICBtYWluLnR4dAogCiBubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdCAodXNlICJnaXQgYWRkIiBhbmQvb3IgImdpdCBjb21taXQgLWEiKQpAQCAtOTcsMTEgKzk0LDExIEBACiAnCiAKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3RhdHVzIHdoZW4gcmViYXNlIGluIHByb2dyZXNzIGJlZm9yZSByZWJhc2UgLS1jb250aW51ZScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3RhdHVzIHdoZW4gcmViYXNlIC0tYXBwbHkgaW4gcHJvZ3Jlc3MgYmVmb3JlIHJlYmFzZSAtLWNvbnRpbnVlJyAnCiAJZ2l0IHJlc2V0IC0taGFyZCByZWJhc2VfY29uZmxpY3RzICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmViYXNlIC0tYWJvcnQiICYmCiAJT05UTz0kKGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEXl4pICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSBIRUFEXiAtLW9udG8gSEVBRF5eICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLWFwcGx5IEhFQUReIC0tb250byBIRUFEXl4gJiYKIAllY2hvIHRocmVlID5tYWluLnR4dCAmJgogCWdpdCBhZGQgbWFpbi50eHQgJiYKIAljYXQgPmV4cGVjdGVkIDw8RU9GICYmCkBAIC0xMTAsOCArMTA3LDcgQEAKICAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biAiZ2l0IHJlYmFzZSAtLWNvbnRpbnVlIikKIAogQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKLQorICAodXNlICJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCiAJbW9kaWZpZWQ6ICAgbWFpbi50eHQKIAogVW50cmFja2VkIGZpbGVzIG5vdCBsaXN0ZWQgKHVzZSAtdSBvcHRpb24gdG8gc2hvdyB1bnRyYWNrZWQgZmlsZXMpCkBAIC0xNDgsOSArMTQ0LDggQEAKICAgKHVzZSAiZ2l0IHJlYmFzZSAtLWFib3J0IiB0byBjaGVjayBvdXQgdGhlIG9yaWdpbmFsIGJyYW5jaCkKIAogVW5tZXJnZWQgcGF0aHM6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKKyAgKHVzZSAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gbWFyayByZXNvbHV0aW9uKQotCiAJYm90aCBtb2RpZmllZDogICBtYWluLnR4dAogCiBubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdCAodXNlICJnaXQgYWRkIiBhbmQvb3IgImdpdCBjb21taXQgLWEiKQpAQCAtMTc2LDggKzE3MSw3IEBACiAgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gImdpdCByZWJhc2UgLS1jb250aW51ZSIpCiAKIENoYW5nZXMgdG8gYmUgY29tbWl0dGVkOgotICAodXNlICJnaXQgcmVzZXQgSEVBRCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCi0KKyAgKHVzZSAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQogCW1vZGlmaWVkOiAgIG1haW4udHh0CiAKIFVudHJhY2tlZCBmaWxlcyBub3QgbGlzdGVkICh1c2UgLXUgb3B0aW9uIHRvIHNob3cgdW50cmFja2VkIGZpbGVzKQpAQCAtMjQ2LDggKzI0MCw3IEBACiAKIENoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0gICh1c2UgImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKLQorICAodXNlICJnaXQgcmVzdG9yZSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKIAltb2RpZmllZDogICBtYWluLnR4dAogCiBubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdCAodXNlICJnaXQgYWRkIiBhbmQvb3IgImdpdCBjb21taXQgLWEiKQpAQCAtMzU0LDggKzM0Nyw3IEBACiAKIENoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0gICh1c2UgImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKLQorICAodXNlICJnaXQgcmVzdG9yZSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKIAltb2RpZmllZDogICBtYWluLnR4dAogCiBubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdCAodXNlICJnaXQgYWRkIiBhbmQvb3IgImdpdCBjb21taXQgLWEiKQpAQCAtNDUzLDggKzQ0NSw3IEBACiAKIENoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0gICh1c2UgImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKLQorICAodXNlICJnaXQgcmVzdG9yZSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKIAltb2RpZmllZDogICBtYWluLnR4dAogCiBubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdCAodXNlICJnaXQgYWRkIiBhbmQvb3IgImdpdCBjb21taXQgLWEiKQpAQCAtNTU3LDggKzU0OCw3IEBACiAKIENoYW5nZXMgbm90IHN0YWdlZCBmb3IgY29tbWl0OgogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpCi0gICh1c2UgImdpdCBjaGVja291dCAtLSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKLQorICAodXNlICJnaXQgcmVzdG9yZSA8ZmlsZT4uLi4iIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkKIAltb2RpZmllZDogICBtYWluLnR4dAogCiBubyBjaGFuZ2VzIGFkZGVkIHRvIGNvbW1pdCAodXNlICJnaXQgYWRkIiBhbmQvb3IgImdpdCBjb21taXQgLWEiKQpAQCAtNjk4LDcgKzY4OCw3IEBACiAnCiAKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnc3RhdHVzIHdoZW4gcmViYXNlIGNvbmZsaWN0cyB3aXRoIHN0YXR1c2hpbnRzIGRpc2FibGVkJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGF0dXMgd2hlbiByZWJhc2UgLS1hcHBseSBjb25mbGljdHMgd2l0aCBzdGF0dXNoaW50cyBkaXNhYmxlZCcgJwogCWdpdCByZXNldCAtLWhhcmQgbWFzdGVyICYmCiAJZ2l0IGNoZWNrb3V0IC1iIHN0YXR1c2hpbnRzX2Rpc2FibGVkICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY29uZmlnIC0tbG9jYWwgYWR2aWNlLnN0YXR1c2hpbnRzIHRydWUiICYmCkBAIC03MDgsNyArNjk4LDcgQEAKIAl0ZXN0X2NvbW1pdCB0aHJlZV9zdGF0dXNoaW50cyBtYWluLnR4dCB0aHJlZSAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlYmFzZSAtLWFib3J0IiAmJgogCU9OVE89JChnaXQgcmV2LXBhcnNlIC0tc2hvcnQgSEVBRF5eKSAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgSEVBRF4gLS1vbnRvIEhFQUReXiAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgLS1hcHBseSBIRUFEXiAtLW9udG8gSEVBRF5eICYmCiAJY2F0ID5leHBlY3RlZCA8PEVPRiAmJgogcmViYXNlIGluIHByb2dyZXNzOyBvbnRvICRPTlRPCiBZb3UgYXJlIGN1cnJlbnRseSByZWJhc2luZyBicmFuY2ggJ1wnJ3N0YXR1c2hpbnRzX2Rpc2FibGVkJ1wnJyBvbiAnXCcnJE9OVE8nXCcnLgpAQCAtNzQzLDExICs3MzMsMTEgQEAKIE9uIGJyYW5jaCBjaGVycnlfYnJhbmNoCiBZb3UgYXJlIGN1cnJlbnRseSBjaGVycnktcGlja2luZyBjb21taXQgJFRPX0NIRVJSWV9QSUNLLgogICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuICJnaXQgY2hlcnJ5LXBpY2sgLS1jb250aW51ZSIpCisgICh1c2UgImdpdCBjaGVycnktcGljayAtLXNraXAiIHRvIHNraXAgdGhpcyBwYXRjaCkKICAgKHVzZSAiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnQiIHRvIGNhbmNlbCB0aGUgY2hlcnJ5LXBpY2sgb3BlcmF0aW9uKQogCiBVbm1lcmdlZCBwYXRoczoKICAgKHVzZSAiZ2l0IGFkZCA8ZmlsZT4uLi4iIHRvIG1hcmsgcmVzb2x1dGlvbikKLQogCWJvdGggbW9kaWZpZWQ6ICAgbWFpbi50eHQKIAogbm8gY2hhbmdlcyBhZGRlZCB0byBjb21taXQgKHVzZSAiZ2l0IGFkZCIgYW5kL29yICJnaXQgY29tbWl0IC1hIikKQEAgLTc2OCwxMCArNzU4LDEwIEBACiBPbiBicmFuY2ggY2hlcnJ5X2JyYW5jaAogWW91IGFyZSBjdXJyZW50bHkgY2hlcnJ5LXBpY2tpbmcgY29tbWl0ICRUT19DSEVSUllfUElDSy4KICAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biAiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWUiKQorICAodXNlICJnaXQgY2hlcnJ5LXBpY2sgLS1za2lwIiB0byBza2lwIHRoaXMgcGF0Y2gpCiAgICh1c2UgImdpdCBjaGVycnktcGljayAtLWFib3J0IiB0byBjYW5jZWwgdGhlIGNoZXJyeS1waWNrIG9wZXJhdGlvbikKIAogQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6Ci0KIAltb2RpZmllZDogICBtYWluLnR4dAogCiBVbnRyYWNrZWQgZmlsZXMgbm90IGxpc3RlZCAodXNlIC11IG9wdGlvbiB0byBzaG93IHVudHJhY2tlZCBmaWxlcykKQEAgLTc4MCw2ICs3NzAsNDEgQEAKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXR1cyB3aGVuIGNoZXJyeS1waWNraW5nIGFmdGVyIGNvbW1pdHRpbmcgY29uZmxpY3QgcmVzb2x1dGlvbicgJworCWdpdCByZXNldCAtLWhhcmQgY2hlcnJ5X2JyYW5jaCAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnQiICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIGNoZXJyeV9icmFuY2hfc2Vjb25kIG9uZV9jaGVycnkgJiYKKwllY2hvIGVuZCA+bWFpbi50eHQgJiYKKwlnaXQgY29tbWl0IC1hICYmCisJY2F0ID5leHBlY3RlZCA8PEVPRiAmJgorT24gYnJhbmNoIGNoZXJyeV9icmFuY2gKK0NoZXJyeS1waWNrIGN1cnJlbnRseSBpbiBwcm9ncmVzcy4KKyAgKHJ1biAiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWUiIHRvIGNvbnRpbnVlKQorICAodXNlICJnaXQgY2hlcnJ5LXBpY2sgLS1za2lwIiB0byBza2lwIHRoaXMgcGF0Y2gpCisgICh1c2UgImdpdCBjaGVycnktcGljayAtLWFib3J0IiB0byBjYW5jZWwgdGhlIGNoZXJyeS1waWNrIG9wZXJhdGlvbikKKworbm90aGluZyB0byBjb21taXQgKHVzZSAtdSB0byBzaG93IHVudHJhY2tlZCBmaWxlcykKK0VPRgorCWdpdCBzdGF0dXMgLS11bnRyYWNrZWQtZmlsZXM9bm8gPmFjdHVhbCAmJgorCXRlc3RfaTE4bmNtcCBleHBlY3RlZCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc3RhdHVzIHNob3dzIGNoZXJyeS1waWNrIHdpdGggaW52YWxpZCBvaWQnICcKKwlta2RpciAuZ2l0L3NlcXVlbmNlciAmJgorCXRlc3Rfd3JpdGVfbGluZXMgInBpY2sgaW52YWxpZC1vaWQiID4uZ2l0L3NlcXVlbmNlci90b2RvICYmCisJZ2l0IHN0YXR1cyAtLXVudHJhY2tlZC1maWxlcz1ubyA+YWN0dWFsIDI+ZXJyICYmCisJZ2l0IGNoZXJyeS1waWNrIC0tcXVpdCAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBlcnIgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0ZWQgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXR1cyBkb2VzIG5vdCBzaG93IGVycm9yIGlmIC5naXQvc2VxdWVuY2VyIGlzIGEgZmlsZScgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAicm0gLmdpdC9zZXF1ZW5jZXIiICYmCisJdGVzdF93cml0ZV9saW5lcyBoZWxsbyA+LmdpdC9zZXF1ZW5jZXIgJiYKKwlnaXQgc3RhdHVzIC0tdW50cmFja2VkLWZpbGVzPW5vIDI+ZXJyICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGVycgorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGF0dXMgc2hvd2luZyBkZXRhY2hlZCBhdCBhbmQgZnJvbSBhIHRhZycgJwogCXRlc3RfY29tbWl0IGF0YWcgdGFnZ2luZyAmJgogCWdpdCBjaGVja291dCBhdGFnICYmCkBAIC04MTMsMTIgKzgzOCwxMiBAQAogT24gYnJhbmNoIG1hc3RlcgogWW91IGFyZSBjdXJyZW50bHkgcmV2ZXJ0aW5nIGNvbW1pdCAkVE9fUkVWRVJULgogICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuICJnaXQgcmV2ZXJ0IC0tY29udGludWUiKQorICAodXNlICJnaXQgcmV2ZXJ0IC0tc2tpcCIgdG8gc2tpcCB0aGlzIHBhdGNoKQogICAodXNlICJnaXQgcmV2ZXJ0IC0tYWJvcnQiIHRvIGNhbmNlbCB0aGUgcmV2ZXJ0IG9wZXJhdGlvbikKIAogVW5tZXJnZWQgcGF0aHM6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKKyAgKHVzZSAiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uIiB0byB1bnN0YWdlKQogICAodXNlICJnaXQgYWRkIDxmaWxlPi4uLiIgdG8gbWFyayByZXNvbHV0aW9uKQotCiAJYm90aCBtb2RpZmllZDogICB0by1yZXZlcnQudHh0CiAKIG5vIGNoYW5nZXMgYWRkZWQgdG8gY29tbWl0ICh1c2UgImdpdCBhZGQiIGFuZC9vciAiZ2l0IGNvbW1pdCAtYSIpCkBAIC04MzQsMTEgKzg1OSwxMSBAQAogT24gYnJhbmNoIG1hc3RlcgogWW91IGFyZSBjdXJyZW50bHkgcmV2ZXJ0aW5nIGNvbW1pdCAkVE9fUkVWRVJULgogICAoYWxsIGNvbmZsaWN0cyBmaXhlZDogcnVuICJnaXQgcmV2ZXJ0IC0tY29udGludWUiKQorICAodXNlICJnaXQgcmV2ZXJ0IC0tc2tpcCIgdG8gc2tpcCB0aGlzIHBhdGNoKQogICAodXNlICJnaXQgcmV2ZXJ0IC0tYWJvcnQiIHRvIGNhbmNlbCB0aGUgcmV2ZXJ0IG9wZXJhdGlvbikKIAogQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6Ci0gICh1c2UgImdpdCByZXNldCBIRUFEIDxmaWxlPi4uLiIgdG8gdW5zdGFnZSkKLQorICAodXNlICJnaXQgcmVzdG9yZSAtLXN0YWdlZCA8ZmlsZT4uLi4iIHRvIHVuc3RhZ2UpCiAJbW9kaWZpZWQ6ICAgdG8tcmV2ZXJ0LnR4dAogCiBVbnRyYWNrZWQgZmlsZXMgbm90IGxpc3RlZCAodXNlIC11IG9wdGlvbiB0byBzaG93IHVudHJhY2tlZCBmaWxlcykKQEAgLTg1Nyw2ICs4ODIsMjUgQEAKIAl0ZXN0X2kxOG5jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXR1cyB3aGlsZSByZXZlcnRpbmcgYWZ0ZXIgY29tbWl0dGluZyBjb25mbGljdCByZXNvbHV0aW9uJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmV2ZXJ0IC0tYWJvcnQiICYmCisJZ2l0IHJlc2V0IC0taGFyZCBuZXcgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmV2ZXJ0IG9sZCBuZXcgJiYKKwllY2hvIHJldmVydGVkID50by1yZXZlcnQudHh0ICYmCisJZ2l0IGNvbW1pdCAtYSAmJgorCWNhdCA+ZXhwZWN0ZWQgPDxFT0YgJiYKK09uIGJyYW5jaCBtYXN0ZXIKK1JldmVydCBjdXJyZW50bHkgaW4gcHJvZ3Jlc3MuCisgIChydW4gImdpdCByZXZlcnQgLS1jb250aW51ZSIgdG8gY29udGludWUpCisgICh1c2UgImdpdCByZXZlcnQgLS1za2lwIiB0byBza2lwIHRoaXMgcGF0Y2gpCisgICh1c2UgImdpdCByZXZlcnQgLS1hYm9ydCIgdG8gY2FuY2VsIHRoZSByZXZlcnQgb3BlcmF0aW9uKQorCitub3RoaW5nIHRvIGNvbW1pdCAodXNlIC11IHRvIHNob3cgdW50cmFja2VkIGZpbGVzKQorRU9GCisJZ2l0IHN0YXR1cyAtLXVudHJhY2tlZC1maWxlcz1ubyA+YWN0dWFsICYmCisJdGVzdF9pMThuY21wIGV4cGVjdGVkIGFjdHVhbAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcmVwYXJlIGZvciBkaWZmZXJlbnQgbnVtYmVyIG9mIGNvbW1pdHMgcmViYXNlZCcgJwogCWdpdCByZXNldCAtLWhhcmQgbWFzdGVyICYmCiAJZ2l0IGNoZWNrb3V0IC1iIHNldmVyYWxfY29tbWl0cyAmJgpkaWZmIC0tZ2l0IGEvdC90NzUxMy1pbnRlcnByZXQtdHJhaWxlcnMuc2ggYi90L3Q3NTEzLWludGVycHJldC10cmFpbGVycy5zaAppbmRleCBjNDQxODYxLi42NjAyNzkwIDEwMDc1NQotLS0gYS90L3Q3NTEzLWludGVycHJldC10cmFpbGVycy5zaAorKysgYi90L3Q3NTEzLWludGVycHJldC10cmFpbGVycy5zaApAQCAtNTM4LDMzICs1MzgsNTAgQEAKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnd2l0aCBtZXNzYWdlIHRoYXQgaGFzIGNvbW1lbnRzJyAnCi0JY2F0IGJhc2ljX21lc3NhZ2UgPm1lc3NhZ2Vfd2l0aF9jb21tZW50cyAmJgotCXNlZCAtZSAicy8gWlwkLyAvIiA+Pm1lc3NhZ2Vfd2l0aF9jb21tZW50cyA8PC1cRU9GICYmCi0JCSMgY29tbWVudAorIyBDb3ZlciBtdWx0aXBsZSBjb21tZW50IGNoYXJhY3RlcnMgd2l0aCB0aGUgc2FtZSB0ZXN0IGlucHV0LgorZm9yIGNoYXIgaW4gIiMiICI7IgorZG8KKwljYXNlICIkY2hhciIgaW4KKwkiIyIpCisJCSMgVGhpcyBpcyB0aGUgZGVmYXVsdCwgc28gbGV0J3MgZXhwbGljaXRseSBfbm90XworCQkjIHNldCBhbnkgY29uZmlnIHRvIG1ha2Ugc3VyZSBpdCBiZWhhdmVzIGFzIHdlIGV4cGVjdC4KKwkJOzsKKwkqKQorCQljb25maWc9Ii1jIGNvcmUuY29tbWVudENoYXI9JGNoYXIiCisJCTs7CisJZXNhYwogCi0JCSMgb3RoZXIgY29tbWVudAotCQlDYzogWgotCQkjIHlldCBhbm90aGVyIGNvbW1lbnQKLQkJUmV2aWV3ZWQtYnk6IEpvaGFuCi0JCVJldmlld2VkLWJ5OiBaCi0JCSMgbGFzdCBjb21tZW50CisJdGVzdF9leHBlY3Rfc3VjY2VzcyAid2l0aCBtZXNzYWdlIHRoYXQgaGFzIGNvbW1lbnRzICgkY2hhcikiICcKKwkJY2F0IGJhc2ljX21lc3NhZ2UgPm1lc3NhZ2Vfd2l0aF9jb21tZW50cyAmJgorCQlzZWQgLWUgInMvIFpcJC8gLyIgXAorCQkgICAgLWUgInMvIy8kY2hhci9nIiA+Pm1lc3NhZ2Vfd2l0aF9jb21tZW50cyA8PC1FT0YgJiYKKwkJCSMgY29tbWVudAogCi0JRU9GCi0JY2F0IGJhc2ljX3BhdGNoID4+bWVzc2FnZV93aXRoX2NvbW1lbnRzICYmCi0JY2F0IGJhc2ljX21lc3NhZ2UgPmV4cGVjdGVkICYmCi0JY2F0ID4+ZXhwZWN0ZWQgPDwtXEVPRiAmJgotCQkjIGNvbW1lbnQKKwkJCSMgb3RoZXIgY29tbWVudAorCQkJQ2M6IFoKKwkJCSMgeWV0IGFub3RoZXIgY29tbWVudAorCQkJUmV2aWV3ZWQtYnk6IEpvaGFuCisJCQlSZXZpZXdlZC1ieTogWgorCQkJIyBsYXN0IGNvbW1lbnQKIAotCQlSZXZpZXdlZC1ieTogSm9oYW4KLQkJQ2M6IFBlZmYKLQkJIyBsYXN0IGNvbW1lbnQKKwkJRU9GCisJCWNhdCBiYXNpY19wYXRjaCA+Pm1lc3NhZ2Vfd2l0aF9jb21tZW50cyAmJgorCQljYXQgYmFzaWNfbWVzc2FnZSA+ZXhwZWN0ZWQgJiYKKwkJc2VkIC1lICJzLyMvJGNoYXIvZyIgPj5leHBlY3RlZCA8PC1cRU9GICYmCisJCQkjIGNvbW1lbnQKIAotCUVPRgotCWNhdCBiYXNpY19wYXRjaCA+PmV4cGVjdGVkICYmCi0JZ2l0IGludGVycHJldC10cmFpbGVycyAtLXRyaW0tZW1wdHkgLS10cmFpbGVyICJDYzogUGVmZiIgbWVzc2FnZV93aXRoX2NvbW1lbnRzID5hY3R1YWwgJiYKLQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKLScKKwkJCVJldmlld2VkLWJ5OiBKb2hhbgorCQkJQ2M6IFBlZmYKKwkJCSMgbGFzdCBjb21tZW50CisKKwkJRU9GCisJCWNhdCBiYXNpY19wYXRjaCA+PmV4cGVjdGVkICYmCisJCWdpdCAkY29uZmlnIGludGVycHJldC10cmFpbGVycyBcCisJCQktLXRyaW0tZW1wdHkgLS10cmFpbGVyICJDYzogUGVmZiIgXAorCQkJbWVzc2FnZV93aXRoX2NvbW1lbnRzID5hY3R1YWwgJiYKKwkJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJJworZG9uZQogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd3aXRoIG1lc3NhZ2UgdGhhdCBoYXMgYW4gb2xkIHN0eWxlIGNvbmZsaWN0IGJsb2NrJyAnCiAJY2F0IGJhc2ljX21lc3NhZ2UgPm1lc3NhZ2Vfd2l0aF9jb21tZW50cyAmJgpAQCAtMTIxNyw3ICsxMjM0LDcgQEAKIAl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnd2l0aCBjb21tYW5kIHVzaW5nIGNvbW1pdGVyIGluZm9ybWF0aW9uJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICd3aXRoIGNvbW1hbmQgdXNpbmcgY29tbWl0dGVyIGluZm9ybWF0aW9uJyAnCiAJZ2l0IGNvbmZpZyB0cmFpbGVyLnNpZ24uaWZFeGlzdHMgImFkZElmRGlmZmVyZW50IiAmJgogCWdpdCBjb25maWcgdHJhaWxlci5zaWduLmNvbW1hbmQgImVjaG8gXCJcJEdJVF9DT01NSVRURVJfTkFNRSA8XCRHSVRfQ09NTUlUVEVSX0VNQUlMPlwiIiAmJgogCWNhdCBjb21wbGV4X21lc3NhZ2VfYm9keSA+ZXhwZWN0ZWQgJiYKZGlmZiAtLWdpdCBhL3QvdDc1MTctcGVyLXJlcG8tZW1haWwuc2ggYi90L3Q3NTE3LXBlci1yZXBvLWVtYWlsLnNoCmluZGV4IDIzMWI4Y2MuLmIyNDAxY2UgMTAwNzU1Ci0tLSBhL3QvdDc1MTctcGVyLXJlcG8tZW1haWwuc2gKKysrIGIvdC90NzUxNy1wZXItcmVwby1lbWFpbC5zaApAQCAtODUsNCArODUsNzggQEAKIAl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC1wIG1hc3RlcgogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhdXRob3IubmFtZSBvdmVycmlkZXMgdXNlci5uYW1lJyAnCisJdGVzdF9jb25maWcgdXNlci5uYW1lIHVzZXIgJiYKKwl0ZXN0X2NvbmZpZyB1c2VyLmVtYWlsIHVzZXJAZXhhbXBsZS5jb20gJiYKKwl0ZXN0X2NvbmZpZyBhdXRob3IubmFtZSBhdXRob3IgJiYKKwl0ZXN0X2NvbW1pdCBhdXRob3ItbmFtZS1vdmVycmlkZS11c2VyICYmCisJZWNobyBhdXRob3IgdXNlckBleGFtcGxlLmNvbSA+IGV4cGVjdGVkLWF1dGhvciAmJgorCWVjaG8gdXNlciB1c2VyQGV4YW1wbGUuY29tID4gZXhwZWN0ZWQtY29tbWl0dGVyICYmCisJZ2l0IGxvZyAtLWZvcm1hdD0iJWFuICVhZSIgLTEgPiBhY3R1YWwtYXV0aG9yICYmCisJZ2l0IGxvZyAtLWZvcm1hdD0iJWNuICVjZSIgLTEgPiBhY3R1YWwtY29tbWl0dGVyICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQtYXV0aG9yIGFjdHVhbC1hdXRob3IgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZC1jb21taXR0ZXIgYWN0dWFsLWNvbW1pdHRlcgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhdXRob3IuZW1haWwgb3ZlcnJpZGVzIHVzZXIuZW1haWwnICcKKwl0ZXN0X2NvbmZpZyB1c2VyLm5hbWUgdXNlciAmJgorCXRlc3RfY29uZmlnIHVzZXIuZW1haWwgdXNlckBleGFtcGxlLmNvbSAmJgorCXRlc3RfY29uZmlnIGF1dGhvci5lbWFpbCBhdXRob3JAZXhhbXBsZS5jb20gJiYKKwl0ZXN0X2NvbW1pdCBhdXRob3ItZW1haWwtb3ZlcnJpZGUtdXNlciAmJgorCWVjaG8gdXNlciBhdXRob3JAZXhhbXBsZS5jb20gPiBleHBlY3RlZC1hdXRob3IgJiYKKwllY2hvIHVzZXIgdXNlckBleGFtcGxlLmNvbSA+IGV4cGVjdGVkLWNvbW1pdHRlciAmJgorCWdpdCBsb2cgLS1mb3JtYXQ9IiVhbiAlYWUiIC0xID4gYWN0dWFsLWF1dGhvciAmJgorCWdpdCBsb2cgLS1mb3JtYXQ9IiVjbiAlY2UiIC0xID4gYWN0dWFsLWNvbW1pdHRlciAmJgorCXRlc3RfY21wIGV4cGVjdGVkLWF1dGhvciBhY3R1YWwtYXV0aG9yICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQtY29tbWl0dGVyIGFjdHVhbC1jb21taXR0ZXIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29tbWl0dGVyLm5hbWUgb3ZlcnJpZGVzIHVzZXIubmFtZScgJworCXRlc3RfY29uZmlnIHVzZXIubmFtZSB1c2VyICYmCisJdGVzdF9jb25maWcgdXNlci5lbWFpbCB1c2VyQGV4YW1wbGUuY29tICYmCisJdGVzdF9jb25maWcgY29tbWl0dGVyLm5hbWUgY29tbWl0dGVyICYmCisJdGVzdF9jb21taXQgY29tbWl0dGVyLW5hbWUtb3ZlcnJpZGUtdXNlciAmJgorCWVjaG8gdXNlciB1c2VyQGV4YW1wbGUuY29tID4gZXhwZWN0ZWQtYXV0aG9yICYmCisJZWNobyBjb21taXR0ZXIgdXNlckBleGFtcGxlLmNvbSA+IGV4cGVjdGVkLWNvbW1pdHRlciAmJgorCWdpdCBsb2cgLS1mb3JtYXQ9IiVhbiAlYWUiIC0xID4gYWN0dWFsLWF1dGhvciAmJgorCWdpdCBsb2cgLS1mb3JtYXQ9IiVjbiAlY2UiIC0xID4gYWN0dWFsLWNvbW1pdHRlciAmJgorCXRlc3RfY21wIGV4cGVjdGVkLWF1dGhvciBhY3R1YWwtYXV0aG9yICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQtY29tbWl0dGVyIGFjdHVhbC1jb21taXR0ZXIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29tbWl0dGVyLmVtYWlsIG92ZXJyaWRlcyB1c2VyLmVtYWlsJyAnCisJdGVzdF9jb25maWcgdXNlci5uYW1lIHVzZXIgJiYKKwl0ZXN0X2NvbmZpZyB1c2VyLmVtYWlsIHVzZXJAZXhhbXBsZS5jb20gJiYKKwl0ZXN0X2NvbmZpZyBjb21taXR0ZXIuZW1haWwgY29tbWl0dGVyQGV4YW1wbGUuY29tICYmCisJdGVzdF9jb21taXQgY29tbWl0dGVyLWVtYWlsLW92ZXJyaWRlLXVzZXIgJiYKKwllY2hvIHVzZXIgdXNlckBleGFtcGxlLmNvbSA+IGV4cGVjdGVkLWF1dGhvciAmJgorCWVjaG8gdXNlciBjb21taXR0ZXJAZXhhbXBsZS5jb20gPiBleHBlY3RlZC1jb21taXR0ZXIgJiYKKwlnaXQgbG9nIC0tZm9ybWF0PSIlYW4gJWFlIiAtMSA+IGFjdHVhbC1hdXRob3IgJiYKKwlnaXQgbG9nIC0tZm9ybWF0PSIlY24gJWNlIiAtMSA+IGFjdHVhbC1jb21taXR0ZXIgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZC1hdXRob3IgYWN0dWFsLWF1dGhvciAmJgorCXRlc3RfY21wIGV4cGVjdGVkLWNvbW1pdHRlciBhY3R1YWwtY29tbWl0dGVyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2F1dGhvciBhbmQgY29tbWl0dGVyIGVudmlyb25tZW50IHZhcmlhYmxlcyBvdmVycmlkZSBjb25maWcgc2V0dGluZ3MnICcKKwl0ZXN0X2NvbmZpZyB1c2VyLm5hbWUgdXNlciAmJgorCXRlc3RfY29uZmlnIHVzZXIuZW1haWwgdXNlckBleGFtcGxlLmNvbSAmJgorCXRlc3RfY29uZmlnIGF1dGhvci5uYW1lIGF1dGhvciAmJgorCXRlc3RfY29uZmlnIGF1dGhvci5lbWFpbCBhdXRob3JAZXhhbXBsZS5jb20gJiYKKwl0ZXN0X2NvbmZpZyBjb21taXR0ZXIubmFtZSBjb21taXR0ZXIgJiYKKwl0ZXN0X2NvbmZpZyBjb21taXR0ZXIuZW1haWwgY29tbWl0dGVyQGV4YW1wbGUuY29tICYmCisJR0lUX0FVVEhPUl9OQU1FPWVudl9hdXRob3IgJiYgZXhwb3J0IEdJVF9BVVRIT1JfTkFNRSAmJgorCUdJVF9BVVRIT1JfRU1BSUw9ZW52X2F1dGhvckBleGFtcGxlLmNvbSAmJiBleHBvcnQgR0lUX0FVVEhPUl9FTUFJTCAmJgorCUdJVF9DT01NSVRURVJfTkFNRT1lbnZfY29tbWl0ICYmIGV4cG9ydCBHSVRfQ09NTUlUVEVSX05BTUUgJiYKKwlHSVRfQ09NTUlUVEVSX0VNQUlMPWVudl9jb21taXRAZXhhbXBsZS5jb20gJiYgZXhwb3J0IEdJVF9DT01NSVRURVJfRU1BSUwgJiYKKwl0ZXN0X2NvbW1pdCBlbnYtb3ZlcnJpZGUtY29uZiAmJgorCWVjaG8gZW52X2F1dGhvciBlbnZfYXV0aG9yQGV4YW1wbGUuY29tID4gZXhwZWN0ZWQtYXV0aG9yICYmCisJZWNobyBlbnZfY29tbWl0IGVudl9jb21taXRAZXhhbXBsZS5jb20gPiBleHBlY3RlZC1jb21taXR0ZXIgJiYKKwlnaXQgbG9nIC0tZm9ybWF0PSIlYW4gJWFlIiAtMSA+IGFjdHVhbC1hdXRob3IgJiYKKwlnaXQgbG9nIC0tZm9ybWF0PSIlY24gJWNlIiAtMSA+IGFjdHVhbC1jb21taXR0ZXIgJiYKKwlzYW5lX3Vuc2V0IEdJVF9BVVRIT1JfTkFNRSBHSVRfQVVUSE9SX0VNQUlMICYmCisJc2FuZV91bnNldCBHSVRfQ09NTUlUVEVSX05BTUUgR0lUX0NPTU1JVFRFUl9FTUFJTCAmJgorCXRlc3RfY21wIGV4cGVjdGVkLWF1dGhvciBhY3R1YWwtYXV0aG9yICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQtY29tbWl0dGVyIGFjdHVhbC1jb21taXR0ZXIKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q3NTE5LXN0YXR1cy1mc21vbml0b3Iuc2ggYi90L3Q3NTE5LXN0YXR1cy1mc21vbml0b3Iuc2gKaW5kZXggM2UwYTYxZC4uZmJmZGNjYSAxMDA3NTUKLS0tIGEvdC90NzUxOS1zdGF0dXMtZnNtb25pdG9yLnNoCisrKyBiL3QvdDc1MTktc3RhdHVzLWZzbW9uaXRvci5zaApAQCAtMzIsMTEgKzMyLDEyIEBACiAJCWVjaG8gIiQwOiBleGFjdGx5IDIgYXJndW1lbnRzIGV4cGVjdGVkIgogCQlleGl0IDIKIAlmaQotCWlmIHRlc3QgIiQxIiAhPSAxCisJaWYgdGVzdCAiJDEiICE9IDIKIAl0aGVuCiAJCWVjaG8gIlVuc3VwcG9ydGVkIGNvcmUuZnNtb25pdG9yIGhvb2sgdmVyc2lvbi4iID4mMgogCQlleGl0IDEKIAlmaQorCXByaW50ZiAibGFzdF91cGRhdGVfdG9rZW5cMCIKIAlwcmludGYgInVudHJhY2tlZFwwIgogCXByaW50ZiAiZGlyMS91bnRyYWNrZWRcMCIKIAlwcmludGYgImRpcjIvdW50cmFja2VkXDAiCkBAIC0xMDYsNiArMTA3LDkgQEAKIAogIyB0ZXN0IHRoYXQgInVwZGF0ZS1pbmRleCAtLWZzbW9uaXRvci12YWxpZCIgc2V0cyB0aGUgZnNtb25pdG9yIHZhbGlkIGJpdAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndXBkYXRlLWluZGV4IC0tZnNtb25pdG9yLXZhbGlkIiBzZXRzIHRoZSBmc21vbml0b3IgdmFsaWQgYml0JyAnCisJd3JpdGVfc2NyaXB0IC5naXQvaG9va3MvZnNtb25pdG9yLXRlc3Q8PC1cRU9GICYmCisJCXByaW50ZiAibGFzdF91cGRhdGVfdG9rZW5cMCIKKwlFT0YKIAlnaXQgdXBkYXRlLWluZGV4IC0tZnNtb25pdG9yICYmCiAJZ2l0IHVwZGF0ZS1pbmRleCAtLWZzbW9uaXRvci12YWxpZCBkaXIxL21vZGlmaWVkICYmCiAJZ2l0IHVwZGF0ZS1pbmRleCAtLWZzbW9uaXRvci12YWxpZCBkaXIyL21vZGlmaWVkICYmCkBAIC0xNjQsNiArMTY4LDkgQEAKIAogIyB0ZXN0IHRoYXQgbmV3bHkgYWRkZWQgZmlsZXMgYXJlIG1hcmtlZCB2YWxpZAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbmV3bHkgYWRkZWQgZmlsZXMgYXJlIG1hcmtlZCB2YWxpZCcgJworCXdyaXRlX3NjcmlwdCAuZ2l0L2hvb2tzL2ZzbW9uaXRvci10ZXN0PDwtXEVPRiAmJgorCQlwcmludGYgImxhc3RfdXBkYXRlX3Rva2VuXDAiCisJRU9GCiAJZ2l0IGFkZCBuZXcgJiYKIAlnaXQgYWRkIGRpcjEvbmV3ICYmCiAJZ2l0IGFkZCBkaXIyL25ldyAmJgpAQCAtMjAzLDYgKzIxMCw3IEBACiAjIHRlc3QgdGhhdCAqb25seSogZmlsZXMgcmV0dXJuZWQgYnkgdGhlIGludGVncmF0aW9uIHNjcmlwdCBnZXQgZmxhZ2dlZCBhcyBpbnZhbGlkCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICcqb25seSogZmlsZXMgcmV0dXJuZWQgYnkgdGhlIGludGVncmF0aW9uIHNjcmlwdCBnZXQgZmxhZ2dlZCBhcyBpbnZhbGlkJyAnCiAJd3JpdGVfc2NyaXB0IC5naXQvaG9va3MvZnNtb25pdG9yLXRlc3Q8PC1cRU9GICYmCisJcHJpbnRmICJsYXN0X3VwZGF0ZV90b2tlblwwIgogCXByaW50ZiAiZGlyMS9tb2RpZmllZFwwIgogCUVPRgogCWNsZWFuX3JlcG8gJiYKQEAgLTIxOCwxMSArMjI2LDEyIEBACiAjIEVuc3VyZSBjb21tYW5kcyB0aGF0IGNhbGwgcmVmcmVzaF9pbmRleCgpIHRvIG1vdmUgdGhlIGluZGV4IGJhY2sgaW4gdGltZQogIyBwcm9wZXJseSBpbnZhbGlkYXRlIHRoZSBmc21vbml0b3IgY2FjaGUKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlZnJlc2hfaW5kZXgoKSBpbnZhbGlkYXRlcyBmc21vbml0b3IgY2FjaGUnICcKLQl3cml0ZV9zY3JpcHQgLmdpdC9ob29rcy9mc21vbml0b3ItdGVzdDw8LVxFT0YgJiYKLQlFT0YKIAljbGVhbl9yZXBvICYmCiAJZGlydHlfcmVwbyAmJgorCXdyaXRlX2ludGVncmF0aW9uX3NjcmlwdCAmJgogCWdpdCBhZGQgLiAmJgorCXdyaXRlX3NjcmlwdCAuZ2l0L2hvb2tzL2ZzbW9uaXRvci10ZXN0PDwtXEVPRiAmJgorCUVPRgogCWdpdCBjb21taXQgLW0gInRvIHJlc2V0IiAmJgogCWdpdCByZXNldCBIRUFEfjEgJiYKIAlnaXQgc3RhdHVzID5hY3R1YWwgJiYKQEAgLTI3MSw2ICsyODAsNyBAQAogCQkjIChpZiBlbmFibGVkKSBmaWxlcyB1bmxlc3MgaXQgaXMgdG9sZCBhYm91dCB0aGVtLgogCQl0ZXN0X2V4cGVjdF9zdWNjZXNzICJzdGF0dXMgZG9lc24ndCBkZXRlY3QgdW5yZXBvcnRlZCBtb2RpZmljYXRpb25zIiAnCiAJCQl3cml0ZV9zY3JpcHQgLmdpdC9ob29rcy9mc21vbml0b3ItdGVzdDw8LVxFT0YgJiYKKwkJCXByaW50ZiAibGFzdF91cGRhdGVfdG9rZW5cMCIKIAkJCTo+bWFya2VyCiAJCQlFT0YKIAkJCWNsZWFuX3JlcG8gJiYKQEAgLTI5NCw3ICszMDQsNyBAQAogCWRvbmUKIGRvbmUKIAotIyB0ZXN0IHRoYXQgc3BsaXR0aW5nIHRoZSBpbmRleCBkb3NuJ3QgaW50ZXJmZXJlCisjIHRlc3QgdGhhdCBzcGxpdHRpbmcgdGhlIGluZGV4IGRvZXNuJ3QgaW50ZXJmZXJlCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzcGxpdHRpbmcgdGhlIGluZGV4IHJlc3VsdHMgaW4gdGhlIHNhbWUgc3RhdGUnICcKIAl3cml0ZV9pbnRlZ3JhdGlvbl9zY3JpcHQgJiYKIAlkaXJ0eV9yZXBvICYmCkBAIC0zNDYsNCArMzU2LDMxIEBACiAJdGVzdF9jbXAgYmVmb3JlIGFmdGVyCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Rpc2NhcmRfaW5kZXgoKSBhbHNvIGRpc2NhcmRzIGZzbW9uaXRvciBpbmZvJyAnCisJdGVzdF9jb25maWcgY29yZS5mc21vbml0b3IgIiRURVNUX0RJUkVDVE9SWS90NzUxOS9mc21vbml0b3ItYWxsIiAmJgorCXRlc3RfbWlnaHRfZmFpbCBnaXQgdXBkYXRlLWluZGV4IC0tcmVmcmVzaCAmJgorCXRlc3QtdG9vbCByZWFkLWNhY2hlIC0tcHJpbnQtYW5kLXJlZnJlc2g9dHJhY2tlZCAyID5hY3R1YWwgJiYKKwlwcmludGYgInRyYWNrZWQgaXMlcyB1cCB0byBkYXRlXG4iICIiICIgbm90IiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCisjIFRlc3QgdW5zdGFnaW5nIGVudHJpZXMgdGhhdDoKKyMgIC0gQXJlIG5vdCBmbGFnZ2VkIHdpdGggQ0VfRlNNT05JVE9SX1ZBTElECisjICAtIEhhdmUgYSBwb3NpdGlvbiBpbiB0aGUgaW5kZXggPj0gdGhlIG51bWJlciBvZiBlbnRyaWVzIHByZXNlbnQgaW4gdGhlIGluZGV4CisjICAgIGFmdGVyIHVuc3RhZ2luZy4KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N0YXR1cyBzdWNjZWVkcyBhZnRlciBzdGFnaW5nL3Vuc3RhZ2luZycgJworCXRlc3RfY3JlYXRlX3JlcG8gZnNtb25pdG9yLXN0YWdlLXVuc3RhZ2UgJiYKKwkoCisJCWNkIGZzbW9uaXRvci1zdGFnZS11bnN0YWdlICYmCisJCXRlc3RfY29tbWl0IGluaXRpYWwgJiYKKwkJZ2l0IHVwZGF0ZS1pbmRleCAtLWZzbW9uaXRvciAmJgorCQlyZW1vdmVkPSQodGVzdF9zZXEgMSAxMDAgfCBzZWQgInMvXi96LyIpICYmCisJCXRvdWNoICRyZW1vdmVkICYmCisJCWdpdCBhZGQgJHJlbW92ZWQgJiYKKwkJZ2l0IGNvbmZpZyBjb3JlLmZzbW9uaXRvciAiJFRFU1RfRElSRUNUT1JZL3Q3NTE5L2ZzbW9uaXRvci1lbnYiICYmCisJCUZTTU9OSVRPUl9MSVNUPSIkcmVtb3ZlZCIgZ2l0IHJlc3RvcmUgLVMgJHJlbW92ZWQgJiYKKwkJRlNNT05JVE9SX0xJU1Q9IiRyZW1vdmVkIiBnaXQgc3RhdHVzCisJKQorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDc1MTkvZnNtb25pdG9yLWFsbCBiL3QvdDc1MTkvZnNtb25pdG9yLWFsbAppbmRleCA2OTFiYzk0Li45NGFiNjZiIDEwMDc1NQotLS0gYS90L3Q3NTE5L2ZzbW9uaXRvci1hbGwKKysrIGIvdC90NzUxOS9mc21vbml0b3ItYWxsCkBAIC0xNyw3ICsxNyw2IEBACiAKIGlmIHRlc3QgIiQxIiAhPSAxCiB0aGVuCi0JZWNobyAiVW5zdXBwb3J0ZWQgY29yZS5mc21vbml0b3IgaG9vayB2ZXJzaW9uLiIgPiYyCiAJZXhpdCAxCiBmaQogCmRpZmYgLS1naXQgYS90L3Q3NTE5L2ZzbW9uaXRvci1hbGwtdjIgYi90L3Q3NTE5L2ZzbW9uaXRvci1hbGwtdjIKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMDYxOTA3ZQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDc1MTkvZnNtb25pdG9yLWFsbC12MgpAQCAtMCwwICsxLDIxIEBACisjIS91c3IvYmluL3BlcmwKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKyMKKyMgQW4gdGVzdCBob29rIHNjcmlwdCB0byBpbnRlZ3JhdGUgd2l0aCBnaXQgdG8gdGVzdCBmc21vbml0b3IuCisjCisjIFRoZSBob29rIGlzIHBhc3NlZCBhIHZlcnNpb24gKGN1cnJlbnRseSAyKSBhbmQgc2luY2UgdG9rZW4KKyMgZm9ybWF0dGVkIGFzIGEgc3RyaW5nIGFuZCBvdXRwdXRzIHRvIHN0ZG91dCBhbGwgZmlsZXMgdGhhdCBoYXZlIGJlZW4KKyMgbW9kaWZpZWQgc2luY2UgdGhlIGdpdmVuIHRpbWUuIFBhdGhzIG11c3QgYmUgcmVsYXRpdmUgdG8gdGhlIHJvb3Qgb2YKKyMgdGhlIHdvcmtpbmcgdHJlZSBhbmQgc2VwYXJhdGVkIGJ5IGEgc2luZ2xlIE5VTC4KKyMKKyNlY2hvICIkMCAkKiIgPiYyCitteSAoJHZlcnNpb24sICRsYXN0X3VwZGF0ZV90b2tlbikgPSBAQVJHVjsKKworaWYgKCR2ZXJzaW9uIG5lIDIpIHsKKwlwcmludCAiVW5zdXBwb3J0ZWQgcXVlcnktZnNtb25pdG9yIGhvb2sgdmVyc2lvbiAnJHZlcnNpb24nLlxuIjsKKwlleGl0IDE7Cit9CisKK3ByaW50ICJsYXN0X3VwZGF0ZV90b2tlblwwL1wwIgpkaWZmIC0tZ2l0IGEvdC90NzUxOS9mc21vbml0b3ItZW52IGIvdC90NzUxOS9mc21vbml0b3ItZW52Cm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjhmMWY3YWIKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q3NTE5L2ZzbW9uaXRvci1lbnYKQEAgLTAsMCArMSwyNCBAQAorIyEvYmluL3NoCisjCisjIEFuIHRlc3QgaG9vayBzY3JpcHQgdG8gaW50ZWdyYXRlIHdpdGggZ2l0IHRvIHRlc3QgZnNtb25pdG9yLgorIworIyBUaGUgaG9vayBpcyBwYXNzZWQgYSB2ZXJzaW9uIChjdXJyZW50bHkgMSkgYW5kIGEgdGltZSBpbiBuYW5vc2Vjb25kcworIyBmb3JtYXR0ZWQgYXMgYSBzdHJpbmcgYW5kIG91dHB1dHMgdG8gc3Rkb3V0IGFsbCBmaWxlcyB0aGF0IGhhdmUgYmVlbgorIyBtb2RpZmllZCBzaW5jZSB0aGUgZ2l2ZW4gdGltZS4gUGF0aHMgbXVzdCBiZSByZWxhdGl2ZSB0byB0aGUgcm9vdCBvZgorIyB0aGUgd29ya2luZyB0cmVlIGFuZCBzZXBhcmF0ZWQgYnkgYSBzaW5nbGUgTlVMLgorIworI2VjaG8gIiQwICQqIiA+JjIKKworaWYgdGVzdCAiJCMiIC1uZSAyCit0aGVuCisJZWNobyAiJDA6IGV4YWN0bHkgMiBhcmd1bWVudHMgZXhwZWN0ZWQiID4mMgorCWV4aXQgMgorZmkKKworaWYgdGVzdCAiJDEiICE9IDEKK3RoZW4KKwllY2hvICJVbnN1cHBvcnRlZCBjb3JlLmZzbW9uaXRvciBob29rIHZlcnNpb24uIiA+JjIKKwlleGl0IDEKK2ZpCisKK3ByaW50ZiAnJXNcbicgJEZTTU9OSVRPUl9MSVNUCmRpZmYgLS1naXQgYS90L3Q3NTE5L2ZzbW9uaXRvci13YXRjaG1hbiBiL3QvdDc1MTkvZnNtb25pdG9yLXdhdGNobWFuCmluZGV4IDU1MTRlZGMuLjI2NGI5ZGEgMTAwNzU1Ci0tLSBhL3QvdDc1MTkvZnNtb25pdG9yLXdhdGNobWFuCisrKyBiL3QvdDc1MTkvZnNtb25pdG9yLXdhdGNobWFuCkBAIC0yMywxMCArMjMsMTAgQEAKIAogaWYgKCR2ZXJzaW9uID09IDEpIHsKIAkjIGNvbnZlcnQgbmFub3NlY29uZHMgdG8gc2Vjb25kcwotCSR0aW1lID0gaW50ICR0aW1lIC8gMTAwMDAwMDAwMDsKKwkjIHN1YnRyYWN0IG9uZSBzZWNvbmQgdG8gbWFrZSBzdXJlIHdhdGNobWFuIHdpbGwgcmV0dXJuIGFsbCBjaGFuZ2VzCisJJHRpbWUgPSBpbnQgKCR0aW1lIC8gMTAwMDAwMDAwMCkgLSAxOwogfSBlbHNlIHsKLQlkaWUgIlVuc3VwcG9ydGVkIHF1ZXJ5LWZzbW9uaXRvciBob29rIHZlcnNpb24gJyR2ZXJzaW9uJy5cbiIgLgotCSAgICAiRmFsbGluZyBiYWNrIHRvIHNjYW5uaW5nLi4uXG4iOworCWV4aXQgMTsKIH0KIAogbXkgJGdpdF93b3JrX3RyZWU7CkBAIC01NCwxOCArNTQsMTIgQEAKIAkjCiAJIyBUbyBhY2NvbXBsaXNoIHRoaXMsIHdlJ3JlIHVzaW5nIHRoZSAic2luY2UiIGdlbmVyYXRvciB0byB1c2UgdGhlCiAJIyByZWNlbmN5IGluZGV4IHRvIHNlbGVjdCBjYW5kaWRhdGUgbm9kZXMgYW5kICJmaWVsZHMiIHRvIGxpbWl0IHRoZQotCSMgb3V0cHV0IHRvIGZpbGUgbmFtZXMgb25seS4gVGhlbiB3ZSdyZSB1c2luZyB0aGUgImV4cHJlc3Npb24iIHRlcm0gdG8KLQkjIGZ1cnRoZXIgY29uc3RyYWluIHRoZSByZXN1bHRzLgotCSMKLQkjIFRoZSBjYXRlZ29yeSBvZiB0cmFuc2llbnQgZmlsZXMgdGhhdCB3ZSB3YW50IHRvIGlnbm9yZSB3aWxsIGhhdmUgYQotCSMgY3JlYXRpb24gY2xvY2sgKGNjbG9jaykgbmV3ZXIgdGhhbiAkdGltZV90IHZhbHVlIGFuZCB3aWxsIGFsc28gbm90Ci0JIyBjdXJyZW50bHkgZXhpc3QuCisJIyBvdXRwdXQgdG8gZmlsZSBuYW1lcyBvbmx5LgogCiAJbXkgJHF1ZXJ5ID0gPDwiCUVORCI7CiAJCVsicXVlcnkiLCAiJGdpdF93b3JrX3RyZWUiLCB7CiAJCQkic2luY2UiOiAkdGltZSwKLQkJCSJmaWVsZHMiOiBbIm5hbWUiXSwKLQkJCSJleHByZXNzaW9uIjogWyJub3QiLCBbImFsbG9mIiwgWyJzaW5jZSIsICR0aW1lLCAiY2Nsb2NrIl0sIFsibm90IiwgImV4aXN0cyJdXV0KKwkJCSJmaWVsZHMiOiBbIm5hbWUiXQogCQl9XQogCUVORAogCQpkaWZmIC0tZ2l0IGEvdC90NzUxOS9mc21vbml0b3Itd2F0Y2htYW4tdjIgYi90L3Q3NTE5L2ZzbW9uaXRvci13YXRjaG1hbi12MgpuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi4xNGVkMGFhCi0tLSAvZGV2L251bGwKKysrIGIvdC90NzUxOS9mc21vbml0b3Itd2F0Y2htYW4tdjIKQEAgLTAsMCArMSwxNzMgQEAKKyMhL3Vzci9iaW4vcGVybAorCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOwordXNlIElQQzo6T3BlbjI7CisKKyMgQW4gZXhhbXBsZSBob29rIHNjcmlwdCB0byBpbnRlZ3JhdGUgV2F0Y2htYW4KKyMgKGh0dHBzOi8vZmFjZWJvb2suZ2l0aHViLmlvL3dhdGNobWFuLykgd2l0aCBnaXQgdG8gc3BlZWQgdXAgZGV0ZWN0aW5nCisjIG5ldyBhbmQgbW9kaWZpZWQgZmlsZXMuCisjCisjIFRoZSBob29rIGlzIHBhc3NlZCBhIHZlcnNpb24gKGN1cnJlbnRseSAyKSBhbmQgbGFzdCB1cGRhdGUgdG9rZW4KKyMgZm9ybWF0dGVkIGFzIGEgc3RyaW5nIGFuZCBvdXRwdXRzIHRvIHN0ZG91dCBhIG5ldyB1cGRhdGUgdG9rZW4gYW5kCisjIGFsbCBmaWxlcyB0aGF0IGhhdmUgYmVlbiBtb2RpZmllZCBzaW5jZSB0aGUgdXBkYXRlIHRva2VuLiBQYXRocyBtdXN0CisjIGJlIHJlbGF0aXZlIHRvIHRoZSByb290IG9mIHRoZSB3b3JraW5nIHRyZWUgYW5kIHNlcGFyYXRlZCBieSBhIHNpbmdsZSBOVUwuCisjCisjIFRvIGVuYWJsZSB0aGlzIGhvb2ssIHJlbmFtZSB0aGlzIGZpbGUgdG8gInF1ZXJ5LXdhdGNobWFuIiBhbmQgc2V0CisjICdnaXQgY29uZmlnIGNvcmUuZnNtb25pdG9yIC5naXQvaG9va3MvcXVlcnktd2F0Y2htYW4nCisjCitteSAoJHZlcnNpb24sICRsYXN0X3VwZGF0ZV90b2tlbikgPSBAQVJHVjsKKworIyBVbmNvbW1lbnQgZm9yIGRlYnVnZ2luZworIyBwcmludCBTVERFUlIgIiQwICR2ZXJzaW9uICRsYXN0X3VwZGF0ZV90b2tlblxuIjsKKworIyBDaGVjayB0aGUgaG9vayBpbnRlcmZhY2UgdmVyc2lvbgoraWYgKCR2ZXJzaW9uIG5lIDIpIHsKKwlkaWUgIlVuc3VwcG9ydGVkIHF1ZXJ5LWZzbW9uaXRvciBob29rIHZlcnNpb24gJyR2ZXJzaW9uJy5cbiIgLgorCSAgICAiRmFsbGluZyBiYWNrIHRvIHNjYW5uaW5nLi4uXG4iOworfQorCitteSAkZ2l0X3dvcmtfdHJlZSA9IGdldF93b3JraW5nX2RpcigpOworCitteSAkcmV0cnkgPSAxOworCitteSAkanNvbl9wa2c7CitldmFsIHsKKwlyZXF1aXJlIEpTT046OlhTOworCSRqc29uX3BrZyA9ICJKU09OOjpYUyI7CisJMTsKK30gb3IgZG8geworCXJlcXVpcmUgSlNPTjo6UFA7CisJJGpzb25fcGtnID0gIkpTT046OlBQIjsKK307CisKK2xhdW5jaF93YXRjaG1hbigpOworCitzdWIgbGF1bmNoX3dhdGNobWFuIHsKKwlteSAkbyA9IHdhdGNobWFuX3F1ZXJ5KCk7CisJaWYgKGlzX3dvcmtfdHJlZV93YXRjaGVkKCRvKSkgeworCQlvdXRwdXRfcmVzdWx0KCRvLT57Y2xvY2t9LCBAeyRvLT57ZmlsZXN9fSk7CisJfQorfQorCitzdWIgb3V0cHV0X3Jlc3VsdCB7CisJbXkgKCRjbG9ja2lkLCBAZmlsZXMpID0gQF87CisKKwkjIFVuY29tbWVudCBmb3IgZGVidWdnaW5nIHdhdGNobWFuIG91dHB1dAorCSMgb3BlbiAobXkgJGZoLCAiPiIsICIuZ2l0L3dhdGNobWFuLW91dHB1dC5vdXQiKTsKKwkjIGJpbm1vZGUgJGZoLCAiOnV0ZjgiOworCSMgcHJpbnQgJGZoICIkY2xvY2tpZFxuQGZpbGVzXG4iOworCSMgY2xvc2UgJGZoOworCisJYmlubW9kZSBTVERPVVQsICI6dXRmOCI7CisJcHJpbnQgJGNsb2NraWQ7CisJcHJpbnQgIlwwIjsKKwlsb2NhbCAkLCA9ICJcMCI7CisJcHJpbnQgQGZpbGVzOworfQorCitzdWIgd2F0Y2htYW5fY2xvY2sgeworCW15ICRyZXNwb25zZSA9IHF4L3dhdGNobWFuIGNsb2NrICIkZ2l0X3dvcmtfdHJlZSIvOworCWRpZSAiRmFpbGVkIHRvIGdldCBjbG9jayBpZCBvbiAnJGdpdF93b3JrX3RyZWUnLlxuIiAuCisJCSJGYWxsaW5nIGJhY2sgdG8gc2Nhbm5pbmcuLi5cbiIgaWYgJD8gIT0gMDsKKworCXJldHVybiAkanNvbl9wa2ctPm5ldy0+dXRmOC0+ZGVjb2RlKCRyZXNwb25zZSk7Cit9CisKK3N1YiB3YXRjaG1hbl9xdWVyeSB7CisJbXkgJHBpZCA9IG9wZW4yKFwqQ0hMRF9PVVQsIFwqQ0hMRF9JTiwgJ3dhdGNobWFuIC1qIC0tbm8tcHJldHR5JykKKwlvciBkaWUgIm9wZW4yKCkgZmFpbGVkOiAkIVxuIiAuCisJIkZhbGxpbmcgYmFjayB0byBzY2FubmluZy4uLlxuIjsKKworCSMgSW4gdGhlIHF1ZXJ5IGV4cHJlc3Npb24gYmVsb3cgd2UncmUgYXNraW5nIGZvciBuYW1lcyBvZiBmaWxlcyB0aGF0CisJIyBjaGFuZ2VkIHNpbmNlICRsYXN0X3VwZGF0ZV90b2tlbiBidXQgbm90IGZyb20gdGhlIC5naXQgZm9sZGVyLgorCSMKKwkjIFRvIGFjY29tcGxpc2ggdGhpcywgd2UncmUgdXNpbmcgdGhlICJzaW5jZSIgZ2VuZXJhdG9yIHRvIHVzZSB0aGUKKwkjIHJlY2VuY3kgaW5kZXggdG8gc2VsZWN0IGNhbmRpZGF0ZSBub2RlcyBhbmQgImZpZWxkcyIgdG8gbGltaXQgdGhlCisJIyBvdXRwdXQgdG8gZmlsZSBuYW1lcyBvbmx5LiBUaGVuIHdlJ3JlIHVzaW5nIHRoZSAiZXhwcmVzc2lvbiIgdGVybSB0bworCSMgZnVydGhlciBjb25zdHJhaW4gdGhlIHJlc3VsdHMuCisJaWYgKHN1YnN0cigkbGFzdF91cGRhdGVfdG9rZW4sIDAsIDEpIGVxICJjIikgeworCQkkbGFzdF91cGRhdGVfdG9rZW4gPSAiXCIkbGFzdF91cGRhdGVfdG9rZW5cIiI7CisJfQorCW15ICRxdWVyeSA9IDw8IglFTkQiOworCQlbInF1ZXJ5IiwgIiRnaXRfd29ya190cmVlIiwgeworCQkJInNpbmNlIjogJGxhc3RfdXBkYXRlX3Rva2VuLAorCQkJImZpZWxkcyI6IFsibmFtZSJdLAorCQkJImV4cHJlc3Npb24iOiBbIm5vdCIsIFsiZGlybmFtZSIsICIuZ2l0Il1dCisJCX1dCisJRU5ECisKKwkjIFVuY29tbWVudCBmb3IgZGVidWdnaW5nIHRoZSB3YXRjaG1hbiBxdWVyeQorCSMgb3BlbiAobXkgJGZoLCAiPiIsICIuZ2l0L3dhdGNobWFuLXF1ZXJ5Lmpzb24iKTsKKwkjIHByaW50ICRmaCAkcXVlcnk7CisJIyBjbG9zZSAkZmg7CisKKwlwcmludCBDSExEX0lOICRxdWVyeTsKKwljbG9zZSBDSExEX0lOOworCW15ICRyZXNwb25zZSA9IGRvIHtsb2NhbCAkLzsgPENITERfT1VUPn07CisKKwkjIFVuY29tbWVudCBmb3IgZGVidWdnaW5nIHRoZSB3YXRjaCByZXNwb25zZQorCSMgb3BlbiAoJGZoLCAiPiIsICIuZ2l0L3dhdGNobWFuLXJlc3BvbnNlLmpzb24iKTsKKwkjIHByaW50ICRmaCAkcmVzcG9uc2U7CisJIyBjbG9zZSAkZmg7CisKKwlkaWUgIldhdGNobWFuOiBjb21tYW5kIHJldHVybmVkIG5vIG91dHB1dC5cbiIgLgorCSJGYWxsaW5nIGJhY2sgdG8gc2Nhbm5pbmcuLi5cbiIgaWYgJHJlc3BvbnNlIGVxICIiOworCWRpZSAiV2F0Y2htYW46IGNvbW1hbmQgcmV0dXJuZWQgaW52YWxpZCBvdXRwdXQ6ICRyZXNwb25zZVxuIiAuCisJIkZhbGxpbmcgYmFjayB0byBzY2FubmluZy4uLlxuIiB1bmxlc3MgJHJlc3BvbnNlID1+IC9eXHsvOworCisJcmV0dXJuICRqc29uX3BrZy0+bmV3LT51dGY4LT5kZWNvZGUoJHJlc3BvbnNlKTsKK30KKworc3ViIGlzX3dvcmtfdHJlZV93YXRjaGVkIHsKKwlteSAoJG91dHB1dCkgPSBAXzsKKwlteSAkZXJyb3IgPSAkb3V0cHV0LT57ZXJyb3J9OworCWlmICgkcmV0cnkgPiAwIGFuZCAkZXJyb3IgYW5kICRlcnJvciA9fiBtL3VuYWJsZSB0byByZXNvbHZlIHJvb3QgLiogZGlyZWN0b3J5ICguKikgaXMgbm90IHdhdGNoZWQvKSB7CisJCSRyZXRyeS0tOworCQlteSAkcmVzcG9uc2UgPSBxeC93YXRjaG1hbiB3YXRjaCAiJGdpdF93b3JrX3RyZWUiLzsKKwkJZGllICJGYWlsZWQgdG8gbWFrZSB3YXRjaG1hbiB3YXRjaCAnJGdpdF93b3JrX3RyZWUnLlxuIiAuCisJCSAgICAiRmFsbGluZyBiYWNrIHRvIHNjYW5uaW5nLi4uXG4iIGlmICQ/ICE9IDA7CisJCSRvdXRwdXQgPSAkanNvbl9wa2ctPm5ldy0+dXRmOC0+ZGVjb2RlKCRyZXNwb25zZSk7CisJCSRlcnJvciA9ICRvdXRwdXQtPntlcnJvcn07CisJCWRpZSAiV2F0Y2htYW46ICRlcnJvci5cbiIgLgorCQkiRmFsbGluZyBiYWNrIHRvIHNjYW5uaW5nLi4uXG4iIGlmICRlcnJvcjsKKworCQkjIFVuY29tbWVudCBmb3IgZGVidWdnaW5nIHdhdGNobWFuIG91dHB1dAorCQkjIG9wZW4gKG15ICRmaCwgIj4iLCAiLmdpdC93YXRjaG1hbi1vdXRwdXQub3V0Iik7CisJCSMgY2xvc2UgJGZoOworCisJCSMgV2F0Y2htYW4gd2lsbCBhbHdheXMgcmV0dXJuIGFsbCBmaWxlcyBvbiB0aGUgZmlyc3QgcXVlcnkgc28KKwkJIyByZXR1cm4gdGhlIGZhc3QgImV2ZXJ5dGhpbmcgaXMgZGlydHkiIGZsYWcgdG8gZ2l0IGFuZCBkbyB0aGUKKwkJIyBXYXRjaG1hbiBxdWVyeSBqdXN0IHRvIGdldCBpdCBvdmVyIHdpdGggbm93IHNvIHdlIHdvbid0IHBheQorCQkjIHRoZSBjb3N0IGluIGdpdCB0byBsb29rIHVwIGVhY2ggaW5kaXZpZHVhbCBmaWxlLgorCQlteSAkbyA9IHdhdGNobWFuX2Nsb2NrKCk7CisJCSRlcnJvciA9ICRvdXRwdXQtPntlcnJvcn07CisKKwkJZGllICJXYXRjaG1hbjogJGVycm9yLlxuIiAuCisJCSJGYWxsaW5nIGJhY2sgdG8gc2Nhbm5pbmcuLi5cbiIgaWYgJGVycm9yOworCisJCW91dHB1dF9yZXN1bHQoJG8tPntjbG9ja30sICgiLyIpKTsKKwkJJGxhc3RfdXBkYXRlX3Rva2VuID0gJG8tPntjbG9ja307CisKKwkJZXZhbCB7IGxhdW5jaF93YXRjaG1hbigpIH07CisJCXJldHVybiAwOworCX0KKworCWRpZSAiV2F0Y2htYW46ICRlcnJvci5cbiIgLgorCSJGYWxsaW5nIGJhY2sgdG8gc2Nhbm5pbmcuLi5cbiIgaWYgJGVycm9yOworCisJcmV0dXJuIDE7Cit9CisKK3N1YiBnZXRfd29ya2luZ19kaXIgeworCW15ICR3b3JraW5nX2RpcjsKKwlpZiAoJF5PID1+ICdtc3lzJyB8fCAkXk8gPX4gJ2N5Z3dpbicpIHsKKwkJJHdvcmtpbmdfZGlyID0gV2luMzI6OkdldEN3ZCgpOworCQkkd29ya2luZ19kaXIgPX4gdHIvXFwvXC8vOworCX0gZWxzZSB7CisJCXJlcXVpcmUgQ3dkOworCQkkd29ya2luZ19kaXIgPSBDd2Q6OmN3ZCgpOworCX0KKworCXJldHVybiAkd29ya2luZ19kaXI7Cit9CmRpZmYgLS1naXQgYS90L3Q3NTI1LXN0YXR1cy1yZW5hbWUuc2ggYi90L3Q3NTI1LXN0YXR1cy1yZW5hbWUuc2gKaW5kZXggZWY4YjFiMy4uYTYyNzM2ZCAxMDA3NTUKLS0tIGEvdC90NzUyNS1zdGF0dXMtcmVuYW1lLnNoCisrKyBiL3QvdDc1MjUtc3RhdHVzLXJlbmFtZS5zaApAQCAtODQsNyArODQsNyBAQAogCXRlc3RfaTE4bmdyZXAgImRlbGV0ZWQ6IiBhY3R1YWwgJiYKIAl0ZXN0X2kxOG5ncmVwICJuZXcgZmlsZToiIGFjdHVhbCAmJgogCi0JZ2l0IHN0YXR1cyAtLWZpbmQtcmVuYW1lPTEwMCUgPmFjdHVhbCAmJgorCWdpdCBzdGF0dXMgLS1maW5kLXJlbmFtZXM9MTAwJSA+YWN0dWFsICYmCiAJdGVzdF9pMThuZ3JlcCAiZGVsZXRlZDoiIGFjdHVhbCAmJgogCXRlc3RfaTE4bmdyZXAgIm5ldyBmaWxlOiIgYWN0dWFsCiAnCkBAIC05MywxMSArOTMsMTEgQEAKIAlnaXQgc3RhdHVzIC1NPTAxJSA+YWN0dWFsICYmCiAJdGVzdF9pMThuZ3JlcCAicmVuYW1lZDoiIGFjdHVhbCAmJgogCi0JZ2l0IHN0YXR1cyAtLWZpbmQtcmVuYW1lPTAxJSA+YWN0dWFsICYmCisJZ2l0IHN0YXR1cyAtLWZpbmQtcmVuYW1lcz0wMSUgPmFjdHVhbCAmJgogCXRlc3RfaTE4bmdyZXAgInJlbmFtZWQ6IiBhY3R1YWwKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnY29waWVzIG5vdCBvdmVycmlkZGVuIGJ5IGZpbmQtcmVuYW1lJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjb3BpZXMgbm90IG92ZXJyaWRkZW4gYnkgZmluZC1yZW5hbWVzJyAnCiAJY3AgcmVuYW1lZCBjb3B5ICYmCiAJZ2l0IGFkZCBjb3B5ICYmCiAKQEAgLTEwNSw3ICsxMDUsNyBAQAogCXRlc3RfaTE4bmdyZXAgImNvcGllZDoiIGFjdHVhbCAmJgogCXRlc3RfaTE4bmdyZXAgInJlbmFtZWQ6IiBhY3R1YWwgJiYKIAotCWdpdCAtYyBzdGF0dXMucmVuYW1lcz1jb3BpZXMgc3RhdHVzIC0tZmluZC1yZW5hbWU9MDElID5hY3R1YWwgJiYKKwlnaXQgLWMgc3RhdHVzLnJlbmFtZXM9Y29waWVzIHN0YXR1cyAtLWZpbmQtcmVuYW1lcz0wMSUgPmFjdHVhbCAmJgogCXRlc3RfaTE4bmdyZXAgImNvcGllZDoiIGFjdHVhbCAmJgogCXRlc3RfaTE4bmdyZXAgInJlbmFtZWQ6IiBhY3R1YWwKICcKZGlmZiAtLWdpdCBhL3QvdDc1MjYtY29tbWl0LXBhdGhzcGVjLWZpbGUuc2ggYi90L3Q3NTI2LWNvbW1pdC1wYXRoc3BlYy1maWxlLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjVmYmU0N2UKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q3NTI2LWNvbW1pdC1wYXRoc3BlYy1maWxlLnNoCkBAIC0wLDAgKzEsMTY0IEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0nY29tbWl0IC0tcGF0aHNwZWMtZnJvbS1maWxlJworCisuIC4vdGVzdC1saWIuc2gKKwordGVzdF90aWNrCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3Mgc2V0dXAgJworCXRlc3RfY29tbWl0IGZpbGUwICYmCisJZ2l0IHRhZyBjaGVja3BvaW50ICYmCisKKwllY2hvIEEgPmZpbGVBLnQgJiYKKwllY2hvIEIgPmZpbGVCLnQgJiYKKwllY2hvIEMgPmZpbGVDLnQgJiYKKwllY2hvIEQgPmZpbGVELnQgJiYKKwlnaXQgYWRkIGZpbGVBLnQgZmlsZUIudCBmaWxlQy50IGZpbGVELnQKKycKKworcmVzdG9yZV9jaGVja3BvaW50ICgpIHsKKwlnaXQgcmVzZXQgLS1zb2Z0IGNoZWNrcG9pbnQKK30KKwordmVyaWZ5X2V4cGVjdCAoKSB7CisJZ2l0IGRpZmYtdHJlZSAtLW5vLWNvbW1pdC1pZCAtLW5hbWUtc3RhdHVzIC1yIEhFQUQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKK30KKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnLS1wYXRoc3BlYy1mcm9tLWZpbGUgZnJvbSBzdGRpbicgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJZWNobyBmaWxlQS50IHwgZ2l0IGNvbW1pdCAtLXBhdGhzcGVjLWZyb20tZmlsZT0tIC1tICJDb21taXQiICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJQQlmaWxlQS50CisJRU9GCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICctLXBhdGhzcGVjLWZyb20tZmlsZSBmcm9tIGZpbGUnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCWVjaG8gZmlsZUEudCA+bGlzdCAmJgorCWdpdCBjb21taXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9bGlzdCAtbSAiQ29tbWl0IiAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCUEJZmlsZUEudAorCUVPRgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnTlVMIGRlbGltaXRlcnMnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCXByaW50ZiAiZmlsZUEudFwwZmlsZUIudFwwIiB8IGdpdCBjb21taXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSAtLXBhdGhzcGVjLWZpbGUtbnVsIC1tICJDb21taXQiICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJQQlmaWxlQS50CisJQQlmaWxlQi50CisJRU9GCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdMRiBkZWxpbWl0ZXJzJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwlwcmludGYgImZpbGVBLnRcbmZpbGVCLnRcbiIgfCBnaXQgY29tbWl0IC0tcGF0aHNwZWMtZnJvbS1maWxlPS0gLW0gIkNvbW1pdCIgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlBCWZpbGVBLnQKKwlBCWZpbGVCLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25vIHRyYWlsaW5nIGRlbGltaXRlcicgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJcHJpbnRmICJmaWxlQS50XG5maWxlQi50IiB8IGdpdCBjb21taXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9LSAtbSAiQ29tbWl0IiAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCUEJZmlsZUEudAorCUEJZmlsZUIudAorCUVPRgorCXZlcmlmeV9leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnQ1JMRiBkZWxpbWl0ZXJzJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwlwcmludGYgImZpbGVBLnRcclxuZmlsZUIudFxyXG4iIHwgZ2l0IGNvbW1pdCAtLXBhdGhzcGVjLWZyb20tZmlsZT0tIC1tICJDb21taXQiICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJQQlmaWxlQS50CisJQQlmaWxlQi50CisJRU9GCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdxdW90ZXMnICcKKwlyZXN0b3JlX2NoZWNrcG9pbnQgJiYKKworCWNhdCA+bGlzdCA8PC1cRU9GICYmCisJImZpbGVcMTAxLnQiCisJRU9GCisKKwlnaXQgY29tbWl0IC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLW0gIkNvbW1pdCIgJiYKKworCWNhdCA+ZXhwZWN0IDw8LVxFT0YgJiYKKwlBCWZpbGVBLnQKKwlFT0YKKwl2ZXJpZnlfZXhwZWN0IGV4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdxdW90ZXMgbm90IGNvbXBhdGlibGUgd2l0aCAtLXBhdGhzcGVjLWZpbGUtbnVsJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisKKwljYXQgPmxpc3QgPDwtXEVPRiAmJgorCSJmaWxlXDEwMS50IgorCUVPRgorCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbW1pdCAtLXBhdGhzcGVjLWZyb20tZmlsZT1saXN0IC0tcGF0aHNwZWMtZmlsZS1udWwgLW0gIkNvbW1pdCIKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnb25seSB0b3VjaGVzIHdoYXQgd2FzIGxpc3RlZCcgJworCXJlc3RvcmVfY2hlY2twb2ludCAmJgorCisJcHJpbnRmICJmaWxlQi50XG5maWxlQy50XG4iIHwgZ2l0IGNvbW1pdCAtLXBhdGhzcGVjLWZyb20tZmlsZT0tIC1tICJDb21taXQiICYmCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJQQlmaWxlQi50CisJQQlmaWxlQy50CisJRU9GCisJdmVyaWZ5X2V4cGVjdAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdlcnJvciBjb25kaXRpb25zJyAnCisJcmVzdG9yZV9jaGVja3BvaW50ICYmCisJZWNobyBmaWxlQS50ID5saXN0ICYmCisJPmVtcHR5X2xpc3QgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBjb21taXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9bGlzdCAtLWludGVyYWN0aXZlIC1tICJDb21taXQiIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIiBlcnIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBjb21taXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9bGlzdCAtLXBhdGNoIC1tICJDb21taXQiIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAtZSAiLS1wYXRoc3BlYy1mcm9tLWZpbGUgaXMgaW5jb21wYXRpYmxlIHdpdGggLS1pbnRlcmFjdGl2ZS8tLXBhdGNoIiBlcnIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBjb21taXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9bGlzdCAtLWFsbCAtbSAiQ29tbWl0IiAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIi0tcGF0aHNwZWMtZnJvbS1maWxlIHdpdGggLWEgZG9lcyBub3QgbWFrZSBzZW5zZSIgZXJyICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0IC0tcGF0aHNwZWMtZnJvbS1maWxlPWxpc3QgLW0gIkNvbW1pdCIgLS0gZmlsZUEudCAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIi0tcGF0aHNwZWMtZnJvbS1maWxlIGlzIGluY29tcGF0aWJsZSB3aXRoIHBhdGhzcGVjIGFyZ3VtZW50cyIgZXJyICYmCisKKwl0ZXN0X211c3RfZmFpbCBnaXQgY29tbWl0IC0tcGF0aHNwZWMtZmlsZS1udWwgLW0gIkNvbW1pdCIgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwIC1lICItLXBhdGhzcGVjLWZpbGUtbnVsIHJlcXVpcmVzIC0tcGF0aHNwZWMtZnJvbS1maWxlIiBlcnIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBjb21taXQgLS1wYXRoc3BlYy1mcm9tLWZpbGU9ZW1wdHlfbGlzdCAtLWluY2x1ZGUgLW0gIkNvbW1pdCIgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwIC1lICJObyBwYXRocyB3aXRoIC0taW5jbHVkZS8tLW9ubHkgZG9lcyBub3QgbWFrZSBzZW5zZS4iIGVyciAmJgorCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNvbW1pdCAtLXBhdGhzcGVjLWZyb20tZmlsZT1lbXB0eV9saXN0IC0tb25seSAtbSAiQ29tbWl0IiAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgLWUgIk5vIHBhdGhzIHdpdGggLS1pbmNsdWRlLy0tb25seSBkb2VzIG5vdCBtYWtlIHNlbnNlLiIgZXJyCisnCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90NzYwMC1tZXJnZS5zaCBiL3QvdDc2MDAtbWVyZ2Uuc2gKaW5kZXggMTA2MTQ4Mi4uMTMyNjA4OCAxMDA3NTUKLS0tIGEvdC90NzYwMC1tZXJnZS5zaAorKysgYi90L3Q3NjAwLW1lcmdlLnNoCkBAIC0yMzMsMjAgKzIzMyw2NSBAQAogCWNhdCByZXN1bHQuOXogPmZpbGUgJiYKIAlnaXQgY29tbWl0IC0tbm8tZWRpdCAtYSAmJgogCi0JewotCQljYXQgPDwtRU9GCi0JCVNxdWFzaGVkIGNvbW1pdCBvZiB0aGUgZm9sbG93aW5nOgorCWNhdCA+ZXhwZWN0IDw8LUVPRiAmJgorCVNxdWFzaGVkIGNvbW1pdCBvZiB0aGUgZm9sbG93aW5nOgogCi0JCSQoZ2l0IHNob3cgLXMgYzcpCisJJChnaXQgc2hvdyAtcyBjNykKIAotCQkjIENvbmZsaWN0czoKLQkJIwlmaWxlCi0JCUVPRgotCX0gPmV4cGVjdCAmJgotCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCB8IHNlZCAtZSAnMSwvXiQvZCcgPmFjdHVhbCAmJgorCSMgQ29uZmxpY3RzOgorCSMJZmlsZQorCUVPRgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCA+cmF3ICYmCisJc2VkIC1lICcxLC9eJC9kJyByYXcgPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnbWVyZ2UgYzMgd2l0aCBjNyB3aXRoIGNvbW1pdC5jbGVhbnVwID0gc2Npc3NvcnMnICcKKwlnaXQgY29uZmlnIGNvbW1pdC5jbGVhbnVwIHNjaXNzb3JzICYmCisJZ2l0IHJlc2V0IC0taGFyZCBjMyAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBjNyAmJgorCWNhdCByZXN1bHQuOXogPmZpbGUgJiYKKwlnaXQgY29tbWl0IC0tbm8tZWRpdCAtYSAmJgorCisJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgorCU1lcmdlIHRhZyAnIiciJ2M3JyInIicKKworCSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tID44IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCSMgRG8gbm90IG1vZGlmeSBvciByZW1vdmUgdGhlIGxpbmUgYWJvdmUuCisJIyBFdmVyeXRoaW5nIGJlbG93IGl0IHdpbGwgYmUgaWdub3JlZC4KKwkjCisJIyBDb25mbGljdHM6CisJIwlmaWxlCisJRU9GCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEID5yYXcgJiYKKwlzZWQgLWUgJzEsL14kL2QnIHJhdyA+YWN0dWFsICYmCisJdGVzdF9pMThuY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnbWVyZ2UgYzMgd2l0aCBjNyB3aXRoIC0tc3F1YXNoIGNvbW1pdC5jbGVhbnVwID0gc2Npc3NvcnMnICcKKwlnaXQgY29uZmlnIGNvbW1pdC5jbGVhbnVwIHNjaXNzb3JzICYmCisJZ2l0IHJlc2V0IC0taGFyZCBjMyAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtLXNxdWFzaCBjNyAmJgorCWNhdCByZXN1bHQuOXogPmZpbGUgJiYKKwlnaXQgY29tbWl0IC0tbm8tZWRpdCAtYSAmJgorCisJY2F0ID5leHBlY3QgPDwtRU9GICYmCisJU3F1YXNoZWQgY29tbWl0IG9mIHRoZSBmb2xsb3dpbmc6CisKKwkkKGdpdCBzaG93IC1zIGM3KQorCisJIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gPjggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisJIyBEbyBub3QgbW9kaWZ5IG9yIHJlbW92ZSB0aGUgbGluZSBhYm92ZS4KKwkjIEV2ZXJ5dGhpbmcgYmVsb3cgaXQgd2lsbCBiZSBpZ25vcmVkLgorCSMKKwkjIENvbmZsaWN0czoKKwkjCWZpbGUKKwlFT0YKKwlnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgPnJhdyAmJgorCXNlZCAtZSAnMSwvXiQvZCcgcmF3ID5hY3R1YWwgJiYKKwl0ZXN0X2kxOG5jbXAgZXhwZWN0IGFjdHVhbAorJworCiB0ZXN0X2RlYnVnICdnaXQgbG9nIC0tZ3JhcGggLS1kZWNvcmF0ZSAtLW9uZWxpbmUgLS1hbGwnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21lcmdlIGMxIHdpdGggYzIgYW5kIGMzJyAnCkBAIC01MjUsNiArNTcwLDEyIEBACiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC0tbm8tZmYgLS1zcXVhc2ggYzEKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29tYmluaW5nIC0tc3F1YXNoIGFuZCAtLWNvbW1pdCBpcyByZWZ1c2VkJyAnCisJZ2l0IHJlc2V0IC0taGFyZCBjMCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtLXNxdWFzaCAtLWNvbW1pdCBjMSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtLWNvbW1pdCAtLXNxdWFzaCBjMQorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdvcHRpb24gLS1mZi1vbmx5IG92ZXJ3cml0ZXMgLS1uby1mZicgJwogCWdpdCBtZXJnZSAtLW5vLWZmIC0tZmYtb25seSBjMSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSAtLW5vLWZmIC0tZmYtb25seSBjMgpAQCAtNjgwLDEwICs3MzEsMTAgQEAKICgKIAllY2hvICJNZXJnZSB3b3JrIGRvbmUgb24gdGhlIHNpZGUgYnJhbmNoIGMxIgogCWVjaG8KLQljYXQgPCIkMSIKKwljYXQgIiQxIgogKSA+IiQxLnRtcCIgJiYgbXYgIiQxLnRtcCIgIiQxIgogIyBzdHJpcCBjb21tZW50cyBhbmQgYmxhbmsgbGluZXMgZnJvbSBlbmQgb2YgbWVzc2FnZQotc2VkIC1lICcvXiMvZCcgPCAiJDEiIHwgc2VkIC1lIDphIC1lICcvXlxuKiQveyRkO047YmEnIC1lICd9JyA+IGV4cGVjdGVkCitzZWQgLWUgJy9eIy9kJyAiJDEiIHwgc2VkIC1lIDphIC1lICcvXlxuKiQveyRkO047YmEnIC1lICd9JyA+ZXhwZWN0ZWQKIEVPRgogY2htb2QgNzU1IGVkaXRvcgogCkBAIC03NjgsMTQgKzgxOSwxNCBAQAogCWdpdCBjb21taXQgLW0gYmFzZSAmJgogCiAJIyBvbmUgc2lkZSBjaGFuZ2VzIHRoZSBmaXJzdCBsaW5lIG9mIGVhY2ggdG8gIm1hc3RlciIKLQlzZWQgcy8tMS8tbWFzdGVyLyA8ZmlsZSA+dG1wICYmCisJc2VkIHMvLTEvLW1hc3Rlci8gZmlsZSA+dG1wICYmCiAJbXYgdG1wIGZpbGUgJiYKIAlnaXQgY29tbWl0IC1hbSBtYXN0ZXIgJiYKIAogCSMgYW5kIHRoZSBvdGhlciB0byAic2lkZSI7IG1lcmdpbmcgdGhlIHR3byB3aWxsCiAJIyB5aWVsZCAyNTYgc2VwYXJhdGUgY29uZmxpY3RzCiAJZ2l0IGNoZWNrb3V0IC1iIHNpZGUgSEVBRF4gJiYKLQlzZWQgcy8tMS8tc2lkZS8gPGZpbGUgPnRtcCAmJgorCXNlZCBzLy0xLy1zaWRlLyBmaWxlID50bXAgJiYKIAltdiB0bXAgZmlsZSAmJgogCWdpdCBjb21taXQgLWFtIHNpZGUKICcKQEAgLTgxNCw3ICs4NjUsNyBAQAogdGVzdF9leHBlY3Rfc3VjY2VzcyBFWEVDS0VFUFNQSUQgJ2tpbGxlZCBtZXJnZSBjYW4gYmUgY29tcGxldGVkIHdpdGggLS1jb250aW51ZScgJwogCWdpdCByZXNldCAtLWhhcmQgYzAgJiYKIAkhICIkU0hFTExfUEFUSCIgLWMgJ1wnJwotCSAgZWNobyBraWxsIC1URVJNICQkID4+IC5naXQvRkFLRV9FRElUT1IKKwkgIGVjaG8ga2lsbCAtVEVSTSAkJCA+Pi5naXQvRkFLRV9FRElUT1IKIAkgIEdJVF9FRElUT1I9LmdpdC9GQUtFX0VESVRPUgogCSAgZXhwb3J0IEdJVF9FRElUT1IKIAkgIGV4ZWMgZ2l0IG1lcmdlIC0tbm8tZmYgLS1lZGl0IGMxJ1wnJyAmJgpAQCAtODIyLDQgKzg3Myw1MCBAQAogCXZlcmlmeV9wYXJlbnRzICRjMCAkYzEKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnbWVyZ2UgLS1xdWl0JyAnCisJZ2l0IGluaXQgbWVyZ2UtcXVpdCAmJgorCSgKKwkJY2QgbWVyZ2UtcXVpdCAmJgorCQl0ZXN0X2NvbW1pdCBiYXNlICYmCisJCWVjaG8gb25lID4+YmFzZS50ICYmCisJCWdpdCBjb21taXQgLWFtIG9uZSAmJgorCQlnaXQgYnJhbmNoIG9uZSAmJgorCQlnaXQgY2hlY2tvdXQgYmFzZSAmJgorCQllY2hvIHR3byA+PmJhc2UudCAmJgorCQlnaXQgY29tbWl0IC1hbSB0d28gJiYKKwkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIHJlcmVyZS5lbmFibGVkPXRydWUgbWVyZ2Ugb25lICYmCisJCXRlc3RfcGF0aF9pc19maWxlIC5naXQvTUVSR0VfSEVBRCAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSAuZ2l0L01FUkdFX01PREUgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgLmdpdC9NRVJHRV9NU0cgJiYKKwkJZ2l0IHJlcmVyZSBzdGF0dXMgPnJlcmVyZS5iZWZvcmUgJiYKKwkJZ2l0IG1lcmdlIC0tcXVpdCAmJgorCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyAuZ2l0L01FUkdFX0hFQUQgJiYKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgLmdpdC9NRVJHRV9NT0RFICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIC5naXQvTUVSR0VfTVNHICYmCisJCWdpdCByZXJlcmUgc3RhdHVzID5yZXJlcmUuYWZ0ZXIgJiYKKwkJdGVzdF9tdXN0X2JlX2VtcHR5IHJlcmVyZS5hZnRlciAmJgorCQkhIHRlc3RfY21wIHJlcmVyZS5hZnRlciByZXJlcmUuYmVmb3JlCisJKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdtZXJnZSBzdWdnZXN0cyBtYXRjaGluZyByZW1vdGUgcmVmbmFtZScgJworCWdpdCBjb21taXQgLS1hbGxvdy1lbXB0eSAtbSBub3QtbG9jYWwgJiYKKwlnaXQgdXBkYXRlLXJlZiByZWZzL3JlbW90ZXMvb3JpZ2luL25vdC1sb2NhbCBIRUFEICYmCisJZ2l0IHJlc2V0IC0taGFyZCBIRUFEXiAmJgorCisJIyBUaGlzIGlzIHdoaXRlLWJveCB0ZXN0aW5nIGhhY2tlcnk7IHdlIGhhcHBlbiB0byBrbm93CisJIyB0aGF0IHJlYWRpbmcgcGFja2VkIHJlZnMgaXMgbW9yZSBwaWNreSBhYm91dCB0aGUgbWVtb3J5CisJIyBvd25lcnNoaXAgb2Ygc3RyaW5ncyB3ZSBwYXNzIHRvIGZvcl9lYWNoX3JlZigpIGNhbGxiYWNrcy4KKwlnaXQgcGFjay1yZWZzIC0tYWxsIC0tcHJ1bmUgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBub3QtbG9jYWwgMj5zdGRlcnIgJiYKKwlncmVwIG9yaWdpbi9ub3QtbG9jYWwgc3RkZXJyCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3N1Z2dlc3RlZCBuYW1lcyBhcmUgbm90IGFtYmlndW91cycgJworCWdpdCB1cGRhdGUtcmVmIHJlZnMvaGVhZHMvb3JpZ2luL25vdC1sb2NhbCBIRUFEICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIG5vdC1sb2NhbCAyPnN0ZGVyciAmJgorCWdyZXAgcmVtb3Rlcy9vcmlnaW4vbm90LWxvY2FsIHN0ZGVycgorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDc2MDQtbWVyZ2UtY3VzdG9tLW1lc3NhZ2Uuc2ggYi90L3Q3NjA0LW1lcmdlLWN1c3RvbS1tZXNzYWdlLnNoCmluZGV4IDg5NjE5Y2YuLmNkNGY5NjAgMTAwNzU1Ci0tLSBhL3QvdDc2MDQtbWVyZ2UtY3VzdG9tLW1lc3NhZ2Uuc2gKKysrIGIvdC90NzYwNC1tZXJnZS1jdXN0b20tbWVzc2FnZS5zaApAQCAtMTYsMTYgKzE2LDE2IEBACiB9CiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAnCi0JZWNobyBjMCA+IGMwLmMgJiYKKwllY2hvIGMwID5jMC5jICYmCiAJZ2l0IGFkZCBjMC5jICYmCiAJZ2l0IGNvbW1pdCAtbSBjMCAmJgogCWdpdCB0YWcgYzAgJiYKLQllY2hvIGMxID4gYzEuYyAmJgorCWVjaG8gYzEgPmMxLmMgJiYKIAlnaXQgYWRkIGMxLmMgJiYKIAlnaXQgY29tbWl0IC1tIGMxICYmCiAJZ2l0IHRhZyBjMSAmJgogCWdpdCByZXNldCAtLWhhcmQgYzAgJiYKLQllY2hvIGMyID4gYzIuYyAmJgorCWVjaG8gYzIgPmMyLmMgJiYKIAlnaXQgYWRkIGMyLmMgJiYKIAlnaXQgY29tbWl0IC1tIGMyICYmCiAJZ2l0IHRhZyBjMiAmJgpAQCAtMzYsMTUgKzM2LDgwIEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdtZXJnZSBjMiB3aXRoIGEgY3VzdG9tIG1lc3NhZ2UnICcKIAlnaXQgcmVzZXQgLS1oYXJkIGMxICYmCiAJZ2l0IG1lcmdlIC1tICIkKGNhdCBleHAuc3ViamVjdCkiIGMyICYmCi0JZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEIHwgc2VkIC1lICIxLC9eJC9kIiA+YWN0dWFsICYmCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEID5yYXcgJiYKKwlzZWQgLWUgIjEsL14kL2QiIHJhdyA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwLnN1YmplY3QgYWN0dWFsCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21lcmdlIC0tbG9nIGFwcGVuZHMgdG8gY3VzdG9tIG1lc3NhZ2UnICcKIAlnaXQgcmVzZXQgLS1oYXJkIGMxICYmCiAJZ2l0IG1lcmdlIC0tbG9nIC1tICIkKGNhdCBleHAuc3ViamVjdCkiIGMyICYmCi0JZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEIHwgc2VkIC1lICIxLC9eJC9kIiA+YWN0dWFsICYmCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEID5yYXcgJiYKKwlzZWQgLWUgIjEsL14kL2QiIHJhdyA+YWN0dWFsICYmCiAJdGVzdF9jbXAgZXhwLmxvZyBhY3R1YWwKICcKIAorbWVzZ193aXRoX2NvbW1lbnRfYW5kX25ld2xpbmVzPScKKyMgdGV4dAorCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3ByZXBhcmUgZmlsZSB3aXRoIGNvbW1lbnQgbGluZSBhbmQgdHJhaWxpbmcgbmV3bGluZXMnICAnCisJcHJpbnRmICIlcyIgIiRtZXNnX3dpdGhfY29tbWVudF9hbmRfbmV3bGluZXMiID5leHBlY3QKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnY2xlYW51cCBjb21taXQgbWVzc2FnZXMgKHZlcmJhdGltIG9wdGlvbiknICcKKwlnaXQgcmVzZXQgLS1oYXJkIGMxICYmCisJZ2l0IG1lcmdlIC0tY2xlYW51cD12ZXJiYXRpbSAtRiBleHBlY3QgYzIgJiYKKwlnaXQgY2F0LWZpbGUgY29tbWl0IEhFQUQgPnJhdyAmJgorCXNlZCAtZSAiMSwvXiQvZCIgcmF3ID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2NsZWFudXAgY29tbWl0IG1lc3NhZ2VzICh3aGl0ZXNwYWNlIG9wdGlvbiknICcKKwlnaXQgcmVzZXQgLS1oYXJkIGMxICYmCisJdGVzdF93cml0ZV9saW5lcyAiIiAiIyB0ZXh0IiAiIiA+dGV4dCAmJgorCWVjaG8gIiMgdGV4dCIgPmV4cGVjdCAmJgorCWdpdCBtZXJnZSAtLWNsZWFudXA9d2hpdGVzcGFjZSAtRiB0ZXh0IGMyICYmCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEID5yYXcgJiYKKwlzZWQgLWUgIjEsL14kL2QiIHJhdyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjbGVhbnVwIG1lcmdlIG1lc3NhZ2VzIChzY2lzc29ycyBvcHRpb24pJyAnCisJZ2l0IHJlc2V0IC0taGFyZCBjMSAmJgorCWNhdCA+dGV4dCA8PC1cRU9GICYmCisKKwkjIHRvIGJlIGtlcHQKKworCSAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gPjggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisJIyB0byBiZSBrZXB0LCB0b28KKwkjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSA+OCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwl0byBiZSByZW1vdmVkCisJIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gPjggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisJdG8gYmUgcmVtb3ZlZCwgdG9vCisJRU9GCisKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJIyB0byBiZSBrZXB0CisKKwkgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tID44IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCSMgdG8gYmUga2VwdCwgdG9vCisJRU9GCisJZ2l0IG1lcmdlIC0tY2xlYW51cD1zY2lzc29ycyAtZSAtRiB0ZXh0IGMyICYmCisJZ2l0IGNhdC1maWxlIGNvbW1pdCBIRUFEID5yYXcgJiYKKwlzZWQgLWUgIjEsL14kL2QiIHJhdyA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjbGVhbnVwIGNvbW1pdCBtZXNzYWdlcyAoc3RyaXAgb3B0aW9uKScgJworCWdpdCByZXNldCAtLWhhcmQgYzEgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzICIiICIjIHRleHQiICJzYW1wbGUiICIiID50ZXh0ICYmCisJZWNobyBzYW1wbGUgPmV4cGVjdCAmJgorCWdpdCBtZXJnZSAtLWNsZWFudXA9c3RyaXAgLUYgdGV4dCBjMiAmJgorCWdpdCBjYXQtZmlsZSBjb21taXQgSEVBRCA+cmF3ICYmCisJc2VkIC1lICIxLC9eJC9kIiByYXcgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q3NjEwLW1lcmdldG9vbC5zaCBiL3QvdDc2MTAtbWVyZ2V0b29sLnNoCmluZGV4IGE5ZmI5NzEuLmFkMjg4ZGQgMTAwNzU1Ci0tLSBhL3QvdDc2MTAtbWVyZ2V0b29sLnNoCisrKyBiL3QvdDc2MTAtbWVyZ2V0b29sLnNoCkBAIC0xMzAsMTggKzEzMCw3MSBAQAogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCIgJiYKIAlnaXQgY2hlY2tvdXQgLWIgdGVzdCR0ZXN0X2NvdW50IGJyYW5jaDEgJiYKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtTiAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBtYXN0ZXIgPi9kZXYvbnVsbCAyPiYxICYmCi0JKCB5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGJvdGggPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAiIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTEgZmlsZTEgKSAmJgotCSggeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMiAic3BhY2VkIG5hbWUiID4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIHN1YmRpci9maWxlMyA+L2Rldi9udWxsIDI+JjEgKSAmJgotCSggeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTExID4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgImQiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMTIgPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAibCIgfCBnaXQgbWVyZ2V0b29sIHN1Ym1vZCA+L2Rldi9udWxsIDI+JjEgKSAmJgotCXRlc3QgIiQoY2F0IGZpbGUxKSIgPSAibWFzdGVyIHVwZGF0ZWQiICYmCi0JdGVzdCAiJChjYXQgZmlsZTIpIiA9ICJtYXN0ZXIgbmV3IiAmJgotCXRlc3QgIiQoY2F0IHN1YmRpci9maWxlMykiID0gIm1hc3RlciBuZXcgc3ViIiAmJgotCXRlc3QgIiQoY2F0IHN1Ym1vZC9iYXIpIiA9ICJicmFuY2gxIHN1Ym1vZHVsZSIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyICYmCisJeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBib3RoICYmCisJeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMSBmaWxlMSAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTIgInNwYWNlZCBuYW1lIiAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgc3ViZGlyL2ZpbGUzICYmCisJeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTExICYmCisJeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTEyICYmCisJeWVzICJsIiB8IGdpdCBtZXJnZXRvb2wgc3VibW9kICYmCisJZWNobyAibWFzdGVyIHVwZGF0ZWQiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZTEgJiYKKwllY2hvICJtYXN0ZXIgbmV3IiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUyICYmCisJZWNobyAibWFzdGVyIG5ldyBzdWIiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3ViZGlyL2ZpbGUzICYmCisJZWNobyAiYnJhbmNoMSBzdWJtb2R1bGUiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3VibW9kL2JhciAmJgorCWdpdCBjb21taXQgLW0gImJyYW5jaDEgcmVzb2x2ZWQgd2l0aCBtZXJnZXRvb2wiCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2d1aSBtZXJnZXRvb2wnICcKKwl0ZXN0X2NvbmZpZyBtZXJnZS5ndWl0b29sIG15Z3VpdG9vbCAmJgorCXRlc3RfY29uZmlnIG1lcmdldG9vbC5teWd1aXRvb2wuY21kICIocHJpbnRmIFwiZ3VpIFwiICYmIGNhdCBcIlwkUkVNT1RFXCIpID5cIlwkTUVSR0VEXCIiICYmCisJdGVzdF9jb25maWcgbWVyZ2V0b29sLm15Z3VpdG9vbC50cnVzdEV4aXRDb2RlIHRydWUgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQiICYmCisJZ2l0IGNoZWNrb3V0IC1iIHRlc3QkdGVzdF9jb3VudCBicmFuY2gxICYmCisJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLU4gJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyICYmCisJeWVzICIiIHwgZ2l0IG1lcmdldG9vbCAtLWd1aSBib3RoICYmCisJeWVzICIiIHwgZ2l0IG1lcmdldG9vbCAtZyBmaWxlMSBmaWxlMSAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgLS1ndWkgZmlsZTIgInNwYWNlZCBuYW1lIiAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgLS1ndWkgc3ViZGlyL2ZpbGUzICYmCisJeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgLS1ndWkgZmlsZTExICYmCisJeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgLS1ndWkgZmlsZTEyICYmCisJeWVzICJsIiB8IGdpdCBtZXJnZXRvb2wgLS1ndWkgc3VibW9kICYmCisJZWNobyAiZ3VpIG1hc3RlciB1cGRhdGVkIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUxICYmCisJZWNobyAiZ3VpIG1hc3RlciBuZXciID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZTIgJiYKKwllY2hvICJndWkgbWFzdGVyIG5ldyBzdWIiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3ViZGlyL2ZpbGUzICYmCisJZWNobyAiYnJhbmNoMSBzdWJtb2R1bGUiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3VibW9kL2JhciAmJgorCWdpdCBjb21taXQgLW0gImJyYW5jaDEgcmVzb2x2ZWQgd2l0aCBtZXJnZXRvb2wiCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2d1aSBtZXJnZXRvb2wgd2l0aG91dCBtZXJnZS5ndWl0b29sIHNldCBmYWxscyBiYWNrIHRvIG1lcmdlLnRvb2wnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQiICYmCisJZ2l0IGNoZWNrb3V0IC1iIHRlc3QkdGVzdF9jb3VudCBicmFuY2gxICYmCisJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLU4gJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyICYmCisJeWVzICIiIHwgZ2l0IG1lcmdldG9vbCAtLWd1aSBib3RoICYmCisJeWVzICIiIHwgZ2l0IG1lcmdldG9vbCAtZyBmaWxlMSBmaWxlMSAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgLS1ndWkgZmlsZTIgInNwYWNlZCBuYW1lIiAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgLS1ndWkgc3ViZGlyL2ZpbGUzICYmCisJeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgLS1ndWkgZmlsZTExICYmCisJeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgLS1ndWkgZmlsZTEyICYmCisJeWVzICJsIiB8IGdpdCBtZXJnZXRvb2wgLS1ndWkgc3VibW9kICYmCisJZWNobyAibWFzdGVyIHVwZGF0ZWQiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgZmlsZTEgJiYKKwllY2hvICJtYXN0ZXIgbmV3IiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGZpbGUyICYmCisJZWNobyAibWFzdGVyIG5ldyBzdWIiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3ViZGlyL2ZpbGUzICYmCisJZWNobyAiYnJhbmNoMSBzdWJtb2R1bGUiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3VibW9kL2JhciAmJgogCWdpdCBjb21taXQgLW0gImJyYW5jaDEgcmVzb2x2ZWQgd2l0aCBtZXJnZXRvb2wiCiAnCiAKQEAgLTE1MywyMCArMjA2LDIxIEBACiAJIyB0ZXN0X3doZW5fZmluaXNoZWQgaXMgTElGTy4pCiAJdGVzdF9jb25maWcgY29yZS5hdXRvY3JsZiB0cnVlICYmCiAJZ2l0IGNoZWNrb3V0IC1iIHRlc3QkdGVzdF9jb3VudCBicmFuY2gxICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIG1hc3RlciA+L2Rldi9udWxsIDI+JjEgJiYKLQkoIHllcyAiIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTEgPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAiIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTIgPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAiIiB8IGdpdCBtZXJnZXRvb2wgInNwYWNlZCBuYW1lIiA+L2Rldi9udWxsIDI+JjEgKSAmJgotCSggeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBib3RoID4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIHN1YmRpci9maWxlMyA+L2Rldi9udWxsIDI+JjEgKSAmJgotCSggeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTExID4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgImQiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMTIgPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAiciIgfCBnaXQgbWVyZ2V0b29sIHN1Ym1vZCA+L2Rldi9udWxsIDI+JjEgKSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBtYXN0ZXIgJiYKKwl5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxICYmCisJeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMiAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgInNwYWNlZCBuYW1lIiAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgYm90aCAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgc3ViZGlyL2ZpbGUzICYmCisJeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTExICYmCisJeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTEyICYmCisJeWVzICJyIiB8IGdpdCBtZXJnZXRvb2wgc3VibW9kICYmCiAJdGVzdCAiJChwcmludGYgeCB8IGNhdCBmaWxlMSAtKSIgPSAiJChwcmludGYgIm1hc3RlciB1cGRhdGVkXHJcbngiKSIgJiYKIAl0ZXN0ICIkKHByaW50ZiB4IHwgY2F0IGZpbGUyIC0pIiA9ICIkKHByaW50ZiAibWFzdGVyIG5ld1xyXG54IikiICYmCiAJdGVzdCAiJChwcmludGYgeCB8IGNhdCBzdWJkaXIvZmlsZTMgLSkiID0gIiQocHJpbnRmICJtYXN0ZXIgbmV3IHN1YlxyXG54IikiICYmCiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLU4gJiYKLQl0ZXN0ICIkKGNhdCBzdWJtb2QvYmFyKSIgPSAibWFzdGVyIHN1Ym1vZHVsZSIgJiYKKwllY2hvICJtYXN0ZXIgc3VibW9kdWxlIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IHN1Ym1vZC9iYXIgJiYKIAlnaXQgY29tbWl0IC1tICJicmFuY2gxIHJlc29sdmVkIHdpdGggbWVyZ2V0b29sIC0gYXV0b2NybGYiCiAnCiAKQEAgLTE3Niw5ICsyMzAsMTAgQEAKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtTiAmJgogCSgKIAkJY2Qgc3ViZGlyICYmCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBtYXN0ZXIgPi9kZXYvbnVsbCAyPiYxICYmCi0JCSggeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMyA+L2Rldi9udWxsIDI+JjEgKSAmJgotCQl0ZXN0ICIkKGNhdCBmaWxlMykiID0gIm1hc3RlciBuZXcgc3ViIgorCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyICYmCisJCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTMgJiYKKwkJZWNobyAibWFzdGVyIG5ldyBzdWIiID5leHBlY3QgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGZpbGUzCiAJKQogJwogCkBAIC0xODgsMTcgKzI0MywyMCBAQAogCWdpdCBzdWJtb2R1bGUgdXBkYXRlIC1OICYmCiAJKAogCQljZCBzdWJkaXIgJiYKLQkJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIG1hc3RlciA+L2Rldi9udWxsIDI+JjEgJiYKLQkJKCB5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGZpbGUzID4vZGV2L251bGwgMj4mMSApICYmCi0JCSggeWVzICIiIHwgZ2l0IG1lcmdldG9vbCAuLi9maWxlMSA+L2Rldi9udWxsIDI+JjEgKSAmJgotCQkoIHllcyAiIiB8IGdpdCBtZXJnZXRvb2wgLi4vZmlsZTIgLi4vc3BhY2VkXCBuYW1lID4vZGV2L251bGwgMj4mMSApICYmCi0JCSggeWVzICIiIHwgZ2l0IG1lcmdldG9vbCAuLi9ib3RoID4vZGV2L251bGwgMj4mMSApICYmCi0JCSggeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgLi4vZmlsZTExID4vZGV2L251bGwgMj4mMSApICYmCi0JCSggeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgLi4vZmlsZTEyID4vZGV2L251bGwgMj4mMSApICYmCi0JCSggeWVzICJsIiB8IGdpdCBtZXJnZXRvb2wgLi4vc3VibW9kID4vZGV2L251bGwgMj4mMSApICYmCi0JCXRlc3QgIiQoY2F0IC4uL2ZpbGUxKSIgPSAibWFzdGVyIHVwZGF0ZWQiICYmCi0JCXRlc3QgIiQoY2F0IC4uL2ZpbGUyKSIgPSAibWFzdGVyIG5ldyIgJiYKLQkJdGVzdCAiJChjYXQgLi4vc3VibW9kL2JhcikiID0gImJyYW5jaDEgc3VibW9kdWxlIiAmJgorCQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyICYmCisJCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTMgJiYKKwkJeWVzICIiIHwgZ2l0IG1lcmdldG9vbCAuLi9maWxlMSAmJgorCQl5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIC4uL2ZpbGUyIC4uL3NwYWNlZFwgbmFtZSAmJgorCQl5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIC4uL2JvdGggJiYKKwkJeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgLi4vZmlsZTExICYmCisJCXllcyAiZCIgfCBnaXQgbWVyZ2V0b29sIC4uL2ZpbGUxMiAmJgorCQl5ZXMgImwiIHwgZ2l0IG1lcmdldG9vbCAuLi9zdWJtb2QgJiYKKwkJZWNobyAibWFzdGVyIHVwZGF0ZWQiID5leHBlY3QgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IC4uL2ZpbGUxICYmCisJCWVjaG8gIm1hc3RlciBuZXciID5leHBlY3QgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IC4uL2ZpbGUyICYmCisJCWVjaG8gImJyYW5jaDEgc3VibW9kdWxlIiA+ZXhwZWN0ICYmCisJCXRlc3RfY21wIGV4cGVjdCAuLi9zdWJtb2QvYmFyICYmCiAJCWdpdCBjb21taXQgLW0gImJyYW5jaDEgcmVzb2x2ZWQgd2l0aCBtZXJnZXRvb2wgLSBzdWJkaXIiCiAJKQogJwpAQCAtMjA5LDkgKzI2Nyw5IEBACiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLU4gJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyICYmCiAJdGVzdCAtbiAiJChnaXQgbHMtZmlsZXMgLXUpIiAmJgotCSggeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTExID4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgImQiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMTIgPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAibCIgfCBnaXQgbWVyZ2V0b29sIHN1Ym1vZCA+L2Rldi9udWxsIDI+JjEgKSAmJgorCXllcyAiZCIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxMSAmJgorCXllcyAiZCIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxMiAmJgorCXllcyAibCIgfCBnaXQgbWVyZ2V0b29sIHN1Ym1vZCAmJgogCW91dHB1dD0iJChnaXQgbWVyZ2V0b29sIC0tbm8tcHJvbXB0KSIgJiYKIAl0ZXN0ICIkb3V0cHV0IiA9ICJObyBmaWxlcyBuZWVkIG1lcmdpbmciCiAnCkBAIC0yMjMsMTMgKzI4MSwxNyBAQAogCSgKIAkJY2Qgc3ViZGlyICYmCiAJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBtYXN0ZXIgJiYKLQkJKCB5ZXMgInIiIHwgZ2l0IG1lcmdldG9vbCAuLi9zdWJtb2QgKSAmJgotCQkoIHllcyAiZCIgImQiIHwgZ2l0IG1lcmdldG9vbCAtLW5vLXByb21wdCApICYmCi0JCXRlc3QgIiQoY2F0IC4uL2ZpbGUxKSIgPSAibWFzdGVyIHVwZGF0ZWQiICYmCi0JCXRlc3QgIiQoY2F0IC4uL2ZpbGUyKSIgPSAibWFzdGVyIG5ldyIgJiYKLQkJdGVzdCAiJChjYXQgZmlsZTMpIiA9ICJtYXN0ZXIgbmV3IHN1YiIgJiYKKwkJeWVzICJyIiB8IGdpdCBtZXJnZXRvb2wgLi4vc3VibW9kICYmCisJCXllcyAiZCIgImQiIHwgZ2l0IG1lcmdldG9vbCAtLW5vLXByb21wdCAmJgorCQllY2hvICJtYXN0ZXIgdXBkYXRlZCIgPmV4cGVjdCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgLi4vZmlsZTEgJiYKKwkJZWNobyAibWFzdGVyIG5ldyIgPmV4cGVjdCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgLi4vZmlsZTIgJiYKKwkJZWNobyAibWFzdGVyIG5ldyBzdWIiID5leHBlY3QgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGZpbGUzICYmCiAJCSggY2QgLi4gJiYgZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLU4gKSAmJgotCQl0ZXN0ICIkKGNhdCAuLi9zdWJtb2QvYmFyKSIgPSAibWFzdGVyIHN1Ym1vZHVsZSIgJiYKKwkJZWNobyAibWFzdGVyIHN1Ym1vZHVsZSIgPmV4cGVjdCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgLi4vc3VibW9kL2JhciAmJgogCQlnaXQgY29tbWl0IC1tICJicmFuY2gyIHJlc29sdmVkIGJ5IG1lcmdldG9vbCBmcm9tIHN1YmRpciIKIAkpCiAnCkBAIC0yNDIsMTMgKzMwNCwxNyBAQAogCSgKIAkJY2Qgc3ViZGlyICYmCiAJCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBtYXN0ZXIgJiYKLQkJKCB5ZXMgInIiIHwgZ2l0IG1lcmdldG9vbCAuLi9zdWJtb2QgKSAmJgotCQkoIHllcyAiZCIgImQiIHwgZ2l0IG1lcmdldG9vbCAtLW5vLXByb21wdCApICYmCi0JCXRlc3QgIiQoY2F0IC4uL2ZpbGUxKSIgPSAibWFzdGVyIHVwZGF0ZWQiICYmCi0JCXRlc3QgIiQoY2F0IC4uL2ZpbGUyKSIgPSAibWFzdGVyIG5ldyIgJiYKLQkJdGVzdCAiJChjYXQgZmlsZTMpIiA9ICJtYXN0ZXIgbmV3IHN1YiIgJiYKKwkJeWVzICJyIiB8IGdpdCBtZXJnZXRvb2wgLi4vc3VibW9kICYmCisJCXllcyAiZCIgImQiIHwgZ2l0IG1lcmdldG9vbCAtLW5vLXByb21wdCAmJgorCQllY2hvICJtYXN0ZXIgdXBkYXRlZCIgPmV4cGVjdCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgLi4vZmlsZTEgJiYKKwkJZWNobyAibWFzdGVyIG5ldyIgPmV4cGVjdCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgLi4vZmlsZTIgJiYKKwkJZWNobyAibWFzdGVyIG5ldyBzdWIiID5leHBlY3QgJiYKKwkJdGVzdF9jbXAgZXhwZWN0IGZpbGUzICYmCiAJCSggY2QgLi4gJiYgZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLU4gKSAmJgotCQl0ZXN0ICIkKGNhdCAuLi9zdWJtb2QvYmFyKSIgPSAibWFzdGVyIHN1Ym1vZHVsZSIgJiYKKwkJZWNobyAibWFzdGVyIHN1Ym1vZHVsZSIgPmV4cGVjdCAmJgorCQl0ZXN0X2NtcCBleHBlY3QgLi4vc3VibW9kL2JhciAmJgogCQlnaXQgY29tbWl0IC1tICJicmFuY2gyIHJlc29sdmVkIGJ5IG1lcmdldG9vbCBmcm9tIHN1YmRpciIKIAkpCiAnCkBAIC0yNTksOSArMzI1LDkgQEAKIAlybSAtcmYgLmdpdC9yci1jYWNoZSAmJgogCWdpdCBjaGVja291dCAtYiB0ZXN0JHRlc3RfY291bnQgYnJhbmNoMSAmJgogCWdpdCBzdWJtb2R1bGUgdXBkYXRlIC1OICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIG1hc3RlciA+L2Rldi9udWxsIDI+JjEgJiYKLQkoIHllcyAibCIgfCBnaXQgbWVyZ2V0b29sIC0tbm8tcHJvbXB0IHN1Ym1vZCA+L2Rldi9udWxsIDI+JjEgKSAmJgotCSggeWVzICJkIiAiZCIgfCBnaXQgbWVyZ2V0b29sIC0tbm8tcHJvbXB0ID4vZGV2L251bGwgMj4mMSApICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIG1hc3RlciAmJgorCXllcyAibCIgfCBnaXQgbWVyZ2V0b29sIC0tbm8tcHJvbXB0IHN1Ym1vZCAmJgorCXllcyAiZCIgImQiIHwgZ2l0IG1lcmdldG9vbCAtLW5vLXByb21wdCAmJgogCWdpdCBzdWJtb2R1bGUgdXBkYXRlIC1OICYmCiAJb3V0cHV0PSIkKHllcyAibiIgfCBnaXQgbWVyZ2V0b29sIC0tbm8tcHJvbXB0KSIgJiYKIAl0ZXN0ICIkb3V0cHV0IiA9ICJObyBmaWxlcyBuZWVkIG1lcmdpbmciCkBAIC0zMDIsOSArMzY4LDEwIEBACiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLU4gJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyICYmCiAKLQkoIHllcyAiIiB8IGdpdCBtZXJnZXRvb2wgc3ViZGlyICkgJiYKKwl5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIHN1YmRpciAmJgogCi0JdGVzdCAiJChjYXQgc3ViZGlyL2ZpbGUzKSIgPSAibWFzdGVyIG5ldyBzdWIiCisJZWNobyAibWFzdGVyIG5ldyBzdWIiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3ViZGlyL2ZpbGUzCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ21lcmdldG9vbCBkZWxldGUvZGVsZXRlIGNvbmZsaWN0JyAnCkBAIC0zNjksMTQgKzQzNiwxNiBAQAogCWdpdCBjaGVja291dCAtYiB0ZXN0JHRlc3RfY291bnQuYSB0ZXN0JHRlc3RfY291bnQgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyICYmCiAJdGVzdCAtbiAiJChnaXQgbHMtZmlsZXMgLXUpIiAmJgotCSggeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMSBmaWxlMiBzcGFjZWRcIG5hbWUgc3ViZGlyL2ZpbGUzID4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGJvdGggPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAiZCIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxMSBmaWxlMTIgPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAiciIgfCBnaXQgbWVyZ2V0b29sIHN1Ym1vZCApICYmCisJeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMSBmaWxlMiBzcGFjZWRcIG5hbWUgc3ViZGlyL2ZpbGUzICYmCisJeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBib3RoICYmCisJeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTExIGZpbGUxMiAmJgorCXllcyAiciIgfCBnaXQgbWVyZ2V0b29sIHN1Ym1vZCAmJgogCXJtZGlyIHN1Ym1vZCAmJiBtdiBzdWJtb2QtbW92ZWRhc2lkZSBzdWJtb2QgJiYKLQl0ZXN0ICIkKGNhdCBzdWJtb2QvYmFyKSIgPSAiYnJhbmNoMSBzdWJtb2R1bGUiICYmCisJZWNobyAiYnJhbmNoMSBzdWJtb2R1bGUiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3VibW9kL2JhciAmJgogCWdpdCBzdWJtb2R1bGUgdXBkYXRlIC1OICYmCi0JdGVzdCAiJChjYXQgc3VibW9kL2JhcikiID0gIm1hc3RlciBzdWJtb2R1bGUiICYmCisJZWNobyAibWFzdGVyIHN1Ym1vZHVsZSIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBzdWJtb2QvYmFyICYmCiAJb3V0cHV0PSIkKGdpdCBtZXJnZXRvb2wgLS1uby1wcm9tcHQpIiAmJgogCXRlc3QgIiRvdXRwdXQiID0gIk5vIGZpbGVzIG5lZWQgbWVyZ2luZyIgJiYKIAlnaXQgY29tbWl0IC1tICJNZXJnZSByZXNvbHZlZCBieSBrZWVwaW5nIG1vZHVsZSIgJiYKQEAgLTM4NiwxMCArNDU1LDEwIEBACiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLU4gJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyICYmCiAJdGVzdCAtbiAiJChnaXQgbHMtZmlsZXMgLXUpIiAmJgotCSggeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMSBmaWxlMiBzcGFjZWRcIG5hbWUgc3ViZGlyL2ZpbGUzID4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGJvdGggPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAiZCIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxMSBmaWxlMTIgPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAibCIgfCBnaXQgbWVyZ2V0b29sIHN1Ym1vZCApICYmCisJeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMSBmaWxlMiBzcGFjZWRcIG5hbWUgc3ViZGlyL2ZpbGUzICYmCisJeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBib3RoICYmCisJeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTExIGZpbGUxMiAmJgorCXllcyAibCIgfCBnaXQgbWVyZ2V0b29sIHN1Ym1vZCAmJgogCXRlc3QgISAtZSBzdWJtb2QgJiYKIAlvdXRwdXQ9IiQoZ2l0IG1lcmdldG9vbCAtLW5vLXByb21wdCkiICYmCiAJdGVzdCAiJG91dHB1dCIgPSAiTm8gZmlsZXMgbmVlZCBtZXJnaW5nIiAmJgpAQCAtNDAwLDEwICs0NjksMTAgQEAKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtTiAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSB0ZXN0JHRlc3RfY291bnQgJiYKIAl0ZXN0IC1uICIkKGdpdCBscy1maWxlcyAtdSkiICYmCi0JKCB5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxIGZpbGUyIHNwYWNlZFwgbmFtZSBzdWJkaXIvZmlsZTMgPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAiIiB8IGdpdCBtZXJnZXRvb2wgYm90aCA+L2Rldi9udWxsIDI+JjEgKSAmJgotCSggeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTExIGZpbGUxMiA+L2Rldi9udWxsIDI+JjEgKSAmJgotCSggeWVzICJyIiB8IGdpdCBtZXJnZXRvb2wgc3VibW9kICkgJiYKKwl5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxIGZpbGUyIHNwYWNlZFwgbmFtZSBzdWJkaXIvZmlsZTMgJiYKKwl5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGJvdGggJiYKKwl5ZXMgImQiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMTEgZmlsZTEyICYmCisJeWVzICJyIiB8IGdpdCBtZXJnZXRvb2wgc3VibW9kICYmCiAJdGVzdCAhIC1lIHN1Ym1vZCAmJgogCXRlc3QgLWQgc3VibW9kLm9yaWcgJiYKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtTiAmJgpAQCAtNDE2LDEzICs0ODUsMTUgQEAKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtTiAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSB0ZXN0JHRlc3RfY291bnQgJiYKIAl0ZXN0IC1uICIkKGdpdCBscy1maWxlcyAtdSkiICYmCi0JKCB5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxIGZpbGUyIHNwYWNlZFwgbmFtZSBzdWJkaXIvZmlsZTMgPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAiIiB8IGdpdCBtZXJnZXRvb2wgYm90aCA+L2Rldi9udWxsIDI+JjEgKSAmJgotCSggeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTExIGZpbGUxMiA+L2Rldi9udWxsIDI+JjEgKSAmJgotCSggeWVzICJsIiB8IGdpdCBtZXJnZXRvb2wgc3VibW9kICkgJiYKLQl0ZXN0ICIkKGNhdCBzdWJtb2QvYmFyKSIgPSAibWFzdGVyIHN1Ym1vZHVsZSIgJiYKKwl5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxIGZpbGUyIHNwYWNlZFwgbmFtZSBzdWJkaXIvZmlsZTMgJiYKKwl5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGJvdGggJiYKKwl5ZXMgImQiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMTEgZmlsZTEyICYmCisJeWVzICJsIiB8IGdpdCBtZXJnZXRvb2wgc3VibW9kICYmCisJZWNobyAibWFzdGVyIHN1Ym1vZHVsZSIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBzdWJtb2QvYmFyICYmCiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLU4gJiYKLQl0ZXN0ICIkKGNhdCBzdWJtb2QvYmFyKSIgPSAibWFzdGVyIHN1Ym1vZHVsZSIgJiYKKwllY2hvICJtYXN0ZXIgc3VibW9kdWxlIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IHN1Ym1vZC9iYXIgJiYKIAlvdXRwdXQ9IiQoZ2l0IG1lcmdldG9vbCAtLW5vLXByb21wdCkiICYmCiAJdGVzdCAiJG91dHB1dCIgPSAiTm8gZmlsZXMgbmVlZCBtZXJnaW5nIiAmJgogCWdpdCBjb21taXQgLW0gIk1lcmdlIHJlc29sdmVkIGJ5IGtlZXBpbmcgbW9kdWxlIgpAQCAtNDQwLDE0ICs1MTEsMTYgQEAKIAlnaXQgY2hlY2tvdXQgLWIgdGVzdCR0ZXN0X2NvdW50LmEgYnJhbmNoMSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBtYXN0ZXIgJiYKIAl0ZXN0IC1uICIkKGdpdCBscy1maWxlcyAtdSkiICYmCi0JKCB5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxIGZpbGUyIHNwYWNlZFwgbmFtZSBzdWJkaXIvZmlsZTMgPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAiIiB8IGdpdCBtZXJnZXRvb2wgYm90aCA+L2Rldi9udWxsIDI+JjEgKSAmJgotCSggeWVzICJkIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTExIGZpbGUxMiA+L2Rldi9udWxsIDI+JjEgKSAmJgotCSggeWVzICJyIiB8IGdpdCBtZXJnZXRvb2wgc3VibW9kICkgJiYKKwl5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxIGZpbGUyIHNwYWNlZFwgbmFtZSBzdWJkaXIvZmlsZTMgJiYKKwl5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGJvdGggJiYKKwl5ZXMgImQiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMTEgZmlsZTEyICYmCisJeWVzICJyIiB8IGdpdCBtZXJnZXRvb2wgc3VibW9kICYmCiAJcm1kaXIgc3VibW9kICYmIG12IHN1Ym1vZC1tb3ZlZGFzaWRlIHN1Ym1vZCAmJgotCXRlc3QgIiQoY2F0IHN1Ym1vZC9iYXIpIiA9ICJicmFuY2gxIHN1Ym1vZHVsZSIgJiYKKwllY2hvICJicmFuY2gxIHN1Ym1vZHVsZSIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBzdWJtb2QvYmFyICYmCiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLU4gJiYKLQl0ZXN0ICIkKGNhdCBzdWJtb2QvYmFyKSIgPSAibWFzdGVyIHN1Ym1vZHVsZSIgJiYKKwllY2hvICJtYXN0ZXIgc3VibW9kdWxlIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IHN1Ym1vZC9iYXIgJiYKIAlvdXRwdXQ9IiQoZ2l0IG1lcmdldG9vbCAtLW5vLXByb21wdCkiICYmCiAJdGVzdCAiJG91dHB1dCIgPSAiTm8gZmlsZXMgbmVlZCBtZXJnaW5nIiAmJgogCWdpdCBjb21taXQgLW0gIk1lcmdlIHJlc29sdmVkIGJ5IGtlZXBpbmcgbW9kdWxlIiAmJgpAQCAtNDU2LDEyICs1MjksMTMgQEAKIAlnaXQgY2hlY2tvdXQgLWIgdGVzdCR0ZXN0X2NvdW50LmIgdGVzdCR0ZXN0X2NvdW50ICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIG1hc3RlciAmJgogCXRlc3QgLW4gIiQoZ2l0IGxzLWZpbGVzIC11KSIgJiYKLQkoIHllcyAiIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTEgZmlsZTIgc3BhY2VkXCBuYW1lIHN1YmRpci9maWxlMyA+L2Rldi9udWxsIDI+JjEgKSAmJgotCSggeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBib3RoID4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgImQiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMTEgZmlsZTEyID4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgImwiIHwgZ2l0IG1lcmdldG9vbCBzdWJtb2QgKSAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTEgZmlsZTIgc3BhY2VkXCBuYW1lIHN1YmRpci9maWxlMyAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgYm90aCAmJgorCXllcyAiZCIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxMSBmaWxlMTIgJiYKKwl5ZXMgImwiIHwgZ2l0IG1lcmdldG9vbCBzdWJtb2QgJiYKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtTiAmJgotCXRlc3QgIiQoY2F0IHN1Ym1vZCkiID0gIm5vdCBhIHN1Ym1vZHVsZSIgJiYKKwllY2hvICJub3QgYSBzdWJtb2R1bGUiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3VibW9kICYmCiAJb3V0cHV0PSIkKGdpdCBtZXJnZXRvb2wgLS1uby1wcm9tcHQpIiAmJgogCXRlc3QgIiRvdXRwdXQiID0gIk5vIGZpbGVzIG5lZWQgbWVyZ2luZyIgJiYKIAlnaXQgY29tbWl0IC1tICJNZXJnZSByZXNvbHZlZCBieSBrZWVwaW5nIGZpbGUiICYmCkBAIC00NzIsMTMgKzU0NiwxNCBAQAogCWdpdCBzdWJtb2R1bGUgdXBkYXRlIC1OICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIHRlc3QkdGVzdF9jb3VudCAmJgogCXRlc3QgLW4gIiQoZ2l0IGxzLWZpbGVzIC11KSIgJiYKLQkoIHllcyAiIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTEgZmlsZTIgc3BhY2VkXCBuYW1lIHN1YmRpci9maWxlMyA+L2Rldi9udWxsIDI+JjEgKSAmJgotCSggeWVzICIiIHwgZ2l0IG1lcmdldG9vbCBib3RoID4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgImQiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMTEgZmlsZTEyID4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgInIiIHwgZ2l0IG1lcmdldG9vbCBzdWJtb2QgKSAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTEgZmlsZTIgc3BhY2VkXCBuYW1lIHN1YmRpci9maWxlMyAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgYm90aCAmJgorCXllcyAiZCIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxMSBmaWxlMTIgJiYKKwl5ZXMgInIiIHwgZ2l0IG1lcmdldG9vbCBzdWJtb2QgJiYKIAl0ZXN0IC1kIHN1Ym1vZC5vcmlnICYmCiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLU4gJiYKLQl0ZXN0ICIkKGNhdCBzdWJtb2QpIiA9ICJub3QgYSBzdWJtb2R1bGUiICYmCisJZWNobyAibm90IGEgc3VibW9kdWxlIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IHN1Ym1vZCAmJgogCW91dHB1dD0iJChnaXQgbWVyZ2V0b29sIC0tbm8tcHJvbXB0KSIgJiYKIAl0ZXN0ICIkb3V0cHV0IiA9ICJObyBmaWxlcyBuZWVkIG1lcmdpbmciICYmCiAJZ2l0IGNvbW1pdCAtbSAiTWVyZ2UgcmVzb2x2ZWQgYnkga2VlcGluZyBmaWxlIiAmJgpAQCAtNDg4LDEzICs1NjMsMTUgQEAKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtTiAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSB0ZXN0JHRlc3RfY291bnQgJiYKIAl0ZXN0IC1uICIkKGdpdCBscy1maWxlcyAtdSkiICYmCi0JKCB5ZXMgIiIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxIGZpbGUyIHNwYWNlZFwgbmFtZSBzdWJkaXIvZmlsZTMgPi9kZXYvbnVsbCAyPiYxICkgJiYKLQkoIHllcyAiIiB8IGdpdCBtZXJnZXRvb2wgYm90aD4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgImQiIHwgZ2l0IG1lcmdldG9vbCBmaWxlMTEgZmlsZTEyID4vZGV2L251bGwgMj4mMSApICYmCi0JKCB5ZXMgImwiIHwgZ2l0IG1lcmdldG9vbCBzdWJtb2QgKSAmJgotCXRlc3QgIiQoY2F0IHN1Ym1vZC9iYXIpIiA9ICJtYXN0ZXIgc3VibW9kdWxlIiAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgZmlsZTEgZmlsZTIgc3BhY2VkXCBuYW1lIHN1YmRpci9maWxlMyAmJgorCXllcyAiIiB8IGdpdCBtZXJnZXRvb2wgYm90aCAmJgorCXllcyAiZCIgfCBnaXQgbWVyZ2V0b29sIGZpbGUxMSBmaWxlMTIgJiYKKwl5ZXMgImwiIHwgZ2l0IG1lcmdldG9vbCBzdWJtb2QgJiYKKwllY2hvICJtYXN0ZXIgc3VibW9kdWxlIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IHN1Ym1vZC9iYXIgJiYKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtTiAmJgotCXRlc3QgIiQoY2F0IHN1Ym1vZC9iYXIpIiA9ICJtYXN0ZXIgc3VibW9kdWxlIiAmJgorCWVjaG8gIm1hc3RlciBzdWJtb2R1bGUiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3VibW9kL2JhciAmJgogCW91dHB1dD0iJChnaXQgbWVyZ2V0b29sIC0tbm8tcHJvbXB0KSIgJiYKIAl0ZXN0ICIkb3V0cHV0IiA9ICJObyBmaWxlcyBuZWVkIG1lcmdpbmciICYmCiAJZ2l0IGNvbW1pdCAtbSAiTWVyZ2UgcmVzb2x2ZWQgYnkga2VlcGluZyBtb2R1bGUiCkBAIC01NDMsMjIgKzYyMCwyNiBAQAogCWdpdCBhZGQgc3ViZGlyL3N1YmRpcl9tb2R1bGUgJiYKIAlnaXQgY29tbWl0IC1tICJjaGFuZ2Ugc3VibW9kdWxlIGluIHN1YmRpcmVjdG9yeSBvbiB0ZXN0JHRlc3RfY291bnQuYiIgJiYKIAotCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSB0ZXN0JHRlc3RfY291bnQuYSA+L2Rldi9udWxsIDI+JjEgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgdGVzdCR0ZXN0X2NvdW50LmEgJiYKIAkoCiAJCWNkIHN1YmRpciAmJgotCQkoIHllcyAibCIgfCBnaXQgbWVyZ2V0b29sIHN1YmRpcl9tb2R1bGUgKQorCQl5ZXMgImwiIHwgZ2l0IG1lcmdldG9vbCBzdWJkaXJfbW9kdWxlCiAJKSAmJgotCXRlc3QgIiQoY2F0IHN1YmRpci9zdWJkaXJfbW9kdWxlL2ZpbGUxNSkiID0gInRlc3QkdGVzdF9jb3VudC5iIiAmJgorCWVjaG8gInRlc3QkdGVzdF9jb3VudC5iIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IHN1YmRpci9zdWJkaXJfbW9kdWxlL2ZpbGUxNSAmJgogCWdpdCBzdWJtb2R1bGUgdXBkYXRlIC1OICYmCi0JdGVzdCAiJChjYXQgc3ViZGlyL3N1YmRpcl9tb2R1bGUvZmlsZTE1KSIgPSAidGVzdCR0ZXN0X2NvdW50LmIiICYmCisJZWNobyAidGVzdCR0ZXN0X2NvdW50LmIiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3ViZGlyL3N1YmRpcl9tb2R1bGUvZmlsZTE1ICYmCiAJZ2l0IHJlc2V0IC0taGFyZCAmJgogCWdpdCBzdWJtb2R1bGUgdXBkYXRlIC1OICYmCiAKLQl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgdGVzdCR0ZXN0X2NvdW50LmEgPi9kZXYvbnVsbCAyPiYxICYmCi0JKCB5ZXMgInIiIHwgZ2l0IG1lcmdldG9vbCBzdWJkaXIvc3ViZGlyX21vZHVsZSApICYmCi0JdGVzdCAiJChjYXQgc3ViZGlyL3N1YmRpcl9tb2R1bGUvZmlsZTE1KSIgPSAidGVzdCR0ZXN0X2NvdW50LmIiICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIHRlc3QkdGVzdF9jb3VudC5hICYmCisJeWVzICJyIiB8IGdpdCBtZXJnZXRvb2wgc3ViZGlyL3N1YmRpcl9tb2R1bGUgJiYKKwllY2hvICJ0ZXN0JHRlc3RfY291bnQuYiIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBzdWJkaXIvc3ViZGlyX21vZHVsZS9maWxlMTUgJiYKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtTiAmJgotCXRlc3QgIiQoY2F0IHN1YmRpci9zdWJkaXJfbW9kdWxlL2ZpbGUxNSkiID0gInRlc3QkdGVzdF9jb3VudC5hIiAmJgorCWVjaG8gInRlc3QkdGVzdF9jb3VudC5hIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IHN1YmRpci9zdWJkaXJfbW9kdWxlL2ZpbGUxNSAmJgogCWdpdCBjb21taXQgLW0gImJyYW5jaDEgcmVzb2x2ZWQgd2l0aCBtZXJnZXRvb2wiCiAnCiAKQEAgLTU3NCwyMiArNjU1LDI1IEBACiAKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgbWFzdGVyICYmCiAJdGVzdCAtbiAiJChnaXQgbHMtZmlsZXMgLXUpIiAmJgotCSggeWVzICJsIiB8IGdpdCBtZXJnZXRvb2wgc3VibW9kICkgJiYKLQl0ZXN0ICIkKGNhdCBzdWJtb2QvZmlsZTE2KSIgPSAibm90IGEgc3VibW9kdWxlIiAmJgorCXllcyAibCIgfCBnaXQgbWVyZ2V0b29sIHN1Ym1vZCAmJgorCWVjaG8gIm5vdCBhIHN1Ym1vZHVsZSIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBzdWJtb2QvZmlsZTE2ICYmCiAJcm0gLXJmIHN1Ym1vZC5vcmlnICYmCiAKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIG1hc3RlciAmJgogCXRlc3QgLW4gIiQoZ2l0IGxzLWZpbGVzIC11KSIgJiYKIAl0ZXN0ICEgLWUgc3VibW9kLm9yaWcgJiYKLQkoIHllcyAiciIgfCBnaXQgbWVyZ2V0b29sIHN1Ym1vZCApICYmCisJeWVzICJyIiB8IGdpdCBtZXJnZXRvb2wgc3VibW9kICYmCiAJdGVzdCAtZCBzdWJtb2Qub3JpZyAmJgotCXRlc3QgIiQoY2F0IHN1Ym1vZC5vcmlnL2ZpbGUxNikiID0gIm5vdCBhIHN1Ym1vZHVsZSIgJiYKKwllY2hvICJub3QgYSBzdWJtb2R1bGUiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3VibW9kLm9yaWcvZmlsZTE2ICYmCiAJcm0gLXIgc3VibW9kLm9yaWcgJiYKIAltdiBzdWJtb2QtbW92ZWRhc2lkZS8uZ2l0IHN1Ym1vZCAmJgogCSggY2Qgc3VibW9kICYmIGdpdCBjbGVhbiAtZiAmJiBnaXQgcmVzZXQgLS1oYXJkICkgJiYKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtTiAmJgotCXRlc3QgIiQoY2F0IHN1Ym1vZC9iYXIpIiA9ICJtYXN0ZXIgc3VibW9kdWxlIiAmJgorCWVjaG8gIm1hc3RlciBzdWJtb2R1bGUiID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3Qgc3VibW9kL2JhciAmJgogCWdpdCByZXNldCAtLWhhcmQgJiYKIAlybSAtcmYgc3VibW9kLW1vdmVkYXNpZGUgJiYKIApAQCAtNTk3LDE3ICs2ODEsMTkgQEAKIAlnaXQgc3VibW9kdWxlIHVwZGF0ZSAtTiAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSB0ZXN0JHRlc3RfY291bnQgJiYKIAl0ZXN0IC1uICIkKGdpdCBscy1maWxlcyAtdSkiICYmCi0JKCB5ZXMgImwiIHwgZ2l0IG1lcmdldG9vbCBzdWJtb2QgKSAmJgorCXllcyAibCIgfCBnaXQgbWVyZ2V0b29sIHN1Ym1vZCAmJgogCWdpdCBzdWJtb2R1bGUgdXBkYXRlIC1OICYmCi0JdGVzdCAiJChjYXQgc3VibW9kL2JhcikiID0gIm1hc3RlciBzdWJtb2R1bGUiICYmCisJZWNobyAibWFzdGVyIHN1Ym1vZHVsZSIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBzdWJtb2QvYmFyICYmCiAKIAlnaXQgcmVzZXQgLS1oYXJkICYmCiAJZ2l0IHN1Ym1vZHVsZSB1cGRhdGUgLU4gJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgdGVzdCR0ZXN0X2NvdW50ICYmCiAJdGVzdCAtbiAiJChnaXQgbHMtZmlsZXMgLXUpIiAmJgogCXRlc3QgISAtZSBzdWJtb2Qub3JpZyAmJgotCSggeWVzICJyIiB8IGdpdCBtZXJnZXRvb2wgc3VibW9kICkgJiYKLQl0ZXN0ICIkKGNhdCBzdWJtb2QvZmlsZTE2KSIgPSAibm90IGEgc3VibW9kdWxlIiAmJgorCXllcyAiciIgfCBnaXQgbWVyZ2V0b29sIHN1Ym1vZCAmJgorCWVjaG8gIm5vdCBhIHN1Ym1vZHVsZSIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBzdWJtb2QvZmlsZTE2ICYmCiAKIAlnaXQgcmVzZXQgLS1oYXJkIG1hc3RlciAmJgogCSggY2Qgc3VibW9kICYmIGdpdCBjbGVhbiAtZiAmJiBnaXQgcmVzZXQgLS1oYXJkICkgJiYKQEAgLTY0MSw3ICs3MjcsNyBAQAogCXRlc3RfY29uZmlnIG1lcmdldG9vbC5teWVjaG8udHJ1c3RFeGl0Q29kZSB0cnVlICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIG1hc3RlciAmJgogCWdpdCBtZXJnZXRvb2wgLS1uby1wcm9tcHQgLS10b29sIG15ZWNobyAtLSBib3RoID5hY3R1YWwgJiYKLQlncmVwIF5cLi9ib3RoX0xPQ0FMXyBhY3R1YWwgPi9kZXYvbnVsbAorCWdyZXAgXlwuL2JvdGhfTE9DQUxfIGFjdHVhbAogJwogCiB0ZXN0X2xhenlfcHJlcmVxIE1LVEVNUCAnCkBAIC02NTgsOCArNzQ0LDggQEAKIAl0ZXN0X2NvbmZpZyBtZXJnZXRvb2wubXllY2hvLnRydXN0RXhpdENvZGUgdHJ1ZSAmJgogCXRlc3RfbXVzdF9mYWlsIGdpdCBtZXJnZSBtYXN0ZXIgJiYKIAlnaXQgbWVyZ2V0b29sIC0tbm8tcHJvbXB0IC0tdG9vbCBteWVjaG8gLS0gYm90aCA+YWN0dWFsICYmCi0JISBncmVwIF5cLi9ib3RoX0xPQ0FMXyBhY3R1YWwgPi9kZXYvbnVsbCAmJgotCWdyZXAgL2JvdGhfTE9DQUxfIGFjdHVhbCA+L2Rldi9udWxsCisJISBncmVwIF5cLi9ib3RoX0xPQ0FMXyBhY3R1YWwgJiYKKwlncmVwIC9ib3RoX0xPQ0FMXyBhY3R1YWwKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZGlmZi5vcmRlckZpbGUgY29uZmlndXJhdGlvbiBpcyBob25vcmVkJyAnCmRpZmYgLS1naXQgYS90L3Q3NjEyLW1lcmdlLXZlcmlmeS1zaWduYXR1cmVzLnNoIGIvdC90NzYxMi1tZXJnZS12ZXJpZnktc2lnbmF0dXJlcy5zaAppbmRleCBkOTkyMThhLi5hNDI2ZjNhIDEwMDc1NQotLS0gYS90L3Q3NjEyLW1lcmdlLXZlcmlmeS1zaWduYXR1cmVzLnNoCisrKyBiL3QvdDc2MTItbWVyZ2UtdmVyaWZ5LXNpZ25hdHVyZXMuc2gKQEAgLTY2LDYgKzY2LDIwIEBACiAJdGVzdF9pMThuZ3JlcCAiaGFzIGFuIHVudHJ1c3RlZCBHUEcgc2lnbmF0dXJlIiBtZXJnZWVycm9yCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHICdtZXJnZSBjb21taXQgd2l0aCB1bnRydXN0ZWQgc2lnbmF0dXJlIHdpdGggdmVyaWZpY2F0aW9uIGFuZCBoaWdoIG1pblRydXN0TGV2ZWwnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQgJiYgZ2l0IGNoZWNrb3V0IGluaXRpYWwiICYmCisJdGVzdF9jb25maWcgZ3BnLm1pblRydXN0TGV2ZWwgbWFyZ2luYWwgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgbWVyZ2UgLS1mZi1vbmx5IC0tdmVyaWZ5LXNpZ25hdHVyZXMgc2lkZS11bnRydXN0ZWQgMj5tZXJnZWVycm9yICYmCisJdGVzdF9pMThuZ3JlcCAiaGFzIGFuIHVudHJ1c3RlZCBHUEcgc2lnbmF0dXJlIiBtZXJnZWVycm9yCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHICdtZXJnZSBjb21taXQgd2l0aCB1bnRydXN0ZWQgc2lnbmF0dXJlIHdpdGggdmVyaWZpY2F0aW9uIGFuZCBsb3cgbWluVHJ1c3RMZXZlbCcgJworCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCAmJiBnaXQgY2hlY2tvdXQgaW5pdGlhbCIgJiYKKwl0ZXN0X2NvbmZpZyBncGcubWluVHJ1c3RMZXZlbCB1bmRlZmluZWQgJiYKKwlnaXQgbWVyZ2UgLS1mZi1vbmx5IC0tdmVyaWZ5LXNpZ25hdHVyZXMgc2lkZS11bnRydXN0ZWQgPm1lcmdlb3V0cHV0ICYmCisJdGVzdF9pMThuZ3JlcCAiaGFzIGEgZ29vZCBHUEcgc2lnbmF0dXJlIiBtZXJnZW91dHB1dAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzIEdQRyAnbWVyZ2UgY29tbWl0IHdpdGggdW50cnVzdGVkIHNpZ25hdHVyZSB3aXRoIG1lcmdlLnZlcmlmeVNpZ25hdHVyZXM9dHJ1ZScgJwogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCAmJiBnaXQgY2hlY2tvdXQgaW5pdGlhbCIgJiYKIAl0ZXN0X2NvbmZpZyBtZXJnZS52ZXJpZnlTaWduYXR1cmVzIHRydWUgJiYKQEAgLTczLDYgKzg3LDE0IEBACiAJdGVzdF9pMThuZ3JlcCAiaGFzIGFuIHVudHJ1c3RlZCBHUEcgc2lnbmF0dXJlIiBtZXJnZWVycm9yCiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR1BHICdtZXJnZSBjb21taXQgd2l0aCB1bnRydXN0ZWQgc2lnbmF0dXJlIHdpdGggbWVyZ2UudmVyaWZ5U2lnbmF0dXJlcz10cnVlIGFuZCBtaW5UcnVzdExldmVsJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVzZXQgLS1oYXJkICYmIGdpdCBjaGVja291dCBpbml0aWFsIiAmJgorCXRlc3RfY29uZmlnIG1lcmdlLnZlcmlmeVNpZ25hdHVyZXMgdHJ1ZSAmJgorCXRlc3RfY29uZmlnIGdwZy5taW5UcnVzdExldmVsIG1hcmdpbmFsICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IG1lcmdlIC0tZmYtb25seSBzaWRlLXVudHJ1c3RlZCAyPm1lcmdlZXJyb3IgJiYKKwl0ZXN0X2kxOG5ncmVwICJoYXMgYW4gdW50cnVzdGVkIEdQRyBzaWduYXR1cmUiIG1lcmdlZXJyb3IKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyBHUEcgJ21lcmdlIHNpZ25lZCBjb21taXQgd2l0aCB2ZXJpZmljYXRpb24nICcKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQgJiYgZ2l0IGNoZWNrb3V0IGluaXRpYWwiICYmCiAJZ2l0IG1lcmdlIC0tdmVyYm9zZSAtLWZmLW9ubHkgLS12ZXJpZnktc2lnbmF0dXJlcyBzaWRlLXNpZ25lZCA+bWVyZ2VvdXRwdXQgJiYKZGlmZiAtLWdpdCBhL3QvdDc3MDAtcmVwYWNrLnNoIGIvdC90NzcwMC1yZXBhY2suc2gKaW5kZXggNjE2MmUyYS4uMjViMjM1YyAxMDA3NTUKLS0tIGEvdC90NzcwMC1yZXBhY2suc2gKKysrIGIvdC90NzcwMC1yZXBhY2suc2gKQEAgLTQsMTI5ICs0LDEwNCBAQAogCiAuIC4vdGVzdC1saWIuc2gKIAotY29tbWl0X2FuZF9wYWNrKCkgewotCXRlc3RfY29tbWl0ICIkQCIgPi9kZXYvbnVsbCAmJgotCVNIQTE9JChnaXQgcGFjay1vYmplY3RzIC0tYWxsIC0tdW5wYWNrZWQgLS1pbmNyZW1lbnRhbCAuZ2l0L29iamVjdHMvcGFjay9wYWNrIDwvZGV2L251bGwpICYmCi0JZWNobyBwYWNrLSR7U0hBMX0ucGFjaworY29tbWl0X2FuZF9wYWNrICgpIHsKKwl0ZXN0X2NvbW1pdCAiJEAiIDE+JjIgJiYKKwlpbmNycGFja2lkPSQoZ2l0IHBhY2stb2JqZWN0cyAtLWFsbCAtLXVucGFja2VkIC0taW5jcmVtZW50YWwgLmdpdC9vYmplY3RzL3BhY2svcGFjayA8L2Rldi9udWxsKSAmJgorCWVjaG8gcGFjay0ke2luY3JwYWNraWR9LnBhY2sKK30KKwordGVzdF9ub19taXNzaW5nX2luX3BhY2tzICgpIHsKKwlteWlkeD0kKGxzIC0xIC5naXQvb2JqZWN0cy9wYWNrLyouaWR4KSAmJgorCXRlc3RfcGF0aF9pc19maWxlICIkbXlpZHgiICYmCisJZ2l0IHZlcmlmeS1wYWNrIC12IGFsdF9vYmplY3RzL3BhY2svKi5pZHggPm9yaWcucmF3ICYmCisJc2VkIC1uIC1lICJzL15cKCRPSURfUkVHRVhcKS4qL1wxL3AiIG9yaWcucmF3IHwgc29ydCA+b3JpZyAmJgorCWdpdCB2ZXJpZnktcGFjayAtdiAkbXlpZHggPmRlc3QucmF3ICYmCisJY3V0IC1kIiAiIC1mMSBkZXN0LnJhdyB8IHNvcnQgPmRlc3QgJiYKKwljb21tIC0yMyBvcmlnIGRlc3QgPm1pc3NpbmcgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgbWlzc2luZworfQorCisjIHdlIGV4cGVjdCAkcGFja2lkIGFuZCAkb2lkIHRvIGJlIGRlZmluZWQKK3Rlc3RfaGFzX2R1cGxpY2F0ZV9vYmplY3QgKCkgeworCXdhbnRfZHVwbGljYXRlX29iamVjdD0iJDEiCisJZm91bmRfZHVwbGljYXRlX29iamVjdD1mYWxzZQorCWZvciBwIGluIC5naXQvb2JqZWN0cy9wYWNrLyouaWR4CisJZG8KKwkJaWR4PSQoYmFzZW5hbWUgJHApCisJCXRlc3QgInBhY2stJHBhY2tpZC5pZHgiID0gIiRpZHgiICYmIGNvbnRpbnVlCisJCWdpdCB2ZXJpZnktcGFjayAtdiAkcCA+cGFja2xpc3QgfHwgcmV0dXJuICQ/CisJCWlmIGdyZXAgIl4kb2lkIiBwYWNrbGlzdAorCQl0aGVuCisJCQlmb3VuZF9kdXBsaWNhdGVfb2JqZWN0PXRydWUKKwkJCWVjaG8gIkRVUExJQ0FURSBPQkpFQ1QgRk9VTkQiCisJCQlicmVhaworCQlmaQorCWRvbmUgJiYKKwl0ZXN0ICIkd2FudF9kdXBsaWNhdGVfb2JqZWN0IiA9ICIkZm91bmRfZHVwbGljYXRlX29iamVjdCIKIH0KIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnb2JqZWN0cyBpbiBwYWNrcyBtYXJrZWQgLmtlZXAgYXJlIG5vdCByZXBhY2tlZCcgJwotCWVjaG8gY29udGVudDEgPiBmaWxlMSAmJgotCWVjaG8gY29udGVudDIgPiBmaWxlMiAmJgorCWVjaG8gY29udGVudDEgPmZpbGUxICYmCisJZWNobyBjb250ZW50MiA+ZmlsZTIgJiYKIAlnaXQgYWRkIC4gJiYKIAl0ZXN0X3RpY2sgJiYKIAlnaXQgY29tbWl0IC1tIGluaXRpYWxfY29tbWl0ICYmCiAJIyBDcmVhdGUgdHdvIHBhY2tzCiAJIyBUaGUgZmlyc3QgcGFjayB3aWxsIGNvbnRhaW4gYWxsIG9mIHRoZSBvYmplY3RzIGV4Y2VwdCBvbmUKLQlnaXQgcmV2LWxpc3QgLS1vYmplY3RzIC0tYWxsIHwgZ3JlcCAtdiBmaWxlMiB8Ci0JCWdpdCBwYWNrLW9iamVjdHMgcGFjayA+IC9kZXYvbnVsbCAmJgorCWdpdCByZXYtbGlzdCAtLW9iamVjdHMgLS1hbGwgPm9ianMgJiYKKwlncmVwIC12IGZpbGUyIG9ianMgfCBnaXQgcGFjay1vYmplY3RzIHBhY2sgJiYKIAkjIFRoZSBzZWNvbmQgcGFjayB3aWxsIGNvbnRhaW4gdGhlIGV4Y2x1ZGVkIG9iamVjdAotCXBhY2tzaGExPSQoZ2l0IHJldi1saXN0IC0tb2JqZWN0cyAtLWFsbCB8IGdyZXAgZmlsZTIgfAotCQlnaXQgcGFjay1vYmplY3RzIHBhY2spICYmCi0JPnBhY2stJHBhY2tzaGExLmtlZXAgJiYKLQlvYmpzaGExPSQoZ2l0IHZlcmlmeS1wYWNrIC12IHBhY2stJHBhY2tzaGExLmlkeCB8IGhlYWQgLW4gMSB8Ci0JCXNlZCAtZSAicy9eXChbMC05YS1mXVx7NDBcfVwpLiovXDEvIikgJiYKKwlwYWNraWQ9JChncmVwIGZpbGUyIG9ianMgfCBnaXQgcGFjay1vYmplY3RzIHBhY2spICYmCisJPnBhY2stJHBhY2tpZC5rZWVwICYmCisJZ2l0IHZlcmlmeS1wYWNrIC12IHBhY2stJHBhY2tpZC5pZHggPnBhY2tsaXN0ICYmCisJb2lkPSQoaGVhZCAtbiAxIHBhY2tsaXN0IHwgc2VkIC1lICJzL15cKCRPSURfUkVHRVhcKS4qL1wxLyIpICYmCiAJbXYgcGFjay0qIC5naXQvb2JqZWN0cy9wYWNrLyAmJgogCWdpdCByZXBhY2sgLUEgLWQgLWwgJiYKIAlnaXQgcHJ1bmUtcGFja2VkICYmCi0JZm9yIHAgaW4gLmdpdC9vYmplY3RzL3BhY2svKi5pZHg7IGRvCi0JCWlkeD0kKGJhc2VuYW1lICRwKQotCQl0ZXN0ICJwYWNrLSRwYWNrc2hhMS5pZHgiID0gIiRpZHgiICYmIGNvbnRpbnVlCi0JCWlmIGdpdCB2ZXJpZnktcGFjayAtdiAkcCB8IGVncmVwICJeJG9ianNoYTEiOyB0aGVuCi0JCQlmb3VuZF9kdXBsaWNhdGVfb2JqZWN0PTEKLQkJCWVjaG8gIkRVUExJQ0FURSBPQkpFQ1QgRk9VTkQiCi0JCQlicmVhawotCQlmaQotCWRvbmUgJiYKLQl0ZXN0IC16ICIkZm91bmRfZHVwbGljYXRlX29iamVjdCIKKwl0ZXN0X2hhc19kdXBsaWNhdGVfb2JqZWN0IGZhbHNlCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dyaXRpbmcgYml0bWFwcyB2aWEgY29tbWFuZC1saW5lIGNhbiBkdXBsaWNhdGUgLmtlZXAgb2JqZWN0cycgJwotCSMgYnVpbGQgb24gJG9ianNoYTEsICRwYWNrc2hhMSwgYW5kIC5rZWVwIHN0YXRlIGZyb20gcHJldmlvdXMKKwkjIGJ1aWxkIG9uICRvaWQsICRwYWNraWQsIGFuZCAua2VlcCBzdGF0ZSBmcm9tIHByZXZpb3VzCiAJZ2l0IHJlcGFjayAtQWRibCAmJgotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZm91bmRfZHVwbGljYXRlX29iamVjdD0iICYmCi0JZm9yIHAgaW4gLmdpdC9vYmplY3RzL3BhY2svKi5pZHg7IGRvCi0JCWlkeD0kKGJhc2VuYW1lICRwKQotCQl0ZXN0ICJwYWNrLSRwYWNrc2hhMS5pZHgiID0gIiRpZHgiICYmIGNvbnRpbnVlCi0JCWlmIGdpdCB2ZXJpZnktcGFjayAtdiAkcCB8IGVncmVwICJeJG9ianNoYTEiOyB0aGVuCi0JCQlmb3VuZF9kdXBsaWNhdGVfb2JqZWN0PTEKLQkJCWVjaG8gIkRVUExJQ0FURSBPQkpFQ1QgRk9VTkQiCi0JCQlicmVhawotCQlmaQotCWRvbmUgJiYKLQl0ZXN0ICIkZm91bmRfZHVwbGljYXRlX29iamVjdCIgPSAxCisJdGVzdF9oYXNfZHVwbGljYXRlX29iamVjdCB0cnVlCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3dyaXRpbmcgYml0bWFwcyB2aWEgY29uZmlnIGNhbiBkdXBsaWNhdGUgLmtlZXAgb2JqZWN0cycgJwotCSMgYnVpbGQgb24gJG9ianNoYTEsICRwYWNrc2hhMSwgYW5kIC5rZWVwIHN0YXRlIGZyb20gcHJldmlvdXMKKwkjIGJ1aWxkIG9uICRvaWQsICRwYWNraWQsIGFuZCAua2VlcCBzdGF0ZSBmcm9tIHByZXZpb3VzCiAJZ2l0IC1jIHJlcGFjay53cml0ZWJpdG1hcHM9dHJ1ZSByZXBhY2sgLUFkbCAmJgotCXRlc3Rfd2hlbl9maW5pc2hlZCAiZm91bmRfZHVwbGljYXRlX29iamVjdD0iICYmCi0JZm9yIHAgaW4gLmdpdC9vYmplY3RzL3BhY2svKi5pZHg7IGRvCi0JCWlkeD0kKGJhc2VuYW1lICRwKQotCQl0ZXN0ICJwYWNrLSRwYWNrc2hhMS5pZHgiID0gIiRpZHgiICYmIGNvbnRpbnVlCi0JCWlmIGdpdCB2ZXJpZnktcGFjayAtdiAkcCB8IGVncmVwICJeJG9ianNoYTEiOyB0aGVuCi0JCQlmb3VuZF9kdXBsaWNhdGVfb2JqZWN0PTEKLQkJCWVjaG8gIkRVUExJQ0FURSBPQkpFQ1QgRk9VTkQiCi0JCQlicmVhawotCQlmaQotCWRvbmUgJiYKLQl0ZXN0ICIkZm91bmRfZHVwbGljYXRlX29iamVjdCIgPSAxCisJdGVzdF9oYXNfZHVwbGljYXRlX29iamVjdCB0cnVlCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2xvb3NlIG9iamVjdHMgaW4gYWx0ZXJuYXRlIE9EQiBhcmUgbm90IHJlcGFja2VkJyAnCiAJbWtkaXIgYWx0X29iamVjdHMgJiYKLQllY2hvICQocHdkKS9hbHRfb2JqZWN0cyA+IC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMgJiYKLQllY2hvIGNvbnRlbnQzID4gZmlsZTMgJiYKLQlvYmpzaGExPSQoR0lUX09CSkVDVF9ESVJFQ1RPUlk9YWx0X29iamVjdHMgZ2l0IGhhc2gtb2JqZWN0IC13IGZpbGUzKSAmJgorCWVjaG8gJChwd2QpL2FsdF9vYmplY3RzID4uZ2l0L29iamVjdHMvaW5mby9hbHRlcm5hdGVzICYmCisJZWNobyBjb250ZW50MyA+ZmlsZTMgJiYKKwlvaWQ9JChHSVRfT0JKRUNUX0RJUkVDVE9SWT1hbHRfb2JqZWN0cyBnaXQgaGFzaC1vYmplY3QgLXcgZmlsZTMpICYmCiAJZ2l0IGFkZCBmaWxlMyAmJgogCXRlc3RfdGljayAmJgogCWdpdCBjb21taXQgLW0gY29tbWl0X2ZpbGUzICYmCiAJZ2l0IHJlcGFjayAtYSAtZCAtbCAmJgogCWdpdCBwcnVuZS1wYWNrZWQgJiYKLQlmb3IgcCBpbiAuZ2l0L29iamVjdHMvcGFjay8qLmlkeDsgZG8KLQkJaWYgZ2l0IHZlcmlmeS1wYWNrIC12ICRwIHwgZWdyZXAgIl4kb2Jqc2hhMSI7IHRoZW4KLQkJCWZvdW5kX2R1cGxpY2F0ZV9vYmplY3Q9MQotCQkJZWNobyAiRFVQTElDQVRFIE9CSkVDVCBGT1VORCIKLQkJCWJyZWFrCi0JCWZpCi0JZG9uZSAmJgotCXRlc3QgLXogIiRmb3VuZF9kdXBsaWNhdGVfb2JqZWN0IgorCXRlc3RfaGFzX2R1cGxpY2F0ZV9vYmplY3QgZmFsc2UKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncGFja2VkIG9icyBpbiBhbHQgT0RCIGFyZSByZXBhY2tlZCBldmVuIHdoZW4gbG9jYWwgcmVwbyBpcyBwYWNrbGVzcycgJwogCW1rZGlyIGFsdF9vYmplY3RzL3BhY2sgJiYKIAltdiAuZ2l0L29iamVjdHMvcGFjay8qIGFsdF9vYmplY3RzL3BhY2sgJiYKIAlnaXQgcmVwYWNrIC1hICYmCi0JbXlpZHg9JChscyAtMSAuZ2l0L29iamVjdHMvcGFjay8qLmlkeCkgJiYKLQl0ZXN0IC1mICIkbXlpZHgiICYmCi0JZm9yIHAgaW4gYWx0X29iamVjdHMvcGFjay8qLmlkeDsgZG8KLQkJZ2l0IHZlcmlmeS1wYWNrIC12ICRwIHwgc2VkIC1uIC1lICIvXlswLTlhLWZdXHs0MFx9L3AiCi0JZG9uZSB8IHdoaWxlIHJlYWQgc2hhMSByZXN0OyBkbwotCQlpZiAhICggZ2l0IHZlcmlmeS1wYWNrIC12ICRteWlkeCB8IGdyZXAgIl4kc2hhMSIgKTsgdGhlbgotCQkJZWNobyAiTWlzc2luZyBvYmplY3QgaW4gbG9jYWwgcGFjazogJHNoYTEiCi0JCQlyZXR1cm4gMQotCQlmaQotCWRvbmUKKwl0ZXN0X25vX21pc3NpbmdfaW5fcGFja3MKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncGFja2VkIG9icyBpbiBhbHQgT0RCIGFyZSByZXBhY2tlZCB3aGVuIGxvY2FsIHJlcG8gaGFzIHBhY2tzJyAnCiAJcm0gLWYgLmdpdC9vYmplY3RzL3BhY2svKiAmJgotCWVjaG8gbmV3X2NvbnRlbnQgPj4gZmlsZTEgJiYKKwllY2hvIG5ld19jb250ZW50ID4+ZmlsZTEgJiYKIAlnaXQgYWRkIGZpbGUxICYmCiAJdGVzdF90aWNrICYmCiAJZ2l0IGNvbW1pdCAtbSBtb3JlX2NvbnRlbnQgJiYKIAlnaXQgcmVwYWNrICYmCiAJZ2l0IHJlcGFjayAtYSAtZCAmJgotCW15aWR4PSQobHMgLTEgLmdpdC9vYmplY3RzL3BhY2svKi5pZHgpICYmCi0JdGVzdCAtZiAiJG15aWR4IiAmJgotCWZvciBwIGluIGFsdF9vYmplY3RzL3BhY2svKi5pZHg7IGRvCi0JCWdpdCB2ZXJpZnktcGFjayAtdiAkcCB8IHNlZCAtbiAtZSAiL15bMC05YS1mXVx7NDBcfS9wIgotCWRvbmUgfCB3aGlsZSByZWFkIHNoYTEgcmVzdDsgZG8KLQkJaWYgISAoIGdpdCB2ZXJpZnktcGFjayAtdiAkbXlpZHggfCBncmVwICJeJHNoYTEiICk7IHRoZW4KLQkJCWVjaG8gIk1pc3Npbmcgb2JqZWN0IGluIGxvY2FsIHBhY2s6ICRzaGExIgotCQkJcmV0dXJuIDEKLQkJZmkKLQlkb25lCisJdGVzdF9ub19taXNzaW5nX2luX3BhY2tzCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3BhY2tlZCBvYnMgaW4gYWx0ZXJuYXRlIE9EQiBrZXB0IHBhY2sgYXJlIHJlcGFja2VkJyAnCkBAIC0xMzQsNyArMTA5LDcgQEAKIAlmb3IgcCBpbiBhbHRfb2JqZWN0cy9wYWNrLyoucGFjawogCWRvCiAJCWJhc2VfbmFtZT0kKGJhc2VuYW1lICRwIC5wYWNrKSAmJgotCQlpZiB0ZXN0IC1mIGFsdF9vYmplY3RzL3BhY2svJGJhc2VfbmFtZS5rZWVwCisJCWlmIHRlc3RfcGF0aF9pc19maWxlIGFsdF9vYmplY3RzL3BhY2svJGJhc2VfbmFtZS5rZWVwCiAJCXRoZW4KIAkJCXJtIGFsdF9vYmplY3RzL3BhY2svJGJhc2VfbmFtZS5rZWVwCiAJCWVsc2UKQEAgLTE0MiwyMiArMTE3LDEzIEBACiAJCWZpCiAJZG9uZSAmJgogCWdpdCByZXBhY2sgLWEgLWQgJiYKLQlteWlkeD0kKGxzIC0xIC5naXQvb2JqZWN0cy9wYWNrLyouaWR4KSAmJgotCXRlc3QgLWYgIiRteWlkeCIgJiYKLQlmb3IgcCBpbiBhbHRfb2JqZWN0cy9wYWNrLyouaWR4OyBkbwotCQlnaXQgdmVyaWZ5LXBhY2sgLXYgJHAgfCBzZWQgLW4gLWUgIi9eWzAtOWEtZl1cezQwXH0vcCIKLQlkb25lIHwgd2hpbGUgcmVhZCBzaGExIHJlc3Q7IGRvCi0JCWlmICEgKCBnaXQgdmVyaWZ5LXBhY2sgLXYgJG15aWR4IHwgZ3JlcCAiXiRzaGExIiApOyB0aGVuCi0JCQllY2hvICJNaXNzaW5nIG9iamVjdCBpbiBsb2NhbCBwYWNrOiAkc2hhMSIKLQkJCXJldHVybiAxCi0JCWZpCi0JZG9uZQorCXRlc3Rfbm9fbWlzc2luZ19pbl9wYWNrcwogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwYWNrZWQgdW5yZWFjaGFibGUgb2JzIGluIGFsdGVybmF0ZSBPREIgYXJlIG5vdCBsb29zZW5lZCcgJwogCXJtIC1mIGFsdF9vYmplY3RzL3BhY2svKi5rZWVwICYmCiAJbXYgLmdpdC9vYmplY3RzL3BhY2svKiBhbHRfb2JqZWN0cy9wYWNrLyAmJgotCWNzaGExPSQoZ2l0IHJldi1wYXJzZSBIRUFEXntjb21taXR9KSAmJgorCWNvaWQ9JChnaXQgcmV2LXBhcnNlIEhFQURee2NvbW1pdH0pICYmCiAJZ2l0IHJlc2V0IC0taGFyZCBIRUFEXiAmJgogCXRlc3RfdGljayAmJgogCWdpdCByZWZsb2cgZXhwaXJlIC0tZXhwaXJlPSR0ZXN0X3RpY2sgLS1leHBpcmUtdW5yZWFjaGFibGU9JHRlc3RfdGljayAtLWFsbCAmJgpAQCAtMTY3LDE1ICsxMzMsMTUgQEAKIAkgICAgLS11bnBhY2stdW5yZWFjaGFibGUgPC9kZXYvbnVsbCBwYWNrICYmCiAJcm0gLWYgLmdpdC9vYmplY3RzL3BhY2svKiAmJgogCW12IHBhY2stKiAuZ2l0L29iamVjdHMvcGFjay8gJiYKLQl0ZXN0IDAgPSAkKGdpdCB2ZXJpZnktcGFjayAtdiAtLSAuZ2l0L29iamVjdHMvcGFjay8qLmlkeCB8Ci0JCWVncmVwICJeJGNzaGExICIgfCBzb3J0IHwgdW5pcSB8IHdjIC1sKSAmJgotCWVjaG8gPiAuZ2l0L29iamVjdHMvaW5mby9hbHRlcm5hdGVzICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHNob3cgJGNzaGExCisJZ2l0IHZlcmlmeS1wYWNrIC12IC0tIC5naXQvb2JqZWN0cy9wYWNrLyouaWR4ID5wYWNrbGlzdCAmJgorCSEgZ3JlcCAiXiRjb2lkICIgcGFja2xpc3QgJiYKKwllY2hvID4uZ2l0L29iamVjdHMvaW5mby9hbHRlcm5hdGVzICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHNob3cgJGNvaWQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnbG9jYWwgcGFja2VkIHVucmVhY2hhYmxlIG9icyB0aGF0IGV4aXN0IGluIGFsdGVybmF0ZSBPREIgYXJlIG5vdCBsb29zZW5lZCcgJwotCWVjaG8gJChwd2QpL2FsdF9vYmplY3RzID4gLmdpdC9vYmplY3RzL2luZm8vYWx0ZXJuYXRlcyAmJgotCWVjaG8gIiRjc2hhMSIgfCBnaXQgcGFjay1vYmplY3RzIC0tbm9uLWVtcHR5IC0tYWxsIC0tcmVmbG9nIHBhY2sgJiYKKwllY2hvICQocHdkKS9hbHRfb2JqZWN0cyA+LmdpdC9vYmplY3RzL2luZm8vYWx0ZXJuYXRlcyAmJgorCWVjaG8gIiRjb2lkIiB8IGdpdCBwYWNrLW9iamVjdHMgLS1ub24tZW1wdHkgLS1hbGwgLS1yZWZsb2cgcGFjayAmJgogCXJtIC1mIC5naXQvb2JqZWN0cy9wYWNrLyogJiYKIAltdiBwYWNrLSogLmdpdC9vYmplY3RzL3BhY2svICYmCiAJIyBUaGUgcGFjay1vYmplY3RzIGNhbGwgb24gdGhlIG5leHQgbGluZSBpcyBlcXVpdmFsZW50IHRvCkBAIC0xODQsMTAgKzE1MCwxMCBAQAogCSAgICAtLXVucGFjay11bnJlYWNoYWJsZSA8L2Rldi9udWxsIHBhY2sgJiYKIAlybSAtZiAuZ2l0L29iamVjdHMvcGFjay8qICYmCiAJbXYgcGFjay0qIC5naXQvb2JqZWN0cy9wYWNrLyAmJgotCXRlc3QgMCA9ICQoZ2l0IHZlcmlmeS1wYWNrIC12IC0tIC5naXQvb2JqZWN0cy9wYWNrLyouaWR4IHwKLQkJZWdyZXAgIl4kY3NoYTEgIiB8IHNvcnQgfCB1bmlxIHwgd2MgLWwpICYmCi0JZWNobyA+IC5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgc2hvdyAkY3NoYTEKKwlnaXQgdmVyaWZ5LXBhY2sgLXYgLS0gLmdpdC9vYmplY3RzL3BhY2svKi5pZHggPnBhY2tsaXN0ICYmCisJISBncmVwICJeJGNvaWQgIiAmJgorCWVjaG8gPi5naXQvb2JqZWN0cy9pbmZvL2FsdGVybmF0ZXMgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgc2hvdyAkY29pZAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdvYmplY3RzIG1hZGUgdW5yZWFjaGFibGUgYnkgZ3JhZnRzIG9ubHkgYXJlIGtlcHQnICcKQEAgLTE5Niw3ICsxNjIsNyBAQAogCUgwPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgogCUgxPSQoZ2l0IHJldi1wYXJzZSBIRUFEXikgJiYKIAlIMj0kKGdpdCByZXYtcGFyc2UgSEVBRF5eKSAmJgotCWVjaG8gIiRIMCAkSDIiID4gLmdpdC9pbmZvL2dyYWZ0cyAmJgorCWVjaG8gIiRIMCAkSDIiID4uZ2l0L2luZm8vZ3JhZnRzICYmCiAJZ2l0IHJlZmxvZyBleHBpcmUgLS1leHBpcmU9JHRlc3RfdGljayAtLWV4cGlyZS11bnJlYWNoYWJsZT0kdGVzdF90aWNrIC0tYWxsICYmCiAJZ2l0IHJlcGFjayAtYSAtZCAmJgogCWdpdCBjYXQtZmlsZSAtdCAkSDEKQEAgLTIyMSw1ICsxODcsNDUgQEAKIAkpCiAnCiAKLXRlc3RfZG9uZQordGVzdF9leHBlY3Rfc3VjY2VzcyAnYml0bWFwcyBhcmUgY3JlYXRlZCBieSBkZWZhdWx0IGluIGJhcmUgcmVwb3MnICcKKwlnaXQgY2xvbmUgLS1iYXJlIC5naXQgYmFyZS5naXQgJiYKKwlnaXQgLUMgYmFyZS5naXQgcmVwYWNrIC1hZCAmJgorCWJpdG1hcD0kKGxzIGJhcmUuZ2l0L29iamVjdHMvcGFjay8qLmJpdG1hcCkgJiYKKwl0ZXN0X3BhdGhfaXNfZmlsZSAiJGJpdG1hcCIKKycKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnaW5jcmVtZW50YWwgcmVwYWNrIGRvZXMgbm90IGNvbXBsYWluJyAnCisJZ2l0IC1DIGJhcmUuZ2l0IHJlcGFjayAtcSAyPnJlcGFjay5lcnIgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgcmVwYWNrLmVycgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdiaXRtYXBzIGNhbiBiZSBkaXNhYmxlZCBvbiBiYXJlIHJlcG9zJyAnCisJZ2l0IC1jIHJlcGFjay53cml0ZUJpdG1hcHM9ZmFsc2UgLUMgYmFyZS5naXQgcmVwYWNrIC1hZCAmJgorCWJpdG1hcD0kKGxzIGJhcmUuZ2l0L29iamVjdHMvcGFjay8qLmJpdG1hcCB8fCA6KSAmJgorCXRlc3QgLXogIiRiaXRtYXAiCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ25vIGJpdG1hcHMgY3JlYXRlZCBpZiAua2VlcCBmaWxlcyBwcmVzZW50JyAnCisJcGFjaz0kKGxzIGJhcmUuZ2l0L29iamVjdHMvcGFjay8qLnBhY2spICYmCisJdGVzdF9wYXRoX2lzX2ZpbGUgIiRwYWNrIiAmJgorCWtlZXA9JHtwYWNrJS5wYWNrfS5rZWVwICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtZiBcIlwka2VlcFwiIiAmJgorCT4iJGtlZXAiICYmCisJZ2l0IC1DIGJhcmUuZ2l0IHJlcGFjayAtYWQgMj5zdGRlcnIgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgc3RkZXJyICYmCisJZmluZCBiYXJlLmdpdC9vYmplY3RzL3BhY2svIC10eXBlIGYgLW5hbWUgIiouYml0bWFwIiA+YWN0dWFsICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhdXRvLWJpdG1hcHMgZG8gbm90IGNvbXBsYWluIGlmIHVuYXZhaWxhYmxlJyAnCisJdGVzdF9jb25maWcgLUMgYmFyZS5naXQgcGFjay5wYWNrU2l6ZUxpbWl0IDFNICYmCisJYmxvYj0kKHRlc3QtdG9vbCBnZW5yYW5kb20gYmlnICQoKDEwMjQqMTAyNCkpIHwKKwkgICAgICAgZ2l0IC1DIGJhcmUuZ2l0IGhhc2gtb2JqZWN0IC13IC0tc3RkaW4pICYmCisJZ2l0IC1DIGJhcmUuZ2l0IHVwZGF0ZS1yZWYgcmVmcy90YWdzL2JpZyAkYmxvYiAmJgorCWdpdCAtQyBiYXJlLmdpdCByZXBhY2sgLWFkIDI+c3RkZXJyICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IHN0ZGVyciAmJgorCWZpbmQgYmFyZS5naXQvb2JqZWN0cy9wYWNrIC10eXBlIGYgLW5hbWUgIiouYml0bWFwIiA+YWN0dWFsICYmCisJdGVzdF9tdXN0X2JlX2VtcHR5IGFjdHVhbAorJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDc4MDAtZGlmZnRvb2wuc2ggYi90L3Q3ODAwLWRpZmZ0b29sLnNoCmluZGV4IDIyYjkxOTkuLjI5YjkyOTAgMTAwNzU1Ci0tLSBhL3QvdDc4MDAtZGlmZnRvb2wuc2gKKysrIGIvdC90NzgwMC1kaWZmdG9vbC5zaApAQCAtMTI1LDE1ICsxMjUsMTQgQEAKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1mIGZvci1kaWZmIC5naXQvZmFpbC1yaWdodC1maWxlIiAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0tIGZvci1kaWZmIiAmJgogCXdyaXRlX3NjcmlwdCAuZ2l0L2ZhaWwtcmlnaHQtZmlsZSA8PC1cRU9GICYmCi0JZWNobyAiJDIiCisJZWNobyBmYWlsZWQKIAlleGl0IDEKIAlFT0YKIAk+Zm9yLWRpZmYgJiYKIAlnaXQgYWRkIGZvci1kaWZmICYmCi0JZWNobyBmaWxlID5leHBlY3QgJiYKIAl0ZXN0X211c3RfZmFpbCBnaXQgZGlmZnRvb2wgLXkgLS10cnVzdC1leGl0LWNvZGUgXAogCQktLWV4dGNtZCAuZ2l0L2ZhaWwtcmlnaHQtZmlsZSBicmFuY2ggPmFjdHVhbCAmJgotCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwl0ZXN0X2xpbmVfY291bnQgPSAxIGFjdHVhbAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaWZmdG9vbCBob25vcnMgZXhpdCBzdGF0dXMgaWYgY29tbWFuZCBub3QgZm91bmQnICcKQEAgLTI3OSwxMSArMjc4LDI3IEBACiAJZWNobyBicmFuY2ggPmV4cGVjdCAmJgogCWdpdCBkaWZmdG9vbCAtLW5vLXByb21wdCBicmFuY2ggPmFjdHVhbCAmJgogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKwlnaXQgZGlmZnRvb2wgLS1ndWkgLS1uby1wcm9tcHQgYnJhbmNoID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCiAKIAkjIHNldCBtZXJnZS50b29sIHRvIHNvbWV0aGluZyBib2d1cywgZGlmZi50b29sIHRvIHRlc3QtdG9vbAogCXRlc3RfY29uZmlnIG1lcmdlLnRvb2wgYm9ndXMtdG9vbCAmJgogCXRlc3RfY29uZmlnIGRpZmYudG9vbCB0ZXN0LXRvb2wgJiYKIAlnaXQgZGlmZnRvb2wgLS1uby1wcm9tcHQgYnJhbmNoID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisJZ2l0IGRpZmZ0b29sIC0tZ3VpIC0tbm8tcHJvbXB0IGJyYW5jaCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJIyBzZXQgbWVyZ2UudG9vbCwgZGlmZi50b29sIHRvIHNvbWV0aGluZyBib2d1cywgbWVyZ2UuZ3VpdG9vbCB0byB0ZXN0LXRvb2wKKwl0ZXN0X2NvbmZpZyBkaWZmLnRvb2wgYm9ndXMtdG9vbCAmJgorCXRlc3RfY29uZmlnIG1lcmdlLmd1aXRvb2wgdGVzdC10b29sICYmCisJZ2l0IGRpZmZ0b29sIC0tZ3VpIC0tbm8tcHJvbXB0IGJyYW5jaCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJIyBzZXQgbWVyZ2UudG9vbCwgZGlmZi50b29sLCBtZXJnZS5ndWl0b29sIHRvIHNvbWV0aGluZyBib2d1cywgZGlmZi5ndWl0b29sIHRvIHRlc3QtdG9vbAorCXRlc3RfY29uZmlnIG1lcmdlLmd1aXRvb2wgYm9ndXMtdG9vbCAmJgorCXRlc3RfY29uZmlnIGRpZmYuZ3VpdG9vbCB0ZXN0LXRvb2wgJiYKKwlnaXQgZGlmZnRvb2wgLS1ndWkgLS1uby1wcm9tcHQgYnJhbmNoID5hY3R1YWwgJiYKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKQEAgLTU0Niw3ICs1NjEsNyBAQAogZG9uZSA+YWN0dWFsCiBFT0YKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyBTWU1MSU5LUyAnZGlmZnRvb2wgLS1kaXItZGlmZiAtLXN5bWxpbmsgd2l0aG91dCB1bnN0YWdlZCBjaGFuZ2VzJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzIFNZTUxJTktTICdkaWZmdG9vbCAtLWRpci1kaWZmIC0tc3ltbGlua3Mgd2l0aG91dCB1bnN0YWdlZCBjaGFuZ2VzJyAnCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCiAJZmlsZQogCSRQV0QvZmlsZQpAQCAtNTU1LDcgKzU3MCw3IEBACiAJc3ViL3N1YgogCSRQV0Qvc3ViL3N1YgogCUVPRgotCWdpdCBkaWZmdG9vbCAtLWRpci1kaWZmIC0tc3ltbGluayBcCisJZ2l0IGRpZmZ0b29sIC0tZGlyLWRpZmYgLS1zeW1saW5rcyBcCiAJCS0tZXh0Y21kICIuLy5naXQvQ0hFQ0tfU1lNTElOS1MiIGJyYW5jaCBIRUFEICYmCiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwpAQCAtNzA1LDQgKzcyMCwyMiBAQAogCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnb3V0c2lkZSB3b3JrdHJlZScgJworCWVjaG8gMSA+MSAmJgorCWVjaG8gMiA+MiAmJgorCXRlc3RfZXhwZWN0X2NvZGUgMSBub25naXQgZ2l0IFwKKwkJLWMgZGlmZi50b29sPWVjaG8gLWMgZGlmZnRvb2wuZWNoby5jbWQ9ImVjaG8gXCRMT0NBTCBcJFJFTU9URSIgXAorCQlkaWZmdG9vbCAtLW5vLXByb21wdCAtLW5vLWluZGV4IC4uLzEgLi4vMiA+YWN0dWFsICYmCisJZWNobyAiLi4vMSAuLi8yIiA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaWZmdG9vbCAtLWd1aSwgLS10b29sIGFuZCAtLWV4dGNtZCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlJyAnCisJZGlmZnRvb2xfdGVzdF9zZXR1cCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmdG9vbCAtLWd1aSAtLXRvb2w9dGVzdC10b29sICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGRpZmZ0b29sIC0tZ3VpIC0tZXh0Y21kPWNhdCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmdG9vbCAtLXRvb2w9dGVzdC10b29sIC0tZXh0Y21kPWNhdCAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBkaWZmdG9vbCAtLWd1aSAtLXRvb2w9dGVzdC10b29sIC0tZXh0Y21kPWNhdAorJworCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDc4MTAtZ3JlcC5zaCBiL3QvdDc4MTAtZ3JlcC5zaAppbmRleCA0M2FhNDE2Li43ZDdiMzk2IDEwMDc1NQotLS0gYS90L3Q3ODEwLWdyZXAuc2gKKysrIGIvdC90NzgxMC1ncmVwLnNoCkBAIC0xMTksMzMgKzExOSwzMyBAQAogCQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKIAknCiAKLQl0ZXN0X2V4cGVjdF9zdWNjZXNzICJncmVwIC13ICRMICh3aXRoIC0tY29sdW1uLCAtLWludmVydCkiICcKKwl0ZXN0X2V4cGVjdF9zdWNjZXNzICJncmVwIC13ICRMICh3aXRoIC0tY29sdW1uLCAtLWludmVydC1tYXRjaCkiICcKIAkJewogCQkJZWNobyAke0hDfWZpbGU6MTpmb28gbW1hcCBiYXIKIAkJCWVjaG8gJHtIQ31maWxlOjE6Zm9vX21tYXAgYmFyCiAJCQllY2hvICR7SEN9ZmlsZToxOmZvb19tbWFwIGJhciBtbWFwCiAJCQllY2hvICR7SEN9ZmlsZToxOmZvbyBtbWFwIGJhcl9tbWFwCiAJCX0gPmV4cGVjdGVkICYmCi0JCWdpdCBncmVwIC0tY29sdW1uIC0taW52ZXJ0IC13IC1lIGJheiAkSCAtLSBmaWxlID5hY3R1YWwgJiYKKwkJZ2l0IGdyZXAgLS1jb2x1bW4gLS1pbnZlcnQtbWF0Y2ggLXcgLWUgYmF6ICRIIC0tIGZpbGUgPmFjdHVhbCAmJgogCQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKIAknCiAKLQl0ZXN0X2V4cGVjdF9zdWNjZXNzICJncmVwICRMICh3aXRoIC0tY29sdW1uLCAtLWludmVydCwgZXh0ZW5kZWQgT1IpIiAnCisJdGVzdF9leHBlY3Rfc3VjY2VzcyAiZ3JlcCAkTCAod2l0aCAtLWNvbHVtbiwgLS1pbnZlcnQtbWF0Y2gsIGV4dGVuZGVkIE9SKSIgJwogCQl7CiAJCQllY2hvICR7SEN9aGVsbG9fd29ybGQ6NjpIZUxMb193b3JsZAogCQl9ID5leHBlY3RlZCAmJgotCQlnaXQgZ3JlcCAtLWNvbHVtbiAtLWludmVydCAtZSBsbCAtLW9yIC0tbm90IC1lIF8gJEggLS0gaGVsbG9fd29ybGQgXAorCQlnaXQgZ3JlcCAtLWNvbHVtbiAtLWludmVydC1tYXRjaCAtZSBsbCAtLW9yIC0tbm90IC1lIF8gJEggLS0gaGVsbG9fd29ybGQgXAogCQkJPmFjdHVhbCAmJgogCQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKIAknCiAKLQl0ZXN0X2V4cGVjdF9zdWNjZXNzICJncmVwICRMICh3aXRoIC0tY29sdW1uLCAtLWludmVydCwgZXh0ZW5kZWQgQU5EKSIgJworCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgImdyZXAgJEwgKHdpdGggLS1jb2x1bW4sIC0taW52ZXJ0LW1hdGNoLCBleHRlbmRlZCBBTkQpIiAnCiAJCXsKIAkJCWVjaG8gJHtIQ31oZWxsb193b3JsZDozOkhlbGxvIHdvcmxkCiAJCQllY2hvICR7SEN9aGVsbG9fd29ybGQ6MzpIZWxsb193b3JsZAogCQkJZWNobyAke0hDfWhlbGxvX3dvcmxkOjY6SGVMTG9fd29ybGQKIAkJfSA+ZXhwZWN0ZWQgJiYKLQkJZ2l0IGdyZXAgLS1jb2x1bW4gLS1pbnZlcnQgLS1ub3QgLWUgXyAtLWFuZCAtLW5vdCAtZSBsbCAkSCAtLSBoZWxsb193b3JsZCBcCisJCWdpdCBncmVwIC0tY29sdW1uIC0taW52ZXJ0LW1hdGNoIC0tbm90IC1lIF8gLS1hbmQgLS1ub3QgLWUgbGwgJEggLS0gaGVsbG9fd29ybGQgXAogCQkJPmFjdHVhbCAmJgogCQl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKIAknCkBAIC00MTIsNyArNDEyLDcgQEAKIAkJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAJJwogCi0JdGVzdF9leHBlY3Rfc3VjY2VzcyAhUENSRSAiZ3JlcCAkTCB3aXRoIGdyZXAucGF0dGVybnR5cGU9cGVybCBlcnJvcnMgd2l0aG91dCBQQ1JFIiAnCisJdGVzdF9leHBlY3Rfc3VjY2VzcyAhRkFJTF9QUkVSRVFTLCFQQ1JFICJncmVwICRMIHdpdGggZ3JlcC5wYXR0ZXJudHlwZT1wZXJsIGVycm9ycyB3aXRob3V0IFBDUkUiICcKIAkJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIGdyZXAucGF0dGVybnR5cGU9cGVybCBncmVwICJmb28uKmJhciIKIAknCiAKQEAgLTEwMTAsNyArMTAxMCw3IEBACiAJCQllY2hvICIuZ2l0aWdub3JlOi4qbyoiICYmCiAJCQljYXQgLi4vZXhwZWN0LmZ1bGwKIAkJfSA+Li4vZXhwZWN0LndpdGguaWdub3JlZCAmJgotCQlnaXQgZ3JlcCAtLW5vLWluZGV4IC0tbm8tZXhjbHVkZSBvID4uLi9hY3R1YWwuZnVsbCAmJgorCQlnaXQgZ3JlcCAtLW5vLWluZGV4IC0tbm8tZXhjbHVkZS1zdGFuZGFyZCBvID4uLi9hY3R1YWwuZnVsbCAmJgogCQl0ZXN0X2NtcCAuLi9leHBlY3Qud2l0aC5pZ25vcmVkIC4uL2FjdHVhbC5mdWxsCiAJKQogJwpAQCAtMTA1MSw3ICsxMDUxLDcgQEAKIAkJCWVjaG8gIi5naXRpZ25vcmU6LipvKiIgJiYKIAkJCWNhdCAuLi9leHBlY3QuZnVsbAogCQl9ID4uLi9leHBlY3Qud2l0aC5pZ25vcmVkICYmCi0JCWdpdCAtYyBncmVwLmZhbGxiYWNrVG9Ob0luZGV4IGdyZXAgLS1uby1leGNsdWRlIG8gPi4uL2FjdHVhbC5mdWxsICYmCisJCWdpdCAtYyBncmVwLmZhbGxiYWNrVG9Ob0luZGV4IGdyZXAgLS1uby1leGNsdWRlLXN0YW5kYXJkIG8gPi4uL2FjdHVhbC5mdWxsICYmCiAJCXRlc3RfY21wIC4uL2V4cGVjdC53aXRoLmlnbm9yZWQgLi4vYWN0dWFsLmZ1bGwKIAkpCiAnCkBAIC0xMjM0LDcgKzEyMzQsNyBAQAogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICFQQ1JFICdncmVwIC0tcGVybC1yZWdleHAgcGF0dGVybiBlcnJvcnMgd2l0aG91dCBQQ1JFJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICFGQUlMX1BSRVJFUVMsIVBDUkUgJ2dyZXAgLS1wZXJsLXJlZ2V4cCBwYXR0ZXJuIGVycm9ycyB3aXRob3V0IFBDUkUnICcKIAl0ZXN0X211c3RfZmFpbCBnaXQgZ3JlcCAtLXBlcmwtcmVnZXhwICJmb28uKmJhciIKICcKIApAQCAtMTI0OSw3ICsxMjQ5LDcgQEAKIAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICFQQ1JFICdncmVwIC1QIHBhdHRlcm4gZXJyb3JzIHdpdGhvdXQgUENSRScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAhRkFJTF9QUkVSRVFTLCFQQ1JFICdncmVwIC1QIHBhdHRlcm4gZXJyb3JzIHdpdGhvdXQgUENSRScgJwogCXRlc3RfbXVzdF9mYWlsIGdpdCBncmVwIC1QICJmb28uKmJhciIKICcKIApkaWZmIC0tZ2l0IGEvdC90NzgxMS1ncmVwLW9wZW4uc2ggYi90L3Q3ODExLWdyZXAtb3Blbi5zaAppbmRleCBkMWViZmQ4Li5hOTg3ODVkIDEwMDc1NQotLS0gYS90L3Q3ODExLWdyZXAtb3Blbi5zaAorKysgYi90L3Q3ODExLWdyZXAtb3Blbi5zaApAQCAtMTEzLDcgKzExMyw2IEBACiAJc3ViZGlyL2dyZXAuYwogCXVucmVsYXRlZAogCUVPRgotCT5lbXB0eSAmJgogCiAJZWNobyAiZW51bSBncmVwX3BhdF90b2tlbiIgPnVucmVsYXRlZCAmJgogCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IGNoZWNrb3V0IEhFQUQgdW5yZWxhdGVkIiAmJgpkaWZmIC0tZ2l0IGEvdC90NzgxMi1ncmVwLWljYXNlLW5vbi1hc2NpaS5zaCBiL3QvdDc4MTItZ3JlcC1pY2FzZS1ub24tYXNjaWkuc2gKaW5kZXggMGM2ODVkMy4uMDNkYmE2NiAxMDA3NTUKLS0tIGEvdC90NzgxMi1ncmVwLWljYXNlLW5vbi1hc2NpaS5zaAorKysgYi90L3Q3ODEyLWdyZXAtaWNhc2Utbm9uLWFzY2lpLnNoCkBAIC01Myw0ICs1MywzNSBAQAogCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzIEdFVFRFWFRfTE9DQUxFLExJQlBDUkUyICdQQ1JFIHYyOiBzZXR1cCBpbnZhbGlkIFVURi04IGRhdGEnICcKKwlwcmludGYgIlxcMjAwXFxuIiA+aW52YWxpZC0weDgwICYmCisJZWNobyAiw6Z2YXIiID5leHBlY3RlZCAmJgorCWNhdCBleHBlY3RlZCA+PmludmFsaWQtMHg4MCAmJgorCWdpdCBhZGQgaW52YWxpZC0weDgwCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR0VUVEVYVF9MT0NBTEUsTElCUENSRTIgJ1BDUkUgdjI6IGdyZXAgQVNDSUkgZnJvbSBpbnZhbGlkIFVURi04IGRhdGEnICcKKwlnaXQgZ3JlcCAtaCAidmFyIiBpbnZhbGlkLTB4ODAgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbCAmJgorCWdpdCBncmVwIC1oICIoKk5PX0pJVCl2YXIiIGludmFsaWQtMHg4MCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgR0VUVEVYVF9MT0NBTEUsTElCUENSRTIgJ1BDUkUgdjI6IGdyZXAgbm9uLUFTQ0lJIGZyb20gaW52YWxpZCBVVEYtOCBkYXRhJyAnCisJZ2l0IGdyZXAgLWggIsOmIiBpbnZhbGlkLTB4ODAgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbCAmJgorCWdpdCBncmVwIC1oICIoKk5PX0pJVCnDpiIgaW52YWxpZC0weDgwID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyBHRVRURVhUX0xPQ0FMRSxMSUJQQ1JFMiAnUENSRSB2MjogZ3JlcCBub24tQVNDSUkgZnJvbSBpbnZhbGlkIFVURi04IGRhdGEgd2l0aCAtaScgJworCXRlc3RfbWlnaHRfZmFpbCBnaXQgZ3JlcCAtaGkgIsOGIiBpbnZhbGlkLTB4ODAgPmFjdHVhbCAmJgorCWlmIHRlc3QgLXMgYWN0dWFsCisJdGhlbgorCSAgICB0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKwlmaSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBncmVwIC1oaSAiKCpOT19KSVQpw4YiIGludmFsaWQtMHg4MCA+YWN0dWFsICYmCisJISB0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q3ODE0LWdyZXAtcmVjdXJzZS1zdWJtb2R1bGVzLnNoIGIvdC90NzgxNC1ncmVwLXJlY3Vyc2Utc3VibW9kdWxlcy5zaAppbmRleCBmYTQ3NWQ1Li44MjhjYjNiIDEwMDc1NQotLS0gYS90L3Q3ODE0LWdyZXAtcmVjdXJzZS1zdWJtb2R1bGVzLnNoCisrKyBiL3QvdDc4MTQtZ3JlcC1yZWN1cnNlLXN1Ym1vZHVsZXMuc2gKQEAgLTE0LDEyICsxNCwxNCBAQAogCWVjaG8gIigzfDQpIiA+Yi9iICYmCiAJZ2l0IGFkZCBhIGIgJiYKIAlnaXQgY29tbWl0IC1tICJhZGQgYSBhbmQgYiIgJiYKKwl0ZXN0X3RpY2sgJiYKIAlnaXQgaW5pdCBzdWJtb2R1bGUgJiYKIAllY2hvICIoMXwyKWQoM3w0KSIgPnN1Ym1vZHVsZS9hICYmCiAJZ2l0IC1DIHN1Ym1vZHVsZSBhZGQgYSAmJgogCWdpdCAtQyBzdWJtb2R1bGUgY29tbWl0IC1tICJhZGQgYSIgJiYKIAlnaXQgc3VibW9kdWxlIGFkZCAuL3N1Ym1vZHVsZSAmJgotCWdpdCBjb21taXQgLW0gImFkZGVkIHN1Ym1vZHVsZSIKKwlnaXQgY29tbWl0IC1tICJhZGRlZCBzdWJtb2R1bGUiICYmCisJdGVzdF90aWNrCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dyZXAgY29ycmVjdGx5IGZpbmRzIHBhdHRlcm5zIGluIGEgc3VibW9kdWxlJyAnCkBAIC02NSwxMSArNjcsMTQgQEAKIAllY2hvICIoMXwyKWQoM3w0KSIgPnN1Ym1vZHVsZS9zdWIvYSAmJgogCWdpdCAtQyBzdWJtb2R1bGUvc3ViIGFkZCBhICYmCiAJZ2l0IC1DIHN1Ym1vZHVsZS9zdWIgY29tbWl0IC1tICJhZGQgYSIgJiYKKwl0ZXN0X3RpY2sgJiYKIAlnaXQgLUMgc3VibW9kdWxlIHN1Ym1vZHVsZSBhZGQgLi9zdWIgJiYKIAlnaXQgLUMgc3VibW9kdWxlIGFkZCBzdWIgJiYKIAlnaXQgLUMgc3VibW9kdWxlIGNvbW1pdCAtbSAiYWRkZWQgc3ViIiAmJgorCXRlc3RfdGljayAmJgogCWdpdCBhZGQgc3VibW9kdWxlICYmCiAJZ2l0IGNvbW1pdCAtbSAidXBkYXRlZCBzdWJtb2R1bGUiICYmCisJdGVzdF90aWNrICYmCiAKIAljYXQgPmV4cGVjdCA8PC1cRU9GICYmCiAJYTooMXwyKWQoM3w0KQpAQCAtMTc5LDE1ICsxODQsMTggQEAKIAllY2hvICIoMXwyKWQoM3w0KSIgPiJwYXJlbnQvZmk6bGUiICYmCiAJZ2l0IC1DIHBhcmVudCBhZGQgImZpOmxlIiAmJgogCWdpdCAtQyBwYXJlbnQgY29tbWl0IC1tICJhZGQgZmk6bGUiICYmCisJdGVzdF90aWNrICYmCiAKIAlnaXQgaW5pdCAic3U6YiIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgInJtIC1yZiBzdTpiIiAmJgogCWVjaG8gIigxfDIpZCgzfDQpIiA+InN1OmIvZmk6bGUiICYmCiAJZ2l0IC1DICJzdTpiIiBhZGQgImZpOmxlIiAmJgogCWdpdCAtQyAic3U6YiIgY29tbWl0IC1tICJhZGQgZmk6bGUiICYmCisJdGVzdF90aWNrICYmCiAKIAlnaXQgLUMgcGFyZW50IHN1Ym1vZHVsZSBhZGQgIi4uL3N1OmIiICJzdTpiIiAmJgogCWdpdCAtQyBwYXJlbnQgY29tbWl0IC1tICJhZGQgc3VibW9kdWxlIiAmJgorCXRlc3RfdGljayAmJgogCiAJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgogCWZpOmxlOigxfDIpZCgzfDQpCkBAIC0yMTAsMTUgKzIxOCwxOCBAQAogCWVjaG8gIigxfDIpZCgzfDQpIiA+cGFyZW50L2ZpbGUgJiYKIAlnaXQgLUMgcGFyZW50IGFkZCBmaWxlICYmCiAJZ2l0IC1DIHBhcmVudCBjb21taXQgLW0gImFkZCBmaWxlIiAmJgorCXRlc3RfdGljayAmJgogCiAJZ2l0IGluaXQgc3ViICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJybSAtcmYgc3ViIiAmJgogCWVjaG8gIigxfDIpZCgzfDQpIiA+c3ViL2ZpbGUgJiYKIAlnaXQgLUMgc3ViIGFkZCBmaWxlICYmCiAJZ2l0IC1DIHN1YiBjb21taXQgLW0gImFkZCBmaWxlIiAmJgorCXRlc3RfdGljayAmJgogCiAJZ2l0IC1DIHBhcmVudCBzdWJtb2R1bGUgYWRkIC4uL3N1YiBkaXIvc3ViICYmCiAJZ2l0IC1DIHBhcmVudCBjb21taXQgLW0gImFkZCBzdWJtb2R1bGUiICYmCisJdGVzdF90aWNrICYmCiAKIAljYXQgPmV4cGVjdCA8PC1cRU9GICYmCiAJZGlyL3N1Yi9maWxlOigxfDIpZCgzfDQpCkBAIC0yMjksNiArMjQwLDcgQEAKIAogCWdpdCAtQyBwYXJlbnQgbXYgZGlyL3N1YiBzdWItbW92ZWQgJiYKIAlnaXQgLUMgcGFyZW50IGNvbW1pdCAtbSAibW92ZWQgc3VibW9kdWxlIiAmJgorCXRlc3RfdGljayAmJgogCiAJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgogCWZpbGU6KDF8MilkKDN8NCkKQEAgLTI1MSw2ICsyNjMsNyBAQAogCWVjaG8gIigxfDIpZCgzfDQpIiA+c3ViL2ZpbGUgJiYKIAlnaXQgLUMgc3ViIGFkZCBmaWxlICYmCiAJZ2l0IC1DIHN1YiBjb21taXQgLW0gImFkZCBmaWxlIiAmJgorCXRlc3RfdGljayAmJgogCiAJZ2l0IGluaXQgcGFyZW50ICYmCiAJZWNobyAiKDF8MilkKDN8NCkiID5wYXJlbnQvZmlsZSAmJgpAQCAtMjYwLDYgKzI3Myw3IEBACiAJZ2l0IC1DIHBhcmVudCBhZGQgc3JjL2ZpbGUyICYmCiAJZ2l0IC1DIHBhcmVudCBzdWJtb2R1bGUgYWRkIC4uL3N1YiAmJgogCWdpdCAtQyBwYXJlbnQgY29tbWl0IC1tICJhZGQgZmlsZXMgYW5kIHN1Ym1vZHVsZSIgJiYKKwl0ZXN0X3RpY2sgJiYKIAogCSMgRnJvbSB0b3Agd29ya3MKIAljYXQgPmV4cGVjdCA8PC1cRU9GICYmCkBAIC0yOTMsNiArMzA3LDcgQEAKIAllY2hvICIoMXwyKWQoM3w0KSIgPnN1Yi9maWxlICYmCiAJZ2l0IC1DIHN1YiBhZGQgZmlsZSAmJgogCWdpdCAtQyBzdWIgY29tbWl0IC1tICJhZGQgZmlsZSIgJiYKKwl0ZXN0X3RpY2sgJiYKIAogCWdpdCBpbml0IHBhcmVudCAmJgogCW1rZGlyIHBhcmVudC9zcmMgJiYKQEAgLTMwMSw2ICszMTYsNyBAQAogCWdpdCAtQyBwYXJlbnQgc3VibW9kdWxlIGFkZCAuLi9zdWIgc3JjL3N1YiAmJgogCWdpdCAtQyBwYXJlbnQgc3VibW9kdWxlIGFkZCAuLi9zdWIgc3ViICYmCiAJZ2l0IC1DIHBhcmVudCBjb21taXQgLW0gImFkZCBmaWxlcyBhbmQgc3VibW9kdWxlcyIgJiYKKwl0ZXN0X3RpY2sgJiYKIAogCSMgVmVyaWZ5IGdyZXAgZnJvbSByb290IHdvcmtzCiAJY2F0ID5leHBlY3QgPDwtXEVPRiAmJgpAQCAtMzI5LDcgKzM0NSwxNiBAQAogfQogCiB0ZXN0X2luY29tcGF0aWJsZV93aXRoX3JlY3Vyc2Vfc3VibW9kdWxlcyAtLXVudHJhY2tlZAotdGVzdF9pbmNvbXBhdGlibGVfd2l0aF9yZWN1cnNlX3N1Ym1vZHVsZXMgLS1uby1pbmRleAorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdncmVwIC0tcmVjdXJzZS1zdWJtb2R1bGVzIC0tbm8taW5kZXggaWdub3JlcyAtLXJlY3Vyc2Utc3VibW9kdWxlcycgJworCWdpdCBncmVwIC0tcmVjdXJzZS1zdWJtb2R1bGVzIC0tbm8taW5kZXggLWUgIl4oLnwuKVtcZF0iID5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdCA8PC1cRU9GICYmCisJYTooMXwyKWQoM3w0KQorCXN1Ym1vZHVsZS9hOigxfDIpZCgzfDQpCisJc3VibW9kdWxlL3N1Yi9hOigxfDIpZCgzfDQpCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdncmVwIC0tcmVjdXJzZS1zdWJtb2R1bGVzIHNob3VsZCBwYXNzIHRoZSBwYXR0ZXJuIHR5cGUgYWxvbmcnICcKIAkjIEZpeGVkCkBAIC0zODAsMTEgKzQwNSw3IEBACiAJZmkKICcKIAotIyBSZWN1cnNpbmcgZG93biBpbnRvIG5lc3RlZCBzdWJtb2R1bGVzIHdoaWNoIGRvIG5vdCBoYXZlIC5naXRtb2R1bGVzIGluIHRoZWlyCi0jIHdvcmtpbmcgdHJlZSBkb2VzIG5vdCB3b3JrIHlldC4gVGhpcyBpcyBiZWNhdXNlIGNvbmZpZ19mcm9tX2dpdG1vZHVsZXMoKQotIyB1c2VzIGdldF9vaWQoKSBhbmQgdGhlIGxhdHRlciBpcyBzdGlsbCBub3QgYWJsZSB0byBnZXQgb2JqZWN0cyBmcm9tIGFuCi0jIGFyYml0cmFyeSByZXBvc2l0b3J5ICh0aGUgbmVzdGVkIHN1Ym1vZHVsZSwgaW4gdGhpcyBjYXNlKS4KLXRlc3RfZXhwZWN0X2ZhaWx1cmUgJ2dyZXAgLS1yZWN1cnNlLXN1Ym1vZHVsZXMgd2l0aCBzdWJtb2R1bGVzIHdpdGhvdXQgLmdpdG1vZHVsZXMgaW4gdGhlIHdvcmtpbmcgdHJlZScgJwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ3JlcCAtLXJlY3Vyc2Utc3VibW9kdWxlcyB3aXRoIHN1Ym1vZHVsZXMgd2l0aG91dCAuZ2l0bW9kdWxlcyBpbiB0aGUgd29ya2luZyB0cmVlJyAnCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgLUMgc3VibW9kdWxlIGNoZWNrb3V0IC5naXRtb2R1bGVzIiAmJgogCXJtIHN1Ym1vZHVsZS8uZ2l0bW9kdWxlcyAmJgogCWdpdCBncmVwIC0tcmVjdXJzZS1zdWJtb2R1bGVzIC1lICIoLnwuKVtcZF0iID5hY3R1YWwgJiYKQEAgLTM5Niw0ICs0MTcsMjUgQEAKIAl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCiAnCiAKK3Jlc2V0X2FuZF9jbGVhbiAoKSB7CisJZ2l0IHJlc2V0IC0taGFyZCAmJgorCWdpdCBjbGVhbiAtZmQgJiYKKwlnaXQgc3VibW9kdWxlIGZvcmVhY2ggLS1yZWN1cnNpdmUgJ2dpdCByZXNldCAtLWhhcmQnICYmCisJZ2l0IHN1Ym1vZHVsZSBmb3JlYWNoIC0tcmVjdXJzaXZlICdnaXQgY2xlYW4gLWZkJworfQorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdncmVwIC0tcmVjdXJzZS1zdWJtb2R1bGVzIHdpdGhvdXQgLS1jYWNoZWQgY29uc2lkZXJzIHdvcmt0cmVlIG1vZGlmaWNhdGlvbnMnICcKKwlyZXNldF9hbmRfY2xlYW4gJiYKKwllY2hvICJBIG1vZGlmaWVkIGxpbmUgaW4gc3VibW9kdWxlIiA+PnN1Ym1vZHVsZS9hICYmCisJZWNobyAic3VibW9kdWxlL2E6QSBtb2RpZmllZCBsaW5lIGluIHN1Ym1vZHVsZSIgPmV4cGVjdCAmJgorCWdpdCBncmVwIC0tcmVjdXJzZS1zdWJtb2R1bGVzICJBIG1vZGlmaWVkIGxpbmUgaW4gc3VibW9kdWxlIiA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdncmVwIC0tcmVjdXJzZS1zdWJtb2R1bGVzIHdpdGggLS1jYWNoZWQgaWdub3JlcyB3b3JrdHJlZSBtb2RpZmljYXRpb25zJyAnCisJcmVzZXRfYW5kX2NsZWFuICYmCisJZWNobyAiQSBtb2RpZmllZCBsaW5lIGluIHN1Ym1vZHVsZSIgPj5zdWJtb2R1bGUvYSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBncmVwIC0tcmVjdXJzZS1zdWJtb2R1bGVzIC0tY2FjaGVkICJBIG1vZGlmaWVkIGxpbmUgaW4gc3VibW9kdWxlIiA+YWN0dWFsIDI+JjEgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCisnCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDc4MTUtZ3JlcC1iaW5hcnkuc2ggYi90L3Q3ODE1LWdyZXAtYmluYXJ5LnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjkwZWJiNjQKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q3ODE1LWdyZXAtYmluYXJ5LnNoCkBAIC0wLDAgKzEsMTQ4IEBACisjIS9iaW4vc2gKKwordGVzdF9kZXNjcmlwdGlvbj0nZ2l0IGdyZXAgaW4gYmluYXJ5IGZpbGVzJworCisuIC4vdGVzdC1saWIuc2gKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnc2V0dXAnICIKKwllY2hvICdiaW5hcnlRZmlsZVFtWypdY1Eqw6ZRw7AnIHwgcV90b19udWwgPmEgJiYKKwlnaXQgYWRkIGEgJiYKKwlnaXQgY29tbWl0IC1tLgorIgorCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgZ3JlcCBpbmEgYScgJworCWVjaG8gQmluYXJ5IGZpbGUgYSBtYXRjaGVzID5leHBlY3QgJiYKKwlnaXQgZ3JlcCBpbmEgYSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgZ3JlcCAtYWggaW5hIGEnICcKKwlnaXQgZ3JlcCAtYWggaW5hIGEgPmFjdHVhbCAmJgorCXRlc3RfY21wIGEgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBncmVwIC1JIGluYSBhJyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGdyZXAgLUkgaW5hIGEgPmFjdHVhbCAmJgorCXRlc3RfbXVzdF9iZV9lbXB0eSBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGdyZXAgLWMgaW5hIGEnICcKKwllY2hvIGE6MSA+ZXhwZWN0ICYmCisJZ2l0IGdyZXAgLWMgaW5hIGEgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGdyZXAgLWwgaW5hIGEnICcKKwllY2hvIGEgPmV4cGVjdCAmJgorCWdpdCBncmVwIC1sIGluYSBhID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBncmVwIC1MIGJhciBhJyAnCisJZWNobyBhID5leHBlY3QgJiYKKwlnaXQgZ3JlcCAtTCBiYXIgYSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgZ3JlcCAtcSBpbmEgYScgJworCWdpdCBncmVwIC1xIGluYSBhID5hY3R1YWwgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBncmVwIC1GIGlsZSBhJyAnCisJZ2l0IGdyZXAgLUYgaWxlIGEKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGdyZXAgLUZpIGlMRSBhJyAnCisJZ2l0IGdyZXAgLUZpIGlMRSBhCisnCisKKyMgVGhpcyB0ZXN0IGFjdHVhbGx5IHBhc3NlcyBvbiBwbGF0Zm9ybXMgd2hlcmUgcmVnZXhlYygpIHN1cHBvcnRzIHRoZQorIyBmbGFnIFJFR19TVEFSVEVORC4KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBncmVwIGlsZSBhJyAnCisJZ2l0IGdyZXAgaWxlIGEKKycKKwordGVzdF9leHBlY3RfZmFpbHVyZSAnZ2l0IGdyZXAgLmZpIGEnICcKKwlnaXQgZ3JlcCAuZmkgYQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdncmVwIHJlc3BlY3RzIGJpbmFyeSBkaWZmIGF0dHJpYnV0ZScgJworCWVjaG8gdGV4dCA+dCAmJgorCWdpdCBhZGQgdCAmJgorCWVjaG8gdDp0ZXh0ID5leHBlY3QgJiYKKwlnaXQgZ3JlcCB0ZXh0IHQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKwllY2hvICJ0IC1kaWZmIiA+LmdpdGF0dHJpYnV0ZXMgJiYKKwllY2hvICJCaW5hcnkgZmlsZSB0IG1hdGNoZXMiID5leHBlY3QgJiYKKwlnaXQgZ3JlcCB0ZXh0IHQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ3JlcCAtLWNhY2hlZCByZXNwZWN0cyBiaW5hcnkgZGlmZiBhdHRyaWJ1dGUnICcKKwlnaXQgZ3JlcCAtLWNhY2hlZCB0ZXh0IHQgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ3JlcCAtLWNhY2hlZCByZXNwZWN0cyBiaW5hcnkgZGlmZiBhdHRyaWJ1dGUgKDIpJyAnCisJZ2l0IGFkZCAuZ2l0YXR0cmlidXRlcyAmJgorCXJtIC5naXRhdHRyaWJ1dGVzICYmCisJZ2l0IGdyZXAgLS1jYWNoZWQgdGV4dCB0ID5hY3R1YWwgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCBybSAtLWNhY2hlZCAuZ2l0YXR0cmlidXRlcyIgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCBjaGVja291dCAuZ2l0YXR0cmlidXRlcyIgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dyZXAgcmV2aXNpb24gcmVzcGVjdHMgYmluYXJ5IGRpZmYgYXR0cmlidXRlJyAnCisJZ2l0IGNvbW1pdCAtbSBuZXcgJiYKKwllY2hvICJCaW5hcnkgZmlsZSBIRUFEOnQgbWF0Y2hlcyIgPmV4cGVjdCAmJgorCWdpdCBncmVwIHRleHQgSEVBRCAtLSB0ID5hY3R1YWwgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCBIRUFEXiIgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dyZXAgcmVzcGVjdHMgbm90LWJpbmFyeSBkaWZmIGF0dHJpYnV0ZScgJworCWVjaG8gYmluUWFyeSB8IHFfdG9fbnVsID5iICYmCisJZ2l0IGFkZCBiICYmCisJZWNobyAiQmluYXJ5IGZpbGUgYiBtYXRjaGVzIiA+ZXhwZWN0ICYmCisJZ2l0IGdyZXAgYmluIGIgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKwllY2hvICJiIGRpZmYiID4uZ2l0YXR0cmlidXRlcyAmJgorCWVjaG8gImI6YmluUWFyeSIgPmV4cGVjdCAmJgorCWdpdCBncmVwIGJpbiBiID5hY3R1YWwucmF3ICYmCisJbnVsX3RvX3EgPGFjdHVhbC5yYXcgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKworY2F0ID5udWxfdG9fcV90ZXh0Y29udiA8PCdFT0YnCisjIS9iaW4vc2gKKyIkUEVSTF9QQVRIIiAtcGUgJ3kvXDAwMC9RLycgPCAiJDEiCitFT0YKK2NobW9kICt4IG51bF90b19xX3RleHRjb252CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwIHRleHRjb252IGZpbHRlcnMnICcKKwllY2hvIGEgZGlmZj1mb28gPi5naXRhdHRyaWJ1dGVzICYmCisJZ2l0IGNvbmZpZyBkaWZmLmZvby50ZXh0Y29udiAiXCIkKHB3ZClcIiIvbnVsX3RvX3FfdGV4dGNvbnYKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ3JlcCBkb2VzIG5vdCBob25vciB0ZXh0Y29udicgJworCXRlc3RfbXVzdF9mYWlsIGdpdCBncmVwIFFmaWxlCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dyZXAgLS10ZXh0Y29udiBob25vcnMgdGV4dGNvbnYnICcKKwllY2hvICJhOmJpbmFyeVFmaWxlUW1bKl1jUSrDplHDsCIgPmV4cGVjdCAmJgorCWdpdCBncmVwIC0tdGV4dGNvbnYgUWZpbGUgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ3JlcCAtLW5vLXRleHRjb252IGRvZXMgbm90IGhvbm9yIHRleHRjb252JyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGdyZXAgLS1uby10ZXh0Y29udiBRZmlsZQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdncmVwIC0tdGV4dGNvbnYgYmxvYiBob25vcnMgdGV4dGNvbnYnICcKKwllY2hvICJIRUFEOmE6YmluYXJ5UWZpbGVRbVsqXWNRKsOmUcOwIiA+ZXhwZWN0ICYmCisJZ2l0IGdyZXAgLS10ZXh0Y29udiBRZmlsZSBIRUFEOmEgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q3ODE2LWdyZXAtYmluYXJ5LXBhdHRlcm4uc2ggYi90L3Q3ODE2LWdyZXAtYmluYXJ5LXBhdHRlcm4uc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNjBiYWIyOQotLS0gL2Rldi9udWxsCisrKyBiL3QvdDc4MTYtZ3JlcC1iaW5hcnktcGF0dGVybi5zaApAQCAtMCwwICsxLDEyNyBAQAorIyEvYmluL3NoCisKK3Rlc3RfZGVzY3JpcHRpb249J2dpdCBncmVwIHdpdGggYSBiaW5hcnkgcGF0dGVybiBmaWxlcycKKworLiAuL2xpYi1nZXR0ZXh0LnNoCisKK251bF9tYXRjaF9pbnRlcm5hbCAoKSB7CisJbWF0Y2hlcz0kMQorCXByZXJlcXM9JDIKKwlsY19hbGw9JDMKKwlleHRyYV9mbGFncz0kNAorCWZsYWdzPSQ1CisJcGF0dGVybj0kNgorCXBhdHRlcm5faHVtYW49JChlY2hvICIkcGF0dGVybiIgfCBzZWQgJ3MvUS88TlVMPi9nJykKKworCWlmIHRlc3QgIiRtYXRjaGVzIiA9IDEKKwl0aGVuCisJCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJHByZXJlcXMgIkxDX0FMTD0nJGxjX2FsbCcgZ2l0IGdyZXAgJGV4dHJhX2ZsYWdzIC1mIGYgJGZsYWdzICckcGF0dGVybl9odW1hbicgYSIgIgorCQkJcHJpbnRmICckcGF0dGVybicgfCBxX3RvX251bCA+ZiAmJgorCQkJTENfQUxMPSckbGNfYWxsJyBnaXQgZ3JlcCAkZXh0cmFfZmxhZ3MgLWYgZiAkZmxhZ3MgYQorCQkiCisJZWxpZiB0ZXN0ICIkbWF0Y2hlcyIgPSAwCisJdGhlbgorCQl0ZXN0X2V4cGVjdF9zdWNjZXNzICRwcmVyZXFzICJMQ19BTEw9JyRsY19hbGwnIGdpdCBncmVwICRleHRyYV9mbGFncyAtZiBmICRmbGFncyAnJHBhdHRlcm5faHVtYW4nIGEiICIKKwkJCT5zdGRlcnIgJiYKKwkJCXByaW50ZiAnJHBhdHRlcm4nIHwgcV90b19udWwgPmYgJiYKKwkJCXRlc3RfbXVzdF9mYWlsIGVudiBMQ19BTEw9XCIkbGNfYWxsXCIgZ2l0IGdyZXAgJGV4dHJhX2ZsYWdzIC1mIGYgJGZsYWdzIGEgMj5zdGRlcnIgJiYKKwkJCXRlc3RfaTE4bmdyZXAgISAnVGhpcyBpcyBvbmx5IHN1cHBvcnRlZCB3aXRoIC1QIHVuZGVyIFBDUkUgdjInIHN0ZGVycgorCQkiCisJZWxpZiB0ZXN0ICIkbWF0Y2hlcyIgPSBQCisJdGhlbgorCQl0ZXN0X2V4cGVjdF9zdWNjZXNzICRwcmVyZXFzICJlcnJvciwgUENSRSB2MiBvbmx5OiBMQ19BTEw9JyRsY19hbGwnIGdpdCBncmVwIC1mIGYgJGZsYWdzICckcGF0dGVybl9odW1hbicgYSIgIgorCQkJPnN0ZGVyciAmJgorCQkJcHJpbnRmICckcGF0dGVybicgfCBxX3RvX251bCA+ZiAmJgorCQkJdGVzdF9tdXN0X2ZhaWwgZW52IExDX0FMTD1cIiRsY19hbGxcIiBnaXQgZ3JlcCAtZiBmICRmbGFncyBhIDI+c3RkZXJyICYmCisJCQl0ZXN0X2kxOG5ncmVwICdUaGlzIGlzIG9ubHkgc3VwcG9ydGVkIHdpdGggLVAgdW5kZXIgUENSRSB2Micgc3RkZXJyCisJCSIKKwllbHNlCisJCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgIlBBTklDOiBUZXN0IGZyYW1ld29yayBlcnJvci4gVW5rbm93biBtYXRjaGVzIHZhbHVlICRtYXRjaGVzIiAnZmFsc2UnCisJZmkKK30KKworbnVsX21hdGNoICgpIHsKKwltYXRjaGVzPSQxCisJbWF0Y2hlc19wY3JlMj0kMgorCW1hdGNoZXNfcGNyZTJfbG9jYWxlPSQzCisJZmxhZ3M9JDQKKwlwYXR0ZXJuPSQ1CisJcGF0dGVybl9odW1hbj0kKGVjaG8gIiRwYXR0ZXJuIiB8IHNlZCAncy9RLzxOVUw+L2cnKQorCisJbnVsX21hdGNoX2ludGVybmFsICIkbWF0Y2hlcyIgIiIgIkMiICIiICIkZmxhZ3MiICIkcGF0dGVybiIKKwludWxfbWF0Y2hfaW50ZXJuYWwgIiRtYXRjaGVzX3BjcmUyIiAiTElCUENSRTIiICJDIiAiLVAiICIkZmxhZ3MiICIkcGF0dGVybiIKKwludWxfbWF0Y2hfaW50ZXJuYWwgIiRtYXRjaGVzX3BjcmUyX2xvY2FsZSIgIkxJQlBDUkUyLEdFVFRFWFRfTE9DQUxFIiAiJGlzX0lTX2xvY2FsZSIgIi1QIiAiJGZsYWdzIiAiJHBhdHRlcm4iCit9CisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NldHVwJyAiCisJZWNobyAnYmluYXJ5UWZpbGVRbVsqXWNRKsOmUcOwJyB8IHFfdG9fbnVsID5hICYmCisJZ2l0IGFkZCBhICYmCisJZ2l0IGNvbW1pdCAtbS4KKyIKKworIyBTaW1wbGUgZml4ZWQtc3RyaW5nIG1hdGNoaW5nIHRoYXQgY2FuIHVzZSBrd3NldCAobm8gLWkgJiYgbm9uLUFTQ0lJKQorbnVsX21hdGNoIFAgUCBQICctRicgJ3lRZicKK251bF9tYXRjaCBQIFAgUCAnLUYnICd5UXgnCitudWxfbWF0Y2ggUCBQIFAgJy1GaScgJ1lRZicKK251bF9tYXRjaCBQIFAgUCAnLUZpJyAnWVF4JworbnVsX21hdGNoIFAgUCAxICcnICd5UWYnCitudWxfbWF0Y2ggUCBQIDAgJycgJ3lReCcKK251bF9tYXRjaCBQIFAgMSAnJyAnw6ZRw7AnCitudWxfbWF0Y2ggUCBQIFAgJy1GJyAnZVFtWypdYycKK251bF9tYXRjaCBQIFAgUCAnLUZpJyAnRVFNWypdQycKKworIyBSZWdleCBwYXR0ZXJucyB0aGF0IHdvdWxkIG1hdGNoIGJ1dCBzaG91bGRuJ3Qgd2l0aCAtRgorbnVsX21hdGNoIFAgUCBQICctRicgJ3lRW2ZdJworbnVsX21hdGNoIFAgUCBQICctRicgJ1t5XVFmJworbnVsX21hdGNoIFAgUCBQICctRmknICdZUVtGXScKK251bF9tYXRjaCBQIFAgUCAnLUZpJyAnW1ldUUYnCitudWxfbWF0Y2ggUCBQIFAgJy1GJyAnw6ZRW8OwXScKK251bF9tYXRjaCBQIFAgUCAnLUYnICdbw6ZdUcOwJworCisjIFRoZSAtRiBrd3NldCBjb2RlcGF0aCBjYW4ndCBoYW5kbGUgLWkgJiYgbm9uLUFTQ0lJLi4uCitudWxfbWF0Y2ggUCAxIDEgJy1pJyAnW8OmXVHDsCcKKworIyAuLi5QQ1JFIHYyIG9ubHkgbWF0Y2hlcyBub24tQVNDSUkgd2l0aCAtaSBjYXNlZm9sZGluZyB1bmRlciBVVEYtOAorIyBzZW1hbnRpY3MKK251bF9tYXRjaCBQIFAgUCAnLUZpJyAnw4ZRW8OQXScKK251bF9tYXRjaCBQIDAgMSAnLWknICAnw4ZRW8OQXScKK251bF9tYXRjaCBQIDAgMSAnLWknICAnW8OGXVHDkCcKK251bF9tYXRjaCBQIDAgMSAnLWknICdbw4ZdUcOwJworbnVsX21hdGNoIFAgMCAxICctaScgJ8OGUcOQJworCisjIFwwIGluIHJlZ2V4ZXMgY2FuIG9ubHkgd29yayB3aXRoIC1QICYgUENSRSB2MgorbnVsX21hdGNoIFAgUCAxICcnICd5UVtmXScKK251bF9tYXRjaCBQIFAgMSAnJyAnW3ldUWYnCitudWxfbWF0Y2ggUCBQIDEgJy1pJyAnWVFbRl0nCitudWxfbWF0Y2ggUCBQIDEgJy1pJyAnW1ldUWYnCitudWxfbWF0Y2ggUCBQIDEgJycgJ8OmUVvDsF0nCitudWxfbWF0Y2ggUCBQIDEgJycgJ1vDpl1Rw7AnCitudWxfbWF0Y2ggUCBQIDEgJy1pJyAnw4ZRW8OQXScKK251bF9tYXRjaCBQIFAgMSAnJyAnZVFtLipjUScKK251bF9tYXRjaCBQIFAgMSAnLWknICdFUU0uKmNRJworbnVsX21hdGNoIFAgUCAwICcnICdlUW1bKl1jJworbnVsX21hdGNoIFAgUCAwICctaScgJ0VRTVsqXUMnCisKKyMgQXNzZXJ0IHRoYXQgd2UncmUgdXNpbmcgUkVHX1NUQVJURU5EIGFuZCB0aGUgcGF0dGVybiBkb2Vzbid0IG1hdGNoCisjIGp1c3QgYmVjYXVzZSBpdCdzIGN1dCBvZmYgYXQgdGhlIGZpcnN0IFwwLgorbnVsX21hdGNoIFAgUCAwICctaScgJ05PTUFUQ0hRw7AnCitudWxfbWF0Y2ggUCBQIDAgJy1pJyAnW8OGXVFOT01BVENIJworbnVsX21hdGNoIFAgUCAwICctaScgJ1vDpl1RTk9NQVRDSCcKKworIyBFbnN1cmUgdGhhdCB0aGUgbWF0Y2hlciBkb2Vzbid0IHJlZ3Jlc3MgdG8gc29tZXRoaW5nIHRoYXQgc3RvcHMgYXQKKyMgXDAKK251bF9tYXRjaCBQIFAgUCAnLUYnICd5UVtmXScKK251bF9tYXRjaCBQIFAgUCAnLUZpJyAnWVFbRl0nCitudWxfbWF0Y2ggUCBQIDAgJycgJ3lRTk9NQVRDSCcKK251bF9tYXRjaCBQIFAgMCAnJyAnUU5PTUFUQ0gnCitudWxfbWF0Y2ggUCBQIDAgJy1pJyAnWVFOT01BVENIJworbnVsX21hdGNoIFAgUCAwICctaScgJ1FOT01BVENIJworbnVsX21hdGNoIFAgUCBQICctRicgJ8OmUVvDsF0nCitudWxfbWF0Y2ggUCBQIFAgJy1GaScgJ8OGUVvDkF0nCitudWxfbWF0Y2ggUCBQIDEgJy1pJyAnw4ZRW8OQXScKK251bF9tYXRjaCBQIFAgMCAnJyAneVFOw5NNQVRDSCcKK251bF9tYXRjaCBQIFAgMCAnJyAnUU7Dk01BVENIJworbnVsX21hdGNoIFAgUCAwICctaScgJ1lRTsOTTUFUQ0gnCitudWxfbWF0Y2ggUCBQIDAgJy1pJyAnUU7Dk01BVENIJworCit0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDgwMDMtYmxhbWUtY29ybmVyLWNhc2VzLnNoIGIvdC90ODAwMy1ibGFtZS1jb3JuZXItY2FzZXMuc2gKaW5kZXggYzkyYTQ3Yi4uOTEzMGI4OCAxMDA3NTUKLS0tIGEvdC90ODAwMy1ibGFtZS1jb3JuZXItY2FzZXMuc2gKKysrIGIvdC90ODAwMy1ibGFtZS1jb3JuZXItY2FzZXMuc2gKQEAgLTE3Myw3ICsxNzMsNiBAQAogCWdpdCBzaG93IEhFQURAezF9OnJvZGVudCA+IHJvZGVudCAmJgogCWdpdCBhZGQgcm9kZW50ICYmCiAJZ2l0IGJsYW1lIC1mIC1DIC1DMSByb2RlbnQgfCBzZWQgLWUgIiRwaWNrX2ZjIiA+Y3VycmVudCAmJgotCWNhdCBjdXJyZW50ICYmCiAJY2F0ID5leHBlY3RlZCA8PC1cRU9GICYmCiAJbW91c2UtSW5pdGlhbAogCW1vdXNlLVNlY29uZApAQCAtMjc1LDQgKzI3NCw0MCBAQAogCWdyZXAgIkEgVSBUaG9yIiBhY3R1YWwKICcKIAorIyBUZXN0cyB0aGUgc3BsaXR0aW5nIGFuZCBtZXJnaW5nIG9mIGJsYW1lIGVudHJpZXMgaW4gYmxhbWVfY29hbGVzY2UoKS4KKyMgVGhlIG91dHB1dCBvZiBibGFtZSBpcyB0aGUgc2FtZSwgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIGJsYW1lX2NvYWxlc2NlKCkgcnVucworIyBvciBub3QsIHNvIHdlJ2QgbGlrZWx5IG9ubHkgbm90aWNlIGEgcHJvYmxlbSBpZiBibGFtZSBjcmFzaGVzIG9yIGFzc2lnbmVkCisjIGJsYW1lIHRvIHRoZSAic3BsaXR0aW5nIiBjb21taXQgKCdTUExJVCcgYmVsb3cpLgordGVzdF9leHBlY3Rfc3VjY2VzcyAnYmxhbWUgY29hbGVzY2UnICcKKwljYXQgPmdpcmFmZmUgPDwtXEVPRiAmJgorCUFCQworCURFRgorCUVPRgorCWdpdCBhZGQgZ2lyYWZmZSAmJgorCWdpdCBjb21taXQgLW0gIm9yaWdpbmFsIGZpbGUiICYmCisJb2lkPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCisJY2F0ID5naXJhZmZlIDw8LVxFT0YgJiYKKwlBQkMKKwlTUExJVAorCURFRgorCUVPRgorCWdpdCBhZGQgZ2lyYWZmZSAmJgorCWdpdCBjb21taXQgLW0gImludGVyaW9yIFNQTElUIGxpbmUiICYmCisKKwljYXQgPmdpcmFmZmUgPDwtXEVPRiAmJgorCUFCQworCURFRgorCUVPRgorCWdpdCBhZGQgZ2lyYWZmZSAmJgorCWdpdCBjb21taXQgLW0gInNhbWUgY29udGVudHMgYXMgb3JpZ2luYWwiICYmCisKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwkkb2lkIDEpIEFCQworCSRvaWQgMikgREVGCisJRU9GCisJZ2l0IC1jIGNvcmUuYWJicmV2PTQwIGJsYW1lIC1zIGdpcmFmZmUgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q4MDEzLWJsYW1lLWlnbm9yZS1yZXZzLnNoIGIvdC90ODAxMy1ibGFtZS1pZ25vcmUtcmV2cy5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi4zNmRjMzFlCi0tLSAvZGV2L251bGwKKysrIGIvdC90ODAxMy1ibGFtZS1pZ25vcmUtcmV2cy5zaApAQCAtMCwwICsxLDI3NCBAQAorIyEvYmluL3NoCisKK3Rlc3RfZGVzY3JpcHRpb249J2lnbm9yZSByZXZpc2lvbnMgd2hlbiBibGFtaW5nJworLiAuL3Rlc3QtbGliLnNoCisKKyMgQ3JlYXRlczoKKyMgCUEtLUItLVgKKyMgQSBhZGRlZCBsaW5lIDEgYW5kIEIgYWRkZWQgbGluZSAyLiAgWCBtYWtlcyBjaGFuZ2VzIHRvIHRob3NlIGxpbmVzLiAgU2FuaXR5CisjIGNoZWNrIHRoYXQgWCBpcyBibGFtZWQgZm9yIGJvdGggbGluZXMuCit0ZXN0X2V4cGVjdF9zdWNjZXNzIHNldHVwICcKKwl0ZXN0X2NvbW1pdCBBIGZpbGUgbGluZTEgJiYKKworCWVjaG8gbGluZTIgPj5maWxlICYmCisJZ2l0IGFkZCBmaWxlICYmCisJdGVzdF90aWNrICYmCisJZ2l0IGNvbW1pdCAtbSBCICYmCisJZ2l0IHRhZyBCICYmCisKKwl0ZXN0X3dyaXRlX2xpbmVzIGxpbmUtb25lIGxpbmUtdHdvID5maWxlICYmCisJZ2l0IGFkZCBmaWxlICYmCisJdGVzdF90aWNrICYmCisJZ2l0IGNvbW1pdCAtbSBYICYmCisJZ2l0IHRhZyBYICYmCisKKwlnaXQgYmxhbWUgLS1saW5lLXBvcmNlbGFpbiBmaWxlID5ibGFtZV9yYXcgJiYKKworCWdyZXAgLUUgIl5bMC05YS1mXSsgWzAtOV0rIDEiIGJsYW1lX3JhdyB8IHNlZCAtZSAicy8gLiovLyIgPmFjdHVhbCAmJgorCWdpdCByZXYtcGFyc2UgWCA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJZ3JlcCAtRSAiXlswLTlhLWZdKyBbMC05XSsgMiIgYmxhbWVfcmF3IHwgc2VkIC1lICJzLyAuKi8vIiA+YWN0dWFsICYmCisJZ2l0IHJldi1wYXJzZSBYID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJJworCisjIElnbm9yZSBYLCBtYWtlIHN1cmUgQSBpcyBibGFtZWQgZm9yIGxpbmUgMSBhbmQgQiBmb3IgbGluZSAyLgordGVzdF9leHBlY3Rfc3VjY2VzcyBpZ25vcmVfcmV2X2NoYW5naW5nX2xpbmVzICcKKwlnaXQgYmxhbWUgLS1saW5lLXBvcmNlbGFpbiAtLWlnbm9yZS1yZXYgWCBmaWxlID5ibGFtZV9yYXcgJiYKKworCWdyZXAgLUUgIl5bMC05YS1mXSsgWzAtOV0rIDEiIGJsYW1lX3JhdyB8IHNlZCAtZSAicy8gLiovLyIgPmFjdHVhbCAmJgorCWdpdCByZXYtcGFyc2UgQSA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJZ3JlcCAtRSAiXlswLTlhLWZdKyBbMC05XSsgMiIgYmxhbWVfcmF3IHwgc2VkIC1lICJzLyAuKi8vIiA+YWN0dWFsICYmCisJZ2l0IHJldi1wYXJzZSBCID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJJworCisjIEZvciBpZ25vcmVkIHJldnMgdGhhdCBoYXZlIGFkZGVkICd1bmJsYW1hYmxlJyBsaW5lcywgYXR0cmlidXRlIHRob3NlIHRvIHRoZQorIyBpZ25vcmVkIGNvbW1pdC4KKyMgCUEtLUItLVgtLVkKKyMgV2hlcmUgWSBjaGFuZ2VzIGxpbmVzIDEgYW5kIDIsIGFuZCBhZGRzIGxpbmVzIDMgYW5kIDQuICBUaGUgYWRkZWQgbGluZXMgb3VnaHQKKyMgdG8gaGF2ZSBub3RoaW5nIGluIGNvbW1vbiB3aXRoICJsaW5lLW9uZSIgb3IgImxpbmUtdHdvIiwgdG8ga2VlcCBhbnkKKyMgaGV1cmlzdGljcyBmcm9tIG1hdGNoaW5nIHRoZW0gd2l0aCBhbnkgbGluZXMgaW4gdGhlIHBhcmVudC4KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgaWdub3JlX3Jldl9hZGRpbmdfdW5ibGFtYWJsZV9saW5lcyAnCisJdGVzdF93cml0ZV9saW5lcyBsaW5lLW9uZS1jaGFuZ2UgbGluZS10d28tY2hhbmdlZCB5MyB5NCA+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCXRlc3RfdGljayAmJgorCWdpdCBjb21taXQgLW0gWSAmJgorCWdpdCB0YWcgWSAmJgorCisJZ2l0IHJldi1wYXJzZSBZID5leHBlY3QgJiYKKwlnaXQgYmxhbWUgLS1saW5lLXBvcmNlbGFpbiBmaWxlIC0taWdub3JlLXJldiBZID5ibGFtZV9yYXcgJiYKKworCWdyZXAgLUUgIl5bMC05YS1mXSsgWzAtOV0rIDMiIGJsYW1lX3JhdyB8IHNlZCAtZSAicy8gLiovLyIgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKworCWdyZXAgLUUgIl5bMC05YS1mXSsgWzAtOV0rIDQiIGJsYW1lX3JhdyB8IHNlZCAtZSAicy8gLiovLyIgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwknCisKKyMgSWdub3JlIFggYW5kIFksIGJvdGggaW4gc2VwYXJhdGUgZmlsZXMuICBMaW5lcyAxID09IEEsIDIgPT0gQi4KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgaWdub3JlX3JldnNfZnJvbV9maWxlcyAnCisJZ2l0IHJldi1wYXJzZSBYID5pZ25vcmVfeCAmJgorCWdpdCByZXYtcGFyc2UgWSA+aWdub3JlX3kgJiYKKwlnaXQgYmxhbWUgLS1saW5lLXBvcmNlbGFpbiBmaWxlIC0taWdub3JlLXJldnMtZmlsZSBpZ25vcmVfeCAtLWlnbm9yZS1yZXZzLWZpbGUgaWdub3JlX3kgPmJsYW1lX3JhdyAmJgorCisJZ3JlcCAtRSAiXlswLTlhLWZdKyBbMC05XSsgMSIgYmxhbWVfcmF3IHwgc2VkIC1lICJzLyAuKi8vIiA+YWN0dWFsICYmCisJZ2l0IHJldi1wYXJzZSBBID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwlncmVwIC1FICJeWzAtOWEtZl0rIFswLTldKyAyIiBibGFtZV9yYXcgfCBzZWQgLWUgInMvIC4qLy8iID5hY3R1YWwgJiYKKwlnaXQgcmV2LXBhcnNlIEIgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwknCisKKyMgSWdub3JlIFggZnJvbSB0aGUgY29uZmlnIG9wdGlvbiwgWSBmcm9tIGEgZmlsZS4KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgaWdub3JlX3JldnNfZnJvbV9jb25maWdzX2FuZF9maWxlcyAnCisJZ2l0IGNvbmZpZyAtLWFkZCBibGFtZS5pZ25vcmVSZXZzRmlsZSBpZ25vcmVfeCAmJgorCWdpdCBibGFtZSAtLWxpbmUtcG9yY2VsYWluIGZpbGUgLS1pZ25vcmUtcmV2cy1maWxlIGlnbm9yZV95ID5ibGFtZV9yYXcgJiYKKworCWdyZXAgLUUgIl5bMC05YS1mXSsgWzAtOV0rIDEiIGJsYW1lX3JhdyB8IHNlZCAtZSAicy8gLiovLyIgPmFjdHVhbCAmJgorCWdpdCByZXYtcGFyc2UgQSA+ZXhwZWN0ICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJZ3JlcCAtRSAiXlswLTlhLWZdKyBbMC05XSsgMiIgYmxhbWVfcmF3IHwgc2VkIC1lICJzLyAuKi8vIiA+YWN0dWFsICYmCisJZ2l0IHJldi1wYXJzZSBCID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJJworCisjIE92ZXJyaWRlIGJsYW1lLmlnbm9yZVJldnNGaWxlIChpZ25vcmVfeCkgd2l0aCBhbiBlbXB0eSBzdHJpbmcuICBYIHNob3VsZCBiZQorIyBibGFtZWQgbm93IGZvciBsaW5lcyAxIGFuZCAyLCBzaW5jZSB3ZSBhcmUgbm8gbG9uZ2VyIGlnbm9yaW5nIFguCit0ZXN0X2V4cGVjdF9zdWNjZXNzIG92ZXJyaWRlX2lnbm9yZV9yZXZzX2ZpbGUgJworCWdpdCBibGFtZSAtLWxpbmUtcG9yY2VsYWluIGZpbGUgLS1pZ25vcmUtcmV2cy1maWxlICIiIC0taWdub3JlLXJldnMtZmlsZSBpZ25vcmVfeSA+YmxhbWVfcmF3ICYmCisJZ2l0IHJldi1wYXJzZSBYID5leHBlY3QgJiYKKworCWdyZXAgLUUgIl5bMC05YS1mXSsgWzAtOV0rIDEiIGJsYW1lX3JhdyB8IHNlZCAtZSAicy8gLiovLyIgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwgJiYKKworCWdyZXAgLUUgIl5bMC05YS1mXSsgWzAtOV0rIDIiIGJsYW1lX3JhdyB8IHNlZCAtZSAicy8gLiovLyIgPmFjdHVhbCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwknCit0ZXN0X2V4cGVjdF9zdWNjZXNzIGJhZF9maWxlc19hbmRfcmV2cyAnCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGJsYW1lIGZpbGUgLS1pZ25vcmUtcmV2IE5PUkVWIDI+ZXJyICYmCisJdGVzdF9pMThuZ3JlcCAiY2Fubm90IGZpbmQgcmV2aXNpb24gTk9SRVYgdG8gaWdub3JlIiBlcnIgJiYKKworCXRlc3RfbXVzdF9mYWlsIGdpdCBibGFtZSBmaWxlIC0taWdub3JlLXJldnMtZmlsZSBOT0ZJTEUgMj5lcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJjb3VsZCBub3Qgb3Blbi4qOiBOT0ZJTEUiIGVyciAmJgorCisJZWNobyBOT1JFViA+aWdub3JlX25vcmV2ICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGJsYW1lIGZpbGUgLS1pZ25vcmUtcmV2cy1maWxlIGlnbm9yZV9ub3JldiAyPmVyciAmJgorCXRlc3RfaTE4bmdyZXAgImludmFsaWQgb2JqZWN0IG5hbWU6IE5PUkVWIiBlcnIKKwknCisKKyMgRm9yIGlnbm9yZWQgcmV2cyB0aGF0IGhhdmUgYWRkZWQgJ3VuYmxhbWFibGUnIGxpbmVzLCBtYXJrIHRob3NlIGxpbmVzIHdpdGggYQorIyAnKicKKyMgCUEtLUItLVgtLVkKKyMgTGluZXMgMyBhbmQgNCBhcmUgZnJvbSBZIGFuZCB1bmJsYW1hYmxlLiAgVGhpcyB3YXMgc2V0IHVwIGluCisjIGlnbm9yZV9yZXZfYWRkaW5nX3VuYmxhbWFibGVfbGluZXMuCit0ZXN0X2V4cGVjdF9zdWNjZXNzIG1hcmtfdW5ibGFtYWJsZV9saW5lcyAnCisJZ2l0IGNvbmZpZyAtLWFkZCBibGFtZS5tYXJrVW5ibGFtYWJsZUxpbmVzIHRydWUgJiYKKworCWdpdCBibGFtZSAtLWlnbm9yZS1yZXYgWSBmaWxlID5ibGFtZV9yYXcgJiYKKwllY2hvICIqIiA+ZXhwZWN0ICYmCisKKwlzZWQgLW4gIjNwIiBibGFtZV9yYXcgfCBjdXQgLWMxID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwlzZWQgLW4gIjRwIiBibGFtZV9yYXcgfCBjdXQgLWMxID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJJworCisjIENvbW1pdCBaIHdpbGwgdG91Y2ggdGhlIGZpcnN0IHR3byBsaW5lcy4gIFkgdG91Y2hlZCBhbGwgZm91ci4KKyMgCUEtLUItLVgtLVktLVoKKyMgVGhlIGJsYW1lIG91dHB1dCB3aGVuIGlnbm9yaW5nIFogc2hvdWxkIGJlOgorIyA/WSAuLi4gMSkKKyMgP1kgLi4uIDIpCisjIFkgIC4uLiAzKQorIyBZICAuLi4gNCkKKyMgV2UncmUgY2hlY2tpbmcgb25seSB0aGUgZmlyc3QgY2hhcmFjdGVyCit0ZXN0X2V4cGVjdF9zdWNjZXNzIG1hcmtfaWdub3JlZF9saW5lcyAnCisJZ2l0IGNvbmZpZyAtLWFkZCBibGFtZS5tYXJrSWdub3JlZExpbmVzIHRydWUgJiYKKworCXRlc3Rfd3JpdGVfbGluZXMgbGluZS1vbmUtWiBsaW5lLXR3by1aIHkzIHk0ID5maWxlICYmCisJZ2l0IGFkZCBmaWxlICYmCisJdGVzdF90aWNrICYmCisJZ2l0IGNvbW1pdCAtbSBaICYmCisJZ2l0IHRhZyBaICYmCisKKwlnaXQgYmxhbWUgLS1pZ25vcmUtcmV2IFogZmlsZSA+YmxhbWVfcmF3ICYmCisJZWNobyAiPyIgPmV4cGVjdCAmJgorCisJc2VkIC1uICIxcCIgYmxhbWVfcmF3IHwgY3V0IC1jMSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJc2VkIC1uICIycCIgYmxhbWVfcmF3IHwgY3V0IC1jMSA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbCAmJgorCisJc2VkIC1uICIzcCIgYmxhbWVfcmF3IHwgY3V0IC1jMSA+YWN0dWFsICYmCisJISB0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwlzZWQgLW4gIjRwIiBibGFtZV9yYXcgfCBjdXQgLWMxID5hY3R1YWwgJiYKKwkhIHRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwknCisKKyMgRm9yIGlnbm9yZWQgcmV2cyB0aGF0IGFkZGVkICd1bmJsYW1hYmxlJyBsaW5lcyBhbmQgbW9yZSByZWNlbnQgY29tbWl0cyBjaGFuZ2VkCisjIHRoZSBibGFtYWJsZSBsaW5lcywgbWFyayB0aGUgdW5ibGFtYWJsZSBsaW5lcyB3aXRoIGEKKyMgJyonCisjIAlBLS1CLS1YLS1ZLS1aCisjIExpbmVzIDMgYW5kIDQgYXJlIGZyb20gWSBhbmQgdW5ibGFtYWJsZSwgYXMgc2V0IHVwIGluCisjIGlnbm9yZV9yZXZfYWRkaW5nX3VuYmxhbWFibGVfbGluZXMuICBaIGNoYW5nZWQgbGluZXMgMSBhbmQgMi4KK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgbWFya191bmJsYW1hYmxlX2xpbmVzX2ludGVybWVkaWF0ZSAnCisJZ2l0IGNvbmZpZyAtLWFkZCBibGFtZS5tYXJrVW5ibGFtYWJsZUxpbmVzIHRydWUgJiYKKworCWdpdCBibGFtZSAtLWlnbm9yZS1yZXYgWSBmaWxlID5ibGFtZV9yYXcgMj5zdGRlcnIgJiYKKwllY2hvICIqIiA+ZXhwZWN0ICYmCisKKwlzZWQgLW4gIjNwIiBibGFtZV9yYXcgfCBjdXQgLWMxID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwlzZWQgLW4gIjRwIiBibGFtZV9yYXcgfCBjdXQgLWMxID5hY3R1YWwgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsCisJJworCisjIFRoZSBoZXVyaXN0aWMgY2FsbGVkIGJ5IGd1ZXNzX2xpbmVfYmxhbWVzKCkgdHJpZXMgdG8gZmluZCB0aGUgc2l6ZSBvZiBhCisjIGJsYW1lX2VudHJ5ICdlJyBpbiB0aGUgcGFyZW50J3MgYWRkcmVzcyBzcGFjZS4gIFRob3NlIGNhbGN1bGF0aW9ucyBuZWVkIHRvCisjIGNoZWNrIGZvciBuZWdhdGl2ZSBvciB6ZXJvIHZhbHVlcyBmb3Igd2hlbiBhIGJsYW1lIGVudHJ5IGlzIGNvbXBsZXRlbHkgb3V0c2lkZQorIyB0aGUgd2luZG93IG9mIHRoZSBwYXJlbnQncyB2ZXJzaW9uIG9mIGEgZmlsZS4KKyMKKyMgVGhpcyBoYXBwZW5zIHdoZW4gb25lIGNvbW1pdCBhZGRzIHNldmVyYWwgbGluZXMgKGNvbW1pdCBCIGJlbG93KS4gIEEgbGF0ZXIKKyMgY29tbWl0IChDKSBjaGFuZ2VzIG9uZSBsaW5lIGluIHRoZSBtaWRkbGUgb2YgQidzIGNoYW5nZS4gIENvbW1pdCBDIGdldHMgYmxhbWVkCisjIGZvciBpdHMgY2hhbmdlLCBhbmQgdGhhdCBicmVha3MgdXAgQidzIGNoYW5nZSBpbnRvIG11bHRpcGxlIGJsYW1lIGVudHJpZXMuCisjIFdoZW4gcHJvY2Vzc2luZyBCLCBvbmUgb2YgdGhlIGJsYW1lX2VudHJpZXMgaXMgb3V0c2lkZSBBJ3Mgd2luZG93ICh3aGljaCB3YXMKKyMgemVybyAtIGl0IGhhZCBubyBsaW5lcyBhZGRlZCBvbiBpdHMgc2lkZSBvZiB0aGUgZGlmZikuCisjCisjIEEtLUItLUMsIGlnbm9yZSBCIHRvIHRlc3QgdGhlIGlnbm9yZSBoZXVyaXN0aWMncyBib3VuZGFyeSBjaGVja3MuCit0ZXN0X2V4cGVjdF9zdWNjZXNzIGlnbm9yZWRfY2h1bmtfbmVnYXRpdmVfcGFyZW50X3NpemUgJworCXJtIC1yZiAuZ2l0LyAmJgorCWdpdCBpbml0ICYmCisKKwl0ZXN0X3dyaXRlX2xpbmVzIEwxIEwyIEw3IEw4IEw5ID5maWxlICYmCisJZ2l0IGFkZCBmaWxlICYmCisJdGVzdF90aWNrICYmCisJZ2l0IGNvbW1pdCAtbSBBICYmCisJZ2l0IHRhZyBBICYmCisKKwl0ZXN0X3dyaXRlX2xpbmVzIEwxIEwyIEwzIEw0IEw1IEw2IEw3IEw4IEw5ID5maWxlICYmCisJZ2l0IGFkZCBmaWxlICYmCisJdGVzdF90aWNrICYmCisJZ2l0IGNvbW1pdCAtbSBCICYmCisJZ2l0IHRhZyBCICYmCisKKwl0ZXN0X3dyaXRlX2xpbmVzIEwxIEwyIEwzIEw0IHh4eCBMNiBMNyBMOCBMOSA+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCXRlc3RfdGljayAmJgorCWdpdCBjb21taXQgLW0gQyAmJgorCWdpdCB0YWcgQyAmJgorCisJZ2l0IGJsYW1lIGZpbGUgLS1pZ25vcmUtcmV2IEIgPmJsYW1lX3JhdworCScKKworIyBSZXNldHRpbmcgdGhlIHJlcG8gYW5kIGNyZWF0aW5nOgorIworIyBBLS1CLS1NCisjICBcICAgLworIyAgIEMtKworIworIyAnQScgY3JlYXRlcyBhIGZpbGUuICBCIGNoYW5nZXMgbGluZSAxLCBhbmQgQyBjaGFuZ2VzIGxpbmUgOS4gIE0gbWVyZ2VzLgordGVzdF9leHBlY3Rfc3VjY2VzcyBpZ25vcmVfbWVyZ2UgJworCXJtIC1yZiAuZ2l0LyAmJgorCWdpdCBpbml0ICYmCisKKwl0ZXN0X3dyaXRlX2xpbmVzIEwxIEwyIEwzIEw0IEw1IEw2IEw3IEw4IEw5ID5maWxlICYmCisJZ2l0IGFkZCBmaWxlICYmCisJdGVzdF90aWNrICYmCisJZ2l0IGNvbW1pdCAtbSBBICYmCisJZ2l0IHRhZyBBICYmCisKKwl0ZXN0X3dyaXRlX2xpbmVzIEJCIEwyIEwzIEw0IEw1IEw2IEw3IEw4IEw5ID5maWxlICYmCisJZ2l0IGFkZCBmaWxlICYmCisJdGVzdF90aWNrICYmCisJZ2l0IGNvbW1pdCAtbSBCICYmCisJZ2l0IHRhZyBCICYmCisKKwlnaXQgcmVzZXQgLS1oYXJkIEEgJiYKKwl0ZXN0X3dyaXRlX2xpbmVzIEwxIEwyIEwzIEw0IEw1IEw2IEw3IEw4IENDID5maWxlICYmCisJZ2l0IGFkZCBmaWxlICYmCisJdGVzdF90aWNrICYmCisJZ2l0IGNvbW1pdCAtbSBDICYmCisJZ2l0IHRhZyBDICYmCisKKwl0ZXN0X21lcmdlIE0gQiAmJgorCWdpdCBibGFtZSAtLWxpbmUtcG9yY2VsYWluIGZpbGUgLS1pZ25vcmUtcmV2IE0gPmJsYW1lX3JhdyAmJgorCisJZ3JlcCAtRSAiXlswLTlhLWZdKyBbMC05XSsgMSIgYmxhbWVfcmF3IHwgc2VkIC1lICJzLyAuKi8vIiA+YWN0dWFsICYmCisJZ2l0IHJldi1wYXJzZSBCID5leHBlY3QgJiYKKwl0ZXN0X2NtcCBleHBlY3QgYWN0dWFsICYmCisKKwlncmVwIC1FICJeWzAtOWEtZl0rIFswLTldKyA5IiBibGFtZV9yYXcgfCBzZWQgLWUgInMvIC4qLy8iID5hY3R1YWwgJiYKKwlnaXQgcmV2LXBhcnNlIEMgPmV4cGVjdCAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKwknCisKK3Rlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90ODAxNC1ibGFtZS1pZ25vcmUtZnV6enkuc2ggYi90L3Q4MDE0LWJsYW1lLWlnbm9yZS1mdXp6eS5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi42ZTYxODgyCi0tLSAvZGV2L251bGwKKysrIGIvdC90ODAxNC1ibGFtZS1pZ25vcmUtZnV6enkuc2gKQEAgLTAsMCArMSw0MzcgQEAKKyMhL2Jpbi9zaAorCit0ZXN0X2Rlc2NyaXB0aW9uPSdnaXQgYmxhbWUgaWdub3JlIGZ1enp5IGhldXJpc3RpYycKKy4gLi90ZXN0LWxpYi5zaAorCitwaWNrX2F1dGhvcj0ncy9eWzAtOWEtZl5dKiAqKFwoW14gXSpcKSAuKi9cMS8nCisKKyMgRWFjaCB0ZXN0IGlzIGNvbXBvc2VkIG9mIDQgdmFyaWFibGVzOgorIyB0aXRsZU4gLSB0aGUgdGVzdCBuYW1lCisjIGFOIC0gdGhlIGluaXRpYWwgY29udGVudAorIyBiTiAtIHRoZSBmaW5hbCBjb250ZW50CisjIGV4cGVjdGVkTiAtIHRoZSBsaW5lIG51bWJlcnMgZnJvbSBhTiB0aGF0IHdlIGV4cGVjdCBnaXQgYmxhbWUKKyMgICAgICAgICAgICAgb24gYk4gdG8gaWRlbnRpZnksIG9yICJGaW5hbCIgaWYgYk4gaXRzZWxmIHNob3VsZAorIyAgICAgICAgICAgICBiZSBpZGVudGlmaWVkIGFzIHRoZSBvcmlnaW4gb2YgdGhhdCBsaW5lLgorCisjIFdlIHN0YXJ0IGF0IHRlc3QgMiBiZWNhdXNlIHNldHVwIHdpbGwgc2hvdyBhcyB0ZXN0IDEKK3RpdGxlMj0iUmVncmVzc2lvbiB0ZXN0IGZvciBwYXJ0aWFsbHkgb3ZlcmxhcHBpbmcgc2VhcmNoIHJhbmdlcyIKK2NhdCA8PEVPRiA+YTIKKzEKKzIKKzMKK2FiY2RlZgorNQorNgorNworaWprbAorOQorMTAKKzExCitwcXJzCisxMworMTQKKzE1Cit3eHl6CisxNworMTgKKzE5CitFT0YKK2NhdCA8PEVPRiA+YjIKK2FiY2RlCitpamsKK3Bxcgord3h5CitFT0YKK2NhdCA8PEVPRiA+ZXhwZWN0ZWQyCis0Cis4CisxMgorMTYKK0VPRgorCit0aXRsZTM9IkNvbWJpbmUgMyBsaW5lcyBpbnRvIDIiCitjYXQgPDxFT0YgPmEzCitpZiAoKG1heGdyb3c9PTApIHx8CisJKCBzaW5nbGVfbGluZV9maWVsZCAmJiAoZmllbGQtPmRjb2xzIDwgbWF4Z3JvdykpIHx8CisJKCFzaW5nbGVfbGluZV9maWVsZCAmJiAoZmllbGQtPmRyb3dzIDwgbWF4Z3JvdykpKQorRU9GCitjYXQgPDxFT0YgPmIzCitpZiAoKG1heGdyb3cgPT0gMCkgfHwgKHNpbmdsZV9saW5lX2ZpZWxkICYmIChmaWVsZC0+ZGNvbHMgPCBtYXhncm93KSkgfHwKKwkoIXNpbmdsZV9saW5lX2ZpZWxkICYmIChmaWVsZC0+ZHJvd3MgPCBtYXhncm93KSkpIHsKK0VPRgorY2F0IDw8RU9GID5leHBlY3RlZDMKKzIKKzMKK0VPRgorCit0aXRsZTQ9IkFkZCBjdXJseSBicmFja2V0cyIKK2NhdCA8PEVPRiA+YTQKKwlpZiAocm93cykgKnJvd3MgPSBmaWVsZC0+cm93czsKKwlpZiAoY29scykgKmNvbHMgPSBmaWVsZC0+Y29sczsKKwlpZiAoZnJvdykgKmZyb3cgPSBmaWVsZC0+ZnJvdzsKKwlpZiAoZmNvbCkgKmZjb2wgPSBmaWVsZC0+ZmNvbDsKK0VPRgorY2F0IDw8RU9GID5iNAorCWlmIChyb3dzKSB7CisJCSpyb3dzID0gZmllbGQtPnJvd3M7CisJfQorCWlmIChjb2xzKSB7CisJCSpjb2xzID0gZmllbGQtPmNvbHM7CisJfQorCWlmIChmcm93KSB7CisJCSpmcm93ID0gZmllbGQtPmZyb3c7CisJfQorCWlmIChmY29sKSB7CisJCSpmY29sID0gZmllbGQtPmZjb2w7CisJfQorRU9GCitjYXQgPDxFT0YgPmV4cGVjdGVkNAorMQorMQorRmluYWwKKzIKKzIKK0ZpbmFsCiszCiszCitGaW5hbAorNAorNAorRmluYWwKK0VPRgorCisKK3RpdGxlNT0iQ29tYmluZSBtYW55IGxpbmVzIGFuZCBjaGFuZ2UgY2FzZSIKK2NhdCA8PEVPRiA+YTUKK2Zvcihyb3c9MCxwQnVmZmVyPWZpZWxkLT5idWY7CisJcm93PGhlaWdodDsKKwlyb3crKyxwQnVmZmVyKz13aWR0aCApCit7CisJaWYgKChsZW4gPSAoaW50KSggQWZ0ZXJfRW5kX09mX0RhdGEoIHBCdWZmZXIsIHdpZHRoICkgLSBwQnVmZmVyICkpID4gMCkKKwl7CisJCXdtb3ZlKCB3aW4sIHJvdywgMCApOworCQl3YWRkbnN0ciggd2luLCBwQnVmZmVyLCBsZW4gKTsKK0VPRgorY2F0IDw8RU9GID5iNQorZm9yIChSb3cgPSAwLCBQQnVmZmVyID0gZmllbGQtPmJ1ZjsgUm93IDwgSGVpZ2h0OyBSb3crKywgUEJ1ZmZlciArPSBXaWR0aCkgeworCWlmICgoTGVuID0gKGludCkoYWZ0ZXJFbmRPZkRhdGEoUEJ1ZmZlciwgV2lkdGgpIC0gUEJ1ZmZlcikpID4gMCkgeworCQl3bW92ZSh3aW4sIFJvdywgMCk7CisJCXdhZGRuc3RyKHdpbiwgUEJ1ZmZlciwgTGVuKTsKK0VPRgorY2F0IDw8RU9GID5leHBlY3RlZDUKKzEKKzUKKzcKKzgKK0VPRgorCit0aXRsZTY9IlJlbmFtZSBhbmQgY29tYmluZSBsaW5lcyIKK2NhdCA8PEVPRiA+YTYKK2Jvb2wgbmVlZF92aXN1YWxfdXBkYXRlID0gKChmb3JtICE9IChGT1JNICopMCkgICAgICAmJgorCShmb3JtLT5zdGF0dXMgJiBfUE9TVEVEKSAmJgorCShmb3JtLT5jdXJyZW50PT1maWVsZCkpOworCitpZiAobmVlZF92aXN1YWxfdXBkYXRlKQorCVN5bmNocm9uaXplX0J1ZmZlcihmb3JtKTsKKworaWYgKHNpbmdsZV9saW5lX2ZpZWxkKQoreworCWdyb3d0aCA9IGZpZWxkLT5jb2xzICogYW1vdW50OworCWlmIChmaWVsZC0+bWF4Z3JvdykKKwkJZ3Jvd3RoID0gTWluaW11bShmaWVsZC0+bWF4Z3JvdyAtIGZpZWxkLT5kY29scyxncm93dGgpOworCWZpZWxkLT5kY29scyArPSBncm93dGg7CisJaWYgKGZpZWxkLT5kY29scyA9PSBmaWVsZC0+bWF4Z3JvdykKK0VPRgorY2F0IDw8RU9GID5iNgorYm9vbCBOZWVkVmlzdWFsVXBkYXRlID0gKChGb3JtICE9IChGT1JNICopMCkgJiYgKEZvcm0tPnN0YXR1cyAmIF9QT1NURUQpICYmCisJKEZvcm0tPmN1cnJlbnQgPT0gZmllbGQpKTsKKworaWYgKE5lZWRWaXN1YWxVcGRhdGUpIHsKKwlzeW5jaHJvbml6ZUJ1ZmZlcihGb3JtKTsKK30KKworaWYgKFNpbmdsZUxpbmVGaWVsZCkgeworCUdyb3d0aCA9IGZpZWxkLT5jb2xzICogYW1vdW50OworCWlmIChmaWVsZC0+bWF4Z3JvdykgeworCQlHcm93dGggPSBNaW5pbXVtKGZpZWxkLT5tYXhncm93IC0gZmllbGQtPmRjb2xzLCBHcm93dGgpOworCX0KKwlmaWVsZC0+ZGNvbHMgKz0gR3Jvd3RoOworCWlmIChmaWVsZC0+ZGNvbHMgPT0gZmllbGQtPm1heGdyb3cpIHsKK0VPRgorY2F0IDw8RU9GID5leHBlY3RlZDYKKzEKKzMKKzQKKzUKKzYKK0ZpbmFsCis3Cis4CisxMAorMTEKKzEyCitGaW5hbAorMTMKKzE0CitFT0YKKworIyBCb3RoIGxpbmVzIG1hdGNoIGlkZW50aWNhbGx5IHNvIHBvc2l0aW9uIG11c3QgYmUgdXNlZCB0byB0aWUtYnJlYWsuCit0aXRsZTc9IlNhbWUgbGluZSB0d2ljZSIKK2NhdCA8PEVPRiA+YTcKK2FiYworYWJjCitFT0YKK2NhdCA8PEVPRiA+YjcKK2FiY2QKK2FiY2QKK0VPRgorY2F0IDw8RU9GID5leHBlY3RlZDcKKzEKKzIKK0VPRgorCit0aXRsZTg9IkVuZm9yY2UgbGluZSBvcmRlciIKK2NhdCA8PEVPRiA+YTgKK2FiY2RlZgorZ2hpamtsCithYgorRU9GCitjYXQgPDxFT0YgPmI4CitnaGlqaworYWJjZAorRU9GCitjYXQgPDxFT0YgPmV4cGVjdGVkOAorMgorMworRU9GCisKK3RpdGxlOT0iRXhwYW5kIGxpbmVzIGFuZCByZW5hbWUgdmFyaWFibGVzIgorY2F0IDw8RU9GID5hOQoraW50IG15RnVuY3Rpb24oaW50IEFyZ3VtZW50T25lLCBUaGluZyAqQXJnVHdvLCBCbGFoIFh1Z2x5QnVnKSB7CisJU3F1aWdnbGUgRmFidWxvdXNSZXN1bHQgPSBzcXVhcmdsZShBcmd1bWVudE9uZSwgKkFyZ1R3bywKKwkJWHVnbHlCdWcpICsgRXd3d0dsb2JhbFdpdGhBUmVhbGx5TG9uZ05hbWVZZXBUb29Mb25nOworCXJldHVybiBGYWJ1bG91c1Jlc3VsdCAqIDQyOworfQorRU9GCitjYXQgPDxFT0YgPmI5CitpbnQgbXlGdW5jdGlvbihpbnQgYXJndW1lbnRfb25lLCBUaGluZyAqYXJnX2FzZGZnaCwKKwlCbGFoIHh1Z2x5X2J1ZykgeworCVNxdWlnZ2xlIGZhYnVsb3VzX3Jlc3VsdCA9IHNxdWFyZ2xlKGFyZ3VtZW50X29uZSwKKwkJKmFyZ19hc2RmZ2gsIHh1Z2x5X2J1ZykKKwkJKyBnX2V3d3dfZ2xvYmFsX3dpdGhfYV9yZWFsbHlfbG9uZ19uYW1lX3llcF90b29fbG9uZzsKKwlyZXR1cm4gZmFidWxvdXNfcmVzdWx0ICogNDI7Cit9CitFT0YKK2NhdCA8PEVPRiA+ZXhwZWN0ZWQ5CisxCisxCisyCiszCiszCis0Cis1CitFT0YKKwordGl0bGUxMD0iVHdvIGNsb3NlIG1hdGNoZXMgdmVyc3VzIG9uZSBsZXNzIGNsb3NlIG1hdGNoIgorY2F0IDw8RU9GID5hMTAKK2FiY2RlZgorYWJjZGVmCitnaGlqa2wKK0VPRgorY2F0IDw8RU9GID5iMTAKK2doCithYmNkZWZ4CitFT0YKK2NhdCA8PEVPRiA+ZXhwZWN0ZWQxMAorRmluYWwKKzIKK0VPRgorCisjIFRoZSBmaXJzdCBsaW5lIG9mIGIgbWF0Y2hlcyBiZXN0IHdpdGggdGhlIGxhc3QgbGluZSBvZiBhLCBidXQgdGhlIG92ZXJhbGwKKyMgbWF0Y2ggaXMgYmV0dGVyIGlmIHdlIG1hdGNoIGl0IHdpdGggdGhlIHRoZSBmaXJzdCBsaW5lIG9mIGEuCit0aXRsZTExPSJQaWdneSBpbiB0aGUgbWlkZGxlIgorY2F0IDw8RU9GID5hMTEKK2FiY2RlZmcKK2lqa2xtbgorYWJjZGVmZ2gKK0VPRgorY2F0IDw8RU9GID5iMTEKK2FiY2RlZmdoeAoraWprbG0KK0VPRgorY2F0IDw8RU9GID5leHBlY3RlZDExCisxCisyCitFT0YKKwordGl0bGUxMj0iTm8gdHJhaWxpbmcgbmV3bGluZSIKK3ByaW50ZiAiYWJjXG5kZWYiID5hMTIKK3ByaW50ZiAiYWJ4XG5zdHUiID5iMTIKK2NhdCA8PEVPRiA+ZXhwZWN0ZWQxMgorMQorRmluYWwKK0VPRgorCit0aXRsZTEzPSJSZW9yZGVyIGluY2x1ZGVzIgorY2F0IDw8RU9GID5hMTMKKyNpbmNsdWRlICJjLmgiCisjaW5jbHVkZSAiYi5oIgorI2luY2x1ZGUgImEuaCIKKyNpbmNsdWRlICJlLmgiCisjaW5jbHVkZSAiZC5oIgorRU9GCitjYXQgPDxFT0YgPmIxMworI2luY2x1ZGUgImEuaCIKKyNpbmNsdWRlICJiLmgiCisjaW5jbHVkZSAiYy5oIgorI2luY2x1ZGUgImQuaCIKKyNpbmNsdWRlICJlLmgiCitFT0YKK2NhdCA8PEVPRiA+ZXhwZWN0ZWQxMworMworMgorMQorNQorNAorRU9GCisKK2xhc3RfdGVzdD0xMworCit0ZXN0X2V4cGVjdF9zdWNjZXNzIHNldHVwICcKKwlmb3IgaSBpbiAkKHRlc3Rfc2VxIDIgJGxhc3RfdGVzdCkKKwlkbworCQkjIEFwcGVuZCBlYWNoIGxpbmUgaW4gYSBzZXBhcmF0ZSBjb21taXQgdG8gbWFrZSBpdCBlYXN5IHRvCisJCSMgY2hlY2sgd2hpY2ggb3JpZ2luYWwgbGluZSB0aGUgYmxhbWUgb3V0cHV0IHJlbGF0ZXMgdG8uCisKKwkJbGluZV9jb3VudD0wICYmCisJCXdoaWxlIElGUz0gcmVhZCBsaW5lCisJCWRvCisJCQlsaW5lX2NvdW50PSQoKGxpbmVfY291bnQrMSkpICYmCisJCQllY2hvICIkbGluZSIgPj4iJGkiICYmCisJCQlnaXQgYWRkICIkaSIgJiYKKwkJCXRlc3RfdGljayAmJgorCQkJR0lUX0FVVEhPUl9OQU1FPSIkbGluZV9jb3VudCIgZ2l0IGNvbW1pdCAtbSAiJGxpbmVfY291bnQiCisJCWRvbmUgPCJhJGkiCisJZG9uZSAmJgorCisJZm9yIGkgaW4gJCh0ZXN0X3NlcSAyICRsYXN0X3Rlc3QpCisJZG8KKwkJIyBPdmVyd3JpdGUgdGhlIGZpbGVzIHdpdGggdGhlIGZpbmFsIGNvbnRlbnQuCisJCWNwIGIkaSAkaSAmJgorCQlnaXQgYWRkICRpCisJZG9uZSAmJgorCXRlc3RfdGljayAmJgorCisJIyBDb21taXQgdGhlIGZpbmFsIGNvbnRlbnQgYWxsIGF0IG9uY2Ugc28gaXQgY2FuIGFsbCBiZQorCSMgcmVmZXJyZWQgdG8gd2l0aCB0aGUgc2FtZSBjb21taXQgSUQuCisJR0lUX0FVVEhPUl9OQU1FPUZpbmFsIGdpdCBjb21taXQgLW0gRmluYWwgJiYKKworCUlHTk9SRU1FPSQoZ2l0IHJldi1wYXJzZSBIRUFEKQorJworCitmb3IgaSBpbiAkKHRlc3Rfc2VxIDIgJGxhc3RfdGVzdCk7IGRvCisJZXZhbCB0aXRsZT0iXCR0aXRsZSRpIgorCXRlc3RfZXhwZWN0X3N1Y2Nlc3MgIiR0aXRsZSIgXAorCSJnaXQgYmxhbWUgLU05IC0taWdub3JlLXJldiAkSUdOT1JFTUUgJGkgPm91dHB1dCAmJgorCXNlZCAtZSBcIiRwaWNrX2F1dGhvclwiIG91dHB1dCA+YWN0dWFsICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQkaSBhY3R1YWwiCitkb25lCisKKyMgVGhpcyBpbnZva2VkIGEgbnVsbCBwb2ludGVyIGRlcmVmZXJlbmNlIHdoZW4gdGhlIGNodW5rIGNhbGxiYWNrIHdhcyBjYWxsZWQKKyMgd2l0aCBhIHplcm8gbGVuZ3RoIHBhcmVudCBjaHVuayBhbmQgdGhlcmUgd2VyZSBubyBtb3JlIHN1c3BlY3RzLgordGVzdF9leHBlY3Rfc3VjY2VzcyAnRGlmZiBjaHVua3Mgd2l0aCBubyBzdXNwZWN0cycgJworCXRlc3Rfd3JpdGVfbGluZXMgeHkxIEEgQiBDIHh5MSA+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCXRlc3RfdGljayAmJgorCUdJVF9BVVRIT1JfTkFNRT0xIGdpdCBjb21taXQgLW0gMSAmJgorCisJdGVzdF93cml0ZV9saW5lcyB4eTIgQSBCIHh5MiBDIHh5MiA+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCXRlc3RfdGljayAmJgorCUdJVF9BVVRIT1JfTkFNRT0yIGdpdCBjb21taXQgLW0gMiAmJgorCVJFVl8yPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCisJdGVzdF93cml0ZV9saW5lcyB4eTMgQSA+ZmlsZSAmJgorCWdpdCBhZGQgZmlsZSAmJgorCXRlc3RfdGljayAmJgorCUdJVF9BVVRIT1JfTkFNRT0zIGdpdCBjb21taXQgLW0gMyAmJgorCVJFVl8zPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCisJdGVzdF93cml0ZV9saW5lcyAxIDEgPmV4cGVjdGVkICYmCisKKwlnaXQgYmxhbWUgLS1pZ25vcmUtcmV2ICRSRVZfMiAtLWlnbm9yZS1yZXYgJFJFVl8zIGZpbGUgPm91dHB1dCAmJgorCXNlZCAtZSAiJHBpY2tfYXV0aG9yIiBvdXRwdXQgPmFjdHVhbCAmJgorCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwb3NpdGlvbiBtYXRjaGluZycgJworCXRlc3Rfd3JpdGVfbGluZXMgYWJjIGRlZiA+ZmlsZTIgJiYKKwlnaXQgYWRkIGZpbGUyICYmCisJdGVzdF90aWNrICYmCisJR0lUX0FVVEhPUl9OQU1FPTEgZ2l0IGNvbW1pdCAtbSAxICYmCisKKwl0ZXN0X3dyaXRlX2xpbmVzIGFiYyBkZWYgYWJjIGRlZiA+ZmlsZTIgJiYKKwlnaXQgYWRkIGZpbGUyICYmCisJdGVzdF90aWNrICYmCisJR0lUX0FVVEhPUl9OQU1FPTIgZ2l0IGNvbW1pdCAtbSAyICYmCisKKwl0ZXN0X3dyaXRlX2xpbmVzIGFiY3ggZGVmeCBhYmN4IGRlZnggPmZpbGUyICYmCisJZ2l0IGFkZCBmaWxlMiAmJgorCXRlc3RfdGljayAmJgorCUdJVF9BVVRIT1JfTkFNRT0zIGdpdCBjb21taXQgLW0gMyAmJgorCVJFVl8zPSQoZ2l0IHJldi1wYXJzZSBIRUFEKSAmJgorCisJdGVzdF93cml0ZV9saW5lcyBhYmN5IGRlZnkgYWJjeCBkZWZ4ID5maWxlMiAmJgorCWdpdCBhZGQgZmlsZTIgJiYKKwl0ZXN0X3RpY2sgJiYKKwlHSVRfQVVUSE9SX05BTUU9NCBnaXQgY29tbWl0IC1tIDQgJiYKKwlSRVZfND0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKworCXRlc3Rfd3JpdGVfbGluZXMgMSAxIDIgMiA+ZXhwZWN0ZWQgJiYKKworCWdpdCBibGFtZSAtLWlnbm9yZS1yZXYgJFJFVl8zIC0taWdub3JlLXJldiAkUkVWXzQgZmlsZTIgPm91dHB1dCAmJgorCXNlZCAtZSAiJHBpY2tfYXV0aG9yIiBvdXRwdXQgPmFjdHVhbCAmJgorCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJJworCisjIFRoaXMgZmFpbHMgaWYgZWFjaCBibGFtZSBlbnRyeSBpcyBwcm9jZXNzZWQgaW5kZXBlbmRlbnRseSBpbnN0ZWFkIG9mCisjIHByb2Nlc3NpbmcgZWFjaCBkaWZmIGNoYW5nZSBpbiBmdWxsLgordGVzdF9leHBlY3Rfc3VjY2VzcyAncHJlc2VydmUgb3JkZXInICcKKwl0ZXN0X3dyaXRlX2xpbmVzIGJjZGUgPmZpbGUzICYmCisJZ2l0IGFkZCBmaWxlMyAmJgorCXRlc3RfdGljayAmJgorCUdJVF9BVVRIT1JfTkFNRT0xIGdpdCBjb21taXQgLW0gMSAmJgorCisJdGVzdF93cml0ZV9saW5lcyBiY2RlIGZnaGlqID5maWxlMyAmJgorCWdpdCBhZGQgZmlsZTMgJiYKKwl0ZXN0X3RpY2sgJiYKKwlHSVRfQVVUSE9SX05BTUU9MiBnaXQgY29tbWl0IC1tIDIgJiYKKworCXRlc3Rfd3JpdGVfbGluZXMgYmNkZSBmZ2hpaiBhYmNkID5maWxlMyAmJgorCWdpdCBhZGQgZmlsZTMgJiYKKwl0ZXN0X3RpY2sgJiYKKwlHSVRfQVVUSE9SX05BTUU9MyBnaXQgY29tbWl0IC1tIDMgJiYKKworCXRlc3Rfd3JpdGVfbGluZXMgYWJjZHggZmdoaWp4IGJjZGV4ID5maWxlMyAmJgorCWdpdCBhZGQgZmlsZTMgJiYKKwl0ZXN0X3RpY2sgJiYKKwlHSVRfQVVUSE9SX05BTUU9NCBnaXQgY29tbWl0IC1tIDQgJiYKKwlSRVZfND0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKworCXRlc3Rfd3JpdGVfbGluZXMgYWJjZHggZmdoaWp5IGJjZGV4ID5maWxlMyAmJgorCWdpdCBhZGQgZmlsZTMgJiYKKwl0ZXN0X3RpY2sgJiYKKwlHSVRfQVVUSE9SX05BTUU9NSBnaXQgY29tbWl0IC1tIDUgJiYKKwlSRVZfNT0kKGdpdCByZXYtcGFyc2UgSEVBRCkgJiYKKworCXRlc3Rfd3JpdGVfbGluZXMgMSAyIDMgPmV4cGVjdGVkICYmCisKKwlnaXQgYmxhbWUgLS1pZ25vcmUtcmV2ICRSRVZfNCAtLWlnbm9yZS1yZXYgJFJFVl81IGZpbGUzID5vdXRwdXQgJiYKKwlzZWQgLWUgIiRwaWNrX2F1dGhvciIgb3V0cHV0ID5hY3R1YWwgJiYKKworCXRlc3RfY21wIGV4cGVjdGVkIGFjdHVhbAorCScKKwordGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q5MDAxLXNlbmQtZW1haWwuc2ggYi90L3Q5MDAxLXNlbmQtZW1haWwuc2gKaW5kZXggZWUxZWZjYy4uOTBmNjFjMyAxMDA3NTUKLS0tIGEvdC90OTAwMS1zZW5kLWVtYWlsLnNoCisrKyBiL3QvdDkwMDEtc2VuZC1lbWFpbC5zaApAQCAtNDgxLDYgKzQ4MSwyMCBAQAogCWdyZXAgIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmludGFibGUiIG1zZ3R4dDEKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAkUFJFUkVRICdjYXJyaWFnZSByZXR1cm5zIHdpdGggYXV0byBlbmNvZGluZyBhcmUgcXVvdGVkLXByaW50YWJsZScgJworCWNsZWFuX2Zha2Vfc2VuZG1haWwgJiYKKwljcCAkcGF0Y2hlcyBjci5wYXRjaCAmJgorCXByaW50ZiAidGhpcyBpcyBhIGxpbmVcclxuIiA+PmNyLnBhdGNoICYmCisJZ2l0IHNlbmQtZW1haWwgXAorCQktLWZyb209IkV4YW1wbGUgPG5vYm9keUBleGFtcGxlLmNvbT4iIFwKKwkJLS10bz1ub2JvZHlAZXhhbXBsZS5jb20gXAorCQktLXNtdHAtc2VydmVyPSIkKHB3ZCkvZmFrZS5zZW5kbWFpbCIgXAorCQktLXRyYW5zZmVyLWVuY29kaW5nPWF1dG8gXAorCQktLW5vLXZhbGlkYXRlIFwKKwkJY3IucGF0Y2ggJiYKKwlncmVwICJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBxdW90ZWQtcHJpbnRhYmxlIiBtc2d0eHQxCisnCisKIGZvciBlbmMgaW4gYXV0byBxdW90ZWQtcHJpbnRhYmxlIGJhc2U2NAogZG8KIAl0ZXN0X2V4cGVjdF9zdWNjZXNzICRQUkVSRVEgIi0tdmFsaWRhdGUgcGFzc2VzIHdpdGggZW5jb2RpbmcgJGVuYyIgJwpAQCAtMTE4MCw4ICsxMTk0LDggQEAKIAkJLS10bz1ub2JvZHlAZXhhbXBsZS5jb20gXAogCQktLWluLXJlcGx5LXRvPSI8aW4tcmVwbHktaWRAZXhhbXBsZS5jb20+IiBcCiAJCS0tbm8tdGhyZWFkIFwKLQkJJHBhdGNoZXMgfAotCWdyZXAgIkluLVJlcGx5LVRvOiA8aW4tcmVwbHktaWRAZXhhbXBsZS5jb20+IgorCQkkcGF0Y2hlcyA+b3V0ICYmCisJZ3JlcCAiSW4tUmVwbHktVG86IDxpbi1yZXBseS1pZEBleGFtcGxlLmNvbT4iIG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICRQUkVSRVEgJ25vIGluLXJlcGx5LXRvIGFuZCBubyB0aHJlYWRpbmcnICcKQEAgLTExOTAsNyArMTIwNCw3IEBACiAJCS0tZnJvbT0iRXhhbXBsZSA8bm9ib2R5QGV4YW1wbGUuY29tPiIgXAogCQktLXRvPW5vYm9keUBleGFtcGxlLmNvbSBcCiAJCS0tbm8tdGhyZWFkIFwKLQkJJHBhdGNoZXMgJHBhdGNoZXMgPnN0ZG91dCAmJgorCQkkcGF0Y2hlcyA+c3Rkb3V0ICYmCiAJISBncmVwICJJbi1SZXBseS1UbzogIiBzdGRvdXQKICcKIApAQCAtMTIxMCwxNyArMTIyNCw3MiBAQAogCWdpdCBzZW5kLWVtYWlsIFwKIAkJLS1kcnktcnVuIFwKIAkJLS1mcm9tPSJFeGFtcGxlIDxub2JvZHlAZXhhbXBsZS5jb20+IiBcCi0JCSRwYXRjaGVzICRwYXRjaGVzID5zdGRvdXQgJiYKKwkJJHBhdGNoZXMgPnN0ZG91dCAmJgogCWdyZXAgIlRvOiBTb21lYm9keSA8c29tZWJvZHlAZXguY29tPiIgc3Rkb3V0CiAnCiAKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJFBSRVJFUSAnc2V0dXAgc2VuZGVtYWlsLmlkZW50aXR5JyAnCisJZ2l0IGNvbmZpZyAtLXJlcGxhY2UtYWxsIHNlbmRlbWFpbC50byAiZGVmYXVsdEBleGFtcGxlLmNvbSIgJiYKKwlnaXQgY29uZmlnIC0tcmVwbGFjZS1hbGwgc2VuZGVtYWlsLmlzcC50byAiaXNwQGV4YW1wbGUuY29tIiAmJgorCWdpdCBjb25maWcgLS1yZXBsYWNlLWFsbCBzZW5kZW1haWwuY2xvdWQudG8gImNsb3VkQGV4YW1wbGUuY29tIgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICRQUkVSRVEgJ3NlbmRlbWFpbC5pZGVudGl0eTogcmVhZHMgdGhlIGNvcnJlY3QgaWRlbnRpdHkgY29uZmlnJyAnCisJZ2l0IC1jIHNlbmRlbWFpbC5pZGVudGl0eT1jbG91ZCBzZW5kLWVtYWlsIFwKKwkJLS1kcnktcnVuIFwKKwkJLS1mcm9tPSJub2JvZHlAZXhhbXBsZS5jb20iIFwKKwkJJHBhdGNoZXMgPnN0ZG91dCAmJgorCWdyZXAgIlRvOiBjbG91ZEBleGFtcGxlLmNvbSIgc3Rkb3V0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJFBSRVJFUSAnc2VuZGVtYWlsLmlkZW50aXR5OiBpZGVudGl0eSBvdmVycmlkZXMgc2VuZGVtYWlsLmlkZW50aXR5JyAnCisJZ2l0IC1jIHNlbmRlbWFpbC5pZGVudGl0eT1jbG91ZCBzZW5kLWVtYWlsIFwKKwkJLS1pZGVudGl0eT1pc3AgXAorCQktLWRyeS1ydW4gXAorCQktLWZyb209Im5vYm9keUBleGFtcGxlLmNvbSIgXAorCQkkcGF0Y2hlcyA+c3Rkb3V0ICYmCisJZ3JlcCAiVG86IGlzcEBleGFtcGxlLmNvbSIgc3Rkb3V0CisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJFBSRVJFUSAnc2VuZGVtYWlsLmlkZW50aXR5OiAtLW5vLWlkZW50aXR5IGNsZWFycyBwcmV2aW91cyBpZGVudGl0eScgJworCWdpdCAtYyBzZW5kZW1haWwuaWRlbnRpdHk9Y2xvdWQgc2VuZC1lbWFpbCBcCisJCS0tbm8taWRlbnRpdHkgXAorCQktLWRyeS1ydW4gXAorCQktLWZyb209Im5vYm9keUBleGFtcGxlLmNvbSIgXAorCQkkcGF0Y2hlcyA+c3Rkb3V0ICYmCisJZ3JlcCAiVG86IGRlZmF1bHRAZXhhbXBsZS5jb20iIHN0ZG91dAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICRQUkVSRVEgJ3NlbmRlbWFpbC5pZGVudGl0eTogYm9vbCBpZGVudGl0eSB2YXJpYWJsZSBleGlzdGVuY2Ugb3ZlcnJpZGVzJyAnCisJZ2l0IC1jIHNlbmRlbWFpbC5pZGVudGl0eT1jbG91ZCBcCisJCS1jIHNlbmRlbWFpbC54bWFpbGVyPXRydWUgXAorCQktYyBzZW5kZW1haWwuY2xvdWQueG1haWxlcj1mYWxzZSBcCisJCXNlbmQtZW1haWwgXAorCQktLWRyeS1ydW4gXAorCQktLWZyb209Im5vYm9keUBleGFtcGxlLmNvbSIgXAorCQkkcGF0Y2hlcyA+c3Rkb3V0ICYmCisJZ3JlcCAiVG86IGNsb3VkQGV4YW1wbGUuY29tIiBzdGRvdXQgJiYKKwkhIGdyZXAgIlgtTWFpbGVyIiBzdGRvdXQKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAkUFJFUkVRICdzZW5kZW1haWwuaWRlbnRpdHk6IGJvb2wgdmFyaWFibGUgZmFsbGJhY2snICcKKwlnaXQgLWMgc2VuZGVtYWlsLmlkZW50aXR5PWNsb3VkIFwKKwkJLWMgc2VuZGVtYWlsLnhtYWlsZXI9ZmFsc2UgXAorCQlzZW5kLWVtYWlsIFwKKwkJLS1kcnktcnVuIFwKKwkJLS1mcm9tPSJub2JvZHlAZXhhbXBsZS5jb20iIFwKKwkJJHBhdGNoZXMgPnN0ZG91dCAmJgorCWdyZXAgIlRvOiBjbG91ZEBleGFtcGxlLmNvbSIgc3Rkb3V0ICYmCisJISBncmVwICJYLU1haWxlciIgc3Rkb3V0CisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJFBSRVJFUSAnLS1uby10byBvdmVycmlkZXMgc2VuZGVtYWlsLnRvJyAnCiAJZ2l0IHNlbmQtZW1haWwgXAogCQktLWRyeS1ydW4gXAogCQktLWZyb209IkV4YW1wbGUgPG5vYm9keUBleGFtcGxlLmNvbT4iIFwKIAkJLS1uby10byBcCiAJCS0tdG89bm9ib2R5QGV4YW1wbGUuY29tIFwKLQkJJHBhdGNoZXMgJHBhdGNoZXMgPnN0ZG91dCAmJgorCQkkcGF0Y2hlcyA+c3Rkb3V0ICYmCiAJZ3JlcCAiVG86IG5vYm9keUBleGFtcGxlLmNvbSIgc3Rkb3V0ICYmCiAJISBncmVwICJUbzogU29tZWJvZHkgPHNvbWVib2R5QGV4LmNvbT4iIHN0ZG91dAogJwpAQCAtMTIzMSw3ICsxMzAwLDcgQEAKIAkJLS1kcnktcnVuIFwKIAkJLS1mcm9tPSJFeGFtcGxlIDxub2JvZHlAZXhhbXBsZS5jb20+IiBcCiAJCS0tdG89bm9ib2R5QGV4YW1wbGUuY29tIFwKLQkJJHBhdGNoZXMgJHBhdGNoZXMgPnN0ZG91dCAmJgorCQkkcGF0Y2hlcyA+c3Rkb3V0ICYmCiAJZ3JlcCAiQ2M6IFNvbWVib2R5IDxzb21lYm9keUBleC5jb20+IiBzdGRvdXQKICcKIApAQCAtMTI0Miw3ICsxMzExLDcgQEAKIAkJLS1uby1jYyBcCiAJCS0tY2M9Ym9kaWVzQGV4YW1wbGUuY29tIFwKIAkJLS10bz1ub2JvZHlAZXhhbXBsZS5jb20gXAotCQkkcGF0Y2hlcyAkcGF0Y2hlcyA+c3Rkb3V0ICYmCisJCSRwYXRjaGVzID5zdGRvdXQgJiYKIAlncmVwICJDYzogYm9kaWVzQGV4YW1wbGUuY29tIiBzdGRvdXQgJiYKIAkhIGdyZXAgIkNjOiBTb21lYm9keSA8c29tZWJvZHlAZXguY29tPiIgc3Rkb3V0CiAnCkBAIC0xMjU0LDcgKzEzMjMsNyBAQAogCQktLWZyb209IkV4YW1wbGUgPG5vYm9keUBleGFtcGxlLmNvbT4iIFwKIAkJLS10bz1ub2JvZHlAZXhhbXBsZS5jb20gXAogCQktLXNtdHAtc2VydmVyIHJlbGF5LmV4YW1wbGUuY29tIFwKLQkJJHBhdGNoZXMgJHBhdGNoZXMgPnN0ZG91dCAmJgorCQkkcGF0Y2hlcyA+c3Rkb3V0ICYmCiAJZ3JlcCAiUkNQVCBUTzo8b3RoZXJAZXguY29tPiIgc3Rkb3V0CiAnCiAKQEAgLTEyNjYsNyArMTMzNSw3IEBACiAJCS0tYmNjPWJvZGllc0BleGFtcGxlLmNvbSBcCiAJCS0tdG89bm9ib2R5QGV4YW1wbGUuY29tIFwKIAkJLS1zbXRwLXNlcnZlciByZWxheS5leGFtcGxlLmNvbSBcCi0JCSRwYXRjaGVzICRwYXRjaGVzID5zdGRvdXQgJiYKKwkJJHBhdGNoZXMgPnN0ZG91dCAmJgogCWdyZXAgIlJDUFQgVE86PGJvZGllc0BleGFtcGxlLmNvbT4iIHN0ZG91dCAmJgogCSEgZ3JlcCAiUkNQVCBUTzo8b3RoZXJAZXguY29tPiIgc3Rkb3V0CiAnCkBAIC0xNDIzLDIyICsxNDkyLDEwIEBACiAJRU9GCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJFBSRVJFUSAnc2VuZGVtYWlsLnRyYW5zZmVyZW5jb2Rpbmc9N2JpdCBmYWlscyBvbiA4Yml0IGRhdGEnICcKLQljbGVhbl9mYWtlX3NlbmRtYWlsICYmCi0JZ2l0IGNvbmZpZyBzZW5kZW1haWwudHJhbnNmZXJFbmNvZGluZyA3Yml0ICYmCi0JdGVzdF9tdXN0X2ZhaWwgZ2l0IHNlbmQtZW1haWwgXAotCQktLXRyYW5zZmVyLWVuY29kaW5nPTdiaXQgXAotCQktLXNtdHAtc2VydmVyPSIkKHB3ZCkvZmFrZS5zZW5kbWFpbCIgXAotCQllbWFpbC11c2luZy04Yml0IFwKLQkJMj5lcnJvcnMgPm91dCAmJgotCWdyZXAgImNhbm5vdCBzZW5kIG1lc3NhZ2UgYXMgN2JpdCIgZXJyb3JzICYmCi0JdGVzdCAteiAiJChscyBtc2d0eHQqKSIKLScKLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAkUFJFUkVRICctLXRyYW5zZmVyLWVuY29kaW5nIG92ZXJyaWRlcyBzZW5kZW1haWwudHJhbnNmZXJFbmNvZGluZycgJwogCWNsZWFuX2Zha2Vfc2VuZG1haWwgJiYKLQlnaXQgY29uZmlnIHNlbmRlbWFpbC50cmFuc2ZlckVuY29kaW5nIDhiaXQgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgc2VuZC1lbWFpbCBcCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IC1jIHNlbmRlbWFpbC50cmFuc2ZlckVuY29kaW5nPThiaXQgXAorCQlzZW5kLWVtYWlsIFwKIAkJLS10cmFuc2Zlci1lbmNvZGluZz03Yml0IFwKIAkJLS1zbXRwLXNlcnZlcj0iJChwd2QpL2Zha2Uuc2VuZG1haWwiIFwKIAkJZW1haWwtdXNpbmctOGJpdCBcCkBAIC0xNDQ3LDE2ICsxNTA0LDI2IEBACiAJdGVzdCAteiAiJChscyBtc2d0eHQqKSIKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAkUFJFUkVRICdzZW5kZW1haWwudHJhbnNmZXJlbmNvZGluZz04Yml0JyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICRQUkVSRVEgJ3NlbmRlbWFpbC50cmFuc2ZlckVuY29kaW5nIHZpYSBjb25maWcnICcKIAljbGVhbl9mYWtlX3NlbmRtYWlsICYmCi0JZ2l0IHNlbmQtZW1haWwgXAotCQktLXRyYW5zZmVyLWVuY29kaW5nPThiaXQgXAorCXRlc3RfbXVzdF9mYWlsIGdpdCAtYyBzZW5kZW1haWwudHJhbnNmZXJFbmNvZGluZz03Yml0IFwKKwkJc2VuZC1lbWFpbCBcCiAJCS0tc210cC1zZXJ2ZXI9IiQocHdkKS9mYWtlLnNlbmRtYWlsIiBcCiAJCWVtYWlsLXVzaW5nLThiaXQgXAogCQkyPmVycm9ycyA+b3V0ICYmCi0Jc2VkICcxLC9eJC9kJyBtc2d0eHQxID5hY3R1YWwgJiYKLQlzZWQgJzEsL14kL2QnIGVtYWlsLXVzaW5nLThiaXQgPmV4cGVjdGVkICYmCi0JdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisJZ3JlcCAiY2Fubm90IHNlbmQgbWVzc2FnZSBhcyA3Yml0IiBlcnJvcnMgJiYKKwl0ZXN0IC16ICIkKGxzIG1zZ3R4dCopIgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICRQUkVSRVEgJ3NlbmRlbWFpbC50cmFuc2ZlckVuY29kaW5nIHZpYSBjbGknICcKKwljbGVhbl9mYWtlX3NlbmRtYWlsICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHNlbmQtZW1haWwgXAorCQktLXRyYW5zZmVyLWVuY29kaW5nPTdiaXQgXAorCQktLXNtdHAtc2VydmVyPSIkKHB3ZCkvZmFrZS5zZW5kbWFpbCIgXAorCQllbWFpbC11c2luZy04Yml0IFwKKwkJMj5lcnJvcnMgPm91dCAmJgorCWdyZXAgImNhbm5vdCBzZW5kIG1lc3NhZ2UgYXMgN2JpdCIgZXJyb3JzICYmCisJdGVzdCAteiAiJChscyBtc2d0eHQqKSIKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAkUFJFUkVRICdzZXR1cCBleHBlY3QnICcKQEAgLTE3NzMsNiArMTg0MCwxNSBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCBzZW5kLWVtYWlsIC0tZHVtcC1hbGlhc2VzIC0tdG89amFuaWNlQGV4YW1wbGUuY29tIC0xIHJlZnMvaGVhZHMvYWNjb3VudGluZwogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICRQUkVSRVEgJ2FsaWFzZXMgYW5kIHNlbmRlbWFpbC5pZGVudGl0eScgJworCXRlc3RfbXVzdF9mYWlsIGdpdCBcCisJCS1jIHNlbmRlbWFpbC5pZGVudGl0eT1jbG91ZCBcCisJCS1jIHNlbmRlbWFpbC5hbGlhc2VzZmlsZT1kZWZhdWx0LWFsaWFzZXMgXAorCQktYyBzZW5kZW1haWwuY2xvdWQuYWxpYXNlc2ZpbGU9Y2xvdWQtYWxpYXNlcyBcCisJCXNlbmQtZW1haWwgLTEgMj5zdGRlcnIgJiYKKwl0ZXN0X2kxOG5ncmVwICJjbG91ZC1hbGlhc2VzIiBzdGRlcnIKKycKKwogdGVzdF9zZW5kbWFpbF9hbGlhc2VzICgpIHsKIAltc2c9IiQxIiAmJiBzaGlmdCAmJgogCWV4cGVjdD0iJEAiICYmCkBAIC0xOTkwLDcgKzIwNjYsNyBAQAogCVRPMT0kKGVjaG8gIlFUbyAxIDx0bzFAZXhhbXBsZS5jb20+IiB8IHFfdG9fdGFiKSAmJgogCVRPMj0kKGVjaG8gIlFadG8yIiB8IHF6X3RvX3RhYl9zcGFjZSkgJiYKIAlDQzE9JChlY2hvICJjYzEiIHwgYXBwZW5kX2NyKSAmJgotCUJDQzE9JChlY2hvICJRIGJjYzFAZXhhbXBsZS5jb20gUSIgfCBxX3RvX251bCkgJiYKKwlCQ0MxPSQoZWNobyAiIGJjYzFAZXhhbXBsZS5jb20gUSIgfCBxX3RvX251bCkgJiYKIAlnaXQgc2VuZC1lbWFpbCBcCiAJLS1kcnktcnVuIFwKIAktLWZyb209IglFeGFtcGxlIDxmcm9tQGV4YW1wbGUuY29tPiIgXApkaWZmIC0tZ2l0IGEvdC90OTAxMC1zdm4tZmUuc2ggYi90L3Q5MDEwLXN2bi1mZS5zaAppbmRleCAwYjIwYjA3Li5jOTBmZGM1IDEwMDc1NQotLS0gYS90L3Q5MDEwLXN2bi1mZS5zaAorKysgYi90L3Q5MDEwLXN2bi1mZS5zaApAQCAtNTMsOCArNTMsNiBAQAogCXByaW50ZiAiJXNcbiIgIiR0ZXh0IgogfQogCi0+ZW1wdHkKLQogdGVzdF9leHBlY3Rfc3VjY2VzcyAnZW1wdHkgZHVtcCcgJwogCXJlaW5pdF9naXQgJiYKIAllY2hvICJTVk4tZnMtZHVtcC1mb3JtYXQtdmVyc2lvbjogMiIgPmlucHV0ICYmCkBAIC0yMDgsNyArMjA2LDcgQEAKIAl0ZXN0X2NtcCBleHBlY3QuZGF0ZSBhY3R1YWwuZGF0ZSAmJgogCXRlc3RfY21wIGV4cGVjdC5maWxlcyBhY3R1YWwuZmlsZXMgJiYKIAlnaXQgY2hlY2tvdXQgSEVBRCBlbXB0eS1maWxlICYmCi0JdGVzdF9jbXAgZW1wdHkgZmlsZQorCXRlc3RfbXVzdF9iZV9lbXB0eSBmaWxlCiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RpcmVjdG9yeSB3aXRoIGZpbGVzJyAnCmRpZmYgLS1naXQgYS90L3Q5MTA2LWdpdC1zdm4tY29tbWl0LWRpZmYtY2xvYmJlci5zaCBiL3QvdDkxMDYtZ2l0LXN2bi1jb21taXQtZGlmZi1jbG9iYmVyLnNoCmluZGV4IGRiZThkZWEuLmFlYzQ1YmMgMTAwNzU1Ci0tLSBhL3QvdDkxMDYtZ2l0LXN2bi1jb21taXQtZGlmZi1jbG9iYmVyLnNoCisrKyBiL3QvdDkxMDYtZ2l0LXN2bi1jb21taXQtZGlmZi1jbG9iYmVyLnNoCkBAIC05Miw3ICs5Miw4IEBACiAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnY2hlY2sgdGhhdCByZWJhc2UgcmVhbGx5IGZhaWxlZCcgJwotCXRlc3QgLWQgLmdpdC9yZWJhc2UtYXBwbHkKKwlnaXQgc3RhdHVzID5vdXRwdXQgJiYKKwlncmVwIGN1cnJlbnRseS5yZWJhc2luZyBvdXRwdXQKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVzb2x2ZSwgY29udGludWUgdGhlIHJlYmFzZSBhbmQgZGNvbW1pdCcgIgpkaWZmIC0tZ2l0IGEvdC90OTExNS1naXQtc3ZuLWRjb21taXQtZnVua3ktcmVuYW1lcy5zaCBiL3QvdDkxMTUtZ2l0LXN2bi1kY29tbWl0LWZ1bmt5LXJlbmFtZXMuc2gKaW5kZXggNjRiYjQ5NS4uOWI0NGE0NCAxMDA3NTUKLS0tIGEvdC90OTExNS1naXQtc3ZuLWRjb21taXQtZnVua3ktcmVuYW1lcy5zaAorKysgYi90L3Q5MTE1LWdpdC1zdm4tZGNvbW1pdC1mdW5reS1yZW5hbWVzLnNoCkBAIC0xMjAsNiArMTIwLDQgQEAKIAlnaXQgc3ZuIGRjb21taXQKICcKIAotc3RvcF9odHRwZAotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDkxMTYtZ2l0LXN2bi1sb2cuc2ggYi90L3Q5MTE2LWdpdC1zdm4tbG9nLnNoCmluZGV4IDQ1NzczZWUuLjBhOWYxZWYgMTAwNzU1Ci0tLSBhL3QvdDkxMTYtZ2l0LXN2bi1sb2cuc2gKKysrIGIvdC90OTExNi1naXQtc3ZuLWxvZy5zaApAQCAtNDMsMTQgKzQzLDE4IEBACiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3J1biBsb2cnICIKIAlnaXQgcmVzZXQgLS1oYXJkIG9yaWdpbi9hICYmCi0JZ2l0IHN2biBsb2cgLXIyIG9yaWdpbi90cnVuayB8IGdyZXAgXnIyICYmCi0JZ2l0IHN2biBsb2cgLXI0IG9yaWdpbi90cnVuayB8IGdyZXAgXnI0ICYmCi0JZ2l0IHN2biBsb2cgLXIzIHwgZ3JlcCBecjMKKwlnaXQgc3ZuIGxvZyAtcjIgb3JpZ2luL3RydW5rID5vdXQgJiYKKwlncmVwIF5yMiBvdXQgJiYKKwlnaXQgc3ZuIGxvZyAtcjQgb3JpZ2luL3RydW5rID5vdXQgJiYKKwlncmVwIF5yNCBvdXQgJiYKKwlnaXQgc3ZuIGxvZyAtcjMgPm91dCAmJgorCWdyZXAgXnIzIG91dAogCSIKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncnVuIGxvZyBhZ2FpbnN0IGEgZnJvbSB0cnVuaycgIgogCWdpdCByZXNldCAtLWhhcmQgb3JpZ2luL3RydW5rICYmCi0JZ2l0IHN2biBsb2cgLXIzIG9yaWdpbi9hIHwgZ3JlcCBecjMKKwlnaXQgc3ZuIGxvZyAtcjMgb3JpZ2luL2EgPm91dCAmJgorCWdyZXAgXnIzIG91dAogCSIKIAogcHJpbnRmICdyMSBcbnIyIFxucjQgXG4nID4gZXhwZWN0ZWQtcmFuZ2UtcjEtcjItcjQKZGlmZiAtLWdpdCBhL3QvdDkxMTgtZ2l0LXN2bi1mdW5reS1icmFuY2gtbmFtZXMuc2ggYi90L3Q5MTE4LWdpdC1zdm4tZnVua3ktYnJhbmNoLW5hbWVzLnNoCmluZGV4IDQxYTAyNjYuLmExNTlmZjkgMTAwNzU1Ci0tLSBhL3QvdDkxMTgtZ2l0LXN2bi1mdW5reS1icmFuY2gtbmFtZXMuc2gKKysrIGIvdC90OTExOC1naXQtc3ZuLWZ1bmt5LWJyYW5jaC1uYW1lcy5zaApAQCAtODcsNiArODcsNCBAQAogCSkKIAknCiAKLXN0b3BfaHR0cGQKLQogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q5MTIwLWdpdC1zdm4tY2xvbmUtd2l0aC1wZXJjZW50LWVzY2FwZXMuc2ggYi90L3Q5MTIwLWdpdC1zdm4tY2xvbmUtd2l0aC1wZXJjZW50LWVzY2FwZXMuc2gKaW5kZXggYjI4YTE3NC4uNDBiNzE0ZCAxMDA3NTUKLS0tIGEvdC90OTEyMC1naXQtc3ZuLWNsb25lLXdpdGgtcGVyY2VudC1lc2NhcGVzLnNoCisrKyBiL3QvdDkxMjAtZ2l0LXN2bi1jbG9uZS13aXRoLXBlcmNlbnQtZXNjYXBlcy5zaApAQCAtNzQsNiArNzQsNCBAQAogCSkKICcKIAotc3RvcF9odHRwZAotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDkxNDItZ2l0LXN2bi1zaGFsbG93LWNsb25lLnNoIGIvdC90OTE0Mi1naXQtc3ZuLXNoYWxsb3ctY2xvbmUuc2gKaW5kZXggOWVlMjNiZS4uYTMwNzMwNSAxMDA3NTUKLS0tIGEvdC90OTE0Mi1naXQtc3ZuLXNoYWxsb3ctY2xvbmUuc2gKKysrIGIvdC90OTE0Mi1naXQtc3ZuLXNoYWxsb3ctY2xvbmUuc2gKQEAgLTI2LDYgKzI2LDQgQEAKIAkoIGNkIGcgJiYgZ2l0IHJldi1wYXJzZSAtLXN5bWJvbGljIC0tdmVyaWZ5IEhFQUQgKQogJwogCi1zdG9wX2h0dHBkCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTMwMC1mYXN0LWltcG9ydC5zaCBiL3QvdDkzMDAtZmFzdC1pbXBvcnQuc2gKaW5kZXggMzc3YzJiNC4uM2U0MWM1OCAxMDA3NTUKLS0tIGEvdC90OTMwMC1mYXN0LWltcG9ydC5zaAorKysgYi90L3Q5MzAwLWZhc3QtaW1wb3J0LnNoCkBAIC04NSw2ICs4NSwzNiBAQAogCUFuIGFubm90YXRlZCB0YWcgdGhhdCBhbm5vdGF0ZXMgYSBibG9iLgogCUVPRgogCisJdGFnIHRvLWJlLWRlbGV0ZWQKKwlmcm9tIDozCisJZGF0YSA8PEVPRgorCUFub3RoZXIgYW5ub3RhdGVkIHRhZyB0aGF0IGFubm90YXRlcyBhIGJsb2IuCisJRU9GCisKKwlyZXNldCByZWZzL3RhZ3MvdG8tYmUtZGVsZXRlZAorCWZyb20gMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAorCisJdGFnIG5lc3RlZAorCW1hcmsgOjYKKwlmcm9tIDo0CisJZGF0YSA8PEVPRgorCVRhZyBvZiBvdXIgbG92ZWx5IGNvbW1pdAorCUVPRgorCisJcmVzZXQgcmVmcy90YWdzL25lc3RlZAorCWZyb20gMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAorCisJdGFnIG5lc3RlZAorCW1hcmsgOjcKKwlmcm9tIDo2CisJZGF0YSA8PEVPRgorCVRhZyBvZiB0YWcgb2Ygb3VyIGxvdmVseSBjb21taXQKKwlFT0YKKworCWFsaWFzCisJbWFyayA6OAorCXRvIDo1CisKIAlJTlBVVF9FTkQKIAlnaXQgZmFzdC1pbXBvcnQgLS1leHBvcnQtbWFya3M9bWFya3Mub3V0IDxpbnB1dCAmJgogCWdpdCB3aGF0Y2hhbmdlZCBtYXN0ZXIKQEAgLTE1NywxMiArMTg3LDE5IEBACiAJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdBOiB2ZXJpZnkgdGFnIGRlbGV0aW9uIGlzIHN1Y2Nlc3NmdWwnICcKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IHJlZnMvdGFncy90by1iZS1kZWxldGVkCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ0E6IHZlcmlmeSBtYXJrcyBvdXRwdXQnICcKIAljYXQgPmV4cGVjdCA8PC1FT0YgJiYKIAk6MiAkKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgbWFzdGVyOmZpbGUyKQogCTozICQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSBtYXN0ZXI6ZmlsZTMpCiAJOjQgJChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IG1hc3RlcjpmaWxlNCkKIAk6NSAkKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgbWFzdGVyXjApCisJOjYgJChnaXQgY2F0LWZpbGUgdGFnIG5lc3RlZCB8IGdyZXAgb2JqZWN0IHwgY3V0IC1kIiAiIC1mIDIpCisJOjcgJChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IG5lc3RlZCkKKwk6OCAkKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgbWFzdGVyXjApCiAJRU9GCiAJdGVzdF9jbXAgZXhwZWN0IG1hcmtzLm91dAogJwpAQCAtMTAxMCw3ICsxMDQ3LDYgQEAKIAlFT0YKIAlnaXQgZmFzdC1pbXBvcnQgPGlucHV0ICYmCiAJZ2l0IGRpZmYtdHJlZSAtTSAtciBNNF4gTTQgPmFjdHVhbCAmJgotCWNhdCBhY3R1YWwgJiYKIAljb21wYXJlX2RpZmZfcmF3IGV4cGVjdCBhY3R1YWwKICcKIApAQCAtMjQ3MCw5ICsyNTA2LDYgQEAKIAllY2hvICRleHBlY3RfaWQgYmxvYiAkZXhwZWN0X2xlbiA+ZXhwZWN0LnJlc3BvbnNlICYmCiAKIAlybSAtZiBibG9icyAmJgotCWNhdCA+ZnJvbnRlbmQgPDwtXEZST05URU5EX0VORCAmJgotCSMhL2Jpbi9zaAotCUZST05URU5EX0VORAogCiAJbWtmaWZvIGJsb2JzICYmCiAJKApAQCAtMjgxMSw3ICsyODQ0LDYgQEAKIAlDT01NSVQKIAlNIDEwMDY0NCA6NDAzeCBoZWxsby5jCiAJRU9GCi0JY2F0IGVyciAmJgogCXRlc3RfaTE4bmdyZXAgInNwYWNlIGFmdGVyIG1hcmsiIGVycgogJwogCkBAIC0yODI4LDcgKzI4NjAsNiBAQAogCWlubGluZQogCUJMT0IKIAlFT0YKLQljYXQgZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAibnZhbGlkIGRhdGFyZWYiIGVycgogJwogCkBAIC0yODQyLDcgKzI4NzMsNiBAQAogCUNPTU1JVAogCU0gMTAwNjQ0ICR7c2hhMX14IGhlbGxvLmMKIAlFT0YKLQljYXQgZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAic3BhY2UgYWZ0ZXIgU0hBMSIgZXJyCiAnCiAKQEAgLTI4NTgsNyArMjg4OCw2IEBACiAJQ09NTUlUCiAJTiA6MjAyeCA6MzAyCiAJRU9GCi0JY2F0IGVyciAmJgogCXRlc3RfaTE4bmdyZXAgInNwYWNlIGFmdGVyIG1hcmsiIGVycgogJwogCkBAIC0yODc0LDcgKzI5MDMsNiBAQAogCW5vdGUgYmxvYgogCUJMT0IKIAlFT0YKLQljYXQgZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAibnZhbGlkIGRhdGFyZWYiIGVycgogJwogCkBAIC0yODg4LDcgKzI5MTYsNiBAQAogCUNPTU1JVAogCU4gJHtzaGExfXggOjMwMgogCUVPRgotCWNhdCBlcnIgJiYKIAl0ZXN0X2kxOG5ncmVwICJzcGFjZSBhZnRlciBTSEExIiBlcnIKICcKIApAQCAtMjkwNCw3ICsyOTMxLDYgQEAKIAlDT01NSVQKIAlOIDoyMDIgOjMwMngKIAlFT0YKLQljYXQgZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAiYWZ0ZXIgbWFyayIgZXJyCiAnCiAKQEAgLTI5MzgsNyArMjk2NCw2IEBACiAJRU9GCiAKIAkjIG5vdyBldmFsdWF0ZSB0aGUgZXJyb3IKLQljYXQgZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAiYWZ0ZXIgbWFyayIgZXJyCiAnCiAKQEAgLTI5NTgsNyArMjk4Myw2IEBACiAJbWVyZ2UgOjMwM3gKIAlNIDEwMDY0NCA6NDAzIGhlbGxvLmMKIAlFT0YKLQljYXQgZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAiYWZ0ZXIgbWFyayIgZXJyCiAnCiAKQEAgLTI5NzQsNyArMjk5OCw2IEBACiAJdGFnIFMKIAlUQUcKIAlFT0YKLQljYXQgZXJyICYmCiAJdGVzdF9pMThuZ3JlcCAiYWZ0ZXIgbWFyayIgZXJyCiAnCiAKQEAgLTI5ODUsNyArMzAwOCw2IEBACiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IGZhc3QtaW1wb3J0IC0taW1wb3J0LW1hcmtzPW1hcmtzIDw8LUVPRiAyPmVyciAmJgogCWNhdC1ibG9iIDo0MDN4CiAJRU9GCi0JY2F0IGVyciAmJgogCXRlc3RfaTE4bmdyZXAgImFmdGVyIG1hcmsiIGVycgogJwogCkBAIC0yOTk2LDcgKzMwMTgsNiBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCBmYXN0LWltcG9ydCAtLWltcG9ydC1tYXJrcz1tYXJrcyA8PC1FT0YgMj5lcnIgJiYKIAlscyA6MzAyeCBoZWxsby5jCiAJRU9GCi0JY2F0IGVyciAmJgogCXRlc3RfaTE4bmdyZXAgInNwYWNlIGFmdGVyIG1hcmsiIGVycgogJwogCkBAIC0zMDA1LDcgKzMwMjYsNiBAQAogCXRlc3RfbXVzdF9mYWlsIGdpdCBmYXN0LWltcG9ydCAtLWltcG9ydC1tYXJrcz1tYXJrcyA8PC1FT0YgMj5lcnIgJiYKIAlscyAke3NoYTF9eCBoZWxsby5jCiAJRU9GCi0JY2F0IGVyciAmJgogCXRlc3RfaTE4bmdyZXAgInNwYWNlIGFmdGVyIHRyZWUtaXNoIiBlcnIKICcKIApAQCAtMzE3MCwxMyArMzE5MCwyMiBAQAogCWV4ZWMgOTw+Vi5vdXRwdXQKIAlybSBWLm91dHB1dAogCi0JZ2l0IGZhc3QtaW1wb3J0ICRvcHRpb25zIDwmOCA+JjkgJgotCWVjaG8gJCEgPlYucGlkCisJKAorCQlnaXQgZmFzdC1pbXBvcnQgJG9wdGlvbnMgPCY4ID4mOSAmCisJCWVjaG8gJCEgPiY5CisJCXdhaXQgJCEKKwkJZWNobyA+JjIgImJhY2tncm91bmQgZmFzdC1pbXBvcnQgdGVybWluYXRlZCB0b28gZWFybHkgd2l0aCBleGl0IGNvZGUgJD8iCisJCSMgVW4tYmxvY2sgdGhlIHJlYWQgbG9vcCBpbiB0aGUgbWFpbiBzaGVsbCBwcm9jZXNzLgorCQllY2hvID4mOSBVTkVYUEVDVEVECisJKSAmCisJc2hfcGlkPSQhCisJcmVhZCBmaV9waWQgPCY5CiAJIyBXZSBkb24ndCBtaW5kIGlmIGZhc3QtaW1wb3J0IGhhcyBhbHJlYWR5IGRpZWQgYnkgdGhlIHRpbWUgdGhlIHRlc3QKIAkjIGVuZHMuCiAJdGVzdF93aGVuX2ZpbmlzaGVkICIKIAkJZXhlYyA4PiYtOyBleGVjIDk+Ji07Ci0JCWtpbGwgJChjYXQgVi5waWQpICYmIHdhaXQgJChjYXQgVi5waWQpCisJCWtpbGwgJHNoX3BpZCAmJiB3YWl0ICRzaF9waWQKKwkJa2lsbCAkZmlfcGlkICYmIHdhaXQgJGZpX3BpZAogCQl0cnVlIgogCiAJIyBTdGFydCBpbiB0aGUgYmFja2dyb3VuZCB0byBlbnN1cmUgd2UgYWRoZXJlIHN0cmljdGx5IHRvIChibG9ja2luZykKQEAgLTMxOTYsNiArMzIyNSw5IEBACiAJCXRoZW4KIAkJCWVycm9yPTAKIAkJCWJyZWFrCisJCWVsaWYgdGVzdCAiJG91dHB1dCIgPSAiVU5FWFBFQ1RFRCIKKwkJdGhlbgorCQkJYnJlYWsKIAkJZmkKIAkJIyBvdGhlcndpc2UgaWdub3JlIGNydWZ0CiAJCWVjaG8gPiYyICJjcnVmdDogJG91dHB1dCIKQEAgLTMyMDgsNyArMzI0MCw3IEBACiB9CiAKIGJhY2tncm91bmRfaW1wb3J0X3N0aWxsX3J1bm5pbmcgKCkgewotCWlmICEga2lsbCAtMCAiJChjYXQgVi5waWQpIgorCWlmICEga2lsbCAtMCAiJGZpX3BpZCIKIAl0aGVuCiAJCWVjaG8gPiYyICJiYWNrZ3JvdW5kIGZhc3QtaW1wb3J0IHRlcm1pbmF0ZWQgdG9vIGVhcmx5IgogCQlmYWxzZQpAQCAtMzI5Miw0ICszMzI0LDYxIEBACiAJYmFja2dyb3VuZF9pbXBvcnRfc3RpbGxfcnVubmluZwogJwogCisjIyMKKyMjIyBzZXJpZXMgVyAoZ2V0LW1hcmsgYW5kIGVtcHR5IG9ycGhhbiBjb21taXRzKQorIyMjCisKK2NhdCA+PlctaW5wdXQgPDwtV19JTlBVVF9FTkQKKwljb21taXQgcmVmcy9oZWFkcy9XLWJyYW5jaAorCW1hcmsgOjEKKwlhdXRob3IgRnVsbCBOYW1lIDx1c2VyQGNvbXBhbnkudGxkPiAxMDAwMDAwMDAwICswMTAwCisJY29tbWl0dGVyIEZ1bGwgTmFtZSA8dXNlckBjb21wYW55LnRsZD4gMTAwMDAwMDAwMCArMDEwMAorCWRhdGEgMjcKKwlJbnRlbnRpb25hbGx5IGVtcHR5IGNvbW1pdAorCUxGc2dldC1tYXJrIDoxCisJV19JTlBVVF9FTkQKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAhTUlOR1cgJ1c6IGdldC1tYXJrICYgZW1wdHkgb3JwaGFuIGNvbW1pdCB3aXRoIG5vIG5ld2xpbmVzJyAnCisJc2VkIC1lIHMvTEZzLy8gVy1pbnB1dCB8IHRyIEwgIlxuIiB8IGdpdCBmYXN0LWltcG9ydAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICFNSU5HVyAnVzogZ2V0LW1hcmsgJiBlbXB0eSBvcnBoYW4gY29tbWl0IHdpdGggb25lIG5ld2xpbmUnICcKKwlzZWQgLWUgcy9MRnMvTC8gVy1pbnB1dCB8IHRyIEwgIlxuIiB8IGdpdCBmYXN0LWltcG9ydAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICFNSU5HVyAnVzogZ2V0LW1hcmsgJiBlbXB0eSBvcnBoYW4gY29tbWl0IHdpdGggdWdseSBzZWNvbmQgbmV3bGluZScgJworCSMgVGVjaG5pY2FsbHksIHRoaXMgc2hvdWxkIGZhaWwgYXMgaXQgaGFzIHRvbyBtYW55IGxpbmVmZWVkcworCSMgYWNjb3JkaW5nIHRvIHRoZSBncmFtbWFyIGluIGZhc3QtaW1wb3J0LnR4dC4gIEJ1dCwgZm9yIHdoYXRldmVyCisJIyByZWFzb24sIGl0IHdvcmtzLiAgU2luY2UgdXNpbmcgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIG5ld2xpbmVzCisJIyBkb2VzIG5vdCB3b3JrIHdpdGggb2xkZXIgKHByZS0yLjIyKSB2ZXJzaW9ucyBvZiBnaXQsIGFsbG93IGFwcHMKKwkjIHRoYXQgdXNlZCB0aGlzIHNlY29uZC1uZXdsaW5lIHdvcmthcm91bmQgdG8ga2VlcCB3b3JraW5nIGJ5CisJIyBjaGVja2luZyBpdCB3aXRoIHRoaXMgdGVzdC4uLgorCXNlZCAtZSBzL0xGcy9MTC8gVy1pbnB1dCB8IHRyIEwgIlxuIiB8IGdpdCBmYXN0LWltcG9ydAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICFNSU5HVyAnVzogZ2V0LW1hcmsgJiBlbXB0eSBvcnBoYW4gY29tbWl0IHdpdGggZXJyb25lb3VzIHRoaXJkIG5ld2xpbmUnICcKKwkjIC4uLmJ1dCBkbyBOT1QgYWxsb3cgbW9yZSBlbXB0eSBsaW5lcyB0aGFuIHRoYXQgKHNlZSBwcmV2aW91cyB0ZXN0KS4KKwlzZWQgLWUgcy9MRnMvTExMLyBXLWlucHV0IHwgdHIgTCAiXG4iIHwgdGVzdF9tdXN0X2ZhaWwgZ2l0IGZhc3QtaW1wb3J0CisnCisKKyMjIworIyMjIHNlcmllcyBYIChvdGhlciBuZXcgZmVhdHVyZXMpCisjIyMKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnWDogaGFuZGxpbmcgZW5jb2RpbmcnICcKKwl0ZXN0X3RpY2sgJiYKKwljYXQgPmlucHV0IDw8LUlOUFVUX0VORCAmJgorCWNvbW1pdCByZWZzL2hlYWRzL2VuY29kaW5nCisJY29tbWl0dGVyICRHSVRfQ09NTUlUVEVSX05BTUUgPCRHSVRfQ09NTUlUVEVSX0VNQUlMPiAkR0lUX0NPTU1JVFRFUl9EQVRFCisJZW5jb2RpbmcgaXNvLTg4NTktNworCWRhdGEgPDxDT01NSVQKKwlJTlBVVF9FTkQKKworCXByaW50ZiAiUGk6IFwzNjBcbkNPTU1JVFxuIiA+PmlucHV0ICYmCisKKwlnaXQgZmFzdC1pbXBvcnQgPGlucHV0ICYmCisJZ2l0IGNhdC1maWxlIC1wIGVuY29kaW5nIHwgZ3JlcCAkKHByaW50ZiAiXDM2MCIpICYmCisJZ2l0IGxvZyAtMSAtLWZvcm1hdD0lQiBlbmNvZGluZyB8IGdyZXAgJChwcmludGYgIlwzMTdcMjAwIikKKycKKwogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q5MzAxLWZhc3QtaW1wb3J0LW5vdGVzLnNoIGIvdC90OTMwMS1mYXN0LWltcG9ydC1ub3Rlcy5zaAppbmRleCBkYWRjNzBiLi5jYTIyM2RjIDEwMDc1NQotLS0gYS90L3Q5MzAxLWZhc3QtaW1wb3J0LW5vdGVzLnNoCisrKyBiL3QvdDkzMDEtZmFzdC1pbXBvcnQtbm90ZXMuc2gKQEAgLTI3NSw3ICsyNzUsNyBAQAogICAgIHRoaXJkIG5vdGUgZm9yIGZpcnN0IGNvbW1pdAogRVhQRUNUX0VORAogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdhZGQgY29uY2F0ZW50YXRpb24gbm90ZXMgd2l0aCBNIGNvbW1hbmQnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2FkZCBjb25jYXRlbmF0aW9uIG5vdGVzIHdpdGggTSBjb21tYW5kJyAnCiAKIAlnaXQgZmFzdC1pbXBvcnQgPGlucHV0ICYmCiAJR0lUX05PVEVTX1JFRj1yZWZzL25vdGVzL3Rlc3QgZ2l0IGxvZyB8IGdyZXAgIl4gICAgIiA+IGFjdHVhbCAmJgpkaWZmIC0tZ2l0IGEvdC90OTMwMy1mYXN0LWltcG9ydC1jb21wcmVzc2lvbi5zaCBiL3QvdDkzMDMtZmFzdC1pbXBvcnQtY29tcHJlc3Npb24uc2gKaW5kZXggODU2MjE5Zi4uNTA0NWYwMiAxMDA3NTUKLS0tIGEvdC90OTMwMy1mYXN0LWltcG9ydC1jb21wcmVzc2lvbi5zaAorKysgYi90L3Q5MzAzLWZhc3QtaW1wb3J0LWNvbXByZXNzaW9uLnNoCkBAIC02LDcgKzYsNyBAQAogIyBUaGlzIHNob3VsZCBiZSBtb3ZlZCB0byB0ZXN0LWxpYi5zaCB0b2dldGhlciB3aXRoIHRoZQogIyBjb3B5IGluIHQwMDIxIGFmdGVyIGJvdGggdG9waWNzIGhhdmUgZ3JhZHVhdGVkIHRvICdtYXN0ZXInLgogZmlsZV9zaXplICgpIHsKLQlwZXJsIC1lICdwcmludCAtcyAkQVJHVlswXScgIiQxIgorCXRlc3QtdG9vbCBwYXRoLXV0aWxzIGZpbGUtc2l6ZSAiJDEiCiB9CiAKIGltcG9ydF9sYXJnZSAoKSB7CmRpZmYgLS1naXQgYS90L3Q5MzUwLWZhc3QtZXhwb3J0LnNoIGIvdC90OTM1MC1mYXN0LWV4cG9ydC5zaAppbmRleCBlZjFlMDE4Li42OTBjOTBmIDEwMDc1NQotLS0gYS90L3Q5MzUwLWZhc3QtZXhwb3J0LnNoCisrKyBiL3QvdDkzNTAtZmFzdC1leHBvcnQuc2gKQEAgLTUzLDYgKzUzLDMzIEBACiAKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFzdC1leHBvcnQgXm11c3Nee2NvbW1pdH0gbXVzcycgJworCWdpdCBmYXN0LWV4cG9ydCAtLXRhZy1vZi1maWx0ZXJlZC1vYmplY3Q9cmV3cml0ZSBebXVzc157Y29tbWl0fSBtdXNzID5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgorCXRhZyBtdXNzCisJZnJvbSAkKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgbXVzc157Y29tbWl0fSkKKwkkKGdpdCBjYXQtZmlsZSB0YWcgbXVzcyB8IGdyZXAgdGFnZ2VyKQorCWRhdGEgOQorCXZhbGVudGluCisKKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZmFzdC1leHBvcnQgLS1tYXJrLXRhZ3MgXm11c3Nee2NvbW1pdH0gbXVzcycgJworCWdpdCBmYXN0LWV4cG9ydCAtLW1hcmstdGFncyAtLXRhZy1vZi1maWx0ZXJlZC1vYmplY3Q9cmV3cml0ZSBebXVzc157Y29tbWl0fSBtdXNzID5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgorCXRhZyBtdXNzCisJbWFyayA6MQorCWZyb20gJChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IG11c3Nee2NvbW1pdH0pCisJJChnaXQgY2F0LWZpbGUgdGFnIG11c3MgfCBncmVwIHRhZ2dlcikKKwlkYXRhIDkKKwl2YWxlbnRpbgorCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zhc3QtZXhwb3J0IG1hc3Rlcn4yLi5tYXN0ZXInICcKIAogCWdpdCBmYXN0LWV4cG9ydCBtYXN0ZXJ+Mi4ubWFzdGVyID5hY3R1YWwgJiYKQEAgLTY2LDIyICs5MywxMTEgQEAKIAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdpc28tODg1OS0xJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmYXN0LWV4cG9ydCAtLXJlZmVyZW5jZS1leGNsdWRlZC1wYXJlbnRzIG1hc3Rlcn4yLi5tYXN0ZXInICcKIAotCWdpdCBjb25maWcgaTE4bi5jb21taXRlbmNvZGluZyBJU084ODU5LTEgJiYKLQkjIHVzZSBhdXRob3IgYW5kIGNvbW1pdHRlciBuYW1lIGluIElTTy04ODU5LTEgdG8gbWF0Y2ggaXQuCi0JLiAiJFRFU1RfRElSRUNUT1JZIi90MzkwMS84ODU5LTEudHh0ICYmCi0JdGVzdF90aWNrICYmCi0JZWNobyByb3N0ZW4gPmZpbGUgJiYKLQlnaXQgY29tbWl0IC1zIC1tIGRlbiBmaWxlICYmCi0JZ2l0IGZhc3QtZXhwb3J0IHdlcl4uLndlciA+aXNvODg1OS0xLmZpICYmCi0Jc2VkICJzL3dlci9pMThuLyIgaXNvODg1OS0xLmZpIHwKKwlnaXQgZmFzdC1leHBvcnQgLS1yZWZlcmVuY2UtZXhjbHVkZWQtcGFyZW50cyBtYXN0ZXJ+Mi4ubWFzdGVyID5hY3R1YWwgJiYKKwlncmVwIGNvbW1pdC5yZWZzL2hlYWRzL21hc3RlciBhY3R1YWwgPmNvbW1pdC1jb3VudCAmJgorCXRlc3RfbGluZV9jb3VudCA9IDIgY29tbWl0LWNvdW50ICYmCisJc2VkICJzL21hc3Rlci9yZXdyaXRlLyIgYWN0dWFsIHwKIAkJKGNkIG5ldyAmJgogCQkgZ2l0IGZhc3QtaW1wb3J0ICYmCi0JCSBnaXQgY2F0LWZpbGUgY29tbWl0IGkxOG4gPmFjdHVhbCAmJgotCQkgZ3JlcCAiw4HDqcOtIMOzw7oiIGFjdHVhbCkKLQorCQkgdGVzdCAkTUFTVEVSID0gJChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IHJlZnMvaGVhZHMvcmV3cml0ZSkpCiAnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Zhc3QtZXhwb3J0IC0tc2hvdy1vcmlnaW5hbC1pZHMnICcKKworCWdpdCBmYXN0LWV4cG9ydCAtLXNob3ctb3JpZ2luYWwtaWRzIG1hc3RlciA+b3V0cHV0ICYmCisJZ3JlcCBeb3JpZ2luYWwtb2lkIG91dHB1dHwgc2VkIC1lIHMvXm9yaWdpbmFsLW9pZC4vLyB8IHNvcnQgPmFjdHVhbCAmJgorCWdpdCByZXYtbGlzdCAtLW9iamVjdHMgbWFzdGVyIG11c3MgPm9iamVjdHMtYW5kLW5hbWVzICYmCisJYXdrICJ7cHJpbnQgXCQxfSIgb2JqZWN0cy1hbmQtbmFtZXMgfCBzb3J0ID5jb21taXRzLXRyZWVzLWJsb2JzICYmCisJY29tbSAtMjMgYWN0dWFsIGNvbW1pdHMtdHJlZXMtYmxvYnMgPnVuZm91bmQgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgdW5mb3VuZAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdmYXN0LWV4cG9ydCAtLXNob3ctb3JpZ2luYWwtaWRzIHwgZ2l0IGZhc3QtaW1wb3J0JyAnCisKKwlnaXQgZmFzdC1leHBvcnQgLS1zaG93LW9yaWdpbmFsLWlkcyBtYXN0ZXIgbXVzcyB8IGdpdCBmYXN0LWltcG9ydCAtLXF1aWV0ICYmCisJdGVzdCAkTUFTVEVSID0gJChnaXQgcmV2LXBhcnNlIC0tdmVyaWZ5IHJlZnMvaGVhZHMvbWFzdGVyKSAmJgorCXRlc3QgJE1VU1MgPSAkKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgcmVmcy90YWdzL211c3MpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3JlZW5jb2RpbmcgaXNvLTg4NTktNycgJworCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVzZXQgLS1oYXJkIEhFQUR+MSIgJiYKKwl0ZXN0X2NvbmZpZyBpMThuLmNvbW1pdGVuY29kaW5nIGlzby04ODU5LTcgJiYKKwl0ZXN0X3RpY2sgJiYKKwllY2hvIHJvc3RlbiA+ZmlsZSAmJgorCWdpdCBjb21taXQgLXMgLUYgIiRURVNUX0RJUkVDVE9SWS90OTM1MC9zaW1wbGUtaXNvLTg4NTktNy1jb21taXQtbWVzc2FnZS50eHQiIGZpbGUgJiYKKwlnaXQgZmFzdC1leHBvcnQgLS1yZWVuY29kZT15ZXMgd2VyXi4ud2VyID5pc28tODg1OS03LmZpICYmCisJc2VkICJzL3dlci9pMThuLyIgaXNvLTg4NTktNy5maSB8CisJCShjZCBuZXcgJiYKKwkJIGdpdCBmYXN0LWltcG9ydCAmJgorCQkgIyBUaGUgY29tbWl0IG9iamVjdCwgaWYgbm90IHJlLWVuY29kZWQsIHdvdWxkIGJlIDI0MCBieXRlcy4KKwkJICMgUmVtb3ZpbmcgdGhlICJlbmNvZGluZyBpc28tODg1OS03XG4iIGhlYWRlciBkcm9wcyAyMCBieXRlcy4KKwkJICMgUmUtZW5jb2RpbmcgdGhlIFBpIGNoYXJhY3RlciBmcm9tIFx4RjAgKFwzNjApIGluIGlzby04ODU5LTcKKwkJICMgdG8gXHhDRlx4ODAgKFwzMTdcMjAwKSBpbiBVVEYtOCBhZGRzIGEgYnl0ZS4gIENoZWNrIGZvcgorCQkgIyB0aGUgZXhwZWN0ZWQgc2l6ZS4KKwkJIHRlc3QgMjIxIC1lcSAiJChnaXQgY2F0LWZpbGUgLXMgaTE4bikiICYmCisJCSAjIC4uLmFuZCBmb3IgdGhlIGV4cGVjdGVkIHRyYW5zbGF0aW9uIG9mIGJ5dGVzLgorCQkgZ2l0IGNhdC1maWxlIGNvbW1pdCBpMThuID5hY3R1YWwgJiYKKwkJIGdyZXAgJChwcmludGYgIlwzMTdcMjAwIikgYWN0dWFsICYmCisJCSAjIEFsc28gbWFrZSBzdXJlIHRoZSBjb21taXQgZG9lcyBub3QgaGF2ZSB0aGUgImVuY29kaW5nIiBoZWFkZXIKKwkJICEgZ3JlcCBeZW5jb2RpbmcgYWN0dWFsKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhYm9ydGluZyBvbiBpc28tODg1OS03JyAnCisKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQgSEVBRH4xIiAmJgorCXRlc3RfY29uZmlnIGkxOG4uY29tbWl0ZW5jb2RpbmcgaXNvLTg4NTktNyAmJgorCWVjaG8gcm9zdGVuID5maWxlICYmCisJZ2l0IGNvbW1pdCAtcyAtRiAiJFRFU1RfRElSRUNUT1JZL3Q5MzUwL3NpbXBsZS1pc28tODg1OS03LWNvbW1pdC1tZXNzYWdlLnR4dCIgZmlsZSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCBmYXN0LWV4cG9ydCAtLXJlZW5jb2RlPWFib3J0IHdlcl4uLndlciA+aXNvLTg4NTktNy5maQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcmVzZXJ2aW5nIGlzby04ODU5LTcnICcKKworCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IHJlc2V0IC0taGFyZCBIRUFEfjEiICYmCisJdGVzdF9jb25maWcgaTE4bi5jb21taXRlbmNvZGluZyBpc28tODg1OS03ICYmCisJZWNobyByb3N0ZW4gPmZpbGUgJiYKKwlnaXQgY29tbWl0IC1zIC1GICIkVEVTVF9ESVJFQ1RPUlkvdDkzNTAvc2ltcGxlLWlzby04ODU5LTctY29tbWl0LW1lc3NhZ2UudHh0IiBmaWxlICYmCisJZ2l0IGZhc3QtZXhwb3J0IC0tcmVlbmNvZGU9bm8gd2VyXi4ud2VyID5pc28tODg1OS03LmZpICYmCisJc2VkICJzL3dlci9pMThuLW5vLXJlY29kaW5nLyIgaXNvLTg4NTktNy5maSB8CisJCShjZCBuZXcgJiYKKwkJIGdpdCBmYXN0LWltcG9ydCAmJgorCQkgIyBUaGUgY29tbWl0IG9iamVjdCwgaWYgbm90IHJlLWVuY29kZWQsIGlzIDI0MCBieXRlcy4KKwkJICMgUmVtb3ZpbmcgdGhlICJlbmNvZGluZyBpc28tODg1OS03XG4iIGhlYWRlciB3b3VsZCBkcm9wcyAyMAorCQkgIyBieXRlcy4gIFJlLWVuY29kaW5nIHRoZSBQaSBjaGFyYWN0ZXIgZnJvbSBceEYwIChcMzYwKSBpbgorCQkgIyBpc28tODg1OS03IHRvIFx4Q0ZceDgwIChcMzE3XDIwMCkgaW4gVVRGLTggYWRkcyBhIGJ5dGUuCisJCSAjIENoZWNrIGZvciB0aGUgZXhwZWN0ZWQgc2l6ZS4uLgorCQkgdGVzdCAyNDAgLWVxICIkKGdpdCBjYXQtZmlsZSAtcyBpMThuLW5vLXJlY29kaW5nKSIgJiYKKwkJICMgLi4uYXMgd2VsbCBhcyB0aGUgZXhwZWN0ZWQgYnl0ZS4KKwkJIGdpdCBjYXQtZmlsZSBjb21taXQgaTE4bi1uby1yZWNvZGluZyA+YWN0dWFsICYmCisJCSBncmVwICQocHJpbnRmICJcMzYwIikgYWN0dWFsICYmCisJCSAjIEFsc28gbWFrZSBzdXJlIHRoZSBjb21taXQgaGFzIHRoZSAiZW5jb2RpbmciIGhlYWRlcgorCQkgZ3JlcCBeZW5jb2RpbmcgYWN0dWFsKQorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdlbmNvZGluZyBwcmVzZXJ2ZWQgaWYgcmVlbmNvZGluZyBmYWlscycgJworCisJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgcmVzZXQgLS1oYXJkIEhFQUR+MSIgJiYKKwl0ZXN0X2NvbmZpZyBpMThuLmNvbW1pdGVuY29kaW5nIGlzby04ODU5LTcgJiYKKwllY2hvIHJvc3RlbiA+ZmlsZSAmJgorCWdpdCBjb21taXQgLXMgLUYgIiRURVNUX0RJUkVDVE9SWS90OTM1MC9icm9rZW4taXNvLTg4NTktNy1jb21taXQtbWVzc2FnZS50eHQiIGZpbGUgJiYKKwlnaXQgZmFzdC1leHBvcnQgLS1yZWVuY29kZT15ZXMgd2VyXi4ud2VyID5pc28tODg1OS03LmZpICYmCisJc2VkICJzL3dlci9pMThuLWludmFsaWQvIiBpc28tODg1OS03LmZpIHwKKwkJKGNkIG5ldyAmJgorCQkgZ2l0IGZhc3QtaW1wb3J0ICYmCisJCSBnaXQgY2F0LWZpbGUgY29tbWl0IGkxOG4taW52YWxpZCA+YWN0dWFsICYmCisJCSAjIE1ha2Ugc3VyZSB0aGUgY29tbWl0IHN0aWxsIGhhcyB0aGUgZW5jb2RpbmcgaGVhZGVyCisJCSBncmVwIF5lbmNvZGluZyBhY3R1YWwgJiYKKwkJICMgVmVyaWZ5IHRoYXQgdGhlIGNvbW1pdCBoYXMgdGhlIGV4cGVjdGVkIHNpemU7IGkuZS4KKwkJICMgdGhhdCBubyBieXRlcyB3ZXJlIHJlLWVuY29kZWQgdG8gYSBkaWZmZXJlbnQgZW5jb2RpbmcuCisJCSB0ZXN0IDI1MiAtZXEgIiQoZ2l0IGNhdC1maWxlIC1zIGkxOG4taW52YWxpZCkiICYmCisJCSAjIC4uLmFuZCBjaGVjayBmb3IgdGhlIG9yaWdpbmFsIHNwZWNpYWwgYnl0ZXMKKwkJIGdyZXAgJChwcmludGYgIlwzNjAiKSBhY3R1YWwgJiYKKwkJIGdyZXAgJChwcmludGYgIlwzNzciKSBhY3R1YWwpCisnCisKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2ltcG9ydC9leHBvcnQtbWFya3MnICcKIAogCWdpdCBjaGVja291dCAtYiBtYXJrcyBtYXN0ZXIgJiYKQEAgLTE5Niw3ICszMTIsNiBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBjb3BpZXMnICcKIAotCWdpdCBjb25maWcgLS11bnNldCBpMThuLmNvbW1pdGVuY29kaW5nICYmCiAJZ2l0IGNoZWNrb3V0IC1iIGNvcHkgcmVpbiAmJgogCWdpdCBtdiBmaWxlIGZpbGUzICYmCiAJZ2l0IGNvbW1pdCAtbSBtb3ZlMSAmJgpAQCAtMzI1LDYgKzQ0MCwyMiBAQAogKQogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXdyaXRlIHRhZyBwcmVkYXRpbmcgcGF0aHNwZWNzIHRvIG5vdGhpbmcnICcKKwl0ZXN0X2NyZWF0ZV9yZXBvIHJld3JpdGVfdGFnX3ByZWRhdGluZ19wYXRoc3BlY3MgJiYKKwkoCisJCWNkIHJld3JpdGVfdGFnX3ByZWRhdGluZ19wYXRoc3BlY3MgJiYKKworCQl0ZXN0X2NvbW1pdCBpbml0aWFsICYmCisKKwkJZ2l0IHRhZyAtYSAtbSAiU29tZSBvbGQgdGFnIiB2MC4wLjAuMC4wLjAuMSAmJgorCisJCXRlc3RfY29tbWl0IGJhciAmJgorCisJCWdpdCBmYXN0LWV4cG9ydCAtLXRhZy1vZi1maWx0ZXJlZC1vYmplY3Q9cmV3cml0ZSAtLWFsbCAtLSBiYXIudCA+b3V0cHV0ICYmCisJCWdyZXAgZnJvbS4kWkVST19PSUQgb3V0cHV0CisJKQorJworCiBjYXQgPiBsaW1pdC1ieS1wYXRocy9leHBlY3RlZCA8PCBFT0YKIGJsb2IKIG1hcmsgOjEKQEAgLTM2Niw2ICs0OTcsMjYgQEAKIAlncmVwIGZpbGUwIGFjdHVhbAogJwogCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdhdm9pZCBjb3JydXB0IHN0cmVhbSB3aXRoIG5vbi1leGlzdGVudCBtYXJrJyAnCisJdGVzdF9jcmVhdGVfcmVwbyBhdm9pZF9ub25fZXhpc3RlbnRfbWFyayAmJgorCSgKKwkJY2QgYXZvaWRfbm9uX2V4aXN0ZW50X21hcmsgJiYKKworCQl0ZXN0X2NvbW1pdCBpbXBvcnRhbnQtcGF0aCAmJgorCisJCXRlc3RfY29tbWl0IGlnbm9yZWQgJiYKKworCQlnaXQgYnJhbmNoIEEgJiYKKwkJZ2l0IGJyYW5jaCBCICYmCisKKwkJZWNobyBmb28gPj5pbXBvcnRhbnQtcGF0aC50ICYmCisJCWdpdCBhZGQgaW1wb3J0YW50LXBhdGgudCAmJgorCQl0ZXN0X2NvbW1pdCBtb3JlIGNoYW5nZXMgJiYKKworCQlnaXQgZmFzdC1leHBvcnQgLS1hbGwgLS0gaW1wb3J0YW50LXBhdGgudCB8IGdpdCBmYXN0LWltcG9ydCAtLWZvcmNlCisJKQorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdmdWxsLXRyZWUgcmUtc2hvd3MgdW5tb2RpZmllZCBmaWxlcycgICAgICAgICcKIAlnaXQgY2hlY2tvdXQgLWYgc2ltcGxlICYmCiAJZ2l0IGZhc3QtZXhwb3J0IC0tZnVsbC10cmVlIHNpbXBsZSA+YWN0dWFsICYmCkBAIC0zODksMTAgKzU0MCw0MSBAQAogJwogCiAjIE5FRURTV09SSzogbm90IGp1c3QgY2hlY2sgcmV0dXJuIHN0YXR1cywgYnV0IHZhbGlkYXRlIHRoZSBvdXRwdXQKKyMgTm90ZSB0aGF0IHRoZXNlIHRlc3RzIERPIE5PVEhJTkcgb3RoZXIgdGhhbiBwcmludCBhIHdhcm5pbmcgdGhhdAorIyB0aGV5IGFyZSBvbWl0dGluZyB0aGUgb25lIHRhZyB3ZSBhc2tlZCB0aGVtIHRvIGV4cG9ydCAoYmVjYXVzZSB0aGUKKyMgdGFncyByZXNvbHZlIHRvIGEgdHJlZSkuICBUaGV5IGV4aXN0IGp1c3QgdG8gbWFrZSBzdXJlIHdlIGRvIG5vdAorIyBhYm9ydCBidXQgaW5zdGVhZCBqdXN0IHdhcm4uCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd0cmVlX3RhZy1vYmonICAgICdnaXQgZmFzdC1leHBvcnQgdHJlZV90YWctb2JqJwogdGVzdF9leHBlY3Rfc3VjY2VzcyAndGFnLW9ial90YWcnICAgICAnZ2l0IGZhc3QtZXhwb3J0IHRhZy1vYmpfdGFnJwogdGVzdF9leHBlY3Rfc3VjY2VzcyAndGFnLW9ial90YWctb2JqJyAnZ2l0IGZhc3QtZXhwb3J0IHRhZy1vYmpfdGFnLW9iaicKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnaGFuZGxpbmcgdGFncyBvZiBibG9icycgJworCWdpdCB0YWcgLWEgLW0gIlRhZyBvZiBhIGJsb2IiIGJsb2J0YWcgJChnaXQgcmV2LXBhcnNlIG1hc3RlcjpmaWxlKSAmJgorCWdpdCBmYXN0LWV4cG9ydCBibG9idGFnID5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdCA8PC1FT0YgJiYKKwlibG9iCisJbWFyayA6MQorCWRhdGEgOQorCWRpZSBMdWZ0CisKKwl0YWcgYmxvYnRhZworCWZyb20gOjEKKwl0YWdnZXIgJEdJVF9DT01NSVRURVJfTkFNRSA8JEdJVF9DT01NSVRURVJfRU1BSUw+ICRHSVRfQ09NTUlUVEVSX0RBVEUKKwlkYXRhIDE0CisJVGFnIG9mIGEgYmxvYgorCisJRU9GCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdoYW5kbGluZyBuZXN0ZWQgdGFncycgJworCWdpdCB0YWcgLWEgLW0gIlRoaXMgaXMgYSBuZXN0ZWQgdGFnIiBuZXN0ZWQgbXVzcyAmJgorCWdpdCBmYXN0LWV4cG9ydCAtLW1hcmstdGFncyBuZXN0ZWQgPm91dHB1dCAmJgorCWdyZXAgIl5mcm9tICRaRVJPX09JRCQiIG91dHB1dCAmJgorCWdyZXAgIl50YWcgbmVzdGVkJCIgb3V0cHV0ID50YWdfbGluZXMgJiYKKwl0ZXN0X2xpbmVfY291bnQgPSAyIHRhZ19saW5lcworJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkaXJlY3RvcnkgYmVjb21lcyBzeW1saW5rJyAgICAgICAgJwogCWdpdCBpbml0IGRpcnRvc3ltbGluayAmJgogCWdpdCBpbml0IHJlc3VsdCAmJgpAQCAtNDQ0LDE3ICs2MjYsMTUgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdCBiaWRpcmVjdGlvbmFsaXR5JyAnCi0JPm1hcmtzLWN1ciAmJgotCT5tYXJrcy1uZXcgJiYKIAlnaXQgaW5pdCBtYXJrcy10ZXN0ICYmCi0JZ2l0IGZhc3QtZXhwb3J0IC0tZXhwb3J0LW1hcmtzPW1hcmtzLWN1ciAtLWltcG9ydC1tYXJrcz1tYXJrcy1jdXIgLS1icmFuY2hlcyB8IFwKLQlnaXQgLS1naXQtZGlyPW1hcmtzLXRlc3QvLmdpdCBmYXN0LWltcG9ydCAtLWV4cG9ydC1tYXJrcz1tYXJrcy1uZXcgLS1pbXBvcnQtbWFya3M9bWFya3MtbmV3ICYmCisJZ2l0IGZhc3QtZXhwb3J0IC0tZXhwb3J0LW1hcmtzPW1hcmtzLWN1ciAtLWltcG9ydC1tYXJrcy1pZi1leGlzdHM9bWFya3MtY3VyIC0tYnJhbmNoZXMgfCBcCisJZ2l0IC0tZ2l0LWRpcj1tYXJrcy10ZXN0Ly5naXQgZmFzdC1pbXBvcnQgLS1leHBvcnQtbWFya3M9bWFya3MtbmV3IC0taW1wb3J0LW1hcmtzLWlmLWV4aXN0cz1tYXJrcy1uZXcgJiYKIAkoY2QgbWFya3MtdGVzdCAmJgogCWdpdCByZXNldCAtLWhhcmQgJiYKIAllY2hvIFdvaGxhdWYgPiBmaWxlICYmCiAJZ2l0IGNvbW1pdCAtYSAtbSAiYmFjayBpbiB0aW1lIikgJiYKLQlnaXQgLS1naXQtZGlyPW1hcmtzLXRlc3QvLmdpdCBmYXN0LWV4cG9ydCAtLWV4cG9ydC1tYXJrcz1tYXJrcy1uZXcgLS1pbXBvcnQtbWFya3M9bWFya3MtbmV3IC0tYnJhbmNoZXMgfCBcCi0JZ2l0IGZhc3QtaW1wb3J0IC0tZXhwb3J0LW1hcmtzPW1hcmtzLWN1ciAtLWltcG9ydC1tYXJrcz1tYXJrcy1jdXIKKwlnaXQgLS1naXQtZGlyPW1hcmtzLXRlc3QvLmdpdCBmYXN0LWV4cG9ydCAtLWV4cG9ydC1tYXJrcz1tYXJrcy1uZXcgLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzPW1hcmtzLW5ldyAtLWJyYW5jaGVzIHwgXAorCWdpdCBmYXN0LWltcG9ydCAtLWV4cG9ydC1tYXJrcz1tYXJrcy1jdXIgLS1pbXBvcnQtbWFya3MtaWYtZXhpc3RzPW1hcmtzLWN1cgogJwogCiBjYXQgPiBleHBlY3RlZCA8PCBFT0YKQEAgLTUwOSwxMCArNjg5LDIwIEBACiAJdGVzdF9jbXAgZXhwZWN0ZWQgYWN0dWFsCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2RlbGV0ZSByZWZzcGVjJyAnCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdkZWxldGUgcmVmIGJlY2F1c2UgZW50aXJlIGhpc3RvcnkgZXhjbHVkZWQnICcKIAlnaXQgYnJhbmNoIHRvLWRlbGV0ZSAmJgotCWdpdCBmYXN0LWV4cG9ydCAtLXJlZnNwZWMgOnJlZnMvaGVhZHMvdG8tZGVsZXRlIHRvLWRlbGV0ZSBedG8tZGVsZXRlID4gYWN0dWFsICYmCi0JY2F0ID4gZXhwZWN0ZWQgPDwtRU9GICYmCisJZ2l0IGZhc3QtZXhwb3J0IHRvLWRlbGV0ZSBedG8tZGVsZXRlID5hY3R1YWwgJiYKKwljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgorCXJlc2V0IHJlZnMvaGVhZHMvdG8tZGVsZXRlCisJZnJvbSAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCisKKwlFT0YKKwl0ZXN0X2NtcCBleHBlY3RlZCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZGVsZXRlIHJlZnNwZWMnICcKKwlnaXQgZmFzdC1leHBvcnQgLS1yZWZzcGVjIDpyZWZzL2hlYWRzL3RvLWRlbGV0ZSA+YWN0dWFsICYmCisJY2F0ID5leHBlY3RlZCA8PC1FT0YgJiYKIAlyZXNldCByZWZzL2hlYWRzL3RvLWRlbGV0ZQogCWZyb20gMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAogCmRpZmYgLS1naXQgYS90L3Q5MzUwL2Jyb2tlbi1pc28tODg1OS03LWNvbW1pdC1tZXNzYWdlLnR4dCBiL3QvdDkzNTAvYnJva2VuLWlzby04ODU5LTctY29tbWl0LW1lc3NhZ2UudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQwNmFkNzUKLS0tIC9kZXYvbnVsbAorKysgYi90L3Q5MzUwL2Jyb2tlbi1pc28tODg1OS03LWNvbW1pdC1tZXNzYWdlLnR4dApAQCAtMCwwICsxIEBACitQaTog8DsgSW52YWxpZDog/wpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3QvdDkzNTAvc2ltcGxlLWlzby04ODU5LTctY29tbWl0LW1lc3NhZ2UudHh0IGIvdC90OTM1MC9zaW1wbGUtaXNvLTg4NTktNy1jb21taXQtbWVzc2FnZS50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGIzZjBjMwotLS0gL2Rldi9udWxsCisrKyBiL3QvdDkzNTAvc2ltcGxlLWlzby04ODU5LTctY29tbWl0LW1lc3NhZ2UudHh0CkBAIC0wLDAgKzEgQEAKK1BpOiDwClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvdC90OTUwMi1naXR3ZWItc3RhbmRhbG9uZS1wYXJzZS1vdXRwdXQuc2ggYi90L3Q5NTAyLWdpdHdlYi1zdGFuZGFsb25lLXBhcnNlLW91dHB1dC5zaAppbmRleCAwNzk2YTQzLi5lMzhjYmM5IDEwMDc1NQotLS0gYS90L3Q5NTAyLWdpdHdlYi1zdGFuZGFsb25lLXBhcnNlLW91dHB1dC5zaAorKysgYi90L3Q5NTAyLWdpdHdlYi1zdGFuZGFsb25lLXBhcnNlLW91dHB1dC5zaApAQCAtMTg4LDggKzE4OCw4IEBACiAnCiAKIHhzcygpIHsKLQllY2hvID4mMiAiQ2hlY2tpbmcgJDEuLi4iICYmCi0JZ2l0d2ViX3J1biAiJDEiICYmCisJZWNobyA+JjIgIkNoZWNraW5nICQqLi4uIiAmJgorCWdpdHdlYl9ydW4gIiRAIiAmJgogCWlmIGdyZXAgIiRUQUciIGdpdHdlYi5ib2R5OyB0aGVuCiAJCWVjaG8gPiYyICJ4c3M6ICRUQUcgc2hvdWxkIGhhdmUgYmVlbiBxdW90ZWQgaW4gb3V0cHV0IgogCQlyZXR1cm4gMQpAQCAtMjAwLDcgKzIwMCw4IEBACiB0ZXN0X2V4cGVjdF9zdWNjZXNzICd4c3MgY2hlY2tzJyAnCiAJVEFHPSI8bWFnaWMteHNzLXRhZz4iICYmCiAJeHNzICJhPXJzcyZwPSRUQUciICYmCi0JeHNzICJhPXJzcyZwPWZvby5naXQmZj0kVEFHIgorCXhzcyAiYT1yc3MmcD1mb28uZ2l0JmY9JFRBRyIgJiYKKwl4c3MgIiIgIiRUQUcrIgogJwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MDAtZ2l0LXA0LWJhc2ljLnNoIGIvdC90OTgwMC1naXQtcDQtYmFzaWMuc2gKaW5kZXggNzI5Y2QyNS4uYzk4YzFkZiAxMDA3NTUKLS0tIGEvdC90OTgwMC1naXQtcDQtYmFzaWMuc2gKKysrIGIvdC90OTgwMC1naXQtcDQtYmFzaWMuc2gKQEAgLTIwMiw3ICsyMDIsNiBAQAogCQlleHBvcnQgUEFUSCAmJgogCQl0ZXN0X2V4cGVjdF9jb2RlIDEgZ2l0IHA0IGNsb25lIC0tZGVzdD0iJGdpdCIgLy9kZXBvdCA+ZXJycyAyPiYxCiAJKSAmJgotCWNhdCBlcnJzICYmCiAJdGVzdF9pMThuZ3JlcCAhIFRyYWNlYmFjayBlcnJzCiAnCiAKQEAgLTMyNiw4ICszMjUsNCBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAotJwotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MDEtZ2l0LXA0LWJyYW5jaC5zaCBiL3QvdDk4MDEtZ2l0LXA0LWJyYW5jaC5zaAppbmRleCA2YTg2ZDY5Li42N2ZmMjcxIDEwMDc1NQotLS0gYS90L3Q5ODAxLWdpdC1wNC1icmFuY2guc2gKKysrIGIvdC90OTgwMS1naXQtcDQtYnJhbmNoLnNoCkBAIC0xNTEsNyArMTUxLDcgQEAKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAncmVzdGFydCBwNGQnICcKLQlraWxsX3A0ZCAmJgorCXN0b3BfYW5kX2NsZWFudXBfcDRkICYmCiAJc3RhcnRfcDRkCiAnCiAKQEAgLTQxMSw2ICs0MTEsNDYgQEAKIAkpCiAnCiAKKyMgQ2hlY2sgdGhhdCBleGNsdWRlZCBmaWxlcyBhcmUgb21pdHRlZCBkdXJpbmcgaW1wb3J0Cit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgcDQgY2xvbmUgY29tcGxleCBicmFuY2hlcyB3aXRoIGV4Y2x1ZGVkIGZpbGVzJyAnCisJdGVzdF93aGVuX2ZpbmlzaGVkIGNsZWFudXBfZ2l0ICYmCisJdGVzdF9jcmVhdGVfcmVwbyAiJGdpdCIgJiYKKwkoCisJCWNkICIkZ2l0IiAmJgorCQlnaXQgY29uZmlnIGdpdC1wNC5icmFuY2hMaXN0IGJyYW5jaDE6YnJhbmNoMiAmJgorCQlnaXQgY29uZmlnIC0tYWRkIGdpdC1wNC5icmFuY2hMaXN0IGJyYW5jaDE6YnJhbmNoMyAmJgorCQlnaXQgY29uZmlnIC0tYWRkIGdpdC1wNC5icmFuY2hMaXN0IGJyYW5jaDE6YnJhbmNoNCAmJgorCQlnaXQgY29uZmlnIC0tYWRkIGdpdC1wNC5icmFuY2hMaXN0IGJyYW5jaDE6YnJhbmNoNSAmJgorCQlnaXQgY29uZmlnIC0tYWRkIGdpdC1wNC5icmFuY2hMaXN0IGJyYW5jaDE6YnJhbmNoNiAmJgorCQlnaXQgcDQgY2xvbmUgLS1kZXN0PS4gLS1kZXRlY3QtYnJhbmNoZXMgLS8vZGVwb3QvYnJhbmNoMS9maWxlMiAtLy9kZXBvdC9icmFuY2gyL2ZpbGUyIC0vL2RlcG90L2JyYW5jaDMvZmlsZTIgLS8vZGVwb3QvYnJhbmNoNC9maWxlMiAtLy9kZXBvdC9icmFuY2g1L2ZpbGUyIC0vL2RlcG90L2JyYW5jaDYvZmlsZTIgLy9kZXBvdEBhbGwgJiYKKwkJZ2l0IGxvZyAtLWFsbCAtLWdyYXBoIC0tZGVjb3JhdGUgLS1zdGF0ICYmCisJCWdpdCByZXNldCAtLWhhcmQgcDQvZGVwb3QvYnJhbmNoMSAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBmaWxlMSAmJgorCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBmaWxlMiAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBmaWxlMyAmJgorCQlnaXQgcmVzZXQgLS1oYXJkIHA0L2RlcG90L2JyYW5jaDIgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgZmlsZTEgJiYKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgZmlsZTIgJiYKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgZmlsZTMgJiYKKwkJZ2l0IHJlc2V0IC0taGFyZCBwNC9kZXBvdC9icmFuY2gzICYmCisJCXRlc3RfcGF0aF9pc19maWxlIGZpbGUxICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIGZpbGUyICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIGZpbGUzICYmCisJCWdpdCByZXNldCAtLWhhcmQgcDQvZGVwb3QvYnJhbmNoNCAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBmaWxlMSAmJgorCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBmaWxlMiAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBmaWxlMyAmJgorCQlnaXQgcmVzZXQgLS1oYXJkIHA0L2RlcG90L2JyYW5jaDUgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgZmlsZTEgJiYKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgZmlsZTIgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgZmlsZTMgJiYKKwkJZ2l0IHJlc2V0IC0taGFyZCBwNC9kZXBvdC9icmFuY2g2ICYmCisJCXRlc3RfcGF0aF9pc19maWxlIGZpbGUxICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIGZpbGUyICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIGZpbGUzCisJKQorJworCiAjIEZyb20gYSByZXBvcnQgaW4gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xMTg5MzY4OAogIyB3aGVyZSAtLXVzZS1jbGllbnQtc3BlYyBjYXVzZWQgYnJhbmNoIHByZWZpeGVzIG5vdCB0byBiZSByZW1vdmVkOwogIyBldmVyeSBmaWxlIGluIGdpdCBhcHBlYXJlZCBpbnRvIGEgc3ViZGlyZWN0b3J5IG9mIHRoZSBicmFuY2ggbmFtZS4KQEAgLTUwNSw3ICs1NDUsNyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdyZXN0YXJ0IHA0ZCcgJwotCWtpbGxfcDRkICYmCisJc3RvcF9hbmRfY2xlYW51cF9wNGQgJiYKIAlzdGFydF9wNGQKICcKIApAQCAtNjEwLDggKzY1MCw5NiBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAordGVzdF9leHBlY3Rfc3VjY2VzcyAncmVzdGFydCBwNGQgKGNhc2UgZm9sZGluZyBlbmFibGVkKScgJworCXN0b3BfYW5kX2NsZWFudXBfcDRkICYmCisJc3RhcnRfcDRkIC1DMQorJworCisjCisjIDE6IC8vZGVwb3QvbWFpbi9tZjEKKyMgMjogaW50ZWdyYXRlIC8vZGVwb3QvbWFpbi8uLi4gLT4gLy9kZXBvdC9icmFuY2gxLy4uLgorIyAzOiAvL2RlcG90L21haW4vbWYyCisjIDQ6IC8vZGVwb3QvQlJBTkNIMS9CMWYzCisjIDU6IC8vZGVwb3QvYnJhbmNoMS9iMWY0CisjCit0ZXN0X2V4cGVjdF9zdWNjZXNzICFDQVNFX0lOU0VOU0lUSVZFX0ZTICdiYXNpYyBwNCBicmFuY2hlcyBmb3IgY2FzZSBmb2xkaW5nJyAnCisJKAorCQljZCAiJGNsaSIgJiYKKwkJbWtkaXIgLXAgbWFpbiAmJgorCisJCWVjaG8gbWYxID5tYWluL21mMSAmJgorCQlwNCBhZGQgbWFpbi9tZjEgJiYKKwkJcDQgc3VibWl0IC1kICJtYWluL21mMSIgJiYKKworCQlwNCBpbnRlZ3JhdGUgLy9kZXBvdC9tYWluLy4uLiAvL2RlcG90L2JyYW5jaDEvLi4uICYmCisJCXA0IHN1Ym1pdCAtZCAiaW50ZWdyYXRlIG1haW4gdG8gYnJhbmNoMSIgJiYKKworCQllY2hvIG1mMiA+bWFpbi9tZjIgJiYKKwkJcDQgYWRkIG1haW4vbWYyICYmCisJCXA0IHN1Ym1pdCAtZCAibWFpbi9tZjIiICYmCisKKwkJbWtkaXIgQlJBTkNIMSAmJgorCQllY2hvIEIxZjMgPkJSQU5DSDEvQjFmMyAmJgorCQlwNCBhZGQgQlJBTkNIMS9CMWYzICYmCisJCXA0IHN1Ym1pdCAtZCAiQlJBTkNIMS9CMWYzIiAmJgorCisJCWVjaG8gYjFmNCA+YnJhbmNoMS9iMWY0ICYmCisJCXA0IGFkZCBicmFuY2gxL2IxZjQgJiYKKwkJcDQgc3VibWl0IC1kICJicmFuY2gxL2IxZjQiCisJKQorJworCisjIENoZWNrIHRoYXQgZmlsZXMgYXJlIHByb3Blcmx5IHNwbGl0IGFjcm9zcyBicmFuY2hlcyB3aGVuIGlnbm9yZWNhc2UgaXMgc2V0Cit0ZXN0X2V4cGVjdF9zdWNjZXNzICFDQVNFX0lOU0VOU0lUSVZFX0ZTICdnaXQgcDQgY2xvbmUsIGJyYW5jaExpc3QgYnJhbmNoIGRlZmluaXRpb24sIGlnbm9yZWNhc2UnICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgY2xlYW51cF9naXQgJiYKKwl0ZXN0X2NyZWF0ZV9yZXBvICIkZ2l0IiAmJgorCSgKKwkJY2QgIiRnaXQiICYmCisJCWdpdCBjb25maWcgZ2l0LXA0LmJyYW5jaExpc3QgbWFpbjpicmFuY2gxICYmCisJCWdpdCBjb25maWcgLS10eXBlPWJvb2wgY29yZS5pZ25vcmVDYXNlIHRydWUgJiYKKwkJZ2l0IHA0IGNsb25lIC0tZGVzdD0uIC0tZGV0ZWN0LWJyYW5jaGVzIC8vZGVwb3RAYWxsICYmCisKKwkJZ2l0IGxvZyAtLWFsbCAtLWdyYXBoIC0tZGVjb3JhdGUgLS1zdGF0ICYmCisKKwkJZ2l0IHJlc2V0IC0taGFyZCBwNC9tYXN0ZXIgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgbWYxICYmCisJCXRlc3RfcGF0aF9pc19maWxlIG1mMiAmJgorCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBCMWYzICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIGIxZjQgJiYKKworCQlnaXQgcmVzZXQgLS1oYXJkIHA0L2RlcG90L2JyYW5jaDEgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgbWYxICYmCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIG1mMiAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBCMWYzICYmCisJCXRlc3RfcGF0aF9pc19maWxlIGIxZjQKKwkpCisnCisKKyMgQ2hlY2sgdGhhdCBmaWxlcyBhcmUgcHJvcGVybHkgc3BsaXQgYWNyb3NzIGJyYW5jaGVzIHdoZW4gaWdub3JlY2FzZSBpcyBzZXQsIHVzZS1jbGllbnQtc3BlYyBjYXNlCit0ZXN0X2V4cGVjdF9zdWNjZXNzICFDQVNFX0lOU0VOU0lUSVZFX0ZTICdnaXQgcDQgY2xvbmUgd2l0aCBjbGllbnQtc3BlYywgYnJhbmNoTGlzdCBicmFuY2ggZGVmaW5pdGlvbiwgaWdub3JlY2FzZScgJworCWNsaWVudF92aWV3ICIvL2RlcG90Ly4uLiAvL2NsaWVudC8uLi4iICYmCisJdGVzdF93aGVuX2ZpbmlzaGVkIGNsZWFudXBfZ2l0ICYmCisJdGVzdF9jcmVhdGVfcmVwbyAiJGdpdCIgJiYKKwkoCisJCWNkICIkZ2l0IiAmJgorCQlnaXQgY29uZmlnIGdpdC1wNC5icmFuY2hMaXN0IG1haW46YnJhbmNoMSAmJgorCQlnaXQgY29uZmlnIC0tdHlwZT1ib29sIGNvcmUuaWdub3JlQ2FzZSB0cnVlICYmCisJCWdpdCBwNCBjbG9uZSAtLWRlc3Q9LiAtLXVzZS1jbGllbnQtc3BlYyAtLWRldGVjdC1icmFuY2hlcyAvL2RlcG90QGFsbCAmJgorCisJCWdpdCBsb2cgLS1hbGwgLS1ncmFwaCAtLWRlY29yYXRlIC0tc3RhdCAmJgorCisJCWdpdCByZXNldCAtLWhhcmQgcDQvbWFzdGVyICYmCisJCXRlc3RfcGF0aF9pc19maWxlIG1mMSAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBtZjIgJiYKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgQjFmMyAmJgorCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBiMWY0ICYmCisKKwkJZ2l0IHJlc2V0IC0taGFyZCBwNC9kZXBvdC9icmFuY2gxICYmCisJCXRlc3RfcGF0aF9pc19maWxlIG1mMSAmJgorCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBtZjIgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgQjFmMyAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBiMWY0CisJKQogJwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MDItZ2l0LXA0LWZpbGV0eXBlLnNoIGIvdC90OTgwMi1naXQtcDQtZmlsZXR5cGUuc2gKaW5kZXggOTk3ODM1Mi4uOTRlZGViZTIgMTAwNzU1Ci0tLSBhL3QvdDk4MDItZ2l0LXA0LWZpbGV0eXBlLnNoCisrKyBiL3QvdDk4MDItZ2l0LXA0LWZpbGV0eXBlLnNoCkBAIC0zMzMsOCArMzMzLDQgQEAKIAkpCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2tpbGwgcDRkJyAnCi0Ja2lsbF9wNGQKLScKLQogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q5ODAzLWdpdC1wNC1zaGVsbC1tZXRhY2hhcnMuc2ggYi90L3Q5ODAzLWdpdC1wNC1zaGVsbC1tZXRhY2hhcnMuc2gKaW5kZXggZDVjMzY3NS4uMjkxMzI3NyAxMDA3NTUKLS0tIGEvdC90OTgwMy1naXQtcDQtc2hlbGwtbWV0YWNoYXJzLnNoCisrKyBiL3QvdDk4MDMtZ2l0LXA0LXNoZWxsLW1ldGFjaGFycy5zaApAQCAtMTA1LDggKzEwNSw0IEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgwNC1naXQtcDQtbGFiZWwuc2ggYi90L3Q5ODA0LWdpdC1wNC1sYWJlbC5zaAppbmRleCBlMzBmODBlLi4zMjM2NDU3IDEwMDc1NQotLS0gYS90L3Q5ODA0LWdpdC1wNC1sYWJlbC5zaAorKysgYi90L3Q5ODA0LWdpdC1wNC1sYWJlbC5zaApAQCAtMTA4LDggKzEwOCw0IEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgwNS1naXQtcDQtc2tpcC1zdWJtaXQtZWRpdC5zaCBiL3QvdDk4MDUtZ2l0LXA0LXNraXAtc3VibWl0LWVkaXQuc2gKaW5kZXggNWZiZjkwNC4uOTBlZjY0NyAxMDA3NTUKLS0tIGEvdC90OTgwNS1naXQtcDQtc2tpcC1zdWJtaXQtZWRpdC5zaAorKysgYi90L3Q5ODA1LWdpdC1wNC1za2lwLXN1Ym1pdC1lZGl0LnNoCkBAIC05OCw4ICs5OCw0IEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgwNi1naXQtcDQtb3B0aW9ucy5zaCBiL3QvdDk4MDYtZ2l0LXA0LW9wdGlvbnMuc2gKaW5kZXggM2Y1MjkxYi4uNGU3OTRhMCAxMDA3NTUKLS0tIGEvdC90OTgwNi1naXQtcDQtb3B0aW9ucy5zaAorKysgYi90L3Q5ODA2LWdpdC1wNC1vcHRpb25zLnNoCkBAIC0zMDAsOSArMzAwLDQgQEAKIAl0ZXN0X3BhdGhfaXNfZmlsZSAiJGdpdCIvY2xpX2ZpbGUyLnQKICcKIAotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgwNy1naXQtcDQtc3VibWl0LnNoIGIvdC90OTgwNy1naXQtcDQtc3VibWl0LnNoCmluZGV4IDIzMjU1OTkuLmVhYWFlNDEgMTAwNzU1Ci0tLSBhL3QvdDk4MDctZ2l0LXA0LXN1Ym1pdC5zaAorKysgYi90L3Q5ODA3LWdpdC1wNC1zdWJtaXQuc2gKQEAgLTUwMCw2ICs1MDAsMTAgQEAKIAkpCiAnCiAKK2xhc3Rfc2hlbHZlICgpIHsKKwlwNCAtRyBjaGFuZ2VzIC1zIHNoZWx2ZWQgLW0gMSAvL2RlcG90Ly4uLiB8IG1hcnNoYWxfZHVtcCBjaGFuZ2UKK30KKwogbWFrZV9zaGVsdmVkX2NsKCkgewogCXRlc3RfY29tbWl0ICIkMSIgPi9kZXYvbnVsbCAmJgogCWdpdCBwNCBzdWJtaXQgLS1vcmlnaW4gSEVBRF4gLS1zaGVsdmUgPi9kZXYvbnVsbCAmJgpAQCAtNTMzLDE3ICs1MzcsNjAgQEAKIAkpICYmCiAJKAogCQljZCAiJGNsaSIgJiYKLQkJY2hhbmdlPSQocDQgLUcgY2hhbmdlcyAtcyBzaGVsdmVkIC1tIDEgLy9kZXBvdC8uLi4gfCBcCi0JCQkgbWFyc2hhbF9kdW1wIGNoYW5nZSkgJiYKKwkJY2hhbmdlPSQobGFzdF9zaGVsdmUpICYmCiAJCXA0IHVuc2hlbHZlIC1jICRjaGFuZ2UgLXMgJGNoYW5nZSAmJgogCQlncmVwIC1xIHVwZGF0ZWQtbGluZSBzaGVsZi50ICYmCiAJCXA0IGRlc2NyaWJlIC1TICRjaGFuZ2UgfCBncmVwIGFkZGVkLWZpbGUudCAmJgotCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBzaGVsdmVkLWNoYW5nZS0xLnQKKwkJdGVzdF9wYXRoX2lzX21pc3Npbmcgc2hlbHZlZC1jaGFuZ2UtMS50ICYmCisJCXA0IHJldmVydCAuLi4KIAkpCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2tpbGwgcDRkJyAnCi0Ja2lsbF9wNGQKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3VwZGF0ZSBhIHNoZWx2ZSBpbnZvbHZpbmcgbW92ZWQgYW5kIGNvcGllZCBmaWxlcycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCBjbGVhbnVwX2dpdCAmJgorCSgKKwkJY2QgIiRjbGkiICYmCisJCTogPmZpbGVfdG9fbW92ZSAmJgorCQlwNCBhZGQgZmlsZV90b19tb3ZlICYmCisJCXA0IHN1Ym1pdCAtZCAiY2hhbmdlMSIgJiYKKwkJcDQgZWRpdCBmaWxlX3RvX21vdmUgJiYKKwkJZWNobyBjaGFuZ2UgPj5maWxlX3RvX21vdmUgJiYKKwkJcDQgc3VibWl0IC1kICJjaGFuZ2UyIiAmJgorCQlwNCBvcGVuZWQKKwkpICYmCisJZ2l0IHA0IGNsb25lIC0tZGVzdD0iJGdpdCIgLy9kZXBvdCAmJgorCSgKKwkJY2QgIiRnaXQiICYmCisJCWdpdCBjb25maWcgZ2l0LXA0LmRldGVjdENvcGllcyB0cnVlICYmCisJCWdpdCBjb25maWcgZ2l0LXA0LmRldGVjdFJlbmFtZXMgdHJ1ZSAmJgorCQlnaXQgY29uZmlnIGdpdC1wNC5za2lwU3VibWl0RWRpdCB0cnVlICYmCisJCW1rZGlyIG1vdmVkICYmCisJCWNwIGZpbGVfdG9fbW92ZSBjb3B5X29mX2ZpbGUgJiYKKwkJZ2l0IGFkZCBjb3B5X29mX2ZpbGUgJiYKKwkJZ2l0IG12IGZpbGVfdG9fbW92ZSBtb3ZlZC8gJiYKKwkJZ2l0IGNvbW1pdCAtbSAicmVuYW1lIGEgZmlsZSIgJiYKKwkJZ2l0IHA0IHN1Ym1pdCAtTSAtLXNoZWx2ZSAtLW9yaWdpbiBIRUFEXiAmJgorCQk6ID5uZXdfZmlsZSAmJgorCQlnaXQgYWRkIG5ld19maWxlICYmCisJCWdpdCBjb21taXQgLS1hbWVuZCAmJgorCQlnaXQgc2hvdyAtLXN0YXQgSEVBRCAmJgorCQljaGFuZ2U9JChsYXN0X3NoZWx2ZSkgJiYKKwkJZ2l0IHA0IHN1Ym1pdCAtTSAtLXVwZGF0ZS1zaGVsdmUgJGNoYW5nZSAtLWNvbW1pdCBIRUFECisJKSAmJgorCSgKKwkJY2QgIiRjbGkiICYmCisJCWNoYW5nZT0kKGxhc3Rfc2hlbHZlKSAmJgorCQllY2hvIGNoYW5nZT0kY2hhbmdlICYmCisJCXA0IHVuc2hlbHZlIC1zICRjaGFuZ2UgJiYKKwkJcDQgc3VibWl0IC1kICJUZXN0aW5nIHVwZGF0ZS1zaGVsdmUiICYmCisJCXRlc3RfcGF0aF9pc19maWxlIGNvcHlfb2ZfZmlsZSAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBtb3ZlZC9maWxlX3RvX21vdmUgJiYKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgZmlsZV90b19tb3ZlICYmCisJCXRlc3RfcGF0aF9pc19maWxlIG5ld19maWxlICYmCisJCWVjaG8gInVuc2hlbHZlZCBhbmQgc3VibWl0dGVkIGNoYW5nZSAkY2hhbmdlIiAmJgorCQlwNCBjaGFuZ2VzIG1vdmVkL2ZpbGVfdG9fbW92ZSB8IGdyZXAgIlRlc3RpbmcgdXBkYXRlLXNoZWx2ZSIgJiYKKwkJcDQgY2hhbmdlcyBjb3B5X29mX2ZpbGUgfCBncmVwICJUZXN0aW5nIHVwZGF0ZS1zaGVsdmUiCisJKQogJwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MDgtZ2l0LXA0LWNoZGlyLnNoIGIvdC90OTgwOC1naXQtcDQtY2hkaXIuc2gKaW5kZXggMTFkMmI1MS4uNThhOWIzYiAxMDA3NTUKLS0tIGEvdC90OTgwOC1naXQtcDQtY2hkaXIuc2gKKysrIGIvdC90OTgwOC1naXQtcDQtY2hkaXIuc2gKQEAgLTgzLDggKzgzLDQgQEAKIAkpCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2tpbGwgcDRkJyAnCi0Ja2lsbF9wNGQKLScKLQogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q5ODA5LWdpdC1wNC1jbGllbnQtdmlldy5zaCBiL3QvdDk4MDktZ2l0LXA0LWNsaWVudC12aWV3LnNoCmluZGV4IDg5N2IzYzMuLjljOTcxMGQgMTAwNzU1Ci0tLSBhL3QvdDk4MDktZ2l0LXA0LWNsaWVudC12aWV3LnNoCisrKyBiL3QvdDk4MDktZ2l0LXA0LWNsaWVudC12aWV3LnNoCkBAIC00MDcsNyArNDA3LDcgQEAKICcKIAogIwotIyBXaGF0IGhhcHBlbnMgd2hlbiB0d28gZmlsZXMgb2YgdGhlIHNhbWUgbmFtZSBhcmUgb3ZlcmxheWVkIHRvZ2V0aGVyPworIyBXaGF0IGhhcHBlbnMgd2hlbiB0d28gZmlsZXMgb2YgdGhlIHNhbWUgbmFtZSBhcmUgb3ZlcmxhaWQgdG9nZXRoZXI/CiAjIFRoZSBsYXN0LWxpc3RlZCBmaWxlIHNob3VsZCB0YWtlIHByZWZlcmVuY2UuCiAjCiAjIC8vZGVwb3QKQEAgLTgzNiw4ICs4MzYsNCBAQAogCWdpdF92ZXJpZnkgImNkaXIgMS9maWxlMTEiICJjZGlyIDEvZmlsZTEyIgogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgxMC1naXQtcDQtcmNzLnNoIGIvdC90OTgxMC1naXQtcDQtcmNzLnNoCmluZGV4IGNjNTNkZWIuLmUzODM2ODggMTAwNzU1Ci0tLSBhL3QvdDk4MTAtZ2l0LXA0LXJjcy5zaAorKysgYi90L3Q5ODEwLWdpdC1wNC1yY3Muc2gKQEAgLTI5NCw3ICsyOTQsNiBAQAogCQllY2hvICJcJFJldmlzaW9uXCQiID5rd2RlbGZpbGUuYyAmJgogCQlwNCBhZGQgLXQga3RleHQga3dkZWxmaWxlLmMgJiYKIAkJcDQgc3VibWl0IC1kICJBZGQgZmlsZSB0byBiZSBkZWxldGVkIiAmJgotCQljYXQga3dkZWxmaWxlLmMgJiYKIAkJZ3JlcCAxIGt3ZGVsZmlsZS5jCiAJKSAmJgogCWdpdCBwNCBjbG9uZSAtLWRlc3Q9IiRnaXQiIC8vZGVwb3QgJiYKQEAgLTM2MCw4ICszNTksNCBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAotJwotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MTEtZ2l0LXA0LWxhYmVsLWltcG9ydC5zaCBiL3QvdDk4MTEtZ2l0LXA0LWxhYmVsLWltcG9ydC5zaAppbmRleCA2MDJiMGE1Li5jMTQ0NmYyIDEwMDc1NQotLS0gYS90L3Q5ODExLWdpdC1wNC1sYWJlbC1pbXBvcnQuc2gKKysrIGIvdC90OTgxMS1naXQtcDQtbGFiZWwtaW1wb3J0LnNoCkBAIC0xOTEsNyArMTkxLDcgQEAKIAkoCiAJCWNkICIkY2xpIiAmJgogCQlwNCBzeW5jIC4uLiAmJgotCQkhKHA0IGxhYmVscyB8IGdyZXAgR0lUX1RBR19PTl9BX0JSQU5DSCkKKwkJISBwNCBsYWJlbHMgfCBncmVwIEdJVF9UQUdfT05fQV9CUkFOQ0gKIAkpCiAnCiAKQEAgLTI1OSw5ICsyNTksNCBAQAogCSkKICcKIAotCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgxMi1naXQtcDQtd2lsZGNhcmRzLnNoIGIvdC90OTgxMi1naXQtcDQtd2lsZGNhcmRzLnNoCmluZGV4IDAyMDY3NzEuLjI1NGE3YzIgMTAwNzU1Ci0tLSBhL3QvdDk4MTItZ2l0LXA0LXdpbGRjYXJkcy5zaAorKysgYi90L3Q5ODEyLWdpdC1wNC13aWxkY2FyZHMuc2gKQEAgLTIxMSw4ICsyMTEsNCBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAotJwotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MTMtZ2l0LXA0LXByZXNlcnZlLXVzZXJzLnNoIGIvdC90OTgxMy1naXQtcDQtcHJlc2VydmUtdXNlcnMuc2gKaW5kZXggNzgzYzZhZC4uZmQwMThjOCAxMDA3NTUKLS0tIGEvdC90OTgxMy1naXQtcDQtcHJlc2VydmUtdXNlcnMuc2gKKysrIGIvdC90OTgxMy1naXQtcDQtcHJlc2VydmUtdXNlcnMuc2gKQEAgLTEzOCw4ICsxMzgsNCBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAotJwotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MTQtZ2l0LXA0LXJlbmFtZS5zaCBiL3QvdDk4MTQtZ2l0LXA0LXJlbmFtZS5zaAppbmRleCA2MGJhYTA2Li40Njg3NjdjIDEwMDc1NQotLS0gYS90L3Q5ODE0LWdpdC1wNC1yZW5hbWUuc2gKKysrIGIvdC90OTgxNC1naXQtcDQtcmVuYW1lLnNoCkBAIC0yNDIsOCArMjQyLDQgQEAKIAkpCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2tpbGwgcDRkJyAnCi0Ja2lsbF9wNGQKLScKLQogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q5ODE1LWdpdC1wNC1zdWJtaXQtZmFpbC5zaCBiL3QvdDk4MTUtZ2l0LXA0LXN1Ym1pdC1mYWlsLnNoCmluZGV4IGVhZjAzYTYuLjk3NzlkYzAgMTAwNzU1Ci0tLSBhL3QvdDk4MTUtZ2l0LXA0LXN1Ym1pdC1mYWlsLnNoCisrKyBiL3QvdDk4MTUtZ2l0LXA0LXN1Ym1pdC1mYWlsLnNoCkBAIC00MjIsOCArNDIyLDQgQEAKIAkpCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2tpbGwgcDRkJyAnCi0Ja2lsbF9wNGQKLScKLQogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q5ODE2LWdpdC1wNC1sb2NrZWQuc2ggYi90L3Q5ODE2LWdpdC1wNC1sb2NrZWQuc2gKaW5kZXggZDA0OGJkMy4uOTMyODQxMCAxMDA3NTUKLS0tIGEvdC90OTgxNi1naXQtcDQtbG9ja2VkLnNoCisrKyBiL3QvdDk4MTYtZ2l0LXA0LWxvY2tlZC5zaApAQCAtMTM4LDggKzEzOCw0IEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgxNy1naXQtcDQtZXhjbHVkZS5zaCBiL3QvdDk4MTctZ2l0LXA0LWV4Y2x1ZGUuc2gKaW5kZXggYWFjNTY4ZS4uZWMzZDkzNyAxMDA3NTUKLS0tIGEvdC90OTgxNy1naXQtcDQtZXhjbHVkZS5zaAorKysgYi90L3Q5ODE3LWdpdC1wNC1leGNsdWRlLnNoCkBAIC0yMiw3ICsyMiw5IEBACiAJCW1rZGlyIC1wIHdhbnRlZCBkaXNjYXJkICYmCiAJCWVjaG8gd2FudGVkID53YW50ZWQvZm9vICYmCiAJCWVjaG8gZGlzY2FyZCA+ZGlzY2FyZC9mb28gJiYKLQkJcDQgYWRkIHdhbnRlZC9mb28gZGlzY2FyZC9mb28gJiYKKwkJZWNobyBkaXNjYXJkX2ZpbGUgPmRpc2NhcmRfZmlsZSAmJgorCQllY2hvIGRpc2NhcmRfZmlsZV9ub3QgPmRpc2NhcmRfZmlsZV9ub3QgJiYKKwkJcDQgYWRkIHdhbnRlZC9mb28gZGlzY2FyZC9mb28gZGlzY2FyZF9maWxlIGRpc2NhcmRfZmlsZV9ub3QgJiYKIAkJcDQgc3VibWl0IC1kICJpbml0aWFsIHJldmlzaW9uIgogCSkKICcKQEAgLTMzLDcgKzM1LDkgQEAKIAkoCiAJCWNkICIkZ2l0IiAmJgogCQl0ZXN0X3BhdGhfaXNfZmlsZSB3YW50ZWQvZm9vICYmCi0JCXRlc3RfcGF0aF9pc19maWxlIGRpc2NhcmQvZm9vCisJCXRlc3RfcGF0aF9pc19maWxlIGRpc2NhcmQvZm9vICYmCisJCXRlc3RfcGF0aF9pc19maWxlIGRpc2NhcmRfZmlsZSAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBkaXNjYXJkX2ZpbGVfbm90CiAJKQogJwogCkBAIC00Myw3ICs0NywyMSBAQAogCSgKIAkJY2QgIiRnaXQiICYmCiAJCXRlc3RfcGF0aF9pc19maWxlIHdhbnRlZC9mb28gJiYKLQkJdGVzdF9wYXRoX2lzX21pc3NpbmcgZGlzY2FyZC9mb28KKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgZGlzY2FyZC9mb28gJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgZGlzY2FyZF9maWxlICYmCisJCXRlc3RfcGF0aF9pc19maWxlIGRpc2NhcmRfZmlsZV9ub3QKKwkpCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2Nsb25lLCBleGNsdWRpbmcgc2luZ2xlIGZpbGUsIG5vIHRyYWlsaW5nIC8nICcKKwl0ZXN0X3doZW5fZmluaXNoZWQgY2xlYW51cF9naXQgJiYKKwlnaXQgcDQgY2xvbmUgLS8vZGVwb3QvZGlzY2FyZF9maWxlIC0tZGVzdD0iJGdpdCIgLy9kZXBvdC8uLi5AYWxsICYmCisJKAorCQljZCAiJGdpdCIgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgd2FudGVkL2ZvbyAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBkaXNjYXJkL2ZvbyAmJgorCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBkaXNjYXJkX2ZpbGUgJiYKKwkJdGVzdF9wYXRoX2lzX2ZpbGUgZGlzY2FyZF9maWxlX25vdAogCSkKICcKIApAQCAtNTIsMjAgKzcwLDM5IEBACiAJZ2l0IHA0IGNsb25lIC0vL2RlcG90L2Rpc2NhcmQvLi4uIC0tZGVzdD0iJGdpdCIgLy9kZXBvdC8uLi5AYWxsICYmCiAJKAogCQljZCAiJGNsaSIgJiYKLQkJcDQgZWRpdCB3YW50ZWQvZm9vIGRpc2NhcmQvZm9vICYmCisJCXA0IGVkaXQgd2FudGVkL2ZvbyBkaXNjYXJkL2ZvbyBkaXNjYXJkX2ZpbGVfbm90ICYmCiAJCWRhdGUgPj53YW50ZWQvZm9vICYmCiAJCWRhdGUgPj5kaXNjYXJkL2ZvbyAmJgorCQlkYXRlID4+ZGlzY2FyZF9maWxlX25vdCAmJgogCQlwNCBzdWJtaXQgLWQgInVwZGF0aW5nIiAmJgogCiAJCWNkICIkZ2l0IiAmJgogCQlnaXQgcDQgc3luYyAtLy9kZXBvdC9kaXNjYXJkLy4uLiAmJgogCQl0ZXN0X3BhdGhfaXNfZmlsZSB3YW50ZWQvZm9vICYmCi0JCXRlc3RfcGF0aF9pc19taXNzaW5nIGRpc2NhcmQvZm9vCisJCXRlc3RfcGF0aF9pc19taXNzaW5nIGRpc2NhcmQvZm9vICYmCisJCXRlc3RfcGF0aF9pc19maWxlIGRpc2NhcmRfZmlsZSAmJgorCQl0ZXN0X3BhdGhfaXNfZmlsZSBkaXNjYXJkX2ZpbGVfbm90CiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdjbG9uZSwgdGhlbiBzeW5jIHdpdGggZXhjbHVkZSwgbm8gdHJhaWxpbmcgLycgJworCXRlc3Rfd2hlbl9maW5pc2hlZCBjbGVhbnVwX2dpdCAmJgorCWdpdCBwNCBjbG9uZSAtLy9kZXBvdC9kaXNjYXJkLy4uLiAtLy9kZXBvdC9kaXNjYXJkX2ZpbGUgLS1kZXN0PSIkZ2l0IiAvL2RlcG90Ly4uLkBhbGwgJiYKKwkoCisJCWNkICIkY2xpIiAmJgorCQlwNCBlZGl0IHdhbnRlZC9mb28gZGlzY2FyZC9mb28gZGlzY2FyZF9maWxlX25vdCAmJgorCQlkYXRlID4+d2FudGVkL2ZvbyAmJgorCQlkYXRlID4+ZGlzY2FyZC9mb28gJiYKKwkJZGF0ZSA+PmRpc2NhcmRfZmlsZV9ub3QgJiYKKwkJcDQgc3VibWl0IC1kICJ1cGRhdGluZyIgJiYKKworCQljZCAiJGdpdCIgJiYKKwkJZ2l0IHA0IHN5bmMgLS8vZGVwb3QvZGlzY2FyZC8uLi4gLS8vZGVwb3QvZGlzY2FyZF9maWxlICYmCisJCXRlc3RfcGF0aF9pc19maWxlIHdhbnRlZC9mb28gJiYKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgZGlzY2FyZC9mb28gJiYKKwkJdGVzdF9wYXRoX2lzX21pc3NpbmcgZGlzY2FyZF9maWxlICYmCisJCXRlc3RfcGF0aF9pc19maWxlIGRpc2NhcmRfZmlsZV9ub3QKKwkpCiAnCiAKIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgxOC1naXQtcDQtYmxvY2suc2ggYi90L3Q5ODE4LWdpdC1wNC1ibG9jay5zaAppbmRleCBjZTdjYjIyLi4wZGI3YWI5IDEwMDc1NQotLS0gYS90L3Q5ODE4LWdpdC1wNC1ibG9jay5zaAorKysgYi90L3Q5ODE4LWdpdC1wNC1ibG9jay5zaApAQCAtMTQ2LDggKzE0Niw0IEBACiAJdGVzdF9saW5lX2NvdW50IFw+IDEwIGxvZwogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgxOS1naXQtcDQtY2FzZS1mb2xkaW5nLnNoIGIvdC90OTgxOS1naXQtcDQtY2FzZS1mb2xkaW5nLnNoCmluZGV4IGQ4MDhjMDAuLjYwMGNlMWUgMTAwNzU1Ci0tLSBhL3QvdDk4MTktZ2l0LXA0LWNhc2UtZm9sZGluZy5zaAorKysgYi90L3Q5ODE5LWdpdC1wNC1jYXNlLWZvbGRpbmcuc2gKQEAgLTUzLDggKzUzLDQgQEAKIAl0ZXN0X211c3RfZmFpbCBnaXQgcDQgY2xvbmUgLy9kZXBvdC91Yy8uLi4KICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAotJwotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MjAtZ2l0LXA0LWVkaXRvci1oYW5kbGluZy5zaCBiL3QvdDk4MjAtZ2l0LXA0LWVkaXRvci1oYW5kbGluZy5zaAppbmRleCAzYzIyZjc0Li5mYTFiYmExIDEwMDc1NQotLS0gYS90L3Q5ODIwLWdpdC1wNC1lZGl0b3ItaGFuZGxpbmcuc2gKKysrIGIvdC90OTgyMC1naXQtcDQtZWRpdG9yLWhhbmRsaW5nLnNoCkBAIC0zMSw4ICszMSw0IEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgyMS1naXQtcDQtcGF0aC12YXJpYXRpb25zLnNoIGIvdC90OTgyMS1naXQtcDQtcGF0aC12YXJpYXRpb25zLnNoCmluZGV4IDgxZTQ2YWMuLmVmODBmMTYgMTAwNzU1Ci0tLSBhL3QvdDk4MjEtZ2l0LXA0LXBhdGgtdmFyaWF0aW9ucy5zaAorKysgYi90L3Q5ODIxLWdpdC1wNC1wYXRoLXZhcmlhdGlvbnMuc2gKQEAgLTE5Myw4ICsxOTMsNCBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAotJwotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MjItZ2l0LXA0LXBhdGgtZW5jb2Rpbmcuc2ggYi90L3Q5ODIyLWdpdC1wNC1wYXRoLWVuY29kaW5nLnNoCmluZGV4IGM3ODQ3N2MuLjU3MmQzOTUgMTAwNzU1Ci0tLSBhL3QvdDk4MjItZ2l0LXA0LXBhdGgtZW5jb2Rpbmcuc2gKKysrIGIvdC90OTgyMi1naXQtcDQtcGF0aC1lbmNvZGluZy5zaApAQCAtNyw2ICs3LDEzIEBACiBVVEY4X0VTQ0FQRUQ9ImEtXDMwM1wyNDRfby1cMzAzXDI2Nl91LVwzMDNcMjc0LnR4dCIKIElTTzg4NTlfRVNDQVBFRD0iYS1cMzQ0X28tXDM2Nl91LVwzNzQudHh0IgogCitJU084ODU5PSIkKHByaW50ZiAiJElTTzg4NTlfRVNDQVBFRCIpIiAmJgorZWNobyBjb250ZW50MTIzID4iJElTTzg4NTkiICYmCitybSAiJElTTzg4NTkiIHx8IHsKKwlza2lwX2FsbD0iZnMgZG9lcyBub3QgYWNjZXB0IElTTy04ODU5LTEgZmlsZW5hbWVzIgorCXRlc3RfZG9uZQorfQorCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzdGFydCBwNGQnICcKIAlzdGFydF9wNGQKICcKQEAgLTY3LDggKzc0LDQgQEAKIAkpCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2tpbGwgcDRkJyAnCi0Ja2lsbF9wNGQKLScKLQogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q5ODIzLWdpdC1wNC1tb2NrLWxmcy5zaCBiL3QvdDk4MjMtZ2l0LXA0LW1vY2stbGZzLnNoCmluZGV4IDFmMmRjMzYuLjg4Yjc2ZGMgMTAwNzU1Ci0tLSBhL3QvdDk4MjMtZ2l0LXA0LW1vY2stbGZzLnNoCisrKyBiL3QvdDk4MjMtZ2l0LXA0LW1vY2stbGZzLnNoCkBAIC0xODUsOCArMTg1LDQgQEAKIAkpCiAnCiAKLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2tpbGwgcDRkJyAnCi0Ja2lsbF9wNGQKLScKLQogdGVzdF9kb25lCmRpZmYgLS1naXQgYS90L3Q5ODI0LWdpdC1wNC1naXQtbGZzLnNoIGIvdC90OTgyNC1naXQtcDQtZ2l0LWxmcy5zaAppbmRleCBlZDgwY2E4Li5hMjhkYmJkIDEwMDc1NQotLS0gYS90L3Q5ODI0LWdpdC1wNC1naXQtbGZzLnNoCisrKyBiL3QvdDk4MjQtZ2l0LXA0LWdpdC1sZnMuc2gKQEAgLTI4Nyw4ICsyODcsNCBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAotJwotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MjUtZ2l0LXA0LWhhbmRsZS11dGYxNi13aXRob3V0LWJvbS5zaCBiL3QvdDk4MjUtZ2l0LXA0LWhhbmRsZS11dGYxNi13aXRob3V0LWJvbS5zaAppbmRleCAxNTUxODQ1Li5mMDQ5ZmY4IDEwMDc1NQotLS0gYS90L3Q5ODI1LWdpdC1wNC1oYW5kbGUtdXRmMTYtd2l0aG91dC1ib20uc2gKKysrIGIvdC90OTgyNS1naXQtcDQtaGFuZGxlLXV0ZjE2LXdpdGhvdXQtYm9tLnNoCkBAIC00Myw4ICs0Myw0IEBACiAJZ2l0IHA0IGNsb25lIC0tZGVzdD0iJGdpdCIgLy9kZXBvdAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgyNi1naXQtcDQta2VlcC1lbXB0eS1jb21taXRzLnNoIGIvdC90OTgyNi1naXQtcDQta2VlcC1lbXB0eS1jb21taXRzLnNoCmluZGV4IGZhOGI5ZGEuLmZkNjRhZmUgMTAwNzU1Ci0tLSBhL3QvdDk4MjYtZ2l0LXA0LWtlZXAtZW1wdHktY29tbWl0cy5zaAorKysgYi90L3Q5ODI2LWdpdC1wNC1rZWVwLWVtcHR5LWNvbW1pdHMuc2gKQEAgLTEyNyw4ICsxMjcsNCBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAotJwotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MjctZ2l0LXA0LWNoYW5nZS1maWxldHlwZS5zaCBiL3QvdDk4MjctZ2l0LXA0LWNoYW5nZS1maWxldHlwZS5zaAppbmRleCA3NDMzOTk4Li5kMzY3MGJkIDEwMDc1NQotLS0gYS90L3Q5ODI3LWdpdC1wNC1jaGFuZ2UtZmlsZXR5cGUuc2gKKysrIGIvdC90OTgyNy1naXQtcDQtY2hhbmdlLWZpbGV0eXBlLnNoCkBAIC01OSw4ICs1OSw0IEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgyOC1naXQtcDQtbWFwLXVzZXIuc2ggYi90L3Q5ODI4LWdpdC1wNC1tYXAtdXNlci5zaAppbmRleCBlMjAzOTVjLi5jYTZjMjk0IDEwMDc1NQotLS0gYS90L3Q5ODI4LWdpdC1wNC1tYXAtdXNlci5zaAorKysgYi90L3Q5ODI4LWdpdC1wNC1tYXAtdXNlci5zaApAQCAtNTQsOCArNTQsNCBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAotJwotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MjktZ2l0LXA0LWpvYnMuc2ggYi90L3Q5ODI5LWdpdC1wNC1qb2JzLnNoCmluZGV4IDk3MWFlZWUuLjg4Y2ZiMWYgMTAwNzU1Ci0tLSBhL3QvdDk4MjktZ2l0LXA0LWpvYnMuc2gKKysrIGIvdC90OTgyOS1naXQtcDQtam9icy5zaApAQCAtOTIsOCArOTIsNCBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAotJwotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MzAtZ2l0LXA0LXN5bWxpbmstZGlyLnNoIGIvdC90OTgzMC1naXQtcDQtc3ltbGluay1kaXIuc2gKaW5kZXggMmFkMWIwOC4uM2ZiNjk2MCAxMDA3NTUKLS0tIGEvdC90OTgzMC1naXQtcDQtc3ltbGluay1kaXIuc2gKKysrIGIvdC90OTgzMC1naXQtcDQtc3ltbGluay1kaXIuc2gKQEAgLTM2LDggKzM2LDQgQEAKIAogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdraWxsIHA0ZCcgJwotCWtpbGxfcDRkCi0nCi0KIHRlc3RfZG9uZQpkaWZmIC0tZ2l0IGEvdC90OTgzMS1naXQtcDQtdHJpZ2dlcnMuc2ggYi90L3Q5ODMxLWdpdC1wNC10cmlnZ2Vycy5zaAppbmRleCBiZTQ0Yzk3Li5kNzQzY2EzIDEwMDc1NQotLS0gYS90L3Q5ODMxLWdpdC1wNC10cmlnZ2Vycy5zaAorKysgYi90L3Q5ODMxLWdpdC1wNC10cmlnZ2Vycy5zaApAQCAtOTYsOCArOTYsNCBAQAogCSkKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAotJwotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MzItdW5zaGVsdmUuc2ggYi90L3Q5ODMyLXVuc2hlbHZlLnNoCmluZGV4IDQxYzA5ZjEuLmU5Mjc2YzQgMTAwNzU1Ci0tLSBhL3QvdDk4MzItdW5zaGVsdmUuc2gKKysrIGIvdC90OTgzMi11bnNoZWx2ZS5zaApAQCAtMjIsNyArMjIsMTAgQEAKIAkJOiA+ZmlsZV90b19tb3ZlICYmCiAJCXA0IGFkZCBmaWxlX3RvX2RlbGV0ZSAmJgogCQlwNCBhZGQgZmlsZV90b19tb3ZlICYmCi0JCXA0IHN1Ym1pdCAtZCAiYWRkIGZpbGVzIHRvIGRlbGV0ZSIKKwkJcDQgc3VibWl0IC1kICJhZGQgZmlsZXMgdG8gZGVsZXRlIiAmJgorCQllY2hvIGZpbGVfdG9faW50ZWdyYXRlID5maWxlX3RvX2ludGVncmF0ZSAmJgorCQlwNCBhZGQgZmlsZV90b19pbnRlZ3JhdGUgJiYKKwkJcDQgc3VibWl0IC1kICJhZGQgZmlsZSB0byBpbnRlZ3JhdGUiCiAJKQogJwogCkBAIC00MCw2ICs0Myw3IEBACiAJCXA0IGRlbGV0ZSBmaWxlX3RvX2RlbGV0ZSAmJgogCQlwNCBlZGl0IGZpbGVfdG9fbW92ZSAmJgogCQlwNCBtb3ZlIGZpbGVfdG9fbW92ZSBtb3ZlZF9maWxlICYmCisJCXA0IGludGVncmF0ZSBmaWxlX3RvX2ludGVncmF0ZSBpbnRlZ3JhdGVkX2ZpbGUgJiYKIAkJcDQgb3BlbmVkICYmCiAJCXA0IHNoZWx2ZSAtaSA8PEVPRgogQ2hhbmdlOiBuZXcKQEAgLTUzLDYgKzU3LDcgQEAKIAkvL2RlcG90L2ZpbGVfdG9fZGVsZXRlCiAJLy9kZXBvdC9maWxlX3RvX21vdmUKIAkvL2RlcG90L21vdmVkX2ZpbGUKKwkvL2RlcG90L2ludGVncmF0ZWRfZmlsZQogRU9GCiAKIAkpICYmCkBAIC02NSw2ICs3MCw3IEBACiAJCXRlc3RfcGF0aF9pc19maWxlIGZpbGUyICYmCiAJCXRlc3RfY21wIGZpbGUxICIkY2xpIi9maWxlMSAmJgogCQl0ZXN0X2NtcCBmaWxlMiAiJGNsaSIvZmlsZTIgJiYKKwkJdGVzdF9jbXAgZmlsZV90b19pbnRlZ3JhdGUgIiRjbGkiL2ludGVncmF0ZWRfZmlsZSAmJgogCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBmaWxlX3RvX2RlbGV0ZSAmJgogCQl0ZXN0X3BhdGhfaXNfbWlzc2luZyBmaWxlX3RvX21vdmUgJiYKIAkJdGVzdF9wYXRoX2lzX2ZpbGUgbW92ZWRfZmlsZQpAQCAtMTc0LDggKzE4MCw1IEBACiAJCXRlc3RfcGF0aF9pc19maWxlIGZpbGVfdG9fc2hlbHZlCiAJKQogJwotdGVzdF9leHBlY3Rfc3VjY2VzcyAna2lsbCBwNGQnICcKLQlraWxsX3A0ZAotJwogCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk4MzMtZXJyb3JzLnNoIGIvdC90OTgzMy1lcnJvcnMuc2gKaW5kZXggMjc3ZDM0Ny4uZTIyMzY5YyAxMDA3NTUKLS0tIGEvdC90OTgzMy1lcnJvcnMuc2gKKysrIGIvdC90OTgzMy1lcnJvcnMuc2gKQEAgLTQ1LDM2ICs0NSw0IEBACiAJKQogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdjcmVhdGUgZ3JvdXAgd2l0aCBzaG9ydCB0aWNrZXQgZXhwaXJ5JyAnCi0JUDRUSUNLRVRTPSIkY2xpL3RpY2tldHMiICYmCi0JZWNobyAibmV3cGFzc3dvcmQiIHwgcDQgbG9naW4gJiYKLQlwNF9hZGRfdXNlciBzaG9ydF9leHBpcnlfdXNlciAmJgotCXA0IC11IHNob3J0X2V4cGlyeV91c2VyIHBhc3N3ZCAtUCBwYXNzd29yZCAmJgotCXA0IGdyb3VwIC1pIDw8LUVPRiAmJgotCUdyb3VwOiB0ZXN0Z3JvdXAKLQlUaW1lb3V0OiAzCi0JVXNlcnM6IHNob3J0X2V4cGlyeV91c2VyCi0JRU9GCi0KLQlwNCB1c2VycyB8IGdyZXAgc2hvcnRfZXhwaXJ5X3VzZXIKLScKLQotdGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IG9wZXJhdGlvbiB3aXRoIGV4cGlyZWQgdGlja2V0JyAnCi0JUDRUSUNLRVRTPSIkY2xpL3RpY2tldHMiICYmCi0JUDRVU0VSPXNob3J0X2V4cGlyeV91c2VyICYmCi0JZWNobyAicGFzc3dvcmQiIHwgcDQgbG9naW4gJiYKLQkoCi0JCWNkICIkZ2l0IiAmJgotCQlnaXQgcDQgc3luYyAmJgotCQlzbGVlcCA1ICYmCi0JCXRlc3RfbXVzdF9mYWlsIGdpdCBwNCBzeW5jIDI+ZXJybXNnICYmCi0JCWdyZXAgImZhaWx1cmUgYWNjZXNzaW5nIGRlcG90IiBlcnJtc2cKLQkpCi0nCi0KLXRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2tpbGwgcDRkJyAnCi0Ja2lsbF9wNGQKLScKLQotCiB0ZXN0X2RvbmUKZGlmZiAtLWdpdCBhL3QvdDk5MDItY29tcGxldGlvbi5zaCBiL3QvdDk5MDItY29tcGxldGlvbi5zaAppbmRleCAxMzdmZGM5Li41NTA1ZTVhIDEwMDc1NQotLS0gYS90L3Q5OTAyLWNvbXBsZXRpb24uc2gKKysrIGIvdC90OTkwMi1jb21wbGV0aW9uLnNoCkBAIC0yOCwxMCArMjgsMTAgQEAKICMKICMgKDIpIEEgdGVzdCBtYWtlcyBzdXJlIHRoYXQgY29tbW9uIHN1YmNvbW1hbmRzIGFyZSBpbmNsdWRlZCBpbiB0aGUKICMgICAgIGNvbXBsZXRpb24gZm9yICJnaXQgPFRBQj4iLCBhbmQgYSBwbHVtYmluZyBpcyBleGNsdWRlZC4gICJhZGQiLAotIyAgICAgImZpbHRlci1icmFuY2giIGFuZCAibHMtZmlsZXMiIGFyZSBsaXN0ZWQgZm9yIHRoaXMuCisjICAgICAicmViYXNlIiBhbmQgImxzLWZpbGVzIiBhcmUgbGlzdGVkIGZvciB0aGlzLgogCi1HSVRfVEVTVElOR19BTExfQ09NTUFORF9MSVNUPSdhZGQgY2hlY2tvdXQgY2hlY2stYXR0ciBmaWx0ZXItYnJhbmNoIGxzLWZpbGVzJwotR0lUX1RFU1RJTkdfUE9SQ0VMQUlOX0NPTU1BTkRfTElTVD0nYWRkIGNoZWNrb3V0IGZpbHRlci1icmFuY2gnCitHSVRfVEVTVElOR19BTExfQ09NTUFORF9MSVNUPSdhZGQgY2hlY2tvdXQgY2hlY2stYXR0ciByZWJhc2UgbHMtZmlsZXMnCitHSVRfVEVTVElOR19QT1JDRUxBSU5fQ09NTUFORF9MSVNUPSdhZGQgY2hlY2tvdXQgcmViYXNlJwogCiAuICIkR0lUX0JVSUxEX0RJUi9jb250cmliL2NvbXBsZXRpb24vZ2l0LWNvbXBsZXRpb24uYmFzaCIKIApAQCAtMzc4LDcgKzM3OCw3IEBACiAnCiAKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnX19naXRkaXIgLSByZXR1cm5zIGVycm9yIHdoZW4gY2FudCBmaW5kIHJlcG8nICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ19fZ2l0ZGlyIC0gcmV0dXJucyBlcnJvciB3aGVuIGNhbm5vdCBmaW5kIHJlcG8nICcKIAkoCiAJCV9fZ2l0X2Rpcj0ibm9uLWV4aXN0aW5nIiAmJgogCQl0ZXN0X211c3RfZmFpbCBfX2dpdGRpciA+IiRhY3R1YWwiCkBAIC05NDUsNyArOTQ1LDcgQEAKIAlybSAtZiAuZ2l0L0ZFVENIX0hFQUQKICcKIAotdGVzdF9leHBlY3Rfc3VjY2VzcyAnX19naXRfcmVmcyAtIGRvbnQgZmlsdGVyIHJlZnMgdW5sZXNzIHRvbGQgc28nICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ19fZ2l0X3JlZnMgLSBkbyBub3QgZmlsdGVyIHJlZnMgdW5sZXNzIHRvbGQgc28nICcKIAljYXQgPmV4cGVjdGVkIDw8LUVPRiAmJgogCUhFQUQKIAltYXN0ZXIKQEAgLTEyNTcsNyArMTI1Nyw3IEBACiAJCSMgSW4gdGhlIGZvbGxvd2luZyB0ZXN0cyBjYWxsaW5nIHRoaXMgZnVuY3Rpb24gd2Ugb25seQogCQkjIGNhcmUgYWJvdXQgaG93IF9fZ2l0X2NvbXBsZXRlX2luZGV4X2ZpbGUoKSBkZWFscyB3aXRoCiAJCSMgdW51c3VhbCBjaGFyYWN0ZXJzIGluIHBhdGggbmFtZXMuICBCeSByZXF1ZXN0aW5nIG9ubHkKLQkJIyB1bnRyYWNrZWQgZmlsZXMgd2UgZG9udCBoYXZlIHRvIGJvdGhlciBhZGRpbmcgYW55CisJCSMgdW50cmFja2VkIGZpbGVzIHdlIGRvIG5vdCBoYXZlIHRvIGJvdGhlciBhZGRpbmcgYW55CiAJCSMgcGF0aHMgdG8gdGhlIGluZGV4IGluIHRob3NlIHRlc3RzLgogCQlfX2dpdF9jb21wbGV0ZV9pbmRleF9maWxlIC0tb3RoZXJzICYmCiAJCXByaW50X2NvbXAKQEAgLTEzNjMsNiArMTM2Myw2MyBAQAogCSAgICAgICBCU1xcZGlyICckJ3NlcGFyYXRvcnNcMDM0aW5cMDM1ZGlyJycKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnX19naXRfZmluZF9vbl9jbWRsaW5lIC0gc2luZ2xlIG1hdGNoJyAnCisJZWNobyBsaXN0ID5leHBlY3QgJiYKKwkoCisJCXdvcmRzPShnaXQgY29tbWFuZCAtLW9wdCBsaXN0KSAmJgorCQljd29yZD0keyN3b3Jkc1tAXX0gJiYKKwkJX19naXRfZmluZF9vbl9jbWRsaW5lICJhZGQgbGlzdCByZW1vdmUiID5hY3R1YWwKKwkpICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdfX2dpdF9maW5kX29uX2NtZGxpbmUgLSBtdWx0aXBsZSBtYXRjaGVzJyAnCisJZWNobyByZW1vdmUgPmV4cGVjdCAmJgorCSgKKwkJd29yZHM9KGdpdCBjb21tYW5kIC1vIC0tb3B0IHJlbW92ZSBsaXN0IGFkZCkgJiYKKwkJY3dvcmQ9JHsjd29yZHNbQF19ICYmCisJCV9fZ2l0X2ZpbmRfb25fY21kbGluZSAiYWRkIGxpc3QgcmVtb3ZlIiA+YWN0dWFsCisJKSAmJgorCXRlc3RfY21wIGV4cGVjdCBhY3R1YWwKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnX19naXRfZmluZF9vbl9jbWRsaW5lIC0gbm8gbWF0Y2gnICcKKwkoCisJCXdvcmRzPShnaXQgY29tbWFuZCAtLW9wdCBicmFuY2gpICYmCisJCWN3b3JkPSR7I3dvcmRzW0BdfSAmJgorCQlfX2dpdF9maW5kX29uX2NtZGxpbmUgImFkZCBsaXN0IHJlbW92ZSIgPmFjdHVhbAorCSkgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ19fZ2l0X2ZpbmRfb25fY21kbGluZSAtIHNpbmdsZSBtYXRjaCB3aXRoIGluZGV4JyAnCisJZWNobyAiMyBsaXN0IiA+ZXhwZWN0ICYmCisJKAorCQl3b3Jkcz0oZ2l0IGNvbW1hbmQgLS1vcHQgbGlzdCkgJiYKKwkJY3dvcmQ9JHsjd29yZHNbQF19ICYmCisJCV9fZ2l0X2ZpbmRfb25fY21kbGluZSAtLXNob3ctaWR4ICJhZGQgbGlzdCByZW1vdmUiID5hY3R1YWwKKwkpICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdfX2dpdF9maW5kX29uX2NtZGxpbmUgLSBtdWx0aXBsZSBtYXRjaGVzIHdpdGggaW5kZXgnICcKKwllY2hvICI0IHJlbW92ZSIgPmV4cGVjdCAmJgorCSgKKwkJd29yZHM9KGdpdCBjb21tYW5kIC1vIC0tb3B0IHJlbW92ZSBsaXN0IGFkZCkgJiYKKwkJY3dvcmQ9JHsjd29yZHNbQF19ICYmCisJCV9fZ2l0X2ZpbmRfb25fY21kbGluZSAtLXNob3ctaWR4ICJhZGQgbGlzdCByZW1vdmUiID5hY3R1YWwKKwkpICYmCisJdGVzdF9jbXAgZXhwZWN0IGFjdHVhbAorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdfX2dpdF9maW5kX29uX2NtZGxpbmUgLSBubyBtYXRjaCB3aXRoIGluZGV4JyAnCisJKAorCQl3b3Jkcz0oZ2l0IGNvbW1hbmQgLS1vcHQgYnJhbmNoKSAmJgorCQljd29yZD0keyN3b3Jkc1tAXX0gJiYKKwkJX19naXRfZmluZF9vbl9jbWRsaW5lIC0tc2hvdy1pZHggImFkZCBsaXN0IHJlbW92ZSIgPmFjdHVhbAorCSkgJiYKKwl0ZXN0X211c3RfYmVfZW1wdHkgYWN0dWFsCisnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ19fZ2l0X2dldF9jb25maWdfdmFyaWFibGVzJyAnCiAJY2F0ID5leHBlY3QgPDwtRU9GICYmCkBAIC0xMzkyLDEyICsxNDQ5LDEyIEBACiAJIyBidWlsdC1pbgogCWdyZXAgLXEgIl5hZGQgXCQiIG91dCAmJgogCSMgc2NyaXB0Ci0JZ3JlcCAtcSAiXmZpbHRlci1icmFuY2ggXCQiIG91dCAmJgorCWdyZXAgLXEgIl5yZWJhc2UgXCQiIG91dCAmJgogCSMgcGx1bWJpbmcKIAkhIGdyZXAgLXEgIl5scy1maWxlcyBcJCIgb3V0ICYmCiAKLQlydW5fY29tcGxldGlvbiAiZ2l0IGYiICYmCi0JISBncmVwIC1xIC12ICJeZiIgb3V0CisJcnVuX2NvbXBsZXRpb24gImdpdCByIiAmJgorCSEgZ3JlcCAtcSAtdiAiXnIiIG91dAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdkb3VibGUgZGFzaCAiZ2l0IiBpdHNlbGYnICcKQEAgLTE0MzQsOCArMTQ5MSwxMiBAQAogCS0taWdub3JlLW90aGVyLXdvcmt0cmVlcyBaCiAJLS1yZWN1cnNlLXN1Ym1vZHVsZXMgWgogCS0tcHJvZ3Jlc3MgWgotCS0tbm8tcXVpZXQgWgorCS0tZ3Vlc3MgWgorCS0tbm8tZ3Vlc3MgWgogCS0tbm8tLi4uIFoKKwktLW92ZXJsYXkgWgorCS0tcGF0aHNwZWMtZmlsZS1udWwgWgorCS0tcGF0aHNwZWMtZnJvbS1maWxlPVoKIAlFT0YKICcKIApAQCAtMTQ4Miw2ICsxNTQzLDEyIEBACiAJdGVzdF9jb21wbGV0aW9uICJnaXQgLS1oZWxwIGNvcmUiICJjb3JlLXR1dG9yaWFsICIKICcKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnY29tcGxldGlvbi5jb21tYW5kcyByZW1vdmVzIG11bHRpcGxlIGNvbW1hbmRzJyAnCisJdGVzdF9jb25maWcgY29tcGxldGlvbi5jb21tYW5kcyAiLWNoZXJyeSAtbWVyZ2V0b29sIiAmJgorCWdpdCAtLWxpc3QtY21kcz1saXN0LW1haW5wb3JjZWxhaW4sbGlzdC1jb21wbGV0ZSxjb25maWcgPm91dCAmJgorCSEgZ3JlcCAtRSAiXihjaGVycnl8bWVyZ2V0b29sKSQiIG91dAorJworCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdzZXR1cCBmb3IgaW50ZWdyYXRpb24gdGVzdHMnICcKIAllY2hvIGNvbnRlbnQgPmZpbGUxICYmCiAJZWNobyBtb3JlID5maWxlMiAmJgpAQCAtMTUxNSw4ICsxNTgyLDggQEAKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyAnPHJlZj46IGNvbXBsZXRlcyBwYXRocycgJwogCXRlc3RfY29tcGxldGlvbiAiZ2l0IHNob3cgbXl0YWc6ZiIgPDwtXEVPRgotCWZpbGUxIFoKLQlmaWxlMiBaCisJZmlsZTFaCisJZmlsZTJaCiAJRU9GCiAnCiAKQEAgLTE1MjUsNyArMTU5Miw3IEBACiAJZ2l0IGFkZCAibmFtZSB3aXRoIHNwYWNlcyIgJiYKIAlnaXQgY29tbWl0IC1tIHNwYWNlcyAmJgogCXRlc3RfY29tcGxldGlvbiAiZ2l0IHNob3cgSEVBRDpuYW0iIDw8LVxFT0YKLQluYW1lIHdpdGggc3BhY2VzIFoKKwluYW1lIHdpdGggc3BhY2VzWgogCUVPRgogJwogCkBAIC0xNTM0LDEzICsxNjAxLDE2IEBACiAJZ2l0IGFkZCAibmFtZSB3aXRoIFwke21ldGF9IiAmJgogCWdpdCBjb21taXQgLW0gbWV0YSAmJgogCXRlc3RfY29tcGxldGlvbiAiZ2l0IHNob3cgSEVBRDpuYW0iIDw8LVxFT0YKLQluYW1lIHdpdGggJHttZXRhfSBaCi0JbmFtZSB3aXRoIHNwYWNlcyBaCisJbmFtZSB3aXRoICR7bWV0YX1aCisJbmFtZSB3aXRoIHNwYWNlc1oKIAlFT0YKICcKIAogdGVzdF9leHBlY3Rfc3VjY2VzcyBQRVJMICdzZW5kLWVtYWlsJyAnCi0JdGVzdF9jb21wbGV0aW9uICJnaXQgc2VuZC1lbWFpbCAtLWNvdiIgIi0tY292ZXItbGV0dGVyICIgJiYKKwl0ZXN0X2NvbXBsZXRpb24gImdpdCBzZW5kLWVtYWlsIC0tY292IiA8PC1cRU9GICYmCisJLS1jb3Zlci1mcm9tLWRlc2NyaXB0aW9uPVoKKwktLWNvdmVyLWxldHRlciBaCisJRU9GCiAJdGVzdF9jb21wbGV0aW9uICJnaXQgc2VuZC1lbWFpbCBtYSIgIm1hc3RlciAiCiAnCiAKQEAgLTE2OTAsNiArMTc2MCw2OSBAQAogCScKIGRvbmUKIAordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IGNvbmZpZyAtIHNlY3Rpb24nICcKKwl0ZXN0X2NvbXBsZXRpb24gImdpdCBjb25maWcgYnIiIDw8LVxFT0YKKwlicmFuY2guWgorCWJyb3dzZXIuWgorCUVPRgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgY29uZmlnIC0gdmFyaWFibGUgbmFtZScgJworCXRlc3RfY29tcGxldGlvbiAiZ2l0IGNvbmZpZyBsb2cuZCIgPDwtXEVPRgorCWxvZy5kYXRlIFoKKwlsb2cuZGVjb3JhdGUgWgorCUVPRgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgY29uZmlnIC0gdmFsdWUnICcKKwl0ZXN0X2NvbXBsZXRpb24gImdpdCBjb25maWcgY29sb3IucGFnZXIgIiA8PC1cRU9GCisJZmFsc2UgWgorCXRydWUgWgorCUVPRgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgLWMgLSBzZWN0aW9uJyAnCisJdGVzdF9jb21wbGV0aW9uICJnaXQgLWMgYnIiIDw8LVxFT0YKKwlicmFuY2guWgorCWJyb3dzZXIuWgorCUVPRgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgLWMgLSB2YXJpYWJsZSBuYW1lJyAnCisJdGVzdF9jb21wbGV0aW9uICJnaXQgLWMgbG9nLmQiIDw8LVxFT0YKKwlsb2cuZGF0ZT1aCisJbG9nLmRlY29yYXRlPVoKKwlFT0YKKycKKwordGVzdF9leHBlY3Rfc3VjY2VzcyAnZ2l0IC1jIC0gdmFsdWUnICcKKwl0ZXN0X2NvbXBsZXRpb24gImdpdCAtYyBjb2xvci5wYWdlcj0iIDw8LVxFT0YKKwlmYWxzZSBaCisJdHJ1ZSBaCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBjbG9uZSAtLWNvbmZpZz0gLSBzZWN0aW9uJyAnCisJdGVzdF9jb21wbGV0aW9uICJnaXQgY2xvbmUgLS1jb25maWc9YnIiIDw8LVxFT0YKKwlicmFuY2guWgorCWJyb3dzZXIuWgorCUVPRgorJworCit0ZXN0X2V4cGVjdF9zdWNjZXNzICdnaXQgY2xvbmUgLS1jb25maWc9IC0gdmFyaWFibGUgbmFtZScgJworCXRlc3RfY29tcGxldGlvbiAiZ2l0IGNsb25lIC0tY29uZmlnPWxvZy5kIiA8PC1cRU9GCisJbG9nLmRhdGU9WgorCWxvZy5kZWNvcmF0ZT1aCisJRU9GCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ2dpdCBjbG9uZSAtLWNvbmZpZz0gLSB2YWx1ZScgJworCXRlc3RfY29tcGxldGlvbiAiZ2l0IGNsb25lIC0tY29uZmlnPWNvbG9yLnBhZ2VyPSIgPDwtXEVPRgorCWZhbHNlIFoKKwl0cnVlIFoKKwlFT0YKKycKKwogdGVzdF9leHBlY3Rfc3VjY2VzcyAnc291cmNpbmcgdGhlIGNvbXBsZXRpb24gc2NyaXB0IGNsZWFycyBjYWNoZWQgY29tbWFuZHMnICcKIAlfX2dpdF9jb21wdXRlX2FsbF9jb21tYW5kcyAmJgogCXZlcmJvc2UgdGVzdCAtbiAiJF9fZ2l0X2FsbF9jb21tYW5kcyIgJiYKQEAgLTE2OTgsNyArMTgzMSw3IEBACiAnCiAKIHRlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3NvdXJjaW5nIHRoZSBjb21wbGV0aW9uIHNjcmlwdCBjbGVhcnMgY2FjaGVkIG1lcmdlIHN0cmF0ZWdpZXMnICcKLQlHSVRfVEVTVF9HRVRURVhUX1BPSVNPTj0gJiYKKwlHSVRfVEVTVF9HRVRURVhUX1BPSVNPTj1mYWxzZSAmJgogCV9fZ2l0X2NvbXB1dGVfbWVyZ2Vfc3RyYXRlZ2llcyAmJgogCXZlcmJvc2UgdGVzdCAtbiAiJF9fZ2l0X21lcmdlX3N0cmF0ZWdpZXMiICYmCiAJLiAiJEdJVF9CVUlMRF9ESVIvY29udHJpYi9jb21wbGV0aW9uL2dpdC1jb21wbGV0aW9uLmJhc2giICYmCmRpZmYgLS1naXQgYS90L3Q5OTAzLWJhc2gtcHJvbXB0LnNoIGIvdC90OTkwMy1iYXNoLXByb21wdC5zaAppbmRleCA4MWE1MTc5Li5hYjVkYTJjIDEwMDc1NQotLS0gYS90L3Q5OTAzLWJhc2gtcHJvbXB0LnNoCisrKyBiL3QvdDk5MDMtYmFzaC1wcm9tcHQuc2gKQEAgLTE2Myw3ICsxNjMsNyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcm9tcHQgLSBpbnRlcmFjdGl2ZSByZWJhc2UnICcKLQlwcmludGYgIiAoYjF8UkVCQVNFLWkgMi8zKSIgPmV4cGVjdGVkICYmCisJcHJpbnRmICIgKGIxfFJFQkFTRSAyLzMpIiA+ZXhwZWN0ZWQgJiYKIAl3cml0ZV9zY3JpcHQgZmFrZV9lZGl0b3Iuc2ggPDwtXEVPRiAmJgogCQllY2hvICJleGVjIGVjaG8iID4iJDEiCiAJCWVjaG8gImVkaXQgJChnaXQgbG9nIC0xIC0tZm9ybWF0PSIlaCIpIiA+PiIkMSIKQEAgLTE4MCw3ICsxODAsNyBAQAogJwogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcm9tcHQgLSByZWJhc2UgbWVyZ2UnICcKLQlwcmludGYgIiAoYjJ8UkVCQVNFLW0gMS8zKSIgPmV4cGVjdGVkICYmCisJcHJpbnRmICIgKGIyfFJFQkFTRSAxLzMpIiA+ZXhwZWN0ZWQgJiYKIAlnaXQgY2hlY2tvdXQgYjIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCBjaGVja291dCBtYXN0ZXIiICYmCiAJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJlYmFzZSAtLW1lcmdlIGIxIGIyICYmCkBAIC0xODksMTEgKzE4OSwxMSBAQAogCXRlc3RfY21wIGV4cGVjdGVkICIkYWN0dWFsIgogJwogCi10ZXN0X2V4cGVjdF9zdWNjZXNzICdwcm9tcHQgLSByZWJhc2UnICcKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Byb21wdCAtIHJlYmFzZSBhbScgJwogCXByaW50ZiAiIChiMnxSRUJBU0UgMS8zKSIgPmV4cGVjdGVkICYmCiAJZ2l0IGNoZWNrb3V0IGIyICYmCiAJdGVzdF93aGVuX2ZpbmlzaGVkICJnaXQgY2hlY2tvdXQgbWFzdGVyIiAmJgotCXRlc3RfbXVzdF9mYWlsIGdpdCByZWJhc2UgYjEgYjIgJiYKKwl0ZXN0X211c3RfZmFpbCBnaXQgcmViYXNlIC0tYXBwbHkgYjEgYjIgJiYKIAl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZWJhc2UgLS1hYm9ydCIgJiYKIAlfX2dpdF9wczEgPiIkYWN0dWFsIiAmJgogCXRlc3RfY21wIGV4cGVjdGVkICIkYWN0dWFsIgpAQCAtMjExLDggKzIxMSwyNCBAQAogCiB0ZXN0X2V4cGVjdF9zdWNjZXNzICdwcm9tcHQgLSBjaGVycnktcGljaycgJwogCXByaW50ZiAiIChtYXN0ZXJ8Q0hFUlJZLVBJQ0tJTkcpIiA+ZXhwZWN0ZWQgJiYKLQl0ZXN0X211c3RfZmFpbCBnaXQgY2hlcnJ5LXBpY2sgYjEgJiYKLQl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXNldCAtLWhhcmQiICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IGNoZXJyeS1waWNrIGIxIGIxXiAmJgorCXRlc3Rfd2hlbl9maW5pc2hlZCAiZ2l0IGNoZXJyeS1waWNrIC0tYWJvcnQiICYmCisJX19naXRfcHMxID4iJGFjdHVhbCIgJiYKKwl0ZXN0X2NtcCBleHBlY3RlZCAiJGFjdHVhbCIgJiYKKwlnaXQgcmVzZXQgLS1tZXJnZSAmJgorCXRlc3RfbXVzdF9mYWlsIGdpdCByZXYtcGFyc2UgQ0hFUlJZX1BJQ0tfSEVBRCAmJgorCV9fZ2l0X3BzMSA+IiRhY3R1YWwiICYmCisJdGVzdF9jbXAgZXhwZWN0ZWQgIiRhY3R1YWwiCisnCisKK3Rlc3RfZXhwZWN0X3N1Y2Nlc3MgJ3Byb21wdCAtIHJldmVydCcgJworCXByaW50ZiAiIChtYXN0ZXJ8UkVWRVJUSU5HKSIgPmV4cGVjdGVkICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldmVydCBiMV4gYjEgJiYKKwl0ZXN0X3doZW5fZmluaXNoZWQgImdpdCByZXZlcnQgLS1hYm9ydCIgJiYKKwlfX2dpdF9wczEgPiIkYWN0dWFsIiAmJgorCXRlc3RfY21wIGV4cGVjdGVkICIkYWN0dWFsIiAmJgorCWdpdCByZXNldCAtLW1lcmdlICYmCisJdGVzdF9tdXN0X2ZhaWwgZ2l0IHJldi1wYXJzZSBSRVZFUlRfSEVBRCAmJgogCV9fZ2l0X3BzMSA+IiRhY3R1YWwiICYmCiAJdGVzdF9jbXAgZXhwZWN0ZWQgIiRhY3R1YWwiCiAnCmRpZmYgLS1naXQgYS90L3Rlc3QtbGliLWZ1bmN0aW9ucy5zaCBiL3QvdGVzdC1saWItZnVuY3Rpb25zLnNoCmluZGV4IDZiM2JiZjkuLjM1MmMyMTMgMTAwNjQ0Ci0tLSBhL3QvdGVzdC1saWItZnVuY3Rpb25zLnNoCisrKyBiL3QvdGVzdC1saWItZnVuY3Rpb25zLnNoCkBAIC0xMTYsNiArMTE2LDEzIEBACiAJdHIgJ1wwMTUnIFEgfCBzZWQgLWUgJ3MvUSQvLycKIH0KIAorIyBHZW5lcmF0ZSBhbiBvdXRwdXQgb2YgJDEgYnl0ZXMgb2YgYWxsIHplcm9lcyAoTlVMcywgbm90IEFTQ0lJIHplcm9lcykuCisjIElmICQxIGlzICdpbmZpbml0eScsIG91dHB1dCBmb3JldmVyIG9yIHVudGlsIHRoZSByZWNlaXZpbmcgcGlwZSBzdG9wcyByZWFkaW5nLAorIyB3aGljaGV2ZXIgY29tZXMgZmlyc3QuCitnZW5lcmF0ZV96ZXJvX2J5dGVzICgpIHsKKwl0ZXN0LXRvb2wgZ2VuemVyb3MgIiRAIgorfQorCiAjIEluIHNvbWUgYm91cm5lIHNoZWxsIGltcGxlbWVudGF0aW9ucywgdGhlICJ1bnNldCIgYnVpbHRpbiByZXR1cm5zCiAjIG5vbnplcm8gc3RhdHVzIHdoZW4gYSB2YXJpYWJsZSB0byBiZSB1bnNldCB3YXMgbm90IHNldCBpbiB0aGUgZmlyc3QKICMgcGxhY2UuCkBAIC0yMjEsOSArMjI4LDEzNCBAQAogIyBjYW4gYmUgYSB0YWcgcG9pbnRpbmcgdG8gdGhlIGNvbW1pdC10by1tZXJnZS4KIAogdGVzdF9tZXJnZSAoKSB7CisJbGFiZWw9IiQxIiAmJgorCXNoaWZ0ICYmCiAJdGVzdF90aWNrICYmCi0JZ2l0IG1lcmdlIC1tICIkMSIgIiQyIiAmJgotCWdpdCB0YWcgIiQxIgorCWdpdCBtZXJnZSAtbSAiJGxhYmVsIiAiJEAiICYmCisJZ2l0IHRhZyAiJGxhYmVsIgorfQorCisjIEVmZmljaWVudGx5IGNyZWF0ZSA8bnI+IGNvbW1pdHMsIGVhY2ggd2l0aCBhIHVuaXF1ZSBudW1iZXIgKGZyb20gMSB0byA8bnI+CisjIGJ5IGRlZmF1bHQpIGluIHRoZSBjb21taXQgbWVzc2FnZS4KKyMKKyMgVXNhZ2U6IHRlc3RfY29tbWl0X2J1bGsgW29wdGlvbnNdIDxucj4KKyMgICAtQyA8ZGlyPjoKKyMJUnVuIGFsbCBnaXQgY29tbWFuZHMgaW4gZGlyZWN0b3J5IDxkaXI+CisjICAgLS1yZWY9PG4+OgorIwlyZWYgb24gd2hpY2ggdG8gY3JlYXRlIGNvbW1pdHMgKGRlZmF1bHQ6IEhFQUQpCisjICAgLS1zdGFydD08bj46CisjCW51bWJlciBjb21taXQgbWVzc2FnZXMgZnJvbSA8bj4gKGRlZmF1bHQ6IDEpCisjICAgLS1tZXNzYWdlPTxtc2c+OgorIwl1c2UgPG1zZz4gYXMgdGhlIGNvbW1pdCBtZXNhc2dlIChkZWZhdWx0OiAiY29tbWl0ICVzIikKKyMgICAtLWZpbGVuYW1lPTxmbj46CisjCW1vZGlmeSA8Zm4+IGluIGVhY2ggY29tbWl0IChkZWZhdWx0OiAlcy50KQorIyAgIC0tY29udGVudHM9PHN0cmluZz46CisjCXBsYWNlIDxzdHJpbmc+IGluIGVhY2ggZmlsZSAoZGVmYXVsdDogImNvbnRlbnQgJXMiKQorIyAgIC0taWQ9PHN0cmluZz46CisjCXNob3J0aGFuZCB0byB1c2UgPHN0cmluZz4gYW5kICVzIGluIG1lc3NhZ2UsIGZpbGVuYW1lLCBhbmQgY29udGVudHMKKyMKKyMgVGhlIG1lc3NhZ2UsIGZpbGVuYW1lLCBhbmQgY29udGVudHMgc3RyaW5ncyBhcmUgZXZhbHVhdGVkIGJ5IHByaW50Ziwgd2l0aCB0aGUKKyMgZmlyc3QgIiVzIiByZXBsYWNlZCBieSB0aGUgY3VycmVudCBjb21taXQgbnVtYmVyLiBTbyB5b3UgY2FuIGRvOgorIworIyAgIHRlc3RfY29tbWl0X2J1bGsgLS1maWxlbmFtZT1maWxlIC0tY29udGVudHM9Im1vZGlmaWNhdGlvbiAlcyIKKyMKKyMgdG8gaGF2ZSBldmVyeSBjb21taXQgdG91Y2ggdGhlIHNhbWUgZmlsZSwgYnV0IHdpdGggdW5pcXVlIGNvbnRlbnQuCisjCit0ZXN0X2NvbW1pdF9idWxrICgpIHsKKwl0bXBmaWxlPS5idWxrLWNvbW1pdC5pbnB1dAorCWluZGlyPS4KKwlyZWY9SEVBRAorCW49MQorCW1lc3NhZ2U9J2NvbW1pdCAlcycKKwlmaWxlbmFtZT0nJXMudCcKKwljb250ZW50cz0nY29udGVudCAlcycKKwl3aGlsZSB0ZXN0ICQjIC1ndCAwCisJZG8KKwkJY2FzZSAiJDEiIGluCisJCS1DKQorCQkJaW5kaXI9JDIKKwkJCXNoaWZ0CisJCQk7OworCQktLXJlZj0qKQorCQkJcmVmPSR7MSMtLSo9fQorCQkJOzsKKwkJLS1zdGFydD0qKQorCQkJbj0kezEjLS0qPX0KKwkJCTs7CisJCS0tbWVzc2FnZT0qKQorCQkJbWVzc2FnZT0kezEjLS0qPX0KKwkJCTs7CisJCS0tZmlsZW5hbWU9KikKKwkJCWZpbGVuYW1lPSR7MSMtLSo9fQorCQkJOzsKKwkJLS1jb250ZW50cz0qKQorCQkJY29udGVudHM9JHsxIy0tKj19CisJCQk7OworCQktLWlkPSopCisJCQltZXNzYWdlPSIkezEjLS0qPX0gJXMiCisJCQlmaWxlbmFtZT0iJHsxIy0tKj19LSVzLnQiCisJCQljb250ZW50cz0iJHsxIy0tKj19ICVzIgorCQkJOzsKKwkJLSopCisJCQlCVUcgImludmFsaWQgdGVzdF9jb21taXRfYnVsayBvcHRpb246ICQxIgorCQkJOzsKKwkJKikKKwkJCWJyZWFrCisJCQk7OworCQllc2FjCisJCXNoaWZ0CisJZG9uZQorCXRvdGFsPSQxCisKKwlhZGRfZnJvbT0KKwlpZiBnaXQgLUMgIiRpbmRpciIgcmV2LXBhcnNlIC0tcXVpZXQgLS12ZXJpZnkgIiRyZWYiCisJdGhlbgorCQlhZGRfZnJvbT10CisJZmkKKworCXdoaWxlIHRlc3QgIiR0b3RhbCIgLWd0IDAKKwlkbworCQl0ZXN0X3RpY2sgJiYKKwkJZWNobyAiY29tbWl0ICRyZWYiCisJCXByaW50ZiAnYXV0aG9yICVzIDwlcz4gJXNcbicgXAorCQkJIiRHSVRfQVVUSE9SX05BTUUiIFwKKwkJCSIkR0lUX0FVVEhPUl9FTUFJTCIgXAorCQkJIiRHSVRfQVVUSE9SX0RBVEUiCisJCXByaW50ZiAnY29tbWl0dGVyICVzIDwlcz4gJXNcbicgXAorCQkJIiRHSVRfQ09NTUlUVEVSX05BTUUiIFwKKwkJCSIkR0lUX0NPTU1JVFRFUl9FTUFJTCIgXAorCQkJIiRHSVRfQ09NTUlUVEVSX0RBVEUiCisJCWVjaG8gImRhdGEgPDxFT0YiCisJCXByaW50ZiAiJG1lc3NhZ2VcbiIgJG4KKwkJZWNobyAiRU9GIgorCQlpZiB0ZXN0IC1uICIkYWRkX2Zyb20iCisJCXRoZW4KKwkJCWVjaG8gImZyb20gJHJlZl4wIgorCQkJYWRkX2Zyb209CisJCWZpCisJCXByaW50ZiAiTSA2NDQgaW5saW5lICRmaWxlbmFtZVxuIiAkbgorCQllY2hvICJkYXRhIDw8RU9GIgorCQlwcmludGYgIiRjb250ZW50c1xuIiAkbgorCQllY2hvICJFT0YiCisJCWVjaG8KKwkJbj0kKChuICsgMSkpCisJCXRvdGFsPSQoKHRvdGFsIC0gMSkpCisJZG9uZSA+IiR0bXBmaWxlIgorCisJZ2l0IC1DICIkaW5kaXIiIFwKKwkgICAgLWMgZmFzdGltcG9ydC51bnBhY2tsaW1pdD0wIFwKKwkgICAgZmFzdC1pbXBvcnQgPCIkdG1wZmlsZSIgfHwgcmV0dXJuIDEKKworCSMgVGhpcyB3aWxsIGJlIGxlZnQgaW4gcGxhY2Ugb24gZmFpbHVyZSwgd2hpY2ggbWF5IGFpZCBkZWJ1Z2dpbmcuCisJcm0gLWYgIiR0bXBmaWxlIgorCisJIyBJZiB3ZSB1cGRhdGVkIEhFQUQsIHRoZW4gYmUgbmljZSBhbmQgdXBkYXRlIHRoZSBpbmRleCBhbmQgd29ya2luZworCSMgdHJlZSwgdG9vLgorCWlmIHRlc3QgIiRyZWYiID0gIkhFQUQiCisJdGhlbgorCQlnaXQgLUMgIiRpbmRpciIgY2hlY2tvdXQgLWYgSEVBRCB8fCByZXR1cm4gMQorCWZpCisKIH0KIAogIyBUaGlzIGZ1bmN0aW9uIGhlbHBzIHN5c3RlbXMgd2hlcmUgY29yZS5maWxlbW9kZT1mYWxzZSBpcyBzZXQuCkBAIC0zMDIsNiArNDM0LDI2IEBACiB9CiAKIHRlc3Rfc2V0X3ByZXJlcSAoKSB7CisJaWYgdGVzdCAtbiAiJEdJVF9URVNUX0ZBSUxfUFJFUkVRU19JTlRFUk5BTCIKKwl0aGVuCisJCWNhc2UgIiQxIiBpbgorCQkjIFRoZSAiISIgY2FzZSBpcyBoYW5kbGVkIGJlbG93IHdpdGgKKwkJIyB0ZXN0X3Vuc2V0X3ByZXJlcSgpCisJCSEqKQorCQkJOzsKKwkJIyAoVGVtcG9yYXJ5Pykgd2hpdGVsaXN0IG9mIHRoaW5ncyB3ZSBjYW4ndCBlYXNpbHkKKwkJIyBwcmV0ZW5kIG5vdCB0byBzdXBwb3J0CisJCVNZTUxJTktTKQorCQkJOzsKKwkJIyBJbnNwZWN0aW5nIHdoZXRoZXIgR0lUX1RFU1RfRkFJTF9QUkVSRVFTIGlzIG9uCisJCSMgc2hvdWxkIGJlIHVuYWZmZWN0ZWQuCisJCUZBSUxfUFJFUkVRUykKKwkJCTs7CisJCSopCisJCQlyZXR1cm4KKwkJZXNhYworCWZpCisKIAljYXNlICIkMSIgaW4KIAkhKikKIAkJdGVzdF91bnNldF9wcmVyZXEgIiR7MSMhfSIKQEAgLTQzMCw3ICs1ODIsNyBAQAogCWV4cG9ydCB0ZXN0X3ByZXJlcQogCWlmICEgdGVzdF9za2lwICIkQCIKIAl0aGVuCi0JCXNheSA+JjMgImNoZWNraW5nIGtub3duIGJyZWFrYWdlOiAkMiIKKwkJc2F5ID4mMyAiY2hlY2tpbmcga25vd24gYnJlYWthZ2Ugb2YgJFRFU1RfTlVNQkVSLiR0ZXN0X2NvdW50ICckMSc6ICQyIgogCQlpZiB0ZXN0X3J1bl8gIiQyIiBleHBlY3RpbmdfZmFpbHVyZQogCQl0aGVuCiAJCQl0ZXN0X2tub3duX2Jyb2tlbl9va18gIiQxIgpAQCAtNDUwLDcgKzYwMiw3IEBACiAJZXhwb3J0IHRlc3RfcHJlcmVxCiAJaWYgISB0ZXN0X3NraXAgIiRAIgogCXRoZW4KLQkJc2F5ID4mMyAiZXhwZWN0aW5nIHN1Y2Nlc3M6ICQyIgorCQlzYXkgPiYzICJleHBlY3Rpbmcgc3VjY2VzcyBvZiAkVEVTVF9OVU1CRVIuJHRlc3RfY291bnQgJyQxJzogJDIiCiAJCWlmIHRlc3RfcnVuXyAiJDIiCiAJCXRoZW4KIAkJCXRlc3Rfb2tfICIkMSIKQEAgLTU4Niw2ICs3MzgsMTUgQEAKIAlmaQogfQogCisjIENoZWNrIGlmIHRoZSBmaWxlIGV4aXN0cyBhbmQgaGFzIGEgc2l6ZSBncmVhdGVyIHRoYW4gemVybwordGVzdF9maWxlX25vdF9lbXB0eSAoKSB7CisJaWYgISB0ZXN0IC1zICIkMSIKKwl0aGVuCisJCWVjaG8gIickMScgaXMgbm90IGEgbm9uLWVtcHR5IGZpbGUuIgorCQlmYWxzZQorCWZpCit9CisKIHRlc3RfcGF0aF9pc19taXNzaW5nICgpIHsKIAlpZiB0ZXN0IC1lICIkMSIKIAl0aGVuCkBAIC04NTEsMTkgKzEwMTIsMzAgQEAKIAlmaQogfQogCi0jIFRlc3RzIHRoYXQgaXRzIHR3byBwYXJhbWV0ZXJzIHJlZmVyIHRvIHRoZSBzYW1lIHJldmlzaW9uCisjIFRlc3RzIHRoYXQgaXRzIHR3byBwYXJhbWV0ZXJzIHJlZmVyIHRvIHRoZSBzYW1lIHJldmlzaW9uLCBvciBpZiAnIScgaXMKKyMgcHJvdmlkZWQgZmlyc3QsIHRoYXQgaXRzIG90aGVyIHR3byBwYXJhbWV0ZXJzIHJlZmVyIHRvIGRpZmZlcmVudAorIyByZXZpc2lvbnMuCiB0ZXN0X2NtcF9yZXYgKCkgeworCWxvY2FsIG9wPSc9JyB3cm9uZ19yZXN1bHQ9ZGlmZmVyZW50CisKKwlpZiB0ZXN0ICQjIC1nZSAxICYmIHRlc3QgIngkMSIgPSAneCEnCisJdGhlbgorCSAgICBvcD0nIT0nCisJICAgIHdyb25nX3Jlc3VsdD0ndGhlIHNhbWUnCisJICAgIHNoaWZ0CisJZmkKIAlpZiB0ZXN0ICQjICE9IDIKIAl0aGVuCiAJCWVycm9yICJidWcgaW4gdGhlIHRlc3Qgc2NyaXB0OiB0ZXN0X2NtcF9yZXYgcmVxdWlyZXMgdHdvIHJldmlzaW9ucywgYnV0IGdvdCAkIyIKIAllbHNlCiAJCWxvY2FsIHIxIHIyCiAJCXIxPSQoZ2l0IHJldi1wYXJzZSAtLXZlcmlmeSAiJDEiKSAmJgotCQlyMj0kKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgIiQyIikgJiYKLQkJaWYgdGVzdCAiJHIxIiAhPSAiJHIyIgorCQlyMj0kKGdpdCByZXYtcGFyc2UgLS12ZXJpZnkgIiQyIikgfHwgcmV0dXJuIDEKKworCQlpZiAhIHRlc3QgIiRyMSIgIiRvcCIgIiRyMiIKIAkJdGhlbgogCQkJY2F0ID4mNCA8PC1FT0YKLQkJCWVycm9yOiB0d28gcmV2aXNpb25zIHBvaW50IHRvIGRpZmZlcmVudCBvYmplY3RzOgorCQkJZXJyb3I6IHR3byByZXZpc2lvbnMgcG9pbnQgdG8gJHdyb25nX3Jlc3VsdCBvYmplY3RzOgogCQkJICAnJDEnOiAkcjEKIAkJCSAgJyQyJzogJHIyCiAJCQlFT0YKQEAgLTg3Miw2ICsxMDQ0LDIxIEBACiAJZmkKIH0KIAorIyBDb21wYXJlIHBhdGhzIHJlc3BlY3RpbmcgY29yZS5pZ25vcmVDYXNlCit0ZXN0X2NtcF9mc3BhdGggKCkgeworCWlmIHRlc3QgIngkMSIgPSAieCQyIgorCXRoZW4KKwkJcmV0dXJuIDAKKwlmaQorCisJaWYgdGVzdCB0cnVlICE9ICIkKGdpdCBjb25maWcgLS1nZXQgLS10eXBlPWJvb2wgY29yZS5pZ25vcmVjYXNlKSIKKwl0aGVuCisJCXJldHVybiAxCisJZmkKKworCXRlc3QgIngkKGVjaG8gIiQxIiB8IHRyIEEtWiBhLXopIiA9ICAieCQoZWNobyAiJDIiIHwgdHIgQS1aIGEteikiCit9CisKICMgUHJpbnQgYSBzZXF1ZW5jZSBvZiBpbnRlZ2VycyBpbiBpbmNyZWFzaW5nIG9yZGVyLCBlaXRoZXIgd2l0aAogIyB0d28gYXJndW1lbnRzIChzdGFydCBhbmQgZW5kKToKICMKQEAgLTkyNyw2ICsxMTE0LDM0IEBACiAJCX0gJiYgKGV4aXQgXCJcJGV2YWxfcmV0XCIpOyBldmFsX3JldD1cJD87ICR0ZXN0X2NsZWFudXAiCiB9CiAKKyMgVGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byBzY2hlZHVsZSBzb21lIGNvbW1hbmRzIHRvIGJlIHJ1bgorIyB1bmNvbmRpdGlvbmFsbHkgYXQgdGhlIGVuZCBvZiB0aGUgdGVzdCBzY3JpcHQsIGUuZy4gdG8gc3RvcCBhIGRhZW1vbjoKKyMKKyMJdGVzdF9leHBlY3Rfc3VjY2VzcyAndGVzdCBnaXQgZGFlbW9uJyAnCisjCQlnaXQgZGFlbW9uICYKKyMJCWRhZW1vbl9waWQ9JCEgJiYKKyMJCXRlc3RfYXRleGl0ICdraWxsICRkYWVtb25fcGlkJyAmJgorIwkJaGVsbG8gd29ybGQKKyMJJworIworIyBUaGUgY29tbWFuZHMgd2lsbCBiZSBleGVjdXRlZCBiZWZvcmUgdGhlIHRyYXNoIGRpcmVjdG9yeSBpcyByZW1vdmVkLAorIyBpLmUuIHRoZSBhdGV4aXQgY29tbWFuZHMgd2lsbCBzdGlsbCBiZSBhYmxlIHRvIGFjY2VzcyBhbnkgcGlkZmlsZXMgb3IKKyMgc29ja2V0IGZpbGVzLgorIworIyBOb3RlIHRoYXQgdGhlc2UgY29tbWFuZHMgd2lsbCBiZSBydW4gZXZlbiB3aGVuIGEgdGVzdCBzY3JpcHQgcnVuCisjIHdpdGggJy0taW1tZWRpYXRlJyBmYWlscy4gIEJlIGNhcmVmdWwgd2l0aCB5b3VyIGF0ZXhpdCBjb21tYW5kcyB0bworIyBtaW5pbWl6ZSBhbnkgY2hhbmdlcyB0byB0aGUgZmFpbGVkIHN0YXRlLgorCit0ZXN0X2F0ZXhpdCAoKSB7CisJIyBXZSBjYW5ub3QgZGV0ZWN0IHdoZW4gd2UgYXJlIGluIGEgc3Vic2hlbGwgaW4gZ2VuZXJhbCwgYnV0IGJ5CisJIyBkb2luZyBzbyBvbiBCYXNoIGlzIGJldHRlciB0aGFuIG5vdGhpbmcgKHRoZSB0ZXN0IHdpbGwKKwkjIHNpbGVudGx5IHBhc3Mgb24gb3RoZXIgc2hlbGxzKS4KKwl0ZXN0ICIke0JBU0hfU1VCU0hFTEwtMH0iID0gMCB8fAorCWVycm9yICJidWcgaW4gdGVzdCBzY3JpcHQ6IHRlc3RfYXRleGl0IGRvZXMgbm90aGluZyBpbiBhIHN1YnNoZWxsIgorCXRlc3RfYXRleGl0X2NsZWFudXA9InsgJCoKKwkJfSAmJiAoZXhpdCBcIlwkZXZhbF9yZXRcIik7IGV2YWxfcmV0PVwkPzsgJHRlc3RfYXRleGl0X2NsZWFudXAiCit9CisKICMgTW9zdCB0ZXN0cyBjYW4gdXNlIHRoZSBjcmVhdGVkIHJlcG9zaXRvcnksIGJ1dCBzb21lIG1heSBuZWVkIHRvIGNyZWF0ZSBtb3JlLgogIyBVc2FnZTogdGVzdF9jcmVhdGVfcmVwbyA8ZGlyZWN0b3J5PgogdGVzdF9jcmVhdGVfcmVwbyAoKSB7CkBAIC05NzEsNjIgKzExODYsNDggQEAKIAljb21tYW5kICIkUEVSTF9QQVRIIiAiJEAiIDI+JjcKIH0gNz4mMiAyPiY0CiAKLSMgSXMgdGhlIHZhbHVlIG9uZSBvZiB0aGUgdmFyaW91cyB3YXlzIHRvIHNwZWxsIGEgYm9vbGVhbiB0cnVlL2ZhbHNlPwotdGVzdF9ub3JtYWxpemVfYm9vbCAoKSB7Ci0JZ2l0IC1jIG1hZ2ljLnZhcmlhYmxlPSIkMSIgY29uZmlnIC0tYm9vbCBtYWdpYy52YXJpYWJsZSAyPi9kZXYvbnVsbAotfQorIyBHaXZlbiB0aGUgbmFtZSBvZiBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSB3aXRoIGEgYm9vbCB2YWx1ZSwgbm9ybWFsaXplCisjIGl0cyB2YWx1ZSB0byBhIDAgKHRydWUpIG9yIDEgKGZhbHNlIG9yIGVtcHR5IHN0cmluZykgcmV0dXJuIGNvZGUuCisjCisjICAgdGVzdF9ib29sX2VudiBHSVRfVEVTVF9IVFRQRCA8ZGVmYXVsdC12YWx1ZT4KKyMKKyMgUmV0dXJuIHdpdGggY29kZSBjb3JyZXNwb25kaW5nIHRvIHRoZSBnaXZlbiBkZWZhdWx0IHZhbHVlIGlmIHRoZSB2YXJpYWJsZQorIyBpcyB1bnNldC4KKyMgQWJvcnQgdGhlIHRlc3Qgc2NyaXB0IGlmIGVpdGhlciB0aGUgdmFsdWUgb2YgdGhlIHZhcmlhYmxlIG9yIHRoZSBkZWZhdWx0CisjIGFyZSBub3QgdmFsaWQgYm9vbCB2YWx1ZXMuCiAKLSMgR2l2ZW4gYSB2YXJpYWJsZSAkMSwgbm9ybWFsaXplIHRoZSB2YWx1ZSBvZiBpdCB0byBvbmUgb2YgInRydWUiLAotIyAiZmFsc2UiLCBvciAiYXV0byIgYW5kIHN0b3JlIHRoZSByZXN1bHQgdG8gaXQuCi0jCi0jICAgICB0ZXN0X3RyaXN0YXRlIEdJVF9URVNUX0hUVFBECi0jCi0jIEEgdmFyaWFibGUgc2V0IHRvIGFuIGVtcHR5IHN0cmluZyBpcyBzZXQgdG8gJ2ZhbHNlJy4KLSMgQSB2YXJpYWJsZSBzZXQgdG8gJ2ZhbHNlJyBvciAnYXV0bycga2VlcHMgaXRzIHZhbHVlLgotIyBBbnl0aGluZyBlbHNlIGlzIHNldCB0byAndHJ1ZScuCi0jIEFuIHVuc2V0IHZhcmlhYmxlIGRlZmF1bHRzIHRvICdhdXRvJy4KLSMKLSMgVGhlIGxhc3QgcnVsZSBpcyB0byBhbGxvdyBwZW9wbGUgdG8gc2V0IHRoZSB2YXJpYWJsZSB0byBhbiBlbXB0eQotIyBzdHJpbmcgYW5kIGV4cG9ydCBpdCB0byBkZWNsaW5lIHRlc3RpbmcgdGhlIHBhcnRpY3VsYXIgZmVhdHVyZQotIyBmb3IgdmVyc2lvbnMgYm90aCBiZWZvcmUgYW5kIGFmdGVyIHRoaXMgY2hhbmdlLiAgV2UgdXNlZCB0byB0cmVhdAotIyBib3RoIHVuc2V0IGFuZCBlbXB0eSB2YXJpYWJsZSBhcyBhIHNpZ25hbCBmb3IgImRvIG5vdCB0ZXN0IiBhbmQKLSMgdG9vayBhbnkgbm9uLWVtcHR5IHN0cmluZyBhcyAicGxlYXNlIHRlc3QiLgotCi10ZXN0X3RyaXN0YXRlICgpIHsKLQlpZiBldmFsICJ0ZXN0IHhcIlwkeyQxK2lzc2V0fVwiID0geGlzc2V0IgordGVzdF9ib29sX2VudiAoKSB7CisJaWYgdGVzdCAkIyAhPSAyCiAJdGhlbgotCQkjIGV4cGxpY2l0bHkgc2V0Ci0JCWV2YWwgIgotCQkJY2FzZSBcIlwkJDFcIiBpbgotCQkJJycpCSQxPWZhbHNlIDs7Ci0JCQlhdXRvKQk7OwotCQkJKikJJDE9XCQodGVzdF9ub3JtYWxpemVfYm9vbCBcJCQxIHx8IGVjaG8gdHJ1ZSkgOzsKLQkJCWVzYWMKLQkJIgotCWVsc2UKLQkJZXZhbCAiJDE9YXV0byIKKwkJQlVHICJ0ZXN0X2Jvb2xfZW52IHJlcXVpcmVzIHR3byBwYXJhbWV0ZXJzICh2YXJpYWJsZSBuYW1lIGFuZCBkZWZhdWx0IHZhbHVlKSIKIAlmaQorCisJZ2l0IGVudi0taGVscGVyIC0tdHlwZT1ib29sIC0tZGVmYXVsdD0iJDIiIC0tZXhpdC1jb2RlICIkMSIKKwlyZXQ9JD8KKwljYXNlICRyZXQgaW4KKwkwfDEpCSMgdW5zZXQgb3IgdmFsaWQgYm9vbCB2YWx1ZQorCQk7OworCSopCSMgaW52YWxpZCBib29sIHZhbHVlIG9yIHNvbWV0aGluZyB1bmV4cGVjdGVkCisJCWVycm9yID4mNyAidGVzdF9ib29sX2VudiByZXF1aXJlcyBib29sIHZhbHVlcyBib3RoIGZvciBcJCQxIGFuZCBmb3IgdGhlIGRlZmF1bHQgZmFsbGJhY2siCisJCTs7CisJZXNhYworCXJldHVybiAkcmV0CiB9CiAKICMgRXhpdCB0aGUgdGVzdCBzdWl0ZSwgZWl0aGVyIGJ5IHNraXBwaW5nIGFsbCByZW1haW5pbmcgdGVzdHMgb3IgYnkKLSMgZXhpdGluZyB3aXRoIGFuIGVycm9yLiBJZiAiJDEiIGlzICJhdXRvIiwgd2UgdGhlbiB3ZSBhc3N1bWUgd2Ugd2VyZQotIyBvcHBvcnR1bmlzdGljYWxseSB0cnlpbmcgdG8gc2V0IHVwIHNvbWUgdGVzdHMgYW5kIHdlIHNraXAuIElmIGl0IGlzCi0jICJ0cnVlIiwgdGhlbiB3ZSByZXBvcnQgYSBmYWlsdXJlLgorIyBleGl0aW5nIHdpdGggYW4gZXJyb3IuIElmIG91ciBwcmVyZXF1aXNpdGUgdmFyaWFibGUgJDEgZmFsbHMgYmFjaworIyBvbiBhIGRlZmF1bHQgYXNzdW1lIHdlIHdlcmUgb3Bwb3J0dW5pc3RpY2FsbHkgdHJ5aW5nIHRvIHNldCB1cCBzb21lCisjIHRlc3RzIGFuZCB3ZSBza2lwLiBJZiBpdCBpcyBleHBsaWNpdGx5ICJ0cnVlIiwgdGhlbiB3ZSByZXBvcnQgYSBmYWlsdXJlLgogIwogIyBUaGUgZXJyb3Ivc2tpcCBtZXNzYWdlIHNob3VsZCBiZSBnaXZlbiBieSAkMi4KICMKIHRlc3Rfc2tpcF9vcl9kaWUgKCkgewotCWNhc2UgIiQxIiBpbgotCWF1dG8pCisJaWYgISB0ZXN0X2Jvb2xfZW52ICIkMSIgZmFsc2UKKwl0aGVuCiAJCXNraXBfYWxsPSQyCiAJCXRlc3RfZG9uZQotCQk7OwotCXRydWUpCi0JCWVycm9yICIkMiIKLQkJOzsKLQkqKQotCQllcnJvciAiQlVHOiB0ZXN0IHRyaXN0YXRlIGlzICckMScgKHJlYWwgZXJyb3I6ICQyKSIKLQllc2FjCisJZmkKKwllcnJvciAiJDIiCiB9CiAKICMgVGhlIGZvbGxvd2luZyBtaW5nd18qIGZ1bmN0aW9ucyBvYmV5IFBPU0lYIHNoZWxsIHN5bnRheCwgYnV0IGFyZSBhY3R1YWxseQpAQCAtMTE5NSw2ICsxMzk2LDEyIEBACiAJJwogfQogCisjIENvbnZlcnRzIGJhc2UtMTYgZGF0YSBpbnRvIGJhc2UtOC4gVGhlIG91dHB1dCBpcyBnaXZlbiBhcyBhIHNlcXVlbmNlIG9mCisjIGVzY2FwZWQgb2N0YWxzLCBzdWl0YWJsZSBmb3IgY29uc3VtcHRpb24gYnkgJ3ByaW50ZicuCitoZXgyb2N0ICgpIHsKKwlwZXJsIC1uZSAncHJpbnRmICJcXCUwM28iLCBoZXggZm9yIC8uLi9nJworfQorCiAjIFNldCB0aGUgaGFzaCBhbGdvcml0aG0gaW4gdXNlIHRvICQxLiAgT25seSB1c2VmdWwgd2hlbiB0ZXN0aW5nIHRoZSB0ZXN0c3VpdGUuCiB0ZXN0X3NldF9oYXNoICgpIHsKIAl0ZXN0X2hhc2hfYWxnbz0iJDEiCkBAIC0xMjYzLDMgKzE0NzAsNzYgQEAKIAlmaSAmJgogCWV2YWwgInByaW50ZiAnJXMnIFwiXCR7JHZhcn1cIiIKIH0KKworIyBJbnNlcnQgYSBzbGFzaCBpbnRvIGFuIG9iamVjdCBJRCBzbyBpdCBjYW4gYmUgdXNlZCB0byByZWZlcmVuY2UgYSBsb2NhdGlvbgorIyB1bmRlciAiLmdpdC9vYmplY3RzIi4gIEZvciBleGFtcGxlLCAiZGVhZGJlZWYuLi4iIGJlY29tZXMgImRlL2FkYmVlZi4uIi4KK3Rlc3Rfb2lkX3RvX3BhdGggKCkgeworCWxvY2FsIGJhc2VuYW1lPSR7MSM/P30KKwllY2hvICIkezElJGJhc2VuYW1lfS8kYmFzZW5hbWUiCit9CisKKyMgQ2hvb3NlIGEgcG9ydCBudW1iZXIgYmFzZWQgb24gdGhlIHRlc3Qgc2NyaXB0J3MgbnVtYmVyIGFuZCBzdG9yZSBpdCBpbgorIyB0aGUgZ2l2ZW4gdmFyaWFibGUgbmFtZSwgdW5sZXNzIHRoYXQgdmFyaWFibGUgYWxyZWFkeSBjb250YWlucyBhIG51bWJlci4KK3Rlc3Rfc2V0X3BvcnQgKCkgeworCWxvY2FsIHZhcj0kMSBwb3J0CisKKwlpZiB0ZXN0ICQjIC1uZSAxIHx8IHRlc3QgLXogIiR2YXIiCisJdGhlbgorCQlCVUcgInRlc3Rfc2V0X3BvcnQgcmVxdWlyZXMgYSB2YXJpYWJsZSBuYW1lIgorCWZpCisKKwlldmFsIHBvcnQ9XCQkdmFyCisJY2FzZSAiJHBvcnQiIGluCisJIiIpCisJCSMgTm8gcG9ydCBpcyBzZXQgaW4gdGhlIGdpdmVuIGVudiB2YXIsIHVzZSB0aGUgdGVzdAorCQkjIG51bWJlciBhcyBwb3J0IG51bWJlciBpbnN0ZWFkLgorCQkjIFJlbW92ZSBub3Qgb25seSB0aGUgbGVhZGluZyAndCcsIGJ1dCBhbGwgbGVhZGluZyB6ZXJvcworCQkjIGFzIHdlbGwsIHNvIHRoZSBhcml0aG1ldGljIGJlbG93IHdvbid0IChtaXMpaW50ZXJwcmV0CisJCSMgYSB0ZXN0IG51bWJlciBsaWtlICcwMTIzJyBhcyBhbiBvY3RhbCB2YWx1ZS4KKwkJcG9ydD0ke3RoaXNfdGVzdCMke3RoaXNfdGVzdCUlWzEtOV0qfX0KKwkJaWYgdGVzdCAiJHtwb3J0Oi0wfSIgLWx0IDEwMjQKKwkJdGhlbgorCQkJIyByb290LW9ubHkgcG9ydCwgdXNlIGEgbGFyZ2VyIG9uZSBpbnN0ZWFkLgorCQkJcG9ydD0kKCgkcG9ydCArIDEwMDAwKSkKKwkJZmkKKwkJOzsKKwkqWyEwLTldKnwwKikKKwkJZXJyb3IgPiY3ICJpbnZhbGlkIHBvcnQgbnVtYmVyOiAkcG9ydCIKKwkJOzsKKwkqKQorCQkjIFRoZSB1c2VyIGhhcyBzcGVjaWZpZWQgdGhlIHBvcnQuCisJCTs7CisJZXNhYworCisJIyBNYWtlIHN1cmUgdGhhdCBwYXJhbGxlbCAnLS1zdHJlc3MnIHRlc3Qgam9icyBnZXQgZGlmZmVyZW50CisJIyBwb3J0cy4KKwlwb3J0PSQoKCRwb3J0ICsgJHtHSVRfVEVTVF9TVFJFU1NfSk9CX05SOi0wfSkpCisJZXZhbCAkdmFyPSRwb3J0Cit9CisKKyMgQ29tcGFyZSBhIGZpbGUgY29udGFpbmluZyByZXYtbGlzdCBiaXRtYXAgdHJhdmVyc2FsIG91dHB1dCB0byBpdHMgbm9uLWJpdG1hcAorIyBjb3VudGVycGFydC4gWW91IGNhbid0IGp1c3QgdXNlIHRlc3RfY21wIGZvciB0aGlzLCBiZWNhdXNlIHRoZSB0d28gcHJvZHVjZQorIyBzdWJ0bHkgZGlmZmVyZW50IG91dHB1dDoKKyMKKyMgICAtIHJlZ3VsYXIgb3V0cHV0IGlzIGluIHRyYXZlcnNhbCBvcmRlciwgd2hlcmVhcyBiaXRtYXAgaXMgc3BsaXQgYnkgdHlwZSwKKyMgICAgIHdpdGggbm9uLXBhY2tlZCBvYmplY3RzIGF0IHRoZSBlbmQKKyMKKyMgICAtIHJlZ3VsYXIgb3V0cHV0IGhhcyBhIHNwYWNlIGFuZCB0aGUgcGF0aG5hbWUgYXBwZW5kZWQgdG8gbm9uLWNvbW1pdAorIyAgICAgb2JqZWN0czsgYml0bWFwIG91dHB1dCBvbWl0cyB0aGlzCisjCisjIFRoaXMgZnVuY3Rpb24gbm9ybWFsaXplcyBhbmQgY29tcGFyZXMgdGhlIHR3by4gVGhlIHNlY29uZCBmaWxlIHNob3VsZAorIyBhbHdheXMgYmUgdGhlIGJpdG1hcCBvdXRwdXQuCit0ZXN0X2JpdG1hcF90cmF2ZXJzYWwgKCkgeworCWlmIHRlc3QgIiQxIiA9ICItLW5vLWNvbmZpcm0tYml0bWFwcyIKKwl0aGVuCisJCXNoaWZ0CisJZWxpZiBjbXAgIiQxIiAiJDIiCisJdGhlbgorCQllY2hvID4mMiAiaWRlbnRpY2FsIHJhdyBvdXRwdXRzOyBhcmUgeW91IHN1cmUgYml0bWFwcyB3ZXJlIHVzZWQ/IgorCQlyZXR1cm4gMQorCWZpICYmCisJY3V0IC1kJyAnIC1mMSAiJDEiIHwgc29ydCA+IiQxLm5vcm1hbGl6ZWQiICYmCisJc29ydCAiJDIiID4iJDIubm9ybWFsaXplZCIgJiYKKwl0ZXN0X2NtcCAiJDEubm9ybWFsaXplZCIgIiQyLm5vcm1hbGl6ZWQiICYmCisJcm0gLWYgIiQxLm5vcm1hbGl6ZWQiICIkMi5ub3JtYWxpemVkIgorfQpkaWZmIC0tZ2l0IGEvdC90ZXN0LWxpYi5zaCBiL3QvdGVzdC1saWIuc2gKaW5kZXggMGYxZmFhMi4uMGVhMWU1YSAxMDA2NDQKLS0tIGEvdC90ZXN0LWxpYi5zaAorKysgYi90L3Rlc3QtbGliLnNoCkBAIC01Nyw2ICs1NywxMyBAQAogLiAiJEdJVF9CVUlMRF9ESVIiL0dJVC1CVUlMRC1PUFRJT05TCiBleHBvcnQgUEVSTF9QQVRIIFNIRUxMX1BBVEgKIAorIyBEaXNhbGxvdyB0aGUgdXNlIG9mIGFiYnJldmlhdGVkIG9wdGlvbnMgaW4gdGhlIHRlc3Qgc3VpdGUgYnkgZGVmYXVsdAoraWYgdGVzdCAteiAiJHtHSVRfVEVTVF9ESVNBTExPV19BQkJSRVZJQVRFRF9PUFRJT05TfSIKK3RoZW4KKwlHSVRfVEVTVF9ESVNBTExPV19BQkJSRVZJQVRFRF9PUFRJT05TPXRydWUKKwlleHBvcnQgR0lUX1RFU1RfRElTQUxMT1dfQUJCUkVWSUFURURfT1BUSU9OUworZmkKKwogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogIyBJdCBhcHBlYXJzIHRoYXQgcGVvcGxlIHRyeSB0byBydW4gdGVzdHMgd2l0aG91dCBidWlsZGluZy4uLgogIiR7R0lUX1RFU1RfSU5TVEFMTEVEOi0kR0lUX0JVSUxEX0RJUn0vZ2l0JFgiID4vZGV2L251bGwKQEAgLTcxLDE5ICs3OCwyNTAgQEAKIAlleGl0IDEKIGZpCiAKKyMgUGFyc2Ugb3B0aW9ucyB3aGlsZSB0YWtpbmcgY2FyZSB0byBsZWF2ZSAkQCBpbnRhY3QsIHNvIHdlIHdpbGwgc3RpbGwKKyMgaGF2ZSBhbGwgdGhlIG9yaWdpbmFsIGNvbW1hbmQgbGluZSBvcHRpb25zIHdoZW4gZXhlY3V0aW5nIHRoZSB0ZXN0CisjIHNjcmlwdCBhZ2FpbiBmb3IgJy0tdGVlJyBhbmQgJy0tdmVyYm9zZS1sb2cnIGJlbG93Lgorc3RvcmVfYXJnX3RvPQorcHJldl9vcHQ9Citmb3Igb3B0CitkbworCWlmIHRlc3QgLW4gIiRzdG9yZV9hcmdfdG8iCisJdGhlbgorCQlldmFsICRzdG9yZV9hcmdfdG89XCRvcHQKKwkJc3RvcmVfYXJnX3RvPQorCQlwcmV2X29wdD0KKwkJY29udGludWUKKwlmaQorCisJY2FzZSAiJG9wdCIgaW4KKwktZHwtLWR8LS1kZXwtLWRlYnwtLWRlYnV8LS1kZWJ1ZykKKwkJZGVidWc9dCA7OworCS1pfC0taXwtLWltfC0taW1tfC0taW1tZXwtLWltbWVkfC0taW1tZWRpfC0taW1tZWRpYXwtLWltbWVkaWF0fC0taW1tZWRpYXRlKQorCQlpbW1lZGlhdGU9dCA7OworCS1sfC0tbHwtLWxvfC0tbG9ufC0tbG9uZ3wtLWxvbmctfC0tbG9uZy10fC0tbG9uZy10ZXwtLWxvbmctdGVzfC0tbG9uZy10ZXN0fC0tbG9uZy10ZXN0cykKKwkJR0lUX1RFU1RfTE9ORz10OyBleHBvcnQgR0lUX1RFU1RfTE9ORyA7OworCS1yKQorCQlzdG9yZV9hcmdfdG89cnVuX2xpc3QKKwkJOzsKKwktLXJ1bj0qKQorCQlydW5fbGlzdD0ke29wdCMtLSo9fSA7OworCS1ofC0taHwtLWhlfC0taGVsfC0taGVscCkKKwkJaGVscD10IDs7CisJLXZ8LS12fC0tdmV8LS12ZXJ8LS12ZXJifC0tdmVyYm98LS12ZXJib3N8LS12ZXJib3NlKQorCQl2ZXJib3NlPXQgOzsKKwktLXZlcmJvc2Utb25seT0qKQorCQl2ZXJib3NlX29ubHk9JHtvcHQjLS0qPX0KKwkJOzsKKwktcXwtLXF8LS1xdXwtLXF1aXwtLXF1aWV8LS1xdWlldCkKKwkJIyBJZ25vcmUgLS1xdWlldCB1bmRlciBhIFRBUDo6SGFybmVzcy4gU2F5aW5nIGhvdyBtYW55IHRlc3RzCisJCSMgcGFzc2VkIHdpdGhvdXQgdGhlIG9rL25vdCBvayBkZXRhaWxzIGlzIGFsd2F5cyBhbiBlcnJvci4KKwkJdGVzdCAteiAiJEhBUk5FU1NfQUNUSVZFIiAmJiBxdWlldD10IDs7CisJLS13aXRoLWRhc2hlcykKKwkJd2l0aF9kYXNoZXM9dCA7OworCS0tbm8tYmluLXdyYXBwZXJzKQorCQlub19iaW5fd3JhcHBlcnM9dCA7OworCS0tbm8tY29sb3IpCisJCWNvbG9yPSA7OworCS0tdmF8LS12YWx8LS12YWxnfC0tdmFsZ3J8LS12YWxncml8LS12YWxncmlufC0tdmFsZ3JpbmQpCisJCXZhbGdyaW5kPW1lbWNoZWNrCisJCXRlZT10CisJCTs7CisJLS12YWxncmluZD0qKQorCQl2YWxncmluZD0ke29wdCMtLSo9fQorCQl0ZWU9dAorCQk7OworCS0tdmFsZ3JpbmQtb25seT0qKQorCQl2YWxncmluZF9vbmx5PSR7b3B0Iy0tKj19CisJCXRlZT10CisJCTs7CisJLS10ZWUpCisJCXRlZT10IDs7CisJLS1yb290PSopCisJCXJvb3Q9JHtvcHQjLS0qPX0gOzsKKwktLWNoYWluLWxpbnQpCisJCUdJVF9URVNUX0NIQUlOX0xJTlQ9MSA7OworCS0tbm8tY2hhaW4tbGludCkKKwkJR0lUX1RFU1RfQ0hBSU5fTElOVD0wIDs7CisJLXgpCisJCXRyYWNlPXQgOzsKKwktVnwtLXZlcmJvc2UtbG9nKQorCQl2ZXJib3NlX2xvZz10CisJCXRlZT10CisJCTs7CisJLS13cml0ZS1qdW5pdC14bWwpCisJCXdyaXRlX2p1bml0X3htbD10CisJCTs7CisJLS1zdHJlc3MpCisJCXN0cmVzcz10IDs7CisJLS1zdHJlc3M9KikKKwkJZWNobyAiZXJyb3I6IC0tc3RyZXNzIGRvZXMgbm90IGFjY2VwdCBhbiBhcmd1bWVudDogJyRvcHQnIiA+JjIKKwkJZWNobyAiZGlkIHlvdSBtZWFuIC0tc3RyZXNzLWpvYnM9JHtvcHQjKj19IG9yIC0tc3RyZXNzLWxpbWl0PSR7b3B0Iyo9fT8iID4mMgorCQlleGl0IDEKKwkJOzsKKwktLXN0cmVzcy1qb2JzPSopCisJCXN0cmVzcz10OworCQlzdHJlc3M9JHtvcHQjLS0qPX0KKwkJY2FzZSAiJHN0cmVzcyIgaW4KKwkJKlshMC05XSp8MCp8IiIpCisJCQllY2hvICJlcnJvcjogLS1zdHJlc3Mtam9icz08Tj4gcmVxdWlyZXMgdGhlIG51bWJlciBvZiBqb2JzIHRvIHJ1biIgPiYyCisJCQlleGl0IDEKKwkJCTs7CisJCSopCSMgR29vZC4KKwkJCTs7CisJCWVzYWMKKwkJOzsKKwktLXN0cmVzcy1saW1pdD0qKQorCQlzdHJlc3M9dDsKKwkJc3RyZXNzX2xpbWl0PSR7b3B0Iy0tKj19CisJCWNhc2UgIiRzdHJlc3NfbGltaXQiIGluCisJCSpbITAtOV0qfDAqfCIiKQorCQkJZWNobyAiZXJyb3I6IC0tc3RyZXNzLWxpbWl0PTxOPiByZXF1aXJlcyB0aGUgbnVtYmVyIG9mIHJlcGV0aXRpb25zIiA+JjIKKwkJCWV4aXQgMQorCQkJOzsKKwkJKikJIyBHb29kLgorCQkJOzsKKwkJZXNhYworCQk7OworCSopCisJCWVjaG8gImVycm9yOiB1bmtub3duIHRlc3Qgb3B0aW9uICckb3B0JyIgPiYyOyBleGl0IDEgOzsKKwllc2FjCisKKwlwcmV2X29wdD0kb3B0Citkb25lCitpZiB0ZXN0IC1uICIkc3RvcmVfYXJnX3RvIgordGhlbgorCWVjaG8gImVycm9yOiAkcHJldl9vcHQgcmVxdWlyZXMgYW4gYXJndW1lbnQiID4mMgorCWV4aXQgMQorZmkKKworaWYgdGVzdCAtbiAiJHZhbGdyaW5kX29ubHkiCit0aGVuCisJdGVzdCAteiAiJHZhbGdyaW5kIiAmJiB2YWxncmluZD1tZW1jaGVjaworCXRlc3QgLXogIiR2ZXJib3NlIiAmJiB2ZXJib3NlX29ubHk9IiR2YWxncmluZF9vbmx5IgorZWxpZiB0ZXN0IC1uICIkdmFsZ3JpbmQiCit0aGVuCisJdGVzdCAteiAiJHZlcmJvc2VfbG9nIiAmJiB2ZXJib3NlPXQKK2ZpCisKK2lmIHRlc3QgLW4gIiRzdHJlc3MiCit0aGVuCisJdmVyYm9zZT10CisJdHJhY2U9dAorCWltbWVkaWF0ZT10CitmaQorCitURVNUX1NUUkVTU19KT0JfU0ZYPSIke0dJVF9URVNUX1NUUkVTU19KT0JfTlI6Ky5zdHJlc3MtJEdJVF9URVNUX1NUUkVTU19KT0JfTlJ9IgorVEVTVF9OQU1FPSIkKGJhc2VuYW1lICIkMCIgLnNoKSIKK1RFU1RfTlVNQkVSPSIke1RFU1RfTkFNRSUlLSp9IgorVEVTVF9OVU1CRVI9IiR7VEVTVF9OVU1CRVIjdH0iCitURVNUX1JFU1VMVFNfRElSPSIkVEVTVF9PVVRQVVRfRElSRUNUT1JZL3Rlc3QtcmVzdWx0cyIKK1RFU1RfUkVTVUxUU19CQVNFPSIkVEVTVF9SRVNVTFRTX0RJUi8kVEVTVF9OQU1FJFRFU1RfU1RSRVNTX0pPQl9TRlgiCitUUkFTSF9ESVJFQ1RPUlk9InRyYXNoIGRpcmVjdG9yeS4kVEVTVF9OQU1FJFRFU1RfU1RSRVNTX0pPQl9TRlgiCit0ZXN0IC1uICIkcm9vdCIgJiYgVFJBU0hfRElSRUNUT1JZPSIkcm9vdC8kVFJBU0hfRElSRUNUT1JZIgorY2FzZSAiJFRSQVNIX0RJUkVDVE9SWSIgaW4KKy8qKSA7OyAjIGFic29sdXRlIHBhdGggaXMgZ29vZAorICopIFRSQVNIX0RJUkVDVE9SWT0iJFRFU1RfT1VUUFVUX0RJUkVDVE9SWS8kVFJBU0hfRElSRUNUT1JZIiA7OworZXNhYworCisjIElmIC0tc3RyZXNzIHdhcyBwYXNzZWQsIHJ1biB0aGlzIHRlc3QgcmVwZWF0ZWRseSBpbiBzZXZlcmFsIHBhcmFsbGVsIGxvb3BzLgoraWYgdGVzdCAiJEdJVF9URVNUX1NUUkVTU19TVEFSVEVEIiA9ICJkb25lIgordGhlbgorCTogIyBEb24ndCBzdHJlc3MgdGVzdCBhZ2Fpbi4KK2VsaWYgdGVzdCAtbiAiJHN0cmVzcyIKK3RoZW4KKwlpZiB0ZXN0ICIkc3RyZXNzIiAhPSB0CisJdGhlbgorCQlqb2JfY291bnQ9JHN0cmVzcworCWVsaWYgdGVzdCAtbiAiJEdJVF9URVNUX1NUUkVTU19MT0FEIgorCXRoZW4KKwkJam9iX2NvdW50PSIkR0lUX1RFU1RfU1RSRVNTX0xPQUQiCisJZWxpZiBqb2JfY291bnQ9JChnZXRjb25mIF9OUFJPQ0VTU09SU19PTkxOIDI+L2Rldi9udWxsKSAmJgorCSAgICAgdGVzdCAtbiAiJGpvYl9jb3VudCIKKwl0aGVuCisJCWpvYl9jb3VudD0kKCgyICogJGpvYl9jb3VudCkpCisJZWxzZQorCQlqb2JfY291bnQ9OAorCWZpCisKKwlta2RpciAtcCAiJFRFU1RfUkVTVUxUU19ESVIiCisJc3RyZXNzZmFpbD0iJFRFU1RfUkVTVUxUU19CQVNFLnN0cmVzcy1mYWlsZWQiCisJcm0gLWYgIiRzdHJlc3NmYWlsIgorCisJc3RyZXNzX2V4aXQ9MAorCXRyYXAgJworCQlraWxsICRqb2JfcGlkcyAyPi9kZXYvbnVsbAorCQl3YWl0CisJCXN0cmVzc19leGl0PTEKKwknIFRFUk0gSU5UIEhVUAorCisJam9iX3BpZHM9CisJam9iX25yPTAKKwl3aGlsZSB0ZXN0ICRqb2JfbnIgLWx0ICIkam9iX2NvdW50IgorCWRvCisJCSgKKwkJCUdJVF9URVNUX1NUUkVTU19TVEFSVEVEPWRvbmUKKwkJCUdJVF9URVNUX1NUUkVTU19KT0JfTlI9JGpvYl9ucgorCQkJZXhwb3J0IEdJVF9URVNUX1NUUkVTU19TVEFSVEVEIEdJVF9URVNUX1NUUkVTU19KT0JfTlIKKworCQkJdHJhcCAnCisJCQkJa2lsbCAkdGVzdF9waWQgMj4vZGV2L251bGwKKwkJCQl3YWl0CisJCQkJZXhpdCAxCisJCQknIFRFUk0gSU5UCisKKwkJCWNudD0xCisJCQl3aGlsZSAhIHRlc3QgLWUgIiRzdHJlc3NmYWlsIiAmJgorCQkJICAgICAgeyB0ZXN0IC16ICIkc3RyZXNzX2xpbWl0IiB8fAorCQkJCXRlc3QgJGNudCAtbGUgJHN0cmVzc19saW1pdCA7IH0KKwkJCWRvCisJCQkJJFRFU1RfU0hFTExfUEFUSCAiJDAiICIkQCIgPiIkVEVTVF9SRVNVTFRTX0JBU0Uuc3RyZXNzLSRqb2JfbnIub3V0IiAyPiYxICYKKwkJCQl0ZXN0X3BpZD0kIQorCisJCQkJaWYgd2FpdCAkdGVzdF9waWQKKwkJCQl0aGVuCisJCQkJCXByaW50ZiAiT0sgICAlMmQuJWRcbiIgJEdJVF9URVNUX1NUUkVTU19KT0JfTlIgJGNudAorCQkJCWVsc2UKKwkJCQkJZWNobyAkR0lUX1RFU1RfU1RSRVNTX0pPQl9OUiA+PiIkc3RyZXNzZmFpbCIKKwkJCQkJcHJpbnRmICJGQUlMICUyZC4lZFxuIiAkR0lUX1RFU1RfU1RSRVNTX0pPQl9OUiAkY250CisJCQkJZmkKKwkJCQljbnQ9JCgoJGNudCArIDEpKQorCQkJZG9uZQorCQkpICYKKwkJam9iX3BpZHM9IiRqb2JfcGlkcyAkISIKKwkJam9iX25yPSQoKCRqb2JfbnIgKyAxKSkKKwlkb25lCisKKwl3YWl0CisKKwlpZiB0ZXN0IC1mICIkc3RyZXNzZmFpbCIKKwl0aGVuCisJCXN0cmVzc19leGl0PTEKKwkJZWNobyAiTG9nKHMpIG9mIGZhaWxlZCB0ZXN0IHJ1bihzKToiCisJCWZvciBmYWlsZWRfam9iX25yIGluICQoc29ydCAtbiAiJHN0cmVzc2ZhaWwiKQorCQlkbworCQkJZWNobyAiQ29udGVudHMgb2YgJyRURVNUX1JFU1VMVFNfQkFTRS5zdHJlc3MtJGZhaWxlZF9qb2JfbnIub3V0JzoiCisJCQljYXQgIiRURVNUX1JFU1VMVFNfQkFTRS5zdHJlc3MtJGZhaWxlZF9qb2JfbnIub3V0IgorCQlkb25lCisJCXJtIC1yZiAiJFRSQVNIX0RJUkVDVE9SWS5zdHJlc3MtZmFpbGVkIgorCQkjIE1vdmUgdGhlIGxhc3Qgb25lLgorCQltdiAiJFRSQVNIX0RJUkVDVE9SWS5zdHJlc3MtJGZhaWxlZF9qb2JfbnIiICIkVFJBU0hfRElSRUNUT1JZLnN0cmVzcy1mYWlsZWQiCisJZmkKKworCWV4aXQgJHN0cmVzc19leGl0CitmaQorCiAjIGlmIC0tdGVlIHdhcyBwYXNzZWQsIHdyaXRlIHRoZSBvdXRwdXQgbm90IG9ubHkgdG8gdGhlIHRlcm1pbmFsLCBidXQKICMgYWRkaXRpb25hbGx5IHRvIHRoZSBmaWxlIHRlc3QtcmVzdWx0cy8kQkFTRU5BTUUub3V0LCB0b28uCi1jYXNlICIkR0lUX1RFU1RfVEVFX1NUQVJURUQsICQqICIgaW4KLWRvbmUsKikKLQkjIGRvIG5vdCByZWRpcmVjdCBhZ2FpbgotCTs7Ci0qJyAtLXRlZSAnKnwqJyAtLXZhJyp8KicgLVYgJyp8KicgLS12ZXJib3NlLWxvZyAnKikKLQlta2RpciAtcCAiJFRFU1RfT1VUUFVUX0RJUkVDVE9SWS90ZXN0LXJlc3VsdHMiCi0JQkFTRT0iJFRFU1RfT1VUUFVUX0RJUkVDVE9SWS90ZXN0LXJlc3VsdHMvJChiYXNlbmFtZSAiJDAiIC5zaCkiCitpZiB0ZXN0ICIkR0lUX1RFU1RfVEVFX1NUQVJURUQiID0gImRvbmUiCit0aGVuCisJOiAjIGRvIG5vdCByZWRpcmVjdCBhZ2FpbgorZWxpZiB0ZXN0IC1uICIkdGVlIgordGhlbgorCW1rZGlyIC1wICIkVEVTVF9SRVNVTFRTX0RJUiIKIAogCSMgTWFrZSB0aGlzIGZpbGVuYW1lIGF2YWlsYWJsZSB0byB0aGUgc3ViLXByb2Nlc3MgaW4gY2FzZSBpdCBpcyB1c2luZwogCSMgLS12ZXJib3NlLWxvZy4KLQlHSVRfVEVTVF9URUVfT1VUUFVUX0ZJTEU9JEJBU0Uub3V0CisJR0lUX1RFU1RfVEVFX09VVFBVVF9GSUxFPSRURVNUX1JFU1VMVFNfQkFTRS5vdXQKIAlleHBvcnQgR0lUX1RFU1RfVEVFX09VVFBVVF9GSUxFCiAKIAkjIFRydW5jYXRlIGJlZm9yZSBjYWxsaW5nICJ0ZWUgLWEiIHRvIGdldCByaWQgb2YgdGhlIHJlc3VsdHMKQEAgLTkxLDExICszMjksMzggQEAKIAk+IiRHSVRfVEVTVF9URUVfT1VUUFVUX0ZJTEUiCiAKIAkoR0lUX1RFU1RfVEVFX1NUQVJURUQ9ZG9uZSAke1RFU1RfU0hFTExfUEFUSH0gIiQwIiAiJEAiIDI+JjE7Ci0JIGVjaG8gJD8gPiIkQkFTRS5leGl0IikgfCB0ZWUgLWEgIiRHSVRfVEVTVF9URUVfT1VUUFVUX0ZJTEUiCi0JdGVzdCAiJChjYXQgIiRCQVNFLmV4aXQiKSIgPSAwCisJIGVjaG8gJD8gPiIkVEVTVF9SRVNVTFRTX0JBU0UuZXhpdCIpIHwgdGVlIC1hICIkR0lUX1RFU1RfVEVFX09VVFBVVF9GSUxFIgorCXRlc3QgIiQoY2F0ICIkVEVTVF9SRVNVTFRTX0JBU0UuZXhpdCIpIiA9IDAKIAlleGl0Ci0JOzsKLWVzYWMKK2ZpCisKK2lmIHRlc3QgLW4gIiR0cmFjZSIgJiYgdGVzdCAtbiAiJHRlc3RfdW50cmFjZWFibGUiCit0aGVuCisJIyAnLXgnIHRyYWNpbmcgcmVxdWVzdGVkLCBidXQgdGhpcyB0ZXN0IHNjcmlwdCBjYW4ndCBiZSByZWxpYWJseQorCSMgdHJhY2VkLCB1bmxlc3MgaXQgaXMgcnVuIHdpdGggYSBCYXNoIHZlcnNpb24gc3VwcG9ydGluZworCSMgQkFTSF9YVFJBQ0VGRCAoaW50cm9kdWNlZCBpbiBCYXNoIHY0LjEpLgorCSMKKwkjIFBlcmZvcm0gdGhpcyB2ZXJzaW9uIGNoZWNrIF9hZnRlcl8gdGhlIHRlc3Qgc2NyaXB0IHdhcworCSMgcG90ZW50aWFsbHkgcmUtZXhlY3V0ZWQgd2l0aCAkVEVTVF9TSEVMTF9QQVRIIGZvciAnLS10ZWUnIG9yCisJIyAnLS12ZXJib3NlLWxvZycsIHNvIHRoZSByaWdodCBzaGVsbCBpcyBjaGVja2VkIGFuZCB0aGUKKwkjIHdhcm5pbmcgaXMgaXNzdWVkIG9ubHkgb25jZS4KKwlpZiB0ZXN0IC1uICIkQkFTSF9WRVJTSU9OIiAmJiBldmFsICcKKwkgICAgIHRlc3QgJHtCQVNIX1ZFUlNJTkZPWzBdfSAtZ3QgNCB8fCB7CisJICAgICAgIHRlc3QgJHtCQVNIX1ZFUlNJTkZPWzBdfSAtZXEgNCAmJgorCSAgICAgICB0ZXN0ICR7QkFTSF9WRVJTSU5GT1sxXX0gLWdlIDEKKwkgICAgIH0KKwkgICAnCisJdGhlbgorCQk6IEV4ZWN1dGVkIGJ5IGEgQmFzaCB2ZXJzaW9uIHN1cHBvcnRpbmcgQkFTSF9YVFJBQ0VGRC4gIEdvb2QuCisJZWxzZQorCQllY2hvID4mMiAid2FybmluZzogaWdub3JpbmcgLXg7ICckMCcgaXMgdW50cmFjZWFibGUgd2l0aG91dCBCQVNIX1hUUkFDRUZEIgorCQl0cmFjZT0KKwlmaQorZmkKK2lmIHRlc3QgLW4gIiR0cmFjZSIgJiYgdGVzdCAteiAiJHZlcmJvc2VfbG9nIgordGhlbgorCXZlcmJvc2U9dAorZmkKIAogIyBGb3IgcmVwZWF0YWJpbGl0eSwgcmVzZXQgdGhlIGVudmlyb25tZW50IHRvIGtub3duIHZhbHVlLgogIyBURVJNIGlzIHNhbml0aXplZCBiZWxvdywgYWZ0ZXIgc2F2aW5nIGNvbG9yIGNvbnRyb2wgc2VxdWVuY2VzLgpAQCAtMTM5LDkgKzQwNCwxMyBAQAogdW5zZXQgWERHX0NBQ0hFX0hPTUUKIHVuc2V0IFhER19DT05GSUdfSE9NRQogdW5zZXQgR0lUUEVSTExJQgotR0lUX0FVVEhPUl9FTUFJTD1hdXRob3JAZXhhbXBsZS5jb20KK1RFU1RfQVVUSE9SX0xPQ0FMTkFNRT1hdXRob3IKK1RFU1RfQVVUSE9SX0RPTUFJTj1leGFtcGxlLmNvbQorR0lUX0FVVEhPUl9FTUFJTD0ke1RFU1RfQVVUSE9SX0xPQ0FMTkFNRX1AJHtURVNUX0FVVEhPUl9ET01BSU59CiBHSVRfQVVUSE9SX05BTUU9J0EgVSBUaG9yJwotR0lUX0NPTU1JVFRFUl9FTUFJTD1jb21taXR0ZXJAZXhhbXBsZS5jb20KK1RFU1RfQ09NTUlUVEVSX0xPQ0FMTkFNRT1jb21taXR0ZXIKK1RFU1RfQ09NTUlUVEVSX0RPTUFJTj1leGFtcGxlLmNvbQorR0lUX0NPTU1JVFRFUl9FTUFJTD0ke1RFU1RfQ09NTUlUVEVSX0xPQ0FMTkFNRX1AJHtURVNUX0NPTU1JVFRFUl9ET01BSU59CiBHSVRfQ09NTUlUVEVSX05BTUU9J0MgTyBNaXR0ZXInCiBHSVRfTUVSR0VfVkVSQk9TSVRZPTUKIEdJVF9NRVJHRV9BVVRPRURJVD1ubwpAQCAtMTkzLDcgKzQ2Miw3IEBACiAKICMgQWRkIGxpYmMgTUFMTE9DIGFuZCBNQUxMT0NfUEVSVFVSQiB0ZXN0CiAjIG9ubHkgaWYgd2UgYXJlIG5vdCBleGVjdXRpbmcgdGhlIHRlc3Qgd2l0aCB2YWxncmluZAotaWYgZXhwciAiICRHSVRfVEVTVF9PUFRTICIgOiAiLiogLS12YWxncmluZCAiID4vZGV2L251bGwgfHwKK2lmIHRlc3QgLW4gIiR2YWxncmluZCIgfHwKICAgIHRlc3QgLW4gIiRURVNUX05PX01BTExPQ19DSEVDSyIKIHRoZW4KIAlzZXR1cF9tYWxsb2NfY2hlY2sgKCkgewpAQCAtMjQ0LDYgKzUxMyw5IEBACiBMRj0nCiAnCiAKKyMgU2luZ2xlIHF1b3RlCitTUT1cJworCiAjIFVURi04IFpFUk8gV0lEVEggTk9OLUpPSU5FUiwgd2hpY2ggSEZTKyBpZ25vcmVzCiAjIHdoZW4gY2FzZS1mb2xkaW5nIGZpbGVuYW1lcwogdTIwMGM9JChwcmludGYgJ1wzNDJcMjAwXDIxNCcpCkBAIC0yNjQsMTAwICs1MzYsNiBAQAogCSkgJiYKIAljb2xvcj10CiAKLXdoaWxlIHRlc3QgIiQjIiAtbmUgMAotZG8KLQljYXNlICIkMSIgaW4KLQktZHwtLWR8LS1kZXwtLWRlYnwtLWRlYnV8LS1kZWJ1ZykKLQkJZGVidWc9dDsgc2hpZnQgOzsKLQktaXwtLWl8LS1pbXwtLWltbXwtLWltbWV8LS1pbW1lZHwtLWltbWVkaXwtLWltbWVkaWF8LS1pbW1lZGlhdHwtLWltbWVkaWF0ZSkKLQkJaW1tZWRpYXRlPXQ7IHNoaWZ0IDs7Ci0JLWx8LS1sfC0tbG98LS1sb258LS1sb25nfC0tbG9uZy18LS1sb25nLXR8LS1sb25nLXRlfC0tbG9uZy10ZXN8LS1sb25nLXRlc3R8LS1sb25nLXRlc3RzKQotCQlHSVRfVEVTVF9MT05HPXQ7IGV4cG9ydCBHSVRfVEVTVF9MT05HOyBzaGlmdCA7OwotCS1yKQotCQlzaGlmdDsgdGVzdCAiJCMiIC1uZSAwIHx8IHsKLQkJCWVjaG8gJ2Vycm9yOiAtciByZXF1aXJlcyBhbiBhcmd1bWVudCcgPiYyOwotCQkJZXhpdCAxOwotCQl9Ci0JCXJ1bl9saXN0PSQxOyBzaGlmdCA7OwotCS0tcnVuPSopCi0JCXJ1bl9saXN0PSR7MSMtLSo9fTsgc2hpZnQgOzsKLQktaHwtLWh8LS1oZXwtLWhlbHwtLWhlbHApCi0JCWhlbHA9dDsgc2hpZnQgOzsKLQktdnwtLXZ8LS12ZXwtLXZlcnwtLXZlcmJ8LS12ZXJib3wtLXZlcmJvc3wtLXZlcmJvc2UpCi0JCXZlcmJvc2U9dDsgc2hpZnQgOzsKLQktLXZlcmJvc2Utb25seT0qKQotCQl2ZXJib3NlX29ubHk9JHsxIy0tKj19Ci0JCXNoaWZ0IDs7Ci0JLXF8LS1xfC0tcXV8LS1xdWl8LS1xdWllfC0tcXVpZXQpCi0JCSMgSWdub3JlIC0tcXVpZXQgdW5kZXIgYSBUQVA6Okhhcm5lc3MuIFNheWluZyBob3cgbWFueSB0ZXN0cwotCQkjIHBhc3NlZCB3aXRob3V0IHRoZSBvay9ub3Qgb2sgZGV0YWlscyBpcyBhbHdheXMgYW4gZXJyb3IuCi0JCXRlc3QgLXogIiRIQVJORVNTX0FDVElWRSIgJiYgcXVpZXQ9dDsgc2hpZnQgOzsKLQktLXdpdGgtZGFzaGVzKQotCQl3aXRoX2Rhc2hlcz10OyBzaGlmdCA7OwotCS0tbm8tY29sb3IpCi0JCWNvbG9yPTsgc2hpZnQgOzsKLQktLXZhfC0tdmFsfC0tdmFsZ3wtLXZhbGdyfC0tdmFsZ3JpfC0tdmFsZ3JpbnwtLXZhbGdyaW5kKQotCQl2YWxncmluZD1tZW1jaGVjawotCQlzaGlmdCA7OwotCS0tdmFsZ3JpbmQ9KikKLQkJdmFsZ3JpbmQ9JHsxIy0tKj19Ci0JCXNoaWZ0IDs7Ci0JLS12YWxncmluZC1vbmx5PSopCi0JCXZhbGdyaW5kX29ubHk9JHsxIy0tKj19Ci0JCXNoaWZ0IDs7Ci0JLS10ZWUpCi0JCXNoaWZ0IDs7ICMgd2FzIGhhbmRsZWQgYWxyZWFkeQotCS0tcm9vdD0qKQotCQlyb290PSR7MSMtLSo9fQotCQlzaGlmdCA7OwotCS0tY2hhaW4tbGludCkKLQkJR0lUX1RFU1RfQ0hBSU5fTElOVD0xCi0JCXNoaWZ0IDs7Ci0JLS1uby1jaGFpbi1saW50KQotCQlHSVRfVEVTVF9DSEFJTl9MSU5UPTAKLQkJc2hpZnQgOzsKLQkteCkKLQkJIyBTb21lIHRlc3Qgc2NyaXB0cyBjYW4ndCBiZSByZWxpYWJseSB0cmFjZWQgIHdpdGggJy14JywKLQkJIyB1bmxlc3MgdGhlIHRlc3QgaXMgcnVuIHdpdGggYSBCYXNoIHZlcnNpb24gc3VwcG9ydGluZwotCQkjIEJBU0hfWFRSQUNFRkQgKGludHJvZHVjZWQgaW4gQmFzaCB2NC4xKS4gIENoZWNrIHdoZXRoZXIKLQkJIyB0aGlzIHRlc3QgaXMgbWFya2VkIGFzIHN1Y2gsIGFuZCBpZ25vcmUgJy14JyBpZiBpdAotCQkjIGlzbid0IGV4ZWN1dGVkIHdpdGggYSBzdWl0YWJsZSBCYXNoIHZlcnNpb24uCi0JCWlmIHRlc3QgLXogIiR0ZXN0X3VudHJhY2VhYmxlIiB8fCB7Ci0JCSAgICAgdGVzdCAtbiAiJEJBU0hfVkVSU0lPTiIgJiYgewotCQkgICAgICAgdGVzdCAke0JBU0hfVkVSU0lORk9bMF19IC1ndCA0IHx8IHsKLQkJCSB0ZXN0ICR7QkFTSF9WRVJTSU5GT1swXX0gLWVxIDQgJiYKLQkJCSB0ZXN0ICR7QkFTSF9WRVJTSU5GT1sxXX0gLWdlIDEKLQkJICAgICAgIH0KLQkJICAgICB9Ci0JCSAgIH0KLQkJdGhlbgotCQkJdHJhY2U9dAotCQllbHNlCi0JCQllY2hvID4mMiAid2FybmluZzogaWdub3JpbmcgLXg7ICckMCcgaXMgdW50cmFjZWFibGUgd2l0aG91dCBCQVNIX1hUUkFDRUZEIgotCQlmaQotCQlzaGlmdCA7OwotCS1WfC0tdmVyYm9zZS1sb2cpCi0JCXZlcmJvc2VfbG9nPXQKLQkJc2hpZnQgOzsKLQkqKQotCQllY2hvICJlcnJvcjogdW5rbm93biB0ZXN0IG9wdGlvbiAnJDEnIiA+JjI7IGV4aXQgMSA7OwotCWVzYWMKLWRvbmUKLQotaWYgdGVzdCAtbiAiJHZhbGdyaW5kX29ubHkiCi10aGVuCi0JdGVzdCAteiAiJHZhbGdyaW5kIiAmJiB2YWxncmluZD1tZW1jaGVjawotCXRlc3QgLXogIiR2ZXJib3NlIiAmJiB2ZXJib3NlX29ubHk9IiR2YWxncmluZF9vbmx5IgotZWxpZiB0ZXN0IC1uICIkdmFsZ3JpbmQiCi10aGVuCi0JdGVzdCAteiAiJHZlcmJvc2VfbG9nIiAmJiB2ZXJib3NlPXQKLWZpCi0KLWlmIHRlc3QgLW4gIiR0cmFjZSIgJiYgdGVzdCAteiAiJHZlcmJvc2VfbG9nIgotdGhlbgotCXZlcmJvc2U9dAotZmkKLQogaWYgdGVzdCAtbiAiJGNvbG9yIgogdGhlbgogCSMgU2F2ZSB0aGUgY29sb3IgY29udHJvbCBzZXF1ZW5jZXMgbm93IHJhdGhlciB0aGFuIHJ1biB0cHV0CkBAIC0zOTgsNiArNTc2LDcgQEAKIAogZXJyb3IgKCkgewogCXNheV9jb2xvciBlcnJvciAiZXJyb3I6ICQqIgorCWZpbmFsaXplX2p1bml0X3htbAogCUdJVF9FWElUX09LPXQKIAlleGl0IDEKIH0KQEAgLTQ2NSw2ICs2NDQsMTAgQEAKIAogZGllICgpIHsKIAljb2RlPSQ/CisJIyBUaGlzIGlzIHJlc3BvbnNpYmxlIGZvciBydW5uaW5nIHRoZSBhdGV4aXQgY29tbWFuZHMgZXZlbiB3aGVuIGEKKwkjIHRlc3Qgc2NyaXB0IHJ1biB3aXRoICctLWltbWVkaWF0ZScgZmFpbHMsIG9yIHdoZW4gdGhlIHVzZXIgaGl0cworCSMgY3RybC1DLCBpLmUuIHdoZW4gJ3Rlc3RfZG9uZScgaXMgbm90IGludm9rZWQgYXQgYWxsLgorCXRlc3RfYXRleGl0X2hhbmRsZXIgfHwgY29kZT0kPwogCWlmIHRlc3QgLW4gIiRHSVRfRVhJVF9PSyIKIAl0aGVuCiAJCWV4aXQgJGNvZGUKQEAgLTQ3Niw3ICs2NTksMTAgQEAKIAogR0lUX0VYSVRfT0s9CiB0cmFwICdkaWUnIEVYSVQKLXRyYXAgJ2V4aXQgJD8nIElOVAorIyBEaXNhYmxlICcteCcgdHJhY2luZywgYmVjYXVzZSB3aXRoIHNvbWUgc2hlbGxzLCBub3RhYmx5IGRhc2gsIGl0CisjIHByZXZlbnRzIHJ1bm5pbmcgdGhlIGNsZWFudXAgY29tbWFuZHMgd2hlbiBhIHRlc3Qgc2NyaXB0IHJ1biB3aXRoCisjICctLXZlcmJvc2UtbG9nIC14JyBpcyBpbnRlcnJ1cHRlZC4KK3RyYXAgJ3sgY29kZT0kPzsgc2V0ICt4OyB9IDI+L2Rldi9udWxsOyBleGl0ICRjb2RlJyBJTlQgVEVSTSBIVVAKIAogIyBUaGUgdXNlci1mYWNpbmcgZnVuY3Rpb25zIGFyZSBsb2FkZWQgZnJvbSBhIHNlcGFyYXRlIGZpbGUgc28gdGhhdAogIyB0ZXN0X3BlcmYgc3Vic2hlbGxzIGNhbiBoYXZlIHRoZW0gdG9vCkBAIC00ODYsMjQgKzY3Miw1NiBAQAogIyB0aGUgdGVzdF9leHBlY3RfKiBmdW5jdGlvbnMgaW5zdGVhZC4KIAogdGVzdF9va18gKCkgeworCWlmIHRlc3QgLW4gIiR3cml0ZV9qdW5pdF94bWwiCisJdGhlbgorCQl3cml0ZV9qdW5pdF94bWxfdGVzdGNhc2UgIiQqIgorCWZpCiAJdGVzdF9zdWNjZXNzPSQoKCR0ZXN0X3N1Y2Nlc3MgKyAxKSkKIAlzYXlfY29sb3IgIiIgIm9rICR0ZXN0X2NvdW50IC0gJEAiCiB9CiAKIHRlc3RfZmFpbHVyZV8gKCkgeworCWlmIHRlc3QgLW4gIiR3cml0ZV9qdW5pdF94bWwiCisJdGhlbgorCQlqdW5pdF9pbnNlcnQ9IjxmYWlsdXJlIG1lc3NhZ2U9XCJub3Qgb2sgJHRlc3RfY291bnQgLSIKKwkJanVuaXRfaW5zZXJ0PSIkanVuaXRfaW5zZXJ0ICQoeG1sX2F0dHJfZW5jb2RlICIkMSIpXCI+IgorCQlqdW5pdF9pbnNlcnQ9IiRqdW5pdF9pbnNlcnQgJCh4bWxfYXR0cl9lbmNvZGUgXAorCQkJIiQoaWYgdGVzdCAtbiAiJEdJVF9URVNUX1RFRV9PVVRQVVRfRklMRSIKKwkJCSAgIHRoZW4KKwkJCQl0ZXN0LXRvb2wgcGF0aC11dGlscyBza2lwLW4tYnl0ZXMgXAorCQkJCQkiJEdJVF9URVNUX1RFRV9PVVRQVVRfRklMRSIgJEdJVF9URVNUX1RFRV9PRkZTRVQKKwkJCSAgIGVsc2UKKwkJCQlwcmludGYgJyVzXG4nICIkQCIgfCBzZWQgMWQKKwkJCSAgIGZpKSIpIgorCQlqdW5pdF9pbnNlcnQ9IiRqdW5pdF9pbnNlcnQ8L2ZhaWx1cmU+IgorCQlpZiB0ZXN0IC1uICIkR0lUX1RFU1RfVEVFX09VVFBVVF9GSUxFIgorCQl0aGVuCisJCQlqdW5pdF9pbnNlcnQ9IiRqdW5pdF9pbnNlcnQ8c3lzdGVtLWVycj4kKHhtbF9hdHRyX2VuY29kZSBcCisJCQkJIiQoY2F0ICIkR0lUX1RFU1RfVEVFX09VVFBVVF9GSUxFIikiKTwvc3lzdGVtLWVycj4iCisJCWZpCisJCXdyaXRlX2p1bml0X3htbF90ZXN0Y2FzZSAiJDEiICIgICAgICAkanVuaXRfaW5zZXJ0IgorCWZpCiAJdGVzdF9mYWlsdXJlPSQoKCR0ZXN0X2ZhaWx1cmUgKyAxKSkKIAlzYXlfY29sb3IgZXJyb3IgIm5vdCBvayAkdGVzdF9jb3VudCAtICQxIgogCXNoaWZ0CiAJcHJpbnRmICclc1xuJyAiJCoiIHwgc2VkIC1lICdzL14vIwkvJwotCXRlc3QgIiRpbW1lZGlhdGUiID0gIiIgfHwgeyBHSVRfRVhJVF9PSz10OyBleGl0IDE7IH0KKwl0ZXN0ICIkaW1tZWRpYXRlIiA9ICIiIHx8IHsgZmluYWxpemVfanVuaXRfeG1sOyBHSVRfRVhJVF9PSz10OyBleGl0IDE7IH0KIH0KIAogdGVzdF9rbm93bl9icm9rZW5fb2tfICgpIHsKKwlpZiB0ZXN0IC1uICIkd3JpdGVfanVuaXRfeG1sIgorCXRoZW4KKwkJd3JpdGVfanVuaXRfeG1sX3Rlc3RjYXNlICIkKiAoYnJlYWthZ2UgZml4ZWQpIgorCWZpCiAJdGVzdF9maXhlZD0kKCgkdGVzdF9maXhlZCsxKSkKIAlzYXlfY29sb3IgZXJyb3IgIm9rICR0ZXN0X2NvdW50IC0gJEAgIyBUT0RPIGtub3duIGJyZWFrYWdlIHZhbmlzaGVkIgogfQogCiB0ZXN0X2tub3duX2Jyb2tlbl9mYWlsdXJlXyAoKSB7CisJaWYgdGVzdCAtbiAiJHdyaXRlX2p1bml0X3htbCIKKwl0aGVuCisJCXdyaXRlX2p1bml0X3htbF90ZXN0Y2FzZSAiJCogKGtub3duIGJyZWFrYWdlKSIKKwlmaQogCXRlc3RfYnJva2VuPSQoKCR0ZXN0X2Jyb2tlbisxKSkKIAlzYXlfY29sb3Igd2FybiAibm90IG9rICR0ZXN0X2NvdW50IC0gJEAgIyBUT0RPIGtub3duIGJyZWFrYWdlIgogfQpAQCAtNzYxLDEyICs5NzksMjEgQEAKIAl0ZXN0X2NvdW50PSQoKCR0ZXN0X2NvdW50KzEpKQogCW1heWJlX3NldHVwX3ZlcmJvc2UKIAltYXliZV9zZXR1cF92YWxncmluZAorCWlmIHRlc3QgLW4gIiR3cml0ZV9qdW5pdF94bWwiCisJdGhlbgorCQlqdW5pdF9zdGFydD0kKHRlc3QtdG9vbCBkYXRlIGdldG5hbm9zKQorCWZpCiB9CiAKIHRlc3RfZmluaXNoXyAoKSB7CiAJZWNobyA+JjMgIiIKIAltYXliZV90ZWFyZG93bl92YWxncmluZAogCW1heWJlX3RlYXJkb3duX3ZlcmJvc2UKKwlpZiB0ZXN0IC1uICIkR0lUX1RFU1RfVEVFX09GRlNFVCIKKwl0aGVuCisJCUdJVF9URVNUX1RFRV9PRkZTRVQ9JCh0ZXN0LXRvb2wgcGF0aC11dGlscyBmaWxlLXNpemUgXAorCQkJIiRHSVRfVEVTVF9URUVfT1VUUFVUX0ZJTEUiKQorCWZpCiB9CiAKIHRlc3Rfc2tpcCAoKSB7CkBAIC03NzcsNiArMTAwNCwxMiBAQAogCQl0b19za2lwPXQKIAkJc2tpcHBlZF9yZWFzb249IkdJVF9TS0lQX1RFU1RTIgogCWZpCisJaWYgdGVzdCAteiAiJHRvX3NraXAiICYmIHRlc3QgLW4gIiRydW5fbGlzdCIgJiYKKwkgICAhIG1hdGNoX3Rlc3Rfc2VsZWN0b3JfbGlzdCAnLS1ydW4nICR0ZXN0X2NvdW50ICIkcnVuX2xpc3QiCisJdGhlbgorCQl0b19za2lwPXQKKwkJc2tpcHBlZF9yZWFzb249Ii0tcnVuIgorCWZpCiAJaWYgdGVzdCAteiAiJHRvX3NraXAiICYmIHRlc3QgLW4gIiR0ZXN0X3ByZXJlcSIgJiYKIAkgICAhIHRlc3RfaGF2ZV9wcmVyZXEgIiR0ZXN0X3ByZXJlcSIKIAl0aGVuCkBAIC03ODksMTUgKzEwMjIsMTYgQEAKIAkJZmkKIAkJc2tpcHBlZF9yZWFzb249Im1pc3NpbmcgJG1pc3NpbmdfcHJlcmVxJHtvZl9wcmVyZXF9IgogCWZpCi0JaWYgdGVzdCAteiAiJHRvX3NraXAiICYmIHRlc3QgLW4gIiRydW5fbGlzdCIgJiYKLQkJISBtYXRjaF90ZXN0X3NlbGVjdG9yX2xpc3QgJy0tcnVuJyAkdGVzdF9jb3VudCAiJHJ1bl9saXN0IgotCXRoZW4KLQkJdG9fc2tpcD10Ci0JCXNraXBwZWRfcmVhc29uPSItLXJ1biIKLQlmaQogCiAJY2FzZSAiJHRvX3NraXAiIGluCiAJdCkKKwkJaWYgdGVzdCAtbiAiJHdyaXRlX2p1bml0X3htbCIKKwkJdGhlbgorCQkJbWVzc2FnZT0iJCh4bWxfYXR0cl9lbmNvZGUgIiRza2lwcGVkX3JlYXNvbiIpIgorCQkJd3JpdGVfanVuaXRfeG1sX3Rlc3RjYXNlICIkMSIgXAorCQkJCSIgICAgICA8c2tpcHBlZCBtZXNzYWdlPVwiJG1lc3NhZ2VcIiAvPiIKKwkJZmkKKwogCQlzYXlfY29sb3Igc2tpcCA+JjMgInNraXBwaW5nIHRlc3Q6ICRAIgogCQlzYXlfY29sb3Igc2tpcCAib2sgJHRlc3RfY291bnQgIyBza2lwICQxICgkc2tpcHBlZF9yZWFzb24pIgogCQk6IHRydWUKQEAgLTgxMywxNyArMTA0Nyw4MSBAQAogCToKIH0KIAord3JpdGVfanVuaXRfeG1sICgpIHsKKwljYXNlICIkMSIgaW4KKwktLXRydW5jYXRlKQorCQk+IiRqdW5pdF94bWxfcGF0aCIKKwkJanVuaXRfaGF2ZV90ZXN0Y2FzZT0KKwkJc2hpZnQKKwkJOzsKKwllc2FjCisJcHJpbnRmICclc1xuJyAiJEAiID4+IiRqdW5pdF94bWxfcGF0aCIKK30KKworeG1sX2F0dHJfZW5jb2RlICgpIHsKKwlwcmludGYgJyVzXG4nICIkQCIgfCB0ZXN0LXRvb2wgeG1sLWVuY29kZQorfQorCit3cml0ZV9qdW5pdF94bWxfdGVzdGNhc2UgKCkgeworCWp1bml0X2F0dHJzPSJuYW1lPVwiJCh4bWxfYXR0cl9lbmNvZGUgIiR0aGlzX3Rlc3QuJHRlc3RfY291bnQgJDEiKVwiIgorCXNoaWZ0CisJanVuaXRfYXR0cnM9IiRqdW5pdF9hdHRycyBjbGFzc25hbWU9XCIkdGhpc190ZXN0XCIiCisJanVuaXRfYXR0cnM9IiRqdW5pdF9hdHRycyB0aW1lPVwiJCh0ZXN0LXRvb2wgXAorCQlkYXRlIGdldG5hbm9zICRqdW5pdF9zdGFydClcIiIKKwl3cml0ZV9qdW5pdF94bWwgIiQocHJpbnRmICclc1xuJyBcCisJCSIgICAgPHRlc3RjYXNlICRqdW5pdF9hdHRycz4iICIkQCIgIiAgICA8L3Rlc3RjYXNlPiIpIgorCWp1bml0X2hhdmVfdGVzdGNhc2U9dAorfQorCitmaW5hbGl6ZV9qdW5pdF94bWwgKCkgeworCWlmIHRlc3QgLW4gIiR3cml0ZV9qdW5pdF94bWwiICYmIHRlc3QgLW4gIiRqdW5pdF94bWxfcGF0aCIKKwl0aGVuCisJCXRlc3QgLW4gIiRqdW5pdF9oYXZlX3Rlc3RjYXNlIiB8fCB7CisJCQlqdW5pdF9zdGFydD0kKHRlc3QtdG9vbCBkYXRlIGdldG5hbm9zKQorCQkJd3JpdGVfanVuaXRfeG1sX3Rlc3RjYXNlICJhbGwgdGVzdHMgc2tpcHBlZCIKKwkJfQorCisJCSMgYWRqdXN0IHRoZSBvdmVyYWxsIHRpbWUKKwkJanVuaXRfdGltZT0kKHRlc3QtdG9vbCBkYXRlIGdldG5hbm9zICRqdW5pdF9zdWl0ZV9zdGFydCkKKwkJc2VkIC1lICJzL1woPHRlc3RzdWl0ZS4qXCkgdGltZT1cIlteXCJdKlwiL1wxLyIgXAorCQkJLWUgInMvPHRlc3RzdWl0ZSBbXj5dKi8mIHRpbWU9XCIkanVuaXRfdGltZVwiLyIgXAorCQkJPCIkanVuaXRfeG1sX3BhdGgiID4iJGp1bml0X3htbF9wYXRoLm5ldyIKKwkJbXYgIiRqdW5pdF94bWxfcGF0aC5uZXciICIkanVuaXRfeG1sX3BhdGgiCisKKwkJd3JpdGVfanVuaXRfeG1sICIgIDwvdGVzdHN1aXRlPiIgIjwvdGVzdHN1aXRlcz4iCisJCXdyaXRlX2p1bml0X3htbD0KKwlmaQorfQorCit0ZXN0X2F0ZXhpdF9jbGVhbnVwPToKK3Rlc3RfYXRleGl0X2hhbmRsZXIgKCkgeworCSMgSW4gYSBzdWNjZWVkaW5nIHRlc3Qgc2NyaXB0ICd0ZXN0X2F0ZXhpdF9oYW5kbGVyJyBpcyBpbnZva2VkCisJIyB0d2ljZTogZmlyc3QgZnJvbSAndGVzdF9kb25lJywgdGhlbiBmcm9tICdkaWUnIGluIHRoZSB0cmFwIG9uCisJIyBFWElULgorCSMgVGhpcyBjb25kaXRpb24gYW5kIHJlc2V0dGluZyAndGVzdF9hdGV4aXRfY2xlYW51cCcgYmVsb3cgbWFrZXMKKwkjIHN1cmUgdGhhdCB0aGUgcmVnaXN0ZXJlZCBjbGVhbnVwIGNvbW1hbmRzIGFyZSBydW4gb25seSBvbmNlLgorCXRlc3QgOiAhPSAiJHRlc3RfYXRleGl0X2NsZWFudXAiIHx8IHJldHVybiAwCisKKwlzZXR1cF9tYWxsb2NfY2hlY2sKKwl0ZXN0X2V2YWxfICIkdGVzdF9hdGV4aXRfY2xlYW51cCIKKwl0ZXN0X2F0ZXhpdF9jbGVhbnVwPToKKwl0ZWFyZG93bl9tYWxsb2NfY2hlY2sKK30KKwogdGVzdF9kb25lICgpIHsKIAlHSVRfRVhJVF9PSz10CiAKKwkjIFJ1biB0aGUgYXRleGl0IGNvbW1hbmRzIF9iZWZvcmVfIHRoZSB0cmFzaCBkaXJlY3RvcnkgaXMKKwkjIHJlbW92ZWQsIHNvIHRoZSBjb21tYW5kcyBjYW4gYWNjZXNzIHBpZGZpbGVzIGFuZCBzb2NrZXQgZmlsZXMuCisJdGVzdF9hdGV4aXRfaGFuZGxlcgorCisJZmluYWxpemVfanVuaXRfeG1sCisKIAlpZiB0ZXN0IC16ICIkSEFSTkVTU19BQ1RJVkUiCiAJdGhlbgotCQl0ZXN0X3Jlc3VsdHNfZGlyPSIkVEVTVF9PVVRQVVRfRElSRUNUT1JZL3Rlc3QtcmVzdWx0cyIKLQkJbWtkaXIgLXAgIiR0ZXN0X3Jlc3VsdHNfZGlyIgotCQliYXNlPSR7MCMjKi99Ci0JCXRlc3RfcmVzdWx0c19wYXRoPSIkdGVzdF9yZXN1bHRzX2Rpci8ke2Jhc2UlLnNofS5jb3VudHMiCisJCW1rZGlyIC1wICIkVEVTVF9SRVNVTFRTX0RJUiIKIAotCQljYXQgPiIkdGVzdF9yZXN1bHRzX3BhdGgiIDw8LUVPRgorCQljYXQgPiIkVEVTVF9SRVNVTFRTX0JBU0UuY291bnRzIiA8PC1FT0YKIAkJdG90YWwgJHRlc3RfY291bnQKIAkJc3VjY2VzcyAkdGVzdF9zdWNjZXNzCiAJCWZpeGVkICR0ZXN0X2ZpeGVkCkBAIC04NzgsNyArMTE3NiwxMSBAQAogCQkJZXJyb3IgIlRlc3RzIHBhc3NlZCBidXQgdHJhc2ggZGlyZWN0b3J5IGFscmVhZHkgcmVtb3ZlZCBiZWZvcmUgdGVzdCBjbGVhbnVwOyBhYm9ydGluZyIKIAogCQkJY2QgIiRUUkFTSF9ESVJFQ1RPUlkvLi4iICYmCi0JCQlybSAtZnIgIiRUUkFTSF9ESVJFQ1RPUlkiIHx8CisJCQlybSAtZnIgIiRUUkFTSF9ESVJFQ1RPUlkiIHx8IHsKKwkJCQkjIHRyeSBhZ2FpbiBpbiBhIGJpdAorCQkJCXNsZWVwIDU7CisJCQkJcm0gLWZyICIkVFJBU0hfRElSRUNUT1JZIgorCQkJfSB8fAogCQkJZXJyb3IgIlRlc3RzIHBhc3NlZCBidXQgdGVzdCBjbGVhbnVwIGZhaWxlZDsgYWJvcnRpbmciCiAJCWZpCiAJCXRlc3RfYXRfZW5kX2hvb2tfCkBAIC05ODQsMjAgKzEyODYsMjUgQEAKIAlQQVRIPSRHSVRfVEVTVF9JTlNUQUxMRUQ6JEdJVF9CVUlMRF9ESVIvdC9oZWxwZXI6JFBBVEgKIAlHSVRfRVhFQ19QQVRIPSR7R0lUX1RFU1RfRVhFQ19QQVRIOi0kR0lUX0VYRUNfUEFUSH0KIGVsc2UgIyBub3JtYWwgY2FzZSwgdXNlIC4uL2Jpbi13cmFwcGVycyBvbmx5IHVubGVzcyAkd2l0aF9kYXNoZXM6Ci0JZ2l0X2Jpbl9kaXI9IiRHSVRfQlVJTERfRElSL2Jpbi13cmFwcGVycyIKLQlpZiAhIHRlc3QgLXggIiRnaXRfYmluX2Rpci9naXQiCisJaWYgdGVzdCAtbiAiJG5vX2Jpbl93cmFwcGVycyIKIAl0aGVuCi0JCWlmIHRlc3QgLXogIiR3aXRoX2Rhc2hlcyIKLQkJdGhlbgotCQkJc2F5ICIkZ2l0X2Jpbl9kaXIvZ2l0IGlzIG5vdCBleGVjdXRhYmxlOyB1c2luZyBHSVRfRVhFQ19QQVRIIgotCQlmaQogCQl3aXRoX2Rhc2hlcz10CisJZWxzZQorCQlnaXRfYmluX2Rpcj0iJEdJVF9CVUlMRF9ESVIvYmluLXdyYXBwZXJzIgorCQlpZiAhIHRlc3QgLXggIiRnaXRfYmluX2Rpci9naXQiCisJCXRoZW4KKwkJCWlmIHRlc3QgLXogIiR3aXRoX2Rhc2hlcyIKKwkJCXRoZW4KKwkJCQlzYXkgIiRnaXRfYmluX2Rpci9naXQgaXMgbm90IGV4ZWN1dGFibGU7IHVzaW5nIEdJVF9FWEVDX1BBVEgiCisJCQlmaQorCQkJd2l0aF9kYXNoZXM9dAorCQlmaQorCQlQQVRIPSIkZ2l0X2Jpbl9kaXI6JFBBVEgiCiAJZmkKLQlQQVRIPSIkZ2l0X2Jpbl9kaXI6JFBBVEgiCiAJR0lUX0VYRUNfUEFUSD0kR0lUX0JVSUxEX0RJUgogCWlmIHRlc3QgLW4gIiR3aXRoX2Rhc2hlcyIKIAl0aGVuCi0JCVBBVEg9IiRHSVRfQlVJTERfRElSOiRQQVRIIgorCQlQQVRIPSIkR0lUX0JVSUxEX0RJUjokR0lUX0JVSUxEX0RJUi90L2hlbHBlcjokUEFUSCIKIAlmaQogZmkKIEdJVF9URU1QTEFURV9ESVI9IiRHSVRfQlVJTERfRElSIi90ZW1wbGF0ZXMvYmx0CkBAIC0xMDIxLDcgKzEzMjgsNyBAQAogCWVycm9yICJZb3UgaGF2ZW4ndCBidWlsdCB0aGluZ3MgeWV0LCBoYXZlIHlvdT8iCiB9CiAKLWlmICEgdGVzdCAteCAiJEdJVF9CVUlMRF9ESVIiL3QvaGVscGVyL3Rlc3QtdG9vbAoraWYgISB0ZXN0IC14ICIkR0lUX0JVSUxEX0RJUiIvdC9oZWxwZXIvdGVzdC10b29sJFgKIHRoZW4KIAllY2hvID4mMiAnWW91IG5lZWQgdG8gYnVpbGQgdGVzdC10b29sOicKIAllY2hvID4mMiAnUnVuICJtYWtlIHQvaGVscGVyL3Rlc3QtdG9vbCIgaW4gdGhlIHNvdXJjZSAodG9wbGV2ZWwpIGRpcmVjdG9yeScKQEAgLTEwMjksMTIgKzEzMzYsNiBAQAogZmkKIAogIyBUZXN0IHJlcG9zaXRvcnkKLVRSQVNIX0RJUkVDVE9SWT0idHJhc2ggZGlyZWN0b3J5LiQoYmFzZW5hbWUgIiQwIiAuc2gpIgotdGVzdCAtbiAiJHJvb3QiICYmIFRSQVNIX0RJUkVDVE9SWT0iJHJvb3QvJFRSQVNIX0RJUkVDVE9SWSIKLWNhc2UgIiRUUkFTSF9ESVJFQ1RPUlkiIGluCi0vKikgOzsgIyBhYnNvbHV0ZSBwYXRoIGlzIGdvb2QKLSAqKSBUUkFTSF9ESVJFQ1RPUlk9IiRURVNUX09VVFBVVF9ESVJFQ1RPUlkvJFRSQVNIX0RJUkVDVE9SWSIgOzsKLWVzYWMKIHJtIC1mciAiJFRSQVNIX0RJUkVDVE9SWSIgfHwgewogCUdJVF9FWElUX09LPXQKIAllY2hvID4mNSAiRkFUQUw6IENhbm5vdCBwcmVwYXJlIHRlc3QgYXJlYSIKQEAgLTEwNTEsNiArMTM1Miw3IEBACiBlbHNlCiAJbWtkaXIgLXAgIiRUUkFTSF9ESVJFQ1RPUlkiCiBmaQorCiAjIFVzZSAtUCB0byByZXNvbHZlIHN5bWxpbmtzIGluIG91ciB3b3JraW5nIGRpcmVjdG9yeSBzbyB0aGF0IHRoZSBjd2QKICMgaW4gc3VicHJvY2Vzc2VzIGxpa2UgZ2l0IGVxdWFscyBvdXIgJFBXRCAoZm9yIHBhdGhuYW1lIGNvbXBhcmlzb25zKS4KIGNkIC1QICIkVFJBU0hfRElSRUNUT1JZIiB8fCBleGl0IDEKQEAgLTEwNjQsNyArMTM2NiwyOCBAQAogCXRlc3RfZG9uZQogZmkKIAotIyBQcm92aWRlIGFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSAneWVzJyB1dGlsaXR5CitpZiB0ZXN0IC1uICIkd3JpdGVfanVuaXRfeG1sIgordGhlbgorCWp1bml0X3htbF9kaXI9IiRURVNUX09VVFBVVF9ESVJFQ1RPUlkvb3V0IgorCW1rZGlyIC1wICIkanVuaXRfeG1sX2RpciIKKwlqdW5pdF94bWxfYmFzZT0kezAjIyovfQorCWp1bml0X3htbF9wYXRoPSIkanVuaXRfeG1sX2Rpci9URVNULSR7anVuaXRfeG1sX2Jhc2UlLnNofS54bWwiCisJanVuaXRfYXR0cnM9Im5hbWU9XCIke2p1bml0X3htbF9iYXNlJS5zaH1cIiIKKwlqdW5pdF9hdHRycz0iJGp1bml0X2F0dHJzIHRpbWVzdGFtcD1cIiQoVFo9VVRDIFwKKwkJZGF0ZSArJVktJW0tJWRUJUg6JU06JVMpXCIiCisJd3JpdGVfanVuaXRfeG1sIC0tdHJ1bmNhdGUgIjx0ZXN0c3VpdGVzPiIgIiAgPHRlc3RzdWl0ZSAkanVuaXRfYXR0cnM+IgorCWp1bml0X3N1aXRlX3N0YXJ0PSQodGVzdC10b29sIGRhdGUgZ2V0bmFub3MpCisJaWYgdGVzdCAtbiAiJEdJVF9URVNUX1RFRV9PVVRQVVRfRklMRSIKKwl0aGVuCisJCUdJVF9URVNUX1RFRV9PRkZTRVQ9MAorCWZpCitmaQorCisjIFByb3ZpZGUgYW4gaW1wbGVtZW50YXRpb24gb2YgdGhlICd5ZXMnIHV0aWxpdHk7IHRoZSB1cHBlciBib3VuZAorIyBsaW1pdCBpcyB0aGVyZSB0byBoZWxwIFdpbmRvd3MgdGhhdCBjYW5ub3Qgc3RvcCB0aGlzIGxvb3AgZnJvbQorIyB3YXN0aW5nIGN5Y2xlcyB3aGVuIHRoZSBkb3duc3RyZWFtIHN0b3BzIHJlYWRpbmcsIHNvIGRvIG5vdCBiZQorIyB0ZW1wdGVkIHRvIHR1cm4gaXQgaW50byBhbiBpbmZpbml0ZSBsb29wLiBjZi4gNjEyOWM5MzAgKCJ0ZXN0LWxpYjoKKyMgbGltaXQgdGhlIG91dHB1dCBvZiB0aGUgeWVzIHV0aWxpdHkiLCAyMDE2LTAyLTAyKQogeWVzICgpIHsKIAlpZiB0ZXN0ICQjID0gMAogCXRoZW4KQEAgLTEwODEsNyArMTQwNCwyNiBAQAogCWRvbmUKIH0KIAotIyBGaXggc29tZSBjb21tYW5kcyBvbiBXaW5kb3dzCisjIFRoZSBHSVRfVEVTVF9GQUlMX1BSRVJFUVMgY29kZSBob29rcyBpbnRvIHRlc3Rfc2V0X3ByZXJlcSgpLCBhbmQKKyMgdGh1cyBuZWVkcyB0byBiZSBzZXQgdXAgcmVhbGx5IGVhcmx5LCBhbmQgc2V0IGFuIGludGVybmFsIHZhcmlhYmxlCisjIGZvciBjb252ZW5pZW5jZSBzbyB0aGUgaG90IHRlc3Rfc2V0X3ByZXJlcSgpIGNvZGVwYXRoIGRvZXNuJ3QgbmVlZAorIyB0byBjYWxsICJnaXQgZW52LS1oZWxwZXIiICh2aWEgdGVzdF9ib29sX2VudikuIE9ubHkgZG8gdGhhdCB3b3JrCisjIGlmIG5lZWRlZCBieSBzZWVpbmcgaWYgR0lUX1RFU1RfRkFJTF9QUkVSRVFTIGlzIHNldCBhdCBhbGwuCitHSVRfVEVTVF9GQUlMX1BSRVJFUVNfSU5URVJOQUw9CitpZiB0ZXN0IC1uICIkR0lUX1RFU1RfRkFJTF9QUkVSRVFTIgordGhlbgorCWlmIHRlc3RfYm9vbF9lbnYgR0lUX1RFU1RfRkFJTF9QUkVSRVFTIGZhbHNlCisJdGhlbgorCQlHSVRfVEVTVF9GQUlMX1BSRVJFUVNfSU5URVJOQUw9dHJ1ZQorCQl0ZXN0X3NldF9wcmVyZXEgRkFJTF9QUkVSRVFTCisJZmkKK2Vsc2UKKwl0ZXN0X2xhenlfcHJlcmVxIEZBSUxfUFJFUkVRUyAnCisJCXRlc3RfYm9vbF9lbnYgR0lUX1RFU1RfRkFJTF9QUkVSRVFTIGZhbHNlCisJJworZmkKKworIyBGaXggc29tZSBjb21tYW5kcyBvbiBXaW5kb3dzLCBhbmQgb3RoZXIgT1Mtc3BlY2lmaWMgdGhpbmdzCiB1bmFtZV9zPSQodW5hbWUgLXMpCiBjYXNlICR1bmFtZV9zIGluCiAqTUlOR1cqKQpAQCAtMTExMiw2ICsxNDU0LDEyIEBACiAJdGVzdF9zZXRfcHJlcmVxIFNFRF9TVFJJUFNfQ1IKIAl0ZXN0X3NldF9wcmVyZXEgR1JFUF9TVFJJUFNfQ1IKIAk7OworRnJlZUJTRCkKKwl0ZXN0X3NldF9wcmVyZXEgUkVHRVhfSUxMU0VRCisJdGVzdF9zZXRfcHJlcmVxIFBPU0lYUEVSTQorCXRlc3Rfc2V0X3ByZXJlcSBCU0xBU0hQU1BFQworCXRlc3Rfc2V0X3ByZXJlcSBFWEVDS0VFUFNQSUQKKwk7OwogKikKIAl0ZXN0X3NldF9wcmVyZXEgUE9TSVhQRVJNCiAJdGVzdF9zZXRfcHJlcmVxIEJTTEFTSFBTUEVDCkBAIC0xMTMxLDE0ICsxNDc5LDEzIEBACiBpZiB0ZXN0IC1uICIkR0lUX1RFU1RfR0VUVEVYVF9QT0lTT05fT1JJRyIKIHRoZW4KIAlHSVRfVEVTVF9HRVRURVhUX1BPSVNPTj0kR0lUX1RFU1RfR0VUVEVYVF9QT0lTT05fT1JJRworCWV4cG9ydCBHSVRfVEVTVF9HRVRURVhUX1BPSVNPTgogCXVuc2V0IEdJVF9URVNUX0dFVFRFWFRfUE9JU09OX09SSUcKIGZpCiAKLSMgQ2FuIHdlIHJlbHkgb24gZ2l0J3Mgb3V0cHV0IGluIHRoZSBDIGxvY2FsZT8KLWlmIHRlc3QgLXogIiRHSVRfVEVTVF9HRVRURVhUX1BPSVNPTiIKLXRoZW4KLQl0ZXN0X3NldF9wcmVyZXEgQ19MT0NBTEVfT1VUUFVUCi1maQordGVzdF9sYXp5X3ByZXJlcSBDX0xPQ0FMRV9PVVRQVVQgJworCSEgdGVzdF9ib29sX2VudiBHSVRfVEVTVF9HRVRURVhUX1BPSVNPTiBmYWxzZQorJwogCiBpZiB0ZXN0IC16ICIkR0lUX1RFU1RfQ0hFQ0tfQ0FDSEVfVFJFRSIKIHRoZW4KQEAgLTEyMTMsNyArMTU2MCw3IEBACiAnCiAKIHRlc3RfbGF6eV9wcmVyZXEgSkdJVCAnCi0JdHlwZSBqZ2l0CisJamdpdCAtLXZlcnNpb24KICcKIAogIyBTQU5JVFkgaXMgYWJvdXQgImNhbiB5b3UgY29ycmVjdGx5IHByZWRpY3Qgd2hhdCB0aGUgZmlsZXN5c3RlbSB3b3VsZApkaWZmIC0tZ2l0IGEvdGFnLmMgYi90YWcuYwppbmRleCA3NDQ1YjhmLi43MWI1NDQ0IDEwMDY0NAotLS0gYS90YWcuYworKysgYi90YWcuYwpAQCAtMTAwLDEwICsxMDAsOSBAQAogCiBzdHJ1Y3QgdGFnICpsb29rdXBfdGFnKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0Jc3RydWN0IG9iamVjdCAqb2JqID0gbG9va3VwX29iamVjdChyLCBvaWQtPmhhc2gpOworCXN0cnVjdCBvYmplY3QgKm9iaiA9IGxvb2t1cF9vYmplY3Qociwgb2lkKTsKIAlpZiAoIW9iaikKLQkJcmV0dXJuIGNyZWF0ZV9vYmplY3Qociwgb2lkLT5oYXNoLAotCQkJCSAgICAgYWxsb2NfdGFnX25vZGUocikpOworCQlyZXR1cm4gY3JlYXRlX29iamVjdChyLCBvaWQsIGFsbG9jX3RhZ19ub2RlKHIpKTsKIAlyZXR1cm4gb2JqZWN0X2FzX3R5cGUociwgb2JqLCBPQkpfVEFHLCAwKTsKIH0KIApAQCAtMTQyLDcgKzE0MSwxNiBAQAogCiAJaWYgKGl0ZW0tPm9iamVjdC5wYXJzZWQpCiAJCXJldHVybiAwOwotCWl0ZW0tPm9iamVjdC5wYXJzZWQgPSAxOworCisJaWYgKGl0ZW0tPnRhZykgeworCQkvKgorCQkgKiBQcmVzdW1hYmx5IGxlZnQgb3ZlciBmcm9tIGEgcHJldmlvdXMgZmFpbGVkIHBhcnNlOworCQkgKiBjbGVhciBpdCBvdXQgaW4gcHJlcGFyYXRpb24gZm9yIHJlLXBhcnNpbmcgKHdlJ2xsIHByb2JhYmx5CisJCSAqIGhpdCB0aGUgc2FtZSBlcnJvciwgd2hpY2ggbGV0cyB1cyB0ZWxsIG91ciBjdXJyZW50IGNhbGxlcgorCQkgKiBhYm91dCB0aGUgcHJvYmxlbSkuCisJCSAqLworCQlGUkVFX0FORF9OVUxMKGl0ZW0tPnRhZyk7CisJfQogCiAJaWYgKHNpemUgPCB0aGVfaGFzaF9hbGdvLT5oZXhzeiArIDI0KQogCQlyZXR1cm4gLTE7CkBAIC0xNjgsMTAgKzE3NiwxNSBAQAogCX0gZWxzZSBpZiAoIXN0cmNtcCh0eXBlLCB0YWdfdHlwZSkpIHsKIAkJaXRlbS0+dGFnZ2VkID0gKHN0cnVjdCBvYmplY3QgKilsb29rdXBfdGFnKHIsICZvaWQpOwogCX0gZWxzZSB7Ci0JCWVycm9yKCJVbmtub3duIHR5cGUgJXMiLCB0eXBlKTsKLQkJaXRlbS0+dGFnZ2VkID0gTlVMTDsKKwkJcmV0dXJuIGVycm9yKCJ1bmtub3duIHRhZyB0eXBlICclcycgaW4gJXMiLAorCQkJICAgICB0eXBlLCBvaWRfdG9faGV4KCZpdGVtLT5vYmplY3Qub2lkKSk7CiAJfQogCisJaWYgKCFpdGVtLT50YWdnZWQpCisJCXJldHVybiBlcnJvcigiYmFkIHRhZyBwb2ludGVyIHRvICVzIGluICVzIiwKKwkJCSAgICAgb2lkX3RvX2hleCgmb2lkKSwKKwkJCSAgICAgb2lkX3RvX2hleCgmaXRlbS0+b2JqZWN0Lm9pZCkpOworCiAJaWYgKGJ1ZnB0ciArIDQgPCB0YWlsICYmIHN0YXJ0c193aXRoKGJ1ZnB0ciwgInRhZyAiKSkKIAkJOyAJCS8qIGdvb2QgKi8KIAllbHNlCkBAIC0xODgsNiArMjAxLDcgQEAKIAllbHNlCiAJCWl0ZW0tPmRhdGUgPSAwOwogCisJaXRlbS0+b2JqZWN0LnBhcnNlZCA9IDE7CiAJcmV0dXJuIDA7CiB9CiAKQEAgLTIxMywzICsyMjcsMTAgQEAKIAlmcmVlKGRhdGEpOwogCXJldHVybiByZXQ7CiB9CisKK3N0cnVjdCBvYmplY3RfaWQgKmdldF90YWdnZWRfb2lkKHN0cnVjdCB0YWcgKnRhZykKK3sKKwlpZiAoIXRhZy0+dGFnZ2VkKQorCQlkaWUoImJhZCB0YWciKTsKKwlyZXR1cm4gJnRhZy0+dGFnZ2VkLT5vaWQ7Cit9CmRpZmYgLS1naXQgYS90YWcuaCBiL3RhZy5oCmluZGV4IGU2NjljM2UuLjNjZThlNzIgMTAwNjQ0Ci0tLSBhL3RhZy5oCisrKyBiL3RhZy5oCkBAIC0xMSwxMyArMTEsMTQgQEAKIAljaGFyICp0YWc7CiAJdGltZXN0YW1wX3QgZGF0ZTsKIH07Ci1leHRlcm4gc3RydWN0IHRhZyAqbG9va3VwX3RhZyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKLWV4dGVybiBpbnQgcGFyc2VfdGFnX2J1ZmZlcihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHRhZyAqaXRlbSwgY29uc3Qgdm9pZCAqZGF0YSwgdW5zaWduZWQgbG9uZyBzaXplKTsKLWV4dGVybiBpbnQgcGFyc2VfdGFnKHN0cnVjdCB0YWcgKml0ZW0pOwotZXh0ZXJuIHZvaWQgcmVsZWFzZV90YWdfbWVtb3J5KHN0cnVjdCB0YWcgKnQpOwotZXh0ZXJuIHN0cnVjdCBvYmplY3QgKmRlcmVmX3RhZyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IG9iamVjdCAqLCBjb25zdCBjaGFyICosIGludCk7Ci1leHRlcm4gc3RydWN0IG9iamVjdCAqZGVyZWZfdGFnX25vdmVyaWZ5KHN0cnVjdCBvYmplY3QgKik7Ci1leHRlcm4gaW50IGdwZ192ZXJpZnlfdGFnKGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCwKLQkJY29uc3QgY2hhciAqbmFtZV90b19yZXBvcnQsIHVuc2lnbmVkIGZsYWdzKTsKK3N0cnVjdCB0YWcgKmxvb2t1cF90YWcoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CitpbnQgcGFyc2VfdGFnX2J1ZmZlcihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHRhZyAqaXRlbSwgY29uc3Qgdm9pZCAqZGF0YSwgdW5zaWduZWQgbG9uZyBzaXplKTsKK2ludCBwYXJzZV90YWcoc3RydWN0IHRhZyAqaXRlbSk7Cit2b2lkIHJlbGVhc2VfdGFnX21lbW9yeShzdHJ1Y3QgdGFnICp0KTsKK3N0cnVjdCBvYmplY3QgKmRlcmVmX3RhZyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IG9iamVjdCAqLCBjb25zdCBjaGFyICosIGludCk7CitzdHJ1Y3Qgb2JqZWN0ICpkZXJlZl90YWdfbm92ZXJpZnkoc3RydWN0IG9iamVjdCAqKTsKK2ludCBncGdfdmVyaWZ5X3RhZyhjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCSAgIGNvbnN0IGNoYXIgKm5hbWVfdG9fcmVwb3J0LCB1bnNpZ25lZCBmbGFncyk7CitzdHJ1Y3Qgb2JqZWN0X2lkICpnZXRfdGFnZ2VkX29pZChzdHJ1Y3QgdGFnICp0YWcpOwogCiAjZW5kaWYgLyogVEFHX0ggKi8KZGlmZiAtLWdpdCBhL3Rhci5oIGIvdGFyLmgKaW5kZXggMzQ2NzcwNS4uNmIyNThjNCAxMDA2NDQKLS0tIGEvdGFyLmgKKysrIGIvdGFyLmgKQEAgLTEsMyArMSw2IEBACisjaWZuZGVmIFRBUl9ICisjZGVmaW5lIFRBUl9ICisKICNkZWZpbmUgVFlQRUZMQUdfQVVUTwkJJ1wwJwogI2RlZmluZSBUWVBFRkxBR19SRUcJCScwJwogI2RlZmluZSBUWVBFRkxBR19MTksJCScyJwpAQCAtMjMsMyArMjYsNSBAQAogCWNoYXIgZGV2bWlub3JbOF07CS8qIDMzNyAqLwogCWNoYXIgcHJlZml4WzE1NV07CS8qIDM0NSAqLwogfTsKKworI2VuZGlmIC8qIFRBUl9IICovCmRpZmYgLS1naXQgYS90ZW1wZmlsZS5oIGIvdGVtcGZpbGUuaAppbmRleCA2MWQ4ZGM0Li5jZGRkYTBhIDEwMDY0NAotLS0gYS90ZW1wZmlsZS5oCisrKyBiL3RlbXBmaWxlLmgKQEAgLTg5LDcgKzg5LDcgQEAKICAqIGEgdGVtcGZpbGUgKHdob3NlICJmZCIgbWVtYmVyIGNhbiBiZSB1c2VkIGZvciB3cml0aW5nIHRvIGl0KSwgb3IKICAqIE5VTEwgb24gZXJyb3IuIEl0IGlzIGFuIGVycm9yIGlmIGEgZmlsZSBhbHJlYWR5IGV4aXN0cyBhdCB0aGF0IHBhdGguCiAgKi8KLWV4dGVybiBzdHJ1Y3QgdGVtcGZpbGUgKmNyZWF0ZV90ZW1wZmlsZShjb25zdCBjaGFyICpwYXRoKTsKK3N0cnVjdCB0ZW1wZmlsZSAqY3JlYXRlX3RlbXBmaWxlKGNvbnN0IGNoYXIgKnBhdGgpOwogCiAvKgogICogUmVnaXN0ZXIgYW4gZXhpc3RpbmcgZmlsZSBhcyBhIHRlbXBmaWxlLCBtZWFuaW5nIHRoYXQgaXQgd2lsbCBiZQpAQCAtOTcsNyArOTcsNyBAQAogICogYnV0IGl0IGNhbiBiZSB3b3JrZWQgd2l0aCBsaWtlIGFueSBvdGhlciBjbG9zZWQgdGVtcGZpbGUgKGZvcgogICogZXhhbXBsZSwgaXQgY2FuIGJlIG9wZW5lZCB1c2luZyByZW9wZW5fdGVtcGZpbGUoKSkuCiAgKi8KLWV4dGVybiBzdHJ1Y3QgdGVtcGZpbGUgKnJlZ2lzdGVyX3RlbXBmaWxlKGNvbnN0IGNoYXIgKnBhdGgpOworc3RydWN0IHRlbXBmaWxlICpyZWdpc3Rlcl90ZW1wZmlsZShjb25zdCBjaGFyICpwYXRoKTsKIAogCiAvKgpAQCAtMTM2LDggKzEzNiw4IEBACiAgKi8KIAogLyogU2VlICJta3NfdGVtcGZpbGUgZnVuY3Rpb25zIiBhYm92ZS4gKi8KLWV4dGVybiBzdHJ1Y3QgdGVtcGZpbGUgKm1rc190ZW1wZmlsZV9zbShjb25zdCBjaGFyICpmaWxlbmFtZV90ZW1wbGF0ZSwKLQkJCQkJaW50IHN1ZmZpeGxlbiwgaW50IG1vZGUpOworc3RydWN0IHRlbXBmaWxlICpta3NfdGVtcGZpbGVfc20oY29uc3QgY2hhciAqZmlsZW5hbWVfdGVtcGxhdGUsCisJCQkJIGludCBzdWZmaXhsZW4sIGludCBtb2RlKTsKIAogLyogU2VlICJta3NfdGVtcGZpbGUgZnVuY3Rpb25zIiBhYm92ZS4gKi8KIHN0YXRpYyBpbmxpbmUgc3RydWN0IHRlbXBmaWxlICpta3NfdGVtcGZpbGVfcyhjb25zdCBjaGFyICpmaWxlbmFtZV90ZW1wbGF0ZSwKQEAgLTE1OSw4ICsxNTksOCBAQAogfQogCiAvKiBTZWUgIm1rc190ZW1wZmlsZSBmdW5jdGlvbnMiIGFib3ZlLiAqLwotZXh0ZXJuIHN0cnVjdCB0ZW1wZmlsZSAqbWtzX3RlbXBmaWxlX3RzbShjb25zdCBjaGFyICpmaWxlbmFtZV90ZW1wbGF0ZSwKLQkJCQkJIGludCBzdWZmaXhsZW4sIGludCBtb2RlKTsKK3N0cnVjdCB0ZW1wZmlsZSAqbWtzX3RlbXBmaWxlX3RzbShjb25zdCBjaGFyICpmaWxlbmFtZV90ZW1wbGF0ZSwKKwkJCQkgIGludCBzdWZmaXhsZW4sIGludCBtb2RlKTsKIAogLyogU2VlICJta3NfdGVtcGZpbGUgZnVuY3Rpb25zIiBhYm92ZS4gKi8KIHN0YXRpYyBpbmxpbmUgc3RydWN0IHRlbXBmaWxlICpta3NfdGVtcGZpbGVfdHMoY29uc3QgY2hhciAqZmlsZW5hbWVfdGVtcGxhdGUsCkBAIC0xODIsNyArMTgyLDcgQEAKIH0KIAogLyogU2VlICJta3NfdGVtcGZpbGUgZnVuY3Rpb25zIiBhYm92ZS4gKi8KLWV4dGVybiBzdHJ1Y3QgdGVtcGZpbGUgKnhta3NfdGVtcGZpbGVfbShjb25zdCBjaGFyICpmaWxlbmFtZV90ZW1wbGF0ZSwgaW50IG1vZGUpOworc3RydWN0IHRlbXBmaWxlICp4bWtzX3RlbXBmaWxlX20oY29uc3QgY2hhciAqZmlsZW5hbWVfdGVtcGxhdGUsIGludCBtb2RlKTsKIAogLyogU2VlICJta3NfdGVtcGZpbGUgZnVuY3Rpb25zIiBhYm92ZS4gKi8KIHN0YXRpYyBpbmxpbmUgc3RydWN0IHRlbXBmaWxlICp4bWtzX3RlbXBmaWxlKGNvbnN0IGNoYXIgKmZpbGVuYW1lX3RlbXBsYXRlKQpAQCAtMTk2LDcgKzE5Niw3IEBACiAgKiBzdHJlYW0gaXMgY2xvc2VkIGF1dG9tYXRpY2FsbHkgd2hlbiBgY2xvc2VfdGVtcGZpbGVfZ2VudGx5KClgIGlzIGNhbGxlZCBvcgogICogd2hlbiB0aGUgZmlsZSBpcyBkZWxldGVkIG9yIHJlbmFtZWQuCiAgKi8KLWV4dGVybiBGSUxFICpmZG9wZW5fdGVtcGZpbGUoc3RydWN0IHRlbXBmaWxlICp0ZW1wZmlsZSwgY29uc3QgY2hhciAqbW9kZSk7CitGSUxFICpmZG9wZW5fdGVtcGZpbGUoc3RydWN0IHRlbXBmaWxlICp0ZW1wZmlsZSwgY29uc3QgY2hhciAqbW9kZSk7CiAKIHN0YXRpYyBpbmxpbmUgaW50IGlzX3RlbXBmaWxlX2FjdGl2ZShzdHJ1Y3QgdGVtcGZpbGUgKnRlbXBmaWxlKQogewpAQCAtMjA3LDEwICsyMDcsMTAgQEAKICAqIFJldHVybiB0aGUgcGF0aCBvZiB0aGUgbG9ja2ZpbGUuIFRoZSByZXR1cm4gdmFsdWUgaXMgYSBwb2ludGVyIHRvIGEKICAqIGZpZWxkIHdpdGhpbiB0aGUgbG9ja19maWxlIG9iamVjdCBhbmQgc2hvdWxkIG5vdCBiZSBmcmVlZC4KICAqLwotZXh0ZXJuIGNvbnN0IGNoYXIgKmdldF90ZW1wZmlsZV9wYXRoKHN0cnVjdCB0ZW1wZmlsZSAqdGVtcGZpbGUpOworY29uc3QgY2hhciAqZ2V0X3RlbXBmaWxlX3BhdGgoc3RydWN0IHRlbXBmaWxlICp0ZW1wZmlsZSk7CiAKLWV4dGVybiBpbnQgZ2V0X3RlbXBmaWxlX2ZkKHN0cnVjdCB0ZW1wZmlsZSAqdGVtcGZpbGUpOwotZXh0ZXJuIEZJTEUgKmdldF90ZW1wZmlsZV9mcChzdHJ1Y3QgdGVtcGZpbGUgKnRlbXBmaWxlKTsKK2ludCBnZXRfdGVtcGZpbGVfZmQoc3RydWN0IHRlbXBmaWxlICp0ZW1wZmlsZSk7CitGSUxFICpnZXRfdGVtcGZpbGVfZnAoc3RydWN0IHRlbXBmaWxlICp0ZW1wZmlsZSk7CiAKIC8qCiAgKiBJZiB0aGUgdGVtcG9yYXJ5IGZpbGUgaXMgc3RpbGwgb3BlbiwgY2xvc2UgaXQgKGFuZCB0aGUgZmlsZSBwb2ludGVyCkBAIC0yMjAsNyArMjIwLDcgQEAKICAqIHNob3VsZCBldmVudHVhbGx5IGJlIGNhbGxlZCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgYGNsb3NlX3RlbXBmaWxlX2dlbnRseSgpYAogICogc3VjY2VlZHMuCiAgKi8KLWV4dGVybiBpbnQgY2xvc2VfdGVtcGZpbGVfZ2VudGx5KHN0cnVjdCB0ZW1wZmlsZSAqdGVtcGZpbGUpOworaW50IGNsb3NlX3RlbXBmaWxlX2dlbnRseShzdHJ1Y3QgdGVtcGZpbGUgKnRlbXBmaWxlKTsKIAogLyoKICAqIFJlLW9wZW4gYSB0ZW1wb3JhcnkgZmlsZSB0aGF0IGhhcyBiZWVuIGNsb3NlZCB1c2luZwpAQCAtMjQxLDcgKzI0MSw3IEBACiAgKgogICogKiBgcmVuYW1lX3RlbXBmaWxlKClgIHRvIG1vdmUgdGhlIGZpbGUgdG8gaXRzIHBlcm1hbmVudCBsb2NhdGlvbi4KICAqLwotZXh0ZXJuIGludCByZW9wZW5fdGVtcGZpbGUoc3RydWN0IHRlbXBmaWxlICp0ZW1wZmlsZSk7CitpbnQgcmVvcGVuX3RlbXBmaWxlKHN0cnVjdCB0ZW1wZmlsZSAqdGVtcGZpbGUpOwogCiAvKgogICogQ2xvc2UgdGhlIGZpbGUgZGVzY3JpcHRvciBhbmQvb3IgZmlsZSBwb2ludGVyIGFuZCByZW1vdmUgdGhlCkBAIC0yNDksNyArMjQ5LDcgQEAKICAqIGBkZWxldGVfdGVtcGZpbGUoKWAgZm9yIGEgYHRlbXBmaWxlYCBvYmplY3QgdGhhdCBoYXMgYWxyZWFkeSBiZWVuCiAgKiBkZWxldGVkIG9yIHJlbmFtZWQuCiAgKi8KLWV4dGVybiB2b2lkIGRlbGV0ZV90ZW1wZmlsZShzdHJ1Y3QgdGVtcGZpbGUgKip0ZW1wZmlsZV9wKTsKK3ZvaWQgZGVsZXRlX3RlbXBmaWxlKHN0cnVjdCB0ZW1wZmlsZSAqKnRlbXBmaWxlX3ApOwogCiAvKgogICogQ2xvc2UgdGhlIGZpbGUgZGVzY3JpcHRvciBhbmQvb3IgZmlsZSBwb2ludGVyIGlmIHRoZXkgYXJlIHN0aWxsCkBAIC0yNjAsNiArMjYwLDYgQEAKICAqIGByZW5hbWUoMilgLiBJdCBpcyBhIGJ1ZyB0byBjYWxsIGByZW5hbWVfdGVtcGZpbGUoKWAgZm9yIGEKICAqIGB0ZW1wZmlsZWAgb2JqZWN0IHRoYXQgaXMgbm90IGN1cnJlbnRseSBhY3RpdmUuCiAgKi8KLWV4dGVybiBpbnQgcmVuYW1lX3RlbXBmaWxlKHN0cnVjdCB0ZW1wZmlsZSAqKnRlbXBmaWxlX3AsIGNvbnN0IGNoYXIgKnBhdGgpOworaW50IHJlbmFtZV90ZW1wZmlsZShzdHJ1Y3QgdGVtcGZpbGUgKip0ZW1wZmlsZV9wLCBjb25zdCBjaGFyICpwYXRoKTsKIAogI2VuZGlmIC8qIFRFTVBGSUxFX0ggKi8KZGlmZiAtLWdpdCBhL3RlbXBsYXRlcy9ob29rcy0tZnNtb25pdG9yLXdhdGNobWFuLnNhbXBsZSBiL3RlbXBsYXRlcy9ob29rcy0tZnNtb25pdG9yLXdhdGNobWFuLnNhbXBsZQppbmRleCBlNjczYmIzLi4xNGVkMGFhIDEwMDc1NQotLS0gYS90ZW1wbGF0ZXMvaG9va3MtLWZzbW9uaXRvci13YXRjaG1hbi5zYW1wbGUKKysrIGIvdGVtcGxhdGVzL2hvb2tzLS1mc21vbml0b3Itd2F0Y2htYW4uc2FtcGxlCkBAIC04LDEwNyArOCwxNjYgQEAKICMgKGh0dHBzOi8vZmFjZWJvb2suZ2l0aHViLmlvL3dhdGNobWFuLykgd2l0aCBnaXQgdG8gc3BlZWQgdXAgZGV0ZWN0aW5nCiAjIG5ldyBhbmQgbW9kaWZpZWQgZmlsZXMuCiAjCi0jIFRoZSBob29rIGlzIHBhc3NlZCBhIHZlcnNpb24gKGN1cnJlbnRseSAxKSBhbmQgYSB0aW1lIGluIG5hbm9zZWNvbmRzCi0jIGZvcm1hdHRlZCBhcyBhIHN0cmluZyBhbmQgb3V0cHV0cyB0byBzdGRvdXQgYWxsIGZpbGVzIHRoYXQgaGF2ZSBiZWVuCi0jIG1vZGlmaWVkIHNpbmNlIHRoZSBnaXZlbiB0aW1lLiBQYXRocyBtdXN0IGJlIHJlbGF0aXZlIHRvIHRoZSByb290IG9mCi0jIHRoZSB3b3JraW5nIHRyZWUgYW5kIHNlcGFyYXRlZCBieSBhIHNpbmdsZSBOVUwuCisjIFRoZSBob29rIGlzIHBhc3NlZCBhIHZlcnNpb24gKGN1cnJlbnRseSAyKSBhbmQgbGFzdCB1cGRhdGUgdG9rZW4KKyMgZm9ybWF0dGVkIGFzIGEgc3RyaW5nIGFuZCBvdXRwdXRzIHRvIHN0ZG91dCBhIG5ldyB1cGRhdGUgdG9rZW4gYW5kCisjIGFsbCBmaWxlcyB0aGF0IGhhdmUgYmVlbiBtb2RpZmllZCBzaW5jZSB0aGUgdXBkYXRlIHRva2VuLiBQYXRocyBtdXN0CisjIGJlIHJlbGF0aXZlIHRvIHRoZSByb290IG9mIHRoZSB3b3JraW5nIHRyZWUgYW5kIHNlcGFyYXRlZCBieSBhIHNpbmdsZSBOVUwuCiAjCiAjIFRvIGVuYWJsZSB0aGlzIGhvb2ssIHJlbmFtZSB0aGlzIGZpbGUgdG8gInF1ZXJ5LXdhdGNobWFuIiBhbmQgc2V0CiAjICdnaXQgY29uZmlnIGNvcmUuZnNtb25pdG9yIC5naXQvaG9va3MvcXVlcnktd2F0Y2htYW4nCiAjCi1teSAoJHZlcnNpb24sICR0aW1lKSA9IEBBUkdWOworbXkgKCR2ZXJzaW9uLCAkbGFzdF91cGRhdGVfdG9rZW4pID0gQEFSR1Y7CisKKyMgVW5jb21tZW50IGZvciBkZWJ1Z2dpbmcKKyMgcHJpbnQgU1RERVJSICIkMCAkdmVyc2lvbiAkbGFzdF91cGRhdGVfdG9rZW5cbiI7CiAKICMgQ2hlY2sgdGhlIGhvb2sgaW50ZXJmYWNlIHZlcnNpb24KLQotaWYgKCR2ZXJzaW9uID09IDEpIHsKLQkjIGNvbnZlcnQgbmFub3NlY29uZHMgdG8gc2Vjb25kcwotCSR0aW1lID0gaW50ICR0aW1lIC8gMTAwMDAwMDAwMDsKLX0gZWxzZSB7CitpZiAoJHZlcnNpb24gbmUgMikgewogCWRpZSAiVW5zdXBwb3J0ZWQgcXVlcnktZnNtb25pdG9yIGhvb2sgdmVyc2lvbiAnJHZlcnNpb24nLlxuIiAuCiAJICAgICJGYWxsaW5nIGJhY2sgdG8gc2Nhbm5pbmcuLi5cbiI7CiB9CiAKLW15ICRnaXRfd29ya190cmVlOwotaWYgKCReTyA9fiAnbXN5cycgfHwgJF5PID1+ICdjeWd3aW4nKSB7Ci0JJGdpdF93b3JrX3RyZWUgPSBXaW4zMjo6R2V0Q3dkKCk7Ci0JJGdpdF93b3JrX3RyZWUgPX4gdHIvXFwvXC8vOwotfSBlbHNlIHsKLQlyZXF1aXJlIEN3ZDsKLQkkZ2l0X3dvcmtfdHJlZSA9IEN3ZDo6Y3dkKCk7Ci19CitteSAkZ2l0X3dvcmtfdHJlZSA9IGdldF93b3JraW5nX2RpcigpOwogCiBteSAkcmV0cnkgPSAxOwogCitteSAkanNvbl9wa2c7CitldmFsIHsKKwlyZXF1aXJlIEpTT046OlhTOworCSRqc29uX3BrZyA9ICJKU09OOjpYUyI7CisJMTsKK30gb3IgZG8geworCXJlcXVpcmUgSlNPTjo6UFA7CisJJGpzb25fcGtnID0gIkpTT046OlBQIjsKK307CisKIGxhdW5jaF93YXRjaG1hbigpOwogCiBzdWIgbGF1bmNoX3dhdGNobWFuIHsKKwlteSAkbyA9IHdhdGNobWFuX3F1ZXJ5KCk7CisJaWYgKGlzX3dvcmtfdHJlZV93YXRjaGVkKCRvKSkgeworCQlvdXRwdXRfcmVzdWx0KCRvLT57Y2xvY2t9LCBAeyRvLT57ZmlsZXN9fSk7CisJfQorfQogCitzdWIgb3V0cHV0X3Jlc3VsdCB7CisJbXkgKCRjbG9ja2lkLCBAZmlsZXMpID0gQF87CisKKwkjIFVuY29tbWVudCBmb3IgZGVidWdnaW5nIHdhdGNobWFuIG91dHB1dAorCSMgb3BlbiAobXkgJGZoLCAiPiIsICIuZ2l0L3dhdGNobWFuLW91dHB1dC5vdXQiKTsKKwkjIGJpbm1vZGUgJGZoLCAiOnV0ZjgiOworCSMgcHJpbnQgJGZoICIkY2xvY2tpZFxuQGZpbGVzXG4iOworCSMgY2xvc2UgJGZoOworCisJYmlubW9kZSBTVERPVVQsICI6dXRmOCI7CisJcHJpbnQgJGNsb2NraWQ7CisJcHJpbnQgIlwwIjsKKwlsb2NhbCAkLCA9ICJcMCI7CisJcHJpbnQgQGZpbGVzOworfQorCitzdWIgd2F0Y2htYW5fY2xvY2sgeworCW15ICRyZXNwb25zZSA9IHF4L3dhdGNobWFuIGNsb2NrICIkZ2l0X3dvcmtfdHJlZSIvOworCWRpZSAiRmFpbGVkIHRvIGdldCBjbG9jayBpZCBvbiAnJGdpdF93b3JrX3RyZWUnLlxuIiAuCisJCSJGYWxsaW5nIGJhY2sgdG8gc2Nhbm5pbmcuLi5cbiIgaWYgJD8gIT0gMDsKKworCXJldHVybiAkanNvbl9wa2ctPm5ldy0+dXRmOC0+ZGVjb2RlKCRyZXNwb25zZSk7Cit9CisKK3N1YiB3YXRjaG1hbl9xdWVyeSB7CiAJbXkgJHBpZCA9IG9wZW4yKFwqQ0hMRF9PVVQsIFwqQ0hMRF9JTiwgJ3dhdGNobWFuIC1qIC0tbm8tcHJldHR5JykKLQkgICAgb3IgZGllICJvcGVuMigpIGZhaWxlZDogJCFcbiIgLgotCSAgICAiRmFsbGluZyBiYWNrIHRvIHNjYW5uaW5nLi4uXG4iOworCW9yIGRpZSAib3BlbjIoKSBmYWlsZWQ6ICQhXG4iIC4KKwkiRmFsbGluZyBiYWNrIHRvIHNjYW5uaW5nLi4uXG4iOwogCiAJIyBJbiB0aGUgcXVlcnkgZXhwcmVzc2lvbiBiZWxvdyB3ZSdyZSBhc2tpbmcgZm9yIG5hbWVzIG9mIGZpbGVzIHRoYXQKLQkjIGNoYW5nZWQgc2luY2UgJHRpbWUgYnV0IHdlcmUgbm90IHRyYW5zaWVudCAoaWUgY3JlYXRlZCBhZnRlcgotCSMgJHRpbWUgYnV0IG5vIGxvbmdlciBleGlzdCkuCisJIyBjaGFuZ2VkIHNpbmNlICRsYXN0X3VwZGF0ZV90b2tlbiBidXQgbm90IGZyb20gdGhlIC5naXQgZm9sZGVyLgogCSMKIAkjIFRvIGFjY29tcGxpc2ggdGhpcywgd2UncmUgdXNpbmcgdGhlICJzaW5jZSIgZ2VuZXJhdG9yIHRvIHVzZSB0aGUKIAkjIHJlY2VuY3kgaW5kZXggdG8gc2VsZWN0IGNhbmRpZGF0ZSBub2RlcyBhbmQgImZpZWxkcyIgdG8gbGltaXQgdGhlCiAJIyBvdXRwdXQgdG8gZmlsZSBuYW1lcyBvbmx5LiBUaGVuIHdlJ3JlIHVzaW5nIHRoZSAiZXhwcmVzc2lvbiIgdGVybSB0bwogCSMgZnVydGhlciBjb25zdHJhaW4gdGhlIHJlc3VsdHMuCi0JIwotCSMgVGhlIGNhdGVnb3J5IG9mIHRyYW5zaWVudCBmaWxlcyB0aGF0IHdlIHdhbnQgdG8gaWdub3JlIHdpbGwgaGF2ZSBhCi0JIyBjcmVhdGlvbiBjbG9jayAoY2Nsb2NrKSBuZXdlciB0aGFuICR0aW1lX3QgdmFsdWUgYW5kIHdpbGwgYWxzbyBub3QKLQkjIGN1cnJlbnRseSBleGlzdC4KLQorCWlmIChzdWJzdHIoJGxhc3RfdXBkYXRlX3Rva2VuLCAwLCAxKSBlcSAiYyIpIHsKKwkJJGxhc3RfdXBkYXRlX3Rva2VuID0gIlwiJGxhc3RfdXBkYXRlX3Rva2VuXCIiOworCX0KIAlteSAkcXVlcnkgPSA8PCIJRU5EIjsKIAkJWyJxdWVyeSIsICIkZ2l0X3dvcmtfdHJlZSIsIHsKLQkJCSJzaW5jZSI6ICR0aW1lLAorCQkJInNpbmNlIjogJGxhc3RfdXBkYXRlX3Rva2VuLAogCQkJImZpZWxkcyI6IFsibmFtZSJdLAotCQkJImV4cHJlc3Npb24iOiBbIm5vdCIsIFsiYWxsb2YiLCBbInNpbmNlIiwgJHRpbWUsICJjY2xvY2siXSwgWyJub3QiLCAiZXhpc3RzIl1dXQorCQkJImV4cHJlc3Npb24iOiBbIm5vdCIsIFsiZGlybmFtZSIsICIuZ2l0Il1dCiAJCX1dCiAJRU5ECiAKKwkjIFVuY29tbWVudCBmb3IgZGVidWdnaW5nIHRoZSB3YXRjaG1hbiBxdWVyeQorCSMgb3BlbiAobXkgJGZoLCAiPiIsICIuZ2l0L3dhdGNobWFuLXF1ZXJ5Lmpzb24iKTsKKwkjIHByaW50ICRmaCAkcXVlcnk7CisJIyBjbG9zZSAkZmg7CisKIAlwcmludCBDSExEX0lOICRxdWVyeTsKIAljbG9zZSBDSExEX0lOOwogCW15ICRyZXNwb25zZSA9IGRvIHtsb2NhbCAkLzsgPENITERfT1VUPn07CiAKKwkjIFVuY29tbWVudCBmb3IgZGVidWdnaW5nIHRoZSB3YXRjaCByZXNwb25zZQorCSMgb3BlbiAoJGZoLCAiPiIsICIuZ2l0L3dhdGNobWFuLXJlc3BvbnNlLmpzb24iKTsKKwkjIHByaW50ICRmaCAkcmVzcG9uc2U7CisJIyBjbG9zZSAkZmg7CisKIAlkaWUgIldhdGNobWFuOiBjb21tYW5kIHJldHVybmVkIG5vIG91dHB1dC5cbiIgLgotCSAgICAiRmFsbGluZyBiYWNrIHRvIHNjYW5uaW5nLi4uXG4iIGlmICRyZXNwb25zZSBlcSAiIjsKKwkiRmFsbGluZyBiYWNrIHRvIHNjYW5uaW5nLi4uXG4iIGlmICRyZXNwb25zZSBlcSAiIjsKIAlkaWUgIldhdGNobWFuOiBjb21tYW5kIHJldHVybmVkIGludmFsaWQgb3V0cHV0OiAkcmVzcG9uc2VcbiIgLgotCSAgICAiRmFsbGluZyBiYWNrIHRvIHNjYW5uaW5nLi4uXG4iIHVubGVzcyAkcmVzcG9uc2UgPX4gL15cey87CisJIkZhbGxpbmcgYmFjayB0byBzY2FubmluZy4uLlxuIiB1bmxlc3MgJHJlc3BvbnNlID1+IC9eXHsvOwogCi0JbXkgJGpzb25fcGtnOwotCWV2YWwgewotCQlyZXF1aXJlIEpTT046OlhTOwotCQkkanNvbl9wa2cgPSAiSlNPTjo6WFMiOwotCQkxOwotCX0gb3IgZG8gewotCQlyZXF1aXJlIEpTT046OlBQOwotCQkkanNvbl9wa2cgPSAiSlNPTjo6UFAiOwotCX07CisJcmV0dXJuICRqc29uX3BrZy0+bmV3LT51dGY4LT5kZWNvZGUoJHJlc3BvbnNlKTsKK30KIAotCW15ICRvID0gJGpzb25fcGtnLT5uZXctPnV0ZjgtPmRlY29kZSgkcmVzcG9uc2UpOwotCi0JaWYgKCRyZXRyeSA+IDAgYW5kICRvLT57ZXJyb3J9IGFuZCAkby0+e2Vycm9yfSA9fiBtL3VuYWJsZSB0byByZXNvbHZlIHJvb3QgLiogZGlyZWN0b3J5ICguKikgaXMgbm90IHdhdGNoZWQvKSB7Ci0JCXByaW50IFNUREVSUiAiQWRkaW5nICckZ2l0X3dvcmtfdHJlZScgdG8gd2F0Y2htYW4ncyB3YXRjaCBsaXN0LlxuIjsKK3N1YiBpc193b3JrX3RyZWVfd2F0Y2hlZCB7CisJbXkgKCRvdXRwdXQpID0gQF87CisJbXkgJGVycm9yID0gJG91dHB1dC0+e2Vycm9yfTsKKwlpZiAoJHJldHJ5ID4gMCBhbmQgJGVycm9yIGFuZCAkZXJyb3IgPX4gbS91bmFibGUgdG8gcmVzb2x2ZSByb290IC4qIGRpcmVjdG9yeSAoLiopIGlzIG5vdCB3YXRjaGVkLykgewogCQkkcmV0cnktLTsKLQkJcXgvd2F0Y2htYW4gd2F0Y2ggIiRnaXRfd29ya190cmVlIi87CisJCW15ICRyZXNwb25zZSA9IHF4L3dhdGNobWFuIHdhdGNoICIkZ2l0X3dvcmtfdHJlZSIvOwogCQlkaWUgIkZhaWxlZCB0byBtYWtlIHdhdGNobWFuIHdhdGNoICckZ2l0X3dvcmtfdHJlZScuXG4iIC4KIAkJICAgICJGYWxsaW5nIGJhY2sgdG8gc2Nhbm5pbmcuLi5cbiIgaWYgJD8gIT0gMDsKKwkJJG91dHB1dCA9ICRqc29uX3BrZy0+bmV3LT51dGY4LT5kZWNvZGUoJHJlc3BvbnNlKTsKKwkJJGVycm9yID0gJG91dHB1dC0+e2Vycm9yfTsKKwkJZGllICJXYXRjaG1hbjogJGVycm9yLlxuIiAuCisJCSJGYWxsaW5nIGJhY2sgdG8gc2Nhbm5pbmcuLi5cbiIgaWYgJGVycm9yOworCisJCSMgVW5jb21tZW50IGZvciBkZWJ1Z2dpbmcgd2F0Y2htYW4gb3V0cHV0CisJCSMgb3BlbiAobXkgJGZoLCAiPiIsICIuZ2l0L3dhdGNobWFuLW91dHB1dC5vdXQiKTsKKwkJIyBjbG9zZSAkZmg7CiAKIAkJIyBXYXRjaG1hbiB3aWxsIGFsd2F5cyByZXR1cm4gYWxsIGZpbGVzIG9uIHRoZSBmaXJzdCBxdWVyeSBzbwogCQkjIHJldHVybiB0aGUgZmFzdCAiZXZlcnl0aGluZyBpcyBkaXJ0eSIgZmxhZyB0byBnaXQgYW5kIGRvIHRoZQogCQkjIFdhdGNobWFuIHF1ZXJ5IGp1c3QgdG8gZ2V0IGl0IG92ZXIgd2l0aCBub3cgc28gd2Ugd29uJ3QgcGF5CiAJCSMgdGhlIGNvc3QgaW4gZ2l0IHRvIGxvb2sgdXAgZWFjaCBpbmRpdmlkdWFsIGZpbGUuCi0JCXByaW50ICIvXDAiOworCQlteSAkbyA9IHdhdGNobWFuX2Nsb2NrKCk7CisJCSRlcnJvciA9ICRvdXRwdXQtPntlcnJvcn07CisKKwkJZGllICJXYXRjaG1hbjogJGVycm9yLlxuIiAuCisJCSJGYWxsaW5nIGJhY2sgdG8gc2Nhbm5pbmcuLi5cbiIgaWYgJGVycm9yOworCisJCW91dHB1dF9yZXN1bHQoJG8tPntjbG9ja30sICgiLyIpKTsKKwkJJGxhc3RfdXBkYXRlX3Rva2VuID0gJG8tPntjbG9ja307CisKIAkJZXZhbCB7IGxhdW5jaF93YXRjaG1hbigpIH07Ci0JCWV4aXQgMDsKKwkJcmV0dXJuIDA7CiAJfQogCi0JZGllICJXYXRjaG1hbjogJG8tPntlcnJvcn0uXG4iIC4KLQkgICAgIkZhbGxpbmcgYmFjayB0byBzY2FubmluZy4uLlxuIiBpZiAkby0+e2Vycm9yfTsKKwlkaWUgIldhdGNobWFuOiAkZXJyb3IuXG4iIC4KKwkiRmFsbGluZyBiYWNrIHRvIHNjYW5uaW5nLi4uXG4iIGlmICRlcnJvcjsKIAotCWJpbm1vZGUgU1RET1VULCAiOnV0ZjgiOwotCWxvY2FsICQsID0gIlwwIjsKLQlwcmludCBAeyRvLT57ZmlsZXN9fTsKKwlyZXR1cm4gMTsKK30KKworc3ViIGdldF93b3JraW5nX2RpciB7CisJbXkgJHdvcmtpbmdfZGlyOworCWlmICgkXk8gPX4gJ21zeXMnIHx8ICReTyA9fiAnY3lnd2luJykgeworCQkkd29ya2luZ19kaXIgPSBXaW4zMjo6R2V0Q3dkKCk7CisJCSR3b3JraW5nX2RpciA9fiB0ci9cXC9cLy87CisJfSBlbHNlIHsKKwkJcmVxdWlyZSBDd2Q7CisJCSR3b3JraW5nX2RpciA9IEN3ZDo6Y3dkKCk7CisJfQorCisJcmV0dXJuICR3b3JraW5nX2RpcjsKIH0KZGlmZiAtLWdpdCBhL3RlbXBsYXRlcy9ob29rcy0tcHJlLWNvbW1pdC5zYW1wbGUgYi90ZW1wbGF0ZXMvaG9va3MtLXByZS1jb21taXQuc2FtcGxlCmluZGV4IDZhNzU2NDEuLmUxNDQ3MTIgMTAwNzU1Ci0tLSBhL3RlbXBsYXRlcy9ob29rcy0tcHJlLWNvbW1pdC5zYW1wbGUKKysrIGIvdGVtcGxhdGVzL2hvb2tzLS1wcmUtY29tbWl0LnNhbXBsZQpAQCAtMTYsNyArMTYsNyBAQAogZmkKIAogIyBJZiB5b3Ugd2FudCB0byBhbGxvdyBub24tQVNDSUkgZmlsZW5hbWVzIHNldCB0aGlzIHZhcmlhYmxlIHRvIHRydWUuCi1hbGxvd25vbmFzY2lpPSQoZ2l0IGNvbmZpZyAtLWJvb2wgaG9va3MuYWxsb3dub25hc2NpaSkKK2FsbG93bm9uYXNjaWk9JChnaXQgY29uZmlnIC0tdHlwZT1ib29sIGhvb2tzLmFsbG93bm9uYXNjaWkpCiAKICMgUmVkaXJlY3Qgb3V0cHV0IHRvIHN0ZGVyci4KIGV4ZWMgMT4mMgpkaWZmIC0tZ2l0IGEvdGVtcGxhdGVzL2hvb2tzLS1wcmUtbWVyZ2UtY29tbWl0LnNhbXBsZSBiL3RlbXBsYXRlcy9ob29rcy0tcHJlLW1lcmdlLWNvbW1pdC5zYW1wbGUKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMzk5ZWFiMQotLS0gL2Rldi9udWxsCisrKyBiL3RlbXBsYXRlcy9ob29rcy0tcHJlLW1lcmdlLWNvbW1pdC5zYW1wbGUKQEAgLTAsMCArMSwxMyBAQAorIyEvYmluL3NoCisjCisjIEFuIGV4YW1wbGUgaG9vayBzY3JpcHQgdG8gdmVyaWZ5IHdoYXQgaXMgYWJvdXQgdG8gYmUgY29tbWl0dGVkLgorIyBDYWxsZWQgYnkgImdpdCBtZXJnZSIgd2l0aCBubyBhcmd1bWVudHMuICBUaGUgaG9vayBzaG91bGQKKyMgZXhpdCB3aXRoIG5vbi16ZXJvIHN0YXR1cyBhZnRlciBpc3N1aW5nIGFuIGFwcHJvcHJpYXRlIG1lc3NhZ2UgdG8KKyMgc3RkZXJyIGlmIGl0IHdhbnRzIHRvIHN0b3AgdGhlIG1lcmdlIGNvbW1pdC4KKyMKKyMgVG8gZW5hYmxlIHRoaXMgaG9vaywgcmVuYW1lIHRoaXMgZmlsZSB0byAicHJlLW1lcmdlLWNvbW1pdCIuCisKKy4gZ2l0LXNoLXNldHVwCit0ZXN0IC14ICIkR0lUX0RJUi9ob29rcy9wcmUtY29tbWl0IiAmJgorICAgICAgICBleGVjICIkR0lUX0RJUi9ob29rcy9wcmUtY29tbWl0IgorOgpkaWZmIC0tZ2l0IGEvdGVtcGxhdGVzL2hvb2tzLS11cGRhdGUuc2FtcGxlIGIvdGVtcGxhdGVzL2hvb2tzLS11cGRhdGUuc2FtcGxlCmluZGV4IDgwYmE5NDEuLjUwMTRjNGIgMTAwNzU1Ci0tLSBhL3RlbXBsYXRlcy9ob29rcy0tdXBkYXRlLnNhbXBsZQorKysgYi90ZW1wbGF0ZXMvaG9va3MtLXVwZGF0ZS5zYW1wbGUKQEAgLTQzLDExICs0MywxMSBAQAogZmkKIAogIyAtLS0gQ29uZmlnCi1hbGxvd3VuYW5ub3RhdGVkPSQoZ2l0IGNvbmZpZyAtLWJvb2wgaG9va3MuYWxsb3d1bmFubm90YXRlZCkKLWFsbG93ZGVsZXRlYnJhbmNoPSQoZ2l0IGNvbmZpZyAtLWJvb2wgaG9va3MuYWxsb3dkZWxldGVicmFuY2gpCi1kZW55Y3JlYXRlYnJhbmNoPSQoZ2l0IGNvbmZpZyAtLWJvb2wgaG9va3MuZGVueWNyZWF0ZWJyYW5jaCkKLWFsbG93ZGVsZXRldGFnPSQoZ2l0IGNvbmZpZyAtLWJvb2wgaG9va3MuYWxsb3dkZWxldGV0YWcpCi1hbGxvd21vZGlmeXRhZz0kKGdpdCBjb25maWcgLS1ib29sIGhvb2tzLmFsbG93bW9kaWZ5dGFnKQorYWxsb3d1bmFubm90YXRlZD0kKGdpdCBjb25maWcgLS10eXBlPWJvb2wgaG9va3MuYWxsb3d1bmFubm90YXRlZCkKK2FsbG93ZGVsZXRlYnJhbmNoPSQoZ2l0IGNvbmZpZyAtLXR5cGU9Ym9vbCBob29rcy5hbGxvd2RlbGV0ZWJyYW5jaCkKK2RlbnljcmVhdGVicmFuY2g9JChnaXQgY29uZmlnIC0tdHlwZT1ib29sIGhvb2tzLmRlbnljcmVhdGVicmFuY2gpCithbGxvd2RlbGV0ZXRhZz0kKGdpdCBjb25maWcgLS10eXBlPWJvb2wgaG9va3MuYWxsb3dkZWxldGV0YWcpCithbGxvd21vZGlmeXRhZz0kKGdpdCBjb25maWcgLS10eXBlPWJvb2wgaG9va3MuYWxsb3dtb2RpZnl0YWcpCiAKICMgY2hlY2sgZm9yIG5vIGRlc2NyaXB0aW9uCiBwcm9qZWN0ZGVzYz0kKHNlZCAtZSAnMXEnICIkR0lUX0RJUi9kZXNjcmlwdGlvbiIpCmRpZmYgLS1naXQgYS90cmFjZS5jIGIvdHJhY2UuYwppbmRleCBmYTRhMmU3Li5iM2VmMGU2IDEwMDY0NAotLS0gYS90cmFjZS5jCisrKyBiL3RyYWNlLmMKQEAgLTg4LDggKzg4LDYgQEAKIAlpZiAoIXRyYWNlX3dhbnQoa2V5KSkKIAkJcmV0dXJuIDA7CiAKLQlzZXRfdHJ5X3RvX2ZyZWVfcm91dGluZShOVUxMKTsJLyogaXMgbmV2ZXIgcmVzZXQgKi8KLQogCS8qIHVuaXQgdGVzdHMgbWF5IHdhbnQgdG8gZGlzYWJsZSBhZGRpdGlvbmFsIHRyYWNlIG91dHB1dCAqLwogCWlmICh0cmFjZV93YW50KCZ0cmFjZV9iYXJlKSkKIAkJcmV0dXJuIDE7CmRpZmYgLS1naXQgYS90cmFjZS5oIGIvdHJhY2UuaAppbmRleCAxNzFiMjU2Li45ODI2NjE4IDEwMDY0NAotLS0gYS90cmFjZS5oCisrKyBiL3RyYWNlLmgKQEAgLTQsNiArNCw4MiBAQAogI2luY2x1ZGUgImdpdC1jb21wYXQtdXRpbC5oIgogI2luY2x1ZGUgInN0cmJ1Zi5oIgogCisvKioKKyAqIFRoZSB0cmFjZSBBUEkgY2FuIGJlIHVzZWQgdG8gcHJpbnQgZGVidWcgbWVzc2FnZXMgdG8gc3RkZXJyIG9yIGEgZmlsZS4gVHJhY2UKKyAqIGNvZGUgaXMgaW5hY3RpdmUgdW5sZXNzIGV4cGxpY2l0bHkgZW5hYmxlZCBieSBzZXR0aW5nIGBHSVRfVFJBQ0UqYCBlbnZpcm9ubWVudAorICogdmFyaWFibGVzLgorICoKKyAqIFRoZSB0cmFjZSBpbXBsZW1lbnRhdGlvbiBhdXRvbWF0aWNhbGx5IGFkZHMgYHRpbWVzdGFtcCBmaWxlOmxpbmUgLi4uIFxuYCB0bworICogYWxsIHRyYWNlIG1lc3NhZ2VzLiBFLmcuOgorICoKKyAqIC0tLS0tLS0tLS0tLQorICogMjM6NTk6NTkuMTIzNDU2IGdpdC5jOjMxMiAgICAgICAgICAgICAgIHRyYWNlOiBidWlsdC1pbjogZ2l0ICdmb28nCisgKiAwMDowMDowMC4wMDAwMDEgYnVpbHRpbi9mb28uYzo5OSAgICAgICAgZm9vOiBzb21lIG1lc3NhZ2UKKyAqIC0tLS0tLS0tLS0tLQorICoKKyAqIEJ1Z3MgJiBDYXZlYXRzCisgKiAtLS0tLS0tLS0tLS0tLQorICoKKyAqIEdJVF9UUkFDRV8qIGVudmlyb25tZW50IHZhcmlhYmxlcyBjYW4gYmUgdXNlZCB0byB0ZWxsIEdpdCB0byBzaG93CisgKiB0cmFjZSBvdXRwdXQgdG8gaXRzIHN0YW5kYXJkIGVycm9yIHN0cmVhbS4gR2l0IGNhbiBvZnRlbiBzcGF3biBhIHBhZ2VyCisgKiBpbnRlcm5hbGx5IHRvIHJ1biBpdHMgc3ViY29tbWFuZCBhbmQgc2VuZCBpdHMgc3RhbmRhcmQgb3V0cHV0IGFuZAorICogc3RhbmRhcmQgZXJyb3IgdG8gaXQuCisgKgorICogQmVjYXVzZSBHSVRfVFJBQ0VfUEVSRk9STUFOQ0UgdHJhY2UgaXMgZ2VuZXJhdGVkIG9ubHkgYXQgdGhlIHZlcnkgZW5kCisgKiBvZiB0aGUgcHJvZ3JhbSB3aXRoIGF0ZXhpdCgpLCB3aGljaCBoYXBwZW5zIGFmdGVyIHRoZSBwYWdlciBleGl0cywgaXQKKyAqIHdvdWxkIG5vdCB3b3JrIHdlbGwgaWYgeW91IHNlbmQgaXRzIGxvZyB0byB0aGUgc3RhbmRhcmQgZXJyb3Igb3V0cHV0CisgKiBhbmQgbGV0IEdpdCBzcGF3biB0aGUgcGFnZXIgYXQgdGhlIHNhbWUgdGltZS4KKyAqCisgKiBBcyBhIHdvcmsgYXJvdW5kLCB5b3UgY2FuIGZvciBleGFtcGxlIHVzZSAnLS1uby1wYWdlcicsIG9yIHNldAorICogR0lUX1RSQUNFX1BFUkZPUk1BTkNFIHRvIGFub3RoZXIgZmlsZSBkZXNjcmlwdG9yIHdoaWNoIGlzIHJlZGlyZWN0ZWQKKyAqIHRvIHN0ZGVyciwgb3Igc2V0IEdJVF9UUkFDRV9QRVJGT1JNQU5DRSB0byBhIGZpbGUgc3BlY2lmaWVkIGJ5IGl0cworICogYWJzb2x1dGUgcGF0aC4KKyAqCisgKiBGb3IgZXhhbXBsZSBpbnN0ZWFkIG9mIHRoZSBmb2xsb3dpbmcgY29tbWFuZCB3aGljaCBieSBkZWZhdWx0IG1heSBub3QKKyAqIHByaW50IGFueSBwZXJmb3JtYW5jZSBpbmZvcm1hdGlvbjoKKyAqCisgKiAtLS0tLS0tLS0tLS0KKyAqIEdJVF9UUkFDRV9QRVJGT1JNQU5DRT0yIGdpdCBsb2cgLTEKKyAqIC0tLS0tLS0tLS0tLQorICoKKyAqIHlvdSBtYXkgd2FudCB0byB1c2U6CisgKgorICogLS0tLS0tLS0tLS0tCisgKiBHSVRfVFJBQ0VfUEVSRk9STUFOQ0U9MiBnaXQgLS1uby1wYWdlciBsb2cgLTEKKyAqIC0tLS0tLS0tLS0tLQorICoKKyAqIG9yOgorICoKKyAqIC0tLS0tLS0tLS0tLQorICogR0lUX1RSQUNFX1BFUkZPUk1BTkNFPTMgMz4mMiBnaXQgbG9nIC0xCisgKiAtLS0tLS0tLS0tLS0KKyAqCisgKiBvcjoKKyAqCisgKiAtLS0tLS0tLS0tLS0KKyAqIEdJVF9UUkFDRV9QRVJGT1JNQU5DRT0vcGF0aC90by9sb2cvZmlsZSBnaXQgbG9nIC0xCisgKiAtLS0tLS0tLS0tLS0KKyAqCisgKi8KKworLyoqCisgKiBEZWZpbmVzIGEgdHJhY2Uga2V5IChvciBjYXRlZ29yeSkuIFRoZSBkZWZhdWx0IChmb3IgQVBJIGZ1bmN0aW9ucyB0aGF0CisgKiBkb24ndCB0YWtlIGEga2V5KSBpcyBgR0lUX1RSQUNFYC4KKyAqCisgKiBFLmcuIHRvIGRlZmluZSBhIHRyYWNlIGtleSBjb250cm9sbGVkIGJ5IGVudmlyb25tZW50IHZhcmlhYmxlIGBHSVRfVFJBQ0VfRk9PYDoKKyAqCisgKiAtLS0tLS0tLS0tLS0KKyAqIHN0YXRpYyBzdHJ1Y3QgdHJhY2Vfa2V5IHRyYWNlX2ZvbyA9IFRSQUNFX0tFWV9JTklUKEZPTyk7CisgKgorICogc3RhdGljIHZvaWQgdHJhY2VfcHJpbnRfZm9vKGNvbnN0IGNoYXIgKm1lc3NhZ2UpCisgKiB7CisgKiAJdHJhY2VfcHJpbnRmX2tleSgmdHJhY2VfZm9vLCAiJXMiLCBtZXNzYWdlKTsKKyAqIH0KKyAqIC0tLS0tLS0tLS0tLQorICoKKyAqIE5vdGU6IGRvbid0IHVzZSBgY29uc3RgIGFzIHRoZSB0cmFjZSBpbXBsZW1lbnRhdGlvbiBzdG9yZXMgaW50ZXJuYWwgc3RhdGUgaW4KKyAqIHRoZSBgdHJhY2Vfa2V5YCBzdHJ1Y3R1cmUuCisgKi8KIHN0cnVjdCB0cmFjZV9rZXkgewogCWNvbnN0IGNoYXIgKiBjb25zdCBrZXk7CiAJaW50IGZkOwpAQCAtMTcsMzQgKzkzLDg3IEBACiBleHRlcm4gc3RydWN0IHRyYWNlX2tleSB0cmFjZV9wZXJmX2tleTsKIGV4dGVybiBzdHJ1Y3QgdHJhY2Vfa2V5IHRyYWNlX3NldHVwX2tleTsKIAotZXh0ZXJuIHZvaWQgdHJhY2VfcmVwb19zZXR1cChjb25zdCBjaGFyICpwcmVmaXgpOwotZXh0ZXJuIGludCB0cmFjZV93YW50KHN0cnVjdCB0cmFjZV9rZXkgKmtleSk7Ci1leHRlcm4gdm9pZCB0cmFjZV9kaXNhYmxlKHN0cnVjdCB0cmFjZV9rZXkgKmtleSk7Ci1leHRlcm4gdWludDY0X3QgZ2V0bmFub3RpbWUodm9pZCk7Ci1leHRlcm4gdm9pZCB0cmFjZV9jb21tYW5kX3BlcmZvcm1hbmNlKGNvbnN0IGNoYXIgKiphcmd2KTsKLWV4dGVybiB2b2lkIHRyYWNlX3ZlcmJhdGltKHN0cnVjdCB0cmFjZV9rZXkgKmtleSwgY29uc3Qgdm9pZCAqYnVmLCB1bnNpZ25lZCBsZW4pOwordm9pZCB0cmFjZV9yZXBvX3NldHVwKGNvbnN0IGNoYXIgKnByZWZpeCk7CisKKy8qKgorICogQ2hlY2tzIHdoZXRoZXIgdGhlIHRyYWNlIGtleSBpcyBlbmFibGVkLiBVc2VkIHRvIHByZXZlbnQgZXhwZW5zaXZlCisgKiBzdHJpbmcgZm9ybWF0dGluZyBiZWZvcmUgY2FsbGluZyBvbmUgb2YgdGhlIHByaW50aW5nIEFQSXMuCisgKi8KK2ludCB0cmFjZV93YW50KHN0cnVjdCB0cmFjZV9rZXkgKmtleSk7CisKKy8qKgorICogRGlzYWJsZXMgdHJhY2luZyBmb3IgdGhlIHNwZWNpZmllZCBrZXksIGV2ZW4gaWYgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlCisgKiB3YXMgc2V0LgorICovCit2b2lkIHRyYWNlX2Rpc2FibGUoc3RydWN0IHRyYWNlX2tleSAqa2V5KTsKKworLyoqCisgKiBSZXR1cm5zIG5hbm9zZWNvbmRzIHNpbmNlIHRoZSBlcG9jaCAoMDEvMDEvMTk3MCksIHR5cGljYWxseSB1c2VkCisgKiBmb3IgcGVyZm9ybWFuY2UgbWVhc3VyZW1lbnRzLgorICogQ3VycmVudGx5IHRoZXJlIGFyZSBoaWdoIHByZWNpc2lvbiB0aW1lciBpbXBsZW1lbnRhdGlvbnMgZm9yIExpbnV4ICh1c2luZworICogYGNsb2NrX2dldHRpbWUoQ0xPQ0tfTU9OT1RPTklDKWApIGFuZCBXaW5kb3dzIChgUXVlcnlQZXJmb3JtYW5jZUNvdW50ZXJgKS4KKyAqIE90aGVyIHBsYXRmb3JtcyB1c2UgYGdldHRpbWVvZmRheWAgYXMgdGltZSBzb3VyY2UuCisgKi8KK3VpbnQ2NF90IGdldG5hbm90aW1lKHZvaWQpOworCit2b2lkIHRyYWNlX2NvbW1hbmRfcGVyZm9ybWFuY2UoY29uc3QgY2hhciAqKmFyZ3YpOwordm9pZCB0cmFjZV92ZXJiYXRpbShzdHJ1Y3QgdHJhY2Vfa2V5ICprZXksIGNvbnN0IHZvaWQgKmJ1ZiwgdW5zaWduZWQgbGVuKTsKIHVpbnQ2NF90IHRyYWNlX3BlcmZvcm1hbmNlX2VudGVyKHZvaWQpOwogCiAjaWZuZGVmIEhBVkVfVkFSSUFESUNfTUFDUk9TCiAKKy8qKgorICogUHJpbnRzIGEgZm9ybWF0dGVkIG1lc3NhZ2UsIHNpbWlsYXIgdG8gcHJpbnRmLgorICovCiBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMSwgMikpKQotZXh0ZXJuIHZvaWQgdHJhY2VfcHJpbnRmKGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKTsKK3ZvaWQgdHJhY2VfcHJpbnRmKGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKTsKIAogX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDIsIDMpKSkKLWV4dGVybiB2b2lkIHRyYWNlX3ByaW50Zl9rZXkoc3RydWN0IHRyYWNlX2tleSAqa2V5LCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLik7Cit2b2lkIHRyYWNlX3ByaW50Zl9rZXkoc3RydWN0IHRyYWNlX2tleSAqa2V5LCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLik7CiAKKy8qKgorICogUHJpbnRzIGEgZm9ybWF0dGVkIG1lc3NhZ2UsIGZvbGxvd2VkIGJ5IGEgcXVvdGVkIGxpc3Qgb2YgYXJndW1lbnRzLgorICovCiBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMiwgMykpKQotZXh0ZXJuIHZvaWQgdHJhY2VfYXJndl9wcmludGYoY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKTsKK3ZvaWQgdHJhY2VfYXJndl9wcmludGYoY29uc3QgY2hhciAqKmFyZ3YsIGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKTsKIAotZXh0ZXJuIHZvaWQgdHJhY2Vfc3RyYnVmKHN0cnVjdCB0cmFjZV9rZXkgKmtleSwgY29uc3Qgc3RydWN0IHN0cmJ1ZiAqZGF0YSk7CisvKioKKyAqIFByaW50cyB0aGUgc3RyYnVmLCB3aXRob3V0IGFkZGl0aW9uYWwgZm9ybWF0dGluZyAoaS5lLiBkb2Vzbid0CisgKiBjaG9rZSBvbiBgJWAgb3IgZXZlbiBgXDBgKS4KKyAqLwordm9pZCB0cmFjZV9zdHJidWYoc3RydWN0IHRyYWNlX2tleSAqa2V5LCBjb25zdCBzdHJ1Y3Qgc3RyYnVmICpkYXRhKTsKIAotLyogUHJpbnRzIGVsYXBzZWQgdGltZSAoaW4gbmFub3NlY29uZHMpIGlmIEdJVF9UUkFDRV9QRVJGT1JNQU5DRSBpcyBlbmFibGVkLiAqLworLyoqCisgKiBQcmludHMgZWxhcHNlZCB0aW1lIChpbiBuYW5vc2Vjb25kcykgaWYgR0lUX1RSQUNFX1BFUkZPUk1BTkNFIGlzIGVuYWJsZWQuCisgKgorICogRXhhbXBsZToKKyAqIC0tLS0tLS0tLS0tLQorICogdWludDY0X3QgdCA9IDA7CisgKiBmb3IgKDs7KSB7CisgKiAJLy8gaWdub3JlCisgKiB0IC09IGdldG5hbm90aW1lKCk7CisgKiAvLyBjb2RlIHNlY3Rpb24gdG8gbWVhc3VyZQorICogdCArPSBnZXRuYW5vdGltZSgpOworICogLy8gaWdub3JlCisgKiB9CisgKiB0cmFjZV9wZXJmb3JtYW5jZSh0LCAiZnJvdHoiKTsKKyAqIC0tLS0tLS0tLS0tLQorICovCiBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMiwgMykpKQotZXh0ZXJuIHZvaWQgdHJhY2VfcGVyZm9ybWFuY2UodWludDY0X3QgbmFub3MsIGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKTsKK3ZvaWQgdHJhY2VfcGVyZm9ybWFuY2UodWludDY0X3QgbmFub3MsIGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKTsKIAotLyogUHJpbnRzIGVsYXBzZWQgdGltZSBzaW5jZSAnc3RhcnQnIGlmIEdJVF9UUkFDRV9QRVJGT1JNQU5DRSBpcyBlbmFibGVkLiAqLworLyoqCisgKiBQcmludHMgZWxhcHNlZCB0aW1lIHNpbmNlICdzdGFydCcgaWYgR0lUX1RSQUNFX1BFUkZPUk1BTkNFIGlzIGVuYWJsZWQuCisgKgorICogRXhhbXBsZToKKyAqIC0tLS0tLS0tLS0tLQorICogdWludDY0X3Qgc3RhcnQgPSBnZXRuYW5vdGltZSgpOworICogLy8gY29kZSBzZWN0aW9uIHRvIG1lYXN1cmUKKyAqIHRyYWNlX3BlcmZvcm1hbmNlX3NpbmNlKHN0YXJ0LCAiZm9vYmFyIik7CisgKiAtLS0tLS0tLS0tLS0KKyAqLwogX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDIsIDMpKSkKLWV4dGVybiB2b2lkIHRyYWNlX3BlcmZvcm1hbmNlX3NpbmNlKHVpbnQ2NF90IHN0YXJ0LCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLik7Cit2b2lkIHRyYWNlX3BlcmZvcm1hbmNlX3NpbmNlKHVpbnQ2NF90IHN0YXJ0LCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLik7CiAKIF9fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLCAxLCAyKSkpCiB2b2lkIHRyYWNlX3BlcmZvcm1hbmNlX2xlYXZlKGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKTsKQEAgLTEzMiwxOSArMjYxLDE5IEBACiAKIC8qIGJhY2tlbmQgZnVuY3Rpb25zLCB1c2Ugbm9uLSpmbCBtYWNyb3MgaW5zdGVhZCAqLwogX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDQsIDUpKSkKLWV4dGVybiB2b2lkIHRyYWNlX3ByaW50Zl9rZXlfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIHN0cnVjdCB0cmFjZV9rZXkgKmtleSwKLQkJCQljb25zdCBjaGFyICpmb3JtYXQsIC4uLik7Cit2b2lkIHRyYWNlX3ByaW50Zl9rZXlfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIHN0cnVjdCB0cmFjZV9rZXkgKmtleSwKKwkJCSBjb25zdCBjaGFyICpmb3JtYXQsIC4uLik7CiBfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgNCwgNSkpKQotZXh0ZXJuIHZvaWQgdHJhY2VfYXJndl9wcmludGZfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKiphcmd2LAotCQkJCSBjb25zdCBjaGFyICpmb3JtYXQsIC4uLik7Ci1leHRlcm4gdm9pZCB0cmFjZV9zdHJidWZfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIHN0cnVjdCB0cmFjZV9rZXkgKmtleSwKLQkJCSAgICBjb25zdCBzdHJ1Y3Qgc3RyYnVmICpkYXRhKTsKK3ZvaWQgdHJhY2VfYXJndl9wcmludGZfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKiphcmd2LAorCQkJICBjb25zdCBjaGFyICpmb3JtYXQsIC4uLik7Cit2b2lkIHRyYWNlX3N0cmJ1Zl9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgc3RydWN0IHRyYWNlX2tleSAqa2V5LAorCQkgICAgIGNvbnN0IHN0cnVjdCBzdHJidWYgKmRhdGEpOwogX19hdHRyaWJ1dGVfXygoZm9ybWF0IChwcmludGYsIDQsIDUpKSkKLWV4dGVybiB2b2lkIHRyYWNlX3BlcmZvcm1hbmNlX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAotCQkJCSB1aW50NjRfdCBuYW5vcywgY29uc3QgY2hhciAqZm10LCAuLi4pOwordm9pZCB0cmFjZV9wZXJmb3JtYW5jZV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCSAgdWludDY0X3QgbmFub3MsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKTsKIF9fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLCA0LCA1KSkpCi1leHRlcm4gdm9pZCB0cmFjZV9wZXJmb3JtYW5jZV9sZWF2ZV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKLQkJCQkgICAgICAgdWludDY0X3QgbmFub3MsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKTsKK3ZvaWQgdHJhY2VfcGVyZm9ybWFuY2VfbGVhdmVfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkJdWludDY0X3QgbmFub3MsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKTsKIHN0YXRpYyBpbmxpbmUgaW50IHRyYWNlX3Bhc3NfZmwoc3RydWN0IHRyYWNlX2tleSAqa2V5KQogewogCXJldHVybiBrZXktPmZkIHx8ICFrZXktPmluaXRpYWxpemVkOwpkaWZmIC0tZ2l0IGEvdHJhY2UyLmMgYi90cmFjZTIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jN2I0ZjE0Ci0tLSAvZGV2L251bGwKKysrIGIvdHJhY2UyLmMKQEAgLTAsMCArMSw3ODUgQEAKKyNpbmNsdWRlICJjYWNoZS5oIgorI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgImpzb24td3JpdGVyLmgiCisjaW5jbHVkZSAicXVvdGUuaCIKKyNpbmNsdWRlICJydW4tY29tbWFuZC5oIgorI2luY2x1ZGUgInNpZ2NoYWluLmgiCisjaW5jbHVkZSAidGhyZWFkLXV0aWxzLmgiCisjaW5jbHVkZSAidmVyc2lvbi5oIgorI2luY2x1ZGUgInRyYWNlMi90cjJfY2ZnLmgiCisjaW5jbHVkZSAidHJhY2UyL3RyMl9jbWRfbmFtZS5oIgorI2luY2x1ZGUgInRyYWNlMi90cjJfZHN0LmgiCisjaW5jbHVkZSAidHJhY2UyL3RyMl9zaWQuaCIKKyNpbmNsdWRlICJ0cmFjZTIvdHIyX3N5c2Vudi5oIgorI2luY2x1ZGUgInRyYWNlMi90cjJfdGd0LmgiCisjaW5jbHVkZSAidHJhY2UyL3RyMl90bHMuaCIKKworc3RhdGljIGludCB0cmFjZTJfZW5hYmxlZDsKKworc3RhdGljIGludCB0cjJfbmV4dF9jaGlsZF9pZDsgLyogbW9kaWZ5IHVuZGVyIGxvY2sgKi8KK3N0YXRpYyBpbnQgdHIyX25leHRfZXhlY19pZDsgLyogbW9kaWZ5IHVuZGVyIGxvY2sgKi8KK3N0YXRpYyBpbnQgdHIyX25leHRfcmVwb19pZCA9IDE7IC8qIG1vZGlmeSB1bmRlciBsb2NrLiB6ZXJvIGlzIHJlc2VydmVkICovCisKKy8qCisgKiBBIHRhYmxlIG9mIHRoZSBidWlsdGluIFRSQUNFMiB0YXJnZXRzLiAgRWFjaCBvZiB0aGVzZSBtYXkgYmUgaW5kZXBlbmRlbnRseQorICogZW5hYmxlZCBvciBkaXNhYmxlZC4gIEVhY2ggVFJBQ0UyIEFQSSBtZXRob2Qgd2lsbCB0cnkgdG8gd3JpdGUgYW4gZXZlbnQgdG8KKyAqICplYWNoKiBvZiB0aGUgZW5hYmxlZCB0YXJnZXRzLgorICovCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCitzdGF0aWMgc3RydWN0IHRyMl90Z3QgKnRyMl90Z3RfYnVpbHRpbnNbXSA9Cit7CisJJnRyMl90Z3Rfbm9ybWFsLAorCSZ0cjJfdGd0X3BlcmYsCisJJnRyMl90Z3RfZXZlbnQsCisJTlVMTAorfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLworCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCisjZGVmaW5lIGZvcl9lYWNoX2J1aWx0aW4oaiwgdGd0X2opCQkJXAorCWZvciAoaiA9IDAsIHRndF9qID0gdHIyX3RndF9idWlsdGluc1tqXTsJXAorCSAgICAgdGd0X2o7CQkJCQlcCisJICAgICBqKyssIHRndF9qID0gdHIyX3RndF9idWlsdGluc1tqXSkKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLworCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCisjZGVmaW5lIGZvcl9lYWNoX3dhbnRlZF9idWlsdGluKGosIHRndF9qKSAgICAgICAgICAgIFwKKwlmb3JfZWFjaF9idWlsdGluKGosIHRndF9qKSAgICAgICAgICAgICAgICAgICBcCisJCWlmICh0cjJfZHN0X3RyYWNlX3dhbnQodGd0X2otPnBkc3QpKQorLyogY2xhbmctZm9ybWF0IG9uICovCisKKy8qCisgKiBGb3JjZSAocmF0aGVyIHRoYW4gbGF6aWx5KSBpbml0aWFsaXplIGFueSBvZiB0aGUgcmVxdWVzdGVkCisgKiBidWlsdGluIFRSQUNFMiB0YXJnZXRzIGF0IHN0YXJ0dXAgKGFuZCBiZWZvcmUgd2UndmUgc2VlbiBhbgorICogYWN0dWFsIFRSQUNFMiBldmVudCBjYWxsKSBzbyB3ZSBjYW4gc2VlIGlmIHdlIG5lZWQgdG8gc2V0dXAKKyAqIHRoZSBUUjIgYW5kIFRMUyBtYWNoaW5lcnkuCisgKgorICogUmV0dXJuIHRoZSBudW1iZXIgb2YgYnVpbHRpbiB0YXJnZXRzIGVuYWJsZWQuCisgKi8KK3N0YXRpYyBpbnQgdHIyX3RndF93YW50X2J1aWx0aW5zKHZvaWQpCit7CisJc3RydWN0IHRyMl90Z3QgKnRndF9qOworCWludCBqOworCWludCBzdW0gPSAwOworCisJZm9yX2VhY2hfYnVpbHRpbiAoaiwgdGd0X2opCisJCWlmICh0Z3Rfai0+cGZuX2luaXQoKSkKKwkJCXN1bSsrOworCisJcmV0dXJuIHN1bTsKK30KKworLyoKKyAqIFByb3Blcmx5IHRlcm1pbmF0ZSBlYWNoIGJ1aWx0aW4gdGFyZ2V0LiAgR2l2ZSBlYWNoIHRhcmdldAorICogYSBjaGFuY2UgdG8gd3JpdGUgYSBzdW1tYXJ5IGV2ZW50IGFuZC9vciBmbHVzaCBpZiBuZWNlc3NhcnkKKyAqIGFuZCB0aGVuIGNsb3NlIHRoZSBmZC4KKyAqLworc3RhdGljIHZvaWQgdHIyX3RndF9kaXNhYmxlX2J1aWx0aW5zKHZvaWQpCit7CisJc3RydWN0IHRyMl90Z3QgKnRndF9qOworCWludCBqOworCisJZm9yX2VhY2hfYnVpbHRpbiAoaiwgdGd0X2opCisJCXRndF9qLT5wZm5fdGVybSgpOworfQorCitzdGF0aWMgaW50IHRyMm1haW5fZXhpdF9jb2RlOworCisvKgorICogT3VyIGF0ZXhpdCByb3V0aW5lIHNob3VsZCBydW4gYWZ0ZXIgZXZlcnl0aGluZyBoYXMgZmluaXNoZWQuCisgKgorICogTm90ZSB0aGF0IGV2ZW50cyBnZW5lcmF0ZWQgaGVyZSBtaWdodCBub3QgYWN0dWFsbHkgYXBwZWFyIGlmCisgKiB3ZSBhcmUgd3JpdGluZyB0byBmZCAxIG9yIDIgYW5kIG91ciBhdGV4aXQgcm91dGluZSBydW5zIGFmdGVyCisgKiB0aGUgcGFnZXIncyBhdGV4aXQgcm91dGluZSAoc2luY2UgaXQgY2xvc2VzIHRoZW0gdG8gc2h1dGRvd24KKyAqIHRoZSBwaXBlcykuCisgKi8KK3N0YXRpYyB2b2lkIHRyMm1haW5fYXRleGl0X2hhbmRsZXIodm9pZCkKK3sKKwlzdHJ1Y3QgdHIyX3RndCAqdGd0X2o7CisJaW50IGo7CisJdWludDY0X3QgdXNfbm93OworCXVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGU7CisKKwl1c19ub3cgPSBnZXRuYW5vdGltZSgpIC8gMTAwMDsKKwl1c19lbGFwc2VkX2Fic29sdXRlID0gdHIydGxzX2Fic29sdXRlX2VsYXBzZWQodXNfbm93KTsKKworCS8qCisJICogQ2xlYXIgYW55IHVuYmFsYW5jZWQgcmVnaW9ucyBzbyB0aGF0IG91ciBhdGV4aXQgbWVzc2FnZQorCSAqIGRvZXMgbm90IGFwcGVhciBuZXN0ZWQuICBUaGlzIGltcHJvdmVzIHRoZSBhcHBlYXJhbmNlIG9mCisJICogdGhlIHRyYWNlIG91dHB1dCBpZiBzb21lb25lIGNhbGxzIGRpZSgpLCBmb3IgZXhhbXBsZS4KKwkgKi8KKwl0cjJ0bHNfcG9wX3Vud2luZF9zZWxmKCk7CisKKwlmb3JfZWFjaF93YW50ZWRfYnVpbHRpbiAoaiwgdGd0X2opCisJCWlmICh0Z3Rfai0+cGZuX2F0ZXhpdCkKKwkJCXRndF9qLT5wZm5fYXRleGl0KHVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCQkJCSAgdHIybWFpbl9leGl0X2NvZGUpOworCisJdHIyX3RndF9kaXNhYmxlX2J1aWx0aW5zKCk7CisKKwl0cjJ0bHNfcmVsZWFzZSgpOworCXRyMl9zaWRfcmVsZWFzZSgpOworCXRyMl9jbWRfbmFtZV9yZWxlYXNlKCk7CisJdHIyX2NmZ19mcmVlX3BhdHRlcm5zKCk7CisJdHIyX3N5c2Vudl9yZWxlYXNlKCk7CisKKwl0cmFjZTJfZW5hYmxlZCA9IDA7Cit9CisKK3N0YXRpYyB2b2lkIHRyMm1haW5fc2lnbmFsX2hhbmRsZXIoaW50IHNpZ25vKQoreworCXN0cnVjdCB0cjJfdGd0ICp0Z3RfajsKKwlpbnQgajsKKwl1aW50NjRfdCB1c19ub3c7CisJdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZTsKKworCXVzX25vdyA9IGdldG5hbm90aW1lKCkgLyAxMDAwOworCXVzX2VsYXBzZWRfYWJzb2x1dGUgPSB0cjJ0bHNfYWJzb2x1dGVfZWxhcHNlZCh1c19ub3cpOworCisJZm9yX2VhY2hfd2FudGVkX2J1aWx0aW4gKGosIHRndF9qKQorCQlpZiAodGd0X2otPnBmbl9zaWduYWwpCisJCQl0Z3Rfai0+cGZuX3NpZ25hbCh1c19lbGFwc2VkX2Fic29sdXRlLCBzaWdubyk7CisKKwlzaWdjaGFpbl9wb3Aoc2lnbm8pOworCXJhaXNlKHNpZ25vKTsKK30KKwordm9pZCB0cmFjZTJfaW5pdGlhbGl6ZV9jbG9jayh2b2lkKQoreworCXRyMnRsc19zdGFydF9wcm9jZXNzX2Nsb2NrKCk7Cit9CisKK3ZvaWQgdHJhY2UyX2luaXRpYWxpemVfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUpCit7CisJc3RydWN0IHRyMl90Z3QgKnRndF9qOworCWludCBqOworCisJaWYgKHRyYWNlMl9lbmFibGVkKQorCQlyZXR1cm47CisKKwl0cjJfc3lzZW52X2xvYWQoKTsKKworCWlmICghdHIyX3RndF93YW50X2J1aWx0aW5zKCkpCisJCXJldHVybjsKKwl0cmFjZTJfZW5hYmxlZCA9IDE7CisKKwl0cjJfc2lkX2dldCgpOworCisJYXRleGl0KHRyMm1haW5fYXRleGl0X2hhbmRsZXIpOworCXNpZ2NoYWluX3B1c2goU0lHUElQRSwgdHIybWFpbl9zaWduYWxfaGFuZGxlcik7CisJdHIydGxzX2luaXQoKTsKKworCS8qCisJICogRW1pdCAndmVyc2lvbicgbWVzc2FnZSBvbiBlYWNoIGFjdGl2ZSBidWlsdGluIHRhcmdldC4KKwkgKi8KKwlmb3JfZWFjaF93YW50ZWRfYnVpbHRpbiAoaiwgdGd0X2opCisJCWlmICh0Z3Rfai0+cGZuX3ZlcnNpb25fZmwpCisJCQl0Z3Rfai0+cGZuX3ZlcnNpb25fZmwoZmlsZSwgbGluZSk7Cit9CisKK2ludCB0cmFjZTJfaXNfZW5hYmxlZCh2b2lkKQoreworCXJldHVybiB0cmFjZTJfZW5hYmxlZDsKK30KKwordm9pZCB0cmFjZTJfY21kX3N0YXJ0X2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwlzdHJ1Y3QgdHIyX3RndCAqdGd0X2o7CisJaW50IGo7CisJdWludDY0X3QgdXNfbm93OworCXVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGU7CisKKwlpZiAoIXRyYWNlMl9lbmFibGVkKQorCQlyZXR1cm47CisKKwl1c19ub3cgPSBnZXRuYW5vdGltZSgpIC8gMTAwMDsKKwl1c19lbGFwc2VkX2Fic29sdXRlID0gdHIydGxzX2Fic29sdXRlX2VsYXBzZWQodXNfbm93KTsKKworCWZvcl9lYWNoX3dhbnRlZF9idWlsdGluIChqLCB0Z3RfaikKKwkJaWYgKHRndF9qLT5wZm5fc3RhcnRfZmwpCisJCQl0Z3Rfai0+cGZuX3N0YXJ0X2ZsKGZpbGUsIGxpbmUsIHVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCQkJCSAgICBhcmd2KTsKK30KKworaW50IHRyYWNlMl9jbWRfZXhpdF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgaW50IGNvZGUpCit7CisJc3RydWN0IHRyMl90Z3QgKnRndF9qOworCWludCBqOworCXVpbnQ2NF90IHVzX25vdzsKKwl1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlOworCisJY29kZSAmPSAweGZmOworCisJaWYgKCF0cmFjZTJfZW5hYmxlZCkKKwkJcmV0dXJuIGNvZGU7CisKKwl0cmFjZTJfY29sbGVjdF9wcm9jZXNzX2luZm8oVFJBQ0UyX1BST0NFU1NfSU5GT19FWElUKTsKKworCXRyMm1haW5fZXhpdF9jb2RlID0gY29kZTsKKworCXVzX25vdyA9IGdldG5hbm90aW1lKCkgLyAxMDAwOworCXVzX2VsYXBzZWRfYWJzb2x1dGUgPSB0cjJ0bHNfYWJzb2x1dGVfZWxhcHNlZCh1c19ub3cpOworCisJZm9yX2VhY2hfd2FudGVkX2J1aWx0aW4gKGosIHRndF9qKQorCQlpZiAodGd0X2otPnBmbl9leGl0X2ZsKQorCQkJdGd0X2otPnBmbl9leGl0X2ZsKGZpbGUsIGxpbmUsIHVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCQkJCSAgIGNvZGUpOworCisJcmV0dXJuIGNvZGU7Cit9CisKK3ZvaWQgdHJhY2UyX2NtZF9lcnJvcl92YV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqZm10LAorCQkJICAgIHZhX2xpc3QgYXApCit7CisJc3RydWN0IHRyMl90Z3QgKnRndF9qOworCWludCBqOworCisJaWYgKCF0cmFjZTJfZW5hYmxlZCkKKwkJcmV0dXJuOworCisJLyoKKwkgKiBXZSBleHBlY3QgZWFjaCB0YXJnZXQgZnVuY3Rpb24gdG8gdHJlYXQgJ2FwJyBhcyBjb25zdGFudAorCSAqIGFuZCB1c2UgdmFfY29weSAoYmVjYXVzZSBhbiAnYXAnIGNhbiBvbmx5IGJlIHdhbGtlZCBvbmNlKS4KKwkgKi8KKwlmb3JfZWFjaF93YW50ZWRfYnVpbHRpbiAoaiwgdGd0X2opCisJCWlmICh0Z3Rfai0+cGZuX2Vycm9yX3ZhX2ZsKQorCQkJdGd0X2otPnBmbl9lcnJvcl92YV9mbChmaWxlLCBsaW5lLCBmbXQsIGFwKTsKK30KKwordm9pZCB0cmFjZTJfY21kX3BhdGhfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKnBhdGhuYW1lKQoreworCXN0cnVjdCB0cjJfdGd0ICp0Z3RfajsKKwlpbnQgajsKKworCWlmICghdHJhY2UyX2VuYWJsZWQpCisJCXJldHVybjsKKworCWZvcl9lYWNoX3dhbnRlZF9idWlsdGluIChqLCB0Z3RfaikKKwkJaWYgKHRndF9qLT5wZm5fY29tbWFuZF9wYXRoX2ZsKQorCQkJdGd0X2otPnBmbl9jb21tYW5kX3BhdGhfZmwoZmlsZSwgbGluZSwgcGF0aG5hbWUpOworfQorCit2b2lkIHRyYWNlMl9jbWRfbmFtZV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqbmFtZSkKK3sKKwlzdHJ1Y3QgdHIyX3RndCAqdGd0X2o7CisJY29uc3QgY2hhciAqaGllcmFyY2h5OworCWludCBqOworCisJaWYgKCF0cmFjZTJfZW5hYmxlZCkKKwkJcmV0dXJuOworCisJdHIyX2NtZF9uYW1lX2FwcGVuZF9oaWVyYXJjaHkobmFtZSk7CisJaGllcmFyY2h5ID0gdHIyX2NtZF9uYW1lX2dldF9oaWVyYXJjaHkoKTsKKworCWZvcl9lYWNoX3dhbnRlZF9idWlsdGluIChqLCB0Z3RfaikKKwkJaWYgKHRndF9qLT5wZm5fY29tbWFuZF9uYW1lX2ZsKQorCQkJdGd0X2otPnBmbl9jb21tYW5kX25hbWVfZmwoZmlsZSwgbGluZSwgbmFtZSwgaGllcmFyY2h5KTsKK30KKwordm9pZCB0cmFjZTJfY21kX21vZGVfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKm1vZGUpCit7CisJc3RydWN0IHRyMl90Z3QgKnRndF9qOworCWludCBqOworCisJaWYgKCF0cmFjZTJfZW5hYmxlZCkKKwkJcmV0dXJuOworCisJZm9yX2VhY2hfd2FudGVkX2J1aWx0aW4gKGosIHRndF9qKQorCQlpZiAodGd0X2otPnBmbl9jb21tYW5kX21vZGVfZmwpCisJCQl0Z3Rfai0+cGZuX2NvbW1hbmRfbW9kZV9mbChmaWxlLCBsaW5lLCBtb2RlKTsKK30KKwordm9pZCB0cmFjZTJfY21kX2FsaWFzX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyICphbGlhcywKKwkJCSBjb25zdCBjaGFyICoqYXJndikKK3sKKwlzdHJ1Y3QgdHIyX3RndCAqdGd0X2o7CisJaW50IGo7CisKKwlpZiAoIXRyYWNlMl9lbmFibGVkKQorCQlyZXR1cm47CisKKwlmb3JfZWFjaF93YW50ZWRfYnVpbHRpbiAoaiwgdGd0X2opCisJCWlmICh0Z3Rfai0+cGZuX2FsaWFzX2ZsKQorCQkJdGd0X2otPnBmbl9hbGlhc19mbChmaWxlLCBsaW5lLCBhbGlhcywgYXJndik7Cit9CisKK3ZvaWQgdHJhY2UyX2NtZF9saXN0X2NvbmZpZ19mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSkKK3sKKwlpZiAoIXRyYWNlMl9lbmFibGVkKQorCQlyZXR1cm47CisKKwl0cjJfY2ZnX2xpc3RfY29uZmlnX2ZsKGZpbGUsIGxpbmUpOworfQorCit2b2lkIHRyYWNlMl9jbWRfc2V0X2NvbmZpZ19mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqa2V5LAorCQkJICAgICAgY29uc3QgY2hhciAqdmFsdWUpCit7CisJaWYgKCF0cmFjZTJfZW5hYmxlZCkKKwkJcmV0dXJuOworCisJdHIyX2NmZ19zZXRfZmwoZmlsZSwgbGluZSwga2V5LCB2YWx1ZSk7Cit9CisKK3ZvaWQgdHJhY2UyX2NoaWxkX3N0YXJ0X2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJICAgc3RydWN0IGNoaWxkX3Byb2Nlc3MgKmNtZCkKK3sKKwlzdHJ1Y3QgdHIyX3RndCAqdGd0X2o7CisJaW50IGo7CisJdWludDY0X3QgdXNfbm93OworCXVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGU7CisKKwlpZiAoIXRyYWNlMl9lbmFibGVkKQorCQlyZXR1cm47CisKKwl1c19ub3cgPSBnZXRuYW5vdGltZSgpIC8gMTAwMDsKKwl1c19lbGFwc2VkX2Fic29sdXRlID0gdHIydGxzX2Fic29sdXRlX2VsYXBzZWQodXNfbm93KTsKKworCWNtZC0+dHJhY2UyX2NoaWxkX2lkID0gdHIydGxzX2xvY2tlZF9pbmNyZW1lbnQoJnRyMl9uZXh0X2NoaWxkX2lkKTsKKwljbWQtPnRyYWNlMl9jaGlsZF91c19zdGFydCA9IHVzX25vdzsKKworCWZvcl9lYWNoX3dhbnRlZF9idWlsdGluIChqLCB0Z3RfaikKKwkJaWYgKHRndF9qLT5wZm5fY2hpbGRfc3RhcnRfZmwpCisJCQl0Z3Rfai0+cGZuX2NoaWxkX3N0YXJ0X2ZsKGZpbGUsIGxpbmUsCisJCQkJCQkgIHVzX2VsYXBzZWRfYWJzb2x1dGUsIGNtZCk7Cit9CisKK3ZvaWQgdHJhY2UyX2NoaWxkX2V4aXRfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIHN0cnVjdCBjaGlsZF9wcm9jZXNzICpjbWQsCisJCQkgIGludCBjaGlsZF9leGl0X2NvZGUpCit7CisJc3RydWN0IHRyMl90Z3QgKnRndF9qOworCWludCBqOworCXVpbnQ2NF90IHVzX25vdzsKKwl1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlOworCXVpbnQ2NF90IHVzX2VsYXBzZWRfY2hpbGQ7CisKKwlpZiAoIXRyYWNlMl9lbmFibGVkKQorCQlyZXR1cm47CisKKwl1c19ub3cgPSBnZXRuYW5vdGltZSgpIC8gMTAwMDsKKwl1c19lbGFwc2VkX2Fic29sdXRlID0gdHIydGxzX2Fic29sdXRlX2VsYXBzZWQodXNfbm93KTsKKworCWlmIChjbWQtPnRyYWNlMl9jaGlsZF91c19zdGFydCkKKwkJdXNfZWxhcHNlZF9jaGlsZCA9IHVzX25vdyAtIGNtZC0+dHJhY2UyX2NoaWxkX3VzX3N0YXJ0OworCWVsc2UKKwkJdXNfZWxhcHNlZF9jaGlsZCA9IDA7CisKKwlmb3JfZWFjaF93YW50ZWRfYnVpbHRpbiAoaiwgdGd0X2opCisJCWlmICh0Z3Rfai0+cGZuX2NoaWxkX2V4aXRfZmwpCisJCQl0Z3Rfai0+cGZuX2NoaWxkX2V4aXRfZmwoZmlsZSwgbGluZSwKKwkJCQkJCSB1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJCQkJIGNtZC0+dHJhY2UyX2NoaWxkX2lkLCBjbWQtPnBpZCwKKwkJCQkJCSBjaGlsZF9leGl0X2NvZGUsCisJCQkJCQkgdXNfZWxhcHNlZF9jaGlsZCk7Cit9CisKK2ludCB0cmFjZTJfZXhlY19mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqZXhlLAorCQkgICBjb25zdCBjaGFyICoqYXJndikKK3sKKwlzdHJ1Y3QgdHIyX3RndCAqdGd0X2o7CisJaW50IGo7CisJaW50IGV4ZWNfaWQ7CisJdWludDY0X3QgdXNfbm93OworCXVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGU7CisKKwlpZiAoIXRyYWNlMl9lbmFibGVkKQorCQlyZXR1cm4gLTE7CisKKwl1c19ub3cgPSBnZXRuYW5vdGltZSgpIC8gMTAwMDsKKwl1c19lbGFwc2VkX2Fic29sdXRlID0gdHIydGxzX2Fic29sdXRlX2VsYXBzZWQodXNfbm93KTsKKworCWV4ZWNfaWQgPSB0cjJ0bHNfbG9ja2VkX2luY3JlbWVudCgmdHIyX25leHRfZXhlY19pZCk7CisKKwlmb3JfZWFjaF93YW50ZWRfYnVpbHRpbiAoaiwgdGd0X2opCisJCWlmICh0Z3Rfai0+cGZuX2V4ZWNfZmwpCisJCQl0Z3Rfai0+cGZuX2V4ZWNfZmwoZmlsZSwgbGluZSwgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCQkJICAgZXhlY19pZCwgZXhlLCBhcmd2KTsKKworCXJldHVybiBleGVjX2lkOworfQorCit2b2lkIHRyYWNlMl9leGVjX3Jlc3VsdF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgaW50IGV4ZWNfaWQsIGludCBjb2RlKQoreworCXN0cnVjdCB0cjJfdGd0ICp0Z3RfajsKKwlpbnQgajsKKwl1aW50NjRfdCB1c19ub3c7CisJdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZTsKKworCWlmICghdHJhY2UyX2VuYWJsZWQpCisJCXJldHVybjsKKworCXVzX25vdyA9IGdldG5hbm90aW1lKCkgLyAxMDAwOworCXVzX2VsYXBzZWRfYWJzb2x1dGUgPSB0cjJ0bHNfYWJzb2x1dGVfZWxhcHNlZCh1c19ub3cpOworCisJZm9yX2VhY2hfd2FudGVkX2J1aWx0aW4gKGosIHRndF9qKQorCQlpZiAodGd0X2otPnBmbl9leGVjX3Jlc3VsdF9mbCkKKwkJCXRndF9qLT5wZm5fZXhlY19yZXN1bHRfZmwoCisJCQkJZmlsZSwgbGluZSwgdXNfZWxhcHNlZF9hYnNvbHV0ZSwgZXhlY19pZCwgY29kZSk7Cit9CisKK3ZvaWQgdHJhY2UyX3RocmVhZF9zdGFydF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqdGhyZWFkX25hbWUpCit7CisJc3RydWN0IHRyMl90Z3QgKnRndF9qOworCWludCBqOworCXVpbnQ2NF90IHVzX25vdzsKKwl1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlOworCisJaWYgKCF0cmFjZTJfZW5hYmxlZCkKKwkJcmV0dXJuOworCisJaWYgKHRyMnRsc19pc19tYWluX3RocmVhZCgpKSB7CisJCS8qCisJCSAqIFdlIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBmcm9tIHRoZSBuZXcgdGhyZWFkJ3MgdGhyZWFkLXByb2MsCisJCSAqIHNvIHRoaXMgaXMgdGVjaG5pY2FsbHkgYSBidWcuICBCdXQgaW4gdGhvc2UgY2FzZXMgd2hlcmUgdGhlCisJCSAqIG1haW4gdGhyZWFkIGFsc28gcnVucyB0aGUgdGhyZWFkLXByb2MgZnVuY3Rpb24gKG9yIHdoZW4gd2UKKwkJICogYXJlIGJ1aWx0IHdpdGggdGhyZWFkaW5nIGRpc2FibGVkKSwgd2UgbmVlZCB0byBhbGxvdyBpdC4KKwkJICoKKwkJICogQ29udmVydCB0aGlzIGNhbGwgdG8gYSByZWdpb24tZW50ZXIgc28gdGhlIG5lc3RpbmcgbG9va3MKKwkJICogY29ycmVjdC4KKwkJICovCisJCXRyYWNlMl9yZWdpb25fZW50ZXJfcHJpbnRmX2ZsKGZpbGUsIGxpbmUsIE5VTEwsIE5VTEwsIE5VTEwsCisJCQkJCSAgICAgICJ0aHJlYWQtcHJvYyBvbiBtYWluOiAlcyIsCisJCQkJCSAgICAgIHRocmVhZF9uYW1lKTsKKwkJcmV0dXJuOworCX0KKworCXVzX25vdyA9IGdldG5hbm90aW1lKCkgLyAxMDAwOworCXVzX2VsYXBzZWRfYWJzb2x1dGUgPSB0cjJ0bHNfYWJzb2x1dGVfZWxhcHNlZCh1c19ub3cpOworCisJdHIydGxzX2NyZWF0ZV9zZWxmKHRocmVhZF9uYW1lLCB1c19ub3cpOworCisJZm9yX2VhY2hfd2FudGVkX2J1aWx0aW4gKGosIHRndF9qKQorCQlpZiAodGd0X2otPnBmbl90aHJlYWRfc3RhcnRfZmwpCisJCQl0Z3Rfai0+cGZuX3RocmVhZF9zdGFydF9mbChmaWxlLCBsaW5lLAorCQkJCQkJICAgdXNfZWxhcHNlZF9hYnNvbHV0ZSk7Cit9CisKK3ZvaWQgdHJhY2UyX3RocmVhZF9leGl0X2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lKQoreworCXN0cnVjdCB0cjJfdGd0ICp0Z3RfajsKKwlpbnQgajsKKwl1aW50NjRfdCB1c19ub3c7CisJdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZTsKKwl1aW50NjRfdCB1c19lbGFwc2VkX3RocmVhZDsKKworCWlmICghdHJhY2UyX2VuYWJsZWQpCisJCXJldHVybjsKKworCWlmICh0cjJ0bHNfaXNfbWFpbl90aHJlYWQoKSkgeworCQkvKgorCQkgKiBXZSBzaG91bGQgb25seSBiZSBjYWxsZWQgZnJvbSB0aGUgZXhpdGluZyB0aHJlYWQncworCQkgKiB0aHJlYWQtcHJvYywgc28gdGhpcyBpcyB0ZWNobmljYWxseSBhIGJ1Zy4gIEJ1dCBpbgorCQkgKiB0aG9zZSBjYXNlcyB3aGVyZSB0aGUgbWFpbiB0aHJlYWQgYWxzbyBydW5zIHRoZQorCQkgKiB0aHJlYWQtcHJvYyBmdW5jdGlvbiAob3Igd2hlbiB3ZSBhcmUgYnVpbHQgd2l0aAorCQkgKiB0aHJlYWRpbmcgZGlzYWJsZWQpLCB3ZSBuZWVkIHRvIGFsbG93IGl0LgorCQkgKgorCQkgKiBDb252ZXJ0IHRoaXMgY2FsbCB0byBhIHJlZ2lvbi1sZWF2ZSBzbyB0aGUgbmVzdGluZworCQkgKiBsb29rcyBjb3JyZWN0LgorCQkgKi8KKwkJdHJhY2UyX3JlZ2lvbl9sZWF2ZV9wcmludGZfZmwoZmlsZSwgbGluZSwgTlVMTCwgTlVMTCwgTlVMTCwKKwkJCQkJICAgICAgInRocmVhZC1wcm9jIG9uIG1haW4iKTsKKwkJcmV0dXJuOworCX0KKworCXVzX25vdyA9IGdldG5hbm90aW1lKCkgLyAxMDAwOworCXVzX2VsYXBzZWRfYWJzb2x1dGUgPSB0cjJ0bHNfYWJzb2x1dGVfZWxhcHNlZCh1c19ub3cpOworCisJLyoKKwkgKiBDbGVhciBhbnkgdW5iYWxhbmNlZCByZWdpb25zIGFuZCB0aGVuIGdldCB0aGUgcmVsYXRpdmUgdGltZQorCSAqIGZvciB0aGUgb3V0ZXItbW9zdCByZWdpb24gKHdoaWNoIHdlIHB1c2hlZCB3aGVuIHRoZSB0aHJlYWQKKwkgKiBzdGFydGVkKS4gIFRoaXMgZ2l2ZXMgdXMgdGhlIHJ1biB0aW1lIG9mIHRoZSB0aHJlYWQuCisJICovCisJdHIydGxzX3BvcF91bndpbmRfc2VsZigpOworCXVzX2VsYXBzZWRfdGhyZWFkID0gdHIydGxzX3JlZ2lvbl9lbGFzcGVkX3NlbGYodXNfbm93KTsKKworCWZvcl9lYWNoX3dhbnRlZF9idWlsdGluIChqLCB0Z3RfaikKKwkJaWYgKHRndF9qLT5wZm5fdGhyZWFkX2V4aXRfZmwpCisJCQl0Z3Rfai0+cGZuX3RocmVhZF9leGl0X2ZsKGZpbGUsIGxpbmUsCisJCQkJCQkgIHVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCQkJCQkgIHVzX2VsYXBzZWRfdGhyZWFkKTsKKworCXRyMnRsc191bnNldF9zZWxmKCk7Cit9CisKK3ZvaWQgdHJhY2UyX2RlZl9wYXJhbV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqcGFyYW0sCisJCQkgY29uc3QgY2hhciAqdmFsdWUpCit7CisJc3RydWN0IHRyMl90Z3QgKnRndF9qOworCWludCBqOworCisJaWYgKCF0cmFjZTJfZW5hYmxlZCkKKwkJcmV0dXJuOworCisJZm9yX2VhY2hfd2FudGVkX2J1aWx0aW4gKGosIHRndF9qKQorCQlpZiAodGd0X2otPnBmbl9wYXJhbV9mbCkKKwkJCXRndF9qLT5wZm5fcGFyYW1fZmwoZmlsZSwgbGluZSwgcGFyYW0sIHZhbHVlKTsKK30KKwordm9pZCB0cmFjZTJfZGVmX3JlcG9fZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvKQoreworCXN0cnVjdCB0cjJfdGd0ICp0Z3RfajsKKwlpbnQgajsKKworCWlmICghdHJhY2UyX2VuYWJsZWQpCisJCXJldHVybjsKKworCWlmIChyZXBvLT50cmFjZTJfcmVwb19pZCkKKwkJcmV0dXJuOworCisJcmVwby0+dHJhY2UyX3JlcG9faWQgPSB0cjJ0bHNfbG9ja2VkX2luY3JlbWVudCgmdHIyX25leHRfcmVwb19pZCk7CisKKwlmb3JfZWFjaF93YW50ZWRfYnVpbHRpbiAoaiwgdGd0X2opCisJCWlmICh0Z3Rfai0+cGZuX3JlcG9fZmwpCisJCQl0Z3Rfai0+cGZuX3JlcG9fZmwoZmlsZSwgbGluZSwgcmVwbyk7Cit9CisKK3ZvaWQgdHJhY2UyX3JlZ2lvbl9lbnRlcl9wcmludGZfdmFfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkJICAgICAgY29uc3QgY2hhciAqY2F0ZWdvcnksIGNvbnN0IGNoYXIgKmxhYmVsLAorCQkJCSAgICAgIGNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkJCSAgICAgIGNvbnN0IGNoYXIgKmZtdCwgdmFfbGlzdCBhcCkKK3sKKwlzdHJ1Y3QgdHIyX3RndCAqdGd0X2o7CisJaW50IGo7CisJdWludDY0X3QgdXNfbm93OworCXVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGU7CisKKwlpZiAoIXRyYWNlMl9lbmFibGVkKQorCQlyZXR1cm47CisKKwl1c19ub3cgPSBnZXRuYW5vdGltZSgpIC8gMTAwMDsKKwl1c19lbGFwc2VkX2Fic29sdXRlID0gdHIydGxzX2Fic29sdXRlX2VsYXBzZWQodXNfbm93KTsKKworCS8qCisJICogUHJpbnQgdGhlIHJlZ2lvbi1lbnRlciBtZXNzYWdlIGF0IHRoZSBjdXJyZW50IG5lc3RpbmcKKwkgKiAoaW5kZW50YXRpb24pIGxldmVsIGFuZCB0aGVuIHB1c2ggYSBuZXcgbGV2ZWwuCisJICoKKwkgKiBXZSBleHBlY3QgZWFjaCB0YXJnZXQgZnVuY3Rpb24gdG8gdHJlYXQgJ2FwJyBhcyBjb25zdGFudAorCSAqIGFuZCB1c2UgdmFfY29weS4KKwkgKi8KKwlmb3JfZWFjaF93YW50ZWRfYnVpbHRpbiAoaiwgdGd0X2opCisJCWlmICh0Z3Rfai0+cGZuX3JlZ2lvbl9lbnRlcl9wcmludGZfdmFfZmwpCisJCQl0Z3Rfai0+cGZuX3JlZ2lvbl9lbnRlcl9wcmludGZfdmFfZmwoCisJCQkJZmlsZSwgbGluZSwgdXNfZWxhcHNlZF9hYnNvbHV0ZSwgY2F0ZWdvcnksCisJCQkJbGFiZWwsIHJlcG8sIGZtdCwgYXApOworCisJdHIydGxzX3B1c2hfc2VsZih1c19ub3cpOworfQorCit2b2lkIHRyYWNlMl9yZWdpb25fZW50ZXJfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmNhdGVnb3J5LAorCQkJICAgIGNvbnN0IGNoYXIgKmxhYmVsLCBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgLi4uKQoreworCXZhX2xpc3QgYXA7CisJdmFfc3RhcnQoYXAsIHJlcG8pOworCXRyYWNlMl9yZWdpb25fZW50ZXJfcHJpbnRmX3ZhX2ZsKGZpbGUsIGxpbmUsIGNhdGVnb3J5LCBsYWJlbCwgcmVwbywKKwkJCQkJIE5VTEwsIGFwKTsKKwl2YV9lbmQoYXApOworCit9CisKK3ZvaWQgdHJhY2UyX3JlZ2lvbl9lbnRlcl9wcmludGZfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkJICAgY29uc3QgY2hhciAqY2F0ZWdvcnksIGNvbnN0IGNoYXIgKmxhYmVsLAorCQkJCSAgIGNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkJCSAgIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQoreworCXZhX2xpc3QgYXA7CisKKwl2YV9zdGFydChhcCwgZm10KTsKKwl0cmFjZTJfcmVnaW9uX2VudGVyX3ByaW50Zl92YV9mbChmaWxlLCBsaW5lLCBjYXRlZ29yeSwgbGFiZWwsIHJlcG8sIGZtdCwKKwkJCQkJIGFwKTsKKwl2YV9lbmQoYXApOworfQorCisjaWZuZGVmIEhBVkVfVkFSSUFESUNfTUFDUk9TCit2b2lkIHRyYWNlMl9yZWdpb25fZW50ZXJfcHJpbnRmKGNvbnN0IGNoYXIgKmNhdGVnb3J5LCBjb25zdCBjaGFyICpsYWJlbCwKKwkJCQljb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgY29uc3QgY2hhciAqZm10LAorCQkJCS4uLikKK3sKKwl2YV9saXN0IGFwOworCisJdmFfc3RhcnQoYXAsIGZtdCk7CisJdHJhY2UyX3JlZ2lvbl9lbnRlcl9wcmludGZfdmFfZmwoTlVMTCwgMCwgY2F0ZWdvcnksIGxhYmVsLCByZXBvLCBmbXQsCisJCQkJCSBhcCk7CisJdmFfZW5kKGFwKTsKK30KKyNlbmRpZgorCit2b2lkIHRyYWNlMl9yZWdpb25fbGVhdmVfcHJpbnRmX3ZhX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCSAgICAgIGNvbnN0IGNoYXIgKmNhdGVnb3J5LCBjb25zdCBjaGFyICpsYWJlbCwKKwkJCQkgICAgICBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCQkgICAgICBjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXApCit7CisJc3RydWN0IHRyMl90Z3QgKnRndF9qOworCWludCBqOworCXVpbnQ2NF90IHVzX25vdzsKKwl1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlOworCXVpbnQ2NF90IHVzX2VsYXBzZWRfcmVnaW9uOworCisJaWYgKCF0cmFjZTJfZW5hYmxlZCkKKwkJcmV0dXJuOworCisJdXNfbm93ID0gZ2V0bmFub3RpbWUoKSAvIDEwMDA7CisJdXNfZWxhcHNlZF9hYnNvbHV0ZSA9IHRyMnRsc19hYnNvbHV0ZV9lbGFwc2VkKHVzX25vdyk7CisKKwkvKgorCSAqIEdldCB0aGUgZWxhcHNlZCB0aW1lIGluIHRoZSBjdXJyZW50IHJlZ2lvbiBiZWZvcmUgd2UKKwkgKiBwb3AgaXQgb2ZmIHRoZSBzdGFjay4gIFBvcCB0aGUgc3RhY2suICBBbmQgdGhlbiBwcmludAorCSAqIHRoZSBwZXJmIG1lc3NhZ2UgYXQgdGhlIG5ldyAoc2hhbGxvd2VyKSBsZXZlbCBzbyB0aGF0CisJICogaXQgbGluZXMgdXAgd2l0aCB0aGUgY29ycmVzcG9uZGluZyBwdXNoL2VudGVyLgorCSAqLworCXVzX2VsYXBzZWRfcmVnaW9uID0gdHIydGxzX3JlZ2lvbl9lbGFzcGVkX3NlbGYodXNfbm93KTsKKworCXRyMnRsc19wb3Bfc2VsZigpOworCisJLyoKKwkgKiBXZSBleHBlY3QgZWFjaCB0YXJnZXQgZnVuY3Rpb24gdG8gdHJlYXQgJ2FwJyBhcyBjb25zdGFudAorCSAqIGFuZCB1c2UgdmFfY29weS4KKwkgKi8KKwlmb3JfZWFjaF93YW50ZWRfYnVpbHRpbiAoaiwgdGd0X2opCisJCWlmICh0Z3Rfai0+cGZuX3JlZ2lvbl9sZWF2ZV9wcmludGZfdmFfZmwpCisJCQl0Z3Rfai0+cGZuX3JlZ2lvbl9sZWF2ZV9wcmludGZfdmFfZmwoCisJCQkJZmlsZSwgbGluZSwgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCQl1c19lbGFwc2VkX3JlZ2lvbiwgY2F0ZWdvcnksIGxhYmVsLCByZXBvLCBmbXQsCisJCQkJYXApOworfQorCit2b2lkIHRyYWNlMl9yZWdpb25fbGVhdmVfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmNhdGVnb3J5LAorCQkJICAgIGNvbnN0IGNoYXIgKmxhYmVsLCBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgLi4uKQoreworCXZhX2xpc3QgYXA7CisJdmFfc3RhcnQoYXAsIHJlcG8pOworCXRyYWNlMl9yZWdpb25fbGVhdmVfcHJpbnRmX3ZhX2ZsKGZpbGUsIGxpbmUsIGNhdGVnb3J5LCBsYWJlbCwgcmVwbywKKwkJCQkJIE5VTEwsIGFwKTsKKwl2YV9lbmQoYXApOworfQorCit2b2lkIHRyYWNlMl9yZWdpb25fbGVhdmVfcHJpbnRmX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCSAgIGNvbnN0IGNoYXIgKmNhdGVnb3J5LCBjb25zdCBjaGFyICpsYWJlbCwKKwkJCQkgICBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCQkgICBjb25zdCBjaGFyICpmbXQsIC4uLikKK3sKKwl2YV9saXN0IGFwOworCisJdmFfc3RhcnQoYXAsIGZtdCk7CisJdHJhY2UyX3JlZ2lvbl9sZWF2ZV9wcmludGZfdmFfZmwoZmlsZSwgbGluZSwgY2F0ZWdvcnksIGxhYmVsLCByZXBvLCBmbXQsCisJCQkJCSBhcCk7CisJdmFfZW5kKGFwKTsKK30KKworI2lmbmRlZiBIQVZFX1ZBUklBRElDX01BQ1JPUwordm9pZCB0cmFjZTJfcmVnaW9uX2xlYXZlX3ByaW50Zihjb25zdCBjaGFyICpjYXRlZ29yeSwgY29uc3QgY2hhciAqbGFiZWwsCisJCQkJY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIGNvbnN0IGNoYXIgKmZtdCwKKwkJCQkuLi4pCit7CisJdmFfbGlzdCBhcDsKKworCXZhX3N0YXJ0KGFwLCBmbXQpOworCXRyYWNlMl9yZWdpb25fbGVhdmVfcHJpbnRmX3ZhX2ZsKE5VTEwsIDAsIGNhdGVnb3J5LCBsYWJlbCwgcmVwbywgZm10LAorCQkJCQkgYXApOworCXZhX2VuZChhcCk7Cit9CisjZW5kaWYKKwordm9pZCB0cmFjZTJfZGF0YV9zdHJpbmdfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmNhdGVnb3J5LAorCQkJICAgY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIGNvbnN0IGNoYXIgKmtleSwKKwkJCSAgIGNvbnN0IGNoYXIgKnZhbHVlKQoreworCXN0cnVjdCB0cjJfdGd0ICp0Z3RfajsKKwlpbnQgajsKKwl1aW50NjRfdCB1c19ub3c7CisJdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZTsKKwl1aW50NjRfdCB1c19lbGFwc2VkX3JlZ2lvbjsKKworCWlmICghdHJhY2UyX2VuYWJsZWQpCisJCXJldHVybjsKKworCXVzX25vdyA9IGdldG5hbm90aW1lKCkgLyAxMDAwOworCXVzX2VsYXBzZWRfYWJzb2x1dGUgPSB0cjJ0bHNfYWJzb2x1dGVfZWxhcHNlZCh1c19ub3cpOworCXVzX2VsYXBzZWRfcmVnaW9uID0gdHIydGxzX3JlZ2lvbl9lbGFzcGVkX3NlbGYodXNfbm93KTsKKworCWZvcl9lYWNoX3dhbnRlZF9idWlsdGluIChqLCB0Z3RfaikKKwkJaWYgKHRndF9qLT5wZm5fZGF0YV9mbCkKKwkJCXRndF9qLT5wZm5fZGF0YV9mbChmaWxlLCBsaW5lLCB1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJCQkgICB1c19lbGFwc2VkX3JlZ2lvbiwgY2F0ZWdvcnksIHJlcG8sCisJCQkJCSAgIGtleSwgdmFsdWUpOworfQorCit2b2lkIHRyYWNlMl9kYXRhX2ludG1heF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqY2F0ZWdvcnksCisJCQkgICBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgY29uc3QgY2hhciAqa2V5LAorCQkJICAgaW50bWF4X3QgdmFsdWUpCit7CisJc3RydWN0IHN0cmJ1ZiBidWZfc3RyaW5nID0gU1RSQlVGX0lOSVQ7CisKKwlpZiAoIXRyYWNlMl9lbmFibGVkKQorCQlyZXR1cm47CisKKwlzdHJidWZfYWRkZigmYnVmX3N0cmluZywgIiUiIFBSSWRNQVgsIHZhbHVlKTsKKwl0cmFjZTJfZGF0YV9zdHJpbmdfZmwoZmlsZSwgbGluZSwgY2F0ZWdvcnksIHJlcG8sIGtleSwgYnVmX3N0cmluZy5idWYpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfc3RyaW5nKTsKK30KKwordm9pZCB0cmFjZTJfZGF0YV9qc29uX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyICpjYXRlZ29yeSwKKwkJCSBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgY29uc3QgY2hhciAqa2V5LAorCQkJIGNvbnN0IHN0cnVjdCBqc29uX3dyaXRlciAqdmFsdWUpCit7CisJc3RydWN0IHRyMl90Z3QgKnRndF9qOworCWludCBqOworCXVpbnQ2NF90IHVzX25vdzsKKwl1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlOworCXVpbnQ2NF90IHVzX2VsYXBzZWRfcmVnaW9uOworCisJaWYgKCF0cmFjZTJfZW5hYmxlZCkKKwkJcmV0dXJuOworCisJdXNfbm93ID0gZ2V0bmFub3RpbWUoKSAvIDEwMDA7CisJdXNfZWxhcHNlZF9hYnNvbHV0ZSA9IHRyMnRsc19hYnNvbHV0ZV9lbGFwc2VkKHVzX25vdyk7CisJdXNfZWxhcHNlZF9yZWdpb24gPSB0cjJ0bHNfcmVnaW9uX2VsYXNwZWRfc2VsZih1c19ub3cpOworCisJZm9yX2VhY2hfd2FudGVkX2J1aWx0aW4gKGosIHRndF9qKQorCQlpZiAodGd0X2otPnBmbl9kYXRhX2pzb25fZmwpCisJCQl0Z3Rfai0+cGZuX2RhdGFfanNvbl9mbChmaWxlLCBsaW5lLCB1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJCQkJdXNfZWxhcHNlZF9yZWdpb24sIGNhdGVnb3J5LAorCQkJCQkJcmVwbywga2V5LCB2YWx1ZSk7Cit9CisKK3ZvaWQgdHJhY2UyX3ByaW50Zl92YV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqZm10LAorCQkJIHZhX2xpc3QgYXApCit7CisJc3RydWN0IHRyMl90Z3QgKnRndF9qOworCWludCBqOworCXVpbnQ2NF90IHVzX25vdzsKKwl1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlOworCisJaWYgKCF0cmFjZTJfZW5hYmxlZCkKKwkJcmV0dXJuOworCisJdXNfbm93ID0gZ2V0bmFub3RpbWUoKSAvIDEwMDA7CisJdXNfZWxhcHNlZF9hYnNvbHV0ZSA9IHRyMnRsc19hYnNvbHV0ZV9lbGFwc2VkKHVzX25vdyk7CisKKwkvKgorCSAqIFdlIGV4cGVjdCBlYWNoIHRhcmdldCBmdW5jdGlvbiB0byB0cmVhdCAnYXAnIGFzIGNvbnN0YW50CisJICogYW5kIHVzZSB2YV9jb3B5LgorCSAqLworCWZvcl9lYWNoX3dhbnRlZF9idWlsdGluIChqLCB0Z3RfaikKKwkJaWYgKHRndF9qLT5wZm5fcHJpbnRmX3ZhX2ZsKQorCQkJdGd0X2otPnBmbl9wcmludGZfdmFfZmwoZmlsZSwgbGluZSwgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCQkJCWZtdCwgYXApOworfQorCit2b2lkIHRyYWNlMl9wcmludGZfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQoreworCXZhX2xpc3QgYXA7CisKKwl2YV9zdGFydChhcCwgZm10KTsKKwl0cmFjZTJfcHJpbnRmX3ZhX2ZsKGZpbGUsIGxpbmUsIGZtdCwgYXApOworCXZhX2VuZChhcCk7Cit9CisKKyNpZm5kZWYgSEFWRV9WQVJJQURJQ19NQUNST1MKK3ZvaWQgdHJhY2UyX3ByaW50Zihjb25zdCBjaGFyICpmbXQsIC4uLikKK3sKKwl2YV9saXN0IGFwOworCisJdmFfc3RhcnQoYXAsIGZtdCk7CisJdHJhY2UyX3ByaW50Zl92YV9mbChOVUxMLCAwLCBmbXQsIGFwKTsKKwl2YV9lbmQoYXApOworfQorI2VuZGlmCmRpZmYgLS1naXQgYS90cmFjZTIuaCBiL3RyYWNlMi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU1ZTgxYzAKLS0tIC9kZXYvbnVsbAorKysgYi90cmFjZTIuaApAQCAtMCwwICsxLDQ5MCBAQAorI2lmbmRlZiBUUkFDRTJfSAorI2RlZmluZSBUUkFDRTJfSAorCisvKioKKyAqIFRoZSBUcmFjZTIgQVBJIGNhbiBiZSB1c2VkIHRvIHByaW50IGRlYnVnLCBwZXJmb3JtYW5jZSwgYW5kIHRlbGVtZXRyeQorICogaW5mb3JtYXRpb24gdG8gc3RkZXJyIG9yIGEgZmlsZS4gIFRoZSBUcmFjZTIgZmVhdHVyZSBpcyBpbmFjdGl2ZSB1bmxlc3MKKyAqIGV4cGxpY2l0bHkgZW5hYmxlZCBieSBlbmFibGluZyBvbmUgb3IgbW9yZSBUcmFjZTIgVGFyZ2V0cy4KKyAqCisgKiBUaGUgVHJhY2UyIEFQSSBpcyBpbnRlbmRlZCB0byByZXBsYWNlIHRoZSBleGlzdGluZyAoVHJhY2UxKQorICogcHJpbnRmLXN0eWxlIHRyYWNpbmcgcHJvdmlkZWQgYnkgdGhlIGV4aXN0aW5nIGBHSVRfVFJBQ0VgIGFuZAorICogYEdJVF9UUkFDRV9QRVJGT1JNQU5DRWAgZmFjaWxpdGllcy4gIER1cmluZyBpbml0aWFsIGltcGxlbWVudGF0aW9uLAorICogVHJhY2UyIGFuZCBUcmFjZTEgbWF5IG9wZXJhdGUgaW4gcGFyYWxsZWwuCisgKgorICogVGhlIFRyYWNlMiBBUEkgZGVmaW5lcyBhIHNldCBvZiBoaWdoLWxldmVsIG1lc3NhZ2VzIHdpdGgga25vd24gZmllbGRzLAorICogc3VjaCBhcyAoYHN0YXJ0YDogYGFyZ3ZgKSBhbmQgKGBleGl0YDoge2BleGl0LWNvZGVgLCBgZWxhcHNlZC10aW1lYH0pLgorICoKKyAqIFRyYWNlMiBpbnN0cnVtZW50YXRpb24gdGhyb3VnaG91dCB0aGUgR2l0IGNvZGUgYmFzZSBzZW5kcyBUcmFjZTIKKyAqIG1lc3NhZ2VzIHRvIHRoZSBlbmFibGVkIFRyYWNlMiBUYXJnZXRzLiAgVGFyZ2V0cyB0cmFuc2Zvcm0gdGhlc2UKKyAqIG1lc3NhZ2VzIGNvbnRlbnQgaW50byBwdXJwb3NlLXNwZWNpZmljIGZvcm1hdHMgYW5kIHdyaXRlIGV2ZW50cyB0bworICogdGhlaXIgZGF0YSBzdHJlYW1zLiAgSW4gdGhpcyBtYW5uZXIsIHRoZSBUcmFjZTIgQVBJIGNhbiBkcml2ZQorICogbWFueSBkaWZmZXJlbnQgdHlwZXMgb2YgYW5hbHlzaXMuCisgKgorICogVGFyZ2V0cyBhcmUgZGVmaW5lZCB1c2luZyBhIFZUYWJsZSBhbGxvd2luZyBlYXN5IGV4dGVuc2lvbiB0byBvdGhlcgorICogZm9ybWF0cyBpbiB0aGUgZnV0dXJlLiAgVGhpcyBtaWdodCBiZSB1c2VkIHRvIGRlZmluZSBhIGJpbmFyeSBmb3JtYXQsCisgKiBmb3IgZXhhbXBsZS4KKyAqCisgKiBUcmFjZTIgaXMgY29udHJvbGxlZCB1c2luZyBgdHJhY2UyLipgIGNvbmZpZyB2YWx1ZXMgaW4gdGhlIHN5c3RlbSBhbmQKKyAqIGdsb2JhbCBjb25maWcgZmlsZXMgYW5kIGBHSVRfVFJBQ0UyKmAgZW52aXJvbm1lbnQgdmFyaWFibGVzLiAgVHJhY2UyIGRvZXMKKyAqIG5vdCByZWFkIGZyb20gcmVwbyBsb2NhbCBvciB3b3JrdHJlZSBjb25maWcgZmlsZXMgb3IgcmVzcGVjdCBgLWNgCisgKiBjb21tYW5kIGxpbmUgY29uZmlnIHNldHRpbmdzLgorICoKKyAqIEZvciBtb3JlIGluZm8gYWJvdXQ6IHRyYWNlMiB0YXJnZXRzLCBjb252ZW50aW9ucyBmb3IgcHVibGljIGZ1bmN0aW9ucyBhbmQKKyAqIG1hY3JvcywgdHJhY2UyIHRhcmdldCBmb3JtYXRzIGFuZCBleGFtcGxlcyBvbiB0cmFjZTIgQVBJIHVzYWdlIHJlZmVyIHRvCisgKiBEb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktdHJhY2UyLnR4dAorICoKKyAqLworCitzdHJ1Y3QgY2hpbGRfcHJvY2VzczsKK3N0cnVjdCByZXBvc2l0b3J5Oworc3RydWN0IGpzb25fd3JpdGVyOworCisvKgorICogVGhlIHB1YmxpYyBUUkFDRTIgcm91dGluZXMgYXJlIGdyb3VwZWQgaW50byB0aGUgZm9sbG93aW5nIGdyb3VwczoKKyAqCisgKiBbXSB0cmFjZTJfaW5pdGlhbGl6ZSAtLSBpbml0aWFsaXphdGlvbi4KKyAqIFtdIHRyYWNlMl9jbWRfKiAgICAgIC0tIGVtaXQgY29tbWFuZC9jb250cm9sIG1lc3NhZ2VzLgorICogW10gdHJhY2UyX2NoaWxkKiAgICAgLS0gZW1pdCBjaGlsZCBzdGFydC9zdG9wIG1lc3NhZ2VzLgorICogW10gdHJhY2UyX2V4ZWMqICAgICAgLS0gZW1pdCBleGVjIHN0YXJ0L3N0b3AgbWVzc2FnZXMuCisgKiBbXSB0cmFjZTJfdGhyZWFkKiAgICAtLSBlbWl0IHRocmVhZCBzdGFydC9zdG9wIG1lc3NhZ2VzLgorICogW10gdHJhY2UyX2RlZiogICAgICAgLS0gZW1pdCBkZWZpbml0aW9uL3BhcmFtZXRlciBtZXNhc2dlcy4KKyAqIFtdIHRyYWNlMl9yZWdpb24qICAgIC0tIGVtaXQgcmVnaW9uIG5lc3RpbmcgbWVzc2FnZXMuCisgKiBbXSB0cmFjZTJfZGF0YSogICAgICAtLSBlbWl0IHJlZ2lvbi90aHJlYWQvcmVwbyBkYXRhIG1lc3NhZ2VzLgorICogW10gdHJhY2UyX3ByaW50ZiogICAgLS0gbGVnYWN5IHRyYWNlWzFdIG1lc3NhZ2VzLgorICovCisKKy8qCisgKiBJbml0aWFsaXplIHRoZSBUUkFDRTIgY2xvY2sgYW5kIGRvIG5vdGhpbmcgZWxzZSwgaW4gcGFydGljdWxhcgorICogbm8gbWFsbG9jcywgbm8gc3lzdGVtIGluc3BlY3Rpb24sIGFuZCBubyBlbnZpcm9ubWVudCBpbnNwZWN0aW9uLgorICoKKyAqIFRoaXMgc2hvdWxkIGJlIGNhbGxlZCBhdCB0aGUgdmVyeSB0b3Agb2YgbWFpbigpIHRvIGNhcHR1cmUgdGhlCisgKiBwcm9jZXNzIHN0YXJ0IHRpbWUuICBUaGlzIGlzIGludGVuZGVkIHRvIHJlZHVjZSBjaGlja2VuLW4tZWdnCisgKiBib290c3RyYXAgcHJlc3N1cmUuCisgKgorICogSXQgaXMgc2FmZSB0byBjYWxsIHRoaXMgbW9yZSB0aGFuIG9uY2UuICBUaGlzIGFsbG93cyBjYXB0dXJpbmcKKyAqIGFic29sdXRlIHN0YXJ0dXAgY29zdHMgb24gV2luZG93cyB3aGljaCB1c2VzIGEgbGl0dGxlIHRyaWNrZXJ5CisgKiB0byBkbyBzZXR1cCB3b3JrIGJlZm9yZSBjb21tb24tbWFpbi5jOm1haW4oKSBpcyBjYWxsZWQuCisgKgorICogVGhlIG1haW4gdHJhY2UyX2luaXRpYWxpemVfZmwoKSBtYXkgYmUgY2FsbGVkIGEgbGl0dGxlIGxhdGVyCisgKiBhZnRlciBtb3JlIGluZnJhc3RydWN0dXJlIGlzIGVzdGFibGlzaGVkLgorICovCit2b2lkIHRyYWNlMl9pbml0aWFsaXplX2Nsb2NrKHZvaWQpOworCisvKgorICogSW5pdGlhbGl6ZSBUUkFDRTIgdHJhY2luZyBmYWNpbGl0eSBpZiBhbnkgb2YgdGhlIGJ1aWx0aW4gVFJBQ0UyCisgKiB0YXJnZXRzIGFyZSBlbmFibGVkIGluIHRoZSBzeXN0ZW0gY29uZmlnIG9yIHRoZSBlbnZpcm9ubWVudC4KKyAqIFRoaXMgaW5jbHVkZXMgc2V0dGluZyB1cCB0aGUgVHJhY2UyIHRocmVhZCBsb2NhbCBzdG9yYWdlIChUTFMpLgorICogRW1pdHMgYSAndmVyc2lvbicgbWVzc2FnZSBjb250YWluaW5nIHRoZSB2ZXJzaW9uIG9mIGdpdAorICogYW5kIHRoZSBUcmFjZTIgcHJvdG9jb2wuCisgKgorICogVGhpcyBmdW5jdGlvbiBzaG91bGQgYmUgY2FsbGVkIGZyb20gYG1haW4oKWAgYXMgZWFybHkgYXMgcG9zc2libGUgaW4KKyAqIHRoZSBsaWZlIG9mIHRoZSBwcm9jZXNzIGFmdGVyIGVzc2VudGlhbCBwcm9jZXNzIGluaXRpYWxpemF0aW9uLgorICoKKyAqIENsZWFudXAvVGVybWluYXRpb24gaXMgaGFuZGxlZCBhdXRvbWF0aWNhbGx5IGJ5IGEgcmVnaXN0ZXJlZAorICogYXRleGl0KCkgcm91dGluZS4KKyAqLwordm9pZCB0cmFjZTJfaW5pdGlhbGl6ZV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSk7CisKKyNkZWZpbmUgdHJhY2UyX2luaXRpYWxpemUoKSB0cmFjZTJfaW5pdGlhbGl6ZV9mbChfX0ZJTEVfXywgX19MSU5FX18pCisKKy8qCisgKiBSZXR1cm4gMSBpZiB0cmFjZTIgaXMgZW5hYmxlZCAoYXQgbGVhc3Qgb25lIHRhcmdldCBpcyBhY3RpdmUpLgorICovCitpbnQgdHJhY2UyX2lzX2VuYWJsZWQodm9pZCk7CisKKy8qCisgKiBFbWl0IGEgJ3N0YXJ0JyBldmVudCB3aXRoIHRoZSBvcmlnaW5hbCAodW5tb2RpZmllZCkgYXJndi4KKyAqLwordm9pZCB0cmFjZTJfY21kX3N0YXJ0X2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyICoqYXJndik7CisKKyNkZWZpbmUgdHJhY2UyX2NtZF9zdGFydChhcmd2KSB0cmFjZTJfY21kX3N0YXJ0X2ZsKF9fRklMRV9fLCBfX0xJTkVfXywgKGFyZ3YpKQorCisvKgorICogRW1pdCBhbiAnZXhpdCcgZXZlbnQuCisgKgorICogV3JpdGUgdGhlIGV4aXQtY29kZSB0aGF0IHdpbGwgYmUgcGFzc2VkIHRvIGV4aXQoKSBvciByZXR1cm5lZAorICogZnJvbSBtYWluKCkuCisgKgorICogVXNlIHRoaXMgcHJpb3IgdG8gYWN0dWFsbHkgY2FsbGluZyBleGl0KCkuCisgKiBTZWUgIiNkZWZpbmUgZXhpdCgpIiBpbiBnaXQtY29tcGF0LXV0aWwuaAorICovCitpbnQgdHJhY2UyX2NtZF9leGl0X2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBpbnQgY29kZSk7CisKKyNkZWZpbmUgdHJhY2UyX2NtZF9leGl0KGNvZGUpICh0cmFjZTJfY21kX2V4aXRfZmwoX19GSUxFX18sIF9fTElORV9fLCAoY29kZSkpKQorCisvKgorICogRW1pdCBhbiAnZXJyb3InIGV2ZW50LgorICoKKyAqIFdyaXRlIGFuIGVycm9yIG1lc3NhZ2UgdG8gdGhlIFRSQUNFMiB0YXJnZXRzLgorICovCit2b2lkIHRyYWNlMl9jbWRfZXJyb3JfdmFfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmZtdCwKKwkJCSAgICB2YV9saXN0IGFwKTsKKworI2RlZmluZSB0cmFjZTJfY21kX2Vycm9yX3ZhKGZtdCwgYXApIFwKKwl0cmFjZTJfY21kX2Vycm9yX3ZhX2ZsKF9fRklMRV9fLCBfX0xJTkVfXywgKGZtdCksIChhcCkpCisKKy8qCisgKiBFbWl0IGEgJ3BhdGhuYW1lJyBldmVudCB3aXRoIHRoZSBjYW5vbmljYWwgcGF0aG5hbWUgb2YgdGhlIGN1cnJlbnQgcHJvY2VzcworICogVGhpcyBnaXZlcyBwb3N0LXByb2Nlc3NvcnMgYSBzaW1wbGUgZmllbGQgdG8gaWRlbnRpZnkgdGhlIGNvbW1hbmQgd2l0aG91dAorICogaGF2aW5nIHRvIHBhcnNlIHRoZSBhcmd2LiAgRm9yIGV4YW1wbGUsIHRvIGRpc3Rpbmd1aXNoIGludm9jYXRpb25zIGZyb20KKyAqIGluc3RhbGxlZCB2ZXJzdXMgZGVidWcgZXhlY3V0YWJsZXMuCisgKi8KK3ZvaWQgdHJhY2UyX2NtZF9wYXRoX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyICpwYXRobmFtZSk7CisKKyNkZWZpbmUgdHJhY2UyX2NtZF9wYXRoKHApIHRyYWNlMl9jbWRfcGF0aF9mbChfX0ZJTEVfXywgX19MSU5FX18sIChwKSkKKworLyoKKyAqIEVtaXQgYSAnY21kX25hbWUnIGV2ZW50IHdpdGggdGhlIGNhbm9uaWNhbCBuYW1lIG9mIHRoZSBjb21tYW5kLgorICogVGhpcyBnaXZlcyBwb3N0LXByb2Nlc3NvcnMgYSBzaW1wbGUgZmllbGQgdG8gaWRlbnRpZnkgdGhlIGNvbW1hbmQKKyAqIHdpdGhvdXQgaGF2aW5nIHRvIHBhcnNlIHRoZSBhcmd2LgorICovCit2b2lkIHRyYWNlMl9jbWRfbmFtZV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqbmFtZSk7CisKKyNkZWZpbmUgdHJhY2UyX2NtZF9uYW1lKHYpIHRyYWNlMl9jbWRfbmFtZV9mbChfX0ZJTEVfXywgX19MSU5FX18sICh2KSkKKworLyoKKyAqIEVtaXQgYSAnY21kX21vZGUnIGV2ZW50IHRvIGZ1cnRoZXIgZGVzY3JpYmUgdGhlIGNvbW1hbmQgYmVpbmcgcnVuLgorICogRm9yIGV4YW1wbGUsICJjaGVja291dCIgY2FuIGNoZWNrb3V0IGEgc2luZ2xlIGZpbGUgb3IgY2FuIGNoZWNrb3V0IGEKKyAqIGRpZmZlcmVudCBicmFuY2guICBUaGlzIGdpdmVzIHBvc3QtcHJvY2Vzc29ycyBhIHNpbXBsZSBmaWVsZCB0byBjb21wYXJlCisgKiBlcXVpdmFsZW50IGNvbW1hbmRzIHdpdGhvdXQgaGF2aW5nIHRvIHBhcnNlIHRoZSBhcmd2LgorICovCit2b2lkIHRyYWNlMl9jbWRfbW9kZV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqbW9kZSk7CisKKyNkZWZpbmUgdHJhY2UyX2NtZF9tb2RlKHN2KSB0cmFjZTJfY21kX21vZGVfZmwoX19GSUxFX18sIF9fTElORV9fLCAoc3YpKQorCisvKgorICogRW1pdHMgYW4gImFsaWFzIiBtZXNzYWdlIGNvbnRhaW5pbmcgdGhlIGFsaWFzIHVzZWQgYW5kIHRoZSBhcmd1bWVudAorICogZXhwYW5zaW9uLgorICovCit2b2lkIHRyYWNlMl9jbWRfYWxpYXNfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmFsaWFzLAorCQkJIGNvbnN0IGNoYXIgKiphcmd2KTsKKworI2RlZmluZSB0cmFjZTJfY21kX2FsaWFzKGFsaWFzLCBhcmd2KSBcCisJdHJhY2UyX2NtZF9hbGlhc19mbChfX0ZJTEVfXywgX19MSU5FX18sIChhbGlhcyksIChhcmd2KSkKKworLyoKKyAqIEVtaXQgb25lIG9yIG1vcmUgJ2RlZl9wYXJhbScgZXZlbnRzIGZvciAiaW1wb3J0YW50IiBjb25maWd1cmF0aW9uCisgKiBzZXR0aW5ncy4KKyAqCisgKiBVc2UgdGhlIFRSMl9TWVNFTlZfQ0ZHX1BBUkFNIHNldHRpbmcgdG8gcmVnaXN0ZXIgYSBjb21tYS1zZXBhcmF0ZWQKKyAqIGxpc3Qgb2YgcGF0dGVybnMgY29uZmlndXJlZCBpbXBvcnRhbnQuICBGb3IgZXhhbXBsZToKKyAqICAgICBnaXQgY29uZmlnIC0tc3lzdGVtIHRyYWNlMi5jb25maWdQYXJhbXMgJ2NvcmUuKixyZW1vdGUuKi51cmwnCisgKiBvcjoKKyAqICAgICBHSVRfVFJBQ0UyX0NPTkZJR19QQVJBTVM9Y29yZS4qLHJlbW90ZS4qLnVybCIKKyAqCisgKiBOb3RlOiB0aGlzIHJvdXRpbmUgZG9lcyBhIHJlYWQtb25seSBpdGVyYXRpb24gb24gdGhlIGNvbmZpZyBkYXRhCisgKiAodXNpbmcgcmVhZF9lYXJseV9jb25maWcoKSksIHNvIGl0IG11c3Qgbm90IGJlIGNhbGxlZCB1bnRpbCBlbm91Z2gKKyAqIG9mIHRoZSBwcm9jZXNzIGVudmlyb25tZW50IGhhcyBiZWVuIGVzdGFibGlzaGVkLiAgVGhpcyBpbmNsdWRlcyB0aGUKKyAqIGxvY2F0aW9uIG9mIHRoZSBnaXQgYW5kIHdvcmt0cmVlIGRpcmVjdG9yaWVzLCBleHBhbnNpb24gb2YgYW55ICItYyIKKyAqIGFuZCAiLUMiIGNvbW1hbmQgbGluZSBvcHRpb25zLCBhbmQgZXRjLgorICovCit2b2lkIHRyYWNlMl9jbWRfbGlzdF9jb25maWdfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUpOworCisjZGVmaW5lIHRyYWNlMl9jbWRfbGlzdF9jb25maWcoKSB0cmFjZTJfY21kX2xpc3RfY29uZmlnX2ZsKF9fRklMRV9fLCBfX0xJTkVfXykKKworLyoKKyAqIEVtaXQgYSAiZGVmX3BhcmFtIiBldmVudCBmb3IgdGhlIGdpdmVuIGNvbmZpZyBrZXkvdmFsdWUgcGFpciBJRgorICogd2UgY29uc2lkZXIgdGhlIGtleSB0byBiZSAiaW1wb3J0YW50Ii4KKyAqCisgKiBVc2UgdGhpcyBmb3IgbmV3L3VwZGF0ZWQgY29uZmlnIHNldHRpbmdzIGNyZWF0ZWQvdXBkYXRlZCBhZnRlcgorICogdHJhY2UyX2NtZF9saXN0X2NvbmZpZygpIGlzIGNhbGxlZC4KKyAqLwordm9pZCB0cmFjZTJfY21kX3NldF9jb25maWdfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmtleSwKKwkJCSAgICAgIGNvbnN0IGNoYXIgKnZhbHVlKTsKKworI2RlZmluZSB0cmFjZTJfY21kX3NldF9jb25maWcoaywgdikgXAorCXRyYWNlMl9jbWRfc2V0X2NvbmZpZ19mbChfX0ZJTEVfXywgX19MSU5FX18sIChrKSwgKHYpKQorCisvKioKKyAqIEVtaXRzIGEgImNoaWxkX3N0YXJ0IiBtZXNzYWdlIGNvbnRhaW5pbmcgdGhlICJjaGlsZC1pZCIsCisgKiAiY2hpbGQtYXJndiIsIGFuZCAiY2hpbGQtY2xhc3NpZmljYXRpb24iLgorICoKKyAqIEJlZm9yZSBjYWxsaW5nIG9wdGlvbmFsbHkgc2V0ICJjbWQtPnRyYWNlMl9jaGlsZF9jbGFzcyIgdG8gYSBzdHJpbmcKKyAqIGRlc2NyaWJpbmcgdGhlIHR5cGUgb2YgdGhlIGNoaWxkIHByb2Nlc3MuICBGb3IgZXhhbXBsZSwgImVkaXRvciIgb3IKKyAqICJwYWdlciIuCisgKgorICogVGhpcyBmdW5jdGlvbiBhc3NpZ25zIGEgdW5pcXVlICJjaGlsZC1pZCIgdG8gYGNtZC0+dHJhY2UyX2NoaWxkX2lkYC4KKyAqIFRoaXMgZmllbGQgaXMgdXNlZCBsYXRlciBkdXJpbmcgdGhlICJjaGlsZF9leGl0IiBtZXNzYWdlIHRvIGFzc29jaWF0ZQorICogaXQgd2l0aCB0aGUgImNoaWxkX3N0YXJ0IiBtZXNzYWdlLgorICoKKyAqIFRoaXMgZnVuY3Rpb24gc2hvdWxkIGJlIGNhbGxlZCBiZWZvcmUgc3Bhd25pbmcgdGhlIGNoaWxkIHByb2Nlc3MuCisgKi8KK3ZvaWQgdHJhY2UyX2NoaWxkX3N0YXJ0X2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJICAgc3RydWN0IGNoaWxkX3Byb2Nlc3MgKmNtZCk7CisKKyNkZWZpbmUgdHJhY2UyX2NoaWxkX3N0YXJ0KGNtZCkgdHJhY2UyX2NoaWxkX3N0YXJ0X2ZsKF9fRklMRV9fLCBfX0xJTkVfXywgKGNtZCkpCisKKy8qKgorICogRW1pdHMgYSAiY2hpbGRfZXhpdCIgbWVzc2FnZSBjb250YWluaW5nIHRoZSAiY2hpbGQtaWQiLAorICogdGhlIGNoaWxkJ3MgZWxhcHNlZCB0aW1lIGFuZCBleGl0LWNvZGUuCisgKgorICogVGhlIHJlcG9ydGVkIGVsYXBzZWQgdGltZSBpbmNsdWRlcyB0aGUgcHJvY2VzcyBjcmVhdGlvbiBvdmVyaGVhZCBhbmQKKyAqIHRpbWUgc3BlbmQgd2FpdGluZyBmb3IgaXQgdG8gZXhpdCwgc28gaXQgbWF5IGJlIHNsaWdodGx5IGxvbmdlciB0aGFuCisgKiB0aGUgdGltZSByZXBvcnRlZCBieSB0aGUgY2hpbGQgaXRzZWxmLgorICoKKyAqIFRoaXMgZnVuY3Rpb24gc2hvdWxkIGJlIGNhbGxlZCBhZnRlciByZWFwaW5nIHRoZSBjaGlsZCBwcm9jZXNzLgorICovCit2b2lkIHRyYWNlMl9jaGlsZF9leGl0X2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqY21kLAorCQkJICBpbnQgY2hpbGRfZXhpdF9jb2RlKTsKKworI2RlZmluZSB0cmFjZTJfY2hpbGRfZXhpdChjbWQsIGNvZGUpIFwKKwl0cmFjZTJfY2hpbGRfZXhpdF9mbChfX0ZJTEVfXywgX19MSU5FX18sIChjbWQpLCAoY29kZSkpCisKKy8qKgorICogRW1pdCBhbiAnZXhlYycgZXZlbnQgcHJpb3IgdG8gY2FsbGluZyBvbmUgb2YgZXhlYygpLCBleGVjdigpLAorICogZXhlY3ZwKCksIGFuZCBldGMuICBPbiBVbml4LWRlcml2ZWQgc3lzdGVtcywgdGhpcyB3aWxsIGJlIHRoZQorICogbGFzdCBldmVudCBlbWl0dGVkIGZvciB0aGUgY3VycmVudCBwcm9jZXNzLCB1bmxlc3MgdGhlIGV4ZWMKKyAqIGZhaWxzLiAgT24gV2luZG93cywgZXhlYygpIGJlaGF2ZXMgbGlrZSAnY2hpbGRfc3RhcnQnIGFuZCBhCisgKiB3YWl0cGlkKCksIHNvIGFkZGl0aW9uYWwgZXZlbnRzIG1heSBiZSBlbWl0dGVkLgorICoKKyAqIFJldHVybnMgYSB1bmlxdWUgImV4ZWMtaWQiLiAgVGhpcyB2YWx1ZSBpcyB1c2VkIGxhdGVyCisgKiBpZiB0aGUgZXhlYygpIGZhaWxzIGFuZCBhICJleGVjLXJlc3VsdCIgbWVzc2FnZSBpcyBuZWNlc3NhcnkuCisgKi8KK2ludCB0cmFjZTJfZXhlY19mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqZXhlLAorCQkgICBjb25zdCBjaGFyICoqYXJndik7CisKKyNkZWZpbmUgdHJhY2UyX2V4ZWMoZXhlLCBhcmd2KSB0cmFjZTJfZXhlY19mbChfX0ZJTEVfXywgX19MSU5FX18sIChleGUpLCAoYXJndikpCisKKy8qKgorICogRW1pdCBhbiAnZXhlY19yZXN1bHQnIHdoZW4gcG9zc2libGUuICBPbiBVbml4LWRlcml2ZWQgc3lzdGVtcywKKyAqIHRoaXMgc2hvdWxkIGJlIGNhbGxlZCBhZnRlciBleGVjKCkgcmV0dXJucyAod2hpY2ggb25seSBoYXBwZW5zCisgKiB3aGVuIHRoZXJlIGlzIGFuIGVycm9yIHN0YXJ0aW5nIHRoZSBuZXcgcHJvY2VzcykuICBPbiBXaW5kb3dzLAorICogdGhpcyBzaG91bGQgYmUgY2FsbGVkIGFmdGVyIHRoZSB3YWl0cGlkKCkuCisgKgorICogVGhlICJleGVjX2lkIiBzaG91bGQgYmUgdGhlIHZhbHVlIHJldHVybmVkIGZyb20gdHJhY2UyX2V4ZWMoKS4KKyAqLwordm9pZCB0cmFjZTJfZXhlY19yZXN1bHRfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGludCBleGVjX2lkLCBpbnQgY29kZSk7CisKKyNkZWZpbmUgdHJhY2UyX2V4ZWNfcmVzdWx0KGlkLCBjb2RlKSBcCisJdHJhY2UyX2V4ZWNfcmVzdWx0X2ZsKF9fRklMRV9fLCBfX0xJTkVfXywgKGlkKSwgKGNvZGUpKQorCisvKgorICogRW1pdCBhICd0aHJlYWRfc3RhcnQnIGV2ZW50LiAgVGhpcyBtdXN0IGJlIGNhbGxlZCBmcm9tIGluc2lkZSB0aGUKKyAqIHRocmVhZC1wcm9jIHRvIHNldCB1cCB0aGUgdHJhY2UyIFRMUyBkYXRhIGZvciB0aGUgdGhyZWFkLgorICoKKyAqIFRocmVhZCBuYW1lcyBzaG91bGQgYmUgZGVzY3JpcHRpdmUsIGxpa2UgInByZWxvYWRfaW5kZXgiLgorICogVGhyZWFkIG5hbWVzIHdpbGwgYmUgZGVjb3JhdGVkIHdpdGggYW4gaW5zdGFuY2UgbnVtYmVyIGF1dG9tYXRpY2FsbHkuCisgKi8KK3ZvaWQgdHJhY2UyX3RocmVhZF9zdGFydF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCSAgICBjb25zdCBjaGFyICp0aHJlYWRfbmFtZSk7CisKKyNkZWZpbmUgdHJhY2UyX3RocmVhZF9zdGFydCh0aHJlYWRfbmFtZSkgXAorCXRyYWNlMl90aHJlYWRfc3RhcnRfZmwoX19GSUxFX18sIF9fTElORV9fLCAodGhyZWFkX25hbWUpKQorCisvKgorICogRW1pdCBhICd0aHJlYWRfZXhpdCcgZXZlbnQuICBUaGlzIG11c3QgYmUgY2FsbGVkIGZyb20gaW5zaWRlIHRoZQorICogdGhyZWFkLXByb2MgdG8gcmVwb3J0IHRocmVhZC1zcGVjaWZpYyBkYXRhIGFuZCBjbGVhbnVwIFRMUyBkYXRhCisgKiBmb3IgdGhlIHRocmVhZC4KKyAqLwordm9pZCB0cmFjZTJfdGhyZWFkX2V4aXRfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUpOworCisjZGVmaW5lIHRyYWNlMl90aHJlYWRfZXhpdCgpIHRyYWNlMl90aHJlYWRfZXhpdF9mbChfX0ZJTEVfXywgX19MSU5FX18pCisKKy8qCisgKiBFbWl0cyBhICJkZWZfcGFyYW0iIG1lc3NhZ2UgY29udGFpbmluZyBhIGtleS92YWx1ZSBwYWlyLgorICoKKyAqIFRoaXMgbWVzc2FnZSBpcyBpbnRlbmRlZCB0byByZXBvcnQgc29tZSBnbG9iYWwgYXNwZWN0IG9mIHRoZSBjdXJyZW50CisgKiBjb21tYW5kLCBzdWNoIGFzIGEgY29uZmlndXJhdGlvbiBzZXR0aW5nIG9yIGNvbW1hbmQgbGluZSBzd2l0Y2ggdGhhdAorICogc2lnbmlmaWNhbnRseSBhZmZlY3RzIHByb2dyYW0gcGVyZm9ybWFuY2Ugb3IgYmVoYXZpb3IsIHN1Y2ggYXMKKyAqIGBjb3JlLmFiYnJldmAsIGBzdGF0dXMuc2hvd1VudHJhY2tlZEZpbGVzYCwgb3IgYC0tbm8tYWhlYWQtYmVoaW5kYC4KKyAqLwordm9pZCB0cmFjZTJfZGVmX3BhcmFtX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyICpwYXJhbSwKKwkJCSBjb25zdCBjaGFyICp2YWx1ZSk7CisKKyNkZWZpbmUgdHJhY2UyX2RlZl9wYXJhbShwYXJhbSwgdmFsdWUpIFwKKwl0cmFjZTJfZGVmX3BhcmFtX2ZsKF9fRklMRV9fLCBfX0xJTkVfXywgKHBhcmFtKSwgKHZhbHVlKSkKKworLyoKKyAqIFRlbGwgdHJhY2UyIGFib3V0IGEgbmV3bHkgaW5zdGFudGlhdGVkIHJlcG8gb2JqZWN0IGFuZCBhc3NpZ24KKyAqIGEgdHJhY2UyLXJlcG8taWQgdG8gYmUgdXNlZCBpbiBzdWJzZXF1ZW50IGFjdGl2aXR5IGV2ZW50cy4KKyAqCisgKiBFbWl0cyBhICd3b3JrdHJlZScgZXZlbnQgZm9yIHRoaXMgcmVwbyBpbnN0YW5jZS4KKyAqCisgKiBSZWdpb24gYW5kIGRhdGEgbWVzc2FnZXMgbWF5IHJlZmVyIHRvIHRoaXMgcmVwby1pZC4KKyAqCisgKiBUaGUgbWFpbi90b3AtbGV2ZWwgcmVwb3NpdG9yeSB3aWxsIGhhdmUgcmVwby1pZCB2YWx1ZSAxIChha2EgInIxIikuCisgKgorICogVGhlIHJlcG8taWQgZmllbGQgaXMgaW4gYW50aWNpcGF0aW9uIG9mIGZ1dHVyZSBpbi1wcm9jIHN1Ym1vZHVsZQorICogcmVwb3NpdG9yaWVzLgorICovCit2b2lkIHRyYWNlMl9kZWZfcmVwb19mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8pOworCisjZGVmaW5lIHRyYWNlMl9kZWZfcmVwbyhyZXBvKSB0cmFjZTJfZGVmX3JlcG9fZmwoX19GSUxFX18sIF9fTElORV9fLCByZXBvKQorCisvKioKKyAqIEVtaXQgYSAncmVnaW9uX2VudGVyJyBldmVudCBmb3IgPGNhdGVnb3J5Pi48bGFiZWw+IHdpdGggb3B0aW9uYWwKKyAqIHJlcG8taWQgYW5kIHByaW50ZiBtZXNzYWdlLgorICoKKyAqIFRoaXMgZnVuY3Rpb24gcHVzaGVzIGEgbmV3IHJlZ2lvbiBuZXN0aW5nIHN0YWNrIGxldmVsIG9uIHRoZSBjdXJyZW50CisgKiB0aHJlYWQgYW5kIHN0YXJ0cyBhIGNsb2NrIGZvciB0aGUgbmV3IHN0YWNrIGZyYW1lLgorICoKKyAqIFRoZSBgY2F0ZWdvcnlgIGZpZWxkIGlzIGFuIGFyYml0cmFyeSBjYXRlZ29yeSBuYW1lIHVzZWQgdG8gY2xhc3NpZnkKKyAqIHJlZ2lvbnMgYnkgZmVhdHVyZSBhcmVhLCBzdWNoIGFzICJzdGF0dXMiIG9yICJpbmRleCIuICBBdCB0aGlzIHRpbWUKKyAqIGl0IGlzIG9ubHkganVzdCBwcmludGVkIGFsb25nIHdpdGggdGhlIHJlc3Qgb2YgdGhlIG1lc3NhZ2UuICBJdCBtYXkKKyAqIGJlIHVzZWQgaW4gdGhlIGZ1dHVyZSB0byBmaWx0ZXIgbWVzc2FnZXMuCisgKgorICogVGhlIGBsYWJlbGAgZmllbGQgaXMgYW4gYXJiaXRyYXJ5IGxhYmVsIHVzZWQgdG8gZGVzY3JpYmUgdGhlIGFjdGl2aXR5CisgKiBiZWluZyBzdGFydGVkLCBzdWNoIGFzICJyZWFkX3JlY3Vyc2l2ZSIgb3IgImRvX3JlYWRfaW5kZXgiLgorICoKKyAqIFRoZSBgcmVwb2AgZmllbGQsIGlmIHNldCwgd2lsbCBiZSB1c2VkIHRvIGdldCB0aGUgInJlcG8taWQiLCBzbyB0aGF0CisgKiByZWN1cnNpdmUgb2VyYXRpb25zIGNhbiBiZSBhdHRyaWJ1dGVkIHRvIHRoZSBjb3JyZWN0IHJlcG9zaXRvcnkuCisgKi8KK3ZvaWQgdHJhY2UyX3JlZ2lvbl9lbnRlcl9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqY2F0ZWdvcnksCisJCQkgICAgY29uc3QgY2hhciAqbGFiZWwsIGNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLCAuLi4pOworCisjZGVmaW5lIHRyYWNlMl9yZWdpb25fZW50ZXIoY2F0ZWdvcnksIGxhYmVsLCByZXBvKSBcCisJdHJhY2UyX3JlZ2lvbl9lbnRlcl9mbChfX0ZJTEVfXywgX19MSU5FX18sIChjYXRlZ29yeSksIChsYWJlbCksIChyZXBvKSkKKwordm9pZCB0cmFjZTJfcmVnaW9uX2VudGVyX3ByaW50Zl92YV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCQkgICAgICBjb25zdCBjaGFyICpjYXRlZ29yeSwgY29uc3QgY2hhciAqbGFiZWwsCisJCQkJICAgICAgY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkJICAgICAgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFwKTsKKworI2RlZmluZSB0cmFjZTJfcmVnaW9uX2VudGVyX3ByaW50Zl92YShjYXRlZ29yeSwgbGFiZWwsIHJlcG8sIGZtdCwgYXApICAgIFwKKwl0cmFjZTJfcmVnaW9uX2VudGVyX3ByaW50Zl92YV9mbChfX0ZJTEVfXywgX19MSU5FX18sIChjYXRlZ29yeSksIFwKKwkJCQkJIChsYWJlbCksIChyZXBvKSwgKGZtdCksIChhcCkpCisKK3ZvaWQgdHJhY2UyX3JlZ2lvbl9lbnRlcl9wcmludGZfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkJICAgY29uc3QgY2hhciAqY2F0ZWdvcnksIGNvbnN0IGNoYXIgKmxhYmVsLAorCQkJCSAgIGNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkJCSAgIGNvbnN0IGNoYXIgKmZtdCwgLi4uKTsKKworI2lmZGVmIEhBVkVfVkFSSUFESUNfTUFDUk9TCisjZGVmaW5lIHRyYWNlMl9yZWdpb25fZW50ZXJfcHJpbnRmKGNhdGVnb3J5LCBsYWJlbCwgcmVwbywgLi4uKSAgICAgICAgICAgICAgICAgXAorCXRyYWNlMl9yZWdpb25fZW50ZXJfcHJpbnRmX2ZsKF9fRklMRV9fLCBfX0xJTkVfXywgKGNhdGVnb3J5KSwgKGxhYmVsKSwgXAorCQkJCSAgICAgIChyZXBvKSwgX19WQV9BUkdTX18pCisjZWxzZQorLyogY2xhbmctZm9ybWF0IG9mZiAqLworX19hdHRyaWJ1dGVfXygoZm9ybWF0IChyZWdpb25fZW50ZXJfcHJpbnRmLCA0LCA1KSkpCit2b2lkIHRyYWNlMl9yZWdpb25fZW50ZXJfcHJpbnRmKGNvbnN0IGNoYXIgKmNhdGVnb3J5LCBjb25zdCBjaGFyICpsYWJlbCwKKwkJCQljb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgY29uc3QgY2hhciAqZm10LAorCQkJCS4uLik7CisvKiBjbGFuZy1mb3JtYXQgb24gKi8KKyNlbmRpZgorCisvKioKKyAqIEVtaXQgYSAncmVnaW9uX2xlYXZlJyBldmVudCBmb3IgPGNhdGVnb3J5Pi48bGFiZWw+IHdpdGggb3B0aW9uYWwKKyAqIHJlcG8taWQgYW5kIHByaW50ZiBtZXNzYWdlLgorICoKKyAqIExlYXZlIGN1cnJlbnQgbmVzdGluZyBsZXZlbCBhbmQgcmVwb3J0IHRoZSBlbGFwc2VkIHRpbWUgc3BlbnQKKyAqIGluIHRoaXMgbmVzdGluZyBsZXZlbC4KKyAqCisgKiBUaGUgYGNhdGVnb3J5YCwgYGxhYmVsYCwgYW5kIGByZXBvYCBmaWVsZHMgYXJlIHRoZSBzYW1lIGFzCisgKiB0cmFjZTJfcmVnaW9uX2VudGVyX2ZsLiBUaGUgYGNhdGVnb3J5YCBhbmQgYGxhYmVsYCBkbyBub3QKKyAqIG5lZWQgdG8gbWF0Y2ggdGhlIGNvcnJlc3BvbmRpbmcgInJlZ2lvbl9lbnRlciIgbWVzc2FnZSwKKyAqIGJ1dCBpdCBtYWtlcyB0aGUgZGF0YSBzdHJlYW0gZWFzaWVyIHRvIHVuZGVyc3RhbmQuCisgKi8KK3ZvaWQgdHJhY2UyX3JlZ2lvbl9sZWF2ZV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqY2F0ZWdvcnksCisJCQkgICAgY29uc3QgY2hhciAqbGFiZWwsIGNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLCAuLi4pOworCisjZGVmaW5lIHRyYWNlMl9yZWdpb25fbGVhdmUoY2F0ZWdvcnksIGxhYmVsLCByZXBvKSBcCisJdHJhY2UyX3JlZ2lvbl9sZWF2ZV9mbChfX0ZJTEVfXywgX19MSU5FX18sIChjYXRlZ29yeSksIChsYWJlbCksIChyZXBvKSkKKwordm9pZCB0cmFjZTJfcmVnaW9uX2xlYXZlX3ByaW50Zl92YV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCQkgICAgICBjb25zdCBjaGFyICpjYXRlZ29yeSwgY29uc3QgY2hhciAqbGFiZWwsCisJCQkJICAgICAgY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkJICAgICAgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFwKTsKKworI2RlZmluZSB0cmFjZTJfcmVnaW9uX2xlYXZlX3ByaW50Zl92YShjYXRlZ29yeSwgbGFiZWwsIHJlcG8sIGZtdCwgYXApICAgIFwKKwl0cmFjZTJfcmVnaW9uX2xlYXZlX3ByaW50Zl92YV9mbChfX0ZJTEVfXywgX19MSU5FX18sIChjYXRlZ29yeSksIFwKKwkJCQkJIChsYWJlbCksIChyZXBvKSwgKGZtdCksIChhcCkpCisKK3ZvaWQgdHJhY2UyX3JlZ2lvbl9sZWF2ZV9wcmludGZfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkJICAgY29uc3QgY2hhciAqY2F0ZWdvcnksIGNvbnN0IGNoYXIgKmxhYmVsLAorCQkJCSAgIGNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkJCSAgIGNvbnN0IGNoYXIgKmZtdCwgLi4uKTsKKworI2lmZGVmIEhBVkVfVkFSSUFESUNfTUFDUk9TCisjZGVmaW5lIHRyYWNlMl9yZWdpb25fbGVhdmVfcHJpbnRmKGNhdGVnb3J5LCBsYWJlbCwgcmVwbywgLi4uKSAgICAgICAgICAgICAgICAgXAorCXRyYWNlMl9yZWdpb25fbGVhdmVfcHJpbnRmX2ZsKF9fRklMRV9fLCBfX0xJTkVfXywgKGNhdGVnb3J5KSwgKGxhYmVsKSwgXAorCQkJCSAgICAgIChyZXBvKSwgX19WQV9BUkdTX18pCisjZWxzZQorLyogY2xhbmctZm9ybWF0IG9mZiAqLworX19hdHRyaWJ1dGVfXygoZm9ybWF0IChyZWdpb25fbGVhdmVfcHJpbnRmLCA0LCA1KSkpCit2b2lkIHRyYWNlMl9yZWdpb25fbGVhdmVfcHJpbnRmKGNvbnN0IGNoYXIgKmNhdGVnb3J5LCBjb25zdCBjaGFyICpsYWJlbCwKKwkJCQljb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgY29uc3QgY2hhciAqZm10LAorCQkJCS4uLik7CisvKiBjbGFuZy1mb3JtYXQgb24gKi8KKyNlbmRpZgorCisvKioKKyAqIEVtaXQgYSBrZXktdmFsdWUgcGFpciAnZGF0YScgZXZlbnQgb2YgdGhlIGZvcm0gPGNhdGVnb3J5Pi48a2V5PiA9IDx2YWx1ZT4uCisgKiBUaGlzIGV2ZW50IGltcGxpY2l0bHkgY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgdGhyZWFkLCBuZXN0aW5nIHJlZ2lvbiwKKyAqIGFuZCBvcHRpb25hbCByZXBvLWlkLgorICogVGhpcyBjb3VsZCBiZSB1c2VkIHRvIHByaW50IHRoZSBudW1iZXIgb2YgZmlsZXMgaW4gYSBkaXJlY3RvcnkgZHVyaW5nCisgKiBhIG11bHRpLXRocmVhZGVkIHJlY3Vyc2l2ZSB0cmVlIHdhbGsuCisgKgorICogT24gZXZlbnQtYmFzZWQgVFJBQ0UyIHRhcmdldHMsIHRoaXMgZ2VuZXJhdGVzIGEgJ2RhdGEnIGV2ZW50IHN1aXRhYmxlCisgKiBmb3IgcG9zdC1wcm9jZXNzaW5nLiAgT24gcHJpbnRmLWJhc2VkIFRSQUNFMiB0YXJnZXRzLCB0aGlzIGlzIGNvbnZlcnRlZAorICogaW50byBhIGZpeGVkLWZvcm1hdCBwcmludGYgbWVzc2FnZS4KKyAqLwordm9pZCB0cmFjZTJfZGF0YV9zdHJpbmdfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmNhdGVnb3J5LAorCQkJICAgY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIGNvbnN0IGNoYXIgKmtleSwKKwkJCSAgIGNvbnN0IGNoYXIgKnZhbHVlKTsKKworI2RlZmluZSB0cmFjZTJfZGF0YV9zdHJpbmcoY2F0ZWdvcnksIHJlcG8sIGtleSwgdmFsdWUpICAgICAgICAgICAgICAgICAgICAgICBcCisJdHJhY2UyX2RhdGFfc3RyaW5nX2ZsKF9fRklMRV9fLCBfX0xJTkVfXywgKGNhdGVnb3J5KSwgKHJlcG8pLCAoa2V5KSwgXAorCQkJICAgICAgKHZhbHVlKSkKKwordm9pZCB0cmFjZTJfZGF0YV9pbnRtYXhfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmNhdGVnb3J5LAorCQkJICAgY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIGNvbnN0IGNoYXIgKmtleSwKKwkJCSAgIGludG1heF90IHZhbHVlKTsKKworI2RlZmluZSB0cmFjZTJfZGF0YV9pbnRtYXgoY2F0ZWdvcnksIHJlcG8sIGtleSwgdmFsdWUpICAgICAgICAgICAgICAgICAgICAgICBcCisJdHJhY2UyX2RhdGFfaW50bWF4X2ZsKF9fRklMRV9fLCBfX0xJTkVfXywgKGNhdGVnb3J5KSwgKHJlcG8pLCAoa2V5KSwgXAorCQkJICAgICAgKHZhbHVlKSkKKwordm9pZCB0cmFjZTJfZGF0YV9qc29uX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyICpjYXRlZ29yeSwKKwkJCSBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgY29uc3QgY2hhciAqa2V5LAorCQkJIGNvbnN0IHN0cnVjdCBqc29uX3dyaXRlciAqancpOworCisjZGVmaW5lIHRyYWNlMl9kYXRhX2pzb24oY2F0ZWdvcnksIHJlcG8sIGtleSwgdmFsdWUpICAgICAgICAgICAgICAgICAgICAgICBcCisJdHJhY2UyX2RhdGFfanNvbl9mbChfX0ZJTEVfXywgX19MSU5FX18sIChjYXRlZ29yeSksIChyZXBvKSwgKGtleSksIFwKKwkJCSAgICAodmFsdWUpKQorCisvKgorICogRW1pdCBhICdwcmludGYnIGV2ZW50LgorICoKKyAqIFdyaXRlIGFuIGFyYml0cmFyeSBmb3JtYXR0ZWQgbWVzc2FnZSB0byB0aGUgVFJBQ0UyIHRhcmdldHMuICBUaGVzZQorICogdGV4dCBtZXNzYWdlcyBzaG91bGQgYmUgY29uc2lkZXJlZCBhcyBodW1hbi1yZWFkYWJsZSBzdHJpbmdzIHdpdGhvdXQKKyAqIGFueSBmb3JtYXR0aW5nIGd1aWRlbGluZXMuICBQb3N0LXByb2Nlc3NvcnMgbWF5IGNob29zZSB0byBpZ25vcmUKKyAqIHRoZW0uCisgKi8KK3ZvaWQgdHJhY2UyX3ByaW50Zl92YV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqZm10LAorCQkJIHZhX2xpc3QgYXApOworCisjZGVmaW5lIHRyYWNlMl9wcmludGZfdmEoZm10LCBhcCkgXAorCXRyYWNlMl9wcmludGZfdmFfZmwoX19GSUxFX18sIF9fTElORV9fLCAoZm10KSwgKGFwKSkKKwordm9pZCB0cmFjZTJfcHJpbnRmX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyICpmbXQsIC4uLik7CisKKyNpZmRlZiBIQVZFX1ZBUklBRElDX01BQ1JPUworI2RlZmluZSB0cmFjZTJfcHJpbnRmKC4uLikgdHJhY2UyX3ByaW50Zl9mbChfX0ZJTEVfXywgX19MSU5FX18sIF9fVkFfQVJHU19fKQorI2Vsc2UKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KK19fYXR0cmlidXRlX18oKGZvcm1hdCAocHJpbnRmLCAxLCAyKSkpCit2b2lkIHRyYWNlMl9wcmludGYoY29uc3QgY2hhciAqZm10LCAuLi4pOworLyogY2xhbmctZm9ybWF0IG9uICovCisjZW5kaWYKKworLyoKKyAqIE9wdGlvbmFsIHBsYXRmb3JtLXNwZWNpZmljIGNvZGUgdG8gZHVtcCBpbmZvcm1hdGlvbiBhYm91dCB0aGUKKyAqIGN1cnJlbnQgYW5kIGFueSBwYXJlbnQgcHJvY2VzcyhlcykuICBUaGlzIGlzIGludGVuZGVkIHRvIGFsbG93CisgKiBwb3N0LXByb2Nlc3NvcnMgdG8ga25vdyB3aG8gc3Bhd25lZCB0aGlzIGdpdCBpbnN0YW5jZSBhbmQgYW55dGhpbmcKKyAqIGVsc2UgdGhhdCB0aGUgcGxhdGZvcm0gbWF5IGJlIGFibGUgdG8gdGVsbCB1cyBhYm91dCB0aGUgY3VycmVudCBwcm9jZXNzLgorICovCisKK2VudW0gdHJhY2UyX3Byb2Nlc3NfaW5mb19yZWFzb24geworCVRSQUNFMl9QUk9DRVNTX0lORk9fU1RBUlRVUCwKKwlUUkFDRTJfUFJPQ0VTU19JTkZPX0VYSVQsCit9OworCisjaWYgZGVmaW5lZChHSVRfV0lORE9XU19OQVRJVkUpCit2b2lkIHRyYWNlMl9jb2xsZWN0X3Byb2Nlc3NfaW5mbyhlbnVtIHRyYWNlMl9wcm9jZXNzX2luZm9fcmVhc29uIHJlYXNvbik7CisjZWxzZQorI2RlZmluZSB0cmFjZTJfY29sbGVjdF9wcm9jZXNzX2luZm8ocmVhc29uKSBcCisJZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorCX0gd2hpbGUgKDApCisjZW5kaWYKKworI2VuZGlmIC8qIFRSQUNFMl9IICovCmRpZmYgLS1naXQgYS90cmFjZTIvdHIyX2NmZy5jIGIvdHJhY2UyL3RyMl9jZmcuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYWE3ZjA2Ci0tLSAvZGV2L251bGwKKysrIGIvdHJhY2UyL3RyMl9jZmcuYwpAQCAtMCwwICsxLDg5IEBACisjaW5jbHVkZSAiY2FjaGUuaCIKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJ0cmFjZTIvdHIyX2NmZy5oIgorI2luY2x1ZGUgInRyYWNlMi90cjJfc3lzZW52LmgiCisKK3N0YXRpYyBzdHJ1Y3Qgc3RyYnVmICoqdHIyX2NmZ19wYXR0ZXJuczsKK3N0YXRpYyBpbnQgdHIyX2NmZ19jb3VudF9wYXR0ZXJuczsKK3N0YXRpYyBpbnQgdHIyX2NmZ19sb2FkZWQ7CisKKy8qCisgKiBQYXJzZSBhIHN0cmluZyBjb250YWluaW5nIGEgY29tbWEtZGVsaW1pdGVkIGxpc3Qgb2YgY29uZmlnIGtleXMKKyAqIG9yIHdpbGRjYXJkIHBhdHRlcm5zIGludG8gYSBsaXN0IG9mIHN0cmJ1ZnMuCisgKi8KK3N0YXRpYyBpbnQgdHIyX2NmZ19sb2FkX3BhdHRlcm5zKHZvaWQpCit7CisJc3RydWN0IHN0cmJ1ZiAqKnM7CisJY29uc3QgY2hhciAqZW52dmFyOworCisJaWYgKHRyMl9jZmdfbG9hZGVkKQorCQlyZXR1cm4gdHIyX2NmZ19jb3VudF9wYXR0ZXJuczsKKwl0cjJfY2ZnX2xvYWRlZCA9IDE7CisKKwllbnZ2YXIgPSB0cjJfc3lzZW52X2dldChUUjJfU1lTRU5WX0NGR19QQVJBTSk7CisJaWYgKCFlbnZ2YXIgfHwgISplbnZ2YXIpCisJCXJldHVybiB0cjJfY2ZnX2NvdW50X3BhdHRlcm5zOworCisJdHIyX2NmZ19wYXR0ZXJucyA9IHN0cmJ1Zl9zcGxpdF9idWYoZW52dmFyLCBzdHJsZW4oZW52dmFyKSwgJywnLCAtMSk7CisJZm9yIChzID0gdHIyX2NmZ19wYXR0ZXJuczsgKnM7IHMrKykgeworCQlzdHJ1Y3Qgc3RyYnVmICpidWYgPSAqczsKKworCQlpZiAoYnVmLT5sZW4gJiYgYnVmLT5idWZbYnVmLT5sZW4gLSAxXSA9PSAnLCcpCisJCQlzdHJidWZfc2V0bGVuKGJ1ZiwgYnVmLT5sZW4gLSAxKTsKKwkJc3RyYnVmX3RyaW1fdHJhaWxpbmdfbmV3bGluZSgqcyk7CisJCXN0cmJ1Zl90cmltKCpzKTsKKwl9CisKKwl0cjJfY2ZnX2NvdW50X3BhdHRlcm5zID0gcyAtIHRyMl9jZmdfcGF0dGVybnM7CisJcmV0dXJuIHRyMl9jZmdfY291bnRfcGF0dGVybnM7Cit9CisKK3ZvaWQgdHIyX2NmZ19mcmVlX3BhdHRlcm5zKHZvaWQpCit7CisJaWYgKHRyMl9jZmdfcGF0dGVybnMpCisJCXN0cmJ1Zl9saXN0X2ZyZWUodHIyX2NmZ19wYXR0ZXJucyk7CisJdHIyX2NmZ19jb3VudF9wYXR0ZXJucyA9IDA7CisJdHIyX2NmZ19sb2FkZWQgPSAwOworfQorCitzdHJ1Y3QgdHIyX2NmZ19kYXRhIHsKKwljb25zdCBjaGFyICpmaWxlOworCWludCBsaW5lOworfTsKKworLyoKKyAqIFNlZSBpZiB0aGUgZ2l2ZW4gY29uZmlnIGtleSBtYXRjaGVzIGFueSBvZiBvdXIgcGF0dGVybnMgb2YgaW50ZXJlc3QuCisgKi8KK3N0YXRpYyBpbnQgdHIyX2NmZ19jYihjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKnZhbHVlLCB2b2lkICpkKQoreworCXN0cnVjdCBzdHJidWYgKipzOworCXN0cnVjdCB0cjJfY2ZnX2RhdGEgKmRhdGEgPSAoc3RydWN0IHRyMl9jZmdfZGF0YSAqKWQ7CisKKwlmb3IgKHMgPSB0cjJfY2ZnX3BhdHRlcm5zOyAqczsgcysrKSB7CisJCXN0cnVjdCBzdHJidWYgKmJ1ZiA9ICpzOworCQlpbnQgd20gPSB3aWxkbWF0Y2goYnVmLT5idWYsIGtleSwgV01fQ0FTRUZPTEQpOworCQlpZiAod20gPT0gV01fTUFUQ0gpIHsKKwkJCXRyYWNlMl9kZWZfcGFyYW1fZmwoZGF0YS0+ZmlsZSwgZGF0YS0+bGluZSwga2V5LCB2YWx1ZSk7CisJCQlyZXR1cm4gMDsKKwkJfQorCX0KKworCXJldHVybiAwOworfQorCit2b2lkIHRyMl9jZmdfbGlzdF9jb25maWdfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUpCit7CisJc3RydWN0IHRyMl9jZmdfZGF0YSBkYXRhID0geyBmaWxlLCBsaW5lIH07CisKKwlpZiAodHIyX2NmZ19sb2FkX3BhdHRlcm5zKCkgPiAwKQorCQlyZWFkX2Vhcmx5X2NvbmZpZyh0cjJfY2ZnX2NiLCAmZGF0YSk7Cit9CisKK3ZvaWQgdHIyX2NmZ19zZXRfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmtleSwKKwkJICAgIGNvbnN0IGNoYXIgKnZhbHVlKQoreworCXN0cnVjdCB0cjJfY2ZnX2RhdGEgZGF0YSA9IHsgZmlsZSwgbGluZSB9OworCisJaWYgKHRyMl9jZmdfbG9hZF9wYXR0ZXJucygpID4gMCkKKwkJdHIyX2NmZ19jYihrZXksIHZhbHVlLCAmZGF0YSk7Cit9CmRpZmYgLS1naXQgYS90cmFjZTIvdHIyX2NmZy5oIGIvdHJhY2UyL3RyMl9jZmcuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kOWM5OGY2Ci0tLSAvZGV2L251bGwKKysrIGIvdHJhY2UyL3RyMl9jZmcuaApAQCAtMCwwICsxLDE5IEBACisjaWZuZGVmIFRSMl9DRkdfSAorI2RlZmluZSBUUjJfQ0ZHX0gKKworLyoKKyAqIEl0ZXJhdGUgb3ZlciBhbGwgY29uZmlnIHNldHRpbmdzIGFuZCBlbWl0ICdkZWZfcGFyYW0nIGV2ZW50cyBmb3IgdGhlCisgKiAiaW50ZXJlc3RpbmciIG9uZXMgdG8gVFJBQ0UyLgorICovCit2b2lkIHRyMl9jZmdfbGlzdF9jb25maWdfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUpOworCisvKgorICogRW1pdCBhICJkZWZfcGFyYW0iIGV2ZW50IGZvciB0aGUgZ2l2ZW4ga2V5L3ZhbHVlIHBhaXIgSUYgd2UgY29uc2lkZXIKKyAqIHRoZSBrZXkgdG8gYmUgImludGVyZXN0aW5nIi4KKyAqLwordm9pZCB0cjJfY2ZnX3NldF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqa2V5LAorCQkgICAgY29uc3QgY2hhciAqdmFsdWUpOworCit2b2lkIHRyMl9jZmdfZnJlZV9wYXR0ZXJucyh2b2lkKTsKKworI2VuZGlmIC8qIFRSMl9DRkdfSCAqLwpkaWZmIC0tZ2l0IGEvdHJhY2UyL3RyMl9jbWRfbmFtZS5jIGIvdHJhY2UyL3RyMl9jbWRfbmFtZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRkMzEzMjAKLS0tIC9kZXYvbnVsbAorKysgYi90cmFjZTIvdHIyX2NtZF9uYW1lLmMKQEAgLTAsMCArMSwzMCBAQAorI2luY2x1ZGUgImNhY2hlLmgiCisjaW5jbHVkZSAidHJhY2UyL3RyMl9jbWRfbmFtZS5oIgorCisjZGVmaW5lIFRSMl9FTlZWQVJfUEFSRU5UX05BTUUgIkdJVF9UUkFDRTJfUEFSRU5UX05BTUUiCisKK3N0YXRpYyBzdHJ1Y3Qgc3RyYnVmIHRyMmNtZG5hbWVfaGllcmFyY2h5ID0gU1RSQlVGX0lOSVQ7CisKK3ZvaWQgdHIyX2NtZF9uYW1lX2FwcGVuZF9oaWVyYXJjaHkoY29uc3QgY2hhciAqbmFtZSkKK3sKKwljb25zdCBjaGFyICpwYXJlbnRfbmFtZSA9IGdldGVudihUUjJfRU5WVkFSX1BBUkVOVF9OQU1FKTsKKworCXN0cmJ1Zl9yZXNldCgmdHIyY21kbmFtZV9oaWVyYXJjaHkpOworCWlmIChwYXJlbnRfbmFtZSAmJiAqcGFyZW50X25hbWUpIHsKKwkJc3RyYnVmX2FkZHN0cigmdHIyY21kbmFtZV9oaWVyYXJjaHksIHBhcmVudF9uYW1lKTsKKwkJc3RyYnVmX2FkZGNoKCZ0cjJjbWRuYW1lX2hpZXJhcmNoeSwgJy8nKTsKKwl9CisJc3RyYnVmX2FkZHN0cigmdHIyY21kbmFtZV9oaWVyYXJjaHksIG5hbWUpOworCisJc2V0ZW52KFRSMl9FTlZWQVJfUEFSRU5UX05BTUUsIHRyMmNtZG5hbWVfaGllcmFyY2h5LmJ1ZiwgMSk7Cit9CisKK2NvbnN0IGNoYXIgKnRyMl9jbWRfbmFtZV9nZXRfaGllcmFyY2h5KHZvaWQpCit7CisJcmV0dXJuIHRyMmNtZG5hbWVfaGllcmFyY2h5LmJ1ZjsKK30KKwordm9pZCB0cjJfY21kX25hbWVfcmVsZWFzZSh2b2lkKQoreworCXN0cmJ1Zl9yZWxlYXNlKCZ0cjJjbWRuYW1lX2hpZXJhcmNoeSk7Cit9CmRpZmYgLS1naXQgYS90cmFjZTIvdHIyX2NtZF9uYW1lLmggYi90cmFjZTIvdHIyX2NtZF9uYW1lLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWI3MGI2NwotLS0gL2Rldi9udWxsCisrKyBiL3RyYWNlMi90cjJfY21kX25hbWUuaApAQCAtMCwwICsxLDI0IEBACisjaWZuZGVmIFRSMl9DTURfTkFNRV9ICisjZGVmaW5lIFRSMl9DTURfTkFNRV9ICisKKy8qCisgKiBBcHBlbmQgdGhlIGN1cnJlbnQgY29tbWFuZCBuYW1lIHRvIHRoZSBsaXN0IGJlaW5nIG1haW50YWluZWQKKyAqIGluIHRoZSBlbnZpcm9ubWVudC4KKyAqCisgKiBUaGUgaGllcmFyY2h5IGZvciBhIHRvcC1sZXZlbCBnaXQgY29tbWFuZCBpcyBqdXN0IHRoZSBjdXJyZW50CisgKiBjb21tYW5kIG5hbWUuICBGb3IgYSBjaGlsZCBnaXQgcHJvY2VzcywgdGhlIGhpZXJhcmNoeSBpbmNsdWRlcyB0aGUKKyAqIG5hbWVzIG9mIHRoZSBwYXJlbnQgcHJvY2Vzc2VzLgorICoKKyAqIFRoZSBoaWVyYXJjaHkgZm9yIHRoZSBjdXJyZW50IHByb2Nlc3Mgd2lsbCBiZSBleHBvcnRlZCB0byB0aGUKKyAqIGVudmlyb25tZW50IGFuZCBpbmhlcml0ZWQgYnkgY2hpbGQgcHJvY2Vzc2VzLgorICovCit2b2lkIHRyMl9jbWRfbmFtZV9hcHBlbmRfaGllcmFyY2h5KGNvbnN0IGNoYXIgKm5hbWUpOworCisvKgorICogR2V0IHRoZSBjb21tYW5kIG5hbWUgaGllcmFyY2h5IGZvciB0aGUgY3VycmVudCBwcm9jZXNzLgorICovCitjb25zdCBjaGFyICp0cjJfY21kX25hbWVfZ2V0X2hpZXJhcmNoeSh2b2lkKTsKKwordm9pZCB0cjJfY21kX25hbWVfcmVsZWFzZSh2b2lkKTsKKworI2VuZGlmIC8qIFRSMl9DTURfTkFNRV9IICovCmRpZmYgLS1naXQgYS90cmFjZTIvdHIyX2RzdC5jIGIvdHJhY2UyL3RyMl9kc3QuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZTA1MmEwCi0tLSAvZGV2L251bGwKKysrIGIvdHJhY2UyL3RyMl9kc3QuYwpAQCAtMCwwICsxLDM5MSBAQAorI2luY2x1ZGUgImNhY2hlLmgiCisjaW5jbHVkZSAidHJhY2UyL3RyMl9kc3QuaCIKKyNpbmNsdWRlICJ0cmFjZTIvdHIyX3NpZC5oIgorI2luY2x1ZGUgInRyYWNlMi90cjJfc3lzZW52LmgiCisKKy8qCisgKiBIb3cgbWFueSBhdHRlbXB0cyB3ZSB3aWxsIG1ha2UgYXQgY3JlYXRpbmcgYW4gYXV0b21hdGljYWxseS1uYW1lZCB0cmFjZSBmaWxlLgorICovCisjZGVmaW5lIE1BWF9BVVRPX0FUVEVNUFRTIDEwCisKKy8qCisgKiBTZW50aW5lbCBmaWxlIHVzZWQgdG8gZGV0ZWN0IHdoZW4gd2Ugc2hvdWxkIGRpc2NhcmQgbmV3IHRyYWNlcyB0byBhdm9pZAorICogd3JpdGluZyB0b28gbWFueSB0cmFjZSBmaWxlcyB0byBhIGRpcmVjdG9yeS4KKyAqLworI2RlZmluZSBESVNDQVJEX1NFTlRJTkVMX05BTUUgImdpdC10cmFjZTItZGlzY2FyZCIKKworLyoKKyAqIFdoZW4gc2V0IHRvIHplcm8sIGRpc2FibGVzIGRpcmVjdG9yeSBmaWxlIGNvdW50IGNoZWNrcy4gT3RoZXJ3aXNlLCBjb250cm9scworICogaG93IG1hbnkgZmlsZXMgd2UgY2FuIHdyaXRlIHRvIGEgZGlyZWN0b3J5IGJlZm9yZSBlbnRlcmluZyBkaXNjYXJkIG1vZGUuCisgKiBUaGlzIGNhbiBiZSBvdmVycmlkZGVuIHZpYSB0aGUgVFIyX1NZU0VOVl9NQVhfRklMRVMgc2V0dGluZy4KKyAqLworc3RhdGljIGludCB0cjJlbnZfbWF4X2ZpbGVzID0gMDsKKworc3RhdGljIGludCB0cjJfZHN0X3dhbnRfd2FybmluZyh2b2lkKQoreworCXN0YXRpYyBpbnQgdHIyZW52X2RzdF9kZWJ1ZyA9IC0xOworCisJaWYgKHRyMmVudl9kc3RfZGVidWcgPT0gLTEpIHsKKwkJY29uc3QgY2hhciAqZW52X3ZhbHVlID0gdHIyX3N5c2Vudl9nZXQoVFIyX1NZU0VOVl9EU1RfREVCVUcpOworCQlpZiAoIWVudl92YWx1ZSB8fCAhKmVudl92YWx1ZSkKKwkJCXRyMmVudl9kc3RfZGVidWcgPSAwOworCQllbHNlCisJCQl0cjJlbnZfZHN0X2RlYnVnID0gYXRvaShlbnZfdmFsdWUpID4gMDsKKwl9CisKKwlyZXR1cm4gdHIyZW52X2RzdF9kZWJ1ZzsKK30KKwordm9pZCB0cjJfZHN0X3RyYWNlX2Rpc2FibGUoc3RydWN0IHRyMl9kc3QgKmRzdCkKK3sKKwlpZiAoZHN0LT5uZWVkX2Nsb3NlKQorCQljbG9zZShkc3QtPmZkKTsKKwlkc3QtPmZkID0gMDsKKwlkc3QtPmluaXRpYWxpemVkID0gMTsKKwlkc3QtPm5lZWRfY2xvc2UgPSAwOworfQorCisvKgorICogQ2hlY2sgdG8gbWFrZSBzdXJlIHdlJ3JlIG5vdCBvdmVybG9hZGluZyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSB3aXRoIHRvbyBtYW55CisgKiBmaWxlcy4gRmlyc3QgZ2V0IHRoZSB0aHJlc2hvbGQgKGlmIHByZXNlbnQpIGZyb20gdGhlIGNvbmZpZyBvciBlbnZ2YXIuIElmCisgKiBpdCdzIHplcm8gb3IgdW5zZXQsIGRpc2FibGUgdGhpcyBjaGVjay4gTmV4dCBjaGVjayBmb3IgdGhlIHByZXNlbmNlIG9mIGEKKyAqIHNlbnRpbmVsIGZpbGUsIHRoZW4gY2hlY2sgZmlsZSBjb3VudC4KKyAqCisgKiBSZXR1cm5zIDAgaWYgdHJhY2luZyBzaG91bGQgcHJvY2VlZCBhcyBub3JtYWwuIFJldHVybnMgMSBpZiB0aGUgc2VudGluZWwgZmlsZQorICogYWxyZWFkeSBleGlzdHMsIHdoaWNoIG1lYW5zIHRyYWNpbmcgc2hvdWxkIGJlIGRpc2FibGVkLiBSZXR1cm5zIC0xIGlmIHRoZXJlCisgKiBhcmUgdG9vIG1hbnkgZmlsZXMgYnV0IHRoZXJlIHdhcyBubyBzZW50aW5lbCBmaWxlLCB3aGljaCBtZWFucyB3ZSBoYXZlCisgKiBjcmVhdGVkIGFuZCBzaG91bGQgd3JpdGUgdHJhY2VzIHRvIHRoZSBzZW50aW5lbCBmaWxlLgorICoKKyAqIFdlIGV4cGVjdCB0aGF0IHNvbWUgdHJhY2UgcHJvY2Vzc2luZyBzeXN0ZW0gaXMgZ3JhZHVhbGx5IGNvbGxlY3RpbmcgZmlsZXMKKyAqIGZyb20gdGhlIHRhcmdldCBkaXJlY3Rvcnk7IGFmdGVyIGl0IHJlbW92ZXMgdGhlIHNlbnRpbmVsIGZpbGUgd2UnbGwgc3RhcnQKKyAqIHdyaXRpbmcgdHJhY2VzIGFnYWluLgorICovCitzdGF0aWMgaW50IHRyMl9kc3RfdG9vX21hbnlfZmlsZXMoc3RydWN0IHRyMl9kc3QgKmRzdCwgY29uc3QgY2hhciAqdGd0X3ByZWZpeCkKK3sKKwlpbnQgZmlsZV9jb3VudCA9IDAsIG1heF9maWxlcyA9IDAsIHJldCA9IDA7CisJY29uc3QgY2hhciAqbWF4X2ZpbGVzX3ZhcjsKKwlESVIgKmRpcnA7CisJc3RydWN0IHN0cmJ1ZiBwYXRoID0gU1RSQlVGX0lOSVQsIHNlbnRpbmVsX3BhdGggPSBTVFJCVUZfSU5JVDsKKwlzdHJ1Y3Qgc3RhdCBzdGF0YnVmOworCisJLyogR2V0IHRoZSBjb25maWcgb3IgZW52dmFyIGFuZCBkZWNpZGUgaWYgd2Ugc2hvdWxkIGNvbnRpbnVlIHRoaXMgY2hlY2sgKi8KKwltYXhfZmlsZXNfdmFyID0gdHIyX3N5c2Vudl9nZXQoVFIyX1NZU0VOVl9NQVhfRklMRVMpOworCWlmIChtYXhfZmlsZXNfdmFyICYmICptYXhfZmlsZXNfdmFyICYmICgobWF4X2ZpbGVzID0gYXRvaShtYXhfZmlsZXNfdmFyKSkgPj0gMCkpCisJCXRyMmVudl9tYXhfZmlsZXMgPSBtYXhfZmlsZXM7CisKKwlpZiAoIXRyMmVudl9tYXhfZmlsZXMpIHsKKwkJcmV0ID0gMDsKKwkJZ290byBjbGVhbnVwOworCX0KKworCXN0cmJ1Zl9hZGRzdHIoJnBhdGgsIHRndF9wcmVmaXgpOworCWlmICghaXNfZGlyX3NlcChwYXRoLmJ1ZltwYXRoLmxlbiAtIDFdKSkgeworCQlzdHJidWZfYWRkY2goJnBhdGgsICcvJyk7CisJfQorCisJLyogY2hlY2sgc2VudGluZWwgKi8KKwlzdHJidWZfYWRkYnVmKCZzZW50aW5lbF9wYXRoLCAmcGF0aCk7CisJc3RyYnVmX2FkZHN0cigmc2VudGluZWxfcGF0aCwgRElTQ0FSRF9TRU5USU5FTF9OQU1FKTsKKwlpZiAoIXN0YXQoc2VudGluZWxfcGF0aC5idWYsICZzdGF0YnVmKSkgeworCQlyZXQgPSAxOworCQlnb3RvIGNsZWFudXA7CisJfQorCisJLyogY2hlY2sgZmlsZSBjb3VudCAqLworCWRpcnAgPSBvcGVuZGlyKHBhdGguYnVmKTsKKwl3aGlsZSAoZmlsZV9jb3VudCA8IHRyMmVudl9tYXhfZmlsZXMgJiYgZGlycCAmJiByZWFkZGlyKGRpcnApKQorCQlmaWxlX2NvdW50Kys7CisJaWYgKGRpcnApCisJCWNsb3NlZGlyKGRpcnApOworCisJaWYgKGZpbGVfY291bnQgPj0gdHIyZW52X21heF9maWxlcykgeworCQlkc3QtPnRvb19tYW55X2ZpbGVzID0gMTsKKwkJZHN0LT5mZCA9IG9wZW4oc2VudGluZWxfcGF0aC5idWYsIE9fV1JPTkxZIHwgT19DUkVBVCB8IE9fRVhDTCwgMDY2Nik7CisJCXJldCA9IC0xOworCQlnb3RvIGNsZWFudXA7CisJfQorCitjbGVhbnVwOgorCXN0cmJ1Zl9yZWxlYXNlKCZwYXRoKTsKKwlzdHJidWZfcmVsZWFzZSgmc2VudGluZWxfcGF0aCk7CisJcmV0dXJuIHJldDsKK30KKworc3RhdGljIGludCB0cjJfZHN0X3RyeV9hdXRvX3BhdGgoc3RydWN0IHRyMl9kc3QgKmRzdCwgY29uc3QgY2hhciAqdGd0X3ByZWZpeCkKK3sKKwlpbnQgdG9vX21hbnlfZmlsZXM7CisJY29uc3QgY2hhciAqbGFzdF9zbGFzaCwgKnNpZCA9IHRyMl9zaWRfZ2V0KCk7CisJc3RydWN0IHN0cmJ1ZiBwYXRoID0gU1RSQlVGX0lOSVQ7CisJc2l6ZV90IGJhc2VfcGF0aF9sZW47CisJdW5zaWduZWQgYXR0ZW1wdF9jb3VudDsKKworCWxhc3Rfc2xhc2ggPSBzdHJyY2hyKHNpZCwgJy8nKTsKKwlpZiAobGFzdF9zbGFzaCkKKwkJc2lkID0gbGFzdF9zbGFzaCArIDE7CisKKwlzdHJidWZfYWRkc3RyKCZwYXRoLCB0Z3RfcHJlZml4KTsKKwlpZiAoIWlzX2Rpcl9zZXAocGF0aC5idWZbcGF0aC5sZW4gLSAxXSkpCisJCXN0cmJ1Zl9hZGRjaCgmcGF0aCwgJy8nKTsKKwlzdHJidWZfYWRkc3RyKCZwYXRoLCBzaWQpOworCWJhc2VfcGF0aF9sZW4gPSBwYXRoLmxlbjsKKworCXRvb19tYW55X2ZpbGVzID0gdHIyX2RzdF90b29fbWFueV9maWxlcyhkc3QsIHRndF9wcmVmaXgpOworCWlmICghdG9vX21hbnlfZmlsZXMpIHsKKwkJZm9yIChhdHRlbXB0X2NvdW50ID0gMDsgYXR0ZW1wdF9jb3VudCA8IE1BWF9BVVRPX0FUVEVNUFRTOyBhdHRlbXB0X2NvdW50KyspIHsKKwkJCWlmIChhdHRlbXB0X2NvdW50ID4gMCkgeworCQkJCXN0cmJ1Zl9zZXRsZW4oJnBhdGgsIGJhc2VfcGF0aF9sZW4pOworCQkJCXN0cmJ1Zl9hZGRmKCZwYXRoLCAiLiVkIiwgYXR0ZW1wdF9jb3VudCk7CisJCQl9CisKKwkJCWRzdC0+ZmQgPSBvcGVuKHBhdGguYnVmLCBPX1dST05MWSB8IE9fQ1JFQVQgfCBPX0VYQ0wsIDA2NjYpOworCQkJaWYgKGRzdC0+ZmQgIT0gLTEpCisJCQkJYnJlYWs7CisJCX0KKwl9IGVsc2UgaWYgKHRvb19tYW55X2ZpbGVzID09IDEpIHsKKwkJc3RyYnVmX3JlbGVhc2UoJnBhdGgpOworCQlpZiAodHIyX2RzdF93YW50X3dhcm5pbmcoKSkKKwkJCXdhcm5pbmcoInRyYWNlMjogbm90IG9wZW5pbmcgJXMgdHJhY2UgZmlsZSBkdWUgdG8gdG9vICIKKwkJCQkibWFueSBmaWxlcyBpbiB0YXJnZXQgZGlyZWN0b3J5ICVzIiwKKwkJCQl0cjJfc3lzZW52X2Rpc3BsYXlfbmFtZShkc3QtPnN5c2Vudl92YXIpLAorCQkJCXRndF9wcmVmaXgpOworCQlyZXR1cm4gMDsKKwl9CisKKwlpZiAoZHN0LT5mZCA9PSAtMSkgeworCQlpZiAodHIyX2RzdF93YW50X3dhcm5pbmcoKSkKKwkJCXdhcm5pbmcoInRyYWNlMjogY291bGQgbm90IG9wZW4gJyUuKnMnIGZvciAnJXMnIHRyYWNpbmc6ICVzIiwKKwkJCQkoaW50KSBiYXNlX3BhdGhfbGVuLCBwYXRoLmJ1ZiwKKwkJCQl0cjJfc3lzZW52X2Rpc3BsYXlfbmFtZShkc3QtPnN5c2Vudl92YXIpLAorCQkJCXN0cmVycm9yKGVycm5vKSk7CisKKwkJdHIyX2RzdF90cmFjZV9kaXNhYmxlKGRzdCk7CisJCXN0cmJ1Zl9yZWxlYXNlKCZwYXRoKTsKKwkJcmV0dXJuIDA7CisJfQorCisJc3RyYnVmX3JlbGVhc2UoJnBhdGgpOworCisJZHN0LT5uZWVkX2Nsb3NlID0gMTsKKwlkc3QtPmluaXRpYWxpemVkID0gMTsKKworCXJldHVybiBkc3QtPmZkOworfQorCitzdGF0aWMgaW50IHRyMl9kc3RfdHJ5X3BhdGgoc3RydWN0IHRyMl9kc3QgKmRzdCwgY29uc3QgY2hhciAqdGd0X3ZhbHVlKQoreworCWludCBmZCA9IG9wZW4odGd0X3ZhbHVlLCBPX1dST05MWSB8IE9fQVBQRU5EIHwgT19DUkVBVCwgMDY2Nik7CisJaWYgKGZkID09IC0xKSB7CisJCWlmICh0cjJfZHN0X3dhbnRfd2FybmluZygpKQorCQkJd2FybmluZygidHJhY2UyOiBjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciAnJXMnIHRyYWNpbmc6ICVzIiwKKwkJCQl0Z3RfdmFsdWUsCisJCQkJdHIyX3N5c2Vudl9kaXNwbGF5X25hbWUoZHN0LT5zeXNlbnZfdmFyKSwKKwkJCQlzdHJlcnJvcihlcnJubykpOworCisJCXRyMl9kc3RfdHJhY2VfZGlzYWJsZShkc3QpOworCQlyZXR1cm4gMDsKKwl9CisKKwlkc3QtPmZkID0gZmQ7CisJZHN0LT5uZWVkX2Nsb3NlID0gMTsKKwlkc3QtPmluaXRpYWxpemVkID0gMTsKKworCXJldHVybiBkc3QtPmZkOworfQorCisjaWZuZGVmIE5PX1VOSVhfU09DS0VUUworI2RlZmluZSBQUkVGSVhfQUZfVU5JWCAiYWZfdW5peDoiCisjZGVmaW5lIFBSRUZJWF9BRl9VTklYX1NUUkVBTSAiYWZfdW5peDpzdHJlYW06IgorI2RlZmluZSBQUkVGSVhfQUZfVU5JWF9ER1JBTSAiYWZfdW5peDpkZ3JhbToiCisKK3N0YXRpYyBpbnQgdHIyX2RzdF90cnlfdWRzX2Nvbm5lY3QoY29uc3QgY2hhciAqcGF0aCwgaW50IHNvY2tfdHlwZSwgaW50ICpvdXRfZmQpCit7CisJaW50IGZkOworCXN0cnVjdCBzb2NrYWRkcl91biBzYTsKKworCWZkID0gc29ja2V0KEFGX1VOSVgsIHNvY2tfdHlwZSwgMCk7CisJaWYgKGZkID09IC0xKQorCQlyZXR1cm4gZXJybm87CisKKwlzYS5zdW5fZmFtaWx5ID0gQUZfVU5JWDsKKwlzdHJsY3B5KHNhLnN1bl9wYXRoLCBwYXRoLCBzaXplb2Yoc2Euc3VuX3BhdGgpKTsKKworCWlmIChjb25uZWN0KGZkLCAoc3RydWN0IHNvY2thZGRyICopJnNhLCBzaXplb2Yoc2EpKSA9PSAtMSkgeworCQlpbnQgZSA9IGVycm5vOworCQljbG9zZShmZCk7CisJCXJldHVybiBlOworCX0KKworCSpvdXRfZmQgPSBmZDsKKwlyZXR1cm4gMDsKK30KKworI2RlZmluZSBUUjJfRFNUX1VEU19UUllfU1RSRUFNICgxIDw8IDApCisjZGVmaW5lIFRSMl9EU1RfVURTX1RSWV9ER1JBTSAgKDEgPDwgMSkKKworc3RhdGljIGludCB0cjJfZHN0X3RyeV91bml4X2RvbWFpbl9zb2NrZXQoc3RydWN0IHRyMl9kc3QgKmRzdCwKKwkJCQkJICBjb25zdCBjaGFyICp0Z3RfdmFsdWUpCit7CisJdW5zaWduZWQgaW50IHVkc190cnkgPSAwOworCWludCBmZDsKKwlpbnQgZTsKKwljb25zdCBjaGFyICpwYXRoID0gTlVMTDsKKworCS8qCisJICogQWxsb3cgImFmX3VuaXg6Wzx0eXBlPjpdPGFic29sdXRlX3BhdGg+IgorCSAqCisJICogVHJhY2UyIGFsd2F5cyB3cml0ZXMgY29tcGxldGUgaW5kaXZpZHVhbCBtZXNzYWdlcyAod2l0aG91dAorCSAqIGNodW5raW5nKSwgc28gd2UgY2FuIHRhbGsgdG8gZWl0aGVyIERHUkFNIG9yIFNUUkVBTSB0eXBlIHNvY2tldHMuCisJICoKKwkgKiBBbGxvdyB0aGUgdXNlciB0byBleHBsaWNpdGx5IHJlcXVlc3QgdGhlIHNvY2tldCB0eXBlLgorCSAqCisJICogSWYgdGhleSBvbWl0IHRoZSBzb2NrZXQgdHlwZSwgdHJ5IG9uZSBhbmQgdGhlbiB0aGUgb3RoZXIuCisJICovCisKKwlpZiAoc2tpcF9wcmVmaXgodGd0X3ZhbHVlLCBQUkVGSVhfQUZfVU5JWF9TVFJFQU0sICZwYXRoKSkKKwkJdWRzX3RyeSB8PSBUUjJfRFNUX1VEU19UUllfU1RSRUFNOworCisJZWxzZSBpZiAoc2tpcF9wcmVmaXgodGd0X3ZhbHVlLCBQUkVGSVhfQUZfVU5JWF9ER1JBTSwgJnBhdGgpKQorCQl1ZHNfdHJ5IHw9IFRSMl9EU1RfVURTX1RSWV9ER1JBTTsKKworCWVsc2UgaWYgKHNraXBfcHJlZml4KHRndF92YWx1ZSwgUFJFRklYX0FGX1VOSVgsICZwYXRoKSkKKwkJdWRzX3RyeSB8PSBUUjJfRFNUX1VEU19UUllfU1RSRUFNIHwgVFIyX0RTVF9VRFNfVFJZX0RHUkFNOworCisJaWYgKCFwYXRoIHx8ICEqcGF0aCkgeworCQlpZiAodHIyX2RzdF93YW50X3dhcm5pbmcoKSkKKwkJCXdhcm5pbmcoInRyYWNlMjogaW52YWxpZCBBRl9VTklYIHZhbHVlICclcycgZm9yICclcycgdHJhY2luZyIsCisJCQkJdGd0X3ZhbHVlLAorCQkJCXRyMl9zeXNlbnZfZGlzcGxheV9uYW1lKGRzdC0+c3lzZW52X3ZhcikpOworCisJCXRyMl9kc3RfdHJhY2VfZGlzYWJsZShkc3QpOworCQlyZXR1cm4gMDsKKwl9CisKKwlpZiAoIWlzX2Fic29sdXRlX3BhdGgocGF0aCkgfHwKKwkgICAgc3RybGVuKHBhdGgpID49IHNpemVvZigoKHN0cnVjdCBzb2NrYWRkcl91biAqKTApLT5zdW5fcGF0aCkpIHsKKwkJaWYgKHRyMl9kc3Rfd2FudF93YXJuaW5nKCkpCisJCQl3YXJuaW5nKCJ0cmFjZTI6IGludmFsaWQgQUZfVU5JWCBwYXRoICclcycgZm9yICclcycgdHJhY2luZyIsCisJCQkJcGF0aCwgdHIyX3N5c2Vudl9kaXNwbGF5X25hbWUoZHN0LT5zeXNlbnZfdmFyKSk7CisKKwkJdHIyX2RzdF90cmFjZV9kaXNhYmxlKGRzdCk7CisJCXJldHVybiAwOworCX0KKworCWlmICh1ZHNfdHJ5ICYgVFIyX0RTVF9VRFNfVFJZX1NUUkVBTSkgeworCQllID0gdHIyX2RzdF90cnlfdWRzX2Nvbm5lY3QocGF0aCwgU09DS19TVFJFQU0sICZmZCk7CisJCWlmICghZSkKKwkJCWdvdG8gY29ubmVjdGVkOworCQlpZiAoZSAhPSBFUFJPVE9UWVBFKQorCQkJZ290byBlcnJvcjsKKwl9CisJaWYgKHVkc190cnkgJiBUUjJfRFNUX1VEU19UUllfREdSQU0pIHsKKwkJZSA9IHRyMl9kc3RfdHJ5X3Vkc19jb25uZWN0KHBhdGgsIFNPQ0tfREdSQU0sICZmZCk7CisJCWlmICghZSkKKwkJCWdvdG8gY29ubmVjdGVkOworCX0KKworZXJyb3I6CisJaWYgKHRyMl9kc3Rfd2FudF93YXJuaW5nKCkpCisJCXdhcm5pbmcoInRyYWNlMjogY291bGQgbm90IGNvbm5lY3QgdG8gc29ja2V0ICclcycgZm9yICclcycgdHJhY2luZzogJXMiLAorCQkJcGF0aCwgdHIyX3N5c2Vudl9kaXNwbGF5X25hbWUoZHN0LT5zeXNlbnZfdmFyKSwKKwkJCXN0cmVycm9yKGUpKTsKKworCXRyMl9kc3RfdHJhY2VfZGlzYWJsZShkc3QpOworCXJldHVybiAwOworCitjb25uZWN0ZWQ6CisJZHN0LT5mZCA9IGZkOworCWRzdC0+bmVlZF9jbG9zZSA9IDE7CisJZHN0LT5pbml0aWFsaXplZCA9IDE7CisKKwlyZXR1cm4gZHN0LT5mZDsKK30KKyNlbmRpZgorCitzdGF0aWMgdm9pZCB0cjJfZHN0X21hbGZvcm1lZF93YXJuaW5nKHN0cnVjdCB0cjJfZHN0ICpkc3QsCisJCQkJICAgICAgY29uc3QgY2hhciAqdGd0X3ZhbHVlKQoreworCXdhcm5pbmcoInRyYWNlMjogdW5rbm93biB2YWx1ZSBmb3IgJyVzJzogJyVzJyIsCisJCXRyMl9zeXNlbnZfZGlzcGxheV9uYW1lKGRzdC0+c3lzZW52X3ZhciksIHRndF92YWx1ZSk7Cit9CisKK2ludCB0cjJfZHN0X2dldF90cmFjZV9mZChzdHJ1Y3QgdHIyX2RzdCAqZHN0KQoreworCWNvbnN0IGNoYXIgKnRndF92YWx1ZTsKKworCS8qIGRvbid0IG9wZW4gdHdpY2UgKi8KKwlpZiAoZHN0LT5pbml0aWFsaXplZCkKKwkJcmV0dXJuIGRzdC0+ZmQ7CisKKwlkc3QtPmluaXRpYWxpemVkID0gMTsKKworCXRndF92YWx1ZSA9IHRyMl9zeXNlbnZfZ2V0KGRzdC0+c3lzZW52X3Zhcik7CisKKwlpZiAoIXRndF92YWx1ZSB8fCAhc3RyY21wKHRndF92YWx1ZSwgIiIpIHx8ICFzdHJjbXAodGd0X3ZhbHVlLCAiMCIpIHx8CisJICAgICFzdHJjYXNlY21wKHRndF92YWx1ZSwgImZhbHNlIikpIHsKKwkJZHN0LT5mZCA9IDA7CisJCXJldHVybiBkc3QtPmZkOworCX0KKworCWlmICghc3RyY21wKHRndF92YWx1ZSwgIjEiKSB8fCAhc3RyY2FzZWNtcCh0Z3RfdmFsdWUsICJ0cnVlIikpIHsKKwkJZHN0LT5mZCA9IFNUREVSUl9GSUxFTk87CisJCXJldHVybiBkc3QtPmZkOworCX0KKworCWlmIChzdHJsZW4odGd0X3ZhbHVlKSA9PSAxICYmIGlzZGlnaXQoKnRndF92YWx1ZSkpIHsKKwkJZHN0LT5mZCA9IGF0b2kodGd0X3ZhbHVlKTsKKwkJcmV0dXJuIGRzdC0+ZmQ7CisJfQorCisJaWYgKGlzX2Fic29sdXRlX3BhdGgodGd0X3ZhbHVlKSkgeworCQlpZiAoaXNfZGlyZWN0b3J5KHRndF92YWx1ZSkpCisJCQlyZXR1cm4gdHIyX2RzdF90cnlfYXV0b19wYXRoKGRzdCwgdGd0X3ZhbHVlKTsKKwkJZWxzZQorCQkJcmV0dXJuIHRyMl9kc3RfdHJ5X3BhdGgoZHN0LCB0Z3RfdmFsdWUpOworCX0KKworI2lmbmRlZiBOT19VTklYX1NPQ0tFVFMKKwlpZiAoc3RhcnRzX3dpdGgodGd0X3ZhbHVlLCBQUkVGSVhfQUZfVU5JWCkpCisJCXJldHVybiB0cjJfZHN0X3RyeV91bml4X2RvbWFpbl9zb2NrZXQoZHN0LCB0Z3RfdmFsdWUpOworI2VuZGlmCisKKwkvKiBBbHdheXMgd2FybiBhYm91dCBtYWxmb3JtZWQgdmFsdWVzLiAqLworCXRyMl9kc3RfbWFsZm9ybWVkX3dhcm5pbmcoZHN0LCB0Z3RfdmFsdWUpOworCXRyMl9kc3RfdHJhY2VfZGlzYWJsZShkc3QpOworCXJldHVybiAwOworfQorCitpbnQgdHIyX2RzdF90cmFjZV93YW50KHN0cnVjdCB0cjJfZHN0ICpkc3QpCit7CisJcmV0dXJuICEhdHIyX2RzdF9nZXRfdHJhY2VfZmQoZHN0KTsKK30KKwordm9pZCB0cjJfZHN0X3dyaXRlX2xpbmUoc3RydWN0IHRyMl9kc3QgKmRzdCwgc3RydWN0IHN0cmJ1ZiAqYnVmX2xpbmUpCit7CisJaW50IGZkID0gdHIyX2RzdF9nZXRfdHJhY2VfZmQoZHN0KTsKKworCXN0cmJ1Zl9jb21wbGV0ZV9saW5lKGJ1Zl9saW5lKTsgLyogZW5zdXJlIGZpbmFsIE5MIG9uIGJ1ZmZlciAqLworCisJLyoKKwkgKiBXZSBkbyBub3QgdXNlIHdyaXRlX2luX2Z1bGwoKSBiZWNhdXNlIHdlIGRvIG5vdCB3YW50CisJICogYSBzaG9ydC13cml0ZSB0byB0cnkgYWdhaW4uICBXZSBhcmUgdXNpbmcgT19BUFBFTkQgbW9kZQorCSAqIGZpbGVzIGFuZCB0aGUga2VybmVsIGhhbmRsZXMgdGhlIGF0b21pYyBzZWVrK3dyaXRlLiBJZgorCSAqIGFub3RoZXIgdGhyZWFkIG9yIGdpdCBwcm9jZXNzIGlzIGNvbmN1cnJlbnRseSB3cml0aW5nIHRvCisJICogdGhpcyBmZCBvciBmaWxlLCBvdXIgcmVtYWluZGVyLXdyaXRlIG1heSBub3QgYmUgY29udGlndW91cworCSAqIHdpdGggb3VyIGluaXRpYWwgd3JpdGUgb2YgdGhpcyBtZXNzYWdlLiAgQW5kIHRoYXQgd2lsbAorCSAqIGNvbmZ1c2UgcmVhZGVycy4gIFNvIGp1c3QgZG9uJ3QgYm90aGVyLgorCSAqCisJICogSXQgaXMgYXNzdW1lZCB0aGF0IFRSQUNFMiBtZXNzYWdlcyBhcmUgc2hvcnQgZW5vdWdoIHRoYXQKKwkgKiB0aGUgc3lzdGVtIGNhbiB3cml0ZSB0aGVtIGluIDEgYXR0ZW1wdCBhbmQgd2Ugd29uJ3Qgc2VlCisJICogYSBzaG9ydC13cml0ZS4KKwkgKgorCSAqIElmIHdlIGdldCBhbiBJTyBlcnJvciwganVzdCBjbG9zZSB0aGUgdHJhY2UgZHN0LgorCSAqLworCWlmICh3cml0ZShmZCwgYnVmX2xpbmUtPmJ1ZiwgYnVmX2xpbmUtPmxlbikgPj0gMCkKKwkJcmV0dXJuOworCisJaWYgKHRyMl9kc3Rfd2FudF93YXJuaW5nKCkpCisJCXdhcm5pbmcoInVuYWJsZSB0byB3cml0ZSB0cmFjZSB0byAnJXMnOiAlcyIsCisJCQl0cjJfc3lzZW52X2Rpc3BsYXlfbmFtZShkc3QtPnN5c2Vudl92YXIpLAorCQkJc3RyZXJyb3IoZXJybm8pKTsKKwl0cjJfZHN0X3RyYWNlX2Rpc2FibGUoZHN0KTsKK30KZGlmZiAtLWdpdCBhL3RyYWNlMi90cjJfZHN0LmggYi90cmFjZTIvdHIyX2RzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIxYThjMTQKLS0tIC9kZXYvbnVsbAorKysgYi90cmFjZTIvdHIyX2RzdC5oCkBAIC0wLDAgKzEsMzggQEAKKyNpZm5kZWYgVFIyX0RTVF9ICisjZGVmaW5lIFRSMl9EU1RfSAorCitzdHJ1Y3Qgc3RyYnVmOworI2luY2x1ZGUgInRyYWNlMi90cjJfc3lzZW52LmgiCisKK3N0cnVjdCB0cjJfZHN0IHsKKwllbnVtIHRyMl9zeXNlbnZfdmFyaWFibGUgc3lzZW52X3ZhcjsKKwlpbnQgZmQ7CisJdW5zaWduZWQgaW50IGluaXRpYWxpemVkIDogMTsKKwl1bnNpZ25lZCBpbnQgbmVlZF9jbG9zZSA6IDE7CisJdW5zaWduZWQgaW50IHRvb19tYW55X2ZpbGVzIDogMTsKK307CisKKy8qCisgKiBEaXNhYmxlIFRSQUNFMiBvbiB0aGUgZGVzdGluYXRpb24uICBJbiBUUkFDRTIgYSBkZXN0aW5hdGlvbiAoRFNUKQorICogd3JhcHMgYSBmaWxlIGRlc2NyaXB0b3I7IGl0IGlzIGFzc29jaWF0ZWQgd2l0aCBhIFRBUkdFVCB3aGljaAorICogZGVmaW5lcyB0aGUgZm9ybWF0dGluZy4KKyAqLwordm9pZCB0cjJfZHN0X3RyYWNlX2Rpc2FibGUoc3RydWN0IHRyMl9kc3QgKmRzdCk7CisKKy8qCisgKiBSZXR1cm4gdGhlIGZpbGUgZGVzY3JpcHRvciBmb3IgdGhlIERTVC4KKyAqIElmIDAsIHRoZSBkc3QgaXMgY2xvc2VkIG9yIGRpc2FibGVkLgorICovCitpbnQgdHIyX2RzdF9nZXRfdHJhY2VfZmQoc3RydWN0IHRyMl9kc3QgKmRzdCk7CisKKy8qCisgKiBSZXR1cm4gdHJ1ZSBpZiB0aGUgRFNUIGlzIG9wZW5lZCBmb3Igd3JpdGluZy4KKyAqLworaW50IHRyMl9kc3RfdHJhY2Vfd2FudChzdHJ1Y3QgdHIyX2RzdCAqZHN0KTsKKworLyoKKyAqIFdyaXRlIGEgc2luZ2xlIGxpbmUvbWVzc2FnZSB0byB0aGUgdHJhY2UgZmlsZS4KKyAqLwordm9pZCB0cjJfZHN0X3dyaXRlX2xpbmUoc3RydWN0IHRyMl9kc3QgKmRzdCwgc3RydWN0IHN0cmJ1ZiAqYnVmX2xpbmUpOworCisjZW5kaWYgLyogVFIyX0RTVF9IICovCmRpZmYgLS1naXQgYS90cmFjZTIvdHIyX3NpZC5jIGIvdHJhY2UyL3RyMl9zaWQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYzZlNzVlCi0tLSAvZGV2L251bGwKKysrIGIvdHJhY2UyL3RyMl9zaWQuYwpAQCAtMCwwICsxLDExMiBAQAorI2luY2x1ZGUgImNhY2hlLmgiCisjaW5jbHVkZSAidHJhY2UyL3RyMl90YnVmLmgiCisjaW5jbHVkZSAidHJhY2UyL3RyMl9zaWQuaCIKKworI2RlZmluZSBUUjJfRU5WVkFSX1BBUkVOVF9TSUQgIkdJVF9UUkFDRTJfUEFSRU5UX1NJRCIKKworc3RhdGljIHN0cnVjdCBzdHJidWYgdHIyc2lkX2J1ZiA9IFNUUkJVRl9JTklUOworc3RhdGljIGludCB0cjJzaWRfbnJfZ2l0X3BhcmVudHM7CisKKy8qCisgKiBDb21wdXRlIHRoZSBmaW5hbCBjb21wb25lbnQgb2YgdGhlIFNJRCByZXByZXNlbnRpbmcgdGhlIGN1cnJlbnQgcHJvY2Vzcy4KKyAqIFRoaXMgc2hvdWxkIHVuaXF1ZWx5IGlkZW50aWZ5IHRoZSBwcm9jZXNzIGFuZCBiZSBhIHZhbGlkIGZpbGVuYW1lICh0bworICogYWxsb3cgd3JpdGluZyB0cmFjZTIgZGF0YSB0byBwZXItcHJvY2VzcyBmaWxlcykuICBJdCBzaG91bGQgYWxzbyBiZSBmaXhlZAorICogbGVuZ3RoIGZvciBwb3NzaWJsZSB1c2UgYXMgYSBkYXRhYmFzZSBrZXkuCisgKgorICogIjx5eXl5bW1kZD5UPGhobW1zcz4uPGZyYWN0aW9uPlotPGhvc3Q+LTxwcm9jZXNzPiIKKyAqCisgKiB3aGVyZSA8aG9zdD4gaXMgYSA5IGNoYXJhY3RlciBzdHJpbmc6CisgKiAgICAiSDxmaXJzdF84X2NoYXJzX29mX3NoYTFfb2ZfaG9zdG5hbWU+IgorICogICAgIkxvY2FsaG9zdCIgd2hlbiBubyBob3N0bmFtZS4KKyAqCisgKiB3aGVyZSA8cHJvY2Vzcz4gaXMgYSA5IGNoYXJhY3RlciBzdHJpbmcgY29udGFpbmluZyB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQKKyAqIDMyIGJpdHMgaW4gdGhlIHByb2Nlc3MtaWQuCisgKiAgICAiUDxwaWQ+IgorICogKFRoaXMgaXMgYW4gYWJyaWJyYXJ5IGNob2ljZS4gIE9uIG1vc3Qgc3lzdGVtcyBwaWRfdCBpcyBhIDMyIGJpdCB2YWx1ZSwKKyAqIHNvIGxpbWl0IGRvZXNuJ3QgbWF0dGVyLiAgT24gbGFyZ2VyIHN5c3RlbXMsIGEgdHJ1bmNhdGVkIHZhbHVlIGlzIGZpbmUKKyAqIGZvciBvdXIgcHVycG9zZXMgaGVyZS4pCisgKi8KK3N0YXRpYyB2b2lkIHRyMl9zaWRfYXBwZW5kX215X3NpZF9jb21wb25lbnQodm9pZCkKK3sKKwljb25zdCBzdHJ1Y3QgZ2l0X2hhc2hfYWxnbyAqYWxnbyA9ICZoYXNoX2FsZ29zW0dJVF9IQVNIX1NIQTFdOworCXN0cnVjdCB0cjJfdGJ1ZiB0Yl9ub3c7CisJZ2l0X2hhc2hfY3R4IGN0eDsKKwlwaWRfdCBwaWQgPSBnZXRwaWQoKTsKKwl1bnNpZ25lZCBjaGFyIGhhc2hbR0lUX01BWF9SQVdTWiArIDFdOworCWNoYXIgaGV4W0dJVF9NQVhfSEVYU1ogKyAxXTsKKwljaGFyIGhvc3RuYW1lW0hPU1RfTkFNRV9NQVggKyAxXTsKKworCXRyMl90YnVmX3V0Y19kYXRldGltZSgmdGJfbm93KTsKKwlzdHJidWZfYWRkc3RyKCZ0cjJzaWRfYnVmLCB0Yl9ub3cuYnVmKTsKKworCXN0cmJ1Zl9hZGRjaCgmdHIyc2lkX2J1ZiwgJy0nKTsKKwlpZiAoeGdldGhvc3RuYW1lKGhvc3RuYW1lLCBzaXplb2YoaG9zdG5hbWUpKSkKKwkJc3RyYnVmX2FkZCgmdHIyc2lkX2J1ZiwgIkxvY2FsaG9zdCIsIDkpOworCWVsc2UgeworCQlhbGdvLT5pbml0X2ZuKCZjdHgpOworCQlhbGdvLT51cGRhdGVfZm4oJmN0eCwgaG9zdG5hbWUsIHN0cmxlbihob3N0bmFtZSkpOworCQlhbGdvLT5maW5hbF9mbihoYXNoLCAmY3R4KTsKKwkJaGFzaF90b19oZXhfYWxnb3BfcihoZXgsIGhhc2gsIGFsZ28pOworCQlzdHJidWZfYWRkY2goJnRyMnNpZF9idWYsICdIJyk7CisJCXN0cmJ1Zl9hZGQoJnRyMnNpZF9idWYsIGhleCwgOCk7CisJfQorCisJc3RyYnVmX2FkZGYoJnRyMnNpZF9idWYsICItUCUwOCJQUkl4MzIsICh1aW50MzJfdClwaWQpOworfQorCisvKgorICogQ29tcHV0ZSBhICJ1bmlxdWUiIHNlc3Npb24gaWQgKFNJRCkgZm9yIHRoZSBjdXJyZW50IHByb2Nlc3MuICBUaGlzIGFsbG93cworICogYWxsIGV2ZW50cyBmcm9tIHRoaXMgcHJvY2VzcyB0byBoYXZlIGEgc2luZ2xlIGxhYmVsIChtdWNoIGxpa2UgYSBQSUQpLgorICoKKyAqIEV4cG9ydCB0aGlzIGludG8gb3VyIGVudmlyb25tZW50IHNvIHRoYXQgYWxsIGNoaWxkIHByb2Nlc3NlcyBpbmhlcml0IGl0LgorICoKKyAqIElmIHdlIHdlcmUgc3RhcnRlZCBieSBhbm90aGVyIGdpdCBpbnN0YW5jZSwgdXNlIG91ciBwYXJlbnQncyBTSUQgYXMgYQorICogcHJlZml4LiAgKFRoaXMgbGV0cyB1cyB0cmFjayBwYXJlbnQvY2hpbGQgcmVsYXRpb25zaGlwcyBldmVuIGlmIHRoZXJlCisgKiBpcyBhbiBpbnRlcm1lZGlhdGUgc2hlbGwgcHJvY2Vzcy4pCisgKgorICogQWRkaXRpb25hbGx5LCBjb3VudCB0aGUgbnVtYmVyIG9mIG5lc3RlZCBnaXQgcHJvY2Vzc2VzLgorICovCitzdGF0aWMgdm9pZCB0cjJfc2lkX2NvbXB1dGUodm9pZCkKK3sKKwljb25zdCBjaGFyICpwYXJlbnRfc2lkOworCisJaWYgKHRyMnNpZF9idWYubGVuKQorCQlyZXR1cm47CisKKwlwYXJlbnRfc2lkID0gZ2V0ZW52KFRSMl9FTlZWQVJfUEFSRU5UX1NJRCk7CisJaWYgKHBhcmVudF9zaWQgJiYgKnBhcmVudF9zaWQpIHsKKwkJY29uc3QgY2hhciAqcDsKKwkJZm9yIChwID0gcGFyZW50X3NpZDsgKnA7IHArKykKKwkJCWlmICgqcCA9PSAnLycpCisJCQkJdHIyc2lkX25yX2dpdF9wYXJlbnRzKys7CisKKwkJc3RyYnVmX2FkZHN0cigmdHIyc2lkX2J1ZiwgcGFyZW50X3NpZCk7CisJCXN0cmJ1Zl9hZGRjaCgmdHIyc2lkX2J1ZiwgJy8nKTsKKwkJdHIyc2lkX25yX2dpdF9wYXJlbnRzKys7CisJfQorCisJdHIyX3NpZF9hcHBlbmRfbXlfc2lkX2NvbXBvbmVudCgpOworCisJc2V0ZW52KFRSMl9FTlZWQVJfUEFSRU5UX1NJRCwgdHIyc2lkX2J1Zi5idWYsIDEpOworfQorCitjb25zdCBjaGFyICp0cjJfc2lkX2dldCh2b2lkKQoreworCWlmICghdHIyc2lkX2J1Zi5sZW4pCisJCXRyMl9zaWRfY29tcHV0ZSgpOworCisJcmV0dXJuIHRyMnNpZF9idWYuYnVmOworfQorCitpbnQgdHIyX3NpZF9kZXB0aCh2b2lkKQoreworCWlmICghdHIyc2lkX2J1Zi5sZW4pCisJCXRyMl9zaWRfY29tcHV0ZSgpOworCisJcmV0dXJuIHRyMnNpZF9ucl9naXRfcGFyZW50czsKK30KKwordm9pZCB0cjJfc2lkX3JlbGVhc2Uodm9pZCkKK3sKKwlzdHJidWZfcmVsZWFzZSgmdHIyc2lkX2J1Zik7Cit9CmRpZmYgLS1naXQgYS90cmFjZTIvdHIyX3NpZC5oIGIvdHJhY2UyL3RyMl9zaWQuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YmVmMzIxCi0tLSAvZGV2L251bGwKKysrIGIvdHJhY2UyL3RyMl9zaWQuaApAQCAtMCwwICsxLDE4IEBACisjaWZuZGVmIFRSMl9TSURfSAorI2RlZmluZSBUUjJfU0lEX0gKKworLyoKKyAqIEdldCBvdXIgc2Vzc2lvbiBpZC4gQ29tcHV0ZSBpZiBuZWNlc3NhcnkuCisgKi8KK2NvbnN0IGNoYXIgKnRyMl9zaWRfZ2V0KHZvaWQpOworCisvKgorICogR2V0IG91ciBwcm9jZXNzIGRlcHRoLiAgQSB0b3AtbGV2ZWwgZ2l0IHByb2Nlc3MgaW52b2tlZCBmcm9tIHRoZQorICogY29tbWFuZCBsaW5lIHdpbGwgaGF2ZSBkZXB0aD0wLiAgQSBjaGlsZCBnaXQgcHJvY2VzcyB3aWxsIGhhdmUKKyAqIGRlcHRoPTEgYW5kIHNvIG9uLgorICovCitpbnQgdHIyX3NpZF9kZXB0aCh2b2lkKTsKKwordm9pZCB0cjJfc2lkX3JlbGVhc2Uodm9pZCk7CisKKyNlbmRpZiAvKiBUUjJfU0lEX0ggKi8KZGlmZiAtLWdpdCBhL3RyYWNlMi90cjJfc3lzZW52LmMgYi90cmFjZTIvdHIyX3N5c2Vudi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNjMzc5MmUKLS0tIC9kZXYvbnVsbAorKysgYi90cmFjZTIvdHIyX3N5c2Vudi5jCkBAIC0wLDAgKzEsMTMwIEBACisjaW5jbHVkZSAiY2FjaGUuaCIKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJkaXIuaCIKKyNpbmNsdWRlICJ0cjJfc3lzZW52LmgiCisKKy8qCisgKiBFYWNoIGVudHJ5IHJlcHJlc2VudHMgYSB0cmFjZTIgc2V0dGluZy4KKyAqIFNlZSBEb2N1bWVudGF0aW9uL3RlY2huaWNhbC9hcGktdHJhY2UyLnR4dAorICovCitzdHJ1Y3QgdHIyX3N5c2Vudl9lbnRyeSB7CisJY29uc3QgY2hhciAqZW52X3Zhcl9uYW1lOworCWNvbnN0IGNoYXIgKmdpdF9jb25maWdfbmFtZTsKKworCWNoYXIgKnZhbHVlOworCXVuc2lnbmVkIGludCBnZXRlbnZfY2FsbGVkIDogMTsKK307CisKKy8qCisgKiBUaGlzIHRhYmxlIG11c3QgbWF0Y2ggImVudW0gdHIyX3N5c2Vudl92YXJpYWJsZSIgaW4gdHIyX3N5c2Vudi5oLgorICoKKyAqIFRoZSBzdHJpbmdzIGluIHRoaXMgdGFibGUgYXJlIGNvbnN0YW50IGFuZCBtdXN0IG1hdGNoIHRoZSBwdWJsaXNoZWQKKyAqIGNvbmZpZyBhbmQgZW52aXJvbm1lbnQgdmFyaWFibGUgbmFtZXMgYXMgZGVzY3JpYmVkIGluIHRoZSBkb2N1bWVudGF0aW9uLgorICoKKyAqIFdlIGRvIG5vdCBkZWZpbmUgZW50cmllcyBmb3IgdGhlIEdJVF9UUkFDRTJfUEFSRU5UXyogZW52aXJvbm1lbnQKKyAqIHZhcmlhYmxlcyBiZWNhdXNlIHRoZXkgYXJlIHRyYW5zaWVudCBhbmQgdXNlZCB0byBwYXNzIGluZm9ybWF0aW9uCisgKiBmcm9tIHBhcmVudCB0byBjaGlsZCBnaXQgcHJvY2Vzc2VzLCByYXRoZXIgdGhhbiBzZXR0aW5ncy4KKyAqLworLyogY2xhbmctZm9ybWF0IG9mZiAqLworc3RhdGljIHN0cnVjdCB0cjJfc3lzZW52X2VudHJ5IHRyMl9zeXNlbnZfc2V0dGluZ3NbXSA9IHsKKwlbVFIyX1NZU0VOVl9DRkdfUEFSQU1dICAgICA9IHsgIkdJVF9UUkFDRTJfQ09ORklHX1BBUkFNUyIsCisJCQkJICAgICAgICJ0cmFjZTIuY29uZmlncGFyYW1zIiB9LAorCisJW1RSMl9TWVNFTlZfRFNUX0RFQlVHXSAgICAgPSB7ICJHSVRfVFJBQ0UyX0RTVF9ERUJVRyIsCisJCQkJICAgICAgICJ0cmFjZTIuZGVzdGluYXRpb25kZWJ1ZyIgfSwKKworCVtUUjJfU1lTRU5WX05PUk1BTF0gICAgICAgID0geyAiR0lUX1RSQUNFMiIsCisJCQkJICAgICAgICJ0cmFjZTIubm9ybWFsdGFyZ2V0IiB9LAorCVtUUjJfU1lTRU5WX05PUk1BTF9CUklFRl0gID0geyAiR0lUX1RSQUNFMl9CUklFRiIsCisJCQkJICAgICAgICJ0cmFjZTIubm9ybWFsYnJpZWYiIH0sCisKKwlbVFIyX1NZU0VOVl9FVkVOVF0gICAgICAgICA9IHsgIkdJVF9UUkFDRTJfRVZFTlQiLAorCQkJCSAgICAgICAidHJhY2UyLmV2ZW50dGFyZ2V0IiB9LAorCVtUUjJfU1lTRU5WX0VWRU5UX0JSSUVGXSAgID0geyAiR0lUX1RSQUNFMl9FVkVOVF9CUklFRiIsCisJCQkJICAgICAgICJ0cmFjZTIuZXZlbnRicmllZiIgfSwKKwlbVFIyX1NZU0VOVl9FVkVOVF9ORVNUSU5HXSA9IHsgIkdJVF9UUkFDRTJfRVZFTlRfTkVTVElORyIsCisJCQkJICAgICAgICJ0cmFjZTIuZXZlbnRuZXN0aW5nIiB9LAorCisJW1RSMl9TWVNFTlZfUEVSRl0gICAgICAgICAgPSB7ICJHSVRfVFJBQ0UyX1BFUkYiLAorCQkJCSAgICAgICAidHJhY2UyLnBlcmZ0YXJnZXQiIH0sCisJW1RSMl9TWVNFTlZfUEVSRl9CUklFRl0gICAgPSB7ICJHSVRfVFJBQ0UyX1BFUkZfQlJJRUYiLAorCQkJCSAgICAgICAidHJhY2UyLnBlcmZicmllZiIgfSwKKworCVtUUjJfU1lTRU5WX01BWF9GSUxFU10gICAgID0geyAiR0lUX1RSQUNFMl9NQVhfRklMRVMiLAorCQkJCSAgICAgICAidHJhY2UyLm1heGZpbGVzIiB9LAorfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLworCitzdGF0aWMgaW50IHRyMl9zeXNlbnZfY2IoY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqZCkKK3sKKwlpbnQgazsKKworCWlmICghc3RhcnRzX3dpdGgoa2V5LCAidHJhY2UyLiIpKQorCQlyZXR1cm4gMDsKKworCWZvciAoayA9IDA7IGsgPCBBUlJBWV9TSVpFKHRyMl9zeXNlbnZfc2V0dGluZ3MpOyBrKyspIHsKKwkJaWYgKCFzdHJjbXAoa2V5LCB0cjJfc3lzZW52X3NldHRpbmdzW2tdLmdpdF9jb25maWdfbmFtZSkpIHsKKwkJCWZyZWUodHIyX3N5c2Vudl9zZXR0aW5nc1trXS52YWx1ZSk7CisJCQl0cjJfc3lzZW52X3NldHRpbmdzW2tdLnZhbHVlID0geHN0cmR1cCh2YWx1ZSk7CisJCQlyZXR1cm4gMDsKKwkJfQorCX0KKworCXJldHVybiAwOworfQorCisvKgorICogTG9hZCBUcmFjZTIgc2V0dGluZ3MgZnJvbSB0aGUgc3lzdGVtIGNvbmZpZyAodXN1YWxseSAiL2V0Yy9naXRjb25maWciCisgKiB1bmxlc3Mgd2Ugd2VyZSBidWlsdCB3aXRoIGEgcnVudGltZS1wcmVmaXgpLiAgVGhlc2UgYXJlIGludGVuZGVkIHRvCisgKiBkZWZpbmUgdGhlIGRlZmF1bHQgdmFsdWVzIGZvciBUcmFjZTIgYXMgcmVxdWVzdGVkIGJ5IHRoZSBhZG1pbmlzdHJhdG9yLgorICoKKyAqIFRoZW4gb3ZlcnJpZGUgd2l0aCB0aGUgVHJhY2UyIHNldHRpbmdzIGZyb20gdGhlIGdsb2JhbCBjb25maWcuCisgKi8KK3ZvaWQgdHIyX3N5c2Vudl9sb2FkKHZvaWQpCit7CisJaWYgKEFSUkFZX1NJWkUodHIyX3N5c2Vudl9zZXR0aW5ncykgIT0gVFIyX1NZU0VOVl9NVVNUX0JFX0xBU1QpCisJCUJVRygidHIyX3N5c2Vudl9zZXR0aW5ncyBzaXplIGlzIHdyb25nIik7CisKKwlyZWFkX3ZlcnlfZWFybHlfY29uZmlnKHRyMl9zeXNlbnZfY2IsIE5VTEwpOworfQorCisvKgorICogUmV0dXJuIHRoZSB2YWx1ZSBmb3IgdGhlIHJlcXVlc3RlZCBUcmFjZTIgc2V0dGluZyBmcm9tIHRoZXNlIHNvdXJjZXM6CisgKiB0aGUgc3lzdGVtIGNvbmZpZywgdGhlIGdsb2JhbCBjb25maWcsIGFuZCB0aGUgZW52aXJvbm1lbnQuCisgKi8KK2NvbnN0IGNoYXIgKnRyMl9zeXNlbnZfZ2V0KGVudW0gdHIyX3N5c2Vudl92YXJpYWJsZSB2YXIpCit7CisJaWYgKHZhciA+PSBUUjJfU1lTRU5WX01VU1RfQkVfTEFTVCkKKwkJQlVHKCJ0cjJfc3lzZW52X2dldCBpbnZhbGlkIHZhciAnJWQnIiwgdmFyKTsKKworCWlmICghdHIyX3N5c2Vudl9zZXR0aW5nc1t2YXJdLmdldGVudl9jYWxsZWQpIHsKKwkJY29uc3QgY2hhciAqdiA9IGdldGVudih0cjJfc3lzZW52X3NldHRpbmdzW3Zhcl0uZW52X3Zhcl9uYW1lKTsKKwkJaWYgKHYgJiYgKnYpIHsKKwkJCWZyZWUodHIyX3N5c2Vudl9zZXR0aW5nc1t2YXJdLnZhbHVlKTsKKwkJCXRyMl9zeXNlbnZfc2V0dGluZ3NbdmFyXS52YWx1ZSA9IHhzdHJkdXAodik7CisJCX0KKwkJdHIyX3N5c2Vudl9zZXR0aW5nc1t2YXJdLmdldGVudl9jYWxsZWQgPSAxOworCX0KKworCXJldHVybiB0cjJfc3lzZW52X3NldHRpbmdzW3Zhcl0udmFsdWU7Cit9CisKKy8qCisgKiBSZXR1cm4gYSBmcmllbmRseSBuYW1lIGZvciB0aGlzIHNldHRpbmcgdGhhdCBpcyBzdWl0YWJsZSBmb3IgcHJpbnRpbmcKKyAqIGluIGFuIGVycm9yIG1lc3NhZ2VzLgorICovCitjb25zdCBjaGFyICp0cjJfc3lzZW52X2Rpc3BsYXlfbmFtZShlbnVtIHRyMl9zeXNlbnZfdmFyaWFibGUgdmFyKQoreworCWlmICh2YXIgPj0gVFIyX1NZU0VOVl9NVVNUX0JFX0xBU1QpCisJCUJVRygidHIyX3N5c2Vudl9nZXQgaW52YWxpZCB2YXIgJyVkJyIsIHZhcik7CisKKwlyZXR1cm4gdHIyX3N5c2Vudl9zZXR0aW5nc1t2YXJdLmVudl92YXJfbmFtZTsKK30KKwordm9pZCB0cjJfc3lzZW52X3JlbGVhc2Uodm9pZCkKK3sKKwlpbnQgazsKKworCWZvciAoayA9IDA7IGsgPCBBUlJBWV9TSVpFKHRyMl9zeXNlbnZfc2V0dGluZ3MpOyBrKyspCisJCWZyZWUodHIyX3N5c2Vudl9zZXR0aW5nc1trXS52YWx1ZSk7Cit9CmRpZmYgLS1naXQgYS90cmFjZTIvdHIyX3N5c2Vudi5oIGIvdHJhY2UyL3RyMl9zeXNlbnYuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNDM2NGE3Ci0tLSAvZGV2L251bGwKKysrIGIvdHJhY2UyL3RyMl9zeXNlbnYuaApAQCAtMCwwICsxLDM4IEBACisjaWZuZGVmIFRSMl9TWVNFTlZfSAorI2RlZmluZSBUUjJfU1lTRU5WX0gKKworLyoKKyAqIFRoZSBUcmFjZTIgc2V0dGluZ3MgdGhhdCBjYW4gYmUgbG9hZGVkIGZyb20gL2V0Yy9naXRjb25maWcKKyAqIGFuZC9vciB1c2VyIGVudmlyb25tZW50IHZhcmlhYmxlcy4KKyAqCisgKiBOb3RlIHRoYXQgdGhpcyBzZXQgZG9lcyBub3QgY29udGFpbiBhbnkgb2YgdGhlIHRyYW5zaWVudAorICogZW52aXJvbm1lbnQgdmFyaWFibGVzIHVzZWQgdG8gcGFzcyBpbmZvcm1hdGlvbiBmcm9tIHBhcmVudAorICogdG8gY2hpbGQgZ2l0IHByb2Nlc3Nlcywgc3VjaCAiR0lUX1RSQUNFMl9QQVJFTlRfU0lEIi4KKyAqLworZW51bSB0cjJfc3lzZW52X3ZhcmlhYmxlIHsKKwlUUjJfU1lTRU5WX0NGR19QQVJBTSA9IDAsCisKKwlUUjJfU1lTRU5WX0RTVF9ERUJVRywKKworCVRSMl9TWVNFTlZfTk9STUFMLAorCVRSMl9TWVNFTlZfTk9STUFMX0JSSUVGLAorCisJVFIyX1NZU0VOVl9FVkVOVCwKKwlUUjJfU1lTRU5WX0VWRU5UX0JSSUVGLAorCVRSMl9TWVNFTlZfRVZFTlRfTkVTVElORywKKworCVRSMl9TWVNFTlZfUEVSRiwKKwlUUjJfU1lTRU5WX1BFUkZfQlJJRUYsCisKKwlUUjJfU1lTRU5WX01BWF9GSUxFUywKKworCVRSMl9TWVNFTlZfTVVTVF9CRV9MQVNUCit9OworCit2b2lkIHRyMl9zeXNlbnZfbG9hZCh2b2lkKTsKKworY29uc3QgY2hhciAqdHIyX3N5c2Vudl9nZXQoZW51bSB0cjJfc3lzZW52X3ZhcmlhYmxlKTsKK2NvbnN0IGNoYXIgKnRyMl9zeXNlbnZfZGlzcGxheV9uYW1lKGVudW0gdHIyX3N5c2Vudl92YXJpYWJsZSB2YXIpOwordm9pZCB0cjJfc3lzZW52X3JlbGVhc2Uodm9pZCk7CisKKyNlbmRpZiAvKiBUUjJfU1lTRU5WX0ggKi8KZGlmZiAtLWdpdCBhL3RyYWNlMi90cjJfdGJ1Zi5jIGIvdHJhY2UyL3RyMl90YnVmLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjQ5ODQ4MgotLS0gL2Rldi9udWxsCisrKyBiL3RyYWNlMi90cjJfdGJ1Zi5jCkBAIC0wLDAgKzEsNDcgQEAKKyNpbmNsdWRlICJjYWNoZS5oIgorI2luY2x1ZGUgInRyMl90YnVmLmgiCisKK3ZvaWQgdHIyX3RidWZfbG9jYWxfdGltZShzdHJ1Y3QgdHIyX3RidWYgKnRiKQoreworCXN0cnVjdCB0aW1ldmFsIHR2OworCXN0cnVjdCB0bSB0bTsKKwl0aW1lX3Qgc2VjczsKKworCWdldHRpbWVvZmRheSgmdHYsIE5VTEwpOworCXNlY3MgPSB0di50dl9zZWM7CisJbG9jYWx0aW1lX3IoJnNlY3MsICZ0bSk7CisKKwl4c25wcmludGYodGItPmJ1Ziwgc2l6ZW9mKHRiLT5idWYpLCAiJTAyZDolMDJkOiUwMmQuJTA2bGQiLCB0bS50bV9ob3VyLAorCQkgIHRtLnRtX21pbiwgdG0udG1fc2VjLCAobG9uZyl0di50dl91c2VjKTsKK30KKwordm9pZCB0cjJfdGJ1Zl91dGNfZGF0ZXRpbWVfZXh0ZW5kZWQoc3RydWN0IHRyMl90YnVmICp0YikKK3sKKwlzdHJ1Y3QgdGltZXZhbCB0djsKKwlzdHJ1Y3QgdG0gdG07CisJdGltZV90IHNlY3M7CisKKwlnZXR0aW1lb2ZkYXkoJnR2LCBOVUxMKTsKKwlzZWNzID0gdHYudHZfc2VjOworCWdtdGltZV9yKCZzZWNzLCAmdG0pOworCisJeHNucHJpbnRmKHRiLT5idWYsIHNpemVvZih0Yi0+YnVmKSwKKwkJICAiJTRkLSUwMmQtJTAyZFQlMDJkOiUwMmQ6JTAyZC4lMDZsZFoiLCB0bS50bV95ZWFyICsgMTkwMCwKKwkJICB0bS50bV9tb24gKyAxLCB0bS50bV9tZGF5LCB0bS50bV9ob3VyLCB0bS50bV9taW4sIHRtLnRtX3NlYywKKwkJICAobG9uZyl0di50dl91c2VjKTsKK30KKwordm9pZCB0cjJfdGJ1Zl91dGNfZGF0ZXRpbWUoc3RydWN0IHRyMl90YnVmICp0YikKK3sKKwlzdHJ1Y3QgdGltZXZhbCB0djsKKwlzdHJ1Y3QgdG0gdG07CisJdGltZV90IHNlY3M7CisKKwlnZXR0aW1lb2ZkYXkoJnR2LCBOVUxMKTsKKwlzZWNzID0gdHYudHZfc2VjOworCWdtdGltZV9yKCZzZWNzLCAmdG0pOworCisJeHNucHJpbnRmKHRiLT5idWYsIHNpemVvZih0Yi0+YnVmKSwgIiU0ZCUwMmQlMDJkVCUwMmQlMDJkJTAyZC4lMDZsZFoiLAorCQkgIHRtLnRtX3llYXIgKyAxOTAwLCB0bS50bV9tb24gKyAxLCB0bS50bV9tZGF5LCB0bS50bV9ob3VyLAorCQkgIHRtLnRtX21pbiwgdG0udG1fc2VjLCAobG9uZyl0di50dl91c2VjKTsKK30KZGlmZiAtLWdpdCBhL3RyYWNlMi90cjJfdGJ1Zi5oIGIvdHJhY2UyL3RyMl90YnVmLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmE4NTNkOAotLS0gL2Rldi9udWxsCisrKyBiL3RyYWNlMi90cjJfdGJ1Zi5oCkBAIC0wLDAgKzEsMjQgQEAKKyNpZm5kZWYgVFIyX1RCVUZfSAorI2RlZmluZSBUUjJfVEJVRl9ICisKKy8qCisgKiBBIHNpbXBsZSB3cmFwcGVyIGFyb3VuZCBhIGZpeGVkIGJ1ZmZlciB0byBhdm9pZCBDIHN5bnRheAorICogcXVpcmtzIGFuZCB0aGUgbmVlZCB0byBwYXNzIGFyb3VuZCBhbiBhZGRpdGlvbmFsIHNpemVfdAorICogYXJndW1lbnQuCisgKi8KK3N0cnVjdCB0cjJfdGJ1ZiB7CisJY2hhciBidWZbMzJdOworfTsKKworLyoKKyAqIEZpbGwgYnVmZmVyIHdpdGggZm9ybWF0dGVkIGxvY2FsIHRpbWUgc3RyaW5nLgorICovCit2b2lkIHRyMl90YnVmX2xvY2FsX3RpbWUoc3RydWN0IHRyMl90YnVmICp0Yik7CisKKy8qCisgKiBGaWxsIGJ1ZmZlciB3aXRoIGZvcm1hdHRlZCBVVEMgZGF0YXRpbWUgc3RyaW5nLgorICovCit2b2lkIHRyMl90YnVmX3V0Y19kYXRldGltZV9leHRlbmRlZChzdHJ1Y3QgdHIyX3RidWYgKnRiKTsKK3ZvaWQgdHIyX3RidWZfdXRjX2RhdGV0aW1lKHN0cnVjdCB0cjJfdGJ1ZiAqdGIpOworCisjZW5kaWYgLyogVFIyX1RCVUZfSCAqLwpkaWZmIC0tZ2l0IGEvdHJhY2UyL3RyMl90Z3QuaCBiL3RyYWNlMi90cjJfdGd0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2I5MDQ2OQotLS0gL2Rldi9udWxsCisrKyBiL3RyYWNlMi90cjJfdGd0LmgKQEAgLTAsMCArMSwxMzQgQEAKKyNpZm5kZWYgVFIyX1RHVF9ICisjZGVmaW5lIFRSMl9UR1RfSAorCitzdHJ1Y3QgY2hpbGRfcHJvY2VzczsKK3N0cnVjdCByZXBvc2l0b3J5Oworc3RydWN0IGpzb25fd3JpdGVyOworCisvKgorICogRnVuY3Rpb24gcHJvdG90eXBlcyBmb3IgYSBUUkFDRTIgInRhcmdldCIgdnRhYmxlLgorICovCisKK3R5cGVkZWYgaW50KHRyMl90Z3RfaW5pdF90KSh2b2lkKTsKK3R5cGVkZWYgdm9pZCh0cjJfdGd0X3Rlcm1fdCkodm9pZCk7CisKK3R5cGVkZWYgdm9pZCh0cjJfdGd0X2V2dF92ZXJzaW9uX2ZsX3QpKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lKTsKKwordHlwZWRlZiB2b2lkKHRyMl90Z3RfZXZ0X3N0YXJ0X2ZsX3QpKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCSAgICAgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCQkgICAgIGNvbnN0IGNoYXIgKiphcmd2KTsKK3R5cGVkZWYgdm9pZCh0cjJfdGd0X2V2dF9leGl0X2ZsX3QpKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCSAgICB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLCBpbnQgY29kZSk7Cit0eXBlZGVmIHZvaWQodHIyX3RndF9ldnRfc2lnbmFsX3QpKHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsIGludCBzaWdubyk7Cit0eXBlZGVmIHZvaWQodHIyX3RndF9ldnRfYXRleGl0X3QpKHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsIGludCBjb2RlKTsKKwordHlwZWRlZiB2b2lkKHRyMl90Z3RfZXZ0X2Vycm9yX3ZhX2ZsX3QpKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCQljb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXApOworCit0eXBlZGVmIHZvaWQodHIyX3RndF9ldnRfY29tbWFuZF9wYXRoX2ZsX3QpKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCQkgICAgY29uc3QgY2hhciAqY29tbWFuZF9wYXRoKTsKK3R5cGVkZWYgdm9pZCh0cjJfdGd0X2V2dF9jb21tYW5kX25hbWVfZmxfdCkoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkJCSAgICBjb25zdCBjaGFyICpuYW1lLAorCQkJCQkgICAgY29uc3QgY2hhciAqaGllcmFyY2h5KTsKK3R5cGVkZWYgdm9pZCh0cjJfdGd0X2V2dF9jb21tYW5kX21vZGVfZmxfdCkoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkJCSAgICBjb25zdCBjaGFyICptb2RlKTsKKwordHlwZWRlZiB2b2lkKHRyMl90Z3RfZXZ0X2FsaWFzX2ZsX3QpKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCSAgICAgY29uc3QgY2hhciAqYWxpYXMsIGNvbnN0IGNoYXIgKiphcmd2KTsKKwordHlwZWRlZiB2b2lkKHRyMl90Z3RfZXZ0X2NoaWxkX3N0YXJ0X2ZsX3QpKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCQkgICB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJCQkgICBjb25zdCBzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqY21kKTsKK3R5cGVkZWYgdm9pZCh0cjJfdGd0X2V2dF9jaGlsZF9leGl0X2ZsX3QpKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCQkgIHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsIGludCBjaWQsCisJCQkJCSAgaW50IHBpZCwgaW50IGNvZGUsCisJCQkJCSAgdWludDY0X3QgdXNfZWxhcHNlZF9jaGlsZCk7CisKK3R5cGVkZWYgdm9pZCh0cjJfdGd0X2V2dF90aHJlYWRfc3RhcnRfZmxfdCkoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkJCSAgICB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlKTsKK3R5cGVkZWYgdm9pZCh0cjJfdGd0X2V2dF90aHJlYWRfZXhpdF9mbF90KShjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCQkJICAgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCQkJICAgdWludDY0X3QgdXNfZWxhcHNlZF90aHJlYWQpOworCit0eXBlZGVmIHZvaWQodHIyX3RndF9ldnRfZXhlY19mbF90KShjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCQkgICAgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwgaW50IGV4ZWNfaWQsCisJCQkJICAgIGNvbnN0IGNoYXIgKmV4ZSwgY29uc3QgY2hhciAqKmFyZ3YpOwordHlwZWRlZiB2b2lkKHRyMl90Z3RfZXZ0X2V4ZWNfcmVzdWx0X2ZsX3QpKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCQkgICB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJCQkgICBpbnQgZXhlY19pZCwgaW50IGNvZGUpOworCit0eXBlZGVmIHZvaWQodHIyX3RndF9ldnRfcGFyYW1fZmxfdCkoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkJICAgICBjb25zdCBjaGFyICpwYXJhbSwgY29uc3QgY2hhciAqdmFsdWUpOworCit0eXBlZGVmIHZvaWQodHIyX3RndF9ldnRfcmVwb19mbF90KShjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCQkgICAgY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8pOworCit0eXBlZGVmIHZvaWQodHIyX3RndF9ldnRfcmVnaW9uX2VudGVyX3ByaW50Zl92YV9mbF90KSgKKwljb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwljb25zdCBjaGFyICpjYXRlZ29yeSwgY29uc3QgY2hhciAqbGFiZWwsIGNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCWNvbnN0IGNoYXIgKmZtdCwgdmFfbGlzdCBhcCk7Cit0eXBlZGVmIHZvaWQodHIyX3RndF9ldnRfcmVnaW9uX2xlYXZlX3ByaW50Zl92YV9mbF90KSgKKwljb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwl1aW50NjRfdCB1c19lbGFwc2VkX3JlZ2lvbiwgY29uc3QgY2hhciAqY2F0ZWdvcnksIGNvbnN0IGNoYXIgKmxhYmVsLAorCWNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLCBjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXApOworCit0eXBlZGVmIHZvaWQodHIyX3RndF9ldnRfZGF0YV9mbF90KShjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCQkgICAgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCQkgICAgdWludDY0X3QgdXNfZWxhcHNlZF9yZWdpb24sCisJCQkJICAgIGNvbnN0IGNoYXIgKmNhdGVnb3J5LAorCQkJCSAgICBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCQkgICAgY29uc3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICp2YWx1ZSk7Cit0eXBlZGVmIHZvaWQodHIyX3RndF9ldnRfZGF0YV9qc29uX2ZsX3QpKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCQkgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCQkJIHVpbnQ2NF90IHVzX2VsYXBzZWRfcmVnaW9uLAorCQkJCQkgY29uc3QgY2hhciAqY2F0ZWdvcnksCisJCQkJCSBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCQkJIGNvbnN0IGNoYXIgKmtleSwKKwkJCQkJIGNvbnN0IHN0cnVjdCBqc29uX3dyaXRlciAqdmFsdWUpOworCit0eXBlZGVmIHZvaWQodHIyX3RndF9ldnRfcHJpbnRmX3ZhX2ZsX3QpKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCQkgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCQkJIGNvbnN0IGNoYXIgKmZtdCwgdmFfbGlzdCBhcCk7CisKKy8qCisgKiAidnRhYmxlIiBmb3IgYSBUUkFDRTIgdGFyZ2V0LiAgVXNlIE5VTEwgaWYgYSB0YXJnZXQgZG9lcyBub3Qgd2FudAorICogdG8gZW1pdCB0aGF0IG1lc3NhZ2UuCisgKi8KKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KK3N0cnVjdCB0cjJfdGd0IHsKKwlzdHJ1Y3QgdHIyX2RzdCAgICAgICAgICAgICAgICAgICAgICAgICAgKnBkc3Q7CisKKwl0cjJfdGd0X2luaXRfdCAgICAgICAgICAgICAgICAgICAgICAgICAgKnBmbl9pbml0OworCXRyMl90Z3RfdGVybV90ICAgICAgICAgICAgICAgICAgICAgICAgICAqcGZuX3Rlcm07CisKKwl0cjJfdGd0X2V2dF92ZXJzaW9uX2ZsX3QgICAgICAgICAgICAgICAgKnBmbl92ZXJzaW9uX2ZsOworCXRyMl90Z3RfZXZ0X3N0YXJ0X2ZsX3QgICAgICAgICAgICAgICAgICAqcGZuX3N0YXJ0X2ZsOworCXRyMl90Z3RfZXZ0X2V4aXRfZmxfdCAgICAgICAgICAgICAgICAgICAqcGZuX2V4aXRfZmw7CisJdHIyX3RndF9ldnRfc2lnbmFsX3QgICAgICAgICAgICAgICAgICAgICpwZm5fc2lnbmFsOworCXRyMl90Z3RfZXZ0X2F0ZXhpdF90ICAgICAgICAgICAgICAgICAgICAqcGZuX2F0ZXhpdDsKKwl0cjJfdGd0X2V2dF9lcnJvcl92YV9mbF90ICAgICAgICAgICAgICAgKnBmbl9lcnJvcl92YV9mbDsKKwl0cjJfdGd0X2V2dF9jb21tYW5kX3BhdGhfZmxfdCAgICAgICAgICAgKnBmbl9jb21tYW5kX3BhdGhfZmw7CisJdHIyX3RndF9ldnRfY29tbWFuZF9uYW1lX2ZsX3QgICAgICAgICAgICpwZm5fY29tbWFuZF9uYW1lX2ZsOworCXRyMl90Z3RfZXZ0X2NvbW1hbmRfbW9kZV9mbF90ICAgICAgICAgICAqcGZuX2NvbW1hbmRfbW9kZV9mbDsKKwl0cjJfdGd0X2V2dF9hbGlhc19mbF90ICAgICAgICAgICAgICAgICAgKnBmbl9hbGlhc19mbDsKKwl0cjJfdGd0X2V2dF9jaGlsZF9zdGFydF9mbF90ICAgICAgICAgICAgKnBmbl9jaGlsZF9zdGFydF9mbDsKKwl0cjJfdGd0X2V2dF9jaGlsZF9leGl0X2ZsX3QgICAgICAgICAgICAgKnBmbl9jaGlsZF9leGl0X2ZsOworCXRyMl90Z3RfZXZ0X3RocmVhZF9zdGFydF9mbF90ICAgICAgICAgICAqcGZuX3RocmVhZF9zdGFydF9mbDsKKwl0cjJfdGd0X2V2dF90aHJlYWRfZXhpdF9mbF90ICAgICAgICAgICAgKnBmbl90aHJlYWRfZXhpdF9mbDsKKwl0cjJfdGd0X2V2dF9leGVjX2ZsX3QgICAgICAgICAgICAgICAgICAgKnBmbl9leGVjX2ZsOworCXRyMl90Z3RfZXZ0X2V4ZWNfcmVzdWx0X2ZsX3QgICAgICAgICAgICAqcGZuX2V4ZWNfcmVzdWx0X2ZsOworCXRyMl90Z3RfZXZ0X3BhcmFtX2ZsX3QgICAgICAgICAgICAgICAgICAqcGZuX3BhcmFtX2ZsOworCXRyMl90Z3RfZXZ0X3JlcG9fZmxfdCAgICAgICAgICAgICAgICAgICAqcGZuX3JlcG9fZmw7CisJdHIyX3RndF9ldnRfcmVnaW9uX2VudGVyX3ByaW50Zl92YV9mbF90ICpwZm5fcmVnaW9uX2VudGVyX3ByaW50Zl92YV9mbDsKKwl0cjJfdGd0X2V2dF9yZWdpb25fbGVhdmVfcHJpbnRmX3ZhX2ZsX3QgKnBmbl9yZWdpb25fbGVhdmVfcHJpbnRmX3ZhX2ZsOworCXRyMl90Z3RfZXZ0X2RhdGFfZmxfdCAgICAgICAgICAgICAgICAgICAqcGZuX2RhdGFfZmw7CisJdHIyX3RndF9ldnRfZGF0YV9qc29uX2ZsX3QgICAgICAgICAgICAgICpwZm5fZGF0YV9qc29uX2ZsOworCXRyMl90Z3RfZXZ0X3ByaW50Zl92YV9mbF90ICAgICAgICAgICAgICAqcGZuX3ByaW50Zl92YV9mbDsKK307CisvKiBjbGFuZy1mb3JtYXQgb24gKi8KKworZXh0ZXJuIHN0cnVjdCB0cjJfdGd0IHRyMl90Z3RfZXZlbnQ7CitleHRlcm4gc3RydWN0IHRyMl90Z3QgdHIyX3RndF9ub3JtYWw7CitleHRlcm4gc3RydWN0IHRyMl90Z3QgdHIyX3RndF9wZXJmOworCisjZW5kaWYgLyogVFIyX1RHVF9IICovCmRpZmYgLS1naXQgYS90cmFjZTIvdHIyX3RndF9ldmVudC5jIGIvdHJhY2UyL3RyMl90Z3RfZXZlbnQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MzUzZThhCi0tLSAvZGV2L251bGwKKysrIGIvdHJhY2UyL3RyMl90Z3RfZXZlbnQuYwpAQCAtMCwwICsxLDYwMyBAQAorI2luY2x1ZGUgImNhY2hlLmgiCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAianNvbi13cml0ZXIuaCIKKyNpbmNsdWRlICJydW4tY29tbWFuZC5oIgorI2luY2x1ZGUgInZlcnNpb24uaCIKKyNpbmNsdWRlICJ0cmFjZTIvdHIyX2RzdC5oIgorI2luY2x1ZGUgInRyYWNlMi90cjJfdGJ1Zi5oIgorI2luY2x1ZGUgInRyYWNlMi90cjJfc2lkLmgiCisjaW5jbHVkZSAidHJhY2UyL3RyMl9zeXNlbnYuaCIKKyNpbmNsdWRlICJ0cmFjZTIvdHIyX3RndC5oIgorI2luY2x1ZGUgInRyYWNlMi90cjJfdGxzLmgiCisKK3N0YXRpYyBzdHJ1Y3QgdHIyX2RzdCB0cjJkc3RfZXZlbnQgPSB7IFRSMl9TWVNFTlZfRVZFTlQsIDAsIDAsIDAsIDAgfTsKKworLyoKKyAqIFRoZSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgSlNPTiBkYXRhIGdlbmVyYXRlZCBieSB0aGUgRVZFTlQgdGFyZ2V0IGluIHRoaXMKKyAqIHNvdXJjZSBmaWxlLiBUaGUgdmVyc2lvbiBzaG91bGQgYmUgaW5jcmVtZW50ZWQgaWYgbmV3IGV2ZW50IHR5cGVzIGFyZSBhZGRlZCwKKyAqIGlmIGV4aXN0aW5nIGZpZWxkcyBhcmUgcmVtb3ZlZCwgb3IgaWYgdGhlcmUgYXJlIHNpZ25pZmljYW50IGNoYW5nZXMgaW4KKyAqIGludGVycHJldGF0aW9uIG9mIGV4aXN0aW5nIGV2ZW50cyBvciBmaWVsZHMuIFNtYWxsZXIgY2hhbmdlcywgc3VjaCBhcyBhZGRpbmcKKyAqIGEgbmV3IGZpZWxkIHRvIGFuIGV4aXN0aW5nIGV2ZW50LCBkbyBub3QgcmVxdWlyZSBhbiBpbmNyZW1lbnQgdG8gdGhlIEVWRU5UCisgKiBmb3JtYXQgdmVyc2lvbi4KKyAqLworI2RlZmluZSBUUjJfRVZFTlRfVkVSU0lPTiAiMiIKKworLyoKKyAqIFJlZ2lvbiBuZXN0aW5nIGxpbWl0IGZvciBtZXNzYWdlcyB3cml0dGVuIHRvIHRoZSBldmVudCB0YXJnZXQuCisgKgorICogVGhlICJyZWdpb25fZW50ZXIiIGFuZCAicmVnaW9uX2xlYXZlIiBtZXNzYWdlcyAoZXNwZWNpYWxseSByZWN1cnNpdmUKKyAqIG1lc3NhZ2VzIHN1Y2ggYXMgdGhvc2UgcHJvZHVjZWQgd2hpbGUgZGl2aW5nIHRoZSB3b3JrdHJlZSBvciBpbmRleCkKKyAqIGFyZSBwcmltYXJpbHkgaW50ZW5kZWQgZm9yIHRoZSBwZXJmb3JtYW5jZSB0YXJnZXQgZHVyaW5nIGRlYnVnZ2luZy4KKyAqCisgKiBTb21lIG9mIHRoZSBvdXRlci1tb3N0IG1lc3NhZ2VzLCBob3dldmVyLCBtYXkgYmUgb2YgaW50ZXJlc3QgdG8gdGhlCisgKiBldmVudCB0YXJnZXQuICBVc2UgdGhlIFRSMl9TWVNFTlZfRVZFTlRfTkVTVElORyBzZXR0aW5nIHRvIGluY3JlYXNlCisgKiByZWdpb24gZGV0YWlscyBpbiB0aGUgZXZlbnQgdGFyZ2V0LgorICovCitzdGF0aWMgaW50IHRyMmVudl9ldmVudF9tYXhfbmVzdGluZ19sZXZlbHMgPSAyOworCisvKgorICogVXNlIHRoZSBUUjJfU1lTRU5WX0VWRU5UX0JSSUVGIHRvIG9taXQgdGhlIDx0aW1lPiwgPGZpbGU+LCBhbmQKKyAqIDxsaW5lPiBmaWVsZHMgZnJvbSBtb3N0IGV2ZW50cy4KKyAqLworc3RhdGljIGludCB0cjJlbnZfZXZlbnRfYmVfYnJpZWY7CisKK3N0YXRpYyBpbnQgZm5faW5pdCh2b2lkKQoreworCWludCB3YW50ID0gdHIyX2RzdF90cmFjZV93YW50KCZ0cjJkc3RfZXZlbnQpOworCWludCBtYXhfbmVzdGluZzsKKwlpbnQgd2FudF9icmllZjsKKwljb25zdCBjaGFyICpuZXN0aW5nOworCWNvbnN0IGNoYXIgKmJyaWVmOworCisJaWYgKCF3YW50KQorCQlyZXR1cm4gd2FudDsKKworCW5lc3RpbmcgPSB0cjJfc3lzZW52X2dldChUUjJfU1lTRU5WX0VWRU5UX05FU1RJTkcpOworCWlmIChuZXN0aW5nICYmICpuZXN0aW5nICYmICgobWF4X25lc3RpbmcgPSBhdG9pKG5lc3RpbmcpKSA+IDApKQorCQl0cjJlbnZfZXZlbnRfbWF4X25lc3RpbmdfbGV2ZWxzID0gbWF4X25lc3Rpbmc7CisKKwlicmllZiA9IHRyMl9zeXNlbnZfZ2V0KFRSMl9TWVNFTlZfRVZFTlRfQlJJRUYpOworCWlmIChicmllZiAmJiAqYnJpZWYgJiYKKwkgICAgKCh3YW50X2JyaWVmID0gZ2l0X3BhcnNlX21heWJlX2Jvb2woYnJpZWYpKSAhPSAtMSkpCisJCXRyMmVudl9ldmVudF9iZV9icmllZiA9IHdhbnRfYnJpZWY7CisKKwlyZXR1cm4gd2FudDsKK30KKworc3RhdGljIHZvaWQgZm5fdGVybSh2b2lkKQoreworCXRyMl9kc3RfdHJhY2VfZGlzYWJsZSgmdHIyZHN0X2V2ZW50KTsKK30KKworLyoKKyAqIEFwcGVuZCBjb21tb24ga2V5LXZhbHVlIHBhaXJzIHRvIHRoZSBjdXJyZW50bHkgb3BlbiBKU09OIG9iamVjdC4KKyAqICAgICAiZXZlbnQ6IjxldmVudF9uYW1lPiIKKyAqICAgICAgInNpZCI6IjxzaWQ+IgorICogICAidGhyZWFkIjoiPHRocmVhZF9uYW1lPiIKKyAqICAgICAidGltZSI6Ijx0aW1lPiIKKyAqICAgICAiZmlsZSI6IjxmaWxlbmFtZT4iCisgKiAgICAgImxpbmUiOjxsaW5lX251bWJlcj4KKyAqICAgICAicmVwbyI6PHJlcG9faWQ+CisgKi8KK3N0YXRpYyB2b2lkIGV2ZW50X2ZtdF9wcmVwYXJlKGNvbnN0IGNoYXIgKmV2ZW50X25hbWUsIGNvbnN0IGNoYXIgKmZpbGUsCisJCQkgICAgICBpbnQgbGluZSwgY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkgICAgICBzdHJ1Y3QganNvbl93cml0ZXIgKmp3KQoreworCXN0cnVjdCB0cjJ0bHNfdGhyZWFkX2N0eCAqY3R4ID0gdHIydGxzX2dldF9zZWxmKCk7CisJc3RydWN0IHRyMl90YnVmIHRiX25vdzsKKworCWp3X29iamVjdF9zdHJpbmcoancsICJldmVudCIsIGV2ZW50X25hbWUpOworCWp3X29iamVjdF9zdHJpbmcoancsICJzaWQiLCB0cjJfc2lkX2dldCgpKTsKKwlqd19vYmplY3Rfc3RyaW5nKGp3LCAidGhyZWFkIiwgY3R4LT50aHJlYWRfbmFtZS5idWYpOworCisJLyoKKwkgKiBJbiBicmllZiBtb2RlLCBvbmx5IGVtaXQgPHRpbWU+IG9uIHRoZXNlIDIgZXZlbnQgdHlwZXMuCisJICovCisJaWYgKCF0cjJlbnZfZXZlbnRfYmVfYnJpZWYgfHwgIXN0cmNtcChldmVudF9uYW1lLCAidmVyc2lvbiIpIHx8CisJICAgICFzdHJjbXAoZXZlbnRfbmFtZSwgImF0ZXhpdCIpKSB7CisJCXRyMl90YnVmX3V0Y19kYXRldGltZV9leHRlbmRlZCgmdGJfbm93KTsKKwkJandfb2JqZWN0X3N0cmluZyhqdywgInRpbWUiLCB0Yl9ub3cuYnVmKTsKKwl9CisKKwlpZiAoIXRyMmVudl9ldmVudF9iZV9icmllZiAmJiBmaWxlICYmICpmaWxlKSB7CisJCWp3X29iamVjdF9zdHJpbmcoancsICJmaWxlIiwgZmlsZSk7CisJCWp3X29iamVjdF9pbnRtYXgoancsICJsaW5lIiwgbGluZSk7CisJfQorCisJaWYgKHJlcG8pCisJCWp3X29iamVjdF9pbnRtYXgoancsICJyZXBvIiwgcmVwby0+dHJhY2UyX3JlcG9faWQpOworfQorCitzdGF0aWMgdm9pZCBmbl90b29fbWFueV9maWxlc19mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSkKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gInRvb19tYW55X2ZpbGVzIjsKKwlzdHJ1Y3QganNvbl93cml0ZXIgancgPSBKU09OX1dSSVRFUl9JTklUOworCisJandfb2JqZWN0X2JlZ2luKCZqdywgMCk7CisJZXZlbnRfZm10X3ByZXBhcmUoZXZlbnRfbmFtZSwgZmlsZSwgbGluZSwgTlVMTCwgJmp3KTsKKwlqd19lbmQoJmp3KTsKKworCXRyMl9kc3Rfd3JpdGVfbGluZSgmdHIyZHN0X2V2ZW50LCAmancuanNvbik7CisJandfcmVsZWFzZSgmancpOworfQorCitzdGF0aWMgdm9pZCBmbl92ZXJzaW9uX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAidmVyc2lvbiI7CisJc3RydWN0IGpzb25fd3JpdGVyIGp3ID0gSlNPTl9XUklURVJfSU5JVDsKKworCWp3X29iamVjdF9iZWdpbigmancsIDApOworCWV2ZW50X2ZtdF9wcmVwYXJlKGV2ZW50X25hbWUsIGZpbGUsIGxpbmUsIE5VTEwsICZqdyk7CisJandfb2JqZWN0X3N0cmluZygmancsICJldnQiLCBUUjJfRVZFTlRfVkVSU0lPTik7CisJandfb2JqZWN0X3N0cmluZygmancsICJleGUiLCBnaXRfdmVyc2lvbl9zdHJpbmcpOworCWp3X2VuZCgmancpOworCisJdHIyX2RzdF93cml0ZV9saW5lKCZ0cjJkc3RfZXZlbnQsICZqdy5qc29uKTsKKwlqd19yZWxlYXNlKCZqdyk7CisKKwlpZiAodHIyZHN0X2V2ZW50LnRvb19tYW55X2ZpbGVzKQorCQlmbl90b29fbWFueV9maWxlc19mbChmaWxlLCBsaW5lKTsKK30KKworc3RhdGljIHZvaWQgZm5fc3RhcnRfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQl1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gInN0YXJ0IjsKKwlzdHJ1Y3QganNvbl93cml0ZXIgancgPSBKU09OX1dSSVRFUl9JTklUOworCWRvdWJsZSB0X2FicyA9IChkb3VibGUpdXNfZWxhcHNlZF9hYnNvbHV0ZSAvIDEwMDAwMDAuMDsKKworCWp3X29iamVjdF9iZWdpbigmancsIDApOworCWV2ZW50X2ZtdF9wcmVwYXJlKGV2ZW50X25hbWUsIGZpbGUsIGxpbmUsIE5VTEwsICZqdyk7CisJandfb2JqZWN0X2RvdWJsZSgmancsICJ0X2FicyIsIDYsIHRfYWJzKTsKKwlqd19vYmplY3RfaW5saW5lX2JlZ2luX2FycmF5KCZqdywgImFyZ3YiKTsKKwlqd19hcnJheV9hcmd2KCZqdywgYXJndik7CisJandfZW5kKCZqdyk7CisJandfZW5kKCZqdyk7CisKKwl0cjJfZHN0X3dyaXRlX2xpbmUoJnRyMmRzdF9ldmVudCwgJmp3Lmpzb24pOworCWp3X3JlbGVhc2UoJmp3KTsKK30KKworc3RhdGljIHZvaWQgZm5fZXhpdF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJICAgICAgIGludCBjb2RlKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAiZXhpdCI7CisJc3RydWN0IGpzb25fd3JpdGVyIGp3ID0gSlNPTl9XUklURVJfSU5JVDsKKwlkb3VibGUgdF9hYnMgPSAoZG91YmxlKXVzX2VsYXBzZWRfYWJzb2x1dGUgLyAxMDAwMDAwLjA7CisKKwlqd19vYmplY3RfYmVnaW4oJmp3LCAwKTsKKwlldmVudF9mbXRfcHJlcGFyZShldmVudF9uYW1lLCBmaWxlLCBsaW5lLCBOVUxMLCAmancpOworCWp3X29iamVjdF9kb3VibGUoJmp3LCAidF9hYnMiLCA2LCB0X2Ficyk7CisJandfb2JqZWN0X2ludG1heCgmancsICJjb2RlIiwgY29kZSk7CisJandfZW5kKCZqdyk7CisKKwl0cjJfZHN0X3dyaXRlX2xpbmUoJnRyMmRzdF9ldmVudCwgJmp3Lmpzb24pOworCWp3X3JlbGVhc2UoJmp3KTsKK30KKworc3RhdGljIHZvaWQgZm5fc2lnbmFsKHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsIGludCBzaWdubykKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gInNpZ25hbCI7CisJc3RydWN0IGpzb25fd3JpdGVyIGp3ID0gSlNPTl9XUklURVJfSU5JVDsKKwlkb3VibGUgdF9hYnMgPSAoZG91YmxlKXVzX2VsYXBzZWRfYWJzb2x1dGUgLyAxMDAwMDAwLjA7CisKKwlqd19vYmplY3RfYmVnaW4oJmp3LCAwKTsKKwlldmVudF9mbXRfcHJlcGFyZShldmVudF9uYW1lLCBfX0ZJTEVfXywgX19MSU5FX18sIE5VTEwsICZqdyk7CisJandfb2JqZWN0X2RvdWJsZSgmancsICJ0X2FicyIsIDYsIHRfYWJzKTsKKwlqd19vYmplY3RfaW50bWF4KCZqdywgInNpZ25vIiwgc2lnbm8pOworCWp3X2VuZCgmancpOworCisJdHIyX2RzdF93cml0ZV9saW5lKCZ0cjJkc3RfZXZlbnQsICZqdy5qc29uKTsKKwlqd19yZWxlYXNlKCZqdyk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2F0ZXhpdCh1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLCBpbnQgY29kZSkKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gImF0ZXhpdCI7CisJc3RydWN0IGpzb25fd3JpdGVyIGp3ID0gSlNPTl9XUklURVJfSU5JVDsKKwlkb3VibGUgdF9hYnMgPSAoZG91YmxlKXVzX2VsYXBzZWRfYWJzb2x1dGUgLyAxMDAwMDAwLjA7CisKKwlqd19vYmplY3RfYmVnaW4oJmp3LCAwKTsKKwlldmVudF9mbXRfcHJlcGFyZShldmVudF9uYW1lLCBfX0ZJTEVfXywgX19MSU5FX18sIE5VTEwsICZqdyk7CisJandfb2JqZWN0X2RvdWJsZSgmancsICJ0X2FicyIsIDYsIHRfYWJzKTsKKwlqd19vYmplY3RfaW50bWF4KCZqdywgImNvZGUiLCBjb2RlKTsKKwlqd19lbmQoJmp3KTsKKworCXRyMl9kc3Rfd3JpdGVfbGluZSgmdHIyZHN0X2V2ZW50LCAmancuanNvbik7CisJandfcmVsZWFzZSgmancpOworfQorCitzdGF0aWMgdm9pZCBtYXliZV9hZGRfc3RyaW5nX3ZhKHN0cnVjdCBqc29uX3dyaXRlciAqancsIGNvbnN0IGNoYXIgKmZpZWxkX25hbWUsCisJCQkJY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFwKQoreworCWlmIChmbXQgJiYgKmZtdCkgeworCQl2YV9saXN0IGNvcHlfYXA7CisJCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CisKKwkJdmFfY29weShjb3B5X2FwLCBhcCk7CisJCXN0cmJ1Zl92YWRkZigmYnVmLCBmbXQsIGNvcHlfYXApOworCQl2YV9lbmQoY29weV9hcCk7CisKKwkJandfb2JqZWN0X3N0cmluZyhqdywgZmllbGRfbmFtZSwgYnVmLmJ1Zik7CisJCXN0cmJ1Zl9yZWxlYXNlKCZidWYpOworCQlyZXR1cm47CisJfQorfQorCitzdGF0aWMgdm9pZCBmbl9lcnJvcl92YV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqZm10LAorCQkJICAgdmFfbGlzdCBhcCkKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gImVycm9yIjsKKwlzdHJ1Y3QganNvbl93cml0ZXIgancgPSBKU09OX1dSSVRFUl9JTklUOworCisJandfb2JqZWN0X2JlZ2luKCZqdywgMCk7CisJZXZlbnRfZm10X3ByZXBhcmUoZXZlbnRfbmFtZSwgZmlsZSwgbGluZSwgTlVMTCwgJmp3KTsKKwltYXliZV9hZGRfc3RyaW5nX3ZhKCZqdywgIm1zZyIsIGZtdCwgYXApOworCS8qCisJICogQWxzbyBlbWl0IHRoZSBmb3JtYXQgc3RyaW5nIGFzIGEgZmllbGQgaW4gY2FzZQorCSAqIHBvc3QtcHJvY2Vzc29ycyB3YW50IHRvIGFnZ3JlZ2F0ZSBjb21tb24gZXJyb3IKKwkgKiBtZXNzYWdlcyBieSB0eXBlIHdpdGhvdXQgYXJndW1lbnQgZmllbGRzIChzdWNoCisJICogYXMgcGF0aG5hbWVzIG9yIGJyYW5jaCBuYW1lcykgY2x1dHRlcmluZyBpdCB1cC4KKwkgKi8KKwlpZiAoZm10ICYmICpmbXQpCisJCWp3X29iamVjdF9zdHJpbmcoJmp3LCAiZm10IiwgZm10KTsKKwlqd19lbmQoJmp3KTsKKworCXRyMl9kc3Rfd3JpdGVfbGluZSgmdHIyZHN0X2V2ZW50LCAmancuanNvbik7CisJandfcmVsZWFzZSgmancpOworfQorCitzdGF0aWMgdm9pZCBmbl9jb21tYW5kX3BhdGhfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKnBhdGhuYW1lKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAiY21kX3BhdGgiOworCXN0cnVjdCBqc29uX3dyaXRlciBqdyA9IEpTT05fV1JJVEVSX0lOSVQ7CisKKwlqd19vYmplY3RfYmVnaW4oJmp3LCAwKTsKKwlldmVudF9mbXRfcHJlcGFyZShldmVudF9uYW1lLCBmaWxlLCBsaW5lLCBOVUxMLCAmancpOworCWp3X29iamVjdF9zdHJpbmcoJmp3LCAicGF0aCIsIHBhdGhuYW1lKTsKKwlqd19lbmQoJmp3KTsKKworCXRyMl9kc3Rfd3JpdGVfbGluZSgmdHIyZHN0X2V2ZW50LCAmancuanNvbik7CisJandfcmVsZWFzZSgmancpOworfQorCitzdGF0aWMgdm9pZCBmbl9jb21tYW5kX25hbWVfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKm5hbWUsCisJCQkgICAgICAgY29uc3QgY2hhciAqaGllcmFyY2h5KQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAiY21kX25hbWUiOworCXN0cnVjdCBqc29uX3dyaXRlciBqdyA9IEpTT05fV1JJVEVSX0lOSVQ7CisKKwlqd19vYmplY3RfYmVnaW4oJmp3LCAwKTsKKwlldmVudF9mbXRfcHJlcGFyZShldmVudF9uYW1lLCBmaWxlLCBsaW5lLCBOVUxMLCAmancpOworCWp3X29iamVjdF9zdHJpbmcoJmp3LCAibmFtZSIsIG5hbWUpOworCWlmIChoaWVyYXJjaHkgJiYgKmhpZXJhcmNoeSkKKwkJandfb2JqZWN0X3N0cmluZygmancsICJoaWVyYXJjaHkiLCBoaWVyYXJjaHkpOworCWp3X2VuZCgmancpOworCisJdHIyX2RzdF93cml0ZV9saW5lKCZ0cjJkc3RfZXZlbnQsICZqdy5qc29uKTsKKwlqd19yZWxlYXNlKCZqdyk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2NvbW1hbmRfbW9kZV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqbW9kZSkKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gImNtZF9tb2RlIjsKKwlzdHJ1Y3QganNvbl93cml0ZXIgancgPSBKU09OX1dSSVRFUl9JTklUOworCisJandfb2JqZWN0X2JlZ2luKCZqdywgMCk7CisJZXZlbnRfZm10X3ByZXBhcmUoZXZlbnRfbmFtZSwgZmlsZSwgbGluZSwgTlVMTCwgJmp3KTsKKwlqd19vYmplY3Rfc3RyaW5nKCZqdywgIm5hbWUiLCBtb2RlKTsKKwlqd19lbmQoJmp3KTsKKworCXRyMl9kc3Rfd3JpdGVfbGluZSgmdHIyZHN0X2V2ZW50LCAmancuanNvbik7CisJandfcmVsZWFzZSgmancpOworfQorCitzdGF0aWMgdm9pZCBmbl9hbGlhc19mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqYWxpYXMsCisJCQljb25zdCBjaGFyICoqYXJndikKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gImFsaWFzIjsKKwlzdHJ1Y3QganNvbl93cml0ZXIgancgPSBKU09OX1dSSVRFUl9JTklUOworCisJandfb2JqZWN0X2JlZ2luKCZqdywgMCk7CisJZXZlbnRfZm10X3ByZXBhcmUoZXZlbnRfbmFtZSwgZmlsZSwgbGluZSwgTlVMTCwgJmp3KTsKKwlqd19vYmplY3Rfc3RyaW5nKCZqdywgImFsaWFzIiwgYWxpYXMpOworCWp3X29iamVjdF9pbmxpbmVfYmVnaW5fYXJyYXkoJmp3LCAiYXJndiIpOworCWp3X2FycmF5X2FyZ3YoJmp3LCBhcmd2KTsKKwlqd19lbmQoJmp3KTsKKwlqd19lbmQoJmp3KTsKKworCXRyMl9kc3Rfd3JpdGVfbGluZSgmdHIyZHN0X2V2ZW50LCAmancuanNvbik7CisJandfcmVsZWFzZSgmancpOworfQorCitzdGF0aWMgdm9pZCBmbl9jaGlsZF9zdGFydF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCSAgICAgIHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCQkgICAgICBjb25zdCBzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqY21kKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAiY2hpbGRfc3RhcnQiOworCXN0cnVjdCBqc29uX3dyaXRlciBqdyA9IEpTT05fV1JJVEVSX0lOSVQ7CisKKwlqd19vYmplY3RfYmVnaW4oJmp3LCAwKTsKKwlldmVudF9mbXRfcHJlcGFyZShldmVudF9uYW1lLCBmaWxlLCBsaW5lLCBOVUxMLCAmancpOworCWp3X29iamVjdF9pbnRtYXgoJmp3LCAiY2hpbGRfaWQiLCBjbWQtPnRyYWNlMl9jaGlsZF9pZCk7CisJaWYgKGNtZC0+dHJhY2UyX2hvb2tfbmFtZSkgeworCQlqd19vYmplY3Rfc3RyaW5nKCZqdywgImNoaWxkX2NsYXNzIiwgImhvb2siKTsKKwkJandfb2JqZWN0X3N0cmluZygmancsICJob29rX25hbWUiLCBjbWQtPnRyYWNlMl9ob29rX25hbWUpOworCX0gZWxzZSB7CisJCWNvbnN0IGNoYXIgKmNoaWxkX2NsYXNzID0KKwkJCWNtZC0+dHJhY2UyX2NoaWxkX2NsYXNzID8gY21kLT50cmFjZTJfY2hpbGRfY2xhc3MgOiAiPyI7CisJCWp3X29iamVjdF9zdHJpbmcoJmp3LCAiY2hpbGRfY2xhc3MiLCBjaGlsZF9jbGFzcyk7CisJfQorCWlmIChjbWQtPmRpcikKKwkJandfb2JqZWN0X3N0cmluZygmancsICJjZCIsIGNtZC0+ZGlyKTsKKwlqd19vYmplY3RfYm9vbCgmancsICJ1c2Vfc2hlbGwiLCBjbWQtPnVzZV9zaGVsbCk7CisJandfb2JqZWN0X2lubGluZV9iZWdpbl9hcnJheSgmancsICJhcmd2Iik7CisJaWYgKGNtZC0+Z2l0X2NtZCkKKwkJandfYXJyYXlfc3RyaW5nKCZqdywgImdpdCIpOworCWp3X2FycmF5X2FyZ3YoJmp3LCBjbWQtPmFyZ3YpOworCWp3X2VuZCgmancpOworCWp3X2VuZCgmancpOworCisJdHIyX2RzdF93cml0ZV9saW5lKCZ0cjJkc3RfZXZlbnQsICZqdy5qc29uKTsKKwlqd19yZWxlYXNlKCZqdyk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2NoaWxkX2V4aXRfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkgICAgIHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsIGludCBjaWQsIGludCBwaWQsCisJCQkgICAgIGludCBjb2RlLCB1aW50NjRfdCB1c19lbGFwc2VkX2NoaWxkKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAiY2hpbGRfZXhpdCI7CisJc3RydWN0IGpzb25fd3JpdGVyIGp3ID0gSlNPTl9XUklURVJfSU5JVDsKKwlkb3VibGUgdF9yZWwgPSAoZG91YmxlKXVzX2VsYXBzZWRfY2hpbGQgLyAxMDAwMDAwLjA7CisKKwlqd19vYmplY3RfYmVnaW4oJmp3LCAwKTsKKwlldmVudF9mbXRfcHJlcGFyZShldmVudF9uYW1lLCBmaWxlLCBsaW5lLCBOVUxMLCAmancpOworCWp3X29iamVjdF9pbnRtYXgoJmp3LCAiY2hpbGRfaWQiLCBjaWQpOworCWp3X29iamVjdF9pbnRtYXgoJmp3LCAicGlkIiwgcGlkKTsKKwlqd19vYmplY3RfaW50bWF4KCZqdywgImNvZGUiLCBjb2RlKTsKKwlqd19vYmplY3RfZG91YmxlKCZqdywgInRfcmVsIiwgNiwgdF9yZWwpOworCWp3X2VuZCgmancpOworCisJdHIyX2RzdF93cml0ZV9saW5lKCZ0cjJkc3RfZXZlbnQsICZqdy5qc29uKTsKKworCWp3X3JlbGVhc2UoJmp3KTsKK30KKworc3RhdGljIHZvaWQgZm5fdGhyZWFkX3N0YXJ0X2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJICAgICAgIHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUpCit7CisJY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJ0aHJlYWRfc3RhcnQiOworCXN0cnVjdCBqc29uX3dyaXRlciBqdyA9IEpTT05fV1JJVEVSX0lOSVQ7CisKKwlqd19vYmplY3RfYmVnaW4oJmp3LCAwKTsKKwlldmVudF9mbXRfcHJlcGFyZShldmVudF9uYW1lLCBmaWxlLCBsaW5lLCBOVUxMLCAmancpOworCWp3X2VuZCgmancpOworCisJdHIyX2RzdF93cml0ZV9saW5lKCZ0cjJkc3RfZXZlbnQsICZqdy5qc29uKTsKKwlqd19yZWxlYXNlKCZqdyk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX3RocmVhZF9leGl0X2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJICAgICAgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCSAgICAgIHVpbnQ2NF90IHVzX2VsYXBzZWRfdGhyZWFkKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAidGhyZWFkX2V4aXQiOworCXN0cnVjdCBqc29uX3dyaXRlciBqdyA9IEpTT05fV1JJVEVSX0lOSVQ7CisJZG91YmxlIHRfcmVsID0gKGRvdWJsZSl1c19lbGFwc2VkX3RocmVhZCAvIDEwMDAwMDAuMDsKKworCWp3X29iamVjdF9iZWdpbigmancsIDApOworCWV2ZW50X2ZtdF9wcmVwYXJlKGV2ZW50X25hbWUsIGZpbGUsIGxpbmUsIE5VTEwsICZqdyk7CisJandfb2JqZWN0X2RvdWJsZSgmancsICJ0X3JlbCIsIDYsIHRfcmVsKTsKKwlqd19lbmQoJmp3KTsKKworCXRyMl9kc3Rfd3JpdGVfbGluZSgmdHIyZHN0X2V2ZW50LCAmancuanNvbik7CisJandfcmVsZWFzZSgmancpOworfQorCitzdGF0aWMgdm9pZCBmbl9leGVjX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLAorCQkgICAgICAgaW50IGV4ZWNfaWQsIGNvbnN0IGNoYXIgKmV4ZSwgY29uc3QgY2hhciAqKmFyZ3YpCit7CisJY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJleGVjIjsKKwlzdHJ1Y3QganNvbl93cml0ZXIgancgPSBKU09OX1dSSVRFUl9JTklUOworCisJandfb2JqZWN0X2JlZ2luKCZqdywgMCk7CisJZXZlbnRfZm10X3ByZXBhcmUoZXZlbnRfbmFtZSwgZmlsZSwgbGluZSwgTlVMTCwgJmp3KTsKKwlqd19vYmplY3RfaW50bWF4KCZqdywgImV4ZWNfaWQiLCBleGVjX2lkKTsKKwlpZiAoZXhlKQorCQlqd19vYmplY3Rfc3RyaW5nKCZqdywgImV4ZSIsIGV4ZSk7CisJandfb2JqZWN0X2lubGluZV9iZWdpbl9hcnJheSgmancsICJhcmd2Iik7CisJandfYXJyYXlfYXJndigmancsIGFyZ3YpOworCWp3X2VuZCgmancpOworCWp3X2VuZCgmancpOworCisJdHIyX2RzdF93cml0ZV9saW5lKCZ0cjJkc3RfZXZlbnQsICZqdy5qc29uKTsKKwlqd19yZWxlYXNlKCZqdyk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2V4ZWNfcmVzdWx0X2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJICAgICAgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwgaW50IGV4ZWNfaWQsCisJCQkgICAgICBpbnQgY29kZSkKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gImV4ZWNfcmVzdWx0IjsKKwlzdHJ1Y3QganNvbl93cml0ZXIgancgPSBKU09OX1dSSVRFUl9JTklUOworCisJandfb2JqZWN0X2JlZ2luKCZqdywgMCk7CisJZXZlbnRfZm10X3ByZXBhcmUoZXZlbnRfbmFtZSwgZmlsZSwgbGluZSwgTlVMTCwgJmp3KTsKKwlqd19vYmplY3RfaW50bWF4KCZqdywgImV4ZWNfaWQiLCBleGVjX2lkKTsKKwlqd19vYmplY3RfaW50bWF4KCZqdywgImNvZGUiLCBjb2RlKTsKKwlqd19lbmQoJmp3KTsKKworCXRyMl9kc3Rfd3JpdGVfbGluZSgmdHIyZHN0X2V2ZW50LCAmancuanNvbik7CisJandfcmVsZWFzZSgmancpOworfQorCitzdGF0aWMgdm9pZCBmbl9wYXJhbV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqcGFyYW0sCisJCQljb25zdCBjaGFyICp2YWx1ZSkKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gImRlZl9wYXJhbSI7CisJc3RydWN0IGpzb25fd3JpdGVyIGp3ID0gSlNPTl9XUklURVJfSU5JVDsKKworCWp3X29iamVjdF9iZWdpbigmancsIDApOworCWV2ZW50X2ZtdF9wcmVwYXJlKGV2ZW50X25hbWUsIGZpbGUsIGxpbmUsIE5VTEwsICZqdyk7CisJandfb2JqZWN0X3N0cmluZygmancsICJwYXJhbSIsIHBhcmFtKTsKKwlqd19vYmplY3Rfc3RyaW5nKCZqdywgInZhbHVlIiwgdmFsdWUpOworCWp3X2VuZCgmancpOworCisJdHIyX2RzdF93cml0ZV9saW5lKCZ0cjJkc3RfZXZlbnQsICZqdy5qc29uKTsKKwlqd19yZWxlYXNlKCZqdyk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX3JlcG9fZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCSAgICAgICBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbykKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gImRlZl9yZXBvIjsKKwlzdHJ1Y3QganNvbl93cml0ZXIgancgPSBKU09OX1dSSVRFUl9JTklUOworCisJandfb2JqZWN0X2JlZ2luKCZqdywgMCk7CisJZXZlbnRfZm10X3ByZXBhcmUoZXZlbnRfbmFtZSwgZmlsZSwgbGluZSwgcmVwbywgJmp3KTsKKwlqd19vYmplY3Rfc3RyaW5nKCZqdywgIndvcmt0cmVlIiwgcmVwby0+d29ya3RyZWUpOworCWp3X2VuZCgmancpOworCisJdHIyX2RzdF93cml0ZV9saW5lKCZ0cjJkc3RfZXZlbnQsICZqdy5qc29uKTsKKwlqd19yZWxlYXNlKCZqdyk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX3JlZ2lvbl9lbnRlcl9wcmludGZfdmFfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkJCSB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJCQkgY29uc3QgY2hhciAqY2F0ZWdvcnksCisJCQkJCSBjb25zdCBjaGFyICpsYWJlbCwKKwkJCQkJIGNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkJCQkgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFwKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAicmVnaW9uX2VudGVyIjsKKwlzdHJ1Y3QgdHIydGxzX3RocmVhZF9jdHggKmN0eCA9IHRyMnRsc19nZXRfc2VsZigpOworCWlmIChjdHgtPm5yX29wZW5fcmVnaW9ucyA8PSB0cjJlbnZfZXZlbnRfbWF4X25lc3RpbmdfbGV2ZWxzKSB7CisJCXN0cnVjdCBqc29uX3dyaXRlciBqdyA9IEpTT05fV1JJVEVSX0lOSVQ7CisKKwkJandfb2JqZWN0X2JlZ2luKCZqdywgMCk7CisJCWV2ZW50X2ZtdF9wcmVwYXJlKGV2ZW50X25hbWUsIGZpbGUsIGxpbmUsIHJlcG8sICZqdyk7CisJCWp3X29iamVjdF9pbnRtYXgoJmp3LCAibmVzdGluZyIsIGN0eC0+bnJfb3Blbl9yZWdpb25zKTsKKwkJaWYgKGNhdGVnb3J5KQorCQkJandfb2JqZWN0X3N0cmluZygmancsICJjYXRlZ29yeSIsIGNhdGVnb3J5KTsKKwkJaWYgKGxhYmVsKQorCQkJandfb2JqZWN0X3N0cmluZygmancsICJsYWJlbCIsIGxhYmVsKTsKKwkJbWF5YmVfYWRkX3N0cmluZ192YSgmancsICJtc2ciLCBmbXQsIGFwKTsKKwkJandfZW5kKCZqdyk7CisKKwkJdHIyX2RzdF93cml0ZV9saW5lKCZ0cjJkc3RfZXZlbnQsICZqdy5qc29uKTsKKwkJandfcmVsZWFzZSgmancpOworCX0KK30KKworc3RhdGljIHZvaWQgZm5fcmVnaW9uX2xlYXZlX3ByaW50Zl92YV9mbCgKKwljb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwl1aW50NjRfdCB1c19lbGFwc2VkX3JlZ2lvbiwgY29uc3QgY2hhciAqY2F0ZWdvcnksIGNvbnN0IGNoYXIgKmxhYmVsLAorCWNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLCBjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXApCit7CisJY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJyZWdpb25fbGVhdmUiOworCXN0cnVjdCB0cjJ0bHNfdGhyZWFkX2N0eCAqY3R4ID0gdHIydGxzX2dldF9zZWxmKCk7CisJaWYgKGN0eC0+bnJfb3Blbl9yZWdpb25zIDw9IHRyMmVudl9ldmVudF9tYXhfbmVzdGluZ19sZXZlbHMpIHsKKwkJc3RydWN0IGpzb25fd3JpdGVyIGp3ID0gSlNPTl9XUklURVJfSU5JVDsKKwkJZG91YmxlIHRfcmVsID0gKGRvdWJsZSl1c19lbGFwc2VkX3JlZ2lvbiAvIDEwMDAwMDAuMDsKKworCQlqd19vYmplY3RfYmVnaW4oJmp3LCAwKTsKKwkJZXZlbnRfZm10X3ByZXBhcmUoZXZlbnRfbmFtZSwgZmlsZSwgbGluZSwgcmVwbywgJmp3KTsKKwkJandfb2JqZWN0X2RvdWJsZSgmancsICJ0X3JlbCIsIDYsIHRfcmVsKTsKKwkJandfb2JqZWN0X2ludG1heCgmancsICJuZXN0aW5nIiwgY3R4LT5ucl9vcGVuX3JlZ2lvbnMpOworCQlpZiAoY2F0ZWdvcnkpCisJCQlqd19vYmplY3Rfc3RyaW5nKCZqdywgImNhdGVnb3J5IiwgY2F0ZWdvcnkpOworCQlpZiAobGFiZWwpCisJCQlqd19vYmplY3Rfc3RyaW5nKCZqdywgImxhYmVsIiwgbGFiZWwpOworCQltYXliZV9hZGRfc3RyaW5nX3ZhKCZqdywgIm1zZyIsIGZtdCwgYXApOworCQlqd19lbmQoJmp3KTsKKworCQl0cjJfZHN0X3dyaXRlX2xpbmUoJnRyMmRzdF9ldmVudCwgJmp3Lmpzb24pOworCQlqd19yZWxlYXNlKCZqdyk7CisJfQorfQorCitzdGF0aWMgdm9pZCBmbl9kYXRhX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLAorCQkgICAgICAgdWludDY0X3QgdXNfZWxhcHNlZF9yZWdpb24sIGNvbnN0IGNoYXIgKmNhdGVnb3J5LAorCQkgICAgICAgY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIGNvbnN0IGNoYXIgKmtleSwKKwkJICAgICAgIGNvbnN0IGNoYXIgKnZhbHVlKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAiZGF0YSI7CisJc3RydWN0IHRyMnRsc190aHJlYWRfY3R4ICpjdHggPSB0cjJ0bHNfZ2V0X3NlbGYoKTsKKwlpZiAoY3R4LT5ucl9vcGVuX3JlZ2lvbnMgPD0gdHIyZW52X2V2ZW50X21heF9uZXN0aW5nX2xldmVscykgeworCQlzdHJ1Y3QganNvbl93cml0ZXIgancgPSBKU09OX1dSSVRFUl9JTklUOworCQlkb3VibGUgdF9hYnMgPSAoZG91YmxlKXVzX2VsYXBzZWRfYWJzb2x1dGUgLyAxMDAwMDAwLjA7CisJCWRvdWJsZSB0X3JlbCA9IChkb3VibGUpdXNfZWxhcHNlZF9yZWdpb24gLyAxMDAwMDAwLjA7CisKKwkJandfb2JqZWN0X2JlZ2luKCZqdywgMCk7CisJCWV2ZW50X2ZtdF9wcmVwYXJlKGV2ZW50X25hbWUsIGZpbGUsIGxpbmUsIHJlcG8sICZqdyk7CisJCWp3X29iamVjdF9kb3VibGUoJmp3LCAidF9hYnMiLCA2LCB0X2Ficyk7CisJCWp3X29iamVjdF9kb3VibGUoJmp3LCAidF9yZWwiLCA2LCB0X3JlbCk7CisJCWp3X29iamVjdF9pbnRtYXgoJmp3LCAibmVzdGluZyIsIGN0eC0+bnJfb3Blbl9yZWdpb25zKTsKKwkJandfb2JqZWN0X3N0cmluZygmancsICJjYXRlZ29yeSIsIGNhdGVnb3J5KTsKKwkJandfb2JqZWN0X3N0cmluZygmancsICJrZXkiLCBrZXkpOworCQlqd19vYmplY3Rfc3RyaW5nKCZqdywgInZhbHVlIiwgdmFsdWUpOworCQlqd19lbmQoJmp3KTsKKworCQl0cjJfZHN0X3dyaXRlX2xpbmUoJnRyMmRzdF9ldmVudCwgJmp3Lmpzb24pOworCQlqd19yZWxlYXNlKCZqdyk7CisJfQorfQorCitzdGF0aWMgdm9pZCBmbl9kYXRhX2pzb25fZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkgICAgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCSAgICB1aW50NjRfdCB1c19lbGFwc2VkX3JlZ2lvbiwgY29uc3QgY2hhciAqY2F0ZWdvcnksCisJCQkgICAgY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sIGNvbnN0IGNoYXIgKmtleSwKKwkJCSAgICBjb25zdCBzdHJ1Y3QganNvbl93cml0ZXIgKnZhbHVlKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAiZGF0YV9qc29uIjsKKwlzdHJ1Y3QgdHIydGxzX3RocmVhZF9jdHggKmN0eCA9IHRyMnRsc19nZXRfc2VsZigpOworCWlmIChjdHgtPm5yX29wZW5fcmVnaW9ucyA8PSB0cjJlbnZfZXZlbnRfbWF4X25lc3RpbmdfbGV2ZWxzKSB7CisJCXN0cnVjdCBqc29uX3dyaXRlciBqdyA9IEpTT05fV1JJVEVSX0lOSVQ7CisJCWRvdWJsZSB0X2FicyA9IChkb3VibGUpdXNfZWxhcHNlZF9hYnNvbHV0ZSAvIDEwMDAwMDAuMDsKKwkJZG91YmxlIHRfcmVsID0gKGRvdWJsZSl1c19lbGFwc2VkX3JlZ2lvbiAvIDEwMDAwMDAuMDsKKworCQlqd19vYmplY3RfYmVnaW4oJmp3LCAwKTsKKwkJZXZlbnRfZm10X3ByZXBhcmUoZXZlbnRfbmFtZSwgZmlsZSwgbGluZSwgcmVwbywgJmp3KTsKKwkJandfb2JqZWN0X2RvdWJsZSgmancsICJ0X2FicyIsIDYsIHRfYWJzKTsKKwkJandfb2JqZWN0X2RvdWJsZSgmancsICJ0X3JlbCIsIDYsIHRfcmVsKTsKKwkJandfb2JqZWN0X2ludG1heCgmancsICJuZXN0aW5nIiwgY3R4LT5ucl9vcGVuX3JlZ2lvbnMpOworCQlqd19vYmplY3Rfc3RyaW5nKCZqdywgImNhdGVnb3J5IiwgY2F0ZWdvcnkpOworCQlqd19vYmplY3Rfc3RyaW5nKCZqdywgImtleSIsIGtleSk7CisJCWp3X29iamVjdF9zdWJfancoJmp3LCAidmFsdWUiLCB2YWx1ZSk7CisJCWp3X2VuZCgmancpOworCisJCXRyMl9kc3Rfd3JpdGVfbGluZSgmdHIyZHN0X2V2ZW50LCAmancuanNvbik7CisJCWp3X3JlbGVhc2UoJmp3KTsKKwl9Cit9CisKK3N0cnVjdCB0cjJfdGd0IHRyMl90Z3RfZXZlbnQgPSB7CisJJnRyMmRzdF9ldmVudCwKKworCWZuX2luaXQsCisJZm5fdGVybSwKKworCWZuX3ZlcnNpb25fZmwsCisJZm5fc3RhcnRfZmwsCisJZm5fZXhpdF9mbCwKKwlmbl9zaWduYWwsCisJZm5fYXRleGl0LAorCWZuX2Vycm9yX3ZhX2ZsLAorCWZuX2NvbW1hbmRfcGF0aF9mbCwKKwlmbl9jb21tYW5kX25hbWVfZmwsCisJZm5fY29tbWFuZF9tb2RlX2ZsLAorCWZuX2FsaWFzX2ZsLAorCWZuX2NoaWxkX3N0YXJ0X2ZsLAorCWZuX2NoaWxkX2V4aXRfZmwsCisJZm5fdGhyZWFkX3N0YXJ0X2ZsLAorCWZuX3RocmVhZF9leGl0X2ZsLAorCWZuX2V4ZWNfZmwsCisJZm5fZXhlY19yZXN1bHRfZmwsCisJZm5fcGFyYW1fZmwsCisJZm5fcmVwb19mbCwKKwlmbl9yZWdpb25fZW50ZXJfcHJpbnRmX3ZhX2ZsLAorCWZuX3JlZ2lvbl9sZWF2ZV9wcmludGZfdmFfZmwsCisJZm5fZGF0YV9mbCwKKwlmbl9kYXRhX2pzb25fZmwsCisJTlVMTCwgLyogcHJpbnRmICovCit9OwpkaWZmIC0tZ2l0IGEvdHJhY2UyL3RyMl90Z3Rfbm9ybWFsLmMgYi90cmFjZTIvdHIyX3RndF9ub3JtYWwuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMWI2MDJjCi0tLSAvZGV2L251bGwKKysrIGIvdHJhY2UyL3RyMl90Z3Rfbm9ybWFsLmMKQEAgLTAsMCArMSwzMjUgQEAKKyNpbmNsdWRlICJjYWNoZS5oIgorI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgInJ1bi1jb21tYW5kLmgiCisjaW5jbHVkZSAicXVvdGUuaCIKKyNpbmNsdWRlICJ2ZXJzaW9uLmgiCisjaW5jbHVkZSAidHJhY2UyL3RyMl9kc3QuaCIKKyNpbmNsdWRlICJ0cmFjZTIvdHIyX3N5c2Vudi5oIgorI2luY2x1ZGUgInRyYWNlMi90cjJfdGJ1Zi5oIgorI2luY2x1ZGUgInRyYWNlMi90cjJfdGd0LmgiCisjaW5jbHVkZSAidHJhY2UyL3RyMl90bHMuaCIKKworc3RhdGljIHN0cnVjdCB0cjJfZHN0IHRyMmRzdF9ub3JtYWwgPSB7IFRSMl9TWVNFTlZfTk9STUFMLCAwLCAwLCAwLCAwIH07CisKKy8qCisgKiBVc2UgdGhlIFRSMl9TWVNFTlZfTk9STUFMX0JSSUVGIHNldHRpbmcgdG8gb21pdCB0aGUgIjx0aW1lPiA8ZmlsZT46PGxpbmU+IgorICogZmllbGRzIGZyb20gZWFjaCBsaW5lIHdyaXR0ZW4gdG8gdGhlIGJ1aWx0aW4gbm9ybWFsIHRhcmdldC4KKyAqCisgKiBVbml0IHRlc3RzIG1heSB3YW50IHRvIHVzZSB0aGlzIHRvIGhlbHAgd2l0aCB0ZXN0aW5nLgorICovCitzdGF0aWMgaW50IHRyMmVudl9ub3JtYWxfYmVfYnJpZWY7CisKKyNkZWZpbmUgVFIyRk1UX05PUk1BTF9GTF9XSURUSCAoNTApCisKK3N0YXRpYyBpbnQgZm5faW5pdCh2b2lkKQoreworCWludCB3YW50ID0gdHIyX2RzdF90cmFjZV93YW50KCZ0cjJkc3Rfbm9ybWFsKTsKKwlpbnQgd2FudF9icmllZjsKKwljb25zdCBjaGFyICpicmllZjsKKworCWlmICghd2FudCkKKwkJcmV0dXJuIHdhbnQ7CisKKwlicmllZiA9IHRyMl9zeXNlbnZfZ2V0KFRSMl9TWVNFTlZfTk9STUFMX0JSSUVGKTsKKwlpZiAoYnJpZWYgJiYgKmJyaWVmICYmCisJICAgICgod2FudF9icmllZiA9IGdpdF9wYXJzZV9tYXliZV9ib29sKGJyaWVmKSkgIT0gLTEpKQorCQl0cjJlbnZfbm9ybWFsX2JlX2JyaWVmID0gd2FudF9icmllZjsKKworCXJldHVybiB3YW50OworfQorCitzdGF0aWMgdm9pZCBmbl90ZXJtKHZvaWQpCit7CisJdHIyX2RzdF90cmFjZV9kaXNhYmxlKCZ0cjJkc3Rfbm9ybWFsKTsKK30KKworc3RhdGljIHZvaWQgbm9ybWFsX2ZtdF9wcmVwYXJlKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBzdHJ1Y3Qgc3RyYnVmICpidWYpCit7CisJc3RyYnVmX3NldGxlbihidWYsIDApOworCisJaWYgKCF0cjJlbnZfbm9ybWFsX2JlX2JyaWVmKSB7CisJCXN0cnVjdCB0cjJfdGJ1ZiB0Yl9ub3c7CisKKwkJdHIyX3RidWZfbG9jYWxfdGltZSgmdGJfbm93KTsKKwkJc3RyYnVmX2FkZHN0cihidWYsIHRiX25vdy5idWYpOworCQlzdHJidWZfYWRkY2goYnVmLCAnICcpOworCisJCWlmIChmaWxlICYmICpmaWxlKQorCQkJc3RyYnVmX2FkZGYoYnVmLCAiJXM6JWQgIiwgZmlsZSwgbGluZSk7CisJCXdoaWxlIChidWYtPmxlbiA8IFRSMkZNVF9OT1JNQUxfRkxfV0lEVEgpCisJCQlzdHJidWZfYWRkY2goYnVmLCAnICcpOworCX0KK30KKworc3RhdGljIHZvaWQgbm9ybWFsX2lvX3dyaXRlX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJICAgICAgIGNvbnN0IHN0cnVjdCBzdHJidWYgKmJ1Zl9wYXlsb2FkKQoreworCXN0cnVjdCBzdHJidWYgYnVmX2xpbmUgPSBTVFJCVUZfSU5JVDsKKworCW5vcm1hbF9mbXRfcHJlcGFyZShmaWxlLCBsaW5lLCAmYnVmX2xpbmUpOworCXN0cmJ1Zl9hZGRidWYoJmJ1Zl9saW5lLCBidWZfcGF5bG9hZCk7CisJdHIyX2RzdF93cml0ZV9saW5lKCZ0cjJkc3Rfbm9ybWFsLCAmYnVmX2xpbmUpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfbGluZSk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX3ZlcnNpb25fZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUpCit7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJc3RyYnVmX2FkZGYoJmJ1Zl9wYXlsb2FkLCAidmVyc2lvbiAlcyIsIGdpdF92ZXJzaW9uX3N0cmluZyk7CisJbm9ybWFsX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fc3RhcnRfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQl1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisKKwlzdHJidWZfYWRkc3RyKCZidWZfcGF5bG9hZCwgInN0YXJ0ICIpOworCXNxX2FwcGVuZF9xdW90ZV9hcmd2X3ByZXR0eSgmYnVmX3BheWxvYWQsIGFyZ3YpOworCW5vcm1hbF9pb193cml0ZV9mbChmaWxlLCBsaW5lLCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2V4aXRfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCSAgICAgICBpbnQgY29kZSkKK3sKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisJZG91YmxlIGVsYXBzZWQgPSAoZG91YmxlKXVzX2VsYXBzZWRfYWJzb2x1dGUgLyAxMDAwMDAwLjA7CisKKwlzdHJidWZfYWRkZigmYnVmX3BheWxvYWQsICJleGl0IGVsYXBzZWQ6JS42ZiBjb2RlOiVkIiwgZWxhcHNlZCwgY29kZSk7CisJbm9ybWFsX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fc2lnbmFsKHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsIGludCBzaWdubykKK3sKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisJZG91YmxlIGVsYXBzZWQgPSAoZG91YmxlKXVzX2VsYXBzZWRfYWJzb2x1dGUgLyAxMDAwMDAwLjA7CisKKwlzdHJidWZfYWRkZigmYnVmX3BheWxvYWQsICJzaWduYWwgZWxhcHNlZDolLjZmIGNvZGU6JWQiLCBlbGFwc2VkLAorCQkgICAgc2lnbm8pOworCW5vcm1hbF9pb193cml0ZV9mbChfX0ZJTEVfXywgX19MSU5FX18sICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fYXRleGl0KHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsIGludCBjb2RlKQoreworCXN0cnVjdCBzdHJidWYgYnVmX3BheWxvYWQgPSBTVFJCVUZfSU5JVDsKKwlkb3VibGUgZWxhcHNlZCA9IChkb3VibGUpdXNfZWxhcHNlZF9hYnNvbHV0ZSAvIDEwMDAwMDAuMDsKKworCXN0cmJ1Zl9hZGRmKCZidWZfcGF5bG9hZCwgImF0ZXhpdCBlbGFwc2VkOiUuNmYgY29kZTolZCIsIGVsYXBzZWQsIGNvZGUpOworCW5vcm1hbF9pb193cml0ZV9mbChfX0ZJTEVfXywgX19MSU5FX18sICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgbWF5YmVfYXBwZW5kX3N0cmluZ192YShzdHJ1Y3Qgc3RyYnVmICpidWYsIGNvbnN0IGNoYXIgKmZtdCwKKwkJCQkgICB2YV9saXN0IGFwKQoreworCWlmIChmbXQgJiYgKmZtdCkgeworCQl2YV9saXN0IGNvcHlfYXA7CisKKwkJdmFfY29weShjb3B5X2FwLCBhcCk7CisJCXN0cmJ1Zl92YWRkZihidWYsIGZtdCwgY29weV9hcCk7CisJCXZhX2VuZChjb3B5X2FwKTsKKwkJcmV0dXJuOworCX0KK30KKworc3RhdGljIHZvaWQgZm5fZXJyb3JfdmFfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmZtdCwKKwkJCSAgIHZhX2xpc3QgYXApCit7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJc3RyYnVmX2FkZHN0cigmYnVmX3BheWxvYWQsICJlcnJvciIpOworCWlmIChmbXQgJiYgKmZtdCkgeworCQlzdHJidWZfYWRkY2goJmJ1Zl9wYXlsb2FkLCAnICcpOworCQltYXliZV9hcHBlbmRfc3RyaW5nX3ZhKCZidWZfcGF5bG9hZCwgZm10LCBhcCk7CisJfQorCW5vcm1hbF9pb193cml0ZV9mbChmaWxlLCBsaW5lLCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2NvbW1hbmRfcGF0aF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqcGF0aG5hbWUpCit7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJc3RyYnVmX2FkZGYoJmJ1Zl9wYXlsb2FkLCAiY21kX3BhdGggJXMiLCBwYXRobmFtZSk7CisJbm9ybWFsX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fY29tbWFuZF9uYW1lX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyICpuYW1lLAorCQkJICAgICAgIGNvbnN0IGNoYXIgKmhpZXJhcmNoeSkKK3sKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisKKwlzdHJidWZfYWRkZigmYnVmX3BheWxvYWQsICJjbWRfbmFtZSAlcyIsIG5hbWUpOworCWlmIChoaWVyYXJjaHkgJiYgKmhpZXJhcmNoeSkKKwkJc3RyYnVmX2FkZGYoJmJ1Zl9wYXlsb2FkLCAiICglcykiLCBoaWVyYXJjaHkpOworCW5vcm1hbF9pb193cml0ZV9mbChmaWxlLCBsaW5lLCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2NvbW1hbmRfbW9kZV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqbW9kZSkKK3sKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisKKwlzdHJidWZfYWRkZigmYnVmX3BheWxvYWQsICJjbWRfbW9kZSAlcyIsIG1vZGUpOworCW5vcm1hbF9pb193cml0ZV9mbChmaWxlLCBsaW5lLCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2FsaWFzX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyICphbGlhcywKKwkJCWNvbnN0IGNoYXIgKiphcmd2KQoreworCXN0cnVjdCBzdHJidWYgYnVmX3BheWxvYWQgPSBTVFJCVUZfSU5JVDsKKworCXN0cmJ1Zl9hZGRmKCZidWZfcGF5bG9hZCwgImFsaWFzICVzIC0+ICIsIGFsaWFzKTsKKwlzcV9hcHBlbmRfcXVvdGVfYXJndl9wcmV0dHkoJmJ1Zl9wYXlsb2FkLCBhcmd2KTsKKwlub3JtYWxfaW9fd3JpdGVfZmwoZmlsZSwgbGluZSwgJmJ1Zl9wYXlsb2FkKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmX3BheWxvYWQpOworfQorCitzdGF0aWMgdm9pZCBmbl9jaGlsZF9zdGFydF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCSAgICAgIHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCQkgICAgICBjb25zdCBzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqY21kKQoreworCXN0cnVjdCBzdHJidWYgYnVmX3BheWxvYWQgPSBTVFJCVUZfSU5JVDsKKworCXN0cmJ1Zl9hZGRmKCZidWZfcGF5bG9hZCwgImNoaWxkX3N0YXJ0WyVkXSIsIGNtZC0+dHJhY2UyX2NoaWxkX2lkKTsKKworCWlmIChjbWQtPmRpcikgeworCQlzdHJidWZfYWRkc3RyKCZidWZfcGF5bG9hZCwgIiBjZCAiKTsKKwkJc3FfcXVvdGVfYnVmX3ByZXR0eSgmYnVmX3BheWxvYWQsIGNtZC0+ZGlyKTsKKwkJc3RyYnVmX2FkZHN0cigmYnVmX3BheWxvYWQsICI7Iik7CisJfQorCisJLyoKKwkgKiBUT0RPIGlmIChjbWQtPmVudikgeyBDb25zaWRlciBkdW1waW5nIGNoYW5nZXMgdG8gZW52aXJvbm1lbnQuIH0KKwkgKiBTZWUgdHJhY2VfYWRkX2VudigpIGluIHJ1bi1jb21tYW5kLmMgYXMgdXNlZCBieSBvcmlnaW5hbCB0cmFjZS5jCisJICovCisKKwlzdHJidWZfYWRkY2goJmJ1Zl9wYXlsb2FkLCAnICcpOworCWlmIChjbWQtPmdpdF9jbWQpCisJCXN0cmJ1Zl9hZGRzdHIoJmJ1Zl9wYXlsb2FkLCAiZ2l0ICIpOworCXNxX2FwcGVuZF9xdW90ZV9hcmd2X3ByZXR0eSgmYnVmX3BheWxvYWQsIGNtZC0+YXJndik7CisKKwlub3JtYWxfaW9fd3JpdGVfZmwoZmlsZSwgbGluZSwgJmJ1Zl9wYXlsb2FkKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmX3BheWxvYWQpOworfQorCitzdGF0aWMgdm9pZCBmbl9jaGlsZF9leGl0X2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJICAgICB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLCBpbnQgY2lkLCBpbnQgcGlkLAorCQkJICAgICBpbnQgY29kZSwgdWludDY0X3QgdXNfZWxhcHNlZF9jaGlsZCkKK3sKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisJZG91YmxlIGVsYXBzZWQgPSAoZG91YmxlKXVzX2VsYXBzZWRfY2hpbGQgLyAxMDAwMDAwLjA7CisKKwlzdHJidWZfYWRkZigmYnVmX3BheWxvYWQsICJjaGlsZF9leGl0WyVkXSBwaWQ6JWQgY29kZTolZCBlbGFwc2VkOiUuNmYiLAorCQkgICAgY2lkLCBwaWQsIGNvZGUsIGVsYXBzZWQpOworCW5vcm1hbF9pb193cml0ZV9mbChmaWxlLCBsaW5lLCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2V4ZWNfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCSAgICAgICBpbnQgZXhlY19pZCwgY29uc3QgY2hhciAqZXhlLCBjb25zdCBjaGFyICoqYXJndikKK3sKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisKKwlzdHJidWZfYWRkZigmYnVmX3BheWxvYWQsICJleGVjWyVkXSAiLCBleGVjX2lkKTsKKwlpZiAoZXhlKSB7CisJCXN0cmJ1Zl9hZGRzdHIoJmJ1Zl9wYXlsb2FkLCBleGUpOworCQlzdHJidWZfYWRkY2goJmJ1Zl9wYXlsb2FkLCAnICcpOworCX0KKwlzcV9hcHBlbmRfcXVvdGVfYXJndl9wcmV0dHkoJmJ1Zl9wYXlsb2FkLCBhcmd2KTsKKwlub3JtYWxfaW9fd3JpdGVfZmwoZmlsZSwgbGluZSwgJmJ1Zl9wYXlsb2FkKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmX3BheWxvYWQpOworfQorCitzdGF0aWMgdm9pZCBmbl9leGVjX3Jlc3VsdF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCSAgICAgIHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsIGludCBleGVjX2lkLAorCQkJICAgICAgaW50IGNvZGUpCit7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJc3RyYnVmX2FkZGYoJmJ1Zl9wYXlsb2FkLCAiZXhlY19yZXN1bHRbJWRdIGNvZGU6JWQiLCBleGVjX2lkLCBjb2RlKTsKKwlpZiAoY29kZSA+IDApCisJCXN0cmJ1Zl9hZGRmKCZidWZfcGF5bG9hZCwgIiBlcnI6JXMiLCBzdHJlcnJvcihjb2RlKSk7CisJbm9ybWFsX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fcGFyYW1fZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKnBhcmFtLAorCQkJY29uc3QgY2hhciAqdmFsdWUpCit7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJc3RyYnVmX2FkZGYoJmJ1Zl9wYXlsb2FkLCAiZGVmX3BhcmFtICVzPSVzIiwgcGFyYW0sIHZhbHVlKTsKKwlub3JtYWxfaW9fd3JpdGVfZmwoZmlsZSwgbGluZSwgJmJ1Zl9wYXlsb2FkKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmX3BheWxvYWQpOworfQorCitzdGF0aWMgdm9pZCBmbl9yZXBvX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkgICAgICAgY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8pCit7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJc3RyYnVmX2FkZHN0cigmYnVmX3BheWxvYWQsICJ3b3JrdHJlZSAiKTsKKwlzcV9xdW90ZV9idWZfcHJldHR5KCZidWZfcGF5bG9hZCwgcmVwby0+d29ya3RyZWUpOworCW5vcm1hbF9pb193cml0ZV9mbChmaWxlLCBsaW5lLCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX3ByaW50Zl92YV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCSAgICB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLCBjb25zdCBjaGFyICpmbXQsCisJCQkgICAgdmFfbGlzdCBhcCkKK3sKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisKKwltYXliZV9hcHBlbmRfc3RyaW5nX3ZhKCZidWZfcGF5bG9hZCwgZm10LCBhcCk7CisJbm9ybWFsX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RydWN0IHRyMl90Z3QgdHIyX3RndF9ub3JtYWwgPSB7CisJJnRyMmRzdF9ub3JtYWwsCisKKwlmbl9pbml0LAorCWZuX3Rlcm0sCisKKwlmbl92ZXJzaW9uX2ZsLAorCWZuX3N0YXJ0X2ZsLAorCWZuX2V4aXRfZmwsCisJZm5fc2lnbmFsLAorCWZuX2F0ZXhpdCwKKwlmbl9lcnJvcl92YV9mbCwKKwlmbl9jb21tYW5kX3BhdGhfZmwsCisJZm5fY29tbWFuZF9uYW1lX2ZsLAorCWZuX2NvbW1hbmRfbW9kZV9mbCwKKwlmbl9hbGlhc19mbCwKKwlmbl9jaGlsZF9zdGFydF9mbCwKKwlmbl9jaGlsZF9leGl0X2ZsLAorCU5VTEwsIC8qIHRocmVhZF9zdGFydCAqLworCU5VTEwsIC8qIHRocmVhZF9leGl0ICovCisJZm5fZXhlY19mbCwKKwlmbl9leGVjX3Jlc3VsdF9mbCwKKwlmbl9wYXJhbV9mbCwKKwlmbl9yZXBvX2ZsLAorCU5VTEwsIC8qIHJlZ2lvbl9lbnRlciAqLworCU5VTEwsIC8qIHJlZ2lvbl9sZWF2ZSAqLworCU5VTEwsIC8qIGRhdGEgKi8KKwlOVUxMLCAvKiBkYXRhX2pzb24gKi8KKwlmbl9wcmludGZfdmFfZmwsCit9OwpkaWZmIC0tZ2l0IGEvdHJhY2UyL3RyMl90Z3RfcGVyZi5jIGIvdHJhY2UyL3RyMl90Z3RfcGVyZi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE4MDE4ZjEKLS0tIC9kZXYvbnVsbAorKysgYi90cmFjZTIvdHIyX3RndF9wZXJmLmMKQEAgLTAsMCArMSw1NTEgQEAKKyNpbmNsdWRlICJjYWNoZS5oIgorI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgInJ1bi1jb21tYW5kLmgiCisjaW5jbHVkZSAicXVvdGUuaCIKKyNpbmNsdWRlICJ2ZXJzaW9uLmgiCisjaW5jbHVkZSAianNvbi13cml0ZXIuaCIKKyNpbmNsdWRlICJ0cmFjZTIvdHIyX2RzdC5oIgorI2luY2x1ZGUgInRyYWNlMi90cjJfc2lkLmgiCisjaW5jbHVkZSAidHJhY2UyL3RyMl9zeXNlbnYuaCIKKyNpbmNsdWRlICJ0cmFjZTIvdHIyX3RidWYuaCIKKyNpbmNsdWRlICJ0cmFjZTIvdHIyX3RndC5oIgorI2luY2x1ZGUgInRyYWNlMi90cjJfdGxzLmgiCisKK3N0YXRpYyBzdHJ1Y3QgdHIyX2RzdCB0cjJkc3RfcGVyZiA9IHsgVFIyX1NZU0VOVl9QRVJGLCAwLCAwLCAwLCAwIH07CisKKy8qCisgKiBVc2UgVFIyX1NZU0VOVl9QRVJGX0JSSUVGIHRvIG9taXQgdGhlICI8dGltZT4gPGZpbGU+OjxsaW5lPiIKKyAqIGZpZWxkcyBmcm9tIGVhY2ggbGluZSB3cml0dGVuIHRvIHRoZSBidWlsdGluIHBlcmZvcm1hbmNlIHRhcmdldC4KKyAqCisgKiBVbml0IHRlc3RzIG1heSB3YW50IHRvIHVzZSB0aGlzIHRvIGhlbHAgd2l0aCB0ZXN0aW5nLgorICovCitzdGF0aWMgaW50IHRyMmVudl9wZXJmX2JlX2JyaWVmOworCisjZGVmaW5lIFRSMkZNVF9QRVJGX0ZMX1dJRFRIICgyOCkKKyNkZWZpbmUgVFIyRk1UX1BFUkZfTUFYX0VWRU5UX05BTUUgKDEyKQorI2RlZmluZSBUUjJGTVRfUEVSRl9SRVBPX1dJRFRIICgzKQorI2RlZmluZSBUUjJGTVRfUEVSRl9DQVRFR09SWV9XSURUSCAoMTIpCisKKyNkZWZpbmUgVFIyX0lOREVOVCAoMikKKyNkZWZpbmUgVFIyX0lOREVOVF9MRU5HVEgoY3R4KSAoKChjdHgpLT5ucl9vcGVuX3JlZ2lvbnMgLSAxKSAqIFRSMl9JTkRFTlQpCisKK3N0YXRpYyBpbnQgZm5faW5pdCh2b2lkKQoreworCWludCB3YW50ID0gdHIyX2RzdF90cmFjZV93YW50KCZ0cjJkc3RfcGVyZik7CisJaW50IHdhbnRfYnJpZWY7CisJY29uc3QgY2hhciAqYnJpZWY7CisKKwlpZiAoIXdhbnQpCisJCXJldHVybiB3YW50OworCisJYnJpZWYgPSB0cjJfc3lzZW52X2dldChUUjJfU1lTRU5WX1BFUkZfQlJJRUYpOworCWlmIChicmllZiAmJiAqYnJpZWYgJiYKKwkgICAgKCh3YW50X2JyaWVmID0gZ2l0X3BhcnNlX21heWJlX2Jvb2woYnJpZWYpKSAhPSAtMSkpCisJCXRyMmVudl9wZXJmX2JlX2JyaWVmID0gd2FudF9icmllZjsKKworCXJldHVybiB3YW50OworfQorCitzdGF0aWMgdm9pZCBmbl90ZXJtKHZvaWQpCit7CisJdHIyX2RzdF90cmFjZV9kaXNhYmxlKCZ0cjJkc3RfcGVyZik7Cit9CisKKy8qCisgKiBGb3JtYXQgdHJhY2UgbGluZSBwcmVmaXggaW4gaHVtYW4tcmVhZGFibGUgY2xhc3NpYyBmb3JtYXQgZm9yCisgKiB0aGUgcGVyZm9ybWFuY2UgdGFyZ2V0OgorICogICAgICJbPHRpbWU+IFs8ZmlsZT46PGxpbmU+XSA8YmFyPl0gPG5yX3BhcmVudHM+IDxiYXI+CisgKiAgICAgICAgIDx0aHJlYWRfbmFtZT4gPGJhcj4gPGV2ZW50X25hbWU+IDxiYXI+IFs8cmVwbz5dIDxiYXI+CisgKiAgICAgICAgIFs8ZWxhcHNlZF9hYnNvbHV0ZT5dIFs8ZWxhcHNlZF9yZWxhdGl2ZT5dIDxiYXI+CisgKiAgICAgICAgIFs8Y2F0ZWdvcnk+XSA8YmFyPiBbPGRvdHM+XSAiCisgKi8KK3N0YXRpYyB2b2lkIHBlcmZfZm10X3ByZXBhcmUoY29uc3QgY2hhciAqZXZlbnRfbmFtZSwKKwkJCSAgICAgc3RydWN0IHRyMnRsc190aHJlYWRfY3R4ICpjdHgsIGNvbnN0IGNoYXIgKmZpbGUsCisJCQkgICAgIGludCBsaW5lLCBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCSAgICAgdWludDY0X3QgKnBfdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCSAgICAgdWludDY0X3QgKnBfdXNfZWxhcHNlZF9yZWxhdGl2ZSwKKwkJCSAgICAgY29uc3QgY2hhciAqY2F0ZWdvcnksIHN0cnVjdCBzdHJidWYgKmJ1ZikKK3sKKwlpbnQgbGVuOworCisJc3RyYnVmX3NldGxlbihidWYsIDApOworCisJaWYgKCF0cjJlbnZfcGVyZl9iZV9icmllZikgeworCQlzdHJ1Y3QgdHIyX3RidWYgdGJfbm93OworCQlzaXplX3QgZmxfZW5kX2NvbDsKKworCQl0cjJfdGJ1Zl9sb2NhbF90aW1lKCZ0Yl9ub3cpOworCQlzdHJidWZfYWRkc3RyKGJ1ZiwgdGJfbm93LmJ1Zik7CisJCXN0cmJ1Zl9hZGRjaChidWYsICcgJyk7CisKKwkJZmxfZW5kX2NvbCA9IGJ1Zi0+bGVuICsgVFIyRk1UX1BFUkZfRkxfV0lEVEg7CisKKwkJaWYgKGZpbGUgJiYgKmZpbGUpIHsKKwkJCXN0cnVjdCBzdHJidWYgYnVmX2ZsID0gU1RSQlVGX0lOSVQ7CisKKwkJCXN0cmJ1Zl9hZGRmKCZidWZfZmwsICIlczolZCIsIGZpbGUsIGxpbmUpOworCisJCQlpZiAoYnVmX2ZsLmxlbiA8PSBUUjJGTVRfUEVSRl9GTF9XSURUSCkKKwkJCQlzdHJidWZfYWRkYnVmKGJ1ZiwgJmJ1Zl9mbCk7CisJCQllbHNlIHsKKwkJCQlzaXplX3QgYXZhaWwgPSBUUjJGTVRfUEVSRl9GTF9XSURUSCAtIDM7CisJCQkJc3RyYnVmX2FkZHN0cihidWYsICIuLi4iKTsKKwkJCQlzdHJidWZfYWRkKGJ1ZiwKKwkJCQkJICAgJmJ1Zl9mbC5idWZbYnVmX2ZsLmxlbiAtIGF2YWlsXSwKKwkJCQkJICAgYXZhaWwpOworCQkJfQorCisJCQlzdHJidWZfcmVsZWFzZSgmYnVmX2ZsKTsKKwkJfQorCisJCXdoaWxlIChidWYtPmxlbiA8IGZsX2VuZF9jb2wpCisJCQlzdHJidWZfYWRkY2goYnVmLCAnICcpOworCisJCXN0cmJ1Zl9hZGRzdHIoYnVmLCAiIHwgIik7CisJfQorCisJc3RyYnVmX2FkZGYoYnVmLCAiZCVkIHwgIiwgdHIyX3NpZF9kZXB0aCgpKTsKKwlzdHJidWZfYWRkZihidWYsICIlLSpzIHwgJS0qcyB8ICIsIFRSMl9NQVhfVEhSRUFEX05BTUUsCisJCSAgICBjdHgtPnRocmVhZF9uYW1lLmJ1ZiwgVFIyRk1UX1BFUkZfTUFYX0VWRU5UX05BTUUsCisJCSAgICBldmVudF9uYW1lKTsKKworCWxlbiA9IGJ1Zi0+bGVuICsgVFIyRk1UX1BFUkZfUkVQT19XSURUSDsKKwlpZiAocmVwbykKKwkJc3RyYnVmX2FkZGYoYnVmLCAiciVkICIsIHJlcG8tPnRyYWNlMl9yZXBvX2lkKTsKKwl3aGlsZSAoYnVmLT5sZW4gPCBsZW4pCisJCXN0cmJ1Zl9hZGRjaChidWYsICcgJyk7CisJc3RyYnVmX2FkZHN0cihidWYsICIgfCAiKTsKKworCWlmIChwX3VzX2VsYXBzZWRfYWJzb2x1dGUpCisJCXN0cmJ1Zl9hZGRmKGJ1ZiwgIiU5LjZmIHwgIiwKKwkJCSAgICAoKGRvdWJsZSkoKnBfdXNfZWxhcHNlZF9hYnNvbHV0ZSkpIC8gMTAwMDAwMC4wKTsKKwllbHNlCisJCXN0cmJ1Zl9hZGRmKGJ1ZiwgIiU5cyB8ICIsICIgIik7CisKKwlpZiAocF91c19lbGFwc2VkX3JlbGF0aXZlKQorCQlzdHJidWZfYWRkZihidWYsICIlOS42ZiB8ICIsCisJCQkgICAgKChkb3VibGUpKCpwX3VzX2VsYXBzZWRfcmVsYXRpdmUpKSAvIDEwMDAwMDAuMCk7CisJZWxzZQorCQlzdHJidWZfYWRkZihidWYsICIlOXMgfCAiLCAiICIpOworCisJc3RyYnVmX2FkZGYoYnVmLCAiJS0qLipzIHwgIiwgVFIyRk1UX1BFUkZfQ0FURUdPUllfV0lEVEgsCisJCSAgICBUUjJGTVRfUEVSRl9DQVRFR09SWV9XSURUSCwgKGNhdGVnb3J5ID8gY2F0ZWdvcnkgOiAiIikpOworCisJaWYgKGN0eC0+bnJfb3Blbl9yZWdpb25zID4gMCkKKwkJc3RyYnVmX2FkZGNoYXJzKGJ1ZiwgJy4nLCBUUjJfSU5ERU5UX0xFTkdUSChjdHgpKTsKK30KKworc3RhdGljIHZvaWQgcGVyZl9pb193cml0ZV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqZXZlbnRfbmFtZSwKKwkJCSAgICAgY29uc3Qgc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkgICAgIHVpbnQ2NF90ICpwX3VzX2VsYXBzZWRfYWJzb2x1dGUsCisJCQkgICAgIHVpbnQ2NF90ICpwX3VzX2VsYXBzZWRfcmVsYXRpdmUsCisJCQkgICAgIGNvbnN0IGNoYXIgKmNhdGVnb3J5LAorCQkJICAgICBjb25zdCBzdHJ1Y3Qgc3RyYnVmICpidWZfcGF5bG9hZCkKK3sKKwlzdHJ1Y3QgdHIydGxzX3RocmVhZF9jdHggKmN0eCA9IHRyMnRsc19nZXRfc2VsZigpOworCXN0cnVjdCBzdHJidWYgYnVmX2xpbmUgPSBTVFJCVUZfSU5JVDsKKworCXBlcmZfZm10X3ByZXBhcmUoZXZlbnRfbmFtZSwgY3R4LCBmaWxlLCBsaW5lLCByZXBvLAorCQkJIHBfdXNfZWxhcHNlZF9hYnNvbHV0ZSwgcF91c19lbGFwc2VkX3JlbGF0aXZlLCBjYXRlZ29yeSwKKwkJCSAmYnVmX2xpbmUpOworCXN0cmJ1Zl9hZGRidWYoJmJ1Zl9saW5lLCBidWZfcGF5bG9hZCk7CisJdHIyX2RzdF93cml0ZV9saW5lKCZ0cjJkc3RfcGVyZiwgJmJ1Zl9saW5lKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmX2xpbmUpOworfQorCitzdGF0aWMgdm9pZCBmbl92ZXJzaW9uX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAidmVyc2lvbiI7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJc3RyYnVmX2FkZHN0cigmYnVmX3BheWxvYWQsIGdpdF92ZXJzaW9uX3N0cmluZyk7CisKKwlwZXJmX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsIGV2ZW50X25hbWUsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsCisJCQkgJmJ1Zl9wYXlsb2FkKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmX3BheWxvYWQpOworfQorCitzdGF0aWMgdm9pZCBmbl9zdGFydF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCXVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsIGNvbnN0IGNoYXIgKiphcmd2KQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAic3RhcnQiOworCXN0cnVjdCBzdHJidWYgYnVmX3BheWxvYWQgPSBTVFJCVUZfSU5JVDsKKworCXNxX2FwcGVuZF9xdW90ZV9hcmd2X3ByZXR0eSgmYnVmX3BheWxvYWQsIGFyZ3YpOworCisJcGVyZl9pb193cml0ZV9mbChmaWxlLCBsaW5lLCBldmVudF9uYW1lLCBOVUxMLCAmdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCSBOVUxMLCBOVUxMLCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2V4aXRfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCSAgICAgICBpbnQgY29kZSkKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gImV4aXQiOworCXN0cnVjdCBzdHJidWYgYnVmX3BheWxvYWQgPSBTVFJCVUZfSU5JVDsKKworCXN0cmJ1Zl9hZGRmKCZidWZfcGF5bG9hZCwgImNvZGU6JWQiLCBjb2RlKTsKKworCXBlcmZfaW9fd3JpdGVfZmwoZmlsZSwgbGluZSwgZXZlbnRfbmFtZSwgTlVMTCwgJnVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCQkgTlVMTCwgTlVMTCwgJmJ1Zl9wYXlsb2FkKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmX3BheWxvYWQpOworfQorCitzdGF0aWMgdm9pZCBmbl9zaWduYWwodWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwgaW50IHNpZ25vKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAic2lnbmFsIjsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisKKwlzdHJidWZfYWRkZigmYnVmX3BheWxvYWQsICJzaWdubzolZCIsIHNpZ25vKTsKKworCXBlcmZfaW9fd3JpdGVfZmwoX19GSUxFX18sIF9fTElORV9fLCBldmVudF9uYW1lLCBOVUxMLAorCQkJICZ1c19lbGFwc2VkX2Fic29sdXRlLCBOVUxMLCBOVUxMLCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2F0ZXhpdCh1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLCBpbnQgY29kZSkKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gImF0ZXhpdCI7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJc3RyYnVmX2FkZGYoJmJ1Zl9wYXlsb2FkLCAiY29kZTolZCIsIGNvZGUpOworCisJcGVyZl9pb193cml0ZV9mbChfX0ZJTEVfXywgX19MSU5FX18sIGV2ZW50X25hbWUsIE5VTEwsCisJCQkgJnVzX2VsYXBzZWRfYWJzb2x1dGUsIE5VTEwsIE5VTEwsICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgbWF5YmVfYXBwZW5kX3N0cmluZ192YShzdHJ1Y3Qgc3RyYnVmICpidWYsIGNvbnN0IGNoYXIgKmZtdCwKKwkJCQkgICB2YV9saXN0IGFwKQoreworCWlmIChmbXQgJiYgKmZtdCkgeworCQl2YV9saXN0IGNvcHlfYXA7CisKKwkJdmFfY29weShjb3B5X2FwLCBhcCk7CisJCXN0cmJ1Zl92YWRkZihidWYsIGZtdCwgY29weV9hcCk7CisJCXZhX2VuZChjb3B5X2FwKTsKKwkJcmV0dXJuOworCX0KK30KKworc3RhdGljIHZvaWQgZm5fZXJyb3JfdmFfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmZtdCwKKwkJCSAgIHZhX2xpc3QgYXApCit7CisJY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJlcnJvciI7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJbWF5YmVfYXBwZW5kX3N0cmluZ192YSgmYnVmX3BheWxvYWQsIGZtdCwgYXApOworCisJcGVyZl9pb193cml0ZV9mbChmaWxlLCBsaW5lLCBldmVudF9uYW1lLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAorCQkJICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fY29tbWFuZF9wYXRoX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyICpwYXRobmFtZSkKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gImNtZF9wYXRoIjsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisKKwlzdHJidWZfYWRkc3RyKCZidWZfcGF5bG9hZCwgcGF0aG5hbWUpOworCisJcGVyZl9pb193cml0ZV9mbChmaWxlLCBsaW5lLCBldmVudF9uYW1lLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAorCQkJICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fY29tbWFuZF9uYW1lX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyICpuYW1lLAorCQkJICAgICAgIGNvbnN0IGNoYXIgKmhpZXJhcmNoeSkKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gImNtZF9uYW1lIjsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisKKwlzdHJidWZfYWRkc3RyKCZidWZfcGF5bG9hZCwgbmFtZSk7CisJaWYgKGhpZXJhcmNoeSAmJiAqaGllcmFyY2h5KQorCQlzdHJidWZfYWRkZigmYnVmX3BheWxvYWQsICIgKCVzKSIsIGhpZXJhcmNoeSk7CisKKwlwZXJmX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsIGV2ZW50X25hbWUsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsCisJCQkgJmJ1Zl9wYXlsb2FkKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmX3BheWxvYWQpOworfQorCitzdGF0aWMgdm9pZCBmbl9jb21tYW5kX21vZGVfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKm1vZGUpCit7CisJY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJjbWRfbW9kZSI7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJc3RyYnVmX2FkZHN0cigmYnVmX3BheWxvYWQsIG1vZGUpOworCisJcGVyZl9pb193cml0ZV9mbChmaWxlLCBsaW5lLCBldmVudF9uYW1lLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLAorCQkJICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fYWxpYXNfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmFsaWFzLAorCQkJY29uc3QgY2hhciAqKmFyZ3YpCit7CisJY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJhbGlhcyI7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJc3RyYnVmX2FkZGYoJmJ1Zl9wYXlsb2FkLCAiYWxpYXM6JXMgYXJndjpbIiwgYWxpYXMpOworCXNxX2FwcGVuZF9xdW90ZV9hcmd2X3ByZXR0eSgmYnVmX3BheWxvYWQsIGFyZ3YpOworCXN0cmJ1Zl9hZGRjaCgmYnVmX3BheWxvYWQsICddJyk7CisKKwlwZXJmX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsIGV2ZW50X25hbWUsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsCisJCQkgJmJ1Zl9wYXlsb2FkKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmX3BheWxvYWQpOworfQorCitzdGF0aWMgdm9pZCBmbl9jaGlsZF9zdGFydF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCSAgICAgIHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCQkgICAgICBjb25zdCBzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqY21kKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAiY2hpbGRfc3RhcnQiOworCXN0cnVjdCBzdHJidWYgYnVmX3BheWxvYWQgPSBTVFJCVUZfSU5JVDsKKworCWlmIChjbWQtPnRyYWNlMl9ob29rX25hbWUpIHsKKwkJc3RyYnVmX2FkZGYoJmJ1Zl9wYXlsb2FkLCAiW2NoJWRdIGNsYXNzOmhvb2sgaG9vazolcyIsCisJCQkgICAgY21kLT50cmFjZTJfY2hpbGRfaWQsIGNtZC0+dHJhY2UyX2hvb2tfbmFtZSk7CisJfSBlbHNlIHsKKwkJY29uc3QgY2hhciAqY2hpbGRfY2xhc3MgPQorCQkJY21kLT50cmFjZTJfY2hpbGRfY2xhc3MgPyBjbWQtPnRyYWNlMl9jaGlsZF9jbGFzcyA6ICI/IjsKKwkJc3RyYnVmX2FkZGYoJmJ1Zl9wYXlsb2FkLCAiW2NoJWRdIGNsYXNzOiVzIiwKKwkJCSAgICBjbWQtPnRyYWNlMl9jaGlsZF9pZCwgY2hpbGRfY2xhc3MpOworCX0KKworCWlmIChjbWQtPmRpcikgeworCQlzdHJidWZfYWRkc3RyKCZidWZfcGF5bG9hZCwgIiBjZDoiKTsKKwkJc3FfcXVvdGVfYnVmX3ByZXR0eSgmYnVmX3BheWxvYWQsIGNtZC0+ZGlyKTsKKwl9CisKKwlzdHJidWZfYWRkc3RyKCZidWZfcGF5bG9hZCwgIiBhcmd2OlsiKTsKKwlpZiAoY21kLT5naXRfY21kKSB7CisJCXN0cmJ1Zl9hZGRzdHIoJmJ1Zl9wYXlsb2FkLCAiZ2l0Iik7CisJCWlmIChjbWQtPmFyZ3ZbMF0pCisJCQlzdHJidWZfYWRkY2goJmJ1Zl9wYXlsb2FkLCAnICcpOworCX0KKwlzcV9hcHBlbmRfcXVvdGVfYXJndl9wcmV0dHkoJmJ1Zl9wYXlsb2FkLCBjbWQtPmFyZ3YpOworCXN0cmJ1Zl9hZGRjaCgmYnVmX3BheWxvYWQsICddJyk7CisKKwlwZXJmX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsIGV2ZW50X25hbWUsIE5VTEwsICZ1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJIE5VTEwsIE5VTEwsICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fY2hpbGRfZXhpdF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCSAgICAgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwgaW50IGNpZCwgaW50IHBpZCwKKwkJCSAgICAgaW50IGNvZGUsIHVpbnQ2NF90IHVzX2VsYXBzZWRfY2hpbGQpCit7CisJY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJjaGlsZF9leGl0IjsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisKKwlzdHJidWZfYWRkZigmYnVmX3BheWxvYWQsICJbY2glZF0gcGlkOiVkIGNvZGU6JWQiLCBjaWQsIHBpZCwgY29kZSk7CisKKwlwZXJmX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsIGV2ZW50X25hbWUsIE5VTEwsICZ1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJICZ1c19lbGFwc2VkX2NoaWxkLCBOVUxMLCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX3RocmVhZF9zdGFydF9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCSAgICAgICB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAidGhyZWFkX3N0YXJ0IjsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisKKwlwZXJmX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsIGV2ZW50X25hbWUsIE5VTEwsICZ1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJIE5VTEwsIE5VTEwsICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fdGhyZWFkX2V4aXRfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkgICAgICB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJICAgICAgdWludDY0X3QgdXNfZWxhcHNlZF90aHJlYWQpCit7CisJY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJ0aHJlYWRfZXhpdCI7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJcGVyZl9pb193cml0ZV9mbChmaWxlLCBsaW5lLCBldmVudF9uYW1lLCBOVUxMLCAmdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCSAmdXNfZWxhcHNlZF90aHJlYWQsIE5VTEwsICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fZXhlY19mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJICAgICAgIGludCBleGVjX2lkLCBjb25zdCBjaGFyICpleGUsIGNvbnN0IGNoYXIgKiphcmd2KQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAiZXhlYyI7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJc3RyYnVmX2FkZGYoJmJ1Zl9wYXlsb2FkLCAiaWQ6JWQgIiwgZXhlY19pZCk7CisJc3RyYnVmX2FkZHN0cigmYnVmX3BheWxvYWQsICJhcmd2OlsiKTsKKwlpZiAoZXhlKSB7CisJCXN0cmJ1Zl9hZGRzdHIoJmJ1Zl9wYXlsb2FkLCBleGUpOworCQlpZiAoYXJndlswXSkKKwkJCXN0cmJ1Zl9hZGRjaCgmYnVmX3BheWxvYWQsICcgJyk7CisJfQorCXNxX2FwcGVuZF9xdW90ZV9hcmd2X3ByZXR0eSgmYnVmX3BheWxvYWQsIGFyZ3YpOworCXN0cmJ1Zl9hZGRjaCgmYnVmX3BheWxvYWQsICddJyk7CisKKwlwZXJmX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsIGV2ZW50X25hbWUsIE5VTEwsICZ1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJIE5VTEwsIE5VTEwsICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fZXhlY19yZXN1bHRfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCQkgICAgICB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLCBpbnQgZXhlY19pZCwKKwkJCSAgICAgIGludCBjb2RlKQoreworCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAiZXhlY19yZXN1bHQiOworCXN0cnVjdCBzdHJidWYgYnVmX3BheWxvYWQgPSBTVFJCVUZfSU5JVDsKKworCXN0cmJ1Zl9hZGRmKCZidWZfcGF5bG9hZCwgImlkOiVkIGNvZGU6JWQiLCBleGVjX2lkLCBjb2RlKTsKKwlpZiAoY29kZSA+IDApCisJCXN0cmJ1Zl9hZGRmKCZidWZfcGF5bG9hZCwgIiBlcnI6JXMiLCBzdHJlcnJvcihjb2RlKSk7CisKKwlwZXJmX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsIGV2ZW50X25hbWUsIE5VTEwsICZ1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJIE5VTEwsIE5VTEwsICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fcGFyYW1fZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKnBhcmFtLAorCQkJY29uc3QgY2hhciAqdmFsdWUpCit7CisJY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJkZWZfcGFyYW0iOworCXN0cnVjdCBzdHJidWYgYnVmX3BheWxvYWQgPSBTVFJCVUZfSU5JVDsKKworCXN0cmJ1Zl9hZGRmKCZidWZfcGF5bG9hZCwgIiVzOiVzIiwgcGFyYW0sIHZhbHVlKTsKKworCXBlcmZfaW9fd3JpdGVfZmwoZmlsZSwgbGluZSwgZXZlbnRfbmFtZSwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwKKwkJCSAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX3JlcG9fZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsCisJCSAgICAgICBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbykKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gImRlZl9yZXBvIjsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisKKwlzdHJidWZfYWRkc3RyKCZidWZfcGF5bG9hZCwgIndvcmt0cmVlOiIpOworCXNxX3F1b3RlX2J1Zl9wcmV0dHkoJmJ1Zl9wYXlsb2FkLCByZXBvLT53b3JrdHJlZSk7CisKKwlwZXJmX2lvX3dyaXRlX2ZsKGZpbGUsIGxpbmUsIGV2ZW50X25hbWUsIHJlcG8sIE5VTEwsIE5VTEwsIE5VTEwsCisJCQkgJmJ1Zl9wYXlsb2FkKTsKKwlzdHJidWZfcmVsZWFzZSgmYnVmX3BheWxvYWQpOworfQorCitzdGF0aWMgdm9pZCBmbl9yZWdpb25fZW50ZXJfcHJpbnRmX3ZhX2ZsKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLAorCQkJCQkgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCQkJIGNvbnN0IGNoYXIgKmNhdGVnb3J5LAorCQkJCQkgY29uc3QgY2hhciAqbGFiZWwsCisJCQkJCSBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCQkJIGNvbnN0IGNoYXIgKmZtdCwgdmFfbGlzdCBhcCkKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gInJlZ2lvbl9lbnRlciI7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJaWYgKGxhYmVsKQorCQlzdHJidWZfYWRkZigmYnVmX3BheWxvYWQsICJsYWJlbDolcyIsIGxhYmVsKTsKKwlpZiAoZm10ICYmICpmbXQpIHsKKwkJc3RyYnVmX2FkZGNoKCZidWZfcGF5bG9hZCwgJyAnKTsKKwkJbWF5YmVfYXBwZW5kX3N0cmluZ192YSgmYnVmX3BheWxvYWQsIGZtdCwgYXApOworCX0KKworCXBlcmZfaW9fd3JpdGVfZmwoZmlsZSwgbGluZSwgZXZlbnRfbmFtZSwgcmVwbywgJnVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCQkgTlVMTCwgY2F0ZWdvcnksICZidWZfcGF5bG9hZCk7CisJc3RyYnVmX3JlbGVhc2UoJmJ1Zl9wYXlsb2FkKTsKK30KKworc3RhdGljIHZvaWQgZm5fcmVnaW9uX2xlYXZlX3ByaW50Zl92YV9mbCgKKwljb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgdWludDY0X3QgdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwl1aW50NjRfdCB1c19lbGFwc2VkX3JlZ2lvbiwgY29uc3QgY2hhciAqY2F0ZWdvcnksIGNvbnN0IGNoYXIgKmxhYmVsLAorCWNvbnN0IHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLCBjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXApCit7CisJY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJyZWdpb25fbGVhdmUiOworCXN0cnVjdCBzdHJidWYgYnVmX3BheWxvYWQgPSBTVFJCVUZfSU5JVDsKKworCWlmIChsYWJlbCkKKwkJc3RyYnVmX2FkZGYoJmJ1Zl9wYXlsb2FkLCAibGFiZWw6JXMiLCBsYWJlbCk7CisJaWYgKGZtdCAmJiAqZm10KSB7CisJCXN0cmJ1Zl9hZGRjaCgmYnVmX3BheWxvYWQsICcgJyApOworCQltYXliZV9hcHBlbmRfc3RyaW5nX3ZhKCZidWZfcGF5bG9hZCwgZm10LCBhcCk7CisJfQorCisJcGVyZl9pb193cml0ZV9mbChmaWxlLCBsaW5lLCBldmVudF9uYW1lLCByZXBvLCAmdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCSAmdXNfZWxhcHNlZF9yZWdpb24sIGNhdGVnb3J5LCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2RhdGFfZmwoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIHVpbnQ2NF90IHVzX2VsYXBzZWRfYWJzb2x1dGUsCisJCSAgICAgICB1aW50NjRfdCB1c19lbGFwc2VkX3JlZ2lvbiwgY29uc3QgY2hhciAqY2F0ZWdvcnksCisJCSAgICAgICBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgY29uc3QgY2hhciAqa2V5LAorCQkgICAgICAgY29uc3QgY2hhciAqdmFsdWUpCit7CisJY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJkYXRhIjsKKwlzdHJ1Y3Qgc3RyYnVmIGJ1Zl9wYXlsb2FkID0gU1RSQlVGX0lOSVQ7CisKKwlzdHJidWZfYWRkZigmYnVmX3BheWxvYWQsICIlczolcyIsIGtleSwgdmFsdWUpOworCisJcGVyZl9pb193cml0ZV9mbChmaWxlLCBsaW5lLCBldmVudF9uYW1lLCByZXBvLCAmdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCSAmdXNfZWxhcHNlZF9yZWdpb24sIGNhdGVnb3J5LCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX2RhdGFfanNvbl9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCSAgICB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLAorCQkJICAgIHVpbnQ2NF90IHVzX2VsYXBzZWRfcmVnaW9uLCBjb25zdCBjaGFyICpjYXRlZ29yeSwKKwkJCSAgICBjb25zdCBzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywgY29uc3QgY2hhciAqa2V5LAorCQkJICAgIGNvbnN0IHN0cnVjdCBqc29uX3dyaXRlciAqdmFsdWUpCit7CisJY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJkYXRhX2pzb24iOworCXN0cnVjdCBzdHJidWYgYnVmX3BheWxvYWQgPSBTVFJCVUZfSU5JVDsKKworCXN0cmJ1Zl9hZGRmKCZidWZfcGF5bG9hZCwgIiVzOiVzIiwga2V5LCB2YWx1ZS0+anNvbi5idWYpOworCisJcGVyZl9pb193cml0ZV9mbChmaWxlLCBsaW5lLCBldmVudF9uYW1lLCByZXBvLCAmdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCSAmdXNfZWxhcHNlZF9yZWdpb24sIGNhdGVnb3J5LCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0YXRpYyB2b2lkIGZuX3ByaW50Zl92YV9mbChjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwKKwkJCSAgICB1aW50NjRfdCB1c19lbGFwc2VkX2Fic29sdXRlLCBjb25zdCBjaGFyICpmbXQsCisJCQkgICAgdmFfbGlzdCBhcCkKK3sKKwljb25zdCBjaGFyICpldmVudF9uYW1lID0gInByaW50ZiI7CisJc3RydWN0IHN0cmJ1ZiBidWZfcGF5bG9hZCA9IFNUUkJVRl9JTklUOworCisJbWF5YmVfYXBwZW5kX3N0cmluZ192YSgmYnVmX3BheWxvYWQsIGZtdCwgYXApOworCisJcGVyZl9pb193cml0ZV9mbChmaWxlLCBsaW5lLCBldmVudF9uYW1lLCBOVUxMLCAmdXNfZWxhcHNlZF9hYnNvbHV0ZSwKKwkJCSBOVUxMLCBOVUxMLCAmYnVmX3BheWxvYWQpOworCXN0cmJ1Zl9yZWxlYXNlKCZidWZfcGF5bG9hZCk7Cit9CisKK3N0cnVjdCB0cjJfdGd0IHRyMl90Z3RfcGVyZiA9IHsKKwkmdHIyZHN0X3BlcmYsCisKKwlmbl9pbml0LAorCWZuX3Rlcm0sCisKKwlmbl92ZXJzaW9uX2ZsLAorCWZuX3N0YXJ0X2ZsLAorCWZuX2V4aXRfZmwsCisJZm5fc2lnbmFsLAorCWZuX2F0ZXhpdCwKKwlmbl9lcnJvcl92YV9mbCwKKwlmbl9jb21tYW5kX3BhdGhfZmwsCisJZm5fY29tbWFuZF9uYW1lX2ZsLAorCWZuX2NvbW1hbmRfbW9kZV9mbCwKKwlmbl9hbGlhc19mbCwKKwlmbl9jaGlsZF9zdGFydF9mbCwKKwlmbl9jaGlsZF9leGl0X2ZsLAorCWZuX3RocmVhZF9zdGFydF9mbCwKKwlmbl90aHJlYWRfZXhpdF9mbCwKKwlmbl9leGVjX2ZsLAorCWZuX2V4ZWNfcmVzdWx0X2ZsLAorCWZuX3BhcmFtX2ZsLAorCWZuX3JlcG9fZmwsCisJZm5fcmVnaW9uX2VudGVyX3ByaW50Zl92YV9mbCwKKwlmbl9yZWdpb25fbGVhdmVfcHJpbnRmX3ZhX2ZsLAorCWZuX2RhdGFfZmwsCisJZm5fZGF0YV9qc29uX2ZsLAorCWZuX3ByaW50Zl92YV9mbCwKK307CmRpZmYgLS1naXQgYS90cmFjZTIvdHIyX3Rscy5jIGIvdHJhY2UyL3RyMl90bHMuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNjdjMjM3Ci0tLSAvZGV2L251bGwKKysrIGIvdHJhY2UyL3RyMl90bHMuYwpAQCAtMCwwICsxLDE4MCBAQAorI2luY2x1ZGUgImNhY2hlLmgiCisjaW5jbHVkZSAidGhyZWFkLXV0aWxzLmgiCisjaW5jbHVkZSAidHJhY2UyL3RyMl90bHMuaCIKKworLyoKKyAqIEluaXRpYWxpemUgc2l6ZSBvZiB0aGUgdGhyZWFkIHN0YWNrIGZvciBuZXN0ZWQgcmVnaW9ucy4KKyAqIFRoaXMgaXMgdXNlZCB0byBzdG9yZSBuZXN0ZWQgcmVnaW9uIHN0YXJ0IHRpbWVzLiAgTm90ZSB0aGF0CisgKiB0aGlzIHN0YWNrIGlzIHBlci10aHJlYWQgYW5kIG5vdCBwZXItdHJhY2Uta2V5LgorICovCisjZGVmaW5lIFRSMl9SRUdJT05fTkVTVElOR19JTklUSUFMX1NJWkUgKDEwMCkKKworc3RhdGljIHN0cnVjdCB0cjJ0bHNfdGhyZWFkX2N0eCAqdHIydGxzX3RocmVhZF9tYWluOworc3RhdGljIHVpbnQ2NF90IHRyMnRsc191c19zdGFydF9wcm9jZXNzOworCitzdGF0aWMgcHRocmVhZF9tdXRleF90IHRyMnRsc19tdXRleDsKK3N0YXRpYyBwdGhyZWFkX2tleV90IHRyMnRsc19rZXk7CisKK3N0YXRpYyBpbnQgdHIyX25leHRfdGhyZWFkX2lkOyAvKiBtb2RpZnkgdW5kZXIgbG9jayAqLworCit2b2lkIHRyMnRsc19zdGFydF9wcm9jZXNzX2Nsb2NrKHZvaWQpCit7CisJaWYgKHRyMnRsc191c19zdGFydF9wcm9jZXNzKQorCQlyZXR1cm47CisKKwkvKgorCSAqIEtlZXAgdGhlIGFic29sdXRlIHN0YXJ0IHRpbWUgb2YgdGhlIHByb2Nlc3MgKGkuZS4gdGhlIG1haW4KKwkgKiBwcm9jZXNzKSBpbiBhIGZpeGVkIHZhcmlhYmxlIHNpbmNlIG90aGVyIHRocmVhZHMgbmVlZCB0bworCSAqIGFjY2VzcyBpdC4gIFRoaXMgYWxsb3dzIHRoZW0gdG8gZG8gdGhhdCB3aXRob3V0IGEgbG9jayBvbgorCSAqIG1haW4gdGhyZWFkJ3MgYXJyYXkgZGF0YSAoYmVjYXVzZSBvZiByZWFsbG9jcykuCisJICovCisJdHIydGxzX3VzX3N0YXJ0X3Byb2Nlc3MgPSBnZXRuYW5vdGltZSgpIC8gMTAwMDsKK30KKworc3RydWN0IHRyMnRsc190aHJlYWRfY3R4ICp0cjJ0bHNfY3JlYXRlX3NlbGYoY29uc3QgY2hhciAqdGhyZWFkX25hbWUsCisJCQkJCSAgICAgdWludDY0X3QgdXNfdGhyZWFkX3N0YXJ0KQoreworCXN0cnVjdCB0cjJ0bHNfdGhyZWFkX2N0eCAqY3R4ID0geGNhbGxvYygxLCBzaXplb2YoKmN0eCkpOworCisJLyoKKwkgKiBJbXBsaWNpdGx5ICJ0cjJ0bHNfcHVzaF9zZWxmKCkiIHRvIGNhcHR1cmUgdGhlIHRocmVhZCdzIHN0YXJ0CisJICogdGltZSBpbiBhcnJheV91c19zdGFydFswXS4gIEZvciB0aGUgbWFpbiB0aHJlYWQgdGhpcyBnaXZlcyB1cyB0aGUKKwkgKiBhcHBsaWNhdGlvbiBydW4gdGltZS4KKwkgKi8KKwljdHgtPmFsbG9jID0gVFIyX1JFR0lPTl9ORVNUSU5HX0lOSVRJQUxfU0laRTsKKwljdHgtPmFycmF5X3VzX3N0YXJ0ID0gKHVpbnQ2NF90ICopeGNhbGxvYyhjdHgtPmFsbG9jLCBzaXplb2YodWludDY0X3QpKTsKKwljdHgtPmFycmF5X3VzX3N0YXJ0W2N0eC0+bnJfb3Blbl9yZWdpb25zKytdID0gdXNfdGhyZWFkX3N0YXJ0OworCisJY3R4LT50aHJlYWRfaWQgPSB0cjJ0bHNfbG9ja2VkX2luY3JlbWVudCgmdHIyX25leHRfdGhyZWFkX2lkKTsKKworCXN0cmJ1Zl9pbml0KCZjdHgtPnRocmVhZF9uYW1lLCAwKTsKKwlpZiAoY3R4LT50aHJlYWRfaWQpCisJCXN0cmJ1Zl9hZGRmKCZjdHgtPnRocmVhZF9uYW1lLCAidGglMDJkOiIsIGN0eC0+dGhyZWFkX2lkKTsKKwlzdHJidWZfYWRkc3RyKCZjdHgtPnRocmVhZF9uYW1lLCB0aHJlYWRfbmFtZSk7CisJaWYgKGN0eC0+dGhyZWFkX25hbWUubGVuID4gVFIyX01BWF9USFJFQURfTkFNRSkKKwkJc3RyYnVmX3NldGxlbigmY3R4LT50aHJlYWRfbmFtZSwgVFIyX01BWF9USFJFQURfTkFNRSk7CisKKwlwdGhyZWFkX3NldHNwZWNpZmljKHRyMnRsc19rZXksIGN0eCk7CisKKwlyZXR1cm4gY3R4OworfQorCitzdHJ1Y3QgdHIydGxzX3RocmVhZF9jdHggKnRyMnRsc19nZXRfc2VsZih2b2lkKQoreworCXN0cnVjdCB0cjJ0bHNfdGhyZWFkX2N0eCAqY3R4OworCisJaWYgKCFIQVZFX1RIUkVBRFMpCisJCXJldHVybiB0cjJ0bHNfdGhyZWFkX21haW47CisKKwljdHggPSBwdGhyZWFkX2dldHNwZWNpZmljKHRyMnRsc19rZXkpOworCisJLyoKKwkgKiBJZiB0aGUgdGhyZWFkLXByb2MgZGlkIG5vdCBjYWxsIHRyYWNlMl90aHJlYWRfc3RhcnQoKSwgd2Ugd29uJ3QKKwkgKiBoYXZlIGFueSBUTFMgZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIGN1cnJlbnQgdGhyZWFkLiAgRml4IGl0CisJICogaGVyZSBhbmQgc2lsZW50bHkgY29udGludWUuCisJICovCisJaWYgKCFjdHgpCisJCWN0eCA9IHRyMnRsc19jcmVhdGVfc2VsZigidW5rbm93biIsIGdldG5hbm90aW1lKCkgLyAxMDAwKTsKKworCXJldHVybiBjdHg7Cit9CisKK2ludCB0cjJ0bHNfaXNfbWFpbl90aHJlYWQodm9pZCkKK3sKKwlpZiAoIUhBVkVfVEhSRUFEUykKKwkJcmV0dXJuIDE7CisKKwlyZXR1cm4gcHRocmVhZF9nZXRzcGVjaWZpYyh0cjJ0bHNfa2V5KSA9PSB0cjJ0bHNfdGhyZWFkX21haW47Cit9CisKK3ZvaWQgdHIydGxzX3Vuc2V0X3NlbGYodm9pZCkKK3sKKwlzdHJ1Y3QgdHIydGxzX3RocmVhZF9jdHggKmN0eDsKKworCWN0eCA9IHRyMnRsc19nZXRfc2VsZigpOworCisJcHRocmVhZF9zZXRzcGVjaWZpYyh0cjJ0bHNfa2V5LCBOVUxMKTsKKworCWZyZWUoY3R4LT5hcnJheV91c19zdGFydCk7CisJZnJlZShjdHgpOworfQorCit2b2lkIHRyMnRsc19wdXNoX3NlbGYodWludDY0X3QgdXNfbm93KQoreworCXN0cnVjdCB0cjJ0bHNfdGhyZWFkX2N0eCAqY3R4ID0gdHIydGxzX2dldF9zZWxmKCk7CisKKwlBTExPQ19HUk9XKGN0eC0+YXJyYXlfdXNfc3RhcnQsIGN0eC0+bnJfb3Blbl9yZWdpb25zICsgMSwgY3R4LT5hbGxvYyk7CisJY3R4LT5hcnJheV91c19zdGFydFtjdHgtPm5yX29wZW5fcmVnaW9ucysrXSA9IHVzX25vdzsKK30KKwordm9pZCB0cjJ0bHNfcG9wX3NlbGYodm9pZCkKK3sKKwlzdHJ1Y3QgdHIydGxzX3RocmVhZF9jdHggKmN0eCA9IHRyMnRsc19nZXRfc2VsZigpOworCisJaWYgKCFjdHgtPm5yX29wZW5fcmVnaW9ucykKKwkJQlVHKCJubyBvcGVuIHJlZ2lvbnMgaW4gdGhyZWFkICclcyciLCBjdHgtPnRocmVhZF9uYW1lLmJ1Zik7CisKKwljdHgtPm5yX29wZW5fcmVnaW9ucy0tOworfQorCit2b2lkIHRyMnRsc19wb3BfdW53aW5kX3NlbGYodm9pZCkKK3sKKwlzdHJ1Y3QgdHIydGxzX3RocmVhZF9jdHggKmN0eCA9IHRyMnRsc19nZXRfc2VsZigpOworCisJd2hpbGUgKGN0eC0+bnJfb3Blbl9yZWdpb25zID4gMSkKKwkJdHIydGxzX3BvcF9zZWxmKCk7Cit9CisKK3VpbnQ2NF90IHRyMnRsc19yZWdpb25fZWxhc3BlZF9zZWxmKHVpbnQ2NF90IHVzKQoreworCXN0cnVjdCB0cjJ0bHNfdGhyZWFkX2N0eCAqY3R4OworCXVpbnQ2NF90IHVzX3N0YXJ0OworCisJY3R4ID0gdHIydGxzX2dldF9zZWxmKCk7CisJaWYgKCFjdHgtPm5yX29wZW5fcmVnaW9ucykKKwkJcmV0dXJuIDA7CisKKwl1c19zdGFydCA9IGN0eC0+YXJyYXlfdXNfc3RhcnRbY3R4LT5ucl9vcGVuX3JlZ2lvbnMgLSAxXTsKKworCXJldHVybiB1cyAtIHVzX3N0YXJ0OworfQorCit1aW50NjRfdCB0cjJ0bHNfYWJzb2x1dGVfZWxhcHNlZCh1aW50NjRfdCB1cykKK3sKKwlpZiAoIXRyMnRsc190aHJlYWRfbWFpbikKKwkJcmV0dXJuIDA7CisKKwlyZXR1cm4gdXMgLSB0cjJ0bHNfdXNfc3RhcnRfcHJvY2VzczsKK30KKwordm9pZCB0cjJ0bHNfaW5pdCh2b2lkKQoreworCXRyMnRsc19zdGFydF9wcm9jZXNzX2Nsb2NrKCk7CisKKwlwdGhyZWFkX2tleV9jcmVhdGUoJnRyMnRsc19rZXksIE5VTEwpOworCWluaXRfcmVjdXJzaXZlX211dGV4KCZ0cjJ0bHNfbXV0ZXgpOworCisJdHIydGxzX3RocmVhZF9tYWluID0KKwkJdHIydGxzX2NyZWF0ZV9zZWxmKCJtYWluIiwgdHIydGxzX3VzX3N0YXJ0X3Byb2Nlc3MpOworfQorCit2b2lkIHRyMnRsc19yZWxlYXNlKHZvaWQpCit7CisJdHIydGxzX3Vuc2V0X3NlbGYoKTsKKwl0cjJ0bHNfdGhyZWFkX21haW4gPSBOVUxMOworCisJcHRocmVhZF9tdXRleF9kZXN0cm95KCZ0cjJ0bHNfbXV0ZXgpOworCXB0aHJlYWRfa2V5X2RlbGV0ZSh0cjJ0bHNfa2V5KTsKK30KKworaW50IHRyMnRsc19sb2NrZWRfaW5jcmVtZW50KGludCAqcCkKK3sKKwlpbnQgY3VycmVudF92YWx1ZTsKKworCXB0aHJlYWRfbXV0ZXhfbG9jaygmdHIydGxzX211dGV4KTsKKwljdXJyZW50X3ZhbHVlID0gKnA7CisJKnAgPSBjdXJyZW50X3ZhbHVlICsgMTsKKwlwdGhyZWFkX211dGV4X3VubG9jaygmdHIydGxzX211dGV4KTsKKworCXJldHVybiBjdXJyZW50X3ZhbHVlOworfQpkaWZmIC0tZ2l0IGEvdHJhY2UyL3RyMl90bHMuaCBiL3RyYWNlMi90cjJfdGxzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjFlMzI3YQotLS0gL2Rldi9udWxsCisrKyBiL3RyYWNlMi90cjJfdGxzLmgKQEAgLTAsMCArMSwxMDMgQEAKKyNpZm5kZWYgVFIyX1RMU19ICisjZGVmaW5lIFRSMl9UTFNfSAorCisjaW5jbHVkZSAic3RyYnVmLmgiCisKKy8qCisgKiBBcmJpdHJ5IGxpbWl0IGZvciB0aHJlYWQgbmFtZXMgZm9yIGNvbHVtbiBhbGlnbm1lbnQuCisgKi8KKyNkZWZpbmUgVFIyX01BWF9USFJFQURfTkFNRSAoMjQpCisKK3N0cnVjdCB0cjJ0bHNfdGhyZWFkX2N0eCB7CisJc3RydWN0IHN0cmJ1ZiB0aHJlYWRfbmFtZTsKKwl1aW50NjRfdCAqYXJyYXlfdXNfc3RhcnQ7CisJaW50IGFsbG9jOworCWludCBucl9vcGVuX3JlZ2lvbnM7IC8qIHBsYXlzIHJvbGUgb2YgIm5yIiBpbiBBTExPQ19HUk9XICovCisJaW50IHRocmVhZF9pZDsKK307CisKKy8qCisgKiBDcmVhdGUgVExTIGRhdGEgZm9yIHRoZSBjdXJyZW50IHRocmVhZC4gIFRoaXMgZ2l2ZXMgdXMgYSBwbGFjZSB0bworICogcHV0IHBlci10aHJlYWQgZGF0YSwgc3VjaCBhcyB0aHJlYWQgc3RhcnQgdGltZSwgZnVuY3Rpb24gbmVzdGluZworICogYW5kIGEgcGVyLXRocmVhZCBsYWJlbCBmb3Igb3VyIG1lc3NhZ2VzLgorICoKKyAqIFdlIGFzc3VtZSB0aGUgZmlyc3QgdGhyZWFkIGlzICJtYWluIi4gIE90aGVyIHRocmVhZHMgYXJlIGdpdmVuCisgKiBub24temVybyB0aHJlYWQtaWRzIHRvIGhlbHAgZGlzdGluZ3Vpc2ggbWVzc2FnZXMgZnJvbSBjb25jdXJyZW50CisgKiB0aHJlYWRzLgorICoKKyAqIFRydW5jYXRlIHRoZSB0aHJlYWQgbmFtZSBpZiBuZWNlc3NhcnkgdG8gaGVscCB3aXRoIGNvbHVtbiBhbGlnbm1lbnQKKyAqIGluIHByaW50Zi1zdHlsZSBtZXNzYWdlcy4KKyAqCisgKiBJbiB0aGlzIGFuZCBhbGwgZm9sbG93aW5nIGZ1bmN0aW9ucyB0aGUgdGVybSAic2VsZiIgcmVmZXJzIHRvIHRoZQorICogY3VycmVudCB0aHJlYWQuCisgKi8KK3N0cnVjdCB0cjJ0bHNfdGhyZWFkX2N0eCAqdHIydGxzX2NyZWF0ZV9zZWxmKGNvbnN0IGNoYXIgKnRocmVhZF9uYW1lLAorCQkJCQkgICAgIHVpbnQ2NF90IHVzX3RocmVhZF9zdGFydCk7CisKKy8qCisgKiBHZXQgb3VyIFRMUyBkYXRhLgorICovCitzdHJ1Y3QgdHIydGxzX3RocmVhZF9jdHggKnRyMnRsc19nZXRfc2VsZih2b2lkKTsKKworLyoKKyAqIHJldHVybiB0cnVlIGlmIHRoZSBjdXJyZW50IHRocmVhZCBpcyB0aGUgbWFpbiB0aHJlYWQuCisgKi8KK2ludCB0cjJ0bHNfaXNfbWFpbl90aHJlYWQodm9pZCk7CisKKy8qCisgKiBGcmVlIG91ciBUTFMgZGF0YS4KKyAqLwordm9pZCB0cjJ0bHNfdW5zZXRfc2VsZih2b2lkKTsKKworLyoKKyAqIEJlZ2luIGEgbmV3IG5lc3RlZCByZWdpb24gYW5kIHJlbWVtYmVyIHRoZSBzdGFydCB0aW1lLgorICovCit2b2lkIHRyMnRsc19wdXNoX3NlbGYodWludDY0X3QgdXNfbm93KTsKKworLyoKKyAqIEVuZCB0aGUgaW5uZXJtb3N0IG5lc3RlZCByZWdpb24uCisgKi8KK3ZvaWQgdHIydGxzX3BvcF9zZWxmKHZvaWQpOworCisvKgorICogUG9wIGFueSBleHRyYSAoYWJvdmUgdGhlIGZpcnN0KSBvcGVuIHJlZ2lvbnMgb24gdGhlIGN1cnJlbnQKKyAqIHRocmVhZCBhbmQgZGlzY2FyZC4gIER1cmluZyBhIHRocmVhZC1leGl0LCB3ZSBzaG91bGQgb25seQorICogaGF2ZSByZWdpb25bMF0gdGhhdCB3YXMgcHVzaGVkIGluIHRyYWNlMl90aHJlYWRfc3RhcnQoKSBpZgorICogdGhlIHRocmVhZCBleGl0cyBub3JtYWxseS4KKyAqLwordm9pZCB0cjJ0bHNfcG9wX3Vud2luZF9zZWxmKHZvaWQpOworCisvKgorICogQ29tcHV0ZSB0aGUgZWxhcHNlZCB0aW1lIHNpbmNlIHRoZSBpbm5lcm1vc3QgcmVnaW9uIGluIHRoZQorICogY3VycmVudCB0aHJlYWQgc3RhcnRlZCBhbmQgdGhlIGdpdmVuIHRpbWUgKHVzdWFsbHkgbm93KS4KKyAqLwordWludDY0X3QgdHIydGxzX3JlZ2lvbl9lbGFzcGVkX3NlbGYodWludDY0X3QgdXMpOworCisvKgorICogQ29tcHV0ZSB0aGUgZWxhcHNlZCB0aW1lIHNpbmNlIHRoZSBtYWluIHRocmVhZCBzdGFydGVkCisgKiBhbmQgdGhlIGdpdmVuIHRpbWUgKHVzdWFsbHkgbm93KS4gIFRoaXMgaXMgYXNzdW1lZCB0bworICogYmUgdGhlIGFic29sdXRlIHJ1biB0aW1lIG9mIHRoZSBwcm9jZXNzLgorICovCit1aW50NjRfdCB0cjJ0bHNfYWJzb2x1dGVfZWxhcHNlZCh1aW50NjRfdCB1cyk7CisKKy8qCisgKiBJbml0aWFsaXplIHRoZSB0cjIgVExTIHN5c3RlbS4KKyAqLwordm9pZCB0cjJ0bHNfaW5pdCh2b2lkKTsKKworLyoKKyAqIEZyZWUgYWxsIHRyMiBUTFMgcmVzb3VyY2VzLgorICovCit2b2lkIHRyMnRsc19yZWxlYXNlKHZvaWQpOworCisvKgorICogUHJvdGVjdGVkIGluY3JlbWVudCBvZiBhbiBpbnRlZ2VyLgorICovCitpbnQgdHIydGxzX2xvY2tlZF9pbmNyZW1lbnQoaW50ICpwKTsKKworLyoKKyAqIENhcHR1cmUgdGhlIHByb2Nlc3Mgc3RhcnQgdGltZSBhbmQgZG8gbm90aGluZyBlbHNlLgorICovCit2b2lkIHRyMnRsc19zdGFydF9wcm9jZXNzX2Nsb2NrKHZvaWQpOworCisjZW5kaWYgLyogVFIyX1RMU19IICovCmRpZmYgLS1naXQgYS90cmFpbGVyLmMgYi90cmFpbGVyLmMKaW5kZXggMDc5NmYzMi4uMGM0MTRmMiAxMDA2NDQKLS0tIGEvdHJhaWxlci5jCisrKyBiL3RyYWlsZXIuYwpAQCAtMTEyOSwxMCArMTEyOSwxMSBAQAogCQkJCWNvbnN0IHN0cnVjdCB0cmFpbGVyX2luZm8gKmluZm8sCiAJCQkJY29uc3Qgc3RydWN0IHByb2Nlc3NfdHJhaWxlcl9vcHRpb25zICpvcHRzKQogeworCXNpemVfdCBvcmlnbGVuID0gb3V0LT5sZW47CiAJc2l6ZV90IGk7CiAKIAkvKiBJZiB3ZSB3YW50IHRoZSB3aG9sZSBibG9jayB1bnRvdWNoZWQsIHdlIGNhbiB0YWtlIHRoZSBmYXN0IHBhdGguICovCi0JaWYgKCFvcHRzLT5vbmx5X3RyYWlsZXJzICYmICFvcHRzLT51bmZvbGQpIHsKKwlpZiAoIW9wdHMtPm9ubHlfdHJhaWxlcnMgJiYgIW9wdHMtPnVuZm9sZCAmJiAhb3B0cy0+ZmlsdGVyICYmICFvcHRzLT5zZXBhcmF0b3IpIHsKIAkJc3RyYnVmX2FkZChvdXQsIGluZm8tPnRyYWlsZXJfc3RhcnQsCiAJCQkgICBpbmZvLT50cmFpbGVyX2VuZCAtIGluZm8tPnRyYWlsZXJfc3RhcnQpOwogCQlyZXR1cm47CkBAIC0xMTQ3LDE1ICsxMTQ4LDI5IEBACiAJCQlzdHJ1Y3Qgc3RyYnVmIHZhbCA9IFNUUkJVRl9JTklUOwogCiAJCQlwYXJzZV90cmFpbGVyKCZ0b2ssICZ2YWwsIE5VTEwsIHRyYWlsZXIsIHNlcGFyYXRvcl9wb3MpOwotCQkJaWYgKG9wdHMtPnVuZm9sZCkKLQkJCQl1bmZvbGRfdmFsdWUoJnZhbCk7CisJCQlpZiAoIW9wdHMtPmZpbHRlciB8fCBvcHRzLT5maWx0ZXIoJnRvaywgb3B0cy0+ZmlsdGVyX2RhdGEpKSB7CisJCQkJaWYgKG9wdHMtPnVuZm9sZCkKKwkJCQkJdW5mb2xkX3ZhbHVlKCZ2YWwpOwogCi0JCQlzdHJidWZfYWRkZihvdXQsICIlczogJXNcbiIsIHRvay5idWYsIHZhbC5idWYpOworCQkJCWlmIChvcHRzLT5zZXBhcmF0b3IgJiYgb3V0LT5sZW4gIT0gb3JpZ2xlbikKKwkJCQkJc3RyYnVmX2FkZGJ1ZihvdXQsIG9wdHMtPnNlcGFyYXRvcik7CisJCQkJaWYgKCFvcHRzLT52YWx1ZV9vbmx5KQorCQkJCQlzdHJidWZfYWRkZihvdXQsICIlczogIiwgdG9rLmJ1Zik7CisJCQkJc3RyYnVmX2FkZGJ1ZihvdXQsICZ2YWwpOworCQkJCWlmICghb3B0cy0+c2VwYXJhdG9yKQorCQkJCQlzdHJidWZfYWRkY2gob3V0LCAnXG4nKTsKKwkJCX0KIAkJCXN0cmJ1Zl9yZWxlYXNlKCZ0b2spOwogCQkJc3RyYnVmX3JlbGVhc2UoJnZhbCk7CiAKIAkJfSBlbHNlIGlmICghb3B0cy0+b25seV90cmFpbGVycykgeworCQkJaWYgKG9wdHMtPnNlcGFyYXRvciAmJiBvdXQtPmxlbiAhPSBvcmlnbGVuKSB7CisJCQkJc3RyYnVmX2FkZGJ1ZihvdXQsIG9wdHMtPnNlcGFyYXRvcik7CisJCQl9CiAJCQlzdHJidWZfYWRkc3RyKG91dCwgdHJhaWxlcik7CisJCQlpZiAob3B0cy0+c2VwYXJhdG9yKSB7CisJCQkJc3RyYnVmX3J0cmltKG91dCk7CisJCQl9CiAJCX0KIAl9CiAKZGlmZiAtLWdpdCBhL3RyYWlsZXIuaCBiL3RyYWlsZXIuaAppbmRleCBiOTk3NzM5Li4yMDNhY2Y0IDEwMDY0NAotLS0gYS90cmFpbGVyLmgKKysrIGIvdHJhaWxlci5oCkBAIC03Miw2ICs3MiwxMCBAQAogCWludCBvbmx5X2lucHV0OwogCWludCB1bmZvbGQ7CiAJaW50IG5vX2RpdmlkZXI7CisJaW50IHZhbHVlX29ubHk7CisJY29uc3Qgc3RydWN0IHN0cmJ1ZiAqc2VwYXJhdG9yOworCWludCAoKmZpbHRlcikoY29uc3Qgc3RydWN0IHN0cmJ1ZiAqLCB2b2lkICopOworCXZvaWQgKmZpbHRlcl9kYXRhOwogfTsKIAogI2RlZmluZSBQUk9DRVNTX1RSQUlMRVJfT1BUSU9OU19JTklUIHswfQpkaWZmIC0tZ2l0IGEvdHJhbnNwb3J0LWhlbHBlci5jIGIvdHJhbnNwb3J0LWhlbHBlci5jCmluZGV4IGY3OTIyMWMuLjIwYTcxODUgMTAwNjQ0Ci0tLSBhL3RyYW5zcG9ydC1oZWxwZXIuYworKysgYi90cmFuc3BvcnQtaGVscGVyLmMKQEAgLTMzLDYgKzMzLDE2IEBACiAJCWNoZWNrX2Nvbm5lY3Rpdml0eSA6IDEsCiAJCW5vX2Rpc2Nvbm5lY3RfcmVxIDogMSwKIAkJbm9fcHJpdmF0ZV91cGRhdGUgOiAxOworCisJLyoKKwkgKiBBcyBhbiBvcHRpbWl6YXRpb24sIHRoZSB0cmFuc3BvcnQgY29kZSBtYXkgaW52b2tlIGZldGNoIGJlZm9yZQorCSAqIGdldF9yZWZzX2xpc3QuIElmIHRoaXMgaGFwcGVucywgYW5kIGlmIHRoZSB0cmFuc3BvcnQgaGVscGVyIGRvZXNuJ3QKKwkgKiBzdXBwb3J0IGNvbm5lY3Qgb3Igc3RhdGVsZXNzX2Nvbm5lY3QsIHdlIG5lZWQgdG8gaW52b2tlCisJICogZ2V0X3JlZnNfbGlzdCBvdXJzZWx2ZXMgaWYgd2UgaGF2ZW4ndCBhbHJlYWR5IGRvbmUgc28uIEtlZXAgdHJhY2sgb2YKKwkgKiB3aGV0aGVyIHdlIGhhdmUgaW52b2tlZCBnZXRfcmVmc19saXN0LgorCSAqLworCXVuc2lnbmVkIGdldF9yZWZzX2xpc3RfY2FsbGVkIDogMTsKKwogCWNoYXIgKmV4cG9ydF9tYXJrczsKIAljaGFyICppbXBvcnRfbWFya3M7CiAJLyogVGhlc2UgZ28gZnJvbSByZW1vdGUgbmFtZSAoYXMgaW4gImxpc3QiKSB0byBwcml2YXRlIG5hbWUgKi8KQEAgLTEyNyw2ICsxMzcsOCBAQAogCQlhcmd2X2FycmF5X3B1c2hmKCZoZWxwZXItPmVudl9hcnJheSwgIiVzPSVzIiwKIAkJCQkgR0lUX0RJUl9FTlZJUk9OTUVOVCwgZ2V0X2dpdF9kaXIoKSk7CiAKKwloZWxwZXItPnRyYWNlMl9jaGlsZF9jbGFzcyA9IGhlbHBlci0+YXJncy5hcmd2WzBdOyAvKiAicmVtb3RlLTxuYW1lPiIgKi8KKwogCWNvZGUgPSBzdGFydF9jb21tYW5kKGhlbHBlcik7CiAJaWYgKGNvZGUgPCAwICYmIGVycm5vID09IEVOT0VOVCkKIAkJZGllKF8oInVuYWJsZSB0byBmaW5kIHJlbW90ZSBoZWxwZXIgZm9yICclcyciKSwgZGF0YS0+bmFtZSk7CkBAIC0zOTIsMTEgKzQwNCwxMiBAQAogCXNlbmRsaW5lKGRhdGEsICZidWYpOwogCiAJd2hpbGUgKDEpIHsKKwkJY29uc3QgY2hhciAqbmFtZTsKKwogCQlpZiAocmVjdmxpbmUoZGF0YSwgJmJ1ZikpCiAJCQlleGl0KDEyOCk7CiAKLQkJaWYgKHN0YXJ0c193aXRoKGJ1Zi5idWYsICJsb2NrICIpKSB7Ci0JCQljb25zdCBjaGFyICpuYW1lID0gYnVmLmJ1ZiArIDU7CisJCWlmIChza2lwX3ByZWZpeChidWYuYnVmLCAibG9jayAiLCAmbmFtZSkpIHsKIAkJCWlmICh0cmFuc3BvcnQtPnBhY2tfbG9ja2ZpbGUpCiAJCQkJd2FybmluZyhfKCIlcyBhbHNvIGxvY2tlZCAlcyIpLCBkYXRhLT5uYW1lLCBuYW1lKTsKIAkJCWVsc2UKQEAgLTQyMSw3ICs0MzQsNyBAQAogCXN0cnVjdCBoZWxwZXJfZGF0YSAqZGF0YSA9IHRyYW5zcG9ydC0+ZGF0YTsKIAlpbnQgY2F0X2Jsb2JfZmQsIGNvZGU7CiAJY2hpbGRfcHJvY2Vzc19pbml0KGZhc3RpbXBvcnQpOwotCWZhc3RpbXBvcnQtPmluID0gaGVscGVyLT5vdXQ7CisJZmFzdGltcG9ydC0+aW4gPSB4ZHVwKGhlbHBlci0+b3V0KTsKIAlhcmd2X2FycmF5X3B1c2goJmZhc3RpbXBvcnQtPmFyZ3MsICJmYXN0LWltcG9ydCIpOwogCWFyZ3ZfYXJyYXlfcHVzaCgmZmFzdGltcG9ydC0+YXJncywgIi0tYWxsb3ctdW5zYWZlLWZlYXR1cmVzIik7CiAJYXJndl9hcnJheV9wdXNoKCZmYXN0aW1wb3J0LT5hcmdzLCBkZWJ1ZyA/ICItLXN0YXRzIiA6ICItLXF1aWV0Iik7CkBAIC02NTEsMTcgKzY2NCwyNSBAQAogCXJldHVybiAwOwogfQogCitzdGF0aWMgc3RydWN0IHJlZiAqZ2V0X3JlZnNfbGlzdF91c2luZ19saXN0KHN0cnVjdCB0cmFuc3BvcnQgKnRyYW5zcG9ydCwKKwkJCQkJICAgIGludCBmb3JfcHVzaCk7CisKIHN0YXRpYyBpbnQgZmV0Y2goc3RydWN0IHRyYW5zcG9ydCAqdHJhbnNwb3J0LAogCQkgaW50IG5yX2hlYWRzLCBzdHJ1Y3QgcmVmICoqdG9fZmV0Y2gpCiB7CiAJc3RydWN0IGhlbHBlcl9kYXRhICpkYXRhID0gdHJhbnNwb3J0LT5kYXRhOwogCWludCBpLCBjb3VudDsKIAorCWdldF9oZWxwZXIodHJhbnNwb3J0KTsKKwogCWlmIChwcm9jZXNzX2Nvbm5lY3QodHJhbnNwb3J0LCAwKSkgewogCQlkb190YWtlX292ZXIodHJhbnNwb3J0KTsKIAkJcmV0dXJuIHRyYW5zcG9ydC0+dnRhYmxlLT5mZXRjaCh0cmFuc3BvcnQsIG5yX2hlYWRzLCB0b19mZXRjaCk7CiAJfQogCisJaWYgKCFkYXRhLT5nZXRfcmVmc19saXN0X2NhbGxlZCkKKwkJZ2V0X3JlZnNfbGlzdF91c2luZ19saXN0KHRyYW5zcG9ydCwgMCk7CisKIAljb3VudCA9IDA7CiAJZm9yIChpID0gMDsgaSA8IG5yX2hlYWRzOyBpKyspCiAJCWlmICghKHRvX2ZldGNoW2ldLT5zdGF0dXMgJiBSRUZfU1RBVFVTX1VQVE9EQVRFKSkKQEAgLTY4MCwxMCArNzAxLDExIEBACiAJaWYgKGRhdGEtPnRyYW5zcG9ydF9vcHRpb25zLnVwZGF0ZV9zaGFsbG93KQogCQlzZXRfaGVscGVyX29wdGlvbih0cmFuc3BvcnQsICJ1cGRhdGUtc2hhbGxvdyIsICJ0cnVlIik7CiAKLQlpZiAoZGF0YS0+dHJhbnNwb3J0X29wdGlvbnMuZmlsdGVyX29wdGlvbnMuY2hvaWNlKQotCQlzZXRfaGVscGVyX29wdGlvbigKLQkJCXRyYW5zcG9ydCwgImZpbHRlciIsCi0JCQlkYXRhLT50cmFuc3BvcnRfb3B0aW9ucy5maWx0ZXJfb3B0aW9ucy5maWx0ZXJfc3BlYyk7CisJaWYgKGRhdGEtPnRyYW5zcG9ydF9vcHRpb25zLmZpbHRlcl9vcHRpb25zLmNob2ljZSkgeworCQljb25zdCBjaGFyICpzcGVjID0gZXhwYW5kX2xpc3Rfb2JqZWN0c19maWx0ZXJfc3BlYygKKwkJCSZkYXRhLT50cmFuc3BvcnRfb3B0aW9ucy5maWx0ZXJfb3B0aW9ucyk7CisJCXNldF9oZWxwZXJfb3B0aW9uKHRyYW5zcG9ydCwgImZpbHRlciIsIHNwZWMpOworCX0KIAogCWlmIChkYXRhLT50cmFuc3BvcnRfb3B0aW9ucy5uZWdvdGlhdGlvbl90aXBzKQogCQl3YXJuaW5nKCJJZ25vcmluZyAtLW5lZ290aWF0aW9uLXRpcCBiZWNhdXNlIHRoZSBwcm90b2NvbCBkb2VzIG5vdCBzdXBwb3J0IGl0LiIpOwpAQCAtODM0LDYgKzg1NiwxMCBAQAogCQkJZGllKF8oImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tc2lnbmVkPWlmLWFza2VkIiksIG5hbWUpOwogCX0KIAorCWlmIChmbGFncyAmIFRSQU5TUE9SVF9QVVNIX0FUT01JQykKKwkJaWYgKHNldF9oZWxwZXJfb3B0aW9uKHRyYW5zcG9ydCwgVFJBTlNfT1BUX0FUT01JQywgInRydWUiKSAhPSAwKQorCQkJZGllKF8oImhlbHBlciAlcyBkb2VzIG5vdCBzdXBwb3J0IC0tYXRvbWljIiksIG5hbWUpOworCiAJaWYgKGZsYWdzICYgVFJBTlNQT1JUX1BVU0hfT1BUSU9OUykgewogCQlzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqaXRlbTsKIAkJZm9yX2VhY2hfc3RyaW5nX2xpc3RfaXRlbShpdGVtLCB0cmFuc3BvcnQtPnB1c2hfb3B0aW9ucykKQEAgLTg0Nyw2ICs4NzMsNyBAQAogewogCWludCBmb3JjZV9hbGwgPSBmbGFncyAmIFRSQU5TUE9SVF9QVVNIX0ZPUkNFOwogCWludCBtaXJyb3IgPSBmbGFncyAmIFRSQU5TUE9SVF9QVVNIX01JUlJPUjsKKwlpbnQgYXRvbWljID0gZmxhZ3MgJiBUUkFOU1BPUlRfUFVTSF9BVE9NSUM7CiAJc3RydWN0IGhlbHBlcl9kYXRhICpkYXRhID0gdHJhbnNwb3J0LT5kYXRhOwogCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHJlZiAqcmVmOwpAQCAtODY2LDYgKzg5MywxMSBAQAogCQljYXNlIFJFRl9TVEFUVVNfUkVKRUNUX05PTkZBU1RGT1JXQVJEOgogCQljYXNlIFJFRl9TVEFUVVNfUkVKRUNUX1NUQUxFOgogCQljYXNlIFJFRl9TVEFUVVNfUkVKRUNUX0FMUkVBRFlfRVhJU1RTOgorCQkJaWYgKGF0b21pYykgeworCQkJCXN0cmluZ19saXN0X2NsZWFyKCZjYXNfb3B0aW9ucywgMCk7CisJCQkJcmV0dXJuIDA7CisJCQl9IGVsc2UKKwkJCQljb250aW51ZTsKIAkJY2FzZSBSRUZfU1RBVFVTX1VQVE9EQVRFOgogCQkJY29udGludWU7CiAJCWRlZmF1bHQ6CkBAIC0xMDI3LDcgKzEwNTksOCBAQAogfQogCiAKLXN0YXRpYyBpbnQgaGFzX2F0dHJpYnV0ZShjb25zdCBjaGFyICphdHRycywgY29uc3QgY2hhciAqYXR0cikgeworc3RhdGljIGludCBoYXNfYXR0cmlidXRlKGNvbnN0IGNoYXIgKmF0dHJzLCBjb25zdCBjaGFyICphdHRyKQorewogCWludCBsZW47CiAJaWYgKCFhdHRycykKIAkJcmV0dXJuIDA7CkBAIC0xMDQ2LDYgKzEwNzksMTkgQEAKIHN0YXRpYyBzdHJ1Y3QgcmVmICpnZXRfcmVmc19saXN0KHN0cnVjdCB0cmFuc3BvcnQgKnRyYW5zcG9ydCwgaW50IGZvcl9wdXNoLAogCQkJCSBjb25zdCBzdHJ1Y3QgYXJndl9hcnJheSAqcmVmX3ByZWZpeGVzKQogeworCWdldF9oZWxwZXIodHJhbnNwb3J0KTsKKworCWlmIChwcm9jZXNzX2Nvbm5lY3QodHJhbnNwb3J0LCBmb3JfcHVzaCkpIHsKKwkJZG9fdGFrZV9vdmVyKHRyYW5zcG9ydCk7CisJCXJldHVybiB0cmFuc3BvcnQtPnZ0YWJsZS0+Z2V0X3JlZnNfbGlzdCh0cmFuc3BvcnQsIGZvcl9wdXNoLCByZWZfcHJlZml4ZXMpOworCX0KKworCXJldHVybiBnZXRfcmVmc19saXN0X3VzaW5nX2xpc3QodHJhbnNwb3J0LCBmb3JfcHVzaCk7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgcmVmICpnZXRfcmVmc19saXN0X3VzaW5nX2xpc3Qoc3RydWN0IHRyYW5zcG9ydCAqdHJhbnNwb3J0LAorCQkJCQkgICAgaW50IGZvcl9wdXNoKQorewogCXN0cnVjdCBoZWxwZXJfZGF0YSAqZGF0YSA9IHRyYW5zcG9ydC0+ZGF0YTsKIAlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqaGVscGVyOwogCXN0cnVjdCByZWYgKnJldCA9IE5VTEw7CkBAIC0xMDUzLDEzICsxMDk5LDkgQEAKIAlzdHJ1Y3QgcmVmICpwb3NuOwogCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CiAKKwlkYXRhLT5nZXRfcmVmc19saXN0X2NhbGxlZCA9IDE7CiAJaGVscGVyID0gZ2V0X2hlbHBlcih0cmFuc3BvcnQpOwogCi0JaWYgKHByb2Nlc3NfY29ubmVjdCh0cmFuc3BvcnQsIGZvcl9wdXNoKSkgewotCQlkb190YWtlX292ZXIodHJhbnNwb3J0KTsKLQkJcmV0dXJuIHRyYW5zcG9ydC0+dnRhYmxlLT5nZXRfcmVmc19saXN0KHRyYW5zcG9ydCwgZm9yX3B1c2gsIHJlZl9wcmVmaXhlcyk7Ci0JfQotCiAJaWYgKGRhdGEtPnB1c2ggJiYgZm9yX3B1c2gpCiAJCXdyaXRlX3N0cl9pbl9mdWxsKGhlbHBlci0+aW4sICJsaXN0IGZvci1wdXNoXG4iKTsKIAllbHNlCkBAIC0xMTA2LDcgKzExNDgsNiBAQAogfQogCiBzdGF0aWMgc3RydWN0IHRyYW5zcG9ydF92dGFibGUgdnRhYmxlID0gewotCTAsCiAJc2V0X2hlbHBlcl9vcHRpb24sCiAJZ2V0X3JlZnNfbGlzdCwKIAlmZXRjaCwKQEAgLTEyMjYsOSArMTI2Nyw4IEBACiAJCXJldHVybiAwOwkvKiBObyBzcGFjZSBmb3IgbW9yZS4gKi8KIAogCXRyYW5zZmVyX2RlYnVnKCIlcyBpcyByZWFkYWJsZSIsIHQtPnNyY19uYW1lKTsKLQlieXRlcyA9IHJlYWQodC0+c3JjLCB0LT5idWYgKyB0LT5idWZ1c2UsIEJVRkZFUlNJWkUgLSB0LT5idWZ1c2UpOwotCWlmIChieXRlcyA8IDAgJiYgZXJybm8gIT0gRVdPVUxEQkxPQ0sgJiYgZXJybm8gIT0gRUFHQUlOICYmCi0JCWVycm5vICE9IEVJTlRSKSB7CisJYnl0ZXMgPSB4cmVhZCh0LT5zcmMsIHQtPmJ1ZiArIHQtPmJ1ZnVzZSwgQlVGRkVSU0laRSAtIHQtPmJ1ZnVzZSk7CisJaWYgKGJ5dGVzIDwgMCkgewogCQllcnJvcl9lcnJubyhfKCJyZWFkKCVzKSBmYWlsZWQiKSwgdC0+c3JjX25hbWUpOwogCQlyZXR1cm4gLTE7CiAJfSBlbHNlIGlmIChieXRlcyA9PSAwKSB7CkBAIC0xMjU1LDcgKzEyOTUsNyBAQAogCiAJdHJhbnNmZXJfZGVidWcoIiVzIGlzIHdyaXRhYmxlIiwgdC0+ZGVzdF9uYW1lKTsKIAlieXRlcyA9IHh3cml0ZSh0LT5kZXN0LCB0LT5idWYsIHQtPmJ1ZnVzZSk7Ci0JaWYgKGJ5dGVzIDwgMCAmJiBlcnJubyAhPSBFV09VTERCTE9DSykgeworCWlmIChieXRlcyA8IDApIHsKIAkJZXJyb3JfZXJybm8oXygid3JpdGUoJXMpIGZhaWxlZCIpLCB0LT5kZXN0X25hbWUpOwogCQlyZXR1cm4gLTE7CiAJfSBlbHNlIGlmIChieXRlcyA+IDApIHsKZGlmZiAtLWdpdCBhL3RyYW5zcG9ydC1pbnRlcm5hbC5oIGIvdHJhbnNwb3J0LWludGVybmFsLmgKaW5kZXggMDA0YmVlNS4uMWNkZTYyNSAxMDA2NDQKLS0tIGEvdHJhbnNwb3J0LWludGVybmFsLmgKKysrIGIvdHJhbnNwb3J0LWludGVybmFsLmgKQEAgLTcsMTIgKzcsNiBAQAogCiBzdHJ1Y3QgdHJhbnNwb3J0X3Z0YWJsZSB7CiAJLyoqCi0JICogVGhpcyB0cmFuc3BvcnQgc3VwcG9ydHMgdGhlIGZldGNoKCkgZnVuY3Rpb24gYmVpbmcgY2FsbGVkCi0JICogd2l0aG91dCBnZXRfcmVmc19saXN0KCkgZmlyc3QgYmVpbmcgY2FsbGVkLgotCSAqLwotCXVuc2lnbmVkIGZldGNoX3dpdGhvdXRfbGlzdCA6IDE7Ci0KLQkvKioKIAkgKiBSZXR1cm5zIDAgaWYgc3VjY2Vzc2Z1bCwgcG9zaXRpdmUgaWYgdGhlIG9wdGlvbiBpcyBub3QKIAkgKiByZWNvZ25pemVkIG9yIGlzIGluYXBwbGljYWJsZSwgYW5kIG5lZ2F0aXZlIGlmIHRoZSBvcHRpb24KIAkgKiBpcyBhcHBsaWNhYmxlIGJ1dCB0aGUgdmFsdWUgaXMgaW52YWxpZC4KZGlmZiAtLWdpdCBhL3RyYW5zcG9ydC5jIGIvdHJhbnNwb3J0LmMKaW5kZXggNWE3NGI2MC4uMWZkYzdkYSAxMDA2NDQKLS0tIGEvdHJhbnNwb3J0LmMKKysrIGIvdHJhbnNwb3J0LmMKQEAgLTEyMiw2ICsxMjIsNyBAQAogc3RydWN0IGJ1bmRsZV90cmFuc3BvcnRfZGF0YSB7CiAJaW50IGZkOwogCXN0cnVjdCBidW5kbGVfaGVhZGVyIGhlYWRlcjsKKwl1bnNpZ25lZCBnZXRfcmVmc19mcm9tX2J1bmRsZV9jYWxsZWQgOiAxOwogfTsKIAogc3RhdGljIHN0cnVjdCByZWYgKmdldF9yZWZzX2Zyb21fYnVuZGxlKHN0cnVjdCB0cmFuc3BvcnQgKnRyYW5zcG9ydCwKQEAgLTEzNSw2ICsxMzYsOCBAQAogCWlmIChmb3JfcHVzaCkKIAkJcmV0dXJuIE5VTEw7CiAKKwlkYXRhLT5nZXRfcmVmc19mcm9tX2J1bmRsZV9jYWxsZWQgPSAxOworCiAJaWYgKGRhdGEtPmZkID4gMCkKIAkJY2xvc2UoZGF0YS0+ZmQpOwogCWRhdGEtPmZkID0gcmVhZF9idW5kbGVfaGVhZGVyKHRyYW5zcG9ydC0+dXJsLCAmZGF0YS0+aGVhZGVyKTsKQEAgLTE1NCw3ICsxNTcsMTAgQEAKIAkJCSAgICAgICBpbnQgbnJfaGVhZHMsIHN0cnVjdCByZWYgKip0b19mZXRjaCkKIHsKIAlzdHJ1Y3QgYnVuZGxlX3RyYW5zcG9ydF9kYXRhICpkYXRhID0gdHJhbnNwb3J0LT5kYXRhOwotCXJldHVybiB1bmJ1bmRsZSgmZGF0YS0+aGVhZGVyLCBkYXRhLT5mZCwKKworCWlmICghZGF0YS0+Z2V0X3JlZnNfZnJvbV9idW5kbGVfY2FsbGVkKQorCQlnZXRfcmVmc19mcm9tX2J1bmRsZSh0cmFuc3BvcnQsIDAsIE5VTEwpOworCXJldHVybiB1bmJ1bmRsZSh0aGVfcmVwb3NpdG9yeSwgJmRhdGEtPmhlYWRlciwgZGF0YS0+ZmQsCiAJCQl0cmFuc3BvcnQtPnByb2dyZXNzID8gQlVORExFX1ZFUkJPU0UgOiAwKTsKIH0KIApAQCAtMjI0LDYgKzIzMCw3IEBACiAJCW9wdHMtPm5vX2RlcGVuZGVudHMgPSAhIXZhbHVlOwogCQlyZXR1cm4gMDsKIAl9IGVsc2UgaWYgKCFzdHJjbXAobmFtZSwgVFJBTlNfT1BUX0xJU1RfT0JKRUNUU19GSUxURVIpKSB7CisJCWxpc3Rfb2JqZWN0c19maWx0ZXJfZGllX2lmX3BvcHVsYXRlZCgmb3B0cy0+ZmlsdGVyX29wdGlvbnMpOwogCQlwYXJzZV9saXN0X29iamVjdHNfZmlsdGVyKCZvcHRzLT5maWx0ZXJfb3B0aW9ucywgdmFsdWUpOwogCQlyZXR1cm4gMDsKIAl9CkBAIC0yNTIsNiArMjU5LDE0IEBACiAJcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyB2b2lkIGRpZV9pZl9zZXJ2ZXJfb3B0aW9ucyhzdHJ1Y3QgdHJhbnNwb3J0ICp0cmFuc3BvcnQpCit7CisJaWYgKCF0cmFuc3BvcnQtPnNlcnZlcl9vcHRpb25zIHx8ICF0cmFuc3BvcnQtPnNlcnZlcl9vcHRpb25zLT5ucikKKwkJcmV0dXJuOworCWFkdmlzZShfKCJzZWUgcHJvdG9jb2wudmVyc2lvbiBpbiAnZ2l0IGhlbHAgY29uZmlnJyBmb3IgbW9yZSBkZXRhaWxzIikpOworCWRpZShfKCJzZXJ2ZXIgb3B0aW9ucyByZXF1aXJlIHByb3RvY29sIHZlcnNpb24gMiBvciBsYXRlciIpKTsKK30KKwogLyoKICAqIE9idGFpbnMgdGhlIHByb3RvY29sIHZlcnNpb24gZnJvbSB0aGUgdHJhbnNwb3J0IGFuZCB3cml0ZXMgaXQgdG8KICAqIHRyYW5zcG9ydC0+ZGF0YS0+dmVyc2lvbiwgZmlyc3QgY29ubmVjdGluZyBpZiBub3QgYWxyZWFkeSBjb25uZWN0ZWQuCkBAIC0yNzMsNyArMjg4LDggQEAKIAogCXBhY2tldF9yZWFkZXJfaW5pdCgmcmVhZGVyLCBkYXRhLT5mZFswXSwgTlVMTCwgMCwKIAkJCSAgIFBBQ0tFVF9SRUFEX0NIT01QX05FV0xJTkUgfAotCQkJICAgUEFDS0VUX1JFQURfR0VOVExFX09OX0VPRik7CisJCQkgICBQQUNLRVRfUkVBRF9HRU5UTEVfT05fRU9GIHwKKwkJCSAgIFBBQ0tFVF9SRUFEX0RJRV9PTl9FUlJfUEFDS0VUKTsKIAogCWRhdGEtPnZlcnNpb24gPSBkaXNjb3Zlcl92ZXJzaW9uKCZyZWFkZXIpOwogCXN3aXRjaCAoZGF0YS0+dmVyc2lvbikgewpAQCAtMjg1LDYgKzMwMSw3IEBACiAJCWJyZWFrOwogCWNhc2UgcHJvdG9jb2xfdjE6CiAJY2FzZSBwcm90b2NvbF92MDoKKwkJZGllX2lmX3NlcnZlcl9vcHRpb25zKHRyYW5zcG9ydCk7CiAJCWdldF9yZW1vdGVfaGVhZHMoJnJlYWRlciwgJnJlZnMsCiAJCQkJIGZvcl9wdXNoID8gUkVGX05PUk1BTCA6IDAsCiAJCQkJICZkYXRhLT5leHRyYV9oYXZlLApAQCAtMzEzLDcgKzMzMCw2IEBACiAJaW50IHJldCA9IDA7CiAJc3RydWN0IGdpdF90cmFuc3BvcnRfZGF0YSAqZGF0YSA9IHRyYW5zcG9ydC0+ZGF0YTsKIAlzdHJ1Y3QgcmVmICpyZWZzID0gTlVMTDsKLQljaGFyICpkZXN0ID0geHN0cmR1cCh0cmFuc3BvcnQtPnVybCk7CiAJc3RydWN0IGZldGNoX3BhY2tfYXJncyBhcmdzOwogCXN0cnVjdCByZWYgKnJlZnNfdG1wID0gTlVMTDsKIApAQCAtMzU1LDE2ICszNzEsMTcgQEAKIAogCXN3aXRjaCAoZGF0YS0+dmVyc2lvbikgewogCWNhc2UgcHJvdG9jb2xfdjI6Ci0JCXJlZnMgPSBmZXRjaF9wYWNrKCZhcmdzLCBkYXRhLT5mZCwgZGF0YS0+Y29ubiwKKwkJcmVmcyA9IGZldGNoX3BhY2soJmFyZ3MsIGRhdGEtPmZkLAogCQkJCSAgcmVmc190bXAgPyByZWZzX3RtcCA6IHRyYW5zcG9ydC0+cmVtb3RlX3JlZnMsCi0JCQkJICBkZXN0LCB0b19mZXRjaCwgbnJfaGVhZHMsICZkYXRhLT5zaGFsbG93LAorCQkJCSAgdG9fZmV0Y2gsIG5yX2hlYWRzLCAmZGF0YS0+c2hhbGxvdywKIAkJCQkgICZ0cmFuc3BvcnQtPnBhY2tfbG9ja2ZpbGUsIGRhdGEtPnZlcnNpb24pOwogCQlicmVhazsKIAljYXNlIHByb3RvY29sX3YxOgogCWNhc2UgcHJvdG9jb2xfdjA6Ci0JCXJlZnMgPSBmZXRjaF9wYWNrKCZhcmdzLCBkYXRhLT5mZCwgZGF0YS0+Y29ubiwKKwkJZGllX2lmX3NlcnZlcl9vcHRpb25zKHRyYW5zcG9ydCk7CisJCXJlZnMgPSBmZXRjaF9wYWNrKCZhcmdzLCBkYXRhLT5mZCwKIAkJCQkgIHJlZnNfdG1wID8gcmVmc190bXAgOiB0cmFuc3BvcnQtPnJlbW90ZV9yZWZzLAotCQkJCSAgZGVzdCwgdG9fZmV0Y2gsIG5yX2hlYWRzLCAmZGF0YS0+c2hhbGxvdywKKwkJCQkgIHRvX2ZldGNoLCBucl9oZWFkcywgJmRhdGEtPnNoYWxsb3csCiAJCQkJICAmdHJhbnNwb3J0LT5wYWNrX2xvY2tmaWxlLCBkYXRhLT52ZXJzaW9uKTsKIAkJYnJlYWs7CiAJY2FzZSBwcm90b2NvbF91bmtub3duX3ZlcnNpb246CkBAIC0zODgsNyArNDA1LDYgQEAKIAogCWZyZWVfcmVmcyhyZWZzX3RtcCk7CiAJZnJlZV9yZWZzKHJlZnMpOwotCWZyZWUoZGVzdCk7CiAJcmV0dXJuIHJldDsKIH0KIApAQCAtNzIxLDcgKzczNyw3IEBACiB7CiAJc3RydWN0IGdpdF90cmFuc3BvcnRfZGF0YSAqZGF0YSA9IHRyYW5zcG9ydC0+ZGF0YTsKIAlpZiAoZGF0YS0+Y29ubikgewotCQlpZiAoZGF0YS0+Z290X3JlbW90ZV9oZWFkcykKKwkJaWYgKGRhdGEtPmdvdF9yZW1vdGVfaGVhZHMgJiYgIXRyYW5zcG9ydC0+c3RhdGVsZXNzX3JwYykKIAkJCXBhY2tldF9mbHVzaChkYXRhLT5mZFsxXSk7CiAJCWNsb3NlKGRhdGEtPmZkWzBdKTsKIAkJY2xvc2UoZGF0YS0+ZmRbMV0pOwpAQCAtNzMzLDcgKzc0OSw2IEBACiB9CiAKIHN0YXRpYyBzdHJ1Y3QgdHJhbnNwb3J0X3Z0YWJsZSB0YWtlbl9vdmVyX3Z0YWJsZSA9IHsKLQkxLAogCU5VTEwsCiAJZ2V0X3JlZnNfdmlhX2Nvbm5lY3QsCiAJZmV0Y2hfcmVmc192aWFfcGFjaywKQEAgLTg4Myw3ICs4OTgsNiBAQAogfQogCiBzdGF0aWMgc3RydWN0IHRyYW5zcG9ydF92dGFibGUgYnVuZGxlX3Z0YWJsZSA9IHsKLQkwLAogCU5VTEwsCiAJZ2V0X3JlZnNfZnJvbV9idW5kbGUsCiAJZmV0Y2hfcmVmc19mcm9tX2J1bmRsZSwKQEAgLTg5Myw3ICs5MDcsNiBAQAogfTsKIAogc3RhdGljIHN0cnVjdCB0cmFuc3BvcnRfdnRhYmxlIGJ1aWx0aW5fc21hcnRfdnRhYmxlID0gewotCTEsCiAJTlVMTCwKIAlnZXRfcmVmc192aWFfY29ubmVjdCwKIAlmZXRjaF9yZWZzX3ZpYV9wYWNrLApAQCAtMTA2MSw2ICsxMDc0LDcgQEAKIAogCXByb2MuYXJndiA9IGFyZ3Y7CiAJcHJvYy5pbiA9IC0xOworCXByb2MudHJhY2UyX2hvb2tfbmFtZSA9ICJwcmUtcHVzaCI7CiAKIAlpZiAoc3RhcnRfY29tbWFuZCgmcHJvYykpIHsKIAkJZmluaXNoX2NvbW1hbmQoJnByb2MpOwpAQCAtMTEwNSw3ICsxMTE5LDggQEAKIAlyZXR1cm4gcmV0OwogfQogCi1pbnQgdHJhbnNwb3J0X3B1c2goc3RydWN0IHRyYW5zcG9ydCAqdHJhbnNwb3J0LAoraW50IHRyYW5zcG9ydF9wdXNoKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkgICBzdHJ1Y3QgdHJhbnNwb3J0ICp0cmFuc3BvcnQsCiAJCSAgIHN0cnVjdCByZWZzcGVjICpycywgaW50IGZsYWdzLAogCQkgICB1bnNpZ25lZCBpbnQgKnJlamVjdF9yZWFzb25zKQogewpAQCAtMTEzMCw4ICsxMTQ1LDEwIEBACiAKIAkJcmVmc3BlY19yZWZfcHJlZml4ZXMocnMsICZyZWZfcHJlZml4ZXMpOwogCisJCXRyYWNlMl9yZWdpb25fZW50ZXIoInRyYW5zcG9ydF9wdXNoIiwgImdldF9yZWZzX2xpc3QiLCByKTsKIAkJcmVtb3RlX3JlZnMgPSB0cmFuc3BvcnQtPnZ0YWJsZS0+Z2V0X3JlZnNfbGlzdCh0cmFuc3BvcnQsIDEsCiAJCQkJCQkJICAgICAgICZyZWZfcHJlZml4ZXMpOworCQl0cmFjZTJfcmVnaW9uX2xlYXZlKCJ0cmFuc3BvcnRfcHVzaCIsICJnZXRfcmVmc19saXN0Iiwgcik7CiAKIAkJYXJndl9hcnJheV9jbGVhcigmcmVmX3ByZWZpeGVzKTsKIApAQCAtMTE2NywyMSArMTE4NCwyNCBAQAogCQkJc3RydWN0IHJlZiAqcmVmID0gcmVtb3RlX3JlZnM7CiAJCQlzdHJ1Y3Qgb2lkX2FycmF5IGNvbW1pdHMgPSBPSURfQVJSQVlfSU5JVDsKIAorCQkJdHJhY2UyX3JlZ2lvbl9lbnRlcigidHJhbnNwb3J0X3B1c2giLCAicHVzaF9zdWJtb2R1bGVzIiwgcik7CiAJCQlmb3IgKDsgcmVmOyByZWYgPSByZWYtPm5leHQpCiAJCQkJaWYgKCFpc19udWxsX29pZCgmcmVmLT5uZXdfb2lkKSkKIAkJCQkJb2lkX2FycmF5X2FwcGVuZCgmY29tbWl0cywKIAkJCQkJCQkgICZyZWYtPm5ld19vaWQpOwogCi0JCQlpZiAoIXB1c2hfdW5wdXNoZWRfc3VibW9kdWxlcyh0aGVfcmVwb3NpdG9yeSwKKwkJCWlmICghcHVzaF91bnB1c2hlZF9zdWJtb2R1bGVzKHIsCiAJCQkJCQkgICAgICAmY29tbWl0cywKIAkJCQkJCSAgICAgIHRyYW5zcG9ydC0+cmVtb3RlLAogCQkJCQkJICAgICAgcnMsCiAJCQkJCQkgICAgICB0cmFuc3BvcnQtPnB1c2hfb3B0aW9ucywKIAkJCQkJCSAgICAgIHByZXRlbmQpKSB7CiAJCQkJb2lkX2FycmF5X2NsZWFyKCZjb21taXRzKTsKKwkJCQl0cmFjZTJfcmVnaW9uX2xlYXZlKCJ0cmFuc3BvcnRfcHVzaCIsICJwdXNoX3N1Ym1vZHVsZXMiLCByKTsKIAkJCQlkaWUoXygiZmFpbGVkIHRvIHB1c2ggYWxsIG5lZWRlZCBzdWJtb2R1bGVzIikpOwogCQkJfQogCQkJb2lkX2FycmF5X2NsZWFyKCZjb21taXRzKTsKKwkJCXRyYWNlMl9yZWdpb25fbGVhdmUoInRyYW5zcG9ydF9wdXNoIiwgInB1c2hfc3VibW9kdWxlcyIsIHIpOwogCQl9CiAKIAkJaWYgKCgoZmxhZ3MgJiBUUkFOU1BPUlRfUkVDVVJTRV9TVUJNT0RVTEVTX0NIRUNLKSB8fApAQCAtMTE5MiwyOSArMTIxMiw0OCBAQAogCQkJc3RydWN0IHN0cmluZ19saXN0IG5lZWRzX3B1c2hpbmcgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKIAkJCXN0cnVjdCBvaWRfYXJyYXkgY29tbWl0cyA9IE9JRF9BUlJBWV9JTklUOwogCisJCQl0cmFjZTJfcmVnaW9uX2VudGVyKCJ0cmFuc3BvcnRfcHVzaCIsICJjaGVja19zdWJtb2R1bGVzIiwgcik7CiAJCQlmb3IgKDsgcmVmOyByZWYgPSByZWYtPm5leHQpCiAJCQkJaWYgKCFpc19udWxsX29pZCgmcmVmLT5uZXdfb2lkKSkKIAkJCQkJb2lkX2FycmF5X2FwcGVuZCgmY29tbWl0cywKIAkJCQkJCQkgICZyZWYtPm5ld19vaWQpOwogCi0JCQlpZiAoZmluZF91bnB1c2hlZF9zdWJtb2R1bGVzKHRoZV9yZXBvc2l0b3J5LAorCQkJaWYgKGZpbmRfdW5wdXNoZWRfc3VibW9kdWxlcyhyLAogCQkJCQkJICAgICAmY29tbWl0cywKIAkJCQkJCSAgICAgdHJhbnNwb3J0LT5yZW1vdGUtPm5hbWUsCiAJCQkJCQkgICAgICZuZWVkc19wdXNoaW5nKSkgewogCQkJCW9pZF9hcnJheV9jbGVhcigmY29tbWl0cyk7CisJCQkJdHJhY2UyX3JlZ2lvbl9sZWF2ZSgidHJhbnNwb3J0X3B1c2giLCAiY2hlY2tfc3VibW9kdWxlcyIsIHIpOwogCQkJCWRpZV93aXRoX3VucHVzaGVkX3N1Ym1vZHVsZXMoJm5lZWRzX3B1c2hpbmcpOwogCQkJfQogCQkJc3RyaW5nX2xpc3RfY2xlYXIoJm5lZWRzX3B1c2hpbmcsIDApOwogCQkJb2lkX2FycmF5X2NsZWFyKCZjb21taXRzKTsKKwkJCXRyYWNlMl9yZWdpb25fbGVhdmUoInRyYW5zcG9ydF9wdXNoIiwgImNoZWNrX3N1Ym1vZHVsZXMiLCByKTsKIAkJfQogCi0JCWlmICghKGZsYWdzICYgVFJBTlNQT1JUX1JFQ1VSU0VfU1VCTU9EVUxFU19PTkxZKSkKKwkJaWYgKCEoZmxhZ3MgJiBUUkFOU1BPUlRfUkVDVVJTRV9TVUJNT0RVTEVTX09OTFkpKSB7CisJCQl0cmFjZTJfcmVnaW9uX2VudGVyKCJ0cmFuc3BvcnRfcHVzaCIsICJwdXNoX3JlZnMiLCByKTsKIAkJCXB1c2hfcmV0ID0gdHJhbnNwb3J0LT52dGFibGUtPnB1c2hfcmVmcyh0cmFuc3BvcnQsIHJlbW90ZV9yZWZzLCBmbGFncyk7Ci0JCWVsc2UKKwkJCXRyYWNlMl9yZWdpb25fbGVhdmUoInRyYW5zcG9ydF9wdXNoIiwgInB1c2hfcmVmcyIsIHIpOworCQl9IGVsc2UKIAkJCXB1c2hfcmV0ID0gMDsKIAkJZXJyID0gcHVzaF9oYWRfZXJyb3JzKHJlbW90ZV9yZWZzKTsKIAkJcmV0ID0gcHVzaF9yZXQgfCBlcnI7CiAKKwkJaWYgKChmbGFncyAmIFRSQU5TUE9SVF9QVVNIX0FUT01JQykgJiYgZXJyKSB7CisJCQlzdHJ1Y3QgcmVmICppdDsKKwkJCWZvciAoaXQgPSByZW1vdGVfcmVmczsgaXQ7IGl0ID0gaXQtPm5leHQpCisJCQkJc3dpdGNoIChpdC0+c3RhdHVzKSB7CisJCQkJY2FzZSBSRUZfU1RBVFVTX05PTkU6CisJCQkJY2FzZSBSRUZfU1RBVFVTX1VQVE9EQVRFOgorCQkJCWNhc2UgUkVGX1NUQVRVU19PSzoKKwkJCQkJaXQtPnN0YXR1cyA9IFJFRl9TVEFUVVNfQVRPTUlDX1BVU0hfRkFJTEVEOworCQkJCQlicmVhazsKKwkJCQlkZWZhdWx0OgorCQkJCQlicmVhazsKKwkJCQl9CisJCX0KKwogCQlpZiAoIXF1aWV0IHx8IGVycikKIAkJCXRyYW5zcG9ydF9wcmludF9wdXNoX3N0YXR1cyh0cmFuc3BvcnQtPnVybCwgcmVtb3RlX3JlZnMsCiAJCQkJCXZlcmJvc2UgfCBwb3JjZWxhaW4sIHBvcmNlbGFpbiwKQEAgLTEyNjAsMTUgKzEyOTksNiBAQAogCXN0cnVjdCByZWYgKipoZWFkcyA9IE5VTEw7CiAJc3RydWN0IHJlZiAqcm07CiAKLQlpZiAoIXRyYW5zcG9ydC0+dnRhYmxlLT5mZXRjaF93aXRob3V0X2xpc3QpCi0JCS8qCi0JCSAqIFNvbWUgdHJhbnNwb3J0cyAoZS5nLiB0aGUgYnVpbHQtaW4gYnVuZGxlIHRyYW5zcG9ydCBhbmQgdGhlCi0JCSAqIHRyYW5zcG9ydCBoZWxwZXIgaW50ZXJmYWNlKSBkbyBub3Qgd29yayB3aGVuIGZldGNoaW5nIGlzCi0JCSAqIGRvbmUgaW1tZWRpYXRlbHkgYWZ0ZXIgdHJhbnNwb3J0IGNyZWF0aW9uLiBMaXN0IHRoZSByZW1vdGUKLQkJICogcmVmcyBhbnl3YXkgKGlmIG5vdCBhbHJlYWR5IGxpc3RlZCkgYXMgYSB3b3JrYXJvdW5kLgotCQkgKi8KLQkJdHJhbnNwb3J0X2dldF9yZW1vdGVfcmVmcyh0cmFuc3BvcnQsIE5VTEwpOwotCiAJZm9yIChybSA9IHJlZnM7IHJtOyBybSA9IHJtLT5uZXh0KSB7CiAJCW5yX3JlZnMrKzsKIAkJaWYgKHJtLT5wZWVyX3JlZiAmJgpAQCAtMTM2OSwxMDAgKzEzOTksMyBAQAogbGl0ZXJhbF9jb3B5OgogCXJldHVybiB4c3RyZHVwKHVybCk7CiB9Ci0KLXN0YXRpYyB2b2lkIGZpbGxfYWx0ZXJuYXRlX3JlZnNfY29tbWFuZChzdHJ1Y3QgY2hpbGRfcHJvY2VzcyAqY21kLAotCQkJCQljb25zdCBjaGFyICpyZXBvX3BhdGgpCi17Ci0JY29uc3QgY2hhciAqdmFsdWU7Ci0KLQlpZiAoIWdpdF9jb25maWdfZ2V0X3ZhbHVlKCJjb3JlLmFsdGVybmF0ZVJlZnNDb21tYW5kIiwgJnZhbHVlKSkgewotCQljbWQtPnVzZV9zaGVsbCA9IDE7Ci0KLQkJYXJndl9hcnJheV9wdXNoKCZjbWQtPmFyZ3MsIHZhbHVlKTsKLQkJYXJndl9hcnJheV9wdXNoKCZjbWQtPmFyZ3MsIHJlcG9fcGF0aCk7Ci0JfSBlbHNlIHsKLQkJY21kLT5naXRfY21kID0gMTsKLQotCQlhcmd2X2FycmF5X3B1c2hmKCZjbWQtPmFyZ3MsICItLWdpdC1kaXI9JXMiLCByZXBvX3BhdGgpOwotCQlhcmd2X2FycmF5X3B1c2goJmNtZC0+YXJncywgImZvci1lYWNoLXJlZiIpOwotCQlhcmd2X2FycmF5X3B1c2goJmNtZC0+YXJncywgIi0tZm9ybWF0PSUob2JqZWN0bmFtZSkiKTsKLQotCQlpZiAoIWdpdF9jb25maWdfZ2V0X3ZhbHVlKCJjb3JlLmFsdGVybmF0ZVJlZnNQcmVmaXhlcyIsICZ2YWx1ZSkpIHsKLQkJCWFyZ3ZfYXJyYXlfcHVzaCgmY21kLT5hcmdzLCAiLS0iKTsKLQkJCWFyZ3ZfYXJyYXlfc3BsaXQoJmNtZC0+YXJncywgdmFsdWUpOwotCQl9Ci0JfQotCi0JY21kLT5lbnYgPSBsb2NhbF9yZXBvX2VudjsKLQljbWQtPm91dCA9IC0xOwotfQotCi1zdGF0aWMgdm9pZCByZWFkX2FsdGVybmF0ZV9yZWZzKGNvbnN0IGNoYXIgKnBhdGgsCi0JCQkJYWx0ZXJuYXRlX3JlZl9mbiAqY2IsCi0JCQkJdm9pZCAqZGF0YSkKLXsKLQlzdHJ1Y3QgY2hpbGRfcHJvY2VzcyBjbWQgPSBDSElMRF9QUk9DRVNTX0lOSVQ7Ci0Jc3RydWN0IHN0cmJ1ZiBsaW5lID0gU1RSQlVGX0lOSVQ7Ci0JRklMRSAqZmg7Ci0KLQlmaWxsX2FsdGVybmF0ZV9yZWZzX2NvbW1hbmQoJmNtZCwgcGF0aCk7Ci0KLQlpZiAoc3RhcnRfY29tbWFuZCgmY21kKSkKLQkJcmV0dXJuOwotCi0JZmggPSB4ZmRvcGVuKGNtZC5vdXQsICJyIik7Ci0Jd2hpbGUgKHN0cmJ1Zl9nZXRsaW5lX2xmKCZsaW5lLCBmaCkgIT0gRU9GKSB7Ci0JCXN0cnVjdCBvYmplY3RfaWQgb2lkOwotCQljb25zdCBjaGFyICpwOwotCi0JCWlmIChwYXJzZV9vaWRfaGV4KGxpbmUuYnVmLCAmb2lkLCAmcCkgfHwgKnApIHsKLQkJCXdhcm5pbmcoXygiaW52YWxpZCBsaW5lIHdoaWxlIHBhcnNpbmcgYWx0ZXJuYXRlIHJlZnM6ICVzIiksCi0JCQkJbGluZS5idWYpOwotCQkJYnJlYWs7Ci0JCX0KLQotCQljYigmb2lkLCBkYXRhKTsKLQl9Ci0KLQlmY2xvc2UoZmgpOwotCWZpbmlzaF9jb21tYW5kKCZjbWQpOwotfQotCi1zdHJ1Y3QgYWx0ZXJuYXRlX3JlZnNfZGF0YSB7Ci0JYWx0ZXJuYXRlX3JlZl9mbiAqZm47Ci0Jdm9pZCAqZGF0YTsKLX07Ci0KLXN0YXRpYyBpbnQgcmVmc19mcm9tX2FsdGVybmF0ZV9jYihzdHJ1Y3QgYWx0ZXJuYXRlX29iamVjdF9kYXRhYmFzZSAqZSwKLQkJCQkgIHZvaWQgKmRhdGEpCi17Ci0Jc3RydWN0IHN0cmJ1ZiBwYXRoID0gU1RSQlVGX0lOSVQ7Ci0Jc2l6ZV90IGJhc2VfbGVuOwotCXN0cnVjdCBhbHRlcm5hdGVfcmVmc19kYXRhICpjYiA9IGRhdGE7Ci0KLQlpZiAoIXN0cmJ1Zl9yZWFscGF0aCgmcGF0aCwgZS0+cGF0aCwgMCkpCi0JCWdvdG8gb3V0OwotCWlmICghc3RyYnVmX3N0cmlwX3N1ZmZpeCgmcGF0aCwgIi9vYmplY3RzIikpCi0JCWdvdG8gb3V0OwotCWJhc2VfbGVuID0gcGF0aC5sZW47Ci0KLQkvKiBJcyB0aGlzIGEgZ2l0IHJlcG9zaXRvcnkgd2l0aCByZWZzPyAqLwotCXN0cmJ1Zl9hZGRzdHIoJnBhdGgsICIvcmVmcyIpOwotCWlmICghaXNfZGlyZWN0b3J5KHBhdGguYnVmKSkKLQkJZ290byBvdXQ7Ci0Jc3RyYnVmX3NldGxlbigmcGF0aCwgYmFzZV9sZW4pOwotCi0JcmVhZF9hbHRlcm5hdGVfcmVmcyhwYXRoLmJ1ZiwgY2ItPmZuLCBjYi0+ZGF0YSk7Ci0KLW91dDoKLQlzdHJidWZfcmVsZWFzZSgmcGF0aCk7Ci0JcmV0dXJuIDA7Ci19Ci0KLXZvaWQgZm9yX2VhY2hfYWx0ZXJuYXRlX3JlZihhbHRlcm5hdGVfcmVmX2ZuIGZuLCB2b2lkICpkYXRhKQotewotCXN0cnVjdCBhbHRlcm5hdGVfcmVmc19kYXRhIGNiOwotCWNiLmZuID0gZm47Ci0JY2IuZGF0YSA9IGRhdGE7Ci0JZm9yZWFjaF9hbHRfb2RiKHJlZnNfZnJvbV9hbHRlcm5hdGVfY2IsICZjYik7Ci19CmRpZmYgLS1naXQgYS90cmFuc3BvcnQuaCBiL3RyYW5zcG9ydC5oCmluZGV4IDliYWVjYTIuLmUwMTMxZGEgMTAwNjQ0Ci0tLSBhL3RyYW5zcG9ydC5oCisrKyBiL3RyYW5zcG9ydC5oCkBAIC0xMzQsNyArMTM0LDcgQEAKICNkZWZpbmUgVFJBTlNQT1JUX1BVU0hfT1BUSU9OUwkJCSgxPDwxNCkKICNkZWZpbmUgVFJBTlNQT1JUX1JFQ1VSU0VfU1VCTU9EVUxFU19PTkxZCSgxPDwxNSkKIAotZXh0ZXJuIGludCB0cmFuc3BvcnRfc3VtbWFyeV93aWR0aChjb25zdCBzdHJ1Y3QgcmVmICpyZWZzKTsKK2ludCB0cmFuc3BvcnRfc3VtbWFyeV93aWR0aChjb25zdCBzdHJ1Y3QgcmVmICpyZWZzKTsKIAogLyogUmV0dXJucyBhIHRyYW5zcG9ydCBzdWl0YWJsZSBmb3IgdGhlIHVybCAqLwogc3RydWN0IHRyYW5zcG9ydCAqdHJhbnNwb3J0X2dldChzdHJ1Y3QgcmVtb3RlICosIGNvbnN0IGNoYXIgKik7CkBAIC0yMDgsNiArMjA4LDkgQEAKIC8qIEZpbHRlciBvYmplY3RzIGZvciBwYXJ0aWFsIGNsb25lIGFuZCBmZXRjaCAqLwogI2RlZmluZSBUUkFOU19PUFRfTElTVF9PQkpFQ1RTX0ZJTFRFUiAiZmlsdGVyIgogCisvKiBSZXF1ZXN0IGF0b21pYyAoYWxsLW9yLW5vdGhpbmcpIHVwZGF0ZXMgd2hlbiBwdXNoaW5nICovCisjZGVmaW5lIFRSQU5TX09QVF9BVE9NSUMgImF0b21pYyIKKwogLyoqCiAgKiBSZXR1cm5zIDAgaWYgdGhlIG9wdGlvbiB3YXMgdXNlZCwgbm9uLXplcm8gb3RoZXJ3aXNlLiBQcmludHMgYQogICogbWVzc2FnZSB0byBzdGRlcnIgaWYgdGhlIG9wdGlvbiBpcyBub3QgdXNlZC4KQEAgLTIyMyw3ICsyMjYsOCBAQAogI2RlZmluZSBSRUpFQ1RfRkVUQ0hfRklSU1QgICAgIDB4MDgKICNkZWZpbmUgUkVKRUNUX05FRURTX0ZPUkNFICAgICAweDEwCiAKLWludCB0cmFuc3BvcnRfcHVzaChzdHJ1Y3QgdHJhbnNwb3J0ICpjb25uZWN0aW9uLAoraW50IHRyYW5zcG9ydF9wdXNoKHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkgICBzdHJ1Y3QgdHJhbnNwb3J0ICpjb25uZWN0aW9uLAogCQkgICBzdHJ1Y3QgcmVmc3BlYyAqcnMsIGludCBmbGFncywKIAkJICAgdW5zaWduZWQgaW50ICogcmVqZWN0X3JlYXNvbnMpOwogCkBAIC0yNjEsNiArMjY1LDQgQEAKIHZvaWQgdHJhbnNwb3J0X3ByaW50X3B1c2hfc3RhdHVzKGNvbnN0IGNoYXIgKmRlc3QsIHN0cnVjdCByZWYgKnJlZnMsCiAJCSAgaW50IHZlcmJvc2UsIGludCBwb3JjZWxhaW4sIHVuc2lnbmVkIGludCAqcmVqZWN0X3JlYXNvbnMpOwogCi10eXBlZGVmIHZvaWQgYWx0ZXJuYXRlX3JlZl9mbihjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHZvaWQgKik7Ci1leHRlcm4gdm9pZCBmb3JfZWFjaF9hbHRlcm5hdGVfcmVmKGFsdGVybmF0ZV9yZWZfZm4sIHZvaWQgKik7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL3RyZWUtZGlmZi5jIGIvdHJlZS1kaWZmLmMKaW5kZXggMGU1NDMyNC4uMzNkZWQ3ZiAxMDA2NDQKLS0tIGEvdHJlZS1kaWZmLmMKKysrIGIvdHJlZS1kaWZmLmMKQEAgLTE4MSw3ICsxODEsNyBAQAogCXN0cnVjdCB0cmVlX2Rlc2MgKnQsIHN0cnVjdCB0cmVlX2Rlc2MgKnRwLAogCWludCBpbWluKQogewotCXVuc2lnbmVkIG1vZGU7CisJdW5zaWduZWQgc2hvcnQgbW9kZTsKIAljb25zdCBjaGFyICpwYXRoOwogCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZDsKIAlpbnQgcGF0aGxlbjsKQEAgLTIzOSw3ICsyMzksNyBAQAogCQkJCQkJRElGRl9TVEFUVVNfQURERUQ7CiAKIAkJCWlmICh0cGlfdmFsaWQpIHsKLQkJCQlvaWRfaSA9IHRwW2ldLmVudHJ5Lm9pZDsKKwkJCQlvaWRfaSA9ICZ0cFtpXS5lbnRyeS5vaWQ7CiAJCQkJbW9kZV9pID0gdHBbaV0uZW50cnkubW9kZTsKIAkJCX0KIAkJCWVsc2UgewpAQCAtMjgwLDcgKzI4MCw3IEBACiAJCQkvKiBzYW1lIHJ1bGUgYXMgaW4gZW1pdHRoaXMgKi8KIAkJCWludCB0cGlfdmFsaWQgPSB0cCAmJiAhKHRwW2ldLmVudHJ5Lm1vZGUgJiBTX0lGWE1JTl9ORVEpOwogCi0JCQlwYXJlbnRzX29pZFtpXSA9IHRwaV92YWxpZCA/IHRwW2ldLmVudHJ5Lm9pZCA6IE5VTEw7CisJCQlwYXJlbnRzX29pZFtpXSA9IHRwaV92YWxpZCA/ICZ0cFtpXS5lbnRyeS5vaWQgOiBOVUxMOwogCQl9CiAKIAkJc3RyYnVmX2FkZChiYXNlLCBwYXRoLCBwYXRobGVuKTsKQEAgLTI5OSw3ICsyOTksOCBAQAogCWVudW0gaW50ZXJlc3RpbmcgbWF0Y2g7CiAKIAl3aGlsZSAodC0+c2l6ZSkgewotCQltYXRjaCA9IHRyZWVfZW50cnlfaW50ZXJlc3RpbmcoJnQtPmVudHJ5LCBiYXNlLCAwLCAmb3B0LT5wYXRoc3BlYyk7CisJCW1hdGNoID0gdHJlZV9lbnRyeV9pbnRlcmVzdGluZyhvcHQtPnJlcG8tPmluZGV4LCAmdC0+ZW50cnksCisJCQkJCSAgICAgICBiYXNlLCAwLCAmb3B0LT5wYXRoc3BlYyk7CiAJCWlmIChtYXRjaCkgewogCQkJaWYgKG1hdGNoID09IGFsbF9lbnRyaWVzX25vdF9pbnRlcmVzdGluZykKIAkJCQl0LT5zaXplID0gMDsKQEAgLTQyMSw4ICs0MjIsOCBAQAogCSAqICAgZGlmZl90cmVlX29pZChwYXJlbnQsIGNvbW1pdCkgKQogCSAqLwogCWZvciAoaSA9IDA7IGkgPCBucGFyZW50OyArK2kpCi0JCXRwdHJlZVtpXSA9IGZpbGxfdHJlZV9kZXNjcmlwdG9yKCZ0cFtpXSwgcGFyZW50c19vaWRbaV0pOwotCXR0cmVlID0gZmlsbF90cmVlX2Rlc2NyaXB0b3IoJnQsIG9pZCk7CisJCXRwdHJlZVtpXSA9IGZpbGxfdHJlZV9kZXNjcmlwdG9yKG9wdC0+cmVwbywgJnRwW2ldLCBwYXJlbnRzX29pZFtpXSk7CisJdHRyZWUgPSBmaWxsX3RyZWVfZGVzY3JpcHRvcihvcHQtPnJlcG8sICZ0LCBvaWQpOwogCiAJLyogRW5hYmxlIHJlY3Vyc2lvbiBpbmRlZmluaXRlbHkgKi8KIAlvcHQtPnBhdGhzcGVjLnJlY3Vyc2l2ZSA9IG9wdC0+ZmxhZ3MucmVjdXJzaXZlOwpAQCAtNDkxLDcgKzQ5Miw3IEBACiAJCQkJCQljb250aW51ZTsKIAogCQkJCQkvKiBkaWZmKHQscGkpICE9IMO4ICovCi0JCQkJCWlmICghb2lkZXEodC5lbnRyeS5vaWQsIHRwW2ldLmVudHJ5Lm9pZCkgfHwKKwkJCQkJaWYgKCFvaWRlcSgmdC5lbnRyeS5vaWQsICZ0cFtpXS5lbnRyeS5vaWQpIHx8CiAJCQkJCSAgICAodC5lbnRyeS5tb2RlICE9IHRwW2ldLmVudHJ5Lm1vZGUpKQogCQkJCQkJY29udGludWU7CiAKZGlmZiAtLWdpdCBhL3RyZWUtd2Fsay5jIGIvdHJlZS13YWxrLmMKaW5kZXggYmYwNzk0Ni4uYmIwYWQzNCAxMDA2NDQKLS0tIGEvdHJlZS13YWxrLmMKKysrIGIvdHJlZS13YWxrLmMKQEAgLTEsNiArMSw1IEBACiAjaW5jbHVkZSAiY2FjaGUuaCIKICNpbmNsdWRlICJ0cmVlLXdhbGsuaCIKLSNpbmNsdWRlICJ1bnBhY2stdHJlZXMuaCIKICNpbmNsdWRlICJkaXIuaCIKICNpbmNsdWRlICJvYmplY3Qtc3RvcmUuaCIKICNpbmNsdWRlICJ0cmVlLmgiCkBAIC00MywxOCArNDIsMTMgQEAKIAkJc3RyYnVmX2FkZHN0cihlcnIsIF8oImVtcHR5IGZpbGVuYW1lIGluIHRyZWUgZW50cnkiKSk7CiAJCXJldHVybiAtMTsKIAl9Ci0jaWZkZWYgR0lUX1dJTkRPV1NfTkFUSVZFCi0JaWYgKHByb3RlY3RfbnRmcyAmJiBzdHJjaHIocGF0aCwgJ1xcJykpIHsKLQkJc3RyYnVmX2FkZGYoZXJyLCBfKCJmaWxlbmFtZSBpbiB0cmVlIGVudHJ5IGNvbnRhaW5zIGJhY2tzbGFzaDogJyVzJyIpLCBwYXRoKTsKLQkJcmV0dXJuIC0xOwotCX0KLSNlbmRpZgogCWxlbiA9IHN0cmxlbihwYXRoKSArIDE7CiAKIAkvKiBJbml0aWFsaXplIHRoZSBkZXNjcmlwdG9yIGVudHJ5ICovCiAJZGVzYy0+ZW50cnkucGF0aCA9IHBhdGg7CiAJZGVzYy0+ZW50cnkubW9kZSA9IGNhbm9uX21vZGUobW9kZSk7Ci0JZGVzYy0+ZW50cnkub2lkICA9IChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICopKHBhdGggKyBsZW4pOworCWRlc2MtPmVudHJ5LnBhdGhsZW4gPSBsZW4gLSAxOworCWhhc2hjcHkoZGVzYy0+ZW50cnkub2lkLmhhc2gsIChjb25zdCB1bnNpZ25lZCBjaGFyICopcGF0aCArIGxlbik7CiAKIAlyZXR1cm4gMDsKIH0KQEAgLTg2LDEzICs4MCwxNSBAQAogCXJldHVybiByZXN1bHQ7CiB9CiAKLXZvaWQgKmZpbGxfdHJlZV9kZXNjcmlwdG9yKHN0cnVjdCB0cmVlX2Rlc2MgKmRlc2MsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKK3ZvaWQgKmZpbGxfdHJlZV9kZXNjcmlwdG9yKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgc3RydWN0IHRyZWVfZGVzYyAqZGVzYywKKwkJCSAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKIAl1bnNpZ25lZCBsb25nIHNpemUgPSAwOwogCXZvaWQgKmJ1ZiA9IE5VTEw7CiAKIAlpZiAob2lkKSB7Ci0JCWJ1ZiA9IHJlYWRfb2JqZWN0X3dpdGhfcmVmZXJlbmNlKG9pZCwgdHJlZV90eXBlLCAmc2l6ZSwgTlVMTCk7CisJCWJ1ZiA9IHJlYWRfb2JqZWN0X3dpdGhfcmVmZXJlbmNlKHIsIG9pZCwgdHJlZV90eXBlLCAmc2l6ZSwgTlVMTCk7CiAJCWlmICghYnVmKQogCQkJZGllKCJ1bmFibGUgdG8gcmVhZCB0cmVlICVzIiwgb2lkX3RvX2hleChvaWQpKTsKIAl9CkBAIC0xMTMsNyArMTA5LDcgQEAKIHN0YXRpYyBpbnQgdXBkYXRlX3RyZWVfZW50cnlfaW50ZXJuYWwoc3RydWN0IHRyZWVfZGVzYyAqZGVzYywgc3RydWN0IHN0cmJ1ZiAqZXJyKQogewogCWNvbnN0IHZvaWQgKmJ1ZiA9IGRlc2MtPmJ1ZmZlcjsKLQljb25zdCB1bnNpZ25lZCBjaGFyICplbmQgPSBkZXNjLT5lbnRyeS5vaWQtPmhhc2ggKyB0aGVfaGFzaF9hbGdvLT5yYXdzejsKKwljb25zdCB1bnNpZ25lZCBjaGFyICplbmQgPSAoY29uc3QgdW5zaWduZWQgY2hhciAqKWRlc2MtPmVudHJ5LnBhdGggKyBkZXNjLT5lbnRyeS5wYXRobGVuICsgMSArIHRoZV9oYXNoX2FsZ28tPnJhd3N6OwogCXVuc2lnbmVkIGxvbmcgc2l6ZSA9IGRlc2MtPnNpemU7CiAJdW5zaWduZWQgbG9uZyBsZW4gPSBlbmQgLSAoY29uc3QgdW5zaWduZWQgY2hhciAqKWJ1ZjsKIApAQCAtMTczLDM4ICsxNjksNjEgQEAKIAogdm9pZCBzZXR1cF90cmF2ZXJzZV9pbmZvKHN0cnVjdCB0cmF2ZXJzZV9pbmZvICppbmZvLCBjb25zdCBjaGFyICpiYXNlKQogewotCWludCBwYXRobGVuID0gc3RybGVuKGJhc2UpOworCXNpemVfdCBwYXRobGVuID0gc3RybGVuKGJhc2UpOwogCXN0YXRpYyBzdHJ1Y3QgdHJhdmVyc2VfaW5mbyBkdW1teTsKIAogCW1lbXNldChpbmZvLCAwLCBzaXplb2YoKmluZm8pKTsKIAlpZiAocGF0aGxlbiAmJiBiYXNlW3BhdGhsZW4tMV0gPT0gJy8nKQogCQlwYXRobGVuLS07CiAJaW5mby0+cGF0aGxlbiA9IHBhdGhsZW4gPyBwYXRobGVuICsgMSA6IDA7Ci0JaW5mby0+bmFtZS5wYXRoID0gYmFzZTsKLQlpbmZvLT5uYW1lLm9pZCA9ICh2b2lkICopKGJhc2UgKyBwYXRobGVuICsgMSk7CisJaW5mby0+bmFtZSA9IGJhc2U7CisJaW5mby0+bmFtZWxlbiA9IHBhdGhsZW47CiAJaWYgKHBhdGhsZW4pCiAJCWluZm8tPnByZXYgPSAmZHVtbXk7CiB9CiAKLWNoYXIgKm1ha2VfdHJhdmVyc2VfcGF0aChjaGFyICpwYXRoLCBjb25zdCBzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbywgY29uc3Qgc3RydWN0IG5hbWVfZW50cnkgKm4pCitjaGFyICptYWtlX3RyYXZlcnNlX3BhdGgoY2hhciAqcGF0aCwgc2l6ZV90IHBhdGhsZW4sCisJCQkgY29uc3Qgc3RydWN0IHRyYXZlcnNlX2luZm8gKmluZm8sCisJCQkgY29uc3QgY2hhciAqbmFtZSwgc2l6ZV90IG5hbWVsZW4pCiB7Ci0JaW50IGxlbiA9IHRyZWVfZW50cnlfbGVuKG4pOwotCWludCBwYXRobGVuID0gaW5mby0+cGF0aGxlbjsKKwkvKiBBbHdheXMgcG9pbnRzIHRvIHRoZSBlbmQgb2YgdGhlIG5hbWUgd2UncmUgYWJvdXQgdG8gYWRkICovCisJc2l6ZV90IHBvcyA9IHN0X2FkZChpbmZvLT5wYXRobGVuLCBuYW1lbGVuKTsKIAotCXBhdGhbcGF0aGxlbiArIGxlbl0gPSAwOworCWlmIChwb3MgPj0gcGF0aGxlbikKKwkJQlVHKCJ0b28gc21hbGwgYnVmZmVyIHBhc3NlZCB0byBtYWtlX3RyYXZlcnNlX3BhdGgiKTsKKworCXBhdGhbcG9zXSA9IDA7CiAJZm9yICg7OykgewotCQltZW1jcHkocGF0aCArIHBhdGhsZW4sIG4tPnBhdGgsIGxlbik7Ci0JCWlmICghcGF0aGxlbikKKwkJaWYgKHBvcyA8IG5hbWVsZW4pCisJCQlCVUcoInRyYXZlcnNlX2luZm8gcGF0aGxlbiBkb2VzIG5vdCBtYXRjaCBzdHJpbmdzIik7CisJCXBvcyAtPSBuYW1lbGVuOworCQltZW1jcHkocGF0aCArIHBvcywgbmFtZSwgbmFtZWxlbik7CisKKwkJaWYgKCFwb3MpCiAJCQlicmVhazsKLQkJcGF0aFstLXBhdGhsZW5dID0gJy8nOwotCQluID0gJmluZm8tPm5hbWU7Ci0JCWxlbiA9IHRyZWVfZW50cnlfbGVuKG4pOworCQlwYXRoWy0tcG9zXSA9ICcvJzsKKworCQlpZiAoIWluZm8pCisJCQlCVUcoInRyYXZlcnNlX2luZm8gcmFuIG91dCBvZiBsaXN0IGl0ZW1zIik7CisJCW5hbWUgPSBpbmZvLT5uYW1lOworCQluYW1lbGVuID0gaW5mby0+bmFtZWxlbjsKIAkJaW5mbyA9IGluZm8tPnByZXY7Ci0JCXBhdGhsZW4gLT0gbGVuOwogCX0KIAlyZXR1cm4gcGF0aDsKIH0KIAordm9pZCBzdHJidWZfbWFrZV90cmF2ZXJzZV9wYXRoKHN0cnVjdCBzdHJidWYgKm91dCwKKwkJCSAgICAgICBjb25zdCBzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbywKKwkJCSAgICAgICBjb25zdCBjaGFyICpuYW1lLCBzaXplX3QgbmFtZWxlbikKK3sKKwlzaXplX3QgbGVuID0gdHJhdmVyc2VfcGF0aF9sZW4oaW5mbywgbmFtZWxlbik7CisKKwlzdHJidWZfZ3JvdyhvdXQsIGxlbik7CisJbWFrZV90cmF2ZXJzZV9wYXRoKG91dC0+YnVmICsgb3V0LT5sZW4sIG91dC0+YWxsb2MgLSBvdXQtPmxlbiwKKwkJCSAgIGluZm8sIG5hbWUsIG5hbWVsZW4pOworCXN0cmJ1Zl9zZXRsZW4ob3V0LCBvdXQtPmxlbiArIGxlbik7Cit9CisKIHN0cnVjdCB0cmVlX2Rlc2Nfc2tpcCB7CiAJc3RydWN0IHRyZWVfZGVzY19za2lwICpwcmV2OwogCWNvbnN0IHZvaWQgKnB0cjsKQEAgLTM3MSw3ICszOTAsOCBAQAogCX0KIH0KIAotc3RhdGljIGlubGluZSBpbnQgcHJ1bmVfdHJhdmVyc2FsKHN0cnVjdCBuYW1lX2VudHJ5ICplLAorc3RhdGljIGlubGluZSBpbnQgcHJ1bmVfdHJhdmVyc2FsKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLAorCQkJCSAgc3RydWN0IG5hbWVfZW50cnkgKmUsCiAJCQkJICBzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbywKIAkJCQkgIHN0cnVjdCBzdHJidWYgKmJhc2UsCiAJCQkJICBpbnQgc3RpbGxfaW50ZXJlc3RpbmcpCkBAIC0zODAsMzAgKzQwMCwzNyBAQAogCQlyZXR1cm4gMjsKIAlpZiAoc3RpbGxfaW50ZXJlc3RpbmcgPCAwKQogCQlyZXR1cm4gc3RpbGxfaW50ZXJlc3Rpbmc7Ci0JcmV0dXJuIHRyZWVfZW50cnlfaW50ZXJlc3RpbmcoZSwgYmFzZSwgMCwgaW5mby0+cGF0aHNwZWMpOworCXJldHVybiB0cmVlX2VudHJ5X2ludGVyZXN0aW5nKGlzdGF0ZSwgZSwgYmFzZSwKKwkJCQkgICAgICAwLCBpbmZvLT5wYXRoc3BlYyk7CiB9CiAKLWludCB0cmF2ZXJzZV90cmVlcyhpbnQgbiwgc3RydWN0IHRyZWVfZGVzYyAqdCwgc3RydWN0IHRyYXZlcnNlX2luZm8gKmluZm8pCitpbnQgdHJhdmVyc2VfdHJlZXMoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCisJCSAgIGludCBuLCBzdHJ1Y3QgdHJlZV9kZXNjICp0LAorCQkgICBzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbykKIHsKIAlpbnQgZXJyb3IgPSAwOwotCXN0cnVjdCBuYW1lX2VudHJ5ICplbnRyeSA9IHhtYWxsb2MobipzaXplb2YoKmVudHJ5KSk7CisJc3RydWN0IG5hbWVfZW50cnkgZW50cnlbTUFYX1RSQVZFUlNFX1RSRUVTXTsKIAlpbnQgaTsKLQlzdHJ1Y3QgdHJlZV9kZXNjX3ggKnR4ID0geGNhbGxvYyhuLCBzaXplb2YoKnR4KSk7CisJc3RydWN0IHRyZWVfZGVzY194IHR4W0FSUkFZX1NJWkUoZW50cnkpXTsKIAlzdHJ1Y3Qgc3RyYnVmIGJhc2UgPSBTVFJCVUZfSU5JVDsKIAlpbnQgaW50ZXJlc3RpbmcgPSAxOwogCWNoYXIgKnRyYXZlcnNlX3BhdGg7CiAKLQlmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKQorCWlmIChuID49IEFSUkFZX1NJWkUoZW50cnkpKQorCQlCVUcoInRyYXZlcnNlX3RyZWVzKCkgY2FsbGVkIHdpdGggdG9vIG1hbnkgdHJlZXMgKCVkKSIsIG4pOworCisJZm9yIChpID0gMDsgaSA8IG47IGkrKykgewogCQl0eFtpXS5kID0gdFtpXTsKKwkJdHhbaV0uc2tpcCA9IE5VTEw7CisJfQogCiAJaWYgKGluZm8tPnByZXYpIHsKLQkJc3RyYnVmX2dyb3coJmJhc2UsIGluZm8tPnBhdGhsZW4pOwotCQltYWtlX3RyYXZlcnNlX3BhdGgoYmFzZS5idWYsIGluZm8tPnByZXYsICZpbmZvLT5uYW1lKTsKLQkJYmFzZS5idWZbaW5mby0+cGF0aGxlbi0xXSA9ICcvJzsKLQkJc3RyYnVmX3NldGxlbigmYmFzZSwgaW5mby0+cGF0aGxlbik7Ci0JCXRyYXZlcnNlX3BhdGggPSB4c3RybmR1cChiYXNlLmJ1ZiwgaW5mby0+cGF0aGxlbik7CisJCXN0cmJ1Zl9tYWtlX3RyYXZlcnNlX3BhdGgoJmJhc2UsIGluZm8tPnByZXYsCisJCQkJCSAgaW5mby0+bmFtZSwgaW5mby0+bmFtZWxlbik7CisJCXN0cmJ1Zl9hZGRjaCgmYmFzZSwgJy8nKTsKKwkJdHJhdmVyc2VfcGF0aCA9IHhzdHJuZHVwKGJhc2UuYnVmLCBiYXNlLmxlbik7CiAJfSBlbHNlIHsKLQkJdHJhdmVyc2VfcGF0aCA9IHhzdHJuZHVwKGluZm8tPm5hbWUucGF0aCwgaW5mby0+cGF0aGxlbik7CisJCXRyYXZlcnNlX3BhdGggPSB4c3RybmR1cChpbmZvLT5uYW1lLCBpbmZvLT5wYXRobGVuKTsKIAl9CiAJaW5mby0+dHJhdmVyc2VfcGF0aCA9IHRyYXZlcnNlX3BhdGg7CiAJZm9yICg7OykgewpAQCAtNDY3LDcgKzQ5NCw3IEBACiAJCX0KIAkJaWYgKCFtYXNrKQogCQkJYnJlYWs7Ci0JCWludGVyZXN0aW5nID0gcHJ1bmVfdHJhdmVyc2FsKGUsIGluZm8sICZiYXNlLCBpbnRlcmVzdGluZyk7CisJCWludGVyZXN0aW5nID0gcHJ1bmVfdHJhdmVyc2FsKGlzdGF0ZSwgZSwgaW5mbywgJmJhc2UsIGludGVyZXN0aW5nKTsKIAkJaWYgKGludGVyZXN0aW5nIDwgMCkKIAkJCWJyZWFrOwogCQlpZiAoaW50ZXJlc3RpbmcpIHsKQEAgLTQ4MywxMCArNTEwLDggQEAKIAkJCWlmIChtYXNrICYgKDF1bCA8PCBpKSkKIAkJCQl1cGRhdGVfZXh0ZW5kZWRfZW50cnkodHggKyBpLCBlbnRyeSArIGkpOwogCX0KLQlmcmVlKGVudHJ5KTsKIAlmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKQogCQlmcmVlX2V4dGVuZGVkX2VudHJ5KHR4ICsgaSk7Ci0JZnJlZSh0eCk7CiAJZnJlZSh0cmF2ZXJzZV9wYXRoKTsKIAlpbmZvLT50cmF2ZXJzZV9wYXRoID0gTlVMTDsKIAlzdHJidWZfcmVsZWFzZSgmYmFzZSk7CkBAIC00OTksMTUgKzUyNCwxNyBAQAogCXN0cnVjdCBvYmplY3RfaWQgb2lkOwogfTsKIAotc3RhdGljIGludCBmaW5kX3RyZWVfZW50cnkoc3RydWN0IHRyZWVfZGVzYyAqdCwgY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IG9iamVjdF9pZCAqcmVzdWx0LCB1bnNpZ25lZCAqbW9kZSkKK3N0YXRpYyBpbnQgZmluZF90cmVlX2VudHJ5KHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgdHJlZV9kZXNjICp0LAorCQkJICAgY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IG9iamVjdF9pZCAqcmVzdWx0LAorCQkJICAgdW5zaWduZWQgc2hvcnQgKm1vZGUpCiB7CiAJaW50IG5hbWVsZW4gPSBzdHJsZW4obmFtZSk7CiAJd2hpbGUgKHQtPnNpemUpIHsKIAkJY29uc3QgY2hhciAqZW50cnk7Ci0JCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZDsKKwkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJCWludCBlbnRyeWxlbiwgY21wOwogCi0JCW9pZCA9IHRyZWVfZW50cnlfZXh0cmFjdCh0LCAmZW50cnksIG1vZGUpOworCQlvaWRjcHkoJm9pZCwgdHJlZV9lbnRyeV9leHRyYWN0KHQsICZlbnRyeSwgbW9kZSkpOwogCQllbnRyeWxlbiA9IHRyZWVfZW50cnlfbGVuKCZ0LT5lbnRyeSk7CiAJCXVwZGF0ZV90cmVlX2VudHJ5KHQpOwogCQlpZiAoZW50cnlsZW4gPiBuYW1lbGVuKQpAQCAtNTE4LDcgKzU0NSw3IEBACiAJCWlmIChjbXAgPCAwKQogCQkJYnJlYWs7CiAJCWlmIChlbnRyeWxlbiA9PSBuYW1lbGVuKSB7Ci0JCQlvaWRjcHkocmVzdWx0LCBvaWQpOworCQkJb2lkY3B5KHJlc3VsdCwgJm9pZCk7CiAJCQlyZXR1cm4gMDsKIAkJfQogCQlpZiAobmFtZVtlbnRyeWxlbl0gIT0gJy8nKQpAQCAtNTI2LDIyICs1NTMsMjYgQEAKIAkJaWYgKCFTX0lTRElSKCptb2RlKSkKIAkJCWJyZWFrOwogCQlpZiAoKytlbnRyeWxlbiA9PSBuYW1lbGVuKSB7Ci0JCQlvaWRjcHkocmVzdWx0LCBvaWQpOworCQkJb2lkY3B5KHJlc3VsdCwgJm9pZCk7CiAJCQlyZXR1cm4gMDsKIAkJfQotCQlyZXR1cm4gZ2V0X3RyZWVfZW50cnkob2lkLCBuYW1lICsgZW50cnlsZW4sIHJlc3VsdCwgbW9kZSk7CisJCXJldHVybiBnZXRfdHJlZV9lbnRyeShyLCAmb2lkLCBuYW1lICsgZW50cnlsZW4sIHJlc3VsdCwgbW9kZSk7CiAJfQogCXJldHVybiAtMTsKIH0KIAotaW50IGdldF90cmVlX2VudHJ5KGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKnRyZWVfb2lkLCBjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsIHVuc2lnbmVkICptb2RlKQoraW50IGdldF90cmVlX2VudHJ5KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICp0cmVlX29pZCwKKwkJICAgY29uc3QgY2hhciAqbmFtZSwKKwkJICAgc3RydWN0IG9iamVjdF9pZCAqb2lkLAorCQkgICB1bnNpZ25lZCBzaG9ydCAqbW9kZSkKIHsKIAlpbnQgcmV0dmFsOwogCXZvaWQgKnRyZWU7CiAJdW5zaWduZWQgbG9uZyBzaXplOwogCXN0cnVjdCBvYmplY3RfaWQgcm9vdDsKIAotCXRyZWUgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZSh0cmVlX29pZCwgdHJlZV90eXBlLCAmc2l6ZSwgJnJvb3QpOworCXRyZWUgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZShyLCB0cmVlX29pZCwgdHJlZV90eXBlLCAmc2l6ZSwgJnJvb3QpOwogCWlmICghdHJlZSkKIAkJcmV0dXJuIC0xOwogCkBAIC01NTYsNyArNTg3LDcgQEAKIAl9IGVsc2UgewogCQlzdHJ1Y3QgdHJlZV9kZXNjIHQ7CiAJCWluaXRfdHJlZV9kZXNjKCZ0LCB0cmVlLCBzaXplKTsKLQkJcmV0dmFsID0gZmluZF90cmVlX2VudHJ5KCZ0LCBuYW1lLCBvaWQsIG1vZGUpOworCQlyZXR2YWwgPSBmaW5kX3RyZWVfZW50cnkociwgJnQsIG5hbWUsIG9pZCwgbW9kZSk7CiAJfQogCWZyZWUodHJlZSk7CiAJcmV0dXJuIHJldHZhbDsKQEAgLTU4MSwxMCArNjEyLDEzIEBACiAgKiB3aXRoIHRoZSBzaGExIG9mIHRoZSBmb3VuZCBvYmplY3QsIGFuZCAqbW9kZSB3aWxsIGhvbGQgdGhlIG1vZGUgb2YKICAqIHRoZSBvYmplY3QuCiAgKgotICogU2VlIHRoZSBjb2RlIGZvciBlbnVtIGZvbGxvd19zeW1saW5rX3Jlc3VsdCBmb3IgYSBkZXNjcmlwdGlvbiBvZgorICogU2VlIHRoZSBjb2RlIGZvciBlbnVtIGdldF9vaWRfcmVzdWx0IGZvciBhIGRlc2NyaXB0aW9uIG9mCiAgKiB0aGUgcmV0dXJuIHZhbHVlcy4KICAqLwotZW51bSBmb2xsb3dfc3ltbGlua3NfcmVzdWx0IGdldF90cmVlX2VudHJ5X2ZvbGxvd19zeW1saW5rcyhzdHJ1Y3Qgb2JqZWN0X2lkICp0cmVlX29pZCwgY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IG9iamVjdF9pZCAqcmVzdWx0LCBzdHJ1Y3Qgc3RyYnVmICpyZXN1bHRfcGF0aCwgdW5zaWduZWQgKm1vZGUpCitlbnVtIGdldF9vaWRfcmVzdWx0IGdldF90cmVlX2VudHJ5X2ZvbGxvd19zeW1saW5rcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJc3RydWN0IG9iamVjdF9pZCAqdHJlZV9vaWQsIGNvbnN0IGNoYXIgKm5hbWUsCisJCXN0cnVjdCBvYmplY3RfaWQgKnJlc3VsdCwgc3RydWN0IHN0cmJ1ZiAqcmVzdWx0X3BhdGgsCisJCXVuc2lnbmVkIHNob3J0ICptb2RlKQogewogCWludCByZXR2YWwgPSBNSVNTSU5HX09CSkVDVDsKIAlzdHJ1Y3QgZGlyX3N0YXRlICpwYXJlbnRzID0gTlVMTDsKQEAgLTYwOCw3ICs2NDIsOCBAQAogCQkJdm9pZCAqdHJlZTsKIAkJCXN0cnVjdCBvYmplY3RfaWQgcm9vdDsKIAkJCXVuc2lnbmVkIGxvbmcgc2l6ZTsKLQkJCXRyZWUgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZSgmY3VycmVudF90cmVlX29pZCwKKwkJCXRyZWUgPSByZWFkX29iamVjdF93aXRoX3JlZmVyZW5jZShyLAorCQkJCQkJCSAgJmN1cnJlbnRfdHJlZV9vaWQsCiAJCQkJCQkJICB0cmVlX3R5cGUsICZzaXplLAogCQkJCQkJCSAgJnJvb3QpOwogCQkJaWYgKCF0cmVlKQpAQCAtNjc3LDcgKzcxMiw3IEBACiAJCX0KIAogCQkvKiBMb29rIHVwIHRoZSBmaXJzdCAob3Igb25seSkgcGF0aCBjb21wb25lbnQgaW4gdGhlIHRyZWUuICovCi0JCWZpbmRfcmVzdWx0ID0gZmluZF90cmVlX2VudHJ5KCZ0LCBuYW1lYnVmLmJ1ZiwKKwkJZmluZF9yZXN1bHQgPSBmaW5kX3RyZWVfZW50cnkociwgJnQsIG5hbWVidWYuYnVmLAogCQkJCQkgICAgICAmY3VycmVudF90cmVlX29pZCwgbW9kZSk7CiAJCWlmIChmaW5kX3Jlc3VsdCkgewogCQkJZ290byBkb25lOwpAQCAtNzIxLDcgKzc1Niw4IEBACiAJCQkgKi8KIAkJCXJldHZhbCA9IERBTkdMSU5HX1NZTUxJTks7CiAKLQkJCWNvbnRlbnRzID0gcmVhZF9vYmplY3RfZmlsZSgmY3VycmVudF90cmVlX29pZCwgJnR5cGUsCisJCQljb250ZW50cyA9IHJlcG9fcmVhZF9vYmplY3RfZmlsZShyLAorCQkJCQkJICAgICZjdXJyZW50X3RyZWVfb2lkLCAmdHlwZSwKIAkJCQkJCSAgICAmbGlua19sZW4pOwogCiAJCQlpZiAoIWNvbnRlbnRzKQpAQCAtOTM0LDcgKzk3MCw4IEBACiAgKiBQcmUtY29uZGl0aW9uOiBlaXRoZXIgYmFzZWxlbiA9PSBiYXNlX29mZnNldCAoaS5lLiBlbXB0eSBwYXRoKQogICogb3IgYmFzZVtiYXNlbGVuLTFdID09ICcvJyAoaS5lLiB3aXRoIHRyYWlsaW5nIHNsYXNoKS4KICAqLwotc3RhdGljIGVudW0gaW50ZXJlc3RpbmcgZG9fbWF0Y2goY29uc3Qgc3RydWN0IG5hbWVfZW50cnkgKmVudHJ5LAorc3RhdGljIGVudW0gaW50ZXJlc3RpbmcgZG9fbWF0Y2goc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCisJCQkJIGNvbnN0IHN0cnVjdCBuYW1lX2VudHJ5ICplbnRyeSwKIAkJCQkgc3RydWN0IHN0cmJ1ZiAqYmFzZSwgaW50IGJhc2Vfb2Zmc2V0LAogCQkJCSBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBzLAogCQkJCSBpbnQgZXhjbHVkZSkKQEAgLTk1MCw3ICs5ODcsOCBAQAogCQkgICAgICAgUEFUSFNQRUNfTElURVJBTCB8CiAJCSAgICAgICBQQVRIU1BFQ19HTE9CIHwKIAkJICAgICAgIFBBVEhTUEVDX0lDQVNFIHwKLQkJICAgICAgIFBBVEhTUEVDX0VYQ0xVREUpOworCQkgICAgICAgUEFUSFNQRUNfRVhDTFVERSB8CisJCSAgICAgICBQQVRIU1BFQ19BVFRSKTsKIAogCWlmICghcHMtPm5yKSB7CiAJCWlmICghcHMtPnJlY3Vyc2l2ZSB8fApAQCAtOTgyLDE0ICsxMDIwLDIwIEBACiAKIAkJCWlmICghcHMtPnJlY3Vyc2l2ZSB8fAogCQkJICAgICEocHMtPm1hZ2ljICYgUEFUSFNQRUNfTUFYREVQVEgpIHx8Ci0JCQkgICAgcHMtPm1heF9kZXB0aCA9PSAtMSkKLQkJCQlyZXR1cm4gYWxsX2VudHJpZXNfaW50ZXJlc3Rpbmc7CisJCQkgICAgcHMtPm1heF9kZXB0aCA9PSAtMSkgeworCQkJCWlmICghaXRlbS0+YXR0cl9tYXRjaF9ucikKKwkJCQkJcmV0dXJuIGFsbF9lbnRyaWVzX2ludGVyZXN0aW5nOworCQkJCWVsc2UKKwkJCQkJZ290byBpbnRlcmVzdGluZzsKKwkJCX0KIAotCQkJcmV0dXJuIHdpdGhpbl9kZXB0aChiYXNlX3N0ciArIG1hdGNobGVuICsgMSwKLQkJCQkJICAgIGJhc2VsZW4gLSBtYXRjaGxlbiAtIDEsCi0JCQkJCSAgICAhIVNfSVNESVIoZW50cnktPm1vZGUpLAotCQkJCQkgICAgcHMtPm1heF9kZXB0aCkgPwotCQkJCWVudHJ5X2ludGVyZXN0aW5nIDogZW50cnlfbm90X2ludGVyZXN0aW5nOworCQkJaWYgKHdpdGhpbl9kZXB0aChiYXNlX3N0ciArIG1hdGNobGVuICsgMSwKKwkJCQkJIGJhc2VsZW4gLSBtYXRjaGxlbiAtIDEsCisJCQkJCSAhIVNfSVNESVIoZW50cnktPm1vZGUpLAorCQkJCQkgcHMtPm1heF9kZXB0aCkpCisJCQkJZ290byBpbnRlcmVzdGluZzsKKwkJCWVsc2UKKwkJCQlyZXR1cm4gZW50cnlfbm90X2ludGVyZXN0aW5nOwogCQl9CiAKIAkJLyogRWl0aGVyIHRoZXJlIG11c3QgYmUgbm8gYmFzZSwgb3IgdGhlIGJhc2UgbXVzdCBtYXRjaC4gKi8KQEAgLTk5NywxMiArMTA0MSwxMiBAQAogCQkJaWYgKG1hdGNoX2VudHJ5KGl0ZW0sIGVudHJ5LCBwYXRobGVuLAogCQkJCQltYXRjaCArIGJhc2VsZW4sIG1hdGNobGVuIC0gYmFzZWxlbiwKIAkJCQkJJm5ldmVyX2ludGVyZXN0aW5nKSkKLQkJCQlyZXR1cm4gZW50cnlfaW50ZXJlc3Rpbmc7CisJCQkJZ290byBpbnRlcmVzdGluZzsKIAogCQkJaWYgKGl0ZW0tPm5vd2lsZGNhcmRfbGVuIDwgaXRlbS0+bGVuKSB7CiAJCQkJaWYgKCFnaXRfZm5tYXRjaChpdGVtLCBtYXRjaCArIGJhc2VsZW4sIGVudHJ5LT5wYXRoLAogCQkJCQkJIGl0ZW0tPm5vd2lsZGNhcmRfbGVuIC0gYmFzZWxlbikpCi0JCQkJCXJldHVybiBlbnRyeV9pbnRlcmVzdGluZzsKKwkJCQkJZ290byBpbnRlcmVzdGluZzsKIAogCQkJCS8qCiAJCQkJICogTWF0Y2ggYWxsIGRpcmVjdG9yaWVzLiBXZSdsbCB0cnkgdG8KQEAgLTEwMjMsNyArMTA2Nyw3IEBACiAJCQkJICAgICFwc19zdHJuY21wKGl0ZW0sIG1hdGNoICsgYmFzZWxlbiwKIAkJCQkJCWVudHJ5LT5wYXRoLAogCQkJCQkJaXRlbS0+bm93aWxkY2FyZF9sZW4gLSBiYXNlbGVuKSkKLQkJCQkJcmV0dXJuIGVudHJ5X2ludGVyZXN0aW5nOworCQkJCQlnb3RvIGludGVyZXN0aW5nOwogCQkJfQogCiAJCQljb250aW51ZTsKQEAgLTEwNTgsNyArMTEwMiw3IEBACiAJCWlmICghZ2l0X2ZubWF0Y2goaXRlbSwgbWF0Y2gsIGJhc2UtPmJ1ZiArIGJhc2Vfb2Zmc2V0LAogCQkJCSBpdGVtLT5ub3dpbGRjYXJkX2xlbikpIHsKIAkJCXN0cmJ1Zl9zZXRsZW4oYmFzZSwgYmFzZV9vZmZzZXQgKyBiYXNlbGVuKTsKLQkJCXJldHVybiBlbnRyeV9pbnRlcmVzdGluZzsKKwkJCWdvdG8gaW50ZXJlc3Rpbmc7CiAJCX0KIAogCQkvKgpAQCAtMTA3Miw3ICsxMTE2LDcgQEAKIAkJICAgICFwc19zdHJuY21wKGl0ZW0sIG1hdGNoLCBiYXNlLT5idWYgKyBiYXNlX29mZnNldCwKIAkJCQlpdGVtLT5ub3dpbGRjYXJkX2xlbikpIHsKIAkJCXN0cmJ1Zl9zZXRsZW4oYmFzZSwgYmFzZV9vZmZzZXQgKyBiYXNlbGVuKTsKLQkJCXJldHVybiBlbnRyeV9pbnRlcmVzdGluZzsKKwkJCWdvdG8gaW50ZXJlc3Rpbmc7CiAJCX0KIAogCQlzdHJidWZfc2V0bGVuKGJhc2UsIGJhc2Vfb2Zmc2V0ICsgYmFzZWxlbik7CkBAIC0xMDgyLDEwICsxMTI2LDQyIEBACiAJCSAqIGxhdGVyIG9uLgogCQkgKiBtYXhfZGVwdGggaXMgaWdub3JlZCBidXQgd2UgbWF5IGNvbnNpZGVyIHN1cHBvcnQgaXQKIAkJICogaW4gZnV0dXJlLCBzZWUKLQkJICogaHR0cHM6Ly9wdWJsaWMtaW5ib3gub3JnL2dpdC83dm14bzVsMmc0LmZzZkBhbHRlci5zaWFtZXNlLmR5bmRucy5vcmcvCisJCSAqIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2dpdC83dm14bzVsMmc0LmZzZkBhbHRlci5zaWFtZXNlLmR5bmRucy5vcmcvCiAJCSAqLwogCQlpZiAocHMtPnJlY3Vyc2l2ZSAmJiBTX0lTRElSKGVudHJ5LT5tb2RlKSkKIAkJCXJldHVybiBlbnRyeV9pbnRlcmVzdGluZzsKKwkJY29udGludWU7CitpbnRlcmVzdGluZzoKKwkJaWYgKGl0ZW0tPmF0dHJfbWF0Y2hfbnIpIHsKKwkJCWludCByZXQ7CisKKwkJCS8qCisJCQkgKiBNdXN0IG5vdCByZXR1cm4gYWxsX2VudHJpZXNfbm90X2ludGVyZXN0aW5nCisJCQkgKiBwcmVtYXR1cmVseS4gV2UgZG8gbm90IGtub3cgaWYgYWxsIGVudHJpZXMgZG8gbm90CisJCQkgKiBtYXRjaCBzb21lIGF0dHJpYnV0ZXMgd2l0aCBjdXJyZW50IGF0dHIgQVBJLgorCQkJICovCisJCQluZXZlcl9pbnRlcmVzdGluZyA9IGVudHJ5X25vdF9pbnRlcmVzdGluZzsKKworCQkJLyoKKwkJCSAqIENvbnNpZGVyIGFsbCBkaXJlY3RvcmllcyBpbnRlcmVzdGluZyAoYmVjYXVzZSBzb21lCisJCQkgKiBvZiB0aG9zZSBmaWxlcyBpbnNpZGUgbWF5IG1hdGNoIHNvbWUgYXR0cmlidXRlcworCQkJICogZXZlbiB0aG91Z2ggdGhlIHBhcmVudCBkaXIgZG9lcyBub3QpCisJCQkgKgorCQkJICogRklYTUU6IGF0dHJpYnV0ZXMgX2Nhbl8gbWF0Y2ggZGlyZWN0b3JpZXMgYW5kIHdlCisJCQkgKiBjYW4gcHJvYmFibHkgcmV0dXJuIGFsbF9lbnRyaWVzX2ludGVyZXN0aW5nIG9yCisJCQkgKiBhbGxfZW50cmllc19ub3RfaW50ZXJlc3RpbmcgaGVyZSBpZiBtYXRjaGVkLgorCQkJICovCisJCQlpZiAoU19JU0RJUihlbnRyeS0+bW9kZSkpCisJCQkJcmV0dXJuIGVudHJ5X2ludGVyZXN0aW5nOworCisJCQlzdHJidWZfYWRkKGJhc2UsIGVudHJ5LT5wYXRoLCBwYXRobGVuKTsKKwkJCXJldCA9IG1hdGNoX3BhdGhzcGVjX2F0dHJzKGlzdGF0ZSwgYmFzZS0+YnVmICsgYmFzZV9vZmZzZXQsCisJCQkJCQkgICBiYXNlLT5sZW4gLSBiYXNlX29mZnNldCwgaXRlbSk7CisJCQlzdHJidWZfc2V0bGVuKGJhc2UsIGJhc2Vfb2Zmc2V0ICsgYmFzZWxlbik7CisJCQlpZiAoIXJldCkKKwkJCQljb250aW51ZTsKKwkJfQorCQlyZXR1cm4gZW50cnlfaW50ZXJlc3Rpbmc7CiAJfQogCXJldHVybiBuZXZlcl9pbnRlcmVzdGluZzsgLyogTm8gbWF0Y2hlcyAqLwogfQpAQCAtMTA5NiwxMiArMTE3MiwxMyBAQAogICogUHJlLWNvbmRpdGlvbjogZWl0aGVyIGJhc2VsZW4gPT0gYmFzZV9vZmZzZXQgKGkuZS4gZW1wdHkgcGF0aCkKICAqIG9yIGJhc2VbYmFzZWxlbi0xXSA9PSAnLycgKGkuZS4gd2l0aCB0cmFpbGluZyBzbGFzaCkuCiAgKi8KLWVudW0gaW50ZXJlc3RpbmcgdHJlZV9lbnRyeV9pbnRlcmVzdGluZyhjb25zdCBzdHJ1Y3QgbmFtZV9lbnRyeSAqZW50cnksCitlbnVtIGludGVyZXN0aW5nIHRyZWVfZW50cnlfaW50ZXJlc3Rpbmcoc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCisJCQkJCWNvbnN0IHN0cnVjdCBuYW1lX2VudHJ5ICplbnRyeSwKIAkJCQkJc3RydWN0IHN0cmJ1ZiAqYmFzZSwgaW50IGJhc2Vfb2Zmc2V0LAogCQkJCQljb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBzKQogewogCWVudW0gaW50ZXJlc3RpbmcgcG9zaXRpdmUsIG5lZ2F0aXZlOwotCXBvc2l0aXZlID0gZG9fbWF0Y2goZW50cnksIGJhc2UsIGJhc2Vfb2Zmc2V0LCBwcywgMCk7CisJcG9zaXRpdmUgPSBkb19tYXRjaChpc3RhdGUsIGVudHJ5LCBiYXNlLCBiYXNlX29mZnNldCwgcHMsIDApOwogCiAJLyoKIAkgKiBjYXNlIHwgZW50cnkgfCBwb3NpdGl2ZSB8IG5lZ2F0aXZlIHwgcmVzdWx0CkBAIC0xMTM4LDcgKzEyMTUsNyBAQAogCSAgICBwb3NpdGl2ZSA8PSBlbnRyeV9ub3RfaW50ZXJlc3RpbmcpIC8qICMxLCAjMiwgIzExLCAjMTIgKi8KIAkJcmV0dXJuIHBvc2l0aXZlOwogCi0JbmVnYXRpdmUgPSBkb19tYXRjaChlbnRyeSwgYmFzZSwgYmFzZV9vZmZzZXQsIHBzLCAxKTsKKwluZWdhdGl2ZSA9IGRvX21hdGNoKGlzdGF0ZSwgZW50cnksIGJhc2UsIGJhc2Vfb2Zmc2V0LCBwcywgMSk7CiAKIAkvKiAjOCwgIzE4ICovCiAJaWYgKHBvc2l0aXZlID09IGFsbF9lbnRyaWVzX2ludGVyZXN0aW5nICYmCmRpZmYgLS1naXQgYS90cmVlLXdhbGsuaCBiL3RyZWUtd2Fsay5oCmluZGV4IDE5NjgzMTAuLmE1MDU4NDYgMTAwNjQ0Ci0tLSBhL3RyZWUtd2Fsay5oCisrKyBiL3RyZWUtd2Fsay5oCkBAIC0xLDMwICsxLDYyIEBACiAjaWZuZGVmIFRSRUVfV0FMS19ICiAjZGVmaW5lIFRSRUVfV0FMS19ICiAKLXN0cnVjdCBzdHJidWY7CisjaW5jbHVkZSAiY2FjaGUuaCIKIAorI2RlZmluZSBNQVhfVFJBVkVSU0VfVFJFRVMgOAorCisvKioKKyAqIFRoZSB0cmVlIHdhbGtpbmcgQVBJIGlzIHVzZWQgdG8gdHJhdmVyc2UgYW5kIGluc3BlY3QgdHJlZXMuCisgKi8KKworLyoqCisgKiBBbiBlbnRyeSBpbiBhIHRyZWUuIEVhY2ggZW50cnkgaGFzIGEgc2hhMSBpZGVudGlmaWVyLCBwYXRobmFtZSwgYW5kIG1vZGUuCisgKi8KIHN0cnVjdCBuYW1lX2VudHJ5IHsKLQljb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQ7CisJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJY29uc3QgY2hhciAqcGF0aDsKKwlpbnQgcGF0aGxlbjsKIAl1bnNpZ25lZCBpbnQgbW9kZTsKIH07CiAKKy8qKgorICogQSBzZW1pLW9wYXF1ZSBkYXRhIHN0cnVjdHVyZSB1c2VkIHRvIG1haW50YWluIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSB3YWxrLgorICovCiBzdHJ1Y3QgdHJlZV9kZXNjIHsKKwkvKgorCSAqIHBvaW50ZXIgaW50byB0aGUgbWVtb3J5IHJlcHJlc2VudGF0aW9uIG9mIHRoZSB0cmVlLiBJdCBhbHdheXMKKwkgKiBwb2ludHMgYXQgdGhlIGN1cnJlbnQgZW50cnkgYmVpbmcgdmlzaXRlZC4KKwkgKi8KIAljb25zdCB2b2lkICpidWZmZXI7CisKKwkvKiBwb2ludHMgdG8gdGhlIGN1cnJlbnQgZW50cnkgYmVpbmcgdmlzaXRlZC4gKi8KIAlzdHJ1Y3QgbmFtZV9lbnRyeSBlbnRyeTsKKworCS8qIGNvdW50cyB0aGUgbnVtYmVyIG9mIGJ5dGVzIGxlZnQgaW4gdGhlIGBidWZmZXJgLiAqLwogCXVuc2lnbmVkIGludCBzaXplOwogfTsKIAotc3RhdGljIGlubGluZSBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICp0cmVlX2VudHJ5X2V4dHJhY3Qoc3RydWN0IHRyZWVfZGVzYyAqZGVzYywgY29uc3QgY2hhciAqKnBhdGhwLCB1bnNpZ25lZCBpbnQgKm1vZGVwKQorLyoqCisgKiBEZWNvZGUgdGhlIGVudHJ5IGN1cnJlbnRseSBiZWluZyB2aXNpdGVkICh0aGUgb25lIHBvaW50ZWQgdG8gYnkKKyAqIGB0cmVlX2Rlc2Mnc2AgYGVudHJ5YCBtZW1iZXIpIGFuZCByZXR1cm4gdGhlIHNoYTEgb2YgdGhlIGVudHJ5LiBUaGUKKyAqIGBwYXRocGAgYW5kIGBtb2RlcGAgYXJndW1lbnRzIGFyZSBzZXQgdG8gdGhlIGVudHJ5J3MgcGF0aG5hbWUgYW5kIG1vZGUKKyAqIHJlc3BlY3RpdmVseS4KKyAqLworc3RhdGljIGlubGluZSBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICp0cmVlX2VudHJ5X2V4dHJhY3Qoc3RydWN0IHRyZWVfZGVzYyAqZGVzYywgY29uc3QgY2hhciAqKnBhdGhwLCB1bnNpZ25lZCBzaG9ydCAqbW9kZXApCiB7CiAJKnBhdGhwID0gZGVzYy0+ZW50cnkucGF0aDsKIAkqbW9kZXAgPSBkZXNjLT5lbnRyeS5tb2RlOwotCXJldHVybiBkZXNjLT5lbnRyeS5vaWQ7CisJcmV0dXJuICZkZXNjLT5lbnRyeS5vaWQ7CiB9CiAKKy8qKgorICogQ2FsY3VsYXRlIHRoZSBsZW5ndGggb2YgYSB0cmVlIGVudHJ5J3MgcGF0aG5hbWUuIFRoaXMgdXRpbGl6ZXMgdGhlCisgKiBtZW1vcnkgc3RydWN0dXJlIG9mIGEgdHJlZSBlbnRyeSB0byBhdm9pZCB0aGUgb3ZlcmhlYWQgb2YgdXNpbmcgYQorICogZ2VuZXJpYyBzdHJsZW4oKS4KKyAqLwogc3RhdGljIGlubGluZSBpbnQgdHJlZV9lbnRyeV9sZW4oY29uc3Qgc3RydWN0IG5hbWVfZW50cnkgKm5lKQogewotCXJldHVybiAoY29uc3QgY2hhciAqKW5lLT5vaWQgLSBuZS0+cGF0aCAtIDE7CisJcmV0dXJuIG5lLT5wYXRobGVuOwogfQogCiAvKgpAQCAtMzIsNjIgKzY0LDE0NSBAQAogICogY29ycnVwdCB0cmVlIGVudHJ5IHJhdGhlciB0aGFuIGR5aW5nLAogICovCiAKKy8qKgorICogV2FsayB0byB0aGUgbmV4dCBlbnRyeSBpbiBhIHRyZWUuIFRoaXMgaXMgY29tbW9ubHkgdXNlZCBpbiBjb25qdW5jdGlvbgorICogd2l0aCBgdHJlZV9lbnRyeV9leHRyYWN0YCB0byBpbnNwZWN0IHRoZSBjdXJyZW50IGVudHJ5LgorICovCiB2b2lkIHVwZGF0ZV90cmVlX2VudHJ5KHN0cnVjdCB0cmVlX2Rlc2MgKik7CisKIGludCB1cGRhdGVfdHJlZV9lbnRyeV9nZW50bHkoc3RydWN0IHRyZWVfZGVzYyAqKTsKKworLyoqCisgKiBJbml0aWFsaXplIGEgYHRyZWVfZGVzY2AgYW5kIGRlY29kZSBpdHMgZmlyc3QgZW50cnkuIFRoZSBidWZmZXIgYW5kCisgKiBzaXplIHBhcmFtZXRlcnMgYXJlIGFzc3VtZWQgdG8gYmUgdGhlIHNhbWUgYXMgdGhlIGJ1ZmZlciBhbmQgc2l6ZQorICogbWVtYmVycyBvZiBgc3RydWN0IHRyZWVgLgorICovCiB2b2lkIGluaXRfdHJlZV9kZXNjKHN0cnVjdCB0cmVlX2Rlc2MgKmRlc2MsIGNvbnN0IHZvaWQgKmJ1ZiwgdW5zaWduZWQgbG9uZyBzaXplKTsKKwogaW50IGluaXRfdHJlZV9kZXNjX2dlbnRseShzdHJ1Y3QgdHJlZV9kZXNjICpkZXNjLCBjb25zdCB2b2lkICpidWYsIHVuc2lnbmVkIGxvbmcgc2l6ZSk7CiAKIC8qCi0gKiBIZWxwZXIgZnVuY3Rpb24gdGhhdCBkb2VzIGJvdGggdHJlZV9lbnRyeV9leHRyYWN0KCkgYW5kIHVwZGF0ZV90cmVlX2VudHJ5KCkKLSAqIGFuZCByZXR1cm5zIHRydWUgZm9yIHN1Y2Nlc3MKKyAqIFZpc2l0IHRoZSBuZXh0IGVudHJ5IGluIGEgdHJlZS4gUmV0dXJucyAxIHdoZW4gdGhlcmUgYXJlIG1vcmUgZW50cmllcworICogbGVmdCB0byB2aXNpdCBhbmQgMCB3aGVuIGFsbCBlbnRyaWVzIGhhdmUgYmVlbiB2aXNpdGVkLiBUaGlzIGlzCisgKiBjb21tb25seSB1c2VkIGluIHRoZSB0ZXN0IG9mIGEgd2hpbGUgbG9vcC4KICAqLwogaW50IHRyZWVfZW50cnkoc3RydWN0IHRyZWVfZGVzYyAqLCBzdHJ1Y3QgbmFtZV9lbnRyeSAqKTsKKwogaW50IHRyZWVfZW50cnlfZ2VudGx5KHN0cnVjdCB0cmVlX2Rlc2MgKiwgc3RydWN0IG5hbWVfZW50cnkgKik7CiAKLXZvaWQgKmZpbGxfdHJlZV9kZXNjcmlwdG9yKHN0cnVjdCB0cmVlX2Rlc2MgKmRlc2MsIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CisvKioKKyAqIEluaXRpYWxpemUgYSBgdHJlZV9kZXNjYCBhbmQgZGVjb2RlIGl0cyBmaXJzdCBlbnRyeSBnaXZlbiB0aGUKKyAqIG9iamVjdCBJRCBvZiBhIHRyZWUuIFJldHVybnMgdGhlIGBidWZmZXJgIG1lbWJlciBpZiB0aGUgbGF0dGVyCisgKiBpcyBhIHZhbGlkIHRyZWUgaWRlbnRpZmllciBhbmQgTlVMTCBvdGhlcndpc2UuCisgKi8KK3ZvaWQgKmZpbGxfdHJlZV9kZXNjcmlwdG9yKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgc3RydWN0IHRyZWVfZGVzYyAqZGVzYywKKwkJCSAgIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCk7CiAKIHN0cnVjdCB0cmF2ZXJzZV9pbmZvOwogdHlwZWRlZiBpbnQgKCp0cmF2ZXJzZV9jYWxsYmFja190KShpbnQgbiwgdW5zaWduZWQgbG9uZyBtYXNrLCB1bnNpZ25lZCBsb25nIGRpcm1hc2ssIHN0cnVjdCBuYW1lX2VudHJ5ICplbnRyeSwgc3RydWN0IHRyYXZlcnNlX2luZm8gKik7Ci1pbnQgdHJhdmVyc2VfdHJlZXMoaW50IG4sIHN0cnVjdCB0cmVlX2Rlc2MgKnQsIHN0cnVjdCB0cmF2ZXJzZV9pbmZvICppbmZvKTsKIAotZW51bSBmb2xsb3dfc3ltbGlua3NfcmVzdWx0IHsKLQlGT1VORCA9IDAsIC8qIFRoaXMgaW5jbHVkZXMgb3V0LW9mLXRyZWUgbGlua3MgKi8KLQlNSVNTSU5HX09CSkVDVCA9IC0xLCAvKiBUaGUgaW5pdGlhbCBzeW1saW5rIGlzIG1pc3NpbmcgKi8KLQlEQU5HTElOR19TWU1MSU5LID0gLTIsIC8qCi0JCQkJKiBUaGUgaW5pdGlhbCBzeW1saW5rIGlzIHRoZXJlLCBidXQKLQkJCQkqICh0cmFuc2l0aXZlbHkpIHBvaW50cyB0byBhIG1pc3NpbmcKLQkJCQkqIGluLXRyZWUgZmlsZQotCQkJCSovCi0JU1lNTElOS19MT09QID0gLTMsCi0JTk9UX0RJUiA9IC00LCAvKgotCQkgICAgICAgKiBTb21ld2hlcmUgYWxvbmcgdGhlIHN5bWxpbmsgY2hhaW4sIGEgcGF0aCBpcwotCQkgICAgICAgKiByZXF1ZXN0ZWQgd2hpY2ggY29udGFpbnMgYSBmaWxlIGFzIGEKLQkJICAgICAgICogbm9uLWZpbmFsIGVsZW1lbnQuCi0JCSAgICAgICAqLwotfTsKKy8qKgorICogVHJhdmVyc2UgYG5gIG51bWJlciBvZiB0cmVlcyBpbiBwYXJhbGxlbC4gVGhlIGBmbmAgY2FsbGJhY2sgbWVtYmVyIG9mCisgKiBgdHJhdmVyc2VfaW5mb2AgaXMgY2FsbGVkIG9uY2UgZm9yIGVhY2ggdHJlZSBlbnRyeS4KKyAqLworaW50IHRyYXZlcnNlX3RyZWVzKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLCBpbnQgbiwgc3RydWN0IHRyZWVfZGVzYyAqdCwgc3RydWN0IHRyYXZlcnNlX2luZm8gKmluZm8pOwogCi1lbnVtIGZvbGxvd19zeW1saW5rc19yZXN1bHQgZ2V0X3RyZWVfZW50cnlfZm9sbG93X3N5bWxpbmtzKHN0cnVjdCBvYmplY3RfaWQgKnRyZWVfb2lkLCBjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qgb2JqZWN0X2lkICpyZXN1bHQsIHN0cnVjdCBzdHJidWYgKnJlc3VsdF9wYXRoLCB1bnNpZ25lZCAqbW9kZSk7CitlbnVtIGdldF9vaWRfcmVzdWx0IGdldF90cmVlX2VudHJ5X2ZvbGxvd19zeW1saW5rcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IG9iamVjdF9pZCAqdHJlZV9vaWQsIGNvbnN0IGNoYXIgKm5hbWUsIHN0cnVjdCBvYmplY3RfaWQgKnJlc3VsdCwgc3RydWN0IHN0cmJ1ZiAqcmVzdWx0X3BhdGgsIHVuc2lnbmVkIHNob3J0ICptb2RlKTsKIAorLyoqCisgKiBBIHN0cnVjdHVyZSB1c2VkIHRvIG1haW50YWluIHRoZSBzdGF0ZSBvZiBhIHRyYXZlcnNhbC4KKyAqLwogc3RydWN0IHRyYXZlcnNlX2luZm8gewogCWNvbnN0IGNoYXIgKnRyYXZlcnNlX3BhdGg7CisKKwkvKgorCSAqIHBvaW50cyB0byB0aGUgdHJhdmVyc2VfaW5mbyB3aGljaCB3YXMgdXNlZCB0byBkZXNjZW5kIGludG8gdGhlCisJICogY3VycmVudCB0cmVlLiBJZiB0aGlzIGlzIHRoZSB0b3AtbGV2ZWwgdHJlZSBgcHJldmAgd2lsbCBwb2ludCB0bworCSAqIGEgZHVtbXkgdHJhdmVyc2VfaW5mby4KKwkgKi8KIAlzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqcHJldjsKLQlzdHJ1Y3QgbmFtZV9lbnRyeSBuYW1lOwotCWludCBwYXRobGVuOworCisJLyogaXMgdGhlIGVudHJ5IGZvciB0aGUgY3VycmVudCB0cmVlIChpZiB0aGUgdHJlZSBpcyBhIHN1YnRyZWUpLiAqLworCWNvbnN0IGNoYXIgKm5hbWU7CisKKwlzaXplX3QgbmFtZWxlbjsKKwl1bnNpZ25lZCBtb2RlOworCisJLyogaXMgdGhlIGxlbmd0aCBvZiB0aGUgZnVsbCBwYXRoIGZvciB0aGUgY3VycmVudCB0cmVlLiAqLworCXNpemVfdCBwYXRobGVuOworCiAJc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYzsKIAorCS8qIGNhbiBiZSB1c2VkIGJ5IGNhbGxiYWNrcyB0byBtYWludGFpbiBkaXJlY3RvcnktZmlsZSBjb25mbGljdHMuICovCiAJdW5zaWduZWQgbG9uZyBkZl9jb25mbGljdHM7CisKKwkvKiBhIGNhbGxiYWNrIGNhbGxlZCBmb3IgZWFjaCBlbnRyeSBpbiB0aGUgdHJlZS4KKwkgKgorCSAqIFRoZSBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSB0cmF2ZXJzZSBjYWxsYmFjayBhcmUgYXMgZm9sbG93czoKKwkgKgorCSAqIC0gYG5gIGNvdW50cyB0aGUgbnVtYmVyIG9mIHRyZWVzIGJlaW5nIHRyYXZlcnNlZC4KKwkgKgorCSAqIC0gYG1hc2tgIGhhcyBpdHMgbnRoIGJpdCBzZXQgaWYgc29tZXRoaW5nIGV4aXN0cyBpbiB0aGUgbnRoIGVudHJ5LgorCSAqCisJICogLSBgZGlybWFza2AgaGFzIGl0cyBudGggYml0IHNldCBpZiB0aGUgbnRoIHRyZWUncyBlbnRyeSBpcyBhIGRpcmVjdG9yeS4KKwkgKgorCSAqIC0gYGVudHJ5YCBpcyBhbiBhcnJheSBvZiBzaXplIGBuYCB3aGVyZSB0aGUgbnRoIGVudHJ5IGlzIGZyb20gdGhlIG50aCB0cmVlLgorCSAqCisJICogLSBgaW5mb2AgbWFpbnRhaW5zIHRoZSBzdGF0ZSBvZiB0aGUgdHJhdmVyc2FsLgorCSAqCisJICogUmV0dXJuaW5nIGEgbmVnYXRpdmUgdmFsdWUgd2lsbCB0ZXJtaW5hdGUgdGhlIHRyYXZlcnNhbC4gT3RoZXJ3aXNlIHRoZQorCSAqIHJldHVybiB2YWx1ZSBpcyB0cmVhdGVkIGFzIGFuIHVwZGF0ZSBtYXNrLiBJZiB0aGUgbnRoIGJpdCBpcyBzZXQgdGhlIG50aCB0cmVlCisJICogd2lsbCBiZSB1cGRhdGVkIGFuZCBpZiB0aGUgYml0IGlzIG5vdCBzZXQgdGhlIG50aCB0cmVlIGVudHJ5IHdpbGwgYmUgdGhlCisJICogc2FtZSBpbiB0aGUgbmV4dCBjYWxsYmFjayBpbnZvY2F0aW9uLgorCSAqLwogCXRyYXZlcnNlX2NhbGxiYWNrX3QgZm47CisKKwkvKiBjYW4gYmUgYW55dGhpbmcgdGhlIGBmbmAgY2FsbGJhY2sgd291bGQgd2FudCB0byB1c2UuICovCiAJdm9pZCAqZGF0YTsKKworCS8qIHRlbGxzIHdoZXRoZXIgdG8gc3RvcCBhdCB0aGUgZmlyc3QgZXJyb3Igb3Igbm90LiAqLwogCWludCBzaG93X2FsbF9lcnJvcnM7CiB9OwogCi1pbnQgZ2V0X3RyZWVfZW50cnkoY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqLCBjb25zdCBjaGFyICosIHN0cnVjdCBvYmplY3RfaWQgKiwgdW5zaWduZWQgKik7Ci1leHRlcm4gY2hhciAqbWFrZV90cmF2ZXJzZV9wYXRoKGNoYXIgKnBhdGgsIGNvbnN0IHN0cnVjdCB0cmF2ZXJzZV9pbmZvICppbmZvLCBjb25zdCBzdHJ1Y3QgbmFtZV9lbnRyeSAqbik7Ci1leHRlcm4gdm9pZCBzZXR1cF90cmF2ZXJzZV9pbmZvKHN0cnVjdCB0cmF2ZXJzZV9pbmZvICppbmZvLCBjb25zdCBjaGFyICpiYXNlKTsKKy8qKgorICogRmluZCBhbiBlbnRyeSBpbiBhIHRyZWUgZ2l2ZW4gYSBwYXRobmFtZSBhbmQgdGhlIHNoYTEgb2YgYSB0cmVlIHRvCisgKiBzZWFyY2guIFJldHVybnMgMCBpZiB0aGUgZW50cnkgaXMgZm91bmQgYW5kIC0xIG90aGVyd2lzZS4gVGhlIHRoaXJkCisgKiBhbmQgZm91cnRoIHBhcmFtZXRlcnMgYXJlIHNldCB0byB0aGUgZW50cnkncyBzaGExIGFuZCBtb2RlIHJlc3BlY3RpdmVseS4KKyAqLworaW50IGdldF90cmVlX2VudHJ5KHN0cnVjdCByZXBvc2l0b3J5ICosIGNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKiwgY29uc3QgY2hhciAqLCBzdHJ1Y3Qgb2JqZWN0X2lkICosIHVuc2lnbmVkIHNob3J0ICopOwogCi1zdGF0aWMgaW5saW5lIGludCB0cmF2ZXJzZV9wYXRoX2xlbihjb25zdCBzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbywgY29uc3Qgc3RydWN0IG5hbWVfZW50cnkgKm4pCisvKioKKyAqIEdlbmVyYXRlIHRoZSBmdWxsIHBhdGhuYW1lIG9mIGEgdHJlZSBlbnRyeSBiYXNlZCBmcm9tIHRoZSByb290IG9mIHRoZQorICogdHJhdmVyc2FsLiBGb3IgZXhhbXBsZSwgaWYgdGhlIHRyYXZlcnNhbCBoYXMgcmVjdXJzZWQgaW50byBhbm90aGVyCisgKiB0cmVlIG5hbWVkICJiYXIiIHRoZSBwYXRobmFtZSBvZiBhbiBlbnRyeSAiYmF6IiBpbiB0aGUgImJhciIKKyAqIHRyZWUgd291bGQgYmUgImJhci9iYXoiLgorICovCitjaGFyICptYWtlX3RyYXZlcnNlX3BhdGgoY2hhciAqcGF0aCwgc2l6ZV90IHBhdGhsZW4sIGNvbnN0IHN0cnVjdCB0cmF2ZXJzZV9pbmZvICppbmZvLAorCQkJIGNvbnN0IGNoYXIgKm5hbWUsIHNpemVfdCBuYW1lbGVuKTsKKworLyoqCisgKiBDb252ZW5pZW5jZSB3cmFwcGVyIHRvIGBtYWtlX3RyYXZlcnNlX3BhdGhgIGludG8gYSBzdHJidWYuCisgKi8KK3ZvaWQgc3RyYnVmX21ha2VfdHJhdmVyc2VfcGF0aChzdHJ1Y3Qgc3RyYnVmICpvdXQsCisJCQkgICAgICAgY29uc3Qgc3RydWN0IHRyYXZlcnNlX2luZm8gKmluZm8sCisJCQkgICAgICAgY29uc3QgY2hhciAqbmFtZSwgc2l6ZV90IG5hbWVsZW4pOworCisvKioKKyAqIEluaXRpYWxpemUgYSBgdHJhdmVyc2VfaW5mb2AgZ2l2ZW4gdGhlIHBhdGhuYW1lIG9mIHRoZSB0cmVlIHRvIHN0YXJ0CisgKiB0cmF2ZXJzaW5nIGZyb20uCisgKi8KK3ZvaWQgc2V0dXBfdHJhdmVyc2VfaW5mbyhzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbywgY29uc3QgY2hhciAqYmFzZSk7CisKKy8qKgorICogQ2FsY3VsYXRlIHRoZSBsZW5ndGggb2YgYSBwYXRobmFtZSByZXR1cm5lZCBieSBgbWFrZV90cmF2ZXJzZV9wYXRoYC4KKyAqIFRoaXMgdXRpbGl6ZXMgdGhlIG1lbW9yeSBzdHJ1Y3R1cmUgb2YgYSB0cmVlIGVudHJ5IHRvIGF2b2lkIHRoZQorICogb3ZlcmhlYWQgb2YgdXNpbmcgYSBnZW5lcmljIHN0cmxlbigpLgorICovCitzdGF0aWMgaW5saW5lIHNpemVfdCB0cmF2ZXJzZV9wYXRoX2xlbihjb25zdCBzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbywKKwkJCQkgICAgICAgc2l6ZV90IG5hbWVsZW4pCiB7Ci0JcmV0dXJuIGluZm8tPnBhdGhsZW4gKyB0cmVlX2VudHJ5X2xlbihuKTsKKwlyZXR1cm4gc3RfYWRkKGluZm8tPnBhdGhsZW4sIG5hbWVsZW4pOwogfQogCiAvKiBpbiBnZW5lcmFsLCBwb3NpdGl2ZSBtZWFucyAia2luZCBvZiBpbnRlcmVzdGluZyIgKi8KQEAgLTk4LDggKzIxMyw5IEBACiAJYWxsX2VudHJpZXNfaW50ZXJlc3RpbmcgPSAyIC8qIHllcywgYW5kIGFsbCBzdWJzZXF1ZW50IGVudHJpZXMgd2lsbCBiZSAqLwogfTsKIAotZXh0ZXJuIGVudW0gaW50ZXJlc3RpbmcgdHJlZV9lbnRyeV9pbnRlcmVzdGluZyhjb25zdCBzdHJ1Y3QgbmFtZV9lbnRyeSAqLAotCQkJCQkgICAgICAgc3RydWN0IHN0cmJ1ZiAqLCBpbnQsCi0JCQkJCSAgICAgICBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBzKTsKK2VudW0gaW50ZXJlc3RpbmcgdHJlZV9lbnRyeV9pbnRlcmVzdGluZyhzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKKwkJCQkJY29uc3Qgc3RydWN0IG5hbWVfZW50cnkgKiwKKwkJCQkJc3RydWN0IHN0cmJ1ZiAqLCBpbnQsCisJCQkJCWNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcHMpOwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL3RyZWUuYyBiL3RyZWUuYwppbmRleCAyMTVkM2ZkLi4xNDY2YmNjIDEwMDY0NAotLS0gYS90cmVlLmMKKysrIGIvdHJlZS5jCkBAIC0xLDQgKzEsMyBAQAotI2RlZmluZSBOT19USEVfSU5ERVhfQ09NUEFUSUJJTElUWV9NQUNST1MKICNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgImNhY2hlLXRyZWUuaCIKICNpbmNsdWRlICJ0cmVlLmgiCkBAIC02MCw3ICs1OSw4IEBACiAJCQkJICBBRERfQ0FDSEVfSlVTVF9BUFBFTkQpOwogfQogCi1zdGF0aWMgaW50IHJlYWRfdHJlZV8xKHN0cnVjdCB0cmVlICp0cmVlLCBzdHJ1Y3Qgc3RyYnVmICpiYXNlLAorc3RhdGljIGludCByZWFkX3RyZWVfMShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJICAgICAgIHN0cnVjdCB0cmVlICp0cmVlLCBzdHJ1Y3Qgc3RyYnVmICpiYXNlLAogCQkgICAgICAgaW50IHN0YWdlLCBjb25zdCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjLAogCQkgICAgICAgcmVhZF90cmVlX2ZuX3QgZm4sIHZvaWQgKmNvbnRleHQpCiB7CkBAIC03NywxNCArNzcsMTUgQEAKIAogCXdoaWxlICh0cmVlX2VudHJ5KCZkZXNjLCAmZW50cnkpKSB7CiAJCWlmIChyZXR2YWwgIT0gYWxsX2VudHJpZXNfaW50ZXJlc3RpbmcpIHsKLQkJCXJldHZhbCA9IHRyZWVfZW50cnlfaW50ZXJlc3RpbmcoJmVudHJ5LCBiYXNlLCAwLCBwYXRoc3BlYyk7CisJCQlyZXR2YWwgPSB0cmVlX2VudHJ5X2ludGVyZXN0aW5nKHItPmluZGV4LCAmZW50cnksCisJCQkJCQkJYmFzZSwgMCwgcGF0aHNwZWMpOwogCQkJaWYgKHJldHZhbCA9PSBhbGxfZW50cmllc19ub3RfaW50ZXJlc3RpbmcpCiAJCQkJYnJlYWs7CiAJCQlpZiAocmV0dmFsID09IGVudHJ5X25vdF9pbnRlcmVzdGluZykKIAkJCQljb250aW51ZTsKIAkJfQogCi0JCXN3aXRjaCAoZm4oZW50cnkub2lkLCBiYXNlLAorCQlzd2l0Y2ggKGZuKCZlbnRyeS5vaWQsIGJhc2UsCiAJCQkgICBlbnRyeS5wYXRoLCBlbnRyeS5tb2RlLCBzdGFnZSwgY29udGV4dCkpIHsKIAkJY2FzZSAwOgogCQkJY29udGludWU7CkBAIC05NSwxOSArOTYsMTkgQEAKIAkJfQogCiAJCWlmIChTX0lTRElSKGVudHJ5Lm1vZGUpKQotCQkJb2lkY3B5KCZvaWQsIGVudHJ5Lm9pZCk7CisJCQlvaWRjcHkoJm9pZCwgJmVudHJ5Lm9pZCk7CiAJCWVsc2UgaWYgKFNfSVNHSVRMSU5LKGVudHJ5Lm1vZGUpKSB7CiAJCQlzdHJ1Y3QgY29tbWl0ICpjb21taXQ7CiAKLQkJCWNvbW1pdCA9IGxvb2t1cF9jb21taXQodGhlX3JlcG9zaXRvcnksIGVudHJ5Lm9pZCk7CisJCQljb21taXQgPSBsb29rdXBfY29tbWl0KHIsICZlbnRyeS5vaWQpOwogCQkJaWYgKCFjb21taXQpCiAJCQkJZGllKCJDb21taXQgJXMgaW4gc3VibW9kdWxlIHBhdGggJXMlcyBub3QgZm91bmQiLAotCQkJCSAgICBvaWRfdG9faGV4KGVudHJ5Lm9pZCksCisJCQkJICAgIG9pZF90b19oZXgoJmVudHJ5Lm9pZCksCiAJCQkJICAgIGJhc2UtPmJ1ZiwgZW50cnkucGF0aCk7CiAKIAkJCWlmIChwYXJzZV9jb21taXQoY29tbWl0KSkKIAkJCQlkaWUoIkludmFsaWQgY29tbWl0ICVzIGluIHN1Ym1vZHVsZSBwYXRoICVzJXMiLAotCQkJCSAgICBvaWRfdG9faGV4KGVudHJ5Lm9pZCksCisJCQkJICAgIG9pZF90b19oZXgoJmVudHJ5Lm9pZCksCiAJCQkJICAgIGJhc2UtPmJ1ZiwgZW50cnkucGF0aCk7CiAKIAkJCW9pZGNweSgmb2lkLCBnZXRfY29tbWl0X3RyZWVfb2lkKGNvbW1pdCkpOwpAQCAtMTE4LDcgKzExOSw3IEBACiAJCWxlbiA9IHRyZWVfZW50cnlfbGVuKCZlbnRyeSk7CiAJCXN0cmJ1Zl9hZGQoYmFzZSwgZW50cnkucGF0aCwgbGVuKTsKIAkJc3RyYnVmX2FkZGNoKGJhc2UsICcvJyk7Ci0JCXJldHZhbCA9IHJlYWRfdHJlZV8xKGxvb2t1cF90cmVlKHRoZV9yZXBvc2l0b3J5LCAmb2lkKSwKKwkJcmV0dmFsID0gcmVhZF90cmVlXzEociwgbG9va3VwX3RyZWUociwgJm9pZCksCiAJCQkJICAgICBiYXNlLCBzdGFnZSwgcGF0aHNwZWMsCiAJCQkJICAgICBmbiwgY29udGV4dCk7CiAJCXN0cmJ1Zl9zZXRsZW4oYmFzZSwgb2xkbGVuKTsKQEAgLTEyOCw3ICsxMjksOCBAQAogCXJldHVybiAwOwogfQogCi1pbnQgcmVhZF90cmVlX3JlY3Vyc2l2ZShzdHJ1Y3QgdHJlZSAqdHJlZSwKK2ludCByZWFkX3RyZWVfcmVjdXJzaXZlKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJc3RydWN0IHRyZWUgKnRyZWUsCiAJCQljb25zdCBjaGFyICpiYXNlLCBpbnQgYmFzZWxlbiwKIAkJCWludCBzdGFnZSwgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYywKIAkJCXJlYWRfdHJlZV9mbl90IGZuLCB2b2lkICpjb250ZXh0KQpAQCAtMTM3LDcgKzEzOSw3IEBACiAJaW50IHJldDsKIAogCXN0cmJ1Zl9hZGQoJnNiLCBiYXNlLCBiYXNlbGVuKTsKLQlyZXQgPSByZWFkX3RyZWVfMSh0cmVlLCAmc2IsIHN0YWdlLCBwYXRoc3BlYywgZm4sIGNvbnRleHQpOworCXJldCA9IHJlYWRfdHJlZV8xKHIsIHRyZWUsICZzYiwgc3RhZ2UsIHBhdGhzcGVjLCBmbiwgY29udGV4dCk7CiAJc3RyYnVmX3JlbGVhc2UoJnNiKTsKIAlyZXR1cm4gcmV0OwogfQpAQCAtMTUyLDggKzE1NCw4IEBACiAJCQkJICBjZTItPm5hbWUsIGNlMi0+Y2VfbmFtZWxlbiwgY2Vfc3RhZ2UoY2UyKSk7CiB9CiAKLWludCByZWFkX3RyZWUoc3RydWN0IHRyZWUgKnRyZWUsIGludCBzdGFnZSwgc3RydWN0IHBhdGhzcGVjICptYXRjaCwKLQkgICAgICBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSkKK2ludCByZWFkX3RyZWUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCB0cmVlICp0cmVlLCBpbnQgc3RhZ2UsCisJICAgICAgc3RydWN0IHBhdGhzcGVjICptYXRjaCwgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpCiB7CiAJcmVhZF90cmVlX2ZuX3QgZm4gPSBOVUxMOwogCWludCBpLCBlcnI7CkBAIC0xODEsNyArMTgzLDcgQEAKIAogCWlmICghZm4pCiAJCWZuID0gcmVhZF9vbmVfZW50cnlfcXVpY2s7Ci0JZXJyID0gcmVhZF90cmVlX3JlY3Vyc2l2ZSh0cmVlLCAiIiwgMCwgc3RhZ2UsIG1hdGNoLCBmbiwgaXN0YXRlKTsKKwllcnIgPSByZWFkX3RyZWVfcmVjdXJzaXZlKHIsIHRyZWUsICIiLCAwLCBzdGFnZSwgbWF0Y2gsIGZuLCBpc3RhdGUpOwogCWlmIChmbiA9PSByZWFkX29uZV9lbnRyeSB8fCBlcnIpCiAJCXJldHVybiBlcnI7CiAKQEAgLTE5NSwxMCArMTk3LDkgQEAKIAogc3RydWN0IHRyZWUgKmxvb2t1cF90cmVlKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0Jc3RydWN0IG9iamVjdCAqb2JqID0gbG9va3VwX29iamVjdChyLCBvaWQtPmhhc2gpOworCXN0cnVjdCBvYmplY3QgKm9iaiA9IGxvb2t1cF9vYmplY3Qociwgb2lkKTsKIAlpZiAoIW9iaikKLQkJcmV0dXJuIGNyZWF0ZV9vYmplY3Qociwgb2lkLT5oYXNoLAotCQkJCSAgICAgYWxsb2NfdHJlZV9ub2RlKHIpKTsKKwkJcmV0dXJuIGNyZWF0ZV9vYmplY3Qociwgb2lkLCBhbGxvY190cmVlX25vZGUocikpOwogCXJldHVybiBvYmplY3RfYXNfdHlwZShyLCBvYmosIE9CSl9UUkVFLCAwKTsKIH0KIApAQCAtMjQzLDE5ICsyNDQsNyBAQAogCiBzdHJ1Y3QgdHJlZSAqcGFyc2VfdHJlZV9pbmRpcmVjdChjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQpCiB7Ci0Jc3RydWN0IG9iamVjdCAqb2JqID0gcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBvaWQpOwotCWRvIHsKLQkJaWYgKCFvYmopCi0JCQlyZXR1cm4gTlVMTDsKLQkJaWYgKG9iai0+dHlwZSA9PSBPQkpfVFJFRSkKLQkJCXJldHVybiAoc3RydWN0IHRyZWUgKikgb2JqOwotCQllbHNlIGlmIChvYmotPnR5cGUgPT0gT0JKX0NPTU1JVCkKLQkJCW9iaiA9ICYoZ2V0X2NvbW1pdF90cmVlKCgoc3RydWN0IGNvbW1pdCAqKW9iaikpLT5vYmplY3QpOwotCQllbHNlIGlmIChvYmotPnR5cGUgPT0gT0JKX1RBRykKLQkJCW9iaiA9ICgoc3RydWN0IHRhZyAqKSBvYmopLT50YWdnZWQ7Ci0JCWVsc2UKLQkJCXJldHVybiBOVUxMOwotCQlpZiAoIW9iai0+cGFyc2VkKQotCQkJcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCAmb2JqLT5vaWQpOwotCX0gd2hpbGUgKDEpOworCXN0cnVjdCByZXBvc2l0b3J5ICpyID0gdGhlX3JlcG9zaXRvcnk7CisJc3RydWN0IG9iamVjdCAqb2JqID0gcGFyc2Vfb2JqZWN0KHIsIG9pZCk7CisJcmV0dXJuIChzdHJ1Y3QgdHJlZSAqKXJlcG9fcGVlbF90b190eXBlKHIsIE5VTEwsIDAsIG9iaiwgT0JKX1RSRUUpOwogfQpkaWZmIC0tZ2l0IGEvdHJlZS5oIGIvdHJlZS5oCmluZGV4IGQ0ODA3ZGMuLjkzODM3NDUgMTAwNjQ0Ci0tLSBhL3RyZWUuaAorKysgYi90cmVlLmgKQEAgLTMsNyArMyw3IEBACiAKICNpbmNsdWRlICJvYmplY3QuaCIKIAotZXh0ZXJuIGNvbnN0IGNoYXIgKnRyZWVfdHlwZTsKK3N0cnVjdCByZXBvc2l0b3J5Owogc3RydWN0IHN0cmJ1ZjsKIAogc3RydWN0IHRyZWUgewpAQCAtMTIsNiArMTIsOCBAQAogCXVuc2lnbmVkIGxvbmcgc2l6ZTsKIH07CiAKK2V4dGVybiBjb25zdCBjaGFyICp0cmVlX3R5cGU7CisKIHN0cnVjdCB0cmVlICpsb29rdXBfdHJlZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKIAogaW50IHBhcnNlX3RyZWVfYnVmZmVyKHN0cnVjdCB0cmVlICppdGVtLCB2b2lkICpidWZmZXIsIHVuc2lnbmVkIGxvbmcgc2l6ZSk7CkBAIC0yOSwxMiArMzEsMTQgQEAKICNkZWZpbmUgUkVBRF9UUkVFX1JFQ1VSU0lWRSAxCiB0eXBlZGVmIGludCAoKnJlYWRfdHJlZV9mbl90KShjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICosIHN0cnVjdCBzdHJidWYgKiwgY29uc3QgY2hhciAqLCB1bnNpZ25lZCBpbnQsIGludCwgdm9pZCAqKTsKIAotZXh0ZXJuIGludCByZWFkX3RyZWVfcmVjdXJzaXZlKHN0cnVjdCB0cmVlICp0cmVlLAotCQkJICAgICAgIGNvbnN0IGNoYXIgKmJhc2UsIGludCBiYXNlbGVuLAotCQkJICAgICAgIGludCBzdGFnZSwgY29uc3Qgc3RydWN0IHBhdGhzcGVjICpwYXRoc3BlYywKLQkJCSAgICAgICByZWFkX3RyZWVfZm5fdCBmbiwgdm9pZCAqY29udGV4dCk7CitpbnQgcmVhZF90cmVlX3JlY3Vyc2l2ZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCXN0cnVjdCB0cmVlICp0cmVlLAorCQkJY29uc3QgY2hhciAqYmFzZSwgaW50IGJhc2VsZW4sCisJCQlpbnQgc3RhZ2UsIGNvbnN0IHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCisJCQlyZWFkX3RyZWVfZm5fdCBmbiwgdm9pZCAqY29udGV4dCk7CiAKLWV4dGVybiBpbnQgcmVhZF90cmVlKHN0cnVjdCB0cmVlICp0cmVlLCBpbnQgc3RhZ2UsIHN0cnVjdCBwYXRoc3BlYyAqcGF0aHNwZWMsCi0JCSAgICAgc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUpOworaW50IHJlYWRfdHJlZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHRyZWUgKnRyZWUsCisJICAgICAgaW50IHN0YWdlLCBzdHJ1Y3QgcGF0aHNwZWMgKnBhdGhzcGVjLAorCSAgICAgIHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlKTsKIAogI2VuZGlmIC8qIFRSRUVfSCAqLwpkaWZmIC0tZ2l0IGEvdW5pY29kZS13aWR0aC5oIGIvdW5pY29kZS13aWR0aC5oCmluZGV4IDdjNjQzNzYuLmI1MGU2ODYgMTAwNjQ0Ci0tLSBhL3VuaWNvZGUtd2lkdGguaAorKysgYi91bmljb2RlLXdpZHRoLmgKQEAgLTU5LDcgKzU5LDcgQEAKIHsgMHgwQjNGLCAweDBCM0YgfSwKIHsgMHgwQjQxLCAweDBCNDQgfSwKIHsgMHgwQjRELCAweDBCNEQgfSwKLXsgMHgwQjU2LCAweDBCNTYgfSwKK3sgMHgwQjU1LCAweDBCNTYgfSwKIHsgMHgwQjYyLCAweDBCNjMgfSwKIHsgMHgwQjgyLCAweDBCODIgfSwKIHsgMHgwQkMwLCAweDBCQzAgfSwKQEAgLTgyLDYgKzgyLDcgQEAKIHsgMHgwRDQxLCAweDBENDQgfSwKIHsgMHgwRDRELCAweDBENEQgfSwKIHsgMHgwRDYyLCAweDBENjMgfSwKK3sgMHgwRDgxLCAweDBEODEgfSwKIHsgMHgwRENBLCAweDBEQ0EgfSwKIHsgMHgwREQyLCAweDBERDQgfSwKIHsgMHgwREQ2LCAweDBERDYgfSwKQEAgLTg5LDggKzkwLDcgQEAKIHsgMHgwRTM0LCAweDBFM0EgfSwKIHsgMHgwRTQ3LCAweDBFNEUgfSwKIHsgMHgwRUIxLCAweDBFQjEgfSwKLXsgMHgwRUI0LCAweDBFQjkgfSwKLXsgMHgwRUJCLCAweDBFQkMgfSwKK3sgMHgwRUI0LCAweDBFQkMgfSwKIHsgMHgwRUM4LCAweDBFQ0QgfSwKIHsgMHgwRjE4LCAweDBGMTkgfSwKIHsgMHgwRjM1LCAweDBGMzUgfSwKQEAgLTE0MCw3ICsxNDAsNyBAQAogeyAweDFBNjUsIDB4MUE2QyB9LAogeyAweDFBNzMsIDB4MUE3QyB9LAogeyAweDFBN0YsIDB4MUE3RiB9LAoteyAweDFBQjAsIDB4MUFCRSB9LAoreyAweDFBQjAsIDB4MUFDMCB9LAogeyAweDFCMDAsIDB4MUIwMyB9LAogeyAweDFCMzQsIDB4MUIzNCB9LAogeyAweDFCMzYsIDB4MUIzQSB9LApAQCAtMTgzLDYgKzE4Myw3IEBACiB7IDB4QTgwNiwgMHhBODA2IH0sCiB7IDB4QTgwQiwgMHhBODBCIH0sCiB7IDB4QTgyNSwgMHhBODI2IH0sCit7IDB4QTgyQywgMHhBODJDIH0sCiB7IDB4QThDNCwgMHhBOEM1IH0sCiB7IDB4QThFMCwgMHhBOEYxIH0sCiB7IDB4QThGRiwgMHhBOEZGIH0sCkBAIC0xOTEsNyArMTkyLDcgQEAKIHsgMHhBOTgwLCAweEE5ODIgfSwKIHsgMHhBOUIzLCAweEE5QjMgfSwKIHsgMHhBOUI2LCAweEE5QjkgfSwKLXsgMHhBOUJDLCAweEE5QkMgfSwKK3sgMHhBOUJDLCAweEE5QkQgfSwKIHsgMHhBOUU1LCAweEE5RTUgfSwKIHsgMHhBQTI5LCAweEFBMkUgfSwKIHsgMHhBQTMxLCAweEFBMzIgfSwKQEAgLTIyNCw2ICsyMjUsNyBAQAogeyAweDEwQTNGLCAweDEwQTNGIH0sCiB7IDB4MTBBRTUsIDB4MTBBRTYgfSwKIHsgMHgxMEQyNCwgMHgxMEQyNyB9LAoreyAweDEwRUFCLCAweDEwRUFDIH0sCiB7IDB4MTBGNDYsIDB4MTBGNTAgfSwKIHsgMHgxMTAwMSwgMHgxMTAwMSB9LAogeyAweDExMDM4LCAweDExMDQ2IH0sCkBAIC0yMzksNiArMjQxLDcgQEAKIHsgMHgxMTE4MCwgMHgxMTE4MSB9LAogeyAweDExMUI2LCAweDExMUJFIH0sCiB7IDB4MTExQzksIDB4MTExQ0MgfSwKK3sgMHgxMTFDRiwgMHgxMTFDRiB9LAogeyAweDExMjJGLCAweDExMjMxIH0sCiB7IDB4MTEyMzQsIDB4MTEyMzQgfSwKIHsgMHgxMTIzNiwgMHgxMTIzNyB9LApAQCAtMjc0LDYgKzI3NywxMiBAQAogeyAweDExNzI3LCAweDExNzJCIH0sCiB7IDB4MTE4MkYsIDB4MTE4MzcgfSwKIHsgMHgxMTgzOSwgMHgxMTgzQSB9LAoreyAweDExOTNCLCAweDExOTNDIH0sCit7IDB4MTE5M0UsIDB4MTE5M0UgfSwKK3sgMHgxMTk0MywgMHgxMTk0MyB9LAoreyAweDExOUQ0LCAweDExOUQ3IH0sCit7IDB4MTE5REEsIDB4MTE5REIgfSwKK3sgMHgxMTlFMCwgMHgxMTlFMCB9LAogeyAweDExQTAxLCAweDExQTBBIH0sCiB7IDB4MTFBMzMsIDB4MTFBMzggfSwKIHsgMHgxMUEzQiwgMHgxMUEzRSB9LApAQCAtMjk4LDkgKzMwNywxMiBAQAogeyAweDExRDk1LCAweDExRDk1IH0sCiB7IDB4MTFEOTcsIDB4MTFEOTcgfSwKIHsgMHgxMUVGMywgMHgxMUVGNCB9LAoreyAweDEzNDMwLCAweDEzNDM4IH0sCiB7IDB4MTZBRjAsIDB4MTZBRjQgfSwKIHsgMHgxNkIzMCwgMHgxNkIzNiB9LAoreyAweDE2RjRGLCAweDE2RjRGIH0sCiB7IDB4MTZGOEYsIDB4MTZGOTIgfSwKK3sgMHgxNkZFNCwgMHgxNkZFNCB9LAogeyAweDFCQzlELCAweDFCQzlFIH0sCiB7IDB4MUJDQTAsIDB4MUJDQTMgfSwKIHsgMHgxRDE2NywgMHgxRDE2OSB9LApAQCAtMzE5LDYgKzMzMSw4IEBACiB7IDB4MUUwMUIsIDB4MUUwMjEgfSwKIHsgMHgxRTAyMywgMHgxRTAyNCB9LAogeyAweDFFMDI2LCAweDFFMDJBIH0sCit7IDB4MUUxMzAsIDB4MUUxMzYgfSwKK3sgMHgxRTJFQywgMHgxRTJFRiB9LAogeyAweDFFOEQwLCAweDFFOEQ2IH0sCiB7IDB4MUU5NDQsIDB4MUU5NEEgfSwKIHsgMHhFMDAwMSwgMHhFMDAwMSB9LApAQCAtMzcwLDEyICszODQsMTAgQEAKIHsgMHgzMDk5LCAweDMwRkYgfSwKIHsgMHgzMTA1LCAweDMxMkYgfSwKIHsgMHgzMTMxLCAweDMxOEUgfSwKLXsgMHgzMTkwLCAweDMxQkEgfSwKLXsgMHgzMUMwLCAweDMxRTMgfSwKK3sgMHgzMTkwLCAweDMxRTMgfSwKIHsgMHgzMUYwLCAweDMyMUUgfSwKIHsgMHgzMjIwLCAweDMyNDcgfSwKLXsgMHgzMjUwLCAweDMyRkUgfSwKLXsgMHgzMzAwLCAweDREQkYgfSwKK3sgMHgzMjUwLCAweDREQkYgfSwKIHsgMHg0RTAwLCAweEE0OEMgfSwKIHsgMHhBNDkwLCAweEE0QzYgfSwKIHsgMHhBOTYwLCAweEE5N0MgfSwKQEAgLTM4NywxMCArMzk5LDE0IEBACiB7IDB4RkU2OCwgMHhGRTZCIH0sCiB7IDB4RkYwMSwgMHhGRjYwIH0sCiB7IDB4RkZFMCwgMHhGRkU2IH0sCi17IDB4MTZGRTAsIDB4MTZGRTEgfSwKLXsgMHgxNzAwMCwgMHgxODdGMSB9LAoteyAweDE4ODAwLCAweDE4QUYyIH0sCit7IDB4MTZGRTAsIDB4MTZGRTQgfSwKK3sgMHgxNkZGMCwgMHgxNkZGMSB9LAoreyAweDE3MDAwLCAweDE4N0Y3IH0sCit7IDB4MTg4MDAsIDB4MThDRDUgfSwKK3sgMHgxOEQwMCwgMHgxOEQwOCB9LAogeyAweDFCMDAwLCAweDFCMTFFIH0sCit7IDB4MUIxNTAsIDB4MUIxNTIgfSwKK3sgMHgxQjE2NCwgMHgxQjE2NyB9LAogeyAweDFCMTcwLCAweDFCMkZCIH0sCiB7IDB4MUYwMDQsIDB4MUYwMDQgfSwKIHsgMHgxRjBDRiwgMHgxRjBDRiB9LApAQCAtNDIyLDE2ICs0MzgsMjIgQEAKIHsgMHgxRjY4MCwgMHgxRjZDNSB9LAogeyAweDFGNkNDLCAweDFGNkNDIH0sCiB7IDB4MUY2RDAsIDB4MUY2RDIgfSwKK3sgMHgxRjZENSwgMHgxRjZENyB9LAogeyAweDFGNkVCLCAweDFGNkVDIH0sCi17IDB4MUY2RjQsIDB4MUY2RjkgfSwKLXsgMHgxRjkxMCwgMHgxRjkzRSB9LAoteyAweDFGOTQwLCAweDFGOTcwIH0sCi17IDB4MUY5NzMsIDB4MUY5NzYgfSwKLXsgMHgxRjk3QSwgMHgxRjk3QSB9LAoteyAweDFGOTdDLCAweDFGOUEyIH0sCi17IDB4MUY5QjAsIDB4MUY5QjkgfSwKLXsgMHgxRjlDMCwgMHgxRjlDMiB9LAoteyAweDFGOUQwLCAweDFGOUZGIH0sCit7IDB4MUY2RjQsIDB4MUY2RkMgfSwKK3sgMHgxRjdFMCwgMHgxRjdFQiB9LAoreyAweDFGOTBDLCAweDFGOTNBIH0sCit7IDB4MUY5M0MsIDB4MUY5NDUgfSwKK3sgMHgxRjk0NywgMHgxRjk3OCB9LAoreyAweDFGOTdBLCAweDFGOUNCIH0sCit7IDB4MUY5Q0QsIDB4MUY5RkYgfSwKK3sgMHgxRkE3MCwgMHgxRkE3NCB9LAoreyAweDFGQTc4LCAweDFGQTdBIH0sCit7IDB4MUZBODAsIDB4MUZBODYgfSwKK3sgMHgxRkE5MCwgMHgxRkFBOCB9LAoreyAweDFGQUIwLCAweDFGQUI2IH0sCit7IDB4MUZBQzAsIDB4MUZBQzIgfSwKK3sgMHgxRkFEMCwgMHgxRkFENiB9LAogeyAweDIwMDAwLCAweDJGRkZEIH0sCiB7IDB4MzAwMDAsIDB4M0ZGRkQgfQogfTsKZGlmZiAtLWdpdCBhL3VucGFjay10cmVlcy5jIGIvdW5wYWNrLXRyZWVzLmMKaW5kZXggNTQ1ZDU2Ni4uMWVjZGFiMyAxMDA2NDQKLS0tIGEvdW5wYWNrLXRyZWVzLmMKKysrIGIvdW5wYWNrLXRyZWVzLmMKQEAgLTEsNCArMSwzIEBACi0jZGVmaW5lIE5PX1RIRV9JTkRFWF9DT01QQVRJQklMSVRZX01BQ1JPUwogI2luY2x1ZGUgImNhY2hlLmgiCiAjaW5jbHVkZSAiYXJndi1hcnJheS5oIgogI2luY2x1ZGUgInJlcG9zaXRvcnkuaCIKQEAgLTEyLDEyICsxMSwxMSBAQAogI2luY2x1ZGUgInJlZnMuaCIKICNpbmNsdWRlICJhdHRyLmgiCiAjaW5jbHVkZSAic3BsaXQtaW5kZXguaCIKLSNpbmNsdWRlICJkaXIuaCIKICNpbmNsdWRlICJzdWJtb2R1bGUuaCIKICNpbmNsdWRlICJzdWJtb2R1bGUtY29uZmlnLmgiCiAjaW5jbHVkZSAiZnNtb25pdG9yLmgiCiAjaW5jbHVkZSAib2JqZWN0LXN0b3JlLmgiCi0jaW5jbHVkZSAiZmV0Y2gtb2JqZWN0LmgiCisjaW5jbHVkZSAicHJvbWlzb3ItcmVtb3RlLmgiCiAKIC8qCiAgKiBFcnJvciBtZXNzYWdlcyBleHBlY3RlZCBieSBzY3JpcHRzIG91dCBvZiBwbHVtYmluZyBjb21tYW5kcyBzdWNoIGFzCkBAIC0yMjAsNiArMjE4LDkgQEAKIAkJCSAgICAgZW51bSB1bnBhY2tfdHJlZXNfZXJyb3JfdHlwZXMgZSwKIAkJCSAgICAgY29uc3QgY2hhciAqcGF0aCkKIHsKKwlpZiAoby0+cXVpZXQpCisJCXJldHVybiAtMTsKKwogCWlmICghby0+c2hvd19hbGxfZXJyb3JzKQogCQlyZXR1cm4gZXJyb3IoRVJST1JNU0cobywgZSksIHN1cGVyX3ByZWZpeGVkKHBhdGgpKTsKIApAQCAtMjY5LDE1ICsyNzAsMTQgQEAKIAkJZmxhZ3MgfD0gU1VCTU9EVUxFX01PVkVfSEVBRF9GT1JDRTsKIAogCWlmIChzdWJtb2R1bGVfbW92ZV9oZWFkKGNlLT5uYW1lLCBvbGRfaWQsIG5ld19pZCwgZmxhZ3MpKQotCQlyZXR1cm4gby0+Z2VudGx5ID8gLTEgOgotCQkJCSAgIGFkZF9yZWplY3RlZF9wYXRoKG8sIEVSUk9SX1dPVUxEX0xPU0VfU1VCTU9EVUxFLCBjZS0+bmFtZSk7CisJCXJldHVybiBhZGRfcmVqZWN0ZWRfcGF0aChvLCBFUlJPUl9XT1VMRF9MT1NFX1NVQk1PRFVMRSwgY2UtPm5hbWUpOwogCXJldHVybiAwOwogfQogCiAvKgotICogUHJlZm9ybSB0aGUgbG9hZGluZyBvZiB0aGUgcmVwb3NpdG9yeSdzIGdpdG1vZHVsZXMgZmlsZS4gIFRoaXMgZnVuY3Rpb24gaXMKKyAqIFBlcmZvcm0gdGhlIGxvYWRpbmcgb2YgdGhlIHJlcG9zaXRvcnkncyBnaXRtb2R1bGVzIGZpbGUuICBUaGlzIGZ1bmN0aW9uIGlzCiAgKiB1c2VkIGJ5ICdjaGVja191cGRhdGUoKScgdG8gcGVyZm9ybSBsb2FkaW5nIG9mIHRoZSBnaXRtb2R1bGVzIGZpbGUgaW4gdHdvCi0gKiBkaWZmZXJudCBzaXR1YXRpb25zOgorICogZGlmZmVyZW50IHNpdHVhdGlvbnM6CiAgKiAoMSkgYmVmb3JlIHJlbW92aW5nIGVudHJpZXMgZnJvbSB0aGUgd29ya2luZyB0cmVlIGlmIHRoZSBnaXRtb2R1bGVzIGZpbGUgaGFzCiAgKiAgICAgYmVlbiBtYXJrZWQgZm9yIHJlbW92YWwuICBUaGlzIHNpdHVhdGlvbiBpcyBzcGVjaWZpZWQgYnkgJ3N0YXRlJyA9PSBOVUxMLgogICogKDIpIGJlZm9yZSBjaGVja2luZyBvdXQgZW50cmllcyB0byB0aGUgd29ya2luZyB0cmVlIGlmIHRoZSBnaXRtb2R1bGVzIGZpbGUKQEAgLTI5MSwzNCArMjkxLDE1IEBACiAJaWYgKHBvcyA+PSAwKSB7CiAJCXN0cnVjdCBjYWNoZV9lbnRyeSAqY2UgPSBpbmRleC0+Y2FjaGVbcG9zXTsKIAkJaWYgKCFzdGF0ZSAmJiBjZS0+Y2VfZmxhZ3MgJiBDRV9XVF9SRU1PVkUpIHsKLQkJCXJlcG9fcmVhZF9naXRtb2R1bGVzKHRoZV9yZXBvc2l0b3J5KTsKKwkJCXJlcG9fcmVhZF9naXRtb2R1bGVzKHRoZV9yZXBvc2l0b3J5LCAwKTsKIAkJfSBlbHNlIGlmIChzdGF0ZSAmJiAoY2UtPmNlX2ZsYWdzICYgQ0VfVVBEQVRFKSkgewogCQkJc3VibW9kdWxlX2ZyZWUodGhlX3JlcG9zaXRvcnkpOwotCQkJY2hlY2tvdXRfZW50cnkoY2UsIHN0YXRlLCBOVUxMKTsKLQkJCXJlcG9fcmVhZF9naXRtb2R1bGVzKHRoZV9yZXBvc2l0b3J5KTsKKwkJCWNoZWNrb3V0X2VudHJ5KGNlLCBzdGF0ZSwgTlVMTCwgTlVMTCk7CisJCQlyZXBvX3JlYWRfZ2l0bW9kdWxlcyh0aGVfcmVwb3NpdG9yeSwgMCk7CiAJCX0KIAl9CiB9CiAKLS8qCi0gKiBVbmxpbmsgdGhlIGxhc3QgY29tcG9uZW50IGFuZCBzY2hlZHVsZSB0aGUgbGVhZGluZyBkaXJlY3RvcmllcyBmb3IKLSAqIHJlbW92YWwsIHN1Y2ggdGhhdCBlbXB0eSBkaXJlY3RvcmllcyBnZXQgcmVtb3ZlZC4KLSAqLwotc3RhdGljIHZvaWQgdW5saW5rX2VudHJ5KGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UpCi17Ci0JY29uc3Qgc3RydWN0IHN1Ym1vZHVsZSAqc3ViID0gc3VibW9kdWxlX2Zyb21fY2UoY2UpOwotCWlmIChzdWIpIHsKLQkJLyogc3RhdGUuZm9yY2UgaXMgc2V0IGF0IHRoZSBjYWxsZXIuICovCi0JCXN1Ym1vZHVsZV9tb3ZlX2hlYWQoY2UtPm5hbWUsICJIRUFEIiwgTlVMTCwKLQkJCQkgICAgU1VCTU9EVUxFX01PVkVfSEVBRF9GT1JDRSk7Ci0JfQotCWlmICghY2hlY2tfbGVhZGluZ19wYXRoKGNlLT5uYW1lLCBjZV9uYW1lbGVuKGNlKSkpCi0JCXJldHVybjsKLQlpZiAocmVtb3ZlX29yX3dhcm4oY2UtPmNlX21vZGUsIGNlLT5uYW1lKSkKLQkJcmV0dXJuOwotCXNjaGVkdWxlX2Rpcl9mb3JfcmVtb3ZhbChjZS0+bmFtZSwgY2VfbmFtZWxlbihjZSkpOwotfQotCiBzdGF0aWMgc3RydWN0IHByb2dyZXNzICpnZXRfcHJvZ3Jlc3Moc3RydWN0IHVucGFja190cmVlc19vcHRpb25zICpvKQogewogCXVuc2lnbmVkIGNudCA9IDAsIHRvdGFsID0gMDsKQEAgLTMzMyw3ICszMTQsNyBAQAogCQkJdG90YWwrKzsKIAl9CiAKLQlyZXR1cm4gc3RhcnRfZGVsYXllZF9wcm9ncmVzcyhfKCJDaGVja2luZyBvdXQgZmlsZXMiKSwgdG90YWwpOworCXJldHVybiBzdGFydF9kZWxheWVkX3Byb2dyZXNzKF8oIlVwZGF0aW5nIGZpbGVzIiksIHRvdGFsKTsKIH0KIAogc3RhdGljIHZvaWQgc2V0dXBfY29sbGlkZWRfY2hlY2tvdXRfZGV0ZWN0aW9uKHN0cnVjdCBjaGVja291dCAqc3RhdGUsCkBAIC0zOTEsMTUgKzM3MiwyMCBAQAogCXN0YXRlLnJlZnJlc2hfY2FjaGUgPSAxOwogCXN0YXRlLmlzdGF0ZSA9IGluZGV4OwogCisJaWYgKCFvLT51cGRhdGUgfHwgby0+ZHJ5X3J1bikgeworCQlyZW1vdmVfbWFya2VkX2NhY2hlX2VudHJpZXMoaW5kZXgsIDApOworCQl0cmFjZV9wZXJmb3JtYW5jZV9sZWF2ZSgiY2hlY2tfdXBkYXRlcyIpOworCQlyZXR1cm4gMDsKKwl9CisKIAlpZiAoby0+Y2xvbmUpCiAJCXNldHVwX2NvbGxpZGVkX2NoZWNrb3V0X2RldGVjdGlvbigmc3RhdGUsIGluZGV4KTsKIAogCXByb2dyZXNzID0gZ2V0X3Byb2dyZXNzKG8pOwogCi0JaWYgKG8tPnVwZGF0ZSkKLQkJZ2l0X2F0dHJfc2V0X2RpcmVjdGlvbihHSVRfQVRUUl9DSEVDS09VVCk7CisJZ2l0X2F0dHJfc2V0X2RpcmVjdGlvbihHSVRfQVRUUl9DSEVDS09VVCk7CiAKLQlpZiAoc2hvdWxkX3VwZGF0ZV9zdWJtb2R1bGVzKCkgJiYgby0+dXBkYXRlICYmICFvLT5kcnlfcnVuKQorCWlmIChzaG91bGRfdXBkYXRlX3N1Ym1vZHVsZXMoKSkKIAkJbG9hZF9naXRtb2R1bGVzX2ZpbGUoaW5kZXgsIE5VTEwpOwogCiAJZm9yIChpID0gMDsgaSA8IGluZGV4LT5jYWNoZV9ucjsgaSsrKSB7CkBAIC00MDcsMzcgKzM5MywzOCBAQAogCiAJCWlmIChjZS0+Y2VfZmxhZ3MgJiBDRV9XVF9SRU1PVkUpIHsKIAkJCWRpc3BsYXlfcHJvZ3Jlc3MocHJvZ3Jlc3MsICsrY250KTsKLQkJCWlmIChvLT51cGRhdGUgJiYgIW8tPmRyeV9ydW4pCi0JCQkJdW5saW5rX2VudHJ5KGNlKTsKKwkJCXVubGlua19lbnRyeShjZSk7CiAJCX0KIAl9Ci0JcmVtb3ZlX21hcmtlZF9jYWNoZV9lbnRyaWVzKGluZGV4KTsKKworCXJlbW92ZV9tYXJrZWRfY2FjaGVfZW50cmllcyhpbmRleCwgMCk7CiAJcmVtb3ZlX3NjaGVkdWxlZF9kaXJzKCk7CiAKLQlpZiAoc2hvdWxkX3VwZGF0ZV9zdWJtb2R1bGVzKCkgJiYgby0+dXBkYXRlICYmICFvLT5kcnlfcnVuKQorCWlmIChzaG91bGRfdXBkYXRlX3N1Ym1vZHVsZXMoKSkKIAkJbG9hZF9naXRtb2R1bGVzX2ZpbGUoaW5kZXgsICZzdGF0ZSk7CiAKIAllbmFibGVfZGVsYXllZF9jaGVja291dCgmc3RhdGUpOwotCWlmIChyZXBvc2l0b3J5X2Zvcm1hdF9wYXJ0aWFsX2Nsb25lICYmIG8tPnVwZGF0ZSAmJiAhby0+ZHJ5X3J1bikgeworCWlmIChoYXNfcHJvbWlzb3JfcmVtb3RlKCkpIHsKIAkJLyoKIAkJICogUHJlZmV0Y2ggdGhlIG9iamVjdHMgdGhhdCBhcmUgdG8gYmUgY2hlY2tlZCBvdXQgaW4gdGhlIGxvb3AKIAkJICogYmVsb3cuCiAJCSAqLwogCQlzdHJ1Y3Qgb2lkX2FycmF5IHRvX2ZldGNoID0gT0lEX0FSUkFZX0lOSVQ7Ci0JCWludCBmZXRjaF9pZl9taXNzaW5nX3N0b3JlID0gZmV0Y2hfaWZfbWlzc2luZzsKLQkJZmV0Y2hfaWZfbWlzc2luZyA9IDA7CiAJCWZvciAoaSA9IDA7IGkgPCBpbmRleC0+Y2FjaGVfbnI7IGkrKykgewogCQkJc3RydWN0IGNhY2hlX2VudHJ5ICpjZSA9IGluZGV4LT5jYWNoZVtpXTsKLQkJCWlmICgoY2UtPmNlX2ZsYWdzICYgQ0VfVVBEQVRFKSAmJgotCQkJICAgICFTX0lTR0lUTElOSyhjZS0+Y2VfbW9kZSkpIHsKLQkJCQlpZiAoIWhhc19vYmplY3RfZmlsZSgmY2UtPm9pZCkpCi0JCQkJCW9pZF9hcnJheV9hcHBlbmQoJnRvX2ZldGNoLCAmY2UtPm9pZCk7Ci0JCQl9CisKKwkJCWlmICghKGNlLT5jZV9mbGFncyAmIENFX1VQREFURSkgfHwKKwkJCSAgICBTX0lTR0lUTElOSyhjZS0+Y2VfbW9kZSkpCisJCQkJY29udGludWU7CisJCQlpZiAoIW9pZF9vYmplY3RfaW5mb19leHRlbmRlZCh0aGVfcmVwb3NpdG9yeSwgJmNlLT5vaWQsCisJCQkJCQkgICAgICBOVUxMLAorCQkJCQkJICAgICAgT0JKRUNUX0lORk9fRk9SX1BSRUZFVENIKSkKKwkJCQljb250aW51ZTsKKwkJCW9pZF9hcnJheV9hcHBlbmQoJnRvX2ZldGNoLCAmY2UtPm9pZCk7CiAJCX0KIAkJaWYgKHRvX2ZldGNoLm5yKQotCQkJZmV0Y2hfb2JqZWN0cyhyZXBvc2l0b3J5X2Zvcm1hdF9wYXJ0aWFsX2Nsb25lLAotCQkJCSAgICAgIHRvX2ZldGNoLm9pZCwgdG9fZmV0Y2gubnIpOwotCQlmZXRjaF9pZl9taXNzaW5nID0gZmV0Y2hfaWZfbWlzc2luZ19zdG9yZTsKKwkJCXByb21pc29yX3JlbW90ZV9nZXRfZGlyZWN0KHRoZV9yZXBvc2l0b3J5LAorCQkJCQkJICAgdG9fZmV0Y2gub2lkLCB0b19mZXRjaC5ucik7CiAJCW9pZF9hcnJheV9jbGVhcigmdG9fZmV0Y2gpOwogCX0KIAlmb3IgKGkgPSAwOyBpIDwgaW5kZXgtPmNhY2hlX25yOyBpKyspIHsKQEAgLTQ0OSwxNSArNDM2LDEyIEBACiAJCQkJICAgIGNlLT5uYW1lKTsKIAkJCWRpc3BsYXlfcHJvZ3Jlc3MocHJvZ3Jlc3MsICsrY250KTsKIAkJCWNlLT5jZV9mbGFncyAmPSB+Q0VfVVBEQVRFOwotCQkJaWYgKG8tPnVwZGF0ZSAmJiAhby0+ZHJ5X3J1bikgewotCQkJCWVycnMgfD0gY2hlY2tvdXRfZW50cnkoY2UsICZzdGF0ZSwgTlVMTCk7Ci0JCQl9CisJCQllcnJzIHw9IGNoZWNrb3V0X2VudHJ5KGNlLCAmc3RhdGUsIE5VTEwsIE5VTEwpOwogCQl9CiAJfQogCXN0b3BfcHJvZ3Jlc3MoJnByb2dyZXNzKTsKLQllcnJzIHw9IGZpbmlzaF9kZWxheWVkX2NoZWNrb3V0KCZzdGF0ZSk7Ci0JaWYgKG8tPnVwZGF0ZSkKLQkJZ2l0X2F0dHJfc2V0X2RpcmVjdGlvbihHSVRfQVRUUl9DSEVDS0lOKTsKKwllcnJzIHw9IGZpbmlzaF9kZWxheWVkX2NoZWNrb3V0KCZzdGF0ZSwgTlVMTCk7CisJZ2l0X2F0dHJfc2V0X2RpcmVjdGlvbihHSVRfQVRUUl9DSEVDS0lOKTsKIAogCWlmIChvLT5jbG9uZSkKIAkJcmVwb3J0X2NvbGxpZGVkX2NoZWNrb3V0KGluZGV4KTsKQEAgLTY0OSw3ICs2MzMsNyBAQAogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgZmluZF9jYWNoZV9wb3Moc3RydWN0IHRyYXZlcnNlX2luZm8gKiwgY29uc3Qgc3RydWN0IG5hbWVfZW50cnkgKik7CitzdGF0aWMgaW50IGZpbmRfY2FjaGVfcG9zKHN0cnVjdCB0cmF2ZXJzZV9pbmZvICosIGNvbnN0IGNoYXIgKnAsIHNpemVfdCBsZW4pOwogCiBzdGF0aWMgdm9pZCByZXN0b3JlX2NhY2hlX2JvdHRvbShzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbywgaW50IGJvdHRvbSkKIHsKQEAgLTY2OCw3ICs2NTIsNyBAQAogCWlmIChvLT5kaWZmX2luZGV4X2NhY2hlZCkKIAkJcmV0dXJuIDA7CiAJcmV0ID0gby0+Y2FjaGVfYm90dG9tOwotCXBvcyA9IGZpbmRfY2FjaGVfcG9zKGluZm8tPnByZXYsICZpbmZvLT5uYW1lKTsKKwlwb3MgPSBmaW5kX2NhY2hlX3BvcyhpbmZvLT5wcmV2LCBpbmZvLT5uYW1lLCBpbmZvLT5uYW1lbGVuKTsKIAogCWlmIChwb3MgPCAtMSkKIAkJby0+Y2FjaGVfYm90dG9tID0gLTIgLSBwb3M7CkBAIC02NzksNyArNjYzLDcgQEAKIAogc3RhdGljIGlubGluZSBpbnQgYXJlX3NhbWVfb2lkKHN0cnVjdCBuYW1lX2VudHJ5ICpuYW1lX2osIHN0cnVjdCBuYW1lX2VudHJ5ICpuYW1lX2spCiB7Ci0JcmV0dXJuIG5hbWVfai0+b2lkICYmIG5hbWVfay0+b2lkICYmIG9pZGVxKG5hbWVfai0+b2lkLCBuYW1lX2stPm9pZCk7CisJcmV0dXJuICFpc19udWxsX29pZCgmbmFtZV9qLT5vaWQpICYmICFpc19udWxsX29pZCgmbmFtZV9rLT5vaWQpICYmIG9pZGVxKCZuYW1lX2otPm9pZCwgJm5hbWVfay0+b2lkKTsKIH0KIAogc3RhdGljIGludCBhbGxfdHJlZXNfc2FtZV9hc19jYWNoZV90cmVlKGludCBuLCB1bnNpZ25lZCBsb25nIGRpcm1hc2ssCkBAIC03MDMsMjEgKzY4NywyMSBAQAogCQkJCSAgICAgIHN0cnVjdCB0cmF2ZXJzZV9pbmZvICppbmZvKQogewogCXN0cnVjdCB1bnBhY2tfdHJlZXNfb3B0aW9ucyAqbyA9IGluZm8tPmRhdGE7Ci0JaW50IGxlbiA9IHRyYXZlcnNlX3BhdGhfbGVuKGluZm8sIG5hbWVzKTsKLQljaGFyICpuYW1lID0geG1hbGxvYyhsZW4gKyAxIC8qIHNsYXNoICovICsgMSAvKiBOVUwgKi8pOworCXN0cnVjdCBzdHJidWYgbmFtZSA9IFNUUkJVRl9JTklUOwogCWludCBwb3M7CiAKLQltYWtlX3RyYXZlcnNlX3BhdGgobmFtZSwgaW5mbywgbmFtZXMpOwotCW5hbWVbbGVuKytdID0gJy8nOwotCW5hbWVbbGVuXSA9ICdcMCc7Ci0JcG9zID0gaW5kZXhfbmFtZV9wb3Moby0+c3JjX2luZGV4LCBuYW1lLCBsZW4pOworCXN0cmJ1Zl9tYWtlX3RyYXZlcnNlX3BhdGgoJm5hbWUsIGluZm8sIG5hbWVzLT5wYXRoLCBuYW1lcy0+cGF0aGxlbik7CisJc3RyYnVmX2FkZGNoKCZuYW1lLCAnLycpOworCXBvcyA9IGluZGV4X25hbWVfcG9zKG8tPnNyY19pbmRleCwgbmFtZS5idWYsIG5hbWUubGVuKTsKIAlpZiAocG9zID49IDApCiAJCUJVRygiVGhpcyBpcyBhIGRpcmVjdG9yeSBhbmQgc2hvdWxkIG5vdCBleGlzdCBpbiBpbmRleCIpOwogCXBvcyA9IC1wb3MgLSAxOwotCWlmICghc3RhcnRzX3dpdGgoby0+c3JjX2luZGV4LT5jYWNoZVtwb3NdLT5uYW1lLCBuYW1lKSB8fAotCSAgICAocG9zID4gMCAmJiBzdGFydHNfd2l0aChvLT5zcmNfaW5kZXgtPmNhY2hlW3Bvcy0xXS0+bmFtZSwgbmFtZSkpKQotCQlCVUcoInBvcyBtdXN0IHBvaW50IGF0IHRoZSBmaXJzdCBlbnRyeSBpbiB0aGlzIGRpcmVjdG9yeSIpOwotCWZyZWUobmFtZSk7CisJaWYgKHBvcyA+PSBvLT5zcmNfaW5kZXgtPmNhY2hlX25yIHx8CisJICAgICFzdGFydHNfd2l0aChvLT5zcmNfaW5kZXgtPmNhY2hlW3Bvc10tPm5hbWUsIG5hbWUuYnVmKSB8fAorCSAgICAocG9zID4gMCAmJiBzdGFydHNfd2l0aChvLT5zcmNfaW5kZXgtPmNhY2hlW3Bvcy0xXS0+bmFtZSwgbmFtZS5idWYpKSkKKwkJQlVHKCJwb3MgJWQgZG9lc24ndCBwb2ludCB0byB0aGUgZmlyc3QgZW50cnkgb2YgJXMgaW4gaW5kZXgiLAorCQkgICAgcG9zLCBuYW1lLmJ1Zik7CisJc3RyYnVmX3JlbGVhc2UoJm5hbWUpOwogCXJldHVybiBwb3M7CiB9CiAKQEAgLTcyNyw3ICs3MTEsNiBAQAogICogaW5zdGVhZCBvZiBPREIgc2luY2Ugd2UgYWxyZWFkeSBrbm93IHdoYXQgdGhlc2UgdHJlZXMgY29udGFpbi4KICAqLwogc3RhdGljIGludCB0cmF2ZXJzZV9ieV9jYWNoZV90cmVlKGludCBwb3MsIGludCBucl9lbnRyaWVzLCBpbnQgbnJfbmFtZXMsCi0JCQkJICBzdHJ1Y3QgbmFtZV9lbnRyeSAqbmFtZXMsCiAJCQkJICBzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbykKIHsKIAlzdHJ1Y3QgY2FjaGVfZW50cnkgKnNyY1tNQVhfVU5QQUNLX1RSRUVTICsgMV0gPSB7IE5VTEwsIH07CkBAIC03OTQsNiArNzc3LDcgQEAKIAkJCQkgICAgc3RydWN0IG5hbWVfZW50cnkgKm5hbWVzLAogCQkJCSAgICBzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbykKIHsKKwlzdHJ1Y3QgdW5wYWNrX3RyZWVzX29wdGlvbnMgKm8gPSBpbmZvLT5kYXRhOwogCWludCBpLCByZXQsIGJvdHRvbTsKIAlpbnQgbnJfYnVmID0gMDsKIAlzdHJ1Y3QgdHJlZV9kZXNjIHRbTUFYX1VOUEFDS19UUkVFU107CkBAIC04MDQsNyArNzg4LDYgQEAKIAogCW5yX2VudHJpZXMgPSBhbGxfdHJlZXNfc2FtZV9hc19jYWNoZV90cmVlKG4sIGRpcm1hc2ssIG5hbWVzLCBpbmZvKTsKIAlpZiAobnJfZW50cmllcyA+IDApIHsKLQkJc3RydWN0IHVucGFja190cmVlc19vcHRpb25zICpvID0gaW5mby0+ZGF0YTsKIAkJaW50IHBvcyA9IGluZGV4X3Bvc19ieV90cmF2ZXJzZV9pbmZvKG5hbWVzLCBpbmZvKTsKIAogCQlpZiAoIW8tPm1lcmdlIHx8IGRmX2NvbmZsaWN0cykKQEAgLTgxNyw3ICs4MDAsNyBAQAogCQkgKiB1bnByb2Nlc3NlZCBlbnRyaWVzIGJlZm9yZSAncG9zJy4KIAkJICovCiAJCWJvdHRvbSA9IG8tPmNhY2hlX2JvdHRvbTsKLQkJcmV0ID0gdHJhdmVyc2VfYnlfY2FjaGVfdHJlZShwb3MsIG5yX2VudHJpZXMsIG4sIG5hbWVzLCBpbmZvKTsKKwkJcmV0ID0gdHJhdmVyc2VfYnlfY2FjaGVfdHJlZShwb3MsIG5yX2VudHJpZXMsIG4sIGluZm8pOwogCQlvLT5jYWNoZV9ib3R0b20gPSBib3R0b207CiAJCXJldHVybiByZXQ7CiAJfQpAQCAtODI5LDggKzgxMiwxMCBAQAogCW5ld2luZm8gPSAqaW5mbzsKIAluZXdpbmZvLnByZXYgPSBpbmZvOwogCW5ld2luZm8ucGF0aHNwZWMgPSBpbmZvLT5wYXRoc3BlYzsKLQluZXdpbmZvLm5hbWUgPSAqcDsKLQluZXdpbmZvLnBhdGhsZW4gKz0gdHJlZV9lbnRyeV9sZW4ocCkgKyAxOworCW5ld2luZm8ubmFtZSA9IHAtPnBhdGg7CisJbmV3aW5mby5uYW1lbGVuID0gcC0+cGF0aGxlbjsKKwluZXdpbmZvLm1vZGUgPSBwLT5tb2RlOworCW5ld2luZm8ucGF0aGxlbiA9IHN0X2FkZDMobmV3aW5mby5wYXRobGVuLCB0cmVlX2VudHJ5X2xlbihwKSwgMSk7CiAJbmV3aW5mby5kZl9jb25mbGljdHMgfD0gZGZfY29uZmxpY3RzOwogCiAJLyoKQEAgLTg1NywxMyArODQyLDEzIEBACiAJCWVsc2UgewogCQkJY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkID0gTlVMTDsKIAkJCWlmIChkaXJtYXNrICYgMSkKLQkJCQlvaWQgPSBuYW1lc1tpXS5vaWQ7Ci0JCQlidWZbbnJfYnVmKytdID0gZmlsbF90cmVlX2Rlc2NyaXB0b3IodCArIGksIG9pZCk7CisJCQkJb2lkID0gJm5hbWVzW2ldLm9pZDsKKwkJCWJ1Zltucl9idWYrK10gPSBmaWxsX3RyZWVfZGVzY3JpcHRvcih0aGVfcmVwb3NpdG9yeSwgdCArIGksIG9pZCk7CiAJCX0KIAl9CiAKIAlib3R0b20gPSBzd2l0Y2hfY2FjaGVfYm90dG9tKCZuZXdpbmZvKTsKLQlyZXQgPSB0cmF2ZXJzZV90cmVlcyhuLCB0LCAmbmV3aW5mbyk7CisJcmV0ID0gdHJhdmVyc2VfdHJlZXMoby0+c3JjX2luZGV4LCBuLCB0LCAmbmV3aW5mbyk7CiAJcmVzdG9yZV9jYWNoZV9ib3R0b20oJm5ld2luZm8sIGJvdHRvbSk7CiAKIAlmb3IgKGkgPSAwOyBpIDwgbnJfYnVmOyBpKyspCkBAIC04ODEsMTQgKzg2NiwxOCBAQAogICogaXRzZWxmIC0gdGhlIGNhbGxlciBuZWVkcyB0byBkbyB0aGUgZmluYWwgY2hlY2sgZm9yIHRoZSBjYWNoZQogICogZW50cnkgaGF2aW5nIG1vcmUgZGF0YSBhdCB0aGUgZW5kIQogICovCi1zdGF0aWMgaW50IGRvX2NvbXBhcmVfZW50cnlfcGllY2V3aXNlKGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UsIGNvbnN0IHN0cnVjdCB0cmF2ZXJzZV9pbmZvICppbmZvLCBjb25zdCBzdHJ1Y3QgbmFtZV9lbnRyeSAqbikKK3N0YXRpYyBpbnQgZG9fY29tcGFyZV9lbnRyeV9waWVjZXdpc2UoY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSwKKwkJCQkgICAgICBjb25zdCBzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbywKKwkJCQkgICAgICBjb25zdCBjaGFyICpuYW1lLCBzaXplX3QgbmFtZWxlbiwKKwkJCQkgICAgICB1bnNpZ25lZCBtb2RlKQogewotCWludCBsZW4sIHBhdGhsZW4sIGNlX2xlbjsKKwlpbnQgcGF0aGxlbiwgY2VfbGVuOwogCWNvbnN0IGNoYXIgKmNlX25hbWU7CiAKIAlpZiAoaW5mby0+cHJldikgewogCQlpbnQgY21wID0gZG9fY29tcGFyZV9lbnRyeV9waWVjZXdpc2UoY2UsIGluZm8tPnByZXYsCi0JCQkJCQkgICAgICZpbmZvLT5uYW1lKTsKKwkJCQkJCSAgICAgaW5mby0+bmFtZSwgaW5mby0+bmFtZWxlbiwKKwkJCQkJCSAgICAgaW5mby0+bW9kZSk7CiAJCWlmIChjbXApCiAJCQlyZXR1cm4gY21wOwogCX0KQEAgLTkwMiwxNSArODkxLDE1IEBACiAJY2VfbGVuIC09IHBhdGhsZW47CiAJY2VfbmFtZSA9IGNlLT5uYW1lICsgcGF0aGxlbjsKIAotCWxlbiA9IHRyZWVfZW50cnlfbGVuKG4pOwotCXJldHVybiBkZl9uYW1lX2NvbXBhcmUoY2VfbmFtZSwgY2VfbGVuLCBTX0lGUkVHLCBuLT5wYXRoLCBsZW4sIG4tPm1vZGUpOworCXJldHVybiBkZl9uYW1lX2NvbXBhcmUoY2VfbmFtZSwgY2VfbGVuLCBTX0lGUkVHLCBuYW1lLCBuYW1lbGVuLCBtb2RlKTsKIH0KIAogc3RhdGljIGludCBkb19jb21wYXJlX2VudHJ5KGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UsCiAJCQkgICAgY29uc3Qgc3RydWN0IHRyYXZlcnNlX2luZm8gKmluZm8sCi0JCQkgICAgY29uc3Qgc3RydWN0IG5hbWVfZW50cnkgKm4pCisJCQkgICAgY29uc3QgY2hhciAqbmFtZSwgc2l6ZV90IG5hbWVsZW4sCisJCQkgICAgdW5zaWduZWQgbW9kZSkKIHsKLQlpbnQgbGVuLCBwYXRobGVuLCBjZV9sZW47CisJaW50IHBhdGhsZW4sIGNlX2xlbjsKIAljb25zdCBjaGFyICpjZV9uYW1lOwogCWludCBjbXA7CiAKQEAgLTkyMCw3ICs5MDksNyBAQAogCSAqIGl0IGlzIHF1aWNrZXIgdG8gdXNlIHRoZSBwcmVjb21wdXRlZCB2ZXJzaW9uLgogCSAqLwogCWlmICghaW5mby0+dHJhdmVyc2VfcGF0aCkKLQkJcmV0dXJuIGRvX2NvbXBhcmVfZW50cnlfcGllY2V3aXNlKGNlLCBpbmZvLCBuKTsKKwkJcmV0dXJuIGRvX2NvbXBhcmVfZW50cnlfcGllY2V3aXNlKGNlLCBpbmZvLCBuYW1lLCBuYW1lbGVuLCBtb2RlKTsKIAogCWNtcCA9IHN0cm5jbXAoY2UtPm5hbWUsIGluZm8tPnRyYXZlcnNlX3BhdGgsIGluZm8tPnBhdGhsZW4pOwogCWlmIChjbXApCkBAIC05MzUsMTMgKzkyNCwxMiBAQAogCWNlX2xlbiAtPSBwYXRobGVuOwogCWNlX25hbWUgPSBjZS0+bmFtZSArIHBhdGhsZW47CiAKLQlsZW4gPSB0cmVlX2VudHJ5X2xlbihuKTsKLQlyZXR1cm4gZGZfbmFtZV9jb21wYXJlKGNlX25hbWUsIGNlX2xlbiwgU19JRlJFRywgbi0+cGF0aCwgbGVuLCBuLT5tb2RlKTsKKwlyZXR1cm4gZGZfbmFtZV9jb21wYXJlKGNlX25hbWUsIGNlX2xlbiwgU19JRlJFRywgbmFtZSwgbmFtZWxlbiwgbW9kZSk7CiB9CiAKIHN0YXRpYyBpbnQgY29tcGFyZV9lbnRyeShjb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlLCBjb25zdCBzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbywgY29uc3Qgc3RydWN0IG5hbWVfZW50cnkgKm4pCiB7Ci0JaW50IGNtcCA9IGRvX2NvbXBhcmVfZW50cnkoY2UsIGluZm8sIG4pOworCWludCBjbXAgPSBkb19jb21wYXJlX2VudHJ5KGNlLCBpbmZvLCBuLT5wYXRoLCBuLT5wYXRobGVuLCBuLT5tb2RlKTsKIAlpZiAoY21wKQogCQlyZXR1cm4gY21wOwogCkBAIC05NDksNyArOTM3LDcgQEAKIAkgKiBFdmVuIGlmIHRoZSBiZWdpbm5pbmcgY29tcGFyZWQgaWRlbnRpY2FsbHksIHRoZSBjZSBzaG91bGQKIAkgKiBjb21wYXJlIGFzIGJpZ2dlciB0aGFuIGEgZGlyZWN0b3J5IGxlYWRpbmcgdXAgdG8gaXQhCiAJICovCi0JcmV0dXJuIGNlX25hbWVsZW4oY2UpID4gdHJhdmVyc2VfcGF0aF9sZW4oaW5mbywgbik7CisJcmV0dXJuIGNlX25hbWVsZW4oY2UpID4gdHJhdmVyc2VfcGF0aF9sZW4oaW5mbywgdHJlZV9lbnRyeV9sZW4obikpOwogfQogCiBzdGF0aWMgaW50IGNlX2luX3RyYXZlcnNlX3BhdGgoY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSwKQEAgLTk1Nyw3ICs5NDUsOCBAQAogewogCWlmICghaW5mby0+cHJldikKIAkJcmV0dXJuIDE7Ci0JaWYgKGRvX2NvbXBhcmVfZW50cnkoY2UsIGluZm8tPnByZXYsICZpbmZvLT5uYW1lKSkKKwlpZiAoZG9fY29tcGFyZV9lbnRyeShjZSwgaW5mby0+cHJldiwKKwkJCSAgICAgaW5mby0+bmFtZSwgaW5mby0+bmFtZWxlbiwgaW5mby0+bW9kZSkpCiAJCXJldHVybiAwOwogCS8qCiAJICogSWYgY2UgKGJsb2IpIGlzIHRoZSBzYW1lIG5hbWUgYXMgdGhlIHBhdGggKHdoaWNoIGlzIGEgdHJlZQpAQCAtOTcyLDcgKzk2MSw3IEBACiAJc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCiAJaW50IGlzX3RyYW5zaWVudCkKIHsKLQlpbnQgbGVuID0gdHJhdmVyc2VfcGF0aF9sZW4oaW5mbywgbik7CisJc2l6ZV90IGxlbiA9IHRyYXZlcnNlX3BhdGhfbGVuKGluZm8sIHRyZWVfZW50cnlfbGVuKG4pKTsKIAlzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlID0KIAkJaXNfdHJhbnNpZW50ID8KIAkJbWFrZV9lbXB0eV90cmFuc2llbnRfY2FjaGVfZW50cnkobGVuKSA6CkBAIC05ODEsOCArOTcwLDkgQEAKIAljZS0+Y2VfbW9kZSA9IGNyZWF0ZV9jZV9tb2RlKG4tPm1vZGUpOwogCWNlLT5jZV9mbGFncyA9IGNyZWF0ZV9jZV9mbGFncyhzdGFnZSk7CiAJY2UtPmNlX25hbWVsZW4gPSBsZW47Ci0Jb2lkY3B5KCZjZS0+b2lkLCBuLT5vaWQpOwotCW1ha2VfdHJhdmVyc2VfcGF0aChjZS0+bmFtZSwgaW5mbywgbik7CisJb2lkY3B5KCZjZS0+b2lkLCAmbi0+b2lkKTsKKwkvKiBsZW4rMSBiZWNhdXNlIHRoZSBjYWNoZV9lbnRyeSBhbGxvY2F0ZXMgc3BhY2UgZm9yIE5VTCAqLworCW1ha2VfdHJhdmVyc2VfcGF0aChjZS0+bmFtZSwgbGVuICsgMSwgaW5mbywgbi0+cGF0aCwgbi0+cGF0aGxlbik7CiAKIAlyZXR1cm4gY2U7CiB9CkBAIC0xMDYwLDcgKzEwNTAsNyBAQAogc3RhdGljIGludCB1bnBhY2tfZmFpbGVkKHN0cnVjdCB1bnBhY2tfdHJlZXNfb3B0aW9ucyAqbywgY29uc3QgY2hhciAqbWVzc2FnZSkKIHsKIAlkaXNjYXJkX2luZGV4KCZvLT5yZXN1bHQpOwotCWlmICghby0+Z2VudGx5ICYmICFvLT5leGl0aW5nX2Vhcmx5KSB7CisJaWYgKCFvLT5xdWlldCAmJiAhby0+ZXhpdGluZ19lYXJseSkgewogCQlpZiAobWVzc2FnZSkKIAkJCXJldHVybiBlcnJvcigiJXMiLCBtZXNzYWdlKTsKIAkJcmV0dXJuIC0xOwpAQCAtMTA3NSwxMyArMTA2NSwxMiBAQAogICogdGhlIGRpcmVjdG9yeS4KICAqLwogc3RhdGljIGludCBmaW5kX2NhY2hlX3BvcyhzdHJ1Y3QgdHJhdmVyc2VfaW5mbyAqaW5mbywKLQkJCSAgY29uc3Qgc3RydWN0IG5hbWVfZW50cnkgKnApCisJCQkgIGNvbnN0IGNoYXIgKnAsIHNpemVfdCBwX2xlbikKIHsKIAlpbnQgcG9zOwogCXN0cnVjdCB1bnBhY2tfdHJlZXNfb3B0aW9ucyAqbyA9IGluZm8tPmRhdGE7CiAJc3RydWN0IGluZGV4X3N0YXRlICppbmRleCA9IG8tPnNyY19pbmRleDsKIAlpbnQgcGZ4bGVuID0gaW5mby0+cGF0aGxlbjsKLQlpbnQgcF9sZW4gPSB0cmVlX2VudHJ5X2xlbihwKTsKIAogCWZvciAocG9zID0gby0+Y2FjaGVfYm90dG9tOyBwb3MgPCBpbmRleC0+Y2FjaGVfbnI7IHBvcysrKSB7CiAJCWNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UgPSBpbmRleC0+Y2FjaGVbcG9zXTsKQEAgLTExMTcsNyArMTEwNiw3IEBACiAJCQljZV9sZW4gPSBjZV9zbGFzaCAtIGNlX25hbWU7CiAJCWVsc2UKIAkJCWNlX2xlbiA9IGNlX25hbWVsZW4oY2UpIC0gcGZ4bGVuOwotCQljbXAgPSBuYW1lX2NvbXBhcmUocC0+cGF0aCwgcF9sZW4sIGNlX25hbWUsIGNlX2xlbik7CisJCWNtcCA9IG5hbWVfY29tcGFyZShwLCBwX2xlbiwgY2VfbmFtZSwgY2VfbGVuKTsKIAkJLyoKIAkJICogRXhhY3QgbWF0Y2g7IGlmIHdlIGhhdmUgYSBkaXJlY3Rvcnkgd2UgbmVlZCB0bwogCQkgKiBkZWxheSByZXR1cm5pbmcgaXQuCkBAIC0xMTMyLDcgKzExMjEsNyBAQAogCQkgKiBFLmcuICBjZV9uYW1lID09ICJ0LWkiLCBhbmQgcC0+cGF0aCA9PSAidCI7IHdlIG1heQogCQkgKiBoYXZlICJ0L2EiIGluIHRoZSBpbmRleC4KIAkJICovCi0JCWlmIChwX2xlbiA8IGNlX2xlbiAmJiAhbWVtY21wKGNlX25hbWUsIHAtPnBhdGgsIHBfbGVuKSAmJgorCQlpZiAocF9sZW4gPCBjZV9sZW4gJiYgIW1lbWNtcChjZV9uYW1lLCBwLCBwX2xlbikgJiYKIAkJICAgIGNlX25hbWVbcF9sZW5dIDwgJy8nKQogCQkJY29udGludWU7IC8qIGtlZXAgbG9va2luZyAqLwogCQlicmVhazsKQEAgLTExNDMsNyArMTEzMiw3IEBACiBzdGF0aWMgc3RydWN0IGNhY2hlX2VudHJ5ICpmaW5kX2NhY2hlX2VudHJ5KHN0cnVjdCB0cmF2ZXJzZV9pbmZvICppbmZvLAogCQkJCQkgICAgY29uc3Qgc3RydWN0IG5hbWVfZW50cnkgKnApCiB7Ci0JaW50IHBvcyA9IGZpbmRfY2FjaGVfcG9zKGluZm8sIHApOworCWludCBwb3MgPSBmaW5kX2NhY2hlX3BvcyhpbmZvLCBwLT5wYXRoLCBwLT5wYXRobGVuKTsKIAlzdHJ1Y3QgdW5wYWNrX3RyZWVzX29wdGlvbnMgKm8gPSBpbmZvLT5kYXRhOwogCiAJaWYgKDAgPD0gcG9zKQpAQCAtMTE1NiwxMCArMTE0NSwxMCBAQAogewogCWlmIChpbmZvLT5wcmV2KSB7CiAJCWRlYnVnX3BhdGgoaW5mby0+cHJldik7Ci0JCWlmICgqaW5mby0+cHJldi0+bmFtZS5wYXRoKQorCQlpZiAoKmluZm8tPnByZXYtPm5hbWUpCiAJCQlwdXRjaGFyKCcvJyk7CiAJfQotCXByaW50ZigiJXMiLCBpbmZvLT5uYW1lLnBhdGgpOworCXByaW50ZigiJXMiLCBpbmZvLT5uYW1lKTsKIH0KIAogc3RhdGljIHZvaWQgZGVidWdfbmFtZV9lbnRyeShpbnQgaSwgc3RydWN0IG5hbWVfZW50cnkgKm4pCkBAIC0xMjgzLDcgKzEyNzIsOSBAQAogCQkJICAgIHN0cnVjdCBjYWNoZV9lbnRyeSAqKmNhY2hlLCBpbnQgbnIsCiAJCQkgICAgc3RydWN0IHN0cmJ1ZiAqcHJlZml4LAogCQkJICAgIGludCBzZWxlY3RfbWFzaywgaW50IGNsZWFyX21hc2ssCi0JCQkgICAgc3RydWN0IGV4Y2x1ZGVfbGlzdCAqZWwsIGludCBkZWZ2YWwpOworCQkJICAgIHN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsLAorCQkJICAgIGVudW0gcGF0dGVybl9tYXRjaF9yZXN1bHQgZGVmYXVsdF9tYXRjaCwKKwkJCSAgICBpbnQgcHJvZ3Jlc3NfbnIpOwogCiAvKiBXaG9sZSBkaXJlY3RvcnkgbWF0Y2hpbmcgKi8KIHN0YXRpYyBpbnQgY2xlYXJfY2VfZmxhZ3NfZGlyKHN0cnVjdCBpbmRleF9zdGF0ZSAqaXN0YXRlLApAQCAtMTI5MSwxOSArMTI4MiwyNCBAQAogCQkJICAgICAgc3RydWN0IHN0cmJ1ZiAqcHJlZml4LAogCQkJICAgICAgY2hhciAqYmFzZW5hbWUsCiAJCQkgICAgICBpbnQgc2VsZWN0X21hc2ssIGludCBjbGVhcl9tYXNrLAotCQkJICAgICAgc3RydWN0IGV4Y2x1ZGVfbGlzdCAqZWwsIGludCBkZWZ2YWwpCisJCQkgICAgICBzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbCwKKwkJCSAgICAgIGVudW0gcGF0dGVybl9tYXRjaF9yZXN1bHQgZGVmYXVsdF9tYXRjaCwKKwkJCSAgICAgIGludCBwcm9ncmVzc19ucikKIHsKIAlzdHJ1Y3QgY2FjaGVfZW50cnkgKipjYWNoZV9lbmQ7CiAJaW50IGR0eXBlID0gRFRfRElSOwotCWludCByZXQgPSBpc19leGNsdWRlZF9mcm9tX2xpc3QocHJlZml4LT5idWYsIHByZWZpeC0+bGVuLAotCQkJCQliYXNlbmFtZSwgJmR0eXBlLCBlbCwgaXN0YXRlKTsKIAlpbnQgcmM7CisJZW51bSBwYXR0ZXJuX21hdGNoX3Jlc3VsdCByZXQsIG9yaWdfcmV0OworCW9yaWdfcmV0ID0gcGF0aF9tYXRjaGVzX3BhdHRlcm5fbGlzdChwcmVmaXgtPmJ1ZiwgcHJlZml4LT5sZW4sCisJCQkJCSAgICAgYmFzZW5hbWUsICZkdHlwZSwgcGwsIGlzdGF0ZSk7CiAKIAlzdHJidWZfYWRkY2gocHJlZml4LCAnLycpOwogCiAJLyogSWYgdW5kZWNpZGVkLCB1c2UgbWF0Y2hpbmcgcmVzdWx0IG9mIHBhcmVudCBkaXIgaW4gZGVmdmFsICovCi0JaWYgKHJldCA8IDApCi0JCXJldCA9IGRlZnZhbDsKKwlpZiAob3JpZ19yZXQgPT0gVU5ERUNJREVEKQorCQlyZXQgPSBkZWZhdWx0X21hdGNoOworCWVsc2UKKwkJcmV0ID0gb3JpZ19yZXQ7CiAKIAlmb3IgKGNhY2hlX2VuZCA9IGNhY2hlOyBjYWNoZV9lbmQgIT0gY2FjaGUgKyBucjsgY2FjaGVfZW5kKyspIHsKIAkJc3RydWN0IGNhY2hlX2VudHJ5ICpjZSA9ICpjYWNoZV9lbmQ7CkBAIC0xMzExLDI0ICsxMzA3LDMxIEBACiAJCQlicmVhazsKIAl9CiAKLQkvKgotCSAqIFRPRE86IGNoZWNrIGVsLCBpZiB0aGVyZSBhcmUgbm8gcGF0dGVybnMgdGhhdCBtYXkgY29uZmxpY3QKLQkgKiB3aXRoIHJldCAoaW93LCB3ZSBrbm93IGluIGFkdmFuY2UgdGhlIGluY2wvZXhjbAotCSAqIGRlY2lzaW9uIGZvciB0aGUgZW50aXJlIGRpcmVjdG9yeSksIGNsZWFyIGZsYWcgaGVyZSB3aXRob3V0Ci0JICogY2FsbGluZyBjbGVhcl9jZV9mbGFnc18xKCkuIFRoYXQgZnVuY3Rpb24gd2lsbCBjYWxsCi0JICogdGhlIGV4cGVuc2l2ZSBpc19leGNsdWRlZF9mcm9tX2xpc3QoKSBvbiBldmVyeSBlbnRyeS4KLQkgKi8KLQlyYyA9IGNsZWFyX2NlX2ZsYWdzXzEoaXN0YXRlLCBjYWNoZSwgY2FjaGVfZW5kIC0gY2FjaGUsCi0JCQkgICAgICBwcmVmaXgsCi0JCQkgICAgICBzZWxlY3RfbWFzaywgY2xlYXJfbWFzaywKLQkJCSAgICAgIGVsLCByZXQpOworCWlmIChwbC0+dXNlX2NvbmVfcGF0dGVybnMgJiYgb3JpZ19yZXQgPT0gTUFUQ0hFRF9SRUNVUlNJVkUpIHsKKwkJc3RydWN0IGNhY2hlX2VudHJ5ICoqY2UgPSBjYWNoZTsKKwkJcmMgPSBjYWNoZV9lbmQgLSBjYWNoZTsKKworCQl3aGlsZSAoY2UgPCBjYWNoZV9lbmQpIHsKKwkJCSgqY2UpLT5jZV9mbGFncyAmPSB+Y2xlYXJfbWFzazsKKwkJCWNlKys7CisJCX0KKwl9IGVsc2UgaWYgKHBsLT51c2VfY29uZV9wYXR0ZXJucyAmJiBvcmlnX3JldCA9PSBOT1RfTUFUQ0hFRCkgeworCQlyYyA9IGNhY2hlX2VuZCAtIGNhY2hlOworCX0gZWxzZSB7CisJCXJjID0gY2xlYXJfY2VfZmxhZ3NfMShpc3RhdGUsIGNhY2hlLCBjYWNoZV9lbmQgLSBjYWNoZSwKKwkJCQkgICAgICBwcmVmaXgsCisJCQkJICAgICAgc2VsZWN0X21hc2ssIGNsZWFyX21hc2ssCisJCQkJICAgICAgcGwsIHJldCwKKwkJCQkgICAgICBwcm9ncmVzc19ucik7CisJfQorCiAJc3RyYnVmX3NldGxlbihwcmVmaXgsIHByZWZpeC0+bGVuIC0gMSk7CiAJcmV0dXJuIHJjOwogfQogCiAvKgogICogVHJhdmVyc2UgdGhlIGluZGV4LCBmaW5kIGV2ZXJ5IGVudHJ5IHRoYXQgbWF0Y2hlcyBhY2NvcmRpbmcgdG8KLSAqIG8tPmVsLiBEbyAiY2VfZmxhZ3MgJj0gfmNsZWFyX21hc2siIG9uIHRob3NlIGVudHJpZXMuIFJldHVybiB0aGUKKyAqIG8tPnBsLiBEbyAiY2VfZmxhZ3MgJj0gfmNsZWFyX21hc2siIG9uIHRob3NlIGVudHJpZXMuIFJldHVybiB0aGUKICAqIG51bWJlciBvZiB0cmF2ZXJzZWQgZW50cmllcy4KICAqCiAgKiBJZiBzZWxlY3RfbWFzayBpcyBub24temVybywgb25seSBlbnRyaWVzIHdob3NlIGNlX2ZsYWdzIGhhcyBvbiBvZgpAQCAtMTM0NSw5ICsxMzQ4LDExIEBACiAJCQkgICAgc3RydWN0IGNhY2hlX2VudHJ5ICoqY2FjaGUsIGludCBuciwKIAkJCSAgICBzdHJ1Y3Qgc3RyYnVmICpwcmVmaXgsCiAJCQkgICAgaW50IHNlbGVjdF9tYXNrLCBpbnQgY2xlYXJfbWFzaywKLQkJCSAgICBzdHJ1Y3QgZXhjbHVkZV9saXN0ICplbCwgaW50IGRlZnZhbCkKKwkJCSAgICBzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbCwKKwkJCSAgICBlbnVtIHBhdHRlcm5fbWF0Y2hfcmVzdWx0IGRlZmF1bHRfbWF0Y2gsCisJCQkgICAgaW50IHByb2dyZXNzX25yKQogewotCXN0cnVjdCBjYWNoZV9lbnRyeSAqKmNhY2hlX2VuZCA9IGNhY2hlICsgbnI7CisJc3RydWN0IGNhY2hlX2VudHJ5ICoqY2FjaGVfZW5kID0gbnIgPyBjYWNoZSArIG5yIDogY2FjaGU7CiAKIAkvKgogCSAqIFByb2Nlc3MgYWxsIGVudHJpZXMgdGhhdCBoYXZlIHRoZSBnaXZlbiBwcmVmaXggYW5kIG1lZXQKQEAgLTEzNTYsMTAgKzEzNjEsMTQgQEAKIAl3aGlsZShjYWNoZSAhPSBjYWNoZV9lbmQpIHsKIAkJc3RydWN0IGNhY2hlX2VudHJ5ICpjZSA9ICpjYWNoZTsKIAkJY29uc3QgY2hhciAqbmFtZSwgKnNsYXNoOwotCQlpbnQgbGVuLCBkdHlwZSwgcmV0OworCQlpbnQgbGVuLCBkdHlwZTsKKwkJZW51bSBwYXR0ZXJuX21hdGNoX3Jlc3VsdCByZXQ7CisKKwkJZGlzcGxheV9wcm9ncmVzcyhpc3RhdGUtPnByb2dyZXNzLCBwcm9ncmVzc19ucik7CiAKIAkJaWYgKHNlbGVjdF9tYXNrICYmICEoY2UtPmNlX2ZsYWdzICYgc2VsZWN0X21hc2spKSB7CiAJCQljYWNoZSsrOworCQkJcHJvZ3Jlc3NfbnIrKzsKIAkJCWNvbnRpbnVlOwogCQl9CiAKQEAgLTEzODAsNTggKzEzODksODQgQEAKIAkJCQkJCSAgICAgICBwcmVmaXgsCiAJCQkJCQkgICAgICAgcHJlZml4LT5idWYgKyBwcmVmaXgtPmxlbiAtIGxlbiwKIAkJCQkJCSAgICAgICBzZWxlY3RfbWFzaywgY2xlYXJfbWFzaywKLQkJCQkJCSAgICAgICBlbCwgZGVmdmFsKTsKKwkJCQkJCSAgICAgICBwbCwgZGVmYXVsdF9tYXRjaCwKKwkJCQkJCSAgICAgICBwcm9ncmVzc19ucik7CiAKIAkJCS8qIGNsZWFyX2NfZl9kaXIgZWF0cyBhIHdob2xlIGRpciBhbHJlYWR5PyAqLwogCQkJaWYgKHByb2Nlc3NlZCkgewogCQkJCWNhY2hlICs9IHByb2Nlc3NlZDsKKwkJCQlwcm9ncmVzc19uciArPSBwcm9jZXNzZWQ7CiAJCQkJc3RyYnVmX3NldGxlbihwcmVmaXgsIHByZWZpeC0+bGVuIC0gbGVuKTsKIAkJCQljb250aW51ZTsKIAkJCX0KIAogCQkJc3RyYnVmX2FkZGNoKHByZWZpeCwgJy8nKTsKLQkJCWNhY2hlICs9IGNsZWFyX2NlX2ZsYWdzXzEoaXN0YXRlLCBjYWNoZSwgY2FjaGVfZW5kIC0gY2FjaGUsCi0JCQkJCQkgIHByZWZpeCwKLQkJCQkJCSAgc2VsZWN0X21hc2ssIGNsZWFyX21hc2ssIGVsLCBkZWZ2YWwpOworCQkJcHJvY2Vzc2VkID0gY2xlYXJfY2VfZmxhZ3NfMShpc3RhdGUsIGNhY2hlLCBjYWNoZV9lbmQgLSBjYWNoZSwKKwkJCQkJCSAgICAgcHJlZml4LAorCQkJCQkJICAgICBzZWxlY3RfbWFzaywgY2xlYXJfbWFzaywgcGwsCisJCQkJCQkgICAgIGRlZmF1bHRfbWF0Y2gsIHByb2dyZXNzX25yKTsKKworCQkJY2FjaGUgKz0gcHJvY2Vzc2VkOworCQkJcHJvZ3Jlc3NfbnIgKz0gcHJvY2Vzc2VkOworCiAJCQlzdHJidWZfc2V0bGVuKHByZWZpeCwgcHJlZml4LT5sZW4gLSBsZW4gLSAxKTsKIAkJCWNvbnRpbnVlOwogCQl9CiAKIAkJLyogTm9uLWRpcmVjdG9yeSAqLwogCQlkdHlwZSA9IGNlX3RvX2R0eXBlKGNlKTsKLQkJcmV0ID0gaXNfZXhjbHVkZWRfZnJvbV9saXN0KGNlLT5uYW1lLCBjZV9uYW1lbGVuKGNlKSwKLQkJCQkJICAgIG5hbWUsICZkdHlwZSwgZWwsIGlzdGF0ZSk7Ci0JCWlmIChyZXQgPCAwKQotCQkJcmV0ID0gZGVmdmFsOwotCQlpZiAocmV0ID4gMCkKKwkJcmV0ID0gcGF0aF9tYXRjaGVzX3BhdHRlcm5fbGlzdChjZS0+bmFtZSwKKwkJCQkJCWNlX25hbWVsZW4oY2UpLAorCQkJCQkJbmFtZSwgJmR0eXBlLCBwbCwgaXN0YXRlKTsKKwkJaWYgKHJldCA9PSBVTkRFQ0lERUQpCisJCQlyZXQgPSBkZWZhdWx0X21hdGNoOworCQlpZiAocmV0ID09IE1BVENIRUQgfHwgcmV0ID09IE1BVENIRURfUkVDVVJTSVZFKQogCQkJY2UtPmNlX2ZsYWdzICY9IH5jbGVhcl9tYXNrOwogCQljYWNoZSsrOworCQlwcm9ncmVzc19ucisrOwogCX0KKworCWRpc3BsYXlfcHJvZ3Jlc3MoaXN0YXRlLT5wcm9ncmVzcywgcHJvZ3Jlc3NfbnIpOwogCXJldHVybiBuciAtIChjYWNoZV9lbmQgLSBjYWNoZSk7CiB9CiAKIHN0YXRpYyBpbnQgY2xlYXJfY2VfZmxhZ3Moc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUsCiAJCQkgIGludCBzZWxlY3RfbWFzaywgaW50IGNsZWFyX21hc2ssCi0JCQkgIHN0cnVjdCBleGNsdWRlX2xpc3QgKmVsKQorCQkJICBzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbCwKKwkJCSAgaW50IHNob3dfcHJvZ3Jlc3MpCiB7CiAJc3RhdGljIHN0cnVjdCBzdHJidWYgcHJlZml4ID0gU1RSQlVGX0lOSVQ7CisJY2hhciBsYWJlbFsxMDBdOworCWludCBydmFsOwogCiAJc3RyYnVmX3Jlc2V0KCZwcmVmaXgpOworCWlmIChzaG93X3Byb2dyZXNzKQorCQlpc3RhdGUtPnByb2dyZXNzID0gc3RhcnRfZGVsYXllZF9wcm9ncmVzcygKKwkJCQkJXygiVXBkYXRpbmcgaW5kZXggZmxhZ3MiKSwKKwkJCQkJaXN0YXRlLT5jYWNoZV9ucik7CiAKLQlyZXR1cm4gY2xlYXJfY2VfZmxhZ3NfMShpc3RhdGUsCisJeHNucHJpbnRmKGxhYmVsLCBzaXplb2YobGFiZWwpLCAiY2xlYXJfY2VfZmxhZ3MoMHglMDhseCwweCUwOGx4KSIsCisJCSAgKHVuc2lnbmVkIGxvbmcpc2VsZWN0X21hc2ssICh1bnNpZ25lZCBsb25nKWNsZWFyX21hc2spOworCXRyYWNlMl9yZWdpb25fZW50ZXIoInVucGFja190cmVlcyIsIGxhYmVsLCB0aGVfcmVwb3NpdG9yeSk7CisJcnZhbCA9IGNsZWFyX2NlX2ZsYWdzXzEoaXN0YXRlLAogCQkJCWlzdGF0ZS0+Y2FjaGUsCiAJCQkJaXN0YXRlLT5jYWNoZV9uciwKIAkJCQkmcHJlZml4LAogCQkJCXNlbGVjdF9tYXNrLCBjbGVhcl9tYXNrLAotCQkJCWVsLCAwKTsKKwkJCQlwbCwgMCwgMCk7CisJdHJhY2UyX3JlZ2lvbl9sZWF2ZSgidW5wYWNrX3RyZWVzIiwgbGFiZWwsIHRoZV9yZXBvc2l0b3J5KTsKKworCXN0b3BfcHJvZ3Jlc3MoJmlzdGF0ZS0+cHJvZ3Jlc3MpOworCXJldHVybiBydmFsOwogfQogCiAvKgogICogU2V0L0NsZWFyIENFX05FV19TS0lQX1dPUktUUkVFIGFjY29yZGluZyB0byAkR0lUX0RJUi9pbmZvL3NwYXJzZS1jaGVja291dAogICovCi1zdGF0aWMgdm9pZCBtYXJrX25ld19za2lwX3dvcmt0cmVlKHN0cnVjdCBleGNsdWRlX2xpc3QgKmVsLAorc3RhdGljIHZvaWQgbWFya19uZXdfc2tpcF93b3JrdHJlZShzdHJ1Y3QgcGF0dGVybl9saXN0ICpwbCwKIAkJCQkgICBzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwKLQkJCQkgICBpbnQgc2VsZWN0X2ZsYWcsIGludCBza2lwX3d0X2ZsYWcpCisJCQkJICAgaW50IHNlbGVjdF9mbGFnLCBpbnQgc2tpcF93dF9mbGFnLAorCQkJCSAgIGludCBzaG93X3Byb2dyZXNzKQogewogCWludCBpOwogCkBAIC0xNDU1LDcgKzE0OTAsNyBAQAogCSAqIDIuIFdpZGVuIHdvcmt0cmVlIGFjY29yZGluZyB0byBzcGFyc2UtY2hlY2tvdXQgZmlsZS4KIAkgKiBNYXRjaGVkIGVudHJpZXMgd2lsbCBoYXZlIHNraXBfd3RfZmxhZyBjbGVhcmVkIChpLmUuICJpbiIpCiAJICovCi0JY2xlYXJfY2VfZmxhZ3MoaXN0YXRlLCBzZWxlY3RfZmxhZywgc2tpcF93dF9mbGFnLCBlbCk7CisJY2xlYXJfY2VfZmxhZ3MoaXN0YXRlLCBzZWxlY3RfZmxhZywgc2tpcF93dF9mbGFnLCBwbCwgc2hvd19wcm9ncmVzcyk7CiB9CiAKIHN0YXRpYyBpbnQgdmVyaWZ5X2Fic2VudChjb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKiwKQEAgLTE0NzEsMjEgKzE1MDYsMjIgQEAKIHsKIAlpbnQgaSwgcmV0OwogCXN0YXRpYyBzdHJ1Y3QgY2FjaGVfZW50cnkgKmRmYzsKLQlzdHJ1Y3QgZXhjbHVkZV9saXN0IGVsOworCXN0cnVjdCBwYXR0ZXJuX2xpc3QgcGw7CiAKIAlpZiAobGVuID4gTUFYX1VOUEFDS19UUkVFUykKIAkJZGllKCJ1bnBhY2tfdHJlZXMgdGFrZXMgYXQgbW9zdCAlZCB0cmVlcyIsIE1BWF9VTlBBQ0tfVFJFRVMpOwogCiAJdHJhY2VfcGVyZm9ybWFuY2VfZW50ZXIoKTsKLQltZW1zZXQoJmVsLCAwLCBzaXplb2YoZWwpKTsKKwltZW1zZXQoJnBsLCAwLCBzaXplb2YocGwpKTsKIAlpZiAoIWNvcmVfYXBwbHlfc3BhcnNlX2NoZWNrb3V0IHx8ICFvLT51cGRhdGUpCiAJCW8tPnNraXBfc3BhcnNlX2NoZWNrb3V0ID0gMTsKLQlpZiAoIW8tPnNraXBfc3BhcnNlX2NoZWNrb3V0KSB7CisJaWYgKCFvLT5za2lwX3NwYXJzZV9jaGVja291dCAmJiAhby0+cGwpIHsKIAkJY2hhciAqc3BhcnNlID0gZ2l0X3BhdGhkdXAoImluZm8vc3BhcnNlLWNoZWNrb3V0Iik7Ci0JCWlmIChhZGRfZXhjbHVkZXNfZnJvbV9maWxlX3RvX2xpc3Qoc3BhcnNlLCAiIiwgMCwgJmVsLCBOVUxMKSA8IDApCisJCXBsLnVzZV9jb25lX3BhdHRlcm5zID0gY29yZV9zcGFyc2VfY2hlY2tvdXRfY29uZTsKKwkJaWYgKGFkZF9wYXR0ZXJuc19mcm9tX2ZpbGVfdG9fbGlzdChzcGFyc2UsICIiLCAwLCAmcGwsIE5VTEwpIDwgMCkKIAkJCW8tPnNraXBfc3BhcnNlX2NoZWNrb3V0ID0gMTsKIAkJZWxzZQotCQkJby0+ZWwgPSAmZWw7CisJCQlvLT5wbCA9ICZwbDsKIAkJZnJlZShzcGFyc2UpOwogCX0KIApAQCAtMTUxMiwxMSArMTU0OCwxNSBAQAogCW8tPm1lcmdlX3NpemUgPSBsZW47CiAJbWFya19hbGxfY2VfdW51c2VkKG8tPnNyY19pbmRleCk7CiAKKwlpZiAoby0+c3JjX2luZGV4LT5mc21vbml0b3JfbGFzdF91cGRhdGUpCisJCW8tPnJlc3VsdC5mc21vbml0b3JfbGFzdF91cGRhdGUgPSBvLT5zcmNfaW5kZXgtPmZzbW9uaXRvcl9sYXN0X3VwZGF0ZTsKKwogCS8qCiAJICogU3BhcnNlIGNoZWNrb3V0IGxvb3AgIzE6IHNldCBORVdfU0tJUF9XT1JLVFJFRSBvbiBleGlzdGluZyBlbnRyaWVzCiAJICovCiAJaWYgKCFvLT5za2lwX3NwYXJzZV9jaGVja291dCkKLQkJbWFya19uZXdfc2tpcF93b3JrdHJlZShvLT5lbCwgby0+c3JjX2luZGV4LCAwLCBDRV9ORVdfU0tJUF9XT1JLVFJFRSk7CisJCW1hcmtfbmV3X3NraXBfd29ya3RyZWUoby0+cGwsIG8tPnNyY19pbmRleCwgMCwKKwkJCQkgICAgICAgQ0VfTkVXX1NLSVBfV09SS1RSRUUsIG8tPnZlcmJvc2VfdXBkYXRlKTsKIAogCWlmICghZGZjKQogCQlkZmMgPSB4Y2FsbG9jKDEsIGNhY2hlX2VudHJ5X3NpemUoMCkpOwpAQCAtMTU1MCw3ICsxNTkwLDcgQEAKIAkJfQogCiAJCXRyYWNlX3BlcmZvcm1hbmNlX2VudGVyKCk7Ci0JCXJldCA9IHRyYXZlcnNlX3RyZWVzKGxlbiwgdCwgJmluZm8pOworCQlyZXQgPSB0cmF2ZXJzZV90cmVlcyhvLT5zcmNfaW5kZXgsIGxlbiwgdCwgJmluZm8pOwogCQl0cmFjZV9wZXJmb3JtYW5jZV9sZWF2ZSgidHJhdmVyc2VfdHJlZXMiKTsKIAkJaWYgKHJldCA8IDApCiAJCQlnb3RvIHJldHVybl9mYWlsZWQ7CkBAIC0xNTgxLDcgKzE2MjEsOSBAQAogCQkgKiBJZiB0aGUgd2lsbCBoYXZlIE5FV19TS0lQX1dPUktUUkVFLCBhbHNvIHNldCBDRV9TS0lQX1dPUktUUkVFCiAJCSAqIHNvIGFwcGx5X3NwYXJzZV9jaGVja291dCgpIHdvbid0IGF0dGVtcHQgdG8gcmVtb3ZlIGl0IGZyb20gd29ya3RyZWUKIAkJICovCi0JCW1hcmtfbmV3X3NraXBfd29ya3RyZWUoby0+ZWwsICZvLT5yZXN1bHQsIENFX0FEREVELCBDRV9TS0lQX1dPUktUUkVFIHwgQ0VfTkVXX1NLSVBfV09SS1RSRUUpOworCQltYXJrX25ld19za2lwX3dvcmt0cmVlKG8tPnBsLCAmby0+cmVzdWx0LAorCQkJCSAgICAgICBDRV9BRERFRCwgQ0VfU0tJUF9XT1JLVFJFRSB8IENFX05FV19TS0lQX1dPUktUUkVFLAorCQkJCSAgICAgICBvLT52ZXJib3NlX3VwZGF0ZSk7CiAKIAkJcmV0ID0gMDsKIAkJZm9yIChpID0gMDsgaSA8IG8tPnJlc3VsdC5jYWNoZV9ucjsgaSsrKSB7CkBAIC0xNjMwLDcgKzE2NzIsNyBAQAogCQltb3ZlX2luZGV4X2V4dGVuc2lvbnMoJm8tPnJlc3VsdCwgby0+c3JjX2luZGV4KTsKIAkJaWYgKCFyZXQpIHsKIAkJCWlmIChnaXRfZW52X2Jvb2woIkdJVF9URVNUX0NIRUNLX0NBQ0hFX1RSRUUiLCAwKSkKLQkJCQljYWNoZV90cmVlX3ZlcmlmeSgmby0+cmVzdWx0KTsKKwkJCQljYWNoZV90cmVlX3ZlcmlmeSh0aGVfcmVwb3NpdG9yeSwgJm8tPnJlc3VsdCk7CiAJCQlpZiAoIW8tPnJlc3VsdC5jYWNoZV90cmVlKQogCQkJCW8tPnJlc3VsdC5jYWNoZV90cmVlID0gY2FjaGVfdHJlZSgpOwogCQkJaWYgKCFjYWNoZV90cmVlX2Z1bGx5X3ZhbGlkKG8tPnJlc3VsdC5jYWNoZV90cmVlKSkKQEAgLTE2MzgsNiArMTY4MCw4IEBACiAJCQkJCQkgIFdSSVRFX1RSRUVfU0lMRU5UIHwKIAkJCQkJCSAgV1JJVEVfVFJFRV9SRVBBSVIpOwogCQl9CisKKwkJby0+cmVzdWx0LnVwZGF0ZWRfd29ya2RpciA9IDE7CiAJCWRpc2NhcmRfaW5kZXgoby0+ZHN0X2luZGV4KTsKIAkJKm8tPmRzdF9pbmRleCA9IG8tPnJlc3VsdDsKIAl9IGVsc2UgewpAQCAtMTY0Nyw3ICsxNjkxLDggQEAKIAogZG9uZToKIAl0cmFjZV9wZXJmb3JtYW5jZV9sZWF2ZSgidW5wYWNrX3RyZWVzIik7Ci0JY2xlYXJfZXhjbHVkZV9saXN0KCZlbCk7CisJaWYgKCFvLT5rZWVwX3BhdHRlcm5fbGlzdCkKKwkJY2xlYXJfcGF0dGVybl9saXN0KCZwbCk7CiAJcmV0dXJuIHJldDsKIAogcmV0dXJuX2ZhaWxlZDoKQEAgLTE2NjUsOCArMTcxMCw3IEBACiBzdGF0aWMgaW50IHJlamVjdF9tZXJnZShjb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlLAogCQkJc3RydWN0IHVucGFja190cmVlc19vcHRpb25zICpvKQogewotCXJldHVybiBvLT5nZW50bHkgPyAtMSA6Ci0JCWFkZF9yZWplY3RlZF9wYXRoKG8sIEVSUk9SX1dPVUxEX09WRVJXUklURSwgY2UtPm5hbWUpOworCXJldHVybiBhZGRfcmVqZWN0ZWRfcGF0aChvLCBFUlJPUl9XT1VMRF9PVkVSV1JJVEUsIGNlLT5uYW1lKTsKIH0KIAogc3RhdGljIGludCBzYW1lKGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqYSwgY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICpiKQpAQCAtMTcxMyw4ICsxNzU3LDcgQEAKIAkJCWludCByID0gY2hlY2tfc3VibW9kdWxlX21vdmVfaGVhZChjZSwKIAkJCQkiSEVBRCIsIG9pZF90b19oZXgoJmNlLT5vaWQpLCBvKTsKIAkJCWlmIChyKQotCQkJCXJldHVybiBvLT5nZW50bHkgPyAtMSA6Ci0JCQkJCWFkZF9yZWplY3RlZF9wYXRoKG8sIGVycm9yX3R5cGUsIGNlLT5uYW1lKTsKKwkJCQlyZXR1cm4gYWRkX3JlamVjdGVkX3BhdGgobywgZXJyb3JfdHlwZSwgY2UtPm5hbWUpOwogCQkJcmV0dXJuIDA7CiAJCX0KIApAQCAtMTczMiw4ICsxNzc1LDcgQEAKIAl9CiAJaWYgKGVycm5vID09IEVOT0VOVCkKIAkJcmV0dXJuIDA7Ci0JcmV0dXJuIG8tPmdlbnRseSA/IC0xIDoKLQkJYWRkX3JlamVjdGVkX3BhdGgobywgZXJyb3JfdHlwZSwgY2UtPm5hbWUpOworCXJldHVybiBhZGRfcmVqZWN0ZWRfcGF0aChvLCBlcnJvcl90eXBlLCBjZS0+bmFtZSk7CiB9CiAKIGludCB2ZXJpZnlfdXB0b2RhdGUoY29uc3Qgc3RydWN0IGNhY2hlX2VudHJ5ICpjZSwKQEAgLTE3NzksNyArMTgyMSw2IEBACiAgKi8KIHN0YXRpYyBpbnQgdmVyaWZ5X2NsZWFuX3N1Ym1vZHVsZShjb25zdCBjaGFyICpvbGRfc2hhMSwKIAkJCQkgIGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UsCi0JCQkJICBlbnVtIHVucGFja190cmVlc19lcnJvcl90eXBlcyBlcnJvcl90eXBlLAogCQkJCSAgc3RydWN0IHVucGFja190cmVlc19vcHRpb25zICpvKQogewogCWlmICghc3VibW9kdWxlX2Zyb21fY2UoY2UpKQpAQCAtMTc5MCw3ICsxODMxLDYgQEAKIH0KIAogc3RhdGljIGludCB2ZXJpZnlfY2xlYW5fc3ViZGlyZWN0b3J5KGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UsCi0JCQkJICAgICBlbnVtIHVucGFja190cmVlc19lcnJvcl90eXBlcyBlcnJvcl90eXBlLAogCQkJCSAgICAgc3RydWN0IHVucGFja190cmVlc19vcHRpb25zICpvKQogewogCS8qCkBAIC0xODEzLDcgKzE4NTMsNyBAQAogCQlpZiAoIXN1Yl9oZWFkICYmIG9pZGVxKCZvaWQsICZjZS0+b2lkKSkKIAkJCXJldHVybiAwOwogCQlyZXR1cm4gdmVyaWZ5X2NsZWFuX3N1Ym1vZHVsZShzdWJfaGVhZCA/IE5VTEwgOiBvaWRfdG9faGV4KCZvaWQpLAotCQkJCQkgICAgICBjZSwgZXJyb3JfdHlwZSwgbyk7CisJCQkJCSAgICAgIGNlLCBvKTsKIAl9CiAKIAkvKgpAQCAtMTg1NSw4ICsxODk1LDcgQEAKIAkJZC5leGNsdWRlX3Blcl9kaXIgPSBvLT5kaXItPmV4Y2x1ZGVfcGVyX2RpcjsKIAlpID0gcmVhZF9kaXJlY3RvcnkoJmQsIG8tPnNyY19pbmRleCwgcGF0aGJ1ZiwgbmFtZWxlbisxLCBOVUxMKTsKIAlpZiAoaSkKLQkJcmV0dXJuIG8tPmdlbnRseSA/IC0xIDoKLQkJCWFkZF9yZWplY3RlZF9wYXRoKG8sIEVSUk9SX05PVF9VUFRPREFURV9ESVIsIGNlLT5uYW1lKTsKKwkJcmV0dXJuIGFkZF9yZWplY3RlZF9wYXRoKG8sIEVSUk9SX05PVF9VUFRPREFURV9ESVIsIGNlLT5uYW1lKTsKIAlmcmVlKHBhdGhidWYpOwogCXJldHVybiBjbnQ7CiB9CkBAIC0xOTA5LDcgKzE5NDgsNyBAQAogCQkgKiBmaWxlcyB0aGF0IGFyZSBpbiAiZm9vLyIgd2Ugd291bGQgbG9zZQogCQkgKiB0aGVtLgogCQkgKi8KLQkJaWYgKHZlcmlmeV9jbGVhbl9zdWJkaXJlY3RvcnkoY2UsIGVycm9yX3R5cGUsIG8pIDwgMCkKKwkJaWYgKHZlcmlmeV9jbGVhbl9zdWJkaXJlY3RvcnkoY2UsIG8pIDwgMCkKIAkJCXJldHVybiAtMTsKIAkJcmV0dXJuIDA7CiAJfQpAQCAtMTkyNSw4ICsxOTY0LDcgQEAKIAkJCXJldHVybiAwOwogCX0KIAotCXJldHVybiBvLT5nZW50bHkgPyAtMSA6Ci0JCWFkZF9yZWplY3RlZF9wYXRoKG8sIGVycm9yX3R5cGUsIG5hbWUpOworCXJldHVybiBhZGRfcmVqZWN0ZWRfcGF0aChvLCBlcnJvcl90eXBlLCBuYW1lKTsKIH0KIAogLyoKQEAgLTIzNjcsNyArMjQwNSw3IEBACiAJCXJldHVybiBlcnJvcigiQ2Fubm90IGRvIGEgYmluZCBtZXJnZSBvZiAlZCB0cmVlcyIsCiAJCQkgICAgIG8tPm1lcmdlX3NpemUpOwogCWlmIChhICYmIG9sZCkKLQkJcmV0dXJuIG8tPmdlbnRseSA/IC0xIDoKKwkJcmV0dXJuIG8tPnF1aWV0ID8gLTEgOgogCQkJZXJyb3IoRVJST1JNU0cobywgRVJST1JfQklORF9PVkVSTEFQKSwKIAkJCSAgICAgIHN1cGVyX3ByZWZpeGVkKGEtPm5hbWUpLAogCQkJICAgICAgc3VwZXJfcHJlZml4ZWQob2xkLT5uYW1lKSk7CkBAIC0yMzk4LDcgKzI0MzYsOCBAQAogCiAJaWYgKG9sZCAmJiBzYW1lKG9sZCwgYSkpIHsKIAkJaW50IHVwZGF0ZSA9IDA7Ci0JCWlmIChvLT5yZXNldCAmJiBvLT51cGRhdGUgJiYgIWNlX3VwdG9kYXRlKG9sZCkgJiYgIWNlX3NraXBfd29ya3RyZWUob2xkKSkgeworCQlpZiAoby0+cmVzZXQgJiYgby0+dXBkYXRlICYmICFjZV91cHRvZGF0ZShvbGQpICYmICFjZV9za2lwX3dvcmt0cmVlKG9sZCkgJiYKKwkJCSEob2xkLT5jZV9mbGFncyAmIENFX0ZTTU9OSVRPUl9WQUxJRCkpIHsKIAkJCXN0cnVjdCBzdGF0IHN0OwogCQkJaWYgKGxzdGF0KG9sZC0+bmFtZSwgJnN0KSB8fAogCQkJICAgIGllX21hdGNoX3N0YXQoby0+c3JjX2luZGV4LCBvbGQsICZzdCwgQ0VfTUFUQ0hfSUdOT1JFX1ZBTElEfENFX01BVENIX0lHTk9SRV9TS0lQX1dPUktUUkVFKSkKQEAgLTI0MDcsNyArMjQ0Niw3IEBACiAJCWlmIChvLT51cGRhdGUgJiYgU19JU0dJVExJTksob2xkLT5jZV9tb2RlKSAmJgogCQkgICAgc2hvdWxkX3VwZGF0ZV9zdWJtb2R1bGVzKCkgJiYgIXZlcmlmeV91cHRvZGF0ZShvbGQsIG8pKQogCQkJdXBkYXRlIHw9IENFX1VQREFURTsKLQkJYWRkX2VudHJ5KG8sIG9sZCwgdXBkYXRlLCAwKTsKKwkJYWRkX2VudHJ5KG8sIG9sZCwgdXBkYXRlLCBDRV9TVEFHRU1BU0spOwogCQlyZXR1cm4gMDsKIAl9CiAJcmV0dXJuIG1lcmdlZF9lbnRyeShhLCBvbGQsIG8pOwpkaWZmIC0tZ2l0IGEvdW5wYWNrLXRyZWVzLmggYi91bnBhY2stdHJlZXMuaAppbmRleCAwMTM1MDgwLi5hZTE1NTdmIDEwMDY0NAotLS0gYS91bnBhY2stdHJlZXMuaAorKysgYi91bnBhY2stdHJlZXMuaApAQCAtNiwxMSArNiwxMSBAQAogI2luY2x1ZGUgInN0cmluZy1saXN0LmgiCiAjaW5jbHVkZSAidHJlZS13YWxrLmgiCiAKLSNkZWZpbmUgTUFYX1VOUEFDS19UUkVFUyA4CisjZGVmaW5lIE1BWF9VTlBBQ0tfVFJFRVMgTUFYX1RSQVZFUlNFX1RSRUVTCiAKIHN0cnVjdCBjYWNoZV9lbnRyeTsKIHN0cnVjdCB1bnBhY2tfdHJlZXNfb3B0aW9uczsKLXN0cnVjdCBleGNsdWRlX2xpc3Q7CitzdHJ1Y3QgcGF0dGVybl9saXN0OwogCiB0eXBlZGVmIGludCAoKm1lcmdlX2ZuX3QpKGNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqIGNvbnN0ICpzcmMsCiAJCXN0cnVjdCB1bnBhY2tfdHJlZXNfb3B0aW9ucyAqb3B0aW9ucyk7CkBAIC01NiwxMCArNTYsMTEgQEAKIAkJICAgICBkaWZmX2luZGV4X2NhY2hlZCwKIAkJICAgICBkZWJ1Z191bnBhY2ssCiAJCSAgICAgc2tpcF9zcGFyc2VfY2hlY2tvdXQsCi0JCSAgICAgZ2VudGx5LAorCQkgICAgIHF1aWV0LAogCQkgICAgIGV4aXRpbmdfZWFybHksCiAJCSAgICAgc2hvd19hbGxfZXJyb3JzLAotCQkgICAgIGRyeV9ydW47CisJCSAgICAgZHJ5X3J1biwKKwkJICAgICBrZWVwX3BhdHRlcm5fbGlzdDsKIAljb25zdCBjaGFyICpwcmVmaXg7CiAJaW50IGNhY2hlX2JvdHRvbTsKIAlzdHJ1Y3QgZGlyX3N0cnVjdCAqZGlyOwpAQCAtODMsNyArODQsNyBAQAogCXN0cnVjdCBpbmRleF9zdGF0ZSAqc3JjX2luZGV4OwogCXN0cnVjdCBpbmRleF9zdGF0ZSByZXN1bHQ7CiAKLQlzdHJ1Y3QgZXhjbHVkZV9saXN0ICplbDsgLyogZm9yIGludGVybmFsIHVzZSAqLworCXN0cnVjdCBwYXR0ZXJuX2xpc3QgKnBsOyAvKiBmb3IgaW50ZXJuYWwgdXNlICovCiB9OwogCiBpbnQgdW5wYWNrX3RyZWVzKHVuc2lnbmVkIG4sIHN0cnVjdCB0cmVlX2Rlc2MgKnQsCmRpZmYgLS1naXQgYS91cGxvYWQtcGFjay5jIGIvdXBsb2FkLXBhY2suYwppbmRleCA1ZTgxZjFmLi5jNTMyNDljIDEwMDY0NAotLS0gYS91cGxvYWQtcGFjay5jCisrKyBiL3VwbG9hZC1wYWNrLmMKQEAgLTQzLDcgKzQzLDYgQEAKIAogc3RhdGljIHRpbWVzdGFtcF90IG9sZGVzdF9oYXZlOwogCi1zdGF0aWMgaW50IGRlZXBlbl9yZWxhdGl2ZTsKIHN0YXRpYyBpbnQgbXVsdGlfYWNrOwogc3RhdGljIGludCBub19kb25lOwogc3RhdGljIGludCB1c2VfdGhpbl9wYWNrLCB1c2Vfb2ZzX2RlbHRhLCB1c2VfaW5jbHVkZV90YWc7CkBAIC03MSw2ICs3MCw4IEBACiBzdGF0aWMgaW50IGFsbG93X3JlZl9pbl93YW50Owogc3RhdGljIHN0cnVjdCBsaXN0X29iamVjdHNfZmlsdGVyX29wdGlvbnMgZmlsdGVyX29wdGlvbnM7CiAKK3N0YXRpYyBpbnQgYWxsb3dfc2lkZWJhbmRfYWxsOworCiBzdGF0aWMgdm9pZCByZXNldF90aW1lb3V0KHZvaWQpCiB7CiAJYWxhcm0odGltZW91dCk7CkBAIC0xMzksMTUgKzE0MCwxNyBAQAogCQlhcmd2X2FycmF5X3B1c2goJnBhY2tfb2JqZWN0cy5hcmdzLCAiLS1kZWx0YS1iYXNlLW9mZnNldCIpOwogCWlmICh1c2VfaW5jbHVkZV90YWcpCiAJCWFyZ3ZfYXJyYXlfcHVzaCgmcGFja19vYmplY3RzLmFyZ3MsICItLWluY2x1ZGUtdGFnIik7Ci0JaWYgKGZpbHRlcl9vcHRpb25zLmZpbHRlcl9zcGVjKSB7CisJaWYgKGZpbHRlcl9vcHRpb25zLmNob2ljZSkgeworCQljb25zdCBjaGFyICpzcGVjID0KKwkJCWV4cGFuZF9saXN0X29iamVjdHNfZmlsdGVyX3NwZWMoJmZpbHRlcl9vcHRpb25zKTsKIAkJaWYgKHBhY2tfb2JqZWN0cy51c2Vfc2hlbGwpIHsKIAkJCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7Ci0JCQlzcV9xdW90ZV9idWYoJmJ1ZiwgZmlsdGVyX29wdGlvbnMuZmlsdGVyX3NwZWMpOworCQkJc3FfcXVvdGVfYnVmKCZidWYsIHNwZWMpOwogCQkJYXJndl9hcnJheV9wdXNoZigmcGFja19vYmplY3RzLmFyZ3MsICItLWZpbHRlcj0lcyIsIGJ1Zi5idWYpOwogCQkJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CiAJCX0gZWxzZSB7CiAJCQlhcmd2X2FycmF5X3B1c2hmKCZwYWNrX29iamVjdHMuYXJncywgIi0tZmlsdGVyPSVzIiwKLQkJCQkJIGZpbHRlcl9vcHRpb25zLmZpbHRlcl9zcGVjKTsKKwkJCQkJIHNwZWMpOwogCQl9CiAJfQogCkBAIC0zNTQsNyArMzU3LDggQEAKIAkJCQkJICAgIG1pbl9nZW5lcmF0aW9uKTsKIH0KIAotc3RhdGljIGludCBnZXRfY29tbW9uX2NvbW1pdHMoc3RydWN0IG9iamVjdF9hcnJheSAqaGF2ZV9vYmosCitzdGF0aWMgaW50IGdldF9jb21tb25fY29tbWl0cyhzdHJ1Y3QgcGFja2V0X3JlYWRlciAqcmVhZGVyLAorCQkJICAgICAgc3RydWN0IG9iamVjdF9hcnJheSAqaGF2ZV9vYmosCiAJCQkgICAgICBzdHJ1Y3Qgb2JqZWN0X2FycmF5ICp3YW50X29iaikKIHsKIAlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZDsKQEAgLTM2NiwxMiArMzcwLDExIEBACiAJc2F2ZV9jb21taXRfYnVmZmVyID0gMDsKIAogCWZvciAoOzspIHsKLQkJY2hhciAqbGluZSA9IHBhY2tldF9yZWFkX2xpbmUoMCwgTlVMTCk7CiAJCWNvbnN0IGNoYXIgKmFyZzsKIAogCQlyZXNldF90aW1lb3V0KCk7CiAKLQkJaWYgKCFsaW5lKSB7CisJCWlmIChwYWNrZXRfcmVhZGVyX3JlYWQocmVhZGVyKSAhPSBQQUNLRVRfUkVBRF9OT1JNQUwpIHsKIAkJCWlmIChtdWx0aV9hY2sgPT0gMiAmJiBnb3RfY29tbW9uCiAJCQkgICAgJiYgIWdvdF9vdGhlciAmJiBva190b19naXZlX3VwKGhhdmVfb2JqLCB3YW50X29iaikpIHsKIAkJCQlzZW50X3JlYWR5ID0gMTsKQEAgLTM5MCw3ICszOTMsNyBAQAogCQkJZ290X290aGVyID0gMDsKIAkJCWNvbnRpbnVlOwogCQl9Ci0JCWlmIChza2lwX3ByZWZpeChsaW5lLCAiaGF2ZSAiLCAmYXJnKSkgeworCQlpZiAoc2tpcF9wcmVmaXgocmVhZGVyLT5saW5lLCAiaGF2ZSAiLCAmYXJnKSkgewogCQkJc3dpdGNoIChnb3Rfb2lkKGFyZywgJm9pZCwgaGF2ZV9vYmopKSB7CiAJCQljYXNlIC0xOiAvKiB0aGV5IGhhdmUgd2hhdCB3ZSBkbyBub3QgKi8KIAkJCQlnb3Rfb3RoZXIgPSAxOwpAQCAtNDE2LDcgKzQxOSw3IEBACiAJCQl9CiAJCQljb250aW51ZTsKIAkJfQotCQlpZiAoIXN0cmNtcChsaW5lLCAiZG9uZSIpKSB7CisJCWlmICghc3RyY21wKHJlYWRlci0+bGluZSwgImRvbmUiKSkgewogCQkJaWYgKGhhdmVfb2JqLT5uciA+IDApIHsKIAkJCQlpZiAobXVsdGlfYWNrKQogCQkJCQlwYWNrZXRfd3JpdGVfZm10KDEsICJBQ0sgJXNcbiIsIGxhc3RfaGV4KTsKQEAgLTQyNSw3ICs0MjgsNyBAQAogCQkJcGFja2V0X3dyaXRlX2ZtdCgxLCAiTkFLXG4iKTsKIAkJCXJldHVybiAtMTsKIAkJfQotCQlkaWUoImdpdCB1cGxvYWQtcGFjazogZXhwZWN0ZWQgU0hBMSBsaXN0LCBnb3QgJyVzJyIsIGxpbmUpOworCQlkaWUoImdpdCB1cGxvYWQtcGFjazogZXhwZWN0ZWQgU0hBMSBsaXN0LCBnb3QgJyVzJyIsIHJlYWRlci0+bGluZSk7CiAJfQogfQogCkBAIC01MjQsMTMgKzUyNywxMyBAQAogCQlyZXR1cm4gLTE7CiAKIAl3aGlsZSAoKGkgPSByZWFkX2luX2Z1bGwoY21kLm91dCwgbmFtZWJ1ZiwgaGV4c3ogKyAxKSkgPT0gaGV4c3ogKyAxKSB7Ci0JCXN0cnVjdCBvYmplY3RfaWQgc2hhMTsKKwkJc3RydWN0IG9iamVjdF9pZCBvaWQ7CiAJCWNvbnN0IGNoYXIgKnA7CiAKLQkJaWYgKHBhcnNlX29pZF9oZXgobmFtZWJ1ZiwgJnNoYTEsICZwKSB8fCAqcCAhPSAnXG4nKQorCQlpZiAocGFyc2Vfb2lkX2hleChuYW1lYnVmLCAmb2lkLCAmcCkgfHwgKnAgIT0gJ1xuJykKIAkJCWJyZWFrOwogCi0JCW8gPSBsb29rdXBfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCBzaGExLmhhc2gpOworCQlvID0gbG9va3VwX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgJm9pZCk7CiAJCWlmIChvICYmIG8tPnR5cGUgPT0gT0JKX0NPTU1JVCkgewogCQkJby0+ZmxhZ3MgJj0gflRNUF9NQVJLOwogCQl9CkBAIC01ODgsNyArNTkxLDggQEAKIAlyZXR1cm4gMTsKIH0KIAotc3RhdGljIHZvaWQgY2hlY2tfbm9uX3RpcChzdHJ1Y3Qgb2JqZWN0X2FycmF5ICp3YW50X29iaikKK3N0YXRpYyB2b2lkIGNoZWNrX25vbl90aXAoc3RydWN0IG9iamVjdF9hcnJheSAqd2FudF9vYmosCisJCQkgIHN0cnVjdCBwYWNrZXRfd3JpdGVyICp3cml0ZXIpCiB7CiAJaW50IGk7CiAKQEAgLTYwNywxOSArNjExLDI0IEBACiAJLyogUGljayBvbmUgb2YgdGhlbSAod2Uga25vdyB0aGVyZSBhdCBsZWFzdCBpcyBvbmUpICovCiAJZm9yIChpID0gMDsgaSA8IHdhbnRfb2JqLT5ucjsgaSsrKSB7CiAJCXN0cnVjdCBvYmplY3QgKm8gPSB3YW50X29iai0+b2JqZWN0c1tpXS5pdGVtOwotCQlpZiAoIWlzX291cl9yZWYobykpCisJCWlmICghaXNfb3VyX3JlZihvKSkgeworCQkJcGFja2V0X3dyaXRlcl9lcnJvcih3cml0ZXIsCisJCQkJCSAgICAidXBsb2FkLXBhY2s6IG5vdCBvdXIgcmVmICVzIiwKKwkJCQkJICAgIG9pZF90b19oZXgoJm8tPm9pZCkpOwogCQkJZGllKCJnaXQgdXBsb2FkLXBhY2s6IG5vdCBvdXIgcmVmICVzIiwKIAkJCSAgICBvaWRfdG9faGV4KCZvLT5vaWQpKTsKKwkJfQogCX0KIH0KIAotc3RhdGljIHZvaWQgc2VuZF9zaGFsbG93KHN0cnVjdCBjb21taXRfbGlzdCAqcmVzdWx0KQorc3RhdGljIHZvaWQgc2VuZF9zaGFsbG93KHN0cnVjdCBwYWNrZXRfd3JpdGVyICp3cml0ZXIsCisJCQkgc3RydWN0IGNvbW1pdF9saXN0ICpyZXN1bHQpCiB7CiAJd2hpbGUgKHJlc3VsdCkgewogCQlzdHJ1Y3Qgb2JqZWN0ICpvYmplY3QgPSAmcmVzdWx0LT5pdGVtLT5vYmplY3Q7CiAJCWlmICghKG9iamVjdC0+ZmxhZ3MgJiAoQ0xJRU5UX1NIQUxMT1d8Tk9UX1NIQUxMT1cpKSkgewotCQkJcGFja2V0X3dyaXRlX2ZtdCgxLCAic2hhbGxvdyAlcyIsCi0JCQkJCSBvaWRfdG9faGV4KCZvYmplY3QtPm9pZCkpOworCQkJcGFja2V0X3dyaXRlcl93cml0ZSh3cml0ZXIsICJzaGFsbG93ICVzIiwKKwkJCQkJICAgIG9pZF90b19oZXgoJm9iamVjdC0+b2lkKSk7CiAJCQlyZWdpc3Rlcl9zaGFsbG93KHRoZV9yZXBvc2l0b3J5LCAmb2JqZWN0LT5vaWQpOwogCQkJc2hhbGxvd19ucisrOwogCQl9CkBAIC02MjcsNyArNjM2LDggQEAKIAl9CiB9CiAKLXN0YXRpYyB2b2lkIHNlbmRfdW5zaGFsbG93KGNvbnN0IHN0cnVjdCBvYmplY3RfYXJyYXkgKnNoYWxsb3dzLAorc3RhdGljIHZvaWQgc2VuZF91bnNoYWxsb3coc3RydWN0IHBhY2tldF93cml0ZXIgKndyaXRlciwKKwkJCSAgIGNvbnN0IHN0cnVjdCBvYmplY3RfYXJyYXkgKnNoYWxsb3dzLAogCQkJICAgc3RydWN0IG9iamVjdF9hcnJheSAqd2FudF9vYmopCiB7CiAJaW50IGk7CkBAIC02MzYsOCArNjQ2LDggQEAKIAkJc3RydWN0IG9iamVjdCAqb2JqZWN0ID0gc2hhbGxvd3MtPm9iamVjdHNbaV0uaXRlbTsKIAkJaWYgKG9iamVjdC0+ZmxhZ3MgJiBOT1RfU0hBTExPVykgewogCQkJc3RydWN0IGNvbW1pdF9saXN0ICpwYXJlbnRzOwotCQkJcGFja2V0X3dyaXRlX2ZtdCgxLCAidW5zaGFsbG93ICVzIiwKLQkJCQkJIG9pZF90b19oZXgoJm9iamVjdC0+b2lkKSk7CisJCQlwYWNrZXRfd3JpdGVyX3dyaXRlKHdyaXRlciwgInVuc2hhbGxvdyAlcyIsCisJCQkJCSAgICBvaWRfdG9faGV4KCZvYmplY3QtPm9pZCkpOwogCQkJb2JqZWN0LT5mbGFncyAmPSB+Q0xJRU5UX1NIQUxMT1c7CiAJCQkvKgogCQkJICogV2Ugd2FudCB0byBfcmVnaXN0ZXJfICJvYmplY3QiIGFzIHNoYWxsb3csIGJ1dCB3ZQpAQCAtNjYyLDcgKzY3Miw5IEBACiAJfQogfQogCi1zdGF0aWMgdm9pZCBkZWVwZW4oaW50IGRlcHRoLCBpbnQgZGVlcGVuX3JlbGF0aXZlLAorc3RhdGljIGludCBjaGVja19yZWYoY29uc3QgY2hhciAqcmVmbmFtZV9mdWxsLCBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2lkICpvaWQsCisJCSAgICAgaW50IGZsYWcsIHZvaWQgKmNiX2RhdGEpOworc3RhdGljIHZvaWQgZGVlcGVuKHN0cnVjdCBwYWNrZXRfd3JpdGVyICp3cml0ZXIsIGludCBkZXB0aCwgaW50IGRlZXBlbl9yZWxhdGl2ZSwKIAkJICAgc3RydWN0IG9iamVjdF9hcnJheSAqc2hhbGxvd3MsIHN0cnVjdCBvYmplY3RfYXJyYXkgKndhbnRfb2JqKQogewogCWlmIChkZXB0aCA9PSBJTkZJTklURV9ERVBUSCAmJiAhaXNfcmVwb3NpdG9yeV9zaGFsbG93KHRoZV9yZXBvc2l0b3J5KSkgewpAQCAtNjc2LDExICs2ODgsMTggQEAKIAkJc3RydWN0IG9iamVjdF9hcnJheSByZWFjaGFibGVfc2hhbGxvd3MgPSBPQkpFQ1RfQVJSQVlfSU5JVDsKIAkJc3RydWN0IGNvbW1pdF9saXN0ICpyZXN1bHQ7CiAKKwkJLyoKKwkJICogQ2hlY2tpbmcgZm9yIHJlYWNoYWJsZSBzaGFsbG93cyByZXF1aXJlcyB0aGF0IG91ciByZWZzIGJlCisJCSAqIG1hcmtlZCB3aXRoIE9VUl9SRUYuCisJCSAqLworCQloZWFkX3JlZl9uYW1lc3BhY2VkKGNoZWNrX3JlZiwgTlVMTCk7CisJCWZvcl9lYWNoX25hbWVzcGFjZWRfcmVmKGNoZWNrX3JlZiwgTlVMTCk7CisKIAkJZ2V0X3JlYWNoYWJsZV9saXN0KHNoYWxsb3dzLCAmcmVhY2hhYmxlX3NoYWxsb3dzKTsKIAkJcmVzdWx0ID0gZ2V0X3NoYWxsb3dfY29tbWl0cygmcmVhY2hhYmxlX3NoYWxsb3dzLAogCQkJCQkgICAgIGRlcHRoICsgMSwKIAkJCQkJICAgICBTSEFMTE9XLCBOT1RfU0hBTExPVyk7Ci0JCXNlbmRfc2hhbGxvdyhyZXN1bHQpOworCQlzZW5kX3NoYWxsb3cod3JpdGVyLCByZXN1bHQpOwogCQlmcmVlX2NvbW1pdF9saXN0KHJlc3VsdCk7CiAJCW9iamVjdF9hcnJheV9jbGVhcigmcmVhY2hhYmxlX3NoYWxsb3dzKTsKIAl9IGVsc2UgewpAQCAtNjg4LDMwICs3MDcsMzMgQEAKIAogCQlyZXN1bHQgPSBnZXRfc2hhbGxvd19jb21taXRzKHdhbnRfb2JqLCBkZXB0aCwKIAkJCQkJICAgICBTSEFMTE9XLCBOT1RfU0hBTExPVyk7Ci0JCXNlbmRfc2hhbGxvdyhyZXN1bHQpOworCQlzZW5kX3NoYWxsb3cod3JpdGVyLCByZXN1bHQpOwogCQlmcmVlX2NvbW1pdF9saXN0KHJlc3VsdCk7CiAJfQogCi0Jc2VuZF91bnNoYWxsb3coc2hhbGxvd3MsIHdhbnRfb2JqKTsKKwlzZW5kX3Vuc2hhbGxvdyh3cml0ZXIsIHNoYWxsb3dzLCB3YW50X29iaik7CiB9CiAKLXN0YXRpYyB2b2lkIGRlZXBlbl9ieV9yZXZfbGlzdChpbnQgYWMsIGNvbnN0IGNoYXIgKiphdiwKK3N0YXRpYyB2b2lkIGRlZXBlbl9ieV9yZXZfbGlzdChzdHJ1Y3QgcGFja2V0X3dyaXRlciAqd3JpdGVyLCBpbnQgYWMsCisJCQkgICAgICAgY29uc3QgY2hhciAqKmF2LAogCQkJICAgICAgIHN0cnVjdCBvYmplY3RfYXJyYXkgKnNoYWxsb3dzLAogCQkJICAgICAgIHN0cnVjdCBvYmplY3RfYXJyYXkgKndhbnRfb2JqKQogewogCXN0cnVjdCBjb21taXRfbGlzdCAqcmVzdWx0OwogCi0JY2xvc2VfY29tbWl0X2dyYXBoKHRoZV9yZXBvc2l0b3J5KTsKKwlkaXNhYmxlX2NvbW1pdF9ncmFwaCh0aGVfcmVwb3NpdG9yeSk7CiAJcmVzdWx0ID0gZ2V0X3NoYWxsb3dfY29tbWl0c19ieV9yZXZfbGlzdChhYywgYXYsIFNIQUxMT1csIE5PVF9TSEFMTE9XKTsKLQlzZW5kX3NoYWxsb3cocmVzdWx0KTsKKwlzZW5kX3NoYWxsb3cod3JpdGVyLCByZXN1bHQpOwogCWZyZWVfY29tbWl0X2xpc3QocmVzdWx0KTsKLQlzZW5kX3Vuc2hhbGxvdyhzaGFsbG93cywgd2FudF9vYmopOworCXNlbmRfdW5zaGFsbG93KHdyaXRlciwgc2hhbGxvd3MsIHdhbnRfb2JqKTsKIH0KIAogLyogUmV0dXJucyAxIGlmIGEgc2hhbGxvdyBsaXN0IGlzIHNlbnQgb3IgMCBvdGhlcndpc2UgKi8KLXN0YXRpYyBpbnQgc2VuZF9zaGFsbG93X2xpc3QoaW50IGRlcHRoLCBpbnQgZGVlcGVuX3Jldl9saXN0LAorc3RhdGljIGludCBzZW5kX3NoYWxsb3dfbGlzdChzdHJ1Y3QgcGFja2V0X3dyaXRlciAqd3JpdGVyLAorCQkJICAgICBpbnQgZGVwdGgsIGludCBkZWVwZW5fcmV2X2xpc3QsCiAJCQkgICAgIHRpbWVzdGFtcF90IGRlZXBlbl9zaW5jZSwKIAkJCSAgICAgc3RydWN0IHN0cmluZ19saXN0ICpkZWVwZW5fbm90LAorCQkJICAgICBpbnQgZGVlcGVuX3JlbGF0aXZlLAogCQkJICAgICBzdHJ1Y3Qgb2JqZWN0X2FycmF5ICpzaGFsbG93cywKIAkJCSAgICAgc3RydWN0IG9iamVjdF9hcnJheSAqd2FudF9vYmopCiB7CkBAIC03MjAsNyArNzQyLDcgQEAKIAlpZiAoZGVwdGggPiAwICYmIGRlZXBlbl9yZXZfbGlzdCkKIAkJZGllKCJnaXQgdXBsb2FkLXBhY2s6IGRlZXBlbiBhbmQgZGVlcGVuLXNpbmNlIChvciBkZWVwZW4tbm90KSBjYW5ub3QgYmUgdXNlZCB0b2dldGhlciIpOwogCWlmIChkZXB0aCA+IDApIHsKLQkJZGVlcGVuKGRlcHRoLCBkZWVwZW5fcmVsYXRpdmUsIHNoYWxsb3dzLCB3YW50X29iaik7CisJCWRlZXBlbih3cml0ZXIsIGRlcHRoLCBkZWVwZW5fcmVsYXRpdmUsIHNoYWxsb3dzLCB3YW50X29iaik7CiAJCXJldCA9IDE7CiAJfSBlbHNlIGlmIChkZWVwZW5fcmV2X2xpc3QpIHsKIAkJc3RydWN0IGFyZ3ZfYXJyYXkgYXYgPSBBUkdWX0FSUkFZX0lOSVQ7CkBAIC03NDEsNyArNzYzLDcgQEAKIAkJCXN0cnVjdCBvYmplY3QgKm8gPSB3YW50X29iai0+b2JqZWN0c1tpXS5pdGVtOwogCQkJYXJndl9hcnJheV9wdXNoKCZhdiwgb2lkX3RvX2hleCgmby0+b2lkKSk7CiAJCX0KLQkJZGVlcGVuX2J5X3Jldl9saXN0KGF2LmFyZ2MsIGF2LmFyZ3YsIHNoYWxsb3dzLCB3YW50X29iaik7CisJCWRlZXBlbl9ieV9yZXZfbGlzdCh3cml0ZXIsIGF2LmFyZ2MsIGF2LmFyZ3YsIHNoYWxsb3dzLCB3YW50X29iaik7CiAJCWFyZ3ZfYXJyYXlfY2xlYXIoJmF2KTsKIAkJcmV0ID0gMTsKIAl9IGVsc2UgewpAQCAtODE2LDcgKzgzOCw3IEBACiAJaWYgKHNraXBfcHJlZml4KGxpbmUsICJkZWVwZW4tbm90ICIsICZhcmcpKSB7CiAJCWNoYXIgKnJlZiA9IE5VTEw7CiAJCXN0cnVjdCBvYmplY3RfaWQgb2lkOwotCQlpZiAoZXhwYW5kX3JlZihhcmcsIHN0cmxlbihhcmcpLCAmb2lkLCAmcmVmKSAhPSAxKQorCQlpZiAoZXhwYW5kX3JlZih0aGVfcmVwb3NpdG9yeSwgYXJnLCBzdHJsZW4oYXJnKSwgJm9pZCwgJnJlZikgIT0gMSkKIAkJCWRpZSgiZ2l0IHVwbG9hZC1wYWNrOiBhbWJpZ3VvdXMgZGVlcGVuLW5vdDogJXMiLCBsaW5lKTsKIAkJc3RyaW5nX2xpc3RfYXBwZW5kKGRlZXBlbl9ub3QsIHJlZik7CiAJCWZyZWUocmVmKTsKQEAgLTgyNiw3ICs4NDgsNyBAQAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgdm9pZCByZWNlaXZlX25lZWRzKHN0cnVjdCBvYmplY3RfYXJyYXkgKndhbnRfb2JqKQorc3RhdGljIHZvaWQgcmVjZWl2ZV9uZWVkcyhzdHJ1Y3QgcGFja2V0X3JlYWRlciAqcmVhZGVyLCBzdHJ1Y3Qgb2JqZWN0X2FycmF5ICp3YW50X29iaikKIHsKIAlzdHJ1Y3Qgb2JqZWN0X2FycmF5IHNoYWxsb3dzID0gT0JKRUNUX0FSUkFZX0lOSVQ7CiAJc3RydWN0IHN0cmluZ19saXN0IGRlZXBlbl9ub3QgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKQEAgLTgzNCwzOSArODU2LDQyIEBACiAJaW50IGhhc19ub25fdGlwID0gMDsKIAl0aW1lc3RhbXBfdCBkZWVwZW5fc2luY2UgPSAwOwogCWludCBkZWVwZW5fcmV2X2xpc3QgPSAwOworCWludCBkZWVwZW5fcmVsYXRpdmUgPSAwOworCXN0cnVjdCBwYWNrZXRfd3JpdGVyIHdyaXRlcjsKIAogCXNoYWxsb3dfbnIgPSAwOworCXBhY2tldF93cml0ZXJfaW5pdCgmd3JpdGVyLCAxKTsKIAlmb3IgKDs7KSB7CiAJCXN0cnVjdCBvYmplY3QgKm87CiAJCWNvbnN0IGNoYXIgKmZlYXR1cmVzOwogCQlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZF9idWY7Ci0JCWNoYXIgKmxpbmUgPSBwYWNrZXRfcmVhZF9saW5lKDAsIE5VTEwpOwogCQljb25zdCBjaGFyICphcmc7CiAKIAkJcmVzZXRfdGltZW91dCgpOwotCQlpZiAoIWxpbmUpCisJCWlmIChwYWNrZXRfcmVhZGVyX3JlYWQocmVhZGVyKSAhPSBQQUNLRVRfUkVBRF9OT1JNQUwpCiAJCQlicmVhazsKIAotCQlpZiAocHJvY2Vzc19zaGFsbG93KGxpbmUsICZzaGFsbG93cykpCisJCWlmIChwcm9jZXNzX3NoYWxsb3cocmVhZGVyLT5saW5lLCAmc2hhbGxvd3MpKQogCQkJY29udGludWU7Ci0JCWlmIChwcm9jZXNzX2RlZXBlbihsaW5lLCAmZGVwdGgpKQorCQlpZiAocHJvY2Vzc19kZWVwZW4ocmVhZGVyLT5saW5lLCAmZGVwdGgpKQogCQkJY29udGludWU7Ci0JCWlmIChwcm9jZXNzX2RlZXBlbl9zaW5jZShsaW5lLCAmZGVlcGVuX3NpbmNlLCAmZGVlcGVuX3Jldl9saXN0KSkKKwkJaWYgKHByb2Nlc3NfZGVlcGVuX3NpbmNlKHJlYWRlci0+bGluZSwgJmRlZXBlbl9zaW5jZSwgJmRlZXBlbl9yZXZfbGlzdCkpCiAJCQljb250aW51ZTsKLQkJaWYgKHByb2Nlc3NfZGVlcGVuX25vdChsaW5lLCAmZGVlcGVuX25vdCwgJmRlZXBlbl9yZXZfbGlzdCkpCisJCWlmIChwcm9jZXNzX2RlZXBlbl9ub3QocmVhZGVyLT5saW5lLCAmZGVlcGVuX25vdCwgJmRlZXBlbl9yZXZfbGlzdCkpCiAJCQljb250aW51ZTsKIAotCQlpZiAoc2tpcF9wcmVmaXgobGluZSwgImZpbHRlciAiLCAmYXJnKSkgeworCQlpZiAoc2tpcF9wcmVmaXgocmVhZGVyLT5saW5lLCAiZmlsdGVyICIsICZhcmcpKSB7CiAJCQlpZiAoIWZpbHRlcl9jYXBhYmlsaXR5X3JlcXVlc3RlZCkKIAkJCQlkaWUoImdpdCB1cGxvYWQtcGFjazogZmlsdGVyaW5nIGNhcGFiaWxpdHkgbm90IG5lZ290aWF0ZWQiKTsKKwkJCWxpc3Rfb2JqZWN0c19maWx0ZXJfZGllX2lmX3BvcHVsYXRlZCgmZmlsdGVyX29wdGlvbnMpOwogCQkJcGFyc2VfbGlzdF9vYmplY3RzX2ZpbHRlcigmZmlsdGVyX29wdGlvbnMsIGFyZyk7CiAJCQljb250aW51ZTsKIAkJfQogCi0JCWlmICghc2tpcF9wcmVmaXgobGluZSwgIndhbnQgIiwgJmFyZykgfHwKKwkJaWYgKCFza2lwX3ByZWZpeChyZWFkZXItPmxpbmUsICJ3YW50ICIsICZhcmcpIHx8CiAJCSAgICBwYXJzZV9vaWRfaGV4KGFyZywgJm9pZF9idWYsICZmZWF0dXJlcykpCiAJCQlkaWUoImdpdCB1cGxvYWQtcGFjazogcHJvdG9jb2wgZXJyb3IsICIKLQkJCSAgICAiZXhwZWN0ZWQgdG8gZ2V0IG9iamVjdCBJRCwgbm90ICclcyciLCBsaW5lKTsKKwkJCSAgICAiZXhwZWN0ZWQgdG8gZ2V0IG9iamVjdCBJRCwgbm90ICclcyciLCByZWFkZXItPmxpbmUpOwogCiAJCWlmIChwYXJzZV9mZWF0dXJlX3JlcXVlc3QoZmVhdHVyZXMsICJkZWVwZW4tcmVsYXRpdmUiKSkKIAkJCWRlZXBlbl9yZWxhdGl2ZSA9IDE7CkBAIC04OTMsOSArOTE4LDkgQEAKIAogCQlvID0gcGFyc2Vfb2JqZWN0KHRoZV9yZXBvc2l0b3J5LCAmb2lkX2J1Zik7CiAJCWlmICghbykgewotCQkJcGFja2V0X3dyaXRlX2ZtdCgxLAotCQkJCQkgIkVSUiB1cGxvYWQtcGFjazogbm90IG91ciByZWYgJXMiLAotCQkJCQkgb2lkX3RvX2hleCgmb2lkX2J1ZikpOworCQkJcGFja2V0X3dyaXRlcl9lcnJvcigmd3JpdGVyLAorCQkJCQkgICAgInVwbG9hZC1wYWNrOiBub3Qgb3VyIHJlZiAlcyIsCisJCQkJCSAgICBvaWRfdG9faGV4KCZvaWRfYnVmKSk7CiAJCQlkaWUoImdpdCB1cGxvYWQtcGFjazogbm90IG91ciByZWYgJXMiLAogCQkJICAgIG9pZF90b19oZXgoJm9pZF9idWYpKTsKIAkJfQpAQCAtOTE2LDcgKzk0MSw3IEBACiAJICogYnkgYW5vdGhlciBwcm9jZXNzIHRoYXQgaGFuZGxlZCB0aGUgaW5pdGlhbCByZXF1ZXN0LgogCSAqLwogCWlmIChoYXNfbm9uX3RpcCkKLQkJY2hlY2tfbm9uX3RpcCh3YW50X29iaik7CisJCWNoZWNrX25vbl90aXAod2FudF9vYmosICZ3cml0ZXIpOwogCiAJaWYgKCF1c2Vfc2lkZWJhbmQgJiYgZGFlbW9uX21vZGUpCiAJCW5vX3Byb2dyZXNzID0gMTsKQEAgLTkyNCw4ICs5NDksOSBAQAogCWlmIChkZXB0aCA9PSAwICYmICFkZWVwZW5fcmV2X2xpc3QgJiYgc2hhbGxvd3MubnIgPT0gMCkKIAkJcmV0dXJuOwogCi0JaWYgKHNlbmRfc2hhbGxvd19saXN0KGRlcHRoLCBkZWVwZW5fcmV2X2xpc3QsIGRlZXBlbl9zaW5jZSwKLQkJCSAgICAgICZkZWVwZW5fbm90LCAmc2hhbGxvd3MsIHdhbnRfb2JqKSkKKwlpZiAoc2VuZF9zaGFsbG93X2xpc3QoJndyaXRlciwgZGVwdGgsIGRlZXBlbl9yZXZfbGlzdCwgZGVlcGVuX3NpbmNlLAorCQkJICAgICAgJmRlZXBlbl9ub3QsIGRlZXBlbl9yZWxhdGl2ZSwgJnNoYWxsb3dzLAorCQkJICAgICAgd2FudF9vYmopKQogCQlwYWNrZXRfZmx1c2goMSk7CiAJb2JqZWN0X2FycmF5X2NsZWFyKCZzaGFsbG93cyk7CiB9CkBAIC05MzQsNyArOTYwLDcgQEAKIHN0YXRpYyBpbnQgbWFya19vdXJfcmVmKGNvbnN0IGNoYXIgKnJlZm5hbWUsIGNvbnN0IGNoYXIgKnJlZm5hbWVfZnVsbCwKIAkJCWNvbnN0IHN0cnVjdCBvYmplY3RfaWQgKm9pZCkKIHsKLQlzdHJ1Y3Qgb2JqZWN0ICpvID0gbG9va3VwX3Vua25vd25fb2JqZWN0KG9pZC0+aGFzaCk7CisJc3RydWN0IG9iamVjdCAqbyA9IGxvb2t1cF91bmtub3duX29iamVjdChvaWQpOwogCiAJaWYgKHJlZl9pc19oaWRkZW4ocmVmbmFtZSwgcmVmbmFtZV9mdWxsKSkgewogCQlvLT5mbGFncyB8PSBISURERU5fUkVGOwpAQCAtMTAxMSw4ICsxMDM3LDggQEAKIAlzeW1yZWZfdGFyZ2V0ID0gcmVzb2x2ZV9yZWZfdW5zYWZlKHJlZm5hbWUsIDAsIE5VTEwsICZmbGFnKTsKIAlpZiAoIXN5bXJlZl90YXJnZXQgfHwgKGZsYWcgJiBSRUZfSVNTWU1SRUYpID09IDApCiAJCWRpZSgiJyVzJyBpcyBhIHN5bXJlZiBidXQgaXQgaXMgbm90PyIsIHJlZm5hbWUpOwotCWl0ZW0gPSBzdHJpbmdfbGlzdF9hcHBlbmQoY2JfZGF0YSwgcmVmbmFtZSk7Ci0JaXRlbS0+dXRpbCA9IHhzdHJkdXAoc3ltcmVmX3RhcmdldCk7CisJaXRlbSA9IHN0cmluZ19saXN0X2FwcGVuZChjYl9kYXRhLCBzdHJpcF9uYW1lc3BhY2UocmVmbmFtZSkpOworCWl0ZW0tPnV0aWwgPSB4c3RyZHVwKHN0cmlwX25hbWVzcGFjZShzeW1yZWZfdGFyZ2V0KSk7CiAJcmV0dXJuIDA7CiB9CiAKQEAgLTEwNDEsOSArMTA2NywxNCBAQAogCQlhbGxvd19maWx0ZXIgPSBnaXRfY29uZmlnX2Jvb2wodmFyLCB2YWx1ZSk7CiAJfSBlbHNlIGlmICghc3RyY21wKCJ1cGxvYWRwYWNrLmFsbG93cmVmaW53YW50IiwgdmFyKSkgewogCQlhbGxvd19yZWZfaW5fd2FudCA9IGdpdF9jb25maWdfYm9vbCh2YXIsIHZhbHVlKTsKKwl9IGVsc2UgaWYgKCFzdHJjbXAoInVwbG9hZHBhY2suYWxsb3dzaWRlYmFuZGFsbCIsIHZhcikpIHsKKwkJYWxsb3dfc2lkZWJhbmRfYWxsID0gZ2l0X2NvbmZpZ19ib29sKHZhciwgdmFsdWUpOworCX0gZWxzZSBpZiAoIXN0cmNtcCgiY29yZS5wcmVjb21wb3NldW5pY29kZSIsIHZhcikpIHsKKwkJcHJlY29tcG9zZWRfdW5pY29kZSA9IGdpdF9jb25maWdfYm9vbCh2YXIsIHZhbHVlKTsKIAl9CiAKLQlpZiAoY3VycmVudF9jb25maWdfc2NvcGUoKSAhPSBDT05GSUdfU0NPUEVfUkVQTykgeworCWlmIChjdXJyZW50X2NvbmZpZ19zY29wZSgpICE9IENPTkZJR19TQ09QRV9MT0NBTCAmJgorCWN1cnJlbnRfY29uZmlnX3Njb3BlKCkgIT0gQ09ORklHX1NDT1BFX1dPUktUUkVFKSB7CiAJCWlmICghc3RyY21wKCJ1cGxvYWRwYWNrLnBhY2tvYmplY3RzaG9vayIsIHZhcikpCiAJCQlyZXR1cm4gZ2l0X2NvbmZpZ19zdHJpbmcoJnBhY2tfb2JqZWN0c19ob29rLCB2YXIsIHZhbHVlKTsKIAl9CkBAIC0xMDU1LDYgKzEwODYsNyBAQAogewogCXN0cnVjdCBzdHJpbmdfbGlzdCBzeW1yZWYgPSBTVFJJTkdfTElTVF9JTklUX0RVUDsKIAlzdHJ1Y3Qgb2JqZWN0X2FycmF5IHdhbnRfb2JqID0gT0JKRUNUX0FSUkFZX0lOSVQ7CisJc3RydWN0IHBhY2tldF9yZWFkZXIgcmVhZGVyOwogCiAJc3RhdGVsZXNzX3JwYyA9IG9wdGlvbnMtPnN0YXRlbGVzc19ycGM7CiAJdGltZW91dCA9IG9wdGlvbnMtPnRpbWVvdXQ7CkBAIC0xMDc4LDEwICsxMTEwLDE0IEBACiAJaWYgKG9wdGlvbnMtPmFkdmVydGlzZV9yZWZzKQogCQlyZXR1cm47CiAKLQlyZWNlaXZlX25lZWRzKCZ3YW50X29iaik7CisJcGFja2V0X3JlYWRlcl9pbml0KCZyZWFkZXIsIDAsIE5VTEwsIDAsCisJCQkgICBQQUNLRVRfUkVBRF9DSE9NUF9ORVdMSU5FIHwKKwkJCSAgIFBBQ0tFVF9SRUFEX0RJRV9PTl9FUlJfUEFDS0VUKTsKKworCXJlY2VpdmVfbmVlZHMoJnJlYWRlciwgJndhbnRfb2JqKTsKIAlpZiAod2FudF9vYmoubnIpIHsKIAkJc3RydWN0IG9iamVjdF9hcnJheSBoYXZlX29iaiA9IE9CSkVDVF9BUlJBWV9JTklUOwotCQlnZXRfY29tbW9uX2NvbW1pdHMoJmhhdmVfb2JqLCAmd2FudF9vYmopOworCQlnZXRfY29tbW9uX2NvbW1pdHMoJnJlYWRlciwgJmhhdmVfb2JqLCAmd2FudF9vYmopOwogCQljcmVhdGVfcGFja19maWxlKCZoYXZlX29iaiwgJndhbnRfb2JqKTsKIAl9CiB9CkBAIC0xMDk4LDYgKzExMzQsOCBAQAogCWludCBkZWVwZW5fcmV2X2xpc3Q7CiAJaW50IGRlZXBlbl9yZWxhdGl2ZTsKIAorCXN0cnVjdCBwYWNrZXRfd3JpdGVyIHdyaXRlcjsKKwogCXVuc2lnbmVkIHN0YXRlbGVzc19ycGMgOiAxOwogCiAJdW5zaWduZWQgdXNlX3RoaW5fcGFjayA6IDE7CkBAIC0xMTIxLDYgKzExNTksNyBAQAogCWRhdGEtPmhhdmVzID0gaGF2ZXM7CiAJZGF0YS0+c2hhbGxvd3MgPSBzaGFsbG93czsKIAlkYXRhLT5kZWVwZW5fbm90ID0gZGVlcGVuX25vdDsKKwlwYWNrZXRfd3JpdGVyX2luaXQoJmRhdGEtPndyaXRlciwgMSk7CiB9CiAKIHN0YXRpYyB2b2lkIHVwbG9hZF9wYWNrX2RhdGFfY2xlYXIoc3RydWN0IHVwbG9hZF9wYWNrX2RhdGEgKmRhdGEpCkBAIC0xMTMyLDcgKzExNzEsOCBAQAogCXN0cmluZ19saXN0X2NsZWFyKCZkYXRhLT5kZWVwZW5fbm90LCAwKTsKIH0KIAotc3RhdGljIGludCBwYXJzZV93YW50KGNvbnN0IGNoYXIgKmxpbmUsIHN0cnVjdCBvYmplY3RfYXJyYXkgKndhbnRfb2JqKQorc3RhdGljIGludCBwYXJzZV93YW50KHN0cnVjdCBwYWNrZXRfd3JpdGVyICp3cml0ZXIsIGNvbnN0IGNoYXIgKmxpbmUsCisJCSAgICAgIHN0cnVjdCBvYmplY3RfYXJyYXkgKndhbnRfb2JqKQogewogCWNvbnN0IGNoYXIgKmFyZzsKIAlpZiAoc2tpcF9wcmVmaXgobGluZSwgIndhbnQgIiwgJmFyZykpIHsKQEAgLTExNDUsOSArMTE4NSw5IEBACiAKIAkJbyA9IHBhcnNlX29iamVjdCh0aGVfcmVwb3NpdG9yeSwgJm9pZCk7CiAJCWlmICghbykgewotCQkJcGFja2V0X3dyaXRlX2ZtdCgxLAotCQkJCQkgIkVSUiB1cGxvYWQtcGFjazogbm90IG91ciByZWYgJXMiLAotCQkJCQkgb2lkX3RvX2hleCgmb2lkKSk7CisJCQlwYWNrZXRfd3JpdGVyX2Vycm9yKHdyaXRlciwKKwkJCQkJICAgICJ1cGxvYWQtcGFjazogbm90IG91ciByZWYgJXMiLAorCQkJCQkgICAgb2lkX3RvX2hleCgmb2lkKSk7CiAJCQlkaWUoImdpdCB1cGxvYWQtcGFjazogbm90IG91ciByZWYgJXMiLAogCQkJICAgIG9pZF90b19oZXgoJm9pZCkpOwogCQl9CkBAIC0xMTYzLDcgKzEyMDMsOCBAQAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IHBhcnNlX3dhbnRfcmVmKGNvbnN0IGNoYXIgKmxpbmUsIHN0cnVjdCBzdHJpbmdfbGlzdCAqd2FudGVkX3JlZnMsCitzdGF0aWMgaW50IHBhcnNlX3dhbnRfcmVmKHN0cnVjdCBwYWNrZXRfd3JpdGVyICp3cml0ZXIsIGNvbnN0IGNoYXIgKmxpbmUsCisJCQkgIHN0cnVjdCBzdHJpbmdfbGlzdCAqd2FudGVkX3JlZnMsCiAJCQkgIHN0cnVjdCBvYmplY3RfYXJyYXkgKndhbnRfb2JqKQogewogCWNvbnN0IGNoYXIgKmFyZzsKQEAgLTExNzMsNyArMTIxNCw3IEBACiAJCXN0cnVjdCBvYmplY3QgKm87CiAKIAkJaWYgKHJlYWRfcmVmKGFyZywgJm9pZCkpIHsKLQkJCXBhY2tldF93cml0ZV9mbXQoMSwgIkVSUiB1bmtub3duIHJlZiAlcyIsIGFyZyk7CisJCQlwYWNrZXRfd3JpdGVyX2Vycm9yKHdyaXRlciwgInVua25vd24gcmVmICVzIiwgYXJnKTsKIAkJCWRpZSgidW5rbm93biByZWYgJXMiLCBhcmcpOwogCQl9CiAKQEAgLTEyMTYsMTAgKzEyNTcsMTEgQEAKIAkJY29uc3QgY2hhciAqcDsKIAogCQkvKiBwcm9jZXNzIHdhbnQgKi8KLQkJaWYgKHBhcnNlX3dhbnQoYXJnLCB3YW50X29iaikpCisJCWlmIChwYXJzZV93YW50KCZkYXRhLT53cml0ZXIsIGFyZywgd2FudF9vYmopKQogCQkJY29udGludWU7CiAJCWlmIChhbGxvd19yZWZfaW5fd2FudCAmJgotCQkgICAgcGFyc2Vfd2FudF9yZWYoYXJnLCAmZGF0YS0+d2FudGVkX3JlZnMsIHdhbnRfb2JqKSkKKwkJICAgIHBhcnNlX3dhbnRfcmVmKCZkYXRhLT53cml0ZXIsIGFyZywgJmRhdGEtPndhbnRlZF9yZWZzLAorCQkJCSAgIHdhbnRfb2JqKSkKIAkJCWNvbnRpbnVlOwogCQkvKiBwcm9jZXNzIGhhdmUgbGluZSAqLwogCQlpZiAocGFyc2VfaGF2ZShhcmcsICZkYXRhLT5oYXZlcykpCkBAIC0xMjY0LDEwICsxMzA2LDE4IEBACiAJCX0KIAogCQlpZiAoYWxsb3dfZmlsdGVyICYmIHNraXBfcHJlZml4KGFyZywgImZpbHRlciAiLCAmcCkpIHsKKwkJCWxpc3Rfb2JqZWN0c19maWx0ZXJfZGllX2lmX3BvcHVsYXRlZCgmZmlsdGVyX29wdGlvbnMpOwogCQkJcGFyc2VfbGlzdF9vYmplY3RzX2ZpbHRlcigmZmlsdGVyX29wdGlvbnMsIHApOwogCQkJY29udGludWU7CiAJCX0KIAorCQlpZiAoKGdpdF9lbnZfYm9vbCgiR0lUX1RFU1RfU0lERUJBTkRfQUxMIiwgMCkgfHwKKwkJICAgICBhbGxvd19zaWRlYmFuZF9hbGwpICYmCisJCSAgICAhc3RyY21wKGFyZywgInNpZGViYW5kLWFsbCIpKSB7CisJCQlkYXRhLT53cml0ZXIudXNlX3NpZGViYW5kID0gMTsKKwkJCWNvbnRpbnVlOworCQl9CisKIAkJLyogaWdub3JlIHVua25vd24gbGluZXMgbWF5YmU/ICovCiAJCWRpZSgidW5leHBlY3RlZCBsaW5lOiAnJXMnIiwgYXJnKTsKIAl9CkBAIC0xMzEzLDI2ICsxMzYzLDI2IEBACiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgc2VuZF9hY2tzKHN0cnVjdCBvaWRfYXJyYXkgKmFja3MsIHN0cnVjdCBzdHJidWYgKnJlc3BvbnNlLAorc3RhdGljIGludCBzZW5kX2Fja3Moc3RydWN0IHBhY2tldF93cml0ZXIgKndyaXRlciwgc3RydWN0IG9pZF9hcnJheSAqYWNrcywKIAkJICAgICBjb25zdCBzdHJ1Y3Qgb2JqZWN0X2FycmF5ICpoYXZlX29iaiwKIAkJICAgICBzdHJ1Y3Qgb2JqZWN0X2FycmF5ICp3YW50X29iaikKIHsKIAlpbnQgaTsKIAotCXBhY2tldF9idWZfd3JpdGUocmVzcG9uc2UsICJhY2tub3dsZWRnbWVudHNcbiIpOworCXBhY2tldF93cml0ZXJfd3JpdGUod3JpdGVyLCAiYWNrbm93bGVkZ21lbnRzXG4iKTsKIAogCS8qIFNlbmQgQWNrcyAqLwogCWlmICghYWNrcy0+bnIpCi0JCXBhY2tldF9idWZfd3JpdGUocmVzcG9uc2UsICJOQUtcbiIpOworCQlwYWNrZXRfd3JpdGVyX3dyaXRlKHdyaXRlciwgIk5BS1xuIik7CiAKIAlmb3IgKGkgPSAwOyBpIDwgYWNrcy0+bnI7IGkrKykgewotCQlwYWNrZXRfYnVmX3dyaXRlKHJlc3BvbnNlLCAiQUNLICVzXG4iLAotCQkJCSBvaWRfdG9faGV4KCZhY2tzLT5vaWRbaV0pKTsKKwkJcGFja2V0X3dyaXRlcl93cml0ZSh3cml0ZXIsICJBQ0sgJXNcbiIsCisJCQkJICAgIG9pZF90b19oZXgoJmFja3MtPm9pZFtpXSkpOwogCX0KIAogCWlmIChva190b19naXZlX3VwKGhhdmVfb2JqLCB3YW50X29iaikpIHsKIAkJLyogU2VuZCBSZWFkeSAqLwotCQlwYWNrZXRfYnVmX3dyaXRlKHJlc3BvbnNlLCAicmVhZHlcbiIpOworCQlwYWNrZXRfd3JpdGVyX3dyaXRlKHdyaXRlciwgInJlYWR5XG4iKTsKIAkJcmV0dXJuIDE7CiAJfQogCkBAIC0xMzQ0LDI1ICsxMzk0LDIwIEBACiAJCQkJICAgICAgIHN0cnVjdCBvYmplY3RfYXJyYXkgKndhbnRfb2JqKQogewogCXN0cnVjdCBvaWRfYXJyYXkgY29tbW9uID0gT0lEX0FSUkFZX0lOSVQ7Ci0Jc3RydWN0IHN0cmJ1ZiByZXNwb25zZSA9IFNUUkJVRl9JTklUOwogCWludCByZXQgPSAwOwogCiAJcHJvY2Vzc19oYXZlcygmZGF0YS0+aGF2ZXMsICZjb21tb24sIGhhdmVfb2JqKTsKIAlpZiAoZGF0YS0+ZG9uZSkgewogCQlyZXQgPSAxOwotCX0gZWxzZSBpZiAoc2VuZF9hY2tzKCZjb21tb24sICZyZXNwb25zZSwgaGF2ZV9vYmosIHdhbnRfb2JqKSkgewotCQlwYWNrZXRfYnVmX2RlbGltKCZyZXNwb25zZSk7CisJfSBlbHNlIGlmIChzZW5kX2Fja3MoJmRhdGEtPndyaXRlciwgJmNvbW1vbiwgaGF2ZV9vYmosIHdhbnRfb2JqKSkgeworCQlwYWNrZXRfd3JpdGVyX2RlbGltKCZkYXRhLT53cml0ZXIpOwogCQlyZXQgPSAxOwogCX0gZWxzZSB7CiAJCS8qIEFkZCBGbHVzaCAqLwotCQlwYWNrZXRfYnVmX2ZsdXNoKCZyZXNwb25zZSk7CisJCXBhY2tldF93cml0ZXJfZmx1c2goJmRhdGEtPndyaXRlcik7CiAJCXJldCA9IDA7CiAJfQogCi0JLyogU2VuZCByZXNwb25zZSAqLwotCXdyaXRlX29yX2RpZSgxLCByZXNwb25zZS5idWYsIHJlc3BvbnNlLmxlbik7Ci0Jc3RyYnVmX3JlbGVhc2UoJnJlc3BvbnNlKTsKLQogCW9pZF9hcnJheV9jbGVhcigmZGF0YS0+aGF2ZXMpOwogCW9pZF9hcnJheV9jbGVhcigmY29tbW9uKTsKIAlyZXR1cm4gcmV0OwpAQCAtMTM3NSwxNSArMTQyMCwxNSBAQAogCWlmICghZGF0YS0+d2FudGVkX3JlZnMubnIpCiAJCXJldHVybjsKIAotCXBhY2tldF93cml0ZV9mbXQoMSwgIndhbnRlZC1yZWZzXG4iKTsKKwlwYWNrZXRfd3JpdGVyX3dyaXRlKCZkYXRhLT53cml0ZXIsICJ3YW50ZWQtcmVmc1xuIik7CiAKIAlmb3JfZWFjaF9zdHJpbmdfbGlzdF9pdGVtKGl0ZW0sICZkYXRhLT53YW50ZWRfcmVmcykgewotCQlwYWNrZXRfd3JpdGVfZm10KDEsICIlcyAlc1xuIiwKLQkJCQkgb2lkX3RvX2hleChpdGVtLT51dGlsKSwKLQkJCQkgaXRlbS0+c3RyaW5nKTsKKwkJcGFja2V0X3dyaXRlcl93cml0ZSgmZGF0YS0+d3JpdGVyLCAiJXMgJXNcbiIsCisJCQkJICAgIG9pZF90b19oZXgoaXRlbS0+dXRpbCksCisJCQkJICAgIGl0ZW0tPnN0cmluZyk7CiAJfQogCi0JcGFja2V0X2RlbGltKDEpOworCXBhY2tldF93cml0ZXJfZGVsaW0oJmRhdGEtPndyaXRlcik7CiB9CiAKIHN0YXRpYyB2b2lkIHNlbmRfc2hhbGxvd19pbmZvKHN0cnVjdCB1cGxvYWRfcGFja19kYXRhICpkYXRhLApAQCAtMTM5NCwxNCArMTQzOSwxNiBAQAogCSAgICAhaXNfcmVwb3NpdG9yeV9zaGFsbG93KHRoZV9yZXBvc2l0b3J5KSkKIAkJcmV0dXJuOwogCi0JcGFja2V0X3dyaXRlX2ZtdCgxLCAic2hhbGxvdy1pbmZvXG4iKTsKKwlwYWNrZXRfd3JpdGVyX3dyaXRlKCZkYXRhLT53cml0ZXIsICJzaGFsbG93LWluZm9cbiIpOwogCi0JaWYgKCFzZW5kX3NoYWxsb3dfbGlzdChkYXRhLT5kZXB0aCwgZGF0YS0+ZGVlcGVuX3Jldl9saXN0LAorCWlmICghc2VuZF9zaGFsbG93X2xpc3QoJmRhdGEtPndyaXRlciwgZGF0YS0+ZGVwdGgsCisJCQkgICAgICAgZGF0YS0+ZGVlcGVuX3Jldl9saXN0LAogCQkJICAgICAgIGRhdGEtPmRlZXBlbl9zaW5jZSwgJmRhdGEtPmRlZXBlbl9ub3QsCisJCQkgICAgICAgZGF0YS0+ZGVlcGVuX3JlbGF0aXZlLAogCQkJICAgICAgICZkYXRhLT5zaGFsbG93cywgd2FudF9vYmopICYmCiAJICAgIGlzX3JlcG9zaXRvcnlfc2hhbGxvdyh0aGVfcmVwb3NpdG9yeSkpCi0JCWRlZXBlbihJTkZJTklURV9ERVBUSCwgZGF0YS0+ZGVlcGVuX3JlbGF0aXZlLCAmZGF0YS0+c2hhbGxvd3MsCi0JCSAgICAgICB3YW50X29iaik7CisJCWRlZXBlbigmZGF0YS0+d3JpdGVyLCBJTkZJTklURV9ERVBUSCwgZGF0YS0+ZGVlcGVuX3JlbGF0aXZlLAorCQkgICAgICAgJmRhdGEtPnNoYWxsb3dzLCB3YW50X29iaik7CiAKIAlwYWNrZXRfZGVsaW0oMSk7CiB9CkBAIC0xNDYzLDcgKzE1MTAsNyBAQAogCQkJc2VuZF93YW50ZWRfcmVmX2luZm8oJmRhdGEpOwogCQkJc2VuZF9zaGFsbG93X2luZm8oJmRhdGEsICZ3YW50X29iaik7CiAKLQkJCXBhY2tldF93cml0ZV9mbXQoMSwgInBhY2tmaWxlXG4iKTsKKwkJCXBhY2tldF93cml0ZXJfd3JpdGUoJmRhdGEud3JpdGVyLCAicGFja2ZpbGVcbiIpOwogCQkJY3JlYXRlX3BhY2tfZmlsZSgmaGF2ZV9vYmosICZ3YW50X29iaik7CiAJCQlzdGF0ZSA9IEZFVENIX0RPTkU7CiAJCQlicmVhazsKQEAgLTE0ODQsNiArMTUzMSw3IEBACiAJaWYgKHZhbHVlKSB7CiAJCWludCBhbGxvd19maWx0ZXJfdmFsdWU7CiAJCWludCBhbGxvd19yZWZfaW5fd2FudDsKKwkJaW50IGFsbG93X3NpZGViYW5kX2FsbF92YWx1ZTsKIAogCQlzdHJidWZfYWRkc3RyKHZhbHVlLCAic2hhbGxvdyIpOwogCkBAIC0xNDk4LDYgKzE1NDYsMTMgQEAKIAkJCQkJICZhbGxvd19yZWZfaW5fd2FudCkgJiYKIAkJICAgIGFsbG93X3JlZl9pbl93YW50KQogCQkJc3RyYnVmX2FkZHN0cih2YWx1ZSwgIiByZWYtaW4td2FudCIpOworCisJCWlmIChnaXRfZW52X2Jvb2woIkdJVF9URVNUX1NJREVCQU5EX0FMTCIsIDApIHx8CisJCSAgICAoIXJlcG9fY29uZmlnX2dldF9ib29sKHRoZV9yZXBvc2l0b3J5LAorCQkJCQkgICAidXBsb2FkcGFjay5hbGxvd3NpZGViYW5kYWxsIiwKKwkJCQkJICAgJmFsbG93X3NpZGViYW5kX2FsbF92YWx1ZSkgJiYKKwkJICAgICBhbGxvd19zaWRlYmFuZF9hbGxfdmFsdWUpKQorCQkJc3RyYnVmX2FkZHN0cih2YWx1ZSwgIiBzaWRlYmFuZC1hbGwiKTsKIAl9CiAKIAlyZXR1cm4gMTsKZGlmZiAtLWdpdCBhL3VwbG9hZC1wYWNrLmggYi91cGxvYWQtcGFjay5oCmluZGV4IGNhYjIxNzguLjRiYWZlMTYgMTAwNjQ0Ci0tLSBhL3VwbG9hZC1wYWNrLmgKKysrIGIvdXBsb2FkLXBhY2suaApAQCAtMTMsMTEgKzEzLDExIEBACiBzdHJ1Y3QgcmVwb3NpdG9yeTsKIHN0cnVjdCBhcmd2X2FycmF5Owogc3RydWN0IHBhY2tldF9yZWFkZXI7Ci1leHRlcm4gaW50IHVwbG9hZF9wYWNrX3YyKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgYXJndl9hcnJheSAqa2V5cywKLQkJCSAgc3RydWN0IHBhY2tldF9yZWFkZXIgKnJlcXVlc3QpOworaW50IHVwbG9hZF9wYWNrX3YyKHN0cnVjdCByZXBvc2l0b3J5ICpyLCBzdHJ1Y3QgYXJndl9hcnJheSAqa2V5cywKKwkJICAgc3RydWN0IHBhY2tldF9yZWFkZXIgKnJlcXVlc3QpOwogCiBzdHJ1Y3Qgc3RyYnVmOwotZXh0ZXJuIGludCB1cGxvYWRfcGFja19hZHZlcnRpc2Uoc3RydWN0IHJlcG9zaXRvcnkgKnIsCi0JCQkJIHN0cnVjdCBzdHJidWYgKnZhbHVlKTsKK2ludCB1cGxvYWRfcGFja19hZHZlcnRpc2Uoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgIHN0cnVjdCBzdHJidWYgKnZhbHVlKTsKIAogI2VuZGlmIC8qIFVQTE9BRF9QQUNLX0ggKi8KZGlmZiAtLWdpdCBhL3VybC5jIGIvdXJsLmMKaW5kZXggZWFmNGYwNy4uZTA0YmQ2MCAxMDA2NDQKLS0tIGEvdXJsLmMKKysrIGIvdXJsLmMKQEAgLTUsNyArNSw3IEBACiB7CiAJLyoKIAkgKiBUaGUgc2V0IG9mIHZhbGlkIFVSTCBzY2hlbWVzLCBhcyBwZXIgU1RENjYgKFJGQzM5ODYpIGlzCi0JICogJ1tBLVphLXpdW0EtWmEtejAtOSsuLV0qJy4gQnV0IHVzZSBzaWdodGx5IGxvb3NlciBjaGVjaworCSAqICdbQS1aYS16XVtBLVphLXowLTkrLi1dKicuIEJ1dCB1c2Ugc2xpZ2h0bHkgbG9vc2VyIGNoZWNrCiAJICogb2YgJ1tBLVphLXowLTldW0EtWmEtejAtOSsuLV0qJyBiZWNhdXNlIGVhcmxpZXIgdmVyc2lvbgogCSAqIG9mIGNoZWNrIHVzZWQgJ1tBLVphLXowLTldKycgc28gbm90IHRvIGJyZWFrIGFueSByZW1vdGUKIAkgKiBoZWxwZXJzLgpAQCAtNDYsOSArNDYsOSBAQAogCQkJYnJlYWs7CiAJCX0KIAotCQlpZiAoYyA9PSAnJScpIHsKKwkJaWYgKGMgPT0gJyUnICYmIChsZW4gPCAwIHx8IGxlbiA+PSAzKSkgewogCQkJaW50IHZhbCA9IGhleDJjaHIocSArIDEpOwotCQkJaWYgKDAgPD0gdmFsKSB7CisJCQlpZiAoMCA8IHZhbCkgewogCQkJCXN0cmJ1Zl9hZGRjaChvdXQsIHZhbCk7CiAJCQkJcSArPSAzOwogCQkJCWxlbiAtPSAzOwpAQCAtODYsNiArODYsMTIgQEAKIAlyZXR1cm4gdXJsX2RlY29kZV9pbnRlcm5hbCgmdXJsLCBsZW4sIE5VTEwsICZvdXQsIDApOwogfQogCitjaGFyICp1cmxfcGVyY2VudF9kZWNvZGUoY29uc3QgY2hhciAqZW5jb2RlZCkKK3sKKwlzdHJ1Y3Qgc3RyYnVmIG91dCA9IFNUUkJVRl9JTklUOworCXJldHVybiB1cmxfZGVjb2RlX2ludGVybmFsKCZlbmNvZGVkLCBzdHJsZW4oZW5jb2RlZCksIE5VTEwsICZvdXQsIDApOworfQorCiBjaGFyICp1cmxfZGVjb2RlX3BhcmFtZXRlcl9uYW1lKGNvbnN0IGNoYXIgKipxdWVyeSkKIHsKIAlzdHJ1Y3Qgc3RyYnVmIG91dCA9IFNUUkJVRl9JTklUOwpAQCAtMTA0LDcgKzExMCw4IEBACiAJc3RyYnVmX2NvbXBsZXRlKGJ1ZiwgJy8nKTsKIH0KIAotdm9pZCBzdHJfZW5kX3VybF93aXRoX3NsYXNoKGNvbnN0IGNoYXIgKnVybCwgY2hhciAqKmRlc3QpIHsKK3ZvaWQgc3RyX2VuZF91cmxfd2l0aF9zbGFzaChjb25zdCBjaGFyICp1cmwsIGNoYXIgKipkZXN0KQorewogCXN0cnVjdCBzdHJidWYgYnVmID0gU1RSQlVGX0lOSVQ7CiAJZW5kX3VybF93aXRoX3NsYXNoKCZidWYsIHVybCk7CiAJZnJlZSgqZGVzdCk7CmRpZmYgLS1naXQgYS91cmwuaCBiL3VybC5oCmluZGV4IGYzMTFjNDAuLjJhMjdjMzQgMTAwNjQ0Ci0tLSBhL3VybC5oCisrKyBiL3VybC5oCkBAIC0zLDE0ICszLDIyIEBACiAKIHN0cnVjdCBzdHJidWY7CiAKLWV4dGVybiBpbnQgaXNfdXJsKGNvbnN0IGNoYXIgKnVybCk7Ci1leHRlcm4gaW50IGlzX3VybHNjaGVtZWNoYXIoaW50IGZpcnN0X2ZsYWcsIGludCBjaCk7Ci1leHRlcm4gY2hhciAqdXJsX2RlY29kZShjb25zdCBjaGFyICp1cmwpOwotZXh0ZXJuIGNoYXIgKnVybF9kZWNvZGVfbWVtKGNvbnN0IGNoYXIgKnVybCwgaW50IGxlbik7Ci1leHRlcm4gY2hhciAqdXJsX2RlY29kZV9wYXJhbWV0ZXJfbmFtZShjb25zdCBjaGFyICoqcXVlcnkpOwotZXh0ZXJuIGNoYXIgKnVybF9kZWNvZGVfcGFyYW1ldGVyX3ZhbHVlKGNvbnN0IGNoYXIgKipxdWVyeSk7CitpbnQgaXNfdXJsKGNvbnN0IGNoYXIgKnVybCk7CitpbnQgaXNfdXJsc2NoZW1lY2hhcihpbnQgZmlyc3RfZmxhZywgaW50IGNoKTsKK2NoYXIgKnVybF9kZWNvZGUoY29uc3QgY2hhciAqdXJsKTsKK2NoYXIgKnVybF9kZWNvZGVfbWVtKGNvbnN0IGNoYXIgKnVybCwgaW50IGxlbik7CiAKLWV4dGVybiB2b2lkIGVuZF91cmxfd2l0aF9zbGFzaChzdHJ1Y3Qgc3RyYnVmICpidWYsIGNvbnN0IGNoYXIgKnVybCk7Ci1leHRlcm4gdm9pZCBzdHJfZW5kX3VybF93aXRoX3NsYXNoKGNvbnN0IGNoYXIgKnVybCwgY2hhciAqKmRlc3QpOworLyoKKyAqIFNpbWlsYXIgdG8gdGhlIHVybF9kZWNvZGVfeyxtZW19IG1ldGhvZHMgYWJvdmUsIGJ1dCBkb2Vzbid0IGFzc3VtZSB0aGVyZQorICogaXMgYSBzY2hlbWUgZm9sbG93ZWQgYnkgYSA6IGF0IHRoZSBzdGFydCBvZiB0aGUgc3RyaW5nLiBJbnN0ZWFkLCAlLXNlcXVlbmNlcworICogYmVmb3JlIGFueSA6IGFyZSBhbHNvIHBhcnNlZC4KKyAqLworY2hhciAqdXJsX3BlcmNlbnRfZGVjb2RlKGNvbnN0IGNoYXIgKmVuY29kZWQpOworCitjaGFyICp1cmxfZGVjb2RlX3BhcmFtZXRlcl9uYW1lKGNvbnN0IGNoYXIgKipxdWVyeSk7CitjaGFyICp1cmxfZGVjb2RlX3BhcmFtZXRlcl92YWx1ZShjb25zdCBjaGFyICoqcXVlcnkpOworCit2b2lkIGVuZF91cmxfd2l0aF9zbGFzaChzdHJ1Y3Qgc3RyYnVmICpidWYsIGNvbnN0IGNoYXIgKnVybCk7Cit2b2lkIHN0cl9lbmRfdXJsX3dpdGhfc2xhc2goY29uc3QgY2hhciAqdXJsLCBjaGFyICoqZGVzdCk7CiAKICNlbmRpZiAvKiBVUkxfSCAqLwpkaWZmIC0tZ2l0IGEvdXJsbWF0Y2guYyBiL3VybG1hdGNoLmMKaW5kZXggM2U0MmJkNy4uMjkyNzJhNSAxMDA2NDQKLS0tIGEvdXJsbWF0Y2guYworKysgYi91cmxtYXRjaC5jCkBAIC01NTcsNiArNTU3LDggQEAKIAljb25zdCBjaGFyICprZXksICpkb3Q7CiAJc3RydWN0IHN0cmJ1ZiBzeW50aGtleSA9IFNUUkJVRl9JTklUOwogCWludCByZXR2YWw7CisJaW50ICgqc2VsZWN0X2ZuKShjb25zdCBzdHJ1Y3QgdXJsbWF0Y2hfaXRlbSAqYSwgY29uc3Qgc3RydWN0IHVybG1hdGNoX2l0ZW0gKmIpID0KKwkJY29sbGVjdC0+c2VsZWN0X2ZuID8gY29sbGVjdC0+c2VsZWN0X2ZuIDogY21wX21hdGNoZXM7CiAKIAlpZiAoIXNraXBfcHJlZml4KHZhciwgY29sbGVjdC0+c2VjdGlvbiwgJmtleSkgfHwgKihrZXkrKykgIT0gJy4nKSB7CiAJCWlmIChjb2xsZWN0LT5jYXNjYWRlX2ZuKQpAQCAtNTg3LDcgKzU4OSw3IEBACiAJaWYgKCFpdGVtLT51dGlsKSB7CiAJCWl0ZW0tPnV0aWwgPSB4Y2FsbG9jKDEsIHNpemVvZihtYXRjaGVkKSk7CiAJfSBlbHNlIHsKLQkJaWYgKGNtcF9tYXRjaGVzKCZtYXRjaGVkLCBpdGVtLT51dGlsKSA8IDApCisJCWlmIChzZWxlY3RfZm4oJm1hdGNoZWQsIGl0ZW0tPnV0aWwpIDwgMCkKIAkJCSAvKgogCQkJICAqIE91ciBtYXRjaCBpcyB3b3JzZSB0aGFuIHRoZSBvbGQgb25lLAogCQkJICAqIHdlIGNhbm5vdCB1c2UgaXQuCmRpZmYgLS1naXQgYS91cmxtYXRjaC5oIGIvdXJsbWF0Y2guaAppbmRleCBlNDgyMTQ4Li4yNDA3NTIwIDEwMDY0NAotLS0gYS91cmxtYXRjaC5oCisrKyBiL3VybG1hdGNoLmgKQEAgLTMzLDcgKzMzLDcgQEAKIAkJCQkgKiAnPy4uLicgYW5kICcjLi4uJyBwb3J0aW9uOyB3aWxsIGFsd2F5cyBiZSA+PSAxICovCiB9OwogCi1leHRlcm4gY2hhciAqdXJsX25vcm1hbGl6ZShjb25zdCBjaGFyICosIHN0cnVjdCB1cmxfaW5mbyAqKTsKK2NoYXIgKnVybF9ub3JtYWxpemUoY29uc3QgY2hhciAqLCBzdHJ1Y3QgdXJsX2luZm8gKik7CiAKIHN0cnVjdCB1cmxtYXRjaF9pdGVtIHsKIAlzaXplX3QgaG9zdG1hdGNoX2xlbjsKQEAgLTUwLDggKzUwLDE3IEBACiAJdm9pZCAqY2I7CiAJaW50ICgqY29sbGVjdF9mbikoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqY2IpOwogCWludCAoKmNhc2NhZGVfZm4pKGNvbnN0IGNoYXIgKnZhciwgY29uc3QgY2hhciAqdmFsdWUsIHZvaWQgKmNiKTsKKwkvKgorCSAqIENvbXBhcmUgdGhlIHR3byBtYXRjaGVzLCB0aGUgb25lIGp1c3QgZGlzY292ZXJlZCBhbmQgdGhlIGV4aXN0aW5nCisJICogYmVzdCBtYXRjaCBhbmQgcmV0dXJuIGEgbmVnYXRpdmUgdmFsdWUgaWYgdGhlIGZvdW5kIGl0ZW0gaXMgdG8gYmUKKwkgKiByZWplY3RlZCBvciBhIG5vbi1uZWdhdGl2ZSB2YWx1ZSBpZiBpdCBpcyB0byBiZSBhY2NlcHRlZC4gIElmIHRoaXMKKwkgKiBmaWVsZCBpcyBzZXQgdG8gTlVMTCwgdXNlIHRoZSBkZWZhdWx0IGNvbXBhcmlzb24gdGVjaG5pcXVlLCB3aGljaAorCSAqIGNoZWNrcyB0byBzZXMgaWYgZm91bmQgaXMgYmV0dGVyIChhY2NvcmRpbmcgdG8gdGhlIHVybG1hdGNoCisJICogc3BlY2lmaWNpdHkgcnVsZXMpIHRoYW4gZXhpc3RpbmcuCisJICovCisJaW50ICgqc2VsZWN0X2ZuKShjb25zdCBzdHJ1Y3QgdXJsbWF0Y2hfaXRlbSAqZm91bmQsIGNvbnN0IHN0cnVjdCB1cmxtYXRjaF9pdGVtICpleGlzdGluZyk7CiB9OwogCi1leHRlcm4gaW50IHVybG1hdGNoX2NvbmZpZ19lbnRyeShjb25zdCBjaGFyICp2YXIsIGNvbnN0IGNoYXIgKnZhbHVlLCB2b2lkICpjYik7CitpbnQgdXJsbWF0Y2hfY29uZmlnX2VudHJ5KGNvbnN0IGNoYXIgKnZhciwgY29uc3QgY2hhciAqdmFsdWUsIHZvaWQgKmNiKTsKIAogI2VuZGlmIC8qIFVSTF9NQVRDSF9IICovCmRpZmYgLS1naXQgYS91c2FnZS5jIGIvdXNhZ2UuYwppbmRleCBjYzgwMzMzLi41OGZiNWZmIDEwMDY0NAotLS0gYS91c2FnZS5jCisrKyBiL3VzYWdlLmMKQEAgLTksMzAgKzksNzMgQEAKIHZvaWQgdnJlcG9ydGYoY29uc3QgY2hhciAqcHJlZml4LCBjb25zdCBjaGFyICplcnIsIHZhX2xpc3QgcGFyYW1zKQogewogCWNoYXIgbXNnWzQwOTZdOwotCWNoYXIgKnA7CisJY2hhciAqcCwgKnBlbmQgPSBtc2cgKyBzaXplb2YobXNnKTsKKwlzaXplX3QgcHJlZml4X2xlbiA9IHN0cmxlbihwcmVmaXgpOwogCi0JdnNucHJpbnRmKG1zZywgc2l6ZW9mKG1zZyksIGVyciwgcGFyYW1zKTsKLQlmb3IgKHAgPSBtc2c7ICpwOyBwKyspIHsKKwlpZiAoc2l6ZW9mKG1zZykgPD0gcHJlZml4X2xlbikgeworCQlmcHJpbnRmKHN0ZGVyciwgIkJVRyEhISB0b28gbG9uZyBhIHByZWZpeCAnJXMnXG4iLCBwcmVmaXgpOworCQlhYm9ydCgpOworCX0KKwltZW1jcHkobXNnLCBwcmVmaXgsIHByZWZpeF9sZW4pOworCXAgPSBtc2cgKyBwcmVmaXhfbGVuOworCWlmICh2c25wcmludGYocCwgcGVuZCAtIHAsIGVyciwgcGFyYW1zKSA8IDApCisJCSpwID0gJ1wwJzsgLyogdnNucHJpbnRmKCkgZmFpbGVkLCBjbGlwIGF0IHByZWZpeCAqLworCisJZm9yICg7IHAgIT0gcGVuZCAtIDEgJiYgKnA7IHArKykgewogCQlpZiAoaXNjbnRybCgqcCkgJiYgKnAgIT0gJ1x0JyAmJiAqcCAhPSAnXG4nKQogCQkJKnAgPSAnPyc7CiAJfQotCWZwcmludGYoc3RkZXJyLCAiJXMlc1xuIiwgcHJlZml4LCBtc2cpOworCisJKihwKyspID0gJ1xuJzsgLyogd2Ugbm8gbG9uZ2VyIG5lZWQgYSBOVUwgKi8KKwlmZmx1c2goc3RkZXJyKTsKKwl3cml0ZV9pbl9mdWxsKDIsIG1zZywgcCAtIG1zZyk7CiB9CiAKIHN0YXRpYyBOT1JFVFVSTiB2b2lkIHVzYWdlX2J1aWx0aW4oY29uc3QgY2hhciAqZXJyLCB2YV9saXN0IHBhcmFtcykKIHsKIAl2cmVwb3J0ZigidXNhZ2U6ICIsIGVyciwgcGFyYW1zKTsKKworCS8qCisJICogV2hlbiB3ZSBkZXRlY3QgYSB1c2FnZSBlcnJvciAqYmVmb3JlKiB0aGUgY29tbWFuZCBkaXNwYXRjaCBpbgorCSAqIGNtZF9tYWluKCksIHdlIGRvbid0IGtub3cgd2hhdCB2ZXJiIHRvIHJlcG9ydC4gIEZvcmNlIGl0IHRvIHRoaXMKKwkgKiB0byBmYWNpbGl0YXRlIHBvc3QtcHJvY2Vzc2luZy4KKwkgKi8KKwl0cmFjZTJfY21kX25hbWUoIl91c2FnZV8iKTsKKworCS8qCisJICogQ3VycmVudGx5LCB0aGUgKGVyciwgcGFyYW1zKSBhcmUgdXN1YWxseSBqdXN0IHRoZSBzdGF0aWMgdXNhZ2UKKwkgKiBzdHJpbmcgd2hpY2ggaXNuJ3QgdmVyeSB1c2VmdWwgaGVyZS4gIFVzdWFsbHksIHRoZSBjYWxsIHNpdGUKKwkgKiBtYW51YWxseSBjYWxscyBmcHJpbnRmKHN0ZGVyciwuLi4pIHdpdGggdGhlIGFjdHVhbCBkZXRhaWxlZAorCSAqIHN5bnRheCBlcnJvciBiZWZvcmUgY2FsbGluZyB1c2FnZSgpLgorCSAqCisJICogVE9ETyBJdCB3b3VsZCBiZSBuaWNlIHRvIHVwZGF0ZSB0aGUgY2FsbCBzaXRlcyB0byBwYXNzIGJvdGgKKwkgKiB0aGUgc3RhdGljIHVzYWdlIHN0cmluZyBhbmQgdGhlIGRldGFpbGVkIGVycm9yIG1lc3NhZ2UuCisJICovCisKIAlleGl0KDEyOSk7CiB9CiAKIHN0YXRpYyBOT1JFVFVSTiB2b2lkIGRpZV9idWlsdGluKGNvbnN0IGNoYXIgKmVyciwgdmFfbGlzdCBwYXJhbXMpCiB7CisJLyoKKwkgKiBXZSBjYWxsIHRoaXMgdHJhY2UyIGZ1bmN0aW9uIGZpcnN0IGFuZCBleHBlY3QgaXQgdG8gdmFfY29weSAncGFyYW1zJworCSAqIGJlZm9yZSB1c2luZyBpdCAoYmVjYXVzZSBhbiAnYXAnIGNhbiBvbmx5IGJlIHdhbGtlZCBvbmNlKS4KKwkgKi8KKwl0cmFjZTJfY21kX2Vycm9yX3ZhKGVyciwgcGFyYW1zKTsKKwogCXZyZXBvcnRmKCJmYXRhbDogIiwgZXJyLCBwYXJhbXMpOworCiAJZXhpdCgxMjgpOwogfQogCiBzdGF0aWMgdm9pZCBlcnJvcl9idWlsdGluKGNvbnN0IGNoYXIgKmVyciwgdmFfbGlzdCBwYXJhbXMpCiB7CisJLyoKKwkgKiBXZSBjYWxsIHRoaXMgdHJhY2UyIGZ1bmN0aW9uIGZpcnN0IGFuZCBleHBlY3QgaXQgdG8gdmFfY29weSAncGFyYW1zJworCSAqIGJlZm9yZSB1c2luZyBpdCAoYmVjYXVzZSBhbiAnYXAnIGNhbiBvbmx5IGJlIHdhbGtlZCBvbmNlKS4KKwkgKi8KKwl0cmFjZTJfY21kX2Vycm9yX3ZhKGVyciwgcGFyYW1zKTsKKwogCXZyZXBvcnRmKCJlcnJvcjogIiwgZXJyLCBwYXJhbXMpOwogfQogCmRpZmYgLS1naXQgYS91c2VyZGlmZi5jIGIvdXNlcmRpZmYuYwppbmRleCA0NmQzNGNjLi5lZmJlMDVlIDEwMDY0NAotLS0gYS91c2VyZGlmZi5jCisrKyBiL3VzZXJkaWZmLmMKQEAgLTIzLDYgKzIzLDI4IEBACiAJICJbYS16QS1aXVthLXpBLVowLTlfXSoiCiAJICJ8Wy0rXT9bMC05XVswLTkjXy5hQWJCY0NkRGVFZkZdKihbZUVdWystXT9bMC05X10rKT8iCiAJICJ8PT58XFwuXFwufFxcKlxcKnw6PXwvPXw+PXw8PXw8PHw+Pnw8PiIpLAorUEFUVEVSTlMoImR0cyIsCisJICIhO1xuIgorCSAiIT1cbiIKKwkgLyogbGluZXMgYmVnaW5uaW5nIHdpdGggYSB3b3JkIG9wdGlvbmFsbHkgcHJlY2VkZWQgYnkgJyYnIG9yIHRoZSByb290ICovCisJICJeWyBcdF0qKCgvWyBcdF0qXFx7fCY/W2EtekEtWl9dKS4qKSIsCisJIC8qIC0tICovCisJIC8qIFByb3BlcnR5IG5hbWVzIGFuZCBtYXRoIG9wZXJhdG9ycyAqLworCSAiW2EtekEtWjAtOSwuXys/Iy1dKyIKKwkgInxbLSsqLyUmXnwhfl18Pj58PDx8JiZ8XFx8XFx8IiksCitQQVRURVJOUygiZWxpeGlyIiwKKwkgIl5bIFx0XSooKGRlZihtYWNyb3xtb2R1bGV8aW1wbHxwcm90b2NvbHxwKT98dGVzdClbIFx0XS4qKSQiLAorCSAvKiAtLSAqLworCSAvKiBBdG9tcywgbmFtZXMsIGFuZCBtb2R1bGUgYXR0cmlidXRlcyAqLworCSAiW0A6XT9bYS16QS1aMC05QF8/IV0rIgorCSAvKiBOdW1iZXJzIHdpdGggc3BlY2lmaWMgYmFzZSAqLworCSAifFstK10/MFt4b2JdWzAtOWEtZkEtRl0rIgorCSAvKiBOdW1iZXJzICovCisJICJ8Wy0rXT9bMC05XVswLTlfLl0qKFtlRV1bLStdP1swLTlfXSspPyIKKwkgLyogT3BlcmF0b3JzIGFuZCBhdG9tcyB0aGF0IHJlcHJlc2VudCB0aGVtICovCisJICJ8Oj8oXFwrXFwrfC0tfFxcLlxcLnx+fn58PD58XFxeXFxeXFxefDw/XFx8Pnw8PDw/fD4/Pj58PDw/fnx+Pj8+fDx+Pnw8PXw+PXw9PT0/fCE9PT98PX58JiYmP3xcXHxcXHxcXHw/fD0+fDwtfFxcXFxcXFxcfC0+KSIKKwkgLyogTm90IHJlYWwgb3BlcmF0b3JzLCBidXQgc2hvdWxkIGJlIGdyb3VwZWQgKi8KKwkgInw6PyVbQS1aYS16MC05Xy5dXFx7XFx9PyIpLAogSVBBVFRFUk4oImZvcnRyYW4iLAogCSAiIV4oW0MqXXxbIFx0XSohKVxuIgogCSAiIV5bIFx0XSpNT0RVTEVbIFx0XStQUk9DRURVUkVbIFx0XVxuIgpAQCAtNTgsNyArODAsMTIgQEAKIAkgInxbLSsqLzw+JSZefD0hXT0iCiAJICJ8LS18XFwrXFwrfDw8PT98Pj4+Pz0/fCYmfFxcfFxcfCIpLAogUEFUVEVSTlMoIm1hdGxhYiIsCi0JICJeW1s6c3BhY2U6XV0qKChjbGFzc2RlZnxmdW5jdGlvbilbWzpzcGFjZTpdXS4qKSR8XiUlW1s6c3BhY2U6XV0uKiQiLAorCSAvKgorCSAgKiBPY3RhdmUgcGF0dGVybiBpcyBtb3N0bHkgdGhlIHNhbWUgYXMgbWF0bGFiLCBleGNlcHQgdGhhdCAnJSUlJyBhbmQKKwkgICogJyMjJyBjYW4gYWxzbyBiZSB1c2VkIHRvIGJlZ2luIGNvZGUgc2VjdGlvbnMsIGluIGFkZGl0aW9uIHRvICclJScKKwkgICogdGhhdCBpcyB1bmRlcnN0b29kIGJ5IGJvdGguCisJICAqLworCSAiXltbOnNwYWNlOl1dKigoY2xhc3NkZWZ8ZnVuY3Rpb24pW1s6c3BhY2U6XV0uKikkfF4oJSUlP3wjIylbWzpzcGFjZTpdXS4qJCIsCiAJICJbYS16QS1aX11bYS16QS1aMC05X10qfFstKzAtOS5lXSt8Wz1+PD5dPXxcXC5bKi9cXF4nXXxcXHxcXHx8JiYiKSwKIFBBVFRFUk5TKCJvYmpjIiwKIAkgLyogTmVnYXRlIEMgc3RhdGVtZW50cyB0aGF0IGNhbiBsb29rIGxpa2UgZnVuY3Rpb25zICovCkBAIC0xMTksNyArMTQ2LDcgQEAKIAkgIlthLXpBLVpfXVthLXpBLVowLTlfXSoiCiAJICJ8Wy0rMC05LmVdK3wwW3hYYkJdP1swLTlhLWZBLUZdKyIKIAkgInxbLSsqLzw+JSZefD0hLl09fC0tfFxcK1xcK3w8PD0/fD4+PT98PT09fCYmfFxcfFxcfHw6OnwtPiIpLAotUEFUVEVSTlMoInB5dGhvbiIsICJeWyBcdF0qKChjbGFzc3xkZWYpWyBcdF0uKikkIiwKK1BBVFRFUk5TKCJweXRob24iLCAiXlsgXHRdKigoY2xhc3N8KGFzeW5jWyBcdF0rKT9kZWYpWyBcdF0uKikkIiwKIAkgLyogLS0gKi8KIAkgIlthLXpBLVpfXVthLXpBLVowLTlfXSoiCiAJICJ8Wy0rMC05LmVdK1tqSmxMXT98MFt4WF0/WzAtOWEtZkEtRl0rW2xMXT8iCkBAIC0xMzAsNiArMTU3LDEyIEBACiAJICIoQHxAQHxcXCQpP1thLXpBLVpfXVthLXpBLVowLTlfXSoiCiAJICJ8Wy0rMC05LmVdK3wwW3hYYkJdP1swLTlhLWZBLUZdK3xcXD8oXFxcXEMtKT8oXFxcXE0tKT8uIgogCSAifC8vPT98Wy0rKi88PiUmXnw9IV09fDw8PT98Pj49P3w9PT18XFwuezEsM318Ojp8WyE9XX4iKSwKK1BBVFRFUk5TKCJydXN0IiwKKwkgIl5bXHQgXSooKHB1YihcXChbXlxcKV0rXFwpKT9bXHQgXSspPygoYXN5bmN8Y29uc3R8dW5zYWZlfGV4dGVybihbXHQgXStcIlteXCJdK1wiKSlbXHQgXSspPyhzdHJ1Y3R8ZW51bXx1bmlvbnxtb2R8dHJhaXR8Zm58aW1wbClbPCBcdF0rW147XSopJCIsCisJIC8qIC0tICovCisJICJbYS16QS1aX11bYS16QS1aMC05X10qIgorCSAifFswLTldWzAtOV9hLWZBLUZpb3N1eHpdKihcXC4oWzAtOV0qW2VFXVsrLV0/KT9bMC05X2ZGXSopPyIKKwkgInxbLSsqXFwvPD4lJl58PSE6XT18PDw9P3w+Pj0/fCYmfFxcfFxcfHwtPnw9PnxcXC57Mn09fFxcLnszfXw6OiIpLAogUEFUVEVSTlMoImJpYnRleCIsICIoQFthLXpBLVpdezEsfVsgXHRdKlxce3swLDF9WyBcdF0qW14gXHRcIkAnLFxcI317fiVdKikuKiQiLAogCSAiWz17fVwiXXxbXj17fVwiIFx0XSsiKSwKIFBBVFRFUk5TKCJ0ZXgiLCAiXihcXFxcKChzdWIpKnNlY3Rpb258Y2hhcHRlcnxwYXJ0KVxcKnswLDF9XFx7LiopJCIsCkBAIC0yNjUsNyArMjk4LDggQEAKIAlyZXR1cm4gMDsKIH0KIAotc3RydWN0IHVzZXJkaWZmX2RyaXZlciAqdXNlcmRpZmZfZmluZF9ieV9uYW1lKGNvbnN0IGNoYXIgKm5hbWUpIHsKK3N0cnVjdCB1c2VyZGlmZl9kcml2ZXIgKnVzZXJkaWZmX2ZpbmRfYnlfbmFtZShjb25zdCBjaGFyICpuYW1lKQorewogCWludCBsZW4gPSBzdHJsZW4obmFtZSk7CiAJcmV0dXJuIHVzZXJkaWZmX2ZpbmRfYnlfbmFtZWxlbihuYW1lLCBsZW4pOwogfQpAQCAtMjkwLDcgKzMyNCw4IEBACiAJcmV0dXJuIHVzZXJkaWZmX2ZpbmRfYnlfbmFtZShjaGVjay0+aXRlbXNbMF0udmFsdWUpOwogfQogCi1zdHJ1Y3QgdXNlcmRpZmZfZHJpdmVyICp1c2VyZGlmZl9nZXRfdGV4dGNvbnYoc3RydWN0IHVzZXJkaWZmX2RyaXZlciAqZHJpdmVyKQorc3RydWN0IHVzZXJkaWZmX2RyaXZlciAqdXNlcmRpZmZfZ2V0X3RleHRjb252KHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJCQkgICAgICBzdHJ1Y3QgdXNlcmRpZmZfZHJpdmVyICpkcml2ZXIpCiB7CiAJaWYgKCFkcml2ZXItPnRleHRjb252KQogCQlyZXR1cm4gTlVMTDsKQEAgLTMwMCw3ICszMzUsNyBAQAogCQlzdHJ1Y3Qgc3RyYnVmIG5hbWUgPSBTVFJCVUZfSU5JVDsKIAogCQlzdHJidWZfYWRkZigmbmFtZSwgInRleHRjb252LyVzIiwgZHJpdmVyLT5uYW1lKTsKLQkJbm90ZXNfY2FjaGVfaW5pdChjLCBuYW1lLmJ1ZiwgZHJpdmVyLT50ZXh0Y29udik7CisJCW5vdGVzX2NhY2hlX2luaXQociwgYywgbmFtZS5idWYsIGRyaXZlci0+dGV4dGNvbnYpOwogCQlkcml2ZXItPnRleHRjb252X2NhY2hlID0gYzsKIAkJc3RyYnVmX3JlbGVhc2UoJm5hbWUpOwogCX0KZGlmZiAtLWdpdCBhL3VzZXJkaWZmLmggYi91c2VyZGlmZi5oCmluZGV4IGIwNzJiZmUuLjIwMzA1N2UgMTAwNjQ0Ci0tLSBhL3VzZXJkaWZmLmgKKysrIGIvdXNlcmRpZmYuaApAQCAtNCw2ICs0LDcgQEAKICNpbmNsdWRlICJub3Rlcy1jYWNoZS5oIgogCiBzdHJ1Y3QgaW5kZXhfc3RhdGU7CitzdHJ1Y3QgcmVwb3NpdG9yeTsKIAogc3RydWN0IHVzZXJkaWZmX2Z1bmNuYW1lIHsKIAljb25zdCBjaGFyICpwYXR0ZXJuOwpAQCAtMzAsNiArMzEsNyBAQAogICogSW5pdGlhbGl6ZSBhbnkgdGV4dGNvbnYtcmVsYXRlZCBmaWVsZHMgaW4gdGhlIGRyaXZlciBhbmQgcmV0dXJuIGl0LCBvciBOVUxMCiAgKiBpZiBpdCBkb2VzIG5vdCBoYXZlIHRleHRjb252IGVuYWJsZWQgYXQgYWxsLgogICovCi1zdHJ1Y3QgdXNlcmRpZmZfZHJpdmVyICp1c2VyZGlmZl9nZXRfdGV4dGNvbnYoc3RydWN0IHVzZXJkaWZmX2RyaXZlciAqZHJpdmVyKTsKK3N0cnVjdCB1c2VyZGlmZl9kcml2ZXIgKnVzZXJkaWZmX2dldF90ZXh0Y29udihzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCQkJICAgICAgc3RydWN0IHVzZXJkaWZmX2RyaXZlciAqZHJpdmVyKTsKIAogI2VuZGlmIC8qIFVTRVJESUZGICovCmRpZmYgLS1naXQgYS91dGY4LmMgYi91dGY4LmMKaW5kZXggZWI3ODU4Ny4uNWIzOTM2MSAxMDA2NDQKLS0tIGEvdXRmOC5jCisrKyBiL3V0ZjguYwpAQCAtNCw2ICs0LDExIEBACiAKIC8qIFRoaXMgY29kZSBpcyBvcmlnaW5hbGx5IGZyb20gaHR0cDovL3d3dy5jbC5jYW0uYWMudWsvfm1nazI1L3Vjcy8gKi8KIAorc3RhdGljIGNvbnN0IGNoYXIgdXRmMTZfYmVfYm9tW10gPSB7J1x4RkUnLCAnXHhGRid9Oworc3RhdGljIGNvbnN0IGNoYXIgdXRmMTZfbGVfYm9tW10gPSB7J1x4RkYnLCAnXHhGRSd9Oworc3RhdGljIGNvbnN0IGNoYXIgdXRmMzJfYmVfYm9tW10gPSB7J1wwJywgJ1wwJywgJ1x4RkUnLCAnXHhGRid9Oworc3RhdGljIGNvbnN0IGNoYXIgdXRmMzJfbGVfYm9tW10gPSB7J1x4RkYnLCAnXHhGRScsICdcMCcsICdcMCd9OworCiBzdHJ1Y3QgaW50ZXJ2YWwgewogCXVjc19jaGFyX3QgZmlyc3Q7CiAJdWNzX2NoYXJfdCBsYXN0OwpAQCAtOTAsMTMgKzk1LDExIEBACiAJCXJldHVybiAtMTsKIAogCS8qIGJpbmFyeSBzZWFyY2ggaW4gdGFibGUgb2Ygbm9uLXNwYWNpbmcgY2hhcmFjdGVycyAqLwotCWlmIChiaXNlYXJjaChjaCwgemVyb193aWR0aCwgc2l6ZW9mKHplcm9fd2lkdGgpCi0JCQkJLyBzaXplb2Yoc3RydWN0IGludGVydmFsKSAtIDEpKQorCWlmIChiaXNlYXJjaChjaCwgemVyb193aWR0aCwgQVJSQVlfU0laRSh6ZXJvX3dpZHRoKSAtIDEpKQogCQlyZXR1cm4gMDsKIAogCS8qIGJpbmFyeSBzZWFyY2ggaW4gdGFibGUgb2YgZG91YmxlIHdpZHRoIGNoYXJhY3RlcnMgKi8KLQlpZiAoYmlzZWFyY2goY2gsIGRvdWJsZV93aWR0aCwgc2l6ZW9mKGRvdWJsZV93aWR0aCkKLQkJCQkvIHNpemVvZihzdHJ1Y3QgaW50ZXJ2YWwpIC0gMSkpCisJaWYgKGJpc2VhcmNoKGNoLCBkb3VibGVfd2lkdGgsIEFSUkFZX1NJWkUoZG91YmxlX3dpZHRoKSAtIDEpKQogCQlyZXR1cm4gMjsKIAogCXJldHVybiAxOwpAQCAtNDA4LDExICs0MTEsMTAgQEAKICAqLwogc3RhdGljIGludCBzYW1lX3V0Zl9lbmNvZGluZyhjb25zdCBjaGFyICpzcmMsIGNvbnN0IGNoYXIgKmRzdCkKIHsKLQlpZiAoaXN0YXJ0c193aXRoKHNyYywgInV0ZiIpICYmIGlzdGFydHNfd2l0aChkc3QsICJ1dGYiKSkgewotCQkvKiBzcmNbM10gb3IgZHN0WzNdIG1pZ2h0IGJlICdcMCcgKi8KLQkJaW50IGkgPSAoc3JjWzNdID09ICctJyA/IDQgOiAzKTsKLQkJaW50IGogPSAoZHN0WzNdID09ICctJyA/IDQgOiAzKTsKLQkJcmV0dXJuICFzdHJjYXNlY21wKHNyYytpLCBkc3Qraik7CisJaWYgKHNraXBfaXByZWZpeChzcmMsICJ1dGYiLCAmc3JjKSAmJiBza2lwX2lwcmVmaXgoZHN0LCAidXRmIiwgJmRzdCkpIHsKKwkJc2tpcF9wcmVmaXgoc3JjLCAiLSIsICZzcmMpOworCQlza2lwX3ByZWZpeChkc3QsICItIiwgJmRzdCk7CisJCXJldHVybiAhc3RyY2FzZWNtcChzcmMsIGRzdCk7CiAJfQogCXJldHVybiAwOwogfQpAQCAtNDcwLDE2ICs0NzIsMTcgQEAKICNlbHNlCiAJdHlwZWRlZiBjaGFyICogaWNvbnZfaWJwOwogI2VuZGlmCi1jaGFyICpyZWVuY29kZV9zdHJpbmdfaWNvbnYoY29uc3QgY2hhciAqaW4sIHNpemVfdCBpbnN6LCBpY29udl90IGNvbnYsIHNpemVfdCAqb3V0c3pfcCkKK2NoYXIgKnJlZW5jb2RlX3N0cmluZ19pY29udihjb25zdCBjaGFyICppbiwgc2l6ZV90IGluc3osIGljb252X3QgY29udiwKKwkJCSAgICBzaXplX3QgYm9tX2xlbiwgc2l6ZV90ICpvdXRzel9wKQogewogCXNpemVfdCBvdXRzeiwgb3V0YWxsb2M7CiAJY2hhciAqb3V0LCAqb3V0cG9zOwogCWljb252X2licCBjcDsKIAogCW91dHN6ID0gaW5zejsKLQlvdXRhbGxvYyA9IHN0X2FkZChvdXRzeiwgMSk7IC8qIGZvciB0ZXJtaW5hdGluZyBOVUwgKi8KKwlvdXRhbGxvYyA9IHN0X2FkZChvdXRzeiwgMSArIGJvbV9sZW4pOyAvKiBmb3IgdGVybWluYXRpbmcgTlVMICovCiAJb3V0ID0geG1hbGxvYyhvdXRhbGxvYyk7Ci0Jb3V0cG9zID0gb3V0OworCW91dHBvcyA9IG91dCArIGJvbV9sZW47CiAJY3AgPSAoaWNvbnZfaWJwKWluOwogCiAJd2hpbGUgKDEpIHsKQEAgLTU0MCwxMCArNTQzLDQ0IEBACiB7CiAJaWNvbnZfdCBjb252OwogCWNoYXIgKm91dDsKKwljb25zdCBjaGFyICpib21fc3RyID0gTlVMTDsKKwlzaXplX3QgYm9tX2xlbiA9IDA7CiAKIAlpZiAoIWluX2VuY29kaW5nKQogCQlyZXR1cm4gTlVMTDsKIAorCS8qIFVURi0xNkxFLUJPTSBpcyB0aGUgc2FtZSBhcyBVVEYtMTYgZm9yIHJlYWRpbmcgKi8KKwlpZiAoc2FtZV91dGZfZW5jb2RpbmcoIlVURi0xNkxFLUJPTSIsIGluX2VuY29kaW5nKSkKKwkJaW5fZW5jb2RpbmcgPSAiVVRGLTE2IjsKKworCS8qCisJICogRm9yIHdyaXRpbmcsIFVURi0xNiBpY29udiB0eXBpY2FsbHkgY3JlYXRlcyAiVVRGLTE2QkUtQk9NIgorCSAqIFNvbWUgdXNlcnMgdW5kZXIgV2luZG93cyB3YW50IHRoZSBsaXR0bGUgZW5kaWFuIHZlcnNpb24KKwkgKgorCSAqIFdlIGhhbmRsZSBVVEYtMTYgYW5kIFVURi0zMiBvdXJzZWx2ZXMgb25seSBpZiB0aGUgcGxhdGZvcm0gZG9lcyBub3QKKwkgKiBwcm92aWRlIGEgQk9NICh3aGljaCB3ZSByZXF1aXJlKSwgc2luY2Ugd2Ugd2FudCB0byBtYXRjaCB0aGUgYmVoYXZpb3IKKwkgKiBvZiB0aGUgc3lzdGVtIHRvb2xzIGFuZCBsaWJjIGFzIG11Y2ggYXMgcG9zc2libGUuCisJICovCisJaWYgKHNhbWVfdXRmX2VuY29kaW5nKCJVVEYtMTZMRS1CT00iLCBvdXRfZW5jb2RpbmcpKSB7CisJCWJvbV9zdHIgPSB1dGYxNl9sZV9ib207CisJCWJvbV9sZW4gPSBzaXplb2YodXRmMTZfbGVfYm9tKTsKKwkJb3V0X2VuY29kaW5nID0gIlVURi0xNkxFIjsKKwl9IGVsc2UgaWYgKHNhbWVfdXRmX2VuY29kaW5nKCJVVEYtMTZCRS1CT00iLCBvdXRfZW5jb2RpbmcpKSB7CisJCWJvbV9zdHIgPSB1dGYxNl9iZV9ib207CisJCWJvbV9sZW4gPSBzaXplb2YodXRmMTZfYmVfYm9tKTsKKwkJb3V0X2VuY29kaW5nID0gIlVURi0xNkJFIjsKKyNpZmRlZiBJQ09OVl9PTUlUU19CT00KKwl9IGVsc2UgaWYgKHNhbWVfdXRmX2VuY29kaW5nKCJVVEYtMTYiLCBvdXRfZW5jb2RpbmcpKSB7CisJCWJvbV9zdHIgPSB1dGYxNl9iZV9ib207CisJCWJvbV9sZW4gPSBzaXplb2YodXRmMTZfYmVfYm9tKTsKKwkJb3V0X2VuY29kaW5nID0gIlVURi0xNkJFIjsKKwl9IGVsc2UgaWYgKHNhbWVfdXRmX2VuY29kaW5nKCJVVEYtMzIiLCBvdXRfZW5jb2RpbmcpKSB7CisJCWJvbV9zdHIgPSB1dGYzMl9iZV9ib207CisJCWJvbV9sZW4gPSBzaXplb2YodXRmMzJfYmVfYm9tKTsKKwkJb3V0X2VuY29kaW5nID0gIlVURi0zMkJFIjsKKyNlbmRpZgorCX0KKwogCWNvbnYgPSBpY29udl9vcGVuKG91dF9lbmNvZGluZywgaW5fZW5jb2RpbmcpOwogCWlmIChjb252ID09IChpY29udl90KSAtMSkgewogCQlpbl9lbmNvZGluZyA9IGZhbGxiYWNrX2VuY29kaW5nKGluX2VuY29kaW5nKTsKQEAgLTU1Myw5ICs1OTAsMTAgQEAKIAkJaWYgKGNvbnYgPT0gKGljb252X3QpIC0xKQogCQkJcmV0dXJuIE5VTEw7CiAJfQotCi0Jb3V0ID0gcmVlbmNvZGVfc3RyaW5nX2ljb252KGluLCBpbnN6LCBjb252LCBvdXRzeik7CisJb3V0ID0gcmVlbmNvZGVfc3RyaW5nX2ljb252KGluLCBpbnN6LCBjb252LCBib21fbGVuLCBvdXRzeik7CiAJaWNvbnZfY2xvc2UoY29udik7CisJaWYgKG91dCAmJiBib21fc3RyICYmIGJvbV9sZW4pCisJCW1lbWNweShvdXQsIGJvbV9zdHIsIGJvbV9sZW4pOwogCXJldHVybiBvdXQ7CiB9CiAjZW5kaWYKQEAgLTU2NiwxMSArNjA0LDYgQEAKIAlyZXR1cm4gZGF0YSAmJiBib20gJiYgKGxlbiA+PSBib21fbGVuKSAmJiAhbWVtY21wKGRhdGEsIGJvbSwgYm9tX2xlbik7CiB9CiAKLXN0YXRpYyBjb25zdCBjaGFyIHV0ZjE2X2JlX2JvbVtdID0geydceEZFJywgJ1x4RkYnfTsKLXN0YXRpYyBjb25zdCBjaGFyIHV0ZjE2X2xlX2JvbVtdID0geydceEZGJywgJ1x4RkUnfTsKLXN0YXRpYyBjb25zdCBjaGFyIHV0ZjMyX2JlX2JvbVtdID0geydcMCcsICdcMCcsICdceEZFJywgJ1x4RkYnfTsKLXN0YXRpYyBjb25zdCBjaGFyIHV0ZjMyX2xlX2JvbVtdID0geydceEZGJywgJ1x4RkUnLCAnXDAnLCAnXDAnfTsKLQogaW50IGhhc19wcm9oaWJpdGVkX3V0Zl9ib20oY29uc3QgY2hhciAqZW5jLCBjb25zdCBjaGFyICpkYXRhLCBzaXplX3QgbGVuKQogewogCXJldHVybiAoCmRpZmYgLS1naXQgYS91dGY4LmggYi91dGY4LmgKaW5kZXggZWRlYTU1ZS4uZmNkNTE2NyAxMDA2NDQKLS0tIGEvdXRmOC5oCisrKyBiL3V0ZjguaApAQCAtMTYsNyArMTYsNyBAQAogaW50IHV0ZjhfZnByaW50ZihGSUxFICosIGNvbnN0IGNoYXIgKiwgLi4uKTsKIAogZXh0ZXJuIGNvbnN0IGNoYXIgdXRmOF9ib21bXTsKLWV4dGVybiBpbnQgc2tpcF91dGY4X2JvbShjaGFyICoqLCBzaXplX3QpOworaW50IHNraXBfdXRmOF9ib20oY2hhciAqKiwgc2l6ZV90KTsKIAogdm9pZCBzdHJidWZfYWRkX3dyYXBwZWRfdGV4dChzdHJ1Y3Qgc3RyYnVmICpidWYsCiAJCWNvbnN0IGNoYXIgKnRleHQsIGludCBpbmRlbnQsIGludCBpbmRlbnQyLCBpbnQgd2lkdGgpOwpAQCAtMjcsNyArMjcsNyBAQAogCiAjaWZuZGVmIE5PX0lDT05WCiBjaGFyICpyZWVuY29kZV9zdHJpbmdfaWNvbnYoY29uc3QgY2hhciAqaW4sIHNpemVfdCBpbnN6LAotCQkJICAgIGljb252X3QgY29udiwgc2l6ZV90ICpvdXRzeik7CisJCQkgICAgaWNvbnZfdCBjb252LCBzaXplX3QgYm9tX2xlbiwgc2l6ZV90ICpvdXRzeik7CiBjaGFyICpyZWVuY29kZV9zdHJpbmdfbGVuKGNvbnN0IGNoYXIgKmluLCBzaXplX3QgaW5zeiwKIAkJCSAgY29uc3QgY2hhciAqb3V0X2VuY29kaW5nLAogCQkJICBjb25zdCBjaGFyICppbl9lbmNvZGluZywKZGlmZiAtLWdpdCBhL3ZhcmludC5oIGIvdmFyaW50LmgKaW5kZXggYzFjNDRkOS4uZjc4YmIwYyAxMDA2NDQKLS0tIGEvdmFyaW50LmgKKysrIGIvdmFyaW50LmgKQEAgLTEsNyArMSw3IEBACiAjaWZuZGVmIFZBUklOVF9ICiAjZGVmaW5lIFZBUklOVF9ICiAKLWV4dGVybiBpbnQgZW5jb2RlX3ZhcmludCh1aW50bWF4X3QsIHVuc2lnbmVkIGNoYXIgKik7Ci1leHRlcm4gdWludG1heF90IGRlY29kZV92YXJpbnQoY29uc3QgdW5zaWduZWQgY2hhciAqKik7CitpbnQgZW5jb2RlX3ZhcmludCh1aW50bWF4X3QsIHVuc2lnbmVkIGNoYXIgKik7Cit1aW50bWF4X3QgZGVjb2RlX3ZhcmludChjb25zdCB1bnNpZ25lZCBjaGFyICoqKTsKIAogI2VuZGlmIC8qIFZBUklOVF9IICovCmRpZmYgLS1naXQgYS92Y3Mtc3ZuL3NsaWRpbmdfd2luZG93LmggYi92Y3Mtc3ZuL3NsaWRpbmdfd2luZG93LmgKaW5kZXggMTg5YzMyZC4uYTdmYzA5OSAxMDA2NDQKLS0tIGEvdmNzLXN2bi9zbGlkaW5nX3dpbmRvdy5oCisrKyBiL3Zjcy1zdm4vc2xpZGluZ193aW5kb3cuaApAQCAtMTMsNiArMTMsNiBAQAogCiAjZGVmaW5lIFNMSURJTkdfVklFV19JTklUKGlucHV0LCBsZW4pCXsgKGlucHV0KSwgMCwgMCwgKGxlbiksIFNUUkJVRl9JTklUIH0KIAotZXh0ZXJuIGludCBtb3ZlX3dpbmRvdyhzdHJ1Y3Qgc2xpZGluZ192aWV3ICp2aWV3LCBvZmZfdCBvZmYsIHNpemVfdCB3aWR0aCk7CitpbnQgbW92ZV93aW5kb3coc3RydWN0IHNsaWRpbmdfdmlldyAqdmlldywgb2ZmX3Qgb2ZmLCBzaXplX3Qgd2lkdGgpOwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL3Zjcy1zdm4vc3ZuZGlmZi5oIGIvdmNzLXN2bi9zdm5kaWZmLmgKaW5kZXggMTBhMmNiYy4uNjI1ZDk1MCAxMDA2NDQKLS0tIGEvdmNzLXN2bi9zdm5kaWZmLmgKKysrIGIvdmNzLXN2bi9zdm5kaWZmLmgKQEAgLTQsNyArNCw3IEBACiBzdHJ1Y3QgbGluZV9idWZmZXI7CiBzdHJ1Y3Qgc2xpZGluZ192aWV3OwogCi1leHRlcm4gaW50IHN2bmRpZmYwX2FwcGx5KHN0cnVjdCBsaW5lX2J1ZmZlciAqZGVsdGEsIG9mZl90IGRlbHRhX2xlbiwKLQkJc3RydWN0IHNsaWRpbmdfdmlldyAqcHJlaW1hZ2UsIEZJTEUgKnBvc3RpbWFnZSk7CitpbnQgc3ZuZGlmZjBfYXBwbHkoc3RydWN0IGxpbmVfYnVmZmVyICpkZWx0YSwgb2ZmX3QgZGVsdGFfbGVuLAorCQkgICBzdHJ1Y3Qgc2xpZGluZ192aWV3ICpwcmVpbWFnZSwgRklMRSAqcG9zdGltYWdlKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS93YWxrZXIuYyBiL3dhbGtlci5jCmluZGV4IDk2OTkwZDguLjQ5ODRiZjggMTAwNjQ0Ci0tLSBhL3dhbGtlci5jCisrKyBiL3dhbGtlci5jCkBAIC04LDYgKzgsNyBAQAogI2luY2x1ZGUgInRhZy5oIgogI2luY2x1ZGUgImJsb2IuaCIKICNpbmNsdWRlICJyZWZzLmgiCisjaW5jbHVkZSAicHJvZ3Jlc3MuaCIKIAogc3RhdGljIHN0cnVjdCBvYmplY3RfaWQgY3VycmVudF9jb21taXRfb2lkOwogCkBAIC01MCwxMyArNTEsMTMgQEAKIAkJCWNvbnRpbnVlOwogCQlpZiAoU19JU0RJUihlbnRyeS5tb2RlKSkgewogCQkJc3RydWN0IHRyZWUgKnRyZWUgPSBsb29rdXBfdHJlZSh0aGVfcmVwb3NpdG9yeSwKLQkJCQkJCQllbnRyeS5vaWQpOworCQkJCQkJCSZlbnRyeS5vaWQpOwogCQkJaWYgKHRyZWUpCiAJCQkJb2JqID0gJnRyZWUtPm9iamVjdDsKIAkJfQogCQllbHNlIHsKIAkJCXN0cnVjdCBibG9iICpibG9iID0gbG9va3VwX2Jsb2IodGhlX3JlcG9zaXRvcnksCi0JCQkJCQkJZW50cnkub2lkKTsKKwkJCQkJCQkmZW50cnkub2lkKTsKIAkJCWlmIChibG9iKQogCQkJCW9iaiA9ICZibG9iLT5vYmplY3Q7CiAJCX0KQEAgLTE2Miw2ICsxNjMsMTEgQEAKIHN0YXRpYyBpbnQgbG9vcChzdHJ1Y3Qgd2Fsa2VyICp3YWxrZXIpCiB7CiAJc3RydWN0IG9iamVjdF9saXN0ICplbGVtOworCXN0cnVjdCBwcm9ncmVzcyAqcHJvZ3Jlc3MgPSBOVUxMOworCXVpbnQ2NF90IG5yID0gMDsKKworCWlmICh3YWxrZXItPmdldF9wcm9ncmVzcykKKwkJcHJvZ3Jlc3MgPSBzdGFydF9kZWxheWVkX3Byb2dyZXNzKF8oIkZldGNoaW5nIG9iamVjdHMiKSwgMCk7CiAKIAl3aGlsZSAocHJvY2Vzc19xdWV1ZSkgewogCQlzdHJ1Y3Qgb2JqZWN0ICpvYmogPSBwcm9jZXNzX3F1ZXVlLT5pdGVtOwpAQCAtMTc2LDE1ICsxODIsMjAgQEAKIAkJICovCiAJCWlmICghIChvYmotPmZsYWdzICYgVE9fU0NBTikpIHsKIAkJCWlmICh3YWxrZXItPmZldGNoKHdhbGtlciwgb2JqLT5vaWQuaGFzaCkpIHsKKwkJCQlzdG9wX3Byb2dyZXNzKCZwcm9ncmVzcyk7CiAJCQkJcmVwb3J0X21pc3Npbmcob2JqKTsKIAkJCQlyZXR1cm4gLTE7CiAJCQl9CiAJCX0KIAkJaWYgKCFvYmotPnR5cGUpCiAJCQlwYXJzZV9vYmplY3QodGhlX3JlcG9zaXRvcnksICZvYmotPm9pZCk7Ci0JCWlmIChwcm9jZXNzX29iamVjdCh3YWxrZXIsIG9iaikpCisJCWlmIChwcm9jZXNzX29iamVjdCh3YWxrZXIsIG9iaikpIHsKKwkJCXN0b3BfcHJvZ3Jlc3MoJnByb2dyZXNzKTsKIAkJCXJldHVybiAtMTsKKwkJfQorCQlkaXNwbGF5X3Byb2dyZXNzKHByb2dyZXNzLCArK25yKTsKIAl9CisJc3RvcF9wcm9ncmVzcygmcHJvZ3Jlc3MpOwogCXJldHVybiAwOwogfQogCkBAIC0yNjEsMTIgKzI3MiwxNCBAQAogCXN0cnVjdCBzdHJidWYgcmVmbmFtZSA9IFNUUkJVRl9JTklUOwogCXN0cnVjdCBzdHJidWYgZXJyID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHJlZl90cmFuc2FjdGlvbiAqdHJhbnNhY3Rpb24gPSBOVUxMOwotCXN0cnVjdCBvYmplY3RfaWQgKm9pZHMgPSB4bWFsbG9jKHRhcmdldHMgKiBzaXplb2Yoc3RydWN0IG9iamVjdF9pZCkpOworCXN0cnVjdCBvYmplY3RfaWQgKm9pZHM7CiAJY2hhciAqbXNnID0gTlVMTDsKIAlpbnQgaSwgcmV0ID0gLTE7CiAKIAlzYXZlX2NvbW1pdF9idWZmZXIgPSAwOwogCisJQUxMT0NfQVJSQVkob2lkcywgdGFyZ2V0cyk7CisKIAlpZiAod3JpdGVfcmVmKSB7CiAJCXRyYW5zYWN0aW9uID0gcmVmX3RyYW5zYWN0aW9uX2JlZ2luKCZlcnIpOwogCQlpZiAoIXRyYW5zYWN0aW9uKSB7CkBAIC0yODUsNyArMjk4LDcgQEAKIAkJCWVycm9yKCJDb3VsZCBub3QgaW50ZXJwcmV0IHJlc3BvbnNlIGZyb20gc2VydmVyICclcycgYXMgc29tZXRoaW5nIHRvIHB1bGwiLCB0YXJnZXRbaV0pOwogCQkJZ290byBkb25lOwogCQl9Ci0JCWlmIChwcm9jZXNzKHdhbGtlciwgbG9va3VwX3Vua25vd25fb2JqZWN0KG9pZHNbaV0uaGFzaCkpKQorCQlpZiAocHJvY2Vzcyh3YWxrZXIsIGxvb2t1cF91bmtub3duX29iamVjdCgmb2lkc1tpXSkpKQogCQkJZ290byBkb25lOwogCX0KIApkaWZmIC0tZ2l0IGEvd2Fsa2VyLmggYi93YWxrZXIuaAppbmRleCA2ZDhhZTAwLi5kNDBiMDE2IDEwMDY0NAotLS0gYS93YWxrZXIuaAorKysgYi93YWxrZXIuaApAQCAtMTAsNiArMTAsNyBAQAogCWludCAoKmZldGNoKShzdHJ1Y3Qgd2Fsa2VyICosIHVuc2lnbmVkIGNoYXIgKnNoYTEpOwogCXZvaWQgKCpjbGVhbnVwKShzdHJ1Y3Qgd2Fsa2VyICopOwogCWludCBnZXRfdmVyYm9zZWx5OworCWludCBnZXRfcHJvZ3Jlc3M7CiAJaW50IGdldF9yZWNvdmVyOwogCiAJaW50IGNvcnJ1cHRfb2JqZWN0X2ZvdW5kOwpkaWZmIC0tZ2l0IGEvd29ya3RyZWUuYyBiL3dvcmt0cmVlLmMKaW5kZXggZDZhMGVlNy4uNTQzNDcyZiAxMDA2NDQKLS0tIGEvd29ya3RyZWUuYworKysgYi93b3JrdHJlZS5jCkBAIC00NywyMyArNDcsMjYgQEAKIHN0YXRpYyBzdHJ1Y3Qgd29ya3RyZWUgKmdldF9tYWluX3dvcmt0cmVlKHZvaWQpCiB7CiAJc3RydWN0IHdvcmt0cmVlICp3b3JrdHJlZSA9IE5VTEw7Ci0Jc3RydWN0IHN0cmJ1ZiBwYXRoID0gU1RSQlVGX0lOSVQ7CiAJc3RydWN0IHN0cmJ1ZiB3b3JrdHJlZV9wYXRoID0gU1RSQlVGX0lOSVQ7Ci0JaW50IGlzX2JhcmUgPSAwOwogCiAJc3RyYnVmX2FkZF9hYnNvbHV0ZV9wYXRoKCZ3b3JrdHJlZV9wYXRoLCBnZXRfZ2l0X2NvbW1vbl9kaXIoKSk7Ci0JaXNfYmFyZSA9ICFzdHJidWZfc3RyaXBfc3VmZml4KCZ3b3JrdHJlZV9wYXRoLCAiLy5naXQiKTsKLQlpZiAoaXNfYmFyZSkKKwlzdHJidWZfc3RyaXBfc3VmZml4KCZ3b3JrdHJlZV9wYXRoLCAiLy4iKTsKKwlpZiAoIXN0cmJ1Zl9zdHJpcF9zdWZmaXgoJndvcmt0cmVlX3BhdGgsICIvLmdpdCIpKQogCQlzdHJidWZfc3RyaXBfc3VmZml4KCZ3b3JrdHJlZV9wYXRoLCAiLy4iKTsKIAotCXN0cmJ1Zl9hZGRmKCZwYXRoLCAiJXMvSEVBRCIsIGdldF9naXRfY29tbW9uX2RpcigpKTsKLQogCXdvcmt0cmVlID0geGNhbGxvYygxLCBzaXplb2YoKndvcmt0cmVlKSk7CiAJd29ya3RyZWUtPnBhdGggPSBzdHJidWZfZGV0YWNoKCZ3b3JrdHJlZV9wYXRoLCBOVUxMKTsKLQl3b3JrdHJlZS0+aXNfYmFyZSA9IGlzX2JhcmU7CisJLyoKKwkgKiBORUVEU1dPUks6IElmIHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGZyb20gYSBzZWNvbmRhcnkgd29ya3RyZWUgYW5kCisJICogY29uZmlnLndvcmt0cmVlIGlzIHByZXNlbnQsIGlzX2JhcmVfcmVwb3NpdG9yeV9jZmcgd2lsbCByZWZsZWN0IHRoZQorCSAqIGNvbnRlbnRzIG9mIGNvbmZpZy53b3JrdHJlZSwgbm90IHRoZSBjb250ZW50cyBvZiB0aGUgbWFpbiB3b3JrdHJlZS4KKwkgKiBUaGlzIG1lYW5zIHRoYXQgd29ya3RyZWUtPmlzX2JhcmUgbWF5IGJlIHNldCB0byAwIGV2ZW4gaWYgdGhlIG1haW4KKwkgKiB3b3JrdHJlZSBpcyBjb25maWd1cmVkIHRvIGJlIGJhcmUuCisJICovCisJd29ya3RyZWUtPmlzX2JhcmUgPSAoaXNfYmFyZV9yZXBvc2l0b3J5X2NmZyA9PSAxKSB8fAorCQlpc19iYXJlX3JlcG9zaXRvcnkoKTsKIAlhZGRfaGVhZF9pbmZvKHdvcmt0cmVlKTsKIAotCXN0cmJ1Zl9yZWxlYXNlKCZwYXRoKTsKIAlzdHJidWZfcmVsZWFzZSgmd29ya3RyZWVfcGF0aCk7CiAJcmV0dXJuIHdvcmt0cmVlOwogfQpAQCAtMjA5LDcgKzIxMiw2IEBACiAJCQkgICAgICAgY29uc3QgY2hhciAqYXJnKQogewogCXN0cnVjdCB3b3JrdHJlZSAqd3Q7Ci0JY2hhciAqcGF0aDsKIAljaGFyICp0b19mcmVlID0gTlVMTDsKIAogCWlmICgod3QgPSBmaW5kX3dvcmt0cmVlX2J5X3N1ZmZpeChsaXN0LCBhcmcpKSkKQEAgLTIxNywxNiArMjE5LDI3IEBACiAKIAlpZiAocHJlZml4KQogCQlhcmcgPSB0b19mcmVlID0gcHJlZml4X2ZpbGVuYW1lKHByZWZpeCwgYXJnKTsKLQlwYXRoID0gcmVhbF9wYXRoZHVwKGFyZywgMCk7Ci0JaWYgKCFwYXRoKSB7Ci0JCWZyZWUodG9fZnJlZSk7Ci0JCXJldHVybiBOVUxMOwotCX0KLQlmb3IgKDsgKmxpc3Q7IGxpc3QrKykKLQkJaWYgKCFmc3BhdGhjbXAocGF0aCwgcmVhbF9wYXRoKCgqbGlzdCktPnBhdGgpKSkKLQkJCWJyZWFrOwotCWZyZWUocGF0aCk7CisJd3QgPSBmaW5kX3dvcmt0cmVlX2J5X3BhdGgobGlzdCwgYXJnKTsKIAlmcmVlKHRvX2ZyZWUpOworCXJldHVybiB3dDsKK30KKworc3RydWN0IHdvcmt0cmVlICpmaW5kX3dvcmt0cmVlX2J5X3BhdGgoc3RydWN0IHdvcmt0cmVlICoqbGlzdCwgY29uc3QgY2hhciAqcCkKK3sKKwlzdHJ1Y3Qgc3RyYnVmIHd0X3BhdGggPSBTVFJCVUZfSU5JVDsKKwljaGFyICpwYXRoID0gcmVhbF9wYXRoZHVwKHAsIDApOworCisJaWYgKCFwYXRoKQorCQlyZXR1cm4gTlVMTDsKKwlmb3IgKDsgKmxpc3Q7IGxpc3QrKykgeworCQlpZiAoIXN0cmJ1Zl9yZWFscGF0aCgmd3RfcGF0aCwgKCpsaXN0KS0+cGF0aCwgMCkpCisJCQljb250aW51ZTsKKworCQlpZiAoIWZzcGF0aGNtcChwYXRoLCB3dF9wYXRoLmJ1ZikpCisJCQlicmVhazsKKwl9CisJZnJlZShwYXRoKTsKKwlzdHJidWZfcmVsZWFzZSgmd3RfcGF0aCk7CiAJcmV0dXJuICpsaXN0OwogfQogCkBAIC0yNzUsNiArMjg4LDcgQEAKIAkJICAgICAgdW5zaWduZWQgZmxhZ3MpCiB7CiAJc3RydWN0IHN0cmJ1ZiB3dF9wYXRoID0gU1RSQlVGX0lOSVQ7CisJc3RydWN0IHN0cmJ1ZiByZWFscGF0aCA9IFNUUkJVRl9JTklUOwogCWNoYXIgKnBhdGggPSBOVUxMOwogCWludCBlcnIsIHJldCA9IC0xOwogCkBAIC0zMjYsNyArMzQwLDggQEAKIAkJZ290byBkb25lOwogCX0KIAotCXJldCA9IGZzcGF0aGNtcChwYXRoLCByZWFsX3BhdGgoZ2l0X2NvbW1vbl9wYXRoKCJ3b3JrdHJlZXMvJXMiLCB3dC0+aWQpKSk7CisJc3RyYnVmX3JlYWxwYXRoKCZyZWFscGF0aCwgZ2l0X2NvbW1vbl9wYXRoKCJ3b3JrdHJlZXMvJXMiLCB3dC0+aWQpLCAxKTsKKwlyZXQgPSBmc3BhdGhjbXAocGF0aCwgcmVhbHBhdGguYnVmKTsKIAogCWlmIChyZXQpCiAJCXN0cmJ1Zl9hZGRmX2dlbnRseShlcnJtc2csIF8oIiclcycgZG9lcyBub3QgcG9pbnQgYmFjayB0byAnJXMnIiksCkBAIC0zMzQsNiArMzQ5LDcgQEAKIGRvbmU6CiAJZnJlZShwYXRoKTsKIAlzdHJidWZfcmVsZWFzZSgmd3RfcGF0aCk7CisJc3RyYnVmX3JlbGVhc2UoJnJlYWxwYXRoKTsKIAlyZXR1cm4gcmV0OwogfQogCkBAIC00NDQsNyArNDYwLDcgQEAKIAlESVIgKmRpcjsKIAlzdHJ1Y3QgZGlyZW50ICpkOwogCWludCByZXQgPSAwOwotCXN0cnVjdCByZXBvc2l0b3J5X2Zvcm1hdCBmb3JtYXQ7CisJc3RydWN0IHJlcG9zaXRvcnlfZm9ybWF0IGZvcm1hdCA9IFJFUE9TSVRPUllfRk9STUFUX0lOSVQ7CiAKIAlzdWJtb2R1bGVfZ2l0ZGlyID0gZ2l0X3BhdGhkdXBfc3VibW9kdWxlKHBhdGgsICIlcyIsICIiKTsKIAlpZiAoIXN1Ym1vZHVsZV9naXRkaXIpCkBAIC00NjIsOCArNDc4LDEwIEBACiAJcmVhZF9yZXBvc2l0b3J5X2Zvcm1hdCgmZm9ybWF0LCBzYi5idWYpOwogCWlmIChmb3JtYXQudmVyc2lvbiAhPSAwKSB7CiAJCXN0cmJ1Zl9yZWxlYXNlKCZzYik7CisJCWNsZWFyX3JlcG9zaXRvcnlfZm9ybWF0KCZmb3JtYXQpOwogCQlyZXR1cm4gMTsKIAl9CisJY2xlYXJfcmVwb3NpdG9yeV9mb3JtYXQoJmZvcm1hdCk7CiAKIAkvKiBSZXBsYWNlIGNvbmZpZyBieSB3b3JrdHJlZXMuICovCiAJc3RyYnVmX3NldGxlbigmc2IsIHNiLmxlbiAtIHN0cmxlbigiY29uZmlnIikpOwpkaWZmIC0tZ2l0IGEvd29ya3RyZWUuaCBiL3dvcmt0cmVlLmgKaW5kZXggOWUzYjBiNy4uZDI0MmE2ZSAxMDA2NDQKLS0tIGEvd29ya3RyZWUuaAorKysgYi93b3JrdHJlZS5oCkBAIC0zMCwzNyArMzAsNTMgQEAKICAqIFRoZSBjYWxsZXIgaXMgcmVzcG9uc2libGUgZm9yIGZyZWVpbmcgdGhlIG1lbW9yeSBmcm9tIHRoZSByZXR1cm5lZAogICogd29ya3RyZWUocykuCiAgKi8KLWV4dGVybiBzdHJ1Y3Qgd29ya3RyZWUgKipnZXRfd29ya3RyZWVzKHVuc2lnbmVkIGZsYWdzKTsKK3N0cnVjdCB3b3JrdHJlZSAqKmdldF93b3JrdHJlZXModW5zaWduZWQgZmxhZ3MpOwogCiAvKgogICogUmV0dXJucyAxIGlmIGxpbmtlZCB3b3JrdHJlZXMgZXhpc3QsIDAgb3RoZXJ3aXNlLgogICovCi1leHRlcm4gaW50IHN1Ym1vZHVsZV91c2VzX3dvcmt0cmVlcyhjb25zdCBjaGFyICpwYXRoKTsKK2ludCBzdWJtb2R1bGVfdXNlc193b3JrdHJlZXMoY29uc3QgY2hhciAqcGF0aCk7CiAKIC8qCiAgKiBSZXR1cm4gZ2l0IGRpciBvZiB0aGUgd29ya3RyZWUuIE5vdGUgdGhhdCB0aGUgcGF0aCBtYXkgYmUgcmVsYXRpdmUuCiAgKiBJZiB3dCBpcyBOVUxMLCBnaXQgZGlyIG9mIGN1cnJlbnQgd29ya3RyZWUgaXMgcmV0dXJuZWQuCiAgKi8KLWV4dGVybiBjb25zdCBjaGFyICpnZXRfd29ya3RyZWVfZ2l0X2Rpcihjb25zdCBzdHJ1Y3Qgd29ya3RyZWUgKnd0KTsKK2NvbnN0IGNoYXIgKmdldF93b3JrdHJlZV9naXRfZGlyKGNvbnN0IHN0cnVjdCB3b3JrdHJlZSAqd3QpOwogCiAvKgotICogU2VhcmNoIGEgd29ya3RyZWUgdGhhdCBjYW4gYmUgdW5hbWJpZ3VvdXNseSBpZGVudGlmaWVkIGJ5Ci0gKiAiYXJnIi4gInByZWZpeCIgbXVzdCBub3QgYmUgTlVMTC4KKyAqIFNlYXJjaCBmb3IgdGhlIHdvcmt0cmVlIGlkZW50aWZpZWQgdW5hbWJpZ3VvdXNseSBieSBgYXJnYCAtLSB0eXBpY2FsbHkKKyAqIHN1cHBsaWVkIGJ5IHRoZSB1c2VyIHZpYSB0aGUgY29tbWFuZC1saW5lIC0tIHdoaWNoIG1heSBiZSBhIHBhdGhuYW1lIG9yIHNvbWUKKyAqIHNob3J0aGFuZCB1bmlxdWVseSBpZGVudGlmeWluZyBhIHdvcmt0cmVlLCB0aHVzIG1ha2luZyBpdCBjb252ZW5pZW50IGZvciB0aGUKKyAqIHVzZXIgdG8gc3BlY2lmeSBhIHdvcmt0cmVlIHdpdGggbWluaW1hbCB0eXBpbmcuIEZvciBpbnN0YW5jZSwgaWYgdGhlIGxhc3QKKyAqIGNvbXBvbmVudCAoc2F5LCAiZm9vIikgb2YgYSB3b3JrdHJlZSdzIHBhdGhuYW1lIGlzIHVuaXF1ZSBhbW9uZyB3b3JrdHJlZXMKKyAqIChzYXksICJ3b3JrL2ZvbyIgYW5kICJ3b3JrL2JhciIpLCBpdCBjYW4gYmUgdXNlZCB0byBpZGVudGlmeSB0aGUgd29ya3RyZWUKKyAqIHVuYW1iaWd1b3VzbHkuCisgKgorICogYHByZWZpeGAgc2hvdWxkIGJlIHRoZSBgcHJlZml4YCBoYW5kZWQgdG8gdG9wLWxldmVsIEdpdCBjb21tYW5kcyBhbG9uZyB3aXRoCisgKiBgYXJnY2AgYW5kIGBhcmd2YC4KKyAqCisgKiBSZXR1cm4gdGhlIHdvcmt0cmVlIGlkZW50aWZpZWQgYnkgYGFyZ2AsIG9yIE5VTEwgaWYgbm90IGZvdW5kLgogICovCi1leHRlcm4gc3RydWN0IHdvcmt0cmVlICpmaW5kX3dvcmt0cmVlKHN0cnVjdCB3b3JrdHJlZSAqKmxpc3QsCi0JCQkJICAgICAgY29uc3QgY2hhciAqcHJlZml4LAotCQkJCSAgICAgIGNvbnN0IGNoYXIgKmFyZyk7CitzdHJ1Y3Qgd29ya3RyZWUgKmZpbmRfd29ya3RyZWUoc3RydWN0IHdvcmt0cmVlICoqbGlzdCwKKwkJCSAgICAgICBjb25zdCBjaGFyICpwcmVmaXgsCisJCQkgICAgICAgY29uc3QgY2hhciAqYXJnKTsKKworLyoKKyAqIFJldHVybiB0aGUgd29ya3RyZWUgY29ycmVzcG9uZGluZyB0byBgcGF0aGAsIG9yIE5VTEwgaWYgbm8gc3VjaCB3b3JrdHJlZQorICogZXhpc3RzLgorICovCitzdHJ1Y3Qgd29ya3RyZWUgKmZpbmRfd29ya3RyZWVfYnlfcGF0aChzdHJ1Y3Qgd29ya3RyZWUgKiosIGNvbnN0IGNoYXIgKnBhdGgpOwogCiAvKgogICogUmV0dXJuIHRydWUgaWYgdGhlIGdpdmVuIHdvcmt0cmVlIGlzIHRoZSBtYWluIG9uZS4KICAqLwotZXh0ZXJuIGludCBpc19tYWluX3dvcmt0cmVlKGNvbnN0IHN0cnVjdCB3b3JrdHJlZSAqd3QpOworaW50IGlzX21haW5fd29ya3RyZWUoY29uc3Qgc3RydWN0IHdvcmt0cmVlICp3dCk7CiAKIC8qCiAgKiBSZXR1cm4gdGhlIHJlYXNvbiBzdHJpbmcgaWYgdGhlIGdpdmVuIHdvcmt0cmVlIGlzIGxvY2tlZCBvciBOVUxMCiAgKiBvdGhlcndpc2UuCiAgKi8KLWV4dGVybiBjb25zdCBjaGFyICp3b3JrdHJlZV9sb2NrX3JlYXNvbihzdHJ1Y3Qgd29ya3RyZWUgKnd0KTsKK2NvbnN0IGNoYXIgKndvcmt0cmVlX2xvY2tfcmVhc29uKHN0cnVjdCB3b3JrdHJlZSAqd3QpOwogCiAjZGVmaW5lIFdUX1ZBTElEQVRFX1dPUktUUkVFX01JU1NJTkdfT0sgKDEgPDwgMCkKIApAQCAtNjgsMjggKzg0LDI4IEBACiAgKiBSZXR1cm4gemVybyBpZiB0aGUgd29ya3RyZWUgaXMgaW4gZ29vZCBjb25kaXRpb24uIEVycm9yIG1lc3NhZ2UgaXMKICAqIHJldHVybmVkIGlmICJlcnJtc2ciIGlzIG5vdCBOVUxMLgogICovCi1leHRlcm4gaW50IHZhbGlkYXRlX3dvcmt0cmVlKGNvbnN0IHN0cnVjdCB3b3JrdHJlZSAqd3QsCi0JCQkgICAgIHN0cnVjdCBzdHJidWYgKmVycm1zZywKLQkJCSAgICAgdW5zaWduZWQgZmxhZ3MpOworaW50IHZhbGlkYXRlX3dvcmt0cmVlKGNvbnN0IHN0cnVjdCB3b3JrdHJlZSAqd3QsCisJCSAgICAgIHN0cnVjdCBzdHJidWYgKmVycm1zZywKKwkJICAgICAgdW5zaWduZWQgZmxhZ3MpOwogCiAvKgogICogVXBkYXRlIHdvcmt0cmVlcy94eHgvZ2l0ZGlyIHdpdGggdGhlIG5ldyBwYXRoLgogICovCi1leHRlcm4gdm9pZCB1cGRhdGVfd29ya3RyZWVfbG9jYXRpb24oc3RydWN0IHdvcmt0cmVlICp3dCwKLQkJCQkgICAgIGNvbnN0IGNoYXIgKnBhdGhfKTsKK3ZvaWQgdXBkYXRlX3dvcmt0cmVlX2xvY2F0aW9uKHN0cnVjdCB3b3JrdHJlZSAqd3QsCisJCQkgICAgICBjb25zdCBjaGFyICpwYXRoXyk7CiAKIC8qCiAgKiBGcmVlIHVwIHRoZSBtZW1vcnkgZm9yIHdvcmt0cmVlKHMpCiAgKi8KLWV4dGVybiB2b2lkIGZyZWVfd29ya3RyZWVzKHN0cnVjdCB3b3JrdHJlZSAqKik7Cit2b2lkIGZyZWVfd29ya3RyZWVzKHN0cnVjdCB3b3JrdHJlZSAqKik7CiAKIC8qCiAgKiBDaGVjayBpZiBhIHBlci13b3JrdHJlZSBzeW1yZWYgcG9pbnRzIHRvIGEgcmVmIGluIHRoZSBtYWluIHdvcmt0cmVlCiAgKiBvciBhbnkgbGlua2VkIHdvcmt0cmVlLCBhbmQgcmV0dXJuIHRoZSB3b3JrdHJlZSB0aGF0IGhvbGRzIHRoZSByZWYsCiAgKiBvciBOVUxMIG90aGVyd2lzZS4gVGhlIHJlc3VsdCBtYXkgYmUgZGVzdHJveWVkIGJ5IHRoZSBuZXh0IGNhbGwuCiAgKi8KLWV4dGVybiBjb25zdCBzdHJ1Y3Qgd29ya3RyZWUgKmZpbmRfc2hhcmVkX3N5bXJlZihjb25zdCBjaGFyICpzeW1yZWYsCi0JCQkJCQkgY29uc3QgY2hhciAqdGFyZ2V0KTsKK2NvbnN0IHN0cnVjdCB3b3JrdHJlZSAqZmluZF9zaGFyZWRfc3ltcmVmKGNvbnN0IGNoYXIgKnN5bXJlZiwKKwkJCQkJICBjb25zdCBjaGFyICp0YXJnZXQpOwogCiAvKgogICogU2ltaWxhciB0byBoZWFkX3JlZigpIGZvciBhbGwgSEVBRHMgX2V4Y2VwdF8gb25lIGZyb20gdGhlIGN1cnJlbnQKQEAgLTEwNCw4ICsxMjAsOCBAQAogICogU2ltaWxhciB0byBnaXRfcGF0aCgpIGJ1dCBjYW4gcHJvZHVjZSBwYXRocyBmb3IgYSBzcGVjaWZpZWQKICAqIHdvcmt0cmVlIGluc3RlYWQgb2YgY3VycmVudCBvbmUKICAqLwotZXh0ZXJuIGNvbnN0IGNoYXIgKndvcmt0cmVlX2dpdF9wYXRoKGNvbnN0IHN0cnVjdCB3b3JrdHJlZSAqd3QsCi0JCQkJICAgICBjb25zdCBjaGFyICpmbXQsIC4uLikKK2NvbnN0IGNoYXIgKndvcmt0cmVlX2dpdF9wYXRoKGNvbnN0IHN0cnVjdCB3b3JrdHJlZSAqd3QsCisJCQkgICAgICBjb25zdCBjaGFyICpmbXQsIC4uLikKIAlfX2F0dHJpYnV0ZV9fKChmb3JtYXQgKHByaW50ZiwgMiwgMykpKTsKIAogLyoKZGlmZiAtLWdpdCBhL3dyYXBwZXIuYyBiL3dyYXBwZXIuYwppbmRleCBlNGZhOWQ4Li5lMWVhZWYyIDEwMDY0NAotLS0gYS93cmFwcGVyLmMKKysrIGIvd3JhcHBlci5jCkBAIC00LDEyICs0LDYgQEAKICNpbmNsdWRlICJjYWNoZS5oIgogI2luY2x1ZGUgImNvbmZpZy5oIgogCi1zdGF0aWMgdm9pZCBkb19ub3RoaW5nKHNpemVfdCBzaXplKQotewotfQotCi1zdGF0aWMgdm9pZCAoKnRyeV90b19mcmVlX3JvdXRpbmUpKHNpemVfdCBzaXplKSA9IGRvX25vdGhpbmc7Ci0KIHN0YXRpYyBpbnQgbWVtb3J5X2xpbWl0X2NoZWNrKHNpemVfdCBzaXplLCBpbnQgZ2VudGxlKQogewogCXN0YXRpYyBzaXplX3QgbGltaXQgPSAwOwpAQCAtMzAsMjQgKzI0LDExIEBACiAJcmV0dXJuIDA7CiB9CiAKLXRyeV90b19mcmVlX3Qgc2V0X3RyeV90b19mcmVlX3JvdXRpbmUodHJ5X3RvX2ZyZWVfdCByb3V0aW5lKQotewotCXRyeV90b19mcmVlX3Qgb2xkID0gdHJ5X3RvX2ZyZWVfcm91dGluZTsKLQlpZiAoIXJvdXRpbmUpCi0JCXJvdXRpbmUgPSBkb19ub3RoaW5nOwotCXRyeV90b19mcmVlX3JvdXRpbmUgPSByb3V0aW5lOwotCXJldHVybiBvbGQ7Ci19Ci0KIGNoYXIgKnhzdHJkdXAoY29uc3QgY2hhciAqc3RyKQogewogCWNoYXIgKnJldCA9IHN0cmR1cChzdHIpOwotCWlmICghcmV0KSB7Ci0JCXRyeV90b19mcmVlX3JvdXRpbmUoc3RybGVuKHN0cikgKyAxKTsKLQkJcmV0ID0gc3RyZHVwKHN0cik7Ci0JCWlmICghcmV0KQotCQkJZGllKCJPdXQgb2YgbWVtb3J5LCBzdHJkdXAgZmFpbGVkIik7Ci0JfQorCWlmICghcmV0KQorCQlkaWUoIk91dCBvZiBtZW1vcnksIHN0cmR1cCBmYWlsZWQiKTsKIAlyZXR1cm4gcmV0OwogfQogCkBAIC02MSwxOSArNDIsMTMgQEAKIAlpZiAoIXJldCAmJiAhc2l6ZSkKIAkJcmV0ID0gbWFsbG9jKDEpOwogCWlmICghcmV0KSB7Ci0JCXRyeV90b19mcmVlX3JvdXRpbmUoc2l6ZSk7Ci0JCXJldCA9IG1hbGxvYyhzaXplKTsKLQkJaWYgKCFyZXQgJiYgIXNpemUpCi0JCQlyZXQgPSBtYWxsb2MoMSk7Ci0JCWlmICghcmV0KSB7Ci0JCQlpZiAoIWdlbnRsZSkKLQkJCQlkaWUoIk91dCBvZiBtZW1vcnksIG1hbGxvYyBmYWlsZWQgKHRyaWVkIHRvIGFsbG9jYXRlICVsdSBieXRlcykiLAotCQkJCSAgICAodW5zaWduZWQgbG9uZylzaXplKTsKLQkJCWVsc2UgewotCQkJCWVycm9yKCJPdXQgb2YgbWVtb3J5LCBtYWxsb2MgZmFpbGVkICh0cmllZCB0byBhbGxvY2F0ZSAlbHUgYnl0ZXMpIiwKLQkJCQkgICAgICAodW5zaWduZWQgbG9uZylzaXplKTsKLQkJCQlyZXR1cm4gTlVMTDsKLQkJCX0KKwkJaWYgKCFnZW50bGUpCisJCQlkaWUoIk91dCBvZiBtZW1vcnksIG1hbGxvYyBmYWlsZWQgKHRyaWVkIHRvIGFsbG9jYXRlICVsdSBieXRlcykiLAorCQkJICAgICh1bnNpZ25lZCBsb25nKXNpemUpOworCQllbHNlIHsKKwkJCWVycm9yKCJPdXQgb2YgbWVtb3J5LCBtYWxsb2MgZmFpbGVkICh0cmllZCB0byBhbGxvY2F0ZSAlbHUgYnl0ZXMpIiwKKwkJCSAgICAgICh1bnNpZ25lZCBsb25nKXNpemUpOworCQkJcmV0dXJuIE5VTEw7CiAJCX0KIAl9CiAjaWZkZWYgWE1BTExPQ19QT0lTT04KQEAgLTEzOCwxNCArMTEzLDggQEAKIAlyZXQgPSByZWFsbG9jKHB0ciwgc2l6ZSk7CiAJaWYgKCFyZXQgJiYgIXNpemUpCiAJCXJldCA9IHJlYWxsb2MocHRyLCAxKTsKLQlpZiAoIXJldCkgewotCQl0cnlfdG9fZnJlZV9yb3V0aW5lKHNpemUpOwotCQlyZXQgPSByZWFsbG9jKHB0ciwgc2l6ZSk7Ci0JCWlmICghcmV0ICYmICFzaXplKQotCQkJcmV0ID0gcmVhbGxvYyhwdHIsIDEpOwotCQlpZiAoIXJldCkKLQkJCWRpZSgiT3V0IG9mIG1lbW9yeSwgcmVhbGxvYyBmYWlsZWQiKTsKLQl9CisJaWYgKCFyZXQpCisJCWRpZSgiT3V0IG9mIG1lbW9yeSwgcmVhbGxvYyBmYWlsZWQiKTsKIAlyZXR1cm4gcmV0OwogfQogCkBAIC0xNjAsMTQgKzEyOSw4IEBACiAJcmV0ID0gY2FsbG9jKG5tZW1iLCBzaXplKTsKIAlpZiAoIXJldCAmJiAoIW5tZW1iIHx8ICFzaXplKSkKIAkJcmV0ID0gY2FsbG9jKDEsIDEpOwotCWlmICghcmV0KSB7Ci0JCXRyeV90b19mcmVlX3JvdXRpbmUobm1lbWIgKiBzaXplKTsKLQkJcmV0ID0gY2FsbG9jKG5tZW1iLCBzaXplKTsKLQkJaWYgKCFyZXQgJiYgKCFubWVtYiB8fCAhc2l6ZSkpCi0JCQlyZXQgPSBjYWxsb2MoMSwgMSk7Ci0JCWlmICghcmV0KQotCQkJZGllKCJPdXQgb2YgbWVtb3J5LCBjYWxsb2MgZmFpbGVkIik7Ci0JfQorCWlmICghcmV0KQorCQlkaWUoIk91dCBvZiBtZW1vcnksIGNhbGxvYyBmYWlsZWQiKTsKIAlyZXR1cm4gcmV0OwogfQogCkBAIC00NzgsNyArNDQxLDkgQEAKIAkJImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6IgogCQkiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiCiAJCSIwMTIzNDU2Nzg5IjsKLQlzdGF0aWMgY29uc3QgaW50IG51bV9sZXR0ZXJzID0gNjI7CisJc3RhdGljIGNvbnN0IGludCBudW1fbGV0dGVycyA9IEFSUkFZX1NJWkUobGV0dGVycykgLSAxOworCXN0YXRpYyBjb25zdCBjaGFyIHhfcGF0dGVybltdID0gIlhYWFhYWCI7CisJc3RhdGljIGNvbnN0IGludCBudW1feCA9IEFSUkFZX1NJWkUoeF9wYXR0ZXJuKSAtIDE7CiAJdWludDY0X3QgdmFsdWU7CiAJc3RydWN0IHRpbWV2YWwgdHY7CiAJY2hhciAqZmlsZW5hbWVfdGVtcGxhdGU7CkBAIC00ODcsMTIgKzQ1MiwxMiBAQAogCiAJbGVuID0gc3RybGVuKHBhdHRlcm4pOwogCi0JaWYgKGxlbiA8IDYgKyBzdWZmaXhfbGVuKSB7CisJaWYgKGxlbiA8IG51bV94ICsgc3VmZml4X2xlbikgewogCQllcnJubyA9IEVJTlZBTDsKIAkJcmV0dXJuIC0xOwogCX0KIAotCWlmIChzdHJuY21wKCZwYXR0ZXJuW2xlbiAtIDYgLSBzdWZmaXhfbGVuXSwgIlhYWFhYWCIsIDYpKSB7CisJaWYgKHN0cm5jbXAoJnBhdHRlcm5bbGVuIC0gbnVtX3ggLSBzdWZmaXhfbGVuXSwgeF9wYXR0ZXJuLCBudW1feCkpIHsKIAkJZXJybm8gPSBFSU5WQUw7CiAJCXJldHVybiAtMTsKIAl9CkBAIC01MDIsMTcgKzQ2NywxNiBAQAogCSAqIFRyeSBUTVBfTUFYIGRpZmZlcmVudCBmaWxlbmFtZXMuCiAJICovCiAJZ2V0dGltZW9mZGF5KCZ0diwgTlVMTCk7Ci0JdmFsdWUgPSAoKHNpemVfdCkodHYudHZfdXNlYyA8PCAxNikpIF4gdHYudHZfc2VjIF4gZ2V0cGlkKCk7Ci0JZmlsZW5hbWVfdGVtcGxhdGUgPSAmcGF0dGVybltsZW4gLSA2IC0gc3VmZml4X2xlbl07CisJdmFsdWUgPSAoKHVpbnQ2NF90KXR2LnR2X3VzZWMgPDwgMTYpIF4gdHYudHZfc2VjIF4gZ2V0cGlkKCk7CisJZmlsZW5hbWVfdGVtcGxhdGUgPSAmcGF0dGVybltsZW4gLSBudW1feCAtIHN1ZmZpeF9sZW5dOwogCWZvciAoY291bnQgPSAwOyBjb3VudCA8IFRNUF9NQVg7ICsrY291bnQpIHsKIAkJdWludDY0X3QgdiA9IHZhbHVlOworCQlpbnQgaTsKIAkJLyogRmlsbCBpbiB0aGUgcmFuZG9tIGJpdHMuICovCi0JCWZpbGVuYW1lX3RlbXBsYXRlWzBdID0gbGV0dGVyc1t2ICUgbnVtX2xldHRlcnNdOyB2IC89IG51bV9sZXR0ZXJzOwotCQlmaWxlbmFtZV90ZW1wbGF0ZVsxXSA9IGxldHRlcnNbdiAlIG51bV9sZXR0ZXJzXTsgdiAvPSBudW1fbGV0dGVyczsKLQkJZmlsZW5hbWVfdGVtcGxhdGVbMl0gPSBsZXR0ZXJzW3YgJSBudW1fbGV0dGVyc107IHYgLz0gbnVtX2xldHRlcnM7Ci0JCWZpbGVuYW1lX3RlbXBsYXRlWzNdID0gbGV0dGVyc1t2ICUgbnVtX2xldHRlcnNdOyB2IC89IG51bV9sZXR0ZXJzOwotCQlmaWxlbmFtZV90ZW1wbGF0ZVs0XSA9IGxldHRlcnNbdiAlIG51bV9sZXR0ZXJzXTsgdiAvPSBudW1fbGV0dGVyczsKLQkJZmlsZW5hbWVfdGVtcGxhdGVbNV0gPSBsZXR0ZXJzW3YgJSBudW1fbGV0dGVyc107IHYgLz0gbnVtX2xldHRlcnM7CisJCWZvciAoaSA9IDA7IGkgPCBudW1feDsgaSsrKSB7CisJCQlmaWxlbmFtZV90ZW1wbGF0ZVtpXSA9IGxldHRlcnNbdiAlIG51bV9sZXR0ZXJzXTsKKwkJCXYgLz0gbnVtX2xldHRlcnM7CisJCX0KIAogCQlmZCA9IG9wZW4ocGF0dGVybiwgT19DUkVBVCB8IE9fRVhDTCB8IE9fUkRXUiwgbW9kZSk7CiAJCWlmIChmZCA+PSAwKQpAQCAtNjkwLDMgKzY1NCwxNiBAQAogCQlidWZbbGVuIC0gMV0gPSAwOwogCXJldHVybiByZXQ7CiB9CisKK2ludCBpc19lbXB0eV9vcl9taXNzaW5nX2ZpbGUoY29uc3QgY2hhciAqZmlsZW5hbWUpCit7CisJc3RydWN0IHN0YXQgc3Q7CisKKwlpZiAoc3RhdChmaWxlbmFtZSwgJnN0KSA8IDApIHsKKwkJaWYgKGVycm5vID09IEVOT0VOVCkKKwkJCXJldHVybiAxOworCQlkaWVfZXJybm8oXygiY291bGQgbm90IHN0YXQgJXMiKSwgZmlsZW5hbWUpOworCX0KKworCXJldHVybiAhc3Quc3Rfc2l6ZTsKK30KZGlmZiAtLWdpdCBhL3d0LXN0YXR1cy5jIGIvd3Qtc3RhdHVzLmMKaW5kZXggYTI0NzExMy4uY2M2Zjk0NSAxMDA2NDQKLS0tIGEvd3Qtc3RhdHVzLmMKKysrIGIvd3Qtc3RhdHVzLmMKQEAgLTE3LDYgKzE3LDkgQEAKICNpbmNsdWRlICJ1dGY4LmgiCiAjaW5jbHVkZSAid29ya3RyZWUuaCIKICNpbmNsdWRlICJsb2NrZmlsZS5oIgorI2luY2x1ZGUgInNlcXVlbmNlci5oIgorCisjZGVmaW5lIEFCX0RFTEFZX1dBUk5JTkdfSU5fTVMgKDIgKiAxMDAwKQogCiBzdGF0aWMgY29uc3QgY2hhciBjdXRfbGluZVtdID0KICItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gPjggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iOwpAQCAtMTE5LDkgKzEyMiwxMCBAQAogCXZhX2VuZChhcCk7CiB9CiAKLXZvaWQgd3Rfc3RhdHVzX3ByZXBhcmUoc3RydWN0IHd0X3N0YXR1cyAqcykKK3ZvaWQgd3Rfc3RhdHVzX3ByZXBhcmUoc3RydWN0IHJlcG9zaXRvcnkgKnIsIHN0cnVjdCB3dF9zdGF0dXMgKnMpCiB7CiAJbWVtc2V0KHMsIDAsIHNpemVvZigqcykpOworCXMtPnJlcG8gPSByOwogCW1lbWNweShzLT5jb2xvcl9wYWxldHRlLCBkZWZhdWx0X3d0X3N0YXR1c19jb2xvcnMsCiAJICAgICAgIHNpemVvZihkZWZhdWx0X3d0X3N0YXR1c19jb2xvcnMpKTsKIAlzLT5zaG93X3VudHJhY2tlZF9maWxlcyA9IFNIT1dfTk9STUFMX1VOVFJBQ0tFRF9GSUxFUzsKQEAgLTE3Nyw5ICsxODEsMTUgQEAKIAkJcmV0dXJuOwogCWlmIChzLT53aGVuY2UgIT0gRlJPTV9DT01NSVQpCiAJCTsKLQllbHNlIGlmICghcy0+aXNfaW5pdGlhbCkKLQkJc3RhdHVzX3ByaW50Zl9sbihzLCBjLCBfKCIgICh1c2UgXCJnaXQgcmVzZXQgJXMgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiKSwgcy0+cmVmZXJlbmNlKTsKLQllbHNlCisJZWxzZSBpZiAoIXMtPmlzX2luaXRpYWwpIHsKKwkJaWYgKCFzdHJjbXAocy0+cmVmZXJlbmNlLCAiSEVBRCIpKQorCQkJc3RhdHVzX3ByaW50Zl9sbihzLCBjLAorCQkJCQkgXygiICAodXNlIFwiZ2l0IHJlc3RvcmUgLS1zdGFnZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiKSk7CisJCWVsc2UKKwkJCXN0YXR1c19wcmludGZfbG4ocywgYywKKwkJCQkJIF8oIiAgKHVzZSBcImdpdCByZXN0b3JlIC0tc291cmNlPSVzIC0tc3RhZ2VkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIiksCisJCQkJCSBzLT5yZWZlcmVuY2UpOworCX0gZWxzZQogCQlzdGF0dXNfcHJpbnRmX2xuKHMsIGMsIF8oIiAgKHVzZSBcImdpdCBybSAtLWNhY2hlZCA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIpKTsKIAogCWlmICghYm90aF9kZWxldGVkKSB7CkBAIC0xOTIsNyArMjAyLDYgQEAKIAl9IGVsc2UgewogCQlzdGF0dXNfcHJpbnRmX2xuKHMsIGMsIF8oIiAgKHVzZSBcImdpdCBhZGQvcm0gPGZpbGU+Li4uXCIgYXMgYXBwcm9wcmlhdGUgdG8gbWFyayByZXNvbHV0aW9uKSIpKTsKIAl9Ci0Jc3RhdHVzX3ByaW50Zl9sbihzLCBjLCAiJXMiLCAiIik7CiB9CiAKIHN0YXRpYyB2b2lkIHd0X2xvbmdzdGF0dXNfcHJpbnRfY2FjaGVkX2hlYWRlcihzdHJ1Y3Qgd3Rfc3RhdHVzICpzKQpAQCAtMjA0LDExICsyMTMsMTYgQEAKIAkJcmV0dXJuOwogCWlmIChzLT53aGVuY2UgIT0gRlJPTV9DT01NSVQpCiAJCTsgLyogTkVFRFNXT1JLOiB1c2UgImdpdCByZXNldCAtLXVucmVzb2x2ZSI/Pz8gKi8KLQllbHNlIGlmICghcy0+aXNfaW5pdGlhbCkKLQkJc3RhdHVzX3ByaW50Zl9sbihzLCBjLCBfKCIgICh1c2UgXCJnaXQgcmVzZXQgJXMgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiKSwgcy0+cmVmZXJlbmNlKTsKLQllbHNlCisJZWxzZSBpZiAoIXMtPmlzX2luaXRpYWwpIHsKKwkJaWYgKCFzdHJjbXAocy0+cmVmZXJlbmNlLCAiSEVBRCIpKQorCQkJc3RhdHVzX3ByaW50Zl9sbihzLCBjCisJCQkJCSAsIF8oIiAgKHVzZSBcImdpdCByZXN0b3JlIC0tc3RhZ2VkIDxmaWxlPi4uLlwiIHRvIHVuc3RhZ2UpIikpOworCQllbHNlCisJCQlzdGF0dXNfcHJpbnRmX2xuKHMsIGMsCisJCQkJCSBfKCIgICh1c2UgXCJnaXQgcmVzdG9yZSAtLXNvdXJjZT0lcyAtLXN0YWdlZCA8ZmlsZT4uLi5cIiB0byB1bnN0YWdlKSIpLAorCQkJCQkgcy0+cmVmZXJlbmNlKTsKKwl9IGVsc2UKIAkJc3RhdHVzX3ByaW50Zl9sbihzLCBjLCBfKCIgICh1c2UgXCJnaXQgcm0gLS1jYWNoZWQgPGZpbGU+Li4uXCIgdG8gdW5zdGFnZSkiKSk7Ci0Jc3RhdHVzX3ByaW50Zl9sbihzLCBjLCAiJXMiLCAiIik7CiB9CiAKIHN0YXRpYyB2b2lkIHd0X2xvbmdzdGF0dXNfcHJpbnRfZGlydHlfaGVhZGVyKHN0cnVjdCB3dF9zdGF0dXMgKnMsCkBAIC0yMjQsMTAgKzIzOCw5IEBACiAJCXN0YXR1c19wcmludGZfbG4ocywgYywgXygiICAodXNlIFwiZ2l0IGFkZCA8ZmlsZT4uLi5cIiB0byB1cGRhdGUgd2hhdCB3aWxsIGJlIGNvbW1pdHRlZCkiKSk7CiAJZWxzZQogCQlzdGF0dXNfcHJpbnRmX2xuKHMsIGMsIF8oIiAgKHVzZSBcImdpdCBhZGQvcm0gPGZpbGU+Li4uXCIgdG8gdXBkYXRlIHdoYXQgd2lsbCBiZSBjb21taXR0ZWQpIikpOwotCXN0YXR1c19wcmludGZfbG4ocywgYywgXygiICAodXNlIFwiZ2l0IGNoZWNrb3V0IC0tIDxmaWxlPi4uLlwiIHRvIGRpc2NhcmQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeSkiKSk7CisJc3RhdHVzX3ByaW50Zl9sbihzLCBjLCBfKCIgICh1c2UgXCJnaXQgcmVzdG9yZSA8ZmlsZT4uLi5cIiB0byBkaXNjYXJkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3RvcnkpIikpOwogCWlmIChoYXNfZGlydHlfc3VibW9kdWxlcykKIAkJc3RhdHVzX3ByaW50Zl9sbihzLCBjLCBfKCIgIChjb21taXQgb3IgZGlzY2FyZCB0aGUgdW50cmFja2VkIG9yIG1vZGlmaWVkIGNvbnRlbnQgaW4gc3VibW9kdWxlcykiKSk7Ci0Jc3RhdHVzX3ByaW50Zl9sbihzLCBjLCAiJXMiLCAiIik7CiB9CiAKIHN0YXRpYyB2b2lkIHd0X2xvbmdzdGF0dXNfcHJpbnRfb3RoZXJfaGVhZGVyKHN0cnVjdCB3dF9zdGF0dXMgKnMsCkBAIC0yMzksNyArMjUyLDYgQEAKIAlpZiAoIXMtPmhpbnRzKQogCQlyZXR1cm47CiAJc3RhdHVzX3ByaW50Zl9sbihzLCBjLCBfKCIgICh1c2UgXCJnaXQgJXMgPGZpbGU+Li4uXCIgdG8gaW5jbHVkZSBpbiB3aGF0IHdpbGwgYmUgY29tbWl0dGVkKSIpLCBob3cpOwotCXN0YXR1c19wcmludGZfbG4ocywgYywgIiVzIiwgIiIpOwogfQogCiBzdGF0aWMgdm9pZCB3dF9sb25nc3RhdHVzX3ByaW50X3RyYWlsZXIoc3RydWN0IHd0X3N0YXR1cyAqcykKQEAgLTQ5NCwxOSArNTA2LDE5IEBACiAJfQogfQogCi1zdGF0aWMgaW50IHVubWVyZ2VkX21hc2soY29uc3QgY2hhciAqcGF0aCkKK3N0YXRpYyBpbnQgdW5tZXJnZWRfbWFzayhzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSwgY29uc3QgY2hhciAqcGF0aCkKIHsKIAlpbnQgcG9zLCBtYXNrOwogCWNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2U7CiAKLQlwb3MgPSBjYWNoZV9uYW1lX3BvcyhwYXRoLCBzdHJsZW4ocGF0aCkpOworCXBvcyA9IGluZGV4X25hbWVfcG9zKGlzdGF0ZSwgcGF0aCwgc3RybGVuKHBhdGgpKTsKIAlpZiAoMCA8PSBwb3MpCiAJCXJldHVybiAwOwogCiAJbWFzayA9IDA7CiAJcG9zID0gLXBvcy0xOwotCXdoaWxlIChwb3MgPCBhY3RpdmVfbnIpIHsKLQkJY2UgPSBhY3RpdmVfY2FjaGVbcG9zKytdOworCXdoaWxlIChwb3MgPCBpc3RhdGUtPmNhY2hlX25yKSB7CisJCWNlID0gaXN0YXRlLT5jYWNoZVtwb3MrK107CiAJCWlmIChzdHJjbXAoY2UtPm5hbWUsIHBhdGgpIHx8ICFjZV9zdGFnZShjZSkpCiAJCQlicmVhazsKIAkJbWFzayB8PSAoMSA8PCAoY2Vfc3RhZ2UoY2UpIC0gMSkpOwpAQCAtNTY2LDcgKzU3OCw4IEBACiAJCQlzLT5jb21taXR0YWJsZSA9IDE7CiAJCQlicmVhazsKIAkJY2FzZSBESUZGX1NUQVRVU19VTk1FUkdFRDoKLQkJCWQtPnN0YWdlbWFzayA9IHVubWVyZ2VkX21hc2socC0+dHdvLT5wYXRoKTsKKwkJCWQtPnN0YWdlbWFzayA9IHVubWVyZ2VkX21hc2socy0+cmVwby0+aW5kZXgsCisJCQkJCQkgICAgIHAtPnR3by0+cGF0aCk7CiAJCQkvKgogCQkJICogRG9uJ3QgYm90aGVyIHNldHRpbmcge21vZGUsb2lkfV97aGVhZCxpbmRleH0gc2luY2UgdGhlIHByaW50CiAJCQkgKiBjb2RlIHdpbGwgb3V0cHV0IHRoZSBzdGFnZSB2YWx1ZXMgZGlyZWN0bHkgYW5kIG5vdCB1c2UgdGhlCkBAIC01ODUsNyArNTk4LDcgQEAKIHsKIAlzdHJ1Y3QgcmV2X2luZm8gcmV2OwogCi0JcmVwb19pbml0X3JldmlzaW9ucyh0aGVfcmVwb3NpdG9yeSwgJnJldiwgTlVMTCk7CisJcmVwb19pbml0X3JldmlzaW9ucyhzLT5yZXBvLCAmcmV2LCBOVUxMKTsKIAlzZXR1cF9yZXZpc2lvbnMoMCwgTlVMTCwgJnJldiwgTlVMTCk7CiAJcmV2LmRpZmZvcHQub3V0cHV0X2Zvcm1hdCB8PSBESUZGX0ZPUk1BVF9DQUxMQkFDSzsKIAlyZXYuZGlmZm9wdC5mbGFncy5kaXJ0eV9zdWJtb2R1bGVzID0gMTsKQEAgLTYxMCw3ICs2MjMsNyBAQAogCXN0cnVjdCByZXZfaW5mbyByZXY7CiAJc3RydWN0IHNldHVwX3JldmlzaW9uX29wdCBvcHQ7CiAKLQlyZXBvX2luaXRfcmV2aXNpb25zKHRoZV9yZXBvc2l0b3J5LCAmcmV2LCBOVUxMKTsKKwlyZXBvX2luaXRfcmV2aXNpb25zKHMtPnJlcG8sICZyZXYsIE5VTEwpOwogCW1lbXNldCgmb3B0LCAwLCBzaXplb2Yob3B0KSk7CiAJb3B0LmRlZiA9IHMtPmlzX2luaXRpYWwgPyBlbXB0eV90cmVlX29pZF9oZXgoKSA6IHMtPnJlZmVyZW5jZTsKIAlzZXR1cF9yZXZpc2lvbnMoMCwgTlVMTCwgJnJldiwgJm9wdCk7CkBAIC02NDMsMTQgKzY1NiwxNSBAQAogCiBzdGF0aWMgdm9pZCB3dF9zdGF0dXNfY29sbGVjdF9jaGFuZ2VzX2luaXRpYWwoc3RydWN0IHd0X3N0YXR1cyAqcykKIHsKKwlzdHJ1Y3QgaW5kZXhfc3RhdGUgKmlzdGF0ZSA9IHMtPnJlcG8tPmluZGV4OwogCWludCBpOwogCi0JZm9yIChpID0gMDsgaSA8IGFjdGl2ZV9ucjsgaSsrKSB7CisJZm9yIChpID0gMDsgaSA8IGlzdGF0ZS0+Y2FjaGVfbnI7IGkrKykgewogCQlzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqaXQ7CiAJCXN0cnVjdCB3dF9zdGF0dXNfY2hhbmdlX2RhdGEgKmQ7Ci0JCWNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UgPSBhY3RpdmVfY2FjaGVbaV07CisJCWNvbnN0IHN0cnVjdCBjYWNoZV9lbnRyeSAqY2UgPSBpc3RhdGUtPmNhY2hlW2ldOwogCi0JCWlmICghY2VfcGF0aF9tYXRjaCgmdGhlX2luZGV4LCBjZSwgJnMtPnBhdGhzcGVjLCBOVUxMKSkKKwkJaWYgKCFjZV9wYXRoX21hdGNoKGlzdGF0ZSwgY2UsICZzLT5wYXRoc3BlYywgTlVMTCkpCiAJCQljb250aW51ZTsKIAkJaWYgKGNlX2ludGVudF90b19hZGQoY2UpKQogCQkJY29udGludWU7CkBAIC02ODQsNiArNjk4LDcgQEAKIAlpbnQgaTsKIAlzdHJ1Y3QgZGlyX3N0cnVjdCBkaXI7CiAJdWludDY0X3QgdF9iZWdpbiA9IGdldG5hbm90aW1lKCk7CisJc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUgPSBzLT5yZXBvLT5pbmRleDsKIAogCWlmICghcy0+c2hvd191bnRyYWNrZWRfZmlsZXMpCiAJCXJldHVybjsKQEAgLTY5OCwyNSArNzEzLDI1IEBACiAJCWlmIChzLT5zaG93X2lnbm9yZWRfbW9kZSA9PSBTSE9XX01BVENISU5HX0lHTk9SRUQpCiAJCQlkaXIuZmxhZ3MgfD0gRElSX1NIT1dfSUdOT1JFRF9UT09fTU9ERV9NQVRDSElORzsKIAl9IGVsc2UgewotCQlkaXIudW50cmFja2VkID0gdGhlX2luZGV4LnVudHJhY2tlZDsKKwkJZGlyLnVudHJhY2tlZCA9IGlzdGF0ZS0+dW50cmFja2VkOwogCX0KIAogCXNldHVwX3N0YW5kYXJkX2V4Y2x1ZGVzKCZkaXIpOwogCi0JZmlsbF9kaXJlY3RvcnkoJmRpciwgJnRoZV9pbmRleCwgJnMtPnBhdGhzcGVjKTsKKwlmaWxsX2RpcmVjdG9yeSgmZGlyLCBpc3RhdGUsICZzLT5wYXRoc3BlYyk7CiAKIAlmb3IgKGkgPSAwOyBpIDwgZGlyLm5yOyBpKyspIHsKIAkJc3RydWN0IGRpcl9lbnRyeSAqZW50ID0gZGlyLmVudHJpZXNbaV07Ci0JCWlmIChjYWNoZV9uYW1lX2lzX290aGVyKGVudC0+bmFtZSwgZW50LT5sZW4pICYmCi0JCSAgICBkaXJfcGF0aF9tYXRjaCgmdGhlX2luZGV4LCBlbnQsICZzLT5wYXRoc3BlYywgMCwgTlVMTCkpCisJCWlmIChpbmRleF9uYW1lX2lzX290aGVyKGlzdGF0ZSwgZW50LT5uYW1lLCBlbnQtPmxlbikgJiYKKwkJICAgIGRpcl9wYXRoX21hdGNoKGlzdGF0ZSwgZW50LCAmcy0+cGF0aHNwZWMsIDAsIE5VTEwpKQogCQkJc3RyaW5nX2xpc3RfaW5zZXJ0KCZzLT51bnRyYWNrZWQsIGVudC0+bmFtZSk7CiAJCWZyZWUoZW50KTsKIAl9CiAKIAlmb3IgKGkgPSAwOyBpIDwgZGlyLmlnbm9yZWRfbnI7IGkrKykgewogCQlzdHJ1Y3QgZGlyX2VudHJ5ICplbnQgPSBkaXIuaWdub3JlZFtpXTsKLQkJaWYgKGNhY2hlX25hbWVfaXNfb3RoZXIoZW50LT5uYW1lLCBlbnQtPmxlbikgJiYKLQkJICAgIGRpcl9wYXRoX21hdGNoKCZ0aGVfaW5kZXgsIGVudCwgJnMtPnBhdGhzcGVjLCAwLCBOVUxMKSkKKwkJaWYgKGluZGV4X25hbWVfaXNfb3RoZXIoaXN0YXRlLCBlbnQtPm5hbWUsIGVudC0+bGVuKSAmJgorCQkgICAgZGlyX3BhdGhfbWF0Y2goaXN0YXRlLCBlbnQsICZzLT5wYXRoc3BlYywgMCwgTlVMTCkpCiAJCQlzdHJpbmdfbGlzdF9pbnNlcnQoJnMtPmlnbm9yZWQsIGVudC0+bmFtZSk7CiAJCWZyZWUoZW50KTsKIAl9CkBAIC03NDQsMTQgKzc1OSwyNSBAQAogCiB2b2lkIHd0X3N0YXR1c19jb2xsZWN0KHN0cnVjdCB3dF9zdGF0dXMgKnMpCiB7CisJdHJhY2UyX3JlZ2lvbl9lbnRlcigic3RhdHVzIiwgIndvcmt0cmVlcyIsIHMtPnJlcG8pOwogCXd0X3N0YXR1c19jb2xsZWN0X2NoYW5nZXNfd29ya3RyZWUocyk7Ci0JaWYgKHMtPmlzX2luaXRpYWwpCi0JCXd0X3N0YXR1c19jb2xsZWN0X2NoYW5nZXNfaW5pdGlhbChzKTsKLQllbHNlCi0JCXd0X3N0YXR1c19jb2xsZWN0X2NoYW5nZXNfaW5kZXgocyk7Ci0Jd3Rfc3RhdHVzX2NvbGxlY3RfdW50cmFja2VkKHMpOworCXRyYWNlMl9yZWdpb25fbGVhdmUoInN0YXR1cyIsICJ3b3JrdHJlZXMiLCBzLT5yZXBvKTsKIAotCXd0X3N0YXR1c19nZXRfc3RhdGUoJnMtPnN0YXRlLCBzLT5icmFuY2ggJiYgIXN0cmNtcChzLT5icmFuY2gsICJIRUFEIikpOworCWlmIChzLT5pc19pbml0aWFsKSB7CisJCXRyYWNlMl9yZWdpb25fZW50ZXIoInN0YXR1cyIsICJpbml0aWFsIiwgcy0+cmVwbyk7CisJCXd0X3N0YXR1c19jb2xsZWN0X2NoYW5nZXNfaW5pdGlhbChzKTsKKwkJdHJhY2UyX3JlZ2lvbl9sZWF2ZSgic3RhdHVzIiwgImluaXRpYWwiLCBzLT5yZXBvKTsKKwl9IGVsc2UgeworCQl0cmFjZTJfcmVnaW9uX2VudGVyKCJzdGF0dXMiLCAiaW5kZXgiLCBzLT5yZXBvKTsKKwkJd3Rfc3RhdHVzX2NvbGxlY3RfY2hhbmdlc19pbmRleChzKTsKKwkJdHJhY2UyX3JlZ2lvbl9sZWF2ZSgic3RhdHVzIiwgImluZGV4Iiwgcy0+cmVwbyk7CisJfQorCisJdHJhY2UyX3JlZ2lvbl9lbnRlcigic3RhdHVzIiwgInVudHJhY2tlZCIsIHMtPnJlcG8pOworCXd0X3N0YXR1c19jb2xsZWN0X3VudHJhY2tlZChzKTsKKwl0cmFjZTJfcmVnaW9uX2xlYXZlKCJzdGF0dXMiLCAidW50cmFja2VkIiwgcy0+cmVwbyk7CisKKwl3dF9zdGF0dXNfZ2V0X3N0YXRlKHMtPnJlcG8sICZzLT5zdGF0ZSwgcy0+YnJhbmNoICYmICFzdHJjbXAocy0+YnJhbmNoLCAiSEVBRCIpKTsKIAlpZiAocy0+c3RhdGUubWVyZ2VfaW5fcHJvZ3Jlc3MgJiYgIWhhc191bm1lcmdlZChzKSkKIAkJcy0+Y29tbWl0dGFibGUgPSAxOwogfQpAQCAtOTkxLDEzICsxMDE3LDE5IEBACiAJcmV0dXJuIGxlbjsKIH0KIAotdm9pZCB3dF9zdGF0dXNfYWRkX2N1dF9saW5lKEZJTEUgKmZwKQordm9pZCB3dF9zdGF0dXNfYXBwZW5kX2N1dF9saW5lKHN0cnVjdCBzdHJidWYgKmJ1ZikKIHsKIAljb25zdCBjaGFyICpleHBsYW5hdGlvbiA9IF8oIkRvIG5vdCBtb2RpZnkgb3IgcmVtb3ZlIHRoZSBsaW5lIGFib3ZlLlxuRXZlcnl0aGluZyBiZWxvdyBpdCB3aWxsIGJlIGlnbm9yZWQuIik7CisKKwlzdHJidWZfY29tbWVudGVkX2FkZGYoYnVmLCAiJXMiLCBjdXRfbGluZSk7CisJc3RyYnVmX2FkZF9jb21tZW50ZWRfbGluZXMoYnVmLCBleHBsYW5hdGlvbiwgc3RybGVuKGV4cGxhbmF0aW9uKSk7Cit9CisKK3ZvaWQgd3Rfc3RhdHVzX2FkZF9jdXRfbGluZShGSUxFICpmcCkKK3sKIAlzdHJ1Y3Qgc3RyYnVmIGJ1ZiA9IFNUUkJVRl9JTklUOwogCi0JZnByaW50ZihmcCwgIiVjICVzIiwgY29tbWVudF9saW5lX2NoYXIsIGN1dF9saW5lKTsKLQlzdHJidWZfYWRkX2NvbW1lbnRlZF9saW5lcygmYnVmLCBleHBsYW5hdGlvbiwgc3RybGVuKGV4cGxhbmF0aW9uKSk7CisJd3Rfc3RhdHVzX2FwcGVuZF9jdXRfbGluZSgmYnVmKTsKIAlmcHV0cyhidWYuYnVmLCBmcCk7CiAJc3RyYnVmX3JlbGVhc2UoJmJ1Zik7CiB9CkBAIC0xMDA5LDcgKzEwNDEsNyBAQAogCWludCBkaXJ0eV9zdWJtb2R1bGVzOwogCWNvbnN0IGNoYXIgKmMgPSBjb2xvcihXVF9TVEFUVVNfSEVBREVSLCBzKTsKIAotCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksICZyZXYsIE5VTEwpOworCXJlcG9faW5pdF9yZXZpc2lvbnMocy0+cmVwbywgJnJldiwgTlVMTCk7CiAJcmV2LmRpZmZvcHQuZmxhZ3MuYWxsb3dfdGV4dGNvbnYgPSAxOwogCXJldi5kaWZmb3B0Lml0YV9pbnZpc2libGVfaW5faW5kZXggPSAxOwogCkBAIC0xMDYzLDE0ICsxMDk1LDI5IEBACiAJc3RydWN0IGJyYW5jaCAqYnJhbmNoOwogCWNoYXIgY29tbWVudF9saW5lX3N0cmluZ1szXTsKIAlpbnQgaTsKKwl1aW50NjRfdCB0X2JlZ2luID0gMDsKIAogCWFzc2VydChzLT5icmFuY2ggJiYgIXMtPmlzX2luaXRpYWwpOwogCWlmICghc2tpcF9wcmVmaXgocy0+YnJhbmNoLCAicmVmcy9oZWFkcy8iLCAmYnJhbmNoX25hbWUpKQogCQlyZXR1cm47CiAJYnJhbmNoID0gYnJhbmNoX2dldChicmFuY2hfbmFtZSk7CisKKwl0X2JlZ2luID0gZ2V0bmFub3RpbWUoKTsKKwogCWlmICghZm9ybWF0X3RyYWNraW5nX2luZm8oYnJhbmNoLCAmc2IsIHMtPmFoZWFkX2JlaGluZF9mbGFncykpCiAJCXJldHVybjsKIAorCWlmIChhZHZpY2Vfc3RhdHVzX2FoZWFkX2JlaGluZF93YXJuaW5nICYmCisJICAgIHMtPmFoZWFkX2JlaGluZF9mbGFncyA9PSBBSEVBRF9CRUhJTkRfRlVMTCkgeworCQl1aW50NjRfdCB0X2RlbHRhX2luX21zID0gKGdldG5hbm90aW1lKCkgLSB0X2JlZ2luKSAvIDEwMDAwMDA7CisJCWlmICh0X2RlbHRhX2luX21zID4gQUJfREVMQVlfV0FSTklOR19JTl9NUykgeworCQkJc3RyYnVmX2FkZGYoJnNiLCBfKCJcbiIKKwkJCQkJICAgIkl0IHRvb2sgJS4yZiBzZWNvbmRzIHRvIGNvbXB1dGUgdGhlIGJyYW5jaCBhaGVhZC9iZWhpbmQgdmFsdWVzLlxuIgorCQkJCQkgICAiWW91IGNhbiB1c2UgJy0tbm8tYWhlYWQtYmVoaW5kJyB0byBhdm9pZCB0aGlzLlxuIiksCisJCQkJICAgIHRfZGVsdGFfaW5fbXMgLyAxMDAwLjApOworCQl9CisJfQorCiAJaSA9IDA7CiAJaWYgKHMtPmRpc3BsYXlfY29tbWVudF9wcmVmaXgpIHsKIAkJY29tbWVudF9saW5lX3N0cmluZ1tpKytdID0gY29tbWVudF9saW5lX2NoYXI7CkBAIC0xMTkzLDcgKzEyNDAsOSBAQAogCWludCBpOwogCiAJaWYgKHN0YXJ0c193aXRoKGxpbmUtPmJ1ZiwgImV4ZWMgIikgfHwKLQkgICAgc3RhcnRzX3dpdGgobGluZS0+YnVmLCAieCAiKSkKKwkgICAgc3RhcnRzX3dpdGgobGluZS0+YnVmLCAieCAiKSB8fAorCSAgICBzdGFydHNfd2l0aChsaW5lLT5idWYsICJsYWJlbCAiKSB8fAorCSAgICBzdGFydHNfd2l0aChsaW5lLT5idWYsICJsICIpKQogCQlyZXR1cm47CiAKIAlzcGxpdCA9IHN0cmJ1Zl9zcGxpdF9tYXgobGluZSwgJyAnLCAzKTsKQEAgLTEzMjYsNyArMTM3NSw3IEBACiAJCQkJXygiICAodXNlIFwiZ2l0IHJlYmFzZSAtLWFib3J0XCIgdG8gY2hlY2sgb3V0IHRoZSBvcmlnaW5hbCBicmFuY2gpIikpOwogCQl9CiAJfSBlbHNlIGlmIChzLT5zdGF0ZS5yZWJhc2VfaW5fcHJvZ3Jlc3MgfHwKLQkJICAgIXN0YXQoZ2l0X3BhdGhfbWVyZ2VfbXNnKHRoZV9yZXBvc2l0b3J5KSwgJnN0KSkgeworCQkgICAhc3RhdChnaXRfcGF0aF9tZXJnZV9tc2cocy0+cmVwbyksICZzdCkpIHsKIAkJcHJpbnRfcmViYXNlX3N0YXRlKHMsIGNvbG9yKTsKIAkJaWYgKHMtPmhpbnRzKQogCQkJc3RhdHVzX3ByaW50Zl9sbihzLCBjb2xvciwKQEAgLTEzNjUsMTYgKzE0MTQsMjggQEAKIHN0YXRpYyB2b2lkIHNob3dfY2hlcnJ5X3BpY2tfaW5fcHJvZ3Jlc3Moc3RydWN0IHd0X3N0YXR1cyAqcywKIAkJCQkJIGNvbnN0IGNoYXIgKmNvbG9yKQogewotCXN0YXR1c19wcmludGZfbG4ocywgY29sb3IsIF8oIllvdSBhcmUgY3VycmVudGx5IGNoZXJyeS1waWNraW5nIGNvbW1pdCAlcy4iKSwKLQkJCWZpbmRfdW5pcXVlX2FiYnJldigmcy0+c3RhdGUuY2hlcnJ5X3BpY2tfaGVhZF9vaWQsIERFRkFVTFRfQUJCUkVWKSk7CisJaWYgKGlzX251bGxfb2lkKCZzLT5zdGF0ZS5jaGVycnlfcGlja19oZWFkX29pZCkpCisJCXN0YXR1c19wcmludGZfbG4ocywgY29sb3IsCisJCQlfKCJDaGVycnktcGljayBjdXJyZW50bHkgaW4gcHJvZ3Jlc3MuIikpOworCWVsc2UKKwkJc3RhdHVzX3ByaW50Zl9sbihzLCBjb2xvciwKKwkJCV8oIllvdSBhcmUgY3VycmVudGx5IGNoZXJyeS1waWNraW5nIGNvbW1pdCAlcy4iKSwKKwkJCWZpbmRfdW5pcXVlX2FiYnJldigmcy0+c3RhdGUuY2hlcnJ5X3BpY2tfaGVhZF9vaWQsCisJCQkJCSAgIERFRkFVTFRfQUJCUkVWKSk7CisKIAlpZiAocy0+aGludHMpIHsKIAkJaWYgKGhhc191bm1lcmdlZChzKSkKIAkJCXN0YXR1c19wcmludGZfbG4ocywgY29sb3IsCiAJCQkJXygiICAoZml4IGNvbmZsaWN0cyBhbmQgcnVuIFwiZ2l0IGNoZXJyeS1waWNrIC0tY29udGludWVcIikiKSk7CisJCWVsc2UgaWYgKGlzX251bGxfb2lkKCZzLT5zdGF0ZS5jaGVycnlfcGlja19oZWFkX29pZCkpCisJCQlzdGF0dXNfcHJpbnRmX2xuKHMsIGNvbG9yLAorCQkJCV8oIiAgKHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIgdG8gY29udGludWUpIikpOwogCQllbHNlCiAJCQlzdGF0dXNfcHJpbnRmX2xuKHMsIGNvbG9yLAogCQkJCV8oIiAgKGFsbCBjb25mbGljdHMgZml4ZWQ6IHJ1biBcImdpdCBjaGVycnktcGljayAtLWNvbnRpbnVlXCIpIikpOwogCQlzdGF0dXNfcHJpbnRmX2xuKHMsIGNvbG9yLAorCQkJXygiICAodXNlIFwiZ2l0IGNoZXJyeS1waWNrIC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiKSk7CisJCXN0YXR1c19wcmludGZfbG4ocywgY29sb3IsCiAJCQlfKCIgICh1c2UgXCJnaXQgY2hlcnJ5LXBpY2sgLS1hYm9ydFwiIHRvIGNhbmNlbCB0aGUgY2hlcnJ5LXBpY2sgb3BlcmF0aW9uKSIpKTsKIAl9CiAJd3RfbG9uZ3N0YXR1c19wcmludF90cmFpbGVyKHMpOwpAQCAtMTM4MywxNiArMTQ0NCwyNyBAQAogc3RhdGljIHZvaWQgc2hvd19yZXZlcnRfaW5fcHJvZ3Jlc3Moc3RydWN0IHd0X3N0YXR1cyAqcywKIAkJCQkgICAgY29uc3QgY2hhciAqY29sb3IpCiB7Ci0Jc3RhdHVzX3ByaW50Zl9sbihzLCBjb2xvciwgXygiWW91IGFyZSBjdXJyZW50bHkgcmV2ZXJ0aW5nIGNvbW1pdCAlcy4iKSwKLQkJCSBmaW5kX3VuaXF1ZV9hYmJyZXYoJnMtPnN0YXRlLnJldmVydF9oZWFkX29pZCwgREVGQVVMVF9BQkJSRVYpKTsKKwlpZiAoaXNfbnVsbF9vaWQoJnMtPnN0YXRlLnJldmVydF9oZWFkX29pZCkpCisJCXN0YXR1c19wcmludGZfbG4ocywgY29sb3IsCisJCQlfKCJSZXZlcnQgY3VycmVudGx5IGluIHByb2dyZXNzLiIpKTsKKwllbHNlCisJCXN0YXR1c19wcmludGZfbG4ocywgY29sb3IsCisJCQlfKCJZb3UgYXJlIGN1cnJlbnRseSByZXZlcnRpbmcgY29tbWl0ICVzLiIpLAorCQkJZmluZF91bmlxdWVfYWJicmV2KCZzLT5zdGF0ZS5yZXZlcnRfaGVhZF9vaWQsCisJCQkJCSAgIERFRkFVTFRfQUJCUkVWKSk7CiAJaWYgKHMtPmhpbnRzKSB7CiAJCWlmIChoYXNfdW5tZXJnZWQocykpCiAJCQlzdGF0dXNfcHJpbnRmX2xuKHMsIGNvbG9yLAogCQkJCV8oIiAgKGZpeCBjb25mbGljdHMgYW5kIHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiKSIpKTsKKwkJZWxzZSBpZiAoaXNfbnVsbF9vaWQoJnMtPnN0YXRlLnJldmVydF9oZWFkX29pZCkpCisJCQlzdGF0dXNfcHJpbnRmX2xuKHMsIGNvbG9yLAorCQkJCV8oIiAgKHJ1biBcImdpdCByZXZlcnQgLS1jb250aW51ZVwiIHRvIGNvbnRpbnVlKSIpKTsKIAkJZWxzZQogCQkJc3RhdHVzX3ByaW50Zl9sbihzLCBjb2xvciwKIAkJCQlfKCIgIChhbGwgY29uZmxpY3RzIGZpeGVkOiBydW4gXCJnaXQgcmV2ZXJ0IC0tY29udGludWVcIikiKSk7CiAJCXN0YXR1c19wcmludGZfbG4ocywgY29sb3IsCisJCQlfKCIgICh1c2UgXCJnaXQgcmV2ZXJ0IC0tc2tpcFwiIHRvIHNraXAgdGhpcyBwYXRjaCkiKSk7CisJCXN0YXR1c19wcmludGZfbG4ocywgY29sb3IsCiAJCQlfKCIgICh1c2UgXCJnaXQgcmV2ZXJ0IC0tYWJvcnRcIiB0byBjYW5jZWwgdGhlIHJldmVydCBvcGVyYXRpb24pIikpOwogCX0KIAl3dF9sb25nc3RhdHVzX3ByaW50X3RyYWlsZXIocyk7CkBAIC0xNDc4LDcgKzE1NTAsOCBAQAogCXJldHVybiAxOwogfQogCi1zdGF0aWMgdm9pZCB3dF9zdGF0dXNfZ2V0X2RldGFjaGVkX2Zyb20oc3RydWN0IHd0X3N0YXR1c19zdGF0ZSAqc3RhdGUpCitzdGF0aWMgdm9pZCB3dF9zdGF0dXNfZ2V0X2RldGFjaGVkX2Zyb20oc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkJCXN0cnVjdCB3dF9zdGF0dXNfc3RhdGUgKnN0YXRlKQogewogCXN0cnVjdCBncmFiXzFzdF9zd2l0Y2hfY2JkYXRhIGNiOwogCXN0cnVjdCBjb21taXQgKmNvbW1pdDsKQEAgLTE0OTUsNyArMTU2OCw3IEBACiAJICAgIC8qIHNoYTEgaXMgYSBjb21taXQ/IG1hdGNoIHdpdGhvdXQgZnVydGhlciBsb29rdXAgKi8KIAkgICAgKG9pZGVxKCZjYi5ub2lkLCAmb2lkKSB8fAogCSAgICAgLyogcGVyaGFwcyBzaGExIGlzIGEgdGFnLCB0cnkgdG8gZGVyZWZlcmVuY2UgdG8gYSBjb21taXQgKi8KLQkgICAgICgoY29tbWl0ID0gbG9va3VwX2NvbW1pdF9yZWZlcmVuY2VfZ2VudGx5KHRoZV9yZXBvc2l0b3J5LCAmb2lkLCAxKSkgIT0gTlVMTCAmJgorCSAgICAgKChjb21taXQgPSBsb29rdXBfY29tbWl0X3JlZmVyZW5jZV9nZW50bHkociwgJm9pZCwgMSkpICE9IE5VTEwgJiYKIAkgICAgICBvaWRlcSgmY2Iubm9pZCwgJmNvbW1pdC0+b2JqZWN0Lm9pZCkpKSkgewogCQljb25zdCBjaGFyICpmcm9tID0gcmVmOwogCQlpZiAoIXNraXBfcHJlZml4KGZyb20sICJyZWZzL3RhZ3MvIiwgJmZyb20pKQpAQCAtMTU1MiwzMSArMTYyNSw0MSBAQAogCXJldHVybiAwOwogfQogCi12b2lkIHd0X3N0YXR1c19nZXRfc3RhdGUoc3RydWN0IHd0X3N0YXR1c19zdGF0ZSAqc3RhdGUsCit2b2lkIHd0X3N0YXR1c19nZXRfc3RhdGUoc3RydWN0IHJlcG9zaXRvcnkgKnIsCisJCQkgc3RydWN0IHd0X3N0YXR1c19zdGF0ZSAqc3RhdGUsCiAJCQkgaW50IGdldF9kZXRhY2hlZF9mcm9tKQogewogCXN0cnVjdCBzdGF0IHN0OwogCXN0cnVjdCBvYmplY3RfaWQgb2lkOworCWVudW0gcmVwbGF5X2FjdGlvbiBhY3Rpb247CiAKLQlpZiAoIXN0YXQoZ2l0X3BhdGhfbWVyZ2VfaGVhZCh0aGVfcmVwb3NpdG9yeSksICZzdCkpIHsKKwlpZiAoIXN0YXQoZ2l0X3BhdGhfbWVyZ2VfaGVhZChyKSwgJnN0KSkgewogCQl3dF9zdGF0dXNfY2hlY2tfcmViYXNlKE5VTEwsIHN0YXRlKTsKIAkJc3RhdGUtPm1lcmdlX2luX3Byb2dyZXNzID0gMTsKIAl9IGVsc2UgaWYgKHd0X3N0YXR1c19jaGVja19yZWJhc2UoTlVMTCwgc3RhdGUpKSB7CiAJCTsJCS8qIGFsbCBzZXQgKi8KLQl9IGVsc2UgaWYgKCFzdGF0KGdpdF9wYXRoX2NoZXJyeV9waWNrX2hlYWQodGhlX3JlcG9zaXRvcnkpLCAmc3QpICYmCisJfSBlbHNlIGlmICghc3RhdChnaXRfcGF0aF9jaGVycnlfcGlja19oZWFkKHIpLCAmc3QpICYmCiAJCQkhZ2V0X29pZCgiQ0hFUlJZX1BJQ0tfSEVBRCIsICZvaWQpKSB7CiAJCXN0YXRlLT5jaGVycnlfcGlja19pbl9wcm9ncmVzcyA9IDE7CiAJCW9pZGNweSgmc3RhdGUtPmNoZXJyeV9waWNrX2hlYWRfb2lkLCAmb2lkKTsKIAl9CiAJd3Rfc3RhdHVzX2NoZWNrX2Jpc2VjdChOVUxMLCBzdGF0ZSk7Ci0JaWYgKCFzdGF0KGdpdF9wYXRoX3JldmVydF9oZWFkKHRoZV9yZXBvc2l0b3J5KSwgJnN0KSAmJgorCWlmICghc3RhdChnaXRfcGF0aF9yZXZlcnRfaGVhZChyKSwgJnN0KSAmJgogCSAgICAhZ2V0X29pZCgiUkVWRVJUX0hFQUQiLCAmb2lkKSkgewogCQlzdGF0ZS0+cmV2ZXJ0X2luX3Byb2dyZXNzID0gMTsKIAkJb2lkY3B5KCZzdGF0ZS0+cmV2ZXJ0X2hlYWRfb2lkLCAmb2lkKTsKIAl9Ci0KKwlpZiAoIXNlcXVlbmNlcl9nZXRfbGFzdF9jb21tYW5kKHIsICZhY3Rpb24pKSB7CisJCWlmIChhY3Rpb24gPT0gUkVQTEFZX1BJQ0spIHsKKwkJCXN0YXRlLT5jaGVycnlfcGlja19pbl9wcm9ncmVzcyA9IDE7CisJCQlvaWRjcHkoJnN0YXRlLT5jaGVycnlfcGlja19oZWFkX29pZCwgJm51bGxfb2lkKTsKKwkJfSBlbHNlIHsKKwkJCXN0YXRlLT5yZXZlcnRfaW5fcHJvZ3Jlc3MgPSAxOworCQkJb2lkY3B5KCZzdGF0ZS0+cmV2ZXJ0X2hlYWRfb2lkLCAmbnVsbF9vaWQpOworCQl9CisJfQogCWlmIChnZXRfZGV0YWNoZWRfZnJvbSkKLQkJd3Rfc3RhdHVzX2dldF9kZXRhY2hlZF9mcm9tKHN0YXRlKTsKKwkJd3Rfc3RhdHVzX2dldF9kZXRhY2hlZF9mcm9tKHIsIHN0YXRlKTsKIH0KIAogc3RhdGljIHZvaWQgd3RfbG9uZ3N0YXR1c19wcmludF9zdGF0ZShzdHJ1Y3Qgd3Rfc3RhdHVzICpzKQpAQCAtMTYyMiw5ICsxNzA1LDkgQEAKIAkJCX0gZWxzZSBpZiAocy0+c3RhdGUuZGV0YWNoZWRfZnJvbSkgewogCQkJCWJyYW5jaF9uYW1lID0gcy0+c3RhdGUuZGV0YWNoZWRfZnJvbTsKIAkJCQlpZiAocy0+c3RhdGUuZGV0YWNoZWRfYXQpCi0JCQkJCW9uX3doYXQgPSBfKCJIRUFEIGRldGFjaGVkIGF0ICIpOworCQkJCQlvbl93aGF0ID0gSEVBRF9ERVRBQ0hFRF9BVDsKIAkJCQllbHNlCi0JCQkJCW9uX3doYXQgPSBfKCJIRUFEIGRldGFjaGVkIGZyb20gIik7CisJCQkJCW9uX3doYXQgPSBIRUFEX0RFVEFDSEVEX0ZST007CiAJCQl9IGVsc2UgewogCQkJCWJyYW5jaF9uYW1lID0gIiI7CiAJCQkJb25fd2hhdCA9IF8oIk5vdCBjdXJyZW50bHkgb24gYW55IGJyYW5jaC4iKTsKQEAgLTE4MzQsNyArMTkxNyw3IEBACiAJY29sb3JfZnByaW50ZihzLT5mcCwgYnJhbmNoX2NvbG9yX2xvY2FsLCAiJXMiLCBicmFuY2hfbmFtZSk7CiAKIAlzdGkgPSBzdGF0X3RyYWNraW5nX2luZm8oYnJhbmNoLCAmbnVtX291cnMsICZudW1fdGhlaXJzLCAmYmFzZSwKLQkJCQkgcy0+YWhlYWRfYmVoaW5kX2ZsYWdzKTsKKwkJCQkgMCwgcy0+YWhlYWRfYmVoaW5kX2ZsYWdzKTsKIAlpZiAoc3RpIDwgMCkgewogCQlpZiAoIWJhc2UpCiAJCQlnb3RvIGNvbmNsdWRlOwpAQCAtMTk0Niw3ICsyMDI5LDcgQEAKIAljaGFyIGVvbCA9IHMtPm51bGxfdGVybWluYXRpb24gPyAnXDAnIDogJ1xuJzsKIAogCWZwcmludGYocy0+ZnAsICIjIGJyYW5jaC5vaWQgJXMlYyIsCi0JCQkocy0+aXNfaW5pdGlhbCA/ICIoaW5pdGlhbCkiIDogc2hhMV90b19oZXgocy0+c2hhMV9jb21taXQpKSwKKwkJCShzLT5pc19pbml0aWFsID8gIihpbml0aWFsKSIgOiBvaWRfdG9faGV4KCZzLT5vaWRfY29tbWl0KSksCiAJCQllb2wpOwogCiAJaWYgKCFzLT5icmFuY2gpCkBAIC0xOTczLDcgKzIwNTYsNyBAQAogCQlicmFuY2ggPSBicmFuY2hfZ2V0KGJyYW5jaF9uYW1lKTsKIAkJYmFzZSA9IE5VTEw7CiAJCWFiX2luZm8gPSBzdGF0X3RyYWNraW5nX2luZm8oYnJhbmNoLCAmbnJfYWhlYWQsICZucl9iZWhpbmQsCi0JCQkJCSAgICAgJmJhc2UsIHMtPmFoZWFkX2JlaGluZF9mbGFncyk7CisJCQkJCSAgICAgJmJhc2UsIDAsIHMtPmFoZWFkX2JlaGluZF9mbGFncyk7CiAJCWlmIChiYXNlKSB7CiAJCQliYXNlID0gc2hvcnRlbl91bmFtYmlndW91c19yZWYoYmFzZSwgMCk7CiAJCQlmcHJpbnRmKHMtPmZwLCAiIyBicmFuY2gudXBzdHJlYW0gJXMlYyIsIGJhc2UsIGVvbCk7CkBAIC0yMDIyLDkgKzIxMDUsNyBAQAogLyoKICAqIEZpeC11cCBjaGFuZ2VkIGVudHJpZXMgYmVmb3JlIHdlIHByaW50IHRoZW0uCiAgKi8KLXN0YXRpYyB2b2lkIHd0X3BvcmNlbGFpbl92Ml9maXhfdXBfY2hhbmdlZCgKLQlzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqaXQsCi0Jc3RydWN0IHd0X3N0YXR1cyAqcykKK3N0YXRpYyB2b2lkIHd0X3BvcmNlbGFpbl92Ml9maXhfdXBfY2hhbmdlZChzdHJ1Y3Qgc3RyaW5nX2xpc3RfaXRlbSAqaXQpCiB7CiAJc3RydWN0IHd0X3N0YXR1c19jaGFuZ2VfZGF0YSAqZCA9IGl0LT51dGlsOwogCkBAIC0yMDg0LDcgKzIxNjUsNyBAQAogCWNoYXIgc3VibW9kdWxlX3Rva2VuWzVdOwogCWNoYXIgc2VwX2NoYXIsIGVvbF9jaGFyOwogCi0Jd3RfcG9yY2VsYWluX3YyX2ZpeF91cF9jaGFuZ2VkKGl0LCBzKTsKKwl3dF9wb3JjZWxhaW5fdjJfZml4X3VwX2NoYW5nZWQoaXQpOwogCXd0X3BvcmNlbGFpbl92Ml9zdWJtb2R1bGVfc3RhdGUoZCwgc3VibW9kdWxlX3Rva2VuKTsKIAogCWtleVswXSA9IGQtPmluZGV4X3N0YXR1cyA/IGQtPmluZGV4X3N0YXR1cyA6ICcuJzsKQEAgLTIxNDAsNiArMjIyMSw3IEBACiAJc3RydWN0IHd0X3N0YXR1cyAqcykKIHsKIAlzdHJ1Y3Qgd3Rfc3RhdHVzX2NoYW5nZV9kYXRhICpkID0gaXQtPnV0aWw7CisJc3RydWN0IGluZGV4X3N0YXRlICppc3RhdGUgPSBzLT5yZXBvLT5pbmRleDsKIAljb25zdCBzdHJ1Y3QgY2FjaGVfZW50cnkgKmNlOwogCXN0cnVjdCBzdHJidWYgYnVmX2luZGV4ID0gU1RSQlVGX0lOSVQ7CiAJY29uc3QgY2hhciAqcGF0aF9pbmRleCA9IE5VTEw7CkBAIC0yMTc4LDExICsyMjYwLDExIEBACiAJICovCiAJbWVtc2V0KHN0YWdlcywgMCwgc2l6ZW9mKHN0YWdlcykpOwogCXN1bSA9IDA7Ci0JcG9zID0gY2FjaGVfbmFtZV9wb3MoaXQtPnN0cmluZywgc3RybGVuKGl0LT5zdHJpbmcpKTsKKwlwb3MgPSBpbmRleF9uYW1lX3Bvcyhpc3RhdGUsIGl0LT5zdHJpbmcsIHN0cmxlbihpdC0+c3RyaW5nKSk7CiAJYXNzZXJ0KHBvcyA8IDApOwogCXBvcyA9IC1wb3MtMTsKLQl3aGlsZSAocG9zIDwgYWN0aXZlX25yKSB7Ci0JCWNlID0gYWN0aXZlX2NhY2hlW3BvcysrXTsKKwl3aGlsZSAocG9zIDwgaXN0YXRlLT5jYWNoZV9ucikgeworCQljZSA9IGlzdGF0ZS0+Y2FjaGVbcG9zKytdOwogCQlzdGFnZSA9IGNlX3N0YWdlKGNlKTsKIAkJaWYgKHN0cmNtcChjZS0+bmFtZSwgaXQtPnN0cmluZykgfHwgIXN0YWdlKQogCQkJYnJlYWs7CkBAIC0yMjg0LDYgKzIzNjYsMTMgQEAKIAogdm9pZCB3dF9zdGF0dXNfcHJpbnQoc3RydWN0IHd0X3N0YXR1cyAqcykKIHsKKwl0cmFjZTJfZGF0YV9pbnRtYXgoInN0YXR1cyIsIHMtPnJlcG8sICJjb3VudC9jaGFuZ2VkIiwgcy0+Y2hhbmdlLm5yKTsKKwl0cmFjZTJfZGF0YV9pbnRtYXgoInN0YXR1cyIsIHMtPnJlcG8sICJjb3VudC91bnRyYWNrZWQiLAorCQkJICAgcy0+dW50cmFja2VkLm5yKTsKKwl0cmFjZTJfZGF0YV9pbnRtYXgoInN0YXR1cyIsIHMtPnJlcG8sICJjb3VudC9pZ25vcmVkIiwgcy0+aWdub3JlZC5ucik7CisKKwl0cmFjZTJfcmVnaW9uX2VudGVyKCJzdGF0dXMiLCAicHJpbnQiLCBzLT5yZXBvKTsKKwogCXN3aXRjaCAocy0+c3RhdHVzX2Zvcm1hdCkgewogCWNhc2UgU1RBVFVTX0ZPUk1BVF9TSE9SVDoKIAkJd3Rfc2hvcnRzdGF0dXNfcHJpbnQocyk7CkBAIC0yMzAyLDE3ICsyMzkxLDE5IEBACiAJCXd0X2xvbmdzdGF0dXNfcHJpbnQocyk7CiAJCWJyZWFrOwogCX0KKworCXRyYWNlMl9yZWdpb25fbGVhdmUoInN0YXR1cyIsICJwcmludCIsIHMtPnJlcG8pOwogfQogCiAvKioKICAqIFJldHVybnMgMSBpZiB0aGVyZSBhcmUgdW5zdGFnZWQgY2hhbmdlcywgMCBvdGhlcndpc2UuCiAgKi8KLWludCBoYXNfdW5zdGFnZWRfY2hhbmdlcyhpbnQgaWdub3JlX3N1Ym1vZHVsZXMpCitpbnQgaGFzX3Vuc3RhZ2VkX2NoYW5nZXMoc3RydWN0IHJlcG9zaXRvcnkgKnIsIGludCBpZ25vcmVfc3VibW9kdWxlcykKIHsKIAlzdHJ1Y3QgcmV2X2luZm8gcmV2X2luZm87CiAJaW50IHJlc3VsdDsKIAotCXJlcG9faW5pdF9yZXZpc2lvbnModGhlX3JlcG9zaXRvcnksICZyZXZfaW5mbywgTlVMTCk7CisJcmVwb19pbml0X3JldmlzaW9ucyhyLCAmcmV2X2luZm8sIE5VTEwpOwogCWlmIChpZ25vcmVfc3VibW9kdWxlcykgewogCQlyZXZfaW5mby5kaWZmb3B0LmZsYWdzLmlnbm9yZV9zdWJtb2R1bGVzID0gMTsKIAkJcmV2X2luZm8uZGlmZm9wdC5mbGFncy5vdmVycmlkZV9zdWJtb2R1bGVfY29uZmlnID0gMTsKQEAgLTIzMjYsMTUgKzI0MTcsMTYgQEAKIC8qKgogICogUmV0dXJucyAxIGlmIHRoZXJlIGFyZSB1bmNvbW1pdHRlZCBjaGFuZ2VzLCAwIG90aGVyd2lzZS4KICAqLwotaW50IGhhc191bmNvbW1pdHRlZF9jaGFuZ2VzKGludCBpZ25vcmVfc3VibW9kdWxlcykKK2ludCBoYXNfdW5jb21taXR0ZWRfY2hhbmdlcyhzdHJ1Y3QgcmVwb3NpdG9yeSAqciwKKwkJCSAgICBpbnQgaWdub3JlX3N1Ym1vZHVsZXMpCiB7CiAJc3RydWN0IHJldl9pbmZvIHJldl9pbmZvOwogCWludCByZXN1bHQ7CiAKLQlpZiAoaXNfY2FjaGVfdW5ib3JuKCkpCisJaWYgKGlzX2luZGV4X3VuYm9ybihyLT5pbmRleCkpCiAJCXJldHVybiAwOwogCi0JcmVwb19pbml0X3JldmlzaW9ucyh0aGVfcmVwb3NpdG9yeSwgJnJldl9pbmZvLCBOVUxMKTsKKwlyZXBvX2luaXRfcmV2aXNpb25zKHIsICZyZXZfaW5mbywgTlVMTCk7CiAJaWYgKGlnbm9yZV9zdWJtb2R1bGVzKQogCQlyZXZfaW5mby5kaWZmb3B0LmZsYWdzLmlnbm9yZV9zdWJtb2R1bGVzID0gMTsKIAlyZXZfaW5mby5kaWZmb3B0LmZsYWdzLnF1aWNrID0gMTsKQEAgLTIzNDUsNyArMjQzNyw3IEBACiAJCSAqIFdlIGhhdmUgbm8gaGVhZCAob3IgaXQncyBjb3JydXB0KTsgdXNlIHRoZSBlbXB0eSB0cmVlLAogCQkgKiB3aGljaCB3aWxsIGNvbXBsYWluIGlmIHRoZSBpbmRleCBpcyBub24tZW1wdHkuCiAJCSAqLwotCQlzdHJ1Y3QgdHJlZSAqdHJlZSA9IGxvb2t1cF90cmVlKHRoZV9yZXBvc2l0b3J5LCB0aGVfaGFzaF9hbGdvLT5lbXB0eV90cmVlKTsKKwkJc3RydWN0IHRyZWUgKnRyZWUgPSBsb29rdXBfdHJlZShyLCB0aGVfaGFzaF9hbGdvLT5lbXB0eV90cmVlKTsKIAkJYWRkX3BlbmRpbmdfb2JqZWN0KCZyZXZfaW5mbywgJnRyZWUtPm9iamVjdCwgIiIpOwogCX0KIApAQCAtMjM1OCwyNCArMjQ1MCwyOCBAQAogICogSWYgdGhlIHdvcmsgdHJlZSBoYXMgdW5zdGFnZWQgb3IgdW5jb21taXR0ZWQgY2hhbmdlcywgZGllcyB3aXRoIHRoZQogICogYXBwcm9wcmlhdGUgbWVzc2FnZS4KICAqLwotaW50IHJlcXVpcmVfY2xlYW5fd29ya190cmVlKGNvbnN0IGNoYXIgKmFjdGlvbiwgY29uc3QgY2hhciAqaGludCwgaW50IGlnbm9yZV9zdWJtb2R1bGVzLCBpbnQgZ2VudGx5KQoraW50IHJlcXVpcmVfY2xlYW5fd29ya190cmVlKHN0cnVjdCByZXBvc2l0b3J5ICpyLAorCQkJICAgIGNvbnN0IGNoYXIgKmFjdGlvbiwKKwkJCSAgICBjb25zdCBjaGFyICpoaW50LAorCQkJICAgIGludCBpZ25vcmVfc3VibW9kdWxlcywKKwkJCSAgICBpbnQgZ2VudGx5KQogewogCXN0cnVjdCBsb2NrX2ZpbGUgbG9ja19maWxlID0gTE9DS19JTklUOwogCWludCBlcnIgPSAwLCBmZDsKIAotCWZkID0gaG9sZF9sb2NrZWRfaW5kZXgoJmxvY2tfZmlsZSwgMCk7Ci0JcmVmcmVzaF9jYWNoZShSRUZSRVNIX1FVSUVUKTsKKwlmZCA9IHJlcG9faG9sZF9sb2NrZWRfaW5kZXgociwgJmxvY2tfZmlsZSwgMCk7CisJcmVmcmVzaF9pbmRleChyLT5pbmRleCwgUkVGUkVTSF9RVUlFVCwgTlVMTCwgTlVMTCwgTlVMTCk7CiAJaWYgKDAgPD0gZmQpCi0JCXVwZGF0ZV9pbmRleF9pZl9hYmxlKCZ0aGVfaW5kZXgsICZsb2NrX2ZpbGUpOworCQlyZXBvX3VwZGF0ZV9pbmRleF9pZl9hYmxlKHIsICZsb2NrX2ZpbGUpOwogCXJvbGxiYWNrX2xvY2tfZmlsZSgmbG9ja19maWxlKTsKIAotCWlmIChoYXNfdW5zdGFnZWRfY2hhbmdlcyhpZ25vcmVfc3VibW9kdWxlcykpIHsKKwlpZiAoaGFzX3Vuc3RhZ2VkX2NoYW5nZXMociwgaWdub3JlX3N1Ym1vZHVsZXMpKSB7CiAJCS8qIFRSQU5TTEFUT1JTOiB0aGUgYWN0aW9uIGlzIGUuZy4gInB1bGwgd2l0aCByZWJhc2UiICovCiAJCWVycm9yKF8oImNhbm5vdCAlczogWW91IGhhdmUgdW5zdGFnZWQgY2hhbmdlcy4iKSwgXyhhY3Rpb24pKTsKIAkJZXJyID0gMTsKIAl9CiAKLQlpZiAoaGFzX3VuY29tbWl0dGVkX2NoYW5nZXMoaWdub3JlX3N1Ym1vZHVsZXMpKSB7CisJaWYgKGhhc191bmNvbW1pdHRlZF9jaGFuZ2VzKHIsIGlnbm9yZV9zdWJtb2R1bGVzKSkgewogCQlpZiAoZXJyKQogCQkJZXJyb3IoXygiYWRkaXRpb25hbGx5LCB5b3VyIGluZGV4IGNvbnRhaW5zIHVuY29tbWl0dGVkIGNoYW5nZXMuIikpOwogCQllbHNlCmRpZmYgLS1naXQgYS93dC1zdGF0dXMuaCBiL3d0LXN0YXR1cy5oCmluZGV4IDFmY2Y5M2EuLjczYWI1ZDQgMTAwNjQ0Ci0tLSBhL3d0LXN0YXR1cy5oCisrKyBiL3d0LXN0YXR1cy5oCkBAIC0xLDEyICsxLDEyIEBACiAjaWZuZGVmIFNUQVRVU19ICiAjZGVmaW5lIFNUQVRVU19ICiAKLSNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgInN0cmluZy1saXN0LmgiCiAjaW5jbHVkZSAiY29sb3IuaCIKICNpbmNsdWRlICJwYXRoc3BlYy5oIgogI2luY2x1ZGUgInJlbW90ZS5oIgogCitzdHJ1Y3QgcmVwb3NpdG9yeTsKIHN0cnVjdCB3b3JrdHJlZTsKIAogZW51bSBjb2xvcl93dF9zdGF0dXMgewpAQCAtMzgsOSArMzgsMjIgQEAKIGVudW0gY29tbWl0X3doZW5jZSB7CiAJRlJPTV9DT01NSVQsICAgICAvKiBub3JtYWwgKi8KIAlGUk9NX01FUkdFLCAgICAgIC8qIGNvbW1pdCBjYW1lIGZyb20gbWVyZ2UgKi8KLQlGUk9NX0NIRVJSWV9QSUNLIC8qIGNvbW1pdCBjYW1lIGZyb20gY2hlcnJ5LXBpY2sgKi8KKwlGUk9NX0NIRVJSWV9QSUNLX1NJTkdMRSwgLyogY29tbWl0IGNhbWUgZnJvbSBjaGVycnktcGljayAqLworCUZST01fQ0hFUlJZX1BJQ0tfTVVMVEksIC8qIGNvbW1pdCBjYW1lIGZyb20gYSBzZXF1ZW5jZSBvZiBjaGVycnktcGlja3MgKi8KKwlGUk9NX1JFQkFTRV9QSUNLIC8qIGNvbW1pdCBjYW1lIGZyb20gYSBwaWNrL3Jld29yZC9lZGl0ICovCiB9OwogCitzdGF0aWMgaW5saW5lIGludCBpc19mcm9tX2NoZXJyeV9waWNrKGVudW0gY29tbWl0X3doZW5jZSB3aGVuY2UpCit7CisJcmV0dXJuIHdoZW5jZSA9PSBGUk9NX0NIRVJSWV9QSUNLX1NJTkdMRSB8fAorCQl3aGVuY2UgPT0gRlJPTV9DSEVSUllfUElDS19NVUxUSTsKK30KKworc3RhdGljIGlubGluZSBpbnQgaXNfZnJvbV9yZWJhc2UoZW51bSBjb21taXRfd2hlbmNlIHdoZW5jZSkKK3sKKwlyZXR1cm4gd2hlbmNlID09IEZST01fUkVCQVNFX1BJQ0s7Cit9CisKIHN0cnVjdCB3dF9zdGF0dXNfY2hhbmdlX2RhdGEgewogCWludCB3b3JrdHJlZV9zdGF0dXM7CiAJaW50IGluZGV4X3N0YXR1czsKQEAgLTY0LDYgKzc3LDkgQEAKIAlTVEFUVVNfRk9STUFUX1VOU1BFQ0lGSUVECiB9OwogCisjZGVmaW5lIEhFQURfREVUQUNIRURfQVQgXygiSEVBRCBkZXRhY2hlZCBhdCAiKQorI2RlZmluZSBIRUFEX0RFVEFDSEVEX0ZST00gXygiSEVBRCBkZXRhY2hlZCBmcm9tICIpCisKIHN0cnVjdCB3dF9zdGF0dXNfc3RhdGUgewogCWludCBtZXJnZV9pbl9wcm9ncmVzczsKIAlpbnQgYW1faW5fcHJvZ3Jlc3M7CkBAIC04Myw2ICs5OSw3IEBACiB9OwogCiBzdHJ1Y3Qgd3Rfc3RhdHVzIHsKKwlzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbzsKIAlpbnQgaXNfaW5pdGlhbDsKIAljaGFyICpicmFuY2g7CiAJY29uc3QgY2hhciAqcmVmZXJlbmNlOwpAQCAtMTEyLDcgKzEyOSw3IEBACiAJaW50IHJlbmFtZV9saW1pdDsKIAllbnVtIHd0X3N0YXR1c19mb3JtYXQgc3RhdHVzX2Zvcm1hdDsKIAlzdHJ1Y3Qgd3Rfc3RhdHVzX3N0YXRlIHN0YXRlOwotCXVuc2lnbmVkIGNoYXIgc2hhMV9jb21taXRbR0lUX01BWF9SQVdTWl07IC8qIHdoZW4gbm90IEluaXRpYWwgKi8KKwlzdHJ1Y3Qgb2JqZWN0X2lkIG9pZF9jb21taXQ7IC8qIHdoZW4gbm90IEluaXRpYWwgKi8KIAogCS8qIFRoZXNlIGFyZSBjb21wdXRlZCBkdXJpbmcgcHJvY2Vzc2luZyBvZiB0aGUgaW5kaXZpZHVhbCBzZWN0aW9ucyAqLwogCWludCBjb21taXR0YWJsZTsKQEAgLTEyNywxMiArMTQ0LDE1IEBACiB9OwogCiBzaXplX3Qgd3Rfc3RhdHVzX2xvY2F0ZV9lbmQoY29uc3QgY2hhciAqcywgc2l6ZV90IGxlbik7Cit2b2lkIHd0X3N0YXR1c19hcHBlbmRfY3V0X2xpbmUoc3RydWN0IHN0cmJ1ZiAqYnVmKTsKIHZvaWQgd3Rfc3RhdHVzX2FkZF9jdXRfbGluZShGSUxFICpmcCk7Ci12b2lkIHd0X3N0YXR1c19wcmVwYXJlKHN0cnVjdCB3dF9zdGF0dXMgKnMpOwordm9pZCB3dF9zdGF0dXNfcHJlcGFyZShzdHJ1Y3QgcmVwb3NpdG9yeSAqciwgc3RydWN0IHd0X3N0YXR1cyAqcyk7CiB2b2lkIHd0X3N0YXR1c19wcmludChzdHJ1Y3Qgd3Rfc3RhdHVzICpzKTsKIHZvaWQgd3Rfc3RhdHVzX2NvbGxlY3Qoc3RydWN0IHd0X3N0YXR1cyAqcyk7CiB2b2lkIHd0X3N0YXR1c19jb2xsZWN0X2ZyZWVfYnVmZmVycyhzdHJ1Y3Qgd3Rfc3RhdHVzICpzKTsKLXZvaWQgd3Rfc3RhdHVzX2dldF9zdGF0ZShzdHJ1Y3Qgd3Rfc3RhdHVzX3N0YXRlICpzdGF0ZSwgaW50IGdldF9kZXRhY2hlZF9mcm9tKTsKK3ZvaWQgd3Rfc3RhdHVzX2dldF9zdGF0ZShzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCSBzdHJ1Y3Qgd3Rfc3RhdHVzX3N0YXRlICpzdGF0ZSwKKwkJCSBpbnQgZ2V0X2RldGFjaGVkX2Zyb20pOwogaW50IHd0X3N0YXR1c19jaGVja19yZWJhc2UoY29uc3Qgc3RydWN0IHdvcmt0cmVlICp3dCwKIAkJCSAgIHN0cnVjdCB3dF9zdGF0dXNfc3RhdGUgKnN0YXRlKTsKIGludCB3dF9zdGF0dXNfY2hlY2tfYmlzZWN0KGNvbnN0IHN0cnVjdCB3b3JrdHJlZSAqd3QsCkBAIC0xNDQsOSArMTY0LDE0IEBACiB2b2lkIHN0YXR1c19wcmludGYoc3RydWN0IHd0X3N0YXR1cyAqcywgY29uc3QgY2hhciAqY29sb3IsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKTsKIAogLyogVGhlIGZvbGxvd2luZyBmdW5jdGlvbnMgZXhwZWN0IHRoYXQgdGhlIGNhbGxlciB0b29rIGNhcmUgb2YgcmVhZGluZyB0aGUgaW5kZXguICovCi1pbnQgaGFzX3Vuc3RhZ2VkX2NoYW5nZXMoaW50IGlnbm9yZV9zdWJtb2R1bGVzKTsKLWludCBoYXNfdW5jb21taXR0ZWRfY2hhbmdlcyhpbnQgaWdub3JlX3N1Ym1vZHVsZXMpOwotaW50IHJlcXVpcmVfY2xlYW5fd29ya190cmVlKGNvbnN0IGNoYXIgKmFjdGlvbiwgY29uc3QgY2hhciAqaGludCwKLQlpbnQgaWdub3JlX3N1Ym1vZHVsZXMsIGludCBnZW50bHkpOworaW50IGhhc191bnN0YWdlZF9jaGFuZ2VzKHN0cnVjdCByZXBvc2l0b3J5ICpyZXBvLAorCQkJIGludCBpZ25vcmVfc3VibW9kdWxlcyk7CitpbnQgaGFzX3VuY29tbWl0dGVkX2NoYW5nZXMoc3RydWN0IHJlcG9zaXRvcnkgKnJlcG8sCisJCQkgICAgaW50IGlnbm9yZV9zdWJtb2R1bGVzKTsKK2ludCByZXF1aXJlX2NsZWFuX3dvcmtfdHJlZShzdHJ1Y3QgcmVwb3NpdG9yeSAqcmVwbywKKwkJCSAgICBjb25zdCBjaGFyICphY3Rpb24sCisJCQkgICAgY29uc3QgY2hhciAqaGludCwKKwkJCSAgICBpbnQgaWdub3JlX3N1Ym1vZHVsZXMsCisJCQkgICAgaW50IGdlbnRseSk7CiAKICNlbmRpZiAvKiBTVEFUVVNfSCAqLwpkaWZmIC0tZ2l0IGEveGRpZmYtaW50ZXJmYWNlLmMgYi94ZGlmZi1pbnRlcmZhY2UuYwppbmRleCA4MGYwNjBkLi40ZDIwMDY5IDEwMDY0NAotLS0gYS94ZGlmZi1pbnRlcmZhY2UuYworKysgYi94ZGlmZi1pbnRlcmZhY2UuYwpAQCAtODQsOCArODQsOCBAQAogewogCWNvbnN0IGludCBibGsgPSAxMDI0OwogCWxvbmcgdHJpbW1lZCA9IDAsIHJlY292ZXJlZCA9IDA7Ci0JY2hhciAqYXAgPSBhLT5wdHIgKyBhLT5zaXplOwotCWNoYXIgKmJwID0gYi0+cHRyICsgYi0+c2l6ZTsKKwljaGFyICphcCA9IGEtPnNpemUgPyBhLT5wdHIgKyBhLT5zaXplIDogYS0+cHRyOworCWNoYXIgKmJwID0gYi0+c2l6ZSA/IGItPnB0ciArIGItPnNpemUgOiBiLT5wdHI7CiAJbG9uZyBzbWFsbGVyID0gKGEtPnNpemUgPCBiLT5zaXplKSA/IGEtPnNpemUgOiBiLT5zaXplOwogCiAJd2hpbGUgKGJsayArIHRyaW1tZWQgPD0gc21hbGxlciAmJiAhbWVtY21wKGFwIC0gYmxrLCBicCAtIGJsaywgYmxrKSkgewpAQCAtMjUwLDkgKzI1MCwxMyBAQAogCUFMTE9DX0FSUkFZKHJlZ3MtPmFycmF5LCByZWdzLT5ucik7CiAJZm9yIChpID0gMDsgaSA8IHJlZ3MtPm5yOyBpKyspIHsKIAkJc3RydWN0IGZmX3JlZyAqcmVnID0gcmVncy0+YXJyYXkgKyBpOwotCQljb25zdCBjaGFyICplcCA9IHN0cmNocih2YWx1ZSwgJ1xuJyksICpleHByZXNzaW9uOworCQljb25zdCBjaGFyICplcCwgKmV4cHJlc3Npb247CiAJCWNoYXIgKmJ1ZmZlciA9IE5VTEw7CiAKKwkJaWYgKCF2YWx1ZSkKKwkJCUJVRygibWlzbWF0Y2ggYmV0d2VlbiBsaW5lIGNvdW50IGFuZCBwYXJzaW5nIik7CisJCWVwID0gc3RyY2hyKHZhbHVlLCAnXG4nKTsKKwogCQlyZWctPm5lZ2F0ZSA9ICgqdmFsdWUgPT0gJyEnKTsKIAkJaWYgKHJlZy0+bmVnYXRlICYmIGkgPT0gcmVncy0+bnIgLSAxKQogCQkJZGllKCJMYXN0IGV4cHJlc3Npb24gbXVzdCBub3QgYmUgbmVnYXRlZDogJXMiLCB2YWx1ZSk7CkBAIC0yNjUsNyArMjY5LDcgQEAKIAkJaWYgKHJlZ2NvbXAoJnJlZy0+cmUsIGV4cHJlc3Npb24sIGNmbGFncykpCiAJCQlkaWUoIkludmFsaWQgcmVnZXhwIHRvIGxvb2sgZm9yIGh1bmsgaGVhZGVyOiAlcyIsIGV4cHJlc3Npb24pOwogCQlmcmVlKGJ1ZmZlcik7Ci0JCXZhbHVlID0gZXAgKyAxOworCQl2YWx1ZSA9IGVwID8gZXAgKyAxIDogTlVMTDsKIAl9CiB9CiAKQEAgLTMwNiw2ICszMTAsMTAgQEAKIAkJCWdpdF94bWVyZ2Vfc3R5bGUgPSBYRExfTUVSR0VfRElGRjM7CiAJCWVsc2UgaWYgKCFzdHJjbXAodmFsdWUsICJtZXJnZSIpKQogCQkJZ2l0X3htZXJnZV9zdHlsZSA9IDA7CisJCS8qCisJCSAqIFBsZWFzZSB1cGRhdGUgX2dpdF9jaGVja291dCgpIGluCisJCSAqIGdpdC1jb21wbGV0aW9uLmJhc2ggd2hlbiB5b3UgYWRkIG5ldyBtZXJnZSBjb25maWcKKwkJICovCiAJCWVsc2UKIAkJCWRpZSgidW5rbm93biBzdHlsZSAnJXMnIGdpdmVuIGZvciAnJXMnIiwKIAkJCSAgICB2YWx1ZSwgdmFyKTsKZGlmZiAtLWdpdCBhL3hkaWZmLWludGVyZmFjZS5oIGIveGRpZmYtaW50ZXJmYWNlLmgKaW5kZXggMmQ0MWZmZi4uOTNkZjI2OSAxMDA2NDQKLS0tIGEveGRpZmYtaW50ZXJmYWNlLmgKKysrIGIveGRpZmYtaW50ZXJmYWNlLmgKQEAgLTI3LDkgKzI3LDkgQEAKIHZvaWQgcmVhZF9tbWJsb2IobW1maWxlX3QgKnB0ciwgY29uc3Qgc3RydWN0IG9iamVjdF9pZCAqb2lkKTsKIGludCBidWZmZXJfaXNfYmluYXJ5KGNvbnN0IGNoYXIgKnB0ciwgdW5zaWduZWQgbG9uZyBzaXplKTsKIAotZXh0ZXJuIHZvaWQgeGRpZmZfc2V0X2ZpbmRfZnVuYyh4ZGVtaXRjb25mX3QgKnhlY2ZnLCBjb25zdCBjaGFyICpsaW5lLCBpbnQgY2ZsYWdzKTsKLWV4dGVybiB2b2lkIHhkaWZmX2NsZWFyX2ZpbmRfZnVuYyh4ZGVtaXRjb25mX3QgKnhlY2ZnKTsKLWV4dGVybiBpbnQgZ2l0X3htZXJnZV9jb25maWcoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqY2IpOwordm9pZCB4ZGlmZl9zZXRfZmluZF9mdW5jKHhkZW1pdGNvbmZfdCAqeGVjZmcsIGNvbnN0IGNoYXIgKmxpbmUsIGludCBjZmxhZ3MpOwordm9pZCB4ZGlmZl9jbGVhcl9maW5kX2Z1bmMoeGRlbWl0Y29uZl90ICp4ZWNmZyk7CitpbnQgZ2l0X3htZXJnZV9jb25maWcoY29uc3QgY2hhciAqdmFyLCBjb25zdCBjaGFyICp2YWx1ZSwgdm9pZCAqY2IpOwogZXh0ZXJuIGludCBnaXRfeG1lcmdlX3N0eWxlOwogCiAvKgpAQCAtNDQsMTYgKzQ0LDE2IEBACiAgKiBDb21wYXJlIHRoZSBzdHJpbmdzIGwxIHdpdGggbDIgd2hpY2ggYXJlIG9mIHNpemUgczEgYW5kIHMyIHJlc3BlY3RpdmVseS4KICAqIFJldHVybnMgMSBpZiB0aGUgc3RyaW5ncyBhcmUgZGVlbWVkIGVxdWFsLCAwIG90aGVyd2lzZS4KICAqIFRoZSBgZmxhZ3NgIGdpdmVuIGFzIFhERl9XSElURVNQQUNFX0ZMQUdTIGRldGVybWluZSBob3cgd2hpdGUgc3BhY2VzCi0gKiBhcmUgdHJlYXRlZCBmb3IgdGhlIGNvbXBhcmlzaW9uLgorICogYXJlIHRyZWF0ZWQgZm9yIHRoZSBjb21wYXJpc29uLgogICovCi1leHRlcm4gaW50IHhkaWZmX2NvbXBhcmVfbGluZXMoY29uc3QgY2hhciAqbDEsIGxvbmcgczEsCi0JCQkgICAgICAgY29uc3QgY2hhciAqbDIsIGxvbmcgczIsIGxvbmcgZmxhZ3MpOworaW50IHhkaWZmX2NvbXBhcmVfbGluZXMoY29uc3QgY2hhciAqbDEsIGxvbmcgczEsCisJCQljb25zdCBjaGFyICpsMiwgbG9uZyBzMiwgbG9uZyBmbGFncyk7CiAKIC8qCiAgKiBSZXR1cm5zIGEgaGFzaCBvZiB0aGUgc3RyaW5nIHMgb2YgbGVuZ3RoIGxlbi4KICAqIFRoZSBgZmxhZ3NgIGdpdmVuIGFzIFhERl9XSElURVNQQUNFX0ZMQUdTIGRldGVybWluZSBob3cgd2hpdGUgc3BhY2VzCiAgKiBhcmUgdHJlYXRlZCBmb3IgdGhlIGhhc2guCiAgKi8KLWV4dGVybiB1bnNpZ25lZCBsb25nIHhkaWZmX2hhc2hfc3RyaW5nKGNvbnN0IGNoYXIgKnMsIHNpemVfdCBsZW4sIGxvbmcgZmxhZ3MpOwordW5zaWduZWQgbG9uZyB4ZGlmZl9oYXNoX3N0cmluZyhjb25zdCBjaGFyICpzLCBzaXplX3QgbGVuLCBsb25nIGZsYWdzKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS94ZGlmZi94ZGlmZi5oIGIveGRpZmYveGRpZmYuaAppbmRleCBiMTU4MzY5Li4wMzJlM2E5IDEwMDY0NAotLS0gYS94ZGlmZi94ZGlmZi5oCisrKyBiL3hkaWZmL3hkaWZmLmgKQEAgLTExMyw5ICsxMTMsOSBAQAogfSBiZGlmZnBhcmFtX3Q7CiAKIAotI2RlZmluZSB4ZGxfbWFsbG9jKHgpIG1hbGxvYyh4KQorI2RlZmluZSB4ZGxfbWFsbG9jKHgpIHhtYWxsb2MoeCkKICNkZWZpbmUgeGRsX2ZyZWUocHRyKSBmcmVlKHB0cikKLSNkZWZpbmUgeGRsX3JlYWxsb2MocHRyLHgpIHJlYWxsb2MocHRyLHgpCisjZGVmaW5lIHhkbF9yZWFsbG9jKHB0cix4KSB4cmVhbGxvYyhwdHIseCkKIAogdm9pZCAqeGRsX21tZmlsZV9maXJzdChtbWZpbGVfdCAqbW1mLCBsb25nICpzaXplKTsKIGxvbmcgeGRsX21tZmlsZV9zaXplKG1tZmlsZV90ICptbWYpOwpkaWZmIC0tZ2l0IGEveGRpZmYveGRpZmZpLmMgYi94ZGlmZi94ZGlmZmkuYwppbmRleCAxZjFmNGEzLi5iZDAzNTEzIDEwMDY0NAotLS0gYS94ZGlmZi94ZGlmZmkuYworKysgYi94ZGlmZi94ZGlmZmkuYwpAQCAtMzgsOSArMzgsOSBAQAogICogQmFzaWNhbGx5IGNvbnNpZGVycyBhICJib3giIChvZmYxLCBvZmYyLCBsaW0xLCBsaW0yKSBhbmQgc2NhbiBmcm9tIGJvdGgKICAqIHRoZSBmb3J3YXJkIGRpYWdvbmFsIHN0YXJ0aW5nIGZyb20gKG9mZjEsIG9mZjIpIGFuZCB0aGUgYmFja3dhcmQgZGlhZ29uYWwKICAqIHN0YXJ0aW5nIGZyb20gKGxpbTEsIGxpbTIpLiBJZiB0aGUgSyB2YWx1ZXMgb24gdGhlIHNhbWUgZGlhZ29uYWwgY3Jvc3NlcwotICogcmV0dXJucyB0aGUgZnVydGhlc3QgcG9pbnQgb2YgcmVhY2guIFdlIG1pZ2h0IGVuZCB1cCBoYXZpbmcgdG8gZXhwZW5zaXZlCi0gKiBjYXNlcyB1c2luZyB0aGlzIGFsZ29yaXRobSBpcyBmdWxsLCBzbyBhIGxpdHRsZSBiaXQgb2YgaGV1cmlzdGljIGlzIG5lZWRlZAotICogdG8gY3V0IHRoZSBzZWFyY2ggYW5kIHRvIHJldHVybiBhIHN1Ym9wdGltYWwgcG9pbnQuCisgKiByZXR1cm5zIHRoZSBmdXJ0aGVzdCBwb2ludCBvZiByZWFjaC4gV2UgbWlnaHQgZW5jb3VudGVyIGV4cGVuc2l2ZSBlZGdlIGNhc2VzCisgKiB1c2luZyB0aGlzIGFsZ29yaXRobSwgc28gYSBsaXR0bGUgYml0IG9mIGhldXJpc3RpYyBpcyBuZWVkZWQgdG8gY3V0IHRoZQorICogc2VhcmNoIGFuZCB0byByZXR1cm4gYSBzdWJvcHRpbWFsIHBvaW50LgogICovCiBzdGF0aWMgbG9uZyB4ZGxfc3BsaXQodW5zaWduZWQgbG9uZyBjb25zdCAqaGExLCBsb25nIG9mZjEsIGxvbmcgbGltMSwKIAkJICAgICAgdW5zaWduZWQgbG9uZyBjb25zdCAqaGEyLCBsb25nIG9mZjIsIGxvbmcgbGltMiwKQEAgLTYzLDExICs2MywxMyBAQAogCQlpbnQgZ290X3NuYWtlID0gMDsKIAogCQkvKgotCQkgKiBXZSBuZWVkIHRvIGV4dGVudCB0aGUgZGlhZ29uYWwgImRvbWFpbiIgYnkgb25lLiBJZiB0aGUgbmV4dAorCQkgKiBXZSBuZWVkIHRvIGV4dGVuZCB0aGUgZGlhZ29uYWwgImRvbWFpbiIgYnkgb25lLiBJZiB0aGUgbmV4dAogCQkgKiB2YWx1ZXMgZXhpdHMgdGhlIGJveCBib3VuZGFyaWVzIHdlIG5lZWQgdG8gY2hhbmdlIGl0IGluIHRoZQotCQkgKiBvcHBvc2l0ZSBkaXJlY3Rpb24gYmVjYXVzZSAobWF4IC0gbWluKSBtdXN0IGJlIGEgcG93ZXIgb2YgdHdvLgorCQkgKiBvcHBvc2l0ZSBkaXJlY3Rpb24gYmVjYXVzZSAobWF4IC0gbWluKSBtdXN0IGJlIGEgcG93ZXIgb2YKKwkJICogdHdvLgorCQkgKgogCQkgKiBBbHNvIHdlIGluaXRpYWxpemUgdGhlIGV4dGVybmFsIEsgdmFsdWUgdG8gLTEgc28gdGhhdCB3ZSBjYW4KLQkJICogYXZvaWQgZXh0cmEgY29uZGl0aW9ucyBjaGVjayBpbnNpZGUgdGhlIGNvcmUgbG9vcC4KKwkJICogYXZvaWQgZXh0cmEgY29uZGl0aW9ucyBpbiB0aGUgY2hlY2sgaW5zaWRlIHRoZSBjb3JlIGxvb3AuCiAJCSAqLwogCQlpZiAoZm1pbiA+IGRtaW4pCiAJCQlrdmRmWy0tZm1pbiAtIDFdID0gLTE7CkBAIC05OCwxMSArMTAwLDEzIEBACiAJCX0KIAogCQkvKgotCQkgKiBXZSBuZWVkIHRvIGV4dGVudCB0aGUgZGlhZ29uYWwgImRvbWFpbiIgYnkgb25lLiBJZiB0aGUgbmV4dAorCQkgKiBXZSBuZWVkIHRvIGV4dGVuZCB0aGUgZGlhZ29uYWwgImRvbWFpbiIgYnkgb25lLiBJZiB0aGUgbmV4dAogCQkgKiB2YWx1ZXMgZXhpdHMgdGhlIGJveCBib3VuZGFyaWVzIHdlIG5lZWQgdG8gY2hhbmdlIGl0IGluIHRoZQotCQkgKiBvcHBvc2l0ZSBkaXJlY3Rpb24gYmVjYXVzZSAobWF4IC0gbWluKSBtdXN0IGJlIGEgcG93ZXIgb2YgdHdvLgorCQkgKiBvcHBvc2l0ZSBkaXJlY3Rpb24gYmVjYXVzZSAobWF4IC0gbWluKSBtdXN0IGJlIGEgcG93ZXIgb2YKKwkJICogdHdvLgorCQkgKgogCQkgKiBBbHNvIHdlIGluaXRpYWxpemUgdGhlIGV4dGVybmFsIEsgdmFsdWUgdG8gLTEgc28gdGhhdCB3ZSBjYW4KLQkJICogYXZvaWQgZXh0cmEgY29uZGl0aW9ucyBjaGVjayBpbnNpZGUgdGhlIGNvcmUgbG9vcC4KKwkJICogYXZvaWQgZXh0cmEgY29uZGl0aW9ucyBpbiB0aGUgY2hlY2sgaW5zaWRlIHRoZSBjb3JlIGxvb3AuCiAJCSAqLwogCQlpZiAoYm1pbiA+IGRtaW4pCiAJCQlrdmRiWy0tYm1pbiAtIDFdID0gWERMX0xJTkVfTUFYOwpAQCAtMTM4LDcgKzE0Miw3IEBACiAJCS8qCiAJCSAqIElmIHRoZSBlZGl0IGNvc3QgaXMgYWJvdmUgdGhlIGhldXJpc3RpYyB0cmlnZ2VyIGFuZCBpZgogCQkgKiB3ZSBnb3QgYSBnb29kIHNuYWtlLCB3ZSBzYW1wbGUgY3VycmVudCBkaWFnb25hbHMgdG8gc2VlCi0JCSAqIGlmIHNvbWUgb2YgdGhlLCBoYXZlIHJlYWNoZWQgYW4gImludGVyZXN0aW5nIiBwYXRoLiBPdXIKKwkJICogaWYgc29tZSBvZiB0aGVtIGhhdmUgcmVhY2hlZCBhbiAiaW50ZXJlc3RpbmciIHBhdGguIE91cgogCQkgKiBtZWFzdXJlIGlzIGEgZnVuY3Rpb24gb2YgdGhlIGRpc3RhbmNlIGZyb20gdGhlIGRpYWdvbmFsCiAJCSAqIGNvcm5lciAoaTEgKyBpMikgcGVuYWxpemVkIHdpdGggdGhlIGRpc3RhbmNlIGZyb20gdGhlCiAJCSAqIG1pZCBkaWFnb25hbCBpdHNlbGYuIElmIHRoaXMgdmFsdWUgaXMgYWJvdmUgdGhlIGN1cnJlbnQKQEAgLTE5Niw4ICsyMDAsOSBAQAogCQl9CiAKIAkJLyoKLQkJICogRW5vdWdoIGlzIGVub3VnaC4gV2Ugc3BlbnQgdG9vIG11Y2ggdGltZSBoZXJlIGFuZCBub3cgd2UgY29sbGVjdAotCQkgKiB0aGUgZnVydGhlc3QgcmVhY2hpbmcgcGF0aCB1c2luZyB0aGUgKGkxICsgaTIpIG1lYXN1cmUuCisJCSAqIEVub3VnaCBpcyBlbm91Z2guIFdlIHNwZW50IHRvbyBtdWNoIHRpbWUgaGVyZSBhbmQgbm93IHdlCisJCSAqIGNvbGxlY3QgdGhlIGZ1cnRoZXN0IHJlYWNoaW5nIHBhdGggdXNpbmcgdGhlIChpMSArIGkyKQorCQkgKiBtZWFzdXJlLgogCQkgKi8KIAkJaWYgKGVjID49IHhlbnYtPm14Y29zdCkgewogCQkJbG9uZyBmYmVzdCwgZmJlc3QxLCBiYmVzdCwgYmJlc3QxOwpAQCAtMjQ0LDkgKzI0OSw5IEBACiAKIAogLyoKLSAqIFJ1bGU6ICJEaXZpZGUgZXQgSW1wZXJhIi4gUmVjdXJzaXZlbHkgc3BsaXQgdGhlIGJveCBpbiBzdWItYm94ZXMgYnkgY2FsbGluZwotICogdGhlIGJveCBzcGxpdHRpbmcgZnVuY3Rpb24uIE5vdGUgdGhhdCB0aGUgcmVhbCBqb2IgKG1hcmtpbmcgY2hhbmdlZCBsaW5lcykKLSAqIGlzIGRvbmUgaW4gdGhlIHR3byBib3VuZGFyeSByZWFjaGluZyBjaGVja3MuCisgKiBSdWxlOiAiRGl2aWRlIGV0IEltcGVyYSIgKGRpdmlkZSAmIGNvbnF1ZXIpLiBSZWN1cnNpdmVseSBzcGxpdCB0aGUgYm94IGluCisgKiBzdWItYm94ZXMgYnkgY2FsbGluZyB0aGUgYm94IHNwbGl0dGluZyBmdW5jdGlvbi4gTm90ZSB0aGF0IHRoZSByZWFsIGpvYgorICogKG1hcmtpbmcgY2hhbmdlZCBsaW5lcykgaXMgZG9uZSBpbiB0aGUgdHdvIGJvdW5kYXJ5IHJlYWNoaW5nIGNoZWNrcy4KICAqLwogaW50IHhkbF9yZWNzX2NtcChkaWZmZGF0YV90ICpkZDEsIGxvbmcgb2ZmMSwgbG9uZyBsaW0xLAogCQkgZGlmZmRhdGFfdCAqZGQyLCBsb25nIG9mZjIsIGxvbmcgbGltMiwKQEAgLTMyMyw3ICszMjgsOSBAQAogCX0KIAogCS8qCi0JICogQWxsb2NhdGUgYW5kIHNldHVwIEsgdmVjdG9ycyB0byBiZSB1c2VkIGJ5IHRoZSBkaWZmZXJlbnRpYWwgYWxnb3JpdGhtLgorCSAqIEFsbG9jYXRlIGFuZCBzZXR1cCBLIHZlY3RvcnMgdG8gYmUgdXNlZCBieSB0aGUgZGlmZmVyZW50aWFsCisJICogYWxnb3JpdGhtLgorCSAqCiAJICogT25lIGlzIHRvIHN0b3JlIHRoZSBmb3J3YXJkIHBhdGggYW5kIG9uZSB0byBzdG9yZSB0aGUgYmFja3dhcmQgcGF0aC4KIAkgKi8KIAluZGlhZ3MgPSB4ZS0+eGRmMS5ucmVmZiArIHhlLT54ZGYyLm5yZWZmICsgMzsKQEAgLTM5NCw4ICs0MDEsOCBAQAogLyoKICAqIElmIGEgbGluZSBpcyBpbmRlbnRlZCBtb3JlIHRoYW4gdGhpcywgZ2V0X2luZGVudCgpIGp1c3QgcmV0dXJucyB0aGlzIHZhbHVlLgogICogVGhpcyBhdm9pZHMgaGF2aW5nIHRvIGRvIGFic3VyZCBhbW91bnRzIG9mIHdvcmsgZm9yIGRhdGEgdGhhdCBhcmUgbm90Ci0gKiBodW1hbi1yZWFkYWJsZSB0ZXh0LCBhbmQgYWxzbyBlbnN1cmVzIHRoYXQgdGhlIG91dHB1dCBvZiBnZXRfaW5kZW50IGZpdHMgd2l0aGluCi0gKiBhbiBpbnQuCisgKiBodW1hbi1yZWFkYWJsZSB0ZXh0LCBhbmQgYWxzbyBlbnN1cmVzIHRoYXQgdGhlIG91dHB1dCBvZiBnZXRfaW5kZW50IGZpdHMKKyAqIHdpdGhpbiBhbiBpbnQuCiAgKi8KICNkZWZpbmUgTUFYX0lOREVOVCAyMDAKIApAQCAtNDI5LDkgKzQzNiw5IEBACiB9CiAKIC8qCi0gKiBJZiBtb3JlIHRoYW4gdGhpcyBudW1iZXIgb2YgY29uc2VjdXRpdmUgYmxhbmsgcm93cyBhcmUgZm91bmQsIGp1c3QgcmV0dXJuIHRoaXMKLSAqIHZhbHVlLiBUaGlzIGF2b2lkcyByZXF1aXJpbmcgTyhOXjIpIHdvcmsgZm9yIHBhdGhvbG9naWNhbCBjYXNlcywgYW5kIGFsc28KLSAqIGVuc3VyZXMgdGhhdCB0aGUgb3V0cHV0IG9mIHNjb3JlX3NwbGl0IGZpdHMgaW4gYW4gaW50LgorICogSWYgbW9yZSB0aGFuIHRoaXMgbnVtYmVyIG9mIGNvbnNlY3V0aXZlIGJsYW5rIHJvd3MgYXJlIGZvdW5kLCBqdXN0IHJldHVybgorICogdGhpcyB2YWx1ZS4gVGhpcyBhdm9pZHMgcmVxdWlyaW5nIE8oTl4yKSB3b3JrIGZvciBwYXRob2xvZ2ljYWwgY2FzZXMsIGFuZAorICogYWxzbyBlbnN1cmVzIHRoYXQgdGhlIG91dHB1dCBvZiBzY29yZV9zcGxpdCBmaXRzIGluIGFuIGludC4KICAqLwogI2RlZmluZSBNQVhfQkxBTktTIDIwCiAKQEAgLTQ0Myw4ICs0NTAsOCBAQAogCWludCBlbmRfb2ZfZmlsZTsKIAogCS8qCi0JICogSG93IG11Y2ggaXMgdGhlIGxpbmUgaW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSBzcGxpdCBpbmRlbnRlZCAob3IgLTEgaWYKLQkgKiB0aGUgbGluZSBpcyBibGFuayk6CisJICogSG93IG11Y2ggaXMgdGhlIGxpbmUgaW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSBzcGxpdCBpbmRlbnRlZCAob3IgLTEKKwkgKiBpZiB0aGUgbGluZSBpcyBibGFuayk6CiAJICovCiAJaW50IGluZGVudDsKIApAQCAtNDU0LDggKzQ2MSw4IEBACiAJaW50IHByZV9ibGFuazsKIAogCS8qCi0JICogSG93IG11Y2ggaXMgdGhlIG5lYXJlc3Qgbm9uLWJsYW5rIGxpbmUgYWJvdmUgdGhlIHNwbGl0IGluZGVudGVkIChvciAtMQotCSAqIGlmIHRoZXJlIGlzIG5vIHN1Y2ggbGluZSk/CisJICogSG93IG11Y2ggaXMgdGhlIG5lYXJlc3Qgbm9uLWJsYW5rIGxpbmUgYWJvdmUgdGhlIHNwbGl0IGluZGVudGVkIChvcgorCSAqIC0xIGlmIHRoZXJlIGlzIG5vIHN1Y2ggbGluZSk/CiAJICovCiAJaW50IHByZV9pbmRlbnQ7CiAKQEAgLTU4MSwxMyArNTg4LDEzIEBACiAKIC8qCiAgKiBDb21wdXRlIGEgYmFkbmVzcyBzY29yZSBmb3IgdGhlIGh5cG90aGV0aWNhbCBzcGxpdCB3aG9zZSBtZWFzdXJlbWVudHMgYXJlCi0gKiBzdG9yZWQgaW4gbS4gVGhlIHdlaWdodCBmYWN0b3JzIHdlcmUgZGV0ZXJtaW5lZCBlbXBpcmljYWxseSB1c2luZyB0aGUgdG9vbHMgYW5kCi0gKiBjb3JwdXMgZGVzY3JpYmVkIGluCisgKiBzdG9yZWQgaW4gbS4gVGhlIHdlaWdodCBmYWN0b3JzIHdlcmUgZGV0ZXJtaW5lZCBlbXBpcmljYWxseSB1c2luZyB0aGUgdG9vbHMKKyAqIGFuZCBjb3JwdXMgZGVzY3JpYmVkIGluCiAgKgogICogICAgIGh0dHBzOi8vZ2l0aHViLmNvbS9taGFnZ2VyL2RpZmYtc2xpZGVyLXRvb2xzCiAgKgotICogQWxzbyBzZWUgdGhhdCBwcm9qZWN0IGlmIHlvdSB3YW50IHRvIGltcHJvdmUgdGhlIHdlaWdodHMgYmFzZWQgb24sIGZvciBleGFtcGxlLAotICogYSBsYXJnZXIgb3IgbW9yZSBkaXZlcnNlIGNvcnB1cy4KKyAqIEFsc28gc2VlIHRoYXQgcHJvamVjdCBpZiB5b3Ugd2FudCB0byBpbXByb3ZlIHRoZSB3ZWlnaHRzIGJhc2VkIG9uLCBmb3IKKyAqIGV4YW1wbGUsIGEgbGFyZ2VyIG9yIG1vcmUgZGl2ZXJzZSBjb3JwdXMuCiAgKi8KIHN0YXRpYyB2b2lkIHNjb3JlX2FkZF9zcGxpdChjb25zdCBzdHJ1Y3Qgc3BsaXRfbWVhc3VyZW1lbnQgKm0sIHN0cnVjdCBzcGxpdF9zY29yZSAqcykKIHsKQEAgLTgwOSwxMyArODE2LDE2IEBACiAJZ3JvdXBfaW5pdCh4ZGZvLCAmZ28pOwogCiAJd2hpbGUgKDEpIHsKLQkJLyogSWYgdGhlIGdyb3VwIGlzIGVtcHR5IGluIHRoZSB0by1iZS1jb21wYWN0ZWQgZmlsZSwgc2tpcCBpdDogKi8KKwkJLyoKKwkJICogSWYgdGhlIGdyb3VwIGlzIGVtcHR5IGluIHRoZSB0by1iZS1jb21wYWN0ZWQgZmlsZSwgc2tpcCBpdDoKKwkJICovCiAJCWlmIChnLmVuZCA9PSBnLnN0YXJ0KQogCQkJZ290byBuZXh0OwogCiAJCS8qCiAJCSAqIE5vdyBzaGlmdCB0aGUgY2hhbmdlIHVwIGFuZCB0aGVuIGRvd24gYXMgZmFyIGFzIHBvc3NpYmxlIGluCi0JCSAqIGVhY2ggZGlyZWN0aW9uLiBJZiBpdCBidW1wcyBpbnRvIGFueSBvdGhlciBjaGFuZ2VzLCBtZXJnZSB0aGVtLgorCQkgKiBlYWNoIGRpcmVjdGlvbi4gSWYgaXQgYnVtcHMgaW50byBhbnkgb3RoZXIgY2hhbmdlcywgbWVyZ2UKKwkJICogdGhlbS4KIAkJICovCiAJCWRvIHsKIAkJCWdyb3Vwc2l6ZSA9IGcuZW5kIC0gZy5zdGFydDsKQEAgLTg1OCwxNyArODY4LDE3IEBACiAJCSAqIElmIHRoZSBncm91cCBjYW4gYmUgc2hpZnRlZCwgdGhlbiB3ZSBjYW4gcG9zc2libHkgdXNlIHRoaXMKIAkJICogZnJlZWRvbSB0byBwcm9kdWNlIGEgbW9yZSBpbnR1aXRpdmUgZGlmZi4KIAkJICoKLQkJICogVGhlIGdyb3VwIGlzIGN1cnJlbnRseSBzaGlmdGVkIGFzIGZhciBkb3duIGFzIHBvc3NpYmxlLCBzbyB0aGUKLQkJICogaGV1cmlzdGljcyBiZWxvdyBvbmx5IGhhdmUgdG8gaGFuZGxlIHVwd2FyZHMgc2hpZnRzLgorCQkgKiBUaGUgZ3JvdXAgaXMgY3VycmVudGx5IHNoaWZ0ZWQgYXMgZmFyIGRvd24gYXMgcG9zc2libGUsIHNvCisJCSAqIHRoZSBoZXVyaXN0aWNzIGJlbG93IG9ubHkgaGF2ZSB0byBoYW5kbGUgdXB3YXJkcyBzaGlmdHMuCiAJCSAqLwogCiAJCWlmIChnLmVuZCA9PSBlYXJsaWVzdF9lbmQpIHsKIAkJCS8qIG5vIHNoaWZ0aW5nIHdhcyBwb3NzaWJsZSAqLwogCQl9IGVsc2UgaWYgKGVuZF9tYXRjaGluZ19vdGhlciAhPSAtMSkgewogCQkJLyoKLQkJCSAqIE1vdmUgdGhlIHBvc3NpYmx5IG1lcmdlZCBncm91cCBvZiBjaGFuZ2VzIGJhY2sgdG8gbGluZQotCQkJICogdXAgd2l0aCB0aGUgbGFzdCBncm91cCBvZiBjaGFuZ2VzIGZyb20gdGhlIG90aGVyIGZpbGUKLQkJCSAqIHRoYXQgaXQgY2FuIGFsaWduIHdpdGguCisJCQkgKiBNb3ZlIHRoZSBwb3NzaWJseSBtZXJnZWQgZ3JvdXAgb2YgY2hhbmdlcyBiYWNrIHRvCisJCQkgKiBsaW5lIHVwIHdpdGggdGhlIGxhc3QgZ3JvdXAgb2YgY2hhbmdlcyBmcm9tIHRoZQorCQkJICogb3RoZXIgZmlsZSB0aGF0IGl0IGNhbiBhbGlnbiB3aXRoLgogCQkJICovCiAJCQl3aGlsZSAoZ28uZW5kID09IGdvLnN0YXJ0KSB7CiAJCQkJaWYgKGdyb3VwX3NsaWRlX3VwKHhkZiwgJmcsIGZsYWdzKSkKQEAgLTg3OSwxNCArODg5LDE1IEBACiAJCX0gZWxzZSBpZiAoZmxhZ3MgJiBYREZfSU5ERU5UX0hFVVJJU1RJQykgewogCQkJLyoKIAkJCSAqIEluZGVudCBoZXVyaXN0aWM6IGEgZ3JvdXAgb2YgcHVyZSBhZGQvZGVsZXRlIGxpbmVzCi0JCQkgKiBpbXBsaWVzIHR3byBzcGxpdHMsIG9uZSBiZXR3ZWVuIHRoZSBlbmQgb2YgdGhlICJiZWZvcmUiCi0JCQkgKiBjb250ZXh0IGFuZCB0aGUgc3RhcnQgb2YgdGhlIGdyb3VwLCBhbmQgYW5vdGhlciBiZXR3ZWVuCi0JCQkgKiB0aGUgZW5kIG9mIHRoZSBncm91cCBhbmQgdGhlIGJlZ2lubmluZyBvZiB0aGUgImFmdGVyIgotCQkJICogY29udGV4dC4gU29tZSBzcGxpdHMgYXJlIGFlc3RoZXRpY2FsbHkgYmV0dGVyIGFuZCBzb21lCi0JCQkgKiBhcmUgd29yc2UuIFdlIGNvbXB1dGUgYSBiYWRuZXNzICJzY29yZSIgZm9yIGVhY2ggc3BsaXQsCi0JCQkgKiBhbmQgYWRkIHRoZSBzY29yZXMgZm9yIHRoZSB0d28gc3BsaXRzIHRvIGRlZmluZSBhCi0JCQkgKiAic2NvcmUiIGZvciBlYWNoIHBvc2l0aW9uIHRoYXQgdGhlIGdyb3VwIGNhbiBiZSBzaGlmdGVkCi0JCQkgKiB0by4gVGhlbiB3ZSBwaWNrIHRoZSBzaGlmdCB3aXRoIHRoZSBsb3dlc3Qgc2NvcmUuCisJCQkgKiBpbXBsaWVzIHR3byBzcGxpdHMsIG9uZSBiZXR3ZWVuIHRoZSBlbmQgb2YgdGhlCisJCQkgKiAiYmVmb3JlIiBjb250ZXh0IGFuZCB0aGUgc3RhcnQgb2YgdGhlIGdyb3VwLCBhbmQKKwkJCSAqIGFub3RoZXIgYmV0d2VlbiB0aGUgZW5kIG9mIHRoZSBncm91cCBhbmQgdGhlCisJCQkgKiBiZWdpbm5pbmcgb2YgdGhlICJhZnRlciIgY29udGV4dC4gU29tZSBzcGxpdHMgYXJlCisJCQkgKiBhZXN0aGV0aWNhbGx5IGJldHRlciBhbmQgc29tZSBhcmUgd29yc2UuIFdlIGNvbXB1dGUKKwkJCSAqIGEgYmFkbmVzcyAic2NvcmUiIGZvciBlYWNoIHNwbGl0LCBhbmQgYWRkIHRoZSBzY29yZXMKKwkJCSAqIGZvciB0aGUgdHdvIHNwbGl0cyB0byBkZWZpbmUgYSAic2NvcmUiIGZvciBlYWNoCisJCQkgKiBwb3NpdGlvbiB0aGF0IHRoZSBncm91cCBjYW4gYmUgc2hpZnRlZCB0by4gVGhlbiB3ZQorCQkJICogcGljayB0aGUgc2hpZnQgd2l0aCB0aGUgbG93ZXN0IHNjb3JlLgogCQkJICovCiAJCQlsb25nIHNoaWZ0LCBiZXN0X3NoaWZ0ID0gLTE7CiAJCQlzdHJ1Y3Qgc3BsaXRfc2NvcmUgYmVzdF9zY29yZTsKZGlmZiAtLWdpdCBhL3hkaWZmL3hlbWl0LmMgYi94ZGlmZi94ZW1pdC5jCmluZGV4IDc3NzhkYzIuLjlkN2Q2YzUgMTAwNjQ0Ci0tLSBhL3hkaWZmL3hlbWl0LmMKKysrIGIveGRpZmYveGVtaXQuYwpAQCAtMTcyLDEwICsxNzIsMTIgQEAKIAlzdHJ1Y3QgZnVuY19saW5lIGZ1bmNfbGluZSA9IHsgMCB9OwogCiAJZm9yICh4Y2ggPSB4c2NyOyB4Y2g7IHhjaCA9IHhjaGUtPm5leHQpIHsKKwkJeGRjaGFuZ2VfdCAqeGNocCA9IHhjaDsKIAkJeGNoZSA9IHhkbF9nZXRfaHVuaygmeGNoLCB4ZWNmZyk7CiAJCWlmICgheGNoKQogCQkJYnJlYWs7CiAKK3ByZV9jb250ZXh0X2NhbGN1bGF0aW9uOgogCQlzMSA9IFhETF9NQVgoeGNoLT5pMSAtIHhlY2ZnLT5jdHhsZW4sIDApOwogCQlzMiA9IFhETF9NQVgoeGNoLT5pMiAtIHhlY2ZnLT5jdHhsZW4sIDApOwogCkBAIC0yMTAsOCArMjEyLDIzIEBACiAJCQlpZiAoZnMxIDwgMCkKIAkJCQlmczEgPSAwOwogCQkJaWYgKGZzMSA8IHMxKSB7Ci0JCQkJczIgLT0gczEgLSBmczE7CisJCQkJczIgPSBYRExfTUFYKHMyIC0gKHMxIC0gZnMxKSwgMCk7CiAJCQkJczEgPSBmczE7CisKKwkJCQkvKgorCQkJCSAqIERpZCB3ZSBleHRlbmQgY29udGV4dCB1cHdhcmRzIGludG8gYW4KKwkJCQkgKiBpZ25vcmVkIGNoYW5nZT8KKwkJCQkgKi8KKwkJCQl3aGlsZSAoeGNocCAhPSB4Y2ggJiYKKwkJCQkgICAgICAgeGNocC0+aTEgKyB4Y2hwLT5jaGcxIDw9IHMxICYmCisJCQkJICAgICAgIHhjaHAtPmkyICsgeGNocC0+Y2hnMiA8PSBzMikKKwkJCQkJeGNocCA9IHhjaHAtPm5leHQ7CisKKwkJCQkvKiBJZiBzbywgc2hvdyBpdCBhZnRlciBhbGwuICovCisJCQkJaWYgKHhjaHAgIT0geGNoKSB7CisJCQkJCXhjaCA9IHhjaHA7CisJCQkJCWdvdG8gcHJlX2NvbnRleHRfY2FsY3VsYXRpb247CisJCQkJfQogCQkJfQogCQl9CiAKQEAgLTIzMiw3ICsyNDksNyBAQAogCQkJaWYgKGZlMSA8IDApCiAJCQkJZmUxID0geGUtPnhkZjEubnJlYzsKIAkJCWlmIChmZTEgPiBlMSkgewotCQkJCWUyICs9IGZlMSAtIGUxOworCQkJCWUyID0gWERMX01JTihlMiArIChmZTEgLSBlMSksIHhlLT54ZGYyLm5yZWMpOwogCQkJCWUxID0gZmUxOwogCQkJfQogCmRpZmYgLS1naXQgYS94ZGlmZi94aGlzdG9ncmFtLmMgYi94ZGlmZi94aGlzdG9ncmFtLmMKaW5kZXggZWM4NWY1OS4uYzdiMzVhOSAxMDA2NDQKLS0tIGEveGRpZmYveGhpc3RvZ3JhbS5jCisrKyBiL3hkaWZmL3hoaXN0b2dyYW0uYwpAQCAtNDIsOCArNDIsNiBAQAogICovCiAKICNpbmNsdWRlICJ4aW5jbHVkZS5oIgotI2luY2x1ZGUgInh0eXBlcy5oIgotI2luY2x1ZGUgInhkaWZmLmgiCiAKICNkZWZpbmUgTUFYX1BUUglVSU5UX01BWAogI2RlZmluZSBNQVhfQ05UCVVJTlRfTUFYCmRpZmYgLS1naXQgYS94ZGlmZi94aW5jbHVkZS5oIGIveGRpZmYveGluY2x1ZGUuaAppbmRleCBmMzVjNDQ4Li5hNDI4NWFjIDEwMDY0NAotLS0gYS94ZGlmZi94aW5jbHVkZS5oCisrKyBiL3hkaWZmL3hpbmNsdWRlLmgKQEAgLTIzLDEzICsyMyw3IEBACiAjaWYgIWRlZmluZWQoWElOQ0xVREVfSCkKICNkZWZpbmUgWElOQ0xVREVfSAogCi0jaW5jbHVkZSA8Y3R5cGUuaD4KLSNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2luY2x1ZGUgPHVuaXN0ZC5oPgotI2luY2x1ZGUgPHN0cmluZy5oPgotI2luY2x1ZGUgPGxpbWl0cy5oPgotCisjaW5jbHVkZSAiZ2l0LWNvbXBhdC11dGlsLmgiCiAjaW5jbHVkZSAieG1hY3Jvcy5oIgogI2luY2x1ZGUgInhkaWZmLmgiCiAjaW5jbHVkZSAieHR5cGVzLmgiCmRpZmYgLS1naXQgYS94ZGlmZi94cGF0aWVuY2UuYyBiL3hkaWZmL3hwYXRpZW5jZS5jCmluZGV4IGYzNTczZDkuLjNjNTYwMWIgMTAwNjQ0Ci0tLSBhL3hkaWZmL3hwYXRpZW5jZS5jCisrKyBiL3hkaWZmL3hwYXRpZW5jZS5jCkBAIC0yMCw4ICsyMCw2IEBACiAgKgogICovCiAjaW5jbHVkZSAieGluY2x1ZGUuaCIKLSNpbmNsdWRlICJ4dHlwZXMuaCIKLSNpbmNsdWRlICJ4ZGlmZi5oIgogCiAvKgogICogVGhlIGJhc2ljIGlkZWEgb2YgcGF0aWVuY2UgZGlmZiBpcyB0byBmaW5kIGxpbmVzIHRoYXQgYXJlIHVuaXF1ZSBpbgpkaWZmIC0tZ2l0IGEveGRpZmYveHV0aWxzLmMgYi94ZGlmZi94dXRpbHMuYwppbmRleCA5NjNlMWM1Li5jZmE2ZTIyIDEwMDY0NAotLS0gYS94ZGlmZi94dXRpbHMuYworKysgYi94ZGlmZi94dXRpbHMuYwpAQCAtMjAsMTMgKzIwLDkgQEAKICAqCiAgKi8KIAotI2luY2x1ZGUgPGxpbWl0cy5oPgotI2luY2x1ZGUgPGFzc2VydC5oPgogI2luY2x1ZGUgInhpbmNsdWRlLmgiCiAKIAotCi0KIGxvbmcgeGRsX2JvZ29zcXJ0KGxvbmcgbikgewogCWxvbmcgaTsKIAo=